From 6912e02091cccc77e5aa925b9619ff0d3908c886 Mon Sep 17 00:00:00 2001 From: X O Date: Fri, 7 Oct 2016 01:29:52 +1100 Subject: [PATCH 01/82] replace gui dir with views & static (#1206) --- .build/Gruntfile.js | 31 ++++++------------ .build/test/testrunner.html | 4 +-- medusa/media/GenericMedia.py | 2 +- medusa/server/web/core/base.py | 2 +- package.json | 2 +- readme.md | 2 +- start.py | 2 +- ...RHCpsQm3Vp6mXoaTYnF5uFdDttMLvmWuJdhhgs.ttf | Bin ...2ZOKiLJc3WVjuplzInF5uFdDttMLvmWuJdhhgs.ttf | Bin ...h38I15wypJXxuGMBp0EAVxt0G0biEntp43Qt6E.ttf | Bin ...OuBrn4kERxqtaUH3aCWcynf_cDxXwCLxiixG1c.ttf | Bin ...SUJH_bn48VBG8sNSonF5uFdDttMLvmWuJdhhgs.ttf | Bin ...5DfGHOiMmvb1Xr-honF5uFdDttMLvmWuJdhhgs.ttf | Bin {gui/slick => static}/css/browser.css | 0 {gui/slick => static}/css/browserconfig.xml | 0 {gui/slick => static}/css/core.min.css | 0 {gui/slick => static}/css/country-flags.css | 0 {gui/slick => static}/css/dark.css | 0 ...eptR36kaC0GEAetxi8cqLH4MEiSE0ROcU-qHOA.ttf | Bin ...eptR36kaC0GEAetxlDMrAYtoOisqqMDW9M_Mqc.ttf | Bin ...eptR36kaC0GEAetxp_TkvowlIOtbR7ePgFOpF4.ttf | Bin ...eptR36kaC0GEAetxrfB31yxOzP-czbf6AAKCVo.ttf | Bin .../css/lib/images/animated-overlay.gif | Bin .../css/lib/images/tablesorter/asc.gif | Bin .../css/lib/images/tablesorter/bg.gif | Bin .../css/lib/images/tablesorter/desc.gif | Bin .../ui-bg_fine-grain_10_eceadf_60x60.png | Bin .../lib/images/ui-bg_flat_0_000000_40x100.png | Bin .../lib/images/ui-bg_flat_0_606060_40x100.png | Bin .../lib/images/ui-bg_flat_0_999999_40x100.png | Bin .../lib/images/ui-bg_flat_0_aaaaaa_40x100.png | Bin .../lib/images/ui-bg_flat_0_ffffff_40x100.png | Bin .../images/ui-bg_flat_75_ffffff_40x100.png | Bin .../images/ui-bg_glass_55_fbf9ee_1x400.png | Bin .../images/ui-bg_glass_65_ffffff_1x400.png | Bin .../images/ui-bg_glass_75_dadada_1x400.png | Bin .../images/ui-bg_glass_75_e6e6e6_1x400.png | Bin .../images/ui-bg_glass_95_fef1ec_1x400.png | Bin .../ui-bg_highlight-soft_75_cccccc_1x100.png | Bin .../ui-bg_highlight-soft_75_dcdcdc_1x100.png | Bin .../ui-bg_highlight-soft_75_dddddd_1x100.png | Bin .../ui-bg_highlight-soft_75_efefef_1x100.png | Bin .../ui-bg_inset-soft_75_dfdfdf_1x100.png | Bin .../lib/images/ui-icons_09a2ff_256x240.png | Bin .../lib/images/ui-icons_222222_256x240.png | Bin .../lib/images/ui-icons_2e83ff_256x240.png | Bin .../lib/images/ui-icons_454545_256x240.png | Bin .../lib/images/ui-icons_888888_256x240.png | Bin .../lib/images/ui-icons_8c291d_256x240.png | Bin .../lib/images/ui-icons_cd0a0a_256x240.png | Bin .../lib/images/ui-icons_ffffff_256x240.png | Bin .../css/lib/jquery-ui-1.10.4.custom.min.css | 0 .../css/lib/jquery.qtip-2.2.1.min.css | 0 {gui/slick => static}/css/light.css | 0 {gui/slick => static}/css/print.css | 0 {gui/slick => static}/css/style.css | 0 {gui/slick => static}/css/vender.min.css | 0 .../fonts/glyphicons-halflings-regular.eot | Bin .../fonts/glyphicons-halflings-regular.svg | 0 .../fonts/glyphicons-halflings-regular.ttf | Bin .../fonts/glyphicons-halflings-regular.woff | Bin .../fonts/glyphicons-halflings-regular.woff2 | Bin .../images/16x_sprite_colored_help-info.png | Bin .../images/32x_sprite_colored_add_lists.png | Bin .../images/32x_sprite_colored_clients.png | Bin .../images/32x_sprite_colored_notifiers.png | Bin .../images/anidb_inline_refl.png | Bin {gui/slick => static}/images/arrows.png | Bin {gui/slick => static}/images/banner.png | Bin {gui/slick => static}/images/bg.gif | Bin {gui/slick => static}/images/blank.png | Bin ...ap-formhelpers-countries.flags-LICENSE.txt | 0 .../bootstrap-formhelpers-countries.flags.png | Bin ...bootstrap-formhelpers-currencies.flags.png | Bin .../bootstrap-formhelpers-googlefonts.png | Bin {gui/slick => static}/images/cancel32.png | Bin {gui/slick => static}/images/changelog16.png | Bin .../images/closed_captioning.png | Bin .../slick => static}/images/country-flags.png | Bin {gui/slick => static}/images/download.png | Bin {gui/slick => static}/images/fanart.tv.png | Bin {gui/slick => static}/images/flags/ad.png | Bin {gui/slick => static}/images/flags/ag.png | Bin {gui/slick => static}/images/flags/ai.png | Bin {gui/slick => static}/images/flags/al.png | Bin {gui/slick => static}/images/flags/ao.png | Bin {gui/slick => static}/images/flags/at.png | Bin {gui/slick => static}/images/flags/au.png | Bin {gui/slick => static}/images/flags/aw.png | Bin {gui/slick => static}/images/flags/ax.png | Bin {gui/slick => static}/images/flags/bb.png | Bin {gui/slick => static}/images/flags/bd.png | Bin {gui/slick => static}/images/flags/bf.png | Bin {gui/slick => static}/images/flags/bh.png | Bin {gui/slick => static}/images/flags/bj.png | Bin {gui/slick => static}/images/flags/bt.png | Bin {gui/slick => static}/images/flags/bv.png | Bin {gui/slick => static}/images/flags/bw.png | Bin {gui/slick => static}/images/flags/by.png | Bin {gui/slick => static}/images/flags/bz.png | Bin {gui/slick => static}/images/flags/cc.png | Bin {gui/slick => static}/images/flags/cd.png | Bin {gui/slick => static}/images/flags/cf.png | Bin {gui/slick => static}/images/flags/cg.png | Bin {gui/slick => static}/images/flags/ci.png | Bin {gui/slick => static}/images/flags/ck.png | Bin {gui/slick => static}/images/flags/cl.png | Bin {gui/slick => static}/images/flags/cm.png | Bin {gui/slick => static}/images/flags/cn.png | Bin {gui/slick => static}/images/flags/cx.png | Bin {gui/slick => static}/images/flags/cz.png | Bin {gui/slick => static}/images/flags/dj.png | Bin {gui/slick => static}/images/flags/dk.png | Bin {gui/slick => static}/images/flags/dm.png | Bin {gui/slick => static}/images/flags/do.png | Bin {gui/slick => static}/images/flags/ec.png | Bin {gui/slick => static}/images/flags/eg.png | Bin {gui/slick => static}/images/flags/eh.png | Bin {gui/slick => static}/images/flags/er.png | Bin {gui/slick => static}/images/flags/fk.png | Bin {gui/slick => static}/images/flags/fm.png | Bin {gui/slick => static}/images/flags/gb.png | Bin {gui/slick => static}/images/flags/ge.png | Bin {gui/slick => static}/images/flags/gf.png | Bin {gui/slick => static}/images/flags/gh.png | Bin {gui/slick => static}/images/flags/gi.png | Bin {gui/slick => static}/images/flags/gm.png | Bin {gui/slick => static}/images/flags/gp.png | Bin {gui/slick => static}/images/flags/gq.png | Bin {gui/slick => static}/images/flags/gr.png | Bin {gui/slick => static}/images/flags/gs.png | Bin {gui/slick => static}/images/flags/gt.png | Bin {gui/slick => static}/images/flags/gw.png | Bin {gui/slick => static}/images/flags/gy.png | Bin {gui/slick => static}/images/flags/hk.png | Bin {gui/slick => static}/images/flags/hm.png | Bin {gui/slick => static}/images/flags/hn.png | Bin {gui/slick => static}/images/flags/il.png | Bin {gui/slick => static}/images/flags/in.png | Bin {gui/slick => static}/images/flags/iq.png | Bin {gui/slick => static}/images/flags/ir.png | Bin {gui/slick => static}/images/flags/jm.png | Bin {gui/slick => static}/images/flags/jo.png | Bin {gui/slick => static}/images/flags/jp.png | Bin {gui/slick => static}/images/flags/ke.png | Bin {gui/slick => static}/images/flags/kh.png | Bin {gui/slick => static}/images/flags/kp.png | Bin {gui/slick => static}/images/flags/kz.png | Bin {gui/slick => static}/images/flags/lc.png | Bin {gui/slick => static}/images/flags/lk.png | Bin {gui/slick => static}/images/flags/lr.png | Bin {gui/slick => static}/images/flags/ls.png | Bin {gui/slick => static}/images/flags/ly.png | Bin {gui/slick => static}/images/flags/ma.png | Bin {gui/slick => static}/images/flags/mc.png | Bin {gui/slick => static}/images/flags/md.png | Bin {gui/slick => static}/images/flags/me.png | Bin {gui/slick => static}/images/flags/mm.png | Bin {gui/slick => static}/images/flags/mo.png | Bin {gui/slick => static}/images/flags/mp.png | Bin {gui/slick => static}/images/flags/mq.png | Bin {gui/slick => static}/images/flags/mu.png | Bin {gui/slick => static}/images/flags/mv.png | Bin {gui/slick => static}/images/flags/mw.png | Bin {gui/slick => static}/images/flags/mx.png | Bin {gui/slick => static}/images/flags/mz.png | Bin {gui/slick => static}/images/flags/nc.png | Bin {gui/slick => static}/images/flags/nf.png | Bin {gui/slick => static}/images/flags/ni.png | Bin {gui/slick => static}/images/flags/np.png | Bin {gui/slick => static}/images/flags/nu.png | Bin {gui/slick => static}/images/flags/nz.png | Bin {gui/slick => static}/images/flags/pb.png | Bin {gui/slick => static}/images/flags/pe.png | Bin {gui/slick => static}/images/flags/pf.png | Bin {gui/slick => static}/images/flags/pg.png | Bin {gui/slick => static}/images/flags/ph.png | Bin {gui/slick => static}/images/flags/pk.png | Bin {gui/slick => static}/images/flags/pm.png | Bin {gui/slick => static}/images/flags/pn.png | Bin {gui/slick => static}/images/flags/pr.png | Bin {gui/slick => static}/images/flags/pt-BR.png | Bin {gui/slick => static}/images/flags/pw.png | Bin {gui/slick => static}/images/flags/py.png | Bin {gui/slick => static}/images/flags/qa.png | Bin {gui/slick => static}/images/flags/re.png | Bin {gui/slick => static}/images/flags/rs.png | Bin {gui/slick => static}/images/flags/sb.png | Bin {gui/slick => static}/images/flags/sh.png | Bin {gui/slick => static}/images/flags/sj.png | Bin {gui/slick => static}/images/flags/sy.png | Bin {gui/slick => static}/images/flags/sz.png | Bin {gui/slick => static}/images/flags/tc.png | Bin {gui/slick => static}/images/flags/td.png | Bin {gui/slick => static}/images/flags/tf.png | Bin {gui/slick => static}/images/flags/tj.png | Bin {gui/slick => static}/images/flags/tm.png | Bin {gui/slick => static}/images/flags/tv.png | Bin {gui/slick => static}/images/flags/tz.png | Bin {gui/slick => static}/images/flags/ua.png | Bin {gui/slick => static}/images/flags/um.png | Bin {gui/slick => static}/images/flags/un.png | Bin .../slick => static}/images/flags/unknown.png | Bin {gui/slick => static}/images/flags/us.png | Bin {gui/slick => static}/images/flags/uy.png | Bin {gui/slick => static}/images/flags/va.png | Bin {gui/slick => static}/images/flags/vc.png | Bin {gui/slick => static}/images/flags/vg.png | Bin {gui/slick => static}/images/flags/vn.png | Bin {gui/slick => static}/images/flags/vu.png | Bin {gui/slick => static}/images/flags/wf.png | Bin {gui/slick => static}/images/flags/ws.png | Bin {gui/slick => static}/images/flags/ye.png | Bin {gui/slick => static}/images/flags/yt.png | Bin {gui/slick => static}/images/flags/za.png | Bin {gui/slick => static}/images/flags/zm.png | Bin {gui/slick => static}/images/flags/zw.png | Bin .../images/glyphicons-config-black.png | Bin .../images/glyphicons-config-white.png | Bin .../images/glyphicons-halflings-white.png | Bin .../images/glyphicons-halflings.png | Bin {gui/slick => static}/images/green-check.png | Bin {gui/slick => static}/images/heart.png | Bin .../images/ico/favicon-114.png | Bin .../images/ico/favicon-120.png | Bin .../images/ico/favicon-144.png | Bin .../images/ico/favicon-150.png | Bin .../images/ico/favicon-152.png | Bin .../images/ico/favicon-16.png | Bin .../images/ico/favicon-160.png | Bin .../images/ico/favicon-196.png | Bin .../images/ico/favicon-310.png | Bin .../images/ico/favicon-32.png | Bin .../images/ico/favicon-57.png | Bin .../images/ico/favicon-64.png | Bin .../images/ico/favicon-70.png | Bin .../images/ico/favicon-72.png | Bin .../images/ico/favicon-76.png | Bin .../images/ico/favicon-96.png | Bin {gui/slick => static}/images/ico/favicon.ico | Bin {gui/slick => static}/images/imdb.png | Bin {gui/slick => static}/images/info32.png | Bin {gui/slick => static}/images/legend16.png | Bin {gui/slick => static}/images/loading.gif | Bin .../images/loading16-dark.gif | Bin .../images/loading16-light.gif | Bin {gui/slick => static}/images/loading16.gif | Bin .../images/loading16_333333.gif | Bin .../images/loading16_dddddd.gif | Bin .../images/loading32-dark.gif | Bin {gui/slick => static}/images/loading32.gif | Bin .../images/manualsearch-white.png | Bin {gui/slick => static}/images/manualsearch.png | Bin .../images/medusa-snake-mascot.png | Bin {gui/slick => static}/images/medusa.png | Bin .../menu/16x_sprite_colored_menu_icons.png | Bin .../images/menu/menu-icons-black.png | Bin .../images/menu/menu-icons-white.png | Bin .../images/menu/system18-2.png | Bin .../slick => static}/images/menu/system18.png | Bin {gui/slick => static}/images/minus.png | Bin .../images/network/+globosat.png | Bin .../images/network/13th street.png | Bin .../slick => static}/images/network/1live.png | Bin {gui/slick => static}/images/network/2be.png | Bin {gui/slick => static}/images/network/33.png | Bin {gui/slick => static}/images/network/3fm.png | Bin .../images/network/3sat hd.png | Bin {gui/slick => static}/images/network/3sat.png | Bin .../images/network/4kidstv.png | Bin {gui/slick => static}/images/network/4sd.png | Bin .../slick => static}/images/network/7mate.png | Bin {gui/slick => static}/images/network/a&e.png | Bin .../images/network/aag tv.png | Bin .../images/network/aaj tv.png | Bin .../slick => static}/images/network/aande.png | Bin .../images/network/abc (au).png | Bin .../images/network/abc (australia).png | Bin .../images/network/abc (ja).png | Bin .../images/network/abc (ph).png | Bin .../images/network/abc (us).png | Bin .../images/network/abc australia.png | Bin .../images/network/abc family.png | Bin .../images/network/abc news 24.png | Bin .../images/network/abc news.png | Bin .../images/network/abc tv australia.png | Bin .../images/network/abc tv.png | Bin {gui/slick => static}/images/network/abc.png | Bin {gui/slick => static}/images/network/abc1.png | Bin {gui/slick => static}/images/network/abc2.png | Bin {gui/slick => static}/images/network/abc3.png | Bin .../images/network/abu dhabi tv.png | Bin .../images/network/addiktv.png | Bin .../images/network/adult swim.png | Bin .../images/network/adult-swim.png | Bin .../images/network/adultswim.png | Bin {gui/slick => static}/images/network/ahc.png | Bin .../images/network/al jazeera america.png | Bin .../images/network/al jazeera.png | Bin .../images/network/allocine.png | Bin .../images/network/alpha tv.png | Bin .../network/amazon prime instant video.png | Bin .../images/network/amazon.png | Bin {gui/slick => static}/images/network/amc.png | Bin .../america one television network.png | Bin .../images/network/america one.png | Bin .../network/american heroes channel.png | Bin .../images/network/animal planet.png | Bin .../images/network/animalplanet.png | Bin .../images/network/animax.png | Bin .../images/network/anime network.png | Bin .../images/network/anixe hd.png | Bin .../images/network/anixe sd.png | Bin .../images/network/antena 3.png | Bin {gui/slick => static}/images/network/aol.png | Bin {gui/slick => static}/images/network/ard.png | Bin .../slick => static}/images/network/arena.png | Bin .../images/network/arte hd.png | Bin {gui/slick => static}/images/network/arte.png | Bin {gui/slick => static}/images/network/artv.png | Bin {gui/slick => static}/images/network/at-x.png | Bin {gui/slick => static}/images/network/at5.png | Bin {gui/slick => static}/images/network/atv.png | Bin .../images/network/audience network.png | Bin {gui/slick => static}/images/network/avro.png | Bin .../images/network/avrotros.png | Bin {gui/slick => static}/images/network/axn.png | Bin .../images/network/axs tv.png | Bin .../images/network/azteca.png | Bin .../images/network/babyfirsttv.png | Bin .../images/network/bandai channel.png | Bin .../images/network/bandai visual.png | Bin .../images/network/bandai.png | Bin .../images/network/bbc america.png | Bin .../images/network/bbc canada.png | Bin .../images/network/bbc entertainment.png | Bin .../images/network/bbc four.png | Bin .../images/network/bbc hd.png | Bin .../images/network/bbc one.png | Bin .../images/network/bbc prime.png | Bin .../images/network/bbc three.png | Bin .../images/network/bbc two.png | Bin {gui/slick => static}/images/network/bbc.png | Bin {gui/slick => static}/images/network/bet.png | Bin {gui/slick => static}/images/network/bio..png | Bin {gui/slick => static}/images/network/bio.png | Bin .../images/network/biography channel.png | Bin {gui/slick => static}/images/network/blip.png | Bin .../images/network/bloomberg.png | Bin .../images/network/bnn (nl).png | Bin {gui/slick => static}/images/network/bnn.png | Bin .../images/network/bounce tv.png | Bin .../images/network/br alpha.png | Bin .../images/network/br-alpha.png | Bin {gui/slick => static}/images/network/br.png | Bin .../images/network/bravo (ca).png | Bin .../images/network/bravo (uk).png | Bin .../images/network/bravo (us).png | Bin .../slick => static}/images/network/bravo.png | Bin {gui/slick => static}/images/network/bs11.png | Bin {gui/slick => static}/images/network/btv.png | Bin .../images/network/byu television.png | Bin .../images/network/c-span.png | Bin .../images/network/canal d.png | Bin .../images/network/canal off.png | Bin .../images/network/canal+.png | Bin .../images/network/canale 5.png | Bin .../images/network/canvas.png | Bin .../images/network/canvas/ketnet.png | Bin .../images/network/caracol tv.png | Bin .../images/network/carlton television.png | Bin .../network/cartoon network australia.png | Bin .../images/network/cartoon network.png | Bin .../images/network/cartoonnetwork.png | Bin {gui/slick => static}/images/network/cbbc.png | Bin .../images/network/cbc (ca).png | Bin .../images/network/cbc (jp).png | Bin {gui/slick => static}/images/network/cbc.png | Bin .../images/network/cbeebies.png | Bin {gui/slick => static}/images/network/cbs.png | Bin {gui/slick => static}/images/network/cctv.png | Bin .../images/network/centric.png | Bin .../images/network/challenge.png | Bin .../images/network/channel 101.jpg | Bin .../images/network/channel 4.png | Bin .../images/network/channel 5.png | Bin .../images/network/channel ten.png | Bin .../images/network/chiba tv.png | Bin .../images/network/cinemax.png | Bin {gui/slick => static}/images/network/city.png | Bin .../images/network/classic arts showcase.png | Bin .../images/network/club rtl.png | Bin {gui/slick => static}/images/network/cmt.png | Bin {gui/slick => static}/images/network/cnbc.png | Bin {gui/slick => static}/images/network/cnn.png | Bin {gui/slick => static}/images/network/cnni.png | Bin .../images/network/colors.png | Bin .../images/network/comedy central (uk).png | Bin .../images/network/comedy central (us).png | Bin .../images/network/comedy central family.png | Bin .../images/network/comedy central hd.png | Bin .../images/network/comedy central.png | Bin .../images/network/comedycentral.png | Bin .../images/network/cooking channel.png | Bin .../images/network/cottage life.png | Bin .../images/network/court tv.png | Bin .../images/network/crackle.png | Bin .../network/crime & investigation network.png | Bin .../crime and investigation network.png | Bin {gui/slick => static}/images/network/cstv.png | Bin {gui/slick => static}/images/network/ctc.png | Bin {gui/slick => static}/images/network/ctv.png | Bin .../images/network/cuatro.png | Bin .../images/network/current tv.png | Bin .../images/network/cw seed.png | Bin {gui/slick => static}/images/network/cw.png | Bin {gui/slick => static}/images/network/d8.png | Bin .../images/network/dailymotion.jpg | Bin .../images/network/das erste hd.png | Bin .../images/network/das erste.png | Bin .../images/network/das vierte.png | Bin {gui/slick => static}/images/network/dave.png | Bin .../images/network/deluxe music.png | Bin .../images/network/destination america.png | Bin .../network/discovery channel (asia).png | Bin .../network/discovery channel (australia).png | Bin .../images/network/discovery channel.png | Bin .../images/network/discovery family.png | Bin .../images/network/discovery kids.png | Bin .../images/network/discovery real time.png | Bin .../images/network/discovery science.png | Bin .../images/network/discovery turbo uk.png | Bin .../images/network/discovery turbo.png | Bin .../images/network/discovery.png | Bin .../images/network/discoverychannel.png | Bin .../images/network/dish tv.png | Bin .../network/disney channel (germany).png | Bin .../images/network/disney channel (us).png | Bin .../images/network/disney channel.png | Bin .../images/network/disney cinemagic.png | Bin .../images/network/disney junior (uk).png | Bin .../images/network/disney junior.png | Bin .../images/network/disney xd.png | Bin .../images/network/disney.png | Bin .../images/network/disneychannel.png | Bin .../images/network/diy network canada.png | Bin .../images/network/diy network.png | Bin .../images/network/dmax (de).png | Bin .../images/network/dmax hd.png | Bin {gui/slick => static}/images/network/dmax.png | Bin {gui/slick => static}/images/network/dr1.png | Bin {gui/slick => static}/images/network/dr2.png | Bin .../network/dumont television network.png | Bin .../images/network/e! (ca).png | Bin {gui/slick => static}/images/network/e!.png | Bin {gui/slick => static}/images/network/e4.png | Bin {gui/slick => static}/images/network/eden.png | Bin {gui/slick => static}/images/network/een.png | Bin .../images/network/einsfestival hd.png | Bin .../images/network/einsfestival.png | Bin .../images/network/einslive.png | Bin .../images/network/einsplus.png | Bin .../images/network/el rey network.png | Bin .../images/network/endemol.png | Bin .../images/network/entertainment.png | Bin {gui/slick => static}/images/network/eo.png | Bin .../images/network/espn 2.png | Bin .../images/network/espn classic.png | Bin {gui/slick => static}/images/network/espn.png | Bin .../images/network/esquire network.png | Bin .../images/network/euronews.png | Bin .../images/network/eurosport 1.png | Bin .../images/network/eurosport 2.png | Bin .../images/network/eurosport hd.png | Bin .../images/network/eurosport.png | Bin .../images/network/explora.png | Bin {gui/slick => static}/images/network/five.png | Bin .../images/network/food network canada.png | Bin .../images/network/food network.png | Bin .../images/network/fox (fi).png | Bin .../images/network/fox (it).png | Bin .../images/network/fox (uk).png | Bin .../images/network/fox (us).png | Bin .../images/network/fox business.png | Bin .../images/network/fox channel.png | Bin .../images/network/fox crime.png | Bin .../images/network/fox sports 1.png | Bin .../images/network/fox sports.png | Bin .../network/fox television classics.png | Bin {gui/slick => static}/images/network/fox.png | Bin .../images/network/france 2.png | Bin .../images/network/france 3.png | Bin .../images/network/france 4.png | Bin .../images/network/freeform.png | Bin .../images/network/fuji television.png | Bin .../images/network/fuji tv.png | Bin .../images/network/funimation channel.png | Bin .../images/network/funimation.png | Bin {gui/slick => static}/images/network/fuse.png | Bin .../images/network/fx (us).png | Bin {gui/slick => static}/images/network/fx.png | Bin .../images/network/fxnetworks.png | Bin {gui/slick => static}/images/network/fxx.png | Bin {gui/slick => static}/images/network/fyi.png | Bin .../images/network/g4 canada.png | Bin {gui/slick => static}/images/network/g4.png | Bin {gui/slick => static}/images/network/g4_2.png | Bin .../images/network/g4techtv canada.png | Bin .../images/network/game show network.png | Bin .../slick => static}/images/network/glitz.png | Bin .../images/network/global tv.png | Bin .../images/network/global.png | Bin {gui/slick => static}/images/network/gnt.png | Bin .../images/network/great american country.png | Bin {gui/slick => static}/images/network/h2.png | Bin .../images/network/hallmark channel.png | Bin .../images/network/hbo canada.png | Bin .../images/network/hbo europe.png | Bin .../images/network/hbo latin america.png | Bin .../images/network/hbo nordic.png | Bin {gui/slick => static}/images/network/hbo.png | Bin .../slick => static}/images/network/hdnet.png | Bin .../images/network/heimatkanal.png | Bin .../images/network/hgtv canada.png | Bin {gui/slick => static}/images/network/hgtv.png | Bin .../images/network/historia.png | Bin .../images/network/history (ca).png | Bin .../images/network/history television.png | Bin .../images/network/history.png | Bin .../images/network/historychannel.png | Bin {gui/slick => static}/images/network/hr.png | Bin .../images/network/hulu presents.png | Bin {gui/slick => static}/images/network/hulu.png | Bin {gui/slick => static}/images/network/ifc.png | Bin {gui/slick => static}/images/network/ikon.png | Bin {gui/slick => static}/images/network/im1.png | Bin .../images/network/internet.png | Bin .../network/investigation discovery.png | Bin .../images/network/ion television.png | Bin .../images/network/itv granada.png | Bin {gui/slick => static}/images/network/itv.png | Bin {gui/slick => static}/images/network/itv1.png | Bin {gui/slick => static}/images/network/itv2.png | Bin {gui/slick => static}/images/network/itv3.png | Bin {gui/slick => static}/images/network/itv4.png | Bin {gui/slick => static}/images/network/joiz.png | Bin .../images/network/junior.png | Bin .../images/network/kabel eins classics.png | Bin .../images/network/kabel eins hd.png | Bin .../images/network/kabel eins.png | Bin .../images/network/kanaaltwee.png | Bin .../images/network/kanal 5.png | Bin .../images/network/kanal5.png | Bin .../images/network/kbs tv2.png | Bin .../images/network/ketnet.png | Bin .../images/network/kids station.png | Bin .../images/network/kika hd.png | Bin {gui/slick => static}/images/network/kika.png | Bin {gui/slick => static}/images/network/kro.png | Bin .../network/kyoto broadcasting system.png | Bin .../images/network/la deux.png | Bin .../images/network/la trois.png | Bin .../images/network/la une.png | Bin {gui/slick => static}/images/network/la1.png | Bin {gui/slick => static}/images/network/la2.png | Bin .../images/network/lasexta.png | Bin .../images/network/lifestyle.png | Bin .../images/network/lifetime uk.png | Bin .../images/network/lifetime.png | Bin {gui/slick => static}/images/network/lmn.png | Bin {gui/slick => static}/images/network/logo.png | Bin .../london weekend television (lwt).png | Bin .../network/london weekend television.png | Bin {gui/slick => static}/images/network/m6.png | Bin .../manhattan neighborhood network.png | Bin {gui/slick => static}/images/network/matv.png | Bin {gui/slick => static}/images/network/max.png | Bin {gui/slick => static}/images/network/mbs.png | Bin {gui/slick => static}/images/network/mdr.png | Bin {gui/slick => static}/images/network/mgm.png | Bin .../images/network/military channel.png | Bin .../slick => static}/images/network/more4.png | Bin .../images/network/motorvision tv.png | Bin .../images/network/motorvision.png | Bin .../images/network/movie network.png | Bin .../images/network/mtv (uk).png | Bin .../images/network/mtv (us).png | Bin .../images/network/mtv brazil.png | Bin .../images/network/mtv network.png | Bin {gui/slick => static}/images/network/mtv.png | Bin {gui/slick => static}/images/network/mtv2.png | Bin .../images/network/multishow.png | Bin .../images/network/musiqueplus.png | Bin {gui/slick => static}/images/network/n tv.png | Bin .../images/network/n24 hd.png | Bin {gui/slick => static}/images/network/n24.png | Bin .../images/network/nat geo wild.png | Bin .../images/network/nat geo.png | Bin .../network/national geographic (uk).png | Bin .../network/national geographic (us).png | Bin .../network/national geographic channel.png | Bin .../images/network/national geographic.png | Bin {gui/slick => static}/images/network/nbc.png | Bin .../slick => static}/images/network/nbcsn.png | Bin .../images/network/nbcu tv.png | Bin {gui/slick => static}/images/network/ncrv.png | Bin .../images/network/ndr hd.png | Bin {gui/slick => static}/images/network/ndr.png | Bin .../images/network/nederland 1.png | Bin .../images/network/nederland 2.png | Bin .../images/network/nederland 3.png | Bin .../images/network/neo kika.png | Bin .../slick => static}/images/network/net 5.png | Bin {gui/slick => static}/images/network/net5.png | Bin .../images/network/netflix.png | Bin .../images/network/network ten.png | Bin .../images/network/nfl network.png | Bin {gui/slick => static}/images/network/ngc.png | Bin {gui/slick => static}/images/network/nhk.png | Bin .../images/network/nick at nite.png | Bin .../images/network/nick comedy.png | Bin .../images/network/nick jr..png | Bin .../images/network/nickelodeon.png | Bin .../images/network/nicktoons network.png | Bin .../images/network/nicktoons.png | Bin .../images/network/niconico.png | Bin .../images/network/nine network.png | Bin .../images/network/nippon television.png | Bin .../images/network/no network.png | Bin .../images/network/nolife.png | Bin .../images/network/nonetwork.png | Bin {gui/slick => static}/images/network/nos.png | Bin .../images/network/novatv.png | Bin .../slick => static}/images/network/npo 1.png | Bin .../slick => static}/images/network/npo 2.png | Bin .../slick => static}/images/network/npo 3.png | Bin {gui/slick => static}/images/network/nps.png | Bin {gui/slick => static}/images/network/nrk.png | Bin {gui/slick => static}/images/network/nrk1.png | Bin {gui/slick => static}/images/network/ntr.png | Bin {gui/slick => static}/images/network/ntv.png | Bin .../images/network/oasis hd.png | Bin {gui/slick => static}/images/network/ocs.png | Bin .../images/network/omroep brabant.png | Bin .../images/network/omroep max.png | Bin .../images/network/oprah winfrey network.png | Bin .../slick => static}/images/network/orf 1.png | Bin .../slick => static}/images/network/orf 2.png | Bin .../images/network/orf eins.png | Bin .../images/network/orf iii.png | Bin {gui/slick => static}/images/network/orf.png | Bin .../images/network/orf1 hd.png | Bin {gui/slick => static}/images/network/own.png | Bin .../images/network/oxygen.png | Bin .../images/network/pay-per-view.png | Bin {gui/slick => static}/images/network/pbs.png | Bin .../images/network/phoenix hd.png | Bin .../images/network/phoenix.png | Bin .../images/network/playboy tv.png | Bin .../images/network/playstation network.png | Bin .../images/network/plug rtl.png | Bin .../images/network/powned.png | Bin .../images/network/prime (be).png | Bin .../images/network/prime (nz).png | Bin .../images/network/private spice.png | Bin .../images/network/pro7 hd.png | Bin {gui/slick => static}/images/network/pro7.png | Bin .../images/network/production i.g.png | Bin .../images/network/prosieben fun.png | Bin .../images/network/prosieben maxx.png | Bin .../images/network/prosieben.png | Bin .../slick => static}/images/network/quest.png | Bin .../images/network/radio bremen tv.png | Bin .../images/network/radio bremen.png | Bin .../images/network/radio canada.png | Bin .../images/network/radio west.png | Bin .../images/network/radio-canada.png | Bin .../slick => static}/images/network/rai 1.png | Bin {gui/slick => static}/images/network/rai.png | Bin {gui/slick => static}/images/network/rbb.png | Bin {gui/slick => static}/images/network/rctv.png | Bin {gui/slick => static}/images/network/rdi.png | Bin .../images/network/record.png | Bin .../images/network/rede bandeirantes.png | Bin .../images/network/rede globo.png | Bin .../images/network/reelzchannel.png | Bin .../images/network/regio tv.png | Bin .../images/network/revision3.png | Bin .../images/network/rmc decouverte.png | Bin .../images/network/rooster teeth.png | Bin {gui/slick => static}/images/network/rtbf.png | Bin .../images/network/rte one.png | Bin .../slick => static}/images/network/rtl 4.png | Bin .../slick => static}/images/network/rtl 5.png | Bin .../slick => static}/images/network/rtl 7.png | Bin .../slick => static}/images/network/rtl 8.png | Bin .../images/network/rtl crime hd.png | Bin .../images/network/rtl crime.png | Bin .../images/network/rtl hd.png | Bin .../images/network/rtl ii.png | Bin .../images/network/rtl living hd.png | Bin .../images/network/rtl living.png | Bin .../images/network/rtl nitro.png | Bin .../images/network/rtl passion hd.png | Bin .../images/network/rtl passion.png | Bin .../images/network/rtl television.png | Bin .../images/network/rtl tvi.jpg | Bin {gui/slick => static}/images/network/rtl.png | Bin .../images/network/rtl2 hd.png | Bin {gui/slick => static}/images/network/rtl2.png | Bin {gui/slick => static}/images/network/rtl4.png | Bin {gui/slick => static}/images/network/rtl5.png | Bin {gui/slick => static}/images/network/rtl7.png | Bin {gui/slick => static}/images/network/rtl8.png | Bin .../images/network/rtp internacional.png | Bin .../images/network/rtp madeira.png | Bin .../slick => static}/images/network/rtp n.png | Bin {gui/slick => static}/images/network/rtp1.png | Bin {gui/slick => static}/images/network/rvu.png | Bin {gui/slick => static}/images/network/s4/c.png | Bin .../images/network/sat.1 emotions.png | Bin .../images/network/sat.1 gold.png | Bin .../images/network/sat.1 hd.png | Bin .../slick => static}/images/network/sat.1.png | Bin {gui/slick => static}/images/network/sat1.png | Bin .../images/network/sbs (au).png | Bin .../slick => static}/images/network/sbs 6.png | Bin .../slick => static}/images/network/sbs 9.png | Bin .../images/network/sbs australia.png | Bin {gui/slick => static}/images/network/sbs.png | Bin {gui/slick => static}/images/network/sbs6.png | Bin {gui/slick => static}/images/network/sbt.png | Bin .../images/network/science channel.png | Bin .../slick => static}/images/network/scifi.png | Bin .../images/network/series+.png | Bin .../images/network/servus tv.png | Bin .../images/network/servustv hd.png | Bin .../images/network/servustv.png | Bin .../images/network/set tv.png | Bin {gui/slick => static}/images/network/set.png | Bin .../images/network/seven network.png | Bin .../images/network/showcase (au).png | Bin .../images/network/showcase (ca).png | Bin .../images/network/showcase.png | Bin .../images/network/showtime.png | Bin .../images/network/sic mulher.png | Bin .../images/network/sic radical.png | Bin .../images/network/sic sempre gold.png | Bin {gui/slick => static}/images/network/sic.png | Bin .../images/network/sixx hd.png | Bin {gui/slick => static}/images/network/sixx.png | Bin .../images/network/sky action.png | Bin .../images/network/sky arts.png | Bin .../images/network/sky atlantic (it).png | Bin .../images/network/sky atlantic hd.png | Bin .../images/network/sky atlantic.png | Bin .../images/network/sky bundesliga.png | Bin .../images/network/sky cinema (it).png | Bin .../images/network/sky cinema (uk).png | Bin .../images/network/sky cinema +1.png | Bin .../images/network/sky cinema +24.png | Bin .../images/network/sky cinema.png | Bin .../images/network/sky comedy.png | Bin .../images/network/sky emotion.png | Bin .../images/network/sky hits.png | Bin .../images/network/sky krimi.png | Bin .../images/network/sky nostalgie.png | Bin .../images/network/sky select.png | Bin .../images/network/sky sport austria.png | Bin .../images/network/sky sport news hd.png | Bin .../images/network/sky sport news.png | Bin .../images/network/sky sport1.png | Bin .../images/network/sky sport2.png | Bin .../images/network/sky sports.png | Bin {gui/slick => static}/images/network/sky.png | Bin {gui/slick => static}/images/network/sky1.png | Bin .../images/network/smithsonian channel.png | Bin {gui/slick => static}/images/network/soho.png | Bin .../network/sony entertainment television.png | Bin .../slick => static}/images/network/space.png | Bin .../images/network/speed channel.png | Bin .../slick => static}/images/network/speed.png | Bin .../images/network/spiegel geschichte.png | Bin .../images/network/spike tv.png | Bin .../slick => static}/images/network/spike.png | Bin .../images/network/sport1 hd.png | Bin .../images/network/sport1.png | Bin .../images/network/sportsman channel.png | Bin {gui/slick => static}/images/network/sr.png | Bin {gui/slick => static}/images/network/src.png | Bin .../images/network/srf zwei.png | Bin .../images/network/star plus.png | Bin .../images/network/star tv.png | Bin .../images/network/starz!.png | Bin .../slick => static}/images/network/starz.png | Bin .../images/network/stv (uk).png | Bin {gui/slick => static}/images/network/stv.png | Bin .../images/network/style network.png | Bin .../slick => static}/images/network/style.png | Bin {gui/slick => static}/images/network/sub.png | Bin .../slick => static}/images/network/subtv.png | Bin .../images/network/sun tv.png | Bin .../images/network/sun-tv.png | Bin .../images/network/sundance.png | Bin .../images/network/sundancetv.png | Bin .../images/network/sunrise.png | Bin .../images/network/super channel.png | Bin .../images/network/super ecran.png | Bin .../images/network/super rtl hd.png | Bin .../images/network/super rtl.png | Bin .../images/network/sveriges television.png | Bin .../images/network/svt drama.png | Bin {gui/slick => static}/images/network/svt.png | Bin {gui/slick => static}/images/network/svt1.png | Bin {gui/slick => static}/images/network/svt2.png | Bin .../images/network/swr hd.png | Bin {gui/slick => static}/images/network/swr.png | Bin {gui/slick => static}/images/network/syfy.png | Bin .../images/network/syndicated.png | Bin .../images/network/syndication.png | Bin .../images/network/tagesschau24.png | Bin .../images/network/tbs superstation.png | Bin {gui/slick => static}/images/network/tbs.png | Bin .../images/network/techtv canada.png | Bin .../images/network/tele 5 hd.png | Bin .../images/network/tele 5.png | Bin .../images/network/tele-quebec.png | Bin .../images/network/telecinco.png | Bin .../images/network/teletama.png | Bin .../images/network/teletoon.png | Bin {gui/slick => static}/images/network/tf1.png | Bin .../images/network/thames television.png | Bin .../images/network/the anime network.png | Bin .../images/network/the cw.png | Bin .../images/network/the discovery channel.png | Bin .../images/network/the history channel.png | Bin .../images/network/the hub.png | Bin .../images/network/the movie network.png | Bin .../images/network/the science channel.png | Bin .../images/network/the wb.png | Bin .../images/network/the-cw.png | Bin .../slick => static}/images/network/thecw.png | Bin .../slick => static}/images/network/thewb.png | Bin {gui/slick => static}/images/network/tlc.png | Bin {gui/slick => static}/images/network/tmf.png | Bin .../images/network/tnt (us).png | Bin .../images/network/tnt drama.png | Bin .../images/network/tnt glitz.png | Bin .../images/network/tnt serie.png | Bin {gui/slick => static}/images/network/tnt.png | Bin .../images/network/tntdrama.png | Bin .../images/network/toei animation.png | Bin .../images/network/toei channel.png | Bin .../network/tokyo broadcasting system.png | Bin .../images/network/tokyo mx.png | Bin .../images/network/toon disney.png | Bin {gui/slick => static}/images/network/tqs.png | Bin .../images/network/travel channel (uk).png | Bin .../images/network/travel channel.png | Bin .../images/network/treehouse tv.png | Bin {gui/slick => static}/images/network/tros.png | Bin .../slick => static}/images/network/trutv.png | Bin {gui/slick => static}/images/network/tv 2.png | Bin {gui/slick => static}/images/network/tv 4.png | Bin .../images/network/tv asahi.png | Bin .../images/network/tv azteca.png | Bin .../images/network/tv cabo.png | Bin .../images/network/tv cultura.png | Bin .../images/network/tv guide channel.png | Bin .../images/network/tv guide.png | Bin .../images/network/tv kanagawa.png | Bin .../images/network/tv land.png | Bin .../images/network/tv norge.png | Bin .../images/network/tv one (nz).png | Bin .../images/network/tv one nz.png | Bin .../images/network/tv saitama.png | Bin .../images/network/tv tokyo.png | Bin .../images/network/tv west.png | Bin {gui/slick => static}/images/network/tv1.png | Bin {gui/slick => static}/images/network/tv2.png | Bin .../images/network/tv3 (no).png | Bin .../images/network/tv3, norway.png | Bin {gui/slick => static}/images/network/tv3.png | Bin {gui/slick => static}/images/network/tv4.png | Bin .../images/network/tv5 monde.png | Bin {gui/slick => static}/images/network/tv5.png | Bin {gui/slick => static}/images/network/tv6.png | Bin {gui/slick => static}/images/network/tv7.png | Bin {gui/slick => static}/images/network/tva.png | Bin {gui/slick => static}/images/network/tvb.png | Bin {gui/slick => static}/images/network/tve.png | Bin {gui/slick => static}/images/network/tve1.png | Bin {gui/slick => static}/images/network/tve2.png | Bin .../images/network/tvg network.png | Bin {gui/slick => static}/images/network/tvi.png | Bin {gui/slick => static}/images/network/tvk.png | Bin {gui/slick => static}/images/network/tvn.png | Bin .../images/network/tvnorge.png | Bin {gui/slick => static}/images/network/tvnz.png | Bin {gui/slick => static}/images/network/tvo.png | Bin .../images/network/tvp sa.png | Bin {gui/slick => static}/images/network/tvp1.png | Bin {gui/slick => static}/images/network/tvp2.png | Bin .../images/network/uktv history.png | Bin .../images/network/uktv yesterday.png | Bin .../images/network/universal channel.png | Bin .../images/network/univision.png | Bin .../slick => static}/images/network/up tv.png | Bin {gui/slick => static}/images/network/upn.png | Bin .../images/network/usa network.png | Bin .../images/network/usa-network.png | Bin {gui/slick => static}/images/network/usa.png | Bin .../images/network/usanetwork.png | Bin {gui/slick => static}/images/network/v.png | Bin {gui/slick => static}/images/network/vara.png | Bin .../images/network/velocity.png | Bin .../images/network/veronica.png | Bin .../images/network/vh1 classics.png | Bin {gui/slick => static}/images/network/vh1.png | Bin .../images/network/viceland.png | Bin {gui/slick => static}/images/network/vier.png | Bin .../images/network/vijftv.jpg | Bin .../slick => static}/images/network/vimeo.png | Bin .../images/network/viva hd.png | Bin {gui/slick => static}/images/network/viva.png | Bin .../images/network/viz media.png | Bin .../images/network/vox hd.png | Bin {gui/slick => static}/images/network/vox.png | Bin {gui/slick => static}/images/network/vpro.png | Bin .../images/network/vrak.tv.png | Bin {gui/slick => static}/images/network/vt4.png | Bin {gui/slick => static}/images/network/vtm.png | Bin .../images/network/vtmkzoom.jpg | Bin .../images/network/w network.png | Bin .../slick => static}/images/network/watch.png | Bin .../images/network/wdr hd.png | Bin {gui/slick => static}/images/network/wdr.png | Bin .../slick => static}/images/network/we tv.png | Bin .../images/network/wgn america.png | Bin {gui/slick => static}/images/network/wnl.png | Bin .../slick => static}/images/network/wowow.png | Bin .../images/network/xbox live.png | Bin .../images/network/xbox video.png | Bin .../slick => static}/images/network/xebec.png | Bin .../images/network/yahoo! screen.png | Bin .../slick => static}/images/network/yorin.png | Bin .../images/network/youtube.png | Bin .../images/network/ytv (ca).png | Bin {gui/slick => static}/images/network/ytv.png | Bin .../images/network/zdf hd.png | Bin .../images/network/zdf.kultur hd.png | Bin .../images/network/zdf.kultur.png | Bin {gui/slick => static}/images/network/zdf.png | Bin .../images/network/zdfinfo hd.png | Bin .../images/network/zdfinfo.png | Bin .../images/network/zdfneo hd.png | Bin .../images/network/zdfneo.png | Bin {gui/slick => static}/images/next.png | Bin {gui/slick => static}/images/nfo-no.gif | Bin {gui/slick => static}/images/nfo.gif | Bin {gui/slick => static}/images/no16.png | Bin {gui/slick => static}/images/plus.png | Bin {gui/slick => static}/images/poster-dark.jpg | Bin {gui/slick => static}/images/poster-large.png | Bin {gui/slick => static}/images/poster.png | Bin {gui/slick => static}/images/prev.png | Bin .../images/providers/6box.png | Bin .../images/providers/6box_me.png | Bin .../images/providers/abnormal.png | Bin .../images/providers/alpharatio.png | Bin .../images/providers/althub.png | Bin .../images/providers/althub_co_za.png | Bin .../images/providers/animebytes.png | Bin .../images/providers/animenzb.gif | Bin .../images/providers/animenzb.png | Bin .../images/providers/anizb.png | Bin .../images/providers/anonzbs.png | Bin .../images/providers/anonzbs_com.png | Bin .../images/providers/api_dognzb_cr.png | Bin .../images/providers/beyondhd.png | Bin .../images/providers/beyondhd_me.png | Bin .../images/providers/bin_req.png | Bin .../images/providers/binsearch.png | Bin .../images/providers/bitcannon.png | Bin .../images/providers/bithdtv.png | Bin .../images/providers/bitsnoop.png | Bin .../images/providers/bitsoup.png | Bin .../images/providers/bluetigers.png | Bin .../images/providers/btdigg.png | Bin .../slick => static}/images/providers/btn.png | Bin .../images/providers/cpasbien.png | Bin .../images/providers/danishbits.png | Bin .../images/providers/danishbits_org.png | Bin .../images/providers/demonoid.png | Bin .../images/providers/demonoid_pw.png | Bin .../images/providers/dognzb.png | Bin .../images/providers/dognzb_cr.png | Bin .../images/providers/drunkenslug.png | Bin .../images/providers/drunkenslug_com.png | Bin .../images/providers/dusky_deepcave.png | Bin .../images/providers/dusky_deepcave_net.png | Bin .../images/providers/elitetorrent.png | Bin .../images/providers/eutorrents.png | Bin .../images/providers/eutorrents_to.png | Bin .../images/providers/extratorrent.png | Bin .../images/providers/fastnzb_info.png | Bin .../images/providers/french_adn.png | Bin .../images/providers/french_adn_com.png | Bin .../images/providers/freshontv.png | Bin .../images/providers/gftracker.png | Bin .../images/providers/hd4free.png | Bin .../images/providers/hdbits.png | Bin .../images/providers/hdspace.png | Bin .../images/providers/hdtorrents.png | Bin .../images/providers/hounddawgs.png | Bin .../images/providers/ilovetorrents.png | Bin .../images/providers/iptorrents.png | Bin .../images/providers/kickasstorrents.png | Bin .../images/providers/libertalia.png | Bin .../images/providers/limetorrents.png | Bin .../images/providers/missing.png | Bin .../images/providers/morethantv.png | Bin .../images/providers/newpct.png | Bin .../images/providers/newz_complex.png | Bin .../images/providers/newz_complex_org.png | Bin .../images/providers/newzbin.png | Bin .../images/providers/newznab.png | Bin .../images/providers/newztown.png | Bin .../images/providers/newztown_co_za.png | Bin .../images/providers/nextgen.png | Bin .../images/providers/nmatrix.png | Bin .../images/providers/nmatrix_co_za.png | Bin .../images/providers/norbits.png | Bin .../images/providers/nutech.png | Bin .../images/providers/nyaatorrents.png | Bin .../images/providers/nzb_ag.png | Bin .../images/providers/nzb_cat.png | Bin .../images/providers/nzb_is.png | Bin .../images/providers/nzb_su.png | Bin .../images/providers/nzbfinder.png | Bin .../images/providers/nzbfinder_ws.png | Bin .../images/providers/nzbfriends.png | Bin .../images/providers/nzbgeek.png | Bin .../images/providers/nzbgeek_info.png | Bin .../images/providers/nzbid.png | Bin .../images/providers/nzbid_org.png | Bin .../images/providers/nzbindex.png | Bin .../images/providers/nzbindex_in.png | Bin .../images/providers/nzbndx.png | Bin .../images/providers/nzbndx_com.png | Bin .../images/providers/nzbplanet.png | Bin .../images/providers/nzbplanet_net.png | Bin .../images/providers/nzbs2go.png | Bin .../images/providers/nzbs2go_com.png | Bin .../images/providers/nzbs_org.png | Bin .../images/providers/nzbs_org_old.png | Bin .../images/providers/nzbsooti_sx.png | Bin .../images/providers/nzbstars_com.png | Bin .../images/providers/nzbtor.png | Bin .../images/providers/nzbtor_cr.png | Bin .../images/providers/nzbtv_net.png | Bin .../images/providers/nzbzombie.png | Bin .../images/providers/nzbzombie_com.png | Bin .../images/providers/omgwtfnzbs.png | Bin .../images/providers/opennzb.png | Bin .../images/providers/opennzb_net.png | Bin .../images/providers/oznzb.png | Bin .../images/providers/oznzb_com.png | Bin .../images/providers/pfmonkey.png | Bin .../images/providers/phxbit.png | Bin .../images/providers/piratenzb.png | Bin .../images/providers/piratenzb_com.png | Bin .../images/providers/pretome.png | Bin .../images/providers/privatehd.png | Bin .../images/providers/privatehd_to.png | Bin .../images/providers/publichd.png | Bin .../images/providers/qoqmovies.png | Bin .../images/providers/qoqmovies_com.png | Bin .../images/providers/rarbg.png | Bin .../images/providers/sceneaccess.png | Bin .../images/providers/sceneelite.png | Bin .../images/providers/scenetime.png | Bin .../images/providers/shazbat_tv.png | Bin .../images/providers/sick_beard_index.png | Bin .../images/providers/sickbeard_index.png | Bin .../images/providers/simplynzbs.png | Bin .../images/providers/simplynzbs_com.png | Bin .../images/providers/sixbox.png | Bin .../images/providers/sixbox_me.png | Bin .../images/providers/speedcd.png | Bin .../images/providers/spotweb.png | Bin .../images/providers/spotweb_be.png | Bin .../images/providers/strike.png | Bin .../images/providers/t411.png | Bin .../images/providers/thepiratebay.png | Bin .../images/providers/thepiratebay_.png | Bin .../images/providers/titansoftv.png | Bin .../images/providers/tntvillage.png | Bin .../images/providers/tokyotoshokan.png | Bin .../images/providers/torrentbytes.png | Bin .../images/providers/torrentday.png | Bin .../images/providers/torrentleech.png | Bin .../images/providers/torrentproject.png | Bin .../images/providers/torrentrss.png | Bin .../images/providers/torrentshack.png | Bin .../images/providers/torrentshack_me.png | Bin .../images/providers/torrentz2.png | Bin .../images/providers/transmitthenet.png | Bin .../images/providers/tvbinz.png | Bin .../images/providers/tvchaosuk.png | Bin .../images/providers/tvnzb.png | Bin .../images/providers/usenet_crawler.png | Bin .../images/providers/womble_s_index.png | Bin .../images/providers/xspeeds.png | Bin .../images/providers/xspeeds_eu.png | Bin .../images/providers/xthor.png | Bin .../images/providers/xthor_bz.png | Bin .../images/providers/zooqle.png | Bin {gui/slick => static}/images/queued.png | Bin {gui/slick => static}/images/rating.png | Bin {gui/slick => static}/images/save.png | Bin {gui/slick => static}/images/search16.png | Bin .../images/search_backlog_8x8.png | Bin .../images/search_daily_8x8.png | Bin .../images/search_manual_8x8.png | Bin {gui/slick => static}/images/shadow.png | Bin .../images/subtitles/addic7ed.png | Bin .../images/subtitles/flags/afr.png | Bin .../images/subtitles/flags/alb.png | Bin .../images/subtitles/flags/amh.png | Bin .../images/subtitles/flags/ara.png | Bin .../images/subtitles/flags/arg.png | Bin .../images/subtitles/flags/asm.png | Bin .../images/subtitles/flags/ave.png | Bin .../images/subtitles/flags/aym.png | Bin .../images/subtitles/flags/aze.png | Bin .../images/subtitles/flags/bak.png | Bin .../images/subtitles/flags/bam.png | Bin .../images/subtitles/flags/bel.png | Bin .../images/subtitles/flags/ben.png | Bin .../images/subtitles/flags/bis.png | Bin .../images/subtitles/flags/bod.png | Bin .../images/subtitles/flags/bos.png | Bin .../images/subtitles/flags/bre.png | Bin .../images/subtitles/flags/bul.png | Bin .../images/subtitles/flags/cat.png | Bin .../images/subtitles/flags/ces.png | Bin .../images/subtitles/flags/cha.png | Bin .../images/subtitles/flags/checkbox.png | Bin .../images/subtitles/flags/chi.png | Bin .../images/subtitles/flags/chu.png | Bin .../images/subtitles/flags/chv.png | Bin .../images/subtitles/flags/cor.png | Bin .../images/subtitles/flags/cos.png | Bin .../images/subtitles/flags/cre.png | Bin .../images/subtitles/flags/cym.png | Bin .../images/subtitles/flags/cze.png | Bin .../images/subtitles/flags/dan.png | Bin .../images/subtitles/flags/deu.png | Bin .../images/subtitles/flags/dum.png | Bin .../images/subtitles/flags/dut.png | Bin .../images/subtitles/flags/dzo.png | Bin .../images/subtitles/flags/ell.png | Bin .../images/subtitles/flags/eng.png | Bin .../images/subtitles/flags/epo.png | Bin .../images/subtitles/flags/est.png | Bin .../images/subtitles/flags/ewe.png | Bin .../images/subtitles/flags/fam.png | Bin .../images/subtitles/flags/fao.png | Bin .../images/subtitles/flags/fas.png | Bin .../images/subtitles/flags/fij.png | Bin .../images/subtitles/flags/fin.png | Bin .../images/subtitles/flags/fra.png | Bin .../images/subtitles/flags/fre.png | Bin .../images/subtitles/flags/frm.png | Bin .../images/subtitles/flags/fro.png | Bin .../images/subtitles/flags/geo.png | Bin .../images/subtitles/flags/ger.png | Bin .../images/subtitles/flags/gla.png | Bin .../images/subtitles/flags/gle.png | Bin .../images/subtitles/flags/glg.png | Bin .../images/subtitles/flags/grn.png | Bin .../images/subtitles/flags/gsw.png | Bin .../images/subtitles/flags/guj.png | Bin .../images/subtitles/flags/hat.png | Bin .../images/subtitles/flags/heb.png | Bin .../images/subtitles/flags/hin.png | Bin .../images/subtitles/flags/hrv.png | Bin .../images/subtitles/flags/hun.png | Bin .../images/subtitles/flags/hye.png | Bin .../images/subtitles/flags/ice.png | Bin .../images/subtitles/flags/ido.png | Bin .../images/subtitles/flags/ile.png | Bin .../images/subtitles/flags/ind.png | Bin .../images/subtitles/flags/isl.png | Bin .../images/subtitles/flags/ita.png | Bin .../images/subtitles/flags/jpn.png | Bin .../images/subtitles/flags/kan.png | Bin .../images/subtitles/flags/kat.png | Bin .../images/subtitles/flags/kau.png | Bin .../images/subtitles/flags/kaz.png | Bin .../images/subtitles/flags/khm.png | Bin .../images/subtitles/flags/kik.png | Bin .../images/subtitles/flags/kin.png | Bin .../images/subtitles/flags/kir.png | Bin .../images/subtitles/flags/kon.png | Bin .../images/subtitles/flags/kor.png | Bin .../images/subtitles/flags/lat.png | Bin .../images/subtitles/flags/lav.png | Bin .../images/subtitles/flags/lim.png | Bin .../images/subtitles/flags/lit.png | Bin .../images/subtitles/flags/ltz.png | Bin .../images/subtitles/flags/lub.png | Bin .../images/subtitles/flags/mac.png | Bin .../images/subtitles/flags/mah.png | Bin .../images/subtitles/flags/mal.png | Bin .../images/subtitles/flags/mar.png | Bin .../images/subtitles/flags/mkd.png | Bin .../images/subtitles/flags/mlg.png | Bin .../images/subtitles/flags/mlt.png | Bin .../images/subtitles/flags/mne.png | Bin .../images/subtitles/flags/mon.png | Bin .../images/subtitles/flags/msa.png | Bin .../images/subtitles/flags/mya.png | Bin .../images/subtitles/flags/nau.png | Bin .../images/subtitles/flags/nbl.png | Bin .../images/subtitles/flags/ndo.png | Bin .../images/subtitles/flags/nep.png | Bin .../images/subtitles/flags/nld.png | Bin .../images/subtitles/flags/nor.png | Bin .../images/subtitles/flags/oci.png | Bin .../images/subtitles/flags/orm.png | Bin .../images/subtitles/flags/pan.png | Bin .../images/subtitles/flags/pob.png | Bin .../images/subtitles/flags/pol.png | Bin .../images/subtitles/flags/por.png | Bin .../images/subtitles/flags/pus.png | Bin .../images/subtitles/flags/ron.png | Bin .../images/subtitles/flags/rum.png | Bin .../images/subtitles/flags/rus.png | Bin .../images/subtitles/flags/sag.png | Bin .../images/subtitles/flags/san.png | Bin .../images/subtitles/flags/scc.png | Bin .../images/subtitles/flags/sin.png | Bin .../images/subtitles/flags/slk.png | Bin .../images/subtitles/flags/slo.png | Bin .../images/subtitles/flags/slv.png | Bin .../images/subtitles/flags/sme.png | Bin .../images/subtitles/flags/smo.png | Bin .../images/subtitles/flags/sna.png | Bin .../images/subtitles/flags/snd.png | Bin .../images/subtitles/flags/som.png | Bin .../images/subtitles/flags/sot.png | Bin .../images/subtitles/flags/spa.png | Bin .../images/subtitles/flags/sqi.png | Bin .../images/subtitles/flags/srd.png | Bin .../images/subtitles/flags/srp.png | Bin .../images/subtitles/flags/swe.png | Bin .../images/subtitles/flags/tat.png | Bin .../images/subtitles/flags/tgk.png | Bin .../images/subtitles/flags/tgl.png | Bin .../images/subtitles/flags/tha.png | Bin .../images/subtitles/flags/ton.png | Bin .../images/subtitles/flags/tsn.png | Bin .../images/subtitles/flags/tuk.png | Bin .../images/subtitles/flags/tur.png | Bin .../images/subtitles/flags/twi.png | Bin .../images/subtitles/flags/uig.png | Bin .../images/subtitles/flags/ukr.png | Bin .../images/subtitles/flags/und.png | Bin .../images/subtitles/flags/unknown.png | Bin .../images/subtitles/flags/uzb.png | Bin .../images/subtitles/flags/ven.png | Bin .../images/subtitles/flags/vie.png | Bin .../images/subtitles/flags/zha.png | Bin .../images/subtitles/flags/zho.png | Bin .../images/subtitles/itasa.png | Bin .../images/subtitles/legendastv.png | Bin .../images/subtitles/napiprojekt.png | Bin .../images/subtitles/opensubtitles.png | Bin .../images/subtitles/podnapisi.png | Bin .../images/subtitles/shooter.png | Bin .../images/subtitles/subscene.png | Bin .../images/subtitles/subscenter.png | Bin .../images/subtitles/subswiki.png | Bin .../images/subtitles/subtitlesource.png | Bin .../images/subtitles/subtitulos.png | Bin .../images/subtitles/thesubdb.png | Bin .../images/subtitles/tvsubtitles.png | Bin .../images/subtitles/usub.png | Bin .../images/tablesorter/asc.gif | Bin .../images/tablesorter/bg.gif | Bin .../images/tablesorter/desc.gif | Bin {gui/slick => static}/images/tag.png | Bin {gui/slick => static}/images/tbn-no.gif | Bin {gui/slick => static}/images/tbn.gif | Bin {gui/slick => static}/images/thetvdb16.png | Bin {gui/slick => static}/images/top.gif | Bin {gui/slick => static}/images/tvrage.png | Bin {gui/slick => static}/images/tvrage16.png | Bin {gui/slick => static}/images/warning16.png | Bin {gui/slick => static}/images/xbmc-notify.png | Bin {gui/slick => static}/images/xem.png | Bin {gui/slick => static}/images/yes16.png | Bin {gui/slick => static}/js/add-show-options.js | 0 .../js/add-shows/add-existing-show.js | 0 {gui/slick => static}/js/add-shows/init.js | 0 .../slick => static}/js/add-shows/new-show.js | 0 .../js/add-shows/popular-shows.js | 0 .../js/add-shows/recommended-shows.js | 0 .../js/add-shows/trending-shows.js | 0 .../js/ajax-episode-search.js | 0 .../js/ajax-episode-subtitles.js | 0 .../slick => static}/js/ajax-notifications.js | 0 {gui/slick => static}/js/apibuilder.js | 0 {gui/slick => static}/js/blackwhite.js | 0 {gui/slick => static}/js/browser.js | 0 {gui/slick => static}/js/common/init.js | 0 {gui/slick => static}/js/config-providers.js | 0 .../js/config/backup-restore.js | 0 {gui/slick => static}/js/config/index.js | 0 {gui/slick => static}/js/config/init.js | 0 .../js/config/notifications.js | 0 .../js/config/post-processing.js | 0 {gui/slick => static}/js/config/search.js | 0 {gui/slick => static}/js/config/subtitles.js | 0 {gui/slick => static}/js/core.js | 0 {gui/slick => static}/js/edit-show.js | 0 .../slick => static}/js/errorlogs/viewlogs.js | 0 {gui/slick => static}/js/history/index.js | 0 {gui/slick => static}/js/home/display-show.js | 0 {gui/slick => static}/js/home/edit-show.js | 0 {gui/slick => static}/js/home/index.js | 0 {gui/slick => static}/js/home/post-process.js | 0 {gui/slick => static}/js/home/restart.js | 0 .../js/home/snatch-selection.js | 0 {gui/slick => static}/js/home/status.js | 0 {gui/slick => static}/js/lib/formwizard.js | 0 .../js/lib/jquery.bookmarkscroll.js | 2 +- .../js/lib/jquery.cookiejar.js | 0 .../js/lib/jquery.form.min.js | 0 .../js/lib/jquery.json-2.2.min.js | 0 .../js/lib/jquery.scrolltopcontrol-1.1.js | 0 .../js/lib/jquery.selectboxes.min.js | 0 .../js/manage/backlog-overview.js | 0 .../js/manage/episode-statuses.js | 0 .../js/manage/failed-downloads.js | 0 {gui/slick => static}/js/manage/index.js | 0 {gui/slick => static}/js/manage/init.js | 0 {gui/slick => static}/js/manage/mass-edit.js | 0 .../js/manage/subtitle-missed.js | 0 {gui/slick => static}/js/mass-edit.js | 0 {gui/slick => static}/js/mass-update.js | 0 {gui/slick => static}/js/parsers.js | 0 {gui/slick => static}/js/plot-tooltip.js | 0 {gui/slick => static}/js/quality-chooser.js | 0 {gui/slick => static}/js/rating-tooltip.js | 0 {gui/slick => static}/js/root-dirs.js | 0 .../js/scene-exceptions-tooltip.js | 0 {gui/slick => static}/js/schedule/index.js | 0 {gui/slick => static}/js/test-rename.js | 0 {gui/slick => static}/js/trending-shows.js | 0 {gui/slick => static}/js/vender.min.js | 0 .../views/index.mako => static/scss/core.scss | 0 tests/legacy/media/generic_media_tests.py | 2 +- {gui/slick/views => views}/404.mako | 0 {gui/slick/views => views}/500.mako | 0 {gui/slick/views => views}/IRC.mako | 0 .../slick/views => views}/addRecommended.mako | 0 {gui/slick/views => views}/addShows.mako | 0 .../addShows_addExistingShow.mako | 0 .../views => views}/addShows_newShow.mako | 0 .../views => views}/addShows_recommended.mako | 0 .../addShows_trendingShows.mako | 0 {gui/slick/views => views}/apiBuilder.mako | 0 {gui/slick/views => views}/config.mako | 0 {gui/slick/views => views}/config_anime.mako | 0 .../views => views}/config_backuprestore.mako | 0 .../slick/views => views}/config_general.mako | 0 .../views => views}/config_notifications.mako | 0 .../config_postProcessing.mako | 0 .../views => views}/config_providers.mako | 0 {gui/slick/views => views}/config_search.mako | 0 .../views => views}/config_subtitles.mako | 0 {gui/slick/views => views}/displayShow.mako | 0 {gui/slick/views => views}/editShow.mako | 0 {gui/slick/views => views}/errorlogs.mako | 0 .../slick/views => views}/genericMessage.mako | 0 {gui/slick/views => views}/history.mako | 0 {gui/slick/views => views}/home.mako | 0 .../views => views}/home_massAddTable.mako | 0 .../views => views}/home_postprocess.mako | 0 .../views => views}/inc_addShowOptions.mako | 0 .../views => views}/inc_blackwhitelist.mako | 0 {gui/slick/views => views}/inc_defs.mako | 0 .../views => views}/inc_qualityChooser.mako | 0 {gui/slick/views => views}/inc_rootDirs.mako | 0 views/index.mako | 0 {gui/slick/views => views}/layouts/main.mako | 0 {gui/slick/views => views}/login.mako | 0 {gui/slick/views => views}/manage.mako | 0 .../manage_backlogOverview.mako | 0 .../manage_episodeStatuses.mako | 0 .../manage_failedDownloads.mako | 0 .../manage_manageSearches.mako | 0 .../views => views}/manage_massEdit.mako | 0 .../manage_subtitleMissed.mako | 0 .../views => views}/manage_torrents.mako | 0 {gui/slick/views => views}/markdown.mako | 0 .../views => views}/partials/alerts.mako | 0 .../views => views}/partials/footer.mako | 0 .../views => views}/partials/header.mako | 0 .../views => views}/partials/home/banner.mako | 0 .../views => views}/partials/home/poster.mako | 0 .../views => views}/partials/home/simple.mako | 0 .../views => views}/partials/home/small.mako | 0 .../views => views}/partials/submenu.mako | 0 {gui/slick/views => views}/restart.mako | 0 {gui/slick/views => views}/schedule.mako | 0 .../views => views}/snatchSelection.mako | 0 {gui/slick/views => views}/status.mako | 0 {gui/slick/views => views}/testRename.mako | 0 {gui/slick/views => views}/trendingShows.mako | 0 {gui/slick/views => views}/viewlogs.mako | 0 1424 files changed, 19 insertions(+), 30 deletions(-) rename {gui/slick => static}/css/1ORHCpsQm3Vp6mXoaTYnF5uFdDttMLvmWuJdhhgs.ttf (100%) rename {gui/slick => static}/css/702ZOKiLJc3WVjuplzInF5uFdDttMLvmWuJdhhgs.ttf (100%) rename {gui/slick => static}/css/JXh38I15wypJXxuGMBp0EAVxt0G0biEntp43Qt6E.ttf (100%) rename {gui/slick => static}/css/KeOuBrn4kERxqtaUH3aCWcynf_cDxXwCLxiixG1c.ttf (100%) rename {gui/slick => static}/css/_ySUJH_bn48VBG8sNSonF5uFdDttMLvmWuJdhhgs.ttf (100%) rename {gui/slick => static}/css/bV5DfGHOiMmvb1Xr-honF5uFdDttMLvmWuJdhhgs.ttf (100%) rename {gui/slick => static}/css/browser.css (100%) rename {gui/slick => static}/css/browserconfig.xml (100%) rename {gui/slick => static}/css/core.min.css (100%) rename {gui/slick => static}/css/country-flags.css (100%) rename {gui/slick => static}/css/dark.css (100%) rename {gui/slick => static}/css/iXeptR36kaC0GEAetxi8cqLH4MEiSE0ROcU-qHOA.ttf (100%) rename {gui/slick => static}/css/iXeptR36kaC0GEAetxlDMrAYtoOisqqMDW9M_Mqc.ttf (100%) rename {gui/slick => static}/css/iXeptR36kaC0GEAetxp_TkvowlIOtbR7ePgFOpF4.ttf (100%) rename {gui/slick => static}/css/iXeptR36kaC0GEAetxrfB31yxOzP-czbf6AAKCVo.ttf (100%) rename {gui/slick => static}/css/lib/images/animated-overlay.gif (100%) rename {gui/slick => static}/css/lib/images/tablesorter/asc.gif (100%) rename {gui/slick => static}/css/lib/images/tablesorter/bg.gif (100%) rename {gui/slick => static}/css/lib/images/tablesorter/desc.gif (100%) rename {gui/slick => static}/css/lib/images/ui-bg_fine-grain_10_eceadf_60x60.png (100%) rename {gui/slick => static}/css/lib/images/ui-bg_flat_0_000000_40x100.png (100%) rename {gui/slick => static}/css/lib/images/ui-bg_flat_0_606060_40x100.png (100%) rename {gui/slick => static}/css/lib/images/ui-bg_flat_0_999999_40x100.png (100%) rename {gui/slick => static}/css/lib/images/ui-bg_flat_0_aaaaaa_40x100.png (100%) rename {gui/slick => static}/css/lib/images/ui-bg_flat_0_ffffff_40x100.png (100%) rename {gui/slick => static}/css/lib/images/ui-bg_flat_75_ffffff_40x100.png (100%) rename {gui/slick => static}/css/lib/images/ui-bg_glass_55_fbf9ee_1x400.png (100%) rename {gui/slick => static}/css/lib/images/ui-bg_glass_65_ffffff_1x400.png (100%) rename {gui/slick => static}/css/lib/images/ui-bg_glass_75_dadada_1x400.png (100%) rename {gui/slick => static}/css/lib/images/ui-bg_glass_75_e6e6e6_1x400.png (100%) rename {gui/slick => static}/css/lib/images/ui-bg_glass_95_fef1ec_1x400.png (100%) rename {gui/slick => static}/css/lib/images/ui-bg_highlight-soft_75_cccccc_1x100.png (100%) rename {gui/slick => static}/css/lib/images/ui-bg_highlight-soft_75_dcdcdc_1x100.png (100%) rename {gui/slick => static}/css/lib/images/ui-bg_highlight-soft_75_dddddd_1x100.png (100%) rename {gui/slick => static}/css/lib/images/ui-bg_highlight-soft_75_efefef_1x100.png (100%) rename {gui/slick => static}/css/lib/images/ui-bg_inset-soft_75_dfdfdf_1x100.png (100%) rename {gui/slick => static}/css/lib/images/ui-icons_09a2ff_256x240.png (100%) rename {gui/slick => static}/css/lib/images/ui-icons_222222_256x240.png (100%) rename {gui/slick => static}/css/lib/images/ui-icons_2e83ff_256x240.png (100%) rename {gui/slick => static}/css/lib/images/ui-icons_454545_256x240.png (100%) rename {gui/slick => static}/css/lib/images/ui-icons_888888_256x240.png (100%) rename {gui/slick => static}/css/lib/images/ui-icons_8c291d_256x240.png (100%) rename {gui/slick => static}/css/lib/images/ui-icons_cd0a0a_256x240.png (100%) rename {gui/slick => static}/css/lib/images/ui-icons_ffffff_256x240.png (100%) rename {gui/slick => static}/css/lib/jquery-ui-1.10.4.custom.min.css (100%) rename {gui/slick => static}/css/lib/jquery.qtip-2.2.1.min.css (100%) rename {gui/slick => static}/css/light.css (100%) rename {gui/slick => static}/css/print.css (100%) rename {gui/slick => static}/css/style.css (100%) rename {gui/slick => static}/css/vender.min.css (100%) rename {gui/slick => static}/fonts/glyphicons-halflings-regular.eot (100%) rename {gui/slick => static}/fonts/glyphicons-halflings-regular.svg (100%) rename {gui/slick => static}/fonts/glyphicons-halflings-regular.ttf (100%) rename {gui/slick => static}/fonts/glyphicons-halflings-regular.woff (100%) rename {gui/slick => static}/fonts/glyphicons-halflings-regular.woff2 (100%) rename {gui/slick => static}/images/16x_sprite_colored_help-info.png (100%) rename {gui/slick => static}/images/32x_sprite_colored_add_lists.png (100%) rename {gui/slick => static}/images/32x_sprite_colored_clients.png (100%) rename {gui/slick => static}/images/32x_sprite_colored_notifiers.png (100%) rename {gui/slick => static}/images/anidb_inline_refl.png (100%) rename {gui/slick => static}/images/arrows.png (100%) rename {gui/slick => static}/images/banner.png (100%) rename {gui/slick => static}/images/bg.gif (100%) rename {gui/slick => static}/images/blank.png (100%) rename {gui/slick => static}/images/bootstrap-formhelpers/bootstrap-formhelpers-countries.flags-LICENSE.txt (100%) rename {gui/slick => static}/images/bootstrap-formhelpers/bootstrap-formhelpers-countries.flags.png (100%) rename {gui/slick => static}/images/bootstrap-formhelpers/bootstrap-formhelpers-currencies.flags.png (100%) rename {gui/slick => static}/images/bootstrap-formhelpers/bootstrap-formhelpers-googlefonts.png (100%) rename {gui/slick => static}/images/cancel32.png (100%) rename {gui/slick => static}/images/changelog16.png (100%) rename {gui/slick => static}/images/closed_captioning.png (100%) rename {gui/slick => static}/images/country-flags.png (100%) rename {gui/slick => static}/images/download.png (100%) rename {gui/slick => static}/images/fanart.tv.png (100%) rename {gui/slick => static}/images/flags/ad.png (100%) rename {gui/slick => static}/images/flags/ag.png (100%) rename {gui/slick => static}/images/flags/ai.png (100%) rename {gui/slick => static}/images/flags/al.png (100%) rename {gui/slick => static}/images/flags/ao.png (100%) rename {gui/slick => static}/images/flags/at.png (100%) rename {gui/slick => static}/images/flags/au.png (100%) rename {gui/slick => static}/images/flags/aw.png (100%) rename {gui/slick => static}/images/flags/ax.png (100%) rename {gui/slick => static}/images/flags/bb.png (100%) rename {gui/slick => static}/images/flags/bd.png (100%) rename {gui/slick => static}/images/flags/bf.png (100%) rename {gui/slick => static}/images/flags/bh.png (100%) rename {gui/slick => static}/images/flags/bj.png (100%) rename {gui/slick => static}/images/flags/bt.png (100%) rename {gui/slick => static}/images/flags/bv.png (100%) rename {gui/slick => static}/images/flags/bw.png (100%) rename {gui/slick => static}/images/flags/by.png (100%) rename {gui/slick => static}/images/flags/bz.png (100%) rename {gui/slick => static}/images/flags/cc.png (100%) rename {gui/slick => static}/images/flags/cd.png (100%) rename {gui/slick => static}/images/flags/cf.png (100%) rename {gui/slick => static}/images/flags/cg.png (100%) rename {gui/slick => static}/images/flags/ci.png (100%) rename {gui/slick => static}/images/flags/ck.png (100%) rename {gui/slick => static}/images/flags/cl.png (100%) rename {gui/slick => static}/images/flags/cm.png (100%) rename {gui/slick => static}/images/flags/cn.png (100%) rename {gui/slick => static}/images/flags/cx.png (100%) rename {gui/slick => static}/images/flags/cz.png (100%) rename {gui/slick => static}/images/flags/dj.png (100%) rename {gui/slick => static}/images/flags/dk.png (100%) rename {gui/slick => static}/images/flags/dm.png (100%) rename {gui/slick => static}/images/flags/do.png (100%) rename {gui/slick => static}/images/flags/ec.png (100%) rename {gui/slick => static}/images/flags/eg.png (100%) rename {gui/slick => static}/images/flags/eh.png (100%) rename {gui/slick => static}/images/flags/er.png (100%) rename {gui/slick => static}/images/flags/fk.png (100%) rename {gui/slick => static}/images/flags/fm.png (100%) rename {gui/slick => static}/images/flags/gb.png (100%) rename {gui/slick => static}/images/flags/ge.png (100%) rename {gui/slick => static}/images/flags/gf.png (100%) rename {gui/slick => static}/images/flags/gh.png (100%) rename {gui/slick => static}/images/flags/gi.png (100%) rename {gui/slick => static}/images/flags/gm.png (100%) rename {gui/slick => static}/images/flags/gp.png (100%) rename {gui/slick => static}/images/flags/gq.png (100%) rename {gui/slick => static}/images/flags/gr.png (100%) rename {gui/slick => static}/images/flags/gs.png (100%) rename {gui/slick => static}/images/flags/gt.png (100%) rename {gui/slick => static}/images/flags/gw.png (100%) rename {gui/slick => static}/images/flags/gy.png (100%) rename {gui/slick => static}/images/flags/hk.png (100%) rename {gui/slick => static}/images/flags/hm.png (100%) rename {gui/slick => static}/images/flags/hn.png (100%) rename {gui/slick => static}/images/flags/il.png (100%) rename {gui/slick => static}/images/flags/in.png (100%) rename {gui/slick => static}/images/flags/iq.png (100%) rename {gui/slick => static}/images/flags/ir.png (100%) rename {gui/slick => static}/images/flags/jm.png (100%) rename {gui/slick => static}/images/flags/jo.png (100%) rename {gui/slick => static}/images/flags/jp.png (100%) rename {gui/slick => static}/images/flags/ke.png (100%) rename {gui/slick => static}/images/flags/kh.png (100%) rename {gui/slick => static}/images/flags/kp.png (100%) rename {gui/slick => static}/images/flags/kz.png (100%) rename {gui/slick => static}/images/flags/lc.png (100%) rename {gui/slick => static}/images/flags/lk.png (100%) rename {gui/slick => static}/images/flags/lr.png (100%) rename {gui/slick => static}/images/flags/ls.png (100%) rename {gui/slick => static}/images/flags/ly.png (100%) rename {gui/slick => static}/images/flags/ma.png (100%) rename {gui/slick => static}/images/flags/mc.png (100%) rename {gui/slick => static}/images/flags/md.png (100%) rename {gui/slick => static}/images/flags/me.png (100%) rename {gui/slick => static}/images/flags/mm.png (100%) rename {gui/slick => static}/images/flags/mo.png (100%) rename {gui/slick => static}/images/flags/mp.png (100%) rename {gui/slick => static}/images/flags/mq.png (100%) rename {gui/slick => static}/images/flags/mu.png (100%) rename {gui/slick => static}/images/flags/mv.png (100%) rename {gui/slick => static}/images/flags/mw.png (100%) rename {gui/slick => static}/images/flags/mx.png (100%) rename {gui/slick => static}/images/flags/mz.png (100%) rename {gui/slick => static}/images/flags/nc.png (100%) rename {gui/slick => static}/images/flags/nf.png (100%) rename {gui/slick => static}/images/flags/ni.png (100%) rename {gui/slick => static}/images/flags/np.png (100%) rename {gui/slick => static}/images/flags/nu.png (100%) rename {gui/slick => static}/images/flags/nz.png (100%) rename {gui/slick => static}/images/flags/pb.png (100%) rename {gui/slick => static}/images/flags/pe.png (100%) rename {gui/slick => static}/images/flags/pf.png (100%) rename {gui/slick => static}/images/flags/pg.png (100%) rename {gui/slick => static}/images/flags/ph.png (100%) rename {gui/slick => static}/images/flags/pk.png (100%) rename {gui/slick => static}/images/flags/pm.png (100%) rename {gui/slick => static}/images/flags/pn.png (100%) rename {gui/slick => static}/images/flags/pr.png (100%) rename {gui/slick => static}/images/flags/pt-BR.png (100%) rename {gui/slick => static}/images/flags/pw.png (100%) rename {gui/slick => static}/images/flags/py.png (100%) rename {gui/slick => static}/images/flags/qa.png (100%) rename {gui/slick => static}/images/flags/re.png (100%) rename {gui/slick => static}/images/flags/rs.png (100%) rename {gui/slick => static}/images/flags/sb.png (100%) rename {gui/slick => static}/images/flags/sh.png (100%) rename {gui/slick => static}/images/flags/sj.png (100%) rename {gui/slick => static}/images/flags/sy.png (100%) rename {gui/slick => static}/images/flags/sz.png (100%) rename {gui/slick => static}/images/flags/tc.png (100%) rename {gui/slick => static}/images/flags/td.png (100%) rename {gui/slick => static}/images/flags/tf.png (100%) rename {gui/slick => static}/images/flags/tj.png (100%) rename {gui/slick => static}/images/flags/tm.png (100%) rename {gui/slick => static}/images/flags/tv.png (100%) rename {gui/slick => static}/images/flags/tz.png (100%) rename {gui/slick => static}/images/flags/ua.png (100%) rename {gui/slick => static}/images/flags/um.png (100%) rename {gui/slick => static}/images/flags/un.png (100%) rename {gui/slick => static}/images/flags/unknown.png (100%) rename {gui/slick => static}/images/flags/us.png (100%) rename {gui/slick => static}/images/flags/uy.png (100%) rename {gui/slick => static}/images/flags/va.png (100%) rename {gui/slick => static}/images/flags/vc.png (100%) rename {gui/slick => static}/images/flags/vg.png (100%) rename {gui/slick => static}/images/flags/vn.png (100%) rename {gui/slick => static}/images/flags/vu.png (100%) rename {gui/slick => static}/images/flags/wf.png (100%) rename {gui/slick => static}/images/flags/ws.png (100%) rename {gui/slick => static}/images/flags/ye.png (100%) rename {gui/slick => static}/images/flags/yt.png (100%) rename {gui/slick => static}/images/flags/za.png (100%) rename {gui/slick => static}/images/flags/zm.png (100%) rename {gui/slick => static}/images/flags/zw.png (100%) rename {gui/slick => static}/images/glyphicons-config-black.png (100%) rename {gui/slick => static}/images/glyphicons-config-white.png (100%) rename {gui/slick => static}/images/glyphicons-halflings-white.png (100%) rename {gui/slick => static}/images/glyphicons-halflings.png (100%) rename {gui/slick => static}/images/green-check.png (100%) rename {gui/slick => static}/images/heart.png (100%) rename {gui/slick => static}/images/ico/favicon-114.png (100%) rename {gui/slick => static}/images/ico/favicon-120.png (100%) rename {gui/slick => static}/images/ico/favicon-144.png (100%) rename {gui/slick => static}/images/ico/favicon-150.png (100%) rename {gui/slick => static}/images/ico/favicon-152.png (100%) rename {gui/slick => static}/images/ico/favicon-16.png (100%) rename {gui/slick => static}/images/ico/favicon-160.png (100%) rename {gui/slick => static}/images/ico/favicon-196.png (100%) rename {gui/slick => static}/images/ico/favicon-310.png (100%) rename {gui/slick => static}/images/ico/favicon-32.png (100%) rename {gui/slick => static}/images/ico/favicon-57.png (100%) rename {gui/slick => static}/images/ico/favicon-64.png (100%) rename {gui/slick => static}/images/ico/favicon-70.png (100%) rename {gui/slick => static}/images/ico/favicon-72.png (100%) rename {gui/slick => static}/images/ico/favicon-76.png (100%) rename {gui/slick => static}/images/ico/favicon-96.png (100%) rename {gui/slick => static}/images/ico/favicon.ico (100%) rename {gui/slick => static}/images/imdb.png (100%) rename {gui/slick => static}/images/info32.png (100%) rename {gui/slick => static}/images/legend16.png (100%) rename {gui/slick => static}/images/loading.gif (100%) rename {gui/slick => static}/images/loading16-dark.gif (100%) rename {gui/slick => static}/images/loading16-light.gif (100%) rename {gui/slick => static}/images/loading16.gif (100%) rename {gui/slick => static}/images/loading16_333333.gif (100%) rename {gui/slick => static}/images/loading16_dddddd.gif (100%) rename {gui/slick => static}/images/loading32-dark.gif (100%) rename {gui/slick => static}/images/loading32.gif (100%) rename {gui/slick => static}/images/manualsearch-white.png (100%) rename {gui/slick => static}/images/manualsearch.png (100%) rename {gui/slick => static}/images/medusa-snake-mascot.png (100%) rename {gui/slick => static}/images/medusa.png (100%) rename {gui/slick => static}/images/menu/16x_sprite_colored_menu_icons.png (100%) rename {gui/slick => static}/images/menu/menu-icons-black.png (100%) rename {gui/slick => static}/images/menu/menu-icons-white.png (100%) rename {gui/slick => static}/images/menu/system18-2.png (100%) rename {gui/slick => static}/images/menu/system18.png (100%) rename {gui/slick => static}/images/minus.png (100%) rename {gui/slick => static}/images/network/+globosat.png (100%) rename {gui/slick => static}/images/network/13th street.png (100%) rename {gui/slick => static}/images/network/1live.png (100%) rename {gui/slick => static}/images/network/2be.png (100%) rename {gui/slick => static}/images/network/33.png (100%) rename {gui/slick => static}/images/network/3fm.png (100%) rename {gui/slick => static}/images/network/3sat hd.png (100%) rename {gui/slick => static}/images/network/3sat.png (100%) rename {gui/slick => static}/images/network/4kidstv.png (100%) rename {gui/slick => static}/images/network/4sd.png (100%) rename {gui/slick => static}/images/network/7mate.png (100%) rename {gui/slick => static}/images/network/a&e.png (100%) rename {gui/slick => static}/images/network/aag tv.png (100%) rename {gui/slick => static}/images/network/aaj tv.png (100%) rename {gui/slick => static}/images/network/aande.png (100%) rename {gui/slick => static}/images/network/abc (au).png (100%) rename {gui/slick => static}/images/network/abc (australia).png (100%) rename {gui/slick => static}/images/network/abc (ja).png (100%) rename {gui/slick => static}/images/network/abc (ph).png (100%) rename {gui/slick => static}/images/network/abc (us).png (100%) rename {gui/slick => static}/images/network/abc australia.png (100%) rename {gui/slick => static}/images/network/abc family.png (100%) rename {gui/slick => static}/images/network/abc news 24.png (100%) rename {gui/slick => static}/images/network/abc news.png (100%) rename {gui/slick => static}/images/network/abc tv australia.png (100%) rename {gui/slick => static}/images/network/abc tv.png (100%) rename {gui/slick => static}/images/network/abc.png (100%) rename {gui/slick => static}/images/network/abc1.png (100%) rename {gui/slick => static}/images/network/abc2.png (100%) rename {gui/slick => static}/images/network/abc3.png (100%) rename {gui/slick => static}/images/network/abu dhabi tv.png (100%) rename {gui/slick => static}/images/network/addiktv.png (100%) rename {gui/slick => static}/images/network/adult swim.png (100%) rename {gui/slick => static}/images/network/adult-swim.png (100%) rename {gui/slick => static}/images/network/adultswim.png (100%) rename {gui/slick => static}/images/network/ahc.png (100%) rename {gui/slick => static}/images/network/al jazeera america.png (100%) rename {gui/slick => static}/images/network/al jazeera.png (100%) rename {gui/slick => static}/images/network/allocine.png (100%) rename {gui/slick => static}/images/network/alpha tv.png (100%) rename {gui/slick => static}/images/network/amazon prime instant video.png (100%) rename {gui/slick => static}/images/network/amazon.png (100%) rename {gui/slick => static}/images/network/amc.png (100%) rename {gui/slick => static}/images/network/america one television network.png (100%) rename {gui/slick => static}/images/network/america one.png (100%) rename {gui/slick => static}/images/network/american heroes channel.png (100%) rename {gui/slick => static}/images/network/animal planet.png (100%) rename {gui/slick => static}/images/network/animalplanet.png (100%) rename {gui/slick => static}/images/network/animax.png (100%) rename {gui/slick => static}/images/network/anime network.png (100%) rename {gui/slick => static}/images/network/anixe hd.png (100%) rename {gui/slick => static}/images/network/anixe sd.png (100%) rename {gui/slick => static}/images/network/antena 3.png (100%) rename {gui/slick => static}/images/network/aol.png (100%) rename {gui/slick => static}/images/network/ard.png (100%) rename {gui/slick => static}/images/network/arena.png (100%) rename {gui/slick => static}/images/network/arte hd.png (100%) rename {gui/slick => static}/images/network/arte.png (100%) rename {gui/slick => static}/images/network/artv.png (100%) rename {gui/slick => static}/images/network/at-x.png (100%) rename {gui/slick => static}/images/network/at5.png (100%) rename {gui/slick => static}/images/network/atv.png (100%) rename {gui/slick => static}/images/network/audience network.png (100%) rename {gui/slick => static}/images/network/avro.png (100%) rename {gui/slick => static}/images/network/avrotros.png (100%) rename {gui/slick => static}/images/network/axn.png (100%) rename {gui/slick => static}/images/network/axs tv.png (100%) rename {gui/slick => static}/images/network/azteca.png (100%) rename {gui/slick => static}/images/network/babyfirsttv.png (100%) rename {gui/slick => static}/images/network/bandai channel.png (100%) rename {gui/slick => static}/images/network/bandai visual.png (100%) rename {gui/slick => static}/images/network/bandai.png (100%) rename {gui/slick => static}/images/network/bbc america.png (100%) rename {gui/slick => static}/images/network/bbc canada.png (100%) rename {gui/slick => static}/images/network/bbc entertainment.png (100%) rename {gui/slick => static}/images/network/bbc four.png (100%) rename {gui/slick => static}/images/network/bbc hd.png (100%) rename {gui/slick => static}/images/network/bbc one.png (100%) rename {gui/slick => static}/images/network/bbc prime.png (100%) rename {gui/slick => static}/images/network/bbc three.png (100%) rename {gui/slick => static}/images/network/bbc two.png (100%) rename {gui/slick => static}/images/network/bbc.png (100%) rename {gui/slick => static}/images/network/bet.png (100%) rename {gui/slick => static}/images/network/bio..png (100%) rename {gui/slick => static}/images/network/bio.png (100%) rename {gui/slick => static}/images/network/biography channel.png (100%) rename {gui/slick => static}/images/network/blip.png (100%) rename {gui/slick => static}/images/network/bloomberg.png (100%) rename {gui/slick => static}/images/network/bnn (nl).png (100%) rename {gui/slick => static}/images/network/bnn.png (100%) rename {gui/slick => static}/images/network/bounce tv.png (100%) rename {gui/slick => static}/images/network/br alpha.png (100%) rename {gui/slick => static}/images/network/br-alpha.png (100%) rename {gui/slick => static}/images/network/br.png (100%) rename {gui/slick => static}/images/network/bravo (ca).png (100%) rename {gui/slick => static}/images/network/bravo (uk).png (100%) rename {gui/slick => static}/images/network/bravo (us).png (100%) rename {gui/slick => static}/images/network/bravo.png (100%) rename {gui/slick => static}/images/network/bs11.png (100%) rename {gui/slick => static}/images/network/btv.png (100%) rename {gui/slick => static}/images/network/byu television.png (100%) rename {gui/slick => static}/images/network/c-span.png (100%) rename {gui/slick => static}/images/network/canal d.png (100%) rename {gui/slick => static}/images/network/canal off.png (100%) rename {gui/slick => static}/images/network/canal+.png (100%) rename {gui/slick => static}/images/network/canale 5.png (100%) rename {gui/slick => static}/images/network/canvas.png (100%) rename {gui/slick => static}/images/network/canvas/ketnet.png (100%) rename {gui/slick => static}/images/network/caracol tv.png (100%) rename {gui/slick => static}/images/network/carlton television.png (100%) rename {gui/slick => static}/images/network/cartoon network australia.png (100%) rename {gui/slick => static}/images/network/cartoon network.png (100%) rename {gui/slick => static}/images/network/cartoonnetwork.png (100%) rename {gui/slick => static}/images/network/cbbc.png (100%) rename {gui/slick => static}/images/network/cbc (ca).png (100%) rename {gui/slick => static}/images/network/cbc (jp).png (100%) rename {gui/slick => static}/images/network/cbc.png (100%) rename {gui/slick => static}/images/network/cbeebies.png (100%) rename {gui/slick => static}/images/network/cbs.png (100%) rename {gui/slick => static}/images/network/cctv.png (100%) rename {gui/slick => static}/images/network/centric.png (100%) rename {gui/slick => static}/images/network/challenge.png (100%) rename {gui/slick => static}/images/network/channel 101.jpg (100%) rename {gui/slick => static}/images/network/channel 4.png (100%) rename {gui/slick => static}/images/network/channel 5.png (100%) rename {gui/slick => static}/images/network/channel ten.png (100%) rename {gui/slick => static}/images/network/chiba tv.png (100%) rename {gui/slick => static}/images/network/cinemax.png (100%) rename {gui/slick => static}/images/network/city.png (100%) rename {gui/slick => static}/images/network/classic arts showcase.png (100%) rename {gui/slick => static}/images/network/club rtl.png (100%) rename {gui/slick => static}/images/network/cmt.png (100%) rename {gui/slick => static}/images/network/cnbc.png (100%) rename {gui/slick => static}/images/network/cnn.png (100%) rename {gui/slick => static}/images/network/cnni.png (100%) rename {gui/slick => static}/images/network/colors.png (100%) rename {gui/slick => static}/images/network/comedy central (uk).png (100%) rename {gui/slick => static}/images/network/comedy central (us).png (100%) rename {gui/slick => static}/images/network/comedy central family.png (100%) rename {gui/slick => static}/images/network/comedy central hd.png (100%) rename {gui/slick => static}/images/network/comedy central.png (100%) rename {gui/slick => static}/images/network/comedycentral.png (100%) rename {gui/slick => static}/images/network/cooking channel.png (100%) rename {gui/slick => static}/images/network/cottage life.png (100%) rename {gui/slick => static}/images/network/court tv.png (100%) rename {gui/slick => static}/images/network/crackle.png (100%) rename {gui/slick => static}/images/network/crime & investigation network.png (100%) rename {gui/slick => static}/images/network/crime and investigation network.png (100%) rename {gui/slick => static}/images/network/cstv.png (100%) rename {gui/slick => static}/images/network/ctc.png (100%) rename {gui/slick => static}/images/network/ctv.png (100%) rename {gui/slick => static}/images/network/cuatro.png (100%) rename {gui/slick => static}/images/network/current tv.png (100%) rename {gui/slick => static}/images/network/cw seed.png (100%) rename {gui/slick => static}/images/network/cw.png (100%) rename {gui/slick => static}/images/network/d8.png (100%) rename {gui/slick => static}/images/network/dailymotion.jpg (100%) rename {gui/slick => static}/images/network/das erste hd.png (100%) rename {gui/slick => static}/images/network/das erste.png (100%) rename {gui/slick => static}/images/network/das vierte.png (100%) rename {gui/slick => static}/images/network/dave.png (100%) rename {gui/slick => static}/images/network/deluxe music.png (100%) rename {gui/slick => static}/images/network/destination america.png (100%) rename {gui/slick => static}/images/network/discovery channel (asia).png (100%) rename {gui/slick => static}/images/network/discovery channel (australia).png (100%) rename {gui/slick => static}/images/network/discovery channel.png (100%) rename {gui/slick => static}/images/network/discovery family.png (100%) rename {gui/slick => static}/images/network/discovery kids.png (100%) rename {gui/slick => static}/images/network/discovery real time.png (100%) rename {gui/slick => static}/images/network/discovery science.png (100%) rename {gui/slick => static}/images/network/discovery turbo uk.png (100%) rename {gui/slick => static}/images/network/discovery turbo.png (100%) rename {gui/slick => static}/images/network/discovery.png (100%) rename {gui/slick => static}/images/network/discoverychannel.png (100%) rename {gui/slick => static}/images/network/dish tv.png (100%) rename {gui/slick => static}/images/network/disney channel (germany).png (100%) rename {gui/slick => static}/images/network/disney channel (us).png (100%) rename {gui/slick => static}/images/network/disney channel.png (100%) rename {gui/slick => static}/images/network/disney cinemagic.png (100%) rename {gui/slick => static}/images/network/disney junior (uk).png (100%) rename {gui/slick => static}/images/network/disney junior.png (100%) rename {gui/slick => static}/images/network/disney xd.png (100%) rename {gui/slick => static}/images/network/disney.png (100%) rename {gui/slick => static}/images/network/disneychannel.png (100%) rename {gui/slick => static}/images/network/diy network canada.png (100%) rename {gui/slick => static}/images/network/diy network.png (100%) rename {gui/slick => static}/images/network/dmax (de).png (100%) rename {gui/slick => static}/images/network/dmax hd.png (100%) rename {gui/slick => static}/images/network/dmax.png (100%) rename {gui/slick => static}/images/network/dr1.png (100%) rename {gui/slick => static}/images/network/dr2.png (100%) rename {gui/slick => static}/images/network/dumont television network.png (100%) rename {gui/slick => static}/images/network/e! (ca).png (100%) rename {gui/slick => static}/images/network/e!.png (100%) rename {gui/slick => static}/images/network/e4.png (100%) rename {gui/slick => static}/images/network/eden.png (100%) rename {gui/slick => static}/images/network/een.png (100%) rename {gui/slick => static}/images/network/einsfestival hd.png (100%) rename {gui/slick => static}/images/network/einsfestival.png (100%) rename {gui/slick => static}/images/network/einslive.png (100%) rename {gui/slick => static}/images/network/einsplus.png (100%) rename {gui/slick => static}/images/network/el rey network.png (100%) rename {gui/slick => static}/images/network/endemol.png (100%) rename {gui/slick => static}/images/network/entertainment.png (100%) rename {gui/slick => static}/images/network/eo.png (100%) rename {gui/slick => static}/images/network/espn 2.png (100%) rename {gui/slick => static}/images/network/espn classic.png (100%) rename {gui/slick => static}/images/network/espn.png (100%) rename {gui/slick => static}/images/network/esquire network.png (100%) rename {gui/slick => static}/images/network/euronews.png (100%) rename {gui/slick => static}/images/network/eurosport 1.png (100%) rename {gui/slick => static}/images/network/eurosport 2.png (100%) rename {gui/slick => static}/images/network/eurosport hd.png (100%) rename {gui/slick => static}/images/network/eurosport.png (100%) rename {gui/slick => static}/images/network/explora.png (100%) rename {gui/slick => static}/images/network/five.png (100%) rename {gui/slick => static}/images/network/food network canada.png (100%) rename {gui/slick => static}/images/network/food network.png (100%) rename {gui/slick => static}/images/network/fox (fi).png (100%) rename {gui/slick => static}/images/network/fox (it).png (100%) rename {gui/slick => static}/images/network/fox (uk).png (100%) rename {gui/slick => static}/images/network/fox (us).png (100%) rename {gui/slick => static}/images/network/fox business.png (100%) rename {gui/slick => static}/images/network/fox channel.png (100%) rename {gui/slick => static}/images/network/fox crime.png (100%) rename {gui/slick => static}/images/network/fox sports 1.png (100%) rename {gui/slick => static}/images/network/fox sports.png (100%) rename {gui/slick => static}/images/network/fox television classics.png (100%) rename {gui/slick => static}/images/network/fox.png (100%) rename {gui/slick => static}/images/network/france 2.png (100%) rename {gui/slick => static}/images/network/france 3.png (100%) rename {gui/slick => static}/images/network/france 4.png (100%) rename {gui/slick => static}/images/network/freeform.png (100%) rename {gui/slick => static}/images/network/fuji television.png (100%) rename {gui/slick => static}/images/network/fuji tv.png (100%) rename {gui/slick => static}/images/network/funimation channel.png (100%) rename {gui/slick => static}/images/network/funimation.png (100%) rename {gui/slick => static}/images/network/fuse.png (100%) rename {gui/slick => static}/images/network/fx (us).png (100%) rename {gui/slick => static}/images/network/fx.png (100%) rename {gui/slick => static}/images/network/fxnetworks.png (100%) rename {gui/slick => static}/images/network/fxx.png (100%) rename {gui/slick => static}/images/network/fyi.png (100%) rename {gui/slick => static}/images/network/g4 canada.png (100%) rename {gui/slick => static}/images/network/g4.png (100%) rename {gui/slick => static}/images/network/g4_2.png (100%) rename {gui/slick => static}/images/network/g4techtv canada.png (100%) rename {gui/slick => static}/images/network/game show network.png (100%) rename {gui/slick => static}/images/network/glitz.png (100%) rename {gui/slick => static}/images/network/global tv.png (100%) rename {gui/slick => static}/images/network/global.png (100%) rename {gui/slick => static}/images/network/gnt.png (100%) rename {gui/slick => static}/images/network/great american country.png (100%) rename {gui/slick => static}/images/network/h2.png (100%) rename {gui/slick => static}/images/network/hallmark channel.png (100%) rename {gui/slick => static}/images/network/hbo canada.png (100%) rename {gui/slick => static}/images/network/hbo europe.png (100%) rename {gui/slick => static}/images/network/hbo latin america.png (100%) rename {gui/slick => static}/images/network/hbo nordic.png (100%) rename {gui/slick => static}/images/network/hbo.png (100%) rename {gui/slick => static}/images/network/hdnet.png (100%) rename {gui/slick => static}/images/network/heimatkanal.png (100%) rename {gui/slick => static}/images/network/hgtv canada.png (100%) rename {gui/slick => static}/images/network/hgtv.png (100%) rename {gui/slick => static}/images/network/historia.png (100%) rename {gui/slick => static}/images/network/history (ca).png (100%) rename {gui/slick => static}/images/network/history television.png (100%) rename {gui/slick => static}/images/network/history.png (100%) rename {gui/slick => static}/images/network/historychannel.png (100%) rename {gui/slick => static}/images/network/hr.png (100%) rename {gui/slick => static}/images/network/hulu presents.png (100%) rename {gui/slick => static}/images/network/hulu.png (100%) rename {gui/slick => static}/images/network/ifc.png (100%) rename {gui/slick => static}/images/network/ikon.png (100%) rename {gui/slick => static}/images/network/im1.png (100%) rename {gui/slick => static}/images/network/internet.png (100%) rename {gui/slick => static}/images/network/investigation discovery.png (100%) rename {gui/slick => static}/images/network/ion television.png (100%) rename {gui/slick => static}/images/network/itv granada.png (100%) rename {gui/slick => static}/images/network/itv.png (100%) rename {gui/slick => static}/images/network/itv1.png (100%) rename {gui/slick => static}/images/network/itv2.png (100%) rename {gui/slick => static}/images/network/itv3.png (100%) rename {gui/slick => static}/images/network/itv4.png (100%) rename {gui/slick => static}/images/network/joiz.png (100%) rename {gui/slick => static}/images/network/junior.png (100%) rename {gui/slick => static}/images/network/kabel eins classics.png (100%) rename {gui/slick => static}/images/network/kabel eins hd.png (100%) rename {gui/slick => static}/images/network/kabel eins.png (100%) rename {gui/slick => static}/images/network/kanaaltwee.png (100%) rename {gui/slick => static}/images/network/kanal 5.png (100%) rename {gui/slick => static}/images/network/kanal5.png (100%) rename {gui/slick => static}/images/network/kbs tv2.png (100%) rename {gui/slick => static}/images/network/ketnet.png (100%) rename {gui/slick => static}/images/network/kids station.png (100%) rename {gui/slick => static}/images/network/kika hd.png (100%) rename {gui/slick => static}/images/network/kika.png (100%) rename {gui/slick => static}/images/network/kro.png (100%) rename {gui/slick => static}/images/network/kyoto broadcasting system.png (100%) rename {gui/slick => static}/images/network/la deux.png (100%) rename {gui/slick => static}/images/network/la trois.png (100%) rename {gui/slick => static}/images/network/la une.png (100%) rename {gui/slick => static}/images/network/la1.png (100%) rename {gui/slick => static}/images/network/la2.png (100%) rename {gui/slick => static}/images/network/lasexta.png (100%) rename {gui/slick => static}/images/network/lifestyle.png (100%) rename {gui/slick => static}/images/network/lifetime uk.png (100%) rename {gui/slick => static}/images/network/lifetime.png (100%) rename {gui/slick => static}/images/network/lmn.png (100%) rename {gui/slick => static}/images/network/logo.png (100%) rename {gui/slick => static}/images/network/london weekend television (lwt).png (100%) rename {gui/slick => static}/images/network/london weekend television.png (100%) rename {gui/slick => static}/images/network/m6.png (100%) rename {gui/slick => static}/images/network/manhattan neighborhood network.png (100%) rename {gui/slick => static}/images/network/matv.png (100%) rename {gui/slick => static}/images/network/max.png (100%) rename {gui/slick => static}/images/network/mbs.png (100%) rename {gui/slick => static}/images/network/mdr.png (100%) rename {gui/slick => static}/images/network/mgm.png (100%) rename {gui/slick => static}/images/network/military channel.png (100%) rename {gui/slick => static}/images/network/more4.png (100%) rename {gui/slick => static}/images/network/motorvision tv.png (100%) rename {gui/slick => static}/images/network/motorvision.png (100%) rename {gui/slick => static}/images/network/movie network.png (100%) rename {gui/slick => static}/images/network/mtv (uk).png (100%) rename {gui/slick => static}/images/network/mtv (us).png (100%) rename {gui/slick => static}/images/network/mtv brazil.png (100%) rename {gui/slick => static}/images/network/mtv network.png (100%) rename {gui/slick => static}/images/network/mtv.png (100%) rename {gui/slick => static}/images/network/mtv2.png (100%) rename {gui/slick => static}/images/network/multishow.png (100%) rename {gui/slick => static}/images/network/musiqueplus.png (100%) rename {gui/slick => static}/images/network/n tv.png (100%) rename {gui/slick => static}/images/network/n24 hd.png (100%) rename {gui/slick => static}/images/network/n24.png (100%) rename {gui/slick => static}/images/network/nat geo wild.png (100%) rename {gui/slick => static}/images/network/nat geo.png (100%) rename {gui/slick => static}/images/network/national geographic (uk).png (100%) rename {gui/slick => static}/images/network/national geographic (us).png (100%) rename {gui/slick => static}/images/network/national geographic channel.png (100%) rename {gui/slick => static}/images/network/national geographic.png (100%) rename {gui/slick => static}/images/network/nbc.png (100%) rename {gui/slick => static}/images/network/nbcsn.png (100%) rename {gui/slick => static}/images/network/nbcu tv.png (100%) rename {gui/slick => static}/images/network/ncrv.png (100%) rename {gui/slick => static}/images/network/ndr hd.png (100%) rename {gui/slick => static}/images/network/ndr.png (100%) rename {gui/slick => static}/images/network/nederland 1.png (100%) rename {gui/slick => static}/images/network/nederland 2.png (100%) rename {gui/slick => static}/images/network/nederland 3.png (100%) rename {gui/slick => static}/images/network/neo kika.png (100%) rename {gui/slick => static}/images/network/net 5.png (100%) rename {gui/slick => static}/images/network/net5.png (100%) rename {gui/slick => static}/images/network/netflix.png (100%) rename {gui/slick => static}/images/network/network ten.png (100%) rename {gui/slick => static}/images/network/nfl network.png (100%) rename {gui/slick => static}/images/network/ngc.png (100%) rename {gui/slick => static}/images/network/nhk.png (100%) rename {gui/slick => static}/images/network/nick at nite.png (100%) rename {gui/slick => static}/images/network/nick comedy.png (100%) rename {gui/slick => static}/images/network/nick jr..png (100%) rename {gui/slick => static}/images/network/nickelodeon.png (100%) rename {gui/slick => static}/images/network/nicktoons network.png (100%) rename {gui/slick => static}/images/network/nicktoons.png (100%) rename {gui/slick => static}/images/network/niconico.png (100%) rename {gui/slick => static}/images/network/nine network.png (100%) rename {gui/slick => static}/images/network/nippon television.png (100%) rename {gui/slick => static}/images/network/no network.png (100%) rename {gui/slick => static}/images/network/nolife.png (100%) rename {gui/slick => static}/images/network/nonetwork.png (100%) rename {gui/slick => static}/images/network/nos.png (100%) rename {gui/slick => static}/images/network/novatv.png (100%) rename {gui/slick => static}/images/network/npo 1.png (100%) rename {gui/slick => static}/images/network/npo 2.png (100%) rename {gui/slick => static}/images/network/npo 3.png (100%) rename {gui/slick => static}/images/network/nps.png (100%) rename {gui/slick => static}/images/network/nrk.png (100%) rename {gui/slick => static}/images/network/nrk1.png (100%) rename {gui/slick => static}/images/network/ntr.png (100%) rename {gui/slick => static}/images/network/ntv.png (100%) rename {gui/slick => static}/images/network/oasis hd.png (100%) rename {gui/slick => static}/images/network/ocs.png (100%) rename {gui/slick => static}/images/network/omroep brabant.png (100%) rename {gui/slick => static}/images/network/omroep max.png (100%) rename {gui/slick => static}/images/network/oprah winfrey network.png (100%) rename {gui/slick => static}/images/network/orf 1.png (100%) rename {gui/slick => static}/images/network/orf 2.png (100%) rename {gui/slick => static}/images/network/orf eins.png (100%) rename {gui/slick => static}/images/network/orf iii.png (100%) rename {gui/slick => static}/images/network/orf.png (100%) rename {gui/slick => static}/images/network/orf1 hd.png (100%) rename {gui/slick => static}/images/network/own.png (100%) rename {gui/slick => static}/images/network/oxygen.png (100%) rename {gui/slick => static}/images/network/pay-per-view.png (100%) rename {gui/slick => static}/images/network/pbs.png (100%) rename {gui/slick => static}/images/network/phoenix hd.png (100%) rename {gui/slick => static}/images/network/phoenix.png (100%) rename {gui/slick => static}/images/network/playboy tv.png (100%) rename {gui/slick => static}/images/network/playstation network.png (100%) rename {gui/slick => static}/images/network/plug rtl.png (100%) rename {gui/slick => static}/images/network/powned.png (100%) rename {gui/slick => static}/images/network/prime (be).png (100%) rename {gui/slick => static}/images/network/prime (nz).png (100%) rename {gui/slick => static}/images/network/private spice.png (100%) rename {gui/slick => static}/images/network/pro7 hd.png (100%) rename {gui/slick => static}/images/network/pro7.png (100%) rename {gui/slick => static}/images/network/production i.g.png (100%) rename {gui/slick => static}/images/network/prosieben fun.png (100%) rename {gui/slick => static}/images/network/prosieben maxx.png (100%) rename {gui/slick => static}/images/network/prosieben.png (100%) rename {gui/slick => static}/images/network/quest.png (100%) rename {gui/slick => static}/images/network/radio bremen tv.png (100%) rename {gui/slick => static}/images/network/radio bremen.png (100%) rename {gui/slick => static}/images/network/radio canada.png (100%) rename {gui/slick => static}/images/network/radio west.png (100%) rename {gui/slick => static}/images/network/radio-canada.png (100%) rename {gui/slick => static}/images/network/rai 1.png (100%) rename {gui/slick => static}/images/network/rai.png (100%) rename {gui/slick => static}/images/network/rbb.png (100%) rename {gui/slick => static}/images/network/rctv.png (100%) rename {gui/slick => static}/images/network/rdi.png (100%) rename {gui/slick => static}/images/network/record.png (100%) rename {gui/slick => static}/images/network/rede bandeirantes.png (100%) rename {gui/slick => static}/images/network/rede globo.png (100%) rename {gui/slick => static}/images/network/reelzchannel.png (100%) rename {gui/slick => static}/images/network/regio tv.png (100%) rename {gui/slick => static}/images/network/revision3.png (100%) rename {gui/slick => static}/images/network/rmc decouverte.png (100%) rename {gui/slick => static}/images/network/rooster teeth.png (100%) rename {gui/slick => static}/images/network/rtbf.png (100%) rename {gui/slick => static}/images/network/rte one.png (100%) rename {gui/slick => static}/images/network/rtl 4.png (100%) rename {gui/slick => static}/images/network/rtl 5.png (100%) rename {gui/slick => static}/images/network/rtl 7.png (100%) rename {gui/slick => static}/images/network/rtl 8.png (100%) rename {gui/slick => static}/images/network/rtl crime hd.png (100%) rename {gui/slick => static}/images/network/rtl crime.png (100%) rename {gui/slick => static}/images/network/rtl hd.png (100%) rename {gui/slick => static}/images/network/rtl ii.png (100%) rename {gui/slick => static}/images/network/rtl living hd.png (100%) rename {gui/slick => static}/images/network/rtl living.png (100%) rename {gui/slick => static}/images/network/rtl nitro.png (100%) rename {gui/slick => static}/images/network/rtl passion hd.png (100%) rename {gui/slick => static}/images/network/rtl passion.png (100%) rename {gui/slick => static}/images/network/rtl television.png (100%) rename {gui/slick => static}/images/network/rtl tvi.jpg (100%) rename {gui/slick => static}/images/network/rtl.png (100%) rename {gui/slick => static}/images/network/rtl2 hd.png (100%) rename {gui/slick => static}/images/network/rtl2.png (100%) rename {gui/slick => static}/images/network/rtl4.png (100%) rename {gui/slick => static}/images/network/rtl5.png (100%) rename {gui/slick => static}/images/network/rtl7.png (100%) rename {gui/slick => static}/images/network/rtl8.png (100%) rename {gui/slick => static}/images/network/rtp internacional.png (100%) rename {gui/slick => static}/images/network/rtp madeira.png (100%) rename {gui/slick => static}/images/network/rtp n.png (100%) rename {gui/slick => static}/images/network/rtp1.png (100%) rename {gui/slick => static}/images/network/rvu.png (100%) rename {gui/slick => static}/images/network/s4/c.png (100%) rename {gui/slick => static}/images/network/sat.1 emotions.png (100%) rename {gui/slick => static}/images/network/sat.1 gold.png (100%) rename {gui/slick => static}/images/network/sat.1 hd.png (100%) rename {gui/slick => static}/images/network/sat.1.png (100%) rename {gui/slick => static}/images/network/sat1.png (100%) rename {gui/slick => static}/images/network/sbs (au).png (100%) rename {gui/slick => static}/images/network/sbs 6.png (100%) rename {gui/slick => static}/images/network/sbs 9.png (100%) rename {gui/slick => static}/images/network/sbs australia.png (100%) rename {gui/slick => static}/images/network/sbs.png (100%) rename {gui/slick => static}/images/network/sbs6.png (100%) rename {gui/slick => static}/images/network/sbt.png (100%) rename {gui/slick => static}/images/network/science channel.png (100%) rename {gui/slick => static}/images/network/scifi.png (100%) rename {gui/slick => static}/images/network/series+.png (100%) rename {gui/slick => static}/images/network/servus tv.png (100%) rename {gui/slick => static}/images/network/servustv hd.png (100%) rename {gui/slick => static}/images/network/servustv.png (100%) rename {gui/slick => static}/images/network/set tv.png (100%) rename {gui/slick => static}/images/network/set.png (100%) rename {gui/slick => static}/images/network/seven network.png (100%) rename {gui/slick => static}/images/network/showcase (au).png (100%) rename {gui/slick => static}/images/network/showcase (ca).png (100%) rename {gui/slick => static}/images/network/showcase.png (100%) rename {gui/slick => static}/images/network/showtime.png (100%) rename {gui/slick => static}/images/network/sic mulher.png (100%) rename {gui/slick => static}/images/network/sic radical.png (100%) rename {gui/slick => static}/images/network/sic sempre gold.png (100%) rename {gui/slick => static}/images/network/sic.png (100%) rename {gui/slick => static}/images/network/sixx hd.png (100%) rename {gui/slick => static}/images/network/sixx.png (100%) rename {gui/slick => static}/images/network/sky action.png (100%) rename {gui/slick => static}/images/network/sky arts.png (100%) rename {gui/slick => static}/images/network/sky atlantic (it).png (100%) rename {gui/slick => static}/images/network/sky atlantic hd.png (100%) rename {gui/slick => static}/images/network/sky atlantic.png (100%) rename {gui/slick => static}/images/network/sky bundesliga.png (100%) rename {gui/slick => static}/images/network/sky cinema (it).png (100%) rename {gui/slick => static}/images/network/sky cinema (uk).png (100%) rename {gui/slick => static}/images/network/sky cinema +1.png (100%) rename {gui/slick => static}/images/network/sky cinema +24.png (100%) rename {gui/slick => static}/images/network/sky cinema.png (100%) rename {gui/slick => static}/images/network/sky comedy.png (100%) rename {gui/slick => static}/images/network/sky emotion.png (100%) rename {gui/slick => static}/images/network/sky hits.png (100%) rename {gui/slick => static}/images/network/sky krimi.png (100%) rename {gui/slick => static}/images/network/sky nostalgie.png (100%) rename {gui/slick => static}/images/network/sky select.png (100%) rename {gui/slick => static}/images/network/sky sport austria.png (100%) rename {gui/slick => static}/images/network/sky sport news hd.png (100%) rename {gui/slick => static}/images/network/sky sport news.png (100%) rename {gui/slick => static}/images/network/sky sport1.png (100%) rename {gui/slick => static}/images/network/sky sport2.png (100%) rename {gui/slick => static}/images/network/sky sports.png (100%) rename {gui/slick => static}/images/network/sky.png (100%) rename {gui/slick => static}/images/network/sky1.png (100%) rename {gui/slick => static}/images/network/smithsonian channel.png (100%) rename {gui/slick => static}/images/network/soho.png (100%) rename {gui/slick => static}/images/network/sony entertainment television.png (100%) rename {gui/slick => static}/images/network/space.png (100%) rename {gui/slick => static}/images/network/speed channel.png (100%) rename {gui/slick => static}/images/network/speed.png (100%) rename {gui/slick => static}/images/network/spiegel geschichte.png (100%) rename {gui/slick => static}/images/network/spike tv.png (100%) rename {gui/slick => static}/images/network/spike.png (100%) rename {gui/slick => static}/images/network/sport1 hd.png (100%) rename {gui/slick => static}/images/network/sport1.png (100%) rename {gui/slick => static}/images/network/sportsman channel.png (100%) rename {gui/slick => static}/images/network/sr.png (100%) rename {gui/slick => static}/images/network/src.png (100%) rename {gui/slick => static}/images/network/srf zwei.png (100%) rename {gui/slick => static}/images/network/star plus.png (100%) rename {gui/slick => static}/images/network/star tv.png (100%) rename {gui/slick => static}/images/network/starz!.png (100%) rename {gui/slick => static}/images/network/starz.png (100%) rename {gui/slick => static}/images/network/stv (uk).png (100%) rename {gui/slick => static}/images/network/stv.png (100%) rename {gui/slick => static}/images/network/style network.png (100%) rename {gui/slick => static}/images/network/style.png (100%) rename {gui/slick => static}/images/network/sub.png (100%) rename {gui/slick => static}/images/network/subtv.png (100%) rename {gui/slick => static}/images/network/sun tv.png (100%) rename {gui/slick => static}/images/network/sun-tv.png (100%) rename {gui/slick => static}/images/network/sundance.png (100%) rename {gui/slick => static}/images/network/sundancetv.png (100%) rename {gui/slick => static}/images/network/sunrise.png (100%) rename {gui/slick => static}/images/network/super channel.png (100%) rename {gui/slick => static}/images/network/super ecran.png (100%) rename {gui/slick => static}/images/network/super rtl hd.png (100%) rename {gui/slick => static}/images/network/super rtl.png (100%) rename {gui/slick => static}/images/network/sveriges television.png (100%) rename {gui/slick => static}/images/network/svt drama.png (100%) rename {gui/slick => static}/images/network/svt.png (100%) rename {gui/slick => static}/images/network/svt1.png (100%) rename {gui/slick => static}/images/network/svt2.png (100%) rename {gui/slick => static}/images/network/swr hd.png (100%) rename {gui/slick => static}/images/network/swr.png (100%) rename {gui/slick => static}/images/network/syfy.png (100%) rename {gui/slick => static}/images/network/syndicated.png (100%) rename {gui/slick => static}/images/network/syndication.png (100%) rename {gui/slick => static}/images/network/tagesschau24.png (100%) rename {gui/slick => static}/images/network/tbs superstation.png (100%) rename {gui/slick => static}/images/network/tbs.png (100%) rename {gui/slick => static}/images/network/techtv canada.png (100%) rename {gui/slick => static}/images/network/tele 5 hd.png (100%) rename {gui/slick => static}/images/network/tele 5.png (100%) rename {gui/slick => static}/images/network/tele-quebec.png (100%) rename {gui/slick => static}/images/network/telecinco.png (100%) rename {gui/slick => static}/images/network/teletama.png (100%) rename {gui/slick => static}/images/network/teletoon.png (100%) rename {gui/slick => static}/images/network/tf1.png (100%) rename {gui/slick => static}/images/network/thames television.png (100%) rename {gui/slick => static}/images/network/the anime network.png (100%) rename {gui/slick => static}/images/network/the cw.png (100%) rename {gui/slick => static}/images/network/the discovery channel.png (100%) rename {gui/slick => static}/images/network/the history channel.png (100%) rename {gui/slick => static}/images/network/the hub.png (100%) rename {gui/slick => static}/images/network/the movie network.png (100%) rename {gui/slick => static}/images/network/the science channel.png (100%) rename {gui/slick => static}/images/network/the wb.png (100%) rename {gui/slick => static}/images/network/the-cw.png (100%) rename {gui/slick => static}/images/network/thecw.png (100%) rename {gui/slick => static}/images/network/thewb.png (100%) rename {gui/slick => static}/images/network/tlc.png (100%) rename {gui/slick => static}/images/network/tmf.png (100%) rename {gui/slick => static}/images/network/tnt (us).png (100%) rename {gui/slick => static}/images/network/tnt drama.png (100%) rename {gui/slick => static}/images/network/tnt glitz.png (100%) rename {gui/slick => static}/images/network/tnt serie.png (100%) rename {gui/slick => static}/images/network/tnt.png (100%) rename {gui/slick => static}/images/network/tntdrama.png (100%) rename {gui/slick => static}/images/network/toei animation.png (100%) rename {gui/slick => static}/images/network/toei channel.png (100%) rename {gui/slick => static}/images/network/tokyo broadcasting system.png (100%) rename {gui/slick => static}/images/network/tokyo mx.png (100%) rename {gui/slick => static}/images/network/toon disney.png (100%) rename {gui/slick => static}/images/network/tqs.png (100%) rename {gui/slick => static}/images/network/travel channel (uk).png (100%) rename {gui/slick => static}/images/network/travel channel.png (100%) rename {gui/slick => static}/images/network/treehouse tv.png (100%) rename {gui/slick => static}/images/network/tros.png (100%) rename {gui/slick => static}/images/network/trutv.png (100%) rename {gui/slick => static}/images/network/tv 2.png (100%) rename {gui/slick => static}/images/network/tv 4.png (100%) rename {gui/slick => static}/images/network/tv asahi.png (100%) rename {gui/slick => static}/images/network/tv azteca.png (100%) rename {gui/slick => static}/images/network/tv cabo.png (100%) rename {gui/slick => static}/images/network/tv cultura.png (100%) rename {gui/slick => static}/images/network/tv guide channel.png (100%) rename {gui/slick => static}/images/network/tv guide.png (100%) rename {gui/slick => static}/images/network/tv kanagawa.png (100%) rename {gui/slick => static}/images/network/tv land.png (100%) rename {gui/slick => static}/images/network/tv norge.png (100%) rename {gui/slick => static}/images/network/tv one (nz).png (100%) rename {gui/slick => static}/images/network/tv one nz.png (100%) rename {gui/slick => static}/images/network/tv saitama.png (100%) rename {gui/slick => static}/images/network/tv tokyo.png (100%) rename {gui/slick => static}/images/network/tv west.png (100%) rename {gui/slick => static}/images/network/tv1.png (100%) rename {gui/slick => static}/images/network/tv2.png (100%) rename {gui/slick => static}/images/network/tv3 (no).png (100%) rename {gui/slick => static}/images/network/tv3, norway.png (100%) rename {gui/slick => static}/images/network/tv3.png (100%) rename {gui/slick => static}/images/network/tv4.png (100%) rename {gui/slick => static}/images/network/tv5 monde.png (100%) rename {gui/slick => static}/images/network/tv5.png (100%) rename {gui/slick => static}/images/network/tv6.png (100%) rename {gui/slick => static}/images/network/tv7.png (100%) rename {gui/slick => static}/images/network/tva.png (100%) rename {gui/slick => static}/images/network/tvb.png (100%) rename {gui/slick => static}/images/network/tve.png (100%) rename {gui/slick => static}/images/network/tve1.png (100%) rename {gui/slick => static}/images/network/tve2.png (100%) rename {gui/slick => static}/images/network/tvg network.png (100%) rename {gui/slick => static}/images/network/tvi.png (100%) rename {gui/slick => static}/images/network/tvk.png (100%) rename {gui/slick => static}/images/network/tvn.png (100%) rename {gui/slick => static}/images/network/tvnorge.png (100%) rename {gui/slick => static}/images/network/tvnz.png (100%) rename {gui/slick => static}/images/network/tvo.png (100%) rename {gui/slick => static}/images/network/tvp sa.png (100%) rename {gui/slick => static}/images/network/tvp1.png (100%) rename {gui/slick => static}/images/network/tvp2.png (100%) rename {gui/slick => static}/images/network/uktv history.png (100%) rename {gui/slick => static}/images/network/uktv yesterday.png (100%) rename {gui/slick => static}/images/network/universal channel.png (100%) rename {gui/slick => static}/images/network/univision.png (100%) rename {gui/slick => static}/images/network/up tv.png (100%) rename {gui/slick => static}/images/network/upn.png (100%) rename {gui/slick => static}/images/network/usa network.png (100%) rename {gui/slick => static}/images/network/usa-network.png (100%) rename {gui/slick => static}/images/network/usa.png (100%) rename {gui/slick => static}/images/network/usanetwork.png (100%) rename {gui/slick => static}/images/network/v.png (100%) rename {gui/slick => static}/images/network/vara.png (100%) rename {gui/slick => static}/images/network/velocity.png (100%) rename {gui/slick => static}/images/network/veronica.png (100%) rename {gui/slick => static}/images/network/vh1 classics.png (100%) rename {gui/slick => static}/images/network/vh1.png (100%) rename {gui/slick => static}/images/network/viceland.png (100%) rename {gui/slick => static}/images/network/vier.png (100%) rename {gui/slick => static}/images/network/vijftv.jpg (100%) rename {gui/slick => static}/images/network/vimeo.png (100%) rename {gui/slick => static}/images/network/viva hd.png (100%) rename {gui/slick => static}/images/network/viva.png (100%) rename {gui/slick => static}/images/network/viz media.png (100%) rename {gui/slick => static}/images/network/vox hd.png (100%) rename {gui/slick => static}/images/network/vox.png (100%) rename {gui/slick => static}/images/network/vpro.png (100%) rename {gui/slick => static}/images/network/vrak.tv.png (100%) rename {gui/slick => static}/images/network/vt4.png (100%) rename {gui/slick => static}/images/network/vtm.png (100%) rename {gui/slick => static}/images/network/vtmkzoom.jpg (100%) rename {gui/slick => static}/images/network/w network.png (100%) rename {gui/slick => static}/images/network/watch.png (100%) rename {gui/slick => static}/images/network/wdr hd.png (100%) rename {gui/slick => static}/images/network/wdr.png (100%) rename {gui/slick => static}/images/network/we tv.png (100%) rename {gui/slick => static}/images/network/wgn america.png (100%) rename {gui/slick => static}/images/network/wnl.png (100%) rename {gui/slick => static}/images/network/wowow.png (100%) rename {gui/slick => static}/images/network/xbox live.png (100%) rename {gui/slick => static}/images/network/xbox video.png (100%) rename {gui/slick => static}/images/network/xebec.png (100%) rename {gui/slick => static}/images/network/yahoo! screen.png (100%) rename {gui/slick => static}/images/network/yorin.png (100%) rename {gui/slick => static}/images/network/youtube.png (100%) rename {gui/slick => static}/images/network/ytv (ca).png (100%) rename {gui/slick => static}/images/network/ytv.png (100%) rename {gui/slick => static}/images/network/zdf hd.png (100%) rename {gui/slick => static}/images/network/zdf.kultur hd.png (100%) rename {gui/slick => static}/images/network/zdf.kultur.png (100%) rename {gui/slick => static}/images/network/zdf.png (100%) rename {gui/slick => static}/images/network/zdfinfo hd.png (100%) rename {gui/slick => static}/images/network/zdfinfo.png (100%) rename {gui/slick => static}/images/network/zdfneo hd.png (100%) rename {gui/slick => static}/images/network/zdfneo.png (100%) rename {gui/slick => static}/images/next.png (100%) rename {gui/slick => static}/images/nfo-no.gif (100%) rename {gui/slick => static}/images/nfo.gif (100%) rename {gui/slick => static}/images/no16.png (100%) rename {gui/slick => static}/images/plus.png (100%) rename {gui/slick => static}/images/poster-dark.jpg (100%) rename {gui/slick => static}/images/poster-large.png (100%) rename {gui/slick => static}/images/poster.png (100%) rename {gui/slick => static}/images/prev.png (100%) rename {gui/slick => static}/images/providers/6box.png (100%) rename {gui/slick => static}/images/providers/6box_me.png (100%) rename {gui/slick => static}/images/providers/abnormal.png (100%) rename {gui/slick => static}/images/providers/alpharatio.png (100%) rename {gui/slick => static}/images/providers/althub.png (100%) rename {gui/slick => static}/images/providers/althub_co_za.png (100%) rename {gui/slick => static}/images/providers/animebytes.png (100%) rename {gui/slick => static}/images/providers/animenzb.gif (100%) rename {gui/slick => static}/images/providers/animenzb.png (100%) rename {gui/slick => static}/images/providers/anizb.png (100%) rename {gui/slick => static}/images/providers/anonzbs.png (100%) rename {gui/slick => static}/images/providers/anonzbs_com.png (100%) rename {gui/slick => static}/images/providers/api_dognzb_cr.png (100%) rename {gui/slick => static}/images/providers/beyondhd.png (100%) rename {gui/slick => static}/images/providers/beyondhd_me.png (100%) rename {gui/slick => static}/images/providers/bin_req.png (100%) rename {gui/slick => static}/images/providers/binsearch.png (100%) rename {gui/slick => static}/images/providers/bitcannon.png (100%) rename {gui/slick => static}/images/providers/bithdtv.png (100%) rename {gui/slick => static}/images/providers/bitsnoop.png (100%) rename {gui/slick => static}/images/providers/bitsoup.png (100%) rename {gui/slick => static}/images/providers/bluetigers.png (100%) rename {gui/slick => static}/images/providers/btdigg.png (100%) rename {gui/slick => static}/images/providers/btn.png (100%) rename {gui/slick => static}/images/providers/cpasbien.png (100%) rename {gui/slick => static}/images/providers/danishbits.png (100%) rename {gui/slick => static}/images/providers/danishbits_org.png (100%) rename {gui/slick => static}/images/providers/demonoid.png (100%) rename {gui/slick => static}/images/providers/demonoid_pw.png (100%) rename {gui/slick => static}/images/providers/dognzb.png (100%) rename {gui/slick => static}/images/providers/dognzb_cr.png (100%) rename {gui/slick => static}/images/providers/drunkenslug.png (100%) rename {gui/slick => static}/images/providers/drunkenslug_com.png (100%) rename {gui/slick => static}/images/providers/dusky_deepcave.png (100%) rename {gui/slick => static}/images/providers/dusky_deepcave_net.png (100%) rename {gui/slick => static}/images/providers/elitetorrent.png (100%) rename {gui/slick => static}/images/providers/eutorrents.png (100%) rename {gui/slick => static}/images/providers/eutorrents_to.png (100%) rename {gui/slick => static}/images/providers/extratorrent.png (100%) rename {gui/slick => static}/images/providers/fastnzb_info.png (100%) rename {gui/slick => static}/images/providers/french_adn.png (100%) rename {gui/slick => static}/images/providers/french_adn_com.png (100%) rename {gui/slick => static}/images/providers/freshontv.png (100%) rename {gui/slick => static}/images/providers/gftracker.png (100%) rename {gui/slick => static}/images/providers/hd4free.png (100%) rename {gui/slick => static}/images/providers/hdbits.png (100%) rename {gui/slick => static}/images/providers/hdspace.png (100%) rename {gui/slick => static}/images/providers/hdtorrents.png (100%) rename {gui/slick => static}/images/providers/hounddawgs.png (100%) rename {gui/slick => static}/images/providers/ilovetorrents.png (100%) rename {gui/slick => static}/images/providers/iptorrents.png (100%) rename {gui/slick => static}/images/providers/kickasstorrents.png (100%) rename {gui/slick => static}/images/providers/libertalia.png (100%) rename {gui/slick => static}/images/providers/limetorrents.png (100%) rename {gui/slick => static}/images/providers/missing.png (100%) rename {gui/slick => static}/images/providers/morethantv.png (100%) rename {gui/slick => static}/images/providers/newpct.png (100%) rename {gui/slick => static}/images/providers/newz_complex.png (100%) rename {gui/slick => static}/images/providers/newz_complex_org.png (100%) rename {gui/slick => static}/images/providers/newzbin.png (100%) rename {gui/slick => static}/images/providers/newznab.png (100%) rename {gui/slick => static}/images/providers/newztown.png (100%) rename {gui/slick => static}/images/providers/newztown_co_za.png (100%) rename {gui/slick => static}/images/providers/nextgen.png (100%) rename {gui/slick => static}/images/providers/nmatrix.png (100%) rename {gui/slick => static}/images/providers/nmatrix_co_za.png (100%) rename {gui/slick => static}/images/providers/norbits.png (100%) rename {gui/slick => static}/images/providers/nutech.png (100%) rename {gui/slick => static}/images/providers/nyaatorrents.png (100%) rename {gui/slick => static}/images/providers/nzb_ag.png (100%) rename {gui/slick => static}/images/providers/nzb_cat.png (100%) rename {gui/slick => static}/images/providers/nzb_is.png (100%) rename {gui/slick => static}/images/providers/nzb_su.png (100%) rename {gui/slick => static}/images/providers/nzbfinder.png (100%) rename {gui/slick => static}/images/providers/nzbfinder_ws.png (100%) rename {gui/slick => static}/images/providers/nzbfriends.png (100%) rename {gui/slick => static}/images/providers/nzbgeek.png (100%) rename {gui/slick => static}/images/providers/nzbgeek_info.png (100%) rename {gui/slick => static}/images/providers/nzbid.png (100%) rename {gui/slick => static}/images/providers/nzbid_org.png (100%) rename {gui/slick => static}/images/providers/nzbindex.png (100%) rename {gui/slick => static}/images/providers/nzbindex_in.png (100%) rename {gui/slick => static}/images/providers/nzbndx.png (100%) rename {gui/slick => static}/images/providers/nzbndx_com.png (100%) rename {gui/slick => static}/images/providers/nzbplanet.png (100%) rename {gui/slick => static}/images/providers/nzbplanet_net.png (100%) rename {gui/slick => static}/images/providers/nzbs2go.png (100%) rename {gui/slick => static}/images/providers/nzbs2go_com.png (100%) rename {gui/slick => static}/images/providers/nzbs_org.png (100%) rename {gui/slick => static}/images/providers/nzbs_org_old.png (100%) rename {gui/slick => static}/images/providers/nzbsooti_sx.png (100%) rename {gui/slick => static}/images/providers/nzbstars_com.png (100%) rename {gui/slick => static}/images/providers/nzbtor.png (100%) rename {gui/slick => static}/images/providers/nzbtor_cr.png (100%) rename {gui/slick => static}/images/providers/nzbtv_net.png (100%) rename {gui/slick => static}/images/providers/nzbzombie.png (100%) rename {gui/slick => static}/images/providers/nzbzombie_com.png (100%) rename {gui/slick => static}/images/providers/omgwtfnzbs.png (100%) rename {gui/slick => static}/images/providers/opennzb.png (100%) rename {gui/slick => static}/images/providers/opennzb_net.png (100%) rename {gui/slick => static}/images/providers/oznzb.png (100%) rename {gui/slick => static}/images/providers/oznzb_com.png (100%) rename {gui/slick => static}/images/providers/pfmonkey.png (100%) rename {gui/slick => static}/images/providers/phxbit.png (100%) rename {gui/slick => static}/images/providers/piratenzb.png (100%) rename {gui/slick => static}/images/providers/piratenzb_com.png (100%) rename {gui/slick => static}/images/providers/pretome.png (100%) rename {gui/slick => static}/images/providers/privatehd.png (100%) rename {gui/slick => static}/images/providers/privatehd_to.png (100%) rename {gui/slick => static}/images/providers/publichd.png (100%) rename {gui/slick => static}/images/providers/qoqmovies.png (100%) rename {gui/slick => static}/images/providers/qoqmovies_com.png (100%) rename {gui/slick => static}/images/providers/rarbg.png (100%) rename {gui/slick => static}/images/providers/sceneaccess.png (100%) rename {gui/slick => static}/images/providers/sceneelite.png (100%) rename {gui/slick => static}/images/providers/scenetime.png (100%) rename {gui/slick => static}/images/providers/shazbat_tv.png (100%) rename {gui/slick => static}/images/providers/sick_beard_index.png (100%) rename {gui/slick => static}/images/providers/sickbeard_index.png (100%) rename {gui/slick => static}/images/providers/simplynzbs.png (100%) rename {gui/slick => static}/images/providers/simplynzbs_com.png (100%) rename {gui/slick => static}/images/providers/sixbox.png (100%) rename {gui/slick => static}/images/providers/sixbox_me.png (100%) rename {gui/slick => static}/images/providers/speedcd.png (100%) rename {gui/slick => static}/images/providers/spotweb.png (100%) rename {gui/slick => static}/images/providers/spotweb_be.png (100%) rename {gui/slick => static}/images/providers/strike.png (100%) rename {gui/slick => static}/images/providers/t411.png (100%) rename {gui/slick => static}/images/providers/thepiratebay.png (100%) rename {gui/slick => static}/images/providers/thepiratebay_.png (100%) rename {gui/slick => static}/images/providers/titansoftv.png (100%) rename {gui/slick => static}/images/providers/tntvillage.png (100%) rename {gui/slick => static}/images/providers/tokyotoshokan.png (100%) rename {gui/slick => static}/images/providers/torrentbytes.png (100%) rename {gui/slick => static}/images/providers/torrentday.png (100%) rename {gui/slick => static}/images/providers/torrentleech.png (100%) rename {gui/slick => static}/images/providers/torrentproject.png (100%) rename {gui/slick => static}/images/providers/torrentrss.png (100%) rename {gui/slick => static}/images/providers/torrentshack.png (100%) rename {gui/slick => static}/images/providers/torrentshack_me.png (100%) rename {gui/slick => static}/images/providers/torrentz2.png (100%) rename {gui/slick => static}/images/providers/transmitthenet.png (100%) rename {gui/slick => static}/images/providers/tvbinz.png (100%) rename {gui/slick => static}/images/providers/tvchaosuk.png (100%) rename {gui/slick => static}/images/providers/tvnzb.png (100%) rename {gui/slick => static}/images/providers/usenet_crawler.png (100%) rename {gui/slick => static}/images/providers/womble_s_index.png (100%) rename {gui/slick => static}/images/providers/xspeeds.png (100%) rename {gui/slick => static}/images/providers/xspeeds_eu.png (100%) rename {gui/slick => static}/images/providers/xthor.png (100%) rename {gui/slick => static}/images/providers/xthor_bz.png (100%) rename {gui/slick => static}/images/providers/zooqle.png (100%) rename {gui/slick => static}/images/queued.png (100%) rename {gui/slick => static}/images/rating.png (100%) rename {gui/slick => static}/images/save.png (100%) rename {gui/slick => static}/images/search16.png (100%) rename {gui/slick => static}/images/search_backlog_8x8.png (100%) rename {gui/slick => static}/images/search_daily_8x8.png (100%) rename {gui/slick => static}/images/search_manual_8x8.png (100%) rename {gui/slick => static}/images/shadow.png (100%) rename {gui/slick => static}/images/subtitles/addic7ed.png (100%) rename {gui/slick => static}/images/subtitles/flags/afr.png (100%) rename {gui/slick => static}/images/subtitles/flags/alb.png (100%) rename {gui/slick => static}/images/subtitles/flags/amh.png (100%) rename {gui/slick => static}/images/subtitles/flags/ara.png (100%) rename {gui/slick => static}/images/subtitles/flags/arg.png (100%) rename {gui/slick => static}/images/subtitles/flags/asm.png (100%) rename {gui/slick => static}/images/subtitles/flags/ave.png (100%) rename {gui/slick => static}/images/subtitles/flags/aym.png (100%) rename {gui/slick => static}/images/subtitles/flags/aze.png (100%) rename {gui/slick => static}/images/subtitles/flags/bak.png (100%) rename {gui/slick => static}/images/subtitles/flags/bam.png (100%) rename {gui/slick => static}/images/subtitles/flags/bel.png (100%) rename {gui/slick => static}/images/subtitles/flags/ben.png (100%) rename {gui/slick => static}/images/subtitles/flags/bis.png (100%) rename {gui/slick => static}/images/subtitles/flags/bod.png (100%) rename {gui/slick => static}/images/subtitles/flags/bos.png (100%) rename {gui/slick => static}/images/subtitles/flags/bre.png (100%) rename {gui/slick => static}/images/subtitles/flags/bul.png (100%) rename {gui/slick => static}/images/subtitles/flags/cat.png (100%) rename {gui/slick => static}/images/subtitles/flags/ces.png (100%) rename {gui/slick => static}/images/subtitles/flags/cha.png (100%) rename {gui/slick => static}/images/subtitles/flags/checkbox.png (100%) rename {gui/slick => static}/images/subtitles/flags/chi.png (100%) rename {gui/slick => static}/images/subtitles/flags/chu.png (100%) rename {gui/slick => static}/images/subtitles/flags/chv.png (100%) rename {gui/slick => static}/images/subtitles/flags/cor.png (100%) rename {gui/slick => static}/images/subtitles/flags/cos.png (100%) rename {gui/slick => static}/images/subtitles/flags/cre.png (100%) rename {gui/slick => static}/images/subtitles/flags/cym.png (100%) rename {gui/slick => static}/images/subtitles/flags/cze.png (100%) rename {gui/slick => static}/images/subtitles/flags/dan.png (100%) rename {gui/slick => static}/images/subtitles/flags/deu.png (100%) rename {gui/slick => static}/images/subtitles/flags/dum.png (100%) rename {gui/slick => static}/images/subtitles/flags/dut.png (100%) rename {gui/slick => static}/images/subtitles/flags/dzo.png (100%) rename {gui/slick => static}/images/subtitles/flags/ell.png (100%) rename {gui/slick => static}/images/subtitles/flags/eng.png (100%) rename {gui/slick => static}/images/subtitles/flags/epo.png (100%) rename {gui/slick => static}/images/subtitles/flags/est.png (100%) rename {gui/slick => static}/images/subtitles/flags/ewe.png (100%) rename {gui/slick => static}/images/subtitles/flags/fam.png (100%) rename {gui/slick => static}/images/subtitles/flags/fao.png (100%) rename {gui/slick => static}/images/subtitles/flags/fas.png (100%) rename {gui/slick => static}/images/subtitles/flags/fij.png (100%) rename {gui/slick => static}/images/subtitles/flags/fin.png (100%) rename {gui/slick => static}/images/subtitles/flags/fra.png (100%) rename {gui/slick => static}/images/subtitles/flags/fre.png (100%) rename {gui/slick => static}/images/subtitles/flags/frm.png (100%) rename {gui/slick => static}/images/subtitles/flags/fro.png (100%) rename {gui/slick => static}/images/subtitles/flags/geo.png (100%) rename {gui/slick => static}/images/subtitles/flags/ger.png (100%) rename {gui/slick => static}/images/subtitles/flags/gla.png (100%) rename {gui/slick => static}/images/subtitles/flags/gle.png (100%) rename {gui/slick => static}/images/subtitles/flags/glg.png (100%) rename {gui/slick => static}/images/subtitles/flags/grn.png (100%) rename {gui/slick => static}/images/subtitles/flags/gsw.png (100%) rename {gui/slick => static}/images/subtitles/flags/guj.png (100%) rename {gui/slick => static}/images/subtitles/flags/hat.png (100%) rename {gui/slick => static}/images/subtitles/flags/heb.png (100%) rename {gui/slick => static}/images/subtitles/flags/hin.png (100%) rename {gui/slick => static}/images/subtitles/flags/hrv.png (100%) rename {gui/slick => static}/images/subtitles/flags/hun.png (100%) rename {gui/slick => static}/images/subtitles/flags/hye.png (100%) rename {gui/slick => static}/images/subtitles/flags/ice.png (100%) rename {gui/slick => static}/images/subtitles/flags/ido.png (100%) rename {gui/slick => static}/images/subtitles/flags/ile.png (100%) rename {gui/slick => static}/images/subtitles/flags/ind.png (100%) rename {gui/slick => static}/images/subtitles/flags/isl.png (100%) rename {gui/slick => static}/images/subtitles/flags/ita.png (100%) rename {gui/slick => static}/images/subtitles/flags/jpn.png (100%) rename {gui/slick => static}/images/subtitles/flags/kan.png (100%) rename {gui/slick => static}/images/subtitles/flags/kat.png (100%) rename {gui/slick => static}/images/subtitles/flags/kau.png (100%) rename {gui/slick => static}/images/subtitles/flags/kaz.png (100%) rename {gui/slick => static}/images/subtitles/flags/khm.png (100%) rename {gui/slick => static}/images/subtitles/flags/kik.png (100%) rename {gui/slick => static}/images/subtitles/flags/kin.png (100%) rename {gui/slick => static}/images/subtitles/flags/kir.png (100%) rename {gui/slick => static}/images/subtitles/flags/kon.png (100%) rename {gui/slick => static}/images/subtitles/flags/kor.png (100%) rename {gui/slick => static}/images/subtitles/flags/lat.png (100%) rename {gui/slick => static}/images/subtitles/flags/lav.png (100%) rename {gui/slick => static}/images/subtitles/flags/lim.png (100%) rename {gui/slick => static}/images/subtitles/flags/lit.png (100%) rename {gui/slick => static}/images/subtitles/flags/ltz.png (100%) rename {gui/slick => static}/images/subtitles/flags/lub.png (100%) rename {gui/slick => static}/images/subtitles/flags/mac.png (100%) rename {gui/slick => static}/images/subtitles/flags/mah.png (100%) rename {gui/slick => static}/images/subtitles/flags/mal.png (100%) rename {gui/slick => static}/images/subtitles/flags/mar.png (100%) rename {gui/slick => static}/images/subtitles/flags/mkd.png (100%) rename {gui/slick => static}/images/subtitles/flags/mlg.png (100%) rename {gui/slick => static}/images/subtitles/flags/mlt.png (100%) rename {gui/slick => static}/images/subtitles/flags/mne.png (100%) rename {gui/slick => static}/images/subtitles/flags/mon.png (100%) rename {gui/slick => static}/images/subtitles/flags/msa.png (100%) rename {gui/slick => static}/images/subtitles/flags/mya.png (100%) rename {gui/slick => static}/images/subtitles/flags/nau.png (100%) rename {gui/slick => static}/images/subtitles/flags/nbl.png (100%) rename {gui/slick => static}/images/subtitles/flags/ndo.png (100%) rename {gui/slick => static}/images/subtitles/flags/nep.png (100%) rename {gui/slick => static}/images/subtitles/flags/nld.png (100%) rename {gui/slick => static}/images/subtitles/flags/nor.png (100%) rename {gui/slick => static}/images/subtitles/flags/oci.png (100%) rename {gui/slick => static}/images/subtitles/flags/orm.png (100%) rename {gui/slick => static}/images/subtitles/flags/pan.png (100%) rename {gui/slick => static}/images/subtitles/flags/pob.png (100%) rename {gui/slick => static}/images/subtitles/flags/pol.png (100%) rename {gui/slick => static}/images/subtitles/flags/por.png (100%) rename {gui/slick => static}/images/subtitles/flags/pus.png (100%) rename {gui/slick => static}/images/subtitles/flags/ron.png (100%) rename {gui/slick => static}/images/subtitles/flags/rum.png (100%) rename {gui/slick => static}/images/subtitles/flags/rus.png (100%) rename {gui/slick => static}/images/subtitles/flags/sag.png (100%) rename {gui/slick => static}/images/subtitles/flags/san.png (100%) rename {gui/slick => static}/images/subtitles/flags/scc.png (100%) rename {gui/slick => static}/images/subtitles/flags/sin.png (100%) rename {gui/slick => static}/images/subtitles/flags/slk.png (100%) rename {gui/slick => static}/images/subtitles/flags/slo.png (100%) rename {gui/slick => static}/images/subtitles/flags/slv.png (100%) rename {gui/slick => static}/images/subtitles/flags/sme.png (100%) rename {gui/slick => static}/images/subtitles/flags/smo.png (100%) rename {gui/slick => static}/images/subtitles/flags/sna.png (100%) rename {gui/slick => static}/images/subtitles/flags/snd.png (100%) rename {gui/slick => static}/images/subtitles/flags/som.png (100%) rename {gui/slick => static}/images/subtitles/flags/sot.png (100%) rename {gui/slick => static}/images/subtitles/flags/spa.png (100%) rename {gui/slick => static}/images/subtitles/flags/sqi.png (100%) rename {gui/slick => static}/images/subtitles/flags/srd.png (100%) rename {gui/slick => static}/images/subtitles/flags/srp.png (100%) rename {gui/slick => static}/images/subtitles/flags/swe.png (100%) rename {gui/slick => static}/images/subtitles/flags/tat.png (100%) rename {gui/slick => static}/images/subtitles/flags/tgk.png (100%) rename {gui/slick => static}/images/subtitles/flags/tgl.png (100%) rename {gui/slick => static}/images/subtitles/flags/tha.png (100%) rename {gui/slick => static}/images/subtitles/flags/ton.png (100%) rename {gui/slick => static}/images/subtitles/flags/tsn.png (100%) rename {gui/slick => static}/images/subtitles/flags/tuk.png (100%) rename {gui/slick => static}/images/subtitles/flags/tur.png (100%) rename {gui/slick => static}/images/subtitles/flags/twi.png (100%) rename {gui/slick => static}/images/subtitles/flags/uig.png (100%) rename {gui/slick => static}/images/subtitles/flags/ukr.png (100%) rename {gui/slick => static}/images/subtitles/flags/und.png (100%) rename {gui/slick => static}/images/subtitles/flags/unknown.png (100%) rename {gui/slick => static}/images/subtitles/flags/uzb.png (100%) rename {gui/slick => static}/images/subtitles/flags/ven.png (100%) rename {gui/slick => static}/images/subtitles/flags/vie.png (100%) rename {gui/slick => static}/images/subtitles/flags/zha.png (100%) rename {gui/slick => static}/images/subtitles/flags/zho.png (100%) rename {gui/slick => static}/images/subtitles/itasa.png (100%) rename {gui/slick => static}/images/subtitles/legendastv.png (100%) rename {gui/slick => static}/images/subtitles/napiprojekt.png (100%) rename {gui/slick => static}/images/subtitles/opensubtitles.png (100%) rename {gui/slick => static}/images/subtitles/podnapisi.png (100%) rename {gui/slick => static}/images/subtitles/shooter.png (100%) rename {gui/slick => static}/images/subtitles/subscene.png (100%) rename {gui/slick => static}/images/subtitles/subscenter.png (100%) rename {gui/slick => static}/images/subtitles/subswiki.png (100%) rename {gui/slick => static}/images/subtitles/subtitlesource.png (100%) rename {gui/slick => static}/images/subtitles/subtitulos.png (100%) rename {gui/slick => static}/images/subtitles/thesubdb.png (100%) rename {gui/slick => static}/images/subtitles/tvsubtitles.png (100%) rename {gui/slick => static}/images/subtitles/usub.png (100%) rename {gui/slick => static}/images/tablesorter/asc.gif (100%) rename {gui/slick => static}/images/tablesorter/bg.gif (100%) rename {gui/slick => static}/images/tablesorter/desc.gif (100%) rename {gui/slick => static}/images/tag.png (100%) rename {gui/slick => static}/images/tbn-no.gif (100%) rename {gui/slick => static}/images/tbn.gif (100%) rename {gui/slick => static}/images/thetvdb16.png (100%) rename {gui/slick => static}/images/top.gif (100%) rename {gui/slick => static}/images/tvrage.png (100%) rename {gui/slick => static}/images/tvrage16.png (100%) rename {gui/slick => static}/images/warning16.png (100%) rename {gui/slick => static}/images/xbmc-notify.png (100%) rename {gui/slick => static}/images/xem.png (100%) rename {gui/slick => static}/images/yes16.png (100%) rename {gui/slick => static}/js/add-show-options.js (100%) rename {gui/slick => static}/js/add-shows/add-existing-show.js (100%) rename {gui/slick => static}/js/add-shows/init.js (100%) rename {gui/slick => static}/js/add-shows/new-show.js (100%) rename {gui/slick => static}/js/add-shows/popular-shows.js (100%) rename {gui/slick => static}/js/add-shows/recommended-shows.js (100%) rename {gui/slick => static}/js/add-shows/trending-shows.js (100%) rename {gui/slick => static}/js/ajax-episode-search.js (100%) rename {gui/slick => static}/js/ajax-episode-subtitles.js (100%) rename {gui/slick => static}/js/ajax-notifications.js (100%) rename {gui/slick => static}/js/apibuilder.js (100%) rename {gui/slick => static}/js/blackwhite.js (100%) rename {gui/slick => static}/js/browser.js (100%) rename {gui/slick => static}/js/common/init.js (100%) rename {gui/slick => static}/js/config-providers.js (100%) rename {gui/slick => static}/js/config/backup-restore.js (100%) rename {gui/slick => static}/js/config/index.js (100%) rename {gui/slick => static}/js/config/init.js (100%) rename {gui/slick => static}/js/config/notifications.js (100%) rename {gui/slick => static}/js/config/post-processing.js (100%) rename {gui/slick => static}/js/config/search.js (100%) rename {gui/slick => static}/js/config/subtitles.js (100%) rename {gui/slick => static}/js/core.js (100%) rename {gui/slick => static}/js/edit-show.js (100%) rename {gui/slick => static}/js/errorlogs/viewlogs.js (100%) rename {gui/slick => static}/js/history/index.js (100%) rename {gui/slick => static}/js/home/display-show.js (100%) rename {gui/slick => static}/js/home/edit-show.js (100%) rename {gui/slick => static}/js/home/index.js (100%) rename {gui/slick => static}/js/home/post-process.js (100%) rename {gui/slick => static}/js/home/restart.js (100%) rename {gui/slick => static}/js/home/snatch-selection.js (100%) rename {gui/slick => static}/js/home/status.js (100%) rename {gui/slick => static}/js/lib/formwizard.js (100%) rename {gui/slick => static}/js/lib/jquery.bookmarkscroll.js (99%) rename {gui/slick => static}/js/lib/jquery.cookiejar.js (100%) rename {gui/slick => static}/js/lib/jquery.form.min.js (100%) rename {gui/slick => static}/js/lib/jquery.json-2.2.min.js (100%) rename {gui/slick => static}/js/lib/jquery.scrolltopcontrol-1.1.js (100%) rename {gui/slick => static}/js/lib/jquery.selectboxes.min.js (100%) rename {gui/slick => static}/js/manage/backlog-overview.js (100%) rename {gui/slick => static}/js/manage/episode-statuses.js (100%) rename {gui/slick => static}/js/manage/failed-downloads.js (100%) rename {gui/slick => static}/js/manage/index.js (100%) rename {gui/slick => static}/js/manage/init.js (100%) rename {gui/slick => static}/js/manage/mass-edit.js (100%) rename {gui/slick => static}/js/manage/subtitle-missed.js (100%) rename {gui/slick => static}/js/mass-edit.js (100%) rename {gui/slick => static}/js/mass-update.js (100%) rename {gui/slick => static}/js/parsers.js (100%) rename {gui/slick => static}/js/plot-tooltip.js (100%) rename {gui/slick => static}/js/quality-chooser.js (100%) rename {gui/slick => static}/js/rating-tooltip.js (100%) rename {gui/slick => static}/js/root-dirs.js (100%) rename {gui/slick => static}/js/scene-exceptions-tooltip.js (100%) rename {gui/slick => static}/js/schedule/index.js (100%) rename {gui/slick => static}/js/test-rename.js (100%) rename {gui/slick => static}/js/trending-shows.js (100%) rename {gui/slick => static}/js/vender.min.js (100%) rename gui/slick/views/index.mako => static/scss/core.scss (100%) rename {gui/slick/views => views}/404.mako (100%) rename {gui/slick/views => views}/500.mako (100%) rename {gui/slick/views => views}/IRC.mako (100%) rename {gui/slick/views => views}/addRecommended.mako (100%) rename {gui/slick/views => views}/addShows.mako (100%) rename {gui/slick/views => views}/addShows_addExistingShow.mako (100%) rename {gui/slick/views => views}/addShows_newShow.mako (100%) rename {gui/slick/views => views}/addShows_recommended.mako (100%) rename {gui/slick/views => views}/addShows_trendingShows.mako (100%) rename {gui/slick/views => views}/apiBuilder.mako (100%) rename {gui/slick/views => views}/config.mako (100%) rename {gui/slick/views => views}/config_anime.mako (100%) rename {gui/slick/views => views}/config_backuprestore.mako (100%) rename {gui/slick/views => views}/config_general.mako (100%) rename {gui/slick/views => views}/config_notifications.mako (100%) rename {gui/slick/views => views}/config_postProcessing.mako (100%) rename {gui/slick/views => views}/config_providers.mako (100%) rename {gui/slick/views => views}/config_search.mako (100%) rename {gui/slick/views => views}/config_subtitles.mako (100%) rename {gui/slick/views => views}/displayShow.mako (100%) rename {gui/slick/views => views}/editShow.mako (100%) rename {gui/slick/views => views}/errorlogs.mako (100%) rename {gui/slick/views => views}/genericMessage.mako (100%) rename {gui/slick/views => views}/history.mako (100%) rename {gui/slick/views => views}/home.mako (100%) rename {gui/slick/views => views}/home_massAddTable.mako (100%) rename {gui/slick/views => views}/home_postprocess.mako (100%) rename {gui/slick/views => views}/inc_addShowOptions.mako (100%) rename {gui/slick/views => views}/inc_blackwhitelist.mako (100%) rename {gui/slick/views => views}/inc_defs.mako (100%) rename {gui/slick/views => views}/inc_qualityChooser.mako (100%) rename {gui/slick/views => views}/inc_rootDirs.mako (100%) create mode 100644 views/index.mako rename {gui/slick/views => views}/layouts/main.mako (100%) rename {gui/slick/views => views}/login.mako (100%) rename {gui/slick/views => views}/manage.mako (100%) rename {gui/slick/views => views}/manage_backlogOverview.mako (100%) rename {gui/slick/views => views}/manage_episodeStatuses.mako (100%) rename {gui/slick/views => views}/manage_failedDownloads.mako (100%) rename {gui/slick/views => views}/manage_manageSearches.mako (100%) rename {gui/slick/views => views}/manage_massEdit.mako (100%) rename {gui/slick/views => views}/manage_subtitleMissed.mako (100%) rename {gui/slick/views => views}/manage_torrents.mako (100%) rename {gui/slick/views => views}/markdown.mako (100%) rename {gui/slick/views => views}/partials/alerts.mako (100%) rename {gui/slick/views => views}/partials/footer.mako (100%) rename {gui/slick/views => views}/partials/header.mako (100%) rename {gui/slick/views => views}/partials/home/banner.mako (100%) rename {gui/slick/views => views}/partials/home/poster.mako (100%) rename {gui/slick/views => views}/partials/home/simple.mako (100%) rename {gui/slick/views => views}/partials/home/small.mako (100%) rename {gui/slick/views => views}/partials/submenu.mako (100%) rename {gui/slick/views => views}/restart.mako (100%) rename {gui/slick/views => views}/schedule.mako (100%) rename {gui/slick/views => views}/snatchSelection.mako (100%) rename {gui/slick/views => views}/status.mako (100%) rename {gui/slick/views => views}/testRename.mako (100%) rename {gui/slick/views => views}/trendingShows.mako (100%) rename {gui/slick/views => views}/viewlogs.mako (100%) diff --git a/.build/Gruntfile.js b/.build/Gruntfile.js index 91001f358b..b2a2111570 100644 --- a/.build/Gruntfile.js +++ b/.build/Gruntfile.js @@ -5,7 +5,7 @@ module.exports = function(grunt) { clean: { dist: './dist/', bower_components: './bower_components', - fonts: '../gui/slick/css/*.ttf', + fonts: '../static/css/*.ttf', options: { force: true } @@ -63,7 +63,7 @@ module.exports = function(grunt) { src: [ '*.ttf' ], - dest: '../gui/slick/css/' + dest: '../static/css/' }] }, glyphicon: { @@ -78,24 +78,14 @@ module.exports = function(grunt) { '*.woff', '*.woff2' ], - dest: '../gui/slick/fonts/' + dest: '../static/fonts/' }] } }, uglify: { bower: { files: { - '../gui/slick/js/vender.min.js': ['./dist/bower.js'] - } - } - }, - sass: { - options: { - sourceMap: true - }, - core: { - files: { - './dist/core.css': ['../gui/slick/scss/core.scss'] + '../static/js/vender.min.js': ['./dist/bower.js'] } } }, @@ -106,12 +96,12 @@ module.exports = function(grunt) { }, bower: { files: { - '../gui/slick/css/vender.min.css': ['./dist/bower.css'] + '../static/css/vender.min.css': ['./dist/bower.css'] } }, core: { files: { - '../gui/slick/css/core.min.css': ['./dist/core.css'] + '../static/css/core.min.css': ['./dist/core.css'] } } }, @@ -120,10 +110,10 @@ module.exports = function(grunt) { jshintrc: '../.jshintrc' }, all: [ - '../gui/slick/js/**/*.js', - '!../gui/slick/js/lib/**/*.js', - '!../gui/slick/js/ajax-notifications.js', - '!../gui/slick/js/**/*.min.js', // We use this because ignores doesn't seem to work :( + '../static/js/**/*.js', + '!../static/js/lib/**/*.js', + '!../static/js/ajax-notifications.js', + '!../static/js/**/*.min.js', // We use this because ignores doesn't seem to work :( ] }, mocha: { @@ -151,7 +141,6 @@ module.exports = function(grunt) { 'bower_concat', 'copy', 'uglify', - 'sass', 'cssmin', 'mocha' ]); diff --git a/.build/test/testrunner.html b/.build/test/testrunner.html index 008398e6db..5d668b5500 100644 --- a/.build/test/testrunner.html +++ b/.build/test/testrunner.html @@ -13,8 +13,8 @@
- - + + + + +<%block name="content"> +
+ % if not header is UNDEFINED: +

${header}

+ % else: +

${title}

+ % endif +
+
+ + + + + + + + + + + % for index, epResult in enumerate(releases_in_pp): + + + + + + + % endfor + +
ShowEpisodeReleaseSearch
+ ${epResult['show_name']} + + ${episode_num(epResult['season'], epResult['episode'])} + + + ${os.path.relpath(epResult['release'], app.TV_DOWNLOAD_DIR)} + +
+<%include file="subtitle_modal.mako"/> +
+
+ + + + + + + + + +
+ +
+
+ diff --git a/views/partials/footer.mako b/views/partials/footer.mako index ae9a8f81b7..23e79dc25b 100644 --- a/views/partials/footer.mako +++ b/views/partials/footer.mako @@ -102,7 +102,7 @@ - + diff --git a/views/partials/header.mako b/views/partials/header.mako index 13d58e42b7..9894a9e26c 100644 --- a/views/partials/header.mako +++ b/views/partials/header.mako @@ -72,6 +72,9 @@ % if app.USE_SUBTITLES:
  •  Missed Subtitle Management
  • % endif + % if app.POSTPONE_IF_NO_SUBS: +
  •  Missed Subtitle in Post-Process folder
  • + % endif
    diff --git a/views/subtitle_modal.mako b/views/subtitle_modal.mako new file mode 100644 index 0000000000..e82035391c --- /dev/null +++ b/views/subtitle_modal.mako @@ -0,0 +1,23 @@ + From 2c2831fc12bc6552395467f7d6feb66af58fb48e Mon Sep 17 00:00:00 2001 From: Fernando Date: Fri, 7 Oct 2016 14:59:13 -0300 Subject: [PATCH 03/82] Fix wrong nzb provider image --- medusa/providers/nzb/newznab.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/medusa/providers/nzb/newznab.py b/medusa/providers/nzb/newznab.py index 20bddd5e13..1c2f01c914 100644 --- a/medusa/providers/nzb/newznab.py +++ b/medusa/providers/nzb/newznab.py @@ -318,7 +318,7 @@ def image_name(self): Returns found image or the default newznab image """ if ek(os.path.isfile, - ek(os.path.join, app.PROG_DIR, 'gui', app.GUI_NAME, 'images', 'providers', + ek(os.path.join, app.PROG_DIR, 'static/images/providers/', self.get_id() + '.png')): return self.get_id() + '.png' return 'newznab.png' From 6cbe6770087fc05168acec5b3f87d9f42494259e Mon Sep 17 00:00:00 2001 From: Fernando Date: Fri, 7 Oct 2016 15:03:49 -0300 Subject: [PATCH 04/82] Fix rsstorrent images --- medusa/providers/torrent/rss/rsstorrent.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/medusa/providers/torrent/rss/rsstorrent.py b/medusa/providers/torrent/rss/rsstorrent.py index c3e3b2a7b8..0af6c01252 100644 --- a/medusa/providers/torrent/rss/rsstorrent.py +++ b/medusa/providers/torrent/rss/rsstorrent.py @@ -114,7 +114,7 @@ def get_providers_list(data): return [x for x in providers_set if x] def image_name(self): - if ek(os.path.isfile, ek(os.path.join, app.PROG_DIR, 'gui', app.GUI_NAME, 'images', 'providers', self.get_id() + '.png')): + if ek(os.path.isfile, ek(os.path.join, app.PROG_DIR, 'static/images/providers/', self.get_id() + '.png')): return self.get_id() + '.png' return 'torrentrss.png' From dd11b616136e64ad5e5b27fbb4014e59073ee1ee Mon Sep 17 00:00:00 2001 From: Fernando Date: Fri, 7 Oct 2016 15:06:50 -0300 Subject: [PATCH 05/82] Remove unused gui_name (slick) --- medusa/__init__.py | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/medusa/__init__.py b/medusa/__init__.py index 2f2eabe8a5..06592d2c58 100644 --- a/medusa/__init__.py +++ b/medusa/__init__.py @@ -534,7 +534,6 @@ EMAIL_LIST = None EMAIL_SUBJECT = None -GUI_NAME = None HOME_LAYOUT = None HISTORY_LAYOUT = None HISTORY_LIMIT = 0 @@ -676,7 +675,7 @@ def initialize(consoleLogging=True): # pylint: disable=too-many-locals, too-man USE_EMAIL, EMAIL_HOST, EMAIL_PORT, EMAIL_TLS, EMAIL_USER, EMAIL_PASSWORD, EMAIL_FROM, EMAIL_NOTIFY_ONSNATCH, EMAIL_NOTIFY_ONDOWNLOAD, EMAIL_NOTIFY_ONSUBTITLEDOWNLOAD, EMAIL_LIST, EMAIL_SUBJECT, \ USE_LISTVIEW, METADATA_KODI, METADATA_KODI_12PLUS, METADATA_MEDIABROWSER, METADATA_PS3, metadata_provider_dict, \ NEWZBIN, NEWZBIN_USERNAME, NEWZBIN_PASSWORD, GIT_PATH, MOVE_ASSOCIATED_FILES, SYNC_FILES, POSTPONE_IF_SYNC_FILES, POSTPONE_IF_NO_SUBS, dailySearchScheduler, NFO_RENAME, \ - GUI_NAME, HOME_LAYOUT, HISTORY_LAYOUT, DISPLAY_SHOW_SPECIALS, COMING_EPS_LAYOUT, COMING_EPS_SORT, COMING_EPS_DISPLAY_PAUSED, COMING_EPS_MISSED_RANGE, FUZZY_DATING, TRIM_ZERO, DATE_PRESET, TIME_PRESET, TIME_PRESET_W_SECONDS, THEME_NAME, \ + HOME_LAYOUT, HISTORY_LAYOUT, DISPLAY_SHOW_SPECIALS, COMING_EPS_LAYOUT, COMING_EPS_SORT, COMING_EPS_DISPLAY_PAUSED, COMING_EPS_MISSED_RANGE, FUZZY_DATING, TRIM_ZERO, DATE_PRESET, TIME_PRESET, TIME_PRESET_W_SECONDS, THEME_NAME, \ POSTER_SORTBY, POSTER_SORTDIR, HISTORY_LIMIT, CREATE_MISSING_SHOW_DIRS, ADD_SHOWS_WO_DIR, \ METADATA_WDTV, METADATA_TIVO, METADATA_MEDE8ER, IGNORE_WORDS, PREFERRED_WORDS, UNDESIRED_WORDS, TRACKERS_LIST, IGNORED_SUBS_LIST, REQUIRE_WORDS, CALENDAR_UNPROTECTED, CALENDAR_ICONS, NO_RESTART, IGNORE_UND_SUBS, \ USE_SUBTITLES, SUBTITLES_LANGUAGES, SUBTITLES_DIR, SUBTITLES_SERVICES_LIST, SUBTITLES_SERVICES_ENABLED, SUBTITLES_HISTORY, SUBTITLES_FINDER_FREQUENCY, SUBTITLES_MULTI, SUBTITLES_KEEP_ONLY_WANTED, EMBEDDED_SUBTITLES_ALL, SUBTITLES_EXTRA_SCRIPTS, SUBTITLES_PRE_SCRIPTS, SUBTITLES_PERFECT_MATCH, subtitlesFinderScheduler, EMBEDDED_SUBTITLES_UNKNOWN_LANG, SUBTITLES_STOP_AT_FIRST, \ @@ -778,8 +777,6 @@ def initialize(consoleLogging=True): # pylint: disable=too-many-locals, too-man FANART_BACKGROUND = bool(check_setting_int(CFG, 'GUI', 'fanart_background', 1)) FANART_BACKGROUND_OPACITY = check_setting_float(CFG, 'GUI', 'fanart_background_opacity', 0.4) - GUI_NAME = check_setting_str(CFG, 'GUI', 'gui_name', 'slick') - THEME_NAME = check_setting_str(CFG, 'GUI', 'theme_name', 'dark') SOCKET_TIMEOUT = check_setting_int(CFG, 'General', 'socket_timeout', 30) @@ -2055,7 +2052,6 @@ def save_config(): # pylint: disable=too-many-statements, too-many-branches new_config['TorrentRss']['torrentrss_data'] = '!!!'.join([x.config_string() for x in torrentRssProviderList]) new_config['GUI'] = {} - new_config['GUI']['gui_name'] = GUI_NAME new_config['GUI']['theme_name'] = THEME_NAME new_config['GUI']['fanart_background'] = FANART_BACKGROUND new_config['GUI']['fanart_background_opacity'] = FANART_BACKGROUND_OPACITY From 3f83b73eb93801cad042f46bdc804bfba71a36e3 Mon Sep 17 00:00:00 2001 From: P0psicles Date: Thu, 6 Oct 2016 18:43:52 +0200 Subject: [PATCH 06/82] Added tvdbapiv2 v1.0. --- lib/tvdbapiv2/__init__.py | 57 + lib/tvdbapiv2/api_client.py | 581 +++++++++ lib/tvdbapiv2/apis/__init__.py | 10 + lib/tvdbapiv2/apis/authentication_api.py | 198 ++++ lib/tvdbapiv2/apis/episodes_api.py | 127 ++ lib/tvdbapiv2/apis/languages_api.py | 198 ++++ lib/tvdbapiv2/apis/search_api.py | 203 ++++ lib/tvdbapiv2/apis/series_api.py | 1051 +++++++++++++++++ lib/tvdbapiv2/apis/updates_api.py | 204 ++++ lib/tvdbapiv2/apis/users_api.py | 748 ++++++++++++ lib/tvdbapiv2/configuration.py | 239 ++++ lib/tvdbapiv2/models/__init__.py | 43 + lib/tvdbapiv2/models/auth.py | 164 +++ lib/tvdbapiv2/models/basic_episode.py | 289 +++++ lib/tvdbapiv2/models/conflict.py | 114 ++ lib/tvdbapiv2/models/episode.py | 814 +++++++++++++ lib/tvdbapiv2/models/episode_data.py | 113 ++ .../models/episode_data_query_params.py | 114 ++ lib/tvdbapiv2/models/filter_keys.py | 114 ++ lib/tvdbapiv2/models/language.py | 189 +++ lib/tvdbapiv2/models/language_data.py | 114 ++ lib/tvdbapiv2/models/links.py | 189 +++ lib/tvdbapiv2/models/not_authorized.py | 114 ++ lib/tvdbapiv2/models/not_found.py | 114 ++ lib/tvdbapiv2/models/search_series.py | 113 ++ lib/tvdbapiv2/models/series.py | 589 +++++++++ lib/tvdbapiv2/models/series_actors.py | 114 ++ lib/tvdbapiv2/models/series_actors_data.py | 314 +++++ lib/tvdbapiv2/models/series_data.py | 113 ++ lib/tvdbapiv2/models/series_episodes.py | 139 +++ lib/tvdbapiv2/models/series_episodes_query.py | 139 +++ .../models/series_episodes_query_params.py | 114 ++ .../models/series_episodes_summary.py | 189 +++ .../models/series_image_query_result.py | 289 +++++ .../models/series_image_query_results.py | 114 ++ lib/tvdbapiv2/models/series_images_count.py | 214 ++++ lib/tvdbapiv2/models/series_images_counts.py | 114 ++ .../models/series_images_query_param.py | 189 +++ .../models/series_images_query_params.py | 114 ++ lib/tvdbapiv2/models/token.py | 114 ++ lib/tvdbapiv2/models/update.py | 139 +++ lib/tvdbapiv2/models/update_data.py | 114 ++ .../models/update_data_query_params.py | 114 ++ lib/tvdbapiv2/models/user.py | 164 +++ lib/tvdbapiv2/models/user_data.py | 113 ++ lib/tvdbapiv2/models/user_favorites.py | 114 ++ lib/tvdbapiv2/models/user_favorites_data.py | 114 ++ lib/tvdbapiv2/models/user_ratings.py | 164 +++ lib/tvdbapiv2/models/user_ratings_data.py | 139 +++ .../models/user_ratings_data_no_links.py | 114 ++ .../user_ratings_data_no_links_empty_array.py | 114 ++ .../models/user_ratings_query_params.py | 114 ++ lib/tvdbapiv2/rest.py | 251 ++++ 53 files changed, 10841 insertions(+) create mode 100644 lib/tvdbapiv2/__init__.py create mode 100644 lib/tvdbapiv2/api_client.py create mode 100644 lib/tvdbapiv2/apis/__init__.py create mode 100644 lib/tvdbapiv2/apis/authentication_api.py create mode 100644 lib/tvdbapiv2/apis/episodes_api.py create mode 100644 lib/tvdbapiv2/apis/languages_api.py create mode 100644 lib/tvdbapiv2/apis/search_api.py create mode 100644 lib/tvdbapiv2/apis/series_api.py create mode 100644 lib/tvdbapiv2/apis/updates_api.py create mode 100644 lib/tvdbapiv2/apis/users_api.py create mode 100644 lib/tvdbapiv2/configuration.py create mode 100644 lib/tvdbapiv2/models/__init__.py create mode 100644 lib/tvdbapiv2/models/auth.py create mode 100644 lib/tvdbapiv2/models/basic_episode.py create mode 100644 lib/tvdbapiv2/models/conflict.py create mode 100644 lib/tvdbapiv2/models/episode.py create mode 100644 lib/tvdbapiv2/models/episode_data.py create mode 100644 lib/tvdbapiv2/models/episode_data_query_params.py create mode 100644 lib/tvdbapiv2/models/filter_keys.py create mode 100644 lib/tvdbapiv2/models/language.py create mode 100644 lib/tvdbapiv2/models/language_data.py create mode 100644 lib/tvdbapiv2/models/links.py create mode 100644 lib/tvdbapiv2/models/not_authorized.py create mode 100644 lib/tvdbapiv2/models/not_found.py create mode 100644 lib/tvdbapiv2/models/search_series.py create mode 100644 lib/tvdbapiv2/models/series.py create mode 100644 lib/tvdbapiv2/models/series_actors.py create mode 100644 lib/tvdbapiv2/models/series_actors_data.py create mode 100644 lib/tvdbapiv2/models/series_data.py create mode 100644 lib/tvdbapiv2/models/series_episodes.py create mode 100644 lib/tvdbapiv2/models/series_episodes_query.py create mode 100644 lib/tvdbapiv2/models/series_episodes_query_params.py create mode 100644 lib/tvdbapiv2/models/series_episodes_summary.py create mode 100644 lib/tvdbapiv2/models/series_image_query_result.py create mode 100644 lib/tvdbapiv2/models/series_image_query_results.py create mode 100644 lib/tvdbapiv2/models/series_images_count.py create mode 100644 lib/tvdbapiv2/models/series_images_counts.py create mode 100644 lib/tvdbapiv2/models/series_images_query_param.py create mode 100644 lib/tvdbapiv2/models/series_images_query_params.py create mode 100644 lib/tvdbapiv2/models/token.py create mode 100644 lib/tvdbapiv2/models/update.py create mode 100644 lib/tvdbapiv2/models/update_data.py create mode 100644 lib/tvdbapiv2/models/update_data_query_params.py create mode 100644 lib/tvdbapiv2/models/user.py create mode 100644 lib/tvdbapiv2/models/user_data.py create mode 100644 lib/tvdbapiv2/models/user_favorites.py create mode 100644 lib/tvdbapiv2/models/user_favorites_data.py create mode 100644 lib/tvdbapiv2/models/user_ratings.py create mode 100644 lib/tvdbapiv2/models/user_ratings_data.py create mode 100644 lib/tvdbapiv2/models/user_ratings_data_no_links.py create mode 100644 lib/tvdbapiv2/models/user_ratings_data_no_links_empty_array.py create mode 100644 lib/tvdbapiv2/models/user_ratings_query_params.py create mode 100644 lib/tvdbapiv2/rest.py diff --git a/lib/tvdbapiv2/__init__.py b/lib/tvdbapiv2/__init__.py new file mode 100644 index 0000000000..bcc513e4c7 --- /dev/null +++ b/lib/tvdbapiv2/__init__.py @@ -0,0 +1,57 @@ +from __future__ import absolute_import + +# import models into sdk package +from .models.token import Token +from .models.auth import Auth +from .models.not_found import NotFound +from .models.not_authorized import NotAuthorized +from .models.conflict import Conflict +from .models.filter_keys import FilterKeys +from .models.series import Series +from .models.episode_data_query_params import EpisodeDataQueryParams +from .models.episode_data import EpisodeData +from .models.episode import Episode +from .models.basic_episode import BasicEpisode +from .models.series_actors_data import SeriesActorsData +from .models.series_actors import SeriesActors +from .models.series_episodes import SeriesEpisodes +from .models.series_episodes_summary import SeriesEpisodesSummary +from .models.series_episodes_query import SeriesEpisodesQuery +from .models.series_episodes_query_params import SeriesEpisodesQueryParams +from .models.series_image_query_result import SeriesImageQueryResult +from .models.series_image_query_results import SeriesImageQueryResults +from .models.series_images_query_param import SeriesImagesQueryParam +from .models.series_images_query_params import SeriesImagesQueryParams +from .models.series_images_counts import SeriesImagesCounts +from .models.series_images_count import SeriesImagesCount +from .models.update_data import UpdateData +from .models.update import Update +from .models.language_data import LanguageData +from .models.language import Language +from .models.update_data_query_params import UpdateDataQueryParams +from .models.links import Links +from .models.user_data import UserData +from .models.user import User +from .models.user_favorites_data import UserFavoritesData +from .models.user_favorites import UserFavorites +from .models.user_ratings_data import UserRatingsData +from .models.user_ratings_data_no_links import UserRatingsDataNoLinks +from .models.user_ratings_data_no_links_empty_array import UserRatingsDataNoLinksEmptyArray +from .models.user_ratings import UserRatings +from .models.user_ratings_query_params import UserRatingsQueryParams + +# import apis into sdk package +from .apis.users_api import UsersApi +from .apis.updates_api import UpdatesApi +from .apis.search_api import SearchApi +from .apis.series_api import SeriesApi +from .apis.episodes_api import EpisodesApi +from .apis.authentication_api import AuthenticationApi +from .apis.languages_api import LanguagesApi + +# import ApiClient +from .api_client import ApiClient + +from .configuration import Configuration + +configuration = Configuration() diff --git a/lib/tvdbapiv2/api_client.py b/lib/tvdbapiv2/api_client.py new file mode 100644 index 0000000000..845d9f550f --- /dev/null +++ b/lib/tvdbapiv2/api_client.py @@ -0,0 +1,581 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + ref: https://github.com/swagger-api/swagger-codegen +""" + +from __future__ import absolute_import, unicode_literals + +from . import models +from .rest import RESTClientObject +from .rest import ApiException + +import os +import re +import sys +import urllib +import json +import mimetypes +import random +import tempfile +import threading + +from datetime import datetime +from datetime import date + +# python 2 and python 3 compatibility library +from six import iteritems + +try: + # for python3 + from urllib.parse import quote +except ImportError: + # for python2 + from urllib import quote + +from .configuration import Configuration + + +class ApiClient(object): + """ + Generic API client for Swagger client library builds. + + Swagger generic API client. This client handles the client- + server communication, and is invariant across implementations. Specifics of + the methods and models for each application are generated from the Swagger + templates. + + NOTE: This class is auto generated by the swagger code generator program. + Ref: https://github.com/swagger-api/swagger-codegen + Do not edit the class manually. + + :param host: The base path for the server to call. + :param header_name: a header to pass when making calls to the API. + :param header_value: a header value to pass when making calls to the API. + """ + def __init__(self, host=None, header_name=None, header_value=None, cookie=None): + + """ + Constructor of the class. + """ + self.rest_client = RESTClientObject() + self.default_headers = {} + if header_name is not None: + self.default_headers[header_name] = header_value + if host is None: + self.host = Configuration().host + else: + self.host = host + self.cookie = cookie + # Set default User-Agent. + self.user_agent = 'Python-Swagger/1.0.0' + + @property + def user_agent(self): + """ + Gets user agent. + """ + return self.default_headers['User-Agent'] + + @user_agent.setter + def user_agent(self, value): + """ + Sets user agent. + """ + self.default_headers['User-Agent'] = value + + def set_default_header(self, header_name, header_value): + self.default_headers[header_name] = header_value + + def __call_api(self, resource_path, method, + path_params=None, query_params=None, header_params=None, + body=None, post_params=None, files=None, + response_type=None, auth_settings=None, callback=None): + + # headers parameters + header_params = header_params or {} + header_params.update(self.default_headers) + if self.cookie: + header_params['Cookie'] = self.cookie + if header_params: + header_params = self.sanitize_for_serialization(header_params) + + # path parameters + if path_params: + path_params = self.sanitize_for_serialization(path_params) + for k, v in iteritems(path_params): + replacement = quote(str(self.to_path_value(v))) + resource_path = resource_path.\ + replace('{' + k + '}', replacement) + + # query parameters + if query_params: + query_params = self.sanitize_for_serialization(query_params) + query_params = {k: self.to_path_value(v) + for k, v in iteritems(query_params)} + + # post parameters + if post_params or files: + post_params = self.prepare_post_parameters(post_params, files) + post_params = self.sanitize_for_serialization(post_params) + + # auth setting + self.update_params_for_auth(header_params, query_params, auth_settings) + + # body + if body: + body = self.sanitize_for_serialization(body) + + # request url + url = self.host + resource_path + + # perform request and return response + response_data = self.request(method, url, + query_params=query_params, + headers=header_params, + post_params=post_params, body=body) + + self.last_response = response_data + + # deserialize response data + if response_type: + deserialized_data = self.deserialize(response_data, response_type) + else: + deserialized_data = None + + if callback: + callback(deserialized_data) + else: + return deserialized_data + + def to_path_value(self, obj): + """ + Takes value and turn it into a string suitable for inclusion in + the path, by url-encoding. + + :param obj: object or string value. + + :return string: quoted value. + """ + if type(obj) == list: + return ','.join(obj) + else: + return str(obj) + + def sanitize_for_serialization(self, obj): + """ + Builds a JSON POST object. + + If obj is None, return None. + If obj is str, int, float, bool, return directly. + If obj is datetime.datetime, datetime.date + convert to string in iso8601 format. + If obj is list, sanitize each element in the list. + If obj is dict, return the dict. + If obj is swagger model, return the properties dict. + + :param obj: The data to serialize. + :return: The serialized form of data. + """ + types = (str, int, float, bool, tuple) + if sys.version_info < (3, 0): + types = types + (unicode,) + if isinstance(obj, type(None)): + return None + elif isinstance(obj, types): + return obj + elif isinstance(obj, list): + return [self.sanitize_for_serialization(sub_obj) + for sub_obj in obj] + elif isinstance(obj, (datetime, date)): + return obj.isoformat() + else: + if isinstance(obj, dict): + obj_dict = obj + else: + # Convert model obj to dict except + # attributes `swagger_types`, `attribute_map` + # and attributes which value is not None. + # Convert attribute name to json key in + # model definition for request. + obj_dict = {obj.attribute_map[attr]: getattr(obj, attr) + for attr, _ in iteritems(obj.swagger_types) + if getattr(obj, attr) is not None} + + return {key: self.sanitize_for_serialization(val) + for key, val in iteritems(obj_dict)} + + def deserialize(self, response, response_type): + """ + Deserializes response into an object. + + :param response: RESTResponse object to be deserialized. + :param response_type: class literal for + deserialzied object, or string of class name. + + :return: deserialized object. + """ + # handle file downloading + # save response body into a tmp file and return the instance + response_type = response_type + if "file" == response_type: + return self.__deserialize_file(response) + + # fetch data from response object + try: + data = json.loads(response.data) + except ValueError: + data = response.data + + return self.__deserialize(data, response_type) + + def __deserialize(self, data, klass): + """ + Deserializes dict, list, str into an object. + + :param data: dict, list or str. + :param klass: class literal, or string of class name. + + :return: object. + """ + if data is None: + return None + + if type(klass) in (str, unicode): + if klass.startswith('list['): + sub_kls = re.match('list\[(.*)\]', klass).group(1) + return [self.__deserialize(sub_data, sub_kls) + for sub_data in data] + + if klass.startswith('dict('): + sub_kls = re.match('dict\(([^,]*), (.*)\)', klass).group(2) + return {k: self.__deserialize(v, sub_kls) + for k, v in iteritems(data)} + + # convert str to class + # for native types + if klass in ['int', 'float', 'str', 'bool', + 'date', 'datetime', 'object', 'unicode']: + klass = eval(klass) + # for model types + else: + klass = eval('models.' + klass) + + if klass in [int, float, str, bool, unicode]: + return self.__deserialize_primitive(data, klass) + elif klass == object: + return self.__deserialize_object(data) + elif klass == date: + return self.__deserialize_date(data) + elif klass == datetime: + return self.__deserialize_datatime(data) + else: + return self.__deserialize_model(data, klass) + + def call_api(self, resource_path, method, + path_params=None, query_params=None, header_params=None, + body=None, post_params=None, files=None, + response_type=None, auth_settings=None, callback=None): + """ + Makes the HTTP request (synchronous) and return the deserialized data. + To make an async request, define a function for callback. + + :param resource_path: Path to method endpoint. + :param method: Method to call. + :param path_params: Path parameters in the url. + :param query_params: Query parameters in the url. + :param header_params: Header parameters to be + placed in the request header. + :param body: Request body. + :param post_params dict: Request post form parameters, + for `application/x-www-form-urlencoded`, `multipart/form-data`. + :param auth_settings list: Auth Settings names for the request. + :param response: Response data type. + :param files dict: key -> filename, value -> filepath, + for `multipart/form-data`. + :param callback function: Callback function for asynchronous request. + If provide this parameter, + the request will be called asynchronously. + :return: + If provide parameter callback, + the request will be called asynchronously. + The method will return the request thread. + If parameter callback is None, + then the method will return the response directly. + """ + if callback is None: + return self.__call_api(resource_path, method, + path_params, query_params, header_params, + body, post_params, files, + response_type, auth_settings, callback) + else: + thread = threading.Thread(target=self.__call_api, + args=(resource_path, method, + path_params, query_params, + header_params, body, + post_params, files, + response_type, auth_settings, + callback)) + thread.start() + return thread + + def request(self, method, url, query_params=None, headers=None, + post_params=None, body=None): + """ + Makes the HTTP request using RESTClient. + """ + if method == "GET": + return self.rest_client.GET(url, + query_params=query_params, + headers=headers) + elif method == "HEAD": + return self.rest_client.HEAD(url, + query_params=query_params, + headers=headers) + elif method == "OPTIONS": + return self.rest_client.OPTIONS(url, + query_params=query_params, + headers=headers, + post_params=post_params, + body=body) + elif method == "POST": + return self.rest_client.POST(url, + query_params=query_params, + headers=headers, + post_params=post_params, + body=body) + elif method == "PUT": + return self.rest_client.PUT(url, + query_params=query_params, + headers=headers, + post_params=post_params, + body=body) + elif method == "PATCH": + return self.rest_client.PATCH(url, + query_params=query_params, + headers=headers, + post_params=post_params, + body=body) + elif method == "DELETE": + return self.rest_client.DELETE(url, + query_params=query_params, + headers=headers) + else: + raise ValueError( + "http method must be `GET`, `HEAD`," + " `POST`, `PATCH`, `PUT` or `DELETE`." + ) + + def prepare_post_parameters(self, post_params=None, files=None): + """ + Builds form parameters. + + :param post_params: Normal form parameters. + :param files: File parameters. + :return: Form parameters with files. + """ + params = {} + + if post_params: + params.update(post_params) + + if files: + for k, v in iteritems(files): + if not v: + continue + + with open(v, 'rb') as f: + filename = os.path.basename(f.name) + filedata = f.read() + mimetype = mimetypes.\ + guess_type(filename)[0] or 'application/octet-stream' + params[k] = tuple([filename, filedata, mimetype]) + + return params + + def select_header_accept(self, accepts): + """ + Returns `Accept` based on an array of accepts provided. + + :param accepts: List of headers. + :return: Accept (e.g. application/json). + """ + if not accepts: + return + + accepts = list(map(lambda x: x.lower(), accepts)) + + if 'application/json' in accepts: + return 'application/json' + else: + return ', '.join(accepts) + + def select_header_content_type(self, content_types): + """ + Returns `Content-Type` based on an array of content_types provided. + + :param content_types: List of content-types. + :return: Content-Type (e.g. application/json). + """ + if not content_types: + return 'application/json' + + content_types = list(map(lambda x: x.lower(), content_types)) + + if 'application/json' in content_types: + return 'application/json' + else: + return content_types[0] + + def update_params_for_auth(self, headers, querys, auth_settings): + """ + Updates header and query params based on authentication setting. + + :param headers: Header parameters dict to be updated. + :param querys: Query parameters dict to be updated. + :param auth_settings: Authentication setting identifiers list. + """ + config = Configuration() + + if not auth_settings: + return + + for auth in auth_settings: + auth_setting = config.auth_settings().get(auth) + if auth_setting: + if not auth_setting['value']: + continue + elif auth_setting['in'] == 'header': + headers[auth_setting['key']] = auth_setting['value'] + elif auth_setting['in'] == 'query': + querys[auth_setting['key']] = auth_setting['value'] + else: + raise ValueError( + 'Authentication token must be in `query` or `header`' + ) + + def __deserialize_file(self, response): + """ + Saves response body into a file in a temporary folder, + using the filename from the `Content-Disposition` header if provided. + + :param response: RESTResponse. + :return: file path. + """ + config = Configuration() + + fd, path = tempfile.mkstemp(dir=config.temp_folder_path) + os.close(fd) + os.remove(path) + + content_disposition = response.getheader("Content-Disposition") + if content_disposition: + filename = re.\ + search(r'filename=[\'"]?([^\'"\s]+)[\'"]?', content_disposition).\ + group(1) + path = os.path.join(os.path.dirname(path), filename) + + with open(path, "w") as f: + f.write(response.data) + + return path + + def __deserialize_primitive(self, data, klass): + """ + Deserializes string to primitive type. + + :param data: str. + :param klass: class literal. + + :return: int, float, str, bool. + """ + try: + value = klass(data) + except UnicodeEncodeError: + value = unicode(data) + except TypeError: + value = data + except ValueError: + pass + return value + + def __deserialize_object(self, value): + """ + Return a original value. + + :return: object. + """ + return value + + def __deserialize_date(self, string): + """ + Deserializes string to date. + + :param string: str. + :return: date. + """ + try: + from dateutil.parser import parse + return parse(string).date() + except ImportError: + return string + except ValueError: + raise ApiException( + status=0, + reason="Failed to parse `{0}` into a date object" + .format(string) + ) + + def __deserialize_datatime(self, string): + """ + Deserializes string to datetime. + + The string should be in iso8601 datetime format. + + :param string: str. + :return: datetime. + """ + try: + from dateutil.parser import parse + return parse(string) + except ImportError: + return string + except ValueError: + raise ApiException( + status=0, + reason="Failed to parse `{0}` into a datetime object". + format(string) + ) + + def __deserialize_model(self, data, klass): + """ + Deserializes list or dict to model. + + :param data: dict, list. + :param klass: class literal. + :return: model object. + """ + instance = klass() + + for attr, attr_type in iteritems(instance.swagger_types): + if data is not None \ + and instance.attribute_map[attr] in data\ + and isinstance(data, (list, dict)): + value = data[instance.attribute_map[attr]] + setattr(instance, attr, self.__deserialize(value, attr_type)) + + return instance diff --git a/lib/tvdbapiv2/apis/__init__.py b/lib/tvdbapiv2/apis/__init__.py new file mode 100644 index 0000000000..bf230f9fa2 --- /dev/null +++ b/lib/tvdbapiv2/apis/__init__.py @@ -0,0 +1,10 @@ +from __future__ import absolute_import + +# import apis into api package +from .users_api import UsersApi +from .updates_api import UpdatesApi +from .search_api import SearchApi +from .series_api import SeriesApi +from .episodes_api import EpisodesApi +from .authentication_api import AuthenticationApi +from .languages_api import LanguagesApi diff --git a/lib/tvdbapiv2/apis/authentication_api.py b/lib/tvdbapiv2/apis/authentication_api.py new file mode 100644 index 0000000000..44b6c89043 --- /dev/null +++ b/lib/tvdbapiv2/apis/authentication_api.py @@ -0,0 +1,198 @@ +# coding: utf-8 + +""" +AuthenticationApi.py +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +""" + +from __future__ import absolute_import, unicode_literals + +import sys +import os + +# python 2 and python 3 compatibility library +from six import iteritems + +from ..configuration import Configuration +from ..api_client import ApiClient + + +class AuthenticationApi(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + Ref: https://github.com/swagger-api/swagger-codegen + """ + + def __init__(self, api_client=None): + config = Configuration() + if api_client: + self.api_client = api_client + else: + if not config.api_client: + config.api_client = ApiClient() + self.api_client = config.api_client + + def login_post(self, authentication_string, **kwargs): + """ + + Returns a session token to be included in the rest of the requests. Note that API key authentication is required for all subsequent requests and user auth is required for routes in the `User` section + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please define a `callback` function + to be invoked when receiving the response. + >>> def callback_function(response): + >>> pprint(response) + >>> + >>> thread = api.login_post(authentication_string, callback=callback_function) + + :param callback function: The callback function + for asynchronous request. (optional) + :param Auth authentication_string: JSON string containing your authentication details. (required) + :return: Token + If the method is called asynchronously, + returns the request thread. + """ + + all_params = ['authentication_string'] + all_params.append('callback') + + params = locals() + for key, val in iteritems(params['kwargs']): + if key not in all_params: + raise TypeError( + "Got an unexpected keyword argument '%s'" + " to method login_post" % key + ) + params[key] = val + del params['kwargs'] + + # verify the required parameter 'authentication_string' is set + if ('authentication_string' not in params) or (params['authentication_string'] is None): + raise ValueError("Missing the required parameter `authentication_string` when calling `login_post`") + + resource_path = '/login'.replace('{format}', 'json') + method = 'POST' + + path_params = {} + + query_params = {} + + header_params = {} + + form_params = {} + files = {} + + body_params = None + if 'authentication_string' in params: + body_params = params['authentication_string'] + + # HTTP header `Accept` + header_params['Accept'] = self.api_client.\ + select_header_accept(['application/json']) + if not header_params['Accept']: + del header_params['Accept'] + + # HTTP header `Content-Type` + header_params['Content-Type'] = self.api_client.\ + select_header_content_type(['application/json']) + + # Authentication setting + auth_settings = [] + + response = self.api_client.call_api(resource_path, method, + path_params, + query_params, + header_params, + body=body_params, + post_params=form_params, + files=files, + response_type='Token', + auth_settings=auth_settings, + callback=params.get('callback')) + return response + + def refresh_token_get(self, **kwargs): + """ + + Refreshes your current, valid JWT token and returns a new token. Hit this route so that you do not have to post to `/login` with your API key and credentials once you have already been authenticated. + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please define a `callback` function + to be invoked when receiving the response. + >>> def callback_function(response): + >>> pprint(response) + >>> + >>> thread = api.refresh_token_get(callback=callback_function) + + :param callback function: The callback function + for asynchronous request. (optional) + :return: Auth + If the method is called asynchronously, + returns the request thread. + """ + + all_params = [] + all_params.append('callback') + + params = locals() + for key, val in iteritems(params['kwargs']): + if key not in all_params: + raise TypeError( + "Got an unexpected keyword argument '%s'" + " to method refresh_token_get" % key + ) + params[key] = val + del params['kwargs'] + + + resource_path = '/refresh_token'.replace('{format}', 'json') + method = 'GET' + + path_params = {} + + query_params = {} + + header_params = {} + + form_params = {} + files = {} + + body_params = None + + # HTTP header `Accept` + header_params['Accept'] = self.api_client.\ + select_header_accept(['application/json']) + if not header_params['Accept']: + del header_params['Accept'] + + # HTTP header `Content-Type` + header_params['Content-Type'] = self.api_client.\ + select_header_content_type(['application/json']) + + # Authentication setting + auth_settings = ['jwtToken'] + + response = self.api_client.call_api(resource_path, method, + path_params, + query_params, + header_params, + body=body_params, + post_params=form_params, + files=files, + response_type='Auth', + auth_settings=auth_settings, + callback=params.get('callback')) + return response diff --git a/lib/tvdbapiv2/apis/episodes_api.py b/lib/tvdbapiv2/apis/episodes_api.py new file mode 100644 index 0000000000..f3b5f6e377 --- /dev/null +++ b/lib/tvdbapiv2/apis/episodes_api.py @@ -0,0 +1,127 @@ +# coding: utf-8 + +""" +EpisodesApi.py +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +""" + +from __future__ import absolute_import, unicode_literals + +import sys +import os + +# python 2 and python 3 compatibility library +from six import iteritems + +from ..configuration import Configuration +from ..api_client import ApiClient + + +class EpisodesApi(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + Ref: https://github.com/swagger-api/swagger-codegen + """ + + def __init__(self, api_client=None): + config = Configuration() + if api_client: + self.api_client = api_client + else: + if not config.api_client: + config.api_client = ApiClient() + self.api_client = config.api_client + + def episodes_id_get(self, id, **kwargs): + """ + Returns the full information for a given episode id. + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please define a `callback` function + to be invoked when receiving the response. + >>> def callback_function(response): + >>> pprint(response) + >>> + >>> thread = api.episodes_id_get(id, callback=callback_function) + + :param callback function: The callback function + for asynchronous request. (optional) + :param int id: ID of the episode (required) + :param str accept_language: Records are returned with the Episode name and Overview in the desired language, if it exists. If there is no translation for the given language, then the record is still returned but with empty values for the translated fields. + :return: EpisodeData + If the method is called asynchronously, + returns the request thread. + """ + + all_params = ['id', 'accept_language'] + all_params.append('callback') + + params = locals() + for key, val in iteritems(params['kwargs']): + if key not in all_params: + raise TypeError( + "Got an unexpected keyword argument '%s'" + " to method episodes_id_get" % key + ) + params[key] = val + del params['kwargs'] + + # verify the required parameter 'id' is set + if ('id' not in params) or (params['id'] is None): + raise ValueError("Missing the required parameter `id` when calling `episodes_id_get`") + + resource_path = '/episodes/{id}'.replace('{format}', 'json') + method = 'GET' + + path_params = {} + if 'id' in params: + path_params['id'] = params['id'] + + query_params = {} + + header_params = {} + if 'accept_language' in params: + header_params['Accept-Language'] = params['accept_language'] + + form_params = {} + files = {} + + body_params = None + + # HTTP header `Accept` + header_params['Accept'] = self.api_client.\ + select_header_accept(['application/json']) + if not header_params['Accept']: + del header_params['Accept'] + + # HTTP header `Content-Type` + header_params['Content-Type'] = self.api_client.\ + select_header_content_type(['application/json']) + + # Authentication setting + auth_settings = ['jwtToken'] + + response = self.api_client.call_api(resource_path, method, + path_params, + query_params, + header_params, + body=body_params, + post_params=form_params, + files=files, + response_type='EpisodeData', + auth_settings=auth_settings, + callback=params.get('callback')) + return response diff --git a/lib/tvdbapiv2/apis/languages_api.py b/lib/tvdbapiv2/apis/languages_api.py new file mode 100644 index 0000000000..d37d683cf3 --- /dev/null +++ b/lib/tvdbapiv2/apis/languages_api.py @@ -0,0 +1,198 @@ +# coding: utf-8 + +""" +LanguagesApi.py +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +""" + +from __future__ import absolute_import, unicode_literals + +import sys +import os + +# python 2 and python 3 compatibility library +from six import iteritems + +from ..configuration import Configuration +from ..api_client import ApiClient + + +class LanguagesApi(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + Ref: https://github.com/swagger-api/swagger-codegen + """ + + def __init__(self, api_client=None): + config = Configuration() + if api_client: + self.api_client = api_client + else: + if not config.api_client: + config.api_client = ApiClient() + self.api_client = config.api_client + + def languages_get(self, **kwargs): + """ + + All available languages. These language abbreviations can be used in the `Accept-Language` header for routes that return translation records. + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please define a `callback` function + to be invoked when receiving the response. + >>> def callback_function(response): + >>> pprint(response) + >>> + >>> thread = api.languages_get(callback=callback_function) + + :param callback function: The callback function + for asynchronous request. (optional) + :return: LanguageData + If the method is called asynchronously, + returns the request thread. + """ + + all_params = [] + all_params.append('callback') + + params = locals() + for key, val in iteritems(params['kwargs']): + if key not in all_params: + raise TypeError( + "Got an unexpected keyword argument '%s'" + " to method languages_get" % key + ) + params[key] = val + del params['kwargs'] + + + resource_path = '/languages'.replace('{format}', 'json') + method = 'GET' + + path_params = {} + + query_params = {} + + header_params = {} + + form_params = {} + files = {} + + body_params = None + + # HTTP header `Accept` + header_params['Accept'] = self.api_client.\ + select_header_accept(['application/json']) + if not header_params['Accept']: + del header_params['Accept'] + + # HTTP header `Content-Type` + header_params['Content-Type'] = self.api_client.\ + select_header_content_type(['application/json']) + + # Authentication setting + auth_settings = ['jwtToken'] + + response = self.api_client.call_api(resource_path, method, + path_params, + query_params, + header_params, + body=body_params, + post_params=form_params, + files=files, + response_type='LanguageData', + auth_settings=auth_settings, + callback=params.get('callback')) + return response + + def languages_id_get(self, id, **kwargs): + """ + + Information about a particular language, given the language ID. + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please define a `callback` function + to be invoked when receiving the response. + >>> def callback_function(response): + >>> pprint(response) + >>> + >>> thread = api.languages_id_get(id, callback=callback_function) + + :param callback function: The callback function + for asynchronous request. (optional) + :param str id: ID of the language (required) + :return: Language + If the method is called asynchronously, + returns the request thread. + """ + + all_params = ['id'] + all_params.append('callback') + + params = locals() + for key, val in iteritems(params['kwargs']): + if key not in all_params: + raise TypeError( + "Got an unexpected keyword argument '%s'" + " to method languages_id_get" % key + ) + params[key] = val + del params['kwargs'] + + # verify the required parameter 'id' is set + if ('id' not in params) or (params['id'] is None): + raise ValueError("Missing the required parameter `id` when calling `languages_id_get`") + + resource_path = '/languages/{id}'.replace('{format}', 'json') + method = 'GET' + + path_params = {} + if 'id' in params: + path_params['id'] = params['id'] + + query_params = {} + + header_params = {} + + form_params = {} + files = {} + + body_params = None + + # HTTP header `Accept` + header_params['Accept'] = self.api_client.\ + select_header_accept(['application/json']) + if not header_params['Accept']: + del header_params['Accept'] + + # HTTP header `Content-Type` + header_params['Content-Type'] = self.api_client.\ + select_header_content_type(['application/json']) + + # Authentication setting + auth_settings = ['jwtToken'] + + response = self.api_client.call_api(resource_path, method, + path_params, + query_params, + header_params, + body=body_params, + post_params=form_params, + files=files, + response_type='Language', + auth_settings=auth_settings, + callback=params.get('callback')) + return response diff --git a/lib/tvdbapiv2/apis/search_api.py b/lib/tvdbapiv2/apis/search_api.py new file mode 100644 index 0000000000..bc3670a7ff --- /dev/null +++ b/lib/tvdbapiv2/apis/search_api.py @@ -0,0 +1,203 @@ +# coding: utf-8 + +""" +SearchApi.py +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +""" + +from __future__ import absolute_import, unicode_literals + +import sys +import os + +# python 2 and python 3 compatibility library +from six import iteritems + +from ..configuration import Configuration +from ..api_client import ApiClient + + +class SearchApi(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + Ref: https://github.com/swagger-api/swagger-codegen + """ + + def __init__(self, api_client=None): + config = Configuration() + if api_client: + self.api_client = api_client + else: + if not config.api_client: + config.api_client = ApiClient() + self.api_client = config.api_client + + def search_series_get(self, **kwargs): + """ + + Allows the user to search for a series based on the following parameters. + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please define a `callback` function + to be invoked when receiving the response. + >>> def callback_function(response): + >>> pprint(response) + >>> + >>> thread = api.search_series_get(callback=callback_function) + + :param callback function: The callback function + for asynchronous request. (optional) + :param str name: Name of the series to search for. + :param str imdb_id: IMDB id of the episode + :param str zap2it_id: Zap2it ID of the series to search for. + :param str accept_language: Records are returned with the Episode name and Overview in the desired language, if it exists. If there is no translation for the given language, then the record is still returned but with empty values for the translated fields. + :return: EpisodeData + If the method is called asynchronously, + returns the request thread. + """ + + all_params = ['name', 'imdb_id', 'zap2it_id', 'accept_language'] + all_params.append('callback') + + params = locals() + for key, val in iteritems(params['kwargs']): + if key not in all_params: + raise TypeError( + "Got an unexpected keyword argument '%s'" + " to method search_series_get" % key + ) + params[key] = val + del params['kwargs'] + + resource_path = '/search/series'.replace('{format}', 'json') + method = 'GET' + + path_params = {} + + query_params = {} + if 'name' in params: + query_params['name'] = params['name'] + print('search called on name: %s' % query_params['name']) + if 'imdb_id' in params: + query_params['imdbId'] = params['imdb_id'] + if 'zap2it_id' in params: + query_params['zap2itId'] = params['zap2it_id'] + + header_params = {} + if 'accept_language' in params: + header_params['Accept-Language'] = params['accept_language'] + + form_params = {} + files = {} + + body_params = None + + # HTTP header `Accept` + header_params['Accept'] = self.api_client.\ + select_header_accept(['application/json']) + if not header_params['Accept']: + del header_params['Accept'] + + # HTTP header `Content-Type` + header_params['Content-Type'] = self.api_client.\ + select_header_content_type(['application/json']) + + # Authentication setting + auth_settings = ['jwtToken'] + + response = self.api_client.call_api(resource_path, method, + path_params, + query_params, + header_params, + body=body_params, + post_params=form_params, + files=files, + response_type='SearchSeries', + auth_settings=auth_settings, + callback=params.get('callback')) + return response + + def search_series_params_get(self, **kwargs): + """ + Returns an array of parameters to query by in the `/search/series` route. + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please define a `callback` function + to be invoked when receiving the response. + >>> def callback_function(response): + >>> pprint(response) + >>> + >>> thread = api.search_series_params_get(callback=callback_function) + + :param callback function: The callback function + for asynchronous request. (optional) + :return: EpisodeDataQueryParams + If the method is called asynchronously, + returns the request thread. + """ + + all_params = [] + all_params.append('callback') + + params = locals() + for key, val in iteritems(params['kwargs']): + if key not in all_params: + raise TypeError( + "Got an unexpected keyword argument '%s'" + " to method search_series_params_get" % key + ) + params[key] = val + del params['kwargs'] + + + resource_path = '/search/series/params'.replace('{format}', 'json') + method = 'GET' + + path_params = {} + + query_params = {} + + header_params = {} + + form_params = {} + files = {} + + body_params = None + + # HTTP header `Accept` + header_params['Accept'] = self.api_client.\ + select_header_accept(['application/json']) + if not header_params['Accept']: + del header_params['Accept'] + + # HTTP header `Content-Type` + header_params['Content-Type'] = self.api_client.\ + select_header_content_type(['application/json']) + + # Authentication setting + auth_settings = ['jwtToken'] + + response = self.api_client.call_api(resource_path, method, + path_params, + query_params, + header_params, + body=body_params, + post_params=form_params, + files=files, + response_type='EpisodeDataQueryParams', + auth_settings=auth_settings, + callback=params.get('callback')) + return response diff --git a/lib/tvdbapiv2/apis/series_api.py b/lib/tvdbapiv2/apis/series_api.py new file mode 100644 index 0000000000..aa22bec635 --- /dev/null +++ b/lib/tvdbapiv2/apis/series_api.py @@ -0,0 +1,1051 @@ +# coding: utf-8 + +""" +SeriesApi.py +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +""" + +from __future__ import absolute_import, unicode_literals + +import sys +import os + +# python 2 and python 3 compatibility library +from six import iteritems + +from ..configuration import Configuration +from ..api_client import ApiClient + + +class SeriesApi(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + Ref: https://github.com/swagger-api/swagger-codegen + """ + + def __init__(self, api_client=None): + config = Configuration() + if api_client: + self.api_client = api_client + else: + if not config.api_client: + config.api_client = ApiClient() + self.api_client = config.api_client + + def series_id_get(self, id, **kwargs): + """ + Returns a series records that contains all information known about a particular series id. + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please define a `callback` function + to be invoked when receiving the response. + >>> def callback_function(response): + >>> pprint(response) + >>> + >>> thread = api.series_id_get(id, callback=callback_function) + + :param callback function: The callback function + for asynchronous request. (optional) + :param int id: ID of the series (required) + :param str accept_language: Records are returned with the Episode name and Overview in the desired language, if it exists. If there is no translation for the given language, then the record is still returned but with empty values for the translated fields. + :return: Series + If the method is called asynchronously, + returns the request thread. + """ + + all_params = ['id', 'accept_language'] + all_params.append('callback') + + params = locals() + for key, val in iteritems(params['kwargs']): + if key not in all_params: + raise TypeError( + "Got an unexpected keyword argument '%s'" + " to method series_id_get" % key + ) + params[key] = val + del params['kwargs'] + + # verify the required parameter 'id' is set + if ('id' not in params) or (params['id'] is None): + raise ValueError("Missing the required parameter `id` when calling `series_id_get`") + + resource_path = '/series/{id}'.replace('{format}', 'json') + method = 'GET' + + path_params = {} + if 'id' in params: + path_params['id'] = params['id'] + + query_params = {} + + header_params = {} + if 'accept_language' in params: + header_params['Accept-Language'] = params['accept_language'] + + form_params = {} + files = {} + + body_params = None + + # HTTP header `Accept` + header_params['Accept'] = self.api_client.\ + select_header_accept(['application/json']) + if not header_params['Accept']: + del header_params['Accept'] + + # HTTP header `Content-Type` + header_params['Content-Type'] = self.api_client.\ + select_header_content_type(['application/json']) + + # Authentication setting + auth_settings = ['jwtToken'] + + response = self.api_client.call_api(resource_path, method, + path_params, + query_params, + header_params, + body=body_params, + post_params=form_params, + files=files, + response_type='SeriesData', + auth_settings=auth_settings, + callback=params.get('callback')) + return response + + def series_id_head(self, id, **kwargs): + """ + Returns header information only about the given series ID. + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please define a `callback` function + to be invoked when receiving the response. + >>> def callback_function(response): + >>> pprint(response) + >>> + >>> thread = api.series_id_head(id, callback=callback_function) + + :param callback function: The callback function + for asynchronous request. (optional) + :param int id: ID of the series (required) + :param str accept_language: Records are returned with the Episode name and Overview in the desired language, if it exists. If there is no translation for the given language, then the record is still returned but with empty values for the translated fields. + :return: None + If the method is called asynchronously, + returns the request thread. + """ + + all_params = ['id', 'accept_language'] + all_params.append('callback') + + params = locals() + for key, val in iteritems(params['kwargs']): + if key not in all_params: + raise TypeError( + "Got an unexpected keyword argument '%s'" + " to method series_id_head" % key + ) + params[key] = val + del params['kwargs'] + + # verify the required parameter 'id' is set + if ('id' not in params) or (params['id'] is None): + raise ValueError("Missing the required parameter `id` when calling `series_id_head`") + + resource_path = '/series/{id}'.replace('{format}', 'json') + method = 'HEAD' + + path_params = {} + if 'id' in params: + path_params['id'] = params['id'] + + query_params = {} + + header_params = {} + if 'accept_language' in params: + header_params['Accept-Language'] = params['accept_language'] + + form_params = {} + files = {} + + body_params = None + + # HTTP header `Accept` + header_params['Accept'] = self.api_client.\ + select_header_accept(['application/json']) + if not header_params['Accept']: + del header_params['Accept'] + + # HTTP header `Content-Type` + header_params['Content-Type'] = self.api_client.\ + select_header_content_type(['application/json']) + + # Authentication setting + auth_settings = ['jwtToken'] + + response = self.api_client.call_api(resource_path, method, + path_params, + query_params, + header_params, + body=body_params, + post_params=form_params, + files=files, + response_type=None, + auth_settings=auth_settings, + callback=params.get('callback')) + return response + + def series_id_actors_get(self, id, **kwargs): + """ + Returns actors for the given series id + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please define a `callback` function + to be invoked when receiving the response. + >>> def callback_function(response): + >>> pprint(response) + >>> + >>> thread = api.series_id_actors_get(id, callback=callback_function) + + :param callback function: The callback function + for asynchronous request. (optional) + :param int id: ID of the series (required) + :return: SeriesActors + If the method is called asynchronously, + returns the request thread. + """ + + all_params = ['id'] + all_params.append('callback') + + params = locals() + for key, val in iteritems(params['kwargs']): + if key not in all_params: + raise TypeError( + "Got an unexpected keyword argument '%s'" + " to method series_id_actors_get" % key + ) + params[key] = val + del params['kwargs'] + + # verify the required parameter 'id' is set + if ('id' not in params) or (params['id'] is None): + raise ValueError("Missing the required parameter `id` when calling `series_id_actors_get`") + + resource_path = '/series/{id}/actors'.replace('{format}', 'json') + method = 'GET' + + path_params = {} + if 'id' in params: + path_params['id'] = params['id'] + + query_params = {} + + header_params = {} + + form_params = {} + files = {} + + body_params = None + + # HTTP header `Accept` + header_params['Accept'] = self.api_client.\ + select_header_accept(['application/json']) + if not header_params['Accept']: + del header_params['Accept'] + + # HTTP header `Content-Type` + header_params['Content-Type'] = self.api_client.\ + select_header_content_type(['application/json']) + + # Authentication setting + auth_settings = ['jwtToken'] + + response = self.api_client.call_api(resource_path, method, + path_params, + query_params, + header_params, + body=body_params, + post_params=form_params, + files=files, + response_type='SeriesActors', + auth_settings=auth_settings, + callback=params.get('callback')) + return response + + def series_id_episodes_get(self, id, **kwargs): + """ + + All episodes for a given series. Paginated with 100 results per page. + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please define a `callback` function + to be invoked when receiving the response. + >>> def callback_function(response): + >>> pprint(response) + >>> + >>> thread = api.series_id_episodes_get(id, callback=callback_function) + + :param callback function: The callback function + for asynchronous request. (optional) + :param int id: ID of the series (required) + :param str page: Page of results to fetch. Defaults to page 1 if not provided. + :return: SeriesEpisodes + If the method is called asynchronously, + returns the request thread. + """ + + all_params = ['id', 'page'] + all_params.append('callback') + + params = locals() + for key, val in iteritems(params['kwargs']): + if key not in all_params: + raise TypeError( + "Got an unexpected keyword argument '%s'" + " to method series_id_episodes_get" % key + ) + params[key] = val + del params['kwargs'] + + # verify the required parameter 'id' is set + if ('id' not in params) or (params['id'] is None): + raise ValueError("Missing the required parameter `id` when calling `series_id_episodes_get`") + + resource_path = '/series/{id}/episodes'.replace('{format}', 'json') + method = 'GET' + + path_params = {} + if 'id' in params: + path_params['id'] = params['id'] + + query_params = {} + if 'page' in params: + query_params['page'] = params['page'] + + header_params = {} + + form_params = {} + files = {} + + body_params = None + + # HTTP header `Accept` + header_params['Accept'] = self.api_client.\ + select_header_accept(['application/json']) + if not header_params['Accept']: + del header_params['Accept'] + + # HTTP header `Content-Type` + header_params['Content-Type'] = self.api_client.\ + select_header_content_type(['application/json']) + + # Authentication setting + auth_settings = ['jwtToken'] + + response = self.api_client.call_api(resource_path, method, + path_params, + query_params, + header_params, + body=body_params, + post_params=form_params, + files=files, + response_type='SeriesEpisodes', + auth_settings=auth_settings, + callback=params.get('callback')) + return response + + def series_id_episodes_query_get(self, id, **kwargs): + """ + This route allows the user to query against episodes for the given series. The response is a paginated array of episode records that have been filtered down to basic information. + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please define a `callback` function + to be invoked when receiving the response. + >>> def callback_function(response): + >>> pprint(response) + >>> + >>> thread = api.series_id_episodes_query_get(id, callback=callback_function) + + :param callback function: The callback function + for asynchronous request. (optional) + :param int id: ID of the series (required) + :param str absolute_number: Absolute number of the episode + :param str aired_season: Aired season number + :param str aired_episode: Aired episode number + :param str dvd_season: DVD season number + :param str dvd_episode: DVD episode number + :param str imdb_id: IMDB id of the episode + :param str page: Page of results to fetch. Defaults to page 1 if not provided. + :param str accept_language: Records are returned with the Episode name and Overview in the desired language, if it exists. If there is no translation for the given language, then the record is still returned but with empty values for the translated fields. + :return: SeriesEpisodesQuery + If the method is called asynchronously, + returns the request thread. + """ + + all_params = ['id', 'absolute_number', 'aired_season', 'aired_episode', 'dvd_season', 'dvd_episode', 'imdb_id', 'page', 'accept_language'] + all_params.append('callback') + + params = locals() + for key, val in iteritems(params['kwargs']): + if key not in all_params: + raise TypeError( + "Got an unexpected keyword argument '%s'" + " to method series_id_episodes_query_get" % key + ) + params[key] = val + del params['kwargs'] + + # verify the required parameter 'id' is set + if ('id' not in params) or (params['id'] is None): + raise ValueError("Missing the required parameter `id` when calling `series_id_episodes_query_get`") + + resource_path = '/series/{id}/episodes/query'.replace('{format}', 'json') + method = 'GET' + + path_params = {} + if 'id' in params: + path_params['id'] = params['id'] + + query_params = {} + if 'absolute_number' in params: + query_params['absoluteNumber'] = params['absolute_number'] + if 'aired_season' in params: + query_params['airedSeason'] = params['aired_season'] + if 'aired_episode' in params: + query_params['airedEpisode'] = params['aired_episode'] + if 'dvd_season' in params: + query_params['dvdSeason'] = params['dvd_season'] + if 'dvd_episode' in params: + query_params['dvdEpisode'] = params['dvd_episode'] + if 'imdb_id' in params: + query_params['imdbId'] = params['imdb_id'] + if 'page' in params: + query_params['page'] = params['page'] + + header_params = {} + if 'accept_language' in params: + header_params['Accept-Language'] = params['accept_language'] + + form_params = {} + files = {} + + body_params = None + + # HTTP header `Accept` + header_params['Accept'] = self.api_client.\ + select_header_accept(['application/json']) + if not header_params['Accept']: + del header_params['Accept'] + + # HTTP header `Content-Type` + header_params['Content-Type'] = self.api_client.\ + select_header_content_type(['application/json']) + + # Authentication setting + auth_settings = ['jwtToken'] + + response = self.api_client.call_api(resource_path, method, + path_params, + query_params, + header_params, + body=body_params, + post_params=form_params, + files=files, + response_type='SeriesEpisodesQuery', + auth_settings=auth_settings, + callback=params.get('callback')) + return response + + def series_id_episodes_query_params_get(self, id, **kwargs): + """ + Returns the allowed query keys for the `/series/{id}/episodes/query` route + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please define a `callback` function + to be invoked when receiving the response. + >>> def callback_function(response): + >>> pprint(response) + >>> + >>> thread = api.series_id_episodes_query_params_get(id, callback=callback_function) + + :param callback function: The callback function + for asynchronous request. (optional) + :param int id: ID of the series (required) + :return: SeriesEpisodesQueryParams + If the method is called asynchronously, + returns the request thread. + """ + + all_params = ['id'] + all_params.append('callback') + + params = locals() + for key, val in iteritems(params['kwargs']): + if key not in all_params: + raise TypeError( + "Got an unexpected keyword argument '%s'" + " to method series_id_episodes_query_params_get" % key + ) + params[key] = val + del params['kwargs'] + + # verify the required parameter 'id' is set + if ('id' not in params) or (params['id'] is None): + raise ValueError("Missing the required parameter `id` when calling `series_id_episodes_query_params_get`") + + resource_path = '/series/{id}/episodes/query/params'.replace('{format}', 'json') + method = 'GET' + + path_params = {} + if 'id' in params: + path_params['id'] = params['id'] + + query_params = {} + + header_params = {} + + form_params = {} + files = {} + + body_params = None + + # HTTP header `Accept` + header_params['Accept'] = self.api_client.\ + select_header_accept(['application/json']) + if not header_params['Accept']: + del header_params['Accept'] + + # HTTP header `Content-Type` + header_params['Content-Type'] = self.api_client.\ + select_header_content_type(['application/json']) + + # Authentication setting + auth_settings = ['jwtToken'] + + response = self.api_client.call_api(resource_path, method, + path_params, + query_params, + header_params, + body=body_params, + post_params=form_params, + files=files, + response_type='SeriesEpisodesQueryParams', + auth_settings=auth_settings, + callback=params.get('callback')) + return response + + def series_id_episodes_summary_get(self, id, **kwargs): + """ + Returns a summary of the episodes and seasons available for the series.\n\n__Note__: Season \"0\" is for all episodes that are considered to be specials. + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please define a `callback` function + to be invoked when receiving the response. + >>> def callback_function(response): + >>> pprint(response) + >>> + >>> thread = api.series_id_episodes_summary_get(id, callback=callback_function) + + :param callback function: The callback function + for asynchronous request. (optional) + :param int id: ID of the series (required) + :return: SeriesEpisodesSummary + If the method is called asynchronously, + returns the request thread. + """ + + all_params = ['id'] + all_params.append('callback') + + params = locals() + for key, val in iteritems(params['kwargs']): + if key not in all_params: + raise TypeError( + "Got an unexpected keyword argument '%s'" + " to method series_id_episodes_summary_get" % key + ) + params[key] = val + del params['kwargs'] + + # verify the required parameter 'id' is set + if ('id' not in params) or (params['id'] is None): + raise ValueError("Missing the required parameter `id` when calling `series_id_episodes_summary_get`") + + resource_path = '/series/{id}/episodes/summary'.replace('{format}', 'json') + method = 'GET' + + path_params = {} + if 'id' in params: + path_params['id'] = params['id'] + + query_params = {} + + header_params = {} + + form_params = {} + files = {} + + body_params = None + + # HTTP header `Accept` + header_params['Accept'] = self.api_client.\ + select_header_accept(['application/json']) + if not header_params['Accept']: + del header_params['Accept'] + + # HTTP header `Content-Type` + header_params['Content-Type'] = self.api_client.\ + select_header_content_type(['application/json']) + + # Authentication setting + auth_settings = ['jwtToken'] + + response = self.api_client.call_api(resource_path, method, + path_params, + query_params, + header_params, + body=body_params, + post_params=form_params, + files=files, + response_type='SeriesEpisodesSummary', + auth_settings=auth_settings, + callback=params.get('callback')) + return response + + def series_id_filter_get(self, id, keys, **kwargs): + """ + + Returns a series records, filtered by the supplied comma-separated list of keys. Query keys can be found at the `/series/{id}/filter/params` route. + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please define a `callback` function + to be invoked when receiving the response. + >>> def callback_function(response): + >>> pprint(response) + >>> + >>> thread = api.series_id_filter_get(id, keys, callback=callback_function) + + :param callback function: The callback function + for asynchronous request. (optional) + :param int id: ID of the series (required) + :param str keys: Comma-separated list of keys to filter by (required) + :param str accept_language: Records are returned with the Episode name and Overview in the desired language, if it exists. If there is no translation for the given language, then the record is still returned but with empty values for the translated fields. + :return: Series + If the method is called asynchronously, + returns the request thread. + """ + + all_params = ['id', 'keys', 'accept_language'] + all_params.append('callback') + + params = locals() + for key, val in iteritems(params['kwargs']): + if key not in all_params: + raise TypeError( + "Got an unexpected keyword argument '%s'" + " to method series_id_filter_get" % key + ) + params[key] = val + del params['kwargs'] + + # verify the required parameter 'id' is set + if ('id' not in params) or (params['id'] is None): + raise ValueError("Missing the required parameter `id` when calling `series_id_filter_get`") + # verify the required parameter 'keys' is set + if ('keys' not in params) or (params['keys'] is None): + raise ValueError("Missing the required parameter `keys` when calling `series_id_filter_get`") + + resource_path = '/series/{id}/filter'.replace('{format}', 'json') + method = 'GET' + + path_params = {} + if 'id' in params: + path_params['id'] = params['id'] + + query_params = {} + if 'keys' in params: + query_params['keys'] = params['keys'] + + header_params = {} + if 'accept_language' in params: + header_params['Accept-Language'] = params['accept_language'] + + form_params = {} + files = {} + + body_params = None + + # HTTP header `Accept` + header_params['Accept'] = self.api_client.\ + select_header_accept(['application/json']) + if not header_params['Accept']: + del header_params['Accept'] + + # HTTP header `Content-Type` + header_params['Content-Type'] = self.api_client.\ + select_header_content_type(['application/json']) + + # Authentication setting + auth_settings = ['jwtToken'] + + response = self.api_client.call_api(resource_path, method, + path_params, + query_params, + header_params, + body=body_params, + post_params=form_params, + files=files, + response_type='Series', + auth_settings=auth_settings, + callback=params.get('callback')) + return response + + def series_id_filter_params_get(self, id, **kwargs): + """ + + Returns the list of keys available for the `/series/{id}/filter` route + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please define a `callback` function + to be invoked when receiving the response. + >>> def callback_function(response): + >>> pprint(response) + >>> + >>> thread = api.series_id_filter_params_get(id, callback=callback_function) + + :param callback function: The callback function + for asynchronous request. (optional) + :param int id: ID of the series (required) + :param str accept_language: Records are returned with the Episode name and Overview in the desired language, if it exists. If there is no translation for the given language, then the record is still returned but with empty values for the translated fields. + :return: FilterKeys + If the method is called asynchronously, + returns the request thread. + """ + + all_params = ['id', 'accept_language'] + all_params.append('callback') + + params = locals() + for key, val in iteritems(params['kwargs']): + if key not in all_params: + raise TypeError( + "Got an unexpected keyword argument '%s'" + " to method series_id_filter_params_get" % key + ) + params[key] = val + del params['kwargs'] + + # verify the required parameter 'id' is set + if ('id' not in params) or (params['id'] is None): + raise ValueError("Missing the required parameter `id` when calling `series_id_filter_params_get`") + + resource_path = '/series/{id}/filter/params'.replace('{format}', 'json') + method = 'GET' + + path_params = {} + if 'id' in params: + path_params['id'] = params['id'] + + query_params = {} + + header_params = {} + if 'accept_language' in params: + header_params['Accept-Language'] = params['accept_language'] + + form_params = {} + files = {} + + body_params = None + + # HTTP header `Accept` + header_params['Accept'] = self.api_client.\ + select_header_accept(['application/json']) + if not header_params['Accept']: + del header_params['Accept'] + + # HTTP header `Content-Type` + header_params['Content-Type'] = self.api_client.\ + select_header_content_type(['application/json']) + + # Authentication setting + auth_settings = ['jwtToken'] + + response = self.api_client.call_api(resource_path, method, + path_params, + query_params, + header_params, + body=body_params, + post_params=form_params, + files=files, + response_type='FilterKeys', + auth_settings=auth_settings, + callback=params.get('callback')) + return response + + def series_id_images_get(self, id, **kwargs): + """ + + Returns a summary of the images for a particular series + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please define a `callback` function + to be invoked when receiving the response. + >>> def callback_function(response): + >>> pprint(response) + >>> + >>> thread = api.series_id_images_get(id, callback=callback_function) + + :param callback function: The callback function + for asynchronous request. (optional) + :param int id: ID of the series (required) + :param str accept_language: Records are returned with the Episode name and Overview in the desired language, if it exists. If there is no translation for the given language, then the record is still returned but with empty values for the translated fields. + :return: SeriesImagesCounts + If the method is called asynchronously, + returns the request thread. + """ + + all_params = ['id', 'accept_language'] + all_params.append('callback') + + params = locals() + for key, val in iteritems(params['kwargs']): + if key not in all_params: + raise TypeError( + "Got an unexpected keyword argument '%s'" + " to method series_id_images_get" % key + ) + params[key] = val + del params['kwargs'] + + # verify the required parameter 'id' is set + if ('id' not in params) or (params['id'] is None): + raise ValueError("Missing the required parameter `id` when calling `series_id_images_get`") + + resource_path = '/series/{id}/images'.replace('{format}', 'json') + method = 'GET' + + path_params = {} + if 'id' in params: + path_params['id'] = params['id'] + + query_params = {} + + header_params = {} + if 'accept_language' in params: + header_params['Accept-Language'] = params['accept_language'] + + form_params = {} + files = {} + + body_params = None + + # HTTP header `Accept` + header_params['Accept'] = self.api_client.\ + select_header_accept(['application/json']) + if not header_params['Accept']: + del header_params['Accept'] + + # HTTP header `Content-Type` + header_params['Content-Type'] = self.api_client.\ + select_header_content_type(['application/json']) + + # Authentication setting + auth_settings = ['jwtToken'] + + response = self.api_client.call_api(resource_path, method, + path_params, + query_params, + header_params, + body=body_params, + post_params=form_params, + files=files, + response_type='SeriesImagesCounts', + auth_settings=auth_settings, + callback=params.get('callback')) + return response + + def series_id_images_query_get(self, id, **kwargs): + """ + + Query images for the given series ID. + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please define a `callback` function + to be invoked when receiving the response. + >>> def callback_function(response): + >>> pprint(response) + >>> + >>> thread = api.series_id_images_query_get(id, callback=callback_function) + + :param callback function: The callback function + for asynchronous request. (optional) + :param int id: ID of the series (required) + :param str key_type: Type of image you're querying for (fanart, poster, etc. See ../images/query/params for more details). + :param str resolution: Resolution to filter by (1280x1024, for example) + :param str sub_key: Subkey for the above query keys. See /series/{id}/images/query/params for more information + :param str accept_language: Records are returned with the Episode name and Overview in the desired language, if it exists. If there is no translation for the given language, then the record is still returned but with empty values for the translated fields. + :return: SeriesImageQueryResults + If the method is called asynchronously, + returns the request thread. + """ + + all_params = ['id', 'key_type', 'resolution', 'sub_key', 'accept_language'] + all_params.append('callback') + + params = locals() + for key, val in iteritems(params['kwargs']): + if key not in all_params: + raise TypeError( + "Got an unexpected keyword argument '%s'" + " to method series_id_images_query_get" % key + ) + params[key] = val + del params['kwargs'] + + # verify the required parameter 'id' is set + if ('id' not in params) or (params['id'] is None): + raise ValueError("Missing the required parameter `id` when calling `series_id_images_query_get`") + + resource_path = '/series/{id}/images/query'.replace('{format}', 'json') + method = 'GET' + + path_params = {} + if 'id' in params: + path_params['id'] = params['id'] + + query_params = {} + if 'key_type' in params: + query_params['keyType'] = params['key_type'] + if 'resolution' in params: + query_params['resolution'] = params['resolution'] + if 'sub_key' in params: + query_params['subKey'] = params['sub_key'] + + header_params = {} + if 'accept_language' in params: + header_params['Accept-Language'] = params['accept_language'] + + form_params = {} + files = {} + + body_params = None + + # HTTP header `Accept` + header_params['Accept'] = self.api_client.\ + select_header_accept(['application/json']) + if not header_params['Accept']: + del header_params['Accept'] + + # HTTP header `Content-Type` + header_params['Content-Type'] = self.api_client.\ + select_header_content_type(['application/json']) + + # Authentication setting + auth_settings = ['jwtToken'] + + response = self.api_client.call_api(resource_path, method, + path_params, + query_params, + header_params, + body=body_params, + post_params=form_params, + files=files, + response_type='SeriesImageQueryResults', + auth_settings=auth_settings, + callback=params.get('callback')) + return response + + def series_id_images_query_params_get(self, id, **kwargs): + """ + + Returns the allowed query keys for the `/series/{id}/images/query` route. Contains a parameter record for each unique `keyType`, listing values that will return results. + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please define a `callback` function + to be invoked when receiving the response. + >>> def callback_function(response): + >>> pprint(response) + >>> + >>> thread = api.series_id_images_query_params_get(id, callback=callback_function) + + :param callback function: The callback function + for asynchronous request. (optional) + :param int id: ID of the series (required) + :param str accept_language: Records are returned with the Episode name and Overview in the desired language, if it exists. If there is no translation for the given language, then the record is still returned but with empty values for the translated fields. + :return: SeriesImagesQueryParams + If the method is called asynchronously, + returns the request thread. + """ + + all_params = ['id', 'accept_language'] + all_params.append('callback') + + params = locals() + for key, val in iteritems(params['kwargs']): + if key not in all_params: + raise TypeError( + "Got an unexpected keyword argument '%s'" + " to method series_id_images_query_params_get" % key + ) + params[key] = val + del params['kwargs'] + + # verify the required parameter 'id' is set + if ('id' not in params) or (params['id'] is None): + raise ValueError("Missing the required parameter `id` when calling `series_id_images_query_params_get`") + + resource_path = '/series/{id}/images/query/params'.replace('{format}', 'json') + method = 'GET' + + path_params = {} + if 'id' in params: + path_params['id'] = params['id'] + + query_params = {} + + header_params = {} + if 'accept_language' in params: + header_params['Accept-Language'] = params['accept_language'] + + form_params = {} + files = {} + + body_params = None + + # HTTP header `Accept` + header_params['Accept'] = self.api_client.\ + select_header_accept(['application/json']) + if not header_params['Accept']: + del header_params['Accept'] + + # HTTP header `Content-Type` + header_params['Content-Type'] = self.api_client.\ + select_header_content_type(['application/json']) + + # Authentication setting + auth_settings = ['jwtToken'] + + response = self.api_client.call_api(resource_path, method, + path_params, + query_params, + header_params, + body=body_params, + post_params=form_params, + files=files, + response_type='SeriesImagesQueryParams', + auth_settings=auth_settings, + callback=params.get('callback')) + return response diff --git a/lib/tvdbapiv2/apis/updates_api.py b/lib/tvdbapiv2/apis/updates_api.py new file mode 100644 index 0000000000..c5be41b44c --- /dev/null +++ b/lib/tvdbapiv2/apis/updates_api.py @@ -0,0 +1,204 @@ +# coding: utf-8 + +""" +UpdatesApi.py +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +""" + +from __future__ import absolute_import, unicode_literals + +import sys +import os + +# python 2 and python 3 compatibility library +from six import iteritems + +from ..configuration import Configuration +from ..api_client import ApiClient + + +class UpdatesApi(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + Ref: https://github.com/swagger-api/swagger-codegen + """ + + def __init__(self, api_client=None): + config = Configuration() + if api_client: + self.api_client = api_client + else: + if not config.api_client: + config.api_client = ApiClient() + self.api_client = config.api_client + + def updated_query_get(self, from_time, **kwargs): + """ + + Returns an array of series that have changed in a maximum of one week blocks since the provided `fromTime`.\n\n\nThe user may specify a `toTime` to grab results for less than a week. Any timespan larger than a week will be reduced down to one week automatically. + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please define a `callback` function + to be invoked when receiving the response. + >>> def callback_function(response): + >>> pprint(response) + >>> + >>> thread = api.updated_query_get(from_time, callback=callback_function) + + :param callback function: The callback function + for asynchronous request. (optional) + :param str from_time: Epoch time to start your date range. (required) + :param str to_time: Epoch time to end your date range. Must be one week from `fromTime`. + :param str accept_language: Records are returned with the Episode name and Overview in the desired language, if it exists. If there is no translation for the given language, then the record is still returned but with empty values for the translated fields. + :return: UpdateData + If the method is called asynchronously, + returns the request thread. + """ + + all_params = ['from_time', 'to_time', 'accept_language'] + all_params.append('callback') + + params = locals() + for key, val in iteritems(params['kwargs']): + if key not in all_params: + raise TypeError( + "Got an unexpected keyword argument '%s'" + " to method updated_query_get" % key + ) + params[key] = val + del params['kwargs'] + + # verify the required parameter 'from_time' is set + if ('from_time' not in params) or (params['from_time'] is None): + raise ValueError("Missing the required parameter `from_time` when calling `updated_query_get`") + + resource_path = '/updated/query'.replace('{format}', 'json') + method = 'GET' + + path_params = {} + + query_params = {} + if 'from_time' in params: + query_params['fromTime'] = params['from_time'] + if 'to_time' in params: + query_params['toTime'] = params['to_time'] + + header_params = {} + if 'accept_language' in params: + header_params['Accept-Language'] = params['accept_language'] + + form_params = {} + files = {} + + body_params = None + + # HTTP header `Accept` + header_params['Accept'] = self.api_client.\ + select_header_accept(['application/json']) + if not header_params['Accept']: + del header_params['Accept'] + + # HTTP header `Content-Type` + header_params['Content-Type'] = self.api_client.\ + select_header_content_type(['application/json']) + + # Authentication setting + auth_settings = ['jwtToken'] + + response = self.api_client.call_api(resource_path, method, + path_params, + query_params, + header_params, + body=body_params, + post_params=form_params, + files=files, + response_type='UpdateData', + auth_settings=auth_settings, + callback=params.get('callback')) + return response + + def updated_query_params_get(self, **kwargs): + """ + + Returns an array of valid query keys for the `/updated/query/params` route. + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please define a `callback` function + to be invoked when receiving the response. + >>> def callback_function(response): + >>> pprint(response) + >>> + >>> thread = api.updated_query_params_get(callback=callback_function) + + :param callback function: The callback function + for asynchronous request. (optional) + :return: UpdateDataQueryParams + If the method is called asynchronously, + returns the request thread. + """ + + all_params = [] + all_params.append('callback') + + params = locals() + for key, val in iteritems(params['kwargs']): + if key not in all_params: + raise TypeError( + "Got an unexpected keyword argument '%s'" + " to method updated_query_params_get" % key + ) + params[key] = val + del params['kwargs'] + + + resource_path = '/updated/query/params'.replace('{format}', 'json') + method = 'GET' + + path_params = {} + + query_params = {} + + header_params = {} + + form_params = {} + files = {} + + body_params = None + + # HTTP header `Accept` + header_params['Accept'] = self.api_client.\ + select_header_accept(['application/json']) + if not header_params['Accept']: + del header_params['Accept'] + + # HTTP header `Content-Type` + header_params['Content-Type'] = self.api_client.\ + select_header_content_type(['application/json']) + + # Authentication setting + auth_settings = ['jwtToken'] + + response = self.api_client.call_api(resource_path, method, + path_params, + query_params, + header_params, + body=body_params, + post_params=form_params, + files=files, + response_type='UpdateDataQueryParams', + auth_settings=auth_settings, + callback=params.get('callback')) + return response diff --git a/lib/tvdbapiv2/apis/users_api.py b/lib/tvdbapiv2/apis/users_api.py new file mode 100644 index 0000000000..9f0a32422e --- /dev/null +++ b/lib/tvdbapiv2/apis/users_api.py @@ -0,0 +1,748 @@ +# coding: utf-8 + +""" +UsersApi.py +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +""" + +from __future__ import absolute_import, unicode_literals + +import sys +import os + +# python 2 and python 3 compatibility library +from six import iteritems + +from ..configuration import Configuration +from ..api_client import ApiClient + + +class UsersApi(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + Ref: https://github.com/swagger-api/swagger-codegen + """ + + def __init__(self, api_client=None): + config = Configuration() + if api_client: + self.api_client = api_client + else: + if not config.api_client: + config.api_client = ApiClient() + self.api_client = config.api_client + + def user_get(self, **kwargs): + """ + + Returns basic information about the currently authenticated user. + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please define a `callback` function + to be invoked when receiving the response. + >>> def callback_function(response): + >>> pprint(response) + >>> + >>> thread = api.user_get(callback=callback_function) + + :param callback function: The callback function + for asynchronous request. (optional) + :return: UserData + If the method is called asynchronously, + returns the request thread. + """ + + all_params = [] + all_params.append('callback') + + params = locals() + for key, val in iteritems(params['kwargs']): + if key not in all_params: + raise TypeError( + "Got an unexpected keyword argument '%s'" + " to method user_get" % key + ) + params[key] = val + del params['kwargs'] + + + resource_path = '/user'.replace('{format}', 'json') + method = 'GET' + + path_params = {} + + query_params = {} + + header_params = {} + + form_params = {} + files = {} + + body_params = None + + # HTTP header `Accept` + header_params['Accept'] = self.api_client.\ + select_header_accept(['application/json']) + if not header_params['Accept']: + del header_params['Accept'] + + # HTTP header `Content-Type` + header_params['Content-Type'] = self.api_client.\ + select_header_content_type(['application/json']) + + # Authentication setting + auth_settings = ['jwtToken'] + + response = self.api_client.call_api(resource_path, method, + path_params, + query_params, + header_params, + body=body_params, + post_params=form_params, + files=files, + response_type='UserData', + auth_settings=auth_settings, + callback=params.get('callback')) + return response + + def user_favorites_get(self, **kwargs): + """ + + Returns an array of favorite series for a given user, will be a blank array if no favorites exist. + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please define a `callback` function + to be invoked when receiving the response. + >>> def callback_function(response): + >>> pprint(response) + >>> + >>> thread = api.user_favorites_get(callback=callback_function) + + :param callback function: The callback function + for asynchronous request. (optional) + :return: UserFavoritesData + If the method is called asynchronously, + returns the request thread. + """ + + all_params = [] + all_params.append('callback') + + params = locals() + for key, val in iteritems(params['kwargs']): + if key not in all_params: + raise TypeError( + "Got an unexpected keyword argument '%s'" + " to method user_favorites_get" % key + ) + params[key] = val + del params['kwargs'] + + + resource_path = '/user/favorites'.replace('{format}', 'json') + method = 'GET' + + path_params = {} + + query_params = {} + + header_params = {} + + form_params = {} + files = {} + + body_params = None + + # HTTP header `Accept` + header_params['Accept'] = self.api_client.\ + select_header_accept(['application/json']) + if not header_params['Accept']: + del header_params['Accept'] + + # HTTP header `Content-Type` + header_params['Content-Type'] = self.api_client.\ + select_header_content_type(['application/json']) + + # Authentication setting + auth_settings = ['jwtToken'] + + response = self.api_client.call_api(resource_path, method, + path_params, + query_params, + header_params, + body=body_params, + post_params=form_params, + files=files, + response_type='UserFavoritesData', + auth_settings=auth_settings, + callback=params.get('callback')) + return response + + def user_favorites_id_put(self, id, **kwargs): + """ + + Adds the supplied series ID to the user’s favorite’s list and returns the updated list. + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please define a `callback` function + to be invoked when receiving the response. + >>> def callback_function(response): + >>> pprint(response) + >>> + >>> thread = api.user_favorites_id_put(id, callback=callback_function) + + :param callback function: The callback function + for asynchronous request. (optional) + :param int id: ID of the series (required) + :return: UserFavoritesData + If the method is called asynchronously, + returns the request thread. + """ + + all_params = ['id'] + all_params.append('callback') + + params = locals() + for key, val in iteritems(params['kwargs']): + if key not in all_params: + raise TypeError( + "Got an unexpected keyword argument '%s'" + " to method user_favorites_id_put" % key + ) + params[key] = val + del params['kwargs'] + + # verify the required parameter 'id' is set + if ('id' not in params) or (params['id'] is None): + raise ValueError("Missing the required parameter `id` when calling `user_favorites_id_put`") + + resource_path = '/user/favorites/{id}'.replace('{format}', 'json') + method = 'PUT' + + path_params = {} + if 'id' in params: + path_params['id'] = params['id'] + + query_params = {} + + header_params = {} + + form_params = {} + files = {} + + body_params = None + + # HTTP header `Accept` + header_params['Accept'] = self.api_client.\ + select_header_accept(['application/json']) + if not header_params['Accept']: + del header_params['Accept'] + + # HTTP header `Content-Type` + header_params['Content-Type'] = self.api_client.\ + select_header_content_type(['application/json']) + + # Authentication setting + auth_settings = ['jwtToken'] + + response = self.api_client.call_api(resource_path, method, + path_params, + query_params, + header_params, + body=body_params, + post_params=form_params, + files=files, + response_type='UserFavoritesData', + auth_settings=auth_settings, + callback=params.get('callback')) + return response + + def user_favorites_id_delete(self, id, **kwargs): + """ + + Deletes the given series ID from the user’s favorite’s list and returns the updated list. + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please define a `callback` function + to be invoked when receiving the response. + >>> def callback_function(response): + >>> pprint(response) + >>> + >>> thread = api.user_favorites_id_delete(id, callback=callback_function) + + :param callback function: The callback function + for asynchronous request. (optional) + :param int id: ID of the series (required) + :return: UserFavoritesData + If the method is called asynchronously, + returns the request thread. + """ + + all_params = ['id'] + all_params.append('callback') + + params = locals() + for key, val in iteritems(params['kwargs']): + if key not in all_params: + raise TypeError( + "Got an unexpected keyword argument '%s'" + " to method user_favorites_id_delete" % key + ) + params[key] = val + del params['kwargs'] + + # verify the required parameter 'id' is set + if ('id' not in params) or (params['id'] is None): + raise ValueError("Missing the required parameter `id` when calling `user_favorites_id_delete`") + + resource_path = '/user/favorites/{id}'.replace('{format}', 'json') + method = 'DELETE' + + path_params = {} + if 'id' in params: + path_params['id'] = params['id'] + + query_params = {} + + header_params = {} + + form_params = {} + files = {} + + body_params = None + + # HTTP header `Accept` + header_params['Accept'] = self.api_client.\ + select_header_accept(['application/json']) + if not header_params['Accept']: + del header_params['Accept'] + + # HTTP header `Content-Type` + header_params['Content-Type'] = self.api_client.\ + select_header_content_type(['application/json']) + + # Authentication setting + auth_settings = ['jwtToken'] + + response = self.api_client.call_api(resource_path, method, + path_params, + query_params, + header_params, + body=body_params, + post_params=form_params, + files=files, + response_type='UserFavoritesData', + auth_settings=auth_settings, + callback=params.get('callback')) + return response + + def user_ratings_get(self, **kwargs): + """ + + Returns an array of ratings for the given user. + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please define a `callback` function + to be invoked when receiving the response. + >>> def callback_function(response): + >>> pprint(response) + >>> + >>> thread = api.user_ratings_get(callback=callback_function) + + :param callback function: The callback function + for asynchronous request. (optional) + :return: UserRatingsData + If the method is called asynchronously, + returns the request thread. + """ + + all_params = [] + all_params.append('callback') + + params = locals() + for key, val in iteritems(params['kwargs']): + if key not in all_params: + raise TypeError( + "Got an unexpected keyword argument '%s'" + " to method user_ratings_get" % key + ) + params[key] = val + del params['kwargs'] + + + resource_path = '/user/ratings'.replace('{format}', 'json') + method = 'GET' + + path_params = {} + + query_params = {} + + header_params = {} + + form_params = {} + files = {} + + body_params = None + + # HTTP header `Accept` + header_params['Accept'] = self.api_client.\ + select_header_accept(['application/json']) + if not header_params['Accept']: + del header_params['Accept'] + + # HTTP header `Content-Type` + header_params['Content-Type'] = self.api_client.\ + select_header_content_type(['application/json']) + + # Authentication setting + auth_settings = ['jwtToken'] + + response = self.api_client.call_api(resource_path, method, + path_params, + query_params, + header_params, + body=body_params, + post_params=form_params, + files=files, + response_type='UserRatingsData', + auth_settings=auth_settings, + callback=params.get('callback')) + return response + + def user_ratings_query_get(self, **kwargs): + """ + + Returns an array of ratings for a given user that match the query. + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please define a `callback` function + to be invoked when receiving the response. + >>> def callback_function(response): + >>> pprint(response) + >>> + >>> thread = api.user_ratings_query_get(callback=callback_function) + + :param callback function: The callback function + for asynchronous request. (optional) + :param str item_type: Item to query. Can be either 'series', 'episode', or 'banner' + :return: UserRatingsData + If the method is called asynchronously, + returns the request thread. + """ + + all_params = ['item_type'] + all_params.append('callback') + + params = locals() + for key, val in iteritems(params['kwargs']): + if key not in all_params: + raise TypeError( + "Got an unexpected keyword argument '%s'" + " to method user_ratings_query_get" % key + ) + params[key] = val + del params['kwargs'] + + + resource_path = '/user/ratings/query'.replace('{format}', 'json') + method = 'GET' + + path_params = {} + + query_params = {} + if 'item_type' in params: + query_params['itemType'] = params['item_type'] + + header_params = {} + + form_params = {} + files = {} + + body_params = None + + # HTTP header `Accept` + header_params['Accept'] = self.api_client.\ + select_header_accept(['application/json']) + if not header_params['Accept']: + del header_params['Accept'] + + # HTTP header `Content-Type` + header_params['Content-Type'] = self.api_client.\ + select_header_content_type(['application/json']) + + # Authentication setting + auth_settings = ['jwtToken'] + + response = self.api_client.call_api(resource_path, method, + path_params, + query_params, + header_params, + body=body_params, + post_params=form_params, + files=files, + response_type='UserRatingsData', + auth_settings=auth_settings, + callback=params.get('callback')) + return response + + def user_ratings_query_params_get(self, **kwargs): + """ + + Returns a list of query params for use in the `/user/ratings/query` route. + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please define a `callback` function + to be invoked when receiving the response. + >>> def callback_function(response): + >>> pprint(response) + >>> + >>> thread = api.user_ratings_query_params_get(callback=callback_function) + + :param callback function: The callback function + for asynchronous request. (optional) + :return: UserRatingsQueryParams + If the method is called asynchronously, + returns the request thread. + """ + + all_params = [] + all_params.append('callback') + + params = locals() + for key, val in iteritems(params['kwargs']): + if key not in all_params: + raise TypeError( + "Got an unexpected keyword argument '%s'" + " to method user_ratings_query_params_get" % key + ) + params[key] = val + del params['kwargs'] + + + resource_path = '/user/ratings/query/params'.replace('{format}', 'json') + method = 'GET' + + path_params = {} + + query_params = {} + + header_params = {} + + form_params = {} + files = {} + + body_params = None + + # HTTP header `Accept` + header_params['Accept'] = self.api_client.\ + select_header_accept(['application/json']) + if not header_params['Accept']: + del header_params['Accept'] + + # HTTP header `Content-Type` + header_params['Content-Type'] = self.api_client.\ + select_header_content_type(['application/json']) + + # Authentication setting + auth_settings = ['jwtToken'] + + response = self.api_client.call_api(resource_path, method, + path_params, + query_params, + header_params, + body=body_params, + post_params=form_params, + files=files, + response_type='UserRatingsQueryParams', + auth_settings=auth_settings, + callback=params.get('callback')) + return response + + def user_ratings_item_type_item_id_delete(self, item_type, item_id, **kwargs): + """ + + This route deletes a given rating of a given type. + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please define a `callback` function + to be invoked when receiving the response. + >>> def callback_function(response): + >>> pprint(response) + >>> + >>> thread = api.user_ratings_item_type_item_id_delete(item_type, item_id, callback=callback_function) + + :param callback function: The callback function + for asynchronous request. (optional) + :param str item_type: Item to update. Can be either 'series', 'episode', or 'image' (required) + :param int item_id: ID of the ratings record that you wish to modify (required) + :return: UserRatingsDataNoLinksEmptyArray + If the method is called asynchronously, + returns the request thread. + """ + + all_params = ['item_type', 'item_id'] + all_params.append('callback') + + params = locals() + for key, val in iteritems(params['kwargs']): + if key not in all_params: + raise TypeError( + "Got an unexpected keyword argument '%s'" + " to method user_ratings_item_type_item_id_delete" % key + ) + params[key] = val + del params['kwargs'] + + # verify the required parameter 'item_type' is set + if ('item_type' not in params) or (params['item_type'] is None): + raise ValueError("Missing the required parameter `item_type` when calling `user_ratings_item_type_item_id_delete`") + # verify the required parameter 'item_id' is set + if ('item_id' not in params) or (params['item_id'] is None): + raise ValueError("Missing the required parameter `item_id` when calling `user_ratings_item_type_item_id_delete`") + + resource_path = '/user/ratings/{itemType}/{itemId}'.replace('{format}', 'json') + method = 'DELETE' + + path_params = {} + if 'item_type' in params: + path_params['itemType'] = params['item_type'] + if 'item_id' in params: + path_params['itemId'] = params['item_id'] + + query_params = {} + + header_params = {} + + form_params = {} + files = {} + + body_params = None + + # HTTP header `Accept` + header_params['Accept'] = self.api_client.\ + select_header_accept(['application/json']) + if not header_params['Accept']: + del header_params['Accept'] + + # HTTP header `Content-Type` + header_params['Content-Type'] = self.api_client.\ + select_header_content_type(['application/json']) + + # Authentication setting + auth_settings = ['jwtToken'] + + response = self.api_client.call_api(resource_path, method, + path_params, + query_params, + header_params, + body=body_params, + post_params=form_params, + files=files, + response_type='UserRatingsDataNoLinksEmptyArray', + auth_settings=auth_settings, + callback=params.get('callback')) + return response + + def user_ratings_item_type_item_id_item_rating_put(self, item_type, item_id, item_rating, **kwargs): + """ + + This route updates a given rating of a given type. + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please define a `callback` function + to be invoked when receiving the response. + >>> def callback_function(response): + >>> pprint(response) + >>> + >>> thread = api.user_ratings_item_type_item_id_item_rating_put(item_type, item_id, item_rating, callback=callback_function) + + :param callback function: The callback function + for asynchronous request. (optional) + :param str item_type: Item to update. Can be either 'series', 'episode', or 'image' (required) + :param int item_id: ID of the ratings record that you wish to modify (required) + :param int item_rating: The updated rating number (required) + :return: UserRatingsDataNoLinks + If the method is called asynchronously, + returns the request thread. + """ + + all_params = ['item_type', 'item_id', 'item_rating'] + all_params.append('callback') + + params = locals() + for key, val in iteritems(params['kwargs']): + if key not in all_params: + raise TypeError( + "Got an unexpected keyword argument '%s'" + " to method user_ratings_item_type_item_id_item_rating_put" % key + ) + params[key] = val + del params['kwargs'] + + # verify the required parameter 'item_type' is set + if ('item_type' not in params) or (params['item_type'] is None): + raise ValueError("Missing the required parameter `item_type` when calling `user_ratings_item_type_item_id_item_rating_put`") + # verify the required parameter 'item_id' is set + if ('item_id' not in params) or (params['item_id'] is None): + raise ValueError("Missing the required parameter `item_id` when calling `user_ratings_item_type_item_id_item_rating_put`") + # verify the required parameter 'item_rating' is set + if ('item_rating' not in params) or (params['item_rating'] is None): + raise ValueError("Missing the required parameter `item_rating` when calling `user_ratings_item_type_item_id_item_rating_put`") + + resource_path = '/user/ratings/{itemType}/{itemId}/{itemRating}'.replace('{format}', 'json') + method = 'PUT' + + path_params = {} + if 'item_type' in params: + path_params['itemType'] = params['item_type'] + if 'item_id' in params: + path_params['itemId'] = params['item_id'] + if 'item_rating' in params: + path_params['itemRating'] = params['item_rating'] + + query_params = {} + + header_params = {} + + form_params = {} + files = {} + + body_params = None + + # HTTP header `Accept` + header_params['Accept'] = self.api_client.\ + select_header_accept(['application/json']) + if not header_params['Accept']: + del header_params['Accept'] + + # HTTP header `Content-Type` + header_params['Content-Type'] = self.api_client.\ + select_header_content_type(['application/json']) + + # Authentication setting + auth_settings = ['jwtToken'] + + response = self.api_client.call_api(resource_path, method, + path_params, + query_params, + header_params, + body=body_params, + post_params=form_params, + files=files, + response_type='UserRatingsDataNoLinks', + auth_settings=auth_settings, + callback=params.get('callback')) + return response diff --git a/lib/tvdbapiv2/configuration.py b/lib/tvdbapiv2/configuration.py new file mode 100644 index 0000000000..0cda325164 --- /dev/null +++ b/lib/tvdbapiv2/configuration.py @@ -0,0 +1,239 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + ref: https://github.com/swagger-api/swagger-codegen +""" + +from __future__ import absolute_import, unicode_literals + +import base64 +import urllib3 + +try: + import httplib +except ImportError: + # for python3 + import http.client as httplib + +import sys +import logging + +from six import iteritems + +def singleton(cls, *args, **kw): + instances = {} + + def _singleton(): + if cls not in instances: + instances[cls] = cls(*args, **kw) + return instances[cls] + return _singleton + + +@singleton +class Configuration(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Ref: https://github.com/swagger-api/swagger-codegen + Do not edit the class manually. + """ + + def __init__(self): + """ + Constructor + """ + # Default Base url + self.host = "https://api.thetvdb.com/" + # Default api client + self.api_client = None + # Temp file folder for downloading files + self.temp_folder_path = None + + # Authentication Settings + # dict to store API key(s) + self.api_key = {'identifier': '7FAF7FE037212506'} + # dict to store API prefix (e.g. Bearer) + self.api_key_prefix = {} + # Username for HTTP basic authentication + self.username = "p0psicles" + # Password for HTTP basic authentication + self.password = "Tequila99" + + + # Logging Settings + self.logger = {} + self.logger["package_logger"] = logging.getLogger("swagger_client") + self.logger["urllib3_logger"] = logging.getLogger("urllib3") + # Log format + self.logger_format = '%(asctime)s %(levelname)s %(message)s' + # Log stream handler + self.logger_stream_handler = None + # Log file handler + self.logger_file_handler = None + # Debug file location + self.logger_file = None + # Debug switch + self.debug = False + + # SSL/TLS verification + # Set this to false to skip verifying SSL certificate when calling API from https server. + self.verify_ssl = True + # Set this to customize the certificate file to verify the peer. + self.ssl_ca_cert = None + # client certificate file + self.cert_file = None + # client key file + self.key_file = None + + @property + def logger_file(self): + """ + Gets the logger_file. + """ + return self.__logger_file + + @logger_file.setter + def logger_file(self, value): + """ + Sets the logger_file. + + If the logger_file is None, then add stream handler and remove file handler. + Otherwise, add file handler and remove stream handler. + + :param value: The logger_file path. + :type: str + """ + self.__logger_file = value + if self.__logger_file: + # If set logging file, + # then add file handler and remove stream handler. + self.logger_file_handler = logging.FileHandler(self.__logger_file) + self.logger_file_handler.setFormatter(self.logger_formatter) + for _, logger in iteritems(self.logger): + logger.addHandler(self.logger_file_handler) + if self.logger_stream_handler: + logger.removeHandler(self.logger_stream_handler) + else: + # If not set logging file, + # then add stream handler and remove file handler. + self.logger_stream_handler = logging.StreamHandler() + self.logger_stream_handler.setFormatter(self.logger_formatter) + for _, logger in iteritems(self.logger): + logger.addHandler(self.logger_stream_handler) + if self.logger_file_handler: + logger.removeHandler(self.logger_file_handler) + + @property + def debug(self): + """ + Gets the debug status. + """ + return self.__debug + + @debug.setter + def debug(self, value): + """ + Sets the debug status. + + :param value: The debug status, True or False. + :type: bool + """ + self.__debug = value + if self.__debug: + # if debug status is True, turn on debug logging + for _, logger in iteritems(self.logger): + logger.setLevel(logging.DEBUG) + # turn on httplib debug + httplib.HTTPConnection.debuglevel = 1 + else: + # if debug status is False, turn off debug logging, + # setting log level to default `logging.WARNING` + for _, logger in iteritems(self.logger): + logger.setLevel(logging.WARNING) + # turn off httplib debug + httplib.HTTPConnection.debuglevel = 0 + + @property + def logger_format(self): + """ + Gets the logger_format. + """ + return self.__logger_format + + @logger_format.setter + def logger_format(self, value): + """ + Sets the logger_format. + + The logger_formatter will be updated when sets logger_format. + + :param value: The format string. + :type: str + """ + self.__logger_format = value + self.logger_formatter = logging.Formatter(self.__logger_format) + + def get_api_key_with_prefix(self, identifier): + """ + Gets API key (with prefix if set). + + :param identifier: The identifier of apiKey. + :return: The token for api key authentication. + """ + if self.api_key.get(identifier) and self.api_key_prefix.get(identifier): + return self.api_key_prefix[identifier] + ' ' + self.api_key[identifier] + elif self.api_key.get(identifier): + return self.api_key[identifier] + + def get_basic_auth_token(self): + """ + Gets HTTP basic authentication header (string). + + :return: The token for basic HTTP authentication. + """ + return urllib3.util.make_headers(basic_auth=self.username + ':' + self.password)\ + .get('authorization') + + def auth_settings(self): + """ + Gets Auth Settings dict for api client. + + :return: The Auth Settings information dict. + """ + return { + 'jwtToken': + { + 'type': 'api_key', + 'in': 'header', + 'key': 'Authorization', + 'value': self.get_api_key_with_prefix('Authorization') + }, + + } + + def to_debug_report(self): + """ + Gets the essential information for debugging. + + :return: The report for debugging. + """ + return "Python SDK Debug Report:\n"\ + "OS: {env}\n"\ + "Python Version: {pyversion}\n"\ + "Version of the API: 1.2.0\n"\ + "SDK Package Version: 1.0.0".\ + format(env=sys.platform, pyversion=sys.version) diff --git a/lib/tvdbapiv2/models/__init__.py b/lib/tvdbapiv2/models/__init__.py new file mode 100644 index 0000000000..9bc44fdd02 --- /dev/null +++ b/lib/tvdbapiv2/models/__init__.py @@ -0,0 +1,43 @@ +from __future__ import absolute_import + +# import models into model package +from .token import Token +from .auth import Auth +from .not_found import NotFound +from .not_authorized import NotAuthorized +from .conflict import Conflict +from .filter_keys import FilterKeys +from .series import Series +from .series_data import SeriesData +from .search_series import SearchSeries +from .episode_data_query_params import EpisodeDataQueryParams +from .episode_data import EpisodeData +from .episode import Episode +from .basic_episode import BasicEpisode +from .series_actors_data import SeriesActorsData +from .series_actors import SeriesActors +from .series_episodes import SeriesEpisodes +from .series_episodes_summary import SeriesEpisodesSummary +from .series_episodes_query import SeriesEpisodesQuery +from .series_episodes_query_params import SeriesEpisodesQueryParams +from .series_image_query_result import SeriesImageQueryResult +from .series_image_query_results import SeriesImageQueryResults +from .series_images_query_param import SeriesImagesQueryParam +from .series_images_query_params import SeriesImagesQueryParams +from .series_images_counts import SeriesImagesCounts +from .series_images_count import SeriesImagesCount +from .update_data import UpdateData +from .update import Update +from .language_data import LanguageData +from .language import Language +from .update_data_query_params import UpdateDataQueryParams +from .links import Links +from .user_data import UserData +from .user import User +from .user_favorites_data import UserFavoritesData +from .user_favorites import UserFavorites +from .user_ratings_data import UserRatingsData +from .user_ratings_data_no_links import UserRatingsDataNoLinks +from .user_ratings_data_no_links_empty_array import UserRatingsDataNoLinksEmptyArray +from .user_ratings import UserRatings +from .user_ratings_query_params import UserRatingsQueryParams diff --git a/lib/tvdbapiv2/models/auth.py b/lib/tvdbapiv2/models/auth.py new file mode 100644 index 0000000000..b62c1c4341 --- /dev/null +++ b/lib/tvdbapiv2/models/auth.py @@ -0,0 +1,164 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class Auth(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + Auth - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'apikey': 'str', + 'username': 'str', + 'userpass': 'str' + } + + self.attribute_map = { + 'apikey': 'apikey', + 'username': 'username', + 'userpass': 'userpass' + } + + self._apikey = None + self._username = None + self._userpass = None + + @property + def apikey(self): + """ + Gets the apikey of this Auth. + + + :return: The apikey of this Auth. + :rtype: str + """ + return self._apikey + + @apikey.setter + def apikey(self, apikey): + """ + Sets the apikey of this Auth. + + + :param apikey: The apikey of this Auth. + :type: str + """ + self._apikey = apikey + + @property + def username(self): + """ + Gets the username of this Auth. + + + :return: The username of this Auth. + :rtype: str + """ + return self._username + + @username.setter + def username(self, username): + """ + Sets the username of this Auth. + + + :param username: The username of this Auth. + :type: str + """ + self._username = username + + @property + def userpass(self): + """ + Gets the userpass of this Auth. + + + :return: The userpass of this Auth. + :rtype: str + """ + return self._userpass + + @userpass.setter + def userpass(self, userpass): + """ + Sets the userpass of this Auth. + + + :param userpass: The userpass of this Auth. + :type: str + """ + self._userpass = userpass + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/models/basic_episode.py b/lib/tvdbapiv2/models/basic_episode.py new file mode 100644 index 0000000000..ccfd4563e1 --- /dev/null +++ b/lib/tvdbapiv2/models/basic_episode.py @@ -0,0 +1,289 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class BasicEpisode(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + BasicEpisode - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'absolute_number': 'int', + 'aired_episode_number': 'int', + 'aired_season': 'int', + 'dvd_episode_number': 'int', + 'dvd_season': 'int', + 'episode_name': 'str', + 'id': 'int', + 'overview': 'str' + } + + self.attribute_map = { + 'absolute_number': 'absoluteNumber', + 'aired_episode_number': 'airedEpisodeNumber', + 'aired_season': 'airedSeason', + 'dvd_episode_number': 'dvdEpisodeNumber', + 'dvd_season': 'dvdSeason', + 'episode_name': 'episodeName', + 'id': 'id', + 'overview': 'overview' + } + + self._absolute_number = None + self._aired_episode_number = None + self._aired_season = None + self._dvd_episode_number = None + self._dvd_season = None + self._episode_name = None + self._id = None + self._overview = None + + @property + def absolute_number(self): + """ + Gets the absolute_number of this BasicEpisode. + + + :return: The absolute_number of this BasicEpisode. + :rtype: int + """ + return self._absolute_number + + @absolute_number.setter + def absolute_number(self, absolute_number): + """ + Sets the absolute_number of this BasicEpisode. + + + :param absolute_number: The absolute_number of this BasicEpisode. + :type: int + """ + self._absolute_number = absolute_number + + @property + def aired_episode_number(self): + """ + Gets the aired_episode_number of this BasicEpisode. + + + :return: The aired_episode_number of this BasicEpisode. + :rtype: int + """ + return self._aired_episode_number + + @aired_episode_number.setter + def aired_episode_number(self, aired_episode_number): + """ + Sets the aired_episode_number of this BasicEpisode. + + + :param aired_episode_number: The aired_episode_number of this BasicEpisode. + :type: int + """ + self._aired_episode_number = aired_episode_number + + @property + def aired_season(self): + """ + Gets the aired_season of this BasicEpisode. + + + :return: The aired_season of this BasicEpisode. + :rtype: int + """ + return self._aired_season + + @aired_season.setter + def aired_season(self, aired_season): + """ + Sets the aired_season of this BasicEpisode. + + + :param aired_season: The aired_season of this BasicEpisode. + :type: int + """ + self._aired_season = aired_season + + @property + def dvd_episode_number(self): + """ + Gets the dvd_episode_number of this BasicEpisode. + + + :return: The dvd_episode_number of this BasicEpisode. + :rtype: int + """ + return self._dvd_episode_number + + @dvd_episode_number.setter + def dvd_episode_number(self, dvd_episode_number): + """ + Sets the dvd_episode_number of this BasicEpisode. + + + :param dvd_episode_number: The dvd_episode_number of this BasicEpisode. + :type: int + """ + self._dvd_episode_number = dvd_episode_number + + @property + def dvd_season(self): + """ + Gets the dvd_season of this BasicEpisode. + + + :return: The dvd_season of this BasicEpisode. + :rtype: int + """ + return self._dvd_season + + @dvd_season.setter + def dvd_season(self, dvd_season): + """ + Sets the dvd_season of this BasicEpisode. + + + :param dvd_season: The dvd_season of this BasicEpisode. + :type: int + """ + self._dvd_season = dvd_season + + @property + def episode_name(self): + """ + Gets the episode_name of this BasicEpisode. + + + :return: The episode_name of this BasicEpisode. + :rtype: str + """ + return self._episode_name + + @episode_name.setter + def episode_name(self, episode_name): + """ + Sets the episode_name of this BasicEpisode. + + + :param episode_name: The episode_name of this BasicEpisode. + :type: str + """ + self._episode_name = episode_name + + @property + def id(self): + """ + Gets the id of this BasicEpisode. + + + :return: The id of this BasicEpisode. + :rtype: int + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this BasicEpisode. + + + :param id: The id of this BasicEpisode. + :type: int + """ + self._id = id + + @property + def overview(self): + """ + Gets the overview of this BasicEpisode. + + + :return: The overview of this BasicEpisode. + :rtype: str + """ + return self._overview + + @overview.setter + def overview(self, overview): + """ + Sets the overview of this BasicEpisode. + + + :param overview: The overview of this BasicEpisode. + :type: str + """ + self._overview = overview + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/models/conflict.py b/lib/tvdbapiv2/models/conflict.py new file mode 100644 index 0000000000..2b35e1ddf6 --- /dev/null +++ b/lib/tvdbapiv2/models/conflict.py @@ -0,0 +1,114 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class Conflict(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + Conflict - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'error': 'str' + } + + self.attribute_map = { + 'error': 'Error' + } + + self._error = 'Conflict' + + @property + def error(self): + """ + Gets the error of this Conflict. + + + :return: The error of this Conflict. + :rtype: str + """ + return self._error + + @error.setter + def error(self, error): + """ + Sets the error of this Conflict. + + + :param error: The error of this Conflict. + :type: str + """ + self._error = error + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/models/episode.py b/lib/tvdbapiv2/models/episode.py new file mode 100644 index 0000000000..0d02aa81ac --- /dev/null +++ b/lib/tvdbapiv2/models/episode.py @@ -0,0 +1,814 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class Episode(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + Episode - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'id': 'int', + 'aired_season': 'int', + 'aired_episode_number': 'int', + 'episode_name': 'str', + 'first_aired': 'str', + 'guest_stars': 'str', + 'director': 'str', + 'writers': 'list[str]', + 'overview': 'str', + 'production_code': 'str', + 'show_url': 'str', + 'last_updated': 'int', + 'dvd_discid': 'str', + 'dvd_season': 'int', + 'dvd_episode_number': 'float', + 'dvd_chapter': 'float', + 'absolute_number': 'int', + 'filename': 'str', + 'series_id': 'str', + 'last_updated_by': 'str', + 'airs_after_season': 'int', + 'airs_before_season': 'int', + 'airs_before_episode': 'int', + 'thumb_author': 'str', + 'thumb_added': 'str', + 'thumb_width': 'str', + 'thumb_height': 'str', + 'imdb_id': 'str', + 'site_rating': 'float' + } + + self.attribute_map = { + 'id': 'id', + 'aired_season': 'airedSeason', + 'aired_episode_number': 'airedEpisodeNumber', + 'episode_name': 'episodeName', + 'first_aired': 'firstAired', + 'guest_stars': 'guestStars', + 'director': 'director', + 'writers': 'writers', + 'overview': 'overview', + 'production_code': 'productionCode', + 'show_url': 'showUrl', + 'last_updated': 'lastUpdated', + 'dvd_discid': 'dvdDiscid', + 'dvd_season': 'dvdSeason', + 'dvd_episode_number': 'dvdEpisodeNumber', + 'dvd_chapter': 'dvdChapter', + 'absolute_number': 'absoluteNumber', + 'filename': 'filename', + 'series_id': 'seriesId', + 'last_updated_by': 'lastUpdatedBy', + 'airs_after_season': 'airsAfterSeason', + 'airs_before_season': 'airsBeforeSeason', + 'airs_before_episode': 'airsBeforeEpisode', + 'thumb_author': 'thumbAuthor', + 'thumb_added': 'thumbAdded', + 'thumb_width': 'thumbWidth', + 'thumb_height': 'thumbHeight', + 'imdb_id': 'imdbId', + 'site_rating': 'siteRating' + } + + self._id = None + self._aired_season = None + self._aired_episode_number = None + self._episode_name = None + self._first_aired = None + self._guest_stars = None + self._director = None + self._writers = None + self._overview = None + self._production_code = None + self._show_url = None + self._last_updated = None + self._dvd_discid = None + self._dvd_season = None + self._dvd_episode_number = None + self._dvd_chapter = None + self._absolute_number = None + self._filename = None + self._series_id = None + self._last_updated_by = None + self._airs_after_season = None + self._airs_before_season = None + self._airs_before_episode = None + self._thumb_author = None + self._thumb_added = None + self._thumb_width = None + self._thumb_height = None + self._imdb_id = None + self._site_rating = None + + @property + def id(self): + """ + Gets the id of this Episode. + + + :return: The id of this Episode. + :rtype: int + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this Episode. + + + :param id: The id of this Episode. + :type: int + """ + self._id = id + + @property + def aired_season(self): + """ + Gets the aired_season of this Episode. + + + :return: The aired_season of this Episode. + :rtype: int + """ + return self._aired_season + + @aired_season.setter + def aired_season(self, aired_season): + """ + Sets the aired_season of this Episode. + + + :param aired_season: The aired_season of this Episode. + :type: int + """ + self._aired_season = aired_season + + @property + def aired_episode_number(self): + """ + Gets the aired_episode_number of this Episode. + + + :return: The aired_episode_number of this Episode. + :rtype: int + """ + return self._aired_episode_number + + @aired_episode_number.setter + def aired_episode_number(self, aired_episode_number): + """ + Sets the aired_episode_number of this Episode. + + + :param aired_episode_number: The aired_episode_number of this Episode. + :type: int + """ + self._aired_episode_number = aired_episode_number + + @property + def episode_name(self): + """ + Gets the episode_name of this Episode. + + + :return: The episode_name of this Episode. + :rtype: str + """ + return self._episode_name + + @episode_name.setter + def episode_name(self, episode_name): + """ + Sets the episode_name of this Episode. + + + :param episode_name: The episode_name of this Episode. + :type: str + """ + self._episode_name = episode_name + + @property + def first_aired(self): + """ + Gets the first_aired of this Episode. + + + :return: The first_aired of this Episode. + :rtype: str + """ + return self._first_aired + + @first_aired.setter + def first_aired(self, first_aired): + """ + Sets the first_aired of this Episode. + + + :param first_aired: The first_aired of this Episode. + :type: str + """ + self._first_aired = first_aired + + @property + def guest_stars(self): + """ + Gets the guest_stars of this Episode. + + + :return: The guest_stars of this Episode. + :rtype: str + """ + return self._guest_stars + + @guest_stars.setter + def guest_stars(self, guest_stars): + """ + Sets the guest_stars of this Episode. + + + :param guest_stars: The guest_stars of this Episode. + :type: str + """ + self._guest_stars = guest_stars + + @property + def director(self): + """ + Gets the director of this Episode. + + + :return: The director of this Episode. + :rtype: str + """ + return self._director + + @director.setter + def director(self, director): + """ + Sets the director of this Episode. + + + :param director: The director of this Episode. + :type: str + """ + self._director = director + + @property + def writers(self): + """ + Gets the writers of this Episode. + + + :return: The writers of this Episode. + :rtype: list[str] + """ + return self._writers + + @writers.setter + def writers(self, writers): + """ + Sets the writers of this Episode. + + + :param writers: The writers of this Episode. + :type: list[str] + """ + self._writers = writers + + @property + def overview(self): + """ + Gets the overview of this Episode. + + + :return: The overview of this Episode. + :rtype: str + """ + return self._overview + + @overview.setter + def overview(self, overview): + """ + Sets the overview of this Episode. + + + :param overview: The overview of this Episode. + :type: str + """ + self._overview = overview + + @property + def production_code(self): + """ + Gets the production_code of this Episode. + + + :return: The production_code of this Episode. + :rtype: str + """ + return self._production_code + + @production_code.setter + def production_code(self, production_code): + """ + Sets the production_code of this Episode. + + + :param production_code: The production_code of this Episode. + :type: str + """ + self._production_code = production_code + + @property + def show_url(self): + """ + Gets the show_url of this Episode. + + + :return: The show_url of this Episode. + :rtype: str + """ + return self._show_url + + @show_url.setter + def show_url(self, show_url): + """ + Sets the show_url of this Episode. + + + :param show_url: The show_url of this Episode. + :type: str + """ + self._show_url = show_url + + @property + def last_updated(self): + """ + Gets the last_updated of this Episode. + + + :return: The last_updated of this Episode. + :rtype: int + """ + return self._last_updated + + @last_updated.setter + def last_updated(self, last_updated): + """ + Sets the last_updated of this Episode. + + + :param last_updated: The last_updated of this Episode. + :type: int + """ + self._last_updated = last_updated + + @property + def dvd_discid(self): + """ + Gets the dvd_discid of this Episode. + + + :return: The dvd_discid of this Episode. + :rtype: str + """ + return self._dvd_discid + + @dvd_discid.setter + def dvd_discid(self, dvd_discid): + """ + Sets the dvd_discid of this Episode. + + + :param dvd_discid: The dvd_discid of this Episode. + :type: str + """ + self._dvd_discid = dvd_discid + + @property + def dvd_season(self): + """ + Gets the dvd_season of this Episode. + + + :return: The dvd_season of this Episode. + :rtype: int + """ + return self._dvd_season + + @dvd_season.setter + def dvd_season(self, dvd_season): + """ + Sets the dvd_season of this Episode. + + + :param dvd_season: The dvd_season of this Episode. + :type: int + """ + self._dvd_season = dvd_season + + @property + def dvd_episode_number(self): + """ + Gets the dvd_episode_number of this Episode. + + + :return: The dvd_episode_number of this Episode. + :rtype: float + """ + return self._dvd_episode_number + + @dvd_episode_number.setter + def dvd_episode_number(self, dvd_episode_number): + """ + Sets the dvd_episode_number of this Episode. + + + :param dvd_episode_number: The dvd_episode_number of this Episode. + :type: float + """ + self._dvd_episode_number = dvd_episode_number + + @property + def dvd_chapter(self): + """ + Gets the dvd_chapter of this Episode. + + + :return: The dvd_chapter of this Episode. + :rtype: float + """ + return self._dvd_chapter + + @dvd_chapter.setter + def dvd_chapter(self, dvd_chapter): + """ + Sets the dvd_chapter of this Episode. + + + :param dvd_chapter: The dvd_chapter of this Episode. + :type: float + """ + self._dvd_chapter = dvd_chapter + + @property + def absolute_number(self): + """ + Gets the absolute_number of this Episode. + + + :return: The absolute_number of this Episode. + :rtype: int + """ + return self._absolute_number + + @absolute_number.setter + def absolute_number(self, absolute_number): + """ + Sets the absolute_number of this Episode. + + + :param absolute_number: The absolute_number of this Episode. + :type: int + """ + self._absolute_number = absolute_number + + @property + def filename(self): + """ + Gets the filename of this Episode. + + + :return: The filename of this Episode. + :rtype: str + """ + return self._filename + + @filename.setter + def filename(self, filename): + """ + Sets the filename of this Episode. + + + :param filename: The filename of this Episode. + :type: str + """ + self._filename = filename + + @property + def series_id(self): + """ + Gets the series_id of this Episode. + + + :return: The series_id of this Episode. + :rtype: str + """ + return self._series_id + + @series_id.setter + def series_id(self, series_id): + """ + Sets the series_id of this Episode. + + + :param series_id: The series_id of this Episode. + :type: str + """ + self._series_id = series_id + + @property + def last_updated_by(self): + """ + Gets the last_updated_by of this Episode. + + + :return: The last_updated_by of this Episode. + :rtype: str + """ + return self._last_updated_by + + @last_updated_by.setter + def last_updated_by(self, last_updated_by): + """ + Sets the last_updated_by of this Episode. + + + :param last_updated_by: The last_updated_by of this Episode. + :type: str + """ + self._last_updated_by = last_updated_by + + @property + def airs_after_season(self): + """ + Gets the airs_after_season of this Episode. + + + :return: The airs_after_season of this Episode. + :rtype: int + """ + return self._airs_after_season + + @airs_after_season.setter + def airs_after_season(self, airs_after_season): + """ + Sets the airs_after_season of this Episode. + + + :param airs_after_season: The airs_after_season of this Episode. + :type: int + """ + self._airs_after_season = airs_after_season + + @property + def airs_before_season(self): + """ + Gets the airs_before_season of this Episode. + + + :return: The airs_before_season of this Episode. + :rtype: int + """ + return self._airs_before_season + + @airs_before_season.setter + def airs_before_season(self, airs_before_season): + """ + Sets the airs_before_season of this Episode. + + + :param airs_before_season: The airs_before_season of this Episode. + :type: int + """ + self._airs_before_season = airs_before_season + + @property + def airs_before_episode(self): + """ + Gets the airs_before_episode of this Episode. + + + :return: The airs_before_episode of this Episode. + :rtype: int + """ + return self._airs_before_episode + + @airs_before_episode.setter + def airs_before_episode(self, airs_before_episode): + """ + Sets the airs_before_episode of this Episode. + + + :param airs_before_episode: The airs_before_episode of this Episode. + :type: int + """ + self._airs_before_episode = airs_before_episode + + @property + def thumb_author(self): + """ + Gets the thumb_author of this Episode. + + + :return: The thumb_author of this Episode. + :rtype: str + """ + return self._thumb_author + + @thumb_author.setter + def thumb_author(self, thumb_author): + """ + Sets the thumb_author of this Episode. + + + :param thumb_author: The thumb_author of this Episode. + :type: str + """ + self._thumb_author = thumb_author + + @property + def thumb_added(self): + """ + Gets the thumb_added of this Episode. + + + :return: The thumb_added of this Episode. + :rtype: str + """ + return self._thumb_added + + @thumb_added.setter + def thumb_added(self, thumb_added): + """ + Sets the thumb_added of this Episode. + + + :param thumb_added: The thumb_added of this Episode. + :type: str + """ + self._thumb_added = thumb_added + + @property + def thumb_width(self): + """ + Gets the thumb_width of this Episode. + + + :return: The thumb_width of this Episode. + :rtype: str + """ + return self._thumb_width + + @thumb_width.setter + def thumb_width(self, thumb_width): + """ + Sets the thumb_width of this Episode. + + + :param thumb_width: The thumb_width of this Episode. + :type: str + """ + self._thumb_width = thumb_width + + @property + def thumb_height(self): + """ + Gets the thumb_height of this Episode. + + + :return: The thumb_height of this Episode. + :rtype: str + """ + return self._thumb_height + + @thumb_height.setter + def thumb_height(self, thumb_height): + """ + Sets the thumb_height of this Episode. + + + :param thumb_height: The thumb_height of this Episode. + :type: str + """ + self._thumb_height = thumb_height + + @property + def imdb_id(self): + """ + Gets the imdb_id of this Episode. + + + :return: The imdb_id of this Episode. + :rtype: str + """ + return self._imdb_id + + @imdb_id.setter + def imdb_id(self, imdb_id): + """ + Sets the imdb_id of this Episode. + + + :param imdb_id: The imdb_id of this Episode. + :type: str + """ + self._imdb_id = imdb_id + + @property + def site_rating(self): + """ + Gets the site_rating of this Episode. + + + :return: The site_rating of this Episode. + :rtype: float + """ + return self._site_rating + + @site_rating.setter + def site_rating(self, site_rating): + """ + Sets the site_rating of this Episode. + + + :param site_rating: The site_rating of this Episode. + :type: float + """ + self._site_rating = site_rating + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/models/episode_data.py b/lib/tvdbapiv2/models/episode_data.py new file mode 100644 index 0000000000..76fceab20b --- /dev/null +++ b/lib/tvdbapiv2/models/episode_data.py @@ -0,0 +1,113 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class EpisodeData(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + EpisodeData - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'data': 'Episode' + } + + self.attribute_map = { + 'data': 'data' + } + + self._data = None + + @property + def data(self): + """ + Gets the data of this EpisodeData. + + + :return: The data of this EpisodeData. + :rtype: Episode + """ + return self._data + + @data.setter + def data(self, data): + """ + Sets the data of this EpisodeData. + + + :param data: The data of this EpisodeData. + :type: Episode + """ + self._data = data + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other diff --git a/lib/tvdbapiv2/models/episode_data_query_params.py b/lib/tvdbapiv2/models/episode_data_query_params.py new file mode 100644 index 0000000000..bebb6381cb --- /dev/null +++ b/lib/tvdbapiv2/models/episode_data_query_params.py @@ -0,0 +1,114 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class EpisodeDataQueryParams(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + EpisodeDataQueryParams - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'data': 'list[str]' + } + + self.attribute_map = { + 'data': 'data' + } + + self._data = None + + @property + def data(self): + """ + Gets the data of this EpisodeDataQueryParams. + + + :return: The data of this EpisodeDataQueryParams. + :rtype: list[str] + """ + return self._data + + @data.setter + def data(self, data): + """ + Sets the data of this EpisodeDataQueryParams. + + + :param data: The data of this EpisodeDataQueryParams. + :type: list[str] + """ + self._data = data + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/models/filter_keys.py b/lib/tvdbapiv2/models/filter_keys.py new file mode 100644 index 0000000000..35d9811318 --- /dev/null +++ b/lib/tvdbapiv2/models/filter_keys.py @@ -0,0 +1,114 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class FilterKeys(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + FilterKeys - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'data': 'list[str]' + } + + self.attribute_map = { + 'data': 'data' + } + + self._data = None + + @property + def data(self): + """ + Gets the data of this FilterKeys. + + + :return: The data of this FilterKeys. + :rtype: list[str] + """ + return self._data + + @data.setter + def data(self, data): + """ + Sets the data of this FilterKeys. + + + :param data: The data of this FilterKeys. + :type: list[str] + """ + self._data = data + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/models/language.py b/lib/tvdbapiv2/models/language.py new file mode 100644 index 0000000000..1673f416e0 --- /dev/null +++ b/lib/tvdbapiv2/models/language.py @@ -0,0 +1,189 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class Language(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + Language - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'id': 'int', + 'abbreviation': 'str', + 'name': 'str', + 'english_name': 'str' + } + + self.attribute_map = { + 'id': 'id', + 'abbreviation': 'abbreviation', + 'name': 'name', + 'english_name': 'englishName' + } + + self._id = None + self._abbreviation = None + self._name = None + self._english_name = None + + @property + def id(self): + """ + Gets the id of this Language. + + + :return: The id of this Language. + :rtype: int + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this Language. + + + :param id: The id of this Language. + :type: int + """ + self._id = id + + @property + def abbreviation(self): + """ + Gets the abbreviation of this Language. + + + :return: The abbreviation of this Language. + :rtype: str + """ + return self._abbreviation + + @abbreviation.setter + def abbreviation(self, abbreviation): + """ + Sets the abbreviation of this Language. + + + :param abbreviation: The abbreviation of this Language. + :type: str + """ + self._abbreviation = abbreviation + + @property + def name(self): + """ + Gets the name of this Language. + + + :return: The name of this Language. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this Language. + + + :param name: The name of this Language. + :type: str + """ + self._name = name + + @property + def english_name(self): + """ + Gets the english_name of this Language. + + + :return: The english_name of this Language. + :rtype: str + """ + return self._english_name + + @english_name.setter + def english_name(self, english_name): + """ + Sets the english_name of this Language. + + + :param english_name: The english_name of this Language. + :type: str + """ + self._english_name = english_name + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/models/language_data.py b/lib/tvdbapiv2/models/language_data.py new file mode 100644 index 0000000000..46635d45ff --- /dev/null +++ b/lib/tvdbapiv2/models/language_data.py @@ -0,0 +1,114 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class LanguageData(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + LanguageData - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'data': 'list[Language]' + } + + self.attribute_map = { + 'data': 'data' + } + + self._data = None + + @property + def data(self): + """ + Gets the data of this LanguageData. + + + :return: The data of this LanguageData. + :rtype: list[Language] + """ + return self._data + + @data.setter + def data(self, data): + """ + Sets the data of this LanguageData. + + + :param data: The data of this LanguageData. + :type: list[Language] + """ + self._data = data + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/models/links.py b/lib/tvdbapiv2/models/links.py new file mode 100644 index 0000000000..119d7c0f1b --- /dev/null +++ b/lib/tvdbapiv2/models/links.py @@ -0,0 +1,189 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class Links(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + Links - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'first': 'int', + 'last': 'int', + 'next': 'int', + 'previous': 'int' + } + + self.attribute_map = { + 'first': 'first', + 'last': 'last', + 'next': 'next', + 'previous': 'previous' + } + + self._first = None + self._last = None + self._next = None + self._previous = None + + @property + def first(self): + """ + Gets the first of this Links. + + + :return: The first of this Links. + :rtype: int + """ + return self._first + + @first.setter + def first(self, first): + """ + Sets the first of this Links. + + + :param first: The first of this Links. + :type: int + """ + self._first = first + + @property + def last(self): + """ + Gets the last of this Links. + + + :return: The last of this Links. + :rtype: int + """ + return self._last + + @last.setter + def last(self, last): + """ + Sets the last of this Links. + + + :param last: The last of this Links. + :type: int + """ + self._last = last + + @property + def next(self): + """ + Gets the next of this Links. + + + :return: The next of this Links. + :rtype: int + """ + return self._next + + @next.setter + def next(self, next): + """ + Sets the next of this Links. + + + :param next: The next of this Links. + :type: int + """ + self._next = next + + @property + def previous(self): + """ + Gets the previous of this Links. + + + :return: The previous of this Links. + :rtype: int + """ + return self._previous + + @previous.setter + def previous(self, previous): + """ + Sets the previous of this Links. + + + :param previous: The previous of this Links. + :type: int + """ + self._previous = previous + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/models/not_authorized.py b/lib/tvdbapiv2/models/not_authorized.py new file mode 100644 index 0000000000..87024fef46 --- /dev/null +++ b/lib/tvdbapiv2/models/not_authorized.py @@ -0,0 +1,114 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class NotAuthorized(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + NotAuthorized - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'error': 'str' + } + + self.attribute_map = { + 'error': 'Error' + } + + self._error = 'Not Authorized' + + @property + def error(self): + """ + Gets the error of this NotAuthorized. + + + :return: The error of this NotAuthorized. + :rtype: str + """ + return self._error + + @error.setter + def error(self, error): + """ + Sets the error of this NotAuthorized. + + + :param error: The error of this NotAuthorized. + :type: str + """ + self._error = error + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/models/not_found.py b/lib/tvdbapiv2/models/not_found.py new file mode 100644 index 0000000000..41443e3e96 --- /dev/null +++ b/lib/tvdbapiv2/models/not_found.py @@ -0,0 +1,114 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class NotFound(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + NotFound - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'error': 'str' + } + + self.attribute_map = { + 'error': 'Error' + } + + self._error = 'Not Found' + + @property + def error(self): + """ + Gets the error of this NotFound. + + + :return: The error of this NotFound. + :rtype: str + """ + return self._error + + @error.setter + def error(self, error): + """ + Sets the error of this NotFound. + + + :param error: The error of this NotFound. + :type: str + """ + self._error = error + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/models/search_series.py b/lib/tvdbapiv2/models/search_series.py new file mode 100644 index 0000000000..919835548f --- /dev/null +++ b/lib/tvdbapiv2/models/search_series.py @@ -0,0 +1,113 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class SearchSeries(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + SearchSeries - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'data': 'list[Series]' + } + + self.attribute_map = { + 'data': 'data' + } + + self._data = None + + @property + def data(self): + """ + Gets the data of this SeriesData. + + + :return: The data of this SeriesData. + :rtype: Series + """ + return self._data + + @data.setter + def data(self, data): + """ + Sets the data of this SeriesData. + + + :param data: The data of this SeriesData. + :type: Series + """ + self._data = data + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other diff --git a/lib/tvdbapiv2/models/series.py b/lib/tvdbapiv2/models/series.py new file mode 100644 index 0000000000..46bab114b7 --- /dev/null +++ b/lib/tvdbapiv2/models/series.py @@ -0,0 +1,589 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class Series(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + Series - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'id': 'int', + 'series_name': 'unicode', + 'aliases': 'list[unicode]', + 'banner': 'unicode', + 'series_id': 'unicode', + 'status': 'unicode', + 'first_aired': 'unicode', + 'network': 'unicode', + 'network_id': 'unicode', + 'runtime': 'unicode', + 'genre': 'list[unicode]', + 'overview': 'unicode', + 'last_updated': 'int', + 'airs_day_of_week': 'unicode', + 'airs_time': 'unicode', + 'rating': 'unicode', + 'imdb_id': 'unicode', + 'zap2it_id': 'unicode', + 'added': 'unicode', + 'site_rating': 'float' + } + + self.attribute_map = { + 'id': 'id', + 'series_name': 'seriesName', + 'aliases': 'aliases', + 'banner': 'banner', + 'series_id': 'seriesId', + 'status': 'status', + 'first_aired': 'firstAired', + 'network': 'network', + 'network_id': 'networkId', + 'runtime': 'runtime', + 'genre': 'genre', + 'overview': 'overview', + 'last_updated': 'lastUpdated', + 'airs_day_of_week': 'airsDayOfWeek', + 'airs_time': 'airsTime', + 'rating': 'rating', + 'imdb_id': 'imdbId', + 'zap2it_id': 'zap2itId', + 'added': 'added', + 'site_rating': 'siteRating' + } + + self._id = None + self._series_name = None + self._aliases = None + self._banner = None + self._series_id = None + self._status = None + self._first_aired = None + self._network = None + self._network_id = None + self._runtime = None + self._genre = None + self._overview = None + self._last_updated = None + self._airs_day_of_week = None + self._airs_time = None + self._rating = None + self._imdb_id = None + self._zap2it_id = None + self._added = None + self._site_rating = None + + @property + def id(self): + """ + Gets the id of this Series. + + + :return: The id of this Series. + :rtype: int + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this Series. + + + :param id: The id of this Series. + :type: int + """ + self._id = id + + @property + def series_name(self): + """ + Gets the series_name of this Series. + + + :return: The series_name of this Series. + :rtype: unicode + """ + return self._series_name + + @series_name.setter + def series_name(self, series_name): + """ + Sets the series_name of this Series. + + + :param series_name: The series_name of this Series. + :type: unicode + """ + self._series_name = series_name + + @property + def aliases(self): + """ + Gets the aliases of this Series. + + + :return: The aliases of this Series. + :rtype: list[unicode] + """ + return self._aliases + + @aliases.setter + def aliases(self, aliases): + """ + Sets the aliases of this Series. + + + :param aliases: The aliases of this Series. + :type: list[unicode] + """ + self._aliases = aliases + + @property + def banner(self): + """ + Gets the banner of this Series. + + + :return: The banner of this Series. + :rtype: unicode + """ + return self._banner + + @banner.setter + def banner(self, banner): + """ + Sets the banner of this Series. + + + :param banner: The banner of this Series. + :type: unicode + """ + self._banner = banner + + @property + def series_id(self): + """ + Gets the series_id of this Series. + + + :return: The series_id of this Series. + :rtype: unicode + """ + return self._series_id + + @series_id.setter + def series_id(self, series_id): + """ + Sets the series_id of this Series. + + + :param series_id: The series_id of this Series. + :type: unicode + """ + self._series_id = series_id + + @property + def status(self): + """ + Gets the status of this Series. + + + :return: The status of this Series. + :rtype: unicode + """ + return self._status + + @status.setter + def status(self, status): + """ + Sets the status of this Series. + + + :param status: The status of this Series. + :type: unicode + """ + self._status = status + + @property + def first_aired(self): + """ + Gets the first_aired of this Series. + + + :return: The first_aired of this Series. + :rtype: unicode + """ + return self._first_aired + + @first_aired.setter + def first_aired(self, first_aired): + """ + Sets the first_aired of this Series. + + + :param first_aired: The first_aired of this Series. + :type: unicode + """ + self._first_aired = first_aired + + @property + def network(self): + """ + Gets the network of this Series. + + + :return: The network of this Series. + :rtype: unicode + """ + return self._network + + @network.setter + def network(self, network): + """ + Sets the network of this Series. + + + :param network: The network of this Series. + :type: unicode + """ + self._network = network + + @property + def network_id(self): + """ + Gets the network_id of this Series. + + + :return: The network_id of this Series. + :rtype: unicode + """ + return self._network_id + + @network_id.setter + def network_id(self, network_id): + """ + Sets the network_id of this Series. + + + :param network_id: The network_id of this Series. + :type: unicode + """ + self._network_id = network_id + + @property + def runtime(self): + """ + Gets the runtime of this Series. + + + :return: The runtime of this Series. + :rtype: unicode + """ + return self._runtime + + @runtime.setter + def runtime(self, runtime): + """ + Sets the runtime of this Series. + + + :param runtime: The runtime of this Series. + :type: unicode + """ + self._runtime = runtime + + @property + def genre(self): + """ + Gets the genre of this Series. + + + :return: The genre of this Series. + :rtype: list[unicode] + """ + return self._genre + + @genre.setter + def genre(self, genre): + """ + Sets the genre of this Series. + + + :param genre: The genre of this Series. + :type: list[unicode] + """ + self._genre = genre + + @property + def overview(self): + """ + Gets the overview of this Series. + + + :return: The overview of this Series. + :rtype: unicode + """ + return self._overview + + @overview.setter + def overview(self, overview): + """ + Sets the overview of this Series. + + + :param overview: The overview of this Series. + :type: unicode + """ + self._overview = overview + + @property + def last_updated(self): + """ + Gets the last_updated of this Series. + + + :return: The last_updated of this Series. + :rtype: int + """ + return self._last_updated + + @last_updated.setter + def last_updated(self, last_updated): + """ + Sets the last_updated of this Series. + + + :param last_updated: The last_updated of this Series. + :type: int + """ + self._last_updated = last_updated + + @property + def airs_day_of_week(self): + """ + Gets the airs_day_of_week of this Series. + + + :return: The airs_day_of_week of this Series. + :rtype: unicode + """ + return self._airs_day_of_week + + @airs_day_of_week.setter + def airs_day_of_week(self, airs_day_of_week): + """ + Sets the airs_day_of_week of this Series. + + + :param airs_day_of_week: The airs_day_of_week of this Series. + :type: unicode + """ + self._airs_day_of_week = airs_day_of_week + + @property + def airs_time(self): + """ + Gets the airs_time of this Series. + + + :return: The airs_time of this Series. + :rtype: unicode + """ + return self._airs_time + + @airs_time.setter + def airs_time(self, airs_time): + """ + Sets the airs_time of this Series. + + + :param airs_time: The airs_time of this Series. + :type: unicode + """ + self._airs_time = airs_time + + @property + def rating(self): + """ + Gets the rating of this Series. + + + :return: The rating of this Series. + :rtype: unicode + """ + return self._rating + + @rating.setter + def rating(self, rating): + """ + Sets the rating of this Series. + + + :param rating: The rating of this Series. + :type: unicode + """ + self._rating = rating + + @property + def imdb_id(self): + """ + Gets the imdb_id of this Series. + + + :return: The imdb_id of this Series. + :rtype: unicode + """ + return self._imdb_id + + @imdb_id.setter + def imdb_id(self, imdb_id): + """ + Sets the imdb_id of this Series. + + + :param imdb_id: The imdb_id of this Series. + :type: unicode + """ + self._imdb_id = imdb_id + + @property + def zap2it_id(self): + """ + Gets the zap2it_id of this Series. + + + :return: The zap2it_id of this Series. + :rtype: unicode + """ + return self._zap2it_id + + @zap2it_id.setter + def zap2it_id(self, zap2it_id): + """ + Sets the zap2it_id of this Series. + + + :param zap2it_id: The zap2it_id of this Series. + :type: unicode + """ + self._zap2it_id = zap2it_id + + @property + def added(self): + """ + Gets the added of this Series. + + + :return: The added of this Series. + :rtype: unicode + """ + return self._added + + @added.setter + def added(self, added): + """ + Sets the added of this Series. + + + :param added: The added of this Series. + :type: unicode + """ + self._added = added + + @property + def site_rating(self): + """ + Gets the site_rating of this Series. + + + :return: The site_rating of this Series. + :rtype: float + """ + return self._site_rating + + @site_rating.setter + def site_rating(self, site_rating): + """ + Sets the site_rating of this Series. + + + :param site_rating: The site_rating of this Series. + :type: float + """ + self._site_rating = site_rating + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/models/series_actors.py b/lib/tvdbapiv2/models/series_actors.py new file mode 100644 index 0000000000..0edab8c066 --- /dev/null +++ b/lib/tvdbapiv2/models/series_actors.py @@ -0,0 +1,114 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class SeriesActors(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + SeriesActors - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'data': 'list[SeriesActorsData]' + } + + self.attribute_map = { + 'data': 'data' + } + + self._data = None + + @property + def data(self): + """ + Gets the data of this SeriesActors. + + + :return: The data of this SeriesActors. + :rtype: list[SeriesActorsData] + """ + return self._data + + @data.setter + def data(self, data): + """ + Sets the data of this SeriesActors. + + + :param data: The data of this SeriesActors. + :type: list[SeriesActorsData] + """ + self._data = data + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/models/series_actors_data.py b/lib/tvdbapiv2/models/series_actors_data.py new file mode 100644 index 0000000000..0c10595ff9 --- /dev/null +++ b/lib/tvdbapiv2/models/series_actors_data.py @@ -0,0 +1,314 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class SeriesActorsData(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + SeriesActorsData - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'id': 'int', + 'series_id': 'int', + 'name': 'str', + 'role': 'str', + 'sort_order': 'int', + 'image': 'str', + 'image_author': 'int', + 'image_added': 'str', + 'last_updated': 'str' + } + + self.attribute_map = { + 'id': 'id', + 'series_id': 'seriesId', + 'name': 'name', + 'role': 'role', + 'sort_order': 'sortOrder', + 'image': 'image', + 'image_author': 'imageAuthor', + 'image_added': 'imageAdded', + 'last_updated': 'lastUpdated' + } + + self._id = None + self._series_id = None + self._name = None + self._role = None + self._sort_order = None + self._image = None + self._image_author = None + self._image_added = None + self._last_updated = None + + @property + def id(self): + """ + Gets the id of this SeriesActorsData. + + + :return: The id of this SeriesActorsData. + :rtype: int + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this SeriesActorsData. + + + :param id: The id of this SeriesActorsData. + :type: int + """ + self._id = id + + @property + def series_id(self): + """ + Gets the series_id of this SeriesActorsData. + + + :return: The series_id of this SeriesActorsData. + :rtype: int + """ + return self._series_id + + @series_id.setter + def series_id(self, series_id): + """ + Sets the series_id of this SeriesActorsData. + + + :param series_id: The series_id of this SeriesActorsData. + :type: int + """ + self._series_id = series_id + + @property + def name(self): + """ + Gets the name of this SeriesActorsData. + + + :return: The name of this SeriesActorsData. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this SeriesActorsData. + + + :param name: The name of this SeriesActorsData. + :type: str + """ + self._name = name + + @property + def role(self): + """ + Gets the role of this SeriesActorsData. + + + :return: The role of this SeriesActorsData. + :rtype: str + """ + return self._role + + @role.setter + def role(self, role): + """ + Sets the role of this SeriesActorsData. + + + :param role: The role of this SeriesActorsData. + :type: str + """ + self._role = role + + @property + def sort_order(self): + """ + Gets the sort_order of this SeriesActorsData. + + + :return: The sort_order of this SeriesActorsData. + :rtype: int + """ + return self._sort_order + + @sort_order.setter + def sort_order(self, sort_order): + """ + Sets the sort_order of this SeriesActorsData. + + + :param sort_order: The sort_order of this SeriesActorsData. + :type: int + """ + self._sort_order = sort_order + + @property + def image(self): + """ + Gets the image of this SeriesActorsData. + + + :return: The image of this SeriesActorsData. + :rtype: str + """ + return self._image + + @image.setter + def image(self, image): + """ + Sets the image of this SeriesActorsData. + + + :param image: The image of this SeriesActorsData. + :type: str + """ + self._image = image + + @property + def image_author(self): + """ + Gets the image_author of this SeriesActorsData. + + + :return: The image_author of this SeriesActorsData. + :rtype: int + """ + return self._image_author + + @image_author.setter + def image_author(self, image_author): + """ + Sets the image_author of this SeriesActorsData. + + + :param image_author: The image_author of this SeriesActorsData. + :type: int + """ + self._image_author = image_author + + @property + def image_added(self): + """ + Gets the image_added of this SeriesActorsData. + + + :return: The image_added of this SeriesActorsData. + :rtype: str + """ + return self._image_added + + @image_added.setter + def image_added(self, image_added): + """ + Sets the image_added of this SeriesActorsData. + + + :param image_added: The image_added of this SeriesActorsData. + :type: str + """ + self._image_added = image_added + + @property + def last_updated(self): + """ + Gets the last_updated of this SeriesActorsData. + + + :return: The last_updated of this SeriesActorsData. + :rtype: str + """ + return self._last_updated + + @last_updated.setter + def last_updated(self, last_updated): + """ + Sets the last_updated of this SeriesActorsData. + + + :param last_updated: The last_updated of this SeriesActorsData. + :type: str + """ + self._last_updated = last_updated + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/models/series_data.py b/lib/tvdbapiv2/models/series_data.py new file mode 100644 index 0000000000..cb638a758d --- /dev/null +++ b/lib/tvdbapiv2/models/series_data.py @@ -0,0 +1,113 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class SeriesData(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + SeriesData - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'data': 'Series' + } + + self.attribute_map = { + 'data': 'data' + } + + self._data = None + + @property + def data(self): + """ + Gets the data of this SeriesData. + + + :return: The data of this SeriesData. + :rtype: Series + """ + return self._data + + @data.setter + def data(self, data): + """ + Sets the data of this SeriesData. + + + :param data: The data of this SeriesData. + :type: Series + """ + self._data = data + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other diff --git a/lib/tvdbapiv2/models/series_episodes.py b/lib/tvdbapiv2/models/series_episodes.py new file mode 100644 index 0000000000..f79c8149e7 --- /dev/null +++ b/lib/tvdbapiv2/models/series_episodes.py @@ -0,0 +1,139 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class SeriesEpisodes(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + SeriesEpisodes - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'links': 'Links', + 'data': 'list[BasicEpisode]' + } + + self.attribute_map = { + 'links': 'links', + 'data': 'data' + } + + self._links = None + self._data = None + + @property + def links(self): + """ + Gets the links of this SeriesEpisodes. + + + :return: The links of this SeriesEpisodes. + :rtype: Links + """ + return self._links + + @links.setter + def links(self, links): + """ + Sets the links of this SeriesEpisodes. + + + :param links: The links of this SeriesEpisodes. + :type: Links + """ + self._links = links + + @property + def data(self): + """ + Gets the data of this SeriesEpisodes. + + + :return: The data of this SeriesEpisodes. + :rtype: list[BasicEpisode] + """ + return self._data + + @data.setter + def data(self, data): + """ + Sets the data of this SeriesEpisodes. + + + :param data: The data of this SeriesEpisodes. + :type: list[BasicEpisode] + """ + self._data = data + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/models/series_episodes_query.py b/lib/tvdbapiv2/models/series_episodes_query.py new file mode 100644 index 0000000000..aef394402f --- /dev/null +++ b/lib/tvdbapiv2/models/series_episodes_query.py @@ -0,0 +1,139 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class SeriesEpisodesQuery(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + SeriesEpisodesQuery - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'links': 'Links', + 'data': 'list[Episode]' + } + + self.attribute_map = { + 'links': 'links', + 'data': 'data' + } + + self._links = None + self._data = None + + @property + def links(self): + """ + Gets the links of this SeriesEpisodesQuery. + + + :return: The links of this SeriesEpisodesQuery. + :rtype: Links + """ + return self._links + + @links.setter + def links(self, links): + """ + Sets the links of this SeriesEpisodesQuery. + + + :param links: The links of this SeriesEpisodesQuery. + :type: Links + """ + self._links = links + + @property + def data(self): + """ + Gets the data of this SeriesEpisodesQuery. + + + :return: The data of this SeriesEpisodesQuery. + :rtype: list[BasicEpisode] + """ + return self._data + + @data.setter + def data(self, data): + """ + Sets the data of this SeriesEpisodesQuery. + + + :param data: The data of this SeriesEpisodesQuery. + :type: list[BasicEpisode] + """ + self._data = data + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/models/series_episodes_query_params.py b/lib/tvdbapiv2/models/series_episodes_query_params.py new file mode 100644 index 0000000000..aeee29a7b0 --- /dev/null +++ b/lib/tvdbapiv2/models/series_episodes_query_params.py @@ -0,0 +1,114 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class SeriesEpisodesQueryParams(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + SeriesEpisodesQueryParams - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'data': 'list[str]' + } + + self.attribute_map = { + 'data': 'data' + } + + self._data = None + + @property + def data(self): + """ + Gets the data of this SeriesEpisodesQueryParams. + + + :return: The data of this SeriesEpisodesQueryParams. + :rtype: list[str] + """ + return self._data + + @data.setter + def data(self, data): + """ + Sets the data of this SeriesEpisodesQueryParams. + + + :param data: The data of this SeriesEpisodesQueryParams. + :type: list[str] + """ + self._data = data + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/models/series_episodes_summary.py b/lib/tvdbapiv2/models/series_episodes_summary.py new file mode 100644 index 0000000000..0ae00fb18f --- /dev/null +++ b/lib/tvdbapiv2/models/series_episodes_summary.py @@ -0,0 +1,189 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class SeriesEpisodesSummary(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + SeriesEpisodesSummary - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'aired_seasons': 'list[str]', + 'aired_episodes': 'str', + 'dvd_seasons': 'list[str]', + 'dvd_episodes': 'str' + } + + self.attribute_map = { + 'aired_seasons': 'airedSeasons', + 'aired_episodes': 'airedEpisodes', + 'dvd_seasons': 'dvdSeasons', + 'dvd_episodes': 'dvdEpisodes' + } + + self._aired_seasons = None + self._aired_episodes = None + self._dvd_seasons = None + self._dvd_episodes = None + + @property + def aired_seasons(self): + """ + Gets the aired_seasons of this SeriesEpisodesSummary. + + + :return: The aired_seasons of this SeriesEpisodesSummary. + :rtype: list[str] + """ + return self._aired_seasons + + @aired_seasons.setter + def aired_seasons(self, aired_seasons): + """ + Sets the aired_seasons of this SeriesEpisodesSummary. + + + :param aired_seasons: The aired_seasons of this SeriesEpisodesSummary. + :type: list[str] + """ + self._aired_seasons = aired_seasons + + @property + def aired_episodes(self): + """ + Gets the aired_episodes of this SeriesEpisodesSummary. + Number of all aired episodes for this series + + :return: The aired_episodes of this SeriesEpisodesSummary. + :rtype: str + """ + return self._aired_episodes + + @aired_episodes.setter + def aired_episodes(self, aired_episodes): + """ + Sets the aired_episodes of this SeriesEpisodesSummary. + Number of all aired episodes for this series + + :param aired_episodes: The aired_episodes of this SeriesEpisodesSummary. + :type: str + """ + self._aired_episodes = aired_episodes + + @property + def dvd_seasons(self): + """ + Gets the dvd_seasons of this SeriesEpisodesSummary. + + + :return: The dvd_seasons of this SeriesEpisodesSummary. + :rtype: list[str] + """ + return self._dvd_seasons + + @dvd_seasons.setter + def dvd_seasons(self, dvd_seasons): + """ + Sets the dvd_seasons of this SeriesEpisodesSummary. + + + :param dvd_seasons: The dvd_seasons of this SeriesEpisodesSummary. + :type: list[str] + """ + self._dvd_seasons = dvd_seasons + + @property + def dvd_episodes(self): + """ + Gets the dvd_episodes of this SeriesEpisodesSummary. + Number of all dvd episodes for this series + + :return: The dvd_episodes of this SeriesEpisodesSummary. + :rtype: str + """ + return self._dvd_episodes + + @dvd_episodes.setter + def dvd_episodes(self, dvd_episodes): + """ + Sets the dvd_episodes of this SeriesEpisodesSummary. + Number of all dvd episodes for this series + + :param dvd_episodes: The dvd_episodes of this SeriesEpisodesSummary. + :type: str + """ + self._dvd_episodes = dvd_episodes + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/models/series_image_query_result.py b/lib/tvdbapiv2/models/series_image_query_result.py new file mode 100644 index 0000000000..c6d0bc3c47 --- /dev/null +++ b/lib/tvdbapiv2/models/series_image_query_result.py @@ -0,0 +1,289 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class SeriesImageQueryResult(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + SeriesImageQueryResult - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'id': 'int', + 'key_type': 'str', + 'sub_key': 'str', + 'file_name': 'str', + 'language_id': 'int', + 'resolution': 'str', + 'ratings_info': 'int', + 'thumbnail': 'str' + } + + self.attribute_map = { + 'id': 'id', + 'key_type': 'keyType', + 'sub_key': 'subKey', + 'file_name': 'fileName', + 'language_id': 'languageId', + 'resolution': 'resolution', + 'ratings_info': 'ratingsInfo', + 'thumbnail': 'thumbnail' + } + + self._id = None + self._key_type = None + self._sub_key = None + self._file_name = None + self._language_id = None + self._resolution = None + self._ratings_info = None + self._thumbnail = None + + @property + def id(self): + """ + Gets the id of this SeriesImageQueryResult. + + + :return: The id of this SeriesImageQueryResult. + :rtype: int + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this SeriesImageQueryResult. + + + :param id: The id of this SeriesImageQueryResult. + :type: int + """ + self._id = id + + @property + def key_type(self): + """ + Gets the key_type of this SeriesImageQueryResult. + + + :return: The key_type of this SeriesImageQueryResult. + :rtype: str + """ + return self._key_type + + @key_type.setter + def key_type(self, key_type): + """ + Sets the key_type of this SeriesImageQueryResult. + + + :param key_type: The key_type of this SeriesImageQueryResult. + :type: str + """ + self._key_type = key_type + + @property + def sub_key(self): + """ + Gets the sub_key of this SeriesImageQueryResult. + + + :return: The sub_key of this SeriesImageQueryResult. + :rtype: str + """ + return self._sub_key + + @sub_key.setter + def sub_key(self, sub_key): + """ + Sets the sub_key of this SeriesImageQueryResult. + + + :param sub_key: The sub_key of this SeriesImageQueryResult. + :type: str + """ + self._sub_key = sub_key + + @property + def file_name(self): + """ + Gets the file_name of this SeriesImageQueryResult. + + + :return: The file_name of this SeriesImageQueryResult. + :rtype: str + """ + return self._file_name + + @file_name.setter + def file_name(self, file_name): + """ + Sets the file_name of this SeriesImageQueryResult. + + + :param file_name: The file_name of this SeriesImageQueryResult. + :type: str + """ + self._file_name = file_name + + @property + def language_id(self): + """ + Gets the language_id of this SeriesImageQueryResult. + + + :return: The language_id of this SeriesImageQueryResult. + :rtype: int + """ + return self._language_id + + @language_id.setter + def language_id(self, language_id): + """ + Sets the language_id of this SeriesImageQueryResult. + + + :param language_id: The language_id of this SeriesImageQueryResult. + :type: int + """ + self._language_id = language_id + + @property + def resolution(self): + """ + Gets the resolution of this SeriesImageQueryResult. + + + :return: The resolution of this SeriesImageQueryResult. + :rtype: str + """ + return self._resolution + + @resolution.setter + def resolution(self, resolution): + """ + Sets the resolution of this SeriesImageQueryResult. + + + :param resolution: The resolution of this SeriesImageQueryResult. + :type: str + """ + self._resolution = resolution + + @property + def ratings_info(self): + """ + Gets the ratings_info of this SeriesImageQueryResult. + Average rating for the given record. + + :return: The ratings_info of this SeriesImageQueryResult. + :rtype: int + """ + return self._ratings_info + + @ratings_info.setter + def ratings_info(self, ratings_info): + """ + Sets the ratings_info of this SeriesImageQueryResult. + Average rating for the given record. + + :param ratings_info: The ratings_info of this SeriesImageQueryResult. + :type: int + """ + self._ratings_info = ratings_info + + @property + def thumbnail(self): + """ + Gets the thumbnail of this SeriesImageQueryResult. + + + :return: The thumbnail of this SeriesImageQueryResult. + :rtype: str + """ + return self._thumbnail + + @thumbnail.setter + def thumbnail(self, thumbnail): + """ + Sets the thumbnail of this SeriesImageQueryResult. + + + :param thumbnail: The thumbnail of this SeriesImageQueryResult. + :type: str + """ + self._thumbnail = thumbnail + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/models/series_image_query_results.py b/lib/tvdbapiv2/models/series_image_query_results.py new file mode 100644 index 0000000000..f7bf7c9421 --- /dev/null +++ b/lib/tvdbapiv2/models/series_image_query_results.py @@ -0,0 +1,114 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class SeriesImageQueryResults(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + SeriesImageQueryResults - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'data': 'list[SeriesImageQueryResult]' + } + + self.attribute_map = { + 'data': 'data' + } + + self._data = None + + @property + def data(self): + """ + Gets the data of this SeriesImageQueryResults. + + + :return: The data of this SeriesImageQueryResults. + :rtype: list[SeriesImageQueryResult] + """ + return self._data + + @data.setter + def data(self, data): + """ + Sets the data of this SeriesImageQueryResults. + + + :param data: The data of this SeriesImageQueryResults. + :type: list[SeriesImageQueryResult] + """ + self._data = data + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/models/series_images_count.py b/lib/tvdbapiv2/models/series_images_count.py new file mode 100644 index 0000000000..f3a9e9229d --- /dev/null +++ b/lib/tvdbapiv2/models/series_images_count.py @@ -0,0 +1,214 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class SeriesImagesCount(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + SeriesImagesCount - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'fanart': 'int', + 'poster': 'int', + 'season': 'int', + 'seasonwide': 'int', + 'series': 'int' + } + + self.attribute_map = { + 'fanart': 'fanart', + 'poster': 'poster', + 'season': 'season', + 'seasonwide': 'seasonwide', + 'series': 'series' + } + + self._fanart = None + self._poster = None + self._season = None + self._seasonwide = None + self._series = None + + @property + def fanart(self): + """ + Gets the fanart of this SeriesImagesCount. + + + :return: The fanart of this SeriesImagesCount. + :rtype: int + """ + return self._fanart + + @fanart.setter + def fanart(self, fanart): + """ + Sets the fanart of this SeriesImagesCount. + + + :param fanart: The fanart of this SeriesImagesCount. + :type: int + """ + self._fanart = fanart + + @property + def poster(self): + """ + Gets the poster of this SeriesImagesCount. + + + :return: The poster of this SeriesImagesCount. + :rtype: int + """ + return self._poster + + @poster.setter + def poster(self, poster): + """ + Sets the poster of this SeriesImagesCount. + + + :param poster: The poster of this SeriesImagesCount. + :type: int + """ + self._poster = poster + + @property + def season(self): + """ + Gets the season of this SeriesImagesCount. + + + :return: The season of this SeriesImagesCount. + :rtype: int + """ + return self._season + + @season.setter + def season(self, season): + """ + Sets the season of this SeriesImagesCount. + + + :param season: The season of this SeriesImagesCount. + :type: int + """ + self._season = season + + @property + def seasonwide(self): + """ + Gets the seasonwide of this SeriesImagesCount. + + + :return: The seasonwide of this SeriesImagesCount. + :rtype: int + """ + return self._seasonwide + + @seasonwide.setter + def seasonwide(self, seasonwide): + """ + Sets the seasonwide of this SeriesImagesCount. + + + :param seasonwide: The seasonwide of this SeriesImagesCount. + :type: int + """ + self._seasonwide = seasonwide + + @property + def series(self): + """ + Gets the series of this SeriesImagesCount. + + + :return: The series of this SeriesImagesCount. + :rtype: int + """ + return self._series + + @series.setter + def series(self, series): + """ + Sets the series of this SeriesImagesCount. + + + :param series: The series of this SeriesImagesCount. + :type: int + """ + self._series = series + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/models/series_images_counts.py b/lib/tvdbapiv2/models/series_images_counts.py new file mode 100644 index 0000000000..5a51fd6e9b --- /dev/null +++ b/lib/tvdbapiv2/models/series_images_counts.py @@ -0,0 +1,114 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class SeriesImagesCounts(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + SeriesImagesCounts - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'data': 'SeriesImagesCount' + } + + self.attribute_map = { + 'data': 'data' + } + + self._data = None + + @property + def data(self): + """ + Gets the data of this SeriesImagesCounts. + + + :return: The data of this SeriesImagesCounts. + :rtype: SeriesImagesCount + """ + return self._data + + @data.setter + def data(self, data): + """ + Sets the data of this SeriesImagesCounts. + + + :param data: The data of this SeriesImagesCounts. + :type: SeriesImagesCount + """ + self._data = data + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/models/series_images_query_param.py b/lib/tvdbapiv2/models/series_images_query_param.py new file mode 100644 index 0000000000..997dbc05b8 --- /dev/null +++ b/lib/tvdbapiv2/models/series_images_query_param.py @@ -0,0 +1,189 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class SeriesImagesQueryParam(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + SeriesImagesQueryParam - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'key_type': 'str', + 'language_id': 'str', + 'resolution': 'list[str]', + 'sub_key': 'list[str]' + } + + self.attribute_map = { + 'key_type': 'keyType', + 'language_id': 'languageId', + 'resolution': 'resolution', + 'sub_key': 'subKey' + } + + self._key_type = None + self._language_id = None + self._resolution = None + self._sub_key = None + + @property + def key_type(self): + """ + Gets the key_type of this SeriesImagesQueryParam. + + + :return: The key_type of this SeriesImagesQueryParam. + :rtype: str + """ + return self._key_type + + @key_type.setter + def key_type(self, key_type): + """ + Sets the key_type of this SeriesImagesQueryParam. + + + :param key_type: The key_type of this SeriesImagesQueryParam. + :type: str + """ + self._key_type = key_type + + @property + def language_id(self): + """ + Gets the language_id of this SeriesImagesQueryParam. + + + :return: The language_id of this SeriesImagesQueryParam. + :rtype: str + """ + return self._language_id + + @language_id.setter + def language_id(self, language_id): + """ + Sets the language_id of this SeriesImagesQueryParam. + + + :param language_id: The language_id of this SeriesImagesQueryParam. + :type: str + """ + self._language_id = language_id + + @property + def resolution(self): + """ + Gets the resolution of this SeriesImagesQueryParam. + + + :return: The resolution of this SeriesImagesQueryParam. + :rtype: list[str] + """ + return self._resolution + + @resolution.setter + def resolution(self, resolution): + """ + Sets the resolution of this SeriesImagesQueryParam. + + + :param resolution: The resolution of this SeriesImagesQueryParam. + :type: list[str] + """ + self._resolution = resolution + + @property + def sub_key(self): + """ + Gets the sub_key of this SeriesImagesQueryParam. + + + :return: The sub_key of this SeriesImagesQueryParam. + :rtype: list[str] + """ + return self._sub_key + + @sub_key.setter + def sub_key(self, sub_key): + """ + Sets the sub_key of this SeriesImagesQueryParam. + + + :param sub_key: The sub_key of this SeriesImagesQueryParam. + :type: list[str] + """ + self._sub_key = sub_key + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/models/series_images_query_params.py b/lib/tvdbapiv2/models/series_images_query_params.py new file mode 100644 index 0000000000..4b6e56cab2 --- /dev/null +++ b/lib/tvdbapiv2/models/series_images_query_params.py @@ -0,0 +1,114 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class SeriesImagesQueryParams(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + SeriesImagesQueryParams - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'data': 'list[SeriesImagesQueryParam]' + } + + self.attribute_map = { + 'data': 'data' + } + + self._data = None + + @property + def data(self): + """ + Gets the data of this SeriesImagesQueryParams. + + + :return: The data of this SeriesImagesQueryParams. + :rtype: list[SeriesImagesQueryParam] + """ + return self._data + + @data.setter + def data(self, data): + """ + Sets the data of this SeriesImagesQueryParams. + + + :param data: The data of this SeriesImagesQueryParams. + :type: list[SeriesImagesQueryParam] + """ + self._data = data + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/models/token.py b/lib/tvdbapiv2/models/token.py new file mode 100644 index 0000000000..ae6250d16c --- /dev/null +++ b/lib/tvdbapiv2/models/token.py @@ -0,0 +1,114 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class Token(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + Token - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'token': 'unicode' + } + + self.attribute_map = { + 'token': 'token' + } + + self._token = None + + @property + def token(self): + """ + Gets the token of this Token. + + + :return: The token of this Token. + :rtype: unicode + """ + return self._token + + @token.setter + def token(self, token): + """ + Sets the token of this Token. + + + :param token: The token of this Token. + :type: unicode + """ + self._token = token + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/models/update.py b/lib/tvdbapiv2/models/update.py new file mode 100644 index 0000000000..bfe44cf2ca --- /dev/null +++ b/lib/tvdbapiv2/models/update.py @@ -0,0 +1,139 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class Update(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + Update - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'id': 'int', + 'last_updated': 'int' + } + + self.attribute_map = { + 'id': 'id', + 'last_updated': 'lastUpdated' + } + + self._id = None + self._last_updated = None + + @property + def id(self): + """ + Gets the id of this Update. + + + :return: The id of this Update. + :rtype: int + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this Update. + + + :param id: The id of this Update. + :type: int + """ + self._id = id + + @property + def last_updated(self): + """ + Gets the last_updated of this Update. + + + :return: The last_updated of this Update. + :rtype: int + """ + return self._last_updated + + @last_updated.setter + def last_updated(self, last_updated): + """ + Sets the last_updated of this Update. + + + :param last_updated: The last_updated of this Update. + :type: int + """ + self._last_updated = last_updated + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/models/update_data.py b/lib/tvdbapiv2/models/update_data.py new file mode 100644 index 0000000000..a923f9bb4c --- /dev/null +++ b/lib/tvdbapiv2/models/update_data.py @@ -0,0 +1,114 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class UpdateData(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + UpdateData - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'data': 'list[Update]' + } + + self.attribute_map = { + 'data': 'data' + } + + self._data = None + + @property + def data(self): + """ + Gets the data of this UpdateData. + + + :return: The data of this UpdateData. + :rtype: list[Update] + """ + return self._data + + @data.setter + def data(self, data): + """ + Sets the data of this UpdateData. + + + :param data: The data of this UpdateData. + :type: list[Update] + """ + self._data = data + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/models/update_data_query_params.py b/lib/tvdbapiv2/models/update_data_query_params.py new file mode 100644 index 0000000000..5dcb9c6cec --- /dev/null +++ b/lib/tvdbapiv2/models/update_data_query_params.py @@ -0,0 +1,114 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class UpdateDataQueryParams(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + UpdateDataQueryParams - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'data': 'list[str]' + } + + self.attribute_map = { + 'data': 'data' + } + + self._data = None + + @property + def data(self): + """ + Gets the data of this UpdateDataQueryParams. + + + :return: The data of this UpdateDataQueryParams. + :rtype: list[str] + """ + return self._data + + @data.setter + def data(self, data): + """ + Sets the data of this UpdateDataQueryParams. + + + :param data: The data of this UpdateDataQueryParams. + :type: list[str] + """ + self._data = data + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/models/user.py b/lib/tvdbapiv2/models/user.py new file mode 100644 index 0000000000..81759fcd05 --- /dev/null +++ b/lib/tvdbapiv2/models/user.py @@ -0,0 +1,164 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class User(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + User - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'user_name': 'str', + 'language': 'str', + 'favorites_displaymode': 'str' + } + + self.attribute_map = { + 'user_name': 'userName', + 'language': 'language', + 'favorites_displaymode': 'favoritesDisplaymode' + } + + self._user_name = None + self._language = None + self._favorites_displaymode = None + + @property + def user_name(self): + """ + Gets the user_name of this User. + + + :return: The user_name of this User. + :rtype: str + """ + return self._user_name + + @user_name.setter + def user_name(self, user_name): + """ + Sets the user_name of this User. + + + :param user_name: The user_name of this User. + :type: str + """ + self._user_name = user_name + + @property + def language(self): + """ + Gets the language of this User. + + + :return: The language of this User. + :rtype: str + """ + return self._language + + @language.setter + def language(self, language): + """ + Sets the language of this User. + + + :param language: The language of this User. + :type: str + """ + self._language = language + + @property + def favorites_displaymode(self): + """ + Gets the favorites_displaymode of this User. + + + :return: The favorites_displaymode of this User. + :rtype: str + """ + return self._favorites_displaymode + + @favorites_displaymode.setter + def favorites_displaymode(self, favorites_displaymode): + """ + Sets the favorites_displaymode of this User. + + + :param favorites_displaymode: The favorites_displaymode of this User. + :type: str + """ + self._favorites_displaymode = favorites_displaymode + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/models/user_data.py b/lib/tvdbapiv2/models/user_data.py new file mode 100644 index 0000000000..a8a82279a3 --- /dev/null +++ b/lib/tvdbapiv2/models/user_data.py @@ -0,0 +1,113 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class UserData(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + UserData - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'data': 'User' + } + + self.attribute_map = { + 'data': 'data' + } + + self._data = None + + @property + def data(self): + """ + Gets the data of this UserData. + + + :return: The data of this UserData. + :rtype: User + """ + return self._data + + @data.setter + def data(self, data): + """ + Sets the data of this UserData. + + + :param data: The data of this UserData. + :type: User + """ + self._data = data + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other diff --git a/lib/tvdbapiv2/models/user_favorites.py b/lib/tvdbapiv2/models/user_favorites.py new file mode 100644 index 0000000000..969d6ae5f8 --- /dev/null +++ b/lib/tvdbapiv2/models/user_favorites.py @@ -0,0 +1,114 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class UserFavorites(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + UserFavorites - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'favorites': 'list[str]' + } + + self.attribute_map = { + 'favorites': 'favorites' + } + + self._favorites = None + + @property + def favorites(self): + """ + Gets the favorites of this UserFavorites. + + + :return: The favorites of this UserFavorites. + :rtype: list[str] + """ + return self._favorites + + @favorites.setter + def favorites(self, favorites): + """ + Sets the favorites of this UserFavorites. + + + :param favorites: The favorites of this UserFavorites. + :type: list[str] + """ + self._favorites = favorites + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/models/user_favorites_data.py b/lib/tvdbapiv2/models/user_favorites_data.py new file mode 100644 index 0000000000..da709e78c0 --- /dev/null +++ b/lib/tvdbapiv2/models/user_favorites_data.py @@ -0,0 +1,114 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class UserFavoritesData(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + UserFavoritesData - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'data': 'UserFavorites' + } + + self.attribute_map = { + 'data': 'data' + } + + self._data = None + + @property + def data(self): + """ + Gets the data of this UserFavoritesData. + + + :return: The data of this UserFavoritesData. + :rtype: UserFavorites + """ + return self._data + + @data.setter + def data(self, data): + """ + Sets the data of this UserFavoritesData. + + + :param data: The data of this UserFavoritesData. + :type: UserFavorites + """ + self._data = data + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/models/user_ratings.py b/lib/tvdbapiv2/models/user_ratings.py new file mode 100644 index 0000000000..075ceb830c --- /dev/null +++ b/lib/tvdbapiv2/models/user_ratings.py @@ -0,0 +1,164 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class UserRatings(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + UserRatings - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'rating_type': 'str', + 'rating_item_id': 'int', + 'rating': 'int' + } + + self.attribute_map = { + 'rating_type': 'ratingType', + 'rating_item_id': 'ratingItemId', + 'rating': 'rating' + } + + self._rating_type = None + self._rating_item_id = None + self._rating = None + + @property + def rating_type(self): + """ + Gets the rating_type of this UserRatings. + + + :return: The rating_type of this UserRatings. + :rtype: str + """ + return self._rating_type + + @rating_type.setter + def rating_type(self, rating_type): + """ + Sets the rating_type of this UserRatings. + + + :param rating_type: The rating_type of this UserRatings. + :type: str + """ + self._rating_type = rating_type + + @property + def rating_item_id(self): + """ + Gets the rating_item_id of this UserRatings. + + + :return: The rating_item_id of this UserRatings. + :rtype: int + """ + return self._rating_item_id + + @rating_item_id.setter + def rating_item_id(self, rating_item_id): + """ + Sets the rating_item_id of this UserRatings. + + + :param rating_item_id: The rating_item_id of this UserRatings. + :type: int + """ + self._rating_item_id = rating_item_id + + @property + def rating(self): + """ + Gets the rating of this UserRatings. + + + :return: The rating of this UserRatings. + :rtype: int + """ + return self._rating + + @rating.setter + def rating(self, rating): + """ + Sets the rating of this UserRatings. + + + :param rating: The rating of this UserRatings. + :type: int + """ + self._rating = rating + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/models/user_ratings_data.py b/lib/tvdbapiv2/models/user_ratings_data.py new file mode 100644 index 0000000000..814a01cb33 --- /dev/null +++ b/lib/tvdbapiv2/models/user_ratings_data.py @@ -0,0 +1,139 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class UserRatingsData(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + UserRatingsData - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'links': 'Links', + 'data': 'list[UserRatings]' + } + + self.attribute_map = { + 'links': 'links', + 'data': 'data' + } + + self._links = None + self._data = None + + @property + def links(self): + """ + Gets the links of this UserRatingsData. + + + :return: The links of this UserRatingsData. + :rtype: Links + """ + return self._links + + @links.setter + def links(self, links): + """ + Sets the links of this UserRatingsData. + + + :param links: The links of this UserRatingsData. + :type: Links + """ + self._links = links + + @property + def data(self): + """ + Gets the data of this UserRatingsData. + + + :return: The data of this UserRatingsData. + :rtype: list[UserRatings] + """ + return self._data + + @data.setter + def data(self, data): + """ + Sets the data of this UserRatingsData. + + + :param data: The data of this UserRatingsData. + :type: list[UserRatings] + """ + self._data = data + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/models/user_ratings_data_no_links.py b/lib/tvdbapiv2/models/user_ratings_data_no_links.py new file mode 100644 index 0000000000..19567e945c --- /dev/null +++ b/lib/tvdbapiv2/models/user_ratings_data_no_links.py @@ -0,0 +1,114 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class UserRatingsDataNoLinks(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + UserRatingsDataNoLinks - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'data': 'list[UserRatings]' + } + + self.attribute_map = { + 'data': 'data' + } + + self._data = None + + @property + def data(self): + """ + Gets the data of this UserRatingsDataNoLinks. + + + :return: The data of this UserRatingsDataNoLinks. + :rtype: list[UserRatings] + """ + return self._data + + @data.setter + def data(self, data): + """ + Sets the data of this UserRatingsDataNoLinks. + + + :param data: The data of this UserRatingsDataNoLinks. + :type: list[UserRatings] + """ + self._data = data + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/models/user_ratings_data_no_links_empty_array.py b/lib/tvdbapiv2/models/user_ratings_data_no_links_empty_array.py new file mode 100644 index 0000000000..427ac7d855 --- /dev/null +++ b/lib/tvdbapiv2/models/user_ratings_data_no_links_empty_array.py @@ -0,0 +1,114 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class UserRatingsDataNoLinksEmptyArray(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + UserRatingsDataNoLinksEmptyArray - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'data': 'list[ERRORUNKNOWN]' + } + + self.attribute_map = { + 'data': 'data' + } + + self._data = None + + @property + def data(self): + """ + Gets the data of this UserRatingsDataNoLinksEmptyArray. + + + :return: The data of this UserRatingsDataNoLinksEmptyArray. + :rtype: list[ERRORUNKNOWN] + """ + return self._data + + @data.setter + def data(self, data): + """ + Sets the data of this UserRatingsDataNoLinksEmptyArray. + + + :param data: The data of this UserRatingsDataNoLinksEmptyArray. + :type: list[ERRORUNKNOWN] + """ + self._data = data + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/models/user_ratings_query_params.py b/lib/tvdbapiv2/models/user_ratings_query_params.py new file mode 100644 index 0000000000..26eaa465d6 --- /dev/null +++ b/lib/tvdbapiv2/models/user_ratings_query_params.py @@ -0,0 +1,114 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Ref: https://github.com/swagger-api/swagger-codegen +""" + +from pprint import pformat +from six import iteritems + + +class UserRatingsQueryParams(object): + """ + NOTE: This class is auto generated by the swagger code generator program. + Do not edit the class manually. + """ + def __init__(self): + """ + UserRatingsQueryParams - a model defined in Swagger + + :param dict swaggerTypes: The key is attribute name + and the value is attribute type. + :param dict attributeMap: The key is attribute name + and the value is json key in definition. + """ + self.swagger_types = { + 'data': 'list[str]' + } + + self.attribute_map = { + 'data': 'data' + } + + self._data = None + + @property + def data(self): + """ + Gets the data of this UserRatingsQueryParams. + + + :return: The data of this UserRatingsQueryParams. + :rtype: list[str] + """ + return self._data + + @data.setter + def data(self, data): + """ + Sets the data of this UserRatingsQueryParams. + + + :param data: The data of this UserRatingsQueryParams. + :type: list[str] + """ + self._data = data + + def to_dict(self): + """ + Returns the model properties as a dict + """ + result = {} + + for attr, _ in iteritems(self.swagger_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + else: + result[attr] = value + + return result + + def to_str(self): + """ + Returns the string representation of the model + """ + return pformat(self.to_dict()) + + def __repr__(self): + """ + For `print` and `pprint` + """ + return self.to_str() + + def __eq__(self, other): + """ + Returns true if both objects are equal + """ + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """ + Returns true if both objects are not equal + """ + return not self == other + diff --git a/lib/tvdbapiv2/rest.py b/lib/tvdbapiv2/rest.py new file mode 100644 index 0000000000..cc2ce68858 --- /dev/null +++ b/lib/tvdbapiv2/rest.py @@ -0,0 +1,251 @@ +# coding: utf-8 + +""" +Copyright 2015 SmartBear Software + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +Credit: this file (rest.py) is modified based on rest.py in Dropbox Python SDK: +https://www.dropbox.com/developers/core/sdks/python +""" +from __future__ import absolute_import, unicode_literals + +import sys +import io +import json +import ssl +import certifi +import logging + +# python 2 and python 3 compatibility library +from six import iteritems + +from .configuration import Configuration + +try: + import urllib3 +except ImportError: + raise ImportError('Swagger python client requires urllib3.') + +try: + # for python3 + from urllib.parse import urlencode +except ImportError: + # for python2 + from urllib import urlencode + + +logger = logging.getLogger(__name__) + + +class RESTResponse(io.IOBase): + + def __init__(self, resp): + self.urllib3_response = resp + self.status = resp.status + self.reason = resp.reason + self.data = resp.data + + def getheaders(self): + """ + Returns a dictionary of the response headers. + """ + return self.urllib3_response.getheaders() + + def getheader(self, name, default=None): + """ + Returns a given response header. + """ + return self.urllib3_response.getheader(name, default) + + +class RESTClientObject(object): + + def __init__(self, pools_size=4): + # urllib3.PoolManager will pass all kw parameters to connectionpool + # https://github.com/shazow/urllib3/blob/f9409436f83aeb79fbaf090181cd81b784f1b8ce/urllib3/poolmanager.py#L75 + # https://github.com/shazow/urllib3/blob/f9409436f83aeb79fbaf090181cd81b784f1b8ce/urllib3/connectionpool.py#L680 + # ca_certs vs cert_file vs key_file + # http://stackoverflow.com/a/23957365/2985775 + + # cert_reqs + if Configuration().verify_ssl: + cert_reqs = ssl.CERT_REQUIRED + else: + cert_reqs = ssl.CERT_NONE + + # ca_certs + if Configuration().ssl_ca_cert: + ca_certs = Configuration().ssl_ca_cert + else: + # if not set certificate file, use Mozilla's root certificates. + ca_certs = certifi.where() + + # cert_file + cert_file = Configuration().cert_file + + # key file + key_file = Configuration().key_file + + # https pool manager + self.pool_manager = urllib3.PoolManager( + num_pools=pools_size, + cert_reqs=cert_reqs, + ca_certs=ca_certs, + cert_file=cert_file, + key_file=key_file + ) + + def request(self, method, url, query_params=None, headers=None, + body=None, post_params=None): + """ + :param method: http request method + :param url: http request url + :param query_params: query parameters in the url + :param headers: http request headers + :param body: request json body, for `application/json` + :param post_params: request post parameters, + `application/x-www-form-urlencode` + and `multipart/form-data` + """ + method = method.upper() + assert method in ['GET', 'HEAD', 'DELETE', 'POST', 'PUT', 'PATCH', 'OPTIONS'] + + if post_params and body: + raise ValueError( + "body parameter cannot be used with post_params parameter." + ) + + post_params = post_params or {} + headers = headers or {} + + if 'Content-Type' not in headers: + headers['Content-Type'] = 'application/json' + + try: + # For `POST`, `PUT`, `PATCH`, `OPTIONS` + if method in ['POST', 'PUT', 'PATCH', 'OPTIONS']: + if query_params: + url += '?' + urlencode(query_params) + if headers['Content-Type'] == 'application/json': + r = self.pool_manager.request(method, url, + body=json.dumps(body), + headers=headers) + if headers['Content-Type'] == 'application/x-www-form-urlencoded': + r = self.pool_manager.request(method, url, + fields=post_params, + encode_multipart=False, + headers=headers) + if headers['Content-Type'] == 'multipart/form-data': + # must del headers['Content-Type'], or the correct Content-Type + # which generated by urllib3 will be overwritten. + del headers['Content-Type'] + r = self.pool_manager.request(method, url, + fields=post_params, + encode_multipart=True, + headers=headers) + # For `GET`, `HEAD`, `DELETE` + else: + r = self.pool_manager.request(method, url, + fields=query_params, + headers=headers) + except urllib3.exceptions.SSLError as e: + msg = "{0}\n{1}".format(type(e).__name__, str(e)) + raise ApiException(status=0, reason=msg) + + r = RESTResponse(r) + + # In the python 3, the response.data is bytes. + # we need to decode it to string. + #if sys.version_info > (3,): + r.data = r.data.decode('utf8') + + # log response body + logger.debug("response body: %s" % r.data) + + if r.status not in range(200, 206): + raise ApiException(http_resp=r) + + return r + + def GET(self, url, headers=None, query_params=None): + return self.request("GET", url, + headers=headers, + query_params=query_params) + + def HEAD(self, url, headers=None, query_params=None): + return self.request("HEAD", url, + headers=headers, + query_params=query_params) + + def OPTIONS(self, url, headers=None, query_params=None, post_params=None, body=None): + return self.request("OPTIONS", url, + headers=headers, + query_params=query_params, + post_params=post_params, + body=body) + + def DELETE(self, url, headers=None, query_params=None): + return self.request("DELETE", url, + headers=headers, + query_params=query_params) + + def POST(self, url, headers=None, query_params=None, post_params=None, body=None): + return self.request("POST", url, + headers=headers, + query_params=query_params, + post_params=post_params, + body=body) + + def PUT(self, url, headers=None, query_params=None, post_params=None, body=None): + return self.request("PUT", url, + headers=headers, + query_params=query_params, + post_params=post_params, + body=body) + + def PATCH(self, url, headers=None, query_params=None, post_params=None, body=None): + return self.request("PATCH", url, + headers=headers, + query_params=query_params, + post_params=post_params, + body=body) + + +class ApiException(Exception): + + def __init__(self, status=None, reason=None, http_resp=None): + if http_resp: + self.status = http_resp.status + self.reason = http_resp.reason + self.body = http_resp.data + self.headers = http_resp.getheaders() + else: + self.status = status + self.reason = reason + self.body = None + self.headers = None + + def __str__(self): + """ + Custom error messages for exception + """ + error_message = "({0})\n"\ + "Reason: {1}\n".format(self.status, self.reason) + if self.headers: + error_message += "HTTP response headers: {0}\n".format(self.headers) + + if self.body: + error_message += "HTTP response body: {0}\n".format(self.body) + + return error_message From 177d77396044965ffbd0b3122ae0b03ebfe03594 Mon Sep 17 00:00:00 2001 From: Rato Date: Fri, 7 Oct 2016 21:44:04 +0200 Subject: [PATCH 07/82] Enhancing wrong RG and multiple titles when show name contains year --- medusa/name_parser/rules/rules.py | 5 +++-- tests/test_guessit.yml | 20 ++++++++++++++++++-- 2 files changed, 21 insertions(+), 4 deletions(-) diff --git a/medusa/name_parser/rules/rules.py b/medusa/name_parser/rules/rules.py index adb30aa263..0fd3594a2d 100644 --- a/medusa/name_parser/rules/rules.py +++ b/medusa/name_parser/rules/rules.py @@ -1306,9 +1306,10 @@ def when(self, matches, context): # In case of duplicated titles, keep only the first one titles = matches.named('title') - if (titles and len(titles) == 2 and matches.tagged('anime') and + if (titles and len(titles) > 1 and matches.tagged('anime') and 'equivalent' not in titles[-1].tags and 'expected' not in titles[-1].tags): - release_group = copy.copy(titles[-1]) + wrong_title = matches.named('title', predicate=lambda m: m.value != titles[0].value, index=-1) + release_group = copy.copy(wrong_title) release_group.name = 'release_group' release_group.tags = [] diff --git a/tests/test_guessit.yml b/tests/test_guessit.yml index b36d881db2..a5bd05c80a 100644 --- a/tests/test_guessit.yml +++ b/tests/test_guessit.yml @@ -3070,14 +3070,30 @@ # Regression Test for release group detection # https://github.com/guessit-io/guessit/issues/343 -? /series/Show.Name.S10E01.1080p.HDTV.X264-DIMENSION[rarbg]/Show.Name.S10E01.1080p.HDTV.X264-DIMENSION.mkv +? /series/Show.Name.S10E01.1080p.HDTV.X264-GROUP[rarbg]/Show.Name.S10E01.1080p.HDTV.X264-GROUP.mkv : title: Show Name season: 10 episode: 1 screen_size: 1080p format: HDTV video_codec: h264 - release_group: DIMENSION + release_group: GROUP + container: mkv + mimetype: video/x-matroska + type: episode + +# Regression Test for release group detection +# https://github.com/guessit-io/guessit/issues/343 + show with year +? /Show.Name.2014.S03E01.1080p.HDTV.X264-GROUP[rarbg]/Show.Name.2014.S03E01.1080p.HDTV.X264-GROUP.mkv +: title: Show Name + alias: Show Name 2014 + year: 2014 + season: 3 + episode: 1 + screen_size: 1080p + format: HDTV + video_codec: h264 + release_group: GROUP container: mkv mimetype: video/x-matroska type: episode From 627d7a76ec9742ef4e87d0e0d5f71dfa9532a86a Mon Sep 17 00:00:00 2001 From: Rato Date: Sun, 9 Oct 2016 20:26:11 +0200 Subject: [PATCH 08/82] Another fix for multiple formats: #1033 --- medusa/name_parser/rules/rules.py | 26 +++++++++++++------------- tests/test_guessit.yml | 14 +++++++++++++- 2 files changed, 26 insertions(+), 14 deletions(-) diff --git a/medusa/name_parser/rules/rules.py b/medusa/name_parser/rules/rules.py index 0fd3594a2d..e61b8e564d 100644 --- a/medusa/name_parser/rules/rules.py +++ b/medusa/name_parser/rules/rules.py @@ -1472,19 +1472,19 @@ def when(self, matches, context): if len(formats) < 2: continue - last_format = formats[-1] - previous = matches.previous(last_format, predicate=lambda match: match.name == 'screen_size') - next_range = matches.range(last_format.end, filepart.end, - lambda match: match.name in ('audio_codec', 'video_codec', 'release_group')) - # If we have at least 3 matches near by, then discard the other formats - if len(previous) + len(next_range) > 2: - invalid_formats = {f.value for f in formats[0:-1]} - to_remove = matches.named('format', predicate=lambda m: m.value in invalid_formats) - return to_remove - - if matches.conflicting(last_format): - to_remove = matches.named('format', predicate=lambda m: m.value in last_format.value) - return to_remove + for candidate in reversed(formats): + previous = matches.previous(candidate, predicate=lambda match: match.name == 'screen_size') + next_range = matches.range(candidate.end, filepart.end, + lambda match: match.name in ('audio_codec', 'video_codec', 'release_group')) + # If we have at least 3 matches near by, then discard the other formats + if len(previous) + len(next_range) > 1: + invalid_formats = {f.value for f in formats[0:-1]} + to_remove = matches.named('format', predicate=lambda m: m.value in invalid_formats) + return to_remove + + if matches.conflicting(candidate): + to_remove = matches.named('format', predicate=lambda m: m.value in candidate.value) + return to_remove class CreateProperTags(Rule): diff --git a/tests/test_guessit.yml b/tests/test_guessit.yml index a5bd05c80a..f529182b1f 100644 --- a/tests/test_guessit.yml +++ b/tests/test_guessit.yml @@ -2194,7 +2194,7 @@ video_codec: h264 language: it audio_codec: AC3 - format: [DSRip, HDTV] + format: HDTV release_group: DEUS TEAM type: episode @@ -3178,3 +3178,15 @@ container: srt mimetype: text/plain type: episode + + +# Regression Test: https://github.com/pymedusa/SickRage/issues/1033#issuecomment-252500576 +# Multiple formats +? Show.Name.S01E10.HDTV.x264.WEB-DL.HI.C +: title: Show Name + season: 1 + episode: 10 + video_codec: h264 + format: WEB-DL + release_group: HI.C + type: episode From 61898d5f7dede30d0c4aded88e7e7db844c20f2d Mon Sep 17 00:00:00 2001 From: Rato Date: Sun, 9 Oct 2016 20:49:15 +0200 Subject: [PATCH 09/82] Fix for #1236: lines read from log is b'', therefore split should also use b'' --- medusa/logger.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/medusa/logger.py b/medusa/logger.py index 5376693292..86c91e21a9 100644 --- a/medusa/logger.py +++ b/medusa/logger.py @@ -372,7 +372,7 @@ def from_line(cls, line): :return: :rtype: LogLine or None """ - lines = line.split('\n') + lines = line.split(b'\n') match = LogLine.log_re.match(lines[0]) if not match: return From 2a459f26c05e8d672458d2f1db95dae13afc45b4 Mon Sep 17 00:00:00 2001 From: Fernando Date: Sun, 9 Oct 2016 21:26:17 -0300 Subject: [PATCH 10/82] Manual subtitle search small fixes (#1231) * Use 'und' flag when multi sub disabled. Use black spinner. * Fix release name in modal * We don't read errors in json result. Also warn if outdated list * fix js errors * fixup * remove extra vars * Use spinner 32 * extra png --- medusa/server/api/v2/info.py | 3 +- medusa/server/web/home/handler.py | 23 ++- static/js/ajax-episode-subtitles.js | 202 ++++++++++++++------------ static/js/home/display-show.js | 1 + static/js/manage/subtitle-missedPP.js | 1 + 5 files changed, 121 insertions(+), 109 deletions(-) diff --git a/medusa/server/api/v2/info.py b/medusa/server/api/v2/info.py index 4ca39ecf73..12437c0e0d 100644 --- a/medusa/server/api/v2/info.py +++ b/medusa/server/api/v2/info.py @@ -32,7 +32,8 @@ def get(self, query=''): 'timePreset': app.TIME_PRESET, 'trimZero': app.TRIM_ZERO, 'fanartBackground': app.FANART_BACKGROUND, - 'fanartBackgroundOpacity': app.FANART_BACKGROUND_OPACITY + 'fanartBackgroundOpacity': app.FANART_BACKGROUND_OPACITY, + 'subtitlesMulti': app.SUBTITLES_MULTI } if info_query: diff --git a/medusa/server/web/home/handler.py b/medusa/server/web/home/handler.py index 914389cc1e..a6c051abb4 100644 --- a/medusa/server/web/home/handler.py +++ b/medusa/server/web/home/handler.py @@ -1974,23 +1974,21 @@ def manual_search_subtitles(self, show=None, season=None, episode=None, release_ show_obj = Show.find(app.showList, show) ep_obj = show_obj.get_episode(season, episode) video_path = filepath or ep_obj.location - release_name = os.path.basename(video_path) - except (ValueError, TypeError, IndexError) as e: + release_name = ep_obj.release_name or os.path.basename(video_path) + except IndexError: + ui.notifications.message('Outdated list', 'Please refresh page and try again') + logger.log('Outdated list. Please refresh page and try again', logger.WARNING) + return json.dumps({'result': 'failure'}) + except (ValueError, TypeError) as e: ui.notifications.message('Error', "Please check logs") logger.log('Error while manual {mode} subtitles. Error: {error_msg}'.format (mode=mode, error_msg=e), logger.ERROR) - return json.dumps({ - 'result': 'failure', - 'error:': str(e) - }) + return json.dumps({'result': 'failure'}) if not ek(os.path.isfile, video_path): ui.notifications.message(ep_obj.show.name, "Video file no longer exists. Can't search for subtitles") logger.log('Video file no longer exists: {video_file}'.format(video_file=video_path), logger.DEBUG) - return json.dumps({ - 'result': 'failure', - 'message': "Video file no longer exists. Can't search for subtitles" - }) + return json.dumps({'result': 'failure'}) try: if mode == 'searching': @@ -2023,10 +2021,7 @@ def manual_search_subtitles(self, show=None, season=None, episode=None, release_ ui.notifications.message(ep_obj.show.name, 'Failed to manual {0} subtitles'.format(mode)) logger.log('Error while manual {mode} subtitles. Error: {error_msg}'.format (mode=mode, error_msg=e), logger.ERROR) - return json.dumps({ - 'result': 'failure', - 'error': str(e) - }) + return json.dumps({'result': 'failure'}) def setSceneNumbering(self, show, indexer, forSeason=None, forEpisode=None, forAbsolute=None, sceneSeason=None, sceneEpisode=None, sceneAbsolute=None): diff --git a/static/js/ajax-episode-subtitles.js b/static/js/ajax-episode-subtitles.js index e518408a19..4889701530 100644 --- a/static/js/ajax-episode-subtitles.js +++ b/static/js/ajax-episode-subtitles.js @@ -1,26 +1,32 @@ -(function() { +var startAjaxEpisodeSubtitles = function() { var subtitlesTd; var selectedEpisode; var searchTypesList = ['.epSubtitlesSearch', '.epSubtitlesSearchPP', '.epRedownloadSubtitle', '.epSearch', '.epRetry', '.epManualSearch']; var subtitlesResultModal = $('#manualSubtitleSearchModal'); + var subtitlesMulti = MEDUSA.info.subtitlesMulti; + var loadingSpinner = 'images/loading32' + MEDUSA.info.themeSpinner + '.gif'; function disableAllSearches() { // Disables all other searches while manual searching for subtitles $.each(searchTypesList, function (index, searchTypes) { - $(searchTypes).css({'pointer-events' : 'none'}); + $(searchTypes).css({ + 'pointer-events': 'none' + }); }); } function enableAllSearches() { // Enabled all other searches while manual searching for subtitles $.each(searchTypesList, function (index, searchTypes) { - $(searchTypes).css({'pointer-events' : 'auto'}); + $(searchTypes).css({ + 'pointer-events': 'auto' + }); }); } - function changeImage(imageTR, srcData, altData, titleData, heightData, emptyLink) { + function changeImage(imageTR, srcData, altData, titleData, heightData, emptyLink) { // eslint-disable-line max-params if (emptyLink === true) { - imageTR.find('img').remove() + imageTR.find('img').remove(); } imageTR.append($('').prop({ src: srcData, @@ -55,10 +61,10 @@ }); // @TODO: move this to a more specific selector - $(document).on('click', '#pickSub', function(e){ + $(document).on('click', '#pickSub', function(e) { e.preventDefault(); - subtitlePicked = $(this); - changeImage(subtitlePicked, 'images/loading16.gif', 'loading', 'loading', 16, true); + var subtitlePicked = $(this); + changeImage(subtitlePicked, loadingSpinner, 'loading', 'loading', 16, true); var subtitleID = subtitlePicked.attr('subtitleID'); // Remove 'subtitleid-' so we know the actual ID subtitleID = subtitleID.replace('subtitleid-', ''); @@ -71,26 +77,30 @@ if ((subtitlesResultModal.is(':visible')) === false) { subtitlesResultModal.modal('show'); } - if (data.result == 'success') { + if (data.result === 'success') { + var language = data.subtitles; changeImage(subtitlePicked, 'images/yes16.png', 'subtitle saved', 'subtitle saved', 16, true); - if ( $('table#releasesPP').length > 0 ){ + if ($('table#releasesPP').length > 0) { // Removes the release as we downloaded the subtitle // Only applied to manage_subtitleMissedPP.mako selectedEpisode.parent().parent().remove(); } else { // update the subtitles column with new informations - var language = data.subtitles; - var hasLang = false; - var lang = language; - subtitlesTd.children().children().each(function(){ - // Check if user already have this subtitle language - if ($(this).attr('alt').indexOf(lang) !== -1){ - hasLang = true; + if (subtitlesMulti === false) { // eslint-disable-line no-lonely-if + var hasLang = false; + var lang = language; + subtitlesTd.children().children().each(function() { + // Check if user already have this subtitle language + if ($(this).attr('alt').indexOf(lang) !== -1) { + hasLang = true; + } + }); + // Only add language flag if user doesn't have this subtitle language + if (hasLang === false) { + changeImage(subtitlesTd, 'images/subtitles/flags/' + language + '.png', language, language, 11, false); } - }); - // Only add language flag if user doesn't have this subtitle language - if (hasLang === false) { - changeImage(subtitlesTd, 'images/subtitles/flags/' + language + '.png', language, language, 11, false); + } else { + changeImage(subtitlesTd, 'images/subtitles/flags/unknown.png', language, language, 11, false); } } } else { @@ -110,84 +120,88 @@ }); function searchSubtitles() { - disableAllSearches(); - changeImage(selectedEpisode, 'images/loading16.gif', 'loading', 'loading', 16, true); - var url = selectedEpisode.prop('href'); - // if manual search, replace handler - url = url.replace('searchEpisodeSubtitles', 'manual_search_subtitles'); - $.getJSON(url, function(data) { - // Delete existing rows in the modal - var existing_rows = $('#subtitle_results tr').length; - if (existing_rows > 1) { - for (var x=existing_rows-1; x>0; x--) { - $('#subtitle_results tr').eq(x).remove(); - } + disableAllSearches(); + changeImage(selectedEpisode, loadingSpinner, 'loading', 'loading', 16, true); + var url = selectedEpisode.prop('href'); + // if manual search, replace handler + url = url.replace('searchEpisodeSubtitles', 'manual_search_subtitles'); + $.getJSON(url, function(data) { + // Delete existing rows in the modal + var existingRows = $('#subtitle_results tr').length; + if (existingRows > 1) { + for (var x = existingRows - 1; x > 0; x--) { + $('#subtitle_results tr').eq(x).remove(); } - // Add the release to the modal title - $('h4#manualSubtitleSearchModalTitle.modal-title').text(data.release); - if (data.result == 'success') { - $.each(data.subtitles, function (index, subtitle) { - // For each subtitle found create the row string and append to the modal - var provider = ''; - var flag = ''; - var missingGuess = ''; - for (var i = 0; i < subtitle.missing_guess.length; i++) { - var value = subtitle.missing_guess[i]; - if (missingGuess) { - missingGuess += ', '; - } - value = value.charAt(0).toUpperCase() + value.slice(1); - missingGuess += value.replace(/(\_[a-z])/g, function($1){return $1.toUpperCase().replace('_',' ');}); - } - var subtitle_score = subtitle.score; - var subtitleName = subtitle.filename.substring(0, 99); - // if hash match, don't show missingGuess - if (subtitle.sub_score >= subtitle.max_score){ - missingGuess = ''; - } - // If perfect match, add a checkmark next to subtitle filename - var checkmark = ''; - if (subtitle.sub_score >= subtitle.min_score) { - checkmark = ''; - } - var subtitle_link = '' + subtitleName + checkmark + ''; - // Make subtitle score always between 0 and 10 - if (subtitle_score > 10) { - subtitle_score = 10; - } else if (subtitle_score < 0) { - subtitle_score = 0; + } + // Add the release to the modal title + $('h4#manualSubtitleSearchModalTitle.modal-title').text(data.release); + if (data.result === 'success') { + $.each(data.subtitles, function (index, subtitle) { + // For each subtitle found create the row string and append to the modal + var provider = ''; + var flag = ''; + var missingGuess = ''; + for (var i = 0; i < subtitle.missing_guess.length; i++) { + var value = subtitle.missing_guess[i]; + if (missingGuess) { + missingGuess += ', '; } - var row = '' + - '' + provider + ' ' + subtitle.provider + '' + - '' + flag + '' + - ' ' + subtitle_score + '' + - ' ' + subtitle_link + '' + - '' + missingGuess + '' + - ''; - $('#subtitle_results').append(row); - // Allow the modal to be resizable - $('.modal-content').resizable({ - alsoResize: '.modal-body' + value = value.charAt(0).toUpperCase() + value.slice(1); + missingGuess += value.replace(/(_[a-z])/g, function($1) { + return $1.toUpperCase().replace('_', ' '); }); - // Allow the modal to be draggable - $('.modal-dialog').draggable({ cancel: '.text' }); - // After all rows are added, show the modal with results found - subtitlesResultModal.modal('show'); + } + var subtitleScore = subtitle.score; + var subtitleName = subtitle.filename.substring(0, 99); + // if hash match, don't show missingGuess + if (subtitle.sub_score >= subtitle.max_score) { + missingGuess = ''; + } + // If perfect match, add a checkmark next to subtitle filename + var checkmark = ''; + if (subtitle.sub_score >= subtitle.min_score) { + checkmark = ''; + } + var subtitleLink = '' + subtitleName + checkmark + ''; + // Make subtitle score always between 0 and 10 + if (subtitleScore > 10) { + subtitleScore = 10; + } else if (subtitleScore < 0) { + subtitleScore = 0; + } + var row = '' + + '' + provider + ' ' + subtitle.provider + '' + + '' + flag + '' + + ' ' + subtitleScore + '' + + ' ' + subtitleLink + '' + + '' + missingGuess + '' + + ''; + $('#subtitle_results').append(row); + // Allow the modal to be resizable + $('.modal-content').resizable({ + alsoResize: '.modal-body' }); - } - // Add back the CC icon as we are not searching anymore - changeImage(selectedEpisode, 'images/closed_captioning.png', 'Search subtitles', 'Search subtitles', 16, true); - enableAllSearches(); - }); - return false; + // Allow the modal to be draggable + $('.modal-dialog').draggable({ + cancel: '.text' + }); + // After all rows are added, show the modal with results found + subtitlesResultModal.modal('show'); + }); + } + // Add back the CC icon as we are not searching anymore + changeImage(selectedEpisode, 'images/closed_captioning.png', 'Search subtitles', 'Search subtitles', 16, true); + enableAllSearches(); + }); + return false; } function forcedSearch() { disableAllSearches(); - changeImage(selectedEpisode, 'images/loading16.gif', 'loading', 'loading', 16, true); + changeImage(selectedEpisode, loadingSpinner, 'loading', 'loading', 16, true); var url = selectedEpisode.prop('href'); $.getJSON(url, function(data) { - if (data.result.toLowerCase() == 'success') { + if (data.result.toLowerCase() === 'success') { // clear and update the subtitles column with new informations var subtitles = data.subtitles.split(','); subtitlesTd.empty(); @@ -212,7 +226,7 @@ $.fn.ajaxEpMergeSubtitles = function() { $('.epMergeSubtitles').on('click', function() { var subtitlesMergeLink = $(this); - changeImage(subtitlesMergeLink, 'images/loading16.gif', 'loading', 'loading', 16, true); + changeImage(subtitlesMergeLink, loadingSpinner, 'loading', 'loading', 16, true); $.getJSON($(this).attr('href'), function() { // don't allow other merges subtitlesMergeLink.remove(); @@ -226,20 +240,20 @@ $('.epRedownloadSubtitle').on('click', function(e) { e.preventDefault(); selectedEpisode = $(this); - $("#confirmSubtitleReDownloadModal").modal('show'); + $('#confirmSubtitleReDownloadModal').modal('show'); }); - $('#confirmSubtitleReDownloadModal .btn.btn-success').on('click', function(){ + $('#confirmSubtitleReDownloadModal .btn.btn-success').on('click', function() { redownloadSubtitles(); }); function redownloadSubtitles() { disableAllSearches(); - changeImage(selectedEpisode, 'images/loading16.gif', downloading, downloading, 16, true); var url = selectedEpisode.prop('href'); var downloading = 'Re-downloading subtitle'; var failed = 'Re-downloaded subtitle failed'; var downloaded = 'Re-downloaded subtitle succeeded'; + changeImage(selectedEpisode, loadingSpinner, downloading, downloading, 16, true); $.getJSON(url, function(data) { if (data.result.toLowerCase() === 'success' && data.new_subtitles.length > 0) { changeImage(selectedEpisode, 'images/save.png', downloaded, downloaded, 16, true); @@ -251,4 +265,4 @@ return false; } }; -})(); +}; diff --git a/static/js/home/display-show.js b/static/js/home/display-show.js index 35e2654ac6..46ae93aa10 100644 --- a/static/js/home/display-show.js +++ b/static/js/home/display-show.js @@ -8,6 +8,7 @@ MEDUSA.home.displayShow = function() { // eslint-disable-line max-lines colorRow: true }); + startAjaxEpisodeSubtitles(); $.ajaxEpSubtitlesSearch(); $.ajaxEpRedownloadSubtitle(); diff --git a/static/js/manage/subtitle-missedPP.js b/static/js/manage/subtitle-missedPP.js index 373f38395c..85e491a965 100644 --- a/static/js/manage/subtitle-missedPP.js +++ b/static/js/manage/subtitle-missedPP.js @@ -1,3 +1,4 @@ MEDUSA.manage.subtitleMissedPP = function() { + startAjaxEpisodeSubtitles(); $.ajaxEpSubtitlesSearch(); }; From f417db8659bb61719d4330a2ec202ec83569e700 Mon Sep 17 00:00:00 2001 From: Fernando Date: Mon, 10 Oct 2016 12:02:58 -0300 Subject: [PATCH 11/82] Compare lowercase for showlist sort (#1241) --- medusa/server/web/home/handler.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/medusa/server/web/home/handler.py b/medusa/server/web/home/handler.py index a6c051abb4..1164c2854c 100644 --- a/medusa/server/web/home/handler.py +++ b/medusa/server/web/home/handler.py @@ -854,11 +854,11 @@ def titler(x): anime.append(show) else: shows.append(show) - sorted_show_lists = [['Shows', sorted(shows, lambda x, y: cmp(titler(x.name), titler(y.name)))], - ['Anime', sorted(anime, lambda x, y: cmp(titler(x.name), titler(y.name)))]] + sorted_show_lists = [['Shows', sorted(shows, lambda x, y: cmp(titler(x.name).lower(), titler(y.name).lower()))], + ['Anime', sorted(anime, lambda x, y: cmp(titler(x.name).lower(), titler(y.name).lower()))]] else: sorted_show_lists = [ - ['Shows', sorted(app.showList, lambda x, y: cmp(titler(x.name), titler(y.name)))]] + ['Shows', sorted(app.showList, lambda x, y: cmp(titler(x.name).lower(), titler(y.name).lower()))]] bwl = None if show_obj.is_anime: From f383129c5f136af30ad1ff3d1c657d176e9758f4 Mon Sep 17 00:00:00 2001 From: Fernando Date: Mon, 10 Oct 2016 12:54:40 -0300 Subject: [PATCH 12/82] Change HD4Free log line (#1243) --- medusa/providers/torrent/json/hd4free.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/medusa/providers/torrent/json/hd4free.py b/medusa/providers/torrent/json/hd4free.py index 4b75ca8be1..bd6accd1a3 100644 --- a/medusa/providers/torrent/json/hd4free.py +++ b/medusa/providers/torrent/json/hd4free.py @@ -99,9 +99,9 @@ def search(self, search_strings, age=0, ep_obj=None): # pylint: disable=too-man logger.log('No data returned from provider', logger.DEBUG) continue - error = jdata.get('error') - if error: - logger.log('{0}'.format(error), logger.DEBUG) + error_message = jdata.get('error') + if error_message: + logger.log('HD4Free returned an error: {0}'.format(error_message), logger.DEBUG) return results try: if jdata['0']['total_results'] == 0: From fcca57b93e7d8f833895e07519fe9d4d71481d82 Mon Sep 17 00:00:00 2001 From: supergonkas Date: Mon, 10 Oct 2016 17:13:53 +0100 Subject: [PATCH 13/82] Fix limetorrents' id regex matching any char instead of a literal dot (#1244) --- medusa/providers/torrent/html/limetorrents.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/medusa/providers/torrent/html/limetorrents.py b/medusa/providers/torrent/html/limetorrents.py index 3ad6a8cc66..be6a895f70 100644 --- a/medusa/providers/torrent/html/limetorrents.py +++ b/medusa/providers/torrent/html/limetorrents.py @@ -29,7 +29,7 @@ from ....bs4_parser import BS4Parser from ....helper.common import convert_size, try_int -id_regex = re.compile(r'(?:\/)(.*)(?:-torrent-([0-9]*).html)', re.I) +id_regex = re.compile(r'(?:\/)(.*)(?:-torrent-([0-9]*)\.html)', re.I) hash_regex = re.compile(r'(.*)([0-9a-f]{40})(.*)', re.I) From 90133da6b371c7321ee1b16f202ebfc593c4afb7 Mon Sep 17 00:00:00 2001 From: Rato Date: Mon, 10 Oct 2016 21:07:17 +0200 Subject: [PATCH 14/82] Adding proper dogpile cache configuration (#1238) * Adding proper dogpile cache configuration * Subliminal shouldn't be initialized before app.py is initialized to ensure guessit function is customized and used by subliminal. * Upgrade dogpile to 0.6.2 * flake * Fixing startup issue in synology DSM --- lib/dogpile/__init__.py | 2 +- lib/dogpile/cache/region.py | 229 +++++++++++++++++++++++---- lib/dogpile/cache/util.py | 72 ++++++++- medusa/__init__.py | 3 +- medusa/cache.py | 69 ++++++++ medusa/name_parser/guessit_parser.py | 7 +- medusa/subtitles.py | 20 +-- start.py | 9 ++ tests/conftest.py | 6 + tests/report_guessit.py | 2 + 10 files changed, 367 insertions(+), 52 deletions(-) create mode 100644 medusa/cache.py diff --git a/lib/dogpile/__init__.py b/lib/dogpile/__init__.py index d9054605db..8ecca918b2 100644 --- a/lib/dogpile/__init__.py +++ b/lib/dogpile/__init__.py @@ -1,4 +1,4 @@ -__version__ = '0.6.1' +__version__ = '0.6.2' from .lock import Lock # noqa from .lock import NeedRegenerationException # noqa \ No newline at end of file diff --git a/lib/dogpile/cache/region.py b/lib/dogpile/cache/region.py index 18e626d765..76d39eed39 100644 --- a/lib/dogpile/cache/region.py +++ b/lib/dogpile/cache/region.py @@ -25,6 +25,168 @@ """ +class RegionInvalidationStrategy(object): + """Region invalidation strategy interface + + Implement this interface and pass implementation instance + to :meth:`.CacheRegion.configure` to override default region invalidation. + + Example:: + + class CustomInvalidationStrategy(RegionInvalidationStrategy): + + def __init__(self): + self._soft_invalidated = None + self._hard_invalidated = None + + def invalidate(self, hard=None): + if hard: + self._soft_invalidated = None + self._hard_invalidated = time.time() + else: + self._soft_invalidated = time.time() + self._hard_invalidated = None + + def is_invalidated(self, timestamp): + return ((self._soft_invalidated and + timestamp < self._soft_invalidated) or + (self._hard_invalidated and + timestamp < self._hard_invalidated)) + + def was_hard_invalidated(self): + return bool(self._hard_invalidated) + + def is_hard_invalidated(self, timestamp): + return (self._hard_invalidated and + timestamp < self._hard_invalidated) + + def was_soft_invalidated(self): + return bool(self._soft_invalidated) + + def is_soft_invalidated(self, timestamp): + return (self._soft_invalidated and + timestamp < self._soft_invalidated) + + The custom implementation is injected into a :class:`.CacheRegion` + at configure time using the + :paramref:`.CacheRegion.configure.region_invalidator` parameter:: + + region = CacheRegion() + + region = region.configure(region_invalidator=CustomInvalidationStrategy()) + + Invalidation strategies that wish to have access to the + :class:`.CacheRegion` itself should construct the invalidator given the + region as an argument:: + + class MyInvalidator(RegionInvalidationStrategy): + def __init__(self, region): + self.region = region + # ... + + # ... + + region = CacheRegion() + region = region.configure(region_invalidator=MyInvalidator(region)) + + .. versionadded:: 0.6.2 + + .. seealso:: + + :paramref:`.CacheRegion.configure.region_invalidator` + + """ + + def invalidate(self, hard=True): + """Region invalidation. + + :class:`.CacheRegion` propagated call. + The default invalidation system works by setting + a current timestamp (using ``time.time()``) to consider all older + timestamps effectively invalidated. + + """ + + raise NotImplementedError() + + def is_hard_invalidated(self, timestamp): + """Check timestamp to determine if it was hard invalidated. + + :return: Boolean. True if ``timestamp`` is older than + the last region invalidation time and region is invalidated + in hard mode. + + """ + + raise NotImplementedError() + + def is_soft_invalidated(self, timestamp): + """Check timestamp to determine if it was soft invalidated. + + :return: Boolean. True if ``timestamp`` is older than + the last region invalidation time and region is invalidated + in soft mode. + + """ + + raise NotImplementedError() + + def is_invalidated(self, timestamp): + """Check timestamp to determine if it was invalidated. + + :return: Boolean. True if ``timestamp`` is older than + the last region invalidation time. + + """ + + raise NotImplementedError() + + def was_soft_invalidated(self): + """Indicate the region was invalidated in soft mode. + + :return: Boolean. True if region was invalidated in soft mode. + + """ + + raise NotImplementedError() + + def was_hard_invalidated(self): + """Indicate the region was invalidated in hard mode. + + :return: Boolean. True if region was invalidated in hard mode. + + """ + + raise NotImplementedError() + + +class DefaultInvalidationStrategy(RegionInvalidationStrategy): + + def __init__(self): + self._is_hard_invalidated = None + self._invalidated = None + + def invalidate(self, hard=True): + self._is_hard_invalidated = bool(hard) + self._invalidated = time.time() + + def is_invalidated(self, timestamp): + return (self._invalidated is not None and + timestamp < self._invalidated) + + def was_hard_invalidated(self): + return self._is_hard_invalidated is True + + def is_hard_invalidated(self, timestamp): + return self.was_hard_invalidated() and self.is_invalidated(timestamp) + + def was_soft_invalidated(self): + return self._is_hard_invalidated is False + + def is_soft_invalidated(self, timestamp): + return self.was_soft_invalidated() and self.is_invalidated(timestamp) + + class CacheRegion(object): """A front end to a particular cache backend. @@ -79,6 +241,13 @@ def generate_key(*arg, **kw): def my_function(a, b, **kw): return my_data() + .. seealso:: + + :func:`.function_key_generator` - default key generator + + :func:`.kwarg_function_key_generator` - optional gen that also + uses keyword arguments + :param function_multi_key_generator: Optional. Similar to ``function_key_generator`` parameter, but it's used in :meth:`.CacheRegion.cache_multi_on_arguments`. Generated function @@ -170,9 +339,8 @@ def __init__( self.function_key_generator = function_key_generator self.function_multi_key_generator = function_multi_key_generator self.key_mangler = self._user_defined_key_mangler = key_mangler - self._hard_invalidated = None - self._soft_invalidated = None self.async_creation_runner = async_creation_runner + self.region_invalidator = DefaultInvalidationStrategy() def configure( self, backend, @@ -182,6 +350,7 @@ def configure( _config_prefix=None, wrap=None, replace_existing_backend=False, + region_invalidator=None ): """Configure a :class:`.CacheRegion`. @@ -227,6 +396,11 @@ def configure( .. versionadded:: 0.5.7 + :param region_invalidator: Optional. Override default invalidation + strategy with custom implementation of + :class:`.RegionInvalidationStrategy`. + + .. versionadded:: 0.6.2 """ @@ -263,6 +437,9 @@ def configure( for wrapper in reversed(wrap): self.wrap(wrapper) + if region_invalidator: + self.region_invalidator = region_invalidator + return self def wrap(self, proxy): @@ -304,8 +481,8 @@ def _create_mutex(self, key): def invalidate(self, hard=True): """Invalidate this :class:`.CacheRegion`. - Invalidation works by setting a current timestamp - (using ``time.time()``) + The default invalidation system works by setting + a current timestamp (using ``time.time()``) representing the "minimum creation time" for a value. Any retrieved value whose creation time is prior to this timestamp @@ -338,12 +515,7 @@ def invalidate(self, hard=True): .. versionadded:: 0.5.1 """ - if hard: - self._hard_invalidated = time.time() - self._soft_invalidated = None - else: - self._hard_invalidated = None - self._soft_invalidated = time.time() + self.region_invalidator.invalidate(hard) def configure_from_config(self, config_dict, prefix): """Configure from a configuration dictionary @@ -466,16 +638,14 @@ def _unexpired_value_fn(self, expiration_time, ignore_expiration): current_time = time.time() - invalidated = self._hard_invalidated or self._soft_invalidated - def value_fn(value): if value is NO_VALUE: return value elif expiration_time is not None and \ current_time - value.metadata["ct"] > expiration_time: return NO_VALUE - elif invalidated and \ - value.metadata["ct"] < invalidated: + elif self.region_invalidator.is_invalidated( + value.metadata["ct"]): return NO_VALUE else: return value @@ -608,16 +778,13 @@ def dont_cache_none(value): def get_value(): value = self.backend.get(key) - if value is NO_VALUE or \ - value.metadata['v'] != value_version or \ - ( - self._hard_invalidated and - value.metadata["ct"] < self._hard_invalidated): + if (value is NO_VALUE or value.metadata['v'] != value_version or + self.region_invalidator.is_hard_invalidated( + value.metadata["ct"])): raise NeedRegenerationException() ct = value.metadata["ct"] - if self._soft_invalidated: - if ct < self._soft_invalidated: - ct = time.time() - expiration_time - .0001 + if self.region_invalidator.is_soft_invalidated(ct): + ct = time.time() - expiration_time - .0001 return value.payload, ct @@ -634,7 +801,8 @@ def gen_value(): if expiration_time is None: expiration_time = self.expiration_time - if expiration_time is None and self._soft_invalidated: + if (expiration_time is None and + self.region_invalidator.was_soft_invalidated()): raise exception.DogpileCacheException( "Non-None expiration time required " "for soft invalidation") @@ -707,19 +875,17 @@ def get_or_create_multi( def get_value(key): value = values.get(key, NO_VALUE) - if value is NO_VALUE or \ - value.metadata['v'] != value_version or \ - (self._hard_invalidated and - value.metadata["ct"] < self._hard_invalidated): + if (value is NO_VALUE or value.metadata['v'] != value_version or + self.region_invalidator.is_hard_invalidated( + value.metadata['v'])): # dogpile.core understands a 0 here as # "the value is not available", e.g. # _has_value() will return False. return value.payload, 0 else: ct = value.metadata["ct"] - if self._soft_invalidated: - if ct < self._soft_invalidated: - ct = time.time() - expiration_time - .0001 + if self.region_invalidator.is_soft_invalidated(ct): + ct = time.time() - expiration_time - .0001 return value.payload, ct @@ -732,7 +898,8 @@ def async_creator(key, mutex): if expiration_time is None: expiration_time = self.expiration_time - if expiration_time is None and self._soft_invalidated: + if (expiration_time is None and + self.region_invalidator.was_soft_invalidated()): raise exception.DogpileCacheException( "Non-None expiration time required " "for soft invalidation") diff --git a/lib/dogpile/cache/util.py b/lib/dogpile/cache/util.py index aca8260d58..4b56f64298 100644 --- a/lib/dogpile/cache/util.py +++ b/lib/dogpile/cache/util.py @@ -1,6 +1,7 @@ from hashlib import sha1 import inspect from ..util import compat +from ..util import langhelpers def function_key_generator(namespace, fn, to_str=compat.string_type): @@ -11,8 +12,14 @@ def function_key_generator(namespace, fn, to_str=compat.string_type): This is used by :meth:`.CacheRegion.cache_on_arguments` to generate a cache key from a decorated function. - It can be replaced using the ``function_key_generator`` - argument passed to :func:`.make_region`. + An alternate function may be used by specifying + the :paramref:`.CacheRegion.function_key_generator` argument + for :class:`.CacheRegion`. + + .. seealso:: + + :func:`.kwarg_function_key_generator` - similar function that also + takes keyword arguments into account """ @@ -57,6 +64,60 @@ def generate_keys(*args, **kw): return generate_keys +def kwarg_function_key_generator(namespace, fn, to_str=compat.string_type): + """Return a function that generates a string + key, based on a given function as well as + arguments to the returned function itself. + + For kwargs passed in, we will build a dict of + all argname (key) argvalue (values) including + default args from the argspec and then + alphabetize the list before generating the + key. + + .. versionadded:: 0.6.2 + + .. seealso:: + + :func:`.function_key_generator` - default key generation function + + """ + + if namespace is None: + namespace = '%s:%s' % (fn.__module__, fn.__name__) + else: + namespace = '%s:%s|%s' % (fn.__module__, fn.__name__, namespace) + + argspec = inspect.getargspec(fn) + default_list = list(argspec.defaults or []) + # Reverse the list, as we want to compare the argspec by negative index, + # meaning default_list[0] should be args[-1], which works well with + # enumerate() + default_list.reverse() + # use idx*-1 to create the correct right-lookup index. + args_with_defaults = dict((argspec.args[(idx*-1)], default) + for idx, default in enumerate(default_list, 1)) + if argspec.args and argspec.args[0] in ('self', 'cls'): + arg_index_start = 1 + else: + arg_index_start = 0 + + def generate_key(*args, **kwargs): + as_kwargs = dict( + [(argspec.args[idx], arg) + for idx, arg in enumerate(args[arg_index_start:], + arg_index_start)]) + as_kwargs.update(kwargs) + for arg, val in args_with_defaults.items(): + if arg not in as_kwargs: + as_kwargs[arg] = val + + argument_values = [as_kwargs[key] + for key in sorted(as_kwargs.keys())] + return namespace + '|' + " ".join(map(to_str, argument_values)) + return generate_key + + def sha1_mangle_key(key): """a SHA1 key mangler.""" @@ -75,4 +136,11 @@ def mangle(key): return key return mangle +# in the 0.6 release these functions were moved to the dogpile.util namespace. +# They are linked here to maintain compatibility with older versions. +coerce_string_conf = langhelpers.coerce_string_conf +KeyReentrantMutex = langhelpers.KeyReentrantMutex +memoized_property = langhelpers.memoized_property +PluginLoader = langhelpers.PluginLoader +to_list = langhelpers.to_list diff --git a/medusa/__init__.py b/medusa/__init__.py index 06592d2c58..1a3f067c52 100644 --- a/medusa/__init__.py +++ b/medusa/__init__.py @@ -32,7 +32,7 @@ import requests import shutil_custom from . import ( - app, auto_postprocessor, db, helpers, logger, metadata, naming, providers, + app, auto_postprocessor, cache, db, helpers, logger, metadata, naming, providers, scheduler, showUpdater, show_queue, subtitles, traktChecker, versionChecker ) from .common import SD, SKIPPED, WANTED @@ -773,6 +773,7 @@ def initialize(consoleLogging=True): # pylint: disable=too-many-locals, too-man # Check if we need to perform a restore of the cache folder restore_cache_folder(CACHE_DIR) + cache.configure(CACHE_DIR) FANART_BACKGROUND = bool(check_setting_int(CFG, 'GUI', 'fanart_background', 1)) FANART_BACKGROUND_OPACITY = check_setting_float(CFG, 'GUI', 'fanart_background_opacity', 0.4) diff --git a/medusa/cache.py b/medusa/cache.py new file mode 100644 index 0000000000..adc741b6b0 --- /dev/null +++ b/medusa/cache.py @@ -0,0 +1,69 @@ +# coding=utf-8 +"""Cache (dogpile) used by application.""" + +import os +from datetime import timedelta + +from dogpile.cache.backends.file import AbstractFileLock +from dogpile.cache.region import make_region +from dogpile.util.readwrite_lock import ReadWriteMutex + + +class MutexLock(AbstractFileLock): + """:class:`MutexLock` is a thread-based rw lock based on :class:`dogpile.core.ReadWriteMutex`.""" + + def __init__(self, filename): + """Constructor. + + :param filename: + """ + self.mutex = ReadWriteMutex() + + def acquire_read_lock(self, wait): + """Default acquire_read_lock.""" + ret = self.mutex.acquire_read_lock(wait) + return wait or ret + + def acquire_write_lock(self, wait): + """Default acquire_write_lock.""" + ret = self.mutex.acquire_write_lock(wait) + return wait or ret + + def release_read_lock(self): + """Default release_read_lock.""" + return self.mutex.release_read_lock() + + def release_write_lock(self): + """Default release_write_lock.""" + return self.mutex.release_write_lock() + +cache = make_region() +memory_cache = make_region() + + +def configure(cache_dir): + """Configure caches.""" + # memory cache + from subliminal.cache import region as subliminal_cache + + memory_cache.configure('dogpile.cache.memory', expiration_time=timedelta(hours=1)) + + # subliminal cache + subliminal_cache.configure('dogpile.cache.dbm', + expiration_time=timedelta(days=30), + arguments={ + 'filename': os.path.join(cache_dir, 'subliminal.dbm'), + 'lock_factory': MutexLock}) + + # application cache + cache.configure('dogpile.cache.dbm', + expiration_time=timedelta(days=1), + arguments={'filename': os.path.join(cache_dir, 'application.dbm'), + 'lock_factory': MutexLock}) + + +def fallback(): + """Memory only configuration. Used for test purposes.""" + from subliminal.cache import region as subliminal_cache + for region in (cache, memory_cache, subliminal_cache): + region.configure('dogpile.cache.memory') diff --git a/medusa/name_parser/guessit_parser.py b/medusa/name_parser/guessit_parser.py index 46218a52d3..f401b3b1fa 100644 --- a/medusa/name_parser/guessit_parser.py +++ b/medusa/name_parser/guessit_parser.py @@ -6,14 +6,11 @@ import re from datetime import timedelta -from dogpile.cache.region import make_region from guessit.rules.common.date import valid_year from .rules import default_api +from ..cache import memory_cache -region = make_region() -region.configure('dogpile.cache.memory') - EXPECTED_TITLES_EXPIRATION_TIME = timedelta(days=1).total_seconds() # hardcoded expected titles @@ -91,7 +88,7 @@ def guessit(name, options=None): return default_api.guessit(name, options=final_options) -@region.cache_on_arguments(expiration_time=EXPECTED_TITLES_EXPIRATION_TIME) +@memory_cache.cache_on_arguments(expiration_time=EXPECTED_TITLES_EXPIRATION_TIME) def get_expected_titles(show_list): """Return expected titles to be used by guessit. diff --git a/medusa/subtitles.py b/medusa/subtitles.py index 12f773c502..fe9fdba9e2 100644 --- a/medusa/subtitles.py +++ b/medusa/subtitles.py @@ -30,15 +30,15 @@ from babelfish import Language, language_converters from dogpile.cache.api import NO_VALUE -from dogpile.cache.region import make_region import medusa as app from six import iteritems, string_types, text_type -from subliminal import (ProviderPool, compute_score, provider_manager, refine, refiner_manager, region, save_subtitles, +from subliminal import (ProviderPool, compute_score, provider_manager, refine, refiner_manager, save_subtitles, scan_video) from subliminal.core import search_external_subtitles from subliminal.score import episode_scores from subliminal.subtitle import get_subtitle_path from . import db, history, processTV +from .cache import cache, memory_cache from .common import cpu_presets from .helper.common import dateTimeFormat, episode_num, remove_extension, subtitle_extensions from .helper.exceptions import ex @@ -58,10 +58,6 @@ refiner_manager.register('release = {basename}.refiners.release:refine'.format(basename=basename)) refiner_manager.register('tvepisode = {basename}.refiners.tvepisode:refine'.format(basename=basename)) -subs_region = make_region() -subs_region.configure('dogpile.cache.memory') -region.configure('dogpile.cache.memory') - subtitle_key = u'subtitle={id}' video_key = u'{name}:video|{{video_path}}'.format(name=__name__) @@ -272,7 +268,7 @@ def list_subtitles(tv_episode, video_path=None, limit=40): subtitles_list = pool.list_subtitles(video, languages) scored_subtitles = score_subtitles(subtitles_list, video)[:limit] for subtitle, _ in scored_subtitles: - subs_region.set(subtitle_key.format(id=subtitle.id), subtitle) + cache.set(subtitle_key.format(id=subtitle.id).encode('utf-8'), subtitle) logger.debug("Scores computed for release: {release}".format(release=os.path.basename(video_path))) @@ -303,7 +299,7 @@ def save_subtitle(tv_episode, subtitle_id, video_path=None): :return: :rtype: list of str """ - subtitle = subs_region.get(subtitle_key.format(id=subtitle_id)) + subtitle = cache.get(subtitle_key.format(id=subtitle_id).encode('utf-8')) if subtitle == NO_VALUE: return @@ -452,7 +448,7 @@ def save_subs(tv_episode, video, found_subtitles, video_path=None): return sorted({subtitle.language.opensubtitles for subtitle in saved_subtitles}) -@region.cache_on_arguments(expiration_time=PROVIDER_POOL_EXPIRATION_TIME) +@memory_cache.cache_on_arguments(expiration_time=PROVIDER_POOL_EXPIRATION_TIME) def get_provider_pool(): """Return the subliminal provider pool to be used. @@ -623,7 +619,7 @@ def invalidate_video_cache(video_path): :type video_path: str """ key = video_key.format(video_path=video_path) - region.delete(key) + memory_cache.delete(key) logger.debug(u'Cached video information under key %s was invalidated', key) @@ -651,7 +647,7 @@ def get_video(tv_episode, video_path, subtitles_dir=None, subtitles=True, embedd key = video_key.format(video_path=video_path) payload = {'subtitles_dir': subtitles_dir, 'subtitles': subtitles, 'embedded_subtitles': embedded_subtitles, 'release_name': release_name} - cached_payload = region.get(key, expiration_time=VIDEO_EXPIRATION_TIME) + cached_payload = memory_cache.get(key, expiration_time=VIDEO_EXPIRATION_TIME) if cached_payload != NO_VALUE and {k: v for k, v in iteritems(cached_payload) if k != 'video'} == payload: logger.debug(u'Found cached video information under key %s', key) return cached_payload['video'] @@ -674,7 +670,7 @@ def get_video(tv_episode, video_path, subtitles_dir=None, subtitles=True, embedd release_name=release_name, tv_episode=tv_episode) payload['video'] = video - region.set(key, payload) + memory_cache.set(key, payload) logger.debug(u'Video information cached under key %s', key) return video diff --git a/start.py b/start.py index db63845351..6238b0a069 100755 --- a/start.py +++ b/start.py @@ -88,6 +88,15 @@ shutil.move(OLD_TORNADO, OLD_TORNADO + '_kill') shutil.rmtree(OLD_TORNADO + '_kill') +# An issue found on synology DSM makes the dogpile module from the system to be always loaded before +# sys.path is changed. # That causes the application to fail to start because that version is old and some submodules are not found. +# http://stackoverflow.com/questions/2918898/prevent-python-from-caching-the-imported-modules +try: + if 'dogpile' in sys.modules: + del sys.modules['dogpile'] +except AttributeError: + pass + import medusa as app from medusa import db, failed_history, logger, name_cache, network_timezones from medusa.event_queue import Events diff --git a/tests/conftest.py b/tests/conftest.py index 5d245a9339..6496dd4c06 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -9,6 +9,7 @@ from github.MainClass import Github from github.Organization import Organization from github.Repository import Repository +from medusa import cache from medusa.common import DOWNLOADED, Quality from medusa.helper.common import dateTimeFormat from medusa.indexers.indexer_config import INDEXER_TVDB @@ -73,6 +74,11 @@ def _patch_object(monkeypatch, target, **kwargs): return target +@pytest.fixture(scope="session", autouse=True) +def execute_before_any_test(): + cache.fallback() + + @pytest.fixture def tvshow(create_tvshow): return create_tvshow(indexer=INDEXER_TVDB, indexerid=12, name='Show Name', imdbid='tt0000000') diff --git a/tests/report_guessit.py b/tests/report_guessit.py index 10dcf74cf3..84b367c0f7 100644 --- a/tests/report_guessit.py +++ b/tests/report_guessit.py @@ -9,6 +9,7 @@ from guessit import __version__ as guessit_version import medusa as app +from medusa import cache from medusa.name_parser.guessit_parser import guessit from rebulk.__version__ import __version__ as rebulk_version @@ -29,6 +30,7 @@ def main(argv): for arg in show_list: app.showList.append(MockTvShow(arg)) + cache.fallback() actual = guessit(argv[1]) results = ['# guessit: {} rebulk: {}'.format(guessit_version, rebulk_version)] if show_list: From bc89e00423b6a9c87437dedd63dbb7a6cbfbd64d Mon Sep 17 00:00:00 2001 From: Fernando Date: Mon, 10 Oct 2016 15:57:41 -0300 Subject: [PATCH 15/82] Fix subtitle flag when multi enabled --- static/js/ajax-episode-subtitles.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/static/js/ajax-episode-subtitles.js b/static/js/ajax-episode-subtitles.js index 4889701530..1839103a57 100644 --- a/static/js/ajax-episode-subtitles.js +++ b/static/js/ajax-episode-subtitles.js @@ -86,7 +86,7 @@ var startAjaxEpisodeSubtitles = function() { selectedEpisode.parent().parent().remove(); } else { // update the subtitles column with new informations - if (subtitlesMulti === false) { // eslint-disable-line no-lonely-if + if (subtitlesMulti === true) { // eslint-disable-line no-lonely-if var hasLang = false; var lang = language; subtitlesTd.children().children().each(function() { From cf76cf625e89172c6845ec22178f04b531664b5c Mon Sep 17 00:00:00 2001 From: Rato Date: Mon, 10 Oct 2016 21:06:04 +0200 Subject: [PATCH 16/82] Clear discarded providers when performing manual sub search --- medusa/subtitles.py | 1 + 1 file changed, 1 insertion(+) diff --git a/medusa/subtitles.py b/medusa/subtitles.py index fe9fdba9e2..870feefd91 100644 --- a/medusa/subtitles.py +++ b/medusa/subtitles.py @@ -265,6 +265,7 @@ def list_subtitles(tv_episode, video_path=None, limit=40): video = get_video(tv_episode, video_path, subtitles_dir=subtitles_dir, subtitles=False, embedded_subtitles=False, release_name=release_name) pool = get_provider_pool() + pool.discarded_providers.clear() subtitles_list = pool.list_subtitles(video, languages) scored_subtitles = score_subtitles(subtitles_list, video)[:limit] for subtitle, _ in scored_subtitles: From 0854fcc995f4dde4f2e96c5a05354b318c7886e3 Mon Sep 17 00:00:00 2001 From: Fernando Date: Mon, 10 Oct 2016 16:59:09 -0300 Subject: [PATCH 17/82] Update pygithub to version 1.29 (#1189) --- lib/github/AuthenticatedUser.py | 8 +- lib/github/Authorization.py | 6 +- lib/github/AuthorizationApplication.py | 6 +- lib/github/Branch.py | 31 +- lib/github/Commit.py | 18 +- lib/github/CommitCombinedStatus.py | 114 +++ lib/github/CommitComment.py | 6 +- lib/github/CommitStats.py | 3 +- lib/github/CommitStatus.py | 20 +- lib/github/Comparison.py | 3 +- lib/github/Consts.py | 3 +- lib/github/ContentFile.py | 6 +- lib/github/Download.py | 6 +- lib/github/Event.py | 6 +- lib/github/File.py | 16 +- lib/github/Gist.py | 6 +- lib/github/GistComment.py | 6 +- lib/github/GistFile.py | 6 +- lib/github/GistHistoryState.py | 3 +- lib/github/GitAuthor.py | 6 +- lib/github/GitBlob.py | 6 +- lib/github/GitCommit.py | 6 +- lib/github/GitObject.py | 6 +- lib/github/GitRef.py | 22 +- lib/github/GitRelease.py | 6 +- lib/github/GitTag.py | 6 +- lib/github/GitTree.py | 6 +- lib/github/GitTreeElement.py | 6 +- lib/github/GithubException.py | 4 +- lib/github/GithubObject.py | 24 +- lib/github/GitignoreTemplate.py | 6 +- lib/github/Hook.py | 6 +- lib/github/HookDescription.py | 6 +- lib/github/HookResponse.py | 6 +- lib/github/InputFileContent.py | 3 +- lib/github/InputGitAuthor.py | 6 +- lib/github/InputGitTreeElement.py | 3 +- lib/github/Issue.py | 22 +- lib/github/IssueComment.py | 6 +- lib/github/IssueEvent.py | 6 +- lib/github/IssuePullRequest.py | 3 +- lib/github/Label.py | 6 +- lib/github/Legacy.py | 3 +- lib/github/MainClass.py | 3 +- lib/github/Milestone.py | 6 +- lib/github/NamedUser.py | 6 +- lib/github/Notification.py | 6 +- lib/github/NotificationSubject.py | 6 +- lib/github/Organization.py | 6 +- lib/github/PaginatedList.py | 3 +- lib/github/Permissions.py | 10 +- lib/github/Plan.py | 6 +- lib/github/PullRequest.py | 6 +- lib/github/PullRequestComment.py | 6 +- lib/github/PullRequestMergeStatus.py | 6 +- lib/github/PullRequestPart.py | 6 +- lib/github/Rate.py | 6 +- lib/github/RateLimit.py | 6 +- lib/github/Repository.py | 240 ++++++- lib/github/RepositoryKey.py | 6 +- lib/github/Requester.py | 14 +- lib/github/Stargazer.py | 7 +- lib/github/StatsCodeFrequency.py | 3 +- lib/github/StatsCommitActivity.py | 3 +- lib/github/StatsContributor.py | 3 +- lib/github/StatsParticipation.py | 3 +- lib/github/StatsPunchCard.py | 3 +- lib/github/Status.py | 6 +- lib/github/StatusMessage.py | 6 +- lib/github/Tag.py | 9 +- lib/github/Team.py | 25 +- lib/github/UserKey.py | 6 +- lib/github/__init__.py | 3 +- lib/github/tests/AllTests.py | 95 +++ lib/github/tests/AuthenticatedUser.py | 236 +++++++ lib/github/tests/Authentication.py | 67 ++ lib/github/tests/Authorization.py | 65 ++ lib/github/tests/BadAttributes.py | 150 ++++ lib/github/tests/Branch.py | 47 ++ lib/github/tests/Commit.py | 97 +++ lib/github/tests/CommitCombinedStatus.py | 55 ++ lib/github/tests/CommitComment.py | 58 ++ lib/github/tests/CommitStatus.py | 53 ++ lib/github/tests/ConditionalRequestUpdate.py | 45 ++ lib/github/tests/ContentFile.py | 49 ++ lib/github/tests/Download.py | 63 ++ lib/github/tests/Enterprise.py | 58 ++ lib/github/tests/Equality.py | 50 ++ lib/github/tests/Event.py | 48 ++ lib/github/tests/Exceptions.py | 141 ++++ lib/github/tests/ExposeAllAttributes.py | 161 +++++ lib/github/tests/Framework.py | 279 ++++++++ lib/github/tests/Gist.py | 124 ++++ lib/github/tests/GistComment.py | 54 ++ lib/github/tests/GitBlob.py | 46 ++ lib/github/tests/GitCommit.py | 54 ++ lib/github/tests/GitRef.py | 53 ++ lib/github/tests/GitRelease.py | 68 ++ lib/github/tests/GitTag.py | 50 ++ lib/github/tests/GitTree.py | 53 ++ lib/github/tests/Github_.py | 152 ++++ lib/github/tests/Hook.py | 72 ++ lib/github/tests/Issue.py | 141 ++++ lib/github/tests/Issue131.py | 51 ++ lib/github/tests/Issue133.py | 34 + lib/github/tests/Issue134.py | 48 ++ lib/github/tests/Issue139.py | 38 + lib/github/tests/Issue140.py | 54 ++ lib/github/tests/Issue142.py | 33 + lib/github/tests/Issue158.py | 33 + lib/github/tests/Issue174.py | 36 + lib/github/tests/Issue214.py | 70 ++ lib/github/tests/Issue216.py | 37 + lib/github/tests/Issue278.py | 36 + lib/github/tests/Issue33.py | 39 ++ lib/github/tests/Issue50.py | 71 ++ lib/github/tests/Issue54.py | 40 ++ lib/github/tests/Issue80.py | 43 ++ lib/github/tests/Issue87.py | 51 ++ lib/github/tests/IssueComment.py | 55 ++ lib/github/tests/IssueEvent.py | 47 ++ lib/github/tests/Label.py | 50 ++ lib/github/tests/Logging_.py | 74 ++ lib/github/tests/Markdown.py | 40 ++ lib/github/tests/Milestone.py | 68 ++ lib/github/tests/NamedUser.py | 150 ++++ lib/github/tests/Organization.py | 145 ++++ lib/github/tests/PaginatedList.py | 155 ++++ lib/github/tests/Persistence.py | 56 ++ lib/github/tests/PullRequest.py | 117 ++++ lib/github/tests/PullRequestComment.py | 60 ++ lib/github/tests/PullRequestFile.py | 47 ++ lib/github/tests/RateLimiting.py | 47 ++ lib/github/tests/RawData.py | 99 +++ .../AuthenticatedUser.testAttributes.txt | 11 + ...estCreateAuthorizationWithAllArguments.txt | 11 + ...eateAuthorizationWithClientIdAndSecret.txt | 11 + ...estCreateAuthorizationWithoutArguments.txt | 11 + .../AuthenticatedUser.testCreateFork.txt | 33 + .../AuthenticatedUser.testCreateGist.txt | 11 + ...dUser.testCreateGistWithoutDescription.txt | 11 + .../AuthenticatedUser.testCreateKey.txt | 11 + ...AuthenticatedUser.testCreateRepository.txt | 11 + ...r.testCreateRepositoryWithAllArguments.txt | 11 + ...dUser.testCreateRepositoryWithAutoInit.txt | 11 + ...enticatedUser.testEditWithAllArguments.txt | 10 + ...enticatedUser.testEditWithoutArguments.txt | 11 + .../AuthenticatedUser.testEmails.txt | 55 ++ .../AuthenticatedUser.testFollowing.txt | 88 +++ ...uthenticatedUser.testGetAuthorizations.txt | 11 + .../AuthenticatedUser.testGetEvents.txt | 11 + .../AuthenticatedUser.testGetGists.txt | 11 + .../AuthenticatedUser.testGetIssues.txt | 11 + ...atedUser.testGetIssuesWithAllArguments.txt | 55 ++ .../AuthenticatedUser.testGetKeys.txt | 11 + .../AuthenticatedUser.testGetNotification.txt | 10 + ...AuthenticatedUser.testGetNotifications.txt | 10 + ...testGetNotificationsWithOtherArguments.txt | 11 + ...nticatedUser.testGetOrganizationEvents.txt | 33 + .../AuthenticatedUser.testGetOrgs.txt | 11 + .../AuthenticatedUser.testGetRepos.txt | 11 + ...nticatedUser.testGetReposWithArguments.txt | 11 + .../AuthenticatedUser.testGetStarredGists.txt | 11 + .../AuthenticatedUser.testGetTeams.txt | 11 + .../AuthenticatedUser.testGetUserIssues.txt | 11 + ...User.testGetUserIssuesWithAllArguments.txt | 55 ++ .../AuthenticatedUser.testStarring.txt | 99 +++ .../AuthenticatedUser.testSubscriptions.txt | 99 +++ .../AuthenticatedUser.testWatching.txt | 99 +++ ...ation.testAuthorizationHeaderWithLogin.txt | 11 + ...ation.testAuthorizationHeaderWithToken.txt | 11 + ...Authentication.testBasicAuthentication.txt | 11 + .../Authentication.testNoAuthentication.txt | 11 + ...Authentication.testOAuthAuthentication.txt | 11 + ...entication.testSecretKeyAuthentication.txt | 22 + .../Authentication.testUserAgent.txt | 11 + .../tests/ReplayData/Authorization.setUp.txt | 11 + .../ReplayData/Authorization.testDelete.txt | 11 + .../ReplayData/Authorization.testEdit.txt | 55 ++ ...butes.testBadAttributeInClassAttribute.txt | 11 + ...ributes.testBadAttributeTransformation.txt | 11 + .../BadAttributes.testBadSimpleAttribute.txt | 11 + ...ttributes.testBadSimpleAttributeInList.txt | 11 + ...Attributes.testBadTransformedAttribute.txt | 11 + ...utes.testBadTransformedAttributeInDict.txt | 11 + ...utes.testBadTransformedAttributeInList.txt | 11 + .../ReplayData/BadAttributes.testIssue195.txt | 11 + lib/github/tests/ReplayData/Branch.setUp.txt | 33 + .../Branch.testCommitCommentsOnLine.txt | 22 + .../Branch.testProtectedAttributes.txt | 33 + lib/github/tests/ReplayData/Commit.setUp.txt | 33 + .../ReplayData/Commit.testCreateComment.txt | 11 + .../Commit.testCreateCommentOnFileLine.txt | 11 + ...Commit.testCreateCommentOnFilePosition.txt | 11 + ...mmit.testCreateStatusWithAllParameters.txt | 11 + ...tCreateStatusWithoutOptionalParameters.txt | 11 + .../ReplayData/Commit.testGetComments.txt | 11 + .../ReplayData/CommitCombinedStatus.setUp.txt | 22 + .../tests/ReplayData/CommitComment.setUp.txt | 33 + .../ReplayData/CommitComment.testDelete.txt | 11 + .../ReplayData/CommitComment.testEdit.txt | 11 + .../tests/ReplayData/CommitStatus.setUp.txt | 44 ++ .../ConditionalRequestUpdate.setUp.txt | 11 + ...ditionalRequestUpdate.testDidNotUpdate.txt | 11 + ...ConditionalRequestUpdate.testDidUpdate.txt | 11 + ...uestUpdate.testUpdateObjectWithoutEtag.txt | 22 + .../tests/ReplayData/ContentFile.setUp.txt | 33 + .../tests/ReplayData/Download.setUp.txt | 33 + .../tests/ReplayData/Download.testDelete.txt | 11 + .../tests/ReplayData/Enterprise.testHttp.txt | 11 + .../tests/ReplayData/Enterprise.testHttps.txt | 11 + .../ReplayData/Enterprise.testLongUrl.txt | 22 + .../Enterprise.testSpecificPort.txt | 11 + .../Equality.testBranchEquality.txt | 44 ++ .../Equality.testUserDifference.txt | 22 + .../ReplayData/Equality.testUserEquality.txt | 22 + lib/github/tests/ReplayData/Event.setUp.txt | 22 + .../Exceptions.testBadAuthentication.txt | 11 + .../Exceptions.testInvalidInput.txt | 11 + ...ptions.testNonJsonDataReturnedByGithub.txt | 11 + .../Exceptions.testUnknownObject.txt | 22 + .../ReplayData/Exceptions.testUnknownUser.txt | 11 + .../ExposeAllAttributes.testAllClasses.txt | 660 +++++++++++++++++ .../tests/ReplayData/Gist.testAttributes.txt | 22 + .../ReplayData/Gist.testCreateComment.txt | 22 + .../tests/ReplayData/Gist.testDelete.txt | 22 + .../tests/ReplayData/Gist.testDeleteFile.txt | 22 + .../Gist.testEditWithAllParameters.txt | 22 + .../Gist.testEditWithoutParameters.txt | 22 + lib/github/tests/ReplayData/Gist.testFork.txt | 33 + .../tests/ReplayData/Gist.testGetComments.txt | 22 + .../tests/ReplayData/Gist.testRenameFile.txt | 22 + .../tests/ReplayData/Gist.testStarring.txt | 66 ++ .../tests/ReplayData/GistComment.setUp.txt | 22 + .../ReplayData/GistComment.testDelete.txt | 11 + .../tests/ReplayData/GistComment.testEdit.txt | 11 + lib/github/tests/ReplayData/GitBlob.setUp.txt | 33 + .../tests/ReplayData/GitCommit.setUp.txt | 33 + lib/github/tests/ReplayData/GitRef.setUp.txt | 33 + .../tests/ReplayData/GitRef.testDelete.txt | 11 + .../tests/ReplayData/GitRef.testEdit.txt | 11 + .../ReplayData/GitRef.testEditWithForce.txt | 11 + lib/github/tests/ReplayData/GitTag.setUp.txt | 33 + lib/github/tests/ReplayData/GitTree.setUp.txt | 33 + .../tests/ReplayData/Github.testGetEmojis.txt | 10 + .../tests/ReplayData/Github.testGetGists.txt | 44 ++ .../Github.testGetGitignoreTemplate.txt | 22 + .../Github.testGetGitignoreTemplates.txt | 11 + .../tests/ReplayData/Github.testGetHook.txt | 11 + .../tests/ReplayData/Github.testGetHooks.txt | 11 + .../Github.testGetRepoFromFullName.txt | 11 + .../ReplayData/Github.testGetRepoFromId.txt | 11 + .../tests/ReplayData/Github.testGetRepos.txt | 11 + .../ReplayData/Github.testGetReposSince.txt | 11 + .../tests/ReplayData/Github.testGetUsers.txt | 22 + .../ReplayData/Github.testGetUsersSince.txt | 11 + .../Github.testLegacySearchRepos.txt | 22 + ...estLegacySearchReposExplicitPagination.txt | 11 + ...Github.testLegacySearchReposPagination.txt | 33 + ...thub.testLegacySearchReposWithLanguage.txt | 22 + .../Github.testLegacySearchUserByEmail.txt | 22 + .../Github.testLegacySearchUsers.txt | 11 + ...estLegacySearchUsersExplicitPagination.txt | 11 + ...Github.testLegacySearchUsersPagination.txt | 33 + .../ReplayData/Github.testSearchRepos.txt | 11 + .../Github.testSearchUserByEmail.txt | 11 + .../ReplayData/Github.testSearchUsers.txt | 11 + lib/github/tests/ReplayData/Hook.setUp.txt | 33 + .../tests/ReplayData/Hook.testDelete.txt | 11 + .../Hook.testEditWithAllParameters.txt | 44 ++ .../Hook.testEditWithMinimalParameters.txt | 11 + lib/github/tests/ReplayData/Hook.testTest.txt | 11 + lib/github/tests/ReplayData/Issue.setUp.txt | 33 + .../Issue.testAddAndRemoveLabels.txt | 99 +++ ...tAddAndRemoveLabelsWithStringArguments.txt | 77 ++ .../tests/ReplayData/Issue.testAttributes.txt | 11 + .../ReplayData/Issue.testCreateComment.txt | 11 + .../Issue.testDeleteAndSetLabels.txt | 77 ++ ...tDeleteAndSetLabelsWithStringArguments.txt | 55 ++ .../Issue.testEditResetAssignee.txt | 11 + .../Issue.testEditResetMilestone.txt | 11 + .../Issue.testEditWithAllParameters.txt | 33 + .../Issue.testEditWithoutParameters.txt | 11 + .../ReplayData/Issue.testGetComments.txt | 11 + .../ReplayData/Issue.testGetCommentsSince.txt | 10 + .../tests/ReplayData/Issue.testGetEvents.txt | 11 + .../tests/ReplayData/Issue.testGetLabels.txt | 11 + .../tests/ReplayData/Issue131.setUp.txt | 22 + .../Issue131.testGetPullWithOrgHeadUser.txt | 11 + .../Issue131.testGetPullsWithOrgHeadUser.txt | 11 + ...133.testGetPageWithoutInitialArguments.txt | 11 + ...tionsFailsWhenAutenticatedThroughOAuth.txt | 11 + ...dsWhenAutenticatedThroughLoginPassword.txt | 11 + .../Issue134.testGetOAuthScopesFromHeader.txt | 11 + .../tests/ReplayData/Issue139.setUp.txt | 33 + .../ReplayData/Issue139.testCompletion.txt | 11 + .../tests/ReplayData/Issue140.setUp.txt | 11 + .../Issue140.testGetDirContents.txt | 11 + ...GetDirContentsThenLazyCompletionOfFile.txt | 22 + .../Issue140.testGetDirContentsWithRef.txt | 11 + .../Issue140.testGetFileContents.txt | 11 + ...tPaginationWithSecretKeyAuthentication.txt | 33 + .../tests/ReplayData/Issue174.setUp.txt | 11 + ...74.testGetDirContentsWhithHttpRedirect.txt | 22 + .../tests/ReplayData/Issue214.setUp.txt | 33 + .../ReplayData/Issue214.testAssignees.txt | 22 + .../ReplayData/Issue214.testCollaborators.txt | 77 ++ .../ReplayData/Issue214.testCreateIssue.txt | 11 + .../ReplayData/Issue214.testEditIssue.txt | 22 + .../ReplayData/Issue214.testGetIssues.txt | 11 + .../tests/ReplayData/Issue216.setUp.txt | 22 + .../ReplayData/Issue216.testIteration.txt | 154 ++++ .../tests/ReplayData/Issue278.setUp.txt | 22 + .../ReplayData/Issue278.testIteration.txt | 154 ++++ lib/github/tests/ReplayData/Issue33.setUp.txt | 22 + .../ReplayData/Issue33.testClosedIssues.txt | 418 +++++++++++ .../ReplayData/Issue33.testOpenIssues.txt | 154 ++++ lib/github/tests/ReplayData/Issue50.setUp.txt | 33 + .../Issue50.testAddLabelToIssue.txt | 22 + .../Issue50.testCreateIssueWithLabel.txt | 22 + .../ReplayData/Issue50.testCreateLabel.txt | 11 + .../Issue50.testGetIssuesWithLabel.txt | 22 + .../tests/ReplayData/Issue50.testGetLabel.txt | 11 + .../ReplayData/Issue50.testGetLabels.txt | 11 + .../ReplayData/Issue50.testIssueGetLabels.txt | 11 + .../Issue50.testRemoveLabelFromIssue.txt | 22 + .../ReplayData/Issue50.testSetIssueLabels.txt | 44 ++ lib/github/tests/ReplayData/Issue54.setUp.txt | 22 + .../ReplayData/Issue54.testConversion.txt | 11 + ...80.testIgnoreHttpsFromGithubEnterprise.txt | 22 + ...gnoreHttpsFromGithubEnterpriseWithPort.txt | 22 + lib/github/tests/ReplayData/Issue87.setUp.txt | 22 + ...estCreateIssueWithEscapedPercentInBody.txt | 11 + ...stCreateIssueWithEscapedPercentInTitle.txt | 11 + ...sue87.testCreateIssueWithPercentInBody.txt | 11 + ...ue87.testCreateIssueWithPercentInTitle.txt | 11 + .../tests/ReplayData/IssueComment.setUp.txt | 44 ++ .../ReplayData/IssueComment.testDelete.txt | 10 + .../ReplayData/IssueComment.testEdit.txt | 11 + .../tests/ReplayData/IssueEvent.setUp.txt | 33 + .../ReplayData/IssueEvent.testAttributes.txt | 11 + lib/github/tests/ReplayData/Label.setUp.txt | 33 + .../tests/ReplayData/Label.testDelete.txt | 11 + .../tests/ReplayData/Label.testEdit.txt | 11 + .../tests/ReplayData/LazyRepository.setUp.txt | 11 + .../LazyRepository.testGetIssues.txt | 33 + .../ReplayData/LazyRepository.testGetUser.txt | 11 + .../ReplayData/LazyRepository.testOwner.txt | 22 + .../Logging.testLoggingWithBaseUrl.txt | 11 + ...ing.testLoggingWithBasicAuthentication.txt | 11 + ...ing.testLoggingWithOAuthAuthentication.txt | 11 + ...gging.testLoggingWithoutAuthentication.txt | 11 + .../tests/ReplayData/Markdown.setUp.txt | 22 + ...kdown.testRenderGithubFlavoredMarkdown.txt | 11 + .../Markdown.testRenderMarkdown.txt | 11 + .../tests/ReplayData/Milestone.setUp.txt | 33 + .../tests/ReplayData/Milestone.testDelete.txt | 11 + .../Milestone.testEditWithAllParameters.txt | 11 + ...ilestone.testEditWithMinimalParameters.txt | 11 + .../ReplayData/Milestone.testGetLabels.txt | 11 + .../tests/ReplayData/NamedUser.setUp.txt | 11 + .../NamedUser.testAttributesOfOtherUser.txt | 11 + .../ReplayData/NamedUser.testGetEvents.txt | 11 + .../ReplayData/NamedUser.testGetFollowers.txt | 11 + .../ReplayData/NamedUser.testGetFollowing.txt | 11 + .../ReplayData/NamedUser.testGetGists.txt | 11 + .../ReplayData/NamedUser.testGetKeys.txt | 11 + .../ReplayData/NamedUser.testGetOrgs.txt | 11 + .../NamedUser.testGetPublicEvents.txt | 11 + .../NamedUser.testGetPublicReceivedEvents.txt | 11 + .../NamedUser.testGetReceivedEvents.txt | 11 + .../ReplayData/NamedUser.testGetRepo.txt | 11 + .../ReplayData/NamedUser.testGetRepos.txt | 11 + .../NamedUser.testGetReposWithType.txt | 11 + .../ReplayData/NamedUser.testGetStarred.txt | 22 + .../NamedUser.testGetSubscriptions.txt | 11 + .../ReplayData/NamedUser.testGetWatched.txt | 22 + .../NamedUser.testHasInFollowing.txt | 22 + .../tests/ReplayData/Organization.setUp.txt | 11 + .../Organization.testCreateFork.txt | 33 + ...ization.testCreateRepoWithAllArguments.txt | 22 + ...ion.testCreateRepoWithMinimalArguments.txt | 11 + ...ation.testCreateRepositoryWithAutoInit.txt | 11 + .../Organization.testCreateTeam.txt | 11 + ...ization.testCreateTeamWithAllArguments.txt | 22 + .../Organization.testEditWithAllArguments.txt | 11 + .../Organization.testEditWithoutArguments.txt | 11 + .../ReplayData/Organization.testGetEvents.txt | 22 + .../ReplayData/Organization.testGetIssues.txt | 11 + ...nization.testGetIssuesWithAllArguments.txt | 44 ++ .../Organization.testGetMembers.txt | 11 + .../Organization.testGetPublicMembers.txt | 11 + .../ReplayData/Organization.testGetRepos.txt | 11 + .../Organization.testGetReposWithType.txt | 11 + .../ReplayData/Organization.testGetTeams.txt | 11 + .../ReplayData/Organization.testMembers.txt | 44 ++ .../Organization.testPublicMembers.txt | 66 ++ .../tests/ReplayData/PaginatedList.setUp.txt | 22 + .../PaginatedList.testCustomPerPage.txt | 55 ++ ...natedList.testCustomPerPageWithGetPage.txt | 11 + ...List.testCustomPerPageWithNoUrlParams2.txt | 44 ++ .../PaginatedList.testGetFirstPage.txt | 11 + .../PaginatedList.testGetThirdPage.txt | 11 + ...versedListDoesNotModifyTheOriginalList.txt | 55 ++ ...atedList.testIntIndexingAfterIteration.txt | 154 ++++ ...ginatedList.testIntIndexingInFirstPage.txt | 11 + ...ginatedList.testIntIndexingInThirdPage.txt | 33 + ...PaginatedList.testInterruptedIteration.txt | 33 + ...edList.testInterruptedIterationInSlice.txt | 33 + .../PaginatedList.testIteration.txt | 154 ++++ .../PaginatedList.testNoFirstPage.txt | 9 + ....testReversedIterationSupportsIterator.txt | 21 + ...testReversedIterationWithMultiplePages.txt | 32 + ...st.testReversedIterationWithSinglePage.txt | 21 + .../PaginatedList.testSeveralIterations.txt | 154 ++++ ...natedList.testSliceIndexingInFirstPage.txt | 11 + ...aginatedList.testSliceIndexingUntilEnd.txt | 154 ++++ ...dList.testSliceIndexingUntilFourthPage.txt | 44 ++ .../tests/ReplayData/Persistence.setUp.txt | 11 + .../Persistence.testLoadAndUpdate.txt | 11 + .../tests/ReplayData/PullRequest.setUp.txt | 33 + .../PullRequest.testCreateComment.txt | 22 + .../PullRequest.testCreateIssueComment.txt | 11 + .../PullRequest.testEditWithAllArguments.txt | 11 + .../PullRequest.testEditWithoutArguments.txt | 11 + .../PullRequest.testGetComments.txt | 11 + .../ReplayData/PullRequest.testGetCommits.txt | 11 + .../ReplayData/PullRequest.testGetFiles.txt | 11 + .../PullRequest.testGetIssueComment.txt | 11 + .../PullRequest.testGetIssueComments.txt | 11 + .../ReplayData/PullRequest.testMerge.txt | 33 + ...PullRequest.testMergeWithCommitMessage.txt | 44 ++ .../ReplayData/PullRequestComment.setUp.txt | 44 ++ .../PullRequestComment.testDelete.txt | 11 + .../PullRequestComment.testEdit.txt | 11 + .../ReplayData/PullRequestFile.setUp.txt | 44 ++ .../RateLimiting.testGetRateLimit.txt | 11 + .../RateLimiting.testRateLimiting.txt | 22 + .../ReplayData/RateLimiting.testResetTime.txt | 10 + .../RawData.testCompletedObject.txt | 11 + .../RawData.testNonCompletableObject.txt | 11 + .../RawData.testNotYetCompletedObject.txt | 33 + lib/github/tests/ReplayData/Release.setUp.txt | 33 + .../ReplayData/Release.testAttributes.txt | 33 + .../Release.testCreateGitTagAndRelease.txt | 44 ++ .../tests/ReplayData/Release.testDelete.txt | 44 ++ .../ReplayData/Release.testGetRelease.txt | 66 ++ .../tests/ReplayData/Release.testUpdate.txt | 44 ++ .../tests/ReplayData/Repository.setUp.txt | 22 + .../ReplayData/Repository.testAssignees.txt | 99 +++ ...epository.testBadSubscribePubSubHubbub.txt | 11 + ...ory.testChangeBranchProtectionContexts.txt | 66 ++ ...ChangeBranchProtectionEnforcementLevel.txt | 44 ++ .../Repository.testCollaborators.txt | 77 ++ .../ReplayData/Repository.testCompare.txt | 11 + .../ReplayData/Repository.testCreateFile.txt | 11 + .../Repository.testCreateGitBlob.txt | 11 + .../Repository.testCreateGitCommit.txt | 22 + ...ry.testCreateGitCommitWithAllArguments.txt | 22 + ...ository.testCreateGitCommitWithParents.txt | 44 ++ .../Repository.testCreateGitRef.txt | 11 + .../Repository.testCreateGitTag.txt | 11 + ...itory.testCreateGitTagWithAllArguments.txt | 11 + .../Repository.testCreateGitTree.txt | 11 + ...pository.testCreateGitTreeWithBaseTree.txt | 22 + .../Repository.testCreateGitTreeWithSha.txt | 11 + ...sitory.testCreateHookWithAllParameters.txt | 11 + ...ry.testCreateHookWithMinimalParameters.txt | 11 + .../ReplayData/Repository.testCreateIssue.txt | 11 + ...sitory.testCreateIssueWithAllArguments.txt | 44 ++ ...CreateIssueWithAllArgumentsStringLabel.txt | 33 + .../ReplayData/Repository.testCreateKey.txt | 11 + .../ReplayData/Repository.testCreateLabel.txt | 11 + .../Repository.testCreateMilestone.txt | 11 + ...estCreateMilestoneWithMinimalArguments.txt | 11 + .../ReplayData/Repository.testCreatePull.txt | 11 + .../Repository.testCreatePullFromIssue.txt | 22 + .../ReplayData/Repository.testDelete.txt | 33 + .../ReplayData/Repository.testDeleteFile.txt | 21 + .../Repository.testEditWithAllArguments.txt | 22 + .../Repository.testEditWithDefaultBranch.txt | 11 + .../Repository.testEditWithoutArguments.txt | 11 + .../Repository.testGetArchiveLink.txt | 44 ++ .../ReplayData/Repository.testGetBranch.txt | 11 + .../ReplayData/Repository.testGetComments.txt | 11 + .../ReplayData/Repository.testGetCommits.txt | 33 + ...Repository.testGetCommitsWithArguments.txt | 11 + .../Repository.testGetCommitsWithAuthor.txt | 44 ++ ...epository.testGetCommitsWithSinceUntil.txt | 22 + .../Repository.testGetContentDir.txt | 11 + .../ReplayData/Repository.testGetContents.txt | 22 + .../Repository.testGetContentsWithRef.txt | 22 + .../Repository.testGetContributors.txt | 11 + .../Repository.testGetDownloads.txt | 11 + .../ReplayData/Repository.testGetEvents.txt | 11 + .../ReplayData/Repository.testGetForks.txt | 11 + .../ReplayData/Repository.testGetGitRef.txt | 11 + ...tory.testGetGitRefWithIssue102Reverted.txt | 11 + .../ReplayData/Repository.testGetGitRefs.txt | 11 + ...Repository.testGetGitTreeWithRecursive.txt | 11 + .../ReplayData/Repository.testGetHooks.txt | 11 + .../ReplayData/Repository.testGetIssues.txt | 11 + .../Repository.testGetIssuesComments.txt | 66 ++ .../Repository.testGetIssuesEvents.txt | 11 + .../Repository.testGetIssuesWithArguments.txt | 99 +++ .../Repository.testGetIssuesWithWildcards.txt | 44 ++ .../ReplayData/Repository.testGetKeys.txt | 11 + .../ReplayData/Repository.testGetLabel.txt | 11 + .../ReplayData/Repository.testGetLabels.txt | 11 + .../Repository.testGetLanguages.txt | 11 + .../Repository.testGetMilestones.txt | 11 + ...ository.testGetMilestonesWithArguments.txt | 11 + .../Repository.testGetNetworkEvents.txt | 11 + .../ReplayData/Repository.testGetPulls.txt | 11 + .../Repository.testGetPullsComments.txt | 33 + .../Repository.testGetPullsWithArguments.txt | 11 + .../Repository.testGetStargazers.txt | 33 + .../Repository.testGetStargazersWithDates.txt | 33 + .../Repository.testGetSubscribers.txt | 11 + .../ReplayData/Repository.testGetTeams.txt | 33 + .../ReplayData/Repository.testGetWatchers.txt | 11 + .../Repository.testLegacySearchIssues.txt | 11 + .../Repository.testMergeWithConflict.txt | 11 + .../Repository.testMergeWithMessage.txt | 11 + .../Repository.testMergeWithNothingToDo.txt | 11 + .../Repository.testMergeWithoutMessage.txt | 11 + .../Repository.testProtectBranch.txt | 22 + ...hProtectionWithInvalidEnforcementLevel.txt | 11 + ...rrorWithBranchProtectionWithOutContext.txt | 11 + ...Repository.testRaiseErrorWithOutBranch.txt | 11 + .../Repository.testRemoveBranchProtection.txt | 22 + .../Repository.testSearchIssues.txt | 11 + .../Repository.testStatisticsAfterCaching.txt | 55 ++ ...Repository.testStatisticsBeforeCaching.txt | 55 ++ .../Repository.testSubscribePubSubHubbub.txt | 11 + ...Repository.testUnsubscribePubSubHubbub.txt | 11 + .../ReplayData/Repository.testUpdateFile.txt | 21 + .../tests/ReplayData/RepositoryKey.setUp.txt | 33 + .../ReplayData/RepositoryKey.testDelete.txt | 11 + .../ReplayData/RepositoryKey.testEdit.txt | 11 + ...epositoryKey.testEditWithoutParameters.txt | 11 + .../Search.testGetPageOnSearchUsers.txt | 11 + .../Search.testPaginateSearchUsers.txt | 22 + .../ReplayData/Search.testSearchCode.txt | 22 + .../ReplayData/Search.testSearchIssues.txt | 11 + .../ReplayData/Search.testSearchRepos.txt | 22 + .../ReplayData/Search.testSearchUsers.txt | 11 + .../Search.testUrlquotingOfQualifiers.txt | 11 + .../Search.testUrlquotingOfQuery.txt | 11 + .../SpecificExceptions.testBadCredentials.txt | 11 + .../SpecificExceptions.testBadUserAgent.txt | 11 + ...ecificExceptions.testRateLimitExceeded.txt | 55 ++ .../SpecificExceptions.testUnknownObject.txt | 22 + .../ReplayData/Status.testGetLastMessage.txt | 11 + .../ReplayData/Status.testGetMessages.txt | 11 + .../tests/ReplayData/Status.testGetStatus.txt | 11 + lib/github/tests/ReplayData/Tag.setUp.txt | 33 + lib/github/tests/ReplayData/Team.setUp.txt | 22 + .../tests/ReplayData/Team.testDelete.txt | 11 + .../Team.testEditWithAllArguments.txt | 11 + .../Team.testEditWithoutArguments.txt | 11 + .../tests/ReplayData/Team.testMembers.txt | 99 +++ .../ReplayData/Team.testRepoPermission.txt | 21 + .../tests/ReplayData/Team.testRepos.txt | 99 +++ lib/github/tests/ReplayData/UserKey.setUp.txt | 11 + .../tests/ReplayData/UserKey.testDelete.txt | 11 + .../UserKey.testEditWithAllArguments.txt | 11 + .../UserKey.testEditWithoutArguments.txt | 11 + lib/github/tests/Repository.py | 662 ++++++++++++++++++ lib/github/tests/RepositoryKey.py | 55 ++ lib/github/tests/Search.py | 75 ++ lib/github/tests/Status.py | 44 ++ lib/github/tests/Tag.py | 42 ++ lib/github/tests/Team.py | 83 +++ lib/github/tests/UserKey.py | 54 ++ lib/github/tests/__init__.py | 25 + lib/github/tests/__main__.py | 47 ++ 577 files changed, 17576 insertions(+), 92 deletions(-) create mode 100644 lib/github/CommitCombinedStatus.py create mode 100644 lib/github/tests/AllTests.py create mode 100644 lib/github/tests/AuthenticatedUser.py create mode 100644 lib/github/tests/Authentication.py create mode 100644 lib/github/tests/Authorization.py create mode 100755 lib/github/tests/BadAttributes.py create mode 100644 lib/github/tests/Branch.py create mode 100644 lib/github/tests/Commit.py create mode 100644 lib/github/tests/CommitCombinedStatus.py create mode 100644 lib/github/tests/CommitComment.py create mode 100644 lib/github/tests/CommitStatus.py create mode 100644 lib/github/tests/ConditionalRequestUpdate.py create mode 100644 lib/github/tests/ContentFile.py create mode 100644 lib/github/tests/Download.py create mode 100644 lib/github/tests/Enterprise.py create mode 100755 lib/github/tests/Equality.py create mode 100644 lib/github/tests/Event.py create mode 100644 lib/github/tests/Exceptions.py create mode 100644 lib/github/tests/ExposeAllAttributes.py create mode 100644 lib/github/tests/Framework.py create mode 100644 lib/github/tests/Gist.py create mode 100644 lib/github/tests/GistComment.py create mode 100644 lib/github/tests/GitBlob.py create mode 100644 lib/github/tests/GitCommit.py create mode 100644 lib/github/tests/GitRef.py create mode 100644 lib/github/tests/GitRelease.py create mode 100644 lib/github/tests/GitTag.py create mode 100644 lib/github/tests/GitTree.py create mode 100644 lib/github/tests/Github_.py create mode 100644 lib/github/tests/Hook.py create mode 100644 lib/github/tests/Issue.py create mode 100644 lib/github/tests/Issue131.py create mode 100644 lib/github/tests/Issue133.py create mode 100644 lib/github/tests/Issue134.py create mode 100644 lib/github/tests/Issue139.py create mode 100644 lib/github/tests/Issue140.py create mode 100644 lib/github/tests/Issue142.py create mode 100644 lib/github/tests/Issue158.py create mode 100644 lib/github/tests/Issue174.py create mode 100644 lib/github/tests/Issue214.py create mode 100644 lib/github/tests/Issue216.py create mode 100644 lib/github/tests/Issue278.py create mode 100644 lib/github/tests/Issue33.py create mode 100644 lib/github/tests/Issue50.py create mode 100644 lib/github/tests/Issue54.py create mode 100644 lib/github/tests/Issue80.py create mode 100644 lib/github/tests/Issue87.py create mode 100644 lib/github/tests/IssueComment.py create mode 100644 lib/github/tests/IssueEvent.py create mode 100644 lib/github/tests/Label.py create mode 100644 lib/github/tests/Logging_.py create mode 100644 lib/github/tests/Markdown.py create mode 100644 lib/github/tests/Milestone.py create mode 100644 lib/github/tests/NamedUser.py create mode 100644 lib/github/tests/Organization.py create mode 100644 lib/github/tests/PaginatedList.py create mode 100644 lib/github/tests/Persistence.py create mode 100644 lib/github/tests/PullRequest.py create mode 100644 lib/github/tests/PullRequestComment.py create mode 100644 lib/github/tests/PullRequestFile.py create mode 100644 lib/github/tests/RateLimiting.py create mode 100644 lib/github/tests/RawData.py create mode 100644 lib/github/tests/ReplayData/AuthenticatedUser.testAttributes.txt create mode 100644 lib/github/tests/ReplayData/AuthenticatedUser.testCreateAuthorizationWithAllArguments.txt create mode 100644 lib/github/tests/ReplayData/AuthenticatedUser.testCreateAuthorizationWithClientIdAndSecret.txt create mode 100644 lib/github/tests/ReplayData/AuthenticatedUser.testCreateAuthorizationWithoutArguments.txt create mode 100644 lib/github/tests/ReplayData/AuthenticatedUser.testCreateFork.txt create mode 100644 lib/github/tests/ReplayData/AuthenticatedUser.testCreateGist.txt create mode 100644 lib/github/tests/ReplayData/AuthenticatedUser.testCreateGistWithoutDescription.txt create mode 100644 lib/github/tests/ReplayData/AuthenticatedUser.testCreateKey.txt create mode 100644 lib/github/tests/ReplayData/AuthenticatedUser.testCreateRepository.txt create mode 100644 lib/github/tests/ReplayData/AuthenticatedUser.testCreateRepositoryWithAllArguments.txt create mode 100644 lib/github/tests/ReplayData/AuthenticatedUser.testCreateRepositoryWithAutoInit.txt create mode 100644 lib/github/tests/ReplayData/AuthenticatedUser.testEditWithAllArguments.txt create mode 100644 lib/github/tests/ReplayData/AuthenticatedUser.testEditWithoutArguments.txt create mode 100644 lib/github/tests/ReplayData/AuthenticatedUser.testEmails.txt create mode 100644 lib/github/tests/ReplayData/AuthenticatedUser.testFollowing.txt create mode 100644 lib/github/tests/ReplayData/AuthenticatedUser.testGetAuthorizations.txt create mode 100644 lib/github/tests/ReplayData/AuthenticatedUser.testGetEvents.txt create mode 100644 lib/github/tests/ReplayData/AuthenticatedUser.testGetGists.txt create mode 100644 lib/github/tests/ReplayData/AuthenticatedUser.testGetIssues.txt create mode 100644 lib/github/tests/ReplayData/AuthenticatedUser.testGetIssuesWithAllArguments.txt create mode 100644 lib/github/tests/ReplayData/AuthenticatedUser.testGetKeys.txt create mode 100644 lib/github/tests/ReplayData/AuthenticatedUser.testGetNotification.txt create mode 100644 lib/github/tests/ReplayData/AuthenticatedUser.testGetNotifications.txt create mode 100644 lib/github/tests/ReplayData/AuthenticatedUser.testGetNotificationsWithOtherArguments.txt create mode 100644 lib/github/tests/ReplayData/AuthenticatedUser.testGetOrganizationEvents.txt create mode 100644 lib/github/tests/ReplayData/AuthenticatedUser.testGetOrgs.txt create mode 100644 lib/github/tests/ReplayData/AuthenticatedUser.testGetRepos.txt create mode 100644 lib/github/tests/ReplayData/AuthenticatedUser.testGetReposWithArguments.txt create mode 100644 lib/github/tests/ReplayData/AuthenticatedUser.testGetStarredGists.txt create mode 100644 lib/github/tests/ReplayData/AuthenticatedUser.testGetTeams.txt create mode 100644 lib/github/tests/ReplayData/AuthenticatedUser.testGetUserIssues.txt create mode 100644 lib/github/tests/ReplayData/AuthenticatedUser.testGetUserIssuesWithAllArguments.txt create mode 100644 lib/github/tests/ReplayData/AuthenticatedUser.testStarring.txt create mode 100644 lib/github/tests/ReplayData/AuthenticatedUser.testSubscriptions.txt create mode 100644 lib/github/tests/ReplayData/AuthenticatedUser.testWatching.txt create mode 100644 lib/github/tests/ReplayData/Authentication.testAuthorizationHeaderWithLogin.txt create mode 100644 lib/github/tests/ReplayData/Authentication.testAuthorizationHeaderWithToken.txt create mode 100644 lib/github/tests/ReplayData/Authentication.testBasicAuthentication.txt create mode 100644 lib/github/tests/ReplayData/Authentication.testNoAuthentication.txt create mode 100644 lib/github/tests/ReplayData/Authentication.testOAuthAuthentication.txt create mode 100644 lib/github/tests/ReplayData/Authentication.testSecretKeyAuthentication.txt create mode 100644 lib/github/tests/ReplayData/Authentication.testUserAgent.txt create mode 100644 lib/github/tests/ReplayData/Authorization.setUp.txt create mode 100644 lib/github/tests/ReplayData/Authorization.testDelete.txt create mode 100644 lib/github/tests/ReplayData/Authorization.testEdit.txt create mode 100644 lib/github/tests/ReplayData/BadAttributes.testBadAttributeInClassAttribute.txt create mode 100755 lib/github/tests/ReplayData/BadAttributes.testBadAttributeTransformation.txt create mode 100644 lib/github/tests/ReplayData/BadAttributes.testBadSimpleAttribute.txt create mode 100644 lib/github/tests/ReplayData/BadAttributes.testBadSimpleAttributeInList.txt create mode 100644 lib/github/tests/ReplayData/BadAttributes.testBadTransformedAttribute.txt create mode 100644 lib/github/tests/ReplayData/BadAttributes.testBadTransformedAttributeInDict.txt create mode 100644 lib/github/tests/ReplayData/BadAttributes.testBadTransformedAttributeInList.txt create mode 100644 lib/github/tests/ReplayData/BadAttributes.testIssue195.txt create mode 100644 lib/github/tests/ReplayData/Branch.setUp.txt create mode 100644 lib/github/tests/ReplayData/Branch.testCommitCommentsOnLine.txt create mode 100644 lib/github/tests/ReplayData/Branch.testProtectedAttributes.txt create mode 100644 lib/github/tests/ReplayData/Commit.setUp.txt create mode 100644 lib/github/tests/ReplayData/Commit.testCreateComment.txt create mode 100644 lib/github/tests/ReplayData/Commit.testCreateCommentOnFileLine.txt create mode 100644 lib/github/tests/ReplayData/Commit.testCreateCommentOnFilePosition.txt create mode 100644 lib/github/tests/ReplayData/Commit.testCreateStatusWithAllParameters.txt create mode 100644 lib/github/tests/ReplayData/Commit.testCreateStatusWithoutOptionalParameters.txt create mode 100644 lib/github/tests/ReplayData/Commit.testGetComments.txt create mode 100644 lib/github/tests/ReplayData/CommitCombinedStatus.setUp.txt create mode 100644 lib/github/tests/ReplayData/CommitComment.setUp.txt create mode 100644 lib/github/tests/ReplayData/CommitComment.testDelete.txt create mode 100644 lib/github/tests/ReplayData/CommitComment.testEdit.txt create mode 100644 lib/github/tests/ReplayData/CommitStatus.setUp.txt create mode 100644 lib/github/tests/ReplayData/ConditionalRequestUpdate.setUp.txt create mode 100755 lib/github/tests/ReplayData/ConditionalRequestUpdate.testDidNotUpdate.txt create mode 100644 lib/github/tests/ReplayData/ConditionalRequestUpdate.testDidUpdate.txt create mode 100755 lib/github/tests/ReplayData/ConditionalRequestUpdate.testUpdateObjectWithoutEtag.txt create mode 100644 lib/github/tests/ReplayData/ContentFile.setUp.txt create mode 100644 lib/github/tests/ReplayData/Download.setUp.txt create mode 100644 lib/github/tests/ReplayData/Download.testDelete.txt create mode 100644 lib/github/tests/ReplayData/Enterprise.testHttp.txt create mode 100644 lib/github/tests/ReplayData/Enterprise.testHttps.txt create mode 100644 lib/github/tests/ReplayData/Enterprise.testLongUrl.txt create mode 100644 lib/github/tests/ReplayData/Enterprise.testSpecificPort.txt create mode 100644 lib/github/tests/ReplayData/Equality.testBranchEquality.txt create mode 100644 lib/github/tests/ReplayData/Equality.testUserDifference.txt create mode 100644 lib/github/tests/ReplayData/Equality.testUserEquality.txt create mode 100644 lib/github/tests/ReplayData/Event.setUp.txt create mode 100644 lib/github/tests/ReplayData/Exceptions.testBadAuthentication.txt create mode 100644 lib/github/tests/ReplayData/Exceptions.testInvalidInput.txt create mode 100755 lib/github/tests/ReplayData/Exceptions.testNonJsonDataReturnedByGithub.txt create mode 100644 lib/github/tests/ReplayData/Exceptions.testUnknownObject.txt create mode 100644 lib/github/tests/ReplayData/Exceptions.testUnknownUser.txt create mode 100644 lib/github/tests/ReplayData/ExposeAllAttributes.testAllClasses.txt create mode 100644 lib/github/tests/ReplayData/Gist.testAttributes.txt create mode 100644 lib/github/tests/ReplayData/Gist.testCreateComment.txt create mode 100644 lib/github/tests/ReplayData/Gist.testDelete.txt create mode 100644 lib/github/tests/ReplayData/Gist.testDeleteFile.txt create mode 100644 lib/github/tests/ReplayData/Gist.testEditWithAllParameters.txt create mode 100644 lib/github/tests/ReplayData/Gist.testEditWithoutParameters.txt create mode 100644 lib/github/tests/ReplayData/Gist.testFork.txt create mode 100644 lib/github/tests/ReplayData/Gist.testGetComments.txt create mode 100644 lib/github/tests/ReplayData/Gist.testRenameFile.txt create mode 100644 lib/github/tests/ReplayData/Gist.testStarring.txt create mode 100644 lib/github/tests/ReplayData/GistComment.setUp.txt create mode 100644 lib/github/tests/ReplayData/GistComment.testDelete.txt create mode 100644 lib/github/tests/ReplayData/GistComment.testEdit.txt create mode 100644 lib/github/tests/ReplayData/GitBlob.setUp.txt create mode 100644 lib/github/tests/ReplayData/GitCommit.setUp.txt create mode 100644 lib/github/tests/ReplayData/GitRef.setUp.txt create mode 100644 lib/github/tests/ReplayData/GitRef.testDelete.txt create mode 100644 lib/github/tests/ReplayData/GitRef.testEdit.txt create mode 100644 lib/github/tests/ReplayData/GitRef.testEditWithForce.txt create mode 100644 lib/github/tests/ReplayData/GitTag.setUp.txt create mode 100644 lib/github/tests/ReplayData/GitTree.setUp.txt create mode 100644 lib/github/tests/ReplayData/Github.testGetEmojis.txt create mode 100644 lib/github/tests/ReplayData/Github.testGetGists.txt create mode 100644 lib/github/tests/ReplayData/Github.testGetGitignoreTemplate.txt create mode 100644 lib/github/tests/ReplayData/Github.testGetGitignoreTemplates.txt create mode 100644 lib/github/tests/ReplayData/Github.testGetHook.txt create mode 100644 lib/github/tests/ReplayData/Github.testGetHooks.txt create mode 100644 lib/github/tests/ReplayData/Github.testGetRepoFromFullName.txt create mode 100644 lib/github/tests/ReplayData/Github.testGetRepoFromId.txt create mode 100644 lib/github/tests/ReplayData/Github.testGetRepos.txt create mode 100644 lib/github/tests/ReplayData/Github.testGetReposSince.txt create mode 100644 lib/github/tests/ReplayData/Github.testGetUsers.txt create mode 100644 lib/github/tests/ReplayData/Github.testGetUsersSince.txt create mode 100644 lib/github/tests/ReplayData/Github.testLegacySearchRepos.txt create mode 100644 lib/github/tests/ReplayData/Github.testLegacySearchReposExplicitPagination.txt create mode 100644 lib/github/tests/ReplayData/Github.testLegacySearchReposPagination.txt create mode 100644 lib/github/tests/ReplayData/Github.testLegacySearchReposWithLanguage.txt create mode 100644 lib/github/tests/ReplayData/Github.testLegacySearchUserByEmail.txt create mode 100644 lib/github/tests/ReplayData/Github.testLegacySearchUsers.txt create mode 100644 lib/github/tests/ReplayData/Github.testLegacySearchUsersExplicitPagination.txt create mode 100644 lib/github/tests/ReplayData/Github.testLegacySearchUsersPagination.txt create mode 100644 lib/github/tests/ReplayData/Github.testSearchRepos.txt create mode 100644 lib/github/tests/ReplayData/Github.testSearchUserByEmail.txt create mode 100644 lib/github/tests/ReplayData/Github.testSearchUsers.txt create mode 100644 lib/github/tests/ReplayData/Hook.setUp.txt create mode 100644 lib/github/tests/ReplayData/Hook.testDelete.txt create mode 100644 lib/github/tests/ReplayData/Hook.testEditWithAllParameters.txt create mode 100644 lib/github/tests/ReplayData/Hook.testEditWithMinimalParameters.txt create mode 100644 lib/github/tests/ReplayData/Hook.testTest.txt create mode 100644 lib/github/tests/ReplayData/Issue.setUp.txt create mode 100644 lib/github/tests/ReplayData/Issue.testAddAndRemoveLabels.txt create mode 100644 lib/github/tests/ReplayData/Issue.testAddAndRemoveLabelsWithStringArguments.txt create mode 100644 lib/github/tests/ReplayData/Issue.testAttributes.txt create mode 100644 lib/github/tests/ReplayData/Issue.testCreateComment.txt create mode 100644 lib/github/tests/ReplayData/Issue.testDeleteAndSetLabels.txt create mode 100755 lib/github/tests/ReplayData/Issue.testDeleteAndSetLabelsWithStringArguments.txt create mode 100644 lib/github/tests/ReplayData/Issue.testEditResetAssignee.txt create mode 100644 lib/github/tests/ReplayData/Issue.testEditResetMilestone.txt create mode 100644 lib/github/tests/ReplayData/Issue.testEditWithAllParameters.txt create mode 100644 lib/github/tests/ReplayData/Issue.testEditWithoutParameters.txt create mode 100644 lib/github/tests/ReplayData/Issue.testGetComments.txt create mode 100644 lib/github/tests/ReplayData/Issue.testGetCommentsSince.txt create mode 100644 lib/github/tests/ReplayData/Issue.testGetEvents.txt create mode 100644 lib/github/tests/ReplayData/Issue.testGetLabels.txt create mode 100644 lib/github/tests/ReplayData/Issue131.setUp.txt create mode 100644 lib/github/tests/ReplayData/Issue131.testGetPullWithOrgHeadUser.txt create mode 100644 lib/github/tests/ReplayData/Issue131.testGetPullsWithOrgHeadUser.txt create mode 100644 lib/github/tests/ReplayData/Issue133.testGetPageWithoutInitialArguments.txt create mode 100644 lib/github/tests/ReplayData/Issue134.testGetAuthorizationsFailsWhenAutenticatedThroughOAuth.txt create mode 100644 lib/github/tests/ReplayData/Issue134.testGetAuthorizationsSucceedsWhenAutenticatedThroughLoginPassword.txt create mode 100644 lib/github/tests/ReplayData/Issue134.testGetOAuthScopesFromHeader.txt create mode 100644 lib/github/tests/ReplayData/Issue139.setUp.txt create mode 100644 lib/github/tests/ReplayData/Issue139.testCompletion.txt create mode 100644 lib/github/tests/ReplayData/Issue140.setUp.txt create mode 100644 lib/github/tests/ReplayData/Issue140.testGetDirContents.txt create mode 100644 lib/github/tests/ReplayData/Issue140.testGetDirContentsThenLazyCompletionOfFile.txt create mode 100644 lib/github/tests/ReplayData/Issue140.testGetDirContentsWithRef.txt create mode 100644 lib/github/tests/ReplayData/Issue140.testGetFileContents.txt create mode 100644 lib/github/tests/ReplayData/Issue158.testPaginationWithSecretKeyAuthentication.txt create mode 100644 lib/github/tests/ReplayData/Issue174.setUp.txt create mode 100644 lib/github/tests/ReplayData/Issue174.testGetDirContentsWhithHttpRedirect.txt create mode 100644 lib/github/tests/ReplayData/Issue214.setUp.txt create mode 100644 lib/github/tests/ReplayData/Issue214.testAssignees.txt create mode 100644 lib/github/tests/ReplayData/Issue214.testCollaborators.txt create mode 100644 lib/github/tests/ReplayData/Issue214.testCreateIssue.txt create mode 100644 lib/github/tests/ReplayData/Issue214.testEditIssue.txt create mode 100644 lib/github/tests/ReplayData/Issue214.testGetIssues.txt create mode 100644 lib/github/tests/ReplayData/Issue216.setUp.txt create mode 100644 lib/github/tests/ReplayData/Issue216.testIteration.txt create mode 100644 lib/github/tests/ReplayData/Issue278.setUp.txt create mode 100644 lib/github/tests/ReplayData/Issue278.testIteration.txt create mode 100644 lib/github/tests/ReplayData/Issue33.setUp.txt create mode 100644 lib/github/tests/ReplayData/Issue33.testClosedIssues.txt create mode 100644 lib/github/tests/ReplayData/Issue33.testOpenIssues.txt create mode 100644 lib/github/tests/ReplayData/Issue50.setUp.txt create mode 100644 lib/github/tests/ReplayData/Issue50.testAddLabelToIssue.txt create mode 100644 lib/github/tests/ReplayData/Issue50.testCreateIssueWithLabel.txt create mode 100644 lib/github/tests/ReplayData/Issue50.testCreateLabel.txt create mode 100644 lib/github/tests/ReplayData/Issue50.testGetIssuesWithLabel.txt create mode 100644 lib/github/tests/ReplayData/Issue50.testGetLabel.txt create mode 100644 lib/github/tests/ReplayData/Issue50.testGetLabels.txt create mode 100644 lib/github/tests/ReplayData/Issue50.testIssueGetLabels.txt create mode 100644 lib/github/tests/ReplayData/Issue50.testRemoveLabelFromIssue.txt create mode 100644 lib/github/tests/ReplayData/Issue50.testSetIssueLabels.txt create mode 100644 lib/github/tests/ReplayData/Issue54.setUp.txt create mode 100644 lib/github/tests/ReplayData/Issue54.testConversion.txt create mode 100644 lib/github/tests/ReplayData/Issue80.testIgnoreHttpsFromGithubEnterprise.txt create mode 100644 lib/github/tests/ReplayData/Issue80.testIgnoreHttpsFromGithubEnterpriseWithPort.txt create mode 100644 lib/github/tests/ReplayData/Issue87.setUp.txt create mode 100644 lib/github/tests/ReplayData/Issue87.testCreateIssueWithEscapedPercentInBody.txt create mode 100644 lib/github/tests/ReplayData/Issue87.testCreateIssueWithEscapedPercentInTitle.txt create mode 100644 lib/github/tests/ReplayData/Issue87.testCreateIssueWithPercentInBody.txt create mode 100644 lib/github/tests/ReplayData/Issue87.testCreateIssueWithPercentInTitle.txt create mode 100644 lib/github/tests/ReplayData/IssueComment.setUp.txt create mode 100644 lib/github/tests/ReplayData/IssueComment.testDelete.txt create mode 100644 lib/github/tests/ReplayData/IssueComment.testEdit.txt create mode 100644 lib/github/tests/ReplayData/IssueEvent.setUp.txt create mode 100644 lib/github/tests/ReplayData/IssueEvent.testAttributes.txt create mode 100644 lib/github/tests/ReplayData/Label.setUp.txt create mode 100644 lib/github/tests/ReplayData/Label.testDelete.txt create mode 100644 lib/github/tests/ReplayData/Label.testEdit.txt create mode 100644 lib/github/tests/ReplayData/LazyRepository.setUp.txt create mode 100644 lib/github/tests/ReplayData/LazyRepository.testGetIssues.txt create mode 100644 lib/github/tests/ReplayData/LazyRepository.testGetUser.txt create mode 100644 lib/github/tests/ReplayData/LazyRepository.testOwner.txt create mode 100644 lib/github/tests/ReplayData/Logging.testLoggingWithBaseUrl.txt create mode 100644 lib/github/tests/ReplayData/Logging.testLoggingWithBasicAuthentication.txt create mode 100644 lib/github/tests/ReplayData/Logging.testLoggingWithOAuthAuthentication.txt create mode 100644 lib/github/tests/ReplayData/Logging.testLoggingWithoutAuthentication.txt create mode 100644 lib/github/tests/ReplayData/Markdown.setUp.txt create mode 100644 lib/github/tests/ReplayData/Markdown.testRenderGithubFlavoredMarkdown.txt create mode 100644 lib/github/tests/ReplayData/Markdown.testRenderMarkdown.txt create mode 100644 lib/github/tests/ReplayData/Milestone.setUp.txt create mode 100644 lib/github/tests/ReplayData/Milestone.testDelete.txt create mode 100644 lib/github/tests/ReplayData/Milestone.testEditWithAllParameters.txt create mode 100644 lib/github/tests/ReplayData/Milestone.testEditWithMinimalParameters.txt create mode 100644 lib/github/tests/ReplayData/Milestone.testGetLabels.txt create mode 100644 lib/github/tests/ReplayData/NamedUser.setUp.txt create mode 100644 lib/github/tests/ReplayData/NamedUser.testAttributesOfOtherUser.txt create mode 100644 lib/github/tests/ReplayData/NamedUser.testGetEvents.txt create mode 100644 lib/github/tests/ReplayData/NamedUser.testGetFollowers.txt create mode 100644 lib/github/tests/ReplayData/NamedUser.testGetFollowing.txt create mode 100644 lib/github/tests/ReplayData/NamedUser.testGetGists.txt create mode 100644 lib/github/tests/ReplayData/NamedUser.testGetKeys.txt create mode 100644 lib/github/tests/ReplayData/NamedUser.testGetOrgs.txt create mode 100644 lib/github/tests/ReplayData/NamedUser.testGetPublicEvents.txt create mode 100644 lib/github/tests/ReplayData/NamedUser.testGetPublicReceivedEvents.txt create mode 100644 lib/github/tests/ReplayData/NamedUser.testGetReceivedEvents.txt create mode 100644 lib/github/tests/ReplayData/NamedUser.testGetRepo.txt create mode 100644 lib/github/tests/ReplayData/NamedUser.testGetRepos.txt create mode 100644 lib/github/tests/ReplayData/NamedUser.testGetReposWithType.txt create mode 100644 lib/github/tests/ReplayData/NamedUser.testGetStarred.txt create mode 100644 lib/github/tests/ReplayData/NamedUser.testGetSubscriptions.txt create mode 100644 lib/github/tests/ReplayData/NamedUser.testGetWatched.txt create mode 100644 lib/github/tests/ReplayData/NamedUser.testHasInFollowing.txt create mode 100644 lib/github/tests/ReplayData/Organization.setUp.txt create mode 100644 lib/github/tests/ReplayData/Organization.testCreateFork.txt create mode 100644 lib/github/tests/ReplayData/Organization.testCreateRepoWithAllArguments.txt create mode 100644 lib/github/tests/ReplayData/Organization.testCreateRepoWithMinimalArguments.txt create mode 100644 lib/github/tests/ReplayData/Organization.testCreateRepositoryWithAutoInit.txt create mode 100644 lib/github/tests/ReplayData/Organization.testCreateTeam.txt create mode 100644 lib/github/tests/ReplayData/Organization.testCreateTeamWithAllArguments.txt create mode 100644 lib/github/tests/ReplayData/Organization.testEditWithAllArguments.txt create mode 100644 lib/github/tests/ReplayData/Organization.testEditWithoutArguments.txt create mode 100644 lib/github/tests/ReplayData/Organization.testGetEvents.txt create mode 100644 lib/github/tests/ReplayData/Organization.testGetIssues.txt create mode 100644 lib/github/tests/ReplayData/Organization.testGetIssuesWithAllArguments.txt create mode 100644 lib/github/tests/ReplayData/Organization.testGetMembers.txt create mode 100644 lib/github/tests/ReplayData/Organization.testGetPublicMembers.txt create mode 100644 lib/github/tests/ReplayData/Organization.testGetRepos.txt create mode 100644 lib/github/tests/ReplayData/Organization.testGetReposWithType.txt create mode 100644 lib/github/tests/ReplayData/Organization.testGetTeams.txt create mode 100644 lib/github/tests/ReplayData/Organization.testMembers.txt create mode 100644 lib/github/tests/ReplayData/Organization.testPublicMembers.txt create mode 100644 lib/github/tests/ReplayData/PaginatedList.setUp.txt create mode 100644 lib/github/tests/ReplayData/PaginatedList.testCustomPerPage.txt create mode 100644 lib/github/tests/ReplayData/PaginatedList.testCustomPerPageWithGetPage.txt create mode 100644 lib/github/tests/ReplayData/PaginatedList.testCustomPerPageWithNoUrlParams2.txt create mode 100644 lib/github/tests/ReplayData/PaginatedList.testGetFirstPage.txt create mode 100644 lib/github/tests/ReplayData/PaginatedList.testGetThirdPage.txt create mode 100644 lib/github/tests/ReplayData/PaginatedList.testGettingTheReversedListDoesNotModifyTheOriginalList.txt create mode 100644 lib/github/tests/ReplayData/PaginatedList.testIntIndexingAfterIteration.txt create mode 100644 lib/github/tests/ReplayData/PaginatedList.testIntIndexingInFirstPage.txt create mode 100644 lib/github/tests/ReplayData/PaginatedList.testIntIndexingInThirdPage.txt create mode 100644 lib/github/tests/ReplayData/PaginatedList.testInterruptedIteration.txt create mode 100644 lib/github/tests/ReplayData/PaginatedList.testInterruptedIterationInSlice.txt create mode 100644 lib/github/tests/ReplayData/PaginatedList.testIteration.txt create mode 100644 lib/github/tests/ReplayData/PaginatedList.testNoFirstPage.txt create mode 100644 lib/github/tests/ReplayData/PaginatedList.testReversedIterationSupportsIterator.txt create mode 100644 lib/github/tests/ReplayData/PaginatedList.testReversedIterationWithMultiplePages.txt create mode 100644 lib/github/tests/ReplayData/PaginatedList.testReversedIterationWithSinglePage.txt create mode 100644 lib/github/tests/ReplayData/PaginatedList.testSeveralIterations.txt create mode 100644 lib/github/tests/ReplayData/PaginatedList.testSliceIndexingInFirstPage.txt create mode 100644 lib/github/tests/ReplayData/PaginatedList.testSliceIndexingUntilEnd.txt create mode 100644 lib/github/tests/ReplayData/PaginatedList.testSliceIndexingUntilFourthPage.txt create mode 100644 lib/github/tests/ReplayData/Persistence.setUp.txt create mode 100644 lib/github/tests/ReplayData/Persistence.testLoadAndUpdate.txt create mode 100644 lib/github/tests/ReplayData/PullRequest.setUp.txt create mode 100644 lib/github/tests/ReplayData/PullRequest.testCreateComment.txt create mode 100644 lib/github/tests/ReplayData/PullRequest.testCreateIssueComment.txt create mode 100644 lib/github/tests/ReplayData/PullRequest.testEditWithAllArguments.txt create mode 100644 lib/github/tests/ReplayData/PullRequest.testEditWithoutArguments.txt create mode 100644 lib/github/tests/ReplayData/PullRequest.testGetComments.txt create mode 100644 lib/github/tests/ReplayData/PullRequest.testGetCommits.txt create mode 100644 lib/github/tests/ReplayData/PullRequest.testGetFiles.txt create mode 100644 lib/github/tests/ReplayData/PullRequest.testGetIssueComment.txt create mode 100644 lib/github/tests/ReplayData/PullRequest.testGetIssueComments.txt create mode 100644 lib/github/tests/ReplayData/PullRequest.testMerge.txt create mode 100644 lib/github/tests/ReplayData/PullRequest.testMergeWithCommitMessage.txt create mode 100644 lib/github/tests/ReplayData/PullRequestComment.setUp.txt create mode 100644 lib/github/tests/ReplayData/PullRequestComment.testDelete.txt create mode 100644 lib/github/tests/ReplayData/PullRequestComment.testEdit.txt create mode 100644 lib/github/tests/ReplayData/PullRequestFile.setUp.txt create mode 100644 lib/github/tests/ReplayData/RateLimiting.testGetRateLimit.txt create mode 100644 lib/github/tests/ReplayData/RateLimiting.testRateLimiting.txt create mode 100755 lib/github/tests/ReplayData/RateLimiting.testResetTime.txt create mode 100644 lib/github/tests/ReplayData/RawData.testCompletedObject.txt create mode 100644 lib/github/tests/ReplayData/RawData.testNonCompletableObject.txt create mode 100644 lib/github/tests/ReplayData/RawData.testNotYetCompletedObject.txt create mode 100644 lib/github/tests/ReplayData/Release.setUp.txt create mode 100644 lib/github/tests/ReplayData/Release.testAttributes.txt create mode 100644 lib/github/tests/ReplayData/Release.testCreateGitTagAndRelease.txt create mode 100644 lib/github/tests/ReplayData/Release.testDelete.txt create mode 100644 lib/github/tests/ReplayData/Release.testGetRelease.txt create mode 100644 lib/github/tests/ReplayData/Release.testUpdate.txt create mode 100644 lib/github/tests/ReplayData/Repository.setUp.txt create mode 100644 lib/github/tests/ReplayData/Repository.testAssignees.txt create mode 100644 lib/github/tests/ReplayData/Repository.testBadSubscribePubSubHubbub.txt create mode 100644 lib/github/tests/ReplayData/Repository.testChangeBranchProtectionContexts.txt create mode 100644 lib/github/tests/ReplayData/Repository.testChangeBranchProtectionEnforcementLevel.txt create mode 100644 lib/github/tests/ReplayData/Repository.testCollaborators.txt create mode 100644 lib/github/tests/ReplayData/Repository.testCompare.txt create mode 100644 lib/github/tests/ReplayData/Repository.testCreateFile.txt create mode 100644 lib/github/tests/ReplayData/Repository.testCreateGitBlob.txt create mode 100644 lib/github/tests/ReplayData/Repository.testCreateGitCommit.txt create mode 100644 lib/github/tests/ReplayData/Repository.testCreateGitCommitWithAllArguments.txt create mode 100644 lib/github/tests/ReplayData/Repository.testCreateGitCommitWithParents.txt create mode 100644 lib/github/tests/ReplayData/Repository.testCreateGitRef.txt create mode 100644 lib/github/tests/ReplayData/Repository.testCreateGitTag.txt create mode 100644 lib/github/tests/ReplayData/Repository.testCreateGitTagWithAllArguments.txt create mode 100644 lib/github/tests/ReplayData/Repository.testCreateGitTree.txt create mode 100644 lib/github/tests/ReplayData/Repository.testCreateGitTreeWithBaseTree.txt create mode 100644 lib/github/tests/ReplayData/Repository.testCreateGitTreeWithSha.txt create mode 100644 lib/github/tests/ReplayData/Repository.testCreateHookWithAllParameters.txt create mode 100644 lib/github/tests/ReplayData/Repository.testCreateHookWithMinimalParameters.txt create mode 100644 lib/github/tests/ReplayData/Repository.testCreateIssue.txt create mode 100644 lib/github/tests/ReplayData/Repository.testCreateIssueWithAllArguments.txt create mode 100644 lib/github/tests/ReplayData/Repository.testCreateIssueWithAllArgumentsStringLabel.txt create mode 100644 lib/github/tests/ReplayData/Repository.testCreateKey.txt create mode 100644 lib/github/tests/ReplayData/Repository.testCreateLabel.txt create mode 100644 lib/github/tests/ReplayData/Repository.testCreateMilestone.txt create mode 100644 lib/github/tests/ReplayData/Repository.testCreateMilestoneWithMinimalArguments.txt create mode 100644 lib/github/tests/ReplayData/Repository.testCreatePull.txt create mode 100644 lib/github/tests/ReplayData/Repository.testCreatePullFromIssue.txt create mode 100644 lib/github/tests/ReplayData/Repository.testDelete.txt create mode 100644 lib/github/tests/ReplayData/Repository.testDeleteFile.txt create mode 100644 lib/github/tests/ReplayData/Repository.testEditWithAllArguments.txt create mode 100644 lib/github/tests/ReplayData/Repository.testEditWithDefaultBranch.txt create mode 100644 lib/github/tests/ReplayData/Repository.testEditWithoutArguments.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetArchiveLink.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetBranch.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetComments.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetCommits.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetCommitsWithArguments.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetCommitsWithAuthor.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetCommitsWithSinceUntil.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetContentDir.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetContents.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetContentsWithRef.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetContributors.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetDownloads.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetEvents.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetForks.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetGitRef.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetGitRefWithIssue102Reverted.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetGitRefs.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetGitTreeWithRecursive.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetHooks.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetIssues.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetIssuesComments.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetIssuesEvents.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetIssuesWithArguments.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetIssuesWithWildcards.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetKeys.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetLabel.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetLabels.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetLanguages.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetMilestones.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetMilestonesWithArguments.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetNetworkEvents.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetPulls.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetPullsComments.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetPullsWithArguments.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetStargazers.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetStargazersWithDates.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetSubscribers.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetTeams.txt create mode 100644 lib/github/tests/ReplayData/Repository.testGetWatchers.txt create mode 100644 lib/github/tests/ReplayData/Repository.testLegacySearchIssues.txt create mode 100644 lib/github/tests/ReplayData/Repository.testMergeWithConflict.txt create mode 100644 lib/github/tests/ReplayData/Repository.testMergeWithMessage.txt create mode 100644 lib/github/tests/ReplayData/Repository.testMergeWithNothingToDo.txt create mode 100644 lib/github/tests/ReplayData/Repository.testMergeWithoutMessage.txt create mode 100644 lib/github/tests/ReplayData/Repository.testProtectBranch.txt create mode 100644 lib/github/tests/ReplayData/Repository.testRaiseErrorWithBranchProtectionWithInvalidEnforcementLevel.txt create mode 100644 lib/github/tests/ReplayData/Repository.testRaiseErrorWithBranchProtectionWithOutContext.txt create mode 100644 lib/github/tests/ReplayData/Repository.testRaiseErrorWithOutBranch.txt create mode 100644 lib/github/tests/ReplayData/Repository.testRemoveBranchProtection.txt create mode 100644 lib/github/tests/ReplayData/Repository.testSearchIssues.txt create mode 100644 lib/github/tests/ReplayData/Repository.testStatisticsAfterCaching.txt create mode 100755 lib/github/tests/ReplayData/Repository.testStatisticsBeforeCaching.txt create mode 100644 lib/github/tests/ReplayData/Repository.testSubscribePubSubHubbub.txt create mode 100644 lib/github/tests/ReplayData/Repository.testUnsubscribePubSubHubbub.txt create mode 100644 lib/github/tests/ReplayData/Repository.testUpdateFile.txt create mode 100644 lib/github/tests/ReplayData/RepositoryKey.setUp.txt create mode 100644 lib/github/tests/ReplayData/RepositoryKey.testDelete.txt create mode 100644 lib/github/tests/ReplayData/RepositoryKey.testEdit.txt create mode 100644 lib/github/tests/ReplayData/RepositoryKey.testEditWithoutParameters.txt create mode 100644 lib/github/tests/ReplayData/Search.testGetPageOnSearchUsers.txt create mode 100644 lib/github/tests/ReplayData/Search.testPaginateSearchUsers.txt create mode 100644 lib/github/tests/ReplayData/Search.testSearchCode.txt create mode 100644 lib/github/tests/ReplayData/Search.testSearchIssues.txt create mode 100644 lib/github/tests/ReplayData/Search.testSearchRepos.txt create mode 100644 lib/github/tests/ReplayData/Search.testSearchUsers.txt create mode 100644 lib/github/tests/ReplayData/Search.testUrlquotingOfQualifiers.txt create mode 100644 lib/github/tests/ReplayData/Search.testUrlquotingOfQuery.txt create mode 100644 lib/github/tests/ReplayData/SpecificExceptions.testBadCredentials.txt create mode 100644 lib/github/tests/ReplayData/SpecificExceptions.testBadUserAgent.txt create mode 100644 lib/github/tests/ReplayData/SpecificExceptions.testRateLimitExceeded.txt create mode 100644 lib/github/tests/ReplayData/SpecificExceptions.testUnknownObject.txt create mode 100644 lib/github/tests/ReplayData/Status.testGetLastMessage.txt create mode 100644 lib/github/tests/ReplayData/Status.testGetMessages.txt create mode 100644 lib/github/tests/ReplayData/Status.testGetStatus.txt create mode 100644 lib/github/tests/ReplayData/Tag.setUp.txt create mode 100644 lib/github/tests/ReplayData/Team.setUp.txt create mode 100644 lib/github/tests/ReplayData/Team.testDelete.txt create mode 100644 lib/github/tests/ReplayData/Team.testEditWithAllArguments.txt create mode 100644 lib/github/tests/ReplayData/Team.testEditWithoutArguments.txt create mode 100644 lib/github/tests/ReplayData/Team.testMembers.txt create mode 100644 lib/github/tests/ReplayData/Team.testRepoPermission.txt create mode 100644 lib/github/tests/ReplayData/Team.testRepos.txt create mode 100644 lib/github/tests/ReplayData/UserKey.setUp.txt create mode 100644 lib/github/tests/ReplayData/UserKey.testDelete.txt create mode 100644 lib/github/tests/ReplayData/UserKey.testEditWithAllArguments.txt create mode 100644 lib/github/tests/ReplayData/UserKey.testEditWithoutArguments.txt create mode 100644 lib/github/tests/Repository.py create mode 100644 lib/github/tests/RepositoryKey.py create mode 100644 lib/github/tests/Search.py create mode 100644 lib/github/tests/Status.py create mode 100644 lib/github/tests/Tag.py create mode 100644 lib/github/tests/Team.py create mode 100644 lib/github/tests/UserKey.py create mode 100644 lib/github/tests/__init__.py create mode 100644 lib/github/tests/__main__.py diff --git a/lib/github/AuthenticatedUser.py b/lib/github/AuthenticatedUser.py index 27cef266c0..ad1523c425 100644 --- a/lib/github/AuthenticatedUser.py +++ b/lib/github/AuthenticatedUser.py @@ -8,7 +8,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -45,8 +46,13 @@ class AuthenticatedUser(github.GithubObject.CompletableGithubObject): """ This class represents AuthenticatedUsers as returned for example by http://developer.github.com/v3/todo + + An AuthenticatedUser object can be created by calling ``get_user()`` on a Github object. """ + def __repr__(self): + return self.get__repr__({"login": self._login.value}) + @property def avatar_url(self): """ diff --git a/lib/github/Authorization.py b/lib/github/Authorization.py index b1ff7314d4..11b4d9b4d2 100644 --- a/lib/github/Authorization.py +++ b/lib/github/Authorization.py @@ -7,7 +7,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -34,6 +35,9 @@ class Authorization(github.GithubObject.CompletableGithubObject): This class represents Authorizations as returned for example by http://developer.github.com/v3/todo """ + def __repr__(self): + return self.get__repr__({"scopes": self._scopes.value}) + @property def app(self): """ diff --git a/lib/github/AuthorizationApplication.py b/lib/github/AuthorizationApplication.py index a072798b44..63445fbf20 100644 --- a/lib/github/AuthorizationApplication.py +++ b/lib/github/AuthorizationApplication.py @@ -7,7 +7,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -32,6 +33,9 @@ class AuthorizationApplication(github.GithubObject.CompletableGithubObject): This class represents AuthorizationApplications as returned for example by http://developer.github.com/v3/todo """ + def __repr__(self): + return self.get__repr__({"name": self._name.value}) + @property def name(self): """ diff --git a/lib/github/Branch.py b/lib/github/Branch.py index 88ffb7b328..effc5bf699 100644 --- a/lib/github/Branch.py +++ b/lib/github/Branch.py @@ -8,7 +8,8 @@ # Copyright 2013 Vincent Jacques # # Copyright 2013 martinqt # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -35,6 +36,9 @@ class Branch(github.GithubObject.NonCompletableGithubObject): This class represents Branchs. The reference can be found here http://developer.github.com/v3/repos/#list-branches """ + def __repr__(self): + return self.get__repr__({"name": self._name.value}) + @property def commit(self): """ @@ -49,6 +53,27 @@ def name(self): """ return self._name.value + @property + def protected(self): + """ + :type: bool + """ + return self._protected.value + + @property + def enforcement_level(self): + """ + :type: string + """ + return self._enforcement_level.value + + @property + def contexts(self): + """ + :type: list of strings + """ + return self._contexts.value + def _initAttributes(self): self._commit = github.GithubObject.NotSet self._name = github.GithubObject.NotSet @@ -58,3 +83,7 @@ def _useAttributes(self, attributes): self._commit = self._makeClassAttribute(github.Commit.Commit, attributes["commit"]) if "name" in attributes: # pragma no branch self._name = self._makeStringAttribute(attributes["name"]) + if "protection" in attributes: + self._protected = self._makeBoolAttribute(attributes["protection"]["enabled"]) + self._enforcement_level = self._makeStringAttribute(attributes["protection"]["required_status_checks"]["enforcement_level"]) + self._contexts = self._makeListOfStringsAttribute(attributes["protection"]["required_status_checks"]["contexts"]) diff --git a/lib/github/Commit.py b/lib/github/Commit.py index a53b5e4478..b84dfab705 100644 --- a/lib/github/Commit.py +++ b/lib/github/Commit.py @@ -8,7 +8,8 @@ # Copyright 2013 Vincent Jacques # # Copyright 2013 martinqt # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -31,6 +32,7 @@ import github.GitCommit import github.NamedUser import github.CommitStatus +import github.CommitCombinedStatus import github.File import github.CommitStats import github.CommitComment @@ -41,6 +43,9 @@ class Commit(github.GithubObject.CompletableGithubObject): This class represents Commits. The reference can be found here http://developer.github.com/v3/git/commits/ """ + def __repr__(self): + return self.get__repr__({"sha": self._sha.value}) + @property def author(self): """ @@ -203,6 +208,17 @@ def get_statuses(self): None ) + def get_combined_status(self): + """ + :calls: `GET /repos/:owner/:repo/commits/:ref/status/ `_ + :rtype: :class:`github.CommitCombinedStatus.CommitCombinedStatus` + """ + headers, data = self._requester.requestJsonAndCheck( + "GET", + self.url + "/status" + ) + return github.CommitCombinedStatus.CommitCombinedStatus(self._requester, headers, data, completed=True) + @property def _identity(self): return self.sha diff --git a/lib/github/CommitCombinedStatus.py b/lib/github/CommitCombinedStatus.py new file mode 100644 index 0000000000..c2ef2967a4 --- /dev/null +++ b/lib/github/CommitCombinedStatus.py @@ -0,0 +1,114 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import github.GithubObject + +import github.CommitStatus +import github.Repository + + +class CommitCombinedStatus(github.GithubObject.NonCompletableGithubObject): + """ + This class represents CommitCombinedStatus as returned for example by https://developer.github.com/v3/repos/statuses/ + """ + + def __repr__(self): + return self.get__repr__({"sha": self._sha.value, "state": self._state.value}) + + @property + def state(self): + """ + :type: string + """ + return self._state.value + + @property + def sha(self): + """ + :type: string + """ + return self._sha.value + + @property + def total_count(self): + """ + :type: integer + """ + return self._total_count.value + + @property + def commit_url(self): + """ + :type: string + """ + return self._commit_url.value + + @property + def url(self): + """ + :type: string + """ + return self._url.value + + @property + def repository(self): + """ + :type: :class:`github.Repository.Repository` + """ + return self._repository.value + + @property + def statuses(self): + """ + :type: list of :class:`CommitStatus` + """ + return self._statuses.value + + def _initAttributes(self): + self._state = github.GithubObject.NotSet + self._sha = github.GithubObject.NotSet + self._total_count = github.GithubObject.NotSet + self._commit_url = github.GithubObject.NotSet + self._url = github.GithubObject.NotSet + self._repository = github.GithubObject.NotSet + self._statuses = github.GithubObject.NotSet + + def _useAttributes(self, attributes): + if "state" in attributes: # pragma no branch + self._state = self._makeStringAttribute(attributes["state"]) + if "sha" in attributes: # pragma no branch + self._sha = self._makeStringAttribute(attributes["sha"]) + if "total_count" in attributes: # pragma no branch + self._total_count = self._makeIntAttribute(attributes["total_count"]) + if "commit_url" in attributes: # pragma no branch + self._commit_url = self._makeStringAttribute(attributes["commit_url"]) + if "url" in attributes: # pragma no branch + self._url = self._makeStringAttribute(attributes["url"]) + if "repository" in attributes: # pragma no branch + self._repository = self._makeClassAttribute(github.Repository.Repository, attributes["repository"]) + if "statuses" in attributes: # pragma no branch + self._statuses = self._makeListOfClassesAttribute(github.CommitStatus.CommitStatus, attributes["statuses"]) diff --git a/lib/github/CommitComment.py b/lib/github/CommitComment.py index b5f4577d8f..c338100efe 100644 --- a/lib/github/CommitComment.py +++ b/lib/github/CommitComment.py @@ -7,7 +7,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -34,6 +35,9 @@ class CommitComment(github.GithubObject.CompletableGithubObject): This class represents CommitComments as returned for example by http://developer.github.com/v3/todo """ + def __repr__(self): + return self.get__repr__({"id": self._id.value, "user": self.user}) + @property def body(self): """ diff --git a/lib/github/CommitStats.py b/lib/github/CommitStats.py index af6ecba36d..d8a2a3cefd 100644 --- a/lib/github/CommitStats.py +++ b/lib/github/CommitStats.py @@ -7,7 +7,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # diff --git a/lib/github/CommitStatus.py b/lib/github/CommitStatus.py index d6074ea854..ff43d695f5 100644 --- a/lib/github/CommitStatus.py +++ b/lib/github/CommitStatus.py @@ -7,7 +7,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -34,6 +35,13 @@ class CommitStatus(github.GithubObject.NonCompletableGithubObject): This class represents CommitStatuss as returned for example by https://developer.github.com/v3/repos/statuses/ """ + def __repr__(self): + return self.get__repr__({ + "id": self._id.value, + "state": self._state.value, + "context": self._context.value + }) + @property def created_at(self): """ @@ -69,6 +77,13 @@ def state(self): """ return self._state.value + @property + def context(self): + """ + :type: string + """ + return self._context.value + @property def target_url(self): """ @@ -96,6 +111,7 @@ def _initAttributes(self): self._description = github.GithubObject.NotSet self._id = github.GithubObject.NotSet self._state = github.GithubObject.NotSet + self._context = github.GithubObject.NotSet self._target_url = github.GithubObject.NotSet self._updated_at = github.GithubObject.NotSet self._url = github.GithubObject.NotSet @@ -111,6 +127,8 @@ def _useAttributes(self, attributes): self._id = self._makeIntAttribute(attributes["id"]) if "state" in attributes: # pragma no branch self._state = self._makeStringAttribute(attributes["state"]) + if "context" in attributes: # pragma no branch + self._context = self._makeStringAttribute(attributes["context"]) if "target_url" in attributes: # pragma no branch self._target_url = self._makeStringAttribute(attributes["target_url"]) if "updated_at" in attributes: # pragma no branch diff --git a/lib/github/Comparison.py b/lib/github/Comparison.py index 9111a25baf..bee42c73b3 100644 --- a/lib/github/Comparison.py +++ b/lib/github/Comparison.py @@ -7,7 +7,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # diff --git a/lib/github/Consts.py b/lib/github/Consts.py index 62a1064503..1908897398 100644 --- a/lib/github/Consts.py +++ b/lib/github/Consts.py @@ -5,7 +5,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # diff --git a/lib/github/ContentFile.py b/lib/github/ContentFile.py index e2b0993bb1..2f69946be7 100644 --- a/lib/github/ContentFile.py +++ b/lib/github/ContentFile.py @@ -7,7 +7,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -39,6 +40,9 @@ class ContentFile(github.GithubObject.CompletableGithubObject): This class represents ContentFiles as returned for example by http://developer.github.com/v3/todo """ + def __repr__(self): + return self.get__repr__({"path": self._path.value}) + @property def content(self): """ diff --git a/lib/github/Download.py b/lib/github/Download.py index af73f73ee2..49acc48973 100644 --- a/lib/github/Download.py +++ b/lib/github/Download.py @@ -7,7 +7,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -32,6 +33,9 @@ class Download(github.GithubObject.CompletableGithubObject): This class represents Downloads as returned for example by http://developer.github.com/v3/todo """ + def __repr__(self): + return self.get__repr__({"id": self._id.value}) + @property def accesskeyid(self): """ diff --git a/lib/github/Event.py b/lib/github/Event.py index 87af16236a..a769a230e2 100644 --- a/lib/github/Event.py +++ b/lib/github/Event.py @@ -8,7 +8,8 @@ # Copyright 2013 Vincent Jacques # # Copyright 2013 martinqt # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -37,6 +38,9 @@ class Event(github.GithubObject.NonCompletableGithubObject): This class represents Events. The reference can be found here http://developer.github.com/v3/activity/events/ """ + def __repr__(self): + return self.get__repr__({"id": self._id.value, "type": self._type.value}) + @property def actor(self): """ diff --git a/lib/github/File.py b/lib/github/File.py index d411b3b547..d03efd3ba9 100644 --- a/lib/github/File.py +++ b/lib/github/File.py @@ -7,7 +7,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -32,6 +33,9 @@ class File(github.GithubObject.NonCompletableGithubObject): This class represents Files as returned for example by http://developer.github.com/v3/todo """ + def __repr__(self): + return self.get__repr__({"sha": self._sha.value, "filename": self._filename.value}) + @property def additions(self): """ @@ -81,6 +85,13 @@ def patch(self): """ return self._patch.value + @property + def previous_filename(self): + """ + :type: string + """ + return self._previous_filename.value + @property def raw_url(self): """ @@ -110,6 +121,7 @@ def _initAttributes(self): self._deletions = github.GithubObject.NotSet self._filename = github.GithubObject.NotSet self._patch = github.GithubObject.NotSet + self._previous_filename = github.GithubObject.NotSet self._raw_url = github.GithubObject.NotSet self._sha = github.GithubObject.NotSet self._status = github.GithubObject.NotSet @@ -129,6 +141,8 @@ def _useAttributes(self, attributes): self._filename = self._makeStringAttribute(attributes["filename"]) if "patch" in attributes: # pragma no branch self._patch = self._makeStringAttribute(attributes["patch"]) + if "previous_filename" in attributes: # pragma no branch + self._previous_filename = self._makeStringAttribute(attributes["previous_filename"]) if "raw_url" in attributes: # pragma no branch self._raw_url = self._makeStringAttribute(attributes["raw_url"]) if "sha" in attributes: # pragma no branch diff --git a/lib/github/Gist.py b/lib/github/Gist.py index f93b798980..8d75e1e10e 100644 --- a/lib/github/Gist.py +++ b/lib/github/Gist.py @@ -8,7 +8,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -39,6 +40,9 @@ class Gist(github.GithubObject.CompletableGithubObject): This class represents Gists as returned for example by http://developer.github.com/v3/todo """ + def __repr__(self): + return self.get__repr__({"id": self._id.value}) + @property def comments(self): """ diff --git a/lib/github/GistComment.py b/lib/github/GistComment.py index 2e07b7a39b..be1d08f743 100644 --- a/lib/github/GistComment.py +++ b/lib/github/GistComment.py @@ -7,7 +7,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -34,6 +35,9 @@ class GistComment(github.GithubObject.CompletableGithubObject): This class represents GistComments as returned for example by http://developer.github.com/v3/todo """ + def __repr__(self): + return self.get__repr__({"id": self._id.value, "user": self._user.value}) + @property def body(self): """ diff --git a/lib/github/GistFile.py b/lib/github/GistFile.py index a90df90f0b..5778acfcef 100644 --- a/lib/github/GistFile.py +++ b/lib/github/GistFile.py @@ -7,7 +7,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -32,6 +33,9 @@ class GistFile(github.GithubObject.NonCompletableGithubObject): This class represents GistFiles as returned for example by http://developer.github.com/v3/todo """ + def __repr__(self): + return self.get__repr__({"filename": self._filename.value}) + @property def content(self): """ diff --git a/lib/github/GistHistoryState.py b/lib/github/GistHistoryState.py index 3fcaf48ab3..137462a679 100644 --- a/lib/github/GistHistoryState.py +++ b/lib/github/GistHistoryState.py @@ -7,7 +7,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # diff --git a/lib/github/GitAuthor.py b/lib/github/GitAuthor.py index 552f19ef30..324dcc14fb 100644 --- a/lib/github/GitAuthor.py +++ b/lib/github/GitAuthor.py @@ -7,7 +7,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -32,6 +33,9 @@ class GitAuthor(github.GithubObject.NonCompletableGithubObject): This class represents GitAuthors as returned for example by http://developer.github.com/v3/todo """ + def __repr__(self): + return self.get__repr__({"name": self._name.value}) + @property def date(self): """ diff --git a/lib/github/GitBlob.py b/lib/github/GitBlob.py index 9c59b94bfd..3de1c6fb79 100644 --- a/lib/github/GitBlob.py +++ b/lib/github/GitBlob.py @@ -7,7 +7,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -32,6 +33,9 @@ class GitBlob(github.GithubObject.CompletableGithubObject): This class represents GitBlobs as returned for example by http://developer.github.com/v3/todo """ + def __repr__(self): + return self.get__repr__({"sha": self._sha.value}) + @property def content(self): """ diff --git a/lib/github/GitCommit.py b/lib/github/GitCommit.py index 3467eab5a5..9d43d51b64 100644 --- a/lib/github/GitCommit.py +++ b/lib/github/GitCommit.py @@ -7,7 +7,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -35,6 +36,9 @@ class GitCommit(github.GithubObject.CompletableGithubObject): This class represents GitCommits as returned for example by http://developer.github.com/v3/todo """ + def __repr__(self): + return self.get__repr__({"sha": self._sha.value}) + @property def author(self): """ diff --git a/lib/github/GitObject.py b/lib/github/GitObject.py index 1a169952bc..0850061be1 100644 --- a/lib/github/GitObject.py +++ b/lib/github/GitObject.py @@ -7,7 +7,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -32,6 +33,9 @@ class GitObject(github.GithubObject.NonCompletableGithubObject): This class represents GitObjects as returned for example by http://developer.github.com/v3/todo """ + def __repr__(self): + return self.get__repr__({"sha": self._sha.value}) + @property def sha(self): """ diff --git a/lib/github/GitRef.py b/lib/github/GitRef.py index 0938fdb12d..417982fe71 100644 --- a/lib/github/GitRef.py +++ b/lib/github/GitRef.py @@ -7,7 +7,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -34,6 +35,9 @@ class GitRef(github.GithubObject.CompletableGithubObject): This class represents GitRefs as returned for example by http://developer.github.com/v3/todo """ + def __repr__(self): + return self.get__repr__({"ref": self._ref.value}) + @property def object(self): """ @@ -89,6 +93,22 @@ def edit(self, sha, force=github.GithubObject.NotSet): ) self._useAttributes(data) + def get_statuses(self): + """ + https://developer.github.com/v3/repos/statuses/#list-statuses-for-a-specific-ref + :calls: `GET /repos/:owner/:repo/commits/:ref/statuses` + :return: + """ + pass + + def get_status(self): + """ + https://developer.github.com/v3/repos/statuses/#get-the-combined-status-for-a-specific-ref + :calls: `GET /repos/:owner/:repo/commits/:ref/status` + :return: + """ + pass + def _initAttributes(self): self._object = github.GithubObject.NotSet self._ref = github.GithubObject.NotSet diff --git a/lib/github/GitRelease.py b/lib/github/GitRelease.py index 9e068020a0..d36bc79ccb 100644 --- a/lib/github/GitRelease.py +++ b/lib/github/GitRelease.py @@ -4,7 +4,8 @@ # # # Copyright 2015 Ed Holland # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -30,6 +31,9 @@ class GitRelease(github.GithubObject.CompletableGithubObject): This class represents GitRelease as returned for example by https://developer.github.com/v3/repos/releases """ + def __repr__(self): + return self.get__repr__({"title": self._title.value}) + @property def body(self): """ diff --git a/lib/github/GitTag.py b/lib/github/GitTag.py index 554dd2a746..347fd2474c 100644 --- a/lib/github/GitTag.py +++ b/lib/github/GitTag.py @@ -7,7 +7,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -35,6 +36,9 @@ class GitTag(github.GithubObject.CompletableGithubObject): This class represents GitTags as returned for example by http://developer.github.com/v3/todo """ + def __repr__(self): + return self.get__repr__({"sha": self._sha.value, "tag": self._tag.value}) + @property def message(self): """ diff --git a/lib/github/GitTree.py b/lib/github/GitTree.py index 9c78986dda..8012bb77cf 100644 --- a/lib/github/GitTree.py +++ b/lib/github/GitTree.py @@ -7,7 +7,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -34,6 +35,9 @@ class GitTree(github.GithubObject.CompletableGithubObject): This class represents GitTrees as returned for example by http://developer.github.com/v3/todo """ + def __repr__(self): + return self.get__repr__({"sha": self._sha.value}) + @property def sha(self): """ diff --git a/lib/github/GitTreeElement.py b/lib/github/GitTreeElement.py index a9b4615de7..907fb58ff0 100644 --- a/lib/github/GitTreeElement.py +++ b/lib/github/GitTreeElement.py @@ -7,7 +7,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -32,6 +33,9 @@ class GitTreeElement(github.GithubObject.NonCompletableGithubObject): This class represents GitTreeElements as returned for example by http://developer.github.com/v3/todo """ + def __repr__(self): + return self.get__repr__({"sha": self._sha.value, "path": self._path.value}) + @property def mode(self): """ diff --git a/lib/github/GithubException.py b/lib/github/GithubException.py index 594f201315..3b724f1fa6 100644 --- a/lib/github/GithubException.py +++ b/lib/github/GithubException.py @@ -7,7 +7,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -36,6 +37,7 @@ def __init__(self, status, data): Exception.__init__(self) self.__status = status self.__data = data + self.args = [status, data] @property def status(self): diff --git a/lib/github/GithubObject.py b/lib/github/GithubObject.py index 35e4b5b57d..82241ef343 100644 --- a/lib/github/GithubObject.py +++ b/lib/github/GithubObject.py @@ -7,7 +7,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -23,12 +24,15 @@ # along with PyGithub. If not, see . # # # # ############################################################################## - +import sys import datetime +from operator import itemgetter import GithubException import Consts +atLeastPython3 = sys.hexversion >= 0x03000000 + class _NotSetType: def __repr__(self): @@ -206,6 +210,22 @@ def last_modified(self): ''' return self._headers.get(Consts.RES_LAST_MODIFED) + def get__repr__(self, params): + """ + Converts the object to a nicely printable string. + """ + def format_params(params): + if atLeastPython3: + items = params.items() + else: + items = list(params.items()) + for k, v in sorted(items, key=itemgetter(0), reverse=True): + yield '{k}="{v}"'.format(k=k, v=v) if isinstance(v, (str, unicode)) else '{k}={v}'.format(k=k, v=v) + return '{class_name}({params})'.format( + class_name=self.__class__.__name__, + params=", ".join(list(format_params(params))) + ) + class NonCompletableGithubObject(GithubObject): def _completeIfNeeded(self): diff --git a/lib/github/GitignoreTemplate.py b/lib/github/GitignoreTemplate.py index 75b96b1bdc..55353dc354 100644 --- a/lib/github/GitignoreTemplate.py +++ b/lib/github/GitignoreTemplate.py @@ -6,7 +6,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -31,6 +32,9 @@ class GitignoreTemplate(github.GithubObject.NonCompletableGithubObject): This class represents GitignoreTemplates as returned for example by http://developer.github.com/v3/todo """ + def __repr__(self): + return self.get__repr__({"name": self._name.value}) + @property def source(self): """ diff --git a/lib/github/Hook.py b/lib/github/Hook.py index b212b646d5..8e09005924 100644 --- a/lib/github/Hook.py +++ b/lib/github/Hook.py @@ -7,7 +7,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -34,6 +35,9 @@ class Hook(github.GithubObject.CompletableGithubObject): This class represents Hooks as returned for example by http://developer.github.com/v3/repos/hooks """ + def __repr__(self): + return self.get__repr__({"id": self._id.value, "url": self._url.value}) + @property def active(self): """ diff --git a/lib/github/HookDescription.py b/lib/github/HookDescription.py index 749aed1540..d1058307d6 100644 --- a/lib/github/HookDescription.py +++ b/lib/github/HookDescription.py @@ -7,7 +7,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -32,6 +33,9 @@ class HookDescription(github.GithubObject.NonCompletableGithubObject): This class represents HookDescriptions as returned for example by http://developer.github.com/v3/todo """ + def __repr__(self): + return self.get__repr__({"name": self._name.value}) + @property def events(self): """ diff --git a/lib/github/HookResponse.py b/lib/github/HookResponse.py index e0945735f4..bce05e398a 100644 --- a/lib/github/HookResponse.py +++ b/lib/github/HookResponse.py @@ -7,7 +7,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -32,6 +33,9 @@ class HookResponse(github.GithubObject.NonCompletableGithubObject): This class represents HookResponses as returned for example by http://developer.github.com/v3/todo """ + def __repr__(self): + return self.get__repr__({"status": self._status.value}) + @property def code(self): """ diff --git a/lib/github/InputFileContent.py b/lib/github/InputFileContent.py index d16556f104..a133eb1e38 100644 --- a/lib/github/InputFileContent.py +++ b/lib/github/InputFileContent.py @@ -6,7 +6,8 @@ # Copyright 2012 Zearin # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # diff --git a/lib/github/InputGitAuthor.py b/lib/github/InputGitAuthor.py index 4567f4177e..f7a9ff142b 100644 --- a/lib/github/InputGitAuthor.py +++ b/lib/github/InputGitAuthor.py @@ -6,7 +6,8 @@ # Copyright 2012 Zearin # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -45,6 +46,9 @@ def __init__(self, name, email, date=github.GithubObject.NotSet): self.__email = email self.__date = date + def __repr__(self): + return 'InputGitAuthor(name="{}")'.format(self.__name) + @property def _identity(self): identity = { diff --git a/lib/github/InputGitTreeElement.py b/lib/github/InputGitTreeElement.py index 94685c1350..ee55452c62 100644 --- a/lib/github/InputGitTreeElement.py +++ b/lib/github/InputGitTreeElement.py @@ -6,7 +6,8 @@ # Copyright 2012 Zearin # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # diff --git a/lib/github/Issue.py b/lib/github/Issue.py index f88e9519b8..4239dd6f58 100644 --- a/lib/github/Issue.py +++ b/lib/github/Issue.py @@ -10,7 +10,8 @@ # Copyright 2013 Stuart Glaser # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -28,6 +29,7 @@ # ############################################################################## import urllib +import datetime import github.GithubObject import github.PaginatedList @@ -45,6 +47,9 @@ class Issue(github.GithubObject.CompletableGithubObject): This class represents Issues as returned for example by http://developer.github.com/v3/todo """ + def __repr__(self): + return self.get__repr__({"number": self._number.value, "title": self._title.value}) + @property def assignee(self): """ @@ -258,12 +263,13 @@ def delete_labels(self): self.url + "/labels" ) - def edit(self, title=github.GithubObject.NotSet, body=github.GithubObject.NotSet, assignee=github.GithubObject.NotSet, state=github.GithubObject.NotSet, milestone=github.GithubObject.NotSet, labels=github.GithubObject.NotSet): + def edit(self, title=github.GithubObject.NotSet, body=github.GithubObject.NotSet, assignee=github.GithubObject.NotSet, state=github.GithubObject.NotSet, milestone=github.GithubObject.NotSet, labels=github.GithubObject.NotSet, assignees=github.GithubObject.NotSet): """ :calls: `PATCH /repos/:owner/:repo/issues/:number `_ :param title: string :param body: string :param assignee: string or :class:`github.NamedUser.NamedUser` or None + :param assignee: list of string :param state: string :param milestone: :class:`github.Milestone.Milestone` or None :param labels: list of string @@ -272,6 +278,7 @@ def edit(self, title=github.GithubObject.NotSet, body=github.GithubObject.NotSet assert title is github.GithubObject.NotSet or isinstance(title, (str, unicode)), title assert body is github.GithubObject.NotSet or isinstance(body, (str, unicode)), body assert assignee is github.GithubObject.NotSet or assignee is None or isinstance(assignee, github.NamedUser.NamedUser) or isinstance(assignee, (str, unicode)), assignee + assert assignees is github.GithubObject.NotSet or isinstance(assignees, list) assert state is github.GithubObject.NotSet or isinstance(state, (str, unicode)), state assert milestone is github.GithubObject.NotSet or milestone is None or isinstance(milestone, github.Milestone.Milestone), milestone assert labels is github.GithubObject.NotSet or all(isinstance(element, (str, unicode)) for element in labels), labels @@ -285,6 +292,8 @@ def edit(self, title=github.GithubObject.NotSet, body=github.GithubObject.NotSet post_parameters["assignee"] = assignee else: post_parameters["assignee"] = assignee._identity if assignee else '' + if assignees is not github.GithubObject.NotSet: + post_parameters["assignees"] = assignees if state is not github.GithubObject.NotSet: post_parameters["state"] = state if milestone is not github.GithubObject.NotSet: @@ -311,16 +320,21 @@ def get_comment(self, id): ) return github.IssueComment.IssueComment(self._requester, headers, data, completed=True) - def get_comments(self): + def get_comments(self, since=github.GithubObject.NotSet): """ :calls: `GET /repos/:owner/:repo/issues/:number/comments `_ + :param since: datetime.datetime format YYYY-MM-DDTHH:MM:SSZ :rtype: :class:`github.PaginatedList.PaginatedList` of :class:`github.IssueComment.IssueComment` """ + assert since is github.GithubObject.NotSet or isinstance(since, datetime.datetime), since + url_parameters = dict() + if since is not github.GithubObject.NotSet: + url_parameters["since"] = since.strftime("%Y-%m-%dT%H:%M:%SZ") return github.PaginatedList.PaginatedList( github.IssueComment.IssueComment, self._requester, self.url + "/comments", - None + url_parameters ) def get_events(self): diff --git a/lib/github/IssueComment.py b/lib/github/IssueComment.py index 0b0fc5a905..8593a8cd5b 100644 --- a/lib/github/IssueComment.py +++ b/lib/github/IssueComment.py @@ -8,7 +8,8 @@ # Copyright 2013 Michael Stead # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -35,6 +36,9 @@ class IssueComment(github.GithubObject.CompletableGithubObject): This class represents IssueComments as returned for example by http://developer.github.com/v3/todo """ + def __repr__(self): + return self.get__repr__({"id": self._id.value, "user": self._user.value}) + @property def body(self): """ diff --git a/lib/github/IssueEvent.py b/lib/github/IssueEvent.py index ea372978d9..d55cd35346 100644 --- a/lib/github/IssueEvent.py +++ b/lib/github/IssueEvent.py @@ -7,7 +7,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -35,6 +36,9 @@ class IssueEvent(github.GithubObject.CompletableGithubObject): This class represents IssueEvents as returned for example by http://developer.github.com/v3/todo """ + def __repr__(self): + return self.get__repr__({"id": self._id.value}) + @property def actor(self): """ diff --git a/lib/github/IssuePullRequest.py b/lib/github/IssuePullRequest.py index 6e5eec444f..18243d11db 100644 --- a/lib/github/IssuePullRequest.py +++ b/lib/github/IssuePullRequest.py @@ -7,7 +7,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # diff --git a/lib/github/Label.py b/lib/github/Label.py index 6fd413049e..56e6d083a9 100644 --- a/lib/github/Label.py +++ b/lib/github/Label.py @@ -8,7 +8,8 @@ # Copyright 2013 Vincent Jacques # # Copyright 2013 martinqt # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -35,6 +36,9 @@ class Label(github.GithubObject.CompletableGithubObject): This class represents Labels. The reference can be found here http://developer.github.com/v3/issues/labels/ """ + def __repr__(self): + return self.get__repr__({"name": self._name.value}) + @property def color(self): """ diff --git a/lib/github/Legacy.py b/lib/github/Legacy.py index 0cd5bc6c83..7c8a7995a8 100644 --- a/lib/github/Legacy.py +++ b/lib/github/Legacy.py @@ -8,7 +8,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # diff --git a/lib/github/MainClass.py b/lib/github/MainClass.py index f55be934c4..7a6eccd8b0 100644 --- a/lib/github/MainClass.py +++ b/lib/github/MainClass.py @@ -8,7 +8,8 @@ # Copyright 2013 Peter Golm # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # diff --git a/lib/github/Milestone.py b/lib/github/Milestone.py index 7875ebccd8..ebe59df14c 100644 --- a/lib/github/Milestone.py +++ b/lib/github/Milestone.py @@ -8,7 +8,8 @@ # Copyright 2013 Vincent Jacques # # Copyright 2013 martinqt # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -39,6 +40,9 @@ class Milestone(github.GithubObject.CompletableGithubObject): This class represents Milestones. The reference can be found here http://developer.github.com/v3/issues/milestones/ """ + def __repr__(self): + return self.get__repr__({"number": self._number.value}) + @property def closed_issues(self): """ diff --git a/lib/github/NamedUser.py b/lib/github/NamedUser.py index 1b41754658..2549e67500 100644 --- a/lib/github/NamedUser.py +++ b/lib/github/NamedUser.py @@ -8,7 +8,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -41,6 +42,9 @@ class NamedUser(github.GithubObject.CompletableGithubObject): This class represents NamedUsers as returned for example by http://developer.github.com/v3/todo """ + def __repr__(self): + return self.get__repr__({"login": self._login.value}) + @property def avatar_url(self): """ diff --git a/lib/github/Notification.py b/lib/github/Notification.py index 84533fbea1..b4b0205a9f 100644 --- a/lib/github/Notification.py +++ b/lib/github/Notification.py @@ -7,7 +7,8 @@ # Copyright 2013 Vincent Jacques # # Copyright 2013 martinqt # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -35,6 +36,9 @@ class Notification(github.GithubObject.CompletableGithubObject): This class represents Notifications. The reference can be found here http://developer.github.com/v3/activity/notifications/ """ + def __repr__(self): + return self.get__repr__({"id": self._id.value, "subject": self._subject.value}) + @property def id(self): """ diff --git a/lib/github/NotificationSubject.py b/lib/github/NotificationSubject.py index 62744a311b..c4289424ef 100644 --- a/lib/github/NotificationSubject.py +++ b/lib/github/NotificationSubject.py @@ -5,7 +5,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -30,6 +31,9 @@ class NotificationSubject(github.GithubObject.NonCompletableGithubObject): This class represents Subjects of Notifications as returned for example by http://developer.github.com/v3/activity/notifications/#list-your-notifications """ + def __repr__(self): + return self.get__repr__({"title": self._title.value}) + @property def title(self): """ diff --git a/lib/github/Organization.py b/lib/github/Organization.py index e043cac177..90cce0d990 100644 --- a/lib/github/Organization.py +++ b/lib/github/Organization.py @@ -9,7 +9,8 @@ # Copyright 2013 Vincent Jacques # # Copyright 2013 martinqt # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -43,6 +44,9 @@ class Organization(github.GithubObject.CompletableGithubObject): This class represents Organizations. The reference can be found here http://developer.github.com/v3/orgs/ """ + def __repr__(self): + return self.get__repr__({"id": self._id.value, "name": self._name.value}) + @property def avatar_url(self): """ diff --git a/lib/github/PaginatedList.py b/lib/github/PaginatedList.py index 12e1acc7e1..f85f9d19cb 100644 --- a/lib/github/PaginatedList.py +++ b/lib/github/PaginatedList.py @@ -9,7 +9,8 @@ # Copyright 2013 Vincent Jacques # # Copyright 2013 davidbrai # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # diff --git a/lib/github/Permissions.py b/lib/github/Permissions.py index 7fdff591a5..3bb6faf866 100644 --- a/lib/github/Permissions.py +++ b/lib/github/Permissions.py @@ -7,7 +7,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -32,6 +33,13 @@ class Permissions(github.GithubObject.NonCompletableGithubObject): This class represents Permissionss as returned for example by http://developer.github.com/v3/todo """ + def __repr__(self): + return self.get__repr__({ + "admin": self._admin.value, + "pull": self._pull.value, + "push": self._push.value + }) + @property def admin(self): """ diff --git a/lib/github/Plan.py b/lib/github/Plan.py index 7a3781dedc..0b6473ae66 100644 --- a/lib/github/Plan.py +++ b/lib/github/Plan.py @@ -7,7 +7,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -32,6 +33,9 @@ class Plan(github.GithubObject.NonCompletableGithubObject): This class represents Plans as returned for example by http://developer.github.com/v3/todo """ + def __repr__(self): + return self.get__repr__({"name": self._name.value}) + @property def collaborators(self): """ diff --git a/lib/github/PullRequest.py b/lib/github/PullRequest.py index ffd528845e..1e7b3c8337 100644 --- a/lib/github/PullRequest.py +++ b/lib/github/PullRequest.py @@ -9,7 +9,8 @@ # Copyright 2013 Vincent Jacques # # Copyright 2013 martinqt # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -43,6 +44,9 @@ class PullRequest(github.GithubObject.CompletableGithubObject): This class represents PullRequests. The reference can be found here http://developer.github.com/v3/pulls/ """ + def __repr__(self): + return self.get__repr__({"number": self._number.value, "title": self._title.value}) + @property def additions(self): """ diff --git a/lib/github/PullRequestComment.py b/lib/github/PullRequestComment.py index 4169afa271..1decabad9b 100644 --- a/lib/github/PullRequestComment.py +++ b/lib/github/PullRequestComment.py @@ -9,7 +9,8 @@ # Copyright 2013 Vincent Jacques # # Copyright 2013 martinqt # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -36,6 +37,9 @@ class PullRequestComment(github.GithubObject.CompletableGithubObject): This class represents PullRequestComments. The reference can be found here http://developer.github.com/v3/pulls/comments/ """ + def __repr__(self): + return self.get__repr__({"id": self._id.value, "user": self._user.value}) + @property def body(self): """ diff --git a/lib/github/PullRequestMergeStatus.py b/lib/github/PullRequestMergeStatus.py index 682472c588..a59adfa9c5 100644 --- a/lib/github/PullRequestMergeStatus.py +++ b/lib/github/PullRequestMergeStatus.py @@ -8,7 +8,8 @@ # Copyright 2013 Vincent Jacques # # Copyright 2013 martinqt # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -33,6 +34,9 @@ class PullRequestMergeStatus(github.GithubObject.NonCompletableGithubObject): This class represents PullRequestMergeStatuss. The reference can be found here http://developer.github.com/v3/pulls/#get-if-a-pull-request-has-been-merged """ + def __repr__(self): + return self.get__repr__({"sha": self._sha.value, "merged": self._merged.value}) + @property def merged(self): """ diff --git a/lib/github/PullRequestPart.py b/lib/github/PullRequestPart.py index d05948926b..8f03d6f101 100644 --- a/lib/github/PullRequestPart.py +++ b/lib/github/PullRequestPart.py @@ -7,7 +7,8 @@ # Copyright 2013 AKFish # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -35,6 +36,9 @@ class PullRequestPart(github.GithubObject.NonCompletableGithubObject): This class represents PullRequestParts as returned for example by http://developer.github.com/v3/todo """ + def __repr__(self): + return self.get__repr__({"sha": self._sha.value}) + @property def label(self): """ diff --git a/lib/github/Rate.py b/lib/github/Rate.py index 60f2f2b3a4..5c7e4f5d14 100644 --- a/lib/github/Rate.py +++ b/lib/github/Rate.py @@ -4,7 +4,8 @@ # # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -30,6 +31,9 @@ class Rate(github.GithubObject.NonCompletableGithubObject): This class represents rate limits as defined in http://developer.github.com/v3/rate_limit """ + def __repr__(self): + return self.get__repr__({"limit": self._limit.value, "remaining": self._remaining.value}) + @property def limit(self): """ diff --git a/lib/github/RateLimit.py b/lib/github/RateLimit.py index f0cffc65c1..9ff0f08cd8 100644 --- a/lib/github/RateLimit.py +++ b/lib/github/RateLimit.py @@ -4,7 +4,8 @@ # # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -30,6 +31,9 @@ class RateLimit(github.GithubObject.NonCompletableGithubObject): This class represents rate limits as defined in http://developer.github.com/v3/rate_limit """ + def __repr__(self): + return self.get__repr__({"rate": self._rate.value}) + @property def rate(self): """ diff --git a/lib/github/Repository.py b/lib/github/Repository.py index 64c96e3eab..5678f0b9d7 100644 --- a/lib/github/Repository.py +++ b/lib/github/Repository.py @@ -13,7 +13,8 @@ # Copyright 2013 martinqt # # Copyright 2015 Jannis Gebauer # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -29,9 +30,10 @@ # along with PyGithub. If not, see . # # # # ############################################################################## - +import sys import urllib import datetime +from base64 import b64encode import github.GithubObject import github.PaginatedList @@ -70,12 +72,17 @@ import github.StatsPunchCard import github.Stargazer +atLeastPython26 = sys.hexversion >= 0x02060000 +atLeastPython3 = sys.hexversion >= 0x03000000 class Repository(github.GithubObject.CompletableGithubObject): """ - This class represents Repositorys. The reference can be found here http://developer.github.com/v3/repos/ + This class represents Repositories. The reference can be found here http://developer.github.com/v3/repos/ """ + def __repr__(self): + return self.get__repr__({"full_name": self._full_name.value}) + @property def archive_url(self): """ @@ -863,7 +870,7 @@ def create_issue(self, title, body=github.GithubObject.NotSet, assignee=github.G assert body is github.GithubObject.NotSet or isinstance(body, (str, unicode)), body assert assignee is github.GithubObject.NotSet or isinstance(assignee, github.NamedUser.NamedUser) or isinstance(assignee, (str, unicode)), assignee assert milestone is github.GithubObject.NotSet or isinstance(milestone, github.Milestone.Milestone), milestone - assert labels is github.GithubObject.NotSet or all(isinstance(element, github.Label.Label) or isinstance(element, str) for element in labels), labels + assert labels is github.GithubObject.NotSet or all(isinstance(element, github.Label.Label) or isinstance(element, (str, unicode)) for element in labels), labels post_parameters = { "title": title, @@ -1090,6 +1097,20 @@ def get_branch(self, branch): ) return github.Branch.Branch(self._requester, headers, data, completed=True) + def get_protected_branch(self, branch): + """ + :calls: `GET /repos/:owner/:repo/branches/:branch `_ + :param branch: string + :rtype: :class:`github.Branch.Branch` + """ + assert isinstance(branch, (str, unicode)), branch + headers, data = self._requester.requestJsonAndCheck( + "GET", + self.url + "/branches/" + branch, + headers={'Accept': 'application/vnd.github.loki-preview+json'} + ) + return github.Branch.Branch(self._requester, headers, data, completed=True) + def get_branches(self): """ :calls: `GET /repos/:owner/:repo/branches `_ @@ -1214,8 +1235,163 @@ def get_file_contents(self, path, ref=github.GithubObject.NotSet): self.url + "/contents" + path, parameters=url_parameters ) + if isinstance(data, list): + return [ + github.ContentFile.ContentFile(self._requester, headers, item, completed=False) + for item in data + ] return github.ContentFile.ContentFile(self._requester, headers, data, completed=True) + def create_file(self, path, message, content, + branch=github.GithubObject.NotSet, + committer=github.GithubObject.NotSet, + author=github.GithubObject.NotSet): + """Create a file in this repository. + :calls: `PUT /repos/:owner/:repo/contents/:path `_ + :param path: string, (required), path of the file in the repository + :param message: string, (required), commit message + :param content: string, (required), the actual data in the file + :param branch: string, (optional), branch to create the commit on. Defaults to the default branch of the repository + :param committer: dict, (optional), if no information is given the authenticated user's information will be used. You must specify both a name and email. + :param author: dict, (optional), if omitted this will be filled in with committer information. If passed, you must specify both a name and email. + :rtype: { + 'content': :class:`ContentFile `:, + 'commit': :class:`Commit `} + """ + assert isinstance(path, (str, unicode)), \ + 'path must be str/unicode object' + assert isinstance(message, (str, unicode)), \ + 'message must be str/unicode object' + assert isinstance(content, (str, unicode)), \ + 'content must be a str/unicode object' + assert branch is github.GithubObject.NotSet \ + or isinstance(branch, (str, unicode)), \ + 'branch must be a str/unicode object' + assert author is github.GithubObject.NotSet \ + or isinstance(author, github.InputGitAuthor), \ + 'author must be a github.InputGitAuthor object' + assert committer is github.GithubObject.NotSet \ + or isinstance(committer, github.InputGitAuthor), \ + 'committer must be a github.InputGitAuthor object' + + if atLeastPython3: + content = b64encode(content.encode('utf-8')).decode('utf-8') + else: + if isinstance(content, unicode): + content = content.encode('utf-8') + content = b64encode(content) + put_parameters = {'message': message, 'content': content} + + if branch is not github.GithubObject.NotSet: + put_parameters['branch'] = branch + if author is not github.GithubObject.NotSet: + put_parameters["author"] = author._identity + if committer is not github.GithubObject.NotSet: + put_parameters["committer"] = committer._identity + + headers, data = self._requester.requestJsonAndCheck( + "PUT", + self.url + "/contents" + path, + input=put_parameters + ) + + return {'content': github.ContentFile.ContentFile(self._requester, headers, data["content"], completed=False), + 'commit': github.Commit.Commit(self._requester, headers, data["commit"], completed=True)} + + def update_file(self, path, message, content, sha, + branch=github.GithubObject.NotSet, + committer=github.GithubObject.NotSet, + author=github.GithubObject.NotSet): + """This method updates a file in a repository + :calls: `PUT /repos/:owner/:repo/contents/:path `_ + :param path: string, Required. The content path. + :param message: string, Required. The commit message. + :param content: string, Required. The updated file content, Base64 encoded. + :param sha: string, Required. The blob SHA of the file being replaced. + :param branch: string. The branch name. Default: the repository’s default branch (usually master) + :rtype: { + 'content': :class:`ContentFile `:, + 'commit': :class:`Commit `} + """ + assert isinstance(path, (str, unicode)), \ + 'path must be str/unicode object' + assert isinstance(message, (str, unicode)), \ + 'message must be str/unicode object' + assert isinstance(content, (str, unicode)), \ + 'content must be a str/unicode object' + assert isinstance(sha, (str, unicode)), \ + 'sha must be a str/unicode object' + assert branch is github.GithubObject.NotSet \ + or isinstance(branch, (str, unicode)), \ + 'branch must be a str/unicode object' + assert author is github.GithubObject.NotSet \ + or isinstance(author, github.InputGitAuthor), \ + 'author must be a github.InputGitAuthor object' + assert committer is github.GithubObject.NotSet \ + or isinstance(committer, github.InputGitAuthor), \ + 'committer must be a github.InputGitAuthor object' + + if atLeastPython3: + content = b64encode(content.encode('utf-8')).decode('utf-8') + else: + if isinstance(content, unicode): + content = content.encode('utf-8') + content = b64encode(content) + + put_parameters = {'message': message, 'content': content, + 'sha': sha} + + if branch is not github.GithubObject.NotSet: + put_parameters['branch'] = branch + if author is not github.GithubObject.NotSet: + put_parameters["author"] = author._identity + if committer is not github.GithubObject.NotSet: + put_parameters["committer"] = committer._identity + + headers, data = self._requester.requestJsonAndCheck( + "PUT", + self.url + "/contents" + path, + input=put_parameters + ) + + return {'commit': github.Commit.Commit(self._requester, headers, data["commit"], completed=True), + 'content': github.ContentFile.ContentFile(self._requester, headers, data["content"], completed=False)} + + def delete_file(self, path, message, sha, + branch=github.GithubObject.NotSet): + """This method delete a file in a repository + :calls: `DELETE /repos/:owner/:repo/contents/:path `_ + :param path: string, Required. The content path. + :param message: string, Required. The commit message. + :param sha: string, Required. The blob SHA of the file being replaced. + :param branch: string. The branch name. Default: the repository’s default branch (usually master) + :rtype: { + 'content': :class:`null `:, + 'commit': :class:`Commit `} + """ + assert isinstance(path, (str, unicode)), \ + 'path must be str/unicode object' + assert isinstance(message, (str, unicode)), \ + 'message must be str/unicode object' + assert isinstance(sha, (str, unicode)), \ + 'sha must be a str/unicode object' + assert branch is github.GithubObject.NotSet \ + or isinstance(branch, (str, unicode)), \ + 'branch must be a str/unicode object' + + url_parameters = {'message': message, 'sha': sha} + if branch is not github.GithubObject.NotSet: + url_parameters['branch'] = branch + + headers, data = self._requester.requestJsonAndCheck( + "DELETE", + self.url + "/contents" + path, + input=url_parameters + ) + + return {'commit': github.Commit.Commit(self._requester, headers, data["commit"], completed=True), + 'content': github.GithubObject.NotSet} + def get_dir_contents(self, path, ref=github.GithubObject.NotSet): """ :calls: `GET /repos/:owner/:repo/contents/:path `_ @@ -1457,14 +1633,14 @@ def get_issues(self, milestone=github.GithubObject.NotSet, state=github.GithubOb assert creator is github.GithubObject.NotSet or isinstance(creator, github.NamedUser.NamedUser) or isinstance(creator, (str, unicode)), creator url_parameters = dict() if milestone is not github.GithubObject.NotSet: - if isinstance(milestone, str): + if isinstance(milestone, (str, unicode)): url_parameters["milestone"] = milestone else: url_parameters["milestone"] = milestone._identity if state is not github.GithubObject.NotSet: url_parameters["state"] = state if assignee is not github.GithubObject.NotSet: - if isinstance(assignee, str): + if isinstance(assignee, (str, unicode)): url_parameters["assignee"] = assignee else: url_parameters["assignee"] = assignee._identity @@ -1479,7 +1655,7 @@ def get_issues(self, milestone=github.GithubObject.NotSet, state=github.GithubOb if since is not github.GithubObject.NotSet: url_parameters["since"] = since.strftime("%Y-%m-%dT%H:%M:%SZ") if creator is not github.GithubObject.NotSet: - if isinstance(creator, str): + if isinstance(creator, (str, unicode)): url_parameters["creator"] = creator else: url_parameters["creator"] = creator._identity @@ -1664,19 +1840,21 @@ def get_pull(self, number): ) return github.PullRequest.PullRequest(self._requester, headers, data, completed=True) - def get_pulls(self, state=github.GithubObject.NotSet, sort=github.GithubObject.NotSet, direction=github.GithubObject.NotSet, base=github.GithubObject.NotSet): + def get_pulls(self, state=github.GithubObject.NotSet, sort=github.GithubObject.NotSet, direction=github.GithubObject.NotSet, base=github.GithubObject.NotSet, head=github.GithubObject.NotSet): """ :calls: `GET /repos/:owner/:repo/pulls `_ :param state: string :param sort: string :param direction: string :param base: string + :param head: string :rtype: :class:`github.PaginatedList.PaginatedList` of :class:`github.PullRequest.PullRequest` """ assert state is github.GithubObject.NotSet or isinstance(state, (str, unicode)), state assert sort is github.GithubObject.NotSet or isinstance(sort, (str, unicode)), sort assert direction is github.GithubObject.NotSet or isinstance(direction, (str, unicode)), direction assert base is github.GithubObject.NotSet or isinstance(base, (str, unicode)), base + assert head is github.GithubObject.NotSet or isinstance(head, (str, unicode)), head url_parameters = dict() if state is not github.GithubObject.NotSet: url_parameters["state"] = state @@ -1686,6 +1864,8 @@ def get_pulls(self, state=github.GithubObject.NotSet, sort=github.GithubObject.N url_parameters["direction"] = direction if base is not github.GithubObject.NotSet: url_parameters["base"] = base + if head is not github.GithubObject.NotSet: + url_parameters["head"] = head return github.PaginatedList.PaginatedList( github.PullRequest.PullRequest, self._requester, @@ -1779,7 +1959,7 @@ def get_stats_contributors(self): "GET", self.url + "/stats/contributors" ) - if data == {}: + if not data: return None else: return [ @@ -1796,7 +1976,7 @@ def get_stats_commit_activity(self): "GET", self.url + "/stats/commit_activity" ) - if data == {}: + if not data: return None else: return [ @@ -1813,7 +1993,7 @@ def get_stats_code_frequency(self): "GET", self.url + "/stats/code_frequency" ) - if data == {}: + if not data: return None else: return [ @@ -1830,7 +2010,7 @@ def get_stats_participation(self): "GET", self.url + "/stats/participation" ) - if data == {}: + if not data: return None else: return github.StatsParticipation.StatsParticipation(self._requester, headers, data, completed=True) @@ -1844,7 +2024,7 @@ def get_stats_punch_card(self): "GET", self.url + "/stats/punch_card" ) - if data == {}: + if not data: return None else: return github.StatsPunchCard.StatsPunchCard(self._requester, headers, data, completed=True) @@ -1897,7 +2077,7 @@ def get_release(self, id): self.url + "/releases/" + str(id) ) return github.GitRelease.GitRelease(self._requester, headers, data, completed=True) - elif isinstance(id, str): + elif isinstance(id, (str, unicode)): headers, data = self._requester.requestJsonAndCheck( "GET", self.url + "/releases/tags/" + id @@ -2007,6 +2187,38 @@ def merge(self, base, head, commit_message=github.GithubObject.NotSet): else: return github.Commit.Commit(self._requester, headers, data, completed=True) + def protect_branch(self, branch, enabled, enforcement_level=github.GithubObject.NotSet, contexts=github.GithubObject.NotSet): + """ + :calls: `PATCH /repos/:owner/:repo/branches/:branch `_ + :param branch: string + :param enabled: boolean + :param enforcement_level: string + :param contexts: list of strings + :rtype: None + """ + + assert isinstance(branch, (str, unicode)) + assert isinstance(enabled, bool) + assert enforcement_level is github.GithubObject.NotSet or isinstance(enforcement_level, (str, unicode)), enforcement_level + assert contexts is github.GithubObject.NotSet or all(isinstance(element, (str, unicode)) or isinstance(element, (str, unicode)) for element in contexts), contexts + + post_parameters = { + "protection": {} + } + if enabled is not github.GithubObject.NotSet: + post_parameters["protection"]["enabled"] = enabled + if enforcement_level is not github.GithubObject.NotSet: + post_parameters["protection"]["required_status_checks"] = {} + post_parameters["protection"]["required_status_checks"]["enforcement_level"] = enforcement_level + if contexts is not github.GithubObject.NotSet: + post_parameters["protection"]["required_status_checks"]["contexts"] = contexts + headers, data = self._requester.requestJsonAndCheck( + "PATCH", + self.url + "/branches/" + branch, + input=post_parameters, + headers={'Accept': 'application/vnd.github.loki-preview+json'} + ) + def remove_from_collaborators(self, collaborator): """ :calls: `DELETE /repos/:owner/:repo/collaborators/:user `_ diff --git a/lib/github/RepositoryKey.py b/lib/github/RepositoryKey.py index 261bbfd3bb..847b7f82b8 100644 --- a/lib/github/RepositoryKey.py +++ b/lib/github/RepositoryKey.py @@ -9,7 +9,8 @@ # Copyright 2013 Vincent Jacques # # Copyright 2013 martinqt # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -38,6 +39,9 @@ def __init__(self, requester, headers, attributes, completed, repoUrl): github.GithubObject.CompletableGithubObject.__init__(self, requester, headers, attributes, completed) self.__repoUrl = repoUrl + def __repr__(self): + return self.get__repr__({"id": self._id.value}) + @property def __customUrl(self): return self.__repoUrl + "/keys/" + str(self.id) diff --git a/lib/github/Requester.py b/lib/github/Requester.py index 720d9d653c..9fd77b163b 100644 --- a/lib/github/Requester.py +++ b/lib/github/Requester.py @@ -15,7 +15,8 @@ # Copyright 2013 Mark Roddy # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -186,7 +187,7 @@ def __createException(self, status, headers, output): cls = GithubException.TwoFactorException # pragma no cover (Should be covered) elif status == 403 and output.get("message").startswith("Missing or invalid User Agent string"): cls = GithubException.BadUserAgentException - elif status == 403 and output.get("message").startswith("API Rate Limit Exceeded"): + elif status == 403 and output.get("message").lower().startswith("api rate limit exceeded"): cls = GithubException.RateLimitExceededException elif status == 404 and output.get("message") == "Not Found": cls = GithubException.UnknownObjectException @@ -263,6 +264,7 @@ def __requestEncode(self, cnx, verb, url, parameters, requestHeaders, input, enc return status, responseHeaders, output def __requestRaw(self, cnx, verb, url, requestHeaders, input): + original_cnx = cnx if cnx is None: cnx = self.__createConnection() else: @@ -284,6 +286,9 @@ def __requestRaw(self, cnx, verb, url, requestHeaders, input): self.__log(verb, url, requestHeaders, input, status, responseHeaders, output) + if status == 301 and 'location' in responseHeaders: + return self.__requestRaw(original_cnx, verb, responseHeaders['location'], requestHeaders, input) + return status, responseHeaders, output def __authenticate(self, url, requestHeaders, parameters): @@ -333,7 +338,10 @@ def __createConnection(self): headers = {} if url.username and url.password: auth = '%s:%s' % (url.username, url.password) - headers['Proxy-Authorization'] = 'Basic ' + base64.b64encode(auth) + if atLeastPython3 and isinstance(auth, str): + headers['Proxy-Authorization'] = 'Basic ' + base64.b64encode(auth.encode()).decode() + else: + headers['Proxy-Authorization'] = 'Basic ' + base64.b64encode(auth) conn.set_tunnel(self.__hostname, self.__port, headers) else: conn = self.__connectionClass(self.__hostname, self.__port, **kwds) diff --git a/lib/github/Stargazer.py b/lib/github/Stargazer.py index 4f261c64cd..6fca6a2913 100644 --- a/lib/github/Stargazer.py +++ b/lib/github/Stargazer.py @@ -13,7 +13,8 @@ # Copyright 2013 martinqt # # Copyright 2015 Dan Vanderkam # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -38,6 +39,10 @@ class Stargazer(github.GithubObject.NonCompletableGithubObject): This class represents Stargazers with the date of starring as returned by https://developer.github.com/v3/activity/starring/#alternative-response-with-star-creation-timestamps """ + + def __repr__(self): + return self.get__repr__({"user": self._user.value._login.value}) + @property def starred_at(self): """ diff --git a/lib/github/StatsCodeFrequency.py b/lib/github/StatsCodeFrequency.py index 0a19810402..0635c0720c 100755 --- a/lib/github/StatsCodeFrequency.py +++ b/lib/github/StatsCodeFrequency.py @@ -4,7 +4,8 @@ # # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # diff --git a/lib/github/StatsCommitActivity.py b/lib/github/StatsCommitActivity.py index 14bd75376e..ded0b93c70 100755 --- a/lib/github/StatsCommitActivity.py +++ b/lib/github/StatsCommitActivity.py @@ -4,7 +4,8 @@ # # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # diff --git a/lib/github/StatsContributor.py b/lib/github/StatsContributor.py index b869b0504b..fda45b03b6 100755 --- a/lib/github/StatsContributor.py +++ b/lib/github/StatsContributor.py @@ -4,7 +4,8 @@ # # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # diff --git a/lib/github/StatsParticipation.py b/lib/github/StatsParticipation.py index 356974eedf..b4acd44982 100755 --- a/lib/github/StatsParticipation.py +++ b/lib/github/StatsParticipation.py @@ -4,7 +4,8 @@ # # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # diff --git a/lib/github/StatsPunchCard.py b/lib/github/StatsPunchCard.py index 4c5de41e27..733d4a81b5 100755 --- a/lib/github/StatsPunchCard.py +++ b/lib/github/StatsPunchCard.py @@ -4,7 +4,8 @@ # # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # diff --git a/lib/github/Status.py b/lib/github/Status.py index 46e3921263..67a6b80483 100644 --- a/lib/github/Status.py +++ b/lib/github/Status.py @@ -4,7 +4,8 @@ # # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -29,6 +30,9 @@ class Status(github.GithubObject.NonCompletableGithubObject): This class represents status as defined in https://status.github.com/api """ + def __repr__(self): + return self.get__repr__({"status": self._status.value}) + @property def status(self): """ diff --git a/lib/github/StatusMessage.py b/lib/github/StatusMessage.py index c0c99903ce..ec081e393f 100644 --- a/lib/github/StatusMessage.py +++ b/lib/github/StatusMessage.py @@ -4,7 +4,8 @@ # # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -29,6 +30,9 @@ class StatusMessage(github.GithubObject.NonCompletableGithubObject): This class represents status messages as defined in https://status.github.com/api """ + def __repr__(self): + return self.get__repr__({"body": self._body.value}) + @property def body(self): """ diff --git a/lib/github/Tag.py b/lib/github/Tag.py index 5f19363fdb..c837c74e27 100644 --- a/lib/github/Tag.py +++ b/lib/github/Tag.py @@ -8,7 +8,8 @@ # Copyright 2013 Vincent Jacques # # Copyright 2013 martinqt # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -35,6 +36,12 @@ class Tag(github.GithubObject.NonCompletableGithubObject): This class represents Tags. The reference can be found here http://developer.github.com/v3/git/tags/ """ + def __repr__(self): + return self.get__repr__({ + "name": self._name.value, + "commit": self._commit.value + }) + @property def commit(self): """ diff --git a/lib/github/Team.py b/lib/github/Team.py index e1971f5f2c..9491020ba2 100644 --- a/lib/github/Team.py +++ b/lib/github/Team.py @@ -8,7 +8,8 @@ # Copyright 2013 Vincent Jacques # # Copyright 2013 martinqt # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -37,6 +38,9 @@ class Team(github.GithubObject.CompletableGithubObject): This class represents Teams. The reference can be found here http://developer.github.com/v3/orgs/teams/ """ + def __repr__(self): + return self.get__repr__({"id": self._id.value, "name": self._name.value}) + @property def id(self): """ @@ -128,7 +132,7 @@ def add_membership(self, member): :rtype: None """ assert isinstance(member, github.NamedUser.NamedUser), member - headers, data = self._requester.requestjsonandcheck( + headers, data = self._requester.requestJsonAndCheck( "PUT", self.url + "/memberships/" + member._identity ) @@ -145,6 +149,23 @@ def add_to_repos(self, repo): self.url + "/repos/" + repo._identity ) + def set_repo_permission(self, repo, permission): + """ + :calls: `PUT /teams/:id/repos/:org/:repo `_ + :param repo: :class:`github.Repository.Repository` + :param permission: string + :rtype: None + """ + assert isinstance(repo, github.Repository.Repository), repo + put_parameters = { + "permission": permission, + } + headers, data = self._requester.requestJsonAndCheck( + "PUT", + self.url + "/repos/" + repo._identity, + input=put_parameters + ) + def delete(self): """ :calls: `DELETE /teams/:id `_ diff --git a/lib/github/UserKey.py b/lib/github/UserKey.py index cfc45823a9..0f47cf086f 100644 --- a/lib/github/UserKey.py +++ b/lib/github/UserKey.py @@ -8,7 +8,8 @@ # Copyright 2013 Vincent Jacques # # Copyright 2013 martinqt # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # @@ -33,6 +34,9 @@ class UserKey(github.GithubObject.CompletableGithubObject): This class represents UserKeys. The reference can be found here http://developer.github.com/v3/users/keys/ """ + def __repr__(self): + return self.get__repr__({"id": self._id.value, "title": self._title.value}) + @property def id(self): """ diff --git a/lib/github/__init__.py b/lib/github/__init__.py index fdc3c455af..4bfd381efe 100644 --- a/lib/github/__init__.py +++ b/lib/github/__init__.py @@ -6,7 +6,8 @@ # Copyright 2012 Zearin # # Copyright 2013 Vincent Jacques # # # -# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # # # # PyGithub is free software: you can redistribute it and/or modify it under # # the terms of the GNU Lesser General Public License as published by the Free # diff --git a/lib/github/tests/AllTests.py b/lib/github/tests/AllTests.py new file mode 100644 index 0000000000..266cdf9598 --- /dev/null +++ b/lib/github/tests/AllTests.py @@ -0,0 +1,95 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +from AuthenticatedUser import * +from Authentication import * +from Authorization import * +from Branch import * +from Commit import * +from CommitCombinedStatus import * +from CommitComment import * +from CommitStatus import * +from ContentFile import * +from Download import * +from Event import * +from Gist import * +from GistComment import * +from GitBlob import * +from GitCommit import * +from Github_ import * +from GitRef import * +from GitRelease import * +from GitTag import * +from GitTree import * +from Hook import * +from Issue import * +from IssueComment import * +from IssueEvent import * +from Label import * +from Milestone import * +from NamedUser import * +from Markdown import * +from Organization import * +from PullRequest import * +from PullRequestComment import * +from PullRequestFile import * +from RateLimiting import * +from Repository import * +from RepositoryKey import * +from Status import * +from Tag import * +from Team import * +from UserKey import * + +from PaginatedList import * +from Exceptions import * +from Enterprise import * +from Logging_ import * +from RawData import * +from ConditionalRequestUpdate import * +from Persistence import * +from ExposeAllAttributes import * +from BadAttributes import * +from Equality import * +from Search import * + +from Issue33 import * +from Issue50 import * +from Issue54 import * +from Issue80 import * +from Issue87 import * +from Issue131 import * +from Issue133 import * +from Issue134 import * +from Issue139 import * +from Issue140 import * +from Issue142 import * +from Issue158 import * +from Issue174 import * +from Issue214 import * +from Issue216 import * +from Issue278 import * diff --git a/lib/github/tests/AuthenticatedUser.py b/lib/github/tests/AuthenticatedUser.py new file mode 100644 index 0000000000..57dd1d59ff --- /dev/null +++ b/lib/github/tests/AuthenticatedUser.py @@ -0,0 +1,236 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + +import github +import datetime + + +class AuthenticatedUser(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.user = self.g.get_user() + + def testAttributes(self): + self.assertEqual(self.user.avatar_url, "https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png") + self.assertEqual(self.user.bio, "") + self.assertEqual(self.user.blog, "http://vincent-jacques.net") + self.assertEqual(self.user.collaborators, 0) + self.assertEqual(self.user.company, "Criteo") + self.assertEqual(self.user.created_at, datetime.datetime(2010, 7, 9, 6, 10, 6)) + self.assertEqual(self.user.disk_usage, 16692) + self.assertEqual(self.user.email, "vincent@vincent-jacques.net") + self.assertEqual(self.user.followers, 13) + self.assertEqual(self.user.following, 24) + self.assertEqual(self.user.gravatar_id, "b68de5ae38616c296fa345d2b9df2225") + self.assertFalse(self.user.hireable) + self.assertEqual(self.user.html_url, "https://github.com/jacquev6") + self.assertEqual(self.user.id, 327146) + self.assertEqual(self.user.location, "Paris, France") + self.assertEqual(self.user.login, "jacquev6") + self.assertEqual(self.user.name, "Vincent Jacques") + self.assertEqual(self.user.owned_private_repos, 5) + self.assertEqual(self.user.plan.name, "micro") + self.assertEqual(self.user.plan.collaborators, 1) + self.assertEqual(self.user.plan.space, 614400) + self.assertEqual(self.user.plan.private_repos, 5) + self.assertEqual(self.user.private_gists, 5) + self.assertEqual(self.user.public_gists, 1) + self.assertEqual(self.user.public_repos, 10) + self.assertEqual(self.user.total_private_repos, 5) + self.assertEqual(self.user.type, "User") + self.assertEqual(self.user.url, "https://api.github.com/users/jacquev6") + + # test __repr__() based on this attributes + self.assertEqual(self.user.__repr__(), 'AuthenticatedUser(login="jacquev6")') + + def testEditWithoutArguments(self): + self.user.edit() + + def testEditWithAllArguments(self): + self.user.edit("Name edited by PyGithub", "Email edited by PyGithub", "Blog edited by PyGithub", "Company edited by PyGithub", "Location edited by PyGithub", True, "Bio edited by PyGithub") + self.assertEqual(self.user.name, "Name edited by PyGithub") + self.assertEqual(self.user.email, "Email edited by PyGithub") + self.assertEqual(self.user.blog, "Blog edited by PyGithub") + self.assertEqual(self.user.company, "Company edited by PyGithub") + self.assertEqual(self.user.location, "Location edited by PyGithub") + self.assertTrue(self.user.hireable) + self.assertEqual(self.user.bio, "Bio edited by PyGithub") + + def testEmails(self): + self.assertEqual(self.user.get_emails(), ["vincent@vincent-jacques.net", "github.com@vincent-jacques.net"]) + self.user.add_to_emails("1@foobar.com", "2@foobar.com") + self.assertEqual(self.user.get_emails(), ["vincent@vincent-jacques.net", "1@foobar.com", "2@foobar.com", "github.com@vincent-jacques.net"]) + self.user.remove_from_emails("1@foobar.com", "2@foobar.com") + self.assertEqual(self.user.get_emails(), ["vincent@vincent-jacques.net", "github.com@vincent-jacques.net"]) + + def testFollowing(self): + nvie = self.g.get_user("nvie") + self.assertListKeyEqual(self.user.get_following(), lambda u: u.login, ["schacon", "jamis", "chad", "unclebob", "dabrahams", "jnorthrup", "brugidou", "regisb", "walidk", "tanzilli", "fjardon", "r3c", "sdanzan", "vineus", "cjuniet", "gturri", "ant9000", "asquini", "claudyus", "jardon-u", "s-bernard", "kamaradclimber", "Lyloa", "nvie"]) + self.assertTrue(self.user.has_in_following(nvie)) + self.user.remove_from_following(nvie) + self.assertFalse(self.user.has_in_following(nvie)) + self.user.add_to_following(nvie) + self.assertTrue(self.user.has_in_following(nvie)) + self.assertListKeyEqual(self.user.get_followers(), lambda u: u.login, ["jnorthrup", "brugidou", "regisb", "walidk", "afzalkhan", "sdanzan", "vineus", "gturri", "fjardon", "cjuniet", "jardon-u", "kamaradclimber", "L42y"]) + + def testWatching(self): + gitflow = self.g.get_user("nvie").get_repo("gitflow") + self.assertListKeyEqual(self.user.get_watched(), lambda r: r.name, ["git", "boost.php", "capistrano", "boost.perl", "git-subtree", "git-hg", "homebrew", "celtic_knot", "twisted-intro", "markup", "hub", "gitflow", "murder", "boto", "agit", "d3", "pygit2", "git-pulls", "django_mathlatex", "scrumblr", "developer.github.com", "python-github3", "PlantUML", "bootstrap", "drawnby", "django-socketio", "django-realtime", "playground", "BozoCrack", "FatherBeaver", "PyGithub", "django", "django", "TestPyGithub"]) + self.assertTrue(self.user.has_in_watched(gitflow)) + self.user.remove_from_watched(gitflow) + self.assertFalse(self.user.has_in_watched(gitflow)) + self.user.add_to_watched(gitflow) + self.assertTrue(self.user.has_in_watched(gitflow)) + + def testStarring(self): + gitflow = self.g.get_user("nvie").get_repo("gitflow") + self.assertListKeyEqual(self.user.get_starred(), lambda r: r.name, ["git", "boost.php", "capistrano", "boost.perl", "git-subtree", "git-hg", "homebrew", "celtic_knot", "twisted-intro", "markup", "hub", "gitflow", "murder", "boto", "agit", "d3", "pygit2", "git-pulls", "django_mathlatex", "scrumblr", "developer.github.com", "python-github3", "PlantUML", "bootstrap", "drawnby", "django-socketio", "django-realtime", "playground", "BozoCrack", "FatherBeaver", "amaunet", "django", "django", "moviePlanning", "folly"]) + self.assertTrue(self.user.has_in_starred(gitflow)) + self.user.remove_from_starred(gitflow) + self.assertFalse(self.user.has_in_starred(gitflow)) + self.user.add_to_starred(gitflow) + self.assertTrue(self.user.has_in_starred(gitflow)) + + def testSubscriptions(self): + gitflow = self.g.get_user("nvie").get_repo("gitflow") + self.assertListKeyEqual(self.user.get_subscriptions(), lambda r: r.name, ["gitflow", "ViDE", "Boost.HierarchicalEnum", "QuadProgMm", "DrawSyntax", "DrawTurksHead", "PrivateStuff", "vincent-jacques.net", "Hacking", "C4Planner", "developer.github.com", "PyGithub", "PyGithub", "django", "CinePlanning", "PyGithub", "PyGithub", "PyGithub", "IpMap", "PyGithub", "PyGithub", "PyGithub", "PyGithub", "PyGithub", "PyGithub", "PyGithub", "PyGithub", "PyGithub", "PyGithub", "PyGithub", "PyGithub"]) + self.assertTrue(self.user.has_in_subscriptions(gitflow)) + self.user.remove_from_subscriptions(gitflow) + self.assertFalse(self.user.has_in_subscriptions(gitflow)) + self.user.add_to_subscriptions(gitflow) + self.assertTrue(self.user.has_in_subscriptions(gitflow)) + + def testGetAuthorizations(self): + self.assertListKeyEqual(self.user.get_authorizations(), lambda a: a.id, [372294]) + + def testCreateRepository(self): + repo = self.user.create_repo("TestPyGithub") + self.assertEqual(repo.url, "https://api.github.com/repos/jacquev6/TestPyGithub") + + def testCreateRepositoryWithAllArguments(self): + repo = self.user.create_repo("TestPyGithub", "Repo created by PyGithub", "http://foobar.com", private=False, has_issues=False, has_wiki=False, has_downloads=False) + self.assertEqual(repo.url, "https://api.github.com/repos/jacquev6/TestPyGithub") + + def testCreateRepositoryWithAutoInit(self): + repo = self.user.create_repo("TestPyGithub", auto_init=True, gitignore_template="Python") + self.assertEqual(repo.url, "https://api.github.com/repos/jacquev6/TestPyGithub") + + def testCreateAuthorizationWithoutArguments(self): + authorization = self.user.create_authorization() + self.assertEqual(authorization.id, 372259) + + def testCreateAuthorizationWithAllArguments(self): + authorization = self.user.create_authorization(["repo"], "Note created by PyGithub", "http://vincent-jacques.net/PyGithub") + self.assertEqual(authorization.id, 372294) + + def testCreateAuthorizationWithClientIdAndSecret(self): + # I don't have a client_id and client_secret so the ReplayData for this test is forged + authorization = self.user.create_authorization(client_id="01234567890123456789", client_secret="0123456789012345678901234567890123456789") + self.assertEqual(authorization.id, 372294) + + def testCreateGist(self): + gist = self.user.create_gist(True, {"foobar.txt": github.InputFileContent("File created by PyGithub")}, "Gist created by PyGithub") + self.assertEqual(gist.description, "Gist created by PyGithub") + self.assertEqual(gist.files.keys(), ["foobar.txt"]) + self.assertEqual(gist.files["foobar.txt"].content, "File created by PyGithub") + + def testCreateGistWithoutDescription(self): + gist = self.user.create_gist(True, {"foobar.txt": github.InputFileContent("File created by PyGithub")}) + self.assertEqual(gist.description, None) + self.assertEqual(gist.files.keys(), ["foobar.txt"]) + self.assertEqual(gist.files["foobar.txt"].content, "File created by PyGithub") + + def testCreateKey(self): + key = self.user.create_key("Key added through PyGithub", "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA2Mm0RjTNAYFfSCtUpO54usdseroUSIYg5KX4JoseTpqyiB/hqewjYLAdUq/tNIQzrkoEJWSyZrQt0ma7/YCyMYuNGd3DU6q6ZAyBeY3E9RyCiKjO3aTL2VKQGFvBVVmGdxGVSCITRphAcsKc/PF35/fg9XP9S0anMXcEFtdfMHz41SSw+XtE+Vc+6cX9FuI5qUfLGbkv8L1v3g4uw9VXlzq4GfTA+1S7D6mcoGHopAIXFlVr+2RfDKdSURMcB22z41fljO1MW4+zUS/4FyUTpL991es5fcwKXYoiE+x06VJeJJ1Krwx+DZj45uweV6cHXt2JwJEI9fWB6WyBlDejWw== vincent@IDEE") + self.assertEqual(key.id, 2626650) + + def testGetEvents(self): + self.assertListKeyBegin(self.user.get_events(), lambda e: e.type, ["PushEvent", "IssuesEvent", "IssueCommentEvent", "PushEvent"]) + + def testGetOrganizationEvents(self): + self.assertListKeyBegin(self.user.get_organization_events(self.g.get_organization("BeaverSoftware")), lambda e: e.type, ["CreateEvent", "CreateEvent", "PushEvent", "PushEvent"]) + + def testGetGists(self): + self.assertListKeyEqual(self.user.get_gists(), lambda g: g.id, ["2793505", "2793179", "11cb445f8197e17d303d", "1942384", "dcb7de17e8a52b74541d"]) + + def testGetStarredGists(self): + self.assertListKeyEqual(self.user.get_starred_gists(), lambda g: g.id, ["1942384", "dcb7de17e8a52b74541d"]) + + def testGetIssues(self): + self.assertListKeyEqual(self.user.get_issues(), lambda i: (i.id, i.repository.name), [(4639931, "PyGithub"), (4452000, "PyGithub"), (4356743, "PyGithub"), (3716033, "PyGithub"), (3715946, "PyGithub"), (3643837, "PyGithub"), (3628022, "PyGithub"), (3624595, "PyGithub"), (3624570, "PyGithub"), (3624561, "PyGithub"), (3624556, "PyGithub"), (3619973, "PyGithub"), (3527266, "PyGithub"), (3527245, "PyGithub"), (3527231, "PyGithub")]) + + def testGetIssuesWithAllArguments(self): + requestedByUser = self.user.get_repo("PyGithub").get_label("Requested by user") + issues = self.user.get_issues("assigned", "closed", [requestedByUser], "comments", "asc", datetime.datetime(2012, 5, 28, 23, 0, 0)) + self.assertListKeyEqual(issues, lambda i: i.id, [6816576, 8495415, 6889934, 8339699, 8075253, 8033963, 9089893, 9489725, 11746141, 5152384, 5177381, 5783131, 6454054, 6641076, 6653907, 7331214, 9489813, 9776615, 10360280, 4356743, 6583381, 6751469, 8189836, 10758585, 12097154, 12867103, 5191621, 5256315, 6363719, 9209408, 6912733, 9948505, 11503771, 10922412, 11844658, 12566144, 6353712, 9323084, 10379143, 5387373, 12179668, 6911794, 11731917, 6807542, 6780606]) + + def testGetUserIssues(self): + self.assertListKeyEqual(self.user.get_user_issues(), lambda i: i.id, [14447880, 13505356, 12541184, 10586808, 6741461, 6741457, 6727331, 5641572]) + + def testGetUserIssuesWithAllArguments(self): + requestedByUser = self.user.get_repo("PyGithub").get_label("Requested by user") + issues = self.user.get_user_issues("assigned", "closed", [requestedByUser], "comments", "asc", datetime.datetime(2012, 5, 28, 23, 0, 0)) + self.assertListKeyEqual(issues, lambda i: i.id, [6816576, 8495415, 6889934, 8339699, 8075253, 8033963, 9089893, 9489725, 11746141, 5152384, 5177381, 5783131, 6454054, 6641076, 6653907, 7331214, 9489813, 9776615, 10360280, 4356743, 6583381, 6751469, 8189836, 10758585, 12097154, 12867103, 5191621, 5256315, 6363719, 9209408, 6912733, 9948505, 11503771, 10922412, 11844658, 12566144, 6353712, 9323084, 10379143, 5387373, 12179668, 6911794, 11731917, 6807542, 6780606]) + + def testGetKeys(self): + self.assertListKeyEqual(self.user.get_keys(), lambda k: k.title, ["vincent@home", "vincent@gandi", "vincent@aws", "vincent@macbook"]) + + def testGetOrgs(self): + self.assertListKeyEqual(self.user.get_orgs(), lambda o: o.login, ["BeaverSoftware"]) + + def testGetRepos(self): + self.assertListKeyEqual(self.user.get_repos(), lambda r: r.name, ["TestPyGithub", "django", "PyGithub", "developer.github.com", "acme-public-website", "C4Planner", "Hacking", "vincent-jacques.net", "Contests", "Candidates", "Tests", "DrawTurksHead", "DrawSyntax", "QuadProgMm", "Boost.HierarchicalEnum", "ViDE"]) + + def testGetReposWithArguments(self): + self.assertListKeyEqual(self.user.get_repos("public", "full_name", "desc"), lambda r: r.name, ["ViDE", "QuadProgMm", "PyGithub", "DrawTurksHead", "DrawSyntax", "django", "developer.github.com", "C4Planner", "Boost.HierarchicalEnum", "acme-public-website"]) + + def testCreateFork(self): + repo = self.user.create_fork(self.g.get_user("nvie").get_repo("gitflow")) + self.assertEqual(repo.source.full_name, "nvie/gitflow") + + def testGetNotification(self): + notification = self.user.get_notification("8406712") + self.assertEqual(notification.id, "8406712") + self.assertEqual(notification.unread, False) + self.assertEqual(notification.reason, "author") + self.assertEqual(notification.subject.title, "Feature/coveralls") + self.assertEqual(notification.subject.type, "PullRequest") + self.assertEqual(notification.repository.id, 8432784) + self.assertEqual(notification.updated_at, datetime.datetime(2013, 3, 15, 5, 43, 11)) + self.assertEqual(notification.url, None) + self.assertEqual(notification.subject.url, None) + self.assertEqual(notification.subject.latest_comment_url, None) + + def testGetNotifications(self): + self.assertListKeyEqual(self.user.get_notifications(participating=True), lambda n: n.id, ["8406712"]) + + def testGetNotificationsWithOtherArguments(self): + self.assertListKeyEqual(self.user.get_notifications(all=True), lambda n: n.id, []) + + def testGetTeams(self): + self.assertListKeyEqual(self.user.get_teams(), lambda t: t.name, ["Owners", "Honoraries", "Honoraries", "Honoraries", "Honoraries", "Honoraries", "Honoraries", "Honoraries", "Honoraries", "Honoraries"]) diff --git a/lib/github/tests/Authentication.py b/lib/github/tests/Authentication.py new file mode 100644 index 0000000000..c6601a07af --- /dev/null +++ b/lib/github/tests/Authentication.py @@ -0,0 +1,67 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework +import github + + +class Authentication(Framework.BasicTestCase): + def testNoAuthentication(self): + g = github.Github() + self.assertEqual(g.get_user("jacquev6").name, "Vincent Jacques") + + def testBasicAuthentication(self): + g = github.Github(self.login, self.password) + self.assertEqual(g.get_user("jacquev6").name, "Vincent Jacques") + + def testOAuthAuthentication(self): + g = github.Github(self.oauth_token) + self.assertEqual(g.get_user("jacquev6").name, "Vincent Jacques") + + # Warning: I don't have a scret key, so the requests for this test are forged + def testSecretKeyAuthentication(self): + g = github.Github(client_id=self.client_id, client_secret=self.client_secret) + self.assertListKeyEqual(g.get_organization("BeaverSoftware").get_repos("public"), lambda r: r.name, ["FatherBeaver", "PyGithub"]) + + def testUserAgent(self): + g = github.Github(user_agent="PyGithubTester") + self.assertEqual(g.get_user("jacquev6").name, "Vincent Jacques") + + def testAuthorizationHeaderWithLogin(self): + # See special case in Framework.fixAuthorizationHeader + g = github.Github("fake_login", "fake_password") + try: + g.get_user().name + except github.GithubException: + pass + + def testAuthorizationHeaderWithToken(self): + # See special case in Framework.fixAuthorizationHeader + g = github.Github("ZmFrZV9sb2dpbjpmYWtlX3Bhc3N3b3Jk") + try: + g.get_user().name + except github.GithubException: + pass diff --git a/lib/github/tests/Authorization.py b/lib/github/tests/Authorization.py new file mode 100644 index 0000000000..e2408e3350 --- /dev/null +++ b/lib/github/tests/Authorization.py @@ -0,0 +1,65 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + +import datetime + + +class Authorization(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.authorization = self.g.get_user().get_authorization(372259) + + def testAttributes(self): + self.assertEqual(self.authorization.app.url, "http://developer.github.com/v3/oauth/#oauth-authorizations-api") + self.assertEqual(self.authorization.app.name, "GitHub API") + self.assertEqual(self.authorization.created_at, datetime.datetime(2012, 5, 22, 18, 3, 17)) + self.assertEqual(self.authorization.id, 372259) + self.assertEqual(self.authorization.note, None) + self.assertEqual(self.authorization.note_url, None) + self.assertEqual(self.authorization.scopes, []) + self.assertEqual(self.authorization.token, "82459c4500086f8f0cc67d2936c17d1e27ad1c33") + self.assertEqual(self.authorization.updated_at, datetime.datetime(2012, 5, 22, 18, 3, 17)) + self.assertEqual(self.authorization.url, "https://api.github.com/authorizations/372259") + + def testEdit(self): + self.authorization.edit() + self.assertEqual(self.authorization.scopes, []) + self.authorization.edit(scopes=["user"]) + self.assertEqual(self.authorization.scopes, ["user"]) + self.authorization.edit(add_scopes=["repo"]) + self.assertEqual(self.authorization.scopes, ["user", "repo"]) + self.authorization.edit(remove_scopes=["repo"]) + self.assertEqual(self.authorization.scopes, ["user"]) + self.assertEqual(self.authorization.note, None) + self.assertEqual(self.authorization.note_url, None) + self.authorization.edit(note="Note created by PyGithub", note_url="http://vincent-jacques.net/PyGithub") + self.assertEqual(self.authorization.note, "Note created by PyGithub") + self.assertEqual(self.authorization.note_url, "http://vincent-jacques.net/PyGithub") + + def testDelete(self): + self.authorization.delete() diff --git a/lib/github/tests/BadAttributes.py b/lib/github/tests/BadAttributes.py new file mode 100755 index 0000000000..2b84cab8ce --- /dev/null +++ b/lib/github/tests/BadAttributes.py @@ -0,0 +1,150 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import datetime + +import Framework +import github + + +# Replay data is forged to simulate bad things returned by Github +class BadAttributes(Framework.TestCase): + def testBadSimpleAttribute(self): + user = self.g.get_user("klmitch") + self.assertEqual(user.created_at, datetime.datetime(2011, 3, 23, 15, 42, 9)) + + raised = False + try: + user.name + except github.BadAttributeException, e: + raised = True + self.assertEqual(e.actual_value, 42) + self.assertEqual(e.expected_type, (str, unicode)) + self.assertEqual(e.transformation_exception, None) + self.assertTrue(raised) + + def testBadAttributeTransformation(self): + user = self.g.get_user("klmitch") + self.assertEqual(user.name, "Kevin L. Mitchell") + + raised = False + try: + user.created_at + except github.BadAttributeException, e: + raised = True + self.assertEqual(e.actual_value, "foobar") + self.assertEqual(e.expected_type, (str, unicode)) + self.assertEqual(e.transformation_exception.__class__, ValueError) + if Framework.atLeastPython26: + self.assertEqual(e.transformation_exception.args, ("time data 'foobar' does not match format '%Y-%m-%dT%H:%M:%SZ'",)) + else: + self.assertEqual(e.transformation_exception.args, ('time data did not match format: data=foobar fmt=%Y-%m-%dT%H:%M:%SZ',)) + self.assertTrue(raised) + + def testBadTransformedAttribute(self): + user = self.g.get_user("klmitch") + self.assertEqual(user.name, "Kevin L. Mitchell") + + raised = False + try: + user.updated_at + except github.BadAttributeException, e: + raised = True + self.assertEqual(e.actual_value, 42) + self.assertEqual(e.expected_type, (str, unicode)) + self.assertEqual(e.transformation_exception, None) + self.assertTrue(raised) + + def testBadSimpleAttributeInList(self): + hook = self.g.get_hook("activecollab") + self.assertEqual(hook.name, "activecollab") + + raised = False + try: + hook.events + except github.BadAttributeException, e: + raised = True + self.assertEqual(e.actual_value, ["push", 42]) + self.assertEqual(e.expected_type, [(str, unicode)]) + self.assertEqual(e.transformation_exception, None) + self.assertTrue(raised) + + def testBadAttributeInClassAttribute(self): + repo = self.g.get_repo("klmitch/turnstile") + owner = repo.owner + self.assertEqual(owner.id, 686398) + + raised = False + try: + owner.avatar_url + except github.BadAttributeException, e: + raised = True + self.assertEqual(e.actual_value, 42) + self.assertTrue(raised) + + def testBadTransformedAttributeInList(self): + commit = self.g.get_repo("klmitch/turnstile").get_commit("38d9082a898d0822b5ccdfd78f3a536e2efa6c26") + + raised = False + try: + commit.files + except github.BadAttributeException, e: + raised = True + self.assertEqual(e.actual_value, [42]) + self.assertEqual(e.expected_type, [dict]) + self.assertEqual(e.transformation_exception, None) + self.assertTrue(raised) + + def testBadTransformedAttributeInDict(self): + gist = self.g.get_gist("6437766") + + raised = False + try: + gist.files + except github.BadAttributeException, e: + raised = True + self.assertEqual(e.actual_value, {"test.py": 42}) + self.assertEqual(e.expected_type, {(str, unicode): dict}) + self.assertEqual(e.transformation_exception, None) + self.assertTrue(raised) + + def testIssue195(self): + hooks = self.g.get_hooks() + # We can loop on all hooks as long as we don't access circleci's events attribute + self.assertListKeyEqual(hooks, lambda h: h.name, [u'activecollab', u'acunote', u'agilebench', u'agilezen', u'amazonsns', u'apiary', u'apoio', u'appharbor', u'apropos', u'asana', u'backlog', u'bamboo', u'basecamp', u'bcx', u'blimp', u'boxcar', u'buddycloud', u'bugherd', u'bugly', u'bugzilla', u'campfire', u'cia', u'circleci', u'codeclimate', u'codeportingcsharp2java', u'codeship', u'coffeedocinfo', u'conductor', u'coop', u'copperegg', u'cube', u'depending', u'deployhq', u'devaria', u'docker', u'ducksboard', u'email', u'firebase', u'fisheye', u'flowdock', u'fogbugz', u'freckle', u'friendfeed', u'gemini', u'gemnasium', u'geocommit', u'getlocalization', u'gitlive', u'grmble', u'grouptalent', u'grove', u'habitualist', u'hakiri', u'hall', u'harvest', u'hipchat', u'hostedgraphite', u'hubcap', u'hubci', u'humbug', u'icescrum', u'irc', u'irker', u'ironmq', u'ironworker', u'jabber', u'jaconda', u'jeapie', u'jenkins', u'jenkinsgit', u'jira', u'jqueryplugins', u'kanbanery', u'kickoff', u'leanto', u'lechat', u'lighthouse', u'lingohub', u'loggly', u'mantisbt', u'masterbranch', u'mqttpub', u'nma', u'nodejitsu', u'notifo', u'ontime', u'pachube', u'packagist', u'phraseapp', u'pivotaltracker', u'planbox', u'planio', u'prowl', u'puppetlinter', u'pushalot', u'pushover', u'pythonpackages', u'railsbp', u'railsbrakeman', u'rally', u'rapidpush', u'rationaljazzhub', u'rationalteamconcert', u'rdocinfo', u'readthedocs', u'redmine', u'rubyforge', u'scrumdo', u'shiningpanda', u'sifter', u'simperium', u'slatebox', u'snowyevening', u'socialcast', u'softlayermessaging', u'sourcemint', u'splendidbacon', u'sprintly', u'sqsqueue', u'stackmob', u'statusnet', u'talker', u'targetprocess', u'tddium', u'teamcity', u'tender', u'tenxer', u'testpilot', u'toggl', u'trac', u'trajectory', u'travis', u'trello', u'twilio', u'twitter', u'unfuddle', u'web', u'weblate', u'webtranslateit', u'yammer', u'youtrack', u'zendesk', u'zohoprojects']) + for hook in hooks: + if hook.name != "circleci": + hook.events + + raised = False + for hook in hooks: + if hook.name == "circleci": + try: + hook.events + except github.BadAttributeException, e: + raised = True + self.assertEqual(e.actual_value, [["commit_comment", "create", "delete", "download", "follow", "fork", "fork_apply", "gist", "gollum", "issue_comment", "issues", "member", "public", "pull_request", "pull_request_review_comment", "push", "status", "team_add", "watch"]]) + self.assertEqual(e.expected_type, [(str, unicode)]) + self.assertEqual(e.transformation_exception, None) + self.assertTrue(raised) diff --git a/lib/github/tests/Branch.py b/lib/github/tests/Branch.py new file mode 100644 index 0000000000..75447f551a --- /dev/null +++ b/lib/github/tests/Branch.py @@ -0,0 +1,47 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + + +class Branch(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.branch = self.g.get_user().get_repo("PyGithub").get_branches()[0] + + def testAttributes(self): + self.assertEqual(self.branch.name, "topic/RewriteWithGeneratedCode") + self.assertEqual(self.branch.commit.sha, "1292bf0e22c796e91cc3d6e24b544aece8c21f2a") + + # test __repr__() based on this attributes + self.assertEqual(self.branch.__repr__(), 'Branch(name="topic/RewriteWithGeneratedCode")') + + def testProtectedAttributes(self): + self.branch = self.g.get_user().get_repo("PyGithub").get_protected_branch("master") + self.assertEqual(self.branch.name, "master") + self.assertFalse(self.branch.protected) + self.assertEqual(self.branch.enforcement_level, "off") + self.assertEqual(self.branch.contexts, []) diff --git a/lib/github/tests/Commit.py b/lib/github/tests/Commit.py new file mode 100644 index 0000000000..fdb6a7e3c8 --- /dev/null +++ b/lib/github/tests/Commit.py @@ -0,0 +1,97 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + + +class Commit(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.commit = self.g.get_user().get_repo("PyGithub").get_commit("1292bf0e22c796e91cc3d6e24b544aece8c21f2a") + self.commit.author.login # to force lazy completion + + def testAttributes(self): + self.assertEqual(self.commit.author.login, "jacquev6") + self.assertEqual(self.commit.commit.url, "https://api.github.com/repos/jacquev6/PyGithub/git/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a") + self.assertEqual(self.commit.committer.login, "jacquev6") + self.assertEqual(len(self.commit.files), 1) + self.assertEqual(self.commit.files[0].additions, 0) + self.assertEqual(self.commit.files[0].blob_url, "https://github.com/jacquev6/PyGithub/blob/1292bf0e22c796e91cc3d6e24b544aece8c21f2a/github/GithubObjects/GitAuthor.py") + self.assertEqual(self.commit.files[0].changes, 20) + self.assertEqual(self.commit.files[0].deletions, 20) + self.assertEqual(self.commit.files[0].filename, "github/GithubObjects/GitAuthor.py") + self.assertTrue(isinstance(self.commit.files[0].patch, (str, unicode))) + self.assertEqual(self.commit.files[0].raw_url, "https://github.com/jacquev6/PyGithub/raw/1292bf0e22c796e91cc3d6e24b544aece8c21f2a/github/GithubObjects/GitAuthor.py") + self.assertEqual(self.commit.files[0].sha, "1292bf0e22c796e91cc3d6e24b544aece8c21f2a") + self.assertEqual(self.commit.files[0].status, "modified") + self.assertEqual(len(self.commit.parents), 1) + self.assertEqual(self.commit.parents[0].sha, "b46ed0dfde5ad02d3b91eb54a41c5ed960710eae") + self.assertEqual(self.commit.sha, "1292bf0e22c796e91cc3d6e24b544aece8c21f2a") + self.assertEqual(self.commit.stats.deletions, 20) + self.assertEqual(self.commit.stats.additions, 0) + self.assertEqual(self.commit.stats.total, 20) + self.assertEqual(self.commit.url, "https://api.github.com/repos/jacquev6/PyGithub/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a") + + # test __repr__() based on this attributes + self.assertEqual(self.commit.__repr__(), 'Commit(sha="1292bf0e22c796e91cc3d6e24b544aece8c21f2a")') + + def testGetComments(self): + self.assertListKeyEqual(self.commit.get_comments(), lambda c: c.id, [1347033, 1347083, 1347397, 1349654]) + + def testCreateComment(self): + comment = self.commit.create_comment("Comment created by PyGithub") + self.assertEqual(comment.id, 1361949) + self.assertEqual(comment.line, None) + self.assertEqual(comment.path, None) + self.assertEqual(comment.position, None) + + def testCreateCommentOnFileLine(self): + comment = self.commit.create_comment("Comment created by PyGithub", path="codegen/templates/GithubObject.MethodBody.UseResult.py", line=26) + self.assertEqual(comment.id, 1362000) + self.assertEqual(comment.line, 26) + self.assertEqual(comment.path, "codegen/templates/GithubObject.MethodBody.UseResult.py") + self.assertEqual(comment.position, None) + + def testCreateCommentOnFilePosition(self): + comment = self.commit.create_comment("Comment also created by PyGithub", path="codegen/templates/GithubObject.MethodBody.UseResult.py", position=3) + self.assertEqual(comment.id, 1362001) + self.assertEqual(comment.line, None) + self.assertEqual(comment.path, "codegen/templates/GithubObject.MethodBody.UseResult.py") + self.assertEqual(comment.position, 3) + + def testCreateStatusWithoutOptionalParameters(self): + status = self.commit.create_status("pending") + self.assertEqual(status.id, 277031) + self.assertEqual(status.state, "pending") + self.assertEqual(status.target_url, None) + self.assertEqual(status.description, None) + + def testCreateStatusWithAllParameters(self): + status = self.commit.create_status("success", "https://github.com/jacquev6/PyGithub/issues/67", "Status successfuly created by PyGithub") + self.assertEqual(status.id, 277040) + self.assertEqual(status.state, "success") + self.assertEqual(status.target_url, "https://github.com/jacquev6/PyGithub/issues/67") + self.assertEqual(status.description, "Status successfuly created by PyGithub") diff --git a/lib/github/tests/CommitCombinedStatus.py b/lib/github/tests/CommitCombinedStatus.py new file mode 100644 index 0000000000..18c8fc1002 --- /dev/null +++ b/lib/github/tests/CommitCombinedStatus.py @@ -0,0 +1,55 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + +import datetime + + +class CommitCombinedStatus(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.combined_status = self.g.get_repo("edx/edx-platform").get_commit("74e70119a23fa3ffb3db19d4590eccfebd72b659").get_combined_status() + + def testAttributes(self): + self.assertEqual(self.combined_status.state, "success") + self.assertEqual(self.combined_status.statuses[0].url, "https://api.github.com/repos/edx/edx-platform/statuses/74e70119a23fa3ffb3db19d4590eccfebd72b659") + self.assertEqual(self.combined_status.statuses[1].id, 390603044) + self.assertEqual(self.combined_status.statuses[2].state, "success") + self.assertEqual(self.combined_status.statuses[3].description, "Build finished.") + self.assertEqual(self.combined_status.statuses[4].target_url, "https://build.testeng.edx.org/job/edx-platform-python-unittests-pr/10504/") + self.assertEqual(self.combined_status.statuses[4].created_at, datetime.datetime(2015, 12, 14, 13, 24, 18)) + self.assertEqual(self.combined_status.statuses[3].updated_at, datetime.datetime(2015, 12, 14, 13, 23, 35)) + self.assertEqual(self.combined_status.sha, "74e70119a23fa3ffb3db19d4590eccfebd72b659") + self.assertEqual(self.combined_status.total_count, 6) + self.assertEqual(self.combined_status.repository.id, 10391073) + self.assertEqual(self.combined_status.repository.full_name, "edx/edx-platform") + self.assertEqual(self.combined_status.commit_url, "https://api.github.com/repos/edx/edx-platform/commits/74e70119a23fa3ffb3db19d4590eccfebd72b659") + self.assertEqual(self.combined_status.url, "https://api.github.com/repos/edx/edx-platform/commits/74e70119a23fa3ffb3db19d4590eccfebd72b659/status") + + # test __repr__() based on this attributes + self.assertEqual(self.combined_status.__repr__(), + 'CommitCombinedStatus(state="success", sha="74e70119a23fa3ffb3db19d4590eccfebd72b659")') \ No newline at end of file diff --git a/lib/github/tests/CommitComment.py b/lib/github/tests/CommitComment.py new file mode 100644 index 0000000000..90bb002403 --- /dev/null +++ b/lib/github/tests/CommitComment.py @@ -0,0 +1,58 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + +import datetime + + +class CommitComment(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.comment = self.g.get_user().get_repo("PyGithub").get_comment(1361949) + + def testAttributes(self): + self.assertEqual(self.comment.body, "Comment created by PyGithub") + self.assertEqual(self.comment.commit_id, "6945921c529be14c3a8f566dd1e483674516d46d") + self.assertEqual(self.comment.created_at, datetime.datetime(2012, 5, 22, 18, 40, 18)) + self.assertEqual(self.comment.html_url, "https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1361949") + self.assertEqual(self.comment.id, 1361949) + self.assertEqual(self.comment.line, None) + self.assertEqual(self.comment.path, None) + self.assertEqual(self.comment.position, None) + self.assertEqual(self.comment.updated_at, datetime.datetime(2012, 5, 22, 18, 40, 18)) + self.assertEqual(self.comment.url, "https://api.github.com/repos/jacquev6/PyGithub/comments/1361949") + self.assertEqual(self.comment.user.login, "jacquev6") + + # test __repr__() based on this attributes + self.assertEqual(self.comment.__repr__(), + 'CommitComment(user=NamedUser(login="jacquev6"), id=1361949)') + + def testEdit(self): + self.comment.edit("Comment edited by PyGithub") + + def testDelete(self): + self.comment.delete() diff --git a/lib/github/tests/CommitStatus.py b/lib/github/tests/CommitStatus.py new file mode 100644 index 0000000000..73dec20327 --- /dev/null +++ b/lib/github/tests/CommitStatus.py @@ -0,0 +1,53 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + +import github +import datetime + + +class CommitStatus(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.statuses = list(self.g.get_user().get_repo("PyGithub").get_commit("1292bf0e22c796e91cc3d6e24b544aece8c21f2a").get_statuses()) + + def testAttributes(self): + self.assertEqual(self.statuses[0].created_at, datetime.datetime(2012, 9, 8, 11, 30, 56)) + self.assertEqual(self.statuses[0].updated_at, datetime.datetime(2012, 9, 8, 11, 30, 56)) + self.assertEqual(self.statuses[0].creator.login, "jacquev6") + self.assertEqual(self.statuses[0].description, "Status successfuly created by PyGithub") + self.assertEqual(self.statuses[1].description, None) + self.assertEqual(self.statuses[0].id, 277040) + self.assertEqual(self.statuses[0].state, "success") + self.assertEqual(self.statuses[1].state, "pending") + self.assertEqual(self.statuses[0].context, "build") + self.assertEqual(self.statuses[0].target_url, "https://github.com/jacquev6/PyGithub/issues/67") + self.assertEqual(self.statuses[1].target_url, None) + + # test __repr__() based on this attributes + self.assertEqual(self.statuses[0].__repr__(), + 'CommitStatus(state="success", id=277040, context="build")') \ No newline at end of file diff --git a/lib/github/tests/ConditionalRequestUpdate.py b/lib/github/tests/ConditionalRequestUpdate.py new file mode 100644 index 0000000000..4e6c7115c0 --- /dev/null +++ b/lib/github/tests/ConditionalRequestUpdate.py @@ -0,0 +1,45 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +# #193: Line endings should be linux style + +import Framework +import github + + +class ConditionalRequestUpdate(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.repo = self.g.get_repo("akfish/PyGithub", lazy=False) + + def testDidNotUpdate(self): + self.assertFalse(self.repo.update(), msg="The repo is not changed. But update() != False") + + def testDidUpdate(self): + self.assertTrue(self.repo.update(), msg="The repo should be changed by now. But update() != True") + + def testUpdateObjectWithoutEtag(self): + r = self.g.get_repo("jacquev6/PyGithub", lazy=False) + self.assertTrue(r.update()) diff --git a/lib/github/tests/ContentFile.py b/lib/github/tests/ContentFile.py new file mode 100644 index 0000000000..f05772ba01 --- /dev/null +++ b/lib/github/tests/ContentFile.py @@ -0,0 +1,49 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + +import github +import datetime + + +class ContentFile(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.file = self.g.get_user().get_repo("PyGithub").get_readme() + + def testAttributes(self): + self.assertEqual(self.file.type, "file") + self.assertEqual(self.file.encoding, "base64") + self.assertEqual(self.file.size, 7531) + self.assertEqual(self.file.name, "ReadMe.md") + self.assertEqual(self.file.path, "ReadMe.md") + self.assertEqual(len(self.file.content), 10212) + self.assertEqual(len(self.file.decoded_content), 7531) + self.assertEqual(self.file.sha, "5628799a7d517a4aaa0c1a7004d07569cd154df0") + + # test __repr__() based on this attributes + self.assertEqual(self.file.__repr__(), 'ContentFile(path="ReadMe.md")') \ No newline at end of file diff --git a/lib/github/tests/Download.py b/lib/github/tests/Download.py new file mode 100644 index 0000000000..1e9c0c9b46 --- /dev/null +++ b/lib/github/tests/Download.py @@ -0,0 +1,63 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + +import datetime + + +class Download(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.download = self.g.get_user().get_repo("PyGithub").get_download(242550) + + def testAttributes(self): + self.assertEqual(self.download.accesskeyid, None) + self.assertEqual(self.download.acl, None) + self.assertEqual(self.download.bucket, None) + self.assertEqual(self.download.content_type, "text/plain") + self.assertEqual(self.download.created_at, datetime.datetime(2012, 5, 22, 18, 58, 32)) + self.assertEqual(self.download.description, None) + self.assertEqual(self.download.download_count, 0) + self.assertEqual(self.download.expirationdate, None) + self.assertEqual(self.download.html_url, "https://github.com/downloads/jacquev6/PyGithub/Foobar.txt") + self.assertEqual(self.download.id, 242550) + self.assertEqual(self.download.mime_type, None) + self.assertEqual(self.download.name, "Foobar.txt") + self.assertEqual(self.download.path, None) + self.assertEqual(self.download.policy, None) + self.assertEqual(self.download.prefix, None) + self.assertEqual(self.download.redirect, None) + self.assertEqual(self.download.s3_url, None) + self.assertEqual(self.download.signature, None) + self.assertEqual(self.download.size, 1024) + self.assertEqual(self.download.url, "https://api.github.com/repos/jacquev6/PyGithub/downloads/242550") + + # test __repr__() based on this attributes + self.assertEqual(self.download.__repr__(), 'Download(id=242550)') + + def testDelete(self): + self.download.delete() diff --git a/lib/github/tests/Enterprise.py b/lib/github/tests/Enterprise.py new file mode 100644 index 0000000000..4e238ab3f1 --- /dev/null +++ b/lib/github/tests/Enterprise.py @@ -0,0 +1,58 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import github + +import Framework + + +# Replay data for this test case is forged, because I don't have access to a real Github Enterprise install +class Enterprise(Framework.BasicTestCase): + def testHttps(self): + g = github.Github(self.login, self.password, base_url="https://my.enterprise.com") + self.assertListKeyEqual(g.get_user().get_repos(), lambda r: r.name, ["TestPyGithub", "django", "PyGithub", "developer.github.com", "acme-public-website", "C4Planner", "Hacking", "vincent-jacques.net", "Contests", "Candidates", "Tests", "DrawTurksHead", "DrawSyntax", "QuadProgMm", "Boost.HierarchicalEnum", "ViDE"]) + + def testHttp(self): + g = github.Github(self.login, self.password, base_url="http://my.enterprise.com") + self.assertListKeyEqual(g.get_user().get_repos(), lambda r: r.name, ["TestPyGithub", "django", "PyGithub", "developer.github.com", "acme-public-website", "C4Planner", "Hacking", "vincent-jacques.net", "Contests", "Candidates", "Tests", "DrawTurksHead", "DrawSyntax", "QuadProgMm", "Boost.HierarchicalEnum", "ViDE"]) + + def testUnknownUrlScheme(self): # To stay compatible with Python 2.6, we do not use self.assertRaises with only one argument + try: + github.Github(self.login, self.password, base_url="foobar://my.enterprise.com") + except AssertionError, exception: + raised = True + self.assertEqual(exception.args[0], "Unknown URL scheme") + self.assertTrue(raised) + + def testLongUrl(self): + g = github.Github(self.login, self.password, base_url="http://my.enterprise.com/path/to/github") + repos = g.get_user().get_repos() + self.assertListKeyEqual(repos, lambda r: r.name, ["TestPyGithub", "django", "PyGithub", "developer.github.com", "acme-public-website", "C4Planner", "Hacking", "vincent-jacques.net", "Contests", "Candidates", "Tests", "DrawTurksHead", "DrawSyntax", "QuadProgMm", "Boost.HierarchicalEnum", "ViDE"]) + self.assertEqual(repos[0].owner.name, "Vincent Jacques") + + def testSpecificPort(self): + g = github.Github(self.login, self.password, base_url="http://my.enterprise.com:8080") + self.assertListKeyEqual(g.get_user().get_repos(), lambda r: r.name, ["TestPyGithub", "django", "PyGithub", "developer.github.com", "acme-public-website", "C4Planner", "Hacking", "vincent-jacques.net", "Contests", "Candidates", "Tests", "DrawTurksHead", "DrawSyntax", "QuadProgMm", "Boost.HierarchicalEnum", "ViDE"]) diff --git a/lib/github/tests/Equality.py b/lib/github/tests/Equality.py new file mode 100755 index 0000000000..9b5782e790 --- /dev/null +++ b/lib/github/tests/Equality.py @@ -0,0 +1,50 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + + +class Equality(Framework.TestCase): + def testUserEquality(self): + u1 = self.g.get_user("jacquev6") + u2 = self.g.get_user("jacquev6") + self.assertTrue(u1 == u2) + self.assertFalse(u1 != u2) + self.assertEqual(u1, u2) + + def testUserDifference(self): + u1 = self.g.get_user("jacquev6") + u2 = self.g.get_user("OddBloke") + self.assertFalse(u1 == u2) + self.assertTrue(u1 != u2) + self.assertNotEqual(u1, u2) + + def testBranchEquality(self): + # Erf, equality of NonCompletableGithubObjects will be difficult to implement + # because even their _rawData can differ. (Here, the avatar_url is not equal) + # (CompletableGithubObjects are compared by their API url, which is a good key) + r = self.g.get_user().get_repo("PyGithub") + b1 = r.get_branch("develop") + b2 = r.get_branch("develop") + self.assertNotEqual(b1._rawData, b2._rawData) diff --git a/lib/github/tests/Event.py b/lib/github/tests/Event.py new file mode 100644 index 0000000000..87e65acd54 --- /dev/null +++ b/lib/github/tests/Event.py @@ -0,0 +1,48 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + +import datetime + + +class Event(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.event = self.g.get_user("jacquev6").get_events()[0] + + def testAttributes(self): + self.assertEqual(self.event.actor.login, "jacquev6") + self.assertEqual(self.event.created_at, datetime.datetime(2012, 5, 26, 10, 1, 39)) + self.assertEqual(self.event.id, "1556114751") + self.assertEqual(self.event.org, None) + self.assertEqual(self.event.payload, {'commits': [{'url': 'https://api.github.com/repos/jacquev6/PyGithub/commits/5bb654d26dd014d36794acd1e6ecf3736f12aad7', 'sha': '5bb654d26dd014d36794acd1e6ecf3736f12aad7', 'message': 'Implement the three authentication schemes', 'distinct': False, 'author': {'name': 'Vincent Jacques', 'email': 'vincent@vincent-jacques.net'}}, {'url': 'https://api.github.com/repos/jacquev6/PyGithub/commits/cb0313157bf904f2d364377d35d9397b269547a5', 'sha': 'cb0313157bf904f2d364377d35d9397b269547a5', 'message': "Merge branch 'topic/Authentication' into develop", 'distinct': False, 'author': {'name': 'Vincent Jacques', 'email': 'vincent@vincent-jacques.net'}}, {'url': 'https://api.github.com/repos/jacquev6/PyGithub/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16', 'sha': '0cec0d25e606c023a62a4fc7cdc815309ebf6d16', 'message': 'Publish version 0.7', 'distinct': False, 'author': {'name': 'Vincent Jacques', 'email': 'vincent@vincent-jacques.net'}}, {'url': 'https://api.github.com/repos/jacquev6/PyGithub/commits/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7', 'sha': 'ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7', 'message': "Merge branch 'develop'", 'distinct': False, 'author': {'name': 'Vincent Jacques', 'email': 'vincent@vincent-jacques.net'}}, {'url': 'https://api.github.com/repos/jacquev6/PyGithub/commits/3a3bf4763192ee1234eb0557628133e06f3dfc76', 'sha': '3a3bf4763192ee1234eb0557628133e06f3dfc76', 'message': "Merge branch 'master' into topic/RewriteWithGeneratedCode\n\nConflicts:\n\tgithub/Github.py\n\tgithub/Requester.py", 'distinct': True, 'author': {'name': 'Vincent Jacques', 'email': 'vincent@vincent-jacques.net'}}, {'url': 'https://api.github.com/repos/jacquev6/PyGithub/commits/608f17794664f61693a3dc05e6056fea8fbef0ff', 'sha': '608f17794664f61693a3dc05e6056fea8fbef0ff', 'message': 'Restore some form of Authorization header in replay data', 'distinct': True, 'author': {'name': 'Vincent Jacques', 'email': 'vincent@vincent-jacques.net'}}, {'url': 'https://api.github.com/repos/jacquev6/PyGithub/commits/2c04b8adbd91d38eef4f0767337ab7a12b2f684b', 'sha': '2c04b8adbd91d38eef4f0767337ab7a12b2f684b', 'message': 'Allow test without pre-set-up Github', 'distinct': True, 'author': {'name': 'Vincent Jacques', 'email': 'vincent@vincent-jacques.net'}}, {'url': 'https://api.github.com/repos/jacquev6/PyGithub/commits/5b97389988b6fe43e15a079702f6f1671257fb28', 'sha': '5b97389988b6fe43e15a079702f6f1671257fb28', 'message': 'Test three authentication schemes', 'distinct': True, 'author': {'name': 'Vincent Jacques', 'email': 'vincent@vincent-jacques.net'}}, {'url': 'https://api.github.com/repos/jacquev6/PyGithub/commits/12747613c5ec00deccf296b8619ad507f7050475', 'sha': '12747613c5ec00deccf296b8619ad507f7050475', 'message': 'Test Issue.getComments', 'distinct': True, 'author': {'name': 'Vincent Jacques', 'email': 'vincent@vincent-jacques.net'}}, {'url': 'https://api.github.com/repos/jacquev6/PyGithub/commits/2982fa96c5ca75abe717d974d83f9135d664232e', 'sha': '2982fa96c5ca75abe717d974d83f9135d664232e', 'message': 'Test the new Repository.full_name attribute', 'distinct': True, 'author': {'name': 'Vincent Jacques', 'email': 'vincent@vincent-jacques.net'}}, {'url': 'https://api.github.com/repos/jacquev6/PyGithub/commits/619eae8d51c5988f0d2889fc767fa677438ba95d', 'sha': '619eae8d51c5988f0d2889fc767fa677438ba95d', 'message': 'Improve coverage of AuthenticatedUser', 'distinct': True, 'author': {'name': 'Vincent Jacques', 'email': 'vincent@vincent-jacques.net'}}], 'head': '619eae8d51c5988f0d2889fc767fa677438ba95d', 'push_id': 80673538, 'ref': 'refs/heads/topic/RewriteWithGeneratedCode', 'size': 11}) + self.assertTrue(self.event.public) + self.assertEqual(self.event.repo.name, "jacquev6/PyGithub") + self.assertEqual(self.event.type, "PushEvent") + + # test __repr__() based on this attributes + self.assertEqual(self.event.__repr__(), 'Event(type="PushEvent", id="1556114751")') diff --git a/lib/github/tests/Exceptions.py b/lib/github/tests/Exceptions.py new file mode 100644 index 0000000000..23265c11b7 --- /dev/null +++ b/lib/github/tests/Exceptions.py @@ -0,0 +1,141 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import github +import sys +import pickle + +import Framework + +atLeastPython26 = sys.hexversion >= 0x02060000 +atMostPython2 = sys.hexversion < 0x03000000 + + +class Exceptions(Framework.TestCase): # To stay compatible with Python 2.6, we do not use self.assertRaises with only one argument + def testInvalidInput(self): + raised = False + try: + self.g.get_user().create_key("Bad key", "xxx") + except github.GithubException, exception: + raised = True + self.assertEqual(exception.status, 422) + self.assertEqual( + exception.data, + { + "errors": [ + { + "code": "custom", + "field": "key", + "message": "key is invalid. It must begin with 'ssh-rsa' or 'ssh-dss'. Check that you're copying the public half of the key", + "resource": "PublicKey" + } + ], + "message": "Validation Failed" + } + ) + self.assertTrue(raised) + + def testNonJsonDataReturnedByGithub(self): + # Replay data was forged according to https://github.com/jacquev6/PyGithub/pull/182 + raised = False + try: + self.g.get_user("jacquev6") + except github.GithubException, exception: + raised = True + self.assertEqual(exception.status, 503) + self.assertEqual( + exception.data, + { + "data": "

    503 Service Unavailable

    No server is available to handle this request.", + } + ) + self.assertTrue(raised) + + def testUnknownObject(self): + raised = False + try: + self.g.get_user().get_repo("Xxx") + except github.GithubException, exception: + raised = True + self.assertEqual(exception.status, 404) + self.assertEqual(exception.data, {"message": "Not Found"}) + if atLeastPython26 and atMostPython2: + self.assertEqual(str(exception), "404 {u'message': u'Not Found'}") + else: + self.assertEqual(str(exception), "404 {'message': 'Not Found'}") # pragma no cover (Covered with Python 3) + self.assertTrue(raised) + + def testUnknownUser(self): + raised = False + try: + self.g.get_user("ThisUserShouldReallyNotExist") + except github.GithubException, exception: + raised = True + self.assertEqual(exception.status, 404) + self.assertEqual(exception.data, {"message": "Not Found"}) + if atLeastPython26 and atMostPython2: + self.assertEqual(str(exception), "404 {u'message': u'Not Found'}") + else: + self.assertEqual(str(exception), "404 {'message': 'Not Found'}") # pragma no cover (Covered with Python 3) + self.assertTrue(raised) + + def testBadAuthentication(self): + raised = False + try: + github.Github("BadUser", "BadPassword").get_user().login + except github.GithubException, exception: + raised = True + self.assertEqual(exception.status, 401) + self.assertEqual(exception.data, {"message": "Bad credentials"}) + if atLeastPython26 and atMostPython2: + self.assertEqual(str(exception), "401 {u'message': u'Bad credentials'}") + else: + self.assertEqual(str(exception), "401 {'message': 'Bad credentials'}") # pragma no cover (Covered with Python 3) + self.assertTrue(raised) + + + def testExceptionPickling(self): + pickle.loads(pickle.dumps(github.GithubException('foo', 'bar'))) + + +class SpecificExceptions(Framework.TestCase): + def testBadCredentials(self): + self.assertRaises(github.BadCredentialsException, lambda: github.Github("BadUser", "BadPassword").get_user().login) + + def testUnknownObject(self): + self.assertRaises(github.UnknownObjectException, lambda: self.g.get_user().get_repo("Xxx")) + + def testBadUserAgent(self): + self.assertRaises(github.BadUserAgentException, lambda: github.Github(self.login, self.password, user_agent="").get_user().name) + + def testRateLimitExceeded(self): + g = github.Github() + + def exceed(): + for i in range(100): + g.get_user("jacquev6") + + self.assertRaises(github.RateLimitExceededException, exceed) diff --git a/lib/github/tests/ExposeAllAttributes.py b/lib/github/tests/ExposeAllAttributes.py new file mode 100644 index 0000000000..a75271051a --- /dev/null +++ b/lib/github/tests/ExposeAllAttributes.py @@ -0,0 +1,161 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + + +class ExposeAllAttributes(Framework.TestCase): + def testAllClasses(self): + authenticatedUser = self.g.get_user() + namedUser = self.g.get_user("nvie") + repository = authenticatedUser.get_repo("PyGithub") + organization = self.g.get_organization("BeaverSoftware") + plan = authenticatedUser.plan + branch = repository.get_branch("master") + commit = repository.get_commit("1292bf0e22c796e91cc3d6e24b544aece8c21f2a") + commitStats = commit.stats + commitStatus = commit.get_statuses()[0] + milestone = repository.get_milestone(17) + gist = self.g.get_gist("149016") + gistComment = gist.get_comment(4565) + gistFile = gist.files[".gitignore"] + gistHistoryState = gist.history[0] + gitCommit = repository.get_git_commit("be37b8a7f3a68631c32672dcd84d9eba27438ee6") + gitAuthor = gitCommit.author + gitTree = repository.get_git_tree("6f7c2d8c66d78863f7b91792deaead619799a1ce") + gitTreeElement = gitTree.tree[0] + gitBlob = repository.get_git_blob("681fb61f1761743a02f5c790f1c762cbfe8cfad1") + gitRef = repository.get_git_ref("tags/v1.17.0") + gitObject = gitRef.object + issue = repository.get_issue(188) + issueComment = issue.get_comment(22686536) + issueEvent = issue.get_events()[0] + issuePullRequest = issue.pull_request + gitignoreTemplate = self.g.get_gitignore_template("Python") + team = organization.get_team(141487) + label = repository.get_label("Bug") + pullRequest = repository.get_pull(31) + pullRequestComment = pullRequest.get_review_comment(1580134) + pullRequestPart = pullRequest.base + file = pullRequest.get_files()[0] + commitComment = repository.get_comment(3630301) + status = self.g.get_api_status() + statusMessage = self.g.get_last_api_status_message() + rateLimit = self.g.get_rate_limit() + rate = rateLimit.rate + hook = repository.get_hooks()[0] + hookResponse = hook.last_response + hookDescription = self.g.get_hooks()[0] + comparison = repository.compare("master", "develop") + contentFile = repository.get_file_contents("README.rst") + permissions = repository.permissions + event = repository.get_events()[0] + notification = authenticatedUser.get_notification("8406712") + notificationSubject = notification.subject + + missingAttributes = self.gatherMissingAttributes([ + authenticatedUser, + # authorization, # Security issue if put as-is in ReplayData + # authorizationApplication, # Security issue if put as-is in ReplayData + branch, + commit, + commitComment, + commitStats, + commitStatus, + comparison, + contentFile, + # download, # Deprecated: https://github.com/blog/1302-goodbye-uploads + event, + file, + gist, + gistComment, + gistFile, + gistHistoryState, + gitAuthor, + gitBlob, + gitCommit, + gitignoreTemplate, + gitObject, + gitRef, + # gitTag, + gitTree, + gitTreeElement, + hook, + hookDescription, + hookResponse, + issue, + issueComment, + issueEvent, + issuePullRequest, + label, + milestone, + namedUser, + notification, + notificationSubject, + organization, + permissions, + plan, + pullRequest, + pullRequestComment, + # pullRequestMergeStatus, # Only obtained when merging a pull request through the API + pullRequestPart, + rate, + rateLimit, + repository, + # repositoryKey, # Security issue if put as-is in ReplayData + status, + statusMessage, + # tag, + team, + # userKey, # Security issue if put as-is in ReplayData + ]) + + for className, attributesMissingInClass in sorted(missingAttributes.iteritems()): + for attrName, value in sorted(attributesMissingInClass.iteritems()): + print className, attrName, "->", repr(value) + + self.assertEqual(sum(len(attrs) for attrs in missingAttributes.values()), 0) + + def findMissingAttributes(self, obj): + if hasattr(obj, "update"): + obj.update() + className = obj.__class__.__name__ + missingAttributes = {} + for attribute in obj.raw_data: + if attribute != "_links": + if not hasattr(obj, attribute): + missingAttributes[attribute] = obj.raw_data[attribute] + return (className, missingAttributes) + + def gatherMissingAttributes(self, objs): + allMissingAttributes = dict() + + for obj in objs: + className, attributesMissingInClass = self.findMissingAttributes(obj) + if len(attributesMissingInClass) > 0: + if className not in allMissingAttributes: + allMissingAttributes[className] = dict() + allMissingAttributes[className].update(attributesMissingInClass) + + return allMissingAttributes diff --git a/lib/github/tests/Framework.py b/lib/github/tests/Framework.py new file mode 100644 index 0000000000..9fc2c91901 --- /dev/null +++ b/lib/github/tests/Framework.py @@ -0,0 +1,279 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import os +import sys +import unittest +import httplib +import traceback + +import github + +atLeastPython26 = sys.hexversion >= 0x02060000 +atLeastPython3 = sys.hexversion >= 0x03000000 +atMostPython32 = sys.hexversion < 0x03030000 + +if atLeastPython26: + import json +else: # pragma no cover (Covered by all tests with Python 2.5) + import simplejson as json # pragma no cover (Covered by all tests with Python 2.5) + + +def readLine(file): + if atLeastPython3: + return file.readline().decode("utf-8").strip() + else: + return file.readline().strip() + + +class FakeHttpResponse: + def __init__(self, status, headers, output): + self.status = status + self.__headers = headers + self.__output = output + + def getheaders(self): + return self.__headers + + def read(self): + return self.__output + + +def fixAuthorizationHeader(headers): + if "Authorization" in headers: + if headers["Authorization"].endswith("ZmFrZV9sb2dpbjpmYWtlX3Bhc3N3b3Jk"): + # This special case is here to test the real Authorization header + # sent by PyGithub. It would have avoided issue https://github.com/jacquev6/PyGithub/issues/153 + # because we would have seen that Python 3 was not generating the same + # header as Python 2 + pass + elif headers["Authorization"].startswith("token "): + headers["Authorization"] = "token private_token_removed" + elif headers["Authorization"].startswith("Basic "): + headers["Authorization"] = "Basic login_and_password_removed" + + +class RecordingConnection: # pragma no cover (Class useful only when recording new tests, not used during automated tests) + def __init__(self, file, protocol, host, port, *args, **kwds): + self.__file = file + self.__protocol = protocol + self.__host = host + self.__port = str(port) + self.__cnx = self._realConnection(host, port, *args, **kwds) + + def request(self, verb, url, input, headers): + print verb, url, input, headers, + self.__cnx.request(verb, url, input, headers) + fixAuthorizationHeader(headers) + self.__writeLine(self.__protocol) + self.__writeLine(verb) + self.__writeLine(self.__host) + self.__writeLine(self.__port) + self.__writeLine(url) + self.__writeLine(str(headers)) + self.__writeLine(input.replace('\n', '').replace('\r', '')) + + def getresponse(self): + res = self.__cnx.getresponse() + + status = res.status + print "=>", status + headers = res.getheaders() + output = res.read() + + self.__writeLine(str(status)) + self.__writeLine(str(headers)) + self.__writeLine(str(output)) + + return FakeHttpResponse(status, headers, output) + + def close(self): + self.__writeLine("") + return self.__cnx.close() + + def __writeLine(self, line): + self.__file.write(line + "\n") + + +class RecordingHttpConnection(RecordingConnection): # pragma no cover (Class useful only when recording new tests, not used during automated tests) + _realConnection = httplib.HTTPConnection + + def __init__(self, file, *args, **kwds): + RecordingConnection.__init__(self, file, "http", *args, **kwds) + + +class RecordingHttpsConnection(RecordingConnection): # pragma no cover (Class useful only when recording new tests, not used during automated tests) + _realConnection = httplib.HTTPSConnection + + def __init__(self, file, *args, **kwds): + RecordingConnection.__init__(self, file, "https", *args, **kwds) + + +class ReplayingConnection: + def __init__(self, testCase, file, protocol, host, port, *args, **kwds): + self.__testCase = testCase + self.__file = file + self.__protocol = protocol + self.__host = host + self.__port = str(port) + + def request(self, verb, url, input, headers): + fixAuthorizationHeader(headers) + self.__testCase.assertEqual(self.__protocol, readLine(self.__file)) + self.__testCase.assertEqual(verb, readLine(self.__file)) + self.__testCase.assertEqual(self.__host, readLine(self.__file)) + self.__testCase.assertEqual(self.__port, readLine(self.__file)) + self.__testCase.assertEqual(self.__splitUrl(url), self.__splitUrl(readLine(self.__file))) + self.__testCase.assertEqual(headers, eval(readLine(self.__file))) + expectedInput = readLine(self.__file) + if input.startswith("{"): + self.__testCase.assertEqual(json.loads(input.replace('\n', '').replace('\r', '')), json.loads(expectedInput)) + elif atMostPython32: # @todo Test in all cases, including Python 3.3 + # In Python 3.3, dicts are not output in the same order as in Python 2.5 -> 3.2. + # So, form-data encoding is not deterministic and is difficult to test. + self.__testCase.assertEqual(input.replace('\n', '').replace('\r', ''), expectedInput) + + def __splitUrl(self, url): + splitedUrl = url.split("?") + if len(splitedUrl) == 1: + return splitedUrl + self.__testCase.assertEqual(len(splitedUrl), 2) + base, qs = splitedUrl + return (base, sorted(qs.split("&"))) + + def getresponse(self): + status = int(readLine(self.__file)) + headers = eval(readLine(self.__file)) + output = readLine(self.__file) + + return FakeHttpResponse(status, headers, output) + + def close(self): + readLine(self.__file) + + +def ReplayingHttpConnection(testCase, file, *args, **kwds): + return ReplayingConnection(testCase, file, "http", *args, **kwds) + + +def ReplayingHttpsConnection(testCase, file, *args, **kwds): + return ReplayingConnection(testCase, file, "https", *args, **kwds) + + +class BasicTestCase(unittest.TestCase): + recordMode = False + tokenAuthMode = False + + def setUp(self): + unittest.TestCase.setUp(self) + self.__fileName = "" + self.__file = None + if self.recordMode: # pragma no cover (Branch useful only when recording new tests, not used during automated tests) + github.Requester.Requester.injectConnectionClasses( + lambda ignored, *args, **kwds: RecordingHttpConnection(self.__openFile("wb"), *args, **kwds), + lambda ignored, *args, **kwds: RecordingHttpsConnection(self.__openFile("wb"), *args, **kwds) + ) + import GithubCredentials + self.login = GithubCredentials.login + self.password = GithubCredentials.password + self.oauth_token = GithubCredentials.oauth_token + # @todo Remove client_id and client_secret from ReplayData (as we already remove login, password and oauth_token) + # self.client_id = GithubCredentials.client_id + # self.client_secret = GithubCredentials.client_secret + else: + github.Requester.Requester.injectConnectionClasses( + lambda ignored, *args, **kwds: ReplayingHttpConnection(self, self.__openFile("rb"), *args, **kwds), + lambda ignored, *args, **kwds: ReplayingHttpsConnection(self, self.__openFile("rb"), *args, **kwds) + ) + self.login = "login" + self.password = "password" + self.oauth_token = "oauth_token" + self.client_id = "client_id" + self.client_secret = "client_secret" + + def tearDown(self): + unittest.TestCase.tearDown(self) + self.__closeReplayFileIfNeeded() + github.Requester.Requester.resetConnectionClasses() + + def __openFile(self, mode): + for (_, _, functionName, _) in traceback.extract_stack(): + if functionName.startswith("test") or functionName == "setUp" or functionName == "tearDown": + if functionName != "test": # because in class Hook(Framework.TestCase), method testTest calls Hook.test + fileName = os.path.join(os.path.dirname(__file__), "ReplayData", self.__class__.__name__ + "." + functionName + ".txt") + if fileName != self.__fileName: + self.__closeReplayFileIfNeeded() + self.__fileName = fileName + self.__file = open(self.__fileName, mode) + return self.__file + + def __closeReplayFileIfNeeded(self): + if self.__file is not None: + if not self.recordMode: # pragma no branch (Branch useful only when recording new tests, not used during automated tests) + self.assertEqual(readLine(self.__file), "") + self.__file.close() + + def assertListKeyEqual(self, elements, key, expectedKeys): + realKeys = [key(element) for element in elements] + self.assertEqual(realKeys, expectedKeys) + + def assertListKeyBegin(self, elements, key, expectedKeys): + realKeys = [key(element) for element in elements[: len(expectedKeys)]] + self.assertEqual(realKeys, expectedKeys) + + +class TestCase(BasicTestCase): + def doCheckFrame(self, obj, frame): + if obj._headers == {} and frame is None: + return + if obj._headers is None and frame == {}: + return + self.assertEqual(obj._headers, frame[2]) + + def getFrameChecker(self): + return lambda requester, obj, frame: self.doCheckFrame(obj, frame) + + def setUp(self): + BasicTestCase.setUp(self) + + # Set up frame debugging + github.GithubObject.GithubObject.setCheckAfterInitFlag(True) + github.Requester.Requester.setDebugFlag(True) + github.Requester.Requester.setOnCheckMe(self.getFrameChecker()) + + if self.tokenAuthMode: + self.g = github.Github(self.oauth_token) + else: + self.g = github.Github(self.login, self.password) + + +def activateRecordMode(): # pragma no cover (Function useful only when recording new tests, not used during automated tests) + BasicTestCase.recordMode = True + + +def activateTokenAuthMode(): # pragma no cover (Function useful only when recording new tests, not used during automated tests) + BasicTestCase.tokenAuthMode = True diff --git a/lib/github/tests/Gist.py b/lib/github/tests/Gist.py new file mode 100644 index 0000000000..43aa3394e4 --- /dev/null +++ b/lib/github/tests/Gist.py @@ -0,0 +1,124 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + +import github +import datetime + + +class Gist(Framework.TestCase): + def testAttributes(self): + gist = self.g.get_gist("6296732") + self.assertEqual(gist.comments, 0) + self.assertEqual(gist.created_at, datetime.datetime(2013, 8, 21, 16, 28, 24)) + self.assertEqual(gist.description, "Github API") + self.assertEqual(gist.files.keys(), ["GithubAPI.lua"]) + self.assertEqual(gist.files["GithubAPI.lua"].size, 21229) + self.assertEqual(gist.files["GithubAPI.lua"].filename, "GithubAPI.lua") + self.assertEqual(gist.files["GithubAPI.lua"].language, "Lua") + self.assertEqual(gist.files["GithubAPI.lua"].content[:10], "-- GithubA") + self.assertEqual(gist.files["GithubAPI.lua"].raw_url, "https://gist.githubusercontent.com/jacquev6/6296732/raw/88aafa25fb28e17013054a117354a37f0d78963c/GithubAPI.lua") + self.assertEqual(gist.forks, []) + self.assertEqual(gist.git_pull_url, "https://gist.github.com/6296732.git") + self.assertEqual(gist.git_push_url, "https://gist.github.com/6296732.git") + self.assertEqual(len(gist.history), 1) + self.assertEqual(gist.history[0].change_status.additions, 793) + self.assertEqual(gist.history[0].change_status.deletions, 0) + self.assertEqual(gist.history[0].change_status.total, 793) + self.assertEqual(gist.history[0].committed_at, datetime.datetime(2013, 8, 21, 16, 12, 27)) + self.assertEqual(gist.history[0].url, "https://api.github.com/gists/6296732/c464aecd7fea16684e935607eeea7ae4f8caa0e2") + self.assertEqual(gist.history[0].user, None) + self.assertEqual(gist.history[0].owner.login, "jacquev6") + self.assertEqual(gist.history[0].version, "c464aecd7fea16684e935607eeea7ae4f8caa0e2") + self.assertEqual(gist.html_url, "https://gist.github.com/6296732") + self.assertEqual(gist.id, "6296732") + self.assertTrue(gist.public) + self.assertEqual(gist.updated_at, datetime.datetime(2013, 8, 21, 16, 28, 24)) + self.assertEqual(gist.url, "https://api.github.com/gists/6296732") + self.assertEqual(gist.user, None) + self.assertEqual(gist.owner.login, "jacquev6") + self.assertEqual(gist.git_pull_url, "https://gist.github.com/6296732.git") + self.assertEqual(gist.git_push_url, "https://gist.github.com/6296732.git") + self.assertEqual(gist.html_url, "https://gist.github.com/6296732") + self.assertEqual(gist.url, "https://api.github.com/gists/6296732") + + # test __repr__() based on this attributes + self.assertEqual(gist.__repr__(), 'Gist(id="6296732")') + + def testEditWithoutParameters(self): + gist = self.g.get_gist("2729810") + gist.edit() + self.assertEqual(gist.description, "Gist created by PyGithub") + self.assertEqual(gist.updated_at, datetime.datetime(2012, 5, 19, 7, 0, 58)) + + def testEditWithAllParameters(self): + gist = self.g.get_gist("2729810") + gist.edit("Description edited by PyGithub", {"barbaz.txt": github.InputFileContent("File also created by PyGithub")}) + self.assertEqual(gist.description, "Description edited by PyGithub") + self.assertEqual(gist.updated_at, datetime.datetime(2012, 5, 19, 7, 6, 10)) + self.assertEqual(set(gist.files.keys()), set(["foobar.txt", "barbaz.txt"])) + + def testDeleteFile(self): + gist = self.g.get_gist("5339374") + self.assertEqual(sorted(gist.files.keys()), ["bar.txt", "foo.txt"]) + gist.edit(files={"foo.txt": None}) + self.assertEqual(gist.files.keys(), ["bar.txt"]) + + def testRenameFile(self): + gist = self.g.get_gist("5339374") + self.assertEqual(gist.files.keys(), ["bar.txt"]) + gist.edit(files={"bar.txt": github.InputFileContent(gist.files["bar.txt"].content, new_name="baz.txt")}) + self.assertEqual(gist.files.keys(), ["baz.txt"]) + + def testCreateComment(self): + gist = self.g.get_gist("2729810") + comment = gist.create_comment("Comment created by PyGithub") + self.assertEqual(comment.id, 323629) + + def testGetComments(self): + gist = self.g.get_gist("2729810") + self.assertListKeyEqual(gist.get_comments(), lambda c: c.id, [323637]) + + def testStarring(self): + gist = self.g.get_gist("2729810") + self.assertFalse(gist.is_starred()) + gist.set_starred() + self.assertTrue(gist.is_starred()) + gist.reset_starred() + self.assertFalse(gist.is_starred()) + + def testFork(self): + gist = self.g.get_gist("6296553") # Random gist + myGist = gist.create_fork() + self.assertEqual(myGist.id, "6296732") + self.assertEqual(myGist.fork_of, None) # WTF + sameGist = self.g.get_gist("6296732") + self.assertEqual(sameGist.fork_of.id, "6296553") + + def testDelete(self): + gist = self.g.get_gist("2729810") + gist.delete() diff --git a/lib/github/tests/GistComment.py b/lib/github/tests/GistComment.py new file mode 100644 index 0000000000..80146c42c6 --- /dev/null +++ b/lib/github/tests/GistComment.py @@ -0,0 +1,54 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + +import datetime + + +class GistComment(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.comment = self.g.get_gist("2729810").get_comment(323629) + + def testAttributes(self): + self.assertEqual(self.comment.body, "Comment created by PyGithub") + self.assertEqual(self.comment.created_at, datetime.datetime(2012, 5, 19, 7, 7, 57)) + self.assertEqual(self.comment.id, 323629) + self.assertEqual(self.comment.updated_at, datetime.datetime(2012, 5, 19, 7, 7, 57)) + self.assertEqual(self.comment.url, "https://api.github.com/gists/2729810/comments/323629") + self.assertEqual(self.comment.user.login, "jacquev6") + + # test __repr__() based on this attributes + self.assertEqual(self.comment.__repr__(), 'GistComment(user=NamedUser(login="jacquev6"), id=323629)') + + def testEdit(self): + self.comment.edit("Comment edited by PyGithub") + self.assertEqual(self.comment.body, "Comment edited by PyGithub") + self.assertEqual(self.comment.updated_at, datetime.datetime(2012, 5, 19, 7, 12, 32)) + + def testDelete(self): + self.comment.delete() diff --git a/lib/github/tests/GitBlob.py b/lib/github/tests/GitBlob.py new file mode 100644 index 0000000000..fcbc983c2e --- /dev/null +++ b/lib/github/tests/GitBlob.py @@ -0,0 +1,46 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + + +class GitBlob(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.blob = self.g.get_user().get_repo("PyGithub").get_git_blob("53bce9fa919b4544e67275089b3ec5b44be20667") + + def testAttributes(self): + self.assertTrue(self.blob.content.startswith("IyEvdXNyL2Jpbi9lbnYgcHl0aG9uCgpmcm9tIGRpc3R1dGlscy5jb3JlIGlt\ncG9ydCBzZXR1cAppbXBvcnQgdGV4dHdyYXAKCnNldHVwKAogICAgbmFtZSA9\n")) + self.assertTrue(self.blob.content.endswith("Z3JhbW1pbmcgTGFuZ3VhZ2UgOjogUHl0aG9uIiwKICAgICAgICAiVG9waWMg\nOjogU29mdHdhcmUgRGV2ZWxvcG1lbnQiLAogICAgXSwKKQo=\n")) + self.assertEqual(len(self.blob.content), 1757) + self.assertEqual(self.blob.encoding, "base64") + self.assertEqual(self.blob.size, 1295) + self.assertEqual(self.blob.sha, "53bce9fa919b4544e67275089b3ec5b44be20667") + self.assertEqual(self.blob.url, "https://api.github.com/repos/jacquev6/PyGithub/git/blobs/53bce9fa919b4544e67275089b3ec5b44be20667") + + # test __repr__() based on this attributes + self.assertEqual(self.blob.__repr__(), + 'GitBlob(sha="53bce9fa919b4544e67275089b3ec5b44be20667")') \ No newline at end of file diff --git a/lib/github/tests/GitCommit.py b/lib/github/tests/GitCommit.py new file mode 100644 index 0000000000..2d7c89aeab --- /dev/null +++ b/lib/github/tests/GitCommit.py @@ -0,0 +1,54 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import datetime + +import Framework + + +class GitCommit(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.commit = self.g.get_user().get_repo("PyGithub").get_git_commit("4303c5b90e2216d927155e9609436ccb8984c495") + + def testAttributes(self): + self.assertEqual(self.commit.author.name, "Vincent Jacques") + self.assertEqual(self.commit.author.email, "vincent@vincent-jacques.net") + self.assertEqual(self.commit.author.date, datetime.datetime(2012, 4, 17, 17, 55, 16)) + self.assertEqual(self.commit.committer.name, "Vincent Jacques") + self.assertEqual(self.commit.committer.email, "vincent@vincent-jacques.net") + self.assertEqual(self.commit.committer.date, datetime.datetime(2012, 4, 17, 17, 55, 16)) + self.assertEqual(self.commit.message, "Merge branch 'develop'\n") + self.assertEqual(len(self.commit.parents), 2) + self.assertEqual(self.commit.parents[0].sha, "936f4a97f1a86392637ec002bbf89ff036a5062d") + self.assertEqual(self.commit.parents[1].sha, "2a7e80e6421c5d4d201d60619068dea6bae612cb") + self.assertEqual(self.commit.sha, "4303c5b90e2216d927155e9609436ccb8984c495") + self.assertEqual(self.commit.tree.sha, "f492784d8ca837779650d1fb406a1a3587a764ad") + self.assertEqual(self.commit.url, "https://api.github.com/repos/jacquev6/PyGithub/git/commits/4303c5b90e2216d927155e9609436ccb8984c495") + + # test __repr__() based on this attributes + self.assertEqual(self.commit.__repr__(), + 'GitCommit(sha="4303c5b90e2216d927155e9609436ccb8984c495")') \ No newline at end of file diff --git a/lib/github/tests/GitRef.py b/lib/github/tests/GitRef.py new file mode 100644 index 0000000000..c4c94da4d2 --- /dev/null +++ b/lib/github/tests/GitRef.py @@ -0,0 +1,53 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + + +class GitRef(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.ref = self.g.get_user().get_repo("PyGithub").get_git_ref("heads/BranchCreatedByPyGithub") + + def testAttributes(self): + self.assertEqual(self.ref.object.sha, "1292bf0e22c796e91cc3d6e24b544aece8c21f2a") + self.assertEqual(self.ref.object.type, "commit") + self.assertEqual(self.ref.object.url, "https://api.github.com/repos/jacquev6/PyGithub/git/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a") + self.assertEqual(self.ref.ref, "refs/heads/BranchCreatedByPyGithub") + self.assertEqual(self.ref.url, "https://api.github.com/repos/jacquev6/PyGithub/git/refs/heads/BranchCreatedByPyGithub") + + # test __repr__() based on this attributes + self.assertEqual(self.ref.__repr__(), + 'GitRef(ref="refs/heads/BranchCreatedByPyGithub")') + + def testEdit(self): + self.ref.edit("04cde900a0775b51f762735637bd30de392a2793") + + def testEditWithForce(self): + self.ref.edit("4303c5b90e2216d927155e9609436ccb8984c495", force=True) + + def testDelete(self): + self.ref.delete() diff --git a/lib/github/tests/GitRelease.py b/lib/github/tests/GitRelease.py new file mode 100644 index 0000000000..955aca0afe --- /dev/null +++ b/lib/github/tests/GitRelease.py @@ -0,0 +1,68 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2015 Ed Holland # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework +from pprint import pprint + + +class Release(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + # Do not get self.release here as it casues bad data to be saved in --record mode + + def testAttributes(self): + self.release = self.g.get_user().get_repo("PyGithub").get_releases()[0] + self.assertEqual(self.release.tag_name, "v1.25.2") + self.assertEqual(self.release.upload_url, "https://uploads.github.com/repos/edhollandAL/PyGithub/releases/1210814/assets{?name}") + self.assertEqual(self.release.body, "Body") + self.assertEqual(self.release.title, "Test") + self.assertEqual(self.release.url, "https://api.github.com/repos/edhollandAL/PyGithub/releases/1210814") + self.assertEqual(self.release.author._rawData['login'], "edhollandAL") + + # test __repr__() based on this attributes + self.assertEqual(self.release.__repr__(), 'GitRelease(title="Test")') + + + def testDelete(self): + self.release = self.g.get_user().get_repo("PyGithub").get_releases()[0] + self.assertTrue(self.release.delete_release()) + + def testUpdate(self): + self.release = self.g.get_user().get_repo("PyGithub").get_releases()[0] + new_release = self.release.update_release("Updated Test", "Updated Body") + self.assertEqual(new_release.body, "Updated Body") + self.assertEqual(new_release.title, "Updated Test") + + def testGetRelease(self): + release_by_id = self.g.get_user().get_repo("PyGithub").get_release('v1.25.2') + release_by_tag = self.g.get_user().get_repo("PyGithub").get_release(1210837) + self.assertEqual(release_by_id, release_by_tag) + + def testCreateGitTagAndRelease(self): + self.repo = self.g.get_user().get_repo("PyGithub") + self.release = self.repo.create_git_tag_and_release('v3.0.0', 'tag message', 'release title', 'release message', '5a05a5e58f682d315acd2447c87ac5b4d4fc55e8', 'commit') + self.assertEqual(self.release.tag_name, "v3.0.0") + self.assertEqual(self.release.body, "release message") + self.assertEqual(self.release.title, "release title") + self.assertEqual(self.release.author._rawData['login'], "edhollandAL") diff --git a/lib/github/tests/GitTag.py b/lib/github/tests/GitTag.py new file mode 100644 index 0000000000..44adf3175b --- /dev/null +++ b/lib/github/tests/GitTag.py @@ -0,0 +1,50 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import datetime + +import Framework + + +class GitTag(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.tag = self.g.get_user().get_repo("PyGithub").get_git_tag("f5f37322407b02a80de4526ad88d5f188977bc3c") + + def testAttributes(self): + self.assertEqual(self.tag.message, "Version 0.6\n") + self.assertEqual(self.tag.object.sha, "4303c5b90e2216d927155e9609436ccb8984c495") + self.assertEqual(self.tag.object.type, "commit") + self.assertEqual(self.tag.object.url, "https://api.github.com/repos/jacquev6/PyGithub/git/commits/4303c5b90e2216d927155e9609436ccb8984c495") + self.assertEqual(self.tag.sha, "f5f37322407b02a80de4526ad88d5f188977bc3c") + self.assertEqual(self.tag.tag, "v0.6") + self.assertEqual(self.tag.tagger.date, datetime.datetime(2012, 5, 10, 18, 14, 15)) + self.assertEqual(self.tag.tagger.email, "vincent@vincent-jacques.net") + self.assertEqual(self.tag.tagger.name, "Vincent Jacques") + self.assertEqual(self.tag.url, "https://api.github.com/repos/jacquev6/PyGithub/git/tags/f5f37322407b02a80de4526ad88d5f188977bc3c") + + # test __repr__() based on this attributes + self.assertEqual(self.tag.__repr__(), 'GitTag(tag="v0.6", sha="f5f37322407b02a80de4526ad88d5f188977bc3c")') \ No newline at end of file diff --git a/lib/github/tests/GitTree.py b/lib/github/tests/GitTree.py new file mode 100644 index 0000000000..19f15a83a3 --- /dev/null +++ b/lib/github/tests/GitTree.py @@ -0,0 +1,53 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + + +class GitTree(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.tree = self.g.get_user().get_repo("PyGithub").get_git_tree("f492784d8ca837779650d1fb406a1a3587a764ad") + + def testAttributes(self): + self.assertEqual(self.tree.sha, "f492784d8ca837779650d1fb406a1a3587a764ad") + self.assertEqual(len(self.tree.tree), 11) + self.assertEqual(self.tree.tree[0].mode, "100644") + self.assertEqual(self.tree.tree[0].path, ".gitignore") + self.assertEqual(self.tree.tree[0].sha, "8a9af1462c3f4e3358315c2d2e6ef1e7334c59dd") + self.assertEqual(self.tree.tree[0].size, 53) + self.assertEqual(self.tree.tree[0].type, "blob") + self.assertEqual(self.tree.tree[0].url, "https://api.github.com/repos/jacquev6/PyGithub/git/blobs/8a9af1462c3f4e3358315c2d2e6ef1e7334c59dd") + self.assertEqual(self.tree.tree[6].mode, "040000") + self.assertEqual(self.tree.tree[6].path, "ReplayDataForIntegrationTest") + self.assertEqual(self.tree.tree[6].sha, "60b4602b2c2070246c5df078fb7a5150b45815eb") + self.assertEqual(self.tree.tree[6].size, None) + self.assertEqual(self.tree.tree[6].type, "tree") + self.assertEqual(self.tree.tree[6].url, "https://api.github.com/repos/jacquev6/PyGithub/git/trees/60b4602b2c2070246c5df078fb7a5150b45815eb") + self.assertEqual(self.tree.url, "https://api.github.com/repos/jacquev6/PyGithub/git/trees/f492784d8ca837779650d1fb406a1a3587a764ad") + + # test __repr__() based on this attributes + self.assertEqual(self.tree.__repr__(), 'GitTree(sha="f492784d8ca837779650d1fb406a1a3587a764ad")') \ No newline at end of file diff --git a/lib/github/tests/Github_.py b/lib/github/tests/Github_.py new file mode 100644 index 0000000000..dfc00a802f --- /dev/null +++ b/lib/github/tests/Github_.py @@ -0,0 +1,152 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import datetime + +import Framework + +import github + + +class Github(Framework.TestCase): + def testGetGists(self): + self.assertListKeyBegin(self.g.get_gists(), lambda g: g.id, ["2729695", "2729656", "2729597", "2729584", "2729569", "2729554", "2729543", "2729537", "2729536", "2729533", "2729525", "2729522", "2729519", "2729515", "2729506", "2729487", "2729484", "2729482", "2729441", "2729432", "2729420", "2729398", "2729372", "2729371", "2729351", "2729346", "2729316", "2729304", "2729296", "2729276", "2729272", "2729265", "2729195", "2729160", "2729143", "2729127", "2729119", "2729113", "2729103", "2729069", "2729059", "2729051", "2729029", "2729027", "2729026", "2729022", "2729002", "2728985", "2728979", "2728964", "2728937", "2728933", "2728884", "2728869", "2728866", "2728855", "2728854", "2728853", "2728846", "2728825", "2728814", "2728813", "2728812", "2728805", "2728802", "2728800", "2728798", "2728797", "2728796", "2728793", "2728758", "2728754", "2728751", "2728748", "2728721", "2728716", "2728715", "2728705", "2728701", "2728699", "2728697", "2728688", "2728683", "2728677", "2728649", "2728640", "2728625", "2728620", "2728615", "2728614", "2728565", "2728564", "2728554", "2728523", "2728519", "2728511", "2728497", "2728496", "2728495", "2728487"]) + + def testLegacySearchRepos(self): + repos = self.g.legacy_search_repos("github api v3") + self.assertListKeyBegin(repos, lambda r: r.name, ["github", "octonode", "PyGithub"]) + self.assertEqual(repos[0].full_name, "peter-murach/github") + + # Attributes retrieved from legacy API without lazy completion call + self.assertEqual(repos[2].created_at, datetime.datetime(2012, 2, 25, 12, 53, 47)) + self.assertEqual(repos[2].name, "PyGithub") + self.assertEqual(repos[2].watchers, 365) + self.assertTrue(repos[2].has_downloads) + self.assertEqual(repos[2].homepage, "http://jacquev6.github.io/PyGithub") + self.assertEqual(repos[2].url, "/repos/jacquev6/PyGithub") + self.assertFalse(repos[2].fork) + self.assertTrue(repos[2].has_issues) + self.assertFalse(repos[2].has_wiki) + self.assertEqual(repos[2].forks, 102) + self.assertEqual(repos[2].size, 11373) + self.assertFalse(repos[2].private) + self.assertEqual(repos[2].open_issues, 14) + self.assertEqual(repos[2].pushed_at, datetime.datetime(2014, 3, 16, 17, 1, 56)) + self.assertEqual(repos[2].description, "Python library implementing the full Github API v3") + self.assertEqual(repos[2].language, "Python") + self.assertEqual(repos[2].owner.login, "jacquev6") + self.assertEqual(repos[2].owner.url, "/users/jacquev6") + + def testLegacySearchReposPagination(self): + repos = self.g.legacy_search_repos("document") + self.assertListKeyBegin(repos, lambda r: r.name, ["git", "nimbus", "kss", "sstoolkit", "lawnchair", "appledoc", "jQ.Mobi", "ipython", "mongoengine", "ravendb", "substance", "symfony-docs", "JavaScript-Garden", "DocSets-for-iOS", "yard", "phpDocumentor2", "phpsh", "Tangle", "Ingredients", "documentjs", "xhp", "couchdb-lucene", "dox", "magento2", "javascriptmvc", "FastPdfKit", "roar", "DocumentUp", "NoRM", "jsdoc", "tagger", "mongodb-csharp", "php-github-api", "beautiful-docs", "mongodb-odm", "iodocs", "seesaw", "bcx-api", "developer.github.com", "amqp", "docsplit", "pycco", "standards-and-practices", "tidy-html5", "redis-doc", "tomdoc", "docs", "flourish", "userguide", "swagger-ui", "rfc", "Weasel-Diesel", "yuidoc", "apigen", "document-viewer", "develop.github.com", "Shanty-Mongo", "PTShowcaseViewController", "gravatar_image_tag", "api-wow-docs", "mongoid-tree", "safari-json-formatter", "mayan", "orm-documentation", "jsfiddle-docs-alpha", "core", "documentcloud", "flexible-nav", "writeCapture", "readium", "xmldocument", "Documentation-Examples", "grails-doc", "stdeb", "aws-autoscaling", "voteable_mongo", "review", "spreadsheet_on_rails", "UKSyntaxColoredTextDocument", "mandango", "bdoc", "Documentation", "documents.com", "rghost", "ticket_mule", "vendo", "khan-api", "spring-data-document-examples", "rspec_api_documentation", "axlsx", "phpdox", "documentation", "Sami", "innershiv", "doxyclean", "documents", "rvm-site", "jqapi", "documentation", "hadoopy", "VichUploaderBundle", "pdoc", "documentation", "wii-js", "oss-docs", "scala-maven-plugin", "Documents", "documenter", "behemoth", "documentation", "documentation", "propelorm.github.com", "Kobold2D", "AutoObjectDocumentation", "php-mongodb-admin", "django-mongokit", "puppet-docs", "docs", "Document", "vendorer", "symfony1-docs", "shocco", "documentation", "jog", "docs", "documentation", "documentation", "documentation", "documentation", "Documentation", "documentation", "documentation", "phpunit-documentation", "ADCtheme", "NelmioApiDocBundle", "iCloud-Singleton-CloudMe", "Documentation", "document", "document_mapper", "heroku-docs", "couchdb-odm", "documentation", "documentation", "document", "documentation", "NanoStore", "documentation", "Documentation", "documentation", "Documentation", "documentation", "document", "documentation", "documentation", "Documentation", "Documentation", "grendel", "ceylon-compiler", "mbtiles-spec", "documentation", "documents", "documents", "Documents", "Documentation", "documentation", "Documentation", "documentation", "documents", "Documentation", "documentation", "documentation", "documents", "Documentation", "documentation", "documenter", "documentation", "documents", "Documents", "documents", "documents", "documentation", "Document", "document", "rdoc", "mongoid_token", "travis-ci.github.com", "Documents", "Documents", "documents", "Document", "Documentation", "documents", "Documents", "Documentation", "documents", "documents", "documents", "documentation", "Documents", "Document", "documents", "documents", "Documentation", "Documentation", "Document", "documents", "Documents", "Documents", "Documentation", "Documents", "documents", "Documents", "document", "documents", "Documentation", "Documents", "documents", "documents", "Documents", "documents", "Documentation", "documentation", "Document", "Documents", "documents", "documents", "documents", "Documentation", "Documentation", "Documents", "Documents", "Documents", "Documenter", "document", "Documentation", "Documents", "Documents", "documentation", "documentation", "Document", "Documents", "Documentation", "Documentation", "Documents", "documents", "Documents", "document", "documentation", "Documents", "documentation", "documentation", "documentation", "Documentation", "Documents", "Documents", "documentation", "Documents", "Documents", "documentation", "documentation", "documents", "Documentation", "documents", "documentation", "Documentation", "Documents", "documentation", "documentation", "documents", "documentation", "Umbraco5Docs", "documents", "Documents", "Documentation", "documents", "document", "documents", "document", "documents", "documentation", "Documents", "documents", "document", "Documents", "Documentation", "Documentation", "documentation", "Documentation", "document", "documentation", "documents", "documents", "Documentations", "document", "documentation", "Documentation", "Document", "Documents", "Documents", "Document"]) + + def testLegacySearchReposExplicitPagination(self): + repos = self.g.legacy_search_repos("python") + self.assertEqual([r.name for r in repos.get_page(4)], ["assetic", "cartodb", "cuisine", "gae-sessions", "geoalchemy2", "Multicorn", "wmfr-timeline", "redis-rdb-tools", "applet-workflows", "TweetBuff", "groovy-core", "StarTrekGame", "Nuevo", "Cupid", "node-sqlserver", "Magnet2Torrent", "GroundControl", "mock-django", "4bit", "mock-django", "Fabulous", "SFML", "pydicas", "flixel", "up", "mongrel2", "SimpleHTTPServerJs", "ultimos", "Archipel", "JSbooks", "nova", "nodebox", "simplehttp", "dablooms", "solarized", "landslide", "jQuery-File-Upload", "jQuery-File-Upload", "jQuery-File-Upload", "password-manager", "electrum", "twitter_nlp", "djangbone", "pyxfst", "node-gyp", "flare", "www.gittip.com", "wymeditor", "Kokobox", "MyCQ", "runwalk", "git-sweep", "HPCPythonSC2012", "sundown", "node2dm", "statirator", "fantastic-futures", "chainsaw", "itcursos-gerenciador-tarefas", "TideSDK", "genmaybot", "melpa", "ConnectedWire", "tarantool", "anserindicus_sn", "luvit", "Minecraft-Overviewer", "Iconic", "pyist.net", "wikibok", "mejorenvo-scraper", "NewsBlur", "SocketRocket", "spf13-vim", "IWantToWorkAtGloboCom", "ruby-style-guide", "aery32-refguide", "fafsite", "compsense_demo", "enaml", "mpi4py", "fi.pycon.org", "scikits-image", "scikits-image", "uni", "mako.vim", "mako.vim", "slumber", "de-composer", "nvm", "helloshopply", "Alianza", "vimfiles", "socorro-crashstats", "menu", "analytics", "elFinder", "riak_wiki", "livestreamer", "git-goggles"]) + + def testLegacySearchReposWithLanguage(self): + repos = self.g.legacy_search_repos("document", language="Python") + self.assertListKeyBegin(repos, lambda r: r.name, ["ipython", "mongoengine", "tagger"]) + self.assertEqual(repos[0].full_name, "ipython/ipython") + + def testLegacySearchUsers(self): + users = self.g.legacy_search_users("vincent") + self.assertListKeyBegin(users, lambda u: u.login, ["nvie", "obra", "lusis"]) + + # Attributes retrieved from legacy API without lazy completion call + self.assertEqual(users[0].gravatar_id, "c5a7f21b46df698f3db31c37ed0cf55a") + self.assertEqual(users[0].name, "Vincent Driessen") + self.assertEqual(users[0].created_at, datetime.datetime(2009, 5, 12, 21, 19, 38)) + self.assertEqual(users[0].location, "Netherlands") + self.assertEqual(users[0].followers, 310) + self.assertEqual(users[0].public_repos, 63) + self.assertEqual(users[0].login, "nvie") + + def testLegacySearchUsersPagination(self): + self.assertEqual(len(list(self.g.legacy_search_users("Lucy"))), 146) + + def testLegacySearchUsersExplicitPagination(self): + users = self.g.legacy_search_users("Lucy") + self.assertEqual([u.login for u in users.get_page(1)], ["lucievh", "lucyim", "Lucief", "RevolverUpstairs", "seriousprogramming", "reicul", "davincidubai", "LucianaNascimentodoPrado", "lucia-huenchunao", "kraji20", "Lucywolo", "Luciel", "sunnysummer", "elush", "oprealuci", "Flika", "lsher", "datadrivenjournalism", "nill2020", "doobi", "lucilu", "deldeldel", "lucianacocca", "lucyli-sfdc", "lucysatchell", "UBM", "kolousek", "lucyzhang", "lmegia", "luisolivo", "Lucyzhen", "Luhzinha", "beautifly", "lucybm96", "BuonocoreL", "lucywilliams", "ZxOxZ", "Motwinb", "johnlucy", "Aquanimation", "alaltaieri", "lucylin", "lucychambers", "JuanSesma", "cdwwebware", "ZachWills"]) + + def testLegacySearchUserByEmail(self): + user = self.g.legacy_search_user_by_email("vincent@vincent-jacques.net") + self.assertEqual(user.login, "jacquev6") + self.assertEqual(user.followers, 13) + + def testGetHooks(self): + hooks = self.g.get_hooks() + hook = hooks[0] + self.assertEqual(hook.name, "activecollab") + self.assertEqual(hook.supported_events, ["push"]) + self.assertEqual(hook.events, ["push"]) + self.assertEqual(hook.schema, [["string", "url"], ["string", "token"], ["string", "project_id"], ["string", "milestone_id"], ["string", "category_id"]]) + + def testGetEmojis(self): + emojis = self.g.get_emojis() + first = emojis.get("+1") + self.assertEqual(first, "https://github.global.ssl.fastly.net/images/icons/emoji/+1.png?v5") + + def testGetHook(self): + hook = self.g.get_hook("activecollab") + self.assertEqual(hook.name, "activecollab") + self.assertEqual(hook.supported_events, ["push"]) + self.assertEqual(hook.events, ["push"]) + self.assertEqual(hook.schema, [["string", "url"], ["string", "token"], ["string", "project_id"], ["string", "milestone_id"], ["string", "category_id"]]) + + def testGetRepoFromFullName(self): + self.assertEqual(self.g.get_repo("jacquev6/PyGithub").description, "Python library implementing the full Github API v3") + + def testGetRepoFromId(self): + self.assertEqual(self.g.get_repo(3544490).description, "Python library implementing the full Github API v3") + + def testGetGitignoreTemplates(self): + self.assertEqual(self.g.get_gitignore_templates(), ["Actionscript", "Android", "AppceleratorTitanium", "Autotools", "Bancha", "C", "C++", "CFWheels", "CMake", "CSharp", "CakePHP", "Clojure", "CodeIgniter", "Compass", "Concrete5", "Coq", "Delphi", "Django", "Drupal", "Erlang", "ExpressionEngine", "Finale", "ForceDotCom", "FuelPHP", "GWT", "Go", "Grails", "Haskell", "Java", "Jboss", "Jekyll", "Joomla", "Jython", "Kohana", "LaTeX", "Leiningen", "LemonStand", "Lilypond", "Lithium", "Magento", "Maven", "Node", "OCaml", "Objective-C", "Opa", "OracleForms", "Perl", "PlayFramework", "Python", "Qooxdoo", "Qt", "R", "Rails", "RhodesRhomobile", "Ruby", "Scala", "Sdcc", "SeamGen", "SketchUp", "SugarCRM", "Symfony", "Symfony2", "SymphonyCMS", "Target3001", "Tasm", "Textpattern", "TurboGears2", "Unity", "VB.Net", "Waf", "Wordpress", "Yii", "ZendFramework", "gcov", "nanoc", "opencart"]) + + def testGetGitignoreTemplate(self): + t = self.g.get_gitignore_template("Python") + self.assertEqual(t.name, "Python") + self.assertEqual(t.source, "*.py[cod]\n\n# C extensions\n*.so\n\n# Packages\n*.egg\n*.egg-info\ndist\nbuild\neggs\nparts\nbin\nvar\nsdist\ndevelop-eggs\n.installed.cfg\nlib\nlib64\n\n# Installer logs\npip-log.txt\n\n# Unit test / coverage reports\n.coverage\n.tox\nnosetests.xml\n\n# Translations\n*.mo\n\n# Mr Developer\n.mr.developer.cfg\n.project\n.pydevproject\n") + + t = self.g.get_gitignore_template("C++") + self.assertEqual(t.name, "C++") + self.assertEqual(t.source, "# Compiled Object files\n*.slo\n*.lo\n*.o\n\n# Compiled Dynamic libraries\n*.so\n*.dylib\n\n# Compiled Static libraries\n*.lai\n*.la\n*.a\n") + + def testStringOfNotSet(self): + self.assertEqual(str(github.GithubObject.NotSet), "NotSet") + + def testGetUsers(self): + self.assertListKeyBegin(self.g.get_users(), lambda u: u.login, ["mojombo", "defunkt", "pjhyett", "wycats", "ezmobius", "ivey", "evanphx", "vanpelt", "wayneeseguin", "brynary", "kevinclark", "technoweenie", "macournoyer", "takeo", "Caged", "topfunky", "anotherjesse", "roland", "lukas", "fanvsfan", "tomtt", "railsjitsu", "nitay", "kevwil", "KirinDave", "jamesgolick", "atmos", "errfree", "mojodna", "bmizerany", "jnewland", "joshknowles", "hornbeck", "jwhitmire", "elbowdonkey", "reinh", "timocratic", "bs", "rsanheim", "schacon", "uggedal", "bruce", "sam", "mmower", "abhay", "rabble", "benburkert", "indirect", "fearoffish", "ry", "engineyard", "jsierles", "tweibley", "peimei", "brixen", "tmornini", "outerim", "daksis", "sr", "lifo", "rsl", "imownbey", "dylanegan", "jm", "willcodeforfoo", "jvantuyl", "BrianTheCoder", "freeformz", "hassox", "automatthew", "queso", "lancecarlson", "drnic", "lukesutton", "danwrong", "hcatlin", "jfrost", "mattetti", "ctennis", "lawrencepit", "marcjeanson", "grempe", "peterc", "ministrycentered", "afarnham", "up_the_irons", "evilchelu", "heavysixer", "brosner", "danielmorrison", "danielharan", "kvnsmth", "collectiveidea", "canadaduane", "nate", "dstrelau", "sunny", "dkubb", "jnicklas", "richcollins", "simonjefford"]) + + def testGetUsersSince(self): + self.assertListKeyBegin(self.g.get_users(since=1000), lambda u: u.login, ["sbecker"]) + + def testGetRepos(self): + self.assertListKeyBegin(self.g.get_repos(), lambda r: r.name, ["grit", "merb-core", "rubinius", "god", "jsawesome", "jspec", "exception_logger", "ambition"]) + + def testGetReposSince(self): + self.assertListKeyBegin(self.g.get_repos(since=1000), lambda r: r.name, ["jquery-humanize-messages-plugin", "4slicer", "fixture-scenarios", "mongrel_proctitle", "rails-plugins"]) diff --git a/lib/github/tests/Hook.py b/lib/github/tests/Hook.py new file mode 100644 index 0000000000..df5f682e49 --- /dev/null +++ b/lib/github/tests/Hook.py @@ -0,0 +1,72 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + +import datetime + + +class Hook(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.hook = self.g.get_user().get_repo("PyGithub").get_hook(257993) + + def testAttributes(self): + self.assertTrue(self.hook.active) # WTF + self.assertEqual(self.hook.config, {"url": "http://foobar.com"}) + self.assertEqual(self.hook.created_at, datetime.datetime(2012, 5, 19, 6, 1, 45)) + self.assertEqual(self.hook.events, ["push"]) + self.assertEqual(self.hook.id, 257993) + self.assertEqual(self.hook.last_response.status, "ok") + self.assertEqual(self.hook.last_response.message, "OK") + self.assertEqual(self.hook.last_response.code, 200) + self.assertEqual(self.hook.name, "web") + self.assertEqual(self.hook.updated_at, datetime.datetime(2012, 5, 29, 18, 49, 47)) + self.assertEqual(self.hook.url, "https://api.github.com/repos/jacquev6/PyGithub/hooks/257993") + + # test __repr__() based on this attributes + self.assertEqual(self.hook.__repr__(), 'Hook(url="https://api.github.com/repos/jacquev6/PyGithub/hooks/257993", id=257993)') + + def testEditWithMinimalParameters(self): + self.hook.edit("web", {"url": "http://foobar.com/hook"}) + self.assertEqual(self.hook.config, {"url": "http://foobar.com/hook"}) + self.assertEqual(self.hook.updated_at, datetime.datetime(2012, 5, 19, 5, 8, 16)) + + def testDelete(self): + self.hook.delete() + + def testTest(self): + self.hook.test() # This does not update attributes of hook + + def testEditWithAllParameters(self): + self.hook.edit("web", {"url": "http://foobar.com"}, events=["fork", "push"]) + self.assertEqual(self.hook.events, ["fork", "push"]) + self.hook.edit("web", {"url": "http://foobar.com"}, add_events=["push"]) + self.assertEqual(self.hook.events, ["fork", "push"]) + self.hook.edit("web", {"url": "http://foobar.com"}, remove_events=["fork"]) + self.assertEqual(self.hook.events, ["push"]) + self.hook.edit("web", {"url": "http://foobar.com"}, active=True) + self.assertTrue(self.hook.active) diff --git a/lib/github/tests/Issue.py b/lib/github/tests/Issue.py new file mode 100644 index 0000000000..2c8d8056c3 --- /dev/null +++ b/lib/github/tests/Issue.py @@ -0,0 +1,141 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Stuart Glaser # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + +import datetime + + +class Issue(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.repo = self.g.get_user().get_repo("PyGithub") + self.issue = self.repo.get_issue(28) + + def testAttributes(self): + self.assertEqual(self.issue.assignee.login, "jacquev6") + self.assertEqual(self.issue.body, "Body edited by PyGithub") + self.assertEqual(self.issue.closed_at, datetime.datetime(2012, 5, 26, 14, 59, 33)) + self.assertEqual(self.issue.closed_by.login, "jacquev6") + self.assertEqual(self.issue.comments, 0) + self.assertEqual(self.issue.created_at, datetime.datetime(2012, 5, 19, 10, 38, 23)) + self.assertEqual(self.issue.html_url, "https://github.com/jacquev6/PyGithub/issues/28") + self.assertEqual(self.issue.id, 4653757) + self.assertListKeyEqual(self.issue.labels, lambda l: l.name, ["Bug", "Project management", "Question"]) + self.assertEqual(self.issue.milestone.title, "Version 0.4") + self.assertEqual(self.issue.number, 28) + self.assertEqual(self.issue.pull_request.diff_url, None) + self.assertEqual(self.issue.pull_request.patch_url, None) + self.assertEqual(self.issue.pull_request.html_url, None) + self.assertEqual(self.issue.state, "closed") + self.assertEqual(self.issue.title, "Issue created by PyGithub") + self.assertEqual(self.issue.updated_at, datetime.datetime(2012, 5, 26, 14, 59, 33)) + self.assertEqual(self.issue.url, "https://api.github.com/repos/jacquev6/PyGithub/issues/28") + self.assertEqual(self.issue.user.login, "jacquev6") + self.assertEqual(self.issue.repository.name, "PyGithub") + + # test __repr__() based on this attributes + self.assertEqual(self.issue.__repr__(), 'Issue(title="Issue created by PyGithub", number=28)') + + def testEditWithoutParameters(self): + self.issue.edit() + + def testEditWithAllParameters(self): + user = self.g.get_user("jacquev6") + milestone = self.repo.get_milestone(2) + self.issue.edit("Title edited by PyGithub", "Body edited by PyGithub", user, "open", milestone, ["Bug"], ["assigned1", "assigned2"]) + self.assertEqual(self.issue.assignee.login, "jacquev6") + self.assertEqual(self.issue.body, "Body edited by PyGithub") + self.assertEqual(self.issue.state, "open") + self.assertEqual(self.issue.title, "Title edited by PyGithub") + self.assertListKeyEqual(self.issue.labels, lambda l: l.name, ["Bug"]) + + def testEditResetMilestone(self): + self.assertEqual(self.issue.milestone.title, "Version 0.4") + self.issue.edit(milestone=None) + self.assertEqual(self.issue.milestone, None) + + def testEditResetAssignee(self): + self.assertEqual(self.issue.assignee.login, "jacquev6") + self.issue.edit(assignee=None) + self.assertEqual(self.issue.assignee, None) + + def testCreateComment(self): + comment = self.issue.create_comment("Comment created by PyGithub") + self.assertEqual(comment.id, 5808311) + + def testGetComments(self): + self.assertListKeyEqual(self.issue.get_comments(), lambda c: c.user.login, ["jacquev6", "roskakori"]) + + def testGetCommentsSince(self): + self.assertListKeyEqual(self.issue.get_comments(datetime.datetime(2012, 5, 26, 13, 59, 33)), lambda c: c.user.login, ["jacquev6", "roskakori"]) + + def testGetEvents(self): + self.assertListKeyEqual(self.issue.get_events(), lambda e: e.id, [15819975, 15820048]) + + def testGetLabels(self): + self.assertListKeyEqual(self.issue.get_labels(), lambda l: l.name, ["Bug", "Project management", "Question"]) + + def testAddAndRemoveLabels(self): + bug = self.repo.get_label("Bug") + question = self.repo.get_label("Question") + self.assertListKeyEqual(self.issue.get_labels(), lambda l: l.name, ["Bug", "Project management", "Question"]) + self.issue.remove_from_labels(bug) + self.assertListKeyEqual(self.issue.get_labels(), lambda l: l.name, ["Project management", "Question"]) + self.issue.remove_from_labels(question) + self.assertListKeyEqual(self.issue.get_labels(), lambda l: l.name, ["Project management"]) + self.issue.add_to_labels(bug, question) + self.assertListKeyEqual(self.issue.get_labels(), lambda l: l.name, ["Bug", "Project management", "Question"]) + + def testAddAndRemoveLabelsWithStringArguments(self): + bug = "Bug" + question = "Question" + self.assertListKeyEqual(self.issue.get_labels(), lambda l: l.name, ["Bug", "Project management", "Question"]) + self.issue.remove_from_labels(bug) + self.assertListKeyEqual(self.issue.get_labels(), lambda l: l.name, ["Project management", "Question"]) + self.issue.remove_from_labels(question) + self.assertListKeyEqual(self.issue.get_labels(), lambda l: l.name, ["Project management"]) + self.issue.add_to_labels(bug, question) + self.assertListKeyEqual(self.issue.get_labels(), lambda l: l.name, ["Bug", "Project management", "Question"]) + + def testDeleteAndSetLabels(self): + bug = self.repo.get_label("Bug") + question = self.repo.get_label("Question") + self.assertListKeyEqual(self.issue.get_labels(), lambda l: l.name, ["Bug", "Project management", "Question"]) + self.issue.delete_labels() + self.assertListKeyEqual(self.issue.get_labels(), None, []) + self.issue.set_labels(bug, question) + self.assertListKeyEqual(self.issue.get_labels(), lambda l: l.name, ["Bug", "Question"]) + + def testDeleteAndSetLabelsWithStringArguments(self): + bug = "Bug" + question = "Question" + self.assertListKeyEqual(self.issue.get_labels(), lambda l: l.name, ["Bug", "Project management", "Question"]) + self.issue.delete_labels() + self.assertListKeyEqual(self.issue.get_labels(), None, []) + self.issue.set_labels(bug, question) + self.assertListKeyEqual(self.issue.get_labels(), lambda l: l.name, ["Bug", "Question"]) diff --git a/lib/github/tests/Issue131.py b/lib/github/tests/Issue131.py new file mode 100644 index 0000000000..b9ef0190e8 --- /dev/null +++ b/lib/github/tests/Issue131.py @@ -0,0 +1,51 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + + +class Issue131(Framework.TestCase): # https://github.com/jacquev6/PyGithub/pull/133 + def setUp(self): + Framework.TestCase.setUp(self) + self.user = self.g.get_user() + self.repo = self.g.get_user("openmicroscopy").get_repo("ome-documentation") + + def testGetPullWithOrgHeadUser(self): + user = self.repo.get_pull(204).head.user + self.assertEqual(user.login, 'imcf') + self.assertEqual(user.type, 'Organization') + self.assertEqual(user.__class__.__name__, 'NamedUser') # Should be Organization + + def testGetPullsWithOrgHeadUser(self): + for pull in self.repo.get_pulls('closed'): + if pull.number == 204: + user = pull.head.user + self.assertEqual(user, None) + # Should be: + # self.assertEqual(user.login, 'imcf') + # self.assertEqual(user.type, 'Organization') + # self.assertEqual(user.__class__.__name__, 'NamedUser') # Should be Organization + break + else: + self.assertTrue(False) diff --git a/lib/github/tests/Issue133.py b/lib/github/tests/Issue133.py new file mode 100644 index 0000000000..11c36b7b0e --- /dev/null +++ b/lib/github/tests/Issue133.py @@ -0,0 +1,34 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + + +class Issue133(Framework.TestCase): # https://github.com/jacquev6/PyGithub/pull/133 + def setUp(self): + Framework.TestCase.setUp(self) + self.user = self.g.get_user() + + def testGetPageWithoutInitialArguments(self): + self.assertEqual(len(self.user.get_followers().get_page(0)), 22) diff --git a/lib/github/tests/Issue134.py b/lib/github/tests/Issue134.py new file mode 100644 index 0000000000..fa02deee54 --- /dev/null +++ b/lib/github/tests/Issue134.py @@ -0,0 +1,48 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework +import github + + +class Issue134(Framework.BasicTestCase): # https://github.com/jacquev6/PyGithub/pull/134 + def testGetAuthorizationsFailsWhenAutenticatedThroughOAuth(self): + g = github.Github(self.oauth_token) + raised = False + try: + list(g.get_user().get_authorizations()) + except github.GithubException, exception: + raised = True + self.assertEqual(exception.status, 404) + self.assertTrue(raised) + + def testGetAuthorizationsSucceedsWhenAutenticatedThroughLoginPassword(self): + g = github.Github(self.login, self.password) + self.assertListKeyEqual(g.get_user().get_authorizations(), lambda a: a.note, [None, None, 'cligh', None, None, 'GitHub Android App']) + + def testGetOAuthScopesFromHeader(self): + g = github.Github(self.oauth_token) + self.assertEqual(g.oauth_scopes, None) + g.get_user().name + self.assertEqual(g.oauth_scopes, ['repo', 'user', 'gist']) diff --git a/lib/github/tests/Issue139.py b/lib/github/tests/Issue139.py new file mode 100644 index 0000000000..f0def0e7ba --- /dev/null +++ b/lib/github/tests/Issue139.py @@ -0,0 +1,38 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework +import github + + +class Issue139(Framework.TestCase): # https://github.com/jacquev6/PyGithub/issues/139 + def setUp(self): + Framework.TestCase.setUp(self) + self.user = self.g.get_user().get_repo("PyGithub").get_issue(139).user + + def testCompletion(self): + self.assertFalse(self.user._CompletableGithubObject__completed) + self.assertEqual(self.user.name, "Ian Ozsvald") + self.assertTrue(self.user._CompletableGithubObject__completed) + self.assertEqual(self.user.plan, None) diff --git a/lib/github/tests/Issue140.py b/lib/github/tests/Issue140.py new file mode 100644 index 0000000000..f8c326700c --- /dev/null +++ b/lib/github/tests/Issue140.py @@ -0,0 +1,54 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework +import github + + +class Issue140(Framework.TestCase): # https://github.com/jacquev6/PyGithub/issues/140 + def setUp(self): + Framework.TestCase.setUp(self) + self.repo = self.g.get_repo("twitter/bootstrap") + + def testGetDirContentsThenLazyCompletionOfFile(self): + contents = self.repo.get_dir_contents("/js") + self.assertEqual(len(contents), 15) + n = 0 + for content in contents: + if content.path == "js/bootstrap-affix.js": + self.assertEqual(len(content.content), 4722) # Lazy completion + n += 1 + elif content.path == "js/tests": + self.assertEqual(content.content, None) # No completion at all + n += 1 + self.assertEqual(n, 2) + + def testGetFileContents(self): + contents = self.repo.get_file_contents("/js/bootstrap-affix.js") + self.assertEqual(contents.encoding, "base64") + self.assertEqual(contents.url, "https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-affix.js") + self.assertEqual(len(contents.content), 4722) + + def testGetDirContentsWithRef(self): + self.assertEqual(len(self.repo.get_dir_contents("/js", "8c7f9c66a7d12f47f50618ef420868fe836d0c33")), 15) diff --git a/lib/github/tests/Issue142.py b/lib/github/tests/Issue142.py new file mode 100644 index 0000000000..fb2085be60 --- /dev/null +++ b/lib/github/tests/Issue142.py @@ -0,0 +1,33 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import unittest +import github + + +class Issue142(unittest.TestCase): # https://github.com/jacquev6/PyGithub/issues/142 + def testDecodeJson(self): + # This test has to hit GitHub for real, because the record-replay framework looses types + # and python3 does not behave like python2 for strings and bytes + self.assertEqual(github.Github().get_rate_limit().rate.limit, 60) diff --git a/lib/github/tests/Issue158.py b/lib/github/tests/Issue158.py new file mode 100644 index 0000000000..a6ce61aead --- /dev/null +++ b/lib/github/tests/Issue158.py @@ -0,0 +1,33 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework +import github + + +class Issue158(Framework.TestCase): # https://github.com/jacquev6/PyGithub/issues/158 + # Warning: I don't have a scret key, so the requests for this test are forged + def testPaginationWithSecretKeyAuthentication(self): + g = github.Github(client_id=self.client_id, client_secret=self.client_secret) + self.assertListKeyEqual(g.get_organization("BeaverSoftware").get_repos("public"), lambda r: r.name, ["FatherBeaver", "PyGithub"]) diff --git a/lib/github/tests/Issue174.py b/lib/github/tests/Issue174.py new file mode 100644 index 0000000000..f1c7b03cc5 --- /dev/null +++ b/lib/github/tests/Issue174.py @@ -0,0 +1,36 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework +import github + + +class Issue174(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.repo = self.g.get_repo("twitter/bootstrap") + + def testGetDirContentsWhithHttpRedirect(self): + contents = self.repo.get_dir_contents("/js/") + self.assertEqual(len(contents), 15) diff --git a/lib/github/tests/Issue214.py b/lib/github/tests/Issue214.py new file mode 100644 index 0000000000..0d1243b2da --- /dev/null +++ b/lib/github/tests/Issue214.py @@ -0,0 +1,70 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import github + +import Framework + + +class Issue214(Framework.TestCase): # https://github.com/jacquev6/PyGithub/issues/214 + def setUp(self): + Framework.TestCase.setUp(self) + self.repo = self.g.get_user().get_repo("PyGithub") + self.issue = self.repo.get_issue(1) + + def testAssignees(self): + self.assertTrue(self.repo.has_in_assignees('farrd')) + self.assertFalse(self.repo.has_in_assignees('fake')) + + def testCollaborators(self): + self.assertTrue(self.repo.has_in_collaborators('farrd')) + self.assertFalse(self.repo.has_in_collaborators('fake')) + + self.assertFalse(self.repo.has_in_collaborators('marcmenges')) + self.repo.add_to_collaborators('marcmenges') + self.assertTrue(self.repo.has_in_collaborators('marcmenges')) + + self.repo.remove_from_collaborators('marcmenges') + self.assertFalse(self.repo.has_in_collaborators('marcmenges')) + + def testEditIssue(self): + self.assertEqual(self.issue.assignee, None) + + self.issue.edit(assignee='farrd') + self.assertEqual(self.issue.assignee.login, 'farrd') + + self.issue.edit(assignee=None) + self.assertEqual(self.issue.assignee, None) + + def testCreateIssue(self): + issue = self.repo.create_issue("Issue created by PyGithub", assignee='farrd') + self.assertEqual(issue.assignee.login, 'farrd') + + def testGetIssues(self): + issues = self.repo.get_issues(assignee='farrd') + + for issue in issues: + self.assertEqual(issue.assignee.login, 'farrd') diff --git a/lib/github/tests/Issue216.py b/lib/github/tests/Issue216.py new file mode 100644 index 0000000000..ded2a16670 --- /dev/null +++ b/lib/github/tests/Issue216.py @@ -0,0 +1,37 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework +import github + + +# Replay data forged by capitalizing headers from PaginatedList.setUp.txt and PaginatedList.testIteration.txt +class Issue216(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.repo = self.g.get_user("openframeworks").get_repo("openFrameworks") + self.list = self.repo.get_issues() + + def testIteration(self): + self.assertEqual(len(list(self.list)), 333) diff --git a/lib/github/tests/Issue278.py b/lib/github/tests/Issue278.py new file mode 100644 index 0000000000..2255d9c52a --- /dev/null +++ b/lib/github/tests/Issue278.py @@ -0,0 +1,36 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + + +# Replay data forged by adding nulls to PaginatedList.setUp.txt and PaginatedList.testIteration.txt +class Issue278(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.repo = self.g.get_user("openframeworks").get_repo("openFrameworks") + self.list = self.repo.get_issues() + + def testIteration(self): + self.assertEqual(len(list(self.list)), 333) diff --git a/lib/github/tests/Issue33.py b/lib/github/tests/Issue33.py new file mode 100644 index 0000000000..a9e7ad8f80 --- /dev/null +++ b/lib/github/tests/Issue33.py @@ -0,0 +1,39 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + + +class Issue33(Framework.TestCase): # https://github.com/jacquev6/PyGithub/issues/33 + def setUp(self): + Framework.TestCase.setUp(self) + self.repo = self.g.get_user("openframeworks").get_repo("openFrameworks") + + def testOpenIssues(self): + self.assertEqual(len(list(self.repo.get_issues())), 338) + + def testClosedIssues(self): + self.assertEqual(len(list(self.repo.get_issues(state="closed"))), 950) diff --git a/lib/github/tests/Issue50.py b/lib/github/tests/Issue50.py new file mode 100644 index 0000000000..fd95abaf5f --- /dev/null +++ b/lib/github/tests/Issue50.py @@ -0,0 +1,71 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import github + +import Framework + + +class Issue50(Framework.TestCase): # https://github.com/jacquev6/PyGithub/issues/50 + def setUp(self): + Framework.TestCase.setUp(self) + self.repo = self.g.get_user().get_repo("PyGithub") + self.issue = self.repo.get_issue(50) + self.labelName = "Label with spaces and strange characters (&*#$)" + + def testCreateLabel(self): + label = self.repo.create_label(self.labelName, "ffff00") + self.assertEqual(label.name, self.labelName) + + def testGetLabel(self): + label = self.repo.get_label(self.labelName) + self.assertEqual(label.name, self.labelName) + + def testGetLabels(self): + self.assertListKeyEqual(self.repo.get_labels(), lambda l: l.name, ["Refactoring", "Public interface", "Functionalities", "Project management", "Bug", "Question", "RequestedByUser", self.labelName]) + + def testAddLabelToIssue(self): + self.issue.add_to_labels(self.repo.get_label(self.labelName)) + + def testRemoveLabelFromIssue(self): + self.issue.remove_from_labels(self.repo.get_label(self.labelName)) + + def testSetIssueLabels(self): + self.issue.set_labels(self.repo.get_label("Bug"), self.repo.get_label("RequestedByUser"), self.repo.get_label(self.labelName)) + + def testIssueLabels(self): + self.assertListKeyEqual(self.issue.labels, lambda l: l.name, ["Bug", self.labelName, "RequestedByUser"]) + + def testIssueGetLabels(self): + self.assertListKeyEqual(self.issue.get_labels(), lambda l: l.name, ["Bug", self.labelName, "RequestedByUser"]) + + def testGetIssuesWithLabel(self): + self.assertListKeyEqual(self.repo.get_issues(labels=[self.repo.get_label(self.labelName)]), lambda i: i.number, [52, 50]) + + def testCreateIssueWithLabel(self): + issue = self.repo.create_issue("Issue created by PyGithub to test issue #50", labels=[self.repo.get_label(self.labelName)]) + self.assertListKeyEqual(issue.labels, lambda l: l.name, [self.labelName]) + self.assertEqual(issue.number, 52) diff --git a/lib/github/tests/Issue54.py b/lib/github/tests/Issue54.py new file mode 100644 index 0000000000..cf0287d6d6 --- /dev/null +++ b/lib/github/tests/Issue54.py @@ -0,0 +1,40 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import datetime + +import Framework + + +class Issue54(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.repo = self.g.get_user().get_repo("TestRepo") + + def testConversion(self): + commit = self.repo.get_git_commit("73f320ae06cd565cf38faca34b6a482addfc721b") + self.assertEqual(commit.message, "Test commit created around Fri, 13 Jul 2012 18:43:21 GMT, that is vendredi 13 juillet 2012 20:43:21 GMT+2\n") + self.assertEqual(commit.author.date, datetime.datetime(2012, 7, 13, 18, 47, 10)) diff --git a/lib/github/tests/Issue80.py b/lib/github/tests/Issue80.py new file mode 100644 index 0000000000..74bf5c2f1b --- /dev/null +++ b/lib/github/tests/Issue80.py @@ -0,0 +1,43 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import github + +import Framework + + +class Issue80(Framework.BasicTestCase): # https://github.com/jacquev6/PyGithub/issues/80 + def testIgnoreHttpsFromGithubEnterprise(self): + g = github.Github(self.login, self.password, base_url="http://my.enterprise.com/some/prefix") # http here + org = g.get_organization("BeaverSoftware") + self.assertEqual(org.url, "https://my.enterprise.com/some/prefix/orgs/BeaverSoftware") # https returned + self.assertListKeyEqual(org.get_repos(), lambda r: r.name, ["FatherBeaver", "TestPyGithub"]) # But still http in second request based on org.url + + def testIgnoreHttpsFromGithubEnterpriseWithPort(self): + g = github.Github(self.login, self.password, base_url="http://my.enterprise.com:1234/some/prefix") # http here + org = g.get_organization("BeaverSoftware") + self.assertEqual(org.url, "https://my.enterprise.com:1234/some/prefix/orgs/BeaverSoftware") # https returned + self.assertListKeyEqual(org.get_repos(), lambda r: r.name, ["FatherBeaver", "TestPyGithub"]) # But still http in second request based on org.url diff --git a/lib/github/tests/Issue87.py b/lib/github/tests/Issue87.py new file mode 100644 index 0000000000..c3d2ace223 --- /dev/null +++ b/lib/github/tests/Issue87.py @@ -0,0 +1,51 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import github + +import Framework + + +class Issue87(Framework.TestCase): # https://github.com/jacquev6/PyGithub/issues/87 + def setUp(self): + Framework.TestCase.setUp(self) + self.repo = self.g.get_user().get_repo("PyGithub") + + def testCreateIssueWithPercentInTitle(self): + issue = self.repo.create_issue("Issue with percent % in title created by PyGithub") + self.assertEqual(issue.number, 99) + + def testCreateIssueWithPercentInBody(self): + issue = self.repo.create_issue("Issue created by PyGithub", "Percent % in body") + self.assertEqual(issue.number, 98) + + def testCreateIssueWithEscapedPercentInTitle(self): + issue = self.repo.create_issue("Issue with escaped percent %25 in title created by PyGithub") + self.assertEqual(issue.number, 97) + + def testCreateIssueWithEscapedPercentInBody(self): + issue = self.repo.create_issue("Issue created by PyGithub", "Escaped percent %25 in body") + self.assertEqual(issue.number, 96) diff --git a/lib/github/tests/IssueComment.py b/lib/github/tests/IssueComment.py new file mode 100644 index 0000000000..1e2dae788d --- /dev/null +++ b/lib/github/tests/IssueComment.py @@ -0,0 +1,55 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + +import datetime + + +class IssueComment(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.comment = self.g.get_user().get_repo("PyGithub").get_issue(28).get_comment(5808311) + + def testAttributes(self): + self.assertEqual(self.comment.body, "Comment created by PyGithub") + self.assertEqual(self.comment.created_at, datetime.datetime(2012, 5, 20, 11, 46, 42)) + self.assertEqual(self.comment.id, 5808311) + self.assertEqual(self.comment.updated_at, datetime.datetime(2012, 5, 20, 11, 46, 42)) + self.assertEqual(self.comment.url, "https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5808311") + self.assertEqual(self.comment.user.login, "jacquev6") + self.assertEqual(self.comment.html_url, "https://github.com/jacquev6/PyGithub/issues/28#issuecomment-5808311") + + # test __repr__() based on this attributes + self.assertEqual(self.comment.__repr__(), 'IssueComment(user=NamedUser(login="jacquev6"), id=5808311)') + + def testEdit(self): + self.comment.edit("Comment edited by PyGithub") + self.assertEqual(self.comment.body, "Comment edited by PyGithub") + self.assertEqual(self.comment.updated_at, datetime.datetime(2012, 5, 20, 11, 53, 59)) + + def testDelete(self): + self.comment.delete() diff --git a/lib/github/tests/IssueEvent.py b/lib/github/tests/IssueEvent.py new file mode 100644 index 0000000000..5a6c72e09f --- /dev/null +++ b/lib/github/tests/IssueEvent.py @@ -0,0 +1,47 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + +import datetime + + +class IssueEvent(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.event = self.g.get_user().get_repo("PyGithub").get_issues_event(16348656) + + def testAttributes(self): + self.assertEqual(self.event.actor.login, "jacquev6") + self.assertEqual(self.event.commit_id, "ed866fc43833802ab553e5ff8581c81bb00dd433") + self.assertEqual(self.event.created_at, datetime.datetime(2012, 5, 27, 7, 29, 25)) + self.assertEqual(self.event.event, "referenced") + self.assertEqual(self.event.id, 16348656) + self.assertEqual(self.event.issue.number, 30) + self.assertEqual(self.event.url, "https://api.github.com/repos/jacquev6/PyGithub/issues/events/16348656") + + # test __repr__() based on this attributes + self.assertEqual(self.event.__repr__(), 'IssueEvent(id=16348656)') \ No newline at end of file diff --git a/lib/github/tests/Label.py b/lib/github/tests/Label.py new file mode 100644 index 0000000000..09fe1a9761 --- /dev/null +++ b/lib/github/tests/Label.py @@ -0,0 +1,50 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + + +class Label(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.label = self.g.get_user().get_repo("PyGithub").get_label("Bug") + + def testAttributes(self): + self.assertEqual(self.label.color, "e10c02") + self.assertEqual(self.label.name, "Bug") + self.assertEqual(self.label.url, "https://api.github.com/repos/jacquev6/PyGithub/labels/Bug") + + # test __repr__() based on this attributes + self.assertEqual(self.label.__repr__(), 'Label(name="Bug")') + + def testEdit(self): + self.label.edit("LabelEditedByPyGithub", "0000ff") + self.assertEqual(self.label.color, "0000ff") + self.assertEqual(self.label.name, "LabelEditedByPyGithub") + self.assertEqual(self.label.url, "https://api.github.com/repos/jacquev6/PyGithub/labels/LabelEditedByPyGithub") + + def testDelete(self): + self.label.delete() diff --git a/lib/github/tests/Logging_.py b/lib/github/tests/Logging_.py new file mode 100644 index 0000000000..769fdc7da7 --- /dev/null +++ b/lib/github/tests/Logging_.py @@ -0,0 +1,74 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import logging +import sys + +import github + +import Framework + +atMostPython32 = sys.hexversion < 0x03030000 + + +class Logging(Framework.BasicTestCase): + class MockHandler: + def __init__(self): + self.level = logging.DEBUG + self.handled = None + + def handle(self, record): + self.handled = record.getMessage() + + def setUp(self): + Framework.BasicTestCase.setUp(self) + logger = logging.getLogger("github") + logger.setLevel(logging.DEBUG) + self.__handler = self.MockHandler() + logger.addHandler(self.__handler) + + def testLoggingWithBasicAuthentication(self): + self.assertEqual(github.Github(self.login, self.password).get_user().name, "Vincent Jacques") + # In Python 3.3, dicts are not output in the same order as in Python 2.5 -> 3.2. + # So, logging is not deterministic and we cannot test it. + if atMostPython32: + self.assertEqual(self.__handler.handled, 'GET https://api.github.com/user {\'Authorization\': \'Basic (login and password removed)\', \'User-Agent\': \'PyGithub/Python\'} null ==> 200 {\'status\': \'200 OK\', \'content-length\': \'806\', \'x-github-media-type\': \'github.beta; format=json\', \'x-content-type-options\': \'nosniff\', \'vary\': \'Accept, Authorization, Cookie\', \'x-ratelimit-remaining\': \'4993\', \'server\': \'nginx\', \'last-modified\': \'Fri, 14 Sep 2012 18:47:46 GMT\', \'connection\': \'keep-alive\', \'x-ratelimit-limit\': \'5000\', \'etag\': \'"434dfe5d3f50558fe3cea087cb95c401"\', \'cache-control\': \'private, s-maxage=60, max-age=60\', \'date\': \'Mon, 17 Sep 2012 17:12:32 GMT\', \'content-type\': \'application/json; charset=utf-8\'} {"owned_private_repos":3,"disk_usage":18612,"following":28,"type":"User","public_repos":13,"location":"Paris, France","company":"Criteo","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","plan":{"space":614400,"private_repos":5,"name":"micro","collaborators":1},"blog":"http://vincent-jacques.net","login":"jacquev6","public_gists":3,"html_url":"https://github.com/jacquev6","hireable":false,"created_at":"2010-07-09T06:10:06Z","private_gists":5,"followers":13,"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","bio":"","total_private_repos":3,"collaborators":0,"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146,"url":"https://api.github.com/users/jacquev6"}') + + def testLoggingWithOAuthAuthentication(self): + self.assertEqual(github.Github(self.oauth_token).get_user().name, "Vincent Jacques") + if atMostPython32: + self.assertEqual(self.__handler.handled, 'GET https://api.github.com/user {\'Authorization\': \'token (oauth token removed)\', \'User-Agent\': \'PyGithub/Python\'} null ==> 200 {\'status\': \'200 OK\', \'x-ratelimit-remaining\': \'4993\', \'x-github-media-type\': \'github.beta; format=json\', \'x-content-type-options\': \'nosniff\', \'vary\': \'Accept, Authorization, Cookie\', \'content-length\': \'628\', \'server\': \'nginx\', \'last-modified\': \'Tue, 25 Sep 2012 07:42:42 GMT\', \'connection\': \'keep-alive\', \'x-ratelimit-limit\': \'5000\', \'etag\': \'"c23ad6b5815fc3d6ec6341c4a47afe85"\', \'cache-control\': \'private, max-age=60, s-maxage=60\', \'date\': \'Tue, 25 Sep 2012 20:36:54 GMT\', \'x-oauth-scopes\': \'\', \'content-type\': \'application/json; charset=utf-8\', \'x-accepted-oauth-scopes\': \'user\'} {"type":"User","bio":"","html_url":"https://github.com/jacquev6","login":"jacquev6","followers":14,"company":"Criteo","blog":"http://vincent-jacques.net","public_repos":13,"created_at":"2010-07-09T06:10:06Z","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","email":"vincent@vincent-jacques.net","following":29,"name":"Vincent Jacques","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","hireable":false,"id":327146,"public_gists":3,"location":"Paris, France","url":"https://api.github.com/users/jacquev6"}') + + def testLoggingWithoutAuthentication(self): + self.assertEqual(github.Github().get_user("jacquev6").name, "Vincent Jacques") + if atMostPython32: + self.assertEqual(self.__handler.handled, 'GET https://api.github.com/users/jacquev6 {\'User-Agent\': \'PyGithub/Python\'} null ==> 200 {\'status\': \'200 OK\', \'content-length\': \'628\', \'x-github-media-type\': \'github.beta; format=json\', \'x-content-type-options\': \'nosniff\', \'vary\': \'Accept\', \'x-ratelimit-remaining\': \'4989\', \'server\': \'nginx\', \'last-modified\': \'Tue, 25 Sep 2012 07:42:42 GMT\', \'connection\': \'keep-alive\', \'x-ratelimit-limit\': \'5000\', \'etag\': \'"9bd085221a16b6d2ea95e72634c3c1ac"\', \'cache-control\': \'public, max-age=60, s-maxage=60\', \'date\': \'Tue, 25 Sep 2012 20:38:56 GMT\', \'content-type\': \'application/json; charset=utf-8\'} {"type":"User","html_url":"https://github.com/jacquev6","login":"jacquev6","followers":14,"company":"Criteo","created_at":"2010-07-09T06:10:06Z","email":"vincent@vincent-jacques.net","hireable":false,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","public_gists":3,"bio":"","following":29,"name":"Vincent Jacques","blog":"http://vincent-jacques.net","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146,"public_repos":13,"location":"Paris, France","url":"https://api.github.com/users/jacquev6"}') + + def testLoggingWithBaseUrl(self): + # ReplayData forged, not recorded + self.assertEqual(github.Github(base_url="http://my.enterprise.com/my/prefix").get_user("jacquev6").name, "Vincent Jacques") + if atMostPython32: + self.assertEqual(self.__handler.handled, 'GET http://my.enterprise.com/my/prefix/users/jacquev6 {\'User-Agent\': \'PyGithub/Python\'} null ==> 200 {\'status\': \'200 OK\', \'content-length\': \'628\', \'x-github-media-type\': \'github.beta; format=json\', \'x-content-type-options\': \'nosniff\', \'vary\': \'Accept\', \'x-ratelimit-remaining\': \'4989\', \'server\': \'nginx\', \'last-modified\': \'Tue, 25 Sep 2012 07:42:42 GMT\', \'connection\': \'keep-alive\', \'x-ratelimit-limit\': \'5000\', \'etag\': \'"9bd085221a16b6d2ea95e72634c3c1ac"\', \'cache-control\': \'public, max-age=60, s-maxage=60\', \'date\': \'Tue, 25 Sep 2012 20:38:56 GMT\', \'content-type\': \'application/json; charset=utf-8\'} {"type":"User","html_url":"https://github.com/jacquev6","login":"jacquev6","followers":14,"company":"Criteo","created_at":"2010-07-09T06:10:06Z","email":"vincent@vincent-jacques.net","hireable":false,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","public_gists":3,"bio":"","following":29,"name":"Vincent Jacques","blog":"http://vincent-jacques.net","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146,"public_repos":13,"location":"Paris, France","url":"https://api.github.com/users/jacquev6"}') diff --git a/lib/github/tests/Markdown.py b/lib/github/tests/Markdown.py new file mode 100644 index 0000000000..631ed8187e --- /dev/null +++ b/lib/github/tests/Markdown.py @@ -0,0 +1,40 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + + +class Markdown(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.text = "MyTitle\n=======\n\nIssue #1" + self.repo = self.g.get_user().get_repo("PyGithub") + + def testRenderMarkdown(self): + self.assertEqual(self.g.render_markdown(self.text), '

    MyTitle

    Issue #1

    ') + + def testRenderGithubFlavoredMarkdown(self): + self.assertEqual(self.g.render_markdown(self.text, self.repo), '

    MyTitle

    Issue #1

    ') diff --git a/lib/github/tests/Milestone.py b/lib/github/tests/Milestone.py new file mode 100644 index 0000000000..136c1292cc --- /dev/null +++ b/lib/github/tests/Milestone.py @@ -0,0 +1,68 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + +import datetime + + +class Milestone(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.milestone = self.g.get_user().get_repo("PyGithub").get_milestone(1) + + def testAttributes(self): + self.assertEqual(self.milestone.closed_issues, 2) + self.assertEqual(self.milestone.created_at, datetime.datetime(2012, 3, 8, 12, 22, 10)) + self.assertEqual(self.milestone.description, "") + self.assertEqual(self.milestone.due_on, datetime.datetime(2012, 3, 13, 7, 0, 0)) + self.assertEqual(self.milestone.id, 93546) + self.assertEqual(self.milestone.number, 1) + self.assertEqual(self.milestone.open_issues, 0) + self.assertEqual(self.milestone.state, "closed") + self.assertEqual(self.milestone.title, "Version 0.4") + self.assertEqual(self.milestone.url, "https://api.github.com/repos/jacquev6/PyGithub/milestones/1") + self.assertEqual(self.milestone.creator.login, "jacquev6") + + # test __repr__() based on this attributes + self.assertEqual(self.milestone.__repr__(), 'Milestone(number=1)') + + def testEditWithMinimalParameters(self): + self.milestone.edit("Title edited by PyGithub") + self.assertEqual(self.milestone.title, "Title edited by PyGithub") + + def testEditWithAllParameters(self): + self.milestone.edit("Title edited twice by PyGithub", "closed", "Description edited by PyGithub", due_on=datetime.date(2012, 6, 16)) + self.assertEqual(self.milestone.title, "Title edited twice by PyGithub") + self.assertEqual(self.milestone.state, "closed") + self.assertEqual(self.milestone.description, "Description edited by PyGithub") + self.assertEqual(self.milestone.due_on, datetime.datetime(2012, 6, 16, 7, 0, 0)) + + def testGetLabels(self): + self.assertListKeyEqual(self.milestone.get_labels(), lambda l: l.name, ["Public interface", "Project management"]) + + def testDelete(self): + self.milestone.delete() diff --git a/lib/github/tests/NamedUser.py b/lib/github/tests/NamedUser.py new file mode 100644 index 0000000000..203921af48 --- /dev/null +++ b/lib/github/tests/NamedUser.py @@ -0,0 +1,150 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + +import github +import datetime + + +class NamedUser(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.user = self.g.get_user("jacquev6") + + def testAttributesOfOtherUser(self): + self.user = self.g.get_user("nvie") + self.assertEqual(self.user.avatar_url, "https://secure.gravatar.com/avatar/c5a7f21b46df698f3db31c37ed0cf55a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png") + self.assertEqual(self.user.bio, None) + self.assertEqual(self.user.blog, "http://nvie.com") + self.assertEqual(self.user.collaborators, None) + self.assertEqual(self.user.company, "3rd Cloud") + self.assertEqual(self.user.created_at, datetime.datetime(2009, 5, 12, 21, 19, 38)) + self.assertEqual(self.user.disk_usage, None) + self.assertEqual(self.user.email, "vincent@3rdcloud.com") + self.assertEqual(self.user.followers, 296) + self.assertEqual(self.user.following, 41) + self.assertEqual(self.user.gravatar_id, "c5a7f21b46df698f3db31c37ed0cf55a") + self.assertFalse(self.user.hireable) + self.assertEqual(self.user.html_url, "https://github.com/nvie") + self.assertEqual(self.user.id, 83844) + self.assertEqual(self.user.location, "Netherlands") + self.assertEqual(self.user.login, "nvie") + self.assertEqual(self.user.name, "Vincent Driessen") + self.assertEqual(self.user.owned_private_repos, None) + self.assertEqual(self.user.plan, None) + self.assertEqual(self.user.private_gists, None) + self.assertEqual(self.user.public_gists, 16) + self.assertEqual(self.user.public_repos, 61) + self.assertEqual(self.user.total_private_repos, None) + self.assertEqual(self.user.type, "User") + self.assertEqual(self.user.url, "https://api.github.com/users/nvie") + + # test __repr__() based on this attributes + self.assertEqual(self.user.__repr__(), 'NamedUser(login="nvie")') + + + def testAttributesOfSelf(self): + self.assertEqual(self.user.avatar_url, "https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png") + self.assertEqual(self.user.bio, "") + self.assertEqual(self.user.blog, "http://vincent-jacques.net") + self.assertEqual(self.user.collaborators, 0) + self.assertEqual(self.user.company, "Criteo") + self.assertEqual(self.user.created_at, datetime.datetime(2010, 7, 9, 6, 10, 6)) + self.assertEqual(self.user.disk_usage, 17080) + self.assertEqual(self.user.email, "vincent@vincent-jacques.net") + self.assertEqual(self.user.followers, 13) + self.assertEqual(self.user.following, 24) + self.assertEqual(self.user.gravatar_id, "b68de5ae38616c296fa345d2b9df2225") + self.assertFalse(self.user.hireable) + self.assertEqual(self.user.html_url, "https://github.com/jacquev6") + self.assertEqual(self.user.id, 327146) + self.assertEqual(self.user.location, "Paris, France") + self.assertEqual(self.user.login, "jacquev6") + self.assertEqual(self.user.name, "Vincent Jacques") + self.assertEqual(self.user.owned_private_repos, 5) + self.assertEqual(self.user.plan.name, "micro") + self.assertEqual(self.user.plan.collaborators, 1) + self.assertEqual(self.user.plan.space, 614400) + self.assertEqual(self.user.plan.private_repos, 5) + self.assertEqual(self.user.private_gists, 5) + self.assertEqual(self.user.public_gists, 2) + self.assertEqual(self.user.public_repos, 11) + self.assertEqual(self.user.total_private_repos, 5) + self.assertEqual(self.user.type, "User") + self.assertEqual(self.user.url, "https://api.github.com/users/jacquev6") + + # test __repr__() based on this attributes + self.assertEqual(self.user.__repr__(), 'NamedUser(login="jacquev6")') + + def testGetGists(self): + self.assertListKeyEqual(self.user.get_gists(), lambda g: g.description, ["Gist created by PyGithub", "FairThreadPoolPool.cpp", "How to error 500 Github API v3, as requested by Rick (GitHub Staff)", "Cadfael: order of episodes in French DVD edition"]) + + def testGetFollowers(self): + self.assertListKeyEqual(self.user.get_followers(), lambda f: f.login, ["jnorthrup", "brugidou", "regisb", "walidk", "afzalkhan", "sdanzan", "vineus", "gturri", "fjardon", "cjuniet", "jardon-u", "kamaradclimber", "L42y"]) + + def testGetFollowing(self): + self.assertListKeyEqual(self.user.get_following(), lambda f: f.login, ["nvie", "schacon", "jamis", "chad", "unclebob", "dabrahams", "jnorthrup", "brugidou", "regisb", "walidk", "tanzilli", "fjardon", "r3c", "sdanzan", "vineus", "cjuniet", "gturri", "ant9000", "asquini", "claudyus", "jardon-u", "s-bernard", "kamaradclimber", "Lyloa"]) + + def testHasInFollowing(self): + nvie = self.g.get_user("nvie") + self.assertTrue(self.user.has_in_following(nvie)) + + def testGetOrgs(self): + self.assertListKeyEqual(self.user.get_orgs(), lambda o: o.login, ["BeaverSoftware"]) + + def testGetRepo(self): + self.assertEqual(self.user.get_repo("PyGithub").description, "Python library implementing the full Github API v3") + + def testGetRepos(self): + self.assertListKeyEqual(self.user.get_repos(), lambda r: r.name, ["TestPyGithub", "django", "PyGithub", "developer.github.com", "acme-public-website", "C4Planner", "DrawTurksHead", "DrawSyntax", "QuadProgMm", "Boost.HierarchicalEnum", "ViDE"]) + + def testGetReposWithType(self): + self.assertListKeyEqual(self.user.get_repos("owner"), lambda r: r.name, ["django", "PyGithub", "developer.github.com", "acme-public-website", "C4Planner", "DrawTurksHead", "DrawSyntax", "QuadProgMm", "Boost.HierarchicalEnum", "ViDE"]) + + def testGetWatched(self): + self.assertListKeyEqual(self.user.get_watched(), lambda r: r.name, ["git", "boost.php", "capistrano", "boost.perl", "git-subtree", "git-hg", "homebrew", "celtic_knot", "twisted-intro", "markup", "hub", "gitflow", "murder", "boto", "agit", "d3", "pygit2", "git-pulls", "django_mathlatex", "scrumblr", "developer.github.com", "python-github3", "PlantUML", "bootstrap", "drawnby", "django-socketio", "django-realtime", "playground", "BozoCrack", "FatherBeaver", "PyGithub", "django", "django", "TestPyGithub"]) + + def testGetStarred(self): + self.assertListKeyEqual(self.user.get_starred(), lambda r: r.name, ["git", "boost.php", "capistrano", "boost.perl", "git-subtree", "git-hg", "homebrew", "celtic_knot", "twisted-intro", "markup", "hub", "gitflow", "murder", "boto", "agit", "d3", "pygit2", "git-pulls", "django_mathlatex", "scrumblr", "developer.github.com", "python-github3", "PlantUML", "bootstrap", "drawnby", "django-socketio", "django-realtime", "playground", "BozoCrack", "FatherBeaver", "amaunet", "django", "django", "moviePlanning", "folly"]) + + def testGetSubscriptions(self): + self.assertListKeyEqual(self.user.get_subscriptions(), lambda r: r.name, ["ViDE", "Boost.HierarchicalEnum", "QuadProgMm", "DrawSyntax", "DrawTurksHead", "PrivateStuff", "vincent-jacques.net", "Hacking", "C4Planner", "developer.github.com", "PyGithub", "PyGithub", "django", "CinePlanning", "PyGithub", "PyGithub", "PyGithub", "IpMap", "PyGithub", "PyGithub", "PyGithub", "PyGithub", "PyGithub", "PyGithub", "PyGithub", "PyGithub", "PyGithub", "PyGithub", "PyGithub", "PyGithub"]) + + def testGetEvents(self): + self.assertListKeyBegin(self.user.get_events(), lambda e: e.type, ["GistEvent", "IssueCommentEvent", "PushEvent", "IssuesEvent"]) + + def testGetPublicEvents(self): + self.assertListKeyBegin(self.user.get_public_events(), lambda e: e.type, ["PushEvent", "CreateEvent", "GistEvent", "IssuesEvent"]) + + def testGetPublicReceivedEvents(self): + self.assertListKeyBegin(self.user.get_public_received_events(), lambda e: e.type, ["IssueCommentEvent", "IssueCommentEvent", "IssueCommentEvent", "IssueCommentEvent"]) + + def testGetReceivedEvents(self): + self.assertListKeyBegin(self.user.get_received_events(), lambda e: e.type, ["IssueCommentEvent", "IssueCommentEvent", "IssueCommentEvent", "IssueCommentEvent"]) + + def testGetKeys(self): + self.assertListKeyEqual(self.user.get_keys(), lambda k: k.id, [3557894, 3791954, 3937333, 4051357, 4051492]) diff --git a/lib/github/tests/Organization.py b/lib/github/tests/Organization.py new file mode 100644 index 0000000000..aa7c76ec7f --- /dev/null +++ b/lib/github/tests/Organization.py @@ -0,0 +1,145 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + +import datetime + + +class Organization(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.org = self.g.get_organization("BeaverSoftware") + + def testAttributes(self): + self.assertEqual(self.org.avatar_url, "https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png") + self.assertEqual(self.org.billing_email, "BeaverSoftware@vincent-jacques.net") + self.assertEqual(self.org.blog, None) + self.assertEqual(self.org.collaborators, 0) + self.assertEqual(self.org.company, None) + self.assertEqual(self.org.created_at, datetime.datetime(2012, 2, 9, 19, 20, 12)) + self.assertEqual(self.org.disk_usage, 112) + self.assertEqual(self.org.email, None) + self.assertEqual(self.org.followers, 0) + self.assertEqual(self.org.following, 0) + self.assertEqual(self.org.gravatar_id, None) + self.assertEqual(self.org.html_url, "https://github.com/BeaverSoftware") + self.assertEqual(self.org.id, 1424031) + self.assertEqual(self.org.location, "Paris, France") + self.assertEqual(self.org.login, "BeaverSoftware") + self.assertEqual(self.org.name, None) + self.assertEqual(self.org.owned_private_repos, 0) + self.assertEqual(self.org.plan.name, "free") + self.assertEqual(self.org.plan.private_repos, 0) + self.assertEqual(self.org.plan.space, 307200) + self.assertEqual(self.org.private_gists, 0) + self.assertEqual(self.org.public_gists, 0) + self.assertEqual(self.org.public_repos, 2) + self.assertEqual(self.org.total_private_repos, 0) + self.assertEqual(self.org.type, "Organization") + self.assertEqual(self.org.url, "https://api.github.com/orgs/BeaverSoftware") + + # test __repr__() based on this attributes + self.assertEqual(self.org.__repr__(), 'Organization(name=None, id=1424031)') + + def testEditWithoutArguments(self): + self.org.edit() + + def testEditWithAllArguments(self): + self.org.edit("BeaverSoftware2@vincent-jacques.net", "http://vincent-jacques.net", "Company edited by PyGithub", "BeaverSoftware2@vincent-jacques.net", "Location edited by PyGithub", "Name edited by PyGithub") + self.assertEqual(self.org.billing_email, "BeaverSoftware2@vincent-jacques.net") + self.assertEqual(self.org.blog, "http://vincent-jacques.net") + self.assertEqual(self.org.company, "Company edited by PyGithub") + self.assertEqual(self.org.email, "BeaverSoftware2@vincent-jacques.net") + self.assertEqual(self.org.location, "Location edited by PyGithub") + self.assertEqual(self.org.name, "Name edited by PyGithub") + + def testCreateTeam(self): + team = self.org.create_team("Team created by PyGithub") + self.assertEqual(team.id, 189850) + + def testCreateTeamWithAllArguments(self): + repo = self.org.get_repo("FatherBeaver") + team = self.org.create_team("Team also created by PyGithub", [repo], "push") + self.assertEqual(team.id, 189852) + + def testPublicMembers(self): + lyloa = self.g.get_user("Lyloa") + self.assertFalse(self.org.has_in_public_members(lyloa)) + self.org.add_to_public_members(lyloa) + self.assertTrue(self.org.has_in_public_members(lyloa)) + self.org.remove_from_public_members(lyloa) + self.assertFalse(self.org.has_in_public_members(lyloa)) + + def testGetPublicMembers(self): + self.assertListKeyEqual(self.org.get_public_members(), lambda u: u.login, ["jacquev6"]) + + def testGetIssues(self): + self.assertListKeyEqual(self.org.get_issues(), lambda i: i.id, []) + + def testGetIssuesWithAllArguments(self): + requestedByUser = self.g.get_user().get_repo("PyGithub").get_label("Requested by user") + issues = self.org.get_issues("assigned", "closed", [requestedByUser], "comments", "asc", datetime.datetime(2012, 5, 28, 23, 0, 0)) + self.assertListKeyEqual(issues, lambda i: i.id, []) + + def testGetMembers(self): + self.assertListKeyEqual(self.org.get_members(), lambda u: u.login, ["cjuniet", "jacquev6", "Lyloa"]) + + def testMembers(self): + lyloa = self.g.get_user("Lyloa") + self.assertTrue(self.org.has_in_members(lyloa)) + self.org.remove_from_members(lyloa) + self.assertFalse(self.org.has_in_members(lyloa)) + + def testGetRepos(self): + self.assertListKeyEqual(self.org.get_repos(), lambda r: r.name, ["FatherBeaver", "TestPyGithub"]) + + def testGetReposWithType(self): + self.assertListKeyEqual(self.org.get_repos("public"), lambda r: r.name, ["FatherBeaver", "PyGithub"]) + + def testGetEvents(self): + self.assertListKeyEqual(self.org.get_events(), lambda e: e.type, ["CreateEvent", "CreateEvent", "PushEvent", "PushEvent", "DeleteEvent", "DeleteEvent", "PushEvent", "PushEvent", "DeleteEvent", "DeleteEvent", "PushEvent", "PushEvent", "PushEvent", "CreateEvent", "CreateEvent", "CreateEvent", "CreateEvent", "CreateEvent", "PushEvent", "PushEvent", "PushEvent", "PushEvent", "PushEvent", "PushEvent", "ForkEvent", "CreateEvent"]) + + def testGetTeams(self): + self.assertListKeyEqual(self.org.get_teams(), lambda t: t.name, ["Members", "Owners"]) + + def testCreateRepoWithMinimalArguments(self): + repo = self.org.create_repo("TestPyGithub") + self.assertEqual(repo.url, "https://api.github.com/repos/BeaverSoftware/TestPyGithub") + + def testCreateRepoWithAllArguments(self): + team = self.org.get_team(141496) + repo = self.org.create_repo("TestPyGithub2", "Repo created by PyGithub", "http://foobar.com", False, False, False, False, team) + self.assertEqual(repo.url, "https://api.github.com/repos/BeaverSoftware/TestPyGithub2") + + def testCreateRepositoryWithAutoInit(self): + repo = self.org.create_repo("TestPyGithub", auto_init=True, gitignore_template="Python") + self.assertEqual(repo.url, "https://api.github.com/repos/BeaverSoftware/TestPyGithub") + + def testCreateFork(self): + pygithub = self.g.get_user("jacquev6").get_repo("PyGithub") + repo = self.org.create_fork(pygithub) + self.assertEqual(repo.url, "https://api.github.com/repos/BeaverSoftware/PyGithub") diff --git a/lib/github/tests/PaginatedList.py b/lib/github/tests/PaginatedList.py new file mode 100644 index 0000000000..dbe0eca70b --- /dev/null +++ b/lib/github/tests/PaginatedList.py @@ -0,0 +1,155 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# Copyright 2013 davidbrai # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework +from github.PaginatedList import PaginatedList as PaginatedListImpl + + +class PaginatedList(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.repo = self.g.get_user("openframeworks").get_repo("openFrameworks") + self.list = self.repo.get_issues() + + def testIteration(self): + self.assertEqual(len(list(self.list)), 333) + + def testSeveralIterations(self): + self.assertEqual(len(list(self.list)), 333) + self.assertEqual(len(list(self.list)), 333) + self.assertEqual(len(list(self.list)), 333) + self.assertEqual(len(list(self.list)), 333) + + def testIntIndexingInFirstPage(self): + self.assertEqual(self.list[0].id, 4772349) + self.assertEqual(self.list[24].id, 4286936) + + def testReversedIterationWithSinglePage(self): + r = self.list.reversed + self.assertEqual(r[0].id, 4286936) + self.assertEqual(r[1].id, 4317009) + + def testReversedIterationWithMultiplePages(self): + r = self.list.reversed + self.assertEqual(r[0].id, 94898) + self.assertEqual(r[1].id, 104702) + self.assertEqual(r[13].id, 166211) + self.assertEqual(r[14].id, 166212) + self.assertEqual(r[15].id, 166214) + + def testReversedIterationSupportsIterator(self): + r = self.list.reversed + for i in r: + self.assertEqual(i.id, 4286936) + return + self.fail("empty iterator") + + def testGettingTheReversedListDoesNotModifyTheOriginalList(self): + self.assertEqual(self.list[0].id, 18345408) + self.assertEqual(self.list[30].id, 17916118) + r = self.list.reversed + self.assertEqual(self.list[0].id, 18345408) + self.assertEqual(self.list[30].id, 17916118) + self.assertEqual(r[0].id, 132373) + self.assertEqual(r[30].id, 543694) + + def testIntIndexingInThirdPage(self): + self.assertEqual(self.list[50].id, 3911629) + self.assertEqual(self.list[74].id, 3605277) + + def testGetFirstPage(self): + self.assertListKeyEqual(self.list.get_page(0), lambda i: i.id, [4772349, 4767675, 4758608, 4700182, 4662873, 4608132, 4604661, 4588997, 4557803, 4554058, 4539985, 4507572, 4507492, 4507416, 4447561, 4406584, 4384548, 4383465, 4373361, 4373201, 4370619, 4356530, 4352401, 4317009, 4286936]) + + def testGetThirdPage(self): + self.assertListKeyEqual(self.list.get_page(2), lambda i: i.id, [3911629, 3911537, 3910580, 3910555, 3910549, 3897090, 3883598, 3856005, 3850655, 3825582, 3813852, 3812318, 3812275, 3807459, 3799872, 3799653, 3795495, 3754055, 3710293, 3662214, 3647640, 3631618, 3627067, 3614231, 3605277]) + + def testIntIndexingAfterIteration(self): + self.assertEqual(len(list(self.list)), 333) + self.assertEqual(self.list[11].id, 4507572) + self.assertEqual(self.list[73].id, 3614231) + self.assertEqual(self.list[332].id, 94898) + + def testSliceIndexingInFirstPage(self): + self.assertListKeyEqual(self.list[:13], lambda i: i.id, [4772349, 4767675, 4758608, 4700182, 4662873, 4608132, 4604661, 4588997, 4557803, 4554058, 4539985, 4507572, 4507492]) + self.assertListKeyEqual(self.list[:13:3], lambda i: i.id, [4772349, 4700182, 4604661, 4554058, 4507492]) + self.assertListKeyEqual(self.list[10:13], lambda i: i.id, [4539985, 4507572, 4507492]) + self.assertListKeyEqual(self.list[5:13:3], lambda i: i.id, [4608132, 4557803, 4507572]) + + def testSliceIndexingUntilFourthPage(self): + self.assertListKeyEqual(self.list[:99:10], lambda i: i.id, [4772349, 4539985, 4370619, 4207350, 4063366, 3911629, 3813852, 3647640, 3528378, 3438233]) + self.assertListKeyEqual(self.list[73:78], lambda i: i.id, [3614231, 3605277, 3596240, 3594731, 3593619]) + self.assertListKeyEqual(self.list[70:80:2], lambda i: i.id, [3647640, 3627067, 3605277, 3594731, 3593430]) + + def testSliceIndexingUntilEnd(self): + self.assertListKeyEqual(self.list[310::3], lambda i: i.id, [268332, 204247, 169176, 166211, 165898, 163959, 132373, 104702]) + self.assertListKeyEqual(self.list[310:], lambda i: i.id, [268332, 211418, 205935, 204247, 172424, 171615, 169176, 166214, 166212, 166211, 166209, 166208, 165898, 165537, 165409, 163959, 132671, 132377, 132373, 130269, 111018, 104702, 94898]) + + def testInterruptedIteration(self): + # No asserts, but checks that only three pages are fetched + l = 0 + for element in self.list: # pragma no branch (exits only by break) + l += 1 + if l == 75: + break + + def testInterruptedIterationInSlice(self): + # No asserts, but checks that only three pages are fetched + l = 0 + for element in self.list[:100]: # pragma no branch (exits only by break) + l += 1 + if l == 75: + break + + def testCustomPerPage(self): + self.assertEqual(self.g.per_page, 30) + self.g.per_page = 100 + self.assertEqual(self.g.per_page, 100) + self.assertEqual(len(list(self.repo.get_issues())), 456) + + def testCustomPerPageWithNoUrlParams(self): + import CommitComment # Don't polute github.tests namespace, it would conflict with github.tests.CommitComment + self.g.per_page = 100 + paginated_list = PaginatedListImpl( + CommitComment.CommitComment, + self.repo._requester, + self.repo.url + "/comments", + None + ) + + def testCustomPerPageWithNoUrlParams2(self): + # This test is redountant and less unitary than testCustomPerPageWithNoUrlParams + # but I hope it will be more robust if we refactor PaginatedList, + # because testCustomPerPageWithNoUrlParams only tests the constructor + self.g.per_page = 100 + self.assertEqual(len(list(self.repo.get_comments())), 325) + + def testCustomPerPageWithGetPage(self): + self.g.per_page = 100 + self.assertEqual(len(self.repo.get_issues().get_page(2)), 100) + + def testNoFirstPage(self): + self.assertFalse(next(iter(self.list), None)) diff --git a/lib/github/tests/Persistence.py b/lib/github/tests/Persistence.py new file mode 100644 index 0000000000..94f4b5a777 --- /dev/null +++ b/lib/github/tests/Persistence.py @@ -0,0 +1,56 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework +import github + +if Framework.atLeastPython26: + from io import BytesIO as IO +else: + from StringIO import StringIO as IO + + +class Persistence(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.repo = self.g.get_repo("akfish/PyGithub") + + self.dumpedRepo = IO() + self.g.dump(self.repo, self.dumpedRepo) + self.dumpedRepo.seek(0) + + def tearDown(self): + self.dumpedRepo.close() + + def testLoad(self): + loadedRepo = self.g.load(self.dumpedRepo) + self.assertTrue(isinstance(loadedRepo, github.Repository.Repository)) + self.assertTrue(loadedRepo._requester is self.repo._requester) + self.assertTrue(loadedRepo.owner._requester is self.repo._requester) + self.assertEqual(loadedRepo.name, "PyGithub") + self.assertEqual(loadedRepo.url, "https://api.github.com/repos/akfish/PyGithub") + + def testLoadAndUpdate(self): + loadedRepo = self.g.load(self.dumpedRepo) + self.assertTrue(loadedRepo.update()) diff --git a/lib/github/tests/PullRequest.py b/lib/github/tests/PullRequest.py new file mode 100644 index 0000000000..d49239782b --- /dev/null +++ b/lib/github/tests/PullRequest.py @@ -0,0 +1,117 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + +import datetime + + +class PullRequest(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.repo = self.g.get_user().get_repo("PyGithub") + self.pull = self.repo.get_pull(31) + + def testAttributes(self): + self.assertEqual(self.pull.additions, 511) + self.assertEqual(self.pull.assignee.login, "jacquev6") + self.assertEqual(self.pull.base.label, "jacquev6:topic/RewriteWithGeneratedCode") + self.assertEqual(self.pull.base.sha, "ed866fc43833802ab553e5ff8581c81bb00dd433") + self.assertEqual(self.pull.base.user.login, "jacquev6") + self.assertEqual(self.pull.base.ref, "topic/RewriteWithGeneratedCode") + self.assertEqual(self.pull.base.repo.full_name, "jacquev6/PyGithub") + self.assertEqual(self.pull.body, "Body edited by PyGithub") + self.assertEqual(self.pull.changed_files, 45) + self.assertEqual(self.pull.closed_at, datetime.datetime(2012, 5, 27, 10, 29, 7)) + self.assertEqual(self.pull.comments, 1) + self.assertEqual(self.pull.commits, 3) + self.assertEqual(self.pull.created_at, datetime.datetime(2012, 5, 27, 9, 25, 36)) + self.assertEqual(self.pull.deletions, 384) + self.assertEqual(self.pull.diff_url, "https://github.com/jacquev6/PyGithub/pull/31.diff") + self.assertEqual(self.pull.head.label, "BeaverSoftware:master") + self.assertEqual(self.pull.html_url, "https://github.com/jacquev6/PyGithub/pull/31") + self.assertEqual(self.pull.id, 1436215) + self.assertEqual(self.pull.issue_url, "https://github.com/jacquev6/PyGithub/issues/31") + self.assertFalse(self.pull.mergeable) + self.assertTrue(self.pull.merged) + self.assertEqual(self.pull.merged_at, datetime.datetime(2012, 5, 27, 10, 29, 7)) + self.assertEqual(self.pull.merged_by.login, "jacquev6") + self.assertEqual(self.pull.number, 31) + self.assertEqual(self.pull.patch_url, "https://github.com/jacquev6/PyGithub/pull/31.patch") + self.assertEqual(self.pull.review_comments, 1) + self.assertEqual(self.pull.state, "closed") + self.assertEqual(self.pull.title, "Title edited by PyGithub") + self.assertEqual(self.pull.updated_at, datetime.datetime(2012, 11, 3, 8, 19, 40)) + self.assertEqual(self.pull.url, "https://api.github.com/repos/jacquev6/PyGithub/pulls/31") + self.assertEqual(self.pull.user.login, "jacquev6") + + # test __repr__() based on this attributes + self.assertEqual(self.pull.__repr__(), 'PullRequest(title="Title edited by PyGithub", number=31)') + + def testCreateComment(self): + commit = self.repo.get_commit("8a4f306d4b223682dd19410d4a9150636ebe4206") + comment = self.pull.create_comment("Comment created by PyGithub", commit, "src/github/Issue.py", 5) + self.assertEqual(comment.id, 886298) + + def testGetComments(self): + self.assertListKeyEqual(self.pull.get_comments(), lambda c: c.id, [886298]) + + def testCreateIssueComment(self): + comment = self.pull.create_issue_comment("Issue comment created by PyGithub") + self.assertEqual(comment.id, 8387331) + + def testGetIssueComments(self): + self.assertListKeyEqual(self.pull.get_issue_comments(), lambda c: c.id, [8387331]) + + def testGetIssueComment(self): + comment = self.pull.get_issue_comment(8387331) + self.assertEqual(comment.body, "Issue comment created by PyGithub") + + def testEditWithoutArguments(self): + self.pull.edit() + + def testEditWithAllArguments(self): + self.pull.edit("Title edited by PyGithub", "Body edited by PyGithub", "open") + self.assertEqual(self.pull.title, "Title edited by PyGithub") + self.assertEqual(self.pull.body, "Body edited by PyGithub") + self.assertEqual(self.pull.state, "open") + + def testGetCommits(self): + self.assertListKeyEqual(self.pull.get_commits(), lambda c: c.sha, ["4aadfff21cdd2d2566b0e4bd7309c233b5f4ae23", "93dcae5cf207de376c91d0599226e7c7563e1d16", "8a4f306d4b223682dd19410d4a9150636ebe4206"]) + + def testGetFiles(self): + self.assertListKeyEqual(self.pull.get_files(), lambda f: f.filename, ["codegen/templates/GithubObject.py", "src/github/AuthenticatedUser.py", "src/github/Authorization.py", "src/github/Branch.py", "src/github/Commit.py", "src/github/CommitComment.py", "src/github/CommitFile.py", "src/github/CommitStats.py", "src/github/Download.py", "src/github/Event.py", "src/github/Gist.py", "src/github/GistComment.py", "src/github/GistHistoryState.py", "src/github/GitAuthor.py", "src/github/GitBlob.py", "src/github/GitCommit.py", "src/github/GitObject.py", "src/github/GitRef.py", "src/github/GitTag.py", "src/github/GitTree.py", "src/github/GitTreeElement.py", "src/github/Hook.py", "src/github/Issue.py", "src/github/IssueComment.py", "src/github/IssueEvent.py", "src/github/Label.py", "src/github/Milestone.py", "src/github/NamedUser.py", "src/github/Organization.py", "src/github/Permissions.py", "src/github/Plan.py", "src/github/PullRequest.py", "src/github/PullRequestComment.py", "src/github/PullRequestFile.py", "src/github/Repository.py", "src/github/RepositoryKey.py", "src/github/Tag.py", "src/github/Team.py", "src/github/UserKey.py", "test/Issue.py", "test/IssueEvent.py", "test/ReplayData/Issue.testAddAndRemoveLabels.txt", "test/ReplayData/Issue.testDeleteAndSetLabels.txt", "test/ReplayData/Issue.testGetLabels.txt", "test/ReplayData/IssueEvent.setUp.txt"]) + + def testMerge(self): + self.assertFalse(self.pull.is_merged()) + status = self.pull.merge() + self.assertEqual(status.sha, "688208b1a5a074871d0e9376119556897439697d") + self.assertTrue(status.merged) + self.assertEqual(status.message, "Pull Request successfully merged") + self.assertTrue(self.pull.is_merged()) + + def testMergeWithCommitMessage(self): + self.g.get_user().get_repo("PyGithub").get_pull(39).merge("Custom commit message created by PyGithub") diff --git a/lib/github/tests/PullRequestComment.py b/lib/github/tests/PullRequestComment.py new file mode 100644 index 0000000000..bcdef2b403 --- /dev/null +++ b/lib/github/tests/PullRequestComment.py @@ -0,0 +1,60 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + +import datetime + + +class PullRequestComment(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.comment = self.g.get_user().get_repo("PyGithub").get_pull(31).get_comment(886298) + + def testAttributes(self): + self.assertEqual(self.comment.body, "Comment created by PyGithub") + self.assertEqual(self.comment.commit_id, "8a4f306d4b223682dd19410d4a9150636ebe4206") + self.assertEqual(self.comment.created_at, datetime.datetime(2012, 5, 27, 9, 40, 12)) + self.assertEqual(self.comment.id, 886298) + self.assertEqual(self.comment.original_commit_id, "8a4f306d4b223682dd19410d4a9150636ebe4206") + self.assertEqual(self.comment.original_position, 5) + self.assertEqual(self.comment.path, "src/github/Issue.py") + self.assertEqual(self.comment.position, 5) + self.assertEqual(self.comment.updated_at, datetime.datetime(2012, 5, 27, 9, 40, 12)) + self.assertEqual(self.comment.url, "https://api.github.com/repos/jacquev6/PyGithub/pulls/comments/886298") + self.assertEqual(self.comment.user.login, "jacquev6") + self.assertEqual(self.comment.html_url, "https://github.com/jacquev6/PyGithub/pull/170#issuecomment-18637907") + + # test __repr__() based on this attributes + self.assertEqual(self.comment.__repr__(), 'PullRequestComment(user=NamedUser(login="jacquev6"), id=886298)') + + + def testEdit(self): + self.comment.edit("Comment edited by PyGithub") + self.assertEqual(self.comment.body, "Comment edited by PyGithub") + + def testDelete(self): + self.comment.delete() diff --git a/lib/github/tests/PullRequestFile.py b/lib/github/tests/PullRequestFile.py new file mode 100644 index 0000000000..795333cb2e --- /dev/null +++ b/lib/github/tests/PullRequestFile.py @@ -0,0 +1,47 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + + +class PullRequestFile(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.file = self.g.get_user().get_repo("PyGithub").get_pull(31).get_files()[0] + + def testAttributes(self): + self.assertEqual(self.file.additions, 1) + self.assertEqual(self.file.blob_url, "https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/codegen/templates/GithubObject.py") + self.assertEqual(self.file.changes, 2) + self.assertEqual(self.file.deletions, 1) + self.assertEqual(self.file.filename, "codegen/templates/GithubObject.py") + self.assertEqual(self.file.patch, '@@ -70,7 +70,7 @@ def __useAttributes( self, attributes ):\n \n # @toto No need to check if attribute is in attributes when attribute is mandatory\n {% for attribute in class.attributes|dictsort:"name" %}\n- if "{{ attribute.name }}" in attributes and attributes[ "{{ attribute.name }}" ] is not None:\n+ if "{{ attribute.name }}" in attributes and attributes[ "{{ attribute.name }}" ] is not None: # pragma no branch\n \n {% if attribute.type.cardinality == "scalar" %}\n {% if attribute.type.simple %}') + self.assertEqual(self.file.raw_url, "https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/codegen/templates/GithubObject.py") + self.assertEqual(self.file.sha, "8a4f306d4b223682dd19410d4a9150636ebe4206") + self.assertEqual(self.file.status, "modified") + + # test __repr__() based on this attributes + self.assertEqual(self.file.__repr__(), 'File(sha="8a4f306d4b223682dd19410d4a9150636ebe4206", filename="codegen/templates/GithubObject.py")') diff --git a/lib/github/tests/RateLimiting.py b/lib/github/tests/RateLimiting.py new file mode 100644 index 0000000000..927655a23e --- /dev/null +++ b/lib/github/tests/RateLimiting.py @@ -0,0 +1,47 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Ed Jackson # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import datetime + +import Framework + + +class RateLimiting(Framework.TestCase): + def testRateLimiting(self): + self.assertEqual(self.g.rate_limiting, (5000, 5000)) + self.g.get_user("jacquev6") + self.assertEqual(self.g.rate_limiting, (4999, 5000)) + self.assertEqual(self.g.rate_limiting_resettime, 1375802816) + + def testResetTime(self): + self.assertEqual(self.g.rate_limiting_resettime, 1375802816) + + def testGetRateLimit(self): + rateLimit = self.g.get_rate_limit() + self.assertEqual(rateLimit.rate.limit, 5000) + self.assertEqual(rateLimit.rate.remaining, 5000) + self.assertEqual(rateLimit.rate.reset, datetime.datetime(2013, 9, 6, 10, 29, 57)) diff --git a/lib/github/tests/RawData.py b/lib/github/tests/RawData.py new file mode 100644 index 0000000000..16dc7288f4 --- /dev/null +++ b/lib/github/tests/RawData.py @@ -0,0 +1,99 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + +import github.NamedUser + + +class RawData(Framework.TestCase): + jacquev6RawData = { + 'disk_usage': 13812, + 'private_gists': 5, + 'public_repos': 21, + 'subscriptions_url': 'https://api.github.com/users/jacquev6/subscriptions', + 'gravatar_id': 'b68de5ae38616c296fa345d2b9df2225', + 'hireable': False, + 'id': 327146, + 'followers_url': 'https://api.github.com/users/jacquev6/followers', + 'following_url': 'https://api.github.com/users/jacquev6/following', + 'collaborators': 1, + 'total_private_repos': 4, + 'blog': 'http://vincent-jacques.net', + 'followers': 22, + 'location': 'Paris, France', + 'type': 'User', + 'email': 'vincent@vincent-jacques.net', + 'bio': '', + 'gists_url': 'https://api.github.com/users/jacquev6/gists{/gist_id}', + 'owned_private_repos': 4, + 'company': 'Criteo', + 'events_url': 'https://api.github.com/users/jacquev6/events{/privacy}', + 'html_url': 'https://github.com/jacquev6', + 'updated_at': '2013-03-12T22:13:32Z', + 'plan': { + 'collaborators': 1, + 'name': 'micro', + 'private_repos': 5, + 'space': 614400, + }, + 'received_events_url': 'https://api.github.com/users/jacquev6/received_events', + 'starred_url': 'https://api.github.com/users/jacquev6/starred{/owner}{/repo}', + 'public_gists': 2, + 'name': 'Vincent Jacques', + 'organizations_url': 'https://api.github.com/users/jacquev6/orgs', + 'url': 'https://api.github.com/users/jacquev6', + 'created_at': '2010-07-09T06:10:06Z', + 'avatar_url': 'https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png', + 'repos_url': 'https://api.github.com/users/jacquev6/repos', + 'following': 38, + 'login': 'jacquev6', + } + + planRawData = { + 'collaborators': 1, + 'name': 'micro', + 'private_repos': 5, + 'space': 614400, + } + + def testCompletedObject(self): + user = self.g.get_user("jacquev6") + self.assertTrue(user._CompletableGithubObject__completed) + self.assertEqual(user.raw_data, RawData.jacquev6RawData) + + def testNotYetCompletedObject(self): + user = self.g.get_user().get_repo("PyGithub").owner + self.assertFalse(user._CompletableGithubObject__completed) + self.assertEqual(user.raw_data, RawData.jacquev6RawData) + self.assertTrue(user._CompletableGithubObject__completed) + + def testNonCompletableObject(self): + plan = self.g.get_user().plan + self.assertEqual(plan.raw_data, RawData.planRawData) + + def testCreateObjectFromRawData(self): + user = self.g.create_from_raw_data(github.NamedUser.NamedUser, RawData.jacquev6RawData) + self.assertEqual(user._CompletableGithubObject__completed, True) + self.assertEqual(user.name, "Vincent Jacques") diff --git a/lib/github/tests/ReplayData/AuthenticatedUser.testAttributes.txt b/lib/github/tests/ReplayData/AuthenticatedUser.testAttributes.txt new file mode 100644 index 0000000000..4631e79e31 --- /dev/null +++ b/lib/github/tests/ReplayData/AuthenticatedUser.testAttributes.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4994'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"79f748546e5fc4492505a70de6542183"'), ('date', 'Tue, 08 May 2012 09:51:20 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"public_repos":10,"type":"User","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","followers":13,"bio":"","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","disk_usage":16692,"plan":{"private_repos":5,"space":614400,"name":"micro","collaborators":1},"html_url":"https://github.com/jacquev6","blog":"http://vincent-jacques.net","login":"jacquev6","email":"vincent@vincent-jacques.net","created_at":"2010-07-09T06:10:06Z","company":"Criteo","location":"Paris, France","total_private_repos":5,"public_gists":1,"following":24,"name":"Vincent Jacques","id":327146,"owned_private_repos":5,"private_gists":5,"collaborators":0,"hireable":false} + diff --git a/lib/github/tests/ReplayData/AuthenticatedUser.testCreateAuthorizationWithAllArguments.txt b/lib/github/tests/ReplayData/AuthenticatedUser.testCreateAuthorizationWithAllArguments.txt new file mode 100644 index 0000000000..113266f060 --- /dev/null +++ b/lib/github/tests/ReplayData/AuthenticatedUser.testCreateAuthorizationWithAllArguments.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/authorizations +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"note": "Note created by PyGithub", "scopes": ["repo"], "note_url": "http://vincent-jacques.net/PyGithub"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4991'), ('content-length', '382'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"41f3600b4ddb741cd59a00a88321af92"'), ('date', 'Tue, 22 May 2012 18:27:36 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/authorizations/372294')] +{"scopes":["repo"],"updated_at":"2012-05-22T18:27:36Z","app":{"url":"http://vincent-jacques.net/PyGithub","name":"Note created by PyGithub (API)"},"url":"https://api.github.com/authorizations/372294","token":"b7fd2a0346d9d590b1fad5e10971e8d29637a4ce","note":"Note created by PyGithub","note_url":"http://vincent-jacques.net/PyGithub","created_at":"2012-05-22T18:27:36Z","id":372294} + diff --git a/lib/github/tests/ReplayData/AuthenticatedUser.testCreateAuthorizationWithClientIdAndSecret.txt b/lib/github/tests/ReplayData/AuthenticatedUser.testCreateAuthorizationWithClientIdAndSecret.txt new file mode 100644 index 0000000000..4d3d405f25 --- /dev/null +++ b/lib/github/tests/ReplayData/AuthenticatedUser.testCreateAuthorizationWithClientIdAndSecret.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/authorizations +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"client_secret": "0123456789012345678901234567890123456789", "client_id": "01234567890123456789"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4991'), ('content-length', '382'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"41f3600b4ddb741cd59a00a88321af92"'), ('date', 'Tue, 22 May 2012 18:27:36 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/authorizations/372294')] +{"scopes":["repo"],"updated_at":"2012-05-22T18:27:36Z","app":{"url":"http://vincent-jacques.net/PyGithub","name":"Note created by PyGithub (API)"},"url":"https://api.github.com/authorizations/372294","token":"b7fd2a0346d9d590b1fad5e10971e8d29637a4ce","note":"Note created by PyGithub","note_url":"http://vincent-jacques.net/PyGithub","created_at":"2012-05-22T18:27:36Z","id":372294} + diff --git a/lib/github/tests/ReplayData/AuthenticatedUser.testCreateAuthorizationWithoutArguments.txt b/lib/github/tests/ReplayData/AuthenticatedUser.testCreateAuthorizationWithoutArguments.txt new file mode 100644 index 0000000000..a1fb20d702 --- /dev/null +++ b/lib/github/tests/ReplayData/AuthenticatedUser.testCreateAuthorizationWithoutArguments.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/authorizations +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4987'), ('content-length', '328'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"4a48781fcd24441dade6248aab748487"'), ('date', 'Tue, 22 May 2012 18:03:17 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/authorizations/372259')] +{"scopes":[],"updated_at":"2012-05-22T18:03:17Z","app":{"url":"http://developer.github.com/v3/oauth/#oauth-authorizations-api","name":"GitHub API"},"url":"https://api.github.com/authorizations/372259","token":"82459c4500086f8f0cc67d2936c17d1e27ad1c33","note":null,"created_at":"2012-05-22T18:03:17Z","note_url":null,"id":372259} + diff --git a/lib/github/tests/ReplayData/AuthenticatedUser.testCreateFork.txt b/lib/github/tests/ReplayData/AuthenticatedUser.testCreateFork.txt new file mode 100644 index 0000000000..cd3ab291fb --- /dev/null +++ b/lib/github/tests/ReplayData/AuthenticatedUser.testCreateFork.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/users/nvie +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4960'), ('content-length', '598'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"75740284d989e9a492e32f435cff48ac"'), ('date', 'Sat, 26 May 2012 20:23:33 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","public_gists":19,"url":"https://api.github.com/users/nvie","hireable":false,"bio":null,"company":"3rd Cloud","gravatar_id":"c5a7f21b46df698f3db31c37ed0cf55a","login":"nvie","blog":"http://nvie.com","email":"vincent@3rdcloud.com","public_repos":62,"followers":299,"name":"Vincent Driessen","created_at":"2009-05-12T21:19:38Z","location":"Netherlands","avatar_url":"https://secure.gravatar.com/avatar/c5a7f21b46df698f3db31c37ed0cf55a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":83844,"following":41,"html_url":"https://github.com/nvie"} + +https +GET +api.github.com +None +/repos/nvie/gitflow +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4959'), ('content-length', '1182'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"b96ea8f5f6ac24b533e2a5dc5ea2479d"'), ('date', 'Sat, 26 May 2012 20:23:34 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"description":"Git extensions to provide high-level repository operations for Vincent Driessen's branching model.","full_name":"nvie/gitflow","has_wiki":true,"has_issues":true,"updated_at":"2012-05-26T19:46:41Z","forks":330,"mirror_url":null,"homepage":"http://nvie.com/posts/a-successful-git-branching-model/","ssh_url":"git@github.com:nvie/gitflow.git","open_issues":92,"fork":false,"svn_url":"https://github.com/nvie/gitflow","pushed_at":"2012-02-14T13:11:04Z","size":4602,"html_url":"https://github.com/nvie/gitflow","private":false,"url":"https://api.github.com/repos/nvie/gitflow","clone_url":"https://github.com/nvie/gitflow.git","owner":{"gravatar_id":"c5a7f21b46df698f3db31c37ed0cf55a","avatar_url":"https://secure.gravatar.com/avatar/c5a7f21b46df698f3db31c37ed0cf55a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/nvie","login":"nvie","id":83844},"name":"gitflow","has_downloads":true,"language":"Shell","watchers":3973,"git_url":"git://github.com/nvie/gitflow.git","id":481366,"permissions":{"admin":false,"pull":true,"push":false},"master_branch":"develop","created_at":"2010-01-20T23:14:12Z"} + +https +POST +api.github.com +None +/repos/nvie/gitflow/forks +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +202 +[('status', '202 Accepted'), ('x-ratelimit-remaining', '4958'), ('content-length', '3486'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"92f5b171559bccda47d7ebb598ba4f73"'), ('date', 'Sat, 26 May 2012 20:23:35 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"parent":{"clone_url":"https://github.com/nvie/gitflow.git","has_downloads":true,"watchers":3973,"updated_at":"2012-05-26T20:23:35Z","master_branch":"develop","homepage":"http://nvie.com/posts/a-successful-git-branching-model/","url":"https://api.github.com/repos/nvie/gitflow","has_wiki":true,"has_issues":true,"fork":false,"forks":331,"size":4602,"private":false,"open_issues":92,"svn_url":"https://github.com/nvie/gitflow","owner":{"url":"https://api.github.com/users/nvie","avatar_url":"https://secure.gravatar.com/avatar/c5a7f21b46df698f3db31c37ed0cf55a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c5a7f21b46df698f3db31c37ed0cf55a","login":"nvie","id":83844},"name":"gitflow","language":"Shell","description":"Git extensions to provide high-level repository operations for Vincent Driessen's branching model.","ssh_url":"git@github.com:nvie/gitflow.git","git_url":"git://github.com/nvie/gitflow.git","pushed_at":"2012-02-14T13:11:04Z","created_at":"2010-01-20T23:14:12Z","id":481366,"mirror_url":null,"html_url":"https://github.com/nvie/gitflow","full_name":"nvie/gitflow"},"clone_url":"https://github.com/jacquev6/gitflow.git","has_downloads":true,"watchers":1,"updated_at":"2012-05-26T20:23:35Z","source":{"clone_url":"https://github.com/nvie/gitflow.git","has_downloads":true,"watchers":3973,"updated_at":"2012-05-26T20:23:35Z","master_branch":"develop","homepage":"http://nvie.com/posts/a-successful-git-branching-model/","url":"https://api.github.com/repos/nvie/gitflow","has_wiki":true,"has_issues":true,"fork":false,"forks":331,"size":4602,"private":false,"open_issues":92,"svn_url":"https://github.com/nvie/gitflow","owner":{"url":"https://api.github.com/users/nvie","avatar_url":"https://secure.gravatar.com/avatar/c5a7f21b46df698f3db31c37ed0cf55a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c5a7f21b46df698f3db31c37ed0cf55a","login":"nvie","id":83844},"name":"gitflow","language":"Shell","description":"Git extensions to provide high-level repository operations for Vincent Driessen's branching model.","ssh_url":"git@github.com:nvie/gitflow.git","git_url":"git://github.com/nvie/gitflow.git","pushed_at":"2012-02-14T13:11:04Z","created_at":"2010-01-20T23:14:12Z","id":481366,"mirror_url":null,"html_url":"https://github.com/nvie/gitflow","full_name":"nvie/gitflow"},"permissions":{"pull":true,"admin":true,"push":true},"master_branch":"develop","homepage":"http://nvie.com/posts/a-successful-git-branching-model/","url":"https://api.github.com/repos/jacquev6/gitflow","has_wiki":true,"has_issues":false,"fork":true,"forks":0,"size":4602,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/gitflow","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"gitflow","language":"Shell","description":"Git extensions to provide high-level repository operations for Vincent Driessen's branching model.","ssh_url":"git@github.com:jacquev6/gitflow.git","git_url":"git://github.com/jacquev6/gitflow.git","pushed_at":"2012-02-14T13:11:04Z","created_at":"2012-05-26T20:23:35Z","id":4457584,"mirror_url":null,"html_url":"https://github.com/jacquev6/gitflow","full_name":"jacquev6/gitflow"} + diff --git a/lib/github/tests/ReplayData/AuthenticatedUser.testCreateGist.txt b/lib/github/tests/ReplayData/AuthenticatedUser.testCreateGist.txt new file mode 100644 index 0000000000..130579d76d --- /dev/null +++ b/lib/github/tests/ReplayData/AuthenticatedUser.testCreateGist.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/gists +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"files": {"foobar.txt": {"content": "File created by PyGithub"}}, "public": true, "description": "Gist created by PyGithub"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4967'), ('content-length', '1446'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"4099af9b70c91fb9c1c8dc72bf773c33"'), ('date', 'Sat, 19 May 2012 07:00:58 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/gists/2729810')] +{"updated_at":"2012-05-19T07:00:58Z","forks":[],"url":"https://api.github.com/gists/2729810","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729810.git","git_push_url":"git@gist.github.com:2729810.git","files":{"foobar.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729810/73a1c7f17aa0ad5d7cbb5a8ca033ce47d3d23197/foobar.txt","size":24,"filename":"foobar.txt","content":"File created by PyGithub","language":"Text"}},"html_url":"https://gist.github.com/2729810","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"description":"Gist created by PyGithub","created_at":"2012-05-19T07:00:58Z","id":"2729810","history":[{"change_status":{"deletions":0,"additions":1,"total":1},"url":"https://api.github.com/gists/2729810/35deb29ab1caf4c68c03d8244ad674b56de01a5c","committed_at":"2012-05-19T07:00:58Z","version":"35deb29ab1caf4c68c03d8244ad674b56de01a5c","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146}}]} + diff --git a/lib/github/tests/ReplayData/AuthenticatedUser.testCreateGistWithoutDescription.txt b/lib/github/tests/ReplayData/AuthenticatedUser.testCreateGistWithoutDescription.txt new file mode 100644 index 0000000000..6e98cc4e00 --- /dev/null +++ b/lib/github/tests/ReplayData/AuthenticatedUser.testCreateGistWithoutDescription.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/gists +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"files": {"foobar.txt": {"content": "File created by PyGithub"}}, "public": true} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4981'), ('content-length', '1424'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"7abbb6858d17ad64e3d5874676725694"'), ('date', 'Sat, 26 May 2012 09:50:03 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/gists/2793179')] +{"updated_at":"2012-05-26T09:50:02Z","url":"https://api.github.com/gists/2793179","comments":0,"public":true,"forks":[],"git_pull_url":"git://gist.github.com/2793179.git","files":{"foobar.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2793179/73a1c7f17aa0ad5d7cbb5a8ca033ce47d3d23197/foobar.txt","size":24,"filename":"foobar.txt","content":"File created by PyGithub","language":"Text"}},"user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"description":null,"created_at":"2012-05-26T09:50:02Z","git_push_url":"git@gist.github.com:2793179.git","id":"2793179","history":[{"url":"https://api.github.com/gists/2793179/069e7c0041c34619b5aebf0e918536cb3bfeff9a","change_status":{"deletions":0,"additions":1,"total":1},"version":"069e7c0041c34619b5aebf0e918536cb3bfeff9a","committed_at":"2012-05-26T09:50:03Z","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"}}],"html_url":"https://gist.github.com/2793179"} + diff --git a/lib/github/tests/ReplayData/AuthenticatedUser.testCreateKey.txt b/lib/github/tests/ReplayData/AuthenticatedUser.testCreateKey.txt new file mode 100644 index 0000000000..822ec5101c --- /dev/null +++ b/lib/github/tests/ReplayData/AuthenticatedUser.testCreateKey.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/user/keys +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"key": "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA2Mm0RjTNAYFfSCtUpO54usdseroUSIYg5KX4JoseTpqyiB/hqewjYLAdUq/tNIQzrkoEJWSyZrQt0ma7/YCyMYuNGd3DU6q6ZAyBeY3E9RyCiKjO3aTL2VKQGFvBVVmGdxGVSCITRphAcsKc/PF35/fg9XP9S0anMXcEFtdfMHz41SSw+XtE+Vc+6cX9FuI5qUfLGbkv8L1v3g4uw9VXlzq4GfTA+1S7D6mcoGHopAIXFlVr+2RfDKdSURMcB22z41fljO1MW4+zUS/4FyUTpL991es5fcwKXYoiE+x06VJeJJ1Krwx+DZj45uweV6cHXt2JwJEI9fWB6WyBlDejWw== vincent@IDEE", "title": "Key added through PyGithub"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4984'), ('content-length', '505'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"7261ec55c886d6bf42e48d5bf9544586"'), ('date', 'Sat, 26 May 2012 19:49:30 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/user/keys/2626650')] +{"url":"https://api.github.com/user/keys/2626650","key":"ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA2Mm0RjTNAYFfSCtUpO54usdseroUSIYg5KX4JoseTpqyiB/hqewjYLAdUq/tNIQzrkoEJWSyZrQt0ma7/YCyMYuNGd3DU6q6ZAyBeY3E9RyCiKjO3aTL2VKQGFvBVVmGdxGVSCITRphAcsKc/PF35/fg9XP9S0anMXcEFtdfMHz41SSw+XtE+Vc+6cX9FuI5qUfLGbkv8L1v3g4uw9VXlzq4GfTA+1S7D6mcoGHopAIXFlVr+2RfDKdSURMcB22z41fljO1MW4+zUS/4FyUTpL991es5fcwKXYoiE+x06VJeJJ1Krwx+DZj45uweV6cHXt2JwJEI9fWB6WyBlDejWw==","verified":true,"title":"Key added through PyGithub","id":2626650} + diff --git a/lib/github/tests/ReplayData/AuthenticatedUser.testCreateRepository.txt b/lib/github/tests/ReplayData/AuthenticatedUser.testCreateRepository.txt new file mode 100644 index 0000000000..e2d7d18e94 --- /dev/null +++ b/lib/github/tests/ReplayData/AuthenticatedUser.testCreateRepository.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/user/repos +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"name": "TestPyGithub"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4996'), ('content-length', '1035'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"0dee1203022ede8b8374b387ba479ffd"'), ('date', 'Thu, 10 May 2012 19:17:12 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/repos/jacquev6/TestPyGithub')] +{"mirror_url":null,"homepage":null,"clone_url":"https://github.com/jacquev6/TestPyGithub.git","html_url":"https://github.com/jacquev6/TestPyGithub","url":"https://api.github.com/repos/jacquev6/TestPyGithub","has_downloads":true,"watchers":1,"git_url":"git://github.com/jacquev6/TestPyGithub.git","permissions":{"admin":true,"pull":true,"push":true},"has_wiki":true,"has_issues":true,"fork":false,"forks":1,"language":null,"size":0,"description":null,"private":false,"created_at":"2012-05-10T19:17:12Z","open_issues":0,"svn_url":"https://github.com/jacquev6/TestPyGithub","owner":{"url":"https://api.github.com/users/jacquev6","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"name":"TestPyGithub","pushed_at":"2012-05-10T19:17:12Z","id":4288693,"ssh_url":"git@github.com:jacquev6/TestPyGithub.git","updated_at":"2012-05-10T19:17:12Z"} + diff --git a/lib/github/tests/ReplayData/AuthenticatedUser.testCreateRepositoryWithAllArguments.txt b/lib/github/tests/ReplayData/AuthenticatedUser.testCreateRepositoryWithAllArguments.txt new file mode 100644 index 0000000000..f192e313e5 --- /dev/null +++ b/lib/github/tests/ReplayData/AuthenticatedUser.testCreateRepositoryWithAllArguments.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/user/repos +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"has_wiki": false, "name": "TestPyGithub", "has_downloads": false, "private": false, "has_issues": false, "homepage": "http://foobar.com", "description": "Repo created by PyGithub"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4979'), ('content-length', '1111'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"1c6473a60481c33b28a926041f763fce"'), ('date', 'Sat, 26 May 2012 09:55:27 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/repos/jacquev6/TestPyGithub')] +{"clone_url":"https://github.com/jacquev6/TestPyGithub.git","has_downloads":false,"watchers":1,"git_url":"git://github.com/jacquev6/TestPyGithub.git","updated_at":"2012-05-26T09:55:27Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://foobar.com","url":"https://api.github.com/repos/jacquev6/TestPyGithub","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"mirror_url":null,"size":0,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/TestPyGithub","owner":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"name":"TestPyGithub","language":null,"description":"Repo created by PyGithub","ssh_url":"git@github.com:jacquev6/TestPyGithub.git","pushed_at":"2012-05-26T09:55:27Z","created_at":"2012-05-26T09:55:27Z","id":4454027,"html_url":"https://github.com/jacquev6/TestPyGithub","full_name":"jacquev6/TestPyGithub"} + diff --git a/lib/github/tests/ReplayData/AuthenticatedUser.testCreateRepositoryWithAutoInit.txt b/lib/github/tests/ReplayData/AuthenticatedUser.testCreateRepositoryWithAutoInit.txt new file mode 100644 index 0000000000..c6a05de286 --- /dev/null +++ b/lib/github/tests/ReplayData/AuthenticatedUser.testCreateRepositoryWithAutoInit.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/user/repos +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"gitignore_template": "Python", "name": "TestPyGithub", "auto_init": true} +201 +[('status', '201 Created'), ('content-length', '1176'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('x-ratelimit-remaining', '4999'), ('server', 'nginx'), ('connection', 'keep-alive'), ('etag', '"762d15bfe4477f7ec15c3c08a07da857"'), ('location', 'https://api.github.com/repos/jacquev6/TestPyGithub'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Sat, 03 Nov 2012 09:01:00 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"watchers":0,"pushed_at":"2012-11-03T09:00:59Z","forks":0,"has_issues":true,"has_downloads":true,"open_issues_count":0,"description":null,"html_url":"https://github.com/jacquev6/TestPyGithub","owner":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/TestPyGithub","updated_at":"2012-11-03T09:01:00Z","permissions":{"push":true,"pull":true,"admin":true},"mirror_url":null,"clone_url":"https://github.com/jacquev6/TestPyGithub.git","language":null,"has_wiki":true,"ssh_url":"git@github.com:jacquev6/TestPyGithub.git","svn_url":"https://github.com/jacquev6/TestPyGithub","size":0,"fork":false,"full_name":"jacquev6/TestPyGithub","open_issues":0,"git_url":"git://github.com/jacquev6/TestPyGithub.git","forks_count":0,"name":"TestPyGithub","created_at":"2012-11-03T09:00:59Z","homepage":null,"private":false,"id":6517838,"master_branch":"master","network_count":0,"watchers_count":0} + diff --git a/lib/github/tests/ReplayData/AuthenticatedUser.testEditWithAllArguments.txt b/lib/github/tests/ReplayData/AuthenticatedUser.testEditWithAllArguments.txt new file mode 100644 index 0000000000..33b80f9068 --- /dev/null +++ b/lib/github/tests/ReplayData/AuthenticatedUser.testEditWithAllArguments.txt @@ -0,0 +1,10 @@ +https +PATCH +api.github.com +None +/user +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"bio": "Bio edited by PyGithub", "name": "Name edited by PyGithub", "company": "Company edited by PyGithub", "blog": "Blog edited by PyGithub", "location": "Location edited by PyGithub", "hireable": true, "email": "Email edited by PyGithub"} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4998'), ('content-length', '858'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"4695e7d2dc3084a322fe83f342448a79"'), ('date', 'Tue, 08 May 2012 10:04:55 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"private_gists":5,"type":"User","hireable":true,"following":24,"company":"Company edited by PyGithub","blog":"Blog edited by PyGithub","bio":"Bio edited by PyGithub","html_url":"https://github.com/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","total_private_repos":5,"public_repos":10,"url":"https://api.github.com/users/jacquev6","owned_private_repos":5,"login":"jacquev6","collaborators":0,"email":"Email edited by PyGithub","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","disk_usage":16692,"plan":{"private_repos":5,"collaborators":1,"space":614400,"name":"micro"},"created_at":"2010-07-09T06:10:06Z","name":"Name edited by PyGithub","public_gists":1,"followers":13,"id":327146,"location":"Location edited by PyGithub"} diff --git a/lib/github/tests/ReplayData/AuthenticatedUser.testEditWithoutArguments.txt b/lib/github/tests/ReplayData/AuthenticatedUser.testEditWithoutArguments.txt new file mode 100644 index 0000000000..faf3ec04b0 --- /dev/null +++ b/lib/github/tests/ReplayData/AuthenticatedUser.testEditWithoutArguments.txt @@ -0,0 +1,11 @@ +https +PATCH +api.github.com +None +/user +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4996'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"811fb4d5df8bae5b1ef7d63537891a1c"'), ('date', 'Tue, 08 May 2012 10:05:35 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"private_gists":5,"collaborators":0,"type":"User","bio":"","url":"https://api.github.com/users/jacquev6","public_repos":10,"followers":13,"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","total_private_repos":5,"disk_usage":16692,"plan":{"collaborators":1,"space":614400,"name":"micro","private_repos":5},"html_url":"https://github.com/jacquev6","owned_private_repos":5,"login":"jacquev6","blog":"http://vincent-jacques.net","email":"vincent@vincent-jacques.net","created_at":"2010-07-09T06:10:06Z","company":"Criteo","location":"Paris, France","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","following":24,"name":"Vincent Jacques","public_gists":1,"hireable":false,"id":327146} + diff --git a/lib/github/tests/ReplayData/AuthenticatedUser.testEmails.txt b/lib/github/tests/ReplayData/AuthenticatedUser.testEmails.txt new file mode 100644 index 0000000000..eeee185680 --- /dev/null +++ b/lib/github/tests/ReplayData/AuthenticatedUser.testEmails.txt @@ -0,0 +1,55 @@ +https +GET +api.github.com +None +/user/emails +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4934'), ('content-length', '64'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"ea6dacf29569317ccf460b4bb07075e5"'), ('date', 'Sun, 20 May 2012 12:41:39 GMT'), ('content-type', 'application/json; charset=utf-8')] +["vincent@vincent-jacques.net","github.com@vincent-jacques.net"] + +https +POST +api.github.com +None +/user/emails +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +["1@foobar.com", "2@foobar.com"] +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4933'), ('content-length', '94'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"8efae10ea5e433b0d68201389058e4ee"'), ('date', 'Sun, 20 May 2012 12:41:40 GMT'), ('content-type', 'application/json; charset=utf-8')] +["vincent@vincent-jacques.net","1@foobar.com","2@foobar.com","github.com@vincent-jacques.net"] + +https +GET +api.github.com +None +/user/emails +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '94'), ('x-ratelimit-remaining', '4932'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"8efae10ea5e433b0d68201389058e4ee"'), ('date', 'Sun, 20 May 2012 12:41:41 GMT'), ('content-type', 'application/json; charset=utf-8')] +["vincent@vincent-jacques.net","1@foobar.com","2@foobar.com","github.com@vincent-jacques.net"] + +https +DELETE +api.github.com +None +/user/emails +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +["1@foobar.com", "2@foobar.com"] +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4931'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sun, 20 May 2012 12:41:41 GMT')] + + +https +GET +api.github.com +None +/user/emails +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4930'), ('content-length', '64'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"ea6dacf29569317ccf460b4bb07075e5"'), ('date', 'Sun, 20 May 2012 12:41:42 GMT'), ('content-type', 'application/json; charset=utf-8')] +["vincent@vincent-jacques.net","github.com@vincent-jacques.net"] + diff --git a/lib/github/tests/ReplayData/AuthenticatedUser.testFollowing.txt b/lib/github/tests/ReplayData/AuthenticatedUser.testFollowing.txt new file mode 100644 index 0000000000..e1212802c8 --- /dev/null +++ b/lib/github/tests/ReplayData/AuthenticatedUser.testFollowing.txt @@ -0,0 +1,88 @@ +https +GET +api.github.com +None +/users/nvie +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4997'), ('content-length', '598'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"1f414bb12fcd22848c2c09e507bd3450"'), ('date', 'Sun, 20 May 2012 12:47:49 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","avatar_url":"https://secure.gravatar.com/avatar/c5a7f21b46df698f3db31c37ed0cf55a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","company":"3rd Cloud","url":"https://api.github.com/users/nvie","gravatar_id":"c5a7f21b46df698f3db31c37ed0cf55a","followers":297,"public_gists":16,"public_repos":61,"login":"nvie","email":"vincent@3rdcloud.com","hireable":false,"html_url":"https://github.com/nvie","name":"Vincent Driessen","created_at":"2009-05-12T21:19:38Z","location":"Netherlands","bio":null,"id":83844,"following":41,"blog":"http://nvie.com"} + +https +GET +api.github.com +None +/user/following +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '7072'), ('x-ratelimit-remaining', '4996'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"7ee97a1de549c0ab507d72d9851d28d2"'), ('date', 'Sun, 20 May 2012 12:47:49 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/users/schacon","avatar_url":"https://secure.gravatar.com/avatar/9375a9529679f1b42b567a640d775e7d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"schacon","gravatar_id":"9375a9529679f1b42b567a640d775e7d","id":70},{"url":"https://api.github.com/users/jamis","avatar_url":"https://secure.gravatar.com/avatar/992fe8c19bbbc27f2b562a9f96efc03d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jamis","gravatar_id":"992fe8c19bbbc27f2b562a9f96efc03d","id":1627},{"url":"https://api.github.com/users/chad","avatar_url":"https://secure.gravatar.com/avatar/77f306388bb6ae00ac0b0401e27cdc99?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"chad","gravatar_id":"77f306388bb6ae00ac0b0401e27cdc99","id":237},{"url":"https://api.github.com/users/unclebob","avatar_url":"https://secure.gravatar.com/avatar/e47a3e81d72676bd497b1cb67f66da97?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"unclebob","gravatar_id":"e47a3e81d72676bd497b1cb67f66da97","id":36901},{"url":"https://api.github.com/users/dabrahams","avatar_url":"https://secure.gravatar.com/avatar/5b45540ae377ec54a071f313b7193a27?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"dabrahams","gravatar_id":"5b45540ae377ec54a071f313b7193a27","id":44065},{"url":"https://api.github.com/users/jnorthrup","avatar_url":"https://secure.gravatar.com/avatar/29222a2dca6dd4cd33790d72ff3f5346?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jnorthrup","gravatar_id":"29222a2dca6dd4cd33790d72ff3f5346","id":73514},{"url":"https://api.github.com/users/brugidou","avatar_url":"https://secure.gravatar.com/avatar/43485eeefd3da3c96a7ea0c7e6b839dc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"brugidou","gravatar_id":"43485eeefd3da3c96a7ea0c7e6b839dc","id":167633},{"url":"https://api.github.com/users/regisb","avatar_url":"https://secure.gravatar.com/avatar/43d211a7021343f2be236d2b9855b734?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"regisb","gravatar_id":"43d211a7021343f2be236d2b9855b734","id":44319},{"url":"https://api.github.com/users/walidk","avatar_url":"https://secure.gravatar.com/avatar/e251d20766937949a109603ca37bb3be?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"walidk","gravatar_id":"e251d20766937949a109603ca37bb3be","id":734669},{"url":"https://api.github.com/users/tanzilli","avatar_url":"https://secure.gravatar.com/avatar/5d533d287dda8809a5369b65063ef725?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"tanzilli","gravatar_id":"5d533d287dda8809a5369b65063ef725","id":434112},{"url":"https://api.github.com/users/fjardon","avatar_url":"https://secure.gravatar.com/avatar/cb044bd9a9f6548b9a9bae44617c97c7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"fjardon","gravatar_id":"cb044bd9a9f6548b9a9bae44617c97c7","id":121402},{"url":"https://api.github.com/users/r3c","avatar_url":"https://secure.gravatar.com/avatar/9240b01ceef60b45be83aee8637e7043?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"r3c","gravatar_id":"9240b01ceef60b45be83aee8637e7043","id":979446},{"url":"https://api.github.com/users/sdanzan","avatar_url":"https://secure.gravatar.com/avatar/4a1e187f4f22547534a56966f6d8f942?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"sdanzan","gravatar_id":"4a1e187f4f22547534a56966f6d8f942","id":1094967},{"url":"https://api.github.com/users/vineus","avatar_url":"https://secure.gravatar.com/avatar/2d0c93649b7572036335aed380e351e5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"vineus","gravatar_id":"2d0c93649b7572036335aed380e351e5","id":467126},{"url":"https://api.github.com/users/cjuniet","avatar_url":"https://secure.gravatar.com/avatar/197eed5292fd11c0277335c3524ccfd5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"cjuniet","gravatar_id":"197eed5292fd11c0277335c3524ccfd5","id":1233553},{"url":"https://api.github.com/users/gturri","avatar_url":"https://secure.gravatar.com/avatar/ba064e32f068e12bfc87d178179878a5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"gturri","gravatar_id":"ba064e32f068e12bfc87d178179878a5","id":308601},{"url":"https://api.github.com/users/ant9000","avatar_url":"https://secure.gravatar.com/avatar/05c5d147f5decac1213f47007f6e97ed?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ant9000","gravatar_id":"05c5d147f5decac1213f47007f6e97ed","id":803884},{"url":"https://api.github.com/users/asquini","avatar_url":"https://secure.gravatar.com/avatar/ffc7ee9137c7c6859958bd21b724dde1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"asquini","gravatar_id":"ffc7ee9137c7c6859958bd21b724dde1","id":1159877},{"url":"https://api.github.com/users/claudyus","avatar_url":"https://secure.gravatar.com/avatar/694d276cdabd74c2538838f55d289143?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"claudyus","gravatar_id":"694d276cdabd74c2538838f55d289143","id":509291},{"url":"https://api.github.com/users/jardon-u","avatar_url":"https://secure.gravatar.com/avatar/1b4be24fa7e62eb508ca448da99e43d4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jardon-u","gravatar_id":"1b4be24fa7e62eb508ca448da99e43d4","id":994192},{"url":"https://api.github.com/users/s-bernard","avatar_url":"https://secure.gravatar.com/avatar/046dc82526c7cb4c60d8e70c6f4d4615?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"s-bernard","gravatar_id":"046dc82526c7cb4c60d8e70c6f4d4615","id":1468889},{"url":"https://api.github.com/users/kamaradclimber","avatar_url":"https://secure.gravatar.com/avatar/0c43eba4a99f65e071e66e684cea8177?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"kamaradclimber","gravatar_id":"0c43eba4a99f65e071e66e684cea8177","id":503537},{"url":"https://api.github.com/users/Lyloa","avatar_url":"https://secure.gravatar.com/avatar/1517ed584458ccf83e03f5d77d9699d7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"Lyloa","gravatar_id":"1517ed584458ccf83e03f5d77d9699d7","id":1131432},{"url":"https://api.github.com/users/nvie","avatar_url":"https://secure.gravatar.com/avatar/c5a7f21b46df698f3db31c37ed0cf55a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"nvie","gravatar_id":"c5a7f21b46df698f3db31c37ed0cf55a","id":83844}] + +https +GET +api.github.com +None +/user/following/nvie +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4995'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sun, 20 May 2012 12:47:50 GMT')] + + +https +DELETE +api.github.com +None +/user/following/nvie +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4994'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sun, 20 May 2012 12:47:51 GMT')] + + +https +GET +api.github.com +None +/user/following/nvie +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +404 +[('status', '404 Not Found'), ('x-ratelimit-remaining', '4993'), ('content-length', '23'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"e66a7a6c91e2c26803f3f49feb7a883f"'), ('date', 'Sun, 20 May 2012 12:47:51 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"message":"Not Found"} + +https +PUT +api.github.com +None +/user/following/nvie +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4992'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sun, 20 May 2012 12:47:52 GMT')] + + +https +GET +api.github.com +None +/user/following/nvie +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4991'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sun, 20 May 2012 12:47:52 GMT')] + + +https +GET +api.github.com +None +/user/followers +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4990'), ('content-length', '3849'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"f99f2d634d4429def3c7fae66ead9cb9"'), ('date', 'Sun, 20 May 2012 12:47:53 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/users/jnorthrup","gravatar_id":"29222a2dca6dd4cd33790d72ff3f5346","avatar_url":"https://secure.gravatar.com/avatar/29222a2dca6dd4cd33790d72ff3f5346?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jnorthrup","id":73514},{"url":"https://api.github.com/users/brugidou","gravatar_id":"43485eeefd3da3c96a7ea0c7e6b839dc","avatar_url":"https://secure.gravatar.com/avatar/43485eeefd3da3c96a7ea0c7e6b839dc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"brugidou","id":167633},{"url":"https://api.github.com/users/regisb","gravatar_id":"43d211a7021343f2be236d2b9855b734","avatar_url":"https://secure.gravatar.com/avatar/43d211a7021343f2be236d2b9855b734?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"regisb","id":44319},{"url":"https://api.github.com/users/walidk","gravatar_id":"e251d20766937949a109603ca37bb3be","avatar_url":"https://secure.gravatar.com/avatar/e251d20766937949a109603ca37bb3be?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"walidk","id":734669},{"url":"https://api.github.com/users/afzalkhan","gravatar_id":"8e85398b116be75d4baeeddfc9c3cce1","avatar_url":"https://secure.gravatar.com/avatar/8e85398b116be75d4baeeddfc9c3cce1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"afzalkhan","id":1003845},{"url":"https://api.github.com/users/sdanzan","gravatar_id":"4a1e187f4f22547534a56966f6d8f942","avatar_url":"https://secure.gravatar.com/avatar/4a1e187f4f22547534a56966f6d8f942?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"sdanzan","id":1094967},{"url":"https://api.github.com/users/vineus","gravatar_id":"2d0c93649b7572036335aed380e351e5","avatar_url":"https://secure.gravatar.com/avatar/2d0c93649b7572036335aed380e351e5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"vineus","id":467126},{"url":"https://api.github.com/users/gturri","gravatar_id":"ba064e32f068e12bfc87d178179878a5","avatar_url":"https://secure.gravatar.com/avatar/ba064e32f068e12bfc87d178179878a5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"gturri","id":308601},{"url":"https://api.github.com/users/fjardon","gravatar_id":"cb044bd9a9f6548b9a9bae44617c97c7","avatar_url":"https://secure.gravatar.com/avatar/cb044bd9a9f6548b9a9bae44617c97c7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"fjardon","id":121402},{"url":"https://api.github.com/users/cjuniet","gravatar_id":"197eed5292fd11c0277335c3524ccfd5","avatar_url":"https://secure.gravatar.com/avatar/197eed5292fd11c0277335c3524ccfd5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"cjuniet","id":1233553},{"url":"https://api.github.com/users/jardon-u","gravatar_id":"1b4be24fa7e62eb508ca448da99e43d4","avatar_url":"https://secure.gravatar.com/avatar/1b4be24fa7e62eb508ca448da99e43d4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jardon-u","id":994192},{"url":"https://api.github.com/users/kamaradclimber","gravatar_id":"0c43eba4a99f65e071e66e684cea8177","avatar_url":"https://secure.gravatar.com/avatar/0c43eba4a99f65e071e66e684cea8177?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"kamaradclimber","id":503537},{"url":"https://api.github.com/users/L42y","gravatar_id":"4dc11d87759273f3466ab4f673bcecae","avatar_url":"https://secure.gravatar.com/avatar/4dc11d87759273f3466ab4f673bcecae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"L42y","id":284820}] + diff --git a/lib/github/tests/ReplayData/AuthenticatedUser.testGetAuthorizations.txt b/lib/github/tests/ReplayData/AuthenticatedUser.testGetAuthorizations.txt new file mode 100644 index 0000000000..cdd655b539 --- /dev/null +++ b/lib/github/tests/ReplayData/AuthenticatedUser.testGetAuthorizations.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/authorizations +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4990'), ('content-length', '384'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"f6052ad2b9941ba0829e326bd76377a3"'), ('date', 'Tue, 22 May 2012 18:31:38 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"scopes":["repo"],"updated_at":"2012-05-22T18:27:36Z","app":{"url":"http://vincent-jacques.net/PyGithub","name":"Note created by PyGithub (API)"},"url":"https://api.github.com/authorizations/372294","token":"b7fd2a0346d9d590b1fad5e10971e8d29637a4ce","note_url":"http://vincent-jacques.net/PyGithub","note":"Note created by PyGithub","created_at":"2012-05-22T18:27:36Z","id":372294}] + diff --git a/lib/github/tests/ReplayData/AuthenticatedUser.testGetEvents.txt b/lib/github/tests/ReplayData/AuthenticatedUser.testGetEvents.txt new file mode 100644 index 0000000000..50659190e9 --- /dev/null +++ b/lib/github/tests/ReplayData/AuthenticatedUser.testGetEvents.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/events +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4970'), ('content-length', '57490'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next"'), ('etag', '"9260400c8db419d7375cf37a6a89b38e"'), ('date', 'Sat, 26 May 2012 20:10:48 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"type":"PushEvent","payload":{"head":"45dd4d971758b54af0b4138aa54b2a7266a66719","size":2,"push_id":80706714,"commits":[{"sha":"471b65cb6e5b4b57cca494d81a19a7cfecb9dcd7","author":{"name":"Chide","email":"c.groenouwe@ati-a.nl"},"url":"https://api.github.com/repos/swiftgame/SWiFT-fososc/commits/471b65cb6e5b4b57cca494d81a19a7cfecb9dcd7","distinct":true,"message":"added large part of current source code base of SWiFT fososc. More to come!"},{"sha":"45dd4d971758b54af0b4138aa54b2a7266a66719","author":{"name":"Chide","email":"c.groenouwe@ati-a.nl"},"url":"https://api.github.com/repos/swiftgame/SWiFT-fososc/commits/45dd4d971758b54af0b4138aa54b2a7266a66719","distinct":true,"message":"continued..."}],"ref":"refs/heads/master"},"public":true,"repo":{"url":"https://api.github.com/repos/swiftgame/SWiFT-fososc","id":2935425,"name":"swiftgame/SWiFT-fososc"},"created_at":"2012-05-26T20:10:46Z","id":"1556178218","actor":{"gravatar_id":"5866525f1e1a06544aaff0fa4f4f083a","url":"https://api.github.com/users/swiftgame","avatar_url":"https://secure.gravatar.com/avatar/5866525f1e1a06544aaff0fa4f4f083a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1248161,"login":"swiftgame"}},{"type":"IssuesEvent","payload":{"action":"closed","issue":{"number":1,"created_at":"2012-05-23T18:10:30Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"* text\n\n(for now, just keep test passages short!)","title":"passages model","comments":1,"updated_at":"2012-05-26T20:10:46Z","url":"https://api.github.com/repos/unobliged/plymlet/issues/1","id":4717430,"assignee":{"gravatar_id":"8dd3d820658d79bb8cec3afe94c986d5","avatar_url":"https://secure.gravatar.com/avatar/8dd3d820658d79bb8cec3afe94c986d5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/unobliged","id":1250266,"login":"unobliged"},"milestone":{"number":1,"due_on":null,"created_at":"2012-05-25T23:02:34Z","title":"Iteration 1","creator":{"gravatar_id":"3ba9e4f33f3277e20ee649efcf379ab9","avatar_url":"https://secure.gravatar.com/avatar/3ba9e4f33f3277e20ee649efcf379ab9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/dpaola2","id":150509,"login":"dpaola2"},"url":"https://api.github.com/repos/unobliged/plymlet/milestones/1","id":124261,"open_issues":3,"closed_issues":2,"description":"","state":"open"},"closed_at":"2012-05-26T20:10:46Z","user":{"gravatar_id":"3ba9e4f33f3277e20ee649efcf379ab9","avatar_url":"https://secure.gravatar.com/avatar/3ba9e4f33f3277e20ee649efcf379ab9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/dpaola2","id":150509,"login":"dpaola2"},"html_url":"https://github.com/unobliged/plymlet/issues/1","labels":[],"state":"closed"}},"public":true,"repo":{"url":"https://api.github.com/repos/unobliged/plymlet","id":4423508,"name":"unobliged/plymlet"},"created_at":"2012-05-26T20:10:46Z","id":"1556178217","actor":{"gravatar_id":"8dd3d820658d79bb8cec3afe94c986d5","url":"https://api.github.com/users/unobliged","avatar_url":"https://secure.gravatar.com/avatar/8dd3d820658d79bb8cec3afe94c986d5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1250266,"login":"unobliged"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-26T20:10:46Z","body":"text has title, author, language, and content","updated_at":"2012-05-26T20:10:46Z","url":"https://api.github.com/repos/unobliged/plymlet/issues/comments/5949286","id":5949286,"user":{"avatar_url":"https://secure.gravatar.com/avatar/8dd3d820658d79bb8cec3afe94c986d5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dd3d820658d79bb8cec3afe94c986d5","url":"https://api.github.com/users/unobliged","id":1250266,"login":"unobliged"}},"action":"created","issue":{"number":1,"created_at":"2012-05-23T18:10:30Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"title":"passages model","body":"* text\n\n(for now, just keep test passages short!)","comments":1,"updated_at":"2012-05-26T20:10:46Z","url":"https://api.github.com/repos/unobliged/plymlet/issues/1","id":4717430,"assignee":{"avatar_url":"https://secure.gravatar.com/avatar/8dd3d820658d79bb8cec3afe94c986d5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dd3d820658d79bb8cec3afe94c986d5","url":"https://api.github.com/users/unobliged","id":1250266,"login":"unobliged"},"milestone":{"number":1,"due_on":null,"created_at":"2012-05-25T23:02:34Z","title":"Iteration 1","creator":{"avatar_url":"https://secure.gravatar.com/avatar/3ba9e4f33f3277e20ee649efcf379ab9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3ba9e4f33f3277e20ee649efcf379ab9","url":"https://api.github.com/users/dpaola2","id":150509,"login":"dpaola2"},"url":"https://api.github.com/repos/unobliged/plymlet/milestones/1","id":124261,"open_issues":3,"closed_issues":2,"description":"","state":"open"},"closed_at":"2012-05-26T20:10:46Z","user":{"avatar_url":"https://secure.gravatar.com/avatar/3ba9e4f33f3277e20ee649efcf379ab9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3ba9e4f33f3277e20ee649efcf379ab9","url":"https://api.github.com/users/dpaola2","id":150509,"login":"dpaola2"},"html_url":"https://github.com/unobliged/plymlet/issues/1","labels":[],"state":"closed"}},"public":true,"repo":{"url":"https://api.github.com/repos/unobliged/plymlet","id":4423508,"name":"unobliged/plymlet"},"created_at":"2012-05-26T20:10:46Z","id":"1556178216","actor":{"gravatar_id":"8dd3d820658d79bb8cec3afe94c986d5","url":"https://api.github.com/users/unobliged","avatar_url":"https://secure.gravatar.com/avatar/8dd3d820658d79bb8cec3afe94c986d5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1250266,"login":"unobliged"}},{"type":"PushEvent","payload":{"head":"be261259304b3f6361a546ef5ae1809d446216fa","size":1,"push_id":80706711,"commits":[{"sha":"be261259304b3f6361a546ef5ae1809d446216fa","author":{"name":"Ben Hundley","email":"ben.hundley@gmail.com"},"url":"https://api.github.com/repos/FestivalBobcats/newton.js/commits/be261259304b3f6361a546ef5ae1809d446216fa","distinct":true,"message":"having the camera follow the systems center of mass to maintain focus"}],"ref":"refs/heads/master"},"public":true,"repo":{"url":"https://api.github.com/repos/FestivalBobcats/newton.js","id":4421856,"name":"FestivalBobcats/newton.js"},"created_at":"2012-05-26T20:10:45Z","id":"1556178213","actor":{"gravatar_id":"eb3fba221d6fb7f3298b132efae536e4","url":"https://api.github.com/users/FestivalBobcats","avatar_url":"https://secure.gravatar.com/avatar/eb3fba221d6fb7f3298b132efae536e4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":251029,"login":"FestivalBobcats"}},{"type":"PushEvent","payload":{"head":"bbbf9af215b683afefb3eaa2421c8d71bb02f70f","size":1,"push_id":80706710,"commits":[{"sha":"bbbf9af215b683afefb3eaa2421c8d71bb02f70f","author":{"name":"Bradley","email":"brmirly@gmail.com"},"url":"https://api.github.com/repos/brmirly/book-collector/commits/bbbf9af215b683afefb3eaa2421c8d71bb02f70f","distinct":true,"message":"Removing assets in public folder."}],"ref":"refs/heads/master"},"public":true,"repo":{"url":"https://api.github.com/repos/brmirly/book-collector","id":4455613,"name":"brmirly/book-collector"},"created_at":"2012-05-26T20:10:44Z","id":"1556178212","actor":{"gravatar_id":"7b2c3a273813afd3d0d1b80b08e84956","url":"https://api.github.com/users/brmirly","avatar_url":"https://secure.gravatar.com/avatar/7b2c3a273813afd3d0d1b80b08e84956?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":298873,"login":"brmirly"}},{"type":"WatchEvent","payload":{"action":"started"},"public":true,"repo":{"url":"https://api.github.com/repos/bitlove/objectify","id":4276638,"name":"bitlove/objectify"},"org":{"gravatar_id":"031eaa7ede474c82f6d623881d10f431","url":"https://api.github.com/orgs/bitlove","avatar_url":"https://secure.gravatar.com/avatar/031eaa7ede474c82f6d623881d10f431?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","id":32503,"login":"bitlove"},"created_at":"2012-05-26T20:10:43Z","id":"1556178211","actor":{"gravatar_id":"2354283d377abff092ede49fc560a4cc","url":"https://api.github.com/users/Applicat","avatar_url":"https://secure.gravatar.com/avatar/2354283d377abff092ede49fc560a4cc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":77121,"login":"Applicat"}},{"type":"PushEvent","payload":{"head":"88679ce53b08ee13c9e20c7bc3d901495faf3519","size":1,"push_id":80706708,"ref":"refs/heads/master","commits":[{"sha":"88679ce53b08ee13c9e20c7bc3d901495faf3519","author":{"name":"Patrick Lioi","email":"patrick.lioi@gmail.com"},"url":"https://api.github.com/repos/plioi/rook/commits/88679ce53b08ee13c9e20c7bc3d901495faf3519","distinct":true,"message":"CompilerResult and InterpreterResult gain Language property. When interactive console outputs C# errors, they are flagged as C# errors."}]},"public":true,"repo":{"url":"https://api.github.com/repos/plioi/rook","id":1534527,"name":"plioi/rook"},"created_at":"2012-05-26T20:10:40Z","id":"1556178208","actor":{"gravatar_id":"8370120c77b6a1adcdc4458c7f4052be","url":"https://api.github.com/users/plioi","avatar_url":"https://secure.gravatar.com/avatar/8370120c77b6a1adcdc4458c7f4052be?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":652745,"login":"plioi"}},{"type":"PushEvent","payload":{"head":"2f4373049a3f7702a9162c3a6b6d182083705bb4","size":1,"push_id":80706707,"commits":[{"sha":"2f4373049a3f7702a9162c3a6b6d182083705bb4","author":{"name":"Justin Forest","email":"justin.forest@gmail.com"},"url":"https://api.github.com/repos/tmradio/tmradio-website/commits/2f4373049a3f7702a9162c3a6b6d182083705bb4","distinct":true,"message":"Обновление карты концертов"}],"ref":"refs/heads/master"},"public":true,"repo":{"url":"https://api.github.com/repos/tmradio/tmradio-website","id":1482040,"name":"tmradio/tmradio-website"},"org":{"gravatar_id":"652b36ee907f6f69ae6a8b72844c7951","url":"https://api.github.com/orgs/tmradio","avatar_url":"https://secure.gravatar.com/avatar/652b36ee907f6f69ae6a8b72844c7951?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","id":657556,"login":"tmradio"},"created_at":"2012-05-26T20:10:39Z","id":"1556178207","actor":{"gravatar_id":"b52062261a2135048e238fb4b7c4daf1","url":"https://api.github.com/users/umonkey","avatar_url":"https://secure.gravatar.com/avatar/b52062261a2135048e238fb4b7c4daf1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":16797,"login":"umonkey"}},{"type":"PushEvent","payload":{"head":"31658a5448e3b36705f4ff5977cd8d50c9ab9517","size":1,"push_id":80706705,"commits":[{"sha":"31658a5448e3b36705f4ff5977cd8d50c9ab9517","author":{"name":"Jorge Azevedo","email":"jorge.amado.azevedo@gmail.com"},"url":"https://api.github.com/repos/jorgeazevedo/xenomai-lab/commits/31658a5448e3b36705f4ff5977cd8d50c9ab9517","distinct":true,"message":"Changed source code MD syntax"}],"ref":"refs/heads/master"},"public":true,"repo":{"url":"https://api.github.com/repos/jorgeazevedo/xenomai-lab","id":4456995,"name":"jorgeazevedo/xenomai-lab"},"created_at":"2012-05-26T20:10:38Z","id":"1556178205","actor":{"gravatar_id":"b7c9861bce375e9621554712ec95a9ea","url":"https://api.github.com/users/jorgeazevedo","avatar_url":"https://secure.gravatar.com/avatar/b7c9861bce375e9621554712ec95a9ea?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1672034,"login":"jorgeazevedo"}},{"type":"PullRequestEvent","payload":{"number":8,"pull_request":{"head":{"label":"vlad-ghita:integration","repo":{"name":"field_metakeys","size":116,"has_wiki":true,"created_at":"2012-05-26T20:04:21Z","clone_url":"https://github.com/vlad-ghita/field_metakeys.git","private":false,"watchers":1,"updated_at":"2012-05-26T20:08:29Z","git_url":"git://github.com/vlad-ghita/field_metakeys.git","url":"https://api.github.com/repos/vlad-ghita/field_metakeys","ssh_url":"git@github.com:vlad-ghita/field_metakeys.git","fork":true,"language":"PHP","pushed_at":"2012-05-26T20:08:29Z","id":4457461,"svn_url":"https://github.com/vlad-ghita/field_metakeys","mirror_url":null,"has_downloads":true,"open_issues":0,"has_issues":false,"homepage":"","full_name":"vlad-ghita/field_metakeys","description":"A Meta Keys field allows you to add arbitrary pieces of information to entries identified by a user generated key","forks":0,"html_url":"https://github.com/vlad-ghita/field_metakeys","owner":{"avatar_url":"https://secure.gravatar.com/avatar/9b43cf8fce4ff1fe56cb86f0f6bf7839?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"9b43cf8fce4ff1fe56cb86f0f6bf7839","url":"https://api.github.com/users/vlad-ghita","id":422623,"login":"vlad-ghita"}},"sha":"ef75a939b37fb152b8eb845c94a0db7cf7d872a5","ref":"integration","user":{"avatar_url":"https://secure.gravatar.com/avatar/9b43cf8fce4ff1fe56cb86f0f6bf7839?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"9b43cf8fce4ff1fe56cb86f0f6bf7839","url":"https://api.github.com/users/vlad-ghita","id":422623,"login":"vlad-ghita"}},"issue_url":"https://github.com/brendo/field_metakeys/issues/8","number":8,"merged_by":null,"changed_files":1,"merged":false,"created_at":"2012-05-26T20:10:37Z","body":"Great extension :) I just made the multilingual version of this.\n\nI noticed it doesn't persist values in case of error in the form. This patch fixes it.\n\nRegards,\nVlad","comments":0,"title":"Retain post values in case of error","diff_url":"https://github.com/brendo/field_metakeys/pull/8.diff","updated_at":"2012-05-26T20:10:37Z","additions":4,"_links":{"html":{"href":"https://github.com/brendo/field_metakeys/pull/8"},"self":{"href":"https://api.github.com/repos/brendo/field_metakeys/pulls/8"},"comments":{"href":"https://api.github.com/repos/brendo/field_metakeys/issues/8/comments"},"issue":{"href":"https://api.github.com/repos/brendo/field_metakeys/issues/8"},"review_comments":{"href":"https://api.github.com/repos/brendo/field_metakeys/pulls/8/comments"}},"url":"https://api.github.com/repos/brendo/field_metakeys/pulls/8","id":1435459,"patch_url":"https://github.com/brendo/field_metakeys/pull/8.patch","mergeable":null,"closed_at":null,"commits":1,"merged_at":null,"user":{"avatar_url":"https://secure.gravatar.com/avatar/9b43cf8fce4ff1fe56cb86f0f6bf7839?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"9b43cf8fce4ff1fe56cb86f0f6bf7839","url":"https://api.github.com/users/vlad-ghita","id":422623,"login":"vlad-ghita"},"review_comments":0,"html_url":"https://github.com/brendo/field_metakeys/pull/8","deletions":2,"base":{"label":"brendo:integration","repo":{"name":"field_metakeys","size":744,"has_wiki":true,"created_at":"2010-10-04T07:06:12Z","clone_url":"https://github.com/brendo/field_metakeys.git","private":false,"watchers":11,"updated_at":"2012-05-26T20:04:21Z","git_url":"git://github.com/brendo/field_metakeys.git","url":"https://api.github.com/repos/brendo/field_metakeys","ssh_url":"git@github.com:brendo/field_metakeys.git","fork":false,"language":"PHP","pushed_at":"2012-04-28T06:44:21Z","id":959860,"svn_url":"https://github.com/brendo/field_metakeys","mirror_url":null,"has_downloads":true,"open_issues":1,"has_issues":true,"homepage":"","full_name":"brendo/field_metakeys","description":"A Meta Keys field allows you to add arbitrary pieces of information to entries identified by a user generated key","forks":3,"html_url":"https://github.com/brendo/field_metakeys","owner":{"avatar_url":"https://secure.gravatar.com/avatar/6be8e584a0f454ac2dc7600bdeaca7b7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"6be8e584a0f454ac2dc7600bdeaca7b7","url":"https://api.github.com/users/brendo","id":69268,"login":"brendo"}},"sha":"799a54a913f676b62522515ea0dd3af8f3e0f23a","ref":"integration","user":{"avatar_url":"https://secure.gravatar.com/avatar/6be8e584a0f454ac2dc7600bdeaca7b7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"6be8e584a0f454ac2dc7600bdeaca7b7","url":"https://api.github.com/users/brendo","id":69268,"login":"brendo"}},"state":"open"},"action":"opened"},"public":true,"repo":{"url":"https://api.github.com/repos/brendo/field_metakeys","id":959860,"name":"brendo/field_metakeys"},"created_at":"2012-05-26T20:10:38Z","id":"1556178203","actor":{"gravatar_id":"9b43cf8fce4ff1fe56cb86f0f6bf7839","url":"https://api.github.com/users/vlad-ghita","avatar_url":"https://secure.gravatar.com/avatar/9b43cf8fce4ff1fe56cb86f0f6bf7839?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":422623,"login":"vlad-ghita"}},{"type":"PushEvent","payload":{"head":"1a9d9e3f6ea16e1fd9da63ba62968e9710426ac9","size":6,"push_id":80706703,"commits":[{"sha":"e2a8dfdc3320ed5394c072f3c2483efe85586103","author":{"name":"Alex White","email":"VVu@geekfarm.org"},"url":"https://api.github.com/repos/wu/npkgs/commits/e2a8dfdc3320ed5394c072f3c2483efe85586103","distinct":true,"message":"upgraded openssl to 1.0.1c"},{"sha":"e81dcf515742cb0772784ed942dd33f2654b526a","author":{"name":"Alex White","email":"VVu@geekfarm.org"},"url":"https://api.github.com/repos/wu/npkgs/commits/e81dcf515742cb0772784ed942dd33f2654b526a","distinct":true,"message":"upgrading git to 1.7.10.1"},{"sha":"2723c6dc0f3bdabc2bfea24be603561667b649a8","author":{"name":"Alex White","email":"VVu@geekfarm.org"},"url":"https://api.github.com/repos/wu/npkgs/commits/2723c6dc0f3bdabc2bfea24be603561667b649a8","distinct":true,"message":"upgrading curl to 7.26.0"},{"sha":"8d5f7e60235c41683c8ff6222efc9a92a83ea901","author":{"name":"Alex White","email":"VVu@geekfarm.org"},"url":"https://api.github.com/repos/wu/npkgs/commits/8d5f7e60235c41683c8ff6222efc9a92a83ea901","distinct":true,"message":"upgrade sqlite to 3071201"},{"sha":"3df38eaf44fc222b40db3732d055c31a7d740c83","author":{"name":"Alex White","email":"VVu@geekfarm.org"},"url":"https://api.github.com/repos/wu/npkgs/commits/3df38eaf44fc222b40db3732d055c31a7d740c83","distinct":true,"message":"upgraded subversion to 1.7.5"},{"sha":"1a9d9e3f6ea16e1fd9da63ba62968e9710426ac9","author":{"name":"Alex White","email":"VVu@geekfarm.org"},"url":"https://api.github.com/repos/wu/npkgs/commits/1a9d9e3f6ea16e1fd9da63ba62968e9710426ac9","distinct":true,"message":"upgrade nagios to 3.4.1"}],"ref":"refs/heads/master"},"public":true,"repo":{"url":"https://api.github.com/repos/wu/npkgs","id":129627,"name":"wu/npkgs"},"created_at":"2012-05-26T20:10:37Z","id":"1556178202","actor":{"gravatar_id":"c57483c5cfe159b98a6e33ee7e9eec38","url":"https://api.github.com/users/wu","avatar_url":"https://secure.gravatar.com/avatar/c57483c5cfe159b98a6e33ee7e9eec38?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":52700,"login":"wu"}},{"type":"PullRequestEvent","payload":{"number":29,"pull_request":{"head":{"label":"pahko:patch-1","repo":{"name":"escape-lounge","size":108,"has_wiki":true,"created_at":"2012-05-26T20:09:41Z","clone_url":"https://github.com/pahko/escape-lounge.git","watchers":1,"private":false,"updated_at":"2012-05-26T20:10:21Z","fork":true,"language":"JavaScript","url":"https://api.github.com/repos/pahko/escape-lounge","git_url":"git://github.com/pahko/escape-lounge.git","ssh_url":"git@github.com:pahko/escape-lounge.git","id":4457492,"svn_url":"https://github.com/pahko/escape-lounge","pushed_at":"2012-05-26T20:10:20Z","has_downloads":true,"mirror_url":null,"open_issues":0,"full_name":"pahko/escape-lounge","has_issues":false,"homepage":null,"description":"Page like getawaylounge.com.au","forks":0,"html_url":"https://github.com/pahko/escape-lounge","owner":{"gravatar_id":"ef8bbfccfd0dd146907f7a008fe57f43","avatar_url":"https://secure.gravatar.com/avatar/ef8bbfccfd0dd146907f7a008fe57f43?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/pahko","id":572114,"login":"pahko"}},"sha":"f1ec182b989cc5ff1713ffd7d901f787c2d7ab05","ref":"patch-1","user":{"gravatar_id":"ef8bbfccfd0dd146907f7a008fe57f43","avatar_url":"https://secure.gravatar.com/avatar/ef8bbfccfd0dd146907f7a008fe57f43?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/pahko","id":572114,"login":"pahko"}},"number":29,"issue_url":"https://github.com/orozcogera/escape-lounge/issues/29","merged_by":null,"created_at":"2012-05-26T20:10:29Z","changed_files":1,"merged":false,"title":"Update README.md","body":"","comments":0,"diff_url":"https://github.com/orozcogera/escape-lounge/pull/29.diff","updated_at":"2012-05-26T20:10:35Z","additions":2,"url":"https://api.github.com/repos/orozcogera/escape-lounge/pulls/29","_links":{"html":{"href":"https://github.com/orozcogera/escape-lounge/pull/29"},"self":{"href":"https://api.github.com/repos/orozcogera/escape-lounge/pulls/29"},"comments":{"href":"https://api.github.com/repos/orozcogera/escape-lounge/issues/29/comments"},"issue":{"href":"https://api.github.com/repos/orozcogera/escape-lounge/issues/29"},"review_comments":{"href":"https://api.github.com/repos/orozcogera/escape-lounge/pulls/29/comments"}},"id":1435458,"patch_url":"https://github.com/orozcogera/escape-lounge/pull/29.patch","mergeable":null,"merged_at":null,"commits":1,"closed_at":null,"user":{"gravatar_id":"ef8bbfccfd0dd146907f7a008fe57f43","avatar_url":"https://secure.gravatar.com/avatar/ef8bbfccfd0dd146907f7a008fe57f43?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/pahko","id":572114,"login":"pahko"},"review_comments":0,"deletions":3,"html_url":"https://github.com/orozcogera/escape-lounge/pull/29","state":"open","base":{"label":"orozcogera:master","repo":{"name":"escape-lounge","size":11504,"has_wiki":true,"created_at":"2012-05-16T15:33:54Z","clone_url":"https://github.com/orozcogera/escape-lounge.git","watchers":2,"private":false,"updated_at":"2012-05-26T20:09:41Z","fork":false,"language":"JavaScript","url":"https://api.github.com/repos/orozcogera/escape-lounge","git_url":"git://github.com/orozcogera/escape-lounge.git","ssh_url":"git@github.com:orozcogera/escape-lounge.git","id":4348574,"svn_url":"https://github.com/orozcogera/escape-lounge","pushed_at":"2012-05-25T04:15:07Z","has_downloads":true,"mirror_url":null,"open_issues":6,"full_name":"orozcogera/escape-lounge","has_issues":true,"homepage":null,"description":"Page like getawaylounge.com.au","forks":2,"html_url":"https://github.com/orozcogera/escape-lounge","owner":{"gravatar_id":"a0a1b546caac87b0e2f83b22578e7dec","avatar_url":"https://secure.gravatar.com/avatar/a0a1b546caac87b0e2f83b22578e7dec?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/orozcogera","id":1656019,"login":"orozcogera"}},"sha":"c74beb5b64464d892fe1168c4bba4a8260594be2","ref":"master","user":{"gravatar_id":"a0a1b546caac87b0e2f83b22578e7dec","avatar_url":"https://secure.gravatar.com/avatar/a0a1b546caac87b0e2f83b22578e7dec?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/orozcogera","id":1656019,"login":"orozcogera"}}},"action":"reopened"},"public":true,"repo":{"url":"https://api.github.com/repos/orozcogera/escape-lounge","id":4348574,"name":"orozcogera/escape-lounge"},"created_at":"2012-05-26T20:10:36Z","id":"1556178201","actor":{"gravatar_id":"ef8bbfccfd0dd146907f7a008fe57f43","url":"https://api.github.com/users/pahko","avatar_url":"https://secure.gravatar.com/avatar/ef8bbfccfd0dd146907f7a008fe57f43?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":572114,"login":"pahko"}},{"type":"IssuesEvent","payload":{"action":"opened","issue":{"number":6,"created_at":"2012-05-26T20:10:35Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"It sound awful.","comments":0,"title":"Replace Grenade sound.","updated_at":"2012-05-26T20:10:35Z","url":"https://api.github.com/repos/stefan-feltmann/WOUCSAndroidProject/issues/6","id":4767845,"assignee":{"gravatar_id":"1b0a25a7a51f23f5b2b2e0c81a565d0e","avatar_url":"https://secure.gravatar.com/avatar/1b0a25a7a51f23f5b2b2e0c81a565d0e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/stefan-feltmann","id":1563182,"login":"stefan-feltmann"},"milestone":{"number":1,"due_on":"2012-05-31T07:00:00Z","created_at":"2012-05-26T07:19:21Z","title":"Ready for demo","creator":{"gravatar_id":"1b0a25a7a51f23f5b2b2e0c81a565d0e","avatar_url":"https://secure.gravatar.com/avatar/1b0a25a7a51f23f5b2b2e0c81a565d0e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/stefan-feltmann","id":1563182,"login":"stefan-feltmann"},"url":"https://api.github.com/repos/stefan-feltmann/WOUCSAndroidProject/milestones/1","id":124306,"open_issues":5,"closed_issues":1,"description":"It needs to be ready to demo.","state":"open"},"closed_at":null,"user":{"gravatar_id":"1b0a25a7a51f23f5b2b2e0c81a565d0e","avatar_url":"https://secure.gravatar.com/avatar/1b0a25a7a51f23f5b2b2e0c81a565d0e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/stefan-feltmann","id":1563182,"login":"stefan-feltmann"},"labels":[],"html_url":"https://github.com/stefan-feltmann/WOUCSAndroidProject/issues/6","state":"open"}},"public":true,"repo":{"url":"https://api.github.com/repos/stefan-feltmann/WOUCSAndroidProject","id":3794776,"name":"stefan-feltmann/WOUCSAndroidProject"},"created_at":"2012-05-26T20:10:36Z","id":"1556178200","actor":{"gravatar_id":"1b0a25a7a51f23f5b2b2e0c81a565d0e","url":"https://api.github.com/users/stefan-feltmann","avatar_url":"https://secure.gravatar.com/avatar/1b0a25a7a51f23f5b2b2e0c81a565d0e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1563182,"login":"stefan-feltmann"}},{"type":"PushEvent","payload":{"head":"e3d849d9ee5d68c5bac77d16dc4418e59507a76a","size":1,"push_id":80706702,"ref":"refs/heads/master","commits":[{"sha":"e3d849d9ee5d68c5bac77d16dc4418e59507a76a","author":{"name":"Buri","email":"buri.buster@gmail.com"},"url":"https://api.github.com/repos/Buri/Aragorn.cz/commits/e3d849d9ee5d68c5bac77d16dc4418e59507a76a","distinct":true,"message":"Forum rework"}]},"public":true,"repo":{"url":"https://api.github.com/repos/Buri/Aragorn.cz","id":1693702,"name":"Buri/Aragorn.cz"},"created_at":"2012-05-26T20:10:35Z","id":"1556178199","actor":{"gravatar_id":"7958f5d3b335658aa38b330b5da185d3","url":"https://api.github.com/users/Buri","avatar_url":"https://secure.gravatar.com/avatar/7958f5d3b335658aa38b330b5da185d3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":169319,"login":"Buri"}},{"type":"PushEvent","payload":{"head":"f912237671fb872a034138f987f1de994c1b46d0","size":1,"push_id":80706701,"ref":"refs/heads/master","commits":[{"sha":"f912237671fb872a034138f987f1de994c1b46d0","author":{"name":"Taito Horiuchi","email":"taito.horiuchi@gmail.com"},"url":"https://api.github.com/repos/taito/santa.templates/commits/f912237671fb872a034138f987f1de994c1b46d0","distinct":true,"message":"Translation fixed."}]},"public":true,"repo":{"url":"https://api.github.com/repos/taito/santa.templates","id":4246341,"name":"taito/santa.templates"},"created_at":"2012-05-26T20:10:35Z","id":"1556178196","actor":{"gravatar_id":"0c9a3666ce6afa21d9f65c1d28fd132c","url":"https://api.github.com/users/taito","avatar_url":"https://secure.gravatar.com/avatar/0c9a3666ce6afa21d9f65c1d28fd132c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":707769,"login":"taito"}},{"type":"ForkEvent","payload":{"forkee":{"name":"escapes.js","size":356,"has_wiki":false,"created_at":"2012-05-26T20:10:34Z","clone_url":"https://github.com/slashben/escapes.js.git","public":true,"watchers":1,"private":false,"updated_at":"2012-05-26T20:10:34Z","language":"JavaScript","git_url":"git://github.com/slashben/escapes.js.git","fork":true,"url":"https://api.github.com/repos/slashben/escapes.js","ssh_url":"git@github.com:slashben/escapes.js.git","id":4457500,"svn_url":"https://github.com/slashben/escapes.js","pushed_at":"2012-02-24T20:15:58Z","mirror_url":null,"has_downloads":true,"open_issues":0,"full_name":"slashben/escapes.js","has_issues":false,"homepage":"http://atdt.github.com/escapes.js/","description":"Render ANSI art using HTML5 / JavaScript","forks":0,"html_url":"https://github.com/slashben/escapes.js","owner":{"gravatar_id":"f13fc45cd1b66df0be9707c433d4828d","avatar_url":"https://secure.gravatar.com/avatar/f13fc45cd1b66df0be9707c433d4828d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/slashben","id":1594924,"login":"slashben"}}},"public":true,"repo":{"url":"https://api.github.com/repos/atdt/escapes.js","id":3151778,"name":"atdt/escapes.js"},"created_at":"2012-05-26T20:10:35Z","id":"1556178195","actor":{"gravatar_id":"f13fc45cd1b66df0be9707c433d4828d","url":"https://api.github.com/users/slashben","avatar_url":"https://secure.gravatar.com/avatar/f13fc45cd1b66df0be9707c433d4828d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1594924,"login":"slashben"}},{"type":"PushEvent","payload":{"head":"3ba4533ca1577abe30ae37f69ddab47248d59d53","size":1,"push_id":80706700,"ref":"refs/heads/master","commits":[{"sha":"3ba4533ca1577abe30ae37f69ddab47248d59d53","author":{"name":"Mike Stone","email":"stonemj@gmail.com"},"url":"https://api.github.com/repos/mikestone/nginxtra/commits/3ba4533ca1577abe30ae37f69ddab47248d59d53","distinct":true,"message":"Rename option to compile_option to help avoid potential name conflicts (method_missing...)."}]},"public":true,"repo":{"url":"https://api.github.com/repos/mikestone/nginxtra","id":4453685,"name":"mikestone/nginxtra"},"created_at":"2012-05-26T20:10:35Z","id":"1556178194","actor":{"gravatar_id":"c8ba7ccacc70a7b826184e8d717bfcd7","url":"https://api.github.com/users/mikestone","avatar_url":"https://secure.gravatar.com/avatar/c8ba7ccacc70a7b826184e8d717bfcd7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":150632,"login":"mikestone"}},{"type":"PullRequestEvent","payload":{"number":29,"pull_request":{"head":{"label":"pahko:patch-1","repo":{"name":"escape-lounge","size":108,"has_wiki":true,"created_at":"2012-05-26T20:09:41Z","clone_url":"https://github.com/pahko/escape-lounge.git","watchers":1,"private":false,"updated_at":"2012-05-26T20:10:21Z","language":"JavaScript","fork":true,"url":"https://api.github.com/repos/pahko/escape-lounge","git_url":"git://github.com/pahko/escape-lounge.git","ssh_url":"git@github.com:pahko/escape-lounge.git","id":4457492,"svn_url":"https://github.com/pahko/escape-lounge","pushed_at":"2012-05-26T20:10:20Z","mirror_url":null,"has_downloads":true,"open_issues":0,"full_name":"pahko/escape-lounge","has_issues":false,"homepage":null,"description":"Page like getawaylounge.com.au","forks":0,"html_url":"https://github.com/pahko/escape-lounge","owner":{"gravatar_id":"ef8bbfccfd0dd146907f7a008fe57f43","avatar_url":"https://secure.gravatar.com/avatar/ef8bbfccfd0dd146907f7a008fe57f43?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/pahko","id":572114,"login":"pahko"}},"sha":"f1ec182b989cc5ff1713ffd7d901f787c2d7ab05","ref":"patch-1","user":{"gravatar_id":"ef8bbfccfd0dd146907f7a008fe57f43","avatar_url":"https://secure.gravatar.com/avatar/ef8bbfccfd0dd146907f7a008fe57f43?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/pahko","id":572114,"login":"pahko"}},"number":29,"issue_url":"https://github.com/orozcogera/escape-lounge/issues/29","merged_by":null,"created_at":"2012-05-26T20:10:29Z","changed_files":1,"merged":false,"body":"","comments":0,"title":"Update README.md","diff_url":"https://github.com/orozcogera/escape-lounge/pull/29.diff","updated_at":"2012-05-26T20:10:34Z","additions":2,"url":"https://api.github.com/repos/orozcogera/escape-lounge/pulls/29","_links":{"html":{"href":"https://github.com/orozcogera/escape-lounge/pull/29"},"self":{"href":"https://api.github.com/repos/orozcogera/escape-lounge/pulls/29"},"comments":{"href":"https://api.github.com/repos/orozcogera/escape-lounge/issues/29/comments"},"issue":{"href":"https://api.github.com/repos/orozcogera/escape-lounge/issues/29"},"review_comments":{"href":"https://api.github.com/repos/orozcogera/escape-lounge/pulls/29/comments"}},"id":1435458,"patch_url":"https://github.com/orozcogera/escape-lounge/pull/29.patch","mergeable":true,"merged_at":null,"commits":1,"closed_at":"2012-05-26T20:10:34Z","user":{"gravatar_id":"ef8bbfccfd0dd146907f7a008fe57f43","avatar_url":"https://secure.gravatar.com/avatar/ef8bbfccfd0dd146907f7a008fe57f43?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/pahko","id":572114,"login":"pahko"},"review_comments":0,"deletions":3,"html_url":"https://github.com/orozcogera/escape-lounge/pull/29","state":"closed","base":{"label":"orozcogera:master","repo":{"name":"escape-lounge","size":11504,"has_wiki":true,"created_at":"2012-05-16T15:33:54Z","clone_url":"https://github.com/orozcogera/escape-lounge.git","watchers":2,"private":false,"updated_at":"2012-05-26T20:09:41Z","language":"JavaScript","fork":false,"url":"https://api.github.com/repos/orozcogera/escape-lounge","git_url":"git://github.com/orozcogera/escape-lounge.git","ssh_url":"git@github.com:orozcogera/escape-lounge.git","id":4348574,"svn_url":"https://github.com/orozcogera/escape-lounge","pushed_at":"2012-05-25T04:15:07Z","mirror_url":null,"has_downloads":true,"open_issues":5,"full_name":"orozcogera/escape-lounge","has_issues":true,"homepage":null,"description":"Page like getawaylounge.com.au","forks":2,"html_url":"https://github.com/orozcogera/escape-lounge","owner":{"gravatar_id":"a0a1b546caac87b0e2f83b22578e7dec","avatar_url":"https://secure.gravatar.com/avatar/a0a1b546caac87b0e2f83b22578e7dec?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/orozcogera","id":1656019,"login":"orozcogera"}},"sha":"c74beb5b64464d892fe1168c4bba4a8260594be2","ref":"master","user":{"gravatar_id":"a0a1b546caac87b0e2f83b22578e7dec","avatar_url":"https://secure.gravatar.com/avatar/a0a1b546caac87b0e2f83b22578e7dec?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/orozcogera","id":1656019,"login":"orozcogera"}}},"action":"closed"},"public":true,"repo":{"url":"https://api.github.com/repos/orozcogera/escape-lounge","id":4348574,"name":"orozcogera/escape-lounge"},"created_at":"2012-05-26T20:10:34Z","id":"1556178192","actor":{"gravatar_id":"ef8bbfccfd0dd146907f7a008fe57f43","url":"https://api.github.com/users/pahko","avatar_url":"https://secure.gravatar.com/avatar/ef8bbfccfd0dd146907f7a008fe57f43?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":572114,"login":"pahko"}},{"type":"ForkEvent","payload":{"forkee":{"name":"Perlbal","master_branch":"master","size":312,"has_wiki":true,"created_at":"2012-05-26T20:10:32Z","clone_url":"https://github.com/micmac/Perlbal.git","public":true,"watchers":1,"private":false,"updated_at":"2012-05-26T20:10:32Z","git_url":"git://github.com/micmac/Perlbal.git","fork":true,"url":"https://api.github.com/repos/micmac/Perlbal","language":"Perl","ssh_url":"git@github.com:micmac/Perlbal.git","id":4457499,"svn_url":"https://github.com/micmac/Perlbal","pushed_at":"2012-03-18T22:55:34Z","mirror_url":null,"has_downloads":true,"open_issues":0,"full_name":"micmac/Perlbal","has_issues":false,"homepage":"http://perlbal.org/","description":"Perl HTTP Load Balancer","forks":0,"html_url":"https://github.com/micmac/Perlbal","owner":{"gravatar_id":"70c5b8a9f65872ac089c773175aa5f10","avatar_url":"https://secure.gravatar.com/avatar/70c5b8a9f65872ac089c773175aa5f10?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/micmac","id":206625,"login":"micmac"}}},"public":true,"repo":{"url":"https://api.github.com/repos/perlbal/Perlbal","id":920387,"name":"perlbal/Perlbal"},"org":{"gravatar_id":"91293234d5655b7a16a6f8bf2cf4186a","url":"https://api.github.com/orgs/perlbal","avatar_url":"https://secure.gravatar.com/avatar/91293234d5655b7a16a6f8bf2cf4186a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","id":229885,"login":"perlbal"},"created_at":"2012-05-26T20:10:32Z","id":"1556178191","actor":{"gravatar_id":"70c5b8a9f65872ac089c773175aa5f10","url":"https://api.github.com/users/micmac","avatar_url":"https://secure.gravatar.com/avatar/70c5b8a9f65872ac089c773175aa5f10?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":206625,"login":"micmac"}},{"type":"CreateEvent","payload":{"master_branch":"master","ref":"master","ref_type":"branch","description":"This is a test repository"},"public":true,"repo":{"url":"https://api.github.com/repos/zintusys/zintutest","id":4457237,"name":"zintusys/zintutest"},"created_at":"2012-05-26T20:10:31Z","id":"1556178189","actor":{"gravatar_id":"cab57efb098e76b5898d7f7a884b69ce","url":"https://api.github.com/users/zintusys","avatar_url":"https://secure.gravatar.com/avatar/cab57efb098e76b5898d7f7a884b69ce?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1662566,"login":"zintusys"}},{"type":"PullRequestEvent","payload":{"number":29,"pull_request":{"head":{"label":"pahko:patch-1","repo":{"name":"escape-lounge","size":108,"has_wiki":true,"created_at":"2012-05-26T20:09:41Z","clone_url":"https://github.com/pahko/escape-lounge.git","watchers":1,"private":false,"updated_at":"2012-05-26T20:10:21Z","fork":true,"language":"JavaScript","git_url":"git://github.com/pahko/escape-lounge.git","url":"https://api.github.com/repos/pahko/escape-lounge","ssh_url":"git@github.com:pahko/escape-lounge.git","id":4457492,"svn_url":"https://github.com/pahko/escape-lounge","pushed_at":"2012-05-26T20:10:20Z","has_downloads":true,"mirror_url":null,"open_issues":0,"full_name":"pahko/escape-lounge","has_issues":false,"homepage":null,"description":"Page like getawaylounge.com.au","forks":0,"html_url":"https://github.com/pahko/escape-lounge","owner":{"gravatar_id":"ef8bbfccfd0dd146907f7a008fe57f43","avatar_url":"https://secure.gravatar.com/avatar/ef8bbfccfd0dd146907f7a008fe57f43?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/pahko","id":572114,"login":"pahko"}},"sha":"f1ec182b989cc5ff1713ffd7d901f787c2d7ab05","ref":"patch-1","user":{"gravatar_id":"ef8bbfccfd0dd146907f7a008fe57f43","avatar_url":"https://secure.gravatar.com/avatar/ef8bbfccfd0dd146907f7a008fe57f43?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/pahko","id":572114,"login":"pahko"}},"number":29,"issue_url":"https://github.com/orozcogera/escape-lounge/issues/29","merged_by":null,"changed_files":1,"created_at":"2012-05-26T20:10:29Z","merged":false,"body":"","comments":0,"title":"Update README.md","diff_url":"https://github.com/orozcogera/escape-lounge/pull/29.diff","updated_at":"2012-05-26T20:10:29Z","additions":2,"url":"https://api.github.com/repos/orozcogera/escape-lounge/pulls/29","_links":{"html":{"href":"https://github.com/orozcogera/escape-lounge/pull/29"},"self":{"href":"https://api.github.com/repos/orozcogera/escape-lounge/pulls/29"},"comments":{"href":"https://api.github.com/repos/orozcogera/escape-lounge/issues/29/comments"},"issue":{"href":"https://api.github.com/repos/orozcogera/escape-lounge/issues/29"},"review_comments":{"href":"https://api.github.com/repos/orozcogera/escape-lounge/pulls/29/comments"}},"id":1435458,"patch_url":"https://github.com/orozcogera/escape-lounge/pull/29.patch","mergeable":null,"merged_at":null,"closed_at":null,"commits":1,"user":{"gravatar_id":"ef8bbfccfd0dd146907f7a008fe57f43","avatar_url":"https://secure.gravatar.com/avatar/ef8bbfccfd0dd146907f7a008fe57f43?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/pahko","id":572114,"login":"pahko"},"review_comments":0,"deletions":3,"html_url":"https://github.com/orozcogera/escape-lounge/pull/29","state":"open","base":{"label":"orozcogera:master","repo":{"name":"escape-lounge","size":11504,"has_wiki":true,"created_at":"2012-05-16T15:33:54Z","clone_url":"https://github.com/orozcogera/escape-lounge.git","watchers":2,"private":false,"updated_at":"2012-05-26T20:09:41Z","fork":false,"language":"JavaScript","git_url":"git://github.com/orozcogera/escape-lounge.git","url":"https://api.github.com/repos/orozcogera/escape-lounge","ssh_url":"git@github.com:orozcogera/escape-lounge.git","id":4348574,"svn_url":"https://github.com/orozcogera/escape-lounge","pushed_at":"2012-05-25T04:15:07Z","has_downloads":true,"mirror_url":null,"open_issues":6,"full_name":"orozcogera/escape-lounge","has_issues":true,"homepage":null,"description":"Page like getawaylounge.com.au","forks":2,"html_url":"https://github.com/orozcogera/escape-lounge","owner":{"gravatar_id":"a0a1b546caac87b0e2f83b22578e7dec","avatar_url":"https://secure.gravatar.com/avatar/a0a1b546caac87b0e2f83b22578e7dec?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/orozcogera","id":1656019,"login":"orozcogera"}},"sha":"c74beb5b64464d892fe1168c4bba4a8260594be2","ref":"master","user":{"gravatar_id":"a0a1b546caac87b0e2f83b22578e7dec","avatar_url":"https://secure.gravatar.com/avatar/a0a1b546caac87b0e2f83b22578e7dec?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/orozcogera","id":1656019,"login":"orozcogera"}}},"action":"opened"},"public":true,"repo":{"url":"https://api.github.com/repos/orozcogera/escape-lounge","id":4348574,"name":"orozcogera/escape-lounge"},"created_at":"2012-05-26T20:10:30Z","id":"1556178187","actor":{"gravatar_id":"ef8bbfccfd0dd146907f7a008fe57f43","url":"https://api.github.com/users/pahko","avatar_url":"https://secure.gravatar.com/avatar/ef8bbfccfd0dd146907f7a008fe57f43?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":572114,"login":"pahko"}},{"type":"PushEvent","payload":{"head":"fb608d79da377cd62b90f5efc5993a04b74128b5","size":2,"push_id":80706695,"commits":[{"sha":"48b2f9c539f4b6c8e3b8830547734f0be65829ed","author":{"name":"François Poirotte","email":"clicky@erebot.net"},"url":"https://api.github.com/repos/Erebot/Erebot_Module_Admin/commits/48b2f9c539f4b6c8e3b8830547734f0be65829ed","distinct":true,"message":"Fix build for travis-ci."},{"sha":"fb608d79da377cd62b90f5efc5993a04b74128b5","author":{"name":"François Poirotte","email":"clicky@erebot.net"},"url":"https://api.github.com/repos/Erebot/Erebot_Module_Admin/commits/fb608d79da377cd62b90f5efc5993a04b74128b5","distinct":true,"message":"Merge branch 'master' of github.com:Erebot/Erebot_Module_Admin"}],"ref":"refs/heads/master"},"public":true,"repo":{"url":"https://api.github.com/repos/Erebot/Erebot_Module_Admin","id":2165778,"name":"Erebot/Erebot_Module_Admin"},"org":{"gravatar_id":"6882737b0542ce27644cb7c327ac9f12","url":"https://api.github.com/orgs/Erebot","avatar_url":"https://secure.gravatar.com/avatar/6882737b0542ce27644cb7c327ac9f12?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","id":1494625,"login":"Erebot"},"created_at":"2012-05-26T20:10:29Z","id":"1556178185","actor":{"gravatar_id":"adf15294c19648e1fac2509bd42d01c7","url":"https://api.github.com/users/fpoirotte","avatar_url":"https://secure.gravatar.com/avatar/adf15294c19648e1fac2509bd42d01c7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":499919,"login":"fpoirotte"}},{"type":"PushEvent","payload":{"head":"fa2ed00079275e676882e487dbeb75f802760b33","size":2,"push_id":80706691,"commits":[{"sha":"3a94206fa09f16c1732558adce1a3a88bbdf18da","author":{"name":"amaitland","email":"amaitland@b6a209e6-650d-0410-972b-dadffa731f64"},"url":"https://api.github.com/repos/pcgen-svn/pcgen-svn/commits/3a94206fa09f16c1732558adce1a3a88bbdf18da","distinct":true,"message":"This is showing as changed, but can't pull a log difference.\n\ngit-svn-id: https://pcgen.svn.sourceforge.net/svnroot/pcgen/Trunk/pcgen@16749 b6a209e6-650d-0410-972b-dadffa731f64"},{"sha":"fa2ed00079275e676882e487dbeb75f802760b33","author":{"name":"amaitland","email":"amaitland@b6a209e6-650d-0410-972b-dadffa731f64"},"url":"https://api.github.com/repos/pcgen-svn/pcgen-svn/commits/fa2ed00079275e676882e487dbeb75f802760b33","distinct":true,"message":"\t\n[Distant Horizons Games] The Practical Enchanter\nUpdates\nIssue#: NEWSOURCE-4\n\n\ngit-svn-id: https://pcgen.svn.sourceforge.net/svnroot/pcgen/Trunk/pcgen@16750 b6a209e6-650d-0410-972b-dadffa731f64"}],"ref":"refs/heads/master"},"public":true,"repo":{"url":"https://api.github.com/repos/pcgen-svn/pcgen-svn","id":3355411,"name":"pcgen-svn/pcgen-svn"},"created_at":"2012-05-26T20:10:25Z","id":"1556178179","actor":{"gravatar_id":"522faa929df7935f1b2d9e0d4ed09d60","url":"https://api.github.com/users/pcgen-svn","avatar_url":"https://secure.gravatar.com/avatar/522faa929df7935f1b2d9e0d4ed09d60?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1408391,"login":"pcgen-svn"}},{"type":"PushEvent","payload":{"head":"ecd011a36b1b91258d614a3a9a5cae28dcf26881","size":8,"push_id":80706690,"ref":"refs/heads/devel","commits":[{"sha":"26e2f1d1cf0c4d2c823029541fa54dc1bc67fa74","author":{"name":"Frank Celler","email":"f.celler@triagens.de"},"url":"https://api.github.com/repos/triAGENS/ArangoDB/commits/26e2f1d1cf0c4d2c823029541fa54dc1bc67fa74","distinct":true,"message":"cleanup"},{"sha":"c8810e6c188424925323dec22f29e67645d4ee2e","author":{"name":"Frank Celler","email":"f.celler@triagens.de"},"url":"https://api.github.com/repos/triAGENS/ArangoDB/commits/c8810e6c188424925323dec22f29e67645d4ee2e","distinct":true,"message":"added missing isConnected"},{"sha":"3c4b15f14c0bc89311db4fd8ba2f2590d97d9f48","author":{"name":"Frank Celler","email":"f.celler@triagens.de"},"url":"https://api.github.com/repos/triAGENS/ArangoDB/commits/3c4b15f14c0bc89311db4fd8ba2f2590d97d9f48","distinct":true,"message":"added missing file"},{"sha":"4aad80642091ea66825556588b8b1a8a37c0e8c4","author":{"name":"Frank Celler","email":"f.celler@triagens.de"},"url":"https://api.github.com/repos/triAGENS/ArangoDB/commits/4aad80642091ea66825556588b8b1a8a37c0e8c4","distinct":true,"message":"added missing file"},{"sha":"a3c692d714ffc37e9277ab5497ef7034fb4df981","author":{"name":"Frank Celler","email":"f.celler@triagens.de"},"url":"https://api.github.com/repos/triAGENS/ArangoDB/commits/a3c692d714ffc37e9277ab5497ef7034fb4df981","distinct":true,"message":"cleanup AddressPort"},{"sha":"555605dfb400fc6b31198508f2fd2aff3427439c","author":{"name":"Frank Celler","email":"f.celler@triagens.de"},"url":"https://api.github.com/repos/triAGENS/ArangoDB/commits/555605dfb400fc6b31198508f2fd2aff3427439c","distinct":true,"message":"mruby client connection"},{"sha":"2ed6ae66fee971f3618c77c5d79940d9f07db2ef","author":{"name":"Frank Celler","email":"f.celler@triagens.de"},"url":"https://api.github.com/repos/triAGENS/ArangoDB/commits/2ed6ae66fee971f3618c77c5d79940d9f07db2ef","distinct":true,"message":"mruby client connection"},{"sha":"ecd011a36b1b91258d614a3a9a5cae28dcf26881","author":{"name":"Frank Celler","email":"f.celler@triagens.de"},"url":"https://api.github.com/repos/triAGENS/ArangoDB/commits/ecd011a36b1b91258d614a3a9a5cae28dcf26881","distinct":true,"message":"added valgrind sleep"}]},"public":true,"repo":{"url":"https://api.github.com/repos/triAGENS/ArangoDB","id":2649214,"name":"triAGENS/ArangoDB"},"org":{"gravatar_id":"76a220a4fa407ecfb795a8186c099c52","url":"https://api.github.com/orgs/triAGENS","avatar_url":"https://secure.gravatar.com/avatar/76a220a4fa407ecfb795a8186c099c52?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","id":391956,"login":"triAGENS"},"created_at":"2012-05-26T20:10:24Z","id":"1556178178","actor":{"gravatar_id":"457f59eedabca29c1fa9cf798b5a11c4","url":"https://api.github.com/users/fceller","avatar_url":"https://secure.gravatar.com/avatar/457f59eedabca29c1fa9cf798b5a11c4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":392005,"login":"fceller"}},{"type":"ForkEvent","payload":{"forkee":{"name":"websocket.io","size":168,"has_wiki":true,"created_at":"2012-05-26T20:10:22Z","clone_url":"https://github.com/florentx/websocket.io.git","public":true,"watchers":1,"private":false,"updated_at":"2012-05-26T20:10:22Z","fork":true,"git_url":"git://github.com/florentx/websocket.io.git","url":"https://api.github.com/repos/florentx/websocket.io","language":"JavaScript","ssh_url":"git@github.com:florentx/websocket.io.git","id":4457498,"svn_url":"https://github.com/florentx/websocket.io","pushed_at":"2012-05-01T02:14:09Z","mirror_url":null,"has_downloads":true,"open_issues":0,"full_name":"florentx/websocket.io","has_issues":false,"homepage":"","description":"","forks":0,"html_url":"https://github.com/florentx/websocket.io","owner":{"gravatar_id":"df4a6858794ecf84eae5afb37bf276ba","avatar_url":"https://secure.gravatar.com/avatar/df4a6858794ecf84eae5afb37bf276ba?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/florentx","id":142113,"login":"florentx"}}},"public":true,"repo":{"url":"https://api.github.com/repos/LearnBoost/websocket.io","id":2803817,"name":"LearnBoost/websocket.io"},"org":{"gravatar_id":"07100ee5e8dedd7c96195b2aa422dbb5","url":"https://api.github.com/orgs/LearnBoost","avatar_url":"https://secure.gravatar.com/avatar/07100ee5e8dedd7c96195b2aa422dbb5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","id":204174,"login":"LearnBoost"},"created_at":"2012-05-26T20:10:23Z","id":"1556178176","actor":{"gravatar_id":"df4a6858794ecf84eae5afb37bf276ba","url":"https://api.github.com/users/florentx","avatar_url":"https://secure.gravatar.com/avatar/df4a6858794ecf84eae5afb37bf276ba?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142113,"login":"florentx"}},{"type":"WatchEvent","payload":{"action":"started"},"public":true,"repo":{"url":"https://api.github.com/repos/capttaco/Briefs","id":250217,"name":"capttaco/Briefs"},"created_at":"2012-05-26T20:10:22Z","id":"1556178174","actor":{"gravatar_id":"ec3da2446aa2be99a27fb3d71dd0c4fa","url":"https://api.github.com/users/fdb","avatar_url":"https://secure.gravatar.com/avatar/ec3da2446aa2be99a27fb3d71dd0c4fa?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":8477,"login":"fdb"}},{"type":"PushEvent","payload":{"head":"4e3ba6b1909b06c4baef1e2017973de7ebce9474","size":3,"push_id":80706689,"ref":"refs/heads/master","commits":[{"sha":"21f8bacb3af04bac634ff61a26fc46751b995275","author":{"name":"Nils Maier","email":"maierman@web.de"},"url":"https://api.github.com/repos/downthemall/downthemall-mirror/commits/21f8bacb3af04bac634ff61a26fc46751b995275","distinct":true,"message":"mac: Distinguish hover states better for #action toolbarbuttons"},{"sha":"6118a94cd3a884b5a089b1214fefbbdda46b7dab","author":{"name":"Nils Maier","email":"maierman@web.de"},"url":"https://api.github.com/repos/downthemall/downthemall-mirror/commits/6118a94cd3a884b5a089b1214fefbbdda46b7dab","distinct":true,"message":"#2215: Only the manager must take care of rebooting"},{"sha":"4e3ba6b1909b06c4baef1e2017973de7ebce9474","author":{"name":"Nils Maier","email":"maierman@web.de"},"url":"https://api.github.com/repos/downthemall/downthemall-mirror/commits/4e3ba6b1909b06c4baef1e2017973de7ebce9474","distinct":true,"message":"SaveAs: Show the button as a toolbar button\n\nAlso put the saveas.css file where it belongs"}]},"public":true,"repo":{"url":"https://api.github.com/repos/downthemall/downthemall-mirror","id":1336743,"name":"downthemall/downthemall-mirror"},"org":{"gravatar_id":"dc5ae3f7381764005a57cdf0cd0a814b","url":"https://api.github.com/orgs/downthemall","avatar_url":"https://secure.gravatar.com/avatar/dc5ae3f7381764005a57cdf0cd0a814b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","id":1041247,"login":"downthemall"},"created_at":"2012-05-26T20:10:21Z","id":"1556178173","actor":{"gravatar_id":"4738af770d803e8c733510b794651bae","url":"https://api.github.com/users/nmaier","avatar_url":"https://secure.gravatar.com/avatar/4738af770d803e8c733510b794651bae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":383665,"login":"nmaier"}},{"type":"PushEvent","payload":{"head":"67b1545f946124bb19e5fde498680b939e150ed8","size":3,"push_id":80706688,"commits":[{"sha":"0229a16f35481308bf97ff995a3c76c88e2b7c7e","author":{"name":"Eric Mill","email":"konklone@gmail.com"},"url":"https://api.github.com/repos/sunlightlabs/scout/commits/0229a16f35481308bf97ff995a3c76c88e2b7c7e","distinct":true,"message":"Tried again on spacing"},{"sha":"de870bc1a8cd9ff4104d52be54999dded7323ce9","author":{"name":"Eric Mill","email":"konklone@gmail.com"},"url":"https://api.github.com/repos/sunlightlabs/scout/commits/de870bc1a8cd9ff4104d52be54999dded7323ce9","distinct":true,"message":"Made the search bar act like a filter on the search page, remember the current search, and keep the current subscription type"},{"sha":"67b1545f946124bb19e5fde498680b939e150ed8","author":{"name":"Eric Mill","email":"konklone@gmail.com"},"url":"https://api.github.com/repos/sunlightlabs/scout/commits/67b1545f946124bb19e5fde498680b939e150ed8","distinct":true,"message":"Simplified main search bar code, made it further act like a filter and preserve existing filters"}],"ref":"refs/heads/master"},"public":true,"repo":{"url":"https://api.github.com/repos/sunlightlabs/scout","id":2148752,"name":"sunlightlabs/scout"},"org":{"gravatar_id":"83fc7b3fdb0a6d29e064ebb44f0efa8c","url":"https://api.github.com/orgs/sunlightlabs","avatar_url":"https://secure.gravatar.com/avatar/83fc7b3fdb0a6d29e064ebb44f0efa8c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","id":40420,"login":"sunlightlabs"},"created_at":"2012-05-26T20:10:21Z","id":"1556178172","actor":{"gravatar_id":"2d61a1c4fc40720b60e99be64d883297","url":"https://api.github.com/users/konklone","avatar_url":"https://secure.gravatar.com/avatar/2d61a1c4fc40720b60e99be64d883297?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":4592,"login":"konklone"}},{"type":"PushEvent","payload":{"head":"f1ec182b989cc5ff1713ffd7d901f787c2d7ab05","size":1,"push_id":80706687,"commits":[{"sha":"f1ec182b989cc5ff1713ffd7d901f787c2d7ab05","author":{"name":"Francisco Albarran Cristobal","email":"pahko.xd@gmail.com"},"url":"https://api.github.com/repos/pahko/escape-lounge/commits/f1ec182b989cc5ff1713ffd7d901f787c2d7ab05","distinct":true,"message":"Update README.md"}],"ref":"refs/heads/patch-1"},"public":true,"repo":{"url":"https://api.github.com/repos/pahko/escape-lounge","id":4457492,"name":"pahko/escape-lounge"},"created_at":"2012-05-26T20:10:21Z","id":"1556178171","actor":{"gravatar_id":"ef8bbfccfd0dd146907f7a008fe57f43","url":"https://api.github.com/users/pahko","avatar_url":"https://secure.gravatar.com/avatar/ef8bbfccfd0dd146907f7a008fe57f43?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":572114,"login":"pahko"}},{"type":"PushEvent","payload":{"head":"5a2929c5912bbd6c1e305825fcbecc9ab28c85fa","size":1,"push_id":80706685,"commits":[{"sha":"5a2929c5912bbd6c1e305825fcbecc9ab28c85fa","author":{"name":"ericpyle","email":"eric.d.pyle@gmail.com"},"url":"https://api.github.com/repos/ericpyle/kayak/commits/5a2929c5912bbd6c1e305825fcbecc9ab28c85fa","distinct":true,"message":"use scripture range for now"}],"ref":"refs/heads/master"},"public":true,"repo":{"url":"https://api.github.com/repos/ericpyle/kayak","id":3819394,"name":"ericpyle/kayak"},"created_at":"2012-05-26T20:10:20Z","id":"1556178167","actor":{"gravatar_id":"08214a539f6f189a4012616fd57a7ba7","url":"https://api.github.com/users/ericpyle","avatar_url":"https://secure.gravatar.com/avatar/08214a539f6f189a4012616fd57a7ba7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1125565,"login":"ericpyle"}}] + diff --git a/lib/github/tests/ReplayData/AuthenticatedUser.testGetGists.txt b/lib/github/tests/ReplayData/AuthenticatedUser.testGetGists.txt new file mode 100644 index 0000000000..d87ba0dce2 --- /dev/null +++ b/lib/github/tests/ReplayData/AuthenticatedUser.testGetGists.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/gists +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4966'), ('content-length', '4507'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"868b9c31808f738e0f03284a2e538a41"'), ('date', 'Sat, 26 May 2012 20:14:40 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-26T11:08:22Z","url":"https://api.github.com/gists/2793505","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2793505.git","git_push_url":"git@gist.github.com:2793505.git","files":{"foobar.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2793505/73a1c7f17aa0ad5d7cbb5a8ca033ce47d3d23197/foobar.txt","size":24,"filename":"foobar.txt","language":"Text"}},"user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"description":null,"created_at":"2012-05-26T11:08:22Z","id":"2793505","html_url":"https://gist.github.com/2793505"},{"updated_at":"2012-05-26T10:09:33Z","url":"https://api.github.com/gists/2793179","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2793179.git","git_push_url":"git@gist.github.com:2793179.git","files":{"foobar.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2793179/73a1c7f17aa0ad5d7cbb5a8ca033ce47d3d23197/foobar.txt","size":24,"filename":"foobar.txt","language":"Text"}},"user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"description":"Gist created by PyGithub","created_at":"2012-05-26T09:50:02Z","id":"2793179","html_url":"https://gist.github.com/2793179"},{"updated_at":"2012-04-26T13:20:53Z","url":"https://api.github.com/gists/11cb445f8197e17d303d","comments":0,"public":false,"git_pull_url":"git://gist.github.com/11cb445f8197e17d303d.git","git_push_url":"git@gist.github.com:11cb445f8197e17d303d.git","files":{"FairThreadPoolPool.cpp":{"type":"text/plain","raw_url":"https://gist.github.com/raw/11cb445f8197e17d303d/0f72c6fe50eb011eacb4e39fa613bdfe2f7a0c51/FairThreadPoolPool.cpp","size":7779,"filename":"FairThreadPoolPool.cpp","language":"C++"}},"user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"description":"FairThreadPoolPool.cpp","created_at":"2012-04-26T13:20:53Z","id":"11cb445f8197e17d303d","html_url":"https://gist.github.com/11cb445f8197e17d303d"},{"updated_at":"2012-02-29T16:47:12Z","url":"https://api.github.com/gists/1942384","comments":0,"public":true,"git_pull_url":"git://gist.github.com/1942384.git","git_push_url":"git@gist.github.com:1942384.git","files":{"fail_github.py":{"type":"application/python","raw_url":"https://gist.github.com/raw/1942384/2fb3aa84e0efa50dc0f4c18b5df5b7b9ab27076b/fail_github.py","size":1636,"filename":"fail_github.py","language":"Python"}},"user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"description":"How to error 500 Github API v3, as requested by Rick (GitHub Staff)","created_at":"2012-02-29T16:47:12Z","id":"1942384","html_url":"https://gist.github.com/1942384"},{"updated_at":"2012-02-28T19:44:42Z","url":"https://api.github.com/gists/dcb7de17e8a52b74541d","comments":1,"public":false,"git_pull_url":"git://gist.github.com/dcb7de17e8a52b74541d.git","git_push_url":"git@gist.github.com:dcb7de17e8a52b74541d.git","files":{"cadfael.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/dcb7de17e8a52b74541d/48ca696645682d7430d73180814434e0284796b2/cadfael.txt","size":585,"filename":"cadfael.txt","language":"Text"}},"user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"description":"Cadfael: order of episodes in French DVD edition","created_at":"2012-02-28T19:44:42Z","id":"dcb7de17e8a52b74541d","html_url":"https://gist.github.com/dcb7de17e8a52b74541d"}] + diff --git a/lib/github/tests/ReplayData/AuthenticatedUser.testGetIssues.txt b/lib/github/tests/ReplayData/AuthenticatedUser.testGetIssues.txt new file mode 100644 index 0000000000..0a33e7ab9a --- /dev/null +++ b/lib/github/tests/ReplayData/AuthenticatedUser.testGetIssues.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/issues +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4964'), ('content-length', '43238'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"079a70319db4b8e496afd6236e20f5bb"'), ('date', 'Sat, 26 May 2012 20:16:00 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"repository":{"description":"Python library implementing the full Github API v3","full_name":"jacquev6/PyGithub","has_wiki":false,"has_issues":true,"updated_at":"2012-05-26T18:33:41Z","forks":2,"mirror_url":null,"homepage":"http://vincent-jacques.net/PyGithub","ssh_url":"git@github.com:jacquev6/PyGithub.git","open_issues":15,"fork":false,"svn_url":"https://github.com/jacquev6/PyGithub","pushed_at":"2012-05-26T11:25:48Z","size":412,"html_url":"https://github.com/jacquev6/PyGithub","private":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"name":"PyGithub","has_downloads":true,"language":"Python","watchers":14,"git_url":"git://github.com/jacquev6/PyGithub.git","id":3544490,"created_at":"2012-02-25T12:53:47Z"},"milestone":{"state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":9,"number":2,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"closed_issues":2,"id":93547,"created_at":"2012-03-08T12:22:28Z"},"state":"open","user":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442},"title":"Facilitate IDE autocompletion","comments":0,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"updated_at":"2012-05-18T11:06:11Z","body":"As per discussion in 6945921c529be14c3a8f566dd1e483674516d46d\n\nI have observed that autocompletion (using PyDev+Eclipse in my case) is pretty erratic.\nFor example, in the tutorial from the readme, `g.get_u` gets autocompleted correctly, but `g.get_user().get_r` (or any method or attribute applicable to `NamedUsers`/`AuthenticatedUser`, really) does not show autocompletion to `g.get_user().get_repo()`.\n\nThis makes exploring the library/API a bit cumbersome. ","number":27,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/27","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/27","labels":[{"color":"d7e102","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface"}],"id":4639931,"created_at":"2012-05-18T10:52:29Z"},{"repository":{"description":"Python library implementing the full Github API v3","full_name":"jacquev6/PyGithub","has_wiki":false,"has_issues":true,"updated_at":"2012-05-26T18:33:41Z","forks":2,"mirror_url":null,"homepage":"http://vincent-jacques.net/PyGithub","ssh_url":"git@github.com:jacquev6/PyGithub.git","open_issues":15,"fork":false,"svn_url":"https://github.com/jacquev6/PyGithub","pushed_at":"2012-05-26T11:25:48Z","size":412,"html_url":"https://github.com/jacquev6/PyGithub","private":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"name":"PyGithub","has_downloads":true,"language":"Python","watchers":14,"git_url":"git://github.com/jacquev6/PyGithub.git","id":3544490,"created_at":"2012-02-25T12:53:47Z"},"milestone":{"state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":9,"number":2,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"closed_issues":2,"id":93547,"created_at":"2012-03-08T12:22:28Z"},"state":"open","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"title":"List project(s) using PyGithub","comments":0,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"updated_at":"2012-05-07T10:49:06Z","body":"List known clients.\r\n\r\nFirst known client: http://pypi.python.org/pypi/tratihubis/ (cf #24)","number":25,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/25","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/25","labels":[{"color":"444444","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management"}],"id":4452000,"created_at":"2012-05-07T10:49:06Z"},{"repository":{"description":"Python library implementing the full Github API v3","full_name":"jacquev6/PyGithub","has_wiki":false,"has_issues":true,"updated_at":"2012-05-26T18:33:41Z","forks":2,"mirror_url":null,"homepage":"http://vincent-jacques.net/PyGithub","ssh_url":"git@github.com:jacquev6/PyGithub.git","open_issues":15,"fork":false,"svn_url":"https://github.com/jacquev6/PyGithub","pushed_at":"2012-05-26T11:25:48Z","size":412,"html_url":"https://github.com/jacquev6/PyGithub","private":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"name":"PyGithub","has_downloads":true,"language":"Python","watchers":14,"git_url":"git://github.com/jacquev6/PyGithub.git","id":3544490,"created_at":"2012-02-25T12:53:47Z"},"milestone":{"state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":9,"number":2,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"closed_issues":2,"id":93547,"created_at":"2012-03-08T12:22:28Z"},"state":"open","user":{"gravatar_id":"b58d0f1ea06b8d5de5f02c53f747ac03","avatar_url":"https://secure.gravatar.com/avatar/b58d0f1ea06b8d5de5f02c53f747ac03?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/roskakori","login":"roskakori","id":328726},"title":"Improve error messages on broken requests","comments":2,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"updated_at":"2012-05-04T19:23:57Z","body":"Thanks for PyGithub, it is easy to use and very complete. I just successfully used it to convert Trac tickets to Guthub issues.\r\n\r\nBut I had to learn the hard way that `create_issue()` expectes the milestone as number instead of a title. To track this down, I added the following `print` statement to `Requester.py`:\r\n\r\n```python\r\ndef __statusCheckedRequest( self, verb, url, parameters, input ):\r\n status, headers, output = self.__rawRequest( verb, url, parameters, input )\r\n if status < 200 or status >= 300:\r\n print output # <--- Added by me.\r\n raise UnknownGithubObject() # <--- sadly lacks any error details\r\n return headers, output\r\n```\r\n\r\nAs `output` already contains all the information needed (as JSON dump), it would be helpful if the exception raised here would include this information in the exception message.","number":24,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/24","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/24","labels":[{"color":"d7e102","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface"}],"id":4356743,"created_at":"2012-04-30T20:01:20Z"},{"repository":{"description":"Python library implementing the full Github API v3","full_name":"jacquev6/PyGithub","has_wiki":false,"has_issues":true,"updated_at":"2012-05-26T18:33:41Z","forks":2,"mirror_url":null,"homepage":"http://vincent-jacques.net/PyGithub","ssh_url":"git@github.com:jacquev6/PyGithub.git","open_issues":15,"fork":false,"svn_url":"https://github.com/jacquev6/PyGithub","pushed_at":"2012-05-26T11:25:48Z","size":412,"html_url":"https://github.com/jacquev6/PyGithub","private":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"name":"PyGithub","has_downloads":true,"language":"Python","watchers":14,"git_url":"git://github.com/jacquev6/PyGithub.git","id":3544490,"created_at":"2012-02-25T12:53:47Z"},"milestone":null,"state":"open","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"title":"Rework GitTree.recursive","comments":0,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"updated_at":"2012-03-19T19:08:18Z","body":"","number":20,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/20","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/20","labels":[{"color":"0b02e1","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Refactoring","name":"Refactoring"}],"id":3716033,"created_at":"2012-03-19T19:08:18Z"},{"repository":{"description":"Python library implementing the full Github API v3","full_name":"jacquev6/PyGithub","has_wiki":false,"has_issues":true,"updated_at":"2012-05-26T18:33:41Z","forks":2,"mirror_url":null,"homepage":"http://vincent-jacques.net/PyGithub","ssh_url":"git@github.com:jacquev6/PyGithub.git","open_issues":15,"fork":false,"svn_url":"https://github.com/jacquev6/PyGithub","pushed_at":"2012-05-26T11:25:48Z","size":412,"html_url":"https://github.com/jacquev6/PyGithub","private":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"name":"PyGithub","has_downloads":true,"language":"Python","watchers":14,"git_url":"git://github.com/jacquev6/PyGithub.git","id":3544490,"created_at":"2012-02-25T12:53:47Z"},"milestone":null,"state":"open","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"title":"Rework Github.get_gists","comments":0,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"updated_at":"2012-03-19T19:04:19Z","body":"In general, when you get a collection, you should get an iterable, and the pagination should be done only if needed. This is mandatory for Github.get_gists","number":19,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/19","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/19","labels":[{"color":"e102d8","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities"}],"id":3715946,"created_at":"2012-03-19T19:04:19Z"},{"repository":{"description":"Python library implementing the full Github API v3","full_name":"jacquev6/PyGithub","has_wiki":false,"has_issues":true,"updated_at":"2012-05-26T18:33:41Z","forks":2,"mirror_url":null,"homepage":"http://vincent-jacques.net/PyGithub","ssh_url":"git@github.com:jacquev6/PyGithub.git","open_issues":15,"fork":false,"svn_url":"https://github.com/jacquev6/PyGithub","pushed_at":"2012-05-26T11:25:48Z","size":412,"html_url":"https://github.com/jacquev6/PyGithub","private":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"name":"PyGithub","has_downloads":true,"language":"Python","watchers":14,"git_url":"git://github.com/jacquev6/PyGithub.git","id":3544490,"created_at":"2012-02-25T12:53:47Z"},"milestone":null,"state":"open","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"title":"Take care of _identity","comments":0,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"updated_at":"2012-03-14T06:49:31Z","body":"","number":18,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/18","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/18","labels":[{"color":"0b02e1","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Refactoring","name":"Refactoring"}],"id":3643837,"created_at":"2012-03-14T06:49:31Z"},{"repository":{"description":"Python library implementing the full Github API v3","full_name":"jacquev6/PyGithub","has_wiki":false,"has_issues":true,"updated_at":"2012-05-26T18:33:41Z","forks":2,"mirror_url":null,"homepage":"http://vincent-jacques.net/PyGithub","ssh_url":"git@github.com:jacquev6/PyGithub.git","open_issues":15,"fork":false,"svn_url":"https://github.com/jacquev6/PyGithub","pushed_at":"2012-05-26T11:25:48Z","size":412,"html_url":"https://github.com/jacquev6/PyGithub","private":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"name":"PyGithub","has_downloads":true,"language":"Python","watchers":14,"git_url":"git://github.com/jacquev6/PyGithub.git","id":3544490,"created_at":"2012-02-25T12:53:47Z"},"milestone":{"state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":9,"number":2,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"closed_issues":2,"id":93547,"created_at":"2012-03-08T12:22:28Z"},"state":"open","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"title":"Document issue reporting","comments":0,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"updated_at":"2012-03-13T12:09:48Z","body":"","number":17,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/17","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/17","labels":[{"color":"444444","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management"}],"id":3628022,"created_at":"2012-03-13T12:09:48Z"},{"repository":{"description":"Python library implementing the full Github API v3","full_name":"jacquev6/PyGithub","has_wiki":false,"has_issues":true,"updated_at":"2012-05-26T18:33:41Z","forks":2,"mirror_url":null,"homepage":"http://vincent-jacques.net/PyGithub","ssh_url":"git@github.com:jacquev6/PyGithub.git","open_issues":15,"fork":false,"svn_url":"https://github.com/jacquev6/PyGithub","pushed_at":"2012-05-26T11:25:48Z","size":412,"html_url":"https://github.com/jacquev6/PyGithub","private":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"name":"PyGithub","has_downloads":true,"language":"Python","watchers":14,"git_url":"git://github.com/jacquev6/PyGithub.git","id":3544490,"created_at":"2012-02-25T12:53:47Z"},"milestone":{"state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":9,"number":2,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"closed_issues":2,"id":93547,"created_at":"2012-03-08T12:22:28Z"},"state":"open","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"title":"Add copyright and license notice","comments":0,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"updated_at":"2012-03-13T07:04:42Z","body":"","number":16,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/16","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/16","labels":[{"color":"444444","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management"}],"id":3624595,"created_at":"2012-03-13T06:25:31Z"},{"repository":{"description":"Python library implementing the full Github API v3","full_name":"jacquev6/PyGithub","has_wiki":false,"has_issues":true,"updated_at":"2012-05-26T18:33:41Z","forks":2,"mirror_url":null,"homepage":"http://vincent-jacques.net/PyGithub","ssh_url":"git@github.com:jacquev6/PyGithub.git","open_issues":15,"fork":false,"svn_url":"https://github.com/jacquev6/PyGithub","pushed_at":"2012-05-26T11:25:48Z","size":412,"html_url":"https://github.com/jacquev6/PyGithub","private":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"name":"PyGithub","has_downloads":true,"language":"Python","watchers":14,"git_url":"git://github.com/jacquev6/PyGithub.git","id":3544490,"created_at":"2012-02-25T12:53:47Z"},"milestone":null,"state":"open","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"title":"Rework BaseUrl to use tuples instead of string concatenation","comments":0,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"updated_at":"2012-03-13T06:23:35Z","body":"","number":14,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/14","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/14","labels":[{"color":"0b02e1","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Refactoring","name":"Refactoring"}],"id":3624570,"created_at":"2012-03-13T06:23:35Z"},{"repository":{"description":"Python library implementing the full Github API v3","full_name":"jacquev6/PyGithub","has_wiki":false,"has_issues":true,"updated_at":"2012-05-26T18:33:41Z","forks":2,"mirror_url":null,"homepage":"http://vincent-jacques.net/PyGithub","ssh_url":"git@github.com:jacquev6/PyGithub.git","open_issues":15,"fork":false,"svn_url":"https://github.com/jacquev6/PyGithub","pushed_at":"2012-05-26T11:25:48Z","size":412,"html_url":"https://github.com/jacquev6/PyGithub","private":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"name":"PyGithub","has_downloads":true,"language":"Python","watchers":14,"git_url":"git://github.com/jacquev6/PyGithub.git","id":3544490,"created_at":"2012-02-25T12:53:47Z"},"milestone":null,"state":"open","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"title":"Remove the _repo hugly hack","comments":0,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"updated_at":"2012-03-13T06:22:27Z","body":"","number":13,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/13","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/13","labels":[{"color":"0b02e1","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Refactoring","name":"Refactoring"}],"id":3624561,"created_at":"2012-03-13T06:22:27Z"},{"repository":{"description":"Python library implementing the full Github API v3","full_name":"jacquev6/PyGithub","has_wiki":false,"has_issues":true,"updated_at":"2012-05-26T18:33:41Z","forks":2,"mirror_url":null,"homepage":"http://vincent-jacques.net/PyGithub","ssh_url":"git@github.com:jacquev6/PyGithub.git","open_issues":15,"fork":false,"svn_url":"https://github.com/jacquev6/PyGithub","pushed_at":"2012-05-26T11:25:48Z","size":412,"html_url":"https://github.com/jacquev6/PyGithub","private":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"name":"PyGithub","has_downloads":true,"language":"Python","watchers":14,"git_url":"git://github.com/jacquev6/PyGithub.git","id":3544490,"created_at":"2012-02-25T12:53:47Z"},"milestone":{"state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":9,"number":2,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"closed_issues":2,"id":93547,"created_at":"2012-03-08T12:22:28Z"},"state":"open","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"title":"Structure some InternalSimpleAttributes","comments":0,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"updated_at":"2012-03-13T06:21:57Z","body":"","number":12,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/12","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/12","labels":[{"color":"d7e102","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface"}],"id":3624556,"created_at":"2012-03-13T06:21:57Z"},{"repository":{"description":"Python library implementing the full Github API v3","full_name":"jacquev6/PyGithub","has_wiki":false,"has_issues":true,"updated_at":"2012-05-26T18:33:41Z","forks":2,"mirror_url":null,"homepage":"http://vincent-jacques.net/PyGithub","ssh_url":"git@github.com:jacquev6/PyGithub.git","open_issues":15,"fork":false,"svn_url":"https://github.com/jacquev6/PyGithub","pushed_at":"2012-05-26T11:25:48Z","size":412,"html_url":"https://github.com/jacquev6/PyGithub","private":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"name":"PyGithub","has_downloads":true,"language":"Python","watchers":14,"git_url":"git://github.com/jacquev6/PyGithub.git","id":3544490,"created_at":"2012-02-25T12:53:47Z"},"milestone":{"state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":9,"number":2,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"closed_issues":2,"id":93547,"created_at":"2012-03-08T12:22:28Z"},"state":"open","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"title":"Publish version 1.0","comments":0,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"updated_at":"2012-03-12T21:58:05Z","body":"","number":9,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/9","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/9","labels":[{"color":"444444","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management"}],"id":3619973,"created_at":"2012-03-12T21:58:05Z"},{"repository":{"description":"Python library implementing the full Github API v3","full_name":"jacquev6/PyGithub","has_wiki":false,"has_issues":true,"updated_at":"2012-05-26T18:33:41Z","forks":2,"mirror_url":null,"homepage":"http://vincent-jacques.net/PyGithub","ssh_url":"git@github.com:jacquev6/PyGithub.git","open_issues":15,"fork":false,"svn_url":"https://github.com/jacquev6/PyGithub","pushed_at":"2012-05-26T11:25:48Z","size":412,"html_url":"https://github.com/jacquev6/PyGithub","private":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"name":"PyGithub","has_downloads":true,"language":"Python","watchers":14,"git_url":"git://github.com/jacquev6/PyGithub.git","id":3544490,"created_at":"2012-02-25T12:53:47Z"},"milestone":{"state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":9,"number":2,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"closed_issues":2,"id":93547,"created_at":"2012-03-08T12:22:28Z"},"state":"open","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"title":"Review public interface homogeneity ","comments":0,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"updated_at":"2012-03-08T12:23:29Z","body":"","number":4,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/4","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4","labels":[{"color":"d7e102","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface"}],"id":3527266,"created_at":"2012-03-06T16:48:40Z"},{"repository":{"description":"Python library implementing the full Github API v3","full_name":"jacquev6/PyGithub","has_wiki":false,"has_issues":true,"updated_at":"2012-05-26T18:33:41Z","forks":2,"mirror_url":null,"homepage":"http://vincent-jacques.net/PyGithub","ssh_url":"git@github.com:jacquev6/PyGithub.git","open_issues":15,"fork":false,"svn_url":"https://github.com/jacquev6/PyGithub","pushed_at":"2012-05-26T11:25:48Z","size":412,"html_url":"https://github.com/jacquev6/PyGithub","private":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"name":"PyGithub","has_downloads":true,"language":"Python","watchers":14,"git_url":"git://github.com/jacquev6/PyGithub.git","id":3544490,"created_at":"2012-02-25T12:53:47Z"},"milestone":null,"state":"open","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"title":"Deduce mandatory parameters","comments":0,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"updated_at":"2012-05-19T06:42:43Z","body":"","number":3,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/3","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/3","labels":[{"color":"e102d8","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities"}],"id":3527245,"created_at":"2012-03-06T16:47:49Z"},{"repository":{"description":"Python library implementing the full Github API v3","full_name":"jacquev6/PyGithub","has_wiki":false,"has_issues":true,"updated_at":"2012-05-26T18:33:41Z","forks":2,"mirror_url":null,"homepage":"http://vincent-jacques.net/PyGithub","ssh_url":"git@github.com:jacquev6/PyGithub.git","open_issues":15,"fork":false,"svn_url":"https://github.com/jacquev6/PyGithub","pushed_at":"2012-05-26T11:25:48Z","size":412,"html_url":"https://github.com/jacquev6/PyGithub","private":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"name":"PyGithub","has_downloads":true,"language":"Python","watchers":14,"git_url":"git://github.com/jacquev6/PyGithub.git","id":3544490,"created_at":"2012-02-25T12:53:47Z"},"milestone":{"state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":9,"number":2,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"closed_issues":2,"id":93547,"created_at":"2012-03-08T12:22:28Z"},"state":"open","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"title":"Use objects as parameters instead of shas, ids, etc.","comments":0,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"updated_at":"2012-03-08T12:23:29Z","body":"","number":2,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/2","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/2","labels":[{"color":"d7e102","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface"}],"id":3527231,"created_at":"2012-03-06T16:46:49Z"}] + diff --git a/lib/github/tests/ReplayData/AuthenticatedUser.testGetIssuesWithAllArguments.txt b/lib/github/tests/ReplayData/AuthenticatedUser.testGetIssuesWithAllArguments.txt new file mode 100644 index 0000000000..add1157382 --- /dev/null +++ b/lib/github/tests/ReplayData/AuthenticatedUser.testGetIssuesWithAllArguments.txt @@ -0,0 +1,55 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4993'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '1496'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 17 May 2013 11:20:54 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"16804c53098398def5970814e79a2cf5"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 17 May 2013 11:34:57 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8')] +{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","name":"Vincent Jacques","company":"Criteo","blog":"http://vincent-jacques.net","location":"Paris, France","email":"vincent@vincent-jacques.net","hireable":false,"bio":"","public_repos":16,"followers":27,"following":39,"created_at":"2010-07-09T06:10:06Z","updated_at":"2013-05-17T11:20:54Z","public_gists":3,"total_private_repos":4,"owned_private_repos":4,"disk_usage":17188,"collaborators":1,"plan":{"name":"micro","space":614400,"collaborators":1,"private_repos":5},"private_gists":6,"site_admin":false} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4992'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '4663'), ('server', 'GitHub.com'), ('last-modified', 'Mon, 13 May 2013 21:44:12 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"2184e9e10f0a22eb0f1eceed39d728da"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 17 May 2013 11:34:58 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8')] +{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master","permissions":{"admin":true,"push":true,"pull":true},"network_count":55} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/labels/Requested%20by%20user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4991'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '125'), ('server', 'GitHub.com'), ('last-modified', 'Wed, 12 Sep 2012 18:38:55 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"4255e5086bc19b2096e05eb6dad041ee"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 17 May 2013 11:34:59 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"} + +https +GET +api.github.com +None +/issues?sort=comments&direction=asc&since=2012-05-28T23%3A00%3A00Z&labels=Requested+by+user&filter=assigned&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4990'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '276385'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 17 May 2013 11:20:54 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last"'), ('etag', '"16804c53098398def5970814e79a2cf5"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 17 May 2013 11:35:00 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/81","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/81/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/81/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/81/events","html_url":"https://github.com/jacquev6/PyGithub/issues/81","id":6816576,"number":81,"title":"Complete Legacy.convertXxx","user":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/12","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/12/labels","id":172499,"number":12,"title":"Version 1.7","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":7,"state":"closed","created_at":"2012-09-10T04:25:53Z","updated_at":"2012-09-12T19:40:27Z","due_on":"2012-09-14T07:00:00Z"},"comments":0,"created_at":"2012-09-12T12:14:46Z","updated_at":"2012-09-12T18:40:47Z","closed_at":"2012-09-12T18:40:47Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Legacy.convertXxx discards some useful information and this leads to API calls that could be avoided."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/116","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/116/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/116/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/116/events","html_url":"https://github.com/jacquev6/PyGithub/issues/116","id":8495415,"number":116,"title":"Assertion failure on big numbers","user":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/17","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/17/labels","id":215837,"number":17,"title":"Version 1.9.1","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":2,"state":"closed","created_at":"2012-11-20T07:36:46Z","updated_at":"2012-11-20T18:42:30Z","due_on":null},"comments":0,"created_at":"2012-11-20T07:35:10Z","updated_at":"2012-11-20T18:42:08Z","closed_at":"2012-11-20T18:42:08Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"(Issue reported by private mail)\n\nIn some Github Enterprise install, there can be a plan with 999999999999 private repositories. This doesn't fit in an int, but in a long. The assertion `isinstance(attributes[\"private_repos\"], int)` on https://github.com/jacquev6/PyGithub/blob/master/github/Plan.py#L50 fails.\n\nI will replace all occurrences of `isinstance(xxx, int)` by `isinstance(x, (int, long))`."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/86","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/86/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/86/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/86/events","html_url":"https://github.com/jacquev6/PyGithub/issues/86","id":6889934,"number":86,"title":"Include tests in pypi tarball","user":{"login":"koobs","id":1011612,"avatar_url":"https://secure.gravatar.com/avatar/a083cdd9096b4a5623a298d6b4d590a8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"a083cdd9096b4a5623a298d6b4d590a8","url":"https://api.github.com/users/koobs","html_url":"https://github.com/koobs","followers_url":"https://api.github.com/users/koobs/followers","following_url":"https://api.github.com/users/koobs/following{/other_user}","gists_url":"https://api.github.com/users/koobs/gists{/gist_id}","starred_url":"https://api.github.com/users/koobs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/koobs/subscriptions","organizations_url":"https://api.github.com/users/koobs/orgs","repos_url":"https://api.github.com/users/koobs/repos","events_url":"https://api.github.com/users/koobs/events{/privacy}","received_events_url":"https://api.github.com/users/koobs/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/13","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/13/labels","id":174087,"number":13,"title":"Version 1.8.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":6,"state":"closed","created_at":"2012-09-12T19:53:14Z","updated_at":"2012-09-30T18:12:03Z","due_on":"2012-09-30T07:00:00Z"},"comments":1,"created_at":"2012-09-14T23:22:10Z","updated_at":"2012-09-17T16:57:45Z","closed_at":"2012-09-17T16:57:45Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Will help QA and regression test the devel/py-pygithub FreeBSD port"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/114","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/114/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/114/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/114/events","html_url":"https://github.com/jacquev6/PyGithub/issues/114","id":8339699,"number":114,"title":"typo in ReadMe.md","user":{"login":"tymofij","id":123786,"avatar_url":"https://secure.gravatar.com/avatar/253b410d7a41999c754970a3aa34834e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"253b410d7a41999c754970a3aa34834e","url":"https://api.github.com/users/tymofij","html_url":"https://github.com/tymofij","followers_url":"https://api.github.com/users/tymofij/followers","following_url":"https://api.github.com/users/tymofij/following{/other_user}","gists_url":"https://api.github.com/users/tymofij/gists{/gist_id}","starred_url":"https://api.github.com/users/tymofij/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tymofij/subscriptions","organizations_url":"https://api.github.com/users/tymofij/orgs","repos_url":"https://api.github.com/users/tymofij/repos","events_url":"https://api.github.com/users/tymofij/events{/privacy}","received_events_url":"https://api.github.com/users/tymofij/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/14","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/14/labels","id":189891,"number":14,"title":"Version 1.9.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":9,"state":"closed","created_at":"2012-10-05T08:15:01Z","updated_at":"2012-11-19T20:52:01Z","due_on":null},"comments":1,"created_at":"2012-11-13T23:15:11Z","updated_at":"2012-11-14T07:58:02Z","closed_at":"2012-11-14T07:58:00Z","pull_request":{"html_url":"https://github.com/jacquev6/PyGithub/pull/114","diff_url":"https://github.com/jacquev6/PyGithub/pull/114.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/114.patch"},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":""},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/111","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/111/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/111/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/111/events","html_url":"https://github.com/jacquev6/PyGithub/issues/111","id":8075253,"number":111,"title":"Add 'assignee' attribute to PullRequest","user":{"login":"mstead","id":218800,"avatar_url":"https://secure.gravatar.com/avatar/cff2de4d58af775ba0a07a5332b57889?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"cff2de4d58af775ba0a07a5332b57889","url":"https://api.github.com/users/mstead","html_url":"https://github.com/mstead","followers_url":"https://api.github.com/users/mstead/followers","following_url":"https://api.github.com/users/mstead/following{/other_user}","gists_url":"https://api.github.com/users/mstead/gists{/gist_id}","starred_url":"https://api.github.com/users/mstead/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mstead/subscriptions","organizations_url":"https://api.github.com/users/mstead/orgs","repos_url":"https://api.github.com/users/mstead/repos","events_url":"https://api.github.com/users/mstead/events{/privacy}","received_events_url":"https://api.github.com/users/mstead/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/14","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/14/labels","id":189891,"number":14,"title":"Version 1.9.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":9,"state":"closed","created_at":"2012-10-05T08:15:01Z","updated_at":"2012-11-19T20:52:01Z","due_on":null},"comments":1,"created_at":"2012-11-03T00:33:18Z","updated_at":"2012-11-03T08:28:14Z","closed_at":"2012-11-03T08:25:59Z","pull_request":{"html_url":"https://github.com/jacquev6/PyGithub/pull/111","diff_url":"https://github.com/jacquev6/PyGithub/pull/111.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/111.patch"},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"It seems as though this may have been added to\r\nthe github API and was not being included in the\r\nPullRequest object.\r\n\r\nI stumbled upon this when attempting to get the current\r\nassignee of a pull request while playing with the API,\r\nand noticed I could not get it via PyGithub. I need this\r\nfor a project I'm working on.\r\n\r\nThis verifies that the attribute's existence in github's API:\r\n```curl -i \"https://api.github.com/repos/jacquev6/PyGithub/pulls/31\" | grep assignee```\r\nOutput:\r\n```\"assignee\": null,```\r\n\r\n\r\nI was also going to update the tests to include the attribute,\r\nbut I wasn't able to set the assignee on the test data.\r\n"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/110","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/110/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/110/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/110/events","html_url":"https://github.com/jacquev6/PyGithub/issues/110","id":8033963,"number":110,"title":"Add encoding comment to source files","user":{"login":"Zearin","id":630124,"avatar_url":"https://secure.gravatar.com/avatar/cb9730ee11d50fa2db955d687c653971?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"cb9730ee11d50fa2db955d687c653971","url":"https://api.github.com/users/Zearin","html_url":"https://github.com/Zearin","followers_url":"https://api.github.com/users/Zearin/followers","following_url":"https://api.github.com/users/Zearin/following{/other_user}","gists_url":"https://api.github.com/users/Zearin/gists{/gist_id}","starred_url":"https://api.github.com/users/Zearin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Zearin/subscriptions","organizations_url":"https://api.github.com/users/Zearin/orgs","repos_url":"https://api.github.com/users/Zearin/repos","events_url":"https://api.github.com/users/Zearin/events{/privacy}","received_events_url":"https://api.github.com/users/Zearin/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/14","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/14/labels","id":189891,"number":14,"title":"Version 1.9.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":9,"state":"closed","created_at":"2012-10-05T08:15:01Z","updated_at":"2012-11-19T20:52:01Z","due_on":null},"comments":1,"created_at":"2012-11-01T15:45:03Z","updated_at":"2012-11-03T08:28:32Z","closed_at":"2012-11-03T08:07:37Z","pull_request":{"html_url":"https://github.com/jacquev6/PyGithub/pull/110","diff_url":"https://github.com/jacquev6/PyGithub/pull/110.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/110.patch"},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"This is a minor thing. It’s a convention, not a rule (obviously)—but it’s also a best practice.\r\n\r\nMany text editors look for this kind of comment as the first line—or second line, if there is a shebang (the `#!/usr/bin/env python`, or whatever else)—and make use of this to determine the file’s encoding."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/118","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/118/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/118/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/118/events","html_url":"https://github.com/jacquev6/PyGithub/issues/118","id":9089893,"number":118,"title":"Modify setup.py to allow .egg distribution of PyGithub","user":{"login":"gregwjacobs","id":1749292,"avatar_url":"https://secure.gravatar.com/avatar/8707d63a44f6cc04e58a655f3df3105c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8707d63a44f6cc04e58a655f3df3105c","url":"https://api.github.com/users/gregwjacobs","html_url":"https://github.com/gregwjacobs","followers_url":"https://api.github.com/users/gregwjacobs/followers","following_url":"https://api.github.com/users/gregwjacobs/following{/other_user}","gists_url":"https://api.github.com/users/gregwjacobs/gists{/gist_id}","starred_url":"https://api.github.com/users/gregwjacobs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gregwjacobs/subscriptions","organizations_url":"https://api.github.com/users/gregwjacobs/orgs","repos_url":"https://api.github.com/users/gregwjacobs/repos","events_url":"https://api.github.com/users/gregwjacobs/events{/privacy}","received_events_url":"https://api.github.com/users/gregwjacobs/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/16","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/16/labels","id":215570,"number":16,"title":"Version 1.10.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":10,"state":"closed","created_at":"2012-11-19T20:02:45Z","updated_at":"2012-12-25T12:25:01Z","due_on":null},"comments":1,"created_at":"2012-12-07T14:42:13Z","updated_at":"2012-12-21T19:45:37Z","closed_at":"2012-12-21T19:45:37Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"In setup.py change:\n\n`from distutils.core import setup, Command`\n\nto:\n\n`from setuptools import setup, Command, find_packages`\n\nThus users can also distribute or use PyGithub in as an .egg via this command:\n\n`python setup.py bdist_egg`\n\nAFAIK this will not impact the remainder of the existing use of setup.py?"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/123","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/123/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/123/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/123/events","html_url":"https://github.com/jacquev6/PyGithub/issues/123","id":9489725,"number":123,"title":"Repository.get_contents does not accept ref=branch","user":{"login":"fixxxeruk","id":1074943,"avatar_url":"https://secure.gravatar.com/avatar/de3cd5a76ce1ef2cdcf7060068d693e0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"de3cd5a76ce1ef2cdcf7060068d693e0","url":"https://api.github.com/users/fixxxeruk","html_url":"https://github.com/fixxxeruk","followers_url":"https://api.github.com/users/fixxxeruk/followers","following_url":"https://api.github.com/users/fixxxeruk/following{/other_user}","gists_url":"https://api.github.com/users/fixxxeruk/gists{/gist_id}","starred_url":"https://api.github.com/users/fixxxeruk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fixxxeruk/subscriptions","organizations_url":"https://api.github.com/users/fixxxeruk/orgs","repos_url":"https://api.github.com/users/fixxxeruk/repos","events_url":"https://api.github.com/users/fixxxeruk/events{/privacy}","received_events_url":"https://api.github.com/users/fixxxeruk/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/16","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/16/labels","id":215570,"number":16,"title":"Version 1.10.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":10,"state":"closed","created_at":"2012-11-19T20:02:45Z","updated_at":"2012-12-25T12:25:01Z","due_on":null},"comments":1,"created_at":"2012-12-23T11:59:53Z","updated_at":"2012-12-24T13:26:20Z","closed_at":"2012-12-24T13:26:20Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"As per the documentation:\r\nhttp://developer.github.com/v3/repos/contents/\r\n\r\nThe Get Contents GitHub API accepts an optional parameter `ref` which allows the user to specify the branch. Otherwise this parameter defaults to `master`.\r\n\r\nPlease implement this optional parameter on Repository.get_contents, which currently only accepts a single parameter to specify the path."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/144","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/144/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/144/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/144/events","html_url":"https://github.com/jacquev6/PyGithub/issues/144","id":11746141,"number":144,"title":"Store original JSON response for objects and expose it for document-oriented storage","user":{"login":"ptwobrussell","id":98668,"avatar_url":"https://secure.gravatar.com/avatar/322a50ffdb98591460f05015770b7adb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"322a50ffdb98591460f05015770b7adb","url":"https://api.github.com/users/ptwobrussell","html_url":"https://github.com/ptwobrussell","followers_url":"https://api.github.com/users/ptwobrussell/followers","following_url":"https://api.github.com/users/ptwobrussell/following{/other_user}","gists_url":"https://api.github.com/users/ptwobrussell/gists{/gist_id}","starred_url":"https://api.github.com/users/ptwobrussell/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ptwobrussell/subscriptions","organizations_url":"https://api.github.com/users/ptwobrussell/orgs","repos_url":"https://api.github.com/users/ptwobrussell/repos","events_url":"https://api.github.com/users/ptwobrussell/events{/privacy}","received_events_url":"https://api.github.com/users/ptwobrussell/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/23","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/23/labels","id":282556,"number":23,"title":"Version 1.13.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":6,"state":"closed","created_at":"2013-03-07T08:43:38Z","updated_at":"2013-03-22T17:44:33Z","due_on":null},"comments":1,"created_at":"2013-03-07T04:54:23Z","updated_at":"2013-03-21T20:57:54Z","closed_at":"2013-03-21T20:57:54Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"I'd like to be able to serialize a GithubObject and get back the original JSON that was used to initially construct it for purposes of serializing out to a document oriented store like MongoDB where this representation would be a natural (and highly portable) fit for storage. From looking at how objects are constructed, it seems as though it would be pretty trivial to keep around the JSON and expose it as necessary as opposed to just discarding it.\r\n\r\nPerhaps `__str__` could return the readable JSON representation and `__repr__` could contain what currently happens from `__str__` (the unambiguous object with its address)?\r\n\r\nIf there are concerns over memory, perhaps this could be a configurable option?\r\n\r\nAt any rate, I could help put together the patch but would first like to get your thoughts and whether or not you're open to merging in such a pull request"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/47","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/47/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/47/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/47/events","html_url":"https://github.com/jacquev6/PyGithub/issues/47","id":5152384,"number":47,"title":"Just a small patch to make PyGithub compatible with Python 2.5","user":{"login":"pmuilu","id":691799,"avatar_url":"https://secure.gravatar.com/avatar/3aa27c0add742f542848af3b8a9e980c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3aa27c0add742f542848af3b8a9e980c","url":"https://api.github.com/users/pmuilu","html_url":"https://github.com/pmuilu","followers_url":"https://api.github.com/users/pmuilu/followers","following_url":"https://api.github.com/users/pmuilu/following{/other_user}","gists_url":"https://api.github.com/users/pmuilu/gists{/gist_id}","starred_url":"https://api.github.com/users/pmuilu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pmuilu/subscriptions","organizations_url":"https://api.github.com/users/pmuilu/orgs","repos_url":"https://api.github.com/users/pmuilu/repos","events_url":"https://api.github.com/users/pmuilu/events{/privacy}","received_events_url":"https://api.github.com/users/pmuilu/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":null,"comments":2,"created_at":"2012-06-19T17:58:29Z","updated_at":"2012-06-20T21:06:08Z","closed_at":"2012-06-20T20:08:20Z","pull_request":{"html_url":"https://github.com/jacquev6/PyGithub/pull/47","diff_url":"https://github.com/jacquev6/PyGithub/pull/47.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/47.patch"},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Seems to work otherwise."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/48","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/48/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/48/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/48/events","html_url":"https://github.com/jacquev6/PyGithub/issues/48","id":5177381,"number":48,"title":"data_files install location","user":{"login":"malexw","id":577322,"avatar_url":"https://secure.gravatar.com/avatar/13a30f9924fa2bd918cbb8d06dd8b55a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"13a30f9924fa2bd918cbb8d06dd8b55a","url":"https://api.github.com/users/malexw","html_url":"https://github.com/malexw","followers_url":"https://api.github.com/users/malexw/followers","following_url":"https://api.github.com/users/malexw/following{/other_user}","gists_url":"https://api.github.com/users/malexw/gists{/gist_id}","starred_url":"https://api.github.com/users/malexw/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/malexw/subscriptions","organizations_url":"https://api.github.com/users/malexw/orgs","repos_url":"https://api.github.com/users/malexw/repos","events_url":"https://api.github.com/users/malexw/events{/privacy}","received_events_url":"https://api.github.com/users/malexw/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/7","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/7/labels","id":140183,"number":7,"title":"Version 1.3","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":4,"state":"closed","created_at":"2012-07-03T07:32:39Z","updated_at":"2012-07-13T20:01:15Z","due_on":"2012-07-16T07:00:00Z"},"comments":2,"created_at":"2012-06-20T18:33:44Z","updated_at":"2012-07-13T19:20:49Z","closed_at":"2012-07-13T19:20:49Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Installing on OS X 10.7 via:\n $ pip install PyGithub\n\n(Using the Python 2.7 package from python.org, and not OS X's python2.6 flavour)\n\nGot an error message:\n running install_data\n copying ReadMe.md -> /System/Library/Frameworks/Python.framework/Versions/2.7/\n error: /System/Library/Frameworks/Python.framework/Versions/2.7/ReadMe.md: Permission denied\n\nWhile I can use sudo to make the error message go away, I don't think `/System/Library/Frameworks/Python.framework/Versions/2.7/` is the correct location for the documentation. I don't know much about writing setup.py files, but after looking at gunicorn, flask, and numpy, it doesn't look like any of them use data_files for installing documentation."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/57","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/57/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/57/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/57/events","html_url":"https://github.com/jacquev6/PyGithub/issues/57","id":5783131,"number":57,"title":"Allows connection to GitHub Enterprise installs on local URLs","user":{"login":"engie","id":1247,"avatar_url":"https://secure.gravatar.com/avatar/37a932b3abe212892173784736ed6b12?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"37a932b3abe212892173784736ed6b12","url":"https://api.github.com/users/engie","html_url":"https://github.com/engie","followers_url":"https://api.github.com/users/engie/followers","following_url":"https://api.github.com/users/engie/following{/other_user}","gists_url":"https://api.github.com/users/engie/gists{/gist_id}","starred_url":"https://api.github.com/users/engie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/engie/subscriptions","organizations_url":"https://api.github.com/users/engie/orgs","repos_url":"https://api.github.com/users/engie/repos","events_url":"https://api.github.com/users/engie/events{/privacy}","received_events_url":"https://api.github.com/users/engie/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/8","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/8/labels","id":150933,"number":8,"title":"Version 1.4","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":3,"state":"closed","created_at":"2012-07-24T16:04:28Z","updated_at":"2012-09-11T18:52:13Z","due_on":"2012-08-05T07:00:00Z"},"comments":2,"created_at":"2012-07-23T16:44:06Z","updated_at":"2012-08-04T05:59:15Z","closed_at":"2012-08-04T05:59:15Z","pull_request":{"html_url":"https://github.com/jacquev6/PyGithub/pull/57","diff_url":"https://github.com/jacquev6/PyGithub/pull/57.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/57.patch"},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"This patch allows you to use the module with local (i.e. Enterprise) GitHub installs. Passes the tests here, defaults to connecting to api.github.com."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/62","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/62/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/62/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/62/events","html_url":"https://github.com/jacquev6/PyGithub/issues/62","id":6454054,"number":62,"title":"Add timeout option","user":{"login":"xobb1t","id":344095,"avatar_url":"https://secure.gravatar.com/avatar/ae8a2af3de601885a14bb71240e5d1a6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"ae8a2af3de601885a14bb71240e5d1a6","url":"https://api.github.com/users/xobb1t","html_url":"https://github.com/xobb1t","followers_url":"https://api.github.com/users/xobb1t/followers","following_url":"https://api.github.com/users/xobb1t/following{/other_user}","gists_url":"https://api.github.com/users/xobb1t/gists{/gist_id}","starred_url":"https://api.github.com/users/xobb1t/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/xobb1t/subscriptions","organizations_url":"https://api.github.com/users/xobb1t/orgs","repos_url":"https://api.github.com/users/xobb1t/repos","events_url":"https://api.github.com/users/xobb1t/events{/privacy}","received_events_url":"https://api.github.com/users/xobb1t/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/9","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/9/labels","id":164586,"number":9,"title":"Version 1.5","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":4,"state":"closed","created_at":"2012-08-23T07:44:21Z","updated_at":"2012-09-05T17:56:28Z","due_on":"2012-09-06T07:00:00Z"},"comments":2,"created_at":"2012-08-25T19:42:13Z","updated_at":"2012-09-05T17:23:47Z","closed_at":"2012-09-05T17:23:47Z","pull_request":{"html_url":"https://github.com/jacquev6/PyGithub/pull/62","diff_url":"https://github.com/jacquev6/PyGithub/pull/62.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/62.patch"},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Add support of `timeout` option. Unfortunately drops python < 2.6 support."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/65","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/65/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/65/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/65/events","html_url":"https://github.com/jacquev6/PyGithub/issues/65","id":6641076,"number":65,"title":"GET /repos/:user/:repo/contents/:path","user":{"login":"berndca","id":466654,"avatar_url":"https://secure.gravatar.com/avatar/4a43f97dc0112d95d8d713e2fd2a983b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"4a43f97dc0112d95d8d713e2fd2a983b","url":"https://api.github.com/users/berndca","html_url":"https://github.com/berndca","followers_url":"https://api.github.com/users/berndca/followers","following_url":"https://api.github.com/users/berndca/following{/other_user}","gists_url":"https://api.github.com/users/berndca/gists{/gist_id}","starred_url":"https://api.github.com/users/berndca/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/berndca/subscriptions","organizations_url":"https://api.github.com/users/berndca/orgs","repos_url":"https://api.github.com/users/berndca/repos","events_url":"https://api.github.com/users/berndca/events{/privacy}","received_events_url":"https://api.github.com/users/berndca/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/10","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/10/labels","id":169989,"number":10,"title":"Version 1.6","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":9,"state":"closed","created_at":"2012-09-04T20:12:30Z","updated_at":"2012-09-08T18:00:28Z","due_on":"2012-09-13T07:00:00Z"},"comments":2,"created_at":"2012-09-04T17:42:29Z","updated_at":"2012-09-08T11:06:18Z","closed_at":"2012-09-08T11:06:18Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"I have not been able to figure out how to access the github API request for GET /repos/:user/:repo/contents/[:path] using PyGithub. Perhaps I'm missing something?\n\nPlease advise.\nThanks, Bernd"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/67","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/67/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/67/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/67/events","html_url":"https://github.com/jacquev6/PyGithub/issues/67","id":6653907,"number":67,"title":"Statuses","user":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/10","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/10/labels","id":169989,"number":10,"title":"Version 1.6","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":9,"state":"closed","created_at":"2012-09-04T20:12:30Z","updated_at":"2012-09-08T18:00:28Z","due_on":"2012-09-13T07:00:00Z"},"comments":2,"created_at":"2012-09-05T06:49:54Z","updated_at":"2012-09-08T11:42:27Z","closed_at":"2012-09-08T11:42:27Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Implement APIs described in http://developer.github.com/v3/repos/statuses/"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/102","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/102/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/102/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/102/events","html_url":"https://github.com/jacquev6/PyGithub/issues/102","id":7331214,"number":102,"title":"get_git_ref does not prepend 'refs'","user":{"login":"simon-weber","id":950506,"avatar_url":"https://secure.gravatar.com/avatar/5ac24ef595f7d1cd016bc3de24f78e60?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5ac24ef595f7d1cd016bc3de24f78e60","url":"https://api.github.com/users/simon-weber","html_url":"https://github.com/simon-weber","followers_url":"https://api.github.com/users/simon-weber/followers","following_url":"https://api.github.com/users/simon-weber/following{/other_user}","gists_url":"https://api.github.com/users/simon-weber/gists{/gist_id}","starred_url":"https://api.github.com/users/simon-weber/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/simon-weber/subscriptions","organizations_url":"https://api.github.com/users/simon-weber/orgs","repos_url":"https://api.github.com/users/simon-weber/repos","events_url":"https://api.github.com/users/simon-weber/events{/privacy}","received_events_url":"https://api.github.com/users/simon-weber/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/15","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/15/labels","id":190819,"number":15,"title":"Version 1.8.1","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":3,"state":"closed","created_at":"2012-10-07T11:01:54Z","updated_at":"2012-10-28T09:46:01Z","due_on":null},"comments":2,"created_at":"2012-10-03T19:02:53Z","updated_at":"2012-10-07T11:06:11Z","closed_at":"2012-10-07T11:06:11Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"The docs say get_git_refs performs `/repos/:user/:repo/git/refs/:ref`, but actually performs `/repos/:user/:repo/git/:ref`. For example:\r\n\r\n```\r\n>>> github.Github().get_user(\"jacquev6\").get_repo(\"PyGithub\").get_git_ref('heads/master')\r\n# => 404, but should work\r\n>>> github.Github().get_user(\"jacquev6\").get_repo(\"PyGithub\").get_git_ref('refs/heads/master')\r\n# => works, but should 404\r\n```\r\n\r\n\r\n\r\n`refs/` is prepended to a provided reference in the Github api: http://developer.github.com/v3/git/refs/#get-a-reference."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/124","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/124/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/124/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/124/events","html_url":"https://github.com/jacquev6/PyGithub/issues/124","id":9489813,"number":124,"title":"Fixed Issue #123: Repository.get_contents does not accept ref=branch","user":{"login":"fixxxeruk","id":1074943,"avatar_url":"https://secure.gravatar.com/avatar/de3cd5a76ce1ef2cdcf7060068d693e0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"de3cd5a76ce1ef2cdcf7060068d693e0","url":"https://api.github.com/users/fixxxeruk","html_url":"https://github.com/fixxxeruk","followers_url":"https://api.github.com/users/fixxxeruk/followers","following_url":"https://api.github.com/users/fixxxeruk/following{/other_user}","gists_url":"https://api.github.com/users/fixxxeruk/gists{/gist_id}","starred_url":"https://api.github.com/users/fixxxeruk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fixxxeruk/subscriptions","organizations_url":"https://api.github.com/users/fixxxeruk/orgs","repos_url":"https://api.github.com/users/fixxxeruk/repos","events_url":"https://api.github.com/users/fixxxeruk/events{/privacy}","received_events_url":"https://api.github.com/users/fixxxeruk/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/16","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/16/labels","id":215570,"number":16,"title":"Version 1.10.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":10,"state":"closed","created_at":"2012-11-19T20:02:45Z","updated_at":"2012-12-25T12:25:01Z","due_on":null},"comments":2,"created_at":"2012-12-23T12:15:06Z","updated_at":"2012-12-25T10:53:21Z","closed_at":"2012-12-25T10:53:21Z","pull_request":{"html_url":"https://github.com/jacquev6/PyGithub/pull/124","diff_url":"https://github.com/jacquev6/PyGithub/pull/124.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/124.patch"},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Tested and validated. This change does not break API compatibility."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/129","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/129/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/129/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/129/events","html_url":"https://github.com/jacquev6/PyGithub/issues/129","id":9776615,"number":129,"title":"Add Suppport For the GitHub Hooks PubSubHub","user":{"login":"s0undt3ch","id":300048,"avatar_url":"https://secure.gravatar.com/avatar/49656fcaeab19bd7ad1d51264ea37e7d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"49656fcaeab19bd7ad1d51264ea37e7d","url":"https://api.github.com/users/s0undt3ch","html_url":"https://github.com/s0undt3ch","followers_url":"https://api.github.com/users/s0undt3ch/followers","following_url":"https://api.github.com/users/s0undt3ch/following{/other_user}","gists_url":"https://api.github.com/users/s0undt3ch/gists{/gist_id}","starred_url":"https://api.github.com/users/s0undt3ch/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/s0undt3ch/subscriptions","organizations_url":"https://api.github.com/users/s0undt3ch/orgs","repos_url":"https://api.github.com/users/s0undt3ch/repos","events_url":"https://api.github.com/users/s0undt3ch/events{/privacy}","received_events_url":"https://api.github.com/users/s0undt3ch/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/19","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/19/labels","id":234630,"number":19,"title":"Version 1.11.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":7,"state":"closed","created_at":"2012-12-25T12:26:40Z","updated_at":"2013-02-07T18:18:31Z","due_on":"2013-02-08T08:00:00Z"},"comments":2,"created_at":"2013-01-08T17:49:50Z","updated_at":"2013-02-05T22:48:01Z","closed_at":"2013-02-05T22:48:01Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Add Suppport For the [GitHub Hooks PubSubHub](http://developer.github.com/v3/repos/hooks/#pubsubhubbub)"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/133","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/133/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/133/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/133/events","html_url":"https://github.com/jacquev6/PyGithub/issues/133","id":10360280,"number":133,"title":"Fix failing get_page function","user":{"login":"llimllib","id":7150,"avatar_url":"https://secure.gravatar.com/avatar/aa7c1350d93036592f58f165318044db?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"aa7c1350d93036592f58f165318044db","url":"https://api.github.com/users/llimllib","html_url":"https://github.com/llimllib","followers_url":"https://api.github.com/users/llimllib/followers","following_url":"https://api.github.com/users/llimllib/following{/other_user}","gists_url":"https://api.github.com/users/llimllib/gists{/gist_id}","starred_url":"https://api.github.com/users/llimllib/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/llimllib/subscriptions","organizations_url":"https://api.github.com/users/llimllib/orgs","repos_url":"https://api.github.com/users/llimllib/repos","events_url":"https://api.github.com/users/llimllib/events{/privacy}","received_events_url":"https://api.github.com/users/llimllib/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/19","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/19/labels","id":234630,"number":19,"title":"Version 1.11.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":7,"state":"closed","created_at":"2012-12-25T12:26:40Z","updated_at":"2013-02-07T18:18:31Z","due_on":"2013-02-08T08:00:00Z"},"comments":2,"created_at":"2013-01-27T22:39:17Z","updated_at":"2013-01-29T17:56:14Z","closed_at":"2013-01-29T17:56:14Z","pull_request":{"html_url":"https://github.com/jacquev6/PyGithub/pull/133","diff_url":"https://github.com/jacquev6/PyGithub/pull/133.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/133.patch"},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"* if firstParams was None, PaginatedList was calling dict(None)\r\n which fails with a TypeError. If firstParams is None, just use\r\n an empty tuple, which dict() handles properly"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/24","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/24/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/24/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/24/events","html_url":"https://github.com/jacquev6/PyGithub/issues/24","id":4356743,"number":24,"title":"Improve error messages on broken requests","user":{"login":"roskakori","id":328726,"avatar_url":"https://secure.gravatar.com/avatar/b58d0f1ea06b8d5de5f02c53f747ac03?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b58d0f1ea06b8d5de5f02c53f747ac03","url":"https://api.github.com/users/roskakori","html_url":"https://github.com/roskakori","followers_url":"https://api.github.com/users/roskakori/followers","following_url":"https://api.github.com/users/roskakori/following{/other_user}","gists_url":"https://api.github.com/users/roskakori/gists{/gist_id}","starred_url":"https://api.github.com/users/roskakori/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/roskakori/subscriptions","organizations_url":"https://api.github.com/users/roskakori/orgs","repos_url":"https://api.github.com/users/roskakori/repos","events_url":"https://api.github.com/users/roskakori/events{/privacy}","received_events_url":"https://api.github.com/users/roskakori/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2/labels","id":93547,"number":2,"title":"Version 1.0: coherent public interface","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":19,"state":"closed","created_at":"2012-03-08T12:22:28Z","updated_at":"2012-06-03T19:56:17Z","due_on":"2012-06-04T07:00:00Z"},"comments":3,"created_at":"2012-04-30T20:01:20Z","updated_at":"2012-05-30T19:58:35Z","closed_at":"2012-05-30T19:58:35Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Thanks for PyGithub, it is easy to use and very complete. I just successfully used it to convert Trac tickets to Guthub issues.\r\n\r\nBut I had to learn the hard way that `create_issue()` expectes the milestone as number instead of a title. To track this down, I added the following `print` statement to `Requester.py`:\r\n\r\n```python\r\ndef __statusCheckedRequest( self, verb, url, parameters, input ):\r\n status, headers, output = self.__rawRequest( verb, url, parameters, input )\r\n if status < 200 or status >= 300:\r\n print output # <--- Added by me.\r\n raise UnknownGithubObject() # <--- sadly lacks any error details\r\n return headers, output\r\n```\r\n\r\nAs `output` already contains all the information needed (as JSON dump), it would be helpful if the exception raised here would include this information in the exception message."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/63","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/63/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/63/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/63/events","html_url":"https://github.com/jacquev6/PyGithub/issues/63","id":6583381,"number":63,"title":"PyGithub on Upverter","user":{"login":"malexw","id":577322,"avatar_url":"https://secure.gravatar.com/avatar/13a30f9924fa2bd918cbb8d06dd8b55a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"13a30f9924fa2bd918cbb8d06dd8b55a","url":"https://api.github.com/users/malexw","html_url":"https://github.com/malexw","followers_url":"https://api.github.com/users/malexw/followers","following_url":"https://api.github.com/users/malexw/following{/other_user}","gists_url":"https://api.github.com/users/malexw/gists{/gist_id}","starred_url":"https://api.github.com/users/malexw/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/malexw/subscriptions","organizations_url":"https://api.github.com/users/malexw/orgs","repos_url":"https://api.github.com/users/malexw/repos","events_url":"https://api.github.com/users/malexw/events{/privacy}","received_events_url":"https://api.github.com/users/malexw/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/9","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/9/labels","id":164586,"number":9,"title":"Version 1.5","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":4,"state":"closed","created_at":"2012-08-23T07:44:21Z","updated_at":"2012-09-05T17:56:28Z","due_on":"2012-09-06T07:00:00Z"},"comments":3,"created_at":"2012-08-31T16:36:04Z","updated_at":"2012-09-05T17:11:47Z","closed_at":"2012-09-05T17:11:47Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Hi Vincent, I wanted to let you know that we've started using PyGithub over at Upverter. You can see an example of it in action here: https://upverter.com/JBionics/a07fd2563a253ccf/Programmable-RC-Car-Controller-Arduino-Shield/\n\nUpverter is a web-based schematic capture and PCB layout tool for people who design electronics. Like github, it's free for anyone to use as long as they publish their designs with an open-source license. We let designers attach a github project to an Upverter project, and use PyGithub to pull in some basic stats about the project (including a README file), and show them on the project's main page.\n\nCheers,\nAlex"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/74","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/74/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/74/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/74/events","html_url":"https://github.com/jacquev6/PyGithub/issues/74","id":6751469,"number":74,"title":"Support clearing of issue milestone and assignee","user":{"login":"quixotique","id":1477470,"avatar_url":"https://secure.gravatar.com/avatar/806d200fb8f92bd618cc7063a3b62013?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"806d200fb8f92bd618cc7063a3b62013","url":"https://api.github.com/users/quixotique","html_url":"https://github.com/quixotique","followers_url":"https://api.github.com/users/quixotique/followers","following_url":"https://api.github.com/users/quixotique/following{/other_user}","gists_url":"https://api.github.com/users/quixotique/gists{/gist_id}","starred_url":"https://api.github.com/users/quixotique/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/quixotique/subscriptions","organizations_url":"https://api.github.com/users/quixotique/orgs","repos_url":"https://api.github.com/users/quixotique/repos","events_url":"https://api.github.com/users/quixotique/events{/privacy}","received_events_url":"https://api.github.com/users/quixotique/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/12","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/12/labels","id":172499,"number":12,"title":"Version 1.7","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":7,"state":"closed","created_at":"2012-09-10T04:25:53Z","updated_at":"2012-09-12T19:40:27Z","due_on":"2012-09-14T07:00:00Z"},"comments":3,"created_at":"2012-09-10T00:42:24Z","updated_at":"2012-09-12T02:36:43Z","closed_at":"2012-09-11T18:55:30Z","pull_request":{"html_url":"https://github.com/jacquev6/PyGithub/pull/74","diff_url":"https://github.com/jacquev6/PyGithub/pull/74.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/74.patch"},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"I could find no way to use the PyGithub API to clear an Issue's milestone or assignee. So I created this patch to make Issue.edit() accept None for the milestone and assignee parameters. I have tested it on a real GitHub issue, and it works, but I have not created any test cases."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/112","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/112/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/112/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/112/events","html_url":"https://github.com/jacquev6/PyGithub/issues/112","id":8189836,"number":112,"title":"Allow for using OAuth id and secret to increase rate limit","user":{"login":"mwoodworth","id":606209,"avatar_url":"https://secure.gravatar.com/avatar/fa8bf31f678044f65afb6c4c5a8ea542?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"fa8bf31f678044f65afb6c4c5a8ea542","url":"https://api.github.com/users/mwoodworth","html_url":"https://github.com/mwoodworth","followers_url":"https://api.github.com/users/mwoodworth/followers","following_url":"https://api.github.com/users/mwoodworth/following{/other_user}","gists_url":"https://api.github.com/users/mwoodworth/gists{/gist_id}","starred_url":"https://api.github.com/users/mwoodworth/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mwoodworth/subscriptions","organizations_url":"https://api.github.com/users/mwoodworth/orgs","repos_url":"https://api.github.com/users/mwoodworth/repos","events_url":"https://api.github.com/users/mwoodworth/events{/privacy}","received_events_url":"https://api.github.com/users/mwoodworth/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/14","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/14/labels","id":189891,"number":14,"title":"Version 1.9.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":9,"state":"closed","created_at":"2012-10-05T08:15:01Z","updated_at":"2012-11-19T20:52:01Z","due_on":null},"comments":3,"created_at":"2012-11-07T23:17:54Z","updated_at":"2012-11-19T20:05:26Z","closed_at":"2012-11-19T19:50:50Z","pull_request":{"html_url":"https://github.com/jacquev6/PyGithub/pull/112","diff_url":"https://github.com/jacquev6/PyGithub/pull/112.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/112.patch"},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"API Doc section for the change\r\nhttp://developer.github.com/v3/#rate-limiting"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/139","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/139/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/139/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/139/events","html_url":"https://github.com/jacquev6/PyGithub/issues/139","id":10758585,"number":139,"title":"Typo in GithubObject \"self._completed\" -> \"self.__completed\"?","user":{"login":"ianozsvald","id":273210,"avatar_url":"https://secure.gravatar.com/avatar/3d644406158b4d440111903db1f62622?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3d644406158b4d440111903db1f62622","url":"https://api.github.com/users/ianozsvald","html_url":"https://github.com/ianozsvald","followers_url":"https://api.github.com/users/ianozsvald/followers","following_url":"https://api.github.com/users/ianozsvald/following{/other_user}","gists_url":"https://api.github.com/users/ianozsvald/gists{/gist_id}","starred_url":"https://api.github.com/users/ianozsvald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ianozsvald/subscriptions","organizations_url":"https://api.github.com/users/ianozsvald/orgs","repos_url":"https://api.github.com/users/ianozsvald/repos","events_url":"https://api.github.com/users/ianozsvald/events{/privacy}","received_events_url":"https://api.github.com/users/ianozsvald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/21","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/21/labels","id":262264,"number":21,"title":"Version 1.11.1","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":3,"state":"closed","created_at":"2013-02-07T18:19:05Z","updated_at":"2013-02-09T16:56:36Z","due_on":null},"comments":3,"created_at":"2013-02-07T22:12:31Z","updated_at":"2013-02-08T10:48:28Z","closed_at":"2013-02-08T07:44:02Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"I noticed that calls to a user object (e.g. user.email, user.location etc) caused multiple calls to GitHub. Looking at GithubObject.py I see several references to __completed and one to _completed (single underscore) on line 72. Changing line 72 to use a double underscore removed the repeated calls to Github.\r\n\r\nI tried to run your tests but can't figure out how to do so? I'd have left you a pull request if so. I tried \"python -m unittest discover\" and also just running the files, I'm not familiar with the format you've used. I'm happy to run with logs etc if that's useful (some guidance on how to run the tests would be super helpful too). Thanks, Ian."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/148","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/148/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/148/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/148/events","html_url":"https://github.com/jacquev6/PyGithub/issues/148","id":12097154,"number":148,"title":"Notification API","user":{"login":"pgolm","id":1444194,"avatar_url":"https://secure.gravatar.com/avatar/c6d6b2eb927ed858092c47da9f150372?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"c6d6b2eb927ed858092c47da9f150372","url":"https://api.github.com/users/pgolm","html_url":"https://github.com/pgolm","followers_url":"https://api.github.com/users/pgolm/followers","following_url":"https://api.github.com/users/pgolm/following{/other_user}","gists_url":"https://api.github.com/users/pgolm/gists{/gist_id}","starred_url":"https://api.github.com/users/pgolm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pgolm/subscriptions","organizations_url":"https://api.github.com/users/pgolm/orgs","repos_url":"https://api.github.com/users/pgolm/repos","events_url":"https://api.github.com/users/pgolm/events{/privacy}","received_events_url":"https://api.github.com/users/pgolm/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/23","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/23/labels","id":282556,"number":23,"title":"Version 1.13.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":6,"state":"closed","created_at":"2013-03-07T08:43:38Z","updated_at":"2013-03-22T17:44:33Z","due_on":null},"comments":3,"created_at":"2013-03-16T16:38:35Z","updated_at":"2013-03-19T22:14:44Z","closed_at":"2013-03-19T22:14:44Z","pull_request":{"html_url":"https://github.com/jacquev6/PyGithub/pull/148","diff_url":"https://github.com/jacquev6/PyGithub/pull/148.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/148.patch"},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"implementation of Notification API #108"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/156","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/156/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/156/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/156/events","html_url":"https://github.com/jacquev6/PyGithub/issues/156","id":12867103,"number":156,"title":"renaming files in a gist","user":{"login":"jasonwiener","id":204083,"avatar_url":"https://secure.gravatar.com/avatar/fed498e65aec4199029994d4feab4fb1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"fed498e65aec4199029994d4feab4fb1","url":"https://api.github.com/users/jasonwiener","html_url":"https://github.com/jasonwiener","followers_url":"https://api.github.com/users/jasonwiener/followers","following_url":"https://api.github.com/users/jasonwiener/following{/other_user}","gists_url":"https://api.github.com/users/jasonwiener/gists{/gist_id}","starred_url":"https://api.github.com/users/jasonwiener/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jasonwiener/subscriptions","organizations_url":"https://api.github.com/users/jasonwiener/orgs","repos_url":"https://api.github.com/users/jasonwiener/repos","events_url":"https://api.github.com/users/jasonwiener/events{/privacy}","received_events_url":"https://api.github.com/users/jasonwiener/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/24","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/24/labels","id":298677,"number":24,"title":"Version 1.14.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":3,"state":"closed","created_at":"2013-03-28T19:15:29Z","updated_at":"2013-04-22T21:03:59Z","due_on":null},"comments":3,"created_at":"2013-04-05T22:37:41Z","updated_at":"2013-04-08T19:15:29Z","closed_at":"2013-04-08T19:15:29Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"looking at the InputFileContent class, it doesn't appear to support renaming a file in a gist. am i mistaken?"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/49","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/49/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/49/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/49/events","html_url":"https://github.com/jacquev6/PyGithub/issues/49","id":5191621,"number":49,"title":"Support new Search API","user":{"login":"kukuts","id":1831238,"avatar_url":"https://secure.gravatar.com/avatar/9be6ba907be1740213b69422fdf52b57?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"9be6ba907be1740213b69422fdf52b57","url":"https://api.github.com/users/kukuts","html_url":"https://github.com/kukuts","followers_url":"https://api.github.com/users/kukuts/followers","following_url":"https://api.github.com/users/kukuts/following{/other_user}","gists_url":"https://api.github.com/users/kukuts/gists{/gist_id}","starred_url":"https://api.github.com/users/kukuts/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kukuts/subscriptions","organizations_url":"https://api.github.com/users/kukuts/orgs","repos_url":"https://api.github.com/users/kukuts/repos","events_url":"https://api.github.com/users/kukuts/events{/privacy}","received_events_url":"https://api.github.com/users/kukuts/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/6","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/6/labels","id":136827,"number":6,"title":"Version 1.2","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":4,"state":"closed","created_at":"2012-06-25T19:31:02Z","updated_at":"2012-06-29T18:47:43Z","due_on":"2012-07-01T07:00:00Z"},"comments":4,"created_at":"2012-06-21T12:27:38Z","updated_at":"2012-06-29T18:47:28Z","closed_at":"2012-06-29T18:47:28Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"New API ported from v2 but i have trouble with adopting ask's library for v2 API to support v3 style for searching. \nhttp://developer.github.com/v3/search/\n\nIts not described in the page about parameters that search for repos API supports.\nThey are same as in v2 API, you can look them in ask's library.\nIn v2 was like that https://github.com/api/v2/json/repos/search/testing?start_page=2&language=Python\nIn v3 is https://api.github.com/legacy/repos/search/testing?start_page=2&language=Python"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/50","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/50/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/50/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/50/events","html_url":"https://github.com/jacquev6/PyGithub/issues/50","id":5256315,"number":50,"title":"[Issue] Replace label _identity with name","user":{"login":"philipkimmey","id":211079,"avatar_url":"https://secure.gravatar.com/avatar/decc9323f241b6dd24ec35ef7cabaf75?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"decc9323f241b6dd24ec35ef7cabaf75","url":"https://api.github.com/users/philipkimmey","html_url":"https://github.com/philipkimmey","followers_url":"https://api.github.com/users/philipkimmey/followers","following_url":"https://api.github.com/users/philipkimmey/following{/other_user}","gists_url":"https://api.github.com/users/philipkimmey/gists{/gist_id}","starred_url":"https://api.github.com/users/philipkimmey/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/philipkimmey/subscriptions","organizations_url":"https://api.github.com/users/philipkimmey/orgs","repos_url":"https://api.github.com/users/philipkimmey/repos","events_url":"https://api.github.com/users/philipkimmey/events{/privacy}","received_events_url":"https://api.github.com/users/philipkimmey/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/6","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/6/labels","id":136827,"number":6,"title":"Version 1.2","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":4,"state":"closed","created_at":"2012-06-25T19:31:02Z","updated_at":"2012-06-29T18:47:43Z","due_on":"2012-07-01T07:00:00Z"},"comments":4,"created_at":"2012-06-25T18:45:05Z","updated_at":"2012-06-28T20:10:44Z","closed_at":"2012-06-28T20:10:44Z","pull_request":{"html_url":"https://github.com/jacquev6/PyGithub/pull/50","diff_url":"https://github.com/jacquev6/PyGithub/pull/50.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/50.patch"},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":null},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/60","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/60/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/60/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/60/events","html_url":"https://github.com/jacquev6/PyGithub/issues/60","id":6363719,"number":60,"title":"delete repo","user":{"login":"pmchen","id":671751,"avatar_url":"https://secure.gravatar.com/avatar/a0f9638840c6e593ecddc966e6d01241?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"a0f9638840c6e593ecddc966e6d01241","url":"https://api.github.com/users/pmchen","html_url":"https://github.com/pmchen","followers_url":"https://api.github.com/users/pmchen/followers","following_url":"https://api.github.com/users/pmchen/following{/other_user}","gists_url":"https://api.github.com/users/pmchen/gists{/gist_id}","starred_url":"https://api.github.com/users/pmchen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pmchen/subscriptions","organizations_url":"https://api.github.com/users/pmchen/orgs","repos_url":"https://api.github.com/users/pmchen/repos","events_url":"https://api.github.com/users/pmchen/events{/privacy}","received_events_url":"https://api.github.com/users/pmchen/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/9","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/9/labels","id":164586,"number":9,"title":"Version 1.5","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":4,"state":"closed","created_at":"2012-08-23T07:44:21Z","updated_at":"2012-09-05T17:56:28Z","due_on":"2012-09-06T07:00:00Z"},"comments":4,"created_at":"2012-08-21T21:47:28Z","updated_at":"2012-09-05T17:12:16Z","closed_at":"2012-09-05T17:12:16Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"I'm just starting to to use PyGithub (and python). Thanks for creating such a useful tool. I'm teaching a large class and using PyGithub to programmatically manage hundreds of repos.\n\nIs there a way to delete a repo via PyGithub? github API v3 includes this, but I don't see a Repository.delete() method in PyGithub.\n\nAnother minor (and unrelated) issue: Is there a way to get_team by name (instead of by id)? The only way I can see to find a team by name is by iterating over all teams and looking at team.name.\n\nThanks for your help."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/119","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/119/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/119/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/119/events","html_url":"https://github.com/jacquev6/PyGithub/issues/119","id":9209408,"number":119,"title":"gists new api","user":{"login":"cancerhermit","id":1584557,"avatar_url":"https://secure.gravatar.com/avatar/9be6dcfe3820b88a23001e4758ca6703?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"9be6dcfe3820b88a23001e4758ca6703","url":"https://api.github.com/users/cancerhermit","html_url":"https://github.com/cancerhermit","followers_url":"https://api.github.com/users/cancerhermit/followers","following_url":"https://api.github.com/users/cancerhermit/following{/other_user}","gists_url":"https://api.github.com/users/cancerhermit/gists{/gist_id}","starred_url":"https://api.github.com/users/cancerhermit/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cancerhermit/subscriptions","organizations_url":"https://api.github.com/users/cancerhermit/orgs","repos_url":"https://api.github.com/users/cancerhermit/repos","events_url":"https://api.github.com/users/cancerhermit/events{/privacy}","received_events_url":"https://api.github.com/users/cancerhermit/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/16","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/16/labels","id":215570,"number":16,"title":"Version 1.10.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":10,"state":"closed","created_at":"2012-11-19T20:02:45Z","updated_at":"2012-12-25T12:25:01Z","due_on":null},"comments":4,"created_at":"2012-12-12T08:47:25Z","updated_at":"2012-12-21T20:39:17Z","closed_at":"2012-12-21T20:39:17Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"https://github.com/blog/1276-welcome-to-a-new-gist . git:// not work, new urls is https://"}] + +https +GET +api.github.com +None +/issues?direction=asc&filter=assigned&labels=Requested+by+user&page=2&since=2012-05-28T23%3A00%3A00Z&sort=comments&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4989'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '143568'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 17 May 2013 11:34:11 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="first", ; rel="prev"'), ('etag', '"36fb6631d2714acfd6169b3d779277e5"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 17 May 2013 11:35:13 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/88","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/88/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/88/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/88/events","html_url":"https://github.com/jacquev6/PyGithub/issues/88","id":6912733,"number":88,"title":"Use Python logging to log raw requests","user":{"login":"quixotique","id":1477470,"avatar_url":"https://secure.gravatar.com/avatar/806d200fb8f92bd618cc7063a3b62013?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"806d200fb8f92bd618cc7063a3b62013","url":"https://api.github.com/users/quixotique","html_url":"https://github.com/quixotique","followers_url":"https://api.github.com/users/quixotique/followers","following_url":"https://api.github.com/users/quixotique/following{/other_user}","gists_url":"https://api.github.com/users/quixotique/gists{/gist_id}","starred_url":"https://api.github.com/users/quixotique/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/quixotique/subscriptions","organizations_url":"https://api.github.com/users/quixotique/orgs","repos_url":"https://api.github.com/users/quixotique/repos","events_url":"https://api.github.com/users/quixotique/events{/privacy}","received_events_url":"https://api.github.com/users/quixotique/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/13","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/13/labels","id":174087,"number":13,"title":"Version 1.8.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":6,"state":"closed","created_at":"2012-09-12T19:53:14Z","updated_at":"2012-09-30T18:12:03Z","due_on":"2012-09-30T07:00:00Z"},"comments":5,"created_at":"2012-09-17T08:19:42Z","updated_at":"2012-09-25T20:57:52Z","closed_at":"2012-09-25T20:57:52Z","pull_request":{"html_url":"https://github.com/jacquev6/PyGithub/pull/88","diff_url":"https://github.com/jacquev6/PyGithub/pull/88.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/88.patch"},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"I replaced the commented-out print statement in Requester.py with a call to Python [logging](http://docs.python.org/library/logging.html) so that users have the option to trace low-level api.github.com requests without having to hack their installed PyGithub package: they just put `logging.getLogger('github').setLevel(logging.DEBUG)` in their script.\n\nI don't have any strong opinion as to whether you should pull this change or not. I found it useful while debugging #87, you may decide you don't like it; no problem."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/131","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/131/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/131/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/131/events","html_url":"https://github.com/jacquev6/PyGithub/issues/131","id":9948505,"number":131,"title":"Fix PullRequestPart when using get_pulls() and the head user is an Organization","user":{"login":"sbesson","id":1355463,"avatar_url":"https://secure.gravatar.com/avatar/8ea0fde1295027db9d37e419ac10cbf4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8ea0fde1295027db9d37e419ac10cbf4","url":"https://api.github.com/users/sbesson","html_url":"https://github.com/sbesson","followers_url":"https://api.github.com/users/sbesson/followers","following_url":"https://api.github.com/users/sbesson/following{/other_user}","gists_url":"https://api.github.com/users/sbesson/gists{/gist_id}","starred_url":"https://api.github.com/users/sbesson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sbesson/subscriptions","organizations_url":"https://api.github.com/users/sbesson/orgs","repos_url":"https://api.github.com/users/sbesson/repos","events_url":"https://api.github.com/users/sbesson/events{/privacy}","received_events_url":"https://api.github.com/users/sbesson/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/19","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/19/labels","id":234630,"number":19,"title":"Version 1.11.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":7,"state":"closed","created_at":"2012-12-25T12:26:40Z","updated_at":"2013-02-07T18:18:31Z","due_on":"2013-02-08T08:00:00Z"},"comments":5,"created_at":"2013-01-14T16:46:39Z","updated_at":"2013-02-04T09:57:31Z","closed_at":"2013-02-03T17:33:11Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Error can be reproduced with the following example:\r\n```\r\nimport github\r\nrepo = github.Github().get_user(\"openmicroscopy\").get_repo(\"ome-documentation\")\r\n\r\nassert repo.get_pull(204).head.user.login == 'imcf'\r\n\r\nfor pr in list(repo.get_pulls('closed')):\r\n\tif pr.number == 204:\r\n\t\tassert pr.head.user is None\r\n```\r\n\r\n/cc @joshmoore"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/142","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/142/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/142/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/142/events","html_url":"https://github.com/jacquev6/PyGithub/issues/142","id":11503771,"number":142,"title":"Bug with Python 3?","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":null,"comments":5,"created_at":"2013-02-28T15:00:18Z","updated_at":"2013-03-03T19:08:21Z","closed_at":"2013-03-03T17:54:48Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Hi! \r\nI'm currently in the process of switching a program to python 3.2. I encounter the following problem: `TypeError: can't use a string pattern on a bytes-like object`\r\n\r\n```\r\nimport github\r\ngh_instance = github.Github('')\r\nuser = gh_instance.get_user()\r\nuser.name\r\n---------------------------------------------------------------------------\r\nTypeError Traceback (most recent call last)\r\n in ()\r\n----> 1 user.name\r\n\r\n/usr/local/lib/python3.2/dist-packages/github/AuthenticatedUser.py in name(self)\r\n 166 :type: string\r\n 167 \"\"\"\r\n--> 168 self._completeIfNotSet(self._name)\r\n 169 return self._NoneIfNotSet(self._name)\r\n 170 \r\n\r\n/usr/local/lib/python3.2/dist-packages/github/GithubObject.py in _completeIfNotSet(self, value)\r\n 61 def _completeIfNotSet(self, value):\r\n 62 if not self.__completed and value is NotSet:\r\n---> 63 self.__complete()\r\n 64 \r\n 65 def __complete(self):\r\n\r\n/usr/local/lib/python3.2/dist-packages/github/GithubObject.py in __complete(self)\r\n 68 self._url,\r\n 69 None,\r\n---> 70 None\r\n 71 )\r\n 72 self._useAttributes(data)\r\n\r\n/usr/local/lib/python3.2/dist-packages/github/Requester.py in requestJsonAndCheck(self, verb, url, parameters, input)\r\n 77 \r\n 78 def requestJsonAndCheck(self, verb, url, parameters, input):\r\n---> 79 return self.__check(*self.requestJson(verb, url, parameters, input))\r\n 80 \r\n 81 def requestMultipartAndCheck(self, verb, url, parameters, input):\r\n\r\n/usr/local/lib/python3.2/dist-packages/github/Requester.py in __check(self, status, responseHeaders, output)\r\n 83 \r\n 84 def __check(self, status, responseHeaders, output):\r\n---> 85 output = self.__structuredFromJson(output)\r\n 86 if status >= 400:\r\n 87 raise GithubException.GithubException(status, output)\r\n\r\n/usr/local/lib/python3.2/dist-packages/github/Requester.py in __structuredFromJson(self, data)\r\n 92 return None\r\n 93 else:\r\n---> 94 return json.loads(data)\r\n 95 \r\n 96 def requestJson(self, verb, url, parameters, input):\r\n\r\n/usr/lib/python3.2/json/__init__.py in loads(s, encoding, cls, object_hook, parse_float, parse_int, parse_constant, object_pairs_hook, **kw)\r\n 307 parse_int is None and parse_float is None and\r\n 308 parse_constant is None and object_pairs_hook is None and not kw):\r\n--> 309 return _default_decoder.decode(s)\r\n 310 if cls is None:\r\n 311 cls = JSONDecoder\r\n\r\n/usr/lib/python3.2/json/decoder.py in decode(self, s, _w)\r\n 351 \r\n 352 \"\"\"\r\n--> 353 obj, end = self.raw_decode(s, idx=_w(s, 0).end())\r\n 354 end = _w(s, end).end()\r\n 355 if end != len(s):\r\n\r\nTypeError: can't use a string pattern on a bytes-like object\r\n```\r\nIt's `PyGithub-1.12.1` installed via `pip-3.2` and python `'3.2.3 (default, Oct 19 2012, 19:53:57) \\n[GCC 4.7.2]'`"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/140","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/140/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/140/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/140/events","html_url":"https://github.com/jacquev6/PyGithub/issues/140","id":10922412,"number":140,"title":"Repository.get_contents does not return directory information","user":{"login":"ksookocheff-va","id":2529590,"avatar_url":"https://secure.gravatar.com/avatar/ae7eed65e46234c210912a1e474f2f1c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"ae7eed65e46234c210912a1e474f2f1c","url":"https://api.github.com/users/ksookocheff-va","html_url":"https://github.com/ksookocheff-va","followers_url":"https://api.github.com/users/ksookocheff-va/followers","following_url":"https://api.github.com/users/ksookocheff-va/following{/other_user}","gists_url":"https://api.github.com/users/ksookocheff-va/gists{/gist_id}","starred_url":"https://api.github.com/users/ksookocheff-va/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ksookocheff-va/subscriptions","organizations_url":"https://api.github.com/users/ksookocheff-va/orgs","repos_url":"https://api.github.com/users/ksookocheff-va/repos","events_url":"https://api.github.com/users/ksookocheff-va/events{/privacy}","received_events_url":"https://api.github.com/users/ksookocheff-va/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/22","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/22/labels","id":266004,"number":22,"title":"Version 1.12.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":2,"state":"closed","created_at":"2013-02-13T07:10:18Z","updated_at":"2013-02-20T18:45:16Z","due_on":null},"comments":6,"created_at":"2013-02-12T19:53:26Z","updated_at":"2013-02-16T22:45:00Z","closed_at":"2013-02-16T18:14:01Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"The GitHub API returns a list of all files in a directory when you use Get Contents on a directory.\r\n\r\nexample:\r\nhttps://api.github.com/repos/twitter/bootstrap/contents/js/?ref=d28343dc3ad53a411ae3685e7d6a7866c8c22d6b\r\n\r\nCurrently PyGithub only returns None when using this API to query a directory."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/145","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/145/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/145/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/145/events","html_url":"https://github.com/jacquev6/PyGithub/issues/145","id":11844658,"number":145,"title":"Configure default requests with per_page=100","user":{"login":"ptwobrussell","id":98668,"avatar_url":"https://secure.gravatar.com/avatar/322a50ffdb98591460f05015770b7adb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"322a50ffdb98591460f05015770b7adb","url":"https://api.github.com/users/ptwobrussell","html_url":"https://github.com/ptwobrussell","followers_url":"https://api.github.com/users/ptwobrussell/followers","following_url":"https://api.github.com/users/ptwobrussell/following{/other_user}","gists_url":"https://api.github.com/users/ptwobrussell/gists{/gist_id}","starred_url":"https://api.github.com/users/ptwobrussell/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ptwobrussell/subscriptions","organizations_url":"https://api.github.com/users/ptwobrussell/orgs","repos_url":"https://api.github.com/users/ptwobrussell/repos","events_url":"https://api.github.com/users/ptwobrussell/events{/privacy}","received_events_url":"https://api.github.com/users/ptwobrussell/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/23","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/23/labels","id":282556,"number":23,"title":"Version 1.13.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":6,"state":"closed","created_at":"2013-03-07T08:43:38Z","updated_at":"2013-03-22T17:44:33Z","due_on":null},"comments":6,"created_at":"2013-03-09T21:47:07Z","updated_at":"2013-03-21T20:47:58Z","closed_at":"2013-03-21T20:47:58Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Per http://developer.github.com/v3/#pagination, the max items that can possibly be requested is 100 as opposed to the default of 30. From what I can tell, the default is used in all requests and there's no way to override it without modifying the source. Hence, about 1/3 of the available data is being returned on lots of requests\r\n\r\nIs there a reason not to go ahead and add a default per_page=100 to all API requests? Best case, it results in faster access to data, and worst case, it has no effect. For my particular uses, I'm making lots of requests, and a speedup of ~3.3x would be a big help.\r\n\r\nThoughts?"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/153","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/153/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/153/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/153/events","html_url":"https://github.com/jacquev6/PyGithub/issues/153","id":12566144,"number":153,"title":"Error \"500 None\" in python3","user":{"login":"sebastianstigler","id":772197,"avatar_url":"https://secure.gravatar.com/avatar/c3249014be386ebc7e509c25260c8a8b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"c3249014be386ebc7e509c25260c8a8b","url":"https://api.github.com/users/sebastianstigler","html_url":"https://github.com/sebastianstigler","followers_url":"https://api.github.com/users/sebastianstigler/followers","following_url":"https://api.github.com/users/sebastianstigler/following{/other_user}","gists_url":"https://api.github.com/users/sebastianstigler/gists{/gist_id}","starred_url":"https://api.github.com/users/sebastianstigler/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sebastianstigler/subscriptions","organizations_url":"https://api.github.com/users/sebastianstigler/orgs","repos_url":"https://api.github.com/users/sebastianstigler/repos","events_url":"https://api.github.com/users/sebastianstigler/events{/privacy}","received_events_url":"https://api.github.com/users/sebastianstigler/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":null,"comments":6,"created_at":"2013-03-28T14:17:05Z","updated_at":"2013-03-28T19:33:19Z","closed_at":"2013-03-28T19:12:42Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Hi, \r\nIm using PyGithub (1.13.0, installed with pip and pip-3.2) on Ubuntu 12.04 with python version 2.7.3 (there it works just fine) an version 3.2.3 where i get some issues\r\n\r\nI posted the testcase and the testouput for the run with python3 here:\thttps://gist.github.com/8efb393ddaefc614f225\r\n\r\nFYI: I ran the testsuite too(`python3 -m github.tests`). The result was \r\n \r\n Ran 319 tests in 1.630s\r\n\r\n OK\r\n\r\nCheers,\r\nSebastian"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/59","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/59/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/59/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/59/events","html_url":"https://github.com/jacquev6/PyGithub/issues/59","id":6353712,"number":59,"title":"No Comments returned for PullRequest","user":{"login":"nixoz2k7","id":1027413,"avatar_url":"https://secure.gravatar.com/avatar/2a16046c75f59710161ea486d1f5881d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2a16046c75f59710161ea486d1f5881d","url":"https://api.github.com/users/nixoz2k7","html_url":"https://github.com/nixoz2k7","followers_url":"https://api.github.com/users/nixoz2k7/followers","following_url":"https://api.github.com/users/nixoz2k7/following{/other_user}","gists_url":"https://api.github.com/users/nixoz2k7/gists{/gist_id}","starred_url":"https://api.github.com/users/nixoz2k7/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nixoz2k7/subscriptions","organizations_url":"https://api.github.com/users/nixoz2k7/orgs","repos_url":"https://api.github.com/users/nixoz2k7/repos","events_url":"https://api.github.com/users/nixoz2k7/events{/privacy}","received_events_url":"https://api.github.com/users/nixoz2k7/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/10","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/10/labels","id":169989,"number":10,"title":"Version 1.6","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":9,"state":"closed","created_at":"2012-09-04T20:12:30Z","updated_at":"2012-09-08T18:00:28Z","due_on":"2012-09-13T07:00:00Z"},"comments":7,"created_at":"2012-08-21T15:33:36Z","updated_at":"2012-09-08T14:53:08Z","closed_at":"2012-09-08T13:20:03Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Hello, here is the problem.\nNo Comments returned. But comments count showing proper value.\n\np = z.pulls[1]\np\nOUTPUT: \nOUTPUT: u'\\u041d\\u0435 \\u043f\\u0440\\u0438\\u043d\\u0438\\u043c\\u0430\\u0442\\u044c =)'\np.comments\nOUTPUT: 1\np.get_comments()\nOUTPUT: \nlist(p.get_comments())\nOUTPUT: []\n\nAny ideas ?\n"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/121","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/121/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/121/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/121/events","html_url":"https://github.com/jacquev6/PyGithub/issues/121","id":9323084,"number":121,"title":"Update AuthenticatedUser.get_repo to accept a full repo path","user":{"login":"lwc","id":336402,"avatar_url":"https://secure.gravatar.com/avatar/79df912986253edb50f9b077acd5acf9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"79df912986253edb50f9b077acd5acf9","url":"https://api.github.com/users/lwc","html_url":"https://github.com/lwc","followers_url":"https://api.github.com/users/lwc/followers","following_url":"https://api.github.com/users/lwc/following{/other_user}","gists_url":"https://api.github.com/users/lwc/gists{/gist_id}","starred_url":"https://api.github.com/users/lwc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lwc/subscriptions","organizations_url":"https://api.github.com/users/lwc/orgs","repos_url":"https://api.github.com/users/lwc/repos","events_url":"https://api.github.com/users/lwc/events{/privacy}","received_events_url":"https://api.github.com/users/lwc/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/16","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/16/labels","id":215570,"number":16,"title":"Version 1.10.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":10,"state":"closed","created_at":"2012-11-19T20:02:45Z","updated_at":"2012-12-25T12:25:01Z","due_on":null},"comments":8,"created_at":"2012-12-17T03:02:50Z","updated_at":"2012-12-22T02:00:55Z","closed_at":"2012-12-21T19:42:09Z","pull_request":{"html_url":"https://github.com/jacquev6/PyGithub/pull/121","diff_url":"https://github.com/jacquev6/PyGithub/pull/121.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/121.patch"},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"### Why?\r\n- For projects I dont own, but I am a collaborator, or for directly accessing organisation repos without needing to traverse user.get_orgs.\r\n\r\n### Example\r\n```python\r\nuser.get_repo(\"my_repo\") # existing behaviour still works\r\nuser.get_repo(\"my_org/repo\") # this is now possible\r\n```\r\n\r\n\r\nThanks,\r\nLuke Cawood"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/134","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/134/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/134/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/134/events","html_url":"https://github.com/jacquev6/PyGithub/issues/134","id":10379143,"number":134,"title":"Can't verify authorizations of token-authorized user","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/19","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/19/labels","id":234630,"number":19,"title":"Version 1.11.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":7,"state":"closed","created_at":"2012-12-25T12:26:40Z","updated_at":"2013-02-07T18:18:31Z","due_on":"2013-02-08T08:00:00Z"},"comments":9,"created_at":"2013-01-28T15:33:19Z","updated_at":"2013-02-06T10:54:50Z","closed_at":"2013-02-05T23:07:06Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Hi!\r\nI think I've found a bug. I successfully created an API authorization with some scopes. In the program I want to use this autorization in, I'm trying to verify the correct scopes before proceeding, but this does not work as expected. From iPython:\r\n\r\n``` python\r\nfrom github import Github\r\nuser = Github(some_token).get_user()\r\nauths=user.get_authorizations()\r\nauths\r\nOut[5]: \r\nfor a in auths:\r\n print a.note\r\n---------------------------------------------------------------------------\r\nGithubException Traceback (most recent call last)\r\n in ()\r\n----> 1 for a in auths:\r\n 2 print a.note\r\n\r\n/usr/local/lib/python2.7/dist-packages/github/PaginatedList.pyc in __iter__(self)\r\n 33 yield element\r\n 34 while self._couldGrow():\r\n---> 35 newElements = self.__grow()\r\n 36 for element in newElements:\r\n 37 yield element\r\n\r\n/usr/local/lib/python2.7/dist-packages/github/PaginatedList.pyc in __grow(self)\r\n 45 \r\n 46 def __grow(self):\r\n---> 47 newElements = self._fetchNextPage()\r\n 48 self.__elements += newElements\r\n 49 return newElements\r\n\r\n/usr/local/lib/python2.7/dist-packages/github/PaginatedList.pyc in _fetchNextPage(self)\r\n 83 \r\n 84 def _fetchNextPage(self):\r\n---> 85 headers, data = self.__requester.requestAndCheck(\"GET\", self.__nextUrl, self.__nextParams, None)\r\n 86 \r\n 87 links = self.__parseLinkHeader(headers)\r\n\r\n/usr/local/lib/python2.7/dist-packages/github/Requester.pyc in requestAndCheck(self, verb, url, parameters, input)\r\n 78 output = self.__structuredFromJson(output)\r\n 79 if status >= 400:\r\n---> 80 raise GithubException.GithubException(status, output)\r\n 81 return headers, output\r\n 82 \r\n\r\nGithubException: 404 {u'message': u'Not Found'}\r\n```\r\n\r\nis this a bug or am I doing something wrong/impossible. \r\n\r\nbtw, when creating a github instance with an authorization token, this does not error out when the token is invalid, i.e. I can say `Github(\"mySillyString\")` without error message - is this by design?"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/54","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/54/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/54/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/54/events","html_url":"https://github.com/jacquev6/PyGithub/issues/54","id":5387373,"number":54,"title":"GitAuthor.date should return datetime, not string","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/7","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/7/labels","id":140183,"number":7,"title":"Version 1.3","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":4,"state":"closed","created_at":"2012-07-03T07:32:39Z","updated_at":"2012-07-13T20:01:15Z","due_on":"2012-07-16T07:00:00Z"},"comments":12,"created_at":"2012-07-02T14:38:01Z","updated_at":"2012-07-18T09:21:16Z","closed_at":"2012-07-13T19:21:04Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Hi!\n\nIt's great that all date-like objects are datetime.datetime now, makes working with it so easy. However, I think you missed GitAuthor.date, it would be great if this would also return datetimes.\n\nBackground: To get the dates of tags, I did `MyTag.commit.commit.committer.date`, and expected this to return a datetime object (like all the others do), but it returns a string."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/149","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/149/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/149/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/149/events","html_url":"https://github.com/jacquev6/PyGithub/issues/149","id":12179668,"number":149,"title":"Test failures with python3","user":{"login":"bkabrda","id":1050061,"avatar_url":"https://secure.gravatar.com/avatar/60d06f7560160f3ce7aa3877596da63f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"60d06f7560160f3ce7aa3877596da63f","url":"https://api.github.com/users/bkabrda","html_url":"https://github.com/bkabrda","followers_url":"https://api.github.com/users/bkabrda/followers","following_url":"https://api.github.com/users/bkabrda/following{/other_user}","gists_url":"https://api.github.com/users/bkabrda/gists{/gist_id}","starred_url":"https://api.github.com/users/bkabrda/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bkabrda/subscriptions","organizations_url":"https://api.github.com/users/bkabrda/orgs","repos_url":"https://api.github.com/users/bkabrda/repos","events_url":"https://api.github.com/users/bkabrda/events{/privacy}","received_events_url":"https://api.github.com/users/bkabrda/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/23","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/23/labels","id":282556,"number":23,"title":"Version 1.13.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":6,"state":"closed","created_at":"2013-03-07T08:43:38Z","updated_at":"2013-03-22T17:44:33Z","due_on":null},"comments":12,"created_at":"2013-03-19T13:25:29Z","updated_at":"2013-03-22T07:04:32Z","closed_at":"2013-03-21T23:34:58Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Hi,\r\nI'm experiencing dozens of failures with Python 3. Is this expected or is something wrong on my side? It seems that some of the failures are connected with random order of dict items in str(headers) in ReplayingConnection.request, but there are also other."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/87","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/87/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/87/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/87/events","html_url":"https://github.com/jacquev6/PyGithub/issues/87","id":6911794,"number":87,"title":"Repository.create_issue() fails on percent '%' character","user":{"login":"quixotique","id":1477470,"avatar_url":"https://secure.gravatar.com/avatar/806d200fb8f92bd618cc7063a3b62013?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"806d200fb8f92bd618cc7063a3b62013","url":"https://api.github.com/users/quixotique","html_url":"https://github.com/quixotique","followers_url":"https://api.github.com/users/quixotique/followers","following_url":"https://api.github.com/users/quixotique/following{/other_user}","gists_url":"https://api.github.com/users/quixotique/gists{/gist_id}","starred_url":"https://api.github.com/users/quixotique/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/quixotique/subscriptions","organizations_url":"https://api.github.com/users/quixotique/orgs","repos_url":"https://api.github.com/users/quixotique/repos","events_url":"https://api.github.com/users/quixotique/events{/privacy}","received_events_url":"https://api.github.com/users/quixotique/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/13","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/13/labels","id":174087,"number":13,"title":"Version 1.8.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":6,"state":"closed","created_at":"2012-09-12T19:53:14Z","updated_at":"2012-09-30T18:12:03Z","due_on":"2012-09-30T07:00:00Z"},"comments":13,"created_at":"2012-09-17T07:17:56Z","updated_at":"2012-10-05T15:10:36Z","closed_at":"2012-09-25T19:56:32Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"If the **title** or **body** parameter of `Repository.create_issue()` contains a percent character `%` then it provokes a 500 error from `api.github.com`.\n\nCuriously, if the percent character is followed by two hex digits, eg `%2F` then the request succeeds. In this case, the `%2F` is not url-decoded: it remains as `%2F` in the body text of the issue, not as a slash `/`.\n\nThis looks like it could be GitHub's issue: eg, their API is enforcing urlencoded input but is not actually decoding it.\n\nWhatever the case, it is impossible to create an issue using PyGithub that contains text like “works 25% of the time”."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/143","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/143/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/143/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/143/events","html_url":"https://github.com/jacquev6/PyGithub/issues/143","id":11731917,"number":143,"title":"Version 1.12.2 does not work with Python 3(.3) because of 2to3 issues","user":{"login":"ptwobrussell","id":98668,"avatar_url":"https://secure.gravatar.com/avatar/322a50ffdb98591460f05015770b7adb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"322a50ffdb98591460f05015770b7adb","url":"https://api.github.com/users/ptwobrussell","html_url":"https://github.com/ptwobrussell","followers_url":"https://api.github.com/users/ptwobrussell/followers","following_url":"https://api.github.com/users/ptwobrussell/following{/other_user}","gists_url":"https://api.github.com/users/ptwobrussell/gists{/gist_id}","starred_url":"https://api.github.com/users/ptwobrussell/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ptwobrussell/subscriptions","organizations_url":"https://api.github.com/users/ptwobrussell/orgs","repos_url":"https://api.github.com/users/ptwobrussell/repos","events_url":"https://api.github.com/users/ptwobrussell/events{/privacy}","received_events_url":"https://api.github.com/users/ptwobrussell/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/23","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/23/labels","id":282556,"number":23,"title":"Version 1.13.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":6,"state":"closed","created_at":"2013-03-07T08:43:38Z","updated_at":"2013-03-22T17:44:33Z","due_on":null},"comments":13,"created_at":"2013-03-06T20:48:02Z","updated_at":"2013-03-21T21:00:47Z","closed_at":"2013-03-21T21:00:47Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"In trying to pip install PyGithub with Python 3.3 just now, I see the following in the console:\r\n\r\nDownloading/unpacking PyGithub\r\n Downloading PyGithub-1.12.2.tar.gz (1.6MB): 1.6MB downloaded\r\n Running setup.py egg_info for package PyGithub\r\n \r\nInstalling collected packages: PyGithub\r\n Running setup.py install for PyGithub\r\n Fixing build/lib/github/__init__.py build/lib/github/AuthenticatedUser.py \r\n\r\n...\r\n\r\n File \"/Users/matthew/virtual-environments/mtsw2e/lib/python3.3/site-packages/github/AuthenticatedUser.py\", line 16\r\n from . import github.GithubObject\r\n ^\r\n SyntaxError: invalid syntax\r\n\r\n .... more of the same errors ...\r\n\r\nIn looking at the source on GitHub for this version (such as https://github.com/jacquev6/PyGithub/blob/v1.12.2/github/UserKey.py), it appears that you are just doing straight imports as \"import github.X\" which is causing 2to3 to produce invalid imports when it rewrites."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/80","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/80/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/80/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/80/events","html_url":"https://github.com/jacquev6/PyGithub/issues/80","id":6807542,"number":80,"title":"Assertion Failure ??","user":{"login":"mnsanghvi","id":1726664,"avatar_url":"https://secure.gravatar.com/avatar/e409b9dc39edbc7c61c36de28d16cc84?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e409b9dc39edbc7c61c36de28d16cc84","url":"https://api.github.com/users/mnsanghvi","html_url":"https://github.com/mnsanghvi","followers_url":"https://api.github.com/users/mnsanghvi/followers","following_url":"https://api.github.com/users/mnsanghvi/following{/other_user}","gists_url":"https://api.github.com/users/mnsanghvi/gists{/gist_id}","starred_url":"https://api.github.com/users/mnsanghvi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mnsanghvi/subscriptions","organizations_url":"https://api.github.com/users/mnsanghvi/orgs","repos_url":"https://api.github.com/users/mnsanghvi/repos","events_url":"https://api.github.com/users/mnsanghvi/events{/privacy}","received_events_url":"https://api.github.com/users/mnsanghvi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/12","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/12/labels","id":172499,"number":12,"title":"Version 1.7","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":7,"state":"closed","created_at":"2012-09-10T04:25:53Z","updated_at":"2012-09-12T19:40:27Z","due_on":"2012-09-14T07:00:00Z"},"comments":15,"created_at":"2012-09-12T02:07:44Z","updated_at":"2012-09-12T20:48:51Z","closed_at":"2012-09-12T19:28:02Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"``` python\n>>> from github import Github\n>>> gh = Github( \"login\", \"password\", \"base_url\")\n>>> for repo in gh.get_user().get_repos():\n... print repo.name\n...\nrepo1\nrepo2\nmy-person-linux-kernel-repo\nthe-secret-macosx-repo\n\n>>> for repo in gh.get_organization( org_name ).get_repos():\n... print repo.name\n...\n \nTraceback (most recent call last):\n File \"\", line 1, in \n File \"build/bdist.macosx-10.7-intel/egg/github/Organization.py\", line 311, in get_repos\n File \"build/bdist.macosx-10.7-intel/egg/github/Requester.py\", line 60, in requestAndCheck\n File \"build/bdist.macosx-10.7-intel/egg/github/Requester.py\", line 76, in requestRaw\nAssertionError\n\n```\n\nIs this because of my lack of knowledge about python, or is there something else going on here ? \n\nWhat I would like to do is be able to get a list of the hooks in all the repos in an organization and also go through that list of repos in an organization and be able to create hooks. \n\n\n"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/77","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/77/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/77/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/77/events","html_url":"https://github.com/jacquev6/PyGithub/issues/77","id":6780606,"number":77,"title":"No ability to fetch specific page with search api","user":{"login":"kukuts","id":1831238,"avatar_url":"https://secure.gravatar.com/avatar/9be6ba907be1740213b69422fdf52b57?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"9be6ba907be1740213b69422fdf52b57","url":"https://api.github.com/users/kukuts","html_url":"https://github.com/kukuts","followers_url":"https://api.github.com/users/kukuts/followers","following_url":"https://api.github.com/users/kukuts/following{/other_user}","gists_url":"https://api.github.com/users/kukuts/gists{/gist_id}","starred_url":"https://api.github.com/users/kukuts/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kukuts/subscriptions","organizations_url":"https://api.github.com/users/kukuts/orgs","repos_url":"https://api.github.com/users/kukuts/repos","events_url":"https://api.github.com/users/kukuts/events{/privacy}","received_events_url":"https://api.github.com/users/kukuts/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/12","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/12/labels","id":172499,"number":12,"title":"Version 1.7","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":7,"state":"closed","created_at":"2012-09-10T04:25:53Z","updated_at":"2012-09-12T19:40:27Z","due_on":"2012-09-14T07:00:00Z"},"comments":16,"created_at":"2012-09-11T03:44:18Z","updated_at":"2012-09-12T19:24:37Z","closed_at":"2012-09-12T19:24:37Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"legacy_search_repos - keyword and language but no start_page parameter\nHow to get eg 3rd page right?"}] + diff --git a/lib/github/tests/ReplayData/AuthenticatedUser.testGetKeys.txt b/lib/github/tests/ReplayData/AuthenticatedUser.testGetKeys.txt new file mode 100644 index 0000000000..bd01f73842 --- /dev/null +++ b/lib/github/tests/ReplayData/AuthenticatedUser.testGetKeys.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/user/keys +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4963'), ('content-length', '1968'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"753b62ed1eedc0d39ebd312719104dd1"'), ('date', 'Sat, 26 May 2012 20:18:14 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/user/keys/688586","key":"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC262QAZ3rvJ7KySFEHUQYGfntylusL03x/ULKdVaSltc3Z2xvWm4zQSLHrWrdUbRN9z9kMpHWZZ2G+pvUPcY/qijbqtwg9FwBHNZoviq65LujKyQeegFXQKhGGaesDeKKC+jTXbg2NJY6+u5HLe4Je8q45VVHyAfltcuSE2QoCim50toyGUGWhcIDz/2mQYpy1wtkehQA6TeC55UE00TSU06E9glnqVi8hjDlsA7DABqyctG/sjP79OwUMBppiXYX2B0RJMtRHZ+5chsHx8oqavux1oG/tdTw9ZSAfKUHfDrN97x9PB38F3j8s60S2udRwLEYuErlF1JizTF4XOZhD","verified":true,"title":"vincent@home","id":688586},{"url":"https://api.github.com/user/keys/688598","key":"ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA3CG7CI2EKMS6xeHgj1lC9tkjDJRotG9ZB7E/YbMy0l15I+ReiM5cQvYhivK2myJh7uiMBPa/VjowhZb7DvitZF8aUa99zHCygKDvN/XBl2nMEY8A01BmG6/JGlP1fgU1HdbULn1E6j0a+mYIFlpDzOFKTJqR25OzngOFC4VYiPVnoyH+uPZWWeOMPgdiJxAEWKs267OjXeikYfYE2xQN9M3a1EHitkwWOeVNKIqDTxoAU8f+Ifl4Cchq4mF56pWETSsj4hQ9YhXtzI8Grun0ZoYZM/cLPLo5rSi++FAJNU2T9yc/0G75DKEYH9UroLSQBua7KF+ixrIEtD6hI4gxDQ==","verified":true,"title":"vincent@gandi","id":688598},{"url":"https://api.github.com/user/keys/2403448","key":"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDK+jbASXi+PhE7GpBuKEH0qC+02J8L20A9CscleT5GUXKpZSbvxmsU0XLz95kYIBVUfrmTdn3PBn6FMK2OTWpxF9gt9DKclidkv2xfA1RkqnNVpMvZbzBMDmJcWo/lae+arQVJ26O1pbZjPH56c0cYvhblsoZnI1kCFatiJ3MOUeD2zCDylsfQ8zgLKA5yj0HRC3n5cPe9nIVWXnJQ1two4GHmxE7zue+hikYB7PQvaldGKTmHX04ODyZpyFOd86cvjiftN3G39POr2vh52jBwj4oLAiF89SC3QxQes8+zF00jOmnFUlONup0nLvJg4t/ij0M2kr5cqca7pMP+QfZp","verified":true,"title":"vincent@aws","id":2403448},{"url":"https://api.github.com/user/keys/2427679","key":"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDNQS4cnMOsGKJXBZ7DQ+6dzAHXwNYjw9W5aoonjr4pK7C9xvRPqA7QyQHub8fiYD6uj7OM8FLQgoMH1ewQULuQdH1JPkzjxPw5UpFn8eQaKOVlBkfGCiNaUOTejt5gxMrNZfPJmh2PnhsU+WXAyNNARor8CDnAmdgzHmaKKtMnRpVUJeIqKmgXhjx9lON5dZFyQGY9KIiR5gA/GWE9dFRHULoc+0gLEAR7AJ3emh55x4pqsURJpc2cdZ/X213l4Qk7HP2s7QIcihlbuxDJG9UTwjWlcIwjlQzarzhiRSyH9F3YmlT3THAdtDYX9imiBpEP52CPYNfDGrzzhbUqYj3r","verified":true,"title":"vincent@macbook","id":2427679}] + diff --git a/lib/github/tests/ReplayData/AuthenticatedUser.testGetNotification.txt b/lib/github/tests/ReplayData/AuthenticatedUser.testGetNotification.txt new file mode 100644 index 0000000000..b1a9e4f47b --- /dev/null +++ b/lib/github/tests/ReplayData/AuthenticatedUser.testGetNotification.txt @@ -0,0 +1,10 @@ +https +GET +api.github.com +None +/notifications/threads/8406712 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4999'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '16567'), ('server', 'nginx'), ('last-modified', 'Fri, 24 Aug 2012 07:05:12 GMT'), ('connection', 'keep-alive'), ('etag', '"eb52c03081d2fc22f26ed2718921e500"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Sat, 08 Sep 2012 17:26:28 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"id": "8406712","unread": false,"reason": "author","updated_at": "2013-03-15T05:43:11Z","last_read_at": "2013-03-15T06:06:34Z","subject": {"title": "Feature/coveralls","type": "PullRequest"},"repository": {"id": 8432784}} diff --git a/lib/github/tests/ReplayData/AuthenticatedUser.testGetNotifications.txt b/lib/github/tests/ReplayData/AuthenticatedUser.testGetNotifications.txt new file mode 100644 index 0000000000..cd8106ec34 --- /dev/null +++ b/lib/github/tests/ReplayData/AuthenticatedUser.testGetNotifications.txt @@ -0,0 +1,10 @@ +https +GET +api.github.com +None +/notifications?participating=True +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4999'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '16567'), ('server', 'nginx'), ('last-modified', 'Fri, 24 Aug 2012 07:05:12 GMT'), ('connection', 'keep-alive'), ('etag', '"eb52c03081d2fc22f26ed2718921e500"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Sat, 08 Sep 2012 17:26:28 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"id": "8406712","unread": false,"reason": "author","updated_at": "2013-03-15T05:43:11Z","last_read_at": "2013-03-15T06:06:34Z","subject": {"title": "Feature/coveralls","type": "PullRequest"},"repository": {"id": 8432784}}] diff --git a/lib/github/tests/ReplayData/AuthenticatedUser.testGetNotificationsWithOtherArguments.txt b/lib/github/tests/ReplayData/AuthenticatedUser.testGetNotificationsWithOtherArguments.txt new file mode 100644 index 0000000000..31af111136 --- /dev/null +++ b/lib/github/tests/ReplayData/AuthenticatedUser.testGetNotificationsWithOtherArguments.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/notifications?all=True +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4999'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('content-length', '2'), ('server', 'GitHub.com'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d751713988987e9331980363e24189ce"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Tue, 19 Mar 2013 21:05:52 GMT'), ('content-type', 'application/json; charset=utf-8')] +[] + diff --git a/lib/github/tests/ReplayData/AuthenticatedUser.testGetOrganizationEvents.txt b/lib/github/tests/ReplayData/AuthenticatedUser.testGetOrganizationEvents.txt new file mode 100644 index 0000000000..a46f0a6d61 --- /dev/null +++ b/lib/github/tests/ReplayData/AuthenticatedUser.testGetOrganizationEvents.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/orgs/BeaverSoftware +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4969'), ('content-length', '716'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d1b89d0f179a7977b3521babf470b71e"'), ('date', 'Sat, 26 May 2012 20:13:58 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"private_gists":0,"type":"Organization","company":null,"location":"Paris, France","following":0,"blog":null,"avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","total_private_repos":0,"followers":0,"owned_private_repos":0,"disk_usage":112,"collaborators":0,"billing_email":"BeaverSoftware@vincent-jacques.net","html_url":"https://github.com/BeaverSoftware","url":"https://api.github.com/orgs/BeaverSoftware","name":null,"login":"BeaverSoftware","public_repos":2,"public_gists":0,"email":null,"id":1424031,"plan":{"private_repos":0,"name":"free","space":307200},"created_at":"2012-02-09T19:20:12Z"} + +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4968'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"9459b6e1e4805aad5e10d13344d6ffbf"'), ('date', 'Sat, 26 May 2012 20:13:59 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"public_repos":11,"type":"User","hireable":false,"disk_usage":17080,"blog":"http://vincent-jacques.net","bio":"","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","total_private_repos":5,"plan":{"private_repos":5,"collaborators":1,"name":"micro","space":614400},"owned_private_repos":5,"company":"Criteo","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","collaborators":0,"public_gists":3,"email":"vincent@vincent-jacques.net","followers":13,"name":"Vincent Jacques","private_gists":5,"created_at":"2010-07-09T06:10:06Z","location":"Paris, France","id":327146,"following":24,"html_url":"https://github.com/jacquev6"} + +https +GET +api.github.com +None +/users/jacquev6/events/orgs/BeaverSoftware +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4967'), ('content-length', '31370'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next"'), ('etag', '"61ca146024fe83f06b9930f23033224f"'), ('date', 'Sat, 26 May 2012 20:14:00 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"type":"CreateEvent","payload":{"master_branch":"master","description":null,"ref":null,"ref_type":"repository"},"public":true,"repo":{"url":"https://api.github.com/repos/BeaverSoftware/CreatedByPyGithub","id":3616888,"name":"BeaverSoftware/CreatedByPyGithub"},"org":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/orgs/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"created_at":"2012-03-04T08:17:15Z","id":"1526182616","actor":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/users/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"}},{"type":"CreateEvent","payload":{"master_branch":"master","description":null,"ref":null,"ref_type":"repository"},"public":true,"repo":{"url":"https://api.github.com/repos/BeaverSoftware/CreatedByPyGithub","id":3610173,"name":"BeaverSoftware/CreatedByPyGithub"},"org":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/orgs/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"created_at":"2012-03-03T11:16:34Z","id":"1526021988","actor":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/users/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"}},{"type":"PushEvent","payload":{"head":"390bcc2b855d419e9fd6727049aa9217db56a06a","size":1,"push_id":65381113,"commits":[{"author":{"email":"BeaverSoftware@vincent-jacques.net","name":"BeaverSoftware"},"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub/commits/390bcc2b855d419e9fd6727049aa9217db56a06a","message":"This commit was created by PyGithub","distinct":true,"sha":"390bcc2b855d419e9fd6727049aa9217db56a06a"}],"ref":"refs/heads/master"},"public":true,"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","id":3609352,"name":"BeaverSoftware/TestPyGithub"},"org":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/orgs/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"created_at":"2012-03-03T08:57:40Z","id":"1526010140","actor":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/users/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"}},{"type":"PushEvent","payload":{"head":"1c29d761d3e929afcbf8c6cc44b8181068d2d974","size":2,"push_id":65381112,"commits":[{"author":{"email":"BeaverSoftware@vincent-jacques.net","name":"BeaverSoftware"},"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub/commits/998f4cd5ba9501a7ccff79b0011f4220f16b0271","message":"This commit was created by PyGithub","distinct":false,"sha":"998f4cd5ba9501a7ccff79b0011f4220f16b0271"},{"author":{"email":"BeaverSoftware@vincent-jacques.net","name":"BeaverSoftware"},"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub/commits/1c29d761d3e929afcbf8c6cc44b8181068d2d974","message":"This commit was created by PyGithub","distinct":false,"sha":"1c29d761d3e929afcbf8c6cc44b8181068d2d974"}],"ref":"refs/heads/previous_master"},"public":true,"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","id":3609352,"name":"BeaverSoftware/TestPyGithub"},"org":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/orgs/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"created_at":"2012-03-03T08:57:39Z","id":"1526010139","actor":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/users/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"}},{"type":"DeleteEvent","payload":{"ref_type":"branch","ref":"previous_master"},"public":true,"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","id":3609352,"name":"BeaverSoftware/TestPyGithub"},"org":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/orgs/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"created_at":"2012-03-03T08:56:56Z","id":"1526010100","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"}},{"type":"DeleteEvent","payload":{"ref_type":"tag","ref":"tagCreatedByPyGithub"},"public":true,"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","id":3609352,"name":"BeaverSoftware/TestPyGithub"},"org":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/orgs/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"created_at":"2012-03-03T08:54:25Z","id":"1526009934","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"}},{"type":"PushEvent","payload":{"head":"1c29d761d3e929afcbf8c6cc44b8181068d2d974","size":1,"push_id":65380919,"ref":"refs/heads/master","commits":[{"author":{"email":"BeaverSoftware@vincent-jacques.net","name":"BeaverSoftware"},"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub/commits/1c29d761d3e929afcbf8c6cc44b8181068d2d974","message":"This commit was created by PyGithub","distinct":true,"sha":"1c29d761d3e929afcbf8c6cc44b8181068d2d974"}]},"public":true,"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","id":3609352,"name":"BeaverSoftware/TestPyGithub"},"org":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/orgs/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"created_at":"2012-03-03T08:52:06Z","id":"1526009779","actor":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/users/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"}},{"type":"PushEvent","payload":{"head":"998f4cd5ba9501a7ccff79b0011f4220f16b0271","size":2,"push_id":65380918,"commits":[{"author":{"email":"BeaverSoftware@vincent-jacques.net","name":"BeaverSoftware"},"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub/commits/2f51005d80353b3b82cc23908ea4fc7a91230e2f","message":"This commit was created by PyGithub","distinct":false,"sha":"2f51005d80353b3b82cc23908ea4fc7a91230e2f"},{"author":{"email":"BeaverSoftware@vincent-jacques.net","name":"BeaverSoftware"},"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub/commits/998f4cd5ba9501a7ccff79b0011f4220f16b0271","message":"This commit was created by PyGithub","distinct":false,"sha":"998f4cd5ba9501a7ccff79b0011f4220f16b0271"}],"ref":"refs/heads/previous_master"},"public":true,"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","id":3609352,"name":"BeaverSoftware/TestPyGithub"},"org":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/orgs/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"created_at":"2012-03-03T08:52:04Z","id":"1526009777","actor":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/users/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"}},{"type":"DeleteEvent","payload":{"ref_type":"tag","ref":"tag_1330764175"},"public":true,"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","id":3609352,"name":"BeaverSoftware/TestPyGithub"},"org":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/orgs/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"created_at":"2012-03-03T08:47:21Z","id":"1526009425","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"}},{"type":"DeleteEvent","payload":{"ref_type":"tag","ref":"a_tag"},"public":true,"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","id":3609352,"name":"BeaverSoftware/TestPyGithub"},"org":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/orgs/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"created_at":"2012-03-03T08:47:15Z","id":"1526009414","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"}},{"type":"PushEvent","payload":{"head":"998f4cd5ba9501a7ccff79b0011f4220f16b0271","size":1,"push_id":65380594,"ref":"refs/heads/master","commits":[{"author":{"email":"BeaverSoftware@vincent-jacques.net","name":"BeaverSoftware"},"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub/commits/998f4cd5ba9501a7ccff79b0011f4220f16b0271","message":"This commit was created by PyGithub","distinct":true,"sha":"998f4cd5ba9501a7ccff79b0011f4220f16b0271"}]},"public":true,"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","id":3609352,"name":"BeaverSoftware/TestPyGithub"},"org":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/orgs/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"created_at":"2012-03-03T08:42:55Z","id":"1526009059","actor":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/users/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"}},{"type":"PushEvent","payload":{"head":"2f51005d80353b3b82cc23908ea4fc7a91230e2f","size":1,"push_id":65379432,"ref":"refs/heads/master","commits":[{"author":{"email":"BeaverSoftware@vincent-jacques.net","name":"BeaverSoftware"},"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub/commits/2f51005d80353b3b82cc23908ea4fc7a91230e2f","message":"This commit was created by PyGithub","distinct":true,"sha":"2f51005d80353b3b82cc23908ea4fc7a91230e2f"}]},"public":true,"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","id":3609352,"name":"BeaverSoftware/TestPyGithub"},"org":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/orgs/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"created_at":"2012-03-03T08:11:55Z","id":"1526006647","actor":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/users/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"}},{"type":"PushEvent","payload":{"head":"e4e84560cb5e87f3c0e9f710dae1ddab0eef487b","size":1,"push_id":65379410,"ref":"refs/heads/master","commits":[{"author":{"email":"BeaverSoftware@vincent-jacques.net","name":"BeaverSoftware"},"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub/commits/e4e84560cb5e87f3c0e9f710dae1ddab0eef487b","message":"This commit was created by PyGithub","distinct":true,"sha":"e4e84560cb5e87f3c0e9f710dae1ddab0eef487b"}]},"public":true,"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","id":3609352,"name":"BeaverSoftware/TestPyGithub"},"org":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/orgs/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"created_at":"2012-03-03T08:11:13Z","id":"1526006609","actor":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/users/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"}},{"type":"CreateEvent","payload":{"master_branch":"master","description":null,"ref":null,"ref_type":"repository"},"public":true,"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","id":3595643,"name":"BeaverSoftware/TestPyGithub"},"org":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/orgs/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"created_at":"2012-03-01T20:19:32Z","id":"1525404633","actor":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/users/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"}},{"type":"CreateEvent","payload":{"master_branch":"master","description":null,"ref_type":"repository","ref":null},"public":true,"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","id":3595636,"name":"BeaverSoftware/TestPyGithub"},"org":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/orgs/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"created_at":"2012-03-01T20:19:03Z","id":"1525404453","actor":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/users/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"}},{"type":"CreateEvent","payload":{"master_branch":"master","description":null,"ref":null,"ref_type":"repository"},"public":true,"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","id":3595613,"name":"BeaverSoftware/TestPyGithub"},"org":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/orgs/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"created_at":"2012-03-01T20:16:23Z","id":"1525403337","actor":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/users/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"}},{"type":"CreateEvent","payload":{"master_branch":"master","description":null,"ref_type":"repository","ref":null},"public":true,"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","id":3595586,"name":"BeaverSoftware/TestPyGithub"},"org":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/orgs/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"created_at":"2012-03-01T20:12:55Z","id":"1525402258","actor":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/users/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"}},{"type":"CreateEvent","payload":{"master_branch":"master","description":null,"ref":null,"ref_type":"repository"},"public":true,"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","id":3595253,"name":"BeaverSoftware/TestPyGithub"},"org":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/orgs/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"created_at":"2012-03-01T19:36:29Z","id":"1525387859","actor":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/users/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"}},{"type":"PushEvent","payload":{"head":"9473baa2f243872c07c8f008e3d53aed6b5c9ac5","size":1,"push_id":64666710,"ref":"refs/heads/master","commits":[{"author":{"email":"BeaverSoftware@vincent-jacques.net","name":"BeaverSoftware"},"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub/commits/9473baa2f243872c07c8f008e3d53aed6b5c9ac5","message":"This commit was ter created by PyGithub","distinct":true,"sha":"9473baa2f243872c07c8f008e3d53aed6b5c9ac5"}]},"public":true,"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","id":3575047,"name":"BeaverSoftware/TestPyGithub"},"org":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/orgs/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"created_at":"2012-02-28T20:11:58Z","id":"1524541002","actor":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/users/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"}},{"type":"PushEvent","payload":{"head":"ff9cc7d9bcb62d9dbf0784994fe026e9060701ef","size":1,"push_id":64259989,"commits":[{"author":{"email":"BeaverSoftware@vincent-jacques.net","name":"BeaverSoftware"},"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub/commits/ff9cc7d9bcb62d9dbf0784994fe026e9060701ef","message":"This commit was ter created by PyGithub","sha":"ff9cc7d9bcb62d9dbf0784994fe026e9060701ef"}],"ref":"refs/heads/master"},"public":true,"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","id":3553496,"name":"BeaverSoftware/TestPyGithub"},"org":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/orgs/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"created_at":"2012-02-26T17:28:36Z","id":"1523710410","actor":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/users/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"}},{"type":"PushEvent","payload":{"head":"23395b2fa62293196bd8a640b14447c7b552c301","size":1,"push_id":64257074,"ref":"refs/heads/master","commits":[{"author":{"email":"BeaverSoftware@vincent-jacques.net","name":"BeaverSoftware"},"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub/commits/23395b2fa62293196bd8a640b14447c7b552c301","message":"This commit was ter created by PyGithub","sha":"23395b2fa62293196bd8a640b14447c7b552c301"}]},"public":true,"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","id":3553240,"name":"BeaverSoftware/TestPyGithub"},"org":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/orgs/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"created_at":"2012-02-26T16:46:35Z","id":"1523704553","actor":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/users/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"}},{"type":"PushEvent","payload":{"head":"daded682d3a64f70df2e5561783e7282a5cd80a9","size":1,"push_id":64171897,"ref":"refs/heads/master","commits":[{"author":{"email":"BeaverSoftware@vincent-jacques.net","name":"BeaverSoftware"},"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub/commits/daded682d3a64f70df2e5561783e7282a5cd80a9","message":"This commit was ter created by PyGithub","sha":"daded682d3a64f70df2e5561783e7282a5cd80a9"}]},"public":true,"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","id":3545577,"name":"BeaverSoftware/TestPyGithub"},"org":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/orgs/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"created_at":"2012-02-25T16:10:21Z","id":"1523516455","actor":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/users/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"}},{"type":"PushEvent","payload":{"head":"73b34d944187f282fa6049cd05b02432488b357b","size":1,"push_id":64169946,"ref":"refs/heads/master","commits":[{"author":{"email":"BeaverSoftware@vincent-jacques.net","name":"BeaverSoftware"},"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub/commits/73b34d944187f282fa6049cd05b02432488b357b","message":"This commit was ter created by PyGithub","sha":"73b34d944187f282fa6049cd05b02432488b357b"}]},"public":true,"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","id":3545372,"name":"BeaverSoftware/TestPyGithub"},"org":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/orgs/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"created_at":"2012-02-25T15:39:19Z","id":"1523512558","actor":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/users/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"}},{"type":"PushEvent","payload":{"head":"9f2ec52ae9e166d6104834bd0a7f3f9550565100","size":1,"push_id":64169244,"commits":[{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques"},"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub/commits/9f2ec52ae9e166d6104834bd0a7f3f9550565100","message":"foo","sha":"9f2ec52ae9e166d6104834bd0a7f3f9550565100"}],"ref":"refs/heads/master"},"public":true,"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","id":3545295,"name":"BeaverSoftware/TestPyGithub"},"org":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/orgs/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"created_at":"2012-02-25T15:27:57Z","id":"1523511231","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"}},{"type":"ForkEvent","payload":{"forkee":{"name":"FatherBeaver","master_branch":null,"size":0,"created_at":"2012-02-16T21:47:44Z","has_wiki":true,"public":true,"clone_url":"https://github.com/jacquev6/FatherBeaver.git","updated_at":"2012-02-16T21:47:44Z","private":false,"watchers":1,"language":null,"git_url":"git://github.com/jacquev6/FatherBeaver.git","fork":true,"ssh_url":"git@github.com:jacquev6/FatherBeaver.git","url":"https://api.github.com/repos/jacquev6/FatherBeaver","id":3464364,"pushed_at":null,"svn_url":"https://github.com/jacquev6/FatherBeaver","has_downloads":true,"open_issues":0,"mirror_url":null,"homepage":"","has_issues":false,"forks":0,"description":"","html_url":"https://github.com/jacquev6/FatherBeaver","owner":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}}},"public":true,"repo":{"url":"https://api.github.com/repos/BeaverSoftware/FatherBeaver","id":3400397,"name":"BeaverSoftware/FatherBeaver"},"org":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/orgs/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"created_at":"2012-02-16T21:47:45Z","id":"1520524054","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"}},{"type":"CreateEvent","payload":{"master_branch":"master","ref":null,"ref_type":"repository","description":""},"public":true,"repo":{"url":"https://api.github.com/repos/BeaverSoftware/FatherBeaver","id":3400397,"name":"BeaverSoftware/FatherBeaver"},"org":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/orgs/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"created_at":"2012-02-09T19:32:22Z","id":"1518484373","actor":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/users/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"}},{"type":"TeamAddEvent","payload":{"membership_id":963957,"team":{"name":"Owners","url":"https://api.github.com/teams/141487","id":141487},"user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},"public":false,"repo":{"url":"https://api.github.com/repos//","name":"/"},"org":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/orgs/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"created_at":"2012-02-09T19:20:13Z","id":"1518480611","actor":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/users/BeaverSoftware","id":1424031,"login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"}}] + diff --git a/lib/github/tests/ReplayData/AuthenticatedUser.testGetOrgs.txt b/lib/github/tests/ReplayData/AuthenticatedUser.testGetOrgs.txt new file mode 100644 index 0000000000..a793c3e328 --- /dev/null +++ b/lib/github/tests/ReplayData/AuthenticatedUser.testGetOrgs.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/user/orgs +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4962'), ('content-length', '262'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"1534f44ae64c7b70fb520ea37de4328d"'), ('date', 'Sat, 26 May 2012 20:18:49 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/orgs/BeaverSoftware","login":"BeaverSoftware","id":1424031,"avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"}] + diff --git a/lib/github/tests/ReplayData/AuthenticatedUser.testGetRepos.txt b/lib/github/tests/ReplayData/AuthenticatedUser.testGetRepos.txt new file mode 100644 index 0000000000..598602126a --- /dev/null +++ b/lib/github/tests/ReplayData/AuthenticatedUser.testGetRepos.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/user/repos +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4961'), ('content-length', '17939'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"3d6116bc986eb0698f0dfe92a01b2437"'), ('date', 'Sat, 26 May 2012 20:19:00 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"clone_url":"https://github.com/jacquev6/TestPyGithub.git","mirror_url":null,"has_downloads":false,"watchers":1,"updated_at":"2012-05-26T09:55:27Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://foobar.com","url":"https://api.github.com/repos/jacquev6/TestPyGithub","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":0,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/TestPyGithub","git_url":"git://github.com/jacquev6/TestPyGithub.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"TestPyGithub","language":null,"description":"Repo created by PyGithub","ssh_url":"git@github.com:jacquev6/TestPyGithub.git","pushed_at":"2012-05-26T09:55:27Z","created_at":"2012-05-26T09:55:27Z","id":4454027,"html_url":"https://github.com/jacquev6/TestPyGithub","full_name":"jacquev6/TestPyGithub"},{"clone_url":"https://github.com/jacquev6/django.git","mirror_url":null,"has_downloads":true,"watchers":1,"updated_at":"2012-04-28T11:06:20Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://www.djangoproject.com/","url":"https://api.github.com/repos/jacquev6/django","has_wiki":false,"has_issues":false,"fork":true,"forks":0,"size":48476,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/django","git_url":"git://github.com/jacquev6/django.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"django","language":"Python","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","ssh_url":"git@github.com:jacquev6/django.git","pushed_at":"2012-04-28T04:05:15Z","created_at":"2012-04-28T11:06:20Z","id":4166730,"html_url":"https://github.com/jacquev6/django","full_name":"jacquev6/django"},{"clone_url":"https://github.com/jacquev6/PyGithub.git","mirror_url":null,"has_downloads":true,"watchers":14,"updated_at":"2012-05-26T18:33:41Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","has_wiki":false,"has_issues":true,"fork":false,"forks":2,"size":412,"private":false,"open_issues":15,"svn_url":"https://github.com/jacquev6/PyGithub","git_url":"git://github.com/jacquev6/PyGithub.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-26T11:25:48Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"html_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub"},{"clone_url":"https://github.com/jacquev6/developer.github.com.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-05-08T08:36:28Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/jacquev6/developer.github.com","has_wiki":false,"has_issues":false,"fork":true,"forks":0,"size":152,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/developer.github.com","git_url":"git://github.com/jacquev6/developer.github.com.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"developer.github.com","language":"Ruby","description":"","ssh_url":"git@github.com:jacquev6/developer.github.com.git","pushed_at":"2012-05-08T08:36:28Z","created_at":"2012-02-05T18:22:26Z","id":3361136,"html_url":"https://github.com/jacquev6/developer.github.com","full_name":"jacquev6/developer.github.com"},{"clone_url":"https://github.com/jacquev6/acme-public-website.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-05-22T18:24:49Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/jacquev6/acme-public-website","has_wiki":false,"has_issues":false,"fork":false,"forks":0,"size":120,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/acme-public-website","git_url":"git://github.com/jacquev6/acme-public-website.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"acme-public-website","language":null,"description":"","ssh_url":"git@github.com:jacquev6/acme-public-website.git","pushed_at":"2011-12-07T20:11:17Z","created_at":"2011-12-07T20:00:40Z","id":2935252,"html_url":"https://github.com/jacquev6/acme-public-website","full_name":"jacquev6/acme-public-website"},{"clone_url":"https://github.com/jacquev6/C4Planner.git","mirror_url":null,"has_downloads":true,"watchers":1,"updated_at":"2012-02-16T21:51:01Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/C4Planner","url":"https://api.github.com/repos/jacquev6/C4Planner","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":4716,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/C4Planner","git_url":"git://github.com/jacquev6/C4Planner.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"C4Planner","language":"Python","description":"Caesar IV: anticipate your city","ssh_url":"git@github.com:jacquev6/C4Planner.git","pushed_at":"2011-11-27T20:51:06Z","created_at":"2011-08-24T08:30:55Z","id":2260441,"html_url":"https://github.com/jacquev6/C4Planner","full_name":"jacquev6/C4Planner"},{"clone_url":"https://github.com/jacquev6/Hacking.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-04-24T13:55:11Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/jacquev6/Hacking","has_wiki":false,"has_issues":false,"fork":false,"forks":0,"size":128,"private":true,"open_issues":0,"svn_url":"https://github.com/jacquev6/Hacking","git_url":"git://github.com/jacquev6/Hacking.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"Hacking","language":"Python","description":"","ssh_url":"git@github.com:jacquev6/Hacking.git","pushed_at":"2012-04-17T19:09:56Z","created_at":"2011-07-02T15:59:51Z","id":1988081,"html_url":"https://github.com/jacquev6/Hacking","full_name":"jacquev6/Hacking"},{"clone_url":"https://github.com/jacquev6/vincent-jacques.net.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-04-29T15:20:52Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"vincent-jacques.net","url":"https://api.github.com/repos/jacquev6/vincent-jacques.net","has_wiki":false,"has_issues":false,"fork":false,"forks":0,"size":172,"private":true,"open_issues":0,"svn_url":"https://github.com/jacquev6/vincent-jacques.net","git_url":"git://github.com/jacquev6/vincent-jacques.net.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"vincent-jacques.net","language":"Python","description":"","ssh_url":"git@github.com:jacquev6/vincent-jacques.net.git","pushed_at":"2012-04-29T15:20:52Z","created_at":"2011-07-02T07:08:56Z","id":1986874,"html_url":"https://github.com/jacquev6/vincent-jacques.net","full_name":"jacquev6/vincent-jacques.net"},{"clone_url":"https://github.com/jacquev6/Contests.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-02-12T07:18:09Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"Contests","url":"https://api.github.com/repos/jacquev6/Contests","has_wiki":false,"has_issues":false,"fork":false,"forks":0,"size":448,"private":true,"open_issues":0,"svn_url":"https://github.com/jacquev6/Contests","git_url":"git://github.com/jacquev6/Contests.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"Contests","language":"Python","description":"","ssh_url":"git@github.com:jacquev6/Contests.git","pushed_at":"2011-11-14T20:19:48Z","created_at":"2011-06-27T11:55:34Z","id":1959919,"html_url":"https://github.com/jacquev6/Contests","full_name":"jacquev6/Contests"},{"clone_url":"https://github.com/jacquev6/Candidates.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-05-11T13:50:37Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/jacquev6/Candidates","has_wiki":false,"has_issues":false,"fork":false,"forks":0,"size":700,"private":true,"open_issues":0,"svn_url":"https://github.com/jacquev6/Candidates","git_url":"git://github.com/jacquev6/Candidates.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"Candidates","language":"C++","description":"","ssh_url":"git@github.com:jacquev6/Candidates.git","pushed_at":"2012-05-11T13:50:36Z","created_at":"2011-04-09T18:24:08Z","id":1592290,"html_url":"https://github.com/jacquev6/Candidates","full_name":"jacquev6/Candidates"},{"clone_url":"https://github.com/jacquev6/Tests.git","mirror_url":null,"has_downloads":true,"watchers":0,"updated_at":"2012-04-28T10:16:42Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/jacquev6/Tests","has_wiki":false,"has_issues":false,"fork":false,"forks":0,"size":3032,"private":true,"open_issues":0,"svn_url":"https://github.com/jacquev6/Tests","git_url":"git://github.com/jacquev6/Tests.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"Tests","language":"C","description":"Various tests","ssh_url":"git@github.com:jacquev6/Tests.git","pushed_at":"2012-04-01T04:24:47Z","created_at":"2011-03-28T20:24:02Z","id":1538471,"html_url":"https://github.com/jacquev6/Tests","full_name":"jacquev6/Tests"},{"clone_url":"https://github.com/jacquev6/DrawTurksHead.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-04-16T18:38:55Z","permissions":{"pull":true,"admin":true,"push":true},"master_branch":"master","homepage":"http://vincent-jacques.net/DrawTurksHead/","url":"https://api.github.com/repos/jacquev6/DrawTurksHead","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":3232,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/DrawTurksHead","git_url":"git://github.com/jacquev6/DrawTurksHead.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"DrawTurksHead","language":"C++","description":"A tool to draw Turk's Head Knots. Try it online","ssh_url":"git@github.com:jacquev6/DrawTurksHead.git","pushed_at":"2012-04-16T18:38:54Z","created_at":"2010-07-10T08:54:09Z","id":767403,"html_url":"https://github.com/jacquev6/DrawTurksHead","full_name":"jacquev6/DrawTurksHead"},{"clone_url":"https://github.com/jacquev6/DrawSyntax.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2011-11-27T14:00:34Z","permissions":{"pull":true,"admin":true,"push":true},"master_branch":"master","homepage":"http://vincent-jacques.net/DrawSyntax/","url":"https://api.github.com/repos/jacquev6/DrawSyntax","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":1760,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/DrawSyntax","git_url":"git://github.com/jacquev6/DrawSyntax.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"DrawSyntax","language":"C++","description":"Draw syntax diagrams from EBNF grammars. API in C++ and Python. Try it online.","ssh_url":"git@github.com:jacquev6/DrawSyntax.git","pushed_at":"2011-11-27T14:00:32Z","created_at":"2010-07-10T08:39:56Z","id":767392,"html_url":"https://github.com/jacquev6/DrawSyntax","full_name":"jacquev6/DrawSyntax"},{"clone_url":"https://github.com/jacquev6/QuadProgMm.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-04-16T18:39:06Z","permissions":{"pull":true,"admin":true,"push":true},"master_branch":"master","homepage":"http://vincent-jacques.net/QuadProgMm","url":"https://api.github.com/repos/jacquev6/QuadProgMm","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":760,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/QuadProgMm","git_url":"git://github.com/jacquev6/QuadProgMm.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"QuadProgMm","language":"C++","description":"A C++ interface to specify quadratic problems by C++ expressions of your variables. Try it online.","ssh_url":"git@github.com:jacquev6/QuadProgMm.git","pushed_at":"2012-04-16T18:39:05Z","created_at":"2010-07-10T08:36:57Z","id":767386,"html_url":"https://github.com/jacquev6/QuadProgMm","full_name":"jacquev6/QuadProgMm"},{"clone_url":"https://github.com/jacquev6/Boost.HierarchicalEnum.git","mirror_url":null,"has_downloads":false,"watchers":2,"updated_at":"2012-02-20T12:43:24Z","permissions":{"pull":true,"admin":true,"push":true},"master_branch":"master","homepage":"","url":"https://api.github.com/repos/jacquev6/Boost.HierarchicalEnum","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":112,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/Boost.HierarchicalEnum","git_url":"git://github.com/jacquev6/Boost.HierarchicalEnum.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"Boost.HierarchicalEnum","language":"C++","description":"","ssh_url":"git@github.com:jacquev6/Boost.HierarchicalEnum.git","pushed_at":"2011-11-27T14:00:23Z","created_at":"2010-07-10T08:32:12Z","id":767382,"html_url":"https://github.com/jacquev6/Boost.HierarchicalEnum","full_name":"jacquev6/Boost.HierarchicalEnum"},{"clone_url":"https://github.com/jacquev6/ViDE.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-04-19T16:35:46Z","permissions":{"pull":true,"admin":true,"push":true},"master_branch":"master","homepage":"","url":"https://api.github.com/repos/jacquev6/ViDE","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":1488,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/ViDE","git_url":"git://github.com/jacquev6/ViDE.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"ViDE","language":"Python","description":"Vincent's Development Environment","ssh_url":"git@github.com:jacquev6/ViDE.git","pushed_at":"2012-04-19T16:35:45Z","created_at":"2010-07-10T07:33:24Z","id":767343,"html_url":"https://github.com/jacquev6/ViDE","full_name":"jacquev6/ViDE"}] + diff --git a/lib/github/tests/ReplayData/AuthenticatedUser.testGetReposWithArguments.txt b/lib/github/tests/ReplayData/AuthenticatedUser.testGetReposWithArguments.txt new file mode 100644 index 0000000000..6fc7443f27 --- /dev/null +++ b/lib/github/tests/ReplayData/AuthenticatedUser.testGetReposWithArguments.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/user/repos?sort=full_name&direction=desc&type=public +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4975'), ('content-length', '11503'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"f701a487ffa356326c27c1d0f1790e5e"'), ('date', 'Tue, 29 May 2012 18:19:20 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"clone_url":"https://github.com/jacquev6/ViDE.git","has_downloads":false,"watchers":0,"updated_at":"2012-04-19T16:35:46Z","permissions":{"pull":true,"admin":true,"push":true},"master_branch":"master","homepage":"","url":"https://api.github.com/repos/jacquev6/ViDE","html_url":"https://github.com/jacquev6/ViDE","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":1488,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/ViDE","owner":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"name":"ViDE","mirror_url":null,"language":"Python","description":"Vincent's Development Environment","ssh_url":"git@github.com:jacquev6/ViDE.git","pushed_at":"2012-04-19T16:35:45Z","created_at":"2010-07-10T07:33:24Z","id":767343,"git_url":"git://github.com/jacquev6/ViDE.git","full_name":"jacquev6/ViDE"},{"clone_url":"https://github.com/jacquev6/QuadProgMm.git","has_downloads":false,"watchers":0,"updated_at":"2012-04-16T18:39:06Z","permissions":{"pull":true,"admin":true,"push":true},"master_branch":"master","homepage":"http://vincent-jacques.net/QuadProgMm","url":"https://api.github.com/repos/jacquev6/QuadProgMm","html_url":"https://github.com/jacquev6/QuadProgMm","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":760,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/QuadProgMm","owner":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"name":"QuadProgMm","mirror_url":null,"language":"C++","description":"A C++ interface to specify quadratic problems by C++ expressions of your variables. Try it online.","ssh_url":"git@github.com:jacquev6/QuadProgMm.git","pushed_at":"2012-04-16T18:39:05Z","created_at":"2010-07-10T08:36:57Z","id":767386,"git_url":"git://github.com/jacquev6/QuadProgMm.git","full_name":"jacquev6/QuadProgMm"},{"clone_url":"https://github.com/jacquev6/PyGithub.git","has_downloads":true,"watchers":17,"updated_at":"2012-05-29T18:07:54Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","html_url":"https://github.com/jacquev6/PyGithub","has_wiki":false,"has_issues":true,"fork":false,"forks":3,"size":480,"private":false,"open_issues":14,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"name":"PyGithub","mirror_url":null,"language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-29T18:07:54Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"git_url":"git://github.com/jacquev6/PyGithub.git","full_name":"jacquev6/PyGithub"},{"clone_url":"https://github.com/jacquev6/DrawTurksHead.git","has_downloads":false,"watchers":0,"updated_at":"2012-04-16T18:38:55Z","permissions":{"pull":true,"admin":true,"push":true},"master_branch":"master","homepage":"http://vincent-jacques.net/DrawTurksHead/","url":"https://api.github.com/repos/jacquev6/DrawTurksHead","html_url":"https://github.com/jacquev6/DrawTurksHead","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":3232,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/DrawTurksHead","owner":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"name":"DrawTurksHead","mirror_url":null,"language":"C++","description":"A tool to draw Turk's Head Knots. Try it online","ssh_url":"git@github.com:jacquev6/DrawTurksHead.git","pushed_at":"2012-04-16T18:38:54Z","created_at":"2010-07-10T08:54:09Z","id":767403,"git_url":"git://github.com/jacquev6/DrawTurksHead.git","full_name":"jacquev6/DrawTurksHead"},{"clone_url":"https://github.com/jacquev6/DrawSyntax.git","has_downloads":false,"watchers":0,"updated_at":"2011-11-27T14:00:34Z","permissions":{"pull":true,"admin":true,"push":true},"master_branch":"master","homepage":"http://vincent-jacques.net/DrawSyntax/","url":"https://api.github.com/repos/jacquev6/DrawSyntax","html_url":"https://github.com/jacquev6/DrawSyntax","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":1760,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/DrawSyntax","owner":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"name":"DrawSyntax","mirror_url":null,"language":"C++","description":"Draw syntax diagrams from EBNF grammars. API in C++ and Python. Try it online.","ssh_url":"git@github.com:jacquev6/DrawSyntax.git","pushed_at":"2011-11-27T14:00:32Z","created_at":"2010-07-10T08:39:56Z","id":767392,"git_url":"git://github.com/jacquev6/DrawSyntax.git","full_name":"jacquev6/DrawSyntax"},{"clone_url":"https://github.com/jacquev6/django.git","has_downloads":true,"watchers":1,"updated_at":"2012-04-28T11:06:20Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://www.djangoproject.com/","url":"https://api.github.com/repos/jacquev6/django","html_url":"https://github.com/jacquev6/django","has_wiki":false,"has_issues":false,"fork":true,"forks":0,"size":48476,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/django","owner":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"name":"django","mirror_url":null,"language":"Python","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","ssh_url":"git@github.com:jacquev6/django.git","pushed_at":"2012-04-28T04:05:15Z","created_at":"2012-04-28T11:06:20Z","id":4166730,"git_url":"git://github.com/jacquev6/django.git","full_name":"jacquev6/django"},{"clone_url":"https://github.com/jacquev6/developer.github.com.git","has_downloads":false,"watchers":0,"updated_at":"2012-05-08T08:36:28Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/jacquev6/developer.github.com","html_url":"https://github.com/jacquev6/developer.github.com","has_wiki":false,"has_issues":false,"fork":true,"forks":0,"size":152,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/developer.github.com","owner":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"name":"developer.github.com","mirror_url":null,"language":"Ruby","description":"","ssh_url":"git@github.com:jacquev6/developer.github.com.git","pushed_at":"2012-05-08T08:36:28Z","created_at":"2012-02-05T18:22:26Z","id":3361136,"git_url":"git://github.com/jacquev6/developer.github.com.git","full_name":"jacquev6/developer.github.com"},{"clone_url":"https://github.com/jacquev6/C4Planner.git","has_downloads":true,"watchers":1,"updated_at":"2012-02-16T21:51:01Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/C4Planner","url":"https://api.github.com/repos/jacquev6/C4Planner","html_url":"https://github.com/jacquev6/C4Planner","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":4716,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/C4Planner","owner":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"name":"C4Planner","mirror_url":null,"language":"Python","description":"Caesar IV: anticipate your city","ssh_url":"git@github.com:jacquev6/C4Planner.git","pushed_at":"2011-11-27T20:51:06Z","created_at":"2011-08-24T08:30:55Z","id":2260441,"git_url":"git://github.com/jacquev6/C4Planner.git","full_name":"jacquev6/C4Planner"},{"clone_url":"https://github.com/jacquev6/Boost.HierarchicalEnum.git","has_downloads":false,"watchers":2,"updated_at":"2012-02-20T12:43:24Z","permissions":{"pull":true,"admin":true,"push":true},"master_branch":"master","homepage":"","url":"https://api.github.com/repos/jacquev6/Boost.HierarchicalEnum","html_url":"https://github.com/jacquev6/Boost.HierarchicalEnum","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":112,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/Boost.HierarchicalEnum","owner":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"name":"Boost.HierarchicalEnum","mirror_url":null,"language":"C++","description":"","ssh_url":"git@github.com:jacquev6/Boost.HierarchicalEnum.git","pushed_at":"2011-11-27T14:00:23Z","created_at":"2010-07-10T08:32:12Z","id":767382,"git_url":"git://github.com/jacquev6/Boost.HierarchicalEnum.git","full_name":"jacquev6/Boost.HierarchicalEnum"},{"clone_url":"https://github.com/jacquev6/acme-public-website.git","has_downloads":false,"watchers":0,"updated_at":"2012-05-22T18:24:49Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/jacquev6/acme-public-website","html_url":"https://github.com/jacquev6/acme-public-website","has_wiki":false,"has_issues":false,"fork":false,"forks":0,"size":120,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/acme-public-website","owner":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"name":"acme-public-website","mirror_url":null,"language":null,"description":"","ssh_url":"git@github.com:jacquev6/acme-public-website.git","pushed_at":"2011-12-07T20:11:17Z","created_at":"2011-12-07T20:00:40Z","id":2935252,"git_url":"git://github.com/jacquev6/acme-public-website.git","full_name":"jacquev6/acme-public-website"}] + diff --git a/lib/github/tests/ReplayData/AuthenticatedUser.testGetStarredGists.txt b/lib/github/tests/ReplayData/AuthenticatedUser.testGetStarredGists.txt new file mode 100644 index 0000000000..52afb6dc9e --- /dev/null +++ b/lib/github/tests/ReplayData/AuthenticatedUser.testGetStarredGists.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/gists/starred +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4965'), ('content-length', '1871'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"6fe6eaa71614e18ab69868eb20639534"'), ('date', 'Sat, 26 May 2012 20:15:28 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"git_push_url":"git@gist.github.com:1942384.git","updated_at":"2012-02-29T16:47:12Z","url":"https://api.github.com/gists/1942384","comments":0,"public":true,"files":{"fail_github.py":{"type":"application/python","size":1636,"raw_url":"https://gist.github.com/raw/1942384/2fb3aa84e0efa50dc0f4c18b5df5b7b9ab27076b/fail_github.py","filename":"fail_github.py","language":"Python"}},"user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"description":"How to error 500 Github API v3, as requested by Rick (GitHub Staff)","created_at":"2012-02-29T16:47:12Z","git_pull_url":"git://gist.github.com/1942384.git","id":"1942384","html_url":"https://gist.github.com/1942384"},{"git_push_url":"git@gist.github.com:dcb7de17e8a52b74541d.git","updated_at":"2012-02-28T19:44:42Z","url":"https://api.github.com/gists/dcb7de17e8a52b74541d","comments":1,"public":false,"files":{"cadfael.txt":{"type":"text/plain","size":585,"raw_url":"https://gist.github.com/raw/dcb7de17e8a52b74541d/48ca696645682d7430d73180814434e0284796b2/cadfael.txt","filename":"cadfael.txt","language":"Text"}},"user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"description":"Cadfael: order of episodes in French DVD edition","created_at":"2012-02-28T19:44:42Z","git_pull_url":"git://gist.github.com/dcb7de17e8a52b74541d.git","id":"dcb7de17e8a52b74541d","html_url":"https://gist.github.com/dcb7de17e8a52b74541d"}] + diff --git a/lib/github/tests/ReplayData/AuthenticatedUser.testGetTeams.txt b/lib/github/tests/ReplayData/AuthenticatedUser.testGetTeams.txt new file mode 100644 index 0000000000..4c83ef3e6b --- /dev/null +++ b/lib/github/tests/ReplayData/AuthenticatedUser.testGetTeams.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/user/teams +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4999'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '62E81E32:675E:4211BBA:531401D8'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('content-length', '11367'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('etag', '"00eaa266c50bd385cc99089d641a1242"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 03 Mar 2014 04:15:21 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1393823721')] +[{"name":"Owners","id":141487,"slug":"owners","permission":"admin","url":"https://api.github.com/teams/141487","members_url":"https://api.github.com/teams/141487/members{/member}","repositories_url":"https://api.github.com/teams/141487/repos","members_count":1,"repos_count":1,"organization":{"login":"BeaverSoftware","id":1424031,"url":"https://api.github.com/orgs/BeaverSoftware","repos_url":"https://api.github.com/orgs/BeaverSoftware/repos","events_url":"https://api.github.com/orgs/BeaverSoftware/events","members_url":"https://api.github.com/orgs/BeaverSoftware/members{/member}","public_members_url":"https://api.github.com/orgs/BeaverSoftware/public_members{/member}","avatar_url":"https://avatars.githubusercontent.com/u/1424031","name":"Beaver Software","company":null,"blog":null,"location":"Paris, France","email":null,"public_repos":1,"public_gists":0,"followers":0,"following":0,"html_url":"https://github.com/BeaverSoftware","created_at":"2012-02-09T19:20:12Z","updated_at":"2014-02-23T05:51:58Z","type":"Organization"}},{"name":"Honoraries","id":303637,"slug":"honoraries","permission":"pull","url":"https://api.github.com/teams/303637","members_url":"https://api.github.com/teams/303637/members{/member}","repositories_url":"https://api.github.com/teams/303637/repos","members_count":164,"repos_count":0,"organization":{"login":"coderwall-forked20","id":3080475,"url":"https://api.github.com/orgs/coderwall-forked20","repos_url":"https://api.github.com/orgs/coderwall-forked20/repos","events_url":"https://api.github.com/orgs/coderwall-forked20/events","members_url":"https://api.github.com/orgs/coderwall-forked20/members{/member}","public_members_url":"https://api.github.com/orgs/coderwall-forked20/public_members{/member}","avatar_url":"https://avatars.githubusercontent.com/u/3080475","name":"Forked 20","company":null,"blog":"https://coderwall.com/gh","location":"Honorary members of the Forked 20 achievement ","email":"support@coderwall.com","public_repos":1,"public_gists":0,"followers":0,"following":0,"html_url":"https://github.com/coderwall-forked20","created_at":"2012-12-19T11:54:12Z","updated_at":"2013-10-13T23:33:01Z","type":"Organization"}},{"name":"Honoraries","id":303631,"slug":"honoraries","permission":"pull","url":"https://api.github.com/teams/303631","members_url":"https://api.github.com/teams/303631/members{/member}","repositories_url":"https://api.github.com/teams/303631/repos","members_count":2223,"repos_count":0,"organization":{"login":"coderwall-forked","id":3080402,"url":"https://api.github.com/orgs/coderwall-forked","repos_url":"https://api.github.com/orgs/coderwall-forked/repos","events_url":"https://api.github.com/orgs/coderwall-forked/events","members_url":"https://api.github.com/orgs/coderwall-forked/members{/member}","public_members_url":"https://api.github.com/orgs/coderwall-forked/public_members{/member}","avatar_url":"https://avatars.githubusercontent.com/u/3080402","name":"Forked","company":null,"blog":"https://coderwall.com/gh","location":"Honorary members of the Forked achievement ","email":"support@coderwall.com","public_repos":1,"public_gists":0,"followers":0,"following":0,"html_url":"https://github.com/coderwall-forked","created_at":"2012-12-19T11:41:31Z","updated_at":"2013-10-15T16:59:47Z","type":"Organization"}},{"name":"Honoraries","id":304245,"slug":"honoraries","permission":"pull","url":"https://api.github.com/teams/304245","members_url":"https://api.github.com/teams/304245/members{/member}","repositories_url":"https://api.github.com/teams/304245/repos","members_count":2217,"repos_count":0,"organization":{"login":"coderwall-polygamous","id":3086534,"url":"https://api.github.com/orgs/coderwall-polygamous","repos_url":"https://api.github.com/orgs/coderwall-polygamous/repos","events_url":"https://api.github.com/orgs/coderwall-polygamous/events","members_url":"https://api.github.com/orgs/coderwall-polygamous/members{/member}","public_members_url":"https://api.github.com/orgs/coderwall-polygamous/public_members{/member}","avatar_url":"https://avatars.githubusercontent.com/u/3086534","name":"Walrus","company":null,"blog":"https://coderwall.com/gh","location":"Honorary members of the Walrus achievement","email":"support@coderwall.com","public_repos":1,"public_gists":0,"followers":0,"following":0,"html_url":"https://github.com/coderwall-polygamous","created_at":"2012-12-20T04:08:42Z","updated_at":"2013-12-11T01:46:46Z","type":"Organization"}},{"name":"Honoraries","id":303548,"slug":"honoraries","permission":"pull","url":"https://api.github.com/teams/303548","members_url":"https://api.github.com/teams/303548/members{/member}","repositories_url":"https://api.github.com/teams/303548/repos","members_count":167,"repos_count":0,"organization":{"login":"coderwall-lemmings100","id":3079637,"url":"https://api.github.com/orgs/coderwall-lemmings100","repos_url":"https://api.github.com/orgs/coderwall-lemmings100/repos","events_url":"https://api.github.com/orgs/coderwall-lemmings100/events","members_url":"https://api.github.com/orgs/coderwall-lemmings100/members{/member}","public_members_url":"https://api.github.com/orgs/coderwall-lemmings100/public_members{/member}","avatar_url":"https://avatars.githubusercontent.com/u/3079637","name":"Lemmings 100","company":null,"blog":"https://coderwall.com/gh","location":"Honorary members of the Lemmings 100 achievement","email":"support@coderwall.com","public_repos":1,"public_gists":0,"followers":0,"following":0,"html_url":"https://github.com/coderwall-lemmings100","created_at":"2012-12-19T09:40:52Z","updated_at":"2013-10-14T18:57:32Z","type":"Organization"}},{"name":"Honoraries","id":303589,"slug":"honoraries","permission":"pull","url":"https://api.github.com/teams/303589","members_url":"https://api.github.com/teams/303589/members{/member}","repositories_url":"https://api.github.com/teams/303589/repos","members_count":3650,"repos_count":0,"organization":{"login":"coderwall-charity","id":3080009,"url":"https://api.github.com/orgs/coderwall-charity","repos_url":"https://api.github.com/orgs/coderwall-charity/repos","events_url":"https://api.github.com/orgs/coderwall-charity/events","members_url":"https://api.github.com/orgs/coderwall-charity/members{/member}","public_members_url":"https://api.github.com/orgs/coderwall-charity/public_members{/member}","avatar_url":"https://avatars.githubusercontent.com/u/3080009","name":"Charity","company":null,"blog":"https://coderwall.com/gh","location":"Honorary members of the Charity achievement ","email":"support@coderwall.com","public_repos":1,"public_gists":0,"followers":0,"following":0,"html_url":"https://github.com/coderwall-charity","created_at":"2012-12-19T10:39:38Z","updated_at":"2013-12-13T22:31:08Z","type":"Organization"}},{"name":"Honoraries","id":304227,"slug":"honoraries","permission":"pull","url":"https://api.github.com/teams/304227","members_url":"https://api.github.com/teams/304227/members{/member}","repositories_url":"https://api.github.com/teams/304227/repos","members_count":346,"repos_count":0,"organization":{"login":"coderwall-python3","id":3086369,"url":"https://api.github.com/orgs/coderwall-python3","repos_url":"https://api.github.com/orgs/coderwall-python3/repos","events_url":"https://api.github.com/orgs/coderwall-python3/events","members_url":"https://api.github.com/orgs/coderwall-python3/members{/member}","public_members_url":"https://api.github.com/orgs/coderwall-python3/public_members{/member}","avatar_url":"https://avatars.githubusercontent.com/u/3086369","name":"Python 3","company":null,"blog":"https://coderwall.com/gh","location":"Honorary members of the Python 3 achievement","email":"support@coderwall.com","public_repos":1,"public_gists":0,"followers":0,"following":0,"html_url":"https://github.com/coderwall-python3","created_at":"2012-12-20T03:41:01Z","updated_at":"2013-10-21T18:01:03Z","type":"Organization"}},{"name":"Honoraries","id":304225,"slug":"honoraries","permission":"pull","url":"https://api.github.com/teams/304225","members_url":"https://api.github.com/teams/304225/members{/member}","repositories_url":"https://api.github.com/teams/304225/repos","members_count":1021,"repos_count":0,"organization":{"login":"coderwall-python","id":3086352,"url":"https://api.github.com/orgs/coderwall-python","repos_url":"https://api.github.com/orgs/coderwall-python/repos","events_url":"https://api.github.com/orgs/coderwall-python/events","members_url":"https://api.github.com/orgs/coderwall-python/members{/member}","public_members_url":"https://api.github.com/orgs/coderwall-python/public_members{/member}","avatar_url":"https://avatars.githubusercontent.com/u/3086352","name":"Python","company":null,"blog":"https://coderwall.com/gh","location":"Honorary members of the Python achievement","email":"support@coderwall.com","public_repos":1,"public_gists":0,"followers":0,"following":0,"html_url":"https://github.com/coderwall-python","created_at":"2012-12-20T03:38:28Z","updated_at":"2013-10-16T19:01:51Z","type":"Organization"}},{"name":"Honoraries","id":303627,"slug":"honoraries","permission":"pull","url":"https://api.github.com/teams/303627","members_url":"https://api.github.com/teams/303627/members{/member}","repositories_url":"https://api.github.com/teams/303627/repos","members_count":74,"repos_count":0,"organization":{"login":"coderwall-epidexipteryx3","id":3080383,"url":"https://api.github.com/orgs/coderwall-epidexipteryx3","repos_url":"https://api.github.com/orgs/coderwall-epidexipteryx3/repos","events_url":"https://api.github.com/orgs/coderwall-epidexipteryx3/events","members_url":"https://api.github.com/orgs/coderwall-epidexipteryx3/members{/member}","public_members_url":"https://api.github.com/orgs/coderwall-epidexipteryx3/public_members{/member}","avatar_url":"https://avatars.githubusercontent.com/u/3080383","name":"Epidexipteryx 3","company":null,"blog":"https://coderwall.com/gh","location":"Honorary members of the Epidexipteryx 3 achievement ","email":"support@coderwall.com","public_repos":1,"public_gists":0,"followers":0,"following":0,"html_url":"https://github.com/coderwall-epidexipteryx3","created_at":"2012-12-19T11:38:11Z","updated_at":"2013-10-04T16:44:30Z","type":"Organization"}},{"name":"Honoraries","id":303625,"slug":"honoraries","permission":"pull","url":"https://api.github.com/teams/303625","members_url":"https://api.github.com/teams/303625/members{/member}","repositories_url":"https://api.github.com/teams/303625/repos","members_count":391,"repos_count":0,"organization":{"login":"coderwall-epidexipteryx","id":3080333,"url":"https://api.github.com/orgs/coderwall-epidexipteryx","repos_url":"https://api.github.com/orgs/coderwall-epidexipteryx/repos","events_url":"https://api.github.com/orgs/coderwall-epidexipteryx/events","members_url":"https://api.github.com/orgs/coderwall-epidexipteryx/members{/member}","public_members_url":"https://api.github.com/orgs/coderwall-epidexipteryx/public_members{/member}","avatar_url":"https://avatars.githubusercontent.com/u/3080333","name":"Epidexipteryx","company":null,"blog":"https://coderwall.com/gh","location":"Honorary members of the Epidexipteryx achievement ","email":"support@coderwall.com","public_repos":1,"public_gists":0,"followers":0,"following":0,"html_url":"https://github.com/coderwall-epidexipteryx","created_at":"2012-12-19T11:31:05Z","updated_at":"2013-10-15T14:07:00Z","type":"Organization"}}] + diff --git a/lib/github/tests/ReplayData/AuthenticatedUser.testGetUserIssues.txt b/lib/github/tests/ReplayData/AuthenticatedUser.testGetUserIssues.txt new file mode 100644 index 0000000000..14979e98bc --- /dev/null +++ b/lib/github/tests/ReplayData/AuthenticatedUser.testGetUserIssues.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/issues +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4983'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '68462'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 17 May 2013 11:20:54 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"16804c53098398def5970814e79a2cf5"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 17 May 2013 11:45:16 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/166","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/166/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/166/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/166/events","html_url":"https://github.com/jacquev6/PyGithub/issues/166","id":14447880,"number":166,"title":"Complete listing of issues","user":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"open","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/25","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/25/labels","id":318564,"number":25,"title":"Version 1.15.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":3,"closed_issues":0,"state":"open","created_at":"2013-04-22T20:31:42Z","updated_at":"2013-05-17T11:20:54Z","due_on":null},"comments":0,"created_at":"2013-05-17T11:20:54Z","updated_at":"2013-05-17T11:20:54Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"The three APIs described in http://developer.github.com/v3/issues/#list-issues are not fully covered in PyGithub.\r\n\r\nThis was reported by mail by Daehyok Shin"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/157","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/157/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/157/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/157/events","html_url":"https://github.com/jacquev6/PyGithub/issues/157","id":13505356,"number":157,"title":"Publish version 1.15.0","user":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"}],"state":"open","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/25","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/25/labels","id":318564,"number":25,"title":"Version 1.15.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":3,"closed_issues":0,"state":"open","created_at":"2013-04-22T20:31:42Z","updated_at":"2013-05-17T11:20:54Z","due_on":null},"comments":3,"created_at":"2013-04-22T20:32:35Z","updated_at":"2013-04-29T08:46:39Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":""},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/152","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/152/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/152/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/152/events","html_url":"https://github.com/jacquev6/PyGithub/issues/152","id":12541184,"number":152,"title":"How to work with the GithubException object","user":{"login":"pconrad","id":1119017,"avatar_url":"https://secure.gravatar.com/avatar/6ede7481097854b3ad4841f745fcc487?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"6ede7481097854b3ad4841f745fcc487","url":"https://api.github.com/users/pconrad","html_url":"https://github.com/pconrad","followers_url":"https://api.github.com/users/pconrad/followers","following_url":"https://api.github.com/users/pconrad/following{/other_user}","gists_url":"https://api.github.com/users/pconrad/gists{/gist_id}","starred_url":"https://api.github.com/users/pconrad/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pconrad/subscriptions","organizations_url":"https://api.github.com/users/pconrad/orgs","repos_url":"https://api.github.com/users/pconrad/repos","events_url":"https://api.github.com/users/pconrad/events{/privacy}","received_events_url":"https://api.github.com/users/pconrad/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}],"state":"open","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/25","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/25/labels","id":318564,"number":25,"title":"Version 1.15.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":3,"closed_issues":0,"state":"open","created_at":"2013-04-22T20:31:42Z","updated_at":"2013-05-17T11:20:54Z","due_on":null},"comments":10,"created_at":"2013-03-27T23:17:29Z","updated_at":"2013-05-04T08:00:03Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"I have a question about how to work with the GithubException object\r\n\r\nSample Code:\r\n try:\r\n team = org.create_team(teamName,\r\n [],\r\n \"push\");\r\n except GithubException as e:\r\n print (e)\r\n\r\nWhen I print (e) I get:\r\n\r\n 422 {u'message': u'Validation Failed', u'errors': [{u'field': u'name', u'code': u'already_exists', u'resource': u'Team'}]}\r\n\r\nWhat I'd like to be able to do is see the list of attributes and member functions of the GithubException object so that I can pull out various stuff to check for particular events... but I can'f find this in the documentation for the PyGithub API. Maybe I just need to understand better the relationship between the PyGithub API and the underlying github RESTful API.\r\n\r\nFrom the source, it appears that there are two properties of the GithubException object:\r\n\r\nhttps://github.com/jacquev6/PyGithub/blob/master/github/GithubException.py\r\n\r\n status\r\n data\r\n\r\nand putting that together with the output, it appears the 422 is the status (perhaps returned by the API?), and the data is a dictionary object (perhaps an encoding of the JSON that got returned?) but these are only guesses. \r\n\r\nIt appears that the only place GithubException occurs in the source is in Requester.py---and this tends to confirm my guesses.\r\n\r\nIs there somewhere in the documentation for the github API itself where one can find the keys that one would expect to find in the JSON object, i.e. in this case \"message\", \"errors\", and then within \"errors\", \"field\", \"code\", \"and \"resource\"? \r\n\r\nFrom trial and error guesswork, I settled on code like this, but this feels \"hacky---I'd be more comfortable if I knew whether I was doing this right...\r\n\r\n team = False # Sentinel to see if it succeeded or failed\r\n try:\r\n team = org.create_team(teamName,\r\n [],\r\n \"push\");\r\n print(\" team {0} created...\".format(teamName),end='')\r\n except GithubException as e:\r\n if (e.data['errors'][0]['code']=='already_exists'):\r\n print(\" team {0} already exists...\".format(teamName),end='') \r\n else:\r\n print (e)\r\n\r\n if (team != False):\r\n # do something with team...\r\n\r\nAm I on the right track?\r\n"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/136","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/136/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/136/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/136/events","html_url":"https://github.com/jacquev6/PyGithub/issues/136","id":10586808,"number":136,"title":"Dynamically create a NamedUser or Organization where needed","user":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"}],"state":"open","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/20","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/20/labels","id":258798,"number":20,"title":"Version 2.0","description":"First set of breaking changes","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":1,"closed_issues":0,"state":"open","created_at":"2013-02-03T17:39:55Z","updated_at":"2013-02-03T17:43:22Z","due_on":null},"comments":0,"created_at":"2013-02-03T17:43:22Z","updated_at":"2013-02-03T17:43:22Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"For example, PullRequest.head.user can be an Organization (see tests reproducing #131)"},{"url":"https://api.github.com/repos/jacquev6/IpMap/issues/4","labels_url":"https://api.github.com/repos/jacquev6/IpMap/issues/4/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/IpMap/issues/4/comments","events_url":"https://api.github.com/repos/jacquev6/IpMap/issues/4/events","html_url":"https://github.com/jacquev6/IpMap/issues/4","id":6741461,"number":4,"title":"Filter by geography","user":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"labels":[],"state":"open","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":null,"comments":0,"created_at":"2012-09-09T10:05:47Z","updated_at":"2012-09-09T10:05:47Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":4835930,"name":"IpMap","full_name":"jacquev6/IpMap","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/IpMap","description":"HTML5 browsable IP map inspired by http://xkcd.com/195/","fork":false,"url":"https://api.github.com/repos/jacquev6/IpMap","forks_url":"https://api.github.com/repos/jacquev6/IpMap/forks","keys_url":"https://api.github.com/repos/jacquev6/IpMap/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/IpMap/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/IpMap/teams","hooks_url":"https://api.github.com/repos/jacquev6/IpMap/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/IpMap/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/IpMap/events","assignees_url":"https://api.github.com/repos/jacquev6/IpMap/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/IpMap/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/IpMap/tags","blobs_url":"https://api.github.com/repos/jacquev6/IpMap/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/IpMap/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/IpMap/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/IpMap/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/IpMap/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/IpMap/languages","stargazers_url":"https://api.github.com/repos/jacquev6/IpMap/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/IpMap/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/IpMap/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/IpMap/subscription","commits_url":"https://api.github.com/repos/jacquev6/IpMap/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/IpMap/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/IpMap/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/IpMap/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/IpMap/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/IpMap/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/IpMap/merges","archive_url":"https://api.github.com/repos/jacquev6/IpMap/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/IpMap/downloads","issues_url":"https://api.github.com/repos/jacquev6/IpMap/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/IpMap/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/IpMap/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/IpMap/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/IpMap/labels{/name}","created_at":"2012-06-29T18:54:23Z","updated_at":"2013-01-10T21:36:10Z","pushed_at":"2012-09-09T19:35:42Z","git_url":"git://github.com/jacquev6/IpMap.git","ssh_url":"git@github.com:jacquev6/IpMap.git","clone_url":"https://github.com/jacquev6/IpMap.git","svn_url":"https://github.com/jacquev6/IpMap","homepage":"http://vincent-jacques.net/IpMap","size":144,"watchers_count":0,"language":"JavaScript","has_issues":true,"has_downloads":true,"has_wiki":false,"forks_count":0,"mirror_url":null,"open_issues_count":4,"forks":0,"open_issues":4,"watchers":0,"master_branch":"master","default_branch":"master"},"body":""},{"url":"https://api.github.com/repos/jacquev6/IpMap/issues/3","labels_url":"https://api.github.com/repos/jacquev6/IpMap/issues/3/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/IpMap/issues/3/comments","events_url":"https://api.github.com/repos/jacquev6/IpMap/issues/3/events","html_url":"https://github.com/jacquev6/IpMap/issues/3","id":6741457,"number":3,"title":"Display more detailed information in each square","user":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"labels":[],"state":"open","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":null,"comments":0,"created_at":"2012-09-09T10:04:46Z","updated_at":"2012-09-09T10:04:46Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":4835930,"name":"IpMap","full_name":"jacquev6/IpMap","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/IpMap","description":"HTML5 browsable IP map inspired by http://xkcd.com/195/","fork":false,"url":"https://api.github.com/repos/jacquev6/IpMap","forks_url":"https://api.github.com/repos/jacquev6/IpMap/forks","keys_url":"https://api.github.com/repos/jacquev6/IpMap/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/IpMap/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/IpMap/teams","hooks_url":"https://api.github.com/repos/jacquev6/IpMap/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/IpMap/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/IpMap/events","assignees_url":"https://api.github.com/repos/jacquev6/IpMap/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/IpMap/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/IpMap/tags","blobs_url":"https://api.github.com/repos/jacquev6/IpMap/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/IpMap/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/IpMap/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/IpMap/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/IpMap/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/IpMap/languages","stargazers_url":"https://api.github.com/repos/jacquev6/IpMap/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/IpMap/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/IpMap/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/IpMap/subscription","commits_url":"https://api.github.com/repos/jacquev6/IpMap/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/IpMap/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/IpMap/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/IpMap/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/IpMap/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/IpMap/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/IpMap/merges","archive_url":"https://api.github.com/repos/jacquev6/IpMap/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/IpMap/downloads","issues_url":"https://api.github.com/repos/jacquev6/IpMap/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/IpMap/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/IpMap/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/IpMap/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/IpMap/labels{/name}","created_at":"2012-06-29T18:54:23Z","updated_at":"2013-01-10T21:36:10Z","pushed_at":"2012-09-09T19:35:42Z","git_url":"git://github.com/jacquev6/IpMap.git","ssh_url":"git@github.com:jacquev6/IpMap.git","clone_url":"https://github.com/jacquev6/IpMap.git","svn_url":"https://github.com/jacquev6/IpMap","homepage":"http://vincent-jacques.net/IpMap","size":144,"watchers_count":0,"language":"JavaScript","has_issues":true,"has_downloads":true,"has_wiki":false,"forks_count":0,"mirror_url":null,"open_issues_count":4,"forks":0,"open_issues":4,"watchers":0,"master_branch":"master","default_branch":"master"},"body":"A single solid color in each square doesn't allow to easily go down to a small subset of addresses."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/71","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/71/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/71/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/71/events","html_url":"https://github.com/jacquev6/PyGithub/issues/71","id":6727331,"number":71,"title":"Implement multi-step release of starring/watching","user":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"}],"state":"open","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/18","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/18/labels","id":234629,"number":18,"title":"Medium term wish list","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":2,"closed_issues":1,"state":"open","created_at":"2012-12-25T12:25:45Z","updated_at":"2013-03-22T17:42:44Z","due_on":null},"comments":0,"created_at":"2012-09-08T00:00:02Z","updated_at":"2012-12-25T12:25:58Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"See http://developer.github.com/changes/2012-9-5-watcher-api/ \n\nWe have to modify methods related to watchers to allow them to manage subscriptions."},{"url":"https://api.github.com/repos/jacquev6/IpMap/issues/2","labels_url":"https://api.github.com/repos/jacquev6/IpMap/issues/2/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/IpMap/issues/2/comments","events_url":"https://api.github.com/repos/jacquev6/IpMap/issues/2/events","html_url":"https://github.com/jacquev6/IpMap/issues/2","id":5641572,"number":2,"title":"Change the mouse cursor to be a hand","user":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"labels":[],"state":"open","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":null,"comments":0,"created_at":"2012-07-16T15:14:20Z","updated_at":"2012-07-16T15:14:20Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":4835930,"name":"IpMap","full_name":"jacquev6/IpMap","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/IpMap","description":"HTML5 browsable IP map inspired by http://xkcd.com/195/","fork":false,"url":"https://api.github.com/repos/jacquev6/IpMap","forks_url":"https://api.github.com/repos/jacquev6/IpMap/forks","keys_url":"https://api.github.com/repos/jacquev6/IpMap/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/IpMap/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/IpMap/teams","hooks_url":"https://api.github.com/repos/jacquev6/IpMap/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/IpMap/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/IpMap/events","assignees_url":"https://api.github.com/repos/jacquev6/IpMap/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/IpMap/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/IpMap/tags","blobs_url":"https://api.github.com/repos/jacquev6/IpMap/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/IpMap/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/IpMap/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/IpMap/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/IpMap/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/IpMap/languages","stargazers_url":"https://api.github.com/repos/jacquev6/IpMap/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/IpMap/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/IpMap/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/IpMap/subscription","commits_url":"https://api.github.com/repos/jacquev6/IpMap/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/IpMap/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/IpMap/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/IpMap/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/IpMap/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/IpMap/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/IpMap/merges","archive_url":"https://api.github.com/repos/jacquev6/IpMap/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/IpMap/downloads","issues_url":"https://api.github.com/repos/jacquev6/IpMap/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/IpMap/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/IpMap/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/IpMap/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/IpMap/labels{/name}","created_at":"2012-06-29T18:54:23Z","updated_at":"2013-01-10T21:36:10Z","pushed_at":"2012-09-09T19:35:42Z","git_url":"git://github.com/jacquev6/IpMap.git","ssh_url":"git@github.com:jacquev6/IpMap.git","clone_url":"https://github.com/jacquev6/IpMap.git","svn_url":"https://github.com/jacquev6/IpMap","homepage":"http://vincent-jacques.net/IpMap","size":144,"watchers_count":0,"language":"JavaScript","has_issues":true,"has_downloads":true,"has_wiki":false,"forks_count":0,"mirror_url":null,"open_issues_count":4,"forks":0,"open_issues":4,"watchers":0,"master_branch":"master","default_branch":"master"},"body":""}] + diff --git a/lib/github/tests/ReplayData/AuthenticatedUser.testGetUserIssuesWithAllArguments.txt b/lib/github/tests/ReplayData/AuthenticatedUser.testGetUserIssuesWithAllArguments.txt new file mode 100644 index 0000000000..be03962155 --- /dev/null +++ b/lib/github/tests/ReplayData/AuthenticatedUser.testGetUserIssuesWithAllArguments.txt @@ -0,0 +1,55 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4988'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '1496'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 17 May 2013 11:20:54 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"16804c53098398def5970814e79a2cf5"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 17 May 2013 11:44:50 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8')] +{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","name":"Vincent Jacques","company":"Criteo","blog":"http://vincent-jacques.net","location":"Paris, France","email":"vincent@vincent-jacques.net","hireable":false,"bio":"","public_repos":16,"followers":27,"following":39,"created_at":"2010-07-09T06:10:06Z","updated_at":"2013-05-17T11:20:54Z","public_gists":3,"total_private_repos":4,"owned_private_repos":4,"disk_usage":17188,"collaborators":1,"plan":{"name":"micro","space":614400,"collaborators":1,"private_repos":5},"private_gists":6,"site_admin":false} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4987'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '4663'), ('server', 'GitHub.com'), ('last-modified', 'Mon, 13 May 2013 21:44:12 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"2184e9e10f0a22eb0f1eceed39d728da"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 17 May 2013 11:44:51 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8')] +{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master","permissions":{"admin":true,"push":true,"pull":true},"network_count":55} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/labels/Requested%20by%20user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4986'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '125'), ('server', 'GitHub.com'), ('last-modified', 'Wed, 12 Sep 2012 18:38:55 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"4255e5086bc19b2096e05eb6dad041ee"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 17 May 2013 11:44:51 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"} + +https +GET +api.github.com +None +/issues?sort=comments&direction=asc&since=2012-05-28T23%3A00%3A00Z&labels=Requested+by+user&filter=assigned&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4985'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '276385'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 17 May 2013 11:20:54 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last"'), ('etag', '"16804c53098398def5970814e79a2cf5"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 17 May 2013 11:44:53 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/81","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/81/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/81/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/81/events","html_url":"https://github.com/jacquev6/PyGithub/issues/81","id":6816576,"number":81,"title":"Complete Legacy.convertXxx","user":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/12","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/12/labels","id":172499,"number":12,"title":"Version 1.7","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":7,"state":"closed","created_at":"2012-09-10T04:25:53Z","updated_at":"2012-09-12T19:40:27Z","due_on":"2012-09-14T07:00:00Z"},"comments":0,"created_at":"2012-09-12T12:14:46Z","updated_at":"2012-09-12T18:40:47Z","closed_at":"2012-09-12T18:40:47Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Legacy.convertXxx discards some useful information and this leads to API calls that could be avoided."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/116","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/116/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/116/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/116/events","html_url":"https://github.com/jacquev6/PyGithub/issues/116","id":8495415,"number":116,"title":"Assertion failure on big numbers","user":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/17","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/17/labels","id":215837,"number":17,"title":"Version 1.9.1","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":2,"state":"closed","created_at":"2012-11-20T07:36:46Z","updated_at":"2012-11-20T18:42:30Z","due_on":null},"comments":0,"created_at":"2012-11-20T07:35:10Z","updated_at":"2012-11-20T18:42:08Z","closed_at":"2012-11-20T18:42:08Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"(Issue reported by private mail)\n\nIn some Github Enterprise install, there can be a plan with 999999999999 private repositories. This doesn't fit in an int, but in a long. The assertion `isinstance(attributes[\"private_repos\"], int)` on https://github.com/jacquev6/PyGithub/blob/master/github/Plan.py#L50 fails.\n\nI will replace all occurrences of `isinstance(xxx, int)` by `isinstance(x, (int, long))`."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/86","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/86/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/86/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/86/events","html_url":"https://github.com/jacquev6/PyGithub/issues/86","id":6889934,"number":86,"title":"Include tests in pypi tarball","user":{"login":"koobs","id":1011612,"avatar_url":"https://secure.gravatar.com/avatar/a083cdd9096b4a5623a298d6b4d590a8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"a083cdd9096b4a5623a298d6b4d590a8","url":"https://api.github.com/users/koobs","html_url":"https://github.com/koobs","followers_url":"https://api.github.com/users/koobs/followers","following_url":"https://api.github.com/users/koobs/following{/other_user}","gists_url":"https://api.github.com/users/koobs/gists{/gist_id}","starred_url":"https://api.github.com/users/koobs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/koobs/subscriptions","organizations_url":"https://api.github.com/users/koobs/orgs","repos_url":"https://api.github.com/users/koobs/repos","events_url":"https://api.github.com/users/koobs/events{/privacy}","received_events_url":"https://api.github.com/users/koobs/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/13","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/13/labels","id":174087,"number":13,"title":"Version 1.8.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":6,"state":"closed","created_at":"2012-09-12T19:53:14Z","updated_at":"2012-09-30T18:12:03Z","due_on":"2012-09-30T07:00:00Z"},"comments":1,"created_at":"2012-09-14T23:22:10Z","updated_at":"2012-09-17T16:57:45Z","closed_at":"2012-09-17T16:57:45Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Will help QA and regression test the devel/py-pygithub FreeBSD port"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/114","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/114/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/114/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/114/events","html_url":"https://github.com/jacquev6/PyGithub/issues/114","id":8339699,"number":114,"title":"typo in ReadMe.md","user":{"login":"tymofij","id":123786,"avatar_url":"https://secure.gravatar.com/avatar/253b410d7a41999c754970a3aa34834e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"253b410d7a41999c754970a3aa34834e","url":"https://api.github.com/users/tymofij","html_url":"https://github.com/tymofij","followers_url":"https://api.github.com/users/tymofij/followers","following_url":"https://api.github.com/users/tymofij/following{/other_user}","gists_url":"https://api.github.com/users/tymofij/gists{/gist_id}","starred_url":"https://api.github.com/users/tymofij/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tymofij/subscriptions","organizations_url":"https://api.github.com/users/tymofij/orgs","repos_url":"https://api.github.com/users/tymofij/repos","events_url":"https://api.github.com/users/tymofij/events{/privacy}","received_events_url":"https://api.github.com/users/tymofij/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/14","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/14/labels","id":189891,"number":14,"title":"Version 1.9.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":9,"state":"closed","created_at":"2012-10-05T08:15:01Z","updated_at":"2012-11-19T20:52:01Z","due_on":null},"comments":1,"created_at":"2012-11-13T23:15:11Z","updated_at":"2012-11-14T07:58:02Z","closed_at":"2012-11-14T07:58:00Z","pull_request":{"html_url":"https://github.com/jacquev6/PyGithub/pull/114","diff_url":"https://github.com/jacquev6/PyGithub/pull/114.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/114.patch"},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":""},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/111","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/111/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/111/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/111/events","html_url":"https://github.com/jacquev6/PyGithub/issues/111","id":8075253,"number":111,"title":"Add 'assignee' attribute to PullRequest","user":{"login":"mstead","id":218800,"avatar_url":"https://secure.gravatar.com/avatar/cff2de4d58af775ba0a07a5332b57889?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"cff2de4d58af775ba0a07a5332b57889","url":"https://api.github.com/users/mstead","html_url":"https://github.com/mstead","followers_url":"https://api.github.com/users/mstead/followers","following_url":"https://api.github.com/users/mstead/following{/other_user}","gists_url":"https://api.github.com/users/mstead/gists{/gist_id}","starred_url":"https://api.github.com/users/mstead/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mstead/subscriptions","organizations_url":"https://api.github.com/users/mstead/orgs","repos_url":"https://api.github.com/users/mstead/repos","events_url":"https://api.github.com/users/mstead/events{/privacy}","received_events_url":"https://api.github.com/users/mstead/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/14","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/14/labels","id":189891,"number":14,"title":"Version 1.9.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":9,"state":"closed","created_at":"2012-10-05T08:15:01Z","updated_at":"2012-11-19T20:52:01Z","due_on":null},"comments":1,"created_at":"2012-11-03T00:33:18Z","updated_at":"2012-11-03T08:28:14Z","closed_at":"2012-11-03T08:25:59Z","pull_request":{"html_url":"https://github.com/jacquev6/PyGithub/pull/111","diff_url":"https://github.com/jacquev6/PyGithub/pull/111.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/111.patch"},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"It seems as though this may have been added to\r\nthe github API and was not being included in the\r\nPullRequest object.\r\n\r\nI stumbled upon this when attempting to get the current\r\nassignee of a pull request while playing with the API,\r\nand noticed I could not get it via PyGithub. I need this\r\nfor a project I'm working on.\r\n\r\nThis verifies that the attribute's existence in github's API:\r\n```curl -i \"https://api.github.com/repos/jacquev6/PyGithub/pulls/31\" | grep assignee```\r\nOutput:\r\n```\"assignee\": null,```\r\n\r\n\r\nI was also going to update the tests to include the attribute,\r\nbut I wasn't able to set the assignee on the test data.\r\n"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/110","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/110/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/110/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/110/events","html_url":"https://github.com/jacquev6/PyGithub/issues/110","id":8033963,"number":110,"title":"Add encoding comment to source files","user":{"login":"Zearin","id":630124,"avatar_url":"https://secure.gravatar.com/avatar/cb9730ee11d50fa2db955d687c653971?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"cb9730ee11d50fa2db955d687c653971","url":"https://api.github.com/users/Zearin","html_url":"https://github.com/Zearin","followers_url":"https://api.github.com/users/Zearin/followers","following_url":"https://api.github.com/users/Zearin/following{/other_user}","gists_url":"https://api.github.com/users/Zearin/gists{/gist_id}","starred_url":"https://api.github.com/users/Zearin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Zearin/subscriptions","organizations_url":"https://api.github.com/users/Zearin/orgs","repos_url":"https://api.github.com/users/Zearin/repos","events_url":"https://api.github.com/users/Zearin/events{/privacy}","received_events_url":"https://api.github.com/users/Zearin/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/14","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/14/labels","id":189891,"number":14,"title":"Version 1.9.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":9,"state":"closed","created_at":"2012-10-05T08:15:01Z","updated_at":"2012-11-19T20:52:01Z","due_on":null},"comments":1,"created_at":"2012-11-01T15:45:03Z","updated_at":"2012-11-03T08:28:32Z","closed_at":"2012-11-03T08:07:37Z","pull_request":{"html_url":"https://github.com/jacquev6/PyGithub/pull/110","diff_url":"https://github.com/jacquev6/PyGithub/pull/110.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/110.patch"},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"This is a minor thing. It’s a convention, not a rule (obviously)—but it’s also a best practice.\r\n\r\nMany text editors look for this kind of comment as the first line—or second line, if there is a shebang (the `#!/usr/bin/env python`, or whatever else)—and make use of this to determine the file’s encoding."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/118","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/118/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/118/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/118/events","html_url":"https://github.com/jacquev6/PyGithub/issues/118","id":9089893,"number":118,"title":"Modify setup.py to allow .egg distribution of PyGithub","user":{"login":"gregwjacobs","id":1749292,"avatar_url":"https://secure.gravatar.com/avatar/8707d63a44f6cc04e58a655f3df3105c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8707d63a44f6cc04e58a655f3df3105c","url":"https://api.github.com/users/gregwjacobs","html_url":"https://github.com/gregwjacobs","followers_url":"https://api.github.com/users/gregwjacobs/followers","following_url":"https://api.github.com/users/gregwjacobs/following{/other_user}","gists_url":"https://api.github.com/users/gregwjacobs/gists{/gist_id}","starred_url":"https://api.github.com/users/gregwjacobs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gregwjacobs/subscriptions","organizations_url":"https://api.github.com/users/gregwjacobs/orgs","repos_url":"https://api.github.com/users/gregwjacobs/repos","events_url":"https://api.github.com/users/gregwjacobs/events{/privacy}","received_events_url":"https://api.github.com/users/gregwjacobs/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/16","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/16/labels","id":215570,"number":16,"title":"Version 1.10.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":10,"state":"closed","created_at":"2012-11-19T20:02:45Z","updated_at":"2012-12-25T12:25:01Z","due_on":null},"comments":1,"created_at":"2012-12-07T14:42:13Z","updated_at":"2012-12-21T19:45:37Z","closed_at":"2012-12-21T19:45:37Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"In setup.py change:\n\n`from distutils.core import setup, Command`\n\nto:\n\n`from setuptools import setup, Command, find_packages`\n\nThus users can also distribute or use PyGithub in as an .egg via this command:\n\n`python setup.py bdist_egg`\n\nAFAIK this will not impact the remainder of the existing use of setup.py?"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/123","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/123/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/123/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/123/events","html_url":"https://github.com/jacquev6/PyGithub/issues/123","id":9489725,"number":123,"title":"Repository.get_contents does not accept ref=branch","user":{"login":"fixxxeruk","id":1074943,"avatar_url":"https://secure.gravatar.com/avatar/de3cd5a76ce1ef2cdcf7060068d693e0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"de3cd5a76ce1ef2cdcf7060068d693e0","url":"https://api.github.com/users/fixxxeruk","html_url":"https://github.com/fixxxeruk","followers_url":"https://api.github.com/users/fixxxeruk/followers","following_url":"https://api.github.com/users/fixxxeruk/following{/other_user}","gists_url":"https://api.github.com/users/fixxxeruk/gists{/gist_id}","starred_url":"https://api.github.com/users/fixxxeruk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fixxxeruk/subscriptions","organizations_url":"https://api.github.com/users/fixxxeruk/orgs","repos_url":"https://api.github.com/users/fixxxeruk/repos","events_url":"https://api.github.com/users/fixxxeruk/events{/privacy}","received_events_url":"https://api.github.com/users/fixxxeruk/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/16","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/16/labels","id":215570,"number":16,"title":"Version 1.10.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":10,"state":"closed","created_at":"2012-11-19T20:02:45Z","updated_at":"2012-12-25T12:25:01Z","due_on":null},"comments":1,"created_at":"2012-12-23T11:59:53Z","updated_at":"2012-12-24T13:26:20Z","closed_at":"2012-12-24T13:26:20Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"As per the documentation:\r\nhttp://developer.github.com/v3/repos/contents/\r\n\r\nThe Get Contents GitHub API accepts an optional parameter `ref` which allows the user to specify the branch. Otherwise this parameter defaults to `master`.\r\n\r\nPlease implement this optional parameter on Repository.get_contents, which currently only accepts a single parameter to specify the path."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/144","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/144/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/144/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/144/events","html_url":"https://github.com/jacquev6/PyGithub/issues/144","id":11746141,"number":144,"title":"Store original JSON response for objects and expose it for document-oriented storage","user":{"login":"ptwobrussell","id":98668,"avatar_url":"https://secure.gravatar.com/avatar/322a50ffdb98591460f05015770b7adb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"322a50ffdb98591460f05015770b7adb","url":"https://api.github.com/users/ptwobrussell","html_url":"https://github.com/ptwobrussell","followers_url":"https://api.github.com/users/ptwobrussell/followers","following_url":"https://api.github.com/users/ptwobrussell/following{/other_user}","gists_url":"https://api.github.com/users/ptwobrussell/gists{/gist_id}","starred_url":"https://api.github.com/users/ptwobrussell/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ptwobrussell/subscriptions","organizations_url":"https://api.github.com/users/ptwobrussell/orgs","repos_url":"https://api.github.com/users/ptwobrussell/repos","events_url":"https://api.github.com/users/ptwobrussell/events{/privacy}","received_events_url":"https://api.github.com/users/ptwobrussell/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/23","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/23/labels","id":282556,"number":23,"title":"Version 1.13.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":6,"state":"closed","created_at":"2013-03-07T08:43:38Z","updated_at":"2013-03-22T17:44:33Z","due_on":null},"comments":1,"created_at":"2013-03-07T04:54:23Z","updated_at":"2013-03-21T20:57:54Z","closed_at":"2013-03-21T20:57:54Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"I'd like to be able to serialize a GithubObject and get back the original JSON that was used to initially construct it for purposes of serializing out to a document oriented store like MongoDB where this representation would be a natural (and highly portable) fit for storage. From looking at how objects are constructed, it seems as though it would be pretty trivial to keep around the JSON and expose it as necessary as opposed to just discarding it.\r\n\r\nPerhaps `__str__` could return the readable JSON representation and `__repr__` could contain what currently happens from `__str__` (the unambiguous object with its address)?\r\n\r\nIf there are concerns over memory, perhaps this could be a configurable option?\r\n\r\nAt any rate, I could help put together the patch but would first like to get your thoughts and whether or not you're open to merging in such a pull request"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/47","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/47/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/47/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/47/events","html_url":"https://github.com/jacquev6/PyGithub/issues/47","id":5152384,"number":47,"title":"Just a small patch to make PyGithub compatible with Python 2.5","user":{"login":"pmuilu","id":691799,"avatar_url":"https://secure.gravatar.com/avatar/3aa27c0add742f542848af3b8a9e980c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3aa27c0add742f542848af3b8a9e980c","url":"https://api.github.com/users/pmuilu","html_url":"https://github.com/pmuilu","followers_url":"https://api.github.com/users/pmuilu/followers","following_url":"https://api.github.com/users/pmuilu/following{/other_user}","gists_url":"https://api.github.com/users/pmuilu/gists{/gist_id}","starred_url":"https://api.github.com/users/pmuilu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pmuilu/subscriptions","organizations_url":"https://api.github.com/users/pmuilu/orgs","repos_url":"https://api.github.com/users/pmuilu/repos","events_url":"https://api.github.com/users/pmuilu/events{/privacy}","received_events_url":"https://api.github.com/users/pmuilu/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":null,"comments":2,"created_at":"2012-06-19T17:58:29Z","updated_at":"2012-06-20T21:06:08Z","closed_at":"2012-06-20T20:08:20Z","pull_request":{"html_url":"https://github.com/jacquev6/PyGithub/pull/47","diff_url":"https://github.com/jacquev6/PyGithub/pull/47.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/47.patch"},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Seems to work otherwise."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/48","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/48/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/48/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/48/events","html_url":"https://github.com/jacquev6/PyGithub/issues/48","id":5177381,"number":48,"title":"data_files install location","user":{"login":"malexw","id":577322,"avatar_url":"https://secure.gravatar.com/avatar/13a30f9924fa2bd918cbb8d06dd8b55a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"13a30f9924fa2bd918cbb8d06dd8b55a","url":"https://api.github.com/users/malexw","html_url":"https://github.com/malexw","followers_url":"https://api.github.com/users/malexw/followers","following_url":"https://api.github.com/users/malexw/following{/other_user}","gists_url":"https://api.github.com/users/malexw/gists{/gist_id}","starred_url":"https://api.github.com/users/malexw/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/malexw/subscriptions","organizations_url":"https://api.github.com/users/malexw/orgs","repos_url":"https://api.github.com/users/malexw/repos","events_url":"https://api.github.com/users/malexw/events{/privacy}","received_events_url":"https://api.github.com/users/malexw/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/7","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/7/labels","id":140183,"number":7,"title":"Version 1.3","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":4,"state":"closed","created_at":"2012-07-03T07:32:39Z","updated_at":"2012-07-13T20:01:15Z","due_on":"2012-07-16T07:00:00Z"},"comments":2,"created_at":"2012-06-20T18:33:44Z","updated_at":"2012-07-13T19:20:49Z","closed_at":"2012-07-13T19:20:49Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Installing on OS X 10.7 via:\n $ pip install PyGithub\n\n(Using the Python 2.7 package from python.org, and not OS X's python2.6 flavour)\n\nGot an error message:\n running install_data\n copying ReadMe.md -> /System/Library/Frameworks/Python.framework/Versions/2.7/\n error: /System/Library/Frameworks/Python.framework/Versions/2.7/ReadMe.md: Permission denied\n\nWhile I can use sudo to make the error message go away, I don't think `/System/Library/Frameworks/Python.framework/Versions/2.7/` is the correct location for the documentation. I don't know much about writing setup.py files, but after looking at gunicorn, flask, and numpy, it doesn't look like any of them use data_files for installing documentation."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/57","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/57/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/57/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/57/events","html_url":"https://github.com/jacquev6/PyGithub/issues/57","id":5783131,"number":57,"title":"Allows connection to GitHub Enterprise installs on local URLs","user":{"login":"engie","id":1247,"avatar_url":"https://secure.gravatar.com/avatar/37a932b3abe212892173784736ed6b12?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"37a932b3abe212892173784736ed6b12","url":"https://api.github.com/users/engie","html_url":"https://github.com/engie","followers_url":"https://api.github.com/users/engie/followers","following_url":"https://api.github.com/users/engie/following{/other_user}","gists_url":"https://api.github.com/users/engie/gists{/gist_id}","starred_url":"https://api.github.com/users/engie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/engie/subscriptions","organizations_url":"https://api.github.com/users/engie/orgs","repos_url":"https://api.github.com/users/engie/repos","events_url":"https://api.github.com/users/engie/events{/privacy}","received_events_url":"https://api.github.com/users/engie/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/8","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/8/labels","id":150933,"number":8,"title":"Version 1.4","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":3,"state":"closed","created_at":"2012-07-24T16:04:28Z","updated_at":"2012-09-11T18:52:13Z","due_on":"2012-08-05T07:00:00Z"},"comments":2,"created_at":"2012-07-23T16:44:06Z","updated_at":"2012-08-04T05:59:15Z","closed_at":"2012-08-04T05:59:15Z","pull_request":{"html_url":"https://github.com/jacquev6/PyGithub/pull/57","diff_url":"https://github.com/jacquev6/PyGithub/pull/57.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/57.patch"},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"This patch allows you to use the module with local (i.e. Enterprise) GitHub installs. Passes the tests here, defaults to connecting to api.github.com."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/62","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/62/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/62/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/62/events","html_url":"https://github.com/jacquev6/PyGithub/issues/62","id":6454054,"number":62,"title":"Add timeout option","user":{"login":"xobb1t","id":344095,"avatar_url":"https://secure.gravatar.com/avatar/ae8a2af3de601885a14bb71240e5d1a6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"ae8a2af3de601885a14bb71240e5d1a6","url":"https://api.github.com/users/xobb1t","html_url":"https://github.com/xobb1t","followers_url":"https://api.github.com/users/xobb1t/followers","following_url":"https://api.github.com/users/xobb1t/following{/other_user}","gists_url":"https://api.github.com/users/xobb1t/gists{/gist_id}","starred_url":"https://api.github.com/users/xobb1t/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/xobb1t/subscriptions","organizations_url":"https://api.github.com/users/xobb1t/orgs","repos_url":"https://api.github.com/users/xobb1t/repos","events_url":"https://api.github.com/users/xobb1t/events{/privacy}","received_events_url":"https://api.github.com/users/xobb1t/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/9","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/9/labels","id":164586,"number":9,"title":"Version 1.5","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":4,"state":"closed","created_at":"2012-08-23T07:44:21Z","updated_at":"2012-09-05T17:56:28Z","due_on":"2012-09-06T07:00:00Z"},"comments":2,"created_at":"2012-08-25T19:42:13Z","updated_at":"2012-09-05T17:23:47Z","closed_at":"2012-09-05T17:23:47Z","pull_request":{"html_url":"https://github.com/jacquev6/PyGithub/pull/62","diff_url":"https://github.com/jacquev6/PyGithub/pull/62.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/62.patch"},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Add support of `timeout` option. Unfortunately drops python < 2.6 support."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/65","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/65/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/65/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/65/events","html_url":"https://github.com/jacquev6/PyGithub/issues/65","id":6641076,"number":65,"title":"GET /repos/:user/:repo/contents/:path","user":{"login":"berndca","id":466654,"avatar_url":"https://secure.gravatar.com/avatar/4a43f97dc0112d95d8d713e2fd2a983b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"4a43f97dc0112d95d8d713e2fd2a983b","url":"https://api.github.com/users/berndca","html_url":"https://github.com/berndca","followers_url":"https://api.github.com/users/berndca/followers","following_url":"https://api.github.com/users/berndca/following{/other_user}","gists_url":"https://api.github.com/users/berndca/gists{/gist_id}","starred_url":"https://api.github.com/users/berndca/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/berndca/subscriptions","organizations_url":"https://api.github.com/users/berndca/orgs","repos_url":"https://api.github.com/users/berndca/repos","events_url":"https://api.github.com/users/berndca/events{/privacy}","received_events_url":"https://api.github.com/users/berndca/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/10","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/10/labels","id":169989,"number":10,"title":"Version 1.6","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":9,"state":"closed","created_at":"2012-09-04T20:12:30Z","updated_at":"2012-09-08T18:00:28Z","due_on":"2012-09-13T07:00:00Z"},"comments":2,"created_at":"2012-09-04T17:42:29Z","updated_at":"2012-09-08T11:06:18Z","closed_at":"2012-09-08T11:06:18Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"I have not been able to figure out how to access the github API request for GET /repos/:user/:repo/contents/[:path] using PyGithub. Perhaps I'm missing something?\n\nPlease advise.\nThanks, Bernd"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/67","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/67/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/67/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/67/events","html_url":"https://github.com/jacquev6/PyGithub/issues/67","id":6653907,"number":67,"title":"Statuses","user":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/10","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/10/labels","id":169989,"number":10,"title":"Version 1.6","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":9,"state":"closed","created_at":"2012-09-04T20:12:30Z","updated_at":"2012-09-08T18:00:28Z","due_on":"2012-09-13T07:00:00Z"},"comments":2,"created_at":"2012-09-05T06:49:54Z","updated_at":"2012-09-08T11:42:27Z","closed_at":"2012-09-08T11:42:27Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Implement APIs described in http://developer.github.com/v3/repos/statuses/"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/102","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/102/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/102/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/102/events","html_url":"https://github.com/jacquev6/PyGithub/issues/102","id":7331214,"number":102,"title":"get_git_ref does not prepend 'refs'","user":{"login":"simon-weber","id":950506,"avatar_url":"https://secure.gravatar.com/avatar/5ac24ef595f7d1cd016bc3de24f78e60?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5ac24ef595f7d1cd016bc3de24f78e60","url":"https://api.github.com/users/simon-weber","html_url":"https://github.com/simon-weber","followers_url":"https://api.github.com/users/simon-weber/followers","following_url":"https://api.github.com/users/simon-weber/following{/other_user}","gists_url":"https://api.github.com/users/simon-weber/gists{/gist_id}","starred_url":"https://api.github.com/users/simon-weber/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/simon-weber/subscriptions","organizations_url":"https://api.github.com/users/simon-weber/orgs","repos_url":"https://api.github.com/users/simon-weber/repos","events_url":"https://api.github.com/users/simon-weber/events{/privacy}","received_events_url":"https://api.github.com/users/simon-weber/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/15","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/15/labels","id":190819,"number":15,"title":"Version 1.8.1","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":3,"state":"closed","created_at":"2012-10-07T11:01:54Z","updated_at":"2012-10-28T09:46:01Z","due_on":null},"comments":2,"created_at":"2012-10-03T19:02:53Z","updated_at":"2012-10-07T11:06:11Z","closed_at":"2012-10-07T11:06:11Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"The docs say get_git_refs performs `/repos/:user/:repo/git/refs/:ref`, but actually performs `/repos/:user/:repo/git/:ref`. For example:\r\n\r\n```\r\n>>> github.Github().get_user(\"jacquev6\").get_repo(\"PyGithub\").get_git_ref('heads/master')\r\n# => 404, but should work\r\n>>> github.Github().get_user(\"jacquev6\").get_repo(\"PyGithub\").get_git_ref('refs/heads/master')\r\n# => works, but should 404\r\n```\r\n\r\n\r\n\r\n`refs/` is prepended to a provided reference in the Github api: http://developer.github.com/v3/git/refs/#get-a-reference."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/124","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/124/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/124/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/124/events","html_url":"https://github.com/jacquev6/PyGithub/issues/124","id":9489813,"number":124,"title":"Fixed Issue #123: Repository.get_contents does not accept ref=branch","user":{"login":"fixxxeruk","id":1074943,"avatar_url":"https://secure.gravatar.com/avatar/de3cd5a76ce1ef2cdcf7060068d693e0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"de3cd5a76ce1ef2cdcf7060068d693e0","url":"https://api.github.com/users/fixxxeruk","html_url":"https://github.com/fixxxeruk","followers_url":"https://api.github.com/users/fixxxeruk/followers","following_url":"https://api.github.com/users/fixxxeruk/following{/other_user}","gists_url":"https://api.github.com/users/fixxxeruk/gists{/gist_id}","starred_url":"https://api.github.com/users/fixxxeruk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fixxxeruk/subscriptions","organizations_url":"https://api.github.com/users/fixxxeruk/orgs","repos_url":"https://api.github.com/users/fixxxeruk/repos","events_url":"https://api.github.com/users/fixxxeruk/events{/privacy}","received_events_url":"https://api.github.com/users/fixxxeruk/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/16","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/16/labels","id":215570,"number":16,"title":"Version 1.10.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":10,"state":"closed","created_at":"2012-11-19T20:02:45Z","updated_at":"2012-12-25T12:25:01Z","due_on":null},"comments":2,"created_at":"2012-12-23T12:15:06Z","updated_at":"2012-12-25T10:53:21Z","closed_at":"2012-12-25T10:53:21Z","pull_request":{"html_url":"https://github.com/jacquev6/PyGithub/pull/124","diff_url":"https://github.com/jacquev6/PyGithub/pull/124.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/124.patch"},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Tested and validated. This change does not break API compatibility."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/129","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/129/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/129/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/129/events","html_url":"https://github.com/jacquev6/PyGithub/issues/129","id":9776615,"number":129,"title":"Add Suppport For the GitHub Hooks PubSubHub","user":{"login":"s0undt3ch","id":300048,"avatar_url":"https://secure.gravatar.com/avatar/49656fcaeab19bd7ad1d51264ea37e7d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"49656fcaeab19bd7ad1d51264ea37e7d","url":"https://api.github.com/users/s0undt3ch","html_url":"https://github.com/s0undt3ch","followers_url":"https://api.github.com/users/s0undt3ch/followers","following_url":"https://api.github.com/users/s0undt3ch/following{/other_user}","gists_url":"https://api.github.com/users/s0undt3ch/gists{/gist_id}","starred_url":"https://api.github.com/users/s0undt3ch/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/s0undt3ch/subscriptions","organizations_url":"https://api.github.com/users/s0undt3ch/orgs","repos_url":"https://api.github.com/users/s0undt3ch/repos","events_url":"https://api.github.com/users/s0undt3ch/events{/privacy}","received_events_url":"https://api.github.com/users/s0undt3ch/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/19","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/19/labels","id":234630,"number":19,"title":"Version 1.11.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":7,"state":"closed","created_at":"2012-12-25T12:26:40Z","updated_at":"2013-02-07T18:18:31Z","due_on":"2013-02-08T08:00:00Z"},"comments":2,"created_at":"2013-01-08T17:49:50Z","updated_at":"2013-02-05T22:48:01Z","closed_at":"2013-02-05T22:48:01Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Add Suppport For the [GitHub Hooks PubSubHub](http://developer.github.com/v3/repos/hooks/#pubsubhubbub)"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/133","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/133/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/133/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/133/events","html_url":"https://github.com/jacquev6/PyGithub/issues/133","id":10360280,"number":133,"title":"Fix failing get_page function","user":{"login":"llimllib","id":7150,"avatar_url":"https://secure.gravatar.com/avatar/aa7c1350d93036592f58f165318044db?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"aa7c1350d93036592f58f165318044db","url":"https://api.github.com/users/llimllib","html_url":"https://github.com/llimllib","followers_url":"https://api.github.com/users/llimllib/followers","following_url":"https://api.github.com/users/llimllib/following{/other_user}","gists_url":"https://api.github.com/users/llimllib/gists{/gist_id}","starred_url":"https://api.github.com/users/llimllib/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/llimllib/subscriptions","organizations_url":"https://api.github.com/users/llimllib/orgs","repos_url":"https://api.github.com/users/llimllib/repos","events_url":"https://api.github.com/users/llimllib/events{/privacy}","received_events_url":"https://api.github.com/users/llimllib/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/19","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/19/labels","id":234630,"number":19,"title":"Version 1.11.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":7,"state":"closed","created_at":"2012-12-25T12:26:40Z","updated_at":"2013-02-07T18:18:31Z","due_on":"2013-02-08T08:00:00Z"},"comments":2,"created_at":"2013-01-27T22:39:17Z","updated_at":"2013-01-29T17:56:14Z","closed_at":"2013-01-29T17:56:14Z","pull_request":{"html_url":"https://github.com/jacquev6/PyGithub/pull/133","diff_url":"https://github.com/jacquev6/PyGithub/pull/133.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/133.patch"},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"* if firstParams was None, PaginatedList was calling dict(None)\r\n which fails with a TypeError. If firstParams is None, just use\r\n an empty tuple, which dict() handles properly"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/24","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/24/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/24/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/24/events","html_url":"https://github.com/jacquev6/PyGithub/issues/24","id":4356743,"number":24,"title":"Improve error messages on broken requests","user":{"login":"roskakori","id":328726,"avatar_url":"https://secure.gravatar.com/avatar/b58d0f1ea06b8d5de5f02c53f747ac03?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b58d0f1ea06b8d5de5f02c53f747ac03","url":"https://api.github.com/users/roskakori","html_url":"https://github.com/roskakori","followers_url":"https://api.github.com/users/roskakori/followers","following_url":"https://api.github.com/users/roskakori/following{/other_user}","gists_url":"https://api.github.com/users/roskakori/gists{/gist_id}","starred_url":"https://api.github.com/users/roskakori/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/roskakori/subscriptions","organizations_url":"https://api.github.com/users/roskakori/orgs","repos_url":"https://api.github.com/users/roskakori/repos","events_url":"https://api.github.com/users/roskakori/events{/privacy}","received_events_url":"https://api.github.com/users/roskakori/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2/labels","id":93547,"number":2,"title":"Version 1.0: coherent public interface","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":19,"state":"closed","created_at":"2012-03-08T12:22:28Z","updated_at":"2012-06-03T19:56:17Z","due_on":"2012-06-04T07:00:00Z"},"comments":3,"created_at":"2012-04-30T20:01:20Z","updated_at":"2012-05-30T19:58:35Z","closed_at":"2012-05-30T19:58:35Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Thanks for PyGithub, it is easy to use and very complete. I just successfully used it to convert Trac tickets to Guthub issues.\r\n\r\nBut I had to learn the hard way that `create_issue()` expectes the milestone as number instead of a title. To track this down, I added the following `print` statement to `Requester.py`:\r\n\r\n```python\r\ndef __statusCheckedRequest( self, verb, url, parameters, input ):\r\n status, headers, output = self.__rawRequest( verb, url, parameters, input )\r\n if status < 200 or status >= 300:\r\n print output # <--- Added by me.\r\n raise UnknownGithubObject() # <--- sadly lacks any error details\r\n return headers, output\r\n```\r\n\r\nAs `output` already contains all the information needed (as JSON dump), it would be helpful if the exception raised here would include this information in the exception message."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/63","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/63/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/63/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/63/events","html_url":"https://github.com/jacquev6/PyGithub/issues/63","id":6583381,"number":63,"title":"PyGithub on Upverter","user":{"login":"malexw","id":577322,"avatar_url":"https://secure.gravatar.com/avatar/13a30f9924fa2bd918cbb8d06dd8b55a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"13a30f9924fa2bd918cbb8d06dd8b55a","url":"https://api.github.com/users/malexw","html_url":"https://github.com/malexw","followers_url":"https://api.github.com/users/malexw/followers","following_url":"https://api.github.com/users/malexw/following{/other_user}","gists_url":"https://api.github.com/users/malexw/gists{/gist_id}","starred_url":"https://api.github.com/users/malexw/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/malexw/subscriptions","organizations_url":"https://api.github.com/users/malexw/orgs","repos_url":"https://api.github.com/users/malexw/repos","events_url":"https://api.github.com/users/malexw/events{/privacy}","received_events_url":"https://api.github.com/users/malexw/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/9","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/9/labels","id":164586,"number":9,"title":"Version 1.5","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":4,"state":"closed","created_at":"2012-08-23T07:44:21Z","updated_at":"2012-09-05T17:56:28Z","due_on":"2012-09-06T07:00:00Z"},"comments":3,"created_at":"2012-08-31T16:36:04Z","updated_at":"2012-09-05T17:11:47Z","closed_at":"2012-09-05T17:11:47Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Hi Vincent, I wanted to let you know that we've started using PyGithub over at Upverter. You can see an example of it in action here: https://upverter.com/JBionics/a07fd2563a253ccf/Programmable-RC-Car-Controller-Arduino-Shield/\n\nUpverter is a web-based schematic capture and PCB layout tool for people who design electronics. Like github, it's free for anyone to use as long as they publish their designs with an open-source license. We let designers attach a github project to an Upverter project, and use PyGithub to pull in some basic stats about the project (including a README file), and show them on the project's main page.\n\nCheers,\nAlex"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/74","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/74/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/74/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/74/events","html_url":"https://github.com/jacquev6/PyGithub/issues/74","id":6751469,"number":74,"title":"Support clearing of issue milestone and assignee","user":{"login":"quixotique","id":1477470,"avatar_url":"https://secure.gravatar.com/avatar/806d200fb8f92bd618cc7063a3b62013?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"806d200fb8f92bd618cc7063a3b62013","url":"https://api.github.com/users/quixotique","html_url":"https://github.com/quixotique","followers_url":"https://api.github.com/users/quixotique/followers","following_url":"https://api.github.com/users/quixotique/following{/other_user}","gists_url":"https://api.github.com/users/quixotique/gists{/gist_id}","starred_url":"https://api.github.com/users/quixotique/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/quixotique/subscriptions","organizations_url":"https://api.github.com/users/quixotique/orgs","repos_url":"https://api.github.com/users/quixotique/repos","events_url":"https://api.github.com/users/quixotique/events{/privacy}","received_events_url":"https://api.github.com/users/quixotique/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/12","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/12/labels","id":172499,"number":12,"title":"Version 1.7","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":7,"state":"closed","created_at":"2012-09-10T04:25:53Z","updated_at":"2012-09-12T19:40:27Z","due_on":"2012-09-14T07:00:00Z"},"comments":3,"created_at":"2012-09-10T00:42:24Z","updated_at":"2012-09-12T02:36:43Z","closed_at":"2012-09-11T18:55:30Z","pull_request":{"html_url":"https://github.com/jacquev6/PyGithub/pull/74","diff_url":"https://github.com/jacquev6/PyGithub/pull/74.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/74.patch"},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"I could find no way to use the PyGithub API to clear an Issue's milestone or assignee. So I created this patch to make Issue.edit() accept None for the milestone and assignee parameters. I have tested it on a real GitHub issue, and it works, but I have not created any test cases."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/112","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/112/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/112/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/112/events","html_url":"https://github.com/jacquev6/PyGithub/issues/112","id":8189836,"number":112,"title":"Allow for using OAuth id and secret to increase rate limit","user":{"login":"mwoodworth","id":606209,"avatar_url":"https://secure.gravatar.com/avatar/fa8bf31f678044f65afb6c4c5a8ea542?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"fa8bf31f678044f65afb6c4c5a8ea542","url":"https://api.github.com/users/mwoodworth","html_url":"https://github.com/mwoodworth","followers_url":"https://api.github.com/users/mwoodworth/followers","following_url":"https://api.github.com/users/mwoodworth/following{/other_user}","gists_url":"https://api.github.com/users/mwoodworth/gists{/gist_id}","starred_url":"https://api.github.com/users/mwoodworth/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mwoodworth/subscriptions","organizations_url":"https://api.github.com/users/mwoodworth/orgs","repos_url":"https://api.github.com/users/mwoodworth/repos","events_url":"https://api.github.com/users/mwoodworth/events{/privacy}","received_events_url":"https://api.github.com/users/mwoodworth/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/14","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/14/labels","id":189891,"number":14,"title":"Version 1.9.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":9,"state":"closed","created_at":"2012-10-05T08:15:01Z","updated_at":"2012-11-19T20:52:01Z","due_on":null},"comments":3,"created_at":"2012-11-07T23:17:54Z","updated_at":"2012-11-19T20:05:26Z","closed_at":"2012-11-19T19:50:50Z","pull_request":{"html_url":"https://github.com/jacquev6/PyGithub/pull/112","diff_url":"https://github.com/jacquev6/PyGithub/pull/112.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/112.patch"},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"API Doc section for the change\r\nhttp://developer.github.com/v3/#rate-limiting"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/139","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/139/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/139/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/139/events","html_url":"https://github.com/jacquev6/PyGithub/issues/139","id":10758585,"number":139,"title":"Typo in GithubObject \"self._completed\" -> \"self.__completed\"?","user":{"login":"ianozsvald","id":273210,"avatar_url":"https://secure.gravatar.com/avatar/3d644406158b4d440111903db1f62622?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3d644406158b4d440111903db1f62622","url":"https://api.github.com/users/ianozsvald","html_url":"https://github.com/ianozsvald","followers_url":"https://api.github.com/users/ianozsvald/followers","following_url":"https://api.github.com/users/ianozsvald/following{/other_user}","gists_url":"https://api.github.com/users/ianozsvald/gists{/gist_id}","starred_url":"https://api.github.com/users/ianozsvald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ianozsvald/subscriptions","organizations_url":"https://api.github.com/users/ianozsvald/orgs","repos_url":"https://api.github.com/users/ianozsvald/repos","events_url":"https://api.github.com/users/ianozsvald/events{/privacy}","received_events_url":"https://api.github.com/users/ianozsvald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/21","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/21/labels","id":262264,"number":21,"title":"Version 1.11.1","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":3,"state":"closed","created_at":"2013-02-07T18:19:05Z","updated_at":"2013-02-09T16:56:36Z","due_on":null},"comments":3,"created_at":"2013-02-07T22:12:31Z","updated_at":"2013-02-08T10:48:28Z","closed_at":"2013-02-08T07:44:02Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"I noticed that calls to a user object (e.g. user.email, user.location etc) caused multiple calls to GitHub. Looking at GithubObject.py I see several references to __completed and one to _completed (single underscore) on line 72. Changing line 72 to use a double underscore removed the repeated calls to Github.\r\n\r\nI tried to run your tests but can't figure out how to do so? I'd have left you a pull request if so. I tried \"python -m unittest discover\" and also just running the files, I'm not familiar with the format you've used. I'm happy to run with logs etc if that's useful (some guidance on how to run the tests would be super helpful too). Thanks, Ian."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/148","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/148/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/148/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/148/events","html_url":"https://github.com/jacquev6/PyGithub/issues/148","id":12097154,"number":148,"title":"Notification API","user":{"login":"pgolm","id":1444194,"avatar_url":"https://secure.gravatar.com/avatar/c6d6b2eb927ed858092c47da9f150372?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"c6d6b2eb927ed858092c47da9f150372","url":"https://api.github.com/users/pgolm","html_url":"https://github.com/pgolm","followers_url":"https://api.github.com/users/pgolm/followers","following_url":"https://api.github.com/users/pgolm/following{/other_user}","gists_url":"https://api.github.com/users/pgolm/gists{/gist_id}","starred_url":"https://api.github.com/users/pgolm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pgolm/subscriptions","organizations_url":"https://api.github.com/users/pgolm/orgs","repos_url":"https://api.github.com/users/pgolm/repos","events_url":"https://api.github.com/users/pgolm/events{/privacy}","received_events_url":"https://api.github.com/users/pgolm/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/23","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/23/labels","id":282556,"number":23,"title":"Version 1.13.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":6,"state":"closed","created_at":"2013-03-07T08:43:38Z","updated_at":"2013-03-22T17:44:33Z","due_on":null},"comments":3,"created_at":"2013-03-16T16:38:35Z","updated_at":"2013-03-19T22:14:44Z","closed_at":"2013-03-19T22:14:44Z","pull_request":{"html_url":"https://github.com/jacquev6/PyGithub/pull/148","diff_url":"https://github.com/jacquev6/PyGithub/pull/148.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/148.patch"},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"implementation of Notification API #108"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/156","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/156/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/156/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/156/events","html_url":"https://github.com/jacquev6/PyGithub/issues/156","id":12867103,"number":156,"title":"renaming files in a gist","user":{"login":"jasonwiener","id":204083,"avatar_url":"https://secure.gravatar.com/avatar/fed498e65aec4199029994d4feab4fb1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"fed498e65aec4199029994d4feab4fb1","url":"https://api.github.com/users/jasonwiener","html_url":"https://github.com/jasonwiener","followers_url":"https://api.github.com/users/jasonwiener/followers","following_url":"https://api.github.com/users/jasonwiener/following{/other_user}","gists_url":"https://api.github.com/users/jasonwiener/gists{/gist_id}","starred_url":"https://api.github.com/users/jasonwiener/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jasonwiener/subscriptions","organizations_url":"https://api.github.com/users/jasonwiener/orgs","repos_url":"https://api.github.com/users/jasonwiener/repos","events_url":"https://api.github.com/users/jasonwiener/events{/privacy}","received_events_url":"https://api.github.com/users/jasonwiener/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/24","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/24/labels","id":298677,"number":24,"title":"Version 1.14.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":3,"state":"closed","created_at":"2013-03-28T19:15:29Z","updated_at":"2013-04-22T21:03:59Z","due_on":null},"comments":3,"created_at":"2013-04-05T22:37:41Z","updated_at":"2013-04-08T19:15:29Z","closed_at":"2013-04-08T19:15:29Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"looking at the InputFileContent class, it doesn't appear to support renaming a file in a gist. am i mistaken?"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/49","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/49/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/49/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/49/events","html_url":"https://github.com/jacquev6/PyGithub/issues/49","id":5191621,"number":49,"title":"Support new Search API","user":{"login":"kukuts","id":1831238,"avatar_url":"https://secure.gravatar.com/avatar/9be6ba907be1740213b69422fdf52b57?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"9be6ba907be1740213b69422fdf52b57","url":"https://api.github.com/users/kukuts","html_url":"https://github.com/kukuts","followers_url":"https://api.github.com/users/kukuts/followers","following_url":"https://api.github.com/users/kukuts/following{/other_user}","gists_url":"https://api.github.com/users/kukuts/gists{/gist_id}","starred_url":"https://api.github.com/users/kukuts/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kukuts/subscriptions","organizations_url":"https://api.github.com/users/kukuts/orgs","repos_url":"https://api.github.com/users/kukuts/repos","events_url":"https://api.github.com/users/kukuts/events{/privacy}","received_events_url":"https://api.github.com/users/kukuts/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/6","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/6/labels","id":136827,"number":6,"title":"Version 1.2","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":4,"state":"closed","created_at":"2012-06-25T19:31:02Z","updated_at":"2012-06-29T18:47:43Z","due_on":"2012-07-01T07:00:00Z"},"comments":4,"created_at":"2012-06-21T12:27:38Z","updated_at":"2012-06-29T18:47:28Z","closed_at":"2012-06-29T18:47:28Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"New API ported from v2 but i have trouble with adopting ask's library for v2 API to support v3 style for searching. \nhttp://developer.github.com/v3/search/\n\nIts not described in the page about parameters that search for repos API supports.\nThey are same as in v2 API, you can look them in ask's library.\nIn v2 was like that https://github.com/api/v2/json/repos/search/testing?start_page=2&language=Python\nIn v3 is https://api.github.com/legacy/repos/search/testing?start_page=2&language=Python"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/50","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/50/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/50/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/50/events","html_url":"https://github.com/jacquev6/PyGithub/issues/50","id":5256315,"number":50,"title":"[Issue] Replace label _identity with name","user":{"login":"philipkimmey","id":211079,"avatar_url":"https://secure.gravatar.com/avatar/decc9323f241b6dd24ec35ef7cabaf75?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"decc9323f241b6dd24ec35ef7cabaf75","url":"https://api.github.com/users/philipkimmey","html_url":"https://github.com/philipkimmey","followers_url":"https://api.github.com/users/philipkimmey/followers","following_url":"https://api.github.com/users/philipkimmey/following{/other_user}","gists_url":"https://api.github.com/users/philipkimmey/gists{/gist_id}","starred_url":"https://api.github.com/users/philipkimmey/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/philipkimmey/subscriptions","organizations_url":"https://api.github.com/users/philipkimmey/orgs","repos_url":"https://api.github.com/users/philipkimmey/repos","events_url":"https://api.github.com/users/philipkimmey/events{/privacy}","received_events_url":"https://api.github.com/users/philipkimmey/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/6","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/6/labels","id":136827,"number":6,"title":"Version 1.2","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":4,"state":"closed","created_at":"2012-06-25T19:31:02Z","updated_at":"2012-06-29T18:47:43Z","due_on":"2012-07-01T07:00:00Z"},"comments":4,"created_at":"2012-06-25T18:45:05Z","updated_at":"2012-06-28T20:10:44Z","closed_at":"2012-06-28T20:10:44Z","pull_request":{"html_url":"https://github.com/jacquev6/PyGithub/pull/50","diff_url":"https://github.com/jacquev6/PyGithub/pull/50.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/50.patch"},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":null},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/60","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/60/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/60/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/60/events","html_url":"https://github.com/jacquev6/PyGithub/issues/60","id":6363719,"number":60,"title":"delete repo","user":{"login":"pmchen","id":671751,"avatar_url":"https://secure.gravatar.com/avatar/a0f9638840c6e593ecddc966e6d01241?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"a0f9638840c6e593ecddc966e6d01241","url":"https://api.github.com/users/pmchen","html_url":"https://github.com/pmchen","followers_url":"https://api.github.com/users/pmchen/followers","following_url":"https://api.github.com/users/pmchen/following{/other_user}","gists_url":"https://api.github.com/users/pmchen/gists{/gist_id}","starred_url":"https://api.github.com/users/pmchen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pmchen/subscriptions","organizations_url":"https://api.github.com/users/pmchen/orgs","repos_url":"https://api.github.com/users/pmchen/repos","events_url":"https://api.github.com/users/pmchen/events{/privacy}","received_events_url":"https://api.github.com/users/pmchen/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/9","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/9/labels","id":164586,"number":9,"title":"Version 1.5","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":4,"state":"closed","created_at":"2012-08-23T07:44:21Z","updated_at":"2012-09-05T17:56:28Z","due_on":"2012-09-06T07:00:00Z"},"comments":4,"created_at":"2012-08-21T21:47:28Z","updated_at":"2012-09-05T17:12:16Z","closed_at":"2012-09-05T17:12:16Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"I'm just starting to to use PyGithub (and python). Thanks for creating such a useful tool. I'm teaching a large class and using PyGithub to programmatically manage hundreds of repos.\n\nIs there a way to delete a repo via PyGithub? github API v3 includes this, but I don't see a Repository.delete() method in PyGithub.\n\nAnother minor (and unrelated) issue: Is there a way to get_team by name (instead of by id)? The only way I can see to find a team by name is by iterating over all teams and looking at team.name.\n\nThanks for your help."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/119","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/119/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/119/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/119/events","html_url":"https://github.com/jacquev6/PyGithub/issues/119","id":9209408,"number":119,"title":"gists new api","user":{"login":"cancerhermit","id":1584557,"avatar_url":"https://secure.gravatar.com/avatar/9be6dcfe3820b88a23001e4758ca6703?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"9be6dcfe3820b88a23001e4758ca6703","url":"https://api.github.com/users/cancerhermit","html_url":"https://github.com/cancerhermit","followers_url":"https://api.github.com/users/cancerhermit/followers","following_url":"https://api.github.com/users/cancerhermit/following{/other_user}","gists_url":"https://api.github.com/users/cancerhermit/gists{/gist_id}","starred_url":"https://api.github.com/users/cancerhermit/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cancerhermit/subscriptions","organizations_url":"https://api.github.com/users/cancerhermit/orgs","repos_url":"https://api.github.com/users/cancerhermit/repos","events_url":"https://api.github.com/users/cancerhermit/events{/privacy}","received_events_url":"https://api.github.com/users/cancerhermit/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/16","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/16/labels","id":215570,"number":16,"title":"Version 1.10.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":10,"state":"closed","created_at":"2012-11-19T20:02:45Z","updated_at":"2012-12-25T12:25:01Z","due_on":null},"comments":4,"created_at":"2012-12-12T08:47:25Z","updated_at":"2012-12-21T20:39:17Z","closed_at":"2012-12-21T20:39:17Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"https://github.com/blog/1276-welcome-to-a-new-gist . git:// not work, new urls is https://"}] + +https +GET +api.github.com +None +/issues?direction=asc&filter=assigned&labels=Requested+by+user&page=2&since=2012-05-28T23%3A00%3A00Z&sort=comments&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4984'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '143568'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 17 May 2013 11:34:11 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="first", ; rel="prev"'), ('etag', '"36fb6631d2714acfd6169b3d779277e5"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 17 May 2013 11:45:03 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/88","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/88/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/88/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/88/events","html_url":"https://github.com/jacquev6/PyGithub/issues/88","id":6912733,"number":88,"title":"Use Python logging to log raw requests","user":{"login":"quixotique","id":1477470,"avatar_url":"https://secure.gravatar.com/avatar/806d200fb8f92bd618cc7063a3b62013?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"806d200fb8f92bd618cc7063a3b62013","url":"https://api.github.com/users/quixotique","html_url":"https://github.com/quixotique","followers_url":"https://api.github.com/users/quixotique/followers","following_url":"https://api.github.com/users/quixotique/following{/other_user}","gists_url":"https://api.github.com/users/quixotique/gists{/gist_id}","starred_url":"https://api.github.com/users/quixotique/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/quixotique/subscriptions","organizations_url":"https://api.github.com/users/quixotique/orgs","repos_url":"https://api.github.com/users/quixotique/repos","events_url":"https://api.github.com/users/quixotique/events{/privacy}","received_events_url":"https://api.github.com/users/quixotique/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/13","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/13/labels","id":174087,"number":13,"title":"Version 1.8.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":6,"state":"closed","created_at":"2012-09-12T19:53:14Z","updated_at":"2012-09-30T18:12:03Z","due_on":"2012-09-30T07:00:00Z"},"comments":5,"created_at":"2012-09-17T08:19:42Z","updated_at":"2012-09-25T20:57:52Z","closed_at":"2012-09-25T20:57:52Z","pull_request":{"html_url":"https://github.com/jacquev6/PyGithub/pull/88","diff_url":"https://github.com/jacquev6/PyGithub/pull/88.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/88.patch"},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"I replaced the commented-out print statement in Requester.py with a call to Python [logging](http://docs.python.org/library/logging.html) so that users have the option to trace low-level api.github.com requests without having to hack their installed PyGithub package: they just put `logging.getLogger('github').setLevel(logging.DEBUG)` in their script.\n\nI don't have any strong opinion as to whether you should pull this change or not. I found it useful while debugging #87, you may decide you don't like it; no problem."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/131","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/131/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/131/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/131/events","html_url":"https://github.com/jacquev6/PyGithub/issues/131","id":9948505,"number":131,"title":"Fix PullRequestPart when using get_pulls() and the head user is an Organization","user":{"login":"sbesson","id":1355463,"avatar_url":"https://secure.gravatar.com/avatar/8ea0fde1295027db9d37e419ac10cbf4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8ea0fde1295027db9d37e419ac10cbf4","url":"https://api.github.com/users/sbesson","html_url":"https://github.com/sbesson","followers_url":"https://api.github.com/users/sbesson/followers","following_url":"https://api.github.com/users/sbesson/following{/other_user}","gists_url":"https://api.github.com/users/sbesson/gists{/gist_id}","starred_url":"https://api.github.com/users/sbesson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sbesson/subscriptions","organizations_url":"https://api.github.com/users/sbesson/orgs","repos_url":"https://api.github.com/users/sbesson/repos","events_url":"https://api.github.com/users/sbesson/events{/privacy}","received_events_url":"https://api.github.com/users/sbesson/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/19","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/19/labels","id":234630,"number":19,"title":"Version 1.11.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":7,"state":"closed","created_at":"2012-12-25T12:26:40Z","updated_at":"2013-02-07T18:18:31Z","due_on":"2013-02-08T08:00:00Z"},"comments":5,"created_at":"2013-01-14T16:46:39Z","updated_at":"2013-02-04T09:57:31Z","closed_at":"2013-02-03T17:33:11Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Error can be reproduced with the following example:\r\n```\r\nimport github\r\nrepo = github.Github().get_user(\"openmicroscopy\").get_repo(\"ome-documentation\")\r\n\r\nassert repo.get_pull(204).head.user.login == 'imcf'\r\n\r\nfor pr in list(repo.get_pulls('closed')):\r\n\tif pr.number == 204:\r\n\t\tassert pr.head.user is None\r\n```\r\n\r\n/cc @joshmoore"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/142","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/142/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/142/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/142/events","html_url":"https://github.com/jacquev6/PyGithub/issues/142","id":11503771,"number":142,"title":"Bug with Python 3?","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":null,"comments":5,"created_at":"2013-02-28T15:00:18Z","updated_at":"2013-03-03T19:08:21Z","closed_at":"2013-03-03T17:54:48Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Hi! \r\nI'm currently in the process of switching a program to python 3.2. I encounter the following problem: `TypeError: can't use a string pattern on a bytes-like object`\r\n\r\n```\r\nimport github\r\ngh_instance = github.Github('')\r\nuser = gh_instance.get_user()\r\nuser.name\r\n---------------------------------------------------------------------------\r\nTypeError Traceback (most recent call last)\r\n in ()\r\n----> 1 user.name\r\n\r\n/usr/local/lib/python3.2/dist-packages/github/AuthenticatedUser.py in name(self)\r\n 166 :type: string\r\n 167 \"\"\"\r\n--> 168 self._completeIfNotSet(self._name)\r\n 169 return self._NoneIfNotSet(self._name)\r\n 170 \r\n\r\n/usr/local/lib/python3.2/dist-packages/github/GithubObject.py in _completeIfNotSet(self, value)\r\n 61 def _completeIfNotSet(self, value):\r\n 62 if not self.__completed and value is NotSet:\r\n---> 63 self.__complete()\r\n 64 \r\n 65 def __complete(self):\r\n\r\n/usr/local/lib/python3.2/dist-packages/github/GithubObject.py in __complete(self)\r\n 68 self._url,\r\n 69 None,\r\n---> 70 None\r\n 71 )\r\n 72 self._useAttributes(data)\r\n\r\n/usr/local/lib/python3.2/dist-packages/github/Requester.py in requestJsonAndCheck(self, verb, url, parameters, input)\r\n 77 \r\n 78 def requestJsonAndCheck(self, verb, url, parameters, input):\r\n---> 79 return self.__check(*self.requestJson(verb, url, parameters, input))\r\n 80 \r\n 81 def requestMultipartAndCheck(self, verb, url, parameters, input):\r\n\r\n/usr/local/lib/python3.2/dist-packages/github/Requester.py in __check(self, status, responseHeaders, output)\r\n 83 \r\n 84 def __check(self, status, responseHeaders, output):\r\n---> 85 output = self.__structuredFromJson(output)\r\n 86 if status >= 400:\r\n 87 raise GithubException.GithubException(status, output)\r\n\r\n/usr/local/lib/python3.2/dist-packages/github/Requester.py in __structuredFromJson(self, data)\r\n 92 return None\r\n 93 else:\r\n---> 94 return json.loads(data)\r\n 95 \r\n 96 def requestJson(self, verb, url, parameters, input):\r\n\r\n/usr/lib/python3.2/json/__init__.py in loads(s, encoding, cls, object_hook, parse_float, parse_int, parse_constant, object_pairs_hook, **kw)\r\n 307 parse_int is None and parse_float is None and\r\n 308 parse_constant is None and object_pairs_hook is None and not kw):\r\n--> 309 return _default_decoder.decode(s)\r\n 310 if cls is None:\r\n 311 cls = JSONDecoder\r\n\r\n/usr/lib/python3.2/json/decoder.py in decode(self, s, _w)\r\n 351 \r\n 352 \"\"\"\r\n--> 353 obj, end = self.raw_decode(s, idx=_w(s, 0).end())\r\n 354 end = _w(s, end).end()\r\n 355 if end != len(s):\r\n\r\nTypeError: can't use a string pattern on a bytes-like object\r\n```\r\nIt's `PyGithub-1.12.1` installed via `pip-3.2` and python `'3.2.3 (default, Oct 19 2012, 19:53:57) \\n[GCC 4.7.2]'`"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/140","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/140/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/140/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/140/events","html_url":"https://github.com/jacquev6/PyGithub/issues/140","id":10922412,"number":140,"title":"Repository.get_contents does not return directory information","user":{"login":"ksookocheff-va","id":2529590,"avatar_url":"https://secure.gravatar.com/avatar/ae7eed65e46234c210912a1e474f2f1c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"ae7eed65e46234c210912a1e474f2f1c","url":"https://api.github.com/users/ksookocheff-va","html_url":"https://github.com/ksookocheff-va","followers_url":"https://api.github.com/users/ksookocheff-va/followers","following_url":"https://api.github.com/users/ksookocheff-va/following{/other_user}","gists_url":"https://api.github.com/users/ksookocheff-va/gists{/gist_id}","starred_url":"https://api.github.com/users/ksookocheff-va/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ksookocheff-va/subscriptions","organizations_url":"https://api.github.com/users/ksookocheff-va/orgs","repos_url":"https://api.github.com/users/ksookocheff-va/repos","events_url":"https://api.github.com/users/ksookocheff-va/events{/privacy}","received_events_url":"https://api.github.com/users/ksookocheff-va/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/22","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/22/labels","id":266004,"number":22,"title":"Version 1.12.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":2,"state":"closed","created_at":"2013-02-13T07:10:18Z","updated_at":"2013-02-20T18:45:16Z","due_on":null},"comments":6,"created_at":"2013-02-12T19:53:26Z","updated_at":"2013-02-16T22:45:00Z","closed_at":"2013-02-16T18:14:01Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"The GitHub API returns a list of all files in a directory when you use Get Contents on a directory.\r\n\r\nexample:\r\nhttps://api.github.com/repos/twitter/bootstrap/contents/js/?ref=d28343dc3ad53a411ae3685e7d6a7866c8c22d6b\r\n\r\nCurrently PyGithub only returns None when using this API to query a directory."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/145","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/145/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/145/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/145/events","html_url":"https://github.com/jacquev6/PyGithub/issues/145","id":11844658,"number":145,"title":"Configure default requests with per_page=100","user":{"login":"ptwobrussell","id":98668,"avatar_url":"https://secure.gravatar.com/avatar/322a50ffdb98591460f05015770b7adb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"322a50ffdb98591460f05015770b7adb","url":"https://api.github.com/users/ptwobrussell","html_url":"https://github.com/ptwobrussell","followers_url":"https://api.github.com/users/ptwobrussell/followers","following_url":"https://api.github.com/users/ptwobrussell/following{/other_user}","gists_url":"https://api.github.com/users/ptwobrussell/gists{/gist_id}","starred_url":"https://api.github.com/users/ptwobrussell/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ptwobrussell/subscriptions","organizations_url":"https://api.github.com/users/ptwobrussell/orgs","repos_url":"https://api.github.com/users/ptwobrussell/repos","events_url":"https://api.github.com/users/ptwobrussell/events{/privacy}","received_events_url":"https://api.github.com/users/ptwobrussell/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/23","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/23/labels","id":282556,"number":23,"title":"Version 1.13.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":6,"state":"closed","created_at":"2013-03-07T08:43:38Z","updated_at":"2013-03-22T17:44:33Z","due_on":null},"comments":6,"created_at":"2013-03-09T21:47:07Z","updated_at":"2013-03-21T20:47:58Z","closed_at":"2013-03-21T20:47:58Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Per http://developer.github.com/v3/#pagination, the max items that can possibly be requested is 100 as opposed to the default of 30. From what I can tell, the default is used in all requests and there's no way to override it without modifying the source. Hence, about 1/3 of the available data is being returned on lots of requests\r\n\r\nIs there a reason not to go ahead and add a default per_page=100 to all API requests? Best case, it results in faster access to data, and worst case, it has no effect. For my particular uses, I'm making lots of requests, and a speedup of ~3.3x would be a big help.\r\n\r\nThoughts?"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/153","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/153/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/153/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/153/events","html_url":"https://github.com/jacquev6/PyGithub/issues/153","id":12566144,"number":153,"title":"Error \"500 None\" in python3","user":{"login":"sebastianstigler","id":772197,"avatar_url":"https://secure.gravatar.com/avatar/c3249014be386ebc7e509c25260c8a8b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"c3249014be386ebc7e509c25260c8a8b","url":"https://api.github.com/users/sebastianstigler","html_url":"https://github.com/sebastianstigler","followers_url":"https://api.github.com/users/sebastianstigler/followers","following_url":"https://api.github.com/users/sebastianstigler/following{/other_user}","gists_url":"https://api.github.com/users/sebastianstigler/gists{/gist_id}","starred_url":"https://api.github.com/users/sebastianstigler/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sebastianstigler/subscriptions","organizations_url":"https://api.github.com/users/sebastianstigler/orgs","repos_url":"https://api.github.com/users/sebastianstigler/repos","events_url":"https://api.github.com/users/sebastianstigler/events{/privacy}","received_events_url":"https://api.github.com/users/sebastianstigler/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":null,"comments":6,"created_at":"2013-03-28T14:17:05Z","updated_at":"2013-03-28T19:33:19Z","closed_at":"2013-03-28T19:12:42Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Hi, \r\nIm using PyGithub (1.13.0, installed with pip and pip-3.2) on Ubuntu 12.04 with python version 2.7.3 (there it works just fine) an version 3.2.3 where i get some issues\r\n\r\nI posted the testcase and the testouput for the run with python3 here:\thttps://gist.github.com/8efb393ddaefc614f225\r\n\r\nFYI: I ran the testsuite too(`python3 -m github.tests`). The result was \r\n \r\n Ran 319 tests in 1.630s\r\n\r\n OK\r\n\r\nCheers,\r\nSebastian"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/59","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/59/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/59/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/59/events","html_url":"https://github.com/jacquev6/PyGithub/issues/59","id":6353712,"number":59,"title":"No Comments returned for PullRequest","user":{"login":"nixoz2k7","id":1027413,"avatar_url":"https://secure.gravatar.com/avatar/2a16046c75f59710161ea486d1f5881d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2a16046c75f59710161ea486d1f5881d","url":"https://api.github.com/users/nixoz2k7","html_url":"https://github.com/nixoz2k7","followers_url":"https://api.github.com/users/nixoz2k7/followers","following_url":"https://api.github.com/users/nixoz2k7/following{/other_user}","gists_url":"https://api.github.com/users/nixoz2k7/gists{/gist_id}","starred_url":"https://api.github.com/users/nixoz2k7/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nixoz2k7/subscriptions","organizations_url":"https://api.github.com/users/nixoz2k7/orgs","repos_url":"https://api.github.com/users/nixoz2k7/repos","events_url":"https://api.github.com/users/nixoz2k7/events{/privacy}","received_events_url":"https://api.github.com/users/nixoz2k7/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/10","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/10/labels","id":169989,"number":10,"title":"Version 1.6","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":9,"state":"closed","created_at":"2012-09-04T20:12:30Z","updated_at":"2012-09-08T18:00:28Z","due_on":"2012-09-13T07:00:00Z"},"comments":7,"created_at":"2012-08-21T15:33:36Z","updated_at":"2012-09-08T14:53:08Z","closed_at":"2012-09-08T13:20:03Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Hello, here is the problem.\nNo Comments returned. But comments count showing proper value.\n\np = z.pulls[1]\np\nOUTPUT: \nOUTPUT: u'\\u041d\\u0435 \\u043f\\u0440\\u0438\\u043d\\u0438\\u043c\\u0430\\u0442\\u044c =)'\np.comments\nOUTPUT: 1\np.get_comments()\nOUTPUT: \nlist(p.get_comments())\nOUTPUT: []\n\nAny ideas ?\n"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/121","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/121/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/121/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/121/events","html_url":"https://github.com/jacquev6/PyGithub/issues/121","id":9323084,"number":121,"title":"Update AuthenticatedUser.get_repo to accept a full repo path","user":{"login":"lwc","id":336402,"avatar_url":"https://secure.gravatar.com/avatar/79df912986253edb50f9b077acd5acf9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"79df912986253edb50f9b077acd5acf9","url":"https://api.github.com/users/lwc","html_url":"https://github.com/lwc","followers_url":"https://api.github.com/users/lwc/followers","following_url":"https://api.github.com/users/lwc/following{/other_user}","gists_url":"https://api.github.com/users/lwc/gists{/gist_id}","starred_url":"https://api.github.com/users/lwc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lwc/subscriptions","organizations_url":"https://api.github.com/users/lwc/orgs","repos_url":"https://api.github.com/users/lwc/repos","events_url":"https://api.github.com/users/lwc/events{/privacy}","received_events_url":"https://api.github.com/users/lwc/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/16","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/16/labels","id":215570,"number":16,"title":"Version 1.10.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":10,"state":"closed","created_at":"2012-11-19T20:02:45Z","updated_at":"2012-12-25T12:25:01Z","due_on":null},"comments":8,"created_at":"2012-12-17T03:02:50Z","updated_at":"2012-12-22T02:00:55Z","closed_at":"2012-12-21T19:42:09Z","pull_request":{"html_url":"https://github.com/jacquev6/PyGithub/pull/121","diff_url":"https://github.com/jacquev6/PyGithub/pull/121.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/121.patch"},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"### Why?\r\n- For projects I dont own, but I am a collaborator, or for directly accessing organisation repos without needing to traverse user.get_orgs.\r\n\r\n### Example\r\n```python\r\nuser.get_repo(\"my_repo\") # existing behaviour still works\r\nuser.get_repo(\"my_org/repo\") # this is now possible\r\n```\r\n\r\n\r\nThanks,\r\nLuke Cawood"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/134","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/134/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/134/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/134/events","html_url":"https://github.com/jacquev6/PyGithub/issues/134","id":10379143,"number":134,"title":"Can't verify authorizations of token-authorized user","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/19","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/19/labels","id":234630,"number":19,"title":"Version 1.11.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":7,"state":"closed","created_at":"2012-12-25T12:26:40Z","updated_at":"2013-02-07T18:18:31Z","due_on":"2013-02-08T08:00:00Z"},"comments":9,"created_at":"2013-01-28T15:33:19Z","updated_at":"2013-02-06T10:54:50Z","closed_at":"2013-02-05T23:07:06Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Hi!\r\nI think I've found a bug. I successfully created an API authorization with some scopes. In the program I want to use this autorization in, I'm trying to verify the correct scopes before proceeding, but this does not work as expected. From iPython:\r\n\r\n``` python\r\nfrom github import Github\r\nuser = Github(some_token).get_user()\r\nauths=user.get_authorizations()\r\nauths\r\nOut[5]: \r\nfor a in auths:\r\n print a.note\r\n---------------------------------------------------------------------------\r\nGithubException Traceback (most recent call last)\r\n in ()\r\n----> 1 for a in auths:\r\n 2 print a.note\r\n\r\n/usr/local/lib/python2.7/dist-packages/github/PaginatedList.pyc in __iter__(self)\r\n 33 yield element\r\n 34 while self._couldGrow():\r\n---> 35 newElements = self.__grow()\r\n 36 for element in newElements:\r\n 37 yield element\r\n\r\n/usr/local/lib/python2.7/dist-packages/github/PaginatedList.pyc in __grow(self)\r\n 45 \r\n 46 def __grow(self):\r\n---> 47 newElements = self._fetchNextPage()\r\n 48 self.__elements += newElements\r\n 49 return newElements\r\n\r\n/usr/local/lib/python2.7/dist-packages/github/PaginatedList.pyc in _fetchNextPage(self)\r\n 83 \r\n 84 def _fetchNextPage(self):\r\n---> 85 headers, data = self.__requester.requestAndCheck(\"GET\", self.__nextUrl, self.__nextParams, None)\r\n 86 \r\n 87 links = self.__parseLinkHeader(headers)\r\n\r\n/usr/local/lib/python2.7/dist-packages/github/Requester.pyc in requestAndCheck(self, verb, url, parameters, input)\r\n 78 output = self.__structuredFromJson(output)\r\n 79 if status >= 400:\r\n---> 80 raise GithubException.GithubException(status, output)\r\n 81 return headers, output\r\n 82 \r\n\r\nGithubException: 404 {u'message': u'Not Found'}\r\n```\r\n\r\nis this a bug or am I doing something wrong/impossible. \r\n\r\nbtw, when creating a github instance with an authorization token, this does not error out when the token is invalid, i.e. I can say `Github(\"mySillyString\")` without error message - is this by design?"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/54","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/54/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/54/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/54/events","html_url":"https://github.com/jacquev6/PyGithub/issues/54","id":5387373,"number":54,"title":"GitAuthor.date should return datetime, not string","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/7","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/7/labels","id":140183,"number":7,"title":"Version 1.3","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":4,"state":"closed","created_at":"2012-07-03T07:32:39Z","updated_at":"2012-07-13T20:01:15Z","due_on":"2012-07-16T07:00:00Z"},"comments":12,"created_at":"2012-07-02T14:38:01Z","updated_at":"2012-07-18T09:21:16Z","closed_at":"2012-07-13T19:21:04Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Hi!\n\nIt's great that all date-like objects are datetime.datetime now, makes working with it so easy. However, I think you missed GitAuthor.date, it would be great if this would also return datetimes.\n\nBackground: To get the dates of tags, I did `MyTag.commit.commit.committer.date`, and expected this to return a datetime object (like all the others do), but it returns a string."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/149","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/149/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/149/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/149/events","html_url":"https://github.com/jacquev6/PyGithub/issues/149","id":12179668,"number":149,"title":"Test failures with python3","user":{"login":"bkabrda","id":1050061,"avatar_url":"https://secure.gravatar.com/avatar/60d06f7560160f3ce7aa3877596da63f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"60d06f7560160f3ce7aa3877596da63f","url":"https://api.github.com/users/bkabrda","html_url":"https://github.com/bkabrda","followers_url":"https://api.github.com/users/bkabrda/followers","following_url":"https://api.github.com/users/bkabrda/following{/other_user}","gists_url":"https://api.github.com/users/bkabrda/gists{/gist_id}","starred_url":"https://api.github.com/users/bkabrda/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bkabrda/subscriptions","organizations_url":"https://api.github.com/users/bkabrda/orgs","repos_url":"https://api.github.com/users/bkabrda/repos","events_url":"https://api.github.com/users/bkabrda/events{/privacy}","received_events_url":"https://api.github.com/users/bkabrda/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/23","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/23/labels","id":282556,"number":23,"title":"Version 1.13.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":6,"state":"closed","created_at":"2013-03-07T08:43:38Z","updated_at":"2013-03-22T17:44:33Z","due_on":null},"comments":12,"created_at":"2013-03-19T13:25:29Z","updated_at":"2013-03-22T07:04:32Z","closed_at":"2013-03-21T23:34:58Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"Hi,\r\nI'm experiencing dozens of failures with Python 3. Is this expected or is something wrong on my side? It seems that some of the failures are connected with random order of dict items in str(headers) in ReplayingConnection.request, but there are also other."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/87","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/87/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/87/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/87/events","html_url":"https://github.com/jacquev6/PyGithub/issues/87","id":6911794,"number":87,"title":"Repository.create_issue() fails on percent '%' character","user":{"login":"quixotique","id":1477470,"avatar_url":"https://secure.gravatar.com/avatar/806d200fb8f92bd618cc7063a3b62013?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"806d200fb8f92bd618cc7063a3b62013","url":"https://api.github.com/users/quixotique","html_url":"https://github.com/quixotique","followers_url":"https://api.github.com/users/quixotique/followers","following_url":"https://api.github.com/users/quixotique/following{/other_user}","gists_url":"https://api.github.com/users/quixotique/gists{/gist_id}","starred_url":"https://api.github.com/users/quixotique/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/quixotique/subscriptions","organizations_url":"https://api.github.com/users/quixotique/orgs","repos_url":"https://api.github.com/users/quixotique/repos","events_url":"https://api.github.com/users/quixotique/events{/privacy}","received_events_url":"https://api.github.com/users/quixotique/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/13","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/13/labels","id":174087,"number":13,"title":"Version 1.8.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":6,"state":"closed","created_at":"2012-09-12T19:53:14Z","updated_at":"2012-09-30T18:12:03Z","due_on":"2012-09-30T07:00:00Z"},"comments":13,"created_at":"2012-09-17T07:17:56Z","updated_at":"2012-10-05T15:10:36Z","closed_at":"2012-09-25T19:56:32Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"If the **title** or **body** parameter of `Repository.create_issue()` contains a percent character `%` then it provokes a 500 error from `api.github.com`.\n\nCuriously, if the percent character is followed by two hex digits, eg `%2F` then the request succeeds. In this case, the `%2F` is not url-decoded: it remains as `%2F` in the body text of the issue, not as a slash `/`.\n\nThis looks like it could be GitHub's issue: eg, their API is enforcing urlencoded input but is not actually decoding it.\n\nWhatever the case, it is impossible to create an issue using PyGithub that contains text like “works 25% of the time”."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/143","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/143/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/143/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/143/events","html_url":"https://github.com/jacquev6/PyGithub/issues/143","id":11731917,"number":143,"title":"Version 1.12.2 does not work with Python 3(.3) because of 2to3 issues","user":{"login":"ptwobrussell","id":98668,"avatar_url":"https://secure.gravatar.com/avatar/322a50ffdb98591460f05015770b7adb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"322a50ffdb98591460f05015770b7adb","url":"https://api.github.com/users/ptwobrussell","html_url":"https://github.com/ptwobrussell","followers_url":"https://api.github.com/users/ptwobrussell/followers","following_url":"https://api.github.com/users/ptwobrussell/following{/other_user}","gists_url":"https://api.github.com/users/ptwobrussell/gists{/gist_id}","starred_url":"https://api.github.com/users/ptwobrussell/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ptwobrussell/subscriptions","organizations_url":"https://api.github.com/users/ptwobrussell/orgs","repos_url":"https://api.github.com/users/ptwobrussell/repos","events_url":"https://api.github.com/users/ptwobrussell/events{/privacy}","received_events_url":"https://api.github.com/users/ptwobrussell/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/23","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/23/labels","id":282556,"number":23,"title":"Version 1.13.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":6,"state":"closed","created_at":"2013-03-07T08:43:38Z","updated_at":"2013-03-22T17:44:33Z","due_on":null},"comments":13,"created_at":"2013-03-06T20:48:02Z","updated_at":"2013-03-21T21:00:47Z","closed_at":"2013-03-21T21:00:47Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"In trying to pip install PyGithub with Python 3.3 just now, I see the following in the console:\r\n\r\nDownloading/unpacking PyGithub\r\n Downloading PyGithub-1.12.2.tar.gz (1.6MB): 1.6MB downloaded\r\n Running setup.py egg_info for package PyGithub\r\n \r\nInstalling collected packages: PyGithub\r\n Running setup.py install for PyGithub\r\n Fixing build/lib/github/__init__.py build/lib/github/AuthenticatedUser.py \r\n\r\n...\r\n\r\n File \"/Users/matthew/virtual-environments/mtsw2e/lib/python3.3/site-packages/github/AuthenticatedUser.py\", line 16\r\n from . import github.GithubObject\r\n ^\r\n SyntaxError: invalid syntax\r\n\r\n .... more of the same errors ...\r\n\r\nIn looking at the source on GitHub for this version (such as https://github.com/jacquev6/PyGithub/blob/v1.12.2/github/UserKey.py), it appears that you are just doing straight imports as \"import github.X\" which is causing 2to3 to produce invalid imports when it rewrites."},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/80","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/80/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/80/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/80/events","html_url":"https://github.com/jacquev6/PyGithub/issues/80","id":6807542,"number":80,"title":"Assertion Failure ??","user":{"login":"mnsanghvi","id":1726664,"avatar_url":"https://secure.gravatar.com/avatar/e409b9dc39edbc7c61c36de28d16cc84?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e409b9dc39edbc7c61c36de28d16cc84","url":"https://api.github.com/users/mnsanghvi","html_url":"https://github.com/mnsanghvi","followers_url":"https://api.github.com/users/mnsanghvi/followers","following_url":"https://api.github.com/users/mnsanghvi/following{/other_user}","gists_url":"https://api.github.com/users/mnsanghvi/gists{/gist_id}","starred_url":"https://api.github.com/users/mnsanghvi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mnsanghvi/subscriptions","organizations_url":"https://api.github.com/users/mnsanghvi/orgs","repos_url":"https://api.github.com/users/mnsanghvi/repos","events_url":"https://api.github.com/users/mnsanghvi/events{/privacy}","received_events_url":"https://api.github.com/users/mnsanghvi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/12","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/12/labels","id":172499,"number":12,"title":"Version 1.7","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":7,"state":"closed","created_at":"2012-09-10T04:25:53Z","updated_at":"2012-09-12T19:40:27Z","due_on":"2012-09-14T07:00:00Z"},"comments":15,"created_at":"2012-09-12T02:07:44Z","updated_at":"2012-09-12T20:48:51Z","closed_at":"2012-09-12T19:28:02Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"``` python\n>>> from github import Github\n>>> gh = Github( \"login\", \"password\", \"base_url\")\n>>> for repo in gh.get_user().get_repos():\n... print repo.name\n...\nrepo1\nrepo2\nmy-person-linux-kernel-repo\nthe-secret-macosx-repo\n\n>>> for repo in gh.get_organization( org_name ).get_repos():\n... print repo.name\n...\n \nTraceback (most recent call last):\n File \"\", line 1, in \n File \"build/bdist.macosx-10.7-intel/egg/github/Organization.py\", line 311, in get_repos\n File \"build/bdist.macosx-10.7-intel/egg/github/Requester.py\", line 60, in requestAndCheck\n File \"build/bdist.macosx-10.7-intel/egg/github/Requester.py\", line 76, in requestRaw\nAssertionError\n\n```\n\nIs this because of my lack of knowledge about python, or is there something else going on here ? \n\nWhat I would like to do is be able to get a list of the hooks in all the repos in an organization and also go through that list of repos in an organization and be able to create hooks. \n\n\n"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/77","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/77/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/77/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/77/events","html_url":"https://github.com/jacquev6/PyGithub/issues/77","id":6780606,"number":77,"title":"No ability to fetch specific page with search api","user":{"login":"kukuts","id":1831238,"avatar_url":"https://secure.gravatar.com/avatar/9be6ba907be1740213b69422fdf52b57?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"9be6ba907be1740213b69422fdf52b57","url":"https://api.github.com/users/kukuts","html_url":"https://github.com/kukuts","followers_url":"https://api.github.com/users/kukuts/followers","following_url":"https://api.github.com/users/kukuts/following{/other_user}","gists_url":"https://api.github.com/users/kukuts/gists{/gist_id}","starred_url":"https://api.github.com/users/kukuts/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kukuts/subscriptions","organizations_url":"https://api.github.com/users/kukuts/orgs","repos_url":"https://api.github.com/users/kukuts/repos","events_url":"https://api.github.com/users/kukuts/events{/privacy}","received_events_url":"https://api.github.com/users/kukuts/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/12","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/12/labels","id":172499,"number":12,"title":"Version 1.7","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":7,"state":"closed","created_at":"2012-09-10T04:25:53Z","updated_at":"2012-09-12T19:40:27Z","due_on":"2012-09-14T07:00:00Z"},"comments":16,"created_at":"2012-09-11T03:44:18Z","updated_at":"2012-09-12T19:24:37Z","closed_at":"2012-09-12T19:24:37Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master"},"body":"legacy_search_repos - keyword and language but no start_page parameter\nHow to get eg 3rd page right?"}] + diff --git a/lib/github/tests/ReplayData/AuthenticatedUser.testStarring.txt b/lib/github/tests/ReplayData/AuthenticatedUser.testStarring.txt new file mode 100644 index 0000000000..2b8cae4827 --- /dev/null +++ b/lib/github/tests/ReplayData/AuthenticatedUser.testStarring.txt @@ -0,0 +1,99 @@ +https +GET +api.github.com +None +/users/nvie +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '603'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4972'), ('server', 'nginx/1.0.13'), ('last-modified', 'Mon, 03 Sep 2012 09:24:06 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"eeac2be05fbbb88d548aaf0353a465f9"'), ('cache-control', 'private, s-maxage=60, max-age=60'), ('date', 'Fri, 07 Sep 2012 23:34:41 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","gravatar_id":"466ef7561a0b100dc5a1021959962d28","avatar_url":"https://secure.gravatar.com/avatar/466ef7561a0b100dc5a1021959962d28?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"nvie","public_repos":64,"created_at":"2009-05-12T21:19:38Z","html_url":"https://github.com/nvie","email":"vincent@3rdcloud.com","company":"3rd Cloud","followers":347,"hireable":false,"public_gists":28,"name":"Vincent Driessen","blog":"http://nvie.com","url":"https://api.github.com/users/nvie","following":41,"location":"Netherlands","bio":null,"id":83844} + +https +GET +api.github.com +None +/repos/nvie/gitflow +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '1272'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4971'), ('server', 'nginx/1.0.13'), ('last-modified', 'Fri, 07 Sep 2012 23:33:59 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"65c6be3387ac59ebbbf02e7b4c793b8e"'), ('cache-control', 'private, s-maxage=60, max-age=60'), ('date', 'Fri, 07 Sep 2012 23:34:42 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"master_branch":"develop","forks":429,"watchers_count":4650,"has_downloads":true,"owner":{"gravatar_id":"466ef7561a0b100dc5a1021959962d28","avatar_url":"https://secure.gravatar.com/avatar/466ef7561a0b100dc5a1021959962d28?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"nvie","url":"https://api.github.com/users/nvie","id":83844},"open_issues_count":100,"description":"Git extensions to provide high-level repository operations for Vincent Driessen's branching model.","permissions":{"pull":true,"push":false,"admin":false},"forks_count":429,"clone_url":"https://github.com/nvie/gitflow.git","created_at":"2010-01-20T23:14:12Z","mirror_url":null,"html_url":"https://github.com/nvie/gitflow","network_count":429,"has_wiki":true,"watchers":4650,"size":4430,"fork":false,"open_issues":100,"has_issues":true,"updated_at":"2012-09-07T23:33:59Z","full_name":"nvie/gitflow","name":"gitflow","url":"https://api.github.com/repos/nvie/gitflow","ssh_url":"git@github.com:nvie/gitflow.git","git_url":"git://github.com/nvie/gitflow.git","private":false,"id":481366,"language":"Shell","homepage":"http://nvie.com/posts/a-successful-git-branching-model/","svn_url":"https://github.com/nvie/gitflow","pushed_at":"2012-07-10T09:18:03Z"} + +https +GET +api.github.com +None +/user/starred +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4970'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '35785'), ('server', 'nginx/1.0.13'), ('last-modified', 'Fri, 07 Sep 2012 23:33:59 GMT'), ('connection', 'keep-alive'), ('etag', '"65c6be3387ac59ebbbf02e7b4c793b8e"'), ('link', '; rel="next", ; rel="last"'), ('cache-control', 'private, s-maxage=60, max-age=60'), ('date', 'Fri, 07 Sep 2012 23:34:43 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"forks":772,"has_downloads":true,"owner":{"gravatar_id":"878a0ea898da1701df8573ed64a5cc9d","login":"git","avatar_url":"https://secure.gravatar.com/avatar/878a0ea898da1701df8573ed64a5cc9d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","url":"https://api.github.com/users/git","id":18133},"description":"Git Source Code Mirror - This is a publish-only repository and all pull requests are ignored. Please follow Documentation/SubmittingPatches procedure for any of your improvements.","git_url":"git://github.com/git/git.git","permissions":{"pull":true,"push":false,"admin":false},"mirror_url":null,"forks_count":772,"clone_url":"https://github.com/git/git.git","created_at":"2008-07-23T14:21:26Z","watchers_count":2886,"html_url":"https://github.com/git/git","has_wiki":false,"watchers":2886,"open_issues_count":4,"size":36484,"fork":false,"open_issues":4,"has_issues":false,"updated_at":"2012-09-07T22:39:33Z","full_name":"git/git","name":"git","url":"https://api.github.com/repos/git/git","ssh_url":"git@github.com:git/git.git","private":false,"id":36502,"language":"C","homepage":"This is a publish-only repository and all pull requests are ignored. Please follow Documentation/SubmittingPatches procedure for any of your improvements.","svn_url":"https://github.com/git/git","pushed_at":"2012-09-07T21:55:44Z"},{"forks":3,"has_downloads":true,"owner":{"gravatar_id":"0bafbcfcfb548a4ac20406692858f68b","login":"moriyoshi","avatar_url":"https://secure.gravatar.com/avatar/0bafbcfcfb548a4ac20406692858f68b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/moriyoshi","id":18755},"description":"Create your PHP extension in C++, in a minute.","git_url":"git://github.com/moriyoshi/boost.php.git","permissions":{"pull":true,"push":false,"admin":false},"mirror_url":null,"forks_count":3,"clone_url":"https://github.com/moriyoshi/boost.php.git","created_at":"2008-07-29T03:01:07Z","watchers_count":47,"html_url":"https://github.com/moriyoshi/boost.php","has_wiki":true,"watchers":47,"open_issues_count":1,"size":1331,"fork":false,"open_issues":1,"has_issues":true,"updated_at":"2012-09-05T22:29:17Z","full_name":"moriyoshi/boost.php","name":"boost.php","url":"https://api.github.com/repos/moriyoshi/boost.php","ssh_url":"git@github.com:moriyoshi/boost.php.git","private":false,"id":38097,"language":"C++","homepage":"","svn_url":"https://github.com/moriyoshi/boost.php","pushed_at":"2009-12-15T14:07:47Z"},{"forks":296,"has_downloads":false,"owner":{"gravatar_id":"885e1c523b7975c4003de162d8ee8fee","login":"capistrano","avatar_url":"https://secure.gravatar.com/avatar/885e1c523b7975c4003de162d8ee8fee?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","url":"https://api.github.com/users/capistrano","id":58257},"description":"Remote multi-server automation tool","git_url":"git://github.com/capistrano/capistrano.git","permissions":{"pull":true,"push":false,"admin":false},"mirror_url":null,"forks_count":296,"clone_url":"https://github.com/capistrano/capistrano.git","created_at":"2009-02-26T16:14:04Z","watchers_count":2638,"html_url":"https://github.com/capistrano/capistrano","has_wiki":true,"watchers":2638,"open_issues_count":44,"size":644,"fork":true,"open_issues":44,"has_issues":true,"updated_at":"2012-09-07T16:07:26Z","full_name":"capistrano/capistrano","name":"capistrano","url":"https://api.github.com/repos/capistrano/capistrano","ssh_url":"git@github.com:capistrano/capistrano.git","private":false,"id":138312,"language":"Ruby","homepage":"http://capify.org","svn_url":"https://github.com/capistrano/capistrano","pushed_at":"2012-09-06T17:01:03Z"},{"forks":0,"has_downloads":true,"owner":{"gravatar_id":"0bafbcfcfb548a4ac20406692858f68b","login":"moriyoshi","avatar_url":"https://secure.gravatar.com/avatar/0bafbcfcfb548a4ac20406692858f68b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/moriyoshi","id":18755},"description":"Still a proof of concept...","git_url":"git://github.com/moriyoshi/boost.perl.git","permissions":{"pull":true,"push":false,"admin":false},"mirror_url":null,"forks_count":0,"clone_url":"https://github.com/moriyoshi/boost.perl.git","created_at":"2009-03-30T21:09:12Z","watchers_count":8,"html_url":"https://github.com/moriyoshi/boost.perl","has_wiki":true,"watchers":8,"open_issues_count":0,"size":512,"fork":false,"open_issues":0,"has_issues":true,"updated_at":"2011-10-03T23:45:58Z","full_name":"moriyoshi/boost.perl","name":"boost.perl","url":"https://api.github.com/repos/moriyoshi/boost.perl","ssh_url":"git@github.com:moriyoshi/boost.perl.git","private":false,"id":163431,"language":"C++","homepage":"","svn_url":"https://github.com/moriyoshi/boost.perl","pushed_at":"2010-05-28T07:23:06Z"},{"forks":72,"has_downloads":true,"owner":{"gravatar_id":"918b627daf7d848cd40770ed6cd15233","login":"apenwarr","avatar_url":"https://secure.gravatar.com/avatar/918b627daf7d848cd40770ed6cd15233?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/apenwarr","id":20592},"description":"An experimental alternative to the git-submodule command. Merges and splits subtrees from your project into subprojects and back.","git_url":"git://github.com/apenwarr/git-subtree.git","permissions":{"pull":true,"push":false,"admin":false},"mirror_url":null,"forks_count":72,"clone_url":"https://github.com/apenwarr/git-subtree.git","created_at":"2009-04-25T04:10:31Z","watchers_count":648,"html_url":"https://github.com/apenwarr/git-subtree","has_wiki":false,"watchers":648,"open_issues_count":11,"size":232,"fork":false,"open_issues":11,"has_issues":false,"updated_at":"2012-09-07T14:50:20Z","full_name":"apenwarr/git-subtree","name":"git-subtree","url":"https://api.github.com/repos/apenwarr/git-subtree","ssh_url":"git@github.com:apenwarr/git-subtree.git","private":false,"id":185096,"language":"Shell","homepage":"","svn_url":"https://github.com/apenwarr/git-subtree","pushed_at":"2012-07-14T19:40:25Z"},{"forks":29,"has_downloads":true,"owner":{"gravatar_id":"1b5633ca7f3390376c779e5f716a3ed0","login":"cosmin","avatar_url":"https://secure.gravatar.com/avatar/1b5633ca7f3390376c779e5f716a3ed0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/cosmin","id":1358},"description":"A git-hg utility for checking out and tracking a mercurial repo.","git_url":"git://github.com/cosmin/git-hg.git","permissions":{"pull":true,"push":false,"admin":false},"mirror_url":null,"forks_count":29,"clone_url":"https://github.com/cosmin/git-hg.git","created_at":"2009-05-14T20:23:01Z","watchers_count":156,"html_url":"https://github.com/cosmin/git-hg","has_wiki":true,"watchers":156,"open_issues_count":2,"size":200,"fork":false,"open_issues":2,"has_issues":true,"updated_at":"2012-09-07T07:37:40Z","full_name":"cosmin/git-hg","name":"git-hg","url":"https://api.github.com/repos/cosmin/git-hg","ssh_url":"git@github.com:cosmin/git-hg.git","private":false,"id":201230,"language":"Shell","homepage":"http://offbytwo.github.com/git-hg","svn_url":"https://github.com/cosmin/git-hg","pushed_at":"2012-08-15T18:18:04Z"},{"master_branch":"master","forks":4572,"has_downloads":false,"owner":{"gravatar_id":"1510549f9353c9859b7b3c81872df09c","login":"mxcl","avatar_url":"https://secure.gravatar.com/avatar/1510549f9353c9859b7b3c81872df09c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/mxcl","id":58962},"description":"The missing package manager for OS X.","git_url":"git://github.com/mxcl/homebrew.git","permissions":{"pull":true,"push":false,"admin":false},"mirror_url":null,"forks_count":4572,"clone_url":"https://github.com/mxcl/homebrew.git","created_at":"2009-05-20T19:38:37Z","watchers_count":9910,"html_url":"https://github.com/mxcl/homebrew","has_wiki":true,"watchers":9910,"open_issues_count":326,"size":7160,"fork":false,"open_issues":326,"has_issues":true,"updated_at":"2012-09-07T22:40:37Z","full_name":"mxcl/homebrew","name":"homebrew","url":"https://api.github.com/repos/mxcl/homebrew","ssh_url":"git@github.com:mxcl/homebrew.git","private":false,"id":206084,"language":"Ruby","homepage":"http://mxcl.github.com/homebrew","svn_url":"https://github.com/mxcl/homebrew","pushed_at":"2012-09-07T21:19:16Z"},{"forks":1,"has_downloads":true,"owner":{"gravatar_id":"992fe8c19bbbc27f2b562a9f96efc03d","login":"jamis","avatar_url":"https://secure.gravatar.com/avatar/992fe8c19bbbc27f2b562a9f96efc03d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/jamis","id":1627},"description":"A library for generating Celtic Knotwork designs from graphs","git_url":"git://github.com/jamis/celtic_knot.git","permissions":{"pull":true,"push":false,"admin":false},"mirror_url":null,"forks_count":1,"clone_url":"https://github.com/jamis/celtic_knot.git","created_at":"2009-05-24T23:23:10Z","watchers_count":4,"html_url":"https://github.com/jamis/celtic_knot","has_wiki":true,"watchers":4,"open_issues_count":0,"size":1272,"fork":false,"open_issues":0,"has_issues":true,"updated_at":"2011-10-12T04:36:53Z","full_name":"jamis/celtic_knot","name":"celtic_knot","url":"https://api.github.com/repos/jamis/celtic_knot","ssh_url":"git@github.com:jamis/celtic_knot.git","private":false,"id":209230,"language":"Ruby","homepage":"","svn_url":"https://github.com/jamis/celtic_knot","pushed_at":"2010-11-25T02:39:53Z"},{"forks":14,"has_downloads":true,"owner":{"gravatar_id":"fcc237fd34a8e504f7224df0c58cc0b3","login":"jdavisp3","avatar_url":"https://secure.gravatar.com/avatar/fcc237fd34a8e504f7224df0c58cc0b3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/jdavisp3","id":43582},"description":"Source files used for an introduction to Twisted","git_url":"git://github.com/jdavisp3/twisted-intro.git","permissions":{"pull":true,"push":false,"admin":false},"mirror_url":null,"forks_count":14,"clone_url":"https://github.com/jdavisp3/twisted-intro.git","created_at":"2009-08-09T17:54:00Z","watchers_count":67,"html_url":"https://github.com/jdavisp3/twisted-intro","has_wiki":true,"watchers":67,"open_issues_count":0,"size":196,"fork":false,"open_issues":0,"has_issues":true,"updated_at":"2012-09-03T08:56:13Z","full_name":"jdavisp3/twisted-intro","name":"twisted-intro","url":"https://api.github.com/repos/jdavisp3/twisted-intro","ssh_url":"git@github.com:jdavisp3/twisted-intro.git","private":false,"id":273325,"language":"Python","homepage":"http://krondo.com/blog/?page_id=1327","svn_url":"https://github.com/jdavisp3/twisted-intro","pushed_at":"2012-06-24T03:44:38Z"},{"forks":577,"has_downloads":false,"owner":{"gravatar_id":"61024896f291303615bcd4f7a0dcfb74","login":"github","avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","url":"https://api.github.com/users/github","id":9919},"description":"The code we use to render README.your_favorite_markup","git_url":"git://github.com/github/markup.git","permissions":{"pull":true,"push":false,"admin":false},"mirror_url":null,"forks_count":577,"clone_url":"https://github.com/github/markup.git","created_at":"2009-10-31T01:02:46Z","watchers_count":1246,"html_url":"https://github.com/github/markup","has_wiki":false,"watchers":1246,"open_issues_count":79,"size":312,"fork":false,"open_issues":79,"has_issues":true,"updated_at":"2012-09-07T19:49:25Z","full_name":"github/markup","name":"markup","url":"https://api.github.com/repos/github/markup","ssh_url":"git@github.com:github/markup.git","private":false,"id":355893,"language":"Python","homepage":"","svn_url":"https://github.com/github/markup","pushed_at":"2012-08-05T18:59:47Z"},{"forks":114,"has_downloads":false,"owner":{"gravatar_id":"b8dbb1987e8e5318584865f880036796","login":"defunkt","avatar_url":"https://secure.gravatar.com/avatar/b8dbb1987e8e5318584865f880036796?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/defunkt","id":2},"description":"hub introduces git to GitHub","git_url":"git://github.com/defunkt/hub.git","permissions":{"pull":true,"push":false,"admin":false},"mirror_url":null,"forks_count":114,"clone_url":"https://github.com/defunkt/hub.git","created_at":"2009-12-05T22:15:25Z","watchers_count":1449,"html_url":"https://github.com/defunkt/hub","has_wiki":false,"watchers":1449,"open_issues_count":19,"size":280,"fork":false,"open_issues":19,"has_issues":true,"updated_at":"2012-09-06T21:08:04Z","full_name":"defunkt/hub","name":"hub","url":"https://api.github.com/repos/defunkt/hub","ssh_url":"git@github.com:defunkt/hub.git","private":false,"id":401025,"language":"Ruby","homepage":"http://defunkt.io/hub/","svn_url":"https://github.com/defunkt/hub","pushed_at":"2012-07-24T11:24:47Z"},{"master_branch":"develop","forks":429,"has_downloads":true,"owner":{"gravatar_id":"466ef7561a0b100dc5a1021959962d28","login":"nvie","avatar_url":"https://secure.gravatar.com/avatar/466ef7561a0b100dc5a1021959962d28?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/nvie","id":83844},"description":"Git extensions to provide high-level repository operations for Vincent Driessen's branching model.","git_url":"git://github.com/nvie/gitflow.git","permissions":{"pull":true,"push":false,"admin":false},"mirror_url":null,"forks_count":429,"clone_url":"https://github.com/nvie/gitflow.git","created_at":"2010-01-20T23:14:12Z","watchers_count":4650,"html_url":"https://github.com/nvie/gitflow","has_wiki":true,"watchers":4650,"open_issues_count":100,"size":4430,"fork":false,"open_issues":100,"has_issues":true,"updated_at":"2012-09-07T23:33:59Z","full_name":"nvie/gitflow","name":"gitflow","url":"https://api.github.com/repos/nvie/gitflow","ssh_url":"git@github.com:nvie/gitflow.git","private":false,"id":481366,"language":"Shell","homepage":"http://nvie.com/posts/a-successful-git-branching-model/","svn_url":"https://github.com/nvie/gitflow","pushed_at":"2012-07-10T09:18:03Z"},{"forks":59,"has_downloads":true,"owner":{"gravatar_id":"f2583cecbd75c5999bf65d9eeb6a84f2","login":"lg","avatar_url":"https://secure.gravatar.com/avatar/f2583cecbd75c5999bf65d9eeb6a84f2?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/lg","id":181018},"description":"Large scale server deploys using BitTorrent and the BitTornado library","git_url":"git://github.com/lg/murder.git","permissions":{"pull":true,"push":false,"admin":false},"mirror_url":null,"forks_count":59,"clone_url":"https://github.com/lg/murder.git","created_at":"2010-01-21T07:05:36Z","watchers_count":1286,"html_url":"https://github.com/lg/murder","has_wiki":true,"watchers":1286,"open_issues_count":9,"size":1228,"fork":false,"open_issues":9,"has_issues":true,"updated_at":"2012-09-05T19:50:00Z","full_name":"lg/murder","name":"murder","url":"https://api.github.com/repos/lg/murder","ssh_url":"git@github.com:lg/murder.git","private":false,"id":481811,"language":"Python","homepage":"http://twitter.com","svn_url":"https://github.com/lg/murder","pushed_at":"2011-10-18T00:40:07Z"},{"master_branch":"develop","forks":512,"has_downloads":true,"owner":{"gravatar_id":"9062d6f913c867ce042928d6637abd05","login":"boto","avatar_url":"https://secure.gravatar.com/avatar/9062d6f913c867ce042928d6637abd05?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","url":"https://api.github.com/users/boto","id":327752},"description":"Python interface to Amazon Web Services","git_url":"git://github.com/boto/boto.git","permissions":{"pull":true,"push":false,"admin":false},"mirror_url":null,"forks_count":512,"clone_url":"https://github.com/boto/boto.git","created_at":"2010-07-12T19:15:33Z","watchers_count":1947,"html_url":"https://github.com/boto/boto","has_wiki":true,"watchers":1947,"open_issues_count":177,"size":5723,"fork":false,"open_issues":177,"has_issues":true,"updated_at":"2012-09-07T20:38:05Z","full_name":"boto/boto","name":"boto","url":"https://api.github.com/repos/boto/boto","ssh_url":"git@github.com:boto/boto.git","private":false,"id":771016,"language":"Python","homepage":"http://docs.pythonboto.org/","svn_url":"https://github.com/boto/boto","pushed_at":"2012-09-06T22:09:52Z"},{"forks":49,"has_downloads":true,"owner":{"gravatar_id":"1cdc781dd667a5d4b61340591bf1bef4","login":"rtyley","avatar_url":"https://secure.gravatar.com/avatar/1cdc781dd667a5d4b61340591bf1bef4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/rtyley","id":52038},"description":"Agit - Git client for Android","git_url":"git://github.com/rtyley/agit.git","permissions":{"pull":true,"push":false,"admin":false},"mirror_url":null,"forks_count":49,"clone_url":"https://github.com/rtyley/agit.git","created_at":"2010-08-29T21:45:54Z","watchers_count":236,"html_url":"https://github.com/rtyley/agit","has_wiki":true,"watchers":236,"open_issues_count":35,"size":1240,"fork":false,"open_issues":35,"has_issues":true,"updated_at":"2012-09-07T14:46:30Z","full_name":"rtyley/agit","name":"agit","url":"https://api.github.com/repos/rtyley/agit","ssh_url":"git@github.com:rtyley/agit.git","private":false,"id":870849,"language":"Java","homepage":"https://market.android.com/details?id=com.madgag.agit","svn_url":"https://github.com/rtyley/agit","pushed_at":"2012-08-14T14:51:40Z"},{"forks":1137,"has_downloads":true,"owner":{"gravatar_id":"005a27e09fe946ebef64bf4d134efc0a","login":"mbostock","avatar_url":"https://secure.gravatar.com/avatar/005a27e09fe946ebef64bf4d134efc0a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/mbostock","id":230541},"description":"A JavaScript visualization library for HTML and SVG.","git_url":"git://github.com/mbostock/d3.git","permissions":{"pull":true,"push":false,"admin":false},"mirror_url":null,"forks_count":1137,"clone_url":"https://github.com/mbostock/d3.git","created_at":"2010-09-27T17:22:42Z","watchers_count":8352,"html_url":"https://github.com/mbostock/d3","has_wiki":true,"watchers":8352,"open_issues_count":123,"size":2928,"fork":false,"open_issues":123,"has_issues":true,"updated_at":"2012-09-07T21:21:07Z","full_name":"mbostock/d3","name":"d3","url":"https://api.github.com/repos/mbostock/d3","ssh_url":"git@github.com:mbostock/d3.git","private":false,"id":943149,"language":"JavaScript","homepage":"http://d3js.org","svn_url":"https://github.com/mbostock/d3","pushed_at":"2012-09-04T02:21:17Z"},{"forks":60,"has_downloads":true,"owner":{"gravatar_id":"1c56acccc41c591705dc92da5f6ab603","login":"libgit2","avatar_url":"https://secure.gravatar.com/avatar/1c56acccc41c591705dc92da5f6ab603?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","url":"https://api.github.com/users/libgit2","id":394745},"description":"Python bindings for libgit2","git_url":"git://github.com/libgit2/pygit2.git","permissions":{"pull":true,"push":false,"admin":false},"mirror_url":null,"forks_count":60,"clone_url":"https://github.com/libgit2/pygit2.git","created_at":"2010-11-08T16:27:48Z","watchers_count":265,"html_url":"https://github.com/libgit2/pygit2","has_wiki":false,"watchers":265,"open_issues_count":19,"size":200,"fork":false,"open_issues":19,"has_issues":true,"updated_at":"2012-09-04T23:59:16Z","full_name":"libgit2/pygit2","name":"pygit2","url":"https://api.github.com/repos/libgit2/pygit2","ssh_url":"git@github.com:libgit2/pygit2.git","private":false,"id":1062237,"language":"C","homepage":"","svn_url":"https://github.com/libgit2/pygit2","pushed_at":"2012-08-28T08:34:33Z"},{"forks":23,"has_downloads":true,"owner":{"gravatar_id":"9375a9529679f1b42b567a640d775e7d","login":"schacon","avatar_url":"https://secure.gravatar.com/avatar/9375a9529679f1b42b567a640d775e7d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/schacon","id":70},"description":"command line tool to facilitate github pull requests","git_url":"git://github.com/schacon/git-pulls.git","permissions":{"pull":true,"push":false,"admin":false},"mirror_url":null,"forks_count":23,"clone_url":"https://github.com/schacon/git-pulls.git","created_at":"2010-12-27T20:39:24Z","watchers_count":177,"html_url":"https://github.com/schacon/git-pulls","has_wiki":true,"watchers":177,"open_issues_count":12,"size":1004,"fork":false,"open_issues":12,"has_issues":true,"updated_at":"2012-08-29T19:10:30Z","full_name":"schacon/git-pulls","name":"git-pulls","url":"https://api.github.com/repos/schacon/git-pulls","ssh_url":"git@github.com:schacon/git-pulls.git","private":false,"id":1201343,"language":"Ruby","homepage":"","svn_url":"https://github.com/schacon/git-pulls","pushed_at":"2011-10-28T07:11:56Z"},{"forks":1,"has_downloads":true,"owner":{"gravatar_id":"0d0c6eda804f912d230df91577e29180","login":"emesik","avatar_url":"https://secure.gravatar.com/avatar/0d0c6eda804f912d230df91577e29180?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/emesik","id":407107},"description":"Django template tag for rendering math formulas","git_url":"git://github.com/emesik/django_mathlatex.git","permissions":{"pull":true,"push":false,"admin":false},"mirror_url":null,"forks_count":1,"clone_url":"https://github.com/emesik/django_mathlatex.git","created_at":"2011-03-06T22:29:04Z","watchers_count":4,"html_url":"https://github.com/emesik/django_mathlatex","has_wiki":true,"watchers":4,"open_issues_count":0,"size":448,"fork":false,"open_issues":0,"has_issues":true,"updated_at":"2012-08-05T04:16:25Z","full_name":"emesik/django_mathlatex","name":"django_mathlatex","url":"https://api.github.com/repos/emesik/django_mathlatex","ssh_url":"git@github.com:emesik/django_mathlatex.git","private":false,"id":1447846,"language":"Python","homepage":"","svn_url":"https://github.com/emesik/django_mathlatex","pushed_at":"2011-04-01T11:33:23Z"},{"forks":60,"has_downloads":true,"owner":{"gravatar_id":"a08f4e2d6ccccab586b502992c31e2ce","login":"aliasaria","avatar_url":"https://secure.gravatar.com/avatar/a08f4e2d6ccccab586b502992c31e2ce?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/aliasaria","id":213343},"description":"Collaborative Online Scrum Tool Using Websockets, Node.js, jQuery, and CSS3","git_url":"git://github.com/aliasaria/scrumblr.git","permissions":{"pull":true,"push":false,"admin":false},"mirror_url":null,"forks_count":60,"clone_url":"https://github.com/aliasaria/scrumblr.git","created_at":"2011-03-10T02:29:38Z","watchers_count":505,"html_url":"https://github.com/aliasaria/scrumblr","has_wiki":true,"watchers":505,"open_issues_count":17,"size":632,"fork":false,"open_issues":17,"has_issues":true,"updated_at":"2012-09-04T09:24:36Z","full_name":"aliasaria/scrumblr","name":"scrumblr","url":"https://api.github.com/repos/aliasaria/scrumblr","ssh_url":"git@github.com:aliasaria/scrumblr.git","private":false,"id":1461917,"language":"JavaScript","homepage":"http://scrumblr.ca","svn_url":"https://github.com/aliasaria/scrumblr","pushed_at":"2012-08-30T20:29:00Z"},{"forks":174,"has_downloads":true,"owner":{"gravatar_id":"61024896f291303615bcd4f7a0dcfb74","login":"github","avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","url":"https://api.github.com/users/github","id":9919},"description":"GitHub API documentation","git_url":"git://github.com/github/developer.github.com.git","permissions":{"pull":true,"push":false,"admin":false},"mirror_url":null,"forks_count":174,"clone_url":"https://github.com/github/developer.github.com.git","created_at":"2011-04-26T19:20:56Z","watchers_count":343,"html_url":"https://github.com/github/developer.github.com","has_wiki":false,"watchers":343,"open_issues_count":0,"size":412,"fork":false,"open_issues":0,"has_issues":false,"updated_at":"2012-09-07T20:42:32Z","full_name":"github/developer.github.com","name":"developer.github.com","url":"https://api.github.com/repos/github/developer.github.com","ssh_url":"git@github.com:github/developer.github.com.git","private":false,"id":1666784,"language":"Ruby","homepage":"http://developer.github.com","svn_url":"https://github.com/github/developer.github.com","pushed_at":"2012-09-07T20:42:32Z"},{"forks":13,"has_downloads":true,"owner":{"gravatar_id":"4174216c1dc0f223ce608d5a3b66a585","login":"ChristopherMacGown","avatar_url":"https://secure.gravatar.com/avatar/4174216c1dc0f223ce608d5a3b66a585?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/ChristopherMacGown","id":43081},"description":"Github API v3 library for Python.","git_url":"git://github.com/ChristopherMacGown/python-github3.git","permissions":{"pull":true,"push":false,"admin":false},"mirror_url":null,"forks_count":13,"clone_url":"https://github.com/ChristopherMacGown/python-github3.git","created_at":"2011-04-28T17:07:29Z","watchers_count":21,"html_url":"https://github.com/ChristopherMacGown/python-github3","has_wiki":true,"watchers":21,"open_issues_count":1,"size":136,"fork":false,"open_issues":1,"has_issues":true,"updated_at":"2012-09-06T20:37:19Z","full_name":"ChristopherMacGown/python-github3","name":"python-github3","url":"https://api.github.com/repos/ChristopherMacGown/python-github3","ssh_url":"git@github.com:ChristopherMacGown/python-github3.git","private":false,"id":1676748,"language":"Python","homepage":"","svn_url":"https://github.com/ChristopherMacGown/python-github3","pushed_at":"2012-09-06T20:37:01Z"},{"forks":3,"has_downloads":true,"owner":{"gravatar_id":"6e33170f0701d1d1d8dd57c8f95368ef","login":"pjkersten","avatar_url":"https://secure.gravatar.com/avatar/6e33170f0701d1d1d8dd57c8f95368ef?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/pjkersten","id":771883},"description":"PlantUML plugin for MediaWiki","git_url":"git://github.com/pjkersten/PlantUML.git","permissions":{"pull":true,"push":false,"admin":false},"mirror_url":null,"forks_count":3,"clone_url":"https://github.com/pjkersten/PlantUML.git","created_at":"2011-05-06T09:33:38Z","watchers_count":7,"html_url":"https://github.com/pjkersten/PlantUML","has_wiki":true,"watchers":7,"open_issues_count":0,"size":132,"fork":false,"open_issues":0,"has_issues":true,"updated_at":"2012-07-25T01:45:58Z","full_name":"pjkersten/PlantUML","name":"PlantUML","url":"https://api.github.com/repos/pjkersten/PlantUML","ssh_url":"git@github.com:pjkersten/PlantUML.git","private":false,"id":1710505,"language":"PHP","homepage":"","svn_url":"https://github.com/pjkersten/PlantUML","pushed_at":"2012-06-20T08:00:40Z"},{"forks":8262,"has_downloads":true,"owner":{"gravatar_id":"2f4a8254d032a8ec5e4c48d461e54fcc","login":"twitter","avatar_url":"https://secure.gravatar.com/avatar/2f4a8254d032a8ec5e4c48d461e54fcc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","url":"https://api.github.com/users/twitter","id":50278},"description":"HTML, CSS, and JS toolkit from Twitter","git_url":"git://github.com/twitter/bootstrap.git","permissions":{"pull":true,"push":false,"admin":false},"mirror_url":null,"forks_count":8262,"clone_url":"https://github.com/twitter/bootstrap.git","created_at":"2011-07-29T21:19:00Z","watchers_count":37009,"html_url":"https://github.com/twitter/bootstrap","has_wiki":true,"watchers":37009,"open_issues_count":145,"size":1384,"fork":false,"open_issues":145,"has_issues":true,"updated_at":"2012-09-07T23:17:13Z","full_name":"twitter/bootstrap","name":"bootstrap","url":"https://api.github.com/repos/twitter/bootstrap","ssh_url":"git@github.com:twitter/bootstrap.git","private":false,"id":2126244,"language":"JavaScript","homepage":"http://twitter.github.com/bootstrap","svn_url":"https://github.com/twitter/bootstrap","pushed_at":"2012-09-07T18:42:29Z"},{"forks":2,"has_downloads":true,"owner":{"gravatar_id":"ce5bfd8756e2fae0e800bbea413e86b3","login":"stephenmcd","avatar_url":"https://secure.gravatar.com/avatar/ce5bfd8756e2fae0e800bbea413e86b3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/stephenmcd","id":116385},"description":"Drawn By is a collaborative real-time sketching app built for the 2011 Django Dash.","git_url":"git://github.com/stephenmcd/drawnby.git","permissions":{"pull":true,"push":false,"admin":false},"mirror_url":null,"forks_count":2,"clone_url":"https://github.com/stephenmcd/drawnby.git","created_at":"2011-08-01T10:25:31Z","watchers_count":12,"html_url":"https://github.com/stephenmcd/drawnby","has_wiki":true,"watchers":12,"open_issues_count":0,"size":384,"fork":false,"open_issues":0,"has_issues":true,"updated_at":"2012-09-06T12:27:16Z","full_name":"stephenmcd/drawnby","name":"drawnby","url":"https://api.github.com/repos/stephenmcd/drawnby","ssh_url":"git@github.com:stephenmcd/drawnby.git","private":false,"id":2136154,"language":"JavaScript","homepage":"http://drawnby.jupo.org","svn_url":"https://github.com/stephenmcd/drawnby","pushed_at":"2012-07-30T13:36:35Z"},{"forks":39,"has_downloads":true,"owner":{"gravatar_id":"ce5bfd8756e2fae0e800bbea413e86b3","login":"stephenmcd","avatar_url":"https://secure.gravatar.com/avatar/ce5bfd8756e2fae0e800bbea413e86b3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/stephenmcd","id":116385},"description":"A Django app providing the features required to use websockets with Django via Socket.IO","git_url":"git://github.com/stephenmcd/django-socketio.git","permissions":{"pull":true,"push":false,"admin":false},"mirror_url":null,"forks_count":39,"clone_url":"https://github.com/stephenmcd/django-socketio.git","created_at":"2011-08-01T21:18:34Z","watchers_count":323,"html_url":"https://github.com/stephenmcd/django-socketio","has_wiki":true,"watchers":323,"open_issues_count":6,"size":180,"fork":false,"open_issues":6,"has_issues":true,"updated_at":"2012-09-06T13:47:36Z","full_name":"stephenmcd/django-socketio","name":"django-socketio","url":"https://api.github.com/repos/stephenmcd/django-socketio","ssh_url":"git@github.com:stephenmcd/django-socketio.git","private":false,"id":2139136,"language":"JavaScript","homepage":"","svn_url":"https://github.com/stephenmcd/django-socketio","pushed_at":"2012-08-29T20:29:10Z"},{"forks":4,"has_downloads":true,"owner":{"gravatar_id":"f69b46619a23b64a1184bd038bfa8de5","login":"jstasiak","avatar_url":"https://secure.gravatar.com/avatar/f69b46619a23b64a1184bd038bfa8de5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/jstasiak","id":36209},"description":"Use this application to get Socket.IO support in your Django project and dive into real time web.","git_url":"git://github.com/jstasiak/django-realtime.git","permissions":{"pull":true,"push":false,"admin":false},"mirror_url":null,"forks_count":4,"clone_url":"https://github.com/jstasiak/django-realtime.git","created_at":"2011-09-20T19:13:10Z","watchers_count":23,"html_url":"https://github.com/jstasiak/django-realtime","has_wiki":true,"watchers":23,"open_issues_count":0,"size":132,"fork":false,"open_issues":0,"has_issues":true,"updated_at":"2012-08-21T15:09:28Z","full_name":"jstasiak/django-realtime","name":"django-realtime","url":"https://api.github.com/repos/jstasiak/django-realtime","ssh_url":"git@github.com:jstasiak/django-realtime.git","private":false,"id":2424738,"language":"JavaScript","homepage":"","svn_url":"https://github.com/jstasiak/django-realtime","pushed_at":"2012-04-21T16:22:25Z"},{"forks":4,"has_downloads":true,"owner":{"gravatar_id":"af55714b265c4914c8bb8db49fc06da6","login":"AcmeSystems","avatar_url":"https://secure.gravatar.com/avatar/af55714b265c4914c8bb8db49fc06da6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","url":"https://api.github.com/users/AcmeSystems","id":783524},"description":"Small programming examples for the FOX Board G20","git_url":"git://github.com/AcmeSystems/playground.git","permissions":{"pull":true,"push":false,"admin":false},"mirror_url":null,"forks_count":4,"clone_url":"https://github.com/AcmeSystems/playground.git","created_at":"2011-10-17T16:16:10Z","watchers_count":7,"html_url":"https://github.com/AcmeSystems/playground","has_wiki":true,"watchers":7,"open_issues_count":0,"size":212,"fork":false,"open_issues":0,"has_issues":true,"updated_at":"2012-09-06T16:51:18Z","full_name":"AcmeSystems/playground","name":"playground","url":"https://api.github.com/repos/AcmeSystems/playground","ssh_url":"git@github.com:AcmeSystems/playground.git","private":false,"id":2593052,"language":"Python","homepage":"http://www.acmesystems.it","svn_url":"https://github.com/AcmeSystems/playground","pushed_at":"2012-09-06T16:51:16Z"},{"forks":36,"has_downloads":true,"owner":{"gravatar_id":"d3231546d42d67974fc51956a3b627f4","login":"juuso","avatar_url":"https://secure.gravatar.com/avatar/d3231546d42d67974fc51956a3b627f4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/juuso","id":614446},"description":"A silly & effective MD5 cracker in Ruby","git_url":"git://github.com/juuso/BozoCrack.git","permissions":{"pull":true,"push":false,"admin":false},"mirror_url":null,"forks_count":36,"clone_url":"https://github.com/juuso/BozoCrack.git","created_at":"2011-11-07T13:02:08Z","watchers_count":375,"html_url":"https://github.com/juuso/BozoCrack","has_wiki":true,"watchers":375,"open_issues_count":8,"size":140,"fork":false,"open_issues":8,"has_issues":true,"updated_at":"2012-09-07T10:43:48Z","full_name":"juuso/BozoCrack","name":"BozoCrack","url":"https://api.github.com/repos/juuso/BozoCrack","ssh_url":"git@github.com:juuso/BozoCrack.git","private":false,"id":2726128,"language":"Ruby","homepage":"","svn_url":"https://github.com/juuso/BozoCrack","pushed_at":"2011-11-07T14:55:19Z"},{"forks":1,"has_downloads":true,"owner":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","url":"https://api.github.com/users/BeaverSoftware","id":1424031},"description":"","git_url":"git://github.com/BeaverSoftware/FatherBeaver.git","permissions":{"pull":true,"push":true,"admin":true},"mirror_url":null,"forks_count":1,"clone_url":"https://github.com/BeaverSoftware/FatherBeaver.git","created_at":"2012-02-09T19:32:21Z","watchers_count":2,"html_url":"https://github.com/BeaverSoftware/FatherBeaver","has_wiki":true,"watchers":2,"open_issues_count":0,"size":0,"fork":false,"open_issues":0,"has_issues":true,"updated_at":"2012-02-16T21:51:15Z","full_name":"BeaverSoftware/FatherBeaver","name":"FatherBeaver","url":"https://api.github.com/repos/BeaverSoftware/FatherBeaver","ssh_url":"git@github.com:BeaverSoftware/FatherBeaver.git","private":false,"id":3400397,"language":null,"homepage":"","svn_url":"https://github.com/BeaverSoftware/FatherBeaver","pushed_at":null}] + +https +GET +api.github.com +None +/user/starred?page=2 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '5925'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4969'), ('server', 'nginx/1.0.13'), ('last-modified', 'Fri, 07 Sep 2012 23:24:22 GMT'), ('connection', 'keep-alive'), ('etag', '"94c163fa14b07651e050e97613c9aea5"'), ('link', '; rel="first", ; rel="prev"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 07 Sep 2012 23:34:44 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"forks":1,"has_downloads":true,"html_url":"https://github.com/joestein/amaunet","owner":{"gravatar_id":"c5949edcf9e35a9aeb2584b6d4a58dcf","login":"joestein","url":"https://api.github.com/users/joestein","avatar_url":"https://secure.gravatar.com/avatar/c5949edcf9e35a9aeb2584b6d4a58dcf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","id":115151},"description":"Python Streaming Example","permissions":{"pull":true,"push":false,"admin":false},"forks_count":1,"clone_url":"https://github.com/joestein/amaunet.git","git_url":"git://github.com/joestein/amaunet.git","created_at":"2012-03-09T02:03:25Z","has_wiki":true,"watchers_count":6,"watchers":6,"mirror_url":null,"open_issues_count":0,"size":84,"fork":false,"open_issues":0,"has_issues":true,"updated_at":"2012-07-23T00:48:19Z","full_name":"joestein/amaunet","name":"amaunet","url":"https://api.github.com/repos/joestein/amaunet","ssh_url":"git@github.com:joestein/amaunet.git","private":false,"id":3666534,"language":null,"homepage":"http://allthingshadoop.com/2010/12/16/simple-hadoop-streaming-tutorial-using-joins-and-keys-with-python/","svn_url":"https://github.com/joestein/amaunet","pushed_at":"2012-03-09T02:20:37Z"},{"forks":840,"has_downloads":true,"html_url":"https://github.com/django/django","owner":{"gravatar_id":"fd542381031aa84dca86628ece84fc07","login":"django","url":"https://api.github.com/users/django","avatar_url":"https://secure.gravatar.com/avatar/fd542381031aa84dca86628ece84fc07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","id":27804},"description":"The Web framework for perfectionists with deadlines.","permissions":{"pull":true,"push":false,"admin":false},"forks_count":840,"clone_url":"https://github.com/django/django.git","git_url":"git://github.com/django/django.git","created_at":"2012-04-28T02:47:18Z","has_wiki":false,"watchers_count":4040,"watchers":4040,"mirror_url":null,"open_issues_count":94,"size":10896,"fork":false,"open_issues":94,"has_issues":false,"updated_at":"2012-09-07T23:24:22Z","full_name":"django/django","name":"django","url":"https://api.github.com/repos/django/django","ssh_url":"git@github.com:django/django.git","private":false,"id":4164482,"language":"Python","homepage":"http://www.djangoproject.com/","svn_url":"https://github.com/django/django","pushed_at":"2012-09-07T23:24:22Z"},{"forks":0,"has_downloads":true,"html_url":"https://github.com/jacquev6/django","owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","id":327146},"description":"The Web framework for perfectionists with deadlines. Now on GitHub.","permissions":{"pull":true,"push":true,"admin":true},"forks_count":0,"clone_url":"https://github.com/jacquev6/django.git","git_url":"git://github.com/jacquev6/django.git","created_at":"2012-04-28T11:06:20Z","has_wiki":false,"watchers_count":2,"watchers":2,"mirror_url":null,"open_issues_count":0,"size":48476,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-06-09T10:37:50Z","full_name":"jacquev6/django","name":"django","url":"https://api.github.com/repos/jacquev6/django","ssh_url":"git@github.com:jacquev6/django.git","private":false,"id":4166730,"language":"Python","homepage":"http://www.djangoproject.com/","svn_url":"https://github.com/jacquev6/django","pushed_at":"2012-04-28T04:05:15Z"},{"forks":1,"has_downloads":true,"html_url":"https://github.com/gturri/moviePlanning","owner":{"gravatar_id":"ba064e32f068e12bfc87d178179878a5","login":"gturri","url":"https://api.github.com/users/gturri","avatar_url":"https://secure.gravatar.com/avatar/ba064e32f068e12bfc87d178179878a5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","id":308601},"description":"","permissions":{"pull":true,"push":false,"admin":false},"forks_count":1,"clone_url":"https://github.com/gturri/moviePlanning.git","git_url":"git://github.com/gturri/moviePlanning.git","created_at":"2012-05-27T11:16:53Z","has_wiki":true,"watchers_count":2,"watchers":2,"mirror_url":null,"open_issues_count":0,"size":340,"fork":false,"open_issues":0,"has_issues":true,"updated_at":"2012-06-28T08:29:47Z","full_name":"gturri/moviePlanning","name":"moviePlanning","url":"https://api.github.com/repos/gturri/moviePlanning","ssh_url":"git@github.com:gturri/moviePlanning.git","private":false,"id":4461403,"language":"Python","homepage":null,"svn_url":"https://github.com/gturri/moviePlanning","pushed_at":"2012-06-28T08:29:46Z"},{"forks":370,"has_downloads":true,"html_url":"https://github.com/facebook/folly","owner":{"gravatar_id":"193c1a93276f729041fc875cf2a20773","login":"facebook","url":"https://api.github.com/users/facebook","avatar_url":"https://secure.gravatar.com/avatar/193c1a93276f729041fc875cf2a20773?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","id":69631},"description":"Folly is an open-source C++ library developed and used at Facebook.","permissions":{"pull":true,"push":false,"admin":false},"forks_count":370,"clone_url":"https://github.com/facebook/folly.git","git_url":"git://github.com/facebook/folly.git","created_at":"2012-06-01T20:49:04Z","has_wiki":true,"watchers_count":2419,"watchers":2419,"mirror_url":null,"open_issues_count":2,"size":376,"fork":false,"open_issues":2,"has_issues":true,"updated_at":"2012-09-07T22:17:59Z","full_name":"facebook/folly","name":"folly","url":"https://api.github.com/repos/facebook/folly","ssh_url":"git@github.com:facebook/folly.git","private":false,"id":4524181,"language":"C++","homepage":"https://groups.google.com/forum/?fromgroups#!forum/facebook-folly","svn_url":"https://github.com/facebook/folly","pushed_at":"2012-08-26T18:14:39Z"}] + +https +GET +api.github.com +None +/user/starred/nvie/gitflow +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4968'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('cache-control', ''), ('date', 'Fri, 07 Sep 2012 23:34:44 GMT')] + + +https +DELETE +api.github.com +None +/user/starred/nvie/gitflow +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4967'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('cache-control', ''), ('date', 'Fri, 07 Sep 2012 23:34:45 GMT')] + + +https +GET +api.github.com +None +/user/starred/nvie/gitflow +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +404 +[('status', '404 Not Found'), ('content-length', '23'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-remaining', '4966'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('cache-control', ''), ('date', 'Fri, 07 Sep 2012 23:34:45 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"message":"Not Found"} + +https +PUT +api.github.com +None +/user/starred/nvie/gitflow +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4965'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('cache-control', ''), ('date', 'Fri, 07 Sep 2012 23:34:46 GMT')] + + +https +GET +api.github.com +None +/user/starred/nvie/gitflow +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4964'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('cache-control', ''), ('date', 'Fri, 07 Sep 2012 23:34:47 GMT')] + + diff --git a/lib/github/tests/ReplayData/AuthenticatedUser.testSubscriptions.txt b/lib/github/tests/ReplayData/AuthenticatedUser.testSubscriptions.txt new file mode 100644 index 0000000000..85ccb6d08c --- /dev/null +++ b/lib/github/tests/ReplayData/AuthenticatedUser.testSubscriptions.txt @@ -0,0 +1,99 @@ +https +GET +api.github.com +None +/users/nvie +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4945'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '603'), ('server', 'nginx/1.0.13'), ('last-modified', 'Mon, 03 Sep 2012 09:24:06 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"eeac2be05fbbb88d548aaf0353a465f9"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 07 Sep 2012 23:53:21 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","gravatar_id":"466ef7561a0b100dc5a1021959962d28","hireable":false,"login":"nvie","public_gists":28,"blog":"http://nvie.com","created_at":"2009-05-12T21:19:38Z","bio":null,"email":"vincent@3rdcloud.com","company":"3rd Cloud","followers":347,"avatar_url":"https://secure.gravatar.com/avatar/466ef7561a0b100dc5a1021959962d28?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","public_repos":64,"name":"Vincent Driessen","url":"https://api.github.com/users/nvie","following":41,"html_url":"https://github.com/nvie","location":"Netherlands","id":83844} + +https +GET +api.github.com +None +/repos/nvie/gitflow +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4944'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '1272'), ('server', 'nginx/1.0.13'), ('last-modified', 'Fri, 07 Sep 2012 23:34:46 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"86a43618f03354f322e8cd3886e02308"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 07 Sep 2012 23:53:22 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"master_branch":"develop","forks":429,"has_downloads":true,"owner":{"gravatar_id":"466ef7561a0b100dc5a1021959962d28","login":"nvie","avatar_url":"https://secure.gravatar.com/avatar/466ef7561a0b100dc5a1021959962d28?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/nvie","id":83844},"description":"Git extensions to provide high-level repository operations for Vincent Driessen's branching model.","permissions":{"pull":true,"push":false,"admin":false},"forks_count":429,"clone_url":"https://github.com/nvie/gitflow.git","git_url":"git://github.com/nvie/gitflow.git","created_at":"2010-01-20T23:14:12Z","network_count":429,"has_wiki":true,"watchers_count":4650,"watchers":4650,"open_issues_count":100,"size":4430,"fork":false,"open_issues":100,"has_issues":true,"updated_at":"2012-09-07T23:34:46Z","full_name":"nvie/gitflow","name":"gitflow","url":"https://api.github.com/repos/nvie/gitflow","mirror_url":null,"ssh_url":"git@github.com:nvie/gitflow.git","html_url":"https://github.com/nvie/gitflow","private":false,"id":481366,"language":"Shell","homepage":"http://nvie.com/posts/a-successful-git-branching-model/","svn_url":"https://github.com/nvie/gitflow","pushed_at":"2012-07-10T09:18:03Z"} + +https +GET +api.github.com +None +/user/subscriptions +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4943'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '35709'), ('server', 'nginx/1.0.13'), ('last-modified', 'Fri, 07 Sep 2012 23:34:46 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last"'), ('etag', '"86a43618f03354f322e8cd3886e02308"'), ('cache-control', 'private, s-maxage=60, max-age=60'), ('date', 'Fri, 07 Sep 2012 23:53:22 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"master_branch":"develop","forks":429,"watchers_count":4650,"has_downloads":true,"owner":{"gravatar_id":"466ef7561a0b100dc5a1021959962d28","login":"nvie","url":"https://api.github.com/users/nvie","avatar_url":"https://secure.gravatar.com/avatar/466ef7561a0b100dc5a1021959962d28?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","id":83844},"open_issues_count":100,"description":"Git extensions to provide high-level repository operations for Vincent Driessen's branching model.","permissions":{"pull":true,"push":false,"admin":false},"forks_count":429,"clone_url":"https://github.com/nvie/gitflow.git","created_at":"2012-09-08T06:53:02Z","has_wiki":true,"watchers":4650,"html_url":"https://github.com/nvie/gitflow","size":4430,"fork":false,"open_issues":100,"has_issues":true,"updated_at":"2012-09-07T23:34:46Z","full_name":"nvie/gitflow","name":"gitflow","url":"https://api.github.com/repos/nvie/gitflow","ssh_url":"git@github.com:nvie/gitflow.git","git_url":"git://github.com/nvie/gitflow.git","private":false,"id":481366,"mirror_url":null,"language":"Shell","homepage":"http://nvie.com/posts/a-successful-git-branching-model/","svn_url":"https://github.com/nvie/gitflow","pushed_at":"2012-07-10T09:18:03Z"},{"master_branch":"master","forks":1,"watchers_count":0,"has_downloads":false,"owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","id":327146},"open_issues_count":0,"description":"Vincent's Development Environment","permissions":{"pull":true,"push":true,"admin":true},"forks_count":1,"clone_url":"https://github.com/jacquev6/ViDE.git","created_at":null,"has_wiki":false,"watchers":0,"html_url":"https://github.com/jacquev6/ViDE","size":1496,"fork":false,"open_issues":0,"has_issues":false,"updated_at":"2012-06-08T11:05:51Z","full_name":"jacquev6/ViDE","name":"ViDE","url":"https://api.github.com/repos/jacquev6/ViDE","ssh_url":"git@github.com:jacquev6/ViDE.git","git_url":"git://github.com/jacquev6/ViDE.git","private":false,"id":767343,"mirror_url":null,"language":"Python","homepage":"","svn_url":"https://github.com/jacquev6/ViDE","pushed_at":"2012-06-08T11:05:51Z"},{"master_branch":"master","forks":1,"watchers_count":1,"has_downloads":false,"owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","id":327146},"open_issues_count":0,"description":"","permissions":{"pull":true,"push":true,"admin":true},"forks_count":1,"clone_url":"https://github.com/jacquev6/Boost.HierarchicalEnum.git","created_at":"2012-08-07T03:23:22Z","has_wiki":false,"watchers":1,"html_url":"https://github.com/jacquev6/Boost.HierarchicalEnum","size":112,"fork":false,"open_issues":0,"has_issues":false,"updated_at":"2012-07-27T02:32:15Z","full_name":"jacquev6/Boost.HierarchicalEnum","name":"Boost.HierarchicalEnum","url":"https://api.github.com/repos/jacquev6/Boost.HierarchicalEnum","ssh_url":"git@github.com:jacquev6/Boost.HierarchicalEnum.git","git_url":"git://github.com/jacquev6/Boost.HierarchicalEnum.git","private":false,"id":767382,"mirror_url":null,"language":"C++","homepage":"","svn_url":"https://github.com/jacquev6/Boost.HierarchicalEnum","pushed_at":"2011-11-27T14:00:23Z"},{"master_branch":"master","forks":1,"watchers_count":0,"has_downloads":false,"owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","id":327146},"open_issues_count":0,"description":"A C++ interface to specify quadratic problems by C++ expressions of your variables. Try it online.","permissions":{"pull":true,"push":true,"admin":true},"forks_count":1,"clone_url":"https://github.com/jacquev6/QuadProgMm.git","created_at":null,"has_wiki":false,"watchers":0,"html_url":"https://github.com/jacquev6/QuadProgMm","size":760,"fork":false,"open_issues":0,"has_issues":false,"updated_at":"2012-04-16T18:39:06Z","full_name":"jacquev6/QuadProgMm","name":"QuadProgMm","url":"https://api.github.com/repos/jacquev6/QuadProgMm","ssh_url":"git@github.com:jacquev6/QuadProgMm.git","git_url":"git://github.com/jacquev6/QuadProgMm.git","private":false,"id":767386,"mirror_url":null,"language":"C++","homepage":"http://vincent-jacques.net/QuadProgMm","svn_url":"https://github.com/jacquev6/QuadProgMm","pushed_at":"2012-04-16T18:39:05Z"},{"master_branch":"master","forks":1,"watchers_count":0,"has_downloads":false,"owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","id":327146},"open_issues_count":0,"description":"Draw syntax diagrams from EBNF grammars. API in C++ and Python. Try it online.","permissions":{"pull":true,"push":true,"admin":true},"forks_count":1,"clone_url":"https://github.com/jacquev6/DrawSyntax.git","created_at":"2012-08-07T03:23:17Z","has_wiki":false,"watchers":0,"html_url":"https://github.com/jacquev6/DrawSyntax","size":1760,"fork":false,"open_issues":0,"has_issues":false,"updated_at":"2012-08-11T03:53:58Z","full_name":"jacquev6/DrawSyntax","name":"DrawSyntax","url":"https://api.github.com/repos/jacquev6/DrawSyntax","ssh_url":"git@github.com:jacquev6/DrawSyntax.git","git_url":"git://github.com/jacquev6/DrawSyntax.git","private":false,"id":767392,"mirror_url":null,"language":"C++","homepage":"http://vincent-jacques.net/DrawSyntax/","svn_url":"https://github.com/jacquev6/DrawSyntax","pushed_at":"2011-11-27T14:00:32Z"},{"master_branch":"master","forks":1,"watchers_count":0,"has_downloads":false,"owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","id":327146},"open_issues_count":0,"description":"A tool to draw Turk's Head Knots. Try it online","permissions":{"pull":true,"push":true,"admin":true},"forks_count":1,"clone_url":"https://github.com/jacquev6/DrawTurksHead.git","created_at":"2012-08-07T03:23:13Z","has_wiki":false,"watchers":0,"html_url":"https://github.com/jacquev6/DrawTurksHead","size":3232,"fork":false,"open_issues":0,"has_issues":false,"updated_at":"2012-04-16T18:38:55Z","full_name":"jacquev6/DrawTurksHead","name":"DrawTurksHead","url":"https://api.github.com/repos/jacquev6/DrawTurksHead","ssh_url":"git@github.com:jacquev6/DrawTurksHead.git","git_url":"git://github.com/jacquev6/DrawTurksHead.git","private":false,"id":767403,"mirror_url":null,"language":"C++","homepage":"http://vincent-jacques.net/DrawTurksHead/","svn_url":"https://github.com/jacquev6/DrawTurksHead","pushed_at":"2012-04-16T18:38:54Z"},{"forks":0,"watchers_count":0,"has_downloads":false,"owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","id":327146},"open_issues_count":0,"description":"","permissions":{"pull":true,"push":true,"admin":true},"forks_count":0,"clone_url":"https://github.com/jacquev6/PrivateStuff.git","created_at":null,"has_wiki":false,"watchers":0,"html_url":"https://github.com/jacquev6/PrivateStuff","size":1252,"fork":false,"open_issues":0,"has_issues":false,"updated_at":"2012-09-07T19:22:17Z","full_name":"jacquev6/PrivateStuff","name":"PrivateStuff","url":"https://api.github.com/repos/jacquev6/PrivateStuff","ssh_url":"git@github.com:jacquev6/PrivateStuff.git","git_url":"git://github.com/jacquev6/PrivateStuff.git","private":true,"id":1592290,"mirror_url":null,"language":"Python","homepage":"","svn_url":"https://github.com/jacquev6/PrivateStuff","pushed_at":"2012-09-07T19:21:59Z"},{"forks":0,"watchers_count":0,"has_downloads":false,"owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","id":327146},"open_issues_count":0,"description":"","permissions":{"pull":true,"push":true,"admin":true},"forks_count":0,"clone_url":"https://github.com/jacquev6/vincent-jacques.net.git","created_at":null,"has_wiki":false,"watchers":0,"html_url":"https://github.com/jacquev6/vincent-jacques.net","size":164,"fork":false,"open_issues":0,"has_issues":false,"updated_at":"2012-06-30T09:29:07Z","full_name":"jacquev6/vincent-jacques.net","name":"vincent-jacques.net","url":"https://api.github.com/repos/jacquev6/vincent-jacques.net","ssh_url":"git@github.com:jacquev6/vincent-jacques.net.git","git_url":"git://github.com/jacquev6/vincent-jacques.net.git","private":true,"id":1986874,"mirror_url":null,"language":"Python","homepage":"vincent-jacques.net","svn_url":"https://github.com/jacquev6/vincent-jacques.net","pushed_at":"2012-06-30T09:29:07Z"},{"forks":0,"watchers_count":0,"has_downloads":false,"owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","id":327146},"open_issues_count":0,"description":"","permissions":{"pull":true,"push":true,"admin":true},"forks_count":0,"clone_url":"https://github.com/jacquev6/Hacking.git","created_at":"2012-08-07T03:23:13Z","has_wiki":false,"watchers":0,"html_url":"https://github.com/jacquev6/Hacking","size":148,"fork":false,"open_issues":0,"has_issues":false,"updated_at":"2012-09-07T20:42:54Z","full_name":"jacquev6/Hacking","name":"Hacking","url":"https://api.github.com/repos/jacquev6/Hacking","ssh_url":"git@github.com:jacquev6/Hacking.git","git_url":"git://github.com/jacquev6/Hacking.git","private":true,"id":1988081,"mirror_url":null,"language":"Python","homepage":"","svn_url":"https://github.com/jacquev6/Hacking","pushed_at":"2012-09-07T20:42:54Z"},{"forks":1,"watchers_count":0,"has_downloads":true,"owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","id":327146},"open_issues_count":0,"description":"Caesar IV: anticipate your city","permissions":{"pull":true,"push":true,"admin":true},"forks_count":1,"clone_url":"https://github.com/jacquev6/C4Planner.git","created_at":"2012-08-07T03:23:20Z","has_wiki":false,"watchers":0,"html_url":"https://github.com/jacquev6/C4Planner","size":4716,"fork":false,"open_issues":0,"has_issues":false,"updated_at":"2012-07-27T04:29:14Z","full_name":"jacquev6/C4Planner","name":"C4Planner","url":"https://api.github.com/repos/jacquev6/C4Planner","ssh_url":"git@github.com:jacquev6/C4Planner.git","git_url":"git://github.com/jacquev6/C4Planner.git","private":false,"id":2260441,"mirror_url":null,"language":"Python","homepage":"http://vincent-jacques.net/C4Planner","svn_url":"https://github.com/jacquev6/C4Planner","pushed_at":"2011-11-27T20:51:06Z"},{"forks":0,"watchers_count":0,"has_downloads":false,"owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","id":327146},"open_issues_count":0,"description":"","permissions":{"pull":true,"push":true,"admin":true},"forks_count":0,"clone_url":"https://github.com/jacquev6/developer.github.com.git","created_at":null,"has_wiki":false,"watchers":0,"html_url":"https://github.com/jacquev6/developer.github.com","size":184,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-06-05T11:35:40Z","full_name":"jacquev6/developer.github.com","name":"developer.github.com","url":"https://api.github.com/repos/jacquev6/developer.github.com","ssh_url":"git@github.com:jacquev6/developer.github.com.git","git_url":"git://github.com/jacquev6/developer.github.com.git","private":false,"id":3361136,"mirror_url":null,"language":"Ruby","homepage":"","svn_url":"https://github.com/jacquev6/developer.github.com","pushed_at":"2012-06-05T11:35:40Z"},{"forks":16,"watchers_count":67,"has_downloads":true,"owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","id":327146},"open_issues_count":13,"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":true,"admin":true},"forks_count":16,"clone_url":"https://github.com/jacquev6/PyGithub.git","created_at":null,"has_wiki":false,"watchers":67,"html_url":"https://github.com/jacquev6/PyGithub","size":228,"fork":false,"open_issues":13,"has_issues":true,"updated_at":"2012-09-07T23:16:45Z","full_name":"jacquev6/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","ssh_url":"git@github.com:jacquev6/PyGithub.git","git_url":"git://github.com/jacquev6/PyGithub.git","private":false,"id":3544490,"mirror_url":null,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/jacquev6/PyGithub","pushed_at":"2012-09-07T23:16:45Z"},{"forks":0,"watchers_count":1,"has_downloads":true,"owner":{"gravatar_id":"b2e096f2c016d8dc168a3a5e6281b07a","login":"abersager","url":"https://api.github.com/users/abersager","avatar_url":"https://secure.gravatar.com/avatar/b2e096f2c016d8dc168a3a5e6281b07a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","id":1328351},"open_issues_count":0,"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":false,"admin":false},"forks_count":0,"clone_url":"https://github.com/abersager/PyGithub.git","created_at":"2012-08-07T03:21:09Z","has_wiki":false,"watchers":1,"html_url":"https://github.com/abersager/PyGithub","size":112,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-08-06T20:21:19Z","full_name":"abersager/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/abersager/PyGithub","ssh_url":"git@github.com:abersager/PyGithub.git","git_url":"git://github.com/abersager/PyGithub.git","private":false,"id":3831162,"mirror_url":null,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/abersager/PyGithub","pushed_at":"2012-03-26T10:05:31Z"},{"forks":0,"watchers_count":2,"has_downloads":true,"owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","id":327146},"open_issues_count":0,"description":"The Web framework for perfectionists with deadlines. Now on GitHub.","permissions":{"pull":true,"push":true,"admin":true},"forks_count":0,"clone_url":"https://github.com/jacquev6/django.git","created_at":null,"has_wiki":false,"watchers":2,"html_url":"https://github.com/jacquev6/django","size":48476,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-06-09T10:37:50Z","full_name":"jacquev6/django","name":"django","url":"https://api.github.com/repos/jacquev6/django","ssh_url":"git@github.com:jacquev6/django.git","git_url":"git://github.com/jacquev6/django.git","private":false,"id":4166730,"mirror_url":null,"language":"Python","homepage":"http://www.djangoproject.com/","svn_url":"https://github.com/jacquev6/django","pushed_at":"2012-04-28T04:05:15Z"},{"forks":1,"watchers_count":1,"has_downloads":true,"owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","id":327146},"open_issues_count":5,"description":"Un outil pour ceux qui aiment voir plusieurs films le même jour","permissions":{"pull":true,"push":true,"admin":true},"forks_count":1,"clone_url":"https://github.com/jacquev6/CinePlanning.git","created_at":"2012-08-07T03:23:19Z","has_wiki":false,"watchers":1,"html_url":"https://github.com/jacquev6/CinePlanning","size":240,"fork":false,"open_issues":5,"has_issues":true,"updated_at":"2012-06-17T05:55:59Z","full_name":"jacquev6/CinePlanning","name":"CinePlanning","url":"https://api.github.com/repos/jacquev6/CinePlanning","ssh_url":"git@github.com:jacquev6/CinePlanning.git","git_url":"git://github.com/jacquev6/CinePlanning.git","private":false,"id":4627544,"mirror_url":null,"language":"Python","homepage":"http://vincent-jacques.net/CinePlanning","svn_url":"https://github.com/jacquev6/CinePlanning","pushed_at":"2012-06-17T05:55:58Z"},{"forks":0,"watchers_count":1,"has_downloads":true,"owner":{"gravatar_id":"3aa27c0add742f542848af3b8a9e980c","login":"pmuilu","url":"https://api.github.com/users/pmuilu","avatar_url":"https://secure.gravatar.com/avatar/3aa27c0add742f542848af3b8a9e980c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","id":691799},"open_issues_count":0,"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":false,"admin":false},"forks_count":0,"clone_url":"https://github.com/pmuilu/PyGithub.git","created_at":"2012-08-07T03:21:41Z","has_wiki":false,"watchers":1,"html_url":"https://github.com/pmuilu/PyGithub","size":112,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-08-06T20:21:44Z","full_name":"pmuilu/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/pmuilu/PyGithub","ssh_url":"git@github.com:pmuilu/PyGithub.git","git_url":"git://github.com/pmuilu/PyGithub.git","private":false,"id":4716322,"mirror_url":null,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/pmuilu/PyGithub","pushed_at":"2012-06-19T16:50:37Z"},{"forks":0,"watchers_count":1,"has_downloads":true,"owner":{"gravatar_id":"85203b21c562062e5641f0b8d4b98d9b","login":"herlo","url":"https://api.github.com/users/herlo","avatar_url":"https://secure.gravatar.com/avatar/85203b21c562062e5641f0b8d4b98d9b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","id":89334},"open_issues_count":0,"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":false,"admin":false},"forks_count":0,"clone_url":"https://github.com/herlo/PyGithub.git","created_at":"2012-08-07T03:21:47Z","has_wiki":false,"watchers":1,"html_url":"https://github.com/herlo/PyGithub","size":164,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-08-06T20:21:47Z","full_name":"herlo/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/herlo/PyGithub","ssh_url":"git@github.com:herlo/PyGithub.git","git_url":"git://github.com/herlo/PyGithub.git","private":false,"id":4720987,"mirror_url":null,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/herlo/PyGithub","pushed_at":"2012-06-13T10:57:26Z"},{"forks":0,"watchers_count":1,"has_downloads":true,"owner":{"gravatar_id":"3ceac58506711008b9e93ad31fcb0f45","login":"roverdotcom","url":"https://api.github.com/users/roverdotcom","avatar_url":"https://secure.gravatar.com/avatar/3ceac58506711008b9e93ad31fcb0f45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","id":1463288},"open_issues_count":0,"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":false,"admin":false},"forks_count":0,"clone_url":"https://github.com/roverdotcom/PyGithub.git","created_at":"2012-08-07T03:21:50Z","has_wiki":false,"watchers":1,"html_url":"https://github.com/roverdotcom/PyGithub","size":116,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-08-06T20:21:51Z","full_name":"roverdotcom/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/roverdotcom/PyGithub","ssh_url":"git@github.com:roverdotcom/PyGithub.git","git_url":"git://github.com/roverdotcom/PyGithub.git","private":false,"id":4785693,"mirror_url":null,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/roverdotcom/PyGithub","pushed_at":"2012-06-25T18:44:19Z"},{"forks":0,"watchers_count":0,"has_downloads":true,"owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","id":327146},"open_issues_count":2,"description":"HTML5 browsable IP map inspired by http://xkcd.com/195/","permissions":{"pull":true,"push":true,"admin":true},"forks_count":0,"clone_url":"https://github.com/jacquev6/IpMap.git","created_at":null,"has_wiki":false,"watchers":0,"html_url":"https://github.com/jacquev6/IpMap","size":136,"fork":false,"open_issues":2,"has_issues":true,"updated_at":"2012-08-06T20:40:59Z","full_name":"jacquev6/IpMap","name":"IpMap","url":"https://api.github.com/repos/jacquev6/IpMap","ssh_url":"git@github.com:jacquev6/IpMap.git","git_url":"git://github.com/jacquev6/IpMap.git","private":true,"id":4835930,"mirror_url":null,"language":"JavaScript","homepage":"http://vincent-jacques.net/IpMap","svn_url":"https://github.com/jacquev6/IpMap","pushed_at":"2012-06-30T09:28:28Z"},{"forks":0,"watchers_count":1,"has_downloads":true,"owner":{"gravatar_id":"433a7fa3917a38691aa9914b61444875","login":"thouis","url":"https://api.github.com/users/thouis","avatar_url":"https://secure.gravatar.com/avatar/433a7fa3917a38691aa9914b61444875?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","id":473043},"open_issues_count":0,"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":false,"admin":false},"forks_count":0,"clone_url":"https://github.com/thouis/PyGithub.git","created_at":"2012-08-07T03:21:53Z","has_wiki":false,"watchers":1,"html_url":"https://github.com/thouis/PyGithub","size":112,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-08-06T20:21:54Z","full_name":"thouis/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/thouis/PyGithub","ssh_url":"git@github.com:thouis/PyGithub.git","git_url":"git://github.com/thouis/PyGithub.git","private":false,"id":4957672,"mirror_url":null,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/thouis/PyGithub","pushed_at":"2012-07-09T12:42:19Z"},{"forks":0,"watchers_count":1,"has_downloads":true,"owner":{"gravatar_id":"13a30f9924fa2bd918cbb8d06dd8b55a","login":"malexw","url":"https://api.github.com/users/malexw","avatar_url":"https://secure.gravatar.com/avatar/13a30f9924fa2bd918cbb8d06dd8b55a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","id":577322},"open_issues_count":0,"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":false,"admin":false},"forks_count":0,"clone_url":"https://github.com/malexw/PyGithub.git","created_at":"2012-08-07T03:21:56Z","has_wiki":false,"watchers":1,"html_url":"https://github.com/malexw/PyGithub","size":112,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-08-06T20:21:57Z","full_name":"malexw/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/malexw/PyGithub","ssh_url":"git@github.com:malexw/PyGithub.git","git_url":"git://github.com/malexw/PyGithub.git","private":false,"id":4992915,"mirror_url":null,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/malexw/PyGithub","pushed_at":"2012-07-11T18:11:24Z"},{"forks":0,"watchers_count":1,"has_downloads":true,"owner":{"gravatar_id":"37a932b3abe212892173784736ed6b12","login":"engie","url":"https://api.github.com/users/engie","avatar_url":"https://secure.gravatar.com/avatar/37a932b3abe212892173784736ed6b12?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","id":1247},"open_issues_count":0,"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":false,"admin":false},"forks_count":0,"clone_url":"https://github.com/engie/PyGithub.git","created_at":"2012-08-07T03:21:59Z","has_wiki":false,"watchers":1,"html_url":"https://github.com/engie/PyGithub","size":136,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-08-06T20:22:00Z","full_name":"engie/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/engie/PyGithub","ssh_url":"git@github.com:engie/PyGithub.git","git_url":"git://github.com/engie/PyGithub.git","private":false,"id":5153069,"mirror_url":null,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/engie/PyGithub","pushed_at":"2012-07-23T16:42:58Z"},{"forks":0,"watchers_count":1,"has_downloads":true,"owner":{"gravatar_id":"ffcbd195c843b902fcdaa9986a2a0116","login":"oangeor","url":"https://api.github.com/users/oangeor","avatar_url":"https://secure.gravatar.com/avatar/ffcbd195c843b902fcdaa9986a2a0116?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","id":1707945},"open_issues_count":0,"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":false,"admin":false},"forks_count":0,"clone_url":"https://github.com/oangeor/PyGithub.git","created_at":"2012-08-07T03:22:03Z","has_wiki":false,"watchers":1,"html_url":"https://github.com/oangeor/PyGithub","size":1292,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-08-06T20:22:04Z","full_name":"oangeor/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/oangeor/PyGithub","ssh_url":"git@github.com:oangeor/PyGithub.git","git_url":"git://github.com/oangeor/PyGithub.git","private":false,"id":5190054,"mirror_url":null,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/oangeor/PyGithub","pushed_at":"2012-07-24T16:19:13Z"},{"forks":0,"watchers_count":1,"has_downloads":true,"owner":{"gravatar_id":"a62c07aeefe3d9cc2ba18861f7eeef7d","login":"alejo8591","url":"https://api.github.com/users/alejo8591","avatar_url":"https://secure.gravatar.com/avatar/a62c07aeefe3d9cc2ba18861f7eeef7d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","id":1151850},"open_issues_count":0,"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":false,"admin":false},"forks_count":0,"clone_url":"https://github.com/alejo8591/PyGithub.git","created_at":"2012-08-07T03:22:07Z","has_wiki":false,"watchers":1,"html_url":"https://github.com/alejo8591/PyGithub","size":216,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-08-04T07:01:31Z","full_name":"alejo8591/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/alejo8591/PyGithub","ssh_url":"git@github.com:alejo8591/PyGithub.git","git_url":"git://github.com/alejo8591/PyGithub.git","private":false,"id":5293768,"mirror_url":null,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/alejo8591/PyGithub","pushed_at":"2012-08-04T06:06:06Z"},{"forks":0,"watchers_count":0,"has_downloads":true,"owner":{"gravatar_id":"92a24b96be9d9ce5e608751cc0c95823","login":"jagster02","url":"https://api.github.com/users/jagster02","avatar_url":"https://secure.gravatar.com/avatar/92a24b96be9d9ce5e608751cc0c95823?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","id":1383412},"open_issues_count":0,"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":false,"admin":false},"forks_count":0,"clone_url":"https://github.com/jagster02/PyGithub.git","created_at":"2012-08-09T13:55:23Z","has_wiki":false,"watchers":0,"html_url":"https://github.com/jagster02/PyGithub","size":216,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-08-07T23:29:19Z","full_name":"jagster02/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/jagster02/PyGithub","ssh_url":"git@github.com:jagster02/PyGithub.git","git_url":"git://github.com/jagster02/PyGithub.git","private":false,"id":5334906,"mirror_url":null,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/jagster02/PyGithub","pushed_at":"2012-08-04T06:06:06Z"},{"forks":0,"watchers_count":0,"has_downloads":true,"owner":{"gravatar_id":"01f9109a647ef1dac0198da94d5dfc35","login":"cs2ctest","url":"https://api.github.com/users/cs2ctest","avatar_url":"https://secure.gravatar.com/avatar/01f9109a647ef1dac0198da94d5dfc35?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","id":2108297},"open_issues_count":0,"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":false,"admin":false},"forks_count":0,"clone_url":"https://github.com/cs2ctest/PyGithub.git","created_at":"2012-08-09T19:56:03Z","has_wiki":false,"watchers":0,"html_url":"https://github.com/cs2ctest/PyGithub","size":216,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-08-09T09:00:55Z","full_name":"cs2ctest/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/cs2ctest/PyGithub","ssh_url":"git@github.com:cs2ctest/PyGithub.git","git_url":"git://github.com/cs2ctest/PyGithub.git","private":false,"id":5353371,"mirror_url":null,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/cs2ctest/PyGithub","pushed_at":"2012-08-04T06:06:06Z"},{"forks":0,"watchers_count":0,"has_downloads":true,"owner":{"gravatar_id":"83fdd59f80118ac8e56fd6f732239190","login":"feiying","url":"https://api.github.com/users/feiying","avatar_url":"https://secure.gravatar.com/avatar/83fdd59f80118ac8e56fd6f732239190?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","id":1784180},"open_issues_count":0,"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":false,"admin":false},"forks_count":0,"clone_url":"https://github.com/feiying/PyGithub.git","created_at":"2012-08-10T18:57:02Z","has_wiki":false,"watchers":0,"html_url":"https://github.com/feiying/PyGithub","size":216,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-08-10T04:51:27Z","full_name":"feiying/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/feiying/PyGithub","ssh_url":"git@github.com:feiying/PyGithub.git","git_url":"git://github.com/feiying/PyGithub.git","private":false,"id":5365056,"mirror_url":null,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/feiying/PyGithub","pushed_at":"2012-08-04T06:06:06Z"},{"forks":0,"watchers_count":0,"has_downloads":true,"owner":{"gravatar_id":"13df3b204a5708ed557a07628ea00660","login":"tdcarrol","url":"https://api.github.com/users/tdcarrol","avatar_url":"https://secure.gravatar.com/avatar/13df3b204a5708ed557a07628ea00660?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","id":435947},"open_issues_count":0,"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":false,"admin":false},"forks_count":0,"clone_url":"https://github.com/tdcarrol/PyGithub.git","created_at":"2012-08-22T05:17:05Z","has_wiki":false,"watchers":0,"html_url":"https://github.com/tdcarrol/PyGithub","size":216,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-08-21T15:14:27Z","full_name":"tdcarrol/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/tdcarrol/PyGithub","ssh_url":"git@github.com:tdcarrol/PyGithub.git","git_url":"git://github.com/tdcarrol/PyGithub.git","private":false,"id":5496795,"mirror_url":null,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/tdcarrol/PyGithub","pushed_at":"2012-08-04T06:06:06Z"},{"forks":0,"watchers_count":0,"has_downloads":true,"owner":{"gravatar_id":"ae8a2af3de601885a14bb71240e5d1a6","login":"xobb1t","url":"https://api.github.com/users/xobb1t","avatar_url":"https://secure.gravatar.com/avatar/ae8a2af3de601885a14bb71240e5d1a6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","id":344095},"open_issues_count":0,"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":false,"admin":false},"forks_count":0,"clone_url":"https://github.com/xobb1t/PyGithub.git","created_at":"2012-09-03T15:31:32Z","has_wiki":false,"watchers":0,"html_url":"https://github.com/xobb1t/PyGithub","size":108,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-08-25T19:40:53Z","full_name":"xobb1t/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/xobb1t/PyGithub","ssh_url":"git@github.com:xobb1t/PyGithub.git","git_url":"git://github.com/xobb1t/PyGithub.git","private":false,"id":5554026,"mirror_url":null,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/xobb1t/PyGithub","pushed_at":"2012-08-25T19:40:53Z"},{"forks":0,"watchers_count":0,"has_downloads":true,"owner":{"gravatar_id":"ad620f78a113948d4ded151e3025a3b3","login":"braincorp","url":"https://api.github.com/users/braincorp","avatar_url":"https://secure.gravatar.com/avatar/ad620f78a113948d4ded151e3025a3b3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","id":2085477},"open_issues_count":0,"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":false,"admin":false},"forks_count":0,"clone_url":"https://github.com/braincorp/PyGithub.git","created_at":"2012-09-03T15:31:30Z","has_wiki":false,"watchers":0,"html_url":"https://github.com/braincorp/PyGithub","size":240,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-08-30T06:54:52Z","full_name":"braincorp/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/braincorp/PyGithub","ssh_url":"git@github.com:braincorp/PyGithub.git","git_url":"git://github.com/braincorp/PyGithub.git","private":false,"id":5611539,"mirror_url":null,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/braincorp/PyGithub","pushed_at":"2012-08-23T07:38:20Z"}] + +https +GET +api.github.com +None +/user/subscriptions?page=2 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4942'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '1221'), ('server', 'nginx/1.0.13'), ('last-modified', 'Fri, 31 Aug 2012 13:53:17 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="first", ; rel="prev"'), ('etag', '"c8db8e82d53b0c24d493ad0dd8413000"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 07 Sep 2012 23:53:23 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"forks":0,"has_downloads":true,"owner":{"gravatar_id":"8707d63a44f6cc04e58a655f3df3105c","login":"gregwjacobs","avatar_url":"https://secure.gravatar.com/avatar/8707d63a44f6cc04e58a655f3df3105c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/gregwjacobs","id":1749292},"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":false,"admin":false},"forks_count":0,"clone_url":"https://github.com/gregwjacobs/PyGithub.git","git_url":"git://github.com/gregwjacobs/PyGithub.git","created_at":"2012-09-03T15:31:27Z","has_wiki":false,"watchers_count":0,"watchers":0,"open_issues_count":0,"size":240,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-08-31T13:53:17Z","full_name":"gregwjacobs/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/gregwjacobs/PyGithub","mirror_url":null,"ssh_url":"git@github.com:gregwjacobs/PyGithub.git","html_url":"https://github.com/gregwjacobs/PyGithub","private":false,"id":5629305,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/gregwjacobs/PyGithub","pushed_at":"2012-08-23T07:38:20Z"}] + +https +GET +api.github.com +None +/user/subscriptions/nvie/gitflow +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4941'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('cache-control', ''), ('date', 'Fri, 07 Sep 2012 23:53:23 GMT')] + + +https +DELETE +api.github.com +None +/user/subscriptions/nvie/gitflow +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4940'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('cache-control', ''), ('date', 'Fri, 07 Sep 2012 23:53:24 GMT')] + + +https +GET +api.github.com +None +/user/subscriptions/nvie/gitflow +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +404 +[('status', '404 Not Found'), ('content-length', '23'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-remaining', '4939'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('cache-control', ''), ('date', 'Fri, 07 Sep 2012 23:53:24 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"message":"Not Found"} + +https +PUT +api.github.com +None +/user/subscriptions/nvie/gitflow +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4938'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('cache-control', ''), ('date', 'Fri, 07 Sep 2012 23:53:25 GMT')] + + +https +GET +api.github.com +None +/user/subscriptions/nvie/gitflow +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4937'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('cache-control', ''), ('date', 'Fri, 07 Sep 2012 23:53:25 GMT')] + + diff --git a/lib/github/tests/ReplayData/AuthenticatedUser.testWatching.txt b/lib/github/tests/ReplayData/AuthenticatedUser.testWatching.txt new file mode 100644 index 0000000000..606f32c966 --- /dev/null +++ b/lib/github/tests/ReplayData/AuthenticatedUser.testWatching.txt @@ -0,0 +1,99 @@ +https +GET +api.github.com +None +/users/nvie +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4996'), ('content-length', '598'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"49141c081e970afc1fbe7f1e260f2fe4"'), ('date', 'Tue, 22 May 2012 17:15:03 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","url":"https://api.github.com/users/nvie","public_repos":62,"hireable":false,"avatar_url":"https://secure.gravatar.com/avatar/c5a7f21b46df698f3db31c37ed0cf55a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","company":"3rd Cloud","bio":null,"login":"nvie","email":"vincent@3rdcloud.com","public_gists":17,"name":"Vincent Driessen","gravatar_id":"c5a7f21b46df698f3db31c37ed0cf55a","html_url":"https://github.com/nvie","created_at":"2009-05-12T21:19:38Z","location":"Netherlands","id":83844,"followers":298,"following":41,"blog":"http://nvie.com"} + +https +GET +api.github.com +None +/repos/nvie/gitflow +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4995'), ('content-length', '1155'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"856c234079ab76fe64e7b99c1f4802fb"'), ('date', 'Tue, 22 May 2012 17:15:04 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"pushed_at":"2012-02-14T13:11:04Z","updated_at":"2012-05-22T14:27:59Z","mirror_url":null,"homepage":"http://nvie.com/posts/a-successful-git-branching-model/","git_url":"git://github.com/nvie/gitflow.git","url":"https://api.github.com/repos/nvie/gitflow","has_downloads":true,"watchers":3935,"permissions":{"pull":true,"admin":false,"push":false},"master_branch":"develop","fork":false,"svn_url":"https://github.com/nvie/gitflow","has_wiki":true,"has_issues":true,"size":4602,"private":false,"forks":322,"owner":{"url":"https://api.github.com/users/nvie","avatar_url":"https://secure.gravatar.com/avatar/c5a7f21b46df698f3db31c37ed0cf55a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"nvie","gravatar_id":"c5a7f21b46df698f3db31c37ed0cf55a","id":83844},"name":"gitflow","language":"Shell","description":"Git extensions to provide high-level repository operations for Vincent Driessen's branching model.","clone_url":"https://github.com/nvie/gitflow.git","ssh_url":"git@github.com:nvie/gitflow.git","html_url":"https://github.com/nvie/gitflow","created_at":"2010-01-20T23:14:12Z","id":481366,"open_issues":92} + +https +GET +api.github.com +None +/user/watched +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4994'), ('content-length', '32854'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last"'), ('etag', '"0ead8fdcf36bbf2deb2c08c93e78d2cc"'), ('date', 'Tue, 22 May 2012 17:15:05 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"pushed_at":"2012-05-21T09:21:47Z","git_url":"git://github.com/git/git.git","updated_at":"2012-05-22T15:08:00Z","homepage":"This is a publish-only repository and all pull requests are ignored. Please follow Documentation/SubmittingPatches procedure for any of your improvements.","url":"https://api.github.com/repos/git/git","has_downloads":true,"watchers":2193,"permissions":{"pull":true,"admin":false,"push":false},"mirror_url":null,"fork":false,"svn_url":"https://github.com/git/git","has_wiki":false,"has_issues":false,"size":33156,"private":false,"forks":528,"owner":{"url":"https://api.github.com/users/git","login":"git","gravatar_id":"878a0ea898da1701df8573ed64a5cc9d","avatar_url":"https://secure.gravatar.com/avatar/878a0ea898da1701df8573ed64a5cc9d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","id":18133},"name":"git","language":"C","description":"Git Source Code Mirror - This is a publish-only repository and all pull requests are ignored. Please follow Documentation/SubmittingPatches procedure for any of your improvements.","clone_url":"https://github.com/git/git.git","ssh_url":"git@github.com:git/git.git","html_url":"https://github.com/git/git","created_at":"2008-07-23T14:21:26Z","id":36502,"open_issues":4},{"pushed_at":"2009-12-15T14:07:47Z","git_url":"git://github.com/moriyoshi/boost.php.git","updated_at":"2012-03-23T22:31:43Z","homepage":"","url":"https://api.github.com/repos/moriyoshi/boost.php","has_downloads":true,"watchers":46,"permissions":{"pull":true,"admin":false,"push":false},"mirror_url":null,"fork":false,"svn_url":"https://github.com/moriyoshi/boost.php","has_wiki":true,"has_issues":true,"size":1331,"private":false,"forks":4,"owner":{"url":"https://api.github.com/users/moriyoshi","login":"moriyoshi","gravatar_id":"0bafbcfcfb548a4ac20406692858f68b","avatar_url":"https://secure.gravatar.com/avatar/0bafbcfcfb548a4ac20406692858f68b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":18755},"name":"boost.php","language":"C++","description":"Create your PHP extension in C++, in a minute.","clone_url":"https://github.com/moriyoshi/boost.php.git","ssh_url":"git@github.com:moriyoshi/boost.php.git","html_url":"https://github.com/moriyoshi/boost.php","created_at":"2008-07-29T03:01:07Z","id":38097,"open_issues":1},{"pushed_at":"2012-05-10T15:17:56Z","git_url":"git://github.com/capistrano/capistrano.git","updated_at":"2012-05-22T14:33:44Z","homepage":"http://capify.org","url":"https://api.github.com/repos/capistrano/capistrano","has_downloads":false,"watchers":2247,"permissions":{"pull":true,"admin":false,"push":false},"mirror_url":null,"fork":true,"svn_url":"https://github.com/capistrano/capistrano","has_wiki":true,"has_issues":true,"size":236,"private":false,"forks":236,"owner":{"url":"https://api.github.com/users/capistrano","login":"capistrano","gravatar_id":"885e1c523b7975c4003de162d8ee8fee","avatar_url":"https://secure.gravatar.com/avatar/885e1c523b7975c4003de162d8ee8fee?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","id":58257},"name":"capistrano","language":"Ruby","description":"Remote multi-server automation tool","clone_url":"https://github.com/capistrano/capistrano.git","ssh_url":"git@github.com:capistrano/capistrano.git","html_url":"https://github.com/capistrano/capistrano","created_at":"2009-02-26T16:14:04Z","id":138312,"open_issues":31},{"pushed_at":"2010-05-28T07:23:06Z","git_url":"git://github.com/moriyoshi/boost.perl.git","updated_at":"2011-10-03T23:45:58Z","homepage":"","url":"https://api.github.com/repos/moriyoshi/boost.perl","has_downloads":true,"watchers":8,"permissions":{"pull":true,"admin":false,"push":false},"mirror_url":null,"fork":false,"svn_url":"https://github.com/moriyoshi/boost.perl","has_wiki":true,"has_issues":true,"size":512,"private":false,"forks":0,"owner":{"url":"https://api.github.com/users/moriyoshi","login":"moriyoshi","gravatar_id":"0bafbcfcfb548a4ac20406692858f68b","avatar_url":"https://secure.gravatar.com/avatar/0bafbcfcfb548a4ac20406692858f68b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":18755},"name":"boost.perl","language":"C++","description":"Still a proof of concept...","clone_url":"https://github.com/moriyoshi/boost.perl.git","ssh_url":"git@github.com:moriyoshi/boost.perl.git","html_url":"https://github.com/moriyoshi/boost.perl","created_at":"2009-03-30T21:09:12Z","id":163431,"open_issues":0},{"pushed_at":"2012-05-01T21:43:17Z","git_url":"git://github.com/apenwarr/git-subtree.git","updated_at":"2012-05-20T16:20:08Z","homepage":"","url":"https://api.github.com/repos/apenwarr/git-subtree","has_downloads":true,"watchers":605,"permissions":{"pull":true,"admin":false,"push":false},"mirror_url":null,"fork":false,"svn_url":"https://github.com/apenwarr/git-subtree","has_wiki":false,"has_issues":false,"size":176,"private":false,"forks":67,"owner":{"url":"https://api.github.com/users/apenwarr","login":"apenwarr","gravatar_id":"918b627daf7d848cd40770ed6cd15233","avatar_url":"https://secure.gravatar.com/avatar/918b627daf7d848cd40770ed6cd15233?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":20592},"name":"git-subtree","language":"Shell","description":"An experimental alternative to the git-submodule command. Merges and splits subtrees from your project into subprojects and back.","clone_url":"https://github.com/apenwarr/git-subtree.git","ssh_url":"git@github.com:apenwarr/git-subtree.git","html_url":"https://github.com/apenwarr/git-subtree","created_at":"2009-04-25T04:10:31Z","id":185096,"open_issues":11},{"pushed_at":"2012-04-15T18:55:55Z","git_url":"git://github.com/cosmin/git-hg.git","updated_at":"2012-05-20T09:51:32Z","homepage":"http://offbytwo.github.com/git-hg","url":"https://api.github.com/repos/cosmin/git-hg","has_downloads":true,"watchers":150,"permissions":{"pull":true,"admin":false,"push":false},"mirror_url":null,"fork":false,"svn_url":"https://github.com/cosmin/git-hg","has_wiki":true,"has_issues":true,"size":224,"private":false,"forks":25,"owner":{"url":"https://api.github.com/users/cosmin","login":"cosmin","gravatar_id":"a8d35490b4016275e5bc3cc6cce8f878","avatar_url":"https://secure.gravatar.com/avatar/a8d35490b4016275e5bc3cc6cce8f878?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1358},"name":"git-hg","language":"Shell","description":"A git-hg utility for checking out and tracking a mercurial repo.","clone_url":"https://github.com/cosmin/git-hg.git","ssh_url":"git@github.com:cosmin/git-hg.git","html_url":"https://github.com/cosmin/git-hg","created_at":"2009-05-14T20:23:01Z","id":201230,"open_issues":0},{"pushed_at":"2012-05-22T14:24:02Z","git_url":"git://github.com/mxcl/homebrew.git","updated_at":"2012-05-22T15:38:59Z","homepage":"http://mxcl.github.com/homebrew","url":"https://api.github.com/repos/mxcl/homebrew","has_downloads":false,"watchers":8688,"permissions":{"pull":true,"admin":false,"push":false},"master_branch":"master","mirror_url":null,"fork":false,"svn_url":"https://github.com/mxcl/homebrew","has_wiki":true,"has_issues":true,"size":4844,"private":false,"forks":3971,"owner":{"url":"https://api.github.com/users/mxcl","login":"mxcl","gravatar_id":"25ff3dfe48d3847ecf9971aab99589fb","avatar_url":"https://secure.gravatar.com/avatar/25ff3dfe48d3847ecf9971aab99589fb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":58962},"name":"homebrew","language":"Ruby","description":"The missing package manager for OS X.","clone_url":"https://github.com/mxcl/homebrew.git","ssh_url":"git@github.com:mxcl/homebrew.git","html_url":"https://github.com/mxcl/homebrew","created_at":"2009-05-20T19:38:37Z","id":206084,"open_issues":442},{"pushed_at":"2010-11-25T02:39:53Z","git_url":"git://github.com/jamis/celtic_knot.git","updated_at":"2011-10-12T04:36:53Z","homepage":"","url":"https://api.github.com/repos/jamis/celtic_knot","has_downloads":true,"watchers":4,"permissions":{"pull":true,"admin":false,"push":false},"mirror_url":null,"fork":false,"svn_url":"https://github.com/jamis/celtic_knot","has_wiki":true,"has_issues":true,"size":1272,"private":false,"forks":1,"owner":{"url":"https://api.github.com/users/jamis","login":"jamis","gravatar_id":"992fe8c19bbbc27f2b562a9f96efc03d","avatar_url":"https://secure.gravatar.com/avatar/992fe8c19bbbc27f2b562a9f96efc03d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1627},"name":"celtic_knot","language":"Ruby","description":"A library for generating Celtic Knotwork designs from graphs","clone_url":"https://github.com/jamis/celtic_knot.git","ssh_url":"git@github.com:jamis/celtic_knot.git","html_url":"https://github.com/jamis/celtic_knot","created_at":"2009-05-24T23:23:10Z","id":209230,"open_issues":0},{"pushed_at":"2011-10-28T11:27:34Z","git_url":"git://github.com/jdavisp3/twisted-intro.git","updated_at":"2012-05-16T01:52:49Z","homepage":"http://krondo.com/blog/?page_id=1327","url":"https://api.github.com/repos/jdavisp3/twisted-intro","has_downloads":true,"watchers":56,"permissions":{"pull":true,"admin":false,"push":false},"mirror_url":null,"fork":false,"svn_url":"https://github.com/jdavisp3/twisted-intro","has_wiki":true,"has_issues":true,"size":188,"private":false,"forks":11,"owner":{"url":"https://api.github.com/users/jdavisp3","login":"jdavisp3","gravatar_id":"fcc237fd34a8e504f7224df0c58cc0b3","avatar_url":"https://secure.gravatar.com/avatar/fcc237fd34a8e504f7224df0c58cc0b3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":43582},"name":"twisted-intro","language":"Python","description":"Source files used for an introduction to Twisted","clone_url":"https://github.com/jdavisp3/twisted-intro.git","ssh_url":"git@github.com:jdavisp3/twisted-intro.git","html_url":"https://github.com/jdavisp3/twisted-intro","created_at":"2009-08-09T17:54:00Z","id":273325,"open_issues":0},{"pushed_at":"2012-04-05T21:13:31Z","git_url":"git://github.com/github/markup.git","updated_at":"2012-05-22T15:20:07Z","homepage":"","url":"https://api.github.com/repos/github/markup","has_downloads":false,"watchers":799,"permissions":{"pull":true,"admin":false,"push":false},"mirror_url":null,"fork":false,"svn_url":"https://github.com/github/markup","has_wiki":false,"has_issues":true,"size":356,"private":false,"forks":240,"owner":{"url":"https://api.github.com/users/github","login":"github","gravatar_id":"61024896f291303615bcd4f7a0dcfb74","avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","id":9919},"name":"markup","language":"Ruby","description":"The code we use to render README.your_favorite_markup","clone_url":"https://github.com/github/markup.git","ssh_url":"git@github.com:github/markup.git","html_url":"https://github.com/github/markup","created_at":"2009-10-31T01:02:46Z","id":355893,"open_issues":84},{"pushed_at":"2012-05-08T13:37:09Z","git_url":"git://github.com/defunkt/hub.git","updated_at":"2012-05-22T17:05:30Z","homepage":"http://defunkt.io/hub/","url":"https://api.github.com/repos/defunkt/hub","has_downloads":false,"watchers":1171,"permissions":{"pull":true,"admin":false,"push":false},"mirror_url":null,"fork":false,"svn_url":"https://github.com/defunkt/hub","has_wiki":false,"has_issues":true,"size":268,"private":false,"forks":87,"owner":{"url":"https://api.github.com/users/defunkt","login":"defunkt","gravatar_id":"b8dbb1987e8e5318584865f880036796","avatar_url":"https://secure.gravatar.com/avatar/b8dbb1987e8e5318584865f880036796?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":2},"name":"hub","language":"Ruby","description":"hub introduces git to GitHub","clone_url":"https://github.com/defunkt/hub.git","ssh_url":"git@github.com:defunkt/hub.git","html_url":"https://github.com/defunkt/hub","created_at":"2009-12-05T22:15:25Z","id":401025,"open_issues":13},{"pushed_at":"2012-02-14T13:11:04Z","git_url":"git://github.com/nvie/gitflow.git","updated_at":"2012-05-22T14:27:59Z","homepage":"http://nvie.com/posts/a-successful-git-branching-model/","url":"https://api.github.com/repos/nvie/gitflow","has_downloads":true,"watchers":3935,"permissions":{"pull":true,"admin":false,"push":false},"master_branch":"develop","mirror_url":null,"fork":false,"svn_url":"https://github.com/nvie/gitflow","has_wiki":true,"has_issues":true,"size":4602,"private":false,"forks":322,"owner":{"url":"https://api.github.com/users/nvie","login":"nvie","gravatar_id":"c5a7f21b46df698f3db31c37ed0cf55a","avatar_url":"https://secure.gravatar.com/avatar/c5a7f21b46df698f3db31c37ed0cf55a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":83844},"name":"gitflow","language":"Shell","description":"Git extensions to provide high-level repository operations for Vincent Driessen's branching model.","clone_url":"https://github.com/nvie/gitflow.git","ssh_url":"git@github.com:nvie/gitflow.git","html_url":"https://github.com/nvie/gitflow","created_at":"2010-01-20T23:14:12Z","id":481366,"open_issues":92},{"pushed_at":"2011-10-18T00:40:07Z","git_url":"git://github.com/lg/murder.git","updated_at":"2012-05-21T20:34:31Z","homepage":"http://twitter.com","url":"https://api.github.com/repos/lg/murder","has_downloads":true,"watchers":1226,"permissions":{"pull":true,"admin":false,"push":false},"mirror_url":null,"fork":false,"svn_url":"https://github.com/lg/murder","has_wiki":true,"has_issues":true,"size":1228,"private":false,"forks":53,"owner":{"url":"https://api.github.com/users/lg","login":"lg","gravatar_id":"f2583cecbd75c5999bf65d9eeb6a84f2","avatar_url":"https://secure.gravatar.com/avatar/f2583cecbd75c5999bf65d9eeb6a84f2?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":181018},"name":"murder","language":"Python","description":"Large scale server deploys using BitTorrent and the BitTornado library","clone_url":"https://github.com/lg/murder.git","ssh_url":"git@github.com:lg/murder.git","html_url":"https://github.com/lg/murder","created_at":"2010-01-21T07:05:36Z","id":481811,"open_issues":8},{"pushed_at":"2012-05-20T07:40:27Z","git_url":"git://github.com/boto/boto.git","updated_at":"2012-05-21T21:35:47Z","homepage":"http://docs.pythonboto.org/","url":"https://api.github.com/repos/boto/boto","has_downloads":true,"watchers":1537,"permissions":{"pull":true,"admin":false,"push":false},"master_branch":"develop","mirror_url":null,"fork":false,"svn_url":"https://github.com/boto/boto","has_wiki":true,"has_issues":true,"size":4183,"private":false,"forks":396,"owner":{"url":"https://api.github.com/users/boto","login":"boto","gravatar_id":"9062d6f913c867ce042928d6637abd05","avatar_url":"https://secure.gravatar.com/avatar/9062d6f913c867ce042928d6637abd05?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","id":327752},"name":"boto","language":"Python","description":"Python interface to Amazon Web Services","clone_url":"https://github.com/boto/boto.git","ssh_url":"git@github.com:boto/boto.git","html_url":"https://github.com/boto/boto","created_at":"2010-07-12T19:15:33Z","id":771016,"open_issues":136},{"pushed_at":"2012-05-22T16:26:22Z","git_url":"git://github.com/rtyley/agit.git","updated_at":"2012-05-22T16:26:25Z","homepage":"https://market.android.com/details?id=com.madgag.agit","url":"https://api.github.com/repos/rtyley/agit","has_downloads":true,"watchers":206,"permissions":{"pull":true,"admin":false,"push":false},"mirror_url":null,"fork":false,"svn_url":"https://github.com/rtyley/agit","has_wiki":true,"has_issues":true,"size":1204,"private":false,"forks":41,"owner":{"url":"https://api.github.com/users/rtyley","login":"rtyley","gravatar_id":"1cdc781dd667a5d4b61340591bf1bef4","avatar_url":"https://secure.gravatar.com/avatar/1cdc781dd667a5d4b61340591bf1bef4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":52038},"name":"agit","language":"Java","description":"Agit - Git client for Android","clone_url":"https://github.com/rtyley/agit.git","ssh_url":"git@github.com:rtyley/agit.git","html_url":"https://github.com/rtyley/agit","created_at":"2010-08-29T21:45:54Z","id":870849,"open_issues":36},{"pushed_at":"2012-05-17T19:11:22Z","git_url":"git://github.com/mbostock/d3.git","updated_at":"2012-05-22T14:38:42Z","homepage":"http://d3js.org","url":"https://api.github.com/repos/mbostock/d3","has_downloads":true,"watchers":5938,"permissions":{"pull":true,"admin":false,"push":false},"mirror_url":null,"fork":false,"svn_url":"https://github.com/mbostock/d3","has_wiki":true,"has_issues":true,"size":3268,"private":false,"forks":678,"owner":{"url":"https://api.github.com/users/mbostock","login":"mbostock","gravatar_id":"005a27e09fe946ebef64bf4d134efc0a","avatar_url":"https://secure.gravatar.com/avatar/005a27e09fe946ebef64bf4d134efc0a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":230541},"name":"d3","language":"JavaScript","description":"A JavaScript visualization library for HTML and SVG.","clone_url":"https://github.com/mbostock/d3.git","ssh_url":"git@github.com:mbostock/d3.git","html_url":"https://github.com/mbostock/d3","created_at":"2010-09-27T17:22:42Z","id":943149,"open_issues":110},{"pushed_at":"2012-05-21T16:21:43Z","git_url":"git://github.com/libgit2/pygit2.git","updated_at":"2012-05-22T13:11:06Z","homepage":"","url":"https://api.github.com/repos/libgit2/pygit2","has_downloads":true,"watchers":205,"permissions":{"pull":true,"admin":false,"push":false},"mirror_url":null,"fork":false,"svn_url":"https://github.com/libgit2/pygit2","has_wiki":false,"has_issues":true,"size":156,"private":false,"forks":43,"owner":{"url":"https://api.github.com/users/libgit2","login":"libgit2","gravatar_id":"1c56acccc41c591705dc92da5f6ab603","avatar_url":"https://secure.gravatar.com/avatar/1c56acccc41c591705dc92da5f6ab603?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","id":394745},"name":"pygit2","language":"C","description":"Python bindings for libgit2","clone_url":"https://github.com/libgit2/pygit2.git","ssh_url":"git@github.com:libgit2/pygit2.git","html_url":"https://github.com/libgit2/pygit2","created_at":"2010-11-08T16:27:48Z","id":1062237,"open_issues":11},{"pushed_at":"2011-10-28T07:11:56Z","git_url":"git://github.com/schacon/git-pulls.git","updated_at":"2012-05-13T12:16:08Z","homepage":"","url":"https://api.github.com/repos/schacon/git-pulls","has_downloads":true,"watchers":173,"permissions":{"pull":true,"admin":false,"push":false},"mirror_url":null,"fork":false,"svn_url":"https://github.com/schacon/git-pulls","has_wiki":true,"has_issues":true,"size":1004,"private":false,"forks":21,"owner":{"url":"https://api.github.com/users/schacon","login":"schacon","gravatar_id":"9375a9529679f1b42b567a640d775e7d","avatar_url":"https://secure.gravatar.com/avatar/9375a9529679f1b42b567a640d775e7d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":70},"name":"git-pulls","language":"Ruby","description":"command line tool to facilitate github pull requests","clone_url":"https://github.com/schacon/git-pulls.git","ssh_url":"git@github.com:schacon/git-pulls.git","html_url":"https://github.com/schacon/git-pulls","created_at":"2010-12-27T20:39:24Z","id":1201343,"open_issues":11},{"pushed_at":"2011-04-01T11:33:23Z","git_url":"git://github.com/emesik/django_mathlatex.git","updated_at":"2011-11-03T17:46:24Z","homepage":"","url":"https://api.github.com/repos/emesik/django_mathlatex","has_downloads":true,"watchers":3,"permissions":{"pull":true,"admin":false,"push":false},"mirror_url":null,"fork":false,"svn_url":"https://github.com/emesik/django_mathlatex","has_wiki":true,"has_issues":true,"size":448,"private":false,"forks":1,"owner":{"url":"https://api.github.com/users/emesik","login":"emesik","gravatar_id":"0d0c6eda804f912d230df91577e29180","avatar_url":"https://secure.gravatar.com/avatar/0d0c6eda804f912d230df91577e29180?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":407107},"name":"django_mathlatex","language":"Python","description":"Django template tag for rendering math formulas","clone_url":"https://github.com/emesik/django_mathlatex.git","ssh_url":"git@github.com:emesik/django_mathlatex.git","html_url":"https://github.com/emesik/django_mathlatex","created_at":"2011-03-06T22:29:04Z","id":1447846,"open_issues":0},{"pushed_at":"2012-02-08T00:38:52Z","git_url":"git://github.com/aliasaria/scrumblr.git","updated_at":"2012-05-17T22:11:28Z","homepage":"http://scrumblr.ca","url":"https://api.github.com/repos/aliasaria/scrumblr","has_downloads":true,"watchers":464,"permissions":{"pull":true,"admin":false,"push":false},"mirror_url":null,"fork":false,"svn_url":"https://github.com/aliasaria/scrumblr","has_wiki":true,"has_issues":true,"size":132,"private":false,"forks":50,"owner":{"url":"https://api.github.com/users/aliasaria","login":"aliasaria","gravatar_id":"a08f4e2d6ccccab586b502992c31e2ce","avatar_url":"https://secure.gravatar.com/avatar/a08f4e2d6ccccab586b502992c31e2ce?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":213343},"name":"scrumblr","language":"JavaScript","description":"Collaborative Online Scrum Tool Using Websockets, Node.js, jQuery, and CSS3","clone_url":"https://github.com/aliasaria/scrumblr.git","ssh_url":"git@github.com:aliasaria/scrumblr.git","html_url":"https://github.com/aliasaria/scrumblr","created_at":"2011-03-10T02:29:38Z","id":1461917,"open_issues":14},{"pushed_at":"2012-05-11T17:11:10Z","git_url":"git://github.com/github/developer.github.com.git","updated_at":"2012-05-20T11:16:45Z","homepage":"http://developer.github.com","url":"https://api.github.com/repos/github/developer.github.com","has_downloads":true,"watchers":249,"permissions":{"pull":true,"admin":false,"push":false},"mirror_url":null,"fork":false,"svn_url":"https://github.com/github/developer.github.com","has_wiki":false,"has_issues":false,"size":212,"private":false,"forks":119,"owner":{"url":"https://api.github.com/users/github","login":"github","gravatar_id":"61024896f291303615bcd4f7a0dcfb74","avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","id":9919},"name":"developer.github.com","language":"Ruby","description":"GitHub API documentation","clone_url":"https://github.com/github/developer.github.com.git","ssh_url":"git@github.com:github/developer.github.com.git","html_url":"https://github.com/github/developer.github.com","created_at":"2011-04-26T19:20:56Z","id":1666784,"open_issues":10},{"pushed_at":"2011-11-22T18:10:52Z","git_url":"git://github.com/ChristopherMacGown/python-github3.git","updated_at":"2012-03-08T13:38:12Z","homepage":"","url":"https://api.github.com/repos/ChristopherMacGown/python-github3","has_downloads":true,"watchers":20,"permissions":{"pull":true,"admin":false,"push":false},"mirror_url":null,"fork":false,"svn_url":"https://github.com/ChristopherMacGown/python-github3","has_wiki":true,"has_issues":true,"size":236,"private":false,"forks":11,"owner":{"url":"https://api.github.com/users/ChristopherMacGown","login":"ChristopherMacGown","gravatar_id":"4174216c1dc0f223ce608d5a3b66a585","avatar_url":"https://secure.gravatar.com/avatar/4174216c1dc0f223ce608d5a3b66a585?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":43081},"name":"python-github3","language":"Python","description":"Github API v3 library for Python.","clone_url":"https://github.com/ChristopherMacGown/python-github3.git","ssh_url":"git@github.com:ChristopherMacGown/python-github3.git","html_url":"https://github.com/ChristopherMacGown/python-github3","created_at":"2011-04-28T17:07:29Z","id":1676748,"open_issues":1},{"pushed_at":"2012-02-02T09:38:42Z","git_url":"git://github.com/pjkersten/PlantUML.git","updated_at":"2012-02-06T15:26:40Z","homepage":"","url":"https://api.github.com/repos/pjkersten/PlantUML","has_downloads":true,"watchers":5,"permissions":{"pull":true,"admin":false,"push":false},"mirror_url":null,"fork":false,"svn_url":"https://github.com/pjkersten/PlantUML","has_wiki":true,"has_issues":true,"size":124,"private":false,"forks":2,"owner":{"url":"https://api.github.com/users/pjkersten","login":"pjkersten","gravatar_id":"6e33170f0701d1d1d8dd57c8f95368ef","avatar_url":"https://secure.gravatar.com/avatar/6e33170f0701d1d1d8dd57c8f95368ef?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":771883},"name":"PlantUML","language":"PHP","description":"PlantUML plugin for MediaWiki","clone_url":"https://github.com/pjkersten/PlantUML.git","ssh_url":"git@github.com:pjkersten/PlantUML.git","html_url":"https://github.com/pjkersten/PlantUML","created_at":"2011-05-06T09:33:38Z","id":1710505,"open_issues":0},{"pushed_at":"2012-05-18T05:00:54Z","git_url":"git://github.com/twitter/bootstrap.git","updated_at":"2012-05-22T17:13:54Z","homepage":"http://twitter.github.com/bootstrap","url":"https://api.github.com/repos/twitter/bootstrap","has_downloads":true,"watchers":29252,"permissions":{"pull":true,"admin":false,"push":false},"mirror_url":null,"fork":false,"svn_url":"https://github.com/twitter/bootstrap","has_wiki":true,"has_issues":true,"size":1244,"private":false,"forks":5738,"owner":{"url":"https://api.github.com/users/twitter","login":"twitter","gravatar_id":"74e977ae0a10f06057a119eef30c6660","avatar_url":"https://secure.gravatar.com/avatar/74e977ae0a10f06057a119eef30c6660?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","id":50278},"name":"bootstrap","language":"JavaScript","description":"HTML, CSS, and JS toolkit from Twitter","clone_url":"https://github.com/twitter/bootstrap.git","ssh_url":"git@github.com:twitter/bootstrap.git","html_url":"https://github.com/twitter/bootstrap","created_at":"2011-07-29T21:19:00Z","id":2126244,"open_issues":221},{"pushed_at":"2011-08-01T10:26:00Z","git_url":"git://github.com/stephenmcd/drawnby.git","updated_at":"2012-04-30T11:48:56Z","homepage":"http://drawnby.jupo.org","url":"https://api.github.com/repos/stephenmcd/drawnby","has_downloads":true,"watchers":9,"permissions":{"pull":true,"admin":false,"push":false},"mirror_url":null,"fork":false,"svn_url":"https://github.com/stephenmcd/drawnby","has_wiki":true,"has_issues":true,"size":672,"private":false,"forks":2,"owner":{"url":"https://api.github.com/users/stephenmcd","login":"stephenmcd","gravatar_id":"ce5bfd8756e2fae0e800bbea413e86b3","avatar_url":"https://secure.gravatar.com/avatar/ce5bfd8756e2fae0e800bbea413e86b3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":116385},"name":"drawnby","language":"JavaScript","description":"Drawn By is a collaborative real-time sketching app built for the 2011 Django Dash.","clone_url":"https://github.com/stephenmcd/drawnby.git","ssh_url":"git@github.com:stephenmcd/drawnby.git","html_url":"https://github.com/stephenmcd/drawnby","created_at":"2011-08-01T10:25:31Z","id":2136154,"open_issues":0},{"pushed_at":"2012-04-20T00:24:31Z","git_url":"git://github.com/stephenmcd/django-socketio.git","updated_at":"2012-05-22T12:45:54Z","homepage":"","url":"https://api.github.com/repos/stephenmcd/django-socketio","has_downloads":true,"watchers":261,"permissions":{"pull":true,"admin":false,"push":false},"mirror_url":null,"fork":false,"svn_url":"https://github.com/stephenmcd/django-socketio","has_wiki":true,"has_issues":true,"size":160,"private":false,"forks":27,"owner":{"url":"https://api.github.com/users/stephenmcd","login":"stephenmcd","gravatar_id":"ce5bfd8756e2fae0e800bbea413e86b3","avatar_url":"https://secure.gravatar.com/avatar/ce5bfd8756e2fae0e800bbea413e86b3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":116385},"name":"django-socketio","language":"JavaScript","description":"A Django app providing the features required to use websockets with Django via Socket.IO","clone_url":"https://github.com/stephenmcd/django-socketio.git","ssh_url":"git@github.com:stephenmcd/django-socketio.git","html_url":"https://github.com/stephenmcd/django-socketio","created_at":"2011-08-01T21:18:34Z","id":2139136,"open_issues":6},{"pushed_at":"2012-04-21T16:22:25Z","git_url":"git://github.com/jstasiak/django-realtime.git","updated_at":"2012-05-08T07:18:20Z","homepage":"","url":"https://api.github.com/repos/jstasiak/django-realtime","has_downloads":true,"watchers":15,"permissions":{"pull":true,"admin":false,"push":false},"mirror_url":null,"fork":false,"svn_url":"https://github.com/jstasiak/django-realtime","has_wiki":true,"has_issues":true,"size":132,"private":false,"forks":2,"owner":{"url":"https://api.github.com/users/jstasiak","login":"jstasiak","gravatar_id":"93cdbd3d2a76da1adf727a6bc9fec1ed","avatar_url":"https://secure.gravatar.com/avatar/93cdbd3d2a76da1adf727a6bc9fec1ed?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":36209},"name":"django-realtime","language":"JavaScript","description":"Use this application to get Socket.IO support in your Django project and dive into real time web.","clone_url":"https://github.com/jstasiak/django-realtime.git","ssh_url":"git@github.com:jstasiak/django-realtime.git","html_url":"https://github.com/jstasiak/django-realtime","created_at":"2011-09-20T19:13:10Z","id":2424738,"open_issues":0},{"pushed_at":"2012-05-21T16:12:27Z","git_url":"git://github.com/AcmeSystems/playground.git","updated_at":"2012-05-21T16:12:27Z","homepage":"http://www.acmesystems.it","url":"https://api.github.com/repos/AcmeSystems/playground","has_downloads":true,"watchers":6,"permissions":{"pull":true,"admin":false,"push":false},"mirror_url":null,"fork":false,"svn_url":"https://github.com/AcmeSystems/playground","has_wiki":true,"has_issues":true,"size":148,"private":false,"forks":3,"owner":{"url":"https://api.github.com/users/AcmeSystems","login":"AcmeSystems","gravatar_id":"af55714b265c4914c8bb8db49fc06da6","avatar_url":"https://secure.gravatar.com/avatar/af55714b265c4914c8bb8db49fc06da6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","id":783524},"name":"playground","language":"Python","description":"Small programming examples for the FOX Board G20","clone_url":"https://github.com/AcmeSystems/playground.git","ssh_url":"git@github.com:AcmeSystems/playground.git","html_url":"https://github.com/AcmeSystems/playground","created_at":"2011-10-17T16:16:10Z","id":2593052,"open_issues":0},{"pushed_at":"2011-11-07T14:55:19Z","git_url":"git://github.com/juuso/BozoCrack.git","updated_at":"2012-05-21T19:49:13Z","homepage":"","url":"https://api.github.com/repos/juuso/BozoCrack","has_downloads":true,"watchers":376,"permissions":{"pull":true,"admin":false,"push":false},"mirror_url":null,"fork":false,"svn_url":"https://github.com/juuso/BozoCrack","has_wiki":true,"has_issues":true,"size":140,"private":false,"forks":39,"owner":{"url":"https://api.github.com/users/juuso","login":"juuso","gravatar_id":"d3231546d42d67974fc51956a3b627f4","avatar_url":"https://secure.gravatar.com/avatar/d3231546d42d67974fc51956a3b627f4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":614446},"name":"BozoCrack","language":"Ruby","description":"A silly & effective MD5 cracker in Ruby","clone_url":"https://github.com/juuso/BozoCrack.git","ssh_url":"git@github.com:juuso/BozoCrack.git","html_url":"https://github.com/juuso/BozoCrack","created_at":"2011-11-07T13:02:08Z","id":2726128,"open_issues":8},{"pushed_at":null,"git_url":"git://github.com/BeaverSoftware/FatherBeaver.git","updated_at":"2012-02-16T21:51:15Z","homepage":"","url":"https://api.github.com/repos/BeaverSoftware/FatherBeaver","has_downloads":true,"watchers":2,"permissions":{"pull":true,"admin":true,"push":true},"mirror_url":null,"fork":false,"svn_url":"https://github.com/BeaverSoftware/FatherBeaver","has_wiki":true,"has_issues":true,"size":0,"private":false,"forks":1,"owner":{"url":"https://api.github.com/users/BeaverSoftware","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","id":1424031},"name":"FatherBeaver","language":null,"description":"","clone_url":"https://github.com/BeaverSoftware/FatherBeaver.git","ssh_url":"git@github.com:BeaverSoftware/FatherBeaver.git","html_url":"https://github.com/BeaverSoftware/FatherBeaver","created_at":"2012-02-09T19:32:21Z","id":3400397,"open_issues":0}] + +https +GET +api.github.com +None +/user/watched?page=2 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4986'), ('content-length', '4493'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="first", ; rel="prev"'), ('etag', '"5894e9073dc54de74c439e23fc738fe7"'), ('date', 'Sat, 26 May 2012 10:36:30 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"clone_url":"https://github.com/abersager/PyGithub.git","has_downloads":true,"watchers":2,"updated_at":"2012-03-28T10:37:22Z","permissions":{"pull":true,"admin":false,"push":false},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/abersager/PyGithub","has_wiki":false,"has_issues":false,"fork":true,"forks":0,"size":112,"private":false,"open_issues":0,"svn_url":"https://github.com/abersager/PyGithub","owner":{"url":"https://api.github.com/users/abersager","avatar_url":"https://secure.gravatar.com/avatar/b2e096f2c016d8dc168a3a5e6281b07a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b2e096f2c016d8dc168a3a5e6281b07a","login":"abersager","id":1328351},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:abersager/PyGithub.git","git_url":"git://github.com/abersager/PyGithub.git","pushed_at":"2012-03-26T10:05:31Z","created_at":"2012-03-26T09:12:45Z","id":3831162,"mirror_url":null,"html_url":"https://github.com/abersager/PyGithub","full_name":"abersager/PyGithub"},{"clone_url":"https://github.com/django/django.git","has_downloads":true,"watchers":2391,"updated_at":"2012-05-26T10:30:33Z","permissions":{"pull":true,"admin":false,"push":false},"homepage":"http://www.djangoproject.com/","url":"https://api.github.com/repos/django/django","has_wiki":false,"has_issues":false,"fork":false,"forks":263,"size":8408,"private":false,"open_issues":37,"svn_url":"https://github.com/django/django","owner":{"url":"https://api.github.com/users/django","avatar_url":"https://secure.gravatar.com/avatar/fd542381031aa84dca86628ece84fc07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"fd542381031aa84dca86628ece84fc07","login":"django","id":27804},"name":"django","language":"Python","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","ssh_url":"git@github.com:django/django.git","git_url":"git://github.com/django/django.git","pushed_at":"2012-05-26T09:54:24Z","created_at":"2012-04-28T02:47:18Z","id":4164482,"mirror_url":null,"html_url":"https://github.com/django/django","full_name":"django/django"},{"clone_url":"https://github.com/jacquev6/django.git","has_downloads":true,"watchers":1,"updated_at":"2012-04-28T11:06:20Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://www.djangoproject.com/","url":"https://api.github.com/repos/jacquev6/django","has_wiki":false,"has_issues":false,"fork":true,"forks":0,"size":48476,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/django","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"django","language":"Python","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","ssh_url":"git@github.com:jacquev6/django.git","git_url":"git://github.com/jacquev6/django.git","pushed_at":"2012-04-28T04:05:15Z","created_at":"2012-04-28T11:06:20Z","id":4166730,"mirror_url":null,"html_url":"https://github.com/jacquev6/django","full_name":"jacquev6/django"},{"clone_url":"https://github.com/jacquev6/TestPyGithub.git","has_downloads":false,"watchers":1,"updated_at":"2012-05-26T09:55:27Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://foobar.com","url":"https://api.github.com/repos/jacquev6/TestPyGithub","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":0,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/TestPyGithub","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"TestPyGithub","language":null,"description":"Repo created by PyGithub","ssh_url":"git@github.com:jacquev6/TestPyGithub.git","git_url":"git://github.com/jacquev6/TestPyGithub.git","pushed_at":"2012-05-26T09:55:27Z","created_at":"2012-05-26T09:55:27Z","id":4454027,"mirror_url":null,"html_url":"https://github.com/jacquev6/TestPyGithub","full_name":"jacquev6/TestPyGithub"}] + +https +GET +api.github.com +None +/user/watched/nvie/gitflow +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4993'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Tue, 22 May 2012 17:15:06 GMT')] + + +https +DELETE +api.github.com +None +/user/watched/nvie/gitflow +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4992'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Tue, 22 May 2012 17:15:07 GMT')] + + +https +GET +api.github.com +None +/user/watched/nvie/gitflow +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +404 +[('status', '404 Not Found'), ('x-ratelimit-remaining', '4991'), ('content-length', '23'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"e66a7a6c91e2c26803f3f49feb7a883f"'), ('date', 'Tue, 22 May 2012 17:15:07 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"message":"Not Found"} + +https +PUT +api.github.com +None +/user/watched/nvie/gitflow +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4990'), ('x-ratelimit-limit', '5000'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Tue, 22 May 2012 17:15:08 GMT')] + + +https +GET +api.github.com +None +/user/watched/nvie/gitflow +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4989'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Tue, 22 May 2012 17:15:09 GMT')] + + diff --git a/lib/github/tests/ReplayData/Authentication.testAuthorizationHeaderWithLogin.txt b/lib/github/tests/ReplayData/Authentication.testAuthorizationHeaderWithLogin.txt new file mode 100644 index 0000000000..8f7a91f050 --- /dev/null +++ b/lib/github/tests/ReplayData/Authentication.testAuthorizationHeaderWithLogin.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic ZmFrZV9sb2dpbjpmYWtlX3Bhc3N3b3Jk', 'User-Agent': 'PyGithub/Python'} +null +401 +[('status', '401 Unauthorized'), ('content-length', '29'), ('x-github-media-type', 'github.beta; format=json'), ('server', 'GitHub.com'), ('connection', 'keep-alive'), ('date', 'Thu, 28 Mar 2013 20:14:22 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"message":"Bad credentials"} + diff --git a/lib/github/tests/ReplayData/Authentication.testAuthorizationHeaderWithToken.txt b/lib/github/tests/ReplayData/Authentication.testAuthorizationHeaderWithToken.txt new file mode 100644 index 0000000000..742e6738fa --- /dev/null +++ b/lib/github/tests/ReplayData/Authentication.testAuthorizationHeaderWithToken.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'token ZmFrZV9sb2dpbjpmYWtlX3Bhc3N3b3Jk', 'User-Agent': 'PyGithub/Python'} +null +403 +[('status', '403 Forbidden'), ('content-length', '50'), ('x-github-media-type', 'github.beta; format=json'), ('server', 'GitHub.com'), ('connection', 'keep-alive'), ('date', 'Thu, 28 Mar 2013 20:15:00 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"message":"Max number of login attempt exceeded"} + diff --git a/lib/github/tests/ReplayData/Authentication.testBasicAuthentication.txt b/lib/github/tests/ReplayData/Authentication.testBasicAuthentication.txt new file mode 100644 index 0000000000..42734e0f88 --- /dev/null +++ b/lib/github/tests/ReplayData/Authentication.testBasicAuthentication.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/users/jacquev6 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4995'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"f1a68180387d296f308d6a01917e1799"'), ('date', 'Sat, 26 May 2012 09:34:28 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","disk_usage":16852,"public_repos":11,"url":"https://api.github.com/users/jacquev6","hireable":false,"plan":{"private_repos":5,"collaborators":1,"name":"micro","space":614400},"public_gists":1,"bio":"","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","private_gists":5,"collaborators":0,"company":"Criteo","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","total_private_repos":5,"blog":"http://vincent-jacques.net","email":"vincent@vincent-jacques.net","followers":13,"name":"Vincent Jacques","owned_private_repos":5,"created_at":"2010-07-09T06:10:06Z","location":"Paris, France","id":327146,"following":24,"html_url":"https://github.com/jacquev6"} + diff --git a/lib/github/tests/ReplayData/Authentication.testNoAuthentication.txt b/lib/github/tests/ReplayData/Authentication.testNoAuthentication.txt new file mode 100644 index 0000000000..7b7a8c4219 --- /dev/null +++ b/lib/github/tests/ReplayData/Authentication.testNoAuthentication.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/users/jacquev6 +{'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4995'), ('content-length', '623'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"b81320548394cb55b7e97fb1636d2898"'), ('date', 'Sat, 26 May 2012 09:34:28 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","public_repos":11,"url":"https://api.github.com/users/jacquev6","hireable":false,"public_gists":1,"bio":"","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","company":"Criteo","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","blog":"http://vincent-jacques.net","email":"vincent@vincent-jacques.net","followers":13,"name":"Vincent Jacques","created_at":"2010-07-09T06:10:06Z","location":"Paris, France","id":327146,"following":24,"html_url":"https://github.com/jacquev6"} + diff --git a/lib/github/tests/ReplayData/Authentication.testOAuthAuthentication.txt b/lib/github/tests/ReplayData/Authentication.testOAuthAuthentication.txt new file mode 100644 index 0000000000..811f767eba --- /dev/null +++ b/lib/github/tests/ReplayData/Authentication.testOAuthAuthentication.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/users/jacquev6 +{'Authorization': 'token private_token_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4994'), ('content-length', '623'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"0e3990a84c08ccd728a27dbe549d4f86"'), ('date', 'Sat, 26 May 2012 09:34:29 GMT'), ('x-oauth-scopes', ''), ('content-type', 'application/json; charset=utf-8'), ('x-accepted-oauth-scopes', 'user')] +{"type":"User","company":"Criteo","location":"Paris, France","hireable":false,"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","bio":"","following":24,"blog":"http://vincent-jacques.net","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","followers":13,"html_url":"https://github.com/jacquev6","url":"https://api.github.com/users/jacquev6","name":"Vincent Jacques","login":"jacquev6","public_repos":11,"public_gists":1,"email":"vincent@vincent-jacques.net","id":327146,"created_at":"2010-07-09T06:10:06Z"} + diff --git a/lib/github/tests/ReplayData/Authentication.testSecretKeyAuthentication.txt b/lib/github/tests/ReplayData/Authentication.testSecretKeyAuthentication.txt new file mode 100644 index 0000000000..043cfff5b1 --- /dev/null +++ b/lib/github/tests/ReplayData/Authentication.testSecretKeyAuthentication.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/orgs/BeaverSoftware?client_secret=client_secret&client_id=client_id +{'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4997'), ('content-length', '716'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"bd349122929faf5f9be3e53d9ad41d08"'), ('date', 'Fri, 11 May 2012 09:07:56 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"Organization","url":"https://api.github.com/orgs/BeaverSoftware","billing_email":"BeaverSoftware@vincent-jacques.net","disk_usage":112,"plan":{"private_repos":0,"space":307200,"name":"free"},"html_url":"https://github.com/BeaverSoftware","blog":null,"login":"BeaverSoftware","public_gists":0,"email":null,"avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","total_private_repos":0,"private_gists":0,"collaborators":0,"created_at":"2012-02-09T19:20:12Z","company":null,"location":"Paris, France","followers":0,"following":0,"name":null,"owned_private_repos":0,"id":1424031,"public_repos":2} + +https +GET +api.github.com +None +/orgs/BeaverSoftware/repos?client_secret=client_secret&type=public&client_id=client_id +{'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4987'), ('content-length', '2291'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"4bcc5321db433ac18171c121303c77d2"'), ('date', 'Tue, 29 May 2012 18:11:16 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"mirror_url":null,"clone_url":"https://github.com/BeaverSoftware/FatherBeaver.git","has_downloads":true,"watchers":2,"updated_at":"2012-02-16T21:51:15Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/BeaverSoftware/FatherBeaver","html_url":"https://github.com/BeaverSoftware/FatherBeaver","has_wiki":true,"has_issues":true,"fork":false,"git_url":"git://github.com/BeaverSoftware/FatherBeaver.git","forks":1,"size":0,"private":false,"open_issues":0,"svn_url":"https://github.com/BeaverSoftware/FatherBeaver","owner":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031},"name":"FatherBeaver","language":null,"description":"","ssh_url":"git@github.com:BeaverSoftware/FatherBeaver.git","pushed_at":null,"created_at":"2012-02-09T19:32:21Z","id":3400397,"full_name":"BeaverSoftware/FatherBeaver"},{"mirror_url":null,"clone_url":"https://github.com/BeaverSoftware/PyGithub.git","has_downloads":true,"watchers":1,"updated_at":"2012-05-29T18:09:14Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/BeaverSoftware/PyGithub","html_url":"https://github.com/BeaverSoftware/PyGithub","has_wiki":false,"has_issues":false,"fork":true,"git_url":"git://github.com/BeaverSoftware/PyGithub.git","forks":0,"size":428,"private":false,"open_issues":0,"svn_url":"https://github.com/BeaverSoftware/PyGithub","owner":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:BeaverSoftware/PyGithub.git","pushed_at":"2012-05-29T18:05:10Z","created_at":"2012-05-29T18:03:19Z","id":4485562,"full_name":"BeaverSoftware/PyGithub"}] + diff --git a/lib/github/tests/ReplayData/Authentication.testUserAgent.txt b/lib/github/tests/ReplayData/Authentication.testUserAgent.txt new file mode 100644 index 0000000000..127dff2bdd --- /dev/null +++ b/lib/github/tests/ReplayData/Authentication.testUserAgent.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/users/jacquev6 +{'User-Agent': 'PyGithubTester', 'User-Agent': 'PyGithubTester'} +null +200 +[('status', '200 OK'), ('content-length', '1250'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept'), ('x-ratelimit-remaining', '57'), ('server', 'nginx'), ('last-modified', 'Mon, 19 Nov 2012 19:05:48 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '60'), ('etag', '"20bb1bc354d1c62d7c5e8b918cdbe6a1"'), ('cache-control', 'public, s-maxage=60, max-age=60'), ('date', 'Mon, 19 Nov 2012 20:14:08 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"public_repos":19,"type":"User","followers_url":"https://api.github.com/users/jacquev6/followers","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","received_events_url":"https://api.github.com/users/jacquev6/received_events","following_url":"https://api.github.com/users/jacquev6/following","login":"jacquev6","blog":"http://vincent-jacques.net","following":37,"html_url":"https://github.com/jacquev6","created_at":"2010-07-09T06:10:06Z","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","hireable":false,"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","bio":"","name":"Vincent Jacques","email":"vincent@vincent-jacques.net","repos_url":"https://api.github.com/users/jacquev6/repos","public_gists":2,"followers":18,"company":"Criteo","location":"Paris, France","id":327146,"events_url":"https://api.github.com/users/jacquev6/events{/privacy}","organizations_url":"https://api.github.com/users/jacquev6/orgs"} + diff --git a/lib/github/tests/ReplayData/Authorization.setUp.txt b/lib/github/tests/ReplayData/Authorization.setUp.txt new file mode 100644 index 0000000000..665d029d37 --- /dev/null +++ b/lib/github/tests/ReplayData/Authorization.setUp.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/authorizations/372259 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4986'), ('content-length', '328'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"e15ef91b6fe4705f493fca75475b763b"'), ('date', 'Tue, 22 May 2012 18:03:49 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"scopes":[],"note_url":null,"updated_at":"2012-05-22T18:03:17Z","app":{"url":"http://developer.github.com/v3/oauth/#oauth-authorizations-api","name":"GitHub API"},"url":"https://api.github.com/authorizations/372259","token":"82459c4500086f8f0cc67d2936c17d1e27ad1c33","note":null,"created_at":"2012-05-22T18:03:17Z","id":372259} + diff --git a/lib/github/tests/ReplayData/Authorization.testDelete.txt b/lib/github/tests/ReplayData/Authorization.testDelete.txt new file mode 100644 index 0000000000..b0c0ab2a7a --- /dev/null +++ b/lib/github/tests/ReplayData/Authorization.testDelete.txt @@ -0,0 +1,11 @@ +https +DELETE +api.github.com +None +/authorizations/372259 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4992'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Tue, 22 May 2012 18:25:53 GMT')] + + diff --git a/lib/github/tests/ReplayData/Authorization.testEdit.txt b/lib/github/tests/ReplayData/Authorization.testEdit.txt new file mode 100644 index 0000000000..da16308096 --- /dev/null +++ b/lib/github/tests/ReplayData/Authorization.testEdit.txt @@ -0,0 +1,55 @@ +https +PATCH +api.github.com +None +/authorizations/372259 +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4998'), ('content-length', '328'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"39fec03a7cbd97abde96cccbd1921277"'), ('date', 'Tue, 22 May 2012 18:24:09 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"scopes":[],"updated_at":"2012-05-22T18:24:09Z","app":{"url":"http://developer.github.com/v3/oauth/#oauth-authorizations-api","name":"GitHub API"},"note_url":null,"url":"https://api.github.com/authorizations/372259","token":"82459c4500086f8f0cc67d2936c17d1e27ad1c33","note":null,"created_at":"2012-05-22T18:03:17Z","id":372259} + +https +PATCH +api.github.com +None +/authorizations/372259 +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"scopes": ["user"]} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4997'), ('content-length', '334'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"6476c8dce7e66cb43e71317294fd5b42"'), ('date', 'Tue, 22 May 2012 18:24:09 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"scopes":["user"],"updated_at":"2012-05-22T18:24:09Z","app":{"url":"http://developer.github.com/v3/oauth/#oauth-authorizations-api","name":"GitHub API"},"note_url":null,"url":"https://api.github.com/authorizations/372259","token":"82459c4500086f8f0cc67d2936c17d1e27ad1c33","note":null,"created_at":"2012-05-22T18:03:17Z","id":372259} + +https +PATCH +api.github.com +None +/authorizations/372259 +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"add_scopes": ["repo"]} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4996'), ('content-length', '341'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"aef23fb8f728fcd7acf751015c21661a"'), ('date', 'Tue, 22 May 2012 18:24:10 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"scopes":["user","repo"],"updated_at":"2012-05-22T18:24:10Z","app":{"url":"http://developer.github.com/v3/oauth/#oauth-authorizations-api","name":"GitHub API"},"url":"https://api.github.com/authorizations/372259","token":"82459c4500086f8f0cc67d2936c17d1e27ad1c33","note":null,"note_url":null,"created_at":"2012-05-22T18:03:17Z","id":372259} + +https +PATCH +api.github.com +None +/authorizations/372259 +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"remove_scopes": ["repo"]} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4995'), ('content-length', '334'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"dff7e491f5d3c779385b9f3a41694a32"'), ('date', 'Tue, 22 May 2012 18:24:11 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"scopes":["user"],"updated_at":"2012-05-22T18:24:11Z","app":{"url":"http://developer.github.com/v3/oauth/#oauth-authorizations-api","name":"GitHub API"},"note_url":null,"url":"https://api.github.com/authorizations/372259","token":"82459c4500086f8f0cc67d2936c17d1e27ad1c33","note":null,"created_at":"2012-05-22T18:03:17Z","id":372259} + +https +PATCH +api.github.com +None +/authorizations/372259 +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"note": "Note created by PyGithub", "note_url": "http://vincent-jacques.net/PyGithub"} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4994'), ('content-length', '382'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"5881b7d6eaa13e3b8539ca6ffc334be1"'), ('date', 'Tue, 22 May 2012 18:24:11 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"note_url":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/authorizations/372259","app":{"url":"http://vincent-jacques.net/PyGithub","name":"Note created by PyGithub (API)"},"scopes":["user"],"note":"Note created by PyGithub","token":"82459c4500086f8f0cc67d2936c17d1e27ad1c33","created_at":"2012-05-22T18:03:17Z","updated_at":"2012-05-22T18:24:11Z","id":372259} + diff --git a/lib/github/tests/ReplayData/BadAttributes.testBadAttributeInClassAttribute.txt b/lib/github/tests/ReplayData/BadAttributes.testBadAttributeInClassAttribute.txt new file mode 100644 index 0000000000..6de4abcd38 --- /dev/null +++ b/lib/github/tests/ReplayData/BadAttributes.testBadAttributeInClassAttribute.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/klmitch/turnstile +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4968'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '5351c17d-c8ac-4a49-b6f4-1dd0411bb9ae'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '4587'), ('server', 'GitHub.com'), ('last-modified', 'Wed, 21 Aug 2013 16:04:54 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"aab62d006633c3842d38e20dc732a2c9"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Thu, 12 Sep 2013 08:38:57 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378976739')] +{"id":3404510,"name":"turnstile","full_name":"klmitch/turnstile","owner":{"login":"klmitch","id":686398,"avatar_url":42,"gravatar_id":"3c505225c6f28a7702b318a991141495","url":"https://api.github.com/users/klmitch","html_url":"https://github.com/klmitch","followers_url":"https://api.github.com/users/klmitch/followers","following_url":"https://api.github.com/users/klmitch/following{/other_user}","gists_url":"https://api.github.com/users/klmitch/gists{/gist_id}","starred_url":"https://api.github.com/users/klmitch/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/klmitch/subscriptions","organizations_url":"https://api.github.com/users/klmitch/orgs","repos_url":"https://api.github.com/users/klmitch/repos","events_url":"https://api.github.com/users/klmitch/events{/privacy}","received_events_url":"https://api.github.com/users/klmitch/received_events","type":"User"},"private":false,"html_url":"https://github.com/klmitch/turnstile","description":"A distributed rate limiting WSGI middleware.","fork":false,"url":"https://api.github.com/repos/klmitch/turnstile","forks_url":"https://api.github.com/repos/klmitch/turnstile/forks","keys_url":"https://api.github.com/repos/klmitch/turnstile/keys{/key_id}","collaborators_url":"https://api.github.com/repos/klmitch/turnstile/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/klmitch/turnstile/teams","hooks_url":"https://api.github.com/repos/klmitch/turnstile/hooks","issue_events_url":"https://api.github.com/repos/klmitch/turnstile/issues/events{/number}","events_url":"https://api.github.com/repos/klmitch/turnstile/events","assignees_url":"https://api.github.com/repos/klmitch/turnstile/assignees{/user}","branches_url":"https://api.github.com/repos/klmitch/turnstile/branches{/branch}","tags_url":"https://api.github.com/repos/klmitch/turnstile/tags","blobs_url":"https://api.github.com/repos/klmitch/turnstile/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/klmitch/turnstile/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/klmitch/turnstile/git/refs{/sha}","trees_url":"https://api.github.com/repos/klmitch/turnstile/git/trees{/sha}","statuses_url":"https://api.github.com/repos/klmitch/turnstile/statuses/{sha}","languages_url":"https://api.github.com/repos/klmitch/turnstile/languages","stargazers_url":"https://api.github.com/repos/klmitch/turnstile/stargazers","contributors_url":"https://api.github.com/repos/klmitch/turnstile/contributors","subscribers_url":"https://api.github.com/repos/klmitch/turnstile/subscribers","subscription_url":"https://api.github.com/repos/klmitch/turnstile/subscription","commits_url":"https://api.github.com/repos/klmitch/turnstile/commits{/sha}","git_commits_url":"https://api.github.com/repos/klmitch/turnstile/git/commits{/sha}","comments_url":"https://api.github.com/repos/klmitch/turnstile/comments{/number}","issue_comment_url":"https://api.github.com/repos/klmitch/turnstile/issues/comments/{number}","contents_url":"https://api.github.com/repos/klmitch/turnstile/contents/{+path}","compare_url":"https://api.github.com/repos/klmitch/turnstile/compare/{base}...{head}","merges_url":"https://api.github.com/repos/klmitch/turnstile/merges","archive_url":"https://api.github.com/repos/klmitch/turnstile/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/klmitch/turnstile/downloads","issues_url":"https://api.github.com/repos/klmitch/turnstile/issues{/number}","pulls_url":"https://api.github.com/repos/klmitch/turnstile/pulls{/number}","milestones_url":"https://api.github.com/repos/klmitch/turnstile/milestones{/number}","notifications_url":"https://api.github.com/repos/klmitch/turnstile/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/klmitch/turnstile/labels{/name}","created_at":"2012-02-10T05:16:36Z","updated_at":"2013-08-21T16:04:54Z","pushed_at":"2013-05-01T22:22:20Z","git_url":"git://github.com/klmitch/turnstile.git","ssh_url":"git@github.com:klmitch/turnstile.git","clone_url":"https://github.com/klmitch/turnstile.git","svn_url":"https://github.com/klmitch/turnstile","homepage":"","size":260,"watchers_count":15,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":6,"mirror_url":null,"open_issues_count":1,"forks":6,"open_issues":1,"watchers":15,"master_branch":"master","default_branch":"master","permissions":{"admin":false,"push":false,"pull":true},"network_count":6} + diff --git a/lib/github/tests/ReplayData/BadAttributes.testBadAttributeTransformation.txt b/lib/github/tests/ReplayData/BadAttributes.testBadAttributeTransformation.txt new file mode 100755 index 0000000000..4dda347fb6 --- /dev/null +++ b/lib/github/tests/ReplayData/BadAttributes.testBadAttributeTransformation.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/users/klmitch +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4966'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', 'b66ca3c7-84f9-455a-9db8-3df385fc7b32'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '1254'), ('server', 'GitHub.com'), ('last-modified', 'Wed, 11 Sep 2013 19:26:25 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"6c1c41cdc34b6a47b3ee2a765cc51310"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Thu, 12 Sep 2013 08:45:34 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378976739')] +{"login":"klmitch","id":686398,"avatar_url":"https://1.gravatar.com/avatar/3c505225c6f28a7702b318a991141495?d=https%3A%2F%2Fidenticons.github.com%2Ffffa0f2e30bad5753edbb60f250b7cbe.png","gravatar_id":"3c505225c6f28a7702b318a991141495","url":"https://api.github.com/users/klmitch","html_url":"https://github.com/klmitch","followers_url":"https://api.github.com/users/klmitch/followers","following_url":"https://api.github.com/users/klmitch/following{/other_user}","gists_url":"https://api.github.com/users/klmitch/gists{/gist_id}","starred_url":"https://api.github.com/users/klmitch/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/klmitch/subscriptions","organizations_url":"https://api.github.com/users/klmitch/orgs","repos_url":"https://api.github.com/users/klmitch/repos","events_url":"https://api.github.com/users/klmitch/events{/privacy}","received_events_url":"https://api.github.com/users/klmitch/received_events","type":"User","name":"Kevin L. Mitchell","company":"Rackspace","blog":null,"location":"San Antonio, TX","email":"kevin.mitchell@rackspace.com","hireable":false,"bio":null,"public_repos":29,"followers":15,"following":18,"created_at":"foobar","updated_at":42,"public_gists":0} + diff --git a/lib/github/tests/ReplayData/BadAttributes.testBadSimpleAttribute.txt b/lib/github/tests/ReplayData/BadAttributes.testBadSimpleAttribute.txt new file mode 100644 index 0000000000..c04566d12d --- /dev/null +++ b/lib/github/tests/ReplayData/BadAttributes.testBadSimpleAttribute.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/users/klmitch +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4970'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '678fcfc5-140a-4d38-be2f-09ebbd8bb58d'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '1254'), ('server', 'GitHub.com'), ('last-modified', 'Wed, 11 Sep 2013 19:26:25 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"6c1c41cdc34b6a47b3ee2a765cc51310"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Thu, 12 Sep 2013 08:21:32 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378976739')] +{"login":"klmitch","id":686398,"avatar_url":"https://2.gravatar.com/avatar/3c505225c6f28a7702b318a991141495?d=https%3A%2F%2Fidenticons.github.com%2Ffffa0f2e30bad5753edbb60f250b7cbe.png","gravatar_id":"3c505225c6f28a7702b318a991141495","url":"https://api.github.com/users/klmitch","html_url":"https://github.com/klmitch","followers_url":"https://api.github.com/users/klmitch/followers","following_url":"https://api.github.com/users/klmitch/following{/other_user}","gists_url":"https://api.github.com/users/klmitch/gists{/gist_id}","starred_url":"https://api.github.com/users/klmitch/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/klmitch/subscriptions","organizations_url":"https://api.github.com/users/klmitch/orgs","repos_url":"https://api.github.com/users/klmitch/repos","events_url":"https://api.github.com/users/klmitch/events{/privacy}","received_events_url":"https://api.github.com/users/klmitch/received_events","type":"User","name":42,"company":"Rackspace","blog":null,"location":"San Antonio, TX","email":"kevin.mitchell@rackspace.com","hireable":false,"bio":null,"public_repos":29,"followers":15,"following":18,"created_at":"2011-03-23T15:42:09Z","updated_at":"2013-09-11T19:26:25Z","public_gists":0} + diff --git a/lib/github/tests/ReplayData/BadAttributes.testBadSimpleAttributeInList.txt b/lib/github/tests/ReplayData/BadAttributes.testBadSimpleAttributeInList.txt new file mode 100644 index 0000000000..8c8603d029 --- /dev/null +++ b/lib/github/tests/ReplayData/BadAttributes.testBadSimpleAttributeInList.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/hooks/activecollab +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4969'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', 'fd44f8b6-d47d-44c5-a365-cd7bf9569c88'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '191'), ('server', 'GitHub.com'), ('last-modified', 'Wed, 04 Sep 2013 18:03:57 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"678dd8e392d70d3a284c3d47221ec6f0"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Thu, 12 Sep 2013 08:31:46 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378976739')] +{"name":"activecollab","events":["push", 42],"supported_events":["push"],"schema":[["string","url"],["string","token"],["string","project_id"],["string","milestone_id"],["string","category_id"]]} + diff --git a/lib/github/tests/ReplayData/BadAttributes.testBadTransformedAttribute.txt b/lib/github/tests/ReplayData/BadAttributes.testBadTransformedAttribute.txt new file mode 100644 index 0000000000..4dda347fb6 --- /dev/null +++ b/lib/github/tests/ReplayData/BadAttributes.testBadTransformedAttribute.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/users/klmitch +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4966'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', 'b66ca3c7-84f9-455a-9db8-3df385fc7b32'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '1254'), ('server', 'GitHub.com'), ('last-modified', 'Wed, 11 Sep 2013 19:26:25 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"6c1c41cdc34b6a47b3ee2a765cc51310"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Thu, 12 Sep 2013 08:45:34 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378976739')] +{"login":"klmitch","id":686398,"avatar_url":"https://1.gravatar.com/avatar/3c505225c6f28a7702b318a991141495?d=https%3A%2F%2Fidenticons.github.com%2Ffffa0f2e30bad5753edbb60f250b7cbe.png","gravatar_id":"3c505225c6f28a7702b318a991141495","url":"https://api.github.com/users/klmitch","html_url":"https://github.com/klmitch","followers_url":"https://api.github.com/users/klmitch/followers","following_url":"https://api.github.com/users/klmitch/following{/other_user}","gists_url":"https://api.github.com/users/klmitch/gists{/gist_id}","starred_url":"https://api.github.com/users/klmitch/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/klmitch/subscriptions","organizations_url":"https://api.github.com/users/klmitch/orgs","repos_url":"https://api.github.com/users/klmitch/repos","events_url":"https://api.github.com/users/klmitch/events{/privacy}","received_events_url":"https://api.github.com/users/klmitch/received_events","type":"User","name":"Kevin L. Mitchell","company":"Rackspace","blog":null,"location":"San Antonio, TX","email":"kevin.mitchell@rackspace.com","hireable":false,"bio":null,"public_repos":29,"followers":15,"following":18,"created_at":"foobar","updated_at":42,"public_gists":0} + diff --git a/lib/github/tests/ReplayData/BadAttributes.testBadTransformedAttributeInDict.txt b/lib/github/tests/ReplayData/BadAttributes.testBadTransformedAttributeInDict.txt new file mode 100644 index 0000000000..461bfb0ac8 --- /dev/null +++ b/lib/github/tests/ReplayData/BadAttributes.testBadTransformedAttributeInDict.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/gists/6437766 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4996'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '8131a430-28c1-45bb-a5b7-09fcdabc5dc7'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '2933'), ('server', 'GitHub.com'), ('last-modified', 'Thu, 12 Sep 2013 00:23:35 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"b3954ac942969f1e10c24ec5b5ec04d3"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Thu, 12 Sep 2013 09:25:36 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378980564')] +{"url":"https://api.github.com/gists/6437766","forks_url":"https://api.github.com/gists/6437766/forks","commits_url":"https://api.github.com/gists/6437766/commits","id":"6437766","git_pull_url":"https://gist.github.com/6437766.git","git_push_url":"https://gist.github.com/6437766.git","html_url":"https://gist.github.com/6437766","files":{"test.py":42},"public":true,"created_at":"2013-09-04T14:30:47Z","updated_at":"2013-09-04T14:30:48Z","description":"Test script for https://github.com/jacquev6/PyGithub/issues/194","comments":0,"user":{"login":"jacquev6","id":327146,"avatar_url":"https://1.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"comments_url":"https://api.github.com/gists/6437766/comments","forks":[],"history":[{"user":null,"version":"5aa7a28e0a1dc6acf5a70de66e189f73f01735f4","committed_at":"2013-09-04T14:30:47Z","change_status":{"total":24,"additions":24,"deletions":0},"url":"https://api.github.com/gists/6437766/5aa7a28e0a1dc6acf5a70de66e189f73f01735f4"}]} + diff --git a/lib/github/tests/ReplayData/BadAttributes.testBadTransformedAttributeInList.txt b/lib/github/tests/ReplayData/BadAttributes.testBadTransformedAttributeInList.txt new file mode 100644 index 0000000000..c05fde465d --- /dev/null +++ b/lib/github/tests/ReplayData/BadAttributes.testBadTransformedAttributeInList.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/klmitch/turnstile/commits/38d9082a898d0822b5ccdfd78f3a536e2efa6c26 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4998'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '205eb9ed-a173-47a2-b670-16ec266adef5'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '6111'), ('server', 'GitHub.com'), ('last-modified', 'Wed, 01 May 2013 19:03:50 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"50a14a79f7095a8d4fed16d05a4b1412"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Thu, 12 Sep 2013 09:09:25 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378980564')] +{"sha":"38d9082a898d0822b5ccdfd78f3a536e2efa6c26","commit":{"author":{"name":"Kevin L. Mitchell","email":"kevin.mitchell@rackspace.com","date":"2013-05-01T19:03:50Z"},"committer":{"name":"Kevin L. Mitchell","email":"kevin.mitchell@rackspace.com","date":"2013-05-01T19:03:50Z"},"message":"Ignore empty configuration values for extra database arguments\n\nTurnstile's functionality to allow the control daemon and the\ncompactor daemon to use different Redis configuration provides\none problem: values that are set in the \"[redis]\" section are\ninherited by all sections, even when that is not desired. To\ncombat this, we now allow an empty value to completely delete\nthe key from the redis configuration in Config.get_database().","tree":{"sha":"83b8ab73bedb67846b47533d1bac7767ac325dc8","url":"https://api.github.com/repos/klmitch/turnstile/git/trees/83b8ab73bedb67846b47533d1bac7767ac325dc8"},"url":"https://api.github.com/repos/klmitch/turnstile/git/commits/38d9082a898d0822b5ccdfd78f3a536e2efa6c26","comment_count":0},"url":"https://api.github.com/repos/klmitch/turnstile/commits/38d9082a898d0822b5ccdfd78f3a536e2efa6c26","html_url":"https://github.com/klmitch/turnstile/commit/38d9082a898d0822b5ccdfd78f3a536e2efa6c26","comments_url":"https://api.github.com/repos/klmitch/turnstile/commits/38d9082a898d0822b5ccdfd78f3a536e2efa6c26/comments","author":{"login":"klmitch","id":686398,"avatar_url":"https://1.gravatar.com/avatar/3c505225c6f28a7702b318a991141495?d=https%3A%2F%2Fidenticons.github.com%2Ffffa0f2e30bad5753edbb60f250b7cbe.png","gravatar_id":"3c505225c6f28a7702b318a991141495","url":"https://api.github.com/users/klmitch","html_url":"https://github.com/klmitch","followers_url":"https://api.github.com/users/klmitch/followers","following_url":"https://api.github.com/users/klmitch/following{/other_user}","gists_url":"https://api.github.com/users/klmitch/gists{/gist_id}","starred_url":"https://api.github.com/users/klmitch/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/klmitch/subscriptions","organizations_url":"https://api.github.com/users/klmitch/orgs","repos_url":"https://api.github.com/users/klmitch/repos","events_url":"https://api.github.com/users/klmitch/events{/privacy}","received_events_url":"https://api.github.com/users/klmitch/received_events","type":"User"},"committer":{"login":"klmitch","id":686398,"avatar_url":"https://1.gravatar.com/avatar/3c505225c6f28a7702b318a991141495?d=https%3A%2F%2Fidenticons.github.com%2Ffffa0f2e30bad5753edbb60f250b7cbe.png","gravatar_id":"3c505225c6f28a7702b318a991141495","url":"https://api.github.com/users/klmitch","html_url":"https://github.com/klmitch","followers_url":"https://api.github.com/users/klmitch/followers","following_url":"https://api.github.com/users/klmitch/following{/other_user}","gists_url":"https://api.github.com/users/klmitch/gists{/gist_id}","starred_url":"https://api.github.com/users/klmitch/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/klmitch/subscriptions","organizations_url":"https://api.github.com/users/klmitch/orgs","repos_url":"https://api.github.com/users/klmitch/repos","events_url":"https://api.github.com/users/klmitch/events{/privacy}","received_events_url":"https://api.github.com/users/klmitch/received_events","type":"User"},"parents":[{"sha":"e649bcaa580248de40ef6c126fe446a3da514312","url":"https://api.github.com/repos/klmitch/turnstile/commits/e649bcaa580248de40ef6c126fe446a3da514312","html_url":"https://github.com/klmitch/turnstile/commit/e649bcaa580248de40ef6c126fe446a3da514312"}],"stats":{"total":9,"additions":7,"deletions":2},"files":[42]} + diff --git a/lib/github/tests/ReplayData/BadAttributes.testIssue195.txt b/lib/github/tests/ReplayData/BadAttributes.testIssue195.txt new file mode 100644 index 0000000000..6d558a0dd7 --- /dev/null +++ b/lib/github/tests/ReplayData/BadAttributes.testIssue195.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/hooks +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4994'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', 'beb27389-3e55-40c9-b2e7-718b4f647721'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '28297'), ('server', 'GitHub.com'), ('last-modified', 'Wed, 04 Sep 2013 18:03:57 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"678dd8e392d70d3a284c3d47221ec6f0"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Thu, 12 Sep 2013 09:34:49 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378980564')] +[{"name":"activecollab","events":["push"],"supported_events":["push"],"schema":[["string","url"],["string","token"],["string","project_id"],["string","milestone_id"],["string","category_id"]]},{"name":"acunote","events":["push"],"supported_events":["push"],"schema":[["string","token"]]},{"name":"agilebench","events":["push"],"supported_events":["push"],"schema":[["string","token"],["string","project_id"]]},{"name":"agilezen","events":["push"],"supported_events":["push"],"schema":[["string","api_key"],["string","project_id"],["string","branches"]]},{"name":"amazonsns","events":["push"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","aws_key"],["string","aws_secret"],["string","sns_topic"],["string","sqs_queue"],["password","aws_secret"]]},{"name":"apiary","events":["push"],"supported_events":["push"],"schema":[["string","branch"],["string","domain"]]},{"name":"apoio","events":["issues"],"supported_events":["issues"],"schema":[["string","subdomain"],["string","token"]]},{"name":"appharbor","events":["push"],"supported_events":["push"],"schema":[["string","application_slug"],["string","token"]]},{"name":"apropos","events":["commit_comment","issues","issue_comment","pull_request","push"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","project_id"]]},{"name":"asana","events":["push"],"supported_events":["push"],"schema":[["string","auth_token"],["string","restrict_to_branch"],["boolean","restrict_to_last_commit"]]},{"name":"backlog","events":["push"],"supported_events":["push"],"schema":[["string","api_url"],["string","user_id"],["password","password"]]},{"name":"bamboo","events":["push"],"supported_events":["push"],"schema":[["string","base_url"],["string","build_key"],["string","username"],["password","password"]]},{"name":"basecamp","events":["push"],"supported_events":["push"],"schema":[["string","url"],["string","project"],["string","category"],["string","username"],["password","password"],["boolean","ssl"]]},{"name":"bcx","events":["push","pull_request","issues"],"supported_events":["issues","pull_request","push"],"schema":[["string","project_url"],["string","email_address"],["password","password"]]},{"name":"blimp","events":["issues","issue_comment"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","project_url"],["string","username"],["string","goal_title"],["password","api_key"]]},{"name":"boxcar","events":["push"],"supported_events":["push"],"schema":[["string","subscribers"]]},{"name":"buddycloud","events":["push"],"supported_events":["push"],"schema":[["string","buddycloud_base_api"],["string","username"],["string","password"],["string","channel"],["password","password"],["boolean","show_commit_summary"],["boolean","show_commit_detail"]]},{"name":"bugherd","events":["issues","issue_comment","push"],"supported_events":["issue_comment","issues","push"],"schema":[["string","project_key"]]},{"name":"bugly","events":["push"],"supported_events":["push"],"schema":[["string","project_id"],["string","account_name"],["string","token"]]},{"name":"bugzilla","events":["push"],"supported_events":["push"],"schema":[["string","server_url"],["string","username"],["string","integration_branch"],["password","password"],["boolean","central_repository"]]},{"name":"campfire","events":["push","pull_request","issues"],"supported_events":["gollum","issues","public","pull_request","push"],"schema":[["string","subdomain"],["string","room"],["string","token"],["string","sound"],["boolean","master_only"],["boolean","play_sound"],["boolean","long_url"]]},{"name":"cia","events":["push"],"supported_events":["push"],"schema":[["string","address"],["string","project"],["string","branch"],["string","module"],["boolean","long_url"],["boolean","full_commits"]]},{"name":"circleci","events":[["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"]],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[]},{"name":"codeclimate","events":["push"],"supported_events":["push"],"schema":[["string","token"]]},{"name":"codeportingcsharp2java","events":["push"],"supported_events":["push"],"schema":[["string","project_name"],["string","repo_key"],["string","target_repo_key"],["string","codeporting_username"],["password","codeporting_password"],["string","github_access_token"]]},{"name":"codeship","events":["push"],"supported_events":["push"],"schema":[["string","project_uuid"]]},{"name":"coffeedocinfo","events":["push"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[]},{"name":"conductor","events":["push"],"supported_events":["push"],"schema":[["string","api_key"]]},{"name":"coop","events":["push"],"supported_events":["push"],"schema":[["string","group_id"],["string","token"]]},{"name":"copperegg","events":["push"],"supported_events":["push"],"schema":[["string","url"],["string","tag"],["boolean","master_only"],["string","api_key"]]},{"name":"cube","events":["push"],"supported_events":["push"],"schema":[["string","domain"],["string","project"],["string","token"]]},{"name":"depending","events":["push"],"supported_events":["push"],"schema":[["string","token"]]},{"name":"deployhq","events":["push"],"supported_events":["push"],"schema":[["string","deploy_hook_url"],["boolean","email_pusher"]]},{"name":"devaria","events":["push","member","public","issues","gollum"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","project_name"],["string","username"],["string","user_class_id"]]},{"name":"docker","events":["push"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[]},{"name":"ducksboard","events":["push","issues","fork","watch"],"supported_events":["fork","issues","push","watch"],"schema":[["string","webhook_key"]]},{"name":"email","events":["push"],"supported_events":["public","push"],"schema":[["string","address"],["password","secret"],["boolean","send_from_author"]]},{"name":"firebase","events":["push"],"supported_events":["push"],"schema":[["string","firebase"],["string","secret"]]},{"name":"fisheye","events":["push"],"supported_events":["push"],"schema":[["string","url_base"],["string","token"],["string","repository_name"]]},{"name":"flowdock","events":["commit_comment","gollum","issues","issue_comment","pull_request","push"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","token"]]},{"name":"fogbugz","events":["push"],"supported_events":["push"],"schema":[["string","cvssubmit_url"],["string","fb_repoid"],["string","fb_version"]]},{"name":"freckle","events":["push"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","subdomain"],["string","project"],["string","token"]]},{"name":"friendfeed","events":["push"],"supported_events":["push"],"schema":[["string","nickname"],["string","remotekey"]]},{"name":"gemini","events":["push"],"supported_events":["push"],"schema":[["string","server_url"],["string","api_key"]]},{"name":"gemnasium","events":["push"],"supported_events":["push"],"schema":[["string","user"],["string","token"]]},{"name":"geocommit","events":["push"],"supported_events":["push"],"schema":[]},{"name":"getlocalization","events":["push"],"supported_events":["push"],"schema":[["string","project_name"],["string","project_token"]]},{"name":"gitlive","events":["push"],"supported_events":["push"],"schema":[]},{"name":"grmble","events":["push"],"supported_events":["push"],"schema":[["string","room_api_url"],["string","token"]]},{"name":"grouptalent","events":["push"],"supported_events":["push"],"schema":[["string","token"]]},{"name":"grove","events":["commit_comment","gollum","issues","issue_comment","pull_request","push"],"supported_events":["push"],"schema":[["string","channel_token"]]},{"name":"habitualist","events":["push"],"supported_events":["push"],"schema":[]},{"name":"hakiri","events":["push"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","token"],["string","project_id"]]},{"name":"hall","events":["commit_comment","gollum","issues","issue_comment","pull_request","push"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","room_token"]]},{"name":"harvest","events":["push"],"supported_events":["push"],"schema":[["string","subdomain"],["string","username"],["password","password"],["boolean","ssl"]]},{"name":"hipchat","events":["commit_comment","download","fork","fork_apply","gollum","issues","issue_comment","member","public","pull_request","push","watch"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","auth_token"],["string","room"],["string","restrict_to_branch"],["boolean","notify"],["boolean","quiet_fork"],["boolean","quiet_watch"],["boolean","quiet_comments"]]},{"name":"hostedgraphite","events":["push"],"supported_events":["push"],"schema":[["string","api_key"]]},{"name":"hubcap","events":["push"],"supported_events":["push"],"schema":[]},{"name":"hubci","events":["push"],"supported_events":["push"],"schema":[["string","token"]]},{"name":"humbug","events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","push","team_add","watch","pull_request_review_comment","status"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","email"],["string","api_key"],["string","stream"],["string","branches"]]},{"name":"icescrum","events":["push"],"supported_events":["push"],"schema":[["string","base_url"],["string","project_key"],["string","username"],["password","password"]]},{"name":"irc","events":["push","pull_request"],"supported_events":["commit_comment","issue_comment","issues","pull_request","pull_request_review_comment","push"],"schema":[["string","server"],["string","port"],["string","room"],["string","nick"],["string","branch_regexes"],["string","nickserv_password"],["password","password"],["boolean","ssl"],["boolean","message_without_join"],["boolean","no_colors"],["boolean","long_url"],["boolean","notice"]]},{"name":"irker","events":["push"],"supported_events":["push"],"schema":[["string","address"],["string","project"],["string","branch"],["string","module"],["string","channels"],["boolean","long_url"],["boolean","color"],["boolean","full_commits"]]},{"name":"ironmq","events":["commit_comment","download","fork","fork_apply","gollum","issues","issue_comment","member","public","pull_request","push","watch"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","token"],["string","project_id"],["string","queue_name"]]},{"name":"ironworker","events":["commit_comment","download","fork","fork_apply","gollum","issues","issue_comment","member","public","pull_request","push","watch"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","token"],["string","project_id"],["string","queue_name"]]},{"name":"jabber","events":["push"],"supported_events":["push"],"schema":[["string","user"]]},{"name":"jaconda","events":["commit_comment","download","fork","fork_apply","gollum","issues","issue_comment","member","public","pull_request","push","watch"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","subdomain"],["string","room_id"],["string","room_token"],["boolean","digest"]]},{"name":"jeapie","events":["push","pull_request","commit_comment"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","token"]]},{"name":"jenkins","events":["push"],"supported_events":["push"],"schema":[["string","jenkins_hook_url"]]},{"name":"jenkinsgit","events":["push"],"supported_events":["push"],"schema":[["string","jenkins_url"]]},{"name":"jira","events":["push"],"supported_events":["push"],"schema":[["string","server_url"],["string","api_version"],["string","username"],["password","password"]]},{"name":"jqueryplugins","events":["push"],"supported_events":["push"],"schema":[]},{"name":"kanbanery","events":["push"],"supported_events":["push"],"schema":[["string","project_id"],["string","project_token"]]},{"name":"kickoff","events":["push"],"supported_events":["push"],"schema":[["string","project_id"],["string","project_token"]]},{"name":"leanto","events":["push"],"supported_events":["push"],"schema":[["string","token"]]},{"name":"lechat","events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","webhook_url"]]},{"name":"lighthouse","events":["push"],"supported_events":["push"],"schema":[["string","subdomain"],["string","project_id"],["string","token"],["boolean","private"],["boolean","send_only_ticket_commits"]]},{"name":"lingohub","events":["push"],"supported_events":["push"],"schema":[["string","project_token"]]},{"name":"loggly","events":["push"],"supported_events":["push"],"schema":[["string","input_token"]]},{"name":"mantisbt","events":["push"],"supported_events":["push"],"schema":[["string","url"],["string","api_key"]]},{"name":"masterbranch","events":["push"],"supported_events":["push"],"schema":[]},{"name":"mqttpub","events":["push"],"supported_events":["push"],"schema":[["string","broker"],["string","port"],["string","topic"],["string","clientid"],["string","user"],["password","pass"],["boolean","retain"]]},{"name":"nma","events":["push"],"supported_events":["push"],"schema":[["string","apikey"]]},{"name":"nodejitsu","events":["push"],"supported_events":["push"],"schema":[["string","username"],["password","password"],["string","branch"],["string","endpoint"],["boolean","email_success_deploys"],["boolean","email_errors"]]},{"name":"notifo","events":["push"],"supported_events":["push"],"schema":[["string","subscribers"]]},{"name":"ontime","events":["push"],"supported_events":["push"],"schema":[["string","ontime_url"],["string","api_key"]]},{"name":"pachube","events":["push"],"supported_events":["push"],"schema":[["string","api_key"],["string","feed_id"],["string","track_branch"]]},{"name":"packagist","events":["push"],"supported_events":["push"],"schema":[["string","user"],["string","token"],["string","domain"]]},{"name":"phraseapp","events":["push"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","auth_token"]]},{"name":"pivotaltracker","events":["push"],"supported_events":["push"],"schema":[["string","token"],["string","branch"],["string","endpoint"]]},{"name":"planbox","events":["push"],"supported_events":["push"],"schema":[["string","token"]]},{"name":"planio","events":["push"],"supported_events":["push"],"schema":[["string","address"],["string","project"],["string","api_key"]]},{"name":"prowl","events":["push"],"supported_events":["push"],"schema":[["string","apikey"]]},{"name":"puppetlinter","events":["push"],"supported_events":["push"],"schema":[]},{"name":"pushalot","events":["push"],"supported_events":["push"],"schema":[["string","authorization_token"]]},{"name":"pushover","events":["push"],"supported_events":["push"],"schema":[["string","user_key"],["string","device_name"]]},{"name":"pythonpackages","events":["push"],"supported_events":["push"],"schema":[]},{"name":"railsbp","events":["push"],"supported_events":["push"],"schema":[["string","railsbp_url"],["string","token"]]},{"name":"railsbrakeman","events":["push"],"supported_events":["push"],"schema":[["string","rails_brakeman_url"],["string","token"]]},{"name":"rally","events":["push"],"supported_events":["push"],"schema":[["string","server"],["string","username"],["string","workspace"],["string","repository"],["password","password"]]},{"name":"rapidpush","events":["push"],"supported_events":["push"],"schema":[["string","apikey"]]},{"name":"rationaljazzhub","events":["push"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","username"],["password","password"],["string","override_server_url"]]},{"name":"rationalteamconcert","events":["push"],"supported_events":["push"],"schema":[["string","server_url"],["string","username"],["string","project_area_uuid"],["password","password"],["boolean","basic_authentication"],["boolean","no_verify_ssl"]]},{"name":"rdocinfo","events":["push"],"supported_events":["push"],"schema":[]},{"name":"readthedocs","events":["push"],"supported_events":["push"],"schema":[]},{"name":"redmine","events":["push"],"supported_events":["push"],"schema":[["string","address"],["string","project"],["string","api_key"],["boolean","fetch_commits"],["boolean","update_redmine_issues_about_commits"]]},{"name":"rubyforge","events":["push"],"supported_events":["push"],"schema":[["string","groupid"],["string","username"],["password","password"]]},{"name":"scrumdo","events":["push"],"supported_events":["push"],"schema":[["string","username"],["string","project_slug"],["password","password"]]},{"name":"shiningpanda","events":["push"],"supported_events":["push"],"schema":[["string","workspace"],["string","job"],["string","token"],["string","branches"],["string","parameters"]]},{"name":"sifter","events":["push"],"supported_events":["push"],"schema":[["string","subdomain"],["string","token"]]},{"name":"simperium","events":["push","issues","issue_comment","commit_comment","pull_request","pull_request_review_comment","watch","fork","fork_apply","member","public","team_add","status"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","app_id"],["string","token"],["string","bucket"]]},{"name":"slatebox","events":["push"],"supported_events":["push"],"schema":[["string","app_id"],["string","token"]]},{"name":"snowyevening","events":["push"],"supported_events":["push"],"schema":[["string","project"],["string","api_key"]]},{"name":"socialcast","events":["push"],"supported_events":["push"],"schema":[["string","api_domain"],["string","group_id"],["string","username"],["password","password"]]},{"name":"softlayermessaging","events":["push"],"supported_events":["push"],"schema":[["string","account"],["string","user"],["string","name"],["password","key"],["boolean","topic"]]},{"name":"sourcemint","events":["push"],"supported_events":["push"],"schema":[]},{"name":"splendidbacon","events":["push"],"supported_events":["push"],"schema":[["string","project_id"],["string","token"]]},{"name":"sprintly","events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","push","team_add","watch","pull_request_review_comment","status"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","email"],["string","api_key"],["string","product_id"]]},{"name":"sqsqueue","events":["push"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","aws_access_key"],["string","sqs_queue_name"],["password","aws_secret_key"]]},{"name":"stackmob","events":["push"],"supported_events":["push"],"schema":[["string","token"]]},{"name":"statusnet","events":["push"],"supported_events":["push"],"schema":[["string","server"],["string","username"],["password","password"],["boolean","digest"]]},{"name":"talker","events":["push"],"supported_events":["issues","pull_request","push"],"schema":[["string","url"],["string","token"],["boolean","digest"]]},{"name":"targetprocess","events":["push"],"supported_events":["push"],"schema":[["string","base_url"],["string","username"],["password","password"]]},{"name":"tddium","events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","token"],["string","override_url"]]},{"name":"teamcity","events":["push"],"supported_events":["push"],"schema":[["string","base_url"],["string","build_type_id"],["string","username"],["string","branches"],["password","password"]]},{"name":"tender","events":["issues"],"supported_events":["issues","pull_request"],"schema":[["string","domain"],["string","token"]]},{"name":"tenxer","events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[]},{"name":"testpilot","events":["push"],"supported_events":["push"],"schema":[["string","token"]]},{"name":"toggl","events":["push"],"supported_events":["push"],"schema":[["string","project"],["string","api_token"]]},{"name":"trac","events":["push"],"supported_events":["push"],"schema":[["string","url"],["string","token"]]},{"name":"trajectory","events":["push"],"supported_events":["pull_request","push"],"schema":[["string","api_key"]]},{"name":"travis","events":["push","pull_request","issue_comment","public","member"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","user"],["password","token"],["string","domain"]]},{"name":"trello","events":["push","pull_request"],"supported_events":["pull_request","push"],"schema":[["string","push_list_id"],["string","pull_request_list_id"],["string","ignore_regex"],["boolean","master_only"],["password","consumer_token"]]},{"name":"twilio","events":["push"],"supported_events":["push"],"schema":[["string","account_sid"],["string","from_phone"],["string","to_phone"],["boolean","master_only"],["password","auth_token"]]},{"name":"twitter","events":["push"],"supported_events":["push"],"schema":[["string","token"],["string","secret"],["boolean","digest"],["boolean","short_format"]]},{"name":"unfuddle","events":["push"],"supported_events":["push"],"schema":[["string","subdomain"],["string","repo_id"],["string","username"],["password","password"],["boolean","httponly"]]},{"name":"web","events":["push"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","url"],["string","secret"],["string","content_type"],["string","ssl_version"],["boolean","insecure_ssl"]]},{"name":"weblate","events":["push"],"supported_events":["push"],"schema":[["string","url"]]},{"name":"webtranslateit","events":["push"],"supported_events":["push"],"schema":[["string","api_key"]]},{"name":"yammer","events":["push","commit_comment","pull_request","pull_request_review_comment","public"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","token"]]},{"name":"youtrack","events":["push"],"supported_events":["push"],"schema":[["string","base_url"],["string","committers"],["string","username"],["string","branch"],["password","password"]]},{"name":"zendesk","events":["commit_comment","issues","issue_comment","pull_request","push"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","subdomain"],["string","username"],["password","password"]]},{"name":"zohoprojects","events":["push"],"supported_events":["push"],"schema":[["string","project_id"],["string","token"]]}] + diff --git a/lib/github/tests/ReplayData/Branch.setUp.txt b/lib/github/tests/ReplayData/Branch.setUp.txt new file mode 100644 index 0000000000..08e6293d96 --- /dev/null +++ b/lib/github/tests/ReplayData/Branch.setUp.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4967'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"27524c635501121933f4f78c95b1945a"'), ('date', 'Fri, 18 May 2012 20:12:19 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"owned_private_repos":5,"collaborators":0,"type":"User","hireable":false,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","public_gists":1,"company":"Criteo","bio":"","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","private_gists":5,"plan":{"collaborators":1,"private_repos":5,"name":"micro","space":614400},"public_repos":11,"followers":13,"login":"jacquev6","blog":"http://vincent-jacques.net","email":"vincent@vincent-jacques.net","disk_usage":16852,"html_url":"https://github.com/jacquev6","name":"Vincent Jacques","total_private_repos":5,"created_at":"2010-07-09T06:10:06Z","location":"Paris, France","id":327146,"following":24} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4966'), ('content-length', '1097'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"c5eec74d4b76b80283636a8efe1a132c"'), ('date', 'Fri, 18 May 2012 20:12:20 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"svn_url":"https://github.com/jacquev6/PyGithub","has_wiki":false,"has_issues":true,"updated_at":"2012-05-18T05:29:54Z","forks":2,"homepage":"http://vincent-jacques.net/PyGithub","git_url":"git://github.com/jacquev6/PyGithub.git","url":"https://api.github.com/repos/jacquev6/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","open_issues":17,"fork":false,"ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-18T05:18:16Z","size":304,"private":false,"has_downloads":true,"watchers":13,"html_url":"https://github.com/jacquev6/PyGithub","owner":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"PyGithub","permissions":{"pull":true,"admin":true,"push":true},"mirror_url":null,"language":"Python","description":"Python library implementing the full Github API v3","created_at":"2012-02-25T12:53:47Z","id":3544490} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/branches +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4994'), ('content-length', '769'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"2dada6dafd332016bcdf06e42487e520"'), ('date', 'Thu, 10 May 2012 13:56:55 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"name":"topic/RewriteWithGeneratedCode","commit":{"sha":"1292bf0e22c796e91cc3d6e24b544aece8c21f2a","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a"}},{"name":"master","commit":{"sha":"4303c5b90e2216d927155e9609436ccb8984c495","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4303c5b90e2216d927155e9609436ccb8984c495"}},{"name":"topic/DependencyGraph","commit":{"sha":"05157f11f29a3ac057e35d2487880c5d08bd69af","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/05157f11f29a3ac057e35d2487880c5d08bd69af"}},{"name":"develop","commit":{"sha":"4303c5b90e2216d927155e9609436ccb8984c495","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4303c5b90e2216d927155e9609436ccb8984c495"}}] + diff --git a/lib/github/tests/ReplayData/Branch.testCommitCommentsOnLine.txt b/lib/github/tests/ReplayData/Branch.testCommitCommentsOnLine.txt new file mode 100644 index 0000000000..b06db4f9d4 --- /dev/null +++ b/lib/github/tests/ReplayData/Branch.testCommitCommentsOnLine.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/commits/6945921c529be14c3a8f566dd1e483674516d46d +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4965'), ('content-length', '30760'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"9ee846f5bd9913285569443607fd134e"'), ('date', 'Fri, 18 May 2012 20:12:21 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"author":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6945921c529be14c3a8f566dd1e483674516d46d","stats":{"deletions":53,"additions":48,"total":101},"committer":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"files":[{"raw_url":"https://github.com/jacquev6/PyGithub/raw/6945921c529be14c3a8f566dd1e483674516d46d/codegen/templates/GithubObject.MethodBody.UseResult.py","status":"modified","blob_url":"https://github.com/jacquev6/PyGithub/blob/6945921c529be14c3a8f566dd1e483674516d46d/codegen/templates/GithubObject.MethodBody.UseResult.py","changes":2,"deletions":1,"filename":"codegen/templates/GithubObject.MethodBody.UseResult.py","patch":"@@ -23,7 +23,7 @@\n {% else %}\r\n \r\n {% if method.type.cardinality == \"scalar\" %}\r\n- return {% if method.type.name != class.name %}{{ method.type.name }}.{% endif %}{{ method.type.name }}( self.__requester, data, completion = LazyCompletion )\r\n+ return {% if method.type.name != class.name %}{{ method.type.name }}.{% endif %}{{ method.type.name }}( self.__requester, data, completion = NoCompletion )\r\n {% endif %}\r\n \r\n {% if method.type.cardinality == \"list\" %}\r","additions":1,"sha":"6945921c529be14c3a8f566dd1e483674516d46d"},{"raw_url":"https://github.com/jacquev6/PyGithub/raw/6945921c529be14c3a8f566dd1e483674516d46d/src/github/AuthenticatedUser.py","status":"modified","blob_url":"https://github.com/jacquev6/PyGithub/blob/6945921c529be14c3a8f566dd1e483674516d46d/src/github/AuthenticatedUser.py","changes":16,"deletions":8,"filename":"src/github/AuthenticatedUser.py","patch":"@@ -187,7 +187,7 @@ def create_authorization( self, scopes = DefaultValueForOptionalParameters, note\n None,\n post_parameters\n )\n- return Authorization.Authorization( self.__requester, data, completion = LazyCompletion )\n+ return Authorization.Authorization( self.__requester, data, completion = NoCompletion )\n \n def create_fork( self, repo ):\n status, headers, data = self.__requester.request(\n@@ -196,7 +196,7 @@ def create_fork( self, repo ):\n None,\n None\n )\n- return Repository.Repository( self.__requester, data, completion = LazyCompletion )\n+ return Repository.Repository( self.__requester, data, completion = NoCompletion )\n \n def create_gist( self, public, files, description = DefaultValueForOptionalParameters ):\n post_parameters = {\n@@ -211,7 +211,7 @@ def create_gist( self, public, files, description = DefaultValueForOptionalParam\n None,\n post_parameters\n )\n- return Gist.Gist( self.__requester, data, completion = LazyCompletion )\n+ return Gist.Gist( self.__requester, data, completion = NoCompletion )\n \n def create_key( self, title, key ):\n post_parameters = {\n@@ -224,7 +224,7 @@ def create_key( self, title, key ):\n None,\n post_parameters\n )\n- return UserKey.UserKey( self.__requester, data, completion = LazyCompletion )\n+ return UserKey.UserKey( self.__requester, data, completion = NoCompletion )\n \n def create_repo( self, name, description = DefaultValueForOptionalParameters, homepage = DefaultValueForOptionalParameters, private = DefaultValueForOptionalParameters, has_issues = DefaultValueForOptionalParameters, has_wiki = DefaultValueForOptionalParameters, has_downloads = DefaultValueForOptionalParameters, team_id = DefaultValueForOptionalParameters ):\n post_parameters = {\n@@ -250,7 +250,7 @@ def create_repo( self, name, description = DefaultValueForOptionalParameters, ho\n None,\n post_parameters\n )\n- return Repository.Repository( self.__requester, data, completion = LazyCompletion )\n+ return Repository.Repository( self.__requester, data, completion = NoCompletion )\n \n def edit( self, name = DefaultValueForOptionalParameters, email = DefaultValueForOptionalParameters, blog = DefaultValueForOptionalParameters, company = DefaultValueForOptionalParameters, location = DefaultValueForOptionalParameters, hireable = DefaultValueForOptionalParameters, bio = DefaultValueForOptionalParameters ):\n post_parameters = {\n@@ -284,7 +284,7 @@ def get_authorization( self, id ):\n None,\n None\n )\n- return Authorization.Authorization( self.__requester, data, completion = LazyCompletion )\n+ return Authorization.Authorization( self.__requester, data, completion = NoCompletion )\n \n def get_authorizations( self ):\n status, headers, data = self.__requester.request(\n@@ -386,7 +386,7 @@ def get_key( self, id ):\n None,\n None\n )\n- return UserKey.UserKey( self.__requester, data, completion = LazyCompletion )\n+ return UserKey.UserKey( self.__requester, data, completion = NoCompletion )\n \n def get_keys( self ):\n status, headers, data = self.__requester.request(\n@@ -437,7 +437,7 @@ def get_repo( self, name ):\n None,\n None\n )\n- return Repository.Repository( self.__requester, data, completion = LazyCompletion )\n+ return Repository.Repository( self.__requester, data, completion = NoCompletion )\n \n def get_repos( self, type = DefaultValueForOptionalParameters ):\n status, headers, data = self.__requester.request(","additions":8,"sha":"6945921c529be14c3a8f566dd1e483674516d46d"},{"raw_url":"https://github.com/jacquev6/PyGithub/raw/6945921c529be14c3a8f566dd1e483674516d46d/src/github/Commit.py","status":"modified","blob_url":"https://github.com/jacquev6/PyGithub/blob/6945921c529be14c3a8f566dd1e483674516d46d/src/github/Commit.py","changes":2,"deletions":1,"filename":"src/github/Commit.py","patch":"@@ -77,7 +77,7 @@ def create_comment( self, body, commit_id = DefaultValueForOptionalParameters, l\n None,\n post_parameters\n )\n- return CommitComment.CommitComment( self.__requester, data, completion = LazyCompletion )\n+ return CommitComment.CommitComment( self.__requester, data, completion = NoCompletion )\n \n def get_comments( self ):\n status, headers, data = self.__requester.request(","additions":1,"sha":"6945921c529be14c3a8f566dd1e483674516d46d"},{"raw_url":"https://github.com/jacquev6/PyGithub/raw/6945921c529be14c3a8f566dd1e483674516d46d/src/github/Gist.py","status":"modified","blob_url":"https://github.com/jacquev6/PyGithub/blob/6945921c529be14c3a8f566dd1e483674516d46d/src/github/Gist.py","changes":6,"deletions":3,"filename":"src/github/Gist.py","patch":"@@ -96,7 +96,7 @@ def create_comment( self, body ):\n None,\n post_parameters\n )\n- return GistComment.GistComment( self.__requester, data, completion = LazyCompletion )\n+ return GistComment.GistComment( self.__requester, data, completion = NoCompletion )\n \n def create_fork( self ):\n status, headers, data = self.__requester.request(\n@@ -105,7 +105,7 @@ def create_fork( self ):\n None,\n None\n )\n- return Gist( self.__requester, data, completion = LazyCompletion )\n+ return Gist( self.__requester, data, completion = NoCompletion )\n \n def delete( self ):\n status, headers, data = self.__requester.request(\n@@ -137,7 +137,7 @@ def get_comment( self, id ):\n None,\n None\n )\n- return GistComment.GistComment( self.__requester, data, completion = LazyCompletion )\n+ return GistComment.GistComment( self.__requester, data, completion = NoCompletion )\n \n def get_comments( self ):\n status, headers, data = self.__requester.request(","additions":3,"sha":"6945921c529be14c3a8f566dd1e483674516d46d"},{"raw_url":"https://github.com/jacquev6/PyGithub/raw/6945921c529be14c3a8f566dd1e483674516d46d/src/github/Issue.py","status":"modified","blob_url":"https://github.com/jacquev6/PyGithub/blob/6945921c529be14c3a8f566dd1e483674516d46d/src/github/Issue.py","changes":4,"deletions":2,"filename":"src/github/Issue.py","patch":"@@ -122,7 +122,7 @@ def create_comment( self, body ):\n None,\n post_parameters\n )\n- return IssueComment.IssueComment( self.__requester, data, completion = LazyCompletion )\n+ return IssueComment.IssueComment( self.__requester, data, completion = NoCompletion )\n \n def delete_labels( self ):\n pass\n@@ -157,7 +157,7 @@ def get_comment( self, id ):\n None,\n None\n )\n- return IssueComment.IssueComment( self.__requester, data, completion = LazyCompletion )\n+ return IssueComment.IssueComment( self.__requester, data, completion = NoCompletion )\n \n def get_comments( self ):\n status, headers, data = self.__requester.request(","additions":2,"sha":"6945921c529be14c3a8f566dd1e483674516d46d"},{"raw_url":"https://github.com/jacquev6/PyGithub/raw/6945921c529be14c3a8f566dd1e483674516d46d/src/github/NamedUser.py","status":"modified","blob_url":"https://github.com/jacquev6/PyGithub/blob/6945921c529be14c3a8f566dd1e483674516d46d/src/github/NamedUser.py","changes":4,"deletions":2,"filename":"src/github/NamedUser.py","patch":"@@ -161,7 +161,7 @@ def create_gist( self, public, files, description = DefaultValueForOptionalParam\n None,\n post_parameters\n )\n- return Gist.Gist( self.__requester, data, completion = LazyCompletion )\n+ return Gist.Gist( self.__requester, data, completion = NoCompletion )\n \n def get_events( self ):\n status, headers, data = self.__requester.request(\n@@ -282,7 +282,7 @@ def get_repo( self, name ):\n None,\n None\n )\n- return Repository.Repository( self.__requester, data, completion = LazyCompletion )\n+ return Repository.Repository( self.__requester, data, completion = NoCompletion )\n \n def get_repos( self, type = DefaultValueForOptionalParameters ):\n status, headers, data = self.__requester.request(","additions":2,"sha":"6945921c529be14c3a8f566dd1e483674516d46d"},{"raw_url":"https://github.com/jacquev6/PyGithub/raw/6945921c529be14c3a8f566dd1e483674516d46d/src/github/Organization.py","status":"modified","blob_url":"https://github.com/jacquev6/PyGithub/blob/6945921c529be14c3a8f566dd1e483674516d46d/src/github/Organization.py","changes":8,"deletions":4,"filename":"src/github/Organization.py","patch":"@@ -156,7 +156,7 @@ def create_fork( self, repo ):\n url_parameters,\n None\n )\n- return Repository.Repository( self.__requester, data, completion = LazyCompletion )\n+ return Repository.Repository( self.__requester, data, completion = NoCompletion )\n \n def create_repo( self, name, description = DefaultValueForOptionalParameters, homepage = DefaultValueForOptionalParameters, private = DefaultValueForOptionalParameters, has_issues = DefaultValueForOptionalParameters, has_wiki = DefaultValueForOptionalParameters, has_downloads = DefaultValueForOptionalParameters, team_id = DefaultValueForOptionalParameters ):\n post_parameters = {\n@@ -182,7 +182,7 @@ def create_repo( self, name, description = DefaultValueForOptionalParameters, ho\n None,\n post_parameters\n )\n- return Repository.Repository( self.__requester, data, completion = LazyCompletion )\n+ return Repository.Repository( self.__requester, data, completion = NoCompletion )\n \n def create_team( self, name, repo_names = DefaultValueForOptionalParameters, permission = DefaultValueForOptionalParameters ):\n post_parameters = {\n@@ -198,7 +198,7 @@ def create_team( self, name, repo_names = DefaultValueForOptionalParameters, per\n None,\n post_parameters\n )\n- return Team.Team( self.__requester, data, completion = LazyCompletion )\n+ return Team.Team( self.__requester, data, completion = NoCompletion )\n \n def edit( self, billing_email = DefaultValueForOptionalParameters, blog = DefaultValueForOptionalParameters, company = DefaultValueForOptionalParameters, email = DefaultValueForOptionalParameters, location = DefaultValueForOptionalParameters, name = DefaultValueForOptionalParameters ):\n post_parameters = {\n@@ -272,7 +272,7 @@ def get_repo( self, name ):\n None,\n None\n )\n- return Repository.Repository( self.__requester, data, completion = LazyCompletion )\n+ return Repository.Repository( self.__requester, data, completion = NoCompletion )\n \n def get_repos( self, type = DefaultValueForOptionalParameters ):\n status, headers, data = self.__requester.request(","additions":4,"sha":"6945921c529be14c3a8f566dd1e483674516d46d"},{"raw_url":"https://github.com/jacquev6/PyGithub/raw/6945921c529be14c3a8f566dd1e483674516d46d/src/github/PullRequest.py","status":"modified","blob_url":"https://github.com/jacquev6/PyGithub/blob/6945921c529be14c3a8f566dd1e483674516d46d/src/github/PullRequest.py","changes":2,"deletions":1,"filename":"src/github/PullRequest.py","patch":"@@ -171,7 +171,7 @@ def get_comment( self, id ):\n None,\n None\n )\n- return PullRequestComment.PullRequestComment( self.__requester, data, completion = LazyCompletion )\n+ return PullRequestComment.PullRequestComment( self.__requester, data, completion = NoCompletion )\n \n def get_comments( self ):\n status, headers, data = self.__requester.request(","additions":1,"sha":"6945921c529be14c3a8f566dd1e483674516d46d"},{"raw_url":"https://github.com/jacquev6/PyGithub/raw/6945921c529be14c3a8f566dd1e483674516d46d/src/github/Repository.py","status":"modified","blob_url":"https://github.com/jacquev6/PyGithub/blob/6945921c529be14c3a8f566dd1e483674516d46d/src/github/Repository.py","changes":52,"deletions":26,"filename":"src/github/Repository.py","patch":"@@ -218,7 +218,7 @@ def create_download( self, name, size, description = DefaultValueForOptionalPara\n None,\n post_parameters\n )\n- return Download.Download( self.__requester, data, completion = LazyCompletion )\n+ return Download.Download( self.__requester, data, completion = NoCompletion )\n \n def create_git_blob( self, content, encoding ):\n post_parameters = {\n@@ -231,7 +231,7 @@ def create_git_blob( self, content, encoding ):\n None,\n post_parameters\n )\n- return GitBlob.GitBlob( self.__requester, data, completion = LazyCompletion )\n+ return GitBlob.GitBlob( self.__requester, data, completion = NoCompletion )\n \n def create_git_commit( self, message, tree, parents, author = DefaultValueForOptionalParameters, committer = DefaultValueForOptionalParameters ):\n post_parameters = {\n@@ -249,7 +249,7 @@ def create_git_commit( self, message, tree, parents, author = DefaultValueForOpt\n None,\n post_parameters\n )\n- return GitCommit.GitCommit( self.__requester, data, completion = LazyCompletion )\n+ return GitCommit.GitCommit( self.__requester, data, completion = NoCompletion )\n \n def create_git_ref( self, ref, sha ):\n post_parameters = {\n@@ -262,7 +262,7 @@ def create_git_ref( self, ref, sha ):\n None,\n post_parameters\n )\n- return GitRef.GitRef( self.__requester, data, completion = LazyCompletion )\n+ return GitRef.GitRef( self.__requester, data, completion = NoCompletion )\n \n def create_git_tag( self, tag, message, object, type, tagger = DefaultValueForOptionalParameters ):\n post_parameters = {\n@@ -279,7 +279,7 @@ def create_git_tag( self, tag, message, object, type, tagger = DefaultValueForOp\n None,\n post_parameters\n )\n- return GitTag.GitTag( self.__requester, data, completion = LazyCompletion )\n+ return GitTag.GitTag( self.__requester, data, completion = NoCompletion )\n \n def create_git_tree( self, tree, base_tree = DefaultValueForOptionalParameters ):\n post_parameters = {\n@@ -293,7 +293,7 @@ def create_git_tree( self, tree, base_tree = DefaultValueForOptionalParameters )\n None,\n post_parameters\n )\n- return GitTree.GitTree( self.__requester, data, completion = LazyCompletion )\n+ return GitTree.GitTree( self.__requester, data, completion = NoCompletion )\n \n def create_hook( self, name, config, events = DefaultValueForOptionalParameters, active = DefaultValueForOptionalParameters ):\n post_parameters = {\n@@ -310,7 +310,7 @@ def create_hook( self, name, config, events = DefaultValueForOptionalParameters,\n None,\n post_parameters\n )\n- return Hook.Hook( self.__requester, data, completion = LazyCompletion )\n+ return Hook.Hook( self.__requester, data, completion = NoCompletion )\n \n def create_issue( self, title, body = DefaultValueForOptionalParameters, assignee = DefaultValueForOptionalParameters, milestone = DefaultValueForOptionalParameters, labels = DefaultValueForOptionalParameters ):\n post_parameters = {\n@@ -330,7 +330,7 @@ def create_issue( self, title, body = DefaultValueForOptionalParameters, assigne\n None,\n post_parameters\n )\n- return Issue.Issue( self.__requester, data, completion = LazyCompletion )\n+ return Issue.Issue( self.__requester, data, completion = NoCompletion )\n \n def create_key( self, title, key ):\n post_parameters = {\n@@ -343,7 +343,7 @@ def create_key( self, title, key ):\n None,\n post_parameters\n )\n- return RepositoryKey.RepositoryKey( self.__requester, data, completion = LazyCompletion )\n+ return RepositoryKey.RepositoryKey( self.__requester, data, completion = NoCompletion )\n \n def create_label( self, name, color ):\n post_parameters = {\n@@ -356,7 +356,7 @@ def create_label( self, name, color ):\n None,\n post_parameters\n )\n- return Label.Label( self.__requester, data, completion = LazyCompletion )\n+ return Label.Label( self.__requester, data, completion = NoCompletion )\n \n def create_milestone( self, title, state = DefaultValueForOptionalParameters, description = DefaultValueForOptionalParameters, due_on = DefaultValueForOptionalParameters ):\n post_parameters = {\n@@ -374,7 +374,7 @@ def create_milestone( self, title, state = DefaultValueForOptionalParameters, de\n None,\n post_parameters\n )\n- return Milestone.Milestone( self.__requester, data, completion = LazyCompletion )\n+ return Milestone.Milestone( self.__requester, data, completion = NoCompletion )\n \n def edit( self, name, description = DefaultValueForOptionalParameters, homepage = DefaultValueForOptionalParameters, public = DefaultValueForOptionalParameters, has_issues = DefaultValueForOptionalParameters, has_wiki = DefaultValueForOptionalParameters, has_downloads = DefaultValueForOptionalParameters ):\n post_parameters = {\n@@ -435,7 +435,7 @@ def get_comment( self, id ):\n None,\n None\n )\n- return CommitComment.CommitComment( self.__requester, data, completion = LazyCompletion )\n+ return CommitComment.CommitComment( self.__requester, data, completion = NoCompletion )\n \n def get_comments( self ):\n status, headers, data = self.__requester.request(\n@@ -458,7 +458,7 @@ def get_commit( self, sha ):\n None,\n None\n )\n- return Commit.Commit( self.__requester, data, completion = LazyCompletion )\n+ return Commit.Commit( self.__requester, data, completion = NoCompletion )\n \n def get_commits( self, sha = DefaultValueForOptionalParameters, path = DefaultValueForOptionalParameters ):\n status, headers, data = self.__requester.request(\n@@ -495,7 +495,7 @@ def get_download( self, id ):\n None,\n None\n )\n- return Download.Download( self.__requester, data, completion = LazyCompletion )\n+ return Download.Download( self.__requester, data, completion = NoCompletion )\n \n def get_downloads( self ):\n status, headers, data = self.__requester.request(\n@@ -546,7 +546,7 @@ def get_git_blob( self, sha ):\n None,\n None\n )\n- return GitBlob.GitBlob( self.__requester, data, completion = LazyCompletion )\n+ return GitBlob.GitBlob( self.__requester, data, completion = NoCompletion )\n \n def get_git_commit( self, sha ):\n status, headers, data = self.__requester.request(\n@@ -555,7 +555,7 @@ def get_git_commit( self, sha ):\n None,\n None\n )\n- return GitCommit.GitCommit( self.__requester, data, completion = LazyCompletion )\n+ return GitCommit.GitCommit( self.__requester, data, completion = NoCompletion )\n \n def get_git_ref( self, ref ):\n status, headers, data = self.__requester.request(\n@@ -564,7 +564,7 @@ def get_git_ref( self, ref ):\n None,\n None\n )\n- return GitRef.GitRef( self.__requester, data, completion = LazyCompletion )\n+ return GitRef.GitRef( self.__requester, data, completion = NoCompletion )\n \n def get_git_refs( self ):\n status, headers, data = self.__requester.request(\n@@ -587,7 +587,7 @@ def get_git_tag( self, sha ):\n None,\n None\n )\n- return GitTag.GitTag( self.__requester, data, completion = LazyCompletion )\n+ return GitTag.GitTag( self.__requester, data, completion = NoCompletion )\n \n def get_git_tree( self, sha, recursive = DefaultValueForOptionalParameters ):\n status, headers, data = self.__requester.request(\n@@ -596,7 +596,7 @@ def get_git_tree( self, sha, recursive = DefaultValueForOptionalParameters ):\n None,\n None\n )\n- return GitTree.GitTree( self.__requester, data, completion = LazyCompletion )\n+ return GitTree.GitTree( self.__requester, data, completion = NoCompletion )\n \n def get_hook( self, id ):\n status, headers, data = self.__requester.request(\n@@ -605,7 +605,7 @@ def get_hook( self, id ):\n None,\n None\n )\n- return Hook.Hook( self.__requester, data, completion = LazyCompletion )\n+ return Hook.Hook( self.__requester, data, completion = NoCompletion )\n \n def get_hooks( self ):\n status, headers, data = self.__requester.request(\n@@ -628,7 +628,7 @@ def get_issue( self, number ):\n None,\n None\n )\n- return Issue.Issue( self.__requester, data, completion = LazyCompletion )\n+ return Issue.Issue( self.__requester, data, completion = NoCompletion )\n \n def get_issues( self, milestone = DefaultValueForOptionalParameters, state = DefaultValueForOptionalParameters, assignee = DefaultValueForOptionalParameters, mentioned = DefaultValueForOptionalParameters, labels = DefaultValueForOptionalParameters, sort = DefaultValueForOptionalParameters, direction = DefaultValueForOptionalParameters, since = DefaultValueForOptionalParameters ):\n status, headers, data = self.__requester.request(\n@@ -651,7 +651,7 @@ def get_issues_event( self, id ):\n None,\n None\n )\n- return IssueEvent.IssueEvent( self.__requester, data, completion = LazyCompletion )\n+ return IssueEvent.IssueEvent( self.__requester, data, completion = NoCompletion )\n \n def get_issues_events( self ):\n status, headers, data = self.__requester.request(\n@@ -674,7 +674,7 @@ def get_key( self, id ):\n None,\n None\n )\n- return RepositoryKey.RepositoryKey( self.__requester, data, completion = LazyCompletion )\n+ return RepositoryKey.RepositoryKey( self.__requester, data, completion = NoCompletion )\n \n def get_keys( self ):\n status, headers, data = self.__requester.request(\n@@ -697,7 +697,7 @@ def get_label( self, name ):\n None,\n None\n )\n- return Label.Label( self.__requester, data, completion = LazyCompletion )\n+ return Label.Label( self.__requester, data, completion = NoCompletion )\n \n def get_labels( self ):\n status, headers, data = self.__requester.request(\n@@ -729,7 +729,7 @@ def get_milestone( self, number ):\n None,\n None\n )\n- return Milestone.Milestone( self.__requester, data, completion = LazyCompletion )\n+ return Milestone.Milestone( self.__requester, data, completion = NoCompletion )\n \n def get_milestones( self, state = DefaultValueForOptionalParameters, sort = DefaultValueForOptionalParameters, direction = DefaultValueForOptionalParameters ):\n status, headers, data = self.__requester.request(\n@@ -766,7 +766,7 @@ def get_pull( self, number ):\n None,\n None\n )\n- return PullRequest.PullRequest( self.__requester, data, completion = LazyCompletion )\n+ return PullRequest.PullRequest( self.__requester, data, completion = NoCompletion )\n \n def get_pulls( self, state = DefaultValueForOptionalParameters ):\n status, headers, data = self.__requester.request(","additions":26,"sha":"6945921c529be14c3a8f566dd1e483674516d46d"},{"raw_url":"https://github.com/jacquev6/PyGithub/raw/6945921c529be14c3a8f566dd1e483674516d46d/test/ReplayData/Repository.testAttributes.txt","status":"modified","blob_url":"https://github.com/jacquev6/PyGithub/blob/6945921c529be14c3a8f566dd1e483674516d46d/test/ReplayData/Repository.testAttributes.txt","changes":5,"deletions":5,"filename":"test/ReplayData/Repository.testAttributes.txt","patch":"@@ -3,8 +3,3 @@ GET /repos/jacquev6/PyGithub {} null\n [('status', '200 OK'), ('x-ratelimit-remaining', '4995'), ('content-length', '1097'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"8b91cd1456a5d4ef451946f882d9161e\"'), ('date', 'Wed, 09 May 2012 10:26:15 GMT'), ('content-type', 'application/json; charset=utf-8')]\r\n {\"mirror_url\":null,\"homepage\":\"http://vincent-jacques.net/PyGithub\",\"clone_url\":\"https://github.com/jacquev6/PyGithub.git\",\"html_url\":\"https://github.com/jacquev6/PyGithub\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub\",\"has_downloads\":true,\"watchers\":13,\"permissions\":{\"admin\":true,\"pull\":true,\"push\":true},\"has_wiki\":false,\"has_issues\":true,\"fork\":false,\"forks\":2,\"language\":\"Python\",\"size\":212,\"description\":\"Python library implementing the full Github API v3\",\"git_url\":\"git://github.com/jacquev6/PyGithub.git\",\"private\":false,\"created_at\":\"2012-02-25T12:53:47Z\",\"open_issues\":15,\"svn_url\":\"https://github.com/jacquev6/PyGithub\",\"owner\":{\"url\":\"https://api.github.com/users/jacquev6\",\"login\":\"jacquev6\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\",\"id\":327146},\"name\":\"PyGithub\",\"pushed_at\":\"2012-05-08T19:27:43Z\",\"id\":3544490,\"ssh_url\":\"git@github.com:jacquev6/PyGithub.git\",\"updated_at\":\"2012-05-08T19:27:43Z\"}\r\n \r\n-GET /repos/jacquev6/PyGithub {'Authorization': 'Basic login_and_password_removed'} null\r\n-200\r\n-[('status', '200 OK'), ('x-ratelimit-remaining', '4995'), ('content-length', '1097'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"8b91cd1456a5d4ef451946f882d9161e\"'), ('date', 'Wed, 09 May 2012 10:26:15 GMT'), ('content-type', 'application/json; charset=utf-8')]\r\n-{\"mirror_url\":null,\"homepage\":\"http://vincent-jacques.net/PyGithub\",\"clone_url\":\"https://github.com/jacquev6/PyGithub.git\",\"html_url\":\"https://github.com/jacquev6/PyGithub\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub\",\"has_downloads\":true,\"watchers\":13,\"permissions\":{\"admin\":true,\"pull\":true,\"push\":true},\"has_wiki\":false,\"has_issues\":true,\"fork\":false,\"forks\":2,\"language\":\"Python\",\"size\":212,\"description\":\"Python library implementing the full Github API v3\",\"git_url\":\"git://github.com/jacquev6/PyGithub.git\",\"private\":false,\"created_at\":\"2012-02-25T12:53:47Z\",\"open_issues\":15,\"svn_url\":\"https://github.com/jacquev6/PyGithub\",\"owner\":{\"url\":\"https://api.github.com/users/jacquev6\",\"login\":\"jacquev6\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\",\"id\":327146},\"name\":\"PyGithub\",\"pushed_at\":\"2012-05-08T19:27:43Z\",\"id\":3544490,\"ssh_url\":\"git@github.com:jacquev6/PyGithub.git\",\"updated_at\":\"2012-05-08T19:27:43Z\"}\r\n-\r","additions":0,"sha":"6945921c529be14c3a8f566dd1e483674516d46d"}],"sha":"6945921c529be14c3a8f566dd1e483674516d46d","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a72d8b135841aa00158054d229c8e18333075cd4","sha":"a72d8b135841aa00158054d229c8e18333075cd4"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-12T06:29:15-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/6945921c529be14c3a8f566dd1e483674516d46d","message":"Use NoCompletion when creating an object from the result of a request","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-12T06:29:15-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/793ba5982623f4723ad63706da9a483ac82b3411","sha":"793ba5982623f4723ad63706da9a483ac82b3411"}}} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/commits/6945921c529be14c3a8f566dd1e483674516d46d/comments +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4964'), ('content-length', '4322'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"eb6946c4ceb5d978e884888f62d28344"'), ('date', 'Fri, 18 May 2012 20:12:21 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-18T08:46:09Z","position":null,"body":"probably a noob question: does this completion refer to autocompletion in IDE's/editors? \nI have observed that this is pretty erratic sometimes. I'm using PyDev+Eclipse.\nFor example, in the tutorial from the readme, `g.get_u` gets autocompleted correctly, but `g.get_user().get_r` (or any method or attribute applicable to NamedUsers/AuthenticatedUser, really) does not show autocompletion to `g.get_user().get_repo()`. Is that by design? It makes exploring the library/API a bit cumbersome. ","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1347033","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1347033","created_at":"2012-05-18T08:46:09Z","path":null,"line":null,"user":{"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":1347033},{"updated_at":"2012-05-18T09:03:40Z","position":null,"body":"No, it has nothing to do with auto-completion in IDEs :D\n\nGithub API v3 sends only the main part of objects in reply to some requests. So, if the user wants an attribute that has not been received yet, I have to do another request to complete the object.\n\nYet, in version 1.0 (see the milesone), my library will be much more readable for IDEs and their auto-completion mechanisms, because I am giving up the meta-description that I used until 0.6, and I'm now generating much more traditional code, that you will be able to explore as if it was written manually.\n\nIf you want to take the time to open an issue about auto-completion in IDEs, I'll deal with it in milestone 1.0.\n\nThanks !","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1347083","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1347083","created_at":"2012-05-18T08:59:28Z","path":null,"line":null,"user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":1347083},{"updated_at":"2012-05-18T10:55:55Z","position":null,"body":"Ah, thanks for the clarification. :blush:\n\nI made issue #27 for the autocompletion. I already suspected something like this meta-description magic, since I tried to read some of the code and it was pretty arcane. I attributed that to my pythonic noobness, though. Thank you. ","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1347397","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1347397","created_at":"2012-05-18T10:54:23Z","path":null,"line":null,"user":{"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":1347397},{"updated_at":"2012-05-18T20:11:17Z","position":3,"body":"This comment is here only to test PyGithub...","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1349654","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1349654","created_at":"2012-05-18T20:11:17Z","path":"codegen/templates/GithubObject.MethodBody.UseResult.py","line":25,"user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":1349654}] + diff --git a/lib/github/tests/ReplayData/Branch.testProtectedAttributes.txt b/lib/github/tests/ReplayData/Branch.testProtectedAttributes.txt new file mode 100644 index 0000000000..89f1c6b33d --- /dev/null +++ b/lib/github/tests/ReplayData/Branch.testProtectedAttributes.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '1330'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', 'e724c57ebb9961c772a91e2dd7421c8d'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"1b171bef9da5a5bcca9799131499edae"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4925'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', 'AE1E5031:14B57:766BC21:568E7104'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Wed, 06 Jan 2016 19:09:00 GMT'), ('date', 'Thu, 07 Jan 2016 14:07:00 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1452177625')] +{"login":"khornberg","id":3442051,"avatar_url":"https://avatars.githubusercontent.com/u/3442051?v=3","gravatar_id":"","url":"https://api.github.com/users/khornberg","html_url":"https://github.com/khornberg","followers_url":"https://api.github.com/users/khornberg/followers","following_url":"https://api.github.com/users/khornberg/following{/other_user}","gists_url":"https://api.github.com/users/khornberg/gists{/gist_id}","starred_url":"https://api.github.com/users/khornberg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/khornberg/subscriptions","organizations_url":"https://api.github.com/users/khornberg/orgs","repos_url":"https://api.github.com/users/khornberg/repos","events_url":"https://api.github.com/users/khornberg/events{/privacy}","received_events_url":"https://api.github.com/users/khornberg/received_events","type":"User","site_admin":false,"name":"Kyle Hornberg","company":null,"blog":"https://khornberg.github.io","location":null,"email":null,"hireable":null,"bio":null,"public_repos":40,"public_gists":9,"followers":7,"following":2,"created_at":"2013-01-31T20:22:05Z","updated_at":"2016-01-06T19:09:00Z","private_gists":1,"total_private_repos":0,"owned_private_repos":0,"disk_usage":16433,"collaborators":0,"plan":{"name":"free","space":976562499,"collaborators":0,"private_repos":0}} + +https +GET +api.github.com +None +/repos/khornberg/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '13870'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', 'a30e6f9aa7cf5731b87dfb3b9992202d'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"c874b56da60decc8687ee4ed43dcd3aa"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4924'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', 'AE1E5031:14B61:23FC1AEB:568E7104'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Thu, 31 Dec 2015 15:01:40 GMT'), ('date', 'Thu, 07 Jan 2016 14:07:01 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1452177625')] +{"id":48852849,"name":"PyGithub","full_name":"khornberg/PyGithub","owner":{"login":"khornberg","id":3442051,"avatar_url":"https://avatars.githubusercontent.com/u/3442051?v=3","gravatar_id":"","url":"https://api.github.com/users/khornberg","html_url":"https://github.com/khornberg","followers_url":"https://api.github.com/users/khornberg/followers","following_url":"https://api.github.com/users/khornberg/following{/other_user}","gists_url":"https://api.github.com/users/khornberg/gists{/gist_id}","starred_url":"https://api.github.com/users/khornberg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/khornberg/subscriptions","organizations_url":"https://api.github.com/users/khornberg/orgs","repos_url":"https://api.github.com/users/khornberg/repos","events_url":"https://api.github.com/users/khornberg/events{/privacy}","received_events_url":"https://api.github.com/users/khornberg/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/khornberg/PyGithub","description":"Python library implementing the GitHub API v3","fork":true,"url":"https://api.github.com/repos/khornberg/PyGithub","forks_url":"https://api.github.com/repos/khornberg/PyGithub/forks","keys_url":"https://api.github.com/repos/khornberg/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/khornberg/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/khornberg/PyGithub/teams","hooks_url":"https://api.github.com/repos/khornberg/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/khornberg/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/khornberg/PyGithub/events","assignees_url":"https://api.github.com/repos/khornberg/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/khornberg/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/khornberg/PyGithub/tags","blobs_url":"https://api.github.com/repos/khornberg/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/khornberg/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/khornberg/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/khornberg/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/khornberg/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/khornberg/PyGithub/languages","stargazers_url":"https://api.github.com/repos/khornberg/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/khornberg/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/khornberg/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/khornberg/PyGithub/subscription","commits_url":"https://api.github.com/repos/khornberg/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/khornberg/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/khornberg/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/khornberg/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/khornberg/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/khornberg/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/khornberg/PyGithub/merges","archive_url":"https://api.github.com/repos/khornberg/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/khornberg/PyGithub/downloads","issues_url":"https://api.github.com/repos/khornberg/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/khornberg/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/khornberg/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/khornberg/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/khornberg/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/khornberg/PyGithub/releases{/id}","created_at":"2015-12-31T15:01:38Z","updated_at":"2015-12-31T15:01:40Z","pushed_at":"2015-12-31T15:07:58Z","git_url":"git://github.com/khornberg/PyGithub.git","ssh_url":"git@github.com:khornberg/PyGithub.git","clone_url":"https://github.com/khornberg/PyGithub.git","svn_url":"https://github.com/khornberg/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":12973,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master","permissions":{"admin":true,"push":true,"pull":true},"parent":{"id":3544490,"name":"PyGithub","full_name":"PyGithub/PyGithub","owner":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/PyGithub/PyGithub","description":"Python library implementing the GitHub API v3","fork":false,"url":"https://api.github.com/repos/PyGithub/PyGithub","forks_url":"https://api.github.com/repos/PyGithub/PyGithub/forks","keys_url":"https://api.github.com/repos/PyGithub/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PyGithub/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PyGithub/PyGithub/teams","hooks_url":"https://api.github.com/repos/PyGithub/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/PyGithub/PyGithub/events","assignees_url":"https://api.github.com/repos/PyGithub/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/PyGithub/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/PyGithub/PyGithub/tags","blobs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PyGithub/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/PyGithub/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PyGithub/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/PyGithub/PyGithub/languages","stargazers_url":"https://api.github.com/repos/PyGithub/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/PyGithub/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/PyGithub/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/PyGithub/PyGithub/subscription","commits_url":"https://api.github.com/repos/PyGithub/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/PyGithub/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/PyGithub/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/PyGithub/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/PyGithub/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PyGithub/PyGithub/merges","archive_url":"https://api.github.com/repos/PyGithub/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PyGithub/PyGithub/downloads","issues_url":"https://api.github.com/repos/PyGithub/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/PyGithub/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/PyGithub/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/PyGithub/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PyGithub/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/PyGithub/PyGithub/releases{/id}","created_at":"2012-02-25T12:53:47Z","updated_at":"2016-01-07T11:45:22Z","pushed_at":"2016-01-04T13:48:35Z","git_url":"git://github.com/PyGithub/PyGithub.git","ssh_url":"git@github.com:PyGithub/PyGithub.git","clone_url":"https://github.com/PyGithub/PyGithub.git","svn_url":"https://github.com/PyGithub/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":13065,"stargazers_count":740,"watchers_count":740,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":231,"mirror_url":null,"open_issues_count":43,"forks":231,"open_issues":43,"watchers":740,"default_branch":"master"},"source":{"id":3544490,"name":"PyGithub","full_name":"PyGithub/PyGithub","owner":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/PyGithub/PyGithub","description":"Python library implementing the GitHub API v3","fork":false,"url":"https://api.github.com/repos/PyGithub/PyGithub","forks_url":"https://api.github.com/repos/PyGithub/PyGithub/forks","keys_url":"https://api.github.com/repos/PyGithub/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PyGithub/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PyGithub/PyGithub/teams","hooks_url":"https://api.github.com/repos/PyGithub/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/PyGithub/PyGithub/events","assignees_url":"https://api.github.com/repos/PyGithub/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/PyGithub/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/PyGithub/PyGithub/tags","blobs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PyGithub/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/PyGithub/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PyGithub/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/PyGithub/PyGithub/languages","stargazers_url":"https://api.github.com/repos/PyGithub/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/PyGithub/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/PyGithub/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/PyGithub/PyGithub/subscription","commits_url":"https://api.github.com/repos/PyGithub/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/PyGithub/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/PyGithub/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/PyGithub/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/PyGithub/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PyGithub/PyGithub/merges","archive_url":"https://api.github.com/repos/PyGithub/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PyGithub/PyGithub/downloads","issues_url":"https://api.github.com/repos/PyGithub/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/PyGithub/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/PyGithub/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/PyGithub/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PyGithub/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/PyGithub/PyGithub/releases{/id}","created_at":"2012-02-25T12:53:47Z","updated_at":"2016-01-07T11:45:22Z","pushed_at":"2016-01-04T13:48:35Z","git_url":"git://github.com/PyGithub/PyGithub.git","ssh_url":"git@github.com:PyGithub/PyGithub.git","clone_url":"https://github.com/PyGithub/PyGithub.git","svn_url":"https://github.com/PyGithub/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":13065,"stargazers_count":740,"watchers_count":740,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":231,"mirror_url":null,"open_issues_count":43,"forks":231,"open_issues":43,"watchers":740,"default_branch":"master"},"network_count":231,"subscribers_count":1} + +https +GET +api.github.com +None +/repos/khornberg/PyGithub/branches/master +{'Authorization': 'Basic login_and_password_removed', 'Accept': 'application/vnd.github.loki-preview+json', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '3589'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', 'b0ef53392caa42315c6206737946d931'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"62bfcfb47e26986d4c1a6db0bcf43cb6"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4923'), ('x-github-media-type', 'github.loki-preview; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', 'AE1E5031:14B59:AE47571:568E7105'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Thu, 07 Jan 2016 14:07:01 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1452177625')] +{"name":"master","commit":{"sha":"a39c1e8b9ab601419277eefb4fbb586ded0af146","commit":{"author":{"name":"Jimmy Zelinskie","email":"jimmyzelinskie@gmail.com","date":"2015-12-16T06:29:19Z"},"committer":{"name":"Jimmy Zelinskie","email":"jimmyzelinskie@gmail.com","date":"2015-12-16T06:29:19Z"},"message":"Merge pull request #365 from PyGithub/nhomar-travis-button\n\nAdd travis button on README.","tree":{"sha":"33b533e02e45deccc832bc39813710764fb2a9d4","url":"https://api.github.com/repos/khornberg/PyGithub/git/trees/33b533e02e45deccc832bc39813710764fb2a9d4"},"url":"https://api.github.com/repos/khornberg/PyGithub/git/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146","comment_count":0},"url":"https://api.github.com/repos/khornberg/PyGithub/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146","html_url":"https://github.com/khornberg/PyGithub/commit/a39c1e8b9ab601419277eefb4fbb586ded0af146","comments_url":"https://api.github.com/repos/khornberg/PyGithub/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146/comments","author":{"login":"jzelinskie","id":343539,"avatar_url":"https://avatars.githubusercontent.com/u/343539?v=3","gravatar_id":"","url":"https://api.github.com/users/jzelinskie","html_url":"https://github.com/jzelinskie","followers_url":"https://api.github.com/users/jzelinskie/followers","following_url":"https://api.github.com/users/jzelinskie/following{/other_user}","gists_url":"https://api.github.com/users/jzelinskie/gists{/gist_id}","starred_url":"https://api.github.com/users/jzelinskie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jzelinskie/subscriptions","organizations_url":"https://api.github.com/users/jzelinskie/orgs","repos_url":"https://api.github.com/users/jzelinskie/repos","events_url":"https://api.github.com/users/jzelinskie/events{/privacy}","received_events_url":"https://api.github.com/users/jzelinskie/received_events","type":"User","site_admin":false},"committer":{"login":"jzelinskie","id":343539,"avatar_url":"https://avatars.githubusercontent.com/u/343539?v=3","gravatar_id":"","url":"https://api.github.com/users/jzelinskie","html_url":"https://github.com/jzelinskie","followers_url":"https://api.github.com/users/jzelinskie/followers","following_url":"https://api.github.com/users/jzelinskie/following{/other_user}","gists_url":"https://api.github.com/users/jzelinskie/gists{/gist_id}","starred_url":"https://api.github.com/users/jzelinskie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jzelinskie/subscriptions","organizations_url":"https://api.github.com/users/jzelinskie/orgs","repos_url":"https://api.github.com/users/jzelinskie/repos","events_url":"https://api.github.com/users/jzelinskie/events{/privacy}","received_events_url":"https://api.github.com/users/jzelinskie/received_events","type":"User","site_admin":false},"parents":[{"sha":"45c7f072e4732f89a9e756a27a4306f2f6dbd9c5","url":"https://api.github.com/repos/khornberg/PyGithub/commits/45c7f072e4732f89a9e756a27a4306f2f6dbd9c5","html_url":"https://github.com/khornberg/PyGithub/commit/45c7f072e4732f89a9e756a27a4306f2f6dbd9c5"},{"sha":"a83649b68f1bb978c254f4cf1efcae88dc2608d7","url":"https://api.github.com/repos/khornberg/PyGithub/commits/a83649b68f1bb978c254f4cf1efcae88dc2608d7","html_url":"https://github.com/khornberg/PyGithub/commit/a83649b68f1bb978c254f4cf1efcae88dc2608d7"}]},"_links":{"self":"https://api.github.com/repos/khornberg/PyGithub/branches/master","html":"https://github.com/khornberg/PyGithub/tree/master"},"protection":{"enabled":false,"required_status_checks":{"enforcement_level":"off","contexts":[]}}} + diff --git a/lib/github/tests/ReplayData/Commit.setUp.txt b/lib/github/tests/ReplayData/Commit.setUp.txt new file mode 100644 index 0000000000..eb063311ef --- /dev/null +++ b/lib/github/tests/ReplayData/Commit.setUp.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4976'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"eb9e14862baa71c04b8f0e73ab870756"'), ('date', 'Sun, 27 May 2012 06:50:51 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"public_gists":3,"type":"User","disk_usage":16976,"private_gists":5,"public_repos":11,"url":"https://api.github.com/users/jacquev6","total_private_repos":5,"plan":{"private_repos":5,"collaborators":1,"name":"micro","space":614400},"blog":"http://vincent-jacques.net","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","owned_private_repos":5,"collaborators":0,"company":"Criteo","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","email":"vincent@vincent-jacques.net","hireable":false,"followers":13,"name":"Vincent Jacques","created_at":"2010-07-09T06:10:06Z","location":"Paris, France","bio":"","id":327146,"following":24,"html_url":"https://github.com/jacquev6"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4975'), ('content-length', '1129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"2f4d8b003c5c4f390be2ac28fe623bdb"'), ('date', 'Sun, 27 May 2012 06:50:52 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"clone_url":"https://github.com/jacquev6/PyGithub.git","has_downloads":true,"watchers":15,"git_url":"git://github.com/jacquev6/PyGithub.git","updated_at":"2012-05-27T06:00:29Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","has_wiki":false,"has_issues":true,"fork":false,"forks":3,"mirror_url":null,"size":308,"private":false,"open_issues":16,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-27T06:00:28Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"html_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4974'), ('content-length', '3445'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"bcfd8d733465b9c28525edfc78ede564"'), ('date', 'Sun, 27 May 2012 06:50:52 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"parents":[{"sha":"b46ed0dfde5ad02d3b91eb54a41c5ed960710eae","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b46ed0dfde5ad02d3b91eb54a41c5ed960710eae"}],"commit":{"message":"Remove completion functions from GitAuthor","author":{"date":"2012-05-09T09:22:33-07:00","name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"committer":{"date":"2012-05-09T09:22:33-07:00","name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"tree":{"sha":"4c6bd50994f0f9823f898b1c6c964ad7d4fa11ab","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/4c6bd50994f0f9823f898b1c6c964ad7d4fa11ab"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a"},"author":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"committer":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"sha":"1292bf0e22c796e91cc3d6e24b544aece8c21f2a","stats":{"total":20,"deletions":20,"additions":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a","files":[{"patch":"@@ -14,22 +14,17 @@ def __init__( self, requester, attributes, lazy ):\n self.__completed = False\n self.__initAttributes()\n self.__useAttributes( attributes )\n- if not lazy:\n- self.__complete()\n \n @property\n def date( self ):\n- self.__completeIfNeeded( self.__date )\n return self.__date\n \n @property\n def email( self ):\n- self.__completeIfNeeded( self.__email )\n return self.__email\n \n @property\n def name( self ):\n- self.__completeIfNeeded( self.__name )\n return self.__name\n \n def __initAttributes( self ):\n@@ -37,21 +32,6 @@ def __initAttributes( self ):\n self.__email = None\n self.__name = None\n \n- def __completeIfNeeded( self, testedAttribute ):\n- if not self.__completed and testedAttribute is None:\n- self.__complete()\n-\n- # @toto Do not generate __complete if type has no url attribute\n- def __complete( self ):\n- status, headers, data = self.__requester.request(\n- \"GET\",\n- self.__url,\n- None,\n- None\n- )\n- self.__useAttributes( data )\n- self.__completed = True\n-\n def __useAttributes( self, attributes ):\n #@toto No need to check if attribute is in attributes when attribute is mandatory\n if \"date\" in attributes and attributes[ \"date\" ] is not None:","status":"modified","deletions":20,"blob_url":"https://github.com/jacquev6/PyGithub/blob/1292bf0e22c796e91cc3d6e24b544aece8c21f2a/github/GithubObjects/GitAuthor.py","changes":20,"additions":0,"sha":"1292bf0e22c796e91cc3d6e24b544aece8c21f2a","raw_url":"https://github.com/jacquev6/PyGithub/raw/1292bf0e22c796e91cc3d6e24b544aece8c21f2a/github/GithubObjects/GitAuthor.py","filename":"github/GithubObjects/GitAuthor.py"}]} + diff --git a/lib/github/tests/ReplayData/Commit.testCreateComment.txt b/lib/github/tests/ReplayData/Commit.testCreateComment.txt new file mode 100644 index 0000000000..13c8becdf3 --- /dev/null +++ b/lib/github/tests/ReplayData/Commit.testCreateComment.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a/comments +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"body": "Comment created by PyGithub"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4982'), ('content-length', '714'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"bd72e3550c9b90814f0be2b54ab2cc8e"'), ('date', 'Tue, 22 May 2012 18:40:18 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/comments/1361949')] +{"updated_at":"2012-05-22T18:40:18Z","position":null,"body":"Comment created by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1361949","commit_id":"1292bf0e22c796e91cc3d6e24b544aece8c21f2a","created_at":"2012-05-22T18:40:18Z","path":null,"line":null,"user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"id":1361949,"html_url":"https://github.com/jacquev6/PyGithub/commit/1292bf0e22c796e91cc3d6e24b544aece8c21f2a#commitcomment-1361949"} + diff --git a/lib/github/tests/ReplayData/Commit.testCreateCommentOnFileLine.txt b/lib/github/tests/ReplayData/Commit.testCreateCommentOnFileLine.txt new file mode 100644 index 0000000000..6dd68a1612 --- /dev/null +++ b/lib/github/tests/ReplayData/Commit.testCreateCommentOnFileLine.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a/comments +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"body": "Comment created by PyGithub", "path": "codegen/templates/GithubObject.MethodBody.UseResult.py", "line": 26} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4970'), ('content-length', '764'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d2cb361ce6c53a0fc986e74f8547088f"'), ('date', 'Tue, 22 May 2012 18:49:34 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/comments/1362000')] +{"updated_at":"2012-05-22T18:49:34Z","position":null,"body":"Comment created by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1362000","commit_id":"1292bf0e22c796e91cc3d6e24b544aece8c21f2a","created_at":"2012-05-22T18:49:34Z","path":"codegen/templates/GithubObject.MethodBody.UseResult.py","line":26,"user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"id":1362000,"html_url":"https://github.com/jacquev6/PyGithub/commit/1292bf0e22c796e91cc3d6e24b544aece8c21f2a#commitcomment-1362000"} + diff --git a/lib/github/tests/ReplayData/Commit.testCreateCommentOnFilePosition.txt b/lib/github/tests/ReplayData/Commit.testCreateCommentOnFilePosition.txt new file mode 100644 index 0000000000..8d2125f2a2 --- /dev/null +++ b/lib/github/tests/ReplayData/Commit.testCreateCommentOnFilePosition.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a/comments +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"body": "Comment also created by PyGithub", "path": "codegen/templates/GithubObject.MethodBody.UseResult.py", "position": 3} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4966'), ('content-length', '768'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"b3d062ed01b92c31d072c7177113c0b1"'), ('date', 'Tue, 22 May 2012 18:50:02 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/comments/1362001')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1362001","path":"codegen/templates/GithubObject.MethodBody.UseResult.py","body":"Comment also created by PyGithub","html_url":"https://github.com/jacquev6/PyGithub/commit/1292bf0e22c796e91cc3d6e24b544aece8c21f2a#commitcomment-1362001","created_at":"2012-05-22T18:50:02Z","commit_id":"1292bf0e22c796e91cc3d6e24b544aece8c21f2a","position":3,"updated_at":"2012-05-22T18:50:02Z","id":1362001,"line":null,"user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}} + diff --git a/lib/github/tests/ReplayData/Commit.testCreateStatusWithAllParameters.txt b/lib/github/tests/ReplayData/Commit.testCreateStatusWithAllParameters.txt new file mode 100644 index 0000000000..51c4f66c85 --- /dev/null +++ b/lib/github/tests/ReplayData/Commit.testCreateStatusWithAllParameters.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/statuses/1292bf0e22c796e91cc3d6e24b544aece8c21f2a +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"state": "success", "target_url": "https://github.com/jacquev6/PyGithub/issues/67", "description": "Status successfuly created by PyGithub"} +201 +[('status', '201 Created'), ('content-length', '603'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('x-ratelimit-remaining', '4975'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('etag', '"06233b816702bedc54a6f68734a910bc"'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/statuses/277040'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Sat, 08 Sep 2012 11:30:56 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"state":"success","updated_at":"2012-09-08T11:30:56Z","target_url":"https://github.com/jacquev6/PyGithub/issues/67","url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/277040","description":"Status successfuly created by PyGithub","id":277040,"created_at":"2012-09-08T11:30:56Z"} + diff --git a/lib/github/tests/ReplayData/Commit.testCreateStatusWithoutOptionalParameters.txt b/lib/github/tests/ReplayData/Commit.testCreateStatusWithoutOptionalParameters.txt new file mode 100644 index 0000000000..d0dffee6f2 --- /dev/null +++ b/lib/github/tests/ReplayData/Commit.testCreateStatusWithoutOptionalParameters.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/statuses/1292bf0e22c796e91cc3d6e24b544aece8c21f2a +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"state": "pending"} +201 +[('status', '201 Created'), ('content-length', '523'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-remaining', '4979'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/statuses/277031'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Sat, 08 Sep 2012 11:27:12 GMT'), ('etag', '"7e28427673d50844a69c0871e5e39a69"'), ('content-type', 'application/json; charset=utf-8')] +{"description":null,"created_at":"2012-09-08T11:27:12Z","target_url":null,"state":"pending","updated_at":"2012-09-08T11:27:12Z","url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/277031","id":277031,"creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","id":327146}} + diff --git a/lib/github/tests/ReplayData/Commit.testGetComments.txt b/lib/github/tests/ReplayData/Commit.testGetComments.txt new file mode 100644 index 0000000000..2bedeb2c39 --- /dev/null +++ b/lib/github/tests/ReplayData/Commit.testGetComments.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a/comments +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4969'), ('content-length', '4322'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"9000a379c4d5eba3527a002d2bbc2e0c"'), ('date', 'Fri, 18 May 2012 20:12:18 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-18T08:46:09Z","position":null,"body":"probably a noob question: does this completion refer to autocompletion in IDE's/editors? \nI have observed that this is pretty erratic sometimes. I'm using PyDev+Eclipse.\nFor example, in the tutorial from the readme, `g.get_u` gets autocompleted correctly, but `g.get_user().get_r` (or any method or attribute applicable to NamedUsers/AuthenticatedUser, really) does not show autocompletion to `g.get_user().get_repo()`. Is that by design? It makes exploring the library/API a bit cumbersome. ","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1347033","commit_id":"1292bf0e22c796e91cc3d6e24b544aece8c21f2a","html_url":"https://github.com/jacquev6/PyGithub/commit/1292bf0e22c796e91cc3d6e24b544aece8c21f2a#commitcomment-1347033","created_at":"2012-05-18T08:46:09Z","path":null,"line":null,"user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"id":1347033},{"updated_at":"2012-05-18T09:03:40Z","position":null,"body":"No, it has nothing to do with auto-completion in IDEs :D\n\nGithub API v3 sends only the main part of objects in reply to some requests. So, if the user wants an attribute that has not been received yet, I have to do another request to complete the object.\n\nYet, in version 1.0 (see the milesone), my library will be much more readable for IDEs and their auto-completion mechanisms, because I am giving up the meta-description that I used until 0.6, and I'm now generating much more traditional code, that you will be able to explore as if it was written manually.\n\nIf you want to take the time to open an issue about auto-completion in IDEs, I'll deal with it in milestone 1.0.\n\nThanks !","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1347083","commit_id":"1292bf0e22c796e91cc3d6e24b544aece8c21f2a","html_url":"https://github.com/jacquev6/PyGithub/commit/1292bf0e22c796e91cc3d6e24b544aece8c21f2a#commitcomment-1347083","created_at":"2012-05-18T08:59:28Z","path":null,"line":null,"user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"id":1347083},{"updated_at":"2012-05-18T10:55:55Z","position":null,"body":"Ah, thanks for the clarification. :blush:\n\nI made issue #27 for the autocompletion. I already suspected something like this meta-description magic, since I tried to read some of the code and it was pretty arcane. I attributed that to my pythonic noobness, though. Thank you. ","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1347397","commit_id":"1292bf0e22c796e91cc3d6e24b544aece8c21f2a","html_url":"https://github.com/jacquev6/PyGithub/commit/1292bf0e22c796e91cc3d6e24b544aece8c21f2a#commitcomment-1347397","created_at":"2012-05-18T10:54:23Z","path":null,"line":null,"user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"id":1347397},{"updated_at":"2012-05-18T20:11:17Z","position":3,"body":"This comment is here only to test PyGithub...","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1349654","commit_id":"1292bf0e22c796e91cc3d6e24b544aece8c21f2a","html_url":"https://github.com/jacquev6/PyGithub/commit/1292bf0e22c796e91cc3d6e24b544aece8c21f2a#commitcomment-1349654","created_at":"2012-05-18T20:11:17Z","path":"codegen/templates/GithubObject.MethodBody.UseResult.py","line":25,"user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"id":1349654}] + diff --git a/lib/github/tests/ReplayData/CommitCombinedStatus.setUp.txt b/lib/github/tests/ReplayData/CommitCombinedStatus.setUp.txt new file mode 100644 index 0000000000..b71cd45db3 --- /dev/null +++ b/lib/github/tests/ReplayData/CommitCombinedStatus.setUp.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/repos/edx/edx-platform/commits/74e70119a23fa3ffb3db19d4590eccfebd72b659 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '18854'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '593010132f82159af0ded24b4932e109'), ('x-oauth-scopes', 'notifications, public_repo, read:org, read:public_key, read:repo_hook, repo:status, repo_deployment'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('x-accepted-oauth-scopes', ''), ('etag', '"8e937a4cbcbaef182ddf483ee99a599f"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4993'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '12B0076B:2073:5CF629E:56A6A81E'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Mon, 14 Dec 2015 12:42:38 GMT'), ('date', 'Mon, 25 Jan 2016 22:56:31 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1453765330')] +{"sha":"74e70119a23fa3ffb3db19d4590eccfebd72b659","commit":{"author":{"name":"John Eskew","email":"jeskew@edx.org","date":"2015-12-04T22:39:27Z"},"committer":{"name":"John Eskew","email":"jeskew@edx.org","date":"2015-12-14T12:42:38Z"},"message":"Use a common MongoDB connection function.\nAdd some missing @autoretry_read() decorators.\nChange to PyMongo 3.x-compatible syntax.","tree":{"sha":"7712c0f7c0c21f706bcbed393f3de71d854d59df","url":"https://api.github.com/repos/edx/edx-platform/git/trees/7712c0f7c0c21f706bcbed393f3de71d854d59df"},"url":"https://api.github.com/repos/edx/edx-platform/git/commits/74e70119a23fa3ffb3db19d4590eccfebd72b659","comment_count":0},"url":"https://api.github.com/repos/edx/edx-platform/commits/74e70119a23fa3ffb3db19d4590eccfebd72b659","html_url":"https://github.com/edx/edx-platform/commit/74e70119a23fa3ffb3db19d4590eccfebd72b659","comments_url":"https://api.github.com/repos/edx/edx-platform/commits/74e70119a23fa3ffb3db19d4590eccfebd72b659/comments","author":{"login":"doctoryes","id":7285237,"avatar_url":"https://avatars.githubusercontent.com/u/7285237?v=3","gravatar_id":"","url":"https://api.github.com/users/doctoryes","html_url":"https://github.com/doctoryes","followers_url":"https://api.github.com/users/doctoryes/followers","following_url":"https://api.github.com/users/doctoryes/following{/other_user}","gists_url":"https://api.github.com/users/doctoryes/gists{/gist_id}","starred_url":"https://api.github.com/users/doctoryes/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/doctoryes/subscriptions","organizations_url":"https://api.github.com/users/doctoryes/orgs","repos_url":"https://api.github.com/users/doctoryes/repos","events_url":"https://api.github.com/users/doctoryes/events{/privacy}","received_events_url":"https://api.github.com/users/doctoryes/received_events","type":"User","site_admin":false},"committer":{"login":"doctoryes","id":7285237,"avatar_url":"https://avatars.githubusercontent.com/u/7285237?v=3","gravatar_id":"","url":"https://api.github.com/users/doctoryes","html_url":"https://github.com/doctoryes","followers_url":"https://api.github.com/users/doctoryes/followers","following_url":"https://api.github.com/users/doctoryes/following{/other_user}","gists_url":"https://api.github.com/users/doctoryes/gists{/gist_id}","starred_url":"https://api.github.com/users/doctoryes/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/doctoryes/subscriptions","organizations_url":"https://api.github.com/users/doctoryes/orgs","repos_url":"https://api.github.com/users/doctoryes/repos","events_url":"https://api.github.com/users/doctoryes/events{/privacy}","received_events_url":"https://api.github.com/users/doctoryes/received_events","type":"User","site_admin":false},"parents":[{"sha":"86227e7711c011490f1db6fdfcc17401511e5ee5","url":"https://api.github.com/repos/edx/edx-platform/commits/86227e7711c011490f1db6fdfcc17401511e5ee5","html_url":"https://github.com/edx/edx-platform/commit/86227e7711c011490f1db6fdfcc17401511e5ee5"}],"stats":{"total":192,"additions":112,"deletions":80},"files":[{"sha":"56ccd039ccff39e297523966c340f1be74876af8","filename":"common/lib/xmodule/xmodule/contentstore/mongo.py","status":"modified","additions":34,"deletions":30,"changes":64,"blob_url":"https://github.com/edx/edx-platform/blob/74e70119a23fa3ffb3db19d4590eccfebd72b659/common/lib/xmodule/xmodule/contentstore/mongo.py","raw_url":"https://github.com/edx/edx-platform/raw/74e70119a23fa3ffb3db19d4590eccfebd72b659/common/lib/xmodule/xmodule/contentstore/mongo.py","contents_url":"https://api.github.com/repos/edx/edx-platform/contents/common/lib/xmodule/xmodule/contentstore/mongo.py?ref=74e70119a23fa3ffb3db19d4590eccfebd72b659","patch":"@@ -1,52 +1,50 @@\n+\"\"\"\n+MongoDB/GridFS-level code for the contentstore.\n+\"\"\"\n+import os\n+import json\n import pymongo\n import gridfs\n from gridfs.errors import NoFile\n-\n-from xmodule.contentstore.content import XASSET_LOCATION_TAG\n-\n-import logging\n-\n-from .content import StaticContent, ContentStore, StaticContentStream\n-from xmodule.exceptions import NotFoundError\n from fs.osfs import OSFS\n-import os\n-import json\n from bson.son import SON\n+\n+from mongodb_proxy import autoretry_read\n from opaque_keys.edx.keys import AssetKey\n+from xmodule.contentstore.content import XASSET_LOCATION_TAG\n+from xmodule.exceptions import NotFoundError\n from xmodule.modulestore.django import ASSET_IGNORE_REGEX\n from xmodule.util.misc import escape_invalid_characters\n+from xmodule.mongo_connection import connect_to_mongodb\n+from .content import StaticContent, ContentStore, StaticContentStream\n \n \n class MongoContentStore(ContentStore):\n-\n- # pylint: disable=unused-argument\n- def __init__(self, host, db, port=27017, user=None, password=None, bucket='fs', collection=None, **kwargs):\n+ \"\"\"\n+ MongoDB-backed ContentStore.\n+ \"\"\"\n+ # pylint: disable=unused-argument, bad-continuation\n+ def __init__(\n+ self, host, db,\n+ port=27017, tz_aware=True, user=None, password=None, bucket='fs', collection=None, **kwargs\n+ ):\n \"\"\"\n Establish the connection with the mongo backend and connect to the collections\n \n :param collection: ignores but provided for consistency w/ other doc_store_config patterns\n \"\"\"\n- logging.debug('Using MongoDB for static content serving at host={0} port={1} db={2}'.format(host, port, db))\n-\n- # Remove the replicaSet parameter.\n- kwargs.pop('replicaSet', None)\n-\n- _db = pymongo.database.Database(\n- pymongo.MongoClient(\n- host=host,\n- port=port,\n- document_class=dict,\n- **kwargs\n- ),\n- db\n+ # GridFS will throw an exception if the Database is wrapped in a MongoProxy. So don't wrap it.\n+ # The appropriate methods below are marked as autoretry_read - those methods will handle\n+ # the AutoReconnect errors.\n+ proxy = False\n+ mongo_db = connect_to_mongodb(\n+ db, host,\n+ port=port, tz_aware=tz_aware, user=user, password=password, proxy=proxy, **kwargs\n )\n \n- if user is not None and password is not None:\n- _db.authenticate(user, password)\n-\n- self.fs = gridfs.GridFS(_db, bucket)\n+ self.fs = gridfs.GridFS(mongo_db, bucket) # pylint: disable=invalid-name\n \n- self.fs_files = _db[bucket + \".files\"] # the underlying collection GridFS uses\n+ self.fs_files = mongo_db[bucket + \".files\"] # the underlying collection GridFS uses\n \n def close_connections(self):\n \"\"\"\n@@ -86,11 +84,15 @@ def save(self, content):\n return content\n \n def delete(self, location_or_id):\n+ \"\"\"\n+ Delete an asset.\n+ \"\"\"\n if isinstance(location_or_id, AssetKey):\n location_or_id, _ = self.asset_db_key(location_or_id)\n # Deletes of non-existent files are considered successful\n self.fs.delete(location_or_id)\n \n+ @autoretry_read()\n def find(self, location, throw_on_not_found=True, as_stream=False):\n content_id, __ = self.asset_db_key(location)\n \n@@ -206,6 +208,7 @@ def remove_redundant_content_for_courses(self):\n self.fs_files.remove(query)\n return assets_to_delete\n \n+ @autoretry_read()\n def _get_all_content_for_course(self,\n course_key,\n get_thumbnails=False,\n@@ -288,6 +291,7 @@ def set_attrs(self, location, attr_dict):\n if not result.get('updatedExisting', True):\n raise NotFoundError(asset_db_key)\n \n+ @autoretry_read()\n def get_attrs(self, location):\n \"\"\"\n Gets all of the attributes associated with the given asset. Note, returns even built in attrs"},{"sha":"4bcdfa15a878dc6b413ab093f5edc685096c1dfa","filename":"common/lib/xmodule/xmodule/modulestore/mongo/base.py","status":"modified","additions":15,"deletions":24,"changes":39,"blob_url":"https://github.com/edx/edx-platform/blob/74e70119a23fa3ffb3db19d4590eccfebd72b659/common/lib/xmodule/xmodule/modulestore/mongo/base.py","raw_url":"https://github.com/edx/edx-platform/raw/74e70119a23fa3ffb3db19d4590eccfebd72b659/common/lib/xmodule/xmodule/modulestore/mongo/base.py","contents_url":"https://api.github.com/repos/edx/edx-platform/contents/common/lib/xmodule/xmodule/modulestore/mongo/base.py?ref=74e70119a23fa3ffb3db19d4590eccfebd72b659","patch":"@@ -22,7 +22,7 @@\n from bson.son import SON\n from datetime import datetime\n from fs.osfs import OSFS\n-from mongodb_proxy import MongoProxy, autoretry_read\n+from mongodb_proxy import autoretry_read\n from path import Path as path\n from pytz import UTC\n from contracts import contract, new_contract\n@@ -43,6 +43,7 @@\n from xmodule.errortracker import null_error_tracker, exc_info_to_str\n from xmodule.exceptions import HeartbeatFailure\n from xmodule.mako_module import MakoDescriptorSystem\n+from xmodule.mongo_connection import connect_to_mongodb\n from xmodule.modulestore import ModuleStoreWriteBase, ModuleStoreEnum, BulkOperationsMixin, BulkOpsRecord\n from xmodule.modulestore.draft_and_published import ModuleStoreDraftAndPublished, DIRECT_ONLY_CATEGORIES\n from xmodule.modulestore.edit_info import EditInfoRuntimeMixin\n@@ -558,22 +559,16 @@ def do_connection(\n \"\"\"\n Create & open the connection, authenticate, and provide pointers to the collection\n \"\"\"\n- # Remove the replicaSet parameter.\n- kwargs.pop('replicaSet', None)\n-\n- self.database = MongoProxy(\n- pymongo.database.Database(\n- pymongo.MongoClient(\n- host=host,\n- port=port,\n- tz_aware=tz_aware,\n- document_class=dict,\n- **kwargs\n- ),\n- db\n- ),\n- wait_time=retry_wait_time\n+ # Set a write concern of 1, which makes writes complete successfully to the primary\n+ # only before returning. Also makes pymongo report write errors.\n+ kwargs['w'] = 1\n+\n+ self.database = connect_to_mongodb(\n+ db, host,\n+ port=port, tz_aware=tz_aware, user=user, password=password,\n+ retry_wait_time=retry_wait_time, **kwargs\n )\n+\n self.collection = self.database[collection]\n \n # Collection which stores asset metadata.\n@@ -581,14 +576,8 @@ def do_connection(\n asset_collection = self.DEFAULT_ASSET_COLLECTION_NAME\n self.asset_collection = self.database[asset_collection]\n \n- if user is not None and password is not None:\n- self.database.authenticate(user, password)\n-\n do_connection(**doc_store_config)\n \n- # Force mongo to report errors, at the expense of performance\n- self.collection.write_concern = {'w': 1}\n-\n if default_class is not None:\n module_path, _, class_name = default_class.rpartition('.')\n class_ = getattr(import_module(module_path), class_name)\n@@ -1012,6 +1001,7 @@ def get_courses(self, **kwargs):\n )\n return [course for course in base_list if not isinstance(course, ErrorDescriptor)]\n \n+ @autoretry_read()\n def _find_one(self, location):\n '''Look for a given location in the collection. If the item is not present, raise\n ItemNotFoundError.\n@@ -1052,6 +1042,7 @@ def get_course(self, course_key, depth=0, **kwargs):\n except ItemNotFoundError:\n return None\n \n+ @autoretry_read()\n def has_course(self, course_key, ignore_case=False, **kwargs):\n \"\"\"\n Returns the course_id of the course if it was found, else None\n@@ -1073,7 +1064,7 @@ def has_course(self, course_key, ignore_case=False, **kwargs):\n course_query[key] = re.compile(r\"(?i)^{}$\".format(course_query[key]))\n else:\n course_query = {'_id': location.to_deprecated_son()}\n- course = self.collection.find_one(course_query, fields={'_id': True})\n+ course = self.collection.find_one(course_query, projection={'_id': True})\n if course:\n return SlashSeparatedCourseKey(course['_id']['org'], course['_id']['course'], course['_id']['name'])\n else:\n@@ -1234,7 +1225,7 @@ def create_course(self, org, course, run, user_id, fields=None, **kwargs):\n ('_id.course', re.compile(u'^{}$'.format(course_id.course), re.IGNORECASE)),\n ('_id.category', 'course'),\n ])\n- courses = self.collection.find(course_search_location, fields=('_id'))\n+ courses = self.collection.find(course_search_location, projection={'_id': True})\n if courses.count() > 0:\n raise DuplicateCourseError(course_id, courses[0]['_id'])\n "},{"sha":"1352ee95cd39a611a21a2e17dbc70da9b31af433","filename":"common/lib/xmodule/xmodule/modulestore/split_mongo/mongo_connection.py","status":"modified","additions":10,"deletions":26,"changes":36,"blob_url":"https://github.com/edx/edx-platform/blob/74e70119a23fa3ffb3db19d4590eccfebd72b659/common/lib/xmodule/xmodule/modulestore/split_mongo/mongo_connection.py","raw_url":"https://github.com/edx/edx-platform/raw/74e70119a23fa3ffb3db19d4590eccfebd72b659/common/lib/xmodule/xmodule/modulestore/split_mongo/mongo_connection.py","contents_url":"https://api.github.com/repos/edx/edx-platform/contents/common/lib/xmodule/xmodule/modulestore/split_mongo/mongo_connection.py?ref=74e70119a23fa3ffb3db19d4590eccfebd72b659","patch":"@@ -23,10 +23,11 @@\n import dogstats_wrapper as dog_stats_api\n \n from contracts import check, new_contract\n-from mongodb_proxy import autoretry_read, MongoProxy\n+from mongodb_proxy import autoretry_read\n from xmodule.exceptions import HeartbeatFailure\n from xmodule.modulestore import BlockData\n from xmodule.modulestore.split_mongo import BlockKey\n+from xmodule.mongo_connection import connect_to_mongodb\n \n \n new_contract('BlockData', BlockData)\n@@ -287,37 +288,20 @@ def __init__(\n \"\"\"\n Create & open the connection, authenticate, and provide pointers to the collections\n \"\"\"\n- if kwargs.get('replicaSet') is None:\n- kwargs.pop('replicaSet', None)\n- mongo_class = pymongo.MongoClient\n- else:\n- mongo_class = pymongo.MongoReplicaSetClient\n- _client = mongo_class(\n- host=host,\n- port=port,\n- tz_aware=tz_aware,\n- **kwargs\n- )\n- self.database = MongoProxy(\n- pymongo.database.Database(_client, db),\n- wait_time=retry_wait_time\n- )\n+ # Set a write concern of 1, which makes writes complete successfully to the primary\n+ # only before returning. Also makes pymongo report write errors.\n+ kwargs['w'] = 1\n \n- if user is not None and password is not None:\n- self.database.authenticate(user, password)\n+ self.database = connect_to_mongodb(\n+ db, host,\n+ port=port, tz_aware=tz_aware, user=user, password=password,\n+ retry_wait_time=retry_wait_time, **kwargs\n+ )\n \n self.course_index = self.database[collection + '.active_versions']\n self.structures = self.database[collection + '.structures']\n self.definitions = self.database[collection + '.definitions']\n \n- # every app has write access to the db (v having a flag to indicate r/o v write)\n- # Force mongo to report errors, at the expense of performance\n- # pymongo docs suck but explanation:\n- # http://api.mongodb.org/java/2.10.1/com/mongodb/WriteConcern.html\n- self.course_index.write_concern = {'w': 1}\n- self.structures.write_concern = {'w': 1}\n- self.definitions.write_concern = {'w': 1}\n-\n def heartbeat(self):\n \"\"\"\n Check that the db is reachable."},{"sha":"ea353a60b6af9226ce7676495d9572831d99fbd9","filename":"common/lib/xmodule/xmodule/mongo_connection.py","status":"added","additions":53,"deletions":0,"changes":53,"blob_url":"https://github.com/edx/edx-platform/blob/74e70119a23fa3ffb3db19d4590eccfebd72b659/common/lib/xmodule/xmodule/mongo_connection.py","raw_url":"https://github.com/edx/edx-platform/raw/74e70119a23fa3ffb3db19d4590eccfebd72b659/common/lib/xmodule/xmodule/mongo_connection.py","contents_url":"https://api.github.com/repos/edx/edx-platform/contents/common/lib/xmodule/xmodule/mongo_connection.py?ref=74e70119a23fa3ffb3db19d4590eccfebd72b659","patch":"@@ -0,0 +1,53 @@\n+\"\"\"\n+Common MongoDB connection functions.\n+\"\"\"\n+import pymongo\n+from mongodb_proxy import MongoProxy\n+\n+\n+# pylint: disable=bad-continuation\n+def connect_to_mongodb(\n+ db, host,\n+ port=27017, tz_aware=True, user=None, password=None,\n+ retry_wait_time=0.1, proxy=True, **kwargs\n+):\n+ \"\"\"\n+ Returns a MongoDB Database connection, optionally wrapped in a proxy. The proxy\n+ handles AutoReconnect errors by retrying read operations, since these exceptions\n+ typically indicate a temporary step-down condition for MongoDB.\n+ \"\"\"\n+ # The MongoReplicaSetClient class is deprecated in Mongo 3.x, in favor of using\n+ # the MongoClient class for all connections. Update/simplify this code when using\n+ # PyMongo 3.x.\n+ if kwargs.get('replicaSet'):\n+ # Enable reading from secondary nodes in the MongoDB replicaset by using the\n+ # MongoReplicaSetClient class.\n+ # The 'replicaSet' parameter in kwargs is required for secondary reads.\n+ # The read_preference should be set to a proper value, like SECONDARY_PREFERRED.\n+ mongo_client_class = pymongo.MongoReplicaSetClient\n+ else:\n+ # No 'replicaSet' in kwargs - so no secondary reads.\n+ mongo_client_class = pymongo.MongoClient\n+\n+ mongo_conn = pymongo.database.Database(\n+ mongo_client_class(\n+ host=host,\n+ port=port,\n+ tz_aware=tz_aware,\n+ document_class=dict,\n+ **kwargs\n+ ),\n+ db\n+ )\n+\n+ if proxy:\n+ mongo_conn = MongoProxy(\n+ mongo_conn,\n+ wait_time=retry_wait_time\n+ )\n+\n+ # If credentials were provided, authenticate the user.\n+ if user is not None and password is not None:\n+ mongo_conn.authenticate(user, password)\n+\n+ return mongo_conn"}]} + +https +GET +api.github.com +None +/repos/edx/edx-platform/commits/74e70119a23fa3ffb3db19d4590eccfebd72b659/status +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '6365'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '3e3b9690823fb031da84658eb58aa83b'), ('x-oauth-scopes', 'notifications, public_repo, read:org, read:public_key, read:repo_hook, repo:status, repo_deployment'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('x-accepted-oauth-scopes', 'repo, repo:status'), ('etag', '"bfa38f9cceb7ccc231038178037a2013"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4992'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '12B0076B:2074:768909A:56A6A81F'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 25 Jan 2016 22:56:31 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1453765330')] +{"state":"success","statuses":[{"url":"https://api.github.com/repos/edx/edx-platform/statuses/74e70119a23fa3ffb3db19d4590eccfebd72b659","id":390601376,"state":"success","description":"Build finished.","target_url":"https://build.testeng.edx.org/job/edx-platform-js-pr/10357/","context":"jenkins/js","created_at":"2015-12-14T12:54:25Z","updated_at":"2015-12-14T12:54:25Z"},{"url":"https://api.github.com/repos/edx/edx-platform/statuses/74e70119a23fa3ffb3db19d4590eccfebd72b659","id":390603044,"state":"success","description":"Build finished.","target_url":"https://build.testeng.edx.org/job/edx-platform-accessibility-pr/10173/","context":"jenkins/a11y","created_at":"2015-12-14T12:56:21Z","updated_at":"2015-12-14T12:56:21Z"},{"url":"https://api.github.com/repos/edx/edx-platform/statuses/74e70119a23fa3ffb3db19d4590eccfebd72b659","id":390615529,"state":"success","description":"Build finished.","target_url":"https://build.testeng.edx.org/job/edx-platform-quality-pr/10214/","context":"jenkins/quality","created_at":"2015-12-14T13:10:22Z","updated_at":"2015-12-14T13:10:22Z"},{"url":"https://api.github.com/repos/edx/edx-platform/statuses/74e70119a23fa3ffb3db19d4590eccfebd72b659","id":390627281,"state":"success","description":"Build finished.","target_url":"https://build.testeng.edx.org/job/edx-platform-bok-choy-pr/10918/","context":"jenkins/bokchoy","created_at":"2015-12-14T13:23:35Z","updated_at":"2015-12-14T13:23:35Z"},{"url":"https://api.github.com/repos/edx/edx-platform/statuses/74e70119a23fa3ffb3db19d4590eccfebd72b659","id":390627989,"state":"success","description":"Build finished.","target_url":"https://build.testeng.edx.org/job/edx-platform-python-unittests-pr/10504/","context":"jenkins/python","created_at":"2015-12-14T13:24:18Z","updated_at":"2015-12-14T13:24:18Z"},{"url":"https://api.github.com/repos/edx/edx-platform/statuses/74e70119a23fa3ffb3db19d4590eccfebd72b659","id":390680150,"state":"success","description":"Build finished.","target_url":"https://build.testeng.edx.org/job/edx-platform-lettuce-pr/10545/","context":"jenkins/lettuce","created_at":"2015-12-14T14:15:40Z","updated_at":"2015-12-14T14:15:40Z"}],"sha":"74e70119a23fa3ffb3db19d4590eccfebd72b659","total_count":6,"repository":{"id":10391073,"name":"edx-platform","full_name":"edx/edx-platform","owner":{"login":"edx","id":3179841,"avatar_url":"https://avatars.githubusercontent.com/u/3179841?v=3","gravatar_id":"","url":"https://api.github.com/users/edx","html_url":"https://github.com/edx","followers_url":"https://api.github.com/users/edx/followers","following_url":"https://api.github.com/users/edx/following{/other_user}","gists_url":"https://api.github.com/users/edx/gists{/gist_id}","starred_url":"https://api.github.com/users/edx/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edx/subscriptions","organizations_url":"https://api.github.com/users/edx/orgs","repos_url":"https://api.github.com/users/edx/repos","events_url":"https://api.github.com/users/edx/events{/privacy}","received_events_url":"https://api.github.com/users/edx/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/edx/edx-platform","description":"The Open edX platform, the software that powers edX!","fork":false,"url":"https://api.github.com/repos/edx/edx-platform","forks_url":"https://api.github.com/repos/edx/edx-platform/forks","keys_url":"https://api.github.com/repos/edx/edx-platform/keys{/key_id}","collaborators_url":"https://api.github.com/repos/edx/edx-platform/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/edx/edx-platform/teams","hooks_url":"https://api.github.com/repos/edx/edx-platform/hooks","issue_events_url":"https://api.github.com/repos/edx/edx-platform/issues/events{/number}","events_url":"https://api.github.com/repos/edx/edx-platform/events","assignees_url":"https://api.github.com/repos/edx/edx-platform/assignees{/user}","branches_url":"https://api.github.com/repos/edx/edx-platform/branches{/branch}","tags_url":"https://api.github.com/repos/edx/edx-platform/tags","blobs_url":"https://api.github.com/repos/edx/edx-platform/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/edx/edx-platform/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/edx/edx-platform/git/refs{/sha}","trees_url":"https://api.github.com/repos/edx/edx-platform/git/trees{/sha}","statuses_url":"https://api.github.com/repos/edx/edx-platform/statuses/{sha}","languages_url":"https://api.github.com/repos/edx/edx-platform/languages","stargazers_url":"https://api.github.com/repos/edx/edx-platform/stargazers","contributors_url":"https://api.github.com/repos/edx/edx-platform/contributors","subscribers_url":"https://api.github.com/repos/edx/edx-platform/subscribers","subscription_url":"https://api.github.com/repos/edx/edx-platform/subscription","commits_url":"https://api.github.com/repos/edx/edx-platform/commits{/sha}","git_commits_url":"https://api.github.com/repos/edx/edx-platform/git/commits{/sha}","comments_url":"https://api.github.com/repos/edx/edx-platform/comments{/number}","issue_comment_url":"https://api.github.com/repos/edx/edx-platform/issues/comments{/number}","contents_url":"https://api.github.com/repos/edx/edx-platform/contents/{+path}","compare_url":"https://api.github.com/repos/edx/edx-platform/compare/{base}...{head}","merges_url":"https://api.github.com/repos/edx/edx-platform/merges","archive_url":"https://api.github.com/repos/edx/edx-platform/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/edx/edx-platform/downloads","issues_url":"https://api.github.com/repos/edx/edx-platform/issues{/number}","pulls_url":"https://api.github.com/repos/edx/edx-platform/pulls{/number}","milestones_url":"https://api.github.com/repos/edx/edx-platform/milestones{/number}","notifications_url":"https://api.github.com/repos/edx/edx-platform/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/edx/edx-platform/labels{/name}","releases_url":"https://api.github.com/repos/edx/edx-platform/releases{/id}","deployments_url":"https://api.github.com/repos/edx/edx-platform/deployments"},"commit_url":"https://api.github.com/repos/edx/edx-platform/commits/74e70119a23fa3ffb3db19d4590eccfebd72b659","url":"https://api.github.com/repos/edx/edx-platform/commits/74e70119a23fa3ffb3db19d4590eccfebd72b659/status"} + diff --git a/lib/github/tests/ReplayData/CommitComment.setUp.txt b/lib/github/tests/ReplayData/CommitComment.setUp.txt new file mode 100644 index 0000000000..39667139cd --- /dev/null +++ b/lib/github/tests/ReplayData/CommitComment.setUp.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4967'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"27524c635501121933f4f78c95b1945a"'), ('date', 'Fri, 18 May 2012 20:12:19 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"owned_private_repos":5,"collaborators":0,"type":"User","hireable":false,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","public_gists":1,"company":"Criteo","bio":"","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","private_gists":5,"plan":{"collaborators":1,"private_repos":5,"name":"micro","space":614400},"public_repos":11,"followers":13,"login":"jacquev6","blog":"http://vincent-jacques.net","email":"vincent@vincent-jacques.net","disk_usage":16852,"html_url":"https://github.com/jacquev6","name":"Vincent Jacques","total_private_repos":5,"created_at":"2010-07-09T06:10:06Z","location":"Paris, France","id":327146,"following":24} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4966'), ('content-length', '1097'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"c5eec74d4b76b80283636a8efe1a132c"'), ('date', 'Fri, 18 May 2012 20:12:20 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"svn_url":"https://github.com/jacquev6/PyGithub","has_wiki":false,"has_issues":true,"updated_at":"2012-05-18T05:29:54Z","forks":2,"homepage":"http://vincent-jacques.net/PyGithub","git_url":"git://github.com/jacquev6/PyGithub.git","url":"https://api.github.com/repos/jacquev6/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","open_issues":17,"fork":false,"ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-18T05:18:16Z","size":304,"private":false,"has_downloads":true,"watchers":13,"html_url":"https://github.com/jacquev6/PyGithub","owner":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"PyGithub","permissions":{"pull":true,"admin":true,"push":true},"mirror_url":null,"language":"Python","description":"Python library implementing the full Github API v3","created_at":"2012-02-25T12:53:47Z","id":3544490} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/comments/1361949 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '714'), ('x-ratelimit-remaining', '4979'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"eebb2ebe0274fc6672c9e7bad74e5f39"'), ('date', 'Tue, 22 May 2012 18:43:13 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1361949","path":null,"body":"Comment created by PyGithub","html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1361949","created_at":"2012-05-22T18:40:18Z","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","position":null,"updated_at":"2012-05-22T18:40:18Z","id":1361949,"line":null,"user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}} + diff --git a/lib/github/tests/ReplayData/CommitComment.testDelete.txt b/lib/github/tests/ReplayData/CommitComment.testDelete.txt new file mode 100644 index 0000000000..335c3587cb --- /dev/null +++ b/lib/github/tests/ReplayData/CommitComment.testDelete.txt @@ -0,0 +1,11 @@ +https +DELETE +api.github.com +None +/repos/jacquev6/PyGithub/comments/1361949 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4974'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Tue, 22 May 2012 18:44:06 GMT')] + + diff --git a/lib/github/tests/ReplayData/CommitComment.testEdit.txt b/lib/github/tests/ReplayData/CommitComment.testEdit.txt new file mode 100644 index 0000000000..834eedd570 --- /dev/null +++ b/lib/github/tests/ReplayData/CommitComment.testEdit.txt @@ -0,0 +1,11 @@ +https +PATCH +api.github.com +None +/repos/jacquev6/PyGithub/comments/1361949 +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"body": "Comment edited by PyGithub"} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4978'), ('content-length', '713'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"97ffd9ff8370f4f284873a6397d7cafd"'), ('date', 'Tue, 22 May 2012 18:43:17 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"updated_at":"2012-05-22T18:43:17Z","position":null,"body":"Comment edited by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1361949","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","created_at":"2012-05-22T18:40:18Z","path":null,"line":null,"user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"id":1361949,"html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1361949"} + diff --git a/lib/github/tests/ReplayData/CommitStatus.setUp.txt b/lib/github/tests/ReplayData/CommitStatus.setUp.txt new file mode 100644 index 0000000000..e04c40dceb --- /dev/null +++ b/lib/github/tests/ReplayData/CommitStatus.setUp.txt @@ -0,0 +1,44 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4970'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '806'), ('server', 'nginx/1.0.13'), ('last-modified', 'Wed, 05 Sep 2012 15:03:24 GMT'), ('connection', 'keep-alive'), ('etag', '"350294b94004d4bb252b6a432baa5744"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Sat, 08 Sep 2012 11:33:18 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","email":"vincent@vincent-jacques.net","disk_usage":14680,"following":28,"location":"Paris, France","hireable":false,"bio":"","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","public_gists":3,"total_private_repos":5,"collaborators":0,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","private_gists":5,"owned_private_repos":5,"public_repos":11,"name":"Vincent Jacques","company":"Criteo","url":"https://api.github.com/users/jacquev6","login":"jacquev6","plan":{"collaborators":1,"name":"micro","private_repos":5,"space":614400},"followers":13,"html_url":"https://github.com/jacquev6","id":327146,"created_at":"2010-07-09T06:10:06Z","blog":"http://vincent-jacques.net"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4969'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '1239'), ('server', 'nginx/1.0.13'), ('last-modified', 'Sat, 08 Sep 2012 11:05:28 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"b5deefd5e5a20ae540958af4330940c3"'), ('cache-control', 'private, s-maxage=60, max-age=60'), ('date', 'Sat, 08 Sep 2012 11:33:18 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"master_branch":"master","forks":16,"open_issues_count":14,"has_downloads":true,"owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"},"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":true,"admin":true},"forks_count":16,"clone_url":"https://github.com/jacquev6/PyGithub.git","created_at":"2012-02-25T12:53:47Z","network_count":16,"has_wiki":false,"watchers":67,"mirror_url":null,"size":268,"fork":false,"open_issues":14,"has_issues":true,"git_url":"git://github.com/jacquev6/PyGithub.git","updated_at":"2012-09-08T11:05:28Z","full_name":"jacquev6/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","ssh_url":"git@github.com:jacquev6/PyGithub.git","html_url":"https://github.com/jacquev6/PyGithub","private":false,"id":3544490,"language":"Python","watchers_count":67,"homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/jacquev6/PyGithub","pushed_at":"2012-09-08T11:05:27Z"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '3473'), ('x-ratelimit-limit', '5000'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4968'), ('server', 'nginx/1.0.13'), ('last-modified', 'Wed, 09 May 2012 16:22:33 GMT'), ('connection', 'keep-alive'), ('etag', '"65d19a8fbfb1103ea7421e4c514d75d3"'), ('cache-control', 'private, s-maxage=60, max-age=60'), ('date', 'Sat, 08 Sep 2012 11:33:19 GMT'), ('x-github-media-type', 'github.beta; format=json'), ('content-type', 'application/json; charset=utf-8')] +{"sha":"1292bf0e22c796e91cc3d6e24b544aece8c21f2a","stats":{"total":20,"additions":0,"deletions":20},"files":[{"filename":"github/GithubObjects/GitAuthor.py","sha":"ca6a3c616fc1367b6d01d04a7cf6ee27cf216f26","status":"modified","raw_url":"https://github.com/jacquev6/PyGithub/raw/1292bf0e22c796e91cc3d6e24b544aece8c21f2a/github/GithubObjects/GitAuthor.py","additions":0,"patch":"@@ -14,22 +14,17 @@ def __init__( self, requester, attributes, lazy ):\n self.__completed = False\n self.__initAttributes()\n self.__useAttributes( attributes )\n- if not lazy:\n- self.__complete()\n \n @property\n def date( self ):\n- self.__completeIfNeeded( self.__date )\n return self.__date\n \n @property\n def email( self ):\n- self.__completeIfNeeded( self.__email )\n return self.__email\n \n @property\n def name( self ):\n- self.__completeIfNeeded( self.__name )\n return self.__name\n \n def __initAttributes( self ):\n@@ -37,21 +32,6 @@ def __initAttributes( self ):\n self.__email = None\n self.__name = None\n \n- def __completeIfNeeded( self, testedAttribute ):\n- if not self.__completed and testedAttribute is None:\n- self.__complete()\n-\n- # @todo Do not generate __complete if type has no url attribute\n- def __complete( self ):\n- status, headers, data = self.__requester.request(\n- \"GET\",\n- self.__url,\n- None,\n- None\n- )\n- self.__useAttributes( data )\n- self.__completed = True\n-\n def __useAttributes( self, attributes ):\n #@todo No need to check if attribute is in attributes when attribute is mandatory\n if \"date\" in attributes and attributes[ \"date\" ] is not None:","blob_url":"https://github.com/jacquev6/PyGithub/blob/1292bf0e22c796e91cc3d6e24b544aece8c21f2a/github/GithubObjects/GitAuthor.py","changes":20,"deletions":20}],"author":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/jacquev6","id":327146},"commit":{"message":"Remove completion functions from GitAuthor","author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-09T09:22:33-07:00"},"comment_count":0,"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a","tree":{"sha":"4c6bd50994f0f9823f898b1c6c964ad7d4fa11ab","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/4c6bd50994f0f9823f898b1c6c964ad7d4fa11ab"},"committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-09T09:22:33-07:00"}},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a","parents":[{"sha":"b46ed0dfde5ad02d3b91eb54a41c5ed960710eae","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b46ed0dfde5ad02d3b91eb54a41c5ed960710eae"}],"committer":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/jacquev6","id":327146}} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/statuses/1292bf0e22c796e91cc3d6e24b544aece8c21f2a +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4967'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('content-length', '1129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"33102158c69b28937a0b6a7031ba9c88"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Sat, 08 Sep 2012 11:33:19 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"description":"Status successfuly created by PyGithub","created_at":"2012-09-08T11:30:56Z","target_url":"https://github.com/jacquev6/PyGithub/issues/67","state":"success","context":"build","updated_at":"2012-09-08T11:30:56Z","url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/277040","id":277040,"creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"}},{"description":null,"created_at":"2012-09-08T11:27:12Z","target_url":null,"state":"pending","updated_at":"2012-09-08T11:27:12Z","url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/277031","id":277031,"creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"}}] + diff --git a/lib/github/tests/ReplayData/ConditionalRequestUpdate.setUp.txt b/lib/github/tests/ReplayData/ConditionalRequestUpdate.setUp.txt new file mode 100644 index 0000000000..dfc62ba258 --- /dev/null +++ b/lib/github/tests/ReplayData/ConditionalRequestUpdate.setUp.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/akfish/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4988'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '13698'), ('server', 'GitHub.com'), ('last-modified', 'Thu, 22 Aug 2013 02:09:11 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"8600bedcb7fed1d8065e1693e05529ce"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Thu, 22 Aug 2013 02:13:08 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1377140429')] +{"id":12156762,"name":"PyGithub","full_name":"akfish/PyGithub","owner":{"login":"akfish","id":922715,"avatar_url":"https://1.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"private":false,"html_url":"https://github.com/akfish/PyGithub","description":"Python library implementing the full Github API v3","fork":true,"url":"https://api.github.com/repos/akfish/PyGithub","forks_url":"https://api.github.com/repos/akfish/PyGithub/forks","keys_url":"https://api.github.com/repos/akfish/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/akfish/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/akfish/PyGithub/teams","hooks_url":"https://api.github.com/repos/akfish/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/akfish/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/akfish/PyGithub/events","assignees_url":"https://api.github.com/repos/akfish/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/akfish/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/akfish/PyGithub/tags","blobs_url":"https://api.github.com/repos/akfish/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/akfish/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/akfish/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/akfish/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/akfish/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/akfish/PyGithub/languages","stargazers_url":"https://api.github.com/repos/akfish/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/akfish/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/akfish/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/akfish/PyGithub/subscription","commits_url":"https://api.github.com/repos/akfish/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/akfish/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/akfish/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/akfish/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/akfish/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/akfish/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/akfish/PyGithub/merges","archive_url":"https://api.github.com/repos/akfish/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/akfish/PyGithub/downloads","issues_url":"https://api.github.com/repos/akfish/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/akfish/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/akfish/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/akfish/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/akfish/PyGithub/labels{/name}","created_at":"2013-08-16T10:56:11Z","updated_at":"2013-08-22T02:09:11Z","pushed_at":"2013-08-22T02:09:09Z","git_url":"git://github.com/akfish/PyGithub.git","ssh_url":"git@github.com:akfish/PyGithub.git","clone_url":"https://github.com/akfish/PyGithub.git","svn_url":"https://github.com/akfish/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":6736,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":true,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"master_branch":"master","default_branch":"master","permissions":{"admin":true,"push":true,"pull":true},"network_count":70,"parent":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-08-21T20:32:08Z","pushed_at":"2013-08-21T20:31:45Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":7437,"watchers_count":248,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":70,"mirror_url":null,"open_issues_count":17,"forks":70,"open_issues":17,"watchers":248,"master_branch":"master","default_branch":"master"},"source":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-08-21T20:32:08Z","pushed_at":"2013-08-21T20:31:45Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":7437,"watchers_count":248,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":70,"mirror_url":null,"open_issues_count":17,"forks":70,"open_issues":17,"watchers":248,"master_branch":"master","default_branch":"master"}} + diff --git a/lib/github/tests/ReplayData/ConditionalRequestUpdate.testDidNotUpdate.txt b/lib/github/tests/ReplayData/ConditionalRequestUpdate.testDidNotUpdate.txt new file mode 100755 index 0000000000..025aee8c0f --- /dev/null +++ b/lib/github/tests/ReplayData/ConditionalRequestUpdate.testDidNotUpdate.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/akfish/PyGithub +{'If-None-Match': '"8600bedcb7fed1d8065e1693e05529ce"', 'User-Agent': 'PyGithub/Python', 'Authorization': 'Basic login_and_password_removed', 'If-Modified-Since': 'Thu, 22 Aug 2013 02:09:11 GMT'} +null +304 +[('status', '304 Not Modified'), ('x-ratelimit-remaining', '4988'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('last-modified', 'Thu, 22 Aug 2013 02:09:11 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"8600bedcb7fed1d8065e1693e05529ce"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Thu, 22 Aug 2013 02:13:10 GMT'), ('access-control-allow-origin', '*'), ('x-ratelimit-reset', '1377140429')] + + diff --git a/lib/github/tests/ReplayData/ConditionalRequestUpdate.testDidUpdate.txt b/lib/github/tests/ReplayData/ConditionalRequestUpdate.testDidUpdate.txt new file mode 100644 index 0000000000..b6d8aeec9b --- /dev/null +++ b/lib/github/tests/ReplayData/ConditionalRequestUpdate.testDidUpdate.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/akfish/PyGithub +{'If-None-Match': '"8600bedcb7fed1d8065e1693e05529ce"', 'User-Agent': 'PyGithub/Python', 'Authorization': 'Basic login_and_password_removed', 'If-Modified-Since': 'Thu, 22 Aug 2013 02:09:11 GMT'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4987'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '13712'), ('server', 'GitHub.com'), ('last-modified', 'Thu, 22 Aug 2013 02:14:54 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"ef281ef0e821c18f80da36902727160b"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Thu, 22 Aug 2013 02:15:01 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1377140429')] +{"id":12156762,"name":"PyGithub","full_name":"akfish/PyGithub","owner":{"login":"akfish","id":922715,"avatar_url":"https://0.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"private":false,"html_url":"https://github.com/akfish/PyGithub","description":"Python library implementing the full Github API v3 - AKFish Fork","fork":true,"url":"https://api.github.com/repos/akfish/PyGithub","forks_url":"https://api.github.com/repos/akfish/PyGithub/forks","keys_url":"https://api.github.com/repos/akfish/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/akfish/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/akfish/PyGithub/teams","hooks_url":"https://api.github.com/repos/akfish/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/akfish/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/akfish/PyGithub/events","assignees_url":"https://api.github.com/repos/akfish/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/akfish/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/akfish/PyGithub/tags","blobs_url":"https://api.github.com/repos/akfish/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/akfish/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/akfish/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/akfish/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/akfish/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/akfish/PyGithub/languages","stargazers_url":"https://api.github.com/repos/akfish/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/akfish/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/akfish/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/akfish/PyGithub/subscription","commits_url":"https://api.github.com/repos/akfish/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/akfish/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/akfish/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/akfish/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/akfish/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/akfish/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/akfish/PyGithub/merges","archive_url":"https://api.github.com/repos/akfish/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/akfish/PyGithub/downloads","issues_url":"https://api.github.com/repos/akfish/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/akfish/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/akfish/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/akfish/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/akfish/PyGithub/labels{/name}","created_at":"2013-08-16T10:56:11Z","updated_at":"2013-08-22T02:14:54Z","pushed_at":"2013-08-22T02:09:09Z","git_url":"git://github.com/akfish/PyGithub.git","ssh_url":"git@github.com:akfish/PyGithub.git","clone_url":"https://github.com/akfish/PyGithub.git","svn_url":"https://github.com/akfish/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":6736,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":true,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"master_branch":"master","default_branch":"master","permissions":{"admin":true,"push":true,"pull":true},"network_count":70,"parent":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-08-21T20:32:08Z","pushed_at":"2013-08-21T20:31:45Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":7437,"watchers_count":248,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":70,"mirror_url":null,"open_issues_count":17,"forks":70,"open_issues":17,"watchers":248,"master_branch":"master","default_branch":"master"},"source":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-08-21T20:32:08Z","pushed_at":"2013-08-21T20:31:45Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":7437,"watchers_count":248,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":70,"mirror_url":null,"open_issues_count":17,"forks":70,"open_issues":17,"watchers":248,"master_branch":"master","default_branch":"master"}} + diff --git a/lib/github/tests/ReplayData/ConditionalRequestUpdate.testUpdateObjectWithoutEtag.txt b/lib/github/tests/ReplayData/ConditionalRequestUpdate.testUpdateObjectWithoutEtag.txt new file mode 100755 index 0000000000..3e6144f831 --- /dev/null +++ b/lib/github/tests/ReplayData/ConditionalRequestUpdate.testUpdateObjectWithoutEtag.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4911'), ('content-length', '1129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('date', 'Sun, 27 May 2012 07:17:09 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"clone_url":"https://github.com/jacquev6/PyGithub.git","has_downloads":true,"watchers":15,"git_url":"git://github.com/jacquev6/PyGithub.git","updated_at":"2012-05-27T06:55:28Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","mirror_url":null,"has_wiki":false,"has_issues":true,"fork":false,"forks":3,"size":308,"private":false,"open_issues":16,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-27T06:00:28Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"html_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4911'), ('content-length', '1129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('date', 'Sun, 27 May 2012 07:17:09 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"clone_url":"https://github.com/jacquev6/PyGithub.git","has_downloads":true,"watchers":15,"git_url":"git://github.com/jacquev6/PyGithub.git","updated_at":"2012-05-27T06:55:28Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","mirror_url":null,"has_wiki":false,"has_issues":true,"fork":false,"forks":3,"size":308,"private":false,"open_issues":16,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-27T06:00:28Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"html_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub"} + diff --git a/lib/github/tests/ReplayData/ContentFile.setUp.txt b/lib/github/tests/ReplayData/ContentFile.setUp.txt new file mode 100644 index 0000000000..8350fdbff3 --- /dev/null +++ b/lib/github/tests/ReplayData/ContentFile.setUp.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4995'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '806'), ('server', 'nginx/1.0.13'), ('last-modified', 'Wed, 05 Sep 2012 15:03:24 GMT'), ('connection', 'keep-alive'), ('etag', '"350294b94004d4bb252b6a432baa5744"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Sat, 08 Sep 2012 10:47:04 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"total_private_repos":5,"public_repos":11,"type":"User","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","owned_private_repos":5,"created_at":"2010-07-09T06:10:06Z","email":"vincent@vincent-jacques.net","public_gists":3,"company":"Criteo","blog":"http://vincent-jacques.net","hireable":false,"plan":{"space":614400,"collaborators":1,"name":"micro","private_repos":5},"followers":13,"html_url":"https://github.com/jacquev6","private_gists":5,"collaborators":0,"bio":"","name":"Vincent Jacques","url":"https://api.github.com/users/jacquev6","disk_usage":14640,"following":28,"location":"Paris, France","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4994'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '1239'), ('server', 'nginx/1.0.13'), ('last-modified', 'Fri, 07 Sep 2012 23:56:29 GMT'), ('connection', 'keep-alive'), ('etag', '"1d330cbc4cd990e379a33aedad5f6db5"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Sat, 08 Sep 2012 10:47:05 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"master_branch":"master","forks":16,"watchers_count":67,"has_downloads":true,"owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"},"open_issues_count":15,"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":true,"admin":true},"forks_count":16,"clone_url":"https://github.com/jacquev6/PyGithub.git","created_at":"2012-02-25T12:53:47Z","mirror_url":null,"network_count":16,"has_wiki":false,"watchers":67,"html_url":"https://github.com/jacquev6/PyGithub","size":228,"fork":false,"open_issues":15,"has_issues":true,"updated_at":"2012-09-07T23:56:29Z","full_name":"jacquev6/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","ssh_url":"git@github.com:jacquev6/PyGithub.git","git_url":"git://github.com/jacquev6/PyGithub.git","private":false,"id":3544490,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/jacquev6/PyGithub","pushed_at":"2012-09-07T23:56:29Z"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/readme +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4993'), ('x-ratelimit-limit', '5000'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '10787'), ('server', 'nginx/1.0.13'), ('last-modified', 'Wed, 05 Sep 2012 17:54:40 GMT'), ('connection', 'keep-alive'), ('etag', '"71786feb5f476112c5a8aa894ee7ca6c"'), ('cache-control', 'private, s-maxage=60, max-age=60'), ('date', 'Sat, 08 Sep 2012 10:47:05 GMT'), ('x-github-media-type', 'github.beta; format=json'), ('content-type', 'application/json; charset=utf-8')] +{"type":"file","sha":"5628799a7d517a4aaa0c1a7004d07569cd154df0","path":"ReadMe.md","encoding":"base64","content":"VGhpcyBpcyBhIFB5dGhvbiBsaWJyYXJ5IHRvIGFjY2VzcyB0aGUgW0dpdGh1\nYiBBUEkgdjNdKGh0dHA6Ly9kZXZlbG9wZXIuZ2l0aHViLmNvbS92MykuCgpX\naXRoIGl0LCB5b3UgY2FuIG1hbmFnZSB5b3VyIFtHaXRodWJdKGh0dHA6Ly9n\naXRodWIuY29tKSByZXNvdXJjZXMgKHJlcG9zaXRvcmllcywgdXNlciBwcm9m\naWxlcywgb3JnYW5pemF0aW9ucywgZXRjLikgZnJvbSBQeXRob24gc2NyaXB0\ncy4KCkl0IGNvdmVycyB0aGUgKipmdWxsKiogQVBJLCBhbmQgYWxsIG1ldGhv\nZHMgYXJlIHRlc3RlZCBhZ2FpbnN0IHRoZSByZWFsIEdpdGh1YiBzaXRlLgoK\nU2hvdWxkIHlvdSBoYXZlIGFueSBxdWVzdGlvbiwgb3IgaWYgeW91IGZpbmQg\nYSBidWcsIG9yIGlmIHRoZXJlIGlzIHNvbWV0aGluZyB5b3UgY2FuIGRvIHdp\ndGggdGhlIEFQSSBidXQgbm90IHdpdGggUHlHaXRodWIsIHBsZWFzZSBbb3Bl\nbiBhbiBpc3N1ZV0oaHR0cHM6Ly9naXRodWIuY29tL2phY3F1ZXY2L1B5R2l0\naHViL2lzc3VlcykuCgpQeUdpdGh1YiBpcyBzdGFibGUuIEkgd2lsbCBtYWlu\ndGFpbiBpdCB1cCB0byBkYXRlIHdpdGggdGhlIEFQSSwgYW5kIGZpeCBidWdz\nIGlmIGFueSwgYnV0IEkgZG9uJ3QgcGxhbiBuZXcgaGVhdnkgZGV2ZWxvcG1l\nbnRzLgoKRG93bmxvYWQgYW5kIGluc3RhbGwKPT09PT09PT09PT09PT09PT09\nPT0KClRoaXMgcGFja2FnZSBpcyBpbiB0aGUgW1B5dGhvbiBQYWNrYWdlIElu\nZGV4XShodHRwOi8vcHlwaS5weXRob24ub3JnL3B5cGkvUHlHaXRodWIpLCBz\nbyBgZWFzeV9pbnN0YWxsIFB5R2l0aHViYCBvciBgcGlwIGluc3RhbGwgUHlH\naXRodWJgIHNob3VsZCBiZSBlbm91Z2guCllvdSBjYW4gYWxzbyBjbG9uZSBp\ndCBvbiBbR2l0aHViXShodHRwOi8vZ2l0aHViLmNvbS9qYWNxdWV2Ni9QeUdp\ndGh1YikuCgpUdXRvcmlhbAo9PT09PT09PQoKRmlyc3QgY3JlYXRlIGEgR2lo\ndHViIGluc3RhbmNlOgoKICAgIGZyb20gZ2l0aHViIGltcG9ydCBHaXRodWIK\nCiAgICBnID0gR2l0aHViKCAidXNlciIsICJwYXNzd29yZCIgKQoKVGhlbiBw\nbGF5IHdpdGggeW91ciBHaXRodWIgb2JqZWN0czoKCiAgICBmb3IgcmVwbyBp\nbiBnLmdldF91c2VyKCkuZ2V0X3JlcG9zKCk6CiAgICAgICAgcHJpbnQgcmVw\nby5uYW1lCiAgICAgICAgcmVwby5lZGl0KCBoYXNfd2lraSA9IEZhbHNlICkK\nCllvdSBjYW4gYWxzbyBjcmVhdGUgYSBHaXRodWIgaW5zdGFuY2Ugd2l0aCBh\nbiBPQXV0aCB0b2tlbjoKCiAgICBnID0gR2l0aHViKCB0b2tlbiApCgpPciB3\naXRob3V0IGF1dGhlbnRpY2F0aW9uOgoKICAgIGcgPSBHaXRodWIoKQoKTGlj\nZW5zaW5nCj09PT09PT09PQoKUHlHaXRodWIgaXMgZGlzdHJpYnV0ZWQgdW5k\nZXIgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5jZS4KU2Vl\nIGZpbGVzIENPUFlJTkcgYW5kIENPUFlJTkcuTEVTU0VSLCBhcyByZXF1ZXN0\nZWQgYnkgW0dOVV0oaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2dwbC1o\nb3d0by5odG1sKS4KClByb2plY3RzIHVzaW5nIFB5R2l0aHViCj09PT09PT09\nPT09PT09PT09PT09PT09CgooW09wZW4gYW4gaXNzdWVdKGh0dHBzOi8vZ2l0\naHViLmNvbS9qYWNxdWV2Ni9QeUdpdGh1Yi9pc3N1ZXMpIGlmIHlvdSB3YW50\nIHRvIGJlIGxpc3RlZCBoZXJlLCBJJ2xsIGJlIGdsYWQgdG8gYWRkIHlvdXIg\ncHJvamVjdCkKCiogW1VwdmVydGVyXShodHRwczovL3VwdmVydGVyLmNvbSkg\naXMgYSB3ZWItYmFzZWQgc2NoZW1hdGljIGNhcHR1cmUgYW5kIFBDQiBsYXlv\ndXQgdG9vbCBmb3IgcGVvcGxlIHdobyBkZXNpZ24gZWxlY3Ryb25pY3MuIERl\nc2lnbmVycyBjYW4gYXR0YWNoIGEgR2l0aHViIHByb2plY3QgdG8gYW4gVXB2\nZXJ0ZXIgcHJvamVjdC4KKiBbVHJhdGlodWJpc10oaHR0cDovL3B5cGkucHl0\naG9uLm9yZy9weXBpL3RyYXRpaHViaXMvKSBjb252ZXJ0cyBUcmFjIHRpY2tl\ndHMgdG8gR2l0aHViIGlzc3VlcwoKSGlzdG9yeQo9PT09PT09CgpbVmVyc2lv\nbiAxLjVdKGh0dHBzOi8vZ2l0aHViLmNvbS9qYWNxdWV2Ni9QeUdpdGh1Yi9p\nc3N1ZXM/bWlsZXN0b25lPTkmc3RhdGU9Y2xvc2VkKSAoU2VwdGVtYmVyIDV0\naCwgMjAxMikKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoqIEFkZCBhIHRpbWVvdXQgb3B0\naW9uLCB0aGFuayB5b3UgbXVjaCBbeG9iYjF0XShodHRwczovL2dpdGh1Yi5j\nb20veG9iYjF0KSBmb3IgdGhlIG1lcmdlIHJlcXVlc3QuICpUaGlzIGRyb3Bz\nIFB5dGhvbiAyLjUgc3VwcG9ydCouIEkgbWF5IGJlIGFibGUgdG8gcmVzdG9y\nZSBpdCBpbiBuZXh0IHZlcnNpb24uCiogSW1wbGVtZW50IGBSZXBvc2l0b3J5\nLmRlbGV0ZWAsIHRoYW5rIHlvdSBbcG1jaGVuXShodHRwczovL2dpdGh1Yi5j\nb20vcG1jaGVuKSBmb3IgYXNraW5nCgpbVmVyc2lvbiAxLjRdKGh0dHBzOi8v\nZ2l0aHViLmNvbS9qYWNxdWV2Ni9QeUdpdGh1Yi9pc3N1ZXM/bWlsZXN0b25l\nPTgmc3RhdGU9Y2xvc2VkKSAoQXVndXN0IDR0aCwgMjAxMikKLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tCgoqIEFsbG93IGNvbm5lY3Rpb24gdG8gYSBjdXN0b20gR2l0aHViIFVS\nTCwgZm9yIEdpdGh1YiBFbnRlcnByaXNlLCB0aGFuayB5b3UgdmVyeSBtdWNo\nIFtlbmdpZV0oaHR0cHM6Ly9naXRodWIuY29tL2VuZ2llKSBmb3IgdGhlIG1l\ncmdlIHJlcXVlc3QKCltWZXJzaW9uIDEuM10oaHR0cHM6Ly9naXRodWIuY29t\nL2phY3F1ZXY2L1B5R2l0aHViL2lzc3Vlcz9taWxlc3RvbmU9NyZzdGF0ZT1j\nbG9zZWQpIChKdWx5IDEzdGgsIDIwMTIpCi0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoqIEltcGxl\nbWVudCBbbWFya2Rvd24gcmVuZGVyaW5nXShodHRwOi8vZGV2ZWxvcGVyLmdp\ndGh1Yi5jb20vdjMvbWFya2Rvd24vKQoqIGBHaXRBdXRob3IuZGF0ZWAgaXMg\nbm93IGEgZGF0ZXRpbWUsIHRoYW5rIHlvdSBbYmlsZGVyYnVjaGldKGh0dHBz\nOi8vZ2l0aHViLmNvbS9iaWxkZXJidWNoaSkKKiBGaXggZG9jdW1lbnRhdGlv\nbiBvZiBgR2l0aHViLmdldF9naXN0YDogYGlkYCBpcyBhIHN0cmluZywgbm90\nIGFuIGludGVnZXIKCltWZXJzaW9uIDEuMl0oaHR0cHM6Ly9naXRodWIuY29t\nL2phY3F1ZXY2L1B5R2l0aHViL2lzc3Vlcz9taWxlc3RvbmU9NiZzdGF0ZT1j\nbG9zZWQpIChKdW5lIDI5dGgsIDIwMTIpCi0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoqIEltcGxl\nbWVudCBbbGVnYWN5IHNlYXJjaCBBUElzXShodHRwOi8vZGV2ZWxvcGVyLmdp\ndGh1Yi5jb20vdjMvc2VhcmNoLyksIHRoYW5rIHlvdSBba3VrdXRzXShodHRw\nczovL2dpdGh1Yi5jb20va3VrdXRzKSBmb3IgdGVsbGluZyBtZSBHaXRodWIg\naGFkIHJlbGVhc2VkIHRoZW0KKiBGaXggYSBidWcgd2l0aCBpc3N1ZSBsYWJl\nbHMgY29udGFpbmluZyBzcGFjZXMsIHRoYW5rIHlvdSBbcGhpbGlwa2ltbWV5\nXShodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwa2ltbWV5KSBmb3IgZGV0ZWN0\naW5nIHRoZSBidWcgYW5kIGZpeGluZyBpdAoqIENsYXJpZnkgaG93IGNvbGxl\nY3Rpb25zIG9mIG9iamVjdHMgYXJlIHJldHVybmVkIGJ5IGBnZXRfKmAgbWV0\naG9kcywgdGhhbmsgeW91IFtiaWxkZXJidWNoaV0oaHR0cHM6Ly9naXRodWIu\nY29tL2JpbGRlcmJ1Y2hpKSBmb3IgYXNraW5nCgpWZXJzaW9uIDEuMSAoSnVu\nZSAyMHRoLCAyMDEyKQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoK\nKiBSZXN0b3JlIGNvbXBhdGliaWxpdHkgd2l0aCBQeXRob24gMi41LCB0aGFu\nayB5b3UgW3BtdWlsdV0oaHR0cHM6Ly9naXRodWIuY29tL3BtdWlsdSkKKiBV\nc2UgYHBhY2thZ2VfZGF0YWAgaW5zdGVhZCBvZiBgZGF0YV9maWxlc2AgZm9y\nIGRvY3VtZW50YXRpb24gZmlsZXMgaW4gYHNldHVwLnB5YCwgdGhhbmsgeW91\nIFttYWxleHddKGh0dHBzOi8vZ2l0aHViLmNvbS9tYWxleHcpIGZvciByZXBv\ncnRpbmcKCltWZXJzaW9uIDEuMF0oaHR0cHM6Ly9naXRodWIuY29tL2phY3F1\nZXY2L1B5R2l0aHViL2lzc3Vlcz9taWxlc3RvbmU9MiZzdGF0ZT1jbG9zZWQp\nIChKdW5lIDNyZCwgMjAxMikKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKKiBDb21wbGV0ZSByZXdy\naXRlLCB3aXRoIG5vIG1vcmUgY29tcGxpY2F0ZWQgbWV0YS1kZXNjcmlwdGlv\nbgoqIEZ1bGwgdHlwaW5nIG9mIGF0dHJpYnV0ZXMgYW5kIHBhcmFtZXRlcnMK\nKiBGdWxsIGRvY3VtZW50YXRpb24gb2YgYXR0cmlidXRlcyBhbmQgcGFyYW1l\ndGVycwoqIE1vcmUgdXNhYmxlIGV4Y2VwdGlvbnMgcmFpc2VkIGluIGNhc2Ug\nb24gcHJvYmxlbXMgd2l0aCB0aGUgQVBJCiogU29tZSBidWdzIGFuZCBsaW1p\ndGF0aW9ucyBmaXhlZCwgc3BlY2lhbCB0aGFua3MgdG8gW2JpbGRlcmJ1Y2hp\nXShodHRwczovL2dpdGh1Yi5jb20vYmlsZGVyYnVjaGkpLCBbcm9za2Frb3Jp\nXShodHRwczovL2dpdGh1Yi5jb20vcm9za2Frb3JpKSBhbmQgW3RhbGxmb3Jh\nc211cmZdKGh0dHBzOi8vZ2l0aHViLmNvbS90YWxsZm9yYXNtdXJmKSBmb3Ig\ncmVwb3J0aW5nIHRoZW0hCgpbVmVyc2lvbiAwLjddKGh0dHBzOi8vZ2l0aHVi\nLmNvbS9qYWNxdWV2Ni9QeUdpdGh1Yi9pc3N1ZXM/bWlsZXN0b25lPTUmc3Rh\ndGU9Y2xvc2VkKSAoTWF5IDI2dGgsIDIwMTIpCi0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiogVXNl\nIFB5R2l0aHViIHdpdGggT0F1dGggYXV0aGVudGljYXRpb24gb3Igd2l0aCBu\nbyBhdXRoZW50aWNhdGlvbiBhdCBhbGwKCltWZXJzaW9uIDAuNl0oaHR0cHM6\nLy9naXRodWIuY29tL2phY3F1ZXY2L1B5R2l0aHViL2lzc3Vlcz9taWxlc3Rv\nbmU9NCZzdGF0ZT1jbG9zZWQpIChBcHJpbCAxN3RoLCAyMDEyKQotLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0KCiogRml4IFtpc3N1ZSAyMV0oaHR0cHM6Ly9naXRodWIuY29tL2ph\nY3F1ZXY2L1B5R2l0aHViL2lzc3Vlcy8yMSkgKEtleUVycm9yIHdoZW4gYWNj\nZXNzaW5nIHJlcG9zaXRvcmllcykKKiBSZS1jb21wbGV0ZWQgdGhlIEFQSSB3\naXRoIE5hbWVkVXNlci5jcmVhdGVfZ2lzdAoKCltWZXJzaW9uIDAuNV0oaHR0\ncHM6Ly9naXRodWIuY29tL2phY3F1ZXY2L1B5R2l0aHViL2lzc3Vlcz9taWxl\nc3RvbmU9MyZzdGF0ZT1jbG9zZWQpIChNYXJjaCAxOXRoLCAyMDEyKQotLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0KCiogTWFqb3IgYWNoaWV2ZW1lbnQ6ICoqYWxsIEFQSXMgYXJl\nIGltcGxlbWVudGVkKioKKiBNb3JlIHJlZmFjdG9yaW5nLCBvZiBjb3Vyc2UK\nCltWZXJzaW9uIDAuNF0oaHR0cHM6Ly9naXRodWIuY29tL2phY3F1ZXY2L1B5\nR2l0aHViL2lzc3Vlcz9taWxlc3RvbmU9MSZzdGF0ZT1jbG9zZWQpIChNYXJj\naCAxMnRoLCAyMDEyKQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiogVGhlIGxpc3Qgb2YgdGhl\nIG5vdCBpbXBsZW1lbnRlZCBBUElzIGlzIHNob3J0ZXIgdGhhbiB0aGUgbGlz\ndCBvZiB0aGUgaW1wbGVtZW50ZWQgQVBJcwoqIEFQSXMgKm5vdCBpbXBsZW1l\nbnRlZCo6CiAgICAqIEdFVCBgL2dpc3RzL3B1YmxpY2AKICAgICogR0VUIGAv\naXNzdWVzYAogICAgKiBHRVQgYC9yZXBvcy86dXNlci86cmVwby9jb21wYXJl\nLzpiYXNlLi4uOmhlYWRgCiAgICAqIEdFVCBgL3JlcG9zLzp1c2VyLzpyZXBv\nL2dpdC90cmVlcy86c2hhP3JlY3Vyc2l2ZT0xYAogICAgKiBQT1NUIGAvcmVw\nb3MvOnVzZXIvOnJlcG8vZ2l0L3RyZWVzP2Jhc2VfdHJlZT1gCiogR2lzdHMK\nKiBBdXRvcml6YXRpb25zCiogS2V5cwoqIEhvb2tzCiogRXZlbnRzCiogTWVy\nZ2UgcHVsbCByZXF1ZXN0cwoqIE1vcmUgcmVmYWN0b3JpbmcsIG9uZSBtb3Jl\nIHRpbWUKClZlcnNpb24gMC4zIChGZWJydWFyeSAyNnRoLCAyMDEyKQotLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiogTW9yZSByZWZhY3Rv\ncmluZwoqIElzc3VlcywgbWlsZXN0b25lcyBhbmQgdGhlaXIgbGFiZWxzCiog\nTmFtZWRVc2VyOgogICAgKiBlbWFpbHMKKiBSZXBvc2l0b3J5OgogICAgKiBk\nb3dubG9hZHMKICAgICogdGFncywgYnJhbmNoZXMsIGNvbW1pdHMgYW5kIGNv\nbW1lbnRzIChub3QgdGhlIHNhbWUgYXMgIkdpdCBvYmplY3RzIiBvZiB2ZXJz\naW9uIDAuMikKICAgICogcHVsbCByZXF1ZXN0cyAobm8gYXV0b21hdGljIG1l\ncmdlIHlldCkKKiBBdXRvbWF0aWMgZ2VuZXJhdGlvbiBvZiB0aGUgcmVmZXJl\nbmNlIGRvY3VtZW50YXRpb24gb2YgY2xhc3Nlcywgd2l0aCBsZXNzICJzZWUg\nQVBJInMsIGFuZCBsZXNzIGVycm9ycwoKVmVyc2lvbiAwLjIgKEZlYnJ1YXJ5\nIDIzcmQsIDIwMTIpCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLQoKKiBSZWZhY3RvcmluZwoqIFRlYW1zIGRldGFpbHMgYW5kIG1vZGlmaWNh\ndGlvbgogICAgKiBiYXNpYyBhdHRyaWJ1dGVzCiAgICAqIGxpc3QgdGVhbXMg\naW4gb3JnYW5pemF0aW9ucywgb24gcmVwb3NpdG9yaWVzCiogR2l0IG9iamVj\ndHMKICAgICogY3JlYXRlIGFuZCBnZXQgdGFncywgcmVmZXJlbmNlcywgY29t\nbWl0cywgdHJlZXMsIGJsb2JzCiAgICAqIGxpc3QgYW5kIGVkaXQgcmVmZXJl\nbmNlcwoKVmVyc2lvbiAwLjEgKEZlYnJ1YXJ5IDE5dGgsIDIwMTIpCi0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKKiBVc2VyIGRldGFpbHMg\nYW5kIG1vZGlmaWNhdGlvbgogICAgKiBiYXNpYyBhdHRyaWJ1dGVzCiAgICAq\nIGZvbGxvd2VycywgZm9sbG93aW5nLCB3YXRjaGluZwogICAgKiBvcmdhbml6\nYXRpb25zCiAgICAqIHJlcG9zaXRvcmllcwoqIFJlcG9zaXRvcnkgZGV0YWls\ncyBhbmQgbW9kaWZpY2F0aW9uCiAgICAqIGJhc2ljIGF0dHJpYnV0ZXMKICAg\nICogZm9ya2luZwogICAgKiBjb2xsYWJvcmF0b3JzLCBjb250cmlidXRvcnMs\nIHdhdGNoZXJzCiogT3JnYW5pemF0aW9uIGRldGFpbHMgYW5kIG1vZGlmaWNh\ndGlvbgogICAgKiBiYXNpYyBhdHRyaWJ1dGVzCiAgICAqIG1lbWJlcnMgYW5k\nIHB1YmxpYyBtZW1iZXJzCg==\n","size":7531,"name":"ReadMe.md","_links":{"self":"https://api.github.com/repos/jacquev6/PyGithub/contents/ReadMe.md","html":"https://github.com/jacquev6/PyGithub/blob/master/ReadMe.md","git":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/5628799a7d517a4aaa0c1a7004d07569cd154df0"}} + diff --git a/lib/github/tests/ReplayData/Download.setUp.txt b/lib/github/tests/ReplayData/Download.setUp.txt new file mode 100644 index 0000000000..a3a1a04e9e --- /dev/null +++ b/lib/github/tests/ReplayData/Download.setUp.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4953'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"e1a1f6f825326642be4ed8e6f8427437"'), ('date', 'Tue, 22 May 2012 19:15:57 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","disk_usage":16849,"bio":"","url":"https://api.github.com/users/jacquev6","total_private_repos":5,"plan":{"private_repos":5,"collaborators":1,"name":"micro","space":614400},"owned_private_repos":5,"public_repos":11,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","public_gists":1,"company":"Criteo","login":"jacquev6","email":"vincent@vincent-jacques.net","private_gists":5,"collaborators":0,"name":"Vincent Jacques","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","html_url":"https://github.com/jacquev6","created_at":"2010-07-09T06:10:06Z","blog":"http://vincent-jacques.net","location":"Paris, France","id":327146,"followers":13,"following":24,"hireable":false} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4952'), ('content-length', '1097'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"c26fc3fce8f52d05f1adf2025bfe34ab"'), ('date', 'Tue, 22 May 2012 19:15:58 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"pushed_at":"2012-05-21T13:48:43Z","updated_at":"2012-05-22T19:15:29Z","homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","has_downloads":true,"watchers":13,"permissions":{"pull":true,"admin":true,"push":true},"fork":false,"svn_url":"https://github.com/jacquev6/PyGithub","has_wiki":false,"has_issues":true,"size":181,"private":false,"forks":2,"owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","clone_url":"https://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","html_url":"https://github.com/jacquev6/PyGithub","created_at":"2012-02-25T12:53:47Z","id":3544490,"open_issues":17,"mirror_url":null,"git_url":"git://github.com/jacquev6/PyGithub.git"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/downloads/242550 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4960'), ('content-length', '290'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"6d8a8b9509b1686543a96ec3c58b0293"'), ('date', 'Tue, 22 May 2012 19:03:36 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"content_type":"text/plain","download_count":0,"url":"https://api.github.com/repos/jacquev6/PyGithub/downloads/242550","size":1024,"name":"Foobar.txt","created_at":"2012-05-22T18:58:32Z","description":null,"html_url":"https://github.com/downloads/jacquev6/PyGithub/Foobar.txt","id":242550} + diff --git a/lib/github/tests/ReplayData/Download.testDelete.txt b/lib/github/tests/ReplayData/Download.testDelete.txt new file mode 100644 index 0000000000..226108e9a4 --- /dev/null +++ b/lib/github/tests/ReplayData/Download.testDelete.txt @@ -0,0 +1,11 @@ +https +DELETE +api.github.com +None +/repos/jacquev6/PyGithub/downloads/242550 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4950'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Tue, 22 May 2012 19:16:03 GMT')] + + diff --git a/lib/github/tests/ReplayData/Enterprise.testHttp.txt b/lib/github/tests/ReplayData/Enterprise.testHttp.txt new file mode 100644 index 0000000000..6fad65b480 --- /dev/null +++ b/lib/github/tests/ReplayData/Enterprise.testHttp.txt @@ -0,0 +1,11 @@ +http +GET +my.enterprise.com +None +/user/repos +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4961'), ('content-length', '17939'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"3d6116bc986eb0698f0dfe92a01b2437"'), ('date', 'Sat, 26 May 2012 20:19:00 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"clone_url":"https://github.com/jacquev6/TestPyGithub.git","mirror_url":null,"has_downloads":false,"watchers":1,"updated_at":"2012-05-26T09:55:27Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://foobar.com","url":"https://api.github.com/repos/jacquev6/TestPyGithub","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":0,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/TestPyGithub","git_url":"git://github.com/jacquev6/TestPyGithub.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"TestPyGithub","language":null,"description":"Repo created by PyGithub","ssh_url":"git@github.com:jacquev6/TestPyGithub.git","pushed_at":"2012-05-26T09:55:27Z","created_at":"2012-05-26T09:55:27Z","id":4454027,"html_url":"https://github.com/jacquev6/TestPyGithub","full_name":"jacquev6/TestPyGithub"},{"clone_url":"https://github.com/jacquev6/django.git","mirror_url":null,"has_downloads":true,"watchers":1,"updated_at":"2012-04-28T11:06:20Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://www.djangoproject.com/","url":"https://api.github.com/repos/jacquev6/django","has_wiki":false,"has_issues":false,"fork":true,"forks":0,"size":48476,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/django","git_url":"git://github.com/jacquev6/django.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"django","language":"Python","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","ssh_url":"git@github.com:jacquev6/django.git","pushed_at":"2012-04-28T04:05:15Z","created_at":"2012-04-28T11:06:20Z","id":4166730,"html_url":"https://github.com/jacquev6/django","full_name":"jacquev6/django"},{"clone_url":"https://github.com/jacquev6/PyGithub.git","mirror_url":null,"has_downloads":true,"watchers":14,"updated_at":"2012-05-26T18:33:41Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","has_wiki":false,"has_issues":true,"fork":false,"forks":2,"size":412,"private":false,"open_issues":15,"svn_url":"https://github.com/jacquev6/PyGithub","git_url":"git://github.com/jacquev6/PyGithub.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-26T11:25:48Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"html_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub"},{"clone_url":"https://github.com/jacquev6/developer.github.com.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-05-08T08:36:28Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/jacquev6/developer.github.com","has_wiki":false,"has_issues":false,"fork":true,"forks":0,"size":152,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/developer.github.com","git_url":"git://github.com/jacquev6/developer.github.com.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"developer.github.com","language":"Ruby","description":"","ssh_url":"git@github.com:jacquev6/developer.github.com.git","pushed_at":"2012-05-08T08:36:28Z","created_at":"2012-02-05T18:22:26Z","id":3361136,"html_url":"https://github.com/jacquev6/developer.github.com","full_name":"jacquev6/developer.github.com"},{"clone_url":"https://github.com/jacquev6/acme-public-website.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-05-22T18:24:49Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/jacquev6/acme-public-website","has_wiki":false,"has_issues":false,"fork":false,"forks":0,"size":120,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/acme-public-website","git_url":"git://github.com/jacquev6/acme-public-website.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"acme-public-website","language":null,"description":"","ssh_url":"git@github.com:jacquev6/acme-public-website.git","pushed_at":"2011-12-07T20:11:17Z","created_at":"2011-12-07T20:00:40Z","id":2935252,"html_url":"https://github.com/jacquev6/acme-public-website","full_name":"jacquev6/acme-public-website"},{"clone_url":"https://github.com/jacquev6/C4Planner.git","mirror_url":null,"has_downloads":true,"watchers":1,"updated_at":"2012-02-16T21:51:01Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/C4Planner","url":"https://api.github.com/repos/jacquev6/C4Planner","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":4716,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/C4Planner","git_url":"git://github.com/jacquev6/C4Planner.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"C4Planner","language":"Python","description":"Caesar IV: anticipate your city","ssh_url":"git@github.com:jacquev6/C4Planner.git","pushed_at":"2011-11-27T20:51:06Z","created_at":"2011-08-24T08:30:55Z","id":2260441,"html_url":"https://github.com/jacquev6/C4Planner","full_name":"jacquev6/C4Planner"},{"clone_url":"https://github.com/jacquev6/Hacking.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-04-24T13:55:11Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/jacquev6/Hacking","has_wiki":false,"has_issues":false,"fork":false,"forks":0,"size":128,"private":true,"open_issues":0,"svn_url":"https://github.com/jacquev6/Hacking","git_url":"git://github.com/jacquev6/Hacking.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"Hacking","language":"Python","description":"","ssh_url":"git@github.com:jacquev6/Hacking.git","pushed_at":"2012-04-17T19:09:56Z","created_at":"2011-07-02T15:59:51Z","id":1988081,"html_url":"https://github.com/jacquev6/Hacking","full_name":"jacquev6/Hacking"},{"clone_url":"https://github.com/jacquev6/vincent-jacques.net.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-04-29T15:20:52Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"vincent-jacques.net","url":"https://api.github.com/repos/jacquev6/vincent-jacques.net","has_wiki":false,"has_issues":false,"fork":false,"forks":0,"size":172,"private":true,"open_issues":0,"svn_url":"https://github.com/jacquev6/vincent-jacques.net","git_url":"git://github.com/jacquev6/vincent-jacques.net.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"vincent-jacques.net","language":"Python","description":"","ssh_url":"git@github.com:jacquev6/vincent-jacques.net.git","pushed_at":"2012-04-29T15:20:52Z","created_at":"2011-07-02T07:08:56Z","id":1986874,"html_url":"https://github.com/jacquev6/vincent-jacques.net","full_name":"jacquev6/vincent-jacques.net"},{"clone_url":"https://github.com/jacquev6/Contests.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-02-12T07:18:09Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"Contests","url":"https://api.github.com/repos/jacquev6/Contests","has_wiki":false,"has_issues":false,"fork":false,"forks":0,"size":448,"private":true,"open_issues":0,"svn_url":"https://github.com/jacquev6/Contests","git_url":"git://github.com/jacquev6/Contests.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"Contests","language":"Python","description":"","ssh_url":"git@github.com:jacquev6/Contests.git","pushed_at":"2011-11-14T20:19:48Z","created_at":"2011-06-27T11:55:34Z","id":1959919,"html_url":"https://github.com/jacquev6/Contests","full_name":"jacquev6/Contests"},{"clone_url":"https://github.com/jacquev6/Candidates.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-05-11T13:50:37Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/jacquev6/Candidates","has_wiki":false,"has_issues":false,"fork":false,"forks":0,"size":700,"private":true,"open_issues":0,"svn_url":"https://github.com/jacquev6/Candidates","git_url":"git://github.com/jacquev6/Candidates.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"Candidates","language":"C++","description":"","ssh_url":"git@github.com:jacquev6/Candidates.git","pushed_at":"2012-05-11T13:50:36Z","created_at":"2011-04-09T18:24:08Z","id":1592290,"html_url":"https://github.com/jacquev6/Candidates","full_name":"jacquev6/Candidates"},{"clone_url":"https://github.com/jacquev6/Tests.git","mirror_url":null,"has_downloads":true,"watchers":0,"updated_at":"2012-04-28T10:16:42Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/jacquev6/Tests","has_wiki":false,"has_issues":false,"fork":false,"forks":0,"size":3032,"private":true,"open_issues":0,"svn_url":"https://github.com/jacquev6/Tests","git_url":"git://github.com/jacquev6/Tests.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"Tests","language":"C","description":"Various tests","ssh_url":"git@github.com:jacquev6/Tests.git","pushed_at":"2012-04-01T04:24:47Z","created_at":"2011-03-28T20:24:02Z","id":1538471,"html_url":"https://github.com/jacquev6/Tests","full_name":"jacquev6/Tests"},{"clone_url":"https://github.com/jacquev6/DrawTurksHead.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-04-16T18:38:55Z","permissions":{"pull":true,"admin":true,"push":true},"master_branch":"master","homepage":"http://vincent-jacques.net/DrawTurksHead/","url":"https://api.github.com/repos/jacquev6/DrawTurksHead","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":3232,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/DrawTurksHead","git_url":"git://github.com/jacquev6/DrawTurksHead.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"DrawTurksHead","language":"C++","description":"A tool to draw Turk's Head Knots. Try it online","ssh_url":"git@github.com:jacquev6/DrawTurksHead.git","pushed_at":"2012-04-16T18:38:54Z","created_at":"2010-07-10T08:54:09Z","id":767403,"html_url":"https://github.com/jacquev6/DrawTurksHead","full_name":"jacquev6/DrawTurksHead"},{"clone_url":"https://github.com/jacquev6/DrawSyntax.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2011-11-27T14:00:34Z","permissions":{"pull":true,"admin":true,"push":true},"master_branch":"master","homepage":"http://vincent-jacques.net/DrawSyntax/","url":"https://api.github.com/repos/jacquev6/DrawSyntax","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":1760,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/DrawSyntax","git_url":"git://github.com/jacquev6/DrawSyntax.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"DrawSyntax","language":"C++","description":"Draw syntax diagrams from EBNF grammars. API in C++ and Python. Try it online.","ssh_url":"git@github.com:jacquev6/DrawSyntax.git","pushed_at":"2011-11-27T14:00:32Z","created_at":"2010-07-10T08:39:56Z","id":767392,"html_url":"https://github.com/jacquev6/DrawSyntax","full_name":"jacquev6/DrawSyntax"},{"clone_url":"https://github.com/jacquev6/QuadProgMm.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-04-16T18:39:06Z","permissions":{"pull":true,"admin":true,"push":true},"master_branch":"master","homepage":"http://vincent-jacques.net/QuadProgMm","url":"https://api.github.com/repos/jacquev6/QuadProgMm","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":760,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/QuadProgMm","git_url":"git://github.com/jacquev6/QuadProgMm.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"QuadProgMm","language":"C++","description":"A C++ interface to specify quadratic problems by C++ expressions of your variables. Try it online.","ssh_url":"git@github.com:jacquev6/QuadProgMm.git","pushed_at":"2012-04-16T18:39:05Z","created_at":"2010-07-10T08:36:57Z","id":767386,"html_url":"https://github.com/jacquev6/QuadProgMm","full_name":"jacquev6/QuadProgMm"},{"clone_url":"https://github.com/jacquev6/Boost.HierarchicalEnum.git","mirror_url":null,"has_downloads":false,"watchers":2,"updated_at":"2012-02-20T12:43:24Z","permissions":{"pull":true,"admin":true,"push":true},"master_branch":"master","homepage":"","url":"https://api.github.com/repos/jacquev6/Boost.HierarchicalEnum","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":112,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/Boost.HierarchicalEnum","git_url":"git://github.com/jacquev6/Boost.HierarchicalEnum.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"Boost.HierarchicalEnum","language":"C++","description":"","ssh_url":"git@github.com:jacquev6/Boost.HierarchicalEnum.git","pushed_at":"2011-11-27T14:00:23Z","created_at":"2010-07-10T08:32:12Z","id":767382,"html_url":"https://github.com/jacquev6/Boost.HierarchicalEnum","full_name":"jacquev6/Boost.HierarchicalEnum"},{"clone_url":"https://github.com/jacquev6/ViDE.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-04-19T16:35:46Z","permissions":{"pull":true,"admin":true,"push":true},"master_branch":"master","homepage":"","url":"https://api.github.com/repos/jacquev6/ViDE","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":1488,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/ViDE","git_url":"git://github.com/jacquev6/ViDE.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"ViDE","language":"Python","description":"Vincent's Development Environment","ssh_url":"git@github.com:jacquev6/ViDE.git","pushed_at":"2012-04-19T16:35:45Z","created_at":"2010-07-10T07:33:24Z","id":767343,"html_url":"https://github.com/jacquev6/ViDE","full_name":"jacquev6/ViDE"}] + diff --git a/lib/github/tests/ReplayData/Enterprise.testHttps.txt b/lib/github/tests/ReplayData/Enterprise.testHttps.txt new file mode 100644 index 0000000000..1fa7d31a93 --- /dev/null +++ b/lib/github/tests/ReplayData/Enterprise.testHttps.txt @@ -0,0 +1,11 @@ +https +GET +my.enterprise.com +None +/user/repos +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4961'), ('content-length', '17939'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"3d6116bc986eb0698f0dfe92a01b2437"'), ('date', 'Sat, 26 May 2012 20:19:00 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"clone_url":"https://github.com/jacquev6/TestPyGithub.git","mirror_url":null,"has_downloads":false,"watchers":1,"updated_at":"2012-05-26T09:55:27Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://foobar.com","url":"https://api.github.com/repos/jacquev6/TestPyGithub","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":0,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/TestPyGithub","git_url":"git://github.com/jacquev6/TestPyGithub.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"TestPyGithub","language":null,"description":"Repo created by PyGithub","ssh_url":"git@github.com:jacquev6/TestPyGithub.git","pushed_at":"2012-05-26T09:55:27Z","created_at":"2012-05-26T09:55:27Z","id":4454027,"html_url":"https://github.com/jacquev6/TestPyGithub","full_name":"jacquev6/TestPyGithub"},{"clone_url":"https://github.com/jacquev6/django.git","mirror_url":null,"has_downloads":true,"watchers":1,"updated_at":"2012-04-28T11:06:20Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://www.djangoproject.com/","url":"https://api.github.com/repos/jacquev6/django","has_wiki":false,"has_issues":false,"fork":true,"forks":0,"size":48476,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/django","git_url":"git://github.com/jacquev6/django.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"django","language":"Python","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","ssh_url":"git@github.com:jacquev6/django.git","pushed_at":"2012-04-28T04:05:15Z","created_at":"2012-04-28T11:06:20Z","id":4166730,"html_url":"https://github.com/jacquev6/django","full_name":"jacquev6/django"},{"clone_url":"https://github.com/jacquev6/PyGithub.git","mirror_url":null,"has_downloads":true,"watchers":14,"updated_at":"2012-05-26T18:33:41Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","has_wiki":false,"has_issues":true,"fork":false,"forks":2,"size":412,"private":false,"open_issues":15,"svn_url":"https://github.com/jacquev6/PyGithub","git_url":"git://github.com/jacquev6/PyGithub.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-26T11:25:48Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"html_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub"},{"clone_url":"https://github.com/jacquev6/developer.github.com.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-05-08T08:36:28Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/jacquev6/developer.github.com","has_wiki":false,"has_issues":false,"fork":true,"forks":0,"size":152,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/developer.github.com","git_url":"git://github.com/jacquev6/developer.github.com.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"developer.github.com","language":"Ruby","description":"","ssh_url":"git@github.com:jacquev6/developer.github.com.git","pushed_at":"2012-05-08T08:36:28Z","created_at":"2012-02-05T18:22:26Z","id":3361136,"html_url":"https://github.com/jacquev6/developer.github.com","full_name":"jacquev6/developer.github.com"},{"clone_url":"https://github.com/jacquev6/acme-public-website.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-05-22T18:24:49Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/jacquev6/acme-public-website","has_wiki":false,"has_issues":false,"fork":false,"forks":0,"size":120,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/acme-public-website","git_url":"git://github.com/jacquev6/acme-public-website.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"acme-public-website","language":null,"description":"","ssh_url":"git@github.com:jacquev6/acme-public-website.git","pushed_at":"2011-12-07T20:11:17Z","created_at":"2011-12-07T20:00:40Z","id":2935252,"html_url":"https://github.com/jacquev6/acme-public-website","full_name":"jacquev6/acme-public-website"},{"clone_url":"https://github.com/jacquev6/C4Planner.git","mirror_url":null,"has_downloads":true,"watchers":1,"updated_at":"2012-02-16T21:51:01Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/C4Planner","url":"https://api.github.com/repos/jacquev6/C4Planner","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":4716,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/C4Planner","git_url":"git://github.com/jacquev6/C4Planner.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"C4Planner","language":"Python","description":"Caesar IV: anticipate your city","ssh_url":"git@github.com:jacquev6/C4Planner.git","pushed_at":"2011-11-27T20:51:06Z","created_at":"2011-08-24T08:30:55Z","id":2260441,"html_url":"https://github.com/jacquev6/C4Planner","full_name":"jacquev6/C4Planner"},{"clone_url":"https://github.com/jacquev6/Hacking.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-04-24T13:55:11Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/jacquev6/Hacking","has_wiki":false,"has_issues":false,"fork":false,"forks":0,"size":128,"private":true,"open_issues":0,"svn_url":"https://github.com/jacquev6/Hacking","git_url":"git://github.com/jacquev6/Hacking.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"Hacking","language":"Python","description":"","ssh_url":"git@github.com:jacquev6/Hacking.git","pushed_at":"2012-04-17T19:09:56Z","created_at":"2011-07-02T15:59:51Z","id":1988081,"html_url":"https://github.com/jacquev6/Hacking","full_name":"jacquev6/Hacking"},{"clone_url":"https://github.com/jacquev6/vincent-jacques.net.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-04-29T15:20:52Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"vincent-jacques.net","url":"https://api.github.com/repos/jacquev6/vincent-jacques.net","has_wiki":false,"has_issues":false,"fork":false,"forks":0,"size":172,"private":true,"open_issues":0,"svn_url":"https://github.com/jacquev6/vincent-jacques.net","git_url":"git://github.com/jacquev6/vincent-jacques.net.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"vincent-jacques.net","language":"Python","description":"","ssh_url":"git@github.com:jacquev6/vincent-jacques.net.git","pushed_at":"2012-04-29T15:20:52Z","created_at":"2011-07-02T07:08:56Z","id":1986874,"html_url":"https://github.com/jacquev6/vincent-jacques.net","full_name":"jacquev6/vincent-jacques.net"},{"clone_url":"https://github.com/jacquev6/Contests.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-02-12T07:18:09Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"Contests","url":"https://api.github.com/repos/jacquev6/Contests","has_wiki":false,"has_issues":false,"fork":false,"forks":0,"size":448,"private":true,"open_issues":0,"svn_url":"https://github.com/jacquev6/Contests","git_url":"git://github.com/jacquev6/Contests.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"Contests","language":"Python","description":"","ssh_url":"git@github.com:jacquev6/Contests.git","pushed_at":"2011-11-14T20:19:48Z","created_at":"2011-06-27T11:55:34Z","id":1959919,"html_url":"https://github.com/jacquev6/Contests","full_name":"jacquev6/Contests"},{"clone_url":"https://github.com/jacquev6/Candidates.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-05-11T13:50:37Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/jacquev6/Candidates","has_wiki":false,"has_issues":false,"fork":false,"forks":0,"size":700,"private":true,"open_issues":0,"svn_url":"https://github.com/jacquev6/Candidates","git_url":"git://github.com/jacquev6/Candidates.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"Candidates","language":"C++","description":"","ssh_url":"git@github.com:jacquev6/Candidates.git","pushed_at":"2012-05-11T13:50:36Z","created_at":"2011-04-09T18:24:08Z","id":1592290,"html_url":"https://github.com/jacquev6/Candidates","full_name":"jacquev6/Candidates"},{"clone_url":"https://github.com/jacquev6/Tests.git","mirror_url":null,"has_downloads":true,"watchers":0,"updated_at":"2012-04-28T10:16:42Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/jacquev6/Tests","has_wiki":false,"has_issues":false,"fork":false,"forks":0,"size":3032,"private":true,"open_issues":0,"svn_url":"https://github.com/jacquev6/Tests","git_url":"git://github.com/jacquev6/Tests.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"Tests","language":"C","description":"Various tests","ssh_url":"git@github.com:jacquev6/Tests.git","pushed_at":"2012-04-01T04:24:47Z","created_at":"2011-03-28T20:24:02Z","id":1538471,"html_url":"https://github.com/jacquev6/Tests","full_name":"jacquev6/Tests"},{"clone_url":"https://github.com/jacquev6/DrawTurksHead.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-04-16T18:38:55Z","permissions":{"pull":true,"admin":true,"push":true},"master_branch":"master","homepage":"http://vincent-jacques.net/DrawTurksHead/","url":"https://api.github.com/repos/jacquev6/DrawTurksHead","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":3232,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/DrawTurksHead","git_url":"git://github.com/jacquev6/DrawTurksHead.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"DrawTurksHead","language":"C++","description":"A tool to draw Turk's Head Knots. Try it online","ssh_url":"git@github.com:jacquev6/DrawTurksHead.git","pushed_at":"2012-04-16T18:38:54Z","created_at":"2010-07-10T08:54:09Z","id":767403,"html_url":"https://github.com/jacquev6/DrawTurksHead","full_name":"jacquev6/DrawTurksHead"},{"clone_url":"https://github.com/jacquev6/DrawSyntax.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2011-11-27T14:00:34Z","permissions":{"pull":true,"admin":true,"push":true},"master_branch":"master","homepage":"http://vincent-jacques.net/DrawSyntax/","url":"https://api.github.com/repos/jacquev6/DrawSyntax","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":1760,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/DrawSyntax","git_url":"git://github.com/jacquev6/DrawSyntax.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"DrawSyntax","language":"C++","description":"Draw syntax diagrams from EBNF grammars. API in C++ and Python. Try it online.","ssh_url":"git@github.com:jacquev6/DrawSyntax.git","pushed_at":"2011-11-27T14:00:32Z","created_at":"2010-07-10T08:39:56Z","id":767392,"html_url":"https://github.com/jacquev6/DrawSyntax","full_name":"jacquev6/DrawSyntax"},{"clone_url":"https://github.com/jacquev6/QuadProgMm.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-04-16T18:39:06Z","permissions":{"pull":true,"admin":true,"push":true},"master_branch":"master","homepage":"http://vincent-jacques.net/QuadProgMm","url":"https://api.github.com/repos/jacquev6/QuadProgMm","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":760,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/QuadProgMm","git_url":"git://github.com/jacquev6/QuadProgMm.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"QuadProgMm","language":"C++","description":"A C++ interface to specify quadratic problems by C++ expressions of your variables. Try it online.","ssh_url":"git@github.com:jacquev6/QuadProgMm.git","pushed_at":"2012-04-16T18:39:05Z","created_at":"2010-07-10T08:36:57Z","id":767386,"html_url":"https://github.com/jacquev6/QuadProgMm","full_name":"jacquev6/QuadProgMm"},{"clone_url":"https://github.com/jacquev6/Boost.HierarchicalEnum.git","mirror_url":null,"has_downloads":false,"watchers":2,"updated_at":"2012-02-20T12:43:24Z","permissions":{"pull":true,"admin":true,"push":true},"master_branch":"master","homepage":"","url":"https://api.github.com/repos/jacquev6/Boost.HierarchicalEnum","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":112,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/Boost.HierarchicalEnum","git_url":"git://github.com/jacquev6/Boost.HierarchicalEnum.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"Boost.HierarchicalEnum","language":"C++","description":"","ssh_url":"git@github.com:jacquev6/Boost.HierarchicalEnum.git","pushed_at":"2011-11-27T14:00:23Z","created_at":"2010-07-10T08:32:12Z","id":767382,"html_url":"https://github.com/jacquev6/Boost.HierarchicalEnum","full_name":"jacquev6/Boost.HierarchicalEnum"},{"clone_url":"https://github.com/jacquev6/ViDE.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-04-19T16:35:46Z","permissions":{"pull":true,"admin":true,"push":true},"master_branch":"master","homepage":"","url":"https://api.github.com/repos/jacquev6/ViDE","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":1488,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/ViDE","git_url":"git://github.com/jacquev6/ViDE.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"ViDE","language":"Python","description":"Vincent's Development Environment","ssh_url":"git@github.com:jacquev6/ViDE.git","pushed_at":"2012-04-19T16:35:45Z","created_at":"2010-07-10T07:33:24Z","id":767343,"html_url":"https://github.com/jacquev6/ViDE","full_name":"jacquev6/ViDE"}] + diff --git a/lib/github/tests/ReplayData/Enterprise.testLongUrl.txt b/lib/github/tests/ReplayData/Enterprise.testLongUrl.txt new file mode 100644 index 0000000000..5519e1a487 --- /dev/null +++ b/lib/github/tests/ReplayData/Enterprise.testLongUrl.txt @@ -0,0 +1,22 @@ +http +GET +my.enterprise.com +None +/path/to/github/user/repos +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4961'), ('content-length', '17939'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"3d6116bc986eb0698f0dfe92a01b2437"'), ('date', 'Sat, 26 May 2012 20:19:00 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"clone_url":"https://github.com/jacquev6/TestPyGithub.git","mirror_url":null,"has_downloads":false,"watchers":1,"updated_at":"2012-05-26T09:55:27Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://foobar.com","url":"https://api.github.com/repos/jacquev6/TestPyGithub","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":0,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/TestPyGithub","git_url":"git://github.com/jacquev6/TestPyGithub.git","owner":{"url":"http://my.enterprise.com/path/to/github/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"TestPyGithub","language":null,"description":"Repo created by PyGithub","ssh_url":"git@github.com:jacquev6/TestPyGithub.git","pushed_at":"2012-05-26T09:55:27Z","created_at":"2012-05-26T09:55:27Z","id":4454027,"html_url":"https://github.com/jacquev6/TestPyGithub","full_name":"jacquev6/TestPyGithub"},{"clone_url":"https://github.com/jacquev6/django.git","mirror_url":null,"has_downloads":true,"watchers":1,"updated_at":"2012-04-28T11:06:20Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://www.djangoproject.com/","url":"https://api.github.com/repos/jacquev6/django","has_wiki":false,"has_issues":false,"fork":true,"forks":0,"size":48476,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/django","git_url":"git://github.com/jacquev6/django.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"django","language":"Python","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","ssh_url":"git@github.com:jacquev6/django.git","pushed_at":"2012-04-28T04:05:15Z","created_at":"2012-04-28T11:06:20Z","id":4166730,"html_url":"https://github.com/jacquev6/django","full_name":"jacquev6/django"},{"clone_url":"https://github.com/jacquev6/PyGithub.git","mirror_url":null,"has_downloads":true,"watchers":14,"updated_at":"2012-05-26T18:33:41Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","has_wiki":false,"has_issues":true,"fork":false,"forks":2,"size":412,"private":false,"open_issues":15,"svn_url":"https://github.com/jacquev6/PyGithub","git_url":"git://github.com/jacquev6/PyGithub.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-26T11:25:48Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"html_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub"},{"clone_url":"https://github.com/jacquev6/developer.github.com.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-05-08T08:36:28Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/jacquev6/developer.github.com","has_wiki":false,"has_issues":false,"fork":true,"forks":0,"size":152,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/developer.github.com","git_url":"git://github.com/jacquev6/developer.github.com.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"developer.github.com","language":"Ruby","description":"","ssh_url":"git@github.com:jacquev6/developer.github.com.git","pushed_at":"2012-05-08T08:36:28Z","created_at":"2012-02-05T18:22:26Z","id":3361136,"html_url":"https://github.com/jacquev6/developer.github.com","full_name":"jacquev6/developer.github.com"},{"clone_url":"https://github.com/jacquev6/acme-public-website.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-05-22T18:24:49Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/jacquev6/acme-public-website","has_wiki":false,"has_issues":false,"fork":false,"forks":0,"size":120,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/acme-public-website","git_url":"git://github.com/jacquev6/acme-public-website.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"acme-public-website","language":null,"description":"","ssh_url":"git@github.com:jacquev6/acme-public-website.git","pushed_at":"2011-12-07T20:11:17Z","created_at":"2011-12-07T20:00:40Z","id":2935252,"html_url":"https://github.com/jacquev6/acme-public-website","full_name":"jacquev6/acme-public-website"},{"clone_url":"https://github.com/jacquev6/C4Planner.git","mirror_url":null,"has_downloads":true,"watchers":1,"updated_at":"2012-02-16T21:51:01Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/C4Planner","url":"https://api.github.com/repos/jacquev6/C4Planner","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":4716,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/C4Planner","git_url":"git://github.com/jacquev6/C4Planner.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"C4Planner","language":"Python","description":"Caesar IV: anticipate your city","ssh_url":"git@github.com:jacquev6/C4Planner.git","pushed_at":"2011-11-27T20:51:06Z","created_at":"2011-08-24T08:30:55Z","id":2260441,"html_url":"https://github.com/jacquev6/C4Planner","full_name":"jacquev6/C4Planner"},{"clone_url":"https://github.com/jacquev6/Hacking.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-04-24T13:55:11Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/jacquev6/Hacking","has_wiki":false,"has_issues":false,"fork":false,"forks":0,"size":128,"private":true,"open_issues":0,"svn_url":"https://github.com/jacquev6/Hacking","git_url":"git://github.com/jacquev6/Hacking.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"Hacking","language":"Python","description":"","ssh_url":"git@github.com:jacquev6/Hacking.git","pushed_at":"2012-04-17T19:09:56Z","created_at":"2011-07-02T15:59:51Z","id":1988081,"html_url":"https://github.com/jacquev6/Hacking","full_name":"jacquev6/Hacking"},{"clone_url":"https://github.com/jacquev6/vincent-jacques.net.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-04-29T15:20:52Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"vincent-jacques.net","url":"https://api.github.com/repos/jacquev6/vincent-jacques.net","has_wiki":false,"has_issues":false,"fork":false,"forks":0,"size":172,"private":true,"open_issues":0,"svn_url":"https://github.com/jacquev6/vincent-jacques.net","git_url":"git://github.com/jacquev6/vincent-jacques.net.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"vincent-jacques.net","language":"Python","description":"","ssh_url":"git@github.com:jacquev6/vincent-jacques.net.git","pushed_at":"2012-04-29T15:20:52Z","created_at":"2011-07-02T07:08:56Z","id":1986874,"html_url":"https://github.com/jacquev6/vincent-jacques.net","full_name":"jacquev6/vincent-jacques.net"},{"clone_url":"https://github.com/jacquev6/Contests.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-02-12T07:18:09Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"Contests","url":"https://api.github.com/repos/jacquev6/Contests","has_wiki":false,"has_issues":false,"fork":false,"forks":0,"size":448,"private":true,"open_issues":0,"svn_url":"https://github.com/jacquev6/Contests","git_url":"git://github.com/jacquev6/Contests.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"Contests","language":"Python","description":"","ssh_url":"git@github.com:jacquev6/Contests.git","pushed_at":"2011-11-14T20:19:48Z","created_at":"2011-06-27T11:55:34Z","id":1959919,"html_url":"https://github.com/jacquev6/Contests","full_name":"jacquev6/Contests"},{"clone_url":"https://github.com/jacquev6/Candidates.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-05-11T13:50:37Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/jacquev6/Candidates","has_wiki":false,"has_issues":false,"fork":false,"forks":0,"size":700,"private":true,"open_issues":0,"svn_url":"https://github.com/jacquev6/Candidates","git_url":"git://github.com/jacquev6/Candidates.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"Candidates","language":"C++","description":"","ssh_url":"git@github.com:jacquev6/Candidates.git","pushed_at":"2012-05-11T13:50:36Z","created_at":"2011-04-09T18:24:08Z","id":1592290,"html_url":"https://github.com/jacquev6/Candidates","full_name":"jacquev6/Candidates"},{"clone_url":"https://github.com/jacquev6/Tests.git","mirror_url":null,"has_downloads":true,"watchers":0,"updated_at":"2012-04-28T10:16:42Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/jacquev6/Tests","has_wiki":false,"has_issues":false,"fork":false,"forks":0,"size":3032,"private":true,"open_issues":0,"svn_url":"https://github.com/jacquev6/Tests","git_url":"git://github.com/jacquev6/Tests.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"Tests","language":"C","description":"Various tests","ssh_url":"git@github.com:jacquev6/Tests.git","pushed_at":"2012-04-01T04:24:47Z","created_at":"2011-03-28T20:24:02Z","id":1538471,"html_url":"https://github.com/jacquev6/Tests","full_name":"jacquev6/Tests"},{"clone_url":"https://github.com/jacquev6/DrawTurksHead.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-04-16T18:38:55Z","permissions":{"pull":true,"admin":true,"push":true},"master_branch":"master","homepage":"http://vincent-jacques.net/DrawTurksHead/","url":"https://api.github.com/repos/jacquev6/DrawTurksHead","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":3232,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/DrawTurksHead","git_url":"git://github.com/jacquev6/DrawTurksHead.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"DrawTurksHead","language":"C++","description":"A tool to draw Turk's Head Knots. Try it online","ssh_url":"git@github.com:jacquev6/DrawTurksHead.git","pushed_at":"2012-04-16T18:38:54Z","created_at":"2010-07-10T08:54:09Z","id":767403,"html_url":"https://github.com/jacquev6/DrawTurksHead","full_name":"jacquev6/DrawTurksHead"},{"clone_url":"https://github.com/jacquev6/DrawSyntax.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2011-11-27T14:00:34Z","permissions":{"pull":true,"admin":true,"push":true},"master_branch":"master","homepage":"http://vincent-jacques.net/DrawSyntax/","url":"https://api.github.com/repos/jacquev6/DrawSyntax","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":1760,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/DrawSyntax","git_url":"git://github.com/jacquev6/DrawSyntax.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"DrawSyntax","language":"C++","description":"Draw syntax diagrams from EBNF grammars. API in C++ and Python. Try it online.","ssh_url":"git@github.com:jacquev6/DrawSyntax.git","pushed_at":"2011-11-27T14:00:32Z","created_at":"2010-07-10T08:39:56Z","id":767392,"html_url":"https://github.com/jacquev6/DrawSyntax","full_name":"jacquev6/DrawSyntax"},{"clone_url":"https://github.com/jacquev6/QuadProgMm.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-04-16T18:39:06Z","permissions":{"pull":true,"admin":true,"push":true},"master_branch":"master","homepage":"http://vincent-jacques.net/QuadProgMm","url":"https://api.github.com/repos/jacquev6/QuadProgMm","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":760,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/QuadProgMm","git_url":"git://github.com/jacquev6/QuadProgMm.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"QuadProgMm","language":"C++","description":"A C++ interface to specify quadratic problems by C++ expressions of your variables. Try it online.","ssh_url":"git@github.com:jacquev6/QuadProgMm.git","pushed_at":"2012-04-16T18:39:05Z","created_at":"2010-07-10T08:36:57Z","id":767386,"html_url":"https://github.com/jacquev6/QuadProgMm","full_name":"jacquev6/QuadProgMm"},{"clone_url":"https://github.com/jacquev6/Boost.HierarchicalEnum.git","mirror_url":null,"has_downloads":false,"watchers":2,"updated_at":"2012-02-20T12:43:24Z","permissions":{"pull":true,"admin":true,"push":true},"master_branch":"master","homepage":"","url":"https://api.github.com/repos/jacquev6/Boost.HierarchicalEnum","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":112,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/Boost.HierarchicalEnum","git_url":"git://github.com/jacquev6/Boost.HierarchicalEnum.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"Boost.HierarchicalEnum","language":"C++","description":"","ssh_url":"git@github.com:jacquev6/Boost.HierarchicalEnum.git","pushed_at":"2011-11-27T14:00:23Z","created_at":"2010-07-10T08:32:12Z","id":767382,"html_url":"https://github.com/jacquev6/Boost.HierarchicalEnum","full_name":"jacquev6/Boost.HierarchicalEnum"},{"clone_url":"https://github.com/jacquev6/ViDE.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-04-19T16:35:46Z","permissions":{"pull":true,"admin":true,"push":true},"master_branch":"master","homepage":"","url":"https://api.github.com/repos/jacquev6/ViDE","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":1488,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/ViDE","git_url":"git://github.com/jacquev6/ViDE.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"ViDE","language":"Python","description":"Vincent's Development Environment","ssh_url":"git@github.com:jacquev6/ViDE.git","pushed_at":"2012-04-19T16:35:45Z","created_at":"2010-07-10T07:33:24Z","id":767343,"html_url":"https://github.com/jacquev6/ViDE","full_name":"jacquev6/ViDE"}] + +http +GET +my.enterprise.com +None +/path/to/github/users/jacquev6 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4960'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"2b9d2167029cc33666d02e0b0e95f2b9"'), ('date', 'Sat, 26 May 2012 11:08:21 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","disk_usage":17080,"public_gists":2,"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","public_repos":11,"hireable":false,"private_gists":5,"plan":{"private_repos":5,"collaborators":1,"name":"micro","space":614400},"bio":"","company":"Criteo","blog":"http://vincent-jacques.net","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","total_private_repos":5,"email":"vincent@vincent-jacques.net","collaborators":0,"followers":13,"name":"Vincent Jacques","owned_private_repos":5,"created_at":"2010-07-09T06:10:06Z","location":"Paris, France","id":327146,"following":24,"html_url":"https://github.com/jacquev6"} + diff --git a/lib/github/tests/ReplayData/Enterprise.testSpecificPort.txt b/lib/github/tests/ReplayData/Enterprise.testSpecificPort.txt new file mode 100644 index 0000000000..acc4e03a29 --- /dev/null +++ b/lib/github/tests/ReplayData/Enterprise.testSpecificPort.txt @@ -0,0 +1,11 @@ +http +GET +my.enterprise.com +8080 +/user/repos +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4961'), ('content-length', '17939'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"3d6116bc986eb0698f0dfe92a01b2437"'), ('date', 'Sat, 26 May 2012 20:19:00 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"clone_url":"https://github.com/jacquev6/TestPyGithub.git","mirror_url":null,"has_downloads":false,"watchers":1,"updated_at":"2012-05-26T09:55:27Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://foobar.com","url":"https://api.github.com/repos/jacquev6/TestPyGithub","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":0,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/TestPyGithub","git_url":"git://github.com/jacquev6/TestPyGithub.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"TestPyGithub","language":null,"description":"Repo created by PyGithub","ssh_url":"git@github.com:jacquev6/TestPyGithub.git","pushed_at":"2012-05-26T09:55:27Z","created_at":"2012-05-26T09:55:27Z","id":4454027,"html_url":"https://github.com/jacquev6/TestPyGithub","full_name":"jacquev6/TestPyGithub"},{"clone_url":"https://github.com/jacquev6/django.git","mirror_url":null,"has_downloads":true,"watchers":1,"updated_at":"2012-04-28T11:06:20Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://www.djangoproject.com/","url":"https://api.github.com/repos/jacquev6/django","has_wiki":false,"has_issues":false,"fork":true,"forks":0,"size":48476,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/django","git_url":"git://github.com/jacquev6/django.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"django","language":"Python","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","ssh_url":"git@github.com:jacquev6/django.git","pushed_at":"2012-04-28T04:05:15Z","created_at":"2012-04-28T11:06:20Z","id":4166730,"html_url":"https://github.com/jacquev6/django","full_name":"jacquev6/django"},{"clone_url":"https://github.com/jacquev6/PyGithub.git","mirror_url":null,"has_downloads":true,"watchers":14,"updated_at":"2012-05-26T18:33:41Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","has_wiki":false,"has_issues":true,"fork":false,"forks":2,"size":412,"private":false,"open_issues":15,"svn_url":"https://github.com/jacquev6/PyGithub","git_url":"git://github.com/jacquev6/PyGithub.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-26T11:25:48Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"html_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub"},{"clone_url":"https://github.com/jacquev6/developer.github.com.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-05-08T08:36:28Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/jacquev6/developer.github.com","has_wiki":false,"has_issues":false,"fork":true,"forks":0,"size":152,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/developer.github.com","git_url":"git://github.com/jacquev6/developer.github.com.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"developer.github.com","language":"Ruby","description":"","ssh_url":"git@github.com:jacquev6/developer.github.com.git","pushed_at":"2012-05-08T08:36:28Z","created_at":"2012-02-05T18:22:26Z","id":3361136,"html_url":"https://github.com/jacquev6/developer.github.com","full_name":"jacquev6/developer.github.com"},{"clone_url":"https://github.com/jacquev6/acme-public-website.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-05-22T18:24:49Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/jacquev6/acme-public-website","has_wiki":false,"has_issues":false,"fork":false,"forks":0,"size":120,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/acme-public-website","git_url":"git://github.com/jacquev6/acme-public-website.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"acme-public-website","language":null,"description":"","ssh_url":"git@github.com:jacquev6/acme-public-website.git","pushed_at":"2011-12-07T20:11:17Z","created_at":"2011-12-07T20:00:40Z","id":2935252,"html_url":"https://github.com/jacquev6/acme-public-website","full_name":"jacquev6/acme-public-website"},{"clone_url":"https://github.com/jacquev6/C4Planner.git","mirror_url":null,"has_downloads":true,"watchers":1,"updated_at":"2012-02-16T21:51:01Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/C4Planner","url":"https://api.github.com/repos/jacquev6/C4Planner","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":4716,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/C4Planner","git_url":"git://github.com/jacquev6/C4Planner.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"C4Planner","language":"Python","description":"Caesar IV: anticipate your city","ssh_url":"git@github.com:jacquev6/C4Planner.git","pushed_at":"2011-11-27T20:51:06Z","created_at":"2011-08-24T08:30:55Z","id":2260441,"html_url":"https://github.com/jacquev6/C4Planner","full_name":"jacquev6/C4Planner"},{"clone_url":"https://github.com/jacquev6/Hacking.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-04-24T13:55:11Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/jacquev6/Hacking","has_wiki":false,"has_issues":false,"fork":false,"forks":0,"size":128,"private":true,"open_issues":0,"svn_url":"https://github.com/jacquev6/Hacking","git_url":"git://github.com/jacquev6/Hacking.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"Hacking","language":"Python","description":"","ssh_url":"git@github.com:jacquev6/Hacking.git","pushed_at":"2012-04-17T19:09:56Z","created_at":"2011-07-02T15:59:51Z","id":1988081,"html_url":"https://github.com/jacquev6/Hacking","full_name":"jacquev6/Hacking"},{"clone_url":"https://github.com/jacquev6/vincent-jacques.net.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-04-29T15:20:52Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"vincent-jacques.net","url":"https://api.github.com/repos/jacquev6/vincent-jacques.net","has_wiki":false,"has_issues":false,"fork":false,"forks":0,"size":172,"private":true,"open_issues":0,"svn_url":"https://github.com/jacquev6/vincent-jacques.net","git_url":"git://github.com/jacquev6/vincent-jacques.net.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"vincent-jacques.net","language":"Python","description":"","ssh_url":"git@github.com:jacquev6/vincent-jacques.net.git","pushed_at":"2012-04-29T15:20:52Z","created_at":"2011-07-02T07:08:56Z","id":1986874,"html_url":"https://github.com/jacquev6/vincent-jacques.net","full_name":"jacquev6/vincent-jacques.net"},{"clone_url":"https://github.com/jacquev6/Contests.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-02-12T07:18:09Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"Contests","url":"https://api.github.com/repos/jacquev6/Contests","has_wiki":false,"has_issues":false,"fork":false,"forks":0,"size":448,"private":true,"open_issues":0,"svn_url":"https://github.com/jacquev6/Contests","git_url":"git://github.com/jacquev6/Contests.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"Contests","language":"Python","description":"","ssh_url":"git@github.com:jacquev6/Contests.git","pushed_at":"2011-11-14T20:19:48Z","created_at":"2011-06-27T11:55:34Z","id":1959919,"html_url":"https://github.com/jacquev6/Contests","full_name":"jacquev6/Contests"},{"clone_url":"https://github.com/jacquev6/Candidates.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-05-11T13:50:37Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/jacquev6/Candidates","has_wiki":false,"has_issues":false,"fork":false,"forks":0,"size":700,"private":true,"open_issues":0,"svn_url":"https://github.com/jacquev6/Candidates","git_url":"git://github.com/jacquev6/Candidates.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"Candidates","language":"C++","description":"","ssh_url":"git@github.com:jacquev6/Candidates.git","pushed_at":"2012-05-11T13:50:36Z","created_at":"2011-04-09T18:24:08Z","id":1592290,"html_url":"https://github.com/jacquev6/Candidates","full_name":"jacquev6/Candidates"},{"clone_url":"https://github.com/jacquev6/Tests.git","mirror_url":null,"has_downloads":true,"watchers":0,"updated_at":"2012-04-28T10:16:42Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/jacquev6/Tests","has_wiki":false,"has_issues":false,"fork":false,"forks":0,"size":3032,"private":true,"open_issues":0,"svn_url":"https://github.com/jacquev6/Tests","git_url":"git://github.com/jacquev6/Tests.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"Tests","language":"C","description":"Various tests","ssh_url":"git@github.com:jacquev6/Tests.git","pushed_at":"2012-04-01T04:24:47Z","created_at":"2011-03-28T20:24:02Z","id":1538471,"html_url":"https://github.com/jacquev6/Tests","full_name":"jacquev6/Tests"},{"clone_url":"https://github.com/jacquev6/DrawTurksHead.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-04-16T18:38:55Z","permissions":{"pull":true,"admin":true,"push":true},"master_branch":"master","homepage":"http://vincent-jacques.net/DrawTurksHead/","url":"https://api.github.com/repos/jacquev6/DrawTurksHead","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":3232,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/DrawTurksHead","git_url":"git://github.com/jacquev6/DrawTurksHead.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"DrawTurksHead","language":"C++","description":"A tool to draw Turk's Head Knots. Try it online","ssh_url":"git@github.com:jacquev6/DrawTurksHead.git","pushed_at":"2012-04-16T18:38:54Z","created_at":"2010-07-10T08:54:09Z","id":767403,"html_url":"https://github.com/jacquev6/DrawTurksHead","full_name":"jacquev6/DrawTurksHead"},{"clone_url":"https://github.com/jacquev6/DrawSyntax.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2011-11-27T14:00:34Z","permissions":{"pull":true,"admin":true,"push":true},"master_branch":"master","homepage":"http://vincent-jacques.net/DrawSyntax/","url":"https://api.github.com/repos/jacquev6/DrawSyntax","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":1760,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/DrawSyntax","git_url":"git://github.com/jacquev6/DrawSyntax.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"DrawSyntax","language":"C++","description":"Draw syntax diagrams from EBNF grammars. API in C++ and Python. Try it online.","ssh_url":"git@github.com:jacquev6/DrawSyntax.git","pushed_at":"2011-11-27T14:00:32Z","created_at":"2010-07-10T08:39:56Z","id":767392,"html_url":"https://github.com/jacquev6/DrawSyntax","full_name":"jacquev6/DrawSyntax"},{"clone_url":"https://github.com/jacquev6/QuadProgMm.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-04-16T18:39:06Z","permissions":{"pull":true,"admin":true,"push":true},"master_branch":"master","homepage":"http://vincent-jacques.net/QuadProgMm","url":"https://api.github.com/repos/jacquev6/QuadProgMm","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":760,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/QuadProgMm","git_url":"git://github.com/jacquev6/QuadProgMm.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"QuadProgMm","language":"C++","description":"A C++ interface to specify quadratic problems by C++ expressions of your variables. Try it online.","ssh_url":"git@github.com:jacquev6/QuadProgMm.git","pushed_at":"2012-04-16T18:39:05Z","created_at":"2010-07-10T08:36:57Z","id":767386,"html_url":"https://github.com/jacquev6/QuadProgMm","full_name":"jacquev6/QuadProgMm"},{"clone_url":"https://github.com/jacquev6/Boost.HierarchicalEnum.git","mirror_url":null,"has_downloads":false,"watchers":2,"updated_at":"2012-02-20T12:43:24Z","permissions":{"pull":true,"admin":true,"push":true},"master_branch":"master","homepage":"","url":"https://api.github.com/repos/jacquev6/Boost.HierarchicalEnum","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":112,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/Boost.HierarchicalEnum","git_url":"git://github.com/jacquev6/Boost.HierarchicalEnum.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"Boost.HierarchicalEnum","language":"C++","description":"","ssh_url":"git@github.com:jacquev6/Boost.HierarchicalEnum.git","pushed_at":"2011-11-27T14:00:23Z","created_at":"2010-07-10T08:32:12Z","id":767382,"html_url":"https://github.com/jacquev6/Boost.HierarchicalEnum","full_name":"jacquev6/Boost.HierarchicalEnum"},{"clone_url":"https://github.com/jacquev6/ViDE.git","mirror_url":null,"has_downloads":false,"watchers":0,"updated_at":"2012-04-19T16:35:46Z","permissions":{"pull":true,"admin":true,"push":true},"master_branch":"master","homepage":"","url":"https://api.github.com/repos/jacquev6/ViDE","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":1488,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/ViDE","git_url":"git://github.com/jacquev6/ViDE.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"ViDE","language":"Python","description":"Vincent's Development Environment","ssh_url":"git@github.com:jacquev6/ViDE.git","pushed_at":"2012-04-19T16:35:45Z","created_at":"2010-07-10T07:33:24Z","id":767343,"html_url":"https://github.com/jacquev6/ViDE","full_name":"jacquev6/ViDE"}] + diff --git a/lib/github/tests/ReplayData/Equality.testBranchEquality.txt b/lib/github/tests/ReplayData/Equality.testBranchEquality.txt new file mode 100644 index 0000000000..b1ff3f1427 --- /dev/null +++ b/lib/github/tests/ReplayData/Equality.testBranchEquality.txt @@ -0,0 +1,44 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4987'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '4C79374B:3449:3070918:52802141'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '1494'), ('server', 'GitHub.com'), ('last-modified', 'Sun, 10 Nov 2013 23:46:02 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"fe0984faabdc64453d942c3e3a992a39"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 11 Nov 2013 00:13:54 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1384130958')] +{"login":"jacquev6","id":327146,"avatar_url":"https://2.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png&r=x","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false,"name":"Vincent Jacques","company":"Amazon","blog":"http://vincent-jacques.net","location":"Seattle, WA, United States","email":"vincent@vincent-jacques.net","hireable":false,"bio":"","public_repos":18,"followers":29,"following":43,"created_at":"2010-07-09T06:10:06Z","updated_at":"2013-11-10T23:46:02Z","public_gists":5,"total_private_repos":3,"owned_private_repos":3,"disk_usage":90970,"collaborators":0,"plan":{"name":"micro","space":614400,"collaborators":1,"private_repos":5},"private_gists":6} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4986'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '4C79374B:3449:3070AAE:52802143'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '4792'), ('server', 'GitHub.com'), ('last-modified', 'Sun, 10 Nov 2013 23:46:02 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"fe0984faabdc64453d942c3e3a992a39"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 11 Nov 2013 00:13:56 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1384130958')] +{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png&r=x","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/jacquev6/PyGithub/releases{/id}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-11-10T23:46:02Z","pushed_at":"2013-11-10T23:45:59Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":8630,"stargazers_count":291,"watchers_count":291,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":79,"mirror_url":null,"open_issues_count":17,"forks":79,"open_issues":17,"watchers":291,"default_branch":"master","master_branch":"master","permissions":{"admin":true,"push":true,"pull":true},"network_count":79,"subscribers_count":26} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/branches/develop +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4985'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '4C79374B:3449:3070BCA:52802144'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '3500'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('etag', '"3fbf42ebb571f240626352110b71e641"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 11 Nov 2013 00:13:57 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1384130958')] +{"name":"develop","commit":{"sha":"22f366b540a302036784afc979e28569ede388df","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-11-10T23:45:33Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-11-10T23:45:33Z"},"message":"Accept strings as well as Label objects (#202)\n\nThis should be more generic, but it's a wig work to do it\neverywhere. Let's keep that in mind for V2.","tree":{"sha":"da52b9c276aa8fa9dfda274e6dbcbe7b0dfd132f","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/da52b9c276aa8fa9dfda274e6dbcbe7b0dfd132f"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/22f366b540a302036784afc979e28569ede388df","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/22f366b540a302036784afc979e28569ede388df","html_url":"https://github.com/jacquev6/PyGithub/commit/22f366b540a302036784afc979e28569ede388df","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/22f366b540a302036784afc979e28569ede388df/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://1.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png&r=x","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://1.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png&r=x","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false},"parents":[{"sha":"54f718a15770579a37ffbe7ae94ad30003407786","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/54f718a15770579a37ffbe7ae94ad30003407786","html_url":"https://github.com/jacquev6/PyGithub/commit/54f718a15770579a37ffbe7ae94ad30003407786"}]},"_links":{"self":"https://api.github.com/repos/jacquev6/PyGithub/branches/develop","html":"https://github.com/jacquev6/PyGithub/tree/develop"}} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/branches/develop +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4984'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '4C79374B:344A:3DD0893:52802146'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '3500'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('etag', '"1d4efa84ec4f76163fb0c421d3f01d85"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 11 Nov 2013 00:13:58 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1384130958')] +{"name":"develop","commit":{"sha":"22f366b540a302036784afc979e28569ede388df","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-11-10T23:45:33Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-11-10T23:45:33Z"},"message":"Accept strings as well as Label objects (#202)\n\nThis should be more generic, but it's a wig work to do it\neverywhere. Let's keep that in mind for V2.","tree":{"sha":"da52b9c276aa8fa9dfda274e6dbcbe7b0dfd132f","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/da52b9c276aa8fa9dfda274e6dbcbe7b0dfd132f"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/22f366b540a302036784afc979e28569ede388df","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/22f366b540a302036784afc979e28569ede388df","html_url":"https://github.com/jacquev6/PyGithub/commit/22f366b540a302036784afc979e28569ede388df","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/22f366b540a302036784afc979e28569ede388df/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png&r=x","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png&r=x","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false},"parents":[{"sha":"54f718a15770579a37ffbe7ae94ad30003407786","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/54f718a15770579a37ffbe7ae94ad30003407786","html_url":"https://github.com/jacquev6/PyGithub/commit/54f718a15770579a37ffbe7ae94ad30003407786"}]},"_links":{"self":"https://api.github.com/repos/jacquev6/PyGithub/branches/develop","html":"https://github.com/jacquev6/PyGithub/tree/develop"}} + diff --git a/lib/github/tests/ReplayData/Equality.testUserDifference.txt b/lib/github/tests/ReplayData/Equality.testUserDifference.txt new file mode 100644 index 0000000000..94ded42550 --- /dev/null +++ b/lib/github/tests/ReplayData/Equality.testUserDifference.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/users/jacquev6 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4982'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '4C79374B:344A:3DD0CA2:52802148'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '1494'), ('server', 'GitHub.com'), ('last-modified', 'Sun, 10 Nov 2013 23:46:02 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"fe0984faabdc64453d942c3e3a992a39"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 11 Nov 2013 00:14:01 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1384130958')] +{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png&r=x","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false,"name":"Vincent Jacques","company":"Amazon","blog":"http://vincent-jacques.net","location":"Seattle, WA, United States","email":"vincent@vincent-jacques.net","hireable":false,"bio":"","public_repos":18,"followers":29,"following":43,"created_at":"2010-07-09T06:10:06Z","updated_at":"2013-11-10T23:46:02Z","public_gists":5,"total_private_repos":3,"owned_private_repos":3,"disk_usage":90970,"collaborators":0,"plan":{"name":"micro","space":614400,"collaborators":1,"private_repos":5},"private_gists":6} + +https +GET +api.github.com +None +/users/OddBloke +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4981'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '4C79374B:3448:4124825:52802149'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '1130'), ('server', 'GitHub.com'), ('last-modified', 'Sat, 09 Nov 2013 21:41:44 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"13ce14e257e7adc5b376a1f5e03d5c1d"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 11 Nov 2013 00:14:02 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1384130958')] +{"login":"OddBloke","id":62736,"avatar_url":"https://2.gravatar.com/avatar/af881deb1a7ef0a1f568e18cd967c0d3?d=https%3A%2F%2Fidenticons.github.com%2F29c5b1cb9b545c69846a6542a71338bd.png&r=x","gravatar_id":"af881deb1a7ef0a1f568e18cd967c0d3","url":"https://api.github.com/users/OddBloke","html_url":"https://github.com/OddBloke","followers_url":"https://api.github.com/users/OddBloke/followers","following_url":"https://api.github.com/users/OddBloke/following{/other_user}","gists_url":"https://api.github.com/users/OddBloke/gists{/gist_id}","starred_url":"https://api.github.com/users/OddBloke/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/OddBloke/subscriptions","organizations_url":"https://api.github.com/users/OddBloke/orgs","repos_url":"https://api.github.com/users/OddBloke/repos","events_url":"https://api.github.com/users/OddBloke/events{/privacy}","received_events_url":"https://api.github.com/users/OddBloke/received_events","type":"User","site_admin":false,"public_repos":32,"followers":8,"following":1,"created_at":"2009-03-12T12:40:32Z","updated_at":"2013-11-09T21:41:44Z","public_gists":12} + diff --git a/lib/github/tests/ReplayData/Equality.testUserEquality.txt b/lib/github/tests/ReplayData/Equality.testUserEquality.txt new file mode 100644 index 0000000000..5d1aeb5e4b --- /dev/null +++ b/lib/github/tests/ReplayData/Equality.testUserEquality.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/users/jacquev6 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4980'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '4C79374B:3449:30711F6:5280214B'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '1494'), ('server', 'GitHub.com'), ('last-modified', 'Sun, 10 Nov 2013 23:46:02 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"fe0984faabdc64453d942c3e3a992a39"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 11 Nov 2013 00:14:03 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1384130958')] +{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png&r=x","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false,"name":"Vincent Jacques","company":"Amazon","blog":"http://vincent-jacques.net","location":"Seattle, WA, United States","email":"vincent@vincent-jacques.net","hireable":false,"bio":"","public_repos":18,"followers":29,"following":43,"created_at":"2010-07-09T06:10:06Z","updated_at":"2013-11-10T23:46:02Z","public_gists":5,"total_private_repos":3,"owned_private_repos":3,"disk_usage":90970,"collaborators":0,"plan":{"name":"micro","space":614400,"collaborators":1,"private_repos":5},"private_gists":6} + +https +GET +api.github.com +None +/users/jacquev6 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4979'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '4C79374B:3447:28CA230:5280214C'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '1494'), ('server', 'GitHub.com'), ('last-modified', 'Sun, 10 Nov 2013 23:46:02 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"fe0984faabdc64453d942c3e3a992a39"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 11 Nov 2013 00:14:04 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1384130958')] +{"login":"jacquev6","id":327146,"avatar_url":"https://1.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png&r=x","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false,"name":"Vincent Jacques","company":"Amazon","blog":"http://vincent-jacques.net","location":"Seattle, WA, United States","email":"vincent@vincent-jacques.net","hireable":false,"bio":"","public_repos":18,"followers":29,"following":43,"created_at":"2010-07-09T06:10:06Z","updated_at":"2013-11-10T23:46:02Z","public_gists":5,"total_private_repos":3,"owned_private_repos":3,"disk_usage":90970,"collaborators":0,"plan":{"name":"micro","space":614400,"collaborators":1,"private_repos":5},"private_gists":6} + diff --git a/lib/github/tests/ReplayData/Event.setUp.txt b/lib/github/tests/ReplayData/Event.setUp.txt new file mode 100644 index 0000000000..4e41e7b7b3 --- /dev/null +++ b/lib/github/tests/ReplayData/Event.setUp.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/users/jacquev6 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4962'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"fc78d67f262cad756e42354c78ecea4e"'), ('date', 'Sat, 26 May 2012 11:01:16 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"public_repos":11,"type":"User","disk_usage":17080,"hireable":false,"blog":"http://vincent-jacques.net","url":"https://api.github.com/users/jacquev6","bio":"","plan":{"collaborators":1,"private_repos":5,"name":"micro","space":614400},"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","total_private_repos":5,"public_gists":2,"company":"Criteo","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","owned_private_repos":5,"private_gists":5,"collaborators":0,"email":"vincent@vincent-jacques.net","followers":13,"name":"Vincent Jacques","created_at":"2010-07-09T06:10:06Z","location":"Paris, France","id":327146,"following":24,"html_url":"https://github.com/jacquev6"} + +https +GET +api.github.com +None +/users/jacquev6/events +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4961'), ('content-length', '44220'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next"'), ('etag', '"fef01e01dbfd77f945174529147fa3cb"'), ('date', 'Sat, 26 May 2012 11:01:16 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"type":"PushEvent","payload":{"head":"619eae8d51c5988f0d2889fc767fa677438ba95d","size":11,"push_id":80673538,"ref":"refs/heads/topic/RewriteWithGeneratedCode","commits":[{"sha":"5bb654d26dd014d36794acd1e6ecf3736f12aad7","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5bb654d26dd014d36794acd1e6ecf3736f12aad7","distinct":false,"message":"Implement the three authentication schemes"},{"sha":"cb0313157bf904f2d364377d35d9397b269547a5","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cb0313157bf904f2d364377d35d9397b269547a5","distinct":false,"message":"Merge branch 'topic/Authentication' into develop"},{"sha":"0cec0d25e606c023a62a4fc7cdc815309ebf6d16","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16","distinct":false,"message":"Publish version 0.7"},{"sha":"ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","distinct":false,"message":"Merge branch 'develop'"},{"sha":"3a3bf4763192ee1234eb0557628133e06f3dfc76","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/3a3bf4763192ee1234eb0557628133e06f3dfc76","distinct":true,"message":"Merge branch 'master' into topic/RewriteWithGeneratedCode\n\nConflicts:\n\tgithub/Github.py\n\tgithub/Requester.py"},{"sha":"608f17794664f61693a3dc05e6056fea8fbef0ff","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/608f17794664f61693a3dc05e6056fea8fbef0ff","distinct":true,"message":"Restore some form of Authorization header in replay data"},{"sha":"2c04b8adbd91d38eef4f0767337ab7a12b2f684b","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2c04b8adbd91d38eef4f0767337ab7a12b2f684b","distinct":true,"message":"Allow test without pre-set-up Github"},{"sha":"5b97389988b6fe43e15a079702f6f1671257fb28","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5b97389988b6fe43e15a079702f6f1671257fb28","distinct":true,"message":"Test three authentication schemes"},{"sha":"12747613c5ec00deccf296b8619ad507f7050475","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/12747613c5ec00deccf296b8619ad507f7050475","distinct":true,"message":"Test Issue.getComments"},{"sha":"2982fa96c5ca75abe717d974d83f9135d664232e","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2982fa96c5ca75abe717d974d83f9135d664232e","distinct":true,"message":"Test the new Repository.full_name attribute"},{"sha":"619eae8d51c5988f0d2889fc767fa677438ba95d","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/619eae8d51c5988f0d2889fc767fa677438ba95d","distinct":true,"message":"Improve coverage of AuthenticatedUser"}]},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-26T10:01:39Z","id":"1556114751","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"CreateEvent","payload":{"master_branch":"master","ref":null,"ref_type":"repository","description":"Repo created by PyGithub"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/TestPyGithub","id":4454027,"name":"jacquev6/TestPyGithub"},"created_at":"2012-05-26T09:55:27Z","id":"1556114217","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"GistEvent","payload":{"action":"create","gist":{"created_at":"2012-05-26T09:50:02Z","public":true,"comments":0,"git_push_url":"git@gist.github.com:2793179.git","files":{},"updated_at":"2012-05-26T09:50:02Z","url":"https://api.github.com/gists/2793179","id":"2793179","git_pull_url":"git://gist.github.com/2793179.git","description":null,"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"html_url":"https://gist.github.com/2793179"}},"public":true,"repo":{"url":"https://api.github.com/repos//","name":"/"},"created_at":"2012-05-26T09:50:03Z","id":"1556113740","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"IssuesEvent","payload":{"action":"closed","issue":{"number":29,"created_at":"2012-05-25T11:47:59Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"","comments":0,"title":"Publish version 0.7","updated_at":"2012-05-25T17:32:32Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/29","id":4752048,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":{"number":5,"due_on":"2012-05-26T07:00:00Z","created_at":"2012-05-25T11:47:06Z","title":"Version 0.7","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/5","id":124045,"closed_issues":2,"open_issues":0,"description":"","state":"closed"},"closed_at":"2012-05-25T17:32:32Z","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"labels":[{"name":"Project management","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","color":"444444"}],"html_url":"https://github.com/jacquev6/PyGithub/issues/29","state":"closed"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T17:32:33Z","id":"1555940993","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"IssuesEvent","payload":{"action":"closed","issue":{"number":15,"created_at":"2012-03-13T06:24:05Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"One would want to use the API without authentication, with login+password, and with OAuth token. Let's cover these use-cases.","comments":1,"title":"Implement all authentication schemes","updated_at":"2012-05-25T17:32:31Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/15","id":3624575,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":{"number":5,"due_on":"2012-05-26T07:00:00Z","created_at":"2012-05-25T11:47:06Z","title":"Version 0.7","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/5","id":124045,"closed_issues":2,"open_issues":0,"description":"","state":"closed"},"closed_at":"2012-05-25T17:32:31Z","labels":[{"name":"Functionalities","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","color":"e102d8"}],"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"html_url":"https://github.com/jacquev6/PyGithub/issues/15","state":"closed"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T17:32:33Z","id":"1555940986","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"CreateEvent","payload":{"master_branch":"master","ref_type":"tag","ref":"v0.7","description":"Python library implementing the full Github API v3"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T17:19:48Z","id":"1555936661","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"DeleteEvent","payload":{"ref_type":"branch","ref":"topic/Authentication"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T17:19:48Z","id":"1555936660","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","size":4,"push_id":80573368,"ref":"refs/heads/master","commits":[{"sha":"5bb654d26dd014d36794acd1e6ecf3736f12aad7","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5bb654d26dd014d36794acd1e6ecf3736f12aad7","distinct":false,"message":"Implement the three authentication schemes"},{"sha":"cb0313157bf904f2d364377d35d9397b269547a5","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cb0313157bf904f2d364377d35d9397b269547a5","distinct":false,"message":"Merge branch 'topic/Authentication' into develop"},{"sha":"0cec0d25e606c023a62a4fc7cdc815309ebf6d16","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16","distinct":false,"message":"Publish version 0.7"},{"sha":"ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","distinct":true,"message":"Merge branch 'develop'"}]},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T17:19:48Z","id":"1555936659","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"0cec0d25e606c023a62a4fc7cdc815309ebf6d16","size":3,"push_id":80573367,"commits":[{"sha":"5bb654d26dd014d36794acd1e6ecf3736f12aad7","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5bb654d26dd014d36794acd1e6ecf3736f12aad7","distinct":false,"message":"Implement the three authentication schemes"},{"sha":"cb0313157bf904f2d364377d35d9397b269547a5","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cb0313157bf904f2d364377d35d9397b269547a5","distinct":false,"message":"Merge branch 'topic/Authentication' into develop"},{"sha":"0cec0d25e606c023a62a4fc7cdc815309ebf6d16","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16","distinct":false,"message":"Publish version 0.7"}],"ref":"refs/heads/develop"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T17:19:47Z","id":"1555936657","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"CreateEvent","payload":{"master_branch":"master","ref":"topic/Authentication","description":"Python library implementing the full Github API v3","ref_type":"branch"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T12:24:21Z","id":"1555833283","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"IssuesEvent","payload":{"action":"opened","issue":{"number":29,"created_at":"2012-05-25T11:47:59Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"","title":"Publish version 0.7","comments":0,"updated_at":"2012-05-25T11:47:59Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/29","id":4752048,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":{"number":5,"created_at":"2012-05-25T11:47:06Z","due_on":"2012-05-26T07:00:00Z","title":"Version 0.7","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/5","id":124045,"open_issues":2,"closed_issues":0,"description":"","state":"open"},"closed_at":null,"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"html_url":"https://github.com/jacquev6/PyGithub/issues/29","labels":[{"name":"Project management","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","color":"444444"}],"state":"open"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T12:02:48Z","id":"1555822981","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-25T06:31:42Z","body":"It means that there will be three ways to create an instance of the Github class:\n github = Github()\n github = Github( login, password )\n github = Github( oauth_token )\n","updated_at":"2012-05-25T06:31:42Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5924198","id":5924198,"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},"action":"created","issue":{"number":15,"created_at":"2012-03-13T06:24:05Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"comments":1,"body":"One would want to use the API without authentication, with login+password, and with OAuth token. Let's cover these use-cases.","title":"Implement all authentication schemes","updated_at":"2012-05-25T06:31:42Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/15","id":3624575,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":null,"closed_at":null,"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"labels":[{"name":"Functionalities","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","color":"e102d8"}],"html_url":"https://github.com/jacquev6/PyGithub/issues/15","state":"open"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T06:31:42Z","id":"1555742639","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"WatchEvent","payload":{"action":"started"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T06:05:21Z","id":"1555738288","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"527ce7459a2e60d1536883f19b9bc6850d71127b","size":5,"push_id":79877715,"commits":[{"sha":"287bc541542f9d32339e7dd4b36a511cab2ebdae","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/287bc541542f9d32339e7dd4b36a511cab2ebdae","distinct":true,"message":"Generate more coverage information"},{"sha":"588a4a9a355096c00a2bb25f27664d2115e120ac","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/588a4a9a355096c00a2bb25f27664d2115e120ac","distinct":true,"message":"Test AuthenticatedUser watching"},{"sha":"815720f0deb376c34166c27b6e3b73e5c1f5b1a3","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/815720f0deb376c34166c27b6e3b73e5c1f5b1a3","distinct":true,"message":"Test Authorization"},{"sha":"473c92adcd8bbbd32003d9c65666ede66059551b","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/473c92adcd8bbbd32003d9c65666ede66059551b","distinct":true,"message":"Test Download and CommitComment"},{"sha":"527ce7459a2e60d1536883f19b9bc6850d71127b","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/527ce7459a2e60d1536883f19b9bc6850d71127b","distinct":true,"message":"Merge commit 'c93f9cc8484b7' into topic/RewriteWithGeneratedCode\n\nConflicts:\n\ttest/IntegrationTest.py"}],"ref":"refs/heads/topic/RewriteWithGeneratedCode"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-22T19:59:48Z","id":"1554729420","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"DownloadEvent","payload":{"download":{"name":"Foobar.txt","size":1024,"created_at":"2012-05-22T19:15:29Z","content_type":"text/plain","download_count":0,"url":"https://api.github.com/repos/jacquev6/PyGithub/downloads/242562","id":242562,"description":null,"html_url":"https://github.com/downloads/jacquev6/PyGithub/Foobar.txt"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-22T19:15:30Z","id":"1554712197","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"DownloadEvent","payload":{"download":{"name":"Foobar.txt","size":1024,"created_at":"2012-05-22T19:11:49Z","content_type":"text/richtext","download_count":0,"url":"https://api.github.com/repos/jacquev6/PyGithub/downloads/242556","id":242556,"description":"Download created by PyGithub","html_url":"https://github.com/downloads/jacquev6/PyGithub/Foobar.txt"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-22T19:11:49Z","id":"1554710791","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"DownloadEvent","payload":{"download":{"name":"Foobar.txt","created_at":"2012-05-22T18:58:32Z","size":1024,"content_type":"text/plain","url":"https://api.github.com/repos/jacquev6/PyGithub/downloads/242550","download_count":0,"id":242550,"description":null,"html_url":"https://github.com/downloads/jacquev6/PyGithub/Foobar.txt"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-22T18:58:32Z","id":"1554705673","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"CommitCommentEvent","payload":{"comment":{"position":19,"created_at":"2012-05-22T18:53:25Z","line":211,"body":"Foobar","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","updated_at":"2012-05-22T18:53:25Z","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1362020","id":1362020,"path":"src/github/AuthenticatedUser.py","html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1362020","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-22T18:53:25Z","id":"1554703698","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"CommitCommentEvent","payload":{"comment":{"position":3,"created_at":"2012-05-22T18:50:02Z","line":null,"body":"Comment also created by PyGithub","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","updated_at":"2012-05-22T18:50:02Z","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1362001","id":1362001,"path":"codegen/templates/GithubObject.MethodBody.UseResult.py","html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1362001","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-22T18:50:02Z","id":"1554702296","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"CommitCommentEvent","payload":{"comment":{"position":null,"created_at":"2012-05-22T18:49:34Z","line":26,"body":"Comment created by PyGithub","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","updated_at":"2012-05-22T18:49:34Z","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1362000","id":1362000,"path":"codegen/templates/GithubObject.MethodBody.UseResult.py","html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1362000","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-22T18:49:34Z","id":"1554702087","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"CommitCommentEvent","payload":{"comment":{"position":null,"created_at":"2012-05-22T18:40:18Z","body":"Comment created by PyGithub","line":null,"commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","updated_at":"2012-05-22T18:40:18Z","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1361949","id":1361949,"path":null,"html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1361949","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-22T18:40:18Z","id":"1554698320","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"CommitCommentEvent","payload":{"comment":{"position":null,"created_at":"2012-05-22T18:36:58Z","line":null,"body":"Comment created by PyGithub","updated_at":"2012-05-22T18:36:58Z","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1361928","id":1361928,"path":null,"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1361928"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-22T18:36:58Z","id":"1554697057","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"WatchEvent","payload":{"action":"started"},"public":true,"repo":{"url":"https://api.github.com/repos/nvie/gitflow","id":481366,"name":"nvie/gitflow"},"created_at":"2012-05-22T17:15:11Z","id":"1554664316","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"661812b9dd136efdb0e0c413793deb0939146651","size":2,"push_id":79550719,"commits":[{"sha":"c93f9cc8484b7835130689befc89ae88c7e72694","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c93f9cc8484b7835130689befc89ae88c7e72694","distinct":true,"message":"Remove noise in human readable description"},{"sha":"661812b9dd136efdb0e0c413793deb0939146651","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/661812b9dd136efdb0e0c413793deb0939146651","distinct":true,"message":"Test watching"}],"ref":"refs/heads/topic/RewriteWithGeneratedCode"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-21T13:48:45Z","id":"1554164185","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"WatchEvent","payload":{"action":"started"},"public":true,"repo":{"url":"https://api.github.com/repos/nvie/gitflow","id":481366,"name":"nvie/gitflow"},"created_at":"2012-05-21T11:31:55Z","id":"1554123822","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-21T11:17:12Z","body":"Implemented in ca97469. Will be in version 1.0.","updated_at":"2012-05-21T11:17:12Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5820199","id":5820199,"user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},"action":"created","issue":{"number":26,"created_at":"2012-05-17T12:02:05Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"Hi!\n\nI tried to find a function which returns the number of API requests I have remaining due to [rate limiting](http://developer.github.com/v3/#rate-limiting). Is this somewhere in the library and I can't find it? If not, I think it would be a great feature to have, to be able to keep track of how many requests certain actions use up.","comments":3,"title":"Rate limiting?","updated_at":"2012-05-21T11:17:12Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/26","id":4622816,"assignee":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":{"number":2,"created_at":"2012-03-08T12:22:28Z","due_on":"2012-06-04T07:00:00Z","title":"Version 1.0: coherent public interface","creator":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","id":93547,"closed_issues":2,"open_issues":9,"description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","state":"open"},"closed_at":"2012-05-21T11:17:12Z","html_url":"https://github.com/jacquev6/PyGithub/issues/26","user":{"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","id":327442,"login":"bilderbuchi"},"labels":[{"name":"Public interface","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","color":"d7e102"}],"state":"closed"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-21T11:17:14Z","id":"1554120319","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"IssuesEvent","payload":{"action":"closed","issue":{"number":26,"created_at":"2012-05-17T12:02:05Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"Hi!\n\nI tried to find a function which returns the number of API requests I have remaining due to [rate limiting](http://developer.github.com/v3/#rate-limiting). Is this somewhere in the library and I can't find it? If not, I think it would be a great feature to have, to be able to keep track of how many requests certain actions use up.","comments":3,"title":"Rate limiting?","updated_at":"2012-05-21T11:17:12Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/26","id":4622816,"assignee":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":{"number":2,"created_at":"2012-03-08T12:22:28Z","due_on":"2012-06-04T07:00:00Z","title":"Version 1.0: coherent public interface","creator":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","id":93547,"open_issues":9,"closed_issues":2,"description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","state":"open"},"closed_at":"2012-05-21T11:17:12Z","html_url":"https://github.com/jacquev6/PyGithub/issues/26","user":{"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","id":327442,"login":"bilderbuchi"},"labels":[{"name":"Public interface","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","color":"d7e102"}],"state":"closed"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-21T11:17:14Z","id":"1554120316","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"ca974699b0ea2a770e6c2dbd162b3d2c0ae9fe89","size":1,"push_id":79524271,"commits":[{"sha":"ca974699b0ea2a770e6c2dbd162b3d2c0ae9fe89","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ca974699b0ea2a770e6c2dbd162b3d2c0ae9fe89","distinct":true,"message":"Retrieve rate limiting information"}],"ref":"refs/heads/topic/RewriteWithGeneratedCode"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-21T11:16:05Z","id":"1554120027","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"d5ba645d446d9c237a52ddc9cdc6862e399c62dc","size":4,"push_id":79431688,"commits":[{"sha":"fd18d6299da666bffb9490a1a784060ca7a516f1","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/fd18d6299da666bffb9490a1a784060ca7a516f1","distinct":true,"message":"Test IssueComment"},{"sha":"beaa58ca0c038469b3b553b804b4d37b2363f8e2","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/beaa58ca0c038469b3b553b804b4d37b2363f8e2","distinct":true,"message":"Test IssueEvent attributes"},{"sha":"6a2e4b4958385667c892cbd720fb91c6c44ab81a","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6a2e4b4958385667c892cbd720fb91c6c44ab81a","distinct":true,"message":"Improve test coverage of NamedUser"},{"sha":"d5ba645d446d9c237a52ddc9cdc6862e399c62dc","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/d5ba645d446d9c237a52ddc9cdc6862e399c62dc","distinct":true,"message":"Improve test coverage of AuthenticatedUser"}],"ref":"refs/heads/topic/RewriteWithGeneratedCode"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-20T17:59:32Z","id":"1553953684","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"FollowEvent","payload":{"target":{"name":"Vincent Driessen","company":"3rd Cloud","gravatar_id":"c5a7f21b46df698f3db31c37ed0cf55a","avatar_url":"https://secure.gravatar.com/avatar/c5a7f21b46df698f3db31c37ed0cf55a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","created_at":"2009-05-12T21:19:38Z","location":"Netherlands","public_repos":61,"blog":"http://nvie.com","followers":297,"url":"https://api.github.com/users/nvie","public_gists":16,"hireable":false,"id":83844,"type":"User","bio":null,"login":"nvie","html_url":"https://github.com/nvie","email":"vincent@3rdcloud.com","following":41}},"public":true,"repo":{"url":"https://api.github.com/repos//","name":"/"},"created_at":"2012-05-20T12:47:52Z","id":"1553918130","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}}] + diff --git a/lib/github/tests/ReplayData/Exceptions.testBadAuthentication.txt b/lib/github/tests/ReplayData/Exceptions.testBadAuthentication.txt new file mode 100644 index 0000000000..6c11ada80c --- /dev/null +++ b/lib/github/tests/ReplayData/Exceptions.testBadAuthentication.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +401 +[('status', '401 Unauthorized'), ('content-length', '29'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('etag', '"ca6a3702f840b6bff0bb1bca6be0337c"'), ('date', 'Sat, 02 Jun 2012 12:12:32 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"message":"Bad credentials"} + diff --git a/lib/github/tests/ReplayData/Exceptions.testInvalidInput.txt b/lib/github/tests/ReplayData/Exceptions.testInvalidInput.txt new file mode 100644 index 0000000000..eb50d39854 --- /dev/null +++ b/lib/github/tests/ReplayData/Exceptions.testInvalidInput.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/user/keys +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"key": "xxx", "title": "Bad key"} +422 +[('status', '422 Unprocessable Entity'), ('x-ratelimit-remaining', '4995'), ('content-length', '221'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"73f756ef75655dd74463eb1bf4cfefe1"'), ('date', 'Wed, 30 May 2012 07:00:27 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"message":"Validation Failed","errors":[{"field":"key","resource":"PublicKey","message":"key is invalid. It must begin with 'ssh-rsa' or 'ssh-dss'. Check that you're copying the public half of the key","code":"custom"}]} + diff --git a/lib/github/tests/ReplayData/Exceptions.testNonJsonDataReturnedByGithub.txt b/lib/github/tests/ReplayData/Exceptions.testNonJsonDataReturnedByGithub.txt new file mode 100755 index 0000000000..963a346760 --- /dev/null +++ b/lib/github/tests/ReplayData/Exceptions.testNonJsonDataReturnedByGithub.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/users/jacquev6 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +503 +[('status', '503 Servive Unavailable'), ('content-length', '104'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('etag', '"ca6a3702f840b6bff0bb1bca6be0337c"'), ('date', 'Sat, 02 Jun 2012 12:12:32 GMT'), ('content-type', 'application/json; charset=utf-8')] +

    503 Service Unavailable

    No server is available to handle this request. + diff --git a/lib/github/tests/ReplayData/Exceptions.testUnknownObject.txt b/lib/github/tests/ReplayData/Exceptions.testUnknownObject.txt new file mode 100644 index 0000000000..cdc2abb7f1 --- /dev/null +++ b/lib/github/tests/ReplayData/Exceptions.testUnknownObject.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4971'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"0e6c8f1cbb0c4f0eae96d8a76de9a43f"'), ('date', 'Sat, 02 Jun 2012 12:11:46 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","total_private_repos":5,"company":"Criteo","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","public_gists":3,"email":"vincent@vincent-jacques.net","owned_private_repos":5,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","private_gists":5,"collaborators":0,"created_at":"2010-07-09T06:10:06Z","blog":"http://vincent-jacques.net","location":"Paris, France","url":"https://api.github.com/users/jacquev6","following":24,"disk_usage":16988,"public_repos":10,"name":"Vincent Jacques","hireable":false,"followers":13,"html_url":"https://github.com/jacquev6","id":327146,"plan":{"private_repos":5,"collaborators":1,"space":614400,"name":"micro"},"bio":""} + +https +GET +api.github.com +None +/repos/jacquev6/Xxx +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +404 +[('status', '404 Not Found'), ('x-ratelimit-remaining', '4970'), ('content-length', '23'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"e66a7a6c91e2c26803f3f49feb7a883f"'), ('date', 'Sat, 02 Jun 2012 12:11:47 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"message":"Not Found"} + diff --git a/lib/github/tests/ReplayData/Exceptions.testUnknownUser.txt b/lib/github/tests/ReplayData/Exceptions.testUnknownUser.txt new file mode 100644 index 0000000000..0afe697648 --- /dev/null +++ b/lib/github/tests/ReplayData/Exceptions.testUnknownUser.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/users/ThisUserShouldReallyNotExist +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +404 +[('status', '404 Not Found'), ('x-ratelimit-remaining', '4968'), ('content-length', '23'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"e66a7a6c91e2c26803f3f49feb7a883f"'), ('date', 'Sat, 02 Jun 2012 12:24:43 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"message":"Not Found"} + diff --git a/lib/github/tests/ReplayData/ExposeAllAttributes.testAllClasses.txt b/lib/github/tests/ReplayData/ExposeAllAttributes.testAllClasses.txt new file mode 100644 index 0000000000..0dd9860cf1 --- /dev/null +++ b/lib/github/tests/ReplayData/ExposeAllAttributes.testAllClasses.txt @@ -0,0 +1,660 @@ +https +GET +api.github.com +None +/users/nvie +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4896'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '8af842fb-ea9b-4237-bb36-ba65ee012cca'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '1218'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 06 Sep 2013 13:38:58 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"ded215d39a497c6d2de00dd5e5a5deb6"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:05:00 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378482241')] +{"login":"nvie","id":83844,"avatar_url":"https://1.gravatar.com/avatar/466ef7561a0b100dc5a1021959962d28?d=https%3A%2F%2Fidenticons.github.com%2Fe6d0513ce49cc06cb956251623cb8fd9.png","gravatar_id":"466ef7561a0b100dc5a1021959962d28","url":"https://api.github.com/users/nvie","html_url":"https://github.com/nvie","followers_url":"https://api.github.com/users/nvie/followers","following_url":"https://api.github.com/users/nvie/following{/other_user}","gists_url":"https://api.github.com/users/nvie/gists{/gist_id}","starred_url":"https://api.github.com/users/nvie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nvie/subscriptions","organizations_url":"https://api.github.com/users/nvie/orgs","repos_url":"https://api.github.com/users/nvie/repos","events_url":"https://api.github.com/users/nvie/events{/privacy}","received_events_url":"https://api.github.com/users/nvie/received_events","type":"User","name":"Vincent Driessen","company":"3rd Cloud","blog":"http://nvie.com","location":"Netherlands","email":"vincent@3rdcloud.com","hireable":true,"bio":null,"public_repos":87,"followers":542,"following":45,"created_at":"2009-05-12T21:19:38Z","updated_at":"2013-09-06T13:38:58Z","public_gists":38} + +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4895'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', 'bd7ef47e-9e8f-47b2-8367-f5d1185f675d'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '1471'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 06 Sep 2013 12:51:22 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"654d1a29abe3a61b096e8bffbc61c162"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:05:01 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378482241')] +{"login":"jacquev6","id":327146,"avatar_url":"https://1.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","name":"Vincent Jacques","company":"","blog":"http://vincent-jacques.net","location":"Paris, France","email":"vincent@vincent-jacques.net","hireable":false,"bio":"","public_repos":17,"followers":28,"following":40,"created_at":"2010-07-09T06:10:06Z","updated_at":"2013-09-06T12:51:22Z","public_gists":5,"total_private_repos":4,"owned_private_repos":4,"disk_usage":19212,"collaborators":1,"plan":{"name":"micro","space":614400,"collaborators":1,"private_repos":5},"private_gists":6,"site_admin":false} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4894'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '8834e1c1-f4f5-4da8-a92e-4b985517e4fd'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '4644'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 06 Sep 2013 12:41:05 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"feb5059cac897bdd13fd1205785f865c"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:05:02 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378482241')] +{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-09-06T12:41:05Z","pushed_at":"2013-09-06T12:41:05Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":820,"watchers_count":256,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":76,"mirror_url":null,"open_issues_count":15,"forks":76,"open_issues":15,"watchers":256,"master_branch":"master","default_branch":"master","permissions":{"admin":true,"push":true,"pull":true},"network_count":76} + +https +GET +api.github.com +None +/orgs/BeaverSoftware +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4893'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', 'aadd8ce1-31df-4c38-b3d9-33ba75cfaf08'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '1030'), ('server', 'GitHub.com'), ('last-modified', 'Wed, 23 Jan 2013 12:15:22 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"99d8ce990ccf1acbb3508bd20d9883e4"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:05:03 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378482241')] +{"login":"BeaverSoftware","id":1424031,"url":"https://api.github.com/orgs/BeaverSoftware","repos_url":"https://api.github.com/orgs/BeaverSoftware/repos","events_url":"https://api.github.com/orgs/BeaverSoftware/events","members_url":"https://api.github.com/orgs/BeaverSoftware/members{/member}","public_members_url":"https://api.github.com/orgs/BeaverSoftware/public_members{/member}","avatar_url":"https://0.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https%3A%2F%2Fidenticons.github.com%2Fde8dec416975d0a85845b1b88385b9d5.png","name":null,"company":null,"blog":null,"location":"Paris, France","email":null,"public_repos":1,"public_gists":0,"followers":0,"following":0,"html_url":"https://github.com/BeaverSoftware","created_at":"2012-02-09T19:20:12Z","updated_at":"2013-01-23T12:15:22Z","type":"Organization","total_private_repos":0,"owned_private_repos":0,"private_gists":0,"disk_usage":84,"collaborators":0,"billing_email":"BeaverSoftware@vincent-jacques.net","plan":{"name":"free","space":307200,"private_repos":0}} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/branches/master +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4892'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '43800e7e-e879-402b-8701-255c06ec7c33'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('content-length', '3317'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('etag', '"4363de8c7d91e18a17cec5a495ab091a"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:05:04 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378482241')] +{"name":"master","commit":{"sha":"ed781f8b1b96e1d2a342d36ca53114ea28862fa8","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-21T16:39:22Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-21T16:39:22Z"},"message":"Fix date of 1.18.0","tree":{"sha":"e90c43164378222f04883c0f6547102df818d1ef","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/e90c43164378222f04883c0f6547102df818d1ef"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/ed781f8b1b96e1d2a342d36ca53114ea28862fa8","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ed781f8b1b96e1d2a342d36ca53114ea28862fa8","html_url":"https://github.com/jacquev6/PyGithub/commit/ed781f8b1b96e1d2a342d36ca53114ea28862fa8","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ed781f8b1b96e1d2a342d36ca53114ea28862fa8/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://1.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://1.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"2c4e3cbc24581c214f44682bfc3e7f438bae127a","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2c4e3cbc24581c214f44682bfc3e7f438bae127a","html_url":"https://github.com/jacquev6/PyGithub/commit/2c4e3cbc24581c214f44682bfc3e7f438bae127a"}]},"_links":{"self":"https://api.github.com/repos/jacquev6/PyGithub/branches/master","html":"https://github.com/jacquev6/PyGithub/tree/master"}} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4891'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '223c6b24-a4ca-4539-8d78-38adeb061554'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '5275'), ('server', 'GitHub.com'), ('last-modified', 'Wed, 09 May 2012 16:22:33 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"91582e2dc24ad5461e61062c01b32969"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:05:05 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378482241')] +{"sha":"1292bf0e22c796e91cc3d6e24b544aece8c21f2a","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2012-05-09T16:22:33Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2012-05-09T16:22:33Z"},"message":"Remove completion functions from GitAuthor","tree":{"sha":"4c6bd50994f0f9823f898b1c6c964ad7d4fa11ab","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/4c6bd50994f0f9823f898b1c6c964ad7d4fa11ab"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a","html_url":"https://github.com/jacquev6/PyGithub/commit/1292bf0e22c796e91cc3d6e24b544aece8c21f2a","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"b46ed0dfde5ad02d3b91eb54a41c5ed960710eae","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b46ed0dfde5ad02d3b91eb54a41c5ed960710eae","html_url":"https://github.com/jacquev6/PyGithub/commit/b46ed0dfde5ad02d3b91eb54a41c5ed960710eae"}],"stats":{"total":20,"additions":0,"deletions":20},"files":[{"sha":"ca6a3c616fc1367b6d01d04a7cf6ee27cf216f26","filename":"github/GithubObjects/GitAuthor.py","status":"modified","additions":0,"deletions":20,"changes":20,"blob_url":"https://github.com/jacquev6/PyGithub/blob/1292bf0e22c796e91cc3d6e24b544aece8c21f2a/github/GithubObjects/GitAuthor.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/1292bf0e22c796e91cc3d6e24b544aece8c21f2a/github/GithubObjects/GitAuthor.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/GithubObjects/GitAuthor.py?ref=1292bf0e22c796e91cc3d6e24b544aece8c21f2a","patch":"@@ -14,22 +14,17 @@ def __init__( self, requester, attributes, lazy ):\n self.__completed = False\n self.__initAttributes()\n self.__useAttributes( attributes )\n- if not lazy:\n- self.__complete()\n \n @property\n def date( self ):\n- self.__completeIfNeeded( self.__date )\n return self.__date\n \n @property\n def email( self ):\n- self.__completeIfNeeded( self.__email )\n return self.__email\n \n @property\n def name( self ):\n- self.__completeIfNeeded( self.__name )\n return self.__name\n \n def __initAttributes( self ):\n@@ -37,21 +32,6 @@ def __initAttributes( self ):\n self.__email = None\n self.__name = None\n \n- def __completeIfNeeded( self, testedAttribute ):\n- if not self.__completed and testedAttribute is None:\n- self.__complete()\n-\n- # @todo Do not generate __complete if type has no url attribute\n- def __complete( self ):\n- status, headers, data = self.__requester.request(\n- \"GET\",\n- self.__url,\n- None,\n- None\n- )\n- self.__useAttributes( data )\n- self.__completed = True\n-\n def __useAttributes( self, attributes ):\n #@todo No need to check if attribute is in attributes when attribute is mandatory\n if \"date\" in attributes and attributes[ \"date\" ] is not None:"}]} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/statuses/1292bf0e22c796e91cc3d6e24b544aece8c21f2a +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4890'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', 'bfc3ae14-6a54-4607-9d33-e51833d38736'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('content-length', '2539'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('etag', '"97c44c9e1c063b88767ef99e812a077b"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:05:06 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378482241')] +[{"url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/1292bf0e22c796e91cc3d6e24b544aece8c21f2a","id":277040,"state":"success","description":"Status successfuly created by PyGithub","target_url":"https://github.com/jacquev6/PyGithub/issues/67","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://1.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"created_at":"2012-09-08T11:30:56Z","updated_at":"2012-09-08T11:30:56Z"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/1292bf0e22c796e91cc3d6e24b544aece8c21f2a","id":277031,"state":"pending","description":null,"target_url":null,"creator":{"login":"jacquev6","id":327146,"avatar_url":"https://1.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"created_at":"2012-09-08T11:27:12Z","updated_at":"2012-09-08T11:27:12Z"}] + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/milestones/17 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4889'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '77d21e66-086b-4a25-a708-948a4c057bf8'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '1338'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 06 Sep 2013 12:51:22 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"654d1a29abe3a61b096e8bffbc61c162"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:05:08 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378482241')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/17","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/17/labels","id":215837,"number":17,"title":"Version 1.9.1","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://1.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":2,"state":"closed","created_at":"2012-11-20T07:36:46Z","updated_at":"2012-11-20T18:42:30Z","due_on":null} + +https +GET +api.github.com +None +/gists/149016 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4888'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '9a8fb974-29df-453c-a56c-0da8b8ce072c'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '32105'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 06 Sep 2013 13:04:59 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"1aaa6053c05e25abbc1703b90bd409b9"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:05:09 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378482241')] +{"url":"https://api.github.com/gists/149016","forks_url":"https://api.github.com/gists/149016/forks","commits_url":"https://api.github.com/gists/149016/commits","id":"149016","git_pull_url":"https://gist.github.com/149016.git","git_push_url":"https://gist.github.com/149016.git","html_url":"https://gist.github.com/149016","files":{".gitignore":{"filename":".gitignore","type":"text/plain","language":null,"raw_url":"https://gist.github.com/raw/149016/e056704ebab0fbcd7bf937169b4057d378d09cf8/.gitignore","size":145,"content":"*.aux\n*.glo\n*.idx\n*.log\n*.toc\n*.ist\n*.acn\n*.acr\n*.alg\n*.bbl\n*.blg\n*.dvi\n*.glg\n*.gls\n*.ilg\n*.ind\n*.lof\n*.lot\n*.maf\n*.mtc\n*.mtc1\n*.out\n*.synctex.gz"}},"public":true,"created_at":"2009-07-17T11:37:42Z","updated_at":"2013-09-06T13:04:59Z","description":"Git: .gitignore file for LaTeX projects","comments":18,"user":{"login":"kogakure","id":5535,"avatar_url":"https://0.gravatar.com/avatar/b53f98d49e275e8387897de02c92288d?d=https%3A%2F%2Fidenticons.github.com%2F7ec69dd44416c46745f6edd947b470cd.png","gravatar_id":"b53f98d49e275e8387897de02c92288d","url":"https://api.github.com/users/kogakure","html_url":"https://github.com/kogakure","followers_url":"https://api.github.com/users/kogakure/followers","following_url":"https://api.github.com/users/kogakure/following{/other_user}","gists_url":"https://api.github.com/users/kogakure/gists{/gist_id}","starred_url":"https://api.github.com/users/kogakure/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kogakure/subscriptions","organizations_url":"https://api.github.com/users/kogakure/orgs","repos_url":"https://api.github.com/users/kogakure/repos","events_url":"https://api.github.com/users/kogakure/events{/privacy}","received_events_url":"https://api.github.com/users/kogakure/received_events","type":"User"},"comments_url":"https://api.github.com/gists/149016/comments","forks":[{"url":"https://api.github.com/gists/452042","user":{"login":"cflewis","id":43708,"avatar_url":"https://2.gravatar.com/avatar/5f986018993d9f078927fe29ee912cf2?d=https%3A%2F%2Fidenticons.github.com%2F287915711d06ce6d90e2c18e1d89d3a6.png","gravatar_id":"5f986018993d9f078927fe29ee912cf2","url":"https://api.github.com/users/cflewis","html_url":"https://github.com/cflewis","followers_url":"https://api.github.com/users/cflewis/followers","following_url":"https://api.github.com/users/cflewis/following{/other_user}","gists_url":"https://api.github.com/users/cflewis/gists{/gist_id}","starred_url":"https://api.github.com/users/cflewis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cflewis/subscriptions","organizations_url":"https://api.github.com/users/cflewis/orgs","repos_url":"https://api.github.com/users/cflewis/repos","events_url":"https://api.github.com/users/cflewis/events{/privacy}","received_events_url":"https://api.github.com/users/cflewis/received_events","type":"User"},"id":"452042","created_at":"2010-06-24T21:51:00Z","updated_at":"2010-06-24T21:51:25Z"},{"url":"https://api.github.com/gists/871983","user":{"login":"rbochet","id":56806,"avatar_url":"https://2.gravatar.com/avatar/54925726f7c3a2b76028718eddb8522a?d=https%3A%2F%2Fidenticons.github.com%2F8818556ce6ba4bc9302dca9ec1979591.png","gravatar_id":"54925726f7c3a2b76028718eddb8522a","url":"https://api.github.com/users/rbochet","html_url":"https://github.com/rbochet","followers_url":"https://api.github.com/users/rbochet/followers","following_url":"https://api.github.com/users/rbochet/following{/other_user}","gists_url":"https://api.github.com/users/rbochet/gists{/gist_id}","starred_url":"https://api.github.com/users/rbochet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rbochet/subscriptions","organizations_url":"https://api.github.com/users/rbochet/orgs","repos_url":"https://api.github.com/users/rbochet/repos","events_url":"https://api.github.com/users/rbochet/events{/privacy}","received_events_url":"https://api.github.com/users/rbochet/received_events","type":"User"},"id":"871983","created_at":"2011-03-16T03:48:24Z","updated_at":"2013-08-16T00:46:15Z"},{"url":"https://api.github.com/gists/980414","user":{"login":"j10","id":250070,"avatar_url":"https://0.gravatar.com/avatar/7eb0a4d397a695f7fd15069a4f24ad44?d=https%3A%2F%2Fidenticons.github.com%2F6019c728e12af5d048c3d2decb9800cd.png","gravatar_id":"7eb0a4d397a695f7fd15069a4f24ad44","url":"https://api.github.com/users/j10","html_url":"https://github.com/j10","followers_url":"https://api.github.com/users/j10/followers","following_url":"https://api.github.com/users/j10/following{/other_user}","gists_url":"https://api.github.com/users/j10/gists{/gist_id}","starred_url":"https://api.github.com/users/j10/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/j10/subscriptions","organizations_url":"https://api.github.com/users/j10/orgs","repos_url":"https://api.github.com/users/j10/repos","events_url":"https://api.github.com/users/j10/events{/privacy}","received_events_url":"https://api.github.com/users/j10/received_events","type":"User"},"id":"980414","created_at":"2011-05-19T08:43:14Z","updated_at":"2011-05-19T08:43:20Z"},{"url":"https://api.github.com/gists/1404741","user":{"login":"Vaguery","id":81171,"avatar_url":"https://0.gravatar.com/avatar/db04d40ecceb0a4c0683a60462d11794?d=https%3A%2F%2Fidenticons.github.com%2Fc3ea21d464d21b7bf62431791ec01b78.png","gravatar_id":"db04d40ecceb0a4c0683a60462d11794","url":"https://api.github.com/users/Vaguery","html_url":"https://github.com/Vaguery","followers_url":"https://api.github.com/users/Vaguery/followers","following_url":"https://api.github.com/users/Vaguery/following{/other_user}","gists_url":"https://api.github.com/users/Vaguery/gists{/gist_id}","starred_url":"https://api.github.com/users/Vaguery/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Vaguery/subscriptions","organizations_url":"https://api.github.com/users/Vaguery/orgs","repos_url":"https://api.github.com/users/Vaguery/repos","events_url":"https://api.github.com/users/Vaguery/events{/privacy}","received_events_url":"https://api.github.com/users/Vaguery/received_events","type":"User"},"id":"1404741","created_at":"2011-11-29T13:05:35Z","updated_at":"2011-11-29T13:05:35Z"},{"url":"https://api.github.com/gists/1422904","user":{"login":"phieber","id":1208351,"avatar_url":"https://1.gravatar.com/avatar/e2f846ae903d79fa8750763d0809cab5?d=https%3A%2F%2Fidenticons.github.com%2F09c10f8d5454910d48c67ff6081e8601.png","gravatar_id":"e2f846ae903d79fa8750763d0809cab5","url":"https://api.github.com/users/phieber","html_url":"https://github.com/phieber","followers_url":"https://api.github.com/users/phieber/followers","following_url":"https://api.github.com/users/phieber/following{/other_user}","gists_url":"https://api.github.com/users/phieber/gists{/gist_id}","starred_url":"https://api.github.com/users/phieber/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/phieber/subscriptions","organizations_url":"https://api.github.com/users/phieber/orgs","repos_url":"https://api.github.com/users/phieber/repos","events_url":"https://api.github.com/users/phieber/events{/privacy}","received_events_url":"https://api.github.com/users/phieber/received_events","type":"User"},"id":"1422904","created_at":"2011-12-02T11:25:46Z","updated_at":"2011-12-02T11:25:46Z"},{"url":"https://api.github.com/gists/1585783","user":{"login":"pbroschwitz","id":92129,"avatar_url":"https://1.gravatar.com/avatar/68e33f71f778ec322d68ca15ef2a7315?d=https%3A%2F%2Fidenticons.github.com%2F8417990ede5b8e7dc3295d4dd63e4062.png","gravatar_id":"68e33f71f778ec322d68ca15ef2a7315","url":"https://api.github.com/users/pbroschwitz","html_url":"https://github.com/pbroschwitz","followers_url":"https://api.github.com/users/pbroschwitz/followers","following_url":"https://api.github.com/users/pbroschwitz/following{/other_user}","gists_url":"https://api.github.com/users/pbroschwitz/gists{/gist_id}","starred_url":"https://api.github.com/users/pbroschwitz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pbroschwitz/subscriptions","organizations_url":"https://api.github.com/users/pbroschwitz/orgs","repos_url":"https://api.github.com/users/pbroschwitz/repos","events_url":"https://api.github.com/users/pbroschwitz/events{/privacy}","received_events_url":"https://api.github.com/users/pbroschwitz/received_events","type":"User"},"id":"1585783","created_at":"2012-01-09T23:59:07Z","updated_at":"2012-02-20T11:18:52Z"},{"url":"https://api.github.com/gists/2549120","user":{"login":"gaving","id":43741,"avatar_url":"https://2.gravatar.com/avatar/839485ec6b0111d4ccc69646789d6728?d=https%3A%2F%2Fidenticons.github.com%2F781870bb5979fcc948dcc48da5fb798a.png","gravatar_id":"839485ec6b0111d4ccc69646789d6728","url":"https://api.github.com/users/gaving","html_url":"https://github.com/gaving","followers_url":"https://api.github.com/users/gaving/followers","following_url":"https://api.github.com/users/gaving/following{/other_user}","gists_url":"https://api.github.com/users/gaving/gists{/gist_id}","starred_url":"https://api.github.com/users/gaving/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gaving/subscriptions","organizations_url":"https://api.github.com/users/gaving/orgs","repos_url":"https://api.github.com/users/gaving/repos","events_url":"https://api.github.com/users/gaving/events{/privacy}","received_events_url":"https://api.github.com/users/gaving/received_events","type":"User"},"id":"2549120","created_at":"2012-04-29T09:57:32Z","updated_at":"2012-04-29T09:57:32Z"},{"url":"https://api.github.com/gists/2549928","user":{"login":"pbelmans","id":700126,"avatar_url":"https://2.gravatar.com/avatar/bf4c56431003682b725b72668e7de35f?d=https%3A%2F%2Fidenticons.github.com%2Fb6e0db3b4d374eb7e8d52b9f271f4822.png","gravatar_id":"bf4c56431003682b725b72668e7de35f","url":"https://api.github.com/users/pbelmans","html_url":"https://github.com/pbelmans","followers_url":"https://api.github.com/users/pbelmans/followers","following_url":"https://api.github.com/users/pbelmans/following{/other_user}","gists_url":"https://api.github.com/users/pbelmans/gists{/gist_id}","starred_url":"https://api.github.com/users/pbelmans/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pbelmans/subscriptions","organizations_url":"https://api.github.com/users/pbelmans/orgs","repos_url":"https://api.github.com/users/pbelmans/repos","events_url":"https://api.github.com/users/pbelmans/events{/privacy}","received_events_url":"https://api.github.com/users/pbelmans/received_events","type":"User"},"id":"2549928","created_at":"2012-04-29T12:07:11Z","updated_at":"2012-05-14T11:08:39Z"},{"url":"https://api.github.com/gists/3061207","user":{"login":"robEllenberg","id":1210940,"avatar_url":"https://1.gravatar.com/avatar/cee0a0313cb89262ccaf408cf42eeae8?d=https%3A%2F%2Fidenticons.github.com%2Fb927fc8b72fac9a5b05e8afd1545e069.png","gravatar_id":"cee0a0313cb89262ccaf408cf42eeae8","url":"https://api.github.com/users/robEllenberg","html_url":"https://github.com/robEllenberg","followers_url":"https://api.github.com/users/robEllenberg/followers","following_url":"https://api.github.com/users/robEllenberg/following{/other_user}","gists_url":"https://api.github.com/users/robEllenberg/gists{/gist_id}","starred_url":"https://api.github.com/users/robEllenberg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/robEllenberg/subscriptions","organizations_url":"https://api.github.com/users/robEllenberg/orgs","repos_url":"https://api.github.com/users/robEllenberg/repos","events_url":"https://api.github.com/users/robEllenberg/events{/privacy}","received_events_url":"https://api.github.com/users/robEllenberg/received_events","type":"User"},"id":"3061207","created_at":"2012-07-06T16:34:35Z","updated_at":"2012-07-06T16:34:35Z"},{"url":"https://api.github.com/gists/3073850","user":{"login":"naught101","id":167164,"avatar_url":"https://2.gravatar.com/avatar/20cb8dcc17ad4334c0f8cb1ddc28bcd0?d=https%3A%2F%2Fidenticons.github.com%2F16a0a5f3381b862da55875130a94ad3f.png","gravatar_id":"20cb8dcc17ad4334c0f8cb1ddc28bcd0","url":"https://api.github.com/users/naught101","html_url":"https://github.com/naught101","followers_url":"https://api.github.com/users/naught101/followers","following_url":"https://api.github.com/users/naught101/following{/other_user}","gists_url":"https://api.github.com/users/naught101/gists{/gist_id}","starred_url":"https://api.github.com/users/naught101/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/naught101/subscriptions","organizations_url":"https://api.github.com/users/naught101/orgs","repos_url":"https://api.github.com/users/naught101/repos","events_url":"https://api.github.com/users/naught101/events{/privacy}","received_events_url":"https://api.github.com/users/naught101/received_events","type":"User"},"id":"3073850","created_at":"2012-07-09T02:17:21Z","updated_at":"2012-07-09T02:17:21Z"},{"url":"https://api.github.com/gists/3683565","user":{"login":"TKAB","id":66597,"avatar_url":"https://1.gravatar.com/avatar/7a66c8124726c66cf9901d7e09f4f3cb?d=https%3A%2F%2Fidenticons.github.com%2F4bec99ec5bd39630575692948d9e8169.png","gravatar_id":"7a66c8124726c66cf9901d7e09f4f3cb","url":"https://api.github.com/users/TKAB","html_url":"https://github.com/TKAB","followers_url":"https://api.github.com/users/TKAB/followers","following_url":"https://api.github.com/users/TKAB/following{/other_user}","gists_url":"https://api.github.com/users/TKAB/gists{/gist_id}","starred_url":"https://api.github.com/users/TKAB/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/TKAB/subscriptions","organizations_url":"https://api.github.com/users/TKAB/orgs","repos_url":"https://api.github.com/users/TKAB/repos","events_url":"https://api.github.com/users/TKAB/events{/privacy}","received_events_url":"https://api.github.com/users/TKAB/received_events","type":"User"},"id":"3683565","created_at":"2012-09-09T09:58:43Z","updated_at":"2012-09-09T09:58:43Z"},{"url":"https://api.github.com/gists/3802139","user":{"login":"linchen04","id":1383767,"avatar_url":"https://1.gravatar.com/avatar/4380e7c4928005fc0eaf9772e1fe64b7?d=https%3A%2F%2Fidenticons.github.com%2F39a2a9b3f884c9a2e97ce61cb56e02fd.png","gravatar_id":"4380e7c4928005fc0eaf9772e1fe64b7","url":"https://api.github.com/users/linchen04","html_url":"https://github.com/linchen04","followers_url":"https://api.github.com/users/linchen04/followers","following_url":"https://api.github.com/users/linchen04/following{/other_user}","gists_url":"https://api.github.com/users/linchen04/gists{/gist_id}","starred_url":"https://api.github.com/users/linchen04/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/linchen04/subscriptions","organizations_url":"https://api.github.com/users/linchen04/orgs","repos_url":"https://api.github.com/users/linchen04/repos","events_url":"https://api.github.com/users/linchen04/events{/privacy}","received_events_url":"https://api.github.com/users/linchen04/received_events","type":"User"},"id":"3802139","created_at":"2012-09-28T21:20:16Z","updated_at":"2012-09-28T21:20:16Z"},{"url":"https://api.github.com/gists/3958094","user":{"login":"macalicious","id":717205,"avatar_url":"https://2.gravatar.com/avatar/59eb80f68e015e725e9eeb90f24987b2?d=https%3A%2F%2Fidenticons.github.com%2F1d2591e0232d5734561c3c71252a2efa.png","gravatar_id":"59eb80f68e015e725e9eeb90f24987b2","url":"https://api.github.com/users/macalicious","html_url":"https://github.com/macalicious","followers_url":"https://api.github.com/users/macalicious/followers","following_url":"https://api.github.com/users/macalicious/following{/other_user}","gists_url":"https://api.github.com/users/macalicious/gists{/gist_id}","starred_url":"https://api.github.com/users/macalicious/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/macalicious/subscriptions","organizations_url":"https://api.github.com/users/macalicious/orgs","repos_url":"https://api.github.com/users/macalicious/repos","events_url":"https://api.github.com/users/macalicious/events{/privacy}","received_events_url":"https://api.github.com/users/macalicious/received_events","type":"User"},"id":"3958094","created_at":"2012-10-26T10:37:44Z","updated_at":"2012-10-26T10:37:44Z"},{"url":"https://api.github.com/gists/4362953","user":{"login":"dermesser","id":1042327,"avatar_url":"https://0.gravatar.com/avatar/1f99406671a26d17de4f0a52a41ad0c7?d=https%3A%2F%2Fidenticons.github.com%2F1b2f62f9f8f36eeb3c2a1ed42d1a2249.png","gravatar_id":"1f99406671a26d17de4f0a52a41ad0c7","url":"https://api.github.com/users/dermesser","html_url":"https://github.com/dermesser","followers_url":"https://api.github.com/users/dermesser/followers","following_url":"https://api.github.com/users/dermesser/following{/other_user}","gists_url":"https://api.github.com/users/dermesser/gists{/gist_id}","starred_url":"https://api.github.com/users/dermesser/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dermesser/subscriptions","organizations_url":"https://api.github.com/users/dermesser/orgs","repos_url":"https://api.github.com/users/dermesser/repos","events_url":"https://api.github.com/users/dermesser/events{/privacy}","received_events_url":"https://api.github.com/users/dermesser/received_events","type":"User"},"id":"4362953","created_at":"2012-12-23T11:04:08Z","updated_at":"2013-08-07T18:49:16Z"},{"url":"https://api.github.com/gists/4401093","user":{"login":"szalansky","id":323025,"avatar_url":"https://1.gravatar.com/avatar/b96196ac5b306a6f0d302dd9f82a24ee?d=https%3A%2F%2Fidenticons.github.com%2F6470274ac82665a71a91d36c419016ce.png","gravatar_id":"b96196ac5b306a6f0d302dd9f82a24ee","url":"https://api.github.com/users/szalansky","html_url":"https://github.com/szalansky","followers_url":"https://api.github.com/users/szalansky/followers","following_url":"https://api.github.com/users/szalansky/following{/other_user}","gists_url":"https://api.github.com/users/szalansky/gists{/gist_id}","starred_url":"https://api.github.com/users/szalansky/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/szalansky/subscriptions","organizations_url":"https://api.github.com/users/szalansky/orgs","repos_url":"https://api.github.com/users/szalansky/repos","events_url":"https://api.github.com/users/szalansky/events{/privacy}","received_events_url":"https://api.github.com/users/szalansky/received_events","type":"User"},"id":"4401093","created_at":"2012-12-28T19:28:03Z","updated_at":"2012-12-28T19:28:03Z"},{"url":"https://api.github.com/gists/4568476","user":{"login":"flomey","id":3226735,"avatar_url":"https://1.gravatar.com/avatar/3143afe043a2fdcd6a22a537e4cc3c8e?d=https%3A%2F%2Fidenticons.github.com%2F9271b5a509f2dabd1c5850acf684759c.png","gravatar_id":"3143afe043a2fdcd6a22a537e4cc3c8e","url":"https://api.github.com/users/flomey","html_url":"https://github.com/flomey","followers_url":"https://api.github.com/users/flomey/followers","following_url":"https://api.github.com/users/flomey/following{/other_user}","gists_url":"https://api.github.com/users/flomey/gists{/gist_id}","starred_url":"https://api.github.com/users/flomey/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/flomey/subscriptions","organizations_url":"https://api.github.com/users/flomey/orgs","repos_url":"https://api.github.com/users/flomey/repos","events_url":"https://api.github.com/users/flomey/events{/privacy}","received_events_url":"https://api.github.com/users/flomey/received_events","type":"User"},"id":"4568476","created_at":"2013-01-18T20:59:25Z","updated_at":"2013-01-18T20:59:25Z"},{"url":"https://api.github.com/gists/4732801","user":{"login":"mhebing","id":905115,"avatar_url":"https://2.gravatar.com/avatar/14e2a01d187cb0a167942e24e9234f95?d=https%3A%2F%2Fidenticons.github.com%2Fb874dedd9bb70a549db142d519aa6648.png","gravatar_id":"14e2a01d187cb0a167942e24e9234f95","url":"https://api.github.com/users/mhebing","html_url":"https://github.com/mhebing","followers_url":"https://api.github.com/users/mhebing/followers","following_url":"https://api.github.com/users/mhebing/following{/other_user}","gists_url":"https://api.github.com/users/mhebing/gists{/gist_id}","starred_url":"https://api.github.com/users/mhebing/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mhebing/subscriptions","organizations_url":"https://api.github.com/users/mhebing/orgs","repos_url":"https://api.github.com/users/mhebing/repos","events_url":"https://api.github.com/users/mhebing/events{/privacy}","received_events_url":"https://api.github.com/users/mhebing/received_events","type":"User"},"id":"4732801","created_at":"2013-02-07T17:57:21Z","updated_at":"2013-02-07T17:59:53Z"},{"url":"https://api.github.com/gists/5074215","user":{"login":"fumingshih","id":171536,"avatar_url":"https://0.gravatar.com/avatar/cdaeda52c7e0e7db119ec242652a7eac?d=https%3A%2F%2Fidenticons.github.com%2Ff3daf33ead84c02b32d673addce28321.png","gravatar_id":"cdaeda52c7e0e7db119ec242652a7eac","url":"https://api.github.com/users/fumingshih","html_url":"https://github.com/fumingshih","followers_url":"https://api.github.com/users/fumingshih/followers","following_url":"https://api.github.com/users/fumingshih/following{/other_user}","gists_url":"https://api.github.com/users/fumingshih/gists{/gist_id}","starred_url":"https://api.github.com/users/fumingshih/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fumingshih/subscriptions","organizations_url":"https://api.github.com/users/fumingshih/orgs","repos_url":"https://api.github.com/users/fumingshih/repos","events_url":"https://api.github.com/users/fumingshih/events{/privacy}","received_events_url":"https://api.github.com/users/fumingshih/received_events","type":"User"},"id":"5074215","created_at":"2013-03-03T02:30:54Z","updated_at":"2013-03-03T02:30:54Z"},{"url":"https://api.github.com/gists/5126805","user":{"login":"xiddw","id":742519,"avatar_url":"https://2.gravatar.com/avatar/e3aea2d1cdb375467416bff41c614582?d=https%3A%2F%2Fidenticons.github.com%2Ffd082f32f1f9679671081ba58bb37459.png","gravatar_id":"e3aea2d1cdb375467416bff41c614582","url":"https://api.github.com/users/xiddw","html_url":"https://github.com/xiddw","followers_url":"https://api.github.com/users/xiddw/followers","following_url":"https://api.github.com/users/xiddw/following{/other_user}","gists_url":"https://api.github.com/users/xiddw/gists{/gist_id}","starred_url":"https://api.github.com/users/xiddw/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/xiddw/subscriptions","organizations_url":"https://api.github.com/users/xiddw/orgs","repos_url":"https://api.github.com/users/xiddw/repos","events_url":"https://api.github.com/users/xiddw/events{/privacy}","received_events_url":"https://api.github.com/users/xiddw/received_events","type":"User"},"id":"5126805","created_at":"2013-03-10T02:21:30Z","updated_at":"2013-03-10T02:21:30Z"},{"url":"https://api.github.com/gists/5353918","user":{"login":"stared","id":1001610,"avatar_url":"https://2.gravatar.com/avatar/1b324e4900e79878eb518c1263b41795?d=https%3A%2F%2Fidenticons.github.com%2F031dfe1b6a9e475fa708179fb35beb3b.png","gravatar_id":"1b324e4900e79878eb518c1263b41795","url":"https://api.github.com/users/stared","html_url":"https://github.com/stared","followers_url":"https://api.github.com/users/stared/followers","following_url":"https://api.github.com/users/stared/following{/other_user}","gists_url":"https://api.github.com/users/stared/gists{/gist_id}","starred_url":"https://api.github.com/users/stared/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stared/subscriptions","organizations_url":"https://api.github.com/users/stared/orgs","repos_url":"https://api.github.com/users/stared/repos","events_url":"https://api.github.com/users/stared/events{/privacy}","received_events_url":"https://api.github.com/users/stared/received_events","type":"User"},"id":"5353918","created_at":"2013-04-10T11:42:03Z","updated_at":"2013-04-10T11:43:47Z"},{"url":"https://api.github.com/gists/5600181","user":{"login":"huashuai","id":256761,"avatar_url":"https://1.gravatar.com/avatar/279030da669c3950fc54dea37ee3109e?d=https%3A%2F%2Fidenticons.github.com%2Fc66590f0228b4de1b7d16d1b8f10161c.png","gravatar_id":"279030da669c3950fc54dea37ee3109e","url":"https://api.github.com/users/huashuai","html_url":"https://github.com/huashuai","followers_url":"https://api.github.com/users/huashuai/followers","following_url":"https://api.github.com/users/huashuai/following{/other_user}","gists_url":"https://api.github.com/users/huashuai/gists{/gist_id}","starred_url":"https://api.github.com/users/huashuai/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/huashuai/subscriptions","organizations_url":"https://api.github.com/users/huashuai/orgs","repos_url":"https://api.github.com/users/huashuai/repos","events_url":"https://api.github.com/users/huashuai/events{/privacy}","received_events_url":"https://api.github.com/users/huashuai/received_events","type":"User"},"id":"5600181","created_at":"2013-05-17T16:15:32Z","updated_at":"2013-05-17T16:15:32Z"},{"url":"https://api.github.com/gists/5639946","user":{"login":"simardcasanova","id":739940,"avatar_url":"https://0.gravatar.com/avatar/63c42221c8ed3dfc335a0d1b19397e36?d=https%3A%2F%2Fidenticons.github.com%2F819fcce6467f36e0beb6ffc69afa9f21.png","gravatar_id":"63c42221c8ed3dfc335a0d1b19397e36","url":"https://api.github.com/users/simardcasanova","html_url":"https://github.com/simardcasanova","followers_url":"https://api.github.com/users/simardcasanova/followers","following_url":"https://api.github.com/users/simardcasanova/following{/other_user}","gists_url":"https://api.github.com/users/simardcasanova/gists{/gist_id}","starred_url":"https://api.github.com/users/simardcasanova/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/simardcasanova/subscriptions","organizations_url":"https://api.github.com/users/simardcasanova/orgs","repos_url":"https://api.github.com/users/simardcasanova/repos","events_url":"https://api.github.com/users/simardcasanova/events{/privacy}","received_events_url":"https://api.github.com/users/simardcasanova/received_events","type":"User"},"id":"5639946","created_at":"2013-05-23T22:24:19Z","updated_at":"2013-05-23T22:24:57Z"},{"url":"https://api.github.com/gists/5965077","user":{"login":"habi","id":1651235,"avatar_url":"https://1.gravatar.com/avatar/4a0a820ba6c1996bc37d64ce14606ad4?d=https%3A%2F%2Fidenticons.github.com%2Fbaa3c8588d9ab73deea280466d5db7e1.png","gravatar_id":"4a0a820ba6c1996bc37d64ce14606ad4","url":"https://api.github.com/users/habi","html_url":"https://github.com/habi","followers_url":"https://api.github.com/users/habi/followers","following_url":"https://api.github.com/users/habi/following{/other_user}","gists_url":"https://api.github.com/users/habi/gists{/gist_id}","starred_url":"https://api.github.com/users/habi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/habi/subscriptions","organizations_url":"https://api.github.com/users/habi/orgs","repos_url":"https://api.github.com/users/habi/repos","events_url":"https://api.github.com/users/habi/events{/privacy}","received_events_url":"https://api.github.com/users/habi/received_events","type":"User"},"id":"5965077","created_at":"2013-07-10T09:57:15Z","updated_at":"2013-07-10T09:57:40Z"},{"url":"https://api.github.com/gists/6394053","user":{"login":"glaubius","id":5349064,"avatar_url":"https://0.gravatar.com/avatar/ff2451755814a23845b19551371bb026?d=https%3A%2F%2Fidenticons.github.com%2Faa59a5980a33a834ee55c9f386e7c996.png","gravatar_id":"ff2451755814a23845b19551371bb026","url":"https://api.github.com/users/glaubius","html_url":"https://github.com/glaubius","followers_url":"https://api.github.com/users/glaubius/followers","following_url":"https://api.github.com/users/glaubius/following{/other_user}","gists_url":"https://api.github.com/users/glaubius/gists{/gist_id}","starred_url":"https://api.github.com/users/glaubius/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/glaubius/subscriptions","organizations_url":"https://api.github.com/users/glaubius/orgs","repos_url":"https://api.github.com/users/glaubius/repos","events_url":"https://api.github.com/users/glaubius/events{/privacy}","received_events_url":"https://api.github.com/users/glaubius/received_events","type":"User"},"id":"6394053","created_at":"2013-08-30T20:39:05Z","updated_at":"2013-08-30T20:39:05Z"},{"url":"https://api.github.com/gists/6463518","user":{"login":"janten","id":1794407,"avatar_url":"https://2.gravatar.com/avatar/44f5d723bf2ef2dac40327bfa9815989?d=https%3A%2F%2Fidenticons.github.com%2Fe177a89b246259b7b5a84411923e6881.png","gravatar_id":"44f5d723bf2ef2dac40327bfa9815989","url":"https://api.github.com/users/janten","html_url":"https://github.com/janten","followers_url":"https://api.github.com/users/janten/followers","following_url":"https://api.github.com/users/janten/following{/other_user}","gists_url":"https://api.github.com/users/janten/gists{/gist_id}","starred_url":"https://api.github.com/users/janten/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/janten/subscriptions","organizations_url":"https://api.github.com/users/janten/orgs","repos_url":"https://api.github.com/users/janten/repos","events_url":"https://api.github.com/users/janten/events{/privacy}","received_events_url":"https://api.github.com/users/janten/received_events","type":"User"},"id":"6463518","created_at":"2013-09-06T13:04:58Z","updated_at":"2013-09-06T13:04:58Z"}],"history":[{"user":{"login":"kogakure","id":5535,"avatar_url":"https://0.gravatar.com/avatar/b53f98d49e275e8387897de02c92288d?d=https%3A%2F%2Fidenticons.github.com%2F7ec69dd44416c46745f6edd947b470cd.png","gravatar_id":"b53f98d49e275e8387897de02c92288d","url":"https://api.github.com/users/kogakure","html_url":"https://github.com/kogakure","followers_url":"https://api.github.com/users/kogakure/followers","following_url":"https://api.github.com/users/kogakure/following{/other_user}","gists_url":"https://api.github.com/users/kogakure/gists{/gist_id}","starred_url":"https://api.github.com/users/kogakure/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kogakure/subscriptions","organizations_url":"https://api.github.com/users/kogakure/orgs","repos_url":"https://api.github.com/users/kogakure/repos","events_url":"https://api.github.com/users/kogakure/events{/privacy}","received_events_url":"https://api.github.com/users/kogakure/received_events","type":"User"},"version":"3e0e8350f040f21811ceea13975086158ccae986","committed_at":"2010-06-25T06:52:37Z","change_status":{"total":3,"additions":2,"deletions":1},"url":"https://api.github.com/gists/149016/3e0e8350f040f21811ceea13975086158ccae986"},{"user":{"login":"kogakure","id":5535,"avatar_url":"https://0.gravatar.com/avatar/b53f98d49e275e8387897de02c92288d?d=https%3A%2F%2Fidenticons.github.com%2F7ec69dd44416c46745f6edd947b470cd.png","gravatar_id":"b53f98d49e275e8387897de02c92288d","url":"https://api.github.com/users/kogakure","html_url":"https://github.com/kogakure","followers_url":"https://api.github.com/users/kogakure/followers","following_url":"https://api.github.com/users/kogakure/following{/other_user}","gists_url":"https://api.github.com/users/kogakure/gists{/gist_id}","starred_url":"https://api.github.com/users/kogakure/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kogakure/subscriptions","organizations_url":"https://api.github.com/users/kogakure/orgs","repos_url":"https://api.github.com/users/kogakure/repos","events_url":"https://api.github.com/users/kogakure/events{/privacy}","received_events_url":"https://api.github.com/users/kogakure/received_events","type":"User"},"version":"a3ce60041fe20410fc55d141e77a25d26e1a562a","committed_at":"2009-07-17T11:37:43Z","change_status":{"total":22,"additions":22,"deletions":0},"url":"https://api.github.com/gists/149016/a3ce60041fe20410fc55d141e77a25d26e1a562a"}]} + +https +GET +api.github.com +None +/gists/149016/comments/4565 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4887'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', 'd7e4322b-0ea1-4673-8e35-b8c763037ecd'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '1189'), ('server', 'GitHub.com'), ('last-modified', 'Thu, 29 Aug 2013 01:07:03 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"923dd32a449cce56dae93d3438b9451a"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:05:10 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378482241')] +{"url":"https://api.github.com/gists/149016/comments/4565","id":4565,"user":{"login":"cflewis","id":43708,"avatar_url":"https://2.gravatar.com/avatar/5f986018993d9f078927fe29ee912cf2?d=https%3A%2F%2Fidenticons.github.com%2F287915711d06ce6d90e2c18e1d89d3a6.png","gravatar_id":"5f986018993d9f078927fe29ee912cf2","url":"https://api.github.com/users/cflewis","html_url":"https://github.com/cflewis","followers_url":"https://api.github.com/users/cflewis/followers","following_url":"https://api.github.com/users/cflewis/following{/other_user}","gists_url":"https://api.github.com/users/cflewis/gists{/gist_id}","starred_url":"https://api.github.com/users/cflewis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cflewis/subscriptions","organizations_url":"https://api.github.com/users/cflewis/orgs","repos_url":"https://api.github.com/users/cflewis/repos","events_url":"https://api.github.com/users/cflewis/events{/privacy}","received_events_url":"https://api.github.com/users/cflewis/received_events","type":"User"},"created_at":"2010-06-24T21:50:00Z","updated_at":"2010-08-04T09:19:53Z","body":"Excellent! Thanks for this!\n\nI might consider adding '*.synctex.gz'. "} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/git/commits/be37b8a7f3a68631c32672dcd84d9eba27438ee6 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4886'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', 'deb2e31a-4791-4322-bb88-d697b2b31e72'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '952'), ('server', 'GitHub.com'), ('last-modified', 'Thu, 22 Nov 2012 19:06:01 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"b9013239d62338e81f6ec48bae78699e"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:05:11 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378482241')] +{"sha":"be37b8a7f3a68631c32672dcd84d9eba27438ee6","url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/be37b8a7f3a68631c32672dcd84d9eba27438ee6","html_url":"https://github.com/jacquev6/PyGithub/commits/be37b8a7f3a68631c32672dcd84d9eba27438ee6","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2012-11-22T19:06:01Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2012-11-22T19:06:01Z"},"tree":{"sha":"6f7c2d8c66d78863f7b91792deaead619799a1ce","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/6f7c2d8c66d78863f7b91792deaead619799a1ce"},"message":"Measure coverage simply in publish.sh","parents":[{"sha":"3026eb708fa0a6c669d3829e685663b8a161488b","url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/3026eb708fa0a6c669d3829e685663b8a161488b","html_url":"https://github.com/jacquev6/PyGithub/commits/3026eb708fa0a6c669d3829e685663b8a161488b"}]} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/git/trees/6f7c2d8c66d78863f7b91792deaead619799a1ce +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4885'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '43062d85-44e9-4b72-ba51-a94ccd029fd7'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '2784'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 06 Sep 2013 12:41:05 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"feb5059cac897bdd13fd1205785f865c"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:05:12 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378482241')] +{"sha":"6f7c2d8c66d78863f7b91792deaead619799a1ce","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/6f7c2d8c66d78863f7b91792deaead619799a1ce","tree":[{"mode":"100644","type":"blob","sha":"55cb5a84a96705c9b23dd6c9b5095aee9284b30a","path":".gitignore","size":83,"url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/55cb5a84a96705c9b23dd6c9b5095aee9284b30a"},{"mode":"100644","type":"blob","sha":"d1258c3e8ccd002e6ec45473a8fdedc70137c569","path":".travis.yml","size":345,"url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/d1258c3e8ccd002e6ec45473a8fdedc70137c569"},{"mode":"100644","type":"blob","sha":"94a9ed024d3859793618152ea559a168bbcbb5e2","path":"COPYING","size":35147,"url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/94a9ed024d3859793618152ea559a168bbcbb5e2"},{"mode":"100644","type":"blob","sha":"65c5ca88a67c30becee01c5a8816d964b03862f9","path":"COPYING.LESSER","size":7651,"url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/65c5ca88a67c30becee01c5a8816d964b03862f9"},{"mode":"100644","type":"blob","sha":"efbb5203c0bb41b4921999a301a5a35e06e9a8f2","path":"Contributing.md","size":969,"url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/efbb5203c0bb41b4921999a301a5a35e06e9a8f2"},{"mode":"100644","type":"blob","sha":"1344507c245dd59bc972682cb43163176226c597","path":"ReadMe.md","size":4666,"url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/1344507c245dd59bc972682cb43163176226c597"},{"mode":"040000","type":"tree","sha":"d612362a2609ca747a4d6526ae2cbdcd7df19600","path":"doc","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/d612362a2609ca747a4d6526ae2cbdcd7df19600"},{"mode":"040000","type":"tree","sha":"b19632adf7f22ba0561b5c2511cd61b904ede4ca","path":"github","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/b19632adf7f22ba0561b5c2511cd61b904ede4ca"},{"mode":"100755","type":"blob","sha":"f3adf2bddb82857f356e8b6a5ea1da8ea35a6c68","path":"publish.sh","size":942,"url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/f3adf2bddb82857f356e8b6a5ea1da8ea35a6c68"},{"mode":"100644","type":"blob","sha":"609f912230aec315ba1d3c745e472fbc6393eefa","path":"python25-requirements.txt","size":23,"url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/609f912230aec315ba1d3c745e472fbc6393eefa"},{"mode":"100644","type":"blob","sha":"9a23970d3adfeed83eec1d89fbe27062de0b1bfa","path":"python26-requirements.txt","size":10,"url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/9a23970d3adfeed83eec1d89fbe27062de0b1bfa"},{"mode":"100755","type":"blob","sha":"0d8eea784e5bce67efd2f25c6ece0cd573896065","path":"setup.py","size":2481,"url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/0d8eea784e5bce67efd2f25c6ece0cd573896065"}]} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/git/blobs/681fb61f1761743a02f5c790f1c762cbfe8cfad1 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4884'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', 'cc0f0761-fe8d-4ccc-bc23-3348ed8945d5'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('content-length', '299'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('etag', '"01162d231bc8dfd76e35f833ecebaa0e"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:05:14 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378482241')] +{"sha":"681fb61f1761743a02f5c790f1c762cbfe8cfad1","size":71,"url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/681fb61f1761743a02f5c790f1c762cbfe8cfad1","content":"Ki5weWMKR2l0aHViQ3JlZGVudGlhbHMucHkKL2Rpc3QvCi9idWlsZC8KL01B\nTklGRVNUCi9QeUdpdGh1Yi5lZ2ctaW5mby8=\n","encoding":"base64"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/git/refs/tags/v1.17.0 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4883'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', 'eb4e50d0-67c7-41f4-977e-fd091a501b16'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '282'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 06 Sep 2013 12:41:05 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"feb5059cac897bdd13fd1205785f865c"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:05:15 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378482241')] +{"ref":"refs/tags/v1.17.0","url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs/tags/v1.17.0","object":{"sha":"a08db4387b1294359e283f2a5c2c79584e23450f","type":"tag","url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags/a08db4387b1294359e283f2a5c2c79584e23450f"}} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/188 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4882'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '8ca72976-9b88-4917-8fd7-1aa29db18369'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '5443'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 06 Sep 2013 12:51:22 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"654d1a29abe3a61b096e8bffbc61c162"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:05:21 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378482241')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/188","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/188/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/188/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/188/events","html_url":"https://github.com/jacquev6/PyGithub/issues/188","id":17736533,"number":188,"title":"Getting the status of GitHub","user":{"login":"ruxandraburtica","id":797922,"avatar_url":"https://2.gravatar.com/avatar/5703c5907fc67b679be40fd307b07733?d=https%3A%2F%2Fidenticons.github.com%2F470a720db37e19afad67c34e30ffcd85.png","gravatar_id":"5703c5907fc67b679be40fd307b07733","url":"https://api.github.com/users/ruxandraburtica","html_url":"https://github.com/ruxandraburtica","followers_url":"https://api.github.com/users/ruxandraburtica/followers","following_url":"https://api.github.com/users/ruxandraburtica/following{/other_user}","gists_url":"https://api.github.com/users/ruxandraburtica/gists{/gist_id}","starred_url":"https://api.github.com/users/ruxandraburtica/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ruxandraburtica/subscriptions","organizations_url":"https://api.github.com/users/ruxandraburtica/orgs","repos_url":"https://api.github.com/users/ruxandraburtica/repos","events_url":"https://api.github.com/users/ruxandraburtica/events{/privacy}","received_events_url":"https://api.github.com/users/ruxandraburtica/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/31","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/31/labels","id":402388,"number":31,"title":"Version 1.19.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":3,"state":"open","created_at":"2013-08-15T05:54:47Z","updated_at":"2013-09-06T09:42:02Z","due_on":null},"comments":2,"created_at":"2013-08-07T08:57:49Z","updated_at":"2013-09-06T09:11:57Z","closed_at":"2013-09-06T09:11:57Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Maybe I haven't found it, but it would be very useful to have methods for checking the status of the GitHub API (https://status.github.com/api)","closed_by":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"}} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/comments/22686536 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4881'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '49eb6041-cb09-423d-b769-6a927988ef00'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '1396'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 06 Sep 2013 12:51:22 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"654d1a29abe3a61b096e8bffbc61c162"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:05:22 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378482241')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/22686536","html_url":"https://github.com/jacquev6/PyGithub/issues/188#issuecomment-22686536","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/188","id":22686536,"user":{"login":"jacquev6","id":327146,"avatar_url":"https://2.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"created_at":"2013-08-15T05:53:37Z","updated_at":"2013-08-15T05:53:37Z","body":"This seems to be a good idea! I will try to do it in the version after the next one."} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/188/events +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4880'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '67185958-5c65-481a-b8fd-86d28ceea272'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '3480'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 06 Sep 2013 12:51:22 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"654d1a29abe3a61b096e8bffbc61c162"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:05:23 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378482241')] +[{"id":60946408,"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/60946408","actor":{"login":"jacquev6","id":327146,"avatar_url":"https://1.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"event":"assigned","commit_id":null,"created_at":"2013-08-15T05:55:32Z"},{"id":64178794,"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/64178794","actor":{"login":"jacquev6","id":327146,"avatar_url":"https://1.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"event":"referenced","commit_id":"c819580ce872f251e8ec23deee95d9fb15ca19c9","created_at":"2013-09-06T09:05:10Z"},{"id":64179485,"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/64179485","actor":{"login":"jacquev6","id":327146,"avatar_url":"https://1.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"event":"closed","commit_id":null,"created_at":"2013-09-06T09:11:57Z"}] + +https +GET +api.github.com +None +/gitignore/templates/Python +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4879'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '8276ab6d-803c-4421-9a34-ecc99ff8ddec'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('content-length', '367'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('etag', '"7870725c2e426a0c93146449ebc6f176"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:05:26 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378482241')] +{"name":"Python","source":"*.py[cod]\n\n# C extensions\n*.so\n\n# Packages\n*.egg\n*.egg-info\ndist\nbuild\neggs\nparts\nbin\nvar\nsdist\ndevelop-eggs\n.installed.cfg\nlib\nlib64\n\n# Installer logs\npip-log.txt\n\n# Unit test / coverage reports\n.coverage\n.tox\nnosetests.xml\n\n# Translations\n*.mo\n\n# Mr Developer\n.mr.developer.cfg\n.project\n.pydevproject\n"} + +https +GET +api.github.com +None +/teams/141487 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4878'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '7cb4a0fc-0363-4bfb-b09e-68f426c6e359'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '276'), ('server', 'GitHub.com'), ('last-modified', 'Sat, 20 Oct 2007 11:24:19 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"a4af9b5fe3ebc7d9ec2ecd4a637a4863"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:05:27 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378482241')] +{"name":"Owners","id":141487,"slug":"owners","permission":"admin","url":"https://api.github.com/teams/141487","members_url":"https://api.github.com/teams/141487/members{/member}","repositories_url":"https://api.github.com/teams/141487/repos","members_count":1,"repos_count":1} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/labels/Bug +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4877'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', 'ebdad7b3-e224-4923-a10e-2db7e1e75530'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '97'), ('server', 'GitHub.com'), ('last-modified', 'Sat, 20 Oct 2007 11:24:19 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"a4af9b5fe3ebc7d9ec2ecd4a637a4863"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:05:28 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378482241')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/pulls/31 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4876'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '571ddd42-66bf-460c-a9a5-bb5f62ffe987'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '11337'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 06 Sep 2013 12:51:22 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"654d1a29abe3a61b096e8bffbc61c162"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:05:29 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378482241')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/pulls/31","id":1436215,"html_url":"https://github.com/jacquev6/PyGithub/pull/31","diff_url":"https://github.com/jacquev6/PyGithub/pull/31.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/31.patch","issue_url":"https://github.com/jacquev6/PyGithub/pull/31","number":31,"state":"closed","title":"Title edited by PyGithub","user":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"body":"Body edited by PyGithub","created_at":"2012-05-27T09:25:36Z","updated_at":"2012-11-03T08:19:40Z","closed_at":"2012-05-27T10:29:07Z","merged_at":"2012-05-27T10:29:07Z","merge_commit_sha":"28ae6dd10ebccd5eaf8db8dacb5b699ee7f4a663","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":null,"commits_url":"https://github.com/jacquev6/PyGithub/pull/31/commits","review_comments_url":"https://github.com/jacquev6/PyGithub/pull/31/comments","review_comment_url":"/repos/jacquev6/PyGithub/pulls/comments/{number}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/31/comments","head":{"label":"BeaverSoftware:master","ref":"master","sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","user":{"login":"BeaverSoftware","id":1424031,"avatar_url":"https://2.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https%3A%2F%2Fidenticons.github.com%2Fde8dec416975d0a85845b1b88385b9d5.png","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/users/BeaverSoftware","html_url":"https://github.com/BeaverSoftware","followers_url":"https://api.github.com/users/BeaverSoftware/followers","following_url":"https://api.github.com/users/BeaverSoftware/following{/other_user}","gists_url":"https://api.github.com/users/BeaverSoftware/gists{/gist_id}","starred_url":"https://api.github.com/users/BeaverSoftware/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/BeaverSoftware/subscriptions","organizations_url":"https://api.github.com/users/BeaverSoftware/orgs","repos_url":"https://api.github.com/users/BeaverSoftware/repos","events_url":"https://api.github.com/users/BeaverSoftware/events{/privacy}","received_events_url":"https://api.github.com/users/BeaverSoftware/received_events","type":"Organization"},"repo":null},"base":{"label":"jacquev6:topic/RewriteWithGeneratedCode","ref":"topic/RewriteWithGeneratedCode","sha":"ed866fc43833802ab553e5ff8581c81bb00dd433","user":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"repo":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-09-06T12:41:05Z","pushed_at":"2013-09-06T12:41:05Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":820,"watchers_count":256,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":76,"mirror_url":null,"open_issues_count":15,"forks":76,"open_issues":15,"watchers":256,"master_branch":"master","default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/31"},"html":{"href":"https://github.com/jacquev6/PyGithub/pull/31"},"issue":{"href":"https://api.github.com/repos/jacquev6/PyGithub/issues/31"},"comments":{"href":"https://api.github.com/repos/jacquev6/PyGithub/issues/31/comments"},"review_comments":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/31/comments"}},"merged":true,"mergeable":false,"mergeable_state":"dirty","merged_by":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"comments":1,"review_comments":1,"commits":3,"additions":511,"deletions":384,"changed_files":45} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/pulls/comments/1580134 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4875'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '677bae62-e9e4-4420-a6f7-5572ecd844c9'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '2269'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 06 Sep 2013 12:51:22 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"654d1a29abe3a61b096e8bffbc61c162"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:05:31 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378482241')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/pulls/comments/1580134","id":1580134,"body":"Review comment created for PyGithub","diff_hunk":"@@ -70,7 +70,7 @@ def __useAttributes( self, attributes ):\n \n # @todo No need to check if attribute is in attributes when attribute is mandatory\n {% for attribute in class.attributes|dictsort:\"name\" %}\n- if \"{{ attribute.name }}\" in attributes and attributes[ \"{{ attribute.name }}\" ] is not None:\n+ if \"{{ attribute.name }}\" in attributes and attributes[ \"{{ attribute.name }}\" ] is not None: # pragma no branch","path":"codegen/templates/GithubObject.py","position":5,"original_position":5,"commit_id":"8a4f306d4b223682dd19410d4a9150636ebe4206","original_commit_id":"8a4f306d4b223682dd19410d4a9150636ebe4206","user":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"created_at":"2012-09-11T20:06:32Z","updated_at":"2012-09-11T20:06:32Z","html_url":"https://github.com/jacquev6/PyGithub/pull/31#discussion_r1580134","pull_request_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls/31","_links":{"self":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/comments/1580134"},"html":{"href":"https://github.com/jacquev6/PyGithub/pull/31#discussion_r1580134"},"pull_request":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/31"}}} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/pulls/31/files +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4874'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '2e2d4c57-e963-4381-985e-9c6ca34a5692'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '175951'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 06 Sep 2013 12:51:22 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"654d1a29abe3a61b096e8bffbc61c162"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:05:32 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378482241')] +[{"sha":"fb4855905c4825612bdd2db42346833c203e77c8","filename":"codegen/templates/GithubObject.py","status":"modified","additions":1,"deletions":1,"changes":2,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/codegen/templates/GithubObject.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/codegen/templates/GithubObject.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/codegen/templates/GithubObject.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -70,7 +70,7 @@ def __useAttributes( self, attributes ):\n \n # @todo No need to check if attribute is in attributes when attribute is mandatory\n {% for attribute in class.attributes|dictsort:\"name\" %}\n- if \"{{ attribute.name }}\" in attributes and attributes[ \"{{ attribute.name }}\" ] is not None:\n+ if \"{{ attribute.name }}\" in attributes and attributes[ \"{{ attribute.name }}\" ] is not None: # pragma no branch\n \n {% if attribute.type.cardinality == \"scalar\" %}\n {% if attribute.type.simple %}"},{"sha":"502f657077e67378a09cd923d8b7629a81469d81","filename":"src/github/AuthenticatedUser.py","status":"modified","additions":25,"deletions":25,"changes":50,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/AuthenticatedUser.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/AuthenticatedUser.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/AuthenticatedUser.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -568,78 +568,78 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"avatar_url\", \"bio\", \"blog\", \"collaborators\", \"company\", \"created_at\", \"disk_usage\", \"email\", \"followers\", \"following\", \"gravatar_id\", \"hireable\", \"html_url\", \"id\", \"location\", \"login\", \"name\", \"owned_private_repos\", \"plan\", \"private_gists\", \"public_gists\", \"public_repos\", \"total_private_repos\", \"type\", \"url\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"avatar_url\" in attributes and attributes[ \"avatar_url\" ] is not None:\n+ if \"avatar_url\" in attributes and attributes[ \"avatar_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"avatar_url\" ], ( str, unicode ) )\n self.__avatar_url = attributes[ \"avatar_url\" ]\n- if \"bio\" in attributes and attributes[ \"bio\" ] is not None:\n+ if \"bio\" in attributes and attributes[ \"bio\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"bio\" ], ( str, unicode ) )\n self.__bio = attributes[ \"bio\" ]\n- if \"blog\" in attributes and attributes[ \"blog\" ] is not None:\n+ if \"blog\" in attributes and attributes[ \"blog\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"blog\" ], ( str, unicode ) )\n self.__blog = attributes[ \"blog\" ]\n- if \"collaborators\" in attributes and attributes[ \"collaborators\" ] is not None:\n+ if \"collaborators\" in attributes and attributes[ \"collaborators\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"collaborators\" ], int )\n self.__collaborators = attributes[ \"collaborators\" ]\n- if \"company\" in attributes and attributes[ \"company\" ] is not None:\n+ if \"company\" in attributes and attributes[ \"company\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"company\" ], ( str, unicode ) )\n self.__company = attributes[ \"company\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"created_at\" ], ( str, unicode ) )\n self.__created_at = attributes[ \"created_at\" ]\n- if \"disk_usage\" in attributes and attributes[ \"disk_usage\" ] is not None:\n+ if \"disk_usage\" in attributes and attributes[ \"disk_usage\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"disk_usage\" ], int )\n self.__disk_usage = attributes[ \"disk_usage\" ]\n- if \"email\" in attributes and attributes[ \"email\" ] is not None:\n+ if \"email\" in attributes and attributes[ \"email\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"email\" ], ( str, unicode ) )\n self.__email = attributes[ \"email\" ]\n- if \"followers\" in attributes and attributes[ \"followers\" ] is not None:\n+ if \"followers\" in attributes and attributes[ \"followers\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"followers\" ], int )\n self.__followers = attributes[ \"followers\" ]\n- if \"following\" in attributes and attributes[ \"following\" ] is not None:\n+ if \"following\" in attributes and attributes[ \"following\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"following\" ], int )\n self.__following = attributes[ \"following\" ]\n- if \"gravatar_id\" in attributes and attributes[ \"gravatar_id\" ] is not None:\n+ if \"gravatar_id\" in attributes and attributes[ \"gravatar_id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"gravatar_id\" ], ( str, unicode ) )\n self.__gravatar_id = attributes[ \"gravatar_id\" ]\n- if \"hireable\" in attributes and attributes[ \"hireable\" ] is not None:\n+ if \"hireable\" in attributes and attributes[ \"hireable\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"hireable\" ], bool )\n self.__hireable = attributes[ \"hireable\" ]\n- if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None:\n+ if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"html_url\" ], ( str, unicode ) )\n self.__html_url = attributes[ \"html_url\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"id\" ], int )\n self.__id = attributes[ \"id\" ]\n- if \"location\" in attributes and attributes[ \"location\" ] is not None:\n+ if \"location\" in attributes and attributes[ \"location\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"location\" ], ( str, unicode ) )\n self.__location = attributes[ \"location\" ]\n- if \"login\" in attributes and attributes[ \"login\" ] is not None:\n+ if \"login\" in attributes and attributes[ \"login\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"login\" ], ( str, unicode ) )\n self.__login = attributes[ \"login\" ]\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"name\" ], ( str, unicode ) )\n self.__name = attributes[ \"name\" ]\n- if \"owned_private_repos\" in attributes and attributes[ \"owned_private_repos\" ] is not None:\n+ if \"owned_private_repos\" in attributes and attributes[ \"owned_private_repos\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"owned_private_repos\" ], int )\n self.__owned_private_repos = attributes[ \"owned_private_repos\" ]\n- if \"plan\" in attributes and attributes[ \"plan\" ] is not None:\n+ if \"plan\" in attributes and attributes[ \"plan\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"plan\" ], dict )\n self.__plan = Plan.Plan( self.__requester, attributes[ \"plan\" ], completion = LazyCompletion )\n- if \"private_gists\" in attributes and attributes[ \"private_gists\" ] is not None:\n+ if \"private_gists\" in attributes and attributes[ \"private_gists\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"private_gists\" ], int )\n self.__private_gists = attributes[ \"private_gists\" ]\n- if \"public_gists\" in attributes and attributes[ \"public_gists\" ] is not None:\n+ if \"public_gists\" in attributes and attributes[ \"public_gists\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"public_gists\" ], int )\n self.__public_gists = attributes[ \"public_gists\" ]\n- if \"public_repos\" in attributes and attributes[ \"public_repos\" ] is not None:\n+ if \"public_repos\" in attributes and attributes[ \"public_repos\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"public_repos\" ], int )\n self.__public_repos = attributes[ \"public_repos\" ]\n- if \"total_private_repos\" in attributes and attributes[ \"total_private_repos\" ] is not None:\n+ if \"total_private_repos\" in attributes and attributes[ \"total_private_repos\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"total_private_repos\" ], int )\n self.__total_private_repos = attributes[ \"total_private_repos\" ]\n- if \"type\" in attributes and attributes[ \"type\" ] is not None:\n+ if \"type\" in attributes and attributes[ \"type\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"type\" ], ( str, unicode ) )\n self.__type = attributes[ \"type\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]"},{"sha":"2c2e7ad5c7d5f5f6bbb16bc4149cc2388b870d63","filename":"src/github/Authorization.py","status":"modified","additions":9,"deletions":9,"changes":18,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Authorization.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Authorization.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/Authorization.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -117,21 +117,21 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"app\", \"created_at\", \"id\", \"note\", \"note_url\", \"scopes\", \"token\", \"updated_at\", \"url\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"app\" in attributes and attributes[ \"app\" ] is not None:\n+ if \"app\" in attributes and attributes[ \"app\" ] is not None: # pragma no branch\n self.__app = attributes[ \"app\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n self.__created_at = attributes[ \"created_at\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n self.__id = attributes[ \"id\" ]\n- if \"note\" in attributes and attributes[ \"note\" ] is not None:\n+ if \"note\" in attributes and attributes[ \"note\" ] is not None: # pragma no branch\n self.__note = attributes[ \"note\" ]\n- if \"note_url\" in attributes and attributes[ \"note_url\" ] is not None:\n+ if \"note_url\" in attributes and attributes[ \"note_url\" ] is not None: # pragma no branch\n self.__note_url = attributes[ \"note_url\" ]\n- if \"scopes\" in attributes and attributes[ \"scopes\" ] is not None:\n+ if \"scopes\" in attributes and attributes[ \"scopes\" ] is not None: # pragma no branch\n self.__scopes = attributes[ \"scopes\" ]\n- if \"token\" in attributes and attributes[ \"token\" ] is not None:\n+ if \"token\" in attributes and attributes[ \"token\" ] is not None: # pragma no branch\n self.__token = attributes[ \"token\" ]\n- if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None:\n+ if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None: # pragma no branch\n self.__updated_at = attributes[ \"updated_at\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n self.__url = attributes[ \"url\" ]"},{"sha":"96ae96478e61087c378e8f5caaf8064ba3b5d9ff","filename":"src/github/Branch.py","status":"modified","additions":2,"deletions":2,"changes":4,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Branch.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Branch.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/Branch.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -28,9 +28,9 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"commit\", \"name\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"commit\" in attributes and attributes[ \"commit\" ] is not None:\n+ if \"commit\" in attributes and attributes[ \"commit\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"commit\" ], dict )\n self.__commit = Commit.Commit( self.__requester, attributes[ \"commit\" ], completion = LazyCompletion )\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"name\" ], ( str, unicode ) )\n self.__name = attributes[ \"name\" ]"},{"sha":"bef139283f26710febfd03d3cce3a9193dbbde22","filename":"src/github/Commit.py","status":"modified","additions":8,"deletions":8,"changes":16,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Commit.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Commit.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/Commit.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -120,33 +120,33 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"author\", \"commit\", \"committer\", \"files\", \"parents\", \"sha\", \"stats\", \"url\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"author\" in attributes and attributes[ \"author\" ] is not None:\n+ if \"author\" in attributes and attributes[ \"author\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"author\" ], dict )\n self.__author = NamedUser.NamedUser( self.__requester, attributes[ \"author\" ], completion = LazyCompletion )\n- if \"commit\" in attributes and attributes[ \"commit\" ] is not None:\n+ if \"commit\" in attributes and attributes[ \"commit\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"commit\" ], dict )\n self.__commit = GitCommit.GitCommit( self.__requester, attributes[ \"commit\" ], completion = LazyCompletion )\n- if \"committer\" in attributes and attributes[ \"committer\" ] is not None:\n+ if \"committer\" in attributes and attributes[ \"committer\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"committer\" ], dict )\n self.__committer = NamedUser.NamedUser( self.__requester, attributes[ \"committer\" ], completion = LazyCompletion )\n- if \"files\" in attributes and attributes[ \"files\" ] is not None:\n+ if \"files\" in attributes and attributes[ \"files\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"files\" ], list ) and ( len( attributes[ \"files\" ] ) == 0 or isinstance( attributes[ \"files\" ][ 0 ], dict ) )\n self.__files = [\n CommitFile.CommitFile( self.__requester, element, completion = LazyCompletion )\n for element in attributes[ \"files\" ]\n ]\n- if \"parents\" in attributes and attributes[ \"parents\" ] is not None:\n+ if \"parents\" in attributes and attributes[ \"parents\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"parents\" ], list ) and ( len( attributes[ \"parents\" ] ) == 0 or isinstance( attributes[ \"parents\" ][ 0 ], dict ) )\n self.__parents = [\n Commit( self.__requester, element, completion = LazyCompletion )\n for element in attributes[ \"parents\" ]\n ]\n- if \"sha\" in attributes and attributes[ \"sha\" ] is not None:\n+ if \"sha\" in attributes and attributes[ \"sha\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"sha\" ], ( str, unicode ) )\n self.__sha = attributes[ \"sha\" ]\n- if \"stats\" in attributes and attributes[ \"stats\" ] is not None:\n+ if \"stats\" in attributes and attributes[ \"stats\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"stats\" ], dict )\n self.__stats = CommitStats.CommitStats( self.__requester, attributes[ \"stats\" ], completion = LazyCompletion )\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]"},{"sha":"6e95e0bac8d227daedbcff076a182a762f4e7229","filename":"src/github/CommitComment.py","status":"modified","additions":11,"deletions":11,"changes":22,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/CommitComment.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/CommitComment.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/CommitComment.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -121,36 +121,36 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"body\", \"commit_id\", \"created_at\", \"html_url\", \"id\", \"line\", \"path\", \"position\", \"updated_at\", \"url\", \"user\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"body\" in attributes and attributes[ \"body\" ] is not None:\n+ if \"body\" in attributes and attributes[ \"body\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"body\" ], ( str, unicode ) )\n self.__body = attributes[ \"body\" ]\n- if \"commit_id\" in attributes and attributes[ \"commit_id\" ] is not None:\n+ if \"commit_id\" in attributes and attributes[ \"commit_id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"commit_id\" ], ( str, unicode ) )\n self.__commit_id = attributes[ \"commit_id\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"created_at\" ], ( str, unicode ) )\n self.__created_at = attributes[ \"created_at\" ]\n- if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None:\n+ if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"html_url\" ], ( str, unicode ) )\n self.__html_url = attributes[ \"html_url\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"id\" ], int )\n self.__id = attributes[ \"id\" ]\n- if \"line\" in attributes and attributes[ \"line\" ] is not None:\n+ if \"line\" in attributes and attributes[ \"line\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"line\" ], int )\n self.__line = attributes[ \"line\" ]\n- if \"path\" in attributes and attributes[ \"path\" ] is not None:\n+ if \"path\" in attributes and attributes[ \"path\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"path\" ], ( str, unicode ) )\n self.__path = attributes[ \"path\" ]\n- if \"position\" in attributes and attributes[ \"position\" ] is not None:\n+ if \"position\" in attributes and attributes[ \"position\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"position\" ], int )\n self.__position = attributes[ \"position\" ]\n- if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None:\n+ if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"updated_at\" ], ( str, unicode ) )\n self.__updated_at = attributes[ \"updated_at\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]\n- if \"user\" in attributes and attributes[ \"user\" ] is not None:\n+ if \"user\" in attributes and attributes[ \"user\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"user\" ], dict )\n self.__user = NamedUser.NamedUser( self.__requester, attributes[ \"user\" ], completion = LazyCompletion )"},{"sha":"27185b984a57346b0ef4f591b08f9398b1d1cb83","filename":"src/github/CommitFile.py","status":"modified","additions":9,"deletions":9,"changes":18,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/CommitFile.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/CommitFile.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/CommitFile.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -62,21 +62,21 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"additions\", \"blob_url\", \"changes\", \"deletions\", \"filename\", \"patch\", \"raw_url\", \"sha\", \"status\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"additions\" in attributes and attributes[ \"additions\" ] is not None:\n+ if \"additions\" in attributes and attributes[ \"additions\" ] is not None: # pragma no branch\n self.__additions = attributes[ \"additions\" ]\n- if \"blob_url\" in attributes and attributes[ \"blob_url\" ] is not None:\n+ if \"blob_url\" in attributes and attributes[ \"blob_url\" ] is not None: # pragma no branch\n self.__blob_url = attributes[ \"blob_url\" ]\n- if \"changes\" in attributes and attributes[ \"changes\" ] is not None:\n+ if \"changes\" in attributes and attributes[ \"changes\" ] is not None: # pragma no branch\n self.__changes = attributes[ \"changes\" ]\n- if \"deletions\" in attributes and attributes[ \"deletions\" ] is not None:\n+ if \"deletions\" in attributes and attributes[ \"deletions\" ] is not None: # pragma no branch\n self.__deletions = attributes[ \"deletions\" ]\n- if \"filename\" in attributes and attributes[ \"filename\" ] is not None:\n+ if \"filename\" in attributes and attributes[ \"filename\" ] is not None: # pragma no branch\n self.__filename = attributes[ \"filename\" ]\n- if \"patch\" in attributes and attributes[ \"patch\" ] is not None:\n+ if \"patch\" in attributes and attributes[ \"patch\" ] is not None: # pragma no branch\n self.__patch = attributes[ \"patch\" ]\n- if \"raw_url\" in attributes and attributes[ \"raw_url\" ] is not None:\n+ if \"raw_url\" in attributes and attributes[ \"raw_url\" ] is not None: # pragma no branch\n self.__raw_url = attributes[ \"raw_url\" ]\n- if \"sha\" in attributes and attributes[ \"sha\" ] is not None:\n+ if \"sha\" in attributes and attributes[ \"sha\" ] is not None: # pragma no branch\n self.__sha = attributes[ \"sha\" ]\n- if \"status\" in attributes and attributes[ \"status\" ] is not None:\n+ if \"status\" in attributes and attributes[ \"status\" ] is not None: # pragma no branch\n self.__status = attributes[ \"status\" ]"},{"sha":"772d0eedaf7cf55d3e3e7c6ad040d17de3ec5f80","filename":"src/github/CommitStats.py","status":"modified","additions":3,"deletions":3,"changes":6,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/CommitStats.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/CommitStats.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/CommitStats.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -32,12 +32,12 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"additions\", \"deletions\", \"total\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"additions\" in attributes and attributes[ \"additions\" ] is not None:\n+ if \"additions\" in attributes and attributes[ \"additions\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"additions\" ], int )\n self.__additions = attributes[ \"additions\" ]\n- if \"deletions\" in attributes and attributes[ \"deletions\" ] is not None:\n+ if \"deletions\" in attributes and attributes[ \"deletions\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"deletions\" ], int )\n self.__deletions = attributes[ \"deletions\" ]\n- if \"total\" in attributes and attributes[ \"total\" ] is not None:\n+ if \"total\" in attributes and attributes[ \"total\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"total\" ], int )\n self.__total = attributes[ \"total\" ]"},{"sha":"28c49231bb6c27f102b9f5d42505764cdcb79089","filename":"src/github/Download.py","status":"modified","additions":20,"deletions":20,"changes":40,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Download.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Download.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/Download.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -162,43 +162,43 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"accesskeyid\", \"acl\", \"bucket\", \"content_type\", \"created_at\", \"description\", \"download_count\", \"expirationdate\", \"html_url\", \"id\", \"mime_type\", \"name\", \"path\", \"policy\", \"prefix\", \"redirect\", \"s3_url\", \"signature\", \"size\", \"url\", \"x-amz-meta-content-disposition\" ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"accesskeyid\" in attributes and attributes[ \"accesskeyid\" ] is not None:\n+ if \"accesskeyid\" in attributes and attributes[ \"accesskeyid\" ] is not None: # pragma no branch\n self.__accesskeyid = attributes[ \"accesskeyid\" ]\n- if \"acl\" in attributes and attributes[ \"acl\" ] is not None:\n+ if \"acl\" in attributes and attributes[ \"acl\" ] is not None: # pragma no branch\n self.__acl = attributes[ \"acl\" ]\n- if \"bucket\" in attributes and attributes[ \"bucket\" ] is not None:\n+ if \"bucket\" in attributes and attributes[ \"bucket\" ] is not None: # pragma no branch\n self.__bucket = attributes[ \"bucket\" ]\n- if \"content_type\" in attributes and attributes[ \"content_type\" ] is not None:\n+ if \"content_type\" in attributes and attributes[ \"content_type\" ] is not None: # pragma no branch\n self.__content_type = attributes[ \"content_type\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n self.__created_at = attributes[ \"created_at\" ]\n- if \"description\" in attributes and attributes[ \"description\" ] is not None:\n+ if \"description\" in attributes and attributes[ \"description\" ] is not None: # pragma no branch\n self.__description = attributes[ \"description\" ]\n- if \"download_count\" in attributes and attributes[ \"download_count\" ] is not None:\n+ if \"download_count\" in attributes and attributes[ \"download_count\" ] is not None: # pragma no branch\n self.__download_count = attributes[ \"download_count\" ]\n- if \"expirationdate\" in attributes and attributes[ \"expirationdate\" ] is not None:\n+ if \"expirationdate\" in attributes and attributes[ \"expirationdate\" ] is not None: # pragma no branch\n self.__expirationdate = attributes[ \"expirationdate\" ]\n- if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None:\n+ if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None: # pragma no branch\n self.__html_url = attributes[ \"html_url\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n self.__id = attributes[ \"id\" ]\n- if \"mime_type\" in attributes and attributes[ \"mime_type\" ] is not None:\n+ if \"mime_type\" in attributes and attributes[ \"mime_type\" ] is not None: # pragma no branch\n self.__mime_type = attributes[ \"mime_type\" ]\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n self.__name = attributes[ \"name\" ]\n- if \"path\" in attributes and attributes[ \"path\" ] is not None:\n+ if \"path\" in attributes and attributes[ \"path\" ] is not None: # pragma no branch\n self.__path = attributes[ \"path\" ]\n- if \"policy\" in attributes and attributes[ \"policy\" ] is not None:\n+ if \"policy\" in attributes and attributes[ \"policy\" ] is not None: # pragma no branch\n self.__policy = attributes[ \"policy\" ]\n- if \"prefix\" in attributes and attributes[ \"prefix\" ] is not None:\n+ if \"prefix\" in attributes and attributes[ \"prefix\" ] is not None: # pragma no branch\n self.__prefix = attributes[ \"prefix\" ]\n- if \"redirect\" in attributes and attributes[ \"redirect\" ] is not None:\n+ if \"redirect\" in attributes and attributes[ \"redirect\" ] is not None: # pragma no branch\n self.__redirect = attributes[ \"redirect\" ]\n- if \"s3_url\" in attributes and attributes[ \"s3_url\" ] is not None:\n+ if \"s3_url\" in attributes and attributes[ \"s3_url\" ] is not None: # pragma no branch\n self.__s3_url = attributes[ \"s3_url\" ]\n- if \"signature\" in attributes and attributes[ \"signature\" ] is not None:\n+ if \"signature\" in attributes and attributes[ \"signature\" ] is not None: # pragma no branch\n self.__signature = attributes[ \"signature\" ]\n- if \"size\" in attributes and attributes[ \"size\" ] is not None:\n+ if \"size\" in attributes and attributes[ \"size\" ] is not None: # pragma no branch\n self.__size = attributes[ \"size\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n self.__url = attributes[ \"url\" ]"},{"sha":"f04618e50b93c36d1b454fd3c04eda2304c3f953","filename":"src/github/Event.py","status":"modified","additions":8,"deletions":8,"changes":16,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Event.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Event.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/Event.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -60,22 +60,22 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"actor\", \"created_at\", \"id\", \"org\", \"payload\", \"public\", \"repo\", \"type\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"actor\" in attributes and attributes[ \"actor\" ] is not None:\n+ if \"actor\" in attributes and attributes[ \"actor\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"actor\" ], dict )\n self.__actor = NamedUser.NamedUser( self.__requester, attributes[ \"actor\" ], completion = LazyCompletion )\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n self.__created_at = attributes[ \"created_at\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n self.__id = attributes[ \"id\" ]\n- if \"org\" in attributes and attributes[ \"org\" ] is not None:\n+ if \"org\" in attributes and attributes[ \"org\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"org\" ], dict )\n self.__org = Organization.Organization( self.__requester, attributes[ \"org\" ], completion = LazyCompletion )\n- if \"payload\" in attributes and attributes[ \"payload\" ] is not None:\n+ if \"payload\" in attributes and attributes[ \"payload\" ] is not None: # pragma no branch\n self.__payload = attributes[ \"payload\" ]\n- if \"public\" in attributes and attributes[ \"public\" ] is not None:\n+ if \"public\" in attributes and attributes[ \"public\" ] is not None: # pragma no branch\n self.__public = attributes[ \"public\" ]\n- if \"repo\" in attributes and attributes[ \"repo\" ] is not None:\n+ if \"repo\" in attributes and attributes[ \"repo\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"repo\" ], dict )\n self.__repo = Repository.Repository( self.__requester, attributes[ \"repo\" ], completion = LazyCompletion )\n- if \"type\" in attributes and attributes[ \"type\" ] is not None:\n+ if \"type\" in attributes and attributes[ \"type\" ] is not None: # pragma no branch\n self.__type = attributes[ \"type\" ]"},{"sha":"56bd080c75f4063321baab79027bddbf48a23063","filename":"src/github/Gist.py","status":"modified","additions":15,"deletions":15,"changes":30,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Gist.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Gist.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/Gist.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -220,53 +220,53 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"comments\", \"created_at\", \"description\", \"files\", \"fork_of\", \"forks\", \"git_pull_url\", \"git_push_url\", \"history\", \"html_url\", \"id\", \"public\", \"updated_at\", \"url\", \"user\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"comments\" in attributes and attributes[ \"comments\" ] is not None:\n+ if \"comments\" in attributes and attributes[ \"comments\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"comments\" ], int )\n self.__comments = attributes[ \"comments\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"created_at\" ], ( str, unicode ) )\n self.__created_at = attributes[ \"created_at\" ]\n- if \"description\" in attributes and attributes[ \"description\" ] is not None:\n+ if \"description\" in attributes and attributes[ \"description\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"description\" ], ( str, unicode ) )\n self.__description = attributes[ \"description\" ]\n- if \"files\" in attributes and attributes[ \"files\" ] is not None:\n+ if \"files\" in attributes and attributes[ \"files\" ] is not None: # pragma no branch\n self.__files = attributes[ \"files\" ]\n- if \"fork_of\" in attributes and attributes[ \"fork_of\" ] is not None:\n+ if \"fork_of\" in attributes and attributes[ \"fork_of\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"fork_of\" ], dict )\n self.__fork_of = Gist( self.__requester, attributes[ \"fork_of\" ], completion = LazyCompletion )\n- if \"forks\" in attributes and attributes[ \"forks\" ] is not None:\n+ if \"forks\" in attributes and attributes[ \"forks\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"forks\" ], list ) and ( len( attributes[ \"forks\" ] ) == 0 or isinstance( attributes[ \"forks\" ][ 0 ], dict ) )\n self.__forks = [\n Gist( self.__requester, element, completion = LazyCompletion )\n for element in attributes[ \"forks\" ]\n ]\n- if \"git_pull_url\" in attributes and attributes[ \"git_pull_url\" ] is not None:\n+ if \"git_pull_url\" in attributes and attributes[ \"git_pull_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"git_pull_url\" ], ( str, unicode ) )\n self.__git_pull_url = attributes[ \"git_pull_url\" ]\n- if \"git_push_url\" in attributes and attributes[ \"git_push_url\" ] is not None:\n+ if \"git_push_url\" in attributes and attributes[ \"git_push_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"git_push_url\" ], ( str, unicode ) )\n self.__git_push_url = attributes[ \"git_push_url\" ]\n- if \"history\" in attributes and attributes[ \"history\" ] is not None:\n+ if \"history\" in attributes and attributes[ \"history\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"history\" ], list ) and ( len( attributes[ \"history\" ] ) == 0 or isinstance( attributes[ \"history\" ][ 0 ], dict ) )\n self.__history = [\n GistHistoryState.GistHistoryState( self.__requester, element, completion = LazyCompletion )\n for element in attributes[ \"history\" ]\n ]\n- if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None:\n+ if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"html_url\" ], ( str, unicode ) )\n self.__html_url = attributes[ \"html_url\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"id\" ], ( str, unicode ) )\n self.__id = attributes[ \"id\" ]\n- if \"public\" in attributes and attributes[ \"public\" ] is not None:\n+ if \"public\" in attributes and attributes[ \"public\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"public\" ], bool )\n self.__public = attributes[ \"public\" ]\n- if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None:\n+ if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"updated_at\" ], ( str, unicode ) )\n self.__updated_at = attributes[ \"updated_at\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]\n- if \"user\" in attributes and attributes[ \"user\" ] is not None:\n+ if \"user\" in attributes and attributes[ \"user\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"user\" ], dict )\n self.__user = NamedUser.NamedUser( self.__requester, attributes[ \"user\" ], completion = LazyCompletion )"},{"sha":"a595ca288f230fbe30416bc854cc8df51682fb65","filename":"src/github/GistComment.py","status":"modified","additions":6,"deletions":6,"changes":12,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GistComment.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GistComment.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/GistComment.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -68,16 +68,16 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"body\", \"created_at\", \"id\", \"updated_at\", \"url\", \"user\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"body\" in attributes and attributes[ \"body\" ] is not None:\n+ if \"body\" in attributes and attributes[ \"body\" ] is not None: # pragma no branch\n self.__body = attributes[ \"body\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n self.__created_at = attributes[ \"created_at\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n self.__id = attributes[ \"id\" ]\n- if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None:\n+ if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None: # pragma no branch\n self.__updated_at = attributes[ \"updated_at\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n self.__url = attributes[ \"url\" ]\n- if \"user\" in attributes and attributes[ \"user\" ] is not None:\n+ if \"user\" in attributes and attributes[ \"user\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"user\" ], dict )\n self.__user = NamedUser.NamedUser( self.__requester, attributes[ \"user\" ], completion = LazyCompletion )"},{"sha":"d325a2b14180a808327beb752c8365467ff4872f","filename":"src/github/GistHistoryState.py","status":"modified","additions":5,"deletions":5,"changes":10,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GistHistoryState.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GistHistoryState.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/GistHistoryState.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -44,18 +44,18 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"change_status\", \"committed_at\", \"url\", \"user\", \"version\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"change_status\" in attributes and attributes[ \"change_status\" ] is not None:\n+ if \"change_status\" in attributes and attributes[ \"change_status\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"change_status\" ], dict )\n self.__change_status = CommitStats.CommitStats( self.__requester, attributes[ \"change_status\" ], completion = LazyCompletion )\n- if \"committed_at\" in attributes and attributes[ \"committed_at\" ] is not None:\n+ if \"committed_at\" in attributes and attributes[ \"committed_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"committed_at\" ], ( str, unicode ) )\n self.__committed_at = attributes[ \"committed_at\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]\n- if \"user\" in attributes and attributes[ \"user\" ] is not None:\n+ if \"user\" in attributes and attributes[ \"user\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"user\" ], dict )\n self.__user = NamedUser.NamedUser( self.__requester, attributes[ \"user\" ], completion = LazyCompletion )\n- if \"version\" in attributes and attributes[ \"version\" ] is not None:\n+ if \"version\" in attributes and attributes[ \"version\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"version\" ], ( str, unicode ) )\n self.__version = attributes[ \"version\" ]"},{"sha":"2c710f56cfbe950099e74565680aee6ef2a20402","filename":"src/github/GitAuthor.py","status":"modified","additions":3,"deletions":3,"changes":6,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitAuthor.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitAuthor.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/GitAuthor.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -32,12 +32,12 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"date\", \"email\", \"name\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"date\" in attributes and attributes[ \"date\" ] is not None:\n+ if \"date\" in attributes and attributes[ \"date\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"date\" ], ( str, unicode ) )\n self.__date = attributes[ \"date\" ]\n- if \"email\" in attributes and attributes[ \"email\" ] is not None:\n+ if \"email\" in attributes and attributes[ \"email\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"email\" ], ( str, unicode ) )\n self.__email = attributes[ \"email\" ]\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"name\" ], ( str, unicode ) )\n self.__name = attributes[ \"name\" ]"},{"sha":"4defbde8b71269490ca951e836b5b1e1c540cb64","filename":"src/github/GitBlob.py","status":"modified","additions":5,"deletions":5,"changes":10,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitBlob.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitBlob.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/GitBlob.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -42,18 +42,18 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"content\", \"encoding\", \"sha\", \"size\", \"url\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"content\" in attributes and attributes[ \"content\" ] is not None:\n+ if \"content\" in attributes and attributes[ \"content\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"content\" ], ( str, unicode ) )\n self.__content = attributes[ \"content\" ]\n- if \"encoding\" in attributes and attributes[ \"encoding\" ] is not None:\n+ if \"encoding\" in attributes and attributes[ \"encoding\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"encoding\" ], ( str, unicode ) )\n self.__encoding = attributes[ \"encoding\" ]\n- if \"sha\" in attributes and attributes[ \"sha\" ] is not None:\n+ if \"sha\" in attributes and attributes[ \"sha\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"sha\" ], ( str, unicode ) )\n self.__sha = attributes[ \"sha\" ]\n- if \"size\" in attributes and attributes[ \"size\" ] is not None:\n+ if \"size\" in attributes and attributes[ \"size\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"size\" ], int )\n self.__size = attributes[ \"size\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]"},{"sha":"13382cd7ac3c062fdb71e0873b223dbdd18f244e","filename":"src/github/GitCommit.py","status":"modified","additions":7,"deletions":7,"changes":14,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitCommit.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitCommit.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/GitCommit.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -55,27 +55,27 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"author\", \"committer\", \"message\", \"parents\", \"sha\", \"tree\", \"url\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"author\" in attributes and attributes[ \"author\" ] is not None:\n+ if \"author\" in attributes and attributes[ \"author\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"author\" ], dict )\n self.__author = GitAuthor.GitAuthor( self.__requester, attributes[ \"author\" ], completion = LazyCompletion )\n- if \"committer\" in attributes and attributes[ \"committer\" ] is not None:\n+ if \"committer\" in attributes and attributes[ \"committer\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"committer\" ], dict )\n self.__committer = GitAuthor.GitAuthor( self.__requester, attributes[ \"committer\" ], completion = LazyCompletion )\n- if \"message\" in attributes and attributes[ \"message\" ] is not None:\n+ if \"message\" in attributes and attributes[ \"message\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"message\" ], ( str, unicode ) )\n self.__message = attributes[ \"message\" ]\n- if \"parents\" in attributes and attributes[ \"parents\" ] is not None:\n+ if \"parents\" in attributes and attributes[ \"parents\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"parents\" ], list ) and ( len( attributes[ \"parents\" ] ) == 0 or isinstance( attributes[ \"parents\" ][ 0 ], dict ) )\n self.__parents = [\n GitCommit( self.__requester, element, completion = LazyCompletion )\n for element in attributes[ \"parents\" ]\n ]\n- if \"sha\" in attributes and attributes[ \"sha\" ] is not None:\n+ if \"sha\" in attributes and attributes[ \"sha\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"sha\" ], ( str, unicode ) )\n self.__sha = attributes[ \"sha\" ]\n- if \"tree\" in attributes and attributes[ \"tree\" ] is not None:\n+ if \"tree\" in attributes and attributes[ \"tree\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"tree\" ], dict )\n self.__tree = GitTree.GitTree( self.__requester, attributes[ \"tree\" ], completion = LazyCompletion )\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]"},{"sha":"05e3067c1014ce22ced1faca83a74fa9215fd97e","filename":"src/github/GitObject.py","status":"modified","additions":3,"deletions":3,"changes":6,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitObject.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitObject.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/GitObject.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -32,12 +32,12 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"sha\", \"type\", \"url\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"sha\" in attributes and attributes[ \"sha\" ] is not None:\n+ if \"sha\" in attributes and attributes[ \"sha\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"sha\" ], ( str, unicode ) )\n self.__sha = attributes[ \"sha\" ]\n- if \"type\" in attributes and attributes[ \"type\" ] is not None:\n+ if \"type\" in attributes and attributes[ \"type\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"type\" ], ( str, unicode ) )\n self.__type = attributes[ \"type\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]"},{"sha":"bfc8d91335cf0f81694a81ce534d79988f1bb0fe","filename":"src/github/GitRef.py","status":"modified","additions":3,"deletions":3,"changes":6,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitRef.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitRef.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/GitRef.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -55,12 +55,12 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"object\", \"ref\", \"url\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"object\" in attributes and attributes[ \"object\" ] is not None:\n+ if \"object\" in attributes and attributes[ \"object\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"object\" ], dict )\n self.__object = GitObject.GitObject( self.__requester, attributes[ \"object\" ], completion = LazyCompletion )\n- if \"ref\" in attributes and attributes[ \"ref\" ] is not None:\n+ if \"ref\" in attributes and attributes[ \"ref\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"ref\" ], ( str, unicode ) )\n self.__ref = attributes[ \"ref\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]"},{"sha":"532d3a056c2490883f826da7369067a24d001055","filename":"src/github/GitTag.py","status":"modified","additions":6,"deletions":6,"changes":12,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitTag.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitTag.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/GitTag.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -49,21 +49,21 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"message\", \"object\", \"sha\", \"tag\", \"tagger\", \"url\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"message\" in attributes and attributes[ \"message\" ] is not None:\n+ if \"message\" in attributes and attributes[ \"message\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"message\" ], ( str, unicode ) )\n self.__message = attributes[ \"message\" ]\n- if \"object\" in attributes and attributes[ \"object\" ] is not None:\n+ if \"object\" in attributes and attributes[ \"object\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"object\" ], dict )\n self.__object = GitObject.GitObject( self.__requester, attributes[ \"object\" ], completion = LazyCompletion )\n- if \"sha\" in attributes and attributes[ \"sha\" ] is not None:\n+ if \"sha\" in attributes and attributes[ \"sha\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"sha\" ], ( str, unicode ) )\n self.__sha = attributes[ \"sha\" ]\n- if \"tag\" in attributes and attributes[ \"tag\" ] is not None:\n+ if \"tag\" in attributes and attributes[ \"tag\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"tag\" ], ( str, unicode ) )\n self.__tag = attributes[ \"tag\" ]\n- if \"tagger\" in attributes and attributes[ \"tagger\" ] is not None:\n+ if \"tagger\" in attributes and attributes[ \"tagger\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"tagger\" ], dict )\n self.__tagger = GitAuthor.GitAuthor( self.__requester, attributes[ \"tagger\" ], completion = LazyCompletion )\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]"},{"sha":"321f54fc52bcb0ac7843ecf9de53c091e2ad942c","filename":"src/github/GitTree.py","status":"modified","additions":3,"deletions":3,"changes":6,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitTree.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitTree.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/GitTree.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -33,15 +33,15 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"sha\", \"tree\", \"url\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"sha\" in attributes and attributes[ \"sha\" ] is not None:\n+ if \"sha\" in attributes and attributes[ \"sha\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"sha\" ], ( str, unicode ) )\n self.__sha = attributes[ \"sha\" ]\n- if \"tree\" in attributes and attributes[ \"tree\" ] is not None:\n+ if \"tree\" in attributes and attributes[ \"tree\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"tree\" ], list ) and ( len( attributes[ \"tree\" ] ) == 0 or isinstance( attributes[ \"tree\" ][ 0 ], dict ) )\n self.__tree = [\n GitTreeElement.GitTreeElement( self.__requester, element, completion = LazyCompletion )\n for element in attributes[ \"tree\" ]\n ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]"},{"sha":"97ff07009a4af0d1bacc2c404dbbbff58700b359","filename":"src/github/GitTreeElement.py","status":"modified","additions":6,"deletions":6,"changes":12,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitTreeElement.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitTreeElement.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/GitTreeElement.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -47,21 +47,21 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"mode\", \"path\", \"sha\", \"size\", \"type\", \"url\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"mode\" in attributes and attributes[ \"mode\" ] is not None:\n+ if \"mode\" in attributes and attributes[ \"mode\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"mode\" ], ( str, unicode ) )\n self.__mode = attributes[ \"mode\" ]\n- if \"path\" in attributes and attributes[ \"path\" ] is not None:\n+ if \"path\" in attributes and attributes[ \"path\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"path\" ], ( str, unicode ) )\n self.__path = attributes[ \"path\" ]\n- if \"sha\" in attributes and attributes[ \"sha\" ] is not None:\n+ if \"sha\" in attributes and attributes[ \"sha\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"sha\" ], ( str, unicode ) )\n self.__sha = attributes[ \"sha\" ]\n- if \"size\" in attributes and attributes[ \"size\" ] is not None:\n+ if \"size\" in attributes and attributes[ \"size\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"size\" ], int )\n self.__size = attributes[ \"size\" ]\n- if \"type\" in attributes and attributes[ \"type\" ] is not None:\n+ if \"type\" in attributes and attributes[ \"type\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"type\" ], ( str, unicode ) )\n self.__type = attributes[ \"type\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]"},{"sha":"9ac71aa29d8287d57b4d2109754f9da1b0a13fb7","filename":"src/github/Hook.py","status":"modified","additions":9,"deletions":9,"changes":18,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Hook.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Hook.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/Hook.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -99,21 +99,21 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"active\", \"config\", \"created_at\", \"events\", \"id\", \"last_response\", \"name\", \"updated_at\", \"url\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"active\" in attributes and attributes[ \"active\" ] is not None:\n+ if \"active\" in attributes and attributes[ \"active\" ] is not None: # pragma no branch\n self.__active = attributes[ \"active\" ]\n- if \"config\" in attributes and attributes[ \"config\" ] is not None:\n+ if \"config\" in attributes and attributes[ \"config\" ] is not None: # pragma no branch\n self.__config = attributes[ \"config\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n self.__created_at = attributes[ \"created_at\" ]\n- if \"events\" in attributes and attributes[ \"events\" ] is not None:\n+ if \"events\" in attributes and attributes[ \"events\" ] is not None: # pragma no branch\n self.__events = attributes[ \"events\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n self.__id = attributes[ \"id\" ]\n- if \"last_response\" in attributes and attributes[ \"last_response\" ] is not None:\n+ if \"last_response\" in attributes and attributes[ \"last_response\" ] is not None: # pragma no branch\n self.__last_response = attributes[ \"last_response\" ]\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n self.__name = attributes[ \"name\" ]\n- if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None:\n+ if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None: # pragma no branch\n self.__updated_at = attributes[ \"updated_at\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n self.__url = attributes[ \"url\" ]"},{"sha":"8c10440882b7a8a0ce52adacff48066cce006a31","filename":"src/github/Issue.py","status":"modified","additions":32,"deletions":21,"changes":53,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Issue.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Issue.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/Issue.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -110,7 +110,7 @@ def user( self ):\n return self.__user\n \n def add_to_labels( self, *labels ):\n- post_parameters = labels\n+ post_parameters = [ label.name for label in labels ]\n status, headers, data = self.__requester.request(\n \"POST\",\n str( self.url ) + \"/labels\",\n@@ -131,7 +131,12 @@ def create_comment( self, body ):\n return IssueComment.IssueComment( self.__requester, data, completion = NoCompletion )\n \n def delete_labels( self ):\n- pass\n+ status, headers, data = self.__requester.request(\n+ \"DELETE\",\n+ str( self.url ) + \"/labels\",\n+ None,\n+ None\n+ )\n \n def edit( self, title = DefaultValueForOptionalParameters, body = DefaultValueForOptionalParameters, assignee = DefaultValueForOptionalParameters, state = DefaultValueForOptionalParameters, milestone = DefaultValueForOptionalParameters, labels = DefaultValueForOptionalParameters ):\n post_parameters = {\n@@ -216,7 +221,13 @@ def remove_from_labels( self, label ):\n )\n \n def set_labels( self, *labels ):\n- pass\n+ post_parameters = [ label.name for label in labels ]\n+ status, headers, data = self.__requester.request(\n+ \"PUT\",\n+ str( self.url ) + \"/labels\",\n+ None,\n+ post_parameters\n+ )\n \n def __initAttributes( self ):\n self.__assignee = None\n@@ -257,59 +268,59 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"assignee\", \"body\", \"closed_at\", \"closed_by\", \"comments\", \"created_at\", \"html_url\", \"id\", \"labels\", \"milestone\", \"number\", \"pull_request\", \"repository\", \"state\", \"title\", \"updated_at\", \"url\", \"user\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"assignee\" in attributes and attributes[ \"assignee\" ] is not None:\n+ if \"assignee\" in attributes and attributes[ \"assignee\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"assignee\" ], dict )\n self.__assignee = NamedUser.NamedUser( self.__requester, attributes[ \"assignee\" ], completion = LazyCompletion )\n- if \"body\" in attributes and attributes[ \"body\" ] is not None:\n+ if \"body\" in attributes and attributes[ \"body\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"body\" ], ( str, unicode ) )\n self.__body = attributes[ \"body\" ]\n- if \"closed_at\" in attributes and attributes[ \"closed_at\" ] is not None:\n+ if \"closed_at\" in attributes and attributes[ \"closed_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"closed_at\" ], ( str, unicode ) )\n self.__closed_at = attributes[ \"closed_at\" ]\n- if \"closed_by\" in attributes and attributes[ \"closed_by\" ] is not None:\n+ if \"closed_by\" in attributes and attributes[ \"closed_by\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"closed_by\" ], dict )\n self.__closed_by = NamedUser.NamedUser( self.__requester, attributes[ \"closed_by\" ], completion = LazyCompletion )\n- if \"comments\" in attributes and attributes[ \"comments\" ] is not None:\n+ if \"comments\" in attributes and attributes[ \"comments\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"comments\" ], int )\n self.__comments = attributes[ \"comments\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"created_at\" ], ( str, unicode ) )\n self.__created_at = attributes[ \"created_at\" ]\n- if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None:\n+ if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"html_url\" ], ( str, unicode ) )\n self.__html_url = attributes[ \"html_url\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"id\" ], int )\n self.__id = attributes[ \"id\" ]\n- if \"labels\" in attributes and attributes[ \"labels\" ] is not None:\n+ if \"labels\" in attributes and attributes[ \"labels\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"labels\" ], list ) and ( len( attributes[ \"labels\" ] ) == 0 or isinstance( attributes[ \"labels\" ][ 0 ], dict ) )\n self.__labels = [\n Label.Label( self.__requester, element, completion = LazyCompletion )\n for element in attributes[ \"labels\" ]\n ]\n- if \"milestone\" in attributes and attributes[ \"milestone\" ] is not None:\n+ if \"milestone\" in attributes and attributes[ \"milestone\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"milestone\" ], dict )\n self.__milestone = Milestone.Milestone( self.__requester, attributes[ \"milestone\" ], completion = LazyCompletion )\n- if \"number\" in attributes and attributes[ \"number\" ] is not None:\n+ if \"number\" in attributes and attributes[ \"number\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"number\" ], int )\n self.__number = attributes[ \"number\" ]\n- if \"pull_request\" in attributes and attributes[ \"pull_request\" ] is not None:\n+ if \"pull_request\" in attributes and attributes[ \"pull_request\" ] is not None: # pragma no branch\n self.__pull_request = attributes[ \"pull_request\" ]\n- if \"repository\" in attributes and attributes[ \"repository\" ] is not None:\n+ if \"repository\" in attributes and attributes[ \"repository\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"repository\" ], dict )\n self.__repository = Repository.Repository( self.__requester, attributes[ \"repository\" ], completion = LazyCompletion )\n- if \"state\" in attributes and attributes[ \"state\" ] is not None:\n+ if \"state\" in attributes and attributes[ \"state\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"state\" ], ( str, unicode ) )\n self.__state = attributes[ \"state\" ]\n- if \"title\" in attributes and attributes[ \"title\" ] is not None:\n+ if \"title\" in attributes and attributes[ \"title\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"title\" ], ( str, unicode ) )\n self.__title = attributes[ \"title\" ]\n- if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None:\n+ if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"updated_at\" ], ( str, unicode ) )\n self.__updated_at = attributes[ \"updated_at\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]\n- if \"user\" in attributes and attributes[ \"user\" ] is not None:\n+ if \"user\" in attributes and attributes[ \"user\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"user\" ], dict )\n self.__user = NamedUser.NamedUser( self.__requester, attributes[ \"user\" ], completion = LazyCompletion )"},{"sha":"5ed8d8d10b46e6427503e050fdfad6ba22837e25","filename":"src/github/IssueComment.py","status":"modified","additions":6,"deletions":6,"changes":12,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/IssueComment.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/IssueComment.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/IssueComment.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -68,16 +68,16 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"body\", \"created_at\", \"id\", \"updated_at\", \"url\", \"user\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"body\" in attributes and attributes[ \"body\" ] is not None:\n+ if \"body\" in attributes and attributes[ \"body\" ] is not None: # pragma no branch\n self.__body = attributes[ \"body\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n self.__created_at = attributes[ \"created_at\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n self.__id = attributes[ \"id\" ]\n- if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None:\n+ if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None: # pragma no branch\n self.__updated_at = attributes[ \"updated_at\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n self.__url = attributes[ \"url\" ]\n- if \"user\" in attributes and attributes[ \"user\" ] is not None:\n+ if \"user\" in attributes and attributes[ \"user\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"user\" ], dict )\n self.__user = NamedUser.NamedUser( self.__requester, attributes[ \"user\" ], completion = LazyCompletion )"},{"sha":"a276fe9eaea713a8599710636ead83d77023b99f","filename":"src/github/IssueEvent.py","status":"modified","additions":7,"deletions":7,"changes":14,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/IssueEvent.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/IssueEvent.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/IssueEvent.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -78,24 +78,24 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"actor\", \"commit_id\", \"created_at\", \"event\", \"id\", \"issue\", \"url\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"actor\" in attributes and attributes[ \"actor\" ] is not None:\n+ if \"actor\" in attributes and attributes[ \"actor\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"actor\" ], dict )\n self.__actor = NamedUser.NamedUser( self.__requester, attributes[ \"actor\" ], completion = LazyCompletion )\n- if \"commit_id\" in attributes and attributes[ \"commit_id\" ] is not None:\n+ if \"commit_id\" in attributes and attributes[ \"commit_id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"commit_id\" ], ( str, unicode ) )\n self.__commit_id = attributes[ \"commit_id\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"created_at\" ], ( str, unicode ) )\n self.__created_at = attributes[ \"created_at\" ]\n- if \"event\" in attributes and attributes[ \"event\" ] is not None:\n+ if \"event\" in attributes and attributes[ \"event\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"event\" ], ( str, unicode ) )\n self.__event = attributes[ \"event\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"id\" ], int )\n self.__id = attributes[ \"id\" ]\n- if \"issue\" in attributes and attributes[ \"issue\" ] is not None:\n+ if \"issue\" in attributes and attributes[ \"issue\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"issue\" ], dict )\n self.__issue = Issue.Issue( self.__requester, attributes[ \"issue\" ], completion = LazyCompletion )\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]"},{"sha":"1f11c4d96625bb675a5c9ce84c813caf4745ff67","filename":"src/github/Label.py","status":"modified","additions":10,"deletions":3,"changes":13,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Label.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Label.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/Label.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -1,6 +1,8 @@\n # WARNING: this file is generated automaticaly.\n # Do not modify it manually, your work would be lost.\n \n+import urllib\n+\n import PaginatedList\n from GithubObject import *\n \n@@ -43,6 +45,11 @@ def edit( self, name, color ):\n )\n self.__useAttributes( data )\n \n+ # @todo Remove '_identity' from the normalized json description\n+ @property\n+ def _identity( self ):\n+ return urllib.quote( self.name )\n+\n def __initAttributes( self ):\n self.__color = None\n self.__name = None\n@@ -53,9 +60,9 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"color\", \"name\", \"url\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"color\" in attributes and attributes[ \"color\" ] is not None:\n+ if \"color\" in attributes and attributes[ \"color\" ] is not None: # pragma no branch\n self.__color = attributes[ \"color\" ]\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n self.__name = attributes[ \"name\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n self.__url = attributes[ \"url\" ]"},{"sha":"ffbb51b8941c5bdd34bbc539825666e1155b0699","filename":"src/github/Milestone.py","status":"modified","additions":11,"deletions":11,"changes":22,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Milestone.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Milestone.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/Milestone.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -114,36 +114,36 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"closed_issues\", \"created_at\", \"creator\", \"description\", \"due_on\", \"id\", \"number\", \"open_issues\", \"state\", \"title\", \"url\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"closed_issues\" in attributes and attributes[ \"closed_issues\" ] is not None:\n+ if \"closed_issues\" in attributes and attributes[ \"closed_issues\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"closed_issues\" ], int )\n self.__closed_issues = attributes[ \"closed_issues\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"created_at\" ], ( str, unicode ) )\n self.__created_at = attributes[ \"created_at\" ]\n- if \"creator\" in attributes and attributes[ \"creator\" ] is not None:\n+ if \"creator\" in attributes and attributes[ \"creator\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"creator\" ], dict )\n self.__creator = NamedUser.NamedUser( self.__requester, attributes[ \"creator\" ], completion = LazyCompletion )\n- if \"description\" in attributes and attributes[ \"description\" ] is not None:\n+ if \"description\" in attributes and attributes[ \"description\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"description\" ], ( str, unicode ) )\n self.__description = attributes[ \"description\" ]\n- if \"due_on\" in attributes and attributes[ \"due_on\" ] is not None:\n+ if \"due_on\" in attributes and attributes[ \"due_on\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"due_on\" ], ( str, unicode ) )\n self.__due_on = attributes[ \"due_on\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"id\" ], int )\n self.__id = attributes[ \"id\" ]\n- if \"number\" in attributes and attributes[ \"number\" ] is not None:\n+ if \"number\" in attributes and attributes[ \"number\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"number\" ], int )\n self.__number = attributes[ \"number\" ]\n- if \"open_issues\" in attributes and attributes[ \"open_issues\" ] is not None:\n+ if \"open_issues\" in attributes and attributes[ \"open_issues\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"open_issues\" ], int )\n self.__open_issues = attributes[ \"open_issues\" ]\n- if \"state\" in attributes and attributes[ \"state\" ] is not None:\n+ if \"state\" in attributes and attributes[ \"state\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"state\" ], ( str, unicode ) )\n self.__state = attributes[ \"state\" ]\n- if \"title\" in attributes and attributes[ \"title\" ] is not None:\n+ if \"title\" in attributes and attributes[ \"title\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"title\" ], ( str, unicode ) )\n self.__title = attributes[ \"title\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]"},{"sha":"61400ed17d9985d2de72dbf8b489de903dbe494e","filename":"src/github/NamedUser.py","status":"modified","additions":26,"deletions":26,"changes":52,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/NamedUser.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/NamedUser.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/NamedUser.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -365,81 +365,81 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"avatar_url\", \"bio\", \"blog\", \"collaborators\", \"company\", \"contributions\", \"created_at\", \"disk_usage\", \"email\", \"followers\", \"following\", \"gravatar_id\", \"hireable\", \"html_url\", \"id\", \"location\", \"login\", \"name\", \"owned_private_repos\", \"plan\", \"private_gists\", \"public_gists\", \"public_repos\", \"total_private_repos\", \"type\", \"url\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"avatar_url\" in attributes and attributes[ \"avatar_url\" ] is not None:\n+ if \"avatar_url\" in attributes and attributes[ \"avatar_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"avatar_url\" ], ( str, unicode ) )\n self.__avatar_url = attributes[ \"avatar_url\" ]\n- if \"bio\" in attributes and attributes[ \"bio\" ] is not None:\n+ if \"bio\" in attributes and attributes[ \"bio\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"bio\" ], ( str, unicode ) )\n self.__bio = attributes[ \"bio\" ]\n- if \"blog\" in attributes and attributes[ \"blog\" ] is not None:\n+ if \"blog\" in attributes and attributes[ \"blog\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"blog\" ], ( str, unicode ) )\n self.__blog = attributes[ \"blog\" ]\n- if \"collaborators\" in attributes and attributes[ \"collaborators\" ] is not None:\n+ if \"collaborators\" in attributes and attributes[ \"collaborators\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"collaborators\" ], int )\n self.__collaborators = attributes[ \"collaborators\" ]\n- if \"company\" in attributes and attributes[ \"company\" ] is not None:\n+ if \"company\" in attributes and attributes[ \"company\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"company\" ], ( str, unicode ) )\n self.__company = attributes[ \"company\" ]\n- if \"contributions\" in attributes and attributes[ \"contributions\" ] is not None:\n+ if \"contributions\" in attributes and attributes[ \"contributions\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"contributions\" ], int )\n self.__contributions = attributes[ \"contributions\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"created_at\" ], ( str, unicode ) )\n self.__created_at = attributes[ \"created_at\" ]\n- if \"disk_usage\" in attributes and attributes[ \"disk_usage\" ] is not None:\n+ if \"disk_usage\" in attributes and attributes[ \"disk_usage\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"disk_usage\" ], int )\n self.__disk_usage = attributes[ \"disk_usage\" ]\n- if \"email\" in attributes and attributes[ \"email\" ] is not None:\n+ if \"email\" in attributes and attributes[ \"email\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"email\" ], ( str, unicode ) )\n self.__email = attributes[ \"email\" ]\n- if \"followers\" in attributes and attributes[ \"followers\" ] is not None:\n+ if \"followers\" in attributes and attributes[ \"followers\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"followers\" ], int )\n self.__followers = attributes[ \"followers\" ]\n- if \"following\" in attributes and attributes[ \"following\" ] is not None:\n+ if \"following\" in attributes and attributes[ \"following\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"following\" ], int )\n self.__following = attributes[ \"following\" ]\n- if \"gravatar_id\" in attributes and attributes[ \"gravatar_id\" ] is not None:\n+ if \"gravatar_id\" in attributes and attributes[ \"gravatar_id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"gravatar_id\" ], ( str, unicode ) )\n self.__gravatar_id = attributes[ \"gravatar_id\" ]\n- if \"hireable\" in attributes and attributes[ \"hireable\" ] is not None:\n+ if \"hireable\" in attributes and attributes[ \"hireable\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"hireable\" ], bool )\n self.__hireable = attributes[ \"hireable\" ]\n- if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None:\n+ if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"html_url\" ], ( str, unicode ) )\n self.__html_url = attributes[ \"html_url\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"id\" ], int )\n self.__id = attributes[ \"id\" ]\n- if \"location\" in attributes and attributes[ \"location\" ] is not None:\n+ if \"location\" in attributes and attributes[ \"location\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"location\" ], ( str, unicode ) )\n self.__location = attributes[ \"location\" ]\n- if \"login\" in attributes and attributes[ \"login\" ] is not None:\n+ if \"login\" in attributes and attributes[ \"login\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"login\" ], ( str, unicode ) )\n self.__login = attributes[ \"login\" ]\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"name\" ], ( str, unicode ) )\n self.__name = attributes[ \"name\" ]\n- if \"owned_private_repos\" in attributes and attributes[ \"owned_private_repos\" ] is not None:\n+ if \"owned_private_repos\" in attributes and attributes[ \"owned_private_repos\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"owned_private_repos\" ], int )\n self.__owned_private_repos = attributes[ \"owned_private_repos\" ]\n- if \"plan\" in attributes and attributes[ \"plan\" ] is not None:\n+ if \"plan\" in attributes and attributes[ \"plan\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"plan\" ], dict )\n self.__plan = Plan.Plan( self.__requester, attributes[ \"plan\" ], completion = LazyCompletion )\n- if \"private_gists\" in attributes and attributes[ \"private_gists\" ] is not None:\n+ if \"private_gists\" in attributes and attributes[ \"private_gists\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"private_gists\" ], int )\n self.__private_gists = attributes[ \"private_gists\" ]\n- if \"public_gists\" in attributes and attributes[ \"public_gists\" ] is not None:\n+ if \"public_gists\" in attributes and attributes[ \"public_gists\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"public_gists\" ], int )\n self.__public_gists = attributes[ \"public_gists\" ]\n- if \"public_repos\" in attributes and attributes[ \"public_repos\" ] is not None:\n+ if \"public_repos\" in attributes and attributes[ \"public_repos\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"public_repos\" ], int )\n self.__public_repos = attributes[ \"public_repos\" ]\n- if \"total_private_repos\" in attributes and attributes[ \"total_private_repos\" ] is not None:\n+ if \"total_private_repos\" in attributes and attributes[ \"total_private_repos\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"total_private_repos\" ], int )\n self.__total_private_repos = attributes[ \"total_private_repos\" ]\n- if \"type\" in attributes and attributes[ \"type\" ] is not None:\n+ if \"type\" in attributes and attributes[ \"type\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"type\" ], ( str, unicode ) )\n self.__type = attributes[ \"type\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]"},{"sha":"78ac913ccb12dc01a5064095456078444925ae9e","filename":"src/github/Organization.py","status":"modified","additions":24,"deletions":24,"changes":48,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Organization.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Organization.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/Organization.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -390,75 +390,75 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"avatar_url\", \"billing_email\", \"blog\", \"collaborators\", \"company\", \"created_at\", \"disk_usage\", \"email\", \"followers\", \"following\", \"gravatar_id\", \"html_url\", \"id\", \"location\", \"login\", \"name\", \"owned_private_repos\", \"plan\", \"private_gists\", \"public_gists\", \"public_repos\", \"total_private_repos\", \"type\", \"url\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"avatar_url\" in attributes and attributes[ \"avatar_url\" ] is not None:\n+ if \"avatar_url\" in attributes and attributes[ \"avatar_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"avatar_url\" ], ( str, unicode ) )\n self.__avatar_url = attributes[ \"avatar_url\" ]\n- if \"billing_email\" in attributes and attributes[ \"billing_email\" ] is not None:\n+ if \"billing_email\" in attributes and attributes[ \"billing_email\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"billing_email\" ], ( str, unicode ) )\n self.__billing_email = attributes[ \"billing_email\" ]\n- if \"blog\" in attributes and attributes[ \"blog\" ] is not None:\n+ if \"blog\" in attributes and attributes[ \"blog\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"blog\" ], ( str, unicode ) )\n self.__blog = attributes[ \"blog\" ]\n- if \"collaborators\" in attributes and attributes[ \"collaborators\" ] is not None:\n+ if \"collaborators\" in attributes and attributes[ \"collaborators\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"collaborators\" ], int )\n self.__collaborators = attributes[ \"collaborators\" ]\n- if \"company\" in attributes and attributes[ \"company\" ] is not None:\n+ if \"company\" in attributes and attributes[ \"company\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"company\" ], ( str, unicode ) )\n self.__company = attributes[ \"company\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"created_at\" ], ( str, unicode ) )\n self.__created_at = attributes[ \"created_at\" ]\n- if \"disk_usage\" in attributes and attributes[ \"disk_usage\" ] is not None:\n+ if \"disk_usage\" in attributes and attributes[ \"disk_usage\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"disk_usage\" ], int )\n self.__disk_usage = attributes[ \"disk_usage\" ]\n- if \"email\" in attributes and attributes[ \"email\" ] is not None:\n+ if \"email\" in attributes and attributes[ \"email\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"email\" ], ( str, unicode ) )\n self.__email = attributes[ \"email\" ]\n- if \"followers\" in attributes and attributes[ \"followers\" ] is not None:\n+ if \"followers\" in attributes and attributes[ \"followers\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"followers\" ], int )\n self.__followers = attributes[ \"followers\" ]\n- if \"following\" in attributes and attributes[ \"following\" ] is not None:\n+ if \"following\" in attributes and attributes[ \"following\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"following\" ], int )\n self.__following = attributes[ \"following\" ]\n- if \"gravatar_id\" in attributes and attributes[ \"gravatar_id\" ] is not None:\n+ if \"gravatar_id\" in attributes and attributes[ \"gravatar_id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"gravatar_id\" ], ( str, unicode ) )\n self.__gravatar_id = attributes[ \"gravatar_id\" ]\n- if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None:\n+ if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"html_url\" ], ( str, unicode ) )\n self.__html_url = attributes[ \"html_url\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"id\" ], int )\n self.__id = attributes[ \"id\" ]\n- if \"location\" in attributes and attributes[ \"location\" ] is not None:\n+ if \"location\" in attributes and attributes[ \"location\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"location\" ], ( str, unicode ) )\n self.__location = attributes[ \"location\" ]\n- if \"login\" in attributes and attributes[ \"login\" ] is not None:\n+ if \"login\" in attributes and attributes[ \"login\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"login\" ], ( str, unicode ) )\n self.__login = attributes[ \"login\" ]\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"name\" ], ( str, unicode ) )\n self.__name = attributes[ \"name\" ]\n- if \"owned_private_repos\" in attributes and attributes[ \"owned_private_repos\" ] is not None:\n+ if \"owned_private_repos\" in attributes and attributes[ \"owned_private_repos\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"owned_private_repos\" ], int )\n self.__owned_private_repos = attributes[ \"owned_private_repos\" ]\n- if \"plan\" in attributes and attributes[ \"plan\" ] is not None:\n+ if \"plan\" in attributes and attributes[ \"plan\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"plan\" ], dict )\n self.__plan = Plan.Plan( self.__requester, attributes[ \"plan\" ], completion = LazyCompletion )\n- if \"private_gists\" in attributes and attributes[ \"private_gists\" ] is not None:\n+ if \"private_gists\" in attributes and attributes[ \"private_gists\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"private_gists\" ], int )\n self.__private_gists = attributes[ \"private_gists\" ]\n- if \"public_gists\" in attributes and attributes[ \"public_gists\" ] is not None:\n+ if \"public_gists\" in attributes and attributes[ \"public_gists\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"public_gists\" ], int )\n self.__public_gists = attributes[ \"public_gists\" ]\n- if \"public_repos\" in attributes and attributes[ \"public_repos\" ] is not None:\n+ if \"public_repos\" in attributes and attributes[ \"public_repos\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"public_repos\" ], int )\n self.__public_repos = attributes[ \"public_repos\" ]\n- if \"total_private_repos\" in attributes and attributes[ \"total_private_repos\" ] is not None:\n+ if \"total_private_repos\" in attributes and attributes[ \"total_private_repos\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"total_private_repos\" ], int )\n self.__total_private_repos = attributes[ \"total_private_repos\" ]\n- if \"type\" in attributes and attributes[ \"type\" ] is not None:\n+ if \"type\" in attributes and attributes[ \"type\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"type\" ], ( str, unicode ) )\n self.__type = attributes[ \"type\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]"},{"sha":"043f6f5db4d094d723aafbec7fe54a77205e9f0f","filename":"src/github/Permissions.py","status":"modified","additions":3,"deletions":3,"changes":6,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Permissions.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Permissions.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/Permissions.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -32,12 +32,12 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"admin\", \"pull\", \"push\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"admin\" in attributes and attributes[ \"admin\" ] is not None:\n+ if \"admin\" in attributes and attributes[ \"admin\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"admin\" ], bool )\n self.__admin = attributes[ \"admin\" ]\n- if \"pull\" in attributes and attributes[ \"pull\" ] is not None:\n+ if \"pull\" in attributes and attributes[ \"pull\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"pull\" ], bool )\n self.__pull = attributes[ \"pull\" ]\n- if \"push\" in attributes and attributes[ \"push\" ] is not None:\n+ if \"push\" in attributes and attributes[ \"push\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"push\" ], bool )\n self.__push = attributes[ \"push\" ]"},{"sha":"14ac71bd4920084cd9c8dd2e452c707d82807a64","filename":"src/github/Plan.py","status":"modified","additions":4,"deletions":4,"changes":8,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Plan.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Plan.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/Plan.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -37,15 +37,15 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"collaborators\", \"name\", \"private_repos\", \"space\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"collaborators\" in attributes and attributes[ \"collaborators\" ] is not None:\n+ if \"collaborators\" in attributes and attributes[ \"collaborators\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"collaborators\" ], int )\n self.__collaborators = attributes[ \"collaborators\" ]\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"name\" ], ( str, unicode ) )\n self.__name = attributes[ \"name\" ]\n- if \"private_repos\" in attributes and attributes[ \"private_repos\" ] is not None:\n+ if \"private_repos\" in attributes and attributes[ \"private_repos\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"private_repos\" ], int )\n self.__private_repos = attributes[ \"private_repos\" ]\n- if \"space\" in attributes and attributes[ \"space\" ] is not None:\n+ if \"space\" in attributes and attributes[ \"space\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"space\" ], int )\n self.__space = attributes[ \"space\" ]"},{"sha":"07e945e4b49ca0d8cb8e06c124431022765bc8f0","filename":"src/github/PullRequest.py","status":"modified","additions":26,"deletions":26,"changes":52,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/PullRequest.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/PullRequest.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/PullRequest.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -279,56 +279,56 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"additions\", \"base\", \"body\", \"changed_files\", \"closed_at\", \"comments\", \"commits\", \"created_at\", \"deletions\", \"diff_url\", \"head\", \"html_url\", \"id\", \"issue_url\", \"mergeable\", \"merged\", \"merged_at\", \"merged_by\", \"number\", \"patch_url\", \"review_comments\", \"state\", \"title\", \"updated_at\", \"url\", \"user\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"additions\" in attributes and attributes[ \"additions\" ] is not None:\n+ if \"additions\" in attributes and attributes[ \"additions\" ] is not None: # pragma no branch\n self.__additions = attributes[ \"additions\" ]\n- if \"base\" in attributes and attributes[ \"base\" ] is not None:\n+ if \"base\" in attributes and attributes[ \"base\" ] is not None: # pragma no branch\n self.__base = attributes[ \"base\" ]\n- if \"body\" in attributes and attributes[ \"body\" ] is not None:\n+ if \"body\" in attributes and attributes[ \"body\" ] is not None: # pragma no branch\n self.__body = attributes[ \"body\" ]\n- if \"changed_files\" in attributes and attributes[ \"changed_files\" ] is not None:\n+ if \"changed_files\" in attributes and attributes[ \"changed_files\" ] is not None: # pragma no branch\n self.__changed_files = attributes[ \"changed_files\" ]\n- if \"closed_at\" in attributes and attributes[ \"closed_at\" ] is not None:\n+ if \"closed_at\" in attributes and attributes[ \"closed_at\" ] is not None: # pragma no branch\n self.__closed_at = attributes[ \"closed_at\" ]\n- if \"comments\" in attributes and attributes[ \"comments\" ] is not None:\n+ if \"comments\" in attributes and attributes[ \"comments\" ] is not None: # pragma no branch\n self.__comments = attributes[ \"comments\" ]\n- if \"commits\" in attributes and attributes[ \"commits\" ] is not None:\n+ if \"commits\" in attributes and attributes[ \"commits\" ] is not None: # pragma no branch\n self.__commits = attributes[ \"commits\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n self.__created_at = attributes[ \"created_at\" ]\n- if \"deletions\" in attributes and attributes[ \"deletions\" ] is not None:\n+ if \"deletions\" in attributes and attributes[ \"deletions\" ] is not None: # pragma no branch\n self.__deletions = attributes[ \"deletions\" ]\n- if \"diff_url\" in attributes and attributes[ \"diff_url\" ] is not None:\n+ if \"diff_url\" in attributes and attributes[ \"diff_url\" ] is not None: # pragma no branch\n self.__diff_url = attributes[ \"diff_url\" ]\n- if \"head\" in attributes and attributes[ \"head\" ] is not None:\n+ if \"head\" in attributes and attributes[ \"head\" ] is not None: # pragma no branch\n self.__head = attributes[ \"head\" ]\n- if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None:\n+ if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None: # pragma no branch\n self.__html_url = attributes[ \"html_url\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n self.__id = attributes[ \"id\" ]\n- if \"issue_url\" in attributes and attributes[ \"issue_url\" ] is not None:\n+ if \"issue_url\" in attributes and attributes[ \"issue_url\" ] is not None: # pragma no branch\n self.__issue_url = attributes[ \"issue_url\" ]\n- if \"mergeable\" in attributes and attributes[ \"mergeable\" ] is not None:\n+ if \"mergeable\" in attributes and attributes[ \"mergeable\" ] is not None: # pragma no branch\n self.__mergeable = attributes[ \"mergeable\" ]\n- if \"merged\" in attributes and attributes[ \"merged\" ] is not None:\n+ if \"merged\" in attributes and attributes[ \"merged\" ] is not None: # pragma no branch\n self.__merged = attributes[ \"merged\" ]\n- if \"merged_at\" in attributes and attributes[ \"merged_at\" ] is not None:\n+ if \"merged_at\" in attributes and attributes[ \"merged_at\" ] is not None: # pragma no branch\n self.__merged_at = attributes[ \"merged_at\" ]\n- if \"merged_by\" in attributes and attributes[ \"merged_by\" ] is not None:\n+ if \"merged_by\" in attributes and attributes[ \"merged_by\" ] is not None: # pragma no branch\n self.__merged_by = attributes[ \"merged_by\" ]\n- if \"number\" in attributes and attributes[ \"number\" ] is not None:\n+ if \"number\" in attributes and attributes[ \"number\" ] is not None: # pragma no branch\n self.__number = attributes[ \"number\" ]\n- if \"patch_url\" in attributes and attributes[ \"patch_url\" ] is not None:\n+ if \"patch_url\" in attributes and attributes[ \"patch_url\" ] is not None: # pragma no branch\n self.__patch_url = attributes[ \"patch_url\" ]\n- if \"review_comments\" in attributes and attributes[ \"review_comments\" ] is not None:\n+ if \"review_comments\" in attributes and attributes[ \"review_comments\" ] is not None: # pragma no branch\n self.__review_comments = attributes[ \"review_comments\" ]\n- if \"state\" in attributes and attributes[ \"state\" ] is not None:\n+ if \"state\" in attributes and attributes[ \"state\" ] is not None: # pragma no branch\n self.__state = attributes[ \"state\" ]\n- if \"title\" in attributes and attributes[ \"title\" ] is not None:\n+ if \"title\" in attributes and attributes[ \"title\" ] is not None: # pragma no branch\n self.__title = attributes[ \"title\" ]\n- if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None:\n+ if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None: # pragma no branch\n self.__updated_at = attributes[ \"updated_at\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n self.__url = attributes[ \"url\" ]\n- if \"user\" in attributes and attributes[ \"user\" ] is not None:\n+ if \"user\" in attributes and attributes[ \"user\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"user\" ], dict )\n self.__user = NamedUser.NamedUser( self.__requester, attributes[ \"user\" ], completion = LazyCompletion )"},{"sha":"d0095192e606f65fec81882be15aca06ac47e5e3","filename":"src/github/PullRequestComment.py","status":"modified","additions":11,"deletions":11,"changes":22,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/PullRequestComment.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/PullRequestComment.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/PullRequestComment.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -121,26 +121,26 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"body\", \"commit_id\", \"created_at\", \"html_url\", \"id\", \"line\", \"path\", \"position\", \"updated_at\", \"url\", \"user\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"body\" in attributes and attributes[ \"body\" ] is not None:\n+ if \"body\" in attributes and attributes[ \"body\" ] is not None: # pragma no branch\n self.__body = attributes[ \"body\" ]\n- if \"commit_id\" in attributes and attributes[ \"commit_id\" ] is not None:\n+ if \"commit_id\" in attributes and attributes[ \"commit_id\" ] is not None: # pragma no branch\n self.__commit_id = attributes[ \"commit_id\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n self.__created_at = attributes[ \"created_at\" ]\n- if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None:\n+ if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None: # pragma no branch\n self.__html_url = attributes[ \"html_url\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n self.__id = attributes[ \"id\" ]\n- if \"line\" in attributes and attributes[ \"line\" ] is not None:\n+ if \"line\" in attributes and attributes[ \"line\" ] is not None: # pragma no branch\n self.__line = attributes[ \"line\" ]\n- if \"path\" in attributes and attributes[ \"path\" ] is not None:\n+ if \"path\" in attributes and attributes[ \"path\" ] is not None: # pragma no branch\n self.__path = attributes[ \"path\" ]\n- if \"position\" in attributes and attributes[ \"position\" ] is not None:\n+ if \"position\" in attributes and attributes[ \"position\" ] is not None: # pragma no branch\n self.__position = attributes[ \"position\" ]\n- if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None:\n+ if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None: # pragma no branch\n self.__updated_at = attributes[ \"updated_at\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n self.__url = attributes[ \"url\" ]\n- if \"user\" in attributes and attributes[ \"user\" ] is not None:\n+ if \"user\" in attributes and attributes[ \"user\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"user\" ], dict )\n self.__user = NamedUser.NamedUser( self.__requester, attributes[ \"user\" ], completion = LazyCompletion )"},{"sha":"043fb9a5328ad003b449573616e418f17e25bac2","filename":"src/github/PullRequestFile.py","status":"modified","additions":9,"deletions":9,"changes":18,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/PullRequestFile.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/PullRequestFile.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/PullRequestFile.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -62,21 +62,21 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"additions\", \"blob_url\", \"changes\", \"deletions\", \"filename\", \"patch\", \"raw_url\", \"sha\", \"status\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"additions\" in attributes and attributes[ \"additions\" ] is not None:\n+ if \"additions\" in attributes and attributes[ \"additions\" ] is not None: # pragma no branch\n self.__additions = attributes[ \"additions\" ]\n- if \"blob_url\" in attributes and attributes[ \"blob_url\" ] is not None:\n+ if \"blob_url\" in attributes and attributes[ \"blob_url\" ] is not None: # pragma no branch\n self.__blob_url = attributes[ \"blob_url\" ]\n- if \"changes\" in attributes and attributes[ \"changes\" ] is not None:\n+ if \"changes\" in attributes and attributes[ \"changes\" ] is not None: # pragma no branch\n self.__changes = attributes[ \"changes\" ]\n- if \"deletions\" in attributes and attributes[ \"deletions\" ] is not None:\n+ if \"deletions\" in attributes and attributes[ \"deletions\" ] is not None: # pragma no branch\n self.__deletions = attributes[ \"deletions\" ]\n- if \"filename\" in attributes and attributes[ \"filename\" ] is not None:\n+ if \"filename\" in attributes and attributes[ \"filename\" ] is not None: # pragma no branch\n self.__filename = attributes[ \"filename\" ]\n- if \"patch\" in attributes and attributes[ \"patch\" ] is not None:\n+ if \"patch\" in attributes and attributes[ \"patch\" ] is not None: # pragma no branch\n self.__patch = attributes[ \"patch\" ]\n- if \"raw_url\" in attributes and attributes[ \"raw_url\" ] is not None:\n+ if \"raw_url\" in attributes and attributes[ \"raw_url\" ] is not None: # pragma no branch\n self.__raw_url = attributes[ \"raw_url\" ]\n- if \"sha\" in attributes and attributes[ \"sha\" ] is not None:\n+ if \"sha\" in attributes and attributes[ \"sha\" ] is not None: # pragma no branch\n self.__sha = attributes[ \"sha\" ]\n- if \"status\" in attributes and attributes[ \"status\" ] is not None:\n+ if \"status\" in attributes and attributes[ \"status\" ] is not None: # pragma no branch\n self.__status = attributes[ \"status\" ]"},{"sha":"30b4bc70dc2a72c52c1cf02e63a26e1cfaf5676e","filename":"src/github/Repository.py","status":"modified","additions":31,"deletions":31,"changes":62,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Repository.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Repository.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/Repository.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -905,96 +905,96 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"clone_url\", \"created_at\", \"description\", \"fork\", \"forks\", \"full_name\", \"git_url\", \"has_downloads\", \"has_issues\", \"has_wiki\", \"homepage\", \"html_url\", \"id\", \"language\", \"master_branch\", \"mirror_url\", \"name\", \"open_issues\", \"organization\", \"owner\", \"parent\", \"permissions\", \"private\", \"pushed_at\", \"size\", \"source\", \"ssh_url\", \"svn_url\", \"updated_at\", \"url\", \"watchers\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"clone_url\" in attributes and attributes[ \"clone_url\" ] is not None:\n+ if \"clone_url\" in attributes and attributes[ \"clone_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"clone_url\" ], ( str, unicode ) )\n self.__clone_url = attributes[ \"clone_url\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"created_at\" ], ( str, unicode ) )\n self.__created_at = attributes[ \"created_at\" ]\n- if \"description\" in attributes and attributes[ \"description\" ] is not None:\n+ if \"description\" in attributes and attributes[ \"description\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"description\" ], ( str, unicode ) )\n self.__description = attributes[ \"description\" ]\n- if \"fork\" in attributes and attributes[ \"fork\" ] is not None:\n+ if \"fork\" in attributes and attributes[ \"fork\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"fork\" ], bool )\n self.__fork = attributes[ \"fork\" ]\n- if \"forks\" in attributes and attributes[ \"forks\" ] is not None:\n+ if \"forks\" in attributes and attributes[ \"forks\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"forks\" ], int )\n self.__forks = attributes[ \"forks\" ]\n- if \"full_name\" in attributes and attributes[ \"full_name\" ] is not None:\n+ if \"full_name\" in attributes and attributes[ \"full_name\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"full_name\" ], ( str, unicode ) )\n self.__full_name = attributes[ \"full_name\" ]\n- if \"git_url\" in attributes and attributes[ \"git_url\" ] is not None:\n+ if \"git_url\" in attributes and attributes[ \"git_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"git_url\" ], ( str, unicode ) )\n self.__git_url = attributes[ \"git_url\" ]\n- if \"has_downloads\" in attributes and attributes[ \"has_downloads\" ] is not None:\n+ if \"has_downloads\" in attributes and attributes[ \"has_downloads\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"has_downloads\" ], bool )\n self.__has_downloads = attributes[ \"has_downloads\" ]\n- if \"has_issues\" in attributes and attributes[ \"has_issues\" ] is not None:\n+ if \"has_issues\" in attributes and attributes[ \"has_issues\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"has_issues\" ], bool )\n self.__has_issues = attributes[ \"has_issues\" ]\n- if \"has_wiki\" in attributes and attributes[ \"has_wiki\" ] is not None:\n+ if \"has_wiki\" in attributes and attributes[ \"has_wiki\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"has_wiki\" ], bool )\n self.__has_wiki = attributes[ \"has_wiki\" ]\n- if \"homepage\" in attributes and attributes[ \"homepage\" ] is not None:\n+ if \"homepage\" in attributes and attributes[ \"homepage\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"homepage\" ], ( str, unicode ) )\n self.__homepage = attributes[ \"homepage\" ]\n- if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None:\n+ if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"html_url\" ], ( str, unicode ) )\n self.__html_url = attributes[ \"html_url\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"id\" ], int )\n self.__id = attributes[ \"id\" ]\n- if \"language\" in attributes and attributes[ \"language\" ] is not None:\n+ if \"language\" in attributes and attributes[ \"language\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"language\" ], ( str, unicode ) )\n self.__language = attributes[ \"language\" ]\n- if \"master_branch\" in attributes and attributes[ \"master_branch\" ] is not None:\n+ if \"master_branch\" in attributes and attributes[ \"master_branch\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"master_branch\" ], ( str, unicode ) )\n self.__master_branch = attributes[ \"master_branch\" ]\n- if \"mirror_url\" in attributes and attributes[ \"mirror_url\" ] is not None:\n+ if \"mirror_url\" in attributes and attributes[ \"mirror_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"mirror_url\" ], ( str, unicode ) )\n self.__mirror_url = attributes[ \"mirror_url\" ]\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"name\" ], ( str, unicode ) )\n self.__name = attributes[ \"name\" ]\n- if \"open_issues\" in attributes and attributes[ \"open_issues\" ] is not None:\n+ if \"open_issues\" in attributes and attributes[ \"open_issues\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"open_issues\" ], int )\n self.__open_issues = attributes[ \"open_issues\" ]\n- if \"organization\" in attributes and attributes[ \"organization\" ] is not None:\n+ if \"organization\" in attributes and attributes[ \"organization\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"organization\" ], dict )\n self.__organization = Organization.Organization( self.__requester, attributes[ \"organization\" ], completion = LazyCompletion )\n- if \"owner\" in attributes and attributes[ \"owner\" ] is not None:\n+ if \"owner\" in attributes and attributes[ \"owner\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"owner\" ], dict )\n self.__owner = NamedUser.NamedUser( self.__requester, attributes[ \"owner\" ], completion = LazyCompletion )\n- if \"parent\" in attributes and attributes[ \"parent\" ] is not None:\n+ if \"parent\" in attributes and attributes[ \"parent\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"parent\" ], dict )\n self.__parent = Repository( self.__requester, attributes[ \"parent\" ], completion = LazyCompletion )\n- if \"permissions\" in attributes and attributes[ \"permissions\" ] is not None:\n+ if \"permissions\" in attributes and attributes[ \"permissions\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"permissions\" ], dict )\n self.__permissions = Permissions.Permissions( self.__requester, attributes[ \"permissions\" ], completion = LazyCompletion )\n- if \"private\" in attributes and attributes[ \"private\" ] is not None:\n+ if \"private\" in attributes and attributes[ \"private\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"private\" ], bool )\n self.__private = attributes[ \"private\" ]\n- if \"pushed_at\" in attributes and attributes[ \"pushed_at\" ] is not None:\n+ if \"pushed_at\" in attributes and attributes[ \"pushed_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"pushed_at\" ], ( str, unicode ) )\n self.__pushed_at = attributes[ \"pushed_at\" ]\n- if \"size\" in attributes and attributes[ \"size\" ] is not None:\n+ if \"size\" in attributes and attributes[ \"size\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"size\" ], int )\n self.__size = attributes[ \"size\" ]\n- if \"source\" in attributes and attributes[ \"source\" ] is not None:\n+ if \"source\" in attributes and attributes[ \"source\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"source\" ], dict )\n self.__source = Repository( self.__requester, attributes[ \"source\" ], completion = LazyCompletion )\n- if \"ssh_url\" in attributes and attributes[ \"ssh_url\" ] is not None:\n+ if \"ssh_url\" in attributes and attributes[ \"ssh_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"ssh_url\" ], ( str, unicode ) )\n self.__ssh_url = attributes[ \"ssh_url\" ]\n- if \"svn_url\" in attributes and attributes[ \"svn_url\" ] is not None:\n+ if \"svn_url\" in attributes and attributes[ \"svn_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"svn_url\" ], ( str, unicode ) )\n self.__svn_url = attributes[ \"svn_url\" ]\n- if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None:\n+ if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"updated_at\" ], ( str, unicode ) )\n self.__updated_at = attributes[ \"updated_at\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]\n- if \"watchers\" in attributes and attributes[ \"watchers\" ] is not None:\n+ if \"watchers\" in attributes and attributes[ \"watchers\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"watchers\" ], int )\n self.__watchers = attributes[ \"watchers\" ]"},{"sha":"fc5cafc09e2b8120e47c2bbdf0e0fa0821ec5ecf","filename":"src/github/RepositoryKey.py","status":"modified","additions":5,"deletions":5,"changes":10,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/RepositoryKey.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/RepositoryKey.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/RepositoryKey.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -87,14 +87,14 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"id\", \"key\", \"title\", \"url\", \"verified\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n self.__id = attributes[ \"id\" ]\n- if \"key\" in attributes and attributes[ \"key\" ] is not None:\n+ if \"key\" in attributes and attributes[ \"key\" ] is not None: # pragma no branch\n self.__key = attributes[ \"key\" ]\n- if \"title\" in attributes and attributes[ \"title\" ] is not None:\n+ if \"title\" in attributes and attributes[ \"title\" ] is not None: # pragma no branch\n self.__title = attributes[ \"title\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n self.__url = attributes[ \"url\" ]\n- if \"verified\" in attributes and attributes[ \"verified\" ] is not None:\n+ if \"verified\" in attributes and attributes[ \"verified\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"verified\" ], bool )\n self.__verified = attributes[ \"verified\" ]"},{"sha":"7903406c469352d3f3fb897ed9ac9fc9ebc51c3b","filename":"src/github/Tag.py","status":"modified","additions":4,"deletions":4,"changes":8,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Tag.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Tag.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/Tag.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -38,15 +38,15 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"commit\", \"name\", \"tarball_url\", \"zipball_url\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"commit\" in attributes and attributes[ \"commit\" ] is not None:\n+ if \"commit\" in attributes and attributes[ \"commit\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"commit\" ], dict )\n self.__commit = Commit.Commit( self.__requester, attributes[ \"commit\" ], completion = LazyCompletion )\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"name\" ], ( str, unicode ) )\n self.__name = attributes[ \"name\" ]\n- if \"tarball_url\" in attributes and attributes[ \"tarball_url\" ] is not None:\n+ if \"tarball_url\" in attributes and attributes[ \"tarball_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"tarball_url\" ], ( str, unicode ) )\n self.__tarball_url = attributes[ \"tarball_url\" ]\n- if \"zipball_url\" in attributes and attributes[ \"zipball_url\" ] is not None:\n+ if \"zipball_url\" in attributes and attributes[ \"zipball_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"zipball_url\" ], ( str, unicode ) )\n self.__zipball_url = attributes[ \"zipball_url\" ]"},{"sha":"ca5b7e13476a30fee9234c6f965019f303e3f33e","filename":"src/github/Team.py","status":"modified","additions":6,"deletions":6,"changes":12,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Team.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Team.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/Team.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -172,15 +172,15 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"id\", \"members_count\", \"name\", \"permission\", \"repos_count\", \"url\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n self.__id = attributes[ \"id\" ]\n- if \"members_count\" in attributes and attributes[ \"members_count\" ] is not None:\n+ if \"members_count\" in attributes and attributes[ \"members_count\" ] is not None: # pragma no branch\n self.__members_count = attributes[ \"members_count\" ]\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n self.__name = attributes[ \"name\" ]\n- if \"permission\" in attributes and attributes[ \"permission\" ] is not None:\n+ if \"permission\" in attributes and attributes[ \"permission\" ] is not None: # pragma no branch\n self.__permission = attributes[ \"permission\" ]\n- if \"repos_count\" in attributes and attributes[ \"repos_count\" ] is not None:\n+ if \"repos_count\" in attributes and attributes[ \"repos_count\" ] is not None: # pragma no branch\n self.__repos_count = attributes[ \"repos_count\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n self.__url = attributes[ \"url\" ]"},{"sha":"b7b135d5cf476ece019ca1d018fdf3fc48a450ee","filename":"src/github/UserKey.py","status":"modified","additions":5,"deletions":5,"changes":10,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/UserKey.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/UserKey.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/src/github/UserKey.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -87,14 +87,14 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"id\", \"key\", \"title\", \"url\", \"verified\", ], attribute\n # @todo No need to check if attribute is in attributes when attribute is mandatory\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n self.__id = attributes[ \"id\" ]\n- if \"key\" in attributes and attributes[ \"key\" ] is not None:\n+ if \"key\" in attributes and attributes[ \"key\" ] is not None: # pragma no branch\n self.__key = attributes[ \"key\" ]\n- if \"title\" in attributes and attributes[ \"title\" ] is not None:\n+ if \"title\" in attributes and attributes[ \"title\" ] is not None: # pragma no branch\n self.__title = attributes[ \"title\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n self.__url = attributes[ \"url\" ]\n- if \"verified\" in attributes and attributes[ \"verified\" ] is not None:\n+ if \"verified\" in attributes and attributes[ \"verified\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"verified\" ], bool )\n self.__verified = attributes[ \"verified\" ]"},{"sha":"c0a781c0bffba244aa2e9826770ccc127f1415af","filename":"test/Issue.py","status":"modified","additions":25,"deletions":1,"changes":26,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/test/Issue.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/test/Issue.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/test/Issue.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -3,7 +3,8 @@\n class Issue( Framework.TestCase ):\r\n def setUp( self ):\r\n Framework.TestCase.setUp( self )\r\n- self.issue = self.g.get_user().get_repo( \"PyGithub\" ).get_issue( 28 )\r\n+ self.repo = self.g.get_user().get_repo( \"PyGithub\" )\r\n+ self.issue = self.repo.get_issue( 28 )\r\n \r\n def testAttributes( self ):\r\n self.assertEqual( self.issue.assignee.login, \"jacquev6\" )\r\n@@ -47,3 +48,26 @@ def testGetComments( self ):\n \r\n def testGetEvents( self ):\r\n self.assertListKeyEqual( self.issue.get_events(), lambda e: e.id, [ 15819975, 15820048 ] )\r\n+\r\n+ def testGetLabels( self ):\r\n+ self.assertListKeyEqual( self.issue.get_labels(), lambda l: l.name, [ \"Bug\", \"Project management\", \"Question\" ] )\r\n+\r\n+ def testAddAndRemoveLabels( self ):\r\n+ bug = self.repo.get_label( \"Bug\" )\r\n+ question = self.repo.get_label( \"Question\" )\r\n+ self.assertListKeyEqual( self.issue.get_labels(), lambda l: l.name, [ \"Bug\", \"Project management\", \"Question\" ] )\r\n+ self.issue.remove_from_labels( bug )\r\n+ self.assertListKeyEqual( self.issue.get_labels(), lambda l: l.name, [ \"Project management\", \"Question\" ] )\r\n+ self.issue.remove_from_labels( question )\r\n+ self.assertListKeyEqual( self.issue.get_labels(), lambda l: l.name, [ \"Project management\" ] )\r\n+ self.issue.add_to_labels( bug, question )\r\n+ self.assertListKeyEqual( self.issue.get_labels(), lambda l: l.name, [ \"Bug\", \"Project management\", \"Question\" ] )\r\n+\r\n+ def testDeleteAndSetLabels( self ):\r\n+ bug = self.repo.get_label( \"Bug\" )\r\n+ question = self.repo.get_label( \"Question\" )\r\n+ self.assertListKeyEqual( self.issue.get_labels(), lambda l: l.name, [ \"Bug\", \"Project management\", \"Question\" ] )\r\n+ self.issue.delete_labels()\r\n+ self.assertListKeyEqual( self.issue.get_labels(), lambda l: l.name, [] )\r\n+ self.issue.set_labels( bug, question )\r\n+ self.assertListKeyEqual( self.issue.get_labels(), lambda l: l.name, [ \"Bug\", \"Question\" ] )\r"},{"sha":"77fa51481ceb340a91f3988b7d570d697065ebe8","filename":"test/IssueEvent.py","status":"modified","additions":7,"deletions":7,"changes":14,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/test/IssueEvent.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/test/IssueEvent.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/test/IssueEvent.py?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -3,13 +3,13 @@\n class IssueEvent( Framework.TestCase ):\r\n def setUp( self ):\r\n Framework.TestCase.setUp( self )\r\n- self.event = self.g.get_user().get_repo( \"PyGithub\" ).get_issues_event( 15819975 )\r\n+ self.event = self.g.get_user().get_repo( \"PyGithub\" ).get_issues_event( 16348656 )\r\n \r\n def testAttributes( self ):\r\n self.assertEqual( self.event.actor.login, \"jacquev6\" )\r\n- self.assertEqual( self.event.commit_id, None )\r\n- self.assertEqual( self.event.created_at, \"2012-05-19T10:38:23Z\" )\r\n- self.assertEqual( self.event.event, \"subscribed\" )\r\n- self.assertEqual( self.event.id, 15819975 )\r\n- self.assertEqual( self.event.issue.number, 28 )\r\n- self.assertEqual( self.event.url, \"https://api.github.com/repos/jacquev6/PyGithub/issues/events/15819975\" )\r\n+ self.assertEqual( self.event.commit_id, \"ed866fc43833802ab553e5ff8581c81bb00dd433\" )\r\n+ self.assertEqual( self.event.created_at, \"2012-05-27T07:29:25Z\" )\r\n+ self.assertEqual( self.event.event, \"referenced\" )\r\n+ self.assertEqual( self.event.id, 16348656 )\r\n+ self.assertEqual( self.event.issue.number, 30 )\r\n+ self.assertEqual( self.event.url, \"https://api.github.com/repos/jacquev6/PyGithub/issues/events/16348656\" )\r"},{"sha":"fb933714353269eb17e70880daacaf9166d4f742","filename":"test/ReplayData/Issue.testAddAndRemoveLabels.txt","status":"added","additions":45,"deletions":0,"changes":45,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/test/ReplayData/Issue.testAddAndRemoveLabels.txt","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/test/ReplayData/Issue.testAddAndRemoveLabels.txt","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/test/ReplayData/Issue.testAddAndRemoveLabels.txt?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -0,0 +1,45 @@\n+GET /repos/jacquev6/PyGithub/labels/Bug {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4992'), ('content-length', '97'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"569c414d87e8ec43ec269a9e28bc2982\"'), ('date', 'Sun, 27 May 2012 09:04:01 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+{\"color\":\"e10c02\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\"}\n+\n+GET /repos/jacquev6/PyGithub/labels/Question {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4991'), ('content-length', '107'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"b659c8dcc1212c71f826547c3cc7ae99\"'), ('date', 'Sun, 27 May 2012 09:04:02 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}\n+\n+GET /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4990'), ('content-length', '335'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"c9f9beccb03030beaf7b80927da6fef6\"'), ('date', 'Sun, 27 May 2012 09:04:03 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\",\"color\":\"e10c02\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\",\"color\":\"444444\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}]\n+\n+DELETE /repos/jacquev6/PyGithub/issues/28/labels/Bug {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4989'), ('content-length', '237'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"46cc70bad88a09b559a5e67089005105\"'), ('date', 'Sun, 27 May 2012 09:04:03 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\",\"color\":\"444444\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}]\n+\n+GET /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4988'), ('content-length', '237'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"46cc70bad88a09b559a5e67089005105\"'), ('date', 'Sun, 27 May 2012 09:04:04 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\",\"color\":\"444444\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}]\n+\n+DELETE /repos/jacquev6/PyGithub/issues/28/labels/Question {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4987'), ('content-length', '129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"5352ae15c8a5a36c6cace63be9367332\"'), ('date', 'Sun, 27 May 2012 09:04:04 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\",\"color\":\"444444\"}]\n+\n+GET /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4986'), ('content-length', '129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"5352ae15c8a5a36c6cace63be9367332\"'), ('date', 'Sun, 27 May 2012 09:04:05 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\",\"color\":\"444444\"}]\n+\n+POST /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} [\"Bug\", \"Question\"]\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4985'), ('content-length', '335'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"d135d74d2ea2159d044676a220d41d3a\"'), ('date', 'Sun, 27 May 2012 09:04:06 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"color\":\"e10c02\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\"},{\"color\":\"444444\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\"},{\"color\":\"02e10c\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\"}]\n+\n+GET /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4984'), ('content-length', '335'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"c9f9beccb03030beaf7b80927da6fef6\"'), ('date', 'Sun, 27 May 2012 09:04:06 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\",\"color\":\"e10c02\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\",\"color\":\"444444\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}]\n+"},{"sha":"bbd6ae4ea3dac63b301017dece6f56b34eab6f80","filename":"test/ReplayData/Issue.testDeleteAndSetLabels.txt","status":"added","additions":35,"deletions":0,"changes":35,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/test/ReplayData/Issue.testDeleteAndSetLabels.txt","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/test/ReplayData/Issue.testDeleteAndSetLabels.txt","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/test/ReplayData/Issue.testDeleteAndSetLabels.txt?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -0,0 +1,35 @@\n+GET /repos/jacquev6/PyGithub/labels/Bug {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4974'), ('content-length', '97'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"fe2e942523eecb156d100829a6347516\"'), ('date', 'Sun, 27 May 2012 09:06:37 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\",\"color\":\"e10c02\"}\n+\n+GET /repos/jacquev6/PyGithub/labels/Question {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4973'), ('content-length', '107'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"931e58d337b2290717303141eda89cd7\"'), ('date', 'Sun, 27 May 2012 09:06:38 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+{\"color\":\"02e10c\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\"}\n+\n+GET /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4972'), ('content-length', '335'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"d135d74d2ea2159d044676a220d41d3a\"'), ('date', 'Sun, 27 May 2012 09:06:39 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"color\":\"e10c02\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\"},{\"color\":\"444444\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\"},{\"color\":\"02e10c\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\"}]\n+\n+DELETE /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} null\n+204\n+[('status', '204 No Content'), ('x-ratelimit-remaining', '4971'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"d41d8cd98f00b204e9800998ecf8427e\"'), ('date', 'Sun, 27 May 2012 09:06:39 GMT')]\n+\n+\n+GET /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4970'), ('content-length', '2'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"d751713988987e9331980363e24189ce\"'), ('date', 'Sun, 27 May 2012 09:06:40 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[]\n+\n+PUT /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} [\"Bug\", \"Question\"]\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4969'), ('content-length', '207'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"1a56634d9c1050a88592ff55ed8adc62\"'), ('date', 'Sun, 27 May 2012 09:06:40 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\",\"color\":\"e10c02\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}]\n+\n+GET /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4968'), ('content-length', '207'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"1a56634d9c1050a88592ff55ed8adc62\"'), ('date', 'Sun, 27 May 2012 09:06:41 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\",\"color\":\"e10c02\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}]\n+"},{"sha":"282dda36da4958e743c70a1cee5b89df0afce592","filename":"test/ReplayData/Issue.testGetLabels.txt","status":"added","additions":5,"deletions":0,"changes":5,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/test/ReplayData/Issue.testGetLabels.txt","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/test/ReplayData/Issue.testGetLabels.txt","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/test/ReplayData/Issue.testGetLabels.txt?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -0,0 +1,5 @@\n+GET /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4996'), ('content-length', '335'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"c9f9beccb03030beaf7b80927da6fef6\"'), ('date', 'Sun, 27 May 2012 08:56:31 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\",\"color\":\"e10c02\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\",\"color\":\"444444\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}]\n+"},{"sha":"0de7e5358c98a51af4f18e7ff9559f4a826bfebc","filename":"test/ReplayData/IssueEvent.setUp.txt","status":"modified","additions":7,"deletions":7,"changes":14,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/test/ReplayData/IssueEvent.setUp.txt","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/test/ReplayData/IssueEvent.setUp.txt","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/test/ReplayData/IssueEvent.setUp.txt?ref=8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -1,15 +1,15 @@\n GET /user {'Authorization': 'Basic login_and_password_removed'} null\n 200\n-[('status', '200 OK'), ('x-ratelimit-remaining', '4907'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"99c9bfb75395b749e9913a4729126fb5\"'), ('date', 'Sun, 27 May 2012 07:19:30 GMT'), ('content-type', 'application/json; charset=utf-8')]\n-{\"private_gists\":5,\"type\":\"User\",\"company\":\"Criteo\",\"location\":\"Paris, France\",\"hireable\":false,\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"bio\":\"\",\"following\":24,\"blog\":\"http://vincent-jacques.net\",\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\",\"total_private_repos\":5,\"followers\":13,\"owned_private_repos\":5,\"disk_usage\":16976,\"collaborators\":0,\"html_url\":\"https://github.com/jacquev6\",\"url\":\"https://api.github.com/users/jacquev6\",\"name\":\"Vincent Jacques\",\"login\":\"jacquev6\",\"public_repos\":11,\"public_gists\":3,\"email\":\"vincent@vincent-jacques.net\",\"id\":327146,\"plan\":{\"private_repos\":5,\"collaborators\":1,\"name\":\"micro\",\"space\":614400},\"created_at\":\"2010-07-09T06:10:06Z\"}\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4996'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"8974bb1628a3e3a6d3eb3b08c1b5a46b\"'), ('date', 'Sun, 27 May 2012 07:32:54 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+{\"type\":\"User\",\"bio\":\"\",\"disk_usage\":16976,\"total_private_repos\":5,\"url\":\"https://api.github.com/users/jacquev6\",\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\",\"owned_private_repos\":5,\"collaborators\":0,\"plan\":{\"collaborators\":1,\"private_repos\":5,\"name\":\"micro\",\"space\":614400},\"company\":\"Criteo\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"login\":\"jacquev6\",\"email\":\"vincent@vincent-jacques.net\",\"public_gists\":3,\"followers\":13,\"name\":\"Vincent Jacques\",\"created_at\":\"2010-07-09T06:10:06Z\",\"blog\":\"http://vincent-jacques.net\",\"location\":\"Paris, France\",\"hireable\":false,\"id\":327146,\"private_gists\":5,\"public_repos\":11,\"following\":24,\"html_url\":\"https://github.com/jacquev6\"}\n \n GET /repos/jacquev6/PyGithub {'Authorization': 'Basic login_and_password_removed'} null\n 200\n-[('status', '200 OK'), ('x-ratelimit-remaining', '4906'), ('content-length', '1129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"4c20acf0b23f75bbf25106b1a04f65a5\"'), ('date', 'Sun, 27 May 2012 07:19:31 GMT'), ('content-type', 'application/json; charset=utf-8')]\n-{\"description\":\"Python library implementing the full Github API v3\",\"full_name\":\"jacquev6/PyGithub\",\"has_wiki\":false,\"has_issues\":true,\"updated_at\":\"2012-05-27T06:55:28Z\",\"forks\":3,\"mirror_url\":null,\"homepage\":\"http://vincent-jacques.net/PyGithub\",\"ssh_url\":\"git@github.com:jacquev6/PyGithub.git\",\"open_issues\":16,\"fork\":false,\"svn_url\":\"https://github.com/jacquev6/PyGithub\",\"pushed_at\":\"2012-05-27T06:00:28Z\",\"size\":308,\"html_url\":\"https://github.com/jacquev6/PyGithub\",\"private\":false,\"url\":\"https://api.github.com/repos/jacquev6/PyGithub\",\"clone_url\":\"https://github.com/jacquev6/PyGithub.git\",\"owner\":{\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\",\"url\":\"https://api.github.com/users/jacquev6\",\"login\":\"jacquev6\",\"id\":327146},\"name\":\"PyGithub\",\"has_downloads\":true,\"language\":\"Python\",\"watchers\":15,\"git_url\":\"git://github.com/jacquev6/PyGithub.git\",\"id\":3544490,\"permissions\":{\"admin\":true,\"pull\":true,\"push\":true},\"created_at\":\"2012-02-25T12:53:47Z\"}\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4995'), ('content-length', '1129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"f1e4eb3993a364b66b68ec9db42405bd\"'), ('date', 'Sun, 27 May 2012 07:32:55 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+{\"clone_url\":\"https://github.com/jacquev6/PyGithub.git\",\"has_downloads\":true,\"watchers\":15,\"updated_at\":\"2012-05-27T07:29:24Z\",\"permissions\":{\"pull\":true,\"admin\":true,\"push\":true},\"homepage\":\"http://vincent-jacques.net/PyGithub\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub\",\"mirror_url\":null,\"has_wiki\":false,\"has_issues\":true,\"fork\":false,\"forks\":3,\"git_url\":\"git://github.com/jacquev6/PyGithub.git\",\"size\":308,\"private\":false,\"open_issues\":16,\"svn_url\":\"https://github.com/jacquev6/PyGithub\",\"owner\":{\"url\":\"https://api.github.com/users/jacquev6\",\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"login\":\"jacquev6\",\"id\":327146},\"name\":\"PyGithub\",\"language\":\"Python\",\"description\":\"Python library implementing the full Github API v3\",\"ssh_url\":\"git@github.com:jacquev6/PyGithub.git\",\"pushed_at\":\"2012-05-27T07:29:24Z\",\"created_at\":\"2012-02-25T12:53:47Z\",\"id\":3544490,\"html_url\":\"https://github.com/jacquev6/PyGithub\",\"full_name\":\"jacquev6/PyGithub\"}\n \n-GET /repos/jacquev6/PyGithub/issues/events/15819975 {'Authorization': 'Basic login_and_password_removed'} null\n+GET /repos/jacquev6/PyGithub/issues/events/16348656 {'Authorization': 'Basic login_and_password_removed'} null\n 200\n-[('status', '200 OK'), ('x-ratelimit-remaining', '4905'), ('content-length', '2430'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"a3d244842d23f92f69a23e21626fad11\"'), ('date', 'Sun, 27 May 2012 07:19:31 GMT'), ('content-type', 'application/json; charset=utf-8')]\n-{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues/events/15819975\",\"issue\":{\"updated_at\":\"2012-05-26T14:59:33Z\",\"body\":\"Body edited by PyGithub\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues/28\",\"comments\":0,\"milestone\":{\"creator\":{\"url\":\"https://api.github.com/users/jacquev6\",\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"login\":\"jacquev6\",\"id\":327146},\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/milestones/1\",\"number\":1,\"title\":\"Version 0.4\",\"due_on\":\"2012-03-13T07:00:00Z\",\"closed_issues\":3,\"open_issues\":0,\"created_at\":\"2012-03-08T12:22:10Z\",\"state\":\"closed\",\"description\":\"\",\"id\":93546},\"number\":28,\"assignee\":{\"url\":\"https://api.github.com/users/jacquev6\",\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"login\":\"jacquev6\",\"id\":327146},\"closed_at\":\"2012-05-26T14:59:33Z\",\"title\":\"Issue created by PyGithub\",\"labels\":[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\",\"color\":\"e10c02\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\",\"color\":\"444444\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}],\"created_at\":\"2012-05-19T10:38:23Z\",\"state\":\"closed\",\"user\":{\"url\":\"https://api.github.com/users/jacquev6\",\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"login\":\"jacquev6\",\"id\":327146},\"id\":4653757,\"pull_request\":{\"diff_url\":null,\"patch_url\":null,\"html_url\":null},\"html_url\":\"https://github.com/jacquev6/PyGithub/issues/28\"},\"commit_id\":null,\"created_at\":\"2012-05-19T10:38:23Z\",\"event\":\"subscribed\",\"id\":15819975,\"actor\":{\"url\":\"https://api.github.com/users/jacquev6\",\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"login\":\"jacquev6\",\"id\":327146}}\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4994'), ('content-length', '1384'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"fefecab09e7355d4ef9875677c2631da\"'), ('date', 'Sun, 27 May 2012 07:32:56 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues/events/16348656\",\"issue\":{\"updated_at\":\"2012-05-27T07:27:51Z\",\"body\":\"Body created by PyGithub\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues/30\",\"comments\":0,\"milestone\":null,\"number\":30,\"assignee\":null,\"closed_at\":null,\"title\":\"Issue also created by PyGithub\",\"labels\":[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}],\"created_at\":\"2012-05-27T05:40:15Z\",\"state\":\"open\",\"user\":{\"url\":\"https://api.github.com/users/jacquev6\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"login\":\"jacquev6\",\"id\":327146,\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\"},\"id\":4769659,\"pull_request\":{\"patch_url\":null,\"diff_url\":null,\"html_url\":null},\"html_url\":\"https://github.com/jacquev6/PyGithub/issues/30\"},\"commit_id\":\"ed866fc43833802ab553e5ff8581c81bb00dd433\",\"created_at\":\"2012-05-27T07:29:25Z\",\"event\":\"referenced\",\"id\":16348656,\"actor\":{\"url\":\"https://api.github.com/users/jacquev6\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"login\":\"jacquev6\",\"id\":327146,\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\"}}\n "}] + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/comments/3630301 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4873'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '8be19071-cb1a-414d-8310-a325dcbb0ff4'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '1391'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 06 Sep 2013 12:51:22 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"654d1a29abe3a61b096e8bffbc61c162"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:05:34 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378482241')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/comments/3630301","html_url":"https://github.com/jacquev6/PyGithub/commit/4aadfff21cdd2d2566b0e4bd7309c233b5f4ae23#commitcomment-3630301","id":3630301,"user":{"login":"jacquev6","id":327146,"avatar_url":"https://2.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"4aadfff21cdd2d2566b0e4bd7309c233b5f4ae23","created_at":"2013-07-14T17:26:29Z","updated_at":"2013-07-14T17:26:29Z","body":"Comment created for PyGithub"} + +https +GET +status.github.com +443 +/api/status.json +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '55'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('connection', 'keep-alive'), ('date', 'Fri, 06 Sep 2013 15:05:40 GMT'), ('content-type', 'application/json;charset=utf-8')] +{"status":"good","last_updated":"2013-09-06T15:05:34Z"} + +https +GET +status.github.com +443 +/api/last-message.json +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '93'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('connection', 'keep-alive'), ('date', 'Fri, 06 Sep 2013 15:05:41 GMT'), ('content-type', 'application/json;charset=utf-8')] +{"status":"good","body":"Everything operating normally.","created_on":"2013-09-01T15:41:46Z"} + +https +GET +api.github.com +None +/rate_limit +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4873'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '7d8f5ceb-ff02-47d5-a6c5-bdc47a1b1306'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('content-length', '59'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('cache-control', 'no-cache'), ('date', 'Fri, 06 Sep 2013 15:05:42 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378482241')] +{"rate":{"limit":5000,"remaining":4873,"reset":1378482241}} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/hooks +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4872'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '91eb21a9-7965-4af5-b6ff-95dc600d32e1'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '464'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 06 Sep 2013 12:41:06 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"f7b3dbaaca94c0219f23e9021e78506f"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:05:43 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378482241')] +[{"url":"https://api.github.com/repos/jacquev6/PyGithub/hooks/423574","test_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks/423574/test","id":423574,"name":"travis","active":true,"events":["push","pull_request","issue_comment","public","member"],"config":{"domain":"","token":"pJdnhcDq3dQ9Cr1J1znQ","user":"jacquev6"},"last_response":{"code":200,"status":"active","message":"OK"},"updated_at":"2013-09-06T12:41:06Z","created_at":"2012-09-16T07:14:29Z"}] + +https +GET +api.github.com +None +/hooks +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4871'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '609aaebd-8356-4b3a-82cf-c796a9475c3b'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '28297'), ('server', 'GitHub.com'), ('last-modified', 'Wed, 04 Sep 2013 18:03:57 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"678dd8e392d70d3a284c3d47221ec6f0"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:05:45 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378482241')] +[{"name":"activecollab","events":["push"],"supported_events":["push"],"schema":[["string","url"],["string","token"],["string","project_id"],["string","milestone_id"],["string","category_id"]]},{"name":"acunote","events":["push"],"supported_events":["push"],"schema":[["string","token"]]},{"name":"agilebench","events":["push"],"supported_events":["push"],"schema":[["string","token"],["string","project_id"]]},{"name":"agilezen","events":["push"],"supported_events":["push"],"schema":[["string","api_key"],["string","project_id"],["string","branches"]]},{"name":"amazonsns","events":["push"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","aws_key"],["string","aws_secret"],["string","sns_topic"],["string","sqs_queue"],["password","aws_secret"]]},{"name":"apiary","events":["push"],"supported_events":["push"],"schema":[["string","branch"],["string","domain"]]},{"name":"apoio","events":["issues"],"supported_events":["issues"],"schema":[["string","subdomain"],["string","token"]]},{"name":"appharbor","events":["push"],"supported_events":["push"],"schema":[["string","application_slug"],["string","token"]]},{"name":"apropos","events":["commit_comment","issues","issue_comment","pull_request","push"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","project_id"]]},{"name":"asana","events":["push"],"supported_events":["push"],"schema":[["string","auth_token"],["string","restrict_to_branch"],["boolean","restrict_to_last_commit"]]},{"name":"backlog","events":["push"],"supported_events":["push"],"schema":[["string","api_url"],["string","user_id"],["password","password"]]},{"name":"bamboo","events":["push"],"supported_events":["push"],"schema":[["string","base_url"],["string","build_key"],["string","username"],["password","password"]]},{"name":"basecamp","events":["push"],"supported_events":["push"],"schema":[["string","url"],["string","project"],["string","category"],["string","username"],["password","password"],["boolean","ssl"]]},{"name":"bcx","events":["push","pull_request","issues"],"supported_events":["issues","pull_request","push"],"schema":[["string","project_url"],["string","email_address"],["password","password"]]},{"name":"blimp","events":["issues","issue_comment"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","project_url"],["string","username"],["string","goal_title"],["password","api_key"]]},{"name":"boxcar","events":["push"],"supported_events":["push"],"schema":[["string","subscribers"]]},{"name":"buddycloud","events":["push"],"supported_events":["push"],"schema":[["string","buddycloud_base_api"],["string","username"],["string","password"],["string","channel"],["password","password"],["boolean","show_commit_summary"],["boolean","show_commit_detail"]]},{"name":"bugherd","events":["issues","issue_comment","push"],"supported_events":["issue_comment","issues","push"],"schema":[["string","project_key"]]},{"name":"bugly","events":["push"],"supported_events":["push"],"schema":[["string","project_id"],["string","account_name"],["string","token"]]},{"name":"bugzilla","events":["push"],"supported_events":["push"],"schema":[["string","server_url"],["string","username"],["string","integration_branch"],["password","password"],["boolean","central_repository"]]},{"name":"campfire","events":["push","pull_request","issues"],"supported_events":["gollum","issues","public","pull_request","push"],"schema":[["string","subdomain"],["string","room"],["string","token"],["string","sound"],["boolean","master_only"],["boolean","play_sound"],["boolean","long_url"]]},{"name":"cia","events":["push"],"supported_events":["push"],"schema":[["string","address"],["string","project"],["string","branch"],["string","module"],["boolean","long_url"],["boolean","full_commits"]]},{"name":"circleci","events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[]},{"name":"codeclimate","events":["push"],"supported_events":["push"],"schema":[["string","token"]]},{"name":"codeportingcsharp2java","events":["push"],"supported_events":["push"],"schema":[["string","project_name"],["string","repo_key"],["string","target_repo_key"],["string","codeporting_username"],["password","codeporting_password"],["string","github_access_token"]]},{"name":"codeship","events":["push"],"supported_events":["push"],"schema":[["string","project_uuid"]]},{"name":"coffeedocinfo","events":["push"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[]},{"name":"conductor","events":["push"],"supported_events":["push"],"schema":[["string","api_key"]]},{"name":"coop","events":["push"],"supported_events":["push"],"schema":[["string","group_id"],["string","token"]]},{"name":"copperegg","events":["push"],"supported_events":["push"],"schema":[["string","url"],["string","tag"],["boolean","master_only"],["string","api_key"]]},{"name":"cube","events":["push"],"supported_events":["push"],"schema":[["string","domain"],["string","project"],["string","token"]]},{"name":"depending","events":["push"],"supported_events":["push"],"schema":[["string","token"]]},{"name":"deployhq","events":["push"],"supported_events":["push"],"schema":[["string","deploy_hook_url"],["boolean","email_pusher"]]},{"name":"devaria","events":["push","member","public","issues","gollum"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","project_name"],["string","username"],["string","user_class_id"]]},{"name":"docker","events":["push"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[]},{"name":"ducksboard","events":["push","issues","fork","watch"],"supported_events":["fork","issues","push","watch"],"schema":[["string","webhook_key"]]},{"name":"email","events":["push"],"supported_events":["public","push"],"schema":[["string","address"],["password","secret"],["boolean","send_from_author"]]},{"name":"firebase","events":["push"],"supported_events":["push"],"schema":[["string","firebase"],["string","secret"]]},{"name":"fisheye","events":["push"],"supported_events":["push"],"schema":[["string","url_base"],["string","token"],["string","repository_name"]]},{"name":"flowdock","events":["commit_comment","gollum","issues","issue_comment","pull_request","push"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","token"]]},{"name":"fogbugz","events":["push"],"supported_events":["push"],"schema":[["string","cvssubmit_url"],["string","fb_repoid"],["string","fb_version"]]},{"name":"freckle","events":["push"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","subdomain"],["string","project"],["string","token"]]},{"name":"friendfeed","events":["push"],"supported_events":["push"],"schema":[["string","nickname"],["string","remotekey"]]},{"name":"gemini","events":["push"],"supported_events":["push"],"schema":[["string","server_url"],["string","api_key"]]},{"name":"gemnasium","events":["push"],"supported_events":["push"],"schema":[["string","user"],["string","token"]]},{"name":"geocommit","events":["push"],"supported_events":["push"],"schema":[]},{"name":"getlocalization","events":["push"],"supported_events":["push"],"schema":[["string","project_name"],["string","project_token"]]},{"name":"gitlive","events":["push"],"supported_events":["push"],"schema":[]},{"name":"grmble","events":["push"],"supported_events":["push"],"schema":[["string","room_api_url"],["string","token"]]},{"name":"grouptalent","events":["push"],"supported_events":["push"],"schema":[["string","token"]]},{"name":"grove","events":["commit_comment","gollum","issues","issue_comment","pull_request","push"],"supported_events":["push"],"schema":[["string","channel_token"]]},{"name":"habitualist","events":["push"],"supported_events":["push"],"schema":[]},{"name":"hakiri","events":["push"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","token"],["string","project_id"]]},{"name":"hall","events":["commit_comment","gollum","issues","issue_comment","pull_request","push"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","room_token"]]},{"name":"harvest","events":["push"],"supported_events":["push"],"schema":[["string","subdomain"],["string","username"],["password","password"],["boolean","ssl"]]},{"name":"hipchat","events":["commit_comment","download","fork","fork_apply","gollum","issues","issue_comment","member","public","pull_request","push","watch"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","auth_token"],["string","room"],["string","restrict_to_branch"],["boolean","notify"],["boolean","quiet_fork"],["boolean","quiet_watch"],["boolean","quiet_comments"]]},{"name":"hostedgraphite","events":["push"],"supported_events":["push"],"schema":[["string","api_key"]]},{"name":"hubcap","events":["push"],"supported_events":["push"],"schema":[]},{"name":"hubci","events":["push"],"supported_events":["push"],"schema":[["string","token"]]},{"name":"humbug","events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","push","team_add","watch","pull_request_review_comment","status"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","email"],["string","api_key"],["string","stream"],["string","branches"]]},{"name":"icescrum","events":["push"],"supported_events":["push"],"schema":[["string","base_url"],["string","project_key"],["string","username"],["password","password"]]},{"name":"irc","events":["push","pull_request"],"supported_events":["commit_comment","issue_comment","issues","pull_request","pull_request_review_comment","push"],"schema":[["string","server"],["string","port"],["string","room"],["string","nick"],["string","branch_regexes"],["string","nickserv_password"],["password","password"],["boolean","ssl"],["boolean","message_without_join"],["boolean","no_colors"],["boolean","long_url"],["boolean","notice"]]},{"name":"irker","events":["push"],"supported_events":["push"],"schema":[["string","address"],["string","project"],["string","branch"],["string","module"],["string","channels"],["boolean","long_url"],["boolean","color"],["boolean","full_commits"]]},{"name":"ironmq","events":["commit_comment","download","fork","fork_apply","gollum","issues","issue_comment","member","public","pull_request","push","watch"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","token"],["string","project_id"],["string","queue_name"]]},{"name":"ironworker","events":["commit_comment","download","fork","fork_apply","gollum","issues","issue_comment","member","public","pull_request","push","watch"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","token"],["string","project_id"],["string","queue_name"]]},{"name":"jabber","events":["push"],"supported_events":["push"],"schema":[["string","user"]]},{"name":"jaconda","events":["commit_comment","download","fork","fork_apply","gollum","issues","issue_comment","member","public","pull_request","push","watch"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","subdomain"],["string","room_id"],["string","room_token"],["boolean","digest"]]},{"name":"jeapie","events":["push","pull_request","commit_comment"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","token"]]},{"name":"jenkins","events":["push"],"supported_events":["push"],"schema":[["string","jenkins_hook_url"]]},{"name":"jenkinsgit","events":["push"],"supported_events":["push"],"schema":[["string","jenkins_url"]]},{"name":"jira","events":["push"],"supported_events":["push"],"schema":[["string","server_url"],["string","api_version"],["string","username"],["password","password"]]},{"name":"jqueryplugins","events":["push"],"supported_events":["push"],"schema":[]},{"name":"kanbanery","events":["push"],"supported_events":["push"],"schema":[["string","project_id"],["string","project_token"]]},{"name":"kickoff","events":["push"],"supported_events":["push"],"schema":[["string","project_id"],["string","project_token"]]},{"name":"leanto","events":["push"],"supported_events":["push"],"schema":[["string","token"]]},{"name":"lechat","events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","webhook_url"]]},{"name":"lighthouse","events":["push"],"supported_events":["push"],"schema":[["string","subdomain"],["string","project_id"],["string","token"],["boolean","private"],["boolean","send_only_ticket_commits"]]},{"name":"lingohub","events":["push"],"supported_events":["push"],"schema":[["string","project_token"]]},{"name":"loggly","events":["push"],"supported_events":["push"],"schema":[["string","input_token"]]},{"name":"mantisbt","events":["push"],"supported_events":["push"],"schema":[["string","url"],["string","api_key"]]},{"name":"masterbranch","events":["push"],"supported_events":["push"],"schema":[]},{"name":"mqttpub","events":["push"],"supported_events":["push"],"schema":[["string","broker"],["string","port"],["string","topic"],["string","clientid"],["string","user"],["password","pass"],["boolean","retain"]]},{"name":"nma","events":["push"],"supported_events":["push"],"schema":[["string","apikey"]]},{"name":"nodejitsu","events":["push"],"supported_events":["push"],"schema":[["string","username"],["password","password"],["string","branch"],["string","endpoint"],["boolean","email_success_deploys"],["boolean","email_errors"]]},{"name":"notifo","events":["push"],"supported_events":["push"],"schema":[["string","subscribers"]]},{"name":"ontime","events":["push"],"supported_events":["push"],"schema":[["string","ontime_url"],["string","api_key"]]},{"name":"pachube","events":["push"],"supported_events":["push"],"schema":[["string","api_key"],["string","feed_id"],["string","track_branch"]]},{"name":"packagist","events":["push"],"supported_events":["push"],"schema":[["string","user"],["string","token"],["string","domain"]]},{"name":"phraseapp","events":["push"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","auth_token"]]},{"name":"pivotaltracker","events":["push"],"supported_events":["push"],"schema":[["string","token"],["string","branch"],["string","endpoint"]]},{"name":"planbox","events":["push"],"supported_events":["push"],"schema":[["string","token"]]},{"name":"planio","events":["push"],"supported_events":["push"],"schema":[["string","address"],["string","project"],["string","api_key"]]},{"name":"prowl","events":["push"],"supported_events":["push"],"schema":[["string","apikey"]]},{"name":"puppetlinter","events":["push"],"supported_events":["push"],"schema":[]},{"name":"pushalot","events":["push"],"supported_events":["push"],"schema":[["string","authorization_token"]]},{"name":"pushover","events":["push"],"supported_events":["push"],"schema":[["string","user_key"],["string","device_name"]]},{"name":"pythonpackages","events":["push"],"supported_events":["push"],"schema":[]},{"name":"railsbp","events":["push"],"supported_events":["push"],"schema":[["string","railsbp_url"],["string","token"]]},{"name":"railsbrakeman","events":["push"],"supported_events":["push"],"schema":[["string","rails_brakeman_url"],["string","token"]]},{"name":"rally","events":["push"],"supported_events":["push"],"schema":[["string","server"],["string","username"],["string","workspace"],["string","repository"],["password","password"]]},{"name":"rapidpush","events":["push"],"supported_events":["push"],"schema":[["string","apikey"]]},{"name":"rationaljazzhub","events":["push"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","username"],["password","password"],["string","override_server_url"]]},{"name":"rationalteamconcert","events":["push"],"supported_events":["push"],"schema":[["string","server_url"],["string","username"],["string","project_area_uuid"],["password","password"],["boolean","basic_authentication"],["boolean","no_verify_ssl"]]},{"name":"rdocinfo","events":["push"],"supported_events":["push"],"schema":[]},{"name":"readthedocs","events":["push"],"supported_events":["push"],"schema":[]},{"name":"redmine","events":["push"],"supported_events":["push"],"schema":[["string","address"],["string","project"],["string","api_key"],["boolean","fetch_commits"],["boolean","update_redmine_issues_about_commits"]]},{"name":"rubyforge","events":["push"],"supported_events":["push"],"schema":[["string","groupid"],["string","username"],["password","password"]]},{"name":"scrumdo","events":["push"],"supported_events":["push"],"schema":[["string","username"],["string","project_slug"],["password","password"]]},{"name":"shiningpanda","events":["push"],"supported_events":["push"],"schema":[["string","workspace"],["string","job"],["string","token"],["string","branches"],["string","parameters"]]},{"name":"sifter","events":["push"],"supported_events":["push"],"schema":[["string","subdomain"],["string","token"]]},{"name":"simperium","events":["push","issues","issue_comment","commit_comment","pull_request","pull_request_review_comment","watch","fork","fork_apply","member","public","team_add","status"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","app_id"],["string","token"],["string","bucket"]]},{"name":"slatebox","events":["push"],"supported_events":["push"],"schema":[["string","app_id"],["string","token"]]},{"name":"snowyevening","events":["push"],"supported_events":["push"],"schema":[["string","project"],["string","api_key"]]},{"name":"socialcast","events":["push"],"supported_events":["push"],"schema":[["string","api_domain"],["string","group_id"],["string","username"],["password","password"]]},{"name":"softlayermessaging","events":["push"],"supported_events":["push"],"schema":[["string","account"],["string","user"],["string","name"],["password","key"],["boolean","topic"]]},{"name":"sourcemint","events":["push"],"supported_events":["push"],"schema":[]},{"name":"splendidbacon","events":["push"],"supported_events":["push"],"schema":[["string","project_id"],["string","token"]]},{"name":"sprintly","events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","push","team_add","watch","pull_request_review_comment","status"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","email"],["string","api_key"],["string","product_id"]]},{"name":"sqsqueue","events":["push"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","aws_access_key"],["string","sqs_queue_name"],["password","aws_secret_key"]]},{"name":"stackmob","events":["push"],"supported_events":["push"],"schema":[["string","token"]]},{"name":"statusnet","events":["push"],"supported_events":["push"],"schema":[["string","server"],["string","username"],["password","password"],["boolean","digest"]]},{"name":"talker","events":["push"],"supported_events":["issues","pull_request","push"],"schema":[["string","url"],["string","token"],["boolean","digest"]]},{"name":"targetprocess","events":["push"],"supported_events":["push"],"schema":[["string","base_url"],["string","username"],["password","password"]]},{"name":"tddium","events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","token"],["string","override_url"]]},{"name":"teamcity","events":["push"],"supported_events":["push"],"schema":[["string","base_url"],["string","build_type_id"],["string","username"],["string","branches"],["password","password"]]},{"name":"tender","events":["issues"],"supported_events":["issues","pull_request"],"schema":[["string","domain"],["string","token"]]},{"name":"tenxer","events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[]},{"name":"testpilot","events":["push"],"supported_events":["push"],"schema":[["string","token"]]},{"name":"toggl","events":["push"],"supported_events":["push"],"schema":[["string","project"],["string","api_token"]]},{"name":"trac","events":["push"],"supported_events":["push"],"schema":[["string","url"],["string","token"]]},{"name":"trajectory","events":["push"],"supported_events":["pull_request","push"],"schema":[["string","api_key"]]},{"name":"travis","events":["push","pull_request","issue_comment","public","member"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","user"],["password","token"],["string","domain"]]},{"name":"trello","events":["push","pull_request"],"supported_events":["pull_request","push"],"schema":[["string","push_list_id"],["string","pull_request_list_id"],["string","ignore_regex"],["boolean","master_only"],["password","consumer_token"]]},{"name":"twilio","events":["push"],"supported_events":["push"],"schema":[["string","account_sid"],["string","from_phone"],["string","to_phone"],["boolean","master_only"],["password","auth_token"]]},{"name":"twitter","events":["push"],"supported_events":["push"],"schema":[["string","token"],["string","secret"],["boolean","digest"],["boolean","short_format"]]},{"name":"unfuddle","events":["push"],"supported_events":["push"],"schema":[["string","subdomain"],["string","repo_id"],["string","username"],["password","password"],["boolean","httponly"]]},{"name":"web","events":["push"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","url"],["string","secret"],["string","content_type"],["string","ssl_version"],["boolean","insecure_ssl"]]},{"name":"weblate","events":["push"],"supported_events":["push"],"schema":[["string","url"]]},{"name":"webtranslateit","events":["push"],"supported_events":["push"],"schema":[["string","api_key"]]},{"name":"yammer","events":["push","commit_comment","pull_request","pull_request_review_comment","public"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","token"]]},{"name":"youtrack","events":["push"],"supported_events":["push"],"schema":[["string","base_url"],["string","committers"],["string","username"],["string","branch"],["password","password"]]},{"name":"zendesk","events":["commit_comment","issues","issue_comment","pull_request","push"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"],"schema":[["string","subdomain"],["string","username"],["password","password"]]},{"name":"zohoprojects","events":["push"],"supported_events":["push"],"schema":[["string","project_id"],["string","token"]]}] + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/compare/master...develop +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4870'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', 'b385a4bc-89bd-418f-b2ee-948a4ed67670'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '711256'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 06 Sep 2013 09:04:41 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"ff2ab76c56b865233dfb98f5804276b6"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:05:51 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378482241')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/compare/master...develop","html_url":"https://github.com/jacquev6/PyGithub/compare/master...develop","permalink_url":"https://github.com/jacquev6/PyGithub/compare/jacquev6:ed781f8...jacquev6:a659749","diff_url":"https://github.com/jacquev6/PyGithub/compare/master...develop.diff","patch_url":"https://github.com/jacquev6/PyGithub/compare/master...develop.patch","base_commit":{"sha":"ed781f8b1b96e1d2a342d36ca53114ea28862fa8","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-21T16:39:22Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-21T16:39:22Z"},"message":"Fix date of 1.18.0","tree":{"sha":"e90c43164378222f04883c0f6547102df818d1ef","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/e90c43164378222f04883c0f6547102df818d1ef"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/ed781f8b1b96e1d2a342d36ca53114ea28862fa8","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ed781f8b1b96e1d2a342d36ca53114ea28862fa8","html_url":"https://github.com/jacquev6/PyGithub/commit/ed781f8b1b96e1d2a342d36ca53114ea28862fa8","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ed781f8b1b96e1d2a342d36ca53114ea28862fa8/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"2c4e3cbc24581c214f44682bfc3e7f438bae127a","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2c4e3cbc24581c214f44682bfc3e7f438bae127a","html_url":"https://github.com/jacquev6/PyGithub/commit/2c4e3cbc24581c214f44682bfc3e7f438bae127a"}]},"merge_base_commit":{"sha":"ed781f8b1b96e1d2a342d36ca53114ea28862fa8","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-21T16:39:22Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-21T16:39:22Z"},"message":"Fix date of 1.18.0","tree":{"sha":"e90c43164378222f04883c0f6547102df818d1ef","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/e90c43164378222f04883c0f6547102df818d1ef"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/ed781f8b1b96e1d2a342d36ca53114ea28862fa8","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ed781f8b1b96e1d2a342d36ca53114ea28862fa8","html_url":"https://github.com/jacquev6/PyGithub/commit/ed781f8b1b96e1d2a342d36ca53114ea28862fa8","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ed781f8b1b96e1d2a342d36ca53114ea28862fa8/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"2c4e3cbc24581c214f44682bfc3e7f438bae127a","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2c4e3cbc24581c214f44682bfc3e7f438bae127a","html_url":"https://github.com/jacquev6/PyGithub/commit/2c4e3cbc24581c214f44682bfc3e7f438bae127a"}]},"status":"ahead","ahead_by":99,"behind_by":0,"total_commits":99,"commits":[{"sha":"ea4bd8c9ad94a2e38bc272c9f9ff8cfdccea4c03","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T00:27:42Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T00:27:42Z"},"message":"Update .gitignore to ignore eproject settings and custom build batch files","tree":{"sha":"b4bf5289c36eb4f50999895cf7f1d0c8ddd26448","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/b4bf5289c36eb4f50999895cf7f1d0c8ddd26448"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/ea4bd8c9ad94a2e38bc272c9f9ff8cfdccea4c03","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ea4bd8c9ad94a2e38bc272c9f9ff8cfdccea4c03","html_url":"https://github.com/jacquev6/PyGithub/commit/ea4bd8c9ad94a2e38bc272c9f9ff8cfdccea4c03","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ea4bd8c9ad94a2e38bc272c9f9ff8cfdccea4c03/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"0a1e1fa488a7cf43016fe9ec30e5cc54dfcc7bfd","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0a1e1fa488a7cf43016fe9ec30e5cc54dfcc7bfd","html_url":"https://github.com/jacquev6/PyGithub/commit/0a1e1fa488a7cf43016fe9ec30e5cc54dfcc7bfd"}]},{"sha":"cfbe7fb0b0e8f72f8725e48a4155ab0338d9773f","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T03:21:15Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T03:21:15Z"},"message":"Change GithubObject.__init__ without breaking build.","tree":{"sha":"30c8a26c9dd4a5c68c8b15666f126f9ef3929d8f","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/30c8a26c9dd4a5c68c8b15666f126f9ef3929d8f"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/cfbe7fb0b0e8f72f8725e48a4155ab0338d9773f","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cfbe7fb0b0e8f72f8725e48a4155ab0338d9773f","html_url":"https://github.com/jacquev6/PyGithub/commit/cfbe7fb0b0e8f72f8725e48a4155ab0338d9773f","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cfbe7fb0b0e8f72f8725e48a4155ab0338d9773f/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"ea4bd8c9ad94a2e38bc272c9f9ff8cfdccea4c03","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ea4bd8c9ad94a2e38bc272c9f9ff8cfdccea4c03","html_url":"https://github.com/jacquev6/PyGithub/commit/ea4bd8c9ad94a2e38bc272c9f9ff8cfdccea4c03"}]},{"sha":"0bc138b490b0b9d7ebc5e539547b88e062dd127d","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T04:32:41Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T04:32:41Z"},"message":"Change NonCompletableGithubObject without breaking build.","tree":{"sha":"05c4e4c51ed7f77adf8f96b1ef6262bd004822db","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/05c4e4c51ed7f77adf8f96b1ef6262bd004822db"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/0bc138b490b0b9d7ebc5e539547b88e062dd127d","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0bc138b490b0b9d7ebc5e539547b88e062dd127d","html_url":"https://github.com/jacquev6/PyGithub/commit/0bc138b490b0b9d7ebc5e539547b88e062dd127d","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0bc138b490b0b9d7ebc5e539547b88e062dd127d/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"cfbe7fb0b0e8f72f8725e48a4155ab0338d9773f","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cfbe7fb0b0e8f72f8725e48a4155ab0338d9773f","html_url":"https://github.com/jacquev6/PyGithub/commit/cfbe7fb0b0e8f72f8725e48a4155ab0338d9773f"}]},{"sha":"b12c4b38c55ad9649541668950a01e6b3940a1bc","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T05:05:41Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T05:05:41Z"},"message":"Update Tag.py","tree":{"sha":"61648b068707a2dd5d7cc00832acc5eb76be102e","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/61648b068707a2dd5d7cc00832acc5eb76be102e"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/b12c4b38c55ad9649541668950a01e6b3940a1bc","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b12c4b38c55ad9649541668950a01e6b3940a1bc","html_url":"https://github.com/jacquev6/PyGithub/commit/b12c4b38c55ad9649541668950a01e6b3940a1bc","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b12c4b38c55ad9649541668950a01e6b3940a1bc/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"0bc138b490b0b9d7ebc5e539547b88e062dd127d","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0bc138b490b0b9d7ebc5e539547b88e062dd127d","html_url":"https://github.com/jacquev6/PyGithub/commit/0bc138b490b0b9d7ebc5e539547b88e062dd127d"}]},{"sha":"9f6562cb625d30b08b053da44a059ace70ed366e","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T05:07:23Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T05:07:23Z"},"message":"Update CommitStatus.py","tree":{"sha":"9d219ca7890099f4b9865927af6d8444557d5dd9","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/9d219ca7890099f4b9865927af6d8444557d5dd9"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/9f6562cb625d30b08b053da44a059ace70ed366e","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/9f6562cb625d30b08b053da44a059ace70ed366e","html_url":"https://github.com/jacquev6/PyGithub/commit/9f6562cb625d30b08b053da44a059ace70ed366e","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/9f6562cb625d30b08b053da44a059ace70ed366e/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"b12c4b38c55ad9649541668950a01e6b3940a1bc","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b12c4b38c55ad9649541668950a01e6b3940a1bc","html_url":"https://github.com/jacquev6/PyGithub/commit/b12c4b38c55ad9649541668950a01e6b3940a1bc"}]},{"sha":"e8e8d174fb65249dd6aa41d3ec7993223dc83af4","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T05:08:48Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T05:08:48Z"},"message":"Update Event.py","tree":{"sha":"965865c144a91581cd5560a6853ac7d244e8621d","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/965865c144a91581cd5560a6853ac7d244e8621d"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/e8e8d174fb65249dd6aa41d3ec7993223dc83af4","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e8e8d174fb65249dd6aa41d3ec7993223dc83af4","html_url":"https://github.com/jacquev6/PyGithub/commit/e8e8d174fb65249dd6aa41d3ec7993223dc83af4","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e8e8d174fb65249dd6aa41d3ec7993223dc83af4/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"9f6562cb625d30b08b053da44a059ace70ed366e","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/9f6562cb625d30b08b053da44a059ace70ed366e","html_url":"https://github.com/jacquev6/PyGithub/commit/9f6562cb625d30b08b053da44a059ace70ed366e"}]},{"sha":"6943f6da7f84b05b8eae4555dbc598df2fe5ec01","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T05:10:32Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T05:10:32Z"},"message":"Update Branch.py","tree":{"sha":"69f9bb6bfbaa5a78bf94976b71fb778f6e105c17","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/69f9bb6bfbaa5a78bf94976b71fb778f6e105c17"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/6943f6da7f84b05b8eae4555dbc598df2fe5ec01","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6943f6da7f84b05b8eae4555dbc598df2fe5ec01","html_url":"https://github.com/jacquev6/PyGithub/commit/6943f6da7f84b05b8eae4555dbc598df2fe5ec01","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6943f6da7f84b05b8eae4555dbc598df2fe5ec01/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"e8e8d174fb65249dd6aa41d3ec7993223dc83af4","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e8e8d174fb65249dd6aa41d3ec7993223dc83af4","html_url":"https://github.com/jacquev6/PyGithub/commit/e8e8d174fb65249dd6aa41d3ec7993223dc83af4"}]},{"sha":"bb56857b4d5e9d85f26815a3da4c69f6bc718fbd","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T05:15:25Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T05:15:25Z"},"message":"Update File.py","tree":{"sha":"1435b24b2da7c0403801e09ea0e9bf9cc1660eac","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/1435b24b2da7c0403801e09ea0e9bf9cc1660eac"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/bb56857b4d5e9d85f26815a3da4c69f6bc718fbd","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/bb56857b4d5e9d85f26815a3da4c69f6bc718fbd","html_url":"https://github.com/jacquev6/PyGithub/commit/bb56857b4d5e9d85f26815a3da4c69f6bc718fbd","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/bb56857b4d5e9d85f26815a3da4c69f6bc718fbd/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"6943f6da7f84b05b8eae4555dbc598df2fe5ec01","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6943f6da7f84b05b8eae4555dbc598df2fe5ec01","html_url":"https://github.com/jacquev6/PyGithub/commit/6943f6da7f84b05b8eae4555dbc598df2fe5ec01"}]},{"sha":"c2dd9452eabc70bf88fc4769e48df63c0de8ce8a","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T05:18:29Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T05:18:29Z"},"message":"Update Gist.py","tree":{"sha":"002b4962bc4386c46823d1f2f36c7fad4e8aa2b4","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/002b4962bc4386c46823d1f2f36c7fad4e8aa2b4"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/c2dd9452eabc70bf88fc4769e48df63c0de8ce8a","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c2dd9452eabc70bf88fc4769e48df63c0de8ce8a","html_url":"https://github.com/jacquev6/PyGithub/commit/c2dd9452eabc70bf88fc4769e48df63c0de8ce8a","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c2dd9452eabc70bf88fc4769e48df63c0de8ce8a/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"bb56857b4d5e9d85f26815a3da4c69f6bc718fbd","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/bb56857b4d5e9d85f26815a3da4c69f6bc718fbd","html_url":"https://github.com/jacquev6/PyGithub/commit/bb56857b4d5e9d85f26815a3da4c69f6bc718fbd"}]},{"sha":"4f1e05200d35e951fb52730c3d783c2942836695","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T05:21:49Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T05:21:49Z"},"message":"Update GitAuthor.py","tree":{"sha":"c5ad338858b03d34b38b1ca8a8ea8578d5a64da5","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/c5ad338858b03d34b38b1ca8a8ea8578d5a64da5"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/4f1e05200d35e951fb52730c3d783c2942836695","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4f1e05200d35e951fb52730c3d783c2942836695","html_url":"https://github.com/jacquev6/PyGithub/commit/4f1e05200d35e951fb52730c3d783c2942836695","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4f1e05200d35e951fb52730c3d783c2942836695/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"c2dd9452eabc70bf88fc4769e48df63c0de8ce8a","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c2dd9452eabc70bf88fc4769e48df63c0de8ce8a","html_url":"https://github.com/jacquev6/PyGithub/commit/c2dd9452eabc70bf88fc4769e48df63c0de8ce8a"}]},{"sha":"0879cbb6ff5f349bc8f867dace06801cf8f04136","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T05:23:21Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T05:23:21Z"},"message":"Update GitignoreTemplate.py","tree":{"sha":"eac0b02fc4be8c34681d548624dec5d93b0875e4","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/eac0b02fc4be8c34681d548624dec5d93b0875e4"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/0879cbb6ff5f349bc8f867dace06801cf8f04136","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0879cbb6ff5f349bc8f867dace06801cf8f04136","html_url":"https://github.com/jacquev6/PyGithub/commit/0879cbb6ff5f349bc8f867dace06801cf8f04136","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0879cbb6ff5f349bc8f867dace06801cf8f04136/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"4f1e05200d35e951fb52730c3d783c2942836695","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4f1e05200d35e951fb52730c3d783c2942836695","html_url":"https://github.com/jacquev6/PyGithub/commit/4f1e05200d35e951fb52730c3d783c2942836695"}]},{"sha":"274ab70f874098d1a0385e636748f0651b739e62","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T05:26:08Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T05:26:08Z"},"message":"Update GitObject.py","tree":{"sha":"596c0e549efc2279f7343db4d1abee3eb70955c7","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/596c0e549efc2279f7343db4d1abee3eb70955c7"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/274ab70f874098d1a0385e636748f0651b739e62","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/274ab70f874098d1a0385e636748f0651b739e62","html_url":"https://github.com/jacquev6/PyGithub/commit/274ab70f874098d1a0385e636748f0651b739e62","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/274ab70f874098d1a0385e636748f0651b739e62/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"0879cbb6ff5f349bc8f867dace06801cf8f04136","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0879cbb6ff5f349bc8f867dace06801cf8f04136","html_url":"https://github.com/jacquev6/PyGithub/commit/0879cbb6ff5f349bc8f867dace06801cf8f04136"}]},{"sha":"02435f3a9f5f321f5ff3d5c1f4bcb9a10fc5e290","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T05:30:39Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T05:30:39Z"},"message":"Update GitTree.py","tree":{"sha":"245148f865501a2ad0614136baef4ea6c2341992","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/245148f865501a2ad0614136baef4ea6c2341992"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/02435f3a9f5f321f5ff3d5c1f4bcb9a10fc5e290","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/02435f3a9f5f321f5ff3d5c1f4bcb9a10fc5e290","html_url":"https://github.com/jacquev6/PyGithub/commit/02435f3a9f5f321f5ff3d5c1f4bcb9a10fc5e290","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/02435f3a9f5f321f5ff3d5c1f4bcb9a10fc5e290/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"274ab70f874098d1a0385e636748f0651b739e62","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/274ab70f874098d1a0385e636748f0651b739e62","html_url":"https://github.com/jacquev6/PyGithub/commit/274ab70f874098d1a0385e636748f0651b739e62"}]},{"sha":"ac1585ee13f13cfa20fd79a78c4643de815607fd","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T05:59:08Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T05:59:08Z"},"message":"Update HookDescription.py.","tree":{"sha":"6509b30ec9b0ff54edde6277bf408585b68e464b","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/6509b30ec9b0ff54edde6277bf408585b68e464b"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/ac1585ee13f13cfa20fd79a78c4643de815607fd","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ac1585ee13f13cfa20fd79a78c4643de815607fd","html_url":"https://github.com/jacquev6/PyGithub/commit/ac1585ee13f13cfa20fd79a78c4643de815607fd","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ac1585ee13f13cfa20fd79a78c4643de815607fd/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"02435f3a9f5f321f5ff3d5c1f4bcb9a10fc5e290","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/02435f3a9f5f321f5ff3d5c1f4bcb9a10fc5e290","html_url":"https://github.com/jacquev6/PyGithub/commit/02435f3a9f5f321f5ff3d5c1f4bcb9a10fc5e290"}]},{"sha":"d6170e36de261f8107cdc40e1e6e3c91bac0eb3d","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T06:03:57Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T06:03:57Z"},"message":"Update IssuePullRequest.py","tree":{"sha":"a5ea8a1ed6a03152d916d4c066ee2394ed4a4f97","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/a5ea8a1ed6a03152d916d4c066ee2394ed4a4f97"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/d6170e36de261f8107cdc40e1e6e3c91bac0eb3d","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/d6170e36de261f8107cdc40e1e6e3c91bac0eb3d","html_url":"https://github.com/jacquev6/PyGithub/commit/d6170e36de261f8107cdc40e1e6e3c91bac0eb3d","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/d6170e36de261f8107cdc40e1e6e3c91bac0eb3d/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"ac1585ee13f13cfa20fd79a78c4643de815607fd","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ac1585ee13f13cfa20fd79a78c4643de815607fd","html_url":"https://github.com/jacquev6/PyGithub/commit/ac1585ee13f13cfa20fd79a78c4643de815607fd"}]},{"sha":"12387505e2fbf25ceae63f169b13d57d86b80282","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T06:05:10Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T06:05:10Z"},"message":"Update Notification.py","tree":{"sha":"2a05533d50e9e0b9173fa9030bad2259f9a8d24b","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/2a05533d50e9e0b9173fa9030bad2259f9a8d24b"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/12387505e2fbf25ceae63f169b13d57d86b80282","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/12387505e2fbf25ceae63f169b13d57d86b80282","html_url":"https://github.com/jacquev6/PyGithub/commit/12387505e2fbf25ceae63f169b13d57d86b80282","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/12387505e2fbf25ceae63f169b13d57d86b80282/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"d6170e36de261f8107cdc40e1e6e3c91bac0eb3d","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/d6170e36de261f8107cdc40e1e6e3c91bac0eb3d","html_url":"https://github.com/jacquev6/PyGithub/commit/d6170e36de261f8107cdc40e1e6e3c91bac0eb3d"}]},{"sha":"6e11aa9cf041be25691971476bc474facb1bd1f1","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T06:07:10Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T06:07:10Z"},"message":"Update Permissions.py","tree":{"sha":"1653ca5e502dacc579e8489c1ff967970e95a68f","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/1653ca5e502dacc579e8489c1ff967970e95a68f"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/6e11aa9cf041be25691971476bc474facb1bd1f1","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6e11aa9cf041be25691971476bc474facb1bd1f1","html_url":"https://github.com/jacquev6/PyGithub/commit/6e11aa9cf041be25691971476bc474facb1bd1f1","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6e11aa9cf041be25691971476bc474facb1bd1f1/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"12387505e2fbf25ceae63f169b13d57d86b80282","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/12387505e2fbf25ceae63f169b13d57d86b80282","html_url":"https://github.com/jacquev6/PyGithub/commit/12387505e2fbf25ceae63f169b13d57d86b80282"}]},{"sha":"dcb6874745b2e0466017f94be745ba35b72a3748","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T06:09:11Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T06:09:11Z"},"message":"Fix CommitStats.py","tree":{"sha":"9191d147b43f13eee33b585441a4573028534a02","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/9191d147b43f13eee33b585441a4573028534a02"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/dcb6874745b2e0466017f94be745ba35b72a3748","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/dcb6874745b2e0466017f94be745ba35b72a3748","html_url":"https://github.com/jacquev6/PyGithub/commit/dcb6874745b2e0466017f94be745ba35b72a3748","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/dcb6874745b2e0466017f94be745ba35b72a3748/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"6e11aa9cf041be25691971476bc474facb1bd1f1","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6e11aa9cf041be25691971476bc474facb1bd1f1","html_url":"https://github.com/jacquev6/PyGithub/commit/6e11aa9cf041be25691971476bc474facb1bd1f1"}]},{"sha":"deb0514b5e7364b307a611797681da8ddf6db5c1","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T06:10:37Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T06:10:37Z"},"message":"Update Hook.py","tree":{"sha":"2a46cd5f6c33398d1b347912bcdc596fa0b66d0d","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/2a46cd5f6c33398d1b347912bcdc596fa0b66d0d"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/deb0514b5e7364b307a611797681da8ddf6db5c1","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/deb0514b5e7364b307a611797681da8ddf6db5c1","html_url":"https://github.com/jacquev6/PyGithub/commit/deb0514b5e7364b307a611797681da8ddf6db5c1","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/deb0514b5e7364b307a611797681da8ddf6db5c1/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"dcb6874745b2e0466017f94be745ba35b72a3748","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/dcb6874745b2e0466017f94be745ba35b72a3748","html_url":"https://github.com/jacquev6/PyGithub/commit/dcb6874745b2e0466017f94be745ba35b72a3748"}]},{"sha":"c7aeaddfa8897ed9a23764bbb4beda29403ab413","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T06:13:14Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T06:13:14Z"},"message":"Fix PullRequestMergeStatus.py","tree":{"sha":"e4f7ae5aa275ca50cbc0e52dcb49ad224355f0af","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/e4f7ae5aa275ca50cbc0e52dcb49ad224355f0af"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/c7aeaddfa8897ed9a23764bbb4beda29403ab413","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c7aeaddfa8897ed9a23764bbb4beda29403ab413","html_url":"https://github.com/jacquev6/PyGithub/commit/c7aeaddfa8897ed9a23764bbb4beda29403ab413","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c7aeaddfa8897ed9a23764bbb4beda29403ab413/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"deb0514b5e7364b307a611797681da8ddf6db5c1","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/deb0514b5e7364b307a611797681da8ddf6db5c1","html_url":"https://github.com/jacquev6/PyGithub/commit/deb0514b5e7364b307a611797681da8ddf6db5c1"}]},{"sha":"b2c4519c06cf541ae327d80b0b1361e2698e23ae","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T06:15:09Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T06:15:09Z"},"message":"Update PulllRequestPart.py","tree":{"sha":"476f8bc503a98475a13bcf929c9af2034044be23","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/476f8bc503a98475a13bcf929c9af2034044be23"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/b2c4519c06cf541ae327d80b0b1361e2698e23ae","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b2c4519c06cf541ae327d80b0b1361e2698e23ae","html_url":"https://github.com/jacquev6/PyGithub/commit/b2c4519c06cf541ae327d80b0b1361e2698e23ae","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b2c4519c06cf541ae327d80b0b1361e2698e23ae/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"c7aeaddfa8897ed9a23764bbb4beda29403ab413","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c7aeaddfa8897ed9a23764bbb4beda29403ab413","html_url":"https://github.com/jacquev6/PyGithub/commit/c7aeaddfa8897ed9a23764bbb4beda29403ab413"}]},{"sha":"4a1a1d406896ebd96315fcf9092ab68dfb7a7194","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T06:19:31Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T06:19:31Z"},"message":"Update Plan.py","tree":{"sha":"68e82c7745d78fca9ac29501be72a3613f95876a","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/68e82c7745d78fca9ac29501be72a3613f95876a"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/4a1a1d406896ebd96315fcf9092ab68dfb7a7194","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4a1a1d406896ebd96315fcf9092ab68dfb7a7194","html_url":"https://github.com/jacquev6/PyGithub/commit/4a1a1d406896ebd96315fcf9092ab68dfb7a7194","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4a1a1d406896ebd96315fcf9092ab68dfb7a7194/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"b2c4519c06cf541ae327d80b0b1361e2698e23ae","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b2c4519c06cf541ae327d80b0b1361e2698e23ae","html_url":"https://github.com/jacquev6/PyGithub/commit/b2c4519c06cf541ae327d80b0b1361e2698e23ae"}]},{"sha":"a1b65636df9408d93b115a3533a091e3e9cc68c4","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T06:25:07Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T06:25:07Z"},"message":"Clean up. NonCompletableGithubObject refactoring resolved.","tree":{"sha":"eec00d808853aee3bf03f8e705fbf49bd32b1dab","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/eec00d808853aee3bf03f8e705fbf49bd32b1dab"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/a1b65636df9408d93b115a3533a091e3e9cc68c4","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a1b65636df9408d93b115a3533a091e3e9cc68c4","html_url":"https://github.com/jacquev6/PyGithub/commit/a1b65636df9408d93b115a3533a091e3e9cc68c4","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a1b65636df9408d93b115a3533a091e3e9cc68c4/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"4a1a1d406896ebd96315fcf9092ab68dfb7a7194","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4a1a1d406896ebd96315fcf9092ab68dfb7a7194","html_url":"https://github.com/jacquev6/PyGithub/commit/4a1a1d406896ebd96315fcf9092ab68dfb7a7194"}]},{"sha":"ca6189c3c94fac963811342ce9f77104d0b5774b","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T06:49:20Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T06:49:20Z"},"message":"Change CompletableGithubObject.__init__ without breaking build.","tree":{"sha":"a8fd06251014ac406f89342e2ee118fe5e5e562c","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/a8fd06251014ac406f89342e2ee118fe5e5e562c"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/ca6189c3c94fac963811342ce9f77104d0b5774b","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ca6189c3c94fac963811342ce9f77104d0b5774b","html_url":"https://github.com/jacquev6/PyGithub/commit/ca6189c3c94fac963811342ce9f77104d0b5774b","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ca6189c3c94fac963811342ce9f77104d0b5774b/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"a1b65636df9408d93b115a3533a091e3e9cc68c4","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a1b65636df9408d93b115a3533a091e3e9cc68c4","html_url":"https://github.com/jacquev6/PyGithub/commit/a1b65636df9408d93b115a3533a091e3e9cc68c4"}]},{"sha":"2f31828502c95fef62970db7d4ca49fa8b4b8e0d","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T07:04:34Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T07:04:34Z"},"message":"Update RepositoryKey.py","tree":{"sha":"f1903010376227506f579412a3356276a2ef3a6f","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/f1903010376227506f579412a3356276a2ef3a6f"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/2f31828502c95fef62970db7d4ca49fa8b4b8e0d","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2f31828502c95fef62970db7d4ca49fa8b4b8e0d","html_url":"https://github.com/jacquev6/PyGithub/commit/2f31828502c95fef62970db7d4ca49fa8b4b8e0d","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2f31828502c95fef62970db7d4ca49fa8b4b8e0d/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"ca6189c3c94fac963811342ce9f77104d0b5774b","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ca6189c3c94fac963811342ce9f77104d0b5774b","html_url":"https://github.com/jacquev6/PyGithub/commit/ca6189c3c94fac963811342ce9f77104d0b5774b"}]},{"sha":"28a49b94d87408592199ffa018e8c1b3bd9d2a77","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T07:06:21Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T07:06:21Z"},"message":"Update AuthenticatedUser.py","tree":{"sha":"be7f3930e35f7752cbf2541d3b9c2ea1b31a4cbb","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/be7f3930e35f7752cbf2541d3b9c2ea1b31a4cbb"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/28a49b94d87408592199ffa018e8c1b3bd9d2a77","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/28a49b94d87408592199ffa018e8c1b3bd9d2a77","html_url":"https://github.com/jacquev6/PyGithub/commit/28a49b94d87408592199ffa018e8c1b3bd9d2a77","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/28a49b94d87408592199ffa018e8c1b3bd9d2a77/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"2f31828502c95fef62970db7d4ca49fa8b4b8e0d","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2f31828502c95fef62970db7d4ca49fa8b4b8e0d","html_url":"https://github.com/jacquev6/PyGithub/commit/2f31828502c95fef62970db7d4ca49fa8b4b8e0d"}]},{"sha":"0e19d8e04e847aac690fcd5563c35aa0c1808a80","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T07:09:34Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T07:09:34Z"},"message":"Update Authorization.py","tree":{"sha":"fd2c8b34609c810f111d6f911e7bf8af932a3057","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/fd2c8b34609c810f111d6f911e7bf8af932a3057"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/0e19d8e04e847aac690fcd5563c35aa0c1808a80","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0e19d8e04e847aac690fcd5563c35aa0c1808a80","html_url":"https://github.com/jacquev6/PyGithub/commit/0e19d8e04e847aac690fcd5563c35aa0c1808a80","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0e19d8e04e847aac690fcd5563c35aa0c1808a80/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"28a49b94d87408592199ffa018e8c1b3bd9d2a77","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/28a49b94d87408592199ffa018e8c1b3bd9d2a77","html_url":"https://github.com/jacquev6/PyGithub/commit/28a49b94d87408592199ffa018e8c1b3bd9d2a77"}]},{"sha":"83c6495ec557898cd17a70be184c307558b4535c","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T07:10:54Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T07:10:54Z"},"message":"Update AuthorizationApplication.py","tree":{"sha":"59197288fa8348a8fea3ff62a624c1f423bdc243","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/59197288fa8348a8fea3ff62a624c1f423bdc243"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/83c6495ec557898cd17a70be184c307558b4535c","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/83c6495ec557898cd17a70be184c307558b4535c","html_url":"https://github.com/jacquev6/PyGithub/commit/83c6495ec557898cd17a70be184c307558b4535c","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/83c6495ec557898cd17a70be184c307558b4535c/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"0e19d8e04e847aac690fcd5563c35aa0c1808a80","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0e19d8e04e847aac690fcd5563c35aa0c1808a80","html_url":"https://github.com/jacquev6/PyGithub/commit/0e19d8e04e847aac690fcd5563c35aa0c1808a80"}]},{"sha":"ed32e78da1303962afaf8fa0d616a1828fdaa80b","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T07:26:05Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T07:26:05Z"},"message":"Update Commit.py and GitCommit.py","tree":{"sha":"137ed1870455860097e3fde5ecc1d32d3ae58461","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/137ed1870455860097e3fde5ecc1d32d3ae58461"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/ed32e78da1303962afaf8fa0d616a1828fdaa80b","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ed32e78da1303962afaf8fa0d616a1828fdaa80b","html_url":"https://github.com/jacquev6/PyGithub/commit/ed32e78da1303962afaf8fa0d616a1828fdaa80b","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ed32e78da1303962afaf8fa0d616a1828fdaa80b/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"83c6495ec557898cd17a70be184c307558b4535c","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/83c6495ec557898cd17a70be184c307558b4535c","html_url":"https://github.com/jacquev6/PyGithub/commit/83c6495ec557898cd17a70be184c307558b4535c"}]},{"sha":"3b2e19488fc6a5f51574d874e546173c1835d10b","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T07:28:00Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T07:28:00Z"},"message":"Update CommitComment.py","tree":{"sha":"99c70f3baa022e7e837f7903172325a78d41a2a4","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/99c70f3baa022e7e837f7903172325a78d41a2a4"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/3b2e19488fc6a5f51574d874e546173c1835d10b","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/3b2e19488fc6a5f51574d874e546173c1835d10b","html_url":"https://github.com/jacquev6/PyGithub/commit/3b2e19488fc6a5f51574d874e546173c1835d10b","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/3b2e19488fc6a5f51574d874e546173c1835d10b/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"ed32e78da1303962afaf8fa0d616a1828fdaa80b","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ed32e78da1303962afaf8fa0d616a1828fdaa80b","html_url":"https://github.com/jacquev6/PyGithub/commit/ed32e78da1303962afaf8fa0d616a1828fdaa80b"}]},{"sha":"ced048663ba392bfee2543cea5f5fbf875771c0e","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T07:29:13Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T07:29:13Z"},"message":"Update Comparision.py","tree":{"sha":"25c0fef0fa652ad8bce55c3efbd10028298eb24f","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/25c0fef0fa652ad8bce55c3efbd10028298eb24f"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/ced048663ba392bfee2543cea5f5fbf875771c0e","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ced048663ba392bfee2543cea5f5fbf875771c0e","html_url":"https://github.com/jacquev6/PyGithub/commit/ced048663ba392bfee2543cea5f5fbf875771c0e","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ced048663ba392bfee2543cea5f5fbf875771c0e/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"3b2e19488fc6a5f51574d874e546173c1835d10b","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/3b2e19488fc6a5f51574d874e546173c1835d10b","html_url":"https://github.com/jacquev6/PyGithub/commit/3b2e19488fc6a5f51574d874e546173c1835d10b"}]},{"sha":"0c13da45929dbc528a4f8f14f8ce54df15888660","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T07:31:45Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T07:31:45Z"},"message":"Update ContentFile.py","tree":{"sha":"a9d12c606be5d39883e814a16deca4c959374973","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/a9d12c606be5d39883e814a16deca4c959374973"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/0c13da45929dbc528a4f8f14f8ce54df15888660","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0c13da45929dbc528a4f8f14f8ce54df15888660","html_url":"https://github.com/jacquev6/PyGithub/commit/0c13da45929dbc528a4f8f14f8ce54df15888660","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0c13da45929dbc528a4f8f14f8ce54df15888660/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"ced048663ba392bfee2543cea5f5fbf875771c0e","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ced048663ba392bfee2543cea5f5fbf875771c0e","html_url":"https://github.com/jacquev6/PyGithub/commit/ced048663ba392bfee2543cea5f5fbf875771c0e"}]},{"sha":"c15cb6575b88b56b48fb21e66931ab2108c8b23c","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T07:33:25Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T07:33:25Z"},"message":"Update Download.py","tree":{"sha":"77bb2d83e0989950f5b688505b40ee3bfc3274aa","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/77bb2d83e0989950f5b688505b40ee3bfc3274aa"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/c15cb6575b88b56b48fb21e66931ab2108c8b23c","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c15cb6575b88b56b48fb21e66931ab2108c8b23c","html_url":"https://github.com/jacquev6/PyGithub/commit/c15cb6575b88b56b48fb21e66931ab2108c8b23c","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c15cb6575b88b56b48fb21e66931ab2108c8b23c/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"0c13da45929dbc528a4f8f14f8ce54df15888660","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0c13da45929dbc528a4f8f14f8ce54df15888660","html_url":"https://github.com/jacquev6/PyGithub/commit/0c13da45929dbc528a4f8f14f8ce54df15888660"}]},{"sha":"dc8173a5328cede580cae7e2bbf053ee98185d4e","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T07:39:34Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T07:39:34Z"},"message":"Update Gist*.py","tree":{"sha":"3d7859d27a4f4ef40a728f1787dea342b9f0d904","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/3d7859d27a4f4ef40a728f1787dea342b9f0d904"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/dc8173a5328cede580cae7e2bbf053ee98185d4e","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/dc8173a5328cede580cae7e2bbf053ee98185d4e","html_url":"https://github.com/jacquev6/PyGithub/commit/dc8173a5328cede580cae7e2bbf053ee98185d4e","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/dc8173a5328cede580cae7e2bbf053ee98185d4e/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"c15cb6575b88b56b48fb21e66931ab2108c8b23c","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c15cb6575b88b56b48fb21e66931ab2108c8b23c","html_url":"https://github.com/jacquev6/PyGithub/commit/c15cb6575b88b56b48fb21e66931ab2108c8b23c"}]},{"sha":"b43de50dc4f4a538e284645b4f83b597d008a8a2","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T07:48:08Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T07:48:08Z"},"message":"Update GitBlob.py","tree":{"sha":"fa891e8f586348ce6d20aa33c7a53215bb3f8eed","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/fa891e8f586348ce6d20aa33c7a53215bb3f8eed"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/b43de50dc4f4a538e284645b4f83b597d008a8a2","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b43de50dc4f4a538e284645b4f83b597d008a8a2","html_url":"https://github.com/jacquev6/PyGithub/commit/b43de50dc4f4a538e284645b4f83b597d008a8a2","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b43de50dc4f4a538e284645b4f83b597d008a8a2/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"dc8173a5328cede580cae7e2bbf053ee98185d4e","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/dc8173a5328cede580cae7e2bbf053ee98185d4e","html_url":"https://github.com/jacquev6/PyGithub/commit/dc8173a5328cede580cae7e2bbf053ee98185d4e"}]},{"sha":"1dbc2dd38f5c31a8a48082daad4981c79d92f0b7","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T07:51:12Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T07:51:12Z"},"message":"Update GitRef.py","tree":{"sha":"5bb940a1d3d1ca30ee86ae9e25fe56aee5132708","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/5bb940a1d3d1ca30ee86ae9e25fe56aee5132708"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/1dbc2dd38f5c31a8a48082daad4981c79d92f0b7","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1dbc2dd38f5c31a8a48082daad4981c79d92f0b7","html_url":"https://github.com/jacquev6/PyGithub/commit/1dbc2dd38f5c31a8a48082daad4981c79d92f0b7","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1dbc2dd38f5c31a8a48082daad4981c79d92f0b7/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"b43de50dc4f4a538e284645b4f83b597d008a8a2","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b43de50dc4f4a538e284645b4f83b597d008a8a2","html_url":"https://github.com/jacquev6/PyGithub/commit/b43de50dc4f4a538e284645b4f83b597d008a8a2"}]},{"sha":"c89bebc729b48477b0d8949d9179bb2e9a7c3bf8","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T07:52:57Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T07:52:57Z"},"message":"Update GitTag.py","tree":{"sha":"86dc08675585c9a8631152f53fa61f7be7fd76ea","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/86dc08675585c9a8631152f53fa61f7be7fd76ea"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/c89bebc729b48477b0d8949d9179bb2e9a7c3bf8","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c89bebc729b48477b0d8949d9179bb2e9a7c3bf8","html_url":"https://github.com/jacquev6/PyGithub/commit/c89bebc729b48477b0d8949d9179bb2e9a7c3bf8","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c89bebc729b48477b0d8949d9179bb2e9a7c3bf8/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"1dbc2dd38f5c31a8a48082daad4981c79d92f0b7","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1dbc2dd38f5c31a8a48082daad4981c79d92f0b7","html_url":"https://github.com/jacquev6/PyGithub/commit/1dbc2dd38f5c31a8a48082daad4981c79d92f0b7"}]},{"sha":"038e35cb3d40f85b35b6fbe0807f9c761c474310","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T07:55:42Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T07:55:42Z"},"message":"Update GitTree","tree":{"sha":"48f4d2fd9511201c76ada8f1219cae44b427befd","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/48f4d2fd9511201c76ada8f1219cae44b427befd"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/038e35cb3d40f85b35b6fbe0807f9c761c474310","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/038e35cb3d40f85b35b6fbe0807f9c761c474310","html_url":"https://github.com/jacquev6/PyGithub/commit/038e35cb3d40f85b35b6fbe0807f9c761c474310","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/038e35cb3d40f85b35b6fbe0807f9c761c474310/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"c89bebc729b48477b0d8949d9179bb2e9a7c3bf8","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c89bebc729b48477b0d8949d9179bb2e9a7c3bf8","html_url":"https://github.com/jacquev6/PyGithub/commit/c89bebc729b48477b0d8949d9179bb2e9a7c3bf8"}]},{"sha":"044a000d7647e9134c69378f760ff1a2bd141f4d","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T07:58:07Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T07:58:07Z"},"message":"Update Hook.py","tree":{"sha":"2372a21476b8ec8784687cc470382148733a92ed","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/2372a21476b8ec8784687cc470382148733a92ed"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/044a000d7647e9134c69378f760ff1a2bd141f4d","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/044a000d7647e9134c69378f760ff1a2bd141f4d","html_url":"https://github.com/jacquev6/PyGithub/commit/044a000d7647e9134c69378f760ff1a2bd141f4d","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/044a000d7647e9134c69378f760ff1a2bd141f4d/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"038e35cb3d40f85b35b6fbe0807f9c761c474310","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/038e35cb3d40f85b35b6fbe0807f9c761c474310","html_url":"https://github.com/jacquev6/PyGithub/commit/038e35cb3d40f85b35b6fbe0807f9c761c474310"}]},{"sha":"49a69c9425789cfb21c49888a144b123ae564cf3","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T08:08:54Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T08:08:54Z"},"message":"Update Issue.py","tree":{"sha":"a32e11d7c6e916c0600ec08dbc9298423e4efefb","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/a32e11d7c6e916c0600ec08dbc9298423e4efefb"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/49a69c9425789cfb21c49888a144b123ae564cf3","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/49a69c9425789cfb21c49888a144b123ae564cf3","html_url":"https://github.com/jacquev6/PyGithub/commit/49a69c9425789cfb21c49888a144b123ae564cf3","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/49a69c9425789cfb21c49888a144b123ae564cf3/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"044a000d7647e9134c69378f760ff1a2bd141f4d","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/044a000d7647e9134c69378f760ff1a2bd141f4d","html_url":"https://github.com/jacquev6/PyGithub/commit/044a000d7647e9134c69378f760ff1a2bd141f4d"}]},{"sha":"8f2ba4f522dbae090b8287663a9a1a88283803b4","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T08:13:22Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T08:13:22Z"},"message":"Update IssueComment.py","tree":{"sha":"d7287eda45c3e008132a1650f49dbf124b50bc56","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/d7287eda45c3e008132a1650f49dbf124b50bc56"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/8f2ba4f522dbae090b8287663a9a1a88283803b4","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/8f2ba4f522dbae090b8287663a9a1a88283803b4","html_url":"https://github.com/jacquev6/PyGithub/commit/8f2ba4f522dbae090b8287663a9a1a88283803b4","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/8f2ba4f522dbae090b8287663a9a1a88283803b4/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"49a69c9425789cfb21c49888a144b123ae564cf3","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/49a69c9425789cfb21c49888a144b123ae564cf3","html_url":"https://github.com/jacquev6/PyGithub/commit/49a69c9425789cfb21c49888a144b123ae564cf3"}]},{"sha":"7d40b9eae87fb1631f358e3c09a9d691a942f258","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T08:17:26Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T08:17:26Z"},"message":"Update IssueEvent.py","tree":{"sha":"4171bd3cc8c8ca69c351ea2bf6b5d19900d6c1c1","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/4171bd3cc8c8ca69c351ea2bf6b5d19900d6c1c1"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/7d40b9eae87fb1631f358e3c09a9d691a942f258","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/7d40b9eae87fb1631f358e3c09a9d691a942f258","html_url":"https://github.com/jacquev6/PyGithub/commit/7d40b9eae87fb1631f358e3c09a9d691a942f258","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/7d40b9eae87fb1631f358e3c09a9d691a942f258/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"8f2ba4f522dbae090b8287663a9a1a88283803b4","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/8f2ba4f522dbae090b8287663a9a1a88283803b4","html_url":"https://github.com/jacquev6/PyGithub/commit/8f2ba4f522dbae090b8287663a9a1a88283803b4"}]},{"sha":"175488270a65a97a42c7bc3fd0bf42676ea4a6e3","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T08:21:22Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T08:21:22Z"},"message":"Update Label.py","tree":{"sha":"b2fb450a7dfd492b40bca942f761615a1ac6a342","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/b2fb450a7dfd492b40bca942f761615a1ac6a342"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/175488270a65a97a42c7bc3fd0bf42676ea4a6e3","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/175488270a65a97a42c7bc3fd0bf42676ea4a6e3","html_url":"https://github.com/jacquev6/PyGithub/commit/175488270a65a97a42c7bc3fd0bf42676ea4a6e3","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/175488270a65a97a42c7bc3fd0bf42676ea4a6e3/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"7d40b9eae87fb1631f358e3c09a9d691a942f258","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/7d40b9eae87fb1631f358e3c09a9d691a942f258","html_url":"https://github.com/jacquev6/PyGithub/commit/7d40b9eae87fb1631f358e3c09a9d691a942f258"}]},{"sha":"e4baf577ed5445bbc156c123ccbd7da3c1a3b650","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T08:24:27Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T08:24:27Z"},"message":"Update Milestone.py","tree":{"sha":"6cd4d4a0cc49e8a0ecacc793fccdf99e66668cd2","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/6cd4d4a0cc49e8a0ecacc793fccdf99e66668cd2"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/e4baf577ed5445bbc156c123ccbd7da3c1a3b650","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e4baf577ed5445bbc156c123ccbd7da3c1a3b650","html_url":"https://github.com/jacquev6/PyGithub/commit/e4baf577ed5445bbc156c123ccbd7da3c1a3b650","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e4baf577ed5445bbc156c123ccbd7da3c1a3b650/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"175488270a65a97a42c7bc3fd0bf42676ea4a6e3","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/175488270a65a97a42c7bc3fd0bf42676ea4a6e3","html_url":"https://github.com/jacquev6/PyGithub/commit/175488270a65a97a42c7bc3fd0bf42676ea4a6e3"}]},{"sha":"ba6800ada4213828bdb4f5d54d14e0d4c3c25c4c","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T08:57:10Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T08:57:10Z"},"message":"Update NamedUser.py","tree":{"sha":"22c59fcb82b68071233ebe394ed249d85304b589","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/22c59fcb82b68071233ebe394ed249d85304b589"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/ba6800ada4213828bdb4f5d54d14e0d4c3c25c4c","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ba6800ada4213828bdb4f5d54d14e0d4c3c25c4c","html_url":"https://github.com/jacquev6/PyGithub/commit/ba6800ada4213828bdb4f5d54d14e0d4c3c25c4c","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ba6800ada4213828bdb4f5d54d14e0d4c3c25c4c/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"e4baf577ed5445bbc156c123ccbd7da3c1a3b650","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e4baf577ed5445bbc156c123ccbd7da3c1a3b650","html_url":"https://github.com/jacquev6/PyGithub/commit/e4baf577ed5445bbc156c123ccbd7da3c1a3b650"}]},{"sha":"6cb6e8d232f84e7456c184a4cd055281bb0dba07","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T08:58:25Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T08:58:25Z"},"message":"Update Notification.py","tree":{"sha":"12744defe09c67111d1ce8454619db76441c74c2","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/12744defe09c67111d1ce8454619db76441c74c2"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/6cb6e8d232f84e7456c184a4cd055281bb0dba07","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6cb6e8d232f84e7456c184a4cd055281bb0dba07","html_url":"https://github.com/jacquev6/PyGithub/commit/6cb6e8d232f84e7456c184a4cd055281bb0dba07","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6cb6e8d232f84e7456c184a4cd055281bb0dba07/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"ba6800ada4213828bdb4f5d54d14e0d4c3c25c4c","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ba6800ada4213828bdb4f5d54d14e0d4c3c25c4c","html_url":"https://github.com/jacquev6/PyGithub/commit/ba6800ada4213828bdb4f5d54d14e0d4c3c25c4c"}]},{"sha":"ef912af6b79414351de245aa7a6919cad461ca50","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T09:01:13Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T09:01:13Z"},"message":"Update Organization.py","tree":{"sha":"25eb4e93c5716005647e58fc78b02258d819e3b8","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/25eb4e93c5716005647e58fc78b02258d819e3b8"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/ef912af6b79414351de245aa7a6919cad461ca50","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ef912af6b79414351de245aa7a6919cad461ca50","html_url":"https://github.com/jacquev6/PyGithub/commit/ef912af6b79414351de245aa7a6919cad461ca50","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ef912af6b79414351de245aa7a6919cad461ca50/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"6cb6e8d232f84e7456c184a4cd055281bb0dba07","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6cb6e8d232f84e7456c184a4cd055281bb0dba07","html_url":"https://github.com/jacquev6/PyGithub/commit/6cb6e8d232f84e7456c184a4cd055281bb0dba07"}]},{"sha":"0e842637a6052129b1706419a66597f419b4b2ba","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T09:03:41Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T09:03:41Z"},"message":"Update PullRequest.py","tree":{"sha":"e3ecc0ea2dd602e1eab33f6c384007cd795baa3b","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/e3ecc0ea2dd602e1eab33f6c384007cd795baa3b"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/0e842637a6052129b1706419a66597f419b4b2ba","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0e842637a6052129b1706419a66597f419b4b2ba","html_url":"https://github.com/jacquev6/PyGithub/commit/0e842637a6052129b1706419a66597f419b4b2ba","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0e842637a6052129b1706419a66597f419b4b2ba/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"ef912af6b79414351de245aa7a6919cad461ca50","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ef912af6b79414351de245aa7a6919cad461ca50","html_url":"https://github.com/jacquev6/PyGithub/commit/ef912af6b79414351de245aa7a6919cad461ca50"}]},{"sha":"3c1d17cd649e79ff7c97d2c68daffbf6529ed969","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T09:13:03Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T09:13:03Z"},"message":"Update Repository.py","tree":{"sha":"95d2cbe17bc8a248b9a62f29bff961a4fbf9ecfe","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/95d2cbe17bc8a248b9a62f29bff961a4fbf9ecfe"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/3c1d17cd649e79ff7c97d2c68daffbf6529ed969","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/3c1d17cd649e79ff7c97d2c68daffbf6529ed969","html_url":"https://github.com/jacquev6/PyGithub/commit/3c1d17cd649e79ff7c97d2c68daffbf6529ed969","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/3c1d17cd649e79ff7c97d2c68daffbf6529ed969/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"0e842637a6052129b1706419a66597f419b4b2ba","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0e842637a6052129b1706419a66597f419b4b2ba","html_url":"https://github.com/jacquev6/PyGithub/commit/0e842637a6052129b1706419a66597f419b4b2ba"}]},{"sha":"1070631c73f02e1ee6b03c55155086d33791499e","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T09:18:01Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T09:18:01Z"},"message":"Update Team.py","tree":{"sha":"0cb42345203225124267c4f866f3747b93e6277c","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/0cb42345203225124267c4f866f3747b93e6277c"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/1070631c73f02e1ee6b03c55155086d33791499e","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1070631c73f02e1ee6b03c55155086d33791499e","html_url":"https://github.com/jacquev6/PyGithub/commit/1070631c73f02e1ee6b03c55155086d33791499e","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1070631c73f02e1ee6b03c55155086d33791499e/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"3c1d17cd649e79ff7c97d2c68daffbf6529ed969","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/3c1d17cd649e79ff7c97d2c68daffbf6529ed969","html_url":"https://github.com/jacquev6/PyGithub/commit/3c1d17cd649e79ff7c97d2c68daffbf6529ed969"}]},{"sha":"c4e8972be12ba249a06cd4c40499e0b32011e7f5","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T09:19:11Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T09:19:11Z"},"message":"Update UserKey.py","tree":{"sha":"dc077fcaedfee625d520412e41485893c351c150","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/dc077fcaedfee625d520412e41485893c351c150"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/c4e8972be12ba249a06cd4c40499e0b32011e7f5","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c4e8972be12ba249a06cd4c40499e0b32011e7f5","html_url":"https://github.com/jacquev6/PyGithub/commit/c4e8972be12ba249a06cd4c40499e0b32011e7f5","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c4e8972be12ba249a06cd4c40499e0b32011e7f5/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"1070631c73f02e1ee6b03c55155086d33791499e","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1070631c73f02e1ee6b03c55155086d33791499e","html_url":"https://github.com/jacquev6/PyGithub/commit/1070631c73f02e1ee6b03c55155086d33791499e"}]},{"sha":"8a301701db354408b63273f78ece6887a1677e55","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T09:25:29Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T09:25:29Z"},"message":"Remove helper method in PaginatedList.py","tree":{"sha":"639f5560d925aa1b19e29f3eeb74c7e5f11174cc","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/639f5560d925aa1b19e29f3eeb74c7e5f11174cc"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/8a301701db354408b63273f78ece6887a1677e55","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/8a301701db354408b63273f78ece6887a1677e55","html_url":"https://github.com/jacquev6/PyGithub/commit/8a301701db354408b63273f78ece6887a1677e55","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/8a301701db354408b63273f78ece6887a1677e55/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"c4e8972be12ba249a06cd4c40499e0b32011e7f5","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c4e8972be12ba249a06cd4c40499e0b32011e7f5","html_url":"https://github.com/jacquev6/PyGithub/commit/c4e8972be12ba249a06cd4c40499e0b32011e7f5"}]},{"sha":"3f6d1b6b705de6ea9632021987e55d41875f0102","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T09:27:37Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T09:27:37Z"},"message":"Remove helper method in Legacy.py","tree":{"sha":"cdc64db71461393d95d58e89a9a0387fe5d3b447","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/cdc64db71461393d95d58e89a9a0387fe5d3b447"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/3f6d1b6b705de6ea9632021987e55d41875f0102","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/3f6d1b6b705de6ea9632021987e55d41875f0102","html_url":"https://github.com/jacquev6/PyGithub/commit/3f6d1b6b705de6ea9632021987e55d41875f0102","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/3f6d1b6b705de6ea9632021987e55d41875f0102/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"8a301701db354408b63273f78ece6887a1677e55","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/8a301701db354408b63273f78ece6887a1677e55","html_url":"https://github.com/jacquev6/PyGithub/commit/8a301701db354408b63273f78ece6887a1677e55"}]},{"sha":"30d9d499a1b44552ab9a28ef7317aa2098daafd7","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T09:32:32Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T09:32:32Z"},"message":"Clean up","tree":{"sha":"971191c9d4fbd001727beeeb2ff9a482b80e2b39","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/971191c9d4fbd001727beeeb2ff9a482b80e2b39"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/30d9d499a1b44552ab9a28ef7317aa2098daafd7","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/30d9d499a1b44552ab9a28ef7317aa2098daafd7","html_url":"https://github.com/jacquev6/PyGithub/commit/30d9d499a1b44552ab9a28ef7317aa2098daafd7","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/30d9d499a1b44552ab9a28ef7317aa2098daafd7/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"3f6d1b6b705de6ea9632021987e55d41875f0102","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/3f6d1b6b705de6ea9632021987e55d41875f0102","html_url":"https://github.com/jacquev6/PyGithub/commit/3f6d1b6b705de6ea9632021987e55d41875f0102"}]},{"sha":"912bec79d2dd2479e5e32118c66ee9a647b46332","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T09:45:01Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T09:45:01Z"},"message":"Update copyright information","tree":{"sha":"9ce5267aa0ed70277a09594a84c881e9e04da2e5","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/9ce5267aa0ed70277a09594a84c881e9e04da2e5"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/912bec79d2dd2479e5e32118c66ee9a647b46332","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/912bec79d2dd2479e5e32118c66ee9a647b46332","html_url":"https://github.com/jacquev6/PyGithub/commit/912bec79d2dd2479e5e32118c66ee9a647b46332","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/912bec79d2dd2479e5e32118c66ee9a647b46332/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"30d9d499a1b44552ab9a28ef7317aa2098daafd7","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/30d9d499a1b44552ab9a28ef7317aa2098daafd7","html_url":"https://github.com/jacquev6/PyGithub/commit/30d9d499a1b44552ab9a28ef7317aa2098daafd7"}]},{"sha":"1d18ea75cce3ca6aeff03d0343e65b2f13b97f80","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T11:25:05Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T11:25:05Z"},"message":"Add debug / test mechanism","tree":{"sha":"6cc4f7080010a73043a4d743a488b207f7117f42","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/6cc4f7080010a73043a4d743a488b207f7117f42"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/1d18ea75cce3ca6aeff03d0343e65b2f13b97f80","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1d18ea75cce3ca6aeff03d0343e65b2f13b97f80","html_url":"https://github.com/jacquev6/PyGithub/commit/1d18ea75cce3ca6aeff03d0343e65b2f13b97f80","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1d18ea75cce3ca6aeff03d0343e65b2f13b97f80/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"912bec79d2dd2479e5e32118c66ee9a647b46332","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/912bec79d2dd2479e5e32118c66ee9a647b46332","html_url":"https://github.com/jacquev6/PyGithub/commit/912bec79d2dd2479e5e32118c66ee9a647b46332"}]},{"sha":"e06257d06017b72bb57b15b043e6f16d4b6eb568","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T12:58:29Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T12:58:29Z"},"message":"Enable debug in TestCase","tree":{"sha":"c99afd32d144d223b8dea8dc3d1bc612a5e7b440","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/c99afd32d144d223b8dea8dc3d1bc612a5e7b440"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/e06257d06017b72bb57b15b043e6f16d4b6eb568","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e06257d06017b72bb57b15b043e6f16d4b6eb568","html_url":"https://github.com/jacquev6/PyGithub/commit/e06257d06017b72bb57b15b043e6f16d4b6eb568","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e06257d06017b72bb57b15b043e6f16d4b6eb568/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"1d18ea75cce3ca6aeff03d0343e65b2f13b97f80","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1d18ea75cce3ca6aeff03d0343e65b2f13b97f80","html_url":"https://github.com/jacquev6/PyGithub/commit/1d18ea75cce3ca6aeff03d0343e65b2f13b97f80"}]},{"sha":"aa3025271cd918883b31a42fb7b4ce03027b805c","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T13:11:12Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T13:11:12Z"},"message":"Assert response headers","tree":{"sha":"9e5ec5a1f82ccfe07e2abeb586b7d39b98392df2","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/9e5ec5a1f82ccfe07e2abeb586b7d39b98392df2"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/aa3025271cd918883b31a42fb7b4ce03027b805c","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/aa3025271cd918883b31a42fb7b4ce03027b805c","html_url":"https://github.com/jacquev6/PyGithub/commit/aa3025271cd918883b31a42fb7b4ce03027b805c","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/aa3025271cd918883b31a42fb7b4ce03027b805c/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"e06257d06017b72bb57b15b043e6f16d4b6eb568","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e06257d06017b72bb57b15b043e6f16d4b6eb568","html_url":"https://github.com/jacquev6/PyGithub/commit/e06257d06017b72bb57b15b043e6f16d4b6eb568"}]},{"sha":"b71329e560795a4df84cb419178ef660824f4c0d","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T14:25:20Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T14:25:20Z"},"message":"Implement data persistence","tree":{"sha":"e617e5b89efd45b9839d8e7f61619f00974367bb","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/e617e5b89efd45b9839d8e7f61619f00974367bb"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/b71329e560795a4df84cb419178ef660824f4c0d","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b71329e560795a4df84cb419178ef660824f4c0d","html_url":"https://github.com/jacquev6/PyGithub/commit/b71329e560795a4df84cb419178ef660824f4c0d","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b71329e560795a4df84cb419178ef660824f4c0d/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"aa3025271cd918883b31a42fb7b4ce03027b805c","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/aa3025271cd918883b31a42fb7b4ce03027b805c","html_url":"https://github.com/jacquev6/PyGithub/commit/aa3025271cd918883b31a42fb7b4ce03027b805c"}]},{"sha":"bd7abb58772ae1a61fd7eb44308a3a2f60432ad6","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T15:01:40Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T15:01:40Z"},"message":"Add update() method","tree":{"sha":"790ed722bb219aeb47c13f073a41ccb4e67a0ae0","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/790ed722bb219aeb47c13f073a41ccb4e67a0ae0"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/bd7abb58772ae1a61fd7eb44308a3a2f60432ad6","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/bd7abb58772ae1a61fd7eb44308a3a2f60432ad6","html_url":"https://github.com/jacquev6/PyGithub/commit/bd7abb58772ae1a61fd7eb44308a3a2f60432ad6","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/bd7abb58772ae1a61fd7eb44308a3a2f60432ad6/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"b71329e560795a4df84cb419178ef660824f4c0d","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b71329e560795a4df84cb419178ef660824f4c0d","html_url":"https://github.com/jacquev6/PyGithub/commit/b71329e560795a4df84cb419178ef660824f4c0d"}]},{"sha":"1e9ec2df089973db73aaf99b4ef147efd4614e7c","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T15:04:07Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T15:04:07Z"},"message":"Add NotModifiedException class","tree":{"sha":"68bf8de0788f5e0a6675d07bceaeb114183315ba","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/68bf8de0788f5e0a6675d07bceaeb114183315ba"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/1e9ec2df089973db73aaf99b4ef147efd4614e7c","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1e9ec2df089973db73aaf99b4ef147efd4614e7c","html_url":"https://github.com/jacquev6/PyGithub/commit/1e9ec2df089973db73aaf99b4ef147efd4614e7c","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1e9ec2df089973db73aaf99b4ef147efd4614e7c/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"bd7abb58772ae1a61fd7eb44308a3a2f60432ad6","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/bd7abb58772ae1a61fd7eb44308a3a2f60432ad6","html_url":"https://github.com/jacquev6/PyGithub/commit/bd7abb58772ae1a61fd7eb44308a3a2f60432ad6"}]},{"sha":"6fd05baf6bea732dd846e08c40891c28060e7c64","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T15:09:30Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T15:09:30Z"},"message":"Handle response code 304","tree":{"sha":"8601556063c365eb7c636a3459eca81b5e717e21","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/8601556063c365eb7c636a3459eca81b5e717e21"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/6fd05baf6bea732dd846e08c40891c28060e7c64","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6fd05baf6bea732dd846e08c40891c28060e7c64","html_url":"https://github.com/jacquev6/PyGithub/commit/6fd05baf6bea732dd846e08c40891c28060e7c64","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6fd05baf6bea732dd846e08c40891c28060e7c64/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"1e9ec2df089973db73aaf99b4ef147efd4614e7c","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1e9ec2df089973db73aaf99b4ef147efd4614e7c","html_url":"https://github.com/jacquev6/PyGithub/commit/1e9ec2df089973db73aaf99b4ef147efd4614e7c"}]},{"sha":"5b09f6c82191601cad92076ad4761fe927c511ed","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T15:17:59Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T15:17:59Z"},"message":"Implement conditional request","tree":{"sha":"d6c3d2b807635ecd9a9129b1a99d0e2f6758d440","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/d6c3d2b807635ecd9a9129b1a99d0e2f6758d440"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/5b09f6c82191601cad92076ad4761fe927c511ed","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5b09f6c82191601cad92076ad4761fe927c511ed","html_url":"https://github.com/jacquev6/PyGithub/commit/5b09f6c82191601cad92076ad4761fe927c511ed","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5b09f6c82191601cad92076ad4761fe927c511ed/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"6fd05baf6bea732dd846e08c40891c28060e7c64","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6fd05baf6bea732dd846e08c40891c28060e7c64","html_url":"https://github.com/jacquev6/PyGithub/commit/6fd05baf6bea732dd846e08c40891c28060e7c64"}]},{"sha":"1955f7b39d4aeef19356a8269e6430537fcc3006","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-21T16:40:21Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-21T20:24:32Z"},"message":"Use POST /gists/:id/forks instead of POST /gists/:id/fork","tree":{"sha":"96255698cf321052b8d1990af1b282e7e7d9b094","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/96255698cf321052b8d1990af1b282e7e7d9b094"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/1955f7b39d4aeef19356a8269e6430537fcc3006","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1955f7b39d4aeef19356a8269e6430537fcc3006","html_url":"https://github.com/jacquev6/PyGithub/commit/1955f7b39d4aeef19356a8269e6430537fcc3006","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1955f7b39d4aeef19356a8269e6430537fcc3006/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"ed781f8b1b96e1d2a342d36ca53114ea28862fa8","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ed781f8b1b96e1d2a342d36ca53114ea28862fa8","html_url":"https://github.com/jacquev6/PyGithub/commit/ed781f8b1b96e1d2a342d36ca53114ea28862fa8"}]},{"sha":"0f369ba218414beb8d782904b1f09d4711c82cb7","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-21T16:51:09Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-21T20:25:44Z"},"message":"Use POST /repos/:owner/:repo/hooks/:id/tests instead of POST /repos/:owner/:repo/hooks/:id/test","tree":{"sha":"9df3a12c5a595613c179195787593cd18f50df60","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/9df3a12c5a595613c179195787593cd18f50df60"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/0f369ba218414beb8d782904b1f09d4711c82cb7","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0f369ba218414beb8d782904b1f09d4711c82cb7","html_url":"https://github.com/jacquev6/PyGithub/commit/0f369ba218414beb8d782904b1f09d4711c82cb7","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0f369ba218414beb8d782904b1f09d4711c82cb7/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"1955f7b39d4aeef19356a8269e6430537fcc3006","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1955f7b39d4aeef19356a8269e6430537fcc3006","html_url":"https://github.com/jacquev6/PyGithub/commit/1955f7b39d4aeef19356a8269e6430537fcc3006"}]},{"sha":"e384a52971a8452b9c8eb32ed862e88cd828ee8e","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-21T19:43:08Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-21T20:26:58Z"},"message":"NamedUser.has_in_following","tree":{"sha":"becbc15254d47f078ee3e70bee997cea6ad201d0","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/becbc15254d47f078ee3e70bee997cea6ad201d0"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/e384a52971a8452b9c8eb32ed862e88cd828ee8e","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e384a52971a8452b9c8eb32ed862e88cd828ee8e","html_url":"https://github.com/jacquev6/PyGithub/commit/e384a52971a8452b9c8eb32ed862e88cd828ee8e","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e384a52971a8452b9c8eb32ed862e88cd828ee8e/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"0f369ba218414beb8d782904b1f09d4711c82cb7","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0f369ba218414beb8d782904b1f09d4711c82cb7","html_url":"https://github.com/jacquev6/PyGithub/commit/0f369ba218414beb8d782904b1f09d4711c82cb7"}]},{"sha":"1c993d3a5f54cd5c30c6e3407dfc216bdcf7c7cb","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-21T19:54:00Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-21T20:28:15Z"},"message":"Github.get_repos (to get all public repositories)","tree":{"sha":"3164e655a882efc8233e688223b17703f7ee0e81","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/3164e655a882efc8233e688223b17703f7ee0e81"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/1c993d3a5f54cd5c30c6e3407dfc216bdcf7c7cb","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1c993d3a5f54cd5c30c6e3407dfc216bdcf7c7cb","html_url":"https://github.com/jacquev6/PyGithub/commit/1c993d3a5f54cd5c30c6e3407dfc216bdcf7c7cb","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1c993d3a5f54cd5c30c6e3407dfc216bdcf7c7cb/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"e384a52971a8452b9c8eb32ed862e88cd828ee8e","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e384a52971a8452b9c8eb32ed862e88cd828ee8e","html_url":"https://github.com/jacquev6/PyGithub/commit/e384a52971a8452b9c8eb32ed862e88cd828ee8e"}]},{"sha":"70a7e9c83dec2bf6b549dc5c77d30b53afb32457","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T23:45:27Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T23:45:27Z"},"message":"Fix update","tree":{"sha":"f99d30ab74ea95fedefb33a8b1b2c77903fbd698","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/f99d30ab74ea95fedefb33a8b1b2c77903fbd698"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/70a7e9c83dec2bf6b549dc5c77d30b53afb32457","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/70a7e9c83dec2bf6b549dc5c77d30b53afb32457","html_url":"https://github.com/jacquev6/PyGithub/commit/70a7e9c83dec2bf6b549dc5c77d30b53afb32457","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/70a7e9c83dec2bf6b549dc5c77d30b53afb32457/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"5b09f6c82191601cad92076ad4761fe927c511ed","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5b09f6c82191601cad92076ad4761fe927c511ed","html_url":"https://github.com/jacquev6/PyGithub/commit/5b09f6c82191601cad92076ad4761fe927c511ed"}]},{"sha":"d457afd23ccb47d9f30f09a6ca2a8e32f17dccc7","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-22T00:45:10Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-22T00:45:10Z"},"message":"Add test record helper","tree":{"sha":"e6e15fccb5b256bba3db1d4fc89088b733de227b","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/e6e15fccb5b256bba3db1d4fc89088b733de227b"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/d457afd23ccb47d9f30f09a6ca2a8e32f17dccc7","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/d457afd23ccb47d9f30f09a6ca2a8e32f17dccc7","html_url":"https://github.com/jacquev6/PyGithub/commit/d457afd23ccb47d9f30f09a6ca2a8e32f17dccc7","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/d457afd23ccb47d9f30f09a6ca2a8e32f17dccc7/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"70a7e9c83dec2bf6b549dc5c77d30b53afb32457","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/70a7e9c83dec2bf6b549dc5c77d30b53afb32457","html_url":"https://github.com/jacquev6/PyGithub/commit/70a7e9c83dec2bf6b549dc5c77d30b53afb32457"}]},{"sha":"c7593e84c4a92a044b717b7311c2b6ad8d9a5917","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-22T02:20:10Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-22T02:20:10Z"},"message":"Add test case for conditional request","tree":{"sha":"bbf62558b39720fc7acab1c6b26e4b9260cdc897","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/bbf62558b39720fc7acab1c6b26e4b9260cdc897"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/c7593e84c4a92a044b717b7311c2b6ad8d9a5917","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c7593e84c4a92a044b717b7311c2b6ad8d9a5917","html_url":"https://github.com/jacquev6/PyGithub/commit/c7593e84c4a92a044b717b7311c2b6ad8d9a5917","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c7593e84c4a92a044b717b7311c2b6ad8d9a5917/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"d457afd23ccb47d9f30f09a6ca2a8e32f17dccc7","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/d457afd23ccb47d9f30f09a6ca2a8e32f17dccc7","html_url":"https://github.com/jacquev6/PyGithub/commit/d457afd23ccb47d9f30f09a6ca2a8e32f17dccc7"}]},{"sha":"5c475c7683b2a57ee053d35586248f24febb6ebe","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-22T08:12:38Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-22T08:12:38Z"},"message":"First review of #192 (pep8, headers... nothing important)\n\n./manage.sh check\n./manage.sh fix_headers","tree":{"sha":"c874a52834343436bb9e1062a9edb11739d0de2b","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/c874a52834343436bb9e1062a9edb11739d0de2b"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/5c475c7683b2a57ee053d35586248f24febb6ebe","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5c475c7683b2a57ee053d35586248f24febb6ebe","html_url":"https://github.com/jacquev6/PyGithub/commit/5c475c7683b2a57ee053d35586248f24febb6ebe","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5c475c7683b2a57ee053d35586248f24febb6ebe/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"aa3025271cd918883b31a42fb7b4ce03027b805c","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/aa3025271cd918883b31a42fb7b4ce03027b805c","html_url":"https://github.com/jacquev6/PyGithub/commit/aa3025271cd918883b31a42fb7b4ce03027b805c"}]},{"sha":"f2de1fbfcccd1bbb3da722489d361d1937e09860","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-22T08:22:07Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-22T08:22:07Z"},"message":"Don't fix headers in /build","tree":{"sha":"6151d6667cf979d47a44e9a4852f9e5894eea19a","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/6151d6667cf979d47a44e9a4852f9e5894eea19a"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/f2de1fbfcccd1bbb3da722489d361d1937e09860","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/f2de1fbfcccd1bbb3da722489d361d1937e09860","html_url":"https://github.com/jacquev6/PyGithub/commit/f2de1fbfcccd1bbb3da722489d361d1937e09860","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/f2de1fbfcccd1bbb3da722489d361d1937e09860/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"1c993d3a5f54cd5c30c6e3407dfc216bdcf7c7cb","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1c993d3a5f54cd5c30c6e3407dfc216bdcf7c7cb","html_url":"https://github.com/jacquev6/PyGithub/commit/1c993d3a5f54cd5c30c6e3407dfc216bdcf7c7cb"}]},{"sha":"8a2624e3a1591a36ecf5afdc6fcc84443d8145dd","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-22T08:30:14Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-22T08:30:14Z"},"message":"Merge branch 'topic/RememberHeaders' into develop (#192)\n\nConflicts:\n\tgithub/Issue.py\n\tgithub/MainClass.py\n\tgithub/PaginatedList.py\n\tgithub/Repository.py\n\tgithub/Requester.py","tree":{"sha":"61011f6ebafc003fa6561ed990691d0c21611ea2","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/61011f6ebafc003fa6561ed990691d0c21611ea2"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/8a2624e3a1591a36ecf5afdc6fcc84443d8145dd","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/8a2624e3a1591a36ecf5afdc6fcc84443d8145dd","html_url":"https://github.com/jacquev6/PyGithub/commit/8a2624e3a1591a36ecf5afdc6fcc84443d8145dd","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/8a2624e3a1591a36ecf5afdc6fcc84443d8145dd/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"f2de1fbfcccd1bbb3da722489d361d1937e09860","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/f2de1fbfcccd1bbb3da722489d361d1937e09860","html_url":"https://github.com/jacquev6/PyGithub/commit/f2de1fbfcccd1bbb3da722489d361d1937e09860"},{"sha":"5c475c7683b2a57ee053d35586248f24febb6ebe","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5c475c7683b2a57ee053d35586248f24febb6ebe","html_url":"https://github.com/jacquev6/PyGithub/commit/5c475c7683b2a57ee053d35586248f24febb6ebe"}]},{"sha":"ba5b0d5ea93d362ecd8b5a91701a9c62c385d008","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-22T08:44:38Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-22T08:44:38Z"},"message":"Fix merge of #192\n\nOne branch modified signature of constructors,\nanother branch added a call to a constructor.","tree":{"sha":"ea54567a0eff56ab2c1701783a2d46a9cd9b1b3d","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/ea54567a0eff56ab2c1701783a2d46a9cd9b1b3d"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/ba5b0d5ea93d362ecd8b5a91701a9c62c385d008","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ba5b0d5ea93d362ecd8b5a91701a9c62c385d008","html_url":"https://github.com/jacquev6/PyGithub/commit/ba5b0d5ea93d362ecd8b5a91701a9c62c385d008","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ba5b0d5ea93d362ecd8b5a91701a9c62c385d008/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"8a2624e3a1591a36ecf5afdc6fcc84443d8145dd","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/8a2624e3a1591a36ecf5afdc6fcc84443d8145dd","html_url":"https://github.com/jacquev6/PyGithub/commit/8a2624e3a1591a36ecf5afdc6fcc84443d8145dd"}]},{"sha":"cc1bcd5f2da1982a0836a488cf321d363bfcf5b5","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-22T09:01:51Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-22T09:01:51Z"},"message":"Merge branch 'develop' into topic/ConditionalRequest\n\nConflicts:\n\t.gitignore\n\tgithub/Requester.py","tree":{"sha":"0d8bb0e1e0d530a2061d0d898a96b0f0ad6a5f25","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/0d8bb0e1e0d530a2061d0d898a96b0f0ad6a5f25"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/cc1bcd5f2da1982a0836a488cf321d363bfcf5b5","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cc1bcd5f2da1982a0836a488cf321d363bfcf5b5","html_url":"https://github.com/jacquev6/PyGithub/commit/cc1bcd5f2da1982a0836a488cf321d363bfcf5b5","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cc1bcd5f2da1982a0836a488cf321d363bfcf5b5/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"c7593e84c4a92a044b717b7311c2b6ad8d9a5917","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c7593e84c4a92a044b717b7311c2b6ad8d9a5917","html_url":"https://github.com/jacquev6/PyGithub/commit/c7593e84c4a92a044b717b7311c2b6ad8d9a5917"},{"sha":"ba5b0d5ea93d362ecd8b5a91701a9c62c385d008","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ba5b0d5ea93d362ecd8b5a91701a9c62c385d008","html_url":"https://github.com/jacquev6/PyGithub/commit/ba5b0d5ea93d362ecd8b5a91701a9c62c385d008"}]},{"sha":"1787765a61958617d47e764a0bea2acd70c84f72","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-22T09:41:15Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-22T09:41:15Z"},"message":"Review of #189: use dict.get\n\nhttp://docs.python.org/2/library/stdtypes.html#dict.get","tree":{"sha":"7cb1da804d8cec4692c26b5a0d35827c151ddde4","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/7cb1da804d8cec4692c26b5a0d35827c151ddde4"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/1787765a61958617d47e764a0bea2acd70c84f72","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1787765a61958617d47e764a0bea2acd70c84f72","html_url":"https://github.com/jacquev6/PyGithub/commit/1787765a61958617d47e764a0bea2acd70c84f72","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1787765a61958617d47e764a0bea2acd70c84f72/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"cc1bcd5f2da1982a0836a488cf321d363bfcf5b5","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cc1bcd5f2da1982a0836a488cf321d363bfcf5b5","html_url":"https://github.com/jacquev6/PyGithub/commit/cc1bcd5f2da1982a0836a488cf321d363bfcf5b5"}]},{"sha":"0f74e4389b3c0fa57a83083ecfbbf5c331022674","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-22T10:12:38Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-22T10:12:38Z"},"message":"Review of #189: pep8, copyrights, style, remarks\n\nFor remarks, run: git grep \"#189\"\nThey are only my first thoughts while reviewing this pull request,\nand should be reviewed themselves.","tree":{"sha":"6704a63e77b81165cb7f8ff4c32bd8455fcdfbdb","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/6704a63e77b81165cb7f8ff4c32bd8455fcdfbdb"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/0f74e4389b3c0fa57a83083ecfbbf5c331022674","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0f74e4389b3c0fa57a83083ecfbbf5c331022674","html_url":"https://github.com/jacquev6/PyGithub/commit/0f74e4389b3c0fa57a83083ecfbbf5c331022674","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0f74e4389b3c0fa57a83083ecfbbf5c331022674/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"1787765a61958617d47e764a0bea2acd70c84f72","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1787765a61958617d47e764a0bea2acd70c84f72","html_url":"https://github.com/jacquev6/PyGithub/commit/1787765a61958617d47e764a0bea2acd70c84f72"}]},{"sha":"fb7325884ee0b8ae73f47bf13c6f36cacbc3131c","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-23T07:32:47Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-23T07:32:47Z"},"message":"Fix remarks on #189 to #193","tree":{"sha":"acda548d54ec2929d3f556bb09d72082c6cce74c","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/acda548d54ec2929d3f556bb09d72082c6cce74c"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/fb7325884ee0b8ae73f47bf13c6f36cacbc3131c","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/fb7325884ee0b8ae73f47bf13c6f36cacbc3131c","html_url":"https://github.com/jacquev6/PyGithub/commit/fb7325884ee0b8ae73f47bf13c6f36cacbc3131c","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/fb7325884ee0b8ae73f47bf13c6f36cacbc3131c/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"0f74e4389b3c0fa57a83083ecfbbf5c331022674","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0f74e4389b3c0fa57a83083ecfbbf5c331022674","html_url":"https://github.com/jacquev6/PyGithub/commit/0f74e4389b3c0fa57a83083ecfbbf5c331022674"}]},{"sha":"0413c87c12e688fb4fc38d978a2f275ef791cd48","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-23T07:39:19Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-23T07:39:19Z"},"message":"Remove _record_.py (#193)\n\nAccording to https://github.com/jacquev6/PyGithub/commit/0f74e4389b3c0fa57a83083ecfbbf5c331022674#commitcomment-3919786","tree":{"sha":"97108cad4736d71906a05fc573936659fb81f386","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/97108cad4736d71906a05fc573936659fb81f386"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/0413c87c12e688fb4fc38d978a2f275ef791cd48","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0413c87c12e688fb4fc38d978a2f275ef791cd48","html_url":"https://github.com/jacquev6/PyGithub/commit/0413c87c12e688fb4fc38d978a2f275ef791cd48","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0413c87c12e688fb4fc38d978a2f275ef791cd48/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"fb7325884ee0b8ae73f47bf13c6f36cacbc3131c","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/fb7325884ee0b8ae73f47bf13c6f36cacbc3131c","html_url":"https://github.com/jacquev6/PyGithub/commit/fb7325884ee0b8ae73f47bf13c6f36cacbc3131c"}]},{"sha":"bc3b819ac554a2132427c9ffe629ef371511213e","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-23T07:50:51Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-23T07:50:51Z"},"message":"Separate tests for conditional requests (#193)","tree":{"sha":"cebebf12f44ca09fa382c2673f9577bce01d09f8","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/cebebf12f44ca09fa382c2673f9577bce01d09f8"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/bc3b819ac554a2132427c9ffe629ef371511213e","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/bc3b819ac554a2132427c9ffe629ef371511213e","html_url":"https://github.com/jacquev6/PyGithub/commit/bc3b819ac554a2132427c9ffe629ef371511213e","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/bc3b819ac554a2132427c9ffe629ef371511213e/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"0413c87c12e688fb4fc38d978a2f275ef791cd48","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0413c87c12e688fb4fc38d978a2f275ef791cd48","html_url":"https://github.com/jacquev6/PyGithub/commit/0413c87c12e688fb4fc38d978a2f275ef791cd48"}]},{"sha":"bae0a37d180a4b224c6aa808d03722908109c57d","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-23T09:10:35Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-23T09:10:35Z"},"message":"#193: Don't use a try-except for a usual execution flow in GithubObject.update\n\n(and factorize assignment of headers in _storeAndUseAttributes,\nas done for rawData)","tree":{"sha":"d56e13d46c851d333baf0d69053dc6527f1e04d7","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/d56e13d46c851d333baf0d69053dc6527f1e04d7"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/bae0a37d180a4b224c6aa808d03722908109c57d","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/bae0a37d180a4b224c6aa808d03722908109c57d","html_url":"https://github.com/jacquev6/PyGithub/commit/bae0a37d180a4b224c6aa808d03722908109c57d","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/bae0a37d180a4b224c6aa808d03722908109c57d/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"bc3b819ac554a2132427c9ffe629ef371511213e","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/bc3b819ac554a2132427c9ffe629ef371511213e","html_url":"https://github.com/jacquev6/PyGithub/commit/bc3b819ac554a2132427c9ffe629ef371511213e"}]},{"sha":"03d7fb012e9d032165c43f93a4c67bc29af9366f","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-23T09:15:17Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-23T09:15:17Z"},"message":"#193: Add remarks","tree":{"sha":"887977aa41abc6624fdea3d1ffd185decc57ab90","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/887977aa41abc6624fdea3d1ffd185decc57ab90"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/03d7fb012e9d032165c43f93a4c67bc29af9366f","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/03d7fb012e9d032165c43f93a4c67bc29af9366f","html_url":"https://github.com/jacquev6/PyGithub/commit/03d7fb012e9d032165c43f93a4c67bc29af9366f","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/03d7fb012e9d032165c43f93a4c67bc29af9366f/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"bae0a37d180a4b224c6aa808d03722908109c57d","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/bae0a37d180a4b224c6aa808d03722908109c57d","html_url":"https://github.com/jacquev6/PyGithub/commit/bae0a37d180a4b224c6aa808d03722908109c57d"}]},{"sha":"64cf539c83174f95b3410c7decd2549424385ce1","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-23T09:31:01Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-23T09:31:01Z"},"message":"#193: Add a param to Requester.requestXxx for request headers","tree":{"sha":"d8ce377a13245803f223ae5bf50c09db0544a1be","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/d8ce377a13245803f223ae5bf50c09db0544a1be"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/64cf539c83174f95b3410c7decd2549424385ce1","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/64cf539c83174f95b3410c7decd2549424385ce1","html_url":"https://github.com/jacquev6/PyGithub/commit/64cf539c83174f95b3410c7decd2549424385ce1","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/64cf539c83174f95b3410c7decd2549424385ce1/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"03d7fb012e9d032165c43f93a4c67bc29af9366f","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/03d7fb012e9d032165c43f93a4c67bc29af9366f","html_url":"https://github.com/jacquev6/PyGithub/commit/03d7fb012e9d032165c43f93a4c67bc29af9366f"}]},{"sha":"e084b5138106d4ad371a69ca9519862f09c855ae","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-23T12:51:34Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-23T12:51:34Z"},"message":"#193: Fix test coverage","tree":{"sha":"e0dc9f5f816e7e6503d60b39b69d5652bd2b77ce","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/e0dc9f5f816e7e6503d60b39b69d5652bd2b77ce"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/e084b5138106d4ad371a69ca9519862f09c855ae","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e084b5138106d4ad371a69ca9519862f09c855ae","html_url":"https://github.com/jacquev6/PyGithub/commit/e084b5138106d4ad371a69ca9519862f09c855ae","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e084b5138106d4ad371a69ca9519862f09c855ae/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"64cf539c83174f95b3410c7decd2549424385ce1","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/64cf539c83174f95b3410c7decd2549424385ce1","html_url":"https://github.com/jacquev6/PyGithub/commit/64cf539c83174f95b3410c7decd2549424385ce1"}]},{"sha":"020a3c9917f42d98c1761527825061d2db8352fd","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-23T16:45:16Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-23T16:45:16Z"},"message":"Move method update to CompletableGithubObject","tree":{"sha":"4c3e987d82799789d0c2586e509cea8c71e0029b","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/4c3e987d82799789d0c2586e509cea8c71e0029b"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/020a3c9917f42d98c1761527825061d2db8352fd","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/020a3c9917f42d98c1761527825061d2db8352fd","html_url":"https://github.com/jacquev6/PyGithub/commit/020a3c9917f42d98c1761527825061d2db8352fd","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/020a3c9917f42d98c1761527825061d2db8352fd/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"e084b5138106d4ad371a69ca9519862f09c855ae","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e084b5138106d4ad371a69ca9519862f09c855ae","html_url":"https://github.com/jacquev6/PyGithub/commit/e084b5138106d4ad371a69ca9519862f09c855ae"}]},{"sha":"fb6980ce36766e4dd1ab03b48ac4b5adf876dc84","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-23T17:05:53Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-08-23T17:05:53Z"},"message":"Move the DEBUG_ON_RESPONSE call to Requester.__requestEncode","tree":{"sha":"a7fbeaacbdba31ceb21a46bedfce268411d8dfb8","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/a7fbeaacbdba31ceb21a46bedfce268411d8dfb8"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/fb6980ce36766e4dd1ab03b48ac4b5adf876dc84","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/fb6980ce36766e4dd1ab03b48ac4b5adf876dc84","html_url":"https://github.com/jacquev6/PyGithub/commit/fb6980ce36766e4dd1ab03b48ac4b5adf876dc84","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/fb6980ce36766e4dd1ab03b48ac4b5adf876dc84/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"020a3c9917f42d98c1761527825061d2db8352fd","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/020a3c9917f42d98c1761527825061d2db8352fd","html_url":"https://github.com/jacquev6/PyGithub/commit/020a3c9917f42d98c1761527825061d2db8352fd"}]},{"sha":"38b137fb37c0fdc74f8802a4184518e105db9121","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-23T23:21:41Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-23T23:21:41Z"},"message":"Fix line ending","tree":{"sha":"a4260390d7e3d478aed05009657f4632d25dad84","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/a4260390d7e3d478aed05009657f4632d25dad84"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/38b137fb37c0fdc74f8802a4184518e105db9121","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/38b137fb37c0fdc74f8802a4184518e105db9121","html_url":"https://github.com/jacquev6/PyGithub/commit/38b137fb37c0fdc74f8802a4184518e105db9121","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/38b137fb37c0fdc74f8802a4184518e105db9121/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"committer":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"parents":[{"sha":"fb6980ce36766e4dd1ab03b48ac4b5adf876dc84","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/fb6980ce36766e4dd1ab03b48ac4b5adf876dc84","html_url":"https://github.com/jacquev6/PyGithub/commit/fb6980ce36766e4dd1ab03b48ac4b5adf876dc84"}]},{"sha":"3fe9edf08707d2c289d4e6a05f7521751cf9f8e4","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-09-04T21:28:44Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-09-04T21:28:44Z"},"message":"Implement object persistence\n\nThis follows my proposal for #193.\nLargely inspired by AKFish's work.","tree":{"sha":"b6b62d90fe1b65d103b74fe11a8f01f3ddd1851a","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/b6b62d90fe1b65d103b74fe11a8f01f3ddd1851a"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/3fe9edf08707d2c289d4e6a05f7521751cf9f8e4","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/3fe9edf08707d2c289d4e6a05f7521751cf9f8e4","html_url":"https://github.com/jacquev6/PyGithub/commit/3fe9edf08707d2c289d4e6a05f7521751cf9f8e4","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/3fe9edf08707d2c289d4e6a05f7521751cf9f8e4/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"38b137fb37c0fdc74f8802a4184518e105db9121","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/38b137fb37c0fdc74f8802a4184518e105db9121","html_url":"https://github.com/jacquev6/PyGithub/commit/38b137fb37c0fdc74f8802a4184518e105db9121"}]},{"sha":"c412d49c9fd28406156dff664a1f848da1e95d0b","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-09-05T15:50:57Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-09-05T15:50:57Z"},"message":"Adapt to Python 2.5","tree":{"sha":"6c7ed56808fdd9a1a17b38f397fafd0e0cf1ae2e","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/6c7ed56808fdd9a1a17b38f397fafd0e0cf1ae2e"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/c412d49c9fd28406156dff664a1f848da1e95d0b","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c412d49c9fd28406156dff664a1f848da1e95d0b","html_url":"https://github.com/jacquev6/PyGithub/commit/c412d49c9fd28406156dff664a1f848da1e95d0b","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c412d49c9fd28406156dff664a1f848da1e95d0b/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"3fe9edf08707d2c289d4e6a05f7521751cf9f8e4","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/3fe9edf08707d2c289d4e6a05f7521751cf9f8e4","html_url":"https://github.com/jacquev6/PyGithub/commit/3fe9edf08707d2c289d4e6a05f7521751cf9f8e4"}]},{"sha":"6cb149dce41cf1f110ae1f1d6a5c6bdd66790b69","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-09-05T15:53:31Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-09-05T15:53:31Z"},"message":"Adapt to Python 2.5 (again:))","tree":{"sha":"7007556096f9edd3ecd48dfe302748ba9d238273","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/7007556096f9edd3ecd48dfe302748ba9d238273"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/6cb149dce41cf1f110ae1f1d6a5c6bdd66790b69","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6cb149dce41cf1f110ae1f1d6a5c6bdd66790b69","html_url":"https://github.com/jacquev6/PyGithub/commit/6cb149dce41cf1f110ae1f1d6a5c6bdd66790b69","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6cb149dce41cf1f110ae1f1d6a5c6bdd66790b69/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"c412d49c9fd28406156dff664a1f848da1e95d0b","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c412d49c9fd28406156dff664a1f848da1e95d0b","html_url":"https://github.com/jacquev6/PyGithub/commit/c412d49c9fd28406156dff664a1f848da1e95d0b"}]},{"sha":"d18d1b0354a5c7de920b30ef1e5950a5479dd866","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-09-05T16:01:03Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-09-05T16:01:03Z"},"message":"Update readme","tree":{"sha":"140c1b06794ac9a8130cf3612c604c83f973358f","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/140c1b06794ac9a8130cf3612c604c83f973358f"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/d18d1b0354a5c7de920b30ef1e5950a5479dd866","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/d18d1b0354a5c7de920b30ef1e5950a5479dd866","html_url":"https://github.com/jacquev6/PyGithub/commit/d18d1b0354a5c7de920b30ef1e5950a5479dd866","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/d18d1b0354a5c7de920b30ef1e5950a5479dd866/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"6cb149dce41cf1f110ae1f1d6a5c6bdd66790b69","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6cb149dce41cf1f110ae1f1d6a5c6bdd66790b69","html_url":"https://github.com/jacquev6/PyGithub/commit/6cb149dce41cf1f110ae1f1d6a5c6bdd66790b69"}]},{"sha":"2e3ab5cc9295c4e3c3c6a0d1c179a49df0db96e5","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-09-05T16:04:49Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-09-05T16:04:49Z"},"message":"Say thank you to stargazers","tree":{"sha":"6c1c7aadddfcbc9a65fae7d164a9432ab3ce452a","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/6c1c7aadddfcbc9a65fae7d164a9432ab3ce452a"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/2e3ab5cc9295c4e3c3c6a0d1c179a49df0db96e5","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2e3ab5cc9295c4e3c3c6a0d1c179a49df0db96e5","html_url":"https://github.com/jacquev6/PyGithub/commit/2e3ab5cc9295c4e3c3c6a0d1c179a49df0db96e5","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2e3ab5cc9295c4e3c3c6a0d1c179a49df0db96e5/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"ba5b0d5ea93d362ecd8b5a91701a9c62c385d008","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ba5b0d5ea93d362ecd8b5a91701a9c62c385d008","html_url":"https://github.com/jacquev6/PyGithub/commit/ba5b0d5ea93d362ecd8b5a91701a9c62c385d008"}]},{"sha":"ab626114db1c798e9269daed295d1e79c36879bb","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-09-05T16:21:07Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-09-05T16:21:07Z"},"message":"Merge branch 'topic/ConditionalRequest' into develop\n\nConflicts:\n\tREADME.rst","tree":{"sha":"c15e38407a8fc7f086a7bf48e02aa5ca7be44e62","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/c15e38407a8fc7f086a7bf48e02aa5ca7be44e62"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/ab626114db1c798e9269daed295d1e79c36879bb","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ab626114db1c798e9269daed295d1e79c36879bb","html_url":"https://github.com/jacquev6/PyGithub/commit/ab626114db1c798e9269daed295d1e79c36879bb","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ab626114db1c798e9269daed295d1e79c36879bb/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"2e3ab5cc9295c4e3c3c6a0d1c179a49df0db96e5","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2e3ab5cc9295c4e3c3c6a0d1c179a49df0db96e5","html_url":"https://github.com/jacquev6/PyGithub/commit/2e3ab5cc9295c4e3c3c6a0d1c179a49df0db96e5"},{"sha":"d18d1b0354a5c7de920b30ef1e5950a5479dd866","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/d18d1b0354a5c7de920b30ef1e5950a5479dd866","html_url":"https://github.com/jacquev6/PyGithub/commit/d18d1b0354a5c7de920b30ef1e5950a5479dd866"}]},{"sha":"1d0ba7ef6461ccdd25af74bfed61d3ceb5bc926d","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-09-05T16:23:47Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-09-05T16:23:47Z"},"message":"Don't assume there is a 'message' field in case of error","tree":{"sha":"1eaf1c66ede16d89d6067a0c23f23f93abf83c5e","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/1eaf1c66ede16d89d6067a0c23f23f93abf83c5e"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/1d0ba7ef6461ccdd25af74bfed61d3ceb5bc926d","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1d0ba7ef6461ccdd25af74bfed61d3ceb5bc926d","html_url":"https://github.com/jacquev6/PyGithub/commit/1d0ba7ef6461ccdd25af74bfed61d3ceb5bc926d","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1d0ba7ef6461ccdd25af74bfed61d3ceb5bc926d/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"ab626114db1c798e9269daed295d1e79c36879bb","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ab626114db1c798e9269daed295d1e79c36879bb","html_url":"https://github.com/jacquev6/PyGithub/commit/ab626114db1c798e9269daed295d1e79c36879bb"}]},{"sha":"dc610dfaac50dd5bbbd572986cda35f6729aee5b","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-09-06T08:51:50Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-09-06T08:51:50Z"},"message":"Small fixes and todos","tree":{"sha":"d54e7b47327b5bb25ba38338bfcc4a0c0a61992e","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/d54e7b47327b5bb25ba38338bfcc4a0c0a61992e"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/dc610dfaac50dd5bbbd572986cda35f6729aee5b","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/dc610dfaac50dd5bbbd572986cda35f6729aee5b","html_url":"https://github.com/jacquev6/PyGithub/commit/dc610dfaac50dd5bbbd572986cda35f6729aee5b","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/dc610dfaac50dd5bbbd572986cda35f6729aee5b/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"1d0ba7ef6461ccdd25af74bfed61d3ceb5bc926d","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1d0ba7ef6461ccdd25af74bfed61d3ceb5bc926d","html_url":"https://github.com/jacquev6/PyGithub/commit/1d0ba7ef6461ccdd25af74bfed61d3ceb5bc926d"}]},{"sha":"2081675afbfed404f6a580bce0ec363bebbfd98b","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-09-06T09:00:59Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-09-06T09:00:59Z"},"message":"Fix doc generation","tree":{"sha":"7aafacfc490987a44d3c73a72669e07d900f4ea9","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/7aafacfc490987a44d3c73a72669e07d900f4ea9"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/2081675afbfed404f6a580bce0ec363bebbfd98b","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2081675afbfed404f6a580bce0ec363bebbfd98b","html_url":"https://github.com/jacquev6/PyGithub/commit/2081675afbfed404f6a580bce0ec363bebbfd98b","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2081675afbfed404f6a580bce0ec363bebbfd98b/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"dc610dfaac50dd5bbbd572986cda35f6729aee5b","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/dc610dfaac50dd5bbbd572986cda35f6729aee5b","html_url":"https://github.com/jacquev6/PyGithub/commit/dc610dfaac50dd5bbbd572986cda35f6729aee5b"}]},{"sha":"f2feb81dae1b28af80c559db7328f2d6fe017911","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-09-05T16:56:56Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-09-06T09:01:32Z"},"message":"Add default parameters to greatly reduce code redoundancy","tree":{"sha":"075abd28eec29754d4ac96d94fa00e0ee41e9e09","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/075abd28eec29754d4ac96d94fa00e0ee41e9e09"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/f2feb81dae1b28af80c559db7328f2d6fe017911","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/f2feb81dae1b28af80c559db7328f2d6fe017911","html_url":"https://github.com/jacquev6/PyGithub/commit/f2feb81dae1b28af80c559db7328f2d6fe017911","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/f2feb81dae1b28af80c559db7328f2d6fe017911/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"2081675afbfed404f6a580bce0ec363bebbfd98b","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2081675afbfed404f6a580bce0ec363bebbfd98b","html_url":"https://github.com/jacquev6/PyGithub/commit/2081675afbfed404f6a580bce0ec363bebbfd98b"}]},{"sha":"c819580ce872f251e8ec23deee95d9fb15ca19c9","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-09-06T08:51:13Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-09-06T09:01:33Z"},"message":"Get status of Github API (#188)","tree":{"sha":"e726ab47b3248869efd35a5f989b15eece62cbe9","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/e726ab47b3248869efd35a5f989b15eece62cbe9"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/c819580ce872f251e8ec23deee95d9fb15ca19c9","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c819580ce872f251e8ec23deee95d9fb15ca19c9","html_url":"https://github.com/jacquev6/PyGithub/commit/c819580ce872f251e8ec23deee95d9fb15ca19c9","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c819580ce872f251e8ec23deee95d9fb15ca19c9/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"f2feb81dae1b28af80c559db7328f2d6fe017911","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/f2feb81dae1b28af80c559db7328f2d6fe017911","html_url":"https://github.com/jacquev6/PyGithub/commit/f2feb81dae1b28af80c559db7328f2d6fe017911"}]},{"sha":"a6597499c2f82e063074a3036d875417d5efa296","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-09-06T09:04:41Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-09-06T09:04:41Z"},"message":"Merge branch 'topic/ApiStatus' into develop","tree":{"sha":"e726ab47b3248869efd35a5f989b15eece62cbe9","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/e726ab47b3248869efd35a5f989b15eece62cbe9"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/a6597499c2f82e063074a3036d875417d5efa296","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a6597499c2f82e063074a3036d875417d5efa296","html_url":"https://github.com/jacquev6/PyGithub/commit/a6597499c2f82e063074a3036d875417d5efa296","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a6597499c2f82e063074a3036d875417d5efa296/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"2081675afbfed404f6a580bce0ec363bebbfd98b","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2081675afbfed404f6a580bce0ec363bebbfd98b","html_url":"https://github.com/jacquev6/PyGithub/commit/2081675afbfed404f6a580bce0ec363bebbfd98b"},{"sha":"c819580ce872f251e8ec23deee95d9fb15ca19c9","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c819580ce872f251e8ec23deee95d9fb15ca19c9","html_url":"https://github.com/jacquev6/PyGithub/commit/c819580ce872f251e8ec23deee95d9fb15ca19c9"}]}],"files":[{"sha":"fa4ed127848a478d04d033a1e4dd1330c285e120","filename":".gitignore","status":"modified","additions":5,"deletions":0,"changes":5,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/.gitignore","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/.gitignore","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/.gitignore?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -1,6 +1,7 @@\n ############################ Copyrights and license ############################\n # #\n # Copyright 2012 Vincent Jacques #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #\n@@ -28,3 +29,7 @@ GithubCredentials.py\n /PyGithub.egg-info/\n /.coverage\n /developer.github.com/\n+\n+*.cfg\n+*.bat\n+*.py~"},{"sha":"32e67f35289f9572bab58ac717f51e36a303cd9e","filename":"README.rst","status":"modified","additions":14,"deletions":22,"changes":36,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/README.rst","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/README.rst","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/README.rst?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -7,18 +7,25 @@ Should you have any question, any remark, or if you find a bug, or if there is s\n \n PyGithub is stable. I will maintain it up to date with the API, and fix bugs if any, but I don't plan new heavy developments.\n \n+\n What's new?\n ===========\n \n+Thank you, dear stargazers!\n+---------------------------\n+\n+Starting today (September 05th, 2013), we now need more than 8 bits to store the number of `stargazers `_! Thank you so much!\n \n-`Version 1.18.0 `_ (August 21st, 2013) (Bénodet edition)\n--------------------------------------------------------------------------------------------------------------------------------\n+`Version 1.19.0 `_ (September ??th, 2013) (AKFish's edition)\n+-----------------------------------------------------------------------------------------------------------------------------------\n \n-* `Issues `_' ``repository`` attribute will never be ``None``. Thank you `stuglaser `_ for the pull request\n-* No more false assumption on `rate_limiting `_, and creation of ``rate_limiting_resettime``. Thank you `edjackson `_ for the pull request\n-* `New `_ parameters ``since`` and ``until`` to ``Repository.get_commits``. Thank you `apetresc `_ for the pull request\n-* `Catch `_ Json parsing exception for some internal server errors, and throw a better exception. Thank you `MarkRoddy `_ for the pull request\n-* `Allow `_ reversed iteration of ``PaginatedList``s. Thank you `davidbrai `_ for the pull request\n+* Implement `conditional requests `_ by the method ``GithubObject.update``. Thank you very much `akfish `_ for the pull request and your collaboration!\n+* Implement persistence of PyGithub objects: ``Github.save`` and ``Github.load``. Don't forget to ``update`` your objects after loading them, it won't decrease your rate limiting quota if nothing has changed. Again, thank you `akfish `_\n+* Implement ``Github.get_repos`` to get all public repositories\n+* Implement ``NamedUser.has_in_following``\n+* Technical change: HTTP headers are now stored in retrieved objects. This is a base for new functionalities. Thank you `akfish `_ for the pull request\n+* Use the new URL to fork gists (minor change)\n+* Use the new URL to test hooks (minor change)\n \n What's missing?\n ===============\n@@ -30,10 +37,6 @@ Github API v3 URLs not (yet) covered by PyGithub\n \n * ``/applications/:client_id/tokens/:access_token`` (GET)\n * ``/feeds`` (GET)\n-* ``/gists/:id/forks`` (POST)\n-\n- * instead, ``Gist.create_fork`` calls the old URL ``/gists/:id/fork``\n-\n * ``/meta`` (GET)\n * ``/notifications`` (PUT)\n * ``/notifications/emails`` (GET)\n@@ -54,10 +57,6 @@ Github API v3 URLs not (yet) covered by PyGithub\n \n * ``/repos/:owner/:repo/contents/:path`` (DELETE)\n * ``/repos/:owner/:repo/contents/:path`` (PUT)\n-* ``/repos/:owner/:repo/hooks/:id/tests`` (POST)\n-\n- * instead, ``Hook.test`` calls the old URL ``/repos/:owner/:repo/hooks/:id/test``\n-\n * ``/repos/:owner/:repo/notifications`` (GET)\n * ``/repos/:owner/:repo/notifications`` (PUT)\n * ``/repos/:owner/:repo/stats/code_frequency`` (GET)\n@@ -68,17 +67,10 @@ Github API v3 URLs not (yet) covered by PyGithub\n * ``/repos/:owner/:repo/subscription`` (DELETE)\n * ``/repos/:owner/:repo/subscription`` (GET)\n * ``/repos/:owner/:repo/subscription`` (PUT)\n-* ``/repositories`` (GET)\n-\n- * should be called in method ``Github.get_repos``\n-\n * ``/search/code`` (GET)\n * ``/search/issues`` (GET)\n * ``/search/repositories`` (GET)\n * ``/search/users`` (GET)\n-* ``/users/:user/following/:target_user`` (GET)\n-\n- * should be called in method ``NamedUser.has_in_following``\n \n Documentation\n ============="},{"sha":"9f856df33d80af7c4699cabf13444e7c69a121da","filename":"doc/conf.py","status":"modified","additions":2,"deletions":1,"changes":3,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/doc/conf.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/doc/conf.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/doc/conf.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -281,6 +281,7 @@\n \t\t\"../github/MainClass.py\",\n \t\t\"../github/PaginatedList.py\",\n \t\t\"../github/Requester.py\",\n+\t\t\"../github/Consts.py\",\n \t\t\"../github/__init__.py\"]\n ]\n \n@@ -318,7 +319,7 @@\n \t\t\t\tif not isProperty:\n \t\t\t\t\tassert method is None, method + \" has no :calls: section\"\n \t\t\t\t\tmethod = line.split(\"(\")[0][8:]\n-\t\t\t\t\tif method in [\"_initAttributes\", \"_useAttributes\", \"__init__\", \"__create_pull_1\", \"__create_pull_2\", \"__create_pull\", \"_hub\", \"__get_FIX_REPO_GET_GIT_REF\", \"__set_FIX_REPO_GET_GIT_REF\", \"__get_per_page\", \"__set_per_page\"]:\n+\t\t\t\t\tif method in [\"_initAttributes\", \"_useAttributes\", \"__init__\", \"__create_pull_1\", \"__create_pull_2\", \"__create_pull\", \"_hub\", \"__get_FIX_REPO_GET_GIT_REF\", \"__set_FIX_REPO_GET_GIT_REF\", \"__get_per_page\", \"__set_per_page\", \"create_from_raw_data\", \"dump\", \"load\"]:\n \t\t\t\t\t\tmethod = None\n \t\t\t\tisProperty = False\n \t\t\tif line.startswith(\" :calls: `\"):"},{"sha":"67a289c3acb10bb39a3228b80e912fb097a0db25","filename":"github/AuthenticatedUser.py","status":"modified","additions":36,"deletions":78,"changes":114,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/AuthenticatedUser.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/AuthenticatedUser.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/AuthenticatedUser.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -5,6 +5,7 @@\n # Copyright 2012 Steve English #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #\n@@ -256,8 +257,7 @@ def add_to_emails(self, *emails):\n headers, data = self._requester.requestJsonAndCheck(\n \"POST\",\n \"/user/emails\",\n- None,\n- post_parameters\n+ input=post_parameters\n )\n \n def add_to_following(self, following):\n@@ -269,9 +269,7 @@ def add_to_following(self, following):\n assert isinstance(following, github.NamedUser.NamedUser), following\n headers, data = self._requester.requestJsonAndCheck(\n \"PUT\",\n- \"/user/following/\" + following._identity,\n- None,\n- None\n+ \"/user/following/\" + following._identity\n )\n \n def add_to_starred(self, starred):\n@@ -283,9 +281,7 @@ def add_to_starred(self, starred):\n assert isinstance(starred, github.Repository.Repository), starred\n headers, data = self._requester.requestJsonAndCheck(\n \"PUT\",\n- \"/user/starred/\" + starred._identity,\n- None,\n- None\n+ \"/user/starred/\" + starred._identity\n )\n \n def add_to_subscriptions(self, subscription):\n@@ -297,9 +293,7 @@ def add_to_subscriptions(self, subscription):\n assert isinstance(subscription, github.Repository.Repository), subscription\n headers, data = self._requester.requestJsonAndCheck(\n \"PUT\",\n- \"/user/subscriptions/\" + subscription._identity,\n- None,\n- None\n+ \"/user/subscriptions/\" + subscription._identity\n )\n \n def add_to_watched(self, watched):\n@@ -311,9 +305,7 @@ def add_to_watched(self, watched):\n assert isinstance(watched, github.Repository.Repository), watched\n headers, data = self._requester.requestJsonAndCheck(\n \"PUT\",\n- \"/user/watched/\" + watched._identity,\n- None,\n- None\n+ \"/user/watched/\" + watched._identity\n )\n \n def create_authorization(self, scopes=github.GithubObject.NotSet, note=github.GithubObject.NotSet, note_url=github.GithubObject.NotSet, client_id=github.GithubObject.NotSet, client_secret=github.GithubObject.NotSet):\n@@ -345,10 +337,9 @@ def create_authorization(self, scopes=github.GithubObject.NotSet, note=github.Gi\n headers, data = self._requester.requestJsonAndCheck(\n \"POST\",\n \"/authorizations\",\n- None,\n- post_parameters\n+ input=post_parameters\n )\n- return github.Authorization.Authorization(self._requester, data, completed=True)\n+ return github.Authorization.Authorization(self._requester, headers, data, completed=True)\n \n def create_fork(self, repo):\n \"\"\"\n@@ -359,11 +350,9 @@ def create_fork(self, repo):\n assert isinstance(repo, github.Repository.Repository), repo\n headers, data = self._requester.requestJsonAndCheck(\n \"POST\",\n- \"/repos/\" + repo.owner.login + \"/\" + repo.name + \"/forks\",\n- None,\n- None\n+ \"/repos/\" + repo.owner.login + \"/\" + repo.name + \"/forks\"\n )\n- return github.Repository.Repository(self._requester, data, completed=True)\n+ return github.Repository.Repository(self._requester, headers, data, completed=True)\n \n def create_gist(self, public, files, description=github.GithubObject.NotSet):\n \"\"\"\n@@ -385,10 +374,9 @@ def create_gist(self, public, files, description=github.GithubObject.NotSet):\n headers, data = self._requester.requestJsonAndCheck(\n \"POST\",\n \"/gists\",\n- None,\n- post_parameters\n+ input=post_parameters\n )\n- return github.Gist.Gist(self._requester, data, completed=True)\n+ return github.Gist.Gist(self._requester, headers, data, completed=True)\n \n def create_key(self, title, key):\n \"\"\"\n@@ -406,10 +394,9 @@ def create_key(self, title, key):\n headers, data = self._requester.requestJsonAndCheck(\n \"POST\",\n \"/user/keys\",\n- None,\n- post_parameters\n+ input=post_parameters\n )\n- return github.UserKey.UserKey(self._requester, data, completed=True)\n+ return github.UserKey.UserKey(self._requester, headers, data, completed=True)\n \n def create_repo(self, name, description=github.GithubObject.NotSet, homepage=github.GithubObject.NotSet, private=github.GithubObject.NotSet, has_issues=github.GithubObject.NotSet, has_wiki=github.GithubObject.NotSet, has_downloads=github.GithubObject.NotSet, auto_init=github.GithubObject.NotSet, gitignore_template=github.GithubObject.NotSet):\n \"\"\"\n@@ -456,10 +443,9 @@ def create_repo(self, name, description=github.GithubObject.NotSet, homepage=git\n headers, data = self._requester.requestJsonAndCheck(\n \"POST\",\n \"/user/repos\",\n- None,\n- post_parameters\n+ input=post_parameters\n )\n- return github.Repository.Repository(self._requester, data, completed=True)\n+ return github.Repository.Repository(self._requester, headers, data, completed=True)\n \n def edit(self, name=github.GithubObject.NotSet, email=github.GithubObject.NotSet, blog=github.GithubObject.NotSet, company=github.GithubObject.NotSet, location=github.GithubObject.NotSet, hireable=github.GithubObject.NotSet, bio=github.GithubObject.NotSet):\n \"\"\"\n@@ -498,8 +484,7 @@ def edit(self, name=github.GithubObject.NotSet, email=github.GithubObject.NotSet\n headers, data = self._requester.requestJsonAndCheck(\n \"PATCH\",\n \"/user\",\n- None,\n- post_parameters\n+ input=post_parameters\n )\n self._useAttributes(data)\n \n@@ -512,11 +497,9 @@ def get_authorization(self, id):\n assert isinstance(id, (int, long)), id\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n- \"/authorizations/\" + str(id),\n- None,\n- None\n+ \"/authorizations/\" + str(id)\n )\n- return github.Authorization.Authorization(self._requester, data, completed=True)\n+ return github.Authorization.Authorization(self._requester, headers, data, completed=True)\n \n def get_authorizations(self):\n \"\"\"\n@@ -537,9 +520,7 @@ def get_emails(self):\n \"\"\"\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n- \"/user/emails\",\n- None,\n- None\n+ \"/user/emails\"\n )\n return data\n \n@@ -676,11 +657,9 @@ def get_key(self, id):\n assert isinstance(id, (int, long)), id\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n- \"/user/keys/\" + str(id),\n- None,\n- None\n+ \"/user/keys/\" + str(id)\n )\n- return github.UserKey.UserKey(self._requester, data, completed=True)\n+ return github.UserKey.UserKey(self._requester, headers, data, completed=True)\n \n def get_keys(self):\n \"\"\"\n@@ -703,11 +682,9 @@ def get_notification(self, id):\n assert isinstance(id, (str, unicode)), id\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n- \"/notifications/threads/\" + id,\n- None,\n- None\n+ \"/notifications/threads/\" + id\n )\n- return github.Notification.Notification(self._requester, data, completed=True)\n+ return github.Notification.Notification(self._requester, headers, data, completed=True)\n \n def get_notifications(self, all=github.GithubObject.NotSet, participating=github.GithubObject.NotSet):\n \"\"\"\n@@ -767,11 +744,9 @@ def get_repo(self, name):\n assert isinstance(name, (str, unicode)), name\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n- \"/repos/\" + self.login + \"/\" + name,\n- None,\n- None\n+ \"/repos/\" + self.login + \"/\" + name\n )\n- return github.Repository.Repository(self._requester, data, completed=True)\n+ return github.Repository.Repository(self._requester, headers, data, completed=True)\n \n def get_repos(self, type=github.GithubObject.NotSet, sort=github.GithubObject.NotSet, direction=github.GithubObject.NotSet):\n \"\"\"\n@@ -855,9 +830,7 @@ def has_in_following(self, following):\n assert isinstance(following, github.NamedUser.NamedUser), following\n status, headers, data = self._requester.requestJson(\n \"GET\",\n- \"/user/following/\" + following._identity,\n- None,\n- None\n+ \"/user/following/\" + following._identity\n )\n return status == 204\n \n@@ -870,9 +843,7 @@ def has_in_starred(self, starred):\n assert isinstance(starred, github.Repository.Repository), starred\n status, headers, data = self._requester.requestJson(\n \"GET\",\n- \"/user/starred/\" + starred._identity,\n- None,\n- None\n+ \"/user/starred/\" + starred._identity\n )\n return status == 204\n \n@@ -885,9 +856,7 @@ def has_in_subscriptions(self, subscription):\n assert isinstance(subscription, github.Repository.Repository), subscription\n status, headers, data = self._requester.requestJson(\n \"GET\",\n- \"/user/subscriptions/\" + subscription._identity,\n- None,\n- None\n+ \"/user/subscriptions/\" + subscription._identity\n )\n return status == 204\n \n@@ -900,9 +869,7 @@ def has_in_watched(self, watched):\n assert isinstance(watched, github.Repository.Repository), watched\n status, headers, data = self._requester.requestJson(\n \"GET\",\n- \"/user/watched/\" + watched._identity,\n- None,\n- None\n+ \"/user/watched/\" + watched._identity\n )\n return status == 204\n \n@@ -917,8 +884,7 @@ def remove_from_emails(self, *emails):\n headers, data = self._requester.requestJsonAndCheck(\n \"DELETE\",\n \"/user/emails\",\n- None,\n- post_parameters\n+ input=post_parameters\n )\n \n def remove_from_following(self, following):\n@@ -930,9 +896,7 @@ def remove_from_following(self, following):\n assert isinstance(following, github.NamedUser.NamedUser), following\n headers, data = self._requester.requestJsonAndCheck(\n \"DELETE\",\n- \"/user/following/\" + following._identity,\n- None,\n- None\n+ \"/user/following/\" + following._identity\n )\n \n def remove_from_starred(self, starred):\n@@ -944,9 +908,7 @@ def remove_from_starred(self, starred):\n assert isinstance(starred, github.Repository.Repository), starred\n headers, data = self._requester.requestJsonAndCheck(\n \"DELETE\",\n- \"/user/starred/\" + starred._identity,\n- None,\n- None\n+ \"/user/starred/\" + starred._identity\n )\n \n def remove_from_subscriptions(self, subscription):\n@@ -958,9 +920,7 @@ def remove_from_subscriptions(self, subscription):\n assert isinstance(subscription, github.Repository.Repository), subscription\n headers, data = self._requester.requestJsonAndCheck(\n \"DELETE\",\n- \"/user/subscriptions/\" + subscription._identity,\n- None,\n- None\n+ \"/user/subscriptions/\" + subscription._identity\n )\n \n def remove_from_watched(self, watched):\n@@ -972,9 +932,7 @@ def remove_from_watched(self, watched):\n assert isinstance(watched, github.Repository.Repository), watched\n headers, data = self._requester.requestJsonAndCheck(\n \"DELETE\",\n- \"/user/watched/\" + watched._identity,\n- None,\n- None\n+ \"/user/watched/\" + watched._identity\n )\n \n def _initAttributes(self):\n@@ -1061,7 +1019,7 @@ def _useAttributes(self, attributes):\n self._owned_private_repos = attributes[\"owned_private_repos\"]\n if \"plan\" in attributes: # pragma no branch\n assert attributes[\"plan\"] is None or isinstance(attributes[\"plan\"], dict), attributes[\"plan\"]\n- self._plan = None if attributes[\"plan\"] is None else github.Plan.Plan(self._requester, attributes[\"plan\"], completed=False)\n+ self._plan = None if attributes[\"plan\"] is None else github.Plan.Plan(self._requester, self._headers, attributes[\"plan\"], completed=False)\n if \"private_gists\" in attributes: # pragma no branch\n assert attributes[\"private_gists\"] is None or isinstance(attributes[\"private_gists\"], (int, long)), attributes[\"private_gists\"]\n self._private_gists = attributes[\"private_gists\"]"},{"sha":"a004fedf687cdbcd52f4ffd494b9e4536bbb037b","filename":"github/Authorization.py","status":"modified","additions":4,"deletions":6,"changes":10,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/Authorization.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/Authorization.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/Authorization.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #\n@@ -112,9 +113,7 @@ def delete(self):\n \"\"\"\n headers, data = self._requester.requestJsonAndCheck(\n \"DELETE\",\n- self.url,\n- None,\n- None\n+ self.url\n )\n \n def edit(self, scopes=github.GithubObject.NotSet, add_scopes=github.GithubObject.NotSet, remove_scopes=github.GithubObject.NotSet, note=github.GithubObject.NotSet, note_url=github.GithubObject.NotSet):\n@@ -146,8 +145,7 @@ def edit(self, scopes=github.GithubObject.NotSet, add_scopes=github.GithubObject\n headers, data = self._requester.requestJsonAndCheck(\n \"PATCH\",\n self.url,\n- None,\n- post_parameters\n+ input=post_parameters\n )\n self._useAttributes(data)\n \n@@ -165,7 +163,7 @@ def _initAttributes(self):\n def _useAttributes(self, attributes):\n if \"app\" in attributes: # pragma no branch\n assert attributes[\"app\"] is None or isinstance(attributes[\"app\"], dict), attributes[\"app\"]\n- self._app = None if attributes[\"app\"] is None else github.AuthorizationApplication.AuthorizationApplication(self._requester, attributes[\"app\"], completed=False)\n+ self._app = None if attributes[\"app\"] is None else github.AuthorizationApplication.AuthorizationApplication(self._requester, self._headers, attributes[\"app\"], completed=False)\n if \"created_at\" in attributes: # pragma no branch\n assert attributes[\"created_at\"] is None or isinstance(attributes[\"created_at\"], (str, unicode)), attributes[\"created_at\"]\n self._created_at = self._parseDatetime(attributes[\"created_at\"])"},{"sha":"8f38bc1418f4b14e16da2ea24cd8a0fd525b872a","filename":"github/AuthorizationApplication.py","status":"modified","additions":1,"deletions":0,"changes":1,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/AuthorizationApplication.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/AuthorizationApplication.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/AuthorizationApplication.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #"},{"sha":"9e76182677f02c87b49e51a0139112421d53bf59","filename":"github/Branch.py","status":"modified","additions":2,"deletions":1,"changes":3,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/Branch.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/Branch.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/Branch.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # Copyright 2013 martinqt #\n # #\n@@ -55,7 +56,7 @@ def _initAttributes(self):\n def _useAttributes(self, attributes):\n if \"commit\" in attributes: # pragma no branch\n assert attributes[\"commit\"] is None or isinstance(attributes[\"commit\"], dict), attributes[\"commit\"]\n- self._commit = None if attributes[\"commit\"] is None else github.Commit.Commit(self._requester, attributes[\"commit\"], completed=False)\n+ self._commit = None if attributes[\"commit\"] is None else github.Commit.Commit(self._requester, self._headers, attributes[\"commit\"], completed=False)\n if \"name\" in attributes: # pragma no branch\n assert attributes[\"name\"] is None or isinstance(attributes[\"name\"], (str, unicode)), attributes[\"name\"]\n self._name = attributes[\"name\"]"},{"sha":"828da3fe18f120b030701d48a9a78be17ef143e8","filename":"github/Commit.py","status":"modified","additions":11,"deletions":12,"changes":23,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/Commit.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/Commit.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/Commit.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # Copyright 2013 martinqt #\n # #\n@@ -129,10 +130,9 @@ def create_comment(self, body, line=github.GithubObject.NotSet, path=github.Gith\n headers, data = self._requester.requestJsonAndCheck(\n \"POST\",\n self.url + \"/comments\",\n- None,\n- post_parameters\n+ input=post_parameters\n )\n- return github.CommitComment.CommitComment(self._requester, data, completed=True)\n+ return github.CommitComment.CommitComment(self._requester, headers, data, completed=True)\n \n def create_status(self, state, target_url=github.GithubObject.NotSet, description=github.GithubObject.NotSet):\n \"\"\"\n@@ -155,10 +155,9 @@ def create_status(self, state, target_url=github.GithubObject.NotSet, descriptio\n headers, data = self._requester.requestJsonAndCheck(\n \"POST\",\n self._parentUrl(self._parentUrl(self.url)) + \"/statuses/\" + self.sha,\n- None,\n- post_parameters\n+ input=post_parameters\n )\n- return github.CommitStatus.CommitStatus(self._requester, data, completed=True)\n+ return github.CommitStatus.CommitStatus(self._requester, headers, data, completed=True)\n \n def get_comments(self):\n \"\"\"\n@@ -201,23 +200,23 @@ def _initAttributes(self):\n def _useAttributes(self, attributes):\n if \"author\" in attributes: # pragma no branch\n assert attributes[\"author\"] is None or isinstance(attributes[\"author\"], dict), attributes[\"author\"]\n- self._author = None if attributes[\"author\"] is None else github.NamedUser.NamedUser(self._requester, attributes[\"author\"], completed=False)\n+ self._author = None if attributes[\"author\"] is None else github.NamedUser.NamedUser(self._requester, self._headers, attributes[\"author\"], completed=False)\n if \"commit\" in attributes: # pragma no branch\n assert attributes[\"commit\"] is None or isinstance(attributes[\"commit\"], dict), attributes[\"commit\"]\n- self._commit = None if attributes[\"commit\"] is None else github.GitCommit.GitCommit(self._requester, attributes[\"commit\"], completed=False)\n+ self._commit = None if attributes[\"commit\"] is None else github.GitCommit.GitCommit(self._requester, self._headers, attributes[\"commit\"], completed=False)\n if \"committer\" in attributes: # pragma no branch\n assert attributes[\"committer\"] is None or isinstance(attributes[\"committer\"], dict), attributes[\"committer\"]\n- self._committer = None if attributes[\"committer\"] is None else github.NamedUser.NamedUser(self._requester, attributes[\"committer\"], completed=False)\n+ self._committer = None if attributes[\"committer\"] is None else github.NamedUser.NamedUser(self._requester, self._headers, attributes[\"committer\"], completed=False)\n if \"files\" in attributes: # pragma no branch\n assert attributes[\"files\"] is None or all(isinstance(element, dict) for element in attributes[\"files\"]), attributes[\"files\"]\n self._files = None if attributes[\"files\"] is None else [\n- github.File.File(self._requester, element, completed=False)\n+ github.File.File(self._requester, self._headers, element, completed=False)\n for element in attributes[\"files\"]\n ]\n if \"parents\" in attributes: # pragma no branch\n assert attributes[\"parents\"] is None or all(isinstance(element, dict) for element in attributes[\"parents\"]), attributes[\"parents\"]\n self._parents = None if attributes[\"parents\"] is None else [\n- Commit(self._requester, element, completed=False)\n+ Commit(self._requester, self._headers, element, completed=False)\n for element in attributes[\"parents\"]\n ]\n if \"sha\" in attributes: # pragma no branch\n@@ -225,7 +224,7 @@ def _useAttributes(self, attributes):\n self._sha = attributes[\"sha\"]\n if \"stats\" in attributes: # pragma no branch\n assert attributes[\"stats\"] is None or isinstance(attributes[\"stats\"], dict), attributes[\"stats\"]\n- self._stats = None if attributes[\"stats\"] is None else github.CommitStats.CommitStats(self._requester, attributes[\"stats\"], completed=False)\n+ self._stats = None if attributes[\"stats\"] is None else github.CommitStats.CommitStats(self._requester, self._headers, attributes[\"stats\"], completed=False)\n if \"url\" in attributes: # pragma no branch\n assert attributes[\"url\"] is None or isinstance(attributes[\"url\"], (str, unicode)), attributes[\"url\"]\n self._url = attributes[\"url\"]"},{"sha":"c2c897d13f4092571b2a71f83694e34ff26c560d","filename":"github/CommitComment.py","status":"modified","additions":4,"deletions":6,"changes":10,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/CommitComment.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/CommitComment.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/CommitComment.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #\n@@ -128,9 +129,7 @@ def delete(self):\n \"\"\"\n headers, data = self._requester.requestJsonAndCheck(\n \"DELETE\",\n- self.url,\n- None,\n- None\n+ self.url\n )\n \n def edit(self, body):\n@@ -146,8 +145,7 @@ def edit(self, body):\n headers, data = self._requester.requestJsonAndCheck(\n \"PATCH\",\n self.url,\n- None,\n- post_parameters\n+ input=post_parameters\n )\n self._useAttributes(data)\n \n@@ -197,4 +195,4 @@ def _useAttributes(self, attributes):\n self._url = attributes[\"url\"]\n if \"user\" in attributes: # pragma no branch\n assert attributes[\"user\"] is None or isinstance(attributes[\"user\"], dict), attributes[\"user\"]\n- self._user = None if attributes[\"user\"] is None else github.NamedUser.NamedUser(self._requester, attributes[\"user\"], completed=False)\n+ self._user = None if attributes[\"user\"] is None else github.NamedUser.NamedUser(self._requester, self._headers, attributes[\"user\"], completed=False)"},{"sha":"49f407783d025f012358c435ec1153d293856bef","filename":"github/CommitStats.py","status":"modified","additions":1,"deletions":0,"changes":1,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/CommitStats.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/CommitStats.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/CommitStats.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #"},{"sha":"d08e0274279824208d98b1dd4033f18b970f594a","filename":"github/CommitStatus.py","status":"modified","additions":2,"deletions":1,"changes":3,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/CommitStatus.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/CommitStatus.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/CommitStatus.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #\n@@ -97,7 +98,7 @@ def _useAttributes(self, attributes):\n self._created_at = self._parseDatetime(attributes[\"created_at\"])\n if \"creator\" in attributes: # pragma no branch\n assert attributes[\"creator\"] is None or isinstance(attributes[\"creator\"], dict), attributes[\"creator\"]\n- self._creator = None if attributes[\"creator\"] is None else github.NamedUser.NamedUser(self._requester, attributes[\"creator\"], completed=False)\n+ self._creator = None if attributes[\"creator\"] is None else github.NamedUser.NamedUser(self._requester, self._headers, attributes[\"creator\"], completed=False)\n if \"description\" in attributes: # pragma no branch\n assert attributes[\"description\"] is None or isinstance(attributes[\"description\"], (str, unicode)), attributes[\"description\"]\n self._description = attributes[\"description\"]"},{"sha":"f5f66bc1f4bcb57c9286fb674e4bfdbaaf47538f","filename":"github/Comparison.py","status":"modified","additions":4,"deletions":3,"changes":7,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/Comparison.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/Comparison.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/Comparison.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #\n@@ -150,14 +151,14 @@ def _useAttributes(self, attributes):\n self._ahead_by = attributes[\"ahead_by\"]\n if \"base_commit\" in attributes: # pragma no branch\n assert attributes[\"base_commit\"] is None or isinstance(attributes[\"base_commit\"], dict), attributes[\"base_commit\"]\n- self._base_commit = None if attributes[\"base_commit\"] is None else github.Commit.Commit(self._requester, attributes[\"base_commit\"], completed=False)\n+ self._base_commit = None if attributes[\"base_commit\"] is None else github.Commit.Commit(self._requester, self._headers, attributes[\"base_commit\"], completed=False)\n if \"behind_by\" in attributes: # pragma no branch\n assert attributes[\"behind_by\"] is None or isinstance(attributes[\"behind_by\"], (int, long)), attributes[\"behind_by\"]\n self._behind_by = attributes[\"behind_by\"]\n if \"commits\" in attributes: # pragma no branch\n assert attributes[\"commits\"] is None or all(isinstance(element, dict) for element in attributes[\"commits\"]), attributes[\"commits\"]\n self._commits = None if attributes[\"commits\"] is None else [\n- github.Commit.Commit(self._requester, element, completed=False)\n+ github.Commit.Commit(self._requester, self._headers, element, completed=False)\n for element in attributes[\"commits\"]\n ]\n if \"diff_url\" in attributes: # pragma no branch\n@@ -166,7 +167,7 @@ def _useAttributes(self, attributes):\n if \"files\" in attributes: # pragma no branch\n assert attributes[\"files\"] is None or all(isinstance(element, dict) for element in attributes[\"files\"]), attributes[\"files\"]\n self._files = None if attributes[\"files\"] is None else [\n- github.File.File(self._requester, element, completed=False)\n+ github.File.File(self._requester, self._headers, element, completed=False)\n for element in attributes[\"files\"]\n ]\n if \"html_url\" in attributes: # pragma no branch"},{"sha":"b3b4791408f3b48375ba7360ef7aa129c592bd24","filename":"github/Consts.py","status":"added","additions":43,"deletions":0,"changes":43,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/Consts.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/Consts.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/Consts.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -0,0 +1,43 @@\n+# -*- coding: utf-8 -*-\n+\n+############################ Copyrights and license ############################\n+# #\n+# Copyright 2013 AKFish #\n+# #\n+# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #\n+# #\n+# PyGithub is free software: you can redistribute it and/or modify it under #\n+# the terms of the GNU Lesser General Public License as published by the Free #\n+# Software Foundation, either version 3 of the License, or (at your option) #\n+# any later version. #\n+# #\n+# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY #\n+# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS #\n+# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more #\n+# details. #\n+# #\n+# You should have received a copy of the GNU Lesser General Public License #\n+# along with PyGithub. If not, see . #\n+# #\n+################################################################################\n+\n+# #193: Line endings should be linux style\n+\n+# TODO: As of Thu Aug 21 22:40:13 (BJT) Chinese Standard Time 2013\n+# lots of consts in this project are explict\n+# should realy round them up and reference them by consts\n+# EDIT: well, maybe :-)\n+\n+################################################################################\n+# Request Header #\n+# (Case sensitive) #\n+################################################################################\n+REQ_IF_NONE_MATCH = \"If-None-Match\"\n+REQ_IF_MODIFIED_SINCE = \"If-Modified-Since\"\n+\n+################################################################################\n+# Response Header #\n+# (Lower Case) #\n+################################################################################\n+RES_ETAG = \"etag\"\n+RES_LAST_MODIFED = \"last-modified\""},{"sha":"03818842545b0c6824e8ab4f1e5b1c87462cba6a","filename":"github/ContentFile.py","status":"modified","additions":1,"deletions":0,"changes":1,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/ContentFile.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/ContentFile.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/ContentFile.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #"},{"sha":"2cd057cac916898be1451aac7b4f94830a880937","filename":"github/Download.py","status":"modified","additions":2,"deletions":3,"changes":5,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/Download.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/Download.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/Download.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #\n@@ -198,9 +199,7 @@ def delete(self):\n \"\"\"\n headers, data = self._requester.requestJsonAndCheck(\n \"DELETE\",\n- self.url,\n- None,\n- None\n+ self.url\n )\n \n def _initAttributes(self):"},{"sha":"203510252bb0e76c540d3bc20630e75ef99ecb31","filename":"github/Event.py","status":"modified","additions":4,"deletions":3,"changes":7,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/Event.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/Event.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/Event.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # Copyright 2013 martinqt #\n # #\n@@ -105,7 +106,7 @@ def _initAttributes(self):\n def _useAttributes(self, attributes):\n if \"actor\" in attributes: # pragma no branch\n assert attributes[\"actor\"] is None or isinstance(attributes[\"actor\"], dict), attributes[\"actor\"]\n- self._actor = None if attributes[\"actor\"] is None else github.NamedUser.NamedUser(self._requester, attributes[\"actor\"], completed=False)\n+ self._actor = None if attributes[\"actor\"] is None else github.NamedUser.NamedUser(self._requester, self._headers, attributes[\"actor\"], completed=False)\n if \"created_at\" in attributes: # pragma no branch\n assert attributes[\"created_at\"] is None or isinstance(attributes[\"created_at\"], (str, unicode)), attributes[\"created_at\"]\n self._created_at = self._parseDatetime(attributes[\"created_at\"])\n@@ -114,7 +115,7 @@ def _useAttributes(self, attributes):\n self._id = attributes[\"id\"]\n if \"org\" in attributes: # pragma no branch\n assert attributes[\"org\"] is None or isinstance(attributes[\"org\"], dict), attributes[\"org\"]\n- self._org = None if attributes[\"org\"] is None else github.Organization.Organization(self._requester, attributes[\"org\"], completed=False)\n+ self._org = None if attributes[\"org\"] is None else github.Organization.Organization(self._requester, self._headers, attributes[\"org\"], completed=False)\n if \"payload\" in attributes: # pragma no branch\n assert attributes[\"payload\"] is None or isinstance(attributes[\"payload\"], dict), attributes[\"payload\"]\n self._payload = attributes[\"payload\"]\n@@ -123,7 +124,7 @@ def _useAttributes(self, attributes):\n self._public = attributes[\"public\"]\n if \"repo\" in attributes: # pragma no branch\n assert attributes[\"repo\"] is None or isinstance(attributes[\"repo\"], dict), attributes[\"repo\"]\n- self._repo = None if attributes[\"repo\"] is None else github.Repository.Repository(self._requester, attributes[\"repo\"], completed=False)\n+ self._repo = None if attributes[\"repo\"] is None else github.Repository.Repository(self._requester, self._headers, attributes[\"repo\"], completed=False)\n if \"type\" in attributes: # pragma no branch\n assert attributes[\"type\"] is None or isinstance(attributes[\"type\"], (str, unicode)), attributes[\"type\"]\n self._type = attributes[\"type\"]"},{"sha":"6adaae8a974440b489b2913d515a32488f8c252f","filename":"github/File.py","status":"modified","additions":1,"deletions":0,"changes":1,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/File.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/File.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/File.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #"},{"sha":"65de668ed8da2c379cc88c0515024aa3d4c7164e","filename":"github/Gist.py","status":"modified","additions":17,"deletions":30,"changes":47,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/Gist.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/Gist.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/Gist.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -5,6 +5,7 @@\n # Copyright 2012 Steve English #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #\n@@ -171,23 +172,20 @@ def create_comment(self, body):\n headers, data = self._requester.requestJsonAndCheck(\n \"POST\",\n self.url + \"/comments\",\n- None,\n- post_parameters\n+ input=post_parameters\n )\n- return github.GistComment.GistComment(self._requester, data, completed=True)\n+ return github.GistComment.GistComment(self._requester, headers, data, completed=True)\n \n def create_fork(self):\n \"\"\"\n- :calls: `POST /gists/:id/fork `_\n+ :calls: `POST /gists/:id/forks `_\n :rtype: :class:`github.Gist.Gist`\n \"\"\"\n headers, data = self._requester.requestJsonAndCheck(\n \"POST\",\n- self.url + \"/fork\",\n- None,\n- None\n+ self.url + \"/forks\"\n )\n- return Gist(self._requester, data, completed=True)\n+ return Gist(self._requester, headers, data, completed=True)\n \n def delete(self):\n \"\"\"\n@@ -196,9 +194,7 @@ def delete(self):\n \"\"\"\n headers, data = self._requester.requestJsonAndCheck(\n \"DELETE\",\n- self.url,\n- None,\n- None\n+ self.url\n )\n \n def edit(self, description=github.GithubObject.NotSet, files=github.GithubObject.NotSet):\n@@ -218,8 +214,7 @@ def edit(self, description=github.GithubObject.NotSet, files=github.GithubObject\n headers, data = self._requester.requestJsonAndCheck(\n \"PATCH\",\n self.url,\n- None,\n- post_parameters\n+ input=post_parameters\n )\n self._useAttributes(data)\n \n@@ -232,11 +227,9 @@ def get_comment(self, id):\n assert isinstance(id, (int, long)), id\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n- self.url + \"/comments/\" + str(id),\n- None,\n- None\n+ self.url + \"/comments/\" + str(id)\n )\n- return github.GistComment.GistComment(self._requester, data, completed=True)\n+ return github.GistComment.GistComment(self._requester, headers, data, completed=True)\n \n def get_comments(self):\n \"\"\"\n@@ -257,9 +250,7 @@ def is_starred(self):\n \"\"\"\n status, headers, data = self._requester.requestJson(\n \"GET\",\n- self.url + \"/star\",\n- None,\n- None\n+ self.url + \"/star\"\n )\n return status == 204\n \n@@ -270,9 +261,7 @@ def reset_starred(self):\n \"\"\"\n headers, data = self._requester.requestJsonAndCheck(\n \"DELETE\",\n- self.url + \"/star\",\n- None,\n- None\n+ self.url + \"/star\"\n )\n \n def set_starred(self):\n@@ -282,9 +271,7 @@ def set_starred(self):\n \"\"\"\n headers, data = self._requester.requestJsonAndCheck(\n \"PUT\",\n- self.url + \"/star\",\n- None,\n- None\n+ self.url + \"/star\"\n )\n \n def _initAttributes(self):\n@@ -317,12 +304,12 @@ def _useAttributes(self, attributes):\n if \"files\" in attributes: # pragma no branch\n assert attributes[\"files\"] is None or all(isinstance(element, dict) for element in attributes[\"files\"].itervalues()), attributes[\"files\"]\n self._files = None if attributes[\"files\"] is None else dict(\n- (key, github.GistFile.GistFile(self._requester, element, completed=False))\n+ (key, github.GistFile.GistFile(self._requester, self._headers, element, completed=False))\n for key, element in attributes[\"files\"].iteritems()\n )\n if \"fork_of\" in attributes: # pragma no branch\n assert attributes[\"fork_of\"] is None or isinstance(attributes[\"fork_of\"], dict), attributes[\"fork_of\"]\n- self._fork_of = None if attributes[\"fork_of\"] is None else Gist(self._requester, attributes[\"fork_of\"], completed=False)\n+ self._fork_of = None if attributes[\"fork_of\"] is None else Gist(self._requester, self._headers, attributes[\"fork_of\"], completed=False)\n if \"forks\" in attributes: # pragma no branch\n assert attributes[\"forks\"] is None or all(isinstance(element, dict) for element in attributes[\"forks\"]), attributes[\"forks\"]\n self._forks = None if attributes[\"forks\"] is None else [\n@@ -338,7 +325,7 @@ def _useAttributes(self, attributes):\n if \"history\" in attributes: # pragma no branch\n assert attributes[\"history\"] is None or all(isinstance(element, dict) for element in attributes[\"history\"]), attributes[\"history\"]\n self._history = None if attributes[\"history\"] is None else [\n- github.GistHistoryState.GistHistoryState(self._requester, element, completed=False)\n+ github.GistHistoryState.GistHistoryState(self._requester, self._headers, element, completed=False)\n for element in attributes[\"history\"]\n ]\n if \"html_url\" in attributes: # pragma no branch\n@@ -358,4 +345,4 @@ def _useAttributes(self, attributes):\n self._url = attributes[\"url\"]\n if \"user\" in attributes: # pragma no branch\n assert attributes[\"user\"] is None or isinstance(attributes[\"user\"], dict), attributes[\"user\"]\n- self._user = None if attributes[\"user\"] is None else github.NamedUser.NamedUser(self._requester, attributes[\"user\"], completed=False)\n+ self._user = None if attributes[\"user\"] is None else github.NamedUser.NamedUser(self._requester, self._headers, attributes[\"user\"], completed=False)"},{"sha":"5ee0664c5827eccb2cce3e514d907f70daa7e09c","filename":"github/GistComment.py","status":"modified","additions":4,"deletions":6,"changes":10,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/GistComment.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/GistComment.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/GistComment.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #\n@@ -88,9 +89,7 @@ def delete(self):\n \"\"\"\n headers, data = self._requester.requestJsonAndCheck(\n \"DELETE\",\n- self.url,\n- None,\n- None\n+ self.url\n )\n \n def edit(self, body):\n@@ -106,8 +105,7 @@ def edit(self, body):\n headers, data = self._requester.requestJsonAndCheck(\n \"PATCH\",\n self.url,\n- None,\n- post_parameters\n+ input=post_parameters\n )\n self._useAttributes(data)\n \n@@ -137,4 +135,4 @@ def _useAttributes(self, attributes):\n self._url = attributes[\"url\"]\n if \"user\" in attributes: # pragma no branch\n assert attributes[\"user\"] is None or isinstance(attributes[\"user\"], dict), attributes[\"user\"]\n- self._user = None if attributes[\"user\"] is None else github.NamedUser.NamedUser(self._requester, attributes[\"user\"], completed=False)\n+ self._user = None if attributes[\"user\"] is None else github.NamedUser.NamedUser(self._requester, self._headers, attributes[\"user\"], completed=False)"},{"sha":"96c8ee2741d3fe8fbb40d12541f9e4a94839fdf3","filename":"github/GistFile.py","status":"modified","additions":1,"deletions":0,"changes":1,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/GistFile.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/GistFile.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/GistFile.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #"},{"sha":"bc24d5c0700d0bf95d76e8cc1b20cdbbdfeb80a7","filename":"github/GistHistoryState.py","status":"modified","additions":3,"deletions":2,"changes":5,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/GistHistoryState.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/GistHistoryState.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/GistHistoryState.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #\n@@ -84,7 +85,7 @@ def _initAttributes(self):\n def _useAttributes(self, attributes):\n if \"change_status\" in attributes: # pragma no branch\n assert attributes[\"change_status\"] is None or isinstance(attributes[\"change_status\"], dict), attributes[\"change_status\"]\n- self._change_status = None if attributes[\"change_status\"] is None else github.CommitStats.CommitStats(self._requester, attributes[\"change_status\"], completed=False)\n+ self._change_status = None if attributes[\"change_status\"] is None else github.CommitStats.CommitStats(self._requester, self._headers, attributes[\"change_status\"], completed=False)\n if \"committed_at\" in attributes: # pragma no branch\n assert attributes[\"committed_at\"] is None or isinstance(attributes[\"committed_at\"], (str, unicode)), attributes[\"committed_at\"]\n self._committed_at = self._parseDatetime(attributes[\"committed_at\"])\n@@ -93,7 +94,7 @@ def _useAttributes(self, attributes):\n self._url = attributes[\"url\"]\n if \"user\" in attributes: # pragma no branch\n assert attributes[\"user\"] is None or isinstance(attributes[\"user\"], dict), attributes[\"user\"]\n- self._user = None if attributes[\"user\"] is None else github.NamedUser.NamedUser(self._requester, attributes[\"user\"], completed=False)\n+ self._user = None if attributes[\"user\"] is None else github.NamedUser.NamedUser(self._requester, self._headers, attributes[\"user\"], completed=False)\n if \"version\" in attributes: # pragma no branch\n assert attributes[\"version\"] is None or isinstance(attributes[\"version\"], (str, unicode)), attributes[\"version\"]\n self._version = attributes[\"version\"]"},{"sha":"e56ce94d55e53cc74e259293b1a2c91d22f8b40c","filename":"github/GitAuthor.py","status":"modified","additions":1,"deletions":0,"changes":1,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/GitAuthor.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/GitAuthor.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/GitAuthor.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #"},{"sha":"8f1056829fa56386223cb843005d6777ac71d32e","filename":"github/GitBlob.py","status":"modified","additions":1,"deletions":0,"changes":1,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/GitBlob.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/GitBlob.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/GitBlob.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #"},{"sha":"ffdc6d5a739ed5dd4f701cd2c345108ceb5499c2","filename":"github/GitCommit.py","status":"modified","additions":5,"deletions":4,"changes":9,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/GitCommit.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/GitCommit.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/GitCommit.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #\n@@ -106,17 +107,17 @@ def _initAttributes(self):\n def _useAttributes(self, attributes):\n if \"author\" in attributes: # pragma no branch\n assert attributes[\"author\"] is None or isinstance(attributes[\"author\"], dict), attributes[\"author\"]\n- self._author = None if attributes[\"author\"] is None else github.GitAuthor.GitAuthor(self._requester, attributes[\"author\"], completed=False)\n+ self._author = None if attributes[\"author\"] is None else github.GitAuthor.GitAuthor(self._requester, self._headers, attributes[\"author\"], completed=False)\n if \"committer\" in attributes: # pragma no branch\n assert attributes[\"committer\"] is None or isinstance(attributes[\"committer\"], dict), attributes[\"committer\"]\n- self._committer = None if attributes[\"committer\"] is None else github.GitAuthor.GitAuthor(self._requester, attributes[\"committer\"], completed=False)\n+ self._committer = None if attributes[\"committer\"] is None else github.GitAuthor.GitAuthor(self._requester, self._headers, attributes[\"committer\"], completed=False)\n if \"message\" in attributes: # pragma no branch\n assert attributes[\"message\"] is None or isinstance(attributes[\"message\"], (str, unicode)), attributes[\"message\"]\n self._message = attributes[\"message\"]\n if \"parents\" in attributes: # pragma no branch\n assert attributes[\"parents\"] is None or all(isinstance(element, dict) for element in attributes[\"parents\"]), attributes[\"parents\"]\n self._parents = None if attributes[\"parents\"] is None else [\n- GitCommit(self._requester, element, completed=False)\n+ GitCommit(self._requester, self._headers, element, completed=False)\n for element in attributes[\"parents\"]\n ]\n if \"sha\" in attributes: # pragma no branch\n@@ -124,7 +125,7 @@ def _useAttributes(self, attributes):\n self._sha = attributes[\"sha\"]\n if \"tree\" in attributes: # pragma no branch\n assert attributes[\"tree\"] is None or isinstance(attributes[\"tree\"], dict), attributes[\"tree\"]\n- self._tree = None if attributes[\"tree\"] is None else github.GitTree.GitTree(self._requester, attributes[\"tree\"], completed=False)\n+ self._tree = None if attributes[\"tree\"] is None else github.GitTree.GitTree(self._requester, self._headers, attributes[\"tree\"], completed=False)\n if \"url\" in attributes: # pragma no branch\n assert attributes[\"url\"] is None or isinstance(attributes[\"url\"], (str, unicode)), attributes[\"url\"]\n self._url = attributes[\"url\"]"},{"sha":"a731464122384af8435525853343bce170cb5cd6","filename":"github/GitObject.py","status":"modified","additions":1,"deletions":0,"changes":1,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/GitObject.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/GitObject.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/GitObject.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #"},{"sha":"97a2ca4d6e900f32d7910ef657afc40d4b91a539","filename":"github/GitRef.py","status":"modified","additions":4,"deletions":6,"changes":10,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/GitRef.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/GitRef.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/GitRef.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #\n@@ -64,9 +65,7 @@ def delete(self):\n \"\"\"\n headers, data = self._requester.requestJsonAndCheck(\n \"DELETE\",\n- self.url,\n- None,\n- None\n+ self.url\n )\n \n def edit(self, sha, force=github.GithubObject.NotSet):\n@@ -86,8 +85,7 @@ def edit(self, sha, force=github.GithubObject.NotSet):\n headers, data = self._requester.requestJsonAndCheck(\n \"PATCH\",\n self.url,\n- None,\n- post_parameters\n+ input=post_parameters\n )\n self._useAttributes(data)\n \n@@ -99,7 +97,7 @@ def _initAttributes(self):\n def _useAttributes(self, attributes):\n if \"object\" in attributes: # pragma no branch\n assert attributes[\"object\"] is None or isinstance(attributes[\"object\"], dict), attributes[\"object\"]\n- self._object = None if attributes[\"object\"] is None else github.GitObject.GitObject(self._requester, attributes[\"object\"], completed=False)\n+ self._object = None if attributes[\"object\"] is None else github.GitObject.GitObject(self._requester, self._headers, attributes[\"object\"], completed=False)\n if \"ref\" in attributes: # pragma no branch\n assert attributes[\"ref\"] is None or isinstance(attributes[\"ref\"], (str, unicode)), attributes[\"ref\"]\n self._ref = attributes[\"ref\"]"},{"sha":"564b6b86fa11f943796a0630afd00e17f7fee1ce","filename":"github/GitTag.py","status":"modified","additions":3,"deletions":2,"changes":5,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/GitTag.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/GitTag.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/GitTag.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #\n@@ -96,7 +97,7 @@ def _useAttributes(self, attributes):\n self._message = attributes[\"message\"]\n if \"object\" in attributes: # pragma no branch\n assert attributes[\"object\"] is None or isinstance(attributes[\"object\"], dict), attributes[\"object\"]\n- self._object = None if attributes[\"object\"] is None else github.GitObject.GitObject(self._requester, attributes[\"object\"], completed=False)\n+ self._object = None if attributes[\"object\"] is None else github.GitObject.GitObject(self._requester, self._headers, attributes[\"object\"], completed=False)\n if \"sha\" in attributes: # pragma no branch\n assert attributes[\"sha\"] is None or isinstance(attributes[\"sha\"], (str, unicode)), attributes[\"sha\"]\n self._sha = attributes[\"sha\"]\n@@ -105,7 +106,7 @@ def _useAttributes(self, attributes):\n self._tag = attributes[\"tag\"]\n if \"tagger\" in attributes: # pragma no branch\n assert attributes[\"tagger\"] is None or isinstance(attributes[\"tagger\"], dict), attributes[\"tagger\"]\n- self._tagger = None if attributes[\"tagger\"] is None else github.GitAuthor.GitAuthor(self._requester, attributes[\"tagger\"], completed=False)\n+ self._tagger = None if attributes[\"tagger\"] is None else github.GitAuthor.GitAuthor(self._requester, self._headers, attributes[\"tagger\"], completed=False)\n if \"url\" in attributes: # pragma no branch\n assert attributes[\"url\"] is None or isinstance(attributes[\"url\"], (str, unicode)), attributes[\"url\"]\n self._url = attributes[\"url\"]"},{"sha":"b06c5e82369ae5ba3a50d0edc483e3b22c207aad","filename":"github/GitTree.py","status":"modified","additions":2,"deletions":1,"changes":3,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/GitTree.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/GitTree.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/GitTree.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #\n@@ -73,7 +74,7 @@ def _useAttributes(self, attributes):\n if \"tree\" in attributes: # pragma no branch\n assert attributes[\"tree\"] is None or all(isinstance(element, dict) for element in attributes[\"tree\"]), attributes[\"tree\"]\n self._tree = None if attributes[\"tree\"] is None else [\n- github.GitTreeElement.GitTreeElement(self._requester, element, completed=False)\n+ github.GitTreeElement.GitTreeElement(self._requester, self._headers, element, completed=False)\n for element in attributes[\"tree\"]\n ]\n if \"url\" in attributes: # pragma no branch"},{"sha":"e7ae76bbcb10fa76c9b0b3316550045a03f5f81b","filename":"github/GitTreeElement.py","status":"modified","additions":1,"deletions":0,"changes":1,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/GitTreeElement.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/GitTreeElement.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/GitTreeElement.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #"},{"sha":"02e7a75e28a911a1bf691663d2e2b3a6bde84768","filename":"github/GithubException.py","status":"modified","additions":1,"deletions":0,"changes":1,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/GithubException.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/GithubException.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/GithubException.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #"},{"sha":"91c079b70a8508a3ab3f7f740f51bdda35cf87ea","filename":"github/GithubObject.py","status":"modified","additions":74,"deletions":10,"changes":84,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/GithubObject.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/GithubObject.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/GithubObject.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #\n@@ -26,6 +27,7 @@\n import datetime\n \n import GithubException\n+import Consts\n \n \n class _NotSetType:\n@@ -38,14 +40,32 @@ class GithubObject(object):\n \"\"\"\n Base class for all classes representing objects returned by the API.\n \"\"\"\n- def __init__(self, requester, attributes, completed):\n+\n+ '''\n+ A global debug flag to enable header validation by requester for all objects\n+ '''\n+ CHECK_AFTER_INIT_FLAG = False\n+\n+ @classmethod\n+ def setCheckAfterInitFlag(cls, flag):\n+ cls.CHECK_AFTER_INIT_FLAG = flag\n+\n+ def __init__(self, requester, headers, attributes, completed):\n self._requester = requester\n self._initAttributes()\n- self._storeAndUseAttributes(attributes)\n+ self._storeAndUseAttributes(headers, attributes)\n \n- def _storeAndUseAttributes(self, attributes):\n- self._useAttributes(attributes)\n+ # Ask requester to do some checking, for debug and test purpose\n+ # Since it's most handy to access and kinda all-knowing\n+ if self.CHECK_AFTER_INIT_FLAG: # pragma no branch (Flag always set in tests)\n+ requester.check_me(self)\n+\n+ def _storeAndUseAttributes(self, headers, attributes):\n+ # Make sure headers are assigned before calling _useAttributes\n+ # (Some derived classes will use headers in _useAttributes)\n+ self._headers = headers\n self._rawData = attributes\n+ self._useAttributes(attributes)\n \n @property\n def raw_data(self):\n@@ -55,6 +75,14 @@ def raw_data(self):\n self._completeIfNeeded()\n return self._rawData\n \n+ @property\n+ def raw_headers(self):\n+ \"\"\"\n+ :type: dict\n+ \"\"\"\n+ self._completeIfNeeded()\n+ return self._headers\n+\n @staticmethod\n def _parentUrl(url):\n return \"/\".join(url.split(\"/\")[: -1])\n@@ -77,6 +105,20 @@ def _parseDatetime(s):\n else:\n return datetime.datetime.strptime(s, \"%Y-%m-%dT%H:%M:%SZ\")\n \n+ @property\n+ def etag(self):\n+ '''\n+ :type str\n+ '''\n+ return self._headers.get(Consts.RES_ETAG)\n+\n+ @property\n+ def last_modified(self):\n+ '''\n+ :type str\n+ '''\n+ return self._headers.get(Consts.RES_LAST_MODIFED)\n+\n \n class NonCompletableGithubObject(GithubObject):\n def _completeIfNeeded(self):\n@@ -84,8 +126,8 @@ def _completeIfNeeded(self):\n \n \n class CompletableGithubObject(GithubObject):\n- def __init__(self, requester, attributes, completed):\n- GithubObject.__init__(self, requester, attributes, completed)\n+ def __init__(self, requester, headers, attributes, completed):\n+ GithubObject.__init__(self, requester, headers, attributes, completed)\n self.__completed = completed\n \n def _completeIfNotSet(self, value):\n@@ -99,9 +141,31 @@ def _completeIfNeeded(self):\n def __complete(self):\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n- self._url,\n- None,\n- None\n+ self._url\n )\n- self._storeAndUseAttributes(data)\n+ self._storeAndUseAttributes(headers, data)\n self.__completed = True\n+\n+ def update(self):\n+ '''\n+ Check and update the object with conditional request\n+ :rtype: Boolean value indicating whether the object is changed\n+ '''\n+ conditionalRequestHeader = dict()\n+ if self.etag is not None:\n+ conditionalRequestHeader[Consts.REQ_IF_NONE_MATCH] = self.etag\n+ if self.last_modified is not None:\n+ conditionalRequestHeader[Consts.REQ_IF_MODIFIED_SINCE] = self.last_modified\n+\n+ status, responseHeaders, output = self._requester.requestJson(\n+ \"GET\",\n+ self._url,\n+ headers=conditionalRequestHeader\n+ )\n+ if status == 304:\n+ return False\n+ else:\n+ headers, data = self._requester._Requester__check(status, responseHeaders, output)\n+ self._storeAndUseAttributes(headers, data)\n+ self.__completed = True\n+ return True"},{"sha":"a8a7022f4602f37b2583f890e324b204cdc89a62","filename":"github/GitignoreTemplate.py","status":"modified","additions":1,"deletions":0,"changes":1,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/GitignoreTemplate.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/GitignoreTemplate.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/GitignoreTemplate.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -3,6 +3,7 @@\n ############################ Copyrights and license ############################\n # #\n # Copyright 2012 Vincent Jacques #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #"},{"sha":"447a0e9a7afa1e845dea9dc82f8c114251ea61bc","filename":"github/Hook.py","status":"modified","additions":7,"deletions":11,"changes":18,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/Hook.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/Hook.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/Hook.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #\n@@ -30,7 +31,7 @@\n \n class Hook(github.GithubObject.CompletableGithubObject):\n \"\"\"\n- This class represents Hooks as returned for example by http://developer.github.com/v3/todo\n+ This class represents Hooks as returned for example by http://developer.github.com/v3/repos/hooks\n \"\"\"\n \n @property\n@@ -112,9 +113,7 @@ def delete(self):\n \"\"\"\n headers, data = self._requester.requestJsonAndCheck(\n \"DELETE\",\n- self.url,\n- None,\n- None\n+ self.url\n )\n \n def edit(self, name, config, events=github.GithubObject.NotSet, add_events=github.GithubObject.NotSet, remove_events=github.GithubObject.NotSet, active=github.GithubObject.NotSet):\n@@ -149,21 +148,18 @@ def edit(self, name, config, events=github.GithubObject.NotSet, add_events=githu\n headers, data = self._requester.requestJsonAndCheck(\n \"PATCH\",\n self.url,\n- None,\n- post_parameters\n+ input=post_parameters\n )\n self._useAttributes(data)\n \n def test(self):\n \"\"\"\n- :calls: `POST /repos/:owner/:repo/hooks/:id/test `_\n+ :calls: `POST /repos/:owner/:repo/hooks/:id/tests `_\n :rtype: None\n \"\"\"\n headers, data = self._requester.requestJsonAndCheck(\n \"POST\",\n- self.url + \"/test\",\n- None,\n- None\n+ self.url + \"/tests\"\n )\n \n def _initAttributes(self):\n@@ -195,7 +191,7 @@ def _useAttributes(self, attributes):\n self._id = attributes[\"id\"]\n if \"last_response\" in attributes: # pragma no branch\n assert attributes[\"last_response\"] is None or isinstance(attributes[\"last_response\"], dict), attributes[\"last_response\"]\n- self._last_response = None if attributes[\"last_response\"] is None else github.HookResponse.HookResponse(self._requester, attributes[\"last_response\"], completed=False)\n+ self._last_response = None if attributes[\"last_response\"] is None else github.HookResponse.HookResponse(self._requester, self._headers, attributes[\"last_response\"], completed=False)\n if \"name\" in attributes: # pragma no branch\n assert attributes[\"name\"] is None or isinstance(attributes[\"name\"], (str, unicode)), attributes[\"name\"]\n self._name = attributes[\"name\"]"},{"sha":"5653492bbd94babe3e1039d8c30eda3dde4349bb","filename":"github/HookDescription.py","status":"modified","additions":1,"deletions":0,"changes":1,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/HookDescription.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/HookDescription.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/HookDescription.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #"},{"sha":"41e242b3abfb1ac7e961ee5a524cdb0455d5b253","filename":"github/HookResponse.py","status":"modified","additions":1,"deletions":0,"changes":1,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/HookResponse.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/HookResponse.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/HookResponse.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #"},{"sha":"b849e8d459dc6ecbb28278d17680d175a30ba391","filename":"github/Issue.py","status":"modified","additions":18,"deletions":27,"changes":45,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/Issue.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/Issue.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/Issue.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -6,6 +6,7 @@\n # Copyright 2012 Philip Kimmey #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Stuart Glaser #\n # Copyright 2013 Vincent Jacques #\n # #\n@@ -148,7 +149,7 @@ def repository(self):\n if self._repository is github.GithubObject.NotSet:\n # The repository was not set automatically, so it must be looked up by url.\n repo_url = \"/\".join(self.url.split(\"/\")[:-2])\n- self._repository = github.Repository.Repository(self._requester, {'url': repo_url}, False)\n+ self._repository = github.Repository.Repository(self._requester, self._headers, {'url': repo_url}, completed=False)\n return self._repository\n \n @property\n@@ -202,8 +203,7 @@ def add_to_labels(self, *labels):\n headers, data = self._requester.requestJsonAndCheck(\n \"POST\",\n self.url + \"/labels\",\n- None,\n- post_parameters\n+ input=post_parameters\n )\n \n def create_comment(self, body):\n@@ -219,10 +219,9 @@ def create_comment(self, body):\n headers, data = self._requester.requestJsonAndCheck(\n \"POST\",\n self.url + \"/comments\",\n- None,\n- post_parameters\n+ input=post_parameters\n )\n- return github.IssueComment.IssueComment(self._requester, data, completed=True)\n+ return github.IssueComment.IssueComment(self._requester, headers, data, completed=True)\n \n def delete_labels(self):\n \"\"\"\n@@ -231,9 +230,7 @@ def delete_labels(self):\n \"\"\"\n headers, data = self._requester.requestJsonAndCheck(\n \"DELETE\",\n- self.url + \"/labels\",\n- None,\n- None\n+ self.url + \"/labels\"\n )\n \n def edit(self, title=github.GithubObject.NotSet, body=github.GithubObject.NotSet, assignee=github.GithubObject.NotSet, state=github.GithubObject.NotSet, milestone=github.GithubObject.NotSet, labels=github.GithubObject.NotSet):\n@@ -269,8 +266,7 @@ def edit(self, title=github.GithubObject.NotSet, body=github.GithubObject.NotSet\n headers, data = self._requester.requestJsonAndCheck(\n \"PATCH\",\n self.url,\n- None,\n- post_parameters\n+ input=post_parameters\n )\n self._useAttributes(data)\n \n@@ -283,11 +279,9 @@ def get_comment(self, id):\n assert isinstance(id, (int, long)), id\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n- self._parentUrl(self.url) + \"/comments/\" + str(id),\n- None,\n- None\n+ self._parentUrl(self.url) + \"/comments/\" + str(id)\n )\n- return github.IssueComment.IssueComment(self._requester, data, completed=True)\n+ return github.IssueComment.IssueComment(self._requester, headers, data, completed=True)\n \n def get_comments(self):\n \"\"\"\n@@ -334,9 +328,7 @@ def remove_from_labels(self, label):\n assert isinstance(label, github.Label.Label), label\n headers, data = self._requester.requestJsonAndCheck(\n \"DELETE\",\n- self.url + \"/labels/\" + label._identity,\n- None,\n- None\n+ self.url + \"/labels/\" + label._identity\n )\n \n def set_labels(self, *labels):\n@@ -350,8 +342,7 @@ def set_labels(self, *labels):\n headers, data = self._requester.requestJsonAndCheck(\n \"PUT\",\n self.url + \"/labels\",\n- None,\n- post_parameters\n+ input=post_parameters\n )\n \n @property\n@@ -381,7 +372,7 @@ def _initAttributes(self):\n def _useAttributes(self, attributes):\n if \"assignee\" in attributes: # pragma no branch\n assert attributes[\"assignee\"] is None or isinstance(attributes[\"assignee\"], dict), attributes[\"assignee\"]\n- self._assignee = None if attributes[\"assignee\"] is None else github.NamedUser.NamedUser(self._requester, attributes[\"assignee\"], completed=False)\n+ self._assignee = None if attributes[\"assignee\"] is None else github.NamedUser.NamedUser(self._requester, self._headers, attributes[\"assignee\"], completed=False)\n if \"body\" in attributes: # pragma no branch\n assert attributes[\"body\"] is None or isinstance(attributes[\"body\"], (str, unicode)), attributes[\"body\"]\n self._body = attributes[\"body\"]\n@@ -390,7 +381,7 @@ def _useAttributes(self, attributes):\n self._closed_at = self._parseDatetime(attributes[\"closed_at\"])\n if \"closed_by\" in attributes: # pragma no branch\n assert attributes[\"closed_by\"] is None or isinstance(attributes[\"closed_by\"], dict), attributes[\"closed_by\"]\n- self._closed_by = None if attributes[\"closed_by\"] is None else github.NamedUser.NamedUser(self._requester, attributes[\"closed_by\"], completed=False)\n+ self._closed_by = None if attributes[\"closed_by\"] is None else github.NamedUser.NamedUser(self._requester, self._headers, attributes[\"closed_by\"], completed=False)\n if \"comments\" in attributes: # pragma no branch\n assert attributes[\"comments\"] is None or isinstance(attributes[\"comments\"], (int, long)), attributes[\"comments\"]\n self._comments = attributes[\"comments\"]\n@@ -406,21 +397,21 @@ def _useAttributes(self, attributes):\n if \"labels\" in attributes: # pragma no branch\n assert attributes[\"labels\"] is None or all(isinstance(element, dict) for element in attributes[\"labels\"]), attributes[\"labels\"]\n self._labels = None if attributes[\"labels\"] is None else [\n- github.Label.Label(self._requester, element, completed=False)\n+ github.Label.Label(self._requester, self._headers, element, completed=False)\n for element in attributes[\"labels\"]\n ]\n if \"milestone\" in attributes: # pragma no branch\n assert attributes[\"milestone\"] is None or isinstance(attributes[\"milestone\"], dict), attributes[\"milestone\"]\n- self._milestone = None if attributes[\"milestone\"] is None else github.Milestone.Milestone(self._requester, attributes[\"milestone\"], completed=False)\n+ self._milestone = None if attributes[\"milestone\"] is None else github.Milestone.Milestone(self._requester, self._headers, attributes[\"milestone\"], completed=False)\n if \"number\" in attributes: # pragma no branch\n assert attributes[\"number\"] is None or isinstance(attributes[\"number\"], (int, long)), attributes[\"number\"]\n self._number = attributes[\"number\"]\n if \"pull_request\" in attributes: # pragma no branch\n assert attributes[\"pull_request\"] is None or isinstance(attributes[\"pull_request\"], dict), attributes[\"pull_request\"]\n- self._pull_request = None if attributes[\"pull_request\"] is None else github.IssuePullRequest.IssuePullRequest(self._requester, attributes[\"pull_request\"], completed=False)\n+ self._pull_request = None if attributes[\"pull_request\"] is None else github.IssuePullRequest.IssuePullRequest(self._requester, self._headers, attributes[\"pull_request\"], completed=False)\n if \"repository\" in attributes: # pragma no branch\n assert attributes[\"repository\"] is None or isinstance(attributes[\"repository\"], dict), attributes[\"repository\"]\n- self._repository = None if attributes[\"repository\"] is None else github.Repository.Repository(self._requester, attributes[\"repository\"], completed=False)\n+ self._repository = None if attributes[\"repository\"] is None else github.Repository.Repository(self._requester, self._headers, attributes[\"repository\"], completed=False)\n if \"state\" in attributes: # pragma no branch\n assert attributes[\"state\"] is None or isinstance(attributes[\"state\"], (str, unicode)), attributes[\"state\"]\n self._state = attributes[\"state\"]\n@@ -435,4 +426,4 @@ def _useAttributes(self, attributes):\n self._url = attributes[\"url\"]\n if \"user\" in attributes: # pragma no branch\n assert attributes[\"user\"] is None or isinstance(attributes[\"user\"], dict), attributes[\"user\"]\n- self._user = None if attributes[\"user\"] is None else github.NamedUser.NamedUser(self._requester, attributes[\"user\"], completed=False)\n+ self._user = None if attributes[\"user\"] is None else github.NamedUser.NamedUser(self._requester, self._headers, attributes[\"user\"], completed=False)"},{"sha":"149a6f6f1eafaf177dd951aa211f659a6975d72f","filename":"github/IssueComment.py","status":"modified","additions":4,"deletions":6,"changes":10,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/IssueComment.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/IssueComment.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/IssueComment.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Michael Stead #\n # Copyright 2013 Vincent Jacques #\n # #\n@@ -97,9 +98,7 @@ def delete(self):\n \"\"\"\n headers, data = self._requester.requestJsonAndCheck(\n \"DELETE\",\n- self.url,\n- None,\n- None\n+ self.url\n )\n \n def edit(self, body):\n@@ -115,8 +114,7 @@ def edit(self, body):\n headers, data = self._requester.requestJsonAndCheck(\n \"PATCH\",\n self.url,\n- None,\n- post_parameters\n+ input=post_parameters\n )\n self._useAttributes(data)\n \n@@ -150,4 +148,4 @@ def _useAttributes(self, attributes):\n self._html_url = attributes[\"html_url\"]\n if \"user\" in attributes: # pragma no branch\n assert attributes[\"user\"] is None or isinstance(attributes[\"user\"], dict), attributes[\"user\"]\n- self._user = None if attributes[\"user\"] is None else github.NamedUser.NamedUser(self._requester, attributes[\"user\"], completed=False)\n+ self._user = None if attributes[\"user\"] is None else github.NamedUser.NamedUser(self._requester, self._headers, attributes[\"user\"], completed=False)"},{"sha":"aca4cdf8a90313170980f3b75d11de61c6e3d202","filename":"github/IssueEvent.py","status":"modified","additions":3,"deletions":2,"changes":5,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/IssueEvent.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/IssueEvent.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/IssueEvent.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #\n@@ -102,7 +103,7 @@ def _initAttributes(self):\n def _useAttributes(self, attributes):\n if \"actor\" in attributes: # pragma no branch\n assert attributes[\"actor\"] is None or isinstance(attributes[\"actor\"], dict), attributes[\"actor\"]\n- self._actor = None if attributes[\"actor\"] is None else github.NamedUser.NamedUser(self._requester, attributes[\"actor\"], completed=False)\n+ self._actor = None if attributes[\"actor\"] is None else github.NamedUser.NamedUser(self._requester, self._headers, attributes[\"actor\"], completed=False)\n if \"commit_id\" in attributes: # pragma no branch\n assert attributes[\"commit_id\"] is None or isinstance(attributes[\"commit_id\"], (str, unicode)), attributes[\"commit_id\"]\n self._commit_id = attributes[\"commit_id\"]\n@@ -117,7 +118,7 @@ def _useAttributes(self, attributes):\n self._id = attributes[\"id\"]\n if \"issue\" in attributes: # pragma no branch\n assert attributes[\"issue\"] is None or isinstance(attributes[\"issue\"], dict), attributes[\"issue\"]\n- self._issue = None if attributes[\"issue\"] is None else github.Issue.Issue(self._requester, attributes[\"issue\"], completed=False)\n+ self._issue = None if attributes[\"issue\"] is None else github.Issue.Issue(self._requester, self._headers, attributes[\"issue\"], completed=False)\n if \"url\" in attributes: # pragma no branch\n assert attributes[\"url\"] is None or isinstance(attributes[\"url\"], (str, unicode)), attributes[\"url\"]\n self._url = attributes[\"url\"]"},{"sha":"ae7e6b6c203695bc39cd5d057f80df638f8e8ccb","filename":"github/IssuePullRequest.py","status":"modified","additions":1,"deletions":0,"changes":1,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/IssuePullRequest.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/IssuePullRequest.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/IssuePullRequest.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #"},{"sha":"813cd5f015c056fdd9e1b0e2e4dc0d9265b5f238","filename":"github/Label.py","status":"modified","additions":3,"deletions":5,"changes":8,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/Label.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/Label.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/Label.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # Copyright 2013 martinqt #\n # #\n@@ -65,9 +66,7 @@ def delete(self):\n \"\"\"\n headers, data = self._requester.requestJsonAndCheck(\n \"DELETE\",\n- self.url,\n- None,\n- None\n+ self.url\n )\n \n def edit(self, name, color):\n@@ -86,8 +85,7 @@ def edit(self, name, color):\n headers, data = self._requester.requestJsonAndCheck(\n \"PATCH\",\n self.url,\n- None,\n- post_parameters\n+ input=post_parameters\n )\n self._useAttributes(data)\n "},{"sha":"cfe48d679963a0e10f861b76fa9a80cfd2ad85cc","filename":"github/Legacy.py","status":"modified","additions":4,"deletions":3,"changes":7,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/Legacy.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/Legacy.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/Legacy.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -5,6 +5,7 @@\n # Copyright 2012 Steve English #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #\n@@ -57,12 +58,12 @@ def get_page(self, page):\n headers, data = self.__requester.requestJsonAndCheck(\n \"GET\",\n self.__url,\n- args,\n- None\n+ parameters=args\n )\n self.__continue = len(data[self.__key]) > 0\n+\n return [\n- self.__contentClass(self.__requester, self.__convert(element), completed=False)\n+ self.__contentClass(self.__requester, headers, self.__convert(element), completed=False)\n for element in data[self.__key]\n ]\n "},{"sha":"a4af1a618da0a5d865eb1675fd96a085bb0ab680","filename":"github/MainClass.py","status":"modified","additions":113,"deletions":44,"changes":157,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/MainClass.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/MainClass.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/MainClass.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -2,6 +2,7 @@\n \n ############################ Copyrights and license ############################\n # #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Ed Jackson #\n # Copyright 2013 Jonathan J Hunt #\n # Copyright 2013 Peter Golm #\n@@ -25,6 +26,7 @@\n ################################################################################\n \n import urllib\n+import pickle\n \n from Requester import Requester\n import AuthenticatedUser\n@@ -38,6 +40,8 @@\n import HookDescription\n import GitignoreTemplate\n import Notification\n+import Status\n+import StatusMessage\n \n \n DEFAULT_BASE_URL = \"https://api.github.com\"\n@@ -91,8 +95,12 @@ def __get_per_page(self):\n def __set_per_page(self, value):\n self.__requester.per_page = value\n \n+ # v2: Remove this property? Why should it be necessary to read/modify it after construction\n per_page = property(__get_per_page, __set_per_page)\n \n+ # v2: Provide a unified way to access values of headers of last response\n+ # v2: (and add/keep ad hoc properties for specific useful headers like rate limiting, oauth scopes, etc.)\n+ # v2: Return an instance of a class: using a tuple did not allow to add a field \"resettime\"\n @property\n def rate_limiting(self):\n \"\"\"\n@@ -103,9 +111,7 @@ def rate_limiting(self):\n if limit < 0:\n self.__requester.requestJsonAndCheck(\n 'GET',\n- '/rate_limit',\n- None,\n- None\n+ '/rate_limit'\n )\n return self.__requester.rate_limiting\n \n@@ -118,9 +124,7 @@ def rate_limiting_resettime(self):\n if self.__requester.rate_limiting_resettime == 0:\n self.__requester.requestJsonAndCheck(\n 'GET',\n- '/rate_limit',\n- None,\n- None\n+ '/rate_limit'\n )\n return self.__requester.rate_limiting_resettime\n \n@@ -139,15 +143,13 @@ def get_user(self, login=github.GithubObject.NotSet):\n \"\"\"\n assert login is github.GithubObject.NotSet or isinstance(login, (str, unicode)), login\n if login is github.GithubObject.NotSet:\n- return AuthenticatedUser.AuthenticatedUser(self.__requester, {\"url\": \"/user\"}, completed=False)\n+ return AuthenticatedUser.AuthenticatedUser(self.__requester, {}, {\"url\": \"/user\"}, completed=False)\n else:\n headers, data = self.__requester.requestJsonAndCheck(\n \"GET\",\n- \"/users/\" + login,\n- None,\n- None\n+ \"/users/\" + login\n )\n- return github.NamedUser.NamedUser(self.__requester, data, completed=True)\n+ return github.NamedUser.NamedUser(self.__requester, headers, data, completed=True)\n \n def get_users(self, since=github.GithubObject.NotSet):\n \"\"\"\n@@ -175,11 +177,9 @@ def get_organization(self, login):\n assert isinstance(login, (str, unicode)), login\n headers, data = self.__requester.requestJsonAndCheck(\n \"GET\",\n- \"/orgs/\" + login,\n- None,\n- None\n+ \"/orgs/\" + login\n )\n- return github.Organization.Organization(self.__requester, data, completed=True)\n+ return github.Organization.Organization(self.__requester, headers, data, completed=True)\n \n def get_repo(self, full_name):\n \"\"\"\n@@ -189,11 +189,26 @@ def get_repo(self, full_name):\n assert isinstance(full_name, (str, unicode)), full_name\n headers, data = self.__requester.requestJsonAndCheck(\n \"GET\",\n- \"/repos/\" + full_name,\n- None,\n- None\n+ \"/repos/\" + full_name\n+ )\n+ return Repository.Repository(self.__requester, headers, data, completed=True)\n+\n+ def get_repos(self, since=github.GithubObject.NotSet):\n+ \"\"\"\n+ :calls: `GET /repositories `_\n+ :param since: integer\n+ :rtype: :class:`github.PaginatedList.PaginatedList` of :class:`github.Repository.Repository`\n+ \"\"\"\n+ assert since is github.GithubObject.NotSet or isinstance(since, (int, long)), since\n+ url_parameters = dict()\n+ if since is not github.GithubObject.NotSet:\n+ url_parameters[\"since\"] = since\n+ return github.PaginatedList.PaginatedList(\n+ github.Repository.Repository,\n+ self.__requester,\n+ \"/repositories\",\n+ url_parameters\n )\n- return Repository.Repository(self.__requester, data, completed=True)\n \n def get_gist(self, id):\n \"\"\"\n@@ -204,11 +219,9 @@ def get_gist(self, id):\n assert isinstance(id, (str, unicode)), id\n headers, data = self.__requester.requestJsonAndCheck(\n \"GET\",\n- \"/gists/\" + id,\n- None,\n- None\n+ \"/gists/\" + id\n )\n- return github.Gist.Gist(self.__requester, data, completed=True)\n+ return github.Gist.Gist(self.__requester, headers, data, completed=True)\n \n def get_gists(self):\n \"\"\"\n@@ -266,11 +279,9 @@ def legacy_search_user_by_email(self, email):\n assert isinstance(email, (str, unicode)), email\n headers, data = self.__requester.requestJsonAndCheck(\n \"GET\",\n- \"/legacy/user/email/\" + email,\n- None,\n- None\n+ \"/legacy/user/email/\" + email\n )\n- return github.NamedUser.NamedUser(self.__requester, Legacy.convertUser(data[\"user\"]), completed=False)\n+ return github.NamedUser.NamedUser(self.__requester, headers, Legacy.convertUser(data[\"user\"]), completed=False)\n \n def render_markdown(self, text, context=github.GithubObject.NotSet):\n \"\"\"\n@@ -290,23 +301,20 @@ def render_markdown(self, text, context=github.GithubObject.NotSet):\n status, headers, data = self.__requester.requestJson(\n \"POST\",\n \"/markdown\",\n- None,\n- post_parameters\n+ input=post_parameters\n )\n return data\n \n def get_hooks(self):\n \"\"\"\n :calls: `GET /hooks `_\n- :rtype: :class:`github.PaginatedList.PaginatedList` of :class:`github.HookDescription.HookDescription`\n+ :rtype: list of :class:`github.HookDescription.HookDescription`\n \"\"\"\n headers, data = self.__requester.requestJsonAndCheck(\n \"GET\",\n- \"/hooks\",\n- None,\n- None\n+ \"/hooks\"\n )\n- return [HookDescription.HookDescription(self.__requester, attributes, completed=True) for attributes in data]\n+ return [HookDescription.HookDescription(self.__requester, headers, attributes, completed=True) for attributes in data]\n \n def get_gitignore_templates(self):\n \"\"\"\n@@ -315,9 +323,7 @@ def get_gitignore_templates(self):\n \"\"\"\n headers, data = self.__requester.requestJsonAndCheck(\n \"GET\",\n- \"/gitignore/templates\",\n- None,\n- None\n+ \"/gitignore/templates\"\n )\n return data\n \n@@ -329,18 +335,81 @@ def get_gitignore_template(self, name):\n assert isinstance(name, (str, unicode)), name\n headers, attributes = self.__requester.requestJsonAndCheck(\n \"GET\",\n- \"/gitignore/templates/\" + name,\n- None,\n- None\n+ \"/gitignore/templates/\" + name\n )\n- return GitignoreTemplate.GitignoreTemplate(self.__requester, attributes, completed=True)\n+ return GitignoreTemplate.GitignoreTemplate(self.__requester, headers, attributes, completed=True)\n \n- def create_from_raw_data(self, klass, raw_data):\n+ def create_from_raw_data(self, klass, raw_data, headers={}):\n \"\"\"\n- Creates an object from raw_data previously obtained by :attr:`github.GithubObject.GithubObject.raw_data`\n+ Creates an object from raw_data previously obtained by :attr:`github.GithubObject.GithubObject.raw_data`,\n+ and optionaly headers previously obtained by :attr:`github.GithubObject.GithubObject.raw_headers`.\n \n :param klass: the class of the object to create\n :param raw_data: dict\n+ :param headers: dict\n :rtype: instance of class ``klass``\n \"\"\"\n- return klass(self.__requester, raw_data, completed=True)\n+ return klass(self.__requester, headers, raw_data, completed=True)\n+\n+ def dump(self, obj, file, protocol=0):\n+ \"\"\"\n+ Dumps (pickles) a PyGithub object to a file-like object.\n+ Some effort is made to not pickle sensitive informations like the Github credentials used in the :class:`Github` instance.\n+ But NO EFFORT is made to remove sensitive information from the object's attributes.\n+\n+ :param obj: the object to pickle\n+ :param file: the file-like object to pickle to\n+ :param protocol: the `pickling protocol `_\n+ \"\"\"\n+ pickle.dump((obj.__class__, obj.raw_data, obj.raw_headers), file, protocol)\n+\n+ def load(self, f):\n+ \"\"\"\n+ Loads (unpickles) a PyGithub object from a file-like object.\n+\n+ :param f: the file-like object to unpickle from\n+ :return: the unpickled object\n+ \"\"\"\n+ return self.create_from_raw_data(*pickle.load(f))\n+\n+ def get_api_status(self):\n+ \"\"\"\n+ This doesn't work with a Github Enterprise installation, because it always targets https://status.github.com.\n+\n+ :calls: `GET /api/status.json `_\n+ :rtype: :class:`github.Status.Status`\n+ \"\"\"\n+ headers, attributes = self.__requester.requestJsonAndCheck(\n+ \"GET\",\n+ \"/api/status.json\",\n+ cnx=\"status\"\n+ )\n+ return Status.Status(self.__requester, headers, attributes, completed=True)\n+\n+ def get_last_api_status_message(self):\n+ \"\"\"\n+ This doesn't work with a Github Enterprise installation, because it always targets https://status.github.com.\n+\n+ :calls: `GET /api/last-message.json `_\n+ :rtype: :class:`github.StatusMessage.StatusMessage`\n+ \"\"\"\n+ headers, attributes = self.__requester.requestJsonAndCheck(\n+ \"GET\",\n+ \"/api/last-message.json\",\n+ cnx=\"status\"\n+ )\n+ return StatusMessage.StatusMessage(self.__requester, headers, attributes, completed=True)\n+\n+ def get_api_status_messages(self):\n+ \"\"\"\n+ This doesn't work with a Github Enterprise installation, because it always targets https://status.github.com.\n+\n+ :calls: `GET /api/messages.json `_\n+ :rtype: list of :class:`github.StatusMessage.StatusMessage`\n+ \"\"\"\n+ headers, data = self.__requester.requestJsonAndCheck(\n+ \"GET\",\n+ \"/api/messages.json\",\n+ cnx=\"status\"\n+ )\n+ return [StatusMessage.StatusMessage(self.__requester, headers, attributes, completed=True) for attributes in data]"},{"sha":"c07ec38911b95b9baaccd7926cab22c549a9e5dd","filename":"github/Milestone.py","status":"modified","additions":4,"deletions":6,"changes":10,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/Milestone.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/Milestone.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/Milestone.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # Copyright 2013 martinqt #\n # #\n@@ -133,9 +134,7 @@ def delete(self):\n \"\"\"\n headers, data = self._requester.requestJsonAndCheck(\n \"DELETE\",\n- self.url,\n- None,\n- None\n+ self.url\n )\n \n def edit(self, title, state=github.GithubObject.NotSet, description=github.GithubObject.NotSet, due_on=github.GithubObject.NotSet):\n@@ -163,8 +162,7 @@ def edit(self, title, state=github.GithubObject.NotSet, description=github.Githu\n headers, data = self._requester.requestJsonAndCheck(\n \"PATCH\",\n self.url,\n- None,\n- post_parameters\n+ input=post_parameters\n )\n self._useAttributes(data)\n \n@@ -206,7 +204,7 @@ def _useAttributes(self, attributes):\n self._created_at = self._parseDatetime(attributes[\"created_at\"])\n if \"creator\" in attributes: # pragma no branch\n assert attributes[\"creator\"] is None or isinstance(attributes[\"creator\"], dict), attributes[\"creator\"]\n- self._creator = None if attributes[\"creator\"] is None else github.NamedUser.NamedUser(self._requester, attributes[\"creator\"], completed=False)\n+ self._creator = None if attributes[\"creator\"] is None else github.NamedUser.NamedUser(self._requester, self._headers, attributes[\"creator\"], completed=False)\n if \"description\" in attributes: # pragma no branch\n assert attributes[\"description\"] is None or isinstance(attributes[\"description\"], (str, unicode)), attributes[\"description\"]\n self._description = attributes[\"description\"]"},{"sha":"ec9bfbeddafff7bdf23258a08dc9f0ac8f4d964c","filename":"github/NamedUser.py","status":"modified","additions":19,"deletions":8,"changes":27,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/NamedUser.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/NamedUser.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/NamedUser.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -5,6 +5,7 @@\n # Copyright 2012 Steve English #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #\n@@ -268,10 +269,9 @@ def create_gist(self, public, files, description=github.GithubObject.NotSet):\n headers, data = self._requester.requestJsonAndCheck(\n \"POST\",\n self.url + \"/gists\",\n- None,\n- post_parameters\n+ input=post_parameters\n )\n- return github.Gist.Gist(self._requester, data, completed=True)\n+ return github.Gist.Gist(self._requester, headers, data, completed=True)\n \n def get_events(self):\n \"\"\"\n@@ -390,11 +390,9 @@ def get_repo(self, name):\n assert isinstance(name, (str, unicode)), name\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n- \"/repos/\" + self.login + \"/\" + name,\n- None,\n- None\n+ \"/repos/\" + self.login + \"/\" + name\n )\n- return github.Repository.Repository(self._requester, data, completed=True)\n+ return github.Repository.Repository(self._requester, headers, data, completed=True)\n \n def get_repos(self, type=github.GithubObject.NotSet):\n \"\"\"\n@@ -449,6 +447,19 @@ def get_watched(self):\n None\n )\n \n+ def has_in_following(self, following):\n+ \"\"\"\n+ :calls: `GET /user/:user/following/:target_user `_\n+ :param following: :class:`github.NamedUser.NamedUser`\n+ :rtype: bool\n+ \"\"\"\n+ assert isinstance(following, github.NamedUser.NamedUser), following\n+ status, headers, data = self._requester.requestJson(\n+ \"GET\",\n+ self.url + \"/following/\" + following._identity\n+ )\n+ return status == 204\n+\n @property\n def _identity(self):\n return self.login\n@@ -541,7 +552,7 @@ def _useAttributes(self, attributes):\n self._owned_private_repos = attributes[\"owned_private_repos\"]\n if \"plan\" in attributes: # pragma no branch\n assert attributes[\"plan\"] is None or isinstance(attributes[\"plan\"], dict), attributes[\"plan\"]\n- self._plan = None if attributes[\"plan\"] is None else github.Plan.Plan(self._requester, attributes[\"plan\"], completed=False)\n+ self._plan = None if attributes[\"plan\"] is None else github.Plan.Plan(self._requester, self._headers, attributes[\"plan\"], completed=False)\n if \"private_gists\" in attributes: # pragma no branch\n assert attributes[\"private_gists\"] is None or isinstance(attributes[\"private_gists\"], (int, long)), attributes[\"private_gists\"]\n self._private_gists = attributes[\"private_gists\"]"},{"sha":"bb1c96b6780fb31573952d049166fd68ecb5a64a","filename":"github/Notification.py","status":"modified","additions":3,"deletions":2,"changes":5,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/Notification.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/Notification.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/Notification.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -2,6 +2,7 @@\n \n ############################ Copyrights and license ############################\n # #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Peter Golm #\n # Copyright 2013 Vincent Jacques #\n # Copyright 2013 martinqt #\n@@ -104,10 +105,10 @@ def _useAttributes(self, attributes):\n self._id = attributes[\"id\"]\n if \"repository\" in attributes: # pragma no branch\n assert attributes[\"repository\"] is None or isinstance(attributes[\"repository\"], dict), attributes[\"repository\"]\n- self._repository = None if attributes[\"repository\"] is None else github.Repository.Repository(self._requester, attributes[\"repository\"], completed=False)\n+ self._repository = None if attributes[\"repository\"] is None else github.Repository.Repository(self._requester, self._headers, attributes[\"repository\"], completed=False)\n if \"subject\" in attributes: # pragma no branch\n assert attributes[\"subject\"] is None or isinstance(attributes[\"subject\"], dict), attributes[\"subject\"]\n- self._subject = None if attributes[\"subject\"] is None else github.NotificationSubject.NotificationSubject(self._requester, attributes[\"subject\"], completed=False)\n+ self._subject = None if attributes[\"subject\"] is None else github.NotificationSubject.NotificationSubject(self._requester, self._headers, attributes[\"subject\"], completed=False)\n if \"reason\" in attributes: # pragma no branch\n assert attributes[\"reason\"] is None or isinstance(attributes[\"reason\"], (str, unicode)), attributes[\"reason\"]\n self._reason = attributes[\"reason\"]"},{"sha":"7e1ce3adbf00f58e49724f0af978be5294a5b6f1","filename":"github/NotificationSubject.py","status":"modified","additions":1,"deletions":0,"changes":1,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/NotificationSubject.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/NotificationSubject.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/NotificationSubject.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -2,6 +2,7 @@\n \n ############################ Copyrights and license ############################\n # #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #"},{"sha":"68245f3e28173790bcae32b16120ab027b995188","filename":"github/Organization.py","status":"modified","additions":18,"deletions":35,"changes":53,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/Organization.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/Organization.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/Organization.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -5,6 +5,7 @@\n # Copyright 2012 Steve English #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # Copyright 2013 martinqt #\n # #\n@@ -243,9 +244,7 @@ def add_to_public_members(self, public_member):\n assert isinstance(public_member, github.NamedUser.NamedUser), public_member\n headers, data = self._requester.requestJsonAndCheck(\n \"PUT\",\n- self.url + \"/public_members/\" + public_member._identity,\n- None,\n- None\n+ self.url + \"/public_members/\" + public_member._identity\n )\n \n def create_fork(self, repo):\n@@ -261,10 +260,9 @@ def create_fork(self, repo):\n headers, data = self._requester.requestJsonAndCheck(\n \"POST\",\n \"/repos/\" + repo.owner.login + \"/\" + repo.name + \"/forks\",\n- url_parameters,\n- None\n+ parameters=url_parameters\n )\n- return github.Repository.Repository(self._requester, data, completed=True)\n+ return github.Repository.Repository(self._requester, headers, data, completed=True)\n \n def create_repo(self, name, description=github.GithubObject.NotSet, homepage=github.GithubObject.NotSet, private=github.GithubObject.NotSet, has_issues=github.GithubObject.NotSet, has_wiki=github.GithubObject.NotSet, has_downloads=github.GithubObject.NotSet, team_id=github.GithubObject.NotSet, auto_init=github.GithubObject.NotSet, gitignore_template=github.GithubObject.NotSet):\n \"\"\"\n@@ -315,10 +313,9 @@ def create_repo(self, name, description=github.GithubObject.NotSet, homepage=git\n headers, data = self._requester.requestJsonAndCheck(\n \"POST\",\n self.url + \"/repos\",\n- None,\n- post_parameters\n+ input=post_parameters\n )\n- return github.Repository.Repository(self._requester, data, completed=True)\n+ return github.Repository.Repository(self._requester, headers, data, completed=True)\n \n def create_team(self, name, repo_names=github.GithubObject.NotSet, permission=github.GithubObject.NotSet):\n \"\"\"\n@@ -341,10 +338,9 @@ def create_team(self, name, repo_names=github.GithubObject.NotSet, permission=gi\n headers, data = self._requester.requestJsonAndCheck(\n \"POST\",\n self.url + \"/teams\",\n- None,\n- post_parameters\n+ input=post_parameters\n )\n- return github.Team.Team(self._requester, data, completed=True)\n+ return github.Team.Team(self._requester, headers, data, completed=True)\n \n def edit(self, billing_email=github.GithubObject.NotSet, blog=github.GithubObject.NotSet, company=github.GithubObject.NotSet, email=github.GithubObject.NotSet, location=github.GithubObject.NotSet, name=github.GithubObject.NotSet):\n \"\"\"\n@@ -379,8 +375,7 @@ def edit(self, billing_email=github.GithubObject.NotSet, blog=github.GithubObjec\n headers, data = self._requester.requestJsonAndCheck(\n \"PATCH\",\n self.url,\n- None,\n- post_parameters\n+ input=post_parameters\n )\n self._useAttributes(data)\n \n@@ -467,11 +462,9 @@ def get_repo(self, name):\n assert isinstance(name, (str, unicode)), name\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n- \"/repos/\" + self.login + \"/\" + name,\n- None,\n- None\n+ \"/repos/\" + self.login + \"/\" + name\n )\n- return github.Repository.Repository(self._requester, data, completed=True)\n+ return github.Repository.Repository(self._requester, headers, data, completed=True)\n \n def get_repos(self, type=github.GithubObject.NotSet):\n \"\"\"\n@@ -499,11 +492,9 @@ def get_team(self, id):\n assert isinstance(id, (int, long)), id\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n- \"/teams/\" + str(id),\n- None,\n- None\n+ \"/teams/\" + str(id)\n )\n- return github.Team.Team(self._requester, data, completed=True)\n+ return github.Team.Team(self._requester, headers, data, completed=True)\n \n def get_teams(self):\n \"\"\"\n@@ -526,9 +517,7 @@ def has_in_members(self, member):\n assert isinstance(member, github.NamedUser.NamedUser), member\n status, headers, data = self._requester.requestJson(\n \"GET\",\n- self.url + \"/members/\" + member._identity,\n- None,\n- None\n+ self.url + \"/members/\" + member._identity\n )\n return status == 204\n \n@@ -541,9 +530,7 @@ def has_in_public_members(self, public_member):\n assert isinstance(public_member, github.NamedUser.NamedUser), public_member\n status, headers, data = self._requester.requestJson(\n \"GET\",\n- self.url + \"/public_members/\" + public_member._identity,\n- None,\n- None\n+ self.url + \"/public_members/\" + public_member._identity\n )\n return status == 204\n \n@@ -556,9 +543,7 @@ def remove_from_members(self, member):\n assert isinstance(member, github.NamedUser.NamedUser), member\n headers, data = self._requester.requestJsonAndCheck(\n \"DELETE\",\n- self.url + \"/members/\" + member._identity,\n- None,\n- None\n+ self.url + \"/members/\" + member._identity\n )\n \n def remove_from_public_members(self, public_member):\n@@ -570,9 +555,7 @@ def remove_from_public_members(self, public_member):\n assert isinstance(public_member, github.NamedUser.NamedUser), public_member\n headers, data = self._requester.requestJsonAndCheck(\n \"DELETE\",\n- self.url + \"/public_members/\" + public_member._identity,\n- None,\n- None\n+ self.url + \"/public_members/\" + public_member._identity\n )\n \n def _initAttributes(self):\n@@ -655,7 +638,7 @@ def _useAttributes(self, attributes):\n self._owned_private_repos = attributes[\"owned_private_repos\"]\n if \"plan\" in attributes: # pragma no branch\n assert attributes[\"plan\"] is None or isinstance(attributes[\"plan\"], dict), attributes[\"plan\"]\n- self._plan = None if attributes[\"plan\"] is None else github.Plan.Plan(self._requester, attributes[\"plan\"], completed=False)\n+ self._plan = None if attributes[\"plan\"] is None else github.Plan.Plan(self._requester, self._headers, attributes[\"plan\"], completed=False)\n if \"private_gists\" in attributes: # pragma no branch\n assert attributes[\"private_gists\"] is None or isinstance(attributes[\"private_gists\"], (int, long)), attributes[\"private_gists\"]\n self._private_gists = attributes[\"private_gists\"]"},{"sha":"4c22b991def262d6e5032a708ba610f65417f1b9","filename":"github/PaginatedList.py","status":"modified","additions":18,"deletions":5,"changes":23,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/PaginatedList.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/PaginatedList.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/PaginatedList.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Bill Mill #\n # Copyright 2013 Vincent Jacques #\n # Copyright 2013 davidbrai #\n@@ -118,7 +119,11 @@ def __init__(self, contentClass, requester, firstUrl, firstParams):\n self._reversed = False\n \n def _getLastPageUrl(self):\n- headers, data = self.__requester.requestJsonAndCheck(\"GET\", self.__firstUrl, self.__nextParams, None)\n+ headers, data = self.__requester.requestJsonAndCheck(\n+ \"GET\",\n+ self.__firstUrl,\n+ parameters=self.__nextParams\n+ )\n links = self.__parseLinkHeader(headers)\n lastUrl = links.get(\"last\")\n return lastUrl\n@@ -139,7 +144,11 @@ def _couldGrow(self):\n return self.__nextUrl is not None\n \n def _fetchNextPage(self):\n- headers, data = self.__requester.requestJsonAndCheck(\"GET\", self.__nextUrl, self.__nextParams, None)\n+ headers, data = self.__requester.requestJsonAndCheck(\n+ \"GET\",\n+ self.__nextUrl,\n+ parameters=self.__nextParams\n+ )\n \n self.__nextUrl = None\n if len(data) > 0:\n@@ -152,7 +161,7 @@ def _fetchNextPage(self):\n self.__nextParams = None\n \n content = [\n- self.__contentClass(self.__requester, element, completed=False)\n+ self.__contentClass(self.__requester, headers, element, completed=False)\n for element in data\n ]\n if self._reversed:\n@@ -176,9 +185,13 @@ def get_page(self, page):\n params[\"page\"] = page + 1\n if self.__requester.per_page != 30:\n params[\"per_page\"] = self.__requester.per_page\n- headers, data = self.__requester.requestJsonAndCheck(\"GET\", self.__firstUrl, params, None)\n+ headers, data = self.__requester.requestJsonAndCheck(\n+ \"GET\",\n+ self.__firstUrl,\n+ parameters=params\n+ )\n \n return [\n- self.__contentClass(self.__requester, element, completed=False)\n+ self.__contentClass(self.__requester, headers, element, completed=False)\n for element in data\n ]"},{"sha":"3a3b420615062ee9e8a4fff31b65bd575c65d5a9","filename":"github/Permissions.py","status":"modified","additions":1,"deletions":0,"changes":1,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/Permissions.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/Permissions.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/Permissions.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #"},{"sha":"99a3c3a6d9b4bef7b9bc78f0bd247a4083a2285e","filename":"github/Plan.py","status":"modified","additions":1,"deletions":0,"changes":1,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/Plan.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/Plan.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/Plan.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #"},{"sha":"85867c60e0f888692b9410f45be43cb69528ca0b","filename":"github/PullRequest.py","status":"modified","additions":18,"deletions":27,"changes":45,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/PullRequest.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/PullRequest.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/PullRequest.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -5,6 +5,7 @@\n # Copyright 2012 Michael Stead #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # Copyright 2013 martinqt #\n # #\n@@ -291,10 +292,9 @@ def create_review_comment(self, body, commit_id, path, position):\n headers, data = self._requester.requestJsonAndCheck(\n \"POST\",\n self.url + \"/comments\",\n- None,\n- post_parameters\n+ input=post_parameters\n )\n- return github.PullRequestComment.PullRequestComment(self._requester, data, completed=True)\n+ return github.PullRequestComment.PullRequestComment(self._requester, headers, data, completed=True)\n \n def create_issue_comment(self, body):\n \"\"\"\n@@ -309,10 +309,9 @@ def create_issue_comment(self, body):\n headers, data = self._requester.requestJsonAndCheck(\n \"POST\",\n self._parentUrl(self._parentUrl(self.url)) + \"/issues/\" + str(self.number) + \"/comments\",\n- None,\n- post_parameters\n+ input=post_parameters\n )\n- return github.IssueComment.IssueComment(self._requester, data, completed=True)\n+ return github.IssueComment.IssueComment(self._requester, headers, data, completed=True)\n \n def edit(self, title=github.GithubObject.NotSet, body=github.GithubObject.NotSet, state=github.GithubObject.NotSet):\n \"\"\"\n@@ -335,8 +334,7 @@ def edit(self, title=github.GithubObject.NotSet, body=github.GithubObject.NotSet\n headers, data = self._requester.requestJsonAndCheck(\n \"PATCH\",\n self.url,\n- None,\n- post_parameters\n+ input=post_parameters\n )\n self._useAttributes(data)\n \n@@ -357,11 +355,9 @@ def get_review_comment(self, id):\n assert isinstance(id, (int, long)), id\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n- self._parentUrl(self.url) + \"/comments/\" + str(id),\n- None,\n- None\n+ self._parentUrl(self.url) + \"/comments/\" + str(id)\n )\n- return github.PullRequestComment.PullRequestComment(self._requester, data, completed=True)\n+ return github.PullRequestComment.PullRequestComment(self._requester, headers, data, completed=True)\n \n def get_comments(self):\n \"\"\"\n@@ -415,11 +411,9 @@ def get_issue_comment(self, id):\n assert isinstance(id, (int, long)), id\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n- self._parentUrl(self._parentUrl(self.url)) + \"/issues/comments/\" + str(id),\n- None,\n- None\n+ self._parentUrl(self._parentUrl(self.url)) + \"/issues/comments/\" + str(id)\n )\n- return github.IssueComment.IssueComment(self._requester, data, completed=True)\n+ return github.IssueComment.IssueComment(self._requester, headers, data, completed=True)\n \n def get_issue_comments(self):\n \"\"\"\n@@ -440,9 +434,7 @@ def is_merged(self):\n \"\"\"\n status, headers, data = self._requester.requestJson(\n \"GET\",\n- self.url + \"/merge\",\n- None,\n- None\n+ self.url + \"/merge\"\n )\n return status == 204\n \n@@ -459,10 +451,9 @@ def merge(self, commit_message=github.GithubObject.NotSet):\n headers, data = self._requester.requestJsonAndCheck(\n \"PUT\",\n self.url + \"/merge\",\n- None,\n- post_parameters\n+ input=post_parameters\n )\n- return github.PullRequestMergeStatus.PullRequestMergeStatus(self._requester, data, completed=True)\n+ return github.PullRequestMergeStatus.PullRequestMergeStatus(self._requester, headers, data, completed=True)\n \n def _initAttributes(self):\n self._additions = github.GithubObject.NotSet\n@@ -499,10 +490,10 @@ def _useAttributes(self, attributes):\n self._additions = attributes[\"additions\"]\n if \"assignee\" in attributes: # pragma no branch\n assert attributes[\"assignee\"] is None or isinstance(attributes[\"assignee\"], dict), attributes[\"assignee\"]\n- self._assignee = None if attributes[\"assignee\"] is None else github.NamedUser.NamedUser(self._requester, attributes[\"assignee\"], completed=False)\n+ self._assignee = None if attributes[\"assignee\"] is None else github.NamedUser.NamedUser(self._requester, self._headers, attributes[\"assignee\"], completed=False)\n if \"base\" in attributes: # pragma no branch\n assert attributes[\"base\"] is None or isinstance(attributes[\"base\"], dict), attributes[\"base\"]\n- self._base = None if attributes[\"base\"] is None else github.PullRequestPart.PullRequestPart(self._requester, attributes[\"base\"], completed=False)\n+ self._base = None if attributes[\"base\"] is None else github.PullRequestPart.PullRequestPart(self._requester, self._headers, attributes[\"base\"], completed=False)\n if \"body\" in attributes: # pragma no branch\n assert attributes[\"body\"] is None or isinstance(attributes[\"body\"], (str, unicode)), attributes[\"body\"]\n self._body = attributes[\"body\"]\n@@ -529,7 +520,7 @@ def _useAttributes(self, attributes):\n self._diff_url = attributes[\"diff_url\"]\n if \"head\" in attributes: # pragma no branch\n assert attributes[\"head\"] is None or isinstance(attributes[\"head\"], dict), attributes[\"head\"]\n- self._head = None if attributes[\"head\"] is None else github.PullRequestPart.PullRequestPart(self._requester, attributes[\"head\"], completed=False)\n+ self._head = None if attributes[\"head\"] is None else github.PullRequestPart.PullRequestPart(self._requester, self._headers, attributes[\"head\"], completed=False)\n if \"html_url\" in attributes: # pragma no branch\n assert attributes[\"html_url\"] is None or isinstance(attributes[\"html_url\"], (str, unicode)), attributes[\"html_url\"]\n self._html_url = attributes[\"html_url\"]\n@@ -550,7 +541,7 @@ def _useAttributes(self, attributes):\n self._merged_at = self._parseDatetime(attributes[\"merged_at\"])\n if \"merged_by\" in attributes: # pragma no branch\n assert attributes[\"merged_by\"] is None or isinstance(attributes[\"merged_by\"], dict), attributes[\"merged_by\"]\n- self._merged_by = None if attributes[\"merged_by\"] is None else github.NamedUser.NamedUser(self._requester, attributes[\"merged_by\"], completed=False)\n+ self._merged_by = None if attributes[\"merged_by\"] is None else github.NamedUser.NamedUser(self._requester, self._headers, attributes[\"merged_by\"], completed=False)\n if \"number\" in attributes: # pragma no branch\n assert attributes[\"number\"] is None or isinstance(attributes[\"number\"], (int, long)), attributes[\"number\"]\n self._number = attributes[\"number\"]\n@@ -574,4 +565,4 @@ def _useAttributes(self, attributes):\n self._url = attributes[\"url\"]\n if \"user\" in attributes: # pragma no branch\n assert attributes[\"user\"] is None or isinstance(attributes[\"user\"], dict), attributes[\"user\"]\n- self._user = None if attributes[\"user\"] is None else github.NamedUser.NamedUser(self._requester, attributes[\"user\"], completed=False)\n+ self._user = None if attributes[\"user\"] is None else github.NamedUser.NamedUser(self._requester, self._headers, attributes[\"user\"], completed=False)"},{"sha":"1e96426e98b1f17f5ec26185257276cafabb376b","filename":"github/PullRequestComment.py","status":"modified","additions":4,"deletions":6,"changes":10,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/PullRequestComment.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/PullRequestComment.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/PullRequestComment.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Michael Stead #\n # Copyright 2013 Vincent Jacques #\n # Copyright 2013 martinqt #\n@@ -138,9 +139,7 @@ def delete(self):\n \"\"\"\n headers, data = self._requester.requestJsonAndCheck(\n \"DELETE\",\n- self.url,\n- None,\n- None\n+ self.url\n )\n \n def edit(self, body):\n@@ -156,8 +155,7 @@ def edit(self, body):\n headers, data = self._requester.requestJsonAndCheck(\n \"PATCH\",\n self.url,\n- None,\n- post_parameters\n+ input=post_parameters\n )\n self._useAttributes(data)\n \n@@ -211,4 +209,4 @@ def _useAttributes(self, attributes):\n self._html_url = attributes[\"html_url\"]\n if \"user\" in attributes: # pragma no branch\n assert attributes[\"user\"] is None or isinstance(attributes[\"user\"], dict), attributes[\"user\"]\n- self._user = None if attributes[\"user\"] is None else github.NamedUser.NamedUser(self._requester, attributes[\"user\"], completed=False)\n+ self._user = None if attributes[\"user\"] is None else github.NamedUser.NamedUser(self._requester, self._headers, attributes[\"user\"], completed=False)"},{"sha":"9c416dbd5a260662bca2f7d8d3725e87f822ae06","filename":"github/PullRequestMergeStatus.py","status":"modified","additions":1,"deletions":0,"changes":1,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/PullRequestMergeStatus.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/PullRequestMergeStatus.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/PullRequestMergeStatus.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # Copyright 2013 martinqt #\n # #"},{"sha":"791452b028bd4d1a970b78581b849bb755be2efa","filename":"github/PullRequestPart.py","status":"modified","additions":3,"deletions":2,"changes":5,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/PullRequestPart.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/PullRequestPart.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/PullRequestPart.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #\n@@ -85,10 +86,10 @@ def _useAttributes(self, attributes):\n self._ref = attributes[\"ref\"]\n if \"repo\" in attributes: # pragma no branch\n assert attributes[\"repo\"] is None or isinstance(attributes[\"repo\"], dict), attributes[\"repo\"]\n- self._repo = None if attributes[\"repo\"] is None else github.Repository.Repository(self._requester, attributes[\"repo\"], completed=False)\n+ self._repo = None if attributes[\"repo\"] is None else github.Repository.Repository(self._requester, self._headers, attributes[\"repo\"], completed=False)\n if \"sha\" in attributes: # pragma no branch\n assert attributes[\"sha\"] is None or isinstance(attributes[\"sha\"], (str, unicode)), attributes[\"sha\"]\n self._sha = attributes[\"sha\"]\n if \"user\" in attributes: # pragma no branch\n assert attributes[\"user\"] is None or isinstance(attributes[\"user\"], dict), attributes[\"user\"]\n- self._user = None if attributes[\"user\"] is None else github.NamedUser.NamedUser(self._requester, attributes[\"user\"], completed=False)\n+ self._user = None if attributes[\"user\"] is None else github.NamedUser.NamedUser(self._requester, self._headers, attributes[\"user\"], completed=False)"},{"sha":"7eb3d235917b3a63e8d31caefae5cba981a25134","filename":"github/Repository.py","status":"modified","additions":85,"deletions":152,"changes":237,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/Repository.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/Repository.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/Repository.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -7,6 +7,7 @@\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n # Copyright 2013 Adrian Petrescu #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Mark Roddy #\n # Copyright 2013 Vincent Jacques #\n # Copyright 2013 martinqt #\n@@ -316,9 +317,7 @@ def add_to_collaborators(self, collaborator):\n assert isinstance(collaborator, github.NamedUser.NamedUser), collaborator\n headers, data = self._requester.requestJsonAndCheck(\n \"PUT\",\n- self.url + \"/collaborators/\" + collaborator._identity,\n- None,\n- None\n+ self.url + \"/collaborators/\" + collaborator._identity\n )\n \n def compare(self, base, head):\n@@ -332,11 +331,9 @@ def compare(self, base, head):\n assert isinstance(head, (str, unicode)), head\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n- self.url + \"/compare/\" + base + \"...\" + head,\n- None,\n- None\n+ self.url + \"/compare/\" + base + \"...\" + head\n )\n- return github.Comparison.Comparison(self._requester, data, completed=True)\n+ return github.Comparison.Comparison(self._requester, headers, data, completed=True)\n \n def create_download(self, name, size, description=github.GithubObject.NotSet, content_type=github.GithubObject.NotSet):\n \"\"\"\n@@ -362,10 +359,9 @@ def create_download(self, name, size, description=github.GithubObject.NotSet, co\n headers, data = self._requester.requestJsonAndCheck(\n \"POST\",\n self.url + \"/downloads\",\n- None,\n- post_parameters\n+ input=post_parameters\n )\n- return github.Download.Download(self._requester, data, completed=True)\n+ return github.Download.Download(self._requester, headers, data, completed=True)\n \n def create_git_blob(self, content, encoding):\n \"\"\"\n@@ -383,10 +379,9 @@ def create_git_blob(self, content, encoding):\n headers, data = self._requester.requestJsonAndCheck(\n \"POST\",\n self.url + \"/git/blobs\",\n- None,\n- post_parameters\n+ input=post_parameters\n )\n- return github.GitBlob.GitBlob(self._requester, data, completed=True)\n+ return github.GitBlob.GitBlob(self._requester, headers, data, completed=True)\n \n def create_git_commit(self, message, tree, parents, author=github.GithubObject.NotSet, committer=github.GithubObject.NotSet):\n \"\"\"\n@@ -415,10 +410,9 @@ def create_git_commit(self, message, tree, parents, author=github.GithubObject.N\n headers, data = self._requester.requestJsonAndCheck(\n \"POST\",\n self.url + \"/git/commits\",\n- None,\n- post_parameters\n+ input=post_parameters\n )\n- return github.GitCommit.GitCommit(self._requester, data, completed=True)\n+ return github.GitCommit.GitCommit(self._requester, headers, data, completed=True)\n \n def create_git_ref(self, ref, sha):\n \"\"\"\n@@ -436,10 +430,9 @@ def create_git_ref(self, ref, sha):\n headers, data = self._requester.requestJsonAndCheck(\n \"POST\",\n self.url + \"/git/refs\",\n- None,\n- post_parameters\n+ input=post_parameters\n )\n- return github.GitRef.GitRef(self._requester, data, completed=True)\n+ return github.GitRef.GitRef(self._requester, headers, data, completed=True)\n \n def create_git_tag(self, tag, message, object, type, tagger=github.GithubObject.NotSet):\n \"\"\"\n@@ -467,10 +460,9 @@ def create_git_tag(self, tag, message, object, type, tagger=github.GithubObject.\n headers, data = self._requester.requestJsonAndCheck(\n \"POST\",\n self.url + \"/git/tags\",\n- None,\n- post_parameters\n+ input=post_parameters\n )\n- return github.GitTag.GitTag(self._requester, data, completed=True)\n+ return github.GitTag.GitTag(self._requester, headers, data, completed=True)\n \n def create_git_tree(self, tree, base_tree=github.GithubObject.NotSet):\n \"\"\"\n@@ -489,10 +481,9 @@ def create_git_tree(self, tree, base_tree=github.GithubObject.NotSet):\n headers, data = self._requester.requestJsonAndCheck(\n \"POST\",\n self.url + \"/git/trees\",\n- None,\n- post_parameters\n+ input=post_parameters\n )\n- return github.GitTree.GitTree(self._requester, data, completed=True)\n+ return github.GitTree.GitTree(self._requester, headers, data, completed=True)\n \n def create_hook(self, name, config, events=github.GithubObject.NotSet, active=github.GithubObject.NotSet):\n \"\"\"\n@@ -518,10 +509,9 @@ def create_hook(self, name, config, events=github.GithubObject.NotSet, active=gi\n headers, data = self._requester.requestJsonAndCheck(\n \"POST\",\n self.url + \"/hooks\",\n- None,\n- post_parameters\n+ input=post_parameters\n )\n- return github.Hook.Hook(self._requester, data, completed=True)\n+ return github.Hook.Hook(self._requester, headers, data, completed=True)\n \n def create_issue(self, title, body=github.GithubObject.NotSet, assignee=github.GithubObject.NotSet, milestone=github.GithubObject.NotSet, labels=github.GithubObject.NotSet):\n \"\"\"\n@@ -552,10 +542,9 @@ def create_issue(self, title, body=github.GithubObject.NotSet, assignee=github.G\n headers, data = self._requester.requestJsonAndCheck(\n \"POST\",\n self.url + \"/issues\",\n- None,\n- post_parameters\n+ input=post_parameters\n )\n- return github.Issue.Issue(self._requester, data, completed=True)\n+ return github.Issue.Issue(self._requester, headers, data, completed=True)\n \n def create_key(self, title, key):\n \"\"\"\n@@ -573,10 +562,9 @@ def create_key(self, title, key):\n headers, data = self._requester.requestJsonAndCheck(\n \"POST\",\n self.url + \"/keys\",\n- None,\n- post_parameters\n+ input=post_parameters\n )\n- return github.RepositoryKey.RepositoryKey(self._requester, data, completed=True, repoUrl=self._url)\n+ return github.RepositoryKey.RepositoryKey(self._requester, headers, data, completed=True, repoUrl=self._url)\n \n def create_label(self, name, color):\n \"\"\"\n@@ -594,10 +582,9 @@ def create_label(self, name, color):\n headers, data = self._requester.requestJsonAndCheck(\n \"POST\",\n self.url + \"/labels\",\n- None,\n- post_parameters\n+ input=post_parameters\n )\n- return github.Label.Label(self._requester, data, completed=True)\n+ return github.Label.Label(self._requester, headers, data, completed=True)\n \n def create_milestone(self, title, state=github.GithubObject.NotSet, description=github.GithubObject.NotSet, due_on=github.GithubObject.NotSet):\n \"\"\"\n@@ -624,10 +611,9 @@ def create_milestone(self, title, state=github.GithubObject.NotSet, description=\n headers, data = self._requester.requestJsonAndCheck(\n \"POST\",\n self.url + \"/milestones\",\n- None,\n- post_parameters\n+ input=post_parameters\n )\n- return github.Milestone.Milestone(self._requester, data, completed=True)\n+ return github.Milestone.Milestone(self._requester, headers, data, completed=True)\n \n def create_pull(self, *args, **kwds):\n \"\"\"\n@@ -662,10 +648,9 @@ def __create_pull(self, **kwds):\n headers, data = self._requester.requestJsonAndCheck(\n \"POST\",\n self.url + \"/pulls\",\n- None,\n- post_parameters\n+ input=post_parameters\n )\n- return github.PullRequest.PullRequest(self._requester, data, completed=True)\n+ return github.PullRequest.PullRequest(self._requester, headers, data, completed=True)\n \n def delete(self):\n \"\"\"\n@@ -674,9 +659,7 @@ def delete(self):\n \"\"\"\n headers, data = self._requester.requestJsonAndCheck(\n \"DELETE\",\n- self.url,\n- None,\n- None\n+ self.url\n )\n \n def edit(self, name, description=github.GithubObject.NotSet, homepage=github.GithubObject.NotSet, public=github.GithubObject.NotSet, has_issues=github.GithubObject.NotSet, has_wiki=github.GithubObject.NotSet, has_downloads=github.GithubObject.NotSet, default_branch=github.GithubObject.NotSet):\n@@ -720,8 +703,7 @@ def edit(self, name, description=github.GithubObject.NotSet, homepage=github.Git\n headers, data = self._requester.requestJsonAndCheck(\n \"PATCH\",\n self.url,\n- None,\n- post_parameters\n+ input=post_parameters\n )\n self._useAttributes(data)\n \n@@ -739,9 +721,7 @@ def get_archive_link(self, archive_format, ref=github.GithubObject.NotSet):\n url += \"/\" + ref\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n- url,\n- None,\n- None\n+ url\n )\n return headers[\"location\"]\n \n@@ -766,11 +746,9 @@ def get_branch(self, branch):\n assert isinstance(branch, (str, unicode)), branch\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n- self.url + \"/branches/\" + branch,\n- None,\n- None\n+ self.url + \"/branches/\" + branch\n )\n- return github.Branch.Branch(self._requester, data, completed=True)\n+ return github.Branch.Branch(self._requester, headers, data, completed=True)\n \n def get_branches(self):\n \"\"\"\n@@ -805,11 +783,9 @@ def get_comment(self, id):\n assert isinstance(id, (int, long)), id\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n- self.url + \"/comments/\" + str(id),\n- None,\n- None\n+ self.url + \"/comments/\" + str(id)\n )\n- return github.CommitComment.CommitComment(self._requester, data, completed=True)\n+ return github.CommitComment.CommitComment(self._requester, headers, data, completed=True)\n \n def get_comments(self):\n \"\"\"\n@@ -832,11 +808,9 @@ def get_commit(self, sha):\n assert isinstance(sha, (str, unicode)), sha\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n- self.url + \"/commits/\" + sha,\n- None,\n- None\n+ self.url + \"/commits/\" + sha\n )\n- return github.Commit.Commit(self._requester, data, completed=True)\n+ return github.Commit.Commit(self._requester, headers, data, completed=True)\n \n def get_commits(self, sha=github.GithubObject.NotSet, path=github.GithubObject.NotSet, since=github.GithubObject.NotSet, until=github.GithubObject.NotSet):\n \"\"\"\n@@ -891,10 +865,9 @@ def get_file_contents(self, path, ref=github.GithubObject.NotSet):\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n self.url + \"/contents\" + path,\n- url_parameters,\n- None\n+ parameters=url_parameters\n )\n- return github.ContentFile.ContentFile(self._requester, data, completed=True)\n+ return github.ContentFile.ContentFile(self._requester, headers, data, completed=True)\n \n def get_dir_contents(self, path, ref=github.GithubObject.NotSet):\n \"\"\"\n@@ -911,8 +884,7 @@ def get_dir_contents(self, path, ref=github.GithubObject.NotSet):\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n self.url + \"/contents\" + path,\n- url_parameters,\n- None\n+ parameters=url_parameters\n )\n \n # Handle 302 redirect response\n@@ -920,12 +892,11 @@ def get_dir_contents(self, path, ref=github.GithubObject.NotSet):\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n headers['location'],\n- url_parameters,\n- None\n+ parameters=url_parameters\n )\n \n return [\n- github.ContentFile.ContentFile(self._requester, attributes, completed=(attributes[\"type\"] != \"file\")) # Lazy completion only makes sense for files. See discussion here: https://github.com/jacquev6/PyGithub/issues/140#issuecomment-13481130\n+ github.ContentFile.ContentFile(self._requester, headers, attributes, completed=(attributes[\"type\"] != \"file\")) # Lazy completion only makes sense for files. See discussion here: https://github.com/jacquev6/PyGithub/issues/140#issuecomment-13481130\n for attributes in data\n ]\n \n@@ -950,11 +921,9 @@ def get_download(self, id):\n assert isinstance(id, (int, long)), id\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n- self.url + \"/downloads/\" + str(id),\n- None,\n- None\n+ self.url + \"/downloads/\" + str(id)\n )\n- return github.Download.Download(self._requester, data, completed=True)\n+ return github.Download.Download(self._requester, headers, data, completed=True)\n \n def get_downloads(self):\n \"\"\"\n@@ -1001,11 +970,9 @@ def get_git_blob(self, sha):\n assert isinstance(sha, (str, unicode)), sha\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n- self.url + \"/git/blobs/\" + sha,\n- None,\n- None\n+ self.url + \"/git/blobs/\" + sha\n )\n- return github.GitBlob.GitBlob(self._requester, data, completed=True)\n+ return github.GitBlob.GitBlob(self._requester, headers, data, completed=True)\n \n def get_git_commit(self, sha):\n \"\"\"\n@@ -1016,11 +983,9 @@ def get_git_commit(self, sha):\n assert isinstance(sha, (str, unicode)), sha\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n- self.url + \"/git/commits/\" + sha,\n- None,\n- None\n+ self.url + \"/git/commits/\" + sha\n )\n- return github.GitCommit.GitCommit(self._requester, data, completed=True)\n+ return github.GitCommit.GitCommit(self._requester, headers, data, completed=True)\n \n def get_git_ref(self, ref):\n \"\"\"\n@@ -1034,11 +999,9 @@ def get_git_ref(self, ref):\n assert isinstance(ref, (str, unicode)), ref\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n- self.url + prefix + ref,\n- None,\n- None\n+ self.url + prefix + ref\n )\n- return github.GitRef.GitRef(self._requester, data, completed=True)\n+ return github.GitRef.GitRef(self._requester, headers, data, completed=True)\n \n def get_git_refs(self):\n \"\"\"\n@@ -1061,11 +1024,9 @@ def get_git_tag(self, sha):\n assert isinstance(sha, (str, unicode)), sha\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n- self.url + \"/git/tags/\" + sha,\n- None,\n- None\n+ self.url + \"/git/tags/\" + sha\n )\n- return github.GitTag.GitTag(self._requester, data, completed=True)\n+ return github.GitTag.GitTag(self._requester, headers, data, completed=True)\n \n def get_git_tree(self, sha, recursive=github.GithubObject.NotSet):\n \"\"\"\n@@ -1082,10 +1043,9 @@ def get_git_tree(self, sha, recursive=github.GithubObject.NotSet):\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n self.url + \"/git/trees/\" + sha,\n- url_parameters,\n- None\n+ parameters=url_parameters\n )\n- return github.GitTree.GitTree(self._requester, data, completed=True)\n+ return github.GitTree.GitTree(self._requester, headers, data, completed=True)\n \n def get_hook(self, id):\n \"\"\"\n@@ -1096,11 +1056,9 @@ def get_hook(self, id):\n assert isinstance(id, (int, long)), id\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n- self.url + \"/hooks/\" + str(id),\n- None,\n- None\n+ self.url + \"/hooks/\" + str(id)\n )\n- return github.Hook.Hook(self._requester, data, completed=True)\n+ return github.Hook.Hook(self._requester, headers, data, completed=True)\n \n def get_hooks(self):\n \"\"\"\n@@ -1123,11 +1081,9 @@ def get_issue(self, number):\n assert isinstance(number, (int, long)), number\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n- self.url + \"/issues/\" + str(number),\n- None,\n- None\n+ self.url + \"/issues/\" + str(number)\n )\n- return github.Issue.Issue(self._requester, data, completed=True)\n+ return github.Issue.Issue(self._requester, headers, data, completed=True)\n \n def get_issues(self, milestone=github.GithubObject.NotSet, state=github.GithubObject.NotSet, assignee=github.GithubObject.NotSet, mentioned=github.GithubObject.NotSet, labels=github.GithubObject.NotSet, sort=github.GithubObject.NotSet, direction=github.GithubObject.NotSet, since=github.GithubObject.NotSet):\n \"\"\"\n@@ -1214,11 +1170,9 @@ def get_issues_event(self, id):\n assert isinstance(id, (int, long)), id\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n- self.url + \"/issues/events/\" + str(id),\n- None,\n- None\n+ self.url + \"/issues/events/\" + str(id)\n )\n- return github.IssueEvent.IssueEvent(self._requester, data, completed=True)\n+ return github.IssueEvent.IssueEvent(self._requester, headers, data, completed=True)\n \n def get_issues_events(self):\n \"\"\"\n@@ -1241,11 +1195,9 @@ def get_key(self, id):\n assert isinstance(id, (int, long)), id\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n- self.url + \"/keys/\" + str(id),\n- None,\n- None\n+ self.url + \"/keys/\" + str(id)\n )\n- return github.RepositoryKey.RepositoryKey(self._requester, data, completed=True, repoUrl=self._url)\n+ return github.RepositoryKey.RepositoryKey(self._requester, headers, data, completed=True, repoUrl=self._url)\n \n def get_keys(self):\n \"\"\"\n@@ -1253,7 +1205,7 @@ def get_keys(self):\n :rtype: :class:`github.PaginatedList.PaginatedList` of :class:`github.RepositoryKey.RepositoryKey`\n \"\"\"\n return github.PaginatedList.PaginatedList(\n- lambda requester, data, completed: github.RepositoryKey.RepositoryKey(requester, data, completed, repoUrl=self._url),\n+ lambda requester, headers, data, completed: github.RepositoryKey.RepositoryKey(requester, headers, data, completed, repoUrl=self._url),\n self._requester,\n self.url + \"/keys\",\n None\n@@ -1268,11 +1220,9 @@ def get_label(self, name):\n assert isinstance(name, (str, unicode)), name\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n- self.url + \"/labels/\" + urllib.quote(name),\n- None,\n- None\n+ self.url + \"/labels/\" + urllib.quote(name)\n )\n- return github.Label.Label(self._requester, data, completed=True)\n+ return github.Label.Label(self._requester, headers, data, completed=True)\n \n def get_labels(self):\n \"\"\"\n@@ -1293,9 +1243,7 @@ def get_languages(self):\n \"\"\"\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n- self.url + \"/languages\",\n- None,\n- None\n+ self.url + \"/languages\"\n )\n return data\n \n@@ -1308,11 +1256,9 @@ def get_milestone(self, number):\n assert isinstance(number, (int, long)), number\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n- self.url + \"/milestones/\" + str(number),\n- None,\n- None\n+ self.url + \"/milestones/\" + str(number)\n )\n- return github.Milestone.Milestone(self._requester, data, completed=True)\n+ return github.Milestone.Milestone(self._requester, headers, data, completed=True)\n \n def get_milestones(self, state=github.GithubObject.NotSet, sort=github.GithubObject.NotSet, direction=github.GithubObject.NotSet):\n \"\"\"\n@@ -1360,11 +1306,9 @@ def get_pull(self, number):\n assert isinstance(number, (int, long)), number\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n- self.url + \"/pulls/\" + str(number),\n- None,\n- None\n+ self.url + \"/pulls/\" + str(number)\n )\n- return github.PullRequest.PullRequest(self._requester, data, completed=True)\n+ return github.PullRequest.PullRequest(self._requester, headers, data, completed=True)\n \n def get_pulls(self, state=github.GithubObject.NotSet):\n \"\"\"\n@@ -1431,10 +1375,9 @@ def get_readme(self, ref=github.GithubObject.NotSet):\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n self.url + \"/readme\",\n- url_parameters,\n- None\n+ parameters=url_parameters\n )\n- return github.ContentFile.ContentFile(self._requester, data, completed=True)\n+ return github.ContentFile.ContentFile(self._requester, headers, data, completed=True)\n \n def get_stargazers(self):\n \"\"\"\n@@ -1505,9 +1448,7 @@ def has_in_assignees(self, assignee):\n assert isinstance(assignee, github.NamedUser.NamedUser), assignee\n status, headers, data = self._requester.requestJson(\n \"GET\",\n- self.url + \"/assignees/\" + assignee._identity,\n- None,\n- None\n+ self.url + \"/assignees/\" + assignee._identity\n )\n return status == 204\n \n@@ -1520,9 +1461,7 @@ def has_in_collaborators(self, collaborator):\n assert isinstance(collaborator, github.NamedUser.NamedUser), collaborator\n status, headers, data = self._requester.requestJson(\n \"GET\",\n- self.url + \"/collaborators/\" + collaborator._identity,\n- None,\n- None\n+ self.url + \"/collaborators/\" + collaborator._identity\n )\n return status == 204\n \n@@ -1537,12 +1476,10 @@ def legacy_search_issues(self, state, keyword):\n assert isinstance(keyword, (str, unicode)), keyword\n headers, data = self._requester.requestJsonAndCheck(\n \"GET\",\n- \"/legacy/issues/search/\" + self.owner.login + \"/\" + self.name + \"/\" + state + \"/\" + urllib.quote(keyword),\n- None,\n- None\n+ \"/legacy/issues/search/\" + self.owner.login + \"/\" + self.name + \"/\" + state + \"/\" + urllib.quote(keyword)\n )\n return [\n- github.Issue.Issue(self._requester, github.Legacy.convertIssue(element), completed=False)\n+ github.Issue.Issue(self._requester, headers, github.Legacy.convertIssue(element), completed=False)\n for element in data[\"issues\"]\n ]\n \n@@ -1566,13 +1503,12 @@ def merge(self, base, head, commit_message=github.GithubObject.NotSet):\n headers, data = self._requester.requestJsonAndCheck(\n \"POST\",\n self.url + \"/merges\",\n- None,\n- post_parameters\n+ input=post_parameters\n )\n if data is None:\n return None\n else:\n- return github.Commit.Commit(self._requester, data, completed=True)\n+ return github.Commit.Commit(self._requester, headers, data, completed=True)\n \n def remove_from_collaborators(self, collaborator):\n \"\"\"\n@@ -1583,9 +1519,7 @@ def remove_from_collaborators(self, collaborator):\n assert isinstance(collaborator, github.NamedUser.NamedUser), collaborator\n headers, data = self._requester.requestJsonAndCheck(\n \"DELETE\",\n- self.url + \"/collaborators/\" + collaborator._identity,\n- None,\n- None\n+ self.url + \"/collaborators/\" + collaborator._identity\n )\n \n def subscribe_to_hub(self, event, callback, secret=github.GithubObject.NotSet):\n@@ -1625,8 +1559,7 @@ def _hub(self, mode, event, callback, secret):\n responseHeaders, output = self._requester.requestMultipartAndCheck(\n \"POST\",\n \"/hub\",\n- None,\n- post_parameters,\n+ input=post_parameters\n )\n \n @property\n@@ -1719,16 +1652,16 @@ def _useAttributes(self, attributes):\n self._open_issues = attributes[\"open_issues\"]\n if \"organization\" in attributes: # pragma no branch\n assert attributes[\"organization\"] is None or isinstance(attributes[\"organization\"], dict), attributes[\"organization\"]\n- self._organization = None if attributes[\"organization\"] is None else github.Organization.Organization(self._requester, attributes[\"organization\"], completed=False)\n+ self._organization = None if attributes[\"organization\"] is None else github.Organization.Organization(self._requester, self._headers, attributes[\"organization\"], completed=False)\n if \"owner\" in attributes: # pragma no branch\n assert attributes[\"owner\"] is None or isinstance(attributes[\"owner\"], dict), attributes[\"owner\"]\n- self._owner = None if attributes[\"owner\"] is None else github.NamedUser.NamedUser(self._requester, attributes[\"owner\"], completed=False)\n+ self._owner = None if attributes[\"owner\"] is None else github.NamedUser.NamedUser(self._requester, self._headers, attributes[\"owner\"], completed=False)\n if \"parent\" in attributes: # pragma no branch\n assert attributes[\"parent\"] is None or isinstance(attributes[\"parent\"], dict), attributes[\"parent\"]\n- self._parent = None if attributes[\"parent\"] is None else Repository(self._requester, attributes[\"parent\"], completed=False)\n+ self._parent = None if attributes[\"parent\"] is None else Repository(self._requester, self._headers, attributes[\"parent\"], completed=False)\n if \"permissions\" in attributes: # pragma no branch\n assert attributes[\"permissions\"] is None or isinstance(attributes[\"permissions\"], dict), attributes[\"permissions\"]\n- self._permissions = None if attributes[\"permissions\"] is None else github.Permissions.Permissions(self._requester, attributes[\"permissions\"], completed=False)\n+ self._permissions = None if attributes[\"permissions\"] is None else github.Permissions.Permissions(self._requester, self._headers, attributes[\"permissions\"], completed=False)\n if \"private\" in attributes: # pragma no branch\n assert attributes[\"private\"] is None or isinstance(attributes[\"private\"], bool), attributes[\"private\"]\n self._private = attributes[\"private\"]\n@@ -1740,7 +1673,7 @@ def _useAttributes(self, attributes):\n self._size = attributes[\"size\"]\n if \"source\" in attributes: # pragma no branch\n assert attributes[\"source\"] is None or isinstance(attributes[\"source\"], dict), attributes[\"source\"]\n- self._source = None if attributes[\"source\"] is None else Repository(self._requester, attributes[\"source\"], completed=False)\n+ self._source = None if attributes[\"source\"] is None else Repository(self._requester, self._headers, attributes[\"source\"], completed=False)\n if \"ssh_url\" in attributes: # pragma no branch\n assert attributes[\"ssh_url\"] is None or isinstance(attributes[\"ssh_url\"], (str, unicode)), attributes[\"ssh_url\"]\n self._ssh_url = attributes[\"ssh_url\"]"},{"sha":"69e1c6162f2f414f9679101b3fb29de677f7e72f","filename":"github/RepositoryKey.py","status":"modified","additions":5,"deletions":7,"changes":12,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/RepositoryKey.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/RepositoryKey.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/RepositoryKey.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Srijan Choudhary #\n # Copyright 2013 Vincent Jacques #\n # Copyright 2013 martinqt #\n@@ -33,8 +34,8 @@ class RepositoryKey(github.GithubObject.CompletableGithubObject):\n This class represents RepositoryKeys. The reference can be found here http://developer.github.com/v3/repos/keys/\n \"\"\"\n \n- def __init__(self, requester, attributes, completed, repoUrl):\n- github.GithubObject.CompletableGithubObject.__init__(self, requester, attributes, completed)\n+ def __init__(self, requester, headers, attributes, completed, repoUrl):\n+ github.GithubObject.CompletableGithubObject.__init__(self, requester, headers, attributes, completed)\n self.__repoUrl = repoUrl\n \n @property\n@@ -88,9 +89,7 @@ def delete(self):\n \"\"\"\n headers, data = self._requester.requestJsonAndCheck(\n \"DELETE\",\n- self.__customUrl,\n- None,\n- None\n+ self.__customUrl\n )\n \n def edit(self, title=github.GithubObject.NotSet, key=github.GithubObject.NotSet):\n@@ -110,8 +109,7 @@ def edit(self, title=github.GithubObject.NotSet, key=github.GithubObject.NotSet)\n headers, data = self._requester.requestJsonAndCheck(\n \"PATCH\",\n self.__customUrl,\n- None,\n- post_parameters\n+ input=post_parameters\n )\n self._useAttributes(data)\n "},{"sha":"836b776e42a3080cffc8d5f1e6959fa6414a518c","filename":"github/Requester.py","status":"modified","additions":88,"deletions":18,"changes":106,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/Requester.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/Requester.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/Requester.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -9,6 +9,7 @@\n # Copyright 2012 Steve English #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Ed Jackson #\n # Copyright 2013 Jonathan J Hunt #\n # Copyright 2013 Mark Roddy #\n@@ -37,6 +38,7 @@\n import urllib\n import urlparse\n import sys\n+import Consts\n \n atLeastPython26 = sys.hexversion >= 0x02060000\n atLeastPython3 = sys.hexversion >= 0x03000000\n@@ -63,7 +65,66 @@ def resetConnectionClasses(cls):\n cls.__httpConnectionClass = httplib.HTTPConnection\n cls.__httpsConnectionClass = httplib.HTTPSConnection\n \n+ #############################################################\n+ # For Debug\n+ @classmethod\n+ def setDebugFlag(cls, flag):\n+ cls.DEBUG_FLAG = flag\n+\n+ @classmethod\n+ def setOnCheckMe(cls, onCheckMe):\n+ cls.ON_CHECK_ME = onCheckMe\n+\n+ DEBUG_FLAG = False\n+\n+ DEBUG_FRAME_BUFFER_SIZE = 1024\n+\n+ DEBUG_HEADER_KEY = \"DEBUG_FRAME\"\n+\n+ ON_CHECK_ME = None\n+\n+ def NEW_DEBUG_FRAME(self, requestHeader):\n+ '''\n+ Initialize a debug frame with requestHeader\n+ Frame count is updated and will be attached to respond header\n+ The structure of a frame: [requestHeader, statusCode, responseHeader, raw_data]\n+ Some of them may be None\n+ '''\n+ if self.DEBUG_FLAG: # pragma no branch (Flag always set in tests)\n+ new_frame = [requestHeader, None, None, None]\n+ if self._frameCount < self.DEBUG_FRAME_BUFFER_SIZE - 1: # pragma no branch (Should be covered)\n+ self._frameBuffer.append(new_frame)\n+ else:\n+ self._frameBuffer[0] = new_frame # pragma no cover (Should be covered)\n+\n+ self._frameCount = len(self._frameBuffer) - 1\n+\n+ def DEBUG_ON_RESPONSE(self, statusCode, responseHeader, data):\n+ '''\n+ Update current frame with response\n+ Current frame index will be attached to responseHeader\n+ '''\n+ if self.DEBUG_FLAG: # pragma no branch (Flag always set in tests)\n+ self._frameBuffer[self._frameCount][1:4] = [statusCode, responseHeader, data]\n+ responseHeader[self.DEBUG_HEADER_KEY] = self._frameCount\n+\n+ def check_me(self, obj):\n+ if self.DEBUG_FLAG and self.ON_CHECK_ME is not None: # pragma no branch (Flag always set in tests)\n+ frame = None\n+ if self.DEBUG_HEADER_KEY in obj._headers:\n+ frame_index = obj._headers[self.DEBUG_HEADER_KEY]\n+ frame = self._frameBuffer[frame_index]\n+ self.ON_CHECK_ME(obj, frame)\n+\n+ def _initializeDebugFeature(self):\n+ self._frameCount = 0\n+ self._frameBuffer = []\n+\n+ #############################################################\n+\n def __init__(self, login_or_token, password, base_url, timeout, client_id, client_secret, user_agent, per_page):\n+ self._initializeDebugFeature()\n+\n if password is not None:\n login = login_or_token\n if atLeastPython3:\n@@ -103,11 +164,11 @@ def __init__(self, login_or_token, password, base_url, timeout, client_id, clien\n 'See http://developer.github.com/v3/#user-agent-required'\n self.__userAgent = user_agent\n \n- def requestJsonAndCheck(self, verb, url, parameters, input):\n- return self.__check(*self.requestJson(verb, url, parameters, input))\n+ def requestJsonAndCheck(self, verb, url, parameters=None, headers=None, input=None, cnx=None):\n+ return self.__check(*self.requestJson(verb, url, parameters, headers, input, cnx))\n \n- def requestMultipartAndCheck(self, verb, url, parameters, input):\n- return self.__check(*self.requestMultipart(verb, url, parameters, input))\n+ def requestMultipartAndCheck(self, verb, url, parameters=None, headers=None, input=None):\n+ return self.__check(*self.requestMultipart(verb, url, parameters, headers, input))\n \n def __check(self, status, responseHeaders, output):\n output = self.__structuredFromJson(output)\n@@ -116,13 +177,13 @@ def __check(self, status, responseHeaders, output):\n return responseHeaders, output\n \n def __createException(self, status, output):\n- if status == 401 and output[\"message\"] == \"Bad credentials\":\n+ if status == 401 and output.get(\"message\") == \"Bad credentials\":\n cls = GithubException.BadCredentialsException\n- elif status == 403 and output[\"message\"].startswith(\"Missing or invalid User Agent string\"):\n+ elif status == 403 and output.get(\"message\").startswith(\"Missing or invalid User Agent string\"):\n cls = GithubException.BadUserAgentException\n- elif status == 403 and output[\"message\"].startswith(\"API Rate Limit Exceeded\"):\n+ elif status == 403 and output.get(\"message\").startswith(\"API Rate Limit Exceeded\"):\n cls = GithubException.RateLimitExceededException\n- elif status == 404 and output[\"message\"] == \"Not Found\":\n+ elif status == 404 and output.get(\"message\") == \"Not Found\":\n cls = GithubException.UnknownObjectException\n else:\n cls = GithubException.GithubException\n@@ -139,13 +200,13 @@ def __structuredFromJson(self, data):\n except ValueError, e:\n return {'data': data}\n \n- def requestJson(self, verb, url, parameters, input):\n+ def requestJson(self, verb, url, parameters=None, headers=None, input=None, cnx=None):\n def encode(input):\n return \"application/json\", json.dumps(input)\n \n- return self.__requestEncode(verb, url, parameters, input, encode)\n+ return self.__requestEncode(cnx, verb, url, parameters, headers, input, encode)\n \n- def requestMultipart(self, verb, url, parameters, input):\n+ def requestMultipart(self, verb, url, parameters=None, headers=None, input=None):\n def encode(input):\n boundary = \"----------------------------3c3ba8b523b2\"\n eol = \"\\r\\n\"\n@@ -159,14 +220,15 @@ def encode(input):\n encoded_input += \"--\" + boundary + \"--\" + eol\n return \"multipart/form-data; boundary=\" + boundary, encoded_input\n \n- return self.__requestEncode(verb, url, parameters, input, encode)\n+ return self.__requestEncode(None, verb, url, parameters, headers, input, encode)\n \n- def __requestEncode(self, verb, url, parameters, input, encode):\n+ def __requestEncode(self, cnx, verb, url, parameters, requestHeaders, input, encode):\n assert verb in [\"HEAD\", \"GET\", \"POST\", \"PATCH\", \"PUT\", \"DELETE\"]\n if parameters is None:\n parameters = dict()\n+ if requestHeaders is None:\n+ requestHeaders = dict()\n \n- requestHeaders = dict()\n self.__authenticate(url, requestHeaders, parameters)\n requestHeaders[\"User-Agent\"] = self.__userAgent\n \n@@ -177,7 +239,9 @@ def __requestEncode(self, verb, url, parameters, input, encode):\n if input is not None:\n requestHeaders[\"Content-Type\"], encoded_input = encode(input)\n \n- status, responseHeaders, output = self.__requestRaw(verb, url, requestHeaders, encoded_input)\n+ self.NEW_DEBUG_FRAME(requestHeaders)\n+\n+ status, responseHeaders, output = self.__requestRaw(cnx, verb, url, requestHeaders, encoded_input)\n \n if \"x-ratelimit-remaining\" in responseHeaders and \"x-ratelimit-limit\" in responseHeaders:\n self.rate_limiting = (int(responseHeaders[\"x-ratelimit-remaining\"]), int(responseHeaders[\"x-ratelimit-limit\"]))\n@@ -187,10 +251,16 @@ def __requestEncode(self, verb, url, parameters, input, encode):\n if \"x-oauth-scopes\" in responseHeaders:\n self.oauth_scopes = responseHeaders[\"x-oauth-scopes\"].split(\", \")\n \n+ self.DEBUG_ON_RESPONSE(status, responseHeaders, output)\n+\n return status, responseHeaders, output\n \n- def __requestRaw(self, verb, url, requestHeaders, input):\n- cnx = self.__createConnection()\n+ def __requestRaw(self, cnx, verb, url, requestHeaders, input):\n+ if cnx is None:\n+ cnx = self.__createConnection()\n+ else:\n+ assert cnx == \"status\"\n+ cnx = self.__httpsConnectionClass(\"status.github.com\", 443)\n cnx.request(\n verb,\n url,\n@@ -244,7 +314,7 @@ def __createConnection(self):\n kwds[\"strict\"] = True # Useless in Python3, would generate a deprecation warning\n if atLeastPython26: # pragma no branch (Branch useful only with Python 2.5)\n kwds[\"timeout\"] = self.__timeout # Did not exist before Python2.6\n- return self.__connectionClass(host=self.__hostname, port=self.__port, **kwds)\n+ return self.__connectionClass(self.__hostname, self.__port, **kwds)\n \n def __log(self, verb, url, requestHeaders, input, status, responseHeaders, output):\n logger = logging.getLogger(__name__)"},{"sha":"6c117241297b8cc312ef45fa6240453e35ca36ed","filename":"github/Status.py","status":"added","additions":56,"deletions":0,"changes":56,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/Status.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/Status.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/Status.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -0,0 +1,56 @@\n+# -*- coding: utf-8 -*-\n+\n+############################ Copyrights and license ############################\n+# #\n+# Copyright 2013 Vincent Jacques #\n+# #\n+# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #\n+# #\n+# PyGithub is free software: you can redistribute it and/or modify it under #\n+# the terms of the GNU Lesser General Public License as published by the Free #\n+# Software Foundation, either version 3 of the License, or (at your option) #\n+# any later version. #\n+# #\n+# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY #\n+# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS #\n+# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more #\n+# details. #\n+# #\n+# You should have received a copy of the GNU Lesser General Public License #\n+# along with PyGithub. If not, see . #\n+# #\n+################################################################################\n+\n+import github.GithubObject\n+\n+\n+class Status(github.GithubObject.NonCompletableGithubObject):\n+ \"\"\"\n+ This class represents status as defined in https://status.github.com/api\n+ \"\"\"\n+\n+ @property\n+ def status(self):\n+ \"\"\"\n+ :type: string\n+ \"\"\"\n+ return self._NoneIfNotSet(self._status)\n+\n+ @property\n+ def last_updated(self):\n+ \"\"\"\n+ :type: datetime.datetime\n+ \"\"\"\n+ return self._NoneIfNotSet(self._last_updated)\n+\n+ def _initAttributes(self):\n+ self._status = github.GithubObject.NotSet\n+ self._last_updated = github.GithubObject.NotSet\n+\n+ def _useAttributes(self, attributes):\n+ if \"status\" in attributes: # pragma no branch\n+ assert attributes[\"status\"] is None or isinstance(attributes[\"status\"], (str, unicode)), attributes[\"status\"]\n+ self._status = attributes[\"status\"]\n+ if \"last_updated\" in attributes: # pragma no branch\n+ assert attributes[\"last_updated\"] is None or isinstance(attributes[\"last_updated\"], (str, unicode)), attributes[\"last_updated\"]\n+ self._last_updated = self._parseDatetime(attributes[\"last_updated\"])"},{"sha":"266e1b05cc4f1b1298b6f56eae34e58ad9be871e","filename":"github/StatusMessage.py","status":"added","additions":66,"deletions":0,"changes":66,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/StatusMessage.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/StatusMessage.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/StatusMessage.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -0,0 +1,66 @@\n+# -*- coding: utf-8 -*-\n+\n+############################ Copyrights and license ############################\n+# #\n+# Copyright 2013 Vincent Jacques #\n+# #\n+# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #\n+# #\n+# PyGithub is free software: you can redistribute it and/or modify it under #\n+# the terms of the GNU Lesser General Public License as published by the Free #\n+# Software Foundation, either version 3 of the License, or (at your option) #\n+# any later version. #\n+# #\n+# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY #\n+# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS #\n+# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more #\n+# details. #\n+# #\n+# You should have received a copy of the GNU Lesser General Public License #\n+# along with PyGithub. If not, see . #\n+# #\n+################################################################################\n+\n+import github.GithubObject\n+\n+\n+class StatusMessage(github.GithubObject.NonCompletableGithubObject):\n+ \"\"\"\n+ This class represents status messages as defined in https://status.github.com/api\n+ \"\"\"\n+\n+ @property\n+ def body(self):\n+ \"\"\"\n+ :type: string\n+ \"\"\"\n+ return self._NoneIfNotSet(self._body)\n+\n+ @property\n+ def status(self):\n+ \"\"\"\n+ :type: string\n+ \"\"\"\n+ return self._NoneIfNotSet(self._status)\n+\n+ @property\n+ def created_on(self):\n+ \"\"\"\n+ :type: datetime.datetime\n+ \"\"\"\n+ return self._NoneIfNotSet(self._created_on)\n+\n+ def _initAttributes(self):\n+ self._status = github.GithubObject.NotSet\n+ self._created_on = github.GithubObject.NotSet\n+\n+ def _useAttributes(self, attributes):\n+ if \"body\" in attributes: # pragma no branch\n+ assert attributes[\"body\"] is None or isinstance(attributes[\"body\"], (str, unicode)), attributes[\"body\"]\n+ self._body = attributes[\"body\"]\n+ if \"status\" in attributes: # pragma no branch\n+ assert attributes[\"status\"] is None or isinstance(attributes[\"status\"], (str, unicode)), attributes[\"status\"]\n+ self._status = attributes[\"status\"]\n+ if \"created_on\" in attributes: # pragma no branch\n+ assert attributes[\"created_on\"] is None or isinstance(attributes[\"created_on\"], (str, unicode)), attributes[\"created_on\"]\n+ self._created_on = self._parseDatetime(attributes[\"created_on\"])"},{"sha":"890c1a02366be9fd71e36b90084c7dbd624eb2c0","filename":"github/Tag.py","status":"modified","additions":2,"deletions":1,"changes":3,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/Tag.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/Tag.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/Tag.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # Copyright 2013 martinqt #\n # #\n@@ -71,7 +72,7 @@ def _initAttributes(self):\n def _useAttributes(self, attributes):\n if \"commit\" in attributes: # pragma no branch\n assert attributes[\"commit\"] is None or isinstance(attributes[\"commit\"], dict), attributes[\"commit\"]\n- self._commit = None if attributes[\"commit\"] is None else github.Commit.Commit(self._requester, attributes[\"commit\"], completed=False)\n+ self._commit = None if attributes[\"commit\"] is None else github.Commit.Commit(self._requester, self._headers, attributes[\"commit\"], completed=False)\n if \"name\" in attributes: # pragma no branch\n assert attributes[\"name\"] is None or isinstance(attributes[\"name\"], (str, unicode)), attributes[\"name\"]\n self._name = attributes[\"name\"]"},{"sha":"9b687d8027104bcccf49f6b23d129b94cd963eec","filename":"github/Team.py","status":"modified","additions":9,"deletions":23,"changes":32,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/Team.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/Team.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/Team.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # Copyright 2013 martinqt #\n # #\n@@ -93,9 +94,7 @@ def add_to_members(self, member):\n assert isinstance(member, github.NamedUser.NamedUser), member\n headers, data = self._requester.requestJsonAndCheck(\n \"PUT\",\n- self.url + \"/members/\" + member._identity,\n- None,\n- None\n+ self.url + \"/members/\" + member._identity\n )\n \n def add_to_repos(self, repo):\n@@ -107,9 +106,7 @@ def add_to_repos(self, repo):\n assert isinstance(repo, github.Repository.Repository), repo\n headers, data = self._requester.requestJsonAndCheck(\n \"PUT\",\n- self.url + \"/repos/\" + repo._identity,\n- None,\n- None\n+ self.url + \"/repos/\" + repo._identity\n )\n \n def delete(self):\n@@ -119,9 +116,7 @@ def delete(self):\n \"\"\"\n headers, data = self._requester.requestJsonAndCheck(\n \"DELETE\",\n- self.url,\n- None,\n- None\n+ self.url\n )\n \n def edit(self, name, permission=github.GithubObject.NotSet):\n@@ -141,8 +136,7 @@ def edit(self, name, permission=github.GithubObject.NotSet):\n headers, data = self._requester.requestJsonAndCheck(\n \"PATCH\",\n self.url,\n- None,\n- post_parameters\n+ input=post_parameters\n )\n self._useAttributes(data)\n \n@@ -179,9 +173,7 @@ def has_in_members(self, member):\n assert isinstance(member, github.NamedUser.NamedUser), member\n status, headers, data = self._requester.requestJson(\n \"GET\",\n- self.url + \"/members/\" + member._identity,\n- None,\n- None\n+ self.url + \"/members/\" + member._identity\n )\n return status == 204\n \n@@ -194,9 +186,7 @@ def has_in_repos(self, repo):\n assert isinstance(repo, github.Repository.Repository), repo\n status, headers, data = self._requester.requestJson(\n \"GET\",\n- self.url + \"/repos/\" + repo._identity,\n- None,\n- None\n+ self.url + \"/repos/\" + repo._identity\n )\n return status == 204\n \n@@ -209,9 +199,7 @@ def remove_from_members(self, member):\n assert isinstance(member, github.NamedUser.NamedUser), member\n headers, data = self._requester.requestJsonAndCheck(\n \"DELETE\",\n- self.url + \"/members/\" + member._identity,\n- None,\n- None\n+ self.url + \"/members/\" + member._identity\n )\n \n def remove_from_repos(self, repo):\n@@ -223,9 +211,7 @@ def remove_from_repos(self, repo):\n assert isinstance(repo, github.Repository.Repository), repo\n headers, data = self._requester.requestJsonAndCheck(\n \"DELETE\",\n- self.url + \"/repos/\" + repo._identity,\n- None,\n- None\n+ self.url + \"/repos/\" + repo._identity\n )\n \n @property"},{"sha":"9ca0133be4c77ff5720473de5618c97312d6d7e5","filename":"github/UserKey.py","status":"modified","additions":3,"deletions":5,"changes":8,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/UserKey.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/UserKey.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/UserKey.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # Copyright 2013 martinqt #\n # #\n@@ -79,9 +80,7 @@ def delete(self):\n \"\"\"\n headers, data = self._requester.requestJsonAndCheck(\n \"DELETE\",\n- self.url,\n- None,\n- None\n+ self.url\n )\n \n def edit(self, title=github.GithubObject.NotSet, key=github.GithubObject.NotSet):\n@@ -101,8 +100,7 @@ def edit(self, title=github.GithubObject.NotSet, key=github.GithubObject.NotSet)\n headers, data = self._requester.requestJsonAndCheck(\n \"PATCH\",\n self.url,\n- None,\n- post_parameters\n+ input=post_parameters\n )\n self._useAttributes(data)\n "},{"sha":"4ddefece6ae21f29c76934cbd1ed7f122907ec1e","filename":"github/tests/AllTests.py","status":"modified","additions":4,"deletions":0,"changes":4,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/tests/AllTests.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/tests/AllTests.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/tests/AllTests.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -56,6 +56,7 @@\n from RateLimiting import *\n from Repository import *\n from RepositoryKey import *\n+from Status import *\n from Tag import *\n from Team import *\n from UserKey import *\n@@ -79,3 +80,6 @@\n # from Issue142 import * # Deactivated for Travis-CI because Github has lowered the rate limitations\n from Issue158 import *\n from Issue174 import *\n+\n+from ConditionalRequestUpdate import ConditionalRequestUpdate\n+from Persistence import Persistence"},{"sha":"bfd3f87df527126bffa6c10c78cbb7d790e54542","filename":"github/tests/ConditionalRequestUpdate.py","status":"added","additions":43,"deletions":0,"changes":43,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/tests/ConditionalRequestUpdate.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/tests/ConditionalRequestUpdate.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/tests/ConditionalRequestUpdate.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -0,0 +1,43 @@\n+# -*- coding: utf-8 -*-\n+\n+############################ Copyrights and license ############################\n+# #\n+# Copyright 2013 AKFish #\n+# #\n+# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #\n+# #\n+# PyGithub is free software: you can redistribute it and/or modify it under #\n+# the terms of the GNU Lesser General Public License as published by the Free #\n+# Software Foundation, either version 3 of the License, or (at your option) #\n+# any later version. #\n+# #\n+# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY #\n+# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS #\n+# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more #\n+# details. #\n+# #\n+# You should have received a copy of the GNU Lesser General Public License #\n+# along with PyGithub. If not, see . #\n+# #\n+################################################################################\n+\n+# #193: Line endings should be linux style\n+\n+import Framework\n+import github\n+\n+\n+class ConditionalRequestUpdate(Framework.TestCase):\n+ def setUp(self):\n+ Framework.TestCase.setUp(self)\n+ self.repo = self.g.get_repo(\"akfish/PyGithub\")\n+\n+ def testDidNotUpdate(self):\n+ self.assertFalse(self.repo.update(), msg=\"The repo is not changes. But update() != False\")\n+\n+ def testDidUpdate(self):\n+ self.assertTrue(self.repo.update(), msg=\"The repo should be changed by now. But update() != True\")\n+\n+ def testUpdateObjectWithoutEtag(self):\n+ r = self.g.get_repo(\"jacquev6/PyGithub\")\n+ self.assertTrue(r.update())"},{"sha":"24e814b49afae222e8ac8a79ee5696166a76abc1","filename":"github/tests/Framework.py","status":"modified","additions":17,"deletions":0,"changes":17,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/tests/Framework.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/tests/Framework.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/tests/Framework.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -4,6 +4,7 @@\n # #\n # Copyright 2012 Vincent Jacques #\n # Copyright 2012 Zearin #\n+# Copyright 2013 AKFish #\n # Copyright 2013 Vincent Jacques #\n # #\n # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #\n@@ -244,8 +245,24 @@ def assertListKeyBegin(self, elements, key, expectedKeys):\n \n \n class TestCase(BasicTestCase):\n+ def doCheckFrame(self, obj, frame):\n+ if obj._headers == {} and frame is None:\n+ return\n+ if obj._headers is None and frame == {}:\n+ return\n+ self.assertEqual(obj._headers, frame[2])\n+\n+ def getFrameChecker(self):\n+ return lambda requester, obj, frame: self.doCheckFrame(obj, frame)\n+\n def setUp(self):\n BasicTestCase.setUp(self)\n+\n+ # Set up frame debugging\n+ github.GithubObject.GithubObject.setCheckAfterInitFlag(True)\n+ github.Requester.Requester.setDebugFlag(True)\n+ github.Requester.Requester.setOnCheckMe(self.getFrameChecker())\n+\n self.g = github.Github(self.login, self.password)\n \n "},{"sha":"d74dbac39717bba9476ca39070f6f0beced70578","filename":"github/tests/Gist.py","status":"modified","additions":4,"deletions":4,"changes":8,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/tests/Gist.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/tests/Gist.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/tests/Gist.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -108,12 +108,12 @@ def testStarring(self):\n self.assertFalse(self.gist.is_starred())\n \n def testFork(self):\n- gist = self.g.get_gist(\"2729818\") # Random gist\n+ gist = self.g.get_gist(\"6296553\") # Random gist\n myGist = gist.create_fork()\n- self.assertEqual(myGist.id, \"2729865\")\n+ self.assertEqual(myGist.id, \"6296732\")\n self.assertEqual(myGist.fork_of, None) # WTF\n- sameGist = self.g.get_gist(\"2729865\")\n- self.assertEqual(sameGist.fork_of.id, \"2729818\")\n+ sameGist = self.g.get_gist(\"6296732\")\n+ self.assertEqual(sameGist.fork_of.id, \"6296553\")\n \n def testDelete(self):\n self.gist.delete()"},{"sha":"dec6a80595e541d50720527d16f752d44ef4acf3","filename":"github/tests/Github_.py","status":"modified","additions":6,"deletions":0,"changes":6,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/tests/Github_.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/tests/Github_.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/tests/Github_.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -128,3 +128,9 @@ def testGetUsers(self):\n \n def testGetUsersSince(self):\n self.assertListKeyBegin(self.g.get_users(since=1000), lambda u: u.login, [\"sbecker\"])\n+\n+ def testGetRepos(self):\n+ self.assertListKeyBegin(self.g.get_repos(), lambda r: r.name, [\"grit\", \"merb-core\", \"rubinius\", \"god\", \"jsawesome\", \"jspec\", \"exception_logger\", \"ambition\"])\n+\n+ def testGetReposSince(self):\n+ self.assertListKeyBegin(self.g.get_repos(since=1000), lambda r: r.name, [\"jquery-humanize-messages-plugin\", \"4slicer\", \"fixture-scenarios\", \"mongrel_proctitle\", \"rails-plugins\"])"},{"sha":"5a56bd195039b7f2077fa19952af9bcb5f6c95d1","filename":"github/tests/NamedUser.py","status":"modified","additions":4,"deletions":0,"changes":4,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/tests/NamedUser.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/tests/NamedUser.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/tests/NamedUser.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -109,6 +109,10 @@ def testGetFollowers(self):\n def testGetFollowing(self):\n self.assertListKeyEqual(self.user.get_following(), lambda f: f.login, [\"nvie\", \"schacon\", \"jamis\", \"chad\", \"unclebob\", \"dabrahams\", \"jnorthrup\", \"brugidou\", \"regisb\", \"walidk\", \"tanzilli\", \"fjardon\", \"r3c\", \"sdanzan\", \"vineus\", \"cjuniet\", \"gturri\", \"ant9000\", \"asquini\", \"claudyus\", \"jardon-u\", \"s-bernard\", \"kamaradclimber\", \"Lyloa\"])\n \n+ def testHasInFollowing(self):\n+ nvie = self.g.get_user(\"nvie\")\n+ self.assertTrue(self.user.has_in_following(nvie))\n+\n def testGetOrgs(self):\n self.assertListKeyEqual(self.user.get_orgs(), lambda o: o.login, [\"BeaverSoftware\"])\n "},{"sha":"300e91744c7c62d950b6e5eb91ea8e697b3f570b","filename":"github/tests/Persistence.py","status":"added","additions":55,"deletions":0,"changes":55,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/tests/Persistence.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/tests/Persistence.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/tests/Persistence.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -0,0 +1,55 @@\n+# -*- coding: utf-8 -*-\n+\n+############################ Copyrights and license ############################\n+# #\n+# Copyright 2013 Vincent Jacques #\n+# #\n+# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #\n+# #\n+# PyGithub is free software: you can redistribute it and/or modify it under #\n+# the terms of the GNU Lesser General Public License as published by the Free #\n+# Software Foundation, either version 3 of the License, or (at your option) #\n+# any later version. #\n+# #\n+# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY #\n+# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS #\n+# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more #\n+# details. #\n+# #\n+# You should have received a copy of the GNU Lesser General Public License #\n+# along with PyGithub. If not, see . #\n+# #\n+################################################################################\n+\n+import Framework\n+import github\n+\n+if Framework.atLeastPython26:\n+ from io import BytesIO as IO\n+else:\n+ from StringIO import StringIO as IO\n+\n+\n+class Persistence(Framework.TestCase):\n+ def setUp(self):\n+ Framework.TestCase.setUp(self)\n+ self.repo = self.g.get_repo(\"akfish/PyGithub\")\n+\n+ self.dumpedRepo = IO()\n+ self.g.dump(self.repo, self.dumpedRepo)\n+ self.dumpedRepo.seek(0)\n+\n+ def tearDown(self):\n+ self.dumpedRepo.close()\n+\n+ def testLoad(self):\n+ loadedRepo = self.g.load(self.dumpedRepo)\n+ self.assertTrue(isinstance(loadedRepo, github.Repository.Repository))\n+ self.assertTrue(loadedRepo._requester is self.repo._requester)\n+ self.assertTrue(loadedRepo.owner._requester is self.repo._requester)\n+ self.assertEqual(loadedRepo.name, \"PyGithub\")\n+ self.assertEqual(loadedRepo.url, \"https://api.github.com/repos/akfish/PyGithub\")\n+\n+ def testLoadAndUpdate(self):\n+ loadedRepo = self.g.load(self.dumpedRepo)\n+ self.assertTrue(loadedRepo.update())"},{"sha":"dfc62ba258a155c9b40432ec67a51b8b8822ec73","filename":"github/tests/ReplayData/ConditionalRequestUpdate.setUp.txt","status":"added","additions":11,"deletions":0,"changes":11,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/tests/ReplayData/ConditionalRequestUpdate.setUp.txt","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/tests/ReplayData/ConditionalRequestUpdate.setUp.txt","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/tests/ReplayData/ConditionalRequestUpdate.setUp.txt?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -0,0 +1,11 @@\n+https\n+GET\n+api.github.com\n+None\n+/repos/akfish/PyGithub\n+{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'}\n+null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4988'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '13698'), ('server', 'GitHub.com'), ('last-modified', 'Thu, 22 Aug 2013 02:09:11 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '\"8600bedcb7fed1d8065e1693e05529ce\"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Thu, 22 Aug 2013 02:13:08 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1377140429')]\n+{\"id\":12156762,\"name\":\"PyGithub\",\"full_name\":\"akfish/PyGithub\",\"owner\":{\"login\":\"akfish\",\"id\":922715,\"avatar_url\":\"https://1.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png\",\"gravatar_id\":\"12a1b44d4e5c19cee59618084602b112\",\"url\":\"https://api.github.com/users/akfish\",\"html_url\":\"https://github.com/akfish\",\"followers_url\":\"https://api.github.com/users/akfish/followers\",\"following_url\":\"https://api.github.com/users/akfish/following{/other_user}\",\"gists_url\":\"https://api.github.com/users/akfish/gists{/gist_id}\",\"starred_url\":\"https://api.github.com/users/akfish/starred{/owner}{/repo}\",\"subscriptions_url\":\"https://api.github.com/users/akfish/subscriptions\",\"organizations_url\":\"https://api.github.com/users/akfish/orgs\",\"repos_url\":\"https://api.github.com/users/akfish/repos\",\"events_url\":\"https://api.github.com/users/akfish/events{/privacy}\",\"received_events_url\":\"https://api.github.com/users/akfish/received_events\",\"type\":\"User\"},\"private\":false,\"html_url\":\"https://github.com/akfish/PyGithub\",\"description\":\"Python library implementing the full Github API v3\",\"fork\":true,\"url\":\"https://api.github.com/repos/akfish/PyGithub\",\"forks_url\":\"https://api.github.com/repos/akfish/PyGithub/forks\",\"keys_url\":\"https://api.github.com/repos/akfish/PyGithub/keys{/key_id}\",\"collaborators_url\":\"https://api.github.com/repos/akfish/PyGithub/collaborators{/collaborator}\",\"teams_url\":\"https://api.github.com/repos/akfish/PyGithub/teams\",\"hooks_url\":\"https://api.github.com/repos/akfish/PyGithub/hooks\",\"issue_events_url\":\"https://api.github.com/repos/akfish/PyGithub/issues/events{/number}\",\"events_url\":\"https://api.github.com/repos/akfish/PyGithub/events\",\"assignees_url\":\"https://api.github.com/repos/akfish/PyGithub/assignees{/user}\",\"branches_url\":\"https://api.github.com/repos/akfish/PyGithub/branches{/branch}\",\"tags_url\":\"https://api.github.com/repos/akfish/PyGithub/tags\",\"blobs_url\":\"https://api.github.com/repos/akfish/PyGithub/git/blobs{/sha}\",\"git_tags_url\":\"https://api.github.com/repos/akfish/PyGithub/git/tags{/sha}\",\"git_refs_url\":\"https://api.github.com/repos/akfish/PyGithub/git/refs{/sha}\",\"trees_url\":\"https://api.github.com/repos/akfish/PyGithub/git/trees{/sha}\",\"statuses_url\":\"https://api.github.com/repos/akfish/PyGithub/statuses/{sha}\",\"languages_url\":\"https://api.github.com/repos/akfish/PyGithub/languages\",\"stargazers_url\":\"https://api.github.com/repos/akfish/PyGithub/stargazers\",\"contributors_url\":\"https://api.github.com/repos/akfish/PyGithub/contributors\",\"subscribers_url\":\"https://api.github.com/repos/akfish/PyGithub/subscribers\",\"subscription_url\":\"https://api.github.com/repos/akfish/PyGithub/subscription\",\"commits_url\":\"https://api.github.com/repos/akfish/PyGithub/commits{/sha}\",\"git_commits_url\":\"https://api.github.com/repos/akfish/PyGithub/git/commits{/sha}\",\"comments_url\":\"https://api.github.com/repos/akfish/PyGithub/comments{/number}\",\"issue_comment_url\":\"https://api.github.com/repos/akfish/PyGithub/issues/comments/{number}\",\"contents_url\":\"https://api.github.com/repos/akfish/PyGithub/contents/{+path}\",\"compare_url\":\"https://api.github.com/repos/akfish/PyGithub/compare/{base}...{head}\",\"merges_url\":\"https://api.github.com/repos/akfish/PyGithub/merges\",\"archive_url\":\"https://api.github.com/repos/akfish/PyGithub/{archive_format}{/ref}\",\"downloads_url\":\"https://api.github.com/repos/akfish/PyGithub/downloads\",\"issues_url\":\"https://api.github.com/repos/akfish/PyGithub/issues{/number}\",\"pulls_url\":\"https://api.github.com/repos/akfish/PyGithub/pulls{/number}\",\"milestones_url\":\"https://api.github.com/repos/akfish/PyGithub/milestones{/number}\",\"notifications_url\":\"https://api.github.com/repos/akfish/PyGithub/notifications{?since,all,participating}\",\"labels_url\":\"https://api.github.com/repos/akfish/PyGithub/labels{/name}\",\"created_at\":\"2013-08-16T10:56:11Z\",\"updated_at\":\"2013-08-22T02:09:11Z\",\"pushed_at\":\"2013-08-22T02:09:09Z\",\"git_url\":\"git://github.com/akfish/PyGithub.git\",\"ssh_url\":\"git@github.com:akfish/PyGithub.git\",\"clone_url\":\"https://github.com/akfish/PyGithub.git\",\"svn_url\":\"https://github.com/akfish/PyGithub\",\"homepage\":\"http://jacquev6.github.com/PyGithub\",\"size\":6736,\"watchers_count\":0,\"language\":\"Python\",\"has_issues\":false,\"has_downloads\":true,\"has_wiki\":true,\"forks_count\":0,\"mirror_url\":null,\"open_issues_count\":0,\"forks\":0,\"open_issues\":0,\"watchers\":0,\"master_branch\":\"master\",\"default_branch\":\"master\",\"permissions\":{\"admin\":true,\"push\":true,\"pull\":true},\"network_count\":70,\"parent\":{\"id\":3544490,\"name\":\"PyGithub\",\"full_name\":\"jacquev6/PyGithub\",\"owner\":{\"login\":\"jacquev6\",\"id\":327146,\"avatar_url\":\"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"url\":\"https://api.github.com/users/jacquev6\",\"html_url\":\"https://github.com/jacquev6\",\"followers_url\":\"https://api.github.com/users/jacquev6/followers\",\"following_url\":\"https://api.github.com/users/jacquev6/following{/other_user}\",\"gists_url\":\"https://api.github.com/users/jacquev6/gists{/gist_id}\",\"starred_url\":\"https://api.github.com/users/jacquev6/starred{/owner}{/repo}\",\"subscriptions_url\":\"https://api.github.com/users/jacquev6/subscriptions\",\"organizations_url\":\"https://api.github.com/users/jacquev6/orgs\",\"repos_url\":\"https://api.github.com/users/jacquev6/repos\",\"events_url\":\"https://api.github.com/users/jacquev6/events{/privacy}\",\"received_events_url\":\"https://api.github.com/users/jacquev6/received_events\",\"type\":\"User\"},\"private\":false,\"html_url\":\"https://github.com/jacquev6/PyGithub\",\"description\":\"Python library implementing the full Github API v3\",\"fork\":false,\"url\":\"https://api.github.com/repos/jacquev6/PyGithub\",\"forks_url\":\"https://api.github.com/repos/jacquev6/PyGithub/forks\",\"keys_url\":\"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}\",\"collaborators_url\":\"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}\",\"teams_url\":\"https://api.github.com/repos/jacquev6/PyGithub/teams\",\"hooks_url\":\"https://api.github.com/repos/jacquev6/PyGithub/hooks\",\"issue_events_url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}\",\"events_url\":\"https://api.github.com/repos/jacquev6/PyGithub/events\",\"assignees_url\":\"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}\",\"branches_url\":\"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}\",\"tags_url\":\"https://api.github.com/repos/jacquev6/PyGithub/tags\",\"blobs_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}\",\"git_tags_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}\",\"git_refs_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}\",\"trees_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}\",\"statuses_url\":\"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}\",\"languages_url\":\"https://api.github.com/repos/jacquev6/PyGithub/languages\",\"stargazers_url\":\"https://api.github.com/repos/jacquev6/PyGithub/stargazers\",\"contributors_url\":\"https://api.github.com/repos/jacquev6/PyGithub/contributors\",\"subscribers_url\":\"https://api.github.com/repos/jacquev6/PyGithub/subscribers\",\"subscription_url\":\"https://api.github.com/repos/jacquev6/PyGithub/subscription\",\"commits_url\":\"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}\",\"git_commits_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}\",\"comments_url\":\"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}\",\"issue_comment_url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}\",\"contents_url\":\"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}\",\"compare_url\":\"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}\",\"merges_url\":\"https://api.github.com/repos/jacquev6/PyGithub/merges\",\"archive_url\":\"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}\",\"downloads_url\":\"https://api.github.com/repos/jacquev6/PyGithub/downloads\",\"issues_url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}\",\"pulls_url\":\"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}\",\"milestones_url\":\"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}\",\"notifications_url\":\"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}\",\"labels_url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}\",\"created_at\":\"2012-02-25T12:53:47Z\",\"updated_at\":\"2013-08-21T20:32:08Z\",\"pushed_at\":\"2013-08-21T20:31:45Z\",\"git_url\":\"git://github.com/jacquev6/PyGithub.git\",\"ssh_url\":\"git@github.com:jacquev6/PyGithub.git\",\"clone_url\":\"https://github.com/jacquev6/PyGithub.git\",\"svn_url\":\"https://github.com/jacquev6/PyGithub\",\"homepage\":\"http://jacquev6.github.com/PyGithub\",\"size\":7437,\"watchers_count\":248,\"language\":\"Python\",\"has_issues\":true,\"has_downloads\":true,\"has_wiki\":true,\"forks_count\":70,\"mirror_url\":null,\"open_issues_count\":17,\"forks\":70,\"open_issues\":17,\"watchers\":248,\"master_branch\":\"master\",\"default_branch\":\"master\"},\"source\":{\"id\":3544490,\"name\":\"PyGithub\",\"full_name\":\"jacquev6/PyGithub\",\"owner\":{\"login\":\"jacquev6\",\"id\":327146,\"avatar_url\":\"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"url\":\"https://api.github.com/users/jacquev6\",\"html_url\":\"https://github.com/jacquev6\",\"followers_url\":\"https://api.github.com/users/jacquev6/followers\",\"following_url\":\"https://api.github.com/users/jacquev6/following{/other_user}\",\"gists_url\":\"https://api.github.com/users/jacquev6/gists{/gist_id}\",\"starred_url\":\"https://api.github.com/users/jacquev6/starred{/owner}{/repo}\",\"subscriptions_url\":\"https://api.github.com/users/jacquev6/subscriptions\",\"organizations_url\":\"https://api.github.com/users/jacquev6/orgs\",\"repos_url\":\"https://api.github.com/users/jacquev6/repos\",\"events_url\":\"https://api.github.com/users/jacquev6/events{/privacy}\",\"received_events_url\":\"https://api.github.com/users/jacquev6/received_events\",\"type\":\"User\"},\"private\":false,\"html_url\":\"https://github.com/jacquev6/PyGithub\",\"description\":\"Python library implementing the full Github API v3\",\"fork\":false,\"url\":\"https://api.github.com/repos/jacquev6/PyGithub\",\"forks_url\":\"https://api.github.com/repos/jacquev6/PyGithub/forks\",\"keys_url\":\"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}\",\"collaborators_url\":\"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}\",\"teams_url\":\"https://api.github.com/repos/jacquev6/PyGithub/teams\",\"hooks_url\":\"https://api.github.com/repos/jacquev6/PyGithub/hooks\",\"issue_events_url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}\",\"events_url\":\"https://api.github.com/repos/jacquev6/PyGithub/events\",\"assignees_url\":\"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}\",\"branches_url\":\"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}\",\"tags_url\":\"https://api.github.com/repos/jacquev6/PyGithub/tags\",\"blobs_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}\",\"git_tags_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}\",\"git_refs_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}\",\"trees_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}\",\"statuses_url\":\"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}\",\"languages_url\":\"https://api.github.com/repos/jacquev6/PyGithub/languages\",\"stargazers_url\":\"https://api.github.com/repos/jacquev6/PyGithub/stargazers\",\"contributors_url\":\"https://api.github.com/repos/jacquev6/PyGithub/contributors\",\"subscribers_url\":\"https://api.github.com/repos/jacquev6/PyGithub/subscribers\",\"subscription_url\":\"https://api.github.com/repos/jacquev6/PyGithub/subscription\",\"commits_url\":\"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}\",\"git_commits_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}\",\"comments_url\":\"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}\",\"issue_comment_url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}\",\"contents_url\":\"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}\",\"compare_url\":\"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}\",\"merges_url\":\"https://api.github.com/repos/jacquev6/PyGithub/merges\",\"archive_url\":\"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}\",\"downloads_url\":\"https://api.github.com/repos/jacquev6/PyGithub/downloads\",\"issues_url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}\",\"pulls_url\":\"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}\",\"milestones_url\":\"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}\",\"notifications_url\":\"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}\",\"labels_url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}\",\"created_at\":\"2012-02-25T12:53:47Z\",\"updated_at\":\"2013-08-21T20:32:08Z\",\"pushed_at\":\"2013-08-21T20:31:45Z\",\"git_url\":\"git://github.com/jacquev6/PyGithub.git\",\"ssh_url\":\"git@github.com:jacquev6/PyGithub.git\",\"clone_url\":\"https://github.com/jacquev6/PyGithub.git\",\"svn_url\":\"https://github.com/jacquev6/PyGithub\",\"homepage\":\"http://jacquev6.github.com/PyGithub\",\"size\":7437,\"watchers_count\":248,\"language\":\"Python\",\"has_issues\":true,\"has_downloads\":true,\"has_wiki\":true,\"forks_count\":70,\"mirror_url\":null,\"open_issues_count\":17,\"forks\":70,\"open_issues\":17,\"watchers\":248,\"master_branch\":\"master\",\"default_branch\":\"master\"}}\n+"},{"sha":"025aee8c0f6dea08b255b2229fd018af435b9d2a","filename":"github/tests/ReplayData/ConditionalRequestUpdate.testDidNotUpdate.txt","status":"added","additions":11,"deletions":0,"changes":11,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/tests/ReplayData/ConditionalRequestUpdate.testDidNotUpdate.txt","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/tests/ReplayData/ConditionalRequestUpdate.testDidNotUpdate.txt","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/tests/ReplayData/ConditionalRequestUpdate.testDidNotUpdate.txt?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -0,0 +1,11 @@\n+https\n+GET\n+api.github.com\n+None\n+/repos/akfish/PyGithub\n+{'If-None-Match': '\"8600bedcb7fed1d8065e1693e05529ce\"', 'User-Agent': 'PyGithub/Python', 'Authorization': 'Basic login_and_password_removed', 'If-Modified-Since': 'Thu, 22 Aug 2013 02:09:11 GMT'}\n+null\n+304\n+[('status', '304 Not Modified'), ('x-ratelimit-remaining', '4988'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('last-modified', 'Thu, 22 Aug 2013 02:09:11 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '\"8600bedcb7fed1d8065e1693e05529ce\"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Thu, 22 Aug 2013 02:13:10 GMT'), ('access-control-allow-origin', '*'), ('x-ratelimit-reset', '1377140429')]\n+\n+"},{"sha":"b6d8aeec9b3c663cfe561eb2513a514f10011673","filename":"github/tests/ReplayData/ConditionalRequestUpdate.testDidUpdate.txt","status":"added","additions":11,"deletions":0,"changes":11,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/tests/ReplayData/ConditionalRequestUpdate.testDidUpdate.txt","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/tests/ReplayData/ConditionalRequestUpdate.testDidUpdate.txt","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/tests/ReplayData/ConditionalRequestUpdate.testDidUpdate.txt?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -0,0 +1,11 @@\n+https\n+GET\n+api.github.com\n+None\n+/repos/akfish/PyGithub\n+{'If-None-Match': '\"8600bedcb7fed1d8065e1693e05529ce\"', 'User-Agent': 'PyGithub/Python', 'Authorization': 'Basic login_and_password_removed', 'If-Modified-Since': 'Thu, 22 Aug 2013 02:09:11 GMT'}\n+null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4987'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '13712'), ('server', 'GitHub.com'), ('last-modified', 'Thu, 22 Aug 2013 02:14:54 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '\"ef281ef0e821c18f80da36902727160b\"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Thu, 22 Aug 2013 02:15:01 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1377140429')]\n+{\"id\":12156762,\"name\":\"PyGithub\",\"full_name\":\"akfish/PyGithub\",\"owner\":{\"login\":\"akfish\",\"id\":922715,\"avatar_url\":\"https://0.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png\",\"gravatar_id\":\"12a1b44d4e5c19cee59618084602b112\",\"url\":\"https://api.github.com/users/akfish\",\"html_url\":\"https://github.com/akfish\",\"followers_url\":\"https://api.github.com/users/akfish/followers\",\"following_url\":\"https://api.github.com/users/akfish/following{/other_user}\",\"gists_url\":\"https://api.github.com/users/akfish/gists{/gist_id}\",\"starred_url\":\"https://api.github.com/users/akfish/starred{/owner}{/repo}\",\"subscriptions_url\":\"https://api.github.com/users/akfish/subscriptions\",\"organizations_url\":\"https://api.github.com/users/akfish/orgs\",\"repos_url\":\"https://api.github.com/users/akfish/repos\",\"events_url\":\"https://api.github.com/users/akfish/events{/privacy}\",\"received_events_url\":\"https://api.github.com/users/akfish/received_events\",\"type\":\"User\"},\"private\":false,\"html_url\":\"https://github.com/akfish/PyGithub\",\"description\":\"Python library implementing the full Github API v3 - AKFish Fork\",\"fork\":true,\"url\":\"https://api.github.com/repos/akfish/PyGithub\",\"forks_url\":\"https://api.github.com/repos/akfish/PyGithub/forks\",\"keys_url\":\"https://api.github.com/repos/akfish/PyGithub/keys{/key_id}\",\"collaborators_url\":\"https://api.github.com/repos/akfish/PyGithub/collaborators{/collaborator}\",\"teams_url\":\"https://api.github.com/repos/akfish/PyGithub/teams\",\"hooks_url\":\"https://api.github.com/repos/akfish/PyGithub/hooks\",\"issue_events_url\":\"https://api.github.com/repos/akfish/PyGithub/issues/events{/number}\",\"events_url\":\"https://api.github.com/repos/akfish/PyGithub/events\",\"assignees_url\":\"https://api.github.com/repos/akfish/PyGithub/assignees{/user}\",\"branches_url\":\"https://api.github.com/repos/akfish/PyGithub/branches{/branch}\",\"tags_url\":\"https://api.github.com/repos/akfish/PyGithub/tags\",\"blobs_url\":\"https://api.github.com/repos/akfish/PyGithub/git/blobs{/sha}\",\"git_tags_url\":\"https://api.github.com/repos/akfish/PyGithub/git/tags{/sha}\",\"git_refs_url\":\"https://api.github.com/repos/akfish/PyGithub/git/refs{/sha}\",\"trees_url\":\"https://api.github.com/repos/akfish/PyGithub/git/trees{/sha}\",\"statuses_url\":\"https://api.github.com/repos/akfish/PyGithub/statuses/{sha}\",\"languages_url\":\"https://api.github.com/repos/akfish/PyGithub/languages\",\"stargazers_url\":\"https://api.github.com/repos/akfish/PyGithub/stargazers\",\"contributors_url\":\"https://api.github.com/repos/akfish/PyGithub/contributors\",\"subscribers_url\":\"https://api.github.com/repos/akfish/PyGithub/subscribers\",\"subscription_url\":\"https://api.github.com/repos/akfish/PyGithub/subscription\",\"commits_url\":\"https://api.github.com/repos/akfish/PyGithub/commits{/sha}\",\"git_commits_url\":\"https://api.github.com/repos/akfish/PyGithub/git/commits{/sha}\",\"comments_url\":\"https://api.github.com/repos/akfish/PyGithub/comments{/number}\",\"issue_comment_url\":\"https://api.github.com/repos/akfish/PyGithub/issues/comments/{number}\",\"contents_url\":\"https://api.github.com/repos/akfish/PyGithub/contents/{+path}\",\"compare_url\":\"https://api.github.com/repos/akfish/PyGithub/compare/{base}...{head}\",\"merges_url\":\"https://api.github.com/repos/akfish/PyGithub/merges\",\"archive_url\":\"https://api.github.com/repos/akfish/PyGithub/{archive_format}{/ref}\",\"downloads_url\":\"https://api.github.com/repos/akfish/PyGithub/downloads\",\"issues_url\":\"https://api.github.com/repos/akfish/PyGithub/issues{/number}\",\"pulls_url\":\"https://api.github.com/repos/akfish/PyGithub/pulls{/number}\",\"milestones_url\":\"https://api.github.com/repos/akfish/PyGithub/milestones{/number}\",\"notifications_url\":\"https://api.github.com/repos/akfish/PyGithub/notifications{?since,all,participating}\",\"labels_url\":\"https://api.github.com/repos/akfish/PyGithub/labels{/name}\",\"created_at\":\"2013-08-16T10:56:11Z\",\"updated_at\":\"2013-08-22T02:14:54Z\",\"pushed_at\":\"2013-08-22T02:09:09Z\",\"git_url\":\"git://github.com/akfish/PyGithub.git\",\"ssh_url\":\"git@github.com:akfish/PyGithub.git\",\"clone_url\":\"https://github.com/akfish/PyGithub.git\",\"svn_url\":\"https://github.com/akfish/PyGithub\",\"homepage\":\"http://jacquev6.github.com/PyGithub\",\"size\":6736,\"watchers_count\":0,\"language\":\"Python\",\"has_issues\":false,\"has_downloads\":true,\"has_wiki\":true,\"forks_count\":0,\"mirror_url\":null,\"open_issues_count\":0,\"forks\":0,\"open_issues\":0,\"watchers\":0,\"master_branch\":\"master\",\"default_branch\":\"master\",\"permissions\":{\"admin\":true,\"push\":true,\"pull\":true},\"network_count\":70,\"parent\":{\"id\":3544490,\"name\":\"PyGithub\",\"full_name\":\"jacquev6/PyGithub\",\"owner\":{\"login\":\"jacquev6\",\"id\":327146,\"avatar_url\":\"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"url\":\"https://api.github.com/users/jacquev6\",\"html_url\":\"https://github.com/jacquev6\",\"followers_url\":\"https://api.github.com/users/jacquev6/followers\",\"following_url\":\"https://api.github.com/users/jacquev6/following{/other_user}\",\"gists_url\":\"https://api.github.com/users/jacquev6/gists{/gist_id}\",\"starred_url\":\"https://api.github.com/users/jacquev6/starred{/owner}{/repo}\",\"subscriptions_url\":\"https://api.github.com/users/jacquev6/subscriptions\",\"organizations_url\":\"https://api.github.com/users/jacquev6/orgs\",\"repos_url\":\"https://api.github.com/users/jacquev6/repos\",\"events_url\":\"https://api.github.com/users/jacquev6/events{/privacy}\",\"received_events_url\":\"https://api.github.com/users/jacquev6/received_events\",\"type\":\"User\"},\"private\":false,\"html_url\":\"https://github.com/jacquev6/PyGithub\",\"description\":\"Python library implementing the full Github API v3\",\"fork\":false,\"url\":\"https://api.github.com/repos/jacquev6/PyGithub\",\"forks_url\":\"https://api.github.com/repos/jacquev6/PyGithub/forks\",\"keys_url\":\"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}\",\"collaborators_url\":\"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}\",\"teams_url\":\"https://api.github.com/repos/jacquev6/PyGithub/teams\",\"hooks_url\":\"https://api.github.com/repos/jacquev6/PyGithub/hooks\",\"issue_events_url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}\",\"events_url\":\"https://api.github.com/repos/jacquev6/PyGithub/events\",\"assignees_url\":\"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}\",\"branches_url\":\"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}\",\"tags_url\":\"https://api.github.com/repos/jacquev6/PyGithub/tags\",\"blobs_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}\",\"git_tags_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}\",\"git_refs_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}\",\"trees_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}\",\"statuses_url\":\"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}\",\"languages_url\":\"https://api.github.com/repos/jacquev6/PyGithub/languages\",\"stargazers_url\":\"https://api.github.com/repos/jacquev6/PyGithub/stargazers\",\"contributors_url\":\"https://api.github.com/repos/jacquev6/PyGithub/contributors\",\"subscribers_url\":\"https://api.github.com/repos/jacquev6/PyGithub/subscribers\",\"subscription_url\":\"https://api.github.com/repos/jacquev6/PyGithub/subscription\",\"commits_url\":\"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}\",\"git_commits_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}\",\"comments_url\":\"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}\",\"issue_comment_url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}\",\"contents_url\":\"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}\",\"compare_url\":\"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}\",\"merges_url\":\"https://api.github.com/repos/jacquev6/PyGithub/merges\",\"archive_url\":\"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}\",\"downloads_url\":\"https://api.github.com/repos/jacquev6/PyGithub/downloads\",\"issues_url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}\",\"pulls_url\":\"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}\",\"milestones_url\":\"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}\",\"notifications_url\":\"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}\",\"labels_url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}\",\"created_at\":\"2012-02-25T12:53:47Z\",\"updated_at\":\"2013-08-21T20:32:08Z\",\"pushed_at\":\"2013-08-21T20:31:45Z\",\"git_url\":\"git://github.com/jacquev6/PyGithub.git\",\"ssh_url\":\"git@github.com:jacquev6/PyGithub.git\",\"clone_url\":\"https://github.com/jacquev6/PyGithub.git\",\"svn_url\":\"https://github.com/jacquev6/PyGithub\",\"homepage\":\"http://jacquev6.github.com/PyGithub\",\"size\":7437,\"watchers_count\":248,\"language\":\"Python\",\"has_issues\":true,\"has_downloads\":true,\"has_wiki\":true,\"forks_count\":70,\"mirror_url\":null,\"open_issues_count\":17,\"forks\":70,\"open_issues\":17,\"watchers\":248,\"master_branch\":\"master\",\"default_branch\":\"master\"},\"source\":{\"id\":3544490,\"name\":\"PyGithub\",\"full_name\":\"jacquev6/PyGithub\",\"owner\":{\"login\":\"jacquev6\",\"id\":327146,\"avatar_url\":\"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"url\":\"https://api.github.com/users/jacquev6\",\"html_url\":\"https://github.com/jacquev6\",\"followers_url\":\"https://api.github.com/users/jacquev6/followers\",\"following_url\":\"https://api.github.com/users/jacquev6/following{/other_user}\",\"gists_url\":\"https://api.github.com/users/jacquev6/gists{/gist_id}\",\"starred_url\":\"https://api.github.com/users/jacquev6/starred{/owner}{/repo}\",\"subscriptions_url\":\"https://api.github.com/users/jacquev6/subscriptions\",\"organizations_url\":\"https://api.github.com/users/jacquev6/orgs\",\"repos_url\":\"https://api.github.com/users/jacquev6/repos\",\"events_url\":\"https://api.github.com/users/jacquev6/events{/privacy}\",\"received_events_url\":\"https://api.github.com/users/jacquev6/received_events\",\"type\":\"User\"},\"private\":false,\"html_url\":\"https://github.com/jacquev6/PyGithub\",\"description\":\"Python library implementing the full Github API v3\",\"fork\":false,\"url\":\"https://api.github.com/repos/jacquev6/PyGithub\",\"forks_url\":\"https://api.github.com/repos/jacquev6/PyGithub/forks\",\"keys_url\":\"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}\",\"collaborators_url\":\"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}\",\"teams_url\":\"https://api.github.com/repos/jacquev6/PyGithub/teams\",\"hooks_url\":\"https://api.github.com/repos/jacquev6/PyGithub/hooks\",\"issue_events_url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}\",\"events_url\":\"https://api.github.com/repos/jacquev6/PyGithub/events\",\"assignees_url\":\"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}\",\"branches_url\":\"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}\",\"tags_url\":\"https://api.github.com/repos/jacquev6/PyGithub/tags\",\"blobs_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}\",\"git_tags_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}\",\"git_refs_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}\",\"trees_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}\",\"statuses_url\":\"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}\",\"languages_url\":\"https://api.github.com/repos/jacquev6/PyGithub/languages\",\"stargazers_url\":\"https://api.github.com/repos/jacquev6/PyGithub/stargazers\",\"contributors_url\":\"https://api.github.com/repos/jacquev6/PyGithub/contributors\",\"subscribers_url\":\"https://api.github.com/repos/jacquev6/PyGithub/subscribers\",\"subscription_url\":\"https://api.github.com/repos/jacquev6/PyGithub/subscription\",\"commits_url\":\"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}\",\"git_commits_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}\",\"comments_url\":\"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}\",\"issue_comment_url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}\",\"contents_url\":\"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}\",\"compare_url\":\"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}\",\"merges_url\":\"https://api.github.com/repos/jacquev6/PyGithub/merges\",\"archive_url\":\"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}\",\"downloads_url\":\"https://api.github.com/repos/jacquev6/PyGithub/downloads\",\"issues_url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}\",\"pulls_url\":\"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}\",\"milestones_url\":\"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}\",\"notifications_url\":\"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}\",\"labels_url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}\",\"created_at\":\"2012-02-25T12:53:47Z\",\"updated_at\":\"2013-08-21T20:32:08Z\",\"pushed_at\":\"2013-08-21T20:31:45Z\",\"git_url\":\"git://github.com/jacquev6/PyGithub.git\",\"ssh_url\":\"git@github.com:jacquev6/PyGithub.git\",\"clone_url\":\"https://github.com/jacquev6/PyGithub.git\",\"svn_url\":\"https://github.com/jacquev6/PyGithub\",\"homepage\":\"http://jacquev6.github.com/PyGithub\",\"size\":7437,\"watchers_count\":248,\"language\":\"Python\",\"has_issues\":true,\"has_downloads\":true,\"has_wiki\":true,\"forks_count\":70,\"mirror_url\":null,\"open_issues_count\":17,\"forks\":70,\"open_issues\":17,\"watchers\":248,\"master_branch\":\"master\",\"default_branch\":\"master\"}}\n+"},{"sha":"6ef154b5c89fc41728599711ada9ac0aa8d36959","filename":"github/tests/ReplayData/ConditionalRequestUpdate.testUpdateObjectWithoutEtag.txt","status":"added","additions":22,"deletions":0,"changes":22,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/tests/ReplayData/ConditionalRequestUpdate.testUpdateObjectWithoutEtag.txt","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/tests/ReplayData/ConditionalRequestUpdate.testUpdateObjectWithoutEtag.txt","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/tests/ReplayData/ConditionalRequestUpdate.testUpdateObjectWithoutEtag.txt?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -0,0 +1,22 @@\n+https\r\n+GET\r\n+api.github.com\r\n+None\r\n+/repos/jacquev6/PyGithub\r\n+{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'}\r\n+null\r\n+200\r\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4911'), ('content-length', '1129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('date', 'Sun, 27 May 2012 07:17:09 GMT'), ('content-type', 'application/json; charset=utf-8')]\r\n+{\"clone_url\":\"https://github.com/jacquev6/PyGithub.git\",\"has_downloads\":true,\"watchers\":15,\"git_url\":\"git://github.com/jacquev6/PyGithub.git\",\"updated_at\":\"2012-05-27T06:55:28Z\",\"permissions\":{\"pull\":true,\"admin\":true,\"push\":true},\"homepage\":\"http://vincent-jacques.net/PyGithub\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub\",\"mirror_url\":null,\"has_wiki\":false,\"has_issues\":true,\"fork\":false,\"forks\":3,\"size\":308,\"private\":false,\"open_issues\":16,\"svn_url\":\"https://github.com/jacquev6/PyGithub\",\"owner\":{\"url\":\"https://api.github.com/users/jacquev6\",\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"login\":\"jacquev6\",\"id\":327146},\"name\":\"PyGithub\",\"language\":\"Python\",\"description\":\"Python library implementing the full Github API v3\",\"ssh_url\":\"git@github.com:jacquev6/PyGithub.git\",\"pushed_at\":\"2012-05-27T06:00:28Z\",\"created_at\":\"2012-02-25T12:53:47Z\",\"id\":3544490,\"html_url\":\"https://github.com/jacquev6/PyGithub\",\"full_name\":\"jacquev6/PyGithub\"}\r\n+\r\n+https\r\n+GET\r\n+api.github.com\r\n+None\r\n+/repos/jacquev6/PyGithub\r\n+{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'}\r\n+null\r\n+200\r\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4911'), ('content-length', '1129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('date', 'Sun, 27 May 2012 07:17:09 GMT'), ('content-type', 'application/json; charset=utf-8')]\r\n+{\"clone_url\":\"https://github.com/jacquev6/PyGithub.git\",\"has_downloads\":true,\"watchers\":15,\"git_url\":\"git://github.com/jacquev6/PyGithub.git\",\"updated_at\":\"2012-05-27T06:55:28Z\",\"permissions\":{\"pull\":true,\"admin\":true,\"push\":true},\"homepage\":\"http://vincent-jacques.net/PyGithub\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub\",\"mirror_url\":null,\"has_wiki\":false,\"has_issues\":true,\"fork\":false,\"forks\":3,\"size\":308,\"private\":false,\"open_issues\":16,\"svn_url\":\"https://github.com/jacquev6/PyGithub\",\"owner\":{\"url\":\"https://api.github.com/users/jacquev6\",\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"login\":\"jacquev6\",\"id\":327146},\"name\":\"PyGithub\",\"language\":\"Python\",\"description\":\"Python library implementing the full Github API v3\",\"ssh_url\":\"git@github.com:jacquev6/PyGithub.git\",\"pushed_at\":\"2012-05-27T06:00:28Z\",\"created_at\":\"2012-02-25T12:53:47Z\",\"id\":3544490,\"html_url\":\"https://github.com/jacquev6/PyGithub\",\"full_name\":\"jacquev6/PyGithub\"}\r\n+\r"},{"sha":"0589aa6c8958061fa31f388fd9d737750bdac50a","filename":"github/tests/ReplayData/Gist.testFork.txt","status":"modified","additions":9,"deletions":9,"changes":18,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/tests/ReplayData/Gist.testFork.txt","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/tests/ReplayData/Gist.testFork.txt","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/tests/ReplayData/Gist.testFork.txt?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -2,32 +2,32 @@ https\n GET\n api.github.com\n None\n-/gists/2729818\n+/gists/6296553\n {'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'}\n null\n 200\n-[('status', '200 OK'), ('x-ratelimit-remaining', '4970'), ('content-length', '2576'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"fda4eb92e9b9a245bccf9efd47857766\"'), ('date', 'Sat, 19 May 2012 07:25:30 GMT'), ('content-type', 'application/json; charset=utf-8')]\n-{\"git_push_url\":\"git@gist.github.com:2729818.git\",\"updated_at\":\"2012-05-19T07:06:08Z\",\"forks\":[],\"url\":\"https://api.github.com/gists/2729818\",\"comments\":0,\"public\":true,\"files\":{\"ror.markdown\":{\"type\":\"text/plain\",\"raw_url\":\"https://gist.github.com/raw/2729818/1284e70f4c16550ef32a26aa4f5f0c78edaa7008/ror.markdown\",\"size\":1076,\"filename\":\"ror.markdown\",\"content\":\"## create user\\n\\nsudo useradd -m username\\nvisudo\\n\\n## delete default user\\n\\nsudo userdel ubuntu\\nsudo rm -Rf ubuntu\\n\\n## setup ssh\\n\\nmkdir ~/.ssh\\nvi /etc/ssh/authorized_keys\\nsudo vi /etc/ssh/sshd_config\\n\\n\\n## install packages\\n\\nsudo apt-get update\\n\\nsudo apt-get install sysv-rc-init git-core apache2-utils wget vim\\nsudo apt-get install mysql-client mysql-server libmysqld-dev\\nsudo apt-get install g++ openssl zlib1g readline-common libyaml-dev libssl-dev zlib1g-dev libxml2-dev libxslt1-dev libjson0-dev libgcc1 libreadline-dev\\n\\n\\n## install nginx\\n\\nwget http://nginx.org/keys/nginx_signing.key\\nsudo apt-key add nginx_signing.key\\n\\n### add /etc/sources.list\\n> \\\"deb http://nginx.org/packages/ubuntu/ lucid nginx\\ndeb-src http://nginx.org/packages/ubuntu/ lucid nginx\\\"\\n\\napt-get update\\napt-get install nginx\\n\\n\\n## setup system\\n\\nsudo sysv-rc-init\\n\\n\\n## install ruby\\n\\ncd /usr/local/src\\nsudo wget ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p194.tar.gz\\nsudo tar zxvf ruby-1.9.3-p194.tar.gz\\ncd ruby-1.9.3-p194\\nsudo ./configure\\nsudo make && make install\\n\\n\\n## install RoR\\n\\nsudo gem install rails\",\"language\":\"Markdown\"}},\"html_url\":\"https://gist.github.com/2729818\",\"user\":{\"url\":\"https://api.github.com/users/Kechol\",\"gravatar_id\":\"f2a6400b393749ccd9ad3f24d4995f77\",\"login\":\"Kechol\",\"avatar_url\":\"https://secure.gravatar.com/avatar/f2a6400b393749ccd9ad3f24d4995f77?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\",\"id\":625489},\"description\":\"RoR setup in AWS EC2(Ubuntu 12.04 LTS)\",\"created_at\":\"2012-05-19T07:06:08Z\",\"git_pull_url\":\"git://gist.github.com/2729818.git\",\"id\":\"2729818\",\"history\":[{\"url\":\"https://api.github.com/gists/2729818/a655d19a12233e5e5615deb714eae95c433eed57\",\"version\":\"a655d19a12233e5e5615deb714eae95c433eed57\",\"change_status\":{\"deletions\":0,\"additions\":57,\"total\":57},\"committed_at\":\"2012-05-19T07:06:08Z\",\"user\":{\"url\":\"https://api.github.com/users/Kechol\",\"gravatar_id\":\"f2a6400b393749ccd9ad3f24d4995f77\",\"login\":\"Kechol\",\"avatar_url\":\"https://secure.gravatar.com/avatar/f2a6400b393749ccd9ad3f24d4995f77?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\",\"id\":625489}}]}\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4966'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '25285'), ('server', 'GitHub.com'), ('last-modified', 'Wed, 21 Aug 2013 16:26:50 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '\"b96b3895f5da8f5e9533f0db72748a49\"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 21 Aug 2013 16:28:20 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1377104997')]\n+{\"url\":\"https://api.github.com/gists/6296553\",\"forks_url\":\"https://api.github.com/gists/6296553/forks\",\"commits_url\":\"https://api.github.com/gists/6296553/commits\",\"id\":\"6296553\",\"git_pull_url\":\"https://gist.github.com/6296553.git\",\"git_push_url\":\"https://gist.github.com/6296553.git\",\"html_url\":\"https://gist.github.com/6296553\",\"files\":{\"GithubAPI.lua\":{\"filename\":\"GithubAPI.lua\",\"type\":\"text/plain\",\"language\":\"Lua\",\"raw_url\":\"https://gist.github.com/raw/6296553/88aafa25fb28e17013054a117354a37f0d78963c/GithubAPI.lua\",\"size\":21229,\"content\":\"-- GithubAPI\\n-- @Author : Hyro Vitaly Protago\\n-- @Version : 1.0.0\\n\\n--[[\\n\\nINFOS :\\n - Cannot delete an anonymous gist\\n]]--\\n\\nGithubAPI = {\\n\\tlocation = \\\"https://api.github.com/\\\",\\n\\ttoken = nil,\\n\\tOAuth = {\\n\\t\\tauthorizations = {}\\n\\t},\\n\\tgist = {\\n\\t\\tlist = {},\\n\\t\\tcomment = {}\\n\\t},\\n\\tgithub = {}\\n}\\n\\n----------------------------------------------------------------------------\\n------------------------------ Github API ----------------------------------\\n----------------------------------------------------------------------------\\n\\n--- Authentication ---\\n\\n--[[ Scopes --\\n\\nScopes let you specify exactly what type of access you need. Scopes limit access for OAuth tokens.\\nThey do not grant any additional permission beyond that which the user already has.\\n\\nFor the web flow, requested scopes will be displayed to the user on the authorize form.\\n\\nCheck headers to see what OAuth scopes you have, and what the API action accepts.\\n\\n~~~\\n$ curl -H \\\"Authorization: token OAUTH-TOKEN\\\" https://api.github.com/users/technoweenie -I\\nHTTP/1.1 200 OK\\nX-OAuth-Scopes: repo, user\\nX-Accepted-OAuth-Scopes: user\\nX-OAuth-Scopes lists the scopes your token has authorized. X-Accepted-OAuth-Scopes lists the scopes that the action checks for.\\n~~~\\n\\n- (no scope)\\npublic read-only access (includes public user profile info, public repo info, and gists).\\n- user\\nRead/write access to profile info only. Note: this scope includes user:email and user:follow.\\n- user:email\\nRead access to a user’s email addresses.\\n- user:follow\\nAccess to follow or unfollow other users.\\n- public_repo\\nRead/write access to public repos and organizations.\\n- repo\\nRead/write access to public and private repos and organizations.\\n- repo:status\\nRead/write access to public and private repository commit statuses.\\nThis scope is only necessary to grant other users or services access to private repository commit statuses without granting access to the code.\\nThe repo and public_repo scopes already include access to commit status for private and public repositories respectively.\\n- delete_repo\\nDelete access to adminable repositories.\\n- notifications\\nRead access to a user’s notifications. repo is accepted too.\\n- gist\\nWrite access to gists.\\n\\nNOTE: Your application can request the scopes in the initial redirection. You can specify multiple scopes by separating them by a comma.\\n~~~\\nhttps://github.com/login/oauth/authorize?\\n client_id=...&\\n scope=user,public_repo\\n~~~\\n]]--\\n\\n-- Redirect users to request GitHub access --\\nfunction GithubAPI.OAuth.getToken(client_id, scope, callback)\\n\\tGithubAPI.http_request(\\\"https://github.com/login/oauth/authorize?client_id=\\\"..client_id..\\\"&scope=\\\"..scope, function(data, status, headers)\\n\\t\\tGithubAPI.OAuth._getToken(client_id, client_secret, data, callback)\\n\\tend, nil, true)\\nend\\n-- GitHub redirects back to your site --\\nfunction GithubAPI.OAuth._getToken(client_id, client_secret, code, callback)\\n\\tGithubAPI.http_request(\\\"https://github.com/login/oauth/access_token\\\", callback, {\\n\\t\\tmethod = \\\"POST\\\",\\n\\t\\tdata = {\\n\\t\\t\\tclient_id = client_id,\\n\\t\\t\\tclient_secret = client_secret,\\n\\t\\t\\tcode = code\\n\\t\\t}\\n\\t}, true)\\nend\\n\\n-- List your authorizations --\\nfunction GithubAPI.OAuth.authorizations.list(callback)\\n\\tGithubAPI.http_request(\\\"authorizations\\\", callback)\\nend\\n\\n--[[ Response --\\nStatus: 200 OK\\nLink: ; rel=\\\"next\\\",\\n ; rel=\\\"last\\\"\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n[\\n {\\n \\\"id\\\": 1,\\n \\\"url\\\": \\\"https://api.github.com/authorizations/1\\\",\\n \\\"scopes\\\": [\\n \\\"public_repo\\\"\\n ],\\n \\\"token\\\": \\\"abc123\\\",\\n \\\"app\\\": {\\n \\\"url\\\": \\\"http://my-github-app.com\\\",\\n \\\"name\\\": \\\"my github app\\\",\\n \\\"client_id\\\": \\\"abcde12345fghij67890\\\"\\n },\\n \\\"note\\\": \\\"optional note\\\",\\n \\\"note_url\\\": \\\"http://optional/note/url\\\",\\n \\\"updated_at\\\": \\\"2011-09-06T20:39:23Z\\\",\\n \\\"created_at\\\": \\\"2011-09-06T17:26:27Z\\\"\\n }\\n]\\n]]--\\n\\n-- Get a single authorization --\\nfunction GithubAPI.OAuth.authorizations.get(id, callback)\\n\\tGithubAPI.http_request(\\\"authorizations/\\\"..id, callback)\\nend\\n\\n--[[ Response --\\nStatus: 200 OK\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n{\\n \\\"id\\\": 1,\\n \\\"url\\\": \\\"https://api.github.com/authorizations/1\\\",\\n \\\"scopes\\\": [\\n \\\"public_repo\\\"\\n ],\\n \\\"token\\\": \\\"abc123\\\",\\n \\\"app\\\": {\\n \\\"url\\\": \\\"http://my-github-app.com\\\",\\n \\\"name\\\": \\\"my github app\\\",\\n \\\"client_id\\\": \\\"abcde12345fghij67890\\\"\\n },\\n \\\"note\\\": \\\"optional note\\\",\\n \\\"note_url\\\": \\\"http://optional/note/url\\\",\\n \\\"updated_at\\\": \\\"2011-09-06T20:39:23Z\\\",\\n \\\"created_at\\\": \\\"2011-09-06T17:26:27Z\\\"\\n}\\n]]--\\n\\n-- Create a new authorization --\\nfunction GithubAPI.OAuth.authorizations.create(callback, scopes, note, note_url, client_id, client_secret)\\n\\tGithubAPI.http_request(\\\"authorizations/\\\", callback, {\\n\\t\\tmethod = \\\"POST\\\",\\n\\t\\tdata = {\\n\\t\\t\\tscopes = scopes,\\n\\t\\t\\tnote = note,\\n\\t\\t\\tnote_url = note_url,\\n\\t\\t\\tclient_id = client_id,\\n\\t\\t\\tclient_secret = client_secret\\n\\t\\t}\\n\\t})\\nend\\n\\n--[[ Input --\\nscopes\\nOptional array - A list of scopes that this authorization is in.\\n\\nnote\\nOptional string - A note to remind you what the OAuth token is for.\\n\\nnote_url\\nOptional string - A URL to remind you what app the OAuth token is for.\\n\\nclient_id\\nOptional String - The 20 character OAuth app client key for which to create the token.\\n\\nclient_secret\\nOptional String - The 40 character OAuth app client secret for which to create the token.\\n~~~\\n{\\n \\\"scopes\\\": [\\n \\\"public_repo\\\"\\n ],\\n \\\"note\\\": \\\"admin script\\\"\\n}\\n~~~\\n]]--\\n\\n--[[ Response --\\nStatus: 201 Created\\nLocation: https://api.github.com/authorizations/1\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n{\\n \\\"id\\\": 1,\\n \\\"url\\\": \\\"https://api.github.com/authorizations/1\\\",\\n \\\"scopes\\\": [\\n \\\"public_repo\\\"\\n ],\\n \\\"token\\\": \\\"abc123\\\",\\n \\\"app\\\": {\\n \\\"url\\\": \\\"http://my-github-app.com\\\",\\n \\\"name\\\": \\\"my github app\\\",\\n \\\"client_id\\\": \\\"abcde12345fghij67890\\\"\\n },\\n \\\"note\\\": \\\"optional note\\\",\\n \\\"note_url\\\": \\\"http://optional/note/url\\\",\\n \\\"updated_at\\\": \\\"2011-09-06T20:39:23Z\\\",\\n \\\"created_at\\\": \\\"2011-09-06T17:26:27Z\\\"\\n}\\n]]--\\n\\n-- TODO\\n-- Update\\n-- Check\\n-- Delete\\n\\n--- GISTS ---\\n\\n-- List gists --\\nfunction GithubAPI.gist.list.user(user, callback)\\n\\tGithubAPI.http_request(\\\"users/\\\"..user..\\\"/gists\\\", callback)\\nend\\nfunction GithubAPI.gist.list.all(callback) -- return all public gists if called anonymously\\n\\tGithubAPI.http_request(\\\"gists\\\", callback)\\nend\\nfunction GithubAPI.gist.list.allPublic(callback)\\n\\tGithubAPI.http_request(\\\"gists/public\\\", callback)\\nend\\nfunction GithubAPI.gist.list.starred(callback)\\n\\tGithubAPI.http_request(\\\"gists/starred\\\", callback)\\nend\\n\\n--[[ Response --\\nStatus: 200 OK\\nLink: ; rel=\\\"next\\\",\\n ; rel=\\\"last\\\"\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n[\\n {\\n \\\"url\\\": \\\"https://api.github.com/gists/88a3112be74ba6ad701e\\\",\\n \\\"id\\\": \\\"1\\\",\\n \\\"description\\\": \\\"description of gist\\\",\\n \\\"public\\\": true,\\n \\\"user\\\": {\\n \\\"login\\\": \\\"octocat\\\",\\n \\\"id\\\": 1,\\n \\\"avatar_url\\\": \\\"https://github.com/images/error/octocat_happy.gif\\\",\\n \\\"gravatar_id\\\": \\\"somehexcode\\\",\\n \\\"url\\\": \\\"https://api.github.com/users/octocat\\\"\\n },\\n \\\"files\\\": {\\n \\\"ring.erl\\\": {\\n \\\"size\\\": 932,\\n \\\"filename\\\": \\\"ring.erl\\\",\\n \\\"raw_url\\\": \\\"https://gist.github.com/raw/365370/8c4d2d43d178df44f4c03a7f2ac0ff512853564e/ring.erl\\\"\\n }\\n },\\n \\\"comments\\\": 0,\\n \\\"comments_url\\\": \\\"https://api.github.com/gists/8438e99468ee9a4ab10e/comments/\\\",\\n \\\"html_url\\\": \\\"https://gist.github.com/1\\\",\\n \\\"git_pull_url\\\": \\\"git://gist.github.com/1.git\\\",\\n \\\"git_push_url\\\": \\\"git@gist.github.com:1.git\\\",\\n \\\"created_at\\\": \\\"2010-04-14T02:15:15Z\\\"\\n }\\n]\\n]]--\\n\\n-- Get a single gist --\\nfunction GithubAPI.gist.get(id, callback)\\n\\tGithubAPI.http_request(\\\"gists/\\\"..id, callback)\\nend\\n\\n--[[ Response --\\nStatus: 200 OK\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n{\\n \\\"url\\\": \\\"https://api.github.com/gists/88a3112be74ba6ad701e\\\",\\n \\\"id\\\": \\\"1\\\",\\n \\\"description\\\": \\\"description of gist\\\",\\n \\\"public\\\": true,\\n \\\"user\\\": {\\n \\\"login\\\": \\\"octocat\\\",\\n \\\"id\\\": 1,\\n \\\"avatar_url\\\": \\\"https://github.com/images/error/octocat_happy.gif\\\",\\n \\\"gravatar_id\\\": \\\"somehexcode\\\",\\n \\\"url\\\": \\\"https://api.github.com/users/octocat\\\"\\n },\\n \\\"files\\\": {\\n \\\"ring.erl\\\": {\\n \\\"size\\\": 932,\\n \\\"filename\\\": \\\"ring.erl\\\",\\n \\\"raw_url\\\": \\\"https://gist.github.com/raw/365370/8c4d2d43d178df44f4c03a7f2ac0ff512853564e/ring.erl\\\"\\n }\\n },\\n \\\"comments\\\": 0,\\n \\\"comments_url\\\": \\\"https://api.github.com/gists/8438e99468ee9a4ab10e/comments/\\\",\\n \\\"html_url\\\": \\\"https://gist.github.com/1\\\",\\n \\\"git_pull_url\\\": \\\"git://gist.github.com/1.git\\\",\\n \\\"git_push_url\\\": \\\"git@gist.github.com:1.git\\\",\\n \\\"created_at\\\": \\\"2010-04-14T02:15:15Z\\\",\\n \\\"forks\\\": [\\n {\\n \\\"user\\\": {\\n \\\"login\\\": \\\"octocat\\\",\\n \\\"id\\\": 1,\\n \\\"avatar_url\\\": \\\"https://github.com/images/error/octocat_happy.gif\\\",\\n \\\"gravatar_id\\\": \\\"somehexcode\\\",\\n \\\"url\\\": \\\"https://api.github.com/users/octocat\\\"\\n },\\n \\\"url\\\": \\\"https://api.github.com/gists/add0d71b065f55c46f60\\\",\\n \\\"created_at\\\": \\\"2011-04-14T16:00:49Z\\\"\\n }\\n ],\\n \\\"history\\\": [\\n {\\n \\\"url\\\": \\\"https://api.github.com/gists/80bdb0d081c447600e18\\\",\\n \\\"version\\\": \\\"57a7f021a713b1c5a6a199b54cc514735d2d462f\\\",\\n \\\"user\\\": {\\n \\\"login\\\": \\\"octocat\\\",\\n \\\"id\\\": 1,\\n \\\"avatar_url\\\": \\\"https://github.com/images/error/octocat_happy.gif\\\",\\n \\\"gravatar_id\\\": \\\"somehexcode\\\",\\n \\\"url\\\": \\\"https://api.github.com/users/octocat\\\"\\n },\\n \\\"change_status\\\": {\\n \\\"deletions\\\": 0,\\n \\\"additions\\\": 180,\\n \\\"total\\\": 180\\n },\\n \\\"committed_at\\\": \\\"2010-04-14T02:15:15Z\\\"\\n }\\n ]\\n}\\n]]--\\n\\n-- Create a gist --\\nfunction GithubAPI.gist.create(public, files, callback ,description)\\n\\tGithubAPI.http_request(\\\"gists/\\\"..id, callback, {\\n\\t\\tmethod = \\\"POST\\\",\\n\\t\\tdata = {\\n\\t\\t\\tpublic = public,\\n\\t\\t\\tfiles = files,\\n\\t\\t\\tdescription = description\\n\\t\\t}\\n\\t})\\nend\\n\\n--[[ Input --\\n{\\n \\\"description\\\": \\\"the description for this gist\\\",\\n \\\"public\\\": true,\\n \\\"files\\\": {\\n \\\"file1.txt\\\": {\\n \\\"content\\\": \\\"String file contents\\\"\\n }\\n }\\n}\\n]]--\\n\\n--[[ Response --\\nStatus: 201 Created\\nLocation: https://api.github.com/gists/1\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n{\\n \\\"url\\\": \\\"https://api.github.com/gists/88a3112be74ba6ad701e\\\",\\n \\\"id\\\": \\\"1\\\",\\n \\\"description\\\": \\\"description of gist\\\",\\n \\\"public\\\": true,\\n \\\"user\\\": {\\n \\\"login\\\": \\\"octocat\\\",\\n \\\"id\\\": 1,\\n \\\"avatar_url\\\": \\\"https://github.com/images/error/octocat_happy.gif\\\",\\n \\\"gravatar_id\\\": \\\"somehexcode\\\",\\n \\\"url\\\": \\\"https://api.github.com/users/octocat\\\"\\n },\\n \\\"files\\\": {\\n \\\"ring.erl\\\": {\\n \\\"size\\\": 932,\\n \\\"filename\\\": \\\"ring.erl\\\",\\n \\\"raw_url\\\": \\\"https://gist.github.com/raw/365370/8c4d2d43d178df44f4c03a7f2ac0ff512853564e/ring.erl\\\"\\n }\\n },\\n \\\"comments\\\": 0,\\n \\\"comments_url\\\": \\\"https://api.github.com/gists/8438e99468ee9a4ab10e/comments/\\\",\\n \\\"html_url\\\": \\\"https://gist.github.com/1\\\",\\n \\\"git_pull_url\\\": \\\"git://gist.github.com/1.git\\\",\\n \\\"git_push_url\\\": \\\"git@gist.github.com:1.git\\\",\\n \\\"created_at\\\": \\\"2010-04-14T02:15:15Z\\\",\\n \\\"forks\\\": [\\n {\\n \\\"user\\\": {\\n \\\"login\\\": \\\"octocat\\\",\\n \\\"id\\\": 1,\\n \\\"avatar_url\\\": \\\"https://github.com/images/error/octocat_happy.gif\\\",\\n \\\"gravatar_id\\\": \\\"somehexcode\\\",\\n \\\"url\\\": \\\"https://api.github.com/users/octocat\\\"\\n },\\n \\\"url\\\": \\\"https://api.github.com/gists/add0d71b065f55c46f60\\\",\\n \\\"created_at\\\": \\\"2011-04-14T16:00:49Z\\\"\\n }\\n ],\\n \\\"history\\\": [\\n {\\n \\\"url\\\": \\\"https://api.github.com/gists/80bdb0d081c447600e18\\\",\\n \\\"version\\\": \\\"57a7f021a713b1c5a6a199b54cc514735d2d462f\\\",\\n \\\"user\\\": {\\n \\\"login\\\": \\\"octocat\\\",\\n \\\"id\\\": 1,\\n \\\"avatar_url\\\": \\\"https://github.com/images/error/octocat_happy.gif\\\",\\n \\\"gravatar_id\\\": \\\"somehexcode\\\",\\n \\\"url\\\": \\\"https://api.github.com/users/octocat\\\"\\n },\\n \\\"change_status\\\": {\\n \\\"deletions\\\": 0,\\n \\\"additions\\\": 180,\\n \\\"total\\\": 180\\n },\\n \\\"committed_at\\\": \\\"2010-04-14T02:15:15Z\\\"\\n }\\n ]\\n}\\n]]--\\n\\n-- Edit a gist --\\nfunction GithubAPI.gist.edit(id, files, callback, description)\\n\\tGithubAPI.http_request(\\\"gists/\\\"..id, callback, {\\n\\t\\tmethod = \\\"PATCH\\\",\\n\\t\\tdata = {\\n\\t\\t\\tid = id,\\n\\t\\t\\tfiles = files,\\n\\t\\t\\tdescription = description\\n\\t\\t}\\n\\t})\\nend\\n\\n--[[ Input --\\n{\\n \\\"description\\\": \\\"the description for this gist\\\",\\n \\\"files\\\": {\\n \\\"file1.txt\\\": {\\n \\\"content\\\": \\\"updated file contents\\\"\\n },\\n \\\"old_name.txt\\\": {\\n \\\"filename\\\": \\\"new_name.txt\\\",\\n \\\"content\\\": \\\"modified contents\\\"\\n },\\n \\\"new_file.txt\\\": {\\n \\\"content\\\": \\\"a new file\\\"\\n },\\n \\\"delete_this_file.txt\\\": null\\n }\\n}\\n]]--\\n\\n--[[ Response --\\nStatus: 200 OK\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n{\\n \\\"url\\\": \\\"https://api.github.com/gists/88a3112be74ba6ad701e\\\",\\n \\\"id\\\": \\\"1\\\",\\n \\\"description\\\": \\\"description of gist\\\",\\n \\\"public\\\": true,\\n \\\"user\\\": {\\n \\\"login\\\": \\\"octocat\\\",\\n \\\"id\\\": 1,\\n \\\"avatar_url\\\": \\\"https://github.com/images/error/octocat_happy.gif\\\",\\n \\\"gravatar_id\\\": \\\"somehexcode\\\",\\n \\\"url\\\": \\\"https://api.github.com/users/octocat\\\"\\n },\\n \\\"files\\\": {\\n \\\"ring.erl\\\": {\\n \\\"size\\\": 932,\\n \\\"filename\\\": \\\"ring.erl\\\",\\n \\\"raw_url\\\": \\\"https://gist.github.com/raw/365370/8c4d2d43d178df44f4c03a7f2ac0ff512853564e/ring.erl\\\"\\n }\\n },\\n \\\"comments\\\": 0,\\n \\\"comments_url\\\": \\\"https://api.github.com/gists/8438e99468ee9a4ab10e/comments/\\\",\\n \\\"html_url\\\": \\\"https://gist.github.com/1\\\",\\n \\\"git_pull_url\\\": \\\"git://gist.github.com/1.git\\\",\\n \\\"git_push_url\\\": \\\"git@gist.github.com:1.git\\\",\\n \\\"created_at\\\": \\\"2010-04-14T02:15:15Z\\\",\\n \\\"forks\\\": [\\n {\\n \\\"user\\\": {\\n \\\"login\\\": \\\"octocat\\\",\\n \\\"id\\\": 1,\\n \\\"avatar_url\\\": \\\"https://github.com/images/error/octocat_happy.gif\\\",\\n \\\"gravatar_id\\\": \\\"somehexcode\\\",\\n \\\"url\\\": \\\"https://api.github.com/users/octocat\\\"\\n },\\n \\\"url\\\": \\\"https://api.github.com/gists/add0d71b065f55c46f60\\\",\\n \\\"created_at\\\": \\\"2011-04-14T16:00:49Z\\\"\\n }\\n ],\\n \\\"history\\\": [\\n {\\n \\\"url\\\": \\\"https://api.github.com/gists/80bdb0d081c447600e18\\\",\\n \\\"version\\\": \\\"57a7f021a713b1c5a6a199b54cc514735d2d462f\\\",\\n \\\"user\\\": {\\n \\\"login\\\": \\\"octocat\\\",\\n \\\"id\\\": 1,\\n \\\"avatar_url\\\": \\\"https://github.com/images/error/octocat_happy.gif\\\",\\n \\\"gravatar_id\\\": \\\"somehexcode\\\",\\n \\\"url\\\": \\\"https://api.github.com/users/octocat\\\"\\n },\\n \\\"change_status\\\": {\\n \\\"deletions\\\": 0,\\n \\\"additions\\\": 180,\\n \\\"total\\\": 180\\n },\\n \\\"committed_at\\\": \\\"2010-04-14T02:15:15Z\\\"\\n }\\n ]\\n}\\n]]--\\n\\n-- Star a gist --\\nfunction GithubAPI.gist.star(id, callback)\\n\\tGithubAPI.http_request(\\\"gists/\\\"..id..\\\"/star\\\", callback, {method=\\\"PUT\\\"})\\nend\\n\\n--[[ Response --\\nStatus: 204 No Content\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n]]--\\n\\n-- Unstar a gist --\\nfunction GithubAPI.gist.unstar(id, callback)\\n\\tGithubAPI.http_request(\\\"gists/\\\"..id..\\\"/star\\\", callback, {method=\\\"DELETE\\\"})\\nend\\n\\n--[[ Response --\\nStatus: 204 No Content\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n]]--\\n\\n-- Check if a gist is starred --\\nfunction GithubAPI.gist.checkStar(id, callback)\\n\\tGithubAPI.http_request(\\\"gists/\\\"..id..\\\"/star\\\", callback)\\nend\\n\\n--[[\\n-- Response if gist is starred --\\nStatus: 204 No Content\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n\\n-- Response if gist is not starred --\\nStatus: 404 Not Found\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n]]--\\n\\n-- Fork a gist --\\nfunction GithubAPI.gist.fork(id, callback)\\n\\tGithubAPI.http_request(\\\"gists/\\\"..id..\\\"/forks\\\", callback, {method=\\\"POST\\\"})\\nend\\n\\n--[[ Response --\\nStatus: 201 Created\\nLocation: https://api.github.com/gists/2\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n{\\n \\\"url\\\": \\\"https://api.github.com/gists/88a3112be74ba6ad701e\\\",\\n \\\"id\\\": \\\"1\\\",\\n \\\"description\\\": \\\"description of gist\\\",\\n \\\"public\\\": true,\\n \\\"user\\\": {\\n \\\"login\\\": \\\"octocat\\\",\\n \\\"id\\\": 1,\\n \\\"avatar_url\\\": \\\"https://github.com/images/error/octocat_happy.gif\\\",\\n \\\"gravatar_id\\\": \\\"somehexcode\\\",\\n \\\"url\\\": \\\"https://api.github.com/users/octocat\\\"\\n },\\n \\\"files\\\": {\\n \\\"ring.erl\\\": {\\n \\\"size\\\": 932,\\n \\\"filename\\\": \\\"ring.erl\\\",\\n \\\"raw_url\\\": \\\"https://gist.github.com/raw/365370/8c4d2d43d178df44f4c03a7f2ac0ff512853564e/ring.erl\\\"\\n }\\n },\\n \\\"comments\\\": 0,\\n \\\"comments_url\\\": \\\"https://api.github.com/gists/8438e99468ee9a4ab10e/comments/\\\",\\n \\\"html_url\\\": \\\"https://gist.github.com/1\\\",\\n \\\"git_pull_url\\\": \\\"git://gist.github.com/1.git\\\",\\n \\\"git_push_url\\\": \\\"git@gist.github.com:1.git\\\",\\n \\\"created_at\\\": \\\"2010-04-14T02:15:15Z\\\"\\n}\\n]]--\\n\\n-- Delete a gist --\\nfunction GithubAPI.gist.delete(id, callback)\\n\\tGithubAPI.http_request(\\\"gists/\\\"..id, callback, {method=\\\"DELETE\\\"})\\nend\\n\\n--[[ Response --\\nStatus: 204 No Content\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n]]--\\n\\n--- GISTS COMMENTS ---\\n\\n-- List comments on a gist --\\nfunction GithubAPI.gist.comment.list(gist_id, callback)\\n\\tGithubAPI.http_request(\\\"gists/..\\\"gist_id\\\"../comments\\\", callback)\\nend\\n\\n--[[ Response --\\nStatus: 200 OK\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n[\\n {\\n \\\"id\\\": 1,\\n \\\"url\\\": \\\"https://api.github.com/gists/ae709e9cf889e485e65f/comments/1\\\",\\n \\\"body\\\": \\\"Just commenting for the sake of commenting\\\",\\n \\\"user\\\": {\\n \\\"login\\\": \\\"octocat\\\",\\n \\\"id\\\": 1,\\n \\\"avatar_url\\\": \\\"https://github.com/images/error/octocat_happy.gif\\\",\\n \\\"gravatar_id\\\": \\\"somehexcode\\\",\\n \\\"url\\\": \\\"https://api.github.com/users/octocat\\\"\\n },\\n \\\"created_at\\\": \\\"2011-04-18T23:23:56Z\\\"\\n }\\n]\\n]]--\\n\\n-- Get a single comment --\\nfunction GithubAPI.gist.comment.get(gist_id, id, callback)\\n\\tGithubAPI.http_request(\\\"gists/..\\\"gist_id\\\"../comments/\\\"..id, callback)\\nend\\n\\n--[[ Response --\\nStatus: 200 OK\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n{\\n \\\"id\\\": 1,\\n \\\"url\\\": \\\"https://api.github.com/gists/ae709e9cf889e485e65f/comments/1\\\",\\n \\\"body\\\": \\\"Just commenting for the sake of commenting\\\",\\n \\\"user\\\": {\\n \\\"login\\\": \\\"octocat\\\",\\n \\\"id\\\": 1,\\n \\\"avatar_url\\\": \\\"https://github.com/images/error/octocat_happy.gif\\\",\\n \\\"gravatar_id\\\": \\\"somehexcode\\\",\\n \\\"url\\\": \\\"https://api.github.com/users/octocat\\\"\\n },\\n \\\"created_at\\\": \\\"2011-04-18T23:23:56Z\\\"\\n}\\n]]--\\n\\n-- Create a comment --\\nfunction GithubAPI.gist.comment.create(gist_id, body, callback)\\n\\tGithubAPI.http_request(\\\"gists/..\\\"gist_id\\\"../comments/\\\"..id, callback, {\\n\\t\\tmethod = \\\"POST\\\",\\n\\t\\tdata = {\\n\\t\\t\\tbody = body\\n\\t\\t}\\n\\t})\\nend\\n\\n--[[ Input --\\n{\\n \\\"body\\\": \\\"Just commenting for the sake of commenting\\\"\\n}\\n]]--\\n--[[ Response --\\nStatus: 201 Created\\nLocation: https://api.github.com/gists/comments/1\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n{\\n \\\"id\\\": 1,\\n \\\"url\\\": \\\"https://api.github.com/gists/ae709e9cf889e485e65f/comments/1\\\",\\n \\\"body\\\": \\\"Just commenting for the sake of commenting\\\",\\n \\\"user\\\": {\\n \\\"login\\\": \\\"octocat\\\",\\n \\\"id\\\": 1,\\n \\\"avatar_url\\\": \\\"https://github.com/images/error/octocat_happy.gif\\\",\\n \\\"gravatar_id\\\": \\\"somehexcode\\\",\\n \\\"url\\\": \\\"https://api.github.com/users/octocat\\\"\\n },\\n \\\"created_at\\\": \\\"2011-04-18T23:23:56Z\\\"\\n}\\n]]--\\n\\n-- Edit a comment --\\nfunction GithubAPI.gist.comment.edit(gist_id, id, body, callback)\\n\\tGithubAPI.http_request(\\\"gists/..\\\"gist_id\\\"../comments/\\\"..id, callback, {\\n\\t\\tmethod = \\\"PATCH\\\",\\n\\t\\tdata = {\\n\\t\\t\\tbody = body\\n\\t\\t}\\n\\t})\\nend\\n\\n--[[ Input --\\n{\\n \\\"body\\\": \\\"Just commenting for the sake of commenting\\\"\\n}\\n]]--\\n--[[ Response --\\nStatus: 200 OK\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n{\\n \\\"id\\\": 1,\\n \\\"url\\\": \\\"https://api.github.com/gists/ae709e9cf889e485e65f/comments/1\\\",\\n \\\"body\\\": \\\"Just commenting for the sake of commenting\\\",\\n \\\"user\\\": {\\n \\\"login\\\": \\\"octocat\\\",\\n \\\"id\\\": 1,\\n \\\"avatar_url\\\": \\\"https://github.com/images/error/octocat_happy.gif\\\",\\n \\\"gravatar_id\\\": \\\"somehexcode\\\",\\n \\\"url\\\": \\\"https://api.github.com/users/octocat\\\"\\n },\\n \\\"created_at\\\": \\\"2011-04-18T23:23:56Z\\\"\\n}\\n]]--\\n\\n-- Delete a comment --\\nfunction GithubAPI.gist.comment.delete(gist_id, id, callback)\\n\\tGithubAPI.http_request(\\\"gists/..\\\"gist_id\\\"../comments/\\\"..id, callback, {method = \\\"DELETE\\\"})\\nend\\n\\n--[[ Response --\\nStatus: 204 No Content\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n]]--\\n\\n----------------------------------------------------------------------------\\n-------------------------------- TOOLS -------------------------------------\\n----------------------------------------------------------------------------\\n\\nfunction GithubAPI.http_request(url, callback, opts, fullUrl)\\n\\topts = opts or {}\\n\\t-- if GithubAPI.token then opts.headers = TOKEN BEARER\\n\\tif opts.data then opts.data = json.encode(opts.data) end\\n\\n\\tlocal _url\\n\\tif (fullUrl) then _url = url else _url = GithubAPI.location .. url end\\n\\n\\thttp.request(_url, function(data, status, headers)\\n\\t\\tif (status == 500) then error(\\\"Github: Internal Server Error ...\\\") end\\n\\t\\tdata = json.decode(data)\\n\\t\\tcallback(data, status, headers)\\n\\tend, alert, opts)\\nend\\n\\nfunction GithubAPI.explode(div,str) -- credit: http://richard.warburton.it\\n if (div=='') then return false end\\n local pos,arr = 0,{}\\n for st,sp in function() return string.find(str,div,pos,true) end do\\n table.insert(arr,string.sub(str,pos,st-1))\\n pos = sp + 1\\n end\\n table.insert(arr,string.sub(str,pos))\\n return arr\\nend\\n\\n-- GITHUB TIMESTAMP (YYYY-MM-DDTHH:MM:SSZ) to os.time\\nfunction GithubAPI.gtimestamp(githubTime)\\n\\tgithubTime = githubTime:sub(1, #githubTime-1) -- remove Z\\n\\tgithubTime = GithubAPI.explode(\\\"T\\\", githubTime)\\n\\tgithubTime[1] = GithubAPI.explode(\\\"-\\\", githubTime[1])\\n\\tgithubTime[2] = GithubAPI.explode(\\\":\\\", githubTime[2])\\n\\treturn os.time({\\n\\t\\tyear = tonumber(githubTime[1][1]),\\n\\t\\tmonth = tonumber(githubTime[1][2]),\\n\\t\\tday = tonumber(githubTime[1][3]),\\n\\t\\thour = tonumber(githubTime[2][1]),\\n\\t\\tmin = tonumber(githubTime[2][2]),\\n\\t\\tsec = tonumber(githubTime[2][3])\\n\\t})\\nend\"}},\"public\":true,\"created_at\":\"2013-08-21T16:12:27Z\",\"updated_at\":\"2013-08-21T16:26:50Z\",\"description\":\"Github API\",\"comments\":0,\"user\":{\"login\":\"HyroVitalyProtago\",\"id\":3470988,\"avatar_url\":\"https://2.gravatar.com/avatar/ed59562b231a649345f38703948f76f4?d=https%3A%2F%2Fidenticons.github.com%2F6582cb986b7a730b12f7c18dfcc865f0.png\",\"gravatar_id\":\"ed59562b231a649345f38703948f76f4\",\"url\":\"https://api.github.com/users/HyroVitalyProtago\",\"html_url\":\"https://github.com/HyroVitalyProtago\",\"followers_url\":\"https://api.github.com/users/HyroVitalyProtago/followers\",\"following_url\":\"https://api.github.com/users/HyroVitalyProtago/following{/other_user}\",\"gists_url\":\"https://api.github.com/users/HyroVitalyProtago/gists{/gist_id}\",\"starred_url\":\"https://api.github.com/users/HyroVitalyProtago/starred{/owner}{/repo}\",\"subscriptions_url\":\"https://api.github.com/users/HyroVitalyProtago/subscriptions\",\"organizations_url\":\"https://api.github.com/users/HyroVitalyProtago/orgs\",\"repos_url\":\"https://api.github.com/users/HyroVitalyProtago/repos\",\"events_url\":\"https://api.github.com/users/HyroVitalyProtago/events{/privacy}\",\"received_events_url\":\"https://api.github.com/users/HyroVitalyProtago/received_events\",\"type\":\"User\"},\"comments_url\":\"https://api.github.com/gists/6296553/comments\",\"forks\":[],\"history\":[{\"user\":null,\"version\":\"c464aecd7fea16684e935607eeea7ae4f8caa0e2\",\"committed_at\":\"2013-08-21T16:12:27Z\",\"change_status\":{\"total\":793,\"additions\":793,\"deletions\":0},\"url\":\"https://api.github.com/gists/6296553/c464aecd7fea16684e935607eeea7ae4f8caa0e2\"}]}\n \n https\n POST\n api.github.com\n None\n-/gists/2729818/fork\n+/gists/6296553/forks\n {'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'}\n null\n 201\n-[('status', '201 Created'), ('x-ratelimit-remaining', '4969'), ('content-length', '873'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"502531cd2afdff81b572c8565b17f601\"'), ('date', 'Sat, 19 May 2012 07:25:30 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/gists/2729865')]\n-{\"updated_at\":\"2012-05-19T07:25:30Z\",\"url\":\"https://api.github.com/gists/2729865\",\"comments\":0,\"public\":true,\"git_pull_url\":\"git://gist.github.com/2729865.git\",\"files\":{\"ror.markdown\":{\"raw_url\":\"https://gist.github.com/raw/2729865/1284e70f4c16550ef32a26aa4f5f0c78edaa7008/ror.markdown\",\"type\":\"text/plain\",\"size\":1076,\"filename\":\"ror.markdown\",\"language\":\"Markdown\"}},\"html_url\":\"https://gist.github.com/2729865\",\"user\":{\"url\":\"https://api.github.com/users/jacquev6\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\",\"login\":\"jacquev6\",\"id\":327146},\"description\":\"RoR setup in AWS EC2(Ubuntu 12.04 LTS)\",\"created_at\":\"2012-05-19T07:25:30Z\",\"git_push_url\":\"git@gist.github.com:2729865.git\",\"id\":\"2729865\"}\n+[('status', '201 Created'), ('x-ratelimit-remaining', '4965'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('cache-control', 'max-age=0, private, must-revalidate'), ('content-length', '1510'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('location', 'https://api.github.com/gists/6296732'), ('access-control-allow-credentials', 'true'), ('date', 'Wed, 21 Aug 2013 16:28:24 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('etag', '\"ceb086d4f395719d1124cade5cedbfd4\"'), ('x-ratelimit-reset', '1377104997')]\n+{\"url\":\"https://api.github.com/gists/6296732\",\"forks_url\":\"https://api.github.com/gists/6296732/forks\",\"commits_url\":\"https://api.github.com/gists/6296732/commits\",\"id\":\"6296732\",\"git_pull_url\":\"https://gist.github.com/6296732.git\",\"git_push_url\":\"https://gist.github.com/6296732.git\",\"html_url\":\"https://gist.github.com/6296732\",\"files\":{},\"public\":true,\"created_at\":\"2013-08-21T16:28:24Z\",\"updated_at\":\"2013-08-21T16:28:24Z\",\"description\":\"Github API\",\"comments\":0,\"user\":{\"login\":\"jacquev6\",\"id\":327146,\"avatar_url\":\"https://1.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"url\":\"https://api.github.com/users/jacquev6\",\"html_url\":\"https://github.com/jacquev6\",\"followers_url\":\"https://api.github.com/users/jacquev6/followers\",\"following_url\":\"https://api.github.com/users/jacquev6/following{/other_user}\",\"gists_url\":\"https://api.github.com/users/jacquev6/gists{/gist_id}\",\"starred_url\":\"https://api.github.com/users/jacquev6/starred{/owner}{/repo}\",\"subscriptions_url\":\"https://api.github.com/users/jacquev6/subscriptions\",\"organizations_url\":\"https://api.github.com/users/jacquev6/orgs\",\"repos_url\":\"https://api.github.com/users/jacquev6/repos\",\"events_url\":\"https://api.github.com/users/jacquev6/events{/privacy}\",\"received_events_url\":\"https://api.github.com/users/jacquev6/received_events\",\"type\":\"User\"},\"comments_url\":\"https://api.github.com/gists/6296732/comments\"}\n \n https\n GET\n api.github.com\n None\n-/gists/2729865\n+/gists/6296732\n {'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'}\n null\n 200\n-[('status', '200 OK'), ('x-ratelimit-remaining', '4966'), ('content-length', '3460'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"e829012f18db493a69740de762186eb5\"'), ('date', 'Sat, 19 May 2012 07:26:54 GMT'), ('content-type', 'application/json; charset=utf-8')]\n-{\"user\":{\"url\":\"https://api.github.com/users/jacquev6\",\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"login\":\"jacquev6\",\"id\":327146},\"description\":\"RoR setup in AWS EC2(Ubuntu 12.04 LTS)\",\"comments\":0,\"updated_at\":\"2012-05-19T07:25:30Z\",\"public\":true,\"git_pull_url\":\"git://gist.github.com/2729865.git\",\"history\":[{\"user\":{\"url\":\"https://api.github.com/users/Kechol\",\"avatar_url\":\"https://secure.gravatar.com/avatar/f2a6400b393749ccd9ad3f24d4995f77?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\",\"gravatar_id\":\"f2a6400b393749ccd9ad3f24d4995f77\",\"login\":\"Kechol\",\"id\":625489},\"change_status\":{\"total\":57,\"deletions\":0,\"additions\":57},\"committed_at\":\"2012-05-19T07:06:08Z\",\"version\":\"a655d19a12233e5e5615deb714eae95c433eed57\",\"url\":\"https://api.github.com/gists/2729865/a655d19a12233e5e5615deb714eae95c433eed57\"}],\"git_push_url\":\"git@gist.github.com:2729865.git\",\"url\":\"https://api.github.com/gists/2729865\",\"fork_of\":{\"user\":{\"url\":\"https://api.github.com/users/Kechol\",\"avatar_url\":\"https://secure.gravatar.com/avatar/f2a6400b393749ccd9ad3f24d4995f77?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\",\"gravatar_id\":\"f2a6400b393749ccd9ad3f24d4995f77\",\"login\":\"Kechol\",\"id\":625489},\"description\":\"RoR setup in AWS EC2(Ubuntu 12.04 LTS)\",\"comments\":0,\"updated_at\":\"2012-05-19T07:06:08Z\",\"public\":true,\"git_pull_url\":\"git://gist.github.com/2729818.git\",\"git_push_url\":\"git@gist.github.com:2729818.git\",\"url\":\"https://api.github.com/gists/2729818\",\"html_url\":\"https://gist.github.com/2729818\",\"id\":\"2729818\",\"created_at\":\"2012-05-19T07:06:08Z\",\"files\":{\"ror.markdown\":{\"type\":\"text/plain\",\"size\":1076,\"filename\":\"ror.markdown\",\"raw_url\":\"https://gist.github.com/raw/2729818/1284e70f4c16550ef32a26aa4f5f0c78edaa7008/ror.markdown\",\"language\":\"Markdown\"}}},\"html_url\":\"https://gist.github.com/2729865\",\"id\":\"2729865\",\"forks\":[],\"created_at\":\"2012-05-19T07:25:30Z\",\"files\":{\"ror.markdown\":{\"content\":\"## create user\\n\\nsudo useradd -m username\\nvisudo\\n\\n## delete default user\\n\\nsudo userdel ubuntu\\nsudo rm -Rf ubuntu\\n\\n## setup ssh\\n\\nmkdir ~/.ssh\\nvi /etc/ssh/authorized_keys\\nsudo vi /etc/ssh/sshd_config\\n\\n\\n## install packages\\n\\nsudo apt-get update\\n\\nsudo apt-get install sysv-rc-init git-core apache2-utils wget vim\\nsudo apt-get install mysql-client mysql-server libmysqld-dev\\nsudo apt-get install g++ openssl zlib1g readline-common libyaml-dev libssl-dev zlib1g-dev libxml2-dev libxslt1-dev libjson0-dev libgcc1 libreadline-dev\\n\\n\\n## install nginx\\n\\nwget http://nginx.org/keys/nginx_signing.key\\nsudo apt-key add nginx_signing.key\\n\\n### add /etc/sources.list\\n> \\\"deb http://nginx.org/packages/ubuntu/ lucid nginx\\ndeb-src http://nginx.org/packages/ubuntu/ lucid nginx\\\"\\n\\napt-get update\\napt-get install nginx\\n\\n\\n## setup system\\n\\nsudo sysv-rc-init\\n\\n\\n## install ruby\\n\\ncd /usr/local/src\\nsudo wget ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p194.tar.gz\\nsudo tar zxvf ruby-1.9.3-p194.tar.gz\\ncd ruby-1.9.3-p194\\nsudo ./configure\\nsudo make && make install\\n\\n\\n## install RoR\\n\\nsudo gem install rails\",\"type\":\"text/plain\",\"size\":1076,\"filename\":\"ror.markdown\",\"raw_url\":\"https://gist.github.com/raw/2729865/1284e70f4c16550ef32a26aa4f5f0c78edaa7008/ror.markdown\",\"language\":\"Markdown\"}}}\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4964'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '26806'), ('server', 'GitHub.com'), ('last-modified', 'Wed, 21 Aug 2013 16:28:24 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '\"f2916c23435522156274bed022a322e7\"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 21 Aug 2013 16:28:25 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1377104997')]\n+{\"url\":\"https://api.github.com/gists/6296732\",\"forks_url\":\"https://api.github.com/gists/6296732/forks\",\"commits_url\":\"https://api.github.com/gists/6296732/commits\",\"id\":\"6296732\",\"git_pull_url\":\"https://gist.github.com/6296732.git\",\"git_push_url\":\"https://gist.github.com/6296732.git\",\"html_url\":\"https://gist.github.com/6296732\",\"files\":{\"GithubAPI.lua\":{\"filename\":\"GithubAPI.lua\",\"type\":\"text/plain\",\"language\":\"Lua\",\"raw_url\":\"https://gist.github.com/raw/6296732/88aafa25fb28e17013054a117354a37f0d78963c/GithubAPI.lua\",\"size\":21229,\"content\":\"-- GithubAPI\\n-- @Author : Hyro Vitaly Protago\\n-- @Version : 1.0.0\\n\\n--[[\\n\\nINFOS :\\n - Cannot delete an anonymous gist\\n]]--\\n\\nGithubAPI = {\\n\\tlocation = \\\"https://api.github.com/\\\",\\n\\ttoken = nil,\\n\\tOAuth = {\\n\\t\\tauthorizations = {}\\n\\t},\\n\\tgist = {\\n\\t\\tlist = {},\\n\\t\\tcomment = {}\\n\\t},\\n\\tgithub = {}\\n}\\n\\n----------------------------------------------------------------------------\\n------------------------------ Github API ----------------------------------\\n----------------------------------------------------------------------------\\n\\n--- Authentication ---\\n\\n--[[ Scopes --\\n\\nScopes let you specify exactly what type of access you need. Scopes limit access for OAuth tokens.\\nThey do not grant any additional permission beyond that which the user already has.\\n\\nFor the web flow, requested scopes will be displayed to the user on the authorize form.\\n\\nCheck headers to see what OAuth scopes you have, and what the API action accepts.\\n\\n~~~\\n$ curl -H \\\"Authorization: token OAUTH-TOKEN\\\" https://api.github.com/users/technoweenie -I\\nHTTP/1.1 200 OK\\nX-OAuth-Scopes: repo, user\\nX-Accepted-OAuth-Scopes: user\\nX-OAuth-Scopes lists the scopes your token has authorized. X-Accepted-OAuth-Scopes lists the scopes that the action checks for.\\n~~~\\n\\n- (no scope)\\npublic read-only access (includes public user profile info, public repo info, and gists).\\n- user\\nRead/write access to profile info only. Note: this scope includes user:email and user:follow.\\n- user:email\\nRead access to a user’s email addresses.\\n- user:follow\\nAccess to follow or unfollow other users.\\n- public_repo\\nRead/write access to public repos and organizations.\\n- repo\\nRead/write access to public and private repos and organizations.\\n- repo:status\\nRead/write access to public and private repository commit statuses.\\nThis scope is only necessary to grant other users or services access to private repository commit statuses without granting access to the code.\\nThe repo and public_repo scopes already include access to commit status for private and public repositories respectively.\\n- delete_repo\\nDelete access to adminable repositories.\\n- notifications\\nRead access to a user’s notifications. repo is accepted too.\\n- gist\\nWrite access to gists.\\n\\nNOTE: Your application can request the scopes in the initial redirection. You can specify multiple scopes by separating them by a comma.\\n~~~\\nhttps://github.com/login/oauth/authorize?\\n client_id=...&\\n scope=user,public_repo\\n~~~\\n]]--\\n\\n-- Redirect users to request GitHub access --\\nfunction GithubAPI.OAuth.getToken(client_id, scope, callback)\\n\\tGithubAPI.http_request(\\\"https://github.com/login/oauth/authorize?client_id=\\\"..client_id..\\\"&scope=\\\"..scope, function(data, status, headers)\\n\\t\\tGithubAPI.OAuth._getToken(client_id, client_secret, data, callback)\\n\\tend, nil, true)\\nend\\n-- GitHub redirects back to your site --\\nfunction GithubAPI.OAuth._getToken(client_id, client_secret, code, callback)\\n\\tGithubAPI.http_request(\\\"https://github.com/login/oauth/access_token\\\", callback, {\\n\\t\\tmethod = \\\"POST\\\",\\n\\t\\tdata = {\\n\\t\\t\\tclient_id = client_id,\\n\\t\\t\\tclient_secret = client_secret,\\n\\t\\t\\tcode = code\\n\\t\\t}\\n\\t}, true)\\nend\\n\\n-- List your authorizations --\\nfunction GithubAPI.OAuth.authorizations.list(callback)\\n\\tGithubAPI.http_request(\\\"authorizations\\\", callback)\\nend\\n\\n--[[ Response --\\nStatus: 200 OK\\nLink: ; rel=\\\"next\\\",\\n ; rel=\\\"last\\\"\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n[\\n {\\n \\\"id\\\": 1,\\n \\\"url\\\": \\\"https://api.github.com/authorizations/1\\\",\\n \\\"scopes\\\": [\\n \\\"public_repo\\\"\\n ],\\n \\\"token\\\": \\\"abc123\\\",\\n \\\"app\\\": {\\n \\\"url\\\": \\\"http://my-github-app.com\\\",\\n \\\"name\\\": \\\"my github app\\\",\\n \\\"client_id\\\": \\\"abcde12345fghij67890\\\"\\n },\\n \\\"note\\\": \\\"optional note\\\",\\n \\\"note_url\\\": \\\"http://optional/note/url\\\",\\n \\\"updated_at\\\": \\\"2011-09-06T20:39:23Z\\\",\\n \\\"created_at\\\": \\\"2011-09-06T17:26:27Z\\\"\\n }\\n]\\n]]--\\n\\n-- Get a single authorization --\\nfunction GithubAPI.OAuth.authorizations.get(id, callback)\\n\\tGithubAPI.http_request(\\\"authorizations/\\\"..id, callback)\\nend\\n\\n--[[ Response --\\nStatus: 200 OK\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n{\\n \\\"id\\\": 1,\\n \\\"url\\\": \\\"https://api.github.com/authorizations/1\\\",\\n \\\"scopes\\\": [\\n \\\"public_repo\\\"\\n ],\\n \\\"token\\\": \\\"abc123\\\",\\n \\\"app\\\": {\\n \\\"url\\\": \\\"http://my-github-app.com\\\",\\n \\\"name\\\": \\\"my github app\\\",\\n \\\"client_id\\\": \\\"abcde12345fghij67890\\\"\\n },\\n \\\"note\\\": \\\"optional note\\\",\\n \\\"note_url\\\": \\\"http://optional/note/url\\\",\\n \\\"updated_at\\\": \\\"2011-09-06T20:39:23Z\\\",\\n \\\"created_at\\\": \\\"2011-09-06T17:26:27Z\\\"\\n}\\n]]--\\n\\n-- Create a new authorization --\\nfunction GithubAPI.OAuth.authorizations.create(callback, scopes, note, note_url, client_id, client_secret)\\n\\tGithubAPI.http_request(\\\"authorizations/\\\", callback, {\\n\\t\\tmethod = \\\"POST\\\",\\n\\t\\tdata = {\\n\\t\\t\\tscopes = scopes,\\n\\t\\t\\tnote = note,\\n\\t\\t\\tnote_url = note_url,\\n\\t\\t\\tclient_id = client_id,\\n\\t\\t\\tclient_secret = client_secret\\n\\t\\t}\\n\\t})\\nend\\n\\n--[[ Input --\\nscopes\\nOptional array - A list of scopes that this authorization is in.\\n\\nnote\\nOptional string - A note to remind you what the OAuth token is for.\\n\\nnote_url\\nOptional string - A URL to remind you what app the OAuth token is for.\\n\\nclient_id\\nOptional String - The 20 character OAuth app client key for which to create the token.\\n\\nclient_secret\\nOptional String - The 40 character OAuth app client secret for which to create the token.\\n~~~\\n{\\n \\\"scopes\\\": [\\n \\\"public_repo\\\"\\n ],\\n \\\"note\\\": \\\"admin script\\\"\\n}\\n~~~\\n]]--\\n\\n--[[ Response --\\nStatus: 201 Created\\nLocation: https://api.github.com/authorizations/1\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n{\\n \\\"id\\\": 1,\\n \\\"url\\\": \\\"https://api.github.com/authorizations/1\\\",\\n \\\"scopes\\\": [\\n \\\"public_repo\\\"\\n ],\\n \\\"token\\\": \\\"abc123\\\",\\n \\\"app\\\": {\\n \\\"url\\\": \\\"http://my-github-app.com\\\",\\n \\\"name\\\": \\\"my github app\\\",\\n \\\"client_id\\\": \\\"abcde12345fghij67890\\\"\\n },\\n \\\"note\\\": \\\"optional note\\\",\\n \\\"note_url\\\": \\\"http://optional/note/url\\\",\\n \\\"updated_at\\\": \\\"2011-09-06T20:39:23Z\\\",\\n \\\"created_at\\\": \\\"2011-09-06T17:26:27Z\\\"\\n}\\n]]--\\n\\n-- TODO\\n-- Update\\n-- Check\\n-- Delete\\n\\n--- GISTS ---\\n\\n-- List gists --\\nfunction GithubAPI.gist.list.user(user, callback)\\n\\tGithubAPI.http_request(\\\"users/\\\"..user..\\\"/gists\\\", callback)\\nend\\nfunction GithubAPI.gist.list.all(callback) -- return all public gists if called anonymously\\n\\tGithubAPI.http_request(\\\"gists\\\", callback)\\nend\\nfunction GithubAPI.gist.list.allPublic(callback)\\n\\tGithubAPI.http_request(\\\"gists/public\\\", callback)\\nend\\nfunction GithubAPI.gist.list.starred(callback)\\n\\tGithubAPI.http_request(\\\"gists/starred\\\", callback)\\nend\\n\\n--[[ Response --\\nStatus: 200 OK\\nLink: ; rel=\\\"next\\\",\\n ; rel=\\\"last\\\"\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n[\\n {\\n \\\"url\\\": \\\"https://api.github.com/gists/88a3112be74ba6ad701e\\\",\\n \\\"id\\\": \\\"1\\\",\\n \\\"description\\\": \\\"description of gist\\\",\\n \\\"public\\\": true,\\n \\\"user\\\": {\\n \\\"login\\\": \\\"octocat\\\",\\n \\\"id\\\": 1,\\n \\\"avatar_url\\\": \\\"https://github.com/images/error/octocat_happy.gif\\\",\\n \\\"gravatar_id\\\": \\\"somehexcode\\\",\\n \\\"url\\\": \\\"https://api.github.com/users/octocat\\\"\\n },\\n \\\"files\\\": {\\n \\\"ring.erl\\\": {\\n \\\"size\\\": 932,\\n \\\"filename\\\": \\\"ring.erl\\\",\\n \\\"raw_url\\\": \\\"https://gist.github.com/raw/365370/8c4d2d43d178df44f4c03a7f2ac0ff512853564e/ring.erl\\\"\\n }\\n },\\n \\\"comments\\\": 0,\\n \\\"comments_url\\\": \\\"https://api.github.com/gists/8438e99468ee9a4ab10e/comments/\\\",\\n \\\"html_url\\\": \\\"https://gist.github.com/1\\\",\\n \\\"git_pull_url\\\": \\\"git://gist.github.com/1.git\\\",\\n \\\"git_push_url\\\": \\\"git@gist.github.com:1.git\\\",\\n \\\"created_at\\\": \\\"2010-04-14T02:15:15Z\\\"\\n }\\n]\\n]]--\\n\\n-- Get a single gist --\\nfunction GithubAPI.gist.get(id, callback)\\n\\tGithubAPI.http_request(\\\"gists/\\\"..id, callback)\\nend\\n\\n--[[ Response --\\nStatus: 200 OK\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n{\\n \\\"url\\\": \\\"https://api.github.com/gists/88a3112be74ba6ad701e\\\",\\n \\\"id\\\": \\\"1\\\",\\n \\\"description\\\": \\\"description of gist\\\",\\n \\\"public\\\": true,\\n \\\"user\\\": {\\n \\\"login\\\": \\\"octocat\\\",\\n \\\"id\\\": 1,\\n \\\"avatar_url\\\": \\\"https://github.com/images/error/octocat_happy.gif\\\",\\n \\\"gravatar_id\\\": \\\"somehexcode\\\",\\n \\\"url\\\": \\\"https://api.github.com/users/octocat\\\"\\n },\\n \\\"files\\\": {\\n \\\"ring.erl\\\": {\\n \\\"size\\\": 932,\\n \\\"filename\\\": \\\"ring.erl\\\",\\n \\\"raw_url\\\": \\\"https://gist.github.com/raw/365370/8c4d2d43d178df44f4c03a7f2ac0ff512853564e/ring.erl\\\"\\n }\\n },\\n \\\"comments\\\": 0,\\n \\\"comments_url\\\": \\\"https://api.github.com/gists/8438e99468ee9a4ab10e/comments/\\\",\\n \\\"html_url\\\": \\\"https://gist.github.com/1\\\",\\n \\\"git_pull_url\\\": \\\"git://gist.github.com/1.git\\\",\\n \\\"git_push_url\\\": \\\"git@gist.github.com:1.git\\\",\\n \\\"created_at\\\": \\\"2010-04-14T02:15:15Z\\\",\\n \\\"forks\\\": [\\n {\\n \\\"user\\\": {\\n \\\"login\\\": \\\"octocat\\\",\\n \\\"id\\\": 1,\\n \\\"avatar_url\\\": \\\"https://github.com/images/error/octocat_happy.gif\\\",\\n \\\"gravatar_id\\\": \\\"somehexcode\\\",\\n \\\"url\\\": \\\"https://api.github.com/users/octocat\\\"\\n },\\n \\\"url\\\": \\\"https://api.github.com/gists/add0d71b065f55c46f60\\\",\\n \\\"created_at\\\": \\\"2011-04-14T16:00:49Z\\\"\\n }\\n ],\\n \\\"history\\\": [\\n {\\n \\\"url\\\": \\\"https://api.github.com/gists/80bdb0d081c447600e18\\\",\\n \\\"version\\\": \\\"57a7f021a713b1c5a6a199b54cc514735d2d462f\\\",\\n \\\"user\\\": {\\n \\\"login\\\": \\\"octocat\\\",\\n \\\"id\\\": 1,\\n \\\"avatar_url\\\": \\\"https://github.com/images/error/octocat_happy.gif\\\",\\n \\\"gravatar_id\\\": \\\"somehexcode\\\",\\n \\\"url\\\": \\\"https://api.github.com/users/octocat\\\"\\n },\\n \\\"change_status\\\": {\\n \\\"deletions\\\": 0,\\n \\\"additions\\\": 180,\\n \\\"total\\\": 180\\n },\\n \\\"committed_at\\\": \\\"2010-04-14T02:15:15Z\\\"\\n }\\n ]\\n}\\n]]--\\n\\n-- Create a gist --\\nfunction GithubAPI.gist.create(public, files, callback ,description)\\n\\tGithubAPI.http_request(\\\"gists/\\\"..id, callback, {\\n\\t\\tmethod = \\\"POST\\\",\\n\\t\\tdata = {\\n\\t\\t\\tpublic = public,\\n\\t\\t\\tfiles = files,\\n\\t\\t\\tdescription = description\\n\\t\\t}\\n\\t})\\nend\\n\\n--[[ Input --\\n{\\n \\\"description\\\": \\\"the description for this gist\\\",\\n \\\"public\\\": true,\\n \\\"files\\\": {\\n \\\"file1.txt\\\": {\\n \\\"content\\\": \\\"String file contents\\\"\\n }\\n }\\n}\\n]]--\\n\\n--[[ Response --\\nStatus: 201 Created\\nLocation: https://api.github.com/gists/1\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n{\\n \\\"url\\\": \\\"https://api.github.com/gists/88a3112be74ba6ad701e\\\",\\n \\\"id\\\": \\\"1\\\",\\n \\\"description\\\": \\\"description of gist\\\",\\n \\\"public\\\": true,\\n \\\"user\\\": {\\n \\\"login\\\": \\\"octocat\\\",\\n \\\"id\\\": 1,\\n \\\"avatar_url\\\": \\\"https://github.com/images/error/octocat_happy.gif\\\",\\n \\\"gravatar_id\\\": \\\"somehexcode\\\",\\n \\\"url\\\": \\\"https://api.github.com/users/octocat\\\"\\n },\\n \\\"files\\\": {\\n \\\"ring.erl\\\": {\\n \\\"size\\\": 932,\\n \\\"filename\\\": \\\"ring.erl\\\",\\n \\\"raw_url\\\": \\\"https://gist.github.com/raw/365370/8c4d2d43d178df44f4c03a7f2ac0ff512853564e/ring.erl\\\"\\n }\\n },\\n \\\"comments\\\": 0,\\n \\\"comments_url\\\": \\\"https://api.github.com/gists/8438e99468ee9a4ab10e/comments/\\\",\\n \\\"html_url\\\": \\\"https://gist.github.com/1\\\",\\n \\\"git_pull_url\\\": \\\"git://gist.github.com/1.git\\\",\\n \\\"git_push_url\\\": \\\"git@gist.github.com:1.git\\\",\\n \\\"created_at\\\": \\\"2010-04-14T02:15:15Z\\\",\\n \\\"forks\\\": [\\n {\\n \\\"user\\\": {\\n \\\"login\\\": \\\"octocat\\\",\\n \\\"id\\\": 1,\\n \\\"avatar_url\\\": \\\"https://github.com/images/error/octocat_happy.gif\\\",\\n \\\"gravatar_id\\\": \\\"somehexcode\\\",\\n \\\"url\\\": \\\"https://api.github.com/users/octocat\\\"\\n },\\n \\\"url\\\": \\\"https://api.github.com/gists/add0d71b065f55c46f60\\\",\\n \\\"created_at\\\": \\\"2011-04-14T16:00:49Z\\\"\\n }\\n ],\\n \\\"history\\\": [\\n {\\n \\\"url\\\": \\\"https://api.github.com/gists/80bdb0d081c447600e18\\\",\\n \\\"version\\\": \\\"57a7f021a713b1c5a6a199b54cc514735d2d462f\\\",\\n \\\"user\\\": {\\n \\\"login\\\": \\\"octocat\\\",\\n \\\"id\\\": 1,\\n \\\"avatar_url\\\": \\\"https://github.com/images/error/octocat_happy.gif\\\",\\n \\\"gravatar_id\\\": \\\"somehexcode\\\",\\n \\\"url\\\": \\\"https://api.github.com/users/octocat\\\"\\n },\\n \\\"change_status\\\": {\\n \\\"deletions\\\": 0,\\n \\\"additions\\\": 180,\\n \\\"total\\\": 180\\n },\\n \\\"committed_at\\\": \\\"2010-04-14T02:15:15Z\\\"\\n }\\n ]\\n}\\n]]--\\n\\n-- Edit a gist --\\nfunction GithubAPI.gist.edit(id, files, callback, description)\\n\\tGithubAPI.http_request(\\\"gists/\\\"..id, callback, {\\n\\t\\tmethod = \\\"PATCH\\\",\\n\\t\\tdata = {\\n\\t\\t\\tid = id,\\n\\t\\t\\tfiles = files,\\n\\t\\t\\tdescription = description\\n\\t\\t}\\n\\t})\\nend\\n\\n--[[ Input --\\n{\\n \\\"description\\\": \\\"the description for this gist\\\",\\n \\\"files\\\": {\\n \\\"file1.txt\\\": {\\n \\\"content\\\": \\\"updated file contents\\\"\\n },\\n \\\"old_name.txt\\\": {\\n \\\"filename\\\": \\\"new_name.txt\\\",\\n \\\"content\\\": \\\"modified contents\\\"\\n },\\n \\\"new_file.txt\\\": {\\n \\\"content\\\": \\\"a new file\\\"\\n },\\n \\\"delete_this_file.txt\\\": null\\n }\\n}\\n]]--\\n\\n--[[ Response --\\nStatus: 200 OK\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n{\\n \\\"url\\\": \\\"https://api.github.com/gists/88a3112be74ba6ad701e\\\",\\n \\\"id\\\": \\\"1\\\",\\n \\\"description\\\": \\\"description of gist\\\",\\n \\\"public\\\": true,\\n \\\"user\\\": {\\n \\\"login\\\": \\\"octocat\\\",\\n \\\"id\\\": 1,\\n \\\"avatar_url\\\": \\\"https://github.com/images/error/octocat_happy.gif\\\",\\n \\\"gravatar_id\\\": \\\"somehexcode\\\",\\n \\\"url\\\": \\\"https://api.github.com/users/octocat\\\"\\n },\\n \\\"files\\\": {\\n \\\"ring.erl\\\": {\\n \\\"size\\\": 932,\\n \\\"filename\\\": \\\"ring.erl\\\",\\n \\\"raw_url\\\": \\\"https://gist.github.com/raw/365370/8c4d2d43d178df44f4c03a7f2ac0ff512853564e/ring.erl\\\"\\n }\\n },\\n \\\"comments\\\": 0,\\n \\\"comments_url\\\": \\\"https://api.github.com/gists/8438e99468ee9a4ab10e/comments/\\\",\\n \\\"html_url\\\": \\\"https://gist.github.com/1\\\",\\n \\\"git_pull_url\\\": \\\"git://gist.github.com/1.git\\\",\\n \\\"git_push_url\\\": \\\"git@gist.github.com:1.git\\\",\\n \\\"created_at\\\": \\\"2010-04-14T02:15:15Z\\\",\\n \\\"forks\\\": [\\n {\\n \\\"user\\\": {\\n \\\"login\\\": \\\"octocat\\\",\\n \\\"id\\\": 1,\\n \\\"avatar_url\\\": \\\"https://github.com/images/error/octocat_happy.gif\\\",\\n \\\"gravatar_id\\\": \\\"somehexcode\\\",\\n \\\"url\\\": \\\"https://api.github.com/users/octocat\\\"\\n },\\n \\\"url\\\": \\\"https://api.github.com/gists/add0d71b065f55c46f60\\\",\\n \\\"created_at\\\": \\\"2011-04-14T16:00:49Z\\\"\\n }\\n ],\\n \\\"history\\\": [\\n {\\n \\\"url\\\": \\\"https://api.github.com/gists/80bdb0d081c447600e18\\\",\\n \\\"version\\\": \\\"57a7f021a713b1c5a6a199b54cc514735d2d462f\\\",\\n \\\"user\\\": {\\n \\\"login\\\": \\\"octocat\\\",\\n \\\"id\\\": 1,\\n \\\"avatar_url\\\": \\\"https://github.com/images/error/octocat_happy.gif\\\",\\n \\\"gravatar_id\\\": \\\"somehexcode\\\",\\n \\\"url\\\": \\\"https://api.github.com/users/octocat\\\"\\n },\\n \\\"change_status\\\": {\\n \\\"deletions\\\": 0,\\n \\\"additions\\\": 180,\\n \\\"total\\\": 180\\n },\\n \\\"committed_at\\\": \\\"2010-04-14T02:15:15Z\\\"\\n }\\n ]\\n}\\n]]--\\n\\n-- Star a gist --\\nfunction GithubAPI.gist.star(id, callback)\\n\\tGithubAPI.http_request(\\\"gists/\\\"..id..\\\"/star\\\", callback, {method=\\\"PUT\\\"})\\nend\\n\\n--[[ Response --\\nStatus: 204 No Content\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n]]--\\n\\n-- Unstar a gist --\\nfunction GithubAPI.gist.unstar(id, callback)\\n\\tGithubAPI.http_request(\\\"gists/\\\"..id..\\\"/star\\\", callback, {method=\\\"DELETE\\\"})\\nend\\n\\n--[[ Response --\\nStatus: 204 No Content\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n]]--\\n\\n-- Check if a gist is starred --\\nfunction GithubAPI.gist.checkStar(id, callback)\\n\\tGithubAPI.http_request(\\\"gists/\\\"..id..\\\"/star\\\", callback)\\nend\\n\\n--[[\\n-- Response if gist is starred --\\nStatus: 204 No Content\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n\\n-- Response if gist is not starred --\\nStatus: 404 Not Found\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n]]--\\n\\n-- Fork a gist --\\nfunction GithubAPI.gist.fork(id, callback)\\n\\tGithubAPI.http_request(\\\"gists/\\\"..id..\\\"/forks\\\", callback, {method=\\\"POST\\\"})\\nend\\n\\n--[[ Response --\\nStatus: 201 Created\\nLocation: https://api.github.com/gists/2\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n{\\n \\\"url\\\": \\\"https://api.github.com/gists/88a3112be74ba6ad701e\\\",\\n \\\"id\\\": \\\"1\\\",\\n \\\"description\\\": \\\"description of gist\\\",\\n \\\"public\\\": true,\\n \\\"user\\\": {\\n \\\"login\\\": \\\"octocat\\\",\\n \\\"id\\\": 1,\\n \\\"avatar_url\\\": \\\"https://github.com/images/error/octocat_happy.gif\\\",\\n \\\"gravatar_id\\\": \\\"somehexcode\\\",\\n \\\"url\\\": \\\"https://api.github.com/users/octocat\\\"\\n },\\n \\\"files\\\": {\\n \\\"ring.erl\\\": {\\n \\\"size\\\": 932,\\n \\\"filename\\\": \\\"ring.erl\\\",\\n \\\"raw_url\\\": \\\"https://gist.github.com/raw/365370/8c4d2d43d178df44f4c03a7f2ac0ff512853564e/ring.erl\\\"\\n }\\n },\\n \\\"comments\\\": 0,\\n \\\"comments_url\\\": \\\"https://api.github.com/gists/8438e99468ee9a4ab10e/comments/\\\",\\n \\\"html_url\\\": \\\"https://gist.github.com/1\\\",\\n \\\"git_pull_url\\\": \\\"git://gist.github.com/1.git\\\",\\n \\\"git_push_url\\\": \\\"git@gist.github.com:1.git\\\",\\n \\\"created_at\\\": \\\"2010-04-14T02:15:15Z\\\"\\n}\\n]]--\\n\\n-- Delete a gist --\\nfunction GithubAPI.gist.delete(id, callback)\\n\\tGithubAPI.http_request(\\\"gists/\\\"..id, callback, {method=\\\"DELETE\\\"})\\nend\\n\\n--[[ Response --\\nStatus: 204 No Content\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n]]--\\n\\n--- GISTS COMMENTS ---\\n\\n-- List comments on a gist --\\nfunction GithubAPI.gist.comment.list(gist_id, callback)\\n\\tGithubAPI.http_request(\\\"gists/..\\\"gist_id\\\"../comments\\\", callback)\\nend\\n\\n--[[ Response --\\nStatus: 200 OK\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n[\\n {\\n \\\"id\\\": 1,\\n \\\"url\\\": \\\"https://api.github.com/gists/ae709e9cf889e485e65f/comments/1\\\",\\n \\\"body\\\": \\\"Just commenting for the sake of commenting\\\",\\n \\\"user\\\": {\\n \\\"login\\\": \\\"octocat\\\",\\n \\\"id\\\": 1,\\n \\\"avatar_url\\\": \\\"https://github.com/images/error/octocat_happy.gif\\\",\\n \\\"gravatar_id\\\": \\\"somehexcode\\\",\\n \\\"url\\\": \\\"https://api.github.com/users/octocat\\\"\\n },\\n \\\"created_at\\\": \\\"2011-04-18T23:23:56Z\\\"\\n }\\n]\\n]]--\\n\\n-- Get a single comment --\\nfunction GithubAPI.gist.comment.get(gist_id, id, callback)\\n\\tGithubAPI.http_request(\\\"gists/..\\\"gist_id\\\"../comments/\\\"..id, callback)\\nend\\n\\n--[[ Response --\\nStatus: 200 OK\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n{\\n \\\"id\\\": 1,\\n \\\"url\\\": \\\"https://api.github.com/gists/ae709e9cf889e485e65f/comments/1\\\",\\n \\\"body\\\": \\\"Just commenting for the sake of commenting\\\",\\n \\\"user\\\": {\\n \\\"login\\\": \\\"octocat\\\",\\n \\\"id\\\": 1,\\n \\\"avatar_url\\\": \\\"https://github.com/images/error/octocat_happy.gif\\\",\\n \\\"gravatar_id\\\": \\\"somehexcode\\\",\\n \\\"url\\\": \\\"https://api.github.com/users/octocat\\\"\\n },\\n \\\"created_at\\\": \\\"2011-04-18T23:23:56Z\\\"\\n}\\n]]--\\n\\n-- Create a comment --\\nfunction GithubAPI.gist.comment.create(gist_id, body, callback)\\n\\tGithubAPI.http_request(\\\"gists/..\\\"gist_id\\\"../comments/\\\"..id, callback, {\\n\\t\\tmethod = \\\"POST\\\",\\n\\t\\tdata = {\\n\\t\\t\\tbody = body\\n\\t\\t}\\n\\t})\\nend\\n\\n--[[ Input --\\n{\\n \\\"body\\\": \\\"Just commenting for the sake of commenting\\\"\\n}\\n]]--\\n--[[ Response --\\nStatus: 201 Created\\nLocation: https://api.github.com/gists/comments/1\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n{\\n \\\"id\\\": 1,\\n \\\"url\\\": \\\"https://api.github.com/gists/ae709e9cf889e485e65f/comments/1\\\",\\n \\\"body\\\": \\\"Just commenting for the sake of commenting\\\",\\n \\\"user\\\": {\\n \\\"login\\\": \\\"octocat\\\",\\n \\\"id\\\": 1,\\n \\\"avatar_url\\\": \\\"https://github.com/images/error/octocat_happy.gif\\\",\\n \\\"gravatar_id\\\": \\\"somehexcode\\\",\\n \\\"url\\\": \\\"https://api.github.com/users/octocat\\\"\\n },\\n \\\"created_at\\\": \\\"2011-04-18T23:23:56Z\\\"\\n}\\n]]--\\n\\n-- Edit a comment --\\nfunction GithubAPI.gist.comment.edit(gist_id, id, body, callback)\\n\\tGithubAPI.http_request(\\\"gists/..\\\"gist_id\\\"../comments/\\\"..id, callback, {\\n\\t\\tmethod = \\\"PATCH\\\",\\n\\t\\tdata = {\\n\\t\\t\\tbody = body\\n\\t\\t}\\n\\t})\\nend\\n\\n--[[ Input --\\n{\\n \\\"body\\\": \\\"Just commenting for the sake of commenting\\\"\\n}\\n]]--\\n--[[ Response --\\nStatus: 200 OK\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n{\\n \\\"id\\\": 1,\\n \\\"url\\\": \\\"https://api.github.com/gists/ae709e9cf889e485e65f/comments/1\\\",\\n \\\"body\\\": \\\"Just commenting for the sake of commenting\\\",\\n \\\"user\\\": {\\n \\\"login\\\": \\\"octocat\\\",\\n \\\"id\\\": 1,\\n \\\"avatar_url\\\": \\\"https://github.com/images/error/octocat_happy.gif\\\",\\n \\\"gravatar_id\\\": \\\"somehexcode\\\",\\n \\\"url\\\": \\\"https://api.github.com/users/octocat\\\"\\n },\\n \\\"created_at\\\": \\\"2011-04-18T23:23:56Z\\\"\\n}\\n]]--\\n\\n-- Delete a comment --\\nfunction GithubAPI.gist.comment.delete(gist_id, id, callback)\\n\\tGithubAPI.http_request(\\\"gists/..\\\"gist_id\\\"../comments/\\\"..id, callback, {method = \\\"DELETE\\\"})\\nend\\n\\n--[[ Response --\\nStatus: 204 No Content\\nX-RateLimit-Limit: 5000\\nX-RateLimit-Remaining: 4999\\n]]--\\n\\n----------------------------------------------------------------------------\\n-------------------------------- TOOLS -------------------------------------\\n----------------------------------------------------------------------------\\n\\nfunction GithubAPI.http_request(url, callback, opts, fullUrl)\\n\\topts = opts or {}\\n\\t-- if GithubAPI.token then opts.headers = TOKEN BEARER\\n\\tif opts.data then opts.data = json.encode(opts.data) end\\n\\n\\tlocal _url\\n\\tif (fullUrl) then _url = url else _url = GithubAPI.location .. url end\\n\\n\\thttp.request(_url, function(data, status, headers)\\n\\t\\tif (status == 500) then error(\\\"Github: Internal Server Error ...\\\") end\\n\\t\\tdata = json.decode(data)\\n\\t\\tcallback(data, status, headers)\\n\\tend, alert, opts)\\nend\\n\\nfunction GithubAPI.explode(div,str) -- credit: http://richard.warburton.it\\n if (div=='') then return false end\\n local pos,arr = 0,{}\\n for st,sp in function() return string.find(str,div,pos,true) end do\\n table.insert(arr,string.sub(str,pos,st-1))\\n pos = sp + 1\\n end\\n table.insert(arr,string.sub(str,pos))\\n return arr\\nend\\n\\n-- GITHUB TIMESTAMP (YYYY-MM-DDTHH:MM:SSZ) to os.time\\nfunction GithubAPI.gtimestamp(githubTime)\\n\\tgithubTime = githubTime:sub(1, #githubTime-1) -- remove Z\\n\\tgithubTime = GithubAPI.explode(\\\"T\\\", githubTime)\\n\\tgithubTime[1] = GithubAPI.explode(\\\"-\\\", githubTime[1])\\n\\tgithubTime[2] = GithubAPI.explode(\\\":\\\", githubTime[2])\\n\\treturn os.time({\\n\\t\\tyear = tonumber(githubTime[1][1]),\\n\\t\\tmonth = tonumber(githubTime[1][2]),\\n\\t\\tday = tonumber(githubTime[1][3]),\\n\\t\\thour = tonumber(githubTime[2][1]),\\n\\t\\tmin = tonumber(githubTime[2][2]),\\n\\t\\tsec = tonumber(githubTime[2][3])\\n\\t})\\nend\"}},\"public\":true,\"created_at\":\"2013-08-21T16:28:24Z\",\"updated_at\":\"2013-08-21T16:28:24Z\",\"description\":\"Github API\",\"comments\":0,\"user\":{\"login\":\"jacquev6\",\"id\":327146,\"avatar_url\":\"https://2.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"url\":\"https://api.github.com/users/jacquev6\",\"html_url\":\"https://github.com/jacquev6\",\"followers_url\":\"https://api.github.com/users/jacquev6/followers\",\"following_url\":\"https://api.github.com/users/jacquev6/following{/other_user}\",\"gists_url\":\"https://api.github.com/users/jacquev6/gists{/gist_id}\",\"starred_url\":\"https://api.github.com/users/jacquev6/starred{/owner}{/repo}\",\"subscriptions_url\":\"https://api.github.com/users/jacquev6/subscriptions\",\"organizations_url\":\"https://api.github.com/users/jacquev6/orgs\",\"repos_url\":\"https://api.github.com/users/jacquev6/repos\",\"events_url\":\"https://api.github.com/users/jacquev6/events{/privacy}\",\"received_events_url\":\"https://api.github.com/users/jacquev6/received_events\",\"type\":\"User\"},\"comments_url\":\"https://api.github.com/gists/6296732/comments\",\"forks\":[],\"history\":[{\"user\":null,\"version\":\"c464aecd7fea16684e935607eeea7ae4f8caa0e2\",\"committed_at\":\"2013-08-21T16:12:27Z\",\"change_status\":{\"total\":793,\"additions\":793,\"deletions\":0},\"url\":\"https://api.github.com/gists/6296732/c464aecd7fea16684e935607eeea7ae4f8caa0e2\"}],\"fork_of\":{\"url\":\"https://api.github.com/gists/6296553\",\"forks_url\":\"https://api.github.com/gists/6296553/forks\",\"commits_url\":\"https://api.github.com/gists/6296553/commits\",\"id\":\"6296553\",\"git_pull_url\":\"https://gist.github.com/6296553.git\",\"git_push_url\":\"https://gist.github.com/6296553.git\",\"html_url\":\"https://gist.github.com/6296553\",\"files\":{},\"public\":true,\"created_at\":\"2013-08-21T16:12:27Z\",\"updated_at\":\"2013-08-21T16:28:24Z\",\"description\":\"Github API\",\"comments\":0,\"user\":{\"login\":\"HyroVitalyProtago\",\"id\":3470988,\"avatar_url\":\"https://1.gravatar.com/avatar/ed59562b231a649345f38703948f76f4?d=https%3A%2F%2Fidenticons.github.com%2F6582cb986b7a730b12f7c18dfcc865f0.png\",\"gravatar_id\":\"ed59562b231a649345f38703948f76f4\",\"url\":\"https://api.github.com/users/HyroVitalyProtago\",\"html_url\":\"https://github.com/HyroVitalyProtago\",\"followers_url\":\"https://api.github.com/users/HyroVitalyProtago/followers\",\"following_url\":\"https://api.github.com/users/HyroVitalyProtago/following{/other_user}\",\"gists_url\":\"https://api.github.com/users/HyroVitalyProtago/gists{/gist_id}\",\"starred_url\":\"https://api.github.com/users/HyroVitalyProtago/starred{/owner}{/repo}\",\"subscriptions_url\":\"https://api.github.com/users/HyroVitalyProtago/subscriptions\",\"organizations_url\":\"https://api.github.com/users/HyroVitalyProtago/orgs\",\"repos_url\":\"https://api.github.com/users/HyroVitalyProtago/repos\",\"events_url\":\"https://api.github.com/users/HyroVitalyProtago/events{/privacy}\",\"received_events_url\":\"https://api.github.com/users/HyroVitalyProtago/received_events\",\"type\":\"User\"},\"comments_url\":\"https://api.github.com/gists/6296553/comments\"}}\n "},{"sha":"7d335ffc25d0f2bf8208709c1d73ec7b216eee61","filename":"github/tests/ReplayData/Github.testGetRepos.txt","status":"added","additions":11,"deletions":0,"changes":11,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/tests/ReplayData/Github.testGetRepos.txt","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/tests/ReplayData/Github.testGetRepos.txt","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/tests/ReplayData/Github.testGetRepos.txt?ref=a6597499c2f82e063074a3036d875417d5efa296"},{"sha":"476baddfbabd644ff708e3ea3778ae474ff03c86","filename":"github/tests/ReplayData/Github.testGetReposSince.txt","status":"added","additions":11,"deletions":0,"changes":11,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/tests/ReplayData/Github.testGetReposSince.txt","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/tests/ReplayData/Github.testGetReposSince.txt","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/tests/ReplayData/Github.testGetReposSince.txt?ref=a6597499c2f82e063074a3036d875417d5efa296"},{"sha":"6f6e25494e129725b5aad650839888e3494c52f7","filename":"github/tests/ReplayData/Hook.testTest.txt","status":"modified","additions":1,"deletions":1,"changes":2,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/tests/ReplayData/Hook.testTest.txt","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/tests/ReplayData/Hook.testTest.txt","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/tests/ReplayData/Hook.testTest.txt?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -2,7 +2,7 @@ https\n POST\n api.github.com\n None\n-/repos/jacquev6/PyGithub/hooks/257993/test\n+/repos/jacquev6/PyGithub/hooks/257993/tests\n {'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'}\n null\n 204"},{"sha":"08c61a84ee63868aac85f3d64397e65b0fdf9132","filename":"github/tests/ReplayData/NamedUser.testHasInFollowing.txt","status":"added","additions":22,"deletions":0,"changes":22,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/tests/ReplayData/NamedUser.testHasInFollowing.txt","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/tests/ReplayData/NamedUser.testHasInFollowing.txt","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/tests/ReplayData/NamedUser.testHasInFollowing.txt?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -0,0 +1,22 @@\n+https\n+GET\n+api.github.com\n+None\n+/users/nvie\n+{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'}\n+null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4996'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '1218'), ('server', 'GitHub.com'), ('last-modified', 'Wed, 21 Aug 2013 16:26:40 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '\"8e2b307f8fb4186bfb512febd7215fc8\"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 21 Aug 2013 17:20:44 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1377108637')]\n+{\"login\":\"nvie\",\"id\":83844,\"avatar_url\":\"https://2.gravatar.com/avatar/466ef7561a0b100dc5a1021959962d28?d=https%3A%2F%2Fidenticons.github.com%2Fe6d0513ce49cc06cb956251623cb8fd9.png\",\"gravatar_id\":\"466ef7561a0b100dc5a1021959962d28\",\"url\":\"https://api.github.com/users/nvie\",\"html_url\":\"https://github.com/nvie\",\"followers_url\":\"https://api.github.com/users/nvie/followers\",\"following_url\":\"https://api.github.com/users/nvie/following{/other_user}\",\"gists_url\":\"https://api.github.com/users/nvie/gists{/gist_id}\",\"starred_url\":\"https://api.github.com/users/nvie/starred{/owner}{/repo}\",\"subscriptions_url\":\"https://api.github.com/users/nvie/subscriptions\",\"organizations_url\":\"https://api.github.com/users/nvie/orgs\",\"repos_url\":\"https://api.github.com/users/nvie/repos\",\"events_url\":\"https://api.github.com/users/nvie/events{/privacy}\",\"received_events_url\":\"https://api.github.com/users/nvie/received_events\",\"type\":\"User\",\"name\":\"Vincent Driessen\",\"company\":\"3rd Cloud\",\"blog\":\"http://nvie.com\",\"location\":\"Netherlands\",\"email\":\"vincent@3rdcloud.com\",\"hireable\":true,\"bio\":null,\"public_repos\":86,\"followers\":530,\"following\":45,\"created_at\":\"2009-05-12T21:19:38Z\",\"updated_at\":\"2013-08-21T16:26:40Z\",\"public_gists\":38}\n+\n+https\n+GET\n+api.github.com\n+None\n+/users/jacquev6/following/nvie\n+{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'}\n+null\n+204\n+[('status', '204 No Content'), ('x-ratelimit-remaining', '4995'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('access-control-allow-credentials', 'true'), ('date', 'Wed, 21 Aug 2013 17:20:48 GMT'), ('access-control-allow-origin', '*'), ('x-ratelimit-reset', '1377108637')]\n+\n+"},{"sha":"dfc62ba258a155c9b40432ec67a51b8b8822ec73","filename":"github/tests/ReplayData/Persistence.setUp.txt","status":"added","additions":11,"deletions":0,"changes":11,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/tests/ReplayData/Persistence.setUp.txt","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/tests/ReplayData/Persistence.setUp.txt","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/tests/ReplayData/Persistence.setUp.txt?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -0,0 +1,11 @@\n+https\n+GET\n+api.github.com\n+None\n+/repos/akfish/PyGithub\n+{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'}\n+null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4988'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '13698'), ('server', 'GitHub.com'), ('last-modified', 'Thu, 22 Aug 2013 02:09:11 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '\"8600bedcb7fed1d8065e1693e05529ce\"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Thu, 22 Aug 2013 02:13:08 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1377140429')]\n+{\"id\":12156762,\"name\":\"PyGithub\",\"full_name\":\"akfish/PyGithub\",\"owner\":{\"login\":\"akfish\",\"id\":922715,\"avatar_url\":\"https://1.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png\",\"gravatar_id\":\"12a1b44d4e5c19cee59618084602b112\",\"url\":\"https://api.github.com/users/akfish\",\"html_url\":\"https://github.com/akfish\",\"followers_url\":\"https://api.github.com/users/akfish/followers\",\"following_url\":\"https://api.github.com/users/akfish/following{/other_user}\",\"gists_url\":\"https://api.github.com/users/akfish/gists{/gist_id}\",\"starred_url\":\"https://api.github.com/users/akfish/starred{/owner}{/repo}\",\"subscriptions_url\":\"https://api.github.com/users/akfish/subscriptions\",\"organizations_url\":\"https://api.github.com/users/akfish/orgs\",\"repos_url\":\"https://api.github.com/users/akfish/repos\",\"events_url\":\"https://api.github.com/users/akfish/events{/privacy}\",\"received_events_url\":\"https://api.github.com/users/akfish/received_events\",\"type\":\"User\"},\"private\":false,\"html_url\":\"https://github.com/akfish/PyGithub\",\"description\":\"Python library implementing the full Github API v3\",\"fork\":true,\"url\":\"https://api.github.com/repos/akfish/PyGithub\",\"forks_url\":\"https://api.github.com/repos/akfish/PyGithub/forks\",\"keys_url\":\"https://api.github.com/repos/akfish/PyGithub/keys{/key_id}\",\"collaborators_url\":\"https://api.github.com/repos/akfish/PyGithub/collaborators{/collaborator}\",\"teams_url\":\"https://api.github.com/repos/akfish/PyGithub/teams\",\"hooks_url\":\"https://api.github.com/repos/akfish/PyGithub/hooks\",\"issue_events_url\":\"https://api.github.com/repos/akfish/PyGithub/issues/events{/number}\",\"events_url\":\"https://api.github.com/repos/akfish/PyGithub/events\",\"assignees_url\":\"https://api.github.com/repos/akfish/PyGithub/assignees{/user}\",\"branches_url\":\"https://api.github.com/repos/akfish/PyGithub/branches{/branch}\",\"tags_url\":\"https://api.github.com/repos/akfish/PyGithub/tags\",\"blobs_url\":\"https://api.github.com/repos/akfish/PyGithub/git/blobs{/sha}\",\"git_tags_url\":\"https://api.github.com/repos/akfish/PyGithub/git/tags{/sha}\",\"git_refs_url\":\"https://api.github.com/repos/akfish/PyGithub/git/refs{/sha}\",\"trees_url\":\"https://api.github.com/repos/akfish/PyGithub/git/trees{/sha}\",\"statuses_url\":\"https://api.github.com/repos/akfish/PyGithub/statuses/{sha}\",\"languages_url\":\"https://api.github.com/repos/akfish/PyGithub/languages\",\"stargazers_url\":\"https://api.github.com/repos/akfish/PyGithub/stargazers\",\"contributors_url\":\"https://api.github.com/repos/akfish/PyGithub/contributors\",\"subscribers_url\":\"https://api.github.com/repos/akfish/PyGithub/subscribers\",\"subscription_url\":\"https://api.github.com/repos/akfish/PyGithub/subscription\",\"commits_url\":\"https://api.github.com/repos/akfish/PyGithub/commits{/sha}\",\"git_commits_url\":\"https://api.github.com/repos/akfish/PyGithub/git/commits{/sha}\",\"comments_url\":\"https://api.github.com/repos/akfish/PyGithub/comments{/number}\",\"issue_comment_url\":\"https://api.github.com/repos/akfish/PyGithub/issues/comments/{number}\",\"contents_url\":\"https://api.github.com/repos/akfish/PyGithub/contents/{+path}\",\"compare_url\":\"https://api.github.com/repos/akfish/PyGithub/compare/{base}...{head}\",\"merges_url\":\"https://api.github.com/repos/akfish/PyGithub/merges\",\"archive_url\":\"https://api.github.com/repos/akfish/PyGithub/{archive_format}{/ref}\",\"downloads_url\":\"https://api.github.com/repos/akfish/PyGithub/downloads\",\"issues_url\":\"https://api.github.com/repos/akfish/PyGithub/issues{/number}\",\"pulls_url\":\"https://api.github.com/repos/akfish/PyGithub/pulls{/number}\",\"milestones_url\":\"https://api.github.com/repos/akfish/PyGithub/milestones{/number}\",\"notifications_url\":\"https://api.github.com/repos/akfish/PyGithub/notifications{?since,all,participating}\",\"labels_url\":\"https://api.github.com/repos/akfish/PyGithub/labels{/name}\",\"created_at\":\"2013-08-16T10:56:11Z\",\"updated_at\":\"2013-08-22T02:09:11Z\",\"pushed_at\":\"2013-08-22T02:09:09Z\",\"git_url\":\"git://github.com/akfish/PyGithub.git\",\"ssh_url\":\"git@github.com:akfish/PyGithub.git\",\"clone_url\":\"https://github.com/akfish/PyGithub.git\",\"svn_url\":\"https://github.com/akfish/PyGithub\",\"homepage\":\"http://jacquev6.github.com/PyGithub\",\"size\":6736,\"watchers_count\":0,\"language\":\"Python\",\"has_issues\":false,\"has_downloads\":true,\"has_wiki\":true,\"forks_count\":0,\"mirror_url\":null,\"open_issues_count\":0,\"forks\":0,\"open_issues\":0,\"watchers\":0,\"master_branch\":\"master\",\"default_branch\":\"master\",\"permissions\":{\"admin\":true,\"push\":true,\"pull\":true},\"network_count\":70,\"parent\":{\"id\":3544490,\"name\":\"PyGithub\",\"full_name\":\"jacquev6/PyGithub\",\"owner\":{\"login\":\"jacquev6\",\"id\":327146,\"avatar_url\":\"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"url\":\"https://api.github.com/users/jacquev6\",\"html_url\":\"https://github.com/jacquev6\",\"followers_url\":\"https://api.github.com/users/jacquev6/followers\",\"following_url\":\"https://api.github.com/users/jacquev6/following{/other_user}\",\"gists_url\":\"https://api.github.com/users/jacquev6/gists{/gist_id}\",\"starred_url\":\"https://api.github.com/users/jacquev6/starred{/owner}{/repo}\",\"subscriptions_url\":\"https://api.github.com/users/jacquev6/subscriptions\",\"organizations_url\":\"https://api.github.com/users/jacquev6/orgs\",\"repos_url\":\"https://api.github.com/users/jacquev6/repos\",\"events_url\":\"https://api.github.com/users/jacquev6/events{/privacy}\",\"received_events_url\":\"https://api.github.com/users/jacquev6/received_events\",\"type\":\"User\"},\"private\":false,\"html_url\":\"https://github.com/jacquev6/PyGithub\",\"description\":\"Python library implementing the full Github API v3\",\"fork\":false,\"url\":\"https://api.github.com/repos/jacquev6/PyGithub\",\"forks_url\":\"https://api.github.com/repos/jacquev6/PyGithub/forks\",\"keys_url\":\"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}\",\"collaborators_url\":\"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}\",\"teams_url\":\"https://api.github.com/repos/jacquev6/PyGithub/teams\",\"hooks_url\":\"https://api.github.com/repos/jacquev6/PyGithub/hooks\",\"issue_events_url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}\",\"events_url\":\"https://api.github.com/repos/jacquev6/PyGithub/events\",\"assignees_url\":\"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}\",\"branches_url\":\"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}\",\"tags_url\":\"https://api.github.com/repos/jacquev6/PyGithub/tags\",\"blobs_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}\",\"git_tags_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}\",\"git_refs_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}\",\"trees_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}\",\"statuses_url\":\"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}\",\"languages_url\":\"https://api.github.com/repos/jacquev6/PyGithub/languages\",\"stargazers_url\":\"https://api.github.com/repos/jacquev6/PyGithub/stargazers\",\"contributors_url\":\"https://api.github.com/repos/jacquev6/PyGithub/contributors\",\"subscribers_url\":\"https://api.github.com/repos/jacquev6/PyGithub/subscribers\",\"subscription_url\":\"https://api.github.com/repos/jacquev6/PyGithub/subscription\",\"commits_url\":\"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}\",\"git_commits_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}\",\"comments_url\":\"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}\",\"issue_comment_url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}\",\"contents_url\":\"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}\",\"compare_url\":\"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}\",\"merges_url\":\"https://api.github.com/repos/jacquev6/PyGithub/merges\",\"archive_url\":\"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}\",\"downloads_url\":\"https://api.github.com/repos/jacquev6/PyGithub/downloads\",\"issues_url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}\",\"pulls_url\":\"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}\",\"milestones_url\":\"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}\",\"notifications_url\":\"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}\",\"labels_url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}\",\"created_at\":\"2012-02-25T12:53:47Z\",\"updated_at\":\"2013-08-21T20:32:08Z\",\"pushed_at\":\"2013-08-21T20:31:45Z\",\"git_url\":\"git://github.com/jacquev6/PyGithub.git\",\"ssh_url\":\"git@github.com:jacquev6/PyGithub.git\",\"clone_url\":\"https://github.com/jacquev6/PyGithub.git\",\"svn_url\":\"https://github.com/jacquev6/PyGithub\",\"homepage\":\"http://jacquev6.github.com/PyGithub\",\"size\":7437,\"watchers_count\":248,\"language\":\"Python\",\"has_issues\":true,\"has_downloads\":true,\"has_wiki\":true,\"forks_count\":70,\"mirror_url\":null,\"open_issues_count\":17,\"forks\":70,\"open_issues\":17,\"watchers\":248,\"master_branch\":\"master\",\"default_branch\":\"master\"},\"source\":{\"id\":3544490,\"name\":\"PyGithub\",\"full_name\":\"jacquev6/PyGithub\",\"owner\":{\"login\":\"jacquev6\",\"id\":327146,\"avatar_url\":\"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"url\":\"https://api.github.com/users/jacquev6\",\"html_url\":\"https://github.com/jacquev6\",\"followers_url\":\"https://api.github.com/users/jacquev6/followers\",\"following_url\":\"https://api.github.com/users/jacquev6/following{/other_user}\",\"gists_url\":\"https://api.github.com/users/jacquev6/gists{/gist_id}\",\"starred_url\":\"https://api.github.com/users/jacquev6/starred{/owner}{/repo}\",\"subscriptions_url\":\"https://api.github.com/users/jacquev6/subscriptions\",\"organizations_url\":\"https://api.github.com/users/jacquev6/orgs\",\"repos_url\":\"https://api.github.com/users/jacquev6/repos\",\"events_url\":\"https://api.github.com/users/jacquev6/events{/privacy}\",\"received_events_url\":\"https://api.github.com/users/jacquev6/received_events\",\"type\":\"User\"},\"private\":false,\"html_url\":\"https://github.com/jacquev6/PyGithub\",\"description\":\"Python library implementing the full Github API v3\",\"fork\":false,\"url\":\"https://api.github.com/repos/jacquev6/PyGithub\",\"forks_url\":\"https://api.github.com/repos/jacquev6/PyGithub/forks\",\"keys_url\":\"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}\",\"collaborators_url\":\"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}\",\"teams_url\":\"https://api.github.com/repos/jacquev6/PyGithub/teams\",\"hooks_url\":\"https://api.github.com/repos/jacquev6/PyGithub/hooks\",\"issue_events_url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}\",\"events_url\":\"https://api.github.com/repos/jacquev6/PyGithub/events\",\"assignees_url\":\"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}\",\"branches_url\":\"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}\",\"tags_url\":\"https://api.github.com/repos/jacquev6/PyGithub/tags\",\"blobs_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}\",\"git_tags_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}\",\"git_refs_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}\",\"trees_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}\",\"statuses_url\":\"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}\",\"languages_url\":\"https://api.github.com/repos/jacquev6/PyGithub/languages\",\"stargazers_url\":\"https://api.github.com/repos/jacquev6/PyGithub/stargazers\",\"contributors_url\":\"https://api.github.com/repos/jacquev6/PyGithub/contributors\",\"subscribers_url\":\"https://api.github.com/repos/jacquev6/PyGithub/subscribers\",\"subscription_url\":\"https://api.github.com/repos/jacquev6/PyGithub/subscription\",\"commits_url\":\"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}\",\"git_commits_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}\",\"comments_url\":\"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}\",\"issue_comment_url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}\",\"contents_url\":\"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}\",\"compare_url\":\"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}\",\"merges_url\":\"https://api.github.com/repos/jacquev6/PyGithub/merges\",\"archive_url\":\"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}\",\"downloads_url\":\"https://api.github.com/repos/jacquev6/PyGithub/downloads\",\"issues_url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}\",\"pulls_url\":\"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}\",\"milestones_url\":\"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}\",\"notifications_url\":\"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}\",\"labels_url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}\",\"created_at\":\"2012-02-25T12:53:47Z\",\"updated_at\":\"2013-08-21T20:32:08Z\",\"pushed_at\":\"2013-08-21T20:31:45Z\",\"git_url\":\"git://github.com/jacquev6/PyGithub.git\",\"ssh_url\":\"git@github.com:jacquev6/PyGithub.git\",\"clone_url\":\"https://github.com/jacquev6/PyGithub.git\",\"svn_url\":\"https://github.com/jacquev6/PyGithub\",\"homepage\":\"http://jacquev6.github.com/PyGithub\",\"size\":7437,\"watchers_count\":248,\"language\":\"Python\",\"has_issues\":true,\"has_downloads\":true,\"has_wiki\":true,\"forks_count\":70,\"mirror_url\":null,\"open_issues_count\":17,\"forks\":70,\"open_issues\":17,\"watchers\":248,\"master_branch\":\"master\",\"default_branch\":\"master\"}}\n+"},{"sha":"b6d8aeec9b3c663cfe561eb2513a514f10011673","filename":"github/tests/ReplayData/Persistence.testLoadAndUpdate.txt","status":"added","additions":11,"deletions":0,"changes":11,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/tests/ReplayData/Persistence.testLoadAndUpdate.txt","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/tests/ReplayData/Persistence.testLoadAndUpdate.txt","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/tests/ReplayData/Persistence.testLoadAndUpdate.txt?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -0,0 +1,11 @@\n+https\n+GET\n+api.github.com\n+None\n+/repos/akfish/PyGithub\n+{'If-None-Match': '\"8600bedcb7fed1d8065e1693e05529ce\"', 'User-Agent': 'PyGithub/Python', 'Authorization': 'Basic login_and_password_removed', 'If-Modified-Since': 'Thu, 22 Aug 2013 02:09:11 GMT'}\n+null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4987'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '13712'), ('server', 'GitHub.com'), ('last-modified', 'Thu, 22 Aug 2013 02:14:54 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '\"ef281ef0e821c18f80da36902727160b\"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Thu, 22 Aug 2013 02:15:01 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1377140429')]\n+{\"id\":12156762,\"name\":\"PyGithub\",\"full_name\":\"akfish/PyGithub\",\"owner\":{\"login\":\"akfish\",\"id\":922715,\"avatar_url\":\"https://0.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png\",\"gravatar_id\":\"12a1b44d4e5c19cee59618084602b112\",\"url\":\"https://api.github.com/users/akfish\",\"html_url\":\"https://github.com/akfish\",\"followers_url\":\"https://api.github.com/users/akfish/followers\",\"following_url\":\"https://api.github.com/users/akfish/following{/other_user}\",\"gists_url\":\"https://api.github.com/users/akfish/gists{/gist_id}\",\"starred_url\":\"https://api.github.com/users/akfish/starred{/owner}{/repo}\",\"subscriptions_url\":\"https://api.github.com/users/akfish/subscriptions\",\"organizations_url\":\"https://api.github.com/users/akfish/orgs\",\"repos_url\":\"https://api.github.com/users/akfish/repos\",\"events_url\":\"https://api.github.com/users/akfish/events{/privacy}\",\"received_events_url\":\"https://api.github.com/users/akfish/received_events\",\"type\":\"User\"},\"private\":false,\"html_url\":\"https://github.com/akfish/PyGithub\",\"description\":\"Python library implementing the full Github API v3 - AKFish Fork\",\"fork\":true,\"url\":\"https://api.github.com/repos/akfish/PyGithub\",\"forks_url\":\"https://api.github.com/repos/akfish/PyGithub/forks\",\"keys_url\":\"https://api.github.com/repos/akfish/PyGithub/keys{/key_id}\",\"collaborators_url\":\"https://api.github.com/repos/akfish/PyGithub/collaborators{/collaborator}\",\"teams_url\":\"https://api.github.com/repos/akfish/PyGithub/teams\",\"hooks_url\":\"https://api.github.com/repos/akfish/PyGithub/hooks\",\"issue_events_url\":\"https://api.github.com/repos/akfish/PyGithub/issues/events{/number}\",\"events_url\":\"https://api.github.com/repos/akfish/PyGithub/events\",\"assignees_url\":\"https://api.github.com/repos/akfish/PyGithub/assignees{/user}\",\"branches_url\":\"https://api.github.com/repos/akfish/PyGithub/branches{/branch}\",\"tags_url\":\"https://api.github.com/repos/akfish/PyGithub/tags\",\"blobs_url\":\"https://api.github.com/repos/akfish/PyGithub/git/blobs{/sha}\",\"git_tags_url\":\"https://api.github.com/repos/akfish/PyGithub/git/tags{/sha}\",\"git_refs_url\":\"https://api.github.com/repos/akfish/PyGithub/git/refs{/sha}\",\"trees_url\":\"https://api.github.com/repos/akfish/PyGithub/git/trees{/sha}\",\"statuses_url\":\"https://api.github.com/repos/akfish/PyGithub/statuses/{sha}\",\"languages_url\":\"https://api.github.com/repos/akfish/PyGithub/languages\",\"stargazers_url\":\"https://api.github.com/repos/akfish/PyGithub/stargazers\",\"contributors_url\":\"https://api.github.com/repos/akfish/PyGithub/contributors\",\"subscribers_url\":\"https://api.github.com/repos/akfish/PyGithub/subscribers\",\"subscription_url\":\"https://api.github.com/repos/akfish/PyGithub/subscription\",\"commits_url\":\"https://api.github.com/repos/akfish/PyGithub/commits{/sha}\",\"git_commits_url\":\"https://api.github.com/repos/akfish/PyGithub/git/commits{/sha}\",\"comments_url\":\"https://api.github.com/repos/akfish/PyGithub/comments{/number}\",\"issue_comment_url\":\"https://api.github.com/repos/akfish/PyGithub/issues/comments/{number}\",\"contents_url\":\"https://api.github.com/repos/akfish/PyGithub/contents/{+path}\",\"compare_url\":\"https://api.github.com/repos/akfish/PyGithub/compare/{base}...{head}\",\"merges_url\":\"https://api.github.com/repos/akfish/PyGithub/merges\",\"archive_url\":\"https://api.github.com/repos/akfish/PyGithub/{archive_format}{/ref}\",\"downloads_url\":\"https://api.github.com/repos/akfish/PyGithub/downloads\",\"issues_url\":\"https://api.github.com/repos/akfish/PyGithub/issues{/number}\",\"pulls_url\":\"https://api.github.com/repos/akfish/PyGithub/pulls{/number}\",\"milestones_url\":\"https://api.github.com/repos/akfish/PyGithub/milestones{/number}\",\"notifications_url\":\"https://api.github.com/repos/akfish/PyGithub/notifications{?since,all,participating}\",\"labels_url\":\"https://api.github.com/repos/akfish/PyGithub/labels{/name}\",\"created_at\":\"2013-08-16T10:56:11Z\",\"updated_at\":\"2013-08-22T02:14:54Z\",\"pushed_at\":\"2013-08-22T02:09:09Z\",\"git_url\":\"git://github.com/akfish/PyGithub.git\",\"ssh_url\":\"git@github.com:akfish/PyGithub.git\",\"clone_url\":\"https://github.com/akfish/PyGithub.git\",\"svn_url\":\"https://github.com/akfish/PyGithub\",\"homepage\":\"http://jacquev6.github.com/PyGithub\",\"size\":6736,\"watchers_count\":0,\"language\":\"Python\",\"has_issues\":false,\"has_downloads\":true,\"has_wiki\":true,\"forks_count\":0,\"mirror_url\":null,\"open_issues_count\":0,\"forks\":0,\"open_issues\":0,\"watchers\":0,\"master_branch\":\"master\",\"default_branch\":\"master\",\"permissions\":{\"admin\":true,\"push\":true,\"pull\":true},\"network_count\":70,\"parent\":{\"id\":3544490,\"name\":\"PyGithub\",\"full_name\":\"jacquev6/PyGithub\",\"owner\":{\"login\":\"jacquev6\",\"id\":327146,\"avatar_url\":\"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"url\":\"https://api.github.com/users/jacquev6\",\"html_url\":\"https://github.com/jacquev6\",\"followers_url\":\"https://api.github.com/users/jacquev6/followers\",\"following_url\":\"https://api.github.com/users/jacquev6/following{/other_user}\",\"gists_url\":\"https://api.github.com/users/jacquev6/gists{/gist_id}\",\"starred_url\":\"https://api.github.com/users/jacquev6/starred{/owner}{/repo}\",\"subscriptions_url\":\"https://api.github.com/users/jacquev6/subscriptions\",\"organizations_url\":\"https://api.github.com/users/jacquev6/orgs\",\"repos_url\":\"https://api.github.com/users/jacquev6/repos\",\"events_url\":\"https://api.github.com/users/jacquev6/events{/privacy}\",\"received_events_url\":\"https://api.github.com/users/jacquev6/received_events\",\"type\":\"User\"},\"private\":false,\"html_url\":\"https://github.com/jacquev6/PyGithub\",\"description\":\"Python library implementing the full Github API v3\",\"fork\":false,\"url\":\"https://api.github.com/repos/jacquev6/PyGithub\",\"forks_url\":\"https://api.github.com/repos/jacquev6/PyGithub/forks\",\"keys_url\":\"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}\",\"collaborators_url\":\"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}\",\"teams_url\":\"https://api.github.com/repos/jacquev6/PyGithub/teams\",\"hooks_url\":\"https://api.github.com/repos/jacquev6/PyGithub/hooks\",\"issue_events_url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}\",\"events_url\":\"https://api.github.com/repos/jacquev6/PyGithub/events\",\"assignees_url\":\"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}\",\"branches_url\":\"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}\",\"tags_url\":\"https://api.github.com/repos/jacquev6/PyGithub/tags\",\"blobs_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}\",\"git_tags_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}\",\"git_refs_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}\",\"trees_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}\",\"statuses_url\":\"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}\",\"languages_url\":\"https://api.github.com/repos/jacquev6/PyGithub/languages\",\"stargazers_url\":\"https://api.github.com/repos/jacquev6/PyGithub/stargazers\",\"contributors_url\":\"https://api.github.com/repos/jacquev6/PyGithub/contributors\",\"subscribers_url\":\"https://api.github.com/repos/jacquev6/PyGithub/subscribers\",\"subscription_url\":\"https://api.github.com/repos/jacquev6/PyGithub/subscription\",\"commits_url\":\"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}\",\"git_commits_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}\",\"comments_url\":\"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}\",\"issue_comment_url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}\",\"contents_url\":\"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}\",\"compare_url\":\"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}\",\"merges_url\":\"https://api.github.com/repos/jacquev6/PyGithub/merges\",\"archive_url\":\"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}\",\"downloads_url\":\"https://api.github.com/repos/jacquev6/PyGithub/downloads\",\"issues_url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}\",\"pulls_url\":\"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}\",\"milestones_url\":\"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}\",\"notifications_url\":\"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}\",\"labels_url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}\",\"created_at\":\"2012-02-25T12:53:47Z\",\"updated_at\":\"2013-08-21T20:32:08Z\",\"pushed_at\":\"2013-08-21T20:31:45Z\",\"git_url\":\"git://github.com/jacquev6/PyGithub.git\",\"ssh_url\":\"git@github.com:jacquev6/PyGithub.git\",\"clone_url\":\"https://github.com/jacquev6/PyGithub.git\",\"svn_url\":\"https://github.com/jacquev6/PyGithub\",\"homepage\":\"http://jacquev6.github.com/PyGithub\",\"size\":7437,\"watchers_count\":248,\"language\":\"Python\",\"has_issues\":true,\"has_downloads\":true,\"has_wiki\":true,\"forks_count\":70,\"mirror_url\":null,\"open_issues_count\":17,\"forks\":70,\"open_issues\":17,\"watchers\":248,\"master_branch\":\"master\",\"default_branch\":\"master\"},\"source\":{\"id\":3544490,\"name\":\"PyGithub\",\"full_name\":\"jacquev6/PyGithub\",\"owner\":{\"login\":\"jacquev6\",\"id\":327146,\"avatar_url\":\"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"url\":\"https://api.github.com/users/jacquev6\",\"html_url\":\"https://github.com/jacquev6\",\"followers_url\":\"https://api.github.com/users/jacquev6/followers\",\"following_url\":\"https://api.github.com/users/jacquev6/following{/other_user}\",\"gists_url\":\"https://api.github.com/users/jacquev6/gists{/gist_id}\",\"starred_url\":\"https://api.github.com/users/jacquev6/starred{/owner}{/repo}\",\"subscriptions_url\":\"https://api.github.com/users/jacquev6/subscriptions\",\"organizations_url\":\"https://api.github.com/users/jacquev6/orgs\",\"repos_url\":\"https://api.github.com/users/jacquev6/repos\",\"events_url\":\"https://api.github.com/users/jacquev6/events{/privacy}\",\"received_events_url\":\"https://api.github.com/users/jacquev6/received_events\",\"type\":\"User\"},\"private\":false,\"html_url\":\"https://github.com/jacquev6/PyGithub\",\"description\":\"Python library implementing the full Github API v3\",\"fork\":false,\"url\":\"https://api.github.com/repos/jacquev6/PyGithub\",\"forks_url\":\"https://api.github.com/repos/jacquev6/PyGithub/forks\",\"keys_url\":\"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}\",\"collaborators_url\":\"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}\",\"teams_url\":\"https://api.github.com/repos/jacquev6/PyGithub/teams\",\"hooks_url\":\"https://api.github.com/repos/jacquev6/PyGithub/hooks\",\"issue_events_url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}\",\"events_url\":\"https://api.github.com/repos/jacquev6/PyGithub/events\",\"assignees_url\":\"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}\",\"branches_url\":\"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}\",\"tags_url\":\"https://api.github.com/repos/jacquev6/PyGithub/tags\",\"blobs_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}\",\"git_tags_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}\",\"git_refs_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}\",\"trees_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}\",\"statuses_url\":\"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}\",\"languages_url\":\"https://api.github.com/repos/jacquev6/PyGithub/languages\",\"stargazers_url\":\"https://api.github.com/repos/jacquev6/PyGithub/stargazers\",\"contributors_url\":\"https://api.github.com/repos/jacquev6/PyGithub/contributors\",\"subscribers_url\":\"https://api.github.com/repos/jacquev6/PyGithub/subscribers\",\"subscription_url\":\"https://api.github.com/repos/jacquev6/PyGithub/subscription\",\"commits_url\":\"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}\",\"git_commits_url\":\"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}\",\"comments_url\":\"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}\",\"issue_comment_url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}\",\"contents_url\":\"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}\",\"compare_url\":\"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}\",\"merges_url\":\"https://api.github.com/repos/jacquev6/PyGithub/merges\",\"archive_url\":\"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}\",\"downloads_url\":\"https://api.github.com/repos/jacquev6/PyGithub/downloads\",\"issues_url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}\",\"pulls_url\":\"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}\",\"milestones_url\":\"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}\",\"notifications_url\":\"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}\",\"labels_url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}\",\"created_at\":\"2012-02-25T12:53:47Z\",\"updated_at\":\"2013-08-21T20:32:08Z\",\"pushed_at\":\"2013-08-21T20:31:45Z\",\"git_url\":\"git://github.com/jacquev6/PyGithub.git\",\"ssh_url\":\"git@github.com:jacquev6/PyGithub.git\",\"clone_url\":\"https://github.com/jacquev6/PyGithub.git\",\"svn_url\":\"https://github.com/jacquev6/PyGithub\",\"homepage\":\"http://jacquev6.github.com/PyGithub\",\"size\":7437,\"watchers_count\":248,\"language\":\"Python\",\"has_issues\":true,\"has_downloads\":true,\"has_wiki\":true,\"forks_count\":70,\"mirror_url\":null,\"open_issues_count\":17,\"forks\":70,\"open_issues\":17,\"watchers\":248,\"master_branch\":\"master\",\"default_branch\":\"master\"}}\n+"},{"sha":"3d4b27e8aa1282bb8401e6e2ae753044a7208686","filename":"github/tests/ReplayData/Status.testGetLastMessage.txt","status":"added","additions":11,"deletions":0,"changes":11,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/tests/ReplayData/Status.testGetLastMessage.txt","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/tests/ReplayData/Status.testGetLastMessage.txt","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/tests/ReplayData/Status.testGetLastMessage.txt?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -0,0 +1,11 @@\n+https\n+GET\n+status.github.com\n+443\n+/api/last-message.json\n+{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'}\n+null\n+200\n+[('status', '200 OK'), ('content-length', '93'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('connection', 'keep-alive'), ('date', 'Fri, 06 Sep 2013 08:34:01 GMT'), ('content-type', 'application/json;charset=utf-8')]\n+{\"status\":\"good\",\"body\":\"Everything operating normally.\",\"created_on\":\"2013-09-01T15:41:46Z\"}\n+"},{"sha":"6c79412a7a4039830228927d1ca5c9557298bdd3","filename":"github/tests/ReplayData/Status.testGetMessages.txt","status":"added","additions":11,"deletions":0,"changes":11,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/tests/ReplayData/Status.testGetMessages.txt","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/tests/ReplayData/Status.testGetMessages.txt","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/tests/ReplayData/Status.testGetMessages.txt?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -0,0 +1,11 @@\n+https\n+GET\n+status.github.com\n+443\n+/api/messages.json\n+{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'}\n+null\n+200\n+[('status', '200 OK'), ('content-length', '1492'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('connection', 'keep-alive'), ('date', 'Fri, 06 Sep 2013 08:41:31 GMT'), ('content-type', 'application/json;charset=utf-8')]\n+[{\"status\":\"good\",\"body\":\"Everything operating normally.\",\"created_on\":\"2013-09-01T15:41:46Z\"},{\"status\":\"minor\",\"body\":\"GitHub Pages are currently unavailable. We're investigating the problem.\",\"created_on\":\"2013-09-01T15:26:59Z\"},{\"status\":\"good\",\"body\":\"Everything operating normally.\",\"created_on\":\"2013-09-01T15:17:24Z\"},{\"status\":\"minor\",\"body\":\"We are investigating an increased rate of errors on GitHub.com\",\"created_on\":\"2013-09-01T15:14:24Z\"},{\"status\":\"good\",\"body\":\"Everything operating normally.\",\"created_on\":\"2013-09-01T06:52:46Z\"},{\"status\":\"minor\",\"body\":\"Some GitHub pages are again unavailable. We are continuing to investigate.\",\"created_on\":\"2013-09-01T06:50:31Z\"},{\"status\":\"good\",\"body\":\"Everything operating normally.\",\"created_on\":\"2013-09-01T06:47:25Z\"},{\"status\":\"minor\",\"body\":\"Some GitHub pages are temporarily unavailable.\",\"created_on\":\"2013-09-01T06:43:03Z\"},{\"status\":\"good\",\"body\":\"We're back up, now featuring a massively upgraded DB cluster with SSDs and 10Gbps networking! Thanks for your patience.\",\"created_on\":\"2013-08-31T12:13:04Z\"},{\"status\":\"major\",\"body\":\"We're beginning our scheduled maintenance now, and expect to be back up in 20 minutes. https://github.com/blog/1603-site-maintenance-august-31st-2013\",\"created_on\":\"2013-08-31T12:00:13Z\"},{\"status\":\"good\",\"body\":\"Everything operating normally.\",\"created_on\":\"2013-08-31T11:45:50Z\"},{\"status\":\"minor\",\"body\":\"We are investigating issues with GitHub Pages\",\"created_on\":\"2013-08-31T11:43:39Z\"}]\n+"},{"sha":"e01aec021bcb172a4eaf436c5d23e69594bc022f","filename":"github/tests/ReplayData/Status.testGetStatus.txt","status":"added","additions":11,"deletions":0,"changes":11,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/tests/ReplayData/Status.testGetStatus.txt","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/tests/ReplayData/Status.testGetStatus.txt","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/tests/ReplayData/Status.testGetStatus.txt?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -0,0 +1,11 @@\n+https\n+GET\n+status.github.com\n+443\n+/api/status.json\n+{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'}\n+null\n+200\n+[('status', '200 OK'), ('content-length', '55'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('connection', 'keep-alive'), ('date', 'Fri, 06 Sep 2013 08:29:36 GMT'), ('content-type', 'application/json;charset=utf-8')]\n+{\"status\":\"good\",\"last_updated\":\"2013-09-06T08:29:27Z\"}\n+"},{"sha":"0bb3c935ce2f4fa86d410b2759a4825e42bc44a3","filename":"github/tests/Status.py","status":"added","additions":43,"deletions":0,"changes":43,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/github/tests/Status.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/github/tests/Status.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/tests/Status.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -0,0 +1,43 @@\n+# -*- coding: utf-8 -*-\n+\n+############################ Copyrights and license ############################\n+# #\n+# Copyright 2013 Vincent Jacques #\n+# #\n+# This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ #\n+# #\n+# PyGithub is free software: you can redistribute it and/or modify it under #\n+# the terms of the GNU Lesser General Public License as published by the Free #\n+# Software Foundation, either version 3 of the License, or (at your option) #\n+# any later version. #\n+# #\n+# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY #\n+# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS #\n+# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more #\n+# details. #\n+# #\n+# You should have received a copy of the GNU Lesser General Public License #\n+# along with PyGithub. If not, see . #\n+# #\n+################################################################################\n+\n+import Framework\n+\n+import github\n+import datetime\n+\n+\n+class Status(Framework.TestCase):\n+ def testGetStatus(self):\n+ status = self.g.get_api_status()\n+ self.assertEqual(status.status, \"good\")\n+ self.assertEqual(status.last_updated, datetime.datetime(2013, 9, 6, 8, 29, 27))\n+\n+ def testGetLastMessage(self):\n+ message = self.g.get_last_api_status_message()\n+ self.assertEqual(message.status, \"good\")\n+ self.assertEqual(message.body, \"Everything operating normally.\")\n+ self.assertEqual(message.created_on, datetime.datetime(2013, 9, 1, 15, 41, 46))\n+\n+ def testGetMessages(self):\n+ self.assertListKeyEqual(self.g.get_api_status_messages(), lambda m: m.status, [\"good\", \"minor\", \"good\", \"minor\", \"good\", \"minor\", \"good\", \"minor\", \"good\", \"major\", \"good\", \"minor\"])"},{"sha":"3439c6f189e0bd05a747ff4c702518068fde7b3b","filename":"scripts/fix_headers.py","status":"modified","additions":2,"deletions":0,"changes":2,"blob_url":"https://github.com/jacquev6/PyGithub/blob/a6597499c2f82e063074a3036d875417d5efa296/scripts/fix_headers.py","raw_url":"https://github.com/jacquev6/PyGithub/raw/a6597499c2f82e063074a3036d875417d5efa296/scripts/fix_headers.py","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/scripts/fix_headers.py?ref=a6597499c2f82e063074a3036d875417d5efa296","patch":"@@ -132,6 +132,8 @@ def findHeadersAndFiles():\n dirs.remove(\".git\")\n if \"developer.github.com\" in dirs:\n dirs.remove(\"developer.github.com\")\n+ if \"build\" in dirs:\n+ dirs.remove(\"build\")\n \n for filename in files:\n fullname = os.path.join(root, filename)"}]} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/contentsREADME.rst +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4869'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '36bdc0ef-6149-4a8a-b4b5-3f8a82cf42aa'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '6577'), ('server', 'GitHub.com'), ('last-modified', 'Wed, 21 Aug 2013 16:39:22 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"bbffa70478199a10902bf5da76db3481"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:05:57 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378482241')] +{"name":"README.rst","path":"README.rst","sha":"7b03e11cebcf910764a583dd8be5b6824046459b","size":4271,"url":"https://api.github.com/repos/jacquev6/PyGithub/contents/README.rst?ref=master","html_url":"https://github.com/jacquev6/PyGithub/blob/master/README.rst","git_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/7b03e11cebcf910764a583dd8be5b6824046459b","type":"file","content":"VGhpcyBpcyBhIFB5dGhvbiAoMiBhbmQgMykgbGlicmFyeSB0byBhY2Nlc3Mg\ndGhlIGBHaXRodWIgQVBJIHYzIDxodHRwOi8vZGV2ZWxvcGVyLmdpdGh1Yi5j\nb20vdjM+YF8uCldpdGggaXQsIHlvdSBjYW4gbWFuYWdlIHlvdXIgYEdpdGh1\nYiA8aHR0cDovL2dpdGh1Yi5jb20+YF8gcmVzb3VyY2VzIChyZXBvc2l0b3Jp\nZXMsIHVzZXIgcHJvZmlsZXMsIG9yZ2FuaXphdGlvbnMsIGV0Yy4pIGZyb20g\nUHl0aG9uIHNjcmlwdHMuCgpJdCBjb3ZlcnMgdGhlICoqZnVsbCoqIEFQSSAo\nZXhjZXB0IHJlY2VudCBhZGRpdGlvbnMsIHNlZSAiV2hhdCdzIG1pc3Npbmci\nIGJlbGxvdyksIGFuZCBhbGwgbWV0aG9kcyBhcmUgdGVzdGVkIGFnYWluc3Qg\ndGhlIHJlYWwgR2l0aHViIHNpdGUuCgpTaG91bGQgeW91IGhhdmUgYW55IHF1\nZXN0aW9uLCBhbnkgcmVtYXJrLCBvciBpZiB5b3UgZmluZCBhIGJ1Zywgb3Ig\naWYgdGhlcmUgaXMgc29tZXRoaW5nIHlvdSBjYW4gZG8gd2l0aCB0aGUgQVBJ\nIGJ1dCBub3Qgd2l0aCBQeUdpdGh1YiwgcGxlYXNlIGBvcGVuIGFuIGlzc3Vl\nIDxodHRwczovL2dpdGh1Yi5jb20vamFjcXVldjYvUHlHaXRodWIvaXNzdWVz\nPmBfLgoKUHlHaXRodWIgaXMgc3RhYmxlLiBJIHdpbGwgbWFpbnRhaW4gaXQg\ndXAgdG8gZGF0ZSB3aXRoIHRoZSBBUEksIGFuZCBmaXggYnVncyBpZiBhbnks\nIGJ1dCBJIGRvbid0IHBsYW4gbmV3IGhlYXZ5IGRldmVsb3BtZW50cy4KCldo\nYXQncyBuZXc/Cj09PT09PT09PT09CgoKYFZlcnNpb24gMS4xOC4wIDxodHRw\nczovL2dpdGh1Yi5jb20vamFjcXVldjYvUHlHaXRodWIvaXNzdWVzP21pbGVz\ndG9uZT0zMCZzdGF0ZT1jbG9zZWQ+YF8gKEF1Z3VzdCAyMXN0LCAyMDEzKSAo\nQsOpbm9kZXQgZWRpdGlvbikKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLQoKKiBgSXNzdWVzIDxodHRwczovL2dpdGh1Yi5jb20vamFj\ncXVldjYvUHlHaXRodWIvcHVsbC8xODE+YF8nIGBgcmVwb3NpdG9yeWBgIGF0\ndHJpYnV0ZSB3aWxsIG5ldmVyIGJlIGBgTm9uZWBgLiBUaGFuayB5b3UgYHN0\ndWdsYXNlciA8aHR0cHM6Ly9naXRodWIuY29tL3N0dWdsYXNlcj5gXyBmb3Ig\ndGhlIHB1bGwgcmVxdWVzdAoqIE5vIG1vcmUgZmFsc2UgYXNzdW1wdGlvbiBv\nbiBgcmF0ZV9saW1pdGluZyA8aHR0cHM6Ly9naXRodWIuY29tL2phY3F1ZXY2\nL1B5R2l0aHViL3B1bGwvMTg2PmBfLCBhbmQgY3JlYXRpb24gb2YgYGByYXRl\nX2xpbWl0aW5nX3Jlc2V0dGltZWBgLiBUaGFuayB5b3UgYGVkamFja3NvbiA8\naHR0cHM6Ly9naXRodWIuY29tL2VkamFja3Nvbj5gXyBmb3IgdGhlIHB1bGwg\ncmVxdWVzdAoqIGBOZXcgPGh0dHBzOi8vZ2l0aHViLmNvbS9qYWNxdWV2Ni9Q\neUdpdGh1Yi9wdWxsLzE4Nz5gXyBwYXJhbWV0ZXJzIGBgc2luY2VgYCBhbmQg\nYGB1bnRpbGBgIHRvIGBgUmVwb3NpdG9yeS5nZXRfY29tbWl0c2BgLiBUaGFu\nayB5b3UgYGFwZXRyZXNjIDxodHRwczovL2dpdGh1Yi5jb20vYXBldHJlc2M+\nYF8gZm9yIHRoZSBwdWxsIHJlcXVlc3QKKiBgQ2F0Y2ggPGh0dHBzOi8vZ2l0\naHViLmNvbS9qYWNxdWV2Ni9QeUdpdGh1Yi9wdWxsLzE4Mj5gXyBKc29uIHBh\ncnNpbmcgZXhjZXB0aW9uIGZvciBzb21lIGludGVybmFsIHNlcnZlciBlcnJv\ncnMsIGFuZCB0aHJvdyBhIGJldHRlciBleGNlcHRpb24uIFRoYW5rIHlvdSBg\nTWFya1JvZGR5IDxodHRwczovL2dpdGh1Yi5jb20vTWFya1JvZGR5PmBfIGZv\nciB0aGUgcHVsbCByZXF1ZXN0CiogYEFsbG93IDxodHRwczovL2dpdGh1Yi5j\nb20vamFjcXVldjYvUHlHaXRodWIvcHVsbC8xODQ+YF8gcmV2ZXJzZWQgaXRl\ncmF0aW9uIG9mIGBgUGFnaW5hdGVkTGlzdGBgcy4gVGhhbmsgeW91IGBkYXZp\nZGJyYWkgPGh0dHBzOi8vZ2l0aHViLmNvbS9kYXZpZGJyYWk+YF8gZm9yIHRo\nZSBwdWxsIHJlcXVlc3QKCldoYXQncyBtaXNzaW5nPwo9PT09PT09PT09PT09\nPT0KCldlIG5vdyBoYXZlIGF1dG9tYXRlZCB3YXlzIHRvIGxpc3QgVVJMcyBk\nb2N1bWVudGVkIGluIGB0aGUgcmVmZXJlbmNlIG9mIEdpdGh1YiBBUEkgdjMg\nPGh0dHA6Ly9kZXZlbG9wZXIuZ2l0aHViLmNvbT5gXyBhbmQgbm90IGNvdmVy\nZWQgYnkgUHlHaXRodWIuCgpHaXRodWIgQVBJIHYzIFVSTHMgbm90ICh5ZXQp\nIGNvdmVyZWQgYnkgUHlHaXRodWIKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoqIGBgL2FwcGxpY2F0aW9ucy86\nY2xpZW50X2lkL3Rva2Vucy86YWNjZXNzX3Rva2VuYGAgKEdFVCkKKiBgYC9m\nZWVkc2BgIChHRVQpCiogYGAvZ2lzdHMvOmlkL2ZvcmtzYGAgKFBPU1QpCgog\nICogaW5zdGVhZCwgYGBHaXN0LmNyZWF0ZV9mb3JrYGAgY2FsbHMgdGhlIG9s\nZCBVUkwgYGAvZ2lzdHMvOmlkL2ZvcmtgYAoKKiBgYC9tZXRhYGAgKEdFVCkK\nKiBgYC9ub3RpZmljYXRpb25zYGAgKFBVVCkKKiBgYC9ub3RpZmljYXRpb25z\nL2VtYWlsc2BgIChHRVQpCiogYGAvbm90aWZpY2F0aW9ucy9lbWFpbHNgYCAo\nUEFUQ0gpCiogYGAvbm90aWZpY2F0aW9ucy9nbG9iYWwvZW1haWxzYGAgKEdF\nVCkKKiBgYC9ub3RpZmljYXRpb25zL2dsb2JhbC9lbWFpbHNgYCAoUFVUKQoq\nIGBgL25vdGlmaWNhdGlvbnMvb3JnYW5pemF0aW9uLzpvcmcvZW1haWxzYGAg\nKEdFVCkKKiBgYC9ub3RpZmljYXRpb25zL29yZ2FuaXphdGlvbi86b3JnL2Vt\nYWlsc2BgIChQVVQpCiogYGAvbm90aWZpY2F0aW9ucy9zZXR0aW5nc2BgIChH\nRVQpCiogYGAvbm90aWZpY2F0aW9ucy9zZXR0aW5nc2BgIChQQVRDSCkKKiBg\nYC9ub3RpZmljYXRpb25zL3RocmVhZHMvOmlkYGAgKFBBVENIKQoqIGBgL25v\ndGlmaWNhdGlvbnMvdGhyZWFkcy86aWQvc3Vic2NyaXB0aW9uYGAgKERFTEVU\nRSkKKiBgYC9ub3RpZmljYXRpb25zL3RocmVhZHMvOmlkL3N1YnNjcmlwdGlv\nbmBgIChHRVQpCiogYGAvbm90aWZpY2F0aW9ucy90aHJlYWRzLzppZC9zdWJz\nY3JpcHRpb25gYCAoUFVUKQoqIGBgL3JhdGVfbGltaXRgYCAoR0VUKQoKICAq\nIHNob3VsZCBiZSBjYWxsZWQgaW4gbWV0aG9kIGBgR2l0aHViLmdldF9yYXRl\nX2xpbWl0YGAuIFNlZSBhbHNvIGBgR2l0aHViLnJhdGVfbGltaXRpbmdgYAoK\nKiBgYC9yZXBvcy86b3duZXIvOnJlcG8vY29udGVudHMvOnBhdGhgYCAoREVM\nRVRFKQoqIGBgL3JlcG9zLzpvd25lci86cmVwby9jb250ZW50cy86cGF0aGBg\nIChQVVQpCiogYGAvcmVwb3MvOm93bmVyLzpyZXBvL2hvb2tzLzppZC90ZXN0\nc2BgIChQT1NUKQoKICAqIGluc3RlYWQsIGBgSG9vay50ZXN0YGAgY2FsbHMg\ndGhlIG9sZCBVUkwgYGAvcmVwb3MvOm93bmVyLzpyZXBvL2hvb2tzLzppZC90\nZXN0YGAKCiogYGAvcmVwb3MvOm93bmVyLzpyZXBvL25vdGlmaWNhdGlvbnNg\nYCAoR0VUKQoqIGBgL3JlcG9zLzpvd25lci86cmVwby9ub3RpZmljYXRpb25z\nYGAgKFBVVCkKKiBgYC9yZXBvcy86b3duZXIvOnJlcG8vc3RhdHMvY29kZV9m\ncmVxdWVuY3lgYCAoR0VUKQoqIGBgL3JlcG9zLzpvd25lci86cmVwby9zdGF0\ncy9jb21taXRfYWN0aXZpdHlgYCAoR0VUKQoqIGBgL3JlcG9zLzpvd25lci86\ncmVwby9zdGF0cy9jb250cmlidXRvcnNgYCAoR0VUKQoqIGBgL3JlcG9zLzpv\nd25lci86cmVwby9zdGF0cy9wYXJ0aWNpcGF0aW9uYGAgKEdFVCkKKiBgYC9y\nZXBvcy86b3duZXIvOnJlcG8vc3RhdHMvcHVuY2hfY2FyZGBgIChHRVQpCiog\nYGAvcmVwb3MvOm93bmVyLzpyZXBvL3N1YnNjcmlwdGlvbmBgIChERUxFVEUp\nCiogYGAvcmVwb3MvOm93bmVyLzpyZXBvL3N1YnNjcmlwdGlvbmBgIChHRVQp\nCiogYGAvcmVwb3MvOm93bmVyLzpyZXBvL3N1YnNjcmlwdGlvbmBgIChQVVQp\nCiogYGAvcmVwb3NpdG9yaWVzYGAgKEdFVCkKCiAgKiBzaG91bGQgYmUgY2Fs\nbGVkIGluIG1ldGhvZCBgYEdpdGh1Yi5nZXRfcmVwb3NgYAoKKiBgYC9zZWFy\nY2gvY29kZWBgIChHRVQpCiogYGAvc2VhcmNoL2lzc3Vlc2BgIChHRVQpCiog\nYGAvc2VhcmNoL3JlcG9zaXRvcmllc2BgIChHRVQpCiogYGAvc2VhcmNoL3Vz\nZXJzYGAgKEdFVCkKKiBgYC91c2Vycy86dXNlci9mb2xsb3dpbmcvOnRhcmdl\ndF91c2VyYGAgKEdFVCkKCiAgKiBzaG91bGQgYmUgY2FsbGVkIGluIG1ldGhv\nZCBgYE5hbWVkVXNlci5oYXNfaW5fZm9sbG93aW5nYGAKCkRvY3VtZW50YXRp\nb24KPT09PT09PT09PT09PQoKQWxsIHRoZSBkb2N1bWVudGF0aW9uIGlzIGhl\ncmU6IGh0dHA6Ly9qYWNxdWV2Ni5naXRodWIuY29tL1B5R2l0aHViLgo=\n","encoding":"base64","_links":{"self":"https://api.github.com/repos/jacquev6/PyGithub/contents/README.rst?ref=master","git":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/7b03e11cebcf910764a583dd8be5b6824046459b","html":"https://github.com/jacquev6/PyGithub/blob/master/README.rst"}} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/events +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4868'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', 'aad86338-b4d2-44ad-b094-37965f99ed02'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '150840'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 06 Sep 2013 12:41:05 GMT'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next"'), ('etag', '"815ffb5687c4d26df4a1e81e5de3ac7e"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:05:58 GMT'), ('access-control-allow-origin', '*'), ('x-poll-interval', '60'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378482241')] +[{"id":"1823555573","type":"DeleteEvent","actor":{"id":327146,"login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fa248.e.akamai.net%2Fassets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"},"repo":{"id":3544490,"name":"jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub"},"payload":{"ref":"topic/ImproveDocumentation","ref_type":"branch"},"public":true,"created_at":"2013-09-06T12:41:05Z"},{"id":"1823554600","type":"DeleteEvent","actor":{"id":327146,"login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fa248.e.akamai.net%2Fassets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"},"repo":{"id":3544490,"name":"jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub"},"payload":{"ref":"topic/SpecificExceptions","ref_type":"branch"},"public":true,"created_at":"2013-09-06T12:39:45Z"},{"id":"1823452056","type":"IssueCommentEvent","actor":{"id":327146,"login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fa248.e.akamai.net%2Fassets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"},"repo":{"id":3544490,"name":"jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub"},"payload":{"action":"created","issue":{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/163","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/163/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/163/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/163/events","html_url":"https://github.com/jacquev6/PyGithub/issues/163","id":13924435,"number":163,"title":"Looking to help out","user":{"login":"shercoder","id":1681066,"avatar_url":"https://1.gravatar.com/avatar/3bc7caad2383726988f7834c6800f7f9?d=https%3A%2F%2Fidenticons.github.com%2F902797e4e8c74be19dce4e4640f8b455.png","gravatar_id":"3bc7caad2383726988f7834c6800f7f9","url":"https://api.github.com/users/shercoder","html_url":"https://github.com/shercoder","followers_url":"https://api.github.com/users/shercoder/followers","following_url":"https://api.github.com/users/shercoder/following{/other_user}","gists_url":"https://api.github.com/users/shercoder/gists{/gist_id}","starred_url":"https://api.github.com/users/shercoder/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shercoder/subscriptions","organizations_url":"https://api.github.com/users/shercoder/orgs","repos_url":"https://api.github.com/users/shercoder/repos","events_url":"https://api.github.com/users/shercoder/events{/privacy}","received_events_url":"https://api.github.com/users/shercoder/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/28","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/28/labels","id":358501,"number":28,"title":"Issues assigned to volunteers","description":"This (fake) milestone groups all issues on which a volunteer is working.","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://2.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":3,"closed_issues":0,"state":"open","created_at":"2013-06-18T20:42:13Z","updated_at":"2013-08-20T21:27:13Z","due_on":null},"comments":3,"created_at":"2013-05-03T07:39:10Z","updated_at":"2013-09-06T10:04:19Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hey my friend introduced me to your project and we have already started to use it in our small projects.I am looking to help out. Is there anything that i can do to help out in your project. If there is anything that I can help you with, please let me know. Thank you"},"comment":{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/23930309","html_url":"https://github.com/jacquev6/PyGithub/issues/163#issuecomment-23930309","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/163","id":23930309,"user":{"login":"jacquev6","id":327146,"avatar_url":"https://2.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"created_at":"2013-09-06T10:04:19Z","updated_at":"2013-09-06T10:04:19Z","body":"Update: some missing functionalities are now listed in [README.rst](https://github.com/jacquev6/PyGithub/blob/master/README.rst)"}},"public":true,"created_at":"2013-09-06T10:04:19Z"},{"id":"1823450347","type":"IssueCommentEvent","actor":{"id":327146,"login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fa248.e.akamai.net%2Fassets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"},"repo":{"id":3544490,"name":"jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub"},"payload":{"action":"created","issue":{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/179","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/179/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/179/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/179/events","html_url":"https://github.com/jacquev6/PyGithub/pull/179","id":15885976,"number":179,"title":"Automatic rety, empty repo handling and updated arguments for get_commits","user":{"login":"wcdolphin","id":446889,"avatar_url":"https://1.gravatar.com/avatar/3202f845a8cafe9729d397649dfadd3a?d=https%3A%2F%2Fidenticons.github.com%2F37f8d4e8ebdd8ce92fbb3503fe9aa31a.png","gravatar_id":"3202f845a8cafe9729d397649dfadd3a","url":"https://api.github.com/users/wcdolphin","html_url":"https://github.com/wcdolphin","followers_url":"https://api.github.com/users/wcdolphin/followers","following_url":"https://api.github.com/users/wcdolphin/following{/other_user}","gists_url":"https://api.github.com/users/wcdolphin/gists{/gist_id}","starred_url":"https://api.github.com/users/wcdolphin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wcdolphin/subscriptions","organizations_url":"https://api.github.com/users/wcdolphin/orgs","repos_url":"https://api.github.com/users/wcdolphin/repos","events_url":"https://api.github.com/users/wcdolphin/events{/privacy}","received_events_url":"https://api.github.com/users/wcdolphin/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/28","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/28/labels","id":358501,"number":28,"title":"Issues assigned to volunteers","description":"This (fake) milestone groups all issues on which a volunteer is working.","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":3,"closed_issues":0,"state":"open","created_at":"2013-06-18T20:42:13Z","updated_at":"2013-08-20T21:27:13Z","due_on":null},"comments":3,"created_at":"2013-06-22T15:59:01Z","updated_at":"2013-09-06T10:02:07Z","closed_at":null,"pull_request":{"html_url":"https://github.com/jacquev6/PyGithub/pull/179","diff_url":"https://github.com/jacquev6/PyGithub/pull/179.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/179.patch"},"body":"This PR adds:\r\n1. Automatic retrying on failure of an idempotent request, up to a default of 5 times.\r\n2. Handling and raising of EmptyRepositoryException which can be emitted by a call to get_commits\r\n3. Updated arguments for Repository.get_commits, reflecting the url_params for Github API V3\r\n\r\nPlease let me know if you have any feedback on style, etc. I will happily address. \r\n "},"comment":{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/23930203","html_url":"https://github.com/jacquev6/PyGithub/pull/179#issuecomment-23930203","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/179","id":23930203,"user":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"created_at":"2013-09-06T10:02:07Z","updated_at":"2013-09-06T10:02:07Z","body":"Hello @wcdolphin,\r\n\r\ndo you still plan to work on this? If not, it's not a problem. I ask you this now because I'm going to have time to do it on my side in the coming days.\r\n\r\nThanks,"}},"public":true,"created_at":"2013-09-06T10:02:07Z"},{"id":"1823413095","type":"IssuesEvent","actor":{"id":327146,"login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fa248.e.akamai.net%2Fassets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"},"repo":{"id":3544490,"name":"jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub"},"payload":{"action":"closed","issue":{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/188","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/188/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/188/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/188/events","html_url":"https://github.com/jacquev6/PyGithub/issues/188","id":17736533,"number":188,"title":"Getting the status of GitHub","user":{"login":"ruxandraburtica","id":797922,"avatar_url":"https://2.gravatar.com/avatar/5703c5907fc67b679be40fd307b07733?d=https%3A%2F%2Fidenticons.github.com%2F470a720db37e19afad67c34e30ffcd85.png","gravatar_id":"5703c5907fc67b679be40fd307b07733","url":"https://api.github.com/users/ruxandraburtica","html_url":"https://github.com/ruxandraburtica","followers_url":"https://api.github.com/users/ruxandraburtica/followers","following_url":"https://api.github.com/users/ruxandraburtica/following{/other_user}","gists_url":"https://api.github.com/users/ruxandraburtica/gists{/gist_id}","starred_url":"https://api.github.com/users/ruxandraburtica/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ruxandraburtica/subscriptions","organizations_url":"https://api.github.com/users/ruxandraburtica/orgs","repos_url":"https://api.github.com/users/ruxandraburtica/repos","events_url":"https://api.github.com/users/ruxandraburtica/events{/privacy}","received_events_url":"https://api.github.com/users/ruxandraburtica/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/31","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/31/labels","id":402388,"number":31,"title":"Version 1.19.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":1,"closed_issues":3,"state":"open","created_at":"2013-08-15T05:54:47Z","updated_at":"2013-09-06T09:11:57Z","due_on":null},"comments":2,"created_at":"2013-08-07T08:57:49Z","updated_at":"2013-09-06T09:11:57Z","closed_at":"2013-09-06T09:11:57Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Maybe I haven't found it, but it would be very useful to have methods for checking the status of the GitHub API (https://status.github.com/api)"}},"public":true,"created_at":"2013-09-06T09:11:58Z"},{"id":"1823413094","type":"IssueCommentEvent","actor":{"id":327146,"login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fa248.e.akamai.net%2Fassets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"},"repo":{"id":3544490,"name":"jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub"},"payload":{"action":"created","issue":{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/188","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/188/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/188/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/188/events","html_url":"https://github.com/jacquev6/PyGithub/issues/188","id":17736533,"number":188,"title":"Getting the status of GitHub","user":{"login":"ruxandraburtica","id":797922,"avatar_url":"https://2.gravatar.com/avatar/5703c5907fc67b679be40fd307b07733?d=https%3A%2F%2Fidenticons.github.com%2F470a720db37e19afad67c34e30ffcd85.png","gravatar_id":"5703c5907fc67b679be40fd307b07733","url":"https://api.github.com/users/ruxandraburtica","html_url":"https://github.com/ruxandraburtica","followers_url":"https://api.github.com/users/ruxandraburtica/followers","following_url":"https://api.github.com/users/ruxandraburtica/following{/other_user}","gists_url":"https://api.github.com/users/ruxandraburtica/gists{/gist_id}","starred_url":"https://api.github.com/users/ruxandraburtica/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ruxandraburtica/subscriptions","organizations_url":"https://api.github.com/users/ruxandraburtica/orgs","repos_url":"https://api.github.com/users/ruxandraburtica/repos","events_url":"https://api.github.com/users/ruxandraburtica/events{/privacy}","received_events_url":"https://api.github.com/users/ruxandraburtica/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/31","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/31/labels","id":402388,"number":31,"title":"Version 1.19.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":1,"closed_issues":3,"state":"open","created_at":"2013-08-15T05:54:47Z","updated_at":"2013-09-06T09:11:57Z","due_on":null},"comments":2,"created_at":"2013-08-07T08:57:49Z","updated_at":"2013-09-06T09:11:57Z","closed_at":"2013-09-06T09:11:57Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Maybe I haven't found it, but it would be very useful to have methods for checking the status of the GitHub API (https://status.github.com/api)"},"comment":{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/23927975","html_url":"https://github.com/jacquev6/PyGithub/issues/188#issuecomment-23927975","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/188","id":23927975,"user":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"created_at":"2013-09-06T09:11:57Z","updated_at":"2013-09-06T09:11:57Z","body":"Done, will be in next release!"}},"public":true,"created_at":"2013-09-06T09:11:58Z"},{"id":"1823408513","type":"PushEvent","actor":{"id":327146,"login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fa248.e.akamai.net%2Fassets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"},"repo":{"id":3544490,"name":"jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub"},"payload":{"push_id":225103902,"size":5,"distinct_size":5,"ref":"refs/heads/develop","head":"a6597499c2f82e063074a3036d875417d5efa296","before":"1d0ba7ef6461ccdd25af74bfed61d3ceb5bc926d","commits":[{"sha":"dc610dfaac50dd5bbbd572986cda35f6729aee5b","author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques"},"message":"Small fixes and todos","distinct":true,"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/dc610dfaac50dd5bbbd572986cda35f6729aee5b"},{"sha":"2081675afbfed404f6a580bce0ec363bebbfd98b","author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques"},"message":"Fix doc generation","distinct":true,"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2081675afbfed404f6a580bce0ec363bebbfd98b"},{"sha":"f2feb81dae1b28af80c559db7328f2d6fe017911","author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques"},"message":"Add default parameters to greatly reduce code redoundancy","distinct":true,"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/f2feb81dae1b28af80c559db7328f2d6fe017911"},{"sha":"c819580ce872f251e8ec23deee95d9fb15ca19c9","author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques"},"message":"Get status of Github API (#188)","distinct":true,"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c819580ce872f251e8ec23deee95d9fb15ca19c9"},{"sha":"a6597499c2f82e063074a3036d875417d5efa296","author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques"},"message":"Merge branch 'topic/ApiStatus' into develop","distinct":true,"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a6597499c2f82e063074a3036d875417d5efa296"}]},"public":true,"created_at":"2013-09-06T09:05:12Z"},{"id":"1823374294","type":"PullRequestEvent","actor":{"id":327146,"login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fa248.e.akamai.net%2Fassets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"},"repo":{"id":3544490,"name":"jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub"},"payload":{"action":"closed","number":193,"pull_request":{"url":"https://api.github.com/repos/jacquev6/PyGithub/pulls/193","id":7785326,"html_url":"https://github.com/jacquev6/PyGithub/pull/193","diff_url":"https://github.com/jacquev6/PyGithub/pull/193.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/193.patch","issue_url":"https://github.com/jacquev6/PyGithub/pull/193","number":193,"state":"closed","title":"Add Conditional Request and Data Persistence Support Alternative Solution","user":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"body":"An alternative solution to pull request #189 based on #192. I am making this new pull request for clarity.\r\nChange List\r\n---------------\r\n1. Add support to [Conditional Request](http://developer.github.com/guides/getting-started/#conditional-requests) API.\r\n * Add ```GithubObject.etag``` property\r\n * Add ```GithubObject.last_modified``` property\r\n * Modify ```Requester``` class to handle 304 response code\r\n * Modify ```Requester``` class to enable making conditional request\r\n * Add ```NotModifiedException``` class for 304 response code\r\n * Add ```GithubObject.update()``` method\r\n * Add a few private helper methods to make this work\r\n2. Add methods for Data Persistence\r\n * Add ```GithubObject.save(file_fname)``` method\r\n * Add ```GithubObject.load(file_fname)``` class method\r\n3. Test class for conditional request\r\n\r\nUsage\r\n---------------\r\n```python\r\n# Get remote issue list and cache locally when syncing\r\nfor issue in repo.get_issues():\r\n issue.save(local_file_path)\r\n\r\n# Offline use/Quick restore previous work state\r\nfor local_file_path in cache.get_files():\r\n cached_issue = issue.load(local_file_path)\r\n #do something with it\r\n\r\n# And check for update when needed\r\nif (cached_issue.update()):\r\n print \"Issue synced“\r\n\r\n```","created_at":"2013-08-22T10:14:26Z","updated_at":"2013-09-06T08:15:35Z","closed_at":"2013-09-06T08:15:35Z","merged_at":null,"merge_commit_sha":"de0e83166f4cc5d6cb177b12b313bb0844e89a12","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/31","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/31/labels","id":402388,"number":31,"title":"Version 1.19.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":2,"closed_issues":2,"state":"open","created_at":"2013-08-15T05:54:47Z","updated_at":"2013-09-06T08:15:35Z","due_on":null},"commits_url":"https://github.com/jacquev6/PyGithub/pull/193/commits","review_comments_url":"https://github.com/jacquev6/PyGithub/pull/193/comments","review_comment_url":"/repos/jacquev6/PyGithub/pulls/comments/{number}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/193/comments","head":{"label":"akfish:NewFix","ref":"NewFix","sha":"ebbfec86a2fb352cc08e3595a6b58fa1ccccc111","user":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"repo":{"id":12156762,"name":"PyGithub","full_name":"akfish/PyGithub","owner":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"private":false,"html_url":"https://github.com/akfish/PyGithub","description":"Python library implementing the full Github API v3 - AKFish Fork","fork":true,"url":"https://api.github.com/repos/akfish/PyGithub","forks_url":"https://api.github.com/repos/akfish/PyGithub/forks","keys_url":"https://api.github.com/repos/akfish/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/akfish/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/akfish/PyGithub/teams","hooks_url":"https://api.github.com/repos/akfish/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/akfish/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/akfish/PyGithub/events","assignees_url":"https://api.github.com/repos/akfish/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/akfish/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/akfish/PyGithub/tags","blobs_url":"https://api.github.com/repos/akfish/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/akfish/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/akfish/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/akfish/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/akfish/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/akfish/PyGithub/languages","stargazers_url":"https://api.github.com/repos/akfish/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/akfish/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/akfish/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/akfish/PyGithub/subscription","commits_url":"https://api.github.com/repos/akfish/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/akfish/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/akfish/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/akfish/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/akfish/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/akfish/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/akfish/PyGithub/merges","archive_url":"https://api.github.com/repos/akfish/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/akfish/PyGithub/downloads","issues_url":"https://api.github.com/repos/akfish/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/akfish/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/akfish/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/akfish/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/akfish/PyGithub/labels{/name}","created_at":"2013-08-16T10:56:11Z","updated_at":"2013-09-06T08:15:35Z","pushed_at":"2013-08-27T11:14:27Z","git_url":"git://github.com/akfish/PyGithub.git","ssh_url":"git@github.com:akfish/PyGithub.git","clone_url":"https://github.com/akfish/PyGithub.git","svn_url":"https://github.com/akfish/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":7340,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":true,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"master_branch":"master","default_branch":"master"}},"base":{"label":"jacquev6:develop","ref":"develop","sha":"ba5b0d5ea93d362ecd8b5a91701a9c62c385d008","user":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"repo":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-09-06T08:12:07Z","pushed_at":"2013-09-06T08:12:06Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":828,"watchers_count":256,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":76,"mirror_url":null,"open_issues_count":16,"forks":76,"open_issues":16,"watchers":256,"master_branch":"master","default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/193"},"html":{"href":"https://github.com/jacquev6/PyGithub/pull/193"},"issue":{"href":"https://api.github.com/repos/jacquev6/PyGithub/issues/193"},"comments":{"href":"https://api.github.com/repos/jacquev6/PyGithub/issues/193/comments"},"review_comments":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/193/comments"}},"merged":false,"mergeable":false,"mergeable_state":"dirty","merged_by":null,"comments":12,"review_comments":1,"commits":40,"additions":1669,"deletions":45,"changed_files":41}},"public":true,"created_at":"2013-09-06T08:15:35Z"},{"id":"1823374292","type":"IssueCommentEvent","actor":{"id":327146,"login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fa248.e.akamai.net%2Fassets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"},"repo":{"id":3544490,"name":"jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub"},"payload":{"action":"created","issue":{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/193","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/193/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/193/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/193/events","html_url":"https://github.com/jacquev6/PyGithub/pull/193","id":18404629,"number":193,"title":"Add Conditional Request and Data Persistence Support Alternative Solution","user":{"login":"akfish","id":922715,"avatar_url":"https://0.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"labels":[],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://1.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/31","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/31/labels","id":402388,"number":31,"title":"Version 1.19.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://1.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":2,"closed_issues":2,"state":"open","created_at":"2013-08-15T05:54:47Z","updated_at":"2013-09-06T08:15:35Z","due_on":null},"comments":12,"created_at":"2013-08-22T10:14:26Z","updated_at":"2013-09-06T08:15:35Z","closed_at":"2013-09-06T08:15:35Z","pull_request":{"html_url":"https://github.com/jacquev6/PyGithub/pull/193","diff_url":"https://github.com/jacquev6/PyGithub/pull/193.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/193.patch"},"body":"An alternative solution to pull request #189 based on #192. I am making this new pull request for clarity.\r\nChange List\r\n---------------\r\n1. Add support to [Conditional Request](http://developer.github.com/guides/getting-started/#conditional-requests) API.\r\n * Add ```GithubObject.etag``` property\r\n * Add ```GithubObject.last_modified``` property\r\n * Modify ```Requester``` class to handle 304 response code\r\n * Modify ```Requester``` class to enable making conditional request\r\n * Add ```NotModifiedException``` class for 304 response code\r\n * Add ```GithubObject.update()``` method\r\n * Add a few private helper methods to make this work\r\n2. Add methods for Data Persistence\r\n * Add ```GithubObject.save(file_fname)``` method\r\n * Add ```GithubObject.load(file_fname)``` class method\r\n3. Test class for conditional request\r\n\r\nUsage\r\n---------------\r\n```python\r\n# Get remote issue list and cache locally when syncing\r\nfor issue in repo.get_issues():\r\n issue.save(local_file_path)\r\n\r\n# Offline use/Quick restore previous work state\r\nfor local_file_path in cache.get_files():\r\n cached_issue = issue.load(local_file_path)\r\n #do something with it\r\n\r\n# And check for update when needed\r\nif (cached_issue.update()):\r\n print \"Issue synced“\r\n\r\n```"},"comment":{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/23925438","html_url":"https://github.com/jacquev6/PyGithub/pull/193#issuecomment-23925438","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/193","id":23925438,"user":{"login":"jacquev6","id":327146,"avatar_url":"https://1.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"created_at":"2013-09-06T08:15:35Z","updated_at":"2013-09-06T08:15:35Z","body":"I'm glad it suits your needs, I've just merged conditional requests and persistence in the `develop` branch. It will be in next release, probably this week-end.\r\n\r\nIt has been a pleasure to collaborate with you, thank you :-)"}},"public":true,"created_at":"2013-09-06T08:15:35Z"},{"id":"1823372143","type":"DeleteEvent","actor":{"id":327146,"login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fa248.e.akamai.net%2Fassets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"},"repo":{"id":3544490,"name":"jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub"},"payload":{"ref":"topic/ConditionalRequest","ref_type":"branch"},"public":true,"created_at":"2013-09-06T08:12:07Z"},{"id":"1823371399","type":"PushEvent","actor":{"id":327146,"login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fa248.e.akamai.net%2Fassets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"},"repo":{"id":3544490,"name":"jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub"},"payload":{"push_id":225082808,"size":28,"distinct_size":4,"ref":"refs/heads/develop","head":"1d0ba7ef6461ccdd25af74bfed61d3ceb5bc926d","before":"ba5b0d5ea93d362ecd8b5a91701a9c62c385d008","commits":[{"sha":"b71329e560795a4df84cb419178ef660824f4c0d","author":{"email":"akfish@gmail.com","name":"AKFish"},"message":"Implement data persistence","distinct":false,"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b71329e560795a4df84cb419178ef660824f4c0d"},{"sha":"bd7abb58772ae1a61fd7eb44308a3a2f60432ad6","author":{"email":"akfish@gmail.com","name":"AKFish"},"message":"Add update() method","distinct":false,"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/bd7abb58772ae1a61fd7eb44308a3a2f60432ad6"},{"sha":"1e9ec2df089973db73aaf99b4ef147efd4614e7c","author":{"email":"akfish@gmail.com","name":"AKFish"},"message":"Add NotModifiedException class","distinct":false,"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1e9ec2df089973db73aaf99b4ef147efd4614e7c"},{"sha":"6fd05baf6bea732dd846e08c40891c28060e7c64","author":{"email":"akfish@gmail.com","name":"AKFish"},"message":"Handle response code 304","distinct":false,"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6fd05baf6bea732dd846e08c40891c28060e7c64"},{"sha":"5b09f6c82191601cad92076ad4761fe927c511ed","author":{"email":"akfish@gmail.com","name":"AKFish"},"message":"Implement conditional request","distinct":false,"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5b09f6c82191601cad92076ad4761fe927c511ed"},{"sha":"70a7e9c83dec2bf6b549dc5c77d30b53afb32457","author":{"email":"akfish@gmail.com","name":"AKFish"},"message":"Fix update","distinct":false,"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/70a7e9c83dec2bf6b549dc5c77d30b53afb32457"},{"sha":"d457afd23ccb47d9f30f09a6ca2a8e32f17dccc7","author":{"email":"akfish@gmail.com","name":"AKFish"},"message":"Add test record helper","distinct":false,"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/d457afd23ccb47d9f30f09a6ca2a8e32f17dccc7"},{"sha":"c7593e84c4a92a044b717b7311c2b6ad8d9a5917","author":{"email":"akfish@gmail.com","name":"AKFish"},"message":"Add test case for conditional request","distinct":false,"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c7593e84c4a92a044b717b7311c2b6ad8d9a5917"},{"sha":"cc1bcd5f2da1982a0836a488cf321d363bfcf5b5","author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques"},"message":"Merge branch 'develop' into topic/ConditionalRequest\n\nConflicts:\n\t.gitignore\n\tgithub/Requester.py","distinct":false,"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cc1bcd5f2da1982a0836a488cf321d363bfcf5b5"},{"sha":"1787765a61958617d47e764a0bea2acd70c84f72","author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques"},"message":"Review of #189: use dict.get\n\nhttp://docs.python.org/2/library/stdtypes.html#dict.get","distinct":false,"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1787765a61958617d47e764a0bea2acd70c84f72"},{"sha":"0f74e4389b3c0fa57a83083ecfbbf5c331022674","author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques"},"message":"Review of #189: pep8, copyrights, style, remarks\n\nFor remarks, run: git grep \"#189\"\nThey are only my first thoughts while reviewing this pull request,\nand should be reviewed themselves.","distinct":false,"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0f74e4389b3c0fa57a83083ecfbbf5c331022674"},{"sha":"fb7325884ee0b8ae73f47bf13c6f36cacbc3131c","author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques"},"message":"Fix remarks on #189 to #193","distinct":false,"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/fb7325884ee0b8ae73f47bf13c6f36cacbc3131c"},{"sha":"0413c87c12e688fb4fc38d978a2f275ef791cd48","author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques"},"message":"Remove _record_.py (#193)\n\nAccording to https://github.com/jacquev6/PyGithub/commit/0f74e4389b3c0fa57a83083ecfbbf5c331022674#commitcomment-3919786","distinct":false,"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0413c87c12e688fb4fc38d978a2f275ef791cd48"},{"sha":"bc3b819ac554a2132427c9ffe629ef371511213e","author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques"},"message":"Separate tests for conditional requests (#193)","distinct":false,"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/bc3b819ac554a2132427c9ffe629ef371511213e"},{"sha":"bae0a37d180a4b224c6aa808d03722908109c57d","author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques"},"message":"#193: Don't use a try-except for a usual execution flow in GithubObject.update\n\n(and factorize assignment of headers in _storeAndUseAttributes,\nas done for rawData)","distinct":false,"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/bae0a37d180a4b224c6aa808d03722908109c57d"},{"sha":"03d7fb012e9d032165c43f93a4c67bc29af9366f","author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques"},"message":"#193: Add remarks","distinct":false,"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/03d7fb012e9d032165c43f93a4c67bc29af9366f"},{"sha":"64cf539c83174f95b3410c7decd2549424385ce1","author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques"},"message":"#193: Add a param to Requester.requestXxx for request headers","distinct":false,"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/64cf539c83174f95b3410c7decd2549424385ce1"},{"sha":"e084b5138106d4ad371a69ca9519862f09c855ae","author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques"},"message":"#193: Fix test coverage","distinct":false,"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e084b5138106d4ad371a69ca9519862f09c855ae"},{"sha":"020a3c9917f42d98c1761527825061d2db8352fd","author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques"},"message":"Move method update to CompletableGithubObject","distinct":false,"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/020a3c9917f42d98c1761527825061d2db8352fd"},{"sha":"fb6980ce36766e4dd1ab03b48ac4b5adf876dc84","author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques"},"message":"Move the DEBUG_ON_RESPONSE call to Requester.__requestEncode","distinct":false,"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/fb6980ce36766e4dd1ab03b48ac4b5adf876dc84"}]},"public":true,"created_at":"2013-09-06T08:10:53Z"},{"id":"1823216085","type":"IssueCommentEvent","actor":{"id":922715,"login":"akfish","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","avatar_url":"https://0.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fa248.e.akamai.net%2Fassets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"},"repo":{"id":3544490,"name":"jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub"},"payload":{"action":"created","issue":{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/193","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/193/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/193/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/193/events","html_url":"https://github.com/jacquev6/PyGithub/pull/193","id":18404629,"number":193,"title":"Add Conditional Request and Data Persistence Support Alternative Solution","user":{"login":"akfish","id":922715,"avatar_url":"https://1.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"labels":[],"state":"open","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://1.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/31","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/31/labels","id":402388,"number":31,"title":"Version 1.19.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://1.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":3,"closed_issues":1,"state":"open","created_at":"2013-08-15T05:54:47Z","updated_at":"2013-09-04T13:41:07Z","due_on":null},"comments":11,"created_at":"2013-08-22T10:14:26Z","updated_at":"2013-09-06T02:24:06Z","closed_at":null,"pull_request":{"html_url":"https://github.com/jacquev6/PyGithub/pull/193","diff_url":"https://github.com/jacquev6/PyGithub/pull/193.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/193.patch"},"body":"An alternative solution to pull request #189 based on #192. I am making this new pull request for clarity.\r\nChange List\r\n---------------\r\n1. Add support to [Conditional Request](http://developer.github.com/guides/getting-started/#conditional-requests) API.\r\n * Add ```GithubObject.etag``` property\r\n * Add ```GithubObject.last_modified``` property\r\n * Modify ```Requester``` class to handle 304 response code\r\n * Modify ```Requester``` class to enable making conditional request\r\n * Add ```NotModifiedException``` class for 304 response code\r\n * Add ```GithubObject.update()``` method\r\n * Add a few private helper methods to make this work\r\n2. Add methods for Data Persistence\r\n * Add ```GithubObject.save(file_fname)``` method\r\n * Add ```GithubObject.load(file_fname)``` class method\r\n3. Test class for conditional request\r\n\r\nUsage\r\n---------------\r\n```python\r\n# Get remote issue list and cache locally when syncing\r\nfor issue in repo.get_issues():\r\n issue.save(local_file_path)\r\n\r\n# Offline use/Quick restore previous work state\r\nfor local_file_path in cache.get_files():\r\n cached_issue = issue.load(local_file_path)\r\n #do something with it\r\n\r\n# And check for update when needed\r\nif (cached_issue.update()):\r\n print \"Issue synced“\r\n\r\n```"},"comment":{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/23915193","html_url":"https://github.com/jacquev6/PyGithub/pull/193#issuecomment-23915193","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/193","id":23915193,"user":{"login":"akfish","id":922715,"avatar_url":"https://1.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"created_at":"2013-09-06T02:24:06Z","updated_at":"2013-09-06T02:24:06Z","body":"Well, never mind my previous comments. I think your implementation will work nicely.\r\nThough the pickle format cross-version compatibility still troubles me. I will try it out with some projects and see if a more flexible serialization mechanism (i.e. let developer specify which serializer to use, pickle, JSON, XML and etc) is necessary. \r\nFor now I am happy with that. Thanks."}},"public":true,"created_at":"2013-09-06T02:24:07Z"},{"id":"1823212876","type":"ForkEvent","actor":{"id":1676891,"login":"wadewilliams","gravatar_id":"21a241aa10ee457a5f6b72aca98a4860","url":"https://api.github.com/users/wadewilliams","avatar_url":"https://1.gravatar.com/avatar/21a241aa10ee457a5f6b72aca98a4860?d=https%3A%2F%2Fa248.e.akamai.net%2Fassets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"},"repo":{"id":3544490,"name":"jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub"},"payload":{"forkee":{"id":12633886,"name":"PyGithub","full_name":"wadewilliams/PyGithub","owner":{"login":"wadewilliams","id":1676891,"avatar_url":"https://0.gravatar.com/avatar/21a241aa10ee457a5f6b72aca98a4860?d=https%3A%2F%2Fidenticons.github.com%2F49f04213eb6f9bbf8e6ec031c55c4e31.png","gravatar_id":"21a241aa10ee457a5f6b72aca98a4860","url":"https://api.github.com/users/wadewilliams","html_url":"https://github.com/wadewilliams","followers_url":"https://api.github.com/users/wadewilliams/followers","following_url":"https://api.github.com/users/wadewilliams/following{/other_user}","gists_url":"https://api.github.com/users/wadewilliams/gists{/gist_id}","starred_url":"https://api.github.com/users/wadewilliams/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wadewilliams/subscriptions","organizations_url":"https://api.github.com/users/wadewilliams/orgs","repos_url":"https://api.github.com/users/wadewilliams/repos","events_url":"https://api.github.com/users/wadewilliams/events{/privacy}","received_events_url":"https://api.github.com/users/wadewilliams/received_events","type":"User"},"private":false,"html_url":"https://github.com/wadewilliams/PyGithub","description":"Python library implementing the full Github API v3","fork":true,"url":"https://api.github.com/repos/wadewilliams/PyGithub","forks_url":"https://api.github.com/repos/wadewilliams/PyGithub/forks","keys_url":"https://api.github.com/repos/wadewilliams/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/wadewilliams/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/wadewilliams/PyGithub/teams","hooks_url":"https://api.github.com/repos/wadewilliams/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/wadewilliams/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/wadewilliams/PyGithub/events","assignees_url":"https://api.github.com/repos/wadewilliams/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/wadewilliams/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/wadewilliams/PyGithub/tags","blobs_url":"https://api.github.com/repos/wadewilliams/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/wadewilliams/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/wadewilliams/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/wadewilliams/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/wadewilliams/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/wadewilliams/PyGithub/languages","stargazers_url":"https://api.github.com/repos/wadewilliams/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/wadewilliams/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/wadewilliams/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/wadewilliams/PyGithub/subscription","commits_url":"https://api.github.com/repos/wadewilliams/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/wadewilliams/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/wadewilliams/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/wadewilliams/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/wadewilliams/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/wadewilliams/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/wadewilliams/PyGithub/merges","archive_url":"https://api.github.com/repos/wadewilliams/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/wadewilliams/PyGithub/downloads","issues_url":"https://api.github.com/repos/wadewilliams/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/wadewilliams/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/wadewilliams/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/wadewilliams/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/wadewilliams/PyGithub/labels{/name}","created_at":"2013-09-06T02:17:04Z","updated_at":"2013-09-06T02:17:04Z","pushed_at":"2013-09-05T15:53:48Z","git_url":"git://github.com/wadewilliams/PyGithub.git","ssh_url":"git@github.com:wadewilliams/PyGithub.git","clone_url":"https://github.com/wadewilliams/PyGithub.git","svn_url":"https://github.com/wadewilliams/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":824,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":true,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"master_branch":"master","default_branch":"master","public":true}},"public":true,"created_at":"2013-09-06T02:17:05Z"},{"id":"1822756531","type":"IssueCommentEvent","actor":{"id":922715,"login":"akfish","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","avatar_url":"https://0.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fa248.e.akamai.net%2Fassets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"},"repo":{"id":3544490,"name":"jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub"},"payload":{"action":"created","issue":{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/193","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/193/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/193/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/193/events","html_url":"https://github.com/jacquev6/PyGithub/issues/193","id":18404629,"number":193,"title":"Add Conditional Request and Data Persistence Support Alternative Solution","user":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"labels":[],"state":"open","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://2.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/31","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/31/labels","id":402388,"number":31,"title":"Version 1.19.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://2.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":3,"closed_issues":1,"state":"open","created_at":"2013-08-15T05:54:47Z","updated_at":"2013-09-04T13:41:07Z","due_on":null},"comments":10,"created_at":"2013-08-22T10:14:26Z","updated_at":"2013-09-05T17:00:40Z","closed_at":null,"pull_request":{"html_url":"https://github.com/jacquev6/PyGithub/pull/193","diff_url":"https://github.com/jacquev6/PyGithub/pull/193.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/193.patch"},"body":"An alternative solution to pull request #189 based on #192. I am making this new pull request for clarity.\r\nChange List\r\n---------------\r\n1. Add support to [Conditional Request](http://developer.github.com/guides/getting-started/#conditional-requests) API.\r\n * Add ```GithubObject.etag``` property\r\n * Add ```GithubObject.last_modified``` property\r\n * Modify ```Requester``` class to handle 304 response code\r\n * Modify ```Requester``` class to enable making conditional request\r\n * Add ```NotModifiedException``` class for 304 response code\r\n * Add ```GithubObject.update()``` method\r\n * Add a few private helper methods to make this work\r\n2. Add methods for Data Persistence\r\n * Add ```GithubObject.save(file_fname)``` method\r\n * Add ```GithubObject.load(file_fname)``` class method\r\n3. Test class for conditional request\r\n\r\nUsage\r\n---------------\r\n```python\r\n# Get remote issue list and cache locally when syncing\r\nfor issue in repo.get_issues():\r\n issue.save(local_file_path)\r\n\r\n# Offline use/Quick restore previous work state\r\nfor local_file_path in cache.get_files():\r\n cached_issue = issue.load(local_file_path)\r\n #do something with it\r\n\r\n# And check for update when needed\r\nif (cached_issue.update()):\r\n print \"Issue synced“\r\n\r\n```"},"comment":{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/23883975","html_url":"https://github.com/jacquev6/PyGithub/issues/193#issuecomment-23883975","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/193","id":23883975,"user":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"created_at":"2013-09-05T17:00:40Z","updated_at":"2013-09-05T17:00:40Z","body":"After some quick scanning of the code, recursively reviving will likely not be an issue. We can just invoke ```_useAttributes``` somehow after ```requester``` is set. That should (re)initialize children with correct info. "}},"public":true,"created_at":"2013-09-05T17:00:41Z"},{"id":"1822742910","type":"IssueCommentEvent","actor":{"id":922715,"login":"akfish","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","avatar_url":"https://0.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fa248.e.akamai.net%2Fassets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"},"repo":{"id":3544490,"name":"jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub"},"payload":{"action":"created","issue":{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/193","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/193/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/193/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/193/events","html_url":"https://github.com/jacquev6/PyGithub/issues/193","id":18404629,"number":193,"title":"Add Conditional Request and Data Persistence Support Alternative Solution","user":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"labels":[],"state":"open","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/31","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/31/labels","id":402388,"number":31,"title":"Version 1.19.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":3,"closed_issues":1,"state":"open","created_at":"2013-08-15T05:54:47Z","updated_at":"2013-09-04T13:41:07Z","due_on":null},"comments":9,"created_at":"2013-08-22T10:14:26Z","updated_at":"2013-09-05T16:47:24Z","closed_at":null,"pull_request":{"html_url":"https://github.com/jacquev6/PyGithub/pull/193","diff_url":"https://github.com/jacquev6/PyGithub/pull/193.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/193.patch"},"body":"An alternative solution to pull request #189 based on #192. I am making this new pull request for clarity.\r\nChange List\r\n---------------\r\n1. Add support to [Conditional Request](http://developer.github.com/guides/getting-started/#conditional-requests) API.\r\n * Add ```GithubObject.etag``` property\r\n * Add ```GithubObject.last_modified``` property\r\n * Modify ```Requester``` class to handle 304 response code\r\n * Modify ```Requester``` class to enable making conditional request\r\n * Add ```NotModifiedException``` class for 304 response code\r\n * Add ```GithubObject.update()``` method\r\n * Add a few private helper methods to make this work\r\n2. Add methods for Data Persistence\r\n * Add ```GithubObject.save(file_fname)``` method\r\n * Add ```GithubObject.load(file_fname)``` class method\r\n3. Test class for conditional request\r\n\r\nUsage\r\n---------------\r\n```python\r\n# Get remote issue list and cache locally when syncing\r\nfor issue in repo.get_issues():\r\n issue.save(local_file_path)\r\n\r\n# Offline use/Quick restore previous work state\r\nfor local_file_path in cache.get_files():\r\n cached_issue = issue.load(local_file_path)\r\n #do something with it\r\n\r\n# And check for update when needed\r\nif (cached_issue.update()):\r\n print \"Issue synced“\r\n\r\n```"},"comment":{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/23882993","html_url":"https://github.com/jacquev6/PyGithub/issues/193#issuecomment-23882993","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/193","id":23882993,"user":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"created_at":"2013-09-05T16:47:24Z","updated_at":"2013-09-05T16:47:24Z","body":"OK. I will take a look at it in detail tomorrow. Just some quick thoughts:\r\n* It's my oversight that ```__setstate__``` does not implement all ```__init__``` behaviors. That can be easily fixed, since all ```Github.create_from_raw_data``` does is to invoke the constructor. \r\n* I will check on the recursively revive thing. It might be possible to simply introduce a bool flag for status checking and do it lazily when required. And if I understand it correctly, ```Github.create_from_raw_data``` will have the very same issue.\r\n* An alternative for revive is customize the getter for ```self._requester``` that fetches ```requester``` from current ```Github``` instance. Do this in base class, it should then automatically solve every thing, children or not. No \"dead\" objects will exist since they will all be lazily alive.\r\n\r\nSo I think bottom line is to make all the objects serializable and serialize-safe by keep ```__getstate___``` and ```__setstate__```, as long as we can get the initialization right (as ```Github.create_from_raw_data``` does). \r\nAs for the serialization, I am not a big fan on current implementation since I discovery the 2.x and 3.x pickle formats are not compatible. Well, maybe just keep it as an open option and let developers choose whatever methods they want."}},"public":true,"created_at":"2013-09-05T16:47:24Z"},{"id":"1822685130","type":"PushEvent","actor":{"id":327146,"login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fa248.e.akamai.net%2Fassets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"},"repo":{"id":3544490,"name":"jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub"},"payload":{"push_id":224708516,"size":1,"distinct_size":1,"ref":"refs/heads/topic/ConditionalRequest","head":"6cb149dce41cf1f110ae1f1d6a5c6bdd66790b69","before":"c412d49c9fd28406156dff664a1f848da1e95d0b","commits":[{"sha":"6cb149dce41cf1f110ae1f1d6a5c6bdd66790b69","author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques"},"message":"Adapt to Python 2.5 (again:))","distinct":true,"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6cb149dce41cf1f110ae1f1d6a5c6bdd66790b69"}]},"public":true,"created_at":"2013-09-05T15:53:49Z"},{"id":"1822682093","type":"PushEvent","actor":{"id":327146,"login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fa248.e.akamai.net%2Fassets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"},"repo":{"id":3544490,"name":"jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub"},"payload":{"push_id":224706869,"size":1,"distinct_size":1,"ref":"refs/heads/topic/ConditionalRequest","head":"c412d49c9fd28406156dff664a1f848da1e95d0b","before":"3fe9edf08707d2c289d4e6a05f7521751cf9f8e4","commits":[{"sha":"c412d49c9fd28406156dff664a1f848da1e95d0b","author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques"},"message":"Adapt to Python 2.5","distinct":true,"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c412d49c9fd28406156dff664a1f848da1e95d0b"}]},"public":true,"created_at":"2013-09-05T15:51:13Z"},{"id":"1822678337","type":"IssueCommentEvent","actor":{"id":327146,"login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fa248.e.akamai.net%2Fassets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"},"repo":{"id":3544490,"name":"jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub"},"payload":{"action":"created","issue":{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/193","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/193/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/193/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/193/events","html_url":"https://github.com/jacquev6/PyGithub/issues/193","id":18404629,"number":193,"title":"Add Conditional Request and Data Persistence Support Alternative Solution","user":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"labels":[],"state":"open","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://2.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/31","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/31/labels","id":402388,"number":31,"title":"Version 1.19.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://2.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":3,"closed_issues":1,"state":"open","created_at":"2013-08-15T05:54:47Z","updated_at":"2013-09-04T13:41:07Z","due_on":null},"comments":8,"created_at":"2013-08-22T10:14:26Z","updated_at":"2013-09-05T15:47:44Z","closed_at":null,"pull_request":{"html_url":"https://github.com/jacquev6/PyGithub/pull/193","diff_url":"https://github.com/jacquev6/PyGithub/pull/193.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/193.patch"},"body":"An alternative solution to pull request #189 based on #192. I am making this new pull request for clarity.\r\nChange List\r\n---------------\r\n1. Add support to [Conditional Request](http://developer.github.com/guides/getting-started/#conditional-requests) API.\r\n * Add ```GithubObject.etag``` property\r\n * Add ```GithubObject.last_modified``` property\r\n * Modify ```Requester``` class to handle 304 response code\r\n * Modify ```Requester``` class to enable making conditional request\r\n * Add ```NotModifiedException``` class for 304 response code\r\n * Add ```GithubObject.update()``` method\r\n * Add a few private helper methods to make this work\r\n2. Add methods for Data Persistence\r\n * Add ```GithubObject.save(file_fname)``` method\r\n * Add ```GithubObject.load(file_fname)``` class method\r\n3. Test class for conditional request\r\n\r\nUsage\r\n---------------\r\n```python\r\n# Get remote issue list and cache locally when syncing\r\nfor issue in repo.get_issues():\r\n issue.save(local_file_path)\r\n\r\n# Offline use/Quick restore previous work state\r\nfor local_file_path in cache.get_files():\r\n cached_issue = issue.load(local_file_path)\r\n #do something with it\r\n\r\n# And check for update when needed\r\nif (cached_issue.update()):\r\n print \"Issue synced“\r\n\r\n```"},"comment":{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/23877842","html_url":"https://github.com/jacquev6/PyGithub/issues/193#issuecomment-23877842","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/193","id":23877842,"user":{"login":"jacquev6","id":327146,"avatar_url":"https://2.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"created_at":"2013-09-05T15:47:44Z","updated_at":"2013-09-05T15:47:44Z","body":"I think I will merge my branch topic/ConditionalRequest (ending at commit 3fe9edf) in next release.\r\n\r\nI may have missed an advantage of your approach of serialization. If so, please tell me, we can continue to discuss it to get the best of both approaches.\r\n\r\nThank you again for your collaboration!"}},"public":true,"created_at":"2013-09-05T15:47:45Z"},{"id":"1822670928","type":"PullRequestReviewCommentEvent","actor":{"id":327146,"login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fa248.e.akamai.net%2Fassets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"},"repo":{"id":3544490,"name":"jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub"},"payload":{"comment":{"url":"https://api.github.com/repos/jacquev6/PyGithub/pulls/comments/6184908","id":6184908,"body":"A few comments on this approach:\r\n\r\n* we can't use the unpickled object in any way, because it has no public attributes, only `raw_data` and `_headers`. We must somehow call `_storeAndUseAttributes` in `__setstate__`\r\n* Creating \"dead\" objects looks like a very dangerous thing. They are not very useful, and quite error-prone (no method can be called on them). Reviving an object after creation is complicated, because its children should be revived too (recursively) (to be able to do things like `repo=g.load(saved_repo); repo.owner.get_followers()[0].login`)\r\n* Having several load and save methods (on `GithubObject`, `Github`) is error-prone.\r\n\r\nPlease see commit 3fe9edf for an implementation of my proposal.","diff_hunk":"@@ -96,6 +100,78 @@ def _parseDatetime(s):\n else:\n return datetime.datetime.strptime(s, \"%Y-%m-%dT%H:%M:%SZ\")\n \n+ # #193: I temporarily comment out those two methods\n+ # We need to address the following:\n+ # - The interface should use file-like objects (not file names)\n+ # - it's more \"pythonic\"\n+ # - it allows user to save several objects in the same physical file\n+ # - it's easier to unit-test because we can inject in-memory file-like objects\n+ # - We should not save identification information\n+ # - We should not re-create several instances of Requester when loading objects\n+ # - This would lead to very surprising behaviors, when changing Github.per_page or anything impacting this central part of PyGithub\n+ # - It should be possible to restore a saved object without knowing its previous type\n+ # - The \"load\" method should not make the user think she must know this previous type\n+ # - In particular, it shouldn't be a classmethod of GithubObject\n+ # - They should be covered by unit tests\n+ #\n+ # My proposal, to be experimented and discussed:\n+ # - in \"save\", pickle a tuple containing the class of the object, its rawData and its headers\n+ # - make \"load\" a method of class Github\n+ # - it will unpickle everything and call Github.create_from_raw_data\n+ # - I would even make \"save\" a method of Github, to keep it symetric with \"load\"\n+ #\n+ # Using __get_state__ would not be enought because we wouldn't have access\n+ # to the Requester instance in __set_state__.\n+\n+ def __getstate__(self):","path":"github/GithubObject.py","position":70,"original_position":70,"commit_id":"ebbfec86a2fb352cc08e3595a6b58fa1ccccc111","original_commit_id":"ebbfec86a2fb352cc08e3595a6b58fa1ccccc111","user":{"login":"jacquev6","id":327146,"avatar_url":"https://2.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"created_at":"2013-09-05T15:41:19Z","updated_at":"2013-09-05T15:41:19Z","html_url":"https://github.com/jacquev6/PyGithub/pull/193#discussion_r6184908","pull_request_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls/193","_links":{"self":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/comments/6184908"},"html":{"href":"https://github.com/jacquev6/PyGithub/pull/193#discussion_r6184908"},"pull_request":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/193"}}}},"public":true,"created_at":"2013-09-05T15:41:19Z"},{"id":"1822668222","type":"PushEvent","actor":{"id":327146,"login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fa248.e.akamai.net%2Fassets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"},"repo":{"id":3544490,"name":"jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub"},"payload":{"push_id":224699122,"size":1,"distinct_size":1,"ref":"refs/heads/topic/ConditionalRequest","head":"3fe9edf08707d2c289d4e6a05f7521751cf9f8e4","before":"38b137fb37c0fdc74f8802a4184518e105db9121","commits":[{"sha":"3fe9edf08707d2c289d4e6a05f7521751cf9f8e4","author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques"},"message":"Implement object persistence\n\nThis follows my proposal for #193.\nLargely inspired by AKFish's work.","distinct":true,"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/3fe9edf08707d2c289d4e6a05f7521751cf9f8e4"}]},"public":true,"created_at":"2013-09-05T15:38:57Z"},{"id":"1822025629","type":"ForkEvent","actor":{"id":813448,"login":"SergioJorge","gravatar_id":"5949c2b4dec0f01c221015a21db10537","url":"https://api.github.com/users/SergioJorge","avatar_url":"https://2.gravatar.com/avatar/5949c2b4dec0f01c221015a21db10537?d=https%3A%2F%2Fa248.e.akamai.net%2Fassets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"},"repo":{"id":3544490,"name":"jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub"},"payload":{"forkee":{"id":12604651,"name":"PyGithub","full_name":"SergioJorge/PyGithub","owner":{"login":"SergioJorge","id":813448,"avatar_url":"https://2.gravatar.com/avatar/5949c2b4dec0f01c221015a21db10537?d=https%3A%2F%2Fidenticons.github.com%2F345b07c0913e6d201a63ba7910b13a10.png","gravatar_id":"5949c2b4dec0f01c221015a21db10537","url":"https://api.github.com/users/SergioJorge","html_url":"https://github.com/SergioJorge","followers_url":"https://api.github.com/users/SergioJorge/followers","following_url":"https://api.github.com/users/SergioJorge/following{/other_user}","gists_url":"https://api.github.com/users/SergioJorge/gists{/gist_id}","starred_url":"https://api.github.com/users/SergioJorge/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/SergioJorge/subscriptions","organizations_url":"https://api.github.com/users/SergioJorge/orgs","repos_url":"https://api.github.com/users/SergioJorge/repos","events_url":"https://api.github.com/users/SergioJorge/events{/privacy}","received_events_url":"https://api.github.com/users/SergioJorge/received_events","type":"User"},"private":false,"html_url":"https://github.com/SergioJorge/PyGithub","description":"Python library implementing the full Github API v3","fork":true,"url":"https://api.github.com/repos/SergioJorge/PyGithub","forks_url":"https://api.github.com/repos/SergioJorge/PyGithub/forks","keys_url":"https://api.github.com/repos/SergioJorge/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/SergioJorge/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/SergioJorge/PyGithub/teams","hooks_url":"https://api.github.com/repos/SergioJorge/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/SergioJorge/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/SergioJorge/PyGithub/events","assignees_url":"https://api.github.com/repos/SergioJorge/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/SergioJorge/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/SergioJorge/PyGithub/tags","blobs_url":"https://api.github.com/repos/SergioJorge/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/SergioJorge/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/SergioJorge/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/SergioJorge/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/SergioJorge/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/SergioJorge/PyGithub/languages","stargazers_url":"https://api.github.com/repos/SergioJorge/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/SergioJorge/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/SergioJorge/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/SergioJorge/PyGithub/subscription","commits_url":"https://api.github.com/repos/SergioJorge/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/SergioJorge/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/SergioJorge/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/SergioJorge/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/SergioJorge/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/SergioJorge/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/SergioJorge/PyGithub/merges","archive_url":"https://api.github.com/repos/SergioJorge/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/SergioJorge/PyGithub/downloads","issues_url":"https://api.github.com/repos/SergioJorge/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/SergioJorge/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/SergioJorge/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/SergioJorge/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/SergioJorge/PyGithub/labels{/name}","created_at":"2013-09-04T23:40:46Z","updated_at":"2013-09-04T23:40:46Z","pushed_at":"2013-09-04T19:49:59Z","git_url":"git://github.com/SergioJorge/PyGithub.git","ssh_url":"git@github.com:SergioJorge/PyGithub.git","clone_url":"https://github.com/SergioJorge/PyGithub.git","svn_url":"https://github.com/SergioJorge/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":820,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":true,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"master_branch":"master","default_branch":"master","public":true}},"public":true,"created_at":"2013-09-04T23:40:46Z"},{"id":"1822025563","type":"WatchEvent","actor":{"id":813448,"login":"SergioJorge","gravatar_id":"5949c2b4dec0f01c221015a21db10537","url":"https://api.github.com/users/SergioJorge","avatar_url":"https://2.gravatar.com/avatar/5949c2b4dec0f01c221015a21db10537?d=https%3A%2F%2Fa248.e.akamai.net%2Fassets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"},"repo":{"id":3544490,"name":"jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub"},"payload":{"action":"started"},"public":true,"created_at":"2013-09-04T23:40:42Z"},{"id":"1821810477","type":"PushEvent","actor":{"id":327146,"login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fa248.e.akamai.net%2Fassets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"},"repo":{"id":3544490,"name":"jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub"},"payload":{"push_id":224224755,"size":1,"distinct_size":1,"ref":"refs/heads/topic/ConditionalRequest","head":"38b137fb37c0fdc74f8802a4184518e105db9121","before":"fb6980ce36766e4dd1ab03b48ac4b5adf876dc84","commits":[{"sha":"38b137fb37c0fdc74f8802a4184518e105db9121","author":{"email":"akfish@gmail.com","name":"AKFish"},"message":"Fix line ending","distinct":true,"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/38b137fb37c0fdc74f8802a4184518e105db9121"}]},"public":true,"created_at":"2013-09-04T19:50:00Z"},{"id":"1821476672","type":"IssueCommentEvent","actor":{"id":327146,"login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fa248.e.akamai.net%2Fassets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"},"repo":{"id":3544490,"name":"jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub"},"payload":{"action":"created","issue":{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/194","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/194/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/194/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/194/events","html_url":"https://github.com/jacquev6/PyGithub/issues/194","id":18951718,"number":194,"title":"GitHub 400 \"Problems parsing JSON\" when creating an issue","user":{"login":"technoskald","id":1624387,"avatar_url":"https://0.gravatar.com/avatar/afdbc4563c208b1bc332762fbd1145cb?d=https%3A%2F%2Fidenticons.github.com%2F1fe48bd7b38910219f53e7709ac82ccf.png","gravatar_id":"afdbc4563c208b1bc332762fbd1145cb","url":"https://api.github.com/users/technoskald","html_url":"https://github.com/technoskald","followers_url":"https://api.github.com/users/technoskald/followers","following_url":"https://api.github.com/users/technoskald/following{/other_user}","gists_url":"https://api.github.com/users/technoskald/gists{/gist_id}","starred_url":"https://api.github.com/users/technoskald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/technoskald/subscriptions","organizations_url":"https://api.github.com/users/technoskald/orgs","repos_url":"https://api.github.com/users/technoskald/repos","events_url":"https://api.github.com/users/technoskald/events{/privacy}","received_events_url":"https://api.github.com/users/technoskald/received_events","type":"User"},"labels":[],"state":"open","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://1.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/31","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/31/labels","id":402388,"number":31,"title":"Version 1.19.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://1.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":3,"closed_issues":1,"state":"open","created_at":"2013-08-15T05:54:47Z","updated_at":"2013-09-04T13:41:07Z","due_on":null},"comments":2,"created_at":"2013-09-04T03:34:22Z","updated_at":"2013-09-04T14:35:22Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I'm working from the `develop` branch and consistently get an `HTTP 400: Problems parsing JSON` when trying to create an issue.\r\n\r\nThe traceback, including the actual API call, is:\r\n```\r\nTraceback (most recent call last):\r\n File \"import.py\", line 68, in \r\n issue=repo.create_issue(title=i['description'],body=comment,labels=ilabels)\r\n File \"/home/kmaxwell/PyGithub/github/Repository.py\", line 557, in create_issue\r\n post_parameters\r\n File \"/home/kmaxwell/PyGithub/github/Requester.py\", line 171, in requestJsonAndCheck\r\n return self.__check(*self.requestJson(verb, url, parameters, input))\r\n File \"/home/kmaxwell/PyGithub/github/Requester.py\", line 182, in __check\r\n raise self.__createException(status, output)\r\ngithub.GithubException.GithubException: 400 {u'message': u'Problems parsing JSON'}\r\n```\r\n\r\nAdditionally, I enabled console logging while debugging (per the contribution guidelines) and have the following logs:\r\n\r\n```\r\nPOST https://api.github.com/repos/vz-risk/VCDB/issues {'Content-Type': 'application/json', 'Authorization': 'token (oauth token removed)', 'User-Agent': 'PyGithub/Python'} {\"body\": \"http://www.heraldonline.com/2013/08/27/5152564/advanced-data-processing-inc-notification.html\\n\\nAnother of the ADP Partner breaches There are several more on the pinboard--search term is ADP.\\n\\nhttp://posttrib.suntimes.com/news/porter/22190511-418/valpo-ambulance-users-could-have-had-personal-information-stolen.html\\n\\nhttp://www.healthdatamanagement.com/news/breach-notification-hipaa-privacy-security-46520-1.html\\n\\n\\n2013 DataBreach NC\", \"labels\": [\"Breach\"], \"title\": \"VALPARAISO, Ind., Aug. 27, 2013: Advanced Data Processing, Inc.: Notification of Possible Unauthorized Access of Patient Information | PRNewswire | Rock Hill Herald Online\"} ==> 400 {'status': '400 Bad Request', 'x-ratelimit-remaining': '4993', 'x-github-media-type': 'github.beta; format=json', 'x-content-type-options': 'nosniff', 'access-control-expose-headers': 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes', 'x-github-request-id': '54c3445d-e229-4b45-b3f1-ef528f1325be', 'x-accepted-oauth-scopes': 'repo, public_repo', 'content-length': '35', 'server': 'GitHub.com', 'x-ratelimit-limit': '5000', 'access-control-allow-credentials': 'true', 'date': 'Wed, 04 Sep 2013 03:27:33 GMT', 'access-control-allow-origin': '*', 'content-type': 'application/json; charset=utf-8', 'x-oauth-scopes': 'user, public_repo, repo, gist', 'x-ratelimit-reset': '1378268851'} {\"message\":\"Problems parsing JSON\"}\r\n```"},"comment":{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/23794023","html_url":"https://github.com/jacquev6/PyGithub/issues/194#issuecomment-23794023","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/194","id":23794023,"user":{"login":"jacquev6","id":327146,"avatar_url":"https://1.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"created_at":"2013-09-04T14:35:22Z","updated_at":"2013-09-04T14:35:22Z","body":"Hum in fact I'm going to need your help to solve this... \r\n\r\nCan you please run the script here: https://gist.github.com/jacquev6/6437766 (modify it to use your credentials first) and tell me what you obtain?\r\n\r\nWhen I run it, it works, and the request sent (before the \"==>\" in the log) it **very** similar to the request failing in your case:\r\n\r\n POST https://api.github.com/repos/jacquev6/TestPyGithub/issues {'Content-Type': 'application/json', 'Authorization': 'Basic (login and password removed)', 'User-Agent': 'PyGithub/Python'} {\"body\": \"http://www.heraldonline.com/2013/08/27/5152564/advanced-data-processing-inc-notification.html\\n\\nAnother of the ADP Partner breaches There are several more on the pinboard--search term is ADP.\\n\\nhttp://posttrib.suntimes.com/news/porter/22190511-418/valpo-ambulance-users-could-have-had-personal-information-stolen.html\\n\\nhttp://www.healthdatamanagement.com/news/breach-notification-hipaa-privacy-security-46520-1.html\\n\\n\\n2013 DataBreach NC\", \"labels\": [\"Breach\"], \"title\": \"VALPARAISO, Ind., Aug. 27, 2013: Advanced Data Processing, Inc.: Notification of Possible Unauthorized Access of Patient Information | PRNewswire | Rock Hill Herald Online\"} ==> 201 {'status': '201 Created', 'x-ratelimit-remaining': '4972', 'x-github-media-type': 'github.beta; format=json', 'x-content-type-options': 'nosniff', 'access-control-expose-headers': 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes', 'x-github-request-id': '2be0b759-6752-4210-8ec9-243932b431a4', 'cache-control': 'private, max-age=60, s-maxage=60', 'content-length': '2382', 'server': 'GitHub.com', 'x-ratelimit-limit': '5000', 'location': 'https://api.github.com/repos/jacquev6/TestPyGithub/issues/4', 'access-control-allow-credentials': 'true', 'date': 'Wed, 04 Sep 2013 14:27:51 GMT', 'etag': '\"c95c9d428a9cb16001205311010e4f98\"', 'content-type': 'application/json; charset=utf-8', 'access-control-allow-origin': '*', 'x-ratelimit-reset': '1378305746'} {\"url\":\"https://api.github.com/repos/jacquev6/TestPyGithub/issues/4\",\"labels_url\":\"https://api.github.com/repos/jacquev6/TestPyGithub/issues/4/labels{/name}\",\"comments_url\":\"https://api.github.com/repos/jacquev6/TestPyGithub/issues/4/comments\",\"events_url\":\"https://api.github.com/repos/jacquev6/TestPyGithub/issues/4/events\",\"html_url\":\"https://github.com/jacquev6/TestPyGithub/issues/4\",\"id\":18974584,\"number\":4,\"title\":\"VALPARAISO, Ind., Aug. 27, 2013: Advanced Data Processing, Inc.: Notification of Possible Unauthorized Access of Patient Information | PRNewswire | Rock Hill Herald Online\",\"user\":{\"login\":\"jacquev6\",\"id\":327146,\"avatar_url\":\"https://1.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"url\":\"https://api.github.com/users/jacquev6\",\"html_url\":\"https://github.com/jacquev6\",\"followers_url\":\"https://api.github.com/users/jacquev6/followers\",\"following_url\":\"https://api.github.com/users/jacquev6/following{/other_user}\",\"gists_url\":\"https://api.github.com/users/jacquev6/gists{/gist_id}\",\"starred_url\":\"https://api.github.com/users/jacquev6/starred{/owner}{/repo}\",\"subscriptions_url\":\"https://api.github.com/users/jacquev6/subscriptions\",\"organizations_url\":\"https://api.github.com/users/jacquev6/orgs\",\"repos_url\":\"https://api.github.com/users/jacquev6/repos\",\"events_url\":\"https://api.github.com/users/jacquev6/events{/privacy}\",\"received_events_url\":\"https://api.github.com/users/jacquev6/received_events\",\"type\":\"User\"},\"labels\":[{\"url\":\"https://api.github.com/repos/jacquev6/TestPyGithub/labels/Breach\",\"name\":\"Breach\",\"color\":\"fbca04\"}],\"state\":\"open\",\"assignee\":null,\"milestone\":null,\"comments\":0,\"created_at\":\"2013-09-04T14:27:51Z\",\"updated_at\":\"2013-09-04T14:27:51Z\",\"closed_at\":null,\"pull_request\":{\"html_url\":null,\"diff_url\":null,\"patch_url\":null},\"body\":\"http://www.heraldonline.com/2013/08/27/5152564/advanced-data-processing-inc-notification.html\\n\\nAnother of the ADP Partner breaches There are several more on the pinboard--search term is ADP.\\n\\nhttp://posttrib.suntimes.com/news/porter/22190511-418/valpo-ambulance-users-could-have-had-personal-information-stolen.html\\n\\nhttp://www.healthdatamanagement.com/news/breach-notification-hipaa-privacy-security-46520-1.html\\n\\n\\n2013 DataBreach NC\",\"closed_by\":null}\r\n"}},"public":true,"created_at":"2013-09-04T14:35:23Z"},{"id":"1821420344","type":"IssueCommentEvent","actor":{"id":327146,"login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fa248.e.akamai.net%2Fassets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"},"repo":{"id":3544490,"name":"jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub"},"payload":{"action":"created","issue":{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/193","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/193/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/193/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/193/events","html_url":"https://github.com/jacquev6/PyGithub/issues/193","id":18404629,"number":193,"title":"Add Conditional Request and Data Persistence Support Alternative Solution","user":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"labels":[],"state":"open","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/31","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/31/labels","id":402388,"number":31,"title":"Version 1.19.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":3,"closed_issues":1,"state":"open","created_at":"2013-08-15T05:54:47Z","updated_at":"2013-09-04T13:41:07Z","due_on":null},"comments":7,"created_at":"2013-08-22T10:14:26Z","updated_at":"2013-09-04T13:43:45Z","closed_at":null,"pull_request":{"html_url":"https://github.com/jacquev6/PyGithub/pull/193","diff_url":"https://github.com/jacquev6/PyGithub/pull/193.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/193.patch"},"body":"An alternative solution to pull request #189 based on #192. I am making this new pull request for clarity.\r\nChange List\r\n---------------\r\n1. Add support to [Conditional Request](http://developer.github.com/guides/getting-started/#conditional-requests) API.\r\n * Add ```GithubObject.etag``` property\r\n * Add ```GithubObject.last_modified``` property\r\n * Modify ```Requester``` class to handle 304 response code\r\n * Modify ```Requester``` class to enable making conditional request\r\n * Add ```NotModifiedException``` class for 304 response code\r\n * Add ```GithubObject.update()``` method\r\n * Add a few private helper methods to make this work\r\n2. Add methods for Data Persistence\r\n * Add ```GithubObject.save(file_fname)``` method\r\n * Add ```GithubObject.load(file_fname)``` class method\r\n3. Test class for conditional request\r\n\r\nUsage\r\n---------------\r\n```python\r\n# Get remote issue list and cache locally when syncing\r\nfor issue in repo.get_issues():\r\n issue.save(local_file_path)\r\n\r\n# Offline use/Quick restore previous work state\r\nfor local_file_path in cache.get_files():\r\n cached_issue = issue.load(local_file_path)\r\n #do something with it\r\n\r\n# And check for update when needed\r\nif (cached_issue.update()):\r\n print \"Issue synced“\r\n\r\n```"},"comment":{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/23789799","html_url":"https://github.com/jacquev6/PyGithub/issues/193#issuecomment-23789799","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/193","id":23789799,"user":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"created_at":"2013-09-04T13:43:45Z","updated_at":"2013-09-04T13:43:45Z","body":"Thank you for the update, this looks very promising! I'll look at it this afternoon."}},"public":true,"created_at":"2013-09-04T13:43:45Z"},{"id":"1821419438","type":"IssueCommentEvent","actor":{"id":327146,"login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fa248.e.akamai.net%2Fassets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"},"repo":{"id":3544490,"name":"jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub"},"payload":{"action":"created","issue":{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/194","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/194/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/194/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/194/events","html_url":"https://github.com/jacquev6/PyGithub/issues/194","id":18951718,"number":194,"title":"GitHub 400 \"Problems parsing JSON\" when creating an issue","user":{"login":"technoskald","id":1624387,"avatar_url":"https://1.gravatar.com/avatar/afdbc4563c208b1bc332762fbd1145cb?d=https%3A%2F%2Fidenticons.github.com%2F1fe48bd7b38910219f53e7709ac82ccf.png","gravatar_id":"afdbc4563c208b1bc332762fbd1145cb","url":"https://api.github.com/users/technoskald","html_url":"https://github.com/technoskald","followers_url":"https://api.github.com/users/technoskald/followers","following_url":"https://api.github.com/users/technoskald/following{/other_user}","gists_url":"https://api.github.com/users/technoskald/gists{/gist_id}","starred_url":"https://api.github.com/users/technoskald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/technoskald/subscriptions","organizations_url":"https://api.github.com/users/technoskald/orgs","repos_url":"https://api.github.com/users/technoskald/repos","events_url":"https://api.github.com/users/technoskald/events{/privacy}","received_events_url":"https://api.github.com/users/technoskald/received_events","type":"User"},"labels":[],"state":"open","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://1.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/31","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/31/labels","id":402388,"number":31,"title":"Version 1.19.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://1.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":3,"closed_issues":1,"state":"open","created_at":"2013-08-15T05:54:47Z","updated_at":"2013-09-04T13:41:07Z","due_on":null},"comments":1,"created_at":"2013-09-04T03:34:22Z","updated_at":"2013-09-04T13:42:51Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I'm working from the `develop` branch and consistently get an `HTTP 400: Problems parsing JSON` when trying to create an issue.\r\n\r\nThe traceback, including the actual API call, is:\r\n```\r\nTraceback (most recent call last):\r\n File \"import.py\", line 68, in \r\n issue=repo.create_issue(title=i['description'],body=comment,labels=ilabels)\r\n File \"/home/kmaxwell/PyGithub/github/Repository.py\", line 557, in create_issue\r\n post_parameters\r\n File \"/home/kmaxwell/PyGithub/github/Requester.py\", line 171, in requestJsonAndCheck\r\n return self.__check(*self.requestJson(verb, url, parameters, input))\r\n File \"/home/kmaxwell/PyGithub/github/Requester.py\", line 182, in __check\r\n raise self.__createException(status, output)\r\ngithub.GithubException.GithubException: 400 {u'message': u'Problems parsing JSON'}\r\n```\r\n\r\nAdditionally, I enabled console logging while debugging (per the contribution guidelines) and have the following logs:\r\n\r\n```\r\nPOST https://api.github.com/repos/vz-risk/VCDB/issues {'Content-Type': 'application/json', 'Authorization': 'token (oauth token removed)', 'User-Agent': 'PyGithub/Python'} {\"body\": \"http://www.heraldonline.com/2013/08/27/5152564/advanced-data-processing-inc-notification.html\\n\\nAnother of the ADP Partner breaches There are several more on the pinboard--search term is ADP.\\n\\nhttp://posttrib.suntimes.com/news/porter/22190511-418/valpo-ambulance-users-could-have-had-personal-information-stolen.html\\n\\nhttp://www.healthdatamanagement.com/news/breach-notification-hipaa-privacy-security-46520-1.html\\n\\n\\n2013 DataBreach NC\", \"labels\": [\"Breach\"], \"title\": \"VALPARAISO, Ind., Aug. 27, 2013: Advanced Data Processing, Inc.: Notification of Possible Unauthorized Access of Patient Information | PRNewswire | Rock Hill Herald Online\"} ==> 400 {'status': '400 Bad Request', 'x-ratelimit-remaining': '4993', 'x-github-media-type': 'github.beta; format=json', 'x-content-type-options': 'nosniff', 'access-control-expose-headers': 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes', 'x-github-request-id': '54c3445d-e229-4b45-b3f1-ef528f1325be', 'x-accepted-oauth-scopes': 'repo, public_repo', 'content-length': '35', 'server': 'GitHub.com', 'x-ratelimit-limit': '5000', 'access-control-allow-credentials': 'true', 'date': 'Wed, 04 Sep 2013 03:27:33 GMT', 'access-control-allow-origin': '*', 'content-type': 'application/json; charset=utf-8', 'x-oauth-scopes': 'user, public_repo, repo, gist', 'x-ratelimit-reset': '1378268851'} {\"message\":\"Problems parsing JSON\"}\r\n```"},"comment":{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/23789742","html_url":"https://github.com/jacquev6/PyGithub/issues/194#issuecomment-23789742","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/194","id":23789742,"user":{"login":"jacquev6","id":327146,"avatar_url":"https://1.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"created_at":"2013-09-04T13:42:51Z","updated_at":"2013-09-04T13:42:51Z","body":"Hello! Thank you for the issue report, I have all the info I need to investigate that.\r\n\r\nThere seems to be something wrong with the json-encoding of the request, in PyGithub. I'll keep you informed this afternoon."}},"public":true,"created_at":"2013-09-04T13:42:52Z"},{"id":"1821181865","type":"WatchEvent","actor":{"id":1114542,"login":"nvbn","gravatar_id":"9c2082cdbe74353788ae2845c2bd8281","url":"https://api.github.com/users/nvbn","avatar_url":"https://1.gravatar.com/avatar/9c2082cdbe74353788ae2845c2bd8281?d=https%3A%2F%2Fa248.e.akamai.net%2Fassets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"},"repo":{"id":3544490,"name":"jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub"},"payload":{"action":"started"},"public":true,"created_at":"2013-09-04T08:31:39Z"},{"id":"1821036113","type":"IssuesEvent","actor":{"id":1624387,"login":"technoskald","gravatar_id":"afdbc4563c208b1bc332762fbd1145cb","url":"https://api.github.com/users/technoskald","avatar_url":"https://1.gravatar.com/avatar/afdbc4563c208b1bc332762fbd1145cb?d=https%3A%2F%2Fa248.e.akamai.net%2Fassets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"},"repo":{"id":3544490,"name":"jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub"},"payload":{"action":"opened","issue":{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/194","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/194/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/194/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/194/events","html_url":"https://github.com/jacquev6/PyGithub/issues/194","id":18951718,"number":194,"title":"GitHub 400 \"Problems parsing JSON\" when creating an issue","user":{"login":"technoskald","id":1624387,"avatar_url":"https://0.gravatar.com/avatar/afdbc4563c208b1bc332762fbd1145cb?d=https%3A%2F%2Fidenticons.github.com%2F1fe48bd7b38910219f53e7709ac82ccf.png","gravatar_id":"afdbc4563c208b1bc332762fbd1145cb","url":"https://api.github.com/users/technoskald","html_url":"https://github.com/technoskald","followers_url":"https://api.github.com/users/technoskald/followers","following_url":"https://api.github.com/users/technoskald/following{/other_user}","gists_url":"https://api.github.com/users/technoskald/gists{/gist_id}","starred_url":"https://api.github.com/users/technoskald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/technoskald/subscriptions","organizations_url":"https://api.github.com/users/technoskald/orgs","repos_url":"https://api.github.com/users/technoskald/repos","events_url":"https://api.github.com/users/technoskald/events{/privacy}","received_events_url":"https://api.github.com/users/technoskald/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2013-09-04T03:34:22Z","updated_at":"2013-09-04T03:34:22Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I'm working from the `develop` branch and consistently get an `HTTP 400: Problems parsing JSON` when trying to create an issue.\r\n\r\nThe traceback, including the actual API call, is:\r\n```\r\nTraceback (most recent call last):\r\n File \"import.py\", line 68, in \r\n issue=repo.create_issue(title=i['description'],body=comment,labels=ilabels)\r\n File \"/home/kmaxwell/PyGithub/github/Repository.py\", line 557, in create_issue\r\n post_parameters\r\n File \"/home/kmaxwell/PyGithub/github/Requester.py\", line 171, in requestJsonAndCheck\r\n return self.__check(*self.requestJson(verb, url, parameters, input))\r\n File \"/home/kmaxwell/PyGithub/github/Requester.py\", line 182, in __check\r\n raise self.__createException(status, output)\r\ngithub.GithubException.GithubException: 400 {u'message': u'Problems parsing JSON'}\r\n```\r\n\r\nAdditionally, I enabled console logging while debugging (per the contribution guidelines) and have the following logs:\r\n\r\n```\r\nPOST https://api.github.com/repos/vz-risk/VCDB/issues {'Content-Type': 'application/json', 'Authorization': 'token (oauth token removed)', 'User-Agent': 'PyGithub/Python'} {\"body\": \"http://www.heraldonline.com/2013/08/27/5152564/advanced-data-processing-inc-notification.html\\n\\nAnother of the ADP Partner breaches There are several more on the pinboard--search term is ADP.\\n\\nhttp://posttrib.suntimes.com/news/porter/22190511-418/valpo-ambulance-users-could-have-had-personal-information-stolen.html\\n\\nhttp://www.healthdatamanagement.com/news/breach-notification-hipaa-privacy-security-46520-1.html\\n\\n\\n2013 DataBreach NC\", \"labels\": [\"Breach\"], \"title\": \"VALPARAISO, Ind., Aug. 27, 2013: Advanced Data Processing, Inc.: Notification of Possible Unauthorized Access of Patient Information | PRNewswire | Rock Hill Herald Online\"} ==> 400 {'status': '400 Bad Request', 'x-ratelimit-remaining': '4993', 'x-github-media-type': 'github.beta; format=json', 'x-content-type-options': 'nosniff', 'access-control-expose-headers': 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes', 'x-github-request-id': '54c3445d-e229-4b45-b3f1-ef528f1325be', 'x-accepted-oauth-scopes': 'repo, public_repo', 'content-length': '35', 'server': 'GitHub.com', 'x-ratelimit-limit': '5000', 'access-control-allow-credentials': 'true', 'date': 'Wed, 04 Sep 2013 03:27:33 GMT', 'access-control-allow-origin': '*', 'content-type': 'application/json; charset=utf-8', 'x-oauth-scopes': 'user, public_repo, repo, gist', 'x-ratelimit-reset': '1378268851'} {\"message\":\"Problems parsing JSON\"}\r\n```"}},"public":true,"created_at":"2013-09-04T03:34:22Z"},{"id":"1819316534","type":"WatchEvent","actor":{"id":1681405,"login":"marianitadn","gravatar_id":"4ede901d02edfca3e35db27377f13d5d","url":"https://api.github.com/users/marianitadn","avatar_url":"https://2.gravatar.com/avatar/4ede901d02edfca3e35db27377f13d5d?d=https%3A%2F%2Fa248.e.akamai.net%2Fassets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"},"repo":{"id":3544490,"name":"jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub"},"payload":{"action":"started"},"public":true,"created_at":"2013-09-02T07:43:17Z"},{"id":"1818956660","type":"ForkEvent","actor":{"id":5172637,"login":"schmidt-fu","gravatar_id":"c9ced8b816f6470e64a4ad13f8ebe16a","url":"https://api.github.com/users/schmidt-fu","avatar_url":"https://1.gravatar.com/avatar/c9ced8b816f6470e64a4ad13f8ebe16a?d=https%3A%2F%2Fa248.e.akamai.net%2Fassets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"},"repo":{"id":3544490,"name":"jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub"},"payload":{"forkee":{"id":12518636,"name":"PyGithub","full_name":"schmidt-fu/PyGithub","owner":{"login":"schmidt-fu","id":5172637,"avatar_url":"https://2.gravatar.com/avatar/c9ced8b816f6470e64a4ad13f8ebe16a?d=https%3A%2F%2Fidenticons.github.com%2F3cc9645c6fb2437530f57a2253cf3a8c.png","gravatar_id":"c9ced8b816f6470e64a4ad13f8ebe16a","url":"https://api.github.com/users/schmidt-fu","html_url":"https://github.com/schmidt-fu","followers_url":"https://api.github.com/users/schmidt-fu/followers","following_url":"https://api.github.com/users/schmidt-fu/following{/other_user}","gists_url":"https://api.github.com/users/schmidt-fu/gists{/gist_id}","starred_url":"https://api.github.com/users/schmidt-fu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/schmidt-fu/subscriptions","organizations_url":"https://api.github.com/users/schmidt-fu/orgs","repos_url":"https://api.github.com/users/schmidt-fu/repos","events_url":"https://api.github.com/users/schmidt-fu/events{/privacy}","received_events_url":"https://api.github.com/users/schmidt-fu/received_events","type":"User"},"private":false,"html_url":"https://github.com/schmidt-fu/PyGithub","description":"Python library implementing the full Github API v3","fork":true,"url":"https://api.github.com/repos/schmidt-fu/PyGithub","forks_url":"https://api.github.com/repos/schmidt-fu/PyGithub/forks","keys_url":"https://api.github.com/repos/schmidt-fu/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/schmidt-fu/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/schmidt-fu/PyGithub/teams","hooks_url":"https://api.github.com/repos/schmidt-fu/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/schmidt-fu/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/schmidt-fu/PyGithub/events","assignees_url":"https://api.github.com/repos/schmidt-fu/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/schmidt-fu/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/schmidt-fu/PyGithub/tags","blobs_url":"https://api.github.com/repos/schmidt-fu/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/schmidt-fu/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/schmidt-fu/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/schmidt-fu/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/schmidt-fu/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/schmidt-fu/PyGithub/languages","stargazers_url":"https://api.github.com/repos/schmidt-fu/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/schmidt-fu/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/schmidt-fu/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/schmidt-fu/PyGithub/subscription","commits_url":"https://api.github.com/repos/schmidt-fu/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/schmidt-fu/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/schmidt-fu/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/schmidt-fu/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/schmidt-fu/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/schmidt-fu/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/schmidt-fu/PyGithub/merges","archive_url":"https://api.github.com/repos/schmidt-fu/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/schmidt-fu/PyGithub/downloads","issues_url":"https://api.github.com/repos/schmidt-fu/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/schmidt-fu/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/schmidt-fu/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/schmidt-fu/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/schmidt-fu/PyGithub/labels{/name}","created_at":"2013-09-01T09:51:50Z","updated_at":"2013-09-01T09:51:50Z","pushed_at":"2013-08-23T17:06:48Z","git_url":"git://github.com/schmidt-fu/PyGithub.git","ssh_url":"git@github.com:schmidt-fu/PyGithub.git","clone_url":"https://github.com/schmidt-fu/PyGithub.git","svn_url":"https://github.com/schmidt-fu/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":7642,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":true,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"master_branch":"master","default_branch":"master","public":true}},"public":true,"created_at":"2013-09-01T09:51:50Z"}] + +https +GET +api.github.com +None +/notifications/threads/8406712 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4867'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '30848a7f-7351-4751-af8c-3b0a85f5bb7e'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('content-length', '4203'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('etag', '"848b2905eeb475bca3c72fe17bedcc0c"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:06:00 GMT'), ('access-control-allow-origin', '*'), ('x-poll-interval', '60'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378482241')] +{"id":"8406712","unread":null,"reason":"subscribed","updated_at":"2013-03-15T05:43:11Z","last_read_at":null,"subject":{"title":"Feature/coveralls","url":"https://api.github.com/repos/ZIMK/fwadmin/pulls/21","latest_comment_url":"https://api.github.com/repos/ZIMK/fwadmin/issues/comments/14944813","type":"PullRequest"},"repository":{"id":8432784,"name":"fwadmin","full_name":"ZIMK/fwadmin","owner":{"login":"ZIMK","id":1187008,"avatar_url":"https://1.gravatar.com/avatar/ce407a684dac7cf642606501244dd9f0?d=https%3A%2F%2Fidenticons.github.com%2Fa8b50d6bf21d85e47ce11e1d23087af2.png","gravatar_id":"ce407a684dac7cf642606501244dd9f0","url":"https://api.github.com/users/ZIMK","html_url":"https://github.com/ZIMK","followers_url":"https://api.github.com/users/ZIMK/followers","following_url":"https://api.github.com/users/ZIMK/following{/other_user}","gists_url":"https://api.github.com/users/ZIMK/gists{/gist_id}","starred_url":"https://api.github.com/users/ZIMK/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ZIMK/subscriptions","organizations_url":"https://api.github.com/users/ZIMK/orgs","repos_url":"https://api.github.com/users/ZIMK/repos","events_url":"https://api.github.com/users/ZIMK/events{/privacy}","received_events_url":"https://api.github.com/users/ZIMK/received_events","type":"Organization"},"private":false,"html_url":"https://github.com/ZIMK/fwadmin","description":"Django based self-service firewall config tool","fork":true,"url":"https://api.github.com/repos/ZIMK/fwadmin","forks_url":"https://api.github.com/repos/ZIMK/fwadmin/forks","keys_url":"https://api.github.com/repos/ZIMK/fwadmin/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ZIMK/fwadmin/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ZIMK/fwadmin/teams","hooks_url":"https://api.github.com/repos/ZIMK/fwadmin/hooks","issue_events_url":"https://api.github.com/repos/ZIMK/fwadmin/issues/events{/number}","events_url":"https://api.github.com/repos/ZIMK/fwadmin/events","assignees_url":"https://api.github.com/repos/ZIMK/fwadmin/assignees{/user}","branches_url":"https://api.github.com/repos/ZIMK/fwadmin/branches{/branch}","tags_url":"https://api.github.com/repos/ZIMK/fwadmin/tags","blobs_url":"https://api.github.com/repos/ZIMK/fwadmin/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ZIMK/fwadmin/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ZIMK/fwadmin/git/refs{/sha}","trees_url":"https://api.github.com/repos/ZIMK/fwadmin/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ZIMK/fwadmin/statuses/{sha}","languages_url":"https://api.github.com/repos/ZIMK/fwadmin/languages","stargazers_url":"https://api.github.com/repos/ZIMK/fwadmin/stargazers","contributors_url":"https://api.github.com/repos/ZIMK/fwadmin/contributors","subscribers_url":"https://api.github.com/repos/ZIMK/fwadmin/subscribers","subscription_url":"https://api.github.com/repos/ZIMK/fwadmin/subscription","commits_url":"https://api.github.com/repos/ZIMK/fwadmin/commits{/sha}","git_commits_url":"https://api.github.com/repos/ZIMK/fwadmin/git/commits{/sha}","comments_url":"https://api.github.com/repos/ZIMK/fwadmin/comments{/number}","issue_comment_url":"https://api.github.com/repos/ZIMK/fwadmin/issues/comments/{number}","contents_url":"https://api.github.com/repos/ZIMK/fwadmin/contents/{+path}","compare_url":"https://api.github.com/repos/ZIMK/fwadmin/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ZIMK/fwadmin/merges","archive_url":"https://api.github.com/repos/ZIMK/fwadmin/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ZIMK/fwadmin/downloads","issues_url":"https://api.github.com/repos/ZIMK/fwadmin/issues{/number}","pulls_url":"https://api.github.com/repos/ZIMK/fwadmin/pulls{/number}","milestones_url":"https://api.github.com/repos/ZIMK/fwadmin/milestones{/number}","notifications_url":"https://api.github.com/repos/ZIMK/fwadmin/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ZIMK/fwadmin/labels{/name}"},"url":"https://api.github.com/notifications/threads/8406712","subscription_url":"https://api.github.com/notifications/threads/8406712/subscription"} + +https +GET +api.github.com +None +/users/jacquev6 +{'If-None-Match': '"654d1a29abe3a61b096e8bffbc61c162"', 'User-Agent': 'PyGithub/Python', 'Authorization': 'Basic login_and_password_removed', 'If-Modified-Since': 'Fri, 06 Sep 2013 12:51:22 GMT'} +null +304 +[('status', '304 Not Modified'), ('x-ratelimit-remaining', '4867'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', 'f88ab8d2-9b5a-4283-8001-fdd72ca23ee2'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 06 Sep 2013 12:51:22 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"654d1a29abe3a61b096e8bffbc61c162"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:06:00 GMT'), ('access-control-allow-origin', '*'), ('x-ratelimit-reset', '1378482241')] + + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a +{'If-None-Match': '"91582e2dc24ad5461e61062c01b32969"', 'User-Agent': 'PyGithub/Python', 'Authorization': 'Basic login_and_password_removed', 'If-Modified-Since': 'Wed, 09 May 2012 16:22:33 GMT'} +null +304 +[('status', '304 Not Modified'), ('x-ratelimit-remaining', '4867'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '74293a9e-2207-4848-903c-69d3b04efebe'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('last-modified', 'Wed, 09 May 2012 16:22:33 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"91582e2dc24ad5461e61062c01b32969"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:06:01 GMT'), ('access-control-allow-origin', '*'), ('x-ratelimit-reset', '1378482241')] + + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/comments/3630301 +{'If-None-Match': '"654d1a29abe3a61b096e8bffbc61c162"', 'User-Agent': 'PyGithub/Python', 'Authorization': 'Basic login_and_password_removed', 'If-Modified-Since': 'Fri, 06 Sep 2013 12:51:22 GMT'} +null +304 +[('status', '304 Not Modified'), ('x-ratelimit-remaining', '4867'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '31f93d19-354a-448b-ac36-9c674814c063'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 06 Sep 2013 12:51:22 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"654d1a29abe3a61b096e8bffbc61c162"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:06:02 GMT'), ('access-control-allow-origin', '*'), ('x-ratelimit-reset', '1378482241')] + + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/compare/master...develop +{'If-None-Match': '"ff2ab76c56b865233dfb98f5804276b6"', 'User-Agent': 'PyGithub/Python', 'Authorization': 'Basic login_and_password_removed', 'If-Modified-Since': 'Fri, 06 Sep 2013 09:04:41 GMT'} +null +304 +[('status', '304 Not Modified'), ('x-ratelimit-remaining', '4867'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', 'bed81d6d-586b-453e-bf17-3db9b2abe473'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 06 Sep 2013 09:04:41 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"ff2ab76c56b865233dfb98f5804276b6"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:06:03 GMT'), ('access-control-allow-origin', '*'), ('x-ratelimit-reset', '1378482241')] + + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/contents/README.rst?ref=master +{'If-None-Match': '"bbffa70478199a10902bf5da76db3481"', 'User-Agent': 'PyGithub/Python', 'Authorization': 'Basic login_and_password_removed', 'If-Modified-Since': 'Wed, 21 Aug 2013 16:39:22 GMT'} +null +304 +[('status', '304 Not Modified'), ('x-ratelimit-remaining', '4867'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', 'c3ab101c-0643-4405-8dde-d9738631a6d1'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('last-modified', 'Wed, 21 Aug 2013 16:39:22 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"bbffa70478199a10902bf5da76db3481"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:06:04 GMT'), ('access-control-allow-origin', '*'), ('x-ratelimit-reset', '1378482241')] + + +https +GET +api.github.com +None +/gists/149016 +{'If-None-Match': '"1aaa6053c05e25abbc1703b90bd409b9"', 'User-Agent': 'PyGithub/Python', 'Authorization': 'Basic login_and_password_removed', 'If-Modified-Since': 'Fri, 06 Sep 2013 13:04:59 GMT'} +null +304 +[('status', '304 Not Modified'), ('x-ratelimit-remaining', '4867'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', 'acf3d7f7-920c-4e6c-9e9f-8c619691fd70'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 06 Sep 2013 13:04:59 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"1aaa6053c05e25abbc1703b90bd409b9"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:06:05 GMT'), ('access-control-allow-origin', '*'), ('x-ratelimit-reset', '1378482241')] + + +https +GET +api.github.com +None +/gists/149016/comments/4565 +{'If-None-Match': '"923dd32a449cce56dae93d3438b9451a"', 'User-Agent': 'PyGithub/Python', 'Authorization': 'Basic login_and_password_removed', 'If-Modified-Since': 'Thu, 29 Aug 2013 01:07:03 GMT'} +null +304 +[('status', '304 Not Modified'), ('x-ratelimit-remaining', '4867'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '76905633-de04-422b-83f6-9f8dde705b0f'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('last-modified', 'Thu, 29 Aug 2013 01:07:03 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"923dd32a449cce56dae93d3438b9451a"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:06:06 GMT'), ('access-control-allow-origin', '*'), ('x-ratelimit-reset', '1378482241')] + + +https +GET +api.github.com +None +/gists/149016/3e0e8350f040f21811ceea13975086158ccae986 +{'If-None-Match': '"1aaa6053c05e25abbc1703b90bd409b9"', 'User-Agent': 'PyGithub/Python', 'Authorization': 'Basic login_and_password_removed', 'If-Modified-Since': 'Fri, 06 Sep 2013 13:04:59 GMT'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4866'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '704fb785-3c6d-4f9f-9c14-91f368156bb0'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('content-length', '32105'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('etag', '"ad4288b80b5ef38fdd8599ec34f610f7"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:06:09 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378482241')] +{"url":"https://api.github.com/gists/149016","forks_url":"https://api.github.com/gists/149016/forks","commits_url":"https://api.github.com/gists/149016/commits","id":"149016","git_pull_url":"https://gist.github.com/149016.git","git_push_url":"https://gist.github.com/149016.git","html_url":"https://gist.github.com/149016","files":{".gitignore":{"filename":".gitignore","type":"text/plain","language":null,"raw_url":"https://gist.github.com/raw/149016/e056704ebab0fbcd7bf937169b4057d378d09cf8/.gitignore","size":145,"content":"*.aux\n*.glo\n*.idx\n*.log\n*.toc\n*.ist\n*.acn\n*.acr\n*.alg\n*.bbl\n*.blg\n*.dvi\n*.glg\n*.gls\n*.ilg\n*.ind\n*.lof\n*.lot\n*.maf\n*.mtc\n*.mtc1\n*.out\n*.synctex.gz"}},"public":true,"created_at":"2009-07-17T11:37:42Z","updated_at":"2013-09-06T13:04:59Z","description":"Git: .gitignore file for LaTeX projects","comments":18,"user":{"login":"kogakure","id":5535,"avatar_url":"https://0.gravatar.com/avatar/b53f98d49e275e8387897de02c92288d?d=https%3A%2F%2Fidenticons.github.com%2F7ec69dd44416c46745f6edd947b470cd.png","gravatar_id":"b53f98d49e275e8387897de02c92288d","url":"https://api.github.com/users/kogakure","html_url":"https://github.com/kogakure","followers_url":"https://api.github.com/users/kogakure/followers","following_url":"https://api.github.com/users/kogakure/following{/other_user}","gists_url":"https://api.github.com/users/kogakure/gists{/gist_id}","starred_url":"https://api.github.com/users/kogakure/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kogakure/subscriptions","organizations_url":"https://api.github.com/users/kogakure/orgs","repos_url":"https://api.github.com/users/kogakure/repos","events_url":"https://api.github.com/users/kogakure/events{/privacy}","received_events_url":"https://api.github.com/users/kogakure/received_events","type":"User"},"comments_url":"https://api.github.com/gists/149016/comments","forks":[{"url":"https://api.github.com/gists/452042","user":{"login":"cflewis","id":43708,"avatar_url":"https://2.gravatar.com/avatar/5f986018993d9f078927fe29ee912cf2?d=https%3A%2F%2Fidenticons.github.com%2F287915711d06ce6d90e2c18e1d89d3a6.png","gravatar_id":"5f986018993d9f078927fe29ee912cf2","url":"https://api.github.com/users/cflewis","html_url":"https://github.com/cflewis","followers_url":"https://api.github.com/users/cflewis/followers","following_url":"https://api.github.com/users/cflewis/following{/other_user}","gists_url":"https://api.github.com/users/cflewis/gists{/gist_id}","starred_url":"https://api.github.com/users/cflewis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cflewis/subscriptions","organizations_url":"https://api.github.com/users/cflewis/orgs","repos_url":"https://api.github.com/users/cflewis/repos","events_url":"https://api.github.com/users/cflewis/events{/privacy}","received_events_url":"https://api.github.com/users/cflewis/received_events","type":"User"},"id":"452042","created_at":"2010-06-24T21:51:00Z","updated_at":"2010-06-24T21:51:25Z"},{"url":"https://api.github.com/gists/871983","user":{"login":"rbochet","id":56806,"avatar_url":"https://2.gravatar.com/avatar/54925726f7c3a2b76028718eddb8522a?d=https%3A%2F%2Fidenticons.github.com%2F8818556ce6ba4bc9302dca9ec1979591.png","gravatar_id":"54925726f7c3a2b76028718eddb8522a","url":"https://api.github.com/users/rbochet","html_url":"https://github.com/rbochet","followers_url":"https://api.github.com/users/rbochet/followers","following_url":"https://api.github.com/users/rbochet/following{/other_user}","gists_url":"https://api.github.com/users/rbochet/gists{/gist_id}","starred_url":"https://api.github.com/users/rbochet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rbochet/subscriptions","organizations_url":"https://api.github.com/users/rbochet/orgs","repos_url":"https://api.github.com/users/rbochet/repos","events_url":"https://api.github.com/users/rbochet/events{/privacy}","received_events_url":"https://api.github.com/users/rbochet/received_events","type":"User"},"id":"871983","created_at":"2011-03-16T03:48:24Z","updated_at":"2013-08-16T00:46:15Z"},{"url":"https://api.github.com/gists/980414","user":{"login":"j10","id":250070,"avatar_url":"https://0.gravatar.com/avatar/7eb0a4d397a695f7fd15069a4f24ad44?d=https%3A%2F%2Fidenticons.github.com%2F6019c728e12af5d048c3d2decb9800cd.png","gravatar_id":"7eb0a4d397a695f7fd15069a4f24ad44","url":"https://api.github.com/users/j10","html_url":"https://github.com/j10","followers_url":"https://api.github.com/users/j10/followers","following_url":"https://api.github.com/users/j10/following{/other_user}","gists_url":"https://api.github.com/users/j10/gists{/gist_id}","starred_url":"https://api.github.com/users/j10/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/j10/subscriptions","organizations_url":"https://api.github.com/users/j10/orgs","repos_url":"https://api.github.com/users/j10/repos","events_url":"https://api.github.com/users/j10/events{/privacy}","received_events_url":"https://api.github.com/users/j10/received_events","type":"User"},"id":"980414","created_at":"2011-05-19T08:43:14Z","updated_at":"2011-05-19T08:43:20Z"},{"url":"https://api.github.com/gists/1404741","user":{"login":"Vaguery","id":81171,"avatar_url":"https://0.gravatar.com/avatar/db04d40ecceb0a4c0683a60462d11794?d=https%3A%2F%2Fidenticons.github.com%2Fc3ea21d464d21b7bf62431791ec01b78.png","gravatar_id":"db04d40ecceb0a4c0683a60462d11794","url":"https://api.github.com/users/Vaguery","html_url":"https://github.com/Vaguery","followers_url":"https://api.github.com/users/Vaguery/followers","following_url":"https://api.github.com/users/Vaguery/following{/other_user}","gists_url":"https://api.github.com/users/Vaguery/gists{/gist_id}","starred_url":"https://api.github.com/users/Vaguery/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Vaguery/subscriptions","organizations_url":"https://api.github.com/users/Vaguery/orgs","repos_url":"https://api.github.com/users/Vaguery/repos","events_url":"https://api.github.com/users/Vaguery/events{/privacy}","received_events_url":"https://api.github.com/users/Vaguery/received_events","type":"User"},"id":"1404741","created_at":"2011-11-29T13:05:35Z","updated_at":"2011-11-29T13:05:35Z"},{"url":"https://api.github.com/gists/1422904","user":{"login":"phieber","id":1208351,"avatar_url":"https://1.gravatar.com/avatar/e2f846ae903d79fa8750763d0809cab5?d=https%3A%2F%2Fidenticons.github.com%2F09c10f8d5454910d48c67ff6081e8601.png","gravatar_id":"e2f846ae903d79fa8750763d0809cab5","url":"https://api.github.com/users/phieber","html_url":"https://github.com/phieber","followers_url":"https://api.github.com/users/phieber/followers","following_url":"https://api.github.com/users/phieber/following{/other_user}","gists_url":"https://api.github.com/users/phieber/gists{/gist_id}","starred_url":"https://api.github.com/users/phieber/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/phieber/subscriptions","organizations_url":"https://api.github.com/users/phieber/orgs","repos_url":"https://api.github.com/users/phieber/repos","events_url":"https://api.github.com/users/phieber/events{/privacy}","received_events_url":"https://api.github.com/users/phieber/received_events","type":"User"},"id":"1422904","created_at":"2011-12-02T11:25:46Z","updated_at":"2011-12-02T11:25:46Z"},{"url":"https://api.github.com/gists/1585783","user":{"login":"pbroschwitz","id":92129,"avatar_url":"https://1.gravatar.com/avatar/68e33f71f778ec322d68ca15ef2a7315?d=https%3A%2F%2Fidenticons.github.com%2F8417990ede5b8e7dc3295d4dd63e4062.png","gravatar_id":"68e33f71f778ec322d68ca15ef2a7315","url":"https://api.github.com/users/pbroschwitz","html_url":"https://github.com/pbroschwitz","followers_url":"https://api.github.com/users/pbroschwitz/followers","following_url":"https://api.github.com/users/pbroschwitz/following{/other_user}","gists_url":"https://api.github.com/users/pbroschwitz/gists{/gist_id}","starred_url":"https://api.github.com/users/pbroschwitz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pbroschwitz/subscriptions","organizations_url":"https://api.github.com/users/pbroschwitz/orgs","repos_url":"https://api.github.com/users/pbroschwitz/repos","events_url":"https://api.github.com/users/pbroschwitz/events{/privacy}","received_events_url":"https://api.github.com/users/pbroschwitz/received_events","type":"User"},"id":"1585783","created_at":"2012-01-09T23:59:07Z","updated_at":"2012-02-20T11:18:52Z"},{"url":"https://api.github.com/gists/2549120","user":{"login":"gaving","id":43741,"avatar_url":"https://2.gravatar.com/avatar/839485ec6b0111d4ccc69646789d6728?d=https%3A%2F%2Fidenticons.github.com%2F781870bb5979fcc948dcc48da5fb798a.png","gravatar_id":"839485ec6b0111d4ccc69646789d6728","url":"https://api.github.com/users/gaving","html_url":"https://github.com/gaving","followers_url":"https://api.github.com/users/gaving/followers","following_url":"https://api.github.com/users/gaving/following{/other_user}","gists_url":"https://api.github.com/users/gaving/gists{/gist_id}","starred_url":"https://api.github.com/users/gaving/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gaving/subscriptions","organizations_url":"https://api.github.com/users/gaving/orgs","repos_url":"https://api.github.com/users/gaving/repos","events_url":"https://api.github.com/users/gaving/events{/privacy}","received_events_url":"https://api.github.com/users/gaving/received_events","type":"User"},"id":"2549120","created_at":"2012-04-29T09:57:32Z","updated_at":"2012-04-29T09:57:32Z"},{"url":"https://api.github.com/gists/2549928","user":{"login":"pbelmans","id":700126,"avatar_url":"https://2.gravatar.com/avatar/bf4c56431003682b725b72668e7de35f?d=https%3A%2F%2Fidenticons.github.com%2Fb6e0db3b4d374eb7e8d52b9f271f4822.png","gravatar_id":"bf4c56431003682b725b72668e7de35f","url":"https://api.github.com/users/pbelmans","html_url":"https://github.com/pbelmans","followers_url":"https://api.github.com/users/pbelmans/followers","following_url":"https://api.github.com/users/pbelmans/following{/other_user}","gists_url":"https://api.github.com/users/pbelmans/gists{/gist_id}","starred_url":"https://api.github.com/users/pbelmans/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pbelmans/subscriptions","organizations_url":"https://api.github.com/users/pbelmans/orgs","repos_url":"https://api.github.com/users/pbelmans/repos","events_url":"https://api.github.com/users/pbelmans/events{/privacy}","received_events_url":"https://api.github.com/users/pbelmans/received_events","type":"User"},"id":"2549928","created_at":"2012-04-29T12:07:11Z","updated_at":"2012-05-14T11:08:39Z"},{"url":"https://api.github.com/gists/3061207","user":{"login":"robEllenberg","id":1210940,"avatar_url":"https://1.gravatar.com/avatar/cee0a0313cb89262ccaf408cf42eeae8?d=https%3A%2F%2Fidenticons.github.com%2Fb927fc8b72fac9a5b05e8afd1545e069.png","gravatar_id":"cee0a0313cb89262ccaf408cf42eeae8","url":"https://api.github.com/users/robEllenberg","html_url":"https://github.com/robEllenberg","followers_url":"https://api.github.com/users/robEllenberg/followers","following_url":"https://api.github.com/users/robEllenberg/following{/other_user}","gists_url":"https://api.github.com/users/robEllenberg/gists{/gist_id}","starred_url":"https://api.github.com/users/robEllenberg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/robEllenberg/subscriptions","organizations_url":"https://api.github.com/users/robEllenberg/orgs","repos_url":"https://api.github.com/users/robEllenberg/repos","events_url":"https://api.github.com/users/robEllenberg/events{/privacy}","received_events_url":"https://api.github.com/users/robEllenberg/received_events","type":"User"},"id":"3061207","created_at":"2012-07-06T16:34:35Z","updated_at":"2012-07-06T16:34:35Z"},{"url":"https://api.github.com/gists/3073850","user":{"login":"naught101","id":167164,"avatar_url":"https://2.gravatar.com/avatar/20cb8dcc17ad4334c0f8cb1ddc28bcd0?d=https%3A%2F%2Fidenticons.github.com%2F16a0a5f3381b862da55875130a94ad3f.png","gravatar_id":"20cb8dcc17ad4334c0f8cb1ddc28bcd0","url":"https://api.github.com/users/naught101","html_url":"https://github.com/naught101","followers_url":"https://api.github.com/users/naught101/followers","following_url":"https://api.github.com/users/naught101/following{/other_user}","gists_url":"https://api.github.com/users/naught101/gists{/gist_id}","starred_url":"https://api.github.com/users/naught101/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/naught101/subscriptions","organizations_url":"https://api.github.com/users/naught101/orgs","repos_url":"https://api.github.com/users/naught101/repos","events_url":"https://api.github.com/users/naught101/events{/privacy}","received_events_url":"https://api.github.com/users/naught101/received_events","type":"User"},"id":"3073850","created_at":"2012-07-09T02:17:21Z","updated_at":"2012-07-09T02:17:21Z"},{"url":"https://api.github.com/gists/3683565","user":{"login":"TKAB","id":66597,"avatar_url":"https://1.gravatar.com/avatar/7a66c8124726c66cf9901d7e09f4f3cb?d=https%3A%2F%2Fidenticons.github.com%2F4bec99ec5bd39630575692948d9e8169.png","gravatar_id":"7a66c8124726c66cf9901d7e09f4f3cb","url":"https://api.github.com/users/TKAB","html_url":"https://github.com/TKAB","followers_url":"https://api.github.com/users/TKAB/followers","following_url":"https://api.github.com/users/TKAB/following{/other_user}","gists_url":"https://api.github.com/users/TKAB/gists{/gist_id}","starred_url":"https://api.github.com/users/TKAB/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/TKAB/subscriptions","organizations_url":"https://api.github.com/users/TKAB/orgs","repos_url":"https://api.github.com/users/TKAB/repos","events_url":"https://api.github.com/users/TKAB/events{/privacy}","received_events_url":"https://api.github.com/users/TKAB/received_events","type":"User"},"id":"3683565","created_at":"2012-09-09T09:58:43Z","updated_at":"2012-09-09T09:58:43Z"},{"url":"https://api.github.com/gists/3802139","user":{"login":"linchen04","id":1383767,"avatar_url":"https://1.gravatar.com/avatar/4380e7c4928005fc0eaf9772e1fe64b7?d=https%3A%2F%2Fidenticons.github.com%2F39a2a9b3f884c9a2e97ce61cb56e02fd.png","gravatar_id":"4380e7c4928005fc0eaf9772e1fe64b7","url":"https://api.github.com/users/linchen04","html_url":"https://github.com/linchen04","followers_url":"https://api.github.com/users/linchen04/followers","following_url":"https://api.github.com/users/linchen04/following{/other_user}","gists_url":"https://api.github.com/users/linchen04/gists{/gist_id}","starred_url":"https://api.github.com/users/linchen04/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/linchen04/subscriptions","organizations_url":"https://api.github.com/users/linchen04/orgs","repos_url":"https://api.github.com/users/linchen04/repos","events_url":"https://api.github.com/users/linchen04/events{/privacy}","received_events_url":"https://api.github.com/users/linchen04/received_events","type":"User"},"id":"3802139","created_at":"2012-09-28T21:20:16Z","updated_at":"2012-09-28T21:20:16Z"},{"url":"https://api.github.com/gists/3958094","user":{"login":"macalicious","id":717205,"avatar_url":"https://2.gravatar.com/avatar/59eb80f68e015e725e9eeb90f24987b2?d=https%3A%2F%2Fidenticons.github.com%2F1d2591e0232d5734561c3c71252a2efa.png","gravatar_id":"59eb80f68e015e725e9eeb90f24987b2","url":"https://api.github.com/users/macalicious","html_url":"https://github.com/macalicious","followers_url":"https://api.github.com/users/macalicious/followers","following_url":"https://api.github.com/users/macalicious/following{/other_user}","gists_url":"https://api.github.com/users/macalicious/gists{/gist_id}","starred_url":"https://api.github.com/users/macalicious/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/macalicious/subscriptions","organizations_url":"https://api.github.com/users/macalicious/orgs","repos_url":"https://api.github.com/users/macalicious/repos","events_url":"https://api.github.com/users/macalicious/events{/privacy}","received_events_url":"https://api.github.com/users/macalicious/received_events","type":"User"},"id":"3958094","created_at":"2012-10-26T10:37:44Z","updated_at":"2012-10-26T10:37:44Z"},{"url":"https://api.github.com/gists/4362953","user":{"login":"dermesser","id":1042327,"avatar_url":"https://0.gravatar.com/avatar/1f99406671a26d17de4f0a52a41ad0c7?d=https%3A%2F%2Fidenticons.github.com%2F1b2f62f9f8f36eeb3c2a1ed42d1a2249.png","gravatar_id":"1f99406671a26d17de4f0a52a41ad0c7","url":"https://api.github.com/users/dermesser","html_url":"https://github.com/dermesser","followers_url":"https://api.github.com/users/dermesser/followers","following_url":"https://api.github.com/users/dermesser/following{/other_user}","gists_url":"https://api.github.com/users/dermesser/gists{/gist_id}","starred_url":"https://api.github.com/users/dermesser/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dermesser/subscriptions","organizations_url":"https://api.github.com/users/dermesser/orgs","repos_url":"https://api.github.com/users/dermesser/repos","events_url":"https://api.github.com/users/dermesser/events{/privacy}","received_events_url":"https://api.github.com/users/dermesser/received_events","type":"User"},"id":"4362953","created_at":"2012-12-23T11:04:08Z","updated_at":"2013-08-07T18:49:16Z"},{"url":"https://api.github.com/gists/4401093","user":{"login":"szalansky","id":323025,"avatar_url":"https://1.gravatar.com/avatar/b96196ac5b306a6f0d302dd9f82a24ee?d=https%3A%2F%2Fidenticons.github.com%2F6470274ac82665a71a91d36c419016ce.png","gravatar_id":"b96196ac5b306a6f0d302dd9f82a24ee","url":"https://api.github.com/users/szalansky","html_url":"https://github.com/szalansky","followers_url":"https://api.github.com/users/szalansky/followers","following_url":"https://api.github.com/users/szalansky/following{/other_user}","gists_url":"https://api.github.com/users/szalansky/gists{/gist_id}","starred_url":"https://api.github.com/users/szalansky/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/szalansky/subscriptions","organizations_url":"https://api.github.com/users/szalansky/orgs","repos_url":"https://api.github.com/users/szalansky/repos","events_url":"https://api.github.com/users/szalansky/events{/privacy}","received_events_url":"https://api.github.com/users/szalansky/received_events","type":"User"},"id":"4401093","created_at":"2012-12-28T19:28:03Z","updated_at":"2012-12-28T19:28:03Z"},{"url":"https://api.github.com/gists/4568476","user":{"login":"flomey","id":3226735,"avatar_url":"https://1.gravatar.com/avatar/3143afe043a2fdcd6a22a537e4cc3c8e?d=https%3A%2F%2Fidenticons.github.com%2F9271b5a509f2dabd1c5850acf684759c.png","gravatar_id":"3143afe043a2fdcd6a22a537e4cc3c8e","url":"https://api.github.com/users/flomey","html_url":"https://github.com/flomey","followers_url":"https://api.github.com/users/flomey/followers","following_url":"https://api.github.com/users/flomey/following{/other_user}","gists_url":"https://api.github.com/users/flomey/gists{/gist_id}","starred_url":"https://api.github.com/users/flomey/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/flomey/subscriptions","organizations_url":"https://api.github.com/users/flomey/orgs","repos_url":"https://api.github.com/users/flomey/repos","events_url":"https://api.github.com/users/flomey/events{/privacy}","received_events_url":"https://api.github.com/users/flomey/received_events","type":"User"},"id":"4568476","created_at":"2013-01-18T20:59:25Z","updated_at":"2013-01-18T20:59:25Z"},{"url":"https://api.github.com/gists/4732801","user":{"login":"mhebing","id":905115,"avatar_url":"https://2.gravatar.com/avatar/14e2a01d187cb0a167942e24e9234f95?d=https%3A%2F%2Fidenticons.github.com%2Fb874dedd9bb70a549db142d519aa6648.png","gravatar_id":"14e2a01d187cb0a167942e24e9234f95","url":"https://api.github.com/users/mhebing","html_url":"https://github.com/mhebing","followers_url":"https://api.github.com/users/mhebing/followers","following_url":"https://api.github.com/users/mhebing/following{/other_user}","gists_url":"https://api.github.com/users/mhebing/gists{/gist_id}","starred_url":"https://api.github.com/users/mhebing/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mhebing/subscriptions","organizations_url":"https://api.github.com/users/mhebing/orgs","repos_url":"https://api.github.com/users/mhebing/repos","events_url":"https://api.github.com/users/mhebing/events{/privacy}","received_events_url":"https://api.github.com/users/mhebing/received_events","type":"User"},"id":"4732801","created_at":"2013-02-07T17:57:21Z","updated_at":"2013-02-07T17:59:53Z"},{"url":"https://api.github.com/gists/5074215","user":{"login":"fumingshih","id":171536,"avatar_url":"https://0.gravatar.com/avatar/cdaeda52c7e0e7db119ec242652a7eac?d=https%3A%2F%2Fidenticons.github.com%2Ff3daf33ead84c02b32d673addce28321.png","gravatar_id":"cdaeda52c7e0e7db119ec242652a7eac","url":"https://api.github.com/users/fumingshih","html_url":"https://github.com/fumingshih","followers_url":"https://api.github.com/users/fumingshih/followers","following_url":"https://api.github.com/users/fumingshih/following{/other_user}","gists_url":"https://api.github.com/users/fumingshih/gists{/gist_id}","starred_url":"https://api.github.com/users/fumingshih/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fumingshih/subscriptions","organizations_url":"https://api.github.com/users/fumingshih/orgs","repos_url":"https://api.github.com/users/fumingshih/repos","events_url":"https://api.github.com/users/fumingshih/events{/privacy}","received_events_url":"https://api.github.com/users/fumingshih/received_events","type":"User"},"id":"5074215","created_at":"2013-03-03T02:30:54Z","updated_at":"2013-03-03T02:30:54Z"},{"url":"https://api.github.com/gists/5126805","user":{"login":"xiddw","id":742519,"avatar_url":"https://2.gravatar.com/avatar/e3aea2d1cdb375467416bff41c614582?d=https%3A%2F%2Fidenticons.github.com%2Ffd082f32f1f9679671081ba58bb37459.png","gravatar_id":"e3aea2d1cdb375467416bff41c614582","url":"https://api.github.com/users/xiddw","html_url":"https://github.com/xiddw","followers_url":"https://api.github.com/users/xiddw/followers","following_url":"https://api.github.com/users/xiddw/following{/other_user}","gists_url":"https://api.github.com/users/xiddw/gists{/gist_id}","starred_url":"https://api.github.com/users/xiddw/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/xiddw/subscriptions","organizations_url":"https://api.github.com/users/xiddw/orgs","repos_url":"https://api.github.com/users/xiddw/repos","events_url":"https://api.github.com/users/xiddw/events{/privacy}","received_events_url":"https://api.github.com/users/xiddw/received_events","type":"User"},"id":"5126805","created_at":"2013-03-10T02:21:30Z","updated_at":"2013-03-10T02:21:30Z"},{"url":"https://api.github.com/gists/5353918","user":{"login":"stared","id":1001610,"avatar_url":"https://2.gravatar.com/avatar/1b324e4900e79878eb518c1263b41795?d=https%3A%2F%2Fidenticons.github.com%2F031dfe1b6a9e475fa708179fb35beb3b.png","gravatar_id":"1b324e4900e79878eb518c1263b41795","url":"https://api.github.com/users/stared","html_url":"https://github.com/stared","followers_url":"https://api.github.com/users/stared/followers","following_url":"https://api.github.com/users/stared/following{/other_user}","gists_url":"https://api.github.com/users/stared/gists{/gist_id}","starred_url":"https://api.github.com/users/stared/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stared/subscriptions","organizations_url":"https://api.github.com/users/stared/orgs","repos_url":"https://api.github.com/users/stared/repos","events_url":"https://api.github.com/users/stared/events{/privacy}","received_events_url":"https://api.github.com/users/stared/received_events","type":"User"},"id":"5353918","created_at":"2013-04-10T11:42:03Z","updated_at":"2013-04-10T11:43:47Z"},{"url":"https://api.github.com/gists/5600181","user":{"login":"huashuai","id":256761,"avatar_url":"https://1.gravatar.com/avatar/279030da669c3950fc54dea37ee3109e?d=https%3A%2F%2Fidenticons.github.com%2Fc66590f0228b4de1b7d16d1b8f10161c.png","gravatar_id":"279030da669c3950fc54dea37ee3109e","url":"https://api.github.com/users/huashuai","html_url":"https://github.com/huashuai","followers_url":"https://api.github.com/users/huashuai/followers","following_url":"https://api.github.com/users/huashuai/following{/other_user}","gists_url":"https://api.github.com/users/huashuai/gists{/gist_id}","starred_url":"https://api.github.com/users/huashuai/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/huashuai/subscriptions","organizations_url":"https://api.github.com/users/huashuai/orgs","repos_url":"https://api.github.com/users/huashuai/repos","events_url":"https://api.github.com/users/huashuai/events{/privacy}","received_events_url":"https://api.github.com/users/huashuai/received_events","type":"User"},"id":"5600181","created_at":"2013-05-17T16:15:32Z","updated_at":"2013-05-17T16:15:32Z"},{"url":"https://api.github.com/gists/5639946","user":{"login":"simardcasanova","id":739940,"avatar_url":"https://0.gravatar.com/avatar/63c42221c8ed3dfc335a0d1b19397e36?d=https%3A%2F%2Fidenticons.github.com%2F819fcce6467f36e0beb6ffc69afa9f21.png","gravatar_id":"63c42221c8ed3dfc335a0d1b19397e36","url":"https://api.github.com/users/simardcasanova","html_url":"https://github.com/simardcasanova","followers_url":"https://api.github.com/users/simardcasanova/followers","following_url":"https://api.github.com/users/simardcasanova/following{/other_user}","gists_url":"https://api.github.com/users/simardcasanova/gists{/gist_id}","starred_url":"https://api.github.com/users/simardcasanova/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/simardcasanova/subscriptions","organizations_url":"https://api.github.com/users/simardcasanova/orgs","repos_url":"https://api.github.com/users/simardcasanova/repos","events_url":"https://api.github.com/users/simardcasanova/events{/privacy}","received_events_url":"https://api.github.com/users/simardcasanova/received_events","type":"User"},"id":"5639946","created_at":"2013-05-23T22:24:19Z","updated_at":"2013-05-23T22:24:57Z"},{"url":"https://api.github.com/gists/5965077","user":{"login":"habi","id":1651235,"avatar_url":"https://1.gravatar.com/avatar/4a0a820ba6c1996bc37d64ce14606ad4?d=https%3A%2F%2Fidenticons.github.com%2Fbaa3c8588d9ab73deea280466d5db7e1.png","gravatar_id":"4a0a820ba6c1996bc37d64ce14606ad4","url":"https://api.github.com/users/habi","html_url":"https://github.com/habi","followers_url":"https://api.github.com/users/habi/followers","following_url":"https://api.github.com/users/habi/following{/other_user}","gists_url":"https://api.github.com/users/habi/gists{/gist_id}","starred_url":"https://api.github.com/users/habi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/habi/subscriptions","organizations_url":"https://api.github.com/users/habi/orgs","repos_url":"https://api.github.com/users/habi/repos","events_url":"https://api.github.com/users/habi/events{/privacy}","received_events_url":"https://api.github.com/users/habi/received_events","type":"User"},"id":"5965077","created_at":"2013-07-10T09:57:15Z","updated_at":"2013-07-10T09:57:40Z"},{"url":"https://api.github.com/gists/6394053","user":{"login":"glaubius","id":5349064,"avatar_url":"https://0.gravatar.com/avatar/ff2451755814a23845b19551371bb026?d=https%3A%2F%2Fidenticons.github.com%2Faa59a5980a33a834ee55c9f386e7c996.png","gravatar_id":"ff2451755814a23845b19551371bb026","url":"https://api.github.com/users/glaubius","html_url":"https://github.com/glaubius","followers_url":"https://api.github.com/users/glaubius/followers","following_url":"https://api.github.com/users/glaubius/following{/other_user}","gists_url":"https://api.github.com/users/glaubius/gists{/gist_id}","starred_url":"https://api.github.com/users/glaubius/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/glaubius/subscriptions","organizations_url":"https://api.github.com/users/glaubius/orgs","repos_url":"https://api.github.com/users/glaubius/repos","events_url":"https://api.github.com/users/glaubius/events{/privacy}","received_events_url":"https://api.github.com/users/glaubius/received_events","type":"User"},"id":"6394053","created_at":"2013-08-30T20:39:05Z","updated_at":"2013-08-30T20:39:05Z"},{"url":"https://api.github.com/gists/6463518","user":{"login":"janten","id":1794407,"avatar_url":"https://2.gravatar.com/avatar/44f5d723bf2ef2dac40327bfa9815989?d=https%3A%2F%2Fidenticons.github.com%2Fe177a89b246259b7b5a84411923e6881.png","gravatar_id":"44f5d723bf2ef2dac40327bfa9815989","url":"https://api.github.com/users/janten","html_url":"https://github.com/janten","followers_url":"https://api.github.com/users/janten/followers","following_url":"https://api.github.com/users/janten/following{/other_user}","gists_url":"https://api.github.com/users/janten/gists{/gist_id}","starred_url":"https://api.github.com/users/janten/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/janten/subscriptions","organizations_url":"https://api.github.com/users/janten/orgs","repos_url":"https://api.github.com/users/janten/repos","events_url":"https://api.github.com/users/janten/events{/privacy}","received_events_url":"https://api.github.com/users/janten/received_events","type":"User"},"id":"6463518","created_at":"2013-09-06T13:04:58Z","updated_at":"2013-09-06T13:04:58Z"}],"history":[{"user":{"login":"kogakure","id":5535,"avatar_url":"https://0.gravatar.com/avatar/b53f98d49e275e8387897de02c92288d?d=https%3A%2F%2Fidenticons.github.com%2F7ec69dd44416c46745f6edd947b470cd.png","gravatar_id":"b53f98d49e275e8387897de02c92288d","url":"https://api.github.com/users/kogakure","html_url":"https://github.com/kogakure","followers_url":"https://api.github.com/users/kogakure/followers","following_url":"https://api.github.com/users/kogakure/following{/other_user}","gists_url":"https://api.github.com/users/kogakure/gists{/gist_id}","starred_url":"https://api.github.com/users/kogakure/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kogakure/subscriptions","organizations_url":"https://api.github.com/users/kogakure/orgs","repos_url":"https://api.github.com/users/kogakure/repos","events_url":"https://api.github.com/users/kogakure/events{/privacy}","received_events_url":"https://api.github.com/users/kogakure/received_events","type":"User"},"version":"3e0e8350f040f21811ceea13975086158ccae986","committed_at":"2010-06-25T06:52:37Z","change_status":{"total":3,"additions":2,"deletions":1},"url":"https://api.github.com/gists/149016/3e0e8350f040f21811ceea13975086158ccae986"},{"user":{"login":"kogakure","id":5535,"avatar_url":"https://0.gravatar.com/avatar/b53f98d49e275e8387897de02c92288d?d=https%3A%2F%2Fidenticons.github.com%2F7ec69dd44416c46745f6edd947b470cd.png","gravatar_id":"b53f98d49e275e8387897de02c92288d","url":"https://api.github.com/users/kogakure","html_url":"https://github.com/kogakure","followers_url":"https://api.github.com/users/kogakure/followers","following_url":"https://api.github.com/users/kogakure/following{/other_user}","gists_url":"https://api.github.com/users/kogakure/gists{/gist_id}","starred_url":"https://api.github.com/users/kogakure/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kogakure/subscriptions","organizations_url":"https://api.github.com/users/kogakure/orgs","repos_url":"https://api.github.com/users/kogakure/repos","events_url":"https://api.github.com/users/kogakure/events{/privacy}","received_events_url":"https://api.github.com/users/kogakure/received_events","type":"User"},"version":"a3ce60041fe20410fc55d141e77a25d26e1a562a","committed_at":"2009-07-17T11:37:43Z","change_status":{"total":22,"additions":22,"deletions":0},"url":"https://api.github.com/gists/149016/a3ce60041fe20410fc55d141e77a25d26e1a562a"}]} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/git/blobs/681fb61f1761743a02f5c790f1c762cbfe8cfad1 +{'If-None-Match': '"01162d231bc8dfd76e35f833ecebaa0e"', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +304 +[('status', '304 Not Modified'), ('x-ratelimit-remaining', '4866'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', 'da1e9461-f849-4250-85c4-978c8e9e496d'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('etag', '"01162d231bc8dfd76e35f833ecebaa0e"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:06:11 GMT'), ('access-control-allow-origin', '*'), ('x-ratelimit-reset', '1378482241')] + + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/git/commits/be37b8a7f3a68631c32672dcd84d9eba27438ee6 +{'If-None-Match': '"b9013239d62338e81f6ec48bae78699e"', 'User-Agent': 'PyGithub/Python', 'Authorization': 'Basic login_and_password_removed', 'If-Modified-Since': 'Thu, 22 Nov 2012 19:06:01 GMT'} +null +304 +[('status', '304 Not Modified'), ('x-ratelimit-remaining', '4866'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '05667811-3080-4fb5-a32a-de8debc918ba'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('last-modified', 'Thu, 22 Nov 2012 19:06:01 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"b9013239d62338e81f6ec48bae78699e"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:06:12 GMT'), ('access-control-allow-origin', '*'), ('x-ratelimit-reset', '1378482241')] + + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/git/refs/tags/v1.17.0 +{'If-None-Match': '"feb5059cac897bdd13fd1205785f865c"', 'User-Agent': 'PyGithub/Python', 'Authorization': 'Basic login_and_password_removed', 'If-Modified-Since': 'Fri, 06 Sep 2013 12:41:05 GMT'} +null +304 +[('status', '304 Not Modified'), ('x-ratelimit-remaining', '4866'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', 'd852d843-7bb6-4ffc-a4fb-55621588f819'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 06 Sep 2013 12:41:05 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"feb5059cac897bdd13fd1205785f865c"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:06:13 GMT'), ('access-control-allow-origin', '*'), ('x-ratelimit-reset', '1378482241')] + + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/git/trees/6f7c2d8c66d78863f7b91792deaead619799a1ce +{'If-None-Match': '"feb5059cac897bdd13fd1205785f865c"', 'User-Agent': 'PyGithub/Python', 'Authorization': 'Basic login_and_password_removed', 'If-Modified-Since': 'Fri, 06 Sep 2013 12:41:05 GMT'} +null +304 +[('status', '304 Not Modified'), ('x-ratelimit-remaining', '4866'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '787d7bf1-e453-4694-87f6-bf3ed4855b87'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 06 Sep 2013 12:41:05 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"feb5059cac897bdd13fd1205785f865c"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:06:14 GMT'), ('access-control-allow-origin', '*'), ('x-ratelimit-reset', '1378482241')] + + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/hooks/423574 +{'If-None-Match': '"f7b3dbaaca94c0219f23e9021e78506f"', 'User-Agent': 'PyGithub/Python', 'Authorization': 'Basic login_and_password_removed', 'If-Modified-Since': 'Fri, 06 Sep 2013 12:41:06 GMT'} +null +304 +[('status', '304 Not Modified'), ('x-ratelimit-remaining', '4866'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '40b5c72c-2017-43d7-9b3a-9f2531db400c'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 06 Sep 2013 12:41:06 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"f7b3dbaaca94c0219f23e9021e78506f"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:06:15 GMT'), ('access-control-allow-origin', '*'), ('x-ratelimit-reset', '1378482241')] + + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/hooks/423574 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4865'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '409e8b85-37ed-4244-b316-1824ddee228c'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '462'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 06 Sep 2013 12:41:06 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"f7b3dbaaca94c0219f23e9021e78506f"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:06:21 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378482241')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/hooks/423574","test_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks/423574/test","id":423574,"name":"travis","active":true,"events":["push","pull_request","issue_comment","public","member"],"config":{"domain":"","token":"pJdnhcDq3dQ9Cr1J1znQ","user":"jacquev6"},"last_response":{"code":200,"status":"active","message":"OK"},"updated_at":"2013-09-06T12:41:06Z","created_at":"2012-09-16T07:14:29Z"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/188 +{'If-None-Match': '"654d1a29abe3a61b096e8bffbc61c162"', 'User-Agent': 'PyGithub/Python', 'Authorization': 'Basic login_and_password_removed', 'If-Modified-Since': 'Fri, 06 Sep 2013 12:51:22 GMT'} +null +304 +[('status', '304 Not Modified'), ('x-ratelimit-remaining', '4865'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', 'e886b291-23e5-4d71-84d7-78bb6ce13206'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 06 Sep 2013 12:51:22 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"654d1a29abe3a61b096e8bffbc61c162"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:06:22 GMT'), ('access-control-allow-origin', '*'), ('x-ratelimit-reset', '1378482241')] + + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/comments/22686536 +{'If-None-Match': '"654d1a29abe3a61b096e8bffbc61c162"', 'User-Agent': 'PyGithub/Python', 'Authorization': 'Basic login_and_password_removed', 'If-Modified-Since': 'Fri, 06 Sep 2013 12:51:22 GMT'} +null +304 +[('status', '304 Not Modified'), ('x-ratelimit-remaining', '4865'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', 'f9addbd4-bd0d-4978-8dae-6f91fd22763f'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 06 Sep 2013 12:51:22 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"654d1a29abe3a61b096e8bffbc61c162"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:06:23 GMT'), ('access-control-allow-origin', '*'), ('x-ratelimit-reset', '1378482241')] + + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/events/60946408 +{'If-None-Match': '"654d1a29abe3a61b096e8bffbc61c162"', 'User-Agent': 'PyGithub/Python', 'Authorization': 'Basic login_and_password_removed', 'If-Modified-Since': 'Fri, 06 Sep 2013 12:51:22 GMT'} +null +304 +[('status', '304 Not Modified'), ('x-ratelimit-remaining', '4865'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', 'd0f0ed2b-5a02-4538-b7cb-79e35c27f985'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 06 Sep 2013 12:51:22 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"654d1a29abe3a61b096e8bffbc61c162"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:06:24 GMT'), ('access-control-allow-origin', '*'), ('x-ratelimit-reset', '1378482241')] + + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/events/60946408 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4864'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '92278efc-1781-4b40-9fe4-112cf30d3d3f'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '5613'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 06 Sep 2013 12:51:22 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"654d1a29abe3a61b096e8bffbc61c162"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:06:25 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378482241')] +{"id":60946408,"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/60946408","actor":{"login":"jacquev6","id":327146,"avatar_url":"https://2.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"event":"assigned","commit_id":null,"created_at":"2013-08-15T05:55:32Z","issue":{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/188","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/188/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/188/comments","events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/188/events","html_url":"https://github.com/jacquev6/PyGithub/issues/188","id":17736533,"number":188,"title":"Getting the status of GitHub","user":{"login":"ruxandraburtica","id":797922,"avatar_url":"https://0.gravatar.com/avatar/5703c5907fc67b679be40fd307b07733?d=https%3A%2F%2Fidenticons.github.com%2F470a720db37e19afad67c34e30ffcd85.png","gravatar_id":"5703c5907fc67b679be40fd307b07733","url":"https://api.github.com/users/ruxandraburtica","html_url":"https://github.com/ruxandraburtica","followers_url":"https://api.github.com/users/ruxandraburtica/followers","following_url":"https://api.github.com/users/ruxandraburtica/following{/other_user}","gists_url":"https://api.github.com/users/ruxandraburtica/gists{/gist_id}","starred_url":"https://api.github.com/users/ruxandraburtica/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ruxandraburtica/subscriptions","organizations_url":"https://api.github.com/users/ruxandraburtica/orgs","repos_url":"https://api.github.com/users/ruxandraburtica/repos","events_url":"https://api.github.com/users/ruxandraburtica/events{/privacy}","received_events_url":"https://api.github.com/users/ruxandraburtica/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"state":"closed","assignee":{"login":"jacquev6","id":327146,"avatar_url":"https://2.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/31","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/31/labels","id":402388,"number":31,"title":"Version 1.19.0","description":"","creator":{"login":"jacquev6","id":327146,"avatar_url":"https://2.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"open_issues":0,"closed_issues":3,"state":"open","created_at":"2013-08-15T05:54:47Z","updated_at":"2013-09-06T09:42:02Z","due_on":null},"comments":2,"created_at":"2013-08-07T08:57:49Z","updated_at":"2013-09-06T09:11:57Z","closed_at":"2013-09-06T09:11:57Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Maybe I haven't found it, but it would be very useful to have methods for checking the status of the GitHub API (https://status.github.com/api)"}} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/labels/Bug +{'If-None-Match': '"a4af9b5fe3ebc7d9ec2ecd4a637a4863"', 'User-Agent': 'PyGithub/Python', 'Authorization': 'Basic login_and_password_removed', 'If-Modified-Since': 'Sat, 20 Oct 2007 11:24:19 GMT'} +null +304 +[('status', '304 Not Modified'), ('x-ratelimit-remaining', '4864'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', 'd4b19adc-a9cc-4710-b146-93a5c3edb71f'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('last-modified', 'Sat, 20 Oct 2007 11:24:19 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"a4af9b5fe3ebc7d9ec2ecd4a637a4863"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:06:26 GMT'), ('access-control-allow-origin', '*'), ('x-ratelimit-reset', '1378482241')] + + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/milestones/17 +{'If-None-Match': '"654d1a29abe3a61b096e8bffbc61c162"', 'User-Agent': 'PyGithub/Python', 'Authorization': 'Basic login_and_password_removed', 'If-Modified-Since': 'Fri, 06 Sep 2013 12:51:22 GMT'} +null +304 +[('status', '304 Not Modified'), ('x-ratelimit-remaining', '4864'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '21cfd2f1-595f-480a-bbf0-e9259d46277e'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 06 Sep 2013 12:51:22 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"654d1a29abe3a61b096e8bffbc61c162"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:06:28 GMT'), ('access-control-allow-origin', '*'), ('x-ratelimit-reset', '1378482241')] + + +https +GET +api.github.com +None +/users/nvie +{'If-None-Match': '"ded215d39a497c6d2de00dd5e5a5deb6"', 'User-Agent': 'PyGithub/Python', 'Authorization': 'Basic login_and_password_removed', 'If-Modified-Since': 'Fri, 06 Sep 2013 13:38:58 GMT'} +null +304 +[('status', '304 Not Modified'), ('x-ratelimit-remaining', '4864'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', 'd669c122-58f7-447d-8d21-b48c619cca41'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 06 Sep 2013 13:38:58 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"ded215d39a497c6d2de00dd5e5a5deb6"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:06:29 GMT'), ('access-control-allow-origin', '*'), ('x-ratelimit-reset', '1378482241')] + + +https +GET +api.github.com +None +/notifications/threads/8406712 +{'If-None-Match': '"848b2905eeb475bca3c72fe17bedcc0c"', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4863'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '974ec572-54e3-4f64-bcff-c203fea238da'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('content-length', '4203'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('etag', '"a1285606034653c336a6b673a35733c1"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:06:29 GMT'), ('access-control-allow-origin', '*'), ('x-poll-interval', '60'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378482241')] +{"id":"8406712","unread":null,"reason":"subscribed","updated_at":"2013-03-15T05:43:11Z","last_read_at":null,"subject":{"title":"Feature/coveralls","url":"https://api.github.com/repos/ZIMK/fwadmin/pulls/21","latest_comment_url":"https://api.github.com/repos/ZIMK/fwadmin/issues/comments/14944813","type":"PullRequest"},"repository":{"id":8432784,"name":"fwadmin","full_name":"ZIMK/fwadmin","owner":{"login":"ZIMK","id":1187008,"avatar_url":"https://2.gravatar.com/avatar/ce407a684dac7cf642606501244dd9f0?d=https%3A%2F%2Fidenticons.github.com%2Fa8b50d6bf21d85e47ce11e1d23087af2.png","gravatar_id":"ce407a684dac7cf642606501244dd9f0","url":"https://api.github.com/users/ZIMK","html_url":"https://github.com/ZIMK","followers_url":"https://api.github.com/users/ZIMK/followers","following_url":"https://api.github.com/users/ZIMK/following{/other_user}","gists_url":"https://api.github.com/users/ZIMK/gists{/gist_id}","starred_url":"https://api.github.com/users/ZIMK/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ZIMK/subscriptions","organizations_url":"https://api.github.com/users/ZIMK/orgs","repos_url":"https://api.github.com/users/ZIMK/repos","events_url":"https://api.github.com/users/ZIMK/events{/privacy}","received_events_url":"https://api.github.com/users/ZIMK/received_events","type":"Organization"},"private":false,"html_url":"https://github.com/ZIMK/fwadmin","description":"Django based self-service firewall config tool","fork":true,"url":"https://api.github.com/repos/ZIMK/fwadmin","forks_url":"https://api.github.com/repos/ZIMK/fwadmin/forks","keys_url":"https://api.github.com/repos/ZIMK/fwadmin/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ZIMK/fwadmin/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ZIMK/fwadmin/teams","hooks_url":"https://api.github.com/repos/ZIMK/fwadmin/hooks","issue_events_url":"https://api.github.com/repos/ZIMK/fwadmin/issues/events{/number}","events_url":"https://api.github.com/repos/ZIMK/fwadmin/events","assignees_url":"https://api.github.com/repos/ZIMK/fwadmin/assignees{/user}","branches_url":"https://api.github.com/repos/ZIMK/fwadmin/branches{/branch}","tags_url":"https://api.github.com/repos/ZIMK/fwadmin/tags","blobs_url":"https://api.github.com/repos/ZIMK/fwadmin/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ZIMK/fwadmin/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ZIMK/fwadmin/git/refs{/sha}","trees_url":"https://api.github.com/repos/ZIMK/fwadmin/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ZIMK/fwadmin/statuses/{sha}","languages_url":"https://api.github.com/repos/ZIMK/fwadmin/languages","stargazers_url":"https://api.github.com/repos/ZIMK/fwadmin/stargazers","contributors_url":"https://api.github.com/repos/ZIMK/fwadmin/contributors","subscribers_url":"https://api.github.com/repos/ZIMK/fwadmin/subscribers","subscription_url":"https://api.github.com/repos/ZIMK/fwadmin/subscription","commits_url":"https://api.github.com/repos/ZIMK/fwadmin/commits{/sha}","git_commits_url":"https://api.github.com/repos/ZIMK/fwadmin/git/commits{/sha}","comments_url":"https://api.github.com/repos/ZIMK/fwadmin/comments{/number}","issue_comment_url":"https://api.github.com/repos/ZIMK/fwadmin/issues/comments/{number}","contents_url":"https://api.github.com/repos/ZIMK/fwadmin/contents/{+path}","compare_url":"https://api.github.com/repos/ZIMK/fwadmin/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ZIMK/fwadmin/merges","archive_url":"https://api.github.com/repos/ZIMK/fwadmin/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ZIMK/fwadmin/downloads","issues_url":"https://api.github.com/repos/ZIMK/fwadmin/issues{/number}","pulls_url":"https://api.github.com/repos/ZIMK/fwadmin/pulls{/number}","milestones_url":"https://api.github.com/repos/ZIMK/fwadmin/milestones{/number}","notifications_url":"https://api.github.com/repos/ZIMK/fwadmin/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ZIMK/fwadmin/labels{/name}"},"url":"https://api.github.com/notifications/threads/8406712","subscription_url":"https://api.github.com/notifications/threads/8406712/subscription"} + +https +GET +api.github.com +None +/orgs/BeaverSoftware +{'If-None-Match': '"99d8ce990ccf1acbb3508bd20d9883e4"', 'User-Agent': 'PyGithub/Python', 'Authorization': 'Basic login_and_password_removed', 'If-Modified-Since': 'Wed, 23 Jan 2013 12:15:22 GMT'} +null +304 +[('status', '304 Not Modified'), ('x-ratelimit-remaining', '4863'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '2941dffb-707a-40d0-b4e7-a66e923fa01e'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('last-modified', 'Wed, 23 Jan 2013 12:15:22 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"99d8ce990ccf1acbb3508bd20d9883e4"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:06:30 GMT'), ('access-control-allow-origin', '*'), ('x-ratelimit-reset', '1378482241')] + + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/pulls/31 +{'If-None-Match': '"654d1a29abe3a61b096e8bffbc61c162"', 'User-Agent': 'PyGithub/Python', 'Authorization': 'Basic login_and_password_removed', 'If-Modified-Since': 'Fri, 06 Sep 2013 12:51:22 GMT'} +null +304 +[('status', '304 Not Modified'), ('x-ratelimit-remaining', '4863'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '70632470-ec82-4aed-9456-a63147919253'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 06 Sep 2013 12:51:22 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"654d1a29abe3a61b096e8bffbc61c162"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:06:32 GMT'), ('access-control-allow-origin', '*'), ('x-ratelimit-reset', '1378482241')] + + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/pulls/comments/1580134 +{'If-None-Match': '"654d1a29abe3a61b096e8bffbc61c162"', 'User-Agent': 'PyGithub/Python', 'Authorization': 'Basic login_and_password_removed', 'If-Modified-Since': 'Fri, 06 Sep 2013 12:51:22 GMT'} +null +304 +[('status', '304 Not Modified'), ('x-ratelimit-remaining', '4863'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '2ca3f96b-7771-41a5-9aba-d8dedc12e465'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 06 Sep 2013 12:51:22 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"654d1a29abe3a61b096e8bffbc61c162"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:06:35 GMT'), ('access-control-allow-origin', '*'), ('x-ratelimit-reset', '1378482241')] + + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'If-None-Match': '"feb5059cac897bdd13fd1205785f865c"', 'User-Agent': 'PyGithub/Python', 'Authorization': 'Basic login_and_password_removed', 'If-Modified-Since': 'Fri, 06 Sep 2013 12:41:05 GMT'} +null +304 +[('status', '304 Not Modified'), ('x-ratelimit-remaining', '4863'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', 'beb42a35-9e06-4b99-9abc-5b7e4e71fa85'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 06 Sep 2013 12:41:05 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"feb5059cac897bdd13fd1205785f865c"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:06:36 GMT'), ('access-control-allow-origin', '*'), ('x-ratelimit-reset', '1378482241')] + + +https +GET +api.github.com +None +/teams/141487 +{'If-None-Match': '"a4af9b5fe3ebc7d9ec2ecd4a637a4863"', 'User-Agent': 'PyGithub/Python', 'Authorization': 'Basic login_and_password_removed', 'If-Modified-Since': 'Sat, 20 Oct 2007 11:24:19 GMT'} +null +304 +[('status', '304 Not Modified'), ('x-ratelimit-remaining', '4863'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', 'd65865d1-e84d-418b-8465-54b9c8034ead'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('last-modified', 'Sat, 20 Oct 2007 11:24:19 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"a4af9b5fe3ebc7d9ec2ecd4a637a4863"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 06 Sep 2013 15:06:37 GMT'), ('access-control-allow-origin', '*'), ('x-ratelimit-reset', '1378482241')] + + diff --git a/lib/github/tests/ReplayData/Gist.testAttributes.txt b/lib/github/tests/ReplayData/Gist.testAttributes.txt new file mode 100644 index 0000000000..6e1e71cd7d --- /dev/null +++ b/lib/github/tests/ReplayData/Gist.testAttributes.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/gists/6296732 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '26707'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '3061975e1f37121b3751604ad153c687'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"1c7d4253540b5f2dce518343258085ff"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4984'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '62E80DDA:1FFE:2F9F3B3:5366987A'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Sun, 04 May 2014 19:18:39 GMT'), ('date', 'Sun, 04 May 2014 19:43:54 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1399236081')] +{"url":"https://api.github.com/gists/6296732","forks_url":"https://api.github.com/gists/6296732/forks","commits_url":"https://api.github.com/gists/6296732/commits","id":"6296732","git_pull_url":"https://gist.github.com/6296732.git","git_push_url":"https://gist.github.com/6296732.git","html_url":"https://gist.github.com/6296732","files":{"GithubAPI.lua":{"filename":"GithubAPI.lua","type":"text/plain","language":"Lua","raw_url":"https://gist.githubusercontent.com/jacquev6/6296732/raw/88aafa25fb28e17013054a117354a37f0d78963c/GithubAPI.lua","size":21229,"content":"-- GithubAPI\n-- @Author : Hyro Vitaly Protago\n-- @Version : 1.0.0\n\n--[[\n\nINFOS :\n - Cannot delete an anonymous gist\n]]--\n\nGithubAPI = {\n\tlocation = \"https://api.github.com/\",\n\ttoken = nil,\n\tOAuth = {\n\t\tauthorizations = {}\n\t},\n\tgist = {\n\t\tlist = {},\n\t\tcomment = {}\n\t},\n\tgithub = {}\n}\n\n----------------------------------------------------------------------------\n------------------------------ Github API ----------------------------------\n----------------------------------------------------------------------------\n\n--- Authentication ---\n\n--[[ Scopes --\n\nScopes let you specify exactly what type of access you need. Scopes limit access for OAuth tokens.\nThey do not grant any additional permission beyond that which the user already has.\n\nFor the web flow, requested scopes will be displayed to the user on the authorize form.\n\nCheck headers to see what OAuth scopes you have, and what the API action accepts.\n\n~~~\n$ curl -H \"Authorization: token OAUTH-TOKEN\" https://api.github.com/users/technoweenie -I\nHTTP/1.1 200 OK\nX-OAuth-Scopes: repo, user\nX-Accepted-OAuth-Scopes: user\nX-OAuth-Scopes lists the scopes your token has authorized. X-Accepted-OAuth-Scopes lists the scopes that the action checks for.\n~~~\n\n- (no scope)\npublic read-only access (includes public user profile info, public repo info, and gists).\n- user\nRead/write access to profile info only. Note: this scope includes user:email and user:follow.\n- user:email\nRead access to a user’s email addresses.\n- user:follow\nAccess to follow or unfollow other users.\n- public_repo\nRead/write access to public repos and organizations.\n- repo\nRead/write access to public and private repos and organizations.\n- repo:status\nRead/write access to public and private repository commit statuses.\nThis scope is only necessary to grant other users or services access to private repository commit statuses without granting access to the code.\nThe repo and public_repo scopes already include access to commit status for private and public repositories respectively.\n- delete_repo\nDelete access to adminable repositories.\n- notifications\nRead access to a user’s notifications. repo is accepted too.\n- gist\nWrite access to gists.\n\nNOTE: Your application can request the scopes in the initial redirection. You can specify multiple scopes by separating them by a comma.\n~~~\nhttps://github.com/login/oauth/authorize?\n client_id=...&\n scope=user,public_repo\n~~~\n]]--\n\n-- Redirect users to request GitHub access --\nfunction GithubAPI.OAuth.getToken(client_id, scope, callback)\n\tGithubAPI.http_request(\"https://github.com/login/oauth/authorize?client_id=\"..client_id..\"&scope=\"..scope, function(data, status, headers)\n\t\tGithubAPI.OAuth._getToken(client_id, client_secret, data, callback)\n\tend, nil, true)\nend\n-- GitHub redirects back to your site --\nfunction GithubAPI.OAuth._getToken(client_id, client_secret, code, callback)\n\tGithubAPI.http_request(\"https://github.com/login/oauth/access_token\", callback, {\n\t\tmethod = \"POST\",\n\t\tdata = {\n\t\t\tclient_id = client_id,\n\t\t\tclient_secret = client_secret,\n\t\t\tcode = code\n\t\t}\n\t}, true)\nend\n\n-- List your authorizations --\nfunction GithubAPI.OAuth.authorizations.list(callback)\n\tGithubAPI.http_request(\"authorizations\", callback)\nend\n\n--[[ Response --\nStatus: 200 OK\nLink: ; rel=\"next\",\n ; rel=\"last\"\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n[\n {\n \"id\": 1,\n \"url\": \"https://api.github.com/authorizations/1\",\n \"scopes\": [\n \"public_repo\"\n ],\n \"token\": \"abc123\",\n \"app\": {\n \"url\": \"http://my-github-app.com\",\n \"name\": \"my github app\",\n \"client_id\": \"abcde12345fghij67890\"\n },\n \"note\": \"optional note\",\n \"note_url\": \"http://optional/note/url\",\n \"updated_at\": \"2011-09-06T20:39:23Z\",\n \"created_at\": \"2011-09-06T17:26:27Z\"\n }\n]\n]]--\n\n-- Get a single authorization --\nfunction GithubAPI.OAuth.authorizations.get(id, callback)\n\tGithubAPI.http_request(\"authorizations/\"..id, callback)\nend\n\n--[[ Response --\nStatus: 200 OK\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"id\": 1,\n \"url\": \"https://api.github.com/authorizations/1\",\n \"scopes\": [\n \"public_repo\"\n ],\n \"token\": \"abc123\",\n \"app\": {\n \"url\": \"http://my-github-app.com\",\n \"name\": \"my github app\",\n \"client_id\": \"abcde12345fghij67890\"\n },\n \"note\": \"optional note\",\n \"note_url\": \"http://optional/note/url\",\n \"updated_at\": \"2011-09-06T20:39:23Z\",\n \"created_at\": \"2011-09-06T17:26:27Z\"\n}\n]]--\n\n-- Create a new authorization --\nfunction GithubAPI.OAuth.authorizations.create(callback, scopes, note, note_url, client_id, client_secret)\n\tGithubAPI.http_request(\"authorizations/\", callback, {\n\t\tmethod = \"POST\",\n\t\tdata = {\n\t\t\tscopes = scopes,\n\t\t\tnote = note,\n\t\t\tnote_url = note_url,\n\t\t\tclient_id = client_id,\n\t\t\tclient_secret = client_secret\n\t\t}\n\t})\nend\n\n--[[ Input --\nscopes\nOptional array - A list of scopes that this authorization is in.\n\nnote\nOptional string - A note to remind you what the OAuth token is for.\n\nnote_url\nOptional string - A URL to remind you what app the OAuth token is for.\n\nclient_id\nOptional String - The 20 character OAuth app client key for which to create the token.\n\nclient_secret\nOptional String - The 40 character OAuth app client secret for which to create the token.\n~~~\n{\n \"scopes\": [\n \"public_repo\"\n ],\n \"note\": \"admin script\"\n}\n~~~\n]]--\n\n--[[ Response --\nStatus: 201 Created\nLocation: https://api.github.com/authorizations/1\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"id\": 1,\n \"url\": \"https://api.github.com/authorizations/1\",\n \"scopes\": [\n \"public_repo\"\n ],\n \"token\": \"abc123\",\n \"app\": {\n \"url\": \"http://my-github-app.com\",\n \"name\": \"my github app\",\n \"client_id\": \"abcde12345fghij67890\"\n },\n \"note\": \"optional note\",\n \"note_url\": \"http://optional/note/url\",\n \"updated_at\": \"2011-09-06T20:39:23Z\",\n \"created_at\": \"2011-09-06T17:26:27Z\"\n}\n]]--\n\n-- TODO\n-- Update\n-- Check\n-- Delete\n\n--- GISTS ---\n\n-- List gists --\nfunction GithubAPI.gist.list.user(user, callback)\n\tGithubAPI.http_request(\"users/\"..user..\"/gists\", callback)\nend\nfunction GithubAPI.gist.list.all(callback) -- return all public gists if called anonymously\n\tGithubAPI.http_request(\"gists\", callback)\nend\nfunction GithubAPI.gist.list.allPublic(callback)\n\tGithubAPI.http_request(\"gists/public\", callback)\nend\nfunction GithubAPI.gist.list.starred(callback)\n\tGithubAPI.http_request(\"gists/starred\", callback)\nend\n\n--[[ Response --\nStatus: 200 OK\nLink: ; rel=\"next\",\n ; rel=\"last\"\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n[\n {\n \"url\": \"https://api.github.com/gists/88a3112be74ba6ad701e\",\n \"id\": \"1\",\n \"description\": \"description of gist\",\n \"public\": true,\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"files\": {\n \"ring.erl\": {\n \"size\": 932,\n \"filename\": \"ring.erl\",\n \"raw_url\": \"https://gist.github.com/raw/365370/8c4d2d43d178df44f4c03a7f2ac0ff512853564e/ring.erl\"\n }\n },\n \"comments\": 0,\n \"comments_url\": \"https://api.github.com/gists/8438e99468ee9a4ab10e/comments/\",\n \"html_url\": \"https://gist.github.com/1\",\n \"git_pull_url\": \"git://gist.github.com/1.git\",\n \"git_push_url\": \"git@gist.github.com:1.git\",\n \"created_at\": \"2010-04-14T02:15:15Z\"\n }\n]\n]]--\n\n-- Get a single gist --\nfunction GithubAPI.gist.get(id, callback)\n\tGithubAPI.http_request(\"gists/\"..id, callback)\nend\n\n--[[ Response --\nStatus: 200 OK\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"url\": \"https://api.github.com/gists/88a3112be74ba6ad701e\",\n \"id\": \"1\",\n \"description\": \"description of gist\",\n \"public\": true,\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"files\": {\n \"ring.erl\": {\n \"size\": 932,\n \"filename\": \"ring.erl\",\n \"raw_url\": \"https://gist.github.com/raw/365370/8c4d2d43d178df44f4c03a7f2ac0ff512853564e/ring.erl\"\n }\n },\n \"comments\": 0,\n \"comments_url\": \"https://api.github.com/gists/8438e99468ee9a4ab10e/comments/\",\n \"html_url\": \"https://gist.github.com/1\",\n \"git_pull_url\": \"git://gist.github.com/1.git\",\n \"git_push_url\": \"git@gist.github.com:1.git\",\n \"created_at\": \"2010-04-14T02:15:15Z\",\n \"forks\": [\n {\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"url\": \"https://api.github.com/gists/add0d71b065f55c46f60\",\n \"created_at\": \"2011-04-14T16:00:49Z\"\n }\n ],\n \"history\": [\n {\n \"url\": \"https://api.github.com/gists/80bdb0d081c447600e18\",\n \"version\": \"57a7f021a713b1c5a6a199b54cc514735d2d462f\",\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"change_status\": {\n \"deletions\": 0,\n \"additions\": 180,\n \"total\": 180\n },\n \"committed_at\": \"2010-04-14T02:15:15Z\"\n }\n ]\n}\n]]--\n\n-- Create a gist --\nfunction GithubAPI.gist.create(public, files, callback ,description)\n\tGithubAPI.http_request(\"gists/\"..id, callback, {\n\t\tmethod = \"POST\",\n\t\tdata = {\n\t\t\tpublic = public,\n\t\t\tfiles = files,\n\t\t\tdescription = description\n\t\t}\n\t})\nend\n\n--[[ Input --\n{\n \"description\": \"the description for this gist\",\n \"public\": true,\n \"files\": {\n \"file1.txt\": {\n \"content\": \"String file contents\"\n }\n }\n}\n]]--\n\n--[[ Response --\nStatus: 201 Created\nLocation: https://api.github.com/gists/1\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"url\": \"https://api.github.com/gists/88a3112be74ba6ad701e\",\n \"id\": \"1\",\n \"description\": \"description of gist\",\n \"public\": true,\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"files\": {\n \"ring.erl\": {\n \"size\": 932,\n \"filename\": \"ring.erl\",\n \"raw_url\": \"https://gist.github.com/raw/365370/8c4d2d43d178df44f4c03a7f2ac0ff512853564e/ring.erl\"\n }\n },\n \"comments\": 0,\n \"comments_url\": \"https://api.github.com/gists/8438e99468ee9a4ab10e/comments/\",\n \"html_url\": \"https://gist.github.com/1\",\n \"git_pull_url\": \"git://gist.github.com/1.git\",\n \"git_push_url\": \"git@gist.github.com:1.git\",\n \"created_at\": \"2010-04-14T02:15:15Z\",\n \"forks\": [\n {\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"url\": \"https://api.github.com/gists/add0d71b065f55c46f60\",\n \"created_at\": \"2011-04-14T16:00:49Z\"\n }\n ],\n \"history\": [\n {\n \"url\": \"https://api.github.com/gists/80bdb0d081c447600e18\",\n \"version\": \"57a7f021a713b1c5a6a199b54cc514735d2d462f\",\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"change_status\": {\n \"deletions\": 0,\n \"additions\": 180,\n \"total\": 180\n },\n \"committed_at\": \"2010-04-14T02:15:15Z\"\n }\n ]\n}\n]]--\n\n-- Edit a gist --\nfunction GithubAPI.gist.edit(id, files, callback, description)\n\tGithubAPI.http_request(\"gists/\"..id, callback, {\n\t\tmethod = \"PATCH\",\n\t\tdata = {\n\t\t\tid = id,\n\t\t\tfiles = files,\n\t\t\tdescription = description\n\t\t}\n\t})\nend\n\n--[[ Input --\n{\n \"description\": \"the description for this gist\",\n \"files\": {\n \"file1.txt\": {\n \"content\": \"updated file contents\"\n },\n \"old_name.txt\": {\n \"filename\": \"new_name.txt\",\n \"content\": \"modified contents\"\n },\n \"new_file.txt\": {\n \"content\": \"a new file\"\n },\n \"delete_this_file.txt\": null\n }\n}\n]]--\n\n--[[ Response --\nStatus: 200 OK\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"url\": \"https://api.github.com/gists/88a3112be74ba6ad701e\",\n \"id\": \"1\",\n \"description\": \"description of gist\",\n \"public\": true,\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"files\": {\n \"ring.erl\": {\n \"size\": 932,\n \"filename\": \"ring.erl\",\n \"raw_url\": \"https://gist.github.com/raw/365370/8c4d2d43d178df44f4c03a7f2ac0ff512853564e/ring.erl\"\n }\n },\n \"comments\": 0,\n \"comments_url\": \"https://api.github.com/gists/8438e99468ee9a4ab10e/comments/\",\n \"html_url\": \"https://gist.github.com/1\",\n \"git_pull_url\": \"git://gist.github.com/1.git\",\n \"git_push_url\": \"git@gist.github.com:1.git\",\n \"created_at\": \"2010-04-14T02:15:15Z\",\n \"forks\": [\n {\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"url\": \"https://api.github.com/gists/add0d71b065f55c46f60\",\n \"created_at\": \"2011-04-14T16:00:49Z\"\n }\n ],\n \"history\": [\n {\n \"url\": \"https://api.github.com/gists/80bdb0d081c447600e18\",\n \"version\": \"57a7f021a713b1c5a6a199b54cc514735d2d462f\",\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"change_status\": {\n \"deletions\": 0,\n \"additions\": 180,\n \"total\": 180\n },\n \"committed_at\": \"2010-04-14T02:15:15Z\"\n }\n ]\n}\n]]--\n\n-- Star a gist --\nfunction GithubAPI.gist.star(id, callback)\n\tGithubAPI.http_request(\"gists/\"..id..\"/star\", callback, {method=\"PUT\"})\nend\n\n--[[ Response --\nStatus: 204 No Content\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n]]--\n\n-- Unstar a gist --\nfunction GithubAPI.gist.unstar(id, callback)\n\tGithubAPI.http_request(\"gists/\"..id..\"/star\", callback, {method=\"DELETE\"})\nend\n\n--[[ Response --\nStatus: 204 No Content\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n]]--\n\n-- Check if a gist is starred --\nfunction GithubAPI.gist.checkStar(id, callback)\n\tGithubAPI.http_request(\"gists/\"..id..\"/star\", callback)\nend\n\n--[[\n-- Response if gist is starred --\nStatus: 204 No Content\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n\n-- Response if gist is not starred --\nStatus: 404 Not Found\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n]]--\n\n-- Fork a gist --\nfunction GithubAPI.gist.fork(id, callback)\n\tGithubAPI.http_request(\"gists/\"..id..\"/forks\", callback, {method=\"POST\"})\nend\n\n--[[ Response --\nStatus: 201 Created\nLocation: https://api.github.com/gists/2\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"url\": \"https://api.github.com/gists/88a3112be74ba6ad701e\",\n \"id\": \"1\",\n \"description\": \"description of gist\",\n \"public\": true,\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"files\": {\n \"ring.erl\": {\n \"size\": 932,\n \"filename\": \"ring.erl\",\n \"raw_url\": \"https://gist.github.com/raw/365370/8c4d2d43d178df44f4c03a7f2ac0ff512853564e/ring.erl\"\n }\n },\n \"comments\": 0,\n \"comments_url\": \"https://api.github.com/gists/8438e99468ee9a4ab10e/comments/\",\n \"html_url\": \"https://gist.github.com/1\",\n \"git_pull_url\": \"git://gist.github.com/1.git\",\n \"git_push_url\": \"git@gist.github.com:1.git\",\n \"created_at\": \"2010-04-14T02:15:15Z\"\n}\n]]--\n\n-- Delete a gist --\nfunction GithubAPI.gist.delete(id, callback)\n\tGithubAPI.http_request(\"gists/\"..id, callback, {method=\"DELETE\"})\nend\n\n--[[ Response --\nStatus: 204 No Content\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n]]--\n\n--- GISTS COMMENTS ---\n\n-- List comments on a gist --\nfunction GithubAPI.gist.comment.list(gist_id, callback)\n\tGithubAPI.http_request(\"gists/..\"gist_id\"../comments\", callback)\nend\n\n--[[ Response --\nStatus: 200 OK\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n[\n {\n \"id\": 1,\n \"url\": \"https://api.github.com/gists/ae709e9cf889e485e65f/comments/1\",\n \"body\": \"Just commenting for the sake of commenting\",\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"created_at\": \"2011-04-18T23:23:56Z\"\n }\n]\n]]--\n\n-- Get a single comment --\nfunction GithubAPI.gist.comment.get(gist_id, id, callback)\n\tGithubAPI.http_request(\"gists/..\"gist_id\"../comments/\"..id, callback)\nend\n\n--[[ Response --\nStatus: 200 OK\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"id\": 1,\n \"url\": \"https://api.github.com/gists/ae709e9cf889e485e65f/comments/1\",\n \"body\": \"Just commenting for the sake of commenting\",\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"created_at\": \"2011-04-18T23:23:56Z\"\n}\n]]--\n\n-- Create a comment --\nfunction GithubAPI.gist.comment.create(gist_id, body, callback)\n\tGithubAPI.http_request(\"gists/..\"gist_id\"../comments/\"..id, callback, {\n\t\tmethod = \"POST\",\n\t\tdata = {\n\t\t\tbody = body\n\t\t}\n\t})\nend\n\n--[[ Input --\n{\n \"body\": \"Just commenting for the sake of commenting\"\n}\n]]--\n--[[ Response --\nStatus: 201 Created\nLocation: https://api.github.com/gists/comments/1\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"id\": 1,\n \"url\": \"https://api.github.com/gists/ae709e9cf889e485e65f/comments/1\",\n \"body\": \"Just commenting for the sake of commenting\",\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"created_at\": \"2011-04-18T23:23:56Z\"\n}\n]]--\n\n-- Edit a comment --\nfunction GithubAPI.gist.comment.edit(gist_id, id, body, callback)\n\tGithubAPI.http_request(\"gists/..\"gist_id\"../comments/\"..id, callback, {\n\t\tmethod = \"PATCH\",\n\t\tdata = {\n\t\t\tbody = body\n\t\t}\n\t})\nend\n\n--[[ Input --\n{\n \"body\": \"Just commenting for the sake of commenting\"\n}\n]]--\n--[[ Response --\nStatus: 200 OK\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"id\": 1,\n \"url\": \"https://api.github.com/gists/ae709e9cf889e485e65f/comments/1\",\n \"body\": \"Just commenting for the sake of commenting\",\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"created_at\": \"2011-04-18T23:23:56Z\"\n}\n]]--\n\n-- Delete a comment --\nfunction GithubAPI.gist.comment.delete(gist_id, id, callback)\n\tGithubAPI.http_request(\"gists/..\"gist_id\"../comments/\"..id, callback, {method = \"DELETE\"})\nend\n\n--[[ Response --\nStatus: 204 No Content\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n]]--\n\n----------------------------------------------------------------------------\n-------------------------------- TOOLS -------------------------------------\n----------------------------------------------------------------------------\n\nfunction GithubAPI.http_request(url, callback, opts, fullUrl)\n\topts = opts or {}\n\t-- if GithubAPI.token then opts.headers = TOKEN BEARER\n\tif opts.data then opts.data = json.encode(opts.data) end\n\n\tlocal _url\n\tif (fullUrl) then _url = url else _url = GithubAPI.location .. url end\n\n\thttp.request(_url, function(data, status, headers)\n\t\tif (status == 500) then error(\"Github: Internal Server Error ...\") end\n\t\tdata = json.decode(data)\n\t\tcallback(data, status, headers)\n\tend, alert, opts)\nend\n\nfunction GithubAPI.explode(div,str) -- credit: http://richard.warburton.it\n if (div=='') then return false end\n local pos,arr = 0,{}\n for st,sp in function() return string.find(str,div,pos,true) end do\n table.insert(arr,string.sub(str,pos,st-1))\n pos = sp + 1\n end\n table.insert(arr,string.sub(str,pos))\n return arr\nend\n\n-- GITHUB TIMESTAMP (YYYY-MM-DDTHH:MM:SSZ) to os.time\nfunction GithubAPI.gtimestamp(githubTime)\n\tgithubTime = githubTime:sub(1, #githubTime-1) -- remove Z\n\tgithubTime = GithubAPI.explode(\"T\", githubTime)\n\tgithubTime[1] = GithubAPI.explode(\"-\", githubTime[1])\n\tgithubTime[2] = GithubAPI.explode(\":\", githubTime[2])\n\treturn os.time({\n\t\tyear = tonumber(githubTime[1][1]),\n\t\tmonth = tonumber(githubTime[1][2]),\n\t\tday = tonumber(githubTime[1][3]),\n\t\thour = tonumber(githubTime[2][1]),\n\t\tmin = tonumber(githubTime[2][2]),\n\t\tsec = tonumber(githubTime[2][3])\n\t})\nend"}},"public":true,"created_at":"2013-08-21T16:28:24Z","updated_at":"2013-08-21T16:28:24Z","description":"Github API","comments":0,"user":null,"comments_url":"https://api.github.com/gists/6296732/comments","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://avatars.githubusercontent.com/u/327146?","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false},"fork_of":{"url":"https://api.github.com/gists/6296553","forks_url":"https://api.github.com/gists/6296553/forks","commits_url":"https://api.github.com/gists/6296553/commits","id":"6296553","git_pull_url":"https://gist.github.com/6296553.git","git_push_url":"https://gist.github.com/6296553.git","html_url":"https://gist.github.com/6296553","files":{},"public":true,"created_at":"2013-08-21T16:12:27Z","updated_at":"2013-10-23T14:58:31Z","description":"Github API","comments":0,"user":null,"comments_url":"https://api.github.com/gists/6296553/comments","owner":{"login":"HyroVitalyProtago","id":3470988,"avatar_url":"https://avatars.githubusercontent.com/u/3470988?","gravatar_id":"ed59562b231a649345f38703948f76f4","url":"https://api.github.com/users/HyroVitalyProtago","html_url":"https://github.com/HyroVitalyProtago","followers_url":"https://api.github.com/users/HyroVitalyProtago/followers","following_url":"https://api.github.com/users/HyroVitalyProtago/following{/other_user}","gists_url":"https://api.github.com/users/HyroVitalyProtago/gists{/gist_id}","starred_url":"https://api.github.com/users/HyroVitalyProtago/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/HyroVitalyProtago/subscriptions","organizations_url":"https://api.github.com/users/HyroVitalyProtago/orgs","repos_url":"https://api.github.com/users/HyroVitalyProtago/repos","events_url":"https://api.github.com/users/HyroVitalyProtago/events{/privacy}","received_events_url":"https://api.github.com/users/HyroVitalyProtago/received_events","type":"User","site_admin":false}},"forks":[],"history":[{"user":null,"version":"c464aecd7fea16684e935607eeea7ae4f8caa0e2","committed_at":"2013-08-21T16:12:27Z","change_status":{"total":793,"additions":793,"deletions":0},"url":"https://api.github.com/gists/6296732/c464aecd7fea16684e935607eeea7ae4f8caa0e2"}]} + +https +GET +api.github.com +None +/gists/6296732/c464aecd7fea16684e935607eeea7ae4f8caa0e2 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '26707'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '03d91026ad8428f4d9966d7434f9d82e'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"893689529e8ac78913dad210662443ac"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4983'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '62E80DDA:1FFB:7D4619:5366987A'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Sun, 04 May 2014 19:43:54 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1399236081')] +{"url":"https://api.github.com/gists/6296732","forks_url":"https://api.github.com/gists/6296732/forks","commits_url":"https://api.github.com/gists/6296732/commits","id":"6296732","git_pull_url":"https://gist.github.com/6296732.git","git_push_url":"https://gist.github.com/6296732.git","html_url":"https://gist.github.com/6296732","files":{"GithubAPI.lua":{"filename":"GithubAPI.lua","type":"text/plain","language":"Lua","raw_url":"https://gist.githubusercontent.com/jacquev6/6296732/raw/88aafa25fb28e17013054a117354a37f0d78963c/GithubAPI.lua","size":21229,"content":"-- GithubAPI\n-- @Author : Hyro Vitaly Protago\n-- @Version : 1.0.0\n\n--[[\n\nINFOS :\n - Cannot delete an anonymous gist\n]]--\n\nGithubAPI = {\n\tlocation = \"https://api.github.com/\",\n\ttoken = nil,\n\tOAuth = {\n\t\tauthorizations = {}\n\t},\n\tgist = {\n\t\tlist = {},\n\t\tcomment = {}\n\t},\n\tgithub = {}\n}\n\n----------------------------------------------------------------------------\n------------------------------ Github API ----------------------------------\n----------------------------------------------------------------------------\n\n--- Authentication ---\n\n--[[ Scopes --\n\nScopes let you specify exactly what type of access you need. Scopes limit access for OAuth tokens.\nThey do not grant any additional permission beyond that which the user already has.\n\nFor the web flow, requested scopes will be displayed to the user on the authorize form.\n\nCheck headers to see what OAuth scopes you have, and what the API action accepts.\n\n~~~\n$ curl -H \"Authorization: token OAUTH-TOKEN\" https://api.github.com/users/technoweenie -I\nHTTP/1.1 200 OK\nX-OAuth-Scopes: repo, user\nX-Accepted-OAuth-Scopes: user\nX-OAuth-Scopes lists the scopes your token has authorized. X-Accepted-OAuth-Scopes lists the scopes that the action checks for.\n~~~\n\n- (no scope)\npublic read-only access (includes public user profile info, public repo info, and gists).\n- user\nRead/write access to profile info only. Note: this scope includes user:email and user:follow.\n- user:email\nRead access to a user’s email addresses.\n- user:follow\nAccess to follow or unfollow other users.\n- public_repo\nRead/write access to public repos and organizations.\n- repo\nRead/write access to public and private repos and organizations.\n- repo:status\nRead/write access to public and private repository commit statuses.\nThis scope is only necessary to grant other users or services access to private repository commit statuses without granting access to the code.\nThe repo and public_repo scopes already include access to commit status for private and public repositories respectively.\n- delete_repo\nDelete access to adminable repositories.\n- notifications\nRead access to a user’s notifications. repo is accepted too.\n- gist\nWrite access to gists.\n\nNOTE: Your application can request the scopes in the initial redirection. You can specify multiple scopes by separating them by a comma.\n~~~\nhttps://github.com/login/oauth/authorize?\n client_id=...&\n scope=user,public_repo\n~~~\n]]--\n\n-- Redirect users to request GitHub access --\nfunction GithubAPI.OAuth.getToken(client_id, scope, callback)\n\tGithubAPI.http_request(\"https://github.com/login/oauth/authorize?client_id=\"..client_id..\"&scope=\"..scope, function(data, status, headers)\n\t\tGithubAPI.OAuth._getToken(client_id, client_secret, data, callback)\n\tend, nil, true)\nend\n-- GitHub redirects back to your site --\nfunction GithubAPI.OAuth._getToken(client_id, client_secret, code, callback)\n\tGithubAPI.http_request(\"https://github.com/login/oauth/access_token\", callback, {\n\t\tmethod = \"POST\",\n\t\tdata = {\n\t\t\tclient_id = client_id,\n\t\t\tclient_secret = client_secret,\n\t\t\tcode = code\n\t\t}\n\t}, true)\nend\n\n-- List your authorizations --\nfunction GithubAPI.OAuth.authorizations.list(callback)\n\tGithubAPI.http_request(\"authorizations\", callback)\nend\n\n--[[ Response --\nStatus: 200 OK\nLink: ; rel=\"next\",\n ; rel=\"last\"\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n[\n {\n \"id\": 1,\n \"url\": \"https://api.github.com/authorizations/1\",\n \"scopes\": [\n \"public_repo\"\n ],\n \"token\": \"abc123\",\n \"app\": {\n \"url\": \"http://my-github-app.com\",\n \"name\": \"my github app\",\n \"client_id\": \"abcde12345fghij67890\"\n },\n \"note\": \"optional note\",\n \"note_url\": \"http://optional/note/url\",\n \"updated_at\": \"2011-09-06T20:39:23Z\",\n \"created_at\": \"2011-09-06T17:26:27Z\"\n }\n]\n]]--\n\n-- Get a single authorization --\nfunction GithubAPI.OAuth.authorizations.get(id, callback)\n\tGithubAPI.http_request(\"authorizations/\"..id, callback)\nend\n\n--[[ Response --\nStatus: 200 OK\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"id\": 1,\n \"url\": \"https://api.github.com/authorizations/1\",\n \"scopes\": [\n \"public_repo\"\n ],\n \"token\": \"abc123\",\n \"app\": {\n \"url\": \"http://my-github-app.com\",\n \"name\": \"my github app\",\n \"client_id\": \"abcde12345fghij67890\"\n },\n \"note\": \"optional note\",\n \"note_url\": \"http://optional/note/url\",\n \"updated_at\": \"2011-09-06T20:39:23Z\",\n \"created_at\": \"2011-09-06T17:26:27Z\"\n}\n]]--\n\n-- Create a new authorization --\nfunction GithubAPI.OAuth.authorizations.create(callback, scopes, note, note_url, client_id, client_secret)\n\tGithubAPI.http_request(\"authorizations/\", callback, {\n\t\tmethod = \"POST\",\n\t\tdata = {\n\t\t\tscopes = scopes,\n\t\t\tnote = note,\n\t\t\tnote_url = note_url,\n\t\t\tclient_id = client_id,\n\t\t\tclient_secret = client_secret\n\t\t}\n\t})\nend\n\n--[[ Input --\nscopes\nOptional array - A list of scopes that this authorization is in.\n\nnote\nOptional string - A note to remind you what the OAuth token is for.\n\nnote_url\nOptional string - A URL to remind you what app the OAuth token is for.\n\nclient_id\nOptional String - The 20 character OAuth app client key for which to create the token.\n\nclient_secret\nOptional String - The 40 character OAuth app client secret for which to create the token.\n~~~\n{\n \"scopes\": [\n \"public_repo\"\n ],\n \"note\": \"admin script\"\n}\n~~~\n]]--\n\n--[[ Response --\nStatus: 201 Created\nLocation: https://api.github.com/authorizations/1\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"id\": 1,\n \"url\": \"https://api.github.com/authorizations/1\",\n \"scopes\": [\n \"public_repo\"\n ],\n \"token\": \"abc123\",\n \"app\": {\n \"url\": \"http://my-github-app.com\",\n \"name\": \"my github app\",\n \"client_id\": \"abcde12345fghij67890\"\n },\n \"note\": \"optional note\",\n \"note_url\": \"http://optional/note/url\",\n \"updated_at\": \"2011-09-06T20:39:23Z\",\n \"created_at\": \"2011-09-06T17:26:27Z\"\n}\n]]--\n\n-- TODO\n-- Update\n-- Check\n-- Delete\n\n--- GISTS ---\n\n-- List gists --\nfunction GithubAPI.gist.list.user(user, callback)\n\tGithubAPI.http_request(\"users/\"..user..\"/gists\", callback)\nend\nfunction GithubAPI.gist.list.all(callback) -- return all public gists if called anonymously\n\tGithubAPI.http_request(\"gists\", callback)\nend\nfunction GithubAPI.gist.list.allPublic(callback)\n\tGithubAPI.http_request(\"gists/public\", callback)\nend\nfunction GithubAPI.gist.list.starred(callback)\n\tGithubAPI.http_request(\"gists/starred\", callback)\nend\n\n--[[ Response --\nStatus: 200 OK\nLink: ; rel=\"next\",\n ; rel=\"last\"\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n[\n {\n \"url\": \"https://api.github.com/gists/88a3112be74ba6ad701e\",\n \"id\": \"1\",\n \"description\": \"description of gist\",\n \"public\": true,\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"files\": {\n \"ring.erl\": {\n \"size\": 932,\n \"filename\": \"ring.erl\",\n \"raw_url\": \"https://gist.github.com/raw/365370/8c4d2d43d178df44f4c03a7f2ac0ff512853564e/ring.erl\"\n }\n },\n \"comments\": 0,\n \"comments_url\": \"https://api.github.com/gists/8438e99468ee9a4ab10e/comments/\",\n \"html_url\": \"https://gist.github.com/1\",\n \"git_pull_url\": \"git://gist.github.com/1.git\",\n \"git_push_url\": \"git@gist.github.com:1.git\",\n \"created_at\": \"2010-04-14T02:15:15Z\"\n }\n]\n]]--\n\n-- Get a single gist --\nfunction GithubAPI.gist.get(id, callback)\n\tGithubAPI.http_request(\"gists/\"..id, callback)\nend\n\n--[[ Response --\nStatus: 200 OK\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"url\": \"https://api.github.com/gists/88a3112be74ba6ad701e\",\n \"id\": \"1\",\n \"description\": \"description of gist\",\n \"public\": true,\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"files\": {\n \"ring.erl\": {\n \"size\": 932,\n \"filename\": \"ring.erl\",\n \"raw_url\": \"https://gist.github.com/raw/365370/8c4d2d43d178df44f4c03a7f2ac0ff512853564e/ring.erl\"\n }\n },\n \"comments\": 0,\n \"comments_url\": \"https://api.github.com/gists/8438e99468ee9a4ab10e/comments/\",\n \"html_url\": \"https://gist.github.com/1\",\n \"git_pull_url\": \"git://gist.github.com/1.git\",\n \"git_push_url\": \"git@gist.github.com:1.git\",\n \"created_at\": \"2010-04-14T02:15:15Z\",\n \"forks\": [\n {\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"url\": \"https://api.github.com/gists/add0d71b065f55c46f60\",\n \"created_at\": \"2011-04-14T16:00:49Z\"\n }\n ],\n \"history\": [\n {\n \"url\": \"https://api.github.com/gists/80bdb0d081c447600e18\",\n \"version\": \"57a7f021a713b1c5a6a199b54cc514735d2d462f\",\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"change_status\": {\n \"deletions\": 0,\n \"additions\": 180,\n \"total\": 180\n },\n \"committed_at\": \"2010-04-14T02:15:15Z\"\n }\n ]\n}\n]]--\n\n-- Create a gist --\nfunction GithubAPI.gist.create(public, files, callback ,description)\n\tGithubAPI.http_request(\"gists/\"..id, callback, {\n\t\tmethod = \"POST\",\n\t\tdata = {\n\t\t\tpublic = public,\n\t\t\tfiles = files,\n\t\t\tdescription = description\n\t\t}\n\t})\nend\n\n--[[ Input --\n{\n \"description\": \"the description for this gist\",\n \"public\": true,\n \"files\": {\n \"file1.txt\": {\n \"content\": \"String file contents\"\n }\n }\n}\n]]--\n\n--[[ Response --\nStatus: 201 Created\nLocation: https://api.github.com/gists/1\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"url\": \"https://api.github.com/gists/88a3112be74ba6ad701e\",\n \"id\": \"1\",\n \"description\": \"description of gist\",\n \"public\": true,\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"files\": {\n \"ring.erl\": {\n \"size\": 932,\n \"filename\": \"ring.erl\",\n \"raw_url\": \"https://gist.github.com/raw/365370/8c4d2d43d178df44f4c03a7f2ac0ff512853564e/ring.erl\"\n }\n },\n \"comments\": 0,\n \"comments_url\": \"https://api.github.com/gists/8438e99468ee9a4ab10e/comments/\",\n \"html_url\": \"https://gist.github.com/1\",\n \"git_pull_url\": \"git://gist.github.com/1.git\",\n \"git_push_url\": \"git@gist.github.com:1.git\",\n \"created_at\": \"2010-04-14T02:15:15Z\",\n \"forks\": [\n {\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"url\": \"https://api.github.com/gists/add0d71b065f55c46f60\",\n \"created_at\": \"2011-04-14T16:00:49Z\"\n }\n ],\n \"history\": [\n {\n \"url\": \"https://api.github.com/gists/80bdb0d081c447600e18\",\n \"version\": \"57a7f021a713b1c5a6a199b54cc514735d2d462f\",\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"change_status\": {\n \"deletions\": 0,\n \"additions\": 180,\n \"total\": 180\n },\n \"committed_at\": \"2010-04-14T02:15:15Z\"\n }\n ]\n}\n]]--\n\n-- Edit a gist --\nfunction GithubAPI.gist.edit(id, files, callback, description)\n\tGithubAPI.http_request(\"gists/\"..id, callback, {\n\t\tmethod = \"PATCH\",\n\t\tdata = {\n\t\t\tid = id,\n\t\t\tfiles = files,\n\t\t\tdescription = description\n\t\t}\n\t})\nend\n\n--[[ Input --\n{\n \"description\": \"the description for this gist\",\n \"files\": {\n \"file1.txt\": {\n \"content\": \"updated file contents\"\n },\n \"old_name.txt\": {\n \"filename\": \"new_name.txt\",\n \"content\": \"modified contents\"\n },\n \"new_file.txt\": {\n \"content\": \"a new file\"\n },\n \"delete_this_file.txt\": null\n }\n}\n]]--\n\n--[[ Response --\nStatus: 200 OK\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"url\": \"https://api.github.com/gists/88a3112be74ba6ad701e\",\n \"id\": \"1\",\n \"description\": \"description of gist\",\n \"public\": true,\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"files\": {\n \"ring.erl\": {\n \"size\": 932,\n \"filename\": \"ring.erl\",\n \"raw_url\": \"https://gist.github.com/raw/365370/8c4d2d43d178df44f4c03a7f2ac0ff512853564e/ring.erl\"\n }\n },\n \"comments\": 0,\n \"comments_url\": \"https://api.github.com/gists/8438e99468ee9a4ab10e/comments/\",\n \"html_url\": \"https://gist.github.com/1\",\n \"git_pull_url\": \"git://gist.github.com/1.git\",\n \"git_push_url\": \"git@gist.github.com:1.git\",\n \"created_at\": \"2010-04-14T02:15:15Z\",\n \"forks\": [\n {\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"url\": \"https://api.github.com/gists/add0d71b065f55c46f60\",\n \"created_at\": \"2011-04-14T16:00:49Z\"\n }\n ],\n \"history\": [\n {\n \"url\": \"https://api.github.com/gists/80bdb0d081c447600e18\",\n \"version\": \"57a7f021a713b1c5a6a199b54cc514735d2d462f\",\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"change_status\": {\n \"deletions\": 0,\n \"additions\": 180,\n \"total\": 180\n },\n \"committed_at\": \"2010-04-14T02:15:15Z\"\n }\n ]\n}\n]]--\n\n-- Star a gist --\nfunction GithubAPI.gist.star(id, callback)\n\tGithubAPI.http_request(\"gists/\"..id..\"/star\", callback, {method=\"PUT\"})\nend\n\n--[[ Response --\nStatus: 204 No Content\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n]]--\n\n-- Unstar a gist --\nfunction GithubAPI.gist.unstar(id, callback)\n\tGithubAPI.http_request(\"gists/\"..id..\"/star\", callback, {method=\"DELETE\"})\nend\n\n--[[ Response --\nStatus: 204 No Content\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n]]--\n\n-- Check if a gist is starred --\nfunction GithubAPI.gist.checkStar(id, callback)\n\tGithubAPI.http_request(\"gists/\"..id..\"/star\", callback)\nend\n\n--[[\n-- Response if gist is starred --\nStatus: 204 No Content\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n\n-- Response if gist is not starred --\nStatus: 404 Not Found\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n]]--\n\n-- Fork a gist --\nfunction GithubAPI.gist.fork(id, callback)\n\tGithubAPI.http_request(\"gists/\"..id..\"/forks\", callback, {method=\"POST\"})\nend\n\n--[[ Response --\nStatus: 201 Created\nLocation: https://api.github.com/gists/2\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"url\": \"https://api.github.com/gists/88a3112be74ba6ad701e\",\n \"id\": \"1\",\n \"description\": \"description of gist\",\n \"public\": true,\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"files\": {\n \"ring.erl\": {\n \"size\": 932,\n \"filename\": \"ring.erl\",\n \"raw_url\": \"https://gist.github.com/raw/365370/8c4d2d43d178df44f4c03a7f2ac0ff512853564e/ring.erl\"\n }\n },\n \"comments\": 0,\n \"comments_url\": \"https://api.github.com/gists/8438e99468ee9a4ab10e/comments/\",\n \"html_url\": \"https://gist.github.com/1\",\n \"git_pull_url\": \"git://gist.github.com/1.git\",\n \"git_push_url\": \"git@gist.github.com:1.git\",\n \"created_at\": \"2010-04-14T02:15:15Z\"\n}\n]]--\n\n-- Delete a gist --\nfunction GithubAPI.gist.delete(id, callback)\n\tGithubAPI.http_request(\"gists/\"..id, callback, {method=\"DELETE\"})\nend\n\n--[[ Response --\nStatus: 204 No Content\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n]]--\n\n--- GISTS COMMENTS ---\n\n-- List comments on a gist --\nfunction GithubAPI.gist.comment.list(gist_id, callback)\n\tGithubAPI.http_request(\"gists/..\"gist_id\"../comments\", callback)\nend\n\n--[[ Response --\nStatus: 200 OK\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n[\n {\n \"id\": 1,\n \"url\": \"https://api.github.com/gists/ae709e9cf889e485e65f/comments/1\",\n \"body\": \"Just commenting for the sake of commenting\",\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"created_at\": \"2011-04-18T23:23:56Z\"\n }\n]\n]]--\n\n-- Get a single comment --\nfunction GithubAPI.gist.comment.get(gist_id, id, callback)\n\tGithubAPI.http_request(\"gists/..\"gist_id\"../comments/\"..id, callback)\nend\n\n--[[ Response --\nStatus: 200 OK\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"id\": 1,\n \"url\": \"https://api.github.com/gists/ae709e9cf889e485e65f/comments/1\",\n \"body\": \"Just commenting for the sake of commenting\",\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"created_at\": \"2011-04-18T23:23:56Z\"\n}\n]]--\n\n-- Create a comment --\nfunction GithubAPI.gist.comment.create(gist_id, body, callback)\n\tGithubAPI.http_request(\"gists/..\"gist_id\"../comments/\"..id, callback, {\n\t\tmethod = \"POST\",\n\t\tdata = {\n\t\t\tbody = body\n\t\t}\n\t})\nend\n\n--[[ Input --\n{\n \"body\": \"Just commenting for the sake of commenting\"\n}\n]]--\n--[[ Response --\nStatus: 201 Created\nLocation: https://api.github.com/gists/comments/1\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"id\": 1,\n \"url\": \"https://api.github.com/gists/ae709e9cf889e485e65f/comments/1\",\n \"body\": \"Just commenting for the sake of commenting\",\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"created_at\": \"2011-04-18T23:23:56Z\"\n}\n]]--\n\n-- Edit a comment --\nfunction GithubAPI.gist.comment.edit(gist_id, id, body, callback)\n\tGithubAPI.http_request(\"gists/..\"gist_id\"../comments/\"..id, callback, {\n\t\tmethod = \"PATCH\",\n\t\tdata = {\n\t\t\tbody = body\n\t\t}\n\t})\nend\n\n--[[ Input --\n{\n \"body\": \"Just commenting for the sake of commenting\"\n}\n]]--\n--[[ Response --\nStatus: 200 OK\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"id\": 1,\n \"url\": \"https://api.github.com/gists/ae709e9cf889e485e65f/comments/1\",\n \"body\": \"Just commenting for the sake of commenting\",\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"created_at\": \"2011-04-18T23:23:56Z\"\n}\n]]--\n\n-- Delete a comment --\nfunction GithubAPI.gist.comment.delete(gist_id, id, callback)\n\tGithubAPI.http_request(\"gists/..\"gist_id\"../comments/\"..id, callback, {method = \"DELETE\"})\nend\n\n--[[ Response --\nStatus: 204 No Content\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n]]--\n\n----------------------------------------------------------------------------\n-------------------------------- TOOLS -------------------------------------\n----------------------------------------------------------------------------\n\nfunction GithubAPI.http_request(url, callback, opts, fullUrl)\n\topts = opts or {}\n\t-- if GithubAPI.token then opts.headers = TOKEN BEARER\n\tif opts.data then opts.data = json.encode(opts.data) end\n\n\tlocal _url\n\tif (fullUrl) then _url = url else _url = GithubAPI.location .. url end\n\n\thttp.request(_url, function(data, status, headers)\n\t\tif (status == 500) then error(\"Github: Internal Server Error ...\") end\n\t\tdata = json.decode(data)\n\t\tcallback(data, status, headers)\n\tend, alert, opts)\nend\n\nfunction GithubAPI.explode(div,str) -- credit: http://richard.warburton.it\n if (div=='') then return false end\n local pos,arr = 0,{}\n for st,sp in function() return string.find(str,div,pos,true) end do\n table.insert(arr,string.sub(str,pos,st-1))\n pos = sp + 1\n end\n table.insert(arr,string.sub(str,pos))\n return arr\nend\n\n-- GITHUB TIMESTAMP (YYYY-MM-DDTHH:MM:SSZ) to os.time\nfunction GithubAPI.gtimestamp(githubTime)\n\tgithubTime = githubTime:sub(1, #githubTime-1) -- remove Z\n\tgithubTime = GithubAPI.explode(\"T\", githubTime)\n\tgithubTime[1] = GithubAPI.explode(\"-\", githubTime[1])\n\tgithubTime[2] = GithubAPI.explode(\":\", githubTime[2])\n\treturn os.time({\n\t\tyear = tonumber(githubTime[1][1]),\n\t\tmonth = tonumber(githubTime[1][2]),\n\t\tday = tonumber(githubTime[1][3]),\n\t\thour = tonumber(githubTime[2][1]),\n\t\tmin = tonumber(githubTime[2][2]),\n\t\tsec = tonumber(githubTime[2][3])\n\t})\nend"}},"public":true,"created_at":"2013-08-21T16:28:24Z","updated_at":"2013-08-21T16:28:24Z","description":"Github API","comments":0,"user":null,"comments_url":"https://api.github.com/gists/6296732/comments","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://avatars.githubusercontent.com/u/327146?","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false},"fork_of":{"url":"https://api.github.com/gists/6296553","forks_url":"https://api.github.com/gists/6296553/forks","commits_url":"https://api.github.com/gists/6296553/commits","id":"6296553","git_pull_url":"https://gist.github.com/6296553.git","git_push_url":"https://gist.github.com/6296553.git","html_url":"https://gist.github.com/6296553","files":{},"public":true,"created_at":"2013-08-21T16:12:27Z","updated_at":"2013-10-23T14:58:31Z","description":"Github API","comments":0,"user":null,"comments_url":"https://api.github.com/gists/6296553/comments","owner":{"login":"HyroVitalyProtago","id":3470988,"avatar_url":"https://avatars.githubusercontent.com/u/3470988?","gravatar_id":"ed59562b231a649345f38703948f76f4","url":"https://api.github.com/users/HyroVitalyProtago","html_url":"https://github.com/HyroVitalyProtago","followers_url":"https://api.github.com/users/HyroVitalyProtago/followers","following_url":"https://api.github.com/users/HyroVitalyProtago/following{/other_user}","gists_url":"https://api.github.com/users/HyroVitalyProtago/gists{/gist_id}","starred_url":"https://api.github.com/users/HyroVitalyProtago/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/HyroVitalyProtago/subscriptions","organizations_url":"https://api.github.com/users/HyroVitalyProtago/orgs","repos_url":"https://api.github.com/users/HyroVitalyProtago/repos","events_url":"https://api.github.com/users/HyroVitalyProtago/events{/privacy}","received_events_url":"https://api.github.com/users/HyroVitalyProtago/received_events","type":"User","site_admin":false}},"forks":[],"history":[{"user":null,"version":"c464aecd7fea16684e935607eeea7ae4f8caa0e2","committed_at":"2013-08-21T16:12:27Z","change_status":{"total":793,"additions":793,"deletions":0},"url":"https://api.github.com/gists/6296732/c464aecd7fea16684e935607eeea7ae4f8caa0e2"}]} + diff --git a/lib/github/tests/ReplayData/Gist.testCreateComment.txt b/lib/github/tests/ReplayData/Gist.testCreateComment.txt new file mode 100644 index 0000000000..6125379cb5 --- /dev/null +++ b/lib/github/tests/ReplayData/Gist.testCreateComment.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/gists/2729810 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4970'), ('content-length', '3280'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"b01fb6ac81527f99db9f6f586b048ee3"'), ('date', 'Sat, 19 May 2012 06:58:15 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"updated_at":"2012-02-29T16:47:12Z","forks":[],"url":"https://api.github.com/gists/2729810","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729810.git","files":{"fail_github.py":{"type":"application/python","raw_url":"https://gist.github.com/raw/2729810/2fb3aa84e0efa50dc0f4c18b5df5b7b9ab27076b/fail_github.py","size":1636,"filename":"fail_github.py","content":"import httplib\nimport base64\nimport json\n\nlogin = \"\"\npassword = \"\"\norgName = \"\"\nrepoName = \"FailGithubApi\"\n\ndef doRequest( verb, url, input ):\n input = json.dumps( input )\n cnx = httplib.HTTPSConnection( \"api.github.com\", strict = True )\n cnx.request( verb, url, input, { \"Authorization\" : \"Basic \" + base64.b64encode( login + \":\" + password ).replace( '\\n', '' ) } )\n response = cnx.getresponse()\n status = response.status\n output = response.read()\n cnx.close()\n print verb, url, input, \"=>\", status, output\n print\n if status < 200 or status >= 300:\n exit( 1 )\n return json.loads( output )\n\n# Create a repo\ndoRequest( \"POST\", \"/user/repos\", { \"name\": repoName } )\n\n# Create a blob, a tree, a commit and the master branch\nb = doRequest(\n \"POST\", \"/repos/%s/%s/git/blobs\" % ( login, repoName ),\n { \"content\": \"Content of the blob\", \"encoding\": \"latin1\" }\n)\nt = doRequest(\n \"POST\", \"/repos/%s/%s/git/trees\" % ( login, repoName ),\n { \"tree\" : [ { \"path\": \"foo.bar\", \"type\": \"blob\", \"mode\": \"100644\", \"sha\": b[\"sha\"] } ] }\n)\nc = doRequest(\n \"POST\", \"/repos/%s/%s/git/commits\" % ( login, repoName ),\n { \"parents\": [], \"message\": \"Message of the commit\", \"tree\": t[\"sha\"] }\n)\ndoRequest(\n \"POST\", \"/repos/%s/%s/git/refs\" % ( login, repoName ),\n { \"ref\": \"refs/heads/master\", \"sha\": c[\"sha\"] }\n)\n\n# Fork the repo\ndoRequest( \"POST\", \"/repos/%s/%s/forks?org=%s\" % ( login, repoName, orgName ), None )\n\n# Create a new blob => BOOM error 500\ndoRequest(\n \"POST\", \"/repos/%s/%s/git/blobs\" % ( orgName, repoName ),\n { \"content\": \"Content of the new blob\", \"encoding\": \"latin1\" }\n)\n","language":"Python"}},"html_url":"https://gist.github.com/2729810","git_push_url":"git@gist.github.com:2729810.git","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"description":"How to error 500 Github API v3, as requested by Rick (GitHub Staff)","created_at":"2012-02-29T16:47:12Z","id":"2729810","history":[{"url":"https://api.github.com/gists/2729810/a40de483e42ba33bda308371c0ef8383db73be9e","change_status":{"deletions":0,"additions":52,"total":52},"committed_at":"2012-02-29T16:47:12Z","version":"a40de483e42ba33bda308371c0ef8383db73be9e","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}}]} + +https +POST +api.github.com +None +/gists/2729810/comments +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"body": "Comment created by PyGithub"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4992'), ('content-length', '479'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"77456eabf6ebaafc2808cfbd4dfa5904"'), ('date', 'Sat, 19 May 2012 07:07:57 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/gists/comments/323629')] +{"updated_at":"2012-05-19T07:07:57Z","body":"Comment created by PyGithub","url":"https://api.github.com/gists/comments/323629","created_at":"2012-05-19T07:07:57Z","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":323629} + diff --git a/lib/github/tests/ReplayData/Gist.testDelete.txt b/lib/github/tests/ReplayData/Gist.testDelete.txt new file mode 100644 index 0000000000..5cbe54814d --- /dev/null +++ b/lib/github/tests/ReplayData/Gist.testDelete.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/gists/2729810 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4970'), ('content-length', '3280'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"b01fb6ac81527f99db9f6f586b048ee3"'), ('date', 'Sat, 19 May 2012 06:58:15 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"updated_at":"2012-02-29T16:47:12Z","forks":[],"url":"https://api.github.com/gists/2729810","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729810.git","files":{"fail_github.py":{"type":"application/python","raw_url":"https://gist.github.com/raw/2729810/2fb3aa84e0efa50dc0f4c18b5df5b7b9ab27076b/fail_github.py","size":1636,"filename":"fail_github.py","content":"import httplib\nimport base64\nimport json\n\nlogin = \"\"\npassword = \"\"\norgName = \"\"\nrepoName = \"FailGithubApi\"\n\ndef doRequest( verb, url, input ):\n input = json.dumps( input )\n cnx = httplib.HTTPSConnection( \"api.github.com\", strict = True )\n cnx.request( verb, url, input, { \"Authorization\" : \"Basic \" + base64.b64encode( login + \":\" + password ).replace( '\\n', '' ) } )\n response = cnx.getresponse()\n status = response.status\n output = response.read()\n cnx.close()\n print verb, url, input, \"=>\", status, output\n print\n if status < 200 or status >= 300:\n exit( 1 )\n return json.loads( output )\n\n# Create a repo\ndoRequest( \"POST\", \"/user/repos\", { \"name\": repoName } )\n\n# Create a blob, a tree, a commit and the master branch\nb = doRequest(\n \"POST\", \"/repos/%s/%s/git/blobs\" % ( login, repoName ),\n { \"content\": \"Content of the blob\", \"encoding\": \"latin1\" }\n)\nt = doRequest(\n \"POST\", \"/repos/%s/%s/git/trees\" % ( login, repoName ),\n { \"tree\" : [ { \"path\": \"foo.bar\", \"type\": \"blob\", \"mode\": \"100644\", \"sha\": b[\"sha\"] } ] }\n)\nc = doRequest(\n \"POST\", \"/repos/%s/%s/git/commits\" % ( login, repoName ),\n { \"parents\": [], \"message\": \"Message of the commit\", \"tree\": t[\"sha\"] }\n)\ndoRequest(\n \"POST\", \"/repos/%s/%s/git/refs\" % ( login, repoName ),\n { \"ref\": \"refs/heads/master\", \"sha\": c[\"sha\"] }\n)\n\n# Fork the repo\ndoRequest( \"POST\", \"/repos/%s/%s/forks?org=%s\" % ( login, repoName, orgName ), None )\n\n# Create a new blob => BOOM error 500\ndoRequest(\n \"POST\", \"/repos/%s/%s/git/blobs\" % ( orgName, repoName ),\n { \"content\": \"Content of the new blob\", \"encoding\": \"latin1\" }\n)\n","language":"Python"}},"html_url":"https://gist.github.com/2729810","git_push_url":"git@gist.github.com:2729810.git","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"description":"How to error 500 Github API v3, as requested by Rick (GitHub Staff)","created_at":"2012-02-29T16:47:12Z","id":"2729810","history":[{"url":"https://api.github.com/gists/2729810/a40de483e42ba33bda308371c0ef8383db73be9e","change_status":{"deletions":0,"additions":52,"total":52},"committed_at":"2012-02-29T16:47:12Z","version":"a40de483e42ba33bda308371c0ef8383db73be9e","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}}]} + +https +DELETE +api.github.com +None +/gists/2729810 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4965'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sat, 19 May 2012 07:26:55 GMT')] + + diff --git a/lib/github/tests/ReplayData/Gist.testDeleteFile.txt b/lib/github/tests/ReplayData/Gist.testDeleteFile.txt new file mode 100644 index 0000000000..4455bfd012 --- /dev/null +++ b/lib/github/tests/ReplayData/Gist.testDeleteFile.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/gists/5339374 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4995'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '3241'), ('server', 'GitHub.com'), ('last-modified', 'Mon, 08 Apr 2013 18:46:15 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d1bfdcec2c35202fa167ebdfed524d25"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 08 Apr 2013 18:50:39 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/gists/5339374","forks_url":"https://api.github.com/gists/5339374/forks","commits_url":"https://api.github.com/gists/5339374/commits","id":"5339374","git_pull_url":"https://gist.github.com/5339374.git","git_push_url":"https://gist.github.com/5339374.git","html_url":"https://gist.github.com/5339374","files":{"bar.txt":{"filename":"bar.txt","type":"text/plain","language":null,"raw_url":"https://gist.github.com/raw/5339374/9a84713661904c94ce1e404151d15030b042a884/bar.txt","size":49,"content":"This file will be renamed \"baz.txt\" by PyGithub.\n"},"foo.txt":{"filename":"foo.txt","type":"text/plain","language":null,"raw_url":"https://gist.github.com/raw/5339374/920c28027f920979606c96ca347b050b1ebd1013/foo.txt","size":39,"content":"This file will be deleted by PyGithub.\n"}},"public":true,"created_at":"2013-04-08T18:46:14Z","updated_at":"2013-04-08T18:46:15Z","description":"Test gist for PyGithub","comments":0,"user":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"comments_url":"https://api.github.com/gists/5339374/comments","forks":[],"history":[{"user":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"version":"7887f7ac9eb5c1963004bdde3bcfe2221d9a0515","committed_at":"2013-04-08T18:46:14Z","change_status":{"total":2,"additions":2,"deletions":0},"url":"https://api.github.com/gists/5339374/7887f7ac9eb5c1963004bdde3bcfe2221d9a0515"}]} + +https +PATCH +api.github.com +None +/gists/5339374 +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"files": {"foo.txt": null}} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4994'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('content-length', '4233'), ('server', 'GitHub.com'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"316f00c71eeb327bbeac7a3f7aba5237"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Mon, 08 Apr 2013 18:50:40 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/gists/5339374","forks_url":"https://api.github.com/gists/5339374/forks","commits_url":"https://api.github.com/gists/5339374/commits","id":"5339374","git_pull_url":"https://gist.github.com/5339374.git","git_push_url":"https://gist.github.com/5339374.git","html_url":"https://gist.github.com/5339374","files":{"bar.txt":{"filename":"bar.txt","type":"text/plain","language":null,"raw_url":"https://gist.github.com/raw/5339374/9a84713661904c94ce1e404151d15030b042a884/bar.txt","size":49,"content":"This file will be renamed \"baz.txt\" by PyGithub.\n"}},"public":true,"created_at":"2013-04-08T18:46:14Z","updated_at":"2013-04-08T18:50:40Z","description":"Test gist for PyGithub","comments":0,"user":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"comments_url":"https://api.github.com/gists/5339374/comments","forks":[],"history":[{"user":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"version":"3b66ad4cc07f2bebb2eae2b2f2eefba33d2fb2d5","committed_at":"2013-04-08T18:50:40Z","change_status":{"total":1,"additions":0,"deletions":1},"url":"https://api.github.com/gists/5339374/3b66ad4cc07f2bebb2eae2b2f2eefba33d2fb2d5"},{"user":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"version":"7887f7ac9eb5c1963004bdde3bcfe2221d9a0515","committed_at":"2013-04-08T18:46:14Z","change_status":{"total":2,"additions":2,"deletions":0},"url":"https://api.github.com/gists/5339374/7887f7ac9eb5c1963004bdde3bcfe2221d9a0515"}]} + diff --git a/lib/github/tests/ReplayData/Gist.testEditWithAllParameters.txt b/lib/github/tests/ReplayData/Gist.testEditWithAllParameters.txt new file mode 100644 index 0000000000..229c5f8c56 --- /dev/null +++ b/lib/github/tests/ReplayData/Gist.testEditWithAllParameters.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/gists/2729810 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4970'), ('content-length', '3280'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"b01fb6ac81527f99db9f6f586b048ee3"'), ('date', 'Sat, 19 May 2012 06:58:15 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"updated_at":"2012-02-29T16:47:12Z","forks":[],"url":"https://api.github.com/gists/2729810","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729810.git","files":{"fail_github.py":{"type":"application/python","raw_url":"https://gist.github.com/raw/2729810/2fb3aa84e0efa50dc0f4c18b5df5b7b9ab27076b/fail_github.py","size":1636,"filename":"fail_github.py","content":"import httplib\nimport base64\nimport json\n\nlogin = \"\"\npassword = \"\"\norgName = \"\"\nrepoName = \"FailGithubApi\"\n\ndef doRequest( verb, url, input ):\n input = json.dumps( input )\n cnx = httplib.HTTPSConnection( \"api.github.com\", strict = True )\n cnx.request( verb, url, input, { \"Authorization\" : \"Basic \" + base64.b64encode( login + \":\" + password ).replace( '\\n', '' ) } )\n response = cnx.getresponse()\n status = response.status\n output = response.read()\n cnx.close()\n print verb, url, input, \"=>\", status, output\n print\n if status < 200 or status >= 300:\n exit( 1 )\n return json.loads( output )\n\n# Create a repo\ndoRequest( \"POST\", \"/user/repos\", { \"name\": repoName } )\n\n# Create a blob, a tree, a commit and the master branch\nb = doRequest(\n \"POST\", \"/repos/%s/%s/git/blobs\" % ( login, repoName ),\n { \"content\": \"Content of the blob\", \"encoding\": \"latin1\" }\n)\nt = doRequest(\n \"POST\", \"/repos/%s/%s/git/trees\" % ( login, repoName ),\n { \"tree\" : [ { \"path\": \"foo.bar\", \"type\": \"blob\", \"mode\": \"100644\", \"sha\": b[\"sha\"] } ] }\n)\nc = doRequest(\n \"POST\", \"/repos/%s/%s/git/commits\" % ( login, repoName ),\n { \"parents\": [], \"message\": \"Message of the commit\", \"tree\": t[\"sha\"] }\n)\ndoRequest(\n \"POST\", \"/repos/%s/%s/git/refs\" % ( login, repoName ),\n { \"ref\": \"refs/heads/master\", \"sha\": c[\"sha\"] }\n)\n\n# Fork the repo\ndoRequest( \"POST\", \"/repos/%s/%s/forks?org=%s\" % ( login, repoName, orgName ), None )\n\n# Create a new blob => BOOM error 500\ndoRequest(\n \"POST\", \"/repos/%s/%s/git/blobs\" % ( orgName, repoName ),\n { \"content\": \"Content of the new blob\", \"encoding\": \"latin1\" }\n)\n","language":"Python"}},"html_url":"https://gist.github.com/2729810","git_push_url":"git@gist.github.com:2729810.git","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"description":"How to error 500 Github API v3, as requested by Rick (GitHub Staff)","created_at":"2012-02-29T16:47:12Z","id":"2729810","history":[{"url":"https://api.github.com/gists/2729810/a40de483e42ba33bda308371c0ef8383db73be9e","change_status":{"deletions":0,"additions":52,"total":52},"committed_at":"2012-02-29T16:47:12Z","version":"a40de483e42ba33bda308371c0ef8383db73be9e","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}}]} + +https +PATCH +api.github.com +None +/gists/2729810 +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"files": {"barbaz.txt": {"content": "File also created by PyGithub"}}, "description": "Description edited by PyGithub"} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4994'), ('content-length', '2759'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"14d4466c0580c6f8e9be17f81eb1c3b0"'), ('date', 'Sat, 19 May 2012 07:06:10 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"updated_at":"2012-05-19T07:06:10Z","forks":[],"url":"https://api.github.com/gists/2729810","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729810.git","files":{"barbaz.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729810/92be1df4e473d2541c5c166ad145a39d0324de8b/barbaz.txt","size":29,"filename":"barbaz.txt","content":"File also created by PyGithub","language":"Text"},"foobar.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729810/73a1c7f17aa0ad5d7cbb5a8ca033ce47d3d23197/foobar.txt","size":24,"filename":"foobar.txt","content":"File created by PyGithub","language":"Text"}},"html_url":"https://gist.github.com/2729810","git_push_url":"git@gist.github.com:2729810.git","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"description":"Description edited by PyGithub","created_at":"2012-05-19T07:00:58Z","id":"2729810","history":[{"url":"https://api.github.com/gists/2729810/67524fb6eb4883d979e8b4cf133003fa81a6a472","change_status":{"deletions":0,"additions":0,"total":0},"committed_at":"2012-05-19T07:06:10Z","version":"67524fb6eb4883d979e8b4cf133003fa81a6a472","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146}},{"url":"https://api.github.com/gists/2729810/e730170a9599696a9d776f8bb5028b35f937b6de","change_status":{"deletions":0,"additions":1,"total":1},"committed_at":"2012-05-19T07:04:31Z","version":"e730170a9599696a9d776f8bb5028b35f937b6de","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146}},{"url":"https://api.github.com/gists/2729810/35deb29ab1caf4c68c03d8244ad674b56de01a5c","change_status":{"deletions":0,"additions":1,"total":1},"committed_at":"2012-05-19T07:00:58Z","version":"35deb29ab1caf4c68c03d8244ad674b56de01a5c","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146}}]} + diff --git a/lib/github/tests/ReplayData/Gist.testEditWithoutParameters.txt b/lib/github/tests/ReplayData/Gist.testEditWithoutParameters.txt new file mode 100644 index 0000000000..599d8d5921 --- /dev/null +++ b/lib/github/tests/ReplayData/Gist.testEditWithoutParameters.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/gists/2729810 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4970'), ('content-length', '3280'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"b01fb6ac81527f99db9f6f586b048ee3"'), ('date', 'Sat, 19 May 2012 06:58:15 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"updated_at":"2012-02-29T16:47:12Z","forks":[],"url":"https://api.github.com/gists/2729810","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729810.git","files":{"fail_github.py":{"type":"application/python","raw_url":"https://gist.github.com/raw/2729810/2fb3aa84e0efa50dc0f4c18b5df5b7b9ab27076b/fail_github.py","size":1636,"filename":"fail_github.py","content":"import httplib\nimport base64\nimport json\n\nlogin = \"\"\npassword = \"\"\norgName = \"\"\nrepoName = \"FailGithubApi\"\n\ndef doRequest( verb, url, input ):\n input = json.dumps( input )\n cnx = httplib.HTTPSConnection( \"api.github.com\", strict = True )\n cnx.request( verb, url, input, { \"Authorization\" : \"Basic \" + base64.b64encode( login + \":\" + password ).replace( '\\n', '' ) } )\n response = cnx.getresponse()\n status = response.status\n output = response.read()\n cnx.close()\n print verb, url, input, \"=>\", status, output\n print\n if status < 200 or status >= 300:\n exit( 1 )\n return json.loads( output )\n\n# Create a repo\ndoRequest( \"POST\", \"/user/repos\", { \"name\": repoName } )\n\n# Create a blob, a tree, a commit and the master branch\nb = doRequest(\n \"POST\", \"/repos/%s/%s/git/blobs\" % ( login, repoName ),\n { \"content\": \"Content of the blob\", \"encoding\": \"latin1\" }\n)\nt = doRequest(\n \"POST\", \"/repos/%s/%s/git/trees\" % ( login, repoName ),\n { \"tree\" : [ { \"path\": \"foo.bar\", \"type\": \"blob\", \"mode\": \"100644\", \"sha\": b[\"sha\"] } ] }\n)\nc = doRequest(\n \"POST\", \"/repos/%s/%s/git/commits\" % ( login, repoName ),\n { \"parents\": [], \"message\": \"Message of the commit\", \"tree\": t[\"sha\"] }\n)\ndoRequest(\n \"POST\", \"/repos/%s/%s/git/refs\" % ( login, repoName ),\n { \"ref\": \"refs/heads/master\", \"sha\": c[\"sha\"] }\n)\n\n# Fork the repo\ndoRequest( \"POST\", \"/repos/%s/%s/forks?org=%s\" % ( login, repoName, orgName ), None )\n\n# Create a new blob => BOOM error 500\ndoRequest(\n \"POST\", \"/repos/%s/%s/git/blobs\" % ( orgName, repoName ),\n { \"content\": \"Content of the new blob\", \"encoding\": \"latin1\" }\n)\n","language":"Python"}},"html_url":"https://gist.github.com/2729810","git_push_url":"git@gist.github.com:2729810.git","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"description":"How to error 500 Github API v3, as requested by Rick (GitHub Staff)","created_at":"2012-02-29T16:47:12Z","id":"2729810","history":[{"url":"https://api.github.com/gists/2729810/a40de483e42ba33bda308371c0ef8383db73be9e","change_status":{"deletions":0,"additions":52,"total":52},"committed_at":"2012-02-29T16:47:12Z","version":"a40de483e42ba33bda308371c0ef8383db73be9e","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}}]} + +https +PATCH +api.github.com +None +/gists/2729810 +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4998'), ('content-length', '1446'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"9d90688efdf43c600be9c6c068f007dd"'), ('date', 'Sat, 19 May 2012 07:03:55 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"updated_at":"2012-05-19T07:00:58Z","git_push_url":"git@gist.github.com:2729810.git","forks":[],"url":"https://api.github.com/gists/2729810","comments":0,"public":true,"files":{"foobar.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729810/73a1c7f17aa0ad5d7cbb5a8ca033ce47d3d23197/foobar.txt","size":24,"filename":"foobar.txt","content":"File created by PyGithub","language":"Text"}},"html_url":"https://gist.github.com/2729810","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"description":"Gist created by PyGithub","created_at":"2012-05-19T07:00:58Z","id":"2729810","history":[{"url":"https://api.github.com/gists/2729810/35deb29ab1caf4c68c03d8244ad674b56de01a5c","version":"35deb29ab1caf4c68c03d8244ad674b56de01a5c","change_status":{"deletions":0,"additions":1,"total":1},"committed_at":"2012-05-19T07:00:58Z","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}}],"git_pull_url":"git://gist.github.com/2729810.git"} + diff --git a/lib/github/tests/ReplayData/Gist.testFork.txt b/lib/github/tests/ReplayData/Gist.testFork.txt new file mode 100644 index 0000000000..0589aa6c89 --- /dev/null +++ b/lib/github/tests/ReplayData/Gist.testFork.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/gists/6296553 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4966'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '25285'), ('server', 'GitHub.com'), ('last-modified', 'Wed, 21 Aug 2013 16:26:50 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"b96b3895f5da8f5e9533f0db72748a49"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 21 Aug 2013 16:28:20 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1377104997')] +{"url":"https://api.github.com/gists/6296553","forks_url":"https://api.github.com/gists/6296553/forks","commits_url":"https://api.github.com/gists/6296553/commits","id":"6296553","git_pull_url":"https://gist.github.com/6296553.git","git_push_url":"https://gist.github.com/6296553.git","html_url":"https://gist.github.com/6296553","files":{"GithubAPI.lua":{"filename":"GithubAPI.lua","type":"text/plain","language":"Lua","raw_url":"https://gist.github.com/raw/6296553/88aafa25fb28e17013054a117354a37f0d78963c/GithubAPI.lua","size":21229,"content":"-- GithubAPI\n-- @Author : Hyro Vitaly Protago\n-- @Version : 1.0.0\n\n--[[\n\nINFOS :\n - Cannot delete an anonymous gist\n]]--\n\nGithubAPI = {\n\tlocation = \"https://api.github.com/\",\n\ttoken = nil,\n\tOAuth = {\n\t\tauthorizations = {}\n\t},\n\tgist = {\n\t\tlist = {},\n\t\tcomment = {}\n\t},\n\tgithub = {}\n}\n\n----------------------------------------------------------------------------\n------------------------------ Github API ----------------------------------\n----------------------------------------------------------------------------\n\n--- Authentication ---\n\n--[[ Scopes --\n\nScopes let you specify exactly what type of access you need. Scopes limit access for OAuth tokens.\nThey do not grant any additional permission beyond that which the user already has.\n\nFor the web flow, requested scopes will be displayed to the user on the authorize form.\n\nCheck headers to see what OAuth scopes you have, and what the API action accepts.\n\n~~~\n$ curl -H \"Authorization: token OAUTH-TOKEN\" https://api.github.com/users/technoweenie -I\nHTTP/1.1 200 OK\nX-OAuth-Scopes: repo, user\nX-Accepted-OAuth-Scopes: user\nX-OAuth-Scopes lists the scopes your token has authorized. X-Accepted-OAuth-Scopes lists the scopes that the action checks for.\n~~~\n\n- (no scope)\npublic read-only access (includes public user profile info, public repo info, and gists).\n- user\nRead/write access to profile info only. Note: this scope includes user:email and user:follow.\n- user:email\nRead access to a user’s email addresses.\n- user:follow\nAccess to follow or unfollow other users.\n- public_repo\nRead/write access to public repos and organizations.\n- repo\nRead/write access to public and private repos and organizations.\n- repo:status\nRead/write access to public and private repository commit statuses.\nThis scope is only necessary to grant other users or services access to private repository commit statuses without granting access to the code.\nThe repo and public_repo scopes already include access to commit status for private and public repositories respectively.\n- delete_repo\nDelete access to adminable repositories.\n- notifications\nRead access to a user’s notifications. repo is accepted too.\n- gist\nWrite access to gists.\n\nNOTE: Your application can request the scopes in the initial redirection. You can specify multiple scopes by separating them by a comma.\n~~~\nhttps://github.com/login/oauth/authorize?\n client_id=...&\n scope=user,public_repo\n~~~\n]]--\n\n-- Redirect users to request GitHub access --\nfunction GithubAPI.OAuth.getToken(client_id, scope, callback)\n\tGithubAPI.http_request(\"https://github.com/login/oauth/authorize?client_id=\"..client_id..\"&scope=\"..scope, function(data, status, headers)\n\t\tGithubAPI.OAuth._getToken(client_id, client_secret, data, callback)\n\tend, nil, true)\nend\n-- GitHub redirects back to your site --\nfunction GithubAPI.OAuth._getToken(client_id, client_secret, code, callback)\n\tGithubAPI.http_request(\"https://github.com/login/oauth/access_token\", callback, {\n\t\tmethod = \"POST\",\n\t\tdata = {\n\t\t\tclient_id = client_id,\n\t\t\tclient_secret = client_secret,\n\t\t\tcode = code\n\t\t}\n\t}, true)\nend\n\n-- List your authorizations --\nfunction GithubAPI.OAuth.authorizations.list(callback)\n\tGithubAPI.http_request(\"authorizations\", callback)\nend\n\n--[[ Response --\nStatus: 200 OK\nLink: ; rel=\"next\",\n ; rel=\"last\"\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n[\n {\n \"id\": 1,\n \"url\": \"https://api.github.com/authorizations/1\",\n \"scopes\": [\n \"public_repo\"\n ],\n \"token\": \"abc123\",\n \"app\": {\n \"url\": \"http://my-github-app.com\",\n \"name\": \"my github app\",\n \"client_id\": \"abcde12345fghij67890\"\n },\n \"note\": \"optional note\",\n \"note_url\": \"http://optional/note/url\",\n \"updated_at\": \"2011-09-06T20:39:23Z\",\n \"created_at\": \"2011-09-06T17:26:27Z\"\n }\n]\n]]--\n\n-- Get a single authorization --\nfunction GithubAPI.OAuth.authorizations.get(id, callback)\n\tGithubAPI.http_request(\"authorizations/\"..id, callback)\nend\n\n--[[ Response --\nStatus: 200 OK\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"id\": 1,\n \"url\": \"https://api.github.com/authorizations/1\",\n \"scopes\": [\n \"public_repo\"\n ],\n \"token\": \"abc123\",\n \"app\": {\n \"url\": \"http://my-github-app.com\",\n \"name\": \"my github app\",\n \"client_id\": \"abcde12345fghij67890\"\n },\n \"note\": \"optional note\",\n \"note_url\": \"http://optional/note/url\",\n \"updated_at\": \"2011-09-06T20:39:23Z\",\n \"created_at\": \"2011-09-06T17:26:27Z\"\n}\n]]--\n\n-- Create a new authorization --\nfunction GithubAPI.OAuth.authorizations.create(callback, scopes, note, note_url, client_id, client_secret)\n\tGithubAPI.http_request(\"authorizations/\", callback, {\n\t\tmethod = \"POST\",\n\t\tdata = {\n\t\t\tscopes = scopes,\n\t\t\tnote = note,\n\t\t\tnote_url = note_url,\n\t\t\tclient_id = client_id,\n\t\t\tclient_secret = client_secret\n\t\t}\n\t})\nend\n\n--[[ Input --\nscopes\nOptional array - A list of scopes that this authorization is in.\n\nnote\nOptional string - A note to remind you what the OAuth token is for.\n\nnote_url\nOptional string - A URL to remind you what app the OAuth token is for.\n\nclient_id\nOptional String - The 20 character OAuth app client key for which to create the token.\n\nclient_secret\nOptional String - The 40 character OAuth app client secret for which to create the token.\n~~~\n{\n \"scopes\": [\n \"public_repo\"\n ],\n \"note\": \"admin script\"\n}\n~~~\n]]--\n\n--[[ Response --\nStatus: 201 Created\nLocation: https://api.github.com/authorizations/1\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"id\": 1,\n \"url\": \"https://api.github.com/authorizations/1\",\n \"scopes\": [\n \"public_repo\"\n ],\n \"token\": \"abc123\",\n \"app\": {\n \"url\": \"http://my-github-app.com\",\n \"name\": \"my github app\",\n \"client_id\": \"abcde12345fghij67890\"\n },\n \"note\": \"optional note\",\n \"note_url\": \"http://optional/note/url\",\n \"updated_at\": \"2011-09-06T20:39:23Z\",\n \"created_at\": \"2011-09-06T17:26:27Z\"\n}\n]]--\n\n-- TODO\n-- Update\n-- Check\n-- Delete\n\n--- GISTS ---\n\n-- List gists --\nfunction GithubAPI.gist.list.user(user, callback)\n\tGithubAPI.http_request(\"users/\"..user..\"/gists\", callback)\nend\nfunction GithubAPI.gist.list.all(callback) -- return all public gists if called anonymously\n\tGithubAPI.http_request(\"gists\", callback)\nend\nfunction GithubAPI.gist.list.allPublic(callback)\n\tGithubAPI.http_request(\"gists/public\", callback)\nend\nfunction GithubAPI.gist.list.starred(callback)\n\tGithubAPI.http_request(\"gists/starred\", callback)\nend\n\n--[[ Response --\nStatus: 200 OK\nLink: ; rel=\"next\",\n ; rel=\"last\"\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n[\n {\n \"url\": \"https://api.github.com/gists/88a3112be74ba6ad701e\",\n \"id\": \"1\",\n \"description\": \"description of gist\",\n \"public\": true,\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"files\": {\n \"ring.erl\": {\n \"size\": 932,\n \"filename\": \"ring.erl\",\n \"raw_url\": \"https://gist.github.com/raw/365370/8c4d2d43d178df44f4c03a7f2ac0ff512853564e/ring.erl\"\n }\n },\n \"comments\": 0,\n \"comments_url\": \"https://api.github.com/gists/8438e99468ee9a4ab10e/comments/\",\n \"html_url\": \"https://gist.github.com/1\",\n \"git_pull_url\": \"git://gist.github.com/1.git\",\n \"git_push_url\": \"git@gist.github.com:1.git\",\n \"created_at\": \"2010-04-14T02:15:15Z\"\n }\n]\n]]--\n\n-- Get a single gist --\nfunction GithubAPI.gist.get(id, callback)\n\tGithubAPI.http_request(\"gists/\"..id, callback)\nend\n\n--[[ Response --\nStatus: 200 OK\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"url\": \"https://api.github.com/gists/88a3112be74ba6ad701e\",\n \"id\": \"1\",\n \"description\": \"description of gist\",\n \"public\": true,\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"files\": {\n \"ring.erl\": {\n \"size\": 932,\n \"filename\": \"ring.erl\",\n \"raw_url\": \"https://gist.github.com/raw/365370/8c4d2d43d178df44f4c03a7f2ac0ff512853564e/ring.erl\"\n }\n },\n \"comments\": 0,\n \"comments_url\": \"https://api.github.com/gists/8438e99468ee9a4ab10e/comments/\",\n \"html_url\": \"https://gist.github.com/1\",\n \"git_pull_url\": \"git://gist.github.com/1.git\",\n \"git_push_url\": \"git@gist.github.com:1.git\",\n \"created_at\": \"2010-04-14T02:15:15Z\",\n \"forks\": [\n {\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"url\": \"https://api.github.com/gists/add0d71b065f55c46f60\",\n \"created_at\": \"2011-04-14T16:00:49Z\"\n }\n ],\n \"history\": [\n {\n \"url\": \"https://api.github.com/gists/80bdb0d081c447600e18\",\n \"version\": \"57a7f021a713b1c5a6a199b54cc514735d2d462f\",\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"change_status\": {\n \"deletions\": 0,\n \"additions\": 180,\n \"total\": 180\n },\n \"committed_at\": \"2010-04-14T02:15:15Z\"\n }\n ]\n}\n]]--\n\n-- Create a gist --\nfunction GithubAPI.gist.create(public, files, callback ,description)\n\tGithubAPI.http_request(\"gists/\"..id, callback, {\n\t\tmethod = \"POST\",\n\t\tdata = {\n\t\t\tpublic = public,\n\t\t\tfiles = files,\n\t\t\tdescription = description\n\t\t}\n\t})\nend\n\n--[[ Input --\n{\n \"description\": \"the description for this gist\",\n \"public\": true,\n \"files\": {\n \"file1.txt\": {\n \"content\": \"String file contents\"\n }\n }\n}\n]]--\n\n--[[ Response --\nStatus: 201 Created\nLocation: https://api.github.com/gists/1\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"url\": \"https://api.github.com/gists/88a3112be74ba6ad701e\",\n \"id\": \"1\",\n \"description\": \"description of gist\",\n \"public\": true,\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"files\": {\n \"ring.erl\": {\n \"size\": 932,\n \"filename\": \"ring.erl\",\n \"raw_url\": \"https://gist.github.com/raw/365370/8c4d2d43d178df44f4c03a7f2ac0ff512853564e/ring.erl\"\n }\n },\n \"comments\": 0,\n \"comments_url\": \"https://api.github.com/gists/8438e99468ee9a4ab10e/comments/\",\n \"html_url\": \"https://gist.github.com/1\",\n \"git_pull_url\": \"git://gist.github.com/1.git\",\n \"git_push_url\": \"git@gist.github.com:1.git\",\n \"created_at\": \"2010-04-14T02:15:15Z\",\n \"forks\": [\n {\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"url\": \"https://api.github.com/gists/add0d71b065f55c46f60\",\n \"created_at\": \"2011-04-14T16:00:49Z\"\n }\n ],\n \"history\": [\n {\n \"url\": \"https://api.github.com/gists/80bdb0d081c447600e18\",\n \"version\": \"57a7f021a713b1c5a6a199b54cc514735d2d462f\",\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"change_status\": {\n \"deletions\": 0,\n \"additions\": 180,\n \"total\": 180\n },\n \"committed_at\": \"2010-04-14T02:15:15Z\"\n }\n ]\n}\n]]--\n\n-- Edit a gist --\nfunction GithubAPI.gist.edit(id, files, callback, description)\n\tGithubAPI.http_request(\"gists/\"..id, callback, {\n\t\tmethod = \"PATCH\",\n\t\tdata = {\n\t\t\tid = id,\n\t\t\tfiles = files,\n\t\t\tdescription = description\n\t\t}\n\t})\nend\n\n--[[ Input --\n{\n \"description\": \"the description for this gist\",\n \"files\": {\n \"file1.txt\": {\n \"content\": \"updated file contents\"\n },\n \"old_name.txt\": {\n \"filename\": \"new_name.txt\",\n \"content\": \"modified contents\"\n },\n \"new_file.txt\": {\n \"content\": \"a new file\"\n },\n \"delete_this_file.txt\": null\n }\n}\n]]--\n\n--[[ Response --\nStatus: 200 OK\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"url\": \"https://api.github.com/gists/88a3112be74ba6ad701e\",\n \"id\": \"1\",\n \"description\": \"description of gist\",\n \"public\": true,\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"files\": {\n \"ring.erl\": {\n \"size\": 932,\n \"filename\": \"ring.erl\",\n \"raw_url\": \"https://gist.github.com/raw/365370/8c4d2d43d178df44f4c03a7f2ac0ff512853564e/ring.erl\"\n }\n },\n \"comments\": 0,\n \"comments_url\": \"https://api.github.com/gists/8438e99468ee9a4ab10e/comments/\",\n \"html_url\": \"https://gist.github.com/1\",\n \"git_pull_url\": \"git://gist.github.com/1.git\",\n \"git_push_url\": \"git@gist.github.com:1.git\",\n \"created_at\": \"2010-04-14T02:15:15Z\",\n \"forks\": [\n {\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"url\": \"https://api.github.com/gists/add0d71b065f55c46f60\",\n \"created_at\": \"2011-04-14T16:00:49Z\"\n }\n ],\n \"history\": [\n {\n \"url\": \"https://api.github.com/gists/80bdb0d081c447600e18\",\n \"version\": \"57a7f021a713b1c5a6a199b54cc514735d2d462f\",\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"change_status\": {\n \"deletions\": 0,\n \"additions\": 180,\n \"total\": 180\n },\n \"committed_at\": \"2010-04-14T02:15:15Z\"\n }\n ]\n}\n]]--\n\n-- Star a gist --\nfunction GithubAPI.gist.star(id, callback)\n\tGithubAPI.http_request(\"gists/\"..id..\"/star\", callback, {method=\"PUT\"})\nend\n\n--[[ Response --\nStatus: 204 No Content\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n]]--\n\n-- Unstar a gist --\nfunction GithubAPI.gist.unstar(id, callback)\n\tGithubAPI.http_request(\"gists/\"..id..\"/star\", callback, {method=\"DELETE\"})\nend\n\n--[[ Response --\nStatus: 204 No Content\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n]]--\n\n-- Check if a gist is starred --\nfunction GithubAPI.gist.checkStar(id, callback)\n\tGithubAPI.http_request(\"gists/\"..id..\"/star\", callback)\nend\n\n--[[\n-- Response if gist is starred --\nStatus: 204 No Content\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n\n-- Response if gist is not starred --\nStatus: 404 Not Found\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n]]--\n\n-- Fork a gist --\nfunction GithubAPI.gist.fork(id, callback)\n\tGithubAPI.http_request(\"gists/\"..id..\"/forks\", callback, {method=\"POST\"})\nend\n\n--[[ Response --\nStatus: 201 Created\nLocation: https://api.github.com/gists/2\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"url\": \"https://api.github.com/gists/88a3112be74ba6ad701e\",\n \"id\": \"1\",\n \"description\": \"description of gist\",\n \"public\": true,\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"files\": {\n \"ring.erl\": {\n \"size\": 932,\n \"filename\": \"ring.erl\",\n \"raw_url\": \"https://gist.github.com/raw/365370/8c4d2d43d178df44f4c03a7f2ac0ff512853564e/ring.erl\"\n }\n },\n \"comments\": 0,\n \"comments_url\": \"https://api.github.com/gists/8438e99468ee9a4ab10e/comments/\",\n \"html_url\": \"https://gist.github.com/1\",\n \"git_pull_url\": \"git://gist.github.com/1.git\",\n \"git_push_url\": \"git@gist.github.com:1.git\",\n \"created_at\": \"2010-04-14T02:15:15Z\"\n}\n]]--\n\n-- Delete a gist --\nfunction GithubAPI.gist.delete(id, callback)\n\tGithubAPI.http_request(\"gists/\"..id, callback, {method=\"DELETE\"})\nend\n\n--[[ Response --\nStatus: 204 No Content\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n]]--\n\n--- GISTS COMMENTS ---\n\n-- List comments on a gist --\nfunction GithubAPI.gist.comment.list(gist_id, callback)\n\tGithubAPI.http_request(\"gists/..\"gist_id\"../comments\", callback)\nend\n\n--[[ Response --\nStatus: 200 OK\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n[\n {\n \"id\": 1,\n \"url\": \"https://api.github.com/gists/ae709e9cf889e485e65f/comments/1\",\n \"body\": \"Just commenting for the sake of commenting\",\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"created_at\": \"2011-04-18T23:23:56Z\"\n }\n]\n]]--\n\n-- Get a single comment --\nfunction GithubAPI.gist.comment.get(gist_id, id, callback)\n\tGithubAPI.http_request(\"gists/..\"gist_id\"../comments/\"..id, callback)\nend\n\n--[[ Response --\nStatus: 200 OK\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"id\": 1,\n \"url\": \"https://api.github.com/gists/ae709e9cf889e485e65f/comments/1\",\n \"body\": \"Just commenting for the sake of commenting\",\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"created_at\": \"2011-04-18T23:23:56Z\"\n}\n]]--\n\n-- Create a comment --\nfunction GithubAPI.gist.comment.create(gist_id, body, callback)\n\tGithubAPI.http_request(\"gists/..\"gist_id\"../comments/\"..id, callback, {\n\t\tmethod = \"POST\",\n\t\tdata = {\n\t\t\tbody = body\n\t\t}\n\t})\nend\n\n--[[ Input --\n{\n \"body\": \"Just commenting for the sake of commenting\"\n}\n]]--\n--[[ Response --\nStatus: 201 Created\nLocation: https://api.github.com/gists/comments/1\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"id\": 1,\n \"url\": \"https://api.github.com/gists/ae709e9cf889e485e65f/comments/1\",\n \"body\": \"Just commenting for the sake of commenting\",\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"created_at\": \"2011-04-18T23:23:56Z\"\n}\n]]--\n\n-- Edit a comment --\nfunction GithubAPI.gist.comment.edit(gist_id, id, body, callback)\n\tGithubAPI.http_request(\"gists/..\"gist_id\"../comments/\"..id, callback, {\n\t\tmethod = \"PATCH\",\n\t\tdata = {\n\t\t\tbody = body\n\t\t}\n\t})\nend\n\n--[[ Input --\n{\n \"body\": \"Just commenting for the sake of commenting\"\n}\n]]--\n--[[ Response --\nStatus: 200 OK\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"id\": 1,\n \"url\": \"https://api.github.com/gists/ae709e9cf889e485e65f/comments/1\",\n \"body\": \"Just commenting for the sake of commenting\",\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"created_at\": \"2011-04-18T23:23:56Z\"\n}\n]]--\n\n-- Delete a comment --\nfunction GithubAPI.gist.comment.delete(gist_id, id, callback)\n\tGithubAPI.http_request(\"gists/..\"gist_id\"../comments/\"..id, callback, {method = \"DELETE\"})\nend\n\n--[[ Response --\nStatus: 204 No Content\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n]]--\n\n----------------------------------------------------------------------------\n-------------------------------- TOOLS -------------------------------------\n----------------------------------------------------------------------------\n\nfunction GithubAPI.http_request(url, callback, opts, fullUrl)\n\topts = opts or {}\n\t-- if GithubAPI.token then opts.headers = TOKEN BEARER\n\tif opts.data then opts.data = json.encode(opts.data) end\n\n\tlocal _url\n\tif (fullUrl) then _url = url else _url = GithubAPI.location .. url end\n\n\thttp.request(_url, function(data, status, headers)\n\t\tif (status == 500) then error(\"Github: Internal Server Error ...\") end\n\t\tdata = json.decode(data)\n\t\tcallback(data, status, headers)\n\tend, alert, opts)\nend\n\nfunction GithubAPI.explode(div,str) -- credit: http://richard.warburton.it\n if (div=='') then return false end\n local pos,arr = 0,{}\n for st,sp in function() return string.find(str,div,pos,true) end do\n table.insert(arr,string.sub(str,pos,st-1))\n pos = sp + 1\n end\n table.insert(arr,string.sub(str,pos))\n return arr\nend\n\n-- GITHUB TIMESTAMP (YYYY-MM-DDTHH:MM:SSZ) to os.time\nfunction GithubAPI.gtimestamp(githubTime)\n\tgithubTime = githubTime:sub(1, #githubTime-1) -- remove Z\n\tgithubTime = GithubAPI.explode(\"T\", githubTime)\n\tgithubTime[1] = GithubAPI.explode(\"-\", githubTime[1])\n\tgithubTime[2] = GithubAPI.explode(\":\", githubTime[2])\n\treturn os.time({\n\t\tyear = tonumber(githubTime[1][1]),\n\t\tmonth = tonumber(githubTime[1][2]),\n\t\tday = tonumber(githubTime[1][3]),\n\t\thour = tonumber(githubTime[2][1]),\n\t\tmin = tonumber(githubTime[2][2]),\n\t\tsec = tonumber(githubTime[2][3])\n\t})\nend"}},"public":true,"created_at":"2013-08-21T16:12:27Z","updated_at":"2013-08-21T16:26:50Z","description":"Github API","comments":0,"user":{"login":"HyroVitalyProtago","id":3470988,"avatar_url":"https://2.gravatar.com/avatar/ed59562b231a649345f38703948f76f4?d=https%3A%2F%2Fidenticons.github.com%2F6582cb986b7a730b12f7c18dfcc865f0.png","gravatar_id":"ed59562b231a649345f38703948f76f4","url":"https://api.github.com/users/HyroVitalyProtago","html_url":"https://github.com/HyroVitalyProtago","followers_url":"https://api.github.com/users/HyroVitalyProtago/followers","following_url":"https://api.github.com/users/HyroVitalyProtago/following{/other_user}","gists_url":"https://api.github.com/users/HyroVitalyProtago/gists{/gist_id}","starred_url":"https://api.github.com/users/HyroVitalyProtago/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/HyroVitalyProtago/subscriptions","organizations_url":"https://api.github.com/users/HyroVitalyProtago/orgs","repos_url":"https://api.github.com/users/HyroVitalyProtago/repos","events_url":"https://api.github.com/users/HyroVitalyProtago/events{/privacy}","received_events_url":"https://api.github.com/users/HyroVitalyProtago/received_events","type":"User"},"comments_url":"https://api.github.com/gists/6296553/comments","forks":[],"history":[{"user":null,"version":"c464aecd7fea16684e935607eeea7ae4f8caa0e2","committed_at":"2013-08-21T16:12:27Z","change_status":{"total":793,"additions":793,"deletions":0},"url":"https://api.github.com/gists/6296553/c464aecd7fea16684e935607eeea7ae4f8caa0e2"}]} + +https +POST +api.github.com +None +/gists/6296553/forks +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4965'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('cache-control', 'max-age=0, private, must-revalidate'), ('content-length', '1510'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('location', 'https://api.github.com/gists/6296732'), ('access-control-allow-credentials', 'true'), ('date', 'Wed, 21 Aug 2013 16:28:24 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('etag', '"ceb086d4f395719d1124cade5cedbfd4"'), ('x-ratelimit-reset', '1377104997')] +{"url":"https://api.github.com/gists/6296732","forks_url":"https://api.github.com/gists/6296732/forks","commits_url":"https://api.github.com/gists/6296732/commits","id":"6296732","git_pull_url":"https://gist.github.com/6296732.git","git_push_url":"https://gist.github.com/6296732.git","html_url":"https://gist.github.com/6296732","files":{},"public":true,"created_at":"2013-08-21T16:28:24Z","updated_at":"2013-08-21T16:28:24Z","description":"Github API","comments":0,"user":{"login":"jacquev6","id":327146,"avatar_url":"https://1.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"comments_url":"https://api.github.com/gists/6296732/comments"} + +https +GET +api.github.com +None +/gists/6296732 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4964'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '26806'), ('server', 'GitHub.com'), ('last-modified', 'Wed, 21 Aug 2013 16:28:24 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"f2916c23435522156274bed022a322e7"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 21 Aug 2013 16:28:25 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1377104997')] +{"url":"https://api.github.com/gists/6296732","forks_url":"https://api.github.com/gists/6296732/forks","commits_url":"https://api.github.com/gists/6296732/commits","id":"6296732","git_pull_url":"https://gist.github.com/6296732.git","git_push_url":"https://gist.github.com/6296732.git","html_url":"https://gist.github.com/6296732","files":{"GithubAPI.lua":{"filename":"GithubAPI.lua","type":"text/plain","language":"Lua","raw_url":"https://gist.github.com/raw/6296732/88aafa25fb28e17013054a117354a37f0d78963c/GithubAPI.lua","size":21229,"content":"-- GithubAPI\n-- @Author : Hyro Vitaly Protago\n-- @Version : 1.0.0\n\n--[[\n\nINFOS :\n - Cannot delete an anonymous gist\n]]--\n\nGithubAPI = {\n\tlocation = \"https://api.github.com/\",\n\ttoken = nil,\n\tOAuth = {\n\t\tauthorizations = {}\n\t},\n\tgist = {\n\t\tlist = {},\n\t\tcomment = {}\n\t},\n\tgithub = {}\n}\n\n----------------------------------------------------------------------------\n------------------------------ Github API ----------------------------------\n----------------------------------------------------------------------------\n\n--- Authentication ---\n\n--[[ Scopes --\n\nScopes let you specify exactly what type of access you need. Scopes limit access for OAuth tokens.\nThey do not grant any additional permission beyond that which the user already has.\n\nFor the web flow, requested scopes will be displayed to the user on the authorize form.\n\nCheck headers to see what OAuth scopes you have, and what the API action accepts.\n\n~~~\n$ curl -H \"Authorization: token OAUTH-TOKEN\" https://api.github.com/users/technoweenie -I\nHTTP/1.1 200 OK\nX-OAuth-Scopes: repo, user\nX-Accepted-OAuth-Scopes: user\nX-OAuth-Scopes lists the scopes your token has authorized. X-Accepted-OAuth-Scopes lists the scopes that the action checks for.\n~~~\n\n- (no scope)\npublic read-only access (includes public user profile info, public repo info, and gists).\n- user\nRead/write access to profile info only. Note: this scope includes user:email and user:follow.\n- user:email\nRead access to a user’s email addresses.\n- user:follow\nAccess to follow or unfollow other users.\n- public_repo\nRead/write access to public repos and organizations.\n- repo\nRead/write access to public and private repos and organizations.\n- repo:status\nRead/write access to public and private repository commit statuses.\nThis scope is only necessary to grant other users or services access to private repository commit statuses without granting access to the code.\nThe repo and public_repo scopes already include access to commit status for private and public repositories respectively.\n- delete_repo\nDelete access to adminable repositories.\n- notifications\nRead access to a user’s notifications. repo is accepted too.\n- gist\nWrite access to gists.\n\nNOTE: Your application can request the scopes in the initial redirection. You can specify multiple scopes by separating them by a comma.\n~~~\nhttps://github.com/login/oauth/authorize?\n client_id=...&\n scope=user,public_repo\n~~~\n]]--\n\n-- Redirect users to request GitHub access --\nfunction GithubAPI.OAuth.getToken(client_id, scope, callback)\n\tGithubAPI.http_request(\"https://github.com/login/oauth/authorize?client_id=\"..client_id..\"&scope=\"..scope, function(data, status, headers)\n\t\tGithubAPI.OAuth._getToken(client_id, client_secret, data, callback)\n\tend, nil, true)\nend\n-- GitHub redirects back to your site --\nfunction GithubAPI.OAuth._getToken(client_id, client_secret, code, callback)\n\tGithubAPI.http_request(\"https://github.com/login/oauth/access_token\", callback, {\n\t\tmethod = \"POST\",\n\t\tdata = {\n\t\t\tclient_id = client_id,\n\t\t\tclient_secret = client_secret,\n\t\t\tcode = code\n\t\t}\n\t}, true)\nend\n\n-- List your authorizations --\nfunction GithubAPI.OAuth.authorizations.list(callback)\n\tGithubAPI.http_request(\"authorizations\", callback)\nend\n\n--[[ Response --\nStatus: 200 OK\nLink: ; rel=\"next\",\n ; rel=\"last\"\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n[\n {\n \"id\": 1,\n \"url\": \"https://api.github.com/authorizations/1\",\n \"scopes\": [\n \"public_repo\"\n ],\n \"token\": \"abc123\",\n \"app\": {\n \"url\": \"http://my-github-app.com\",\n \"name\": \"my github app\",\n \"client_id\": \"abcde12345fghij67890\"\n },\n \"note\": \"optional note\",\n \"note_url\": \"http://optional/note/url\",\n \"updated_at\": \"2011-09-06T20:39:23Z\",\n \"created_at\": \"2011-09-06T17:26:27Z\"\n }\n]\n]]--\n\n-- Get a single authorization --\nfunction GithubAPI.OAuth.authorizations.get(id, callback)\n\tGithubAPI.http_request(\"authorizations/\"..id, callback)\nend\n\n--[[ Response --\nStatus: 200 OK\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"id\": 1,\n \"url\": \"https://api.github.com/authorizations/1\",\n \"scopes\": [\n \"public_repo\"\n ],\n \"token\": \"abc123\",\n \"app\": {\n \"url\": \"http://my-github-app.com\",\n \"name\": \"my github app\",\n \"client_id\": \"abcde12345fghij67890\"\n },\n \"note\": \"optional note\",\n \"note_url\": \"http://optional/note/url\",\n \"updated_at\": \"2011-09-06T20:39:23Z\",\n \"created_at\": \"2011-09-06T17:26:27Z\"\n}\n]]--\n\n-- Create a new authorization --\nfunction GithubAPI.OAuth.authorizations.create(callback, scopes, note, note_url, client_id, client_secret)\n\tGithubAPI.http_request(\"authorizations/\", callback, {\n\t\tmethod = \"POST\",\n\t\tdata = {\n\t\t\tscopes = scopes,\n\t\t\tnote = note,\n\t\t\tnote_url = note_url,\n\t\t\tclient_id = client_id,\n\t\t\tclient_secret = client_secret\n\t\t}\n\t})\nend\n\n--[[ Input --\nscopes\nOptional array - A list of scopes that this authorization is in.\n\nnote\nOptional string - A note to remind you what the OAuth token is for.\n\nnote_url\nOptional string - A URL to remind you what app the OAuth token is for.\n\nclient_id\nOptional String - The 20 character OAuth app client key for which to create the token.\n\nclient_secret\nOptional String - The 40 character OAuth app client secret for which to create the token.\n~~~\n{\n \"scopes\": [\n \"public_repo\"\n ],\n \"note\": \"admin script\"\n}\n~~~\n]]--\n\n--[[ Response --\nStatus: 201 Created\nLocation: https://api.github.com/authorizations/1\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"id\": 1,\n \"url\": \"https://api.github.com/authorizations/1\",\n \"scopes\": [\n \"public_repo\"\n ],\n \"token\": \"abc123\",\n \"app\": {\n \"url\": \"http://my-github-app.com\",\n \"name\": \"my github app\",\n \"client_id\": \"abcde12345fghij67890\"\n },\n \"note\": \"optional note\",\n \"note_url\": \"http://optional/note/url\",\n \"updated_at\": \"2011-09-06T20:39:23Z\",\n \"created_at\": \"2011-09-06T17:26:27Z\"\n}\n]]--\n\n-- TODO\n-- Update\n-- Check\n-- Delete\n\n--- GISTS ---\n\n-- List gists --\nfunction GithubAPI.gist.list.user(user, callback)\n\tGithubAPI.http_request(\"users/\"..user..\"/gists\", callback)\nend\nfunction GithubAPI.gist.list.all(callback) -- return all public gists if called anonymously\n\tGithubAPI.http_request(\"gists\", callback)\nend\nfunction GithubAPI.gist.list.allPublic(callback)\n\tGithubAPI.http_request(\"gists/public\", callback)\nend\nfunction GithubAPI.gist.list.starred(callback)\n\tGithubAPI.http_request(\"gists/starred\", callback)\nend\n\n--[[ Response --\nStatus: 200 OK\nLink: ; rel=\"next\",\n ; rel=\"last\"\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n[\n {\n \"url\": \"https://api.github.com/gists/88a3112be74ba6ad701e\",\n \"id\": \"1\",\n \"description\": \"description of gist\",\n \"public\": true,\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"files\": {\n \"ring.erl\": {\n \"size\": 932,\n \"filename\": \"ring.erl\",\n \"raw_url\": \"https://gist.github.com/raw/365370/8c4d2d43d178df44f4c03a7f2ac0ff512853564e/ring.erl\"\n }\n },\n \"comments\": 0,\n \"comments_url\": \"https://api.github.com/gists/8438e99468ee9a4ab10e/comments/\",\n \"html_url\": \"https://gist.github.com/1\",\n \"git_pull_url\": \"git://gist.github.com/1.git\",\n \"git_push_url\": \"git@gist.github.com:1.git\",\n \"created_at\": \"2010-04-14T02:15:15Z\"\n }\n]\n]]--\n\n-- Get a single gist --\nfunction GithubAPI.gist.get(id, callback)\n\tGithubAPI.http_request(\"gists/\"..id, callback)\nend\n\n--[[ Response --\nStatus: 200 OK\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"url\": \"https://api.github.com/gists/88a3112be74ba6ad701e\",\n \"id\": \"1\",\n \"description\": \"description of gist\",\n \"public\": true,\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"files\": {\n \"ring.erl\": {\n \"size\": 932,\n \"filename\": \"ring.erl\",\n \"raw_url\": \"https://gist.github.com/raw/365370/8c4d2d43d178df44f4c03a7f2ac0ff512853564e/ring.erl\"\n }\n },\n \"comments\": 0,\n \"comments_url\": \"https://api.github.com/gists/8438e99468ee9a4ab10e/comments/\",\n \"html_url\": \"https://gist.github.com/1\",\n \"git_pull_url\": \"git://gist.github.com/1.git\",\n \"git_push_url\": \"git@gist.github.com:1.git\",\n \"created_at\": \"2010-04-14T02:15:15Z\",\n \"forks\": [\n {\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"url\": \"https://api.github.com/gists/add0d71b065f55c46f60\",\n \"created_at\": \"2011-04-14T16:00:49Z\"\n }\n ],\n \"history\": [\n {\n \"url\": \"https://api.github.com/gists/80bdb0d081c447600e18\",\n \"version\": \"57a7f021a713b1c5a6a199b54cc514735d2d462f\",\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"change_status\": {\n \"deletions\": 0,\n \"additions\": 180,\n \"total\": 180\n },\n \"committed_at\": \"2010-04-14T02:15:15Z\"\n }\n ]\n}\n]]--\n\n-- Create a gist --\nfunction GithubAPI.gist.create(public, files, callback ,description)\n\tGithubAPI.http_request(\"gists/\"..id, callback, {\n\t\tmethod = \"POST\",\n\t\tdata = {\n\t\t\tpublic = public,\n\t\t\tfiles = files,\n\t\t\tdescription = description\n\t\t}\n\t})\nend\n\n--[[ Input --\n{\n \"description\": \"the description for this gist\",\n \"public\": true,\n \"files\": {\n \"file1.txt\": {\n \"content\": \"String file contents\"\n }\n }\n}\n]]--\n\n--[[ Response --\nStatus: 201 Created\nLocation: https://api.github.com/gists/1\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"url\": \"https://api.github.com/gists/88a3112be74ba6ad701e\",\n \"id\": \"1\",\n \"description\": \"description of gist\",\n \"public\": true,\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"files\": {\n \"ring.erl\": {\n \"size\": 932,\n \"filename\": \"ring.erl\",\n \"raw_url\": \"https://gist.github.com/raw/365370/8c4d2d43d178df44f4c03a7f2ac0ff512853564e/ring.erl\"\n }\n },\n \"comments\": 0,\n \"comments_url\": \"https://api.github.com/gists/8438e99468ee9a4ab10e/comments/\",\n \"html_url\": \"https://gist.github.com/1\",\n \"git_pull_url\": \"git://gist.github.com/1.git\",\n \"git_push_url\": \"git@gist.github.com:1.git\",\n \"created_at\": \"2010-04-14T02:15:15Z\",\n \"forks\": [\n {\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"url\": \"https://api.github.com/gists/add0d71b065f55c46f60\",\n \"created_at\": \"2011-04-14T16:00:49Z\"\n }\n ],\n \"history\": [\n {\n \"url\": \"https://api.github.com/gists/80bdb0d081c447600e18\",\n \"version\": \"57a7f021a713b1c5a6a199b54cc514735d2d462f\",\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"change_status\": {\n \"deletions\": 0,\n \"additions\": 180,\n \"total\": 180\n },\n \"committed_at\": \"2010-04-14T02:15:15Z\"\n }\n ]\n}\n]]--\n\n-- Edit a gist --\nfunction GithubAPI.gist.edit(id, files, callback, description)\n\tGithubAPI.http_request(\"gists/\"..id, callback, {\n\t\tmethod = \"PATCH\",\n\t\tdata = {\n\t\t\tid = id,\n\t\t\tfiles = files,\n\t\t\tdescription = description\n\t\t}\n\t})\nend\n\n--[[ Input --\n{\n \"description\": \"the description for this gist\",\n \"files\": {\n \"file1.txt\": {\n \"content\": \"updated file contents\"\n },\n \"old_name.txt\": {\n \"filename\": \"new_name.txt\",\n \"content\": \"modified contents\"\n },\n \"new_file.txt\": {\n \"content\": \"a new file\"\n },\n \"delete_this_file.txt\": null\n }\n}\n]]--\n\n--[[ Response --\nStatus: 200 OK\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"url\": \"https://api.github.com/gists/88a3112be74ba6ad701e\",\n \"id\": \"1\",\n \"description\": \"description of gist\",\n \"public\": true,\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"files\": {\n \"ring.erl\": {\n \"size\": 932,\n \"filename\": \"ring.erl\",\n \"raw_url\": \"https://gist.github.com/raw/365370/8c4d2d43d178df44f4c03a7f2ac0ff512853564e/ring.erl\"\n }\n },\n \"comments\": 0,\n \"comments_url\": \"https://api.github.com/gists/8438e99468ee9a4ab10e/comments/\",\n \"html_url\": \"https://gist.github.com/1\",\n \"git_pull_url\": \"git://gist.github.com/1.git\",\n \"git_push_url\": \"git@gist.github.com:1.git\",\n \"created_at\": \"2010-04-14T02:15:15Z\",\n \"forks\": [\n {\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"url\": \"https://api.github.com/gists/add0d71b065f55c46f60\",\n \"created_at\": \"2011-04-14T16:00:49Z\"\n }\n ],\n \"history\": [\n {\n \"url\": \"https://api.github.com/gists/80bdb0d081c447600e18\",\n \"version\": \"57a7f021a713b1c5a6a199b54cc514735d2d462f\",\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"change_status\": {\n \"deletions\": 0,\n \"additions\": 180,\n \"total\": 180\n },\n \"committed_at\": \"2010-04-14T02:15:15Z\"\n }\n ]\n}\n]]--\n\n-- Star a gist --\nfunction GithubAPI.gist.star(id, callback)\n\tGithubAPI.http_request(\"gists/\"..id..\"/star\", callback, {method=\"PUT\"})\nend\n\n--[[ Response --\nStatus: 204 No Content\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n]]--\n\n-- Unstar a gist --\nfunction GithubAPI.gist.unstar(id, callback)\n\tGithubAPI.http_request(\"gists/\"..id..\"/star\", callback, {method=\"DELETE\"})\nend\n\n--[[ Response --\nStatus: 204 No Content\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n]]--\n\n-- Check if a gist is starred --\nfunction GithubAPI.gist.checkStar(id, callback)\n\tGithubAPI.http_request(\"gists/\"..id..\"/star\", callback)\nend\n\n--[[\n-- Response if gist is starred --\nStatus: 204 No Content\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n\n-- Response if gist is not starred --\nStatus: 404 Not Found\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n]]--\n\n-- Fork a gist --\nfunction GithubAPI.gist.fork(id, callback)\n\tGithubAPI.http_request(\"gists/\"..id..\"/forks\", callback, {method=\"POST\"})\nend\n\n--[[ Response --\nStatus: 201 Created\nLocation: https://api.github.com/gists/2\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"url\": \"https://api.github.com/gists/88a3112be74ba6ad701e\",\n \"id\": \"1\",\n \"description\": \"description of gist\",\n \"public\": true,\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"files\": {\n \"ring.erl\": {\n \"size\": 932,\n \"filename\": \"ring.erl\",\n \"raw_url\": \"https://gist.github.com/raw/365370/8c4d2d43d178df44f4c03a7f2ac0ff512853564e/ring.erl\"\n }\n },\n \"comments\": 0,\n \"comments_url\": \"https://api.github.com/gists/8438e99468ee9a4ab10e/comments/\",\n \"html_url\": \"https://gist.github.com/1\",\n \"git_pull_url\": \"git://gist.github.com/1.git\",\n \"git_push_url\": \"git@gist.github.com:1.git\",\n \"created_at\": \"2010-04-14T02:15:15Z\"\n}\n]]--\n\n-- Delete a gist --\nfunction GithubAPI.gist.delete(id, callback)\n\tGithubAPI.http_request(\"gists/\"..id, callback, {method=\"DELETE\"})\nend\n\n--[[ Response --\nStatus: 204 No Content\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n]]--\n\n--- GISTS COMMENTS ---\n\n-- List comments on a gist --\nfunction GithubAPI.gist.comment.list(gist_id, callback)\n\tGithubAPI.http_request(\"gists/..\"gist_id\"../comments\", callback)\nend\n\n--[[ Response --\nStatus: 200 OK\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n[\n {\n \"id\": 1,\n \"url\": \"https://api.github.com/gists/ae709e9cf889e485e65f/comments/1\",\n \"body\": \"Just commenting for the sake of commenting\",\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"created_at\": \"2011-04-18T23:23:56Z\"\n }\n]\n]]--\n\n-- Get a single comment --\nfunction GithubAPI.gist.comment.get(gist_id, id, callback)\n\tGithubAPI.http_request(\"gists/..\"gist_id\"../comments/\"..id, callback)\nend\n\n--[[ Response --\nStatus: 200 OK\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"id\": 1,\n \"url\": \"https://api.github.com/gists/ae709e9cf889e485e65f/comments/1\",\n \"body\": \"Just commenting for the sake of commenting\",\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"created_at\": \"2011-04-18T23:23:56Z\"\n}\n]]--\n\n-- Create a comment --\nfunction GithubAPI.gist.comment.create(gist_id, body, callback)\n\tGithubAPI.http_request(\"gists/..\"gist_id\"../comments/\"..id, callback, {\n\t\tmethod = \"POST\",\n\t\tdata = {\n\t\t\tbody = body\n\t\t}\n\t})\nend\n\n--[[ Input --\n{\n \"body\": \"Just commenting for the sake of commenting\"\n}\n]]--\n--[[ Response --\nStatus: 201 Created\nLocation: https://api.github.com/gists/comments/1\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"id\": 1,\n \"url\": \"https://api.github.com/gists/ae709e9cf889e485e65f/comments/1\",\n \"body\": \"Just commenting for the sake of commenting\",\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"created_at\": \"2011-04-18T23:23:56Z\"\n}\n]]--\n\n-- Edit a comment --\nfunction GithubAPI.gist.comment.edit(gist_id, id, body, callback)\n\tGithubAPI.http_request(\"gists/..\"gist_id\"../comments/\"..id, callback, {\n\t\tmethod = \"PATCH\",\n\t\tdata = {\n\t\t\tbody = body\n\t\t}\n\t})\nend\n\n--[[ Input --\n{\n \"body\": \"Just commenting for the sake of commenting\"\n}\n]]--\n--[[ Response --\nStatus: 200 OK\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n{\n \"id\": 1,\n \"url\": \"https://api.github.com/gists/ae709e9cf889e485e65f/comments/1\",\n \"body\": \"Just commenting for the sake of commenting\",\n \"user\": {\n \"login\": \"octocat\",\n \"id\": 1,\n \"avatar_url\": \"https://github.com/images/error/octocat_happy.gif\",\n \"gravatar_id\": \"somehexcode\",\n \"url\": \"https://api.github.com/users/octocat\"\n },\n \"created_at\": \"2011-04-18T23:23:56Z\"\n}\n]]--\n\n-- Delete a comment --\nfunction GithubAPI.gist.comment.delete(gist_id, id, callback)\n\tGithubAPI.http_request(\"gists/..\"gist_id\"../comments/\"..id, callback, {method = \"DELETE\"})\nend\n\n--[[ Response --\nStatus: 204 No Content\nX-RateLimit-Limit: 5000\nX-RateLimit-Remaining: 4999\n]]--\n\n----------------------------------------------------------------------------\n-------------------------------- TOOLS -------------------------------------\n----------------------------------------------------------------------------\n\nfunction GithubAPI.http_request(url, callback, opts, fullUrl)\n\topts = opts or {}\n\t-- if GithubAPI.token then opts.headers = TOKEN BEARER\n\tif opts.data then opts.data = json.encode(opts.data) end\n\n\tlocal _url\n\tif (fullUrl) then _url = url else _url = GithubAPI.location .. url end\n\n\thttp.request(_url, function(data, status, headers)\n\t\tif (status == 500) then error(\"Github: Internal Server Error ...\") end\n\t\tdata = json.decode(data)\n\t\tcallback(data, status, headers)\n\tend, alert, opts)\nend\n\nfunction GithubAPI.explode(div,str) -- credit: http://richard.warburton.it\n if (div=='') then return false end\n local pos,arr = 0,{}\n for st,sp in function() return string.find(str,div,pos,true) end do\n table.insert(arr,string.sub(str,pos,st-1))\n pos = sp + 1\n end\n table.insert(arr,string.sub(str,pos))\n return arr\nend\n\n-- GITHUB TIMESTAMP (YYYY-MM-DDTHH:MM:SSZ) to os.time\nfunction GithubAPI.gtimestamp(githubTime)\n\tgithubTime = githubTime:sub(1, #githubTime-1) -- remove Z\n\tgithubTime = GithubAPI.explode(\"T\", githubTime)\n\tgithubTime[1] = GithubAPI.explode(\"-\", githubTime[1])\n\tgithubTime[2] = GithubAPI.explode(\":\", githubTime[2])\n\treturn os.time({\n\t\tyear = tonumber(githubTime[1][1]),\n\t\tmonth = tonumber(githubTime[1][2]),\n\t\tday = tonumber(githubTime[1][3]),\n\t\thour = tonumber(githubTime[2][1]),\n\t\tmin = tonumber(githubTime[2][2]),\n\t\tsec = tonumber(githubTime[2][3])\n\t})\nend"}},"public":true,"created_at":"2013-08-21T16:28:24Z","updated_at":"2013-08-21T16:28:24Z","description":"Github API","comments":0,"user":{"login":"jacquev6","id":327146,"avatar_url":"https://2.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"comments_url":"https://api.github.com/gists/6296732/comments","forks":[],"history":[{"user":null,"version":"c464aecd7fea16684e935607eeea7ae4f8caa0e2","committed_at":"2013-08-21T16:12:27Z","change_status":{"total":793,"additions":793,"deletions":0},"url":"https://api.github.com/gists/6296732/c464aecd7fea16684e935607eeea7ae4f8caa0e2"}],"fork_of":{"url":"https://api.github.com/gists/6296553","forks_url":"https://api.github.com/gists/6296553/forks","commits_url":"https://api.github.com/gists/6296553/commits","id":"6296553","git_pull_url":"https://gist.github.com/6296553.git","git_push_url":"https://gist.github.com/6296553.git","html_url":"https://gist.github.com/6296553","files":{},"public":true,"created_at":"2013-08-21T16:12:27Z","updated_at":"2013-08-21T16:28:24Z","description":"Github API","comments":0,"user":{"login":"HyroVitalyProtago","id":3470988,"avatar_url":"https://1.gravatar.com/avatar/ed59562b231a649345f38703948f76f4?d=https%3A%2F%2Fidenticons.github.com%2F6582cb986b7a730b12f7c18dfcc865f0.png","gravatar_id":"ed59562b231a649345f38703948f76f4","url":"https://api.github.com/users/HyroVitalyProtago","html_url":"https://github.com/HyroVitalyProtago","followers_url":"https://api.github.com/users/HyroVitalyProtago/followers","following_url":"https://api.github.com/users/HyroVitalyProtago/following{/other_user}","gists_url":"https://api.github.com/users/HyroVitalyProtago/gists{/gist_id}","starred_url":"https://api.github.com/users/HyroVitalyProtago/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/HyroVitalyProtago/subscriptions","organizations_url":"https://api.github.com/users/HyroVitalyProtago/orgs","repos_url":"https://api.github.com/users/HyroVitalyProtago/repos","events_url":"https://api.github.com/users/HyroVitalyProtago/events{/privacy}","received_events_url":"https://api.github.com/users/HyroVitalyProtago/received_events","type":"User"},"comments_url":"https://api.github.com/gists/6296553/comments"}} + diff --git a/lib/github/tests/ReplayData/Gist.testGetComments.txt b/lib/github/tests/ReplayData/Gist.testGetComments.txt new file mode 100644 index 0000000000..8f47d99d03 --- /dev/null +++ b/lib/github/tests/ReplayData/Gist.testGetComments.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/gists/2729810 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4970'), ('content-length', '3280'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"b01fb6ac81527f99db9f6f586b048ee3"'), ('date', 'Sat, 19 May 2012 06:58:15 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"updated_at":"2012-02-29T16:47:12Z","forks":[],"url":"https://api.github.com/gists/2729810","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729810.git","files":{"fail_github.py":{"type":"application/python","raw_url":"https://gist.github.com/raw/2729810/2fb3aa84e0efa50dc0f4c18b5df5b7b9ab27076b/fail_github.py","size":1636,"filename":"fail_github.py","content":"import httplib\nimport base64\nimport json\n\nlogin = \"\"\npassword = \"\"\norgName = \"\"\nrepoName = \"FailGithubApi\"\n\ndef doRequest( verb, url, input ):\n input = json.dumps( input )\n cnx = httplib.HTTPSConnection( \"api.github.com\", strict = True )\n cnx.request( verb, url, input, { \"Authorization\" : \"Basic \" + base64.b64encode( login + \":\" + password ).replace( '\\n', '' ) } )\n response = cnx.getresponse()\n status = response.status\n output = response.read()\n cnx.close()\n print verb, url, input, \"=>\", status, output\n print\n if status < 200 or status >= 300:\n exit( 1 )\n return json.loads( output )\n\n# Create a repo\ndoRequest( \"POST\", \"/user/repos\", { \"name\": repoName } )\n\n# Create a blob, a tree, a commit and the master branch\nb = doRequest(\n \"POST\", \"/repos/%s/%s/git/blobs\" % ( login, repoName ),\n { \"content\": \"Content of the blob\", \"encoding\": \"latin1\" }\n)\nt = doRequest(\n \"POST\", \"/repos/%s/%s/git/trees\" % ( login, repoName ),\n { \"tree\" : [ { \"path\": \"foo.bar\", \"type\": \"blob\", \"mode\": \"100644\", \"sha\": b[\"sha\"] } ] }\n)\nc = doRequest(\n \"POST\", \"/repos/%s/%s/git/commits\" % ( login, repoName ),\n { \"parents\": [], \"message\": \"Message of the commit\", \"tree\": t[\"sha\"] }\n)\ndoRequest(\n \"POST\", \"/repos/%s/%s/git/refs\" % ( login, repoName ),\n { \"ref\": \"refs/heads/master\", \"sha\": c[\"sha\"] }\n)\n\n# Fork the repo\ndoRequest( \"POST\", \"/repos/%s/%s/forks?org=%s\" % ( login, repoName, orgName ), None )\n\n# Create a new blob => BOOM error 500\ndoRequest(\n \"POST\", \"/repos/%s/%s/git/blobs\" % ( orgName, repoName ),\n { \"content\": \"Content of the new blob\", \"encoding\": \"latin1\" }\n)\n","language":"Python"}},"html_url":"https://gist.github.com/2729810","git_push_url":"git@gist.github.com:2729810.git","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"description":"How to error 500 Github API v3, as requested by Rick (GitHub Staff)","created_at":"2012-02-29T16:47:12Z","id":"2729810","history":[{"url":"https://api.github.com/gists/2729810/a40de483e42ba33bda308371c0ef8383db73be9e","change_status":{"deletions":0,"additions":52,"total":52},"committed_at":"2012-02-29T16:47:12Z","version":"a40de483e42ba33bda308371c0ef8383db73be9e","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}}]} + +https +GET +api.github.com +None +/gists/2729810/comments +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4980'), ('content-length', '473'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"ed0bedf32cc0d6f8dfe93e85ffa951cc"'), ('date', 'Sat, 19 May 2012 07:20:33 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-19T07:19:02Z","body":"Some random comment","url":"https://api.github.com/gists/comments/323637","created_at":"2012-05-19T07:19:02Z","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":323637}] + diff --git a/lib/github/tests/ReplayData/Gist.testRenameFile.txt b/lib/github/tests/ReplayData/Gist.testRenameFile.txt new file mode 100644 index 0000000000..6cb5446337 --- /dev/null +++ b/lib/github/tests/ReplayData/Gist.testRenameFile.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/gists/5339374 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4989'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '6633'), ('server', 'GitHub.com'), ('last-modified', 'Mon, 08 Apr 2013 19:03:29 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"809219adfdd04544970d95fc5629aac3"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 08 Apr 2013 19:04:07 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/gists/5339374","forks_url":"https://api.github.com/gists/5339374/forks","commits_url":"https://api.github.com/gists/5339374/commits","id":"5339374","git_pull_url":"https://gist.github.com/5339374.git","git_push_url":"https://gist.github.com/5339374.git","html_url":"https://gist.github.com/5339374","files":{"bar.txt":{"filename":"bar.txt","type":"text/plain","language":null,"raw_url":"https://gist.github.com/raw/5339374/4821236b6b52e23dfbf8e39157d250f3461aa9c5/bar.txt","size":10,"content":"Bar -> baz"}},"public":true,"created_at":"2013-04-08T18:46:14Z","updated_at":"2013-04-08T19:03:29Z","description":"Test gist for PyGithub","comments":0,"user":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"comments_url":"https://api.github.com/gists/5339374/comments","forks":[],"history":[{"user":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"version":"54cc5cd4c452d1a91d8e6241cbffaf6bc59e1b20","committed_at":"2013-04-08T19:03:29Z","change_status":{"total":1,"additions":1,"deletions":0},"url":"https://api.github.com/gists/5339374/54cc5cd4c452d1a91d8e6241cbffaf6bc59e1b20"},{"user":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"version":"eb21edfa28bdc9437f2fa42d3e921242d7d72655","committed_at":"2013-04-08T19:01:51Z","change_status":{"total":1,"additions":0,"deletions":1},"url":"https://api.github.com/gists/5339374/eb21edfa28bdc9437f2fa42d3e921242d7d72655"},{"user":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"version":"3b66ad4cc07f2bebb2eae2b2f2eefba33d2fb2d5","committed_at":"2013-04-08T18:50:40Z","change_status":{"total":1,"additions":0,"deletions":1},"url":"https://api.github.com/gists/5339374/3b66ad4cc07f2bebb2eae2b2f2eefba33d2fb2d5"},{"user":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"version":"7887f7ac9eb5c1963004bdde3bcfe2221d9a0515","committed_at":"2013-04-08T18:46:14Z","change_status":{"total":2,"additions":2,"deletions":0},"url":"https://api.github.com/gists/5339374/7887f7ac9eb5c1963004bdde3bcfe2221d9a0515"}]} + +https +PATCH +api.github.com +None +/gists/5339374 +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"files": {"bar.txt": {"content": "Bar -> baz", "filename": "baz.txt"}}} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4988'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('content-length', '7854'), ('server', 'GitHub.com'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"b77057899bafb1bca16a79dfe56427c3"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Mon, 08 Apr 2013 19:04:07 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/gists/5339374","forks_url":"https://api.github.com/gists/5339374/forks","commits_url":"https://api.github.com/gists/5339374/commits","id":"5339374","git_pull_url":"https://gist.github.com/5339374.git","git_push_url":"https://gist.github.com/5339374.git","html_url":"https://gist.github.com/5339374","files":{"baz.txt":{"filename":"baz.txt","type":"text/plain","language":null,"raw_url":"https://gist.github.com/raw/5339374/4821236b6b52e23dfbf8e39157d250f3461aa9c5/baz.txt","size":10,"content":"Bar -> baz"}},"public":true,"created_at":"2013-04-08T18:46:14Z","updated_at":"2013-04-08T19:04:07Z","description":"Test gist for PyGithub","comments":0,"user":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"comments_url":"https://api.github.com/gists/5339374/comments","forks":[],"history":[{"user":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"version":"c670d47c5ffee49794a9793a513603fab578bc56","committed_at":"2013-04-08T19:04:07Z","change_status":{"total":2,"additions":1,"deletions":1},"url":"https://api.github.com/gists/5339374/c670d47c5ffee49794a9793a513603fab578bc56"},{"user":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"version":"54cc5cd4c452d1a91d8e6241cbffaf6bc59e1b20","committed_at":"2013-04-08T19:03:29Z","change_status":{"total":1,"additions":1,"deletions":0},"url":"https://api.github.com/gists/5339374/54cc5cd4c452d1a91d8e6241cbffaf6bc59e1b20"},{"user":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"version":"eb21edfa28bdc9437f2fa42d3e921242d7d72655","committed_at":"2013-04-08T19:01:51Z","change_status":{"total":1,"additions":0,"deletions":1},"url":"https://api.github.com/gists/5339374/eb21edfa28bdc9437f2fa42d3e921242d7d72655"},{"user":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"version":"3b66ad4cc07f2bebb2eae2b2f2eefba33d2fb2d5","committed_at":"2013-04-08T18:50:40Z","change_status":{"total":1,"additions":0,"deletions":1},"url":"https://api.github.com/gists/5339374/3b66ad4cc07f2bebb2eae2b2f2eefba33d2fb2d5"},{"user":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"version":"7887f7ac9eb5c1963004bdde3bcfe2221d9a0515","committed_at":"2013-04-08T18:46:14Z","change_status":{"total":2,"additions":2,"deletions":0},"url":"https://api.github.com/gists/5339374/7887f7ac9eb5c1963004bdde3bcfe2221d9a0515"}]} + diff --git a/lib/github/tests/ReplayData/Gist.testStarring.txt b/lib/github/tests/ReplayData/Gist.testStarring.txt new file mode 100644 index 0000000000..364e6c72f2 --- /dev/null +++ b/lib/github/tests/ReplayData/Gist.testStarring.txt @@ -0,0 +1,66 @@ +https +GET +api.github.com +None +/gists/2729810 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4970'), ('content-length', '3280'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"b01fb6ac81527f99db9f6f586b048ee3"'), ('date', 'Sat, 19 May 2012 06:58:15 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"updated_at":"2012-02-29T16:47:12Z","forks":[],"url":"https://api.github.com/gists/2729810","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729810.git","files":{"fail_github.py":{"type":"application/python","raw_url":"https://gist.github.com/raw/2729810/2fb3aa84e0efa50dc0f4c18b5df5b7b9ab27076b/fail_github.py","size":1636,"filename":"fail_github.py","content":"import httplib\nimport base64\nimport json\n\nlogin = \"\"\npassword = \"\"\norgName = \"\"\nrepoName = \"FailGithubApi\"\n\ndef doRequest( verb, url, input ):\n input = json.dumps( input )\n cnx = httplib.HTTPSConnection( \"api.github.com\", strict = True )\n cnx.request( verb, url, input, { \"Authorization\" : \"Basic \" + base64.b64encode( login + \":\" + password ).replace( '\\n', '' ) } )\n response = cnx.getresponse()\n status = response.status\n output = response.read()\n cnx.close()\n print verb, url, input, \"=>\", status, output\n print\n if status < 200 or status >= 300:\n exit( 1 )\n return json.loads( output )\n\n# Create a repo\ndoRequest( \"POST\", \"/user/repos\", { \"name\": repoName } )\n\n# Create a blob, a tree, a commit and the master branch\nb = doRequest(\n \"POST\", \"/repos/%s/%s/git/blobs\" % ( login, repoName ),\n { \"content\": \"Content of the blob\", \"encoding\": \"latin1\" }\n)\nt = doRequest(\n \"POST\", \"/repos/%s/%s/git/trees\" % ( login, repoName ),\n { \"tree\" : [ { \"path\": \"foo.bar\", \"type\": \"blob\", \"mode\": \"100644\", \"sha\": b[\"sha\"] } ] }\n)\nc = doRequest(\n \"POST\", \"/repos/%s/%s/git/commits\" % ( login, repoName ),\n { \"parents\": [], \"message\": \"Message of the commit\", \"tree\": t[\"sha\"] }\n)\ndoRequest(\n \"POST\", \"/repos/%s/%s/git/refs\" % ( login, repoName ),\n { \"ref\": \"refs/heads/master\", \"sha\": c[\"sha\"] }\n)\n\n# Fork the repo\ndoRequest( \"POST\", \"/repos/%s/%s/forks?org=%s\" % ( login, repoName, orgName ), None )\n\n# Create a new blob => BOOM error 500\ndoRequest(\n \"POST\", \"/repos/%s/%s/git/blobs\" % ( orgName, repoName ),\n { \"content\": \"Content of the new blob\", \"encoding\": \"latin1\" }\n)\n","language":"Python"}},"html_url":"https://gist.github.com/2729810","git_push_url":"git@gist.github.com:2729810.git","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"description":"How to error 500 Github API v3, as requested by Rick (GitHub Staff)","created_at":"2012-02-29T16:47:12Z","id":"2729810","history":[{"url":"https://api.github.com/gists/2729810/a40de483e42ba33bda308371c0ef8383db73be9e","change_status":{"deletions":0,"additions":52,"total":52},"committed_at":"2012-02-29T16:47:12Z","version":"a40de483e42ba33bda308371c0ef8383db73be9e","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}}]} + +https +GET +api.github.com +None +/gists/2729810/star +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +404 +[('status', '404 Not Found'), ('x-ratelimit-remaining', '4975'), ('content-length', '2'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"99914b932bd37a50b983c5e7c90ae93b"'), ('date', 'Sat, 19 May 2012 07:22:29 GMT'), ('content-type', 'application/json; charset=utf-8')] +{} + +https +PUT +api.github.com +None +/gists/2729810/star +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4974'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sat, 19 May 2012 07:22:29 GMT')] + + +https +GET +api.github.com +None +/gists/2729810/star +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4973'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sat, 19 May 2012 07:22:30 GMT')] + + +https +DELETE +api.github.com +None +/gists/2729810/star +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4972'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sat, 19 May 2012 07:22:30 GMT')] + + +https +GET +api.github.com +None +/gists/2729810/star +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +404 +[('status', '404 Not Found'), ('x-ratelimit-remaining', '4971'), ('content-length', '2'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"99914b932bd37a50b983c5e7c90ae93b"'), ('date', 'Sat, 19 May 2012 07:22:31 GMT'), ('content-type', 'application/json; charset=utf-8')] +{} + diff --git a/lib/github/tests/ReplayData/GistComment.setUp.txt b/lib/github/tests/ReplayData/GistComment.setUp.txt new file mode 100644 index 0000000000..0d1ac54dc1 --- /dev/null +++ b/lib/github/tests/ReplayData/GistComment.setUp.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/gists/2729810 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4970'), ('content-length', '3280'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"b01fb6ac81527f99db9f6f586b048ee3"'), ('date', 'Sat, 19 May 2012 06:58:15 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"updated_at":"2012-02-29T16:47:12Z","forks":[],"url":"https://api.github.com/gists/2729810","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729810.git","files":{"fail_github.py":{"type":"application/python","raw_url":"https://gist.github.com/raw/2729810/2fb3aa84e0efa50dc0f4c18b5df5b7b9ab27076b/fail_github.py","size":1636,"filename":"fail_github.py","content":"import httplib\nimport base64\nimport json\n\nlogin = \"\"\npassword = \"\"\norgName = \"\"\nrepoName = \"FailGithubApi\"\n\ndef doRequest( verb, url, input ):\n input = json.dumps( input )\n cnx = httplib.HTTPSConnection( \"api.github.com\", strict = True )\n cnx.request( verb, url, input, { \"Authorization\" : \"Basic \" + base64.b64encode( login + \":\" + password ).replace( '\\n', '' ) } )\n response = cnx.getresponse()\n status = response.status\n output = response.read()\n cnx.close()\n print verb, url, input, \"=>\", status, output\n print\n if status < 200 or status >= 300:\n exit( 1 )\n return json.loads( output )\n\n# Create a repo\ndoRequest( \"POST\", \"/user/repos\", { \"name\": repoName } )\n\n# Create a blob, a tree, a commit and the master branch\nb = doRequest(\n \"POST\", \"/repos/%s/%s/git/blobs\" % ( login, repoName ),\n { \"content\": \"Content of the blob\", \"encoding\": \"latin1\" }\n)\nt = doRequest(\n \"POST\", \"/repos/%s/%s/git/trees\" % ( login, repoName ),\n { \"tree\" : [ { \"path\": \"foo.bar\", \"type\": \"blob\", \"mode\": \"100644\", \"sha\": b[\"sha\"] } ] }\n)\nc = doRequest(\n \"POST\", \"/repos/%s/%s/git/commits\" % ( login, repoName ),\n { \"parents\": [], \"message\": \"Message of the commit\", \"tree\": t[\"sha\"] }\n)\ndoRequest(\n \"POST\", \"/repos/%s/%s/git/refs\" % ( login, repoName ),\n { \"ref\": \"refs/heads/master\", \"sha\": c[\"sha\"] }\n)\n\n# Fork the repo\ndoRequest( \"POST\", \"/repos/%s/%s/forks?org=%s\" % ( login, repoName, orgName ), None )\n\n# Create a new blob => BOOM error 500\ndoRequest(\n \"POST\", \"/repos/%s/%s/git/blobs\" % ( orgName, repoName ),\n { \"content\": \"Content of the new blob\", \"encoding\": \"latin1\" }\n)\n","language":"Python"}},"html_url":"https://gist.github.com/2729810","git_push_url":"git@gist.github.com:2729810.git","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"description":"How to error 500 Github API v3, as requested by Rick (GitHub Staff)","created_at":"2012-02-29T16:47:12Z","id":"2729810","history":[{"url":"https://api.github.com/gists/2729810/a40de483e42ba33bda308371c0ef8383db73be9e","change_status":{"deletions":0,"additions":52,"total":52},"committed_at":"2012-02-29T16:47:12Z","version":"a40de483e42ba33bda308371c0ef8383db73be9e","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}}]} + +https +GET +api.github.com +None +/gists/2729810/comments/323629 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '479'), ('x-ratelimit-limit', '5000'), ('x-ratelimit-remaining', '4988'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('etag', '"c2581153865c9b18a576589587e1fb98"'), ('date', 'Sat, 19 May 2012 07:12:31 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/gists/2729810/comments/323629","body":"Comment created by PyGithub","created_at":"2012-05-19T07:07:57Z","updated_at":"2012-05-19T07:07:57Z","id":323629,"user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146}} + diff --git a/lib/github/tests/ReplayData/GistComment.testDelete.txt b/lib/github/tests/ReplayData/GistComment.testDelete.txt new file mode 100644 index 0000000000..87bb6dc6a4 --- /dev/null +++ b/lib/github/tests/ReplayData/GistComment.testDelete.txt @@ -0,0 +1,11 @@ +https +DELETE +api.github.com +None +/gists/2729810/comments/323629 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4984'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sat, 19 May 2012 07:14:33 GMT')] + + diff --git a/lib/github/tests/ReplayData/GistComment.testEdit.txt b/lib/github/tests/ReplayData/GistComment.testEdit.txt new file mode 100644 index 0000000000..43f5980e13 --- /dev/null +++ b/lib/github/tests/ReplayData/GistComment.testEdit.txt @@ -0,0 +1,11 @@ +https +PATCH +api.github.com +None +/gists/2729810/comments/323629 +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"body": "Comment edited by PyGithub"} +200 +[('status', '200 OK'), ('content-length', '478'), ('x-ratelimit-limit', '5000'), ('x-ratelimit-remaining', '4987'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('etag', '"cea8090368993f1fb95c32cdcf4245d3"'), ('date', 'Sat, 19 May 2012 07:12:32 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/gists/2729810/comments/323629","body":"Comment edited by PyGithub","created_at":"2012-05-19T07:07:57Z","updated_at":"2012-05-19T07:12:32Z","id":323629,"user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146}} + diff --git a/lib/github/tests/ReplayData/GitBlob.setUp.txt b/lib/github/tests/ReplayData/GitBlob.setUp.txt new file mode 100644 index 0000000000..2ed84e40da --- /dev/null +++ b/lib/github/tests/ReplayData/GitBlob.setUp.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4971'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"cae303fffd852767651ae178cc25c7be"'), ('date', 'Thu, 10 May 2012 19:05:12 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"public_gists":1,"html_url":"https://github.com/jacquev6","type":"User","url":"https://api.github.com/users/jacquev6","private_gists":5,"disk_usage":16676,"collaborators":0,"plan":{"collaborators":1,"private_repos":5,"space":614400,"name":"micro"},"blog":"http://vincent-jacques.net","hireable":false,"login":"jacquev6","public_repos":10,"email":"vincent@vincent-jacques.net","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","bio":"","created_at":"2010-07-09T06:10:06Z","company":"Criteo","location":"Paris, France","total_private_repos":5,"followers":13,"following":24,"name":"Vincent Jacques","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146,"owned_private_repos":5} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4970'), ('content-length', '1097'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"156b4bd24ab7a88fd5e1c851f71eea20"'), ('date', 'Thu, 10 May 2012 19:05:13 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"homepage":"http://vincent-jacques.net/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","git_url":"git://github.com/jacquev6/PyGithub.git","html_url":"https://github.com/jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","has_downloads":true,"watchers":13,"permissions":{"admin":true,"pull":true,"push":true},"has_wiki":false,"has_issues":true,"fork":false,"forks":2,"language":"Python","size":196,"description":"Python library implementing the full Github API v3","private":false,"created_at":"2012-02-25T12:53:47Z","open_issues":15,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"name":"PyGithub","pushed_at":"2012-05-10T18:49:21Z","id":3544490,"mirror_url":null,"ssh_url":"git@github.com:jacquev6/PyGithub.git","updated_at":"2012-05-10T18:49:21Z"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/git/blobs/53bce9fa919b4544e67275089b3ec5b44be20667 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4969'), ('content-length', '1987'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"4b96ab346d46fbc2a409711500d54f42"'), ('date', 'Thu, 10 May 2012 19:05:16 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/53bce9fa919b4544e67275089b3ec5b44be20667","encoding":"base64","content":"IyEvdXNyL2Jpbi9lbnYgcHl0aG9uCgpmcm9tIGRpc3R1dGlscy5jb3JlIGlt\ncG9ydCBzZXR1cAppbXBvcnQgdGV4dHdyYXAKCnNldHVwKAogICAgbmFtZSA9\nICdQeUdpdGh1YicsCiAgICB2ZXJzaW9uID0gJzAuNicsCiAgICBkZXNjcmlw\ndGlvbiA9ICdVc2UgdGhlIGZ1bGwgR2l0aHViIEFQSSB2MycsCiAgICBhdXRo\nb3IgPSAnVmluY2VudCBKYWNxdWVzJywKICAgIGF1dGhvcl9lbWFpbCA9ICd2\naW5jZW50QHZpbmNlbnQtamFjcXVlcy5uZXQnLAogICAgdXJsID0gJ2h0dHA6\nLy92aW5jZW50LWphY3F1ZXMubmV0L1B5R2l0aHViJywKICAgIGxvbmdfZGVz\nY3JpcHRpb24gPSB0ZXh0d3JhcC5kZWRlbnQoICIiIlwKICAgICAgICBUdXRv\ncmlhbAogICAgICAgID09PT09PT09CgogICAgICAgIEZpcnN0IGNyZWF0ZSBh\nIEdpaHViIGluc3RhbmNlOjoKCiAgICAgICAgICAgIGZyb20gZ2l0aHViIGlt\ncG9ydCBHaXRodWIKCiAgICAgICAgICAgIGcgPSBHaXRodWIoICJ1c2VyIiwg\nInBhc3N3b3JkIiApCgogICAgICAgIFRoZW4gcGxheSB3aXRoIHlvdXIgR2l0\naHViIG9iamVjdHM6OgoKICAgICAgICAgICAgZm9yIHJlcG8gaW4gZy5nZXRf\ndXNlcigpLmdldF9yZXBvcygpOgogICAgICAgICAgICAgICAgcHJpbnQgcmVw\nby5uYW1lCiAgICAgICAgICAgICAgICByZXBvLmVkaXQoIGhhc193aWtpID0g\nRmFsc2UgKQoKICAgICAgICBSZWZlcmVuY2UgZG9jdW1lbnRhdGlvbgogICAg\nICAgID09PT09PT09PT09PT09PT09PT09PT09CgogICAgICAgIFNlZSBodHRw\nOi8vdmluY2VudC1qYWNxdWVzLm5ldC9QeUdpdGh1YiIiIiApLAogICAgcGFj\na2FnZXMgPSBbCiAgICAgICAgJ2dpdGh1YicsCiAgICAgICAgJ2dpdGh1Yi5H\naXRodWJPYmplY3RzJywKICAgICAgICAnZ2l0aHViLkdpdGh1Yk9iamVjdHMu\nR2l0aHViT2JqZWN0JywKICAgIF0sCiAgICBjbGFzc2lmaWVycz1bCiAgICAg\nICAgIkRldmVsb3BtZW50IFN0YXR1cyA6OiA0IC0gQmV0YSIsCiAgICAgICAg\nIkVudmlyb25tZW50IDo6IFdlYiBFbnZpcm9ubWVudCIsCiAgICAgICAgIklu\ndGVuZGVkIEF1ZGllbmNlIDo6IERldmVsb3BlcnMiLAogICAgICAgICJMaWNl\nbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBHTlUgTGlicmFyeSBvciBMZXNzZXIg\nR2VuZXJhbCBQdWJsaWMgTGljZW5zZSAoTEdQTCkiLAogICAgICAgICJPcGVy\nYXRpbmcgU3lzdGVtIDo6IE9TIEluZGVwZW5kZW50IiwKICAgICAgICAiUHJv\nZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogUHl0aG9uIiwKICAgICAgICAiVG9waWMg\nOjogU29mdHdhcmUgRGV2ZWxvcG1lbnQiLAogICAgXSwKKQo=\n","size":1295,"sha":"53bce9fa919b4544e67275089b3ec5b44be20667"} + diff --git a/lib/github/tests/ReplayData/GitCommit.setUp.txt b/lib/github/tests/ReplayData/GitCommit.setUp.txt new file mode 100644 index 0000000000..7f6377c97e --- /dev/null +++ b/lib/github/tests/ReplayData/GitCommit.setUp.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4968'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"55f0187d26f5ca2e7103006d9837865c"'), ('date', 'Thu, 10 May 2012 19:05:23 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"total_private_repos":5,"html_url":"https://github.com/jacquev6","type":"User","url":"https://api.github.com/users/jacquev6","owned_private_repos":5,"disk_usage":16676,"plan":{"private_repos":5,"collaborators":1,"space":614400,"name":"micro"},"public_gists":1,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","blog":"http://vincent-jacques.net","private_gists":5,"login":"jacquev6","public_repos":10,"email":"vincent@vincent-jacques.net","collaborators":0,"created_at":"2010-07-09T06:10:06Z","company":"Criteo","location":"Paris, France","hireable":false,"followers":13,"following":24,"name":"Vincent Jacques","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","bio":"","id":327146} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4967'), ('content-length', '1097'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"72a84ed8ad0d83f6a4c09dcd388c20a1"'), ('date', 'Thu, 10 May 2012 19:05:27 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"homepage":"http://vincent-jacques.net/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","html_url":"https://github.com/jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","has_downloads":true,"watchers":13,"permissions":{"admin":true,"pull":true,"push":true},"mirror_url":null,"has_wiki":false,"has_issues":true,"fork":false,"forks":2,"language":"Python","size":196,"description":"Python library implementing the full Github API v3","git_url":"git://github.com/jacquev6/PyGithub.git","private":false,"created_at":"2012-02-25T12:53:47Z","open_issues":15,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"name":"PyGithub","pushed_at":"2012-05-10T18:49:21Z","id":3544490,"ssh_url":"git@github.com:jacquev6/PyGithub.git","updated_at":"2012-05-10T18:49:21Z"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/git/commits/4303c5b90e2216d927155e9609436ccb8984c495 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4966'), ('content-length', '910'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"eabd190c639b57d447ea6d3463da7aae"'), ('date', 'Thu, 10 May 2012 19:05:28 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/4303c5b90e2216d927155e9609436ccb8984c495","message":"Merge branch 'develop'\n","committer":{"email":"vincent@vincent-jacques.net","date":"2012-04-17T10:55:16-07:00","name":"Vincent Jacques"},"sha":"4303c5b90e2216d927155e9609436ccb8984c495","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/936f4a97f1a86392637ec002bbf89ff036a5062d","sha":"936f4a97f1a86392637ec002bbf89ff036a5062d"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/2a7e80e6421c5d4d201d60619068dea6bae612cb","sha":"2a7e80e6421c5d4d201d60619068dea6bae612cb"}],"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/f492784d8ca837779650d1fb406a1a3587a764ad","sha":"f492784d8ca837779650d1fb406a1a3587a764ad"},"author":{"email":"vincent@vincent-jacques.net","date":"2012-04-17T10:55:16-07:00","name":"Vincent Jacques"}} + diff --git a/lib/github/tests/ReplayData/GitRef.setUp.txt b/lib/github/tests/ReplayData/GitRef.setUp.txt new file mode 100644 index 0000000000..5dc74b6726 --- /dev/null +++ b/lib/github/tests/ReplayData/GitRef.setUp.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4989'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"fc8367028bd9046f0b52929ea8657756"'), ('date', 'Thu, 10 May 2012 18:49:18 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","owned_private_repos":5,"public_repos":10,"html_url":"https://github.com/jacquev6","blog":"http://vincent-jacques.net","collaborators":0,"following":24,"company":"Criteo","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","public_gists":1,"followers":13,"url":"https://api.github.com/users/jacquev6","private_gists":5,"hireable":false,"login":"jacquev6","email":"vincent@vincent-jacques.net","disk_usage":16676,"plan":{"private_repos":5,"collaborators":1,"space":614400,"name":"micro"},"created_at":"2010-07-09T06:10:06Z","name":"Vincent Jacques","bio":"","id":327146,"total_private_repos":5,"location":"Paris, France"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4988'), ('content-length', '1097'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"82dfa2c767e249ed2a1703529101f0aa"'), ('date', 'Thu, 10 May 2012 18:49:18 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"homepage":"http://vincent-jacques.net/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","html_url":"https://github.com/jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","has_downloads":true,"watchers":13,"permissions":{"admin":true,"pull":true,"push":true},"mirror_url":null,"git_url":"git://github.com/jacquev6/PyGithub.git","has_wiki":false,"has_issues":true,"fork":false,"forks":2,"language":"Python","size":196,"description":"Python library implementing the full Github API v3","private":false,"created_at":"2012-02-25T12:53:47Z","open_issues":15,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"name":"PyGithub","pushed_at":"2012-05-10T18:14:23Z","id":3544490,"ssh_url":"git@github.com:jacquev6/PyGithub.git","updated_at":"2012-05-10T18:14:23Z"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/git/refs/heads/BranchCreatedByPyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4987'), ('content-length', '336'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"ef55032f07a176e09c65b2ac524c2ecf"'), ('date', 'Thu, 10 May 2012 14:38:00 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs/heads/BranchCreatedByPyGithub","object":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a","type":"commit","sha":"1292bf0e22c796e91cc3d6e24b544aece8c21f2a"},"ref":"refs/heads/BranchCreatedByPyGithub"} + diff --git a/lib/github/tests/ReplayData/GitRef.testDelete.txt b/lib/github/tests/ReplayData/GitRef.testDelete.txt new file mode 100644 index 0000000000..687c41c42b --- /dev/null +++ b/lib/github/tests/ReplayData/GitRef.testDelete.txt @@ -0,0 +1,11 @@ +https +DELETE +api.github.com +None +/repos/jacquev6/PyGithub/git/refs/heads/BranchCreatedByPyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4984'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Thu, 10 May 2012 18:49:22 GMT')] + + diff --git a/lib/github/tests/ReplayData/GitRef.testEdit.txt b/lib/github/tests/ReplayData/GitRef.testEdit.txt new file mode 100644 index 0000000000..ff432f17dd --- /dev/null +++ b/lib/github/tests/ReplayData/GitRef.testEdit.txt @@ -0,0 +1,11 @@ +https +PATCH +api.github.com +None +/repos/jacquev6/PyGithub/git/refs/heads/BranchCreatedByPyGithub +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"sha": "04cde900a0775b51f762735637bd30de392a2793"} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4986'), ('content-length', '322'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"ced480ad69948233f6520f7cd945eb34"'), ('date', 'Thu, 10 May 2012 18:49:20 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs/heads/BranchCreatedByPyGithub","object":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/04cde900a0775b51f762735637bd30de392a2793","type":"commit","sha":"04cde900a0775b51f762735637bd30de392a2793"},"ref":"refs/heads/BranchCreatedByPyGithub"} + diff --git a/lib/github/tests/ReplayData/GitRef.testEditWithForce.txt b/lib/github/tests/ReplayData/GitRef.testEditWithForce.txt new file mode 100644 index 0000000000..a1ef3b71c3 --- /dev/null +++ b/lib/github/tests/ReplayData/GitRef.testEditWithForce.txt @@ -0,0 +1,11 @@ +https +PATCH +api.github.com +None +/repos/jacquev6/PyGithub/git/refs/heads/BranchCreatedByPyGithub +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"sha": "4303c5b90e2216d927155e9609436ccb8984c495", "force": true} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4985'), ('content-length', '322'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"fb39f29de1defbab14def8a331d00c69"'), ('date', 'Thu, 10 May 2012 18:49:21 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs/heads/BranchCreatedByPyGithub","object":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/4303c5b90e2216d927155e9609436ccb8984c495","type":"commit","sha":"4303c5b90e2216d927155e9609436ccb8984c495"},"ref":"refs/heads/BranchCreatedByPyGithub"} + diff --git a/lib/github/tests/ReplayData/GitTag.setUp.txt b/lib/github/tests/ReplayData/GitTag.setUp.txt new file mode 100644 index 0000000000..bd9f67c251 --- /dev/null +++ b/lib/github/tests/ReplayData/GitTag.setUp.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4980'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"fc8367028bd9046f0b52929ea8657756"'), ('date', 'Thu, 10 May 2012 19:03:17 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","owned_private_repos":5,"public_repos":10,"html_url":"https://github.com/jacquev6","blog":"http://vincent-jacques.net","collaborators":0,"following":24,"company":"Criteo","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","public_gists":1,"followers":13,"url":"https://api.github.com/users/jacquev6","private_gists":5,"hireable":false,"login":"jacquev6","email":"vincent@vincent-jacques.net","disk_usage":16676,"plan":{"private_repos":5,"collaborators":1,"space":614400,"name":"micro"},"created_at":"2010-07-09T06:10:06Z","name":"Vincent Jacques","bio":"","id":327146,"total_private_repos":5,"location":"Paris, France"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4979'), ('content-length', '1097'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"b297a1eb78f994e828d8b625dae93910"'), ('date', 'Thu, 10 May 2012 19:03:18 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"homepage":"http://vincent-jacques.net/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","html_url":"https://github.com/jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","has_downloads":true,"watchers":13,"permissions":{"admin":true,"pull":true,"push":true},"mirror_url":null,"git_url":"git://github.com/jacquev6/PyGithub.git","has_wiki":false,"has_issues":true,"fork":false,"forks":2,"language":"Python","size":196,"description":"Python library implementing the full Github API v3","private":false,"created_at":"2012-02-25T12:53:47Z","open_issues":15,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"name":"PyGithub","pushed_at":"2012-05-10T18:49:21Z","id":3544490,"ssh_url":"git@github.com:jacquev6/PyGithub.git","updated_at":"2012-05-10T18:49:21Z"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/git/tags/f5f37322407b02a80de4526ad88d5f188977bc3c +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4978'), ('content-length', '487'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"1dd282b50e691f8f162ef9355dad8771"'), ('date', 'Thu, 10 May 2012 19:03:19 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags/f5f37322407b02a80de4526ad88d5f188977bc3c","tag":"v0.6","message":"Version 0.6\n","object":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/4303c5b90e2216d927155e9609436ccb8984c495","type":"commit","sha":"4303c5b90e2216d927155e9609436ccb8984c495"},"tagger":{"email":"vincent@vincent-jacques.net","date":"2012-05-10T11:14:15-07:00","name":"Vincent Jacques"},"sha":"f5f37322407b02a80de4526ad88d5f188977bc3c"} + diff --git a/lib/github/tests/ReplayData/GitTree.setUp.txt b/lib/github/tests/ReplayData/GitTree.setUp.txt new file mode 100644 index 0000000000..1ec9eb8c48 --- /dev/null +++ b/lib/github/tests/ReplayData/GitTree.setUp.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4983'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"87bbafa72e82fd0e23eca263d0939cbc"'), ('date', 'Thu, 10 May 2012 19:03:05 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"html_url":"https://github.com/jacquev6","type":"User","hireable":false,"url":"https://api.github.com/users/jacquev6","disk_usage":16676,"plan":{"private_repos":5,"collaborators":1,"space":614400,"name":"micro"},"bio":"","public_gists":1,"total_private_repos":5,"login":"jacquev6","private_gists":5,"email":"vincent@vincent-jacques.net","owned_private_repos":5,"public_repos":10,"collaborators":0,"created_at":"2010-07-09T06:10:06Z","company":"Criteo","location":"Paris, France","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","followers":13,"following":24,"name":"Vincent Jacques","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146,"blog":"http://vincent-jacques.net"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4982'), ('content-length', '1097'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"80c85d7120a6d887a451a951adbfbe8e"'), ('date', 'Thu, 10 May 2012 19:03:08 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"updated_at":"2012-05-10T18:49:21Z","html_url":"https://github.com/jacquev6/PyGithub","has_wiki":false,"has_issues":true,"homepage":"http://vincent-jacques.net/PyGithub","forks":2,"git_url":"git://github.com/jacquev6/PyGithub.git","open_issues":15,"fork":false,"svn_url":"https://github.com/jacquev6/PyGithub","ssh_url":"git@github.com:jacquev6/PyGithub.git","url":"https://api.github.com/repos/jacquev6/PyGithub","pushed_at":"2012-05-10T18:49:21Z","language":"Python","size":196,"private":false,"clone_url":"https://github.com/jacquev6/PyGithub.git","created_at":"2012-02-25T12:53:47Z","owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"name":"PyGithub","mirror_url":null,"has_downloads":true,"watchers":13,"description":"Python library implementing the full Github API v3","id":3544490,"permissions":{"admin":true,"pull":true,"push":true}} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/git/trees/f492784d8ca837779650d1fb406a1a3587a764ad +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4981'), ('content-length', '2588'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d37c2285c7bc31e9c29a9e36808b12bc"'), ('date', 'Thu, 10 May 2012 19:03:09 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/f492784d8ca837779650d1fb406a1a3587a764ad","sha":"f492784d8ca837779650d1fb406a1a3587a764ad","tree":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/8a9af1462c3f4e3358315c2d2e6ef1e7334c59dd","type":"blob","size":53,"sha":"8a9af1462c3f4e3358315c2d2e6ef1e7334c59dd","path":".gitignore","mode":"100644"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/7863d93a3ef3700fd05d2e0e6b9c1b5161c4572b","type":"blob","size":1832,"sha":"7863d93a3ef3700fd05d2e0e6b9c1b5161c4572b","path":"Design.md","mode":"100644"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/82be8f1b97c4cfb005ad9ce8b8215c2f71470630","type":"blob","size":28643,"sha":"82be8f1b97c4cfb005ad9ce8b8215c2f71470630","path":"IntegrationTest.py","mode":"100644"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/8da6802f0b9d4acd1945440053dfd6be3ee80c95","type":"blob","size":3153,"sha":"8da6802f0b9d4acd1945440053dfd6be3ee80c95","path":"ReadMe.md","mode":"100644"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/3ee24565835d6a352e0ce37b1f2413572f55e368","type":"blob","size":12687,"sha":"3ee24565835d6a352e0ce37b1f2413572f55e368","path":"ReferenceOfApis.md","mode":"100644"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/af9d09559eb6dae86af23b81e6ddcebfa4dc37e6","type":"blob","size":15967,"sha":"af9d09559eb6dae86af23b81e6ddcebfa4dc37e6","path":"ReferenceOfClasses.md","mode":"100644"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/60b4602b2c2070246c5df078fb7a5150b45815eb","type":"tree","sha":"60b4602b2c2070246c5df078fb7a5150b45815eb","path":"ReplayDataForIntegrationTest","mode":"040000"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/61cfa6bc84a562c134770b1e10445e7b810dbc26","type":"blob","size":320,"sha":"61cfa6bc84a562c134770b1e10445e7b810dbc26","path":"RoadMap.md","mode":"100644"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/929f19535e74d80fb117aa021742ce2556ddc9a2","type":"tree","sha":"929f19535e74d80fb117aa021742ce2556ddc9a2","path":"github","mode":"040000"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/9532bcaa5fcc0a9d3678b3e4fd05688e32d2a321","type":"blob","size":673,"sha":"9532bcaa5fcc0a9d3678b3e4fd05688e32d2a321","path":"run_tests.sh","mode":"100644"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/53bce9fa919b4544e67275089b3ec5b44be20667","type":"blob","size":1295,"sha":"53bce9fa919b4544e67275089b3ec5b44be20667","path":"setup.py","mode":"100644"}]} + diff --git a/lib/github/tests/ReplayData/Github.testGetEmojis.txt b/lib/github/tests/ReplayData/Github.testGetEmojis.txt new file mode 100644 index 0000000000..ceb8ccc083 --- /dev/null +++ b/lib/github/tests/ReplayData/Github.testGetEmojis.txt @@ -0,0 +1,10 @@ +https +GET +api.github.com +None +/emojis +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '757'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('x-ratelimit-remaining', '4993'), ('server', 'nginx'), ('connection', 'keep-alive'), ('etag', '"cc8e8df5d003cd489fd90931fa7f751a"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Fri, 21 Dec 2012 19:54:21 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"+1": "https://github.global.ssl.fastly.net/images/icons/emoji/+1.png?v5", "-1": "https://github.global.ssl.fastly.net/images/icons/emoji/-1.png?v5", "100": "https://github.global.ssl.fastly.net/images/icons/emoji/100.png?v5", "1234": "https://github.global.ssl.fastly.net/images/icons/emoji/1234.png?v5", "8ball": "https://github.global.ssl.fastly.net/images/icons/emoji/8ball.png?v5", "a": "https://github.global.ssl.fastly.net/images/icons/emoji/a.png?v5", "ab": "https://github.global.ssl.fastly.net/images/icons/emoji/ab.png?v5"} \ No newline at end of file diff --git a/lib/github/tests/ReplayData/Github.testGetGists.txt b/lib/github/tests/ReplayData/Github.testGetGists.txt new file mode 100644 index 0000000000..7037ce4408 --- /dev/null +++ b/lib/github/tests/ReplayData/Github.testGetGists.txt @@ -0,0 +1,44 @@ +https +GET +api.github.com +None +/gists/public +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4978'), ('content-length', '28676'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last"'), ('etag', '"5b610d3d5b133b2a973f55c3a0899707"'), ('date', 'Sat, 19 May 2012 06:25:49 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-19T06:25:16Z","url":"https://api.github.com/gists/2729695","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729695.git","git_push_url":"git@gist.github.com:2729695.git","files":{"pressman.md":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729695/3b3f0a11f4f4089556fbf2f549a5948140629a51/pressman.md","size":111,"filename":"pressman.md","language":"Markdown"}},"html_url":"https://gist.github.com/2729695","user":{"url":"https://api.github.com/users/kombomilk","gravatar_id":"d973fbfbdcf92509859d80885dfa74df","login":"kombomilk","id":1652697,"avatar_url":"https://secure.gravatar.com/avatar/d973fbfbdcf92509859d80885dfa74df?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"description":"","created_at":"2012-05-19T06:25:16Z","id":"2729695"},{"updated_at":"2012-05-19T06:20:20Z","url":"https://api.github.com/gists/2729656","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729656.git","git_push_url":"git@gist.github.com:2729656.git","files":{"gistfile1.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729656/e154088fb07f2b6982a6ca4c86c3ae025325db81/gistfile1.txt","size":401,"filename":"gistfile1.txt","language":"Text"}},"html_url":"https://gist.github.com/2729656","user":{"url":"https://api.github.com/users/jeremytregunna","gravatar_id":"5296d70606ba2ff86311c1cef0c92699","login":"jeremytregunna","id":261615,"avatar_url":"https://secure.gravatar.com/avatar/5296d70606ba2ff86311c1cef0c92699?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"description":"Sid example, maybe? (Grammar test)","created_at":"2012-05-19T06:20:20Z","id":"2729656"},{"updated_at":"2012-05-19T06:15:36Z","url":"https://api.github.com/gists/2729597","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729597.git","git_push_url":"git@gist.github.com:2729597.git","files":{"gistfile1.cpp":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729597/46a80be6ab3c2647e85eea7a4d46f6c66c85e571/gistfile1.cpp","size":660,"filename":"gistfile1.cpp","language":"C++"}},"html_url":"https://gist.github.com/2729597","user":{"url":"https://api.github.com/users/rpwll","gravatar_id":"2e3325fbe0f268a5ac99e0163066bf9c","login":"rpwll","id":320910,"avatar_url":"https://secure.gravatar.com/avatar/2e3325fbe0f268a5ac99e0163066bf9c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"description":"","created_at":"2012-05-19T06:15:36Z","id":"2729597"},{"updated_at":"2012-05-19T06:13:04Z","url":"https://api.github.com/gists/2729584","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729584.git","git_push_url":"git@gist.github.com:2729584.git","files":{"gistfile1.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729584/6873ef952676bb4decf8d5e9d543c23b9429f150/gistfile1.txt","size":1854,"filename":"gistfile1.txt","language":"Text"},"main.js":{"type":"application/javascript","raw_url":"https://gist.github.com/raw/2729584/9702c5fa1deb972bb314c69645e9cac90769a591/main.js","size":10466,"filename":"main.js","language":"JavaScript"}},"html_url":"https://gist.github.com/2729584","user":{"url":"https://api.github.com/users/jimklo","gravatar_id":"03408acdcc9796a9682ece76481c83e4","login":"jimklo","id":588760,"avatar_url":"https://secure.gravatar.com/avatar/03408acdcc9796a9682ece76481c83e4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"description":"BrowserID login error","created_at":"2012-05-19T06:13:04Z","id":"2729584"},{"updated_at":"2012-05-19T06:11:49Z","url":"https://api.github.com/gists/2729569","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729569.git","git_push_url":"git@gist.github.com:2729569.git","files":{"my_struct.rb":{"type":"application/ruby","raw_url":"https://gist.github.com/raw/2729569/b562f236b4c182b89787724b028f3437e9e7e784/my_struct.rb","size":343,"filename":"my_struct.rb","language":"Ruby"}},"html_url":"https://gist.github.com/2729569","user":{"url":"https://api.github.com/users/mdaisuke","gravatar_id":"22f8f3be7207c5e2bbf090b805442f57","login":"mdaisuke","id":122267,"avatar_url":"https://secure.gravatar.com/avatar/22f8f3be7207c5e2bbf090b805442f57?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"description":null,"created_at":"2012-05-19T06:11:49Z","id":"2729569"},{"updated_at":"2012-05-19T06:09:34Z","url":"https://api.github.com/gists/2729554","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729554.git","git_push_url":"git@gist.github.com:2729554.git","files":{"lazy.pl":{"type":"application/perl","raw_url":"https://gist.github.com/raw/2729554/3d3546064cef9bf18c8cc0521e8253277958db0b/lazy.pl","size":110,"filename":"lazy.pl","language":"Perl"},"not-so-lazy.pl":{"type":"application/perl","raw_url":"https://gist.github.com/raw/2729554/760359c4f7327b73431272d9b2df4e093c489ff4/not-so-lazy.pl","size":391,"filename":"not-so-lazy.pl","language":"Perl"}},"html_url":"https://gist.github.com/2729554","user":{"url":"https://api.github.com/users/RsrchBoy","gravatar_id":"ffa68a092e250fa39e9680419592aa6e","login":"RsrchBoy","id":59620,"avatar_url":"https://secure.gravatar.com/avatar/ffa68a092e250fa39e9680419592aa6e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"description":"Cheap caching with AutoDestruct","created_at":"2012-05-19T06:09:34Z","id":"2729554"},{"updated_at":"2012-05-19T06:07:29Z","url":"https://api.github.com/gists/2729543","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729543.git","git_push_url":"git@gist.github.com:2729543.git","files":{"UserProviderInterface.php":{"type":"application/httpd-php","raw_url":"https://gist.github.com/raw/2729543/7922ee243c5aea1d452579d76d83268aa78661f2/UserProviderInterface.php","size":825,"filename":"UserProviderInterface.php","language":"PHP"}},"html_url":"https://gist.github.com/2729543","user":{"url":"https://api.github.com/users/coreymcmahon","gravatar_id":"87ae7cb8e1dc49819787951a8a20be30","login":"coreymcmahon","id":700486,"avatar_url":"https://secure.gravatar.com/avatar/87ae7cb8e1dc49819787951a8a20be30?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"description":"The UserProviderInterface interface - http://www.symfonycentral.com/securing-your-web-application-with-symfony.html","created_at":"2012-05-19T06:07:29Z","id":"2729543"},{"updated_at":"2012-05-19T06:06:34Z","url":"https://api.github.com/gists/2729537","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729537.git","git_push_url":"git@gist.github.com:2729537.git","files":{"jstestdriver.conf":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729537/a71a62f73f687a3f0f55ca7faed9605bbdf0385b/jstestdriver.conf","size":2171,"filename":"jstestdriver.conf","language":null}},"html_url":"https://gist.github.com/2729537","user":{"url":"https://api.github.com/users/kyo-ago","gravatar_id":"f0ac096759bda90c77e9498f5688b40f","login":"kyo-ago","id":67387,"avatar_url":"https://secure.gravatar.com/avatar/f0ac096759bda90c77e9498f5688b40f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"description":"jstestdriver.conf sample","created_at":"2012-05-19T06:06:34Z","id":"2729537"},{"updated_at":"2012-05-19T06:06:18Z","url":"https://api.github.com/gists/2729536","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729536.git","git_push_url":"git@gist.github.com:2729536.git","files":{"UserInterface.php":{"type":"application/httpd-php","raw_url":"https://gist.github.com/raw/2729536/deb8f57f706f79db758ad0de2ab5b0dd4243c785/UserInterface.php","size":1010,"filename":"UserInterface.php","language":"PHP"}},"html_url":"https://gist.github.com/2729536","user":{"url":"https://api.github.com/users/coreymcmahon","gravatar_id":"87ae7cb8e1dc49819787951a8a20be30","login":"coreymcmahon","id":700486,"avatar_url":"https://secure.gravatar.com/avatar/87ae7cb8e1dc49819787951a8a20be30?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"description":"The UserInterface interface - http://www.symfonycentral.com/securing-your-web-application-with-symfony.html","created_at":"2012-05-19T06:06:18Z","id":"2729536"},{"updated_at":"2012-05-19T06:07:56Z","url":"https://api.github.com/gists/2729533","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729533.git","git_push_url":"git@gist.github.com:2729533.git","files":{"PagingControl.js":{"type":"application/javascript","raw_url":"https://gist.github.com/raw/2729533/d2492668b72c6dd9468de5dc514e8338c1aecdaf/PagingControl.js","size":1733,"filename":"PagingControl.js","language":"JavaScript"}},"html_url":"https://gist.github.com/2729533","user":{"url":"https://api.github.com/users/wgx731","gravatar_id":"7423dcf4785be28fc40bb11329c0ede4","login":"wgx731","id":494702,"avatar_url":"https://secure.gravatar.com/avatar/7423dcf4785be28fc40bb11329c0ede4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"description":"Nice Paging control for scrollableViews for Titanium Appcelerator","created_at":"2012-05-19T06:05:20Z","id":"2729533"},{"updated_at":"2012-05-19T06:03:57Z","url":"https://api.github.com/gists/2729525","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729525.git","git_push_url":"git@gist.github.com:2729525.git","files":{"UserRepository.php":{"type":"application/httpd-php","raw_url":"https://gist.github.com/raw/2729525/6b2666271d0212ec6510720b39f3fd314c1091ac/UserRepository.php","size":1541,"filename":"UserRepository.php","language":"PHP"}},"html_url":"https://gist.github.com/2729525","user":{"url":"https://api.github.com/users/coreymcmahon","gravatar_id":"87ae7cb8e1dc49819787951a8a20be30","login":"coreymcmahon","id":700486,"avatar_url":"https://secure.gravatar.com/avatar/87ae7cb8e1dc49819787951a8a20be30?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"description":"Using a custom UserProviderInterface for Symfony Security - http://www.symfonycentral.com/securing-your-web-application-with-symfony.html","created_at":"2012-05-19T06:03:57Z","id":"2729525"},{"updated_at":"2012-05-19T06:02:51Z","url":"https://api.github.com/gists/2729522","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729522.git","git_push_url":"git@gist.github.com:2729522.git","files":{"gistfile1.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729522/4450e2adfe6449ce47f8b6557cb5cb6f3d350dfa/gistfile1.txt","size":284,"filename":"gistfile1.txt","language":"Text"}},"html_url":"https://gist.github.com/2729522","user":{"url":"https://api.github.com/users/SpiffyJr","gravatar_id":"a5408ecd6ed3688802ef096bbd002a80","login":"SpiffyJr","id":227900,"avatar_url":"https://secure.gravatar.com/avatar/a5408ecd6ed3688802ef096bbd002a80?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"description":"","created_at":"2012-05-19T06:02:51Z","id":"2729522"},{"updated_at":"2012-05-19T06:02:30Z","url":"https://api.github.com/gists/2729519","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729519.git","git_push_url":"git@gist.github.com:2729519.git","files":{"arrange.sh":{"type":"application/sh","raw_url":"https://gist.github.com/raw/2729519/53ecb295721b9f6022d8abc92e7e69a5937c2fa5/arrange.sh","size":2523,"filename":"arrange.sh","language":"Shell"}},"html_url":"https://gist.github.com/2729519","user":{"url":"https://api.github.com/users/vinitcool76","gravatar_id":"0474e465f54e54cc1225d67dfd5d9be5","login":"vinitcool76","id":537678,"avatar_url":"https://secure.gravatar.com/avatar/0474e465f54e54cc1225d67dfd5d9be5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"description":"Its is a script to arrange a directory and copy the files to respective directories for easy access","created_at":"2012-05-19T06:02:30Z","id":"2729519"},{"updated_at":"2012-05-19T06:01:01Z","url":"https://api.github.com/gists/2729515","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729515.git","git_push_url":"git@gist.github.com:2729515.git","files":{"User.php":{"type":"application/httpd-php","raw_url":"https://gist.github.com/raw/2729515/6a7df1276bfa169e9d8fceb62462c73629423977/User.php","size":798,"filename":"User.php","language":"PHP"}},"html_url":"https://gist.github.com/2729515","user":{"url":"https://api.github.com/users/coreymcmahon","gravatar_id":"87ae7cb8e1dc49819787951a8a20be30","login":"coreymcmahon","id":700486,"avatar_url":"https://secure.gravatar.com/avatar/87ae7cb8e1dc49819787951a8a20be30?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"description":"Using a custom UserInterface for Symfony Security - http://www.symfonycentral.com/securing-your-web-application-with-symfony.html","created_at":"2012-05-19T06:01:01Z","id":"2729515"},{"updated_at":"2012-05-19T05:58:58Z","url":"https://api.github.com/gists/2729506","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729506.git","git_push_url":"git@gist.github.com:2729506.git","files":{"apod.py":{"type":"application/python","raw_url":"https://gist.github.com/raw/2729506/883cff9ec3da597afb74a97ca8853450b5447d28/apod.py","size":1416,"filename":"apod.py","language":"Python"}},"html_url":"https://gist.github.com/2729506","user":{"url":"https://api.github.com/users/ranman","gravatar_id":"79c320d5af1feee21c58b8cb21692d38","login":"ranman","id":175163,"avatar_url":"https://secure.gravatar.com/avatar/79c320d5af1feee21c58b8cb21692d38?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"description":"quick script to set twitter bg to astronomy pic of the day","created_at":"2012-05-19T05:58:58Z","id":"2729506"},{"updated_at":"2012-05-19T05:51:45Z","url":"https://api.github.com/gists/2729487","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729487.git","git_push_url":"git@gist.github.com:2729487.git","files":{"gistfile1.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729487/1605fe71f2e4ecc0d59fc2e9bf10aead6beca013/gistfile1.txt","size":1527,"filename":"gistfile1.txt","language":"Text"}},"html_url":"https://gist.github.com/2729487","user":{"url":"https://api.github.com/users/SpiffyJr","gravatar_id":"a5408ecd6ed3688802ef096bbd002a80","login":"SpiffyJr","id":227900,"avatar_url":"https://secure.gravatar.com/avatar/a5408ecd6ed3688802ef096bbd002a80?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"description":"","created_at":"2012-05-19T05:51:45Z","id":"2729487"},{"updated_at":"2012-05-19T05:51:19Z","url":"https://api.github.com/gists/2729484","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729484.git","git_push_url":"git@gist.github.com:2729484.git","files":{"settings.py":{"type":"application/python","raw_url":"https://gist.github.com/raw/2729484/4fd1c18563789afd2f5d717f12a8a12aefe7a326/settings.py","size":45,"filename":"settings.py","language":"Python"},"run_test.py":{"type":"application/python","raw_url":"https://gist.github.com/raw/2729484/0bdce9ac4cc3fe37627cd9e815d697fec6be798d/run_test.py","size":2615,"filename":"run_test.py","language":"Python"}},"html_url":"https://gist.github.com/2729484","user":{"url":"https://api.github.com/users/cloverrose","gravatar_id":"ec72ff08579d5e16beb2c0f72a4f102a","login":"cloverrose","id":1592208,"avatar_url":"https://secure.gravatar.com/avatar/ec72ff08579d5e16beb2c0f72a4f102a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"description":"[Django] [python manage.py test] Django組み込みのテストを拡張してtest.py以外のスクリプト(mytest.pyやawesome.py)内のdoctestも実行できるようにする","created_at":"2012-05-19T05:51:19Z","id":"2729484"},{"updated_at":"2012-05-19T05:50:59Z","url":"https://api.github.com/gists/2729482","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729482.git","git_push_url":"git@gist.github.com:2729482.git","files":{"client_for_polling.rb":{"type":"application/ruby","raw_url":"https://gist.github.com/raw/2729482/8cb7069b38a59df94c36183e569191da3b869e3c/client_for_polling.rb","size":411,"filename":"client_for_polling.rb","language":"Ruby"},"mr.rb":{"type":"application/ruby","raw_url":"https://gist.github.com/raw/2729482/65e890c4537520a80cbb888a63de2001b16cb5df/mr.rb","size":5977,"filename":"mr.rb","language":"Ruby"},"add.rb":{"type":"application/ruby","raw_url":"https://gist.github.com/raw/2729482/98f293158173e8f18c120baa6e52297dad048002/add.rb","size":393,"filename":"add.rb","language":"Ruby"},"client.rb":{"type":"application/ruby","raw_url":"https://gist.github.com/raw/2729482/25c160c411d296c9ad36da1168637201df898de9/client.rb","size":285,"filename":"client.rb","language":"Ruby"}},"html_url":"https://gist.github.com/2729482","user":{"url":"https://api.github.com/users/authorNari","gravatar_id":"9f859654c118bcd2f67cc763baf0de7a","login":"authorNari","id":18746,"avatar_url":"https://secure.gravatar.com/avatar/9f859654c118bcd2f67cc763baf0de7a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"description":"","created_at":"2012-05-19T05:50:59Z","id":"2729482"},{"updated_at":"2012-05-19T05:45:20Z","url":"https://api.github.com/gists/2729441","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729441.git","git_push_url":"git@gist.github.com:2729441.git","files":{"deploy.rb":{"type":"application/ruby","raw_url":"https://gist.github.com/raw/2729441/bdbe656503a4c08bf6b0b2cce4ba900d90721ebf/deploy.rb","size":1508,"filename":"deploy.rb","language":"Ruby"}},"html_url":"https://gist.github.com/2729441","user":{"url":"https://api.github.com/users/bazzel","gravatar_id":"b981c8763cd1027deaec5e3b39226dbe","login":"bazzel","id":7672,"avatar_url":"https://secure.gravatar.com/avatar/b981c8763cd1027deaec5e3b39226dbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"description":"Capistrano's deploy.rb with RVM multi user install","created_at":"2012-05-19T05:45:20Z","id":"2729441"},{"updated_at":"2012-05-19T05:44:02Z","url":"https://api.github.com/gists/2729432","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729432.git","git_push_url":"git@gist.github.com:2729432.git","files":{"gistfile1.aw":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729432/7b3bf3d6af7331affed2775b085ea4bbd3f9144a/gistfile1.aw","size":162,"filename":"gistfile1.aw","language":"PHP"}},"html_url":"https://gist.github.com/2729432","user":{"url":"https://api.github.com/users/mojaie","gravatar_id":"f0e1b23df65b364a41c375490aae711d","login":"mojaie","id":1174134,"avatar_url":"https://secure.gravatar.com/avatar/f0e1b23df65b364a41c375490aae711d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"description":"CakePHP:test001_1","created_at":"2012-05-19T05:44:02Z","id":"2729432"},{"updated_at":"2012-05-19T05:41:01Z","url":"https://api.github.com/gists/2729420","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729420.git","git_push_url":"git@gist.github.com:2729420.git","files":{"gistfile1.haml":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729420/74278fa6d12e2b742100dc3af9528da2e7702974/gistfile1.haml","size":485,"filename":"gistfile1.haml","language":"Haml"}},"html_url":"https://gist.github.com/2729420","user":{"url":"https://api.github.com/users/L42y","gravatar_id":"4dc11d87759273f3466ab4f673bcecae","login":"L42y","id":284820,"avatar_url":"https://secure.gravatar.com/avatar/4dc11d87759273f3466ab4f673bcecae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"description":"","created_at":"2012-05-19T05:41:01Z","id":"2729420"},{"updated_at":"2012-05-19T05:34:48Z","url":"https://api.github.com/gists/2729398","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729398.git","git_push_url":"git@gist.github.com:2729398.git","files":{"gistfile1.aw":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729398/0b1125bd22482f8252893f7be45b0ea14f476565/gistfile1.aw","size":186,"filename":"gistfile1.aw","language":"PHP"}},"html_url":"https://gist.github.com/2729398","user":{"url":"https://api.github.com/users/mojaie","gravatar_id":"f0e1b23df65b364a41c375490aae711d","login":"mojaie","id":1174134,"avatar_url":"https://secure.gravatar.com/avatar/f0e1b23df65b364a41c375490aae711d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"description":"CakePHP:test001_0","created_at":"2012-05-19T05:34:48Z","id":"2729398"},{"updated_at":"2012-05-19T05:32:58Z","url":"https://api.github.com/gists/2729372","comments":1,"public":true,"git_pull_url":"git://gist.github.com/2729372.git","git_push_url":"git@gist.github.com:2729372.git","files":{"successfully retrieves some messages even after usb.core.USBerror":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729372/0e5b736a43e6e9f86db32f72219ded00456bb71a/successfully retrieves some messages even after usb.core.USBerror","size":2235000,"filename":"successfully retrieves some messages even after usb.core.USBerror","language":null},"connection-problem":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729372/32b33c33226faa8d2404dfefc4e27325bb480d5e/connection-problem","size":92116,"filename":"connection-problem","language":null}},"html_url":"https://gist.github.com/2729372","user":{"url":"https://api.github.com/users/christofferholmstedt","gravatar_id":"0b6a259fb4a6967b401918912b44219b","login":"christofferholmstedt","id":65247,"avatar_url":"https://secure.gravatar.com/avatar/0b6a259fb4a6967b401918912b44219b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"description":"Error connecting to Garmin 610 with Garmin Forerunner 610 Extractor","created_at":"2012-05-19T05:32:58Z","id":"2729372"},{"updated_at":"2012-05-19T05:32:44Z","url":"https://api.github.com/gists/2729371","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729371.git","git_push_url":"git@gist.github.com:2729371.git","files":{"deploy.rake":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729371/f5630db1020e16c12ca2b0fa4c10dd8c6f0fad20/deploy.rake","size":3245,"filename":"deploy.rake","language":"Ruby"}},"html_url":"https://gist.github.com/2729371","user":{"url":"https://api.github.com/users/toooooooby","gravatar_id":"758ab2510156a6cf87a180b12ed94203","login":"toooooooby","id":20859,"avatar_url":"https://secure.gravatar.com/avatar/758ab2510156a6cf87a180b12ed94203?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"description":"Rakefile to deploy and rollback to Heroku in two different environments (staging and production) for the same app","created_at":"2012-05-19T05:32:44Z","id":"2729371"},{"updated_at":"2012-05-19T05:24:30Z","url":"https://api.github.com/gists/2729351","comments":4,"public":true,"git_pull_url":"git://gist.github.com/2729351.git","git_push_url":"git@gist.github.com:2729351.git","files":{"gistfile1.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729351/10eeb0eb89a99c107932bc5c82a972e359776e14/gistfile1.txt","size":676,"filename":"gistfile1.txt","language":"Text"}},"html_url":"https://gist.github.com/2729351","user":{"url":"https://api.github.com/users/ALRubinger","gravatar_id":"4369758fcee235bebd875f0de34aa42e","login":"ALRubinger","id":199891,"avatar_url":"https://secure.gravatar.com/avatar/4369758fcee235bebd875f0de34aa42e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"description":"","created_at":"2012-05-19T05:24:30Z","id":"2729351"},{"updated_at":"2012-05-19T05:23:30Z","url":"https://api.github.com/gists/2729346","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729346.git","git_push_url":"git@gist.github.com:2729346.git","files":{"benchmark.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729346/c104341058b04e8df33bdc7c5caca0824fc9f140/benchmark.txt","size":137,"filename":"benchmark.txt","language":"Text"},"json2csv.py":{"type":"application/python","raw_url":"https://gist.github.com/raw/2729346/65f9e62c6c63183acfd8f61198c6ce959062f5be/json2csv.py","size":526,"filename":"json2csv.py","language":"Python"}},"html_url":"https://gist.github.com/2729346","user":{"url":"https://api.github.com/users/joskid","gravatar_id":"74231318b03600599b999e675a5c31b4","login":"joskid","id":644086,"avatar_url":"https://secure.gravatar.com/avatar/74231318b03600599b999e675a5c31b4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"description":"JSON to CSV conversion benchmarking","created_at":"2012-05-19T05:23:30Z","id":"2729346"},{"updated_at":"2012-05-19T05:19:03Z","url":"https://api.github.com/gists/2729316","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729316.git","git_push_url":"git@gist.github.com:2729316.git","files":{"make_anchor_by_week_day.html":{"type":"text/html","raw_url":"https://gist.github.com/raw/2729316/fa0d97d1f1a115ad2067733538a8b48ddf934a24/make_anchor_by_week_day.html","size":995,"filename":"make_anchor_by_week_day.html","language":"HTML"}},"html_url":"https://gist.github.com/2729316","user":{"url":"https://api.github.com/users/gDD","gravatar_id":"6ef3531050f0e384b8707b4a5f943cbf","login":"gDD","id":113737,"avatar_url":"https://secure.gravatar.com/avatar/6ef3531050f0e384b8707b4a5f943cbf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"description":"make anchor by week day","created_at":"2012-05-19T05:19:03Z","id":"2729316"},{"updated_at":"2012-05-19T05:17:20Z","url":"https://api.github.com/gists/2729304","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729304.git","git_push_url":"git@gist.github.com:2729304.git","files":{"KeychainItemWrapper.h":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729304/088c905c4c3d21d34a4608d589131f4c29d169ee/KeychainItemWrapper.h","size":3121,"filename":"KeychainItemWrapper.h","language":"Objective-C"},"KeychainItemWrapper.m":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729304/abf5850d5a0fd78cdbc16d6a431090043457d1f5/KeychainItemWrapper.m","size":14268,"filename":"KeychainItemWrapper.m","language":"Objective-C"}},"html_url":"https://gist.github.com/2729304","user":{"url":"https://api.github.com/users/ruiwen","gravatar_id":"fd7f8247e1c26ba99e7bad148a985510","login":"ruiwen","id":307558,"avatar_url":"https://secure.gravatar.com/avatar/fd7f8247e1c26ba99e7bad148a985510?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"description":"KeychainItemWrapper ARCified - saves NSString, NSArray, NSDictionary","created_at":"2012-05-19T05:13:32Z","id":"2729304"},{"updated_at":"2012-05-19T05:11:04Z","url":"https://api.github.com/gists/2729296","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729296.git","git_push_url":"git@gist.github.com:2729296.git","files":{"gistfile1.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729296/cb5fe306a1159c207fadf865b539f5490876b484/gistfile1.txt","size":1546,"filename":"gistfile1.txt","language":"Text"}},"html_url":"https://gist.github.com/2729296","user":{"url":"https://api.github.com/users/nas","gravatar_id":"170b5dc385cc9ddf78ed01bcf1e6990a","login":"nas","id":42499,"avatar_url":"https://secure.gravatar.com/avatar/170b5dc385cc9ddf78ed01bcf1e6990a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"description":"local conf / settings","created_at":"2012-05-19T05:11:04Z","id":"2729296"},{"updated_at":"2012-05-19T05:03:08Z","url":"https://api.github.com/gists/2729276","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729276.git","git_push_url":"git@gist.github.com:2729276.git","files":{"primes.clj":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729276/86f31b33fa4a3c33e784d8525a7513a7f2256c0e/primes.clj","size":138,"filename":"primes.clj","language":"Clojure"}},"html_url":"https://gist.github.com/2729276","user":{"url":"https://api.github.com/users/fumokmm","gravatar_id":"8c018bba93f271f288230310e8e13f98","login":"fumokmm","id":64939,"avatar_url":"https://secure.gravatar.com/avatar/8c018bba93f271f288230310e8e13f98?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"description":"エラトステネスの篩を使ってClojureで素数を求める","created_at":"2012-05-19T05:03:08Z","id":"2729276"}] + +https +GET +api.github.com +None +/gists/public?page=2 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4977'), ('content-length', '29882'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"57b2419f70e39497696624710da528ad"'), ('date', 'Sat, 19 May 2012 06:25:51 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-19T05:00:00Z","url":"https://api.github.com/gists/2729272","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729272.git","files":{"133767.user.js":{"type":"application/javascript","raw_url":"https://gist.github.com/raw/2729272/3e4614c88500d33ba459a5fd3b028c5536acd036/133767.user.js","size":381,"filename":"133767.user.js","language":"JavaScript"}},"html_url":"https://gist.github.com/2729272","git_push_url":"git@gist.github.com:2729272.git","user":{"url":"https://api.github.com/users/ngs","gravatar_id":"53bc8fa21f71dd8e63f3c94275c56191","login":"ngs","avatar_url":"https://secure.gravatar.com/avatar/53bc8fa21f71dd8e63f3c94275c56191?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":18631},"description":"MONOCO Remove Private Overlay","created_at":"2012-05-19T05:00:00Z","id":"2729272"},{"updated_at":"2012-05-19T04:57:29Z","url":"https://api.github.com/gists/2729265","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729265.git","files":{"bubblechart.html":{"type":"text/html","raw_url":"https://gist.github.com/raw/2729265/69d1ddceb6f570d6efdaeaacdab21a8d325347ce/bubblechart.html","size":5539,"filename":"bubblechart.html","language":"HTML"}},"html_url":"https://gist.github.com/2729265","git_push_url":"git@gist.github.com:2729265.git","user":{"url":"https://api.github.com/users/tripp","gravatar_id":"5eb68b5c2390328fe30a0ab466cab353","login":"tripp","avatar_url":"https://secure.gravatar.com/avatar/5eb68b5c2390328fe30a0ab466cab353?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":63965},"description":"bubblechart.html","created_at":"2012-05-19T04:57:29Z","id":"2729265"},{"updated_at":"2012-05-19T04:48:17Z","url":"https://api.github.com/gists/2729195","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729195.git","files":{"checkout_previous_branch.sh":{"type":"application/sh","raw_url":"https://gist.github.com/raw/2729195/5e08f89c329ae52f44dd26f5ad4810ba85a77ff1/checkout_previous_branch.sh","size":427,"filename":"checkout_previous_branch.sh","language":"Shell"},"post-checkout.sh":{"type":"application/sh","raw_url":"https://gist.github.com/raw/2729195/fe2024f381942d093095434fc4d1d138438a0cc1/post-checkout.sh","size":1134,"filename":"post-checkout.sh","language":"Shell"}},"html_url":"https://gist.github.com/2729195","git_push_url":"git@gist.github.com:2729195.git","user":{"url":"https://api.github.com/users/wearhere","gravatar_id":"aaf143fc290a92af46e03ab7b62a8340","login":"wearhere","avatar_url":"https://secure.gravatar.com/avatar/aaf143fc290a92af46e03ab7b62a8340?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":110000},"description":"Checkout previous Git branch","created_at":"2012-05-19T04:48:17Z","id":"2729195"},{"updated_at":"2012-05-19T05:08:17Z","url":"https://api.github.com/gists/2729160","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729160.git","files":{"nginx.conf":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729160/fd7cece078340af6fad9f74d2d1a304e3bdd8994/nginx.conf","size":799,"filename":"nginx.conf","language":null}},"html_url":"https://gist.github.com/2729160","git_push_url":"git@gist.github.com:2729160.git","user":{"url":"https://api.github.com/users/seancoyne","gravatar_id":"8eadc3a23ced47e478851bdd282c771a","login":"seancoyne","avatar_url":"https://secure.gravatar.com/avatar/8eadc3a23ced47e478851bdd282c771a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":510437},"description":"nginx connector for cfml on tomcat","created_at":"2012-05-19T04:41:00Z","id":"2729160"},{"updated_at":"2012-05-19T04:33:03Z","url":"https://api.github.com/gists/2729143","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729143.git","files":{"MetadataClass":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729143/daa879532897ae5fe4e7102de9ebcb1fe6b4a666/MetadataClass","size":916,"filename":"MetadataClass","language":null}},"html_url":"https://gist.github.com/2729143","git_push_url":"git@gist.github.com:2729143.git","user":{"url":"https://api.github.com/users/chentepixtol","gravatar_id":"9b0650e1f3afe1a8c927f735e1250ec1","login":"chentepixtol","avatar_url":"https://secure.gravatar.com/avatar/9b0650e1f3afe1a8c927f735e1250ec1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":178278},"description":"Metadata prototype","created_at":"2012-05-19T04:33:03Z","id":"2729143"},{"updated_at":"2012-05-19T04:33:02Z","url":"https://api.github.com/gists/2729127","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729127.git","files":{"dabblet.css":{"type":"text/css","raw_url":"https://gist.github.com/raw/2729127/f1944a22e4ca513fa71008093546717e0cc18b86/dabblet.css","size":482,"filename":"dabblet.css","language":"CSS"},"dabblet.html":{"type":"text/html","raw_url":"https://gist.github.com/raw/2729127/e7716d5202cfe5ebb22df182e7c5b4dde5a86078/dabblet.html","size":95,"filename":"dabblet.html","language":"HTML"},"settings.json":{"type":"application/json","raw_url":"https://gist.github.com/raw/2729127/f9b473b3380e302ad0c707460c59a541870e0d3b/settings.json","size":79,"filename":"settings.json","language":"JSON"}},"html_url":"https://gist.github.com/2729127","git_push_url":"git@gist.github.com:2729127.git","user":{"url":"https://api.github.com/users/lucasmazza","gravatar_id":"450908b4010abbbf9eebc146ed4c0246","login":"lucasmazza","avatar_url":"https://secure.gravatar.com/avatar/450908b4010abbbf9eebc146ed4c0246?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":80978},"description":"Classic `position` exercise.","created_at":"2012-05-19T04:32:09Z","id":"2729127"},{"updated_at":"2012-05-19T04:31:48Z","url":"https://api.github.com/gists/2729119","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729119.git","files":{"settings.py":{"type":"application/python","raw_url":"https://gist.github.com/raw/2729119/4fd1c18563789afd2f5d717f12a8a12aefe7a326/settings.py","size":45,"filename":"settings.py","language":"Python"},"run_test_error.py":{"type":"application/python","raw_url":"https://gist.github.com/raw/2729119/02735b2b827ac1ace246be9d343491928ae47f6c/run_test_error.py","size":2429,"filename":"run_test_error.py","language":"Python"}},"html_url":"https://gist.github.com/2729119","git_push_url":"git@gist.github.com:2729119.git","user":{"url":"https://api.github.com/users/cloverrose","gravatar_id":"ec72ff08579d5e16beb2c0f72a4f102a","login":"cloverrose","avatar_url":"https://secure.gravatar.com/avatar/ec72ff08579d5e16beb2c0f72a4f102a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1592208},"description":"[Django] [python manage.py test] this is error program!! Django組み込みのテストを拡張してtest.py以外のスクリプト(mytest.pyやawesome.py)内のdoctestも実行できるようにする","created_at":"2012-05-19T04:31:48Z","id":"2729119"},{"updated_at":"2012-05-19T04:30:59Z","url":"https://api.github.com/gists/2729113","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729113.git","files":{"foo.js":{"type":"application/javascript","raw_url":"https://gist.github.com/raw/2729113/7e28791d2774289e3c251a757b08ef37828c64d6/foo.js","size":305,"filename":"foo.js","language":"JavaScript"}},"html_url":"https://gist.github.com/2729113","git_push_url":"git@gist.github.com:2729113.git","user":{"url":"https://api.github.com/users/kaneshin","gravatar_id":"a75c909334d4dc6c7dca7bd915eebdbf","login":"kaneshin","avatar_url":"https://secure.gravatar.com/avatar/a75c909334d4dc6c7dca7bd915eebdbf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":936972},"description":"","created_at":"2012-05-19T04:30:59Z","id":"2729113"},{"updated_at":"2012-05-19T04:27:51Z","url":"https://api.github.com/gists/2729103","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729103.git","files":{"RunScalaTest.scala":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729103/ed1310675c4947d096c8803e89c6a61718ee57ee/RunScalaTest.scala","size":654,"filename":"RunScalaTest.scala","language":"Scala"}},"html_url":"https://gist.github.com/2729103","git_push_url":"git@gist.github.com:2729103.git","user":{"url":"https://api.github.com/users/takezoe","gravatar_id":"0b557808a458232e7aea69907ca1dd84","login":"takezoe","avatar_url":"https://secure.gravatar.com/avatar/0b557808a458232e7aea69907ca1dd84?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1094760},"description":"An example which runs ScalaTest by program","created_at":"2012-05-19T04:27:51Z","id":"2729103"},{"updated_at":"2012-05-19T04:21:50Z","url":"https://api.github.com/gists/2729069","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729069.git","files":{"gistfile1.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729069/291681e54dfcef17254e20342c14d32745b53b79/gistfile1.txt","size":241,"filename":"gistfile1.txt","language":"Text"}},"html_url":"https://gist.github.com/2729069","git_push_url":"git@gist.github.com:2729069.git","user":{"url":"https://api.github.com/users/JesseObrien","gravatar_id":"ebf726797ad5f82f68c6532bde0c86d9","login":"JesseObrien","avatar_url":"https://secure.gravatar.com/avatar/ebf726797ad5f82f68c6532bde0c86d9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":865481},"description":"One-liner to install sublime on linux","created_at":"2012-05-19T04:21:50Z","id":"2729069"},{"updated_at":"2012-05-19T04:15:12Z","url":"https://api.github.com/gists/2729059","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729059.git","files":{"monitor_exec.pp":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729059/6d778a12e481ae671cd1c2fa6807068b12a4ea06/monitor_exec.pp","size":320,"filename":"monitor_exec.pp","language":"Puppet"}},"html_url":"https://gist.github.com/2729059","git_push_url":"git@gist.github.com:2729059.git","user":{"url":"https://api.github.com/users/marut","gravatar_id":"ad8d48f0ff4016182e9a1a91e681fecc","login":"marut","avatar_url":"https://secure.gravatar.com/avatar/ad8d48f0ff4016182e9a1a91e681fecc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":100142},"description":"Trigger an exec upon changes to a semi-managed file","created_at":"2012-05-19T04:15:12Z","id":"2729059"},{"updated_at":"2012-05-19T04:14:01Z","url":"https://api.github.com/gists/2729051","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729051.git","files":{"index.html":{"type":"text/html","raw_url":"https://gist.github.com/raw/2729051/092eb59cb04f9c733fddda5225819bb9281aa47a/index.html","size":2050,"filename":"index.html","language":"HTML"},"hover.js":{"type":"application/javascript","raw_url":"https://gist.github.com/raw/2729051/1bb2b2ea5660cf9369741a49fa2ebddc281bf061/hover.js","size":312,"filename":"hover.js","language":"JavaScript"},"estilo.css":{"type":"text/css","raw_url":"https://gist.github.com/raw/2729051/c4a4fd16beab280dacc6e290a620aea6d5da0112/estilo.css","size":1111,"filename":"estilo.css","language":"CSS"}},"html_url":"https://gist.github.com/2729051","git_push_url":"git@gist.github.com:2729051.git","user":{"url":"https://api.github.com/users/fidelisrafael","gravatar_id":"44613931f6ec23e39a95e3319a44f320","login":"fidelisrafael","avatar_url":"https://secure.gravatar.com/avatar/44613931f6ec23e39a95e3319a44f320?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1542608},"description":"","created_at":"2012-05-19T04:14:01Z","id":"2729051"},{"updated_at":"2012-05-19T04:11:22Z","url":"https://api.github.com/gists/2729029","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729029.git","files":{"simple_http_client.scala":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729029/8b50a7e288120c33d4b49e1832d90bb620a2765e/simple_http_client.scala","size":417,"filename":"simple_http_client.scala","language":"Scala"},"using_routing_service.scala":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729029/6b3229017fb1831a7a2868f6d374c00148b571e8/using_routing_service.scala","size":1590,"filename":"using_routing_service.scala","language":"Scala"},"finagle_http_hello.scala":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729029/25ac8412cc6fa35351675e10ba2e4f0a17c20552/finagle_http_hello.scala","size":1145,"filename":"finagle_http_hello.scala","language":"Scala"}},"html_url":"https://gist.github.com/2729029","git_push_url":"git@gist.github.com:2729029.git","user":{"url":"https://api.github.com/users/tototoshi","gravatar_id":"405ad7da1defc0f6f8804e026778038f","login":"tototoshi","avatar_url":"https://secure.gravatar.com/avatar/405ad7da1defc0f6f8804e026778038f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":264469},"description":"finagle-http で Hello, world.","created_at":"2012-05-19T04:11:22Z","id":"2729029"},{"updated_at":"2012-05-19T04:10:56Z","url":"https://api.github.com/gists/2729027","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729027.git","files":{"resourcePHP":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729027/d64aeb0f97a7ae2d837f65b9b9b52234dac7f3e1/resourcePHP","size":6045,"filename":"resourcePHP","language":null}},"html_url":"https://gist.github.com/2729027","git_push_url":"git@gist.github.com:2729027.git","user":{"url":"https://api.github.com/users/eamexicano","gravatar_id":"ea41a0778d7736efedb9deacff43e613","login":"eamexicano","avatar_url":"https://secure.gravatar.com/avatar/ea41a0778d7736efedb9deacff43e613?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":63536},"description":"Funciona para crear las vistas (y SQL) de un recurso en PHP. Esta relacionado con setupPHP. Después de crear el proyecto con setup se utiliza este archivo para crear recursos dentro del proyecto. Al igual que setupPHP lo voy a reescribir en PHP.","created_at":"2012-05-19T04:10:33Z","id":"2729027"},{"updated_at":"2012-05-19T04:10:08Z","url":"https://api.github.com/gists/2729026","comments":1,"public":true,"git_pull_url":"git://gist.github.com/2729026.git","files":{"2012-05-19-ender-roundup.md":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729026/c5a687a9c76763fda5d4f141422aac6422765b6a/2012-05-19-ender-roundup.md","size":6389,"filename":"2012-05-19-ender-roundup.md","language":"Markdown"}},"html_url":"https://gist.github.com/2729026","git_push_url":"git@gist.github.com:2729026.git","user":{"url":"https://api.github.com/users/rvagg","gravatar_id":"026f5af604a336a38301639027757f29","login":"rvagg","avatar_url":"https://secure.gravatar.com/avatar/026f5af604a336a38301639027757f29?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":495647},"description":"DailyJS \"Ender Roundup\" #4, May 2012","created_at":"2012-05-19T04:10:08Z","id":"2729026"},{"updated_at":"2012-05-19T04:08:16Z","url":"https://api.github.com/gists/2729022","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729022.git","files":{"setupPHP":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729022/abe8f21e125ac96ca2cd7e1667cf05f6a8824105/setupPHP","size":1848,"filename":"setupPHP","language":null}},"html_url":"https://gist.github.com/2729022","git_push_url":"git@gist.github.com:2729022.git","user":{"url":"https://api.github.com/users/eamexicano","gravatar_id":"ea41a0778d7736efedb9deacff43e613","login":"eamexicano","avatar_url":"https://secure.gravatar.com/avatar/ea41a0778d7736efedb9deacff43e613?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":63536},"description":"Crear directorios archivos base para un proyecto básico en PHP. El archivo es sh se utiliza la terminal y necesita tener mysql en el $PATH (se tiene que estar ejecutando). Lo voy a reescribir en PHP para darle un mejor contexto y dejar este como referenci","created_at":"2012-05-19T04:08:16Z","id":"2729022"},{"updated_at":"2012-05-19T04:06:35Z","url":"https://api.github.com/gists/2729002","comments":2,"public":true,"git_pull_url":"git://gist.github.com/2729002.git","files":{"ConfigurationService.php":{"type":"application/httpd-php","raw_url":"https://gist.github.com/raw/2729002/cb5e3ac544a11e15c311d282850784e24d1060fa/ConfigurationService.php","size":25774,"filename":"ConfigurationService.php","language":"PHP"}},"html_url":"https://gist.github.com/2729002","git_push_url":"git@gist.github.com:2729002.git","user":{"url":"https://api.github.com/users/AmyStephen","gravatar_id":"d6a6b6a510c2e3bf82e2de88903fd610","login":"AmyStephen","avatar_url":"https://secure.gravatar.com/avatar/d6a6b6a510c2e3bf82e2de88903fd610?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":95525},"description":"Molajo Configuration Service","created_at":"2012-05-19T04:06:35Z","id":"2729002"},{"updated_at":"2012-05-19T04:02:30Z","url":"https://api.github.com/gists/2728985","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728985.git","files":{"SCII Fix Ubuntu 12.04":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728985/cd39c46eee874e3411c257f9b5e61c0e85a5ef9d/SCII Fix Ubuntu 12.04","size":50,"filename":"SCII Fix Ubuntu 12.04","language":null}},"html_url":"https://gist.github.com/2728985","git_push_url":"git@gist.github.com:2728985.git","user":{"url":"https://api.github.com/users/Chevex","gravatar_id":"de59eb063429d3157c5e7f87b5168437","login":"Chevex","avatar_url":"https://secure.gravatar.com/avatar/de59eb063429d3157c5e7f87b5168437?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":874394},"description":"Fix SCII on Ubuntu 12.04","created_at":"2012-05-19T04:02:30Z","id":"2728985"},{"updated_at":"2012-05-19T04:33:19Z","url":"https://api.github.com/gists/2728979","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728979.git","files":{"dabblet.css":{"type":"text/css","raw_url":"https://gist.github.com/raw/2728979/53c1244ad9de74354e5aa380260699d50fc38364/dabblet.css","size":405,"filename":"dabblet.css","language":"CSS"},"dabblet.html":{"type":"text/html","raw_url":"https://gist.github.com/raw/2728979/638ee815c707ff8b04bd79b9f94d6a5584a50924/dabblet.html","size":68,"filename":"dabblet.html","language":"HTML"},"settings.json":{"type":"application/json","raw_url":"https://gist.github.com/raw/2728979/f9b473b3380e302ad0c707460c59a541870e0d3b/settings.json","size":79,"filename":"settings.json","language":"JSON"}},"html_url":"https://gist.github.com/2728979","git_push_url":"git@gist.github.com:2728979.git","user":{"url":"https://api.github.com/users/lucasmazza","gravatar_id":"450908b4010abbbf9eebc146ed4c0246","login":"lucasmazza","avatar_url":"https://secure.gravatar.com/avatar/450908b4010abbbf9eebc146ed4c0246?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":80978},"description":"shadowy trick by nrrrdcore","created_at":"2012-05-19T03:59:01Z","id":"2728979"},{"updated_at":"2012-05-19T03:48:38Z","url":"https://api.github.com/gists/2728964","comments":1,"public":true,"git_pull_url":"git://gist.github.com/2728964.git","files":{"ModelController.php":{"type":"application/httpd-php","raw_url":"https://gist.github.com/raw/2728964/6ef504752c3463a92d12be53a6d7b1b4a5fd5bfb/ModelController.php","size":4966,"filename":"ModelController.php","language":"PHP"}},"html_url":"https://gist.github.com/2728964","git_push_url":"git@gist.github.com:2728964.git","user":{"url":"https://api.github.com/users/AmyStephen","gravatar_id":"d6a6b6a510c2e3bf82e2de88903fd610","login":"AmyStephen","avatar_url":"https://secure.gravatar.com/avatar/d6a6b6a510c2e3bf82e2de88903fd610?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":95525},"description":"Molajo ModelController","created_at":"2012-05-19T03:48:38Z","id":"2728964"},{"updated_at":"2012-05-19T03:44:45Z","url":"https://api.github.com/gists/2728937","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728937.git","files":{"get_card.m":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728937/2c5f09aa2cb3cf2fec4becc425f6a06b6300e722/get_card.m","size":2279,"filename":"get_card.m","language":"Matlab"},"game26.m":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728937/0f9add7f1967c0fde154e954e4042b3214a0c6e3/game26.m","size":2050,"filename":"game26.m","language":"Matlab"}},"html_url":"https://gist.github.com/2728937","git_push_url":"git@gist.github.com:2728937.git","user":{"url":"https://api.github.com/users/593mrbean","gravatar_id":"7217bb44883e10bbd2299b1b52c3c59d","login":"593mrbean","avatar_url":"https://secure.gravatar.com/avatar/7217bb44883e10bbd2299b1b52c3c59d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1645006},"description":"Card game called 26","created_at":"2012-05-19T03:44:45Z","id":"2728937"},{"updated_at":"2012-05-19T03:42:54Z","url":"https://api.github.com/gists/2728933","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728933.git","files":{"gistfile1.js":{"type":"application/javascript","raw_url":"https://gist.github.com/raw/2728933/4eacdc9596a77a195bd941d20a230acf235a3c52/gistfile1.js","size":247,"filename":"gistfile1.js","language":"JavaScript"}},"html_url":"https://gist.github.com/2728933","git_push_url":"git@gist.github.com:2728933.git","user":{"url":"https://api.github.com/users/hafriedlander","gravatar_id":"2d899af51e0f7e1cfab801bc677e05fb","login":"hafriedlander","avatar_url":"https://secure.gravatar.com/avatar/2d899af51e0f7e1cfab801bc677e05fb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":114769},"description":"Entwine create property on first access pattern","created_at":"2012-05-19T03:42:54Z","id":"2728933"},{"updated_at":"2012-05-19T03:35:30Z","url":"https://api.github.com/gists/2728884","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728884.git","files":{"gistfile1.js":{"type":"application/javascript","raw_url":"https://gist.github.com/raw/2728884/192cc8399a6d4a8bc3d2bfa5990840427aa96b80/gistfile1.js","size":1502,"filename":"gistfile1.js","language":"JavaScript"}},"html_url":"https://gist.github.com/2728884","git_push_url":"git@gist.github.com:2728884.git","user":{"url":"https://api.github.com/users/codeglot","gravatar_id":"b681feb514f5756a45a4f106cf0f32de","login":"codeglot","avatar_url":"https://secure.gravatar.com/avatar/b681feb514f5756a45a4f106cf0f32de?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":68357},"description":"Character Hero Audio","created_at":"2012-05-19T03:35:30Z","id":"2728884"},{"updated_at":"2012-05-19T03:31:32Z","url":"https://api.github.com/gists/2728869","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728869.git","files":{"Fetch.sublime-settings":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728869/a071cb66ddd3d5597e4e20d2bf342e003b7644af/Fetch.sublime-settings","size":5361,"filename":"Fetch.sublime-settings","language":null}},"html_url":"https://gist.github.com/2728869","git_push_url":"git@gist.github.com:2728869.git","user":{"url":"https://api.github.com/users/dariongg","gravatar_id":"bc78aea61cd6c0769c2172e6954ed922","login":"dariongg","avatar_url":"https://secure.gravatar.com/avatar/bc78aea61cd6c0769c2172e6954ed922?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1194592},"description":"Sublime Text 2 Fetch Settings","created_at":"2012-05-19T03:31:32Z","id":"2728869"},{"updated_at":"2012-05-19T03:29:57Z","url":"https://api.github.com/gists/2728866","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728866.git","files":{"glmnet.R":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728866/d9e836fe86d3fdc3630b44478535b359c8fe197a/glmnet.R","size":2150,"filename":"glmnet.R","language":"R"}},"html_url":"https://gist.github.com/2728866","git_push_url":"git@gist.github.com:2728866.git","user":{"url":"https://api.github.com/users/xccds","gravatar_id":"526adb6a5fc533c3678f897f3434980a","login":"xccds","avatar_url":"https://secure.gravatar.com/avatar/526adb6a5fc533c3678f897f3434980a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1450275},"description":"","created_at":"2012-05-19T03:29:57Z","id":"2728866"},{"updated_at":"2012-05-19T03:24:28Z","url":"https://api.github.com/gists/2728855","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728855.git","files":{"find_a_person.rb":{"type":"application/ruby","raw_url":"https://gist.github.com/raw/2728855/b0ee73ffc28b330b16a3c29ee3e41cd49ce5a95a/find_a_person.rb","size":911,"filename":"find_a_person.rb","language":"Ruby"}},"html_url":"https://gist.github.com/2728855","git_push_url":"git@gist.github.com:2728855.git","user":{"url":"https://api.github.com/users/mungruby","gravatar_id":"ead0c810163c355535e7c47c20955073","login":"mungruby","avatar_url":"https://secure.gravatar.com/avatar/ead0c810163c355535e7c47c20955073?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1103706},"description":"example of using the inject method","created_at":"2012-05-19T03:24:28Z","id":"2728855"},{"updated_at":"2012-05-19T03:22:49Z","url":"https://api.github.com/gists/2728854","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728854.git","files":{"Gemfile":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728854/b22f6da889266f0f0809bb0109833ec577a98fd9/Gemfile","size":127,"filename":"Gemfile","language":"Ruby"},"Rakefile":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728854/1d28967f05e49ccb5eabd617f8869e3484617580/Rakefile","size":2424,"filename":"Rakefile","language":"Ruby"},"config.ru":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728854/735f67725308b5b3dbdd3d3e27c6d12b0b82da88/config.ru","size":714,"filename":"config.ru","language":"Ruby"}},"html_url":"https://gist.github.com/2728854","git_push_url":"git@gist.github.com:2728854.git","user":{"url":"https://api.github.com/users/ntreadway","gravatar_id":"c580eb3fb9d0c62d0aae3aa2bc473ba5","login":"ntreadway","avatar_url":"https://secure.gravatar.com/avatar/c580eb3fb9d0c62d0aae3aa2bc473ba5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":15833},"description":"A Phonegap development workflow with Rack and Sprockets - http://abhishiv.tumblr.com/post/15994872384/phonegap-and-sprockets-sitting-in-a-tree","created_at":"2012-05-19T03:22:49Z","id":"2728854"},{"updated_at":"2012-05-19T03:22:21Z","url":"https://api.github.com/gists/2728853","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728853.git","files":{"gistfile1.pytb":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728853/4b94e624d7d11a46959f4f115082bf39e469c762/gistfile1.pytb","size":4493,"filename":"gistfile1.pytb","language":"Python traceback"}},"html_url":"https://gist.github.com/2728853","git_push_url":"git@gist.github.com:2728853.git","user":{"url":"https://api.github.com/users/douglatornell","gravatar_id":"dbbe0d92c98862a28a300b8524ede105","login":"douglatornell","avatar_url":"https://secure.gravatar.com/avatar/dbbe0d92c98862a28a300b8524ede105?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":76797},"description":"Typical Traceback of Blogofile plugins Branch Test Error (py.test)","created_at":"2012-05-19T03:22:21Z","id":"2728853"},{"updated_at":"2012-05-19T03:17:49Z","url":"https://api.github.com/gists/2728846","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728846.git","files":{"alcohol.rb":{"type":"application/ruby","raw_url":"https://gist.github.com/raw/2728846/0e565f8eb93c0ce655f6c0af276283e1c9063970/alcohol.rb","size":2476,"filename":"alcohol.rb","language":"Ruby"}},"html_url":"https://gist.github.com/2728846","git_push_url":"git@gist.github.com:2728846.git","user":{"url":"https://api.github.com/users/alloy-d","gravatar_id":"c7ed2a732872be2e1af11430e545a513","login":"alloy-d","avatar_url":"https://secure.gravatar.com/avatar/c7ed2a732872be2e1af11430e545a513?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":78450},"description":"'cause robots should type drunk, too","created_at":"2012-05-19T03:17:49Z","id":"2728846"},{"updated_at":"2012-05-19T03:13:03Z","url":"https://api.github.com/gists/2728825","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728825.git","files":{"dabblet.css":{"type":"text/css","raw_url":"https://gist.github.com/raw/2728825/2e6c3240e873c271762938afa4eebe5be39f496c/dabblet.css","size":177,"filename":"dabblet.css","language":"CSS"},"dabblet.html":{"type":"text/html","raw_url":"https://gist.github.com/raw/2728825/c65da83130a8b8ffd5511de7411e303d2aca1481/dabblet.html","size":41,"filename":"dabblet.html","language":"HTML"},"settings.json":{"type":"application/json","raw_url":"https://gist.github.com/raw/2728825/97f2ad9f07f823c2ca15aad5051d48f9b63c42de/settings.json","size":82,"filename":"settings.json","language":"JSON"}},"html_url":"https://gist.github.com/2728825","git_push_url":"git@gist.github.com:2728825.git","user":{"url":"https://api.github.com/users/bidah","gravatar_id":"af4fa83a6af88f151cfe8f4b86ce1a4f","login":"bidah","avatar_url":"https://secure.gravatar.com/avatar/af4fa83a6af88f151cfe8f4b86ce1a4f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1574028},"description":"Untitled","created_at":"2012-05-19T03:13:03Z","id":"2728825"}] + +https +GET +api.github.com +None +/gists/public?page=3 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4976'), ('content-length', '28245'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"5b04b57eaf693f580a30b16157f9ca70"'), ('date', 'Sat, 19 May 2012 06:25:53 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-19T03:23:29Z","url":"https://api.github.com/gists/2728814","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728814.git","files":{"gistfile1.pytb":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728814/13c1cac8f62d29f0619ddf341fc0c9d2d4128a5c/gistfile1.pytb","size":1329,"filename":"gistfile1.pytb","language":"Python traceback"}},"html_url":"https://gist.github.com/2728814","git_push_url":"git@gist.github.com:2728814.git","user":{"url":"https://api.github.com/users/douglatornell","gravatar_id":"dbbe0d92c98862a28a300b8524ede105","login":"douglatornell","avatar_url":"https://secure.gravatar.com/avatar/dbbe0d92c98862a28a300b8524ede105?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":76797},"description":"Typical Traceback of Blogofile plugins Branch Test Error (unittest discover)","created_at":"2012-05-19T03:09:10Z","id":"2728814"},{"updated_at":"2012-05-19T03:08:51Z","url":"https://api.github.com/gists/2728813","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728813.git","files":{"SSID_automount.scpt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728813/56fd663e9cb3d398dc0db86c8199c2370d7c3807/SSID_automount.scpt","size":1544,"filename":"SSID_automount.scpt","language":"AppleScript"}},"html_url":"https://gist.github.com/2728813","git_push_url":"git@gist.github.com:2728813.git","user":{"url":"https://api.github.com/users/cbuck","gravatar_id":"854462d067823b5648bbde1193cfcc17","login":"cbuck","avatar_url":"https://secure.gravatar.com/avatar/854462d067823b5648bbde1193cfcc17?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":98870},"description":"Automount network drives via ssid name","created_at":"2012-05-19T03:08:51Z","id":"2728813"},{"updated_at":"2012-05-19T03:08:35Z","url":"https://api.github.com/gists/2728812","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728812.git","files":{"Server.java":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728812/761e4d4487d603a7214062626424f10c576a0637/Server.java","size":799,"filename":"Server.java","language":"Java"},"Client.java":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728812/e532688e540567c3bdc5d0db53b4da38578c98e9/Client.java","size":1121,"filename":"Client.java","language":"Java"}},"html_url":"https://gist.github.com/2728812","git_push_url":"git@gist.github.com:2728812.git","user":{"url":"https://api.github.com/users/making","gravatar_id":"414cddef87d9c4c451bb16648281f4ec","login":"making","avatar_url":"https://secure.gravatar.com/avatar/414cddef87d9c4c451bb16648281f4ec?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":106908},"description":"Java Finagle Example","created_at":"2012-05-19T03:08:35Z","id":"2728812"},{"updated_at":"2012-05-19T03:06:14Z","url":"https://api.github.com/gists/2728805","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728805.git","files":{"gistfile1.coffee":{"type":"text/coffescript","raw_url":"https://gist.github.com/raw/2728805/165e7493748ef11474bf9ab0170cbc6e2ca87b56/gistfile1.coffee","size":280,"filename":"gistfile1.coffee","language":"CoffeeScript"}},"html_url":"https://gist.github.com/2728805","git_push_url":"git@gist.github.com:2728805.git","user":{"url":"https://api.github.com/users/charliesome","gravatar_id":"bcb6acc9d0d9bef99e033b36c3d32ca9","login":"charliesome","avatar_url":"https://secure.gravatar.com/avatar/bcb6acc9d0d9bef99e033b36c3d32ca9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":179065},"description":"","created_at":"2012-05-19T03:06:14Z","id":"2728805"},{"updated_at":"2012-05-19T03:05:45Z","url":"https://api.github.com/gists/2728802","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728802.git","files":{"pre-commit.sh":{"type":"application/sh","raw_url":"https://gist.github.com/raw/2728802/5bd18d3abc2f8c2954c8fd37c98ab712422db1c4/pre-commit.sh","size":447,"filename":"pre-commit.sh","language":"Shell"}},"html_url":"https://gist.github.com/2728802","git_push_url":"git@gist.github.com:2728802.git","user":{"url":"https://api.github.com/users/steakknife","gravatar_id":"3f582b2bc3caf0d7074e85cdf2046a0f","login":"steakknife","avatar_url":"https://secure.gravatar.com/avatar/3f582b2bc3caf0d7074e85cdf2046a0f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":224304},"description":"basic ruby pre-commit hook","created_at":"2012-05-19T03:05:45Z","id":"2728802"},{"updated_at":"2012-05-19T03:04:59Z","url":"https://api.github.com/gists/2728800","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728800.git","files":{"site-name-slogan.php":{"type":"application/httpd-php","raw_url":"https://gist.github.com/raw/2728800/699d94d37aca0f392c2aa0888d981cf6605f92eb/site-name-slogan.php","size":781,"filename":"site-name-slogan.php","language":"PHP"}},"html_url":"https://gist.github.com/2728800","git_push_url":"git@gist.github.com:2728800.git","user":{"url":"https://api.github.com/users/shovon","gravatar_id":"2edd809f45e37c99eefbd6e7c969b52a","login":"shovon","avatar_url":"https://secure.gravatar.com/avatar/2edd809f45e37c99eefbd6e7c969b52a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":284576},"description":"This is how to display the site's name on Drupal.","created_at":"2012-05-19T03:04:59Z","id":"2728800"},{"updated_at":"2012-05-19T03:04:00Z","url":"https://api.github.com/gists/2728798","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728798.git","files":{"gistfile1.js":{"type":"application/javascript","raw_url":"https://gist.github.com/raw/2728798/839b901aeab26cc01e38cefe56b13bcd5521a047/gistfile1.js","size":516,"filename":"gistfile1.js","language":"JavaScript"}},"html_url":"https://gist.github.com/2728798","git_push_url":"git@gist.github.com:2728798.git","user":{"url":"https://api.github.com/users/hxgdzyuyi","gravatar_id":"7147355364e2d40866e04cd2240c1ea8","login":"hxgdzyuyi","avatar_url":"https://secure.gravatar.com/avatar/7147355364e2d40866e04cd2240c1ea8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":163671},"description":"自动跳转到广播页","created_at":"2012-05-19T03:04:00Z","id":"2728798"},{"updated_at":"2012-05-19T03:03:18Z","url":"https://api.github.com/gists/2728797","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728797.git","files":{"ReplaceMore.scpt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728797/1eca6d122ae4dbf2693275c42cf84330bdf9e3e2/ReplaceMore.scpt","size":804,"filename":"ReplaceMore.scpt","language":"AppleScript"}},"html_url":"https://gist.github.com/2728797","git_push_url":"git@gist.github.com:2728797.git","user":{"url":"https://api.github.com/users/azur256","gravatar_id":"83c061569bd6f20ff8e31262759fff62","login":"azur256","avatar_url":"https://secure.gravatar.com/avatar/83c061569bd6f20ff8e31262759fff62?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1566752},"description":"Replace more tag.","created_at":"2012-05-19T03:03:18Z","id":"2728797"},{"updated_at":"2012-05-19T03:03:16Z","url":"https://api.github.com/gists/2728796","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728796.git","files":{".gitignore":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728796/f59ec20aabf5842d237244ece8c81ab184faeac1/.gitignore","size":1,"filename":".gitignore","language":null},"Default (OSX).sublime-keymap":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728796/506c4285889fd4fc03ba528c1c513033302387fd/Default (OSX).sublime-keymap","size":656,"filename":"Default (OSX).sublime-keymap","language":null},"Global.sublime-settings":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728796/3bda756d25d8fce508283e0657f648eea0b1cea4/Global.sublime-settings","size":544,"filename":"Global.sublime-settings","language":null},"Base File.sublime-settings":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728796/7bc9db091b59e013cba94f72d5fc9a08b3cbdbaa/Base File.sublime-settings","size":317,"filename":"Base File.sublime-settings","language":null}},"html_url":"https://gist.github.com/2728796","git_push_url":"git@gist.github.com:2728796.git","user":{"url":"https://api.github.com/users/dariongg","gravatar_id":"bc78aea61cd6c0769c2172e6954ed922","login":"dariongg","avatar_url":"https://secure.gravatar.com/avatar/bc78aea61cd6c0769c2172e6954ed922?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1194592},"description":"My Sublime settings","created_at":"2012-05-19T03:03:16Z","id":"2728796"},{"updated_at":"2012-05-19T03:01:25Z","url":"https://api.github.com/gists/2728793","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728793.git","files":{"makefile":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728793/f44b7828cc9412e7e909cab3b6593bc4a4c7ab4d/makefile","size":291,"filename":"makefile","language":"Makefile"},"epolltest.c":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728793/79b891652e540109a21cc1dab5eb703b8b6f9011/epolltest.c","size":5327,"filename":"epolltest.c","language":"C"}},"html_url":"https://gist.github.com/2728793","git_push_url":"git@gist.github.com:2728793.git","user":{"url":"https://api.github.com/users/maxdeliso","gravatar_id":"0bf2454bf0ca807891ec4f8947a99a61","login":"maxdeliso","avatar_url":"https://secure.gravatar.com/avatar/0bf2454bf0ca807891ec4f8947a99a61?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":713472},"description":"epolltest.c","created_at":"2012-05-19T03:01:25Z","id":"2728793"},{"updated_at":"2012-05-19T02:43:25Z","url":"https://api.github.com/gists/2728758","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728758.git","files":{"HintTextArea.js":{"type":"application/javascript","raw_url":"https://gist.github.com/raw/2728758/212f354a1114749b1da7921edd198b3ebd726605/HintTextArea.js","size":1389,"filename":"HintTextArea.js","language":"JavaScript"},"app.js":{"type":"application/javascript","raw_url":"https://gist.github.com/raw/2728758/a990d52ee95c134a801239c525219601faf79194/app.js","size":1289,"filename":"app.js","language":"JavaScript"}},"html_url":"https://gist.github.com/2728758","git_push_url":"git@gist.github.com:2728758.git","user":{"url":"https://api.github.com/users/dmarcelino","gravatar_id":"afab66b97eac5e941e62cb533d7ab655","login":"dmarcelino","avatar_url":"https://secure.gravatar.com/avatar/afab66b97eac5e941e62cb533d7ab655?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1280446},"description":"A Titanium Mobile implementation of a TextArea with hintText compatible with iOS","created_at":"2012-05-19T02:43:25Z","id":"2728758"},{"updated_at":"2012-05-19T02:42:34Z","url":"https://api.github.com/gists/2728754","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728754.git","files":{"Fetch.sublime-settings":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728754/72589d4f99025667d5747d120c1d2ce440ab3c70/Fetch.sublime-settings","size":3404,"filename":"Fetch.sublime-settings","language":null}},"html_url":"https://gist.github.com/2728754","git_push_url":"git@gist.github.com:2728754.git","user":{"url":"https://api.github.com/users/dariongg","gravatar_id":"bc78aea61cd6c0769c2172e6954ed922","login":"dariongg","avatar_url":"https://secure.gravatar.com/avatar/bc78aea61cd6c0769c2172e6954ed922?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1194592},"description":"sublime: fetch settings for sublime text 2","created_at":"2012-05-19T02:42:34Z","id":"2728754"},{"updated_at":"2012-05-19T02:42:26Z","url":"https://api.github.com/gists/2728751","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728751.git","files":{"fetch":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728751/a00f22cd91f53c86bdb95c33a84eaa73794b4249/fetch","size":3186,"filename":"fetch","language":null}},"html_url":"https://gist.github.com/2728751","git_push_url":"git@gist.github.com:2728751.git","user":{"url":"https://api.github.com/users/dariongg","gravatar_id":"bc78aea61cd6c0769c2172e6954ed922","login":"dariongg","avatar_url":"https://secure.gravatar.com/avatar/bc78aea61cd6c0769c2172e6954ed922?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1194592},"description":"Fetch Settings for Sublime Text 2","created_at":"2012-05-19T02:42:26Z","id":"2728751"},{"updated_at":"2012-05-19T02:49:47Z","url":"https://api.github.com/gists/2728748","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728748.git","files":{"dabblet.css":{"type":"text/css","raw_url":"https://gist.github.com/raw/2728748/ad40dcf5ca43cd0f9ed9b1f2a15334906512a2d9/dabblet.css","size":287,"filename":"dabblet.css","language":"CSS"},"dabblet.html":{"type":"text/html","raw_url":"https://gist.github.com/raw/2728748/31d7fbafcf0315d06130bce12d6fbdfedd800bb8/dabblet.html","size":93,"filename":"dabblet.html","language":"HTML"},"settings.json":{"type":"application/json","raw_url":"https://gist.github.com/raw/2728748/fb9b4820339c3ac92ed0ce73ce7827bbf23c860d/settings.json","size":79,"filename":"settings.json","language":"JSON"}},"html_url":"https://gist.github.com/2728748","git_push_url":"git@gist.github.com:2728748.git","user":{"url":"https://api.github.com/users/sebphfx","gravatar_id":"048caa6ac97019a60ee4ff4b28793fa2","login":"sebphfx","avatar_url":"https://secure.gravatar.com/avatar/048caa6ac97019a60ee4ff4b28793fa2?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":850967},"description":"TEST","created_at":"2012-05-19T02:41:53Z","id":"2728748"},{"updated_at":"2012-05-19T02:28:54Z","url":"https://api.github.com/gists/2728721","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728721.git","files":{"composer.json":{"type":"application/json","raw_url":"https://gist.github.com/raw/2728721/380a1e6943dbcec17f634ffd4e49797dfb9b597a/composer.json","size":2021,"filename":"composer.json","language":"JSON"}},"html_url":"https://gist.github.com/2728721","git_push_url":"git@gist.github.com:2728721.git","user":{"url":"https://api.github.com/users/zircote","gravatar_id":"31fbce06e38990bc2933f92809adaef6","login":"zircote","avatar_url":"https://secure.gravatar.com/avatar/31fbce06e38990bc2933f92809adaef6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":307960},"description":"Example Composer utlizing Zend Framework 1.11.9 via SVN","created_at":"2012-05-19T02:28:54Z","id":"2728721"},{"updated_at":"2012-05-19T02:26:09Z","url":"https://api.github.com/gists/2728716","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728716.git","files":{"build.sbt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728716/6c12cf8b5387a77fffe786eada4d76f71676eed3/build.sbt","size":156,"filename":"build.sbt","language":"Scala"}},"html_url":"https://gist.github.com/2728716","git_push_url":"git@gist.github.com:2728716.git","user":{"url":"https://api.github.com/users/Yasushi","gravatar_id":"090cc30a35022b07874503ac613230c9","login":"Yasushi","avatar_url":"https://secure.gravatar.com/avatar/090cc30a35022b07874503ac613230c9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":7523},"description":"Code snippet of build.sbt for Finagle 4.0.2 in Scala 2.9.1","created_at":"2012-05-19T02:26:09Z","id":"2728716"},{"updated_at":"2012-05-19T02:25:59Z","url":"https://api.github.com/gists/2728715","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728715.git","files":{"gistfile1.rb":{"type":"application/ruby","raw_url":"https://gist.github.com/raw/2728715/2c3e6dff2d2453e81d01f45deafcbff383a7d534/gistfile1.rb","size":4790,"filename":"gistfile1.rb","language":"Ruby"}},"html_url":"https://gist.github.com/2728715","git_push_url":"git@gist.github.com:2728715.git","user":{"url":"https://api.github.com/users/Asher-","gravatar_id":"7df7b1298469ef2cc384febe8cde00f0","login":"Asher-","avatar_url":"https://secure.gravatar.com/avatar/7df7b1298469ef2cc384febe8cde00f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":372276},"description":"","created_at":"2012-05-19T02:25:59Z","id":"2728715"},{"updated_at":"2012-05-19T02:24:50Z","url":"https://api.github.com/gists/2728705","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728705.git","files":{"revert.py":{"type":"application/python","raw_url":"https://gist.github.com/raw/2728705/19115b3dc4c49d0672da4817bed6cc4b1e6e7a09/revert.py","size":1821,"filename":"revert.py","language":"Python"}},"html_url":"https://gist.github.com/2728705","git_push_url":"git@gist.github.com:2728705.git","user":{"url":"https://api.github.com/users/marciomazza","gravatar_id":"18ea4c1e271c0b3ffca2da11df5191c4","login":"marciomazza","avatar_url":"https://secure.gravatar.com/avatar/18ea4c1e271c0b3ffca2da11df5191c4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":579665},"description":"reverting accidental replace 'tab' -> ' ' in collective.developermanual b59bd0","created_at":"2012-05-19T02:23:49Z","id":"2728705"},{"updated_at":"2012-05-19T02:23:05Z","url":"https://api.github.com/gists/2728701","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728701.git","files":{"gistfile1.cs":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728701/89b188e3966ae67cdcba8a024474337f6cf22a2d/gistfile1.cs","size":1228,"filename":"gistfile1.cs","language":"C#"}},"html_url":"https://gist.github.com/2728701","git_push_url":"git@gist.github.com:2728701.git","user":{"url":"https://api.github.com/users/pinzolo","gravatar_id":"3140de70ab04d8f9fc979447b0b4fb16","login":"pinzolo","avatar_url":"https://secure.gravatar.com/avatar/3140de70ab04d8f9fc979447b0b4fb16?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1542781},"description":"Typeクラス拡張","created_at":"2012-05-19T02:23:05Z","id":"2728701"},{"updated_at":"2012-05-19T02:22:25Z","url":"https://api.github.com/gists/2728699","comments":5,"public":true,"git_pull_url":"git://gist.github.com/2728699.git","files":{"updates.md":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728699/00963b41c91e89c37ed3bb1e38a67e571a51d929/updates.md","size":13611,"filename":"updates.md","language":"Markdown"}},"html_url":"https://gist.github.com/2728699","git_push_url":"git@gist.github.com:2728699.git","user":{"url":"https://api.github.com/users/wycats","gravatar_id":"428167a3ec72235ba971162924492609","login":"wycats","avatar_url":"https://secure.gravatar.com/avatar/428167a3ec72235ba971162924492609?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":4},"description":"","created_at":"2012-05-19T02:22:25Z","id":"2728699"},{"updated_at":"2012-05-19T02:22:03Z","url":"https://api.github.com/gists/2728697","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728697.git","files":{"gistfile1.rb":{"type":"application/ruby","raw_url":"https://gist.github.com/raw/2728697/2a09840b3d7139c47dca8fa2ab697622ba2797f5/gistfile1.rb","size":496,"filename":"gistfile1.rb","language":"Ruby"}},"html_url":"https://gist.github.com/2728697","git_push_url":"git@gist.github.com:2728697.git","user":{"url":"https://api.github.com/users/Asher-","gravatar_id":"7df7b1298469ef2cc384febe8cde00f0","login":"Asher-","avatar_url":"https://secure.gravatar.com/avatar/7df7b1298469ef2cc384febe8cde00f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":372276},"description":"","created_at":"2012-05-19T02:22:03Z","id":"2728697"},{"updated_at":"2012-05-19T02:19:44Z","url":"https://api.github.com/gists/2728688","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728688.git","files":{"infix_calc.py":{"type":"application/python","raw_url":"https://gist.github.com/raw/2728688/9b652f29d7bd366e45fb36fabcc7716ecdb5e626/infix_calc.py","size":2784,"filename":"infix_calc.py","language":"Python"}},"html_url":"https://gist.github.com/2728688","git_push_url":"git@gist.github.com:2728688.git","user":{"url":"https://api.github.com/users/AnthonyReid99","gravatar_id":"e4cf9bbab57f661fc76f4d61b4867ab2","login":"AnthonyReid99","avatar_url":"https://secure.gravatar.com/avatar/e4cf9bbab57f661fc76f4d61b4867ab2?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1650435},"description":"","created_at":"2012-05-19T02:19:44Z","id":"2728688"},{"updated_at":"2012-05-19T02:17:32Z","url":"https://api.github.com/gists/2728683","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728683.git","files":{"gistfile1.rb":{"type":"application/ruby","raw_url":"https://gist.github.com/raw/2728683/d498fcadc2eb9f37054f7781936242ee197517b5/gistfile1.rb","size":560,"filename":"gistfile1.rb","language":"Ruby"}},"html_url":"https://gist.github.com/2728683","git_push_url":"git@gist.github.com:2728683.git","user":{"url":"https://api.github.com/users/Asher-","gravatar_id":"7df7b1298469ef2cc384febe8cde00f0","login":"Asher-","avatar_url":"https://secure.gravatar.com/avatar/7df7b1298469ef2cc384febe8cde00f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":372276},"description":"","created_at":"2012-05-19T02:17:32Z","id":"2728683"},{"updated_at":"2012-05-19T02:14:44Z","url":"https://api.github.com/gists/2728677","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728677.git","files":{"questions.py":{"type":"application/python","raw_url":"https://gist.github.com/raw/2728677/a03f6658f2fea54558001ecaf0dca97b87563f5f/questions.py","size":895,"filename":"questions.py","language":"Python"}},"html_url":"https://gist.github.com/2728677","git_push_url":"git@gist.github.com:2728677.git","user":{"url":"https://api.github.com/users/occam98","gravatar_id":"034f0b7952e33bf8195dd0a82b6dfe82","login":"occam98","avatar_url":"https://secure.gravatar.com/avatar/034f0b7952e33bf8195dd0a82b6dfe82?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":882807},"description":"Question counter","created_at":"2012-05-19T02:14:44Z","id":"2728677"},{"updated_at":"2012-05-19T02:06:22Z","url":"https://api.github.com/gists/2728649","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728649.git","files":{"recursive.sh":{"type":"application/sh","raw_url":"https://gist.github.com/raw/2728649/eec5db0c2c506b6a529b120f36325db6864ea47a/recursive.sh","size":704,"filename":"recursive.sh","language":"Shell"}},"html_url":"https://gist.github.com/2728649","git_push_url":"git@gist.github.com:2728649.git","user":{"url":"https://api.github.com/users/jou4","gravatar_id":"6f13ec914c1a19920d00b87f76e604be","login":"jou4","avatar_url":"https://secure.gravatar.com/avatar/6f13ec914c1a19920d00b87f76e604be?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":478777},"description":"対象のディレクトリを再帰的に走査して、ディレクトリ名変更やファイル内の文字列置換を行うスクリプト","created_at":"2012-05-19T02:06:22Z","id":"2728649"},{"updated_at":"2012-05-19T02:06:04Z","url":"https://api.github.com/gists/2728640","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728640.git","files":{"dabblet.css":{"type":"text/css","raw_url":"https://gist.github.com/raw/2728640/7c33d47b2aad36ae0b592f52a6e4479613661845/dabblet.css","size":563,"filename":"dabblet.css","language":"CSS"},"dabblet.html":{"type":"text/html","raw_url":"https://gist.github.com/raw/2728640/979bf5faf8256779e2ee5e14468133b15b722aec/dabblet.html","size":43,"filename":"dabblet.html","language":"HTML"},"settings.json":{"type":"application/json","raw_url":"https://gist.github.com/raw/2728640/f9b473b3380e302ad0c707460c59a541870e0d3b/settings.json","size":79,"filename":"settings.json","language":"JSON"}},"html_url":"https://gist.github.com/2728640","git_push_url":"git@gist.github.com:2728640.git","user":{"url":"https://api.github.com/users/lucasmazza","gravatar_id":"450908b4010abbbf9eebc146ed4c0246","login":"lucasmazza","avatar_url":"https://secure.gravatar.com/avatar/450908b4010abbbf9eebc146ed4c0246?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":80978},"description":"Untitled","created_at":"2012-05-19T02:06:04Z","id":"2728640"},{"updated_at":"2012-05-19T02:05:12Z","url":"https://api.github.com/gists/2728625","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728625.git","files":{"underscoreR.coffee":{"type":"text/coffescript","raw_url":"https://gist.github.com/raw/2728625/62ace4310f3e1ad79c184765af7941efaeafa2a9/underscoreR.coffee","size":769,"filename":"underscoreR.coffee","language":"CoffeeScript"}},"html_url":"https://gist.github.com/2728625","git_push_url":"git@gist.github.com:2728625.git","user":{"url":"https://api.github.com/users/bpartridge","gravatar_id":"fdf9c315a72fb628cf3f0c578d6b7210","login":"bpartridge","avatar_url":"https://secure.gravatar.com/avatar/fdf9c315a72fb628cf3f0c578d6b7210?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":20748},"description":"Add CoffeeScript friendly argument order to Underscore.js","created_at":"2012-05-19T02:05:12Z","id":"2728625"},{"updated_at":"2012-05-19T02:04:42Z","url":"https://api.github.com/gists/2728620","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728620.git","files":{"phantom-sample.js":{"type":"application/javascript","raw_url":"https://gist.github.com/raw/2728620/898d04b4b0654c184795efb1114fa7391cdd5f21/phantom-sample.js","size":564,"filename":"phantom-sample.js","language":"JavaScript"}},"html_url":"https://gist.github.com/2728620","git_push_url":"git@gist.github.com:2728620.git","user":{"url":"https://api.github.com/users/ryuone","gravatar_id":"2f7ac74a21a0719eeea285fc5abcaaec","login":"ryuone","avatar_url":"https://secure.gravatar.com/avatar/2f7ac74a21a0719eeea285fc5abcaaec?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":78976},"description":"phantom-sample.js","created_at":"2012-05-19T02:04:42Z","id":"2728620"},{"updated_at":"2012-05-19T02:03:21Z","url":"https://api.github.com/gists/2728615","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728615.git","files":{".vimrc":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728615/26839c061648cf5bb1e3435656f2e7f4e12ea560/.vimrc","size":1574,"filename":".vimrc","language":"VimL"}},"html_url":"https://gist.github.com/2728615","git_push_url":"git@gist.github.com:2728615.git","user":{"url":"https://api.github.com/users/ikaro1192","gravatar_id":"c219736220e0b8ccdb10e6fe7278ffaa","login":"ikaro1192","avatar_url":"https://secure.gravatar.com/avatar/c219736220e0b8ccdb10e6fe7278ffaa?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1239660},"description":"vimrcのバックアップ","created_at":"2012-05-19T02:03:21Z","id":"2728615"},{"updated_at":"2012-05-19T02:11:44Z","url":"https://api.github.com/gists/2728614","comments":1,"public":true,"git_pull_url":"git://gist.github.com/2728614.git","files":{"gistfile1.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728614/cfd561370a756d712d761f75b98ab502867be40b/gistfile1.txt","size":890,"filename":"gistfile1.txt","language":"Text"}},"html_url":"https://gist.github.com/2728614","git_push_url":"git@gist.github.com:2728614.git","user":{"url":"https://api.github.com/users/dpereira","gravatar_id":"f8c1635e7a185ddb5a0e447e2e010778","login":"dpereira","avatar_url":"https://secure.gravatar.com/avatar/f8c1635e7a185ddb5a0e447e2e010778?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":309799},"description":"Python decorators as per test pre-condition setUp (bonus: they are composable)","created_at":"2012-05-19T02:03:20Z","id":"2728614"}] + +https +GET +api.github.com +None +/gists/public?page=4 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4975'), ('content-length', '28308'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"1fcb97854c213ddcae432893e0cfee55"'), ('date', 'Sat, 19 May 2012 06:25:55 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-19T01:58:51Z","url":"https://api.github.com/gists/2728565","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728565.git","git_push_url":"git@gist.github.com:2728565.git","files":{"brew_doctor":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728565/b672fa29b0e9ece1289df560a9d0400c11e43d24/brew_doctor","size":42,"filename":"brew_doctor","language":null},"install_output":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728565/0ea63c66353a52f0598df527ee6fe836e6e81d61/install_output","size":486,"filename":"install_output","language":null}},"html_url":"https://gist.github.com/2728565","user":{"url":"https://api.github.com/users/rwestafer","gravatar_id":"ce07029cb168b49c7e8b200a3eee68ed","avatar_url":"https://secure.gravatar.com/avatar/ce07029cb168b49c7e8b200a3eee68ed?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"rwestafer","id":844251},"description":"brew install octave","created_at":"2012-05-19T01:58:51Z","id":"2728565"},{"updated_at":"2012-05-19T01:55:44Z","url":"https://api.github.com/gists/2728564","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728564.git","git_push_url":"git@gist.github.com:2728564.git","files":{"reultado.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728564/8a55b8d0039a9a6c7eb6c0a342849d1daee47219/reultado.txt","size":182,"filename":"reultado.txt","language":"Text"},"beck.rb":{"type":"application/ruby","raw_url":"https://gist.github.com/raw/2728564/d98f5ca6a26f29e40d30be809a724bbfa007f042/beck.rb","size":331,"filename":"beck.rb","language":"Ruby"}},"html_url":"https://gist.github.com/2728564","user":{"url":"https://api.github.com/users/dmitrynix","gravatar_id":"1c667bd569578905ca81c7af804083db","avatar_url":"https://secure.gravatar.com/avatar/1c667bd569578905ca81c7af804083db?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"dmitrynix","id":53300},"description":"","created_at":"2012-05-19T01:55:44Z","id":"2728564"},{"updated_at":"2012-05-19T01:49:21Z","url":"https://api.github.com/gists/2728554","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728554.git","git_push_url":"git@gist.github.com:2728554.git","files":{"gistfile1.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728554/a92d2cff5a1750ffd34b950302fd2d794e07d767/gistfile1.txt","size":654,"filename":"gistfile1.txt","language":"Text"}},"html_url":"https://gist.github.com/2728554","user":{"url":"https://api.github.com/users/dmitrynix","gravatar_id":"1c667bd569578905ca81c7af804083db","avatar_url":"https://secure.gravatar.com/avatar/1c667bd569578905ca81c7af804083db?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"dmitrynix","id":53300},"description":"","created_at":"2012-05-19T01:49:21Z","id":"2728554"},{"updated_at":"2012-05-19T01:42:04Z","url":"https://api.github.com/gists/2728523","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728523.git","git_push_url":"git@gist.github.com:2728523.git","files":{"gistfile1.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728523/b14dda8e226fcb461e7b4f9370c9a2dcb4165417/gistfile1.txt","size":673,"filename":"gistfile1.txt","language":"Text"}},"html_url":"https://gist.github.com/2728523","user":{"url":"https://api.github.com/users/mikegrb","gravatar_id":"d616fde29ac0c71b9388a98a8c418bf6","avatar_url":"https://secure.gravatar.com/avatar/d616fde29ac0c71b9388a98a8c418bf6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"mikegrb","id":98198},"description":"","created_at":"2012-05-19T01:42:04Z","id":"2728523"},{"updated_at":"2012-05-19T01:39:29Z","url":"https://api.github.com/gists/2728519","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728519.git","git_push_url":"git@gist.github.com:2728519.git","files":{"gistfile1.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728519/722eb8117f56805c4c9203a45d35ac254d6277e7/gistfile1.txt","size":97,"filename":"gistfile1.txt","language":"Text"}},"html_url":"https://gist.github.com/2728519","user":{"url":"https://api.github.com/users/nateluzod","gravatar_id":"91af41dd33380f98217b8f18f0afa11b","avatar_url":"https://secure.gravatar.com/avatar/91af41dd33380f98217b8f18f0afa11b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"nateluzod","id":514800},"description":"Zebra Striping with JSP","created_at":"2012-05-19T01:39:29Z","id":"2728519"},{"updated_at":"2012-05-19T01:36:41Z","url":"https://api.github.com/gists/2728511","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728511.git","git_push_url":"git@gist.github.com:2728511.git","files":{"benchmark.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728511/c104341058b04e8df33bdc7c5caca0824fc9f140/benchmark.txt","size":137,"filename":"benchmark.txt","language":"Text"},"json2csv.py":{"type":"application/python","raw_url":"https://gist.github.com/raw/2728511/65f9e62c6c63183acfd8f61198c6ce959062f5be/json2csv.py","size":526,"filename":"json2csv.py","language":"Python"}},"html_url":"https://gist.github.com/2728511","user":{"url":"https://api.github.com/users/thinkjson","gravatar_id":"40b11c51061d8ac16284827aaa43ee58","avatar_url":"https://secure.gravatar.com/avatar/40b11c51061d8ac16284827aaa43ee58?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"thinkjson","id":200365},"description":"JSON to CSV conversion benchmarking","created_at":"2012-05-19T01:36:41Z","id":"2728511"},{"updated_at":"2012-05-19T01:38:59Z","url":"https://api.github.com/gists/2728497","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728497.git","git_push_url":"git@gist.github.com:2728497.git","files":{"gistfile1.rkt":{"type":"text/scheme","raw_url":"https://gist.github.com/raw/2728497/2f98db09c722fdc1b67e9ee36e2a74d48c9f77d0/gistfile1.rkt","size":1606,"filename":"gistfile1.rkt","language":"Racket"}},"html_url":"https://gist.github.com/2728497","user":{"url":"https://api.github.com/users/danking","gravatar_id":"04f0f7c2e53e406e17528b434a96b0f3","avatar_url":"https://secure.gravatar.com/avatar/04f0f7c2e53e406e17528b434a96b0f3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"danking","id":106194},"description":"A hack to get multiple auto-values","created_at":"2012-05-19T01:30:49Z","id":"2728497"},{"updated_at":"2012-05-19T02:00:16Z","url":"https://api.github.com/gists/2728496","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728496.git","git_push_url":"git@gist.github.com:2728496.git","files":{".gitignore":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728496/dfe05c7e9d7ecb6646d47fa66a5f86bce73abb80/.gitignore","size":79,"filename":".gitignore","language":null}},"html_url":"https://gist.github.com/2728496","user":{"url":"https://api.github.com/users/mfindlater","gravatar_id":"0192c477480a42e2b270fda07542ac25","avatar_url":"https://secure.gravatar.com/avatar/0192c477480a42e2b270fda07542ac25?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"mfindlater","id":1313463},"description":"Unity .gitignore","created_at":"2012-05-19T01:30:01Z","id":"2728496"},{"updated_at":"2012-05-19T01:29:51Z","url":"https://api.github.com/gists/2728495","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728495.git","git_push_url":"git@gist.github.com:2728495.git","files":{"printTreeLevelOrder.cpp":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728495/b1370c0e911cffe195031a434b769595bed2fd4e/printTreeLevelOrder.cpp","size":1001,"filename":"printTreeLevelOrder.cpp","language":"C++"},"printAlmostCompleteTreeLeverOrder.cpp":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728495/7c52ea9408481c86a23f1ee17dd71fa0634c49a0/printAlmostCompleteTreeLeverOrder.cpp","size":1099,"filename":"printAlmostCompleteTreeLeverOrder.cpp","language":"C++"}},"html_url":"https://gist.github.com/2728495","user":{"url":"https://api.github.com/users/miggaiowski","gravatar_id":"0a3d19c5aab8adac0a7eb8746568f967","avatar_url":"https://secure.gravatar.com/avatar/0a3d19c5aab8adac0a7eb8746568f967?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"miggaiowski","id":473201},"description":"print tree by level order","created_at":"2012-05-19T01:29:51Z","id":"2728495"},{"updated_at":"2012-05-19T01:27:15Z","url":"https://api.github.com/gists/2728487","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728487.git","git_push_url":"git@gist.github.com:2728487.git","files":{"gistfile1.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728487/50d169c111d3bec00d4f62b37f43c857c6642011/gistfile1.txt","size":4756,"filename":"gistfile1.txt","language":"Text"}},"html_url":"https://gist.github.com/2728487","user":{"url":"https://api.github.com/users/zentrification","gravatar_id":"1a8020e101199de55c1b3b726f342321","avatar_url":"https://secure.gravatar.com/avatar/1a8020e101199de55c1b3b726f342321?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"zentrification","id":46617},"description":"","created_at":"2012-05-19T01:27:15Z","id":"2728487"},{"updated_at":"2012-05-19T01:21:29Z","url":"https://api.github.com/gists/2728479","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728479.git","git_push_url":"git@gist.github.com:2728479.git","files":{"TDD.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728479/29ad479bb2dd86e85957a568c795ef04369efa9e/TDD.txt","size":762,"filename":"TDD.txt","language":"Text"}},"html_url":"https://gist.github.com/2728479","user":{"url":"https://api.github.com/users/ryuone","gravatar_id":"2f7ac74a21a0719eeea285fc5abcaaec","avatar_url":"https://secure.gravatar.com/avatar/2f7ac74a21a0719eeea285fc5abcaaec?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ryuone","id":78976},"description":"TDD","created_at":"2012-05-19T01:21:29Z","id":"2728479"},{"updated_at":"2012-05-19T01:17:06Z","url":"https://api.github.com/gists/2728469","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728469.git","git_push_url":"git@gist.github.com:2728469.git","files":{"gistfile1.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728469/da9eedec484613342d9725cd95db955d49fa947b/gistfile1.txt","size":15323,"filename":"gistfile1.txt","language":"Text"}},"html_url":"https://gist.github.com/2728469","user":{"url":"https://api.github.com/users/jesboat","gravatar_id":"deffb4efbaa060f0a39f5ed79844e2d4","avatar_url":"https://secure.gravatar.com/avatar/deffb4efbaa060f0a39f5ed79844e2d4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jesboat","id":112358},"description":"Packet trace for ServerFault question http://serverfault.com/questions/390558","created_at":"2012-05-19T01:17:06Z","id":"2728469"},{"updated_at":"2012-05-19T01:15:23Z","url":"https://api.github.com/gists/2728467","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728467.git","git_push_url":"git@gist.github.com:2728467.git","files":{"hoge.rb":{"type":"application/ruby","raw_url":"https://gist.github.com/raw/2728467/c9cd50de6b6599cd0c802f66d6497d82966248c8/hoge.rb","size":44,"filename":"hoge.rb","language":"Ruby"}},"html_url":"https://gist.github.com/2728467","user":{"url":"https://api.github.com/users/ogawaso","gravatar_id":"2f66898c0b4ae9128b684516225f74aa","avatar_url":"https://secure.gravatar.com/avatar/2f66898c0b4ae9128b684516225f74aa?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ogawaso","id":39783},"description":"","created_at":"2012-05-19T01:15:23Z","id":"2728467"},{"updated_at":"2012-05-19T01:12:24Z","url":"https://api.github.com/gists/2728462","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728462.git","git_push_url":"git@gist.github.com:2728462.git","files":{"bane.rb":{"type":"application/ruby","raw_url":"https://gist.github.com/raw/2728462/78ade2748d032cc715e23c8817375bb984bd2b1d/bane.rb","size":192,"filename":"bane.rb","language":"Ruby"}},"html_url":"https://gist.github.com/2728462","user":{"url":"https://api.github.com/users/Vaguery","gravatar_id":"db04d40ecceb0a4c0683a60462d11794","avatar_url":"https://secure.gravatar.com/avatar/db04d40ecceb0a4c0683a60462d11794?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"Vaguery","id":81171},"description":"An actually impossible Cargo-Bot puzzle...?","created_at":"2012-05-19T01:12:24Z","id":"2728462"},{"updated_at":"2012-05-19T01:10:01Z","url":"https://api.github.com/gists/2728459","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728459.git","git_push_url":"git@gist.github.com:2728459.git","files":{"dabblet.css":{"type":"text/css","raw_url":"https://gist.github.com/raw/2728459/fcce53fa7e8b1e6c54925dd447eee11d04f4fcac/dabblet.css","size":497,"filename":"dabblet.css","language":"CSS"},"dabblet.html":{"type":"text/html","raw_url":"https://gist.github.com/raw/2728459/4d3163ebd7daa36553c07dccfd1669080ca481fa/dabblet.html","size":125,"filename":"dabblet.html","language":"HTML"},"settings.json":{"type":"application/json","raw_url":"https://gist.github.com/raw/2728459/7816f94e27f5880305fe4e93fc053ffdb62b4754/settings.json","size":88,"filename":"settings.json","language":"JSON"}},"html_url":"https://gist.github.com/2728459","user":{"url":"https://api.github.com/users/37mm","gravatar_id":"72cbc6763e747df6f4b1504533ed3174","avatar_url":"https://secure.gravatar.com/avatar/72cbc6763e747df6f4b1504533ed3174?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"37mm","id":1298921},"description":"Centering Test","created_at":"2012-05-19T01:10:01Z","id":"2728459"},{"updated_at":"2012-05-19T01:07:12Z","url":"https://api.github.com/gists/2728453","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728453.git","git_push_url":"git@gist.github.com:2728453.git","files":{"pathing.example.php":{"type":"application/httpd-php","raw_url":"https://gist.github.com/raw/2728453/1fd4ed05b0bd03a5eb2d9ef7383e031ceec2dbab/pathing.example.php","size":2995,"filename":"pathing.example.php","language":"PHP"},"pathing.php":{"type":"application/httpd-php","raw_url":"https://gist.github.com/raw/2728453/2bc4790acd815d6b1817ab82656b81af94d6c7f1/pathing.php","size":3377,"filename":"pathing.php","language":"PHP"}},"html_url":"https://gist.github.com/2728453","user":{"url":"https://api.github.com/users/alixaxel","gravatar_id":"be9e4cbcfa96b7e4ad4bc28c88cfdb2b","avatar_url":"https://secure.gravatar.com/avatar/be9e4cbcfa96b7e4ad4bc28c88cfdb2b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"alixaxel","id":262782},"description":"","created_at":"2012-05-19T01:07:12Z","id":"2728453"},{"updated_at":"2012-05-19T01:06:03Z","url":"https://api.github.com/gists/2728451","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728451.git","git_push_url":"git@gist.github.com:2728451.git","files":{"rfc1918.rb":{"type":"application/ruby","raw_url":"https://gist.github.com/raw/2728451/df529e59919f90cc44e91aa178fd39f60a637a16/rfc1918.rb","size":758,"filename":"rfc1918.rb","language":"Ruby"}},"html_url":"https://gist.github.com/2728451","user":{"url":"https://api.github.com/users/bmc","gravatar_id":"21e10bea0de20a200e5c7801e10227a9","avatar_url":"https://secure.gravatar.com/avatar/21e10bea0de20a200e5c7801e10227a9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bmc","id":23894},"description":"Quick and dirty Ruby module to determine if IP address (as string) is RFC-1918 address","created_at":"2012-05-19T01:06:03Z","id":"2728451"},{"updated_at":"2012-05-19T00:53:36Z","url":"https://api.github.com/gists/2728420","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728420.git","git_push_url":"git@gist.github.com:2728420.git","files":{"dabblet.css":{"type":"text/css","raw_url":"https://gist.github.com/raw/2728420/993553d3188fffcfbae007dbc2affa216754156d/dabblet.css","size":689,"filename":"dabblet.css","language":"CSS"},"dabblet.html":{"type":"text/html","raw_url":"https://gist.github.com/raw/2728420/2abe752bfe29d0dd2a7bb3d5f2f619fffe530170/dabblet.html","size":162,"filename":"dabblet.html","language":"HTML"},"settings.json":{"type":"application/json","raw_url":"https://gist.github.com/raw/2728420/7816f94e27f5880305fe4e93fc053ffdb62b4754/settings.json","size":88,"filename":"settings.json","language":"JSON"}},"html_url":"https://gist.github.com/2728420","user":{"url":"https://api.github.com/users/37mm","gravatar_id":"72cbc6763e747df6f4b1504533ed3174","avatar_url":"https://secure.gravatar.com/avatar/72cbc6763e747df6f4b1504533ed3174?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"37mm","id":1298921},"description":"Centering Tests","created_at":"2012-05-19T00:53:36Z","id":"2728420"},{"updated_at":"2012-05-19T00:47:32Z","url":"https://api.github.com/gists/2728389","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728389.git","git_push_url":"git@gist.github.com:2728389.git","files":{"gistfile1.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728389/92cb0a7255249b2f94d9d04e51d40e205dba230b/gistfile1.txt","size":1899,"filename":"gistfile1.txt","language":"Text"}},"html_url":"https://gist.github.com/2728389","user":{"url":"https://api.github.com/users/qmx","gravatar_id":"684b4bfe97a40454db104abcb601e375","avatar_url":"https://secure.gravatar.com/avatar/684b4bfe97a40454db104abcb601e375?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"qmx","id":66734},"description":"","created_at":"2012-05-19T00:47:32Z","id":"2728389"},{"updated_at":"2012-05-19T00:46:35Z","url":"https://api.github.com/gists/2728385","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728385.git","git_push_url":"git@gist.github.com:2728385.git","files":{"gistfile1.js":{"type":"application/javascript","raw_url":"https://gist.github.com/raw/2728385/5fbfa6cede70702fb87f368028c510c880948be8/gistfile1.js","size":309,"filename":"gistfile1.js","language":"JavaScript"}},"html_url":"https://gist.github.com/2728385","user":{"url":"https://api.github.com/users/xupeng","gravatar_id":"44fdbd3419f6ce93976fcfa86d599a70","avatar_url":"https://secure.gravatar.com/avatar/44fdbd3419f6ce93976fcfa86d599a70?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"xupeng","id":259658},"description":"自动跳转到广播页","created_at":"2012-05-19T00:46:35Z","id":"2728385"},{"updated_at":"2012-05-19T00:45:40Z","url":"https://api.github.com/gists/2728382","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728382.git","git_push_url":"git@gist.github.com:2728382.git","files":{"dabblet.css":{"type":"text/css","raw_url":"https://gist.github.com/raw/2728382/4a6acf3f4153514685a7527a33a4deaafb62fd5f/dabblet.css","size":717,"filename":"dabblet.css","language":"CSS"},"dabblet.html":{"type":"text/html","raw_url":"https://gist.github.com/raw/2728382/12623c75e860747639b043bffa60d49a0bfa41a1/dabblet.html","size":161,"filename":"dabblet.html","language":"HTML"},"settings.json":{"type":"application/json","raw_url":"https://gist.github.com/raw/2728382/7816f94e27f5880305fe4e93fc053ffdb62b4754/settings.json","size":88,"filename":"settings.json","language":"JSON"}},"html_url":"https://gist.github.com/2728382","user":{"url":"https://api.github.com/users/37mm","gravatar_id":"72cbc6763e747df6f4b1504533ed3174","avatar_url":"https://secure.gravatar.com/avatar/72cbc6763e747df6f4b1504533ed3174?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"37mm","id":1298921},"description":"Centering Tests","created_at":"2012-05-19T00:45:40Z","id":"2728382"},{"updated_at":"2012-05-19T00:45:37Z","url":"https://api.github.com/gists/2728380","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728380.git","git_push_url":"git@gist.github.com:2728380.git","files":{"correlation_examples.R":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728380/8306c62b3fea036155cff1104e7bae4e76da253a/correlation_examples.R","size":2586,"filename":"correlation_examples.R","language":"R"},"run.py":{"type":"application/python","raw_url":"https://gist.github.com/raw/2728380/f15c99f5747110d465b878f26dd81df3e2041c7c/run.py","size":2291,"filename":"run.py","language":"Python"},"correlation_examples.py":{"type":"application/python","raw_url":"https://gist.github.com/raw/2728380/b70a10abf9e6495aafb491e46d5ed69200a5e470/correlation_examples.py","size":4140,"filename":"correlation_examples.py","language":"Python"}},"html_url":"https://gist.github.com/2728380","user":{"url":"https://api.github.com/users/joskid","gravatar_id":"74231318b03600599b999e675a5c31b4","avatar_url":"https://secure.gravatar.com/avatar/74231318b03600599b999e675a5c31b4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"joskid","id":644086},"description":"Examples of dependence beyond correlation","created_at":"2012-05-19T00:45:37Z","id":"2728380"},{"updated_at":"2012-05-19T00:42:59Z","url":"https://api.github.com/gists/2728373","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728373.git","git_push_url":"git@gist.github.com:2728373.git","files":{"gistfile1.rkt":{"type":"text/scheme","raw_url":"https://gist.github.com/raw/2728373/846e565c7770e34f6f8c246ac1dad24ce52a105e/gistfile1.rkt","size":977,"filename":"gistfile1.rkt","language":"Racket"}},"html_url":"https://gist.github.com/2728373","user":{"url":"https://api.github.com/users/danking","gravatar_id":"04f0f7c2e53e406e17528b434a96b0f3","avatar_url":"https://secure.gravatar.com/avatar/04f0f7c2e53e406e17528b434a96b0f3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"danking","id":106194},"description":"","created_at":"2012-05-19T00:42:59Z","id":"2728373"},{"updated_at":"2012-05-19T00:40:31Z","url":"https://api.github.com/gists/2728371","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728371.git","git_push_url":"git@gist.github.com:2728371.git","files":{"emacs.rb":{"type":"application/ruby","raw_url":"https://gist.github.com/raw/2728371/759965425b353412ed0169c7a024dc4f6e22aab2/emacs.rb","size":3450,"filename":"emacs.rb","language":"Ruby"}},"html_url":"https://gist.github.com/2728371","user":{"url":"https://api.github.com/users/opennista1","gravatar_id":"e523b5425d1e9814221e3c1b6aed5276","avatar_url":"https://secure.gravatar.com/avatar/e523b5425d1e9814221e3c1b6aed5276?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"opennista1","id":1684080},"description":"Yet Another Emacs 23.4 homebrew Formula","created_at":"2012-05-19T00:40:31Z","id":"2728371"},{"updated_at":"2012-05-19T00:38:53Z","url":"https://api.github.com/gists/2728369","comments":1,"public":true,"git_pull_url":"git://gist.github.com/2728369.git","git_push_url":"git@gist.github.com:2728369.git","files":{"build.sbt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728369/a73fa89294fbdc7ed5b05a50345485569da8352d/build.sbt","size":238,"filename":"build.sbt","language":"Scala"}},"html_url":"https://gist.github.com/2728369","user":{"url":"https://api.github.com/users/kmizu","gravatar_id":"0cd46aa475288438b0b7f214b74321e3","avatar_url":"https://secure.gravatar.com/avatar/0cd46aa475288438b0b7f214b74321e3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"kmizu","id":97326},"description":"Code snippet of build.sbt for Finagle 4.0.2 in Scala 2.9.1","created_at":"2012-05-19T00:38:53Z","id":"2728369"},{"updated_at":"2012-05-19T00:37:08Z","url":"https://api.github.com/gists/2728360","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728360.git","git_push_url":"git@gist.github.com:2728360.git","files":{"gistfile1.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728360/548cc17c6bcdc36b3fb28d7002798ed856f9476f/gistfile1.txt","size":545,"filename":"gistfile1.txt","language":"Text"}},"html_url":"https://gist.github.com/2728360","user":{"url":"https://api.github.com/users/lkuper","gravatar_id":"07293d028e67783e7571b109dbedb472","avatar_url":"https://secure.gravatar.com/avatar/07293d028e67783e7571b109dbedb472?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"lkuper","id":535218},"description":"","created_at":"2012-05-19T00:37:08Z","id":"2728360"},{"updated_at":"2012-05-19T00:34:46Z","url":"https://api.github.com/gists/2728325","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728325.git","git_push_url":"git@gist.github.com:2728325.git","files":{"InterceptWithAttributeEntity2.cs":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728325/5adfaf1da715c87f0bb7c7647165705f8c2f8df2/InterceptWithAttributeEntity2.cs","size":3494,"filename":"InterceptWithAttributeEntity2.cs","language":"C#"}},"html_url":"https://gist.github.com/2728325","user":{"url":"https://api.github.com/users/jpolvora","gravatar_id":"1af1996c69c3c6016cbdec50a6c7caf0","avatar_url":"https://secure.gravatar.com/avatar/1af1996c69c3c6016cbdec50a6c7caf0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jpolvora","id":955554},"description":"InterceptWithAttributeEntity2","created_at":"2012-05-19T00:34:46Z","id":"2728325"},{"updated_at":"2012-05-19T00:34:16Z","url":"https://api.github.com/gists/2728316","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728316.git","git_push_url":"git@gist.github.com:2728316.git","files":{"Makefile.in":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728316/e48c49a7cf8d9080db9fde5c243d99bf3bdefc46/Makefile.in","size":636,"filename":"Makefile.in","language":null}},"html_url":"https://gist.github.com/2728316","user":{"url":"https://api.github.com/users/shujinarazaki","gravatar_id":"7cbf6733aa281603ea83b22ada147691","avatar_url":"https://secure.gravatar.com/avatar/7cbf6733aa281603ea83b22ada147691?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"shujinarazaki","id":997855},"description":"Emacs trunk/Makefile.in","created_at":"2012-05-19T00:34:16Z","id":"2728316"},{"updated_at":"2012-05-19T00:30:53Z","url":"https://api.github.com/gists/2728309","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728309.git","git_push_url":"git@gist.github.com:2728309.git","files":{"sphere.js":{"type":"application/javascript","raw_url":"https://gist.github.com/raw/2728309/685095bf3e1bd9888c857ca13b16908e42ca2a47/sphere.js","size":156,"filename":"sphere.js","language":"JavaScript"}},"html_url":"https://gist.github.com/2728309","user":{"url":"https://api.github.com/users/bmander","gravatar_id":"ffb24930250fe5b9dc676c63716ee085","avatar_url":"https://secure.gravatar.com/avatar/ffb24930250fe5b9dc676c63716ee085?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bmander","id":51985},"description":"jscad sphere","created_at":"2012-05-19T00:30:53Z","id":"2728309"},{"updated_at":"2012-05-19T00:29:11Z","url":"https://api.github.com/gists/2728306","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2728306.git","git_push_url":"git@gist.github.com:2728306.git","files":{"Component":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2728306/c247a20395c5c2dd20e67fca9300456e457fa17f/Component","size":147,"filename":"Component","language":null}},"html_url":"https://gist.github.com/2728306","user":{"url":"https://api.github.com/users/vladiim","gravatar_id":"5efae54b9db4f9a847b27f8baf9261db","avatar_url":"https://secure.gravatar.com/avatar/5efae54b9db4f9a847b27f8baf9261db?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"vladiim","id":701194},"description":"","created_at":"2012-05-19T00:29:11Z","id":"2728306"}] + diff --git a/lib/github/tests/ReplayData/Github.testGetGitignoreTemplate.txt b/lib/github/tests/ReplayData/Github.testGetGitignoreTemplate.txt new file mode 100644 index 0000000000..a8b01204c0 --- /dev/null +++ b/lib/github/tests/ReplayData/Github.testGetGitignoreTemplate.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/gitignore/templates/Python +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '367'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-remaining', '4990'), ('server', 'nginx'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"57aaf2580ebb3b8463d514285e0ca3dd"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Fri, 21 Dec 2012 19:56:02 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"source":"*.py[cod]\n\n# C extensions\n*.so\n\n# Packages\n*.egg\n*.egg-info\ndist\nbuild\neggs\nparts\nbin\nvar\nsdist\ndevelop-eggs\n.installed.cfg\nlib\nlib64\n\n# Installer logs\npip-log.txt\n\n# Unit test / coverage reports\n.coverage\n.tox\nnosetests.xml\n\n# Translations\n*.mo\n\n# Mr Developer\n.mr.developer.cfg\n.project\n.pydevproject\n","name":"Python"} + +https +GET +api.github.com +None +/gitignore/templates/C++ +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '165'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-remaining', '4989'), ('server', 'nginx'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d01fd87df4d9c3bc861c8ccf8f7aa9f0"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Fri, 21 Dec 2012 19:56:03 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"source":"# Compiled Object files\n*.slo\n*.lo\n*.o\n\n# Compiled Dynamic libraries\n*.so\n*.dylib\n\n# Compiled Static libraries\n*.lai\n*.la\n*.a\n","name":"C++"} + diff --git a/lib/github/tests/ReplayData/Github.testGetGitignoreTemplates.txt b/lib/github/tests/ReplayData/Github.testGetGitignoreTemplates.txt new file mode 100644 index 0000000000..0f57b5cb23 --- /dev/null +++ b/lib/github/tests/ReplayData/Github.testGetGitignoreTemplates.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/gitignore/templates +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '757'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('x-ratelimit-remaining', '4993'), ('server', 'nginx'), ('connection', 'keep-alive'), ('etag', '"cc8e8df5d003cd489fd90931fa7f751a"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Fri, 21 Dec 2012 19:54:21 GMT'), ('content-type', 'application/json; charset=utf-8')] +["Actionscript","Android","AppceleratorTitanium","Autotools","Bancha","C","C++","CFWheels","CMake","CSharp","CakePHP","Clojure","CodeIgniter","Compass","Concrete5","Coq","Delphi","Django","Drupal","Erlang","ExpressionEngine","Finale","ForceDotCom","FuelPHP","GWT","Go","Grails","Haskell","Java","Jboss","Jekyll","Joomla","Jython","Kohana","LaTeX","Leiningen","LemonStand","Lilypond","Lithium","Magento","Maven","Node","OCaml","Objective-C","Opa","OracleForms","Perl","PlayFramework","Python","Qooxdoo","Qt","R","Rails","RhodesRhomobile","Ruby","Scala","Sdcc","SeamGen","SketchUp","SugarCRM","Symfony","Symfony2","SymphonyCMS","Target3001","Tasm","Textpattern","TurboGears2","Unity","VB.Net","Waf","Wordpress","Yii","ZendFramework","gcov","nanoc","opencart"] + diff --git a/lib/github/tests/ReplayData/Github.testGetHook.txt b/lib/github/tests/ReplayData/Github.testGetHook.txt new file mode 100644 index 0000000000..076c578980 --- /dev/null +++ b/lib/github/tests/ReplayData/Github.testGetHook.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/hooks/activecollab +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4999'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', 'b3cd8329-7f33-4611-84d1-4e2ecfd91812'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '191'), ('server', 'GitHub.com'), ('last-modified', 'Wed, 04 Sep 2013 18:03:57 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"678dd8e392d70d3a284c3d47221ec6f0"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 11 Sep 2013 21:10:37 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378937437')] +{"name":"activecollab","events":["push"],"supported_events":["push"],"schema":[["string","url"],["string","token"],["string","project_id"],["string","milestone_id"],["string","category_id"]]} + diff --git a/lib/github/tests/ReplayData/Github.testGetHooks.txt b/lib/github/tests/ReplayData/Github.testGetHooks.txt new file mode 100644 index 0000000000..290e8d51be --- /dev/null +++ b/lib/github/tests/ReplayData/Github.testGetHooks.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/hooks +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4999'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '16567'), ('server', 'nginx'), ('last-modified', 'Fri, 24 Aug 2012 07:05:12 GMT'), ('connection', 'keep-alive'), ('etag', '"eb52c03081d2fc22f26ed2718921e500"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Sat, 08 Sep 2012 17:26:28 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"name":"activecollab","schema":[["string","url"],["string","token"],["string","project_id"],["string","milestone_id"],["string","category_id"]],"events":["push"],"supported_events":["push"]},{"name":"acunote","schema":[["string","token"]],"events":["push"],"supported_events":["push"]},{"name":"agilebench","schema":[["string","token"],["string","project_id"]],"events":["push"],"supported_events":["push"]},{"name":"agilezen","schema":[["string","api_key"],["string","project_id"],["string","branches"]],"events":["push"],"supported_events":["push"]},{"name":"amqp","schema":[["string","server"],["string","port"],["string","vhost"],["string","exchange"],["string","username"],["password","password"]],"events":["push"],"supported_events":["push"]},{"name":"apoio","schema":[["string","subdomain"],["string","token"]],"events":["issues"],"supported_events":["issues"]},{"name":"appharbor","schema":[["string","application_slug"],["string","token"]],"events":["push"],"supported_events":["push"]},{"name":"bamboo","schema":[["string","base_url"],["string","build_key"],["string","username"],["password","password"]],"events":["push"],"supported_events":["push"]},{"name":"basecamp","schema":[["string","url"],["string","project"],["string","category"],["string","username"],["password","password"],["boolean","ssl"]],"events":["push"],"supported_events":["push"]},{"name":"bcx","schema":[["string","project_url"],["string","email_address"],["password","password"]],"events":["push","pull_request","issues"],"supported_events":["issues","pull_request","push"]},{"name":"boxcar","schema":[["string","subscribers"]],"events":["push"],"supported_events":["push"]},{"name":"bugherd","schema":[["string","project_key"]],"events":["push"],"supported_events":["push"]},{"name":"bugly","schema":[["string","project_id"],["string","account_name"],["string","token"]],"events":["push"],"supported_events":["push"]},{"name":"bugzilla","schema":[["string","server_url"],["string","username"],["string","integration_branch"],["password","password"],["boolean","central_repository"]],"events":["push"],"supported_events":["push"]},{"name":"buildcoin","schema":[["string","company_key"]],"events":["push","pull_request","pull_request_review_comment","issue_comment"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"]},{"name":"campfire","schema":[["string","subdomain"],["string","room"],["string","token"],["string","sound"],["boolean","master_only"],["boolean","play_sound"],["boolean","long_url"]],"events":["push","pull_request","issues"],"supported_events":["issues","pull_request","push"]},{"name":"cia","schema":[["string","address"],["string","project"],["string","branch"],["string","module"],["boolean","long_url"]],"events":["push"],"supported_events":["push"]},{"name":"codeclimate","schema":[["string","token"]],"events":["push"],"supported_events":["push"]},{"name":"codeportingcsharp2java","schema":[["string","project_name"],["string","repo_key"],["string","target_repo_key"],["string","codeporting_username"],["password","codeporting_password"],["string","github_access_token"]],"events":["push"],"supported_events":["push"]},{"name":"coop","schema":[["string","group_id"],["string","token"]],"events":["push"],"supported_events":["push"]},{"name":"cube","schema":[["string","domain"],["string","project"],["string","token"]],"events":["push"],"supported_events":["push"]},{"name":"ducksboard","schema":[["string","webhook_key"]],"events":["push","issues","fork","watch"],"supported_events":["fork","issues","push","watch"]},{"name":"email","schema":[["string","address"],["password","secret"],["boolean","send_from_author"]],"events":["push"],"supported_events":["public","push"]},{"name":"flowdock","schema":[["string","token"]],"events":["commit_comment","gollum","issues","issue_comment","pull_request","push"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"]},{"name":"fogbugz","schema":[["string","cvssubmit_url"],["string","fb_repoid"],["string","fb_version"]],"events":["push"],"supported_events":["push"]},{"name":"freckle","schema":[["string","subdomain"],["string","project"],["string","token"]],"events":["push"],"supported_events":["push"]},{"name":"friendfeed","schema":[["string","nickname"],["string","remotekey"]],"events":["push"],"supported_events":["push"]},{"name":"gemnasium","schema":[["string","user"],["string","token"]],"events":["push"],"supported_events":["push"]},{"name":"geocommit","schema":[],"events":["push"],"supported_events":["push"]},{"name":"getlocalization","schema":[["string","project_name"],["string","project_token"]],"events":["push"],"supported_events":["push"]},{"name":"gitlive","schema":[],"events":["push"],"supported_events":["push"]},{"name":"grmble","schema":[["string","room_api_url"],["string","token"]],"events":["push"],"supported_events":["push"]},{"name":"grouptalent","schema":[["string","token"]],"events":["push"],"supported_events":["push"]},{"name":"grove","schema":[["string","channel_token"]],"events":["commit_comment","gollum","issues","issue_comment","pull_request","push"],"supported_events":["push"]},{"name":"habitualist","schema":[],"events":["push"],"supported_events":["push"]},{"name":"harvest","schema":[["string","subdomain"],["string","username"],["password","password"],["boolean","ssl"]],"events":["push"],"supported_events":["push"]},{"name":"hipchat","schema":[["string","auth_token"],["string","room"],["boolean","notify"]],"events":["commit_comment","download","fork","fork_apply","gollum","issues","issue_comment","member","public","pull_request","push","watch"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"]},{"name":"hubci","schema":[["string","token"]],"events":["push"],"supported_events":["push"]},{"name":"icescrum","schema":[["string","base_url"],["string","project_key"],["string","username"],["password","password"]],"events":["push"],"supported_events":["push"]},{"name":"irc","schema":[["string","server"],["string","port"],["string","room"],["string","nick"],["string","branch_regexes"],["password","password"],["boolean","ssl"],["boolean","message_without_join"],["boolean","no_colors"],["boolean","long_url"],["boolean","notice"]],"events":["push"],"supported_events":["issues","pull_request","push"]},{"name":"jabber","schema":[["string","user"]],"events":["push"],"supported_events":["push"]},{"name":"jaconda","schema":[["string","subdomain"],["string","room_id"],["string","room_token"],["boolean","digest"]],"events":["commit_comment","download","fork","fork_apply","gollum","issues","issue_comment","member","public","pull_request","push","watch"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"]},{"name":"jenkins","schema":[["string","jenkins_hook_url"]],"events":["push"],"supported_events":["push"]},{"name":"jenkinsgit","schema":[["string","jenkins_url"]],"events":["push"],"supported_events":["push"]},{"name":"jira","schema":[["string","server_url"],["string","api_version"],["string","username"],["password","password"]],"events":["push"],"supported_events":["push"]},{"name":"kanbanery","schema":[["string","project_id"],["string","project_token"]],"events":["push"],"supported_events":["push"]},{"name":"kickoff","schema":[["string","project_id"],["string","project_token"]],"events":["push"],"supported_events":["push"]},{"name":"leanto","schema":[["string","token"]],"events":["push"],"supported_events":["push"]},{"name":"lighthouse","schema":[["string","subdomain"],["string","project_id"],["string","token"],["boolean","private"],["boolean","send_only_ticket_commits"]],"events":["push"],"supported_events":["push"]},{"name":"loggly","schema":[["string","input_token"]],"events":["push"],"supported_events":["push"]},{"name":"mantisbt","schema":[["string","url"],["string","api_key"]],"events":["push"],"supported_events":["push"]},{"name":"masterbranch","schema":[],"events":["push"],"supported_events":["push"]},{"name":"mqttpub","schema":[["string","broker"],["string","port"],["string","topic"],["string","clientid"],["string","user"],["password","pass"],["boolean","retain"]],"events":["push"],"supported_events":["push"]},{"name":"nma","schema":[["string","apikey"]],"events":["push"],"supported_events":["push"]},{"name":"nodejitsu","schema":[["string","subdomain"],["string","username"],["string","branch"],["password","password"]],"events":["push"],"supported_events":["push"]},{"name":"notifo","schema":[["string","subscribers"]],"events":["push"],"supported_events":["push"]},{"name":"ontime","schema":[["string","ontime_url"],["string","api_key"]],"events":["push"],"supported_events":["push"]},{"name":"pachube","schema":[["string","api_key"],["string","feed_id"],["string","track_branch"]],"events":["push"],"supported_events":["push"]},{"name":"packagist","schema":[["string","domain"],["string","user"],["string","token"]],"events":["push"],"supported_events":["push"]},{"name":"pivotaltracker","schema":[["string","token"],["string","branch"],["string","endpoint"]],"events":["push"],"supported_events":["push"]},{"name":"planbox","schema":[["string","token"]],"events":["push"],"supported_events":["push"]},{"name":"planio","schema":[["string","address"],["string","project"],["string","api_key"]],"events":["push"],"supported_events":["push"]},{"name":"presently","schema":[["string","subdomain"],["string","group_name"],["string","username"],["password","password"]],"events":["push"],"supported_events":["push"]},{"name":"prowl","schema":[["string","apikey"]],"events":["push"],"supported_events":["push"]},{"name":"puppetlinter","schema":[],"events":["push"],"supported_events":["push"]},{"name":"pushover","schema":[["string","user_key"],["string","device_name"]],"events":["push"],"supported_events":["push"]},{"name":"pythonpackages","schema":[],"events":["push"],"supported_events":["push"]},{"name":"railsbp","schema":[["string","railsbp_url"],["string","token"]],"events":["push"],"supported_events":["push"]},{"name":"railsbrakeman","schema":[["string","rails_brakeman_url"],["string","token"]],"events":["push"],"supported_events":["push"]},{"name":"rally","schema":[["string","server"],["string","username"],["string","workspace"],["string","repository"],["password","password"]],"events":["push"],"supported_events":["push"]},{"name":"rationalteamconcert","schema":[["string","server_url"],["string","username"],["string","project_area_uuid"],["password","password"],["boolean","basic_authentication"]],"events":["push"],"supported_events":["push"]},{"name":"rdocinfo","schema":[],"events":["push"],"supported_events":["push"]},{"name":"readthedocs","schema":[],"events":["push"],"supported_events":["push"]},{"name":"redmine","schema":[["string","address"],["string","project"],["string","api_key"]],"events":["push"],"supported_events":["push"]},{"name":"rubyforge","schema":[["string","groupid"],["string","username"],["password","password"]],"events":["push"],"supported_events":["push"]},{"name":"scrumdo","schema":[["string","username"],["string","project_slug"],["password","password"]],"events":["push"],"supported_events":["push"]},{"name":"shiningpanda","schema":[["string","workspace"],["string","job"],["string","token"],["string","branches"],["string","parameters"]],"events":["push"],"supported_events":["push"]},{"name":"slatebox","schema":[["string","app_id"],["string","token"]],"events":["push"],"supported_events":["push"]},{"name":"snowyevening","schema":[["string","project"],["string","api_key"]],"events":["push"],"supported_events":["push"]},{"name":"socialcast","schema":[["string","api_domain"],["string","group_id"],["string","username"],["password","password"]],"events":["push"],"supported_events":["push"]},{"name":"sourcemint","schema":[],"events":["push"],"supported_events":["push"]},{"name":"splendidbacon","schema":[["string","project_id"],["string","token"]],"events":["push"],"supported_events":["push"]},{"name":"sqsqueue","schema":[["string","aws_access_key"],["string","sqs_queue_name"],["password","aws_secret_key"]],"events":["push"],"supported_events":["push"]},{"name":"stackmob","schema":[["string","token"]],"events":["push"],"supported_events":["push"]},{"name":"statusnet","schema":[["string","server"],["string","username"],["password","password"],["boolean","digest"]],"events":["push"],"supported_events":["push"]},{"name":"talker","schema":[["string","url"],["string","token"],["boolean","digest"]],"events":["push"],"supported_events":["issues","pull_request","push"]},{"name":"targetprocess","schema":[["string","base_url"],["string","username"],["string","project_id"],["password","password"]],"events":["push"],"supported_events":["push"]},{"name":"teamcity","schema":[["string","base_url"],["string","build_type_id"],["string","username"],["string","branches"],["password","password"]],"events":["push"],"supported_events":["push"]},{"name":"tender","schema":[["string","domain"],["string","token"]],"events":["issues"],"supported_events":["issues","pull_request"]},{"name":"testpilot","schema":[["string","token"]],"events":["push"],"supported_events":["push"]},{"name":"toggl","schema":[["string","project"],["string","api_token"]],"events":["push"],"supported_events":["push"]},{"name":"trac","schema":[["string","url"],["string","token"]],"events":["push"],"supported_events":["push"]},{"name":"trajectory","schema":[["string","api_key"]],"events":["push"],"supported_events":["push"]},{"name":"travis","schema":[["string","user"],["string","token"],["string","domain"]],"events":["push","pull_request","issue_comment","public","member"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"]},{"name":"trello","schema":[["string","list_id"],["string","ignore_regex"],["boolean","master_only"],["password","consumer_token"]],"events":["push"],"supported_events":["push"]},{"name":"twilio","schema":[["string","account_sid"],["string","from_phone"],["string","to_phone"],["boolean","master_only"],["password","auth_token"]],"events":["push"],"supported_events":["push"]},{"name":"twitter","schema":[["string","token"],["string","secret"],["boolean","digest"],["boolean","short_format"]],"events":["push"],"supported_events":["push"]},{"name":"unfuddle","schema":[["string","subdomain"],["string","repo_id"],["string","username"],["password","password"],["boolean","httponly"]],"events":["push"],"supported_events":["push"]},{"name":"web","schema":[["string","url"],["string","secret"],["string","content_type"],["boolean","insecure_ssl"]],"events":["push"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"]},{"name":"webtranslateit","schema":[["string","api_key"]],"events":["push"],"supported_events":["push"]},{"name":"yammer","schema":[["string","group_id"],["string","consumer_key"],["string","consumer_secret"],["string","access_token"],["string","access_secret"],["boolean","digest"]],"events":["push"],"supported_events":["push"]},{"name":"youtrack","schema":[["string","base_url"],["string","committers"],["string","username"],["password","password"]],"events":["push"],"supported_events":["push"]},{"name":"zendesk","schema":[["string","subdomain"],["string","username"],["password","password"]],"events":["commit_comment","issues","issue_comment","pull_request","push"],"supported_events":["commit_comment","create","delete","download","follow","fork","fork_apply","gist","gollum","issue_comment","issues","member","public","pull_request","pull_request_review_comment","push","status","team_add","watch"]},{"name":"zohoprojects","schema":[["string","project_id"],["string","token"]],"events":["push"],"supported_events":["push"]}] + diff --git a/lib/github/tests/ReplayData/Github.testGetRepoFromFullName.txt b/lib/github/tests/ReplayData/Github.testGetRepoFromFullName.txt new file mode 100644 index 0000000000..d0df7b4780 --- /dev/null +++ b/lib/github/tests/ReplayData/Github.testGetRepoFromFullName.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4939'), ('content-length', '1097'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"922c0519f2733063a899619ae95ce892"'), ('date', 'Sun, 20 May 2012 12:33:27 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"svn_url":"https://github.com/jacquev6/PyGithub","has_wiki":false,"has_issues":true,"updated_at":"2012-05-19T10:50:39Z","forks":2,"homepage":"http://vincent-jacques.net/PyGithub","git_url":"git://github.com/jacquev6/PyGithub.git","url":"https://api.github.com/repos/jacquev6/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","open_issues":18,"fork":false,"ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-19T10:50:39Z","size":304,"private":false,"has_downloads":true,"watchers":13,"html_url":"https://github.com/jacquev6/PyGithub","owner":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"PyGithub","permissions":{"pull":true,"admin":true,"push":true},"language":"Python","description":"Python library implementing the full Github API v3","created_at":"2012-02-25T12:53:47Z","id":3544490,"mirror_url":null} + diff --git a/lib/github/tests/ReplayData/Github.testGetRepoFromId.txt b/lib/github/tests/ReplayData/Github.testGetRepoFromId.txt new file mode 100644 index 0000000000..81fda1ff05 --- /dev/null +++ b/lib/github/tests/ReplayData/Github.testGetRepoFromId.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repositories/3544490 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4939'), ('content-length', '1097'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"922c0519f2733063a899619ae95ce892"'), ('date', 'Sun, 20 May 2012 12:33:27 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"svn_url":"https://github.com/jacquev6/PyGithub","has_wiki":false,"has_issues":true,"updated_at":"2012-05-19T10:50:39Z","forks":2,"homepage":"http://vincent-jacques.net/PyGithub","git_url":"git://github.com/jacquev6/PyGithub.git","url":"https://api.github.com/repos/jacquev6/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","open_issues":18,"fork":false,"ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-19T10:50:39Z","size":304,"private":false,"has_downloads":true,"watchers":13,"html_url":"https://github.com/jacquev6/PyGithub","owner":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"PyGithub","permissions":{"pull":true,"admin":true,"push":true},"language":"Python","description":"Python library implementing the full Github API v3","created_at":"2012-02-25T12:53:47Z","id":3544490,"mirror_url":null} + diff --git a/lib/github/tests/ReplayData/Github.testGetRepos.txt b/lib/github/tests/ReplayData/Github.testGetRepos.txt new file mode 100644 index 0000000000..7d335ffc25 --- /dev/null +++ b/lib/github/tests/ReplayData/Github.testGetRepos.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repositories +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4999'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('cache-control', 'max-age=0, private, must-revalidate'), ('vary', 'Accept-Encoding'), ('content-length', '404193'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="first"'), ('etag', '"ce99e4ff5256ec5157ddea4a067b40b5"'), ('access-control-allow-credentials', 'true'), ('date', 'Wed, 21 Aug 2013 19:37:39 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1377117459')] +[{"id":1,"name":"grit","full_name":"mojombo/grit","owner":{"login":"mojombo","id":1,"avatar_url":"https://1.gravatar.com/avatar/25c7c18223fb42a4c6ae1c8db6f50f9b?d=https%3A%2F%2Fidenticons.github.com%2Fc4ca4238a0b923820dcc509a6f75849b.png","gravatar_id":"25c7c18223fb42a4c6ae1c8db6f50f9b","url":"https://api.github.com/users/mojombo","html_url":"https://github.com/mojombo","followers_url":"https://api.github.com/users/mojombo/followers","following_url":"https://api.github.com/users/mojombo/following{/other_user}","gists_url":"https://api.github.com/users/mojombo/gists{/gist_id}","starred_url":"https://api.github.com/users/mojombo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mojombo/subscriptions","organizations_url":"https://api.github.com/users/mojombo/orgs","repos_url":"https://api.github.com/users/mojombo/repos","events_url":"https://api.github.com/users/mojombo/events{/privacy}","received_events_url":"https://api.github.com/users/mojombo/received_events","type":"User"},"private":false,"html_url":"https://github.com/mojombo/grit","description":"Grit gives you object oriented read/write access to Git repositories via Ruby.","fork":false,"url":"https://api.github.com/repos/mojombo/grit","forks_url":"https://api.github.com/repos/mojombo/grit/forks","keys_url":"https://api.github.com/repos/mojombo/grit/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mojombo/grit/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mojombo/grit/teams","hooks_url":"https://api.github.com/repos/mojombo/grit/hooks","issue_events_url":"https://api.github.com/repos/mojombo/grit/issues/events{/number}","events_url":"https://api.github.com/repos/mojombo/grit/events","assignees_url":"https://api.github.com/repos/mojombo/grit/assignees{/user}","branches_url":"https://api.github.com/repos/mojombo/grit/branches{/branch}","tags_url":"https://api.github.com/repos/mojombo/grit/tags","blobs_url":"https://api.github.com/repos/mojombo/grit/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mojombo/grit/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mojombo/grit/git/refs{/sha}","trees_url":"https://api.github.com/repos/mojombo/grit/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mojombo/grit/statuses/{sha}","languages_url":"https://api.github.com/repos/mojombo/grit/languages","stargazers_url":"https://api.github.com/repos/mojombo/grit/stargazers","contributors_url":"https://api.github.com/repos/mojombo/grit/contributors","subscribers_url":"https://api.github.com/repos/mojombo/grit/subscribers","subscription_url":"https://api.github.com/repos/mojombo/grit/subscription","commits_url":"https://api.github.com/repos/mojombo/grit/commits{/sha}","git_commits_url":"https://api.github.com/repos/mojombo/grit/git/commits{/sha}","comments_url":"https://api.github.com/repos/mojombo/grit/comments{/number}","issue_comment_url":"https://api.github.com/repos/mojombo/grit/issues/comments/{number}","contents_url":"https://api.github.com/repos/mojombo/grit/contents/{+path}","compare_url":"https://api.github.com/repos/mojombo/grit/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mojombo/grit/merges","archive_url":"https://api.github.com/repos/mojombo/grit/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mojombo/grit/downloads","issues_url":"https://api.github.com/repos/mojombo/grit/issues{/number}","pulls_url":"https://api.github.com/repos/mojombo/grit/pulls{/number}","milestones_url":"https://api.github.com/repos/mojombo/grit/milestones{/number}","notifications_url":"https://api.github.com/repos/mojombo/grit/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mojombo/grit/labels{/name}"},{"id":26,"name":"merb-core","full_name":"wycats/merb-core","owner":{"login":"wycats","id":4,"avatar_url":"https://2.gravatar.com/avatar/428167a3ec72235ba971162924492609?d=https%3A%2F%2Fidenticons.github.com%2Fa87ff679a2f3e71d9181a67b7542122c.png","gravatar_id":"428167a3ec72235ba971162924492609","url":"https://api.github.com/users/wycats","html_url":"https://github.com/wycats","followers_url":"https://api.github.com/users/wycats/followers","following_url":"https://api.github.com/users/wycats/following{/other_user}","gists_url":"https://api.github.com/users/wycats/gists{/gist_id}","starred_url":"https://api.github.com/users/wycats/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wycats/subscriptions","organizations_url":"https://api.github.com/users/wycats/orgs","repos_url":"https://api.github.com/users/wycats/repos","events_url":"https://api.github.com/users/wycats/events{/privacy}","received_events_url":"https://api.github.com/users/wycats/received_events","type":"User"},"private":false,"html_url":"https://github.com/wycats/merb-core","description":"Merb Core: All you need. None you don't.","fork":false,"url":"https://api.github.com/repos/wycats/merb-core","forks_url":"https://api.github.com/repos/wycats/merb-core/forks","keys_url":"https://api.github.com/repos/wycats/merb-core/keys{/key_id}","collaborators_url":"https://api.github.com/repos/wycats/merb-core/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/wycats/merb-core/teams","hooks_url":"https://api.github.com/repos/wycats/merb-core/hooks","issue_events_url":"https://api.github.com/repos/wycats/merb-core/issues/events{/number}","events_url":"https://api.github.com/repos/wycats/merb-core/events","assignees_url":"https://api.github.com/repos/wycats/merb-core/assignees{/user}","branches_url":"https://api.github.com/repos/wycats/merb-core/branches{/branch}","tags_url":"https://api.github.com/repos/wycats/merb-core/tags","blobs_url":"https://api.github.com/repos/wycats/merb-core/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/wycats/merb-core/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/wycats/merb-core/git/refs{/sha}","trees_url":"https://api.github.com/repos/wycats/merb-core/git/trees{/sha}","statuses_url":"https://api.github.com/repos/wycats/merb-core/statuses/{sha}","languages_url":"https://api.github.com/repos/wycats/merb-core/languages","stargazers_url":"https://api.github.com/repos/wycats/merb-core/stargazers","contributors_url":"https://api.github.com/repos/wycats/merb-core/contributors","subscribers_url":"https://api.github.com/repos/wycats/merb-core/subscribers","subscription_url":"https://api.github.com/repos/wycats/merb-core/subscription","commits_url":"https://api.github.com/repos/wycats/merb-core/commits{/sha}","git_commits_url":"https://api.github.com/repos/wycats/merb-core/git/commits{/sha}","comments_url":"https://api.github.com/repos/wycats/merb-core/comments{/number}","issue_comment_url":"https://api.github.com/repos/wycats/merb-core/issues/comments/{number}","contents_url":"https://api.github.com/repos/wycats/merb-core/contents/{+path}","compare_url":"https://api.github.com/repos/wycats/merb-core/compare/{base}...{head}","merges_url":"https://api.github.com/repos/wycats/merb-core/merges","archive_url":"https://api.github.com/repos/wycats/merb-core/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/wycats/merb-core/downloads","issues_url":"https://api.github.com/repos/wycats/merb-core/issues{/number}","pulls_url":"https://api.github.com/repos/wycats/merb-core/pulls{/number}","milestones_url":"https://api.github.com/repos/wycats/merb-core/milestones{/number}","notifications_url":"https://api.github.com/repos/wycats/merb-core/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/wycats/merb-core/labels{/name}"},{"id":27,"name":"rubinius","full_name":"rubinius/rubinius","owner":{"login":"rubinius","id":317747,"avatar_url":"https://0.gravatar.com/avatar/8a664b7c5ca834af3e7e49d3a6160082?d=https%3A%2F%2Fidenticons.github.com%2F8a2a02b12e404a00b49c0154892fd9c0.png","gravatar_id":"8a664b7c5ca834af3e7e49d3a6160082","url":"https://api.github.com/users/rubinius","html_url":"https://github.com/rubinius","followers_url":"https://api.github.com/users/rubinius/followers","following_url":"https://api.github.com/users/rubinius/following{/other_user}","gists_url":"https://api.github.com/users/rubinius/gists{/gist_id}","starred_url":"https://api.github.com/users/rubinius/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rubinius/subscriptions","organizations_url":"https://api.github.com/users/rubinius/orgs","repos_url":"https://api.github.com/users/rubinius/repos","events_url":"https://api.github.com/users/rubinius/events{/privacy}","received_events_url":"https://api.github.com/users/rubinius/received_events","type":"Organization"},"private":false,"html_url":"https://github.com/rubinius/rubinius","description":"Rubinius, the Ruby Environment","fork":false,"url":"https://api.github.com/repos/rubinius/rubinius","forks_url":"https://api.github.com/repos/rubinius/rubinius/forks","keys_url":"https://api.github.com/repos/rubinius/rubinius/keys{/key_id}","collaborators_url":"https://api.github.com/repos/rubinius/rubinius/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/rubinius/rubinius/teams","hooks_url":"https://api.github.com/repos/rubinius/rubinius/hooks","issue_events_url":"https://api.github.com/repos/rubinius/rubinius/issues/events{/number}","events_url":"https://api.github.com/repos/rubinius/rubinius/events","assignees_url":"https://api.github.com/repos/rubinius/rubinius/assignees{/user}","branches_url":"https://api.github.com/repos/rubinius/rubinius/branches{/branch}","tags_url":"https://api.github.com/repos/rubinius/rubinius/tags","blobs_url":"https://api.github.com/repos/rubinius/rubinius/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/rubinius/rubinius/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/rubinius/rubinius/git/refs{/sha}","trees_url":"https://api.github.com/repos/rubinius/rubinius/git/trees{/sha}","statuses_url":"https://api.github.com/repos/rubinius/rubinius/statuses/{sha}","languages_url":"https://api.github.com/repos/rubinius/rubinius/languages","stargazers_url":"https://api.github.com/repos/rubinius/rubinius/stargazers","contributors_url":"https://api.github.com/repos/rubinius/rubinius/contributors","subscribers_url":"https://api.github.com/repos/rubinius/rubinius/subscribers","subscription_url":"https://api.github.com/repos/rubinius/rubinius/subscription","commits_url":"https://api.github.com/repos/rubinius/rubinius/commits{/sha}","git_commits_url":"https://api.github.com/repos/rubinius/rubinius/git/commits{/sha}","comments_url":"https://api.github.com/repos/rubinius/rubinius/comments{/number}","issue_comment_url":"https://api.github.com/repos/rubinius/rubinius/issues/comments/{number}","contents_url":"https://api.github.com/repos/rubinius/rubinius/contents/{+path}","compare_url":"https://api.github.com/repos/rubinius/rubinius/compare/{base}...{head}","merges_url":"https://api.github.com/repos/rubinius/rubinius/merges","archive_url":"https://api.github.com/repos/rubinius/rubinius/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/rubinius/rubinius/downloads","issues_url":"https://api.github.com/repos/rubinius/rubinius/issues{/number}","pulls_url":"https://api.github.com/repos/rubinius/rubinius/pulls{/number}","milestones_url":"https://api.github.com/repos/rubinius/rubinius/milestones{/number}","notifications_url":"https://api.github.com/repos/rubinius/rubinius/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/rubinius/rubinius/labels{/name}"},{"id":28,"name":"god","full_name":"mojombo/god","owner":{"login":"mojombo","id":1,"avatar_url":"https://1.gravatar.com/avatar/25c7c18223fb42a4c6ae1c8db6f50f9b?d=https%3A%2F%2Fidenticons.github.com%2Fc4ca4238a0b923820dcc509a6f75849b.png","gravatar_id":"25c7c18223fb42a4c6ae1c8db6f50f9b","url":"https://api.github.com/users/mojombo","html_url":"https://github.com/mojombo","followers_url":"https://api.github.com/users/mojombo/followers","following_url":"https://api.github.com/users/mojombo/following{/other_user}","gists_url":"https://api.github.com/users/mojombo/gists{/gist_id}","starred_url":"https://api.github.com/users/mojombo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mojombo/subscriptions","organizations_url":"https://api.github.com/users/mojombo/orgs","repos_url":"https://api.github.com/users/mojombo/repos","events_url":"https://api.github.com/users/mojombo/events{/privacy}","received_events_url":"https://api.github.com/users/mojombo/received_events","type":"User"},"private":false,"html_url":"https://github.com/mojombo/god","description":"Ruby process monitor","fork":false,"url":"https://api.github.com/repos/mojombo/god","forks_url":"https://api.github.com/repos/mojombo/god/forks","keys_url":"https://api.github.com/repos/mojombo/god/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mojombo/god/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mojombo/god/teams","hooks_url":"https://api.github.com/repos/mojombo/god/hooks","issue_events_url":"https://api.github.com/repos/mojombo/god/issues/events{/number}","events_url":"https://api.github.com/repos/mojombo/god/events","assignees_url":"https://api.github.com/repos/mojombo/god/assignees{/user}","branches_url":"https://api.github.com/repos/mojombo/god/branches{/branch}","tags_url":"https://api.github.com/repos/mojombo/god/tags","blobs_url":"https://api.github.com/repos/mojombo/god/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mojombo/god/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mojombo/god/git/refs{/sha}","trees_url":"https://api.github.com/repos/mojombo/god/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mojombo/god/statuses/{sha}","languages_url":"https://api.github.com/repos/mojombo/god/languages","stargazers_url":"https://api.github.com/repos/mojombo/god/stargazers","contributors_url":"https://api.github.com/repos/mojombo/god/contributors","subscribers_url":"https://api.github.com/repos/mojombo/god/subscribers","subscription_url":"https://api.github.com/repos/mojombo/god/subscription","commits_url":"https://api.github.com/repos/mojombo/god/commits{/sha}","git_commits_url":"https://api.github.com/repos/mojombo/god/git/commits{/sha}","comments_url":"https://api.github.com/repos/mojombo/god/comments{/number}","issue_comment_url":"https://api.github.com/repos/mojombo/god/issues/comments/{number}","contents_url":"https://api.github.com/repos/mojombo/god/contents/{+path}","compare_url":"https://api.github.com/repos/mojombo/god/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mojombo/god/merges","archive_url":"https://api.github.com/repos/mojombo/god/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mojombo/god/downloads","issues_url":"https://api.github.com/repos/mojombo/god/issues{/number}","pulls_url":"https://api.github.com/repos/mojombo/god/pulls{/number}","milestones_url":"https://api.github.com/repos/mojombo/god/milestones{/number}","notifications_url":"https://api.github.com/repos/mojombo/god/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mojombo/god/labels{/name}"},{"id":29,"name":"jsawesome","full_name":"vanpelt/jsawesome","owner":{"login":"vanpelt","id":17,"avatar_url":"https://1.gravatar.com/avatar/1da36d4c1f34454de6c07855098675f6?d=https%3A%2F%2Fidenticons.github.com%2F70efdf2ec9b086079795c442636b55fb.png","gravatar_id":"1da36d4c1f34454de6c07855098675f6","url":"https://api.github.com/users/vanpelt","html_url":"https://github.com/vanpelt","followers_url":"https://api.github.com/users/vanpelt/followers","following_url":"https://api.github.com/users/vanpelt/following{/other_user}","gists_url":"https://api.github.com/users/vanpelt/gists{/gist_id}","starred_url":"https://api.github.com/users/vanpelt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vanpelt/subscriptions","organizations_url":"https://api.github.com/users/vanpelt/orgs","repos_url":"https://api.github.com/users/vanpelt/repos","events_url":"https://api.github.com/users/vanpelt/events{/privacy}","received_events_url":"https://api.github.com/users/vanpelt/received_events","type":"User"},"private":false,"html_url":"https://github.com/vanpelt/jsawesome","description":"Awesome JSON","fork":false,"url":"https://api.github.com/repos/vanpelt/jsawesome","forks_url":"https://api.github.com/repos/vanpelt/jsawesome/forks","keys_url":"https://api.github.com/repos/vanpelt/jsawesome/keys{/key_id}","collaborators_url":"https://api.github.com/repos/vanpelt/jsawesome/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/vanpelt/jsawesome/teams","hooks_url":"https://api.github.com/repos/vanpelt/jsawesome/hooks","issue_events_url":"https://api.github.com/repos/vanpelt/jsawesome/issues/events{/number}","events_url":"https://api.github.com/repos/vanpelt/jsawesome/events","assignees_url":"https://api.github.com/repos/vanpelt/jsawesome/assignees{/user}","branches_url":"https://api.github.com/repos/vanpelt/jsawesome/branches{/branch}","tags_url":"https://api.github.com/repos/vanpelt/jsawesome/tags","blobs_url":"https://api.github.com/repos/vanpelt/jsawesome/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/vanpelt/jsawesome/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/vanpelt/jsawesome/git/refs{/sha}","trees_url":"https://api.github.com/repos/vanpelt/jsawesome/git/trees{/sha}","statuses_url":"https://api.github.com/repos/vanpelt/jsawesome/statuses/{sha}","languages_url":"https://api.github.com/repos/vanpelt/jsawesome/languages","stargazers_url":"https://api.github.com/repos/vanpelt/jsawesome/stargazers","contributors_url":"https://api.github.com/repos/vanpelt/jsawesome/contributors","subscribers_url":"https://api.github.com/repos/vanpelt/jsawesome/subscribers","subscription_url":"https://api.github.com/repos/vanpelt/jsawesome/subscription","commits_url":"https://api.github.com/repos/vanpelt/jsawesome/commits{/sha}","git_commits_url":"https://api.github.com/repos/vanpelt/jsawesome/git/commits{/sha}","comments_url":"https://api.github.com/repos/vanpelt/jsawesome/comments{/number}","issue_comment_url":"https://api.github.com/repos/vanpelt/jsawesome/issues/comments/{number}","contents_url":"https://api.github.com/repos/vanpelt/jsawesome/contents/{+path}","compare_url":"https://api.github.com/repos/vanpelt/jsawesome/compare/{base}...{head}","merges_url":"https://api.github.com/repos/vanpelt/jsawesome/merges","archive_url":"https://api.github.com/repos/vanpelt/jsawesome/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/vanpelt/jsawesome/downloads","issues_url":"https://api.github.com/repos/vanpelt/jsawesome/issues{/number}","pulls_url":"https://api.github.com/repos/vanpelt/jsawesome/pulls{/number}","milestones_url":"https://api.github.com/repos/vanpelt/jsawesome/milestones{/number}","notifications_url":"https://api.github.com/repos/vanpelt/jsawesome/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/vanpelt/jsawesome/labels{/name}"},{"id":31,"name":"jspec","full_name":"wycats/jspec","owner":{"login":"wycats","id":4,"avatar_url":"https://2.gravatar.com/avatar/428167a3ec72235ba971162924492609?d=https%3A%2F%2Fidenticons.github.com%2Fa87ff679a2f3e71d9181a67b7542122c.png","gravatar_id":"428167a3ec72235ba971162924492609","url":"https://api.github.com/users/wycats","html_url":"https://github.com/wycats","followers_url":"https://api.github.com/users/wycats/followers","following_url":"https://api.github.com/users/wycats/following{/other_user}","gists_url":"https://api.github.com/users/wycats/gists{/gist_id}","starred_url":"https://api.github.com/users/wycats/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wycats/subscriptions","organizations_url":"https://api.github.com/users/wycats/orgs","repos_url":"https://api.github.com/users/wycats/repos","events_url":"https://api.github.com/users/wycats/events{/privacy}","received_events_url":"https://api.github.com/users/wycats/received_events","type":"User"},"private":false,"html_url":"https://github.com/wycats/jspec","description":"A JavaScript BDD Testing Library","fork":false,"url":"https://api.github.com/repos/wycats/jspec","forks_url":"https://api.github.com/repos/wycats/jspec/forks","keys_url":"https://api.github.com/repos/wycats/jspec/keys{/key_id}","collaborators_url":"https://api.github.com/repos/wycats/jspec/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/wycats/jspec/teams","hooks_url":"https://api.github.com/repos/wycats/jspec/hooks","issue_events_url":"https://api.github.com/repos/wycats/jspec/issues/events{/number}","events_url":"https://api.github.com/repos/wycats/jspec/events","assignees_url":"https://api.github.com/repos/wycats/jspec/assignees{/user}","branches_url":"https://api.github.com/repos/wycats/jspec/branches{/branch}","tags_url":"https://api.github.com/repos/wycats/jspec/tags","blobs_url":"https://api.github.com/repos/wycats/jspec/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/wycats/jspec/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/wycats/jspec/git/refs{/sha}","trees_url":"https://api.github.com/repos/wycats/jspec/git/trees{/sha}","statuses_url":"https://api.github.com/repos/wycats/jspec/statuses/{sha}","languages_url":"https://api.github.com/repos/wycats/jspec/languages","stargazers_url":"https://api.github.com/repos/wycats/jspec/stargazers","contributors_url":"https://api.github.com/repos/wycats/jspec/contributors","subscribers_url":"https://api.github.com/repos/wycats/jspec/subscribers","subscription_url":"https://api.github.com/repos/wycats/jspec/subscription","commits_url":"https://api.github.com/repos/wycats/jspec/commits{/sha}","git_commits_url":"https://api.github.com/repos/wycats/jspec/git/commits{/sha}","comments_url":"https://api.github.com/repos/wycats/jspec/comments{/number}","issue_comment_url":"https://api.github.com/repos/wycats/jspec/issues/comments/{number}","contents_url":"https://api.github.com/repos/wycats/jspec/contents/{+path}","compare_url":"https://api.github.com/repos/wycats/jspec/compare/{base}...{head}","merges_url":"https://api.github.com/repos/wycats/jspec/merges","archive_url":"https://api.github.com/repos/wycats/jspec/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/wycats/jspec/downloads","issues_url":"https://api.github.com/repos/wycats/jspec/issues{/number}","pulls_url":"https://api.github.com/repos/wycats/jspec/pulls{/number}","milestones_url":"https://api.github.com/repos/wycats/jspec/milestones{/number}","notifications_url":"https://api.github.com/repos/wycats/jspec/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/wycats/jspec/labels{/name}"},{"id":35,"name":"exception_logger","full_name":"defunkt/exception_logger","owner":{"login":"defunkt","id":2,"avatar_url":"https://2.gravatar.com/avatar/b8dbb1987e8e5318584865f880036796?d=https%3A%2F%2Fidenticons.github.com%2Fc81e728d9d4c2f636f067f89cc14862c.png","gravatar_id":"b8dbb1987e8e5318584865f880036796","url":"https://api.github.com/users/defunkt","html_url":"https://github.com/defunkt","followers_url":"https://api.github.com/users/defunkt/followers","following_url":"https://api.github.com/users/defunkt/following{/other_user}","gists_url":"https://api.github.com/users/defunkt/gists{/gist_id}","starred_url":"https://api.github.com/users/defunkt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/defunkt/subscriptions","organizations_url":"https://api.github.com/users/defunkt/orgs","repos_url":"https://api.github.com/users/defunkt/repos","events_url":"https://api.github.com/users/defunkt/events{/privacy}","received_events_url":"https://api.github.com/users/defunkt/received_events","type":"User"},"private":false,"html_url":"https://github.com/defunkt/exception_logger","description":"Unmaintained. Sorry.","fork":false,"url":"https://api.github.com/repos/defunkt/exception_logger","forks_url":"https://api.github.com/repos/defunkt/exception_logger/forks","keys_url":"https://api.github.com/repos/defunkt/exception_logger/keys{/key_id}","collaborators_url":"https://api.github.com/repos/defunkt/exception_logger/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/defunkt/exception_logger/teams","hooks_url":"https://api.github.com/repos/defunkt/exception_logger/hooks","issue_events_url":"https://api.github.com/repos/defunkt/exception_logger/issues/events{/number}","events_url":"https://api.github.com/repos/defunkt/exception_logger/events","assignees_url":"https://api.github.com/repos/defunkt/exception_logger/assignees{/user}","branches_url":"https://api.github.com/repos/defunkt/exception_logger/branches{/branch}","tags_url":"https://api.github.com/repos/defunkt/exception_logger/tags","blobs_url":"https://api.github.com/repos/defunkt/exception_logger/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/defunkt/exception_logger/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/defunkt/exception_logger/git/refs{/sha}","trees_url":"https://api.github.com/repos/defunkt/exception_logger/git/trees{/sha}","statuses_url":"https://api.github.com/repos/defunkt/exception_logger/statuses/{sha}","languages_url":"https://api.github.com/repos/defunkt/exception_logger/languages","stargazers_url":"https://api.github.com/repos/defunkt/exception_logger/stargazers","contributors_url":"https://api.github.com/repos/defunkt/exception_logger/contributors","subscribers_url":"https://api.github.com/repos/defunkt/exception_logger/subscribers","subscription_url":"https://api.github.com/repos/defunkt/exception_logger/subscription","commits_url":"https://api.github.com/repos/defunkt/exception_logger/commits{/sha}","git_commits_url":"https://api.github.com/repos/defunkt/exception_logger/git/commits{/sha}","comments_url":"https://api.github.com/repos/defunkt/exception_logger/comments{/number}","issue_comment_url":"https://api.github.com/repos/defunkt/exception_logger/issues/comments/{number}","contents_url":"https://api.github.com/repos/defunkt/exception_logger/contents/{+path}","compare_url":"https://api.github.com/repos/defunkt/exception_logger/compare/{base}...{head}","merges_url":"https://api.github.com/repos/defunkt/exception_logger/merges","archive_url":"https://api.github.com/repos/defunkt/exception_logger/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/defunkt/exception_logger/downloads","issues_url":"https://api.github.com/repos/defunkt/exception_logger/issues{/number}","pulls_url":"https://api.github.com/repos/defunkt/exception_logger/pulls{/number}","milestones_url":"https://api.github.com/repos/defunkt/exception_logger/milestones{/number}","notifications_url":"https://api.github.com/repos/defunkt/exception_logger/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/defunkt/exception_logger/labels{/name}"},{"id":36,"name":"ambition","full_name":"defunkt/ambition","owner":{"login":"defunkt","id":2,"avatar_url":"https://2.gravatar.com/avatar/b8dbb1987e8e5318584865f880036796?d=https%3A%2F%2Fidenticons.github.com%2Fc81e728d9d4c2f636f067f89cc14862c.png","gravatar_id":"b8dbb1987e8e5318584865f880036796","url":"https://api.github.com/users/defunkt","html_url":"https://github.com/defunkt","followers_url":"https://api.github.com/users/defunkt/followers","following_url":"https://api.github.com/users/defunkt/following{/other_user}","gists_url":"https://api.github.com/users/defunkt/gists{/gist_id}","starred_url":"https://api.github.com/users/defunkt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/defunkt/subscriptions","organizations_url":"https://api.github.com/users/defunkt/orgs","repos_url":"https://api.github.com/users/defunkt/repos","events_url":"https://api.github.com/users/defunkt/events{/privacy}","received_events_url":"https://api.github.com/users/defunkt/received_events","type":"User"},"private":false,"html_url":"https://github.com/defunkt/ambition","description":"include Enumerable — Unmaintained","fork":false,"url":"https://api.github.com/repos/defunkt/ambition","forks_url":"https://api.github.com/repos/defunkt/ambition/forks","keys_url":"https://api.github.com/repos/defunkt/ambition/keys{/key_id}","collaborators_url":"https://api.github.com/repos/defunkt/ambition/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/defunkt/ambition/teams","hooks_url":"https://api.github.com/repos/defunkt/ambition/hooks","issue_events_url":"https://api.github.com/repos/defunkt/ambition/issues/events{/number}","events_url":"https://api.github.com/repos/defunkt/ambition/events","assignees_url":"https://api.github.com/repos/defunkt/ambition/assignees{/user}","branches_url":"https://api.github.com/repos/defunkt/ambition/branches{/branch}","tags_url":"https://api.github.com/repos/defunkt/ambition/tags","blobs_url":"https://api.github.com/repos/defunkt/ambition/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/defunkt/ambition/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/defunkt/ambition/git/refs{/sha}","trees_url":"https://api.github.com/repos/defunkt/ambition/git/trees{/sha}","statuses_url":"https://api.github.com/repos/defunkt/ambition/statuses/{sha}","languages_url":"https://api.github.com/repos/defunkt/ambition/languages","stargazers_url":"https://api.github.com/repos/defunkt/ambition/stargazers","contributors_url":"https://api.github.com/repos/defunkt/ambition/contributors","subscribers_url":"https://api.github.com/repos/defunkt/ambition/subscribers","subscription_url":"https://api.github.com/repos/defunkt/ambition/subscription","commits_url":"https://api.github.com/repos/defunkt/ambition/commits{/sha}","git_commits_url":"https://api.github.com/repos/defunkt/ambition/git/commits{/sha}","comments_url":"https://api.github.com/repos/defunkt/ambition/comments{/number}","issue_comment_url":"https://api.github.com/repos/defunkt/ambition/issues/comments/{number}","contents_url":"https://api.github.com/repos/defunkt/ambition/contents/{+path}","compare_url":"https://api.github.com/repos/defunkt/ambition/compare/{base}...{head}","merges_url":"https://api.github.com/repos/defunkt/ambition/merges","archive_url":"https://api.github.com/repos/defunkt/ambition/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/defunkt/ambition/downloads","issues_url":"https://api.github.com/repos/defunkt/ambition/issues{/number}","pulls_url":"https://api.github.com/repos/defunkt/ambition/pulls{/number}","milestones_url":"https://api.github.com/repos/defunkt/ambition/milestones{/number}","notifications_url":"https://api.github.com/repos/defunkt/ambition/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/defunkt/ambition/labels{/name}"},{"id":42,"name":"restful-authentication","full_name":"technoweenie/restful-authentication","owner":{"login":"technoweenie","id":21,"avatar_url":"https://1.gravatar.com/avatar/821395fe70906c8290df7f18ac4ac6cf?d=https%3A%2F%2Fidenticons.github.com%2F3c59dc048e8850243be8079a5c74d079.png","gravatar_id":"821395fe70906c8290df7f18ac4ac6cf","url":"https://api.github.com/users/technoweenie","html_url":"https://github.com/technoweenie","followers_url":"https://api.github.com/users/technoweenie/followers","following_url":"https://api.github.com/users/technoweenie/following{/other_user}","gists_url":"https://api.github.com/users/technoweenie/gists{/gist_id}","starred_url":"https://api.github.com/users/technoweenie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/technoweenie/subscriptions","organizations_url":"https://api.github.com/users/technoweenie/orgs","repos_url":"https://api.github.com/users/technoweenie/repos","events_url":"https://api.github.com/users/technoweenie/events{/privacy}","received_events_url":"https://api.github.com/users/technoweenie/received_events","type":"User"},"private":false,"html_url":"https://github.com/technoweenie/restful-authentication","description":"Generates common user authentication code for Rails/Merb, with a full test/unit and rspec suite and optional Acts as State Machine support built-in.","fork":false,"url":"https://api.github.com/repos/technoweenie/restful-authentication","forks_url":"https://api.github.com/repos/technoweenie/restful-authentication/forks","keys_url":"https://api.github.com/repos/technoweenie/restful-authentication/keys{/key_id}","collaborators_url":"https://api.github.com/repos/technoweenie/restful-authentication/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/technoweenie/restful-authentication/teams","hooks_url":"https://api.github.com/repos/technoweenie/restful-authentication/hooks","issue_events_url":"https://api.github.com/repos/technoweenie/restful-authentication/issues/events{/number}","events_url":"https://api.github.com/repos/technoweenie/restful-authentication/events","assignees_url":"https://api.github.com/repos/technoweenie/restful-authentication/assignees{/user}","branches_url":"https://api.github.com/repos/technoweenie/restful-authentication/branches{/branch}","tags_url":"https://api.github.com/repos/technoweenie/restful-authentication/tags","blobs_url":"https://api.github.com/repos/technoweenie/restful-authentication/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/technoweenie/restful-authentication/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/technoweenie/restful-authentication/git/refs{/sha}","trees_url":"https://api.github.com/repos/technoweenie/restful-authentication/git/trees{/sha}","statuses_url":"https://api.github.com/repos/technoweenie/restful-authentication/statuses/{sha}","languages_url":"https://api.github.com/repos/technoweenie/restful-authentication/languages","stargazers_url":"https://api.github.com/repos/technoweenie/restful-authentication/stargazers","contributors_url":"https://api.github.com/repos/technoweenie/restful-authentication/contributors","subscribers_url":"https://api.github.com/repos/technoweenie/restful-authentication/subscribers","subscription_url":"https://api.github.com/repos/technoweenie/restful-authentication/subscription","commits_url":"https://api.github.com/repos/technoweenie/restful-authentication/commits{/sha}","git_commits_url":"https://api.github.com/repos/technoweenie/restful-authentication/git/commits{/sha}","comments_url":"https://api.github.com/repos/technoweenie/restful-authentication/comments{/number}","issue_comment_url":"https://api.github.com/repos/technoweenie/restful-authentication/issues/comments/{number}","contents_url":"https://api.github.com/repos/technoweenie/restful-authentication/contents/{+path}","compare_url":"https://api.github.com/repos/technoweenie/restful-authentication/compare/{base}...{head}","merges_url":"https://api.github.com/repos/technoweenie/restful-authentication/merges","archive_url":"https://api.github.com/repos/technoweenie/restful-authentication/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/technoweenie/restful-authentication/downloads","issues_url":"https://api.github.com/repos/technoweenie/restful-authentication/issues{/number}","pulls_url":"https://api.github.com/repos/technoweenie/restful-authentication/pulls{/number}","milestones_url":"https://api.github.com/repos/technoweenie/restful-authentication/milestones{/number}","notifications_url":"https://api.github.com/repos/technoweenie/restful-authentication/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/technoweenie/restful-authentication/labels{/name}"},{"id":43,"name":"attachment_fu","full_name":"technoweenie/attachment_fu","owner":{"login":"technoweenie","id":21,"avatar_url":"https://1.gravatar.com/avatar/821395fe70906c8290df7f18ac4ac6cf?d=https%3A%2F%2Fidenticons.github.com%2F3c59dc048e8850243be8079a5c74d079.png","gravatar_id":"821395fe70906c8290df7f18ac4ac6cf","url":"https://api.github.com/users/technoweenie","html_url":"https://github.com/technoweenie","followers_url":"https://api.github.com/users/technoweenie/followers","following_url":"https://api.github.com/users/technoweenie/following{/other_user}","gists_url":"https://api.github.com/users/technoweenie/gists{/gist_id}","starred_url":"https://api.github.com/users/technoweenie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/technoweenie/subscriptions","organizations_url":"https://api.github.com/users/technoweenie/orgs","repos_url":"https://api.github.com/users/technoweenie/repos","events_url":"https://api.github.com/users/technoweenie/events{/privacy}","received_events_url":"https://api.github.com/users/technoweenie/received_events","type":"User"},"private":false,"html_url":"https://github.com/technoweenie/attachment_fu","description":"Treat an ActiveRecord model as a file attachment, storing its patch, size, content type, etc.","fork":false,"url":"https://api.github.com/repos/technoweenie/attachment_fu","forks_url":"https://api.github.com/repos/technoweenie/attachment_fu/forks","keys_url":"https://api.github.com/repos/technoweenie/attachment_fu/keys{/key_id}","collaborators_url":"https://api.github.com/repos/technoweenie/attachment_fu/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/technoweenie/attachment_fu/teams","hooks_url":"https://api.github.com/repos/technoweenie/attachment_fu/hooks","issue_events_url":"https://api.github.com/repos/technoweenie/attachment_fu/issues/events{/number}","events_url":"https://api.github.com/repos/technoweenie/attachment_fu/events","assignees_url":"https://api.github.com/repos/technoweenie/attachment_fu/assignees{/user}","branches_url":"https://api.github.com/repos/technoweenie/attachment_fu/branches{/branch}","tags_url":"https://api.github.com/repos/technoweenie/attachment_fu/tags","blobs_url":"https://api.github.com/repos/technoweenie/attachment_fu/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/technoweenie/attachment_fu/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/technoweenie/attachment_fu/git/refs{/sha}","trees_url":"https://api.github.com/repos/technoweenie/attachment_fu/git/trees{/sha}","statuses_url":"https://api.github.com/repos/technoweenie/attachment_fu/statuses/{sha}","languages_url":"https://api.github.com/repos/technoweenie/attachment_fu/languages","stargazers_url":"https://api.github.com/repos/technoweenie/attachment_fu/stargazers","contributors_url":"https://api.github.com/repos/technoweenie/attachment_fu/contributors","subscribers_url":"https://api.github.com/repos/technoweenie/attachment_fu/subscribers","subscription_url":"https://api.github.com/repos/technoweenie/attachment_fu/subscription","commits_url":"https://api.github.com/repos/technoweenie/attachment_fu/commits{/sha}","git_commits_url":"https://api.github.com/repos/technoweenie/attachment_fu/git/commits{/sha}","comments_url":"https://api.github.com/repos/technoweenie/attachment_fu/comments{/number}","issue_comment_url":"https://api.github.com/repos/technoweenie/attachment_fu/issues/comments/{number}","contents_url":"https://api.github.com/repos/technoweenie/attachment_fu/contents/{+path}","compare_url":"https://api.github.com/repos/technoweenie/attachment_fu/compare/{base}...{head}","merges_url":"https://api.github.com/repos/technoweenie/attachment_fu/merges","archive_url":"https://api.github.com/repos/technoweenie/attachment_fu/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/technoweenie/attachment_fu/downloads","issues_url":"https://api.github.com/repos/technoweenie/attachment_fu/issues{/number}","pulls_url":"https://api.github.com/repos/technoweenie/attachment_fu/pulls{/number}","milestones_url":"https://api.github.com/repos/technoweenie/attachment_fu/milestones{/number}","notifications_url":"https://api.github.com/repos/technoweenie/attachment_fu/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/technoweenie/attachment_fu/labels{/name}"},{"id":47,"name":"bong","full_name":"topfunky/bong","owner":{"login":"topfunky","id":26,"avatar_url":"https://2.gravatar.com/avatar/a9d024f5032b8de04d7c74528beb77ab?d=https%3A%2F%2Fidenticons.github.com%2F4e732ced3463d06de0ca9a15b6153677.png","gravatar_id":"a9d024f5032b8de04d7c74528beb77ab","url":"https://api.github.com/users/topfunky","html_url":"https://github.com/topfunky","followers_url":"https://api.github.com/users/topfunky/followers","following_url":"https://api.github.com/users/topfunky/following{/other_user}","gists_url":"https://api.github.com/users/topfunky/gists{/gist_id}","starred_url":"https://api.github.com/users/topfunky/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/topfunky/subscriptions","organizations_url":"https://api.github.com/users/topfunky/orgs","repos_url":"https://api.github.com/users/topfunky/repos","events_url":"https://api.github.com/users/topfunky/events{/privacy}","received_events_url":"https://api.github.com/users/topfunky/received_events","type":"User"},"private":false,"html_url":"https://github.com/topfunky/bong","description":"A benchmarking helper for httperf.","fork":false,"url":"https://api.github.com/repos/topfunky/bong","forks_url":"https://api.github.com/repos/topfunky/bong/forks","keys_url":"https://api.github.com/repos/topfunky/bong/keys{/key_id}","collaborators_url":"https://api.github.com/repos/topfunky/bong/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/topfunky/bong/teams","hooks_url":"https://api.github.com/repos/topfunky/bong/hooks","issue_events_url":"https://api.github.com/repos/topfunky/bong/issues/events{/number}","events_url":"https://api.github.com/repos/topfunky/bong/events","assignees_url":"https://api.github.com/repos/topfunky/bong/assignees{/user}","branches_url":"https://api.github.com/repos/topfunky/bong/branches{/branch}","tags_url":"https://api.github.com/repos/topfunky/bong/tags","blobs_url":"https://api.github.com/repos/topfunky/bong/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/topfunky/bong/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/topfunky/bong/git/refs{/sha}","trees_url":"https://api.github.com/repos/topfunky/bong/git/trees{/sha}","statuses_url":"https://api.github.com/repos/topfunky/bong/statuses/{sha}","languages_url":"https://api.github.com/repos/topfunky/bong/languages","stargazers_url":"https://api.github.com/repos/topfunky/bong/stargazers","contributors_url":"https://api.github.com/repos/topfunky/bong/contributors","subscribers_url":"https://api.github.com/repos/topfunky/bong/subscribers","subscription_url":"https://api.github.com/repos/topfunky/bong/subscription","commits_url":"https://api.github.com/repos/topfunky/bong/commits{/sha}","git_commits_url":"https://api.github.com/repos/topfunky/bong/git/commits{/sha}","comments_url":"https://api.github.com/repos/topfunky/bong/comments{/number}","issue_comment_url":"https://api.github.com/repos/topfunky/bong/issues/comments/{number}","contents_url":"https://api.github.com/repos/topfunky/bong/contents/{+path}","compare_url":"https://api.github.com/repos/topfunky/bong/compare/{base}...{head}","merges_url":"https://api.github.com/repos/topfunky/bong/merges","archive_url":"https://api.github.com/repos/topfunky/bong/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/topfunky/bong/downloads","issues_url":"https://api.github.com/repos/topfunky/bong/issues{/number}","pulls_url":"https://api.github.com/repos/topfunky/bong/pulls{/number}","milestones_url":"https://api.github.com/repos/topfunky/bong/milestones{/number}","notifications_url":"https://api.github.com/repos/topfunky/bong/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/topfunky/bong/labels{/name}"},{"id":48,"name":"microsis","full_name":"Caged/microsis","owner":{"login":"Caged","id":25,"avatar_url":"https://2.gravatar.com/avatar/97c3a8eea9b7eaa9e1e93ea3cd47399f?d=https%3A%2F%2Fidenticons.github.com%2F8e296a067a37563370ded05f5a3bf3ec.png","gravatar_id":"97c3a8eea9b7eaa9e1e93ea3cd47399f","url":"https://api.github.com/users/Caged","html_url":"https://github.com/Caged","followers_url":"https://api.github.com/users/Caged/followers","following_url":"https://api.github.com/users/Caged/following{/other_user}","gists_url":"https://api.github.com/users/Caged/gists{/gist_id}","starred_url":"https://api.github.com/users/Caged/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Caged/subscriptions","organizations_url":"https://api.github.com/users/Caged/orgs","repos_url":"https://api.github.com/users/Caged/repos","events_url":"https://api.github.com/users/Caged/events{/privacy}","received_events_url":"https://api.github.com/users/Caged/received_events","type":"User"},"private":false,"html_url":"https://github.com/Caged/microsis","description":"SUPER OLD STUFF","fork":false,"url":"https://api.github.com/repos/Caged/microsis","forks_url":"https://api.github.com/repos/Caged/microsis/forks","keys_url":"https://api.github.com/repos/Caged/microsis/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Caged/microsis/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Caged/microsis/teams","hooks_url":"https://api.github.com/repos/Caged/microsis/hooks","issue_events_url":"https://api.github.com/repos/Caged/microsis/issues/events{/number}","events_url":"https://api.github.com/repos/Caged/microsis/events","assignees_url":"https://api.github.com/repos/Caged/microsis/assignees{/user}","branches_url":"https://api.github.com/repos/Caged/microsis/branches{/branch}","tags_url":"https://api.github.com/repos/Caged/microsis/tags","blobs_url":"https://api.github.com/repos/Caged/microsis/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Caged/microsis/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Caged/microsis/git/refs{/sha}","trees_url":"https://api.github.com/repos/Caged/microsis/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Caged/microsis/statuses/{sha}","languages_url":"https://api.github.com/repos/Caged/microsis/languages","stargazers_url":"https://api.github.com/repos/Caged/microsis/stargazers","contributors_url":"https://api.github.com/repos/Caged/microsis/contributors","subscribers_url":"https://api.github.com/repos/Caged/microsis/subscribers","subscription_url":"https://api.github.com/repos/Caged/microsis/subscription","commits_url":"https://api.github.com/repos/Caged/microsis/commits{/sha}","git_commits_url":"https://api.github.com/repos/Caged/microsis/git/commits{/sha}","comments_url":"https://api.github.com/repos/Caged/microsis/comments{/number}","issue_comment_url":"https://api.github.com/repos/Caged/microsis/issues/comments/{number}","contents_url":"https://api.github.com/repos/Caged/microsis/contents/{+path}","compare_url":"https://api.github.com/repos/Caged/microsis/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Caged/microsis/merges","archive_url":"https://api.github.com/repos/Caged/microsis/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Caged/microsis/downloads","issues_url":"https://api.github.com/repos/Caged/microsis/issues{/number}","pulls_url":"https://api.github.com/repos/Caged/microsis/pulls{/number}","milestones_url":"https://api.github.com/repos/Caged/microsis/milestones{/number}","notifications_url":"https://api.github.com/repos/Caged/microsis/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Caged/microsis/labels{/name}"},{"id":52,"name":"s3","full_name":"anotherjesse/s3","owner":{"login":"anotherjesse","id":27,"avatar_url":"https://2.gravatar.com/avatar/50d10a8864accf0b2522c326381a4702?d=https%3A%2F%2Fidenticons.github.com%2F02e74f10e0327ad868d138f2b4fdd6f0.png","gravatar_id":"50d10a8864accf0b2522c326381a4702","url":"https://api.github.com/users/anotherjesse","html_url":"https://github.com/anotherjesse","followers_url":"https://api.github.com/users/anotherjesse/followers","following_url":"https://api.github.com/users/anotherjesse/following{/other_user}","gists_url":"https://api.github.com/users/anotherjesse/gists{/gist_id}","starred_url":"https://api.github.com/users/anotherjesse/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/anotherjesse/subscriptions","organizations_url":"https://api.github.com/users/anotherjesse/orgs","repos_url":"https://api.github.com/users/anotherjesse/repos","events_url":"https://api.github.com/users/anotherjesse/events{/privacy}","received_events_url":"https://api.github.com/users/anotherjesse/received_events","type":"User"},"private":false,"html_url":"https://github.com/anotherjesse/s3","description":"psuedo s3 protocol for mozilla browsers","fork":false,"url":"https://api.github.com/repos/anotherjesse/s3","forks_url":"https://api.github.com/repos/anotherjesse/s3/forks","keys_url":"https://api.github.com/repos/anotherjesse/s3/keys{/key_id}","collaborators_url":"https://api.github.com/repos/anotherjesse/s3/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/anotherjesse/s3/teams","hooks_url":"https://api.github.com/repos/anotherjesse/s3/hooks","issue_events_url":"https://api.github.com/repos/anotherjesse/s3/issues/events{/number}","events_url":"https://api.github.com/repos/anotherjesse/s3/events","assignees_url":"https://api.github.com/repos/anotherjesse/s3/assignees{/user}","branches_url":"https://api.github.com/repos/anotherjesse/s3/branches{/branch}","tags_url":"https://api.github.com/repos/anotherjesse/s3/tags","blobs_url":"https://api.github.com/repos/anotherjesse/s3/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/anotherjesse/s3/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/anotherjesse/s3/git/refs{/sha}","trees_url":"https://api.github.com/repos/anotherjesse/s3/git/trees{/sha}","statuses_url":"https://api.github.com/repos/anotherjesse/s3/statuses/{sha}","languages_url":"https://api.github.com/repos/anotherjesse/s3/languages","stargazers_url":"https://api.github.com/repos/anotherjesse/s3/stargazers","contributors_url":"https://api.github.com/repos/anotherjesse/s3/contributors","subscribers_url":"https://api.github.com/repos/anotherjesse/s3/subscribers","subscription_url":"https://api.github.com/repos/anotherjesse/s3/subscription","commits_url":"https://api.github.com/repos/anotherjesse/s3/commits{/sha}","git_commits_url":"https://api.github.com/repos/anotherjesse/s3/git/commits{/sha}","comments_url":"https://api.github.com/repos/anotherjesse/s3/comments{/number}","issue_comment_url":"https://api.github.com/repos/anotherjesse/s3/issues/comments/{number}","contents_url":"https://api.github.com/repos/anotherjesse/s3/contents/{+path}","compare_url":"https://api.github.com/repos/anotherjesse/s3/compare/{base}...{head}","merges_url":"https://api.github.com/repos/anotherjesse/s3/merges","archive_url":"https://api.github.com/repos/anotherjesse/s3/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/anotherjesse/s3/downloads","issues_url":"https://api.github.com/repos/anotherjesse/s3/issues{/number}","pulls_url":"https://api.github.com/repos/anotherjesse/s3/pulls{/number}","milestones_url":"https://api.github.com/repos/anotherjesse/s3/milestones{/number}","notifications_url":"https://api.github.com/repos/anotherjesse/s3/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/anotherjesse/s3/labels{/name}"},{"id":53,"name":"taboo","full_name":"anotherjesse/taboo","owner":{"login":"anotherjesse","id":27,"avatar_url":"https://2.gravatar.com/avatar/50d10a8864accf0b2522c326381a4702?d=https%3A%2F%2Fidenticons.github.com%2F02e74f10e0327ad868d138f2b4fdd6f0.png","gravatar_id":"50d10a8864accf0b2522c326381a4702","url":"https://api.github.com/users/anotherjesse","html_url":"https://github.com/anotherjesse","followers_url":"https://api.github.com/users/anotherjesse/followers","following_url":"https://api.github.com/users/anotherjesse/following{/other_user}","gists_url":"https://api.github.com/users/anotherjesse/gists{/gist_id}","starred_url":"https://api.github.com/users/anotherjesse/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/anotherjesse/subscriptions","organizations_url":"https://api.github.com/users/anotherjesse/orgs","repos_url":"https://api.github.com/users/anotherjesse/repos","events_url":"https://api.github.com/users/anotherjesse/events{/privacy}","received_events_url":"https://api.github.com/users/anotherjesse/received_events","type":"User"},"private":false,"html_url":"https://github.com/anotherjesse/taboo","description":"The solution for tabitus of the browser ","fork":false,"url":"https://api.github.com/repos/anotherjesse/taboo","forks_url":"https://api.github.com/repos/anotherjesse/taboo/forks","keys_url":"https://api.github.com/repos/anotherjesse/taboo/keys{/key_id}","collaborators_url":"https://api.github.com/repos/anotherjesse/taboo/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/anotherjesse/taboo/teams","hooks_url":"https://api.github.com/repos/anotherjesse/taboo/hooks","issue_events_url":"https://api.github.com/repos/anotherjesse/taboo/issues/events{/number}","events_url":"https://api.github.com/repos/anotherjesse/taboo/events","assignees_url":"https://api.github.com/repos/anotherjesse/taboo/assignees{/user}","branches_url":"https://api.github.com/repos/anotherjesse/taboo/branches{/branch}","tags_url":"https://api.github.com/repos/anotherjesse/taboo/tags","blobs_url":"https://api.github.com/repos/anotherjesse/taboo/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/anotherjesse/taboo/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/anotherjesse/taboo/git/refs{/sha}","trees_url":"https://api.github.com/repos/anotherjesse/taboo/git/trees{/sha}","statuses_url":"https://api.github.com/repos/anotherjesse/taboo/statuses/{sha}","languages_url":"https://api.github.com/repos/anotherjesse/taboo/languages","stargazers_url":"https://api.github.com/repos/anotherjesse/taboo/stargazers","contributors_url":"https://api.github.com/repos/anotherjesse/taboo/contributors","subscribers_url":"https://api.github.com/repos/anotherjesse/taboo/subscribers","subscription_url":"https://api.github.com/repos/anotherjesse/taboo/subscription","commits_url":"https://api.github.com/repos/anotherjesse/taboo/commits{/sha}","git_commits_url":"https://api.github.com/repos/anotherjesse/taboo/git/commits{/sha}","comments_url":"https://api.github.com/repos/anotherjesse/taboo/comments{/number}","issue_comment_url":"https://api.github.com/repos/anotherjesse/taboo/issues/comments/{number}","contents_url":"https://api.github.com/repos/anotherjesse/taboo/contents/{+path}","compare_url":"https://api.github.com/repos/anotherjesse/taboo/compare/{base}...{head}","merges_url":"https://api.github.com/repos/anotherjesse/taboo/merges","archive_url":"https://api.github.com/repos/anotherjesse/taboo/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/anotherjesse/taboo/downloads","issues_url":"https://api.github.com/repos/anotherjesse/taboo/issues{/number}","pulls_url":"https://api.github.com/repos/anotherjesse/taboo/pulls{/number}","milestones_url":"https://api.github.com/repos/anotherjesse/taboo/milestones{/number}","notifications_url":"https://api.github.com/repos/anotherjesse/taboo/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/anotherjesse/taboo/labels{/name}"},{"id":54,"name":"foxtracs","full_name":"anotherjesse/foxtracs","owner":{"login":"anotherjesse","id":27,"avatar_url":"https://2.gravatar.com/avatar/50d10a8864accf0b2522c326381a4702?d=https%3A%2F%2Fidenticons.github.com%2F02e74f10e0327ad868d138f2b4fdd6f0.png","gravatar_id":"50d10a8864accf0b2522c326381a4702","url":"https://api.github.com/users/anotherjesse","html_url":"https://github.com/anotherjesse","followers_url":"https://api.github.com/users/anotherjesse/followers","following_url":"https://api.github.com/users/anotherjesse/following{/other_user}","gists_url":"https://api.github.com/users/anotherjesse/gists{/gist_id}","starred_url":"https://api.github.com/users/anotherjesse/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/anotherjesse/subscriptions","organizations_url":"https://api.github.com/users/anotherjesse/orgs","repos_url":"https://api.github.com/users/anotherjesse/repos","events_url":"https://api.github.com/users/anotherjesse/events{/privacy}","received_events_url":"https://api.github.com/users/anotherjesse/received_events","type":"User"},"private":false,"html_url":"https://github.com/anotherjesse/foxtracs","description":"firefox trac integration","fork":false,"url":"https://api.github.com/repos/anotherjesse/foxtracs","forks_url":"https://api.github.com/repos/anotherjesse/foxtracs/forks","keys_url":"https://api.github.com/repos/anotherjesse/foxtracs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/anotherjesse/foxtracs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/anotherjesse/foxtracs/teams","hooks_url":"https://api.github.com/repos/anotherjesse/foxtracs/hooks","issue_events_url":"https://api.github.com/repos/anotherjesse/foxtracs/issues/events{/number}","events_url":"https://api.github.com/repos/anotherjesse/foxtracs/events","assignees_url":"https://api.github.com/repos/anotherjesse/foxtracs/assignees{/user}","branches_url":"https://api.github.com/repos/anotherjesse/foxtracs/branches{/branch}","tags_url":"https://api.github.com/repos/anotherjesse/foxtracs/tags","blobs_url":"https://api.github.com/repos/anotherjesse/foxtracs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/anotherjesse/foxtracs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/anotherjesse/foxtracs/git/refs{/sha}","trees_url":"https://api.github.com/repos/anotherjesse/foxtracs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/anotherjesse/foxtracs/statuses/{sha}","languages_url":"https://api.github.com/repos/anotherjesse/foxtracs/languages","stargazers_url":"https://api.github.com/repos/anotherjesse/foxtracs/stargazers","contributors_url":"https://api.github.com/repos/anotherjesse/foxtracs/contributors","subscribers_url":"https://api.github.com/repos/anotherjesse/foxtracs/subscribers","subscription_url":"https://api.github.com/repos/anotherjesse/foxtracs/subscription","commits_url":"https://api.github.com/repos/anotherjesse/foxtracs/commits{/sha}","git_commits_url":"https://api.github.com/repos/anotherjesse/foxtracs/git/commits{/sha}","comments_url":"https://api.github.com/repos/anotherjesse/foxtracs/comments{/number}","issue_comment_url":"https://api.github.com/repos/anotherjesse/foxtracs/issues/comments/{number}","contents_url":"https://api.github.com/repos/anotherjesse/foxtracs/contents/{+path}","compare_url":"https://api.github.com/repos/anotherjesse/foxtracs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/anotherjesse/foxtracs/merges","archive_url":"https://api.github.com/repos/anotherjesse/foxtracs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/anotherjesse/foxtracs/downloads","issues_url":"https://api.github.com/repos/anotherjesse/foxtracs/issues{/number}","pulls_url":"https://api.github.com/repos/anotherjesse/foxtracs/pulls{/number}","milestones_url":"https://api.github.com/repos/anotherjesse/foxtracs/milestones{/number}","notifications_url":"https://api.github.com/repos/anotherjesse/foxtracs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/anotherjesse/foxtracs/labels{/name}"},{"id":56,"name":"fotomatic","full_name":"anotherjesse/fotomatic","owner":{"login":"anotherjesse","id":27,"avatar_url":"https://2.gravatar.com/avatar/50d10a8864accf0b2522c326381a4702?d=https%3A%2F%2Fidenticons.github.com%2F02e74f10e0327ad868d138f2b4fdd6f0.png","gravatar_id":"50d10a8864accf0b2522c326381a4702","url":"https://api.github.com/users/anotherjesse","html_url":"https://github.com/anotherjesse","followers_url":"https://api.github.com/users/anotherjesse/followers","following_url":"https://api.github.com/users/anotherjesse/following{/other_user}","gists_url":"https://api.github.com/users/anotherjesse/gists{/gist_id}","starred_url":"https://api.github.com/users/anotherjesse/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/anotherjesse/subscriptions","organizations_url":"https://api.github.com/users/anotherjesse/orgs","repos_url":"https://api.github.com/users/anotherjesse/repos","events_url":"https://api.github.com/users/anotherjesse/events{/privacy}","received_events_url":"https://api.github.com/users/anotherjesse/received_events","type":"User"},"private":false,"html_url":"https://github.com/anotherjesse/fotomatic","description":"Flash photo widget prototype - hacked at last SHDH of 2007","fork":false,"url":"https://api.github.com/repos/anotherjesse/fotomatic","forks_url":"https://api.github.com/repos/anotherjesse/fotomatic/forks","keys_url":"https://api.github.com/repos/anotherjesse/fotomatic/keys{/key_id}","collaborators_url":"https://api.github.com/repos/anotherjesse/fotomatic/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/anotherjesse/fotomatic/teams","hooks_url":"https://api.github.com/repos/anotherjesse/fotomatic/hooks","issue_events_url":"https://api.github.com/repos/anotherjesse/fotomatic/issues/events{/number}","events_url":"https://api.github.com/repos/anotherjesse/fotomatic/events","assignees_url":"https://api.github.com/repos/anotherjesse/fotomatic/assignees{/user}","branches_url":"https://api.github.com/repos/anotherjesse/fotomatic/branches{/branch}","tags_url":"https://api.github.com/repos/anotherjesse/fotomatic/tags","blobs_url":"https://api.github.com/repos/anotherjesse/fotomatic/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/anotherjesse/fotomatic/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/anotherjesse/fotomatic/git/refs{/sha}","trees_url":"https://api.github.com/repos/anotherjesse/fotomatic/git/trees{/sha}","statuses_url":"https://api.github.com/repos/anotherjesse/fotomatic/statuses/{sha}","languages_url":"https://api.github.com/repos/anotherjesse/fotomatic/languages","stargazers_url":"https://api.github.com/repos/anotherjesse/fotomatic/stargazers","contributors_url":"https://api.github.com/repos/anotherjesse/fotomatic/contributors","subscribers_url":"https://api.github.com/repos/anotherjesse/fotomatic/subscribers","subscription_url":"https://api.github.com/repos/anotherjesse/fotomatic/subscription","commits_url":"https://api.github.com/repos/anotherjesse/fotomatic/commits{/sha}","git_commits_url":"https://api.github.com/repos/anotherjesse/fotomatic/git/commits{/sha}","comments_url":"https://api.github.com/repos/anotherjesse/fotomatic/comments{/number}","issue_comment_url":"https://api.github.com/repos/anotherjesse/fotomatic/issues/comments/{number}","contents_url":"https://api.github.com/repos/anotherjesse/fotomatic/contents/{+path}","compare_url":"https://api.github.com/repos/anotherjesse/fotomatic/compare/{base}...{head}","merges_url":"https://api.github.com/repos/anotherjesse/fotomatic/merges","archive_url":"https://api.github.com/repos/anotherjesse/fotomatic/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/anotherjesse/fotomatic/downloads","issues_url":"https://api.github.com/repos/anotherjesse/fotomatic/issues{/number}","pulls_url":"https://api.github.com/repos/anotherjesse/fotomatic/pulls{/number}","milestones_url":"https://api.github.com/repos/anotherjesse/fotomatic/milestones{/number}","notifications_url":"https://api.github.com/repos/anotherjesse/fotomatic/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/anotherjesse/fotomatic/labels{/name}"},{"id":61,"name":"glowstick","full_name":"mojombo/glowstick","owner":{"login":"mojombo","id":1,"avatar_url":"https://1.gravatar.com/avatar/25c7c18223fb42a4c6ae1c8db6f50f9b?d=https%3A%2F%2Fidenticons.github.com%2Fc4ca4238a0b923820dcc509a6f75849b.png","gravatar_id":"25c7c18223fb42a4c6ae1c8db6f50f9b","url":"https://api.github.com/users/mojombo","html_url":"https://github.com/mojombo","followers_url":"https://api.github.com/users/mojombo/followers","following_url":"https://api.github.com/users/mojombo/following{/other_user}","gists_url":"https://api.github.com/users/mojombo/gists{/gist_id}","starred_url":"https://api.github.com/users/mojombo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mojombo/subscriptions","organizations_url":"https://api.github.com/users/mojombo/orgs","repos_url":"https://api.github.com/users/mojombo/repos","events_url":"https://api.github.com/users/mojombo/events{/privacy}","received_events_url":"https://api.github.com/users/mojombo/received_events","type":"User"},"private":false,"html_url":"https://github.com/mojombo/glowstick","description":"A realtime, OpenGL graphing library for Ruby","fork":false,"url":"https://api.github.com/repos/mojombo/glowstick","forks_url":"https://api.github.com/repos/mojombo/glowstick/forks","keys_url":"https://api.github.com/repos/mojombo/glowstick/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mojombo/glowstick/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mojombo/glowstick/teams","hooks_url":"https://api.github.com/repos/mojombo/glowstick/hooks","issue_events_url":"https://api.github.com/repos/mojombo/glowstick/issues/events{/number}","events_url":"https://api.github.com/repos/mojombo/glowstick/events","assignees_url":"https://api.github.com/repos/mojombo/glowstick/assignees{/user}","branches_url":"https://api.github.com/repos/mojombo/glowstick/branches{/branch}","tags_url":"https://api.github.com/repos/mojombo/glowstick/tags","blobs_url":"https://api.github.com/repos/mojombo/glowstick/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mojombo/glowstick/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mojombo/glowstick/git/refs{/sha}","trees_url":"https://api.github.com/repos/mojombo/glowstick/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mojombo/glowstick/statuses/{sha}","languages_url":"https://api.github.com/repos/mojombo/glowstick/languages","stargazers_url":"https://api.github.com/repos/mojombo/glowstick/stargazers","contributors_url":"https://api.github.com/repos/mojombo/glowstick/contributors","subscribers_url":"https://api.github.com/repos/mojombo/glowstick/subscribers","subscription_url":"https://api.github.com/repos/mojombo/glowstick/subscription","commits_url":"https://api.github.com/repos/mojombo/glowstick/commits{/sha}","git_commits_url":"https://api.github.com/repos/mojombo/glowstick/git/commits{/sha}","comments_url":"https://api.github.com/repos/mojombo/glowstick/comments{/number}","issue_comment_url":"https://api.github.com/repos/mojombo/glowstick/issues/comments/{number}","contents_url":"https://api.github.com/repos/mojombo/glowstick/contents/{+path}","compare_url":"https://api.github.com/repos/mojombo/glowstick/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mojombo/glowstick/merges","archive_url":"https://api.github.com/repos/mojombo/glowstick/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mojombo/glowstick/downloads","issues_url":"https://api.github.com/repos/mojombo/glowstick/issues{/number}","pulls_url":"https://api.github.com/repos/mojombo/glowstick/pulls{/number}","milestones_url":"https://api.github.com/repos/mojombo/glowstick/milestones{/number}","notifications_url":"https://api.github.com/repos/mojombo/glowstick/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mojombo/glowstick/labels{/name}"},{"id":63,"name":"starling","full_name":"defunkt/starling","owner":{"login":"defunkt","id":2,"avatar_url":"https://2.gravatar.com/avatar/b8dbb1987e8e5318584865f880036796?d=https%3A%2F%2Fidenticons.github.com%2Fc81e728d9d4c2f636f067f89cc14862c.png","gravatar_id":"b8dbb1987e8e5318584865f880036796","url":"https://api.github.com/users/defunkt","html_url":"https://github.com/defunkt","followers_url":"https://api.github.com/users/defunkt/followers","following_url":"https://api.github.com/users/defunkt/following{/other_user}","gists_url":"https://api.github.com/users/defunkt/gists{/gist_id}","starred_url":"https://api.github.com/users/defunkt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/defunkt/subscriptions","organizations_url":"https://api.github.com/users/defunkt/orgs","repos_url":"https://api.github.com/users/defunkt/repos","events_url":"https://api.github.com/users/defunkt/events{/privacy}","received_events_url":"https://api.github.com/users/defunkt/received_events","type":"User"},"private":false,"html_url":"https://github.com/defunkt/starling","description":"","fork":false,"url":"https://api.github.com/repos/defunkt/starling","forks_url":"https://api.github.com/repos/defunkt/starling/forks","keys_url":"https://api.github.com/repos/defunkt/starling/keys{/key_id}","collaborators_url":"https://api.github.com/repos/defunkt/starling/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/defunkt/starling/teams","hooks_url":"https://api.github.com/repos/defunkt/starling/hooks","issue_events_url":"https://api.github.com/repos/defunkt/starling/issues/events{/number}","events_url":"https://api.github.com/repos/defunkt/starling/events","assignees_url":"https://api.github.com/repos/defunkt/starling/assignees{/user}","branches_url":"https://api.github.com/repos/defunkt/starling/branches{/branch}","tags_url":"https://api.github.com/repos/defunkt/starling/tags","blobs_url":"https://api.github.com/repos/defunkt/starling/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/defunkt/starling/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/defunkt/starling/git/refs{/sha}","trees_url":"https://api.github.com/repos/defunkt/starling/git/trees{/sha}","statuses_url":"https://api.github.com/repos/defunkt/starling/statuses/{sha}","languages_url":"https://api.github.com/repos/defunkt/starling/languages","stargazers_url":"https://api.github.com/repos/defunkt/starling/stargazers","contributors_url":"https://api.github.com/repos/defunkt/starling/contributors","subscribers_url":"https://api.github.com/repos/defunkt/starling/subscribers","subscription_url":"https://api.github.com/repos/defunkt/starling/subscription","commits_url":"https://api.github.com/repos/defunkt/starling/commits{/sha}","git_commits_url":"https://api.github.com/repos/defunkt/starling/git/commits{/sha}","comments_url":"https://api.github.com/repos/defunkt/starling/comments{/number}","issue_comment_url":"https://api.github.com/repos/defunkt/starling/issues/comments/{number}","contents_url":"https://api.github.com/repos/defunkt/starling/contents/{+path}","compare_url":"https://api.github.com/repos/defunkt/starling/compare/{base}...{head}","merges_url":"https://api.github.com/repos/defunkt/starling/merges","archive_url":"https://api.github.com/repos/defunkt/starling/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/defunkt/starling/downloads","issues_url":"https://api.github.com/repos/defunkt/starling/issues{/number}","pulls_url":"https://api.github.com/repos/defunkt/starling/pulls{/number}","milestones_url":"https://api.github.com/repos/defunkt/starling/milestones{/number}","notifications_url":"https://api.github.com/repos/defunkt/starling/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/defunkt/starling/labels{/name}"},{"id":65,"name":"merb-more","full_name":"wycats/merb-more","owner":{"login":"wycats","id":4,"avatar_url":"https://2.gravatar.com/avatar/428167a3ec72235ba971162924492609?d=https%3A%2F%2Fidenticons.github.com%2Fa87ff679a2f3e71d9181a67b7542122c.png","gravatar_id":"428167a3ec72235ba971162924492609","url":"https://api.github.com/users/wycats","html_url":"https://github.com/wycats","followers_url":"https://api.github.com/users/wycats/followers","following_url":"https://api.github.com/users/wycats/following{/other_user}","gists_url":"https://api.github.com/users/wycats/gists{/gist_id}","starred_url":"https://api.github.com/users/wycats/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wycats/subscriptions","organizations_url":"https://api.github.com/users/wycats/orgs","repos_url":"https://api.github.com/users/wycats/repos","events_url":"https://api.github.com/users/wycats/events{/privacy}","received_events_url":"https://api.github.com/users/wycats/received_events","type":"User"},"private":false,"html_url":"https://github.com/wycats/merb-more","description":"Merb More: The Full Stack. Take what you need; leave what you don't.","fork":false,"url":"https://api.github.com/repos/wycats/merb-more","forks_url":"https://api.github.com/repos/wycats/merb-more/forks","keys_url":"https://api.github.com/repos/wycats/merb-more/keys{/key_id}","collaborators_url":"https://api.github.com/repos/wycats/merb-more/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/wycats/merb-more/teams","hooks_url":"https://api.github.com/repos/wycats/merb-more/hooks","issue_events_url":"https://api.github.com/repos/wycats/merb-more/issues/events{/number}","events_url":"https://api.github.com/repos/wycats/merb-more/events","assignees_url":"https://api.github.com/repos/wycats/merb-more/assignees{/user}","branches_url":"https://api.github.com/repos/wycats/merb-more/branches{/branch}","tags_url":"https://api.github.com/repos/wycats/merb-more/tags","blobs_url":"https://api.github.com/repos/wycats/merb-more/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/wycats/merb-more/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/wycats/merb-more/git/refs{/sha}","trees_url":"https://api.github.com/repos/wycats/merb-more/git/trees{/sha}","statuses_url":"https://api.github.com/repos/wycats/merb-more/statuses/{sha}","languages_url":"https://api.github.com/repos/wycats/merb-more/languages","stargazers_url":"https://api.github.com/repos/wycats/merb-more/stargazers","contributors_url":"https://api.github.com/repos/wycats/merb-more/contributors","subscribers_url":"https://api.github.com/repos/wycats/merb-more/subscribers","subscription_url":"https://api.github.com/repos/wycats/merb-more/subscription","commits_url":"https://api.github.com/repos/wycats/merb-more/commits{/sha}","git_commits_url":"https://api.github.com/repos/wycats/merb-more/git/commits{/sha}","comments_url":"https://api.github.com/repos/wycats/merb-more/comments{/number}","issue_comment_url":"https://api.github.com/repos/wycats/merb-more/issues/comments/{number}","contents_url":"https://api.github.com/repos/wycats/merb-more/contents/{+path}","compare_url":"https://api.github.com/repos/wycats/merb-more/compare/{base}...{head}","merges_url":"https://api.github.com/repos/wycats/merb-more/merges","archive_url":"https://api.github.com/repos/wycats/merb-more/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/wycats/merb-more/downloads","issues_url":"https://api.github.com/repos/wycats/merb-more/issues{/number}","pulls_url":"https://api.github.com/repos/wycats/merb-more/pulls{/number}","milestones_url":"https://api.github.com/repos/wycats/merb-more/milestones{/number}","notifications_url":"https://api.github.com/repos/wycats/merb-more/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/wycats/merb-more/labels{/name}"},{"id":68,"name":"thin","full_name":"macournoyer/thin","owner":{"login":"macournoyer","id":22,"avatar_url":"https://0.gravatar.com/avatar/0d949b795e64e062c4c001c6f5a6f3f3?d=https%3A%2F%2Fidenticons.github.com%2Fb6d767d2f8ed5d21a44b0e5886680cb9.png","gravatar_id":"0d949b795e64e062c4c001c6f5a6f3f3","url":"https://api.github.com/users/macournoyer","html_url":"https://github.com/macournoyer","followers_url":"https://api.github.com/users/macournoyer/followers","following_url":"https://api.github.com/users/macournoyer/following{/other_user}","gists_url":"https://api.github.com/users/macournoyer/gists{/gist_id}","starred_url":"https://api.github.com/users/macournoyer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/macournoyer/subscriptions","organizations_url":"https://api.github.com/users/macournoyer/orgs","repos_url":"https://api.github.com/users/macournoyer/repos","events_url":"https://api.github.com/users/macournoyer/events{/privacy}","received_events_url":"https://api.github.com/users/macournoyer/received_events","type":"User"},"private":false,"html_url":"https://github.com/macournoyer/thin","description":"A very fast & simple Ruby web server","fork":false,"url":"https://api.github.com/repos/macournoyer/thin","forks_url":"https://api.github.com/repos/macournoyer/thin/forks","keys_url":"https://api.github.com/repos/macournoyer/thin/keys{/key_id}","collaborators_url":"https://api.github.com/repos/macournoyer/thin/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/macournoyer/thin/teams","hooks_url":"https://api.github.com/repos/macournoyer/thin/hooks","issue_events_url":"https://api.github.com/repos/macournoyer/thin/issues/events{/number}","events_url":"https://api.github.com/repos/macournoyer/thin/events","assignees_url":"https://api.github.com/repos/macournoyer/thin/assignees{/user}","branches_url":"https://api.github.com/repos/macournoyer/thin/branches{/branch}","tags_url":"https://api.github.com/repos/macournoyer/thin/tags","blobs_url":"https://api.github.com/repos/macournoyer/thin/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/macournoyer/thin/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/macournoyer/thin/git/refs{/sha}","trees_url":"https://api.github.com/repos/macournoyer/thin/git/trees{/sha}","statuses_url":"https://api.github.com/repos/macournoyer/thin/statuses/{sha}","languages_url":"https://api.github.com/repos/macournoyer/thin/languages","stargazers_url":"https://api.github.com/repos/macournoyer/thin/stargazers","contributors_url":"https://api.github.com/repos/macournoyer/thin/contributors","subscribers_url":"https://api.github.com/repos/macournoyer/thin/subscribers","subscription_url":"https://api.github.com/repos/macournoyer/thin/subscription","commits_url":"https://api.github.com/repos/macournoyer/thin/commits{/sha}","git_commits_url":"https://api.github.com/repos/macournoyer/thin/git/commits{/sha}","comments_url":"https://api.github.com/repos/macournoyer/thin/comments{/number}","issue_comment_url":"https://api.github.com/repos/macournoyer/thin/issues/comments/{number}","contents_url":"https://api.github.com/repos/macournoyer/thin/contents/{+path}","compare_url":"https://api.github.com/repos/macournoyer/thin/compare/{base}...{head}","merges_url":"https://api.github.com/repos/macournoyer/thin/merges","archive_url":"https://api.github.com/repos/macournoyer/thin/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/macournoyer/thin/downloads","issues_url":"https://api.github.com/repos/macournoyer/thin/issues{/number}","pulls_url":"https://api.github.com/repos/macournoyer/thin/pulls{/number}","milestones_url":"https://api.github.com/repos/macournoyer/thin/milestones{/number}","notifications_url":"https://api.github.com/repos/macournoyer/thin/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/macournoyer/thin/labels{/name}"},{"id":71,"name":"resource_controller","full_name":"jamesgolick/resource_controller","owner":{"login":"jamesgolick","id":37,"avatar_url":"https://2.gravatar.com/avatar/f6eddf2f983d23c2d031e407852625e9?d=https%3A%2F%2Fidenticons.github.com%2Fa5bfc9e07964f8dddeb95fc584cd965d.png","gravatar_id":"f6eddf2f983d23c2d031e407852625e9","url":"https://api.github.com/users/jamesgolick","html_url":"https://github.com/jamesgolick","followers_url":"https://api.github.com/users/jamesgolick/followers","following_url":"https://api.github.com/users/jamesgolick/following{/other_user}","gists_url":"https://api.github.com/users/jamesgolick/gists{/gist_id}","starred_url":"https://api.github.com/users/jamesgolick/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jamesgolick/subscriptions","organizations_url":"https://api.github.com/users/jamesgolick/orgs","repos_url":"https://api.github.com/users/jamesgolick/repos","events_url":"https://api.github.com/users/jamesgolick/events{/privacy}","received_events_url":"https://api.github.com/users/jamesgolick/received_events","type":"User"},"private":false,"html_url":"https://github.com/jamesgolick/resource_controller","description":"Rails RESTful controller abstraction plugin.","fork":false,"url":"https://api.github.com/repos/jamesgolick/resource_controller","forks_url":"https://api.github.com/repos/jamesgolick/resource_controller/forks","keys_url":"https://api.github.com/repos/jamesgolick/resource_controller/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jamesgolick/resource_controller/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jamesgolick/resource_controller/teams","hooks_url":"https://api.github.com/repos/jamesgolick/resource_controller/hooks","issue_events_url":"https://api.github.com/repos/jamesgolick/resource_controller/issues/events{/number}","events_url":"https://api.github.com/repos/jamesgolick/resource_controller/events","assignees_url":"https://api.github.com/repos/jamesgolick/resource_controller/assignees{/user}","branches_url":"https://api.github.com/repos/jamesgolick/resource_controller/branches{/branch}","tags_url":"https://api.github.com/repos/jamesgolick/resource_controller/tags","blobs_url":"https://api.github.com/repos/jamesgolick/resource_controller/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jamesgolick/resource_controller/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jamesgolick/resource_controller/git/refs{/sha}","trees_url":"https://api.github.com/repos/jamesgolick/resource_controller/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jamesgolick/resource_controller/statuses/{sha}","languages_url":"https://api.github.com/repos/jamesgolick/resource_controller/languages","stargazers_url":"https://api.github.com/repos/jamesgolick/resource_controller/stargazers","contributors_url":"https://api.github.com/repos/jamesgolick/resource_controller/contributors","subscribers_url":"https://api.github.com/repos/jamesgolick/resource_controller/subscribers","subscription_url":"https://api.github.com/repos/jamesgolick/resource_controller/subscription","commits_url":"https://api.github.com/repos/jamesgolick/resource_controller/commits{/sha}","git_commits_url":"https://api.github.com/repos/jamesgolick/resource_controller/git/commits{/sha}","comments_url":"https://api.github.com/repos/jamesgolick/resource_controller/comments{/number}","issue_comment_url":"https://api.github.com/repos/jamesgolick/resource_controller/issues/comments/{number}","contents_url":"https://api.github.com/repos/jamesgolick/resource_controller/contents/{+path}","compare_url":"https://api.github.com/repos/jamesgolick/resource_controller/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jamesgolick/resource_controller/merges","archive_url":"https://api.github.com/repos/jamesgolick/resource_controller/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jamesgolick/resource_controller/downloads","issues_url":"https://api.github.com/repos/jamesgolick/resource_controller/issues{/number}","pulls_url":"https://api.github.com/repos/jamesgolick/resource_controller/pulls{/number}","milestones_url":"https://api.github.com/repos/jamesgolick/resource_controller/milestones{/number}","notifications_url":"https://api.github.com/repos/jamesgolick/resource_controller/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jamesgolick/resource_controller/labels{/name}"},{"id":73,"name":"markaby","full_name":"jamesgolick/markaby","owner":{"login":"jamesgolick","id":37,"avatar_url":"https://2.gravatar.com/avatar/f6eddf2f983d23c2d031e407852625e9?d=https%3A%2F%2Fidenticons.github.com%2Fa5bfc9e07964f8dddeb95fc584cd965d.png","gravatar_id":"f6eddf2f983d23c2d031e407852625e9","url":"https://api.github.com/users/jamesgolick","html_url":"https://github.com/jamesgolick","followers_url":"https://api.github.com/users/jamesgolick/followers","following_url":"https://api.github.com/users/jamesgolick/following{/other_user}","gists_url":"https://api.github.com/users/jamesgolick/gists{/gist_id}","starred_url":"https://api.github.com/users/jamesgolick/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jamesgolick/subscriptions","organizations_url":"https://api.github.com/users/jamesgolick/orgs","repos_url":"https://api.github.com/users/jamesgolick/repos","events_url":"https://api.github.com/users/jamesgolick/events{/privacy}","received_events_url":"https://api.github.com/users/jamesgolick/received_events","type":"User"},"private":false,"html_url":"https://github.com/jamesgolick/markaby","description":"Markaby patched to run on rails 2.0.2","fork":false,"url":"https://api.github.com/repos/jamesgolick/markaby","forks_url":"https://api.github.com/repos/jamesgolick/markaby/forks","keys_url":"https://api.github.com/repos/jamesgolick/markaby/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jamesgolick/markaby/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jamesgolick/markaby/teams","hooks_url":"https://api.github.com/repos/jamesgolick/markaby/hooks","issue_events_url":"https://api.github.com/repos/jamesgolick/markaby/issues/events{/number}","events_url":"https://api.github.com/repos/jamesgolick/markaby/events","assignees_url":"https://api.github.com/repos/jamesgolick/markaby/assignees{/user}","branches_url":"https://api.github.com/repos/jamesgolick/markaby/branches{/branch}","tags_url":"https://api.github.com/repos/jamesgolick/markaby/tags","blobs_url":"https://api.github.com/repos/jamesgolick/markaby/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jamesgolick/markaby/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jamesgolick/markaby/git/refs{/sha}","trees_url":"https://api.github.com/repos/jamesgolick/markaby/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jamesgolick/markaby/statuses/{sha}","languages_url":"https://api.github.com/repos/jamesgolick/markaby/languages","stargazers_url":"https://api.github.com/repos/jamesgolick/markaby/stargazers","contributors_url":"https://api.github.com/repos/jamesgolick/markaby/contributors","subscribers_url":"https://api.github.com/repos/jamesgolick/markaby/subscribers","subscription_url":"https://api.github.com/repos/jamesgolick/markaby/subscription","commits_url":"https://api.github.com/repos/jamesgolick/markaby/commits{/sha}","git_commits_url":"https://api.github.com/repos/jamesgolick/markaby/git/commits{/sha}","comments_url":"https://api.github.com/repos/jamesgolick/markaby/comments{/number}","issue_comment_url":"https://api.github.com/repos/jamesgolick/markaby/issues/comments/{number}","contents_url":"https://api.github.com/repos/jamesgolick/markaby/contents/{+path}","compare_url":"https://api.github.com/repos/jamesgolick/markaby/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jamesgolick/markaby/merges","archive_url":"https://api.github.com/repos/jamesgolick/markaby/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jamesgolick/markaby/downloads","issues_url":"https://api.github.com/repos/jamesgolick/markaby/issues{/number}","pulls_url":"https://api.github.com/repos/jamesgolick/markaby/pulls{/number}","milestones_url":"https://api.github.com/repos/jamesgolick/markaby/milestones{/number}","notifications_url":"https://api.github.com/repos/jamesgolick/markaby/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jamesgolick/markaby/labels{/name}"},{"id":74,"name":"enum_field","full_name":"jamesgolick/enum_field","owner":{"login":"jamesgolick","id":37,"avatar_url":"https://2.gravatar.com/avatar/f6eddf2f983d23c2d031e407852625e9?d=https%3A%2F%2Fidenticons.github.com%2Fa5bfc9e07964f8dddeb95fc584cd965d.png","gravatar_id":"f6eddf2f983d23c2d031e407852625e9","url":"https://api.github.com/users/jamesgolick","html_url":"https://github.com/jamesgolick","followers_url":"https://api.github.com/users/jamesgolick/followers","following_url":"https://api.github.com/users/jamesgolick/following{/other_user}","gists_url":"https://api.github.com/users/jamesgolick/gists{/gist_id}","starred_url":"https://api.github.com/users/jamesgolick/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jamesgolick/subscriptions","organizations_url":"https://api.github.com/users/jamesgolick/orgs","repos_url":"https://api.github.com/users/jamesgolick/repos","events_url":"https://api.github.com/users/jamesgolick/events{/privacy}","received_events_url":"https://api.github.com/users/jamesgolick/received_events","type":"User"},"private":false,"html_url":"https://github.com/jamesgolick/enum_field","description":"","fork":false,"url":"https://api.github.com/repos/jamesgolick/enum_field","forks_url":"https://api.github.com/repos/jamesgolick/enum_field/forks","keys_url":"https://api.github.com/repos/jamesgolick/enum_field/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jamesgolick/enum_field/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jamesgolick/enum_field/teams","hooks_url":"https://api.github.com/repos/jamesgolick/enum_field/hooks","issue_events_url":"https://api.github.com/repos/jamesgolick/enum_field/issues/events{/number}","events_url":"https://api.github.com/repos/jamesgolick/enum_field/events","assignees_url":"https://api.github.com/repos/jamesgolick/enum_field/assignees{/user}","branches_url":"https://api.github.com/repos/jamesgolick/enum_field/branches{/branch}","tags_url":"https://api.github.com/repos/jamesgolick/enum_field/tags","blobs_url":"https://api.github.com/repos/jamesgolick/enum_field/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jamesgolick/enum_field/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jamesgolick/enum_field/git/refs{/sha}","trees_url":"https://api.github.com/repos/jamesgolick/enum_field/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jamesgolick/enum_field/statuses/{sha}","languages_url":"https://api.github.com/repos/jamesgolick/enum_field/languages","stargazers_url":"https://api.github.com/repos/jamesgolick/enum_field/stargazers","contributors_url":"https://api.github.com/repos/jamesgolick/enum_field/contributors","subscribers_url":"https://api.github.com/repos/jamesgolick/enum_field/subscribers","subscription_url":"https://api.github.com/repos/jamesgolick/enum_field/subscription","commits_url":"https://api.github.com/repos/jamesgolick/enum_field/commits{/sha}","git_commits_url":"https://api.github.com/repos/jamesgolick/enum_field/git/commits{/sha}","comments_url":"https://api.github.com/repos/jamesgolick/enum_field/comments{/number}","issue_comment_url":"https://api.github.com/repos/jamesgolick/enum_field/issues/comments/{number}","contents_url":"https://api.github.com/repos/jamesgolick/enum_field/contents/{+path}","compare_url":"https://api.github.com/repos/jamesgolick/enum_field/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jamesgolick/enum_field/merges","archive_url":"https://api.github.com/repos/jamesgolick/enum_field/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jamesgolick/enum_field/downloads","issues_url":"https://api.github.com/repos/jamesgolick/enum_field/issues{/number}","pulls_url":"https://api.github.com/repos/jamesgolick/enum_field/pulls{/number}","milestones_url":"https://api.github.com/repos/jamesgolick/enum_field/milestones{/number}","notifications_url":"https://api.github.com/repos/jamesgolick/enum_field/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jamesgolick/enum_field/labels{/name}"},{"id":75,"name":"subtlety","full_name":"defunkt/subtlety","owner":{"login":"defunkt","id":2,"avatar_url":"https://2.gravatar.com/avatar/b8dbb1987e8e5318584865f880036796?d=https%3A%2F%2Fidenticons.github.com%2Fc81e728d9d4c2f636f067f89cc14862c.png","gravatar_id":"b8dbb1987e8e5318584865f880036796","url":"https://api.github.com/users/defunkt","html_url":"https://github.com/defunkt","followers_url":"https://api.github.com/users/defunkt/followers","following_url":"https://api.github.com/users/defunkt/following{/other_user}","gists_url":"https://api.github.com/users/defunkt/gists{/gist_id}","starred_url":"https://api.github.com/users/defunkt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/defunkt/subscriptions","organizations_url":"https://api.github.com/users/defunkt/orgs","repos_url":"https://api.github.com/users/defunkt/repos","events_url":"https://api.github.com/users/defunkt/events{/privacy}","received_events_url":"https://api.github.com/users/defunkt/received_events","type":"User"},"private":false,"html_url":"https://github.com/defunkt/subtlety","description":"Subtlety: SVN => RSS, hAtom => Atom","fork":false,"url":"https://api.github.com/repos/defunkt/subtlety","forks_url":"https://api.github.com/repos/defunkt/subtlety/forks","keys_url":"https://api.github.com/repos/defunkt/subtlety/keys{/key_id}","collaborators_url":"https://api.github.com/repos/defunkt/subtlety/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/defunkt/subtlety/teams","hooks_url":"https://api.github.com/repos/defunkt/subtlety/hooks","issue_events_url":"https://api.github.com/repos/defunkt/subtlety/issues/events{/number}","events_url":"https://api.github.com/repos/defunkt/subtlety/events","assignees_url":"https://api.github.com/repos/defunkt/subtlety/assignees{/user}","branches_url":"https://api.github.com/repos/defunkt/subtlety/branches{/branch}","tags_url":"https://api.github.com/repos/defunkt/subtlety/tags","blobs_url":"https://api.github.com/repos/defunkt/subtlety/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/defunkt/subtlety/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/defunkt/subtlety/git/refs{/sha}","trees_url":"https://api.github.com/repos/defunkt/subtlety/git/trees{/sha}","statuses_url":"https://api.github.com/repos/defunkt/subtlety/statuses/{sha}","languages_url":"https://api.github.com/repos/defunkt/subtlety/languages","stargazers_url":"https://api.github.com/repos/defunkt/subtlety/stargazers","contributors_url":"https://api.github.com/repos/defunkt/subtlety/contributors","subscribers_url":"https://api.github.com/repos/defunkt/subtlety/subscribers","subscription_url":"https://api.github.com/repos/defunkt/subtlety/subscription","commits_url":"https://api.github.com/repos/defunkt/subtlety/commits{/sha}","git_commits_url":"https://api.github.com/repos/defunkt/subtlety/git/commits{/sha}","comments_url":"https://api.github.com/repos/defunkt/subtlety/comments{/number}","issue_comment_url":"https://api.github.com/repos/defunkt/subtlety/issues/comments/{number}","contents_url":"https://api.github.com/repos/defunkt/subtlety/contents/{+path}","compare_url":"https://api.github.com/repos/defunkt/subtlety/compare/{base}...{head}","merges_url":"https://api.github.com/repos/defunkt/subtlety/merges","archive_url":"https://api.github.com/repos/defunkt/subtlety/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/defunkt/subtlety/downloads","issues_url":"https://api.github.com/repos/defunkt/subtlety/issues{/number}","pulls_url":"https://api.github.com/repos/defunkt/subtlety/pulls{/number}","milestones_url":"https://api.github.com/repos/defunkt/subtlety/milestones{/number}","notifications_url":"https://api.github.com/repos/defunkt/subtlety/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/defunkt/subtlety/labels{/name}"},{"id":92,"name":"zippy","full_name":"defunkt/zippy","owner":{"login":"defunkt","id":2,"avatar_url":"https://2.gravatar.com/avatar/b8dbb1987e8e5318584865f880036796?d=https%3A%2F%2Fidenticons.github.com%2Fc81e728d9d4c2f636f067f89cc14862c.png","gravatar_id":"b8dbb1987e8e5318584865f880036796","url":"https://api.github.com/users/defunkt","html_url":"https://github.com/defunkt","followers_url":"https://api.github.com/users/defunkt/followers","following_url":"https://api.github.com/users/defunkt/following{/other_user}","gists_url":"https://api.github.com/users/defunkt/gists{/gist_id}","starred_url":"https://api.github.com/users/defunkt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/defunkt/subscriptions","organizations_url":"https://api.github.com/users/defunkt/orgs","repos_url":"https://api.github.com/users/defunkt/repos","events_url":"https://api.github.com/users/defunkt/events{/privacy}","received_events_url":"https://api.github.com/users/defunkt/received_events","type":"User"},"private":false,"html_url":"https://github.com/defunkt/zippy","description":"Zippy lil’ zipcode lib.","fork":false,"url":"https://api.github.com/repos/defunkt/zippy","forks_url":"https://api.github.com/repos/defunkt/zippy/forks","keys_url":"https://api.github.com/repos/defunkt/zippy/keys{/key_id}","collaborators_url":"https://api.github.com/repos/defunkt/zippy/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/defunkt/zippy/teams","hooks_url":"https://api.github.com/repos/defunkt/zippy/hooks","issue_events_url":"https://api.github.com/repos/defunkt/zippy/issues/events{/number}","events_url":"https://api.github.com/repos/defunkt/zippy/events","assignees_url":"https://api.github.com/repos/defunkt/zippy/assignees{/user}","branches_url":"https://api.github.com/repos/defunkt/zippy/branches{/branch}","tags_url":"https://api.github.com/repos/defunkt/zippy/tags","blobs_url":"https://api.github.com/repos/defunkt/zippy/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/defunkt/zippy/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/defunkt/zippy/git/refs{/sha}","trees_url":"https://api.github.com/repos/defunkt/zippy/git/trees{/sha}","statuses_url":"https://api.github.com/repos/defunkt/zippy/statuses/{sha}","languages_url":"https://api.github.com/repos/defunkt/zippy/languages","stargazers_url":"https://api.github.com/repos/defunkt/zippy/stargazers","contributors_url":"https://api.github.com/repos/defunkt/zippy/contributors","subscribers_url":"https://api.github.com/repos/defunkt/zippy/subscribers","subscription_url":"https://api.github.com/repos/defunkt/zippy/subscription","commits_url":"https://api.github.com/repos/defunkt/zippy/commits{/sha}","git_commits_url":"https://api.github.com/repos/defunkt/zippy/git/commits{/sha}","comments_url":"https://api.github.com/repos/defunkt/zippy/comments{/number}","issue_comment_url":"https://api.github.com/repos/defunkt/zippy/issues/comments/{number}","contents_url":"https://api.github.com/repos/defunkt/zippy/contents/{+path}","compare_url":"https://api.github.com/repos/defunkt/zippy/compare/{base}...{head}","merges_url":"https://api.github.com/repos/defunkt/zippy/merges","archive_url":"https://api.github.com/repos/defunkt/zippy/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/defunkt/zippy/downloads","issues_url":"https://api.github.com/repos/defunkt/zippy/issues{/number}","pulls_url":"https://api.github.com/repos/defunkt/zippy/pulls{/number}","milestones_url":"https://api.github.com/repos/defunkt/zippy/milestones{/number}","notifications_url":"https://api.github.com/repos/defunkt/zippy/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/defunkt/zippy/labels{/name}"},{"id":93,"name":"cache_fu","full_name":"defunkt/cache_fu","owner":{"login":"defunkt","id":2,"avatar_url":"https://2.gravatar.com/avatar/b8dbb1987e8e5318584865f880036796?d=https%3A%2F%2Fidenticons.github.com%2Fc81e728d9d4c2f636f067f89cc14862c.png","gravatar_id":"b8dbb1987e8e5318584865f880036796","url":"https://api.github.com/users/defunkt","html_url":"https://github.com/defunkt","followers_url":"https://api.github.com/users/defunkt/followers","following_url":"https://api.github.com/users/defunkt/following{/other_user}","gists_url":"https://api.github.com/users/defunkt/gists{/gist_id}","starred_url":"https://api.github.com/users/defunkt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/defunkt/subscriptions","organizations_url":"https://api.github.com/users/defunkt/orgs","repos_url":"https://api.github.com/users/defunkt/repos","events_url":"https://api.github.com/users/defunkt/events{/privacy}","received_events_url":"https://api.github.com/users/defunkt/received_events","type":"User"},"private":false,"html_url":"https://github.com/defunkt/cache_fu","description":"Ghost from Christmas past. Unmaintained.","fork":false,"url":"https://api.github.com/repos/defunkt/cache_fu","forks_url":"https://api.github.com/repos/defunkt/cache_fu/forks","keys_url":"https://api.github.com/repos/defunkt/cache_fu/keys{/key_id}","collaborators_url":"https://api.github.com/repos/defunkt/cache_fu/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/defunkt/cache_fu/teams","hooks_url":"https://api.github.com/repos/defunkt/cache_fu/hooks","issue_events_url":"https://api.github.com/repos/defunkt/cache_fu/issues/events{/number}","events_url":"https://api.github.com/repos/defunkt/cache_fu/events","assignees_url":"https://api.github.com/repos/defunkt/cache_fu/assignees{/user}","branches_url":"https://api.github.com/repos/defunkt/cache_fu/branches{/branch}","tags_url":"https://api.github.com/repos/defunkt/cache_fu/tags","blobs_url":"https://api.github.com/repos/defunkt/cache_fu/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/defunkt/cache_fu/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/defunkt/cache_fu/git/refs{/sha}","trees_url":"https://api.github.com/repos/defunkt/cache_fu/git/trees{/sha}","statuses_url":"https://api.github.com/repos/defunkt/cache_fu/statuses/{sha}","languages_url":"https://api.github.com/repos/defunkt/cache_fu/languages","stargazers_url":"https://api.github.com/repos/defunkt/cache_fu/stargazers","contributors_url":"https://api.github.com/repos/defunkt/cache_fu/contributors","subscribers_url":"https://api.github.com/repos/defunkt/cache_fu/subscribers","subscription_url":"https://api.github.com/repos/defunkt/cache_fu/subscription","commits_url":"https://api.github.com/repos/defunkt/cache_fu/commits{/sha}","git_commits_url":"https://api.github.com/repos/defunkt/cache_fu/git/commits{/sha}","comments_url":"https://api.github.com/repos/defunkt/cache_fu/comments{/number}","issue_comment_url":"https://api.github.com/repos/defunkt/cache_fu/issues/comments/{number}","contents_url":"https://api.github.com/repos/defunkt/cache_fu/contents/{+path}","compare_url":"https://api.github.com/repos/defunkt/cache_fu/compare/{base}...{head}","merges_url":"https://api.github.com/repos/defunkt/cache_fu/merges","archive_url":"https://api.github.com/repos/defunkt/cache_fu/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/defunkt/cache_fu/downloads","issues_url":"https://api.github.com/repos/defunkt/cache_fu/issues{/number}","pulls_url":"https://api.github.com/repos/defunkt/cache_fu/pulls{/number}","milestones_url":"https://api.github.com/repos/defunkt/cache_fu/milestones{/number}","notifications_url":"https://api.github.com/repos/defunkt/cache_fu/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/defunkt/cache_fu/labels{/name}"},{"id":95,"name":"phosphor","full_name":"KirinDave/phosphor","owner":{"login":"KirinDave","id":36,"avatar_url":"https://2.gravatar.com/avatar/d4fabd6c08ac228a3ff846d9d0d1580e?d=https%3A%2F%2Fidenticons.github.com%2F19ca14e7ea6328a42e0eb13d585e4c22.png","gravatar_id":"d4fabd6c08ac228a3ff846d9d0d1580e","url":"https://api.github.com/users/KirinDave","html_url":"https://github.com/KirinDave","followers_url":"https://api.github.com/users/KirinDave/followers","following_url":"https://api.github.com/users/KirinDave/following{/other_user}","gists_url":"https://api.github.com/users/KirinDave/gists{/gist_id}","starred_url":"https://api.github.com/users/KirinDave/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/KirinDave/subscriptions","organizations_url":"https://api.github.com/users/KirinDave/orgs","repos_url":"https://api.github.com/users/KirinDave/repos","events_url":"https://api.github.com/users/KirinDave/events{/privacy}","received_events_url":"https://api.github.com/users/KirinDave/received_events","type":"User"},"private":false,"html_url":"https://github.com/KirinDave/phosphor","description":" A ruby library to inexpensively emit runtime events via Dtrace","fork":false,"url":"https://api.github.com/repos/KirinDave/phosphor","forks_url":"https://api.github.com/repos/KirinDave/phosphor/forks","keys_url":"https://api.github.com/repos/KirinDave/phosphor/keys{/key_id}","collaborators_url":"https://api.github.com/repos/KirinDave/phosphor/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/KirinDave/phosphor/teams","hooks_url":"https://api.github.com/repos/KirinDave/phosphor/hooks","issue_events_url":"https://api.github.com/repos/KirinDave/phosphor/issues/events{/number}","events_url":"https://api.github.com/repos/KirinDave/phosphor/events","assignees_url":"https://api.github.com/repos/KirinDave/phosphor/assignees{/user}","branches_url":"https://api.github.com/repos/KirinDave/phosphor/branches{/branch}","tags_url":"https://api.github.com/repos/KirinDave/phosphor/tags","blobs_url":"https://api.github.com/repos/KirinDave/phosphor/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/KirinDave/phosphor/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/KirinDave/phosphor/git/refs{/sha}","trees_url":"https://api.github.com/repos/KirinDave/phosphor/git/trees{/sha}","statuses_url":"https://api.github.com/repos/KirinDave/phosphor/statuses/{sha}","languages_url":"https://api.github.com/repos/KirinDave/phosphor/languages","stargazers_url":"https://api.github.com/repos/KirinDave/phosphor/stargazers","contributors_url":"https://api.github.com/repos/KirinDave/phosphor/contributors","subscribers_url":"https://api.github.com/repos/KirinDave/phosphor/subscribers","subscription_url":"https://api.github.com/repos/KirinDave/phosphor/subscription","commits_url":"https://api.github.com/repos/KirinDave/phosphor/commits{/sha}","git_commits_url":"https://api.github.com/repos/KirinDave/phosphor/git/commits{/sha}","comments_url":"https://api.github.com/repos/KirinDave/phosphor/comments{/number}","issue_comment_url":"https://api.github.com/repos/KirinDave/phosphor/issues/comments/{number}","contents_url":"https://api.github.com/repos/KirinDave/phosphor/contents/{+path}","compare_url":"https://api.github.com/repos/KirinDave/phosphor/compare/{base}...{head}","merges_url":"https://api.github.com/repos/KirinDave/phosphor/merges","archive_url":"https://api.github.com/repos/KirinDave/phosphor/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/KirinDave/phosphor/downloads","issues_url":"https://api.github.com/repos/KirinDave/phosphor/issues{/number}","pulls_url":"https://api.github.com/repos/KirinDave/phosphor/pulls{/number}","milestones_url":"https://api.github.com/repos/KirinDave/phosphor/milestones{/number}","notifications_url":"https://api.github.com/repos/KirinDave/phosphor/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/KirinDave/phosphor/labels{/name}"},{"id":98,"name":"sinatra","full_name":"bmizerany/sinatra","owner":{"login":"bmizerany","id":46,"avatar_url":"https://2.gravatar.com/avatar/1a250566b475961b9b36abf359950c76?d=https%3A%2F%2Fidenticons.github.com%2Fd9d4f495e875a2e075a1a4a6e1b9770f.png","gravatar_id":"1a250566b475961b9b36abf359950c76","url":"https://api.github.com/users/bmizerany","html_url":"https://github.com/bmizerany","followers_url":"https://api.github.com/users/bmizerany/followers","following_url":"https://api.github.com/users/bmizerany/following{/other_user}","gists_url":"https://api.github.com/users/bmizerany/gists{/gist_id}","starred_url":"https://api.github.com/users/bmizerany/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bmizerany/subscriptions","organizations_url":"https://api.github.com/users/bmizerany/orgs","repos_url":"https://api.github.com/users/bmizerany/repos","events_url":"https://api.github.com/users/bmizerany/events{/privacy}","received_events_url":"https://api.github.com/users/bmizerany/received_events","type":"User"},"private":false,"html_url":"https://github.com/bmizerany/sinatra","description":"(offically at github.com/sinatra/sinatra) Classy web-development dressed in a DSL","fork":false,"url":"https://api.github.com/repos/bmizerany/sinatra","forks_url":"https://api.github.com/repos/bmizerany/sinatra/forks","keys_url":"https://api.github.com/repos/bmizerany/sinatra/keys{/key_id}","collaborators_url":"https://api.github.com/repos/bmizerany/sinatra/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/bmizerany/sinatra/teams","hooks_url":"https://api.github.com/repos/bmizerany/sinatra/hooks","issue_events_url":"https://api.github.com/repos/bmizerany/sinatra/issues/events{/number}","events_url":"https://api.github.com/repos/bmizerany/sinatra/events","assignees_url":"https://api.github.com/repos/bmizerany/sinatra/assignees{/user}","branches_url":"https://api.github.com/repos/bmizerany/sinatra/branches{/branch}","tags_url":"https://api.github.com/repos/bmizerany/sinatra/tags","blobs_url":"https://api.github.com/repos/bmizerany/sinatra/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/bmizerany/sinatra/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/bmizerany/sinatra/git/refs{/sha}","trees_url":"https://api.github.com/repos/bmizerany/sinatra/git/trees{/sha}","statuses_url":"https://api.github.com/repos/bmizerany/sinatra/statuses/{sha}","languages_url":"https://api.github.com/repos/bmizerany/sinatra/languages","stargazers_url":"https://api.github.com/repos/bmizerany/sinatra/stargazers","contributors_url":"https://api.github.com/repos/bmizerany/sinatra/contributors","subscribers_url":"https://api.github.com/repos/bmizerany/sinatra/subscribers","subscription_url":"https://api.github.com/repos/bmizerany/sinatra/subscription","commits_url":"https://api.github.com/repos/bmizerany/sinatra/commits{/sha}","git_commits_url":"https://api.github.com/repos/bmizerany/sinatra/git/commits{/sha}","comments_url":"https://api.github.com/repos/bmizerany/sinatra/comments{/number}","issue_comment_url":"https://api.github.com/repos/bmizerany/sinatra/issues/comments/{number}","contents_url":"https://api.github.com/repos/bmizerany/sinatra/contents/{+path}","compare_url":"https://api.github.com/repos/bmizerany/sinatra/compare/{base}...{head}","merges_url":"https://api.github.com/repos/bmizerany/sinatra/merges","archive_url":"https://api.github.com/repos/bmizerany/sinatra/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/bmizerany/sinatra/downloads","issues_url":"https://api.github.com/repos/bmizerany/sinatra/issues{/number}","pulls_url":"https://api.github.com/repos/bmizerany/sinatra/pulls{/number}","milestones_url":"https://api.github.com/repos/bmizerany/sinatra/milestones{/number}","notifications_url":"https://api.github.com/repos/bmizerany/sinatra/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/bmizerany/sinatra/labels{/name}"},{"id":102,"name":"gsa-prototype","full_name":"jnewland/gsa-prototype","owner":{"login":"jnewland","id":47,"avatar_url":"https://1.gravatar.com/avatar/f317439da90c3176adc8938bcf5181ff?d=https%3A%2F%2Fidenticons.github.com%2F67c6a1e7ce56d3d6fa748ab6d9af3fd7.png","gravatar_id":"f317439da90c3176adc8938bcf5181ff","url":"https://api.github.com/users/jnewland","html_url":"https://github.com/jnewland","followers_url":"https://api.github.com/users/jnewland/followers","following_url":"https://api.github.com/users/jnewland/following{/other_user}","gists_url":"https://api.github.com/users/jnewland/gists{/gist_id}","starred_url":"https://api.github.com/users/jnewland/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jnewland/subscriptions","organizations_url":"https://api.github.com/users/jnewland/orgs","repos_url":"https://api.github.com/users/jnewland/repos","events_url":"https://api.github.com/users/jnewland/events{/privacy}","received_events_url":"https://api.github.com/users/jnewland/received_events","type":"User"},"private":false,"html_url":"https://github.com/jnewland/gsa-prototype","description":"Prototype/Javascript wrapper for the Google Search Appliance Search Protocol. Fancy cross-domain JSON support included.","fork":false,"url":"https://api.github.com/repos/jnewland/gsa-prototype","forks_url":"https://api.github.com/repos/jnewland/gsa-prototype/forks","keys_url":"https://api.github.com/repos/jnewland/gsa-prototype/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jnewland/gsa-prototype/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jnewland/gsa-prototype/teams","hooks_url":"https://api.github.com/repos/jnewland/gsa-prototype/hooks","issue_events_url":"https://api.github.com/repos/jnewland/gsa-prototype/issues/events{/number}","events_url":"https://api.github.com/repos/jnewland/gsa-prototype/events","assignees_url":"https://api.github.com/repos/jnewland/gsa-prototype/assignees{/user}","branches_url":"https://api.github.com/repos/jnewland/gsa-prototype/branches{/branch}","tags_url":"https://api.github.com/repos/jnewland/gsa-prototype/tags","blobs_url":"https://api.github.com/repos/jnewland/gsa-prototype/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jnewland/gsa-prototype/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jnewland/gsa-prototype/git/refs{/sha}","trees_url":"https://api.github.com/repos/jnewland/gsa-prototype/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jnewland/gsa-prototype/statuses/{sha}","languages_url":"https://api.github.com/repos/jnewland/gsa-prototype/languages","stargazers_url":"https://api.github.com/repos/jnewland/gsa-prototype/stargazers","contributors_url":"https://api.github.com/repos/jnewland/gsa-prototype/contributors","subscribers_url":"https://api.github.com/repos/jnewland/gsa-prototype/subscribers","subscription_url":"https://api.github.com/repos/jnewland/gsa-prototype/subscription","commits_url":"https://api.github.com/repos/jnewland/gsa-prototype/commits{/sha}","git_commits_url":"https://api.github.com/repos/jnewland/gsa-prototype/git/commits{/sha}","comments_url":"https://api.github.com/repos/jnewland/gsa-prototype/comments{/number}","issue_comment_url":"https://api.github.com/repos/jnewland/gsa-prototype/issues/comments/{number}","contents_url":"https://api.github.com/repos/jnewland/gsa-prototype/contents/{+path}","compare_url":"https://api.github.com/repos/jnewland/gsa-prototype/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jnewland/gsa-prototype/merges","archive_url":"https://api.github.com/repos/jnewland/gsa-prototype/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jnewland/gsa-prototype/downloads","issues_url":"https://api.github.com/repos/jnewland/gsa-prototype/issues{/number}","pulls_url":"https://api.github.com/repos/jnewland/gsa-prototype/pulls{/number}","milestones_url":"https://api.github.com/repos/jnewland/gsa-prototype/milestones{/number}","notifications_url":"https://api.github.com/repos/jnewland/gsa-prototype/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jnewland/gsa-prototype/labels{/name}"},{"id":105,"name":"duplikate","full_name":"technoweenie/duplikate","owner":{"login":"technoweenie","id":21,"avatar_url":"https://1.gravatar.com/avatar/821395fe70906c8290df7f18ac4ac6cf?d=https%3A%2F%2Fidenticons.github.com%2F3c59dc048e8850243be8079a5c74d079.png","gravatar_id":"821395fe70906c8290df7f18ac4ac6cf","url":"https://api.github.com/users/technoweenie","html_url":"https://github.com/technoweenie","followers_url":"https://api.github.com/users/technoweenie/followers","following_url":"https://api.github.com/users/technoweenie/following{/other_user}","gists_url":"https://api.github.com/users/technoweenie/gists{/gist_id}","starred_url":"https://api.github.com/users/technoweenie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/technoweenie/subscriptions","organizations_url":"https://api.github.com/users/technoweenie/orgs","repos_url":"https://api.github.com/users/technoweenie/repos","events_url":"https://api.github.com/users/technoweenie/events{/privacy}","received_events_url":"https://api.github.com/users/technoweenie/received_events","type":"User"},"private":false,"html_url":"https://github.com/technoweenie/duplikate","description":"Syncs one directory to another (example: a git project to an svn repo)","fork":false,"url":"https://api.github.com/repos/technoweenie/duplikate","forks_url":"https://api.github.com/repos/technoweenie/duplikate/forks","keys_url":"https://api.github.com/repos/technoweenie/duplikate/keys{/key_id}","collaborators_url":"https://api.github.com/repos/technoweenie/duplikate/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/technoweenie/duplikate/teams","hooks_url":"https://api.github.com/repos/technoweenie/duplikate/hooks","issue_events_url":"https://api.github.com/repos/technoweenie/duplikate/issues/events{/number}","events_url":"https://api.github.com/repos/technoweenie/duplikate/events","assignees_url":"https://api.github.com/repos/technoweenie/duplikate/assignees{/user}","branches_url":"https://api.github.com/repos/technoweenie/duplikate/branches{/branch}","tags_url":"https://api.github.com/repos/technoweenie/duplikate/tags","blobs_url":"https://api.github.com/repos/technoweenie/duplikate/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/technoweenie/duplikate/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/technoweenie/duplikate/git/refs{/sha}","trees_url":"https://api.github.com/repos/technoweenie/duplikate/git/trees{/sha}","statuses_url":"https://api.github.com/repos/technoweenie/duplikate/statuses/{sha}","languages_url":"https://api.github.com/repos/technoweenie/duplikate/languages","stargazers_url":"https://api.github.com/repos/technoweenie/duplikate/stargazers","contributors_url":"https://api.github.com/repos/technoweenie/duplikate/contributors","subscribers_url":"https://api.github.com/repos/technoweenie/duplikate/subscribers","subscription_url":"https://api.github.com/repos/technoweenie/duplikate/subscription","commits_url":"https://api.github.com/repos/technoweenie/duplikate/commits{/sha}","git_commits_url":"https://api.github.com/repos/technoweenie/duplikate/git/commits{/sha}","comments_url":"https://api.github.com/repos/technoweenie/duplikate/comments{/number}","issue_comment_url":"https://api.github.com/repos/technoweenie/duplikate/issues/comments/{number}","contents_url":"https://api.github.com/repos/technoweenie/duplikate/contents/{+path}","compare_url":"https://api.github.com/repos/technoweenie/duplikate/compare/{base}...{head}","merges_url":"https://api.github.com/repos/technoweenie/duplikate/merges","archive_url":"https://api.github.com/repos/technoweenie/duplikate/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/technoweenie/duplikate/downloads","issues_url":"https://api.github.com/repos/technoweenie/duplikate/issues{/number}","pulls_url":"https://api.github.com/repos/technoweenie/duplikate/pulls{/number}","milestones_url":"https://api.github.com/repos/technoweenie/duplikate/milestones{/number}","notifications_url":"https://api.github.com/repos/technoweenie/duplikate/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/technoweenie/duplikate/labels{/name}"},{"id":118,"name":"lazy_record","full_name":"jnewland/lazy_record","owner":{"login":"jnewland","id":47,"avatar_url":"https://1.gravatar.com/avatar/f317439da90c3176adc8938bcf5181ff?d=https%3A%2F%2Fidenticons.github.com%2F67c6a1e7ce56d3d6fa748ab6d9af3fd7.png","gravatar_id":"f317439da90c3176adc8938bcf5181ff","url":"https://api.github.com/users/jnewland","html_url":"https://github.com/jnewland","followers_url":"https://api.github.com/users/jnewland/followers","following_url":"https://api.github.com/users/jnewland/following{/other_user}","gists_url":"https://api.github.com/users/jnewland/gists{/gist_id}","starred_url":"https://api.github.com/users/jnewland/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jnewland/subscriptions","organizations_url":"https://api.github.com/users/jnewland/orgs","repos_url":"https://api.github.com/users/jnewland/repos","events_url":"https://api.github.com/users/jnewland/events{/privacy}","received_events_url":"https://api.github.com/users/jnewland/received_events","type":"User"},"private":false,"html_url":"https://github.com/jnewland/lazy_record","description":"Proof of concept Lazy-Loading for ActiveRecord. Inspired by the 'kickers' of Ambition.","fork":false,"url":"https://api.github.com/repos/jnewland/lazy_record","forks_url":"https://api.github.com/repos/jnewland/lazy_record/forks","keys_url":"https://api.github.com/repos/jnewland/lazy_record/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jnewland/lazy_record/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jnewland/lazy_record/teams","hooks_url":"https://api.github.com/repos/jnewland/lazy_record/hooks","issue_events_url":"https://api.github.com/repos/jnewland/lazy_record/issues/events{/number}","events_url":"https://api.github.com/repos/jnewland/lazy_record/events","assignees_url":"https://api.github.com/repos/jnewland/lazy_record/assignees{/user}","branches_url":"https://api.github.com/repos/jnewland/lazy_record/branches{/branch}","tags_url":"https://api.github.com/repos/jnewland/lazy_record/tags","blobs_url":"https://api.github.com/repos/jnewland/lazy_record/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jnewland/lazy_record/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jnewland/lazy_record/git/refs{/sha}","trees_url":"https://api.github.com/repos/jnewland/lazy_record/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jnewland/lazy_record/statuses/{sha}","languages_url":"https://api.github.com/repos/jnewland/lazy_record/languages","stargazers_url":"https://api.github.com/repos/jnewland/lazy_record/stargazers","contributors_url":"https://api.github.com/repos/jnewland/lazy_record/contributors","subscribers_url":"https://api.github.com/repos/jnewland/lazy_record/subscribers","subscription_url":"https://api.github.com/repos/jnewland/lazy_record/subscription","commits_url":"https://api.github.com/repos/jnewland/lazy_record/commits{/sha}","git_commits_url":"https://api.github.com/repos/jnewland/lazy_record/git/commits{/sha}","comments_url":"https://api.github.com/repos/jnewland/lazy_record/comments{/number}","issue_comment_url":"https://api.github.com/repos/jnewland/lazy_record/issues/comments/{number}","contents_url":"https://api.github.com/repos/jnewland/lazy_record/contents/{+path}","compare_url":"https://api.github.com/repos/jnewland/lazy_record/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jnewland/lazy_record/merges","archive_url":"https://api.github.com/repos/jnewland/lazy_record/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jnewland/lazy_record/downloads","issues_url":"https://api.github.com/repos/jnewland/lazy_record/issues{/number}","pulls_url":"https://api.github.com/repos/jnewland/lazy_record/pulls{/number}","milestones_url":"https://api.github.com/repos/jnewland/lazy_record/milestones{/number}","notifications_url":"https://api.github.com/repos/jnewland/lazy_record/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jnewland/lazy_record/labels{/name}"},{"id":119,"name":"gsa-feeds","full_name":"jnewland/gsa-feeds","owner":{"login":"jnewland","id":47,"avatar_url":"https://1.gravatar.com/avatar/f317439da90c3176adc8938bcf5181ff?d=https%3A%2F%2Fidenticons.github.com%2F67c6a1e7ce56d3d6fa748ab6d9af3fd7.png","gravatar_id":"f317439da90c3176adc8938bcf5181ff","url":"https://api.github.com/users/jnewland","html_url":"https://github.com/jnewland","followers_url":"https://api.github.com/users/jnewland/followers","following_url":"https://api.github.com/users/jnewland/following{/other_user}","gists_url":"https://api.github.com/users/jnewland/gists{/gist_id}","starred_url":"https://api.github.com/users/jnewland/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jnewland/subscriptions","organizations_url":"https://api.github.com/users/jnewland/orgs","repos_url":"https://api.github.com/users/jnewland/repos","events_url":"https://api.github.com/users/jnewland/events{/privacy}","received_events_url":"https://api.github.com/users/jnewland/received_events","type":"User"},"private":false,"html_url":"https://github.com/jnewland/gsa-feeds","description":"A Ruby wrapper for the Google Search Appliance Feeds Protocol","fork":false,"url":"https://api.github.com/repos/jnewland/gsa-feeds","forks_url":"https://api.github.com/repos/jnewland/gsa-feeds/forks","keys_url":"https://api.github.com/repos/jnewland/gsa-feeds/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jnewland/gsa-feeds/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jnewland/gsa-feeds/teams","hooks_url":"https://api.github.com/repos/jnewland/gsa-feeds/hooks","issue_events_url":"https://api.github.com/repos/jnewland/gsa-feeds/issues/events{/number}","events_url":"https://api.github.com/repos/jnewland/gsa-feeds/events","assignees_url":"https://api.github.com/repos/jnewland/gsa-feeds/assignees{/user}","branches_url":"https://api.github.com/repos/jnewland/gsa-feeds/branches{/branch}","tags_url":"https://api.github.com/repos/jnewland/gsa-feeds/tags","blobs_url":"https://api.github.com/repos/jnewland/gsa-feeds/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jnewland/gsa-feeds/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jnewland/gsa-feeds/git/refs{/sha}","trees_url":"https://api.github.com/repos/jnewland/gsa-feeds/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jnewland/gsa-feeds/statuses/{sha}","languages_url":"https://api.github.com/repos/jnewland/gsa-feeds/languages","stargazers_url":"https://api.github.com/repos/jnewland/gsa-feeds/stargazers","contributors_url":"https://api.github.com/repos/jnewland/gsa-feeds/contributors","subscribers_url":"https://api.github.com/repos/jnewland/gsa-feeds/subscribers","subscription_url":"https://api.github.com/repos/jnewland/gsa-feeds/subscription","commits_url":"https://api.github.com/repos/jnewland/gsa-feeds/commits{/sha}","git_commits_url":"https://api.github.com/repos/jnewland/gsa-feeds/git/commits{/sha}","comments_url":"https://api.github.com/repos/jnewland/gsa-feeds/comments{/number}","issue_comment_url":"https://api.github.com/repos/jnewland/gsa-feeds/issues/comments/{number}","contents_url":"https://api.github.com/repos/jnewland/gsa-feeds/contents/{+path}","compare_url":"https://api.github.com/repos/jnewland/gsa-feeds/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jnewland/gsa-feeds/merges","archive_url":"https://api.github.com/repos/jnewland/gsa-feeds/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jnewland/gsa-feeds/downloads","issues_url":"https://api.github.com/repos/jnewland/gsa-feeds/issues{/number}","pulls_url":"https://api.github.com/repos/jnewland/gsa-feeds/pulls{/number}","milestones_url":"https://api.github.com/repos/jnewland/gsa-feeds/milestones{/number}","notifications_url":"https://api.github.com/repos/jnewland/gsa-feeds/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jnewland/gsa-feeds/labels{/name}"},{"id":120,"name":"votigoto","full_name":"jnewland/votigoto","owner":{"login":"jnewland","id":47,"avatar_url":"https://1.gravatar.com/avatar/f317439da90c3176adc8938bcf5181ff?d=https%3A%2F%2Fidenticons.github.com%2F67c6a1e7ce56d3d6fa748ab6d9af3fd7.png","gravatar_id":"f317439da90c3176adc8938bcf5181ff","url":"https://api.github.com/users/jnewland","html_url":"https://github.com/jnewland","followers_url":"https://api.github.com/users/jnewland/followers","following_url":"https://api.github.com/users/jnewland/following{/other_user}","gists_url":"https://api.github.com/users/jnewland/gists{/gist_id}","starred_url":"https://api.github.com/users/jnewland/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jnewland/subscriptions","organizations_url":"https://api.github.com/users/jnewland/orgs","repos_url":"https://api.github.com/users/jnewland/repos","events_url":"https://api.github.com/users/jnewland/events{/privacy}","received_events_url":"https://api.github.com/users/jnewland/received_events","type":"User"},"private":false,"html_url":"https://github.com/jnewland/votigoto","description":"Ruby API wrapper for the TiVoToGo protocol. Use it to access a list of recorded shows and programs on your Tivo.","fork":false,"url":"https://api.github.com/repos/jnewland/votigoto","forks_url":"https://api.github.com/repos/jnewland/votigoto/forks","keys_url":"https://api.github.com/repos/jnewland/votigoto/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jnewland/votigoto/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jnewland/votigoto/teams","hooks_url":"https://api.github.com/repos/jnewland/votigoto/hooks","issue_events_url":"https://api.github.com/repos/jnewland/votigoto/issues/events{/number}","events_url":"https://api.github.com/repos/jnewland/votigoto/events","assignees_url":"https://api.github.com/repos/jnewland/votigoto/assignees{/user}","branches_url":"https://api.github.com/repos/jnewland/votigoto/branches{/branch}","tags_url":"https://api.github.com/repos/jnewland/votigoto/tags","blobs_url":"https://api.github.com/repos/jnewland/votigoto/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jnewland/votigoto/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jnewland/votigoto/git/refs{/sha}","trees_url":"https://api.github.com/repos/jnewland/votigoto/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jnewland/votigoto/statuses/{sha}","languages_url":"https://api.github.com/repos/jnewland/votigoto/languages","stargazers_url":"https://api.github.com/repos/jnewland/votigoto/stargazers","contributors_url":"https://api.github.com/repos/jnewland/votigoto/contributors","subscribers_url":"https://api.github.com/repos/jnewland/votigoto/subscribers","subscription_url":"https://api.github.com/repos/jnewland/votigoto/subscription","commits_url":"https://api.github.com/repos/jnewland/votigoto/commits{/sha}","git_commits_url":"https://api.github.com/repos/jnewland/votigoto/git/commits{/sha}","comments_url":"https://api.github.com/repos/jnewland/votigoto/comments{/number}","issue_comment_url":"https://api.github.com/repos/jnewland/votigoto/issues/comments/{number}","contents_url":"https://api.github.com/repos/jnewland/votigoto/contents/{+path}","compare_url":"https://api.github.com/repos/jnewland/votigoto/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jnewland/votigoto/merges","archive_url":"https://api.github.com/repos/jnewland/votigoto/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jnewland/votigoto/downloads","issues_url":"https://api.github.com/repos/jnewland/votigoto/issues{/number}","pulls_url":"https://api.github.com/repos/jnewland/votigoto/pulls{/number}","milestones_url":"https://api.github.com/repos/jnewland/votigoto/milestones{/number}","notifications_url":"https://api.github.com/repos/jnewland/votigoto/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jnewland/votigoto/labels{/name}"},{"id":127,"name":"mofo","full_name":"defunkt/mofo","owner":{"login":"defunkt","id":2,"avatar_url":"https://2.gravatar.com/avatar/b8dbb1987e8e5318584865f880036796?d=https%3A%2F%2Fidenticons.github.com%2Fc81e728d9d4c2f636f067f89cc14862c.png","gravatar_id":"b8dbb1987e8e5318584865f880036796","url":"https://api.github.com/users/defunkt","html_url":"https://github.com/defunkt","followers_url":"https://api.github.com/users/defunkt/followers","following_url":"https://api.github.com/users/defunkt/following{/other_user}","gists_url":"https://api.github.com/users/defunkt/gists{/gist_id}","starred_url":"https://api.github.com/users/defunkt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/defunkt/subscriptions","organizations_url":"https://api.github.com/users/defunkt/orgs","repos_url":"https://api.github.com/users/defunkt/repos","events_url":"https://api.github.com/users/defunkt/events{/privacy}","received_events_url":"https://api.github.com/users/defunkt/received_events","type":"User"},"private":false,"html_url":"https://github.com/defunkt/mofo","description":"Mofo was a fast and simple microformat parser, based on a concise DSL and Hpricot. No longer maintained.","fork":false,"url":"https://api.github.com/repos/defunkt/mofo","forks_url":"https://api.github.com/repos/defunkt/mofo/forks","keys_url":"https://api.github.com/repos/defunkt/mofo/keys{/key_id}","collaborators_url":"https://api.github.com/repos/defunkt/mofo/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/defunkt/mofo/teams","hooks_url":"https://api.github.com/repos/defunkt/mofo/hooks","issue_events_url":"https://api.github.com/repos/defunkt/mofo/issues/events{/number}","events_url":"https://api.github.com/repos/defunkt/mofo/events","assignees_url":"https://api.github.com/repos/defunkt/mofo/assignees{/user}","branches_url":"https://api.github.com/repos/defunkt/mofo/branches{/branch}","tags_url":"https://api.github.com/repos/defunkt/mofo/tags","blobs_url":"https://api.github.com/repos/defunkt/mofo/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/defunkt/mofo/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/defunkt/mofo/git/refs{/sha}","trees_url":"https://api.github.com/repos/defunkt/mofo/git/trees{/sha}","statuses_url":"https://api.github.com/repos/defunkt/mofo/statuses/{sha}","languages_url":"https://api.github.com/repos/defunkt/mofo/languages","stargazers_url":"https://api.github.com/repos/defunkt/mofo/stargazers","contributors_url":"https://api.github.com/repos/defunkt/mofo/contributors","subscribers_url":"https://api.github.com/repos/defunkt/mofo/subscribers","subscription_url":"https://api.github.com/repos/defunkt/mofo/subscription","commits_url":"https://api.github.com/repos/defunkt/mofo/commits{/sha}","git_commits_url":"https://api.github.com/repos/defunkt/mofo/git/commits{/sha}","comments_url":"https://api.github.com/repos/defunkt/mofo/comments{/number}","issue_comment_url":"https://api.github.com/repos/defunkt/mofo/issues/comments/{number}","contents_url":"https://api.github.com/repos/defunkt/mofo/contents/{+path}","compare_url":"https://api.github.com/repos/defunkt/mofo/compare/{base}...{head}","merges_url":"https://api.github.com/repos/defunkt/mofo/merges","archive_url":"https://api.github.com/repos/defunkt/mofo/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/defunkt/mofo/downloads","issues_url":"https://api.github.com/repos/defunkt/mofo/issues{/number}","pulls_url":"https://api.github.com/repos/defunkt/mofo/pulls{/number}","milestones_url":"https://api.github.com/repos/defunkt/mofo/milestones{/number}","notifications_url":"https://api.github.com/repos/defunkt/mofo/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/defunkt/mofo/labels{/name}"},{"id":129,"name":"xhtmlize","full_name":"jnewland/xhtmlize","owner":{"login":"jnewland","id":47,"avatar_url":"https://1.gravatar.com/avatar/f317439da90c3176adc8938bcf5181ff?d=https%3A%2F%2Fidenticons.github.com%2F67c6a1e7ce56d3d6fa748ab6d9af3fd7.png","gravatar_id":"f317439da90c3176adc8938bcf5181ff","url":"https://api.github.com/users/jnewland","html_url":"https://github.com/jnewland","followers_url":"https://api.github.com/users/jnewland/followers","following_url":"https://api.github.com/users/jnewland/following{/other_user}","gists_url":"https://api.github.com/users/jnewland/gists{/gist_id}","starred_url":"https://api.github.com/users/jnewland/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jnewland/subscriptions","organizations_url":"https://api.github.com/users/jnewland/orgs","repos_url":"https://api.github.com/users/jnewland/repos","events_url":"https://api.github.com/users/jnewland/events{/privacy}","received_events_url":"https://api.github.com/users/jnewland/received_events","type":"User"},"private":false,"html_url":"https://github.com/jnewland/xhtmlize","description":"Rails helper to XHTML-ize chunks of user submitted HTML. For the standardista in all of us","fork":false,"url":"https://api.github.com/repos/jnewland/xhtmlize","forks_url":"https://api.github.com/repos/jnewland/xhtmlize/forks","keys_url":"https://api.github.com/repos/jnewland/xhtmlize/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jnewland/xhtmlize/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jnewland/xhtmlize/teams","hooks_url":"https://api.github.com/repos/jnewland/xhtmlize/hooks","issue_events_url":"https://api.github.com/repos/jnewland/xhtmlize/issues/events{/number}","events_url":"https://api.github.com/repos/jnewland/xhtmlize/events","assignees_url":"https://api.github.com/repos/jnewland/xhtmlize/assignees{/user}","branches_url":"https://api.github.com/repos/jnewland/xhtmlize/branches{/branch}","tags_url":"https://api.github.com/repos/jnewland/xhtmlize/tags","blobs_url":"https://api.github.com/repos/jnewland/xhtmlize/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jnewland/xhtmlize/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jnewland/xhtmlize/git/refs{/sha}","trees_url":"https://api.github.com/repos/jnewland/xhtmlize/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jnewland/xhtmlize/statuses/{sha}","languages_url":"https://api.github.com/repos/jnewland/xhtmlize/languages","stargazers_url":"https://api.github.com/repos/jnewland/xhtmlize/stargazers","contributors_url":"https://api.github.com/repos/jnewland/xhtmlize/contributors","subscribers_url":"https://api.github.com/repos/jnewland/xhtmlize/subscribers","subscription_url":"https://api.github.com/repos/jnewland/xhtmlize/subscription","commits_url":"https://api.github.com/repos/jnewland/xhtmlize/commits{/sha}","git_commits_url":"https://api.github.com/repos/jnewland/xhtmlize/git/commits{/sha}","comments_url":"https://api.github.com/repos/jnewland/xhtmlize/comments{/number}","issue_comment_url":"https://api.github.com/repos/jnewland/xhtmlize/issues/comments/{number}","contents_url":"https://api.github.com/repos/jnewland/xhtmlize/contents/{+path}","compare_url":"https://api.github.com/repos/jnewland/xhtmlize/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jnewland/xhtmlize/merges","archive_url":"https://api.github.com/repos/jnewland/xhtmlize/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jnewland/xhtmlize/downloads","issues_url":"https://api.github.com/repos/jnewland/xhtmlize/issues{/number}","pulls_url":"https://api.github.com/repos/jnewland/xhtmlize/pulls{/number}","milestones_url":"https://api.github.com/repos/jnewland/xhtmlize/milestones{/number}","notifications_url":"https://api.github.com/repos/jnewland/xhtmlize/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jnewland/xhtmlize/labels{/name}"},{"id":130,"name":"ruby-git","full_name":"schacon/ruby-git","owner":{"login":"schacon","id":70,"avatar_url":"https://2.gravatar.com/avatar/9375a9529679f1b42b567a640d775e7d?d=https%3A%2F%2Fidenticons.github.com%2F7cbbc409ec990f19c78c75bd1e06f215.png","gravatar_id":"9375a9529679f1b42b567a640d775e7d","url":"https://api.github.com/users/schacon","html_url":"https://github.com/schacon","followers_url":"https://api.github.com/users/schacon/followers","following_url":"https://api.github.com/users/schacon/following{/other_user}","gists_url":"https://api.github.com/users/schacon/gists{/gist_id}","starred_url":"https://api.github.com/users/schacon/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/schacon/subscriptions","organizations_url":"https://api.github.com/users/schacon/orgs","repos_url":"https://api.github.com/users/schacon/repos","events_url":"https://api.github.com/users/schacon/events{/privacy}","received_events_url":"https://api.github.com/users/schacon/received_events","type":"User"},"private":false,"html_url":"https://github.com/schacon/ruby-git","description":"Ruby/Git is a Ruby library that can be used to create, read and manipulate Git repositories by wrapping system calls to the git binary.","fork":false,"url":"https://api.github.com/repos/schacon/ruby-git","forks_url":"https://api.github.com/repos/schacon/ruby-git/forks","keys_url":"https://api.github.com/repos/schacon/ruby-git/keys{/key_id}","collaborators_url":"https://api.github.com/repos/schacon/ruby-git/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/schacon/ruby-git/teams","hooks_url":"https://api.github.com/repos/schacon/ruby-git/hooks","issue_events_url":"https://api.github.com/repos/schacon/ruby-git/issues/events{/number}","events_url":"https://api.github.com/repos/schacon/ruby-git/events","assignees_url":"https://api.github.com/repos/schacon/ruby-git/assignees{/user}","branches_url":"https://api.github.com/repos/schacon/ruby-git/branches{/branch}","tags_url":"https://api.github.com/repos/schacon/ruby-git/tags","blobs_url":"https://api.github.com/repos/schacon/ruby-git/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/schacon/ruby-git/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/schacon/ruby-git/git/refs{/sha}","trees_url":"https://api.github.com/repos/schacon/ruby-git/git/trees{/sha}","statuses_url":"https://api.github.com/repos/schacon/ruby-git/statuses/{sha}","languages_url":"https://api.github.com/repos/schacon/ruby-git/languages","stargazers_url":"https://api.github.com/repos/schacon/ruby-git/stargazers","contributors_url":"https://api.github.com/repos/schacon/ruby-git/contributors","subscribers_url":"https://api.github.com/repos/schacon/ruby-git/subscribers","subscription_url":"https://api.github.com/repos/schacon/ruby-git/subscription","commits_url":"https://api.github.com/repos/schacon/ruby-git/commits{/sha}","git_commits_url":"https://api.github.com/repos/schacon/ruby-git/git/commits{/sha}","comments_url":"https://api.github.com/repos/schacon/ruby-git/comments{/number}","issue_comment_url":"https://api.github.com/repos/schacon/ruby-git/issues/comments/{number}","contents_url":"https://api.github.com/repos/schacon/ruby-git/contents/{+path}","compare_url":"https://api.github.com/repos/schacon/ruby-git/compare/{base}...{head}","merges_url":"https://api.github.com/repos/schacon/ruby-git/merges","archive_url":"https://api.github.com/repos/schacon/ruby-git/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/schacon/ruby-git/downloads","issues_url":"https://api.github.com/repos/schacon/ruby-git/issues{/number}","pulls_url":"https://api.github.com/repos/schacon/ruby-git/pulls{/number}","milestones_url":"https://api.github.com/repos/schacon/ruby-git/milestones{/number}","notifications_url":"https://api.github.com/repos/schacon/ruby-git/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/schacon/ruby-git/labels{/name}"},{"id":131,"name":"bmhsearch","full_name":"ezmobius/bmhsearch","owner":{"login":"ezmobius","id":5,"avatar_url":"https://1.gravatar.com/avatar/6a3a6e3da2d97be8df476187ff151f04?d=https%3A%2F%2Fidenticons.github.com%2Fe4da3b7fbbce2345d7772b0674a318d5.png","gravatar_id":"6a3a6e3da2d97be8df476187ff151f04","url":"https://api.github.com/users/ezmobius","html_url":"https://github.com/ezmobius","followers_url":"https://api.github.com/users/ezmobius/followers","following_url":"https://api.github.com/users/ezmobius/following{/other_user}","gists_url":"https://api.github.com/users/ezmobius/gists{/gist_id}","starred_url":"https://api.github.com/users/ezmobius/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ezmobius/subscriptions","organizations_url":"https://api.github.com/users/ezmobius/orgs","repos_url":"https://api.github.com/users/ezmobius/repos","events_url":"https://api.github.com/users/ezmobius/events{/privacy}","received_events_url":"https://api.github.com/users/ezmobius/received_events","type":"User"},"private":false,"html_url":"https://github.com/ezmobius/bmhsearch","description":"Fast string searcher, useful for multi-part post parsing","fork":false,"url":"https://api.github.com/repos/ezmobius/bmhsearch","forks_url":"https://api.github.com/repos/ezmobius/bmhsearch/forks","keys_url":"https://api.github.com/repos/ezmobius/bmhsearch/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ezmobius/bmhsearch/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ezmobius/bmhsearch/teams","hooks_url":"https://api.github.com/repos/ezmobius/bmhsearch/hooks","issue_events_url":"https://api.github.com/repos/ezmobius/bmhsearch/issues/events{/number}","events_url":"https://api.github.com/repos/ezmobius/bmhsearch/events","assignees_url":"https://api.github.com/repos/ezmobius/bmhsearch/assignees{/user}","branches_url":"https://api.github.com/repos/ezmobius/bmhsearch/branches{/branch}","tags_url":"https://api.github.com/repos/ezmobius/bmhsearch/tags","blobs_url":"https://api.github.com/repos/ezmobius/bmhsearch/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ezmobius/bmhsearch/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ezmobius/bmhsearch/git/refs{/sha}","trees_url":"https://api.github.com/repos/ezmobius/bmhsearch/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ezmobius/bmhsearch/statuses/{sha}","languages_url":"https://api.github.com/repos/ezmobius/bmhsearch/languages","stargazers_url":"https://api.github.com/repos/ezmobius/bmhsearch/stargazers","contributors_url":"https://api.github.com/repos/ezmobius/bmhsearch/contributors","subscribers_url":"https://api.github.com/repos/ezmobius/bmhsearch/subscribers","subscription_url":"https://api.github.com/repos/ezmobius/bmhsearch/subscription","commits_url":"https://api.github.com/repos/ezmobius/bmhsearch/commits{/sha}","git_commits_url":"https://api.github.com/repos/ezmobius/bmhsearch/git/commits{/sha}","comments_url":"https://api.github.com/repos/ezmobius/bmhsearch/comments{/number}","issue_comment_url":"https://api.github.com/repos/ezmobius/bmhsearch/issues/comments/{number}","contents_url":"https://api.github.com/repos/ezmobius/bmhsearch/contents/{+path}","compare_url":"https://api.github.com/repos/ezmobius/bmhsearch/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ezmobius/bmhsearch/merges","archive_url":"https://api.github.com/repos/ezmobius/bmhsearch/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ezmobius/bmhsearch/downloads","issues_url":"https://api.github.com/repos/ezmobius/bmhsearch/issues{/number}","pulls_url":"https://api.github.com/repos/ezmobius/bmhsearch/pulls{/number}","milestones_url":"https://api.github.com/repos/ezmobius/bmhsearch/milestones{/number}","notifications_url":"https://api.github.com/repos/ezmobius/bmhsearch/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ezmobius/bmhsearch/labels{/name}"},{"id":137,"name":"mofo","full_name":"uggedal/mofo","owner":{"login":"uggedal","id":71,"avatar_url":"https://1.gravatar.com/avatar/0339e3df937c32000f9e2cf1de04298d?d=https%3A%2F%2Fidenticons.github.com%2Fe2c420d928d4bf8ce0ff2ec19b371514.png","gravatar_id":"0339e3df937c32000f9e2cf1de04298d","url":"https://api.github.com/users/uggedal","html_url":"https://github.com/uggedal","followers_url":"https://api.github.com/users/uggedal/followers","following_url":"https://api.github.com/users/uggedal/following{/other_user}","gists_url":"https://api.github.com/users/uggedal/gists{/gist_id}","starred_url":"https://api.github.com/users/uggedal/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/uggedal/subscriptions","organizations_url":"https://api.github.com/users/uggedal/orgs","repos_url":"https://api.github.com/users/uggedal/repos","events_url":"https://api.github.com/users/uggedal/events{/privacy}","received_events_url":"https://api.github.com/users/uggedal/received_events","type":"User"},"private":false,"html_url":"https://github.com/uggedal/mofo","description":"Mofo is a fast and simple microformat parser, based on a concise DSL and Hpricot.","fork":true,"url":"https://api.github.com/repos/uggedal/mofo","forks_url":"https://api.github.com/repos/uggedal/mofo/forks","keys_url":"https://api.github.com/repos/uggedal/mofo/keys{/key_id}","collaborators_url":"https://api.github.com/repos/uggedal/mofo/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/uggedal/mofo/teams","hooks_url":"https://api.github.com/repos/uggedal/mofo/hooks","issue_events_url":"https://api.github.com/repos/uggedal/mofo/issues/events{/number}","events_url":"https://api.github.com/repos/uggedal/mofo/events","assignees_url":"https://api.github.com/repos/uggedal/mofo/assignees{/user}","branches_url":"https://api.github.com/repos/uggedal/mofo/branches{/branch}","tags_url":"https://api.github.com/repos/uggedal/mofo/tags","blobs_url":"https://api.github.com/repos/uggedal/mofo/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/uggedal/mofo/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/uggedal/mofo/git/refs{/sha}","trees_url":"https://api.github.com/repos/uggedal/mofo/git/trees{/sha}","statuses_url":"https://api.github.com/repos/uggedal/mofo/statuses/{sha}","languages_url":"https://api.github.com/repos/uggedal/mofo/languages","stargazers_url":"https://api.github.com/repos/uggedal/mofo/stargazers","contributors_url":"https://api.github.com/repos/uggedal/mofo/contributors","subscribers_url":"https://api.github.com/repos/uggedal/mofo/subscribers","subscription_url":"https://api.github.com/repos/uggedal/mofo/subscription","commits_url":"https://api.github.com/repos/uggedal/mofo/commits{/sha}","git_commits_url":"https://api.github.com/repos/uggedal/mofo/git/commits{/sha}","comments_url":"https://api.github.com/repos/uggedal/mofo/comments{/number}","issue_comment_url":"https://api.github.com/repos/uggedal/mofo/issues/comments/{number}","contents_url":"https://api.github.com/repos/uggedal/mofo/contents/{+path}","compare_url":"https://api.github.com/repos/uggedal/mofo/compare/{base}...{head}","merges_url":"https://api.github.com/repos/uggedal/mofo/merges","archive_url":"https://api.github.com/repos/uggedal/mofo/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/uggedal/mofo/downloads","issues_url":"https://api.github.com/repos/uggedal/mofo/issues{/number}","pulls_url":"https://api.github.com/repos/uggedal/mofo/pulls{/number}","milestones_url":"https://api.github.com/repos/uggedal/mofo/milestones{/number}","notifications_url":"https://api.github.com/repos/uggedal/mofo/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/uggedal/mofo/labels{/name}"},{"id":139,"name":"simply_versioned","full_name":"mmower/simply_versioned","owner":{"login":"mmower","id":74,"avatar_url":"https://2.gravatar.com/avatar/9d89c1c7a998c1f6f6e3fa9ac1753d29?d=https%3A%2F%2Fidenticons.github.com%2Fad61ab143223efbc24c7d2583be69251.png","gravatar_id":"9d89c1c7a998c1f6f6e3fa9ac1753d29","url":"https://api.github.com/users/mmower","html_url":"https://github.com/mmower","followers_url":"https://api.github.com/users/mmower/followers","following_url":"https://api.github.com/users/mmower/following{/other_user}","gists_url":"https://api.github.com/users/mmower/gists{/gist_id}","starred_url":"https://api.github.com/users/mmower/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mmower/subscriptions","organizations_url":"https://api.github.com/users/mmower/orgs","repos_url":"https://api.github.com/users/mmower/repos","events_url":"https://api.github.com/users/mmower/events{/privacy}","received_events_url":"https://api.github.com/users/mmower/received_events","type":"User"},"private":false,"html_url":"https://github.com/mmower/simply_versioned","description":"A simple, non-invasive, approach to versioning ActiveRecord models","fork":false,"url":"https://api.github.com/repos/mmower/simply_versioned","forks_url":"https://api.github.com/repos/mmower/simply_versioned/forks","keys_url":"https://api.github.com/repos/mmower/simply_versioned/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mmower/simply_versioned/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mmower/simply_versioned/teams","hooks_url":"https://api.github.com/repos/mmower/simply_versioned/hooks","issue_events_url":"https://api.github.com/repos/mmower/simply_versioned/issues/events{/number}","events_url":"https://api.github.com/repos/mmower/simply_versioned/events","assignees_url":"https://api.github.com/repos/mmower/simply_versioned/assignees{/user}","branches_url":"https://api.github.com/repos/mmower/simply_versioned/branches{/branch}","tags_url":"https://api.github.com/repos/mmower/simply_versioned/tags","blobs_url":"https://api.github.com/repos/mmower/simply_versioned/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mmower/simply_versioned/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mmower/simply_versioned/git/refs{/sha}","trees_url":"https://api.github.com/repos/mmower/simply_versioned/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mmower/simply_versioned/statuses/{sha}","languages_url":"https://api.github.com/repos/mmower/simply_versioned/languages","stargazers_url":"https://api.github.com/repos/mmower/simply_versioned/stargazers","contributors_url":"https://api.github.com/repos/mmower/simply_versioned/contributors","subscribers_url":"https://api.github.com/repos/mmower/simply_versioned/subscribers","subscription_url":"https://api.github.com/repos/mmower/simply_versioned/subscription","commits_url":"https://api.github.com/repos/mmower/simply_versioned/commits{/sha}","git_commits_url":"https://api.github.com/repos/mmower/simply_versioned/git/commits{/sha}","comments_url":"https://api.github.com/repos/mmower/simply_versioned/comments{/number}","issue_comment_url":"https://api.github.com/repos/mmower/simply_versioned/issues/comments/{number}","contents_url":"https://api.github.com/repos/mmower/simply_versioned/contents/{+path}","compare_url":"https://api.github.com/repos/mmower/simply_versioned/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mmower/simply_versioned/merges","archive_url":"https://api.github.com/repos/mmower/simply_versioned/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mmower/simply_versioned/downloads","issues_url":"https://api.github.com/repos/mmower/simply_versioned/issues{/number}","pulls_url":"https://api.github.com/repos/mmower/simply_versioned/pulls{/number}","milestones_url":"https://api.github.com/repos/mmower/simply_versioned/milestones{/number}","notifications_url":"https://api.github.com/repos/mmower/simply_versioned/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mmower/simply_versioned/labels{/name}"},{"id":140,"name":"gchart","full_name":"abhay/gchart","owner":{"login":"abhay","id":75,"avatar_url":"https://1.gravatar.com/avatar/012b62cf82e7956ffe8f47086be831de?d=https%3A%2F%2Fidenticons.github.com%2Fd09bf41544a3365a46c9077ebb5e35c3.png","gravatar_id":"012b62cf82e7956ffe8f47086be831de","url":"https://api.github.com/users/abhay","html_url":"https://github.com/abhay","followers_url":"https://api.github.com/users/abhay/followers","following_url":"https://api.github.com/users/abhay/following{/other_user}","gists_url":"https://api.github.com/users/abhay/gists{/gist_id}","starred_url":"https://api.github.com/users/abhay/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/abhay/subscriptions","organizations_url":"https://api.github.com/users/abhay/orgs","repos_url":"https://api.github.com/users/abhay/repos","events_url":"https://api.github.com/users/abhay/events{/privacy}","received_events_url":"https://api.github.com/users/abhay/received_events","type":"User"},"private":false,"html_url":"https://github.com/abhay/gchart","description":"GChart exposes the Google Chart API (http://code.google.com/apis/chart) via a friendly Ruby interface. It can generate the URL for a given chart (for webpage use), or download the generated PNG (for offline use).","fork":false,"url":"https://api.github.com/repos/abhay/gchart","forks_url":"https://api.github.com/repos/abhay/gchart/forks","keys_url":"https://api.github.com/repos/abhay/gchart/keys{/key_id}","collaborators_url":"https://api.github.com/repos/abhay/gchart/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/abhay/gchart/teams","hooks_url":"https://api.github.com/repos/abhay/gchart/hooks","issue_events_url":"https://api.github.com/repos/abhay/gchart/issues/events{/number}","events_url":"https://api.github.com/repos/abhay/gchart/events","assignees_url":"https://api.github.com/repos/abhay/gchart/assignees{/user}","branches_url":"https://api.github.com/repos/abhay/gchart/branches{/branch}","tags_url":"https://api.github.com/repos/abhay/gchart/tags","blobs_url":"https://api.github.com/repos/abhay/gchart/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/abhay/gchart/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/abhay/gchart/git/refs{/sha}","trees_url":"https://api.github.com/repos/abhay/gchart/git/trees{/sha}","statuses_url":"https://api.github.com/repos/abhay/gchart/statuses/{sha}","languages_url":"https://api.github.com/repos/abhay/gchart/languages","stargazers_url":"https://api.github.com/repos/abhay/gchart/stargazers","contributors_url":"https://api.github.com/repos/abhay/gchart/contributors","subscribers_url":"https://api.github.com/repos/abhay/gchart/subscribers","subscription_url":"https://api.github.com/repos/abhay/gchart/subscription","commits_url":"https://api.github.com/repos/abhay/gchart/commits{/sha}","git_commits_url":"https://api.github.com/repos/abhay/gchart/git/commits{/sha}","comments_url":"https://api.github.com/repos/abhay/gchart/comments{/number}","issue_comment_url":"https://api.github.com/repos/abhay/gchart/issues/comments/{number}","contents_url":"https://api.github.com/repos/abhay/gchart/contents/{+path}","compare_url":"https://api.github.com/repos/abhay/gchart/compare/{base}...{head}","merges_url":"https://api.github.com/repos/abhay/gchart/merges","archive_url":"https://api.github.com/repos/abhay/gchart/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/abhay/gchart/downloads","issues_url":"https://api.github.com/repos/abhay/gchart/issues{/number}","pulls_url":"https://api.github.com/repos/abhay/gchart/pulls{/number}","milestones_url":"https://api.github.com/repos/abhay/gchart/milestones{/number}","notifications_url":"https://api.github.com/repos/abhay/gchart/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/abhay/gchart/labels{/name}"},{"id":141,"name":"schemr","full_name":"benburkert/schemr","owner":{"login":"benburkert","id":77,"avatar_url":"https://0.gravatar.com/avatar/4d1c9dad17af98e55cb65b4efce27c42?d=https%3A%2F%2Fidenticons.github.com%2F28dd2c7955ce926456240b2ff0100bde.png","gravatar_id":"4d1c9dad17af98e55cb65b4efce27c42","url":"https://api.github.com/users/benburkert","html_url":"https://github.com/benburkert","followers_url":"https://api.github.com/users/benburkert/followers","following_url":"https://api.github.com/users/benburkert/following{/other_user}","gists_url":"https://api.github.com/users/benburkert/gists{/gist_id}","starred_url":"https://api.github.com/users/benburkert/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/benburkert/subscriptions","organizations_url":"https://api.github.com/users/benburkert/orgs","repos_url":"https://api.github.com/users/benburkert/repos","events_url":"https://api.github.com/users/benburkert/events{/privacy}","received_events_url":"https://api.github.com/users/benburkert/received_events","type":"User"},"private":false,"html_url":"https://github.com/benburkert/schemr","description":"A DSL for creating schema documents in ruby","fork":false,"url":"https://api.github.com/repos/benburkert/schemr","forks_url":"https://api.github.com/repos/benburkert/schemr/forks","keys_url":"https://api.github.com/repos/benburkert/schemr/keys{/key_id}","collaborators_url":"https://api.github.com/repos/benburkert/schemr/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/benburkert/schemr/teams","hooks_url":"https://api.github.com/repos/benburkert/schemr/hooks","issue_events_url":"https://api.github.com/repos/benburkert/schemr/issues/events{/number}","events_url":"https://api.github.com/repos/benburkert/schemr/events","assignees_url":"https://api.github.com/repos/benburkert/schemr/assignees{/user}","branches_url":"https://api.github.com/repos/benburkert/schemr/branches{/branch}","tags_url":"https://api.github.com/repos/benburkert/schemr/tags","blobs_url":"https://api.github.com/repos/benburkert/schemr/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/benburkert/schemr/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/benburkert/schemr/git/refs{/sha}","trees_url":"https://api.github.com/repos/benburkert/schemr/git/trees{/sha}","statuses_url":"https://api.github.com/repos/benburkert/schemr/statuses/{sha}","languages_url":"https://api.github.com/repos/benburkert/schemr/languages","stargazers_url":"https://api.github.com/repos/benburkert/schemr/stargazers","contributors_url":"https://api.github.com/repos/benburkert/schemr/contributors","subscribers_url":"https://api.github.com/repos/benburkert/schemr/subscribers","subscription_url":"https://api.github.com/repos/benburkert/schemr/subscription","commits_url":"https://api.github.com/repos/benburkert/schemr/commits{/sha}","git_commits_url":"https://api.github.com/repos/benburkert/schemr/git/commits{/sha}","comments_url":"https://api.github.com/repos/benburkert/schemr/comments{/number}","issue_comment_url":"https://api.github.com/repos/benburkert/schemr/issues/comments/{number}","contents_url":"https://api.github.com/repos/benburkert/schemr/contents/{+path}","compare_url":"https://api.github.com/repos/benburkert/schemr/compare/{base}...{head}","merges_url":"https://api.github.com/repos/benburkert/schemr/merges","archive_url":"https://api.github.com/repos/benburkert/schemr/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/benburkert/schemr/downloads","issues_url":"https://api.github.com/repos/benburkert/schemr/issues{/number}","pulls_url":"https://api.github.com/repos/benburkert/schemr/pulls{/number}","milestones_url":"https://api.github.com/repos/benburkert/schemr/milestones{/number}","notifications_url":"https://api.github.com/repos/benburkert/schemr/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/benburkert/schemr/labels{/name}"},{"id":142,"name":"calais","full_name":"abhay/calais","owner":{"login":"abhay","id":75,"avatar_url":"https://1.gravatar.com/avatar/012b62cf82e7956ffe8f47086be831de?d=https%3A%2F%2Fidenticons.github.com%2Fd09bf41544a3365a46c9077ebb5e35c3.png","gravatar_id":"012b62cf82e7956ffe8f47086be831de","url":"https://api.github.com/users/abhay","html_url":"https://github.com/abhay","followers_url":"https://api.github.com/users/abhay/followers","following_url":"https://api.github.com/users/abhay/following{/other_user}","gists_url":"https://api.github.com/users/abhay/gists{/gist_id}","starred_url":"https://api.github.com/users/abhay/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/abhay/subscriptions","organizations_url":"https://api.github.com/users/abhay/orgs","repos_url":"https://api.github.com/users/abhay/repos","events_url":"https://api.github.com/users/abhay/events{/privacy}","received_events_url":"https://api.github.com/users/abhay/received_events","type":"User"},"private":false,"html_url":"https://github.com/abhay/calais","description":"A Ruby interface to the Open Calais API (http://opencalais.com)","fork":false,"url":"https://api.github.com/repos/abhay/calais","forks_url":"https://api.github.com/repos/abhay/calais/forks","keys_url":"https://api.github.com/repos/abhay/calais/keys{/key_id}","collaborators_url":"https://api.github.com/repos/abhay/calais/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/abhay/calais/teams","hooks_url":"https://api.github.com/repos/abhay/calais/hooks","issue_events_url":"https://api.github.com/repos/abhay/calais/issues/events{/number}","events_url":"https://api.github.com/repos/abhay/calais/events","assignees_url":"https://api.github.com/repos/abhay/calais/assignees{/user}","branches_url":"https://api.github.com/repos/abhay/calais/branches{/branch}","tags_url":"https://api.github.com/repos/abhay/calais/tags","blobs_url":"https://api.github.com/repos/abhay/calais/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/abhay/calais/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/abhay/calais/git/refs{/sha}","trees_url":"https://api.github.com/repos/abhay/calais/git/trees{/sha}","statuses_url":"https://api.github.com/repos/abhay/calais/statuses/{sha}","languages_url":"https://api.github.com/repos/abhay/calais/languages","stargazers_url":"https://api.github.com/repos/abhay/calais/stargazers","contributors_url":"https://api.github.com/repos/abhay/calais/contributors","subscribers_url":"https://api.github.com/repos/abhay/calais/subscribers","subscription_url":"https://api.github.com/repos/abhay/calais/subscription","commits_url":"https://api.github.com/repos/abhay/calais/commits{/sha}","git_commits_url":"https://api.github.com/repos/abhay/calais/git/commits{/sha}","comments_url":"https://api.github.com/repos/abhay/calais/comments{/number}","issue_comment_url":"https://api.github.com/repos/abhay/calais/issues/comments/{number}","contents_url":"https://api.github.com/repos/abhay/calais/contents/{+path}","compare_url":"https://api.github.com/repos/abhay/calais/compare/{base}...{head}","merges_url":"https://api.github.com/repos/abhay/calais/merges","archive_url":"https://api.github.com/repos/abhay/calais/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/abhay/calais/downloads","issues_url":"https://api.github.com/repos/abhay/calais/issues{/number}","pulls_url":"https://api.github.com/repos/abhay/calais/pulls{/number}","milestones_url":"https://api.github.com/repos/abhay/calais/milestones{/number}","notifications_url":"https://api.github.com/repos/abhay/calais/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/abhay/calais/labels{/name}"},{"id":144,"name":"chronic","full_name":"mojombo/chronic","owner":{"login":"mojombo","id":1,"avatar_url":"https://1.gravatar.com/avatar/25c7c18223fb42a4c6ae1c8db6f50f9b?d=https%3A%2F%2Fidenticons.github.com%2Fc4ca4238a0b923820dcc509a6f75849b.png","gravatar_id":"25c7c18223fb42a4c6ae1c8db6f50f9b","url":"https://api.github.com/users/mojombo","html_url":"https://github.com/mojombo","followers_url":"https://api.github.com/users/mojombo/followers","following_url":"https://api.github.com/users/mojombo/following{/other_user}","gists_url":"https://api.github.com/users/mojombo/gists{/gist_id}","starred_url":"https://api.github.com/users/mojombo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mojombo/subscriptions","organizations_url":"https://api.github.com/users/mojombo/orgs","repos_url":"https://api.github.com/users/mojombo/repos","events_url":"https://api.github.com/users/mojombo/events{/privacy}","received_events_url":"https://api.github.com/users/mojombo/received_events","type":"User"},"private":false,"html_url":"https://github.com/mojombo/chronic","description":"Chronic is a pure Ruby natural language date parser.","fork":false,"url":"https://api.github.com/repos/mojombo/chronic","forks_url":"https://api.github.com/repos/mojombo/chronic/forks","keys_url":"https://api.github.com/repos/mojombo/chronic/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mojombo/chronic/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mojombo/chronic/teams","hooks_url":"https://api.github.com/repos/mojombo/chronic/hooks","issue_events_url":"https://api.github.com/repos/mojombo/chronic/issues/events{/number}","events_url":"https://api.github.com/repos/mojombo/chronic/events","assignees_url":"https://api.github.com/repos/mojombo/chronic/assignees{/user}","branches_url":"https://api.github.com/repos/mojombo/chronic/branches{/branch}","tags_url":"https://api.github.com/repos/mojombo/chronic/tags","blobs_url":"https://api.github.com/repos/mojombo/chronic/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mojombo/chronic/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mojombo/chronic/git/refs{/sha}","trees_url":"https://api.github.com/repos/mojombo/chronic/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mojombo/chronic/statuses/{sha}","languages_url":"https://api.github.com/repos/mojombo/chronic/languages","stargazers_url":"https://api.github.com/repos/mojombo/chronic/stargazers","contributors_url":"https://api.github.com/repos/mojombo/chronic/contributors","subscribers_url":"https://api.github.com/repos/mojombo/chronic/subscribers","subscription_url":"https://api.github.com/repos/mojombo/chronic/subscription","commits_url":"https://api.github.com/repos/mojombo/chronic/commits{/sha}","git_commits_url":"https://api.github.com/repos/mojombo/chronic/git/commits{/sha}","comments_url":"https://api.github.com/repos/mojombo/chronic/comments{/number}","issue_comment_url":"https://api.github.com/repos/mojombo/chronic/issues/comments/{number}","contents_url":"https://api.github.com/repos/mojombo/chronic/contents/{+path}","compare_url":"https://api.github.com/repos/mojombo/chronic/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mojombo/chronic/merges","archive_url":"https://api.github.com/repos/mojombo/chronic/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mojombo/chronic/downloads","issues_url":"https://api.github.com/repos/mojombo/chronic/issues{/number}","pulls_url":"https://api.github.com/repos/mojombo/chronic/pulls{/number}","milestones_url":"https://api.github.com/repos/mojombo/chronic/milestones{/number}","notifications_url":"https://api.github.com/repos/mojombo/chronic/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mojombo/chronic/labels{/name}"},{"id":165,"name":"git-wiki","full_name":"sr/git-wiki","owner":{"login":"sr","id":90,"avatar_url":"https://1.gravatar.com/avatar/8e0adf6f8274375b90a180d256d73bad?d=https%3A%2F%2Fidenticons.github.com%2F8613985ec49eb8f757ae6439e879bb2a.png","gravatar_id":"8e0adf6f8274375b90a180d256d73bad","url":"https://api.github.com/users/sr","html_url":"https://github.com/sr","followers_url":"https://api.github.com/users/sr/followers","following_url":"https://api.github.com/users/sr/following{/other_user}","gists_url":"https://api.github.com/users/sr/gists{/gist_id}","starred_url":"https://api.github.com/users/sr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sr/subscriptions","organizations_url":"https://api.github.com/users/sr/orgs","repos_url":"https://api.github.com/users/sr/repos","events_url":"https://api.github.com/users/sr/events{/privacy}","received_events_url":"https://api.github.com/users/sr/received_events","type":"User"},"private":false,"html_url":"https://github.com/sr/git-wiki","description":"A quick & dirty git-powered Sinatra wiki","fork":false,"url":"https://api.github.com/repos/sr/git-wiki","forks_url":"https://api.github.com/repos/sr/git-wiki/forks","keys_url":"https://api.github.com/repos/sr/git-wiki/keys{/key_id}","collaborators_url":"https://api.github.com/repos/sr/git-wiki/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/sr/git-wiki/teams","hooks_url":"https://api.github.com/repos/sr/git-wiki/hooks","issue_events_url":"https://api.github.com/repos/sr/git-wiki/issues/events{/number}","events_url":"https://api.github.com/repos/sr/git-wiki/events","assignees_url":"https://api.github.com/repos/sr/git-wiki/assignees{/user}","branches_url":"https://api.github.com/repos/sr/git-wiki/branches{/branch}","tags_url":"https://api.github.com/repos/sr/git-wiki/tags","blobs_url":"https://api.github.com/repos/sr/git-wiki/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/sr/git-wiki/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/sr/git-wiki/git/refs{/sha}","trees_url":"https://api.github.com/repos/sr/git-wiki/git/trees{/sha}","statuses_url":"https://api.github.com/repos/sr/git-wiki/statuses/{sha}","languages_url":"https://api.github.com/repos/sr/git-wiki/languages","stargazers_url":"https://api.github.com/repos/sr/git-wiki/stargazers","contributors_url":"https://api.github.com/repos/sr/git-wiki/contributors","subscribers_url":"https://api.github.com/repos/sr/git-wiki/subscribers","subscription_url":"https://api.github.com/repos/sr/git-wiki/subscription","commits_url":"https://api.github.com/repos/sr/git-wiki/commits{/sha}","git_commits_url":"https://api.github.com/repos/sr/git-wiki/git/commits{/sha}","comments_url":"https://api.github.com/repos/sr/git-wiki/comments{/number}","issue_comment_url":"https://api.github.com/repos/sr/git-wiki/issues/comments/{number}","contents_url":"https://api.github.com/repos/sr/git-wiki/contents/{+path}","compare_url":"https://api.github.com/repos/sr/git-wiki/compare/{base}...{head}","merges_url":"https://api.github.com/repos/sr/git-wiki/merges","archive_url":"https://api.github.com/repos/sr/git-wiki/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/sr/git-wiki/downloads","issues_url":"https://api.github.com/repos/sr/git-wiki/issues{/number}","pulls_url":"https://api.github.com/repos/sr/git-wiki/pulls{/number}","milestones_url":"https://api.github.com/repos/sr/git-wiki/milestones{/number}","notifications_url":"https://api.github.com/repos/sr/git-wiki/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/sr/git-wiki/labels{/name}"},{"id":176,"name":"ambitious_activeldap","full_name":"automatthew/ambitious_activeldap","owner":{"login":"automatthew","id":105,"avatar_url":"https://2.gravatar.com/avatar/491d5a2b6e9c9346e2d67da31a633457?d=https%3A%2F%2Fidenticons.github.com%2F65b9eea6e1cc6bb9f0cd2a47751a186f.png","gravatar_id":"491d5a2b6e9c9346e2d67da31a633457","url":"https://api.github.com/users/automatthew","html_url":"https://github.com/automatthew","followers_url":"https://api.github.com/users/automatthew/followers","following_url":"https://api.github.com/users/automatthew/following{/other_user}","gists_url":"https://api.github.com/users/automatthew/gists{/gist_id}","starred_url":"https://api.github.com/users/automatthew/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/automatthew/subscriptions","organizations_url":"https://api.github.com/users/automatthew/orgs","repos_url":"https://api.github.com/users/automatthew/repos","events_url":"https://api.github.com/users/automatthew/events{/privacy}","received_events_url":"https://api.github.com/users/automatthew/received_events","type":"User"},"private":false,"html_url":"https://github.com/automatthew/ambitious_activeldap","description":"Ambition adapter for ActiveLdap","fork":false,"url":"https://api.github.com/repos/automatthew/ambitious_activeldap","forks_url":"https://api.github.com/repos/automatthew/ambitious_activeldap/forks","keys_url":"https://api.github.com/repos/automatthew/ambitious_activeldap/keys{/key_id}","collaborators_url":"https://api.github.com/repos/automatthew/ambitious_activeldap/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/automatthew/ambitious_activeldap/teams","hooks_url":"https://api.github.com/repos/automatthew/ambitious_activeldap/hooks","issue_events_url":"https://api.github.com/repos/automatthew/ambitious_activeldap/issues/events{/number}","events_url":"https://api.github.com/repos/automatthew/ambitious_activeldap/events","assignees_url":"https://api.github.com/repos/automatthew/ambitious_activeldap/assignees{/user}","branches_url":"https://api.github.com/repos/automatthew/ambitious_activeldap/branches{/branch}","tags_url":"https://api.github.com/repos/automatthew/ambitious_activeldap/tags","blobs_url":"https://api.github.com/repos/automatthew/ambitious_activeldap/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/automatthew/ambitious_activeldap/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/automatthew/ambitious_activeldap/git/refs{/sha}","trees_url":"https://api.github.com/repos/automatthew/ambitious_activeldap/git/trees{/sha}","statuses_url":"https://api.github.com/repos/automatthew/ambitious_activeldap/statuses/{sha}","languages_url":"https://api.github.com/repos/automatthew/ambitious_activeldap/languages","stargazers_url":"https://api.github.com/repos/automatthew/ambitious_activeldap/stargazers","contributors_url":"https://api.github.com/repos/automatthew/ambitious_activeldap/contributors","subscribers_url":"https://api.github.com/repos/automatthew/ambitious_activeldap/subscribers","subscription_url":"https://api.github.com/repos/automatthew/ambitious_activeldap/subscription","commits_url":"https://api.github.com/repos/automatthew/ambitious_activeldap/commits{/sha}","git_commits_url":"https://api.github.com/repos/automatthew/ambitious_activeldap/git/commits{/sha}","comments_url":"https://api.github.com/repos/automatthew/ambitious_activeldap/comments{/number}","issue_comment_url":"https://api.github.com/repos/automatthew/ambitious_activeldap/issues/comments/{number}","contents_url":"https://api.github.com/repos/automatthew/ambitious_activeldap/contents/{+path}","compare_url":"https://api.github.com/repos/automatthew/ambitious_activeldap/compare/{base}...{head}","merges_url":"https://api.github.com/repos/automatthew/ambitious_activeldap/merges","archive_url":"https://api.github.com/repos/automatthew/ambitious_activeldap/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/automatthew/ambitious_activeldap/downloads","issues_url":"https://api.github.com/repos/automatthew/ambitious_activeldap/issues{/number}","pulls_url":"https://api.github.com/repos/automatthew/ambitious_activeldap/pulls{/number}","milestones_url":"https://api.github.com/repos/automatthew/ambitious_activeldap/milestones{/number}","notifications_url":"https://api.github.com/repos/automatthew/ambitious_activeldap/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/automatthew/ambitious_activeldap/labels{/name}"},{"id":177,"name":"signal-wiki","full_name":"queso/signal-wiki","owner":{"login":"queso","id":106,"avatar_url":"https://2.gravatar.com/avatar/089ddf30c09022b92363dd0d8ce2bdfd?d=https%3A%2F%2Fidenticons.github.com%2Ff0935e4cd5920aa6c7c996a5ee53a70f.png","gravatar_id":"089ddf30c09022b92363dd0d8ce2bdfd","url":"https://api.github.com/users/queso","html_url":"https://github.com/queso","followers_url":"https://api.github.com/users/queso/followers","following_url":"https://api.github.com/users/queso/following{/other_user}","gists_url":"https://api.github.com/users/queso/gists{/gist_id}","starred_url":"https://api.github.com/users/queso/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/queso/subscriptions","organizations_url":"https://api.github.com/users/queso/orgs","repos_url":"https://api.github.com/users/queso/repos","events_url":"https://api.github.com/users/queso/events{/privacy}","received_events_url":"https://api.github.com/users/queso/received_events","type":"User"},"private":false,"html_url":"https://github.com/queso/signal-wiki","description":"The easy to use rails wiki","fork":false,"url":"https://api.github.com/repos/queso/signal-wiki","forks_url":"https://api.github.com/repos/queso/signal-wiki/forks","keys_url":"https://api.github.com/repos/queso/signal-wiki/keys{/key_id}","collaborators_url":"https://api.github.com/repos/queso/signal-wiki/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/queso/signal-wiki/teams","hooks_url":"https://api.github.com/repos/queso/signal-wiki/hooks","issue_events_url":"https://api.github.com/repos/queso/signal-wiki/issues/events{/number}","events_url":"https://api.github.com/repos/queso/signal-wiki/events","assignees_url":"https://api.github.com/repos/queso/signal-wiki/assignees{/user}","branches_url":"https://api.github.com/repos/queso/signal-wiki/branches{/branch}","tags_url":"https://api.github.com/repos/queso/signal-wiki/tags","blobs_url":"https://api.github.com/repos/queso/signal-wiki/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/queso/signal-wiki/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/queso/signal-wiki/git/refs{/sha}","trees_url":"https://api.github.com/repos/queso/signal-wiki/git/trees{/sha}","statuses_url":"https://api.github.com/repos/queso/signal-wiki/statuses/{sha}","languages_url":"https://api.github.com/repos/queso/signal-wiki/languages","stargazers_url":"https://api.github.com/repos/queso/signal-wiki/stargazers","contributors_url":"https://api.github.com/repos/queso/signal-wiki/contributors","subscribers_url":"https://api.github.com/repos/queso/signal-wiki/subscribers","subscription_url":"https://api.github.com/repos/queso/signal-wiki/subscription","commits_url":"https://api.github.com/repos/queso/signal-wiki/commits{/sha}","git_commits_url":"https://api.github.com/repos/queso/signal-wiki/git/commits{/sha}","comments_url":"https://api.github.com/repos/queso/signal-wiki/comments{/number}","issue_comment_url":"https://api.github.com/repos/queso/signal-wiki/issues/comments/{number}","contents_url":"https://api.github.com/repos/queso/signal-wiki/contents/{+path}","compare_url":"https://api.github.com/repos/queso/signal-wiki/compare/{base}...{head}","merges_url":"https://api.github.com/repos/queso/signal-wiki/merges","archive_url":"https://api.github.com/repos/queso/signal-wiki/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/queso/signal-wiki/downloads","issues_url":"https://api.github.com/repos/queso/signal-wiki/issues{/number}","pulls_url":"https://api.github.com/repos/queso/signal-wiki/pulls{/number}","milestones_url":"https://api.github.com/repos/queso/signal-wiki/milestones{/number}","notifications_url":"https://api.github.com/repos/queso/signal-wiki/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/queso/signal-wiki/labels{/name}"},{"id":179,"name":"ruby-on-rails-tmbundle","full_name":"drnic/ruby-on-rails-tmbundle","owner":{"login":"drnic","id":108,"avatar_url":"https://2.gravatar.com/avatar/cb2b768a5e546b24052ea03334e43676?d=https%3A%2F%2Fidenticons.github.com%2Fa3c65c2974270fd093ee8a9bf8ae7d0b.png","gravatar_id":"cb2b768a5e546b24052ea03334e43676","url":"https://api.github.com/users/drnic","html_url":"https://github.com/drnic","followers_url":"https://api.github.com/users/drnic/followers","following_url":"https://api.github.com/users/drnic/following{/other_user}","gists_url":"https://api.github.com/users/drnic/gists{/gist_id}","starred_url":"https://api.github.com/users/drnic/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/drnic/subscriptions","organizations_url":"https://api.github.com/users/drnic/orgs","repos_url":"https://api.github.com/users/drnic/repos","events_url":"https://api.github.com/users/drnic/events{/privacy}","received_events_url":"https://api.github.com/users/drnic/received_events","type":"User"},"private":false,"html_url":"https://github.com/drnic/ruby-on-rails-tmbundle","description":"Ruby on Rails TextMate bundle [Learn it with PeepCode - http://peepcode.com/products/textmate-for-rails-2]","fork":false,"url":"https://api.github.com/repos/drnic/ruby-on-rails-tmbundle","forks_url":"https://api.github.com/repos/drnic/ruby-on-rails-tmbundle/forks","keys_url":"https://api.github.com/repos/drnic/ruby-on-rails-tmbundle/keys{/key_id}","collaborators_url":"https://api.github.com/repos/drnic/ruby-on-rails-tmbundle/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/drnic/ruby-on-rails-tmbundle/teams","hooks_url":"https://api.github.com/repos/drnic/ruby-on-rails-tmbundle/hooks","issue_events_url":"https://api.github.com/repos/drnic/ruby-on-rails-tmbundle/issues/events{/number}","events_url":"https://api.github.com/repos/drnic/ruby-on-rails-tmbundle/events","assignees_url":"https://api.github.com/repos/drnic/ruby-on-rails-tmbundle/assignees{/user}","branches_url":"https://api.github.com/repos/drnic/ruby-on-rails-tmbundle/branches{/branch}","tags_url":"https://api.github.com/repos/drnic/ruby-on-rails-tmbundle/tags","blobs_url":"https://api.github.com/repos/drnic/ruby-on-rails-tmbundle/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/drnic/ruby-on-rails-tmbundle/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/drnic/ruby-on-rails-tmbundle/git/refs{/sha}","trees_url":"https://api.github.com/repos/drnic/ruby-on-rails-tmbundle/git/trees{/sha}","statuses_url":"https://api.github.com/repos/drnic/ruby-on-rails-tmbundle/statuses/{sha}","languages_url":"https://api.github.com/repos/drnic/ruby-on-rails-tmbundle/languages","stargazers_url":"https://api.github.com/repos/drnic/ruby-on-rails-tmbundle/stargazers","contributors_url":"https://api.github.com/repos/drnic/ruby-on-rails-tmbundle/contributors","subscribers_url":"https://api.github.com/repos/drnic/ruby-on-rails-tmbundle/subscribers","subscription_url":"https://api.github.com/repos/drnic/ruby-on-rails-tmbundle/subscription","commits_url":"https://api.github.com/repos/drnic/ruby-on-rails-tmbundle/commits{/sha}","git_commits_url":"https://api.github.com/repos/drnic/ruby-on-rails-tmbundle/git/commits{/sha}","comments_url":"https://api.github.com/repos/drnic/ruby-on-rails-tmbundle/comments{/number}","issue_comment_url":"https://api.github.com/repos/drnic/ruby-on-rails-tmbundle/issues/comments/{number}","contents_url":"https://api.github.com/repos/drnic/ruby-on-rails-tmbundle/contents/{+path}","compare_url":"https://api.github.com/repos/drnic/ruby-on-rails-tmbundle/compare/{base}...{head}","merges_url":"https://api.github.com/repos/drnic/ruby-on-rails-tmbundle/merges","archive_url":"https://api.github.com/repos/drnic/ruby-on-rails-tmbundle/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/drnic/ruby-on-rails-tmbundle/downloads","issues_url":"https://api.github.com/repos/drnic/ruby-on-rails-tmbundle/issues{/number}","pulls_url":"https://api.github.com/repos/drnic/ruby-on-rails-tmbundle/pulls{/number}","milestones_url":"https://api.github.com/repos/drnic/ruby-on-rails-tmbundle/milestones{/number}","notifications_url":"https://api.github.com/repos/drnic/ruby-on-rails-tmbundle/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/drnic/ruby-on-rails-tmbundle/labels{/name}"},{"id":185,"name":"low-pro-for-jquery","full_name":"danwrong/low-pro-for-jquery","owner":{"login":"danwrong","id":110,"avatar_url":"https://1.gravatar.com/avatar/0727907ae68db2e8ebc1ea1b01f00d69?d=https%3A%2F%2Fidenticons.github.com%2F5f93f983524def3dca464469d2cf9f3e.png","gravatar_id":"0727907ae68db2e8ebc1ea1b01f00d69","url":"https://api.github.com/users/danwrong","html_url":"https://github.com/danwrong","followers_url":"https://api.github.com/users/danwrong/followers","following_url":"https://api.github.com/users/danwrong/following{/other_user}","gists_url":"https://api.github.com/users/danwrong/gists{/gist_id}","starred_url":"https://api.github.com/users/danwrong/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danwrong/subscriptions","organizations_url":"https://api.github.com/users/danwrong/orgs","repos_url":"https://api.github.com/users/danwrong/repos","events_url":"https://api.github.com/users/danwrong/events{/privacy}","received_events_url":"https://api.github.com/users/danwrong/received_events","type":"User"},"private":false,"html_url":"https://github.com/danwrong/low-pro-for-jquery","description":"A jQuery plugin version of the Low Pro behavior framework.","fork":false,"url":"https://api.github.com/repos/danwrong/low-pro-for-jquery","forks_url":"https://api.github.com/repos/danwrong/low-pro-for-jquery/forks","keys_url":"https://api.github.com/repos/danwrong/low-pro-for-jquery/keys{/key_id}","collaborators_url":"https://api.github.com/repos/danwrong/low-pro-for-jquery/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/danwrong/low-pro-for-jquery/teams","hooks_url":"https://api.github.com/repos/danwrong/low-pro-for-jquery/hooks","issue_events_url":"https://api.github.com/repos/danwrong/low-pro-for-jquery/issues/events{/number}","events_url":"https://api.github.com/repos/danwrong/low-pro-for-jquery/events","assignees_url":"https://api.github.com/repos/danwrong/low-pro-for-jquery/assignees{/user}","branches_url":"https://api.github.com/repos/danwrong/low-pro-for-jquery/branches{/branch}","tags_url":"https://api.github.com/repos/danwrong/low-pro-for-jquery/tags","blobs_url":"https://api.github.com/repos/danwrong/low-pro-for-jquery/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/danwrong/low-pro-for-jquery/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/danwrong/low-pro-for-jquery/git/refs{/sha}","trees_url":"https://api.github.com/repos/danwrong/low-pro-for-jquery/git/trees{/sha}","statuses_url":"https://api.github.com/repos/danwrong/low-pro-for-jquery/statuses/{sha}","languages_url":"https://api.github.com/repos/danwrong/low-pro-for-jquery/languages","stargazers_url":"https://api.github.com/repos/danwrong/low-pro-for-jquery/stargazers","contributors_url":"https://api.github.com/repos/danwrong/low-pro-for-jquery/contributors","subscribers_url":"https://api.github.com/repos/danwrong/low-pro-for-jquery/subscribers","subscription_url":"https://api.github.com/repos/danwrong/low-pro-for-jquery/subscription","commits_url":"https://api.github.com/repos/danwrong/low-pro-for-jquery/commits{/sha}","git_commits_url":"https://api.github.com/repos/danwrong/low-pro-for-jquery/git/commits{/sha}","comments_url":"https://api.github.com/repos/danwrong/low-pro-for-jquery/comments{/number}","issue_comment_url":"https://api.github.com/repos/danwrong/low-pro-for-jquery/issues/comments/{number}","contents_url":"https://api.github.com/repos/danwrong/low-pro-for-jquery/contents/{+path}","compare_url":"https://api.github.com/repos/danwrong/low-pro-for-jquery/compare/{base}...{head}","merges_url":"https://api.github.com/repos/danwrong/low-pro-for-jquery/merges","archive_url":"https://api.github.com/repos/danwrong/low-pro-for-jquery/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/danwrong/low-pro-for-jquery/downloads","issues_url":"https://api.github.com/repos/danwrong/low-pro-for-jquery/issues{/number}","pulls_url":"https://api.github.com/repos/danwrong/low-pro-for-jquery/pulls{/number}","milestones_url":"https://api.github.com/repos/danwrong/low-pro-for-jquery/milestones{/number}","notifications_url":"https://api.github.com/repos/danwrong/low-pro-for-jquery/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/danwrong/low-pro-for-jquery/labels{/name}"},{"id":186,"name":"merb-core","full_name":"wayneeseguin/merb-core","owner":{"login":"wayneeseguin","id":18,"avatar_url":"https://0.gravatar.com/avatar/b9b5ff40232c1dfd61238c2a90467f84?d=https%3A%2F%2Fidenticons.github.com%2F6f4922f45568161a8cdf4ad2299f6d23.png","gravatar_id":"b9b5ff40232c1dfd61238c2a90467f84","url":"https://api.github.com/users/wayneeseguin","html_url":"https://github.com/wayneeseguin","followers_url":"https://api.github.com/users/wayneeseguin/followers","following_url":"https://api.github.com/users/wayneeseguin/following{/other_user}","gists_url":"https://api.github.com/users/wayneeseguin/gists{/gist_id}","starred_url":"https://api.github.com/users/wayneeseguin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wayneeseguin/subscriptions","organizations_url":"https://api.github.com/users/wayneeseguin/orgs","repos_url":"https://api.github.com/users/wayneeseguin/repos","events_url":"https://api.github.com/users/wayneeseguin/events{/privacy}","received_events_url":"https://api.github.com/users/wayneeseguin/received_events","type":"User"},"private":false,"html_url":"https://github.com/wayneeseguin/merb-core","description":"Merb Core: All you need. None you don't.","fork":true,"url":"https://api.github.com/repos/wayneeseguin/merb-core","forks_url":"https://api.github.com/repos/wayneeseguin/merb-core/forks","keys_url":"https://api.github.com/repos/wayneeseguin/merb-core/keys{/key_id}","collaborators_url":"https://api.github.com/repos/wayneeseguin/merb-core/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/wayneeseguin/merb-core/teams","hooks_url":"https://api.github.com/repos/wayneeseguin/merb-core/hooks","issue_events_url":"https://api.github.com/repos/wayneeseguin/merb-core/issues/events{/number}","events_url":"https://api.github.com/repos/wayneeseguin/merb-core/events","assignees_url":"https://api.github.com/repos/wayneeseguin/merb-core/assignees{/user}","branches_url":"https://api.github.com/repos/wayneeseguin/merb-core/branches{/branch}","tags_url":"https://api.github.com/repos/wayneeseguin/merb-core/tags","blobs_url":"https://api.github.com/repos/wayneeseguin/merb-core/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/wayneeseguin/merb-core/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/wayneeseguin/merb-core/git/refs{/sha}","trees_url":"https://api.github.com/repos/wayneeseguin/merb-core/git/trees{/sha}","statuses_url":"https://api.github.com/repos/wayneeseguin/merb-core/statuses/{sha}","languages_url":"https://api.github.com/repos/wayneeseguin/merb-core/languages","stargazers_url":"https://api.github.com/repos/wayneeseguin/merb-core/stargazers","contributors_url":"https://api.github.com/repos/wayneeseguin/merb-core/contributors","subscribers_url":"https://api.github.com/repos/wayneeseguin/merb-core/subscribers","subscription_url":"https://api.github.com/repos/wayneeseguin/merb-core/subscription","commits_url":"https://api.github.com/repos/wayneeseguin/merb-core/commits{/sha}","git_commits_url":"https://api.github.com/repos/wayneeseguin/merb-core/git/commits{/sha}","comments_url":"https://api.github.com/repos/wayneeseguin/merb-core/comments{/number}","issue_comment_url":"https://api.github.com/repos/wayneeseguin/merb-core/issues/comments/{number}","contents_url":"https://api.github.com/repos/wayneeseguin/merb-core/contents/{+path}","compare_url":"https://api.github.com/repos/wayneeseguin/merb-core/compare/{base}...{head}","merges_url":"https://api.github.com/repos/wayneeseguin/merb-core/merges","archive_url":"https://api.github.com/repos/wayneeseguin/merb-core/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/wayneeseguin/merb-core/downloads","issues_url":"https://api.github.com/repos/wayneeseguin/merb-core/issues{/number}","pulls_url":"https://api.github.com/repos/wayneeseguin/merb-core/pulls{/number}","milestones_url":"https://api.github.com/repos/wayneeseguin/merb-core/milestones{/number}","notifications_url":"https://api.github.com/repos/wayneeseguin/merb-core/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/wayneeseguin/merb-core/labels{/name}"},{"id":190,"name":"dst","full_name":"sr/dst","owner":{"login":"sr","id":90,"avatar_url":"https://1.gravatar.com/avatar/8e0adf6f8274375b90a180d256d73bad?d=https%3A%2F%2Fidenticons.github.com%2F8613985ec49eb8f757ae6439e879bb2a.png","gravatar_id":"8e0adf6f8274375b90a180d256d73bad","url":"https://api.github.com/users/sr","html_url":"https://github.com/sr","followers_url":"https://api.github.com/users/sr/followers","following_url":"https://api.github.com/users/sr/following{/other_user}","gists_url":"https://api.github.com/users/sr/gists{/gist_id}","starred_url":"https://api.github.com/users/sr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sr/subscriptions","organizations_url":"https://api.github.com/users/sr/orgs","repos_url":"https://api.github.com/users/sr/repos","events_url":"https://api.github.com/users/sr/events{/privacy}","received_events_url":"https://api.github.com/users/sr/received_events","type":"User"},"private":false,"html_url":"https://github.com/sr/dst","description":"todo-list manager I wrote back in 2008 with the help of Gregory Brown in order to learn Ruby and TDD","fork":false,"url":"https://api.github.com/repos/sr/dst","forks_url":"https://api.github.com/repos/sr/dst/forks","keys_url":"https://api.github.com/repos/sr/dst/keys{/key_id}","collaborators_url":"https://api.github.com/repos/sr/dst/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/sr/dst/teams","hooks_url":"https://api.github.com/repos/sr/dst/hooks","issue_events_url":"https://api.github.com/repos/sr/dst/issues/events{/number}","events_url":"https://api.github.com/repos/sr/dst/events","assignees_url":"https://api.github.com/repos/sr/dst/assignees{/user}","branches_url":"https://api.github.com/repos/sr/dst/branches{/branch}","tags_url":"https://api.github.com/repos/sr/dst/tags","blobs_url":"https://api.github.com/repos/sr/dst/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/sr/dst/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/sr/dst/git/refs{/sha}","trees_url":"https://api.github.com/repos/sr/dst/git/trees{/sha}","statuses_url":"https://api.github.com/repos/sr/dst/statuses/{sha}","languages_url":"https://api.github.com/repos/sr/dst/languages","stargazers_url":"https://api.github.com/repos/sr/dst/stargazers","contributors_url":"https://api.github.com/repos/sr/dst/contributors","subscribers_url":"https://api.github.com/repos/sr/dst/subscribers","subscription_url":"https://api.github.com/repos/sr/dst/subscription","commits_url":"https://api.github.com/repos/sr/dst/commits{/sha}","git_commits_url":"https://api.github.com/repos/sr/dst/git/commits{/sha}","comments_url":"https://api.github.com/repos/sr/dst/comments{/number}","issue_comment_url":"https://api.github.com/repos/sr/dst/issues/comments/{number}","contents_url":"https://api.github.com/repos/sr/dst/contents/{+path}","compare_url":"https://api.github.com/repos/sr/dst/compare/{base}...{head}","merges_url":"https://api.github.com/repos/sr/dst/merges","archive_url":"https://api.github.com/repos/sr/dst/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/sr/dst/downloads","issues_url":"https://api.github.com/repos/sr/dst/issues{/number}","pulls_url":"https://api.github.com/repos/sr/dst/pulls{/number}","milestones_url":"https://api.github.com/repos/sr/dst/milestones{/number}","notifications_url":"https://api.github.com/repos/sr/dst/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/sr/dst/labels{/name}"},{"id":191,"name":"yaws","full_name":"mojombo/yaws","owner":{"login":"mojombo","id":1,"avatar_url":"https://1.gravatar.com/avatar/25c7c18223fb42a4c6ae1c8db6f50f9b?d=https%3A%2F%2Fidenticons.github.com%2Fc4ca4238a0b923820dcc509a6f75849b.png","gravatar_id":"25c7c18223fb42a4c6ae1c8db6f50f9b","url":"https://api.github.com/users/mojombo","html_url":"https://github.com/mojombo","followers_url":"https://api.github.com/users/mojombo/followers","following_url":"https://api.github.com/users/mojombo/following{/other_user}","gists_url":"https://api.github.com/users/mojombo/gists{/gist_id}","starred_url":"https://api.github.com/users/mojombo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mojombo/subscriptions","organizations_url":"https://api.github.com/users/mojombo/orgs","repos_url":"https://api.github.com/users/mojombo/repos","events_url":"https://api.github.com/users/mojombo/events{/privacy}","received_events_url":"https://api.github.com/users/mojombo/received_events","type":"User"},"private":false,"html_url":"https://github.com/mojombo/yaws","description":"YAWS is an erlang web server","fork":false,"url":"https://api.github.com/repos/mojombo/yaws","forks_url":"https://api.github.com/repos/mojombo/yaws/forks","keys_url":"https://api.github.com/repos/mojombo/yaws/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mojombo/yaws/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mojombo/yaws/teams","hooks_url":"https://api.github.com/repos/mojombo/yaws/hooks","issue_events_url":"https://api.github.com/repos/mojombo/yaws/issues/events{/number}","events_url":"https://api.github.com/repos/mojombo/yaws/events","assignees_url":"https://api.github.com/repos/mojombo/yaws/assignees{/user}","branches_url":"https://api.github.com/repos/mojombo/yaws/branches{/branch}","tags_url":"https://api.github.com/repos/mojombo/yaws/tags","blobs_url":"https://api.github.com/repos/mojombo/yaws/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mojombo/yaws/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mojombo/yaws/git/refs{/sha}","trees_url":"https://api.github.com/repos/mojombo/yaws/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mojombo/yaws/statuses/{sha}","languages_url":"https://api.github.com/repos/mojombo/yaws/languages","stargazers_url":"https://api.github.com/repos/mojombo/yaws/stargazers","contributors_url":"https://api.github.com/repos/mojombo/yaws/contributors","subscribers_url":"https://api.github.com/repos/mojombo/yaws/subscribers","subscription_url":"https://api.github.com/repos/mojombo/yaws/subscription","commits_url":"https://api.github.com/repos/mojombo/yaws/commits{/sha}","git_commits_url":"https://api.github.com/repos/mojombo/yaws/git/commits{/sha}","comments_url":"https://api.github.com/repos/mojombo/yaws/comments{/number}","issue_comment_url":"https://api.github.com/repos/mojombo/yaws/issues/comments/{number}","contents_url":"https://api.github.com/repos/mojombo/yaws/contents/{+path}","compare_url":"https://api.github.com/repos/mojombo/yaws/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mojombo/yaws/merges","archive_url":"https://api.github.com/repos/mojombo/yaws/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mojombo/yaws/downloads","issues_url":"https://api.github.com/repos/mojombo/yaws/issues{/number}","pulls_url":"https://api.github.com/repos/mojombo/yaws/pulls{/number}","milestones_url":"https://api.github.com/repos/mojombo/yaws/milestones{/number}","notifications_url":"https://api.github.com/repos/mojombo/yaws/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mojombo/yaws/labels{/name}"},{"id":192,"name":"yaws","full_name":"KirinDave/yaws","owner":{"login":"KirinDave","id":36,"avatar_url":"https://2.gravatar.com/avatar/d4fabd6c08ac228a3ff846d9d0d1580e?d=https%3A%2F%2Fidenticons.github.com%2F19ca14e7ea6328a42e0eb13d585e4c22.png","gravatar_id":"d4fabd6c08ac228a3ff846d9d0d1580e","url":"https://api.github.com/users/KirinDave","html_url":"https://github.com/KirinDave","followers_url":"https://api.github.com/users/KirinDave/followers","following_url":"https://api.github.com/users/KirinDave/following{/other_user}","gists_url":"https://api.github.com/users/KirinDave/gists{/gist_id}","starred_url":"https://api.github.com/users/KirinDave/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/KirinDave/subscriptions","organizations_url":"https://api.github.com/users/KirinDave/orgs","repos_url":"https://api.github.com/users/KirinDave/repos","events_url":"https://api.github.com/users/KirinDave/events{/privacy}","received_events_url":"https://api.github.com/users/KirinDave/received_events","type":"User"},"private":false,"html_url":"https://github.com/KirinDave/yaws","description":"YAWS is an erlang web server","fork":true,"url":"https://api.github.com/repos/KirinDave/yaws","forks_url":"https://api.github.com/repos/KirinDave/yaws/forks","keys_url":"https://api.github.com/repos/KirinDave/yaws/keys{/key_id}","collaborators_url":"https://api.github.com/repos/KirinDave/yaws/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/KirinDave/yaws/teams","hooks_url":"https://api.github.com/repos/KirinDave/yaws/hooks","issue_events_url":"https://api.github.com/repos/KirinDave/yaws/issues/events{/number}","events_url":"https://api.github.com/repos/KirinDave/yaws/events","assignees_url":"https://api.github.com/repos/KirinDave/yaws/assignees{/user}","branches_url":"https://api.github.com/repos/KirinDave/yaws/branches{/branch}","tags_url":"https://api.github.com/repos/KirinDave/yaws/tags","blobs_url":"https://api.github.com/repos/KirinDave/yaws/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/KirinDave/yaws/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/KirinDave/yaws/git/refs{/sha}","trees_url":"https://api.github.com/repos/KirinDave/yaws/git/trees{/sha}","statuses_url":"https://api.github.com/repos/KirinDave/yaws/statuses/{sha}","languages_url":"https://api.github.com/repos/KirinDave/yaws/languages","stargazers_url":"https://api.github.com/repos/KirinDave/yaws/stargazers","contributors_url":"https://api.github.com/repos/KirinDave/yaws/contributors","subscribers_url":"https://api.github.com/repos/KirinDave/yaws/subscribers","subscription_url":"https://api.github.com/repos/KirinDave/yaws/subscription","commits_url":"https://api.github.com/repos/KirinDave/yaws/commits{/sha}","git_commits_url":"https://api.github.com/repos/KirinDave/yaws/git/commits{/sha}","comments_url":"https://api.github.com/repos/KirinDave/yaws/comments{/number}","issue_comment_url":"https://api.github.com/repos/KirinDave/yaws/issues/comments/{number}","contents_url":"https://api.github.com/repos/KirinDave/yaws/contents/{+path}","compare_url":"https://api.github.com/repos/KirinDave/yaws/compare/{base}...{head}","merges_url":"https://api.github.com/repos/KirinDave/yaws/merges","archive_url":"https://api.github.com/repos/KirinDave/yaws/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/KirinDave/yaws/downloads","issues_url":"https://api.github.com/repos/KirinDave/yaws/issues{/number}","pulls_url":"https://api.github.com/repos/KirinDave/yaws/pulls{/number}","milestones_url":"https://api.github.com/repos/KirinDave/yaws/milestones{/number}","notifications_url":"https://api.github.com/repos/KirinDave/yaws/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/KirinDave/yaws/labels{/name}"},{"id":193,"name":"tasks","full_name":"sr/tasks","owner":{"login":"sr","id":90,"avatar_url":"https://1.gravatar.com/avatar/8e0adf6f8274375b90a180d256d73bad?d=https%3A%2F%2Fidenticons.github.com%2F8613985ec49eb8f757ae6439e879bb2a.png","gravatar_id":"8e0adf6f8274375b90a180d256d73bad","url":"https://api.github.com/users/sr","html_url":"https://github.com/sr","followers_url":"https://api.github.com/users/sr/followers","following_url":"https://api.github.com/users/sr/following{/other_user}","gists_url":"https://api.github.com/users/sr/gists{/gist_id}","starred_url":"https://api.github.com/users/sr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sr/subscriptions","organizations_url":"https://api.github.com/users/sr/orgs","repos_url":"https://api.github.com/users/sr/repos","events_url":"https://api.github.com/users/sr/events{/privacy}","received_events_url":"https://api.github.com/users/sr/received_events","type":"User"},"private":false,"html_url":"https://github.com/sr/tasks","description":"Some more or less useful rake tasks. Includes tasks to work with git-cvs, convert an Atom collection to a blog, post to an AtomPub server and more.","fork":false,"url":"https://api.github.com/repos/sr/tasks","forks_url":"https://api.github.com/repos/sr/tasks/forks","keys_url":"https://api.github.com/repos/sr/tasks/keys{/key_id}","collaborators_url":"https://api.github.com/repos/sr/tasks/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/sr/tasks/teams","hooks_url":"https://api.github.com/repos/sr/tasks/hooks","issue_events_url":"https://api.github.com/repos/sr/tasks/issues/events{/number}","events_url":"https://api.github.com/repos/sr/tasks/events","assignees_url":"https://api.github.com/repos/sr/tasks/assignees{/user}","branches_url":"https://api.github.com/repos/sr/tasks/branches{/branch}","tags_url":"https://api.github.com/repos/sr/tasks/tags","blobs_url":"https://api.github.com/repos/sr/tasks/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/sr/tasks/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/sr/tasks/git/refs{/sha}","trees_url":"https://api.github.com/repos/sr/tasks/git/trees{/sha}","statuses_url":"https://api.github.com/repos/sr/tasks/statuses/{sha}","languages_url":"https://api.github.com/repos/sr/tasks/languages","stargazers_url":"https://api.github.com/repos/sr/tasks/stargazers","contributors_url":"https://api.github.com/repos/sr/tasks/contributors","subscribers_url":"https://api.github.com/repos/sr/tasks/subscribers","subscription_url":"https://api.github.com/repos/sr/tasks/subscription","commits_url":"https://api.github.com/repos/sr/tasks/commits{/sha}","git_commits_url":"https://api.github.com/repos/sr/tasks/git/commits{/sha}","comments_url":"https://api.github.com/repos/sr/tasks/comments{/number}","issue_comment_url":"https://api.github.com/repos/sr/tasks/issues/comments/{number}","contents_url":"https://api.github.com/repos/sr/tasks/contents/{+path}","compare_url":"https://api.github.com/repos/sr/tasks/compare/{base}...{head}","merges_url":"https://api.github.com/repos/sr/tasks/merges","archive_url":"https://api.github.com/repos/sr/tasks/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/sr/tasks/downloads","issues_url":"https://api.github.com/repos/sr/tasks/issues{/number}","pulls_url":"https://api.github.com/repos/sr/tasks/pulls{/number}","milestones_url":"https://api.github.com/repos/sr/tasks/milestones{/number}","notifications_url":"https://api.github.com/repos/sr/tasks/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/sr/tasks/labels{/name}"},{"id":195,"name":"ruby-on-rails-tmbundle","full_name":"mattetti/ruby-on-rails-tmbundle","owner":{"login":"mattetti","id":113,"avatar_url":"https://1.gravatar.com/avatar/c69521d6e22fc0bbd69337ec8b1698df?d=https%3A%2F%2Fidenticons.github.com%2F73278a4a86960eeb576a8fd4c9ec6997.png","gravatar_id":"c69521d6e22fc0bbd69337ec8b1698df","url":"https://api.github.com/users/mattetti","html_url":"https://github.com/mattetti","followers_url":"https://api.github.com/users/mattetti/followers","following_url":"https://api.github.com/users/mattetti/following{/other_user}","gists_url":"https://api.github.com/users/mattetti/gists{/gist_id}","starred_url":"https://api.github.com/users/mattetti/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mattetti/subscriptions","organizations_url":"https://api.github.com/users/mattetti/orgs","repos_url":"https://api.github.com/users/mattetti/repos","events_url":"https://api.github.com/users/mattetti/events{/privacy}","received_events_url":"https://api.github.com/users/mattetti/received_events","type":"User"},"private":false,"html_url":"https://github.com/mattetti/ruby-on-rails-tmbundle","description":"Ruby on Rails TextMate bundle [master branch is svn trunk; patches to drnicwilliams@gmail.com]","fork":true,"url":"https://api.github.com/repos/mattetti/ruby-on-rails-tmbundle","forks_url":"https://api.github.com/repos/mattetti/ruby-on-rails-tmbundle/forks","keys_url":"https://api.github.com/repos/mattetti/ruby-on-rails-tmbundle/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mattetti/ruby-on-rails-tmbundle/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mattetti/ruby-on-rails-tmbundle/teams","hooks_url":"https://api.github.com/repos/mattetti/ruby-on-rails-tmbundle/hooks","issue_events_url":"https://api.github.com/repos/mattetti/ruby-on-rails-tmbundle/issues/events{/number}","events_url":"https://api.github.com/repos/mattetti/ruby-on-rails-tmbundle/events","assignees_url":"https://api.github.com/repos/mattetti/ruby-on-rails-tmbundle/assignees{/user}","branches_url":"https://api.github.com/repos/mattetti/ruby-on-rails-tmbundle/branches{/branch}","tags_url":"https://api.github.com/repos/mattetti/ruby-on-rails-tmbundle/tags","blobs_url":"https://api.github.com/repos/mattetti/ruby-on-rails-tmbundle/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mattetti/ruby-on-rails-tmbundle/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mattetti/ruby-on-rails-tmbundle/git/refs{/sha}","trees_url":"https://api.github.com/repos/mattetti/ruby-on-rails-tmbundle/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mattetti/ruby-on-rails-tmbundle/statuses/{sha}","languages_url":"https://api.github.com/repos/mattetti/ruby-on-rails-tmbundle/languages","stargazers_url":"https://api.github.com/repos/mattetti/ruby-on-rails-tmbundle/stargazers","contributors_url":"https://api.github.com/repos/mattetti/ruby-on-rails-tmbundle/contributors","subscribers_url":"https://api.github.com/repos/mattetti/ruby-on-rails-tmbundle/subscribers","subscription_url":"https://api.github.com/repos/mattetti/ruby-on-rails-tmbundle/subscription","commits_url":"https://api.github.com/repos/mattetti/ruby-on-rails-tmbundle/commits{/sha}","git_commits_url":"https://api.github.com/repos/mattetti/ruby-on-rails-tmbundle/git/commits{/sha}","comments_url":"https://api.github.com/repos/mattetti/ruby-on-rails-tmbundle/comments{/number}","issue_comment_url":"https://api.github.com/repos/mattetti/ruby-on-rails-tmbundle/issues/comments/{number}","contents_url":"https://api.github.com/repos/mattetti/ruby-on-rails-tmbundle/contents/{+path}","compare_url":"https://api.github.com/repos/mattetti/ruby-on-rails-tmbundle/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mattetti/ruby-on-rails-tmbundle/merges","archive_url":"https://api.github.com/repos/mattetti/ruby-on-rails-tmbundle/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mattetti/ruby-on-rails-tmbundle/downloads","issues_url":"https://api.github.com/repos/mattetti/ruby-on-rails-tmbundle/issues{/number}","pulls_url":"https://api.github.com/repos/mattetti/ruby-on-rails-tmbundle/pulls{/number}","milestones_url":"https://api.github.com/repos/mattetti/ruby-on-rails-tmbundle/milestones{/number}","notifications_url":"https://api.github.com/repos/mattetti/ruby-on-rails-tmbundle/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mattetti/ruby-on-rails-tmbundle/labels{/name}"},{"id":196,"name":"ruby-on-rails-tmbundle","full_name":"lawrencepit/ruby-on-rails-tmbundle","owner":{"login":"lawrencepit","id":115,"avatar_url":"https://1.gravatar.com/avatar/a31c2c26350e9e2b07fbd99fbd5ff520?d=https%3A%2F%2Fidenticons.github.com%2F2b44928ae11fb9384c4cf38708677c48.png","gravatar_id":"a31c2c26350e9e2b07fbd99fbd5ff520","url":"https://api.github.com/users/lawrencepit","html_url":"https://github.com/lawrencepit","followers_url":"https://api.github.com/users/lawrencepit/followers","following_url":"https://api.github.com/users/lawrencepit/following{/other_user}","gists_url":"https://api.github.com/users/lawrencepit/gists{/gist_id}","starred_url":"https://api.github.com/users/lawrencepit/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lawrencepit/subscriptions","organizations_url":"https://api.github.com/users/lawrencepit/orgs","repos_url":"https://api.github.com/users/lawrencepit/repos","events_url":"https://api.github.com/users/lawrencepit/events{/privacy}","received_events_url":"https://api.github.com/users/lawrencepit/received_events","type":"User"},"private":false,"html_url":"https://github.com/lawrencepit/ruby-on-rails-tmbundle","description":"Ruby on Rails TextMate bundle [master branch is svn trunk; patches to drnicwilliams@gmail.com]","fork":true,"url":"https://api.github.com/repos/lawrencepit/ruby-on-rails-tmbundle","forks_url":"https://api.github.com/repos/lawrencepit/ruby-on-rails-tmbundle/forks","keys_url":"https://api.github.com/repos/lawrencepit/ruby-on-rails-tmbundle/keys{/key_id}","collaborators_url":"https://api.github.com/repos/lawrencepit/ruby-on-rails-tmbundle/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/lawrencepit/ruby-on-rails-tmbundle/teams","hooks_url":"https://api.github.com/repos/lawrencepit/ruby-on-rails-tmbundle/hooks","issue_events_url":"https://api.github.com/repos/lawrencepit/ruby-on-rails-tmbundle/issues/events{/number}","events_url":"https://api.github.com/repos/lawrencepit/ruby-on-rails-tmbundle/events","assignees_url":"https://api.github.com/repos/lawrencepit/ruby-on-rails-tmbundle/assignees{/user}","branches_url":"https://api.github.com/repos/lawrencepit/ruby-on-rails-tmbundle/branches{/branch}","tags_url":"https://api.github.com/repos/lawrencepit/ruby-on-rails-tmbundle/tags","blobs_url":"https://api.github.com/repos/lawrencepit/ruby-on-rails-tmbundle/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/lawrencepit/ruby-on-rails-tmbundle/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/lawrencepit/ruby-on-rails-tmbundle/git/refs{/sha}","trees_url":"https://api.github.com/repos/lawrencepit/ruby-on-rails-tmbundle/git/trees{/sha}","statuses_url":"https://api.github.com/repos/lawrencepit/ruby-on-rails-tmbundle/statuses/{sha}","languages_url":"https://api.github.com/repos/lawrencepit/ruby-on-rails-tmbundle/languages","stargazers_url":"https://api.github.com/repos/lawrencepit/ruby-on-rails-tmbundle/stargazers","contributors_url":"https://api.github.com/repos/lawrencepit/ruby-on-rails-tmbundle/contributors","subscribers_url":"https://api.github.com/repos/lawrencepit/ruby-on-rails-tmbundle/subscribers","subscription_url":"https://api.github.com/repos/lawrencepit/ruby-on-rails-tmbundle/subscription","commits_url":"https://api.github.com/repos/lawrencepit/ruby-on-rails-tmbundle/commits{/sha}","git_commits_url":"https://api.github.com/repos/lawrencepit/ruby-on-rails-tmbundle/git/commits{/sha}","comments_url":"https://api.github.com/repos/lawrencepit/ruby-on-rails-tmbundle/comments{/number}","issue_comment_url":"https://api.github.com/repos/lawrencepit/ruby-on-rails-tmbundle/issues/comments/{number}","contents_url":"https://api.github.com/repos/lawrencepit/ruby-on-rails-tmbundle/contents/{+path}","compare_url":"https://api.github.com/repos/lawrencepit/ruby-on-rails-tmbundle/compare/{base}...{head}","merges_url":"https://api.github.com/repos/lawrencepit/ruby-on-rails-tmbundle/merges","archive_url":"https://api.github.com/repos/lawrencepit/ruby-on-rails-tmbundle/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/lawrencepit/ruby-on-rails-tmbundle/downloads","issues_url":"https://api.github.com/repos/lawrencepit/ruby-on-rails-tmbundle/issues{/number}","pulls_url":"https://api.github.com/repos/lawrencepit/ruby-on-rails-tmbundle/pulls{/number}","milestones_url":"https://api.github.com/repos/lawrencepit/ruby-on-rails-tmbundle/milestones{/number}","notifications_url":"https://api.github.com/repos/lawrencepit/ruby-on-rails-tmbundle/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/lawrencepit/ruby-on-rails-tmbundle/labels{/name}"},{"id":199,"name":"amazon-ec2","full_name":"grempe/amazon-ec2","owner":{"login":"grempe","id":117,"avatar_url":"https://2.gravatar.com/avatar/126e4e797131e8bf3adc528c6a4d78ec?d=https%3A%2F%2Fidenticons.github.com%2Feb160de1de89d9058fcb0b968dbbbd68.png","gravatar_id":"126e4e797131e8bf3adc528c6a4d78ec","url":"https://api.github.com/users/grempe","html_url":"https://github.com/grempe","followers_url":"https://api.github.com/users/grempe/followers","following_url":"https://api.github.com/users/grempe/following{/other_user}","gists_url":"https://api.github.com/users/grempe/gists{/gist_id}","starred_url":"https://api.github.com/users/grempe/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/grempe/subscriptions","organizations_url":"https://api.github.com/users/grempe/orgs","repos_url":"https://api.github.com/users/grempe/repos","events_url":"https://api.github.com/users/grempe/events{/privacy}","received_events_url":"https://api.github.com/users/grempe/received_events","type":"User"},"private":false,"html_url":"https://github.com/grempe/amazon-ec2","description":"A Ruby Gem that gives you full access to several of the Amazon Web Services API from your Ruby/Ruby on Rails apps","fork":false,"url":"https://api.github.com/repos/grempe/amazon-ec2","forks_url":"https://api.github.com/repos/grempe/amazon-ec2/forks","keys_url":"https://api.github.com/repos/grempe/amazon-ec2/keys{/key_id}","collaborators_url":"https://api.github.com/repos/grempe/amazon-ec2/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/grempe/amazon-ec2/teams","hooks_url":"https://api.github.com/repos/grempe/amazon-ec2/hooks","issue_events_url":"https://api.github.com/repos/grempe/amazon-ec2/issues/events{/number}","events_url":"https://api.github.com/repos/grempe/amazon-ec2/events","assignees_url":"https://api.github.com/repos/grempe/amazon-ec2/assignees{/user}","branches_url":"https://api.github.com/repos/grempe/amazon-ec2/branches{/branch}","tags_url":"https://api.github.com/repos/grempe/amazon-ec2/tags","blobs_url":"https://api.github.com/repos/grempe/amazon-ec2/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/grempe/amazon-ec2/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/grempe/amazon-ec2/git/refs{/sha}","trees_url":"https://api.github.com/repos/grempe/amazon-ec2/git/trees{/sha}","statuses_url":"https://api.github.com/repos/grempe/amazon-ec2/statuses/{sha}","languages_url":"https://api.github.com/repos/grempe/amazon-ec2/languages","stargazers_url":"https://api.github.com/repos/grempe/amazon-ec2/stargazers","contributors_url":"https://api.github.com/repos/grempe/amazon-ec2/contributors","subscribers_url":"https://api.github.com/repos/grempe/amazon-ec2/subscribers","subscription_url":"https://api.github.com/repos/grempe/amazon-ec2/subscription","commits_url":"https://api.github.com/repos/grempe/amazon-ec2/commits{/sha}","git_commits_url":"https://api.github.com/repos/grempe/amazon-ec2/git/commits{/sha}","comments_url":"https://api.github.com/repos/grempe/amazon-ec2/comments{/number}","issue_comment_url":"https://api.github.com/repos/grempe/amazon-ec2/issues/comments/{number}","contents_url":"https://api.github.com/repos/grempe/amazon-ec2/contents/{+path}","compare_url":"https://api.github.com/repos/grempe/amazon-ec2/compare/{base}...{head}","merges_url":"https://api.github.com/repos/grempe/amazon-ec2/merges","archive_url":"https://api.github.com/repos/grempe/amazon-ec2/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/grempe/amazon-ec2/downloads","issues_url":"https://api.github.com/repos/grempe/amazon-ec2/issues{/number}","pulls_url":"https://api.github.com/repos/grempe/amazon-ec2/pulls{/number}","milestones_url":"https://api.github.com/repos/grempe/amazon-ec2/milestones{/number}","notifications_url":"https://api.github.com/repos/grempe/amazon-ec2/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/grempe/amazon-ec2/labels{/name}"},{"id":203,"name":"merblogger","full_name":"wayneeseguin/merblogger","owner":{"login":"wayneeseguin","id":18,"avatar_url":"https://0.gravatar.com/avatar/b9b5ff40232c1dfd61238c2a90467f84?d=https%3A%2F%2Fidenticons.github.com%2F6f4922f45568161a8cdf4ad2299f6d23.png","gravatar_id":"b9b5ff40232c1dfd61238c2a90467f84","url":"https://api.github.com/users/wayneeseguin","html_url":"https://github.com/wayneeseguin","followers_url":"https://api.github.com/users/wayneeseguin/followers","following_url":"https://api.github.com/users/wayneeseguin/following{/other_user}","gists_url":"https://api.github.com/users/wayneeseguin/gists{/gist_id}","starred_url":"https://api.github.com/users/wayneeseguin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wayneeseguin/subscriptions","organizations_url":"https://api.github.com/users/wayneeseguin/orgs","repos_url":"https://api.github.com/users/wayneeseguin/repos","events_url":"https://api.github.com/users/wayneeseguin/events{/privacy}","received_events_url":"https://api.github.com/users/wayneeseguin/received_events","type":"User"},"private":false,"html_url":"https://github.com/wayneeseguin/merblogger","description":"A Merb Blogging & Publishing Platform using Merb, DataMapper, haml and jQuery.","fork":false,"url":"https://api.github.com/repos/wayneeseguin/merblogger","forks_url":"https://api.github.com/repos/wayneeseguin/merblogger/forks","keys_url":"https://api.github.com/repos/wayneeseguin/merblogger/keys{/key_id}","collaborators_url":"https://api.github.com/repos/wayneeseguin/merblogger/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/wayneeseguin/merblogger/teams","hooks_url":"https://api.github.com/repos/wayneeseguin/merblogger/hooks","issue_events_url":"https://api.github.com/repos/wayneeseguin/merblogger/issues/events{/number}","events_url":"https://api.github.com/repos/wayneeseguin/merblogger/events","assignees_url":"https://api.github.com/repos/wayneeseguin/merblogger/assignees{/user}","branches_url":"https://api.github.com/repos/wayneeseguin/merblogger/branches{/branch}","tags_url":"https://api.github.com/repos/wayneeseguin/merblogger/tags","blobs_url":"https://api.github.com/repos/wayneeseguin/merblogger/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/wayneeseguin/merblogger/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/wayneeseguin/merblogger/git/refs{/sha}","trees_url":"https://api.github.com/repos/wayneeseguin/merblogger/git/trees{/sha}","statuses_url":"https://api.github.com/repos/wayneeseguin/merblogger/statuses/{sha}","languages_url":"https://api.github.com/repos/wayneeseguin/merblogger/languages","stargazers_url":"https://api.github.com/repos/wayneeseguin/merblogger/stargazers","contributors_url":"https://api.github.com/repos/wayneeseguin/merblogger/contributors","subscribers_url":"https://api.github.com/repos/wayneeseguin/merblogger/subscribers","subscription_url":"https://api.github.com/repos/wayneeseguin/merblogger/subscription","commits_url":"https://api.github.com/repos/wayneeseguin/merblogger/commits{/sha}","git_commits_url":"https://api.github.com/repos/wayneeseguin/merblogger/git/commits{/sha}","comments_url":"https://api.github.com/repos/wayneeseguin/merblogger/comments{/number}","issue_comment_url":"https://api.github.com/repos/wayneeseguin/merblogger/issues/comments/{number}","contents_url":"https://api.github.com/repos/wayneeseguin/merblogger/contents/{+path}","compare_url":"https://api.github.com/repos/wayneeseguin/merblogger/compare/{base}...{head}","merges_url":"https://api.github.com/repos/wayneeseguin/merblogger/merges","archive_url":"https://api.github.com/repos/wayneeseguin/merblogger/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/wayneeseguin/merblogger/downloads","issues_url":"https://api.github.com/repos/wayneeseguin/merblogger/issues{/number}","pulls_url":"https://api.github.com/repos/wayneeseguin/merblogger/pulls{/number}","milestones_url":"https://api.github.com/repos/wayneeseguin/merblogger/milestones{/number}","notifications_url":"https://api.github.com/repos/wayneeseguin/merblogger/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/wayneeseguin/merblogger/labels{/name}"},{"id":204,"name":"merbtastic","full_name":"wayneeseguin/merbtastic","owner":{"login":"wayneeseguin","id":18,"avatar_url":"https://0.gravatar.com/avatar/b9b5ff40232c1dfd61238c2a90467f84?d=https%3A%2F%2Fidenticons.github.com%2F6f4922f45568161a8cdf4ad2299f6d23.png","gravatar_id":"b9b5ff40232c1dfd61238c2a90467f84","url":"https://api.github.com/users/wayneeseguin","html_url":"https://github.com/wayneeseguin","followers_url":"https://api.github.com/users/wayneeseguin/followers","following_url":"https://api.github.com/users/wayneeseguin/following{/other_user}","gists_url":"https://api.github.com/users/wayneeseguin/gists{/gist_id}","starred_url":"https://api.github.com/users/wayneeseguin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wayneeseguin/subscriptions","organizations_url":"https://api.github.com/users/wayneeseguin/orgs","repos_url":"https://api.github.com/users/wayneeseguin/repos","events_url":"https://api.github.com/users/wayneeseguin/events{/privacy}","received_events_url":"https://api.github.com/users/wayneeseguin/received_events","type":"User"},"private":false,"html_url":"https://github.com/wayneeseguin/merbtastic","description":"Merb + Webgen CMS system that has dynamic routing, Nginx config and static site generation with haml/sass/erb/... support.","fork":false,"url":"https://api.github.com/repos/wayneeseguin/merbtastic","forks_url":"https://api.github.com/repos/wayneeseguin/merbtastic/forks","keys_url":"https://api.github.com/repos/wayneeseguin/merbtastic/keys{/key_id}","collaborators_url":"https://api.github.com/repos/wayneeseguin/merbtastic/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/wayneeseguin/merbtastic/teams","hooks_url":"https://api.github.com/repos/wayneeseguin/merbtastic/hooks","issue_events_url":"https://api.github.com/repos/wayneeseguin/merbtastic/issues/events{/number}","events_url":"https://api.github.com/repos/wayneeseguin/merbtastic/events","assignees_url":"https://api.github.com/repos/wayneeseguin/merbtastic/assignees{/user}","branches_url":"https://api.github.com/repos/wayneeseguin/merbtastic/branches{/branch}","tags_url":"https://api.github.com/repos/wayneeseguin/merbtastic/tags","blobs_url":"https://api.github.com/repos/wayneeseguin/merbtastic/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/wayneeseguin/merbtastic/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/wayneeseguin/merbtastic/git/refs{/sha}","trees_url":"https://api.github.com/repos/wayneeseguin/merbtastic/git/trees{/sha}","statuses_url":"https://api.github.com/repos/wayneeseguin/merbtastic/statuses/{sha}","languages_url":"https://api.github.com/repos/wayneeseguin/merbtastic/languages","stargazers_url":"https://api.github.com/repos/wayneeseguin/merbtastic/stargazers","contributors_url":"https://api.github.com/repos/wayneeseguin/merbtastic/contributors","subscribers_url":"https://api.github.com/repos/wayneeseguin/merbtastic/subscribers","subscription_url":"https://api.github.com/repos/wayneeseguin/merbtastic/subscription","commits_url":"https://api.github.com/repos/wayneeseguin/merbtastic/commits{/sha}","git_commits_url":"https://api.github.com/repos/wayneeseguin/merbtastic/git/commits{/sha}","comments_url":"https://api.github.com/repos/wayneeseguin/merbtastic/comments{/number}","issue_comment_url":"https://api.github.com/repos/wayneeseguin/merbtastic/issues/comments/{number}","contents_url":"https://api.github.com/repos/wayneeseguin/merbtastic/contents/{+path}","compare_url":"https://api.github.com/repos/wayneeseguin/merbtastic/compare/{base}...{head}","merges_url":"https://api.github.com/repos/wayneeseguin/merbtastic/merges","archive_url":"https://api.github.com/repos/wayneeseguin/merbtastic/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/wayneeseguin/merbtastic/downloads","issues_url":"https://api.github.com/repos/wayneeseguin/merbtastic/issues{/number}","pulls_url":"https://api.github.com/repos/wayneeseguin/merbtastic/pulls{/number}","milestones_url":"https://api.github.com/repos/wayneeseguin/merbtastic/milestones{/number}","notifications_url":"https://api.github.com/repos/wayneeseguin/merbtastic/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/wayneeseguin/merbtastic/labels{/name}"},{"id":205,"name":"alogr","full_name":"wayneeseguin/alogr","owner":{"login":"wayneeseguin","id":18,"avatar_url":"https://0.gravatar.com/avatar/b9b5ff40232c1dfd61238c2a90467f84?d=https%3A%2F%2Fidenticons.github.com%2F6f4922f45568161a8cdf4ad2299f6d23.png","gravatar_id":"b9b5ff40232c1dfd61238c2a90467f84","url":"https://api.github.com/users/wayneeseguin","html_url":"https://github.com/wayneeseguin","followers_url":"https://api.github.com/users/wayneeseguin/followers","following_url":"https://api.github.com/users/wayneeseguin/following{/other_user}","gists_url":"https://api.github.com/users/wayneeseguin/gists{/gist_id}","starred_url":"https://api.github.com/users/wayneeseguin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wayneeseguin/subscriptions","organizations_url":"https://api.github.com/users/wayneeseguin/orgs","repos_url":"https://api.github.com/users/wayneeseguin/repos","events_url":"https://api.github.com/users/wayneeseguin/events{/privacy}","received_events_url":"https://api.github.com/users/wayneeseguin/received_events","type":"User"},"private":false,"html_url":"https://github.com/wayneeseguin/alogr","description":"AlogR is a threadsafe non-blocking asynchronous configurable logger for Ruby.","fork":false,"url":"https://api.github.com/repos/wayneeseguin/alogr","forks_url":"https://api.github.com/repos/wayneeseguin/alogr/forks","keys_url":"https://api.github.com/repos/wayneeseguin/alogr/keys{/key_id}","collaborators_url":"https://api.github.com/repos/wayneeseguin/alogr/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/wayneeseguin/alogr/teams","hooks_url":"https://api.github.com/repos/wayneeseguin/alogr/hooks","issue_events_url":"https://api.github.com/repos/wayneeseguin/alogr/issues/events{/number}","events_url":"https://api.github.com/repos/wayneeseguin/alogr/events","assignees_url":"https://api.github.com/repos/wayneeseguin/alogr/assignees{/user}","branches_url":"https://api.github.com/repos/wayneeseguin/alogr/branches{/branch}","tags_url":"https://api.github.com/repos/wayneeseguin/alogr/tags","blobs_url":"https://api.github.com/repos/wayneeseguin/alogr/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/wayneeseguin/alogr/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/wayneeseguin/alogr/git/refs{/sha}","trees_url":"https://api.github.com/repos/wayneeseguin/alogr/git/trees{/sha}","statuses_url":"https://api.github.com/repos/wayneeseguin/alogr/statuses/{sha}","languages_url":"https://api.github.com/repos/wayneeseguin/alogr/languages","stargazers_url":"https://api.github.com/repos/wayneeseguin/alogr/stargazers","contributors_url":"https://api.github.com/repos/wayneeseguin/alogr/contributors","subscribers_url":"https://api.github.com/repos/wayneeseguin/alogr/subscribers","subscription_url":"https://api.github.com/repos/wayneeseguin/alogr/subscription","commits_url":"https://api.github.com/repos/wayneeseguin/alogr/commits{/sha}","git_commits_url":"https://api.github.com/repos/wayneeseguin/alogr/git/commits{/sha}","comments_url":"https://api.github.com/repos/wayneeseguin/alogr/comments{/number}","issue_comment_url":"https://api.github.com/repos/wayneeseguin/alogr/issues/comments/{number}","contents_url":"https://api.github.com/repos/wayneeseguin/alogr/contents/{+path}","compare_url":"https://api.github.com/repos/wayneeseguin/alogr/compare/{base}...{head}","merges_url":"https://api.github.com/repos/wayneeseguin/alogr/merges","archive_url":"https://api.github.com/repos/wayneeseguin/alogr/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/wayneeseguin/alogr/downloads","issues_url":"https://api.github.com/repos/wayneeseguin/alogr/issues{/number}","pulls_url":"https://api.github.com/repos/wayneeseguin/alogr/pulls{/number}","milestones_url":"https://api.github.com/repos/wayneeseguin/alogr/milestones{/number}","notifications_url":"https://api.github.com/repos/wayneeseguin/alogr/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/wayneeseguin/alogr/labels{/name}"},{"id":206,"name":"autozest","full_name":"wayneeseguin/autozest","owner":{"login":"wayneeseguin","id":18,"avatar_url":"https://0.gravatar.com/avatar/b9b5ff40232c1dfd61238c2a90467f84?d=https%3A%2F%2Fidenticons.github.com%2F6f4922f45568161a8cdf4ad2299f6d23.png","gravatar_id":"b9b5ff40232c1dfd61238c2a90467f84","url":"https://api.github.com/users/wayneeseguin","html_url":"https://github.com/wayneeseguin","followers_url":"https://api.github.com/users/wayneeseguin/followers","following_url":"https://api.github.com/users/wayneeseguin/following{/other_user}","gists_url":"https://api.github.com/users/wayneeseguin/gists{/gist_id}","starred_url":"https://api.github.com/users/wayneeseguin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wayneeseguin/subscriptions","organizations_url":"https://api.github.com/users/wayneeseguin/orgs","repos_url":"https://api.github.com/users/wayneeseguin/repos","events_url":"https://api.github.com/users/wayneeseguin/events{/privacy}","received_events_url":"https://api.github.com/users/wayneeseguin/received_events","type":"User"},"private":false,"html_url":"https://github.com/wayneeseguin/autozest","description":"AutoZest is an autotest addon that: * automated growl installation * generation of .autotest with growl & autozest config * generation of .autozest.yml config file * autozest.sqlite3 database file for pulling random messages based on severity","fork":false,"url":"https://api.github.com/repos/wayneeseguin/autozest","forks_url":"https://api.github.com/repos/wayneeseguin/autozest/forks","keys_url":"https://api.github.com/repos/wayneeseguin/autozest/keys{/key_id}","collaborators_url":"https://api.github.com/repos/wayneeseguin/autozest/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/wayneeseguin/autozest/teams","hooks_url":"https://api.github.com/repos/wayneeseguin/autozest/hooks","issue_events_url":"https://api.github.com/repos/wayneeseguin/autozest/issues/events{/number}","events_url":"https://api.github.com/repos/wayneeseguin/autozest/events","assignees_url":"https://api.github.com/repos/wayneeseguin/autozest/assignees{/user}","branches_url":"https://api.github.com/repos/wayneeseguin/autozest/branches{/branch}","tags_url":"https://api.github.com/repos/wayneeseguin/autozest/tags","blobs_url":"https://api.github.com/repos/wayneeseguin/autozest/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/wayneeseguin/autozest/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/wayneeseguin/autozest/git/refs{/sha}","trees_url":"https://api.github.com/repos/wayneeseguin/autozest/git/trees{/sha}","statuses_url":"https://api.github.com/repos/wayneeseguin/autozest/statuses/{sha}","languages_url":"https://api.github.com/repos/wayneeseguin/autozest/languages","stargazers_url":"https://api.github.com/repos/wayneeseguin/autozest/stargazers","contributors_url":"https://api.github.com/repos/wayneeseguin/autozest/contributors","subscribers_url":"https://api.github.com/repos/wayneeseguin/autozest/subscribers","subscription_url":"https://api.github.com/repos/wayneeseguin/autozest/subscription","commits_url":"https://api.github.com/repos/wayneeseguin/autozest/commits{/sha}","git_commits_url":"https://api.github.com/repos/wayneeseguin/autozest/git/commits{/sha}","comments_url":"https://api.github.com/repos/wayneeseguin/autozest/comments{/number}","issue_comment_url":"https://api.github.com/repos/wayneeseguin/autozest/issues/comments/{number}","contents_url":"https://api.github.com/repos/wayneeseguin/autozest/contents/{+path}","compare_url":"https://api.github.com/repos/wayneeseguin/autozest/compare/{base}...{head}","merges_url":"https://api.github.com/repos/wayneeseguin/autozest/merges","archive_url":"https://api.github.com/repos/wayneeseguin/autozest/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/wayneeseguin/autozest/downloads","issues_url":"https://api.github.com/repos/wayneeseguin/autozest/issues{/number}","pulls_url":"https://api.github.com/repos/wayneeseguin/autozest/pulls{/number}","milestones_url":"https://api.github.com/repos/wayneeseguin/autozest/milestones{/number}","notifications_url":"https://api.github.com/repos/wayneeseguin/autozest/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/wayneeseguin/autozest/labels{/name}"},{"id":207,"name":"rnginx","full_name":"wayneeseguin/rnginx","owner":{"login":"wayneeseguin","id":18,"avatar_url":"https://0.gravatar.com/avatar/b9b5ff40232c1dfd61238c2a90467f84?d=https%3A%2F%2Fidenticons.github.com%2F6f4922f45568161a8cdf4ad2299f6d23.png","gravatar_id":"b9b5ff40232c1dfd61238c2a90467f84","url":"https://api.github.com/users/wayneeseguin","html_url":"https://github.com/wayneeseguin","followers_url":"https://api.github.com/users/wayneeseguin/followers","following_url":"https://api.github.com/users/wayneeseguin/following{/other_user}","gists_url":"https://api.github.com/users/wayneeseguin/gists{/gist_id}","starred_url":"https://api.github.com/users/wayneeseguin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wayneeseguin/subscriptions","organizations_url":"https://api.github.com/users/wayneeseguin/orgs","repos_url":"https://api.github.com/users/wayneeseguin/repos","events_url":"https://api.github.com/users/wayneeseguin/events{/privacy}","received_events_url":"https://api.github.com/users/wayneeseguin/received_events","type":"User"},"private":false,"html_url":"https://github.com/wayneeseguin/rnginx","description":"Command line utility and library for working with Nginx configuration scripts.","fork":false,"url":"https://api.github.com/repos/wayneeseguin/rnginx","forks_url":"https://api.github.com/repos/wayneeseguin/rnginx/forks","keys_url":"https://api.github.com/repos/wayneeseguin/rnginx/keys{/key_id}","collaborators_url":"https://api.github.com/repos/wayneeseguin/rnginx/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/wayneeseguin/rnginx/teams","hooks_url":"https://api.github.com/repos/wayneeseguin/rnginx/hooks","issue_events_url":"https://api.github.com/repos/wayneeseguin/rnginx/issues/events{/number}","events_url":"https://api.github.com/repos/wayneeseguin/rnginx/events","assignees_url":"https://api.github.com/repos/wayneeseguin/rnginx/assignees{/user}","branches_url":"https://api.github.com/repos/wayneeseguin/rnginx/branches{/branch}","tags_url":"https://api.github.com/repos/wayneeseguin/rnginx/tags","blobs_url":"https://api.github.com/repos/wayneeseguin/rnginx/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/wayneeseguin/rnginx/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/wayneeseguin/rnginx/git/refs{/sha}","trees_url":"https://api.github.com/repos/wayneeseguin/rnginx/git/trees{/sha}","statuses_url":"https://api.github.com/repos/wayneeseguin/rnginx/statuses/{sha}","languages_url":"https://api.github.com/repos/wayneeseguin/rnginx/languages","stargazers_url":"https://api.github.com/repos/wayneeseguin/rnginx/stargazers","contributors_url":"https://api.github.com/repos/wayneeseguin/rnginx/contributors","subscribers_url":"https://api.github.com/repos/wayneeseguin/rnginx/subscribers","subscription_url":"https://api.github.com/repos/wayneeseguin/rnginx/subscription","commits_url":"https://api.github.com/repos/wayneeseguin/rnginx/commits{/sha}","git_commits_url":"https://api.github.com/repos/wayneeseguin/rnginx/git/commits{/sha}","comments_url":"https://api.github.com/repos/wayneeseguin/rnginx/comments{/number}","issue_comment_url":"https://api.github.com/repos/wayneeseguin/rnginx/issues/comments/{number}","contents_url":"https://api.github.com/repos/wayneeseguin/rnginx/contents/{+path}","compare_url":"https://api.github.com/repos/wayneeseguin/rnginx/compare/{base}...{head}","merges_url":"https://api.github.com/repos/wayneeseguin/rnginx/merges","archive_url":"https://api.github.com/repos/wayneeseguin/rnginx/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/wayneeseguin/rnginx/downloads","issues_url":"https://api.github.com/repos/wayneeseguin/rnginx/issues{/number}","pulls_url":"https://api.github.com/repos/wayneeseguin/rnginx/pulls{/number}","milestones_url":"https://api.github.com/repos/wayneeseguin/rnginx/milestones{/number}","notifications_url":"https://api.github.com/repos/wayneeseguin/rnginx/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/wayneeseguin/rnginx/labels{/name}"},{"id":208,"name":"sequel","full_name":"wayneeseguin/sequel","owner":{"login":"wayneeseguin","id":18,"avatar_url":"https://0.gravatar.com/avatar/b9b5ff40232c1dfd61238c2a90467f84?d=https%3A%2F%2Fidenticons.github.com%2F6f4922f45568161a8cdf4ad2299f6d23.png","gravatar_id":"b9b5ff40232c1dfd61238c2a90467f84","url":"https://api.github.com/users/wayneeseguin","html_url":"https://github.com/wayneeseguin","followers_url":"https://api.github.com/users/wayneeseguin/followers","following_url":"https://api.github.com/users/wayneeseguin/following{/other_user}","gists_url":"https://api.github.com/users/wayneeseguin/gists{/gist_id}","starred_url":"https://api.github.com/users/wayneeseguin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wayneeseguin/subscriptions","organizations_url":"https://api.github.com/users/wayneeseguin/orgs","repos_url":"https://api.github.com/users/wayneeseguin/repos","events_url":"https://api.github.com/users/wayneeseguin/events{/privacy}","received_events_url":"https://api.github.com/users/wayneeseguin/received_events","type":"User"},"private":false,"html_url":"https://github.com/wayneeseguin/sequel","description":"Sequel ORM","fork":false,"url":"https://api.github.com/repos/wayneeseguin/sequel","forks_url":"https://api.github.com/repos/wayneeseguin/sequel/forks","keys_url":"https://api.github.com/repos/wayneeseguin/sequel/keys{/key_id}","collaborators_url":"https://api.github.com/repos/wayneeseguin/sequel/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/wayneeseguin/sequel/teams","hooks_url":"https://api.github.com/repos/wayneeseguin/sequel/hooks","issue_events_url":"https://api.github.com/repos/wayneeseguin/sequel/issues/events{/number}","events_url":"https://api.github.com/repos/wayneeseguin/sequel/events","assignees_url":"https://api.github.com/repos/wayneeseguin/sequel/assignees{/user}","branches_url":"https://api.github.com/repos/wayneeseguin/sequel/branches{/branch}","tags_url":"https://api.github.com/repos/wayneeseguin/sequel/tags","blobs_url":"https://api.github.com/repos/wayneeseguin/sequel/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/wayneeseguin/sequel/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/wayneeseguin/sequel/git/refs{/sha}","trees_url":"https://api.github.com/repos/wayneeseguin/sequel/git/trees{/sha}","statuses_url":"https://api.github.com/repos/wayneeseguin/sequel/statuses/{sha}","languages_url":"https://api.github.com/repos/wayneeseguin/sequel/languages","stargazers_url":"https://api.github.com/repos/wayneeseguin/sequel/stargazers","contributors_url":"https://api.github.com/repos/wayneeseguin/sequel/contributors","subscribers_url":"https://api.github.com/repos/wayneeseguin/sequel/subscribers","subscription_url":"https://api.github.com/repos/wayneeseguin/sequel/subscription","commits_url":"https://api.github.com/repos/wayneeseguin/sequel/commits{/sha}","git_commits_url":"https://api.github.com/repos/wayneeseguin/sequel/git/commits{/sha}","comments_url":"https://api.github.com/repos/wayneeseguin/sequel/comments{/number}","issue_comment_url":"https://api.github.com/repos/wayneeseguin/sequel/issues/comments/{number}","contents_url":"https://api.github.com/repos/wayneeseguin/sequel/contents/{+path}","compare_url":"https://api.github.com/repos/wayneeseguin/sequel/compare/{base}...{head}","merges_url":"https://api.github.com/repos/wayneeseguin/sequel/merges","archive_url":"https://api.github.com/repos/wayneeseguin/sequel/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/wayneeseguin/sequel/downloads","issues_url":"https://api.github.com/repos/wayneeseguin/sequel/issues{/number}","pulls_url":"https://api.github.com/repos/wayneeseguin/sequel/pulls{/number}","milestones_url":"https://api.github.com/repos/wayneeseguin/sequel/milestones{/number}","notifications_url":"https://api.github.com/repos/wayneeseguin/sequel/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/wayneeseguin/sequel/labels{/name}"},{"id":211,"name":"simply_versioned","full_name":"bmizerany/simply_versioned","owner":{"login":"bmizerany","id":46,"avatar_url":"https://2.gravatar.com/avatar/1a250566b475961b9b36abf359950c76?d=https%3A%2F%2Fidenticons.github.com%2Fd9d4f495e875a2e075a1a4a6e1b9770f.png","gravatar_id":"1a250566b475961b9b36abf359950c76","url":"https://api.github.com/users/bmizerany","html_url":"https://github.com/bmizerany","followers_url":"https://api.github.com/users/bmizerany/followers","following_url":"https://api.github.com/users/bmizerany/following{/other_user}","gists_url":"https://api.github.com/users/bmizerany/gists{/gist_id}","starred_url":"https://api.github.com/users/bmizerany/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bmizerany/subscriptions","organizations_url":"https://api.github.com/users/bmizerany/orgs","repos_url":"https://api.github.com/users/bmizerany/repos","events_url":"https://api.github.com/users/bmizerany/events{/privacy}","received_events_url":"https://api.github.com/users/bmizerany/received_events","type":"User"},"private":false,"html_url":"https://github.com/bmizerany/simply_versioned","description":"A simple, non-invasive, approach to versioning ActiveRecord models","fork":true,"url":"https://api.github.com/repos/bmizerany/simply_versioned","forks_url":"https://api.github.com/repos/bmizerany/simply_versioned/forks","keys_url":"https://api.github.com/repos/bmizerany/simply_versioned/keys{/key_id}","collaborators_url":"https://api.github.com/repos/bmizerany/simply_versioned/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/bmizerany/simply_versioned/teams","hooks_url":"https://api.github.com/repos/bmizerany/simply_versioned/hooks","issue_events_url":"https://api.github.com/repos/bmizerany/simply_versioned/issues/events{/number}","events_url":"https://api.github.com/repos/bmizerany/simply_versioned/events","assignees_url":"https://api.github.com/repos/bmizerany/simply_versioned/assignees{/user}","branches_url":"https://api.github.com/repos/bmizerany/simply_versioned/branches{/branch}","tags_url":"https://api.github.com/repos/bmizerany/simply_versioned/tags","blobs_url":"https://api.github.com/repos/bmizerany/simply_versioned/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/bmizerany/simply_versioned/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/bmizerany/simply_versioned/git/refs{/sha}","trees_url":"https://api.github.com/repos/bmizerany/simply_versioned/git/trees{/sha}","statuses_url":"https://api.github.com/repos/bmizerany/simply_versioned/statuses/{sha}","languages_url":"https://api.github.com/repos/bmizerany/simply_versioned/languages","stargazers_url":"https://api.github.com/repos/bmizerany/simply_versioned/stargazers","contributors_url":"https://api.github.com/repos/bmizerany/simply_versioned/contributors","subscribers_url":"https://api.github.com/repos/bmizerany/simply_versioned/subscribers","subscription_url":"https://api.github.com/repos/bmizerany/simply_versioned/subscription","commits_url":"https://api.github.com/repos/bmizerany/simply_versioned/commits{/sha}","git_commits_url":"https://api.github.com/repos/bmizerany/simply_versioned/git/commits{/sha}","comments_url":"https://api.github.com/repos/bmizerany/simply_versioned/comments{/number}","issue_comment_url":"https://api.github.com/repos/bmizerany/simply_versioned/issues/comments/{number}","contents_url":"https://api.github.com/repos/bmizerany/simply_versioned/contents/{+path}","compare_url":"https://api.github.com/repos/bmizerany/simply_versioned/compare/{base}...{head}","merges_url":"https://api.github.com/repos/bmizerany/simply_versioned/merges","archive_url":"https://api.github.com/repos/bmizerany/simply_versioned/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/bmizerany/simply_versioned/downloads","issues_url":"https://api.github.com/repos/bmizerany/simply_versioned/issues{/number}","pulls_url":"https://api.github.com/repos/bmizerany/simply_versioned/pulls{/number}","milestones_url":"https://api.github.com/repos/bmizerany/simply_versioned/milestones{/number}","notifications_url":"https://api.github.com/repos/bmizerany/simply_versioned/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/bmizerany/simply_versioned/labels{/name}"},{"id":212,"name":"switchpipe","full_name":"peterc/switchpipe","owner":{"login":"peterc","id":118,"avatar_url":"https://1.gravatar.com/avatar/6268c7528d855f1cef5696a00d159909?d=https%3A%2F%2Fidenticons.github.com%2F5ef059938ba799aaa845e1c2e8a762bd.png","gravatar_id":"6268c7528d855f1cef5696a00d159909","url":"https://api.github.com/users/peterc","html_url":"https://github.com/peterc","followers_url":"https://api.github.com/users/peterc/followers","following_url":"https://api.github.com/users/peterc/following{/other_user}","gists_url":"https://api.github.com/users/peterc/gists{/gist_id}","starred_url":"https://api.github.com/users/peterc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/peterc/subscriptions","organizations_url":"https://api.github.com/users/peterc/orgs","repos_url":"https://api.github.com/users/peterc/repos","events_url":"https://api.github.com/users/peterc/events{/privacy}","received_events_url":"https://api.github.com/users/peterc/received_events","type":"User"},"private":false,"html_url":"https://github.com/peterc/switchpipe","description":"SwitchPipe is a backend process manager and HTTP proxy that makes (especially Ruby) web app deployment simple. NOW OBSOLETE. DO NOT USE.","fork":false,"url":"https://api.github.com/repos/peterc/switchpipe","forks_url":"https://api.github.com/repos/peterc/switchpipe/forks","keys_url":"https://api.github.com/repos/peterc/switchpipe/keys{/key_id}","collaborators_url":"https://api.github.com/repos/peterc/switchpipe/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/peterc/switchpipe/teams","hooks_url":"https://api.github.com/repos/peterc/switchpipe/hooks","issue_events_url":"https://api.github.com/repos/peterc/switchpipe/issues/events{/number}","events_url":"https://api.github.com/repos/peterc/switchpipe/events","assignees_url":"https://api.github.com/repos/peterc/switchpipe/assignees{/user}","branches_url":"https://api.github.com/repos/peterc/switchpipe/branches{/branch}","tags_url":"https://api.github.com/repos/peterc/switchpipe/tags","blobs_url":"https://api.github.com/repos/peterc/switchpipe/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/peterc/switchpipe/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/peterc/switchpipe/git/refs{/sha}","trees_url":"https://api.github.com/repos/peterc/switchpipe/git/trees{/sha}","statuses_url":"https://api.github.com/repos/peterc/switchpipe/statuses/{sha}","languages_url":"https://api.github.com/repos/peterc/switchpipe/languages","stargazers_url":"https://api.github.com/repos/peterc/switchpipe/stargazers","contributors_url":"https://api.github.com/repos/peterc/switchpipe/contributors","subscribers_url":"https://api.github.com/repos/peterc/switchpipe/subscribers","subscription_url":"https://api.github.com/repos/peterc/switchpipe/subscription","commits_url":"https://api.github.com/repos/peterc/switchpipe/commits{/sha}","git_commits_url":"https://api.github.com/repos/peterc/switchpipe/git/commits{/sha}","comments_url":"https://api.github.com/repos/peterc/switchpipe/comments{/number}","issue_comment_url":"https://api.github.com/repos/peterc/switchpipe/issues/comments/{number}","contents_url":"https://api.github.com/repos/peterc/switchpipe/contents/{+path}","compare_url":"https://api.github.com/repos/peterc/switchpipe/compare/{base}...{head}","merges_url":"https://api.github.com/repos/peterc/switchpipe/merges","archive_url":"https://api.github.com/repos/peterc/switchpipe/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/peterc/switchpipe/downloads","issues_url":"https://api.github.com/repos/peterc/switchpipe/issues{/number}","pulls_url":"https://api.github.com/repos/peterc/switchpipe/pulls{/number}","milestones_url":"https://api.github.com/repos/peterc/switchpipe/milestones{/number}","notifications_url":"https://api.github.com/repos/peterc/switchpipe/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/peterc/switchpipe/labels{/name}"},{"id":213,"name":"arc","full_name":"hornbeck/arc","owner":{"login":"hornbeck","id":49,"avatar_url":"https://2.gravatar.com/avatar/47093444301bbde90d0aef5fa5c3ac86?d=https%3A%2F%2Fidenticons.github.com%2Ff457c545a9ded88f18ecee47145a72c0.png","gravatar_id":"47093444301bbde90d0aef5fa5c3ac86","url":"https://api.github.com/users/hornbeck","html_url":"https://github.com/hornbeck","followers_url":"https://api.github.com/users/hornbeck/followers","following_url":"https://api.github.com/users/hornbeck/following{/other_user}","gists_url":"https://api.github.com/users/hornbeck/gists{/gist_id}","starred_url":"https://api.github.com/users/hornbeck/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hornbeck/subscriptions","organizations_url":"https://api.github.com/users/hornbeck/orgs","repos_url":"https://api.github.com/users/hornbeck/repos","events_url":"https://api.github.com/users/hornbeck/events{/privacy}","received_events_url":"https://api.github.com/users/hornbeck/received_events","type":"User"},"private":false,"html_url":"https://github.com/hornbeck/arc","description":"My arc repo","fork":false,"url":"https://api.github.com/repos/hornbeck/arc","forks_url":"https://api.github.com/repos/hornbeck/arc/forks","keys_url":"https://api.github.com/repos/hornbeck/arc/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hornbeck/arc/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hornbeck/arc/teams","hooks_url":"https://api.github.com/repos/hornbeck/arc/hooks","issue_events_url":"https://api.github.com/repos/hornbeck/arc/issues/events{/number}","events_url":"https://api.github.com/repos/hornbeck/arc/events","assignees_url":"https://api.github.com/repos/hornbeck/arc/assignees{/user}","branches_url":"https://api.github.com/repos/hornbeck/arc/branches{/branch}","tags_url":"https://api.github.com/repos/hornbeck/arc/tags","blobs_url":"https://api.github.com/repos/hornbeck/arc/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hornbeck/arc/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hornbeck/arc/git/refs{/sha}","trees_url":"https://api.github.com/repos/hornbeck/arc/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hornbeck/arc/statuses/{sha}","languages_url":"https://api.github.com/repos/hornbeck/arc/languages","stargazers_url":"https://api.github.com/repos/hornbeck/arc/stargazers","contributors_url":"https://api.github.com/repos/hornbeck/arc/contributors","subscribers_url":"https://api.github.com/repos/hornbeck/arc/subscribers","subscription_url":"https://api.github.com/repos/hornbeck/arc/subscription","commits_url":"https://api.github.com/repos/hornbeck/arc/commits{/sha}","git_commits_url":"https://api.github.com/repos/hornbeck/arc/git/commits{/sha}","comments_url":"https://api.github.com/repos/hornbeck/arc/comments{/number}","issue_comment_url":"https://api.github.com/repos/hornbeck/arc/issues/comments/{number}","contents_url":"https://api.github.com/repos/hornbeck/arc/contents/{+path}","compare_url":"https://api.github.com/repos/hornbeck/arc/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hornbeck/arc/merges","archive_url":"https://api.github.com/repos/hornbeck/arc/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hornbeck/arc/downloads","issues_url":"https://api.github.com/repos/hornbeck/arc/issues{/number}","pulls_url":"https://api.github.com/repos/hornbeck/arc/pulls{/number}","milestones_url":"https://api.github.com/repos/hornbeck/arc/milestones{/number}","notifications_url":"https://api.github.com/repos/hornbeck/arc/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hornbeck/arc/labels{/name}"},{"id":217,"name":"ebay4r","full_name":"up_the_irons/ebay4r","owner":{"login":"up_the_irons","id":121,"avatar_url":"https://2.gravatar.com/avatar/d9ae72d7364c7909a0a4b02cba72438a?d=https%3A%2F%2Fidenticons.github.com%2F4c56ff4ce4aaf9573aa5dff913df997a.png","gravatar_id":"d9ae72d7364c7909a0a4b02cba72438a","url":"https://api.github.com/users/up_the_irons","html_url":"https://github.com/up_the_irons","followers_url":"https://api.github.com/users/up_the_irons/followers","following_url":"https://api.github.com/users/up_the_irons/following{/other_user}","gists_url":"https://api.github.com/users/up_the_irons/gists{/gist_id}","starred_url":"https://api.github.com/users/up_the_irons/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/up_the_irons/subscriptions","organizations_url":"https://api.github.com/users/up_the_irons/orgs","repos_url":"https://api.github.com/users/up_the_irons/repos","events_url":"https://api.github.com/users/up_the_irons/events{/privacy}","received_events_url":"https://api.github.com/users/up_the_irons/received_events","type":"User"},"private":false,"html_url":"https://github.com/up_the_irons/ebay4r","description":"eBay4R is a Ruby wrapper for eBay's Web Services SOAP API","fork":false,"url":"https://api.github.com/repos/up_the_irons/ebay4r","forks_url":"https://api.github.com/repos/up_the_irons/ebay4r/forks","keys_url":"https://api.github.com/repos/up_the_irons/ebay4r/keys{/key_id}","collaborators_url":"https://api.github.com/repos/up_the_irons/ebay4r/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/up_the_irons/ebay4r/teams","hooks_url":"https://api.github.com/repos/up_the_irons/ebay4r/hooks","issue_events_url":"https://api.github.com/repos/up_the_irons/ebay4r/issues/events{/number}","events_url":"https://api.github.com/repos/up_the_irons/ebay4r/events","assignees_url":"https://api.github.com/repos/up_the_irons/ebay4r/assignees{/user}","branches_url":"https://api.github.com/repos/up_the_irons/ebay4r/branches{/branch}","tags_url":"https://api.github.com/repos/up_the_irons/ebay4r/tags","blobs_url":"https://api.github.com/repos/up_the_irons/ebay4r/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/up_the_irons/ebay4r/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/up_the_irons/ebay4r/git/refs{/sha}","trees_url":"https://api.github.com/repos/up_the_irons/ebay4r/git/trees{/sha}","statuses_url":"https://api.github.com/repos/up_the_irons/ebay4r/statuses/{sha}","languages_url":"https://api.github.com/repos/up_the_irons/ebay4r/languages","stargazers_url":"https://api.github.com/repos/up_the_irons/ebay4r/stargazers","contributors_url":"https://api.github.com/repos/up_the_irons/ebay4r/contributors","subscribers_url":"https://api.github.com/repos/up_the_irons/ebay4r/subscribers","subscription_url":"https://api.github.com/repos/up_the_irons/ebay4r/subscription","commits_url":"https://api.github.com/repos/up_the_irons/ebay4r/commits{/sha}","git_commits_url":"https://api.github.com/repos/up_the_irons/ebay4r/git/commits{/sha}","comments_url":"https://api.github.com/repos/up_the_irons/ebay4r/comments{/number}","issue_comment_url":"https://api.github.com/repos/up_the_irons/ebay4r/issues/comments/{number}","contents_url":"https://api.github.com/repos/up_the_irons/ebay4r/contents/{+path}","compare_url":"https://api.github.com/repos/up_the_irons/ebay4r/compare/{base}...{head}","merges_url":"https://api.github.com/repos/up_the_irons/ebay4r/merges","archive_url":"https://api.github.com/repos/up_the_irons/ebay4r/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/up_the_irons/ebay4r/downloads","issues_url":"https://api.github.com/repos/up_the_irons/ebay4r/issues{/number}","pulls_url":"https://api.github.com/repos/up_the_irons/ebay4r/pulls{/number}","milestones_url":"https://api.github.com/repos/up_the_irons/ebay4r/milestones{/number}","notifications_url":"https://api.github.com/repos/up_the_irons/ebay4r/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/up_the_irons/ebay4r/labels{/name}"},{"id":218,"name":"merb-plugins","full_name":"wycats/merb-plugins","owner":{"login":"wycats","id":4,"avatar_url":"https://2.gravatar.com/avatar/428167a3ec72235ba971162924492609?d=https%3A%2F%2Fidenticons.github.com%2Fa87ff679a2f3e71d9181a67b7542122c.png","gravatar_id":"428167a3ec72235ba971162924492609","url":"https://api.github.com/users/wycats","html_url":"https://github.com/wycats","followers_url":"https://api.github.com/users/wycats/followers","following_url":"https://api.github.com/users/wycats/following{/other_user}","gists_url":"https://api.github.com/users/wycats/gists{/gist_id}","starred_url":"https://api.github.com/users/wycats/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wycats/subscriptions","organizations_url":"https://api.github.com/users/wycats/orgs","repos_url":"https://api.github.com/users/wycats/repos","events_url":"https://api.github.com/users/wycats/events{/privacy}","received_events_url":"https://api.github.com/users/wycats/received_events","type":"User"},"private":false,"html_url":"https://github.com/wycats/merb-plugins","description":"Merb Plugins: Even more modules to hook up your Merb installation","fork":false,"url":"https://api.github.com/repos/wycats/merb-plugins","forks_url":"https://api.github.com/repos/wycats/merb-plugins/forks","keys_url":"https://api.github.com/repos/wycats/merb-plugins/keys{/key_id}","collaborators_url":"https://api.github.com/repos/wycats/merb-plugins/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/wycats/merb-plugins/teams","hooks_url":"https://api.github.com/repos/wycats/merb-plugins/hooks","issue_events_url":"https://api.github.com/repos/wycats/merb-plugins/issues/events{/number}","events_url":"https://api.github.com/repos/wycats/merb-plugins/events","assignees_url":"https://api.github.com/repos/wycats/merb-plugins/assignees{/user}","branches_url":"https://api.github.com/repos/wycats/merb-plugins/branches{/branch}","tags_url":"https://api.github.com/repos/wycats/merb-plugins/tags","blobs_url":"https://api.github.com/repos/wycats/merb-plugins/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/wycats/merb-plugins/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/wycats/merb-plugins/git/refs{/sha}","trees_url":"https://api.github.com/repos/wycats/merb-plugins/git/trees{/sha}","statuses_url":"https://api.github.com/repos/wycats/merb-plugins/statuses/{sha}","languages_url":"https://api.github.com/repos/wycats/merb-plugins/languages","stargazers_url":"https://api.github.com/repos/wycats/merb-plugins/stargazers","contributors_url":"https://api.github.com/repos/wycats/merb-plugins/contributors","subscribers_url":"https://api.github.com/repos/wycats/merb-plugins/subscribers","subscription_url":"https://api.github.com/repos/wycats/merb-plugins/subscription","commits_url":"https://api.github.com/repos/wycats/merb-plugins/commits{/sha}","git_commits_url":"https://api.github.com/repos/wycats/merb-plugins/git/commits{/sha}","comments_url":"https://api.github.com/repos/wycats/merb-plugins/comments{/number}","issue_comment_url":"https://api.github.com/repos/wycats/merb-plugins/issues/comments/{number}","contents_url":"https://api.github.com/repos/wycats/merb-plugins/contents/{+path}","compare_url":"https://api.github.com/repos/wycats/merb-plugins/compare/{base}...{head}","merges_url":"https://api.github.com/repos/wycats/merb-plugins/merges","archive_url":"https://api.github.com/repos/wycats/merb-plugins/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/wycats/merb-plugins/downloads","issues_url":"https://api.github.com/repos/wycats/merb-plugins/issues{/number}","pulls_url":"https://api.github.com/repos/wycats/merb-plugins/pulls{/number}","milestones_url":"https://api.github.com/repos/wycats/merb-plugins/milestones{/number}","notifications_url":"https://api.github.com/repos/wycats/merb-plugins/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/wycats/merb-plugins/labels{/name}"},{"id":220,"name":"ram","full_name":"up_the_irons/ram","owner":{"login":"up_the_irons","id":121,"avatar_url":"https://2.gravatar.com/avatar/d9ae72d7364c7909a0a4b02cba72438a?d=https%3A%2F%2Fidenticons.github.com%2F4c56ff4ce4aaf9573aa5dff913df997a.png","gravatar_id":"d9ae72d7364c7909a0a4b02cba72438a","url":"https://api.github.com/users/up_the_irons","html_url":"https://github.com/up_the_irons","followers_url":"https://api.github.com/users/up_the_irons/followers","following_url":"https://api.github.com/users/up_the_irons/following{/other_user}","gists_url":"https://api.github.com/users/up_the_irons/gists{/gist_id}","starred_url":"https://api.github.com/users/up_the_irons/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/up_the_irons/subscriptions","organizations_url":"https://api.github.com/users/up_the_irons/orgs","repos_url":"https://api.github.com/users/up_the_irons/repos","events_url":"https://api.github.com/users/up_the_irons/events{/privacy}","received_events_url":"https://api.github.com/users/up_the_irons/received_events","type":"User"},"private":false,"html_url":"https://github.com/up_the_irons/ram","description":"Ruby Asset Manager","fork":false,"url":"https://api.github.com/repos/up_the_irons/ram","forks_url":"https://api.github.com/repos/up_the_irons/ram/forks","keys_url":"https://api.github.com/repos/up_the_irons/ram/keys{/key_id}","collaborators_url":"https://api.github.com/repos/up_the_irons/ram/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/up_the_irons/ram/teams","hooks_url":"https://api.github.com/repos/up_the_irons/ram/hooks","issue_events_url":"https://api.github.com/repos/up_the_irons/ram/issues/events{/number}","events_url":"https://api.github.com/repos/up_the_irons/ram/events","assignees_url":"https://api.github.com/repos/up_the_irons/ram/assignees{/user}","branches_url":"https://api.github.com/repos/up_the_irons/ram/branches{/branch}","tags_url":"https://api.github.com/repos/up_the_irons/ram/tags","blobs_url":"https://api.github.com/repos/up_the_irons/ram/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/up_the_irons/ram/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/up_the_irons/ram/git/refs{/sha}","trees_url":"https://api.github.com/repos/up_the_irons/ram/git/trees{/sha}","statuses_url":"https://api.github.com/repos/up_the_irons/ram/statuses/{sha}","languages_url":"https://api.github.com/repos/up_the_irons/ram/languages","stargazers_url":"https://api.github.com/repos/up_the_irons/ram/stargazers","contributors_url":"https://api.github.com/repos/up_the_irons/ram/contributors","subscribers_url":"https://api.github.com/repos/up_the_irons/ram/subscribers","subscription_url":"https://api.github.com/repos/up_the_irons/ram/subscription","commits_url":"https://api.github.com/repos/up_the_irons/ram/commits{/sha}","git_commits_url":"https://api.github.com/repos/up_the_irons/ram/git/commits{/sha}","comments_url":"https://api.github.com/repos/up_the_irons/ram/comments{/number}","issue_comment_url":"https://api.github.com/repos/up_the_irons/ram/issues/comments/{number}","contents_url":"https://api.github.com/repos/up_the_irons/ram/contents/{+path}","compare_url":"https://api.github.com/repos/up_the_irons/ram/compare/{base}...{head}","merges_url":"https://api.github.com/repos/up_the_irons/ram/merges","archive_url":"https://api.github.com/repos/up_the_irons/ram/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/up_the_irons/ram/downloads","issues_url":"https://api.github.com/repos/up_the_irons/ram/issues{/number}","pulls_url":"https://api.github.com/repos/up_the_irons/ram/pulls{/number}","milestones_url":"https://api.github.com/repos/up_the_irons/ram/milestones{/number}","notifications_url":"https://api.github.com/repos/up_the_irons/ram/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/up_the_irons/ram/labels{/name}"},{"id":230,"name":"ambitious_activeldap","full_name":"defunkt/ambitious_activeldap","owner":{"login":"defunkt","id":2,"avatar_url":"https://2.gravatar.com/avatar/b8dbb1987e8e5318584865f880036796?d=https%3A%2F%2Fidenticons.github.com%2Fc81e728d9d4c2f636f067f89cc14862c.png","gravatar_id":"b8dbb1987e8e5318584865f880036796","url":"https://api.github.com/users/defunkt","html_url":"https://github.com/defunkt","followers_url":"https://api.github.com/users/defunkt/followers","following_url":"https://api.github.com/users/defunkt/following{/other_user}","gists_url":"https://api.github.com/users/defunkt/gists{/gist_id}","starred_url":"https://api.github.com/users/defunkt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/defunkt/subscriptions","organizations_url":"https://api.github.com/users/defunkt/orgs","repos_url":"https://api.github.com/users/defunkt/repos","events_url":"https://api.github.com/users/defunkt/events{/privacy}","received_events_url":"https://api.github.com/users/defunkt/received_events","type":"User"},"private":false,"html_url":"https://github.com/defunkt/ambitious_activeldap","description":"Ambition adapter for ActiveLdap","fork":true,"url":"https://api.github.com/repos/defunkt/ambitious_activeldap","forks_url":"https://api.github.com/repos/defunkt/ambitious_activeldap/forks","keys_url":"https://api.github.com/repos/defunkt/ambitious_activeldap/keys{/key_id}","collaborators_url":"https://api.github.com/repos/defunkt/ambitious_activeldap/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/defunkt/ambitious_activeldap/teams","hooks_url":"https://api.github.com/repos/defunkt/ambitious_activeldap/hooks","issue_events_url":"https://api.github.com/repos/defunkt/ambitious_activeldap/issues/events{/number}","events_url":"https://api.github.com/repos/defunkt/ambitious_activeldap/events","assignees_url":"https://api.github.com/repos/defunkt/ambitious_activeldap/assignees{/user}","branches_url":"https://api.github.com/repos/defunkt/ambitious_activeldap/branches{/branch}","tags_url":"https://api.github.com/repos/defunkt/ambitious_activeldap/tags","blobs_url":"https://api.github.com/repos/defunkt/ambitious_activeldap/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/defunkt/ambitious_activeldap/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/defunkt/ambitious_activeldap/git/refs{/sha}","trees_url":"https://api.github.com/repos/defunkt/ambitious_activeldap/git/trees{/sha}","statuses_url":"https://api.github.com/repos/defunkt/ambitious_activeldap/statuses/{sha}","languages_url":"https://api.github.com/repos/defunkt/ambitious_activeldap/languages","stargazers_url":"https://api.github.com/repos/defunkt/ambitious_activeldap/stargazers","contributors_url":"https://api.github.com/repos/defunkt/ambitious_activeldap/contributors","subscribers_url":"https://api.github.com/repos/defunkt/ambitious_activeldap/subscribers","subscription_url":"https://api.github.com/repos/defunkt/ambitious_activeldap/subscription","commits_url":"https://api.github.com/repos/defunkt/ambitious_activeldap/commits{/sha}","git_commits_url":"https://api.github.com/repos/defunkt/ambitious_activeldap/git/commits{/sha}","comments_url":"https://api.github.com/repos/defunkt/ambitious_activeldap/comments{/number}","issue_comment_url":"https://api.github.com/repos/defunkt/ambitious_activeldap/issues/comments/{number}","contents_url":"https://api.github.com/repos/defunkt/ambitious_activeldap/contents/{+path}","compare_url":"https://api.github.com/repos/defunkt/ambitious_activeldap/compare/{base}...{head}","merges_url":"https://api.github.com/repos/defunkt/ambitious_activeldap/merges","archive_url":"https://api.github.com/repos/defunkt/ambitious_activeldap/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/defunkt/ambitious_activeldap/downloads","issues_url":"https://api.github.com/repos/defunkt/ambitious_activeldap/issues{/number}","pulls_url":"https://api.github.com/repos/defunkt/ambitious_activeldap/pulls{/number}","milestones_url":"https://api.github.com/repos/defunkt/ambitious_activeldap/milestones{/number}","notifications_url":"https://api.github.com/repos/defunkt/ambitious_activeldap/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/defunkt/ambitious_activeldap/labels{/name}"},{"id":232,"name":"fitter_happier","full_name":"atmos/fitter_happier","owner":{"login":"atmos","id":38,"avatar_url":"https://0.gravatar.com/avatar/a86224d72ce21cd9f5bee6784d4b06c7?d=https%3A%2F%2Fidenticons.github.com%2Fa5771bce93e200c36f7cd9dfd0e5deaa.png","gravatar_id":"a86224d72ce21cd9f5bee6784d4b06c7","url":"https://api.github.com/users/atmos","html_url":"https://github.com/atmos","followers_url":"https://api.github.com/users/atmos/followers","following_url":"https://api.github.com/users/atmos/following{/other_user}","gists_url":"https://api.github.com/users/atmos/gists{/gist_id}","starred_url":"https://api.github.com/users/atmos/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/atmos/subscriptions","organizations_url":"https://api.github.com/users/atmos/orgs","repos_url":"https://api.github.com/users/atmos/repos","events_url":"https://api.github.com/users/atmos/events{/privacy}","received_events_url":"https://api.github.com/users/atmos/received_events","type":"User"},"private":false,"html_url":"https://github.com/atmos/fitter_happier","description":"A Rails Plugin for adding a simple health check to your application","fork":false,"url":"https://api.github.com/repos/atmos/fitter_happier","forks_url":"https://api.github.com/repos/atmos/fitter_happier/forks","keys_url":"https://api.github.com/repos/atmos/fitter_happier/keys{/key_id}","collaborators_url":"https://api.github.com/repos/atmos/fitter_happier/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/atmos/fitter_happier/teams","hooks_url":"https://api.github.com/repos/atmos/fitter_happier/hooks","issue_events_url":"https://api.github.com/repos/atmos/fitter_happier/issues/events{/number}","events_url":"https://api.github.com/repos/atmos/fitter_happier/events","assignees_url":"https://api.github.com/repos/atmos/fitter_happier/assignees{/user}","branches_url":"https://api.github.com/repos/atmos/fitter_happier/branches{/branch}","tags_url":"https://api.github.com/repos/atmos/fitter_happier/tags","blobs_url":"https://api.github.com/repos/atmos/fitter_happier/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/atmos/fitter_happier/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/atmos/fitter_happier/git/refs{/sha}","trees_url":"https://api.github.com/repos/atmos/fitter_happier/git/trees{/sha}","statuses_url":"https://api.github.com/repos/atmos/fitter_happier/statuses/{sha}","languages_url":"https://api.github.com/repos/atmos/fitter_happier/languages","stargazers_url":"https://api.github.com/repos/atmos/fitter_happier/stargazers","contributors_url":"https://api.github.com/repos/atmos/fitter_happier/contributors","subscribers_url":"https://api.github.com/repos/atmos/fitter_happier/subscribers","subscription_url":"https://api.github.com/repos/atmos/fitter_happier/subscription","commits_url":"https://api.github.com/repos/atmos/fitter_happier/commits{/sha}","git_commits_url":"https://api.github.com/repos/atmos/fitter_happier/git/commits{/sha}","comments_url":"https://api.github.com/repos/atmos/fitter_happier/comments{/number}","issue_comment_url":"https://api.github.com/repos/atmos/fitter_happier/issues/comments/{number}","contents_url":"https://api.github.com/repos/atmos/fitter_happier/contents/{+path}","compare_url":"https://api.github.com/repos/atmos/fitter_happier/compare/{base}...{head}","merges_url":"https://api.github.com/repos/atmos/fitter_happier/merges","archive_url":"https://api.github.com/repos/atmos/fitter_happier/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/atmos/fitter_happier/downloads","issues_url":"https://api.github.com/repos/atmos/fitter_happier/issues{/number}","pulls_url":"https://api.github.com/repos/atmos/fitter_happier/pulls{/number}","milestones_url":"https://api.github.com/repos/atmos/fitter_happier/milestones{/number}","notifications_url":"https://api.github.com/repos/atmos/fitter_happier/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/atmos/fitter_happier/labels{/name}"},{"id":237,"name":"oebfare","full_name":"brosner/oebfare","owner":{"login":"brosner","id":124,"avatar_url":"https://0.gravatar.com/avatar/b7472bc7aa45c70641c299e9408b78ab?d=https%3A%2F%2Fidenticons.github.com%2Fc8ffe9a587b126f152ed3d89a146b445.png","gravatar_id":"b7472bc7aa45c70641c299e9408b78ab","url":"https://api.github.com/users/brosner","html_url":"https://github.com/brosner","followers_url":"https://api.github.com/users/brosner/followers","following_url":"https://api.github.com/users/brosner/following{/other_user}","gists_url":"https://api.github.com/users/brosner/gists{/gist_id}","starred_url":"https://api.github.com/users/brosner/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/brosner/subscriptions","organizations_url":"https://api.github.com/users/brosner/orgs","repos_url":"https://api.github.com/users/brosner/repos","events_url":"https://api.github.com/users/brosner/events{/privacy}","received_events_url":"https://api.github.com/users/brosner/received_events","type":"User"},"private":false,"html_url":"https://github.com/brosner/oebfare","description":"my personal blog written with django","fork":false,"url":"https://api.github.com/repos/brosner/oebfare","forks_url":"https://api.github.com/repos/brosner/oebfare/forks","keys_url":"https://api.github.com/repos/brosner/oebfare/keys{/key_id}","collaborators_url":"https://api.github.com/repos/brosner/oebfare/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/brosner/oebfare/teams","hooks_url":"https://api.github.com/repos/brosner/oebfare/hooks","issue_events_url":"https://api.github.com/repos/brosner/oebfare/issues/events{/number}","events_url":"https://api.github.com/repos/brosner/oebfare/events","assignees_url":"https://api.github.com/repos/brosner/oebfare/assignees{/user}","branches_url":"https://api.github.com/repos/brosner/oebfare/branches{/branch}","tags_url":"https://api.github.com/repos/brosner/oebfare/tags","blobs_url":"https://api.github.com/repos/brosner/oebfare/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/brosner/oebfare/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/brosner/oebfare/git/refs{/sha}","trees_url":"https://api.github.com/repos/brosner/oebfare/git/trees{/sha}","statuses_url":"https://api.github.com/repos/brosner/oebfare/statuses/{sha}","languages_url":"https://api.github.com/repos/brosner/oebfare/languages","stargazers_url":"https://api.github.com/repos/brosner/oebfare/stargazers","contributors_url":"https://api.github.com/repos/brosner/oebfare/contributors","subscribers_url":"https://api.github.com/repos/brosner/oebfare/subscribers","subscription_url":"https://api.github.com/repos/brosner/oebfare/subscription","commits_url":"https://api.github.com/repos/brosner/oebfare/commits{/sha}","git_commits_url":"https://api.github.com/repos/brosner/oebfare/git/commits{/sha}","comments_url":"https://api.github.com/repos/brosner/oebfare/comments{/number}","issue_comment_url":"https://api.github.com/repos/brosner/oebfare/issues/comments/{number}","contents_url":"https://api.github.com/repos/brosner/oebfare/contents/{+path}","compare_url":"https://api.github.com/repos/brosner/oebfare/compare/{base}...{head}","merges_url":"https://api.github.com/repos/brosner/oebfare/merges","archive_url":"https://api.github.com/repos/brosner/oebfare/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/brosner/oebfare/downloads","issues_url":"https://api.github.com/repos/brosner/oebfare/issues{/number}","pulls_url":"https://api.github.com/repos/brosner/oebfare/pulls{/number}","milestones_url":"https://api.github.com/repos/brosner/oebfare/milestones{/number}","notifications_url":"https://api.github.com/repos/brosner/oebfare/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/brosner/oebfare/labels{/name}"},{"id":245,"name":"credit_card_tools","full_name":"up_the_irons/credit_card_tools","owner":{"login":"up_the_irons","id":121,"avatar_url":"https://2.gravatar.com/avatar/d9ae72d7364c7909a0a4b02cba72438a?d=https%3A%2F%2Fidenticons.github.com%2F4c56ff4ce4aaf9573aa5dff913df997a.png","gravatar_id":"d9ae72d7364c7909a0a4b02cba72438a","url":"https://api.github.com/users/up_the_irons","html_url":"https://github.com/up_the_irons","followers_url":"https://api.github.com/users/up_the_irons/followers","following_url":"https://api.github.com/users/up_the_irons/following{/other_user}","gists_url":"https://api.github.com/users/up_the_irons/gists{/gist_id}","starred_url":"https://api.github.com/users/up_the_irons/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/up_the_irons/subscriptions","organizations_url":"https://api.github.com/users/up_the_irons/orgs","repos_url":"https://api.github.com/users/up_the_irons/repos","events_url":"https://api.github.com/users/up_the_irons/events{/privacy}","received_events_url":"https://api.github.com/users/up_the_irons/received_events","type":"User"},"private":false,"html_url":"https://github.com/up_the_irons/credit_card_tools","description":"Tools for processing credit cards on the command line","fork":false,"url":"https://api.github.com/repos/up_the_irons/credit_card_tools","forks_url":"https://api.github.com/repos/up_the_irons/credit_card_tools/forks","keys_url":"https://api.github.com/repos/up_the_irons/credit_card_tools/keys{/key_id}","collaborators_url":"https://api.github.com/repos/up_the_irons/credit_card_tools/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/up_the_irons/credit_card_tools/teams","hooks_url":"https://api.github.com/repos/up_the_irons/credit_card_tools/hooks","issue_events_url":"https://api.github.com/repos/up_the_irons/credit_card_tools/issues/events{/number}","events_url":"https://api.github.com/repos/up_the_irons/credit_card_tools/events","assignees_url":"https://api.github.com/repos/up_the_irons/credit_card_tools/assignees{/user}","branches_url":"https://api.github.com/repos/up_the_irons/credit_card_tools/branches{/branch}","tags_url":"https://api.github.com/repos/up_the_irons/credit_card_tools/tags","blobs_url":"https://api.github.com/repos/up_the_irons/credit_card_tools/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/up_the_irons/credit_card_tools/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/up_the_irons/credit_card_tools/git/refs{/sha}","trees_url":"https://api.github.com/repos/up_the_irons/credit_card_tools/git/trees{/sha}","statuses_url":"https://api.github.com/repos/up_the_irons/credit_card_tools/statuses/{sha}","languages_url":"https://api.github.com/repos/up_the_irons/credit_card_tools/languages","stargazers_url":"https://api.github.com/repos/up_the_irons/credit_card_tools/stargazers","contributors_url":"https://api.github.com/repos/up_the_irons/credit_card_tools/contributors","subscribers_url":"https://api.github.com/repos/up_the_irons/credit_card_tools/subscribers","subscription_url":"https://api.github.com/repos/up_the_irons/credit_card_tools/subscription","commits_url":"https://api.github.com/repos/up_the_irons/credit_card_tools/commits{/sha}","git_commits_url":"https://api.github.com/repos/up_the_irons/credit_card_tools/git/commits{/sha}","comments_url":"https://api.github.com/repos/up_the_irons/credit_card_tools/comments{/number}","issue_comment_url":"https://api.github.com/repos/up_the_irons/credit_card_tools/issues/comments/{number}","contents_url":"https://api.github.com/repos/up_the_irons/credit_card_tools/contents/{+path}","compare_url":"https://api.github.com/repos/up_the_irons/credit_card_tools/compare/{base}...{head}","merges_url":"https://api.github.com/repos/up_the_irons/credit_card_tools/merges","archive_url":"https://api.github.com/repos/up_the_irons/credit_card_tools/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/up_the_irons/credit_card_tools/downloads","issues_url":"https://api.github.com/repos/up_the_irons/credit_card_tools/issues{/number}","pulls_url":"https://api.github.com/repos/up_the_irons/credit_card_tools/pulls{/number}","milestones_url":"https://api.github.com/repos/up_the_irons/credit_card_tools/milestones{/number}","notifications_url":"https://api.github.com/repos/up_the_irons/credit_card_tools/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/up_the_irons/credit_card_tools/labels{/name}"},{"id":248,"name":"rorem","full_name":"jnicklas/rorem","owner":{"login":"jnicklas","id":134,"avatar_url":"https://0.gravatar.com/avatar/6c469749d725177dd2837d806c769cd4?d=https%3A%2F%2Fidenticons.github.com%2F02522a2b2726fb0a03bb19f2d8d9524d.png","gravatar_id":"6c469749d725177dd2837d806c769cd4","url":"https://api.github.com/users/jnicklas","html_url":"https://github.com/jnicklas","followers_url":"https://api.github.com/users/jnicklas/followers","following_url":"https://api.github.com/users/jnicklas/following{/other_user}","gists_url":"https://api.github.com/users/jnicklas/gists{/gist_id}","starred_url":"https://api.github.com/users/jnicklas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jnicklas/subscriptions","organizations_url":"https://api.github.com/users/jnicklas/orgs","repos_url":"https://api.github.com/users/jnicklas/repos","events_url":"https://api.github.com/users/jnicklas/events{/privacy}","received_events_url":"https://api.github.com/users/jnicklas/received_events","type":"User"},"private":false,"html_url":"https://github.com/jnicklas/rorem","description":"Rorem is a random data generator","fork":false,"url":"https://api.github.com/repos/jnicklas/rorem","forks_url":"https://api.github.com/repos/jnicklas/rorem/forks","keys_url":"https://api.github.com/repos/jnicklas/rorem/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jnicklas/rorem/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jnicklas/rorem/teams","hooks_url":"https://api.github.com/repos/jnicklas/rorem/hooks","issue_events_url":"https://api.github.com/repos/jnicklas/rorem/issues/events{/number}","events_url":"https://api.github.com/repos/jnicklas/rorem/events","assignees_url":"https://api.github.com/repos/jnicklas/rorem/assignees{/user}","branches_url":"https://api.github.com/repos/jnicklas/rorem/branches{/branch}","tags_url":"https://api.github.com/repos/jnicklas/rorem/tags","blobs_url":"https://api.github.com/repos/jnicklas/rorem/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jnicklas/rorem/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jnicklas/rorem/git/refs{/sha}","trees_url":"https://api.github.com/repos/jnicklas/rorem/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jnicklas/rorem/statuses/{sha}","languages_url":"https://api.github.com/repos/jnicklas/rorem/languages","stargazers_url":"https://api.github.com/repos/jnicklas/rorem/stargazers","contributors_url":"https://api.github.com/repos/jnicklas/rorem/contributors","subscribers_url":"https://api.github.com/repos/jnicklas/rorem/subscribers","subscription_url":"https://api.github.com/repos/jnicklas/rorem/subscription","commits_url":"https://api.github.com/repos/jnicklas/rorem/commits{/sha}","git_commits_url":"https://api.github.com/repos/jnicklas/rorem/git/commits{/sha}","comments_url":"https://api.github.com/repos/jnicklas/rorem/comments{/number}","issue_comment_url":"https://api.github.com/repos/jnicklas/rorem/issues/comments/{number}","contents_url":"https://api.github.com/repos/jnicklas/rorem/contents/{+path}","compare_url":"https://api.github.com/repos/jnicklas/rorem/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jnicklas/rorem/merges","archive_url":"https://api.github.com/repos/jnicklas/rorem/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jnicklas/rorem/downloads","issues_url":"https://api.github.com/repos/jnicklas/rorem/issues{/number}","pulls_url":"https://api.github.com/repos/jnicklas/rorem/pulls{/number}","milestones_url":"https://api.github.com/repos/jnicklas/rorem/milestones{/number}","notifications_url":"https://api.github.com/repos/jnicklas/rorem/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jnicklas/rorem/labels{/name}"},{"id":249,"name":"braid","full_name":"evilchelu/braid","owner":{"login":"evilchelu","id":122,"avatar_url":"https://1.gravatar.com/avatar/0e8c5f8d88cfc1aeeb59acdcc8aad387?d=https%3A%2F%2Fidenticons.github.com%2Fa0a080f42e6f13b3a2df133f073095dd.png","gravatar_id":"0e8c5f8d88cfc1aeeb59acdcc8aad387","url":"https://api.github.com/users/evilchelu","html_url":"https://github.com/evilchelu","followers_url":"https://api.github.com/users/evilchelu/followers","following_url":"https://api.github.com/users/evilchelu/following{/other_user}","gists_url":"https://api.github.com/users/evilchelu/gists{/gist_id}","starred_url":"https://api.github.com/users/evilchelu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/evilchelu/subscriptions","organizations_url":"https://api.github.com/users/evilchelu/orgs","repos_url":"https://api.github.com/users/evilchelu/repos","events_url":"https://api.github.com/users/evilchelu/events{/privacy}","received_events_url":"https://api.github.com/users/evilchelu/received_events","type":"User"},"private":false,"html_url":"https://github.com/evilchelu/braid","description":"Simple tool to help track git and svn vendor branches in a git repository","fork":false,"url":"https://api.github.com/repos/evilchelu/braid","forks_url":"https://api.github.com/repos/evilchelu/braid/forks","keys_url":"https://api.github.com/repos/evilchelu/braid/keys{/key_id}","collaborators_url":"https://api.github.com/repos/evilchelu/braid/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/evilchelu/braid/teams","hooks_url":"https://api.github.com/repos/evilchelu/braid/hooks","issue_events_url":"https://api.github.com/repos/evilchelu/braid/issues/events{/number}","events_url":"https://api.github.com/repos/evilchelu/braid/events","assignees_url":"https://api.github.com/repos/evilchelu/braid/assignees{/user}","branches_url":"https://api.github.com/repos/evilchelu/braid/branches{/branch}","tags_url":"https://api.github.com/repos/evilchelu/braid/tags","blobs_url":"https://api.github.com/repos/evilchelu/braid/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/evilchelu/braid/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/evilchelu/braid/git/refs{/sha}","trees_url":"https://api.github.com/repos/evilchelu/braid/git/trees{/sha}","statuses_url":"https://api.github.com/repos/evilchelu/braid/statuses/{sha}","languages_url":"https://api.github.com/repos/evilchelu/braid/languages","stargazers_url":"https://api.github.com/repos/evilchelu/braid/stargazers","contributors_url":"https://api.github.com/repos/evilchelu/braid/contributors","subscribers_url":"https://api.github.com/repos/evilchelu/braid/subscribers","subscription_url":"https://api.github.com/repos/evilchelu/braid/subscription","commits_url":"https://api.github.com/repos/evilchelu/braid/commits{/sha}","git_commits_url":"https://api.github.com/repos/evilchelu/braid/git/commits{/sha}","comments_url":"https://api.github.com/repos/evilchelu/braid/comments{/number}","issue_comment_url":"https://api.github.com/repos/evilchelu/braid/issues/comments/{number}","contents_url":"https://api.github.com/repos/evilchelu/braid/contents/{+path}","compare_url":"https://api.github.com/repos/evilchelu/braid/compare/{base}...{head}","merges_url":"https://api.github.com/repos/evilchelu/braid/merges","archive_url":"https://api.github.com/repos/evilchelu/braid/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/evilchelu/braid/downloads","issues_url":"https://api.github.com/repos/evilchelu/braid/issues{/number}","pulls_url":"https://api.github.com/repos/evilchelu/braid/pulls{/number}","milestones_url":"https://api.github.com/repos/evilchelu/braid/milestones{/number}","notifications_url":"https://api.github.com/repos/evilchelu/braid/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/evilchelu/braid/labels{/name}"},{"id":251,"name":"uploadcolumn","full_name":"jnicklas/uploadcolumn","owner":{"login":"jnicklas","id":134,"avatar_url":"https://0.gravatar.com/avatar/6c469749d725177dd2837d806c769cd4?d=https%3A%2F%2Fidenticons.github.com%2F02522a2b2726fb0a03bb19f2d8d9524d.png","gravatar_id":"6c469749d725177dd2837d806c769cd4","url":"https://api.github.com/users/jnicklas","html_url":"https://github.com/jnicklas","followers_url":"https://api.github.com/users/jnicklas/followers","following_url":"https://api.github.com/users/jnicklas/following{/other_user}","gists_url":"https://api.github.com/users/jnicklas/gists{/gist_id}","starred_url":"https://api.github.com/users/jnicklas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jnicklas/subscriptions","organizations_url":"https://api.github.com/users/jnicklas/orgs","repos_url":"https://api.github.com/users/jnicklas/repos","events_url":"https://api.github.com/users/jnicklas/events{/privacy}","received_events_url":"https://api.github.com/users/jnicklas/received_events","type":"User"},"private":false,"html_url":"https://github.com/jnicklas/uploadcolumn","description":"UploadColumn is no longer maintained, check out CarrierWave for an alternative","fork":false,"url":"https://api.github.com/repos/jnicklas/uploadcolumn","forks_url":"https://api.github.com/repos/jnicklas/uploadcolumn/forks","keys_url":"https://api.github.com/repos/jnicklas/uploadcolumn/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jnicklas/uploadcolumn/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jnicklas/uploadcolumn/teams","hooks_url":"https://api.github.com/repos/jnicklas/uploadcolumn/hooks","issue_events_url":"https://api.github.com/repos/jnicklas/uploadcolumn/issues/events{/number}","events_url":"https://api.github.com/repos/jnicklas/uploadcolumn/events","assignees_url":"https://api.github.com/repos/jnicklas/uploadcolumn/assignees{/user}","branches_url":"https://api.github.com/repos/jnicklas/uploadcolumn/branches{/branch}","tags_url":"https://api.github.com/repos/jnicklas/uploadcolumn/tags","blobs_url":"https://api.github.com/repos/jnicklas/uploadcolumn/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jnicklas/uploadcolumn/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jnicklas/uploadcolumn/git/refs{/sha}","trees_url":"https://api.github.com/repos/jnicklas/uploadcolumn/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jnicklas/uploadcolumn/statuses/{sha}","languages_url":"https://api.github.com/repos/jnicklas/uploadcolumn/languages","stargazers_url":"https://api.github.com/repos/jnicklas/uploadcolumn/stargazers","contributors_url":"https://api.github.com/repos/jnicklas/uploadcolumn/contributors","subscribers_url":"https://api.github.com/repos/jnicklas/uploadcolumn/subscribers","subscription_url":"https://api.github.com/repos/jnicklas/uploadcolumn/subscription","commits_url":"https://api.github.com/repos/jnicklas/uploadcolumn/commits{/sha}","git_commits_url":"https://api.github.com/repos/jnicklas/uploadcolumn/git/commits{/sha}","comments_url":"https://api.github.com/repos/jnicklas/uploadcolumn/comments{/number}","issue_comment_url":"https://api.github.com/repos/jnicklas/uploadcolumn/issues/comments/{number}","contents_url":"https://api.github.com/repos/jnicklas/uploadcolumn/contents/{+path}","compare_url":"https://api.github.com/repos/jnicklas/uploadcolumn/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jnicklas/uploadcolumn/merges","archive_url":"https://api.github.com/repos/jnicklas/uploadcolumn/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jnicklas/uploadcolumn/downloads","issues_url":"https://api.github.com/repos/jnicklas/uploadcolumn/issues{/number}","pulls_url":"https://api.github.com/repos/jnicklas/uploadcolumn/pulls{/number}","milestones_url":"https://api.github.com/repos/jnicklas/uploadcolumn/milestones{/number}","notifications_url":"https://api.github.com/repos/jnicklas/uploadcolumn/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jnicklas/uploadcolumn/labels{/name}"},{"id":252,"name":"ruby-on-rails-tmbundle","full_name":"simonjefford/ruby-on-rails-tmbundle","owner":{"login":"simonjefford","id":136,"avatar_url":"https://1.gravatar.com/avatar/46fd60ea4dde74f3d46fcfd27ed700bf?d=https%3A%2F%2Fidenticons.github.com%2F42a0e188f5033bc65bf8d78622277c4e.png","gravatar_id":"46fd60ea4dde74f3d46fcfd27ed700bf","url":"https://api.github.com/users/simonjefford","html_url":"https://github.com/simonjefford","followers_url":"https://api.github.com/users/simonjefford/followers","following_url":"https://api.github.com/users/simonjefford/following{/other_user}","gists_url":"https://api.github.com/users/simonjefford/gists{/gist_id}","starred_url":"https://api.github.com/users/simonjefford/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/simonjefford/subscriptions","organizations_url":"https://api.github.com/users/simonjefford/orgs","repos_url":"https://api.github.com/users/simonjefford/repos","events_url":"https://api.github.com/users/simonjefford/events{/privacy}","received_events_url":"https://api.github.com/users/simonjefford/received_events","type":"User"},"private":false,"html_url":"https://github.com/simonjefford/ruby-on-rails-tmbundle","description":"Ruby on Rails TextMate bundle [master branch is svn trunk; patches to drnicwilliams@gmail.com]","fork":true,"url":"https://api.github.com/repos/simonjefford/ruby-on-rails-tmbundle","forks_url":"https://api.github.com/repos/simonjefford/ruby-on-rails-tmbundle/forks","keys_url":"https://api.github.com/repos/simonjefford/ruby-on-rails-tmbundle/keys{/key_id}","collaborators_url":"https://api.github.com/repos/simonjefford/ruby-on-rails-tmbundle/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/simonjefford/ruby-on-rails-tmbundle/teams","hooks_url":"https://api.github.com/repos/simonjefford/ruby-on-rails-tmbundle/hooks","issue_events_url":"https://api.github.com/repos/simonjefford/ruby-on-rails-tmbundle/issues/events{/number}","events_url":"https://api.github.com/repos/simonjefford/ruby-on-rails-tmbundle/events","assignees_url":"https://api.github.com/repos/simonjefford/ruby-on-rails-tmbundle/assignees{/user}","branches_url":"https://api.github.com/repos/simonjefford/ruby-on-rails-tmbundle/branches{/branch}","tags_url":"https://api.github.com/repos/simonjefford/ruby-on-rails-tmbundle/tags","blobs_url":"https://api.github.com/repos/simonjefford/ruby-on-rails-tmbundle/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/simonjefford/ruby-on-rails-tmbundle/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/simonjefford/ruby-on-rails-tmbundle/git/refs{/sha}","trees_url":"https://api.github.com/repos/simonjefford/ruby-on-rails-tmbundle/git/trees{/sha}","statuses_url":"https://api.github.com/repos/simonjefford/ruby-on-rails-tmbundle/statuses/{sha}","languages_url":"https://api.github.com/repos/simonjefford/ruby-on-rails-tmbundle/languages","stargazers_url":"https://api.github.com/repos/simonjefford/ruby-on-rails-tmbundle/stargazers","contributors_url":"https://api.github.com/repos/simonjefford/ruby-on-rails-tmbundle/contributors","subscribers_url":"https://api.github.com/repos/simonjefford/ruby-on-rails-tmbundle/subscribers","subscription_url":"https://api.github.com/repos/simonjefford/ruby-on-rails-tmbundle/subscription","commits_url":"https://api.github.com/repos/simonjefford/ruby-on-rails-tmbundle/commits{/sha}","git_commits_url":"https://api.github.com/repos/simonjefford/ruby-on-rails-tmbundle/git/commits{/sha}","comments_url":"https://api.github.com/repos/simonjefford/ruby-on-rails-tmbundle/comments{/number}","issue_comment_url":"https://api.github.com/repos/simonjefford/ruby-on-rails-tmbundle/issues/comments/{number}","contents_url":"https://api.github.com/repos/simonjefford/ruby-on-rails-tmbundle/contents/{+path}","compare_url":"https://api.github.com/repos/simonjefford/ruby-on-rails-tmbundle/compare/{base}...{head}","merges_url":"https://api.github.com/repos/simonjefford/ruby-on-rails-tmbundle/merges","archive_url":"https://api.github.com/repos/simonjefford/ruby-on-rails-tmbundle/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/simonjefford/ruby-on-rails-tmbundle/downloads","issues_url":"https://api.github.com/repos/simonjefford/ruby-on-rails-tmbundle/issues{/number}","pulls_url":"https://api.github.com/repos/simonjefford/ruby-on-rails-tmbundle/pulls{/number}","milestones_url":"https://api.github.com/repos/simonjefford/ruby-on-rails-tmbundle/milestones{/number}","notifications_url":"https://api.github.com/repos/simonjefford/ruby-on-rails-tmbundle/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/simonjefford/ruby-on-rails-tmbundle/labels{/name}"},{"id":256,"name":"rack-mirror","full_name":"chneukirchen/rack-mirror","owner":{"login":"chneukirchen","id":139,"avatar_url":"https://0.gravatar.com/avatar/7264fb16beeea92b89bb42023738259d?d=https%3A%2F%2Fidenticons.github.com%2Fe00da03b685a0dd18fb6a08af0923de0.png","gravatar_id":"7264fb16beeea92b89bb42023738259d","url":"https://api.github.com/users/chneukirchen","html_url":"https://github.com/chneukirchen","followers_url":"https://api.github.com/users/chneukirchen/followers","following_url":"https://api.github.com/users/chneukirchen/following{/other_user}","gists_url":"https://api.github.com/users/chneukirchen/gists{/gist_id}","starred_url":"https://api.github.com/users/chneukirchen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chneukirchen/subscriptions","organizations_url":"https://api.github.com/users/chneukirchen/orgs","repos_url":"https://api.github.com/users/chneukirchen/repos","events_url":"https://api.github.com/users/chneukirchen/events{/privacy}","received_events_url":"https://api.github.com/users/chneukirchen/received_events","type":"User"},"private":false,"html_url":"https://github.com/chneukirchen/rack-mirror","description":"OUTDATED mirror of Rack's darcs repository, use github.com/chneukirchen/rack","fork":false,"url":"https://api.github.com/repos/chneukirchen/rack-mirror","forks_url":"https://api.github.com/repos/chneukirchen/rack-mirror/forks","keys_url":"https://api.github.com/repos/chneukirchen/rack-mirror/keys{/key_id}","collaborators_url":"https://api.github.com/repos/chneukirchen/rack-mirror/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/chneukirchen/rack-mirror/teams","hooks_url":"https://api.github.com/repos/chneukirchen/rack-mirror/hooks","issue_events_url":"https://api.github.com/repos/chneukirchen/rack-mirror/issues/events{/number}","events_url":"https://api.github.com/repos/chneukirchen/rack-mirror/events","assignees_url":"https://api.github.com/repos/chneukirchen/rack-mirror/assignees{/user}","branches_url":"https://api.github.com/repos/chneukirchen/rack-mirror/branches{/branch}","tags_url":"https://api.github.com/repos/chneukirchen/rack-mirror/tags","blobs_url":"https://api.github.com/repos/chneukirchen/rack-mirror/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/chneukirchen/rack-mirror/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/chneukirchen/rack-mirror/git/refs{/sha}","trees_url":"https://api.github.com/repos/chneukirchen/rack-mirror/git/trees{/sha}","statuses_url":"https://api.github.com/repos/chneukirchen/rack-mirror/statuses/{sha}","languages_url":"https://api.github.com/repos/chneukirchen/rack-mirror/languages","stargazers_url":"https://api.github.com/repos/chneukirchen/rack-mirror/stargazers","contributors_url":"https://api.github.com/repos/chneukirchen/rack-mirror/contributors","subscribers_url":"https://api.github.com/repos/chneukirchen/rack-mirror/subscribers","subscription_url":"https://api.github.com/repos/chneukirchen/rack-mirror/subscription","commits_url":"https://api.github.com/repos/chneukirchen/rack-mirror/commits{/sha}","git_commits_url":"https://api.github.com/repos/chneukirchen/rack-mirror/git/commits{/sha}","comments_url":"https://api.github.com/repos/chneukirchen/rack-mirror/comments{/number}","issue_comment_url":"https://api.github.com/repos/chneukirchen/rack-mirror/issues/comments/{number}","contents_url":"https://api.github.com/repos/chneukirchen/rack-mirror/contents/{+path}","compare_url":"https://api.github.com/repos/chneukirchen/rack-mirror/compare/{base}...{head}","merges_url":"https://api.github.com/repos/chneukirchen/rack-mirror/merges","archive_url":"https://api.github.com/repos/chneukirchen/rack-mirror/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/chneukirchen/rack-mirror/downloads","issues_url":"https://api.github.com/repos/chneukirchen/rack-mirror/issues{/number}","pulls_url":"https://api.github.com/repos/chneukirchen/rack-mirror/pulls{/number}","milestones_url":"https://api.github.com/repos/chneukirchen/rack-mirror/milestones{/number}","notifications_url":"https://api.github.com/repos/chneukirchen/rack-mirror/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/chneukirchen/rack-mirror/labels{/name}"},{"id":257,"name":"coset-mirror","full_name":"chneukirchen/coset-mirror","owner":{"login":"chneukirchen","id":139,"avatar_url":"https://0.gravatar.com/avatar/7264fb16beeea92b89bb42023738259d?d=https%3A%2F%2Fidenticons.github.com%2Fe00da03b685a0dd18fb6a08af0923de0.png","gravatar_id":"7264fb16beeea92b89bb42023738259d","url":"https://api.github.com/users/chneukirchen","html_url":"https://github.com/chneukirchen","followers_url":"https://api.github.com/users/chneukirchen/followers","following_url":"https://api.github.com/users/chneukirchen/following{/other_user}","gists_url":"https://api.github.com/users/chneukirchen/gists{/gist_id}","starred_url":"https://api.github.com/users/chneukirchen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chneukirchen/subscriptions","organizations_url":"https://api.github.com/users/chneukirchen/orgs","repos_url":"https://api.github.com/users/chneukirchen/repos","events_url":"https://api.github.com/users/chneukirchen/events{/privacy}","received_events_url":"https://api.github.com/users/chneukirchen/received_events","type":"User"},"private":false,"html_url":"https://github.com/chneukirchen/coset-mirror","description":"(experimental) Mirror of the coset darcs repository","fork":false,"url":"https://api.github.com/repos/chneukirchen/coset-mirror","forks_url":"https://api.github.com/repos/chneukirchen/coset-mirror/forks","keys_url":"https://api.github.com/repos/chneukirchen/coset-mirror/keys{/key_id}","collaborators_url":"https://api.github.com/repos/chneukirchen/coset-mirror/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/chneukirchen/coset-mirror/teams","hooks_url":"https://api.github.com/repos/chneukirchen/coset-mirror/hooks","issue_events_url":"https://api.github.com/repos/chneukirchen/coset-mirror/issues/events{/number}","events_url":"https://api.github.com/repos/chneukirchen/coset-mirror/events","assignees_url":"https://api.github.com/repos/chneukirchen/coset-mirror/assignees{/user}","branches_url":"https://api.github.com/repos/chneukirchen/coset-mirror/branches{/branch}","tags_url":"https://api.github.com/repos/chneukirchen/coset-mirror/tags","blobs_url":"https://api.github.com/repos/chneukirchen/coset-mirror/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/chneukirchen/coset-mirror/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/chneukirchen/coset-mirror/git/refs{/sha}","trees_url":"https://api.github.com/repos/chneukirchen/coset-mirror/git/trees{/sha}","statuses_url":"https://api.github.com/repos/chneukirchen/coset-mirror/statuses/{sha}","languages_url":"https://api.github.com/repos/chneukirchen/coset-mirror/languages","stargazers_url":"https://api.github.com/repos/chneukirchen/coset-mirror/stargazers","contributors_url":"https://api.github.com/repos/chneukirchen/coset-mirror/contributors","subscribers_url":"https://api.github.com/repos/chneukirchen/coset-mirror/subscribers","subscription_url":"https://api.github.com/repos/chneukirchen/coset-mirror/subscription","commits_url":"https://api.github.com/repos/chneukirchen/coset-mirror/commits{/sha}","git_commits_url":"https://api.github.com/repos/chneukirchen/coset-mirror/git/commits{/sha}","comments_url":"https://api.github.com/repos/chneukirchen/coset-mirror/comments{/number}","issue_comment_url":"https://api.github.com/repos/chneukirchen/coset-mirror/issues/comments/{number}","contents_url":"https://api.github.com/repos/chneukirchen/coset-mirror/contents/{+path}","compare_url":"https://api.github.com/repos/chneukirchen/coset-mirror/compare/{base}...{head}","merges_url":"https://api.github.com/repos/chneukirchen/coset-mirror/merges","archive_url":"https://api.github.com/repos/chneukirchen/coset-mirror/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/chneukirchen/coset-mirror/downloads","issues_url":"https://api.github.com/repos/chneukirchen/coset-mirror/issues{/number}","pulls_url":"https://api.github.com/repos/chneukirchen/coset-mirror/pulls{/number}","milestones_url":"https://api.github.com/repos/chneukirchen/coset-mirror/milestones{/number}","notifications_url":"https://api.github.com/repos/chneukirchen/coset-mirror/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/chneukirchen/coset-mirror/labels{/name}"},{"id":267,"name":"javascript-unittest-tmbundle","full_name":"drnic/javascript-unittest-tmbundle","owner":{"login":"drnic","id":108,"avatar_url":"https://2.gravatar.com/avatar/cb2b768a5e546b24052ea03334e43676?d=https%3A%2F%2Fidenticons.github.com%2Fa3c65c2974270fd093ee8a9bf8ae7d0b.png","gravatar_id":"cb2b768a5e546b24052ea03334e43676","url":"https://api.github.com/users/drnic","html_url":"https://github.com/drnic","followers_url":"https://api.github.com/users/drnic/followers","following_url":"https://api.github.com/users/drnic/following{/other_user}","gists_url":"https://api.github.com/users/drnic/gists{/gist_id}","starred_url":"https://api.github.com/users/drnic/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/drnic/subscriptions","organizations_url":"https://api.github.com/users/drnic/orgs","repos_url":"https://api.github.com/users/drnic/repos","events_url":"https://api.github.com/users/drnic/events{/privacy}","received_events_url":"https://api.github.com/users/drnic/received_events","type":"User"},"private":false,"html_url":"https://github.com/drnic/javascript-unittest-tmbundle","description":"JavaScript Unit Test TextMate Bundle [for prototype's unittest.js library]","fork":false,"url":"https://api.github.com/repos/drnic/javascript-unittest-tmbundle","forks_url":"https://api.github.com/repos/drnic/javascript-unittest-tmbundle/forks","keys_url":"https://api.github.com/repos/drnic/javascript-unittest-tmbundle/keys{/key_id}","collaborators_url":"https://api.github.com/repos/drnic/javascript-unittest-tmbundle/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/drnic/javascript-unittest-tmbundle/teams","hooks_url":"https://api.github.com/repos/drnic/javascript-unittest-tmbundle/hooks","issue_events_url":"https://api.github.com/repos/drnic/javascript-unittest-tmbundle/issues/events{/number}","events_url":"https://api.github.com/repos/drnic/javascript-unittest-tmbundle/events","assignees_url":"https://api.github.com/repos/drnic/javascript-unittest-tmbundle/assignees{/user}","branches_url":"https://api.github.com/repos/drnic/javascript-unittest-tmbundle/branches{/branch}","tags_url":"https://api.github.com/repos/drnic/javascript-unittest-tmbundle/tags","blobs_url":"https://api.github.com/repos/drnic/javascript-unittest-tmbundle/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/drnic/javascript-unittest-tmbundle/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/drnic/javascript-unittest-tmbundle/git/refs{/sha}","trees_url":"https://api.github.com/repos/drnic/javascript-unittest-tmbundle/git/trees{/sha}","statuses_url":"https://api.github.com/repos/drnic/javascript-unittest-tmbundle/statuses/{sha}","languages_url":"https://api.github.com/repos/drnic/javascript-unittest-tmbundle/languages","stargazers_url":"https://api.github.com/repos/drnic/javascript-unittest-tmbundle/stargazers","contributors_url":"https://api.github.com/repos/drnic/javascript-unittest-tmbundle/contributors","subscribers_url":"https://api.github.com/repos/drnic/javascript-unittest-tmbundle/subscribers","subscription_url":"https://api.github.com/repos/drnic/javascript-unittest-tmbundle/subscription","commits_url":"https://api.github.com/repos/drnic/javascript-unittest-tmbundle/commits{/sha}","git_commits_url":"https://api.github.com/repos/drnic/javascript-unittest-tmbundle/git/commits{/sha}","comments_url":"https://api.github.com/repos/drnic/javascript-unittest-tmbundle/comments{/number}","issue_comment_url":"https://api.github.com/repos/drnic/javascript-unittest-tmbundle/issues/comments/{number}","contents_url":"https://api.github.com/repos/drnic/javascript-unittest-tmbundle/contents/{+path}","compare_url":"https://api.github.com/repos/drnic/javascript-unittest-tmbundle/compare/{base}...{head}","merges_url":"https://api.github.com/repos/drnic/javascript-unittest-tmbundle/merges","archive_url":"https://api.github.com/repos/drnic/javascript-unittest-tmbundle/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/drnic/javascript-unittest-tmbundle/downloads","issues_url":"https://api.github.com/repos/drnic/javascript-unittest-tmbundle/issues{/number}","pulls_url":"https://api.github.com/repos/drnic/javascript-unittest-tmbundle/pulls{/number}","milestones_url":"https://api.github.com/repos/drnic/javascript-unittest-tmbundle/milestones{/number}","notifications_url":"https://api.github.com/repos/drnic/javascript-unittest-tmbundle/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/drnic/javascript-unittest-tmbundle/labels{/name}"},{"id":273,"name":"eycap","full_name":"engineyard/eycap","owner":{"login":"engineyard","id":81,"avatar_url":"https://0.gravatar.com/avatar/27f95ff21f0a4b94a72de0e8f780d4d2?d=https%3A%2F%2Fidenticons.github.com%2F43ec517d68b6edd3015b3edc9a11367b.png","gravatar_id":"27f95ff21f0a4b94a72de0e8f780d4d2","url":"https://api.github.com/users/engineyard","html_url":"https://github.com/engineyard","followers_url":"https://api.github.com/users/engineyard/followers","following_url":"https://api.github.com/users/engineyard/following{/other_user}","gists_url":"https://api.github.com/users/engineyard/gists{/gist_id}","starred_url":"https://api.github.com/users/engineyard/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/engineyard/subscriptions","organizations_url":"https://api.github.com/users/engineyard/orgs","repos_url":"https://api.github.com/users/engineyard/repos","events_url":"https://api.github.com/users/engineyard/events{/privacy}","received_events_url":"https://api.github.com/users/engineyard/received_events","type":"Organization"},"private":false,"html_url":"https://github.com/engineyard/eycap","description":"Engine Yard specific capistrano recipes","fork":false,"url":"https://api.github.com/repos/engineyard/eycap","forks_url":"https://api.github.com/repos/engineyard/eycap/forks","keys_url":"https://api.github.com/repos/engineyard/eycap/keys{/key_id}","collaborators_url":"https://api.github.com/repos/engineyard/eycap/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/engineyard/eycap/teams","hooks_url":"https://api.github.com/repos/engineyard/eycap/hooks","issue_events_url":"https://api.github.com/repos/engineyard/eycap/issues/events{/number}","events_url":"https://api.github.com/repos/engineyard/eycap/events","assignees_url":"https://api.github.com/repos/engineyard/eycap/assignees{/user}","branches_url":"https://api.github.com/repos/engineyard/eycap/branches{/branch}","tags_url":"https://api.github.com/repos/engineyard/eycap/tags","blobs_url":"https://api.github.com/repos/engineyard/eycap/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/engineyard/eycap/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/engineyard/eycap/git/refs{/sha}","trees_url":"https://api.github.com/repos/engineyard/eycap/git/trees{/sha}","statuses_url":"https://api.github.com/repos/engineyard/eycap/statuses/{sha}","languages_url":"https://api.github.com/repos/engineyard/eycap/languages","stargazers_url":"https://api.github.com/repos/engineyard/eycap/stargazers","contributors_url":"https://api.github.com/repos/engineyard/eycap/contributors","subscribers_url":"https://api.github.com/repos/engineyard/eycap/subscribers","subscription_url":"https://api.github.com/repos/engineyard/eycap/subscription","commits_url":"https://api.github.com/repos/engineyard/eycap/commits{/sha}","git_commits_url":"https://api.github.com/repos/engineyard/eycap/git/commits{/sha}","comments_url":"https://api.github.com/repos/engineyard/eycap/comments{/number}","issue_comment_url":"https://api.github.com/repos/engineyard/eycap/issues/comments/{number}","contents_url":"https://api.github.com/repos/engineyard/eycap/contents/{+path}","compare_url":"https://api.github.com/repos/engineyard/eycap/compare/{base}...{head}","merges_url":"https://api.github.com/repos/engineyard/eycap/merges","archive_url":"https://api.github.com/repos/engineyard/eycap/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/engineyard/eycap/downloads","issues_url":"https://api.github.com/repos/engineyard/eycap/issues{/number}","pulls_url":"https://api.github.com/repos/engineyard/eycap/pulls{/number}","milestones_url":"https://api.github.com/repos/engineyard/eycap/milestones{/number}","notifications_url":"https://api.github.com/repos/engineyard/eycap/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/engineyard/eycap/labels{/name}"},{"id":279,"name":"gitsum","full_name":"chneukirchen/gitsum","owner":{"login":"chneukirchen","id":139,"avatar_url":"https://0.gravatar.com/avatar/7264fb16beeea92b89bb42023738259d?d=https%3A%2F%2Fidenticons.github.com%2Fe00da03b685a0dd18fb6a08af0923de0.png","gravatar_id":"7264fb16beeea92b89bb42023738259d","url":"https://api.github.com/users/chneukirchen","html_url":"https://github.com/chneukirchen","followers_url":"https://api.github.com/users/chneukirchen/followers","following_url":"https://api.github.com/users/chneukirchen/following{/other_user}","gists_url":"https://api.github.com/users/chneukirchen/gists{/gist_id}","starred_url":"https://api.github.com/users/chneukirchen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chneukirchen/subscriptions","organizations_url":"https://api.github.com/users/chneukirchen/orgs","repos_url":"https://api.github.com/users/chneukirchen/repos","events_url":"https://api.github.com/users/chneukirchen/events{/privacy}","received_events_url":"https://api.github.com/users/chneukirchen/received_events","type":"User"},"private":false,"html_url":"https://github.com/chneukirchen/gitsum","description":"basic darcsum feelalike for Git","fork":false,"url":"https://api.github.com/repos/chneukirchen/gitsum","forks_url":"https://api.github.com/repos/chneukirchen/gitsum/forks","keys_url":"https://api.github.com/repos/chneukirchen/gitsum/keys{/key_id}","collaborators_url":"https://api.github.com/repos/chneukirchen/gitsum/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/chneukirchen/gitsum/teams","hooks_url":"https://api.github.com/repos/chneukirchen/gitsum/hooks","issue_events_url":"https://api.github.com/repos/chneukirchen/gitsum/issues/events{/number}","events_url":"https://api.github.com/repos/chneukirchen/gitsum/events","assignees_url":"https://api.github.com/repos/chneukirchen/gitsum/assignees{/user}","branches_url":"https://api.github.com/repos/chneukirchen/gitsum/branches{/branch}","tags_url":"https://api.github.com/repos/chneukirchen/gitsum/tags","blobs_url":"https://api.github.com/repos/chneukirchen/gitsum/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/chneukirchen/gitsum/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/chneukirchen/gitsum/git/refs{/sha}","trees_url":"https://api.github.com/repos/chneukirchen/gitsum/git/trees{/sha}","statuses_url":"https://api.github.com/repos/chneukirchen/gitsum/statuses/{sha}","languages_url":"https://api.github.com/repos/chneukirchen/gitsum/languages","stargazers_url":"https://api.github.com/repos/chneukirchen/gitsum/stargazers","contributors_url":"https://api.github.com/repos/chneukirchen/gitsum/contributors","subscribers_url":"https://api.github.com/repos/chneukirchen/gitsum/subscribers","subscription_url":"https://api.github.com/repos/chneukirchen/gitsum/subscription","commits_url":"https://api.github.com/repos/chneukirchen/gitsum/commits{/sha}","git_commits_url":"https://api.github.com/repos/chneukirchen/gitsum/git/commits{/sha}","comments_url":"https://api.github.com/repos/chneukirchen/gitsum/comments{/number}","issue_comment_url":"https://api.github.com/repos/chneukirchen/gitsum/issues/comments/{number}","contents_url":"https://api.github.com/repos/chneukirchen/gitsum/contents/{+path}","compare_url":"https://api.github.com/repos/chneukirchen/gitsum/compare/{base}...{head}","merges_url":"https://api.github.com/repos/chneukirchen/gitsum/merges","archive_url":"https://api.github.com/repos/chneukirchen/gitsum/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/chneukirchen/gitsum/downloads","issues_url":"https://api.github.com/repos/chneukirchen/gitsum/issues{/number}","pulls_url":"https://api.github.com/repos/chneukirchen/gitsum/pulls{/number}","milestones_url":"https://api.github.com/repos/chneukirchen/gitsum/milestones{/number}","notifications_url":"https://api.github.com/repos/chneukirchen/gitsum/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/chneukirchen/gitsum/labels{/name}"},{"id":284,"name":"ambition","full_name":"automatthew/ambition","owner":{"login":"automatthew","id":105,"avatar_url":"https://2.gravatar.com/avatar/491d5a2b6e9c9346e2d67da31a633457?d=https%3A%2F%2Fidenticons.github.com%2F65b9eea6e1cc6bb9f0cd2a47751a186f.png","gravatar_id":"491d5a2b6e9c9346e2d67da31a633457","url":"https://api.github.com/users/automatthew","html_url":"https://github.com/automatthew","followers_url":"https://api.github.com/users/automatthew/followers","following_url":"https://api.github.com/users/automatthew/following{/other_user}","gists_url":"https://api.github.com/users/automatthew/gists{/gist_id}","starred_url":"https://api.github.com/users/automatthew/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/automatthew/subscriptions","organizations_url":"https://api.github.com/users/automatthew/orgs","repos_url":"https://api.github.com/users/automatthew/repos","events_url":"https://api.github.com/users/automatthew/events{/privacy}","received_events_url":"https://api.github.com/users/automatthew/received_events","type":"User"},"private":false,"html_url":"https://github.com/automatthew/ambition","description":"","fork":true,"url":"https://api.github.com/repos/automatthew/ambition","forks_url":"https://api.github.com/repos/automatthew/ambition/forks","keys_url":"https://api.github.com/repos/automatthew/ambition/keys{/key_id}","collaborators_url":"https://api.github.com/repos/automatthew/ambition/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/automatthew/ambition/teams","hooks_url":"https://api.github.com/repos/automatthew/ambition/hooks","issue_events_url":"https://api.github.com/repos/automatthew/ambition/issues/events{/number}","events_url":"https://api.github.com/repos/automatthew/ambition/events","assignees_url":"https://api.github.com/repos/automatthew/ambition/assignees{/user}","branches_url":"https://api.github.com/repos/automatthew/ambition/branches{/branch}","tags_url":"https://api.github.com/repos/automatthew/ambition/tags","blobs_url":"https://api.github.com/repos/automatthew/ambition/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/automatthew/ambition/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/automatthew/ambition/git/refs{/sha}","trees_url":"https://api.github.com/repos/automatthew/ambition/git/trees{/sha}","statuses_url":"https://api.github.com/repos/automatthew/ambition/statuses/{sha}","languages_url":"https://api.github.com/repos/automatthew/ambition/languages","stargazers_url":"https://api.github.com/repos/automatthew/ambition/stargazers","contributors_url":"https://api.github.com/repos/automatthew/ambition/contributors","subscribers_url":"https://api.github.com/repos/automatthew/ambition/subscribers","subscription_url":"https://api.github.com/repos/automatthew/ambition/subscription","commits_url":"https://api.github.com/repos/automatthew/ambition/commits{/sha}","git_commits_url":"https://api.github.com/repos/automatthew/ambition/git/commits{/sha}","comments_url":"https://api.github.com/repos/automatthew/ambition/comments{/number}","issue_comment_url":"https://api.github.com/repos/automatthew/ambition/issues/comments/{number}","contents_url":"https://api.github.com/repos/automatthew/ambition/contents/{+path}","compare_url":"https://api.github.com/repos/automatthew/ambition/compare/{base}...{head}","merges_url":"https://api.github.com/repos/automatthew/ambition/merges","archive_url":"https://api.github.com/repos/automatthew/ambition/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/automatthew/ambition/downloads","issues_url":"https://api.github.com/repos/automatthew/ambition/issues{/number}","pulls_url":"https://api.github.com/repos/automatthew/ambition/pulls{/number}","milestones_url":"https://api.github.com/repos/automatthew/ambition/milestones{/number}","notifications_url":"https://api.github.com/repos/automatthew/ambition/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/automatthew/ambition/labels{/name}"},{"id":293,"name":"sequel-model","full_name":"wayneeseguin/sequel-model","owner":{"login":"wayneeseguin","id":18,"avatar_url":"https://0.gravatar.com/avatar/b9b5ff40232c1dfd61238c2a90467f84?d=https%3A%2F%2Fidenticons.github.com%2F6f4922f45568161a8cdf4ad2299f6d23.png","gravatar_id":"b9b5ff40232c1dfd61238c2a90467f84","url":"https://api.github.com/users/wayneeseguin","html_url":"https://github.com/wayneeseguin","followers_url":"https://api.github.com/users/wayneeseguin/followers","following_url":"https://api.github.com/users/wayneeseguin/following{/other_user}","gists_url":"https://api.github.com/users/wayneeseguin/gists{/gist_id}","starred_url":"https://api.github.com/users/wayneeseguin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wayneeseguin/subscriptions","organizations_url":"https://api.github.com/users/wayneeseguin/orgs","repos_url":"https://api.github.com/users/wayneeseguin/repos","events_url":"https://api.github.com/users/wayneeseguin/events{/privacy}","received_events_url":"https://api.github.com/users/wayneeseguin/received_events","type":"User"},"private":false,"html_url":"https://github.com/wayneeseguin/sequel-model","description":"Sequel::Model (No longer working on this project)","fork":false,"url":"https://api.github.com/repos/wayneeseguin/sequel-model","forks_url":"https://api.github.com/repos/wayneeseguin/sequel-model/forks","keys_url":"https://api.github.com/repos/wayneeseguin/sequel-model/keys{/key_id}","collaborators_url":"https://api.github.com/repos/wayneeseguin/sequel-model/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/wayneeseguin/sequel-model/teams","hooks_url":"https://api.github.com/repos/wayneeseguin/sequel-model/hooks","issue_events_url":"https://api.github.com/repos/wayneeseguin/sequel-model/issues/events{/number}","events_url":"https://api.github.com/repos/wayneeseguin/sequel-model/events","assignees_url":"https://api.github.com/repos/wayneeseguin/sequel-model/assignees{/user}","branches_url":"https://api.github.com/repos/wayneeseguin/sequel-model/branches{/branch}","tags_url":"https://api.github.com/repos/wayneeseguin/sequel-model/tags","blobs_url":"https://api.github.com/repos/wayneeseguin/sequel-model/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/wayneeseguin/sequel-model/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/wayneeseguin/sequel-model/git/refs{/sha}","trees_url":"https://api.github.com/repos/wayneeseguin/sequel-model/git/trees{/sha}","statuses_url":"https://api.github.com/repos/wayneeseguin/sequel-model/statuses/{sha}","languages_url":"https://api.github.com/repos/wayneeseguin/sequel-model/languages","stargazers_url":"https://api.github.com/repos/wayneeseguin/sequel-model/stargazers","contributors_url":"https://api.github.com/repos/wayneeseguin/sequel-model/contributors","subscribers_url":"https://api.github.com/repos/wayneeseguin/sequel-model/subscribers","subscription_url":"https://api.github.com/repos/wayneeseguin/sequel-model/subscription","commits_url":"https://api.github.com/repos/wayneeseguin/sequel-model/commits{/sha}","git_commits_url":"https://api.github.com/repos/wayneeseguin/sequel-model/git/commits{/sha}","comments_url":"https://api.github.com/repos/wayneeseguin/sequel-model/comments{/number}","issue_comment_url":"https://api.github.com/repos/wayneeseguin/sequel-model/issues/comments/{number}","contents_url":"https://api.github.com/repos/wayneeseguin/sequel-model/contents/{+path}","compare_url":"https://api.github.com/repos/wayneeseguin/sequel-model/compare/{base}...{head}","merges_url":"https://api.github.com/repos/wayneeseguin/sequel-model/merges","archive_url":"https://api.github.com/repos/wayneeseguin/sequel-model/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/wayneeseguin/sequel-model/downloads","issues_url":"https://api.github.com/repos/wayneeseguin/sequel-model/issues{/number}","pulls_url":"https://api.github.com/repos/wayneeseguin/sequel-model/pulls{/number}","milestones_url":"https://api.github.com/repos/wayneeseguin/sequel-model/milestones{/number}","notifications_url":"https://api.github.com/repos/wayneeseguin/sequel-model/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/wayneeseguin/sequel-model/labels{/name}"},{"id":305,"name":"god","full_name":"kevinclark/god","owner":{"login":"kevinclark","id":20,"avatar_url":"https://1.gravatar.com/avatar/6f792b946bbf30845314eb501da5e040?d=https%3A%2F%2Fidenticons.github.com%2F98f13708210194c475687be6106a3b84.png","gravatar_id":"6f792b946bbf30845314eb501da5e040","url":"https://api.github.com/users/kevinclark","html_url":"https://github.com/kevinclark","followers_url":"https://api.github.com/users/kevinclark/followers","following_url":"https://api.github.com/users/kevinclark/following{/other_user}","gists_url":"https://api.github.com/users/kevinclark/gists{/gist_id}","starred_url":"https://api.github.com/users/kevinclark/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kevinclark/subscriptions","organizations_url":"https://api.github.com/users/kevinclark/orgs","repos_url":"https://api.github.com/users/kevinclark/repos","events_url":"https://api.github.com/users/kevinclark/events{/privacy}","received_events_url":"https://api.github.com/users/kevinclark/received_events","type":"User"},"private":false,"html_url":"https://github.com/kevinclark/god","description":"Ruby process monitor","fork":true,"url":"https://api.github.com/repos/kevinclark/god","forks_url":"https://api.github.com/repos/kevinclark/god/forks","keys_url":"https://api.github.com/repos/kevinclark/god/keys{/key_id}","collaborators_url":"https://api.github.com/repos/kevinclark/god/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/kevinclark/god/teams","hooks_url":"https://api.github.com/repos/kevinclark/god/hooks","issue_events_url":"https://api.github.com/repos/kevinclark/god/issues/events{/number}","events_url":"https://api.github.com/repos/kevinclark/god/events","assignees_url":"https://api.github.com/repos/kevinclark/god/assignees{/user}","branches_url":"https://api.github.com/repos/kevinclark/god/branches{/branch}","tags_url":"https://api.github.com/repos/kevinclark/god/tags","blobs_url":"https://api.github.com/repos/kevinclark/god/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/kevinclark/god/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/kevinclark/god/git/refs{/sha}","trees_url":"https://api.github.com/repos/kevinclark/god/git/trees{/sha}","statuses_url":"https://api.github.com/repos/kevinclark/god/statuses/{sha}","languages_url":"https://api.github.com/repos/kevinclark/god/languages","stargazers_url":"https://api.github.com/repos/kevinclark/god/stargazers","contributors_url":"https://api.github.com/repos/kevinclark/god/contributors","subscribers_url":"https://api.github.com/repos/kevinclark/god/subscribers","subscription_url":"https://api.github.com/repos/kevinclark/god/subscription","commits_url":"https://api.github.com/repos/kevinclark/god/commits{/sha}","git_commits_url":"https://api.github.com/repos/kevinclark/god/git/commits{/sha}","comments_url":"https://api.github.com/repos/kevinclark/god/comments{/number}","issue_comment_url":"https://api.github.com/repos/kevinclark/god/issues/comments/{number}","contents_url":"https://api.github.com/repos/kevinclark/god/contents/{+path}","compare_url":"https://api.github.com/repos/kevinclark/god/compare/{base}...{head}","merges_url":"https://api.github.com/repos/kevinclark/god/merges","archive_url":"https://api.github.com/repos/kevinclark/god/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/kevinclark/god/downloads","issues_url":"https://api.github.com/repos/kevinclark/god/issues{/number}","pulls_url":"https://api.github.com/repos/kevinclark/god/pulls{/number}","milestones_url":"https://api.github.com/repos/kevinclark/god/milestones{/number}","notifications_url":"https://api.github.com/repos/kevinclark/god/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/kevinclark/god/labels{/name}"},{"id":307,"name":"blerb-core","full_name":"hornbeck/blerb-core","owner":{"login":"hornbeck","id":49,"avatar_url":"https://2.gravatar.com/avatar/47093444301bbde90d0aef5fa5c3ac86?d=https%3A%2F%2Fidenticons.github.com%2Ff457c545a9ded88f18ecee47145a72c0.png","gravatar_id":"47093444301bbde90d0aef5fa5c3ac86","url":"https://api.github.com/users/hornbeck","html_url":"https://github.com/hornbeck","followers_url":"https://api.github.com/users/hornbeck/followers","following_url":"https://api.github.com/users/hornbeck/following{/other_user}","gists_url":"https://api.github.com/users/hornbeck/gists{/gist_id}","starred_url":"https://api.github.com/users/hornbeck/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hornbeck/subscriptions","organizations_url":"https://api.github.com/users/hornbeck/orgs","repos_url":"https://api.github.com/users/hornbeck/repos","events_url":"https://api.github.com/users/hornbeck/events{/privacy}","received_events_url":"https://api.github.com/users/hornbeck/received_events","type":"User"},"private":false,"html_url":"https://github.com/hornbeck/blerb-core","description":"blerb running on merb-core","fork":false,"url":"https://api.github.com/repos/hornbeck/blerb-core","forks_url":"https://api.github.com/repos/hornbeck/blerb-core/forks","keys_url":"https://api.github.com/repos/hornbeck/blerb-core/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hornbeck/blerb-core/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hornbeck/blerb-core/teams","hooks_url":"https://api.github.com/repos/hornbeck/blerb-core/hooks","issue_events_url":"https://api.github.com/repos/hornbeck/blerb-core/issues/events{/number}","events_url":"https://api.github.com/repos/hornbeck/blerb-core/events","assignees_url":"https://api.github.com/repos/hornbeck/blerb-core/assignees{/user}","branches_url":"https://api.github.com/repos/hornbeck/blerb-core/branches{/branch}","tags_url":"https://api.github.com/repos/hornbeck/blerb-core/tags","blobs_url":"https://api.github.com/repos/hornbeck/blerb-core/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hornbeck/blerb-core/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hornbeck/blerb-core/git/refs{/sha}","trees_url":"https://api.github.com/repos/hornbeck/blerb-core/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hornbeck/blerb-core/statuses/{sha}","languages_url":"https://api.github.com/repos/hornbeck/blerb-core/languages","stargazers_url":"https://api.github.com/repos/hornbeck/blerb-core/stargazers","contributors_url":"https://api.github.com/repos/hornbeck/blerb-core/contributors","subscribers_url":"https://api.github.com/repos/hornbeck/blerb-core/subscribers","subscription_url":"https://api.github.com/repos/hornbeck/blerb-core/subscription","commits_url":"https://api.github.com/repos/hornbeck/blerb-core/commits{/sha}","git_commits_url":"https://api.github.com/repos/hornbeck/blerb-core/git/commits{/sha}","comments_url":"https://api.github.com/repos/hornbeck/blerb-core/comments{/number}","issue_comment_url":"https://api.github.com/repos/hornbeck/blerb-core/issues/comments/{number}","contents_url":"https://api.github.com/repos/hornbeck/blerb-core/contents/{+path}","compare_url":"https://api.github.com/repos/hornbeck/blerb-core/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hornbeck/blerb-core/merges","archive_url":"https://api.github.com/repos/hornbeck/blerb-core/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hornbeck/blerb-core/downloads","issues_url":"https://api.github.com/repos/hornbeck/blerb-core/issues{/number}","pulls_url":"https://api.github.com/repos/hornbeck/blerb-core/pulls{/number}","milestones_url":"https://api.github.com/repos/hornbeck/blerb-core/milestones{/number}","notifications_url":"https://api.github.com/repos/hornbeck/blerb-core/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hornbeck/blerb-core/labels{/name}"},{"id":312,"name":"django-mptt","full_name":"brosner/django-mptt","owner":{"login":"brosner","id":124,"avatar_url":"https://0.gravatar.com/avatar/b7472bc7aa45c70641c299e9408b78ab?d=https%3A%2F%2Fidenticons.github.com%2Fc8ffe9a587b126f152ed3d89a146b445.png","gravatar_id":"b7472bc7aa45c70641c299e9408b78ab","url":"https://api.github.com/users/brosner","html_url":"https://github.com/brosner","followers_url":"https://api.github.com/users/brosner/followers","following_url":"https://api.github.com/users/brosner/following{/other_user}","gists_url":"https://api.github.com/users/brosner/gists{/gist_id}","starred_url":"https://api.github.com/users/brosner/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/brosner/subscriptions","organizations_url":"https://api.github.com/users/brosner/orgs","repos_url":"https://api.github.com/users/brosner/repos","events_url":"https://api.github.com/users/brosner/events{/privacy}","received_events_url":"https://api.github.com/users/brosner/received_events","type":"User"},"private":false,"html_url":"https://github.com/brosner/django-mptt","description":"utilities for implementing a modified pre-order traversal tree in django","fork":true,"url":"https://api.github.com/repos/brosner/django-mptt","forks_url":"https://api.github.com/repos/brosner/django-mptt/forks","keys_url":"https://api.github.com/repos/brosner/django-mptt/keys{/key_id}","collaborators_url":"https://api.github.com/repos/brosner/django-mptt/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/brosner/django-mptt/teams","hooks_url":"https://api.github.com/repos/brosner/django-mptt/hooks","issue_events_url":"https://api.github.com/repos/brosner/django-mptt/issues/events{/number}","events_url":"https://api.github.com/repos/brosner/django-mptt/events","assignees_url":"https://api.github.com/repos/brosner/django-mptt/assignees{/user}","branches_url":"https://api.github.com/repos/brosner/django-mptt/branches{/branch}","tags_url":"https://api.github.com/repos/brosner/django-mptt/tags","blobs_url":"https://api.github.com/repos/brosner/django-mptt/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/brosner/django-mptt/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/brosner/django-mptt/git/refs{/sha}","trees_url":"https://api.github.com/repos/brosner/django-mptt/git/trees{/sha}","statuses_url":"https://api.github.com/repos/brosner/django-mptt/statuses/{sha}","languages_url":"https://api.github.com/repos/brosner/django-mptt/languages","stargazers_url":"https://api.github.com/repos/brosner/django-mptt/stargazers","contributors_url":"https://api.github.com/repos/brosner/django-mptt/contributors","subscribers_url":"https://api.github.com/repos/brosner/django-mptt/subscribers","subscription_url":"https://api.github.com/repos/brosner/django-mptt/subscription","commits_url":"https://api.github.com/repos/brosner/django-mptt/commits{/sha}","git_commits_url":"https://api.github.com/repos/brosner/django-mptt/git/commits{/sha}","comments_url":"https://api.github.com/repos/brosner/django-mptt/comments{/number}","issue_comment_url":"https://api.github.com/repos/brosner/django-mptt/issues/comments/{number}","contents_url":"https://api.github.com/repos/brosner/django-mptt/contents/{+path}","compare_url":"https://api.github.com/repos/brosner/django-mptt/compare/{base}...{head}","merges_url":"https://api.github.com/repos/brosner/django-mptt/merges","archive_url":"https://api.github.com/repos/brosner/django-mptt/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/brosner/django-mptt/downloads","issues_url":"https://api.github.com/repos/brosner/django-mptt/issues{/number}","pulls_url":"https://api.github.com/repos/brosner/django-mptt/pulls{/number}","milestones_url":"https://api.github.com/repos/brosner/django-mptt/milestones{/number}","notifications_url":"https://api.github.com/repos/brosner/django-mptt/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/brosner/django-mptt/labels{/name}"},{"id":314,"name":"bus-scheme","full_name":"technomancy/bus-scheme","owner":{"login":"technomancy","id":141,"avatar_url":"https://2.gravatar.com/avatar/22788ec68b2aee512f8f4c5d8ae819ae?d=https%3A%2F%2Fidenticons.github.com%2F0f28b5d49b3020afeecd95b4009adf4c.png","gravatar_id":"22788ec68b2aee512f8f4c5d8ae819ae","url":"https://api.github.com/users/technomancy","html_url":"https://github.com/technomancy","followers_url":"https://api.github.com/users/technomancy/followers","following_url":"https://api.github.com/users/technomancy/following{/other_user}","gists_url":"https://api.github.com/users/technomancy/gists{/gist_id}","starred_url":"https://api.github.com/users/technomancy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/technomancy/subscriptions","organizations_url":"https://api.github.com/users/technomancy/orgs","repos_url":"https://api.github.com/users/technomancy/repos","events_url":"https://api.github.com/users/technomancy/events{/privacy}","received_events_url":"https://api.github.com/users/technomancy/received_events","type":"User"},"private":false,"html_url":"https://github.com/technomancy/bus-scheme","description":"a Scheme written in Ruby, but implemented on the bus!","fork":false,"url":"https://api.github.com/repos/technomancy/bus-scheme","forks_url":"https://api.github.com/repos/technomancy/bus-scheme/forks","keys_url":"https://api.github.com/repos/technomancy/bus-scheme/keys{/key_id}","collaborators_url":"https://api.github.com/repos/technomancy/bus-scheme/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/technomancy/bus-scheme/teams","hooks_url":"https://api.github.com/repos/technomancy/bus-scheme/hooks","issue_events_url":"https://api.github.com/repos/technomancy/bus-scheme/issues/events{/number}","events_url":"https://api.github.com/repos/technomancy/bus-scheme/events","assignees_url":"https://api.github.com/repos/technomancy/bus-scheme/assignees{/user}","branches_url":"https://api.github.com/repos/technomancy/bus-scheme/branches{/branch}","tags_url":"https://api.github.com/repos/technomancy/bus-scheme/tags","blobs_url":"https://api.github.com/repos/technomancy/bus-scheme/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/technomancy/bus-scheme/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/technomancy/bus-scheme/git/refs{/sha}","trees_url":"https://api.github.com/repos/technomancy/bus-scheme/git/trees{/sha}","statuses_url":"https://api.github.com/repos/technomancy/bus-scheme/statuses/{sha}","languages_url":"https://api.github.com/repos/technomancy/bus-scheme/languages","stargazers_url":"https://api.github.com/repos/technomancy/bus-scheme/stargazers","contributors_url":"https://api.github.com/repos/technomancy/bus-scheme/contributors","subscribers_url":"https://api.github.com/repos/technomancy/bus-scheme/subscribers","subscription_url":"https://api.github.com/repos/technomancy/bus-scheme/subscription","commits_url":"https://api.github.com/repos/technomancy/bus-scheme/commits{/sha}","git_commits_url":"https://api.github.com/repos/technomancy/bus-scheme/git/commits{/sha}","comments_url":"https://api.github.com/repos/technomancy/bus-scheme/comments{/number}","issue_comment_url":"https://api.github.com/repos/technomancy/bus-scheme/issues/comments/{number}","contents_url":"https://api.github.com/repos/technomancy/bus-scheme/contents/{+path}","compare_url":"https://api.github.com/repos/technomancy/bus-scheme/compare/{base}...{head}","merges_url":"https://api.github.com/repos/technomancy/bus-scheme/merges","archive_url":"https://api.github.com/repos/technomancy/bus-scheme/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/technomancy/bus-scheme/downloads","issues_url":"https://api.github.com/repos/technomancy/bus-scheme/issues{/number}","pulls_url":"https://api.github.com/repos/technomancy/bus-scheme/pulls{/number}","milestones_url":"https://api.github.com/repos/technomancy/bus-scheme/milestones{/number}","notifications_url":"https://api.github.com/repos/technomancy/bus-scheme/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/technomancy/bus-scheme/labels{/name}"},{"id":319,"name":"javascript-bits","full_name":"Caged/javascript-bits","owner":{"login":"Caged","id":25,"avatar_url":"https://2.gravatar.com/avatar/97c3a8eea9b7eaa9e1e93ea3cd47399f?d=https%3A%2F%2Fidenticons.github.com%2F8e296a067a37563370ded05f5a3bf3ec.png","gravatar_id":"97c3a8eea9b7eaa9e1e93ea3cd47399f","url":"https://api.github.com/users/Caged","html_url":"https://github.com/Caged","followers_url":"https://api.github.com/users/Caged/followers","following_url":"https://api.github.com/users/Caged/following{/other_user}","gists_url":"https://api.github.com/users/Caged/gists{/gist_id}","starred_url":"https://api.github.com/users/Caged/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Caged/subscriptions","organizations_url":"https://api.github.com/users/Caged/orgs","repos_url":"https://api.github.com/users/Caged/repos","events_url":"https://api.github.com/users/Caged/events{/privacy}","received_events_url":"https://api.github.com/users/Caged/received_events","type":"User"},"private":false,"html_url":"https://github.com/Caged/javascript-bits","description":"Useful pieces of JavaScript. Some old, some new.","fork":false,"url":"https://api.github.com/repos/Caged/javascript-bits","forks_url":"https://api.github.com/repos/Caged/javascript-bits/forks","keys_url":"https://api.github.com/repos/Caged/javascript-bits/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Caged/javascript-bits/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Caged/javascript-bits/teams","hooks_url":"https://api.github.com/repos/Caged/javascript-bits/hooks","issue_events_url":"https://api.github.com/repos/Caged/javascript-bits/issues/events{/number}","events_url":"https://api.github.com/repos/Caged/javascript-bits/events","assignees_url":"https://api.github.com/repos/Caged/javascript-bits/assignees{/user}","branches_url":"https://api.github.com/repos/Caged/javascript-bits/branches{/branch}","tags_url":"https://api.github.com/repos/Caged/javascript-bits/tags","blobs_url":"https://api.github.com/repos/Caged/javascript-bits/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Caged/javascript-bits/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Caged/javascript-bits/git/refs{/sha}","trees_url":"https://api.github.com/repos/Caged/javascript-bits/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Caged/javascript-bits/statuses/{sha}","languages_url":"https://api.github.com/repos/Caged/javascript-bits/languages","stargazers_url":"https://api.github.com/repos/Caged/javascript-bits/stargazers","contributors_url":"https://api.github.com/repos/Caged/javascript-bits/contributors","subscribers_url":"https://api.github.com/repos/Caged/javascript-bits/subscribers","subscription_url":"https://api.github.com/repos/Caged/javascript-bits/subscription","commits_url":"https://api.github.com/repos/Caged/javascript-bits/commits{/sha}","git_commits_url":"https://api.github.com/repos/Caged/javascript-bits/git/commits{/sha}","comments_url":"https://api.github.com/repos/Caged/javascript-bits/comments{/number}","issue_comment_url":"https://api.github.com/repos/Caged/javascript-bits/issues/comments/{number}","contents_url":"https://api.github.com/repos/Caged/javascript-bits/contents/{+path}","compare_url":"https://api.github.com/repos/Caged/javascript-bits/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Caged/javascript-bits/merges","archive_url":"https://api.github.com/repos/Caged/javascript-bits/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Caged/javascript-bits/downloads","issues_url":"https://api.github.com/repos/Caged/javascript-bits/issues{/number}","pulls_url":"https://api.github.com/repos/Caged/javascript-bits/pulls{/number}","milestones_url":"https://api.github.com/repos/Caged/javascript-bits/milestones{/number}","notifications_url":"https://api.github.com/repos/Caged/javascript-bits/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Caged/javascript-bits/labels{/name}"},{"id":320,"name":"groomlake","full_name":"Caged/groomlake","owner":{"login":"Caged","id":25,"avatar_url":"https://2.gravatar.com/avatar/97c3a8eea9b7eaa9e1e93ea3cd47399f?d=https%3A%2F%2Fidenticons.github.com%2F8e296a067a37563370ded05f5a3bf3ec.png","gravatar_id":"97c3a8eea9b7eaa9e1e93ea3cd47399f","url":"https://api.github.com/users/Caged","html_url":"https://github.com/Caged","followers_url":"https://api.github.com/users/Caged/followers","following_url":"https://api.github.com/users/Caged/following{/other_user}","gists_url":"https://api.github.com/users/Caged/gists{/gist_id}","starred_url":"https://api.github.com/users/Caged/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Caged/subscriptions","organizations_url":"https://api.github.com/users/Caged/orgs","repos_url":"https://api.github.com/users/Caged/repos","events_url":"https://api.github.com/users/Caged/events{/privacy}","received_events_url":"https://api.github.com/users/Caged/received_events","type":"User"},"private":false,"html_url":"https://github.com/Caged/groomlake","description":"Ruby parsers for some Adobe file formats.","fork":false,"url":"https://api.github.com/repos/Caged/groomlake","forks_url":"https://api.github.com/repos/Caged/groomlake/forks","keys_url":"https://api.github.com/repos/Caged/groomlake/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Caged/groomlake/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Caged/groomlake/teams","hooks_url":"https://api.github.com/repos/Caged/groomlake/hooks","issue_events_url":"https://api.github.com/repos/Caged/groomlake/issues/events{/number}","events_url":"https://api.github.com/repos/Caged/groomlake/events","assignees_url":"https://api.github.com/repos/Caged/groomlake/assignees{/user}","branches_url":"https://api.github.com/repos/Caged/groomlake/branches{/branch}","tags_url":"https://api.github.com/repos/Caged/groomlake/tags","blobs_url":"https://api.github.com/repos/Caged/groomlake/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Caged/groomlake/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Caged/groomlake/git/refs{/sha}","trees_url":"https://api.github.com/repos/Caged/groomlake/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Caged/groomlake/statuses/{sha}","languages_url":"https://api.github.com/repos/Caged/groomlake/languages","stargazers_url":"https://api.github.com/repos/Caged/groomlake/stargazers","contributors_url":"https://api.github.com/repos/Caged/groomlake/contributors","subscribers_url":"https://api.github.com/repos/Caged/groomlake/subscribers","subscription_url":"https://api.github.com/repos/Caged/groomlake/subscription","commits_url":"https://api.github.com/repos/Caged/groomlake/commits{/sha}","git_commits_url":"https://api.github.com/repos/Caged/groomlake/git/commits{/sha}","comments_url":"https://api.github.com/repos/Caged/groomlake/comments{/number}","issue_comment_url":"https://api.github.com/repos/Caged/groomlake/issues/comments/{number}","contents_url":"https://api.github.com/repos/Caged/groomlake/contents/{+path}","compare_url":"https://api.github.com/repos/Caged/groomlake/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Caged/groomlake/merges","archive_url":"https://api.github.com/repos/Caged/groomlake/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Caged/groomlake/downloads","issues_url":"https://api.github.com/repos/Caged/groomlake/issues{/number}","pulls_url":"https://api.github.com/repos/Caged/groomlake/pulls{/number}","milestones_url":"https://api.github.com/repos/Caged/groomlake/milestones{/number}","notifications_url":"https://api.github.com/repos/Caged/groomlake/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Caged/groomlake/labels{/name}"},{"id":322,"name":"forgery","full_name":"sevenwire/forgery","owner":{"login":"sevenwire","id":150,"avatar_url":"https://1.gravatar.com/avatar/2d699571a445b9a9205779628fe9a818?d=https%3A%2F%2Fidenticons.github.com%2F7ef605fc8dba5425d6965fbd4c8fbe1f.png","gravatar_id":"2d699571a445b9a9205779628fe9a818","url":"https://api.github.com/users/sevenwire","html_url":"https://github.com/sevenwire","followers_url":"https://api.github.com/users/sevenwire/followers","following_url":"https://api.github.com/users/sevenwire/following{/other_user}","gists_url":"https://api.github.com/users/sevenwire/gists{/gist_id}","starred_url":"https://api.github.com/users/sevenwire/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sevenwire/subscriptions","organizations_url":"https://api.github.com/users/sevenwire/orgs","repos_url":"https://api.github.com/users/sevenwire/repos","events_url":"https://api.github.com/users/sevenwire/events{/privacy}","received_events_url":"https://api.github.com/users/sevenwire/received_events","type":"Organization"},"private":false,"html_url":"https://github.com/sevenwire/forgery","description":"Easy and customizable generation of forged data.","fork":false,"url":"https://api.github.com/repos/sevenwire/forgery","forks_url":"https://api.github.com/repos/sevenwire/forgery/forks","keys_url":"https://api.github.com/repos/sevenwire/forgery/keys{/key_id}","collaborators_url":"https://api.github.com/repos/sevenwire/forgery/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/sevenwire/forgery/teams","hooks_url":"https://api.github.com/repos/sevenwire/forgery/hooks","issue_events_url":"https://api.github.com/repos/sevenwire/forgery/issues/events{/number}","events_url":"https://api.github.com/repos/sevenwire/forgery/events","assignees_url":"https://api.github.com/repos/sevenwire/forgery/assignees{/user}","branches_url":"https://api.github.com/repos/sevenwire/forgery/branches{/branch}","tags_url":"https://api.github.com/repos/sevenwire/forgery/tags","blobs_url":"https://api.github.com/repos/sevenwire/forgery/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/sevenwire/forgery/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/sevenwire/forgery/git/refs{/sha}","trees_url":"https://api.github.com/repos/sevenwire/forgery/git/trees{/sha}","statuses_url":"https://api.github.com/repos/sevenwire/forgery/statuses/{sha}","languages_url":"https://api.github.com/repos/sevenwire/forgery/languages","stargazers_url":"https://api.github.com/repos/sevenwire/forgery/stargazers","contributors_url":"https://api.github.com/repos/sevenwire/forgery/contributors","subscribers_url":"https://api.github.com/repos/sevenwire/forgery/subscribers","subscription_url":"https://api.github.com/repos/sevenwire/forgery/subscription","commits_url":"https://api.github.com/repos/sevenwire/forgery/commits{/sha}","git_commits_url":"https://api.github.com/repos/sevenwire/forgery/git/commits{/sha}","comments_url":"https://api.github.com/repos/sevenwire/forgery/comments{/number}","issue_comment_url":"https://api.github.com/repos/sevenwire/forgery/issues/comments/{number}","contents_url":"https://api.github.com/repos/sevenwire/forgery/contents/{+path}","compare_url":"https://api.github.com/repos/sevenwire/forgery/compare/{base}...{head}","merges_url":"https://api.github.com/repos/sevenwire/forgery/merges","archive_url":"https://api.github.com/repos/sevenwire/forgery/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/sevenwire/forgery/downloads","issues_url":"https://api.github.com/repos/sevenwire/forgery/issues{/number}","pulls_url":"https://api.github.com/repos/sevenwire/forgery/pulls{/number}","milestones_url":"https://api.github.com/repos/sevenwire/forgery/milestones{/number}","notifications_url":"https://api.github.com/repos/sevenwire/forgery/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/sevenwire/forgery/labels{/name}"},{"id":324,"name":"ambitious-sphinx","full_name":"technicalpickles/ambitious-sphinx","owner":{"login":"technicalpickles","id":159,"avatar_url":"https://0.gravatar.com/avatar/1c1aabc1abed5cce37b192dd00f0f28c?d=https%3A%2F%2Fidenticons.github.com%2F140f6969d5213fd0ece03148e62e461e.png","gravatar_id":"1c1aabc1abed5cce37b192dd00f0f28c","url":"https://api.github.com/users/technicalpickles","html_url":"https://github.com/technicalpickles","followers_url":"https://api.github.com/users/technicalpickles/followers","following_url":"https://api.github.com/users/technicalpickles/following{/other_user}","gists_url":"https://api.github.com/users/technicalpickles/gists{/gist_id}","starred_url":"https://api.github.com/users/technicalpickles/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/technicalpickles/subscriptions","organizations_url":"https://api.github.com/users/technicalpickles/orgs","repos_url":"https://api.github.com/users/technicalpickles/repos","events_url":"https://api.github.com/users/technicalpickles/events{/privacy}","received_events_url":"https://api.github.com/users/technicalpickles/received_events","type":"User"},"private":false,"html_url":"https://github.com/technicalpickles/ambitious-sphinx","description":"Ambition adapter for Sphinx","fork":false,"url":"https://api.github.com/repos/technicalpickles/ambitious-sphinx","forks_url":"https://api.github.com/repos/technicalpickles/ambitious-sphinx/forks","keys_url":"https://api.github.com/repos/technicalpickles/ambitious-sphinx/keys{/key_id}","collaborators_url":"https://api.github.com/repos/technicalpickles/ambitious-sphinx/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/technicalpickles/ambitious-sphinx/teams","hooks_url":"https://api.github.com/repos/technicalpickles/ambitious-sphinx/hooks","issue_events_url":"https://api.github.com/repos/technicalpickles/ambitious-sphinx/issues/events{/number}","events_url":"https://api.github.com/repos/technicalpickles/ambitious-sphinx/events","assignees_url":"https://api.github.com/repos/technicalpickles/ambitious-sphinx/assignees{/user}","branches_url":"https://api.github.com/repos/technicalpickles/ambitious-sphinx/branches{/branch}","tags_url":"https://api.github.com/repos/technicalpickles/ambitious-sphinx/tags","blobs_url":"https://api.github.com/repos/technicalpickles/ambitious-sphinx/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/technicalpickles/ambitious-sphinx/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/technicalpickles/ambitious-sphinx/git/refs{/sha}","trees_url":"https://api.github.com/repos/technicalpickles/ambitious-sphinx/git/trees{/sha}","statuses_url":"https://api.github.com/repos/technicalpickles/ambitious-sphinx/statuses/{sha}","languages_url":"https://api.github.com/repos/technicalpickles/ambitious-sphinx/languages","stargazers_url":"https://api.github.com/repos/technicalpickles/ambitious-sphinx/stargazers","contributors_url":"https://api.github.com/repos/technicalpickles/ambitious-sphinx/contributors","subscribers_url":"https://api.github.com/repos/technicalpickles/ambitious-sphinx/subscribers","subscription_url":"https://api.github.com/repos/technicalpickles/ambitious-sphinx/subscription","commits_url":"https://api.github.com/repos/technicalpickles/ambitious-sphinx/commits{/sha}","git_commits_url":"https://api.github.com/repos/technicalpickles/ambitious-sphinx/git/commits{/sha}","comments_url":"https://api.github.com/repos/technicalpickles/ambitious-sphinx/comments{/number}","issue_comment_url":"https://api.github.com/repos/technicalpickles/ambitious-sphinx/issues/comments/{number}","contents_url":"https://api.github.com/repos/technicalpickles/ambitious-sphinx/contents/{+path}","compare_url":"https://api.github.com/repos/technicalpickles/ambitious-sphinx/compare/{base}...{head}","merges_url":"https://api.github.com/repos/technicalpickles/ambitious-sphinx/merges","archive_url":"https://api.github.com/repos/technicalpickles/ambitious-sphinx/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/technicalpickles/ambitious-sphinx/downloads","issues_url":"https://api.github.com/repos/technicalpickles/ambitious-sphinx/issues{/number}","pulls_url":"https://api.github.com/repos/technicalpickles/ambitious-sphinx/pulls{/number}","milestones_url":"https://api.github.com/repos/technicalpickles/ambitious-sphinx/milestones{/number}","notifications_url":"https://api.github.com/repos/technicalpickles/ambitious-sphinx/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/technicalpickles/ambitious-sphinx/labels{/name}"},{"id":329,"name":"soup","full_name":"lazyatom/soup","owner":{"login":"lazyatom","id":145,"avatar_url":"https://0.gravatar.com/avatar/acd62030df551952268e84c8fff26a5b?d=https%3A%2F%2Fidenticons.github.com%2F2b24d495052a8ce66358eb576b8912c8.png","gravatar_id":"acd62030df551952268e84c8fff26a5b","url":"https://api.github.com/users/lazyatom","html_url":"https://github.com/lazyatom","followers_url":"https://api.github.com/users/lazyatom/followers","following_url":"https://api.github.com/users/lazyatom/following{/other_user}","gists_url":"https://api.github.com/users/lazyatom/gists{/gist_id}","starred_url":"https://api.github.com/users/lazyatom/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lazyatom/subscriptions","organizations_url":"https://api.github.com/users/lazyatom/orgs","repos_url":"https://api.github.com/users/lazyatom/repos","events_url":"https://api.github.com/users/lazyatom/events{/privacy}","received_events_url":"https://api.github.com/users/lazyatom/received_events","type":"User"},"private":false,"html_url":"https://github.com/lazyatom/soup","description":"I suppose it's a document database. Or a tuple store. But really, it's just data sloshing around, waiting to be used.","fork":false,"url":"https://api.github.com/repos/lazyatom/soup","forks_url":"https://api.github.com/repos/lazyatom/soup/forks","keys_url":"https://api.github.com/repos/lazyatom/soup/keys{/key_id}","collaborators_url":"https://api.github.com/repos/lazyatom/soup/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/lazyatom/soup/teams","hooks_url":"https://api.github.com/repos/lazyatom/soup/hooks","issue_events_url":"https://api.github.com/repos/lazyatom/soup/issues/events{/number}","events_url":"https://api.github.com/repos/lazyatom/soup/events","assignees_url":"https://api.github.com/repos/lazyatom/soup/assignees{/user}","branches_url":"https://api.github.com/repos/lazyatom/soup/branches{/branch}","tags_url":"https://api.github.com/repos/lazyatom/soup/tags","blobs_url":"https://api.github.com/repos/lazyatom/soup/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/lazyatom/soup/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/lazyatom/soup/git/refs{/sha}","trees_url":"https://api.github.com/repos/lazyatom/soup/git/trees{/sha}","statuses_url":"https://api.github.com/repos/lazyatom/soup/statuses/{sha}","languages_url":"https://api.github.com/repos/lazyatom/soup/languages","stargazers_url":"https://api.github.com/repos/lazyatom/soup/stargazers","contributors_url":"https://api.github.com/repos/lazyatom/soup/contributors","subscribers_url":"https://api.github.com/repos/lazyatom/soup/subscribers","subscription_url":"https://api.github.com/repos/lazyatom/soup/subscription","commits_url":"https://api.github.com/repos/lazyatom/soup/commits{/sha}","git_commits_url":"https://api.github.com/repos/lazyatom/soup/git/commits{/sha}","comments_url":"https://api.github.com/repos/lazyatom/soup/comments{/number}","issue_comment_url":"https://api.github.com/repos/lazyatom/soup/issues/comments/{number}","contents_url":"https://api.github.com/repos/lazyatom/soup/contents/{+path}","compare_url":"https://api.github.com/repos/lazyatom/soup/compare/{base}...{head}","merges_url":"https://api.github.com/repos/lazyatom/soup/merges","archive_url":"https://api.github.com/repos/lazyatom/soup/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/lazyatom/soup/downloads","issues_url":"https://api.github.com/repos/lazyatom/soup/issues{/number}","pulls_url":"https://api.github.com/repos/lazyatom/soup/pulls{/number}","milestones_url":"https://api.github.com/repos/lazyatom/soup/milestones{/number}","notifications_url":"https://api.github.com/repos/lazyatom/soup/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/lazyatom/soup/labels{/name}"},{"id":332,"name":"rails","full_name":"josh/rails","owner":{"login":"josh","id":137,"avatar_url":"https://2.gravatar.com/avatar/bbe5dc8dcf248706525ab76f46185520?d=https%3A%2F%2Fidenticons.github.com%2F3988c7f88ebcb58c6ce932b957b6f332.png","gravatar_id":"bbe5dc8dcf248706525ab76f46185520","url":"https://api.github.com/users/josh","html_url":"https://github.com/josh","followers_url":"https://api.github.com/users/josh/followers","following_url":"https://api.github.com/users/josh/following{/other_user}","gists_url":"https://api.github.com/users/josh/gists{/gist_id}","starred_url":"https://api.github.com/users/josh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/josh/subscriptions","organizations_url":"https://api.github.com/users/josh/orgs","repos_url":"https://api.github.com/users/josh/repos","events_url":"https://api.github.com/users/josh/events{/privacy}","received_events_url":"https://api.github.com/users/josh/received_events","type":"User"},"private":false,"html_url":"https://github.com/josh/rails","description":"Ruby on Rails","fork":true,"url":"https://api.github.com/repos/josh/rails","forks_url":"https://api.github.com/repos/josh/rails/forks","keys_url":"https://api.github.com/repos/josh/rails/keys{/key_id}","collaborators_url":"https://api.github.com/repos/josh/rails/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/josh/rails/teams","hooks_url":"https://api.github.com/repos/josh/rails/hooks","issue_events_url":"https://api.github.com/repos/josh/rails/issues/events{/number}","events_url":"https://api.github.com/repos/josh/rails/events","assignees_url":"https://api.github.com/repos/josh/rails/assignees{/user}","branches_url":"https://api.github.com/repos/josh/rails/branches{/branch}","tags_url":"https://api.github.com/repos/josh/rails/tags","blobs_url":"https://api.github.com/repos/josh/rails/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/josh/rails/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/josh/rails/git/refs{/sha}","trees_url":"https://api.github.com/repos/josh/rails/git/trees{/sha}","statuses_url":"https://api.github.com/repos/josh/rails/statuses/{sha}","languages_url":"https://api.github.com/repos/josh/rails/languages","stargazers_url":"https://api.github.com/repos/josh/rails/stargazers","contributors_url":"https://api.github.com/repos/josh/rails/contributors","subscribers_url":"https://api.github.com/repos/josh/rails/subscribers","subscription_url":"https://api.github.com/repos/josh/rails/subscription","commits_url":"https://api.github.com/repos/josh/rails/commits{/sha}","git_commits_url":"https://api.github.com/repos/josh/rails/git/commits{/sha}","comments_url":"https://api.github.com/repos/josh/rails/comments{/number}","issue_comment_url":"https://api.github.com/repos/josh/rails/issues/comments/{number}","contents_url":"https://api.github.com/repos/josh/rails/contents/{+path}","compare_url":"https://api.github.com/repos/josh/rails/compare/{base}...{head}","merges_url":"https://api.github.com/repos/josh/rails/merges","archive_url":"https://api.github.com/repos/josh/rails/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/josh/rails/downloads","issues_url":"https://api.github.com/repos/josh/rails/issues{/number}","pulls_url":"https://api.github.com/repos/josh/rails/pulls{/number}","milestones_url":"https://api.github.com/repos/josh/rails/milestones{/number}","notifications_url":"https://api.github.com/repos/josh/rails/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/josh/rails/labels{/name}"},{"id":334,"name":"backpacking","full_name":"cdcarter/backpacking","owner":{"login":"cdcarter","id":164,"avatar_url":"https://1.gravatar.com/avatar/96931bfe0c2948f47a98e15ae52e5637?d=https%3A%2F%2Fidenticons.github.com%2Ffa7cdfad1a5aaf8370ebeda47a1ff1c3.png","gravatar_id":"96931bfe0c2948f47a98e15ae52e5637","url":"https://api.github.com/users/cdcarter","html_url":"https://github.com/cdcarter","followers_url":"https://api.github.com/users/cdcarter/followers","following_url":"https://api.github.com/users/cdcarter/following{/other_user}","gists_url":"https://api.github.com/users/cdcarter/gists{/gist_id}","starred_url":"https://api.github.com/users/cdcarter/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cdcarter/subscriptions","organizations_url":"https://api.github.com/users/cdcarter/orgs","repos_url":"https://api.github.com/users/cdcarter/repos","events_url":"https://api.github.com/users/cdcarter/events{/privacy}","received_events_url":"https://api.github.com/users/cdcarter/received_events","type":"User"},"private":false,"html_url":"https://github.com/cdcarter/backpacking","description":"An Io web framework of sorts","fork":false,"url":"https://api.github.com/repos/cdcarter/backpacking","forks_url":"https://api.github.com/repos/cdcarter/backpacking/forks","keys_url":"https://api.github.com/repos/cdcarter/backpacking/keys{/key_id}","collaborators_url":"https://api.github.com/repos/cdcarter/backpacking/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/cdcarter/backpacking/teams","hooks_url":"https://api.github.com/repos/cdcarter/backpacking/hooks","issue_events_url":"https://api.github.com/repos/cdcarter/backpacking/issues/events{/number}","events_url":"https://api.github.com/repos/cdcarter/backpacking/events","assignees_url":"https://api.github.com/repos/cdcarter/backpacking/assignees{/user}","branches_url":"https://api.github.com/repos/cdcarter/backpacking/branches{/branch}","tags_url":"https://api.github.com/repos/cdcarter/backpacking/tags","blobs_url":"https://api.github.com/repos/cdcarter/backpacking/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/cdcarter/backpacking/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/cdcarter/backpacking/git/refs{/sha}","trees_url":"https://api.github.com/repos/cdcarter/backpacking/git/trees{/sha}","statuses_url":"https://api.github.com/repos/cdcarter/backpacking/statuses/{sha}","languages_url":"https://api.github.com/repos/cdcarter/backpacking/languages","stargazers_url":"https://api.github.com/repos/cdcarter/backpacking/stargazers","contributors_url":"https://api.github.com/repos/cdcarter/backpacking/contributors","subscribers_url":"https://api.github.com/repos/cdcarter/backpacking/subscribers","subscription_url":"https://api.github.com/repos/cdcarter/backpacking/subscription","commits_url":"https://api.github.com/repos/cdcarter/backpacking/commits{/sha}","git_commits_url":"https://api.github.com/repos/cdcarter/backpacking/git/commits{/sha}","comments_url":"https://api.github.com/repos/cdcarter/backpacking/comments{/number}","issue_comment_url":"https://api.github.com/repos/cdcarter/backpacking/issues/comments/{number}","contents_url":"https://api.github.com/repos/cdcarter/backpacking/contents/{+path}","compare_url":"https://api.github.com/repos/cdcarter/backpacking/compare/{base}...{head}","merges_url":"https://api.github.com/repos/cdcarter/backpacking/merges","archive_url":"https://api.github.com/repos/cdcarter/backpacking/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/cdcarter/backpacking/downloads","issues_url":"https://api.github.com/repos/cdcarter/backpacking/issues{/number}","pulls_url":"https://api.github.com/repos/cdcarter/backpacking/pulls{/number}","milestones_url":"https://api.github.com/repos/cdcarter/backpacking/milestones{/number}","notifications_url":"https://api.github.com/repos/cdcarter/backpacking/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/cdcarter/backpacking/labels{/name}"},{"id":339,"name":"capsize","full_name":"jnewland/capsize","owner":{"login":"jnewland","id":47,"avatar_url":"https://1.gravatar.com/avatar/f317439da90c3176adc8938bcf5181ff?d=https%3A%2F%2Fidenticons.github.com%2F67c6a1e7ce56d3d6fa748ab6d9af3fd7.png","gravatar_id":"f317439da90c3176adc8938bcf5181ff","url":"https://api.github.com/users/jnewland","html_url":"https://github.com/jnewland","followers_url":"https://api.github.com/users/jnewland/followers","following_url":"https://api.github.com/users/jnewland/following{/other_user}","gists_url":"https://api.github.com/users/jnewland/gists{/gist_id}","starred_url":"https://api.github.com/users/jnewland/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jnewland/subscriptions","organizations_url":"https://api.github.com/users/jnewland/orgs","repos_url":"https://api.github.com/users/jnewland/repos","events_url":"https://api.github.com/users/jnewland/events{/privacy}","received_events_url":"https://api.github.com/users/jnewland/received_events","type":"User"},"private":false,"html_url":"https://github.com/jnewland/capsize","description":"A Capistrano extension for managing and running your app on Amazon EC2.","fork":false,"url":"https://api.github.com/repos/jnewland/capsize","forks_url":"https://api.github.com/repos/jnewland/capsize/forks","keys_url":"https://api.github.com/repos/jnewland/capsize/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jnewland/capsize/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jnewland/capsize/teams","hooks_url":"https://api.github.com/repos/jnewland/capsize/hooks","issue_events_url":"https://api.github.com/repos/jnewland/capsize/issues/events{/number}","events_url":"https://api.github.com/repos/jnewland/capsize/events","assignees_url":"https://api.github.com/repos/jnewland/capsize/assignees{/user}","branches_url":"https://api.github.com/repos/jnewland/capsize/branches{/branch}","tags_url":"https://api.github.com/repos/jnewland/capsize/tags","blobs_url":"https://api.github.com/repos/jnewland/capsize/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jnewland/capsize/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jnewland/capsize/git/refs{/sha}","trees_url":"https://api.github.com/repos/jnewland/capsize/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jnewland/capsize/statuses/{sha}","languages_url":"https://api.github.com/repos/jnewland/capsize/languages","stargazers_url":"https://api.github.com/repos/jnewland/capsize/stargazers","contributors_url":"https://api.github.com/repos/jnewland/capsize/contributors","subscribers_url":"https://api.github.com/repos/jnewland/capsize/subscribers","subscription_url":"https://api.github.com/repos/jnewland/capsize/subscription","commits_url":"https://api.github.com/repos/jnewland/capsize/commits{/sha}","git_commits_url":"https://api.github.com/repos/jnewland/capsize/git/commits{/sha}","comments_url":"https://api.github.com/repos/jnewland/capsize/comments{/number}","issue_comment_url":"https://api.github.com/repos/jnewland/capsize/issues/comments/{number}","contents_url":"https://api.github.com/repos/jnewland/capsize/contents/{+path}","compare_url":"https://api.github.com/repos/jnewland/capsize/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jnewland/capsize/merges","archive_url":"https://api.github.com/repos/jnewland/capsize/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jnewland/capsize/downloads","issues_url":"https://api.github.com/repos/jnewland/capsize/issues{/number}","pulls_url":"https://api.github.com/repos/jnewland/capsize/pulls{/number}","milestones_url":"https://api.github.com/repos/jnewland/capsize/milestones{/number}","notifications_url":"https://api.github.com/repos/jnewland/capsize/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jnewland/capsize/labels{/name}"},{"id":351,"name":"starling","full_name":"bs/starling","owner":{"login":"bs","id":68,"avatar_url":"https://0.gravatar.com/avatar/e9abc07e644756d917e9de193236fd39?d=https%3A%2F%2Fidenticons.github.com%2Fa3f390d88e4c41f2747bfa2f1b5f87db.png","gravatar_id":"e9abc07e644756d917e9de193236fd39","url":"https://api.github.com/users/bs","html_url":"https://github.com/bs","followers_url":"https://api.github.com/users/bs/followers","following_url":"https://api.github.com/users/bs/following{/other_user}","gists_url":"https://api.github.com/users/bs/gists{/gist_id}","starred_url":"https://api.github.com/users/bs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bs/subscriptions","organizations_url":"https://api.github.com/users/bs/orgs","repos_url":"https://api.github.com/users/bs/repos","events_url":"https://api.github.com/users/bs/events{/privacy}","received_events_url":"https://api.github.com/users/bs/received_events","type":"User"},"private":false,"html_url":"https://github.com/bs/starling","description":"Starling Message Queue","fork":false,"url":"https://api.github.com/repos/bs/starling","forks_url":"https://api.github.com/repos/bs/starling/forks","keys_url":"https://api.github.com/repos/bs/starling/keys{/key_id}","collaborators_url":"https://api.github.com/repos/bs/starling/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/bs/starling/teams","hooks_url":"https://api.github.com/repos/bs/starling/hooks","issue_events_url":"https://api.github.com/repos/bs/starling/issues/events{/number}","events_url":"https://api.github.com/repos/bs/starling/events","assignees_url":"https://api.github.com/repos/bs/starling/assignees{/user}","branches_url":"https://api.github.com/repos/bs/starling/branches{/branch}","tags_url":"https://api.github.com/repos/bs/starling/tags","blobs_url":"https://api.github.com/repos/bs/starling/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/bs/starling/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/bs/starling/git/refs{/sha}","trees_url":"https://api.github.com/repos/bs/starling/git/trees{/sha}","statuses_url":"https://api.github.com/repos/bs/starling/statuses/{sha}","languages_url":"https://api.github.com/repos/bs/starling/languages","stargazers_url":"https://api.github.com/repos/bs/starling/stargazers","contributors_url":"https://api.github.com/repos/bs/starling/contributors","subscribers_url":"https://api.github.com/repos/bs/starling/subscribers","subscription_url":"https://api.github.com/repos/bs/starling/subscription","commits_url":"https://api.github.com/repos/bs/starling/commits{/sha}","git_commits_url":"https://api.github.com/repos/bs/starling/git/commits{/sha}","comments_url":"https://api.github.com/repos/bs/starling/comments{/number}","issue_comment_url":"https://api.github.com/repos/bs/starling/issues/comments/{number}","contents_url":"https://api.github.com/repos/bs/starling/contents/{+path}","compare_url":"https://api.github.com/repos/bs/starling/compare/{base}...{head}","merges_url":"https://api.github.com/repos/bs/starling/merges","archive_url":"https://api.github.com/repos/bs/starling/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/bs/starling/downloads","issues_url":"https://api.github.com/repos/bs/starling/issues{/number}","pulls_url":"https://api.github.com/repos/bs/starling/pulls{/number}","milestones_url":"https://api.github.com/repos/bs/starling/milestones{/number}","notifications_url":"https://api.github.com/repos/bs/starling/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/bs/starling/labels{/name}"},{"id":360,"name":"ape","full_name":"sr/ape","owner":{"login":"sr","id":90,"avatar_url":"https://1.gravatar.com/avatar/8e0adf6f8274375b90a180d256d73bad?d=https%3A%2F%2Fidenticons.github.com%2F8613985ec49eb8f757ae6439e879bb2a.png","gravatar_id":"8e0adf6f8274375b90a180d256d73bad","url":"https://api.github.com/users/sr","html_url":"https://github.com/sr","followers_url":"https://api.github.com/users/sr/followers","following_url":"https://api.github.com/users/sr/following{/other_user}","gists_url":"https://api.github.com/users/sr/gists{/gist_id}","starred_url":"https://api.github.com/users/sr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sr/subscriptions","organizations_url":"https://api.github.com/users/sr/orgs","repos_url":"https://api.github.com/users/sr/repos","events_url":"https://api.github.com/users/sr/events{/privacy}","received_events_url":"https://api.github.com/users/sr/received_events","type":"User"},"private":false,"html_url":"https://github.com/sr/ape","description":"The Atom Protocol Exerciser","fork":false,"url":"https://api.github.com/repos/sr/ape","forks_url":"https://api.github.com/repos/sr/ape/forks","keys_url":"https://api.github.com/repos/sr/ape/keys{/key_id}","collaborators_url":"https://api.github.com/repos/sr/ape/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/sr/ape/teams","hooks_url":"https://api.github.com/repos/sr/ape/hooks","issue_events_url":"https://api.github.com/repos/sr/ape/issues/events{/number}","events_url":"https://api.github.com/repos/sr/ape/events","assignees_url":"https://api.github.com/repos/sr/ape/assignees{/user}","branches_url":"https://api.github.com/repos/sr/ape/branches{/branch}","tags_url":"https://api.github.com/repos/sr/ape/tags","blobs_url":"https://api.github.com/repos/sr/ape/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/sr/ape/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/sr/ape/git/refs{/sha}","trees_url":"https://api.github.com/repos/sr/ape/git/trees{/sha}","statuses_url":"https://api.github.com/repos/sr/ape/statuses/{sha}","languages_url":"https://api.github.com/repos/sr/ape/languages","stargazers_url":"https://api.github.com/repos/sr/ape/stargazers","contributors_url":"https://api.github.com/repos/sr/ape/contributors","subscribers_url":"https://api.github.com/repos/sr/ape/subscribers","subscription_url":"https://api.github.com/repos/sr/ape/subscription","commits_url":"https://api.github.com/repos/sr/ape/commits{/sha}","git_commits_url":"https://api.github.com/repos/sr/ape/git/commits{/sha}","comments_url":"https://api.github.com/repos/sr/ape/comments{/number}","issue_comment_url":"https://api.github.com/repos/sr/ape/issues/comments/{number}","contents_url":"https://api.github.com/repos/sr/ape/contents/{+path}","compare_url":"https://api.github.com/repos/sr/ape/compare/{base}...{head}","merges_url":"https://api.github.com/repos/sr/ape/merges","archive_url":"https://api.github.com/repos/sr/ape/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/sr/ape/downloads","issues_url":"https://api.github.com/repos/sr/ape/issues{/number}","pulls_url":"https://api.github.com/repos/sr/ape/pulls{/number}","milestones_url":"https://api.github.com/repos/sr/ape/milestones{/number}","notifications_url":"https://api.github.com/repos/sr/ape/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/sr/ape/labels{/name}"},{"id":362,"name":"awesomeness","full_name":"collectiveidea/awesomeness","owner":{"login":"collectiveidea","id":128,"avatar_url":"https://2.gravatar.com/avatar/13ff8dc8c2bf2a4752816e1e3f201a05?d=https%3A%2F%2Fidenticons.github.com%2F76dc611d6ebaafc66cc0879c71b5db5c.png","gravatar_id":"13ff8dc8c2bf2a4752816e1e3f201a05","url":"https://api.github.com/users/collectiveidea","html_url":"https://github.com/collectiveidea","followers_url":"https://api.github.com/users/collectiveidea/followers","following_url":"https://api.github.com/users/collectiveidea/following{/other_user}","gists_url":"https://api.github.com/users/collectiveidea/gists{/gist_id}","starred_url":"https://api.github.com/users/collectiveidea/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collectiveidea/subscriptions","organizations_url":"https://api.github.com/users/collectiveidea/orgs","repos_url":"https://api.github.com/users/collectiveidea/repos","events_url":"https://api.github.com/users/collectiveidea/events{/privacy}","received_events_url":"https://api.github.com/users/collectiveidea/received_events","type":"Organization"},"private":false,"html_url":"https://github.com/collectiveidea/awesomeness","description":"Collective Idea's Awesomeness. A collection of useful Rails bits and pieces.","fork":false,"url":"https://api.github.com/repos/collectiveidea/awesomeness","forks_url":"https://api.github.com/repos/collectiveidea/awesomeness/forks","keys_url":"https://api.github.com/repos/collectiveidea/awesomeness/keys{/key_id}","collaborators_url":"https://api.github.com/repos/collectiveidea/awesomeness/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/collectiveidea/awesomeness/teams","hooks_url":"https://api.github.com/repos/collectiveidea/awesomeness/hooks","issue_events_url":"https://api.github.com/repos/collectiveidea/awesomeness/issues/events{/number}","events_url":"https://api.github.com/repos/collectiveidea/awesomeness/events","assignees_url":"https://api.github.com/repos/collectiveidea/awesomeness/assignees{/user}","branches_url":"https://api.github.com/repos/collectiveidea/awesomeness/branches{/branch}","tags_url":"https://api.github.com/repos/collectiveidea/awesomeness/tags","blobs_url":"https://api.github.com/repos/collectiveidea/awesomeness/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/collectiveidea/awesomeness/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/collectiveidea/awesomeness/git/refs{/sha}","trees_url":"https://api.github.com/repos/collectiveidea/awesomeness/git/trees{/sha}","statuses_url":"https://api.github.com/repos/collectiveidea/awesomeness/statuses/{sha}","languages_url":"https://api.github.com/repos/collectiveidea/awesomeness/languages","stargazers_url":"https://api.github.com/repos/collectiveidea/awesomeness/stargazers","contributors_url":"https://api.github.com/repos/collectiveidea/awesomeness/contributors","subscribers_url":"https://api.github.com/repos/collectiveidea/awesomeness/subscribers","subscription_url":"https://api.github.com/repos/collectiveidea/awesomeness/subscription","commits_url":"https://api.github.com/repos/collectiveidea/awesomeness/commits{/sha}","git_commits_url":"https://api.github.com/repos/collectiveidea/awesomeness/git/commits{/sha}","comments_url":"https://api.github.com/repos/collectiveidea/awesomeness/comments{/number}","issue_comment_url":"https://api.github.com/repos/collectiveidea/awesomeness/issues/comments/{number}","contents_url":"https://api.github.com/repos/collectiveidea/awesomeness/contents/{+path}","compare_url":"https://api.github.com/repos/collectiveidea/awesomeness/compare/{base}...{head}","merges_url":"https://api.github.com/repos/collectiveidea/awesomeness/merges","archive_url":"https://api.github.com/repos/collectiveidea/awesomeness/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/collectiveidea/awesomeness/downloads","issues_url":"https://api.github.com/repos/collectiveidea/awesomeness/issues{/number}","pulls_url":"https://api.github.com/repos/collectiveidea/awesomeness/pulls{/number}","milestones_url":"https://api.github.com/repos/collectiveidea/awesomeness/milestones{/number}","notifications_url":"https://api.github.com/repos/collectiveidea/awesomeness/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/collectiveidea/awesomeness/labels{/name}"},{"id":363,"name":"audited","full_name":"collectiveidea/audited","owner":{"login":"collectiveidea","id":128,"avatar_url":"https://2.gravatar.com/avatar/13ff8dc8c2bf2a4752816e1e3f201a05?d=https%3A%2F%2Fidenticons.github.com%2F76dc611d6ebaafc66cc0879c71b5db5c.png","gravatar_id":"13ff8dc8c2bf2a4752816e1e3f201a05","url":"https://api.github.com/users/collectiveidea","html_url":"https://github.com/collectiveidea","followers_url":"https://api.github.com/users/collectiveidea/followers","following_url":"https://api.github.com/users/collectiveidea/following{/other_user}","gists_url":"https://api.github.com/users/collectiveidea/gists{/gist_id}","starred_url":"https://api.github.com/users/collectiveidea/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collectiveidea/subscriptions","organizations_url":"https://api.github.com/users/collectiveidea/orgs","repos_url":"https://api.github.com/users/collectiveidea/repos","events_url":"https://api.github.com/users/collectiveidea/events{/privacy}","received_events_url":"https://api.github.com/users/collectiveidea/received_events","type":"Organization"},"private":false,"html_url":"https://github.com/collectiveidea/audited","description":"Audited (formerly acts_as_audited) is an ORM extension that logs all changes to your Rails models.","fork":false,"url":"https://api.github.com/repos/collectiveidea/audited","forks_url":"https://api.github.com/repos/collectiveidea/audited/forks","keys_url":"https://api.github.com/repos/collectiveidea/audited/keys{/key_id}","collaborators_url":"https://api.github.com/repos/collectiveidea/audited/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/collectiveidea/audited/teams","hooks_url":"https://api.github.com/repos/collectiveidea/audited/hooks","issue_events_url":"https://api.github.com/repos/collectiveidea/audited/issues/events{/number}","events_url":"https://api.github.com/repos/collectiveidea/audited/events","assignees_url":"https://api.github.com/repos/collectiveidea/audited/assignees{/user}","branches_url":"https://api.github.com/repos/collectiveidea/audited/branches{/branch}","tags_url":"https://api.github.com/repos/collectiveidea/audited/tags","blobs_url":"https://api.github.com/repos/collectiveidea/audited/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/collectiveidea/audited/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/collectiveidea/audited/git/refs{/sha}","trees_url":"https://api.github.com/repos/collectiveidea/audited/git/trees{/sha}","statuses_url":"https://api.github.com/repos/collectiveidea/audited/statuses/{sha}","languages_url":"https://api.github.com/repos/collectiveidea/audited/languages","stargazers_url":"https://api.github.com/repos/collectiveidea/audited/stargazers","contributors_url":"https://api.github.com/repos/collectiveidea/audited/contributors","subscribers_url":"https://api.github.com/repos/collectiveidea/audited/subscribers","subscription_url":"https://api.github.com/repos/collectiveidea/audited/subscription","commits_url":"https://api.github.com/repos/collectiveidea/audited/commits{/sha}","git_commits_url":"https://api.github.com/repos/collectiveidea/audited/git/commits{/sha}","comments_url":"https://api.github.com/repos/collectiveidea/audited/comments{/number}","issue_comment_url":"https://api.github.com/repos/collectiveidea/audited/issues/comments/{number}","contents_url":"https://api.github.com/repos/collectiveidea/audited/contents/{+path}","compare_url":"https://api.github.com/repos/collectiveidea/audited/compare/{base}...{head}","merges_url":"https://api.github.com/repos/collectiveidea/audited/merges","archive_url":"https://api.github.com/repos/collectiveidea/audited/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/collectiveidea/audited/downloads","issues_url":"https://api.github.com/repos/collectiveidea/audited/issues{/number}","pulls_url":"https://api.github.com/repos/collectiveidea/audited/pulls{/number}","milestones_url":"https://api.github.com/repos/collectiveidea/audited/milestones{/number}","notifications_url":"https://api.github.com/repos/collectiveidea/audited/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/collectiveidea/audited/labels{/name}"},{"id":364,"name":"acts_as_geocodable","full_name":"collectiveidea/acts_as_geocodable","owner":{"login":"collectiveidea","id":128,"avatar_url":"https://2.gravatar.com/avatar/13ff8dc8c2bf2a4752816e1e3f201a05?d=https%3A%2F%2Fidenticons.github.com%2F76dc611d6ebaafc66cc0879c71b5db5c.png","gravatar_id":"13ff8dc8c2bf2a4752816e1e3f201a05","url":"https://api.github.com/users/collectiveidea","html_url":"https://github.com/collectiveidea","followers_url":"https://api.github.com/users/collectiveidea/followers","following_url":"https://api.github.com/users/collectiveidea/following{/other_user}","gists_url":"https://api.github.com/users/collectiveidea/gists{/gist_id}","starred_url":"https://api.github.com/users/collectiveidea/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collectiveidea/subscriptions","organizations_url":"https://api.github.com/users/collectiveidea/orgs","repos_url":"https://api.github.com/users/collectiveidea/repos","events_url":"https://api.github.com/users/collectiveidea/events{/privacy}","received_events_url":"https://api.github.com/users/collectiveidea/received_events","type":"Organization"},"private":false,"html_url":"https://github.com/collectiveidea/acts_as_geocodable","description":"A Rails plugin that makes your applications geo-aware.","fork":false,"url":"https://api.github.com/repos/collectiveidea/acts_as_geocodable","forks_url":"https://api.github.com/repos/collectiveidea/acts_as_geocodable/forks","keys_url":"https://api.github.com/repos/collectiveidea/acts_as_geocodable/keys{/key_id}","collaborators_url":"https://api.github.com/repos/collectiveidea/acts_as_geocodable/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/collectiveidea/acts_as_geocodable/teams","hooks_url":"https://api.github.com/repos/collectiveidea/acts_as_geocodable/hooks","issue_events_url":"https://api.github.com/repos/collectiveidea/acts_as_geocodable/issues/events{/number}","events_url":"https://api.github.com/repos/collectiveidea/acts_as_geocodable/events","assignees_url":"https://api.github.com/repos/collectiveidea/acts_as_geocodable/assignees{/user}","branches_url":"https://api.github.com/repos/collectiveidea/acts_as_geocodable/branches{/branch}","tags_url":"https://api.github.com/repos/collectiveidea/acts_as_geocodable/tags","blobs_url":"https://api.github.com/repos/collectiveidea/acts_as_geocodable/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/collectiveidea/acts_as_geocodable/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/collectiveidea/acts_as_geocodable/git/refs{/sha}","trees_url":"https://api.github.com/repos/collectiveidea/acts_as_geocodable/git/trees{/sha}","statuses_url":"https://api.github.com/repos/collectiveidea/acts_as_geocodable/statuses/{sha}","languages_url":"https://api.github.com/repos/collectiveidea/acts_as_geocodable/languages","stargazers_url":"https://api.github.com/repos/collectiveidea/acts_as_geocodable/stargazers","contributors_url":"https://api.github.com/repos/collectiveidea/acts_as_geocodable/contributors","subscribers_url":"https://api.github.com/repos/collectiveidea/acts_as_geocodable/subscribers","subscription_url":"https://api.github.com/repos/collectiveidea/acts_as_geocodable/subscription","commits_url":"https://api.github.com/repos/collectiveidea/acts_as_geocodable/commits{/sha}","git_commits_url":"https://api.github.com/repos/collectiveidea/acts_as_geocodable/git/commits{/sha}","comments_url":"https://api.github.com/repos/collectiveidea/acts_as_geocodable/comments{/number}","issue_comment_url":"https://api.github.com/repos/collectiveidea/acts_as_geocodable/issues/comments/{number}","contents_url":"https://api.github.com/repos/collectiveidea/acts_as_geocodable/contents/{+path}","compare_url":"https://api.github.com/repos/collectiveidea/acts_as_geocodable/compare/{base}...{head}","merges_url":"https://api.github.com/repos/collectiveidea/acts_as_geocodable/merges","archive_url":"https://api.github.com/repos/collectiveidea/acts_as_geocodable/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/collectiveidea/acts_as_geocodable/downloads","issues_url":"https://api.github.com/repos/collectiveidea/acts_as_geocodable/issues{/number}","pulls_url":"https://api.github.com/repos/collectiveidea/acts_as_geocodable/pulls{/number}","milestones_url":"https://api.github.com/repos/collectiveidea/acts_as_geocodable/milestones{/number}","notifications_url":"https://api.github.com/repos/collectiveidea/acts_as_geocodable/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/collectiveidea/acts_as_geocodable/labels{/name}"}] + diff --git a/lib/github/tests/ReplayData/Github.testGetReposSince.txt b/lib/github/tests/ReplayData/Github.testGetReposSince.txt new file mode 100644 index 0000000000..476baddfba --- /dev/null +++ b/lib/github/tests/ReplayData/Github.testGetReposSince.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repositories?since=1000 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4998'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('cache-control', 'max-age=0, private, must-revalidate'), ('vary', 'Accept-Encoding'), ('content-length', '399618'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="first"'), ('etag', '"12e839cbce49c8f05e4f6dcb7a3889f0"'), ('access-control-allow-credentials', 'true'), ('date', 'Wed, 21 Aug 2013 19:48:29 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1377117459')] +[{"id":1008,"name":"jquery-humanize-messages-plugin","full_name":"andykent/jquery-humanize-messages-plugin","owner":{"login":"andykent","id":614,"avatar_url":"https://0.gravatar.com/avatar/c296fd4ef131939f1aa09b8294bbd08c?d=https%3A%2F%2Fidenticons.github.com%2F851ddf5058cf22df63d3344ad89919cf.png","gravatar_id":"c296fd4ef131939f1aa09b8294bbd08c","url":"https://api.github.com/users/andykent","html_url":"https://github.com/andykent","followers_url":"https://api.github.com/users/andykent/followers","following_url":"https://api.github.com/users/andykent/following{/other_user}","gists_url":"https://api.github.com/users/andykent/gists{/gist_id}","starred_url":"https://api.github.com/users/andykent/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/andykent/subscriptions","organizations_url":"https://api.github.com/users/andykent/orgs","repos_url":"https://api.github.com/users/andykent/repos","events_url":"https://api.github.com/users/andykent/events{/privacy}","received_events_url":"https://api.github.com/users/andykent/received_events","type":"User"},"private":false,"html_url":"https://github.com/andykent/jquery-humanize-messages-plugin","description":"A jQuery port of the humanized dialog display technique. (http://www.humanized.com/weblog/2006/09/11/monolog_boxes_and_transparent_messages/)","fork":false,"url":"https://api.github.com/repos/andykent/jquery-humanize-messages-plugin","forks_url":"https://api.github.com/repos/andykent/jquery-humanize-messages-plugin/forks","keys_url":"https://api.github.com/repos/andykent/jquery-humanize-messages-plugin/keys{/key_id}","collaborators_url":"https://api.github.com/repos/andykent/jquery-humanize-messages-plugin/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/andykent/jquery-humanize-messages-plugin/teams","hooks_url":"https://api.github.com/repos/andykent/jquery-humanize-messages-plugin/hooks","issue_events_url":"https://api.github.com/repos/andykent/jquery-humanize-messages-plugin/issues/events{/number}","events_url":"https://api.github.com/repos/andykent/jquery-humanize-messages-plugin/events","assignees_url":"https://api.github.com/repos/andykent/jquery-humanize-messages-plugin/assignees{/user}","branches_url":"https://api.github.com/repos/andykent/jquery-humanize-messages-plugin/branches{/branch}","tags_url":"https://api.github.com/repos/andykent/jquery-humanize-messages-plugin/tags","blobs_url":"https://api.github.com/repos/andykent/jquery-humanize-messages-plugin/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/andykent/jquery-humanize-messages-plugin/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/andykent/jquery-humanize-messages-plugin/git/refs{/sha}","trees_url":"https://api.github.com/repos/andykent/jquery-humanize-messages-plugin/git/trees{/sha}","statuses_url":"https://api.github.com/repos/andykent/jquery-humanize-messages-plugin/statuses/{sha}","languages_url":"https://api.github.com/repos/andykent/jquery-humanize-messages-plugin/languages","stargazers_url":"https://api.github.com/repos/andykent/jquery-humanize-messages-plugin/stargazers","contributors_url":"https://api.github.com/repos/andykent/jquery-humanize-messages-plugin/contributors","subscribers_url":"https://api.github.com/repos/andykent/jquery-humanize-messages-plugin/subscribers","subscription_url":"https://api.github.com/repos/andykent/jquery-humanize-messages-plugin/subscription","commits_url":"https://api.github.com/repos/andykent/jquery-humanize-messages-plugin/commits{/sha}","git_commits_url":"https://api.github.com/repos/andykent/jquery-humanize-messages-plugin/git/commits{/sha}","comments_url":"https://api.github.com/repos/andykent/jquery-humanize-messages-plugin/comments{/number}","issue_comment_url":"https://api.github.com/repos/andykent/jquery-humanize-messages-plugin/issues/comments/{number}","contents_url":"https://api.github.com/repos/andykent/jquery-humanize-messages-plugin/contents/{+path}","compare_url":"https://api.github.com/repos/andykent/jquery-humanize-messages-plugin/compare/{base}...{head}","merges_url":"https://api.github.com/repos/andykent/jquery-humanize-messages-plugin/merges","archive_url":"https://api.github.com/repos/andykent/jquery-humanize-messages-plugin/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/andykent/jquery-humanize-messages-plugin/downloads","issues_url":"https://api.github.com/repos/andykent/jquery-humanize-messages-plugin/issues{/number}","pulls_url":"https://api.github.com/repos/andykent/jquery-humanize-messages-plugin/pulls{/number}","milestones_url":"https://api.github.com/repos/andykent/jquery-humanize-messages-plugin/milestones{/number}","notifications_url":"https://api.github.com/repos/andykent/jquery-humanize-messages-plugin/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/andykent/jquery-humanize-messages-plugin/labels{/name}"},{"id":1010,"name":"4slicer","full_name":"avalade/4slicer","owner":{"login":"avalade","id":449,"avatar_url":"https://1.gravatar.com/avatar/7cd8f51abfade91b3e57af0887d69063?d=https%3A%2F%2Fidenticons.github.com%2Fd61e4bbd6393c9111e6526ea173a7c8b.png","gravatar_id":"7cd8f51abfade91b3e57af0887d69063","url":"https://api.github.com/users/avalade","html_url":"https://github.com/avalade","followers_url":"https://api.github.com/users/avalade/followers","following_url":"https://api.github.com/users/avalade/following{/other_user}","gists_url":"https://api.github.com/users/avalade/gists{/gist_id}","starred_url":"https://api.github.com/users/avalade/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/avalade/subscriptions","organizations_url":"https://api.github.com/users/avalade/orgs","repos_url":"https://api.github.com/users/avalade/repos","events_url":"https://api.github.com/users/avalade/events{/privacy}","received_events_url":"https://api.github.com/users/avalade/received_events","type":"User"},"private":false,"html_url":"https://github.com/avalade/4slicer","description":"","fork":false,"url":"https://api.github.com/repos/avalade/4slicer","forks_url":"https://api.github.com/repos/avalade/4slicer/forks","keys_url":"https://api.github.com/repos/avalade/4slicer/keys{/key_id}","collaborators_url":"https://api.github.com/repos/avalade/4slicer/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/avalade/4slicer/teams","hooks_url":"https://api.github.com/repos/avalade/4slicer/hooks","issue_events_url":"https://api.github.com/repos/avalade/4slicer/issues/events{/number}","events_url":"https://api.github.com/repos/avalade/4slicer/events","assignees_url":"https://api.github.com/repos/avalade/4slicer/assignees{/user}","branches_url":"https://api.github.com/repos/avalade/4slicer/branches{/branch}","tags_url":"https://api.github.com/repos/avalade/4slicer/tags","blobs_url":"https://api.github.com/repos/avalade/4slicer/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/avalade/4slicer/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/avalade/4slicer/git/refs{/sha}","trees_url":"https://api.github.com/repos/avalade/4slicer/git/trees{/sha}","statuses_url":"https://api.github.com/repos/avalade/4slicer/statuses/{sha}","languages_url":"https://api.github.com/repos/avalade/4slicer/languages","stargazers_url":"https://api.github.com/repos/avalade/4slicer/stargazers","contributors_url":"https://api.github.com/repos/avalade/4slicer/contributors","subscribers_url":"https://api.github.com/repos/avalade/4slicer/subscribers","subscription_url":"https://api.github.com/repos/avalade/4slicer/subscription","commits_url":"https://api.github.com/repos/avalade/4slicer/commits{/sha}","git_commits_url":"https://api.github.com/repos/avalade/4slicer/git/commits{/sha}","comments_url":"https://api.github.com/repos/avalade/4slicer/comments{/number}","issue_comment_url":"https://api.github.com/repos/avalade/4slicer/issues/comments/{number}","contents_url":"https://api.github.com/repos/avalade/4slicer/contents/{+path}","compare_url":"https://api.github.com/repos/avalade/4slicer/compare/{base}...{head}","merges_url":"https://api.github.com/repos/avalade/4slicer/merges","archive_url":"https://api.github.com/repos/avalade/4slicer/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/avalade/4slicer/downloads","issues_url":"https://api.github.com/repos/avalade/4slicer/issues{/number}","pulls_url":"https://api.github.com/repos/avalade/4slicer/pulls{/number}","milestones_url":"https://api.github.com/repos/avalade/4slicer/milestones{/number}","notifications_url":"https://api.github.com/repos/avalade/4slicer/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/avalade/4slicer/labels{/name}"},{"id":1015,"name":"fixture-scenarios","full_name":"mojombo/fixture-scenarios","owner":{"login":"mojombo","id":1,"avatar_url":"https://2.gravatar.com/avatar/25c7c18223fb42a4c6ae1c8db6f50f9b?d=https%3A%2F%2Fidenticons.github.com%2Fc4ca4238a0b923820dcc509a6f75849b.png","gravatar_id":"25c7c18223fb42a4c6ae1c8db6f50f9b","url":"https://api.github.com/users/mojombo","html_url":"https://github.com/mojombo","followers_url":"https://api.github.com/users/mojombo/followers","following_url":"https://api.github.com/users/mojombo/following{/other_user}","gists_url":"https://api.github.com/users/mojombo/gists{/gist_id}","starred_url":"https://api.github.com/users/mojombo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mojombo/subscriptions","organizations_url":"https://api.github.com/users/mojombo/orgs","repos_url":"https://api.github.com/users/mojombo/repos","events_url":"https://api.github.com/users/mojombo/events{/privacy}","received_events_url":"https://api.github.com/users/mojombo/received_events","type":"User"},"private":false,"html_url":"https://github.com/mojombo/fixture-scenarios","description":"This plugin allows you to create 'scenarios' which are collections of fixtures and ruby files that represent a context against which you can run tests.","fork":false,"url":"https://api.github.com/repos/mojombo/fixture-scenarios","forks_url":"https://api.github.com/repos/mojombo/fixture-scenarios/forks","keys_url":"https://api.github.com/repos/mojombo/fixture-scenarios/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mojombo/fixture-scenarios/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mojombo/fixture-scenarios/teams","hooks_url":"https://api.github.com/repos/mojombo/fixture-scenarios/hooks","issue_events_url":"https://api.github.com/repos/mojombo/fixture-scenarios/issues/events{/number}","events_url":"https://api.github.com/repos/mojombo/fixture-scenarios/events","assignees_url":"https://api.github.com/repos/mojombo/fixture-scenarios/assignees{/user}","branches_url":"https://api.github.com/repos/mojombo/fixture-scenarios/branches{/branch}","tags_url":"https://api.github.com/repos/mojombo/fixture-scenarios/tags","blobs_url":"https://api.github.com/repos/mojombo/fixture-scenarios/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mojombo/fixture-scenarios/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mojombo/fixture-scenarios/git/refs{/sha}","trees_url":"https://api.github.com/repos/mojombo/fixture-scenarios/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mojombo/fixture-scenarios/statuses/{sha}","languages_url":"https://api.github.com/repos/mojombo/fixture-scenarios/languages","stargazers_url":"https://api.github.com/repos/mojombo/fixture-scenarios/stargazers","contributors_url":"https://api.github.com/repos/mojombo/fixture-scenarios/contributors","subscribers_url":"https://api.github.com/repos/mojombo/fixture-scenarios/subscribers","subscription_url":"https://api.github.com/repos/mojombo/fixture-scenarios/subscription","commits_url":"https://api.github.com/repos/mojombo/fixture-scenarios/commits{/sha}","git_commits_url":"https://api.github.com/repos/mojombo/fixture-scenarios/git/commits{/sha}","comments_url":"https://api.github.com/repos/mojombo/fixture-scenarios/comments{/number}","issue_comment_url":"https://api.github.com/repos/mojombo/fixture-scenarios/issues/comments/{number}","contents_url":"https://api.github.com/repos/mojombo/fixture-scenarios/contents/{+path}","compare_url":"https://api.github.com/repos/mojombo/fixture-scenarios/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mojombo/fixture-scenarios/merges","archive_url":"https://api.github.com/repos/mojombo/fixture-scenarios/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mojombo/fixture-scenarios/downloads","issues_url":"https://api.github.com/repos/mojombo/fixture-scenarios/issues{/number}","pulls_url":"https://api.github.com/repos/mojombo/fixture-scenarios/pulls{/number}","milestones_url":"https://api.github.com/repos/mojombo/fixture-scenarios/milestones{/number}","notifications_url":"https://api.github.com/repos/mojombo/fixture-scenarios/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mojombo/fixture-scenarios/labels{/name}"},{"id":1016,"name":"mongrel_proctitle","full_name":"rtomayko/mongrel_proctitle","owner":{"login":"rtomayko","id":404,"avatar_url":"https://0.gravatar.com/avatar/abfc88b96ae18c85ba7aac3bded2ec5e?d=https%3A%2F%2Fidenticons.github.com%2F4f4adcbf8c6f66dcfc8a3282ac2bf10a.png","gravatar_id":"abfc88b96ae18c85ba7aac3bded2ec5e","url":"https://api.github.com/users/rtomayko","html_url":"https://github.com/rtomayko","followers_url":"https://api.github.com/users/rtomayko/followers","following_url":"https://api.github.com/users/rtomayko/following{/other_user}","gists_url":"https://api.github.com/users/rtomayko/gists{/gist_id}","starred_url":"https://api.github.com/users/rtomayko/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rtomayko/subscriptions","organizations_url":"https://api.github.com/users/rtomayko/orgs","repos_url":"https://api.github.com/users/rtomayko/repos","events_url":"https://api.github.com/users/rtomayko/events{/privacy}","received_events_url":"https://api.github.com/users/rtomayko/received_events","type":"User"},"private":false,"html_url":"https://github.com/rtomayko/mongrel_proctitle","description":"Process title support for Mongrel (GemPlugin)","fork":false,"url":"https://api.github.com/repos/rtomayko/mongrel_proctitle","forks_url":"https://api.github.com/repos/rtomayko/mongrel_proctitle/forks","keys_url":"https://api.github.com/repos/rtomayko/mongrel_proctitle/keys{/key_id}","collaborators_url":"https://api.github.com/repos/rtomayko/mongrel_proctitle/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/rtomayko/mongrel_proctitle/teams","hooks_url":"https://api.github.com/repos/rtomayko/mongrel_proctitle/hooks","issue_events_url":"https://api.github.com/repos/rtomayko/mongrel_proctitle/issues/events{/number}","events_url":"https://api.github.com/repos/rtomayko/mongrel_proctitle/events","assignees_url":"https://api.github.com/repos/rtomayko/mongrel_proctitle/assignees{/user}","branches_url":"https://api.github.com/repos/rtomayko/mongrel_proctitle/branches{/branch}","tags_url":"https://api.github.com/repos/rtomayko/mongrel_proctitle/tags","blobs_url":"https://api.github.com/repos/rtomayko/mongrel_proctitle/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/rtomayko/mongrel_proctitle/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/rtomayko/mongrel_proctitle/git/refs{/sha}","trees_url":"https://api.github.com/repos/rtomayko/mongrel_proctitle/git/trees{/sha}","statuses_url":"https://api.github.com/repos/rtomayko/mongrel_proctitle/statuses/{sha}","languages_url":"https://api.github.com/repos/rtomayko/mongrel_proctitle/languages","stargazers_url":"https://api.github.com/repos/rtomayko/mongrel_proctitle/stargazers","contributors_url":"https://api.github.com/repos/rtomayko/mongrel_proctitle/contributors","subscribers_url":"https://api.github.com/repos/rtomayko/mongrel_proctitle/subscribers","subscription_url":"https://api.github.com/repos/rtomayko/mongrel_proctitle/subscription","commits_url":"https://api.github.com/repos/rtomayko/mongrel_proctitle/commits{/sha}","git_commits_url":"https://api.github.com/repos/rtomayko/mongrel_proctitle/git/commits{/sha}","comments_url":"https://api.github.com/repos/rtomayko/mongrel_proctitle/comments{/number}","issue_comment_url":"https://api.github.com/repos/rtomayko/mongrel_proctitle/issues/comments/{number}","contents_url":"https://api.github.com/repos/rtomayko/mongrel_proctitle/contents/{+path}","compare_url":"https://api.github.com/repos/rtomayko/mongrel_proctitle/compare/{base}...{head}","merges_url":"https://api.github.com/repos/rtomayko/mongrel_proctitle/merges","archive_url":"https://api.github.com/repos/rtomayko/mongrel_proctitle/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/rtomayko/mongrel_proctitle/downloads","issues_url":"https://api.github.com/repos/rtomayko/mongrel_proctitle/issues{/number}","pulls_url":"https://api.github.com/repos/rtomayko/mongrel_proctitle/pulls{/number}","milestones_url":"https://api.github.com/repos/rtomayko/mongrel_proctitle/milestones{/number}","notifications_url":"https://api.github.com/repos/rtomayko/mongrel_proctitle/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/rtomayko/mongrel_proctitle/labels{/name}"},{"id":1017,"name":"rails-plugins","full_name":"zachinglis/rails-plugins","owner":{"login":"zachinglis","id":665,"avatar_url":"https://0.gravatar.com/avatar/1055b2b90f5beb844f28fd909ed45d5f?d=https%3A%2F%2Fidenticons.github.com%2F84117275be999ff55a987b9381e01f96.png","gravatar_id":"1055b2b90f5beb844f28fd909ed45d5f","url":"https://api.github.com/users/zachinglis","html_url":"https://github.com/zachinglis","followers_url":"https://api.github.com/users/zachinglis/followers","following_url":"https://api.github.com/users/zachinglis/following{/other_user}","gists_url":"https://api.github.com/users/zachinglis/gists{/gist_id}","starred_url":"https://api.github.com/users/zachinglis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zachinglis/subscriptions","organizations_url":"https://api.github.com/users/zachinglis/orgs","repos_url":"https://api.github.com/users/zachinglis/repos","events_url":"https://api.github.com/users/zachinglis/events{/privacy}","received_events_url":"https://api.github.com/users/zachinglis/received_events","type":"User"},"private":false,"html_url":"https://github.com/zachinglis/rails-plugins","description":"All my Rails plugins bundled up.","fork":false,"url":"https://api.github.com/repos/zachinglis/rails-plugins","forks_url":"https://api.github.com/repos/zachinglis/rails-plugins/forks","keys_url":"https://api.github.com/repos/zachinglis/rails-plugins/keys{/key_id}","collaborators_url":"https://api.github.com/repos/zachinglis/rails-plugins/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/zachinglis/rails-plugins/teams","hooks_url":"https://api.github.com/repos/zachinglis/rails-plugins/hooks","issue_events_url":"https://api.github.com/repos/zachinglis/rails-plugins/issues/events{/number}","events_url":"https://api.github.com/repos/zachinglis/rails-plugins/events","assignees_url":"https://api.github.com/repos/zachinglis/rails-plugins/assignees{/user}","branches_url":"https://api.github.com/repos/zachinglis/rails-plugins/branches{/branch}","tags_url":"https://api.github.com/repos/zachinglis/rails-plugins/tags","blobs_url":"https://api.github.com/repos/zachinglis/rails-plugins/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/zachinglis/rails-plugins/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/zachinglis/rails-plugins/git/refs{/sha}","trees_url":"https://api.github.com/repos/zachinglis/rails-plugins/git/trees{/sha}","statuses_url":"https://api.github.com/repos/zachinglis/rails-plugins/statuses/{sha}","languages_url":"https://api.github.com/repos/zachinglis/rails-plugins/languages","stargazers_url":"https://api.github.com/repos/zachinglis/rails-plugins/stargazers","contributors_url":"https://api.github.com/repos/zachinglis/rails-plugins/contributors","subscribers_url":"https://api.github.com/repos/zachinglis/rails-plugins/subscribers","subscription_url":"https://api.github.com/repos/zachinglis/rails-plugins/subscription","commits_url":"https://api.github.com/repos/zachinglis/rails-plugins/commits{/sha}","git_commits_url":"https://api.github.com/repos/zachinglis/rails-plugins/git/commits{/sha}","comments_url":"https://api.github.com/repos/zachinglis/rails-plugins/comments{/number}","issue_comment_url":"https://api.github.com/repos/zachinglis/rails-plugins/issues/comments/{number}","contents_url":"https://api.github.com/repos/zachinglis/rails-plugins/contents/{+path}","compare_url":"https://api.github.com/repos/zachinglis/rails-plugins/compare/{base}...{head}","merges_url":"https://api.github.com/repos/zachinglis/rails-plugins/merges","archive_url":"https://api.github.com/repos/zachinglis/rails-plugins/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/zachinglis/rails-plugins/downloads","issues_url":"https://api.github.com/repos/zachinglis/rails-plugins/issues{/number}","pulls_url":"https://api.github.com/repos/zachinglis/rails-plugins/pulls{/number}","milestones_url":"https://api.github.com/repos/zachinglis/rails-plugins/milestones{/number}","notifications_url":"https://api.github.com/repos/zachinglis/rails-plugins/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/zachinglis/rails-plugins/labels{/name}"},{"id":1028,"name":"date-performance","full_name":"rtomayko/date-performance","owner":{"login":"rtomayko","id":404,"avatar_url":"https://0.gravatar.com/avatar/abfc88b96ae18c85ba7aac3bded2ec5e?d=https%3A%2F%2Fidenticons.github.com%2F4f4adcbf8c6f66dcfc8a3282ac2bf10a.png","gravatar_id":"abfc88b96ae18c85ba7aac3bded2ec5e","url":"https://api.github.com/users/rtomayko","html_url":"https://github.com/rtomayko","followers_url":"https://api.github.com/users/rtomayko/followers","following_url":"https://api.github.com/users/rtomayko/following{/other_user}","gists_url":"https://api.github.com/users/rtomayko/gists{/gist_id}","starred_url":"https://api.github.com/users/rtomayko/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rtomayko/subscriptions","organizations_url":"https://api.github.com/users/rtomayko/orgs","repos_url":"https://api.github.com/users/rtomayko/repos","events_url":"https://api.github.com/users/rtomayko/events{/privacy}","received_events_url":"https://api.github.com/users/rtomayko/received_events","type":"User"},"private":false,"html_url":"https://github.com/rtomayko/date-performance","description":"Adds a semblance of performance to Ruby's core Date class ...","fork":false,"url":"https://api.github.com/repos/rtomayko/date-performance","forks_url":"https://api.github.com/repos/rtomayko/date-performance/forks","keys_url":"https://api.github.com/repos/rtomayko/date-performance/keys{/key_id}","collaborators_url":"https://api.github.com/repos/rtomayko/date-performance/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/rtomayko/date-performance/teams","hooks_url":"https://api.github.com/repos/rtomayko/date-performance/hooks","issue_events_url":"https://api.github.com/repos/rtomayko/date-performance/issues/events{/number}","events_url":"https://api.github.com/repos/rtomayko/date-performance/events","assignees_url":"https://api.github.com/repos/rtomayko/date-performance/assignees{/user}","branches_url":"https://api.github.com/repos/rtomayko/date-performance/branches{/branch}","tags_url":"https://api.github.com/repos/rtomayko/date-performance/tags","blobs_url":"https://api.github.com/repos/rtomayko/date-performance/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/rtomayko/date-performance/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/rtomayko/date-performance/git/refs{/sha}","trees_url":"https://api.github.com/repos/rtomayko/date-performance/git/trees{/sha}","statuses_url":"https://api.github.com/repos/rtomayko/date-performance/statuses/{sha}","languages_url":"https://api.github.com/repos/rtomayko/date-performance/languages","stargazers_url":"https://api.github.com/repos/rtomayko/date-performance/stargazers","contributors_url":"https://api.github.com/repos/rtomayko/date-performance/contributors","subscribers_url":"https://api.github.com/repos/rtomayko/date-performance/subscribers","subscription_url":"https://api.github.com/repos/rtomayko/date-performance/subscription","commits_url":"https://api.github.com/repos/rtomayko/date-performance/commits{/sha}","git_commits_url":"https://api.github.com/repos/rtomayko/date-performance/git/commits{/sha}","comments_url":"https://api.github.com/repos/rtomayko/date-performance/comments{/number}","issue_comment_url":"https://api.github.com/repos/rtomayko/date-performance/issues/comments/{number}","contents_url":"https://api.github.com/repos/rtomayko/date-performance/contents/{+path}","compare_url":"https://api.github.com/repos/rtomayko/date-performance/compare/{base}...{head}","merges_url":"https://api.github.com/repos/rtomayko/date-performance/merges","archive_url":"https://api.github.com/repos/rtomayko/date-performance/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/rtomayko/date-performance/downloads","issues_url":"https://api.github.com/repos/rtomayko/date-performance/issues{/number}","pulls_url":"https://api.github.com/repos/rtomayko/date-performance/pulls{/number}","milestones_url":"https://api.github.com/repos/rtomayko/date-performance/milestones{/number}","notifications_url":"https://api.github.com/repos/rtomayko/date-performance/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/rtomayko/date-performance/labels{/name}"},{"id":1031,"name":"rails-ssl-authentication","full_name":"labria/rails-ssl-authentication","owner":{"login":"labria","id":323,"avatar_url":"https://1.gravatar.com/avatar/f5049506664636c6cc725099367bd167?d=https%3A%2F%2Fidenticons.github.com%2Fbc6dc48b743dc5d013b1abaebd2faed2.png","gravatar_id":"f5049506664636c6cc725099367bd167","url":"https://api.github.com/users/labria","html_url":"https://github.com/labria","followers_url":"https://api.github.com/users/labria/followers","following_url":"https://api.github.com/users/labria/following{/other_user}","gists_url":"https://api.github.com/users/labria/gists{/gist_id}","starred_url":"https://api.github.com/users/labria/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/labria/subscriptions","organizations_url":"https://api.github.com/users/labria/orgs","repos_url":"https://api.github.com/users/labria/repos","events_url":"https://api.github.com/users/labria/events{/privacy}","received_events_url":"https://api.github.com/users/labria/received_events","type":"User"},"private":false,"html_url":"https://github.com/labria/rails-ssl-authentication","description":"A attempt to make SSL client certificate authentication with rails painless","fork":false,"url":"https://api.github.com/repos/labria/rails-ssl-authentication","forks_url":"https://api.github.com/repos/labria/rails-ssl-authentication/forks","keys_url":"https://api.github.com/repos/labria/rails-ssl-authentication/keys{/key_id}","collaborators_url":"https://api.github.com/repos/labria/rails-ssl-authentication/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/labria/rails-ssl-authentication/teams","hooks_url":"https://api.github.com/repos/labria/rails-ssl-authentication/hooks","issue_events_url":"https://api.github.com/repos/labria/rails-ssl-authentication/issues/events{/number}","events_url":"https://api.github.com/repos/labria/rails-ssl-authentication/events","assignees_url":"https://api.github.com/repos/labria/rails-ssl-authentication/assignees{/user}","branches_url":"https://api.github.com/repos/labria/rails-ssl-authentication/branches{/branch}","tags_url":"https://api.github.com/repos/labria/rails-ssl-authentication/tags","blobs_url":"https://api.github.com/repos/labria/rails-ssl-authentication/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/labria/rails-ssl-authentication/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/labria/rails-ssl-authentication/git/refs{/sha}","trees_url":"https://api.github.com/repos/labria/rails-ssl-authentication/git/trees{/sha}","statuses_url":"https://api.github.com/repos/labria/rails-ssl-authentication/statuses/{sha}","languages_url":"https://api.github.com/repos/labria/rails-ssl-authentication/languages","stargazers_url":"https://api.github.com/repos/labria/rails-ssl-authentication/stargazers","contributors_url":"https://api.github.com/repos/labria/rails-ssl-authentication/contributors","subscribers_url":"https://api.github.com/repos/labria/rails-ssl-authentication/subscribers","subscription_url":"https://api.github.com/repos/labria/rails-ssl-authentication/subscription","commits_url":"https://api.github.com/repos/labria/rails-ssl-authentication/commits{/sha}","git_commits_url":"https://api.github.com/repos/labria/rails-ssl-authentication/git/commits{/sha}","comments_url":"https://api.github.com/repos/labria/rails-ssl-authentication/comments{/number}","issue_comment_url":"https://api.github.com/repos/labria/rails-ssl-authentication/issues/comments/{number}","contents_url":"https://api.github.com/repos/labria/rails-ssl-authentication/contents/{+path}","compare_url":"https://api.github.com/repos/labria/rails-ssl-authentication/compare/{base}...{head}","merges_url":"https://api.github.com/repos/labria/rails-ssl-authentication/merges","archive_url":"https://api.github.com/repos/labria/rails-ssl-authentication/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/labria/rails-ssl-authentication/downloads","issues_url":"https://api.github.com/repos/labria/rails-ssl-authentication/issues{/number}","pulls_url":"https://api.github.com/repos/labria/rails-ssl-authentication/pulls{/number}","milestones_url":"https://api.github.com/repos/labria/rails-ssl-authentication/milestones{/number}","notifications_url":"https://api.github.com/repos/labria/rails-ssl-authentication/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/labria/rails-ssl-authentication/labels{/name}"},{"id":1032,"name":"onebody","full_name":"churchio/onebody","owner":{"login":"churchio","id":935086,"avatar_url":"https://0.gravatar.com/avatar/be6afcca013316741f7189ccda95067e?d=https%3A%2F%2Fidenticons.github.com%2Fb903ff4db9f18d88c10889cc7de72269.png","gravatar_id":"be6afcca013316741f7189ccda95067e","url":"https://api.github.com/users/churchio","html_url":"https://github.com/churchio","followers_url":"https://api.github.com/users/churchio/followers","following_url":"https://api.github.com/users/churchio/following{/other_user}","gists_url":"https://api.github.com/users/churchio/gists{/gist_id}","starred_url":"https://api.github.com/users/churchio/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/churchio/subscriptions","organizations_url":"https://api.github.com/users/churchio/orgs","repos_url":"https://api.github.com/users/churchio/repos","events_url":"https://api.github.com/users/churchio/events{/privacy}","received_events_url":"https://api.github.com/users/churchio/received_events","type":"Organization"},"private":false,"html_url":"https://github.com/churchio/onebody","description":"OneBody is a private social network and online directory solution for churches built with Ruby on Rails.","fork":false,"url":"https://api.github.com/repos/churchio/onebody","forks_url":"https://api.github.com/repos/churchio/onebody/forks","keys_url":"https://api.github.com/repos/churchio/onebody/keys{/key_id}","collaborators_url":"https://api.github.com/repos/churchio/onebody/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/churchio/onebody/teams","hooks_url":"https://api.github.com/repos/churchio/onebody/hooks","issue_events_url":"https://api.github.com/repos/churchio/onebody/issues/events{/number}","events_url":"https://api.github.com/repos/churchio/onebody/events","assignees_url":"https://api.github.com/repos/churchio/onebody/assignees{/user}","branches_url":"https://api.github.com/repos/churchio/onebody/branches{/branch}","tags_url":"https://api.github.com/repos/churchio/onebody/tags","blobs_url":"https://api.github.com/repos/churchio/onebody/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/churchio/onebody/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/churchio/onebody/git/refs{/sha}","trees_url":"https://api.github.com/repos/churchio/onebody/git/trees{/sha}","statuses_url":"https://api.github.com/repos/churchio/onebody/statuses/{sha}","languages_url":"https://api.github.com/repos/churchio/onebody/languages","stargazers_url":"https://api.github.com/repos/churchio/onebody/stargazers","contributors_url":"https://api.github.com/repos/churchio/onebody/contributors","subscribers_url":"https://api.github.com/repos/churchio/onebody/subscribers","subscription_url":"https://api.github.com/repos/churchio/onebody/subscription","commits_url":"https://api.github.com/repos/churchio/onebody/commits{/sha}","git_commits_url":"https://api.github.com/repos/churchio/onebody/git/commits{/sha}","comments_url":"https://api.github.com/repos/churchio/onebody/comments{/number}","issue_comment_url":"https://api.github.com/repos/churchio/onebody/issues/comments/{number}","contents_url":"https://api.github.com/repos/churchio/onebody/contents/{+path}","compare_url":"https://api.github.com/repos/churchio/onebody/compare/{base}...{head}","merges_url":"https://api.github.com/repos/churchio/onebody/merges","archive_url":"https://api.github.com/repos/churchio/onebody/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/churchio/onebody/downloads","issues_url":"https://api.github.com/repos/churchio/onebody/issues{/number}","pulls_url":"https://api.github.com/repos/churchio/onebody/pulls{/number}","milestones_url":"https://api.github.com/repos/churchio/onebody/milestones{/number}","notifications_url":"https://api.github.com/repos/churchio/onebody/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/churchio/onebody/labels{/name}"},{"id":1040,"name":"jacks-php","full_name":"russ/jacks-php","owner":{"login":"russ","id":684,"avatar_url":"https://1.gravatar.com/avatar/5f763744270a1aa74c614cec8b30a3e1?d=https%3A%2F%2Fidenticons.github.com%2F556f391937dfd4398cbac35e050a2177.png","gravatar_id":"5f763744270a1aa74c614cec8b30a3e1","url":"https://api.github.com/users/russ","html_url":"https://github.com/russ","followers_url":"https://api.github.com/users/russ/followers","following_url":"https://api.github.com/users/russ/following{/other_user}","gists_url":"https://api.github.com/users/russ/gists{/gist_id}","starred_url":"https://api.github.com/users/russ/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/russ/subscriptions","organizations_url":"https://api.github.com/users/russ/orgs","repos_url":"https://api.github.com/users/russ/repos","events_url":"https://api.github.com/users/russ/events{/privacy}","received_events_url":"https://api.github.com/users/russ/received_events","type":"User"},"private":false,"html_url":"https://github.com/russ/jacks-php","description":"I am Jacks PHP framework.","fork":false,"url":"https://api.github.com/repos/russ/jacks-php","forks_url":"https://api.github.com/repos/russ/jacks-php/forks","keys_url":"https://api.github.com/repos/russ/jacks-php/keys{/key_id}","collaborators_url":"https://api.github.com/repos/russ/jacks-php/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/russ/jacks-php/teams","hooks_url":"https://api.github.com/repos/russ/jacks-php/hooks","issue_events_url":"https://api.github.com/repos/russ/jacks-php/issues/events{/number}","events_url":"https://api.github.com/repos/russ/jacks-php/events","assignees_url":"https://api.github.com/repos/russ/jacks-php/assignees{/user}","branches_url":"https://api.github.com/repos/russ/jacks-php/branches{/branch}","tags_url":"https://api.github.com/repos/russ/jacks-php/tags","blobs_url":"https://api.github.com/repos/russ/jacks-php/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/russ/jacks-php/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/russ/jacks-php/git/refs{/sha}","trees_url":"https://api.github.com/repos/russ/jacks-php/git/trees{/sha}","statuses_url":"https://api.github.com/repos/russ/jacks-php/statuses/{sha}","languages_url":"https://api.github.com/repos/russ/jacks-php/languages","stargazers_url":"https://api.github.com/repos/russ/jacks-php/stargazers","contributors_url":"https://api.github.com/repos/russ/jacks-php/contributors","subscribers_url":"https://api.github.com/repos/russ/jacks-php/subscribers","subscription_url":"https://api.github.com/repos/russ/jacks-php/subscription","commits_url":"https://api.github.com/repos/russ/jacks-php/commits{/sha}","git_commits_url":"https://api.github.com/repos/russ/jacks-php/git/commits{/sha}","comments_url":"https://api.github.com/repos/russ/jacks-php/comments{/number}","issue_comment_url":"https://api.github.com/repos/russ/jacks-php/issues/comments/{number}","contents_url":"https://api.github.com/repos/russ/jacks-php/contents/{+path}","compare_url":"https://api.github.com/repos/russ/jacks-php/compare/{base}...{head}","merges_url":"https://api.github.com/repos/russ/jacks-php/merges","archive_url":"https://api.github.com/repos/russ/jacks-php/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/russ/jacks-php/downloads","issues_url":"https://api.github.com/repos/russ/jacks-php/issues{/number}","pulls_url":"https://api.github.com/repos/russ/jacks-php/pulls{/number}","milestones_url":"https://api.github.com/repos/russ/jacks-php/milestones{/number}","notifications_url":"https://api.github.com/repos/russ/jacks-php/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/russ/jacks-php/labels{/name}"},{"id":1042,"name":"loudmouth","full_name":"mhallendal/loudmouth","owner":{"login":"mhallendal","id":541,"avatar_url":"https://1.gravatar.com/avatar/9736d1741af3929d5960dacffb03cfd5?d=https%3A%2F%2Fidenticons.github.com%2F16c222aa19898e5058938167c8ab6c57.png","gravatar_id":"9736d1741af3929d5960dacffb03cfd5","url":"https://api.github.com/users/mhallendal","html_url":"https://github.com/mhallendal","followers_url":"https://api.github.com/users/mhallendal/followers","following_url":"https://api.github.com/users/mhallendal/following{/other_user}","gists_url":"https://api.github.com/users/mhallendal/gists{/gist_id}","starred_url":"https://api.github.com/users/mhallendal/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mhallendal/subscriptions","organizations_url":"https://api.github.com/users/mhallendal/orgs","repos_url":"https://api.github.com/users/mhallendal/repos","events_url":"https://api.github.com/users/mhallendal/events{/privacy}","received_events_url":"https://api.github.com/users/mhallendal/received_events","type":"User"},"private":false,"html_url":"https://github.com/mhallendal/loudmouth","description":"An asynchronous XMPP library","fork":false,"url":"https://api.github.com/repos/mhallendal/loudmouth","forks_url":"https://api.github.com/repos/mhallendal/loudmouth/forks","keys_url":"https://api.github.com/repos/mhallendal/loudmouth/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mhallendal/loudmouth/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mhallendal/loudmouth/teams","hooks_url":"https://api.github.com/repos/mhallendal/loudmouth/hooks","issue_events_url":"https://api.github.com/repos/mhallendal/loudmouth/issues/events{/number}","events_url":"https://api.github.com/repos/mhallendal/loudmouth/events","assignees_url":"https://api.github.com/repos/mhallendal/loudmouth/assignees{/user}","branches_url":"https://api.github.com/repos/mhallendal/loudmouth/branches{/branch}","tags_url":"https://api.github.com/repos/mhallendal/loudmouth/tags","blobs_url":"https://api.github.com/repos/mhallendal/loudmouth/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mhallendal/loudmouth/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mhallendal/loudmouth/git/refs{/sha}","trees_url":"https://api.github.com/repos/mhallendal/loudmouth/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mhallendal/loudmouth/statuses/{sha}","languages_url":"https://api.github.com/repos/mhallendal/loudmouth/languages","stargazers_url":"https://api.github.com/repos/mhallendal/loudmouth/stargazers","contributors_url":"https://api.github.com/repos/mhallendal/loudmouth/contributors","subscribers_url":"https://api.github.com/repos/mhallendal/loudmouth/subscribers","subscription_url":"https://api.github.com/repos/mhallendal/loudmouth/subscription","commits_url":"https://api.github.com/repos/mhallendal/loudmouth/commits{/sha}","git_commits_url":"https://api.github.com/repos/mhallendal/loudmouth/git/commits{/sha}","comments_url":"https://api.github.com/repos/mhallendal/loudmouth/comments{/number}","issue_comment_url":"https://api.github.com/repos/mhallendal/loudmouth/issues/comments/{number}","contents_url":"https://api.github.com/repos/mhallendal/loudmouth/contents/{+path}","compare_url":"https://api.github.com/repos/mhallendal/loudmouth/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mhallendal/loudmouth/merges","archive_url":"https://api.github.com/repos/mhallendal/loudmouth/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mhallendal/loudmouth/downloads","issues_url":"https://api.github.com/repos/mhallendal/loudmouth/issues{/number}","pulls_url":"https://api.github.com/repos/mhallendal/loudmouth/pulls{/number}","milestones_url":"https://api.github.com/repos/mhallendal/loudmouth/milestones{/number}","notifications_url":"https://api.github.com/repos/mhallendal/loudmouth/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mhallendal/loudmouth/labels{/name}"},{"id":1043,"name":"getfake","full_name":"anildigital/getfake","owner":{"login":"anildigital","id":266,"avatar_url":"https://2.gravatar.com/avatar/2ad20e87f55ce79b113a12c516ec9d09?d=https%3A%2F%2Fidenticons.github.com%2Ff7664060cc52bc6f3d620bcedc94a4b6.png","gravatar_id":"2ad20e87f55ce79b113a12c516ec9d09","url":"https://api.github.com/users/anildigital","html_url":"https://github.com/anildigital","followers_url":"https://api.github.com/users/anildigital/followers","following_url":"https://api.github.com/users/anildigital/following{/other_user}","gists_url":"https://api.github.com/users/anildigital/gists{/gist_id}","starred_url":"https://api.github.com/users/anildigital/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/anildigital/subscriptions","organizations_url":"https://api.github.com/users/anildigital/orgs","repos_url":"https://api.github.com/users/anildigital/repos","events_url":"https://api.github.com/users/anildigital/events{/privacy}","received_events_url":"https://api.github.com/users/anildigital/received_events","type":"User"},"private":false,"html_url":"https://github.com/anildigital/getfake","description":"Its a web UI for for ruby faker gem","fork":false,"url":"https://api.github.com/repos/anildigital/getfake","forks_url":"https://api.github.com/repos/anildigital/getfake/forks","keys_url":"https://api.github.com/repos/anildigital/getfake/keys{/key_id}","collaborators_url":"https://api.github.com/repos/anildigital/getfake/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/anildigital/getfake/teams","hooks_url":"https://api.github.com/repos/anildigital/getfake/hooks","issue_events_url":"https://api.github.com/repos/anildigital/getfake/issues/events{/number}","events_url":"https://api.github.com/repos/anildigital/getfake/events","assignees_url":"https://api.github.com/repos/anildigital/getfake/assignees{/user}","branches_url":"https://api.github.com/repos/anildigital/getfake/branches{/branch}","tags_url":"https://api.github.com/repos/anildigital/getfake/tags","blobs_url":"https://api.github.com/repos/anildigital/getfake/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/anildigital/getfake/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/anildigital/getfake/git/refs{/sha}","trees_url":"https://api.github.com/repos/anildigital/getfake/git/trees{/sha}","statuses_url":"https://api.github.com/repos/anildigital/getfake/statuses/{sha}","languages_url":"https://api.github.com/repos/anildigital/getfake/languages","stargazers_url":"https://api.github.com/repos/anildigital/getfake/stargazers","contributors_url":"https://api.github.com/repos/anildigital/getfake/contributors","subscribers_url":"https://api.github.com/repos/anildigital/getfake/subscribers","subscription_url":"https://api.github.com/repos/anildigital/getfake/subscription","commits_url":"https://api.github.com/repos/anildigital/getfake/commits{/sha}","git_commits_url":"https://api.github.com/repos/anildigital/getfake/git/commits{/sha}","comments_url":"https://api.github.com/repos/anildigital/getfake/comments{/number}","issue_comment_url":"https://api.github.com/repos/anildigital/getfake/issues/comments/{number}","contents_url":"https://api.github.com/repos/anildigital/getfake/contents/{+path}","compare_url":"https://api.github.com/repos/anildigital/getfake/compare/{base}...{head}","merges_url":"https://api.github.com/repos/anildigital/getfake/merges","archive_url":"https://api.github.com/repos/anildigital/getfake/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/anildigital/getfake/downloads","issues_url":"https://api.github.com/repos/anildigital/getfake/issues{/number}","pulls_url":"https://api.github.com/repos/anildigital/getfake/pulls{/number}","milestones_url":"https://api.github.com/repos/anildigital/getfake/milestones{/number}","notifications_url":"https://api.github.com/repos/anildigital/getfake/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/anildigital/getfake/labels{/name}"},{"id":1049,"name":"effen","full_name":"nkallen/effen","owner":{"login":"nkallen","id":699,"avatar_url":"https://1.gravatar.com/avatar/2b292377455ec105686730d6aa59c262?d=https%3A%2F%2Fidenticons.github.com%2Fafd4836712c5e77550897e25711e1d96.png","gravatar_id":"2b292377455ec105686730d6aa59c262","url":"https://api.github.com/users/nkallen","html_url":"https://github.com/nkallen","followers_url":"https://api.github.com/users/nkallen/followers","following_url":"https://api.github.com/users/nkallen/following{/other_user}","gists_url":"https://api.github.com/users/nkallen/gists{/gist_id}","starred_url":"https://api.github.com/users/nkallen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nkallen/subscriptions","organizations_url":"https://api.github.com/users/nkallen/orgs","repos_url":"https://api.github.com/users/nkallen/repos","events_url":"https://api.github.com/users/nkallen/events{/privacy}","received_events_url":"https://api.github.com/users/nkallen/received_events","type":"User"},"private":false,"html_url":"https://github.com/nkallen/effen","description":"A jQuery plugin for Morphic programming","fork":false,"url":"https://api.github.com/repos/nkallen/effen","forks_url":"https://api.github.com/repos/nkallen/effen/forks","keys_url":"https://api.github.com/repos/nkallen/effen/keys{/key_id}","collaborators_url":"https://api.github.com/repos/nkallen/effen/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/nkallen/effen/teams","hooks_url":"https://api.github.com/repos/nkallen/effen/hooks","issue_events_url":"https://api.github.com/repos/nkallen/effen/issues/events{/number}","events_url":"https://api.github.com/repos/nkallen/effen/events","assignees_url":"https://api.github.com/repos/nkallen/effen/assignees{/user}","branches_url":"https://api.github.com/repos/nkallen/effen/branches{/branch}","tags_url":"https://api.github.com/repos/nkallen/effen/tags","blobs_url":"https://api.github.com/repos/nkallen/effen/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/nkallen/effen/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/nkallen/effen/git/refs{/sha}","trees_url":"https://api.github.com/repos/nkallen/effen/git/trees{/sha}","statuses_url":"https://api.github.com/repos/nkallen/effen/statuses/{sha}","languages_url":"https://api.github.com/repos/nkallen/effen/languages","stargazers_url":"https://api.github.com/repos/nkallen/effen/stargazers","contributors_url":"https://api.github.com/repos/nkallen/effen/contributors","subscribers_url":"https://api.github.com/repos/nkallen/effen/subscribers","subscription_url":"https://api.github.com/repos/nkallen/effen/subscription","commits_url":"https://api.github.com/repos/nkallen/effen/commits{/sha}","git_commits_url":"https://api.github.com/repos/nkallen/effen/git/commits{/sha}","comments_url":"https://api.github.com/repos/nkallen/effen/comments{/number}","issue_comment_url":"https://api.github.com/repos/nkallen/effen/issues/comments/{number}","contents_url":"https://api.github.com/repos/nkallen/effen/contents/{+path}","compare_url":"https://api.github.com/repos/nkallen/effen/compare/{base}...{head}","merges_url":"https://api.github.com/repos/nkallen/effen/merges","archive_url":"https://api.github.com/repos/nkallen/effen/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/nkallen/effen/downloads","issues_url":"https://api.github.com/repos/nkallen/effen/issues{/number}","pulls_url":"https://api.github.com/repos/nkallen/effen/pulls{/number}","milestones_url":"https://api.github.com/repos/nkallen/effen/milestones{/number}","notifications_url":"https://api.github.com/repos/nkallen/effen/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/nkallen/effen/labels{/name}"},{"id":1052,"name":"template","full_name":"jparker/template","owner":{"login":"jparker","id":703,"avatar_url":"https://2.gravatar.com/avatar/f239ccb7f4c904a74e523a3334ca45e7?d=https%3A%2F%2Fidenticons.github.com%2Fd6c651ddcd97183b2e40bc464231c962.png","gravatar_id":"f239ccb7f4c904a74e523a3334ca45e7","url":"https://api.github.com/users/jparker","html_url":"https://github.com/jparker","followers_url":"https://api.github.com/users/jparker/followers","following_url":"https://api.github.com/users/jparker/following{/other_user}","gists_url":"https://api.github.com/users/jparker/gists{/gist_id}","starred_url":"https://api.github.com/users/jparker/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jparker/subscriptions","organizations_url":"https://api.github.com/users/jparker/orgs","repos_url":"https://api.github.com/users/jparker/repos","events_url":"https://api.github.com/users/jparker/events{/privacy}","received_events_url":"https://api.github.com/users/jparker/received_events","type":"User"},"private":false,"html_url":"https://github.com/jparker/template","description":"Rails project template","fork":false,"url":"https://api.github.com/repos/jparker/template","forks_url":"https://api.github.com/repos/jparker/template/forks","keys_url":"https://api.github.com/repos/jparker/template/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jparker/template/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jparker/template/teams","hooks_url":"https://api.github.com/repos/jparker/template/hooks","issue_events_url":"https://api.github.com/repos/jparker/template/issues/events{/number}","events_url":"https://api.github.com/repos/jparker/template/events","assignees_url":"https://api.github.com/repos/jparker/template/assignees{/user}","branches_url":"https://api.github.com/repos/jparker/template/branches{/branch}","tags_url":"https://api.github.com/repos/jparker/template/tags","blobs_url":"https://api.github.com/repos/jparker/template/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jparker/template/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jparker/template/git/refs{/sha}","trees_url":"https://api.github.com/repos/jparker/template/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jparker/template/statuses/{sha}","languages_url":"https://api.github.com/repos/jparker/template/languages","stargazers_url":"https://api.github.com/repos/jparker/template/stargazers","contributors_url":"https://api.github.com/repos/jparker/template/contributors","subscribers_url":"https://api.github.com/repos/jparker/template/subscribers","subscription_url":"https://api.github.com/repos/jparker/template/subscription","commits_url":"https://api.github.com/repos/jparker/template/commits{/sha}","git_commits_url":"https://api.github.com/repos/jparker/template/git/commits{/sha}","comments_url":"https://api.github.com/repos/jparker/template/comments{/number}","issue_comment_url":"https://api.github.com/repos/jparker/template/issues/comments/{number}","contents_url":"https://api.github.com/repos/jparker/template/contents/{+path}","compare_url":"https://api.github.com/repos/jparker/template/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jparker/template/merges","archive_url":"https://api.github.com/repos/jparker/template/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jparker/template/downloads","issues_url":"https://api.github.com/repos/jparker/template/issues{/number}","pulls_url":"https://api.github.com/repos/jparker/template/pulls{/number}","milestones_url":"https://api.github.com/repos/jparker/template/milestones{/number}","notifications_url":"https://api.github.com/repos/jparker/template/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jparker/template/labels{/name}"},{"id":1054,"name":"TourGuide","full_name":"TekNoLogic/TourGuide","owner":{"login":"TekNoLogic","id":318374,"avatar_url":"https://0.gravatar.com/avatar/3260416e668934213340ecc4f8a835f4?d=https%3A%2F%2Fidenticons.github.com%2F10061d18a6a471274d9f419b0bf5502b.png","gravatar_id":"3260416e668934213340ecc4f8a835f4","url":"https://api.github.com/users/TekNoLogic","html_url":"https://github.com/TekNoLogic","followers_url":"https://api.github.com/users/TekNoLogic/followers","following_url":"https://api.github.com/users/TekNoLogic/following{/other_user}","gists_url":"https://api.github.com/users/TekNoLogic/gists{/gist_id}","starred_url":"https://api.github.com/users/TekNoLogic/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/TekNoLogic/subscriptions","organizations_url":"https://api.github.com/users/TekNoLogic/orgs","repos_url":"https://api.github.com/users/TekNoLogic/repos","events_url":"https://api.github.com/users/TekNoLogic/events{/privacy}","received_events_url":"https://api.github.com/users/TekNoLogic/received_events","type":"Organization"},"private":false,"html_url":"https://github.com/TekNoLogic/TourGuide","description":"WoW Addon - Powerleveling guide framework","fork":false,"url":"https://api.github.com/repos/TekNoLogic/TourGuide","forks_url":"https://api.github.com/repos/TekNoLogic/TourGuide/forks","keys_url":"https://api.github.com/repos/TekNoLogic/TourGuide/keys{/key_id}","collaborators_url":"https://api.github.com/repos/TekNoLogic/TourGuide/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/TekNoLogic/TourGuide/teams","hooks_url":"https://api.github.com/repos/TekNoLogic/TourGuide/hooks","issue_events_url":"https://api.github.com/repos/TekNoLogic/TourGuide/issues/events{/number}","events_url":"https://api.github.com/repos/TekNoLogic/TourGuide/events","assignees_url":"https://api.github.com/repos/TekNoLogic/TourGuide/assignees{/user}","branches_url":"https://api.github.com/repos/TekNoLogic/TourGuide/branches{/branch}","tags_url":"https://api.github.com/repos/TekNoLogic/TourGuide/tags","blobs_url":"https://api.github.com/repos/TekNoLogic/TourGuide/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/TekNoLogic/TourGuide/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/TekNoLogic/TourGuide/git/refs{/sha}","trees_url":"https://api.github.com/repos/TekNoLogic/TourGuide/git/trees{/sha}","statuses_url":"https://api.github.com/repos/TekNoLogic/TourGuide/statuses/{sha}","languages_url":"https://api.github.com/repos/TekNoLogic/TourGuide/languages","stargazers_url":"https://api.github.com/repos/TekNoLogic/TourGuide/stargazers","contributors_url":"https://api.github.com/repos/TekNoLogic/TourGuide/contributors","subscribers_url":"https://api.github.com/repos/TekNoLogic/TourGuide/subscribers","subscription_url":"https://api.github.com/repos/TekNoLogic/TourGuide/subscription","commits_url":"https://api.github.com/repos/TekNoLogic/TourGuide/commits{/sha}","git_commits_url":"https://api.github.com/repos/TekNoLogic/TourGuide/git/commits{/sha}","comments_url":"https://api.github.com/repos/TekNoLogic/TourGuide/comments{/number}","issue_comment_url":"https://api.github.com/repos/TekNoLogic/TourGuide/issues/comments/{number}","contents_url":"https://api.github.com/repos/TekNoLogic/TourGuide/contents/{+path}","compare_url":"https://api.github.com/repos/TekNoLogic/TourGuide/compare/{base}...{head}","merges_url":"https://api.github.com/repos/TekNoLogic/TourGuide/merges","archive_url":"https://api.github.com/repos/TekNoLogic/TourGuide/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/TekNoLogic/TourGuide/downloads","issues_url":"https://api.github.com/repos/TekNoLogic/TourGuide/issues{/number}","pulls_url":"https://api.github.com/repos/TekNoLogic/TourGuide/pulls{/number}","milestones_url":"https://api.github.com/repos/TekNoLogic/TourGuide/milestones{/number}","notifications_url":"https://api.github.com/repos/TekNoLogic/TourGuide/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/TekNoLogic/TourGuide/labels{/name}"},{"id":1057,"name":"configuration-files","full_name":"adulteratedjedi/configuration-files","owner":{"login":"adulteratedjedi","id":702,"avatar_url":"https://1.gravatar.com/avatar/699b1f8c794863bc25a00221b4120ac7?d=https%3A%2F%2Fidenticons.github.com%2Fb1eec33c726a60554bc78518d5f9b32c.png","gravatar_id":"699b1f8c794863bc25a00221b4120ac7","url":"https://api.github.com/users/adulteratedjedi","html_url":"https://github.com/adulteratedjedi","followers_url":"https://api.github.com/users/adulteratedjedi/followers","following_url":"https://api.github.com/users/adulteratedjedi/following{/other_user}","gists_url":"https://api.github.com/users/adulteratedjedi/gists{/gist_id}","starred_url":"https://api.github.com/users/adulteratedjedi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/adulteratedjedi/subscriptions","organizations_url":"https://api.github.com/users/adulteratedjedi/orgs","repos_url":"https://api.github.com/users/adulteratedjedi/repos","events_url":"https://api.github.com/users/adulteratedjedi/events{/privacy}","received_events_url":"https://api.github.com/users/adulteratedjedi/received_events","type":"User"},"private":false,"html_url":"https://github.com/adulteratedjedi/configuration-files","description":"My Config Files","fork":false,"url":"https://api.github.com/repos/adulteratedjedi/configuration-files","forks_url":"https://api.github.com/repos/adulteratedjedi/configuration-files/forks","keys_url":"https://api.github.com/repos/adulteratedjedi/configuration-files/keys{/key_id}","collaborators_url":"https://api.github.com/repos/adulteratedjedi/configuration-files/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/adulteratedjedi/configuration-files/teams","hooks_url":"https://api.github.com/repos/adulteratedjedi/configuration-files/hooks","issue_events_url":"https://api.github.com/repos/adulteratedjedi/configuration-files/issues/events{/number}","events_url":"https://api.github.com/repos/adulteratedjedi/configuration-files/events","assignees_url":"https://api.github.com/repos/adulteratedjedi/configuration-files/assignees{/user}","branches_url":"https://api.github.com/repos/adulteratedjedi/configuration-files/branches{/branch}","tags_url":"https://api.github.com/repos/adulteratedjedi/configuration-files/tags","blobs_url":"https://api.github.com/repos/adulteratedjedi/configuration-files/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/adulteratedjedi/configuration-files/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/adulteratedjedi/configuration-files/git/refs{/sha}","trees_url":"https://api.github.com/repos/adulteratedjedi/configuration-files/git/trees{/sha}","statuses_url":"https://api.github.com/repos/adulteratedjedi/configuration-files/statuses/{sha}","languages_url":"https://api.github.com/repos/adulteratedjedi/configuration-files/languages","stargazers_url":"https://api.github.com/repos/adulteratedjedi/configuration-files/stargazers","contributors_url":"https://api.github.com/repos/adulteratedjedi/configuration-files/contributors","subscribers_url":"https://api.github.com/repos/adulteratedjedi/configuration-files/subscribers","subscription_url":"https://api.github.com/repos/adulteratedjedi/configuration-files/subscription","commits_url":"https://api.github.com/repos/adulteratedjedi/configuration-files/commits{/sha}","git_commits_url":"https://api.github.com/repos/adulteratedjedi/configuration-files/git/commits{/sha}","comments_url":"https://api.github.com/repos/adulteratedjedi/configuration-files/comments{/number}","issue_comment_url":"https://api.github.com/repos/adulteratedjedi/configuration-files/issues/comments/{number}","contents_url":"https://api.github.com/repos/adulteratedjedi/configuration-files/contents/{+path}","compare_url":"https://api.github.com/repos/adulteratedjedi/configuration-files/compare/{base}...{head}","merges_url":"https://api.github.com/repos/adulteratedjedi/configuration-files/merges","archive_url":"https://api.github.com/repos/adulteratedjedi/configuration-files/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/adulteratedjedi/configuration-files/downloads","issues_url":"https://api.github.com/repos/adulteratedjedi/configuration-files/issues{/number}","pulls_url":"https://api.github.com/repos/adulteratedjedi/configuration-files/pulls{/number}","milestones_url":"https://api.github.com/repos/adulteratedjedi/configuration-files/milestones{/number}","notifications_url":"https://api.github.com/repos/adulteratedjedi/configuration-files/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/adulteratedjedi/configuration-files/labels{/name}"},{"id":1061,"name":"fora","full_name":"ELLIOTTCABLE/fora","owner":{"login":"ELLIOTTCABLE","id":200,"avatar_url":"https://1.gravatar.com/avatar/4eac78fe7a7a607dcc097a0d6fd63690?d=https%3A%2F%2Fidenticons.github.com%2F3644a684f98ea8fe223c713b77189a77.png","gravatar_id":"4eac78fe7a7a607dcc097a0d6fd63690","url":"https://api.github.com/users/ELLIOTTCABLE","html_url":"https://github.com/ELLIOTTCABLE","followers_url":"https://api.github.com/users/ELLIOTTCABLE/followers","following_url":"https://api.github.com/users/ELLIOTTCABLE/following{/other_user}","gists_url":"https://api.github.com/users/ELLIOTTCABLE/gists{/gist_id}","starred_url":"https://api.github.com/users/ELLIOTTCABLE/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ELLIOTTCABLE/subscriptions","organizations_url":"https://api.github.com/users/ELLIOTTCABLE/orgs","repos_url":"https://api.github.com/users/ELLIOTTCABLE/repos","events_url":"https://api.github.com/users/ELLIOTTCABLE/events{/privacy}","received_events_url":"https://api.github.com/users/ELLIOTTCABLE/received_events","type":"User"},"private":false,"html_url":"https://github.com/ELLIOTTCABLE/fora","description":"Open source forum - done *different*","fork":false,"url":"https://api.github.com/repos/ELLIOTTCABLE/fora","forks_url":"https://api.github.com/repos/ELLIOTTCABLE/fora/forks","keys_url":"https://api.github.com/repos/ELLIOTTCABLE/fora/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ELLIOTTCABLE/fora/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ELLIOTTCABLE/fora/teams","hooks_url":"https://api.github.com/repos/ELLIOTTCABLE/fora/hooks","issue_events_url":"https://api.github.com/repos/ELLIOTTCABLE/fora/issues/events{/number}","events_url":"https://api.github.com/repos/ELLIOTTCABLE/fora/events","assignees_url":"https://api.github.com/repos/ELLIOTTCABLE/fora/assignees{/user}","branches_url":"https://api.github.com/repos/ELLIOTTCABLE/fora/branches{/branch}","tags_url":"https://api.github.com/repos/ELLIOTTCABLE/fora/tags","blobs_url":"https://api.github.com/repos/ELLIOTTCABLE/fora/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ELLIOTTCABLE/fora/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ELLIOTTCABLE/fora/git/refs{/sha}","trees_url":"https://api.github.com/repos/ELLIOTTCABLE/fora/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ELLIOTTCABLE/fora/statuses/{sha}","languages_url":"https://api.github.com/repos/ELLIOTTCABLE/fora/languages","stargazers_url":"https://api.github.com/repos/ELLIOTTCABLE/fora/stargazers","contributors_url":"https://api.github.com/repos/ELLIOTTCABLE/fora/contributors","subscribers_url":"https://api.github.com/repos/ELLIOTTCABLE/fora/subscribers","subscription_url":"https://api.github.com/repos/ELLIOTTCABLE/fora/subscription","commits_url":"https://api.github.com/repos/ELLIOTTCABLE/fora/commits{/sha}","git_commits_url":"https://api.github.com/repos/ELLIOTTCABLE/fora/git/commits{/sha}","comments_url":"https://api.github.com/repos/ELLIOTTCABLE/fora/comments{/number}","issue_comment_url":"https://api.github.com/repos/ELLIOTTCABLE/fora/issues/comments/{number}","contents_url":"https://api.github.com/repos/ELLIOTTCABLE/fora/contents/{+path}","compare_url":"https://api.github.com/repos/ELLIOTTCABLE/fora/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ELLIOTTCABLE/fora/merges","archive_url":"https://api.github.com/repos/ELLIOTTCABLE/fora/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ELLIOTTCABLE/fora/downloads","issues_url":"https://api.github.com/repos/ELLIOTTCABLE/fora/issues{/number}","pulls_url":"https://api.github.com/repos/ELLIOTTCABLE/fora/pulls{/number}","milestones_url":"https://api.github.com/repos/ELLIOTTCABLE/fora/milestones{/number}","notifications_url":"https://api.github.com/repos/ELLIOTTCABLE/fora/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ELLIOTTCABLE/fora/labels{/name}"},{"id":1062,"name":"dcbot","full_name":"kballard/dcbot","owner":{"login":"kballard","id":714,"avatar_url":"https://2.gravatar.com/avatar/6451ee8093c9cedc94f6c813b4dde2c5?d=https%3A%2F%2Fidenticons.github.com%2Fd14220ee66aeec73c49038385428ec4c.png","gravatar_id":"6451ee8093c9cedc94f6c813b4dde2c5","url":"https://api.github.com/users/kballard","html_url":"https://github.com/kballard","followers_url":"https://api.github.com/users/kballard/followers","following_url":"https://api.github.com/users/kballard/following{/other_user}","gists_url":"https://api.github.com/users/kballard/gists{/gist_id}","starred_url":"https://api.github.com/users/kballard/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kballard/subscriptions","organizations_url":"https://api.github.com/users/kballard/orgs","repos_url":"https://api.github.com/users/kballard/repos","events_url":"https://api.github.com/users/kballard/events{/privacy}","received_events_url":"https://api.github.com/users/kballard/received_events","type":"User"},"private":false,"html_url":"https://github.com/kballard/dcbot","description":"Direct Connect bot written in Ruby","fork":false,"url":"https://api.github.com/repos/kballard/dcbot","forks_url":"https://api.github.com/repos/kballard/dcbot/forks","keys_url":"https://api.github.com/repos/kballard/dcbot/keys{/key_id}","collaborators_url":"https://api.github.com/repos/kballard/dcbot/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/kballard/dcbot/teams","hooks_url":"https://api.github.com/repos/kballard/dcbot/hooks","issue_events_url":"https://api.github.com/repos/kballard/dcbot/issues/events{/number}","events_url":"https://api.github.com/repos/kballard/dcbot/events","assignees_url":"https://api.github.com/repos/kballard/dcbot/assignees{/user}","branches_url":"https://api.github.com/repos/kballard/dcbot/branches{/branch}","tags_url":"https://api.github.com/repos/kballard/dcbot/tags","blobs_url":"https://api.github.com/repos/kballard/dcbot/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/kballard/dcbot/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/kballard/dcbot/git/refs{/sha}","trees_url":"https://api.github.com/repos/kballard/dcbot/git/trees{/sha}","statuses_url":"https://api.github.com/repos/kballard/dcbot/statuses/{sha}","languages_url":"https://api.github.com/repos/kballard/dcbot/languages","stargazers_url":"https://api.github.com/repos/kballard/dcbot/stargazers","contributors_url":"https://api.github.com/repos/kballard/dcbot/contributors","subscribers_url":"https://api.github.com/repos/kballard/dcbot/subscribers","subscription_url":"https://api.github.com/repos/kballard/dcbot/subscription","commits_url":"https://api.github.com/repos/kballard/dcbot/commits{/sha}","git_commits_url":"https://api.github.com/repos/kballard/dcbot/git/commits{/sha}","comments_url":"https://api.github.com/repos/kballard/dcbot/comments{/number}","issue_comment_url":"https://api.github.com/repos/kballard/dcbot/issues/comments/{number}","contents_url":"https://api.github.com/repos/kballard/dcbot/contents/{+path}","compare_url":"https://api.github.com/repos/kballard/dcbot/compare/{base}...{head}","merges_url":"https://api.github.com/repos/kballard/dcbot/merges","archive_url":"https://api.github.com/repos/kballard/dcbot/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/kballard/dcbot/downloads","issues_url":"https://api.github.com/repos/kballard/dcbot/issues{/number}","pulls_url":"https://api.github.com/repos/kballard/dcbot/pulls{/number}","milestones_url":"https://api.github.com/repos/kballard/dcbot/milestones{/number}","notifications_url":"https://api.github.com/repos/kballard/dcbot/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/kballard/dcbot/labels{/name}"},{"id":1076,"name":"cudgel","full_name":"igouss/cudgel","owner":{"login":"igouss","id":339,"avatar_url":"https://0.gravatar.com/avatar/cedb4d8fed66a5365b4ff6a556c3385f?d=https%3A%2F%2Fidenticons.github.com%2F04025959b191f8f9de3f924f0940515f.png","gravatar_id":"cedb4d8fed66a5365b4ff6a556c3385f","url":"https://api.github.com/users/igouss","html_url":"https://github.com/igouss","followers_url":"https://api.github.com/users/igouss/followers","following_url":"https://api.github.com/users/igouss/following{/other_user}","gists_url":"https://api.github.com/users/igouss/gists{/gist_id}","starred_url":"https://api.github.com/users/igouss/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/igouss/subscriptions","organizations_url":"https://api.github.com/users/igouss/orgs","repos_url":"https://api.github.com/users/igouss/repos","events_url":"https://api.github.com/users/igouss/events{/privacy}","received_events_url":"https://api.github.com/users/igouss/received_events","type":"User"},"private":false,"html_url":"https://github.com/igouss/cudgel","description":"A short heavy stick","fork":false,"url":"https://api.github.com/repos/igouss/cudgel","forks_url":"https://api.github.com/repos/igouss/cudgel/forks","keys_url":"https://api.github.com/repos/igouss/cudgel/keys{/key_id}","collaborators_url":"https://api.github.com/repos/igouss/cudgel/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/igouss/cudgel/teams","hooks_url":"https://api.github.com/repos/igouss/cudgel/hooks","issue_events_url":"https://api.github.com/repos/igouss/cudgel/issues/events{/number}","events_url":"https://api.github.com/repos/igouss/cudgel/events","assignees_url":"https://api.github.com/repos/igouss/cudgel/assignees{/user}","branches_url":"https://api.github.com/repos/igouss/cudgel/branches{/branch}","tags_url":"https://api.github.com/repos/igouss/cudgel/tags","blobs_url":"https://api.github.com/repos/igouss/cudgel/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/igouss/cudgel/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/igouss/cudgel/git/refs{/sha}","trees_url":"https://api.github.com/repos/igouss/cudgel/git/trees{/sha}","statuses_url":"https://api.github.com/repos/igouss/cudgel/statuses/{sha}","languages_url":"https://api.github.com/repos/igouss/cudgel/languages","stargazers_url":"https://api.github.com/repos/igouss/cudgel/stargazers","contributors_url":"https://api.github.com/repos/igouss/cudgel/contributors","subscribers_url":"https://api.github.com/repos/igouss/cudgel/subscribers","subscription_url":"https://api.github.com/repos/igouss/cudgel/subscription","commits_url":"https://api.github.com/repos/igouss/cudgel/commits{/sha}","git_commits_url":"https://api.github.com/repos/igouss/cudgel/git/commits{/sha}","comments_url":"https://api.github.com/repos/igouss/cudgel/comments{/number}","issue_comment_url":"https://api.github.com/repos/igouss/cudgel/issues/comments/{number}","contents_url":"https://api.github.com/repos/igouss/cudgel/contents/{+path}","compare_url":"https://api.github.com/repos/igouss/cudgel/compare/{base}...{head}","merges_url":"https://api.github.com/repos/igouss/cudgel/merges","archive_url":"https://api.github.com/repos/igouss/cudgel/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/igouss/cudgel/downloads","issues_url":"https://api.github.com/repos/igouss/cudgel/issues{/number}","pulls_url":"https://api.github.com/repos/igouss/cudgel/pulls{/number}","milestones_url":"https://api.github.com/repos/igouss/cudgel/milestones{/number}","notifications_url":"https://api.github.com/repos/igouss/cudgel/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/igouss/cudgel/labels{/name}"},{"id":1101,"name":"micro","full_name":"seaofclouds/micro","owner":{"login":"seaofclouds","id":708,"avatar_url":"https://2.gravatar.com/avatar/0c5c5a350941044192ff794a9cd2205b?d=https%3A%2F%2Fidenticons.github.com%2Fae0eb3eed39d2bcef4622b2499a05fe6.png","gravatar_id":"0c5c5a350941044192ff794a9cd2205b","url":"https://api.github.com/users/seaofclouds","html_url":"https://github.com/seaofclouds","followers_url":"https://api.github.com/users/seaofclouds/followers","following_url":"https://api.github.com/users/seaofclouds/following{/other_user}","gists_url":"https://api.github.com/users/seaofclouds/gists{/gist_id}","starred_url":"https://api.github.com/users/seaofclouds/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/seaofclouds/subscriptions","organizations_url":"https://api.github.com/users/seaofclouds/orgs","repos_url":"https://api.github.com/users/seaofclouds/repos","events_url":"https://api.github.com/users/seaofclouds/events{/privacy}","received_events_url":"https://api.github.com/users/seaofclouds/received_events","type":"User"},"private":false,"html_url":"https://github.com/seaofclouds/micro","description":"blogware that fits in your pocket","fork":false,"url":"https://api.github.com/repos/seaofclouds/micro","forks_url":"https://api.github.com/repos/seaofclouds/micro/forks","keys_url":"https://api.github.com/repos/seaofclouds/micro/keys{/key_id}","collaborators_url":"https://api.github.com/repos/seaofclouds/micro/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/seaofclouds/micro/teams","hooks_url":"https://api.github.com/repos/seaofclouds/micro/hooks","issue_events_url":"https://api.github.com/repos/seaofclouds/micro/issues/events{/number}","events_url":"https://api.github.com/repos/seaofclouds/micro/events","assignees_url":"https://api.github.com/repos/seaofclouds/micro/assignees{/user}","branches_url":"https://api.github.com/repos/seaofclouds/micro/branches{/branch}","tags_url":"https://api.github.com/repos/seaofclouds/micro/tags","blobs_url":"https://api.github.com/repos/seaofclouds/micro/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/seaofclouds/micro/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/seaofclouds/micro/git/refs{/sha}","trees_url":"https://api.github.com/repos/seaofclouds/micro/git/trees{/sha}","statuses_url":"https://api.github.com/repos/seaofclouds/micro/statuses/{sha}","languages_url":"https://api.github.com/repos/seaofclouds/micro/languages","stargazers_url":"https://api.github.com/repos/seaofclouds/micro/stargazers","contributors_url":"https://api.github.com/repos/seaofclouds/micro/contributors","subscribers_url":"https://api.github.com/repos/seaofclouds/micro/subscribers","subscription_url":"https://api.github.com/repos/seaofclouds/micro/subscription","commits_url":"https://api.github.com/repos/seaofclouds/micro/commits{/sha}","git_commits_url":"https://api.github.com/repos/seaofclouds/micro/git/commits{/sha}","comments_url":"https://api.github.com/repos/seaofclouds/micro/comments{/number}","issue_comment_url":"https://api.github.com/repos/seaofclouds/micro/issues/comments/{number}","contents_url":"https://api.github.com/repos/seaofclouds/micro/contents/{+path}","compare_url":"https://api.github.com/repos/seaofclouds/micro/compare/{base}...{head}","merges_url":"https://api.github.com/repos/seaofclouds/micro/merges","archive_url":"https://api.github.com/repos/seaofclouds/micro/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/seaofclouds/micro/downloads","issues_url":"https://api.github.com/repos/seaofclouds/micro/issues{/number}","pulls_url":"https://api.github.com/repos/seaofclouds/micro/pulls{/number}","milestones_url":"https://api.github.com/repos/seaofclouds/micro/milestones{/number}","notifications_url":"https://api.github.com/repos/seaofclouds/micro/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/seaofclouds/micro/labels{/name}"},{"id":1102,"name":"cacheable","full_name":"tobi/cacheable","owner":{"login":"tobi","id":347,"avatar_url":"https://1.gravatar.com/avatar/44a1b8a3a990e1a496261f55cd44fbd9?d=https%3A%2F%2Fidenticons.github.com%2Fc5ff2543b53f4cc0ad3819a36752467b.png","gravatar_id":"44a1b8a3a990e1a496261f55cd44fbd9","url":"https://api.github.com/users/tobi","html_url":"https://github.com/tobi","followers_url":"https://api.github.com/users/tobi/followers","following_url":"https://api.github.com/users/tobi/following{/other_user}","gists_url":"https://api.github.com/users/tobi/gists{/gist_id}","starred_url":"https://api.github.com/users/tobi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tobi/subscriptions","organizations_url":"https://api.github.com/users/tobi/orgs","repos_url":"https://api.github.com/users/tobi/repos","events_url":"https://api.github.com/users/tobi/events{/privacy}","received_events_url":"https://api.github.com/users/tobi/received_events","type":"User"},"private":false,"html_url":"https://github.com/tobi/cacheable","description":"Page caching extension of Shopify","fork":false,"url":"https://api.github.com/repos/tobi/cacheable","forks_url":"https://api.github.com/repos/tobi/cacheable/forks","keys_url":"https://api.github.com/repos/tobi/cacheable/keys{/key_id}","collaborators_url":"https://api.github.com/repos/tobi/cacheable/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/tobi/cacheable/teams","hooks_url":"https://api.github.com/repos/tobi/cacheable/hooks","issue_events_url":"https://api.github.com/repos/tobi/cacheable/issues/events{/number}","events_url":"https://api.github.com/repos/tobi/cacheable/events","assignees_url":"https://api.github.com/repos/tobi/cacheable/assignees{/user}","branches_url":"https://api.github.com/repos/tobi/cacheable/branches{/branch}","tags_url":"https://api.github.com/repos/tobi/cacheable/tags","blobs_url":"https://api.github.com/repos/tobi/cacheable/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/tobi/cacheable/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/tobi/cacheable/git/refs{/sha}","trees_url":"https://api.github.com/repos/tobi/cacheable/git/trees{/sha}","statuses_url":"https://api.github.com/repos/tobi/cacheable/statuses/{sha}","languages_url":"https://api.github.com/repos/tobi/cacheable/languages","stargazers_url":"https://api.github.com/repos/tobi/cacheable/stargazers","contributors_url":"https://api.github.com/repos/tobi/cacheable/contributors","subscribers_url":"https://api.github.com/repos/tobi/cacheable/subscribers","subscription_url":"https://api.github.com/repos/tobi/cacheable/subscription","commits_url":"https://api.github.com/repos/tobi/cacheable/commits{/sha}","git_commits_url":"https://api.github.com/repos/tobi/cacheable/git/commits{/sha}","comments_url":"https://api.github.com/repos/tobi/cacheable/comments{/number}","issue_comment_url":"https://api.github.com/repos/tobi/cacheable/issues/comments/{number}","contents_url":"https://api.github.com/repos/tobi/cacheable/contents/{+path}","compare_url":"https://api.github.com/repos/tobi/cacheable/compare/{base}...{head}","merges_url":"https://api.github.com/repos/tobi/cacheable/merges","archive_url":"https://api.github.com/repos/tobi/cacheable/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/tobi/cacheable/downloads","issues_url":"https://api.github.com/repos/tobi/cacheable/issues{/number}","pulls_url":"https://api.github.com/repos/tobi/cacheable/pulls{/number}","milestones_url":"https://api.github.com/repos/tobi/cacheable/milestones{/number}","notifications_url":"https://api.github.com/repos/tobi/cacheable/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/tobi/cacheable/labels{/name}"},{"id":1104,"name":"micro-theme","full_name":"seaofclouds/micro-theme","owner":{"login":"seaofclouds","id":708,"avatar_url":"https://2.gravatar.com/avatar/0c5c5a350941044192ff794a9cd2205b?d=https%3A%2F%2Fidenticons.github.com%2Fae0eb3eed39d2bcef4622b2499a05fe6.png","gravatar_id":"0c5c5a350941044192ff794a9cd2205b","url":"https://api.github.com/users/seaofclouds","html_url":"https://github.com/seaofclouds","followers_url":"https://api.github.com/users/seaofclouds/followers","following_url":"https://api.github.com/users/seaofclouds/following{/other_user}","gists_url":"https://api.github.com/users/seaofclouds/gists{/gist_id}","starred_url":"https://api.github.com/users/seaofclouds/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/seaofclouds/subscriptions","organizations_url":"https://api.github.com/users/seaofclouds/orgs","repos_url":"https://api.github.com/users/seaofclouds/repos","events_url":"https://api.github.com/users/seaofclouds/events{/privacy}","received_events_url":"https://api.github.com/users/seaofclouds/received_events","type":"User"},"private":false,"html_url":"https://github.com/seaofclouds/micro-theme","description":"simple blogging theme for mephisto and blogger","fork":false,"url":"https://api.github.com/repos/seaofclouds/micro-theme","forks_url":"https://api.github.com/repos/seaofclouds/micro-theme/forks","keys_url":"https://api.github.com/repos/seaofclouds/micro-theme/keys{/key_id}","collaborators_url":"https://api.github.com/repos/seaofclouds/micro-theme/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/seaofclouds/micro-theme/teams","hooks_url":"https://api.github.com/repos/seaofclouds/micro-theme/hooks","issue_events_url":"https://api.github.com/repos/seaofclouds/micro-theme/issues/events{/number}","events_url":"https://api.github.com/repos/seaofclouds/micro-theme/events","assignees_url":"https://api.github.com/repos/seaofclouds/micro-theme/assignees{/user}","branches_url":"https://api.github.com/repos/seaofclouds/micro-theme/branches{/branch}","tags_url":"https://api.github.com/repos/seaofclouds/micro-theme/tags","blobs_url":"https://api.github.com/repos/seaofclouds/micro-theme/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/seaofclouds/micro-theme/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/seaofclouds/micro-theme/git/refs{/sha}","trees_url":"https://api.github.com/repos/seaofclouds/micro-theme/git/trees{/sha}","statuses_url":"https://api.github.com/repos/seaofclouds/micro-theme/statuses/{sha}","languages_url":"https://api.github.com/repos/seaofclouds/micro-theme/languages","stargazers_url":"https://api.github.com/repos/seaofclouds/micro-theme/stargazers","contributors_url":"https://api.github.com/repos/seaofclouds/micro-theme/contributors","subscribers_url":"https://api.github.com/repos/seaofclouds/micro-theme/subscribers","subscription_url":"https://api.github.com/repos/seaofclouds/micro-theme/subscription","commits_url":"https://api.github.com/repos/seaofclouds/micro-theme/commits{/sha}","git_commits_url":"https://api.github.com/repos/seaofclouds/micro-theme/git/commits{/sha}","comments_url":"https://api.github.com/repos/seaofclouds/micro-theme/comments{/number}","issue_comment_url":"https://api.github.com/repos/seaofclouds/micro-theme/issues/comments/{number}","contents_url":"https://api.github.com/repos/seaofclouds/micro-theme/contents/{+path}","compare_url":"https://api.github.com/repos/seaofclouds/micro-theme/compare/{base}...{head}","merges_url":"https://api.github.com/repos/seaofclouds/micro-theme/merges","archive_url":"https://api.github.com/repos/seaofclouds/micro-theme/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/seaofclouds/micro-theme/downloads","issues_url":"https://api.github.com/repos/seaofclouds/micro-theme/issues{/number}","pulls_url":"https://api.github.com/repos/seaofclouds/micro-theme/pulls{/number}","milestones_url":"https://api.github.com/repos/seaofclouds/micro-theme/milestones{/number}","notifications_url":"https://api.github.com/repos/seaofclouds/micro-theme/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/seaofclouds/micro-theme/labels{/name}"},{"id":1108,"name":"icaltodoscheduler","full_name":"lypanov/icaltodoscheduler","owner":{"login":"lypanov","id":311,"avatar_url":"https://2.gravatar.com/avatar/fde764988033c802599aa33705dce509?d=https%3A%2F%2Fidenticons.github.com%2F9dfcd5e558dfa04aaf37f137a1d9d3e5.png","gravatar_id":"fde764988033c802599aa33705dce509","url":"https://api.github.com/users/lypanov","html_url":"https://github.com/lypanov","followers_url":"https://api.github.com/users/lypanov/followers","following_url":"https://api.github.com/users/lypanov/following{/other_user}","gists_url":"https://api.github.com/users/lypanov/gists{/gist_id}","starred_url":"https://api.github.com/users/lypanov/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lypanov/subscriptions","organizations_url":"https://api.github.com/users/lypanov/orgs","repos_url":"https://api.github.com/users/lypanov/repos","events_url":"https://api.github.com/users/lypanov/events{/privacy}","received_events_url":"https://api.github.com/users/lypanov/received_events","type":"User"},"private":false,"html_url":"https://github.com/lypanov/icaltodoscheduler","description":"iCal To Do scheduler for Leopard","fork":false,"url":"https://api.github.com/repos/lypanov/icaltodoscheduler","forks_url":"https://api.github.com/repos/lypanov/icaltodoscheduler/forks","keys_url":"https://api.github.com/repos/lypanov/icaltodoscheduler/keys{/key_id}","collaborators_url":"https://api.github.com/repos/lypanov/icaltodoscheduler/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/lypanov/icaltodoscheduler/teams","hooks_url":"https://api.github.com/repos/lypanov/icaltodoscheduler/hooks","issue_events_url":"https://api.github.com/repos/lypanov/icaltodoscheduler/issues/events{/number}","events_url":"https://api.github.com/repos/lypanov/icaltodoscheduler/events","assignees_url":"https://api.github.com/repos/lypanov/icaltodoscheduler/assignees{/user}","branches_url":"https://api.github.com/repos/lypanov/icaltodoscheduler/branches{/branch}","tags_url":"https://api.github.com/repos/lypanov/icaltodoscheduler/tags","blobs_url":"https://api.github.com/repos/lypanov/icaltodoscheduler/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/lypanov/icaltodoscheduler/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/lypanov/icaltodoscheduler/git/refs{/sha}","trees_url":"https://api.github.com/repos/lypanov/icaltodoscheduler/git/trees{/sha}","statuses_url":"https://api.github.com/repos/lypanov/icaltodoscheduler/statuses/{sha}","languages_url":"https://api.github.com/repos/lypanov/icaltodoscheduler/languages","stargazers_url":"https://api.github.com/repos/lypanov/icaltodoscheduler/stargazers","contributors_url":"https://api.github.com/repos/lypanov/icaltodoscheduler/contributors","subscribers_url":"https://api.github.com/repos/lypanov/icaltodoscheduler/subscribers","subscription_url":"https://api.github.com/repos/lypanov/icaltodoscheduler/subscription","commits_url":"https://api.github.com/repos/lypanov/icaltodoscheduler/commits{/sha}","git_commits_url":"https://api.github.com/repos/lypanov/icaltodoscheduler/git/commits{/sha}","comments_url":"https://api.github.com/repos/lypanov/icaltodoscheduler/comments{/number}","issue_comment_url":"https://api.github.com/repos/lypanov/icaltodoscheduler/issues/comments/{number}","contents_url":"https://api.github.com/repos/lypanov/icaltodoscheduler/contents/{+path}","compare_url":"https://api.github.com/repos/lypanov/icaltodoscheduler/compare/{base}...{head}","merges_url":"https://api.github.com/repos/lypanov/icaltodoscheduler/merges","archive_url":"https://api.github.com/repos/lypanov/icaltodoscheduler/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/lypanov/icaltodoscheduler/downloads","issues_url":"https://api.github.com/repos/lypanov/icaltodoscheduler/issues{/number}","pulls_url":"https://api.github.com/repos/lypanov/icaltodoscheduler/pulls{/number}","milestones_url":"https://api.github.com/repos/lypanov/icaltodoscheduler/milestones{/number}","notifications_url":"https://api.github.com/repos/lypanov/icaltodoscheduler/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/lypanov/icaltodoscheduler/labels{/name}"},{"id":1111,"name":"catface","full_name":"jney/catface","owner":{"login":"jney","id":747,"avatar_url":"https://1.gravatar.com/avatar/4b87f676cb6c4d648d71000681823693?d=https%3A%2F%2Fidenticons.github.com%2F8d317bdcf4aafcfc22149d77babee96d.png","gravatar_id":"4b87f676cb6c4d648d71000681823693","url":"https://api.github.com/users/jney","html_url":"https://github.com/jney","followers_url":"https://api.github.com/users/jney/followers","following_url":"https://api.github.com/users/jney/following{/other_user}","gists_url":"https://api.github.com/users/jney/gists{/gist_id}","starred_url":"https://api.github.com/users/jney/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jney/subscriptions","organizations_url":"https://api.github.com/users/jney/orgs","repos_url":"https://api.github.com/users/jney/repos","events_url":"https://api.github.com/users/jney/events{/privacy}","received_events_url":"https://api.github.com/users/jney/received_events","type":"User"},"private":false,"html_url":"https://github.com/jney/catface","description":"jquey plugin: a mix between facebox & catfish. message alert.","fork":false,"url":"https://api.github.com/repos/jney/catface","forks_url":"https://api.github.com/repos/jney/catface/forks","keys_url":"https://api.github.com/repos/jney/catface/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jney/catface/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jney/catface/teams","hooks_url":"https://api.github.com/repos/jney/catface/hooks","issue_events_url":"https://api.github.com/repos/jney/catface/issues/events{/number}","events_url":"https://api.github.com/repos/jney/catface/events","assignees_url":"https://api.github.com/repos/jney/catface/assignees{/user}","branches_url":"https://api.github.com/repos/jney/catface/branches{/branch}","tags_url":"https://api.github.com/repos/jney/catface/tags","blobs_url":"https://api.github.com/repos/jney/catface/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jney/catface/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jney/catface/git/refs{/sha}","trees_url":"https://api.github.com/repos/jney/catface/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jney/catface/statuses/{sha}","languages_url":"https://api.github.com/repos/jney/catface/languages","stargazers_url":"https://api.github.com/repos/jney/catface/stargazers","contributors_url":"https://api.github.com/repos/jney/catface/contributors","subscribers_url":"https://api.github.com/repos/jney/catface/subscribers","subscription_url":"https://api.github.com/repos/jney/catface/subscription","commits_url":"https://api.github.com/repos/jney/catface/commits{/sha}","git_commits_url":"https://api.github.com/repos/jney/catface/git/commits{/sha}","comments_url":"https://api.github.com/repos/jney/catface/comments{/number}","issue_comment_url":"https://api.github.com/repos/jney/catface/issues/comments/{number}","contents_url":"https://api.github.com/repos/jney/catface/contents/{+path}","compare_url":"https://api.github.com/repos/jney/catface/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jney/catface/merges","archive_url":"https://api.github.com/repos/jney/catface/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jney/catface/downloads","issues_url":"https://api.github.com/repos/jney/catface/issues{/number}","pulls_url":"https://api.github.com/repos/jney/catface/pulls{/number}","milestones_url":"https://api.github.com/repos/jney/catface/milestones{/number}","notifications_url":"https://api.github.com/repos/jney/catface/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jney/catface/labels{/name}"},{"id":1124,"name":"pyelection","full_name":"alex/pyelection","owner":{"login":"alex","id":772,"avatar_url":"https://2.gravatar.com/avatar/edcdfd5affb524e0f88ec1a00ed3fe5d?d=https%3A%2F%2Fidenticons.github.com%2Fe57c6b956a6521b28495f2886ca0977a.png","gravatar_id":"edcdfd5affb524e0f88ec1a00ed3fe5d","url":"https://api.github.com/users/alex","html_url":"https://github.com/alex","followers_url":"https://api.github.com/users/alex/followers","following_url":"https://api.github.com/users/alex/following{/other_user}","gists_url":"https://api.github.com/users/alex/gists{/gist_id}","starred_url":"https://api.github.com/users/alex/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alex/subscriptions","organizations_url":"https://api.github.com/users/alex/orgs","repos_url":"https://api.github.com/users/alex/repos","events_url":"https://api.github.com/users/alex/events{/privacy}","received_events_url":"https://api.github.com/users/alex/received_events","type":"User"},"private":false,"html_url":"https://github.com/alex/pyelection","description":"A python application for following the US primaries","fork":false,"url":"https://api.github.com/repos/alex/pyelection","forks_url":"https://api.github.com/repos/alex/pyelection/forks","keys_url":"https://api.github.com/repos/alex/pyelection/keys{/key_id}","collaborators_url":"https://api.github.com/repos/alex/pyelection/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/alex/pyelection/teams","hooks_url":"https://api.github.com/repos/alex/pyelection/hooks","issue_events_url":"https://api.github.com/repos/alex/pyelection/issues/events{/number}","events_url":"https://api.github.com/repos/alex/pyelection/events","assignees_url":"https://api.github.com/repos/alex/pyelection/assignees{/user}","branches_url":"https://api.github.com/repos/alex/pyelection/branches{/branch}","tags_url":"https://api.github.com/repos/alex/pyelection/tags","blobs_url":"https://api.github.com/repos/alex/pyelection/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/alex/pyelection/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/alex/pyelection/git/refs{/sha}","trees_url":"https://api.github.com/repos/alex/pyelection/git/trees{/sha}","statuses_url":"https://api.github.com/repos/alex/pyelection/statuses/{sha}","languages_url":"https://api.github.com/repos/alex/pyelection/languages","stargazers_url":"https://api.github.com/repos/alex/pyelection/stargazers","contributors_url":"https://api.github.com/repos/alex/pyelection/contributors","subscribers_url":"https://api.github.com/repos/alex/pyelection/subscribers","subscription_url":"https://api.github.com/repos/alex/pyelection/subscription","commits_url":"https://api.github.com/repos/alex/pyelection/commits{/sha}","git_commits_url":"https://api.github.com/repos/alex/pyelection/git/commits{/sha}","comments_url":"https://api.github.com/repos/alex/pyelection/comments{/number}","issue_comment_url":"https://api.github.com/repos/alex/pyelection/issues/comments/{number}","contents_url":"https://api.github.com/repos/alex/pyelection/contents/{+path}","compare_url":"https://api.github.com/repos/alex/pyelection/compare/{base}...{head}","merges_url":"https://api.github.com/repos/alex/pyelection/merges","archive_url":"https://api.github.com/repos/alex/pyelection/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/alex/pyelection/downloads","issues_url":"https://api.github.com/repos/alex/pyelection/issues{/number}","pulls_url":"https://api.github.com/repos/alex/pyelection/pulls{/number}","milestones_url":"https://api.github.com/repos/alex/pyelection/milestones{/number}","notifications_url":"https://api.github.com/repos/alex/pyelection/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/alex/pyelection/labels{/name}"},{"id":1126,"name":"git-todo-py","full_name":"lydgate/git-todo-py","owner":{"login":"lydgate","id":771,"avatar_url":"https://2.gravatar.com/avatar/6f0880ac5ed12ad4b40e5befd00032bd?d=https%3A%2F%2Fidenticons.github.com%2Fb7ee6f5f9aa5cd17ca1aea43ce848496.png","gravatar_id":"6f0880ac5ed12ad4b40e5befd00032bd","url":"https://api.github.com/users/lydgate","html_url":"https://github.com/lydgate","followers_url":"https://api.github.com/users/lydgate/followers","following_url":"https://api.github.com/users/lydgate/following{/other_user}","gists_url":"https://api.github.com/users/lydgate/gists{/gist_id}","starred_url":"https://api.github.com/users/lydgate/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lydgate/subscriptions","organizations_url":"https://api.github.com/users/lydgate/orgs","repos_url":"https://api.github.com/users/lydgate/repos","events_url":"https://api.github.com/users/lydgate/events{/privacy}","received_events_url":"https://api.github.com/users/lydgate/received_events","type":"User"},"private":false,"html_url":"https://github.com/lydgate/git-todo-py","description":"A fork of todo.py that commits all changes into a git repository.","fork":false,"url":"https://api.github.com/repos/lydgate/git-todo-py","forks_url":"https://api.github.com/repos/lydgate/git-todo-py/forks","keys_url":"https://api.github.com/repos/lydgate/git-todo-py/keys{/key_id}","collaborators_url":"https://api.github.com/repos/lydgate/git-todo-py/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/lydgate/git-todo-py/teams","hooks_url":"https://api.github.com/repos/lydgate/git-todo-py/hooks","issue_events_url":"https://api.github.com/repos/lydgate/git-todo-py/issues/events{/number}","events_url":"https://api.github.com/repos/lydgate/git-todo-py/events","assignees_url":"https://api.github.com/repos/lydgate/git-todo-py/assignees{/user}","branches_url":"https://api.github.com/repos/lydgate/git-todo-py/branches{/branch}","tags_url":"https://api.github.com/repos/lydgate/git-todo-py/tags","blobs_url":"https://api.github.com/repos/lydgate/git-todo-py/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/lydgate/git-todo-py/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/lydgate/git-todo-py/git/refs{/sha}","trees_url":"https://api.github.com/repos/lydgate/git-todo-py/git/trees{/sha}","statuses_url":"https://api.github.com/repos/lydgate/git-todo-py/statuses/{sha}","languages_url":"https://api.github.com/repos/lydgate/git-todo-py/languages","stargazers_url":"https://api.github.com/repos/lydgate/git-todo-py/stargazers","contributors_url":"https://api.github.com/repos/lydgate/git-todo-py/contributors","subscribers_url":"https://api.github.com/repos/lydgate/git-todo-py/subscribers","subscription_url":"https://api.github.com/repos/lydgate/git-todo-py/subscription","commits_url":"https://api.github.com/repos/lydgate/git-todo-py/commits{/sha}","git_commits_url":"https://api.github.com/repos/lydgate/git-todo-py/git/commits{/sha}","comments_url":"https://api.github.com/repos/lydgate/git-todo-py/comments{/number}","issue_comment_url":"https://api.github.com/repos/lydgate/git-todo-py/issues/comments/{number}","contents_url":"https://api.github.com/repos/lydgate/git-todo-py/contents/{+path}","compare_url":"https://api.github.com/repos/lydgate/git-todo-py/compare/{base}...{head}","merges_url":"https://api.github.com/repos/lydgate/git-todo-py/merges","archive_url":"https://api.github.com/repos/lydgate/git-todo-py/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/lydgate/git-todo-py/downloads","issues_url":"https://api.github.com/repos/lydgate/git-todo-py/issues{/number}","pulls_url":"https://api.github.com/repos/lydgate/git-todo-py/pulls{/number}","milestones_url":"https://api.github.com/repos/lydgate/git-todo-py/milestones{/number}","notifications_url":"https://api.github.com/repos/lydgate/git-todo-py/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/lydgate/git-todo-py/labels{/name}"},{"id":1129,"name":"merb-core","full_name":"piclez/merb-core","owner":{"login":"piclez","id":781,"avatar_url":"https://2.gravatar.com/avatar/c87ede80f824a59883082b697e12348d?d=https%3A%2F%2Fidenticons.github.com%2F7143d7fbadfa4693b9eec507d9d37443.png","gravatar_id":"c87ede80f824a59883082b697e12348d","url":"https://api.github.com/users/piclez","html_url":"https://github.com/piclez","followers_url":"https://api.github.com/users/piclez/followers","following_url":"https://api.github.com/users/piclez/following{/other_user}","gists_url":"https://api.github.com/users/piclez/gists{/gist_id}","starred_url":"https://api.github.com/users/piclez/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/piclez/subscriptions","organizations_url":"https://api.github.com/users/piclez/orgs","repos_url":"https://api.github.com/users/piclez/repos","events_url":"https://api.github.com/users/piclez/events{/privacy}","received_events_url":"https://api.github.com/users/piclez/received_events","type":"User"},"private":false,"html_url":"https://github.com/piclez/merb-core","description":"Merb Core: All you need. None you don't.","fork":true,"url":"https://api.github.com/repos/piclez/merb-core","forks_url":"https://api.github.com/repos/piclez/merb-core/forks","keys_url":"https://api.github.com/repos/piclez/merb-core/keys{/key_id}","collaborators_url":"https://api.github.com/repos/piclez/merb-core/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/piclez/merb-core/teams","hooks_url":"https://api.github.com/repos/piclez/merb-core/hooks","issue_events_url":"https://api.github.com/repos/piclez/merb-core/issues/events{/number}","events_url":"https://api.github.com/repos/piclez/merb-core/events","assignees_url":"https://api.github.com/repos/piclez/merb-core/assignees{/user}","branches_url":"https://api.github.com/repos/piclez/merb-core/branches{/branch}","tags_url":"https://api.github.com/repos/piclez/merb-core/tags","blobs_url":"https://api.github.com/repos/piclez/merb-core/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/piclez/merb-core/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/piclez/merb-core/git/refs{/sha}","trees_url":"https://api.github.com/repos/piclez/merb-core/git/trees{/sha}","statuses_url":"https://api.github.com/repos/piclez/merb-core/statuses/{sha}","languages_url":"https://api.github.com/repos/piclez/merb-core/languages","stargazers_url":"https://api.github.com/repos/piclez/merb-core/stargazers","contributors_url":"https://api.github.com/repos/piclez/merb-core/contributors","subscribers_url":"https://api.github.com/repos/piclez/merb-core/subscribers","subscription_url":"https://api.github.com/repos/piclez/merb-core/subscription","commits_url":"https://api.github.com/repos/piclez/merb-core/commits{/sha}","git_commits_url":"https://api.github.com/repos/piclez/merb-core/git/commits{/sha}","comments_url":"https://api.github.com/repos/piclez/merb-core/comments{/number}","issue_comment_url":"https://api.github.com/repos/piclez/merb-core/issues/comments/{number}","contents_url":"https://api.github.com/repos/piclez/merb-core/contents/{+path}","compare_url":"https://api.github.com/repos/piclez/merb-core/compare/{base}...{head}","merges_url":"https://api.github.com/repos/piclez/merb-core/merges","archive_url":"https://api.github.com/repos/piclez/merb-core/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/piclez/merb-core/downloads","issues_url":"https://api.github.com/repos/piclez/merb-core/issues{/number}","pulls_url":"https://api.github.com/repos/piclez/merb-core/pulls{/number}","milestones_url":"https://api.github.com/repos/piclez/merb-core/milestones{/number}","notifications_url":"https://api.github.com/repos/piclez/merb-core/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/piclez/merb-core/labels{/name}"},{"id":1130,"name":"merb-more","full_name":"piclez/merb-more","owner":{"login":"piclez","id":781,"avatar_url":"https://2.gravatar.com/avatar/c87ede80f824a59883082b697e12348d?d=https%3A%2F%2Fidenticons.github.com%2F7143d7fbadfa4693b9eec507d9d37443.png","gravatar_id":"c87ede80f824a59883082b697e12348d","url":"https://api.github.com/users/piclez","html_url":"https://github.com/piclez","followers_url":"https://api.github.com/users/piclez/followers","following_url":"https://api.github.com/users/piclez/following{/other_user}","gists_url":"https://api.github.com/users/piclez/gists{/gist_id}","starred_url":"https://api.github.com/users/piclez/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/piclez/subscriptions","organizations_url":"https://api.github.com/users/piclez/orgs","repos_url":"https://api.github.com/users/piclez/repos","events_url":"https://api.github.com/users/piclez/events{/privacy}","received_events_url":"https://api.github.com/users/piclez/received_events","type":"User"},"private":false,"html_url":"https://github.com/piclez/merb-more","description":"Merb More: The Full Stack. Take what you need; leave what you don't.","fork":true,"url":"https://api.github.com/repos/piclez/merb-more","forks_url":"https://api.github.com/repos/piclez/merb-more/forks","keys_url":"https://api.github.com/repos/piclez/merb-more/keys{/key_id}","collaborators_url":"https://api.github.com/repos/piclez/merb-more/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/piclez/merb-more/teams","hooks_url":"https://api.github.com/repos/piclez/merb-more/hooks","issue_events_url":"https://api.github.com/repos/piclez/merb-more/issues/events{/number}","events_url":"https://api.github.com/repos/piclez/merb-more/events","assignees_url":"https://api.github.com/repos/piclez/merb-more/assignees{/user}","branches_url":"https://api.github.com/repos/piclez/merb-more/branches{/branch}","tags_url":"https://api.github.com/repos/piclez/merb-more/tags","blobs_url":"https://api.github.com/repos/piclez/merb-more/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/piclez/merb-more/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/piclez/merb-more/git/refs{/sha}","trees_url":"https://api.github.com/repos/piclez/merb-more/git/trees{/sha}","statuses_url":"https://api.github.com/repos/piclez/merb-more/statuses/{sha}","languages_url":"https://api.github.com/repos/piclez/merb-more/languages","stargazers_url":"https://api.github.com/repos/piclez/merb-more/stargazers","contributors_url":"https://api.github.com/repos/piclez/merb-more/contributors","subscribers_url":"https://api.github.com/repos/piclez/merb-more/subscribers","subscription_url":"https://api.github.com/repos/piclez/merb-more/subscription","commits_url":"https://api.github.com/repos/piclez/merb-more/commits{/sha}","git_commits_url":"https://api.github.com/repos/piclez/merb-more/git/commits{/sha}","comments_url":"https://api.github.com/repos/piclez/merb-more/comments{/number}","issue_comment_url":"https://api.github.com/repos/piclez/merb-more/issues/comments/{number}","contents_url":"https://api.github.com/repos/piclez/merb-more/contents/{+path}","compare_url":"https://api.github.com/repos/piclez/merb-more/compare/{base}...{head}","merges_url":"https://api.github.com/repos/piclez/merb-more/merges","archive_url":"https://api.github.com/repos/piclez/merb-more/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/piclez/merb-more/downloads","issues_url":"https://api.github.com/repos/piclez/merb-more/issues{/number}","pulls_url":"https://api.github.com/repos/piclez/merb-more/pulls{/number}","milestones_url":"https://api.github.com/repos/piclez/merb-more/milestones{/number}","notifications_url":"https://api.github.com/repos/piclez/merb-more/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/piclez/merb-more/labels{/name}"},{"id":1131,"name":"merb-plugins","full_name":"piclez/merb-plugins","owner":{"login":"piclez","id":781,"avatar_url":"https://2.gravatar.com/avatar/c87ede80f824a59883082b697e12348d?d=https%3A%2F%2Fidenticons.github.com%2F7143d7fbadfa4693b9eec507d9d37443.png","gravatar_id":"c87ede80f824a59883082b697e12348d","url":"https://api.github.com/users/piclez","html_url":"https://github.com/piclez","followers_url":"https://api.github.com/users/piclez/followers","following_url":"https://api.github.com/users/piclez/following{/other_user}","gists_url":"https://api.github.com/users/piclez/gists{/gist_id}","starred_url":"https://api.github.com/users/piclez/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/piclez/subscriptions","organizations_url":"https://api.github.com/users/piclez/orgs","repos_url":"https://api.github.com/users/piclez/repos","events_url":"https://api.github.com/users/piclez/events{/privacy}","received_events_url":"https://api.github.com/users/piclez/received_events","type":"User"},"private":false,"html_url":"https://github.com/piclez/merb-plugins","description":"Merb Plugins: Even more modules to hook up your Merb installation","fork":true,"url":"https://api.github.com/repos/piclez/merb-plugins","forks_url":"https://api.github.com/repos/piclez/merb-plugins/forks","keys_url":"https://api.github.com/repos/piclez/merb-plugins/keys{/key_id}","collaborators_url":"https://api.github.com/repos/piclez/merb-plugins/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/piclez/merb-plugins/teams","hooks_url":"https://api.github.com/repos/piclez/merb-plugins/hooks","issue_events_url":"https://api.github.com/repos/piclez/merb-plugins/issues/events{/number}","events_url":"https://api.github.com/repos/piclez/merb-plugins/events","assignees_url":"https://api.github.com/repos/piclez/merb-plugins/assignees{/user}","branches_url":"https://api.github.com/repos/piclez/merb-plugins/branches{/branch}","tags_url":"https://api.github.com/repos/piclez/merb-plugins/tags","blobs_url":"https://api.github.com/repos/piclez/merb-plugins/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/piclez/merb-plugins/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/piclez/merb-plugins/git/refs{/sha}","trees_url":"https://api.github.com/repos/piclez/merb-plugins/git/trees{/sha}","statuses_url":"https://api.github.com/repos/piclez/merb-plugins/statuses/{sha}","languages_url":"https://api.github.com/repos/piclez/merb-plugins/languages","stargazers_url":"https://api.github.com/repos/piclez/merb-plugins/stargazers","contributors_url":"https://api.github.com/repos/piclez/merb-plugins/contributors","subscribers_url":"https://api.github.com/repos/piclez/merb-plugins/subscribers","subscription_url":"https://api.github.com/repos/piclez/merb-plugins/subscription","commits_url":"https://api.github.com/repos/piclez/merb-plugins/commits{/sha}","git_commits_url":"https://api.github.com/repos/piclez/merb-plugins/git/commits{/sha}","comments_url":"https://api.github.com/repos/piclez/merb-plugins/comments{/number}","issue_comment_url":"https://api.github.com/repos/piclez/merb-plugins/issues/comments/{number}","contents_url":"https://api.github.com/repos/piclez/merb-plugins/contents/{+path}","compare_url":"https://api.github.com/repos/piclez/merb-plugins/compare/{base}...{head}","merges_url":"https://api.github.com/repos/piclez/merb-plugins/merges","archive_url":"https://api.github.com/repos/piclez/merb-plugins/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/piclez/merb-plugins/downloads","issues_url":"https://api.github.com/repos/piclez/merb-plugins/issues{/number}","pulls_url":"https://api.github.com/repos/piclez/merb-plugins/pulls{/number}","milestones_url":"https://api.github.com/repos/piclez/merb-plugins/milestones{/number}","notifications_url":"https://api.github.com/repos/piclez/merb-plugins/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/piclez/merb-plugins/labels{/name}"},{"id":1157,"name":"ami-ragel","full_name":"jicksta/ami-ragel","owner":{"login":"jicksta","id":155,"avatar_url":"https://1.gravatar.com/avatar/c48fff96ea2bf539a7939ca6d94f2443?d=https%3A%2F%2Fidenticons.github.com%2F2a79ea27c279e471f4d180b08d62b00a.png","gravatar_id":"c48fff96ea2bf539a7939ca6d94f2443","url":"https://api.github.com/users/jicksta","html_url":"https://github.com/jicksta","followers_url":"https://api.github.com/users/jicksta/followers","following_url":"https://api.github.com/users/jicksta/following{/other_user}","gists_url":"https://api.github.com/users/jicksta/gists{/gist_id}","starred_url":"https://api.github.com/users/jicksta/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jicksta/subscriptions","organizations_url":"https://api.github.com/users/jicksta/orgs","repos_url":"https://api.github.com/users/jicksta/repos","events_url":"https://api.github.com/users/jicksta/events{/privacy}","received_events_url":"https://api.github.com/users/jicksta/received_events","type":"User"},"private":false,"html_url":"https://github.com/jicksta/ami-ragel","description":"The new Asterisk Manager Interface implementation that uses Ragel and EventMachine","fork":false,"url":"https://api.github.com/repos/jicksta/ami-ragel","forks_url":"https://api.github.com/repos/jicksta/ami-ragel/forks","keys_url":"https://api.github.com/repos/jicksta/ami-ragel/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jicksta/ami-ragel/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jicksta/ami-ragel/teams","hooks_url":"https://api.github.com/repos/jicksta/ami-ragel/hooks","issue_events_url":"https://api.github.com/repos/jicksta/ami-ragel/issues/events{/number}","events_url":"https://api.github.com/repos/jicksta/ami-ragel/events","assignees_url":"https://api.github.com/repos/jicksta/ami-ragel/assignees{/user}","branches_url":"https://api.github.com/repos/jicksta/ami-ragel/branches{/branch}","tags_url":"https://api.github.com/repos/jicksta/ami-ragel/tags","blobs_url":"https://api.github.com/repos/jicksta/ami-ragel/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jicksta/ami-ragel/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jicksta/ami-ragel/git/refs{/sha}","trees_url":"https://api.github.com/repos/jicksta/ami-ragel/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jicksta/ami-ragel/statuses/{sha}","languages_url":"https://api.github.com/repos/jicksta/ami-ragel/languages","stargazers_url":"https://api.github.com/repos/jicksta/ami-ragel/stargazers","contributors_url":"https://api.github.com/repos/jicksta/ami-ragel/contributors","subscribers_url":"https://api.github.com/repos/jicksta/ami-ragel/subscribers","subscription_url":"https://api.github.com/repos/jicksta/ami-ragel/subscription","commits_url":"https://api.github.com/repos/jicksta/ami-ragel/commits{/sha}","git_commits_url":"https://api.github.com/repos/jicksta/ami-ragel/git/commits{/sha}","comments_url":"https://api.github.com/repos/jicksta/ami-ragel/comments{/number}","issue_comment_url":"https://api.github.com/repos/jicksta/ami-ragel/issues/comments/{number}","contents_url":"https://api.github.com/repos/jicksta/ami-ragel/contents/{+path}","compare_url":"https://api.github.com/repos/jicksta/ami-ragel/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jicksta/ami-ragel/merges","archive_url":"https://api.github.com/repos/jicksta/ami-ragel/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jicksta/ami-ragel/downloads","issues_url":"https://api.github.com/repos/jicksta/ami-ragel/issues{/number}","pulls_url":"https://api.github.com/repos/jicksta/ami-ragel/pulls{/number}","milestones_url":"https://api.github.com/repos/jicksta/ami-ragel/milestones{/number}","notifications_url":"https://api.github.com/repos/jicksta/ami-ragel/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jicksta/ami-ragel/labels{/name}"},{"id":1196,"name":"test","full_name":"weepy/test","owner":{"login":"weepy","id":820,"avatar_url":"https://0.gravatar.com/avatar/fccf42643feb2aaf9e6b4bfce0d737cc?d=https%3A%2F%2Fidenticons.github.com%2Fe2a2dcc36a08a345332c751b2f2e476c.png","gravatar_id":"fccf42643feb2aaf9e6b4bfce0d737cc","url":"https://api.github.com/users/weepy","html_url":"https://github.com/weepy","followers_url":"https://api.github.com/users/weepy/followers","following_url":"https://api.github.com/users/weepy/following{/other_user}","gists_url":"https://api.github.com/users/weepy/gists{/gist_id}","starred_url":"https://api.github.com/users/weepy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/weepy/subscriptions","organizations_url":"https://api.github.com/users/weepy/orgs","repos_url":"https://api.github.com/users/weepy/repos","events_url":"https://api.github.com/users/weepy/events{/privacy}","received_events_url":"https://api.github.com/users/weepy/received_events","type":"User"},"private":false,"html_url":"https://github.com/weepy/test","description":"test","fork":false,"url":"https://api.github.com/repos/weepy/test","forks_url":"https://api.github.com/repos/weepy/test/forks","keys_url":"https://api.github.com/repos/weepy/test/keys{/key_id}","collaborators_url":"https://api.github.com/repos/weepy/test/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/weepy/test/teams","hooks_url":"https://api.github.com/repos/weepy/test/hooks","issue_events_url":"https://api.github.com/repos/weepy/test/issues/events{/number}","events_url":"https://api.github.com/repos/weepy/test/events","assignees_url":"https://api.github.com/repos/weepy/test/assignees{/user}","branches_url":"https://api.github.com/repos/weepy/test/branches{/branch}","tags_url":"https://api.github.com/repos/weepy/test/tags","blobs_url":"https://api.github.com/repos/weepy/test/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/weepy/test/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/weepy/test/git/refs{/sha}","trees_url":"https://api.github.com/repos/weepy/test/git/trees{/sha}","statuses_url":"https://api.github.com/repos/weepy/test/statuses/{sha}","languages_url":"https://api.github.com/repos/weepy/test/languages","stargazers_url":"https://api.github.com/repos/weepy/test/stargazers","contributors_url":"https://api.github.com/repos/weepy/test/contributors","subscribers_url":"https://api.github.com/repos/weepy/test/subscribers","subscription_url":"https://api.github.com/repos/weepy/test/subscription","commits_url":"https://api.github.com/repos/weepy/test/commits{/sha}","git_commits_url":"https://api.github.com/repos/weepy/test/git/commits{/sha}","comments_url":"https://api.github.com/repos/weepy/test/comments{/number}","issue_comment_url":"https://api.github.com/repos/weepy/test/issues/comments/{number}","contents_url":"https://api.github.com/repos/weepy/test/contents/{+path}","compare_url":"https://api.github.com/repos/weepy/test/compare/{base}...{head}","merges_url":"https://api.github.com/repos/weepy/test/merges","archive_url":"https://api.github.com/repos/weepy/test/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/weepy/test/downloads","issues_url":"https://api.github.com/repos/weepy/test/issues{/number}","pulls_url":"https://api.github.com/repos/weepy/test/pulls{/number}","milestones_url":"https://api.github.com/repos/weepy/test/milestones{/number}","notifications_url":"https://api.github.com/repos/weepy/test/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/weepy/test/labels{/name}"},{"id":1208,"name":"hydrate","full_name":"olivM/hydrate","owner":{"login":"olivM","id":855,"avatar_url":"https://2.gravatar.com/avatar/0d4a250c55cc214768d6544ea43dc21f?d=https%3A%2F%2Fidenticons.github.com%2Faddfa9b7e234254d26e9c7f2af1005cb.png","gravatar_id":"0d4a250c55cc214768d6544ea43dc21f","url":"https://api.github.com/users/olivM","html_url":"https://github.com/olivM","followers_url":"https://api.github.com/users/olivM/followers","following_url":"https://api.github.com/users/olivM/following{/other_user}","gists_url":"https://api.github.com/users/olivM/gists{/gist_id}","starred_url":"https://api.github.com/users/olivM/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/olivM/subscriptions","organizations_url":"https://api.github.com/users/olivM/orgs","repos_url":"https://api.github.com/users/olivM/repos","events_url":"https://api.github.com/users/olivM/events{/privacy}","received_events_url":"https://api.github.com/users/olivM/received_events","type":"User"},"private":false,"html_url":"https://github.com/olivM/hydrate","description":"a blog hub (a daemon that aggregate items and re-publish them on differents platforms) : an attempt for a one4all blogging system","fork":false,"url":"https://api.github.com/repos/olivM/hydrate","forks_url":"https://api.github.com/repos/olivM/hydrate/forks","keys_url":"https://api.github.com/repos/olivM/hydrate/keys{/key_id}","collaborators_url":"https://api.github.com/repos/olivM/hydrate/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/olivM/hydrate/teams","hooks_url":"https://api.github.com/repos/olivM/hydrate/hooks","issue_events_url":"https://api.github.com/repos/olivM/hydrate/issues/events{/number}","events_url":"https://api.github.com/repos/olivM/hydrate/events","assignees_url":"https://api.github.com/repos/olivM/hydrate/assignees{/user}","branches_url":"https://api.github.com/repos/olivM/hydrate/branches{/branch}","tags_url":"https://api.github.com/repos/olivM/hydrate/tags","blobs_url":"https://api.github.com/repos/olivM/hydrate/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/olivM/hydrate/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/olivM/hydrate/git/refs{/sha}","trees_url":"https://api.github.com/repos/olivM/hydrate/git/trees{/sha}","statuses_url":"https://api.github.com/repos/olivM/hydrate/statuses/{sha}","languages_url":"https://api.github.com/repos/olivM/hydrate/languages","stargazers_url":"https://api.github.com/repos/olivM/hydrate/stargazers","contributors_url":"https://api.github.com/repos/olivM/hydrate/contributors","subscribers_url":"https://api.github.com/repos/olivM/hydrate/subscribers","subscription_url":"https://api.github.com/repos/olivM/hydrate/subscription","commits_url":"https://api.github.com/repos/olivM/hydrate/commits{/sha}","git_commits_url":"https://api.github.com/repos/olivM/hydrate/git/commits{/sha}","comments_url":"https://api.github.com/repos/olivM/hydrate/comments{/number}","issue_comment_url":"https://api.github.com/repos/olivM/hydrate/issues/comments/{number}","contents_url":"https://api.github.com/repos/olivM/hydrate/contents/{+path}","compare_url":"https://api.github.com/repos/olivM/hydrate/compare/{base}...{head}","merges_url":"https://api.github.com/repos/olivM/hydrate/merges","archive_url":"https://api.github.com/repos/olivM/hydrate/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/olivM/hydrate/downloads","issues_url":"https://api.github.com/repos/olivM/hydrate/issues{/number}","pulls_url":"https://api.github.com/repos/olivM/hydrate/pulls{/number}","milestones_url":"https://api.github.com/repos/olivM/hydrate/milestones{/number}","notifications_url":"https://api.github.com/repos/olivM/hydrate/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/olivM/hydrate/labels{/name}"},{"id":1212,"name":"pmpknpi","full_name":"sintaxi/pmpknpi","owner":{"login":"sintaxi","id":867,"avatar_url":"https://0.gravatar.com/avatar/bcf46750ba13cf50684639eecda1aa4f?d=https%3A%2F%2Fidenticons.github.com%2Fede7e2b6d13a41ddf9f4bdef84fdc737.png","gravatar_id":"bcf46750ba13cf50684639eecda1aa4f","url":"https://api.github.com/users/sintaxi","html_url":"https://github.com/sintaxi","followers_url":"https://api.github.com/users/sintaxi/followers","following_url":"https://api.github.com/users/sintaxi/following{/other_user}","gists_url":"https://api.github.com/users/sintaxi/gists{/gist_id}","starred_url":"https://api.github.com/users/sintaxi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sintaxi/subscriptions","organizations_url":"https://api.github.com/users/sintaxi/orgs","repos_url":"https://api.github.com/users/sintaxi/repos","events_url":"https://api.github.com/users/sintaxi/events{/privacy}","received_events_url":"https://api.github.com/users/sintaxi/received_events","type":"User"},"private":false,"html_url":"https://github.com/sintaxi/pmpknpi","description":"A RESTful Blog API written in Merb","fork":false,"url":"https://api.github.com/repos/sintaxi/pmpknpi","forks_url":"https://api.github.com/repos/sintaxi/pmpknpi/forks","keys_url":"https://api.github.com/repos/sintaxi/pmpknpi/keys{/key_id}","collaborators_url":"https://api.github.com/repos/sintaxi/pmpknpi/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/sintaxi/pmpknpi/teams","hooks_url":"https://api.github.com/repos/sintaxi/pmpknpi/hooks","issue_events_url":"https://api.github.com/repos/sintaxi/pmpknpi/issues/events{/number}","events_url":"https://api.github.com/repos/sintaxi/pmpknpi/events","assignees_url":"https://api.github.com/repos/sintaxi/pmpknpi/assignees{/user}","branches_url":"https://api.github.com/repos/sintaxi/pmpknpi/branches{/branch}","tags_url":"https://api.github.com/repos/sintaxi/pmpknpi/tags","blobs_url":"https://api.github.com/repos/sintaxi/pmpknpi/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/sintaxi/pmpknpi/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/sintaxi/pmpknpi/git/refs{/sha}","trees_url":"https://api.github.com/repos/sintaxi/pmpknpi/git/trees{/sha}","statuses_url":"https://api.github.com/repos/sintaxi/pmpknpi/statuses/{sha}","languages_url":"https://api.github.com/repos/sintaxi/pmpknpi/languages","stargazers_url":"https://api.github.com/repos/sintaxi/pmpknpi/stargazers","contributors_url":"https://api.github.com/repos/sintaxi/pmpknpi/contributors","subscribers_url":"https://api.github.com/repos/sintaxi/pmpknpi/subscribers","subscription_url":"https://api.github.com/repos/sintaxi/pmpknpi/subscription","commits_url":"https://api.github.com/repos/sintaxi/pmpknpi/commits{/sha}","git_commits_url":"https://api.github.com/repos/sintaxi/pmpknpi/git/commits{/sha}","comments_url":"https://api.github.com/repos/sintaxi/pmpknpi/comments{/number}","issue_comment_url":"https://api.github.com/repos/sintaxi/pmpknpi/issues/comments/{number}","contents_url":"https://api.github.com/repos/sintaxi/pmpknpi/contents/{+path}","compare_url":"https://api.github.com/repos/sintaxi/pmpknpi/compare/{base}...{head}","merges_url":"https://api.github.com/repos/sintaxi/pmpknpi/merges","archive_url":"https://api.github.com/repos/sintaxi/pmpknpi/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/sintaxi/pmpknpi/downloads","issues_url":"https://api.github.com/repos/sintaxi/pmpknpi/issues{/number}","pulls_url":"https://api.github.com/repos/sintaxi/pmpknpi/pulls{/number}","milestones_url":"https://api.github.com/repos/sintaxi/pmpknpi/milestones{/number}","notifications_url":"https://api.github.com/repos/sintaxi/pmpknpi/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/sintaxi/pmpknpi/labels{/name}"},{"id":1213,"name":"restful-authentication","full_name":"rmanalan/restful-authentication","owner":{"login":"rmanalan","id":549,"avatar_url":"https://0.gravatar.com/avatar/78c939ec0390fe89d78cdbf85e8e6856?d=https%3A%2F%2Fidenticons.github.com%2Fccb1d45fb76f7c5a0bf619f979c6cf36.png","gravatar_id":"78c939ec0390fe89d78cdbf85e8e6856","url":"https://api.github.com/users/rmanalan","html_url":"https://github.com/rmanalan","followers_url":"https://api.github.com/users/rmanalan/followers","following_url":"https://api.github.com/users/rmanalan/following{/other_user}","gists_url":"https://api.github.com/users/rmanalan/gists{/gist_id}","starred_url":"https://api.github.com/users/rmanalan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rmanalan/subscriptions","organizations_url":"https://api.github.com/users/rmanalan/orgs","repos_url":"https://api.github.com/users/rmanalan/repos","events_url":"https://api.github.com/users/rmanalan/events{/privacy}","received_events_url":"https://api.github.com/users/rmanalan/received_events","type":"User"},"private":false,"html_url":"https://github.com/rmanalan/restful-authentication","description":"Generates common user authentication code for Rails/Merb, with a full test/unit and rspec suite and optional Acts as State Machine support built-in. Added support for Oracle SSO authentication.","fork":true,"url":"https://api.github.com/repos/rmanalan/restful-authentication","forks_url":"https://api.github.com/repos/rmanalan/restful-authentication/forks","keys_url":"https://api.github.com/repos/rmanalan/restful-authentication/keys{/key_id}","collaborators_url":"https://api.github.com/repos/rmanalan/restful-authentication/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/rmanalan/restful-authentication/teams","hooks_url":"https://api.github.com/repos/rmanalan/restful-authentication/hooks","issue_events_url":"https://api.github.com/repos/rmanalan/restful-authentication/issues/events{/number}","events_url":"https://api.github.com/repos/rmanalan/restful-authentication/events","assignees_url":"https://api.github.com/repos/rmanalan/restful-authentication/assignees{/user}","branches_url":"https://api.github.com/repos/rmanalan/restful-authentication/branches{/branch}","tags_url":"https://api.github.com/repos/rmanalan/restful-authentication/tags","blobs_url":"https://api.github.com/repos/rmanalan/restful-authentication/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/rmanalan/restful-authentication/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/rmanalan/restful-authentication/git/refs{/sha}","trees_url":"https://api.github.com/repos/rmanalan/restful-authentication/git/trees{/sha}","statuses_url":"https://api.github.com/repos/rmanalan/restful-authentication/statuses/{sha}","languages_url":"https://api.github.com/repos/rmanalan/restful-authentication/languages","stargazers_url":"https://api.github.com/repos/rmanalan/restful-authentication/stargazers","contributors_url":"https://api.github.com/repos/rmanalan/restful-authentication/contributors","subscribers_url":"https://api.github.com/repos/rmanalan/restful-authentication/subscribers","subscription_url":"https://api.github.com/repos/rmanalan/restful-authentication/subscription","commits_url":"https://api.github.com/repos/rmanalan/restful-authentication/commits{/sha}","git_commits_url":"https://api.github.com/repos/rmanalan/restful-authentication/git/commits{/sha}","comments_url":"https://api.github.com/repos/rmanalan/restful-authentication/comments{/number}","issue_comment_url":"https://api.github.com/repos/rmanalan/restful-authentication/issues/comments/{number}","contents_url":"https://api.github.com/repos/rmanalan/restful-authentication/contents/{+path}","compare_url":"https://api.github.com/repos/rmanalan/restful-authentication/compare/{base}...{head}","merges_url":"https://api.github.com/repos/rmanalan/restful-authentication/merges","archive_url":"https://api.github.com/repos/rmanalan/restful-authentication/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/rmanalan/restful-authentication/downloads","issues_url":"https://api.github.com/repos/rmanalan/restful-authentication/issues{/number}","pulls_url":"https://api.github.com/repos/rmanalan/restful-authentication/pulls{/number}","milestones_url":"https://api.github.com/repos/rmanalan/restful-authentication/milestones{/number}","notifications_url":"https://api.github.com/repos/rmanalan/restful-authentication/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/rmanalan/restful-authentication/labels{/name}"},{"id":1217,"name":"facebox","full_name":"rmanalan/facebox","owner":{"login":"rmanalan","id":549,"avatar_url":"https://0.gravatar.com/avatar/78c939ec0390fe89d78cdbf85e8e6856?d=https%3A%2F%2Fidenticons.github.com%2Fccb1d45fb76f7c5a0bf619f979c6cf36.png","gravatar_id":"78c939ec0390fe89d78cdbf85e8e6856","url":"https://api.github.com/users/rmanalan","html_url":"https://github.com/rmanalan","followers_url":"https://api.github.com/users/rmanalan/followers","following_url":"https://api.github.com/users/rmanalan/following{/other_user}","gists_url":"https://api.github.com/users/rmanalan/gists{/gist_id}","starred_url":"https://api.github.com/users/rmanalan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rmanalan/subscriptions","organizations_url":"https://api.github.com/users/rmanalan/orgs","repos_url":"https://api.github.com/users/rmanalan/repos","events_url":"https://api.github.com/users/rmanalan/events{/privacy}","received_events_url":"https://api.github.com/users/rmanalan/received_events","type":"User"},"private":false,"html_url":"https://github.com/rmanalan/facebox","description":"Facebook-style lightbox, built in jQuery","fork":true,"url":"https://api.github.com/repos/rmanalan/facebox","forks_url":"https://api.github.com/repos/rmanalan/facebox/forks","keys_url":"https://api.github.com/repos/rmanalan/facebox/keys{/key_id}","collaborators_url":"https://api.github.com/repos/rmanalan/facebox/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/rmanalan/facebox/teams","hooks_url":"https://api.github.com/repos/rmanalan/facebox/hooks","issue_events_url":"https://api.github.com/repos/rmanalan/facebox/issues/events{/number}","events_url":"https://api.github.com/repos/rmanalan/facebox/events","assignees_url":"https://api.github.com/repos/rmanalan/facebox/assignees{/user}","branches_url":"https://api.github.com/repos/rmanalan/facebox/branches{/branch}","tags_url":"https://api.github.com/repos/rmanalan/facebox/tags","blobs_url":"https://api.github.com/repos/rmanalan/facebox/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/rmanalan/facebox/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/rmanalan/facebox/git/refs{/sha}","trees_url":"https://api.github.com/repos/rmanalan/facebox/git/trees{/sha}","statuses_url":"https://api.github.com/repos/rmanalan/facebox/statuses/{sha}","languages_url":"https://api.github.com/repos/rmanalan/facebox/languages","stargazers_url":"https://api.github.com/repos/rmanalan/facebox/stargazers","contributors_url":"https://api.github.com/repos/rmanalan/facebox/contributors","subscribers_url":"https://api.github.com/repos/rmanalan/facebox/subscribers","subscription_url":"https://api.github.com/repos/rmanalan/facebox/subscription","commits_url":"https://api.github.com/repos/rmanalan/facebox/commits{/sha}","git_commits_url":"https://api.github.com/repos/rmanalan/facebox/git/commits{/sha}","comments_url":"https://api.github.com/repos/rmanalan/facebox/comments{/number}","issue_comment_url":"https://api.github.com/repos/rmanalan/facebox/issues/comments/{number}","contents_url":"https://api.github.com/repos/rmanalan/facebox/contents/{+path}","compare_url":"https://api.github.com/repos/rmanalan/facebox/compare/{base}...{head}","merges_url":"https://api.github.com/repos/rmanalan/facebox/merges","archive_url":"https://api.github.com/repos/rmanalan/facebox/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/rmanalan/facebox/downloads","issues_url":"https://api.github.com/repos/rmanalan/facebox/issues{/number}","pulls_url":"https://api.github.com/repos/rmanalan/facebox/pulls{/number}","milestones_url":"https://api.github.com/repos/rmanalan/facebox/milestones{/number}","notifications_url":"https://api.github.com/repos/rmanalan/facebox/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/rmanalan/facebox/labels{/name}"},{"id":1220,"name":"gcbot","full_name":"halorgium/gcbot","owner":{"login":"halorgium","id":263,"avatar_url":"https://1.gravatar.com/avatar/3200c5348a7c08c2f20fdaceac6804b0?d=https%3A%2F%2Fidenticons.github.com%2F8c19f571e251e61cb8dd3612f26d5ecf.png","gravatar_id":"3200c5348a7c08c2f20fdaceac6804b0","url":"https://api.github.com/users/halorgium","html_url":"https://github.com/halorgium","followers_url":"https://api.github.com/users/halorgium/followers","following_url":"https://api.github.com/users/halorgium/following{/other_user}","gists_url":"https://api.github.com/users/halorgium/gists{/gist_id}","starred_url":"https://api.github.com/users/halorgium/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/halorgium/subscriptions","organizations_url":"https://api.github.com/users/halorgium/orgs","repos_url":"https://api.github.com/users/halorgium/repos","events_url":"https://api.github.com/users/halorgium/events{/privacy}","received_events_url":"https://api.github.com/users/halorgium/received_events","type":"User"},"private":false,"html_url":"https://github.com/halorgium/gcbot","description":"","fork":false,"url":"https://api.github.com/repos/halorgium/gcbot","forks_url":"https://api.github.com/repos/halorgium/gcbot/forks","keys_url":"https://api.github.com/repos/halorgium/gcbot/keys{/key_id}","collaborators_url":"https://api.github.com/repos/halorgium/gcbot/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/halorgium/gcbot/teams","hooks_url":"https://api.github.com/repos/halorgium/gcbot/hooks","issue_events_url":"https://api.github.com/repos/halorgium/gcbot/issues/events{/number}","events_url":"https://api.github.com/repos/halorgium/gcbot/events","assignees_url":"https://api.github.com/repos/halorgium/gcbot/assignees{/user}","branches_url":"https://api.github.com/repos/halorgium/gcbot/branches{/branch}","tags_url":"https://api.github.com/repos/halorgium/gcbot/tags","blobs_url":"https://api.github.com/repos/halorgium/gcbot/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/halorgium/gcbot/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/halorgium/gcbot/git/refs{/sha}","trees_url":"https://api.github.com/repos/halorgium/gcbot/git/trees{/sha}","statuses_url":"https://api.github.com/repos/halorgium/gcbot/statuses/{sha}","languages_url":"https://api.github.com/repos/halorgium/gcbot/languages","stargazers_url":"https://api.github.com/repos/halorgium/gcbot/stargazers","contributors_url":"https://api.github.com/repos/halorgium/gcbot/contributors","subscribers_url":"https://api.github.com/repos/halorgium/gcbot/subscribers","subscription_url":"https://api.github.com/repos/halorgium/gcbot/subscription","commits_url":"https://api.github.com/repos/halorgium/gcbot/commits{/sha}","git_commits_url":"https://api.github.com/repos/halorgium/gcbot/git/commits{/sha}","comments_url":"https://api.github.com/repos/halorgium/gcbot/comments{/number}","issue_comment_url":"https://api.github.com/repos/halorgium/gcbot/issues/comments/{number}","contents_url":"https://api.github.com/repos/halorgium/gcbot/contents/{+path}","compare_url":"https://api.github.com/repos/halorgium/gcbot/compare/{base}...{head}","merges_url":"https://api.github.com/repos/halorgium/gcbot/merges","archive_url":"https://api.github.com/repos/halorgium/gcbot/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/halorgium/gcbot/downloads","issues_url":"https://api.github.com/repos/halorgium/gcbot/issues{/number}","pulls_url":"https://api.github.com/repos/halorgium/gcbot/pulls{/number}","milestones_url":"https://api.github.com/repos/halorgium/gcbot/milestones{/number}","notifications_url":"https://api.github.com/repos/halorgium/gcbot/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/halorgium/gcbot/labels{/name}"},{"id":1227,"name":"will_paginate","full_name":"mislav/will_paginate","owner":{"login":"mislav","id":887,"avatar_url":"https://0.gravatar.com/avatar/8f93a872e399bc1353cc8d4e791d5401?d=https%3A%2F%2Fidenticons.github.com%2F7ce3284b743aefde80ffd9aec500e085.png","gravatar_id":"8f93a872e399bc1353cc8d4e791d5401","url":"https://api.github.com/users/mislav","html_url":"https://github.com/mislav","followers_url":"https://api.github.com/users/mislav/followers","following_url":"https://api.github.com/users/mislav/following{/other_user}","gists_url":"https://api.github.com/users/mislav/gists{/gist_id}","starred_url":"https://api.github.com/users/mislav/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mislav/subscriptions","organizations_url":"https://api.github.com/users/mislav/orgs","repos_url":"https://api.github.com/users/mislav/repos","events_url":"https://api.github.com/users/mislav/events{/privacy}","received_events_url":"https://api.github.com/users/mislav/received_events","type":"User"},"private":false,"html_url":"https://github.com/mislav/will_paginate","description":"Pagination library for Rails 3, Sinatra, Merb, DataMapper, and more","fork":false,"url":"https://api.github.com/repos/mislav/will_paginate","forks_url":"https://api.github.com/repos/mislav/will_paginate/forks","keys_url":"https://api.github.com/repos/mislav/will_paginate/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mislav/will_paginate/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mislav/will_paginate/teams","hooks_url":"https://api.github.com/repos/mislav/will_paginate/hooks","issue_events_url":"https://api.github.com/repos/mislav/will_paginate/issues/events{/number}","events_url":"https://api.github.com/repos/mislav/will_paginate/events","assignees_url":"https://api.github.com/repos/mislav/will_paginate/assignees{/user}","branches_url":"https://api.github.com/repos/mislav/will_paginate/branches{/branch}","tags_url":"https://api.github.com/repos/mislav/will_paginate/tags","blobs_url":"https://api.github.com/repos/mislav/will_paginate/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mislav/will_paginate/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mislav/will_paginate/git/refs{/sha}","trees_url":"https://api.github.com/repos/mislav/will_paginate/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mislav/will_paginate/statuses/{sha}","languages_url":"https://api.github.com/repos/mislav/will_paginate/languages","stargazers_url":"https://api.github.com/repos/mislav/will_paginate/stargazers","contributors_url":"https://api.github.com/repos/mislav/will_paginate/contributors","subscribers_url":"https://api.github.com/repos/mislav/will_paginate/subscribers","subscription_url":"https://api.github.com/repos/mislav/will_paginate/subscription","commits_url":"https://api.github.com/repos/mislav/will_paginate/commits{/sha}","git_commits_url":"https://api.github.com/repos/mislav/will_paginate/git/commits{/sha}","comments_url":"https://api.github.com/repos/mislav/will_paginate/comments{/number}","issue_comment_url":"https://api.github.com/repos/mislav/will_paginate/issues/comments/{number}","contents_url":"https://api.github.com/repos/mislav/will_paginate/contents/{+path}","compare_url":"https://api.github.com/repos/mislav/will_paginate/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mislav/will_paginate/merges","archive_url":"https://api.github.com/repos/mislav/will_paginate/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mislav/will_paginate/downloads","issues_url":"https://api.github.com/repos/mislav/will_paginate/issues{/number}","pulls_url":"https://api.github.com/repos/mislav/will_paginate/pulls{/number}","milestones_url":"https://api.github.com/repos/mislav/will_paginate/milestones{/number}","notifications_url":"https://api.github.com/repos/mislav/will_paginate/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mislav/will_paginate/labels{/name}"},{"id":1233,"name":"socialgraph-viewer","full_name":"rmanalan/socialgraph-viewer","owner":{"login":"rmanalan","id":549,"avatar_url":"https://0.gravatar.com/avatar/78c939ec0390fe89d78cdbf85e8e6856?d=https%3A%2F%2Fidenticons.github.com%2Fccb1d45fb76f7c5a0bf619f979c6cf36.png","gravatar_id":"78c939ec0390fe89d78cdbf85e8e6856","url":"https://api.github.com/users/rmanalan","html_url":"https://github.com/rmanalan","followers_url":"https://api.github.com/users/rmanalan/followers","following_url":"https://api.github.com/users/rmanalan/following{/other_user}","gists_url":"https://api.github.com/users/rmanalan/gists{/gist_id}","starred_url":"https://api.github.com/users/rmanalan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rmanalan/subscriptions","organizations_url":"https://api.github.com/users/rmanalan/orgs","repos_url":"https://api.github.com/users/rmanalan/repos","events_url":"https://api.github.com/users/rmanalan/events{/privacy}","received_events_url":"https://api.github.com/users/rmanalan/received_events","type":"User"},"private":false,"html_url":"https://github.com/rmanalan/socialgraph-viewer","description":"Simple social graph javascript viewer. Uses the Google Social Graph API","fork":false,"url":"https://api.github.com/repos/rmanalan/socialgraph-viewer","forks_url":"https://api.github.com/repos/rmanalan/socialgraph-viewer/forks","keys_url":"https://api.github.com/repos/rmanalan/socialgraph-viewer/keys{/key_id}","collaborators_url":"https://api.github.com/repos/rmanalan/socialgraph-viewer/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/rmanalan/socialgraph-viewer/teams","hooks_url":"https://api.github.com/repos/rmanalan/socialgraph-viewer/hooks","issue_events_url":"https://api.github.com/repos/rmanalan/socialgraph-viewer/issues/events{/number}","events_url":"https://api.github.com/repos/rmanalan/socialgraph-viewer/events","assignees_url":"https://api.github.com/repos/rmanalan/socialgraph-viewer/assignees{/user}","branches_url":"https://api.github.com/repos/rmanalan/socialgraph-viewer/branches{/branch}","tags_url":"https://api.github.com/repos/rmanalan/socialgraph-viewer/tags","blobs_url":"https://api.github.com/repos/rmanalan/socialgraph-viewer/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/rmanalan/socialgraph-viewer/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/rmanalan/socialgraph-viewer/git/refs{/sha}","trees_url":"https://api.github.com/repos/rmanalan/socialgraph-viewer/git/trees{/sha}","statuses_url":"https://api.github.com/repos/rmanalan/socialgraph-viewer/statuses/{sha}","languages_url":"https://api.github.com/repos/rmanalan/socialgraph-viewer/languages","stargazers_url":"https://api.github.com/repos/rmanalan/socialgraph-viewer/stargazers","contributors_url":"https://api.github.com/repos/rmanalan/socialgraph-viewer/contributors","subscribers_url":"https://api.github.com/repos/rmanalan/socialgraph-viewer/subscribers","subscription_url":"https://api.github.com/repos/rmanalan/socialgraph-viewer/subscription","commits_url":"https://api.github.com/repos/rmanalan/socialgraph-viewer/commits{/sha}","git_commits_url":"https://api.github.com/repos/rmanalan/socialgraph-viewer/git/commits{/sha}","comments_url":"https://api.github.com/repos/rmanalan/socialgraph-viewer/comments{/number}","issue_comment_url":"https://api.github.com/repos/rmanalan/socialgraph-viewer/issues/comments/{number}","contents_url":"https://api.github.com/repos/rmanalan/socialgraph-viewer/contents/{+path}","compare_url":"https://api.github.com/repos/rmanalan/socialgraph-viewer/compare/{base}...{head}","merges_url":"https://api.github.com/repos/rmanalan/socialgraph-viewer/merges","archive_url":"https://api.github.com/repos/rmanalan/socialgraph-viewer/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/rmanalan/socialgraph-viewer/downloads","issues_url":"https://api.github.com/repos/rmanalan/socialgraph-viewer/issues{/number}","pulls_url":"https://api.github.com/repos/rmanalan/socialgraph-viewer/pulls{/number}","milestones_url":"https://api.github.com/repos/rmanalan/socialgraph-viewer/milestones{/number}","notifications_url":"https://api.github.com/repos/rmanalan/socialgraph-viewer/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/rmanalan/socialgraph-viewer/labels{/name}"},{"id":1234,"name":"ruvi","full_name":"lypanov/ruvi","owner":{"login":"lypanov","id":311,"avatar_url":"https://2.gravatar.com/avatar/fde764988033c802599aa33705dce509?d=https%3A%2F%2Fidenticons.github.com%2F9dfcd5e558dfa04aaf37f137a1d9d3e5.png","gravatar_id":"fde764988033c802599aa33705dce509","url":"https://api.github.com/users/lypanov","html_url":"https://github.com/lypanov","followers_url":"https://api.github.com/users/lypanov/followers","following_url":"https://api.github.com/users/lypanov/following{/other_user}","gists_url":"https://api.github.com/users/lypanov/gists{/gist_id}","starred_url":"https://api.github.com/users/lypanov/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lypanov/subscriptions","organizations_url":"https://api.github.com/users/lypanov/orgs","repos_url":"https://api.github.com/users/lypanov/repos","events_url":"https://api.github.com/users/lypanov/events{/privacy}","received_events_url":"https://api.github.com/users/lypanov/received_events","type":"User"},"private":false,"html_url":"https://github.com/lypanov/ruvi","description":"vi wannebe written in ruby","fork":false,"url":"https://api.github.com/repos/lypanov/ruvi","forks_url":"https://api.github.com/repos/lypanov/ruvi/forks","keys_url":"https://api.github.com/repos/lypanov/ruvi/keys{/key_id}","collaborators_url":"https://api.github.com/repos/lypanov/ruvi/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/lypanov/ruvi/teams","hooks_url":"https://api.github.com/repos/lypanov/ruvi/hooks","issue_events_url":"https://api.github.com/repos/lypanov/ruvi/issues/events{/number}","events_url":"https://api.github.com/repos/lypanov/ruvi/events","assignees_url":"https://api.github.com/repos/lypanov/ruvi/assignees{/user}","branches_url":"https://api.github.com/repos/lypanov/ruvi/branches{/branch}","tags_url":"https://api.github.com/repos/lypanov/ruvi/tags","blobs_url":"https://api.github.com/repos/lypanov/ruvi/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/lypanov/ruvi/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/lypanov/ruvi/git/refs{/sha}","trees_url":"https://api.github.com/repos/lypanov/ruvi/git/trees{/sha}","statuses_url":"https://api.github.com/repos/lypanov/ruvi/statuses/{sha}","languages_url":"https://api.github.com/repos/lypanov/ruvi/languages","stargazers_url":"https://api.github.com/repos/lypanov/ruvi/stargazers","contributors_url":"https://api.github.com/repos/lypanov/ruvi/contributors","subscribers_url":"https://api.github.com/repos/lypanov/ruvi/subscribers","subscription_url":"https://api.github.com/repos/lypanov/ruvi/subscription","commits_url":"https://api.github.com/repos/lypanov/ruvi/commits{/sha}","git_commits_url":"https://api.github.com/repos/lypanov/ruvi/git/commits{/sha}","comments_url":"https://api.github.com/repos/lypanov/ruvi/comments{/number}","issue_comment_url":"https://api.github.com/repos/lypanov/ruvi/issues/comments/{number}","contents_url":"https://api.github.com/repos/lypanov/ruvi/contents/{+path}","compare_url":"https://api.github.com/repos/lypanov/ruvi/compare/{base}...{head}","merges_url":"https://api.github.com/repos/lypanov/ruvi/merges","archive_url":"https://api.github.com/repos/lypanov/ruvi/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/lypanov/ruvi/downloads","issues_url":"https://api.github.com/repos/lypanov/ruvi/issues{/number}","pulls_url":"https://api.github.com/repos/lypanov/ruvi/pulls{/number}","milestones_url":"https://api.github.com/repos/lypanov/ruvi/milestones{/number}","notifications_url":"https://api.github.com/repos/lypanov/ruvi/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/lypanov/ruvi/labels{/name}"},{"id":1241,"name":"soco","full_name":"caius/soco","owner":{"login":"caius","id":696,"avatar_url":"https://0.gravatar.com/avatar/ad072c8b8e23a18a49eddb6517490fa1?d=https%3A%2F%2Fidenticons.github.com%2F0cb929eae7a499e50248a3a78f7acfc7.png","gravatar_id":"ad072c8b8e23a18a49eddb6517490fa1","url":"https://api.github.com/users/caius","html_url":"https://github.com/caius","followers_url":"https://api.github.com/users/caius/followers","following_url":"https://api.github.com/users/caius/following{/other_user}","gists_url":"https://api.github.com/users/caius/gists{/gist_id}","starred_url":"https://api.github.com/users/caius/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/caius/subscriptions","organizations_url":"https://api.github.com/users/caius/orgs","repos_url":"https://api.github.com/users/caius/repos","events_url":"https://api.github.com/users/caius/events{/privacy}","received_events_url":"https://api.github.com/users/caius/received_events","type":"User"},"private":false,"html_url":"https://github.com/caius/soco","description":"A static file dynamically generated website backend","fork":false,"url":"https://api.github.com/repos/caius/soco","forks_url":"https://api.github.com/repos/caius/soco/forks","keys_url":"https://api.github.com/repos/caius/soco/keys{/key_id}","collaborators_url":"https://api.github.com/repos/caius/soco/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/caius/soco/teams","hooks_url":"https://api.github.com/repos/caius/soco/hooks","issue_events_url":"https://api.github.com/repos/caius/soco/issues/events{/number}","events_url":"https://api.github.com/repos/caius/soco/events","assignees_url":"https://api.github.com/repos/caius/soco/assignees{/user}","branches_url":"https://api.github.com/repos/caius/soco/branches{/branch}","tags_url":"https://api.github.com/repos/caius/soco/tags","blobs_url":"https://api.github.com/repos/caius/soco/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/caius/soco/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/caius/soco/git/refs{/sha}","trees_url":"https://api.github.com/repos/caius/soco/git/trees{/sha}","statuses_url":"https://api.github.com/repos/caius/soco/statuses/{sha}","languages_url":"https://api.github.com/repos/caius/soco/languages","stargazers_url":"https://api.github.com/repos/caius/soco/stargazers","contributors_url":"https://api.github.com/repos/caius/soco/contributors","subscribers_url":"https://api.github.com/repos/caius/soco/subscribers","subscription_url":"https://api.github.com/repos/caius/soco/subscription","commits_url":"https://api.github.com/repos/caius/soco/commits{/sha}","git_commits_url":"https://api.github.com/repos/caius/soco/git/commits{/sha}","comments_url":"https://api.github.com/repos/caius/soco/comments{/number}","issue_comment_url":"https://api.github.com/repos/caius/soco/issues/comments/{number}","contents_url":"https://api.github.com/repos/caius/soco/contents/{+path}","compare_url":"https://api.github.com/repos/caius/soco/compare/{base}...{head}","merges_url":"https://api.github.com/repos/caius/soco/merges","archive_url":"https://api.github.com/repos/caius/soco/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/caius/soco/downloads","issues_url":"https://api.github.com/repos/caius/soco/issues{/number}","pulls_url":"https://api.github.com/repos/caius/soco/pulls{/number}","milestones_url":"https://api.github.com/repos/caius/soco/milestones{/number}","notifications_url":"https://api.github.com/repos/caius/soco/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/caius/soco/labels{/name}"},{"id":1249,"name":"ruby-gsl","full_name":"codahale/ruby-gsl","owner":{"login":"codahale","id":207,"avatar_url":"https://2.gravatar.com/avatar/87206f3bf53d403e16ec023c56e904c5?d=https%3A%2F%2Fidenticons.github.com%2F69adc1e107f7f7d035d7baf04342e1ca.png","gravatar_id":"87206f3bf53d403e16ec023c56e904c5","url":"https://api.github.com/users/codahale","html_url":"https://github.com/codahale","followers_url":"https://api.github.com/users/codahale/followers","following_url":"https://api.github.com/users/codahale/following{/other_user}","gists_url":"https://api.github.com/users/codahale/gists{/gist_id}","starred_url":"https://api.github.com/users/codahale/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/codahale/subscriptions","organizations_url":"https://api.github.com/users/codahale/orgs","repos_url":"https://api.github.com/users/codahale/repos","events_url":"https://api.github.com/users/codahale/events{/privacy}","received_events_url":"https://api.github.com/users/codahale/received_events","type":"User"},"private":false,"html_url":"https://github.com/codahale/ruby-gsl","description":"[ABANDONED] New development on the Ruby bindings for the GNU Scientific Library","fork":false,"url":"https://api.github.com/repos/codahale/ruby-gsl","forks_url":"https://api.github.com/repos/codahale/ruby-gsl/forks","keys_url":"https://api.github.com/repos/codahale/ruby-gsl/keys{/key_id}","collaborators_url":"https://api.github.com/repos/codahale/ruby-gsl/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/codahale/ruby-gsl/teams","hooks_url":"https://api.github.com/repos/codahale/ruby-gsl/hooks","issue_events_url":"https://api.github.com/repos/codahale/ruby-gsl/issues/events{/number}","events_url":"https://api.github.com/repos/codahale/ruby-gsl/events","assignees_url":"https://api.github.com/repos/codahale/ruby-gsl/assignees{/user}","branches_url":"https://api.github.com/repos/codahale/ruby-gsl/branches{/branch}","tags_url":"https://api.github.com/repos/codahale/ruby-gsl/tags","blobs_url":"https://api.github.com/repos/codahale/ruby-gsl/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/codahale/ruby-gsl/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/codahale/ruby-gsl/git/refs{/sha}","trees_url":"https://api.github.com/repos/codahale/ruby-gsl/git/trees{/sha}","statuses_url":"https://api.github.com/repos/codahale/ruby-gsl/statuses/{sha}","languages_url":"https://api.github.com/repos/codahale/ruby-gsl/languages","stargazers_url":"https://api.github.com/repos/codahale/ruby-gsl/stargazers","contributors_url":"https://api.github.com/repos/codahale/ruby-gsl/contributors","subscribers_url":"https://api.github.com/repos/codahale/ruby-gsl/subscribers","subscription_url":"https://api.github.com/repos/codahale/ruby-gsl/subscription","commits_url":"https://api.github.com/repos/codahale/ruby-gsl/commits{/sha}","git_commits_url":"https://api.github.com/repos/codahale/ruby-gsl/git/commits{/sha}","comments_url":"https://api.github.com/repos/codahale/ruby-gsl/comments{/number}","issue_comment_url":"https://api.github.com/repos/codahale/ruby-gsl/issues/comments/{number}","contents_url":"https://api.github.com/repos/codahale/ruby-gsl/contents/{+path}","compare_url":"https://api.github.com/repos/codahale/ruby-gsl/compare/{base}...{head}","merges_url":"https://api.github.com/repos/codahale/ruby-gsl/merges","archive_url":"https://api.github.com/repos/codahale/ruby-gsl/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/codahale/ruby-gsl/downloads","issues_url":"https://api.github.com/repos/codahale/ruby-gsl/issues{/number}","pulls_url":"https://api.github.com/repos/codahale/ruby-gsl/pulls{/number}","milestones_url":"https://api.github.com/repos/codahale/ruby-gsl/milestones{/number}","notifications_url":"https://api.github.com/repos/codahale/ruby-gsl/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/codahale/ruby-gsl/labels{/name}"},{"id":1252,"name":"yard","full_name":"lsegal/yard","owner":{"login":"lsegal","id":686,"avatar_url":"https://0.gravatar.com/avatar/510395998b7e929a8f48dc8cdb087379?d=https%3A%2F%2Fidenticons.github.com%2F109a0ca3bc27f3e96597370d5c8cf03d.png","gravatar_id":"510395998b7e929a8f48dc8cdb087379","url":"https://api.github.com/users/lsegal","html_url":"https://github.com/lsegal","followers_url":"https://api.github.com/users/lsegal/followers","following_url":"https://api.github.com/users/lsegal/following{/other_user}","gists_url":"https://api.github.com/users/lsegal/gists{/gist_id}","starred_url":"https://api.github.com/users/lsegal/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lsegal/subscriptions","organizations_url":"https://api.github.com/users/lsegal/orgs","repos_url":"https://api.github.com/users/lsegal/repos","events_url":"https://api.github.com/users/lsegal/events{/privacy}","received_events_url":"https://api.github.com/users/lsegal/received_events","type":"User"},"private":false,"html_url":"https://github.com/lsegal/yard","description":"YARD is a Ruby Documentation tool. The Y stands for \"Yay!\"","fork":false,"url":"https://api.github.com/repos/lsegal/yard","forks_url":"https://api.github.com/repos/lsegal/yard/forks","keys_url":"https://api.github.com/repos/lsegal/yard/keys{/key_id}","collaborators_url":"https://api.github.com/repos/lsegal/yard/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/lsegal/yard/teams","hooks_url":"https://api.github.com/repos/lsegal/yard/hooks","issue_events_url":"https://api.github.com/repos/lsegal/yard/issues/events{/number}","events_url":"https://api.github.com/repos/lsegal/yard/events","assignees_url":"https://api.github.com/repos/lsegal/yard/assignees{/user}","branches_url":"https://api.github.com/repos/lsegal/yard/branches{/branch}","tags_url":"https://api.github.com/repos/lsegal/yard/tags","blobs_url":"https://api.github.com/repos/lsegal/yard/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/lsegal/yard/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/lsegal/yard/git/refs{/sha}","trees_url":"https://api.github.com/repos/lsegal/yard/git/trees{/sha}","statuses_url":"https://api.github.com/repos/lsegal/yard/statuses/{sha}","languages_url":"https://api.github.com/repos/lsegal/yard/languages","stargazers_url":"https://api.github.com/repos/lsegal/yard/stargazers","contributors_url":"https://api.github.com/repos/lsegal/yard/contributors","subscribers_url":"https://api.github.com/repos/lsegal/yard/subscribers","subscription_url":"https://api.github.com/repos/lsegal/yard/subscription","commits_url":"https://api.github.com/repos/lsegal/yard/commits{/sha}","git_commits_url":"https://api.github.com/repos/lsegal/yard/git/commits{/sha}","comments_url":"https://api.github.com/repos/lsegal/yard/comments{/number}","issue_comment_url":"https://api.github.com/repos/lsegal/yard/issues/comments/{number}","contents_url":"https://api.github.com/repos/lsegal/yard/contents/{+path}","compare_url":"https://api.github.com/repos/lsegal/yard/compare/{base}...{head}","merges_url":"https://api.github.com/repos/lsegal/yard/merges","archive_url":"https://api.github.com/repos/lsegal/yard/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/lsegal/yard/downloads","issues_url":"https://api.github.com/repos/lsegal/yard/issues{/number}","pulls_url":"https://api.github.com/repos/lsegal/yard/pulls{/number}","milestones_url":"https://api.github.com/repos/lsegal/yard/milestones{/number}","notifications_url":"https://api.github.com/repos/lsegal/yard/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/lsegal/yard/labels{/name}"},{"id":1253,"name":"castanaut","full_name":"joseph/castanaut","owner":{"login":"joseph","id":900,"avatar_url":"https://0.gravatar.com/avatar/dba7eb74aae18f1045ac33579736949b?d=https%3A%2F%2Fidenticons.github.com%2Facf4b89d3d503d8252c9c4ba75ddbf6d.png","gravatar_id":"dba7eb74aae18f1045ac33579736949b","url":"https://api.github.com/users/joseph","html_url":"https://github.com/joseph","followers_url":"https://api.github.com/users/joseph/followers","following_url":"https://api.github.com/users/joseph/following{/other_user}","gists_url":"https://api.github.com/users/joseph/gists{/gist_id}","starred_url":"https://api.github.com/users/joseph/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/joseph/subscriptions","organizations_url":"https://api.github.com/users/joseph/orgs","repos_url":"https://api.github.com/users/joseph/repos","events_url":"https://api.github.com/users/joseph/events{/privacy}","received_events_url":"https://api.github.com/users/joseph/received_events","type":"User"},"private":false,"html_url":"https://github.com/joseph/castanaut","description":" Castanaut lets you write executable scripts for your screencasts. With a simple dictionary of stage directions, you can create complex interactions with a variety of applications.","fork":false,"url":"https://api.github.com/repos/joseph/castanaut","forks_url":"https://api.github.com/repos/joseph/castanaut/forks","keys_url":"https://api.github.com/repos/joseph/castanaut/keys{/key_id}","collaborators_url":"https://api.github.com/repos/joseph/castanaut/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/joseph/castanaut/teams","hooks_url":"https://api.github.com/repos/joseph/castanaut/hooks","issue_events_url":"https://api.github.com/repos/joseph/castanaut/issues/events{/number}","events_url":"https://api.github.com/repos/joseph/castanaut/events","assignees_url":"https://api.github.com/repos/joseph/castanaut/assignees{/user}","branches_url":"https://api.github.com/repos/joseph/castanaut/branches{/branch}","tags_url":"https://api.github.com/repos/joseph/castanaut/tags","blobs_url":"https://api.github.com/repos/joseph/castanaut/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/joseph/castanaut/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/joseph/castanaut/git/refs{/sha}","trees_url":"https://api.github.com/repos/joseph/castanaut/git/trees{/sha}","statuses_url":"https://api.github.com/repos/joseph/castanaut/statuses/{sha}","languages_url":"https://api.github.com/repos/joseph/castanaut/languages","stargazers_url":"https://api.github.com/repos/joseph/castanaut/stargazers","contributors_url":"https://api.github.com/repos/joseph/castanaut/contributors","subscribers_url":"https://api.github.com/repos/joseph/castanaut/subscribers","subscription_url":"https://api.github.com/repos/joseph/castanaut/subscription","commits_url":"https://api.github.com/repos/joseph/castanaut/commits{/sha}","git_commits_url":"https://api.github.com/repos/joseph/castanaut/git/commits{/sha}","comments_url":"https://api.github.com/repos/joseph/castanaut/comments{/number}","issue_comment_url":"https://api.github.com/repos/joseph/castanaut/issues/comments/{number}","contents_url":"https://api.github.com/repos/joseph/castanaut/contents/{+path}","compare_url":"https://api.github.com/repos/joseph/castanaut/compare/{base}...{head}","merges_url":"https://api.github.com/repos/joseph/castanaut/merges","archive_url":"https://api.github.com/repos/joseph/castanaut/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/joseph/castanaut/downloads","issues_url":"https://api.github.com/repos/joseph/castanaut/issues{/number}","pulls_url":"https://api.github.com/repos/joseph/castanaut/pulls{/number}","milestones_url":"https://api.github.com/repos/joseph/castanaut/milestones{/number}","notifications_url":"https://api.github.com/repos/joseph/castanaut/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/joseph/castanaut/labels{/name}"},{"id":1259,"name":"ruby-tmbundle","full_name":"drnic/ruby-tmbundle","owner":{"login":"drnic","id":108,"avatar_url":"https://1.gravatar.com/avatar/cb2b768a5e546b24052ea03334e43676?d=https%3A%2F%2Fidenticons.github.com%2Fa3c65c2974270fd093ee8a9bf8ae7d0b.png","gravatar_id":"cb2b768a5e546b24052ea03334e43676","url":"https://api.github.com/users/drnic","html_url":"https://github.com/drnic","followers_url":"https://api.github.com/users/drnic/followers","following_url":"https://api.github.com/users/drnic/following{/other_user}","gists_url":"https://api.github.com/users/drnic/gists{/gist_id}","starred_url":"https://api.github.com/users/drnic/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/drnic/subscriptions","organizations_url":"https://api.github.com/users/drnic/orgs","repos_url":"https://api.github.com/users/drnic/repos","events_url":"https://api.github.com/users/drnic/events{/privacy}","received_events_url":"https://api.github.com/users/drnic/received_events","type":"User"},"private":false,"html_url":"https://github.com/drnic/ruby-tmbundle","description":"Ruby TextMate bundle","fork":false,"url":"https://api.github.com/repos/drnic/ruby-tmbundle","forks_url":"https://api.github.com/repos/drnic/ruby-tmbundle/forks","keys_url":"https://api.github.com/repos/drnic/ruby-tmbundle/keys{/key_id}","collaborators_url":"https://api.github.com/repos/drnic/ruby-tmbundle/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/drnic/ruby-tmbundle/teams","hooks_url":"https://api.github.com/repos/drnic/ruby-tmbundle/hooks","issue_events_url":"https://api.github.com/repos/drnic/ruby-tmbundle/issues/events{/number}","events_url":"https://api.github.com/repos/drnic/ruby-tmbundle/events","assignees_url":"https://api.github.com/repos/drnic/ruby-tmbundle/assignees{/user}","branches_url":"https://api.github.com/repos/drnic/ruby-tmbundle/branches{/branch}","tags_url":"https://api.github.com/repos/drnic/ruby-tmbundle/tags","blobs_url":"https://api.github.com/repos/drnic/ruby-tmbundle/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/drnic/ruby-tmbundle/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/drnic/ruby-tmbundle/git/refs{/sha}","trees_url":"https://api.github.com/repos/drnic/ruby-tmbundle/git/trees{/sha}","statuses_url":"https://api.github.com/repos/drnic/ruby-tmbundle/statuses/{sha}","languages_url":"https://api.github.com/repos/drnic/ruby-tmbundle/languages","stargazers_url":"https://api.github.com/repos/drnic/ruby-tmbundle/stargazers","contributors_url":"https://api.github.com/repos/drnic/ruby-tmbundle/contributors","subscribers_url":"https://api.github.com/repos/drnic/ruby-tmbundle/subscribers","subscription_url":"https://api.github.com/repos/drnic/ruby-tmbundle/subscription","commits_url":"https://api.github.com/repos/drnic/ruby-tmbundle/commits{/sha}","git_commits_url":"https://api.github.com/repos/drnic/ruby-tmbundle/git/commits{/sha}","comments_url":"https://api.github.com/repos/drnic/ruby-tmbundle/comments{/number}","issue_comment_url":"https://api.github.com/repos/drnic/ruby-tmbundle/issues/comments/{number}","contents_url":"https://api.github.com/repos/drnic/ruby-tmbundle/contents/{+path}","compare_url":"https://api.github.com/repos/drnic/ruby-tmbundle/compare/{base}...{head}","merges_url":"https://api.github.com/repos/drnic/ruby-tmbundle/merges","archive_url":"https://api.github.com/repos/drnic/ruby-tmbundle/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/drnic/ruby-tmbundle/downloads","issues_url":"https://api.github.com/repos/drnic/ruby-tmbundle/issues{/number}","pulls_url":"https://api.github.com/repos/drnic/ruby-tmbundle/pulls{/number}","milestones_url":"https://api.github.com/repos/drnic/ruby-tmbundle/milestones{/number}","notifications_url":"https://api.github.com/repos/drnic/ruby-tmbundle/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/drnic/ruby-tmbundle/labels{/name}"},{"id":1298,"name":"html-tmbundle","full_name":"drnic/html-tmbundle","owner":{"login":"drnic","id":108,"avatar_url":"https://1.gravatar.com/avatar/cb2b768a5e546b24052ea03334e43676?d=https%3A%2F%2Fidenticons.github.com%2Fa3c65c2974270fd093ee8a9bf8ae7d0b.png","gravatar_id":"cb2b768a5e546b24052ea03334e43676","url":"https://api.github.com/users/drnic","html_url":"https://github.com/drnic","followers_url":"https://api.github.com/users/drnic/followers","following_url":"https://api.github.com/users/drnic/following{/other_user}","gists_url":"https://api.github.com/users/drnic/gists{/gist_id}","starred_url":"https://api.github.com/users/drnic/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/drnic/subscriptions","organizations_url":"https://api.github.com/users/drnic/orgs","repos_url":"https://api.github.com/users/drnic/repos","events_url":"https://api.github.com/users/drnic/events{/privacy}","received_events_url":"https://api.github.com/users/drnic/received_events","type":"User"},"private":false,"html_url":"https://github.com/drnic/html-tmbundle","description":"HTML TextMate bundle","fork":false,"url":"https://api.github.com/repos/drnic/html-tmbundle","forks_url":"https://api.github.com/repos/drnic/html-tmbundle/forks","keys_url":"https://api.github.com/repos/drnic/html-tmbundle/keys{/key_id}","collaborators_url":"https://api.github.com/repos/drnic/html-tmbundle/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/drnic/html-tmbundle/teams","hooks_url":"https://api.github.com/repos/drnic/html-tmbundle/hooks","issue_events_url":"https://api.github.com/repos/drnic/html-tmbundle/issues/events{/number}","events_url":"https://api.github.com/repos/drnic/html-tmbundle/events","assignees_url":"https://api.github.com/repos/drnic/html-tmbundle/assignees{/user}","branches_url":"https://api.github.com/repos/drnic/html-tmbundle/branches{/branch}","tags_url":"https://api.github.com/repos/drnic/html-tmbundle/tags","blobs_url":"https://api.github.com/repos/drnic/html-tmbundle/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/drnic/html-tmbundle/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/drnic/html-tmbundle/git/refs{/sha}","trees_url":"https://api.github.com/repos/drnic/html-tmbundle/git/trees{/sha}","statuses_url":"https://api.github.com/repos/drnic/html-tmbundle/statuses/{sha}","languages_url":"https://api.github.com/repos/drnic/html-tmbundle/languages","stargazers_url":"https://api.github.com/repos/drnic/html-tmbundle/stargazers","contributors_url":"https://api.github.com/repos/drnic/html-tmbundle/contributors","subscribers_url":"https://api.github.com/repos/drnic/html-tmbundle/subscribers","subscription_url":"https://api.github.com/repos/drnic/html-tmbundle/subscription","commits_url":"https://api.github.com/repos/drnic/html-tmbundle/commits{/sha}","git_commits_url":"https://api.github.com/repos/drnic/html-tmbundle/git/commits{/sha}","comments_url":"https://api.github.com/repos/drnic/html-tmbundle/comments{/number}","issue_comment_url":"https://api.github.com/repos/drnic/html-tmbundle/issues/comments/{number}","contents_url":"https://api.github.com/repos/drnic/html-tmbundle/contents/{+path}","compare_url":"https://api.github.com/repos/drnic/html-tmbundle/compare/{base}...{head}","merges_url":"https://api.github.com/repos/drnic/html-tmbundle/merges","archive_url":"https://api.github.com/repos/drnic/html-tmbundle/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/drnic/html-tmbundle/downloads","issues_url":"https://api.github.com/repos/drnic/html-tmbundle/issues{/number}","pulls_url":"https://api.github.com/repos/drnic/html-tmbundle/pulls{/number}","milestones_url":"https://api.github.com/repos/drnic/html-tmbundle/milestones{/number}","notifications_url":"https://api.github.com/repos/drnic/html-tmbundle/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/drnic/html-tmbundle/labels{/name}"},{"id":1299,"name":"orb","full_name":"noin/orb","owner":{"login":"noin","id":840,"avatar_url":"https://2.gravatar.com/avatar/f08f6910e7ad06bf8709bc3ffd4f7031?d=https%3A%2F%2Fidenticons.github.com%2Ffa83a11a198d5a7f0bf77a1987bcd006.png","gravatar_id":"f08f6910e7ad06bf8709bc3ffd4f7031","url":"https://api.github.com/users/noin","html_url":"https://github.com/noin","followers_url":"https://api.github.com/users/noin/followers","following_url":"https://api.github.com/users/noin/following{/other_user}","gists_url":"https://api.github.com/users/noin/gists{/gist_id}","starred_url":"https://api.github.com/users/noin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/noin/subscriptions","organizations_url":"https://api.github.com/users/noin/orgs","repos_url":"https://api.github.com/users/noin/repos","events_url":"https://api.github.com/users/noin/events{/privacy}","received_events_url":"https://api.github.com/users/noin/received_events","type":"User"},"private":false,"html_url":"https://github.com/noin/orb","description":"nFlux-Orb","fork":false,"url":"https://api.github.com/repos/noin/orb","forks_url":"https://api.github.com/repos/noin/orb/forks","keys_url":"https://api.github.com/repos/noin/orb/keys{/key_id}","collaborators_url":"https://api.github.com/repos/noin/orb/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/noin/orb/teams","hooks_url":"https://api.github.com/repos/noin/orb/hooks","issue_events_url":"https://api.github.com/repos/noin/orb/issues/events{/number}","events_url":"https://api.github.com/repos/noin/orb/events","assignees_url":"https://api.github.com/repos/noin/orb/assignees{/user}","branches_url":"https://api.github.com/repos/noin/orb/branches{/branch}","tags_url":"https://api.github.com/repos/noin/orb/tags","blobs_url":"https://api.github.com/repos/noin/orb/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/noin/orb/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/noin/orb/git/refs{/sha}","trees_url":"https://api.github.com/repos/noin/orb/git/trees{/sha}","statuses_url":"https://api.github.com/repos/noin/orb/statuses/{sha}","languages_url":"https://api.github.com/repos/noin/orb/languages","stargazers_url":"https://api.github.com/repos/noin/orb/stargazers","contributors_url":"https://api.github.com/repos/noin/orb/contributors","subscribers_url":"https://api.github.com/repos/noin/orb/subscribers","subscription_url":"https://api.github.com/repos/noin/orb/subscription","commits_url":"https://api.github.com/repos/noin/orb/commits{/sha}","git_commits_url":"https://api.github.com/repos/noin/orb/git/commits{/sha}","comments_url":"https://api.github.com/repos/noin/orb/comments{/number}","issue_comment_url":"https://api.github.com/repos/noin/orb/issues/comments/{number}","contents_url":"https://api.github.com/repos/noin/orb/contents/{+path}","compare_url":"https://api.github.com/repos/noin/orb/compare/{base}...{head}","merges_url":"https://api.github.com/repos/noin/orb/merges","archive_url":"https://api.github.com/repos/noin/orb/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/noin/orb/downloads","issues_url":"https://api.github.com/repos/noin/orb/issues{/number}","pulls_url":"https://api.github.com/repos/noin/orb/pulls{/number}","milestones_url":"https://api.github.com/repos/noin/orb/milestones{/number}","notifications_url":"https://api.github.com/repos/noin/orb/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/noin/orb/labels{/name}"},{"id":1302,"name":"ikhebhonger","full_name":"bart-xx/ikhebhonger","owner":{"login":"bart-xx","id":909,"avatar_url":"https://1.gravatar.com/avatar/6d723250f9c1c093ee16b53a09448d8c?d=https%3A%2F%2Fidenticons.github.com%2Fa4300b002bcfb71f291dac175d52df94.png","gravatar_id":"6d723250f9c1c093ee16b53a09448d8c","url":"https://api.github.com/users/bart-xx","html_url":"https://github.com/bart-xx","followers_url":"https://api.github.com/users/bart-xx/followers","following_url":"https://api.github.com/users/bart-xx/following{/other_user}","gists_url":"https://api.github.com/users/bart-xx/gists{/gist_id}","starred_url":"https://api.github.com/users/bart-xx/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bart-xx/subscriptions","organizations_url":"https://api.github.com/users/bart-xx/orgs","repos_url":"https://api.github.com/users/bart-xx/repos","events_url":"https://api.github.com/users/bart-xx/events{/privacy}","received_events_url":"https://api.github.com/users/bart-xx/received_events","type":"User"},"private":false,"html_url":"https://github.com/bart-xx/ikhebhonger","description":"Restaurant mashup site","fork":false,"url":"https://api.github.com/repos/bart-xx/ikhebhonger","forks_url":"https://api.github.com/repos/bart-xx/ikhebhonger/forks","keys_url":"https://api.github.com/repos/bart-xx/ikhebhonger/keys{/key_id}","collaborators_url":"https://api.github.com/repos/bart-xx/ikhebhonger/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/bart-xx/ikhebhonger/teams","hooks_url":"https://api.github.com/repos/bart-xx/ikhebhonger/hooks","issue_events_url":"https://api.github.com/repos/bart-xx/ikhebhonger/issues/events{/number}","events_url":"https://api.github.com/repos/bart-xx/ikhebhonger/events","assignees_url":"https://api.github.com/repos/bart-xx/ikhebhonger/assignees{/user}","branches_url":"https://api.github.com/repos/bart-xx/ikhebhonger/branches{/branch}","tags_url":"https://api.github.com/repos/bart-xx/ikhebhonger/tags","blobs_url":"https://api.github.com/repos/bart-xx/ikhebhonger/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/bart-xx/ikhebhonger/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/bart-xx/ikhebhonger/git/refs{/sha}","trees_url":"https://api.github.com/repos/bart-xx/ikhebhonger/git/trees{/sha}","statuses_url":"https://api.github.com/repos/bart-xx/ikhebhonger/statuses/{sha}","languages_url":"https://api.github.com/repos/bart-xx/ikhebhonger/languages","stargazers_url":"https://api.github.com/repos/bart-xx/ikhebhonger/stargazers","contributors_url":"https://api.github.com/repos/bart-xx/ikhebhonger/contributors","subscribers_url":"https://api.github.com/repos/bart-xx/ikhebhonger/subscribers","subscription_url":"https://api.github.com/repos/bart-xx/ikhebhonger/subscription","commits_url":"https://api.github.com/repos/bart-xx/ikhebhonger/commits{/sha}","git_commits_url":"https://api.github.com/repos/bart-xx/ikhebhonger/git/commits{/sha}","comments_url":"https://api.github.com/repos/bart-xx/ikhebhonger/comments{/number}","issue_comment_url":"https://api.github.com/repos/bart-xx/ikhebhonger/issues/comments/{number}","contents_url":"https://api.github.com/repos/bart-xx/ikhebhonger/contents/{+path}","compare_url":"https://api.github.com/repos/bart-xx/ikhebhonger/compare/{base}...{head}","merges_url":"https://api.github.com/repos/bart-xx/ikhebhonger/merges","archive_url":"https://api.github.com/repos/bart-xx/ikhebhonger/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/bart-xx/ikhebhonger/downloads","issues_url":"https://api.github.com/repos/bart-xx/ikhebhonger/issues{/number}","pulls_url":"https://api.github.com/repos/bart-xx/ikhebhonger/pulls{/number}","milestones_url":"https://api.github.com/repos/bart-xx/ikhebhonger/milestones{/number}","notifications_url":"https://api.github.com/repos/bart-xx/ikhebhonger/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/bart-xx/ikhebhonger/labels{/name}"},{"id":1303,"name":"permalizer","full_name":"revans/permalizer","owner":{"login":"revans","id":394,"avatar_url":"https://0.gravatar.com/avatar/bc5fbb4a793359c2c527e37edfa470a2?d=https%3A%2F%2Fidenticons.github.com%2F28f0b864598a1291557bed248a998d4e.png","gravatar_id":"bc5fbb4a793359c2c527e37edfa470a2","url":"https://api.github.com/users/revans","html_url":"https://github.com/revans","followers_url":"https://api.github.com/users/revans/followers","following_url":"https://api.github.com/users/revans/following{/other_user}","gists_url":"https://api.github.com/users/revans/gists{/gist_id}","starred_url":"https://api.github.com/users/revans/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/revans/subscriptions","organizations_url":"https://api.github.com/users/revans/orgs","repos_url":"https://api.github.com/users/revans/repos","events_url":"https://api.github.com/users/revans/events{/privacy}","received_events_url":"https://api.github.com/users/revans/received_events","type":"User"},"private":false,"html_url":"https://github.com/revans/permalizer","description":"An easy way to create Permalinks.","fork":false,"url":"https://api.github.com/repos/revans/permalizer","forks_url":"https://api.github.com/repos/revans/permalizer/forks","keys_url":"https://api.github.com/repos/revans/permalizer/keys{/key_id}","collaborators_url":"https://api.github.com/repos/revans/permalizer/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/revans/permalizer/teams","hooks_url":"https://api.github.com/repos/revans/permalizer/hooks","issue_events_url":"https://api.github.com/repos/revans/permalizer/issues/events{/number}","events_url":"https://api.github.com/repos/revans/permalizer/events","assignees_url":"https://api.github.com/repos/revans/permalizer/assignees{/user}","branches_url":"https://api.github.com/repos/revans/permalizer/branches{/branch}","tags_url":"https://api.github.com/repos/revans/permalizer/tags","blobs_url":"https://api.github.com/repos/revans/permalizer/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/revans/permalizer/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/revans/permalizer/git/refs{/sha}","trees_url":"https://api.github.com/repos/revans/permalizer/git/trees{/sha}","statuses_url":"https://api.github.com/repos/revans/permalizer/statuses/{sha}","languages_url":"https://api.github.com/repos/revans/permalizer/languages","stargazers_url":"https://api.github.com/repos/revans/permalizer/stargazers","contributors_url":"https://api.github.com/repos/revans/permalizer/contributors","subscribers_url":"https://api.github.com/repos/revans/permalizer/subscribers","subscription_url":"https://api.github.com/repos/revans/permalizer/subscription","commits_url":"https://api.github.com/repos/revans/permalizer/commits{/sha}","git_commits_url":"https://api.github.com/repos/revans/permalizer/git/commits{/sha}","comments_url":"https://api.github.com/repos/revans/permalizer/comments{/number}","issue_comment_url":"https://api.github.com/repos/revans/permalizer/issues/comments/{number}","contents_url":"https://api.github.com/repos/revans/permalizer/contents/{+path}","compare_url":"https://api.github.com/repos/revans/permalizer/compare/{base}...{head}","merges_url":"https://api.github.com/repos/revans/permalizer/merges","archive_url":"https://api.github.com/repos/revans/permalizer/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/revans/permalizer/downloads","issues_url":"https://api.github.com/repos/revans/permalizer/issues{/number}","pulls_url":"https://api.github.com/repos/revans/permalizer/pulls{/number}","milestones_url":"https://api.github.com/repos/revans/permalizer/milestones{/number}","notifications_url":"https://api.github.com/repos/revans/permalizer/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/revans/permalizer/labels{/name}"},{"id":1318,"name":"sprinkle","full_name":"sprinkle-tool/sprinkle","owner":{"login":"sprinkle-tool","id":4121318,"avatar_url":"https://identicons.github.com/e5cfb82e868d055ce1ddbebed117d622.png","gravatar_id":null,"url":"https://api.github.com/users/sprinkle-tool","html_url":"https://github.com/sprinkle-tool","followers_url":"https://api.github.com/users/sprinkle-tool/followers","following_url":"https://api.github.com/users/sprinkle-tool/following{/other_user}","gists_url":"https://api.github.com/users/sprinkle-tool/gists{/gist_id}","starred_url":"https://api.github.com/users/sprinkle-tool/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sprinkle-tool/subscriptions","organizations_url":"https://api.github.com/users/sprinkle-tool/orgs","repos_url":"https://api.github.com/users/sprinkle-tool/repos","events_url":"https://api.github.com/users/sprinkle-tool/events{/privacy}","received_events_url":"https://api.github.com/users/sprinkle-tool/received_events","type":"Organization"},"private":false,"html_url":"https://github.com/sprinkle-tool/sprinkle","description":"Sprinkle is a software provisioning tool you can use to build remote servers with. eg. to install a Rails, or Sinatra stack on a brand new slice directly after its been created","fork":false,"url":"https://api.github.com/repos/sprinkle-tool/sprinkle","forks_url":"https://api.github.com/repos/sprinkle-tool/sprinkle/forks","keys_url":"https://api.github.com/repos/sprinkle-tool/sprinkle/keys{/key_id}","collaborators_url":"https://api.github.com/repos/sprinkle-tool/sprinkle/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/sprinkle-tool/sprinkle/teams","hooks_url":"https://api.github.com/repos/sprinkle-tool/sprinkle/hooks","issue_events_url":"https://api.github.com/repos/sprinkle-tool/sprinkle/issues/events{/number}","events_url":"https://api.github.com/repos/sprinkle-tool/sprinkle/events","assignees_url":"https://api.github.com/repos/sprinkle-tool/sprinkle/assignees{/user}","branches_url":"https://api.github.com/repos/sprinkle-tool/sprinkle/branches{/branch}","tags_url":"https://api.github.com/repos/sprinkle-tool/sprinkle/tags","blobs_url":"https://api.github.com/repos/sprinkle-tool/sprinkle/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/sprinkle-tool/sprinkle/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/sprinkle-tool/sprinkle/git/refs{/sha}","trees_url":"https://api.github.com/repos/sprinkle-tool/sprinkle/git/trees{/sha}","statuses_url":"https://api.github.com/repos/sprinkle-tool/sprinkle/statuses/{sha}","languages_url":"https://api.github.com/repos/sprinkle-tool/sprinkle/languages","stargazers_url":"https://api.github.com/repos/sprinkle-tool/sprinkle/stargazers","contributors_url":"https://api.github.com/repos/sprinkle-tool/sprinkle/contributors","subscribers_url":"https://api.github.com/repos/sprinkle-tool/sprinkle/subscribers","subscription_url":"https://api.github.com/repos/sprinkle-tool/sprinkle/subscription","commits_url":"https://api.github.com/repos/sprinkle-tool/sprinkle/commits{/sha}","git_commits_url":"https://api.github.com/repos/sprinkle-tool/sprinkle/git/commits{/sha}","comments_url":"https://api.github.com/repos/sprinkle-tool/sprinkle/comments{/number}","issue_comment_url":"https://api.github.com/repos/sprinkle-tool/sprinkle/issues/comments/{number}","contents_url":"https://api.github.com/repos/sprinkle-tool/sprinkle/contents/{+path}","compare_url":"https://api.github.com/repos/sprinkle-tool/sprinkle/compare/{base}...{head}","merges_url":"https://api.github.com/repos/sprinkle-tool/sprinkle/merges","archive_url":"https://api.github.com/repos/sprinkle-tool/sprinkle/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/sprinkle-tool/sprinkle/downloads","issues_url":"https://api.github.com/repos/sprinkle-tool/sprinkle/issues{/number}","pulls_url":"https://api.github.com/repos/sprinkle-tool/sprinkle/pulls{/number}","milestones_url":"https://api.github.com/repos/sprinkle-tool/sprinkle/milestones{/number}","notifications_url":"https://api.github.com/repos/sprinkle-tool/sprinkle/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/sprinkle-tool/sprinkle/labels{/name}"},{"id":1321,"name":"wlwdeezerplayer","full_name":"julesss/wlwdeezerplayer","owner":{"login":"julesss","id":929,"avatar_url":"https://identicons.github.com/0d0871f0806eae32d30983b62252da50.png","gravatar_id":null,"url":"https://api.github.com/users/julesss","html_url":"https://github.com/julesss","followers_url":"https://api.github.com/users/julesss/followers","following_url":"https://api.github.com/users/julesss/following{/other_user}","gists_url":"https://api.github.com/users/julesss/gists{/gist_id}","starred_url":"https://api.github.com/users/julesss/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julesss/subscriptions","organizations_url":"https://api.github.com/users/julesss/orgs","repos_url":"https://api.github.com/users/julesss/repos","events_url":"https://api.github.com/users/julesss/events{/privacy}","received_events_url":"https://api.github.com/users/julesss/received_events","type":"User"},"private":false,"html_url":"https://github.com/julesss/wlwdeezerplayer","description":"Lets you insert a Deezer player in your blog using Windows Live Writer","fork":false,"url":"https://api.github.com/repos/julesss/wlwdeezerplayer","forks_url":"https://api.github.com/repos/julesss/wlwdeezerplayer/forks","keys_url":"https://api.github.com/repos/julesss/wlwdeezerplayer/keys{/key_id}","collaborators_url":"https://api.github.com/repos/julesss/wlwdeezerplayer/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/julesss/wlwdeezerplayer/teams","hooks_url":"https://api.github.com/repos/julesss/wlwdeezerplayer/hooks","issue_events_url":"https://api.github.com/repos/julesss/wlwdeezerplayer/issues/events{/number}","events_url":"https://api.github.com/repos/julesss/wlwdeezerplayer/events","assignees_url":"https://api.github.com/repos/julesss/wlwdeezerplayer/assignees{/user}","branches_url":"https://api.github.com/repos/julesss/wlwdeezerplayer/branches{/branch}","tags_url":"https://api.github.com/repos/julesss/wlwdeezerplayer/tags","blobs_url":"https://api.github.com/repos/julesss/wlwdeezerplayer/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/julesss/wlwdeezerplayer/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/julesss/wlwdeezerplayer/git/refs{/sha}","trees_url":"https://api.github.com/repos/julesss/wlwdeezerplayer/git/trees{/sha}","statuses_url":"https://api.github.com/repos/julesss/wlwdeezerplayer/statuses/{sha}","languages_url":"https://api.github.com/repos/julesss/wlwdeezerplayer/languages","stargazers_url":"https://api.github.com/repos/julesss/wlwdeezerplayer/stargazers","contributors_url":"https://api.github.com/repos/julesss/wlwdeezerplayer/contributors","subscribers_url":"https://api.github.com/repos/julesss/wlwdeezerplayer/subscribers","subscription_url":"https://api.github.com/repos/julesss/wlwdeezerplayer/subscription","commits_url":"https://api.github.com/repos/julesss/wlwdeezerplayer/commits{/sha}","git_commits_url":"https://api.github.com/repos/julesss/wlwdeezerplayer/git/commits{/sha}","comments_url":"https://api.github.com/repos/julesss/wlwdeezerplayer/comments{/number}","issue_comment_url":"https://api.github.com/repos/julesss/wlwdeezerplayer/issues/comments/{number}","contents_url":"https://api.github.com/repos/julesss/wlwdeezerplayer/contents/{+path}","compare_url":"https://api.github.com/repos/julesss/wlwdeezerplayer/compare/{base}...{head}","merges_url":"https://api.github.com/repos/julesss/wlwdeezerplayer/merges","archive_url":"https://api.github.com/repos/julesss/wlwdeezerplayer/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/julesss/wlwdeezerplayer/downloads","issues_url":"https://api.github.com/repos/julesss/wlwdeezerplayer/issues{/number}","pulls_url":"https://api.github.com/repos/julesss/wlwdeezerplayer/pulls{/number}","milestones_url":"https://api.github.com/repos/julesss/wlwdeezerplayer/milestones{/number}","notifications_url":"https://api.github.com/repos/julesss/wlwdeezerplayer/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/julesss/wlwdeezerplayer/labels{/name}"},{"id":1344,"name":"utility-belt","full_name":"gilesbowkett/utility-belt","owner":{"login":"gilesbowkett","id":974,"avatar_url":"https://2.gravatar.com/avatar/ce8b03e5750097942c58e12b46724312?d=https%3A%2F%2Fidenticons.github.com%2F4311359ed4969e8401880e3c1836fbe1.png","gravatar_id":"ce8b03e5750097942c58e12b46724312","url":"https://api.github.com/users/gilesbowkett","html_url":"https://github.com/gilesbowkett","followers_url":"https://api.github.com/users/gilesbowkett/followers","following_url":"https://api.github.com/users/gilesbowkett/following{/other_user}","gists_url":"https://api.github.com/users/gilesbowkett/gists{/gist_id}","starred_url":"https://api.github.com/users/gilesbowkett/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gilesbowkett/subscriptions","organizations_url":"https://api.github.com/users/gilesbowkett/orgs","repos_url":"https://api.github.com/users/gilesbowkett/repos","events_url":"https://api.github.com/users/gilesbowkett/events{/privacy}","received_events_url":"https://api.github.com/users/gilesbowkett/received_events","type":"User"},"private":false,"html_url":"https://github.com/gilesbowkett/utility-belt","description":"IRB Power User Utility Belt","fork":false,"url":"https://api.github.com/repos/gilesbowkett/utility-belt","forks_url":"https://api.github.com/repos/gilesbowkett/utility-belt/forks","keys_url":"https://api.github.com/repos/gilesbowkett/utility-belt/keys{/key_id}","collaborators_url":"https://api.github.com/repos/gilesbowkett/utility-belt/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/gilesbowkett/utility-belt/teams","hooks_url":"https://api.github.com/repos/gilesbowkett/utility-belt/hooks","issue_events_url":"https://api.github.com/repos/gilesbowkett/utility-belt/issues/events{/number}","events_url":"https://api.github.com/repos/gilesbowkett/utility-belt/events","assignees_url":"https://api.github.com/repos/gilesbowkett/utility-belt/assignees{/user}","branches_url":"https://api.github.com/repos/gilesbowkett/utility-belt/branches{/branch}","tags_url":"https://api.github.com/repos/gilesbowkett/utility-belt/tags","blobs_url":"https://api.github.com/repos/gilesbowkett/utility-belt/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/gilesbowkett/utility-belt/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/gilesbowkett/utility-belt/git/refs{/sha}","trees_url":"https://api.github.com/repos/gilesbowkett/utility-belt/git/trees{/sha}","statuses_url":"https://api.github.com/repos/gilesbowkett/utility-belt/statuses/{sha}","languages_url":"https://api.github.com/repos/gilesbowkett/utility-belt/languages","stargazers_url":"https://api.github.com/repos/gilesbowkett/utility-belt/stargazers","contributors_url":"https://api.github.com/repos/gilesbowkett/utility-belt/contributors","subscribers_url":"https://api.github.com/repos/gilesbowkett/utility-belt/subscribers","subscription_url":"https://api.github.com/repos/gilesbowkett/utility-belt/subscription","commits_url":"https://api.github.com/repos/gilesbowkett/utility-belt/commits{/sha}","git_commits_url":"https://api.github.com/repos/gilesbowkett/utility-belt/git/commits{/sha}","comments_url":"https://api.github.com/repos/gilesbowkett/utility-belt/comments{/number}","issue_comment_url":"https://api.github.com/repos/gilesbowkett/utility-belt/issues/comments/{number}","contents_url":"https://api.github.com/repos/gilesbowkett/utility-belt/contents/{+path}","compare_url":"https://api.github.com/repos/gilesbowkett/utility-belt/compare/{base}...{head}","merges_url":"https://api.github.com/repos/gilesbowkett/utility-belt/merges","archive_url":"https://api.github.com/repos/gilesbowkett/utility-belt/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/gilesbowkett/utility-belt/downloads","issues_url":"https://api.github.com/repos/gilesbowkett/utility-belt/issues{/number}","pulls_url":"https://api.github.com/repos/gilesbowkett/utility-belt/pulls{/number}","milestones_url":"https://api.github.com/repos/gilesbowkett/utility-belt/milestones{/number}","notifications_url":"https://api.github.com/repos/gilesbowkett/utility-belt/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/gilesbowkett/utility-belt/labels{/name}"},{"id":1353,"name":"restful-authentication","full_name":"labria/restful-authentication","owner":{"login":"labria","id":323,"avatar_url":"https://1.gravatar.com/avatar/f5049506664636c6cc725099367bd167?d=https%3A%2F%2Fidenticons.github.com%2Fbc6dc48b743dc5d013b1abaebd2faed2.png","gravatar_id":"f5049506664636c6cc725099367bd167","url":"https://api.github.com/users/labria","html_url":"https://github.com/labria","followers_url":"https://api.github.com/users/labria/followers","following_url":"https://api.github.com/users/labria/following{/other_user}","gists_url":"https://api.github.com/users/labria/gists{/gist_id}","starred_url":"https://api.github.com/users/labria/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/labria/subscriptions","organizations_url":"https://api.github.com/users/labria/orgs","repos_url":"https://api.github.com/users/labria/repos","events_url":"https://api.github.com/users/labria/events{/privacy}","received_events_url":"https://api.github.com/users/labria/received_events","type":"User"},"private":false,"html_url":"https://github.com/labria/restful-authentication","description":"Attempt to add SSL client certificate support to the restful_authenctication plugin","fork":true,"url":"https://api.github.com/repos/labria/restful-authentication","forks_url":"https://api.github.com/repos/labria/restful-authentication/forks","keys_url":"https://api.github.com/repos/labria/restful-authentication/keys{/key_id}","collaborators_url":"https://api.github.com/repos/labria/restful-authentication/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/labria/restful-authentication/teams","hooks_url":"https://api.github.com/repos/labria/restful-authentication/hooks","issue_events_url":"https://api.github.com/repos/labria/restful-authentication/issues/events{/number}","events_url":"https://api.github.com/repos/labria/restful-authentication/events","assignees_url":"https://api.github.com/repos/labria/restful-authentication/assignees{/user}","branches_url":"https://api.github.com/repos/labria/restful-authentication/branches{/branch}","tags_url":"https://api.github.com/repos/labria/restful-authentication/tags","blobs_url":"https://api.github.com/repos/labria/restful-authentication/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/labria/restful-authentication/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/labria/restful-authentication/git/refs{/sha}","trees_url":"https://api.github.com/repos/labria/restful-authentication/git/trees{/sha}","statuses_url":"https://api.github.com/repos/labria/restful-authentication/statuses/{sha}","languages_url":"https://api.github.com/repos/labria/restful-authentication/languages","stargazers_url":"https://api.github.com/repos/labria/restful-authentication/stargazers","contributors_url":"https://api.github.com/repos/labria/restful-authentication/contributors","subscribers_url":"https://api.github.com/repos/labria/restful-authentication/subscribers","subscription_url":"https://api.github.com/repos/labria/restful-authentication/subscription","commits_url":"https://api.github.com/repos/labria/restful-authentication/commits{/sha}","git_commits_url":"https://api.github.com/repos/labria/restful-authentication/git/commits{/sha}","comments_url":"https://api.github.com/repos/labria/restful-authentication/comments{/number}","issue_comment_url":"https://api.github.com/repos/labria/restful-authentication/issues/comments/{number}","contents_url":"https://api.github.com/repos/labria/restful-authentication/contents/{+path}","compare_url":"https://api.github.com/repos/labria/restful-authentication/compare/{base}...{head}","merges_url":"https://api.github.com/repos/labria/restful-authentication/merges","archive_url":"https://api.github.com/repos/labria/restful-authentication/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/labria/restful-authentication/downloads","issues_url":"https://api.github.com/repos/labria/restful-authentication/issues{/number}","pulls_url":"https://api.github.com/repos/labria/restful-authentication/pulls{/number}","milestones_url":"https://api.github.com/repos/labria/restful-authentication/milestones{/number}","notifications_url":"https://api.github.com/repos/labria/restful-authentication/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/labria/restful-authentication/labels{/name}"},{"id":1355,"name":"ruby-screen","full_name":"dpetersen/ruby-screen","owner":{"login":"dpetersen","id":408,"avatar_url":"https://2.gravatar.com/avatar/5cc7967fc5c25199c88410bc56eb1329?d=https%3A%2F%2Fidenticons.github.com%2F0d0fd7c6e093f7b804fa0150b875b868.png","gravatar_id":"5cc7967fc5c25199c88410bc56eb1329","url":"https://api.github.com/users/dpetersen","html_url":"https://github.com/dpetersen","followers_url":"https://api.github.com/users/dpetersen/followers","following_url":"https://api.github.com/users/dpetersen/following{/other_user}","gists_url":"https://api.github.com/users/dpetersen/gists{/gist_id}","starred_url":"https://api.github.com/users/dpetersen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dpetersen/subscriptions","organizations_url":"https://api.github.com/users/dpetersen/orgs","repos_url":"https://api.github.com/users/dpetersen/repos","events_url":"https://api.github.com/users/dpetersen/events{/privacy}","received_events_url":"https://api.github.com/users/dpetersen/received_events","type":"User"},"private":false,"html_url":"https://github.com/dpetersen/ruby-screen","description":"A utility to supplement GNU Screen, easing use of custom configurations, packaged as a RubyGem.","fork":false,"url":"https://api.github.com/repos/dpetersen/ruby-screen","forks_url":"https://api.github.com/repos/dpetersen/ruby-screen/forks","keys_url":"https://api.github.com/repos/dpetersen/ruby-screen/keys{/key_id}","collaborators_url":"https://api.github.com/repos/dpetersen/ruby-screen/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/dpetersen/ruby-screen/teams","hooks_url":"https://api.github.com/repos/dpetersen/ruby-screen/hooks","issue_events_url":"https://api.github.com/repos/dpetersen/ruby-screen/issues/events{/number}","events_url":"https://api.github.com/repos/dpetersen/ruby-screen/events","assignees_url":"https://api.github.com/repos/dpetersen/ruby-screen/assignees{/user}","branches_url":"https://api.github.com/repos/dpetersen/ruby-screen/branches{/branch}","tags_url":"https://api.github.com/repos/dpetersen/ruby-screen/tags","blobs_url":"https://api.github.com/repos/dpetersen/ruby-screen/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/dpetersen/ruby-screen/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/dpetersen/ruby-screen/git/refs{/sha}","trees_url":"https://api.github.com/repos/dpetersen/ruby-screen/git/trees{/sha}","statuses_url":"https://api.github.com/repos/dpetersen/ruby-screen/statuses/{sha}","languages_url":"https://api.github.com/repos/dpetersen/ruby-screen/languages","stargazers_url":"https://api.github.com/repos/dpetersen/ruby-screen/stargazers","contributors_url":"https://api.github.com/repos/dpetersen/ruby-screen/contributors","subscribers_url":"https://api.github.com/repos/dpetersen/ruby-screen/subscribers","subscription_url":"https://api.github.com/repos/dpetersen/ruby-screen/subscription","commits_url":"https://api.github.com/repos/dpetersen/ruby-screen/commits{/sha}","git_commits_url":"https://api.github.com/repos/dpetersen/ruby-screen/git/commits{/sha}","comments_url":"https://api.github.com/repos/dpetersen/ruby-screen/comments{/number}","issue_comment_url":"https://api.github.com/repos/dpetersen/ruby-screen/issues/comments/{number}","contents_url":"https://api.github.com/repos/dpetersen/ruby-screen/contents/{+path}","compare_url":"https://api.github.com/repos/dpetersen/ruby-screen/compare/{base}...{head}","merges_url":"https://api.github.com/repos/dpetersen/ruby-screen/merges","archive_url":"https://api.github.com/repos/dpetersen/ruby-screen/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/dpetersen/ruby-screen/downloads","issues_url":"https://api.github.com/repos/dpetersen/ruby-screen/issues{/number}","pulls_url":"https://api.github.com/repos/dpetersen/ruby-screen/pulls{/number}","milestones_url":"https://api.github.com/repos/dpetersen/ruby-screen/milestones{/number}","notifications_url":"https://api.github.com/repos/dpetersen/ruby-screen/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/dpetersen/ruby-screen/labels{/name}"},{"id":1364,"name":"eatingsafe","full_name":"aharper/eatingsafe","owner":{"login":"aharper","id":1002,"avatar_url":"https://identicons.github.com/fba9d88164f3e2d9109ee770223212a0.png","gravatar_id":null,"url":"https://api.github.com/users/aharper","html_url":"https://github.com/aharper","followers_url":"https://api.github.com/users/aharper/followers","following_url":"https://api.github.com/users/aharper/following{/other_user}","gists_url":"https://api.github.com/users/aharper/gists{/gist_id}","starred_url":"https://api.github.com/users/aharper/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aharper/subscriptions","organizations_url":"https://api.github.com/users/aharper/orgs","repos_url":"https://api.github.com/users/aharper/repos","events_url":"https://api.github.com/users/aharper/events{/privacy}","received_events_url":"https://api.github.com/users/aharper/received_events","type":"User"},"private":false,"html_url":"https://github.com/aharper/eatingsafe","description":"","fork":false,"url":"https://api.github.com/repos/aharper/eatingsafe","forks_url":"https://api.github.com/repos/aharper/eatingsafe/forks","keys_url":"https://api.github.com/repos/aharper/eatingsafe/keys{/key_id}","collaborators_url":"https://api.github.com/repos/aharper/eatingsafe/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/aharper/eatingsafe/teams","hooks_url":"https://api.github.com/repos/aharper/eatingsafe/hooks","issue_events_url":"https://api.github.com/repos/aharper/eatingsafe/issues/events{/number}","events_url":"https://api.github.com/repos/aharper/eatingsafe/events","assignees_url":"https://api.github.com/repos/aharper/eatingsafe/assignees{/user}","branches_url":"https://api.github.com/repos/aharper/eatingsafe/branches{/branch}","tags_url":"https://api.github.com/repos/aharper/eatingsafe/tags","blobs_url":"https://api.github.com/repos/aharper/eatingsafe/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/aharper/eatingsafe/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/aharper/eatingsafe/git/refs{/sha}","trees_url":"https://api.github.com/repos/aharper/eatingsafe/git/trees{/sha}","statuses_url":"https://api.github.com/repos/aharper/eatingsafe/statuses/{sha}","languages_url":"https://api.github.com/repos/aharper/eatingsafe/languages","stargazers_url":"https://api.github.com/repos/aharper/eatingsafe/stargazers","contributors_url":"https://api.github.com/repos/aharper/eatingsafe/contributors","subscribers_url":"https://api.github.com/repos/aharper/eatingsafe/subscribers","subscription_url":"https://api.github.com/repos/aharper/eatingsafe/subscription","commits_url":"https://api.github.com/repos/aharper/eatingsafe/commits{/sha}","git_commits_url":"https://api.github.com/repos/aharper/eatingsafe/git/commits{/sha}","comments_url":"https://api.github.com/repos/aharper/eatingsafe/comments{/number}","issue_comment_url":"https://api.github.com/repos/aharper/eatingsafe/issues/comments/{number}","contents_url":"https://api.github.com/repos/aharper/eatingsafe/contents/{+path}","compare_url":"https://api.github.com/repos/aharper/eatingsafe/compare/{base}...{head}","merges_url":"https://api.github.com/repos/aharper/eatingsafe/merges","archive_url":"https://api.github.com/repos/aharper/eatingsafe/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/aharper/eatingsafe/downloads","issues_url":"https://api.github.com/repos/aharper/eatingsafe/issues{/number}","pulls_url":"https://api.github.com/repos/aharper/eatingsafe/pulls{/number}","milestones_url":"https://api.github.com/repos/aharper/eatingsafe/milestones{/number}","notifications_url":"https://api.github.com/repos/aharper/eatingsafe/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/aharper/eatingsafe/labels{/name}"},{"id":1377,"name":"name_parser","full_name":"bricooke/name_parser","owner":{"login":"bricooke","id":977,"avatar_url":"https://1.gravatar.com/avatar/916de6eec58087391b518c5ac3ac7f47?d=https%3A%2F%2Fidenticons.github.com%2Fcc1aa436277138f61cda703991069eaf.png","gravatar_id":"916de6eec58087391b518c5ac3ac7f47","url":"https://api.github.com/users/bricooke","html_url":"https://github.com/bricooke","followers_url":"https://api.github.com/users/bricooke/followers","following_url":"https://api.github.com/users/bricooke/following{/other_user}","gists_url":"https://api.github.com/users/bricooke/gists{/gist_id}","starred_url":"https://api.github.com/users/bricooke/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bricooke/subscriptions","organizations_url":"https://api.github.com/users/bricooke/orgs","repos_url":"https://api.github.com/users/bricooke/repos","events_url":"https://api.github.com/users/bricooke/events{/privacy}","received_events_url":"https://api.github.com/users/bricooke/received_events","type":"User"},"private":false,"html_url":"https://github.com/bricooke/name_parser","description":"Gem for parsing names into first, last, middle, prefix and suffix","fork":false,"url":"https://api.github.com/repos/bricooke/name_parser","forks_url":"https://api.github.com/repos/bricooke/name_parser/forks","keys_url":"https://api.github.com/repos/bricooke/name_parser/keys{/key_id}","collaborators_url":"https://api.github.com/repos/bricooke/name_parser/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/bricooke/name_parser/teams","hooks_url":"https://api.github.com/repos/bricooke/name_parser/hooks","issue_events_url":"https://api.github.com/repos/bricooke/name_parser/issues/events{/number}","events_url":"https://api.github.com/repos/bricooke/name_parser/events","assignees_url":"https://api.github.com/repos/bricooke/name_parser/assignees{/user}","branches_url":"https://api.github.com/repos/bricooke/name_parser/branches{/branch}","tags_url":"https://api.github.com/repos/bricooke/name_parser/tags","blobs_url":"https://api.github.com/repos/bricooke/name_parser/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/bricooke/name_parser/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/bricooke/name_parser/git/refs{/sha}","trees_url":"https://api.github.com/repos/bricooke/name_parser/git/trees{/sha}","statuses_url":"https://api.github.com/repos/bricooke/name_parser/statuses/{sha}","languages_url":"https://api.github.com/repos/bricooke/name_parser/languages","stargazers_url":"https://api.github.com/repos/bricooke/name_parser/stargazers","contributors_url":"https://api.github.com/repos/bricooke/name_parser/contributors","subscribers_url":"https://api.github.com/repos/bricooke/name_parser/subscribers","subscription_url":"https://api.github.com/repos/bricooke/name_parser/subscription","commits_url":"https://api.github.com/repos/bricooke/name_parser/commits{/sha}","git_commits_url":"https://api.github.com/repos/bricooke/name_parser/git/commits{/sha}","comments_url":"https://api.github.com/repos/bricooke/name_parser/comments{/number}","issue_comment_url":"https://api.github.com/repos/bricooke/name_parser/issues/comments/{number}","contents_url":"https://api.github.com/repos/bricooke/name_parser/contents/{+path}","compare_url":"https://api.github.com/repos/bricooke/name_parser/compare/{base}...{head}","merges_url":"https://api.github.com/repos/bricooke/name_parser/merges","archive_url":"https://api.github.com/repos/bricooke/name_parser/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/bricooke/name_parser/downloads","issues_url":"https://api.github.com/repos/bricooke/name_parser/issues{/number}","pulls_url":"https://api.github.com/repos/bricooke/name_parser/pulls{/number}","milestones_url":"https://api.github.com/repos/bricooke/name_parser/milestones{/number}","notifications_url":"https://api.github.com/repos/bricooke/name_parser/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/bricooke/name_parser/labels{/name}"},{"id":1381,"name":"ext_scaffold","full_name":"drudru/ext_scaffold","owner":{"login":"drudru","id":546,"avatar_url":"https://identicons.github.com/ed265bc903a5a097f61d3ec064d96d2e.png","gravatar_id":null,"url":"https://api.github.com/users/drudru","html_url":"https://github.com/drudru","followers_url":"https://api.github.com/users/drudru/followers","following_url":"https://api.github.com/users/drudru/following{/other_user}","gists_url":"https://api.github.com/users/drudru/gists{/gist_id}","starred_url":"https://api.github.com/users/drudru/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/drudru/subscriptions","organizations_url":"https://api.github.com/users/drudru/orgs","repos_url":"https://api.github.com/users/drudru/repos","events_url":"https://api.github.com/users/drudru/events{/privacy}","received_events_url":"https://api.github.com/users/drudru/received_events","type":"User"},"private":false,"html_url":"https://github.com/drudru/ext_scaffold","description":"copy of ext_scaffold","fork":false,"url":"https://api.github.com/repos/drudru/ext_scaffold","forks_url":"https://api.github.com/repos/drudru/ext_scaffold/forks","keys_url":"https://api.github.com/repos/drudru/ext_scaffold/keys{/key_id}","collaborators_url":"https://api.github.com/repos/drudru/ext_scaffold/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/drudru/ext_scaffold/teams","hooks_url":"https://api.github.com/repos/drudru/ext_scaffold/hooks","issue_events_url":"https://api.github.com/repos/drudru/ext_scaffold/issues/events{/number}","events_url":"https://api.github.com/repos/drudru/ext_scaffold/events","assignees_url":"https://api.github.com/repos/drudru/ext_scaffold/assignees{/user}","branches_url":"https://api.github.com/repos/drudru/ext_scaffold/branches{/branch}","tags_url":"https://api.github.com/repos/drudru/ext_scaffold/tags","blobs_url":"https://api.github.com/repos/drudru/ext_scaffold/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/drudru/ext_scaffold/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/drudru/ext_scaffold/git/refs{/sha}","trees_url":"https://api.github.com/repos/drudru/ext_scaffold/git/trees{/sha}","statuses_url":"https://api.github.com/repos/drudru/ext_scaffold/statuses/{sha}","languages_url":"https://api.github.com/repos/drudru/ext_scaffold/languages","stargazers_url":"https://api.github.com/repos/drudru/ext_scaffold/stargazers","contributors_url":"https://api.github.com/repos/drudru/ext_scaffold/contributors","subscribers_url":"https://api.github.com/repos/drudru/ext_scaffold/subscribers","subscription_url":"https://api.github.com/repos/drudru/ext_scaffold/subscription","commits_url":"https://api.github.com/repos/drudru/ext_scaffold/commits{/sha}","git_commits_url":"https://api.github.com/repos/drudru/ext_scaffold/git/commits{/sha}","comments_url":"https://api.github.com/repos/drudru/ext_scaffold/comments{/number}","issue_comment_url":"https://api.github.com/repos/drudru/ext_scaffold/issues/comments/{number}","contents_url":"https://api.github.com/repos/drudru/ext_scaffold/contents/{+path}","compare_url":"https://api.github.com/repos/drudru/ext_scaffold/compare/{base}...{head}","merges_url":"https://api.github.com/repos/drudru/ext_scaffold/merges","archive_url":"https://api.github.com/repos/drudru/ext_scaffold/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/drudru/ext_scaffold/downloads","issues_url":"https://api.github.com/repos/drudru/ext_scaffold/issues{/number}","pulls_url":"https://api.github.com/repos/drudru/ext_scaffold/pulls{/number}","milestones_url":"https://api.github.com/repos/drudru/ext_scaffold/milestones{/number}","notifications_url":"https://api.github.com/repos/drudru/ext_scaffold/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/drudru/ext_scaffold/labels{/name}"},{"id":1385,"name":"spongewolf","full_name":"ckhsponge/spongewolf","owner":{"login":"ckhsponge","id":590,"avatar_url":"https://2.gravatar.com/avatar/56b08cc76663f72307f41583a1980454?d=https%3A%2F%2Fidenticons.github.com%2F08b255a5d42b89b0585260b6f2360bdd.png","gravatar_id":"56b08cc76663f72307f41583a1980454","url":"https://api.github.com/users/ckhsponge","html_url":"https://github.com/ckhsponge","followers_url":"https://api.github.com/users/ckhsponge/followers","following_url":"https://api.github.com/users/ckhsponge/following{/other_user}","gists_url":"https://api.github.com/users/ckhsponge/gists{/gist_id}","starred_url":"https://api.github.com/users/ckhsponge/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ckhsponge/subscriptions","organizations_url":"https://api.github.com/users/ckhsponge/orgs","repos_url":"https://api.github.com/users/ckhsponge/repos","events_url":"https://api.github.com/users/ckhsponge/events{/privacy}","received_events_url":"https://api.github.com/users/ckhsponge/received_events","type":"User"},"private":false,"html_url":"https://github.com/ckhsponge/spongewolf","description":"Rails application for building event lists and calendars using the Spongecell API","fork":false,"url":"https://api.github.com/repos/ckhsponge/spongewolf","forks_url":"https://api.github.com/repos/ckhsponge/spongewolf/forks","keys_url":"https://api.github.com/repos/ckhsponge/spongewolf/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ckhsponge/spongewolf/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ckhsponge/spongewolf/teams","hooks_url":"https://api.github.com/repos/ckhsponge/spongewolf/hooks","issue_events_url":"https://api.github.com/repos/ckhsponge/spongewolf/issues/events{/number}","events_url":"https://api.github.com/repos/ckhsponge/spongewolf/events","assignees_url":"https://api.github.com/repos/ckhsponge/spongewolf/assignees{/user}","branches_url":"https://api.github.com/repos/ckhsponge/spongewolf/branches{/branch}","tags_url":"https://api.github.com/repos/ckhsponge/spongewolf/tags","blobs_url":"https://api.github.com/repos/ckhsponge/spongewolf/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ckhsponge/spongewolf/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ckhsponge/spongewolf/git/refs{/sha}","trees_url":"https://api.github.com/repos/ckhsponge/spongewolf/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ckhsponge/spongewolf/statuses/{sha}","languages_url":"https://api.github.com/repos/ckhsponge/spongewolf/languages","stargazers_url":"https://api.github.com/repos/ckhsponge/spongewolf/stargazers","contributors_url":"https://api.github.com/repos/ckhsponge/spongewolf/contributors","subscribers_url":"https://api.github.com/repos/ckhsponge/spongewolf/subscribers","subscription_url":"https://api.github.com/repos/ckhsponge/spongewolf/subscription","commits_url":"https://api.github.com/repos/ckhsponge/spongewolf/commits{/sha}","git_commits_url":"https://api.github.com/repos/ckhsponge/spongewolf/git/commits{/sha}","comments_url":"https://api.github.com/repos/ckhsponge/spongewolf/comments{/number}","issue_comment_url":"https://api.github.com/repos/ckhsponge/spongewolf/issues/comments/{number}","contents_url":"https://api.github.com/repos/ckhsponge/spongewolf/contents/{+path}","compare_url":"https://api.github.com/repos/ckhsponge/spongewolf/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ckhsponge/spongewolf/merges","archive_url":"https://api.github.com/repos/ckhsponge/spongewolf/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ckhsponge/spongewolf/downloads","issues_url":"https://api.github.com/repos/ckhsponge/spongewolf/issues{/number}","pulls_url":"https://api.github.com/repos/ckhsponge/spongewolf/pulls{/number}","milestones_url":"https://api.github.com/repos/ckhsponge/spongewolf/milestones{/number}","notifications_url":"https://api.github.com/repos/ckhsponge/spongewolf/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ckhsponge/spongewolf/labels{/name}"},{"id":1388,"name":"amazing","full_name":"dag/amazing","owner":{"login":"dag","id":319,"avatar_url":"https://1.gravatar.com/avatar/482f6832b98eccb86e2a5dc4de8aad91?d=https%3A%2F%2Fidenticons.github.com%2F8d3bba7425e7c98c50f52ca1b52d3735.png","gravatar_id":"482f6832b98eccb86e2a5dc4de8aad91","url":"https://api.github.com/users/dag","html_url":"https://github.com/dag","followers_url":"https://api.github.com/users/dag/followers","following_url":"https://api.github.com/users/dag/following{/other_user}","gists_url":"https://api.github.com/users/dag/gists{/gist_id}","starred_url":"https://api.github.com/users/dag/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dag/subscriptions","organizations_url":"https://api.github.com/users/dag/orgs","repos_url":"https://api.github.com/users/dag/repos","events_url":"https://api.github.com/users/dag/events{/privacy}","received_events_url":"https://api.github.com/users/dag/received_events","type":"User"},"private":false,"html_url":"https://github.com/dag/amazing","description":"an amazing widget manager for an awesome window manager","fork":false,"url":"https://api.github.com/repos/dag/amazing","forks_url":"https://api.github.com/repos/dag/amazing/forks","keys_url":"https://api.github.com/repos/dag/amazing/keys{/key_id}","collaborators_url":"https://api.github.com/repos/dag/amazing/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/dag/amazing/teams","hooks_url":"https://api.github.com/repos/dag/amazing/hooks","issue_events_url":"https://api.github.com/repos/dag/amazing/issues/events{/number}","events_url":"https://api.github.com/repos/dag/amazing/events","assignees_url":"https://api.github.com/repos/dag/amazing/assignees{/user}","branches_url":"https://api.github.com/repos/dag/amazing/branches{/branch}","tags_url":"https://api.github.com/repos/dag/amazing/tags","blobs_url":"https://api.github.com/repos/dag/amazing/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/dag/amazing/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/dag/amazing/git/refs{/sha}","trees_url":"https://api.github.com/repos/dag/amazing/git/trees{/sha}","statuses_url":"https://api.github.com/repos/dag/amazing/statuses/{sha}","languages_url":"https://api.github.com/repos/dag/amazing/languages","stargazers_url":"https://api.github.com/repos/dag/amazing/stargazers","contributors_url":"https://api.github.com/repos/dag/amazing/contributors","subscribers_url":"https://api.github.com/repos/dag/amazing/subscribers","subscription_url":"https://api.github.com/repos/dag/amazing/subscription","commits_url":"https://api.github.com/repos/dag/amazing/commits{/sha}","git_commits_url":"https://api.github.com/repos/dag/amazing/git/commits{/sha}","comments_url":"https://api.github.com/repos/dag/amazing/comments{/number}","issue_comment_url":"https://api.github.com/repos/dag/amazing/issues/comments/{number}","contents_url":"https://api.github.com/repos/dag/amazing/contents/{+path}","compare_url":"https://api.github.com/repos/dag/amazing/compare/{base}...{head}","merges_url":"https://api.github.com/repos/dag/amazing/merges","archive_url":"https://api.github.com/repos/dag/amazing/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/dag/amazing/downloads","issues_url":"https://api.github.com/repos/dag/amazing/issues{/number}","pulls_url":"https://api.github.com/repos/dag/amazing/pulls{/number}","milestones_url":"https://api.github.com/repos/dag/amazing/milestones{/number}","notifications_url":"https://api.github.com/repos/dag/amazing/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/dag/amazing/labels{/name}"},{"id":1398,"name":"ruby-merlin","full_name":"pdsphil/ruby-merlin","owner":{"login":"pdsphil","id":268,"avatar_url":"https://1.gravatar.com/avatar/e0bd199c24c59f1666f3ce960c3309ee?d=https%3A%2F%2Fidenticons.github.com%2F8f121ce07d74717e0b1f21d122e04521.png","gravatar_id":"e0bd199c24c59f1666f3ce960c3309ee","url":"https://api.github.com/users/pdsphil","html_url":"https://github.com/pdsphil","followers_url":"https://api.github.com/users/pdsphil/followers","following_url":"https://api.github.com/users/pdsphil/following{/other_user}","gists_url":"https://api.github.com/users/pdsphil/gists{/gist_id}","starred_url":"https://api.github.com/users/pdsphil/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pdsphil/subscriptions","organizations_url":"https://api.github.com/users/pdsphil/orgs","repos_url":"https://api.github.com/users/pdsphil/repos","events_url":"https://api.github.com/users/pdsphil/events{/privacy}","received_events_url":"https://api.github.com/users/pdsphil/received_events","type":"User"},"private":false,"html_url":"https://github.com/pdsphil/ruby-merlin","description":"Ruby interface to the Merlin API","fork":false,"url":"https://api.github.com/repos/pdsphil/ruby-merlin","forks_url":"https://api.github.com/repos/pdsphil/ruby-merlin/forks","keys_url":"https://api.github.com/repos/pdsphil/ruby-merlin/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pdsphil/ruby-merlin/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pdsphil/ruby-merlin/teams","hooks_url":"https://api.github.com/repos/pdsphil/ruby-merlin/hooks","issue_events_url":"https://api.github.com/repos/pdsphil/ruby-merlin/issues/events{/number}","events_url":"https://api.github.com/repos/pdsphil/ruby-merlin/events","assignees_url":"https://api.github.com/repos/pdsphil/ruby-merlin/assignees{/user}","branches_url":"https://api.github.com/repos/pdsphil/ruby-merlin/branches{/branch}","tags_url":"https://api.github.com/repos/pdsphil/ruby-merlin/tags","blobs_url":"https://api.github.com/repos/pdsphil/ruby-merlin/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pdsphil/ruby-merlin/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pdsphil/ruby-merlin/git/refs{/sha}","trees_url":"https://api.github.com/repos/pdsphil/ruby-merlin/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pdsphil/ruby-merlin/statuses/{sha}","languages_url":"https://api.github.com/repos/pdsphil/ruby-merlin/languages","stargazers_url":"https://api.github.com/repos/pdsphil/ruby-merlin/stargazers","contributors_url":"https://api.github.com/repos/pdsphil/ruby-merlin/contributors","subscribers_url":"https://api.github.com/repos/pdsphil/ruby-merlin/subscribers","subscription_url":"https://api.github.com/repos/pdsphil/ruby-merlin/subscription","commits_url":"https://api.github.com/repos/pdsphil/ruby-merlin/commits{/sha}","git_commits_url":"https://api.github.com/repos/pdsphil/ruby-merlin/git/commits{/sha}","comments_url":"https://api.github.com/repos/pdsphil/ruby-merlin/comments{/number}","issue_comment_url":"https://api.github.com/repos/pdsphil/ruby-merlin/issues/comments/{number}","contents_url":"https://api.github.com/repos/pdsphil/ruby-merlin/contents/{+path}","compare_url":"https://api.github.com/repos/pdsphil/ruby-merlin/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pdsphil/ruby-merlin/merges","archive_url":"https://api.github.com/repos/pdsphil/ruby-merlin/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pdsphil/ruby-merlin/downloads","issues_url":"https://api.github.com/repos/pdsphil/ruby-merlin/issues{/number}","pulls_url":"https://api.github.com/repos/pdsphil/ruby-merlin/pulls{/number}","milestones_url":"https://api.github.com/repos/pdsphil/ruby-merlin/milestones{/number}","notifications_url":"https://api.github.com/repos/pdsphil/ruby-merlin/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pdsphil/ruby-merlin/labels{/name}"},{"id":1401,"name":"tekkonfig","full_name":"tekkub/tekkonfig","owner":{"login":"tekkub","id":706,"avatar_url":"https://1.gravatar.com/avatar/472814aac7576b67da59ea79fcbf7d66?d=https%3A%2F%2Fidenticons.github.com%2F9c82c7143c102b71c593d98d96093fde.png","gravatar_id":"472814aac7576b67da59ea79fcbf7d66","url":"https://api.github.com/users/tekkub","html_url":"https://github.com/tekkub","followers_url":"https://api.github.com/users/tekkub/followers","following_url":"https://api.github.com/users/tekkub/following{/other_user}","gists_url":"https://api.github.com/users/tekkub/gists{/gist_id}","starred_url":"https://api.github.com/users/tekkub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tekkub/subscriptions","organizations_url":"https://api.github.com/users/tekkub/orgs","repos_url":"https://api.github.com/users/tekkub/repos","events_url":"https://api.github.com/users/tekkub/events{/privacy}","received_events_url":"https://api.github.com/users/tekkub/received_events","type":"User"},"private":false,"html_url":"https://github.com/tekkub/tekkonfig","description":"Misc GUI widget factories for World of Warcraft addons","fork":false,"url":"https://api.github.com/repos/tekkub/tekkonfig","forks_url":"https://api.github.com/repos/tekkub/tekkonfig/forks","keys_url":"https://api.github.com/repos/tekkub/tekkonfig/keys{/key_id}","collaborators_url":"https://api.github.com/repos/tekkub/tekkonfig/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/tekkub/tekkonfig/teams","hooks_url":"https://api.github.com/repos/tekkub/tekkonfig/hooks","issue_events_url":"https://api.github.com/repos/tekkub/tekkonfig/issues/events{/number}","events_url":"https://api.github.com/repos/tekkub/tekkonfig/events","assignees_url":"https://api.github.com/repos/tekkub/tekkonfig/assignees{/user}","branches_url":"https://api.github.com/repos/tekkub/tekkonfig/branches{/branch}","tags_url":"https://api.github.com/repos/tekkub/tekkonfig/tags","blobs_url":"https://api.github.com/repos/tekkub/tekkonfig/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/tekkub/tekkonfig/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/tekkub/tekkonfig/git/refs{/sha}","trees_url":"https://api.github.com/repos/tekkub/tekkonfig/git/trees{/sha}","statuses_url":"https://api.github.com/repos/tekkub/tekkonfig/statuses/{sha}","languages_url":"https://api.github.com/repos/tekkub/tekkonfig/languages","stargazers_url":"https://api.github.com/repos/tekkub/tekkonfig/stargazers","contributors_url":"https://api.github.com/repos/tekkub/tekkonfig/contributors","subscribers_url":"https://api.github.com/repos/tekkub/tekkonfig/subscribers","subscription_url":"https://api.github.com/repos/tekkub/tekkonfig/subscription","commits_url":"https://api.github.com/repos/tekkub/tekkonfig/commits{/sha}","git_commits_url":"https://api.github.com/repos/tekkub/tekkonfig/git/commits{/sha}","comments_url":"https://api.github.com/repos/tekkub/tekkonfig/comments{/number}","issue_comment_url":"https://api.github.com/repos/tekkub/tekkonfig/issues/comments/{number}","contents_url":"https://api.github.com/repos/tekkub/tekkonfig/contents/{+path}","compare_url":"https://api.github.com/repos/tekkub/tekkonfig/compare/{base}...{head}","merges_url":"https://api.github.com/repos/tekkub/tekkonfig/merges","archive_url":"https://api.github.com/repos/tekkub/tekkonfig/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/tekkub/tekkonfig/downloads","issues_url":"https://api.github.com/repos/tekkub/tekkonfig/issues{/number}","pulls_url":"https://api.github.com/repos/tekkub/tekkonfig/pulls{/number}","milestones_url":"https://api.github.com/repos/tekkub/tekkonfig/milestones{/number}","notifications_url":"https://api.github.com/repos/tekkub/tekkonfig/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/tekkub/tekkonfig/labels{/name}"},{"id":1402,"name":"ruby-idology","full_name":"pdsphil/ruby-idology","owner":{"login":"pdsphil","id":268,"avatar_url":"https://1.gravatar.com/avatar/e0bd199c24c59f1666f3ce960c3309ee?d=https%3A%2F%2Fidenticons.github.com%2F8f121ce07d74717e0b1f21d122e04521.png","gravatar_id":"e0bd199c24c59f1666f3ce960c3309ee","url":"https://api.github.com/users/pdsphil","html_url":"https://github.com/pdsphil","followers_url":"https://api.github.com/users/pdsphil/followers","following_url":"https://api.github.com/users/pdsphil/following{/other_user}","gists_url":"https://api.github.com/users/pdsphil/gists{/gist_id}","starred_url":"https://api.github.com/users/pdsphil/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pdsphil/subscriptions","organizations_url":"https://api.github.com/users/pdsphil/orgs","repos_url":"https://api.github.com/users/pdsphil/repos","events_url":"https://api.github.com/users/pdsphil/events{/privacy}","received_events_url":"https://api.github.com/users/pdsphil/received_events","type":"User"},"private":false,"html_url":"https://github.com/pdsphil/ruby-idology","description":"Ruby interface to the IDology API","fork":false,"url":"https://api.github.com/repos/pdsphil/ruby-idology","forks_url":"https://api.github.com/repos/pdsphil/ruby-idology/forks","keys_url":"https://api.github.com/repos/pdsphil/ruby-idology/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pdsphil/ruby-idology/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pdsphil/ruby-idology/teams","hooks_url":"https://api.github.com/repos/pdsphil/ruby-idology/hooks","issue_events_url":"https://api.github.com/repos/pdsphil/ruby-idology/issues/events{/number}","events_url":"https://api.github.com/repos/pdsphil/ruby-idology/events","assignees_url":"https://api.github.com/repos/pdsphil/ruby-idology/assignees{/user}","branches_url":"https://api.github.com/repos/pdsphil/ruby-idology/branches{/branch}","tags_url":"https://api.github.com/repos/pdsphil/ruby-idology/tags","blobs_url":"https://api.github.com/repos/pdsphil/ruby-idology/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pdsphil/ruby-idology/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pdsphil/ruby-idology/git/refs{/sha}","trees_url":"https://api.github.com/repos/pdsphil/ruby-idology/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pdsphil/ruby-idology/statuses/{sha}","languages_url":"https://api.github.com/repos/pdsphil/ruby-idology/languages","stargazers_url":"https://api.github.com/repos/pdsphil/ruby-idology/stargazers","contributors_url":"https://api.github.com/repos/pdsphil/ruby-idology/contributors","subscribers_url":"https://api.github.com/repos/pdsphil/ruby-idology/subscribers","subscription_url":"https://api.github.com/repos/pdsphil/ruby-idology/subscription","commits_url":"https://api.github.com/repos/pdsphil/ruby-idology/commits{/sha}","git_commits_url":"https://api.github.com/repos/pdsphil/ruby-idology/git/commits{/sha}","comments_url":"https://api.github.com/repos/pdsphil/ruby-idology/comments{/number}","issue_comment_url":"https://api.github.com/repos/pdsphil/ruby-idology/issues/comments/{number}","contents_url":"https://api.github.com/repos/pdsphil/ruby-idology/contents/{+path}","compare_url":"https://api.github.com/repos/pdsphil/ruby-idology/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pdsphil/ruby-idology/merges","archive_url":"https://api.github.com/repos/pdsphil/ruby-idology/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pdsphil/ruby-idology/downloads","issues_url":"https://api.github.com/repos/pdsphil/ruby-idology/issues{/number}","pulls_url":"https://api.github.com/repos/pdsphil/ruby-idology/pulls{/number}","milestones_url":"https://api.github.com/repos/pdsphil/ruby-idology/milestones{/number}","notifications_url":"https://api.github.com/repos/pdsphil/ruby-idology/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pdsphil/ruby-idology/labels{/name}"},{"id":1408,"name":"luaclr","full_name":"mascarenhas/luaclr","owner":{"login":"mascarenhas","id":363,"avatar_url":"https://0.gravatar.com/avatar/f9757c8ee985d7343427b8bd1797ec2f?d=https%3A%2F%2Fidenticons.github.com%2F00411460f7c92d2124a67ea0f4cb5f85.png","gravatar_id":"f9757c8ee985d7343427b8bd1797ec2f","url":"https://api.github.com/users/mascarenhas","html_url":"https://github.com/mascarenhas","followers_url":"https://api.github.com/users/mascarenhas/followers","following_url":"https://api.github.com/users/mascarenhas/following{/other_user}","gists_url":"https://api.github.com/users/mascarenhas/gists{/gist_id}","starred_url":"https://api.github.com/users/mascarenhas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mascarenhas/subscriptions","organizations_url":"https://api.github.com/users/mascarenhas/orgs","repos_url":"https://api.github.com/users/mascarenhas/repos","events_url":"https://api.github.com/users/mascarenhas/events{/privacy}","received_events_url":"https://api.github.com/users/mascarenhas/received_events","type":"User"},"private":false,"html_url":"https://github.com/mascarenhas/luaclr","description":"","fork":false,"url":"https://api.github.com/repos/mascarenhas/luaclr","forks_url":"https://api.github.com/repos/mascarenhas/luaclr/forks","keys_url":"https://api.github.com/repos/mascarenhas/luaclr/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mascarenhas/luaclr/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mascarenhas/luaclr/teams","hooks_url":"https://api.github.com/repos/mascarenhas/luaclr/hooks","issue_events_url":"https://api.github.com/repos/mascarenhas/luaclr/issues/events{/number}","events_url":"https://api.github.com/repos/mascarenhas/luaclr/events","assignees_url":"https://api.github.com/repos/mascarenhas/luaclr/assignees{/user}","branches_url":"https://api.github.com/repos/mascarenhas/luaclr/branches{/branch}","tags_url":"https://api.github.com/repos/mascarenhas/luaclr/tags","blobs_url":"https://api.github.com/repos/mascarenhas/luaclr/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mascarenhas/luaclr/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mascarenhas/luaclr/git/refs{/sha}","trees_url":"https://api.github.com/repos/mascarenhas/luaclr/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mascarenhas/luaclr/statuses/{sha}","languages_url":"https://api.github.com/repos/mascarenhas/luaclr/languages","stargazers_url":"https://api.github.com/repos/mascarenhas/luaclr/stargazers","contributors_url":"https://api.github.com/repos/mascarenhas/luaclr/contributors","subscribers_url":"https://api.github.com/repos/mascarenhas/luaclr/subscribers","subscription_url":"https://api.github.com/repos/mascarenhas/luaclr/subscription","commits_url":"https://api.github.com/repos/mascarenhas/luaclr/commits{/sha}","git_commits_url":"https://api.github.com/repos/mascarenhas/luaclr/git/commits{/sha}","comments_url":"https://api.github.com/repos/mascarenhas/luaclr/comments{/number}","issue_comment_url":"https://api.github.com/repos/mascarenhas/luaclr/issues/comments/{number}","contents_url":"https://api.github.com/repos/mascarenhas/luaclr/contents/{+path}","compare_url":"https://api.github.com/repos/mascarenhas/luaclr/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mascarenhas/luaclr/merges","archive_url":"https://api.github.com/repos/mascarenhas/luaclr/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mascarenhas/luaclr/downloads","issues_url":"https://api.github.com/repos/mascarenhas/luaclr/issues{/number}","pulls_url":"https://api.github.com/repos/mascarenhas/luaclr/pulls{/number}","milestones_url":"https://api.github.com/repos/mascarenhas/luaclr/milestones{/number}","notifications_url":"https://api.github.com/repos/mascarenhas/luaclr/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mascarenhas/luaclr/labels{/name}"},{"id":1411,"name":"bricklet-core","full_name":"jasonm/bricklet-core","owner":{"login":"jasonm","id":1031,"avatar_url":"https://2.gravatar.com/avatar/8478f9ebe099ad853f022deeb2c1defe?d=https%3A%2F%2Fidenticons.github.com%2Fafdec7005cc9f14302cd0474fd0f3c96.png","gravatar_id":"8478f9ebe099ad853f022deeb2c1defe","url":"https://api.github.com/users/jasonm","html_url":"https://github.com/jasonm","followers_url":"https://api.github.com/users/jasonm/followers","following_url":"https://api.github.com/users/jasonm/following{/other_user}","gists_url":"https://api.github.com/users/jasonm/gists{/gist_id}","starred_url":"https://api.github.com/users/jasonm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jasonm/subscriptions","organizations_url":"https://api.github.com/users/jasonm/orgs","repos_url":"https://api.github.com/users/jasonm/repos","events_url":"https://api.github.com/users/jasonm/events{/privacy}","received_events_url":"https://api.github.com/users/jasonm/received_events","type":"User"},"private":false,"html_url":"https://github.com/jasonm/bricklet-core","description":"Core data server for BioBrick format","fork":false,"url":"https://api.github.com/repos/jasonm/bricklet-core","forks_url":"https://api.github.com/repos/jasonm/bricklet-core/forks","keys_url":"https://api.github.com/repos/jasonm/bricklet-core/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jasonm/bricklet-core/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jasonm/bricklet-core/teams","hooks_url":"https://api.github.com/repos/jasonm/bricklet-core/hooks","issue_events_url":"https://api.github.com/repos/jasonm/bricklet-core/issues/events{/number}","events_url":"https://api.github.com/repos/jasonm/bricklet-core/events","assignees_url":"https://api.github.com/repos/jasonm/bricklet-core/assignees{/user}","branches_url":"https://api.github.com/repos/jasonm/bricklet-core/branches{/branch}","tags_url":"https://api.github.com/repos/jasonm/bricklet-core/tags","blobs_url":"https://api.github.com/repos/jasonm/bricklet-core/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jasonm/bricklet-core/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jasonm/bricklet-core/git/refs{/sha}","trees_url":"https://api.github.com/repos/jasonm/bricklet-core/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jasonm/bricklet-core/statuses/{sha}","languages_url":"https://api.github.com/repos/jasonm/bricklet-core/languages","stargazers_url":"https://api.github.com/repos/jasonm/bricklet-core/stargazers","contributors_url":"https://api.github.com/repos/jasonm/bricklet-core/contributors","subscribers_url":"https://api.github.com/repos/jasonm/bricklet-core/subscribers","subscription_url":"https://api.github.com/repos/jasonm/bricklet-core/subscription","commits_url":"https://api.github.com/repos/jasonm/bricklet-core/commits{/sha}","git_commits_url":"https://api.github.com/repos/jasonm/bricklet-core/git/commits{/sha}","comments_url":"https://api.github.com/repos/jasonm/bricklet-core/comments{/number}","issue_comment_url":"https://api.github.com/repos/jasonm/bricklet-core/issues/comments/{number}","contents_url":"https://api.github.com/repos/jasonm/bricklet-core/contents/{+path}","compare_url":"https://api.github.com/repos/jasonm/bricklet-core/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jasonm/bricklet-core/merges","archive_url":"https://api.github.com/repos/jasonm/bricklet-core/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jasonm/bricklet-core/downloads","issues_url":"https://api.github.com/repos/jasonm/bricklet-core/issues{/number}","pulls_url":"https://api.github.com/repos/jasonm/bricklet-core/pulls{/number}","milestones_url":"https://api.github.com/repos/jasonm/bricklet-core/milestones{/number}","notifications_url":"https://api.github.com/repos/jasonm/bricklet-core/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jasonm/bricklet-core/labels{/name}"},{"id":1414,"name":"bookeater","full_name":"gensym/bookeater","owner":{"login":"gensym","id":899,"avatar_url":"https://0.gravatar.com/avatar/e63b603ed7ffcb6b5c65707abc30e303?d=https%3A%2F%2Fidenticons.github.com%2F01882513d5fa7c329e940dda99b12147.png","gravatar_id":"e63b603ed7ffcb6b5c65707abc30e303","url":"https://api.github.com/users/gensym","html_url":"https://github.com/gensym","followers_url":"https://api.github.com/users/gensym/followers","following_url":"https://api.github.com/users/gensym/following{/other_user}","gists_url":"https://api.github.com/users/gensym/gists{/gist_id}","starred_url":"https://api.github.com/users/gensym/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gensym/subscriptions","organizations_url":"https://api.github.com/users/gensym/orgs","repos_url":"https://api.github.com/users/gensym/repos","events_url":"https://api.github.com/users/gensym/events{/privacy}","received_events_url":"https://api.github.com/users/gensym/received_events","type":"User"},"private":false,"html_url":"https://github.com/gensym/bookeater","description":"BookEater.net","fork":false,"url":"https://api.github.com/repos/gensym/bookeater","forks_url":"https://api.github.com/repos/gensym/bookeater/forks","keys_url":"https://api.github.com/repos/gensym/bookeater/keys{/key_id}","collaborators_url":"https://api.github.com/repos/gensym/bookeater/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/gensym/bookeater/teams","hooks_url":"https://api.github.com/repos/gensym/bookeater/hooks","issue_events_url":"https://api.github.com/repos/gensym/bookeater/issues/events{/number}","events_url":"https://api.github.com/repos/gensym/bookeater/events","assignees_url":"https://api.github.com/repos/gensym/bookeater/assignees{/user}","branches_url":"https://api.github.com/repos/gensym/bookeater/branches{/branch}","tags_url":"https://api.github.com/repos/gensym/bookeater/tags","blobs_url":"https://api.github.com/repos/gensym/bookeater/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/gensym/bookeater/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/gensym/bookeater/git/refs{/sha}","trees_url":"https://api.github.com/repos/gensym/bookeater/git/trees{/sha}","statuses_url":"https://api.github.com/repos/gensym/bookeater/statuses/{sha}","languages_url":"https://api.github.com/repos/gensym/bookeater/languages","stargazers_url":"https://api.github.com/repos/gensym/bookeater/stargazers","contributors_url":"https://api.github.com/repos/gensym/bookeater/contributors","subscribers_url":"https://api.github.com/repos/gensym/bookeater/subscribers","subscription_url":"https://api.github.com/repos/gensym/bookeater/subscription","commits_url":"https://api.github.com/repos/gensym/bookeater/commits{/sha}","git_commits_url":"https://api.github.com/repos/gensym/bookeater/git/commits{/sha}","comments_url":"https://api.github.com/repos/gensym/bookeater/comments{/number}","issue_comment_url":"https://api.github.com/repos/gensym/bookeater/issues/comments/{number}","contents_url":"https://api.github.com/repos/gensym/bookeater/contents/{+path}","compare_url":"https://api.github.com/repos/gensym/bookeater/compare/{base}...{head}","merges_url":"https://api.github.com/repos/gensym/bookeater/merges","archive_url":"https://api.github.com/repos/gensym/bookeater/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/gensym/bookeater/downloads","issues_url":"https://api.github.com/repos/gensym/bookeater/issues{/number}","pulls_url":"https://api.github.com/repos/gensym/bookeater/pulls{/number}","milestones_url":"https://api.github.com/repos/gensym/bookeater/milestones{/number}","notifications_url":"https://api.github.com/repos/gensym/bookeater/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/gensym/bookeater/labels{/name}"},{"id":1425,"name":"facon","full_name":"chuyeow/facon","owner":{"login":"chuyeow","id":213,"avatar_url":"https://2.gravatar.com/avatar/00fd4ce27c06ba63e7ddca4c3d67e5ea?d=https%3A%2F%2Fidenticons.github.com%2F979d472a84804b9f647bc185a877a8b5.png","gravatar_id":"00fd4ce27c06ba63e7ddca4c3d67e5ea","url":"https://api.github.com/users/chuyeow","html_url":"https://github.com/chuyeow","followers_url":"https://api.github.com/users/chuyeow/followers","following_url":"https://api.github.com/users/chuyeow/following{/other_user}","gists_url":"https://api.github.com/users/chuyeow/gists{/gist_id}","starred_url":"https://api.github.com/users/chuyeow/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chuyeow/subscriptions","organizations_url":"https://api.github.com/users/chuyeow/orgs","repos_url":"https://api.github.com/users/chuyeow/repos","events_url":"https://api.github.com/users/chuyeow/events{/privacy}","received_events_url":"https://api.github.com/users/chuyeow/received_events","type":"User"},"private":false,"html_url":"https://github.com/chuyeow/facon","description":"Facon is a mocking library in the spirit of the Bacon spec library. Small, compact, and works with Bacon.","fork":false,"url":"https://api.github.com/repos/chuyeow/facon","forks_url":"https://api.github.com/repos/chuyeow/facon/forks","keys_url":"https://api.github.com/repos/chuyeow/facon/keys{/key_id}","collaborators_url":"https://api.github.com/repos/chuyeow/facon/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/chuyeow/facon/teams","hooks_url":"https://api.github.com/repos/chuyeow/facon/hooks","issue_events_url":"https://api.github.com/repos/chuyeow/facon/issues/events{/number}","events_url":"https://api.github.com/repos/chuyeow/facon/events","assignees_url":"https://api.github.com/repos/chuyeow/facon/assignees{/user}","branches_url":"https://api.github.com/repos/chuyeow/facon/branches{/branch}","tags_url":"https://api.github.com/repos/chuyeow/facon/tags","blobs_url":"https://api.github.com/repos/chuyeow/facon/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/chuyeow/facon/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/chuyeow/facon/git/refs{/sha}","trees_url":"https://api.github.com/repos/chuyeow/facon/git/trees{/sha}","statuses_url":"https://api.github.com/repos/chuyeow/facon/statuses/{sha}","languages_url":"https://api.github.com/repos/chuyeow/facon/languages","stargazers_url":"https://api.github.com/repos/chuyeow/facon/stargazers","contributors_url":"https://api.github.com/repos/chuyeow/facon/contributors","subscribers_url":"https://api.github.com/repos/chuyeow/facon/subscribers","subscription_url":"https://api.github.com/repos/chuyeow/facon/subscription","commits_url":"https://api.github.com/repos/chuyeow/facon/commits{/sha}","git_commits_url":"https://api.github.com/repos/chuyeow/facon/git/commits{/sha}","comments_url":"https://api.github.com/repos/chuyeow/facon/comments{/number}","issue_comment_url":"https://api.github.com/repos/chuyeow/facon/issues/comments/{number}","contents_url":"https://api.github.com/repos/chuyeow/facon/contents/{+path}","compare_url":"https://api.github.com/repos/chuyeow/facon/compare/{base}...{head}","merges_url":"https://api.github.com/repos/chuyeow/facon/merges","archive_url":"https://api.github.com/repos/chuyeow/facon/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/chuyeow/facon/downloads","issues_url":"https://api.github.com/repos/chuyeow/facon/issues{/number}","pulls_url":"https://api.github.com/repos/chuyeow/facon/pulls{/number}","milestones_url":"https://api.github.com/repos/chuyeow/facon/milestones{/number}","notifications_url":"https://api.github.com/repos/chuyeow/facon/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/chuyeow/facon/labels{/name}"},{"id":1429,"name":"stat","full_name":"vanpelt/stat","owner":{"login":"vanpelt","id":17,"avatar_url":"https://1.gravatar.com/avatar/1da36d4c1f34454de6c07855098675f6?d=https%3A%2F%2Fidenticons.github.com%2F70efdf2ec9b086079795c442636b55fb.png","gravatar_id":"1da36d4c1f34454de6c07855098675f6","url":"https://api.github.com/users/vanpelt","html_url":"https://github.com/vanpelt","followers_url":"https://api.github.com/users/vanpelt/followers","following_url":"https://api.github.com/users/vanpelt/following{/other_user}","gists_url":"https://api.github.com/users/vanpelt/gists{/gist_id}","starred_url":"https://api.github.com/users/vanpelt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vanpelt/subscriptions","organizations_url":"https://api.github.com/users/vanpelt/orgs","repos_url":"https://api.github.com/users/vanpelt/repos","events_url":"https://api.github.com/users/vanpelt/events{/privacy}","received_events_url":"https://api.github.com/users/vanpelt/received_events","type":"User"},"private":false,"html_url":"https://github.com/vanpelt/stat","description":"A Rakefile that makes static website creation and deploying stupid simple","fork":false,"url":"https://api.github.com/repos/vanpelt/stat","forks_url":"https://api.github.com/repos/vanpelt/stat/forks","keys_url":"https://api.github.com/repos/vanpelt/stat/keys{/key_id}","collaborators_url":"https://api.github.com/repos/vanpelt/stat/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/vanpelt/stat/teams","hooks_url":"https://api.github.com/repos/vanpelt/stat/hooks","issue_events_url":"https://api.github.com/repos/vanpelt/stat/issues/events{/number}","events_url":"https://api.github.com/repos/vanpelt/stat/events","assignees_url":"https://api.github.com/repos/vanpelt/stat/assignees{/user}","branches_url":"https://api.github.com/repos/vanpelt/stat/branches{/branch}","tags_url":"https://api.github.com/repos/vanpelt/stat/tags","blobs_url":"https://api.github.com/repos/vanpelt/stat/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/vanpelt/stat/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/vanpelt/stat/git/refs{/sha}","trees_url":"https://api.github.com/repos/vanpelt/stat/git/trees{/sha}","statuses_url":"https://api.github.com/repos/vanpelt/stat/statuses/{sha}","languages_url":"https://api.github.com/repos/vanpelt/stat/languages","stargazers_url":"https://api.github.com/repos/vanpelt/stat/stargazers","contributors_url":"https://api.github.com/repos/vanpelt/stat/contributors","subscribers_url":"https://api.github.com/repos/vanpelt/stat/subscribers","subscription_url":"https://api.github.com/repos/vanpelt/stat/subscription","commits_url":"https://api.github.com/repos/vanpelt/stat/commits{/sha}","git_commits_url":"https://api.github.com/repos/vanpelt/stat/git/commits{/sha}","comments_url":"https://api.github.com/repos/vanpelt/stat/comments{/number}","issue_comment_url":"https://api.github.com/repos/vanpelt/stat/issues/comments/{number}","contents_url":"https://api.github.com/repos/vanpelt/stat/contents/{+path}","compare_url":"https://api.github.com/repos/vanpelt/stat/compare/{base}...{head}","merges_url":"https://api.github.com/repos/vanpelt/stat/merges","archive_url":"https://api.github.com/repos/vanpelt/stat/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/vanpelt/stat/downloads","issues_url":"https://api.github.com/repos/vanpelt/stat/issues{/number}","pulls_url":"https://api.github.com/repos/vanpelt/stat/pulls{/number}","milestones_url":"https://api.github.com/repos/vanpelt/stat/milestones{/number}","notifications_url":"https://api.github.com/repos/vanpelt/stat/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/vanpelt/stat/labels{/name}"},{"id":1435,"name":"rubynomic","full_name":"Norgg/rubynomic","owner":{"login":"Norgg","id":913,"avatar_url":"https://0.gravatar.com/avatar/f041ccf24524caf8d010097770b5eeae?d=https%3A%2F%2Fidenticons.github.com%2F8b5040a8a5baf3e0e67386c2e3a9b903.png","gravatar_id":"f041ccf24524caf8d010097770b5eeae","url":"https://api.github.com/users/Norgg","html_url":"https://github.com/Norgg","followers_url":"https://api.github.com/users/Norgg/followers","following_url":"https://api.github.com/users/Norgg/following{/other_user}","gists_url":"https://api.github.com/users/Norgg/gists{/gist_id}","starred_url":"https://api.github.com/users/Norgg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Norgg/subscriptions","organizations_url":"https://api.github.com/users/Norgg/orgs","repos_url":"https://api.github.com/users/Norgg/repos","events_url":"https://api.github.com/users/Norgg/events{/privacy}","received_events_url":"https://api.github.com/users/Norgg/received_events","type":"User"},"private":false,"html_url":"https://github.com/Norgg/rubynomic","description":"Initial source code for ruby nomic games","fork":false,"url":"https://api.github.com/repos/Norgg/rubynomic","forks_url":"https://api.github.com/repos/Norgg/rubynomic/forks","keys_url":"https://api.github.com/repos/Norgg/rubynomic/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Norgg/rubynomic/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Norgg/rubynomic/teams","hooks_url":"https://api.github.com/repos/Norgg/rubynomic/hooks","issue_events_url":"https://api.github.com/repos/Norgg/rubynomic/issues/events{/number}","events_url":"https://api.github.com/repos/Norgg/rubynomic/events","assignees_url":"https://api.github.com/repos/Norgg/rubynomic/assignees{/user}","branches_url":"https://api.github.com/repos/Norgg/rubynomic/branches{/branch}","tags_url":"https://api.github.com/repos/Norgg/rubynomic/tags","blobs_url":"https://api.github.com/repos/Norgg/rubynomic/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Norgg/rubynomic/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Norgg/rubynomic/git/refs{/sha}","trees_url":"https://api.github.com/repos/Norgg/rubynomic/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Norgg/rubynomic/statuses/{sha}","languages_url":"https://api.github.com/repos/Norgg/rubynomic/languages","stargazers_url":"https://api.github.com/repos/Norgg/rubynomic/stargazers","contributors_url":"https://api.github.com/repos/Norgg/rubynomic/contributors","subscribers_url":"https://api.github.com/repos/Norgg/rubynomic/subscribers","subscription_url":"https://api.github.com/repos/Norgg/rubynomic/subscription","commits_url":"https://api.github.com/repos/Norgg/rubynomic/commits{/sha}","git_commits_url":"https://api.github.com/repos/Norgg/rubynomic/git/commits{/sha}","comments_url":"https://api.github.com/repos/Norgg/rubynomic/comments{/number}","issue_comment_url":"https://api.github.com/repos/Norgg/rubynomic/issues/comments/{number}","contents_url":"https://api.github.com/repos/Norgg/rubynomic/contents/{+path}","compare_url":"https://api.github.com/repos/Norgg/rubynomic/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Norgg/rubynomic/merges","archive_url":"https://api.github.com/repos/Norgg/rubynomic/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Norgg/rubynomic/downloads","issues_url":"https://api.github.com/repos/Norgg/rubynomic/issues{/number}","pulls_url":"https://api.github.com/repos/Norgg/rubynomic/pulls{/number}","milestones_url":"https://api.github.com/repos/Norgg/rubynomic/milestones{/number}","notifications_url":"https://api.github.com/repos/Norgg/rubynomic/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Norgg/rubynomic/labels{/name}"},{"id":1436,"name":"depth-charge","full_name":"bscofield/depth-charge","owner":{"login":"bscofield","id":433,"avatar_url":"https://1.gravatar.com/avatar/01604be00b0c8371437cbc2b96265b9b?d=https%3A%2F%2Fidenticons.github.com%2F019d385eb67632a7e958e23f24bd07d7.png","gravatar_id":"01604be00b0c8371437cbc2b96265b9b","url":"https://api.github.com/users/bscofield","html_url":"https://github.com/bscofield","followers_url":"https://api.github.com/users/bscofield/followers","following_url":"https://api.github.com/users/bscofield/following{/other_user}","gists_url":"https://api.github.com/users/bscofield/gists{/gist_id}","starred_url":"https://api.github.com/users/bscofield/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bscofield/subscriptions","organizations_url":"https://api.github.com/users/bscofield/orgs","repos_url":"https://api.github.com/users/bscofield/repos","events_url":"https://api.github.com/users/bscofield/events{/privacy}","received_events_url":"https://api.github.com/users/bscofield/received_events","type":"User"},"private":false,"html_url":"https://github.com/bscofield/depth-charge","description":"A quick and dirty dependency finder for your Ruby projects","fork":false,"url":"https://api.github.com/repos/bscofield/depth-charge","forks_url":"https://api.github.com/repos/bscofield/depth-charge/forks","keys_url":"https://api.github.com/repos/bscofield/depth-charge/keys{/key_id}","collaborators_url":"https://api.github.com/repos/bscofield/depth-charge/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/bscofield/depth-charge/teams","hooks_url":"https://api.github.com/repos/bscofield/depth-charge/hooks","issue_events_url":"https://api.github.com/repos/bscofield/depth-charge/issues/events{/number}","events_url":"https://api.github.com/repos/bscofield/depth-charge/events","assignees_url":"https://api.github.com/repos/bscofield/depth-charge/assignees{/user}","branches_url":"https://api.github.com/repos/bscofield/depth-charge/branches{/branch}","tags_url":"https://api.github.com/repos/bscofield/depth-charge/tags","blobs_url":"https://api.github.com/repos/bscofield/depth-charge/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/bscofield/depth-charge/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/bscofield/depth-charge/git/refs{/sha}","trees_url":"https://api.github.com/repos/bscofield/depth-charge/git/trees{/sha}","statuses_url":"https://api.github.com/repos/bscofield/depth-charge/statuses/{sha}","languages_url":"https://api.github.com/repos/bscofield/depth-charge/languages","stargazers_url":"https://api.github.com/repos/bscofield/depth-charge/stargazers","contributors_url":"https://api.github.com/repos/bscofield/depth-charge/contributors","subscribers_url":"https://api.github.com/repos/bscofield/depth-charge/subscribers","subscription_url":"https://api.github.com/repos/bscofield/depth-charge/subscription","commits_url":"https://api.github.com/repos/bscofield/depth-charge/commits{/sha}","git_commits_url":"https://api.github.com/repos/bscofield/depth-charge/git/commits{/sha}","comments_url":"https://api.github.com/repos/bscofield/depth-charge/comments{/number}","issue_comment_url":"https://api.github.com/repos/bscofield/depth-charge/issues/comments/{number}","contents_url":"https://api.github.com/repos/bscofield/depth-charge/contents/{+path}","compare_url":"https://api.github.com/repos/bscofield/depth-charge/compare/{base}...{head}","merges_url":"https://api.github.com/repos/bscofield/depth-charge/merges","archive_url":"https://api.github.com/repos/bscofield/depth-charge/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/bscofield/depth-charge/downloads","issues_url":"https://api.github.com/repos/bscofield/depth-charge/issues{/number}","pulls_url":"https://api.github.com/repos/bscofield/depth-charge/pulls{/number}","milestones_url":"https://api.github.com/repos/bscofield/depth-charge/milestones{/number}","notifications_url":"https://api.github.com/repos/bscofield/depth-charge/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/bscofield/depth-charge/labels{/name}"},{"id":1440,"name":"portfolio","full_name":"myabc/portfolio","owner":{"login":"myabc","id":755,"avatar_url":"https://0.gravatar.com/avatar/9b1a71682de14fc6fc2b944a9c4814a0?d=https%3A%2F%2Fidenticons.github.com%2Fccb0989662211f61edae2e26d58ea92f.png","gravatar_id":"9b1a71682de14fc6fc2b944a9c4814a0","url":"https://api.github.com/users/myabc","html_url":"https://github.com/myabc","followers_url":"https://api.github.com/users/myabc/followers","following_url":"https://api.github.com/users/myabc/following{/other_user}","gists_url":"https://api.github.com/users/myabc/gists{/gist_id}","starred_url":"https://api.github.com/users/myabc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/myabc/subscriptions","organizations_url":"https://api.github.com/users/myabc/orgs","repos_url":"https://api.github.com/users/myabc/repos","events_url":"https://api.github.com/users/myabc/events{/privacy}","received_events_url":"https://api.github.com/users/myabc/received_events","type":"User"},"private":false,"html_url":"https://github.com/myabc/portfolio","description":"Alex Coles Portfolio","fork":false,"url":"https://api.github.com/repos/myabc/portfolio","forks_url":"https://api.github.com/repos/myabc/portfolio/forks","keys_url":"https://api.github.com/repos/myabc/portfolio/keys{/key_id}","collaborators_url":"https://api.github.com/repos/myabc/portfolio/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/myabc/portfolio/teams","hooks_url":"https://api.github.com/repos/myabc/portfolio/hooks","issue_events_url":"https://api.github.com/repos/myabc/portfolio/issues/events{/number}","events_url":"https://api.github.com/repos/myabc/portfolio/events","assignees_url":"https://api.github.com/repos/myabc/portfolio/assignees{/user}","branches_url":"https://api.github.com/repos/myabc/portfolio/branches{/branch}","tags_url":"https://api.github.com/repos/myabc/portfolio/tags","blobs_url":"https://api.github.com/repos/myabc/portfolio/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/myabc/portfolio/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/myabc/portfolio/git/refs{/sha}","trees_url":"https://api.github.com/repos/myabc/portfolio/git/trees{/sha}","statuses_url":"https://api.github.com/repos/myabc/portfolio/statuses/{sha}","languages_url":"https://api.github.com/repos/myabc/portfolio/languages","stargazers_url":"https://api.github.com/repos/myabc/portfolio/stargazers","contributors_url":"https://api.github.com/repos/myabc/portfolio/contributors","subscribers_url":"https://api.github.com/repos/myabc/portfolio/subscribers","subscription_url":"https://api.github.com/repos/myabc/portfolio/subscription","commits_url":"https://api.github.com/repos/myabc/portfolio/commits{/sha}","git_commits_url":"https://api.github.com/repos/myabc/portfolio/git/commits{/sha}","comments_url":"https://api.github.com/repos/myabc/portfolio/comments{/number}","issue_comment_url":"https://api.github.com/repos/myabc/portfolio/issues/comments/{number}","contents_url":"https://api.github.com/repos/myabc/portfolio/contents/{+path}","compare_url":"https://api.github.com/repos/myabc/portfolio/compare/{base}...{head}","merges_url":"https://api.github.com/repos/myabc/portfolio/merges","archive_url":"https://api.github.com/repos/myabc/portfolio/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/myabc/portfolio/downloads","issues_url":"https://api.github.com/repos/myabc/portfolio/issues{/number}","pulls_url":"https://api.github.com/repos/myabc/portfolio/pulls{/number}","milestones_url":"https://api.github.com/repos/myabc/portfolio/milestones{/number}","notifications_url":"https://api.github.com/repos/myabc/portfolio/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/myabc/portfolio/labels{/name}"},{"id":1441,"name":"clickatell","full_name":"lukeredpath/clickatell","owner":{"login":"lukeredpath","id":613,"avatar_url":"https://0.gravatar.com/avatar/bdd4d23d1a822b2d68b53e7c51d69a39?d=https%3A%2F%2Fidenticons.github.com%2Ff29c21d4897f78948b91f03172341b7b.png","gravatar_id":"bdd4d23d1a822b2d68b53e7c51d69a39","url":"https://api.github.com/users/lukeredpath","html_url":"https://github.com/lukeredpath","followers_url":"https://api.github.com/users/lukeredpath/followers","following_url":"https://api.github.com/users/lukeredpath/following{/other_user}","gists_url":"https://api.github.com/users/lukeredpath/gists{/gist_id}","starred_url":"https://api.github.com/users/lukeredpath/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lukeredpath/subscriptions","organizations_url":"https://api.github.com/users/lukeredpath/orgs","repos_url":"https://api.github.com/users/lukeredpath/repos","events_url":"https://api.github.com/users/lukeredpath/events{/privacy}","received_events_url":"https://api.github.com/users/lukeredpath/received_events","type":"User"},"private":false,"html_url":"https://github.com/lukeredpath/clickatell","description":"NO LONGER SUPPORTED - Ruby interface to the Clickatell SMS Gateway API","fork":false,"url":"https://api.github.com/repos/lukeredpath/clickatell","forks_url":"https://api.github.com/repos/lukeredpath/clickatell/forks","keys_url":"https://api.github.com/repos/lukeredpath/clickatell/keys{/key_id}","collaborators_url":"https://api.github.com/repos/lukeredpath/clickatell/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/lukeredpath/clickatell/teams","hooks_url":"https://api.github.com/repos/lukeredpath/clickatell/hooks","issue_events_url":"https://api.github.com/repos/lukeredpath/clickatell/issues/events{/number}","events_url":"https://api.github.com/repos/lukeredpath/clickatell/events","assignees_url":"https://api.github.com/repos/lukeredpath/clickatell/assignees{/user}","branches_url":"https://api.github.com/repos/lukeredpath/clickatell/branches{/branch}","tags_url":"https://api.github.com/repos/lukeredpath/clickatell/tags","blobs_url":"https://api.github.com/repos/lukeredpath/clickatell/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/lukeredpath/clickatell/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/lukeredpath/clickatell/git/refs{/sha}","trees_url":"https://api.github.com/repos/lukeredpath/clickatell/git/trees{/sha}","statuses_url":"https://api.github.com/repos/lukeredpath/clickatell/statuses/{sha}","languages_url":"https://api.github.com/repos/lukeredpath/clickatell/languages","stargazers_url":"https://api.github.com/repos/lukeredpath/clickatell/stargazers","contributors_url":"https://api.github.com/repos/lukeredpath/clickatell/contributors","subscribers_url":"https://api.github.com/repos/lukeredpath/clickatell/subscribers","subscription_url":"https://api.github.com/repos/lukeredpath/clickatell/subscription","commits_url":"https://api.github.com/repos/lukeredpath/clickatell/commits{/sha}","git_commits_url":"https://api.github.com/repos/lukeredpath/clickatell/git/commits{/sha}","comments_url":"https://api.github.com/repos/lukeredpath/clickatell/comments{/number}","issue_comment_url":"https://api.github.com/repos/lukeredpath/clickatell/issues/comments/{number}","contents_url":"https://api.github.com/repos/lukeredpath/clickatell/contents/{+path}","compare_url":"https://api.github.com/repos/lukeredpath/clickatell/compare/{base}...{head}","merges_url":"https://api.github.com/repos/lukeredpath/clickatell/merges","archive_url":"https://api.github.com/repos/lukeredpath/clickatell/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/lukeredpath/clickatell/downloads","issues_url":"https://api.github.com/repos/lukeredpath/clickatell/issues{/number}","pulls_url":"https://api.github.com/repos/lukeredpath/clickatell/pulls{/number}","milestones_url":"https://api.github.com/repos/lukeredpath/clickatell/milestones{/number}","notifications_url":"https://api.github.com/repos/lukeredpath/clickatell/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/lukeredpath/clickatell/labels{/name}"},{"id":1444,"name":"do_notation","full_name":"aanand/do_notation","owner":{"login":"aanand","id":1062,"avatar_url":"https://2.gravatar.com/avatar/73022df4be6fcced9792f50497b4f119?d=https%3A%2F%2Fidenticons.github.com%2Fcd89fef7ffdd490db800357f47722b20.png","gravatar_id":"73022df4be6fcced9792f50497b4f119","url":"https://api.github.com/users/aanand","html_url":"https://github.com/aanand","followers_url":"https://api.github.com/users/aanand/followers","following_url":"https://api.github.com/users/aanand/following{/other_user}","gists_url":"https://api.github.com/users/aanand/gists{/gist_id}","starred_url":"https://api.github.com/users/aanand/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aanand/subscriptions","organizations_url":"https://api.github.com/users/aanand/orgs","repos_url":"https://api.github.com/users/aanand/repos","events_url":"https://api.github.com/users/aanand/events{/privacy}","received_events_url":"https://api.github.com/users/aanand/received_events","type":"User"},"private":false,"html_url":"https://github.com/aanand/do_notation","description":"Haskell-style monad do-notation for Ruby","fork":false,"url":"https://api.github.com/repos/aanand/do_notation","forks_url":"https://api.github.com/repos/aanand/do_notation/forks","keys_url":"https://api.github.com/repos/aanand/do_notation/keys{/key_id}","collaborators_url":"https://api.github.com/repos/aanand/do_notation/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/aanand/do_notation/teams","hooks_url":"https://api.github.com/repos/aanand/do_notation/hooks","issue_events_url":"https://api.github.com/repos/aanand/do_notation/issues/events{/number}","events_url":"https://api.github.com/repos/aanand/do_notation/events","assignees_url":"https://api.github.com/repos/aanand/do_notation/assignees{/user}","branches_url":"https://api.github.com/repos/aanand/do_notation/branches{/branch}","tags_url":"https://api.github.com/repos/aanand/do_notation/tags","blobs_url":"https://api.github.com/repos/aanand/do_notation/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/aanand/do_notation/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/aanand/do_notation/git/refs{/sha}","trees_url":"https://api.github.com/repos/aanand/do_notation/git/trees{/sha}","statuses_url":"https://api.github.com/repos/aanand/do_notation/statuses/{sha}","languages_url":"https://api.github.com/repos/aanand/do_notation/languages","stargazers_url":"https://api.github.com/repos/aanand/do_notation/stargazers","contributors_url":"https://api.github.com/repos/aanand/do_notation/contributors","subscribers_url":"https://api.github.com/repos/aanand/do_notation/subscribers","subscription_url":"https://api.github.com/repos/aanand/do_notation/subscription","commits_url":"https://api.github.com/repos/aanand/do_notation/commits{/sha}","git_commits_url":"https://api.github.com/repos/aanand/do_notation/git/commits{/sha}","comments_url":"https://api.github.com/repos/aanand/do_notation/comments{/number}","issue_comment_url":"https://api.github.com/repos/aanand/do_notation/issues/comments/{number}","contents_url":"https://api.github.com/repos/aanand/do_notation/contents/{+path}","compare_url":"https://api.github.com/repos/aanand/do_notation/compare/{base}...{head}","merges_url":"https://api.github.com/repos/aanand/do_notation/merges","archive_url":"https://api.github.com/repos/aanand/do_notation/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/aanand/do_notation/downloads","issues_url":"https://api.github.com/repos/aanand/do_notation/issues{/number}","pulls_url":"https://api.github.com/repos/aanand/do_notation/pulls{/number}","milestones_url":"https://api.github.com/repos/aanand/do_notation/milestones{/number}","notifications_url":"https://api.github.com/repos/aanand/do_notation/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/aanand/do_notation/labels{/name}"},{"id":1453,"name":"pictrails","full_name":"shingara/pictrails","owner":{"login":"shingara","id":1088,"avatar_url":"https://0.gravatar.com/avatar/2fd0206c71a1b22a9cc6293f38537461?d=https%3A%2F%2Fidenticons.github.com%2Fb1563a78ec59337587f6ab6397699afc.png","gravatar_id":"2fd0206c71a1b22a9cc6293f38537461","url":"https://api.github.com/users/shingara","html_url":"https://github.com/shingara","followers_url":"https://api.github.com/users/shingara/followers","following_url":"https://api.github.com/users/shingara/following{/other_user}","gists_url":"https://api.github.com/users/shingara/gists{/gist_id}","starred_url":"https://api.github.com/users/shingara/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shingara/subscriptions","organizations_url":"https://api.github.com/users/shingara/orgs","repos_url":"https://api.github.com/users/shingara/repos","events_url":"https://api.github.com/users/shingara/events{/privacy}","received_events_url":"https://api.github.com/users/shingara/received_events","type":"User"},"private":false,"html_url":"https://github.com/shingara/pictrails","description":"A Web Photo Gallery, written with Rails 2.0. Pictrails can manage several photo galleries.","fork":false,"url":"https://api.github.com/repos/shingara/pictrails","forks_url":"https://api.github.com/repos/shingara/pictrails/forks","keys_url":"https://api.github.com/repos/shingara/pictrails/keys{/key_id}","collaborators_url":"https://api.github.com/repos/shingara/pictrails/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/shingara/pictrails/teams","hooks_url":"https://api.github.com/repos/shingara/pictrails/hooks","issue_events_url":"https://api.github.com/repos/shingara/pictrails/issues/events{/number}","events_url":"https://api.github.com/repos/shingara/pictrails/events","assignees_url":"https://api.github.com/repos/shingara/pictrails/assignees{/user}","branches_url":"https://api.github.com/repos/shingara/pictrails/branches{/branch}","tags_url":"https://api.github.com/repos/shingara/pictrails/tags","blobs_url":"https://api.github.com/repos/shingara/pictrails/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/shingara/pictrails/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/shingara/pictrails/git/refs{/sha}","trees_url":"https://api.github.com/repos/shingara/pictrails/git/trees{/sha}","statuses_url":"https://api.github.com/repos/shingara/pictrails/statuses/{sha}","languages_url":"https://api.github.com/repos/shingara/pictrails/languages","stargazers_url":"https://api.github.com/repos/shingara/pictrails/stargazers","contributors_url":"https://api.github.com/repos/shingara/pictrails/contributors","subscribers_url":"https://api.github.com/repos/shingara/pictrails/subscribers","subscription_url":"https://api.github.com/repos/shingara/pictrails/subscription","commits_url":"https://api.github.com/repos/shingara/pictrails/commits{/sha}","git_commits_url":"https://api.github.com/repos/shingara/pictrails/git/commits{/sha}","comments_url":"https://api.github.com/repos/shingara/pictrails/comments{/number}","issue_comment_url":"https://api.github.com/repos/shingara/pictrails/issues/comments/{number}","contents_url":"https://api.github.com/repos/shingara/pictrails/contents/{+path}","compare_url":"https://api.github.com/repos/shingara/pictrails/compare/{base}...{head}","merges_url":"https://api.github.com/repos/shingara/pictrails/merges","archive_url":"https://api.github.com/repos/shingara/pictrails/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/shingara/pictrails/downloads","issues_url":"https://api.github.com/repos/shingara/pictrails/issues{/number}","pulls_url":"https://api.github.com/repos/shingara/pictrails/pulls{/number}","milestones_url":"https://api.github.com/repos/shingara/pictrails/milestones{/number}","notifications_url":"https://api.github.com/repos/shingara/pictrails/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/shingara/pictrails/labels{/name}"},{"id":1462,"name":"annotate_models","full_name":"ctran/annotate_models","owner":{"login":"ctran","id":491,"avatar_url":"https://1.gravatar.com/avatar/accad816054fc1b2fa7dae2a2fce5266?d=https%3A%2F%2Fidenticons.github.com%2F559cb990c9dffd8675f6bc2186971dc2.png","gravatar_id":"accad816054fc1b2fa7dae2a2fce5266","url":"https://api.github.com/users/ctran","html_url":"https://github.com/ctran","followers_url":"https://api.github.com/users/ctran/followers","following_url":"https://api.github.com/users/ctran/following{/other_user}","gists_url":"https://api.github.com/users/ctran/gists{/gist_id}","starred_url":"https://api.github.com/users/ctran/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ctran/subscriptions","organizations_url":"https://api.github.com/users/ctran/orgs","repos_url":"https://api.github.com/users/ctran/repos","events_url":"https://api.github.com/users/ctran/events{/privacy}","received_events_url":"https://api.github.com/users/ctran/received_events","type":"User"},"private":false,"html_url":"https://github.com/ctran/annotate_models","description":"Annotate ActiveRecord models as a gem","fork":false,"url":"https://api.github.com/repos/ctran/annotate_models","forks_url":"https://api.github.com/repos/ctran/annotate_models/forks","keys_url":"https://api.github.com/repos/ctran/annotate_models/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ctran/annotate_models/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ctran/annotate_models/teams","hooks_url":"https://api.github.com/repos/ctran/annotate_models/hooks","issue_events_url":"https://api.github.com/repos/ctran/annotate_models/issues/events{/number}","events_url":"https://api.github.com/repos/ctran/annotate_models/events","assignees_url":"https://api.github.com/repos/ctran/annotate_models/assignees{/user}","branches_url":"https://api.github.com/repos/ctran/annotate_models/branches{/branch}","tags_url":"https://api.github.com/repos/ctran/annotate_models/tags","blobs_url":"https://api.github.com/repos/ctran/annotate_models/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ctran/annotate_models/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ctran/annotate_models/git/refs{/sha}","trees_url":"https://api.github.com/repos/ctran/annotate_models/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ctran/annotate_models/statuses/{sha}","languages_url":"https://api.github.com/repos/ctran/annotate_models/languages","stargazers_url":"https://api.github.com/repos/ctran/annotate_models/stargazers","contributors_url":"https://api.github.com/repos/ctran/annotate_models/contributors","subscribers_url":"https://api.github.com/repos/ctran/annotate_models/subscribers","subscription_url":"https://api.github.com/repos/ctran/annotate_models/subscription","commits_url":"https://api.github.com/repos/ctran/annotate_models/commits{/sha}","git_commits_url":"https://api.github.com/repos/ctran/annotate_models/git/commits{/sha}","comments_url":"https://api.github.com/repos/ctran/annotate_models/comments{/number}","issue_comment_url":"https://api.github.com/repos/ctran/annotate_models/issues/comments/{number}","contents_url":"https://api.github.com/repos/ctran/annotate_models/contents/{+path}","compare_url":"https://api.github.com/repos/ctran/annotate_models/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ctran/annotate_models/merges","archive_url":"https://api.github.com/repos/ctran/annotate_models/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ctran/annotate_models/downloads","issues_url":"https://api.github.com/repos/ctran/annotate_models/issues{/number}","pulls_url":"https://api.github.com/repos/ctran/annotate_models/pulls{/number}","milestones_url":"https://api.github.com/repos/ctran/annotate_models/milestones{/number}","notifications_url":"https://api.github.com/repos/ctran/annotate_models/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ctran/annotate_models/labels{/name}"},{"id":1469,"name":"blueprint_layout","full_name":"alce/blueprint_layout","owner":{"login":"alce","id":1133,"avatar_url":"https://1.gravatar.com/avatar/b404a438e7106c61e31fa6ebcc089a5f?d=https%3A%2F%2Fidenticons.github.com%2Ffd06b8ea02fe5b1c2496fe1700e9d16c.png","gravatar_id":"b404a438e7106c61e31fa6ebcc089a5f","url":"https://api.github.com/users/alce","html_url":"https://github.com/alce","followers_url":"https://api.github.com/users/alce/followers","following_url":"https://api.github.com/users/alce/following{/other_user}","gists_url":"https://api.github.com/users/alce/gists{/gist_id}","starred_url":"https://api.github.com/users/alce/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alce/subscriptions","organizations_url":"https://api.github.com/users/alce/orgs","repos_url":"https://api.github.com/users/alce/repos","events_url":"https://api.github.com/users/alce/events{/privacy}","received_events_url":"https://api.github.com/users/alce/received_events","type":"User"},"private":false,"html_url":"https://github.com/alce/blueprint_layout","description":"Create ","fork":false,"url":"https://api.github.com/repos/alce/blueprint_layout","forks_url":"https://api.github.com/repos/alce/blueprint_layout/forks","keys_url":"https://api.github.com/repos/alce/blueprint_layout/keys{/key_id}","collaborators_url":"https://api.github.com/repos/alce/blueprint_layout/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/alce/blueprint_layout/teams","hooks_url":"https://api.github.com/repos/alce/blueprint_layout/hooks","issue_events_url":"https://api.github.com/repos/alce/blueprint_layout/issues/events{/number}","events_url":"https://api.github.com/repos/alce/blueprint_layout/events","assignees_url":"https://api.github.com/repos/alce/blueprint_layout/assignees{/user}","branches_url":"https://api.github.com/repos/alce/blueprint_layout/branches{/branch}","tags_url":"https://api.github.com/repos/alce/blueprint_layout/tags","blobs_url":"https://api.github.com/repos/alce/blueprint_layout/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/alce/blueprint_layout/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/alce/blueprint_layout/git/refs{/sha}","trees_url":"https://api.github.com/repos/alce/blueprint_layout/git/trees{/sha}","statuses_url":"https://api.github.com/repos/alce/blueprint_layout/statuses/{sha}","languages_url":"https://api.github.com/repos/alce/blueprint_layout/languages","stargazers_url":"https://api.github.com/repos/alce/blueprint_layout/stargazers","contributors_url":"https://api.github.com/repos/alce/blueprint_layout/contributors","subscribers_url":"https://api.github.com/repos/alce/blueprint_layout/subscribers","subscription_url":"https://api.github.com/repos/alce/blueprint_layout/subscription","commits_url":"https://api.github.com/repos/alce/blueprint_layout/commits{/sha}","git_commits_url":"https://api.github.com/repos/alce/blueprint_layout/git/commits{/sha}","comments_url":"https://api.github.com/repos/alce/blueprint_layout/comments{/number}","issue_comment_url":"https://api.github.com/repos/alce/blueprint_layout/issues/comments/{number}","contents_url":"https://api.github.com/repos/alce/blueprint_layout/contents/{+path}","compare_url":"https://api.github.com/repos/alce/blueprint_layout/compare/{base}...{head}","merges_url":"https://api.github.com/repos/alce/blueprint_layout/merges","archive_url":"https://api.github.com/repos/alce/blueprint_layout/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/alce/blueprint_layout/downloads","issues_url":"https://api.github.com/repos/alce/blueprint_layout/issues{/number}","pulls_url":"https://api.github.com/repos/alce/blueprint_layout/pulls{/number}","milestones_url":"https://api.github.com/repos/alce/blueprint_layout/milestones{/number}","notifications_url":"https://api.github.com/repos/alce/blueprint_layout/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/alce/blueprint_layout/labels{/name}"},{"id":1479,"name":"wp_theme_victoria","full_name":"enhiro/wp_theme_victoria","owner":{"login":"enhiro","id":1098,"avatar_url":"https://1.gravatar.com/avatar/1e62788b9ca14d8456b17deaf97f048f?d=https%3A%2F%2Fidenticons.github.com%2Fa5e0ff62be0b08456fc7f1e88812af3d.png","gravatar_id":"1e62788b9ca14d8456b17deaf97f048f","url":"https://api.github.com/users/enhiro","html_url":"https://github.com/enhiro","followers_url":"https://api.github.com/users/enhiro/followers","following_url":"https://api.github.com/users/enhiro/following{/other_user}","gists_url":"https://api.github.com/users/enhiro/gists{/gist_id}","starred_url":"https://api.github.com/users/enhiro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/enhiro/subscriptions","organizations_url":"https://api.github.com/users/enhiro/orgs","repos_url":"https://api.github.com/users/enhiro/repos","events_url":"https://api.github.com/users/enhiro/events{/privacy}","received_events_url":"https://api.github.com/users/enhiro/received_events","type":"User"},"private":false,"html_url":"https://github.com/enhiro/wp_theme_victoria","description":"Tema para wordpress","fork":false,"url":"https://api.github.com/repos/enhiro/wp_theme_victoria","forks_url":"https://api.github.com/repos/enhiro/wp_theme_victoria/forks","keys_url":"https://api.github.com/repos/enhiro/wp_theme_victoria/keys{/key_id}","collaborators_url":"https://api.github.com/repos/enhiro/wp_theme_victoria/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/enhiro/wp_theme_victoria/teams","hooks_url":"https://api.github.com/repos/enhiro/wp_theme_victoria/hooks","issue_events_url":"https://api.github.com/repos/enhiro/wp_theme_victoria/issues/events{/number}","events_url":"https://api.github.com/repos/enhiro/wp_theme_victoria/events","assignees_url":"https://api.github.com/repos/enhiro/wp_theme_victoria/assignees{/user}","branches_url":"https://api.github.com/repos/enhiro/wp_theme_victoria/branches{/branch}","tags_url":"https://api.github.com/repos/enhiro/wp_theme_victoria/tags","blobs_url":"https://api.github.com/repos/enhiro/wp_theme_victoria/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/enhiro/wp_theme_victoria/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/enhiro/wp_theme_victoria/git/refs{/sha}","trees_url":"https://api.github.com/repos/enhiro/wp_theme_victoria/git/trees{/sha}","statuses_url":"https://api.github.com/repos/enhiro/wp_theme_victoria/statuses/{sha}","languages_url":"https://api.github.com/repos/enhiro/wp_theme_victoria/languages","stargazers_url":"https://api.github.com/repos/enhiro/wp_theme_victoria/stargazers","contributors_url":"https://api.github.com/repos/enhiro/wp_theme_victoria/contributors","subscribers_url":"https://api.github.com/repos/enhiro/wp_theme_victoria/subscribers","subscription_url":"https://api.github.com/repos/enhiro/wp_theme_victoria/subscription","commits_url":"https://api.github.com/repos/enhiro/wp_theme_victoria/commits{/sha}","git_commits_url":"https://api.github.com/repos/enhiro/wp_theme_victoria/git/commits{/sha}","comments_url":"https://api.github.com/repos/enhiro/wp_theme_victoria/comments{/number}","issue_comment_url":"https://api.github.com/repos/enhiro/wp_theme_victoria/issues/comments/{number}","contents_url":"https://api.github.com/repos/enhiro/wp_theme_victoria/contents/{+path}","compare_url":"https://api.github.com/repos/enhiro/wp_theme_victoria/compare/{base}...{head}","merges_url":"https://api.github.com/repos/enhiro/wp_theme_victoria/merges","archive_url":"https://api.github.com/repos/enhiro/wp_theme_victoria/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/enhiro/wp_theme_victoria/downloads","issues_url":"https://api.github.com/repos/enhiro/wp_theme_victoria/issues{/number}","pulls_url":"https://api.github.com/repos/enhiro/wp_theme_victoria/pulls{/number}","milestones_url":"https://api.github.com/repos/enhiro/wp_theme_victoria/milestones{/number}","notifications_url":"https://api.github.com/repos/enhiro/wp_theme_victoria/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/enhiro/wp_theme_victoria/labels{/name}"},{"id":1482,"name":"cosmo","full_name":"travis/cosmo","owner":{"login":"travis","id":1113,"avatar_url":"https://0.gravatar.com/avatar/1ec6df8a238d0088e58865391c9b5c7f?d=https%3A%2F%2Fidenticons.github.com%2F9c3b1830513cc3b8fc4b76635d32e692.png","gravatar_id":"1ec6df8a238d0088e58865391c9b5c7f","url":"https://api.github.com/users/travis","html_url":"https://github.com/travis","followers_url":"https://api.github.com/users/travis/followers","following_url":"https://api.github.com/users/travis/following{/other_user}","gists_url":"https://api.github.com/users/travis/gists{/gist_id}","starred_url":"https://api.github.com/users/travis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/travis/subscriptions","organizations_url":"https://api.github.com/users/travis/orgs","repos_url":"https://api.github.com/users/travis/repos","events_url":"https://api.github.com/users/travis/events{/privacy}","received_events_url":"https://api.github.com/users/travis/received_events","type":"User"},"private":false,"html_url":"https://github.com/travis/cosmo","description":"Travis Vachon's clone of the Cosmo Subversion tree","fork":false,"url":"https://api.github.com/repos/travis/cosmo","forks_url":"https://api.github.com/repos/travis/cosmo/forks","keys_url":"https://api.github.com/repos/travis/cosmo/keys{/key_id}","collaborators_url":"https://api.github.com/repos/travis/cosmo/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/travis/cosmo/teams","hooks_url":"https://api.github.com/repos/travis/cosmo/hooks","issue_events_url":"https://api.github.com/repos/travis/cosmo/issues/events{/number}","events_url":"https://api.github.com/repos/travis/cosmo/events","assignees_url":"https://api.github.com/repos/travis/cosmo/assignees{/user}","branches_url":"https://api.github.com/repos/travis/cosmo/branches{/branch}","tags_url":"https://api.github.com/repos/travis/cosmo/tags","blobs_url":"https://api.github.com/repos/travis/cosmo/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/travis/cosmo/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/travis/cosmo/git/refs{/sha}","trees_url":"https://api.github.com/repos/travis/cosmo/git/trees{/sha}","statuses_url":"https://api.github.com/repos/travis/cosmo/statuses/{sha}","languages_url":"https://api.github.com/repos/travis/cosmo/languages","stargazers_url":"https://api.github.com/repos/travis/cosmo/stargazers","contributors_url":"https://api.github.com/repos/travis/cosmo/contributors","subscribers_url":"https://api.github.com/repos/travis/cosmo/subscribers","subscription_url":"https://api.github.com/repos/travis/cosmo/subscription","commits_url":"https://api.github.com/repos/travis/cosmo/commits{/sha}","git_commits_url":"https://api.github.com/repos/travis/cosmo/git/commits{/sha}","comments_url":"https://api.github.com/repos/travis/cosmo/comments{/number}","issue_comment_url":"https://api.github.com/repos/travis/cosmo/issues/comments/{number}","contents_url":"https://api.github.com/repos/travis/cosmo/contents/{+path}","compare_url":"https://api.github.com/repos/travis/cosmo/compare/{base}...{head}","merges_url":"https://api.github.com/repos/travis/cosmo/merges","archive_url":"https://api.github.com/repos/travis/cosmo/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/travis/cosmo/downloads","issues_url":"https://api.github.com/repos/travis/cosmo/issues{/number}","pulls_url":"https://api.github.com/repos/travis/cosmo/pulls{/number}","milestones_url":"https://api.github.com/repos/travis/cosmo/milestones{/number}","notifications_url":"https://api.github.com/repos/travis/cosmo/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/travis/cosmo/labels{/name}"},{"id":1490,"name":"fogbugz-svnhook","full_name":"francois/fogbugz-svnhook","owner":{"login":"francois","id":247,"avatar_url":"https://0.gravatar.com/avatar/7da32f740e64088d2b07c277f3c1b94b?d=https%3A%2F%2Fidenticons.github.com%2F3cec07e9ba5f5bb252d13f5f431e4bbb.png","gravatar_id":"7da32f740e64088d2b07c277f3c1b94b","url":"https://api.github.com/users/francois","html_url":"https://github.com/francois","followers_url":"https://api.github.com/users/francois/followers","following_url":"https://api.github.com/users/francois/following{/other_user}","gists_url":"https://api.github.com/users/francois/gists{/gist_id}","starred_url":"https://api.github.com/users/francois/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/francois/subscriptions","organizations_url":"https://api.github.com/users/francois/orgs","repos_url":"https://api.github.com/users/francois/repos","events_url":"https://api.github.com/users/francois/events{/privacy}","received_events_url":"https://api.github.com/users/francois/received_events","type":"User"},"private":false,"html_url":"https://github.com/francois/fogbugz-svnhook","description":"A Subversion post-commit hook that will edit FogBugz cases using Trac-like keywords","fork":false,"url":"https://api.github.com/repos/francois/fogbugz-svnhook","forks_url":"https://api.github.com/repos/francois/fogbugz-svnhook/forks","keys_url":"https://api.github.com/repos/francois/fogbugz-svnhook/keys{/key_id}","collaborators_url":"https://api.github.com/repos/francois/fogbugz-svnhook/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/francois/fogbugz-svnhook/teams","hooks_url":"https://api.github.com/repos/francois/fogbugz-svnhook/hooks","issue_events_url":"https://api.github.com/repos/francois/fogbugz-svnhook/issues/events{/number}","events_url":"https://api.github.com/repos/francois/fogbugz-svnhook/events","assignees_url":"https://api.github.com/repos/francois/fogbugz-svnhook/assignees{/user}","branches_url":"https://api.github.com/repos/francois/fogbugz-svnhook/branches{/branch}","tags_url":"https://api.github.com/repos/francois/fogbugz-svnhook/tags","blobs_url":"https://api.github.com/repos/francois/fogbugz-svnhook/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/francois/fogbugz-svnhook/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/francois/fogbugz-svnhook/git/refs{/sha}","trees_url":"https://api.github.com/repos/francois/fogbugz-svnhook/git/trees{/sha}","statuses_url":"https://api.github.com/repos/francois/fogbugz-svnhook/statuses/{sha}","languages_url":"https://api.github.com/repos/francois/fogbugz-svnhook/languages","stargazers_url":"https://api.github.com/repos/francois/fogbugz-svnhook/stargazers","contributors_url":"https://api.github.com/repos/francois/fogbugz-svnhook/contributors","subscribers_url":"https://api.github.com/repos/francois/fogbugz-svnhook/subscribers","subscription_url":"https://api.github.com/repos/francois/fogbugz-svnhook/subscription","commits_url":"https://api.github.com/repos/francois/fogbugz-svnhook/commits{/sha}","git_commits_url":"https://api.github.com/repos/francois/fogbugz-svnhook/git/commits{/sha}","comments_url":"https://api.github.com/repos/francois/fogbugz-svnhook/comments{/number}","issue_comment_url":"https://api.github.com/repos/francois/fogbugz-svnhook/issues/comments/{number}","contents_url":"https://api.github.com/repos/francois/fogbugz-svnhook/contents/{+path}","compare_url":"https://api.github.com/repos/francois/fogbugz-svnhook/compare/{base}...{head}","merges_url":"https://api.github.com/repos/francois/fogbugz-svnhook/merges","archive_url":"https://api.github.com/repos/francois/fogbugz-svnhook/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/francois/fogbugz-svnhook/downloads","issues_url":"https://api.github.com/repos/francois/fogbugz-svnhook/issues{/number}","pulls_url":"https://api.github.com/repos/francois/fogbugz-svnhook/pulls{/number}","milestones_url":"https://api.github.com/repos/francois/fogbugz-svnhook/milestones{/number}","notifications_url":"https://api.github.com/repos/francois/fogbugz-svnhook/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/francois/fogbugz-svnhook/labels{/name}"},{"id":1494,"name":"haml","full_name":"mislav/haml","owner":{"login":"mislav","id":887,"avatar_url":"https://0.gravatar.com/avatar/8f93a872e399bc1353cc8d4e791d5401?d=https%3A%2F%2Fidenticons.github.com%2F7ce3284b743aefde80ffd9aec500e085.png","gravatar_id":"8f93a872e399bc1353cc8d4e791d5401","url":"https://api.github.com/users/mislav","html_url":"https://github.com/mislav","followers_url":"https://api.github.com/users/mislav/followers","following_url":"https://api.github.com/users/mislav/following{/other_user}","gists_url":"https://api.github.com/users/mislav/gists{/gist_id}","starred_url":"https://api.github.com/users/mislav/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mislav/subscriptions","organizations_url":"https://api.github.com/users/mislav/orgs","repos_url":"https://api.github.com/users/mislav/repos","events_url":"https://api.github.com/users/mislav/events{/privacy}","received_events_url":"https://api.github.com/users/mislav/received_events","type":"User"},"private":false,"html_url":"https://github.com/mislav/haml","description":"HTML Abstraction Markup Language - A Markup Haiku","fork":true,"url":"https://api.github.com/repos/mislav/haml","forks_url":"https://api.github.com/repos/mislav/haml/forks","keys_url":"https://api.github.com/repos/mislav/haml/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mislav/haml/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mislav/haml/teams","hooks_url":"https://api.github.com/repos/mislav/haml/hooks","issue_events_url":"https://api.github.com/repos/mislav/haml/issues/events{/number}","events_url":"https://api.github.com/repos/mislav/haml/events","assignees_url":"https://api.github.com/repos/mislav/haml/assignees{/user}","branches_url":"https://api.github.com/repos/mislav/haml/branches{/branch}","tags_url":"https://api.github.com/repos/mislav/haml/tags","blobs_url":"https://api.github.com/repos/mislav/haml/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mislav/haml/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mislav/haml/git/refs{/sha}","trees_url":"https://api.github.com/repos/mislav/haml/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mislav/haml/statuses/{sha}","languages_url":"https://api.github.com/repos/mislav/haml/languages","stargazers_url":"https://api.github.com/repos/mislav/haml/stargazers","contributors_url":"https://api.github.com/repos/mislav/haml/contributors","subscribers_url":"https://api.github.com/repos/mislav/haml/subscribers","subscription_url":"https://api.github.com/repos/mislav/haml/subscription","commits_url":"https://api.github.com/repos/mislav/haml/commits{/sha}","git_commits_url":"https://api.github.com/repos/mislav/haml/git/commits{/sha}","comments_url":"https://api.github.com/repos/mislav/haml/comments{/number}","issue_comment_url":"https://api.github.com/repos/mislav/haml/issues/comments/{number}","contents_url":"https://api.github.com/repos/mislav/haml/contents/{+path}","compare_url":"https://api.github.com/repos/mislav/haml/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mislav/haml/merges","archive_url":"https://api.github.com/repos/mislav/haml/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mislav/haml/downloads","issues_url":"https://api.github.com/repos/mislav/haml/issues{/number}","pulls_url":"https://api.github.com/repos/mislav/haml/pulls{/number}","milestones_url":"https://api.github.com/repos/mislav/haml/milestones{/number}","notifications_url":"https://api.github.com/repos/mislav/haml/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mislav/haml/labels{/name}"},{"id":1499,"name":"quicktest","full_name":"gregwebs/quicktest","owner":{"login":"gregwebs","id":1183,"avatar_url":"https://1.gravatar.com/avatar/bad65d3d7319025d73e065d7a29ee22a?d=https%3A%2F%2Fidenticons.github.com%2F0e095e054ee94774d6a496099eb1cf6a.png","gravatar_id":"bad65d3d7319025d73e065d7a29ee22a","url":"https://api.github.com/users/gregwebs","html_url":"https://github.com/gregwebs","followers_url":"https://api.github.com/users/gregwebs/followers","following_url":"https://api.github.com/users/gregwebs/following{/other_user}","gists_url":"https://api.github.com/users/gregwebs/gists{/gist_id}","starred_url":"https://api.github.com/users/gregwebs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gregwebs/subscriptions","organizations_url":"https://api.github.com/users/gregwebs/orgs","repos_url":"https://api.github.com/users/gregwebs/repos","events_url":"https://api.github.com/users/gregwebs/events{/privacy}","received_events_url":"https://api.github.com/users/gregwebs/received_events","type":"User"},"private":false,"html_url":"https://github.com/gregwebs/quicktest","description":"Utility for inlining unit tests with the code under test.","fork":false,"url":"https://api.github.com/repos/gregwebs/quicktest","forks_url":"https://api.github.com/repos/gregwebs/quicktest/forks","keys_url":"https://api.github.com/repos/gregwebs/quicktest/keys{/key_id}","collaborators_url":"https://api.github.com/repos/gregwebs/quicktest/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/gregwebs/quicktest/teams","hooks_url":"https://api.github.com/repos/gregwebs/quicktest/hooks","issue_events_url":"https://api.github.com/repos/gregwebs/quicktest/issues/events{/number}","events_url":"https://api.github.com/repos/gregwebs/quicktest/events","assignees_url":"https://api.github.com/repos/gregwebs/quicktest/assignees{/user}","branches_url":"https://api.github.com/repos/gregwebs/quicktest/branches{/branch}","tags_url":"https://api.github.com/repos/gregwebs/quicktest/tags","blobs_url":"https://api.github.com/repos/gregwebs/quicktest/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/gregwebs/quicktest/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/gregwebs/quicktest/git/refs{/sha}","trees_url":"https://api.github.com/repos/gregwebs/quicktest/git/trees{/sha}","statuses_url":"https://api.github.com/repos/gregwebs/quicktest/statuses/{sha}","languages_url":"https://api.github.com/repos/gregwebs/quicktest/languages","stargazers_url":"https://api.github.com/repos/gregwebs/quicktest/stargazers","contributors_url":"https://api.github.com/repos/gregwebs/quicktest/contributors","subscribers_url":"https://api.github.com/repos/gregwebs/quicktest/subscribers","subscription_url":"https://api.github.com/repos/gregwebs/quicktest/subscription","commits_url":"https://api.github.com/repos/gregwebs/quicktest/commits{/sha}","git_commits_url":"https://api.github.com/repos/gregwebs/quicktest/git/commits{/sha}","comments_url":"https://api.github.com/repos/gregwebs/quicktest/comments{/number}","issue_comment_url":"https://api.github.com/repos/gregwebs/quicktest/issues/comments/{number}","contents_url":"https://api.github.com/repos/gregwebs/quicktest/contents/{+path}","compare_url":"https://api.github.com/repos/gregwebs/quicktest/compare/{base}...{head}","merges_url":"https://api.github.com/repos/gregwebs/quicktest/merges","archive_url":"https://api.github.com/repos/gregwebs/quicktest/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/gregwebs/quicktest/downloads","issues_url":"https://api.github.com/repos/gregwebs/quicktest/issues{/number}","pulls_url":"https://api.github.com/repos/gregwebs/quicktest/pulls{/number}","milestones_url":"https://api.github.com/repos/gregwebs/quicktest/milestones{/number}","notifications_url":"https://api.github.com/repos/gregwebs/quicktest/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/gregwebs/quicktest/labels{/name}"},{"id":1511,"name":"getfamilliarwithgit","full_name":"bcbroom/getfamilliarwithgit","owner":{"login":"bcbroom","id":1240,"avatar_url":"https://1.gravatar.com/avatar/72ddd6509156a7dd3c301b87a46c5219?d=https%3A%2F%2Fidenticons.github.com%2Fa9078e8653368c9c291ae2f8b74012e7.png","gravatar_id":"72ddd6509156a7dd3c301b87a46c5219","url":"https://api.github.com/users/bcbroom","html_url":"https://github.com/bcbroom","followers_url":"https://api.github.com/users/bcbroom/followers","following_url":"https://api.github.com/users/bcbroom/following{/other_user}","gists_url":"https://api.github.com/users/bcbroom/gists{/gist_id}","starred_url":"https://api.github.com/users/bcbroom/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bcbroom/subscriptions","organizations_url":"https://api.github.com/users/bcbroom/orgs","repos_url":"https://api.github.com/users/bcbroom/repos","events_url":"https://api.github.com/users/bcbroom/events{/privacy}","received_events_url":"https://api.github.com/users/bcbroom/received_events","type":"User"},"private":false,"html_url":"https://github.com/bcbroom/getfamilliarwithgit","description":"","fork":false,"url":"https://api.github.com/repos/bcbroom/getfamilliarwithgit","forks_url":"https://api.github.com/repos/bcbroom/getfamilliarwithgit/forks","keys_url":"https://api.github.com/repos/bcbroom/getfamilliarwithgit/keys{/key_id}","collaborators_url":"https://api.github.com/repos/bcbroom/getfamilliarwithgit/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/bcbroom/getfamilliarwithgit/teams","hooks_url":"https://api.github.com/repos/bcbroom/getfamilliarwithgit/hooks","issue_events_url":"https://api.github.com/repos/bcbroom/getfamilliarwithgit/issues/events{/number}","events_url":"https://api.github.com/repos/bcbroom/getfamilliarwithgit/events","assignees_url":"https://api.github.com/repos/bcbroom/getfamilliarwithgit/assignees{/user}","branches_url":"https://api.github.com/repos/bcbroom/getfamilliarwithgit/branches{/branch}","tags_url":"https://api.github.com/repos/bcbroom/getfamilliarwithgit/tags","blobs_url":"https://api.github.com/repos/bcbroom/getfamilliarwithgit/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/bcbroom/getfamilliarwithgit/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/bcbroom/getfamilliarwithgit/git/refs{/sha}","trees_url":"https://api.github.com/repos/bcbroom/getfamilliarwithgit/git/trees{/sha}","statuses_url":"https://api.github.com/repos/bcbroom/getfamilliarwithgit/statuses/{sha}","languages_url":"https://api.github.com/repos/bcbroom/getfamilliarwithgit/languages","stargazers_url":"https://api.github.com/repos/bcbroom/getfamilliarwithgit/stargazers","contributors_url":"https://api.github.com/repos/bcbroom/getfamilliarwithgit/contributors","subscribers_url":"https://api.github.com/repos/bcbroom/getfamilliarwithgit/subscribers","subscription_url":"https://api.github.com/repos/bcbroom/getfamilliarwithgit/subscription","commits_url":"https://api.github.com/repos/bcbroom/getfamilliarwithgit/commits{/sha}","git_commits_url":"https://api.github.com/repos/bcbroom/getfamilliarwithgit/git/commits{/sha}","comments_url":"https://api.github.com/repos/bcbroom/getfamilliarwithgit/comments{/number}","issue_comment_url":"https://api.github.com/repos/bcbroom/getfamilliarwithgit/issues/comments/{number}","contents_url":"https://api.github.com/repos/bcbroom/getfamilliarwithgit/contents/{+path}","compare_url":"https://api.github.com/repos/bcbroom/getfamilliarwithgit/compare/{base}...{head}","merges_url":"https://api.github.com/repos/bcbroom/getfamilliarwithgit/merges","archive_url":"https://api.github.com/repos/bcbroom/getfamilliarwithgit/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/bcbroom/getfamilliarwithgit/downloads","issues_url":"https://api.github.com/repos/bcbroom/getfamilliarwithgit/issues{/number}","pulls_url":"https://api.github.com/repos/bcbroom/getfamilliarwithgit/pulls{/number}","milestones_url":"https://api.github.com/repos/bcbroom/getfamilliarwithgit/milestones{/number}","notifications_url":"https://api.github.com/repos/bcbroom/getfamilliarwithgit/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/bcbroom/getfamilliarwithgit/labels{/name}"},{"id":1512,"name":"stor","full_name":"qartis/stor","owner":{"login":"qartis","id":1253,"avatar_url":"https://2.gravatar.com/avatar/1b2c7498c940fe0af16e0408af8eb02c?d=https%3A%2F%2Fidenticons.github.com%2Fb495ce63ede0f4efc9eec62cb947c162.png","gravatar_id":"1b2c7498c940fe0af16e0408af8eb02c","url":"https://api.github.com/users/qartis","html_url":"https://github.com/qartis","followers_url":"https://api.github.com/users/qartis/followers","following_url":"https://api.github.com/users/qartis/following{/other_user}","gists_url":"https://api.github.com/users/qartis/gists{/gist_id}","starred_url":"https://api.github.com/users/qartis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/qartis/subscriptions","organizations_url":"https://api.github.com/users/qartis/orgs","repos_url":"https://api.github.com/users/qartis/repos","events_url":"https://api.github.com/users/qartis/events{/privacy}","received_events_url":"https://api.github.com/users/qartis/received_events","type":"User"},"private":false,"html_url":"https://github.com/qartis/stor","description":"stor qt systray applet","fork":false,"url":"https://api.github.com/repos/qartis/stor","forks_url":"https://api.github.com/repos/qartis/stor/forks","keys_url":"https://api.github.com/repos/qartis/stor/keys{/key_id}","collaborators_url":"https://api.github.com/repos/qartis/stor/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/qartis/stor/teams","hooks_url":"https://api.github.com/repos/qartis/stor/hooks","issue_events_url":"https://api.github.com/repos/qartis/stor/issues/events{/number}","events_url":"https://api.github.com/repos/qartis/stor/events","assignees_url":"https://api.github.com/repos/qartis/stor/assignees{/user}","branches_url":"https://api.github.com/repos/qartis/stor/branches{/branch}","tags_url":"https://api.github.com/repos/qartis/stor/tags","blobs_url":"https://api.github.com/repos/qartis/stor/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/qartis/stor/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/qartis/stor/git/refs{/sha}","trees_url":"https://api.github.com/repos/qartis/stor/git/trees{/sha}","statuses_url":"https://api.github.com/repos/qartis/stor/statuses/{sha}","languages_url":"https://api.github.com/repos/qartis/stor/languages","stargazers_url":"https://api.github.com/repos/qartis/stor/stargazers","contributors_url":"https://api.github.com/repos/qartis/stor/contributors","subscribers_url":"https://api.github.com/repos/qartis/stor/subscribers","subscription_url":"https://api.github.com/repos/qartis/stor/subscription","commits_url":"https://api.github.com/repos/qartis/stor/commits{/sha}","git_commits_url":"https://api.github.com/repos/qartis/stor/git/commits{/sha}","comments_url":"https://api.github.com/repos/qartis/stor/comments{/number}","issue_comment_url":"https://api.github.com/repos/qartis/stor/issues/comments/{number}","contents_url":"https://api.github.com/repos/qartis/stor/contents/{+path}","compare_url":"https://api.github.com/repos/qartis/stor/compare/{base}...{head}","merges_url":"https://api.github.com/repos/qartis/stor/merges","archive_url":"https://api.github.com/repos/qartis/stor/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/qartis/stor/downloads","issues_url":"https://api.github.com/repos/qartis/stor/issues{/number}","pulls_url":"https://api.github.com/repos/qartis/stor/pulls{/number}","milestones_url":"https://api.github.com/repos/qartis/stor/milestones{/number}","notifications_url":"https://api.github.com/repos/qartis/stor/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/qartis/stor/labels{/name}"},{"id":1531,"name":"tonal","full_name":"bobbyrward/tonal","owner":{"login":"bobbyrward","id":1262,"avatar_url":"https://0.gravatar.com/avatar/36455d5ff84898dbba1724694fd32875?d=https%3A%2F%2Fidenticons.github.com%2Fdc4c44f624d600aa568390f1f1104aa0.png","gravatar_id":"36455d5ff84898dbba1724694fd32875","url":"https://api.github.com/users/bobbyrward","html_url":"https://github.com/bobbyrward","followers_url":"https://api.github.com/users/bobbyrward/followers","following_url":"https://api.github.com/users/bobbyrward/following{/other_user}","gists_url":"https://api.github.com/users/bobbyrward/gists{/gist_id}","starred_url":"https://api.github.com/users/bobbyrward/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bobbyrward/subscriptions","organizations_url":"https://api.github.com/users/bobbyrward/orgs","repos_url":"https://api.github.com/users/bobbyrward/repos","events_url":"https://api.github.com/users/bobbyrward/events{/privacy}","received_events_url":"https://api.github.com/users/bobbyrward/received_events","type":"User"},"private":false,"html_url":"https://github.com/bobbyrward/tonal","description":"A cross platform media player using wxPython and pyglet","fork":false,"url":"https://api.github.com/repos/bobbyrward/tonal","forks_url":"https://api.github.com/repos/bobbyrward/tonal/forks","keys_url":"https://api.github.com/repos/bobbyrward/tonal/keys{/key_id}","collaborators_url":"https://api.github.com/repos/bobbyrward/tonal/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/bobbyrward/tonal/teams","hooks_url":"https://api.github.com/repos/bobbyrward/tonal/hooks","issue_events_url":"https://api.github.com/repos/bobbyrward/tonal/issues/events{/number}","events_url":"https://api.github.com/repos/bobbyrward/tonal/events","assignees_url":"https://api.github.com/repos/bobbyrward/tonal/assignees{/user}","branches_url":"https://api.github.com/repos/bobbyrward/tonal/branches{/branch}","tags_url":"https://api.github.com/repos/bobbyrward/tonal/tags","blobs_url":"https://api.github.com/repos/bobbyrward/tonal/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/bobbyrward/tonal/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/bobbyrward/tonal/git/refs{/sha}","trees_url":"https://api.github.com/repos/bobbyrward/tonal/git/trees{/sha}","statuses_url":"https://api.github.com/repos/bobbyrward/tonal/statuses/{sha}","languages_url":"https://api.github.com/repos/bobbyrward/tonal/languages","stargazers_url":"https://api.github.com/repos/bobbyrward/tonal/stargazers","contributors_url":"https://api.github.com/repos/bobbyrward/tonal/contributors","subscribers_url":"https://api.github.com/repos/bobbyrward/tonal/subscribers","subscription_url":"https://api.github.com/repos/bobbyrward/tonal/subscription","commits_url":"https://api.github.com/repos/bobbyrward/tonal/commits{/sha}","git_commits_url":"https://api.github.com/repos/bobbyrward/tonal/git/commits{/sha}","comments_url":"https://api.github.com/repos/bobbyrward/tonal/comments{/number}","issue_comment_url":"https://api.github.com/repos/bobbyrward/tonal/issues/comments/{number}","contents_url":"https://api.github.com/repos/bobbyrward/tonal/contents/{+path}","compare_url":"https://api.github.com/repos/bobbyrward/tonal/compare/{base}...{head}","merges_url":"https://api.github.com/repos/bobbyrward/tonal/merges","archive_url":"https://api.github.com/repos/bobbyrward/tonal/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/bobbyrward/tonal/downloads","issues_url":"https://api.github.com/repos/bobbyrward/tonal/issues{/number}","pulls_url":"https://api.github.com/repos/bobbyrward/tonal/pulls{/number}","milestones_url":"https://api.github.com/repos/bobbyrward/tonal/milestones{/number}","notifications_url":"https://api.github.com/repos/bobbyrward/tonal/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/bobbyrward/tonal/labels{/name}"},{"id":1537,"name":"axiom","full_name":"daly/axiom","owner":{"login":"daly","id":1325,"avatar_url":"https://0.gravatar.com/avatar/b99e76fb0ce8c7c5093ffc6bde1d07c9?d=https%3A%2F%2Fidenticons.github.com%2F3546ab441e56fa333f8b44b610d95691.png","gravatar_id":"b99e76fb0ce8c7c5093ffc6bde1d07c9","url":"https://api.github.com/users/daly","html_url":"https://github.com/daly","followers_url":"https://api.github.com/users/daly/followers","following_url":"https://api.github.com/users/daly/following{/other_user}","gists_url":"https://api.github.com/users/daly/gists{/gist_id}","starred_url":"https://api.github.com/users/daly/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/daly/subscriptions","organizations_url":"https://api.github.com/users/daly/orgs","repos_url":"https://api.github.com/users/daly/repos","events_url":"https://api.github.com/users/daly/events{/privacy}","received_events_url":"https://api.github.com/users/daly/received_events","type":"User"},"private":false,"html_url":"https://github.com/daly/axiom","description":"Axiom is a free, open source computer algebra system","fork":false,"url":"https://api.github.com/repos/daly/axiom","forks_url":"https://api.github.com/repos/daly/axiom/forks","keys_url":"https://api.github.com/repos/daly/axiom/keys{/key_id}","collaborators_url":"https://api.github.com/repos/daly/axiom/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/daly/axiom/teams","hooks_url":"https://api.github.com/repos/daly/axiom/hooks","issue_events_url":"https://api.github.com/repos/daly/axiom/issues/events{/number}","events_url":"https://api.github.com/repos/daly/axiom/events","assignees_url":"https://api.github.com/repos/daly/axiom/assignees{/user}","branches_url":"https://api.github.com/repos/daly/axiom/branches{/branch}","tags_url":"https://api.github.com/repos/daly/axiom/tags","blobs_url":"https://api.github.com/repos/daly/axiom/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/daly/axiom/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/daly/axiom/git/refs{/sha}","trees_url":"https://api.github.com/repos/daly/axiom/git/trees{/sha}","statuses_url":"https://api.github.com/repos/daly/axiom/statuses/{sha}","languages_url":"https://api.github.com/repos/daly/axiom/languages","stargazers_url":"https://api.github.com/repos/daly/axiom/stargazers","contributors_url":"https://api.github.com/repos/daly/axiom/contributors","subscribers_url":"https://api.github.com/repos/daly/axiom/subscribers","subscription_url":"https://api.github.com/repos/daly/axiom/subscription","commits_url":"https://api.github.com/repos/daly/axiom/commits{/sha}","git_commits_url":"https://api.github.com/repos/daly/axiom/git/commits{/sha}","comments_url":"https://api.github.com/repos/daly/axiom/comments{/number}","issue_comment_url":"https://api.github.com/repos/daly/axiom/issues/comments/{number}","contents_url":"https://api.github.com/repos/daly/axiom/contents/{+path}","compare_url":"https://api.github.com/repos/daly/axiom/compare/{base}...{head}","merges_url":"https://api.github.com/repos/daly/axiom/merges","archive_url":"https://api.github.com/repos/daly/axiom/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/daly/axiom/downloads","issues_url":"https://api.github.com/repos/daly/axiom/issues{/number}","pulls_url":"https://api.github.com/repos/daly/axiom/pulls{/number}","milestones_url":"https://api.github.com/repos/daly/axiom/milestones{/number}","notifications_url":"https://api.github.com/repos/daly/axiom/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/daly/axiom/labels{/name}"},{"id":1540,"name":"deal","full_name":"wavydavy/deal","owner":{"login":"wavydavy","id":1042,"avatar_url":"https://1.gravatar.com/avatar/771b7a3bcfb5cac42aa4de59499be72c?d=https%3A%2F%2Fidenticons.github.com%2F9ac403da7947a183884c18a67d3aa8de.png","gravatar_id":"771b7a3bcfb5cac42aa4de59499be72c","url":"https://api.github.com/users/wavydavy","html_url":"https://github.com/wavydavy","followers_url":"https://api.github.com/users/wavydavy/followers","following_url":"https://api.github.com/users/wavydavy/following{/other_user}","gists_url":"https://api.github.com/users/wavydavy/gists{/gist_id}","starred_url":"https://api.github.com/users/wavydavy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wavydavy/subscriptions","organizations_url":"https://api.github.com/users/wavydavy/orgs","repos_url":"https://api.github.com/users/wavydavy/repos","events_url":"https://api.github.com/users/wavydavy/events{/privacy}","received_events_url":"https://api.github.com/users/wavydavy/received_events","type":"User"},"private":false,"html_url":"https://github.com/wavydavy/deal","description":"A SimPy simulation for a fully Decentralised Economic ALlocation mechansim","fork":false,"url":"https://api.github.com/repos/wavydavy/deal","forks_url":"https://api.github.com/repos/wavydavy/deal/forks","keys_url":"https://api.github.com/repos/wavydavy/deal/keys{/key_id}","collaborators_url":"https://api.github.com/repos/wavydavy/deal/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/wavydavy/deal/teams","hooks_url":"https://api.github.com/repos/wavydavy/deal/hooks","issue_events_url":"https://api.github.com/repos/wavydavy/deal/issues/events{/number}","events_url":"https://api.github.com/repos/wavydavy/deal/events","assignees_url":"https://api.github.com/repos/wavydavy/deal/assignees{/user}","branches_url":"https://api.github.com/repos/wavydavy/deal/branches{/branch}","tags_url":"https://api.github.com/repos/wavydavy/deal/tags","blobs_url":"https://api.github.com/repos/wavydavy/deal/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/wavydavy/deal/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/wavydavy/deal/git/refs{/sha}","trees_url":"https://api.github.com/repos/wavydavy/deal/git/trees{/sha}","statuses_url":"https://api.github.com/repos/wavydavy/deal/statuses/{sha}","languages_url":"https://api.github.com/repos/wavydavy/deal/languages","stargazers_url":"https://api.github.com/repos/wavydavy/deal/stargazers","contributors_url":"https://api.github.com/repos/wavydavy/deal/contributors","subscribers_url":"https://api.github.com/repos/wavydavy/deal/subscribers","subscription_url":"https://api.github.com/repos/wavydavy/deal/subscription","commits_url":"https://api.github.com/repos/wavydavy/deal/commits{/sha}","git_commits_url":"https://api.github.com/repos/wavydavy/deal/git/commits{/sha}","comments_url":"https://api.github.com/repos/wavydavy/deal/comments{/number}","issue_comment_url":"https://api.github.com/repos/wavydavy/deal/issues/comments/{number}","contents_url":"https://api.github.com/repos/wavydavy/deal/contents/{+path}","compare_url":"https://api.github.com/repos/wavydavy/deal/compare/{base}...{head}","merges_url":"https://api.github.com/repos/wavydavy/deal/merges","archive_url":"https://api.github.com/repos/wavydavy/deal/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/wavydavy/deal/downloads","issues_url":"https://api.github.com/repos/wavydavy/deal/issues{/number}","pulls_url":"https://api.github.com/repos/wavydavy/deal/pulls{/number}","milestones_url":"https://api.github.com/repos/wavydavy/deal/milestones{/number}","notifications_url":"https://api.github.com/repos/wavydavy/deal/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/wavydavy/deal/labels{/name}"},{"id":1549,"name":"test","full_name":"tphyahoo/test","owner":{"login":"tphyahoo","id":1337,"avatar_url":"https://1.gravatar.com/avatar/33fab7467f144391d68e0115a959ebbb?d=https%3A%2F%2Fidenticons.github.com%2Fe48e13207341b6bffb7fb1622282247b.png","gravatar_id":"33fab7467f144391d68e0115a959ebbb","url":"https://api.github.com/users/tphyahoo","html_url":"https://github.com/tphyahoo","followers_url":"https://api.github.com/users/tphyahoo/followers","following_url":"https://api.github.com/users/tphyahoo/following{/other_user}","gists_url":"https://api.github.com/users/tphyahoo/gists{/gist_id}","starred_url":"https://api.github.com/users/tphyahoo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tphyahoo/subscriptions","organizations_url":"https://api.github.com/users/tphyahoo/orgs","repos_url":"https://api.github.com/users/tphyahoo/repos","events_url":"https://api.github.com/users/tphyahoo/events{/privacy}","received_events_url":"https://api.github.com/users/tphyahoo/received_events","type":"User"},"private":false,"html_url":"https://github.com/tphyahoo/test","description":"test","fork":false,"url":"https://api.github.com/repos/tphyahoo/test","forks_url":"https://api.github.com/repos/tphyahoo/test/forks","keys_url":"https://api.github.com/repos/tphyahoo/test/keys{/key_id}","collaborators_url":"https://api.github.com/repos/tphyahoo/test/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/tphyahoo/test/teams","hooks_url":"https://api.github.com/repos/tphyahoo/test/hooks","issue_events_url":"https://api.github.com/repos/tphyahoo/test/issues/events{/number}","events_url":"https://api.github.com/repos/tphyahoo/test/events","assignees_url":"https://api.github.com/repos/tphyahoo/test/assignees{/user}","branches_url":"https://api.github.com/repos/tphyahoo/test/branches{/branch}","tags_url":"https://api.github.com/repos/tphyahoo/test/tags","blobs_url":"https://api.github.com/repos/tphyahoo/test/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/tphyahoo/test/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/tphyahoo/test/git/refs{/sha}","trees_url":"https://api.github.com/repos/tphyahoo/test/git/trees{/sha}","statuses_url":"https://api.github.com/repos/tphyahoo/test/statuses/{sha}","languages_url":"https://api.github.com/repos/tphyahoo/test/languages","stargazers_url":"https://api.github.com/repos/tphyahoo/test/stargazers","contributors_url":"https://api.github.com/repos/tphyahoo/test/contributors","subscribers_url":"https://api.github.com/repos/tphyahoo/test/subscribers","subscription_url":"https://api.github.com/repos/tphyahoo/test/subscription","commits_url":"https://api.github.com/repos/tphyahoo/test/commits{/sha}","git_commits_url":"https://api.github.com/repos/tphyahoo/test/git/commits{/sha}","comments_url":"https://api.github.com/repos/tphyahoo/test/comments{/number}","issue_comment_url":"https://api.github.com/repos/tphyahoo/test/issues/comments/{number}","contents_url":"https://api.github.com/repos/tphyahoo/test/contents/{+path}","compare_url":"https://api.github.com/repos/tphyahoo/test/compare/{base}...{head}","merges_url":"https://api.github.com/repos/tphyahoo/test/merges","archive_url":"https://api.github.com/repos/tphyahoo/test/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/tphyahoo/test/downloads","issues_url":"https://api.github.com/repos/tphyahoo/test/issues{/number}","pulls_url":"https://api.github.com/repos/tphyahoo/test/pulls{/number}","milestones_url":"https://api.github.com/repos/tphyahoo/test/milestones{/number}","notifications_url":"https://api.github.com/repos/tphyahoo/test/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/tphyahoo/test/labels{/name}"},{"id":1553,"name":"knuff","full_name":"jesper/knuff","owner":{"login":"jesper","id":1334,"avatar_url":"https://0.gravatar.com/avatar/c8612f9313ed7f88f79349b27fd19e55?d=https%3A%2F%2Fidenticons.github.com%2F8edd72158ccd2a879f79cb2538568fdc.png","gravatar_id":"c8612f9313ed7f88f79349b27fd19e55","url":"https://api.github.com/users/jesper","html_url":"https://github.com/jesper","followers_url":"https://api.github.com/users/jesper/followers","following_url":"https://api.github.com/users/jesper/following{/other_user}","gists_url":"https://api.github.com/users/jesper/gists{/gist_id}","starred_url":"https://api.github.com/users/jesper/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jesper/subscriptions","organizations_url":"https://api.github.com/users/jesper/orgs","repos_url":"https://api.github.com/users/jesper/repos","events_url":"https://api.github.com/users/jesper/events{/privacy}","received_events_url":"https://api.github.com/users/jesper/received_events","type":"User"},"private":false,"html_url":"https://github.com/jesper/knuff","description":"A simple game revolving around pushing circles around on a table like surface.","fork":false,"url":"https://api.github.com/repos/jesper/knuff","forks_url":"https://api.github.com/repos/jesper/knuff/forks","keys_url":"https://api.github.com/repos/jesper/knuff/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jesper/knuff/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jesper/knuff/teams","hooks_url":"https://api.github.com/repos/jesper/knuff/hooks","issue_events_url":"https://api.github.com/repos/jesper/knuff/issues/events{/number}","events_url":"https://api.github.com/repos/jesper/knuff/events","assignees_url":"https://api.github.com/repos/jesper/knuff/assignees{/user}","branches_url":"https://api.github.com/repos/jesper/knuff/branches{/branch}","tags_url":"https://api.github.com/repos/jesper/knuff/tags","blobs_url":"https://api.github.com/repos/jesper/knuff/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jesper/knuff/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jesper/knuff/git/refs{/sha}","trees_url":"https://api.github.com/repos/jesper/knuff/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jesper/knuff/statuses/{sha}","languages_url":"https://api.github.com/repos/jesper/knuff/languages","stargazers_url":"https://api.github.com/repos/jesper/knuff/stargazers","contributors_url":"https://api.github.com/repos/jesper/knuff/contributors","subscribers_url":"https://api.github.com/repos/jesper/knuff/subscribers","subscription_url":"https://api.github.com/repos/jesper/knuff/subscription","commits_url":"https://api.github.com/repos/jesper/knuff/commits{/sha}","git_commits_url":"https://api.github.com/repos/jesper/knuff/git/commits{/sha}","comments_url":"https://api.github.com/repos/jesper/knuff/comments{/number}","issue_comment_url":"https://api.github.com/repos/jesper/knuff/issues/comments/{number}","contents_url":"https://api.github.com/repos/jesper/knuff/contents/{+path}","compare_url":"https://api.github.com/repos/jesper/knuff/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jesper/knuff/merges","archive_url":"https://api.github.com/repos/jesper/knuff/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jesper/knuff/downloads","issues_url":"https://api.github.com/repos/jesper/knuff/issues{/number}","pulls_url":"https://api.github.com/repos/jesper/knuff/pulls{/number}","milestones_url":"https://api.github.com/repos/jesper/knuff/milestones{/number}","notifications_url":"https://api.github.com/repos/jesper/knuff/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jesper/knuff/labels{/name}"},{"id":1558,"name":"testprj","full_name":"Judeqiu/testprj","owner":{"login":"Judeqiu","id":1353,"avatar_url":"https://2.gravatar.com/avatar/6fd8df9678eb77f4d1767ccdccdc7dd0?d=https%3A%2F%2Fidenticons.github.com%2Fee8374ec4e4ad797d42350c904d73077.png","gravatar_id":"6fd8df9678eb77f4d1767ccdccdc7dd0","url":"https://api.github.com/users/Judeqiu","html_url":"https://github.com/Judeqiu","followers_url":"https://api.github.com/users/Judeqiu/followers","following_url":"https://api.github.com/users/Judeqiu/following{/other_user}","gists_url":"https://api.github.com/users/Judeqiu/gists{/gist_id}","starred_url":"https://api.github.com/users/Judeqiu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Judeqiu/subscriptions","organizations_url":"https://api.github.com/users/Judeqiu/orgs","repos_url":"https://api.github.com/users/Judeqiu/repos","events_url":"https://api.github.com/users/Judeqiu/events{/privacy}","received_events_url":"https://api.github.com/users/Judeqiu/received_events","type":"User"},"private":false,"html_url":"https://github.com/Judeqiu/testprj","description":"","fork":false,"url":"https://api.github.com/repos/Judeqiu/testprj","forks_url":"https://api.github.com/repos/Judeqiu/testprj/forks","keys_url":"https://api.github.com/repos/Judeqiu/testprj/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Judeqiu/testprj/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Judeqiu/testprj/teams","hooks_url":"https://api.github.com/repos/Judeqiu/testprj/hooks","issue_events_url":"https://api.github.com/repos/Judeqiu/testprj/issues/events{/number}","events_url":"https://api.github.com/repos/Judeqiu/testprj/events","assignees_url":"https://api.github.com/repos/Judeqiu/testprj/assignees{/user}","branches_url":"https://api.github.com/repos/Judeqiu/testprj/branches{/branch}","tags_url":"https://api.github.com/repos/Judeqiu/testprj/tags","blobs_url":"https://api.github.com/repos/Judeqiu/testprj/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Judeqiu/testprj/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Judeqiu/testprj/git/refs{/sha}","trees_url":"https://api.github.com/repos/Judeqiu/testprj/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Judeqiu/testprj/statuses/{sha}","languages_url":"https://api.github.com/repos/Judeqiu/testprj/languages","stargazers_url":"https://api.github.com/repos/Judeqiu/testprj/stargazers","contributors_url":"https://api.github.com/repos/Judeqiu/testprj/contributors","subscribers_url":"https://api.github.com/repos/Judeqiu/testprj/subscribers","subscription_url":"https://api.github.com/repos/Judeqiu/testprj/subscription","commits_url":"https://api.github.com/repos/Judeqiu/testprj/commits{/sha}","git_commits_url":"https://api.github.com/repos/Judeqiu/testprj/git/commits{/sha}","comments_url":"https://api.github.com/repos/Judeqiu/testprj/comments{/number}","issue_comment_url":"https://api.github.com/repos/Judeqiu/testprj/issues/comments/{number}","contents_url":"https://api.github.com/repos/Judeqiu/testprj/contents/{+path}","compare_url":"https://api.github.com/repos/Judeqiu/testprj/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Judeqiu/testprj/merges","archive_url":"https://api.github.com/repos/Judeqiu/testprj/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Judeqiu/testprj/downloads","issues_url":"https://api.github.com/repos/Judeqiu/testprj/issues{/number}","pulls_url":"https://api.github.com/repos/Judeqiu/testprj/pulls{/number}","milestones_url":"https://api.github.com/repos/Judeqiu/testprj/milestones{/number}","notifications_url":"https://api.github.com/repos/Judeqiu/testprj/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Judeqiu/testprj/labels{/name}"},{"id":1559,"name":"gazelle","full_name":"haberman/gazelle","owner":{"login":"haberman","id":1270,"avatar_url":"https://1.gravatar.com/avatar/35921adc4b1c0d7839fe8350e2429a68?d=https%3A%2F%2Fidenticons.github.com%2Fc850371fda6892fbfd1c5a5b457e5777.png","gravatar_id":"35921adc4b1c0d7839fe8350e2429a68","url":"https://api.github.com/users/haberman","html_url":"https://github.com/haberman","followers_url":"https://api.github.com/users/haberman/followers","following_url":"https://api.github.com/users/haberman/following{/other_user}","gists_url":"https://api.github.com/users/haberman/gists{/gist_id}","starred_url":"https://api.github.com/users/haberman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/haberman/subscriptions","organizations_url":"https://api.github.com/users/haberman/orgs","repos_url":"https://api.github.com/users/haberman/repos","events_url":"https://api.github.com/users/haberman/events{/privacy}","received_events_url":"https://api.github.com/users/haberman/received_events","type":"User"},"private":false,"html_url":"https://github.com/haberman/gazelle","description":"A system for creating fast, reusable parsers","fork":false,"url":"https://api.github.com/repos/haberman/gazelle","forks_url":"https://api.github.com/repos/haberman/gazelle/forks","keys_url":"https://api.github.com/repos/haberman/gazelle/keys{/key_id}","collaborators_url":"https://api.github.com/repos/haberman/gazelle/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/haberman/gazelle/teams","hooks_url":"https://api.github.com/repos/haberman/gazelle/hooks","issue_events_url":"https://api.github.com/repos/haberman/gazelle/issues/events{/number}","events_url":"https://api.github.com/repos/haberman/gazelle/events","assignees_url":"https://api.github.com/repos/haberman/gazelle/assignees{/user}","branches_url":"https://api.github.com/repos/haberman/gazelle/branches{/branch}","tags_url":"https://api.github.com/repos/haberman/gazelle/tags","blobs_url":"https://api.github.com/repos/haberman/gazelle/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/haberman/gazelle/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/haberman/gazelle/git/refs{/sha}","trees_url":"https://api.github.com/repos/haberman/gazelle/git/trees{/sha}","statuses_url":"https://api.github.com/repos/haberman/gazelle/statuses/{sha}","languages_url":"https://api.github.com/repos/haberman/gazelle/languages","stargazers_url":"https://api.github.com/repos/haberman/gazelle/stargazers","contributors_url":"https://api.github.com/repos/haberman/gazelle/contributors","subscribers_url":"https://api.github.com/repos/haberman/gazelle/subscribers","subscription_url":"https://api.github.com/repos/haberman/gazelle/subscription","commits_url":"https://api.github.com/repos/haberman/gazelle/commits{/sha}","git_commits_url":"https://api.github.com/repos/haberman/gazelle/git/commits{/sha}","comments_url":"https://api.github.com/repos/haberman/gazelle/comments{/number}","issue_comment_url":"https://api.github.com/repos/haberman/gazelle/issues/comments/{number}","contents_url":"https://api.github.com/repos/haberman/gazelle/contents/{+path}","compare_url":"https://api.github.com/repos/haberman/gazelle/compare/{base}...{head}","merges_url":"https://api.github.com/repos/haberman/gazelle/merges","archive_url":"https://api.github.com/repos/haberman/gazelle/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/haberman/gazelle/downloads","issues_url":"https://api.github.com/repos/haberman/gazelle/issues{/number}","pulls_url":"https://api.github.com/repos/haberman/gazelle/pulls{/number}","milestones_url":"https://api.github.com/repos/haberman/gazelle/milestones{/number}","notifications_url":"https://api.github.com/repos/haberman/gazelle/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/haberman/gazelle/labels{/name}"},{"id":1561,"name":"fast-recs-collate","full_name":"haberman/fast-recs-collate","owner":{"login":"haberman","id":1270,"avatar_url":"https://1.gravatar.com/avatar/35921adc4b1c0d7839fe8350e2429a68?d=https%3A%2F%2Fidenticons.github.com%2Fc850371fda6892fbfd1c5a5b457e5777.png","gravatar_id":"35921adc4b1c0d7839fe8350e2429a68","url":"https://api.github.com/users/haberman","html_url":"https://github.com/haberman","followers_url":"https://api.github.com/users/haberman/followers","following_url":"https://api.github.com/users/haberman/following{/other_user}","gists_url":"https://api.github.com/users/haberman/gists{/gist_id}","starred_url":"https://api.github.com/users/haberman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/haberman/subscriptions","organizations_url":"https://api.github.com/users/haberman/orgs","repos_url":"https://api.github.com/users/haberman/repos","events_url":"https://api.github.com/users/haberman/events{/privacy}","received_events_url":"https://api.github.com/users/haberman/received_events","type":"User"},"private":false,"html_url":"https://github.com/haberman/fast-recs-collate","description":"A fast version of recs-collate","fork":false,"url":"https://api.github.com/repos/haberman/fast-recs-collate","forks_url":"https://api.github.com/repos/haberman/fast-recs-collate/forks","keys_url":"https://api.github.com/repos/haberman/fast-recs-collate/keys{/key_id}","collaborators_url":"https://api.github.com/repos/haberman/fast-recs-collate/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/haberman/fast-recs-collate/teams","hooks_url":"https://api.github.com/repos/haberman/fast-recs-collate/hooks","issue_events_url":"https://api.github.com/repos/haberman/fast-recs-collate/issues/events{/number}","events_url":"https://api.github.com/repos/haberman/fast-recs-collate/events","assignees_url":"https://api.github.com/repos/haberman/fast-recs-collate/assignees{/user}","branches_url":"https://api.github.com/repos/haberman/fast-recs-collate/branches{/branch}","tags_url":"https://api.github.com/repos/haberman/fast-recs-collate/tags","blobs_url":"https://api.github.com/repos/haberman/fast-recs-collate/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/haberman/fast-recs-collate/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/haberman/fast-recs-collate/git/refs{/sha}","trees_url":"https://api.github.com/repos/haberman/fast-recs-collate/git/trees{/sha}","statuses_url":"https://api.github.com/repos/haberman/fast-recs-collate/statuses/{sha}","languages_url":"https://api.github.com/repos/haberman/fast-recs-collate/languages","stargazers_url":"https://api.github.com/repos/haberman/fast-recs-collate/stargazers","contributors_url":"https://api.github.com/repos/haberman/fast-recs-collate/contributors","subscribers_url":"https://api.github.com/repos/haberman/fast-recs-collate/subscribers","subscription_url":"https://api.github.com/repos/haberman/fast-recs-collate/subscription","commits_url":"https://api.github.com/repos/haberman/fast-recs-collate/commits{/sha}","git_commits_url":"https://api.github.com/repos/haberman/fast-recs-collate/git/commits{/sha}","comments_url":"https://api.github.com/repos/haberman/fast-recs-collate/comments{/number}","issue_comment_url":"https://api.github.com/repos/haberman/fast-recs-collate/issues/comments/{number}","contents_url":"https://api.github.com/repos/haberman/fast-recs-collate/contents/{+path}","compare_url":"https://api.github.com/repos/haberman/fast-recs-collate/compare/{base}...{head}","merges_url":"https://api.github.com/repos/haberman/fast-recs-collate/merges","archive_url":"https://api.github.com/repos/haberman/fast-recs-collate/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/haberman/fast-recs-collate/downloads","issues_url":"https://api.github.com/repos/haberman/fast-recs-collate/issues{/number}","pulls_url":"https://api.github.com/repos/haberman/fast-recs-collate/pulls{/number}","milestones_url":"https://api.github.com/repos/haberman/fast-recs-collate/milestones{/number}","notifications_url":"https://api.github.com/repos/haberman/fast-recs-collate/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/haberman/fast-recs-collate/labels{/name}"},{"id":1572,"name":"family_budget","full_name":"francois/family_budget","owner":{"login":"francois","id":247,"avatar_url":"https://0.gravatar.com/avatar/7da32f740e64088d2b07c277f3c1b94b?d=https%3A%2F%2Fidenticons.github.com%2F3cec07e9ba5f5bb252d13f5f431e4bbb.png","gravatar_id":"7da32f740e64088d2b07c277f3c1b94b","url":"https://api.github.com/users/francois","html_url":"https://github.com/francois","followers_url":"https://api.github.com/users/francois/followers","following_url":"https://api.github.com/users/francois/following{/other_user}","gists_url":"https://api.github.com/users/francois/gists{/gist_id}","starred_url":"https://api.github.com/users/francois/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/francois/subscriptions","organizations_url":"https://api.github.com/users/francois/orgs","repos_url":"https://api.github.com/users/francois/repos","events_url":"https://api.github.com/users/francois/events{/privacy}","received_events_url":"https://api.github.com/users/francois/received_events","type":"User"},"private":false,"html_url":"https://github.com/francois/family_budget","description":"A Family Budget application","fork":false,"url":"https://api.github.com/repos/francois/family_budget","forks_url":"https://api.github.com/repos/francois/family_budget/forks","keys_url":"https://api.github.com/repos/francois/family_budget/keys{/key_id}","collaborators_url":"https://api.github.com/repos/francois/family_budget/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/francois/family_budget/teams","hooks_url":"https://api.github.com/repos/francois/family_budget/hooks","issue_events_url":"https://api.github.com/repos/francois/family_budget/issues/events{/number}","events_url":"https://api.github.com/repos/francois/family_budget/events","assignees_url":"https://api.github.com/repos/francois/family_budget/assignees{/user}","branches_url":"https://api.github.com/repos/francois/family_budget/branches{/branch}","tags_url":"https://api.github.com/repos/francois/family_budget/tags","blobs_url":"https://api.github.com/repos/francois/family_budget/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/francois/family_budget/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/francois/family_budget/git/refs{/sha}","trees_url":"https://api.github.com/repos/francois/family_budget/git/trees{/sha}","statuses_url":"https://api.github.com/repos/francois/family_budget/statuses/{sha}","languages_url":"https://api.github.com/repos/francois/family_budget/languages","stargazers_url":"https://api.github.com/repos/francois/family_budget/stargazers","contributors_url":"https://api.github.com/repos/francois/family_budget/contributors","subscribers_url":"https://api.github.com/repos/francois/family_budget/subscribers","subscription_url":"https://api.github.com/repos/francois/family_budget/subscription","commits_url":"https://api.github.com/repos/francois/family_budget/commits{/sha}","git_commits_url":"https://api.github.com/repos/francois/family_budget/git/commits{/sha}","comments_url":"https://api.github.com/repos/francois/family_budget/comments{/number}","issue_comment_url":"https://api.github.com/repos/francois/family_budget/issues/comments/{number}","contents_url":"https://api.github.com/repos/francois/family_budget/contents/{+path}","compare_url":"https://api.github.com/repos/francois/family_budget/compare/{base}...{head}","merges_url":"https://api.github.com/repos/francois/family_budget/merges","archive_url":"https://api.github.com/repos/francois/family_budget/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/francois/family_budget/downloads","issues_url":"https://api.github.com/repos/francois/family_budget/issues{/number}","pulls_url":"https://api.github.com/repos/francois/family_budget/pulls{/number}","milestones_url":"https://api.github.com/repos/francois/family_budget/milestones{/number}","notifications_url":"https://api.github.com/repos/francois/family_budget/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/francois/family_budget/labels{/name}"},{"id":1576,"name":"javascript-jquery-tmbundle","full_name":"drnic/javascript-jquery-tmbundle","owner":{"login":"drnic","id":108,"avatar_url":"https://1.gravatar.com/avatar/cb2b768a5e546b24052ea03334e43676?d=https%3A%2F%2Fidenticons.github.com%2Fa3c65c2974270fd093ee8a9bf8ae7d0b.png","gravatar_id":"cb2b768a5e546b24052ea03334e43676","url":"https://api.github.com/users/drnic","html_url":"https://github.com/drnic","followers_url":"https://api.github.com/users/drnic/followers","following_url":"https://api.github.com/users/drnic/following{/other_user}","gists_url":"https://api.github.com/users/drnic/gists{/gist_id}","starred_url":"https://api.github.com/users/drnic/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/drnic/subscriptions","organizations_url":"https://api.github.com/users/drnic/orgs","repos_url":"https://api.github.com/users/drnic/repos","events_url":"https://api.github.com/users/drnic/events{/privacy}","received_events_url":"https://api.github.com/users/drnic/received_events","type":"User"},"private":false,"html_url":"https://github.com/drnic/javascript-jquery-tmbundle","description":"JavaScript jQuery.tmbundle","fork":false,"url":"https://api.github.com/repos/drnic/javascript-jquery-tmbundle","forks_url":"https://api.github.com/repos/drnic/javascript-jquery-tmbundle/forks","keys_url":"https://api.github.com/repos/drnic/javascript-jquery-tmbundle/keys{/key_id}","collaborators_url":"https://api.github.com/repos/drnic/javascript-jquery-tmbundle/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/drnic/javascript-jquery-tmbundle/teams","hooks_url":"https://api.github.com/repos/drnic/javascript-jquery-tmbundle/hooks","issue_events_url":"https://api.github.com/repos/drnic/javascript-jquery-tmbundle/issues/events{/number}","events_url":"https://api.github.com/repos/drnic/javascript-jquery-tmbundle/events","assignees_url":"https://api.github.com/repos/drnic/javascript-jquery-tmbundle/assignees{/user}","branches_url":"https://api.github.com/repos/drnic/javascript-jquery-tmbundle/branches{/branch}","tags_url":"https://api.github.com/repos/drnic/javascript-jquery-tmbundle/tags","blobs_url":"https://api.github.com/repos/drnic/javascript-jquery-tmbundle/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/drnic/javascript-jquery-tmbundle/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/drnic/javascript-jquery-tmbundle/git/refs{/sha}","trees_url":"https://api.github.com/repos/drnic/javascript-jquery-tmbundle/git/trees{/sha}","statuses_url":"https://api.github.com/repos/drnic/javascript-jquery-tmbundle/statuses/{sha}","languages_url":"https://api.github.com/repos/drnic/javascript-jquery-tmbundle/languages","stargazers_url":"https://api.github.com/repos/drnic/javascript-jquery-tmbundle/stargazers","contributors_url":"https://api.github.com/repos/drnic/javascript-jquery-tmbundle/contributors","subscribers_url":"https://api.github.com/repos/drnic/javascript-jquery-tmbundle/subscribers","subscription_url":"https://api.github.com/repos/drnic/javascript-jquery-tmbundle/subscription","commits_url":"https://api.github.com/repos/drnic/javascript-jquery-tmbundle/commits{/sha}","git_commits_url":"https://api.github.com/repos/drnic/javascript-jquery-tmbundle/git/commits{/sha}","comments_url":"https://api.github.com/repos/drnic/javascript-jquery-tmbundle/comments{/number}","issue_comment_url":"https://api.github.com/repos/drnic/javascript-jquery-tmbundle/issues/comments/{number}","contents_url":"https://api.github.com/repos/drnic/javascript-jquery-tmbundle/contents/{+path}","compare_url":"https://api.github.com/repos/drnic/javascript-jquery-tmbundle/compare/{base}...{head}","merges_url":"https://api.github.com/repos/drnic/javascript-jquery-tmbundle/merges","archive_url":"https://api.github.com/repos/drnic/javascript-jquery-tmbundle/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/drnic/javascript-jquery-tmbundle/downloads","issues_url":"https://api.github.com/repos/drnic/javascript-jquery-tmbundle/issues{/number}","pulls_url":"https://api.github.com/repos/drnic/javascript-jquery-tmbundle/pulls{/number}","milestones_url":"https://api.github.com/repos/drnic/javascript-jquery-tmbundle/milestones{/number}","notifications_url":"https://api.github.com/repos/drnic/javascript-jquery-tmbundle/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/drnic/javascript-jquery-tmbundle/labels{/name}"},{"id":1584,"name":"markable","full_name":"AndrewO/markable","owner":{"login":"AndrewO","id":550,"avatar_url":"https://2.gravatar.com/avatar/bdf2290f0b1d87cb0853966e7e51606b?d=https%3A%2F%2Fidenticons.github.com%2F01f78be6f7cad02658508fe4616098a9.png","gravatar_id":"bdf2290f0b1d87cb0853966e7e51606b","url":"https://api.github.com/users/AndrewO","html_url":"https://github.com/AndrewO","followers_url":"https://api.github.com/users/AndrewO/followers","following_url":"https://api.github.com/users/AndrewO/following{/other_user}","gists_url":"https://api.github.com/users/AndrewO/gists{/gist_id}","starred_url":"https://api.github.com/users/AndrewO/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/AndrewO/subscriptions","organizations_url":"https://api.github.com/users/AndrewO/orgs","repos_url":"https://api.github.com/users/AndrewO/repos","events_url":"https://api.github.com/users/AndrewO/events{/privacy}","received_events_url":"https://api.github.com/users/AndrewO/received_events","type":"User"},"private":false,"html_url":"https://github.com/AndrewO/markable","description":"A module that adds Markaby functionality to any class","fork":false,"url":"https://api.github.com/repos/AndrewO/markable","forks_url":"https://api.github.com/repos/AndrewO/markable/forks","keys_url":"https://api.github.com/repos/AndrewO/markable/keys{/key_id}","collaborators_url":"https://api.github.com/repos/AndrewO/markable/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/AndrewO/markable/teams","hooks_url":"https://api.github.com/repos/AndrewO/markable/hooks","issue_events_url":"https://api.github.com/repos/AndrewO/markable/issues/events{/number}","events_url":"https://api.github.com/repos/AndrewO/markable/events","assignees_url":"https://api.github.com/repos/AndrewO/markable/assignees{/user}","branches_url":"https://api.github.com/repos/AndrewO/markable/branches{/branch}","tags_url":"https://api.github.com/repos/AndrewO/markable/tags","blobs_url":"https://api.github.com/repos/AndrewO/markable/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/AndrewO/markable/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/AndrewO/markable/git/refs{/sha}","trees_url":"https://api.github.com/repos/AndrewO/markable/git/trees{/sha}","statuses_url":"https://api.github.com/repos/AndrewO/markable/statuses/{sha}","languages_url":"https://api.github.com/repos/AndrewO/markable/languages","stargazers_url":"https://api.github.com/repos/AndrewO/markable/stargazers","contributors_url":"https://api.github.com/repos/AndrewO/markable/contributors","subscribers_url":"https://api.github.com/repos/AndrewO/markable/subscribers","subscription_url":"https://api.github.com/repos/AndrewO/markable/subscription","commits_url":"https://api.github.com/repos/AndrewO/markable/commits{/sha}","git_commits_url":"https://api.github.com/repos/AndrewO/markable/git/commits{/sha}","comments_url":"https://api.github.com/repos/AndrewO/markable/comments{/number}","issue_comment_url":"https://api.github.com/repos/AndrewO/markable/issues/comments/{number}","contents_url":"https://api.github.com/repos/AndrewO/markable/contents/{+path}","compare_url":"https://api.github.com/repos/AndrewO/markable/compare/{base}...{head}","merges_url":"https://api.github.com/repos/AndrewO/markable/merges","archive_url":"https://api.github.com/repos/AndrewO/markable/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/AndrewO/markable/downloads","issues_url":"https://api.github.com/repos/AndrewO/markable/issues{/number}","pulls_url":"https://api.github.com/repos/AndrewO/markable/pulls{/number}","milestones_url":"https://api.github.com/repos/AndrewO/markable/milestones{/number}","notifications_url":"https://api.github.com/repos/AndrewO/markable/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/AndrewO/markable/labels{/name}"},{"id":1592,"name":"erlenmeyer","full_name":"KirinDave/erlenmeyer","owner":{"login":"KirinDave","id":36,"avatar_url":"https://2.gravatar.com/avatar/d4fabd6c08ac228a3ff846d9d0d1580e?d=https%3A%2F%2Fidenticons.github.com%2F19ca14e7ea6328a42e0eb13d585e4c22.png","gravatar_id":"d4fabd6c08ac228a3ff846d9d0d1580e","url":"https://api.github.com/users/KirinDave","html_url":"https://github.com/KirinDave","followers_url":"https://api.github.com/users/KirinDave/followers","following_url":"https://api.github.com/users/KirinDave/following{/other_user}","gists_url":"https://api.github.com/users/KirinDave/gists{/gist_id}","starred_url":"https://api.github.com/users/KirinDave/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/KirinDave/subscriptions","organizations_url":"https://api.github.com/users/KirinDave/orgs","repos_url":"https://api.github.com/users/KirinDave/repos","events_url":"https://api.github.com/users/KirinDave/events{/privacy}","received_events_url":"https://api.github.com/users/KirinDave/received_events","type":"User"},"private":false,"html_url":"https://github.com/KirinDave/erlenmeyer","description":"A binding between erlang and mzscheme.","fork":false,"url":"https://api.github.com/repos/KirinDave/erlenmeyer","forks_url":"https://api.github.com/repos/KirinDave/erlenmeyer/forks","keys_url":"https://api.github.com/repos/KirinDave/erlenmeyer/keys{/key_id}","collaborators_url":"https://api.github.com/repos/KirinDave/erlenmeyer/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/KirinDave/erlenmeyer/teams","hooks_url":"https://api.github.com/repos/KirinDave/erlenmeyer/hooks","issue_events_url":"https://api.github.com/repos/KirinDave/erlenmeyer/issues/events{/number}","events_url":"https://api.github.com/repos/KirinDave/erlenmeyer/events","assignees_url":"https://api.github.com/repos/KirinDave/erlenmeyer/assignees{/user}","branches_url":"https://api.github.com/repos/KirinDave/erlenmeyer/branches{/branch}","tags_url":"https://api.github.com/repos/KirinDave/erlenmeyer/tags","blobs_url":"https://api.github.com/repos/KirinDave/erlenmeyer/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/KirinDave/erlenmeyer/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/KirinDave/erlenmeyer/git/refs{/sha}","trees_url":"https://api.github.com/repos/KirinDave/erlenmeyer/git/trees{/sha}","statuses_url":"https://api.github.com/repos/KirinDave/erlenmeyer/statuses/{sha}","languages_url":"https://api.github.com/repos/KirinDave/erlenmeyer/languages","stargazers_url":"https://api.github.com/repos/KirinDave/erlenmeyer/stargazers","contributors_url":"https://api.github.com/repos/KirinDave/erlenmeyer/contributors","subscribers_url":"https://api.github.com/repos/KirinDave/erlenmeyer/subscribers","subscription_url":"https://api.github.com/repos/KirinDave/erlenmeyer/subscription","commits_url":"https://api.github.com/repos/KirinDave/erlenmeyer/commits{/sha}","git_commits_url":"https://api.github.com/repos/KirinDave/erlenmeyer/git/commits{/sha}","comments_url":"https://api.github.com/repos/KirinDave/erlenmeyer/comments{/number}","issue_comment_url":"https://api.github.com/repos/KirinDave/erlenmeyer/issues/comments/{number}","contents_url":"https://api.github.com/repos/KirinDave/erlenmeyer/contents/{+path}","compare_url":"https://api.github.com/repos/KirinDave/erlenmeyer/compare/{base}...{head}","merges_url":"https://api.github.com/repos/KirinDave/erlenmeyer/merges","archive_url":"https://api.github.com/repos/KirinDave/erlenmeyer/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/KirinDave/erlenmeyer/downloads","issues_url":"https://api.github.com/repos/KirinDave/erlenmeyer/issues{/number}","pulls_url":"https://api.github.com/repos/KirinDave/erlenmeyer/pulls{/number}","milestones_url":"https://api.github.com/repos/KirinDave/erlenmeyer/milestones{/number}","notifications_url":"https://api.github.com/repos/KirinDave/erlenmeyer/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/KirinDave/erlenmeyer/labels{/name}"},{"id":1598,"name":"yikes","full_name":"xpaulbettsx/yikes","owner":{"login":"xpaulbettsx","id":1396,"avatar_url":"https://2.gravatar.com/avatar/cba1c933e48e5ec70c68f640a530b969?d=https%3A%2F%2Fidenticons.github.com%2F0966289037ad9846c5e994be2a91bafa.png","gravatar_id":"cba1c933e48e5ec70c68f640a530b969","url":"https://api.github.com/users/xpaulbettsx","html_url":"https://github.com/xpaulbettsx","followers_url":"https://api.github.com/users/xpaulbettsx/followers","following_url":"https://api.github.com/users/xpaulbettsx/following{/other_user}","gists_url":"https://api.github.com/users/xpaulbettsx/gists{/gist_id}","starred_url":"https://api.github.com/users/xpaulbettsx/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/xpaulbettsx/subscriptions","organizations_url":"https://api.github.com/users/xpaulbettsx/orgs","repos_url":"https://api.github.com/users/xpaulbettsx/repos","events_url":"https://api.github.com/users/xpaulbettsx/events{/privacy}","received_events_url":"https://api.github.com/users/xpaulbettsx/received_events","type":"User"},"private":false,"html_url":"https://github.com/xpaulbettsx/yikes","description":"An automatic way to convert videos and put them on your iPod","fork":false,"url":"https://api.github.com/repos/xpaulbettsx/yikes","forks_url":"https://api.github.com/repos/xpaulbettsx/yikes/forks","keys_url":"https://api.github.com/repos/xpaulbettsx/yikes/keys{/key_id}","collaborators_url":"https://api.github.com/repos/xpaulbettsx/yikes/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/xpaulbettsx/yikes/teams","hooks_url":"https://api.github.com/repos/xpaulbettsx/yikes/hooks","issue_events_url":"https://api.github.com/repos/xpaulbettsx/yikes/issues/events{/number}","events_url":"https://api.github.com/repos/xpaulbettsx/yikes/events","assignees_url":"https://api.github.com/repos/xpaulbettsx/yikes/assignees{/user}","branches_url":"https://api.github.com/repos/xpaulbettsx/yikes/branches{/branch}","tags_url":"https://api.github.com/repos/xpaulbettsx/yikes/tags","blobs_url":"https://api.github.com/repos/xpaulbettsx/yikes/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/xpaulbettsx/yikes/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/xpaulbettsx/yikes/git/refs{/sha}","trees_url":"https://api.github.com/repos/xpaulbettsx/yikes/git/trees{/sha}","statuses_url":"https://api.github.com/repos/xpaulbettsx/yikes/statuses/{sha}","languages_url":"https://api.github.com/repos/xpaulbettsx/yikes/languages","stargazers_url":"https://api.github.com/repos/xpaulbettsx/yikes/stargazers","contributors_url":"https://api.github.com/repos/xpaulbettsx/yikes/contributors","subscribers_url":"https://api.github.com/repos/xpaulbettsx/yikes/subscribers","subscription_url":"https://api.github.com/repos/xpaulbettsx/yikes/subscription","commits_url":"https://api.github.com/repos/xpaulbettsx/yikes/commits{/sha}","git_commits_url":"https://api.github.com/repos/xpaulbettsx/yikes/git/commits{/sha}","comments_url":"https://api.github.com/repos/xpaulbettsx/yikes/comments{/number}","issue_comment_url":"https://api.github.com/repos/xpaulbettsx/yikes/issues/comments/{number}","contents_url":"https://api.github.com/repos/xpaulbettsx/yikes/contents/{+path}","compare_url":"https://api.github.com/repos/xpaulbettsx/yikes/compare/{base}...{head}","merges_url":"https://api.github.com/repos/xpaulbettsx/yikes/merges","archive_url":"https://api.github.com/repos/xpaulbettsx/yikes/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/xpaulbettsx/yikes/downloads","issues_url":"https://api.github.com/repos/xpaulbettsx/yikes/issues{/number}","pulls_url":"https://api.github.com/repos/xpaulbettsx/yikes/pulls{/number}","milestones_url":"https://api.github.com/repos/xpaulbettsx/yikes/milestones{/number}","notifications_url":"https://api.github.com/repos/xpaulbettsx/yikes/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/xpaulbettsx/yikes/labels{/name}"},{"id":1602,"name":"erlenmeyer","full_name":"mojombo/erlenmeyer","owner":{"login":"mojombo","id":1,"avatar_url":"https://2.gravatar.com/avatar/25c7c18223fb42a4c6ae1c8db6f50f9b?d=https%3A%2F%2Fidenticons.github.com%2Fc4ca4238a0b923820dcc509a6f75849b.png","gravatar_id":"25c7c18223fb42a4c6ae1c8db6f50f9b","url":"https://api.github.com/users/mojombo","html_url":"https://github.com/mojombo","followers_url":"https://api.github.com/users/mojombo/followers","following_url":"https://api.github.com/users/mojombo/following{/other_user}","gists_url":"https://api.github.com/users/mojombo/gists{/gist_id}","starred_url":"https://api.github.com/users/mojombo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mojombo/subscriptions","organizations_url":"https://api.github.com/users/mojombo/orgs","repos_url":"https://api.github.com/users/mojombo/repos","events_url":"https://api.github.com/users/mojombo/events{/privacy}","received_events_url":"https://api.github.com/users/mojombo/received_events","type":"User"},"private":false,"html_url":"https://github.com/mojombo/erlenmeyer","description":"A binding between erlang and mzscheme.","fork":true,"url":"https://api.github.com/repos/mojombo/erlenmeyer","forks_url":"https://api.github.com/repos/mojombo/erlenmeyer/forks","keys_url":"https://api.github.com/repos/mojombo/erlenmeyer/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mojombo/erlenmeyer/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mojombo/erlenmeyer/teams","hooks_url":"https://api.github.com/repos/mojombo/erlenmeyer/hooks","issue_events_url":"https://api.github.com/repos/mojombo/erlenmeyer/issues/events{/number}","events_url":"https://api.github.com/repos/mojombo/erlenmeyer/events","assignees_url":"https://api.github.com/repos/mojombo/erlenmeyer/assignees{/user}","branches_url":"https://api.github.com/repos/mojombo/erlenmeyer/branches{/branch}","tags_url":"https://api.github.com/repos/mojombo/erlenmeyer/tags","blobs_url":"https://api.github.com/repos/mojombo/erlenmeyer/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mojombo/erlenmeyer/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mojombo/erlenmeyer/git/refs{/sha}","trees_url":"https://api.github.com/repos/mojombo/erlenmeyer/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mojombo/erlenmeyer/statuses/{sha}","languages_url":"https://api.github.com/repos/mojombo/erlenmeyer/languages","stargazers_url":"https://api.github.com/repos/mojombo/erlenmeyer/stargazers","contributors_url":"https://api.github.com/repos/mojombo/erlenmeyer/contributors","subscribers_url":"https://api.github.com/repos/mojombo/erlenmeyer/subscribers","subscription_url":"https://api.github.com/repos/mojombo/erlenmeyer/subscription","commits_url":"https://api.github.com/repos/mojombo/erlenmeyer/commits{/sha}","git_commits_url":"https://api.github.com/repos/mojombo/erlenmeyer/git/commits{/sha}","comments_url":"https://api.github.com/repos/mojombo/erlenmeyer/comments{/number}","issue_comment_url":"https://api.github.com/repos/mojombo/erlenmeyer/issues/comments/{number}","contents_url":"https://api.github.com/repos/mojombo/erlenmeyer/contents/{+path}","compare_url":"https://api.github.com/repos/mojombo/erlenmeyer/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mojombo/erlenmeyer/merges","archive_url":"https://api.github.com/repos/mojombo/erlenmeyer/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mojombo/erlenmeyer/downloads","issues_url":"https://api.github.com/repos/mojombo/erlenmeyer/issues{/number}","pulls_url":"https://api.github.com/repos/mojombo/erlenmeyer/pulls{/number}","milestones_url":"https://api.github.com/repos/mojombo/erlenmeyer/milestones{/number}","notifications_url":"https://api.github.com/repos/mojombo/erlenmeyer/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mojombo/erlenmeyer/labels{/name}"},{"id":1603,"name":"python-tool","full_name":"alexeysudachen/python-tool","owner":{"login":"alexeysudachen","id":1428,"avatar_url":"https://2.gravatar.com/avatar/de4e1b989525c878e34c1910aab27dfc?d=https%3A%2F%2Fidenticons.github.com%2F0663a4ddceacb40b095eda264a85f15c.png","gravatar_id":"de4e1b989525c878e34c1910aab27dfc","url":"https://api.github.com/users/alexeysudachen","html_url":"https://github.com/alexeysudachen","followers_url":"https://api.github.com/users/alexeysudachen/followers","following_url":"https://api.github.com/users/alexeysudachen/following{/other_user}","gists_url":"https://api.github.com/users/alexeysudachen/gists{/gist_id}","starred_url":"https://api.github.com/users/alexeysudachen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alexeysudachen/subscriptions","organizations_url":"https://api.github.com/users/alexeysudachen/orgs","repos_url":"https://api.github.com/users/alexeysudachen/repos","events_url":"https://api.github.com/users/alexeysudachen/events{/privacy}","received_events_url":"https://api.github.com/users/alexeysudachen/received_events","type":"User"},"private":false,"html_url":"https://github.com/alexeysudachen/python-tool","description":"some python related utilities like py2cc","fork":false,"url":"https://api.github.com/repos/alexeysudachen/python-tool","forks_url":"https://api.github.com/repos/alexeysudachen/python-tool/forks","keys_url":"https://api.github.com/repos/alexeysudachen/python-tool/keys{/key_id}","collaborators_url":"https://api.github.com/repos/alexeysudachen/python-tool/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/alexeysudachen/python-tool/teams","hooks_url":"https://api.github.com/repos/alexeysudachen/python-tool/hooks","issue_events_url":"https://api.github.com/repos/alexeysudachen/python-tool/issues/events{/number}","events_url":"https://api.github.com/repos/alexeysudachen/python-tool/events","assignees_url":"https://api.github.com/repos/alexeysudachen/python-tool/assignees{/user}","branches_url":"https://api.github.com/repos/alexeysudachen/python-tool/branches{/branch}","tags_url":"https://api.github.com/repos/alexeysudachen/python-tool/tags","blobs_url":"https://api.github.com/repos/alexeysudachen/python-tool/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/alexeysudachen/python-tool/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/alexeysudachen/python-tool/git/refs{/sha}","trees_url":"https://api.github.com/repos/alexeysudachen/python-tool/git/trees{/sha}","statuses_url":"https://api.github.com/repos/alexeysudachen/python-tool/statuses/{sha}","languages_url":"https://api.github.com/repos/alexeysudachen/python-tool/languages","stargazers_url":"https://api.github.com/repos/alexeysudachen/python-tool/stargazers","contributors_url":"https://api.github.com/repos/alexeysudachen/python-tool/contributors","subscribers_url":"https://api.github.com/repos/alexeysudachen/python-tool/subscribers","subscription_url":"https://api.github.com/repos/alexeysudachen/python-tool/subscription","commits_url":"https://api.github.com/repos/alexeysudachen/python-tool/commits{/sha}","git_commits_url":"https://api.github.com/repos/alexeysudachen/python-tool/git/commits{/sha}","comments_url":"https://api.github.com/repos/alexeysudachen/python-tool/comments{/number}","issue_comment_url":"https://api.github.com/repos/alexeysudachen/python-tool/issues/comments/{number}","contents_url":"https://api.github.com/repos/alexeysudachen/python-tool/contents/{+path}","compare_url":"https://api.github.com/repos/alexeysudachen/python-tool/compare/{base}...{head}","merges_url":"https://api.github.com/repos/alexeysudachen/python-tool/merges","archive_url":"https://api.github.com/repos/alexeysudachen/python-tool/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/alexeysudachen/python-tool/downloads","issues_url":"https://api.github.com/repos/alexeysudachen/python-tool/issues{/number}","pulls_url":"https://api.github.com/repos/alexeysudachen/python-tool/pulls{/number}","milestones_url":"https://api.github.com/repos/alexeysudachen/python-tool/milestones{/number}","notifications_url":"https://api.github.com/repos/alexeysudachen/python-tool/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/alexeysudachen/python-tool/labels{/name}"},{"id":1611,"name":"tableau","full_name":"bousquet/tableau","owner":{"login":"bousquet","id":1347,"avatar_url":"https://0.gravatar.com/avatar/7491ae9acee0ca6a37d078b87ec7cd7a?d=https%3A%2F%2Fidenticons.github.com%2F0e55666a4ad822e0e34299df3591d979.png","gravatar_id":"7491ae9acee0ca6a37d078b87ec7cd7a","url":"https://api.github.com/users/bousquet","html_url":"https://github.com/bousquet","followers_url":"https://api.github.com/users/bousquet/followers","following_url":"https://api.github.com/users/bousquet/following{/other_user}","gists_url":"https://api.github.com/users/bousquet/gists{/gist_id}","starred_url":"https://api.github.com/users/bousquet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bousquet/subscriptions","organizations_url":"https://api.github.com/users/bousquet/orgs","repos_url":"https://api.github.com/users/bousquet/repos","events_url":"https://api.github.com/users/bousquet/events{/privacy}","received_events_url":"https://api.github.com/users/bousquet/received_events","type":"User"},"private":false,"html_url":"https://github.com/bousquet/tableau","description":"Open source photo gallery in Rails","fork":false,"url":"https://api.github.com/repos/bousquet/tableau","forks_url":"https://api.github.com/repos/bousquet/tableau/forks","keys_url":"https://api.github.com/repos/bousquet/tableau/keys{/key_id}","collaborators_url":"https://api.github.com/repos/bousquet/tableau/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/bousquet/tableau/teams","hooks_url":"https://api.github.com/repos/bousquet/tableau/hooks","issue_events_url":"https://api.github.com/repos/bousquet/tableau/issues/events{/number}","events_url":"https://api.github.com/repos/bousquet/tableau/events","assignees_url":"https://api.github.com/repos/bousquet/tableau/assignees{/user}","branches_url":"https://api.github.com/repos/bousquet/tableau/branches{/branch}","tags_url":"https://api.github.com/repos/bousquet/tableau/tags","blobs_url":"https://api.github.com/repos/bousquet/tableau/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/bousquet/tableau/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/bousquet/tableau/git/refs{/sha}","trees_url":"https://api.github.com/repos/bousquet/tableau/git/trees{/sha}","statuses_url":"https://api.github.com/repos/bousquet/tableau/statuses/{sha}","languages_url":"https://api.github.com/repos/bousquet/tableau/languages","stargazers_url":"https://api.github.com/repos/bousquet/tableau/stargazers","contributors_url":"https://api.github.com/repos/bousquet/tableau/contributors","subscribers_url":"https://api.github.com/repos/bousquet/tableau/subscribers","subscription_url":"https://api.github.com/repos/bousquet/tableau/subscription","commits_url":"https://api.github.com/repos/bousquet/tableau/commits{/sha}","git_commits_url":"https://api.github.com/repos/bousquet/tableau/git/commits{/sha}","comments_url":"https://api.github.com/repos/bousquet/tableau/comments{/number}","issue_comment_url":"https://api.github.com/repos/bousquet/tableau/issues/comments/{number}","contents_url":"https://api.github.com/repos/bousquet/tableau/contents/{+path}","compare_url":"https://api.github.com/repos/bousquet/tableau/compare/{base}...{head}","merges_url":"https://api.github.com/repos/bousquet/tableau/merges","archive_url":"https://api.github.com/repos/bousquet/tableau/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/bousquet/tableau/downloads","issues_url":"https://api.github.com/repos/bousquet/tableau/issues{/number}","pulls_url":"https://api.github.com/repos/bousquet/tableau/pulls{/number}","milestones_url":"https://api.github.com/repos/bousquet/tableau/milestones{/number}","notifications_url":"https://api.github.com/repos/bousquet/tableau/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/bousquet/tableau/labels{/name}"},{"id":1613,"name":"blue-channel","full_name":"davemerwin/blue-channel","owner":{"login":"davemerwin","id":1435,"avatar_url":"https://0.gravatar.com/avatar/3f3cd92849c7b4332396a4f5e4a97162?d=https%3A%2F%2Fidenticons.github.com%2F1f3202d820180a39f736f20fce790de8.png","gravatar_id":"3f3cd92849c7b4332396a4f5e4a97162","url":"https://api.github.com/users/davemerwin","html_url":"https://github.com/davemerwin","followers_url":"https://api.github.com/users/davemerwin/followers","following_url":"https://api.github.com/users/davemerwin/following{/other_user}","gists_url":"https://api.github.com/users/davemerwin/gists{/gist_id}","starred_url":"https://api.github.com/users/davemerwin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/davemerwin/subscriptions","organizations_url":"https://api.github.com/users/davemerwin/orgs","repos_url":"https://api.github.com/users/davemerwin/repos","events_url":"https://api.github.com/users/davemerwin/events{/privacy}","received_events_url":"https://api.github.com/users/davemerwin/received_events","type":"User"},"private":false,"html_url":"https://github.com/davemerwin/blue-channel","description":"A content management system developed in Django, jQuery and 960","fork":false,"url":"https://api.github.com/repos/davemerwin/blue-channel","forks_url":"https://api.github.com/repos/davemerwin/blue-channel/forks","keys_url":"https://api.github.com/repos/davemerwin/blue-channel/keys{/key_id}","collaborators_url":"https://api.github.com/repos/davemerwin/blue-channel/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/davemerwin/blue-channel/teams","hooks_url":"https://api.github.com/repos/davemerwin/blue-channel/hooks","issue_events_url":"https://api.github.com/repos/davemerwin/blue-channel/issues/events{/number}","events_url":"https://api.github.com/repos/davemerwin/blue-channel/events","assignees_url":"https://api.github.com/repos/davemerwin/blue-channel/assignees{/user}","branches_url":"https://api.github.com/repos/davemerwin/blue-channel/branches{/branch}","tags_url":"https://api.github.com/repos/davemerwin/blue-channel/tags","blobs_url":"https://api.github.com/repos/davemerwin/blue-channel/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/davemerwin/blue-channel/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/davemerwin/blue-channel/git/refs{/sha}","trees_url":"https://api.github.com/repos/davemerwin/blue-channel/git/trees{/sha}","statuses_url":"https://api.github.com/repos/davemerwin/blue-channel/statuses/{sha}","languages_url":"https://api.github.com/repos/davemerwin/blue-channel/languages","stargazers_url":"https://api.github.com/repos/davemerwin/blue-channel/stargazers","contributors_url":"https://api.github.com/repos/davemerwin/blue-channel/contributors","subscribers_url":"https://api.github.com/repos/davemerwin/blue-channel/subscribers","subscription_url":"https://api.github.com/repos/davemerwin/blue-channel/subscription","commits_url":"https://api.github.com/repos/davemerwin/blue-channel/commits{/sha}","git_commits_url":"https://api.github.com/repos/davemerwin/blue-channel/git/commits{/sha}","comments_url":"https://api.github.com/repos/davemerwin/blue-channel/comments{/number}","issue_comment_url":"https://api.github.com/repos/davemerwin/blue-channel/issues/comments/{number}","contents_url":"https://api.github.com/repos/davemerwin/blue-channel/contents/{+path}","compare_url":"https://api.github.com/repos/davemerwin/blue-channel/compare/{base}...{head}","merges_url":"https://api.github.com/repos/davemerwin/blue-channel/merges","archive_url":"https://api.github.com/repos/davemerwin/blue-channel/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/davemerwin/blue-channel/downloads","issues_url":"https://api.github.com/repos/davemerwin/blue-channel/issues{/number}","pulls_url":"https://api.github.com/repos/davemerwin/blue-channel/pulls{/number}","milestones_url":"https://api.github.com/repos/davemerwin/blue-channel/milestones{/number}","notifications_url":"https://api.github.com/repos/davemerwin/blue-channel/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/davemerwin/blue-channel/labels{/name}"},{"id":1615,"name":"weshowthemoney-com","full_name":"maborg/weshowthemoney-com","owner":{"login":"maborg","id":1446,"avatar_url":"https://2.gravatar.com/avatar/f86675c1ed32bf619a669a4b8bc29d2c?d=https%3A%2F%2Fidenticons.github.com%2F8fb21ee7a2207526da55a679f0332de2.png","gravatar_id":"f86675c1ed32bf619a669a4b8bc29d2c","url":"https://api.github.com/users/maborg","html_url":"https://github.com/maborg","followers_url":"https://api.github.com/users/maborg/followers","following_url":"https://api.github.com/users/maborg/following{/other_user}","gists_url":"https://api.github.com/users/maborg/gists{/gist_id}","starred_url":"https://api.github.com/users/maborg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/maborg/subscriptions","organizations_url":"https://api.github.com/users/maborg/orgs","repos_url":"https://api.github.com/users/maborg/repos","events_url":"https://api.github.com/users/maborg/events{/privacy}","received_events_url":"https://api.github.com/users/maborg/received_events","type":"User"},"private":false,"html_url":"https://github.com/maborg/weshowthemoney-com","description":"a visual approach to the us election","fork":false,"url":"https://api.github.com/repos/maborg/weshowthemoney-com","forks_url":"https://api.github.com/repos/maborg/weshowthemoney-com/forks","keys_url":"https://api.github.com/repos/maborg/weshowthemoney-com/keys{/key_id}","collaborators_url":"https://api.github.com/repos/maborg/weshowthemoney-com/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/maborg/weshowthemoney-com/teams","hooks_url":"https://api.github.com/repos/maborg/weshowthemoney-com/hooks","issue_events_url":"https://api.github.com/repos/maborg/weshowthemoney-com/issues/events{/number}","events_url":"https://api.github.com/repos/maborg/weshowthemoney-com/events","assignees_url":"https://api.github.com/repos/maborg/weshowthemoney-com/assignees{/user}","branches_url":"https://api.github.com/repos/maborg/weshowthemoney-com/branches{/branch}","tags_url":"https://api.github.com/repos/maborg/weshowthemoney-com/tags","blobs_url":"https://api.github.com/repos/maborg/weshowthemoney-com/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/maborg/weshowthemoney-com/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/maborg/weshowthemoney-com/git/refs{/sha}","trees_url":"https://api.github.com/repos/maborg/weshowthemoney-com/git/trees{/sha}","statuses_url":"https://api.github.com/repos/maborg/weshowthemoney-com/statuses/{sha}","languages_url":"https://api.github.com/repos/maborg/weshowthemoney-com/languages","stargazers_url":"https://api.github.com/repos/maborg/weshowthemoney-com/stargazers","contributors_url":"https://api.github.com/repos/maborg/weshowthemoney-com/contributors","subscribers_url":"https://api.github.com/repos/maborg/weshowthemoney-com/subscribers","subscription_url":"https://api.github.com/repos/maborg/weshowthemoney-com/subscription","commits_url":"https://api.github.com/repos/maborg/weshowthemoney-com/commits{/sha}","git_commits_url":"https://api.github.com/repos/maborg/weshowthemoney-com/git/commits{/sha}","comments_url":"https://api.github.com/repos/maborg/weshowthemoney-com/comments{/number}","issue_comment_url":"https://api.github.com/repos/maborg/weshowthemoney-com/issues/comments/{number}","contents_url":"https://api.github.com/repos/maborg/weshowthemoney-com/contents/{+path}","compare_url":"https://api.github.com/repos/maborg/weshowthemoney-com/compare/{base}...{head}","merges_url":"https://api.github.com/repos/maborg/weshowthemoney-com/merges","archive_url":"https://api.github.com/repos/maborg/weshowthemoney-com/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/maborg/weshowthemoney-com/downloads","issues_url":"https://api.github.com/repos/maborg/weshowthemoney-com/issues{/number}","pulls_url":"https://api.github.com/repos/maborg/weshowthemoney-com/pulls{/number}","milestones_url":"https://api.github.com/repos/maborg/weshowthemoney-com/milestones{/number}","notifications_url":"https://api.github.com/repos/maborg/weshowthemoney-com/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/maborg/weshowthemoney-com/labels{/name}"},{"id":1618,"name":"marshmallow","full_name":"bousquet/marshmallow","owner":{"login":"bousquet","id":1347,"avatar_url":"https://0.gravatar.com/avatar/7491ae9acee0ca6a37d078b87ec7cd7a?d=https%3A%2F%2Fidenticons.github.com%2F0e55666a4ad822e0e34299df3591d979.png","gravatar_id":"7491ae9acee0ca6a37d078b87ec7cd7a","url":"https://api.github.com/users/bousquet","html_url":"https://github.com/bousquet","followers_url":"https://api.github.com/users/bousquet/followers","following_url":"https://api.github.com/users/bousquet/following{/other_user}","gists_url":"https://api.github.com/users/bousquet/gists{/gist_id}","starred_url":"https://api.github.com/users/bousquet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bousquet/subscriptions","organizations_url":"https://api.github.com/users/bousquet/orgs","repos_url":"https://api.github.com/users/bousquet/repos","events_url":"https://api.github.com/users/bousquet/events{/privacy}","received_events_url":"https://api.github.com/users/bousquet/received_events","type":"User"},"private":false,"html_url":"https://github.com/bousquet/marshmallow","description":"Campfire chat bot in Ruby","fork":false,"url":"https://api.github.com/repos/bousquet/marshmallow","forks_url":"https://api.github.com/repos/bousquet/marshmallow/forks","keys_url":"https://api.github.com/repos/bousquet/marshmallow/keys{/key_id}","collaborators_url":"https://api.github.com/repos/bousquet/marshmallow/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/bousquet/marshmallow/teams","hooks_url":"https://api.github.com/repos/bousquet/marshmallow/hooks","issue_events_url":"https://api.github.com/repos/bousquet/marshmallow/issues/events{/number}","events_url":"https://api.github.com/repos/bousquet/marshmallow/events","assignees_url":"https://api.github.com/repos/bousquet/marshmallow/assignees{/user}","branches_url":"https://api.github.com/repos/bousquet/marshmallow/branches{/branch}","tags_url":"https://api.github.com/repos/bousquet/marshmallow/tags","blobs_url":"https://api.github.com/repos/bousquet/marshmallow/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/bousquet/marshmallow/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/bousquet/marshmallow/git/refs{/sha}","trees_url":"https://api.github.com/repos/bousquet/marshmallow/git/trees{/sha}","statuses_url":"https://api.github.com/repos/bousquet/marshmallow/statuses/{sha}","languages_url":"https://api.github.com/repos/bousquet/marshmallow/languages","stargazers_url":"https://api.github.com/repos/bousquet/marshmallow/stargazers","contributors_url":"https://api.github.com/repos/bousquet/marshmallow/contributors","subscribers_url":"https://api.github.com/repos/bousquet/marshmallow/subscribers","subscription_url":"https://api.github.com/repos/bousquet/marshmallow/subscription","commits_url":"https://api.github.com/repos/bousquet/marshmallow/commits{/sha}","git_commits_url":"https://api.github.com/repos/bousquet/marshmallow/git/commits{/sha}","comments_url":"https://api.github.com/repos/bousquet/marshmallow/comments{/number}","issue_comment_url":"https://api.github.com/repos/bousquet/marshmallow/issues/comments/{number}","contents_url":"https://api.github.com/repos/bousquet/marshmallow/contents/{+path}","compare_url":"https://api.github.com/repos/bousquet/marshmallow/compare/{base}...{head}","merges_url":"https://api.github.com/repos/bousquet/marshmallow/merges","archive_url":"https://api.github.com/repos/bousquet/marshmallow/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/bousquet/marshmallow/downloads","issues_url":"https://api.github.com/repos/bousquet/marshmallow/issues{/number}","pulls_url":"https://api.github.com/repos/bousquet/marshmallow/pulls{/number}","milestones_url":"https://api.github.com/repos/bousquet/marshmallow/milestones{/number}","notifications_url":"https://api.github.com/repos/bousquet/marshmallow/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/bousquet/marshmallow/labels{/name}"},{"id":1630,"name":"tarn","full_name":"jdp/tarn","owner":{"login":"jdp","id":574,"avatar_url":"https://1.gravatar.com/avatar/07b06bbb5ecda29c3744c1be35656247?d=https%3A%2F%2Fidenticons.github.com%2Ff0e52b27a7a5d6a1a87373dffa53dbe5.png","gravatar_id":"07b06bbb5ecda29c3744c1be35656247","url":"https://api.github.com/users/jdp","html_url":"https://github.com/jdp","followers_url":"https://api.github.com/users/jdp/followers","following_url":"https://api.github.com/users/jdp/following{/other_user}","gists_url":"https://api.github.com/users/jdp/gists{/gist_id}","starred_url":"https://api.github.com/users/jdp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jdp/subscriptions","organizations_url":"https://api.github.com/users/jdp/orgs","repos_url":"https://api.github.com/users/jdp/repos","events_url":"https://api.github.com/users/jdp/events{/privacy}","received_events_url":"https://api.github.com/users/jdp/received_events","type":"User"},"private":false,"html_url":"https://github.com/jdp/tarn","description":"A completely Lua-scriptable roguelike engine","fork":false,"url":"https://api.github.com/repos/jdp/tarn","forks_url":"https://api.github.com/repos/jdp/tarn/forks","keys_url":"https://api.github.com/repos/jdp/tarn/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jdp/tarn/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jdp/tarn/teams","hooks_url":"https://api.github.com/repos/jdp/tarn/hooks","issue_events_url":"https://api.github.com/repos/jdp/tarn/issues/events{/number}","events_url":"https://api.github.com/repos/jdp/tarn/events","assignees_url":"https://api.github.com/repos/jdp/tarn/assignees{/user}","branches_url":"https://api.github.com/repos/jdp/tarn/branches{/branch}","tags_url":"https://api.github.com/repos/jdp/tarn/tags","blobs_url":"https://api.github.com/repos/jdp/tarn/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jdp/tarn/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jdp/tarn/git/refs{/sha}","trees_url":"https://api.github.com/repos/jdp/tarn/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jdp/tarn/statuses/{sha}","languages_url":"https://api.github.com/repos/jdp/tarn/languages","stargazers_url":"https://api.github.com/repos/jdp/tarn/stargazers","contributors_url":"https://api.github.com/repos/jdp/tarn/contributors","subscribers_url":"https://api.github.com/repos/jdp/tarn/subscribers","subscription_url":"https://api.github.com/repos/jdp/tarn/subscription","commits_url":"https://api.github.com/repos/jdp/tarn/commits{/sha}","git_commits_url":"https://api.github.com/repos/jdp/tarn/git/commits{/sha}","comments_url":"https://api.github.com/repos/jdp/tarn/comments{/number}","issue_comment_url":"https://api.github.com/repos/jdp/tarn/issues/comments/{number}","contents_url":"https://api.github.com/repos/jdp/tarn/contents/{+path}","compare_url":"https://api.github.com/repos/jdp/tarn/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jdp/tarn/merges","archive_url":"https://api.github.com/repos/jdp/tarn/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jdp/tarn/downloads","issues_url":"https://api.github.com/repos/jdp/tarn/issues{/number}","pulls_url":"https://api.github.com/repos/jdp/tarn/pulls{/number}","milestones_url":"https://api.github.com/repos/jdp/tarn/milestones{/number}","notifications_url":"https://api.github.com/repos/jdp/tarn/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jdp/tarn/labels{/name}"}] + diff --git a/lib/github/tests/ReplayData/Github.testGetUsers.txt b/lib/github/tests/ReplayData/Github.testGetUsers.txt new file mode 100644 index 0000000000..1c1e206d79 --- /dev/null +++ b/lib/github/tests/ReplayData/Github.testGetUsers.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/users +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4997'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('cache-control', 'max-age=0, private, must-revalidate'), ('vary', 'Accept-Encoding'), ('content-length', '98606'), ('server', 'GitHub.com'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="first"'), ('etag', '"324912429a6c8d7f41cb480e07da772a"'), ('access-control-allow-credentials', 'true'), ('date', 'Tue, 18 Jun 2013 15:43:07 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8')] +[{"login":"mojombo","id":1,"avatar_url":"https://secure.gravatar.com/avatar/25c7c18223fb42a4c6ae1c8db6f50f9b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"25c7c18223fb42a4c6ae1c8db6f50f9b","url":"https://api.github.com/users/mojombo","html_url":"https://github.com/mojombo","followers_url":"https://api.github.com/users/mojombo/followers","following_url":"https://api.github.com/users/mojombo/following{/other_user}","gists_url":"https://api.github.com/users/mojombo/gists{/gist_id}","starred_url":"https://api.github.com/users/mojombo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mojombo/subscriptions","organizations_url":"https://api.github.com/users/mojombo/orgs","repos_url":"https://api.github.com/users/mojombo/repos","events_url":"https://api.github.com/users/mojombo/events{/privacy}","received_events_url":"https://api.github.com/users/mojombo/received_events","type":"User"},{"login":"defunkt","id":2,"avatar_url":"https://secure.gravatar.com/avatar/b8dbb1987e8e5318584865f880036796?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b8dbb1987e8e5318584865f880036796","url":"https://api.github.com/users/defunkt","html_url":"https://github.com/defunkt","followers_url":"https://api.github.com/users/defunkt/followers","following_url":"https://api.github.com/users/defunkt/following{/other_user}","gists_url":"https://api.github.com/users/defunkt/gists{/gist_id}","starred_url":"https://api.github.com/users/defunkt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/defunkt/subscriptions","organizations_url":"https://api.github.com/users/defunkt/orgs","repos_url":"https://api.github.com/users/defunkt/repos","events_url":"https://api.github.com/users/defunkt/events{/privacy}","received_events_url":"https://api.github.com/users/defunkt/received_events","type":"User"},{"login":"pjhyett","id":3,"avatar_url":"https://secure.gravatar.com/avatar/947c333c75de1dc54a711a400d575c8c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"947c333c75de1dc54a711a400d575c8c","url":"https://api.github.com/users/pjhyett","html_url":"https://github.com/pjhyett","followers_url":"https://api.github.com/users/pjhyett/followers","following_url":"https://api.github.com/users/pjhyett/following{/other_user}","gists_url":"https://api.github.com/users/pjhyett/gists{/gist_id}","starred_url":"https://api.github.com/users/pjhyett/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pjhyett/subscriptions","organizations_url":"https://api.github.com/users/pjhyett/orgs","repos_url":"https://api.github.com/users/pjhyett/repos","events_url":"https://api.github.com/users/pjhyett/events{/privacy}","received_events_url":"https://api.github.com/users/pjhyett/received_events","type":"User"},{"login":"wycats","id":4,"avatar_url":"https://secure.gravatar.com/avatar/428167a3ec72235ba971162924492609?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"428167a3ec72235ba971162924492609","url":"https://api.github.com/users/wycats","html_url":"https://github.com/wycats","followers_url":"https://api.github.com/users/wycats/followers","following_url":"https://api.github.com/users/wycats/following{/other_user}","gists_url":"https://api.github.com/users/wycats/gists{/gist_id}","starred_url":"https://api.github.com/users/wycats/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wycats/subscriptions","organizations_url":"https://api.github.com/users/wycats/orgs","repos_url":"https://api.github.com/users/wycats/repos","events_url":"https://api.github.com/users/wycats/events{/privacy}","received_events_url":"https://api.github.com/users/wycats/received_events","type":"User"},{"login":"ezmobius","id":5,"avatar_url":"https://secure.gravatar.com/avatar/6a3a6e3da2d97be8df476187ff151f04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"6a3a6e3da2d97be8df476187ff151f04","url":"https://api.github.com/users/ezmobius","html_url":"https://github.com/ezmobius","followers_url":"https://api.github.com/users/ezmobius/followers","following_url":"https://api.github.com/users/ezmobius/following{/other_user}","gists_url":"https://api.github.com/users/ezmobius/gists{/gist_id}","starred_url":"https://api.github.com/users/ezmobius/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ezmobius/subscriptions","organizations_url":"https://api.github.com/users/ezmobius/orgs","repos_url":"https://api.github.com/users/ezmobius/repos","events_url":"https://api.github.com/users/ezmobius/events{/privacy}","received_events_url":"https://api.github.com/users/ezmobius/received_events","type":"User"},{"login":"ivey","id":6,"avatar_url":"https://secure.gravatar.com/avatar/a667482dce34922ec51f6b044d253d47?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"a667482dce34922ec51f6b044d253d47","url":"https://api.github.com/users/ivey","html_url":"https://github.com/ivey","followers_url":"https://api.github.com/users/ivey/followers","following_url":"https://api.github.com/users/ivey/following{/other_user}","gists_url":"https://api.github.com/users/ivey/gists{/gist_id}","starred_url":"https://api.github.com/users/ivey/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ivey/subscriptions","organizations_url":"https://api.github.com/users/ivey/orgs","repos_url":"https://api.github.com/users/ivey/repos","events_url":"https://api.github.com/users/ivey/events{/privacy}","received_events_url":"https://api.github.com/users/ivey/received_events","type":"User"},{"login":"evanphx","id":7,"avatar_url":"https://secure.gravatar.com/avatar/540cb3b3712ffe045113cb03bab616a2?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"540cb3b3712ffe045113cb03bab616a2","url":"https://api.github.com/users/evanphx","html_url":"https://github.com/evanphx","followers_url":"https://api.github.com/users/evanphx/followers","following_url":"https://api.github.com/users/evanphx/following{/other_user}","gists_url":"https://api.github.com/users/evanphx/gists{/gist_id}","starred_url":"https://api.github.com/users/evanphx/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/evanphx/subscriptions","organizations_url":"https://api.github.com/users/evanphx/orgs","repos_url":"https://api.github.com/users/evanphx/repos","events_url":"https://api.github.com/users/evanphx/events{/privacy}","received_events_url":"https://api.github.com/users/evanphx/received_events","type":"User"},{"login":"vanpelt","id":17,"avatar_url":"https://secure.gravatar.com/avatar/1da36d4c1f34454de6c07855098675f6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"1da36d4c1f34454de6c07855098675f6","url":"https://api.github.com/users/vanpelt","html_url":"https://github.com/vanpelt","followers_url":"https://api.github.com/users/vanpelt/followers","following_url":"https://api.github.com/users/vanpelt/following{/other_user}","gists_url":"https://api.github.com/users/vanpelt/gists{/gist_id}","starred_url":"https://api.github.com/users/vanpelt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vanpelt/subscriptions","organizations_url":"https://api.github.com/users/vanpelt/orgs","repos_url":"https://api.github.com/users/vanpelt/repos","events_url":"https://api.github.com/users/vanpelt/events{/privacy}","received_events_url":"https://api.github.com/users/vanpelt/received_events","type":"User"},{"login":"wayneeseguin","id":18,"avatar_url":"https://secure.gravatar.com/avatar/b9b5ff40232c1dfd61238c2a90467f84?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b9b5ff40232c1dfd61238c2a90467f84","url":"https://api.github.com/users/wayneeseguin","html_url":"https://github.com/wayneeseguin","followers_url":"https://api.github.com/users/wayneeseguin/followers","following_url":"https://api.github.com/users/wayneeseguin/following{/other_user}","gists_url":"https://api.github.com/users/wayneeseguin/gists{/gist_id}","starred_url":"https://api.github.com/users/wayneeseguin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wayneeseguin/subscriptions","organizations_url":"https://api.github.com/users/wayneeseguin/orgs","repos_url":"https://api.github.com/users/wayneeseguin/repos","events_url":"https://api.github.com/users/wayneeseguin/events{/privacy}","received_events_url":"https://api.github.com/users/wayneeseguin/received_events","type":"User"},{"login":"brynary","id":19,"avatar_url":"https://secure.gravatar.com/avatar/535d73db0b47b6f745e9981e80dabdb4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"535d73db0b47b6f745e9981e80dabdb4","url":"https://api.github.com/users/brynary","html_url":"https://github.com/brynary","followers_url":"https://api.github.com/users/brynary/followers","following_url":"https://api.github.com/users/brynary/following{/other_user}","gists_url":"https://api.github.com/users/brynary/gists{/gist_id}","starred_url":"https://api.github.com/users/brynary/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/brynary/subscriptions","organizations_url":"https://api.github.com/users/brynary/orgs","repos_url":"https://api.github.com/users/brynary/repos","events_url":"https://api.github.com/users/brynary/events{/privacy}","received_events_url":"https://api.github.com/users/brynary/received_events","type":"User"},{"login":"kevinclark","id":20,"avatar_url":"https://secure.gravatar.com/avatar/6f792b946bbf30845314eb501da5e040?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"6f792b946bbf30845314eb501da5e040","url":"https://api.github.com/users/kevinclark","html_url":"https://github.com/kevinclark","followers_url":"https://api.github.com/users/kevinclark/followers","following_url":"https://api.github.com/users/kevinclark/following{/other_user}","gists_url":"https://api.github.com/users/kevinclark/gists{/gist_id}","starred_url":"https://api.github.com/users/kevinclark/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kevinclark/subscriptions","organizations_url":"https://api.github.com/users/kevinclark/orgs","repos_url":"https://api.github.com/users/kevinclark/repos","events_url":"https://api.github.com/users/kevinclark/events{/privacy}","received_events_url":"https://api.github.com/users/kevinclark/received_events","type":"User"},{"login":"technoweenie","id":21,"avatar_url":"https://secure.gravatar.com/avatar/821395fe70906c8290df7f18ac4ac6cf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"821395fe70906c8290df7f18ac4ac6cf","url":"https://api.github.com/users/technoweenie","html_url":"https://github.com/technoweenie","followers_url":"https://api.github.com/users/technoweenie/followers","following_url":"https://api.github.com/users/technoweenie/following{/other_user}","gists_url":"https://api.github.com/users/technoweenie/gists{/gist_id}","starred_url":"https://api.github.com/users/technoweenie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/technoweenie/subscriptions","organizations_url":"https://api.github.com/users/technoweenie/orgs","repos_url":"https://api.github.com/users/technoweenie/repos","events_url":"https://api.github.com/users/technoweenie/events{/privacy}","received_events_url":"https://api.github.com/users/technoweenie/received_events","type":"User"},{"login":"macournoyer","id":22,"avatar_url":"https://secure.gravatar.com/avatar/0d949b795e64e062c4c001c6f5a6f3f3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"0d949b795e64e062c4c001c6f5a6f3f3","url":"https://api.github.com/users/macournoyer","html_url":"https://github.com/macournoyer","followers_url":"https://api.github.com/users/macournoyer/followers","following_url":"https://api.github.com/users/macournoyer/following{/other_user}","gists_url":"https://api.github.com/users/macournoyer/gists{/gist_id}","starred_url":"https://api.github.com/users/macournoyer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/macournoyer/subscriptions","organizations_url":"https://api.github.com/users/macournoyer/orgs","repos_url":"https://api.github.com/users/macournoyer/repos","events_url":"https://api.github.com/users/macournoyer/events{/privacy}","received_events_url":"https://api.github.com/users/macournoyer/received_events","type":"User"},{"login":"takeo","id":23,"avatar_url":"https://secure.gravatar.com/avatar/4e85af59fc5cabbec1a59fd7e25c1d5b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"4e85af59fc5cabbec1a59fd7e25c1d5b","url":"https://api.github.com/users/takeo","html_url":"https://github.com/takeo","followers_url":"https://api.github.com/users/takeo/followers","following_url":"https://api.github.com/users/takeo/following{/other_user}","gists_url":"https://api.github.com/users/takeo/gists{/gist_id}","starred_url":"https://api.github.com/users/takeo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/takeo/subscriptions","organizations_url":"https://api.github.com/users/takeo/orgs","repos_url":"https://api.github.com/users/takeo/repos","events_url":"https://api.github.com/users/takeo/events{/privacy}","received_events_url":"https://api.github.com/users/takeo/received_events","type":"User"},{"login":"Caged","id":25,"avatar_url":"https://secure.gravatar.com/avatar/97c3a8eea9b7eaa9e1e93ea3cd47399f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"97c3a8eea9b7eaa9e1e93ea3cd47399f","url":"https://api.github.com/users/Caged","html_url":"https://github.com/Caged","followers_url":"https://api.github.com/users/Caged/followers","following_url":"https://api.github.com/users/Caged/following{/other_user}","gists_url":"https://api.github.com/users/Caged/gists{/gist_id}","starred_url":"https://api.github.com/users/Caged/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Caged/subscriptions","organizations_url":"https://api.github.com/users/Caged/orgs","repos_url":"https://api.github.com/users/Caged/repos","events_url":"https://api.github.com/users/Caged/events{/privacy}","received_events_url":"https://api.github.com/users/Caged/received_events","type":"User"},{"login":"topfunky","id":26,"avatar_url":"https://secure.gravatar.com/avatar/a9d024f5032b8de04d7c74528beb77ab?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"a9d024f5032b8de04d7c74528beb77ab","url":"https://api.github.com/users/topfunky","html_url":"https://github.com/topfunky","followers_url":"https://api.github.com/users/topfunky/followers","following_url":"https://api.github.com/users/topfunky/following{/other_user}","gists_url":"https://api.github.com/users/topfunky/gists{/gist_id}","starred_url":"https://api.github.com/users/topfunky/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/topfunky/subscriptions","organizations_url":"https://api.github.com/users/topfunky/orgs","repos_url":"https://api.github.com/users/topfunky/repos","events_url":"https://api.github.com/users/topfunky/events{/privacy}","received_events_url":"https://api.github.com/users/topfunky/received_events","type":"User"},{"login":"anotherjesse","id":27,"avatar_url":"https://secure.gravatar.com/avatar/50d10a8864accf0b2522c326381a4702?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"50d10a8864accf0b2522c326381a4702","url":"https://api.github.com/users/anotherjesse","html_url":"https://github.com/anotherjesse","followers_url":"https://api.github.com/users/anotherjesse/followers","following_url":"https://api.github.com/users/anotherjesse/following{/other_user}","gists_url":"https://api.github.com/users/anotherjesse/gists{/gist_id}","starred_url":"https://api.github.com/users/anotherjesse/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/anotherjesse/subscriptions","organizations_url":"https://api.github.com/users/anotherjesse/orgs","repos_url":"https://api.github.com/users/anotherjesse/repos","events_url":"https://api.github.com/users/anotherjesse/events{/privacy}","received_events_url":"https://api.github.com/users/anotherjesse/received_events","type":"User"},{"login":"roland","id":28,"avatar_url":"https://secure.gravatar.com/avatar/a0fdde9231afc79ff35cb186690d087c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"a0fdde9231afc79ff35cb186690d087c","url":"https://api.github.com/users/roland","html_url":"https://github.com/roland","followers_url":"https://api.github.com/users/roland/followers","following_url":"https://api.github.com/users/roland/following{/other_user}","gists_url":"https://api.github.com/users/roland/gists{/gist_id}","starred_url":"https://api.github.com/users/roland/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/roland/subscriptions","organizations_url":"https://api.github.com/users/roland/orgs","repos_url":"https://api.github.com/users/roland/repos","events_url":"https://api.github.com/users/roland/events{/privacy}","received_events_url":"https://api.github.com/users/roland/received_events","type":"User"},{"login":"lukas","id":29,"avatar_url":"https://secure.gravatar.com/avatar/be8ab9c98803e0143e4754824fc8bc37?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"be8ab9c98803e0143e4754824fc8bc37","url":"https://api.github.com/users/lukas","html_url":"https://github.com/lukas","followers_url":"https://api.github.com/users/lukas/followers","following_url":"https://api.github.com/users/lukas/following{/other_user}","gists_url":"https://api.github.com/users/lukas/gists{/gist_id}","starred_url":"https://api.github.com/users/lukas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lukas/subscriptions","organizations_url":"https://api.github.com/users/lukas/orgs","repos_url":"https://api.github.com/users/lukas/repos","events_url":"https://api.github.com/users/lukas/events{/privacy}","received_events_url":"https://api.github.com/users/lukas/received_events","type":"User"},{"login":"fanvsfan","id":30,"avatar_url":"https://secure.gravatar.com/avatar/ed3c1cd93641334bd74b2096b43009f3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"ed3c1cd93641334bd74b2096b43009f3","url":"https://api.github.com/users/fanvsfan","html_url":"https://github.com/fanvsfan","followers_url":"https://api.github.com/users/fanvsfan/followers","following_url":"https://api.github.com/users/fanvsfan/following{/other_user}","gists_url":"https://api.github.com/users/fanvsfan/gists{/gist_id}","starred_url":"https://api.github.com/users/fanvsfan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fanvsfan/subscriptions","organizations_url":"https://api.github.com/users/fanvsfan/orgs","repos_url":"https://api.github.com/users/fanvsfan/repos","events_url":"https://api.github.com/users/fanvsfan/events{/privacy}","received_events_url":"https://api.github.com/users/fanvsfan/received_events","type":"User"},{"login":"tomtt","id":31,"avatar_url":"https://secure.gravatar.com/avatar/407731ff6abcef686d6ee0c3029a12ad?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"407731ff6abcef686d6ee0c3029a12ad","url":"https://api.github.com/users/tomtt","html_url":"https://github.com/tomtt","followers_url":"https://api.github.com/users/tomtt/followers","following_url":"https://api.github.com/users/tomtt/following{/other_user}","gists_url":"https://api.github.com/users/tomtt/gists{/gist_id}","starred_url":"https://api.github.com/users/tomtt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tomtt/subscriptions","organizations_url":"https://api.github.com/users/tomtt/orgs","repos_url":"https://api.github.com/users/tomtt/repos","events_url":"https://api.github.com/users/tomtt/events{/privacy}","received_events_url":"https://api.github.com/users/tomtt/received_events","type":"User"},{"login":"railsjitsu","id":32,"avatar_url":"https://secure.gravatar.com/avatar/7e7889b349cc5c48ab4f364c92b02e6b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"7e7889b349cc5c48ab4f364c92b02e6b","url":"https://api.github.com/users/railsjitsu","html_url":"https://github.com/railsjitsu","followers_url":"https://api.github.com/users/railsjitsu/followers","following_url":"https://api.github.com/users/railsjitsu/following{/other_user}","gists_url":"https://api.github.com/users/railsjitsu/gists{/gist_id}","starred_url":"https://api.github.com/users/railsjitsu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/railsjitsu/subscriptions","organizations_url":"https://api.github.com/users/railsjitsu/orgs","repos_url":"https://api.github.com/users/railsjitsu/repos","events_url":"https://api.github.com/users/railsjitsu/events{/privacy}","received_events_url":"https://api.github.com/users/railsjitsu/received_events","type":"User"},{"login":"nitay","id":34,"avatar_url":"https://secure.gravatar.com/avatar/c7f765d33dba45433cdd38d0b522a92c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"c7f765d33dba45433cdd38d0b522a92c","url":"https://api.github.com/users/nitay","html_url":"https://github.com/nitay","followers_url":"https://api.github.com/users/nitay/followers","following_url":"https://api.github.com/users/nitay/following{/other_user}","gists_url":"https://api.github.com/users/nitay/gists{/gist_id}","starred_url":"https://api.github.com/users/nitay/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nitay/subscriptions","organizations_url":"https://api.github.com/users/nitay/orgs","repos_url":"https://api.github.com/users/nitay/repos","events_url":"https://api.github.com/users/nitay/events{/privacy}","received_events_url":"https://api.github.com/users/nitay/received_events","type":"User"},{"login":"kevwil","id":35,"avatar_url":"https://secure.gravatar.com/avatar/267942571862781dd912de6482a35f46?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"267942571862781dd912de6482a35f46","url":"https://api.github.com/users/kevwil","html_url":"https://github.com/kevwil","followers_url":"https://api.github.com/users/kevwil/followers","following_url":"https://api.github.com/users/kevwil/following{/other_user}","gists_url":"https://api.github.com/users/kevwil/gists{/gist_id}","starred_url":"https://api.github.com/users/kevwil/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kevwil/subscriptions","organizations_url":"https://api.github.com/users/kevwil/orgs","repos_url":"https://api.github.com/users/kevwil/repos","events_url":"https://api.github.com/users/kevwil/events{/privacy}","received_events_url":"https://api.github.com/users/kevwil/received_events","type":"User"},{"login":"KirinDave","id":36,"avatar_url":"https://secure.gravatar.com/avatar/d4fabd6c08ac228a3ff846d9d0d1580e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"d4fabd6c08ac228a3ff846d9d0d1580e","url":"https://api.github.com/users/KirinDave","html_url":"https://github.com/KirinDave","followers_url":"https://api.github.com/users/KirinDave/followers","following_url":"https://api.github.com/users/KirinDave/following{/other_user}","gists_url":"https://api.github.com/users/KirinDave/gists{/gist_id}","starred_url":"https://api.github.com/users/KirinDave/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/KirinDave/subscriptions","organizations_url":"https://api.github.com/users/KirinDave/orgs","repos_url":"https://api.github.com/users/KirinDave/repos","events_url":"https://api.github.com/users/KirinDave/events{/privacy}","received_events_url":"https://api.github.com/users/KirinDave/received_events","type":"User"},{"login":"jamesgolick","id":37,"avatar_url":"https://secure.gravatar.com/avatar/f6eddf2f983d23c2d031e407852625e9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"f6eddf2f983d23c2d031e407852625e9","url":"https://api.github.com/users/jamesgolick","html_url":"https://github.com/jamesgolick","followers_url":"https://api.github.com/users/jamesgolick/followers","following_url":"https://api.github.com/users/jamesgolick/following{/other_user}","gists_url":"https://api.github.com/users/jamesgolick/gists{/gist_id}","starred_url":"https://api.github.com/users/jamesgolick/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jamesgolick/subscriptions","organizations_url":"https://api.github.com/users/jamesgolick/orgs","repos_url":"https://api.github.com/users/jamesgolick/repos","events_url":"https://api.github.com/users/jamesgolick/events{/privacy}","received_events_url":"https://api.github.com/users/jamesgolick/received_events","type":"User"},{"login":"atmos","id":38,"avatar_url":"https://secure.gravatar.com/avatar/a86224d72ce21cd9f5bee6784d4b06c7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"a86224d72ce21cd9f5bee6784d4b06c7","url":"https://api.github.com/users/atmos","html_url":"https://github.com/atmos","followers_url":"https://api.github.com/users/atmos/followers","following_url":"https://api.github.com/users/atmos/following{/other_user}","gists_url":"https://api.github.com/users/atmos/gists{/gist_id}","starred_url":"https://api.github.com/users/atmos/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/atmos/subscriptions","organizations_url":"https://api.github.com/users/atmos/orgs","repos_url":"https://api.github.com/users/atmos/repos","events_url":"https://api.github.com/users/atmos/events{/privacy}","received_events_url":"https://api.github.com/users/atmos/received_events","type":"User"},{"login":"errfree","id":44,"avatar_url":"https://secure.gravatar.com/avatar/f152c438d3c985f1e771a1287c762dd6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","gravatar_id":"f152c438d3c985f1e771a1287c762dd6","url":"https://api.github.com/users/errfree","html_url":"https://github.com/errfree","followers_url":"https://api.github.com/users/errfree/followers","following_url":"https://api.github.com/users/errfree/following{/other_user}","gists_url":"https://api.github.com/users/errfree/gists{/gist_id}","starred_url":"https://api.github.com/users/errfree/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/errfree/subscriptions","organizations_url":"https://api.github.com/users/errfree/orgs","repos_url":"https://api.github.com/users/errfree/repos","events_url":"https://api.github.com/users/errfree/events{/privacy}","received_events_url":"https://api.github.com/users/errfree/received_events","type":"Organization"},{"login":"mojodna","id":45,"avatar_url":"https://secure.gravatar.com/avatar/a0b49382b6dcd9dd4602c3088717724e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"a0b49382b6dcd9dd4602c3088717724e","url":"https://api.github.com/users/mojodna","html_url":"https://github.com/mojodna","followers_url":"https://api.github.com/users/mojodna/followers","following_url":"https://api.github.com/users/mojodna/following{/other_user}","gists_url":"https://api.github.com/users/mojodna/gists{/gist_id}","starred_url":"https://api.github.com/users/mojodna/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mojodna/subscriptions","organizations_url":"https://api.github.com/users/mojodna/orgs","repos_url":"https://api.github.com/users/mojodna/repos","events_url":"https://api.github.com/users/mojodna/events{/privacy}","received_events_url":"https://api.github.com/users/mojodna/received_events","type":"User"},{"login":"bmizerany","id":46,"avatar_url":"https://secure.gravatar.com/avatar/1a250566b475961b9b36abf359950c76?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"1a250566b475961b9b36abf359950c76","url":"https://api.github.com/users/bmizerany","html_url":"https://github.com/bmizerany","followers_url":"https://api.github.com/users/bmizerany/followers","following_url":"https://api.github.com/users/bmizerany/following{/other_user}","gists_url":"https://api.github.com/users/bmizerany/gists{/gist_id}","starred_url":"https://api.github.com/users/bmizerany/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bmizerany/subscriptions","organizations_url":"https://api.github.com/users/bmizerany/orgs","repos_url":"https://api.github.com/users/bmizerany/repos","events_url":"https://api.github.com/users/bmizerany/events{/privacy}","received_events_url":"https://api.github.com/users/bmizerany/received_events","type":"User"},{"login":"jnewland","id":47,"avatar_url":"https://secure.gravatar.com/avatar/f317439da90c3176adc8938bcf5181ff?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"f317439da90c3176adc8938bcf5181ff","url":"https://api.github.com/users/jnewland","html_url":"https://github.com/jnewland","followers_url":"https://api.github.com/users/jnewland/followers","following_url":"https://api.github.com/users/jnewland/following{/other_user}","gists_url":"https://api.github.com/users/jnewland/gists{/gist_id}","starred_url":"https://api.github.com/users/jnewland/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jnewland/subscriptions","organizations_url":"https://api.github.com/users/jnewland/orgs","repos_url":"https://api.github.com/users/jnewland/repos","events_url":"https://api.github.com/users/jnewland/events{/privacy}","received_events_url":"https://api.github.com/users/jnewland/received_events","type":"User"},{"login":"joshknowles","id":48,"avatar_url":"https://secure.gravatar.com/avatar/57e939ff00f9df2670a09f417c08da5e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"57e939ff00f9df2670a09f417c08da5e","url":"https://api.github.com/users/joshknowles","html_url":"https://github.com/joshknowles","followers_url":"https://api.github.com/users/joshknowles/followers","following_url":"https://api.github.com/users/joshknowles/following{/other_user}","gists_url":"https://api.github.com/users/joshknowles/gists{/gist_id}","starred_url":"https://api.github.com/users/joshknowles/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/joshknowles/subscriptions","organizations_url":"https://api.github.com/users/joshknowles/orgs","repos_url":"https://api.github.com/users/joshknowles/repos","events_url":"https://api.github.com/users/joshknowles/events{/privacy}","received_events_url":"https://api.github.com/users/joshknowles/received_events","type":"User"},{"login":"hornbeck","id":49,"avatar_url":"https://secure.gravatar.com/avatar/47093444301bbde90d0aef5fa5c3ac86?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"47093444301bbde90d0aef5fa5c3ac86","url":"https://api.github.com/users/hornbeck","html_url":"https://github.com/hornbeck","followers_url":"https://api.github.com/users/hornbeck/followers","following_url":"https://api.github.com/users/hornbeck/following{/other_user}","gists_url":"https://api.github.com/users/hornbeck/gists{/gist_id}","starred_url":"https://api.github.com/users/hornbeck/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hornbeck/subscriptions","organizations_url":"https://api.github.com/users/hornbeck/orgs","repos_url":"https://api.github.com/users/hornbeck/repos","events_url":"https://api.github.com/users/hornbeck/events{/privacy}","received_events_url":"https://api.github.com/users/hornbeck/received_events","type":"User"},{"login":"jwhitmire","id":50,"avatar_url":"https://secure.gravatar.com/avatar/2de99c2f473304df3d95978ac9dcf2cc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2de99c2f473304df3d95978ac9dcf2cc","url":"https://api.github.com/users/jwhitmire","html_url":"https://github.com/jwhitmire","followers_url":"https://api.github.com/users/jwhitmire/followers","following_url":"https://api.github.com/users/jwhitmire/following{/other_user}","gists_url":"https://api.github.com/users/jwhitmire/gists{/gist_id}","starred_url":"https://api.github.com/users/jwhitmire/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jwhitmire/subscriptions","organizations_url":"https://api.github.com/users/jwhitmire/orgs","repos_url":"https://api.github.com/users/jwhitmire/repos","events_url":"https://api.github.com/users/jwhitmire/events{/privacy}","received_events_url":"https://api.github.com/users/jwhitmire/received_events","type":"User"},{"login":"elbowdonkey","id":51,"avatar_url":"https://secure.gravatar.com/avatar/e71cd8cdf1a6ff389f6c7393cbd08516?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e71cd8cdf1a6ff389f6c7393cbd08516","url":"https://api.github.com/users/elbowdonkey","html_url":"https://github.com/elbowdonkey","followers_url":"https://api.github.com/users/elbowdonkey/followers","following_url":"https://api.github.com/users/elbowdonkey/following{/other_user}","gists_url":"https://api.github.com/users/elbowdonkey/gists{/gist_id}","starred_url":"https://api.github.com/users/elbowdonkey/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elbowdonkey/subscriptions","organizations_url":"https://api.github.com/users/elbowdonkey/orgs","repos_url":"https://api.github.com/users/elbowdonkey/repos","events_url":"https://api.github.com/users/elbowdonkey/events{/privacy}","received_events_url":"https://api.github.com/users/elbowdonkey/received_events","type":"User"},{"login":"reinh","id":52,"avatar_url":"https://secure.gravatar.com/avatar/f30b04ed4d0b3fc4bc791a28815f34ca?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"f30b04ed4d0b3fc4bc791a28815f34ca","url":"https://api.github.com/users/reinh","html_url":"https://github.com/reinh","followers_url":"https://api.github.com/users/reinh/followers","following_url":"https://api.github.com/users/reinh/following{/other_user}","gists_url":"https://api.github.com/users/reinh/gists{/gist_id}","starred_url":"https://api.github.com/users/reinh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/reinh/subscriptions","organizations_url":"https://api.github.com/users/reinh/orgs","repos_url":"https://api.github.com/users/reinh/repos","events_url":"https://api.github.com/users/reinh/events{/privacy}","received_events_url":"https://api.github.com/users/reinh/received_events","type":"User"},{"login":"timocratic","id":53,"avatar_url":"https://secure.gravatar.com/avatar/984959912ebf94363592e07d7ae9eaa8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"984959912ebf94363592e07d7ae9eaa8","url":"https://api.github.com/users/timocratic","html_url":"https://github.com/timocratic","followers_url":"https://api.github.com/users/timocratic/followers","following_url":"https://api.github.com/users/timocratic/following{/other_user}","gists_url":"https://api.github.com/users/timocratic/gists{/gist_id}","starred_url":"https://api.github.com/users/timocratic/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timocratic/subscriptions","organizations_url":"https://api.github.com/users/timocratic/orgs","repos_url":"https://api.github.com/users/timocratic/repos","events_url":"https://api.github.com/users/timocratic/events{/privacy}","received_events_url":"https://api.github.com/users/timocratic/received_events","type":"User"},{"login":"bs","id":68,"avatar_url":"https://secure.gravatar.com/avatar/e9abc07e644756d917e9de193236fd39?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e9abc07e644756d917e9de193236fd39","url":"https://api.github.com/users/bs","html_url":"https://github.com/bs","followers_url":"https://api.github.com/users/bs/followers","following_url":"https://api.github.com/users/bs/following{/other_user}","gists_url":"https://api.github.com/users/bs/gists{/gist_id}","starred_url":"https://api.github.com/users/bs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bs/subscriptions","organizations_url":"https://api.github.com/users/bs/orgs","repos_url":"https://api.github.com/users/bs/repos","events_url":"https://api.github.com/users/bs/events{/privacy}","received_events_url":"https://api.github.com/users/bs/received_events","type":"User"},{"login":"rsanheim","id":69,"avatar_url":"https://secure.gravatar.com/avatar/df5e7adb20adae6c120b04e7cafb15a0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"df5e7adb20adae6c120b04e7cafb15a0","url":"https://api.github.com/users/rsanheim","html_url":"https://github.com/rsanheim","followers_url":"https://api.github.com/users/rsanheim/followers","following_url":"https://api.github.com/users/rsanheim/following{/other_user}","gists_url":"https://api.github.com/users/rsanheim/gists{/gist_id}","starred_url":"https://api.github.com/users/rsanheim/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rsanheim/subscriptions","organizations_url":"https://api.github.com/users/rsanheim/orgs","repos_url":"https://api.github.com/users/rsanheim/repos","events_url":"https://api.github.com/users/rsanheim/events{/privacy}","received_events_url":"https://api.github.com/users/rsanheim/received_events","type":"User"},{"login":"schacon","id":70,"avatar_url":"https://secure.gravatar.com/avatar/9375a9529679f1b42b567a640d775e7d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"9375a9529679f1b42b567a640d775e7d","url":"https://api.github.com/users/schacon","html_url":"https://github.com/schacon","followers_url":"https://api.github.com/users/schacon/followers","following_url":"https://api.github.com/users/schacon/following{/other_user}","gists_url":"https://api.github.com/users/schacon/gists{/gist_id}","starred_url":"https://api.github.com/users/schacon/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/schacon/subscriptions","organizations_url":"https://api.github.com/users/schacon/orgs","repos_url":"https://api.github.com/users/schacon/repos","events_url":"https://api.github.com/users/schacon/events{/privacy}","received_events_url":"https://api.github.com/users/schacon/received_events","type":"User"},{"login":"uggedal","id":71,"avatar_url":"https://secure.gravatar.com/avatar/0339e3df937c32000f9e2cf1de04298d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"0339e3df937c32000f9e2cf1de04298d","url":"https://api.github.com/users/uggedal","html_url":"https://github.com/uggedal","followers_url":"https://api.github.com/users/uggedal/followers","following_url":"https://api.github.com/users/uggedal/following{/other_user}","gists_url":"https://api.github.com/users/uggedal/gists{/gist_id}","starred_url":"https://api.github.com/users/uggedal/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/uggedal/subscriptions","organizations_url":"https://api.github.com/users/uggedal/orgs","repos_url":"https://api.github.com/users/uggedal/repos","events_url":"https://api.github.com/users/uggedal/events{/privacy}","received_events_url":"https://api.github.com/users/uggedal/received_events","type":"User"},{"login":"bruce","id":72,"avatar_url":"https://secure.gravatar.com/avatar/e01449f66c9665b7ebc70ebca6921427?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e01449f66c9665b7ebc70ebca6921427","url":"https://api.github.com/users/bruce","html_url":"https://github.com/bruce","followers_url":"https://api.github.com/users/bruce/followers","following_url":"https://api.github.com/users/bruce/following{/other_user}","gists_url":"https://api.github.com/users/bruce/gists{/gist_id}","starred_url":"https://api.github.com/users/bruce/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bruce/subscriptions","organizations_url":"https://api.github.com/users/bruce/orgs","repos_url":"https://api.github.com/users/bruce/repos","events_url":"https://api.github.com/users/bruce/events{/privacy}","received_events_url":"https://api.github.com/users/bruce/received_events","type":"User"},{"login":"sam","id":73,"avatar_url":"https://secure.gravatar.com/avatar/41c597a48c80e37ba68d1adc7095ea0e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"41c597a48c80e37ba68d1adc7095ea0e","url":"https://api.github.com/users/sam","html_url":"https://github.com/sam","followers_url":"https://api.github.com/users/sam/followers","following_url":"https://api.github.com/users/sam/following{/other_user}","gists_url":"https://api.github.com/users/sam/gists{/gist_id}","starred_url":"https://api.github.com/users/sam/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sam/subscriptions","organizations_url":"https://api.github.com/users/sam/orgs","repos_url":"https://api.github.com/users/sam/repos","events_url":"https://api.github.com/users/sam/events{/privacy}","received_events_url":"https://api.github.com/users/sam/received_events","type":"User"},{"login":"mmower","id":74,"avatar_url":"https://secure.gravatar.com/avatar/9d89c1c7a998c1f6f6e3fa9ac1753d29?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"9d89c1c7a998c1f6f6e3fa9ac1753d29","url":"https://api.github.com/users/mmower","html_url":"https://github.com/mmower","followers_url":"https://api.github.com/users/mmower/followers","following_url":"https://api.github.com/users/mmower/following{/other_user}","gists_url":"https://api.github.com/users/mmower/gists{/gist_id}","starred_url":"https://api.github.com/users/mmower/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mmower/subscriptions","organizations_url":"https://api.github.com/users/mmower/orgs","repos_url":"https://api.github.com/users/mmower/repos","events_url":"https://api.github.com/users/mmower/events{/privacy}","received_events_url":"https://api.github.com/users/mmower/received_events","type":"User"},{"login":"abhay","id":75,"avatar_url":"https://secure.gravatar.com/avatar/012b62cf82e7956ffe8f47086be831de?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"012b62cf82e7956ffe8f47086be831de","url":"https://api.github.com/users/abhay","html_url":"https://github.com/abhay","followers_url":"https://api.github.com/users/abhay/followers","following_url":"https://api.github.com/users/abhay/following{/other_user}","gists_url":"https://api.github.com/users/abhay/gists{/gist_id}","starred_url":"https://api.github.com/users/abhay/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/abhay/subscriptions","organizations_url":"https://api.github.com/users/abhay/orgs","repos_url":"https://api.github.com/users/abhay/repos","events_url":"https://api.github.com/users/abhay/events{/privacy}","received_events_url":"https://api.github.com/users/abhay/received_events","type":"User"},{"login":"rabble","id":76,"avatar_url":"https://secure.gravatar.com/avatar/0d81b7e9dd9a8372a69abf2c9f942ec9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"0d81b7e9dd9a8372a69abf2c9f942ec9","url":"https://api.github.com/users/rabble","html_url":"https://github.com/rabble","followers_url":"https://api.github.com/users/rabble/followers","following_url":"https://api.github.com/users/rabble/following{/other_user}","gists_url":"https://api.github.com/users/rabble/gists{/gist_id}","starred_url":"https://api.github.com/users/rabble/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rabble/subscriptions","organizations_url":"https://api.github.com/users/rabble/orgs","repos_url":"https://api.github.com/users/rabble/repos","events_url":"https://api.github.com/users/rabble/events{/privacy}","received_events_url":"https://api.github.com/users/rabble/received_events","type":"User"},{"login":"benburkert","id":77,"avatar_url":"https://secure.gravatar.com/avatar/4d1c9dad17af98e55cb65b4efce27c42?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"4d1c9dad17af98e55cb65b4efce27c42","url":"https://api.github.com/users/benburkert","html_url":"https://github.com/benburkert","followers_url":"https://api.github.com/users/benburkert/followers","following_url":"https://api.github.com/users/benburkert/following{/other_user}","gists_url":"https://api.github.com/users/benburkert/gists{/gist_id}","starred_url":"https://api.github.com/users/benburkert/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/benburkert/subscriptions","organizations_url":"https://api.github.com/users/benburkert/orgs","repos_url":"https://api.github.com/users/benburkert/repos","events_url":"https://api.github.com/users/benburkert/events{/privacy}","received_events_url":"https://api.github.com/users/benburkert/received_events","type":"User"},{"login":"indirect","id":78,"avatar_url":"https://secure.gravatar.com/avatar/4c3ed917e59156a36212d48155831482?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"4c3ed917e59156a36212d48155831482","url":"https://api.github.com/users/indirect","html_url":"https://github.com/indirect","followers_url":"https://api.github.com/users/indirect/followers","following_url":"https://api.github.com/users/indirect/following{/other_user}","gists_url":"https://api.github.com/users/indirect/gists{/gist_id}","starred_url":"https://api.github.com/users/indirect/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/indirect/subscriptions","organizations_url":"https://api.github.com/users/indirect/orgs","repos_url":"https://api.github.com/users/indirect/repos","events_url":"https://api.github.com/users/indirect/events{/privacy}","received_events_url":"https://api.github.com/users/indirect/received_events","type":"User"},{"login":"fearoffish","id":79,"avatar_url":"https://secure.gravatar.com/avatar/68997894c112b0878885ef2d8ac065eb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"68997894c112b0878885ef2d8ac065eb","url":"https://api.github.com/users/fearoffish","html_url":"https://github.com/fearoffish","followers_url":"https://api.github.com/users/fearoffish/followers","following_url":"https://api.github.com/users/fearoffish/following{/other_user}","gists_url":"https://api.github.com/users/fearoffish/gists{/gist_id}","starred_url":"https://api.github.com/users/fearoffish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fearoffish/subscriptions","organizations_url":"https://api.github.com/users/fearoffish/orgs","repos_url":"https://api.github.com/users/fearoffish/repos","events_url":"https://api.github.com/users/fearoffish/events{/privacy}","received_events_url":"https://api.github.com/users/fearoffish/received_events","type":"User"},{"login":"ry","id":80,"avatar_url":"https://secure.gravatar.com/avatar/b984299ceb40752b58146714eb192554?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b984299ceb40752b58146714eb192554","url":"https://api.github.com/users/ry","html_url":"https://github.com/ry","followers_url":"https://api.github.com/users/ry/followers","following_url":"https://api.github.com/users/ry/following{/other_user}","gists_url":"https://api.github.com/users/ry/gists{/gist_id}","starred_url":"https://api.github.com/users/ry/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ry/subscriptions","organizations_url":"https://api.github.com/users/ry/orgs","repos_url":"https://api.github.com/users/ry/repos","events_url":"https://api.github.com/users/ry/events{/privacy}","received_events_url":"https://api.github.com/users/ry/received_events","type":"User"},{"login":"engineyard","id":81,"avatar_url":"https://secure.gravatar.com/avatar/27f95ff21f0a4b94a72de0e8f780d4d2?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","gravatar_id":"27f95ff21f0a4b94a72de0e8f780d4d2","url":"https://api.github.com/users/engineyard","html_url":"https://github.com/engineyard","followers_url":"https://api.github.com/users/engineyard/followers","following_url":"https://api.github.com/users/engineyard/following{/other_user}","gists_url":"https://api.github.com/users/engineyard/gists{/gist_id}","starred_url":"https://api.github.com/users/engineyard/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/engineyard/subscriptions","organizations_url":"https://api.github.com/users/engineyard/orgs","repos_url":"https://api.github.com/users/engineyard/repos","events_url":"https://api.github.com/users/engineyard/events{/privacy}","received_events_url":"https://api.github.com/users/engineyard/received_events","type":"Organization"},{"login":"jsierles","id":82,"avatar_url":"https://secure.gravatar.com/avatar/1bd957835a856ab9040d96696e0524af?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"1bd957835a856ab9040d96696e0524af","url":"https://api.github.com/users/jsierles","html_url":"https://github.com/jsierles","followers_url":"https://api.github.com/users/jsierles/followers","following_url":"https://api.github.com/users/jsierles/following{/other_user}","gists_url":"https://api.github.com/users/jsierles/gists{/gist_id}","starred_url":"https://api.github.com/users/jsierles/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jsierles/subscriptions","organizations_url":"https://api.github.com/users/jsierles/orgs","repos_url":"https://api.github.com/users/jsierles/repos","events_url":"https://api.github.com/users/jsierles/events{/privacy}","received_events_url":"https://api.github.com/users/jsierles/received_events","type":"User"},{"login":"tweibley","id":83,"avatar_url":"https://secure.gravatar.com/avatar/b145a4e73d5c71886fa9a5438e222d91?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b145a4e73d5c71886fa9a5438e222d91","url":"https://api.github.com/users/tweibley","html_url":"https://github.com/tweibley","followers_url":"https://api.github.com/users/tweibley/followers","following_url":"https://api.github.com/users/tweibley/following{/other_user}","gists_url":"https://api.github.com/users/tweibley/gists{/gist_id}","starred_url":"https://api.github.com/users/tweibley/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tweibley/subscriptions","organizations_url":"https://api.github.com/users/tweibley/orgs","repos_url":"https://api.github.com/users/tweibley/repos","events_url":"https://api.github.com/users/tweibley/events{/privacy}","received_events_url":"https://api.github.com/users/tweibley/received_events","type":"User"},{"login":"peimei","id":84,"avatar_url":"https://secure.gravatar.com/avatar/4ab3cf52f63deb10800e3a3775794bfb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"4ab3cf52f63deb10800e3a3775794bfb","url":"https://api.github.com/users/peimei","html_url":"https://github.com/peimei","followers_url":"https://api.github.com/users/peimei/followers","following_url":"https://api.github.com/users/peimei/following{/other_user}","gists_url":"https://api.github.com/users/peimei/gists{/gist_id}","starred_url":"https://api.github.com/users/peimei/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/peimei/subscriptions","organizations_url":"https://api.github.com/users/peimei/orgs","repos_url":"https://api.github.com/users/peimei/repos","events_url":"https://api.github.com/users/peimei/events{/privacy}","received_events_url":"https://api.github.com/users/peimei/received_events","type":"User"},{"login":"brixen","id":85,"avatar_url":"https://secure.gravatar.com/avatar/a8e44ce1b57c2689d5a7172d15df42b5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"a8e44ce1b57c2689d5a7172d15df42b5","url":"https://api.github.com/users/brixen","html_url":"https://github.com/brixen","followers_url":"https://api.github.com/users/brixen/followers","following_url":"https://api.github.com/users/brixen/following{/other_user}","gists_url":"https://api.github.com/users/brixen/gists{/gist_id}","starred_url":"https://api.github.com/users/brixen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/brixen/subscriptions","organizations_url":"https://api.github.com/users/brixen/orgs","repos_url":"https://api.github.com/users/brixen/repos","events_url":"https://api.github.com/users/brixen/events{/privacy}","received_events_url":"https://api.github.com/users/brixen/received_events","type":"User"},{"login":"tmornini","id":87,"avatar_url":"https://secure.gravatar.com/avatar/1b6d52da24b30bae630ee0993372ee1e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"1b6d52da24b30bae630ee0993372ee1e","url":"https://api.github.com/users/tmornini","html_url":"https://github.com/tmornini","followers_url":"https://api.github.com/users/tmornini/followers","following_url":"https://api.github.com/users/tmornini/following{/other_user}","gists_url":"https://api.github.com/users/tmornini/gists{/gist_id}","starred_url":"https://api.github.com/users/tmornini/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tmornini/subscriptions","organizations_url":"https://api.github.com/users/tmornini/orgs","repos_url":"https://api.github.com/users/tmornini/repos","events_url":"https://api.github.com/users/tmornini/events{/privacy}","received_events_url":"https://api.github.com/users/tmornini/received_events","type":"User"},{"login":"outerim","id":88,"avatar_url":"https://secure.gravatar.com/avatar/dc5c452fdda58299526be1ad75416ad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"dc5c452fdda58299526be1ad75416ad5","url":"https://api.github.com/users/outerim","html_url":"https://github.com/outerim","followers_url":"https://api.github.com/users/outerim/followers","following_url":"https://api.github.com/users/outerim/following{/other_user}","gists_url":"https://api.github.com/users/outerim/gists{/gist_id}","starred_url":"https://api.github.com/users/outerim/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/outerim/subscriptions","organizations_url":"https://api.github.com/users/outerim/orgs","repos_url":"https://api.github.com/users/outerim/repos","events_url":"https://api.github.com/users/outerim/events{/privacy}","received_events_url":"https://api.github.com/users/outerim/received_events","type":"User"},{"login":"daksis","id":89,"avatar_url":"https://secure.gravatar.com/avatar/ab4480bc43e3f6d845a43fe9659041fd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"ab4480bc43e3f6d845a43fe9659041fd","url":"https://api.github.com/users/daksis","html_url":"https://github.com/daksis","followers_url":"https://api.github.com/users/daksis/followers","following_url":"https://api.github.com/users/daksis/following{/other_user}","gists_url":"https://api.github.com/users/daksis/gists{/gist_id}","starred_url":"https://api.github.com/users/daksis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/daksis/subscriptions","organizations_url":"https://api.github.com/users/daksis/orgs","repos_url":"https://api.github.com/users/daksis/repos","events_url":"https://api.github.com/users/daksis/events{/privacy}","received_events_url":"https://api.github.com/users/daksis/received_events","type":"User"},{"login":"sr","id":90,"avatar_url":"https://secure.gravatar.com/avatar/8cf17bf55c4d16cf52480619bb0b6c92?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8cf17bf55c4d16cf52480619bb0b6c92","url":"https://api.github.com/users/sr","html_url":"https://github.com/sr","followers_url":"https://api.github.com/users/sr/followers","following_url":"https://api.github.com/users/sr/following{/other_user}","gists_url":"https://api.github.com/users/sr/gists{/gist_id}","starred_url":"https://api.github.com/users/sr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sr/subscriptions","organizations_url":"https://api.github.com/users/sr/orgs","repos_url":"https://api.github.com/users/sr/repos","events_url":"https://api.github.com/users/sr/events{/privacy}","received_events_url":"https://api.github.com/users/sr/received_events","type":"User"},{"login":"lifo","id":91,"avatar_url":"https://secure.gravatar.com/avatar/a05834e9b5954947eb0ba3b570c47d5e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"a05834e9b5954947eb0ba3b570c47d5e","url":"https://api.github.com/users/lifo","html_url":"https://github.com/lifo","followers_url":"https://api.github.com/users/lifo/followers","following_url":"https://api.github.com/users/lifo/following{/other_user}","gists_url":"https://api.github.com/users/lifo/gists{/gist_id}","starred_url":"https://api.github.com/users/lifo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lifo/subscriptions","organizations_url":"https://api.github.com/users/lifo/orgs","repos_url":"https://api.github.com/users/lifo/repos","events_url":"https://api.github.com/users/lifo/events{/privacy}","received_events_url":"https://api.github.com/users/lifo/received_events","type":"User"},{"login":"rsl","id":92,"avatar_url":"https://secure.gravatar.com/avatar/70225136eacd3d870f64e03bff678655?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"70225136eacd3d870f64e03bff678655","url":"https://api.github.com/users/rsl","html_url":"https://github.com/rsl","followers_url":"https://api.github.com/users/rsl/followers","following_url":"https://api.github.com/users/rsl/following{/other_user}","gists_url":"https://api.github.com/users/rsl/gists{/gist_id}","starred_url":"https://api.github.com/users/rsl/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rsl/subscriptions","organizations_url":"https://api.github.com/users/rsl/orgs","repos_url":"https://api.github.com/users/rsl/repos","events_url":"https://api.github.com/users/rsl/events{/privacy}","received_events_url":"https://api.github.com/users/rsl/received_events","type":"User"},{"login":"imownbey","id":93,"avatar_url":"https://secure.gravatar.com/avatar/1df2bf5b0af6ab60c1e0103098023976?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"1df2bf5b0af6ab60c1e0103098023976","url":"https://api.github.com/users/imownbey","html_url":"https://github.com/imownbey","followers_url":"https://api.github.com/users/imownbey/followers","following_url":"https://api.github.com/users/imownbey/following{/other_user}","gists_url":"https://api.github.com/users/imownbey/gists{/gist_id}","starred_url":"https://api.github.com/users/imownbey/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/imownbey/subscriptions","organizations_url":"https://api.github.com/users/imownbey/orgs","repos_url":"https://api.github.com/users/imownbey/repos","events_url":"https://api.github.com/users/imownbey/events{/privacy}","received_events_url":"https://api.github.com/users/imownbey/received_events","type":"User"},{"login":"dylanegan","id":94,"avatar_url":"https://secure.gravatar.com/avatar/a843658f82ac78a00e135b851467b2d3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"a843658f82ac78a00e135b851467b2d3","url":"https://api.github.com/users/dylanegan","html_url":"https://github.com/dylanegan","followers_url":"https://api.github.com/users/dylanegan/followers","following_url":"https://api.github.com/users/dylanegan/following{/other_user}","gists_url":"https://api.github.com/users/dylanegan/gists{/gist_id}","starred_url":"https://api.github.com/users/dylanegan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dylanegan/subscriptions","organizations_url":"https://api.github.com/users/dylanegan/orgs","repos_url":"https://api.github.com/users/dylanegan/repos","events_url":"https://api.github.com/users/dylanegan/events{/privacy}","received_events_url":"https://api.github.com/users/dylanegan/received_events","type":"User"},{"login":"jm","id":95,"avatar_url":"https://secure.gravatar.com/avatar/6ac41c39b6087f6e059f31903ffc003e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"6ac41c39b6087f6e059f31903ffc003e","url":"https://api.github.com/users/jm","html_url":"https://github.com/jm","followers_url":"https://api.github.com/users/jm/followers","following_url":"https://api.github.com/users/jm/following{/other_user}","gists_url":"https://api.github.com/users/jm/gists{/gist_id}","starred_url":"https://api.github.com/users/jm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jm/subscriptions","organizations_url":"https://api.github.com/users/jm/orgs","repos_url":"https://api.github.com/users/jm/repos","events_url":"https://api.github.com/users/jm/events{/privacy}","received_events_url":"https://api.github.com/users/jm/received_events","type":"User"},{"login":"willcodeforfoo","id":100,"avatar_url":"https://secure.gravatar.com/avatar/6a2f7f7a997fab1dbf815d155cca50ee?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"6a2f7f7a997fab1dbf815d155cca50ee","url":"https://api.github.com/users/willcodeforfoo","html_url":"https://github.com/willcodeforfoo","followers_url":"https://api.github.com/users/willcodeforfoo/followers","following_url":"https://api.github.com/users/willcodeforfoo/following{/other_user}","gists_url":"https://api.github.com/users/willcodeforfoo/gists{/gist_id}","starred_url":"https://api.github.com/users/willcodeforfoo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/willcodeforfoo/subscriptions","organizations_url":"https://api.github.com/users/willcodeforfoo/orgs","repos_url":"https://api.github.com/users/willcodeforfoo/repos","events_url":"https://api.github.com/users/willcodeforfoo/events{/privacy}","received_events_url":"https://api.github.com/users/willcodeforfoo/received_events","type":"User"},{"login":"jvantuyl","id":101,"avatar_url":"https://secure.gravatar.com/avatar/ae92f1b2f224075cf8604bf608a5f88c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"ae92f1b2f224075cf8604bf608a5f88c","url":"https://api.github.com/users/jvantuyl","html_url":"https://github.com/jvantuyl","followers_url":"https://api.github.com/users/jvantuyl/followers","following_url":"https://api.github.com/users/jvantuyl/following{/other_user}","gists_url":"https://api.github.com/users/jvantuyl/gists{/gist_id}","starred_url":"https://api.github.com/users/jvantuyl/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jvantuyl/subscriptions","organizations_url":"https://api.github.com/users/jvantuyl/orgs","repos_url":"https://api.github.com/users/jvantuyl/repos","events_url":"https://api.github.com/users/jvantuyl/events{/privacy}","received_events_url":"https://api.github.com/users/jvantuyl/received_events","type":"User"},{"login":"BrianTheCoder","id":102,"avatar_url":"https://secure.gravatar.com/avatar/3f91cf60c92b20940674ebdeb46f6582?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3f91cf60c92b20940674ebdeb46f6582","url":"https://api.github.com/users/BrianTheCoder","html_url":"https://github.com/BrianTheCoder","followers_url":"https://api.github.com/users/BrianTheCoder/followers","following_url":"https://api.github.com/users/BrianTheCoder/following{/other_user}","gists_url":"https://api.github.com/users/BrianTheCoder/gists{/gist_id}","starred_url":"https://api.github.com/users/BrianTheCoder/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/BrianTheCoder/subscriptions","organizations_url":"https://api.github.com/users/BrianTheCoder/orgs","repos_url":"https://api.github.com/users/BrianTheCoder/repos","events_url":"https://api.github.com/users/BrianTheCoder/events{/privacy}","received_events_url":"https://api.github.com/users/BrianTheCoder/received_events","type":"User"},{"login":"freeformz","id":103,"avatar_url":"https://secure.gravatar.com/avatar/d0ddef50299354758664f679265746cd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"d0ddef50299354758664f679265746cd","url":"https://api.github.com/users/freeformz","html_url":"https://github.com/freeformz","followers_url":"https://api.github.com/users/freeformz/followers","following_url":"https://api.github.com/users/freeformz/following{/other_user}","gists_url":"https://api.github.com/users/freeformz/gists{/gist_id}","starred_url":"https://api.github.com/users/freeformz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/freeformz/subscriptions","organizations_url":"https://api.github.com/users/freeformz/orgs","repos_url":"https://api.github.com/users/freeformz/repos","events_url":"https://api.github.com/users/freeformz/events{/privacy}","received_events_url":"https://api.github.com/users/freeformz/received_events","type":"User"},{"login":"hassox","id":104,"avatar_url":"https://secure.gravatar.com/avatar/9d1f5d2d9de70bd9a934f557dc95a406?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"9d1f5d2d9de70bd9a934f557dc95a406","url":"https://api.github.com/users/hassox","html_url":"https://github.com/hassox","followers_url":"https://api.github.com/users/hassox/followers","following_url":"https://api.github.com/users/hassox/following{/other_user}","gists_url":"https://api.github.com/users/hassox/gists{/gist_id}","starred_url":"https://api.github.com/users/hassox/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hassox/subscriptions","organizations_url":"https://api.github.com/users/hassox/orgs","repos_url":"https://api.github.com/users/hassox/repos","events_url":"https://api.github.com/users/hassox/events{/privacy}","received_events_url":"https://api.github.com/users/hassox/received_events","type":"User"},{"login":"automatthew","id":105,"avatar_url":"https://secure.gravatar.com/avatar/491d5a2b6e9c9346e2d67da31a633457?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"491d5a2b6e9c9346e2d67da31a633457","url":"https://api.github.com/users/automatthew","html_url":"https://github.com/automatthew","followers_url":"https://api.github.com/users/automatthew/followers","following_url":"https://api.github.com/users/automatthew/following{/other_user}","gists_url":"https://api.github.com/users/automatthew/gists{/gist_id}","starred_url":"https://api.github.com/users/automatthew/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/automatthew/subscriptions","organizations_url":"https://api.github.com/users/automatthew/orgs","repos_url":"https://api.github.com/users/automatthew/repos","events_url":"https://api.github.com/users/automatthew/events{/privacy}","received_events_url":"https://api.github.com/users/automatthew/received_events","type":"User"},{"login":"queso","id":106,"avatar_url":"https://secure.gravatar.com/avatar/089ddf30c09022b92363dd0d8ce2bdfd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"089ddf30c09022b92363dd0d8ce2bdfd","url":"https://api.github.com/users/queso","html_url":"https://github.com/queso","followers_url":"https://api.github.com/users/queso/followers","following_url":"https://api.github.com/users/queso/following{/other_user}","gists_url":"https://api.github.com/users/queso/gists{/gist_id}","starred_url":"https://api.github.com/users/queso/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/queso/subscriptions","organizations_url":"https://api.github.com/users/queso/orgs","repos_url":"https://api.github.com/users/queso/repos","events_url":"https://api.github.com/users/queso/events{/privacy}","received_events_url":"https://api.github.com/users/queso/received_events","type":"User"},{"login":"lancecarlson","id":107,"avatar_url":"https://secure.gravatar.com/avatar/4f2a6021d0a8e02fe6dcce1a202f251f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"4f2a6021d0a8e02fe6dcce1a202f251f","url":"https://api.github.com/users/lancecarlson","html_url":"https://github.com/lancecarlson","followers_url":"https://api.github.com/users/lancecarlson/followers","following_url":"https://api.github.com/users/lancecarlson/following{/other_user}","gists_url":"https://api.github.com/users/lancecarlson/gists{/gist_id}","starred_url":"https://api.github.com/users/lancecarlson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lancecarlson/subscriptions","organizations_url":"https://api.github.com/users/lancecarlson/orgs","repos_url":"https://api.github.com/users/lancecarlson/repos","events_url":"https://api.github.com/users/lancecarlson/events{/privacy}","received_events_url":"https://api.github.com/users/lancecarlson/received_events","type":"User"},{"login":"drnic","id":108,"avatar_url":"https://secure.gravatar.com/avatar/cb2b768a5e546b24052ea03334e43676?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"cb2b768a5e546b24052ea03334e43676","url":"https://api.github.com/users/drnic","html_url":"https://github.com/drnic","followers_url":"https://api.github.com/users/drnic/followers","following_url":"https://api.github.com/users/drnic/following{/other_user}","gists_url":"https://api.github.com/users/drnic/gists{/gist_id}","starred_url":"https://api.github.com/users/drnic/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/drnic/subscriptions","organizations_url":"https://api.github.com/users/drnic/orgs","repos_url":"https://api.github.com/users/drnic/repos","events_url":"https://api.github.com/users/drnic/events{/privacy}","received_events_url":"https://api.github.com/users/drnic/received_events","type":"User"},{"login":"lukesutton","id":109,"avatar_url":"https://secure.gravatar.com/avatar/a3017ef8782075ffe81b8b3afd464c5f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"a3017ef8782075ffe81b8b3afd464c5f","url":"https://api.github.com/users/lukesutton","html_url":"https://github.com/lukesutton","followers_url":"https://api.github.com/users/lukesutton/followers","following_url":"https://api.github.com/users/lukesutton/following{/other_user}","gists_url":"https://api.github.com/users/lukesutton/gists{/gist_id}","starred_url":"https://api.github.com/users/lukesutton/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lukesutton/subscriptions","organizations_url":"https://api.github.com/users/lukesutton/orgs","repos_url":"https://api.github.com/users/lukesutton/repos","events_url":"https://api.github.com/users/lukesutton/events{/privacy}","received_events_url":"https://api.github.com/users/lukesutton/received_events","type":"User"},{"login":"danwrong","id":110,"avatar_url":"https://secure.gravatar.com/avatar/0727907ae68db2e8ebc1ea1b01f00d69?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"0727907ae68db2e8ebc1ea1b01f00d69","url":"https://api.github.com/users/danwrong","html_url":"https://github.com/danwrong","followers_url":"https://api.github.com/users/danwrong/followers","following_url":"https://api.github.com/users/danwrong/following{/other_user}","gists_url":"https://api.github.com/users/danwrong/gists{/gist_id}","starred_url":"https://api.github.com/users/danwrong/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danwrong/subscriptions","organizations_url":"https://api.github.com/users/danwrong/orgs","repos_url":"https://api.github.com/users/danwrong/repos","events_url":"https://api.github.com/users/danwrong/events{/privacy}","received_events_url":"https://api.github.com/users/danwrong/received_events","type":"User"},{"login":"hcatlin","id":111,"avatar_url":"https://secure.gravatar.com/avatar/a77873df3a9766b208e009248a2a9a56?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"a77873df3a9766b208e009248a2a9a56","url":"https://api.github.com/users/hcatlin","html_url":"https://github.com/hcatlin","followers_url":"https://api.github.com/users/hcatlin/followers","following_url":"https://api.github.com/users/hcatlin/following{/other_user}","gists_url":"https://api.github.com/users/hcatlin/gists{/gist_id}","starred_url":"https://api.github.com/users/hcatlin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hcatlin/subscriptions","organizations_url":"https://api.github.com/users/hcatlin/orgs","repos_url":"https://api.github.com/users/hcatlin/repos","events_url":"https://api.github.com/users/hcatlin/events{/privacy}","received_events_url":"https://api.github.com/users/hcatlin/received_events","type":"User"},{"login":"jfrost","id":112,"avatar_url":"https://secure.gravatar.com/avatar/0be47dc418f1d83d42e4387b0cd129e7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"0be47dc418f1d83d42e4387b0cd129e7","url":"https://api.github.com/users/jfrost","html_url":"https://github.com/jfrost","followers_url":"https://api.github.com/users/jfrost/followers","following_url":"https://api.github.com/users/jfrost/following{/other_user}","gists_url":"https://api.github.com/users/jfrost/gists{/gist_id}","starred_url":"https://api.github.com/users/jfrost/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jfrost/subscriptions","organizations_url":"https://api.github.com/users/jfrost/orgs","repos_url":"https://api.github.com/users/jfrost/repos","events_url":"https://api.github.com/users/jfrost/events{/privacy}","received_events_url":"https://api.github.com/users/jfrost/received_events","type":"User"},{"login":"mattetti","id":113,"avatar_url":"https://secure.gravatar.com/avatar/c69521d6e22fc0bbd69337ec8b1698df?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"c69521d6e22fc0bbd69337ec8b1698df","url":"https://api.github.com/users/mattetti","html_url":"https://github.com/mattetti","followers_url":"https://api.github.com/users/mattetti/followers","following_url":"https://api.github.com/users/mattetti/following{/other_user}","gists_url":"https://api.github.com/users/mattetti/gists{/gist_id}","starred_url":"https://api.github.com/users/mattetti/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mattetti/subscriptions","organizations_url":"https://api.github.com/users/mattetti/orgs","repos_url":"https://api.github.com/users/mattetti/repos","events_url":"https://api.github.com/users/mattetti/events{/privacy}","received_events_url":"https://api.github.com/users/mattetti/received_events","type":"User"},{"login":"ctennis","id":114,"avatar_url":"https://secure.gravatar.com/avatar/19857df1802f5eeec3dc7e359d757fca?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"19857df1802f5eeec3dc7e359d757fca","url":"https://api.github.com/users/ctennis","html_url":"https://github.com/ctennis","followers_url":"https://api.github.com/users/ctennis/followers","following_url":"https://api.github.com/users/ctennis/following{/other_user}","gists_url":"https://api.github.com/users/ctennis/gists{/gist_id}","starred_url":"https://api.github.com/users/ctennis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ctennis/subscriptions","organizations_url":"https://api.github.com/users/ctennis/orgs","repos_url":"https://api.github.com/users/ctennis/repos","events_url":"https://api.github.com/users/ctennis/events{/privacy}","received_events_url":"https://api.github.com/users/ctennis/received_events","type":"User"},{"login":"lawrencepit","id":115,"avatar_url":"https://secure.gravatar.com/avatar/a31c2c26350e9e2b07fbd99fbd5ff520?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"a31c2c26350e9e2b07fbd99fbd5ff520","url":"https://api.github.com/users/lawrencepit","html_url":"https://github.com/lawrencepit","followers_url":"https://api.github.com/users/lawrencepit/followers","following_url":"https://api.github.com/users/lawrencepit/following{/other_user}","gists_url":"https://api.github.com/users/lawrencepit/gists{/gist_id}","starred_url":"https://api.github.com/users/lawrencepit/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lawrencepit/subscriptions","organizations_url":"https://api.github.com/users/lawrencepit/orgs","repos_url":"https://api.github.com/users/lawrencepit/repos","events_url":"https://api.github.com/users/lawrencepit/events{/privacy}","received_events_url":"https://api.github.com/users/lawrencepit/received_events","type":"User"},{"login":"marcjeanson","id":116,"avatar_url":"https://secure.gravatar.com/avatar/da5b4f39ce382519beb6dfb8fe12b560?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"da5b4f39ce382519beb6dfb8fe12b560","url":"https://api.github.com/users/marcjeanson","html_url":"https://github.com/marcjeanson","followers_url":"https://api.github.com/users/marcjeanson/followers","following_url":"https://api.github.com/users/marcjeanson/following{/other_user}","gists_url":"https://api.github.com/users/marcjeanson/gists{/gist_id}","starred_url":"https://api.github.com/users/marcjeanson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/marcjeanson/subscriptions","organizations_url":"https://api.github.com/users/marcjeanson/orgs","repos_url":"https://api.github.com/users/marcjeanson/repos","events_url":"https://api.github.com/users/marcjeanson/events{/privacy}","received_events_url":"https://api.github.com/users/marcjeanson/received_events","type":"User"},{"login":"grempe","id":117,"avatar_url":"https://secure.gravatar.com/avatar/126e4e797131e8bf3adc528c6a4d78ec?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"126e4e797131e8bf3adc528c6a4d78ec","url":"https://api.github.com/users/grempe","html_url":"https://github.com/grempe","followers_url":"https://api.github.com/users/grempe/followers","following_url":"https://api.github.com/users/grempe/following{/other_user}","gists_url":"https://api.github.com/users/grempe/gists{/gist_id}","starred_url":"https://api.github.com/users/grempe/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/grempe/subscriptions","organizations_url":"https://api.github.com/users/grempe/orgs","repos_url":"https://api.github.com/users/grempe/repos","events_url":"https://api.github.com/users/grempe/events{/privacy}","received_events_url":"https://api.github.com/users/grempe/received_events","type":"User"},{"login":"peterc","id":118,"avatar_url":"https://secure.gravatar.com/avatar/6268c7528d855f1cef5696a00d159909?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"6268c7528d855f1cef5696a00d159909","url":"https://api.github.com/users/peterc","html_url":"https://github.com/peterc","followers_url":"https://api.github.com/users/peterc/followers","following_url":"https://api.github.com/users/peterc/following{/other_user}","gists_url":"https://api.github.com/users/peterc/gists{/gist_id}","starred_url":"https://api.github.com/users/peterc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/peterc/subscriptions","organizations_url":"https://api.github.com/users/peterc/orgs","repos_url":"https://api.github.com/users/peterc/repos","events_url":"https://api.github.com/users/peterc/events{/privacy}","received_events_url":"https://api.github.com/users/peterc/received_events","type":"User"},{"login":"ministrycentered","id":119,"avatar_url":"https://secure.gravatar.com/avatar/f7e31611579183a67d8290ac024418b2?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","gravatar_id":"f7e31611579183a67d8290ac024418b2","url":"https://api.github.com/users/ministrycentered","html_url":"https://github.com/ministrycentered","followers_url":"https://api.github.com/users/ministrycentered/followers","following_url":"https://api.github.com/users/ministrycentered/following{/other_user}","gists_url":"https://api.github.com/users/ministrycentered/gists{/gist_id}","starred_url":"https://api.github.com/users/ministrycentered/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ministrycentered/subscriptions","organizations_url":"https://api.github.com/users/ministrycentered/orgs","repos_url":"https://api.github.com/users/ministrycentered/repos","events_url":"https://api.github.com/users/ministrycentered/events{/privacy}","received_events_url":"https://api.github.com/users/ministrycentered/received_events","type":"Organization"},{"login":"afarnham","id":120,"avatar_url":"https://secure.gravatar.com/avatar/887a033f9f60352145a49e8a3b5178af?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"887a033f9f60352145a49e8a3b5178af","url":"https://api.github.com/users/afarnham","html_url":"https://github.com/afarnham","followers_url":"https://api.github.com/users/afarnham/followers","following_url":"https://api.github.com/users/afarnham/following{/other_user}","gists_url":"https://api.github.com/users/afarnham/gists{/gist_id}","starred_url":"https://api.github.com/users/afarnham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/afarnham/subscriptions","organizations_url":"https://api.github.com/users/afarnham/orgs","repos_url":"https://api.github.com/users/afarnham/repos","events_url":"https://api.github.com/users/afarnham/events{/privacy}","received_events_url":"https://api.github.com/users/afarnham/received_events","type":"User"},{"login":"up_the_irons","id":121,"avatar_url":"https://secure.gravatar.com/avatar/d9ae72d7364c7909a0a4b02cba72438a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"d9ae72d7364c7909a0a4b02cba72438a","url":"https://api.github.com/users/up_the_irons","html_url":"https://github.com/up_the_irons","followers_url":"https://api.github.com/users/up_the_irons/followers","following_url":"https://api.github.com/users/up_the_irons/following{/other_user}","gists_url":"https://api.github.com/users/up_the_irons/gists{/gist_id}","starred_url":"https://api.github.com/users/up_the_irons/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/up_the_irons/subscriptions","organizations_url":"https://api.github.com/users/up_the_irons/orgs","repos_url":"https://api.github.com/users/up_the_irons/repos","events_url":"https://api.github.com/users/up_the_irons/events{/privacy}","received_events_url":"https://api.github.com/users/up_the_irons/received_events","type":"User"},{"login":"evilchelu","id":122,"avatar_url":"https://secure.gravatar.com/avatar/0e8c5f8d88cfc1aeeb59acdcc8aad387?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"0e8c5f8d88cfc1aeeb59acdcc8aad387","url":"https://api.github.com/users/evilchelu","html_url":"https://github.com/evilchelu","followers_url":"https://api.github.com/users/evilchelu/followers","following_url":"https://api.github.com/users/evilchelu/following{/other_user}","gists_url":"https://api.github.com/users/evilchelu/gists{/gist_id}","starred_url":"https://api.github.com/users/evilchelu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/evilchelu/subscriptions","organizations_url":"https://api.github.com/users/evilchelu/orgs","repos_url":"https://api.github.com/users/evilchelu/repos","events_url":"https://api.github.com/users/evilchelu/events{/privacy}","received_events_url":"https://api.github.com/users/evilchelu/received_events","type":"User"},{"login":"heavysixer","id":123,"avatar_url":"https://secure.gravatar.com/avatar/1442971a09a48a3a81f2eabe6adcd7a3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"1442971a09a48a3a81f2eabe6adcd7a3","url":"https://api.github.com/users/heavysixer","html_url":"https://github.com/heavysixer","followers_url":"https://api.github.com/users/heavysixer/followers","following_url":"https://api.github.com/users/heavysixer/following{/other_user}","gists_url":"https://api.github.com/users/heavysixer/gists{/gist_id}","starred_url":"https://api.github.com/users/heavysixer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/heavysixer/subscriptions","organizations_url":"https://api.github.com/users/heavysixer/orgs","repos_url":"https://api.github.com/users/heavysixer/repos","events_url":"https://api.github.com/users/heavysixer/events{/privacy}","received_events_url":"https://api.github.com/users/heavysixer/received_events","type":"User"},{"login":"brosner","id":124,"avatar_url":"https://secure.gravatar.com/avatar/b7472bc7aa45c70641c299e9408b78ab?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b7472bc7aa45c70641c299e9408b78ab","url":"https://api.github.com/users/brosner","html_url":"https://github.com/brosner","followers_url":"https://api.github.com/users/brosner/followers","following_url":"https://api.github.com/users/brosner/following{/other_user}","gists_url":"https://api.github.com/users/brosner/gists{/gist_id}","starred_url":"https://api.github.com/users/brosner/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/brosner/subscriptions","organizations_url":"https://api.github.com/users/brosner/orgs","repos_url":"https://api.github.com/users/brosner/repos","events_url":"https://api.github.com/users/brosner/events{/privacy}","received_events_url":"https://api.github.com/users/brosner/received_events","type":"User"},{"login":"danielmorrison","id":125,"avatar_url":"https://secure.gravatar.com/avatar/16ae5c2e160af3bdb60db447c092985d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"16ae5c2e160af3bdb60db447c092985d","url":"https://api.github.com/users/danielmorrison","html_url":"https://github.com/danielmorrison","followers_url":"https://api.github.com/users/danielmorrison/followers","following_url":"https://api.github.com/users/danielmorrison/following{/other_user}","gists_url":"https://api.github.com/users/danielmorrison/gists{/gist_id}","starred_url":"https://api.github.com/users/danielmorrison/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danielmorrison/subscriptions","organizations_url":"https://api.github.com/users/danielmorrison/orgs","repos_url":"https://api.github.com/users/danielmorrison/repos","events_url":"https://api.github.com/users/danielmorrison/events{/privacy}","received_events_url":"https://api.github.com/users/danielmorrison/received_events","type":"User"},{"login":"danielharan","id":126,"avatar_url":"https://secure.gravatar.com/avatar/880cbab435f00197613c9cc2065b4f5a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"880cbab435f00197613c9cc2065b4f5a","url":"https://api.github.com/users/danielharan","html_url":"https://github.com/danielharan","followers_url":"https://api.github.com/users/danielharan/followers","following_url":"https://api.github.com/users/danielharan/following{/other_user}","gists_url":"https://api.github.com/users/danielharan/gists{/gist_id}","starred_url":"https://api.github.com/users/danielharan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danielharan/subscriptions","organizations_url":"https://api.github.com/users/danielharan/orgs","repos_url":"https://api.github.com/users/danielharan/repos","events_url":"https://api.github.com/users/danielharan/events{/privacy}","received_events_url":"https://api.github.com/users/danielharan/received_events","type":"User"},{"login":"kvnsmth","id":127,"avatar_url":"https://secure.gravatar.com/avatar/4ecc54f97b9dfb424565edd96eca2fed?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"4ecc54f97b9dfb424565edd96eca2fed","url":"https://api.github.com/users/kvnsmth","html_url":"https://github.com/kvnsmth","followers_url":"https://api.github.com/users/kvnsmth/followers","following_url":"https://api.github.com/users/kvnsmth/following{/other_user}","gists_url":"https://api.github.com/users/kvnsmth/gists{/gist_id}","starred_url":"https://api.github.com/users/kvnsmth/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kvnsmth/subscriptions","organizations_url":"https://api.github.com/users/kvnsmth/orgs","repos_url":"https://api.github.com/users/kvnsmth/repos","events_url":"https://api.github.com/users/kvnsmth/events{/privacy}","received_events_url":"https://api.github.com/users/kvnsmth/received_events","type":"User"},{"login":"collectiveidea","id":128,"avatar_url":"https://secure.gravatar.com/avatar/13ff8dc8c2bf2a4752816e1e3f201a05?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","gravatar_id":"13ff8dc8c2bf2a4752816e1e3f201a05","url":"https://api.github.com/users/collectiveidea","html_url":"https://github.com/collectiveidea","followers_url":"https://api.github.com/users/collectiveidea/followers","following_url":"https://api.github.com/users/collectiveidea/following{/other_user}","gists_url":"https://api.github.com/users/collectiveidea/gists{/gist_id}","starred_url":"https://api.github.com/users/collectiveidea/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collectiveidea/subscriptions","organizations_url":"https://api.github.com/users/collectiveidea/orgs","repos_url":"https://api.github.com/users/collectiveidea/repos","events_url":"https://api.github.com/users/collectiveidea/events{/privacy}","received_events_url":"https://api.github.com/users/collectiveidea/received_events","type":"Organization"},{"login":"canadaduane","id":129,"avatar_url":"https://secure.gravatar.com/avatar/d8cb8c8cd40ddf0cd05241443a591868?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"d8cb8c8cd40ddf0cd05241443a591868","url":"https://api.github.com/users/canadaduane","html_url":"https://github.com/canadaduane","followers_url":"https://api.github.com/users/canadaduane/followers","following_url":"https://api.github.com/users/canadaduane/following{/other_user}","gists_url":"https://api.github.com/users/canadaduane/gists{/gist_id}","starred_url":"https://api.github.com/users/canadaduane/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/canadaduane/subscriptions","organizations_url":"https://api.github.com/users/canadaduane/orgs","repos_url":"https://api.github.com/users/canadaduane/repos","events_url":"https://api.github.com/users/canadaduane/events{/privacy}","received_events_url":"https://api.github.com/users/canadaduane/received_events","type":"User"},{"login":"nate","id":130,"avatar_url":"https://secure.gravatar.com/avatar/42ccb9ab63769b88ce6d44d6b0b869da?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"42ccb9ab63769b88ce6d44d6b0b869da","url":"https://api.github.com/users/nate","html_url":"https://github.com/nate","followers_url":"https://api.github.com/users/nate/followers","following_url":"https://api.github.com/users/nate/following{/other_user}","gists_url":"https://api.github.com/users/nate/gists{/gist_id}","starred_url":"https://api.github.com/users/nate/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nate/subscriptions","organizations_url":"https://api.github.com/users/nate/orgs","repos_url":"https://api.github.com/users/nate/repos","events_url":"https://api.github.com/users/nate/events{/privacy}","received_events_url":"https://api.github.com/users/nate/received_events","type":"User"},{"login":"dstrelau","id":131,"avatar_url":"https://secure.gravatar.com/avatar/41134a2aaccc46d2c00689e3a7e26b3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"41134a2aaccc46d2c00689e3a7e26b3f","url":"https://api.github.com/users/dstrelau","html_url":"https://github.com/dstrelau","followers_url":"https://api.github.com/users/dstrelau/followers","following_url":"https://api.github.com/users/dstrelau/following{/other_user}","gists_url":"https://api.github.com/users/dstrelau/gists{/gist_id}","starred_url":"https://api.github.com/users/dstrelau/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dstrelau/subscriptions","organizations_url":"https://api.github.com/users/dstrelau/orgs","repos_url":"https://api.github.com/users/dstrelau/repos","events_url":"https://api.github.com/users/dstrelau/events{/privacy}","received_events_url":"https://api.github.com/users/dstrelau/received_events","type":"User"},{"login":"sunny","id":132,"avatar_url":"https://secure.gravatar.com/avatar/3798b6a0f8feb12ef3639b95ce977f68?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3798b6a0f8feb12ef3639b95ce977f68","url":"https://api.github.com/users/sunny","html_url":"https://github.com/sunny","followers_url":"https://api.github.com/users/sunny/followers","following_url":"https://api.github.com/users/sunny/following{/other_user}","gists_url":"https://api.github.com/users/sunny/gists{/gist_id}","starred_url":"https://api.github.com/users/sunny/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sunny/subscriptions","organizations_url":"https://api.github.com/users/sunny/orgs","repos_url":"https://api.github.com/users/sunny/repos","events_url":"https://api.github.com/users/sunny/events{/privacy}","received_events_url":"https://api.github.com/users/sunny/received_events","type":"User"},{"login":"dkubb","id":133,"avatar_url":"https://secure.gravatar.com/avatar/7c92608db4acf7a44337670eff6ce5bc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"7c92608db4acf7a44337670eff6ce5bc","url":"https://api.github.com/users/dkubb","html_url":"https://github.com/dkubb","followers_url":"https://api.github.com/users/dkubb/followers","following_url":"https://api.github.com/users/dkubb/following{/other_user}","gists_url":"https://api.github.com/users/dkubb/gists{/gist_id}","starred_url":"https://api.github.com/users/dkubb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dkubb/subscriptions","organizations_url":"https://api.github.com/users/dkubb/orgs","repos_url":"https://api.github.com/users/dkubb/repos","events_url":"https://api.github.com/users/dkubb/events{/privacy}","received_events_url":"https://api.github.com/users/dkubb/received_events","type":"User"},{"login":"jnicklas","id":134,"avatar_url":"https://secure.gravatar.com/avatar/6c469749d725177dd2837d806c769cd4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"6c469749d725177dd2837d806c769cd4","url":"https://api.github.com/users/jnicklas","html_url":"https://github.com/jnicklas","followers_url":"https://api.github.com/users/jnicklas/followers","following_url":"https://api.github.com/users/jnicklas/following{/other_user}","gists_url":"https://api.github.com/users/jnicklas/gists{/gist_id}","starred_url":"https://api.github.com/users/jnicklas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jnicklas/subscriptions","organizations_url":"https://api.github.com/users/jnicklas/orgs","repos_url":"https://api.github.com/users/jnicklas/repos","events_url":"https://api.github.com/users/jnicklas/events{/privacy}","received_events_url":"https://api.github.com/users/jnicklas/received_events","type":"User"},{"login":"richcollins","id":135,"avatar_url":"https://secure.gravatar.com/avatar/f7612335d0011de02dac1436652bf44c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"f7612335d0011de02dac1436652bf44c","url":"https://api.github.com/users/richcollins","html_url":"https://github.com/richcollins","followers_url":"https://api.github.com/users/richcollins/followers","following_url":"https://api.github.com/users/richcollins/following{/other_user}","gists_url":"https://api.github.com/users/richcollins/gists{/gist_id}","starred_url":"https://api.github.com/users/richcollins/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/richcollins/subscriptions","organizations_url":"https://api.github.com/users/richcollins/orgs","repos_url":"https://api.github.com/users/richcollins/repos","events_url":"https://api.github.com/users/richcollins/events{/privacy}","received_events_url":"https://api.github.com/users/richcollins/received_events","type":"User"}] + +https +GET +api.github.com +None +/users?since=135 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4996'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('cache-control', 'max-age=0, private, must-revalidate'), ('vary', 'Accept-Encoding'), ('content-length', '99066'), ('server', 'GitHub.com'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="first"'), ('etag', '"041061592b07c3c1b5b3063baec8316c"'), ('access-control-allow-credentials', 'true'), ('date', 'Tue, 18 Jun 2013 15:43:09 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8')] +[{"login":"simonjefford","id":136,"avatar_url":"https://secure.gravatar.com/avatar/46fd60ea4dde74f3d46fcfd27ed700bf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"46fd60ea4dde74f3d46fcfd27ed700bf","url":"https://api.github.com/users/simonjefford","html_url":"https://github.com/simonjefford","followers_url":"https://api.github.com/users/simonjefford/followers","following_url":"https://api.github.com/users/simonjefford/following{/other_user}","gists_url":"https://api.github.com/users/simonjefford/gists{/gist_id}","starred_url":"https://api.github.com/users/simonjefford/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/simonjefford/subscriptions","organizations_url":"https://api.github.com/users/simonjefford/orgs","repos_url":"https://api.github.com/users/simonjefford/repos","events_url":"https://api.github.com/users/simonjefford/events{/privacy}","received_events_url":"https://api.github.com/users/simonjefford/received_events","type":"User"},{"login":"josh","id":137,"avatar_url":"https://secure.gravatar.com/avatar/bbe5dc8dcf248706525ab76f46185520?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bbe5dc8dcf248706525ab76f46185520","url":"https://api.github.com/users/josh","html_url":"https://github.com/josh","followers_url":"https://api.github.com/users/josh/followers","following_url":"https://api.github.com/users/josh/following{/other_user}","gists_url":"https://api.github.com/users/josh/gists{/gist_id}","starred_url":"https://api.github.com/users/josh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/josh/subscriptions","organizations_url":"https://api.github.com/users/josh/orgs","repos_url":"https://api.github.com/users/josh/repos","events_url":"https://api.github.com/users/josh/events{/privacy}","received_events_url":"https://api.github.com/users/josh/received_events","type":"User"},{"login":"stevedekorte","id":138,"avatar_url":"https://secure.gravatar.com/avatar/7588e3d3aa94ba40f57f495ec8c3206b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"7588e3d3aa94ba40f57f495ec8c3206b","url":"https://api.github.com/users/stevedekorte","html_url":"https://github.com/stevedekorte","followers_url":"https://api.github.com/users/stevedekorte/followers","following_url":"https://api.github.com/users/stevedekorte/following{/other_user}","gists_url":"https://api.github.com/users/stevedekorte/gists{/gist_id}","starred_url":"https://api.github.com/users/stevedekorte/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stevedekorte/subscriptions","organizations_url":"https://api.github.com/users/stevedekorte/orgs","repos_url":"https://api.github.com/users/stevedekorte/repos","events_url":"https://api.github.com/users/stevedekorte/events{/privacy}","received_events_url":"https://api.github.com/users/stevedekorte/received_events","type":"User"},{"login":"chneukirchen","id":139,"avatar_url":"https://secure.gravatar.com/avatar/7264fb16beeea92b89bb42023738259d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"7264fb16beeea92b89bb42023738259d","url":"https://api.github.com/users/chneukirchen","html_url":"https://github.com/chneukirchen","followers_url":"https://api.github.com/users/chneukirchen/followers","following_url":"https://api.github.com/users/chneukirchen/following{/other_user}","gists_url":"https://api.github.com/users/chneukirchen/gists{/gist_id}","starred_url":"https://api.github.com/users/chneukirchen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chneukirchen/subscriptions","organizations_url":"https://api.github.com/users/chneukirchen/orgs","repos_url":"https://api.github.com/users/chneukirchen/repos","events_url":"https://api.github.com/users/chneukirchen/events{/privacy}","received_events_url":"https://api.github.com/users/chneukirchen/received_events","type":"User"},{"login":"cheapRoc","id":140,"avatar_url":"https://secure.gravatar.com/avatar/6b8a9192d85a59d2caec9cfd58bc4f9a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"6b8a9192d85a59d2caec9cfd58bc4f9a","url":"https://api.github.com/users/cheapRoc","html_url":"https://github.com/cheapRoc","followers_url":"https://api.github.com/users/cheapRoc/followers","following_url":"https://api.github.com/users/cheapRoc/following{/other_user}","gists_url":"https://api.github.com/users/cheapRoc/gists{/gist_id}","starred_url":"https://api.github.com/users/cheapRoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cheapRoc/subscriptions","organizations_url":"https://api.github.com/users/cheapRoc/orgs","repos_url":"https://api.github.com/users/cheapRoc/repos","events_url":"https://api.github.com/users/cheapRoc/events{/privacy}","received_events_url":"https://api.github.com/users/cheapRoc/received_events","type":"User"},{"login":"technomancy","id":141,"avatar_url":"https://secure.gravatar.com/avatar/22788ec68b2aee512f8f4c5d8ae819ae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"22788ec68b2aee512f8f4c5d8ae819ae","url":"https://api.github.com/users/technomancy","html_url":"https://github.com/technomancy","followers_url":"https://api.github.com/users/technomancy/followers","following_url":"https://api.github.com/users/technomancy/following{/other_user}","gists_url":"https://api.github.com/users/technomancy/gists{/gist_id}","starred_url":"https://api.github.com/users/technomancy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/technomancy/subscriptions","organizations_url":"https://api.github.com/users/technomancy/orgs","repos_url":"https://api.github.com/users/technomancy/repos","events_url":"https://api.github.com/users/technomancy/events{/privacy}","received_events_url":"https://api.github.com/users/technomancy/received_events","type":"User"},{"login":"kenphused","id":142,"avatar_url":"https://secure.gravatar.com/avatar/7d560f92abc58cf561f3b1ae28c45b05?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"7d560f92abc58cf561f3b1ae28c45b05","url":"https://api.github.com/users/kenphused","html_url":"https://github.com/kenphused","followers_url":"https://api.github.com/users/kenphused/followers","following_url":"https://api.github.com/users/kenphused/following{/other_user}","gists_url":"https://api.github.com/users/kenphused/gists{/gist_id}","starred_url":"https://api.github.com/users/kenphused/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kenphused/subscriptions","organizations_url":"https://api.github.com/users/kenphused/orgs","repos_url":"https://api.github.com/users/kenphused/repos","events_url":"https://api.github.com/users/kenphused/events{/privacy}","received_events_url":"https://api.github.com/users/kenphused/received_events","type":"User"},{"login":"rubyist","id":143,"avatar_url":"https://secure.gravatar.com/avatar/6993d6b4b6d882f421e1b45ac147f3e0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"6993d6b4b6d882f421e1b45ac147f3e0","url":"https://api.github.com/users/rubyist","html_url":"https://github.com/rubyist","followers_url":"https://api.github.com/users/rubyist/followers","following_url":"https://api.github.com/users/rubyist/following{/other_user}","gists_url":"https://api.github.com/users/rubyist/gists{/gist_id}","starred_url":"https://api.github.com/users/rubyist/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rubyist/subscriptions","organizations_url":"https://api.github.com/users/rubyist/orgs","repos_url":"https://api.github.com/users/rubyist/repos","events_url":"https://api.github.com/users/rubyist/events{/privacy}","received_events_url":"https://api.github.com/users/rubyist/received_events","type":"User"},{"login":"ogc","id":144,"avatar_url":"https://secure.gravatar.com/avatar/eda326cac07289ef5ba2b03a9fd45a16?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","gravatar_id":"eda326cac07289ef5ba2b03a9fd45a16","url":"https://api.github.com/users/ogc","html_url":"https://github.com/ogc","followers_url":"https://api.github.com/users/ogc/followers","following_url":"https://api.github.com/users/ogc/following{/other_user}","gists_url":"https://api.github.com/users/ogc/gists{/gist_id}","starred_url":"https://api.github.com/users/ogc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ogc/subscriptions","organizations_url":"https://api.github.com/users/ogc/orgs","repos_url":"https://api.github.com/users/ogc/repos","events_url":"https://api.github.com/users/ogc/events{/privacy}","received_events_url":"https://api.github.com/users/ogc/received_events","type":"Organization"},{"login":"lazyatom","id":145,"avatar_url":"https://secure.gravatar.com/avatar/acd62030df551952268e84c8fff26a5b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"acd62030df551952268e84c8fff26a5b","url":"https://api.github.com/users/lazyatom","html_url":"https://github.com/lazyatom","followers_url":"https://api.github.com/users/lazyatom/followers","following_url":"https://api.github.com/users/lazyatom/following{/other_user}","gists_url":"https://api.github.com/users/lazyatom/gists{/gist_id}","starred_url":"https://api.github.com/users/lazyatom/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lazyatom/subscriptions","organizations_url":"https://api.github.com/users/lazyatom/orgs","repos_url":"https://api.github.com/users/lazyatom/repos","events_url":"https://api.github.com/users/lazyatom/events{/privacy}","received_events_url":"https://api.github.com/users/lazyatom/received_events","type":"User"},{"login":"jdhuntington","id":147,"avatar_url":"https://secure.gravatar.com/avatar/a3d6887041bc564a5d60cdc811ae4ef9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"a3d6887041bc564a5d60cdc811ae4ef9","url":"https://api.github.com/users/jdhuntington","html_url":"https://github.com/jdhuntington","followers_url":"https://api.github.com/users/jdhuntington/followers","following_url":"https://api.github.com/users/jdhuntington/following{/other_user}","gists_url":"https://api.github.com/users/jdhuntington/gists{/gist_id}","starred_url":"https://api.github.com/users/jdhuntington/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jdhuntington/subscriptions","organizations_url":"https://api.github.com/users/jdhuntington/orgs","repos_url":"https://api.github.com/users/jdhuntington/repos","events_url":"https://api.github.com/users/jdhuntington/events{/privacy}","received_events_url":"https://api.github.com/users/jdhuntington/received_events","type":"User"},{"login":"nwebb","id":148,"avatar_url":"https://secure.gravatar.com/avatar/ee413c2b052c86bca0a821fa7da10c36?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"ee413c2b052c86bca0a821fa7da10c36","url":"https://api.github.com/users/nwebb","html_url":"https://github.com/nwebb","followers_url":"https://api.github.com/users/nwebb/followers","following_url":"https://api.github.com/users/nwebb/following{/other_user}","gists_url":"https://api.github.com/users/nwebb/gists{/gist_id}","starred_url":"https://api.github.com/users/nwebb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nwebb/subscriptions","organizations_url":"https://api.github.com/users/nwebb/orgs","repos_url":"https://api.github.com/users/nwebb/repos","events_url":"https://api.github.com/users/nwebb/events{/privacy}","received_events_url":"https://api.github.com/users/nwebb/received_events","type":"User"},{"login":"nsutton","id":149,"avatar_url":"https://secure.gravatar.com/avatar/2815682737dcc9a7a3506c1a08dc5159?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2815682737dcc9a7a3506c1a08dc5159","url":"https://api.github.com/users/nsutton","html_url":"https://github.com/nsutton","followers_url":"https://api.github.com/users/nsutton/followers","following_url":"https://api.github.com/users/nsutton/following{/other_user}","gists_url":"https://api.github.com/users/nsutton/gists{/gist_id}","starred_url":"https://api.github.com/users/nsutton/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nsutton/subscriptions","organizations_url":"https://api.github.com/users/nsutton/orgs","repos_url":"https://api.github.com/users/nsutton/repos","events_url":"https://api.github.com/users/nsutton/events{/privacy}","received_events_url":"https://api.github.com/users/nsutton/received_events","type":"User"},{"login":"sevenwire","id":150,"avatar_url":"https://secure.gravatar.com/avatar/2d699571a445b9a9205779628fe9a818?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","gravatar_id":"2d699571a445b9a9205779628fe9a818","url":"https://api.github.com/users/sevenwire","html_url":"https://github.com/sevenwire","followers_url":"https://api.github.com/users/sevenwire/followers","following_url":"https://api.github.com/users/sevenwire/following{/other_user}","gists_url":"https://api.github.com/users/sevenwire/gists{/gist_id}","starred_url":"https://api.github.com/users/sevenwire/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sevenwire/subscriptions","organizations_url":"https://api.github.com/users/sevenwire/orgs","repos_url":"https://api.github.com/users/sevenwire/repos","events_url":"https://api.github.com/users/sevenwire/events{/privacy}","received_events_url":"https://api.github.com/users/sevenwire/received_events","type":"Organization"},{"login":"brandonarbini","id":151,"avatar_url":"https://secure.gravatar.com/avatar/4ebddee9146bb9c4f4f8ce7229c6615d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"4ebddee9146bb9c4f4f8ce7229c6615d","url":"https://api.github.com/users/brandonarbini","html_url":"https://github.com/brandonarbini","followers_url":"https://api.github.com/users/brandonarbini/followers","following_url":"https://api.github.com/users/brandonarbini/following{/other_user}","gists_url":"https://api.github.com/users/brandonarbini/gists{/gist_id}","starred_url":"https://api.github.com/users/brandonarbini/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/brandonarbini/subscriptions","organizations_url":"https://api.github.com/users/brandonarbini/orgs","repos_url":"https://api.github.com/users/brandonarbini/repos","events_url":"https://api.github.com/users/brandonarbini/events{/privacy}","received_events_url":"https://api.github.com/users/brandonarbini/received_events","type":"User"},{"login":"al3x","id":152,"avatar_url":"https://secure.gravatar.com/avatar/3fcb27e39d2ff47357a803e91347fee4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3fcb27e39d2ff47357a803e91347fee4","url":"https://api.github.com/users/al3x","html_url":"https://github.com/al3x","followers_url":"https://api.github.com/users/al3x/followers","following_url":"https://api.github.com/users/al3x/following{/other_user}","gists_url":"https://api.github.com/users/al3x/gists{/gist_id}","starred_url":"https://api.github.com/users/al3x/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/al3x/subscriptions","organizations_url":"https://api.github.com/users/al3x/orgs","repos_url":"https://api.github.com/users/al3x/repos","events_url":"https://api.github.com/users/al3x/events{/privacy}","received_events_url":"https://api.github.com/users/al3x/received_events","type":"User"},{"login":"toolmantim","id":153,"avatar_url":"https://secure.gravatar.com/avatar/8b3a5fa50d63275c5c6e304f1a081bfb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8b3a5fa50d63275c5c6e304f1a081bfb","url":"https://api.github.com/users/toolmantim","html_url":"https://github.com/toolmantim","followers_url":"https://api.github.com/users/toolmantim/followers","following_url":"https://api.github.com/users/toolmantim/following{/other_user}","gists_url":"https://api.github.com/users/toolmantim/gists{/gist_id}","starred_url":"https://api.github.com/users/toolmantim/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/toolmantim/subscriptions","organizations_url":"https://api.github.com/users/toolmantim/orgs","repos_url":"https://api.github.com/users/toolmantim/repos","events_url":"https://api.github.com/users/toolmantim/events{/privacy}","received_events_url":"https://api.github.com/users/toolmantim/received_events","type":"User"},{"login":"nicksieger","id":154,"avatar_url":"https://secure.gravatar.com/avatar/526d60de6472502bb570a9df2842b33b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"526d60de6472502bb570a9df2842b33b","url":"https://api.github.com/users/nicksieger","html_url":"https://github.com/nicksieger","followers_url":"https://api.github.com/users/nicksieger/followers","following_url":"https://api.github.com/users/nicksieger/following{/other_user}","gists_url":"https://api.github.com/users/nicksieger/gists{/gist_id}","starred_url":"https://api.github.com/users/nicksieger/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nicksieger/subscriptions","organizations_url":"https://api.github.com/users/nicksieger/orgs","repos_url":"https://api.github.com/users/nicksieger/repos","events_url":"https://api.github.com/users/nicksieger/events{/privacy}","received_events_url":"https://api.github.com/users/nicksieger/received_events","type":"User"},{"login":"jicksta","id":155,"avatar_url":"https://secure.gravatar.com/avatar/c48fff96ea2bf539a7939ca6d94f2443?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"c48fff96ea2bf539a7939ca6d94f2443","url":"https://api.github.com/users/jicksta","html_url":"https://github.com/jicksta","followers_url":"https://api.github.com/users/jicksta/followers","following_url":"https://api.github.com/users/jicksta/following{/other_user}","gists_url":"https://api.github.com/users/jicksta/gists{/gist_id}","starred_url":"https://api.github.com/users/jicksta/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jicksta/subscriptions","organizations_url":"https://api.github.com/users/jicksta/orgs","repos_url":"https://api.github.com/users/jicksta/repos","events_url":"https://api.github.com/users/jicksta/events{/privacy}","received_events_url":"https://api.github.com/users/jicksta/received_events","type":"User"},{"login":"joshsusser","id":156,"avatar_url":"https://secure.gravatar.com/avatar/9f0f89bbd9e1ecfbaab6584e429b7a2f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"9f0f89bbd9e1ecfbaab6584e429b7a2f","url":"https://api.github.com/users/joshsusser","html_url":"https://github.com/joshsusser","followers_url":"https://api.github.com/users/joshsusser/followers","following_url":"https://api.github.com/users/joshsusser/following{/other_user}","gists_url":"https://api.github.com/users/joshsusser/gists{/gist_id}","starred_url":"https://api.github.com/users/joshsusser/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/joshsusser/subscriptions","organizations_url":"https://api.github.com/users/joshsusser/orgs","repos_url":"https://api.github.com/users/joshsusser/repos","events_url":"https://api.github.com/users/joshsusser/events{/privacy}","received_events_url":"https://api.github.com/users/joshsusser/received_events","type":"User"},{"login":"jcrosby","id":157,"avatar_url":"https://secure.gravatar.com/avatar/1badabda6a153422e275625ae2f1e976?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"1badabda6a153422e275625ae2f1e976","url":"https://api.github.com/users/jcrosby","html_url":"https://github.com/jcrosby","followers_url":"https://api.github.com/users/jcrosby/followers","following_url":"https://api.github.com/users/jcrosby/following{/other_user}","gists_url":"https://api.github.com/users/jcrosby/gists{/gist_id}","starred_url":"https://api.github.com/users/jcrosby/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jcrosby/subscriptions","organizations_url":"https://api.github.com/users/jcrosby/orgs","repos_url":"https://api.github.com/users/jcrosby/repos","events_url":"https://api.github.com/users/jcrosby/events{/privacy}","received_events_url":"https://api.github.com/users/jcrosby/received_events","type":"User"},{"login":"thewoolleyman","id":158,"avatar_url":"https://secure.gravatar.com/avatar/2475563a3ba1da4018af64f964ab45b0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2475563a3ba1da4018af64f964ab45b0","url":"https://api.github.com/users/thewoolleyman","html_url":"https://github.com/thewoolleyman","followers_url":"https://api.github.com/users/thewoolleyman/followers","following_url":"https://api.github.com/users/thewoolleyman/following{/other_user}","gists_url":"https://api.github.com/users/thewoolleyman/gists{/gist_id}","starred_url":"https://api.github.com/users/thewoolleyman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/thewoolleyman/subscriptions","organizations_url":"https://api.github.com/users/thewoolleyman/orgs","repos_url":"https://api.github.com/users/thewoolleyman/repos","events_url":"https://api.github.com/users/thewoolleyman/events{/privacy}","received_events_url":"https://api.github.com/users/thewoolleyman/received_events","type":"User"},{"login":"technicalpickles","id":159,"avatar_url":"https://secure.gravatar.com/avatar/1c1aabc1abed5cce37b192dd00f0f28c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"1c1aabc1abed5cce37b192dd00f0f28c","url":"https://api.github.com/users/technicalpickles","html_url":"https://github.com/technicalpickles","followers_url":"https://api.github.com/users/technicalpickles/followers","following_url":"https://api.github.com/users/technicalpickles/following{/other_user}","gists_url":"https://api.github.com/users/technicalpickles/gists{/gist_id}","starred_url":"https://api.github.com/users/technicalpickles/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/technicalpickles/subscriptions","organizations_url":"https://api.github.com/users/technicalpickles/orgs","repos_url":"https://api.github.com/users/technicalpickles/repos","events_url":"https://api.github.com/users/technicalpickles/events{/privacy}","received_events_url":"https://api.github.com/users/technicalpickles/received_events","type":"User"},{"login":"halbtuerke","id":160,"avatar_url":"https://secure.gravatar.com/avatar/be965afd8e05334af7ed2adc64736310?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"be965afd8e05334af7ed2adc64736310","url":"https://api.github.com/users/halbtuerke","html_url":"https://github.com/halbtuerke","followers_url":"https://api.github.com/users/halbtuerke/followers","following_url":"https://api.github.com/users/halbtuerke/following{/other_user}","gists_url":"https://api.github.com/users/halbtuerke/gists{/gist_id}","starred_url":"https://api.github.com/users/halbtuerke/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/halbtuerke/subscriptions","organizations_url":"https://api.github.com/users/halbtuerke/orgs","repos_url":"https://api.github.com/users/halbtuerke/repos","events_url":"https://api.github.com/users/halbtuerke/events{/privacy}","received_events_url":"https://api.github.com/users/halbtuerke/received_events","type":"User"},{"login":"ryanb","id":161,"avatar_url":"https://secure.gravatar.com/avatar/8dbf316d36ff66aad4869a4fc3cfbd37?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dbf316d36ff66aad4869a4fc3cfbd37","url":"https://api.github.com/users/ryanb","html_url":"https://github.com/ryanb","followers_url":"https://api.github.com/users/ryanb/followers","following_url":"https://api.github.com/users/ryanb/following{/other_user}","gists_url":"https://api.github.com/users/ryanb/gists{/gist_id}","starred_url":"https://api.github.com/users/ryanb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ryanb/subscriptions","organizations_url":"https://api.github.com/users/ryanb/orgs","repos_url":"https://api.github.com/users/ryanb/repos","events_url":"https://api.github.com/users/ryanb/events{/privacy}","received_events_url":"https://api.github.com/users/ryanb/received_events","type":"User"},{"login":"cnix","id":162,"avatar_url":"https://secure.gravatar.com/avatar/20477915bd063457a7a6025888ae6a00?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"20477915bd063457a7a6025888ae6a00","url":"https://api.github.com/users/cnix","html_url":"https://github.com/cnix","followers_url":"https://api.github.com/users/cnix/followers","following_url":"https://api.github.com/users/cnix/following{/other_user}","gists_url":"https://api.github.com/users/cnix/gists{/gist_id}","starred_url":"https://api.github.com/users/cnix/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cnix/subscriptions","organizations_url":"https://api.github.com/users/cnix/orgs","repos_url":"https://api.github.com/users/cnix/repos","events_url":"https://api.github.com/users/cnix/events{/privacy}","received_events_url":"https://api.github.com/users/cnix/received_events","type":"User"},{"login":"tpitale","id":163,"avatar_url":"https://secure.gravatar.com/avatar/cc371b26b5881c44cde17f7885ccd608?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"cc371b26b5881c44cde17f7885ccd608","url":"https://api.github.com/users/tpitale","html_url":"https://github.com/tpitale","followers_url":"https://api.github.com/users/tpitale/followers","following_url":"https://api.github.com/users/tpitale/following{/other_user}","gists_url":"https://api.github.com/users/tpitale/gists{/gist_id}","starred_url":"https://api.github.com/users/tpitale/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tpitale/subscriptions","organizations_url":"https://api.github.com/users/tpitale/orgs","repos_url":"https://api.github.com/users/tpitale/repos","events_url":"https://api.github.com/users/tpitale/events{/privacy}","received_events_url":"https://api.github.com/users/tpitale/received_events","type":"User"},{"login":"cdcarter","id":164,"avatar_url":"https://secure.gravatar.com/avatar/96931bfe0c2948f47a98e15ae52e5637?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"96931bfe0c2948f47a98e15ae52e5637","url":"https://api.github.com/users/cdcarter","html_url":"https://github.com/cdcarter","followers_url":"https://api.github.com/users/cdcarter/followers","following_url":"https://api.github.com/users/cdcarter/following{/other_user}","gists_url":"https://api.github.com/users/cdcarter/gists{/gist_id}","starred_url":"https://api.github.com/users/cdcarter/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cdcarter/subscriptions","organizations_url":"https://api.github.com/users/cdcarter/orgs","repos_url":"https://api.github.com/users/cdcarter/repos","events_url":"https://api.github.com/users/cdcarter/events{/privacy}","received_events_url":"https://api.github.com/users/cdcarter/received_events","type":"User"},{"login":"atduskgreg","id":165,"avatar_url":"https://secure.gravatar.com/avatar/2f4faa539dc6a0ae688e58d6a329fce9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2f4faa539dc6a0ae688e58d6a329fce9","url":"https://api.github.com/users/atduskgreg","html_url":"https://github.com/atduskgreg","followers_url":"https://api.github.com/users/atduskgreg/followers","following_url":"https://api.github.com/users/atduskgreg/following{/other_user}","gists_url":"https://api.github.com/users/atduskgreg/gists{/gist_id}","starred_url":"https://api.github.com/users/atduskgreg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/atduskgreg/subscriptions","organizations_url":"https://api.github.com/users/atduskgreg/orgs","repos_url":"https://api.github.com/users/atduskgreg/repos","events_url":"https://api.github.com/users/atduskgreg/events{/privacy}","received_events_url":"https://api.github.com/users/atduskgreg/received_events","type":"User"},{"login":"heff","id":166,"avatar_url":"https://secure.gravatar.com/avatar/c6c46cea19cd77122092331f81e713b8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"c6c46cea19cd77122092331f81e713b8","url":"https://api.github.com/users/heff","html_url":"https://github.com/heff","followers_url":"https://api.github.com/users/heff/followers","following_url":"https://api.github.com/users/heff/following{/other_user}","gists_url":"https://api.github.com/users/heff/gists{/gist_id}","starred_url":"https://api.github.com/users/heff/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/heff/subscriptions","organizations_url":"https://api.github.com/users/heff/orgs","repos_url":"https://api.github.com/users/heff/repos","events_url":"https://api.github.com/users/heff/events{/privacy}","received_events_url":"https://api.github.com/users/heff/received_events","type":"User"},{"login":"entryway","id":167,"avatar_url":"https://secure.gravatar.com/avatar/707ce7e4f6b46e5a1dfb7501184efea2?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","gravatar_id":"707ce7e4f6b46e5a1dfb7501184efea2","url":"https://api.github.com/users/entryway","html_url":"https://github.com/entryway","followers_url":"https://api.github.com/users/entryway/followers","following_url":"https://api.github.com/users/entryway/following{/other_user}","gists_url":"https://api.github.com/users/entryway/gists{/gist_id}","starred_url":"https://api.github.com/users/entryway/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/entryway/subscriptions","organizations_url":"https://api.github.com/users/entryway/orgs","repos_url":"https://api.github.com/users/entryway/repos","events_url":"https://api.github.com/users/entryway/events{/privacy}","received_events_url":"https://api.github.com/users/entryway/received_events","type":"Organization"},{"login":"aflatter","id":168,"avatar_url":"https://secure.gravatar.com/avatar/e4c4d0dc21883635beecd9b511e2e294?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e4c4d0dc21883635beecd9b511e2e294","url":"https://api.github.com/users/aflatter","html_url":"https://github.com/aflatter","followers_url":"https://api.github.com/users/aflatter/followers","following_url":"https://api.github.com/users/aflatter/following{/other_user}","gists_url":"https://api.github.com/users/aflatter/gists{/gist_id}","starred_url":"https://api.github.com/users/aflatter/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aflatter/subscriptions","organizations_url":"https://api.github.com/users/aflatter/orgs","repos_url":"https://api.github.com/users/aflatter/repos","events_url":"https://api.github.com/users/aflatter/events{/privacy}","received_events_url":"https://api.github.com/users/aflatter/received_events","type":"User"},{"login":"schofield","id":169,"avatar_url":"https://secure.gravatar.com/avatar/815c14d8894ca4b5128c6ab3e30765fb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"815c14d8894ca4b5128c6ab3e30765fb","url":"https://api.github.com/users/schofield","html_url":"https://github.com/schofield","followers_url":"https://api.github.com/users/schofield/followers","following_url":"https://api.github.com/users/schofield/following{/other_user}","gists_url":"https://api.github.com/users/schofield/gists{/gist_id}","starred_url":"https://api.github.com/users/schofield/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/schofield/subscriptions","organizations_url":"https://api.github.com/users/schofield/orgs","repos_url":"https://api.github.com/users/schofield/repos","events_url":"https://api.github.com/users/schofield/events{/privacy}","received_events_url":"https://api.github.com/users/schofield/received_events","type":"User"},{"login":"rbazinet","id":170,"avatar_url":"https://secure.gravatar.com/avatar/75d620852fc7691a0a3a86c336055e7d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"75d620852fc7691a0a3a86c336055e7d","url":"https://api.github.com/users/rbazinet","html_url":"https://github.com/rbazinet","followers_url":"https://api.github.com/users/rbazinet/followers","following_url":"https://api.github.com/users/rbazinet/following{/other_user}","gists_url":"https://api.github.com/users/rbazinet/gists{/gist_id}","starred_url":"https://api.github.com/users/rbazinet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rbazinet/subscriptions","organizations_url":"https://api.github.com/users/rbazinet/orgs","repos_url":"https://api.github.com/users/rbazinet/repos","events_url":"https://api.github.com/users/rbazinet/events{/privacy}","received_events_url":"https://api.github.com/users/rbazinet/received_events","type":"User"},{"login":"tranqy","id":171,"avatar_url":"https://secure.gravatar.com/avatar/8aec21323e118581af6ca1d4e2a3c338?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8aec21323e118581af6ca1d4e2a3c338","url":"https://api.github.com/users/tranqy","html_url":"https://github.com/tranqy","followers_url":"https://api.github.com/users/tranqy/followers","following_url":"https://api.github.com/users/tranqy/following{/other_user}","gists_url":"https://api.github.com/users/tranqy/gists{/gist_id}","starred_url":"https://api.github.com/users/tranqy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tranqy/subscriptions","organizations_url":"https://api.github.com/users/tranqy/orgs","repos_url":"https://api.github.com/users/tranqy/repos","events_url":"https://api.github.com/users/tranqy/events{/privacy}","received_events_url":"https://api.github.com/users/tranqy/received_events","type":"User"},{"login":"robey","id":172,"avatar_url":"https://secure.gravatar.com/avatar/08759e178c55c968a861367e55f56ad9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"08759e178c55c968a861367e55f56ad9","url":"https://api.github.com/users/robey","html_url":"https://github.com/robey","followers_url":"https://api.github.com/users/robey/followers","following_url":"https://api.github.com/users/robey/following{/other_user}","gists_url":"https://api.github.com/users/robey/gists{/gist_id}","starred_url":"https://api.github.com/users/robey/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/robey/subscriptions","organizations_url":"https://api.github.com/users/robey/orgs","repos_url":"https://api.github.com/users/robey/repos","events_url":"https://api.github.com/users/robey/events{/privacy}","received_events_url":"https://api.github.com/users/robey/received_events","type":"User"},{"login":"bkeepers","id":173,"avatar_url":"https://secure.gravatar.com/avatar/20bfe76b3d6105641f879fe45cfc9272?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"20bfe76b3d6105641f879fe45cfc9272","url":"https://api.github.com/users/bkeepers","html_url":"https://github.com/bkeepers","followers_url":"https://api.github.com/users/bkeepers/followers","following_url":"https://api.github.com/users/bkeepers/following{/other_user}","gists_url":"https://api.github.com/users/bkeepers/gists{/gist_id}","starred_url":"https://api.github.com/users/bkeepers/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bkeepers/subscriptions","organizations_url":"https://api.github.com/users/bkeepers/orgs","repos_url":"https://api.github.com/users/bkeepers/repos","events_url":"https://api.github.com/users/bkeepers/events{/privacy}","received_events_url":"https://api.github.com/users/bkeepers/received_events","type":"User"},{"login":"wilson","id":174,"avatar_url":"https://secure.gravatar.com/avatar/c86f8ec92dc489e296a38bfcbaa9c770?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"c86f8ec92dc489e296a38bfcbaa9c770","url":"https://api.github.com/users/wilson","html_url":"https://github.com/wilson","followers_url":"https://api.github.com/users/wilson/followers","following_url":"https://api.github.com/users/wilson/following{/other_user}","gists_url":"https://api.github.com/users/wilson/gists{/gist_id}","starred_url":"https://api.github.com/users/wilson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wilson/subscriptions","organizations_url":"https://api.github.com/users/wilson/orgs","repos_url":"https://api.github.com/users/wilson/repos","events_url":"https://api.github.com/users/wilson/events{/privacy}","received_events_url":"https://api.github.com/users/wilson/received_events","type":"User"},{"login":"tommorris","id":175,"avatar_url":"https://secure.gravatar.com/avatar/3e00403e6a08fc4499057d8be5b85709?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3e00403e6a08fc4499057d8be5b85709","url":"https://api.github.com/users/tommorris","html_url":"https://github.com/tommorris","followers_url":"https://api.github.com/users/tommorris/followers","following_url":"https://api.github.com/users/tommorris/following{/other_user}","gists_url":"https://api.github.com/users/tommorris/gists{/gist_id}","starred_url":"https://api.github.com/users/tommorris/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tommorris/subscriptions","organizations_url":"https://api.github.com/users/tommorris/orgs","repos_url":"https://api.github.com/users/tommorris/repos","events_url":"https://api.github.com/users/tommorris/events{/privacy}","received_events_url":"https://api.github.com/users/tommorris/received_events","type":"User"},{"login":"charlesroper","id":176,"avatar_url":"https://secure.gravatar.com/avatar/93fc84c261cdce2e2f1d64c8e531ecb7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"93fc84c261cdce2e2f1d64c8e531ecb7","url":"https://api.github.com/users/charlesroper","html_url":"https://github.com/charlesroper","followers_url":"https://api.github.com/users/charlesroper/followers","following_url":"https://api.github.com/users/charlesroper/following{/other_user}","gists_url":"https://api.github.com/users/charlesroper/gists{/gist_id}","starred_url":"https://api.github.com/users/charlesroper/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/charlesroper/subscriptions","organizations_url":"https://api.github.com/users/charlesroper/orgs","repos_url":"https://api.github.com/users/charlesroper/repos","events_url":"https://api.github.com/users/charlesroper/events{/privacy}","received_events_url":"https://api.github.com/users/charlesroper/received_events","type":"User"},{"login":"adamwiggins","id":177,"avatar_url":"https://secure.gravatar.com/avatar/fcafc7eab67d34d48b14f9d70bc05713?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"fcafc7eab67d34d48b14f9d70bc05713","url":"https://api.github.com/users/adamwiggins","html_url":"https://github.com/adamwiggins","followers_url":"https://api.github.com/users/adamwiggins/followers","following_url":"https://api.github.com/users/adamwiggins/following{/other_user}","gists_url":"https://api.github.com/users/adamwiggins/gists{/gist_id}","starred_url":"https://api.github.com/users/adamwiggins/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/adamwiggins/subscriptions","organizations_url":"https://api.github.com/users/adamwiggins/orgs","repos_url":"https://api.github.com/users/adamwiggins/repos","events_url":"https://api.github.com/users/adamwiggins/events{/privacy}","received_events_url":"https://api.github.com/users/adamwiggins/received_events","type":"User"},{"login":"myobie","id":179,"avatar_url":"https://secure.gravatar.com/avatar/0a4c768b6fe54bdbb797cf8140b96a98?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"0a4c768b6fe54bdbb797cf8140b96a98","url":"https://api.github.com/users/myobie","html_url":"https://github.com/myobie","followers_url":"https://api.github.com/users/myobie/followers","following_url":"https://api.github.com/users/myobie/following{/other_user}","gists_url":"https://api.github.com/users/myobie/gists{/gist_id}","starred_url":"https://api.github.com/users/myobie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/myobie/subscriptions","organizations_url":"https://api.github.com/users/myobie/orgs","repos_url":"https://api.github.com/users/myobie/repos","events_url":"https://api.github.com/users/myobie/events{/privacy}","received_events_url":"https://api.github.com/users/myobie/received_events","type":"User"},{"login":"samgranieri","id":180,"avatar_url":"https://secure.gravatar.com/avatar/351a8885dc5529755abfcd4902538f22?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"351a8885dc5529755abfcd4902538f22","url":"https://api.github.com/users/samgranieri","html_url":"https://github.com/samgranieri","followers_url":"https://api.github.com/users/samgranieri/followers","following_url":"https://api.github.com/users/samgranieri/following{/other_user}","gists_url":"https://api.github.com/users/samgranieri/gists{/gist_id}","starred_url":"https://api.github.com/users/samgranieri/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/samgranieri/subscriptions","organizations_url":"https://api.github.com/users/samgranieri/orgs","repos_url":"https://api.github.com/users/samgranieri/repos","events_url":"https://api.github.com/users/samgranieri/events{/privacy}","received_events_url":"https://api.github.com/users/samgranieri/received_events","type":"User"},{"login":"adam","id":181,"avatar_url":"https://secure.gravatar.com/avatar/e65d3a1af7bc44273b9a118386351e0c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e65d3a1af7bc44273b9a118386351e0c","url":"https://api.github.com/users/adam","html_url":"https://github.com/adam","followers_url":"https://api.github.com/users/adam/followers","following_url":"https://api.github.com/users/adam/following{/other_user}","gists_url":"https://api.github.com/users/adam/gists{/gist_id}","starred_url":"https://api.github.com/users/adam/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/adam/subscriptions","organizations_url":"https://api.github.com/users/adam/orgs","repos_url":"https://api.github.com/users/adam/repos","events_url":"https://api.github.com/users/adam/events{/privacy}","received_events_url":"https://api.github.com/users/adam/received_events","type":"User"},{"login":"mtodd","id":182,"avatar_url":"https://secure.gravatar.com/avatar/b6861bc75bff3c594212338a914a39ad?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b6861bc75bff3c594212338a914a39ad","url":"https://api.github.com/users/mtodd","html_url":"https://github.com/mtodd","followers_url":"https://api.github.com/users/mtodd/followers","following_url":"https://api.github.com/users/mtodd/following{/other_user}","gists_url":"https://api.github.com/users/mtodd/gists{/gist_id}","starred_url":"https://api.github.com/users/mtodd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mtodd/subscriptions","organizations_url":"https://api.github.com/users/mtodd/orgs","repos_url":"https://api.github.com/users/mtodd/repos","events_url":"https://api.github.com/users/mtodd/events{/privacy}","received_events_url":"https://api.github.com/users/mtodd/received_events","type":"User"},{"login":"timcharper","id":183,"avatar_url":"https://secure.gravatar.com/avatar/63f259ca39670e260cd50dd71013663c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"63f259ca39670e260cd50dd71013663c","url":"https://api.github.com/users/timcharper","html_url":"https://github.com/timcharper","followers_url":"https://api.github.com/users/timcharper/followers","following_url":"https://api.github.com/users/timcharper/following{/other_user}","gists_url":"https://api.github.com/users/timcharper/gists{/gist_id}","starred_url":"https://api.github.com/users/timcharper/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timcharper/subscriptions","organizations_url":"https://api.github.com/users/timcharper/orgs","repos_url":"https://api.github.com/users/timcharper/repos","events_url":"https://api.github.com/users/timcharper/events{/privacy}","received_events_url":"https://api.github.com/users/timcharper/received_events","type":"User"},{"login":"paul","id":184,"avatar_url":"https://secure.gravatar.com/avatar/8f4b861a5b83575337b98d144a4ef4ca?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8f4b861a5b83575337b98d144a4ef4ca","url":"https://api.github.com/users/paul","html_url":"https://github.com/paul","followers_url":"https://api.github.com/users/paul/followers","following_url":"https://api.github.com/users/paul/following{/other_user}","gists_url":"https://api.github.com/users/paul/gists{/gist_id}","starred_url":"https://api.github.com/users/paul/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/paul/subscriptions","organizations_url":"https://api.github.com/users/paul/orgs","repos_url":"https://api.github.com/users/paul/repos","events_url":"https://api.github.com/users/paul/events{/privacy}","received_events_url":"https://api.github.com/users/paul/received_events","type":"User"},{"login":"DocSavage","id":185,"avatar_url":"https://secure.gravatar.com/avatar/9e7c9c07e64a6b7b075097831c360d53?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"9e7c9c07e64a6b7b075097831c360d53","url":"https://api.github.com/users/DocSavage","html_url":"https://github.com/DocSavage","followers_url":"https://api.github.com/users/DocSavage/followers","following_url":"https://api.github.com/users/DocSavage/following{/other_user}","gists_url":"https://api.github.com/users/DocSavage/gists{/gist_id}","starred_url":"https://api.github.com/users/DocSavage/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DocSavage/subscriptions","organizations_url":"https://api.github.com/users/DocSavage/orgs","repos_url":"https://api.github.com/users/DocSavage/repos","events_url":"https://api.github.com/users/DocSavage/events{/privacy}","received_events_url":"https://api.github.com/users/DocSavage/received_events","type":"User"},{"login":"shane","id":186,"avatar_url":"https://secure.gravatar.com/avatar/29e5052f13e153942d44f2f4e96d070d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"29e5052f13e153942d44f2f4e96d070d","url":"https://api.github.com/users/shane","html_url":"https://github.com/shane","followers_url":"https://api.github.com/users/shane/followers","following_url":"https://api.github.com/users/shane/following{/other_user}","gists_url":"https://api.github.com/users/shane/gists{/gist_id}","starred_url":"https://api.github.com/users/shane/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shane/subscriptions","organizations_url":"https://api.github.com/users/shane/orgs","repos_url":"https://api.github.com/users/shane/repos","events_url":"https://api.github.com/users/shane/events{/privacy}","received_events_url":"https://api.github.com/users/shane/received_events","type":"User"},{"login":"vlucas","id":187,"avatar_url":"https://secure.gravatar.com/avatar/94cb827736e36e0f6343e9640e72fec7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"94cb827736e36e0f6343e9640e72fec7","url":"https://api.github.com/users/vlucas","html_url":"https://github.com/vlucas","followers_url":"https://api.github.com/users/vlucas/followers","following_url":"https://api.github.com/users/vlucas/following{/other_user}","gists_url":"https://api.github.com/users/vlucas/gists{/gist_id}","starred_url":"https://api.github.com/users/vlucas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vlucas/subscriptions","organizations_url":"https://api.github.com/users/vlucas/orgs","repos_url":"https://api.github.com/users/vlucas/repos","events_url":"https://api.github.com/users/vlucas/events{/privacy}","received_events_url":"https://api.github.com/users/vlucas/received_events","type":"User"},{"login":"nex3","id":188,"avatar_url":"https://secure.gravatar.com/avatar/39b3031f890ad7ce40661614af8b52a6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"39b3031f890ad7ce40661614af8b52a6","url":"https://api.github.com/users/nex3","html_url":"https://github.com/nex3","followers_url":"https://api.github.com/users/nex3/followers","following_url":"https://api.github.com/users/nex3/following{/other_user}","gists_url":"https://api.github.com/users/nex3/gists{/gist_id}","starred_url":"https://api.github.com/users/nex3/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nex3/subscriptions","organizations_url":"https://api.github.com/users/nex3/orgs","repos_url":"https://api.github.com/users/nex3/repos","events_url":"https://api.github.com/users/nex3/events{/privacy}","received_events_url":"https://api.github.com/users/nex3/received_events","type":"User"},{"login":"max-xx","id":189,"avatar_url":"https://secure.gravatar.com/avatar/c27be5c26bd5f7b849ac1c2ca8833e99?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"c27be5c26bd5f7b849ac1c2ca8833e99","url":"https://api.github.com/users/max-xx","html_url":"https://github.com/max-xx","followers_url":"https://api.github.com/users/max-xx/followers","following_url":"https://api.github.com/users/max-xx/following{/other_user}","gists_url":"https://api.github.com/users/max-xx/gists{/gist_id}","starred_url":"https://api.github.com/users/max-xx/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/max-xx/subscriptions","organizations_url":"https://api.github.com/users/max-xx/orgs","repos_url":"https://api.github.com/users/max-xx/repos","events_url":"https://api.github.com/users/max-xx/events{/privacy}","received_events_url":"https://api.github.com/users/max-xx/received_events","type":"User"},{"login":"norbauer","id":190,"avatar_url":"https://secure.gravatar.com/avatar/5b58a428dd9f1ac0c7ea42c5557692bc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5b58a428dd9f1ac0c7ea42c5557692bc","url":"https://api.github.com/users/norbauer","html_url":"https://github.com/norbauer","followers_url":"https://api.github.com/users/norbauer/followers","following_url":"https://api.github.com/users/norbauer/following{/other_user}","gists_url":"https://api.github.com/users/norbauer/gists{/gist_id}","starred_url":"https://api.github.com/users/norbauer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/norbauer/subscriptions","organizations_url":"https://api.github.com/users/norbauer/orgs","repos_url":"https://api.github.com/users/norbauer/repos","events_url":"https://api.github.com/users/norbauer/events{/privacy}","received_events_url":"https://api.github.com/users/norbauer/received_events","type":"User"},{"login":"crigor","id":191,"avatar_url":"https://secure.gravatar.com/avatar/c49ed3ac5bb2c11a7df1aa06bc9cfc96?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"c49ed3ac5bb2c11a7df1aa06bc9cfc96","url":"https://api.github.com/users/crigor","html_url":"https://github.com/crigor","followers_url":"https://api.github.com/users/crigor/followers","following_url":"https://api.github.com/users/crigor/following{/other_user}","gists_url":"https://api.github.com/users/crigor/gists{/gist_id}","starred_url":"https://api.github.com/users/crigor/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/crigor/subscriptions","organizations_url":"https://api.github.com/users/crigor/orgs","repos_url":"https://api.github.com/users/crigor/repos","events_url":"https://api.github.com/users/crigor/events{/privacy}","received_events_url":"https://api.github.com/users/crigor/received_events","type":"User"},{"login":"knowtheory","id":192,"avatar_url":"https://secure.gravatar.com/avatar/1ed56a3c8445bfafc7a545d9a63175ce?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"1ed56a3c8445bfafc7a545d9a63175ce","url":"https://api.github.com/users/knowtheory","html_url":"https://github.com/knowtheory","followers_url":"https://api.github.com/users/knowtheory/followers","following_url":"https://api.github.com/users/knowtheory/following{/other_user}","gists_url":"https://api.github.com/users/knowtheory/gists{/gist_id}","starred_url":"https://api.github.com/users/knowtheory/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/knowtheory/subscriptions","organizations_url":"https://api.github.com/users/knowtheory/orgs","repos_url":"https://api.github.com/users/knowtheory/repos","events_url":"https://api.github.com/users/knowtheory/events{/privacy}","received_events_url":"https://api.github.com/users/knowtheory/received_events","type":"User"},{"login":"bernerdschaefer","id":193,"avatar_url":"https://secure.gravatar.com/avatar/c6e7bc52e950b434362d337bcfa01993?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"c6e7bc52e950b434362d337bcfa01993","url":"https://api.github.com/users/bernerdschaefer","html_url":"https://github.com/bernerdschaefer","followers_url":"https://api.github.com/users/bernerdschaefer/followers","following_url":"https://api.github.com/users/bernerdschaefer/following{/other_user}","gists_url":"https://api.github.com/users/bernerdschaefer/gists{/gist_id}","starred_url":"https://api.github.com/users/bernerdschaefer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bernerdschaefer/subscriptions","organizations_url":"https://api.github.com/users/bernerdschaefer/orgs","repos_url":"https://api.github.com/users/bernerdschaefer/repos","events_url":"https://api.github.com/users/bernerdschaefer/events{/privacy}","received_events_url":"https://api.github.com/users/bernerdschaefer/received_events","type":"User"},{"login":"zapnap","id":194,"avatar_url":"https://secure.gravatar.com/avatar/9ea5b82a23b081cdc7e2ac5e2282c852?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"9ea5b82a23b081cdc7e2ac5e2282c852","url":"https://api.github.com/users/zapnap","html_url":"https://github.com/zapnap","followers_url":"https://api.github.com/users/zapnap/followers","following_url":"https://api.github.com/users/zapnap/following{/other_user}","gists_url":"https://api.github.com/users/zapnap/gists{/gist_id}","starred_url":"https://api.github.com/users/zapnap/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zapnap/subscriptions","organizations_url":"https://api.github.com/users/zapnap/orgs","repos_url":"https://api.github.com/users/zapnap/repos","events_url":"https://api.github.com/users/zapnap/events{/privacy}","received_events_url":"https://api.github.com/users/zapnap/received_events","type":"User"},{"login":"testdude","id":195,"avatar_url":"https://secure.gravatar.com/avatar/d1525f124bd7d3506d69d53bae825c19?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"d1525f124bd7d3506d69d53bae825c19","url":"https://api.github.com/users/testdude","html_url":"https://github.com/testdude","followers_url":"https://api.github.com/users/testdude/followers","following_url":"https://api.github.com/users/testdude/following{/other_user}","gists_url":"https://api.github.com/users/testdude/gists{/gist_id}","starred_url":"https://api.github.com/users/testdude/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/testdude/subscriptions","organizations_url":"https://api.github.com/users/testdude/orgs","repos_url":"https://api.github.com/users/testdude/repos","events_url":"https://api.github.com/users/testdude/events{/privacy}","received_events_url":"https://api.github.com/users/testdude/received_events","type":"User"},{"login":"groovious","id":196,"avatar_url":"https://secure.gravatar.com/avatar/4aff9349b377b0d6592f0256852e8c9e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"4aff9349b377b0d6592f0256852e8c9e","url":"https://api.github.com/users/groovious","html_url":"https://github.com/groovious","followers_url":"https://api.github.com/users/groovious/followers","following_url":"https://api.github.com/users/groovious/following{/other_user}","gists_url":"https://api.github.com/users/groovious/gists{/gist_id}","starred_url":"https://api.github.com/users/groovious/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/groovious/subscriptions","organizations_url":"https://api.github.com/users/groovious/orgs","repos_url":"https://api.github.com/users/groovious/repos","events_url":"https://api.github.com/users/groovious/events{/privacy}","received_events_url":"https://api.github.com/users/groovious/received_events","type":"User"},{"login":"NZKoz","id":197,"avatar_url":"https://secure.gravatar.com/avatar/efa76b164a7de4a5730e4fa397cc4425?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"efa76b164a7de4a5730e4fa397cc4425","url":"https://api.github.com/users/NZKoz","html_url":"https://github.com/NZKoz","followers_url":"https://api.github.com/users/NZKoz/followers","following_url":"https://api.github.com/users/NZKoz/following{/other_user}","gists_url":"https://api.github.com/users/NZKoz/gists{/gist_id}","starred_url":"https://api.github.com/users/NZKoz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/NZKoz/subscriptions","organizations_url":"https://api.github.com/users/NZKoz/orgs","repos_url":"https://api.github.com/users/NZKoz/repos","events_url":"https://api.github.com/users/NZKoz/events{/privacy}","received_events_url":"https://api.github.com/users/NZKoz/received_events","type":"User"},{"login":"croaky","id":198,"avatar_url":"https://secure.gravatar.com/avatar/8e2b996de3842c6ef7e68a82fa5f01f5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8e2b996de3842c6ef7e68a82fa5f01f5","url":"https://api.github.com/users/croaky","html_url":"https://github.com/croaky","followers_url":"https://api.github.com/users/croaky/followers","following_url":"https://api.github.com/users/croaky/following{/other_user}","gists_url":"https://api.github.com/users/croaky/gists{/gist_id}","starred_url":"https://api.github.com/users/croaky/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/croaky/subscriptions","organizations_url":"https://api.github.com/users/croaky/orgs","repos_url":"https://api.github.com/users/croaky/repos","events_url":"https://api.github.com/users/croaky/events{/privacy}","received_events_url":"https://api.github.com/users/croaky/received_events","type":"User"},{"login":"jeremy","id":199,"avatar_url":"https://secure.gravatar.com/avatar/24d2f8804e6bb4b7ea6bd11e0a586470?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"24d2f8804e6bb4b7ea6bd11e0a586470","url":"https://api.github.com/users/jeremy","html_url":"https://github.com/jeremy","followers_url":"https://api.github.com/users/jeremy/followers","following_url":"https://api.github.com/users/jeremy/following{/other_user}","gists_url":"https://api.github.com/users/jeremy/gists{/gist_id}","starred_url":"https://api.github.com/users/jeremy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jeremy/subscriptions","organizations_url":"https://api.github.com/users/jeremy/orgs","repos_url":"https://api.github.com/users/jeremy/repos","events_url":"https://api.github.com/users/jeremy/events{/privacy}","received_events_url":"https://api.github.com/users/jeremy/received_events","type":"User"},{"login":"ELLIOTTCABLE","id":200,"avatar_url":"https://secure.gravatar.com/avatar/4eac78fe7a7a607dcc097a0d6fd63690?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"4eac78fe7a7a607dcc097a0d6fd63690","url":"https://api.github.com/users/ELLIOTTCABLE","html_url":"https://github.com/ELLIOTTCABLE","followers_url":"https://api.github.com/users/ELLIOTTCABLE/followers","following_url":"https://api.github.com/users/ELLIOTTCABLE/following{/other_user}","gists_url":"https://api.github.com/users/ELLIOTTCABLE/gists{/gist_id}","starred_url":"https://api.github.com/users/ELLIOTTCABLE/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ELLIOTTCABLE/subscriptions","organizations_url":"https://api.github.com/users/ELLIOTTCABLE/orgs","repos_url":"https://api.github.com/users/ELLIOTTCABLE/repos","events_url":"https://api.github.com/users/ELLIOTTCABLE/events{/privacy}","received_events_url":"https://api.github.com/users/ELLIOTTCABLE/received_events","type":"User"},{"login":"monde","id":201,"avatar_url":"https://secure.gravatar.com/avatar/74c036cfbef785b139d06ccad4687b44?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"74c036cfbef785b139d06ccad4687b44","url":"https://api.github.com/users/monde","html_url":"https://github.com/monde","followers_url":"https://api.github.com/users/monde/followers","following_url":"https://api.github.com/users/monde/following{/other_user}","gists_url":"https://api.github.com/users/monde/gists{/gist_id}","starred_url":"https://api.github.com/users/monde/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/monde/subscriptions","organizations_url":"https://api.github.com/users/monde/orgs","repos_url":"https://api.github.com/users/monde/repos","events_url":"https://api.github.com/users/monde/events{/privacy}","received_events_url":"https://api.github.com/users/monde/received_events","type":"User"},{"login":"ryanbriones","id":202,"avatar_url":"https://secure.gravatar.com/avatar/881b7dd91c0d9287aea5bc505c10a15a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"881b7dd91c0d9287aea5bc505c10a15a","url":"https://api.github.com/users/ryanbriones","html_url":"https://github.com/ryanbriones","followers_url":"https://api.github.com/users/ryanbriones/followers","following_url":"https://api.github.com/users/ryanbriones/following{/other_user}","gists_url":"https://api.github.com/users/ryanbriones/gists{/gist_id}","starred_url":"https://api.github.com/users/ryanbriones/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ryanbriones/subscriptions","organizations_url":"https://api.github.com/users/ryanbriones/orgs","repos_url":"https://api.github.com/users/ryanbriones/repos","events_url":"https://api.github.com/users/ryanbriones/events{/privacy}","received_events_url":"https://api.github.com/users/ryanbriones/received_events","type":"User"},{"login":"wfarr","id":203,"avatar_url":"https://secure.gravatar.com/avatar/993c45489aac7a71f27112ba2ab4f74c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"993c45489aac7a71f27112ba2ab4f74c","url":"https://api.github.com/users/wfarr","html_url":"https://github.com/wfarr","followers_url":"https://api.github.com/users/wfarr/followers","following_url":"https://api.github.com/users/wfarr/following{/other_user}","gists_url":"https://api.github.com/users/wfarr/gists{/gist_id}","starred_url":"https://api.github.com/users/wfarr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wfarr/subscriptions","organizations_url":"https://api.github.com/users/wfarr/orgs","repos_url":"https://api.github.com/users/wfarr/repos","events_url":"https://api.github.com/users/wfarr/events{/privacy}","received_events_url":"https://api.github.com/users/wfarr/received_events","type":"User"},{"login":"jseifer","id":204,"avatar_url":"https://secure.gravatar.com/avatar/a890d2e9ed0d6ba7b427e4f8cb923090?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"a890d2e9ed0d6ba7b427e4f8cb923090","url":"https://api.github.com/users/jseifer","html_url":"https://github.com/jseifer","followers_url":"https://api.github.com/users/jseifer/followers","following_url":"https://api.github.com/users/jseifer/following{/other_user}","gists_url":"https://api.github.com/users/jseifer/gists{/gist_id}","starred_url":"https://api.github.com/users/jseifer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jseifer/subscriptions","organizations_url":"https://api.github.com/users/jseifer/orgs","repos_url":"https://api.github.com/users/jseifer/repos","events_url":"https://api.github.com/users/jseifer/events{/privacy}","received_events_url":"https://api.github.com/users/jseifer/received_events","type":"User"},{"login":"symlink","id":205,"avatar_url":"https://secure.gravatar.com/avatar/3c21859f7834da950a5c04c5335d0e7f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3c21859f7834da950a5c04c5335d0e7f","url":"https://api.github.com/users/symlink","html_url":"https://github.com/symlink","followers_url":"https://api.github.com/users/symlink/followers","following_url":"https://api.github.com/users/symlink/following{/other_user}","gists_url":"https://api.github.com/users/symlink/gists{/gist_id}","starred_url":"https://api.github.com/users/symlink/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/symlink/subscriptions","organizations_url":"https://api.github.com/users/symlink/orgs","repos_url":"https://api.github.com/users/symlink/repos","events_url":"https://api.github.com/users/symlink/events{/privacy}","received_events_url":"https://api.github.com/users/symlink/received_events","type":"User"},{"login":"sprsquish","id":206,"avatar_url":"https://secure.gravatar.com/avatar/9046f1681dc8375fd81b34799d5abd36?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"9046f1681dc8375fd81b34799d5abd36","url":"https://api.github.com/users/sprsquish","html_url":"https://github.com/sprsquish","followers_url":"https://api.github.com/users/sprsquish/followers","following_url":"https://api.github.com/users/sprsquish/following{/other_user}","gists_url":"https://api.github.com/users/sprsquish/gists{/gist_id}","starred_url":"https://api.github.com/users/sprsquish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sprsquish/subscriptions","organizations_url":"https://api.github.com/users/sprsquish/orgs","repos_url":"https://api.github.com/users/sprsquish/repos","events_url":"https://api.github.com/users/sprsquish/events{/privacy}","received_events_url":"https://api.github.com/users/sprsquish/received_events","type":"User"},{"login":"codahale","id":207,"avatar_url":"https://secure.gravatar.com/avatar/87206f3bf53d403e16ec023c56e904c5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"87206f3bf53d403e16ec023c56e904c5","url":"https://api.github.com/users/codahale","html_url":"https://github.com/codahale","followers_url":"https://api.github.com/users/codahale/followers","following_url":"https://api.github.com/users/codahale/following{/other_user}","gists_url":"https://api.github.com/users/codahale/gists{/gist_id}","starred_url":"https://api.github.com/users/codahale/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/codahale/subscriptions","organizations_url":"https://api.github.com/users/codahale/orgs","repos_url":"https://api.github.com/users/codahale/repos","events_url":"https://api.github.com/users/codahale/events{/privacy}","received_events_url":"https://api.github.com/users/codahale/received_events","type":"User"},{"login":"zackchandler","id":208,"avatar_url":"https://secure.gravatar.com/avatar/9bd29b4df0b88fba09fb74743336fc1e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"9bd29b4df0b88fba09fb74743336fc1e","url":"https://api.github.com/users/zackchandler","html_url":"https://github.com/zackchandler","followers_url":"https://api.github.com/users/zackchandler/followers","following_url":"https://api.github.com/users/zackchandler/following{/other_user}","gists_url":"https://api.github.com/users/zackchandler/gists{/gist_id}","starred_url":"https://api.github.com/users/zackchandler/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zackchandler/subscriptions","organizations_url":"https://api.github.com/users/zackchandler/orgs","repos_url":"https://api.github.com/users/zackchandler/repos","events_url":"https://api.github.com/users/zackchandler/events{/privacy}","received_events_url":"https://api.github.com/users/zackchandler/received_events","type":"User"},{"login":"jakehow","id":209,"avatar_url":"https://secure.gravatar.com/avatar/2dc29dd55d41c04abb7979a43078e6b5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2dc29dd55d41c04abb7979a43078e6b5","url":"https://api.github.com/users/jakehow","html_url":"https://github.com/jakehow","followers_url":"https://api.github.com/users/jakehow/followers","following_url":"https://api.github.com/users/jakehow/following{/other_user}","gists_url":"https://api.github.com/users/jakehow/gists{/gist_id}","starred_url":"https://api.github.com/users/jakehow/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jakehow/subscriptions","organizations_url":"https://api.github.com/users/jakehow/orgs","repos_url":"https://api.github.com/users/jakehow/repos","events_url":"https://api.github.com/users/jakehow/events{/privacy}","received_events_url":"https://api.github.com/users/jakehow/received_events","type":"User"},{"login":"evan","id":210,"avatar_url":"https://secure.gravatar.com/avatar/f8634aca904bc63cb047cb1bd93bdc74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"f8634aca904bc63cb047cb1bd93bdc74","url":"https://api.github.com/users/evan","html_url":"https://github.com/evan","followers_url":"https://api.github.com/users/evan/followers","following_url":"https://api.github.com/users/evan/following{/other_user}","gists_url":"https://api.github.com/users/evan/gists{/gist_id}","starred_url":"https://api.github.com/users/evan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/evan/subscriptions","organizations_url":"https://api.github.com/users/evan/orgs","repos_url":"https://api.github.com/users/evan/repos","events_url":"https://api.github.com/users/evan/events{/privacy}","received_events_url":"https://api.github.com/users/evan/received_events","type":"User"},{"login":"olleolleolle","id":211,"avatar_url":"https://secure.gravatar.com/avatar/577ffaaa74822dddde97e39d72c5d953?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"577ffaaa74822dddde97e39d72c5d953","url":"https://api.github.com/users/olleolleolle","html_url":"https://github.com/olleolleolle","followers_url":"https://api.github.com/users/olleolleolle/followers","following_url":"https://api.github.com/users/olleolleolle/following{/other_user}","gists_url":"https://api.github.com/users/olleolleolle/gists{/gist_id}","starred_url":"https://api.github.com/users/olleolleolle/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/olleolleolle/subscriptions","organizations_url":"https://api.github.com/users/olleolleolle/orgs","repos_url":"https://api.github.com/users/olleolleolle/repos","events_url":"https://api.github.com/users/olleolleolle/events{/privacy}","received_events_url":"https://api.github.com/users/olleolleolle/received_events","type":"User"},{"login":"chrismcg","id":212,"avatar_url":"https://secure.gravatar.com/avatar/0b1b1c3a746a2e346d8cae668b109b6e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"0b1b1c3a746a2e346d8cae668b109b6e","url":"https://api.github.com/users/chrismcg","html_url":"https://github.com/chrismcg","followers_url":"https://api.github.com/users/chrismcg/followers","following_url":"https://api.github.com/users/chrismcg/following{/other_user}","gists_url":"https://api.github.com/users/chrismcg/gists{/gist_id}","starred_url":"https://api.github.com/users/chrismcg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chrismcg/subscriptions","organizations_url":"https://api.github.com/users/chrismcg/orgs","repos_url":"https://api.github.com/users/chrismcg/repos","events_url":"https://api.github.com/users/chrismcg/events{/privacy}","received_events_url":"https://api.github.com/users/chrismcg/received_events","type":"User"},{"login":"chuyeow","id":213,"avatar_url":"https://secure.gravatar.com/avatar/00fd4ce27c06ba63e7ddca4c3d67e5ea?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"00fd4ce27c06ba63e7ddca4c3d67e5ea","url":"https://api.github.com/users/chuyeow","html_url":"https://github.com/chuyeow","followers_url":"https://api.github.com/users/chuyeow/followers","following_url":"https://api.github.com/users/chuyeow/following{/other_user}","gists_url":"https://api.github.com/users/chuyeow/gists{/gist_id}","starred_url":"https://api.github.com/users/chuyeow/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chuyeow/subscriptions","organizations_url":"https://api.github.com/users/chuyeow/orgs","repos_url":"https://api.github.com/users/chuyeow/repos","events_url":"https://api.github.com/users/chuyeow/events{/privacy}","received_events_url":"https://api.github.com/users/chuyeow/received_events","type":"User"},{"login":"mloughran","id":214,"avatar_url":"https://secure.gravatar.com/avatar/46bcac797b7a0fb45555cf912d580202?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"46bcac797b7a0fb45555cf912d580202","url":"https://api.github.com/users/mloughran","html_url":"https://github.com/mloughran","followers_url":"https://api.github.com/users/mloughran/followers","following_url":"https://api.github.com/users/mloughran/following{/other_user}","gists_url":"https://api.github.com/users/mloughran/gists{/gist_id}","starred_url":"https://api.github.com/users/mloughran/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mloughran/subscriptions","organizations_url":"https://api.github.com/users/mloughran/orgs","repos_url":"https://api.github.com/users/mloughran/repos","events_url":"https://api.github.com/users/mloughran/events{/privacy}","received_events_url":"https://api.github.com/users/mloughran/received_events","type":"User"},{"login":"matthewford","id":215,"avatar_url":"https://secure.gravatar.com/avatar/5238fd6b05bebf4fcc4d9863291ae6b4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5238fd6b05bebf4fcc4d9863291ae6b4","url":"https://api.github.com/users/matthewford","html_url":"https://github.com/matthewford","followers_url":"https://api.github.com/users/matthewford/followers","following_url":"https://api.github.com/users/matthewford/following{/other_user}","gists_url":"https://api.github.com/users/matthewford/gists{/gist_id}","starred_url":"https://api.github.com/users/matthewford/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/matthewford/subscriptions","organizations_url":"https://api.github.com/users/matthewford/orgs","repos_url":"https://api.github.com/users/matthewford/repos","events_url":"https://api.github.com/users/matthewford/events{/privacy}","received_events_url":"https://api.github.com/users/matthewford/received_events","type":"User"},{"login":"henrik","id":216,"avatar_url":"https://secure.gravatar.com/avatar/4a551074ddba4460f95d011c47190d0e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"4a551074ddba4460f95d011c47190d0e","url":"https://api.github.com/users/henrik","html_url":"https://github.com/henrik","followers_url":"https://api.github.com/users/henrik/followers","following_url":"https://api.github.com/users/henrik/following{/other_user}","gists_url":"https://api.github.com/users/henrik/gists{/gist_id}","starred_url":"https://api.github.com/users/henrik/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/henrik/subscriptions","organizations_url":"https://api.github.com/users/henrik/orgs","repos_url":"https://api.github.com/users/henrik/repos","events_url":"https://api.github.com/users/henrik/events{/privacy}","received_events_url":"https://api.github.com/users/henrik/received_events","type":"User"},{"login":"entangledstate","id":217,"avatar_url":"https://secure.gravatar.com/avatar/5a571ddc5f6c3fe0da7d5bef6fe90379?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5a571ddc5f6c3fe0da7d5bef6fe90379","url":"https://api.github.com/users/entangledstate","html_url":"https://github.com/entangledstate","followers_url":"https://api.github.com/users/entangledstate/followers","following_url":"https://api.github.com/users/entangledstate/following{/other_user}","gists_url":"https://api.github.com/users/entangledstate/gists{/gist_id}","starred_url":"https://api.github.com/users/entangledstate/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/entangledstate/subscriptions","organizations_url":"https://api.github.com/users/entangledstate/orgs","repos_url":"https://api.github.com/users/entangledstate/repos","events_url":"https://api.github.com/users/entangledstate/events{/privacy}","received_events_url":"https://api.github.com/users/entangledstate/received_events","type":"User"},{"login":"acf","id":218,"avatar_url":"https://secure.gravatar.com/avatar/4daf0b71d5d9a3882e583c0e72eaf5dc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"4daf0b71d5d9a3882e583c0e72eaf5dc","url":"https://api.github.com/users/acf","html_url":"https://github.com/acf","followers_url":"https://api.github.com/users/acf/followers","following_url":"https://api.github.com/users/acf/following{/other_user}","gists_url":"https://api.github.com/users/acf/gists{/gist_id}","starred_url":"https://api.github.com/users/acf/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/acf/subscriptions","organizations_url":"https://api.github.com/users/acf/orgs","repos_url":"https://api.github.com/users/acf/repos","events_url":"https://api.github.com/users/acf/events{/privacy}","received_events_url":"https://api.github.com/users/acf/received_events","type":"User"},{"login":"dan","id":219,"avatar_url":"https://secure.gravatar.com/avatar/ccac01cefa0352e0014a8de5b4efcdfd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"ccac01cefa0352e0014a8de5b4efcdfd","url":"https://api.github.com/users/dan","html_url":"https://github.com/dan","followers_url":"https://api.github.com/users/dan/followers","following_url":"https://api.github.com/users/dan/following{/other_user}","gists_url":"https://api.github.com/users/dan/gists{/gist_id}","starred_url":"https://api.github.com/users/dan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dan/subscriptions","organizations_url":"https://api.github.com/users/dan/orgs","repos_url":"https://api.github.com/users/dan/repos","events_url":"https://api.github.com/users/dan/events{/privacy}","received_events_url":"https://api.github.com/users/dan/received_events","type":"User"},{"login":"seebq","id":220,"avatar_url":"https://secure.gravatar.com/avatar/9fbfc1f08cd2a8d73475c384b1882824?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"9fbfc1f08cd2a8d73475c384b1882824","url":"https://api.github.com/users/seebq","html_url":"https://github.com/seebq","followers_url":"https://api.github.com/users/seebq/followers","following_url":"https://api.github.com/users/seebq/following{/other_user}","gists_url":"https://api.github.com/users/seebq/gists{/gist_id}","starred_url":"https://api.github.com/users/seebq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/seebq/subscriptions","organizations_url":"https://api.github.com/users/seebq/orgs","repos_url":"https://api.github.com/users/seebq/repos","events_url":"https://api.github.com/users/seebq/events{/privacy}","received_events_url":"https://api.github.com/users/seebq/received_events","type":"User"},{"login":"delynn","id":221,"avatar_url":"https://secure.gravatar.com/avatar/81279142caec7e29150fced7f916da62?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"81279142caec7e29150fced7f916da62","url":"https://api.github.com/users/delynn","html_url":"https://github.com/delynn","followers_url":"https://api.github.com/users/delynn/followers","following_url":"https://api.github.com/users/delynn/following{/other_user}","gists_url":"https://api.github.com/users/delynn/gists{/gist_id}","starred_url":"https://api.github.com/users/delynn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/delynn/subscriptions","organizations_url":"https://api.github.com/users/delynn/orgs","repos_url":"https://api.github.com/users/delynn/repos","events_url":"https://api.github.com/users/delynn/events{/privacy}","received_events_url":"https://api.github.com/users/delynn/received_events","type":"User"},{"login":"spicycode","id":222,"avatar_url":"https://secure.gravatar.com/avatar/7ce90d712fab09421b7f2cf955b9a4c8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"7ce90d712fab09421b7f2cf955b9a4c8","url":"https://api.github.com/users/spicycode","html_url":"https://github.com/spicycode","followers_url":"https://api.github.com/users/spicycode/followers","following_url":"https://api.github.com/users/spicycode/following{/other_user}","gists_url":"https://api.github.com/users/spicycode/gists{/gist_id}","starred_url":"https://api.github.com/users/spicycode/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/spicycode/subscriptions","organizations_url":"https://api.github.com/users/spicycode/orgs","repos_url":"https://api.github.com/users/spicycode/repos","events_url":"https://api.github.com/users/spicycode/events{/privacy}","received_events_url":"https://api.github.com/users/spicycode/received_events","type":"User"},{"login":"ntalbott","id":223,"avatar_url":"https://secure.gravatar.com/avatar/de4ad5b12586407fd72276710dc0fcb5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"de4ad5b12586407fd72276710dc0fcb5","url":"https://api.github.com/users/ntalbott","html_url":"https://github.com/ntalbott","followers_url":"https://api.github.com/users/ntalbott/followers","following_url":"https://api.github.com/users/ntalbott/following{/other_user}","gists_url":"https://api.github.com/users/ntalbott/gists{/gist_id}","starred_url":"https://api.github.com/users/ntalbott/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ntalbott/subscriptions","organizations_url":"https://api.github.com/users/ntalbott/orgs","repos_url":"https://api.github.com/users/ntalbott/repos","events_url":"https://api.github.com/users/ntalbott/events{/privacy}","received_events_url":"https://api.github.com/users/ntalbott/received_events","type":"User"},{"login":"rdempsey","id":224,"avatar_url":"https://secure.gravatar.com/avatar/8234a5ea3e56fca09c5549ee5e23e3e1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8234a5ea3e56fca09c5549ee5e23e3e1","url":"https://api.github.com/users/rdempsey","html_url":"https://github.com/rdempsey","followers_url":"https://api.github.com/users/rdempsey/followers","following_url":"https://api.github.com/users/rdempsey/following{/other_user}","gists_url":"https://api.github.com/users/rdempsey/gists{/gist_id}","starred_url":"https://api.github.com/users/rdempsey/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rdempsey/subscriptions","organizations_url":"https://api.github.com/users/rdempsey/orgs","repos_url":"https://api.github.com/users/rdempsey/repos","events_url":"https://api.github.com/users/rdempsey/events{/privacy}","received_events_url":"https://api.github.com/users/rdempsey/received_events","type":"User"},{"login":"mjankowski","id":225,"avatar_url":"https://secure.gravatar.com/avatar/e535b2456534fcea111ddd58375b7aa9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e535b2456534fcea111ddd58375b7aa9","url":"https://api.github.com/users/mjankowski","html_url":"https://github.com/mjankowski","followers_url":"https://api.github.com/users/mjankowski/followers","following_url":"https://api.github.com/users/mjankowski/following{/other_user}","gists_url":"https://api.github.com/users/mjankowski/gists{/gist_id}","starred_url":"https://api.github.com/users/mjankowski/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mjankowski/subscriptions","organizations_url":"https://api.github.com/users/mjankowski/orgs","repos_url":"https://api.github.com/users/mjankowski/repos","events_url":"https://api.github.com/users/mjankowski/events{/privacy}","received_events_url":"https://api.github.com/users/mjankowski/received_events","type":"User"},{"login":"danahern","id":226,"avatar_url":"https://secure.gravatar.com/avatar/c5a551578630f77febda69e391cb2a36?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"c5a551578630f77febda69e391cb2a36","url":"https://api.github.com/users/danahern","html_url":"https://github.com/danahern","followers_url":"https://api.github.com/users/danahern/followers","following_url":"https://api.github.com/users/danahern/following{/other_user}","gists_url":"https://api.github.com/users/danahern/gists{/gist_id}","starred_url":"https://api.github.com/users/danahern/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danahern/subscriptions","organizations_url":"https://api.github.com/users/danahern/orgs","repos_url":"https://api.github.com/users/danahern/repos","events_url":"https://api.github.com/users/danahern/events{/privacy}","received_events_url":"https://api.github.com/users/danahern/received_events","type":"User"},{"login":"dctanner","id":227,"avatar_url":"https://secure.gravatar.com/avatar/ef40b5b6a8593bb6a0360c0efe00f991?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"ef40b5b6a8593bb6a0360c0efe00f991","url":"https://api.github.com/users/dctanner","html_url":"https://github.com/dctanner","followers_url":"https://api.github.com/users/dctanner/followers","following_url":"https://api.github.com/users/dctanner/following{/other_user}","gists_url":"https://api.github.com/users/dctanner/gists{/gist_id}","starred_url":"https://api.github.com/users/dctanner/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dctanner/subscriptions","organizations_url":"https://api.github.com/users/dctanner/orgs","repos_url":"https://api.github.com/users/dctanner/repos","events_url":"https://api.github.com/users/dctanner/events{/privacy}","received_events_url":"https://api.github.com/users/dctanner/received_events","type":"User"},{"login":"alexvollmer","id":228,"avatar_url":"https://secure.gravatar.com/avatar/0bcaed12375a062b25777bf528cc1539?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"0bcaed12375a062b25777bf528cc1539","url":"https://api.github.com/users/alexvollmer","html_url":"https://github.com/alexvollmer","followers_url":"https://api.github.com/users/alexvollmer/followers","following_url":"https://api.github.com/users/alexvollmer/following{/other_user}","gists_url":"https://api.github.com/users/alexvollmer/gists{/gist_id}","starred_url":"https://api.github.com/users/alexvollmer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alexvollmer/subscriptions","organizations_url":"https://api.github.com/users/alexvollmer/orgs","repos_url":"https://api.github.com/users/alexvollmer/repos","events_url":"https://api.github.com/users/alexvollmer/events{/privacy}","received_events_url":"https://api.github.com/users/alexvollmer/received_events","type":"User"},{"login":"RailsAddict","id":229,"avatar_url":"https://secure.gravatar.com/avatar/867657059fc852575d685dc1292f77a0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"867657059fc852575d685dc1292f77a0","url":"https://api.github.com/users/RailsAddict","html_url":"https://github.com/RailsAddict","followers_url":"https://api.github.com/users/RailsAddict/followers","following_url":"https://api.github.com/users/RailsAddict/following{/other_user}","gists_url":"https://api.github.com/users/RailsAddict/gists{/gist_id}","starred_url":"https://api.github.com/users/RailsAddict/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/RailsAddict/subscriptions","organizations_url":"https://api.github.com/users/RailsAddict/orgs","repos_url":"https://api.github.com/users/RailsAddict/repos","events_url":"https://api.github.com/users/RailsAddict/events{/privacy}","received_events_url":"https://api.github.com/users/RailsAddict/received_events","type":"User"},{"login":"scharfie","id":230,"avatar_url":"https://secure.gravatar.com/avatar/828dc634f7493008dbc96c437e54ea2f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"828dc634f7493008dbc96c437e54ea2f","url":"https://api.github.com/users/scharfie","html_url":"https://github.com/scharfie","followers_url":"https://api.github.com/users/scharfie/followers","following_url":"https://api.github.com/users/scharfie/following{/other_user}","gists_url":"https://api.github.com/users/scharfie/gists{/gist_id}","starred_url":"https://api.github.com/users/scharfie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/scharfie/subscriptions","organizations_url":"https://api.github.com/users/scharfie/orgs","repos_url":"https://api.github.com/users/scharfie/repos","events_url":"https://api.github.com/users/scharfie/events{/privacy}","received_events_url":"https://api.github.com/users/scharfie/received_events","type":"User"},{"login":"jhardy-deleteme","id":231,"avatar_url":"https://secure.gravatar.com/avatar/3c3ae4f2a02a1d48755eceb2b291dcfd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3c3ae4f2a02a1d48755eceb2b291dcfd","url":"https://api.github.com/users/jhardy-deleteme","html_url":"https://github.com/jhardy-deleteme","followers_url":"https://api.github.com/users/jhardy-deleteme/followers","following_url":"https://api.github.com/users/jhardy-deleteme/following{/other_user}","gists_url":"https://api.github.com/users/jhardy-deleteme/gists{/gist_id}","starred_url":"https://api.github.com/users/jhardy-deleteme/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jhardy-deleteme/subscriptions","organizations_url":"https://api.github.com/users/jhardy-deleteme/orgs","repos_url":"https://api.github.com/users/jhardy-deleteme/repos","events_url":"https://api.github.com/users/jhardy-deleteme/events{/privacy}","received_events_url":"https://api.github.com/users/jhardy-deleteme/received_events","type":"User"},{"login":"daikini","id":232,"avatar_url":"https://secure.gravatar.com/avatar/d1e098b7194f0948f4efe23e8ba404ba?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"d1e098b7194f0948f4efe23e8ba404ba","url":"https://api.github.com/users/daikini","html_url":"https://github.com/daikini","followers_url":"https://api.github.com/users/daikini/followers","following_url":"https://api.github.com/users/daikini/following{/other_user}","gists_url":"https://api.github.com/users/daikini/gists{/gist_id}","starred_url":"https://api.github.com/users/daikini/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/daikini/subscriptions","organizations_url":"https://api.github.com/users/daikini/orgs","repos_url":"https://api.github.com/users/daikini/repos","events_url":"https://api.github.com/users/daikini/events{/privacy}","received_events_url":"https://api.github.com/users/daikini/received_events","type":"User"},{"login":"tdreyno","id":233,"avatar_url":"https://secure.gravatar.com/avatar/291394b477c2824bf5d75b831f125304?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"291394b477c2824bf5d75b831f125304","url":"https://api.github.com/users/tdreyno","html_url":"https://github.com/tdreyno","followers_url":"https://api.github.com/users/tdreyno/followers","following_url":"https://api.github.com/users/tdreyno/following{/other_user}","gists_url":"https://api.github.com/users/tdreyno/gists{/gist_id}","starred_url":"https://api.github.com/users/tdreyno/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tdreyno/subscriptions","organizations_url":"https://api.github.com/users/tdreyno/orgs","repos_url":"https://api.github.com/users/tdreyno/repos","events_url":"https://api.github.com/users/tdreyno/events{/privacy}","received_events_url":"https://api.github.com/users/tdreyno/received_events","type":"User"},{"login":"mysmallidea","id":234,"avatar_url":"https://secure.gravatar.com/avatar/e53d645e050e733280ee67c8e408042a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e53d645e050e733280ee67c8e408042a","url":"https://api.github.com/users/mysmallidea","html_url":"https://github.com/mysmallidea","followers_url":"https://api.github.com/users/mysmallidea/followers","following_url":"https://api.github.com/users/mysmallidea/following{/other_user}","gists_url":"https://api.github.com/users/mysmallidea/gists{/gist_id}","starred_url":"https://api.github.com/users/mysmallidea/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mysmallidea/subscriptions","organizations_url":"https://api.github.com/users/mysmallidea/orgs","repos_url":"https://api.github.com/users/mysmallidea/repos","events_url":"https://api.github.com/users/mysmallidea/events{/privacy}","received_events_url":"https://api.github.com/users/mysmallidea/received_events","type":"User"},{"login":"jnunemaker","id":235,"avatar_url":"https://secure.gravatar.com/avatar/3783e88128f2773aa70a8f925d5f795d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3783e88128f2773aa70a8f925d5f795d","url":"https://api.github.com/users/jnunemaker","html_url":"https://github.com/jnunemaker","followers_url":"https://api.github.com/users/jnunemaker/followers","following_url":"https://api.github.com/users/jnunemaker/following{/other_user}","gists_url":"https://api.github.com/users/jnunemaker/gists{/gist_id}","starred_url":"https://api.github.com/users/jnunemaker/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jnunemaker/subscriptions","organizations_url":"https://api.github.com/users/jnunemaker/orgs","repos_url":"https://api.github.com/users/jnunemaker/repos","events_url":"https://api.github.com/users/jnunemaker/events{/privacy}","received_events_url":"https://api.github.com/users/jnunemaker/received_events","type":"User"},{"login":"shayarnett","id":236,"avatar_url":"https://secure.gravatar.com/avatar/bc56e3ab1109d0ac3322d9cdea2bd52c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bc56e3ab1109d0ac3322d9cdea2bd52c","url":"https://api.github.com/users/shayarnett","html_url":"https://github.com/shayarnett","followers_url":"https://api.github.com/users/shayarnett/followers","following_url":"https://api.github.com/users/shayarnett/following{/other_user}","gists_url":"https://api.github.com/users/shayarnett/gists{/gist_id}","starred_url":"https://api.github.com/users/shayarnett/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shayarnett/subscriptions","organizations_url":"https://api.github.com/users/shayarnett/orgs","repos_url":"https://api.github.com/users/shayarnett/repos","events_url":"https://api.github.com/users/shayarnett/events{/privacy}","received_events_url":"https://api.github.com/users/shayarnett/received_events","type":"User"},{"login":"chad","id":237,"avatar_url":"https://secure.gravatar.com/avatar/77f306388bb6ae00ac0b0401e27cdc99?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"77f306388bb6ae00ac0b0401e27cdc99","url":"https://api.github.com/users/chad","html_url":"https://github.com/chad","followers_url":"https://api.github.com/users/chad/followers","following_url":"https://api.github.com/users/chad/following{/other_user}","gists_url":"https://api.github.com/users/chad/gists{/gist_id}","starred_url":"https://api.github.com/users/chad/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chad/subscriptions","organizations_url":"https://api.github.com/users/chad/orgs","repos_url":"https://api.github.com/users/chad/repos","events_url":"https://api.github.com/users/chad/events{/privacy}","received_events_url":"https://api.github.com/users/chad/received_events","type":"User"}] + diff --git a/lib/github/tests/ReplayData/Github.testGetUsersSince.txt b/lib/github/tests/ReplayData/Github.testGetUsersSince.txt new file mode 100644 index 0000000000..ed99df3f01 --- /dev/null +++ b/lib/github/tests/ReplayData/Github.testGetUsersSince.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/users?since=1000 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4995'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('cache-control', 'max-age=0, private, must-revalidate'), ('vary', 'Accept-Encoding'), ('content-length', '98348'), ('server', 'GitHub.com'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="first"'), ('etag', '"cca5d88559ccabed801c053558444403"'), ('access-control-allow-credentials', 'true'), ('date', 'Tue, 18 Jun 2013 15:43:12 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8')] +[{"login":"sbecker","id":1001,"avatar_url":"https://secure.gravatar.com/avatar/981b75f949c81efad3bc4b3c4ea88332?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"981b75f949c81efad3bc4b3c4ea88332","url":"https://api.github.com/users/sbecker","html_url":"https://github.com/sbecker","followers_url":"https://api.github.com/users/sbecker/followers","following_url":"https://api.github.com/users/sbecker/following{/other_user}","gists_url":"https://api.github.com/users/sbecker/gists{/gist_id}","starred_url":"https://api.github.com/users/sbecker/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sbecker/subscriptions","organizations_url":"https://api.github.com/users/sbecker/orgs","repos_url":"https://api.github.com/users/sbecker/repos","events_url":"https://api.github.com/users/sbecker/events{/privacy}","received_events_url":"https://api.github.com/users/sbecker/received_events","type":"User"},{"login":"aharper","id":1002,"avatar_url":"https://secure.gravatar.com/avatar/d41d8cd98f00b204e9800998ecf8427e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"d41d8cd98f00b204e9800998ecf8427e","url":"https://api.github.com/users/aharper","html_url":"https://github.com/aharper","followers_url":"https://api.github.com/users/aharper/followers","following_url":"https://api.github.com/users/aharper/following{/other_user}","gists_url":"https://api.github.com/users/aharper/gists{/gist_id}","starred_url":"https://api.github.com/users/aharper/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aharper/subscriptions","organizations_url":"https://api.github.com/users/aharper/orgs","repos_url":"https://api.github.com/users/aharper/repos","events_url":"https://api.github.com/users/aharper/events{/privacy}","received_events_url":"https://api.github.com/users/aharper/received_events","type":"User"},{"login":"stocad","id":1003,"avatar_url":"https://secure.gravatar.com/avatar/c186bc6ed8c59bd65d7d17c27584ff99?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"c186bc6ed8c59bd65d7d17c27584ff99","url":"https://api.github.com/users/stocad","html_url":"https://github.com/stocad","followers_url":"https://api.github.com/users/stocad/followers","following_url":"https://api.github.com/users/stocad/following{/other_user}","gists_url":"https://api.github.com/users/stocad/gists{/gist_id}","starred_url":"https://api.github.com/users/stocad/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stocad/subscriptions","organizations_url":"https://api.github.com/users/stocad/orgs","repos_url":"https://api.github.com/users/stocad/repos","events_url":"https://api.github.com/users/stocad/events{/privacy}","received_events_url":"https://api.github.com/users/stocad/received_events","type":"User"},{"login":"adambair","id":1004,"avatar_url":"https://secure.gravatar.com/avatar/96630febb655a1425f1279cc68c1dfa2?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"96630febb655a1425f1279cc68c1dfa2","url":"https://api.github.com/users/adambair","html_url":"https://github.com/adambair","followers_url":"https://api.github.com/users/adambair/followers","following_url":"https://api.github.com/users/adambair/following{/other_user}","gists_url":"https://api.github.com/users/adambair/gists{/gist_id}","starred_url":"https://api.github.com/users/adambair/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/adambair/subscriptions","organizations_url":"https://api.github.com/users/adambair/orgs","repos_url":"https://api.github.com/users/adambair/repos","events_url":"https://api.github.com/users/adambair/events{/privacy}","received_events_url":"https://api.github.com/users/adambair/received_events","type":"User"},{"login":"ernesto-jimenez","id":1005,"avatar_url":"https://secure.gravatar.com/avatar/125b528cf4cb0ddc3d4da9671dd2ee40?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"125b528cf4cb0ddc3d4da9671dd2ee40","url":"https://api.github.com/users/ernesto-jimenez","html_url":"https://github.com/ernesto-jimenez","followers_url":"https://api.github.com/users/ernesto-jimenez/followers","following_url":"https://api.github.com/users/ernesto-jimenez/following{/other_user}","gists_url":"https://api.github.com/users/ernesto-jimenez/gists{/gist_id}","starred_url":"https://api.github.com/users/ernesto-jimenez/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ernesto-jimenez/subscriptions","organizations_url":"https://api.github.com/users/ernesto-jimenez/orgs","repos_url":"https://api.github.com/users/ernesto-jimenez/repos","events_url":"https://api.github.com/users/ernesto-jimenez/events{/privacy}","received_events_url":"https://api.github.com/users/ernesto-jimenez/received_events","type":"User"},{"login":"aglasgall","id":1006,"avatar_url":"https://secure.gravatar.com/avatar/349ebc82502b22272184dccd32b0a045?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"349ebc82502b22272184dccd32b0a045","url":"https://api.github.com/users/aglasgall","html_url":"https://github.com/aglasgall","followers_url":"https://api.github.com/users/aglasgall/followers","following_url":"https://api.github.com/users/aglasgall/following{/other_user}","gists_url":"https://api.github.com/users/aglasgall/gists{/gist_id}","starred_url":"https://api.github.com/users/aglasgall/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aglasgall/subscriptions","organizations_url":"https://api.github.com/users/aglasgall/orgs","repos_url":"https://api.github.com/users/aglasgall/repos","events_url":"https://api.github.com/users/aglasgall/events{/privacy}","received_events_url":"https://api.github.com/users/aglasgall/received_events","type":"User"},{"login":"marcinpohl","id":1007,"avatar_url":"https://secure.gravatar.com/avatar/0c2f52ce1edc35f686d3240bf7043264?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"0c2f52ce1edc35f686d3240bf7043264","url":"https://api.github.com/users/marcinpohl","html_url":"https://github.com/marcinpohl","followers_url":"https://api.github.com/users/marcinpohl/followers","following_url":"https://api.github.com/users/marcinpohl/following{/other_user}","gists_url":"https://api.github.com/users/marcinpohl/gists{/gist_id}","starred_url":"https://api.github.com/users/marcinpohl/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/marcinpohl/subscriptions","organizations_url":"https://api.github.com/users/marcinpohl/orgs","repos_url":"https://api.github.com/users/marcinpohl/repos","events_url":"https://api.github.com/users/marcinpohl/events{/privacy}","received_events_url":"https://api.github.com/users/marcinpohl/received_events","type":"User"},{"login":"Schultz","id":1008,"avatar_url":"https://secure.gravatar.com/avatar/c996e830c7dc59a5e8db36dff386325f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"c996e830c7dc59a5e8db36dff386325f","url":"https://api.github.com/users/Schultz","html_url":"https://github.com/Schultz","followers_url":"https://api.github.com/users/Schultz/followers","following_url":"https://api.github.com/users/Schultz/following{/other_user}","gists_url":"https://api.github.com/users/Schultz/gists{/gist_id}","starred_url":"https://api.github.com/users/Schultz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Schultz/subscriptions","organizations_url":"https://api.github.com/users/Schultz/orgs","repos_url":"https://api.github.com/users/Schultz/repos","events_url":"https://api.github.com/users/Schultz/events{/privacy}","received_events_url":"https://api.github.com/users/Schultz/received_events","type":"User"},{"login":"altano","id":1009,"avatar_url":"https://secure.gravatar.com/avatar/64225bb31539cd70861cc055b0251ddb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"64225bb31539cd70861cc055b0251ddb","url":"https://api.github.com/users/altano","html_url":"https://github.com/altano","followers_url":"https://api.github.com/users/altano/followers","following_url":"https://api.github.com/users/altano/following{/other_user}","gists_url":"https://api.github.com/users/altano/gists{/gist_id}","starred_url":"https://api.github.com/users/altano/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/altano/subscriptions","organizations_url":"https://api.github.com/users/altano/orgs","repos_url":"https://api.github.com/users/altano/repos","events_url":"https://api.github.com/users/altano/events{/privacy}","received_events_url":"https://api.github.com/users/altano/received_events","type":"User"},{"login":"damm","id":1010,"avatar_url":"https://secure.gravatar.com/avatar/7f8d72b1b13288b6ab18d29a73408ae1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"7f8d72b1b13288b6ab18d29a73408ae1","url":"https://api.github.com/users/damm","html_url":"https://github.com/damm","followers_url":"https://api.github.com/users/damm/followers","following_url":"https://api.github.com/users/damm/following{/other_user}","gists_url":"https://api.github.com/users/damm/gists{/gist_id}","starred_url":"https://api.github.com/users/damm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damm/subscriptions","organizations_url":"https://api.github.com/users/damm/orgs","repos_url":"https://api.github.com/users/damm/repos","events_url":"https://api.github.com/users/damm/events{/privacy}","received_events_url":"https://api.github.com/users/damm/received_events","type":"User"},{"login":"plaggypig","id":1011,"avatar_url":"https://secure.gravatar.com/avatar/d41d8cd98f00b204e9800998ecf8427e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"d41d8cd98f00b204e9800998ecf8427e","url":"https://api.github.com/users/plaggypig","html_url":"https://github.com/plaggypig","followers_url":"https://api.github.com/users/plaggypig/followers","following_url":"https://api.github.com/users/plaggypig/following{/other_user}","gists_url":"https://api.github.com/users/plaggypig/gists{/gist_id}","starred_url":"https://api.github.com/users/plaggypig/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/plaggypig/subscriptions","organizations_url":"https://api.github.com/users/plaggypig/orgs","repos_url":"https://api.github.com/users/plaggypig/repos","events_url":"https://api.github.com/users/plaggypig/events{/privacy}","received_events_url":"https://api.github.com/users/plaggypig/received_events","type":"User"},{"login":"rwdaigle","id":1012,"avatar_url":"https://secure.gravatar.com/avatar/8eb7bf96dd877adca0cbd29bb2e47e38?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8eb7bf96dd877adca0cbd29bb2e47e38","url":"https://api.github.com/users/rwdaigle","html_url":"https://github.com/rwdaigle","followers_url":"https://api.github.com/users/rwdaigle/followers","following_url":"https://api.github.com/users/rwdaigle/following{/other_user}","gists_url":"https://api.github.com/users/rwdaigle/gists{/gist_id}","starred_url":"https://api.github.com/users/rwdaigle/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rwdaigle/subscriptions","organizations_url":"https://api.github.com/users/rwdaigle/orgs","repos_url":"https://api.github.com/users/rwdaigle/repos","events_url":"https://api.github.com/users/rwdaigle/events{/privacy}","received_events_url":"https://api.github.com/users/rwdaigle/received_events","type":"User"},{"login":"lbuenaventura","id":1013,"avatar_url":"https://secure.gravatar.com/avatar/d41d8cd98f00b204e9800998ecf8427e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"d41d8cd98f00b204e9800998ecf8427e","url":"https://api.github.com/users/lbuenaventura","html_url":"https://github.com/lbuenaventura","followers_url":"https://api.github.com/users/lbuenaventura/followers","following_url":"https://api.github.com/users/lbuenaventura/following{/other_user}","gists_url":"https://api.github.com/users/lbuenaventura/gists{/gist_id}","starred_url":"https://api.github.com/users/lbuenaventura/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lbuenaventura/subscriptions","organizations_url":"https://api.github.com/users/lbuenaventura/orgs","repos_url":"https://api.github.com/users/lbuenaventura/repos","events_url":"https://api.github.com/users/lbuenaventura/events{/privacy}","received_events_url":"https://api.github.com/users/lbuenaventura/received_events","type":"User"},{"login":"sunfmin","id":1014,"avatar_url":"https://secure.gravatar.com/avatar/d4a7c04ca87944e7fb06518fb64f9c36?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"d4a7c04ca87944e7fb06518fb64f9c36","url":"https://api.github.com/users/sunfmin","html_url":"https://github.com/sunfmin","followers_url":"https://api.github.com/users/sunfmin/followers","following_url":"https://api.github.com/users/sunfmin/following{/other_user}","gists_url":"https://api.github.com/users/sunfmin/gists{/gist_id}","starred_url":"https://api.github.com/users/sunfmin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sunfmin/subscriptions","organizations_url":"https://api.github.com/users/sunfmin/orgs","repos_url":"https://api.github.com/users/sunfmin/repos","events_url":"https://api.github.com/users/sunfmin/events{/privacy}","received_events_url":"https://api.github.com/users/sunfmin/received_events","type":"User"},{"login":"hilc","id":1015,"avatar_url":"https://secure.gravatar.com/avatar/d41d8cd98f00b204e9800998ecf8427e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"d41d8cd98f00b204e9800998ecf8427e","url":"https://api.github.com/users/hilc","html_url":"https://github.com/hilc","followers_url":"https://api.github.com/users/hilc/followers","following_url":"https://api.github.com/users/hilc/following{/other_user}","gists_url":"https://api.github.com/users/hilc/gists{/gist_id}","starred_url":"https://api.github.com/users/hilc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hilc/subscriptions","organizations_url":"https://api.github.com/users/hilc/orgs","repos_url":"https://api.github.com/users/hilc/repos","events_url":"https://api.github.com/users/hilc/events{/privacy}","received_events_url":"https://api.github.com/users/hilc/received_events","type":"User"},{"login":"amerine","id":1016,"avatar_url":"https://secure.gravatar.com/avatar/627f0a46a5ea5729951b8224833ca653?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"627f0a46a5ea5729951b8224833ca653","url":"https://api.github.com/users/amerine","html_url":"https://github.com/amerine","followers_url":"https://api.github.com/users/amerine/followers","following_url":"https://api.github.com/users/amerine/following{/other_user}","gists_url":"https://api.github.com/users/amerine/gists{/gist_id}","starred_url":"https://api.github.com/users/amerine/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/amerine/subscriptions","organizations_url":"https://api.github.com/users/amerine/orgs","repos_url":"https://api.github.com/users/amerine/repos","events_url":"https://api.github.com/users/amerine/events{/privacy}","received_events_url":"https://api.github.com/users/amerine/received_events","type":"User"},{"login":"jjgod","id":1017,"avatar_url":"https://secure.gravatar.com/avatar/2dd3e7469ade9ddedc6781133a39525e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2dd3e7469ade9ddedc6781133a39525e","url":"https://api.github.com/users/jjgod","html_url":"https://github.com/jjgod","followers_url":"https://api.github.com/users/jjgod/followers","following_url":"https://api.github.com/users/jjgod/following{/other_user}","gists_url":"https://api.github.com/users/jjgod/gists{/gist_id}","starred_url":"https://api.github.com/users/jjgod/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jjgod/subscriptions","organizations_url":"https://api.github.com/users/jjgod/orgs","repos_url":"https://api.github.com/users/jjgod/repos","events_url":"https://api.github.com/users/jjgod/events{/privacy}","received_events_url":"https://api.github.com/users/jjgod/received_events","type":"User"},{"login":"mystical","id":1018,"avatar_url":"https://secure.gravatar.com/avatar/d41d8cd98f00b204e9800998ecf8427e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"d41d8cd98f00b204e9800998ecf8427e","url":"https://api.github.com/users/mystical","html_url":"https://github.com/mystical","followers_url":"https://api.github.com/users/mystical/followers","following_url":"https://api.github.com/users/mystical/following{/other_user}","gists_url":"https://api.github.com/users/mystical/gists{/gist_id}","starred_url":"https://api.github.com/users/mystical/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mystical/subscriptions","organizations_url":"https://api.github.com/users/mystical/orgs","repos_url":"https://api.github.com/users/mystical/repos","events_url":"https://api.github.com/users/mystical/events{/privacy}","received_events_url":"https://api.github.com/users/mystical/received_events","type":"User"},{"login":"holin","id":1019,"avatar_url":"https://secure.gravatar.com/avatar/1263181dddbc17abed4d1d1c5ef47e17?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"1263181dddbc17abed4d1d1c5ef47e17","url":"https://api.github.com/users/holin","html_url":"https://github.com/holin","followers_url":"https://api.github.com/users/holin/followers","following_url":"https://api.github.com/users/holin/following{/other_user}","gists_url":"https://api.github.com/users/holin/gists{/gist_id}","starred_url":"https://api.github.com/users/holin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/holin/subscriptions","organizations_url":"https://api.github.com/users/holin/orgs","repos_url":"https://api.github.com/users/holin/repos","events_url":"https://api.github.com/users/holin/events{/privacy}","received_events_url":"https://api.github.com/users/holin/received_events","type":"User"},{"login":"justinweiss","id":1020,"avatar_url":"https://secure.gravatar.com/avatar/81cb8ff8ba584785c33bc786997624bc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"81cb8ff8ba584785c33bc786997624bc","url":"https://api.github.com/users/justinweiss","html_url":"https://github.com/justinweiss","followers_url":"https://api.github.com/users/justinweiss/followers","following_url":"https://api.github.com/users/justinweiss/following{/other_user}","gists_url":"https://api.github.com/users/justinweiss/gists{/gist_id}","starred_url":"https://api.github.com/users/justinweiss/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/justinweiss/subscriptions","organizations_url":"https://api.github.com/users/justinweiss/orgs","repos_url":"https://api.github.com/users/justinweiss/repos","events_url":"https://api.github.com/users/justinweiss/events{/privacy}","received_events_url":"https://api.github.com/users/justinweiss/received_events","type":"User"},{"login":"sethtrain","id":1021,"avatar_url":"https://secure.gravatar.com/avatar/8599d4a5752e74c5bb6bd81044a058d0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8599d4a5752e74c5bb6bd81044a058d0","url":"https://api.github.com/users/sethtrain","html_url":"https://github.com/sethtrain","followers_url":"https://api.github.com/users/sethtrain/followers","following_url":"https://api.github.com/users/sethtrain/following{/other_user}","gists_url":"https://api.github.com/users/sethtrain/gists{/gist_id}","starred_url":"https://api.github.com/users/sethtrain/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sethtrain/subscriptions","organizations_url":"https://api.github.com/users/sethtrain/orgs","repos_url":"https://api.github.com/users/sethtrain/repos","events_url":"https://api.github.com/users/sethtrain/events{/privacy}","received_events_url":"https://api.github.com/users/sethtrain/received_events","type":"User"},{"login":"mbleigh","id":1022,"avatar_url":"https://secure.gravatar.com/avatar/69dc78b59ef008c58e6e842f9f3e0624?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"69dc78b59ef008c58e6e842f9f3e0624","url":"https://api.github.com/users/mbleigh","html_url":"https://github.com/mbleigh","followers_url":"https://api.github.com/users/mbleigh/followers","following_url":"https://api.github.com/users/mbleigh/following{/other_user}","gists_url":"https://api.github.com/users/mbleigh/gists{/gist_id}","starred_url":"https://api.github.com/users/mbleigh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbleigh/subscriptions","organizations_url":"https://api.github.com/users/mbleigh/orgs","repos_url":"https://api.github.com/users/mbleigh/repos","events_url":"https://api.github.com/users/mbleigh/events{/privacy}","received_events_url":"https://api.github.com/users/mbleigh/received_events","type":"User"},{"login":"cobrien","id":1023,"avatar_url":"https://secure.gravatar.com/avatar/d41d8cd98f00b204e9800998ecf8427e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"d41d8cd98f00b204e9800998ecf8427e","url":"https://api.github.com/users/cobrien","html_url":"https://github.com/cobrien","followers_url":"https://api.github.com/users/cobrien/followers","following_url":"https://api.github.com/users/cobrien/following{/other_user}","gists_url":"https://api.github.com/users/cobrien/gists{/gist_id}","starred_url":"https://api.github.com/users/cobrien/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cobrien/subscriptions","organizations_url":"https://api.github.com/users/cobrien/orgs","repos_url":"https://api.github.com/users/cobrien/repos","events_url":"https://api.github.com/users/cobrien/events{/privacy}","received_events_url":"https://api.github.com/users/cobrien/received_events","type":"User"},{"login":"pstuteville","id":1024,"avatar_url":"https://secure.gravatar.com/avatar/199cfe81f5ceaa16aa3a8c317e142b5c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"199cfe81f5ceaa16aa3a8c317e142b5c","url":"https://api.github.com/users/pstuteville","html_url":"https://github.com/pstuteville","followers_url":"https://api.github.com/users/pstuteville/followers","following_url":"https://api.github.com/users/pstuteville/following{/other_user}","gists_url":"https://api.github.com/users/pstuteville/gists{/gist_id}","starred_url":"https://api.github.com/users/pstuteville/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pstuteville/subscriptions","organizations_url":"https://api.github.com/users/pstuteville/orgs","repos_url":"https://api.github.com/users/pstuteville/repos","events_url":"https://api.github.com/users/pstuteville/events{/privacy}","received_events_url":"https://api.github.com/users/pstuteville/received_events","type":"User"},{"login":"da3mon","id":1025,"avatar_url":"https://secure.gravatar.com/avatar/2c1d180ae7dc513f3071932acea4ee8d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2c1d180ae7dc513f3071932acea4ee8d","url":"https://api.github.com/users/da3mon","html_url":"https://github.com/da3mon","followers_url":"https://api.github.com/users/da3mon/followers","following_url":"https://api.github.com/users/da3mon/following{/other_user}","gists_url":"https://api.github.com/users/da3mon/gists{/gist_id}","starred_url":"https://api.github.com/users/da3mon/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/da3mon/subscriptions","organizations_url":"https://api.github.com/users/da3mon/orgs","repos_url":"https://api.github.com/users/da3mon/repos","events_url":"https://api.github.com/users/da3mon/events{/privacy}","received_events_url":"https://api.github.com/users/da3mon/received_events","type":"User"},{"login":"fiveruns","id":1026,"avatar_url":"https://secure.gravatar.com/avatar/cdbed635952f5f8b021822d135cc3451?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"cdbed635952f5f8b021822d135cc3451","url":"https://api.github.com/users/fiveruns","html_url":"https://github.com/fiveruns","followers_url":"https://api.github.com/users/fiveruns/followers","following_url":"https://api.github.com/users/fiveruns/following{/other_user}","gists_url":"https://api.github.com/users/fiveruns/gists{/gist_id}","starred_url":"https://api.github.com/users/fiveruns/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fiveruns/subscriptions","organizations_url":"https://api.github.com/users/fiveruns/orgs","repos_url":"https://api.github.com/users/fiveruns/repos","events_url":"https://api.github.com/users/fiveruns/events{/privacy}","received_events_url":"https://api.github.com/users/fiveruns/received_events","type":"User"},{"login":"waferbaby","id":1027,"avatar_url":"https://secure.gravatar.com/avatar/94c2b3de82a261ea5bbe25e704b88407?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"94c2b3de82a261ea5bbe25e704b88407","url":"https://api.github.com/users/waferbaby","html_url":"https://github.com/waferbaby","followers_url":"https://api.github.com/users/waferbaby/followers","following_url":"https://api.github.com/users/waferbaby/following{/other_user}","gists_url":"https://api.github.com/users/waferbaby/gists{/gist_id}","starred_url":"https://api.github.com/users/waferbaby/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/waferbaby/subscriptions","organizations_url":"https://api.github.com/users/waferbaby/orgs","repos_url":"https://api.github.com/users/waferbaby/repos","events_url":"https://api.github.com/users/waferbaby/events{/privacy}","received_events_url":"https://api.github.com/users/waferbaby/received_events","type":"User"},{"login":"codabee","id":1028,"avatar_url":"https://secure.gravatar.com/avatar/64eea2c9fa64c23412563b1eeb6f8c3d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"64eea2c9fa64c23412563b1eeb6f8c3d","url":"https://api.github.com/users/codabee","html_url":"https://github.com/codabee","followers_url":"https://api.github.com/users/codabee/followers","following_url":"https://api.github.com/users/codabee/following{/other_user}","gists_url":"https://api.github.com/users/codabee/gists{/gist_id}","starred_url":"https://api.github.com/users/codabee/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/codabee/subscriptions","organizations_url":"https://api.github.com/users/codabee/orgs","repos_url":"https://api.github.com/users/codabee/repos","events_url":"https://api.github.com/users/codabee/events{/privacy}","received_events_url":"https://api.github.com/users/codabee/received_events","type":"User"},{"login":"creston","id":1029,"avatar_url":"https://secure.gravatar.com/avatar/fedcd70929e8b47916199a9079f57898?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"fedcd70929e8b47916199a9079f57898","url":"https://api.github.com/users/creston","html_url":"https://github.com/creston","followers_url":"https://api.github.com/users/creston/followers","following_url":"https://api.github.com/users/creston/following{/other_user}","gists_url":"https://api.github.com/users/creston/gists{/gist_id}","starred_url":"https://api.github.com/users/creston/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/creston/subscriptions","organizations_url":"https://api.github.com/users/creston/orgs","repos_url":"https://api.github.com/users/creston/repos","events_url":"https://api.github.com/users/creston/events{/privacy}","received_events_url":"https://api.github.com/users/creston/received_events","type":"User"},{"login":"jkatz05","id":1030,"avatar_url":"https://secure.gravatar.com/avatar/5aa55195444ca63deae46f9e1b5a11c6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5aa55195444ca63deae46f9e1b5a11c6","url":"https://api.github.com/users/jkatz05","html_url":"https://github.com/jkatz05","followers_url":"https://api.github.com/users/jkatz05/followers","following_url":"https://api.github.com/users/jkatz05/following{/other_user}","gists_url":"https://api.github.com/users/jkatz05/gists{/gist_id}","starred_url":"https://api.github.com/users/jkatz05/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jkatz05/subscriptions","organizations_url":"https://api.github.com/users/jkatz05/orgs","repos_url":"https://api.github.com/users/jkatz05/repos","events_url":"https://api.github.com/users/jkatz05/events{/privacy}","received_events_url":"https://api.github.com/users/jkatz05/received_events","type":"User"},{"login":"jasonm","id":1031,"avatar_url":"https://secure.gravatar.com/avatar/8478f9ebe099ad853f022deeb2c1defe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8478f9ebe099ad853f022deeb2c1defe","url":"https://api.github.com/users/jasonm","html_url":"https://github.com/jasonm","followers_url":"https://api.github.com/users/jasonm/followers","following_url":"https://api.github.com/users/jasonm/following{/other_user}","gists_url":"https://api.github.com/users/jasonm/gists{/gist_id}","starred_url":"https://api.github.com/users/jasonm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jasonm/subscriptions","organizations_url":"https://api.github.com/users/jasonm/orgs","repos_url":"https://api.github.com/users/jasonm/repos","events_url":"https://api.github.com/users/jasonm/events{/privacy}","received_events_url":"https://api.github.com/users/jasonm/received_events","type":"User"},{"login":"antage","id":1032,"avatar_url":"https://secure.gravatar.com/avatar/5aabebb65e39f16a1bd9987bc96b09a5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5aabebb65e39f16a1bd9987bc96b09a5","url":"https://api.github.com/users/antage","html_url":"https://github.com/antage","followers_url":"https://api.github.com/users/antage/followers","following_url":"https://api.github.com/users/antage/following{/other_user}","gists_url":"https://api.github.com/users/antage/gists{/gist_id}","starred_url":"https://api.github.com/users/antage/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/antage/subscriptions","organizations_url":"https://api.github.com/users/antage/orgs","repos_url":"https://api.github.com/users/antage/repos","events_url":"https://api.github.com/users/antage/events{/privacy}","received_events_url":"https://api.github.com/users/antage/received_events","type":"User"},{"login":"cduhard","id":1033,"avatar_url":"https://secure.gravatar.com/avatar/e2c5f9a999cb73c86f3cd46572733f88?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e2c5f9a999cb73c86f3cd46572733f88","url":"https://api.github.com/users/cduhard","html_url":"https://github.com/cduhard","followers_url":"https://api.github.com/users/cduhard/followers","following_url":"https://api.github.com/users/cduhard/following{/other_user}","gists_url":"https://api.github.com/users/cduhard/gists{/gist_id}","starred_url":"https://api.github.com/users/cduhard/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cduhard/subscriptions","organizations_url":"https://api.github.com/users/cduhard/orgs","repos_url":"https://api.github.com/users/cduhard/repos","events_url":"https://api.github.com/users/cduhard/events{/privacy}","received_events_url":"https://api.github.com/users/cduhard/received_events","type":"User"},{"login":"matthewd","id":1034,"avatar_url":"https://secure.gravatar.com/avatar/e55df1cc7d5fdb4ae9bc2afcb9afe7e4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e55df1cc7d5fdb4ae9bc2afcb9afe7e4","url":"https://api.github.com/users/matthewd","html_url":"https://github.com/matthewd","followers_url":"https://api.github.com/users/matthewd/followers","following_url":"https://api.github.com/users/matthewd/following{/other_user}","gists_url":"https://api.github.com/users/matthewd/gists{/gist_id}","starred_url":"https://api.github.com/users/matthewd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/matthewd/subscriptions","organizations_url":"https://api.github.com/users/matthewd/orgs","repos_url":"https://api.github.com/users/matthewd/repos","events_url":"https://api.github.com/users/matthewd/events{/privacy}","received_events_url":"https://api.github.com/users/matthewd/received_events","type":"User"},{"login":"mattman","id":1035,"avatar_url":"https://secure.gravatar.com/avatar/d95fb6f97cb2d47b08d4c79735010171?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"d95fb6f97cb2d47b08d4c79735010171","url":"https://api.github.com/users/mattman","html_url":"https://github.com/mattman","followers_url":"https://api.github.com/users/mattman/followers","following_url":"https://api.github.com/users/mattman/following{/other_user}","gists_url":"https://api.github.com/users/mattman/gists{/gist_id}","starred_url":"https://api.github.com/users/mattman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mattman/subscriptions","organizations_url":"https://api.github.com/users/mattman/orgs","repos_url":"https://api.github.com/users/mattman/repos","events_url":"https://api.github.com/users/mattman/events{/privacy}","received_events_url":"https://api.github.com/users/mattman/received_events","type":"User"},{"login":"asiemar","id":1036,"avatar_url":"https://secure.gravatar.com/avatar/3e5b676b4f67a5e383ab4fd2a88647ad?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3e5b676b4f67a5e383ab4fd2a88647ad","url":"https://api.github.com/users/asiemar","html_url":"https://github.com/asiemar","followers_url":"https://api.github.com/users/asiemar/followers","following_url":"https://api.github.com/users/asiemar/following{/other_user}","gists_url":"https://api.github.com/users/asiemar/gists{/gist_id}","starred_url":"https://api.github.com/users/asiemar/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/asiemar/subscriptions","organizations_url":"https://api.github.com/users/asiemar/orgs","repos_url":"https://api.github.com/users/asiemar/repos","events_url":"https://api.github.com/users/asiemar/events{/privacy}","received_events_url":"https://api.github.com/users/asiemar/received_events","type":"User"},{"login":"zmack","id":1037,"avatar_url":"https://secure.gravatar.com/avatar/75cb325d7b55a6659fc050f6fa822c7c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"75cb325d7b55a6659fc050f6fa822c7c","url":"https://api.github.com/users/zmack","html_url":"https://github.com/zmack","followers_url":"https://api.github.com/users/zmack/followers","following_url":"https://api.github.com/users/zmack/following{/other_user}","gists_url":"https://api.github.com/users/zmack/gists{/gist_id}","starred_url":"https://api.github.com/users/zmack/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zmack/subscriptions","organizations_url":"https://api.github.com/users/zmack/orgs","repos_url":"https://api.github.com/users/zmack/repos","events_url":"https://api.github.com/users/zmack/events{/privacy}","received_events_url":"https://api.github.com/users/zmack/received_events","type":"User"},{"login":"Arthur","id":1038,"avatar_url":"https://secure.gravatar.com/avatar/352d2eb2d9c29d5e08e599c3999fff43?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"352d2eb2d9c29d5e08e599c3999fff43","url":"https://api.github.com/users/Arthur","html_url":"https://github.com/Arthur","followers_url":"https://api.github.com/users/Arthur/followers","following_url":"https://api.github.com/users/Arthur/following{/other_user}","gists_url":"https://api.github.com/users/Arthur/gists{/gist_id}","starred_url":"https://api.github.com/users/Arthur/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Arthur/subscriptions","organizations_url":"https://api.github.com/users/Arthur/orgs","repos_url":"https://api.github.com/users/Arthur/repos","events_url":"https://api.github.com/users/Arthur/events{/privacy}","received_events_url":"https://api.github.com/users/Arthur/received_events","type":"User"},{"login":"nalin","id":1039,"avatar_url":"https://secure.gravatar.com/avatar/9f23fc0803edc32d25efde9019dc85c1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"9f23fc0803edc32d25efde9019dc85c1","url":"https://api.github.com/users/nalin","html_url":"https://github.com/nalin","followers_url":"https://api.github.com/users/nalin/followers","following_url":"https://api.github.com/users/nalin/following{/other_user}","gists_url":"https://api.github.com/users/nalin/gists{/gist_id}","starred_url":"https://api.github.com/users/nalin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nalin/subscriptions","organizations_url":"https://api.github.com/users/nalin/orgs","repos_url":"https://api.github.com/users/nalin/repos","events_url":"https://api.github.com/users/nalin/events{/privacy}","received_events_url":"https://api.github.com/users/nalin/received_events","type":"User"},{"login":"vivaopensource","id":1040,"avatar_url":"https://secure.gravatar.com/avatar/32962cca7fa82b1479764763cd22cd6a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"32962cca7fa82b1479764763cd22cd6a","url":"https://api.github.com/users/vivaopensource","html_url":"https://github.com/vivaopensource","followers_url":"https://api.github.com/users/vivaopensource/followers","following_url":"https://api.github.com/users/vivaopensource/following{/other_user}","gists_url":"https://api.github.com/users/vivaopensource/gists{/gist_id}","starred_url":"https://api.github.com/users/vivaopensource/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vivaopensource/subscriptions","organizations_url":"https://api.github.com/users/vivaopensource/orgs","repos_url":"https://api.github.com/users/vivaopensource/repos","events_url":"https://api.github.com/users/vivaopensource/events{/privacy}","received_events_url":"https://api.github.com/users/vivaopensource/received_events","type":"User"},{"login":"joao","id":1041,"avatar_url":"https://secure.gravatar.com/avatar/077bbf65a67d507d5d271b6ff860d466?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"077bbf65a67d507d5d271b6ff860d466","url":"https://api.github.com/users/joao","html_url":"https://github.com/joao","followers_url":"https://api.github.com/users/joao/followers","following_url":"https://api.github.com/users/joao/following{/other_user}","gists_url":"https://api.github.com/users/joao/gists{/gist_id}","starred_url":"https://api.github.com/users/joao/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/joao/subscriptions","organizations_url":"https://api.github.com/users/joao/orgs","repos_url":"https://api.github.com/users/joao/repos","events_url":"https://api.github.com/users/joao/events{/privacy}","received_events_url":"https://api.github.com/users/joao/received_events","type":"User"},{"login":"wavydavy","id":1042,"avatar_url":"https://secure.gravatar.com/avatar/771b7a3bcfb5cac42aa4de59499be72c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"771b7a3bcfb5cac42aa4de59499be72c","url":"https://api.github.com/users/wavydavy","html_url":"https://github.com/wavydavy","followers_url":"https://api.github.com/users/wavydavy/followers","following_url":"https://api.github.com/users/wavydavy/following{/other_user}","gists_url":"https://api.github.com/users/wavydavy/gists{/gist_id}","starred_url":"https://api.github.com/users/wavydavy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wavydavy/subscriptions","organizations_url":"https://api.github.com/users/wavydavy/orgs","repos_url":"https://api.github.com/users/wavydavy/repos","events_url":"https://api.github.com/users/wavydavy/events{/privacy}","received_events_url":"https://api.github.com/users/wavydavy/received_events","type":"User"},{"login":"darkel","id":1043,"avatar_url":"https://secure.gravatar.com/avatar/f2b260f965834d1b54fab53d043bc4f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"f2b260f965834d1b54fab53d043bc4f0","url":"https://api.github.com/users/darkel","html_url":"https://github.com/darkel","followers_url":"https://api.github.com/users/darkel/followers","following_url":"https://api.github.com/users/darkel/following{/other_user}","gists_url":"https://api.github.com/users/darkel/gists{/gist_id}","starred_url":"https://api.github.com/users/darkel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/darkel/subscriptions","organizations_url":"https://api.github.com/users/darkel/orgs","repos_url":"https://api.github.com/users/darkel/repos","events_url":"https://api.github.com/users/darkel/events{/privacy}","received_events_url":"https://api.github.com/users/darkel/received_events","type":"User"},{"login":"edbond","id":1044,"avatar_url":"https://secure.gravatar.com/avatar/671af8c4a2d223c7d2e2ede3a0154975?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"671af8c4a2d223c7d2e2ede3a0154975","url":"https://api.github.com/users/edbond","html_url":"https://github.com/edbond","followers_url":"https://api.github.com/users/edbond/followers","following_url":"https://api.github.com/users/edbond/following{/other_user}","gists_url":"https://api.github.com/users/edbond/gists{/gist_id}","starred_url":"https://api.github.com/users/edbond/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edbond/subscriptions","organizations_url":"https://api.github.com/users/edbond/orgs","repos_url":"https://api.github.com/users/edbond/repos","events_url":"https://api.github.com/users/edbond/events{/privacy}","received_events_url":"https://api.github.com/users/edbond/received_events","type":"User"},{"login":"pejorative","id":1045,"avatar_url":"https://secure.gravatar.com/avatar/7bff617f94e1f3d929164475e3d14611?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"7bff617f94e1f3d929164475e3d14611","url":"https://api.github.com/users/pejorative","html_url":"https://github.com/pejorative","followers_url":"https://api.github.com/users/pejorative/followers","following_url":"https://api.github.com/users/pejorative/following{/other_user}","gists_url":"https://api.github.com/users/pejorative/gists{/gist_id}","starred_url":"https://api.github.com/users/pejorative/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pejorative/subscriptions","organizations_url":"https://api.github.com/users/pejorative/orgs","repos_url":"https://api.github.com/users/pejorative/repos","events_url":"https://api.github.com/users/pejorative/events{/privacy}","received_events_url":"https://api.github.com/users/pejorative/received_events","type":"User"},{"login":"mewz","id":1046,"avatar_url":"https://secure.gravatar.com/avatar/a4e763b116e14c5eec2483bdb6f431fb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"a4e763b116e14c5eec2483bdb6f431fb","url":"https://api.github.com/users/mewz","html_url":"https://github.com/mewz","followers_url":"https://api.github.com/users/mewz/followers","following_url":"https://api.github.com/users/mewz/following{/other_user}","gists_url":"https://api.github.com/users/mewz/gists{/gist_id}","starred_url":"https://api.github.com/users/mewz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mewz/subscriptions","organizations_url":"https://api.github.com/users/mewz/orgs","repos_url":"https://api.github.com/users/mewz/repos","events_url":"https://api.github.com/users/mewz/events{/privacy}","received_events_url":"https://api.github.com/users/mewz/received_events","type":"User"},{"login":"btbytes","id":1047,"avatar_url":"https://secure.gravatar.com/avatar/84c3eab99b7425d6b614ba6d11402d6b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c3eab99b7425d6b614ba6d11402d6b","url":"https://api.github.com/users/btbytes","html_url":"https://github.com/btbytes","followers_url":"https://api.github.com/users/btbytes/followers","following_url":"https://api.github.com/users/btbytes/following{/other_user}","gists_url":"https://api.github.com/users/btbytes/gists{/gist_id}","starred_url":"https://api.github.com/users/btbytes/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/btbytes/subscriptions","organizations_url":"https://api.github.com/users/btbytes/orgs","repos_url":"https://api.github.com/users/btbytes/repos","events_url":"https://api.github.com/users/btbytes/events{/privacy}","received_events_url":"https://api.github.com/users/btbytes/received_events","type":"User"},{"login":"arunthampi","id":1048,"avatar_url":"https://secure.gravatar.com/avatar/ca448f8bc4c932c6e691202a05a095a3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"ca448f8bc4c932c6e691202a05a095a3","url":"https://api.github.com/users/arunthampi","html_url":"https://github.com/arunthampi","followers_url":"https://api.github.com/users/arunthampi/followers","following_url":"https://api.github.com/users/arunthampi/following{/other_user}","gists_url":"https://api.github.com/users/arunthampi/gists{/gist_id}","starred_url":"https://api.github.com/users/arunthampi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arunthampi/subscriptions","organizations_url":"https://api.github.com/users/arunthampi/orgs","repos_url":"https://api.github.com/users/arunthampi/repos","events_url":"https://api.github.com/users/arunthampi/events{/privacy}","received_events_url":"https://api.github.com/users/arunthampi/received_events","type":"User"},{"login":"universal","id":1049,"avatar_url":"https://secure.gravatar.com/avatar/9c62482a24aff44f86c1fa7627ca2d16?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"9c62482a24aff44f86c1fa7627ca2d16","url":"https://api.github.com/users/universal","html_url":"https://github.com/universal","followers_url":"https://api.github.com/users/universal/followers","following_url":"https://api.github.com/users/universal/following{/other_user}","gists_url":"https://api.github.com/users/universal/gists{/gist_id}","starred_url":"https://api.github.com/users/universal/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/universal/subscriptions","organizations_url":"https://api.github.com/users/universal/orgs","repos_url":"https://api.github.com/users/universal/repos","events_url":"https://api.github.com/users/universal/events{/privacy}","received_events_url":"https://api.github.com/users/universal/received_events","type":"User"},{"login":"calavera","id":1050,"avatar_url":"https://secure.gravatar.com/avatar/0c39b828636367fc6e22b7be8c803c74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"0c39b828636367fc6e22b7be8c803c74","url":"https://api.github.com/users/calavera","html_url":"https://github.com/calavera","followers_url":"https://api.github.com/users/calavera/followers","following_url":"https://api.github.com/users/calavera/following{/other_user}","gists_url":"https://api.github.com/users/calavera/gists{/gist_id}","starred_url":"https://api.github.com/users/calavera/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/calavera/subscriptions","organizations_url":"https://api.github.com/users/calavera/orgs","repos_url":"https://api.github.com/users/calavera/repos","events_url":"https://api.github.com/users/calavera/events{/privacy}","received_events_url":"https://api.github.com/users/calavera/received_events","type":"User"},{"login":"elia","id":1051,"avatar_url":"https://secure.gravatar.com/avatar/c82630c82a3c675d2928804f432fcf17?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"c82630c82a3c675d2928804f432fcf17","url":"https://api.github.com/users/elia","html_url":"https://github.com/elia","followers_url":"https://api.github.com/users/elia/followers","following_url":"https://api.github.com/users/elia/following{/other_user}","gists_url":"https://api.github.com/users/elia/gists{/gist_id}","starred_url":"https://api.github.com/users/elia/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elia/subscriptions","organizations_url":"https://api.github.com/users/elia/orgs","repos_url":"https://api.github.com/users/elia/repos","events_url":"https://api.github.com/users/elia/events{/privacy}","received_events_url":"https://api.github.com/users/elia/received_events","type":"User"},{"login":"joerichsen","id":1052,"avatar_url":"https://secure.gravatar.com/avatar/2f8f11ab83818a2861da96898dc60a3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2f8f11ab83818a2861da96898dc60a3f","url":"https://api.github.com/users/joerichsen","html_url":"https://github.com/joerichsen","followers_url":"https://api.github.com/users/joerichsen/followers","following_url":"https://api.github.com/users/joerichsen/following{/other_user}","gists_url":"https://api.github.com/users/joerichsen/gists{/gist_id}","starred_url":"https://api.github.com/users/joerichsen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/joerichsen/subscriptions","organizations_url":"https://api.github.com/users/joerichsen/orgs","repos_url":"https://api.github.com/users/joerichsen/repos","events_url":"https://api.github.com/users/joerichsen/events{/privacy}","received_events_url":"https://api.github.com/users/joerichsen/received_events","type":"User"},{"login":"haraldmartin","id":1053,"avatar_url":"https://secure.gravatar.com/avatar/b78374fb8f70fb5f674a9d5fa91eee16?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b78374fb8f70fb5f674a9d5fa91eee16","url":"https://api.github.com/users/haraldmartin","html_url":"https://github.com/haraldmartin","followers_url":"https://api.github.com/users/haraldmartin/followers","following_url":"https://api.github.com/users/haraldmartin/following{/other_user}","gists_url":"https://api.github.com/users/haraldmartin/gists{/gist_id}","starred_url":"https://api.github.com/users/haraldmartin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/haraldmartin/subscriptions","organizations_url":"https://api.github.com/users/haraldmartin/orgs","repos_url":"https://api.github.com/users/haraldmartin/repos","events_url":"https://api.github.com/users/haraldmartin/events{/privacy}","received_events_url":"https://api.github.com/users/haraldmartin/received_events","type":"User"},{"login":"benreesman","id":1055,"avatar_url":"https://secure.gravatar.com/avatar/1a0baa0251ce76b320e44bae2738ec9b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"1a0baa0251ce76b320e44bae2738ec9b","url":"https://api.github.com/users/benreesman","html_url":"https://github.com/benreesman","followers_url":"https://api.github.com/users/benreesman/followers","following_url":"https://api.github.com/users/benreesman/following{/other_user}","gists_url":"https://api.github.com/users/benreesman/gists{/gist_id}","starred_url":"https://api.github.com/users/benreesman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/benreesman/subscriptions","organizations_url":"https://api.github.com/users/benreesman/orgs","repos_url":"https://api.github.com/users/benreesman/repos","events_url":"https://api.github.com/users/benreesman/events{/privacy}","received_events_url":"https://api.github.com/users/benreesman/received_events","type":"User"},{"login":"ludwig","id":1056,"avatar_url":"https://secure.gravatar.com/avatar/581cfb0e3c97afb9c196a0c90bf4cf92?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"581cfb0e3c97afb9c196a0c90bf4cf92","url":"https://api.github.com/users/ludwig","html_url":"https://github.com/ludwig","followers_url":"https://api.github.com/users/ludwig/followers","following_url":"https://api.github.com/users/ludwig/following{/other_user}","gists_url":"https://api.github.com/users/ludwig/gists{/gist_id}","starred_url":"https://api.github.com/users/ludwig/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ludwig/subscriptions","organizations_url":"https://api.github.com/users/ludwig/orgs","repos_url":"https://api.github.com/users/ludwig/repos","events_url":"https://api.github.com/users/ludwig/events{/privacy}","received_events_url":"https://api.github.com/users/ludwig/received_events","type":"User"},{"login":"jkp","id":1057,"avatar_url":"https://secure.gravatar.com/avatar/62c795f7890d6c5b889b665f457320ee?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"62c795f7890d6c5b889b665f457320ee","url":"https://api.github.com/users/jkp","html_url":"https://github.com/jkp","followers_url":"https://api.github.com/users/jkp/followers","following_url":"https://api.github.com/users/jkp/following{/other_user}","gists_url":"https://api.github.com/users/jkp/gists{/gist_id}","starred_url":"https://api.github.com/users/jkp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jkp/subscriptions","organizations_url":"https://api.github.com/users/jkp/orgs","repos_url":"https://api.github.com/users/jkp/repos","events_url":"https://api.github.com/users/jkp/events{/privacy}","received_events_url":"https://api.github.com/users/jkp/received_events","type":"User"},{"login":"Cirex","id":1058,"avatar_url":"https://secure.gravatar.com/avatar/77dcfc91f4acf2a0497fb3f45c2e96b5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"77dcfc91f4acf2a0497fb3f45c2e96b5","url":"https://api.github.com/users/Cirex","html_url":"https://github.com/Cirex","followers_url":"https://api.github.com/users/Cirex/followers","following_url":"https://api.github.com/users/Cirex/following{/other_user}","gists_url":"https://api.github.com/users/Cirex/gists{/gist_id}","starred_url":"https://api.github.com/users/Cirex/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Cirex/subscriptions","organizations_url":"https://api.github.com/users/Cirex/orgs","repos_url":"https://api.github.com/users/Cirex/repos","events_url":"https://api.github.com/users/Cirex/events{/privacy}","received_events_url":"https://api.github.com/users/Cirex/received_events","type":"User"},{"login":"pilu","id":1059,"avatar_url":"https://secure.gravatar.com/avatar/e46a22caa688e5b7e3ee17b068409173?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e46a22caa688e5b7e3ee17b068409173","url":"https://api.github.com/users/pilu","html_url":"https://github.com/pilu","followers_url":"https://api.github.com/users/pilu/followers","following_url":"https://api.github.com/users/pilu/following{/other_user}","gists_url":"https://api.github.com/users/pilu/gists{/gist_id}","starred_url":"https://api.github.com/users/pilu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pilu/subscriptions","organizations_url":"https://api.github.com/users/pilu/orgs","repos_url":"https://api.github.com/users/pilu/repos","events_url":"https://api.github.com/users/pilu/events{/privacy}","received_events_url":"https://api.github.com/users/pilu/received_events","type":"User"},{"login":"andrew","id":1060,"avatar_url":"https://secure.gravatar.com/avatar/8ddbf811da78bb0daeeb3cacd7cf743f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8ddbf811da78bb0daeeb3cacd7cf743f","url":"https://api.github.com/users/andrew","html_url":"https://github.com/andrew","followers_url":"https://api.github.com/users/andrew/followers","following_url":"https://api.github.com/users/andrew/following{/other_user}","gists_url":"https://api.github.com/users/andrew/gists{/gist_id}","starred_url":"https://api.github.com/users/andrew/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/andrew/subscriptions","organizations_url":"https://api.github.com/users/andrew/orgs","repos_url":"https://api.github.com/users/andrew/repos","events_url":"https://api.github.com/users/andrew/events{/privacy}","received_events_url":"https://api.github.com/users/andrew/received_events","type":"User"},{"login":"hmans","id":1061,"avatar_url":"https://secure.gravatar.com/avatar/b13a9240291ffa22215214316bd365de?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b13a9240291ffa22215214316bd365de","url":"https://api.github.com/users/hmans","html_url":"https://github.com/hmans","followers_url":"https://api.github.com/users/hmans/followers","following_url":"https://api.github.com/users/hmans/following{/other_user}","gists_url":"https://api.github.com/users/hmans/gists{/gist_id}","starred_url":"https://api.github.com/users/hmans/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hmans/subscriptions","organizations_url":"https://api.github.com/users/hmans/orgs","repos_url":"https://api.github.com/users/hmans/repos","events_url":"https://api.github.com/users/hmans/events{/privacy}","received_events_url":"https://api.github.com/users/hmans/received_events","type":"User"},{"login":"aanand","id":1062,"avatar_url":"https://secure.gravatar.com/avatar/73022df4be6fcced9792f50497b4f119?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"73022df4be6fcced9792f50497b4f119","url":"https://api.github.com/users/aanand","html_url":"https://github.com/aanand","followers_url":"https://api.github.com/users/aanand/followers","following_url":"https://api.github.com/users/aanand/following{/other_user}","gists_url":"https://api.github.com/users/aanand/gists{/gist_id}","starred_url":"https://api.github.com/users/aanand/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aanand/subscriptions","organizations_url":"https://api.github.com/users/aanand/orgs","repos_url":"https://api.github.com/users/aanand/repos","events_url":"https://api.github.com/users/aanand/events{/privacy}","received_events_url":"https://api.github.com/users/aanand/received_events","type":"User"},{"login":"pqs","id":1063,"avatar_url":"https://secure.gravatar.com/avatar/9220c70df7fd1b481ef72152ee1ee198?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"9220c70df7fd1b481ef72152ee1ee198","url":"https://api.github.com/users/pqs","html_url":"https://github.com/pqs","followers_url":"https://api.github.com/users/pqs/followers","following_url":"https://api.github.com/users/pqs/following{/other_user}","gists_url":"https://api.github.com/users/pqs/gists{/gist_id}","starred_url":"https://api.github.com/users/pqs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pqs/subscriptions","organizations_url":"https://api.github.com/users/pqs/orgs","repos_url":"https://api.github.com/users/pqs/repos","events_url":"https://api.github.com/users/pqs/events{/privacy}","received_events_url":"https://api.github.com/users/pqs/received_events","type":"User"},{"login":"muf","id":1064,"avatar_url":"https://secure.gravatar.com/avatar/f9e2701f83fac81ff02f7a7daf7d59f3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"f9e2701f83fac81ff02f7a7daf7d59f3","url":"https://api.github.com/users/muf","html_url":"https://github.com/muf","followers_url":"https://api.github.com/users/muf/followers","following_url":"https://api.github.com/users/muf/following{/other_user}","gists_url":"https://api.github.com/users/muf/gists{/gist_id}","starred_url":"https://api.github.com/users/muf/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/muf/subscriptions","organizations_url":"https://api.github.com/users/muf/orgs","repos_url":"https://api.github.com/users/muf/repos","events_url":"https://api.github.com/users/muf/events{/privacy}","received_events_url":"https://api.github.com/users/muf/received_events","type":"User"},{"login":"smn","id":1065,"avatar_url":"https://secure.gravatar.com/avatar/e92fdbb9e57b1e2aa67bcc827a728370?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e92fdbb9e57b1e2aa67bcc827a728370","url":"https://api.github.com/users/smn","html_url":"https://github.com/smn","followers_url":"https://api.github.com/users/smn/followers","following_url":"https://api.github.com/users/smn/following{/other_user}","gists_url":"https://api.github.com/users/smn/gists{/gist_id}","starred_url":"https://api.github.com/users/smn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/smn/subscriptions","organizations_url":"https://api.github.com/users/smn/orgs","repos_url":"https://api.github.com/users/smn/repos","events_url":"https://api.github.com/users/smn/events{/privacy}","received_events_url":"https://api.github.com/users/smn/received_events","type":"User"},{"login":"solnic","id":1066,"avatar_url":"https://secure.gravatar.com/avatar/e864e5088627498df8f9b911a9bc3219?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e864e5088627498df8f9b911a9bc3219","url":"https://api.github.com/users/solnic","html_url":"https://github.com/solnic","followers_url":"https://api.github.com/users/solnic/followers","following_url":"https://api.github.com/users/solnic/following{/other_user}","gists_url":"https://api.github.com/users/solnic/gists{/gist_id}","starred_url":"https://api.github.com/users/solnic/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/solnic/subscriptions","organizations_url":"https://api.github.com/users/solnic/orgs","repos_url":"https://api.github.com/users/solnic/repos","events_url":"https://api.github.com/users/solnic/events{/privacy}","received_events_url":"https://api.github.com/users/solnic/received_events","type":"User"},{"login":"railslove","id":1067,"avatar_url":"https://secure.gravatar.com/avatar/eee01e7dfdb3c215a285b08eb59a1ce3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","gravatar_id":"eee01e7dfdb3c215a285b08eb59a1ce3","url":"https://api.github.com/users/railslove","html_url":"https://github.com/railslove","followers_url":"https://api.github.com/users/railslove/followers","following_url":"https://api.github.com/users/railslove/following{/other_user}","gists_url":"https://api.github.com/users/railslove/gists{/gist_id}","starred_url":"https://api.github.com/users/railslove/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/railslove/subscriptions","organizations_url":"https://api.github.com/users/railslove/orgs","repos_url":"https://api.github.com/users/railslove/repos","events_url":"https://api.github.com/users/railslove/events{/privacy}","received_events_url":"https://api.github.com/users/railslove/received_events","type":"Organization"},{"login":"we5","id":1068,"avatar_url":"https://secure.gravatar.com/avatar/717223ce8209fcb4bb298bdeeaedd518?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"717223ce8209fcb4bb298bdeeaedd518","url":"https://api.github.com/users/we5","html_url":"https://github.com/we5","followers_url":"https://api.github.com/users/we5/followers","following_url":"https://api.github.com/users/we5/following{/other_user}","gists_url":"https://api.github.com/users/we5/gists{/gist_id}","starred_url":"https://api.github.com/users/we5/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/we5/subscriptions","organizations_url":"https://api.github.com/users/we5/orgs","repos_url":"https://api.github.com/users/we5/repos","events_url":"https://api.github.com/users/we5/events{/privacy}","received_events_url":"https://api.github.com/users/we5/received_events","type":"User"},{"login":"returnthis","id":1069,"avatar_url":"https://secure.gravatar.com/avatar/0b444e7b90924d0711d0dcc7d08e09f9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"0b444e7b90924d0711d0dcc7d08e09f9","url":"https://api.github.com/users/returnthis","html_url":"https://github.com/returnthis","followers_url":"https://api.github.com/users/returnthis/followers","following_url":"https://api.github.com/users/returnthis/following{/other_user}","gists_url":"https://api.github.com/users/returnthis/gists{/gist_id}","starred_url":"https://api.github.com/users/returnthis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/returnthis/subscriptions","organizations_url":"https://api.github.com/users/returnthis/orgs","repos_url":"https://api.github.com/users/returnthis/repos","events_url":"https://api.github.com/users/returnthis/events{/privacy}","received_events_url":"https://api.github.com/users/returnthis/received_events","type":"User"},{"login":"stympy","id":1070,"avatar_url":"https://secure.gravatar.com/avatar/2ddece96c2f2046f723ee37485e86be5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2ddece96c2f2046f723ee37485e86be5","url":"https://api.github.com/users/stympy","html_url":"https://github.com/stympy","followers_url":"https://api.github.com/users/stympy/followers","following_url":"https://api.github.com/users/stympy/following{/other_user}","gists_url":"https://api.github.com/users/stympy/gists{/gist_id}","starred_url":"https://api.github.com/users/stympy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stympy/subscriptions","organizations_url":"https://api.github.com/users/stympy/orgs","repos_url":"https://api.github.com/users/stympy/repos","events_url":"https://api.github.com/users/stympy/events{/privacy}","received_events_url":"https://api.github.com/users/stympy/received_events","type":"User"},{"login":"jspears","id":1071,"avatar_url":"https://secure.gravatar.com/avatar/02262e2f944b78b10d2cdcefe8ea2bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"02262e2f944b78b10d2cdcefe8ea2bbe","url":"https://api.github.com/users/jspears","html_url":"https://github.com/jspears","followers_url":"https://api.github.com/users/jspears/followers","following_url":"https://api.github.com/users/jspears/following{/other_user}","gists_url":"https://api.github.com/users/jspears/gists{/gist_id}","starred_url":"https://api.github.com/users/jspears/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jspears/subscriptions","organizations_url":"https://api.github.com/users/jspears/orgs","repos_url":"https://api.github.com/users/jspears/repos","events_url":"https://api.github.com/users/jspears/events{/privacy}","received_events_url":"https://api.github.com/users/jspears/received_events","type":"User"},{"login":"mwise","id":1072,"avatar_url":"https://secure.gravatar.com/avatar/15d38c4baafee1f87c772284080ee42b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"15d38c4baafee1f87c772284080ee42b","url":"https://api.github.com/users/mwise","html_url":"https://github.com/mwise","followers_url":"https://api.github.com/users/mwise/followers","following_url":"https://api.github.com/users/mwise/following{/other_user}","gists_url":"https://api.github.com/users/mwise/gists{/gist_id}","starred_url":"https://api.github.com/users/mwise/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mwise/subscriptions","organizations_url":"https://api.github.com/users/mwise/orgs","repos_url":"https://api.github.com/users/mwise/repos","events_url":"https://api.github.com/users/mwise/events{/privacy}","received_events_url":"https://api.github.com/users/mwise/received_events","type":"User"},{"login":"georgepalmer","id":1073,"avatar_url":"https://secure.gravatar.com/avatar/cee5f57dec08a6e547f6e209393d9c63?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"cee5f57dec08a6e547f6e209393d9c63","url":"https://api.github.com/users/georgepalmer","html_url":"https://github.com/georgepalmer","followers_url":"https://api.github.com/users/georgepalmer/followers","following_url":"https://api.github.com/users/georgepalmer/following{/other_user}","gists_url":"https://api.github.com/users/georgepalmer/gists{/gist_id}","starred_url":"https://api.github.com/users/georgepalmer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/georgepalmer/subscriptions","organizations_url":"https://api.github.com/users/georgepalmer/orgs","repos_url":"https://api.github.com/users/georgepalmer/repos","events_url":"https://api.github.com/users/georgepalmer/events{/privacy}","received_events_url":"https://api.github.com/users/georgepalmer/received_events","type":"User"},{"login":"andregoncalves","id":1074,"avatar_url":"https://secure.gravatar.com/avatar/4595f74cb9ac661ba3060d85352037b9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"4595f74cb9ac661ba3060d85352037b9","url":"https://api.github.com/users/andregoncalves","html_url":"https://github.com/andregoncalves","followers_url":"https://api.github.com/users/andregoncalves/followers","following_url":"https://api.github.com/users/andregoncalves/following{/other_user}","gists_url":"https://api.github.com/users/andregoncalves/gists{/gist_id}","starred_url":"https://api.github.com/users/andregoncalves/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/andregoncalves/subscriptions","organizations_url":"https://api.github.com/users/andregoncalves/orgs","repos_url":"https://api.github.com/users/andregoncalves/repos","events_url":"https://api.github.com/users/andregoncalves/events{/privacy}","received_events_url":"https://api.github.com/users/andregoncalves/received_events","type":"User"},{"login":"dchelimsky","id":1075,"avatar_url":"https://secure.gravatar.com/avatar/5d38ab152e1e3e219512a9859fcd93af?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5d38ab152e1e3e219512a9859fcd93af","url":"https://api.github.com/users/dchelimsky","html_url":"https://github.com/dchelimsky","followers_url":"https://api.github.com/users/dchelimsky/followers","following_url":"https://api.github.com/users/dchelimsky/following{/other_user}","gists_url":"https://api.github.com/users/dchelimsky/gists{/gist_id}","starred_url":"https://api.github.com/users/dchelimsky/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dchelimsky/subscriptions","organizations_url":"https://api.github.com/users/dchelimsky/orgs","repos_url":"https://api.github.com/users/dchelimsky/repos","events_url":"https://api.github.com/users/dchelimsky/events{/privacy}","received_events_url":"https://api.github.com/users/dchelimsky/received_events","type":"User"},{"login":"dmondark","id":1076,"avatar_url":"https://secure.gravatar.com/avatar/e076cb8dfb81c15933038dc93cb6570a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e076cb8dfb81c15933038dc93cb6570a","url":"https://api.github.com/users/dmondark","html_url":"https://github.com/dmondark","followers_url":"https://api.github.com/users/dmondark/followers","following_url":"https://api.github.com/users/dmondark/following{/other_user}","gists_url":"https://api.github.com/users/dmondark/gists{/gist_id}","starred_url":"https://api.github.com/users/dmondark/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dmondark/subscriptions","organizations_url":"https://api.github.com/users/dmondark/orgs","repos_url":"https://api.github.com/users/dmondark/repos","events_url":"https://api.github.com/users/dmondark/events{/privacy}","received_events_url":"https://api.github.com/users/dmondark/received_events","type":"User"},{"login":"pdlug","id":1077,"avatar_url":"https://secure.gravatar.com/avatar/1067916bdca9347542c035fdb7430083?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"1067916bdca9347542c035fdb7430083","url":"https://api.github.com/users/pdlug","html_url":"https://github.com/pdlug","followers_url":"https://api.github.com/users/pdlug/followers","following_url":"https://api.github.com/users/pdlug/following{/other_user}","gists_url":"https://api.github.com/users/pdlug/gists{/gist_id}","starred_url":"https://api.github.com/users/pdlug/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pdlug/subscriptions","organizations_url":"https://api.github.com/users/pdlug/orgs","repos_url":"https://api.github.com/users/pdlug/repos","events_url":"https://api.github.com/users/pdlug/events{/privacy}","received_events_url":"https://api.github.com/users/pdlug/received_events","type":"User"},{"login":"fredix","id":1078,"avatar_url":"https://secure.gravatar.com/avatar/3c75327133edef1a398f48a3566b0f7b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3c75327133edef1a398f48a3566b0f7b","url":"https://api.github.com/users/fredix","html_url":"https://github.com/fredix","followers_url":"https://api.github.com/users/fredix/followers","following_url":"https://api.github.com/users/fredix/following{/other_user}","gists_url":"https://api.github.com/users/fredix/gists{/gist_id}","starred_url":"https://api.github.com/users/fredix/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fredix/subscriptions","organizations_url":"https://api.github.com/users/fredix/orgs","repos_url":"https://api.github.com/users/fredix/repos","events_url":"https://api.github.com/users/fredix/events{/privacy}","received_events_url":"https://api.github.com/users/fredix/received_events","type":"User"},{"login":"agibralter","id":1079,"avatar_url":"https://secure.gravatar.com/avatar/de396cedd7085b8ac01f8c18a7e24167?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"de396cedd7085b8ac01f8c18a7e24167","url":"https://api.github.com/users/agibralter","html_url":"https://github.com/agibralter","followers_url":"https://api.github.com/users/agibralter/followers","following_url":"https://api.github.com/users/agibralter/following{/other_user}","gists_url":"https://api.github.com/users/agibralter/gists{/gist_id}","starred_url":"https://api.github.com/users/agibralter/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/agibralter/subscriptions","organizations_url":"https://api.github.com/users/agibralter/orgs","repos_url":"https://api.github.com/users/agibralter/repos","events_url":"https://api.github.com/users/agibralter/events{/privacy}","received_events_url":"https://api.github.com/users/agibralter/received_events","type":"User"},{"login":"frac","id":1080,"avatar_url":"https://secure.gravatar.com/avatar/3fccf3feddc8c218a4007bf51e4143e7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3fccf3feddc8c218a4007bf51e4143e7","url":"https://api.github.com/users/frac","html_url":"https://github.com/frac","followers_url":"https://api.github.com/users/frac/followers","following_url":"https://api.github.com/users/frac/following{/other_user}","gists_url":"https://api.github.com/users/frac/gists{/gist_id}","starred_url":"https://api.github.com/users/frac/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/frac/subscriptions","organizations_url":"https://api.github.com/users/frac/orgs","repos_url":"https://api.github.com/users/frac/repos","events_url":"https://api.github.com/users/frac/events{/privacy}","received_events_url":"https://api.github.com/users/frac/received_events","type":"User"},{"login":"ismasan","id":1081,"avatar_url":"https://secure.gravatar.com/avatar/93894025c277e9617911a949f1848a21?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"93894025c277e9617911a949f1848a21","url":"https://api.github.com/users/ismasan","html_url":"https://github.com/ismasan","followers_url":"https://api.github.com/users/ismasan/followers","following_url":"https://api.github.com/users/ismasan/following{/other_user}","gists_url":"https://api.github.com/users/ismasan/gists{/gist_id}","starred_url":"https://api.github.com/users/ismasan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ismasan/subscriptions","organizations_url":"https://api.github.com/users/ismasan/orgs","repos_url":"https://api.github.com/users/ismasan/repos","events_url":"https://api.github.com/users/ismasan/events{/privacy}","received_events_url":"https://api.github.com/users/ismasan/received_events","type":"User"},{"login":"dpickett","id":1082,"avatar_url":"https://secure.gravatar.com/avatar/ae619e02984c5efc3d3e6f9fef39079c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"ae619e02984c5efc3d3e6f9fef39079c","url":"https://api.github.com/users/dpickett","html_url":"https://github.com/dpickett","followers_url":"https://api.github.com/users/dpickett/followers","following_url":"https://api.github.com/users/dpickett/following{/other_user}","gists_url":"https://api.github.com/users/dpickett/gists{/gist_id}","starred_url":"https://api.github.com/users/dpickett/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dpickett/subscriptions","organizations_url":"https://api.github.com/users/dpickett/orgs","repos_url":"https://api.github.com/users/dpickett/repos","events_url":"https://api.github.com/users/dpickett/events{/privacy}","received_events_url":"https://api.github.com/users/dpickett/received_events","type":"User"},{"login":"maxwellterry","id":1083,"avatar_url":"https://secure.gravatar.com/avatar/a905cdf7d80252315ece9293e8ef3f71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"a905cdf7d80252315ece9293e8ef3f71","url":"https://api.github.com/users/maxwellterry","html_url":"https://github.com/maxwellterry","followers_url":"https://api.github.com/users/maxwellterry/followers","following_url":"https://api.github.com/users/maxwellterry/following{/other_user}","gists_url":"https://api.github.com/users/maxwellterry/gists{/gist_id}","starred_url":"https://api.github.com/users/maxwellterry/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/maxwellterry/subscriptions","organizations_url":"https://api.github.com/users/maxwellterry/orgs","repos_url":"https://api.github.com/users/maxwellterry/repos","events_url":"https://api.github.com/users/maxwellterry/events{/privacy}","received_events_url":"https://api.github.com/users/maxwellterry/received_events","type":"User"},{"login":"fsvehla","id":1084,"avatar_url":"https://secure.gravatar.com/avatar/d3374d506ecb4145d399bd9162dd66ce?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"d3374d506ecb4145d399bd9162dd66ce","url":"https://api.github.com/users/fsvehla","html_url":"https://github.com/fsvehla","followers_url":"https://api.github.com/users/fsvehla/followers","following_url":"https://api.github.com/users/fsvehla/following{/other_user}","gists_url":"https://api.github.com/users/fsvehla/gists{/gist_id}","starred_url":"https://api.github.com/users/fsvehla/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fsvehla/subscriptions","organizations_url":"https://api.github.com/users/fsvehla/orgs","repos_url":"https://api.github.com/users/fsvehla/repos","events_url":"https://api.github.com/users/fsvehla/events{/privacy}","received_events_url":"https://api.github.com/users/fsvehla/received_events","type":"User"},{"login":"glasner","id":1085,"avatar_url":"https://secure.gravatar.com/avatar/008059ed6b16d4c2a8793bbb24508ba7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"008059ed6b16d4c2a8793bbb24508ba7","url":"https://api.github.com/users/glasner","html_url":"https://github.com/glasner","followers_url":"https://api.github.com/users/glasner/followers","following_url":"https://api.github.com/users/glasner/following{/other_user}","gists_url":"https://api.github.com/users/glasner/gists{/gist_id}","starred_url":"https://api.github.com/users/glasner/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/glasner/subscriptions","organizations_url":"https://api.github.com/users/glasner/orgs","repos_url":"https://api.github.com/users/glasner/repos","events_url":"https://api.github.com/users/glasner/events{/privacy}","received_events_url":"https://api.github.com/users/glasner/received_events","type":"User"},{"login":"dmadding","id":1086,"avatar_url":"https://secure.gravatar.com/avatar/6ecf5b7000fb010ba83cff733b5149a6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"6ecf5b7000fb010ba83cff733b5149a6","url":"https://api.github.com/users/dmadding","html_url":"https://github.com/dmadding","followers_url":"https://api.github.com/users/dmadding/followers","following_url":"https://api.github.com/users/dmadding/following{/other_user}","gists_url":"https://api.github.com/users/dmadding/gists{/gist_id}","starred_url":"https://api.github.com/users/dmadding/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dmadding/subscriptions","organizations_url":"https://api.github.com/users/dmadding/orgs","repos_url":"https://api.github.com/users/dmadding/repos","events_url":"https://api.github.com/users/dmadding/events{/privacy}","received_events_url":"https://api.github.com/users/dmadding/received_events","type":"User"},{"login":"jwilkins","id":1087,"avatar_url":"https://secure.gravatar.com/avatar/1b03afc0871dcebcb94ea8c71c30d119?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"1b03afc0871dcebcb94ea8c71c30d119","url":"https://api.github.com/users/jwilkins","html_url":"https://github.com/jwilkins","followers_url":"https://api.github.com/users/jwilkins/followers","following_url":"https://api.github.com/users/jwilkins/following{/other_user}","gists_url":"https://api.github.com/users/jwilkins/gists{/gist_id}","starred_url":"https://api.github.com/users/jwilkins/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jwilkins/subscriptions","organizations_url":"https://api.github.com/users/jwilkins/orgs","repos_url":"https://api.github.com/users/jwilkins/repos","events_url":"https://api.github.com/users/jwilkins/events{/privacy}","received_events_url":"https://api.github.com/users/jwilkins/received_events","type":"User"},{"login":"shingara","id":1088,"avatar_url":"https://secure.gravatar.com/avatar/2fd0206c71a1b22a9cc6293f38537461?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2fd0206c71a1b22a9cc6293f38537461","url":"https://api.github.com/users/shingara","html_url":"https://github.com/shingara","followers_url":"https://api.github.com/users/shingara/followers","following_url":"https://api.github.com/users/shingara/following{/other_user}","gists_url":"https://api.github.com/users/shingara/gists{/gist_id}","starred_url":"https://api.github.com/users/shingara/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shingara/subscriptions","organizations_url":"https://api.github.com/users/shingara/orgs","repos_url":"https://api.github.com/users/shingara/repos","events_url":"https://api.github.com/users/shingara/events{/privacy}","received_events_url":"https://api.github.com/users/shingara/received_events","type":"User"},{"login":"sebastian","id":1089,"avatar_url":"https://secure.gravatar.com/avatar/ebac0be1687975b63a20da7b254442ab?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"ebac0be1687975b63a20da7b254442ab","url":"https://api.github.com/users/sebastian","html_url":"https://github.com/sebastian","followers_url":"https://api.github.com/users/sebastian/followers","following_url":"https://api.github.com/users/sebastian/following{/other_user}","gists_url":"https://api.github.com/users/sebastian/gists{/gist_id}","starred_url":"https://api.github.com/users/sebastian/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sebastian/subscriptions","organizations_url":"https://api.github.com/users/sebastian/orgs","repos_url":"https://api.github.com/users/sebastian/repos","events_url":"https://api.github.com/users/sebastian/events{/privacy}","received_events_url":"https://api.github.com/users/sebastian/received_events","type":"User"},{"login":"michaelklishin","id":1090,"avatar_url":"https://secure.gravatar.com/avatar/388dee5b4fb00316282b5f40b8409438?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"388dee5b4fb00316282b5f40b8409438","url":"https://api.github.com/users/michaelklishin","html_url":"https://github.com/michaelklishin","followers_url":"https://api.github.com/users/michaelklishin/followers","following_url":"https://api.github.com/users/michaelklishin/following{/other_user}","gists_url":"https://api.github.com/users/michaelklishin/gists{/gist_id}","starred_url":"https://api.github.com/users/michaelklishin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/michaelklishin/subscriptions","organizations_url":"https://api.github.com/users/michaelklishin/orgs","repos_url":"https://api.github.com/users/michaelklishin/repos","events_url":"https://api.github.com/users/michaelklishin/events{/privacy}","received_events_url":"https://api.github.com/users/michaelklishin/received_events","type":"User"},{"login":"yaanno","id":1091,"avatar_url":"https://secure.gravatar.com/avatar/12609643dd685a6753f15d542a77b7f9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"12609643dd685a6753f15d542a77b7f9","url":"https://api.github.com/users/yaanno","html_url":"https://github.com/yaanno","followers_url":"https://api.github.com/users/yaanno/followers","following_url":"https://api.github.com/users/yaanno/following{/other_user}","gists_url":"https://api.github.com/users/yaanno/gists{/gist_id}","starred_url":"https://api.github.com/users/yaanno/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yaanno/subscriptions","organizations_url":"https://api.github.com/users/yaanno/orgs","repos_url":"https://api.github.com/users/yaanno/repos","events_url":"https://api.github.com/users/yaanno/events{/privacy}","received_events_url":"https://api.github.com/users/yaanno/received_events","type":"User"},{"login":"slip","id":1092,"avatar_url":"https://secure.gravatar.com/avatar/8e4f193e6765aaa57925baa2876f55a7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8e4f193e6765aaa57925baa2876f55a7","url":"https://api.github.com/users/slip","html_url":"https://github.com/slip","followers_url":"https://api.github.com/users/slip/followers","following_url":"https://api.github.com/users/slip/following{/other_user}","gists_url":"https://api.github.com/users/slip/gists{/gist_id}","starred_url":"https://api.github.com/users/slip/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/slip/subscriptions","organizations_url":"https://api.github.com/users/slip/orgs","repos_url":"https://api.github.com/users/slip/repos","events_url":"https://api.github.com/users/slip/events{/privacy}","received_events_url":"https://api.github.com/users/slip/received_events","type":"User"},{"login":"jamie","id":1093,"avatar_url":"https://secure.gravatar.com/avatar/e2ee1b6676c1e04dd641371723ca77b2?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e2ee1b6676c1e04dd641371723ca77b2","url":"https://api.github.com/users/jamie","html_url":"https://github.com/jamie","followers_url":"https://api.github.com/users/jamie/followers","following_url":"https://api.github.com/users/jamie/following{/other_user}","gists_url":"https://api.github.com/users/jamie/gists{/gist_id}","starred_url":"https://api.github.com/users/jamie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jamie/subscriptions","organizations_url":"https://api.github.com/users/jamie/orgs","repos_url":"https://api.github.com/users/jamie/repos","events_url":"https://api.github.com/users/jamie/events{/privacy}","received_events_url":"https://api.github.com/users/jamie/received_events","type":"User"},{"login":"azsromej","id":1094,"avatar_url":"https://secure.gravatar.com/avatar/084a5458b3057bd33048a3e5dbe3f855?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"084a5458b3057bd33048a3e5dbe3f855","url":"https://api.github.com/users/azsromej","html_url":"https://github.com/azsromej","followers_url":"https://api.github.com/users/azsromej/followers","following_url":"https://api.github.com/users/azsromej/following{/other_user}","gists_url":"https://api.github.com/users/azsromej/gists{/gist_id}","starred_url":"https://api.github.com/users/azsromej/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/azsromej/subscriptions","organizations_url":"https://api.github.com/users/azsromej/orgs","repos_url":"https://api.github.com/users/azsromej/repos","events_url":"https://api.github.com/users/azsromej/events{/privacy}","received_events_url":"https://api.github.com/users/azsromej/received_events","type":"User"},{"login":"phsilva","id":1095,"avatar_url":"https://secure.gravatar.com/avatar/f3c282d158c56d60d46d865852b577a0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"f3c282d158c56d60d46d865852b577a0","url":"https://api.github.com/users/phsilva","html_url":"https://github.com/phsilva","followers_url":"https://api.github.com/users/phsilva/followers","following_url":"https://api.github.com/users/phsilva/following{/other_user}","gists_url":"https://api.github.com/users/phsilva/gists{/gist_id}","starred_url":"https://api.github.com/users/phsilva/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/phsilva/subscriptions","organizations_url":"https://api.github.com/users/phsilva/orgs","repos_url":"https://api.github.com/users/phsilva/repos","events_url":"https://api.github.com/users/phsilva/events{/privacy}","received_events_url":"https://api.github.com/users/phsilva/received_events","type":"User"},{"login":"wmoxam","id":1096,"avatar_url":"https://secure.gravatar.com/avatar/23a7e2ff4a8656de4ef222f2eecd4a01?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"23a7e2ff4a8656de4ef222f2eecd4a01","url":"https://api.github.com/users/wmoxam","html_url":"https://github.com/wmoxam","followers_url":"https://api.github.com/users/wmoxam/followers","following_url":"https://api.github.com/users/wmoxam/following{/other_user}","gists_url":"https://api.github.com/users/wmoxam/gists{/gist_id}","starred_url":"https://api.github.com/users/wmoxam/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wmoxam/subscriptions","organizations_url":"https://api.github.com/users/wmoxam/orgs","repos_url":"https://api.github.com/users/wmoxam/repos","events_url":"https://api.github.com/users/wmoxam/events{/privacy}","received_events_url":"https://api.github.com/users/wmoxam/received_events","type":"User"},{"login":"quirkey","id":1097,"avatar_url":"https://secure.gravatar.com/avatar/f04bfa14141dca6713f0d9caa763e26b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"f04bfa14141dca6713f0d9caa763e26b","url":"https://api.github.com/users/quirkey","html_url":"https://github.com/quirkey","followers_url":"https://api.github.com/users/quirkey/followers","following_url":"https://api.github.com/users/quirkey/following{/other_user}","gists_url":"https://api.github.com/users/quirkey/gists{/gist_id}","starred_url":"https://api.github.com/users/quirkey/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/quirkey/subscriptions","organizations_url":"https://api.github.com/users/quirkey/orgs","repos_url":"https://api.github.com/users/quirkey/repos","events_url":"https://api.github.com/users/quirkey/events{/privacy}","received_events_url":"https://api.github.com/users/quirkey/received_events","type":"User"},{"login":"enhiro","id":1098,"avatar_url":"https://secure.gravatar.com/avatar/1e62788b9ca14d8456b17deaf97f048f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"1e62788b9ca14d8456b17deaf97f048f","url":"https://api.github.com/users/enhiro","html_url":"https://github.com/enhiro","followers_url":"https://api.github.com/users/enhiro/followers","following_url":"https://api.github.com/users/enhiro/following{/other_user}","gists_url":"https://api.github.com/users/enhiro/gists{/gist_id}","starred_url":"https://api.github.com/users/enhiro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/enhiro/subscriptions","organizations_url":"https://api.github.com/users/enhiro/orgs","repos_url":"https://api.github.com/users/enhiro/repos","events_url":"https://api.github.com/users/enhiro/events{/privacy}","received_events_url":"https://api.github.com/users/enhiro/received_events","type":"User"},{"login":"shillcock","id":1099,"avatar_url":"https://secure.gravatar.com/avatar/ca40eff0767d6403505881a3be5200bd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"ca40eff0767d6403505881a3be5200bd","url":"https://api.github.com/users/shillcock","html_url":"https://github.com/shillcock","followers_url":"https://api.github.com/users/shillcock/followers","following_url":"https://api.github.com/users/shillcock/following{/other_user}","gists_url":"https://api.github.com/users/shillcock/gists{/gist_id}","starred_url":"https://api.github.com/users/shillcock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shillcock/subscriptions","organizations_url":"https://api.github.com/users/shillcock/orgs","repos_url":"https://api.github.com/users/shillcock/repos","events_url":"https://api.github.com/users/shillcock/events{/privacy}","received_events_url":"https://api.github.com/users/shillcock/received_events","type":"User"},{"login":"niallkennedy","id":1100,"avatar_url":"https://secure.gravatar.com/avatar/62078292ef0e01419da698efa65af5ec?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"62078292ef0e01419da698efa65af5ec","url":"https://api.github.com/users/niallkennedy","html_url":"https://github.com/niallkennedy","followers_url":"https://api.github.com/users/niallkennedy/followers","following_url":"https://api.github.com/users/niallkennedy/following{/other_user}","gists_url":"https://api.github.com/users/niallkennedy/gists{/gist_id}","starred_url":"https://api.github.com/users/niallkennedy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/niallkennedy/subscriptions","organizations_url":"https://api.github.com/users/niallkennedy/orgs","repos_url":"https://api.github.com/users/niallkennedy/repos","events_url":"https://api.github.com/users/niallkennedy/events{/privacy}","received_events_url":"https://api.github.com/users/niallkennedy/received_events","type":"User"},{"login":"sandropaganotti","id":1101,"avatar_url":"https://secure.gravatar.com/avatar/0df4a6c75caf1bd9b01d2dcbfb085ee4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"0df4a6c75caf1bd9b01d2dcbfb085ee4","url":"https://api.github.com/users/sandropaganotti","html_url":"https://github.com/sandropaganotti","followers_url":"https://api.github.com/users/sandropaganotti/followers","following_url":"https://api.github.com/users/sandropaganotti/following{/other_user}","gists_url":"https://api.github.com/users/sandropaganotti/gists{/gist_id}","starred_url":"https://api.github.com/users/sandropaganotti/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sandropaganotti/subscriptions","organizations_url":"https://api.github.com/users/sandropaganotti/orgs","repos_url":"https://api.github.com/users/sandropaganotti/repos","events_url":"https://api.github.com/users/sandropaganotti/events{/privacy}","received_events_url":"https://api.github.com/users/sandropaganotti/received_events","type":"User"}] + diff --git a/lib/github/tests/ReplayData/Github.testLegacySearchRepos.txt b/lib/github/tests/ReplayData/Github.testLegacySearchRepos.txt new file mode 100644 index 0000000000..2730ff9588 --- /dev/null +++ b/lib/github/tests/ReplayData/Github.testLegacySearchRepos.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/legacy/repos/search/github+api+v3 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4996'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '62E81E32:384B:3C53F52:5325DB4E'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('content-length', '54021'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('etag', '"2e97920754b93224515e63947f6d0866"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Sun, 16 Mar 2014 17:11:43 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1394992949')] +{"repositories":[{"type":"repo","username":"peter-murach","name":"github","owner":"peter-murach","homepage":"http://peter-murach.github.com/github","description":"Ruby interface to github API v3","language":"Ruby","watchers":423,"followers":423,"forks":107,"size":5278,"open_issues":11,"score":53.85517,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/peter-murach/github","created":"2011-09-25T19:36:22Z","created_at":"2011-09-25T19:36:22Z","pushed_at":"2014-03-06T21:56:09Z","pushed":"2014-03-06T21:56:09Z"},{"type":"repo","username":"pksunkara","name":"octonode","owner":"pksunkara","homepage":"","description":"github api v3 in nodejs","language":"CoffeeScript","watchers":236,"followers":236,"forks":61,"size":752,"open_issues":6,"score":49.94121,"has_downloads":true,"has_issues":true,"has_wiki":false,"fork":false,"private":false,"url":"https://github.com/pksunkara/octonode","created":"2011-11-21T02:13:13Z","created_at":"2011-11-21T02:13:13Z","pushed_at":"2014-02-22T09:55:45Z","pushed":"2014-02-22T09:55:45Z"},{"type":"repo","username":"jacquev6","name":"PyGithub","owner":"jacquev6","homepage":"http://jacquev6.github.io/PyGithub","description":"Python library implementing the full Github API v3","language":"Python","watchers":365,"followers":365,"forks":102,"size":11373,"open_issues":14,"score":43.15671,"has_downloads":true,"has_issues":true,"has_wiki":false,"fork":false,"private":false,"url":"https://github.com/jacquev6/PyGithub","created":"2012-02-25T12:53:47Z","created_at":"2012-02-25T12:53:47Z","pushed_at":"2014-03-16T17:01:56Z","pushed":"2014-03-16T17:01:56Z"},{"type":"repo","username":"jwilger","name":"github-v3-api","owner":"jwilger","homepage":null,"description":"Ruby Client for the GitHub v3 API","language":"Ruby","watchers":45,"followers":45,"forks":16,"size":180,"open_issues":3,"score":38.894547,"has_downloads":true,"has_issues":true,"has_wiki":false,"fork":false,"private":false,"url":"https://github.com/jwilger/github-v3-api","created":"2011-06-23T22:52:33Z","created_at":"2011-06-23T22:52:33Z","pushed_at":"2013-06-05T22:45:46Z","pushed":"2013-06-05T22:45:46Z"},{"type":"repo","username":"k33g","name":"gh3","owner":"k33g","homepage":"","description":"Client-side Javascript API wrapper for GitHub API V3","language":"JavaScript","watchers":122,"followers":122,"forks":21,"size":288,"open_issues":5,"score":24.372953,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/k33g/gh3","created":"2012-07-25T15:27:05Z","created_at":"2012-07-25T15:27:05Z","pushed_at":"2014-03-04T07:57:09Z","pushed":"2014-03-04T07:57:09Z"},{"type":"repo","username":"dsyph3r","name":"github-api3-php","owner":"dsyph3r","homepage":"","description":"PHP library for the GitHub API v3","language":"PHP","watchers":49,"followers":49,"forks":16,"size":112,"open_issues":1,"score":20.564543,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/dsyph3r/github-api3-php","created":"2011-09-06T20:24:42Z","created_at":"2011-09-06T20:24:42Z","pushed_at":"2013-07-27T11:13:54Z","pushed":"2013-07-27T11:13:54Z"},{"type":"repo","username":"ChristopherMacGown","name":"python-github3","owner":"ChristopherMacGown","homepage":"","description":"Github API v3 library for Python.","language":"Python","watchers":27,"followers":27,"forks":13,"size":180,"open_issues":3,"score":16.044289,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/ChristopherMacGown/python-github3","created":"2011-04-28T17:07:29Z","created_at":"2011-04-28T17:07:29Z","pushed_at":"2012-09-06T20:37:01Z","pushed":"2012-09-06T20:37:01Z"},{"type":"repo","username":"peter-murach","name":"github_cli","owner":"peter-murach","homepage":"","description":"CLI-based access to GitHub API v3","language":"Ruby","watchers":81,"followers":81,"forks":9,"size":1498,"open_issues":2,"score":15.2712145,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/peter-murach/github_cli","created":"2012-03-11T20:35:23Z","created_at":"2012-03-11T20:35:23Z","pushed_at":"2013-10-06T15:30:23Z","pushed":"2013-10-06T15:30:23Z"},{"type":"repo","username":"edwardhotchkiss","name":"github3","owner":"edwardhotchkiss","homepage":"http://documentup.com/edwardhotchkiss/github3/","description":"Node.js GitHub API (v3) Wrapper","language":"JavaScript","watchers":26,"followers":26,"forks":13,"size":151,"open_issues":0,"score":13.217138,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/edwardhotchkiss/github3","created":"2011-11-30T22:56:52Z","created_at":"2011-11-30T22:56:52Z","pushed_at":"2013-08-24T19:18:54Z","pushed":"2013-08-24T19:18:54Z"},{"type":"repo","username":"farnoy","name":"github-api-client","owner":"farnoy","homepage":"","description":"v2+v3 GitHub API Ruby client library","language":"Ruby","watchers":48,"followers":48,"forks":7,"size":160,"open_issues":5,"score":13.036334,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/farnoy/github-api-client","created":"2011-01-21T21:09:02Z","created_at":"2011-01-21T21:09:02Z","pushed_at":"2012-01-31T12:33:03Z","pushed":"2012-01-31T12:33:03Z"},{"type":"repo","username":"michaelliao","name":"githubpy","owner":"michaelliao","homepage":"http://michaelliao.github.com/githubpy/","description":"A simple GitHub v3 API SDK for Python","language":"Python","watchers":26,"followers":26,"forks":11,"size":319,"open_issues":0,"score":12.356312,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/michaelliao/githubpy","created":"2012-10-14T14:13:59Z","created_at":"2012-10-14T14:13:59Z","pushed_at":"2014-02-24T13:07:01Z","pushed":"2014-02-24T13:07:01Z"},{"type":"repo","username":"yiiext","name":"github-api","owner":"yiiext","homepage":"http://developer.github.com/v3/","description":"implementation of github api v3","language":"PHP","watchers":17,"followers":17,"forks":7,"size":170,"open_issues":1,"score":12.258284,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/yiiext/github-api","created":"2011-10-23T08:34:00Z","created_at":"2011-10-23T08:34:00Z","pushed_at":"2011-11-16T09:07:50Z","pushed":"2011-11-16T09:07:50Z"},{"type":"repo","username":"trustmaster","name":"trac2github","owner":"trustmaster","homepage":"","description":"Converts Trac milestones, tickets and comments into Github issues 2.0 using github api v3","language":"PHP","watchers":17,"followers":17,"forks":22,"size":198,"open_issues":2,"score":11.880741,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/trustmaster/trac2github","created":"2011-05-12T19:18:23Z","created_at":"2011-05-12T19:18:23Z","pushed_at":"2014-01-10T19:39:55Z","pushed":"2014-01-10T19:39:55Z"},{"type":"repo","username":"plu","name":"Pithub","owner":"plu","homepage":"http://metacpan.org/module/Pithub","description":"Perl Github v3 API","language":"Perl","watchers":28,"followers":28,"forks":5,"size":970,"open_issues":21,"score":11.874863,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/plu/Pithub","created":"2011-06-25T10:40:24Z","created_at":"2011-06-25T10:40:24Z","pushed_at":"2014-01-29T19:28:14Z","pushed":"2014-01-29T19:28:14Z"},{"type":"repo","username":"in2bits","name":"IronGitHub","owner":"in2bits","homepage":"","description":"C# GitHub Api v3","language":"C#","watchers":10,"followers":10,"forks":13,"size":732,"open_issues":8,"score":11.255773,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/in2bits/IronGitHub","created":"2013-05-26T02:25:58Z","created_at":"2013-05-26T02:25:58Z","pushed_at":"2013-10-14T13:19:18Z","pushed":"2013-10-14T13:19:18Z"},{"type":"repo","username":"lynnwallenstein","name":"jQuery-GitHub-Badge","owner":"lynnwallenstein","homepage":"","description":"User and Project GitHub badge using jQuery and GitHub API v3","language":"JavaScript","watchers":40,"followers":40,"forks":8,"size":263,"open_issues":3,"score":10.357203,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/lynnwallenstein/jQuery-GitHub-Badge","created":"2010-09-11T06:51:56Z","created_at":"2010-09-11T06:51:56Z","pushed_at":"2013-12-28T06:19:33Z","pushed":"2013-12-28T06:19:33Z"},{"type":"repo","username":"acoulton","name":"github_v3_api","owner":"acoulton","homepage":"","description":"KO3 module for interacting with the new Github v3 API","language":"PHP","watchers":16,"followers":16,"forks":5,"size":223,"open_issues":1,"score":9.768645,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/acoulton/github_v3_api","created":"2011-10-11T20:02:03Z","created_at":"2011-10-11T20:02:03Z","pushed_at":"2012-08-27T19:44:55Z","pushed":"2012-08-27T19:44:55Z"},{"type":"repo","username":"VisualAppeal","name":"Github-API-v3","owner":"VisualAppeal","homepage":null,"description":"PHP Github API client for version 3.","language":"PHP","watchers":4,"followers":4,"forks":0,"size":126,"open_issues":0,"score":8.485444,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/VisualAppeal/Github-API-v3","created":"2012-06-04T22:20:41Z","created_at":"2012-06-04T22:20:41Z","pushed_at":"2014-01-07T22:06:13Z","pushed":"2014-01-07T22:06:13Z"},{"type":"repo","username":"Burgestrand","name":"hue-api","owner":"Burgestrand","homepage":"http://burgestrand.github.com/hue-api/","description":"A fork of GitHub API v3, to describe the Philips Hue API.","language":"Ruby","watchers":23,"followers":23,"forks":5,"size":1344,"open_issues":0,"score":8.409387,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/Burgestrand/hue-api","created":"2012-11-08T20:04:38Z","created_at":"2012-11-08T20:04:38Z","pushed_at":"2013-03-02T00:03:38Z","pushed":"2013-03-02T00:03:38Z"},{"type":"repo","username":"rsanders","name":"github-api-v3.el","owner":"rsanders","homepage":"","description":"Emacs Lisp interface for the GitHub API v3","language":"Emacs Lisp","watchers":5,"followers":5,"forks":2,"size":124,"open_issues":0,"score":7.4247637,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/rsanders/github-api-v3.el","created":"2012-02-06T04:34:12Z","created_at":"2012-02-06T04:34:12Z","pushed_at":"2012-02-08T06:50:13Z","pushed":"2012-02-08T06:50:13Z"},{"type":"repo","username":"phated","name":"github-v3-api-js","owner":"phated","homepage":"","description":"Experimentation with github api (v3) in javascript","language":"JavaScript","watchers":3,"followers":3,"forks":0,"size":9124,"open_issues":0,"score":7.4247637,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/phated/github-v3-api-js","created":"2012-01-15T01:32:10Z","created_at":"2012-01-15T01:32:10Z","pushed_at":"2012-01-16T07:58:31Z","pushed":"2012-01-16T07:58:31Z"},{"type":"repo","username":"marfarma","name":"github-api-v3-projects","owner":"marfarma","homepage":null,"description":"","language":"Ruby","watchers":0,"followers":0,"forks":0,"size":68,"open_issues":0,"score":7.4247637,"has_downloads":true,"has_issues":false,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/marfarma/github-api-v3-projects","created":"2013-06-05T17:14:09Z","created_at":"2013-06-05T17:14:09Z","pushed_at":"2013-04-20T03:38:20Z","pushed":"2013-04-20T03:38:20Z"},{"type":"repo","username":"clockfort","name":"GitHub-Backup","owner":"clockfort","homepage":"","description":"Backup all the repositories of a github user or organization automatically. (Hilariously, this project I wrote in perl for a GitHub API v2 a long time ago; when GH API v3 came out, a friend rewrote it in Python. Ever since then I've had 0 code in this project, but I'm the maintainer and get ~2-3 pull requests a month to fix other peoples' code)","language":"Python","watchers":20,"followers":20,"forks":16,"size":214,"open_issues":4,"score":6.6330028,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/clockfort/GitHub-Backup","created":"2010-07-13T18:21:49Z","created_at":"2010-07-13T18:21:49Z","pushed_at":"2013-10-03T17:55:12Z","pushed":"2013-10-03T17:55:12Z"},{"type":"repo","username":"nesv","name":"gothub","owner":"nesv","homepage":null,"description":"GitHub client (API v3) for the Go programming language.","language":"Go","watchers":36,"followers":36,"forks":3,"size":234,"open_issues":8,"score":6.2265697,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/nesv/gothub","created":"2013-03-02T00:49:00Z","created_at":"2013-03-02T00:49:00Z","pushed_at":"2014-03-03T02:06:17Z","pushed":"2014-03-03T02:06:17Z"},{"type":"repo","username":"jhelwig","name":"octocat_herder","owner":"jhelwig","homepage":"http://rdoc.info/github/jhelwig/octocat_herder/master/frames","description":"Ruby interface to the v3 GitHub API","language":"Ruby","watchers":18,"followers":18,"forks":3,"size":128,"open_issues":1,"score":6.026624,"has_downloads":true,"has_issues":true,"has_wiki":false,"fork":false,"private":false,"url":"https://github.com/jhelwig/octocat_herder","created":"2011-07-16T22:32:34Z","created_at":"2011-07-16T22:32:34Z","pushed_at":"2012-05-23T20:17:32Z","pushed":"2012-05-23T20:17:32Z"},{"type":"repo","username":"diogenes","name":"hubruby","owner":"diogenes","homepage":"","description":"A simple Ruby library to access the current GitHub API (v3)","language":"Ruby","watchers":24,"followers":24,"forks":3,"size":120,"open_issues":0,"score":5.522051,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/diogenes/hubruby","created":"2010-08-26T00:50:01Z","created_at":"2010-08-26T00:50:01Z","pushed_at":"2011-10-17T15:15:23Z","pushed":"2011-10-17T15:15:23Z"},{"type":"repo","username":"zhaoguobin","name":"github_api_test_2","owner":"zhaoguobin","homepage":null,"description":"test github api v3","language":"","watchers":0,"followers":0,"forks":0,"size":132,"open_issues":0,"score":5.1196856,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/zhaoguobin/github_api_test_2","created":"2013-10-25T14:49:30Z","created_at":"2013-10-25T14:49:30Z","pushed_at":"2013-10-25T14:52:20Z","pushed":"2013-10-25T14:52:20Z"},{"type":"repo","username":"jaeh","name":"github-api-data-test","owner":"jaeh","homepage":null,"description":"testing github api v3","language":"","watchers":0,"followers":0,"forks":0,"size":76,"open_issues":0,"score":5.1196856,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/jaeh/github-api-data-test","created":"2013-11-09T13:16:06Z","created_at":"2013-11-09T13:16:06Z","pushed_at":"2013-11-09T13:17:17Z","pushed":"2013-11-09T13:17:17Z"},{"type":"repo","username":"mskasal","name":"gitcrawler","owner":"mskasal","homepage":null,"description":"experiment with github api v3","language":"CSS","watchers":0,"followers":0,"forks":0,"size":236,"open_issues":0,"score":5.1196856,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/mskasal/gitcrawler","created":"2013-11-17T23:54:20Z","created_at":"2013-11-17T23:54:20Z","pushed_at":"2013-11-24T16:54:58Z","pushed":"2013-11-24T16:54:58Z"},{"type":"repo","username":"simon816","name":"GithubAPI","owner":"simon816","homepage":"","description":"Playing with the github API V3","language":"","watchers":0,"followers":0,"forks":0,"size":584,"open_issues":0,"score":5.1196856,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/simon816/GithubAPI","created":"2013-04-09T21:44:55Z","created_at":"2013-04-09T21:44:55Z","pushed_at":"2013-06-03T10:45:22Z","pushed":"2013-06-03T10:45:22Z"},{"type":"repo","username":"zhaoguobin","name":"github_api_test_1","owner":"zhaoguobin","homepage":null,"description":"test github api v3","language":"","watchers":0,"followers":0,"forks":0,"size":0,"open_issues":0,"score":5.098453,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/zhaoguobin/github_api_test_1","created":"2013-10-25T14:11:41Z","created_at":"2013-10-25T14:11:41Z","pushed_at":"2013-10-25T14:11:41Z","pushed":"2013-10-25T14:11:41Z"},{"type":"repo","username":"bcg","name":"github","owner":"bcg","homepage":null,"description":"Go api for github v3","language":"Go","watchers":2,"followers":2,"forks":0,"size":104,"open_issues":0,"score":5.098453,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/bcg/github","created":"2012-06-12T11:43:27Z","created_at":"2012-06-12T11:43:27Z","pushed_at":"2012-06-12T11:46:45Z","pushed":"2012-06-12T11:46:45Z"},{"type":"repo","username":"dkucinskas","name":"net-github-api","owner":"dkucinskas","homepage":"","description":"Simple Github API v3 client library for .Net","language":"C#","watchers":4,"followers":4,"forks":4,"size":120,"open_issues":1,"score":5.0485406,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/dkucinskas/net-github-api","created":"2012-02-22T11:20:10Z","created_at":"2012-02-22T11:20:10Z","pushed_at":"2012-06-25T05:10:11Z","pushed":"2012-06-25T05:10:11Z"},{"type":"repo","username":"guillaumepotier","name":"GithubApi_v3","owner":"guillaumepotier","homepage":"","description":"Very simple class I use for my pet projects","language":"PHP","watchers":3,"followers":3,"forks":0,"size":92,"open_issues":0,"score":5.040694,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/guillaumepotier/GithubApi_v3","created":"2012-02-21T10:02:04Z","created_at":"2012-02-21T10:02:04Z","pushed_at":"2012-02-23T09:05:23Z","pushed":"2012-02-23T09:05:23Z"},{"type":"repo","username":"sigmavirus24","name":"github-cli","owner":"sigmavirus24","homepage":"http://sigmavirus24.github.com/github-cli","description":"Command-line access to GitHub via the API (v3)","language":"Python","watchers":15,"followers":15,"forks":3,"size":280,"open_issues":2,"score":4.7053924,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/sigmavirus24/github-cli","created":"2012-07-05T14:58:47Z","created_at":"2012-07-05T14:58:47Z","pushed_at":"2013-05-13T04:11:11Z","pushed":"2013-05-13T04:11:11Z"},{"type":"repo","username":"ji","name":"github_widgets","owner":"ji","homepage":"","description":"Github widgets for the github v3 API.","language":"Ruby","watchers":1,"followers":1,"forks":0,"size":248,"open_issues":0,"score":4.6856112,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/ji/github_widgets","created":"2012-02-14T14:15:34Z","created_at":"2012-02-14T14:15:34Z","pushed_at":"2012-03-07T18:29:38Z","pushed":"2012-03-07T18:29:38Z"},{"type":"repo","username":"jhance","name":"github","owner":"jhance","homepage":null,"description":"Github v3 API client for Haskell","language":"Haskell","watchers":1,"followers":1,"forks":0,"size":456,"open_issues":0,"score":4.3883023,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/jhance/github","created":"2012-07-22T17:25:36Z","created_at":"2012-07-22T17:25:36Z","pushed_at":"2012-07-26T18:42:41Z","pushed":"2012-07-26T18:42:41Z"},{"type":"repo","username":"ozipi","name":"github.js","owner":"ozipi","homepage":"","description":"Github v3 Api Javascript library","language":"JavaScript","watchers":3,"followers":3,"forks":1,"size":116,"open_issues":0,"score":4.3883023,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/ozipi/github.js","created":"2011-12-26T22:00:46Z","created_at":"2011-12-26T22:00:46Z","pushed_at":"2012-01-08T22:10:07Z","pushed":"2012-01-08T22:10:07Z"},{"type":"repo","username":"devjones","name":"py_github3","owner":"devjones","homepage":"","description":"draft python wrapper for Github API v3","language":"Python","watchers":1,"followers":1,"forks":0,"size":116,"open_issues":0,"score":4.3883023,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/devjones/py_github3","created":"2012-02-02T23:15:01Z","created_at":"2012-02-02T23:15:01Z","pushed_at":"2012-02-02T23:15:52Z","pushed":"2012-02-02T23:15:52Z"},{"type":"repo","username":"markharmon","name":"GitHub.Net","owner":"markharmon","homepage":"","description":"GitHub Api V3 for .Net","language":"","watchers":1,"followers":1,"forks":0,"size":84,"open_issues":0,"score":4.3883023,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/markharmon/GitHub.Net","created":"2011-10-06T10:41:32Z","created_at":"2011-10-06T10:41:32Z","pushed_at":null,"pushed":null},{"type":"repo","username":"wanthony","name":"octo_rest","owner":"wanthony","homepage":"","description":"A ruby client for the github v3 api","language":"Ruby","watchers":1,"followers":1,"forks":0,"size":128,"open_issues":0,"score":4.3883023,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/wanthony/octo_rest","created":"2011-07-15T02:46:55Z","created_at":"2011-07-15T02:46:55Z","pushed_at":"2011-07-15T02:57:37Z","pushed":"2011-07-15T02:57:37Z"},{"type":"repo","username":"nobelium","name":"github-php-sdk","owner":"nobelium","homepage":null,"description":"A minimalistic php sdk for GITHUB API v3","language":"PHP","watchers":3,"followers":3,"forks":0,"size":220,"open_issues":0,"score":4.3883023,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/nobelium/github-php-sdk","created":"2012-10-01T06:36:59Z","created_at":"2012-10-01T06:36:59Z","pushed_at":"2013-06-06T12:10:09Z","pushed":"2013-06-06T12:10:09Z"},{"type":"repo","username":"hahuang65","name":"Octobot","owner":"hahuang65","homepage":null,"description":"GitHub V3 API Wrapper for Ruby","language":"Ruby","watchers":1,"followers":1,"forks":0,"size":460,"open_issues":0,"score":4.3883023,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/hahuang65/Octobot","created":"2012-06-05T07:39:13Z","created_at":"2012-06-05T07:39:13Z","pushed_at":"2012-12-18T23:10:20Z","pushed":"2012-12-18T23:10:20Z"},{"type":"repo","username":"benoitmugnier","name":"GitHub-API","owner":"benoitmugnier","homepage":null,"description":"Deal with the GitHub API v3","language":"PHP","watchers":0,"followers":0,"forks":0,"size":140,"open_issues":0,"score":4.3883023,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/benoitmugnier/GitHub-API","created":"2013-10-10T09:06:18Z","created_at":"2013-10-10T09:06:18Z","pushed_at":"2013-12-16T16:06:18Z","pushed":"2013-12-16T16:06:18Z"},{"type":"repo","username":"derak","name":"github-api-bash","owner":"derak","homepage":null,"description":"GitHub API v3 bash scripts","language":"Shell","watchers":0,"followers":0,"forks":0,"size":100,"open_issues":0,"score":4.3883023,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/derak/github-api-bash","created":"2013-12-16T23:47:38Z","created_at":"2013-12-16T23:47:38Z","pushed_at":"2014-01-18T01:08:53Z","pushed":"2014-01-18T01:08:53Z"},{"type":"repo","username":"db0company","name":"GitHub-API-OCaml","owner":"db0company","homepage":null,"description":"GitHub API v3 bindings in OCaml","language":"OCaml","watchers":0,"followers":0,"forks":0,"size":120,"open_issues":0,"score":4.3883023,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/db0company/GitHub-API-OCaml","created":"2013-07-29T01:53:59Z","created_at":"2013-07-29T01:53:59Z","pushed_at":"2013-07-30T02:48:34Z","pushed":"2013-07-30T02:48:34Z"},{"type":"repo","username":"mattinsler","name":"github.node","owner":"mattinsler","homepage":null,"description":"Github v3 API client for node","language":"CoffeeScript","watchers":0,"followers":0,"forks":0,"size":140,"open_issues":0,"score":4.3883023,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/mattinsler/github.node","created":"2013-01-21T01:05:59Z","created_at":"2013-01-21T01:05:59Z","pushed_at":"2014-01-26T09:58:40Z","pushed":"2014-01-26T09:58:40Z"},{"type":"repo","username":"zx2c4","name":"python-github3","owner":"zx2c4","homepage":"http://git.zx2c4.com/python-github3","description":"Fork of the github v3 api wrapper for python.","language":"Python","watchers":1,"followers":1,"forks":0,"size":536,"open_issues":0,"score":4.3701024,"has_downloads":false,"has_issues":false,"has_wiki":false,"fork":false,"private":false,"url":"https://github.com/zx2c4/python-github3","created":"2012-07-11T02:00:51Z","created_at":"2012-07-11T02:00:51Z","pushed_at":"2012-07-12T19:04:57Z","pushed":"2012-07-12T19:04:57Z"},{"type":"repo","username":"ngs","name":"AFGitHubClient","owner":"ngs","homepage":null,"description":"AFNetworking Client for the GitHub API V3","language":"Objective-C","watchers":5,"followers":5,"forks":1,"size":184,"open_issues":0,"score":4.3701024,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/ngs/AFGitHubClient","created":"2013-01-31T02:37:32Z","created_at":"2013-01-31T02:37:32Z","pushed_at":"2013-05-15T15:56:49Z","pushed":"2013-05-15T15:56:49Z"},{"type":"repo","username":"mixu","name":"github.js","owner":"mixu","homepage":"","description":"Github API v3 JS client","language":"JavaScript","watchers":1,"followers":1,"forks":0,"size":112,"open_issues":0,"score":4.3701024,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/mixu/github.js","created":"2011-08-16T16:17:47Z","created_at":"2011-08-16T16:17:47Z","pushed_at":"2011-08-16T16:44:41Z","pushed":"2011-08-16T16:44:41Z"},{"type":"repo","username":"jcarver989","name":"GithubApi.js","owner":"jcarver989","homepage":"","description":"Micro library for Github's API (v3)","language":"JavaScript","watchers":2,"followers":2,"forks":0,"size":132,"open_issues":0,"score":4.3701024,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/jcarver989/GithubApi.js","created":"2011-11-19T20:57:47Z","created_at":"2011-11-19T20:57:47Z","pushed_at":"2011-11-19T21:21:11Z","pushed":"2011-11-19T21:21:11Z"},{"type":"repo","username":"eed3si9n","name":"repatch-github","owner":"eed3si9n","homepage":"","description":"dispatch plugin for github API v3","language":"Scala","watchers":6,"followers":6,"forks":1,"size":184,"open_issues":0,"score":4.3701024,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/eed3si9n/repatch-github","created":"2011-11-14T06:02:02Z","created_at":"2011-11-14T06:02:02Z","pushed_at":"2013-03-28T07:38:00Z","pushed":"2013-03-28T07:38:00Z"},{"type":"repo","username":"testpilot","name":"octoplex","owner":"testpilot","homepage":"testpilot.me","description":"Github v3 API wrapper gem","language":"Ruby","watchers":2,"followers":2,"forks":0,"size":308,"open_issues":0,"score":4.3701024,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/testpilot/octoplex","created":"2011-10-04T00:46:03Z","created_at":"2011-10-04T00:46:03Z","pushed_at":"2011-11-29T08:14:53Z","pushed":"2011-11-29T08:14:53Z"},{"type":"repo","username":"soimort","name":"GitHub.tcl","owner":"soimort","homepage":null,"description":"Tcl library for GitHub API v3","language":"Tcl","watchers":0,"followers":0,"forks":0,"size":76,"open_issues":0,"score":4.3701024,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/soimort/GitHub.tcl","created":"2013-10-25T04:03:32Z","created_at":"2013-10-25T04:03:32Z","pushed_at":"2013-10-25T04:06:26Z","pushed":"2013-10-25T04:06:26Z"},{"type":"repo","username":"woloski","name":"githubapi-testrepo","owner":"woloski","homepage":"","description":"testing repo for github api v3","language":"","watchers":2,"followers":2,"forks":1,"size":340,"open_issues":0,"score":4.3701024,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/woloski/githubapi-testrepo","created":"2012-02-29T23:46:40Z","created_at":"2012-02-29T23:46:40Z","pushed_at":"2012-03-02T02:36:35Z","pushed":"2012-03-02T02:36:35Z"},{"type":"repo","username":"letiemble","name":"hubsharp","owner":"letiemble","homepage":null,"description":"A library to access GitHub API v3","language":"C#","watchers":0,"followers":0,"forks":0,"size":364,"open_issues":0,"score":4.3701024,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/letiemble/hubsharp","created":"2012-11-06T21:12:46Z","created_at":"2012-11-06T21:12:46Z","pushed_at":"2012-11-09T17:11:24Z","pushed":"2012-11-09T17:11:24Z"},{"type":"repo","username":"csphere","name":"phphub","owner":"csphere","homepage":"","description":"An intuitive wrapper for the Github Api v3.","language":"PHP","watchers":10,"followers":10,"forks":2,"size":487,"open_issues":0,"score":4.3701024,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/csphere/phphub","created":"2012-02-21T19:25:15Z","created_at":"2012-02-21T19:25:15Z","pushed_at":"2013-09-17T02:08:31Z","pushed":"2013-09-17T02:08:31Z"},{"type":"repo","username":"Shishire","name":"proboscis","owner":"Shishire","homepage":null,"description":"A PHP wrapper library for the Github API v3","language":"PHP","watchers":0,"followers":0,"forks":0,"size":304,"open_issues":0,"score":4.3701024,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/Shishire/proboscis","created":"2013-06-14T22:15:14Z","created_at":"2013-06-14T22:15:14Z","pushed_at":"2013-12-10T14:39:36Z","pushed":"2013-12-10T14:39:36Z"},{"type":"repo","username":"csphere","name":"GithubApiWrapper-Python","owner":"csphere","homepage":"","description":"An intuitive wrapper for the Github Api v3.","language":"Python","watchers":6,"followers":6,"forks":0,"size":579,"open_issues":0,"score":4.3701024,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/csphere/GithubApiWrapper-Python","created":"2012-02-23T02:29:18Z","created_at":"2012-02-23T02:29:18Z","pushed_at":"2012-05-18T17:26:45Z","pushed":"2012-05-18T17:26:45Z"},{"type":"repo","username":"rubik","name":"github.py","owner":"rubik","homepage":"","description":"Python wrapper for Github API v3","language":"Python","watchers":3,"followers":3,"forks":0,"size":100,"open_issues":0,"score":4.3701024,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/rubik/github.py","created":"2011-06-15T07:51:00Z","created_at":"2011-06-15T07:51:00Z","pushed_at":"2011-06-15T07:58:19Z","pushed":"2011-06-15T07:58:19Z"},{"type":"repo","username":"Wolfy87","name":"github.js","owner":"Wolfy87","homepage":"","description":"Frontend JavaScript library for interacting with the GitHub API v3","language":"JavaScript","watchers":15,"followers":15,"forks":1,"size":116,"open_issues":0,"score":4.30087,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/Wolfy87/github.js","created":"2012-01-15T12:51:05Z","created_at":"2012-01-15T12:51:05Z","pushed_at":"2012-01-23T14:38:19Z","pushed":"2012-01-23T14:38:19Z"},{"type":"repo","username":"samsonjs","name":"gitter","owner":"samsonjs","homepage":"http://samhuri.net/proj/gitter","description":"GitHub client for node and browsers (v3 API)","language":"JavaScript","watchers":15,"followers":15,"forks":1,"size":150,"open_issues":1,"score":4.283033,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/samsonjs/gitter","created":"2010-11-08T00:01:46Z","created_at":"2010-11-08T00:01:46Z","pushed_at":"2012-06-13T05:14:21Z","pushed":"2012-06-13T05:14:21Z"},{"type":"repo","username":"BrianMc21","name":"Go-GitHub-API","owner":"BrianMc21","homepage":"http://godoc.org/github.com/BrianMc21/Go-GitHub-API","description":"GitHub API v3 Bindings package for the Go Programming Language.","language":"Go","watchers":14,"followers":14,"forks":1,"size":204,"open_issues":0,"score":4.173914,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/BrianMc21/Go-GitHub-API","created":"2013-02-17T18:22:57Z","created_at":"2013-02-17T18:22:57Z","pushed_at":"2013-05-26T15:38:17Z","pushed":"2013-05-26T15:38:17Z"},{"type":"repo","username":"NickPresta","name":"gogithub","owner":"NickPresta","homepage":null,"description":"A Go implement of the Github API v3 (http://developer.github.com/v3/)","language":"Go","watchers":2,"followers":2,"forks":0,"size":104,"open_issues":0,"score":3.9932094,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/NickPresta/gogithub","created":"2012-09-03T09:09:32Z","created_at":"2012-09-03T09:09:32Z","pushed_at":"2012-09-06T19:01:51Z","pushed":"2012-09-06T19:01:51Z"},{"type":"repo","username":"Gerhut","name":"IssuesFeed","owner":"Gerhut","homepage":null,"description":"Convert GitHub Issues to Feed by GitHub API v3","language":"JavaScript","watchers":0,"followers":0,"forks":0,"size":124,"open_issues":0,"score":3.904676,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/Gerhut/IssuesFeed","created":"2013-09-30T12:57:51Z","created_at":"2013-09-30T12:57:51Z","pushed_at":"2013-09-30T15:02:57Z","pushed":"2013-09-30T15:02:57Z"},{"type":"repo","username":"hit9","name":"flask-sign-in-with-github.py","owner":"hit9","homepage":"","description":"Sign in with github via github V3 API in Flask","language":"Python","watchers":2,"followers":2,"forks":0,"size":156,"open_issues":0,"score":3.886216,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/hit9/flask-sign-in-with-github.py","created":"2013-03-11T13:29:52Z","created_at":"2013-03-11T13:29:52Z","pushed_at":"2013-03-12T04:49:23Z","pushed":"2013-03-12T04:49:23Z"},{"type":"repo","username":"frikille","name":"GitHubWrapper","owner":"frikille","homepage":null,"description":"Client side Javascript API wrapper for GitHub API v3","language":"JavaScript","watchers":0,"followers":0,"forks":0,"size":192,"open_issues":0,"score":3.8209975,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/frikille/GitHubWrapper","created":"2012-12-14T13:01:21Z","created_at":"2012-12-14T13:01:21Z","pushed_at":"2013-04-14T16:49:48Z","pushed":"2013-04-14T16:49:48Z"},{"type":"repo","username":"meritt","name":"node-gisty","owner":"meritt","homepage":"http://simonenko.su/projects/node-gisty","description":"A node.js wrapper for the GitHub Gists API v3","language":"CoffeeScript","watchers":11,"followers":11,"forks":1,"size":160,"open_issues":0,"score":3.8082883,"has_downloads":true,"has_issues":true,"has_wiki":false,"fork":false,"private":false,"url":"https://github.com/meritt/node-gisty","created":"2011-08-12T22:20:29Z","created_at":"2011-08-12T22:20:29Z","pushed_at":"2013-12-25T13:45:15Z","pushed":"2013-12-25T13:45:15Z"},{"type":"repo","username":"Factual","name":"ruby-factual","owner":"Factual","homepage":"http://wiki.developer.factual.com/","description":"THIS PROJECT IS DEPRECATED. Please use https://github.com/Factual/factual-ruby-driver. Ruby gem to access Factual API v2. Since the Factual API v2 will be deprecated in Q2 2012, and we are moving forward to API v3, there is new ruby gem for V3 accessing, which is at https://github.com/Factual/factual-ruby-driver.","language":"Ruby","watchers":14,"followers":14,"forks":4,"size":112,"open_issues":0,"score":3.669366,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/Factual/ruby-factual","created":"2010-10-29T02:31:52Z","created_at":"2010-10-29T02:31:52Z","pushed_at":"2012-08-16T13:49:41Z","pushed":"2012-08-16T13:49:41Z"},{"type":"repo","username":"rmsr","name":"python-github-api","owner":"rmsr","homepage":null,"description":"Pythonic wrapper around the GitHub API v3","language":"","watchers":0,"followers":0,"forks":0,"size":76,"open_issues":0,"score":3.6569185,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/rmsr/python-github-api","created":"2012-08-10T14:46:39Z","created_at":"2012-08-10T14:46:39Z","pushed_at":"2012-08-10T14:46:40Z","pushed":"2012-08-10T14:46:40Z"},{"type":"repo","username":"wanthony","name":"coffeehub","owner":"wanthony","homepage":"","description":"A Node.js / CoffeeScript GitHub API v3 Implementation","language":"","watchers":1,"followers":1,"forks":0,"size":80,"open_issues":0,"score":3.6569185,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/wanthony/coffeehub","created":"2011-09-09T01:44:48Z","created_at":"2011-09-09T01:44:48Z","pushed_at":null,"pushed":null},{"type":"repo","username":"jeffremer","name":"gist-client","owner":"jeffremer","homepage":"http://jeffremer.com","description":"A REST client for CRUDing Github Gists via the v3 API.","language":"Ruby","watchers":1,"followers":1,"forks":0,"size":872,"open_issues":0,"score":3.6569185,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/jeffremer/gist-client","created":"2011-04-29T22:16:32Z","created_at":"2011-04-29T22:16:32Z","pushed_at":"2011-05-01T02:43:37Z","pushed":"2011-05-01T02:43:37Z"},{"type":"repo","username":"ssouporg","name":"jquery-github","owner":"ssouporg","homepage":null,"description":"JQuery plugin for interacting with GitHub api v3","language":"JavaScript","watchers":1,"followers":1,"forks":0,"size":5972,"open_issues":0,"score":3.6569185,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/ssouporg/jquery-github","created":"2012-07-07T16:46:05Z","created_at":"2012-07-07T16:46:05Z","pushed_at":"2013-10-31T16:08:18Z","pushed":"2013-10-31T16:08:18Z"},{"type":"repo","username":"olly","name":"grim_repo","owner":"olly","homepage":"http://olly.github.com/grim_repo","description":"An idiomatic Ruby wrapper for the GitHub v3 API – for humans, not computers.","language":"Ruby","watchers":1,"followers":1,"forks":0,"size":296,"open_issues":0,"score":3.6569185,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/olly/grim_repo","created":"2013-03-04T18:37:46Z","created_at":"2013-03-04T18:37:46Z","pushed_at":"2013-03-05T16:45:52Z","pushed":"2013-03-05T16:45:52Z"},{"type":"repo","username":"shokai","name":"sinatra-github-oauth-sample","owner":"shokai","homepage":null,"description":"Sinatra and OAuth Sample with GitHub API v3","language":"Ruby","watchers":0,"followers":0,"forks":0,"size":204,"open_issues":0,"score":3.6569185,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/shokai/sinatra-github-oauth-sample","created":"2013-06-12T15:08:10Z","created_at":"2013-06-12T15:08:10Z","pushed_at":"2013-06-13T00:03:11Z","pushed":"2013-06-13T00:03:11Z"},{"type":"repo","username":"cheeyeo","name":"snipplets-test","owner":"cheeyeo","homepage":null,"description":"Testing snipplets app link to github through api v3","language":"","watchers":1,"followers":1,"forks":0,"size":216,"open_issues":0,"score":3.6569185,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/cheeyeo/snipplets-test","created":"2012-06-07T15:51:53Z","created_at":"2012-06-07T15:51:53Z","pushed_at":"2012-06-07T17:39:31Z","pushed":"2012-06-07T17:39:31Z"},{"type":"repo","username":"mtutty","name":"GithubIssueSync","owner":"mtutty","homepage":"","description":"Allows bulk import and export of issues via Github API V3","language":"C#","watchers":2,"followers":2,"forks":0,"size":4418,"open_issues":1,"score":3.6569185,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/mtutty/GithubIssueSync","created":"2012-01-02T05:15:53Z","created_at":"2012-01-02T05:15:53Z","pushed_at":"2012-01-18T21:24:44Z","pushed":"2012-01-18T21:24:44Z"},{"type":"repo","username":"csphere","name":"rubhub","owner":"csphere","homepage":"","description":"Ruby Gem - An intuitive wrapper for the Github Api v3.","language":"Ruby","watchers":1,"followers":1,"forks":0,"size":664,"open_issues":0,"score":3.6569185,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/csphere/rubhub","created":"2012-03-08T20:07:25Z","created_at":"2012-03-08T20:07:25Z","pushed_at":"2012-04-02T22:08:54Z","pushed":"2012-04-02T22:08:54Z"},{"type":"repo","username":"philcali","name":"github-cli","owner":"philcali","homepage":null,"description":"Simple CL program interfacing with Github via API v3","language":"Scala","watchers":0,"followers":0,"forks":0,"size":100,"open_issues":0,"score":3.6569185,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/philcali/github-cli","created":"2012-12-16T05:33:48Z","created_at":"2012-12-16T05:33:48Z","pushed_at":"2012-12-16T06:13:00Z","pushed":"2012-12-16T06:13:00Z"},{"type":"repo","username":"schacon","name":"fuselage","owner":"schacon","homepage":"http://www.gitpilot.com","description":"Light weight Ruby wrapper for Github v3 api","language":"Ruby","watchers":3,"followers":3,"forks":0,"size":130,"open_issues":0,"score":3.6569185,"has_downloads":true,"has_issues":false,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/schacon/fuselage","created":"2011-07-21T15:10:46Z","created_at":"2011-07-21T15:10:46Z","pushed_at":"2011-07-20T14:15:23Z","pushed":"2011-07-20T14:15:23Z"},{"type":"repo","username":"baz","name":"node-github-issues","owner":"baz","homepage":"","description":"GitHub Issues API v3 Node.js module","language":"JavaScript","watchers":1,"followers":1,"forks":0,"size":148,"open_issues":0,"score":3.641752,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/baz/node-github-issues","created":"2011-05-13T02:11:45Z","created_at":"2011-05-13T02:11:45Z","pushed_at":"2011-05-13T02:13:02Z","pushed":"2011-05-13T02:13:02Z"},{"type":"repo","username":"chrisvogt","name":"GithubEventsWidget","owner":"chrisvogt","homepage":null,"description":"Cake 2.x Component to assist with consuming the Github API v3","language":"","watchers":1,"followers":1,"forks":0,"size":164,"open_issues":0,"score":3.641752,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/chrisvogt/GithubEventsWidget","created":"2013-07-02T08:33:48Z","created_at":"2013-07-02T08:33:48Z","pushed_at":"2013-07-03T04:38:18Z","pushed":"2013-07-03T04:38:18Z"},{"type":"repo","username":"RobertFischer","name":"github-api-3","owner":"RobertFischer","homepage":"","description":"An under-implemented version of the GitHub API v3 using Resty.","language":"Java","watchers":1,"followers":1,"forks":0,"size":228,"open_issues":0,"score":3.641752,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/RobertFischer/github-api-3","created":"2012-04-15T17:14:22Z","created_at":"2012-04-15T17:14:22Z","pushed_at":"2012-08-27T03:12:06Z","pushed":"2012-08-27T03:12:06Z"},{"type":"repo","username":"ralphschindler","name":"GitHubAPI","owner":"ralphschindler","homepage":null,"description":"A PHP library for interacting with the GitHub v3 API","language":"PHP","watchers":6,"followers":6,"forks":0,"size":168,"open_issues":0,"score":3.641752,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/ralphschindler/GitHubAPI","created":"2012-09-15T15:46:16Z","created_at":"2012-09-15T15:46:16Z","pushed_at":"2013-08-01T16:06:20Z","pushed":"2013-08-01T16:06:20Z"},{"type":"repo","username":"Strech","name":"abak_oauth","owner":"Strech","homepage":null,"description":"This is a simple rails app for github api v3 oauth2","language":"Ruby","watchers":0,"followers":0,"forks":0,"size":214,"open_issues":0,"score":3.641752,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/Strech/abak_oauth","created":"2012-04-30T14:59:23Z","created_at":"2012-04-30T14:59:23Z","pushed_at":"2014-01-17T12:50:13Z","pushed":"2014-01-17T12:50:13Z"},{"type":"repo","username":"theWPValet","name":"python-github-api","owner":"theWPValet","homepage":null,"description":"A simple python github api v3 wrapper using requests","language":"Python","watchers":0,"followers":0,"forks":0,"size":144,"open_issues":0,"score":3.641752,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/theWPValet/python-github-api","created":"2014-02-06T00:48:01Z","created_at":"2014-02-06T00:48:01Z","pushed_at":"2014-02-22T00:46:37Z","pushed":"2014-02-22T00:46:37Z"},{"type":"repo","username":"bitprophet","name":"redmine2github","owner":"bitprophet","homepage":"","description":"Port (Fabric's) Redmine tickets to (Fabric's) Github Issues v2 / API v3","language":"Ruby","watchers":2,"followers":2,"forks":1,"size":120,"open_issues":0,"score":3.1878119,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/bitprophet/redmine2github","created":"2011-07-13T06:06:31Z","created_at":"2011-07-13T06:06:31Z","pushed_at":"2011-08-19T00:19:18Z","pushed":"2011-08-19T00:19:18Z"},{"type":"repo","username":"andreazevedo","name":"dispatch-github-specs","owner":"andreazevedo","homepage":null,"description":"Projects used by the specs of andreazevedo/dispatch-github to test the github api v3","language":"","watchers":1,"followers":1,"forks":0,"size":144,"open_issues":3,"score":3.123741,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/andreazevedo/dispatch-github-specs","created":"2012-11-05T20:09:47Z","created_at":"2012-11-05T20:09:47Z","pushed_at":"2012-11-05T20:09:47Z","pushed":"2012-11-05T20:09:47Z"},{"type":"repo","username":"otint","name":"github-issues-via-feedback-form","owner":"otint","homepage":null,"description":"Create GitHub Issues via a feedback form on your website using the GitHub api v3","language":"JavaScript","watchers":1,"followers":1,"forks":0,"size":952,"open_issues":13,"score":3.123741,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/otint/github-issues-via-feedback-form","created":"2012-12-28T00:49:40Z","created_at":"2012-12-28T00:49:40Z","pushed_at":"2013-01-01T21:28:46Z","pushed":"2013-01-01T21:28:46Z"},{"type":"repo","username":"ritratt","name":"gituserinfo","owner":"ritratt","homepage":null,"description":"A simple python script that uses PyGithub for accessing user information through Github API v3","language":"Python","watchers":1,"followers":1,"forks":0,"size":108,"open_issues":0,"score":3.1089733,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/ritratt/gituserinfo","created":"2012-06-13T20:26:46Z","created_at":"2012-06-13T20:26:46Z","pushed_at":"2012-06-13T20:37:31Z","pushed":"2012-06-13T20:37:31Z"},{"type":"repo","username":"jasim","name":"finding_bits","owner":"jasim","homepage":null,"description":"Search Github top repos for code snippets using the Github API v3","language":"Ruby","watchers":0,"followers":0,"forks":1,"size":803,"open_issues":0,"score":3.1089733,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/jasim/finding_bits","created":"2013-08-28T13:06:35Z","created_at":"2013-08-28T13:06:35Z","pushed_at":"2013-09-13T12:31:53Z","pushed":"2013-09-13T12:31:53Z"},{"type":"repo","username":"f0t0n","name":"GitHubApiTestRepo","owner":"f0t0n","homepage":null,"description":"Second repository for testing the interaction between the BugKick and GitHub via GitHub API v3.","language":"","watchers":1,"followers":1,"forks":0,"size":96,"open_issues":4,"score":3.1089733,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/f0t0n/GitHubApiTestRepo","created":"2012-07-12T22:07:17Z","created_at":"2012-07-12T22:07:17Z","pushed_at":"2012-07-12T22:07:18Z","pushed":"2012-07-12T22:07:18Z"},{"type":"repo","username":"inkel","name":"cuba-omniauth-octokit","owner":"inkel","homepage":"","description":"Proof of concept of a Cuba application with OmniAuth and Octokit to access the GitHub v3 API","language":"JavaScript","watchers":1,"followers":1,"forks":0,"size":412,"open_issues":3,"score":2.9255345,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/inkel/cuba-omniauth-octokit","created":"2012-03-09T13:24:54Z","created_at":"2012-03-09T13:24:54Z","pushed_at":"2012-03-12T12:38:07Z","pushed":"2012-03-12T12:38:07Z"},{"type":"repo","username":"roopeshvaddepally","name":"pygh3","owner":"roopeshvaddepally","homepage":"","description":"python github wrapper for api v3. make it more like iorayne/tentacles","language":"Python","watchers":1,"followers":1,"forks":0,"size":132,"open_issues":0,"score":2.9255345,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/roopeshvaddepally/pygh3","created":"2012-02-12T06:46:07Z","created_at":"2012-02-12T06:46:07Z","pushed_at":"2012-02-12T23:14:35Z","pushed":"2012-02-12T23:14:35Z"},{"type":"repo","username":"thiagolocatelli","name":"android-github-oauth","owner":"thiagolocatelli","homepage":"","description":"Library and example project on how to connect to GitHub OAuth (v3) API","language":"Java","watchers":3,"followers":3,"forks":2,"size":120,"open_issues":0,"score":2.9255345,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/thiagolocatelli/android-github-oauth","created":"2011-09-27T14:41:01Z","created_at":"2011-09-27T14:41:01Z","pushed_at":"2011-09-27T14:53:33Z","pushed":"2011-09-27T14:53:33Z"},{"type":"repo","username":"plu","name":"Octotco","owner":"plu","homepage":"","description":"iOS App to access the Github v3 API via RestKit","language":"Objective-C","watchers":2,"followers":2,"forks":0,"size":372,"open_issues":0,"score":2.9255345,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/plu/Octotco","created":"2011-11-18T07:39:13Z","created_at":"2011-11-18T07:39:13Z","pushed_at":"2011-11-18T07:41:46Z","pushed":"2011-11-18T07:41:46Z"},{"type":"repo","username":"mklabs","name":"ghv3","owner":"mklabs","homepage":"","description":"GitHub Api v3 library. Ideally, it should work in node via http request, and in browsers using jsonp.","language":"JavaScript","watchers":2,"followers":2,"forks":0,"size":264,"open_issues":0,"score":2.9255345,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/mklabs/ghv3","created":"2011-07-31T10:41:16Z","created_at":"2011-07-31T10:41:16Z","pushed_at":"2011-07-31T15:34:55Z","pushed":"2011-07-31T15:34:55Z"},{"type":"repo","username":"exallium","name":"gitIssues2","owner":"exallium","homepage":"","description":"Complete Rewrite of GitIssues, including new UI and utilizing Github's V3 API Java Library","language":"Java","watchers":1,"followers":1,"forks":0,"size":1960,"open_issues":2,"score":2.9134018,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/exallium/gitIssues2","created":"2011-11-02T16:35:46Z","created_at":"2011-11-02T16:35:46Z","pushed_at":"2012-03-02T23:30:29Z","pushed":"2012-03-02T23:30:29Z"},{"type":"repo","username":"gregorynicholas","name":"flask-github","owner":"gregorynicholas","homepage":"gregorynicholas.github.io/flask-github","description":"github api (v3) python client. one step install, fully modeled request and response data objects.","language":"Python","watchers":7,"followers":7,"forks":2,"size":948,"open_issues":0,"score":2.9134018,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/gregorynicholas/flask-github","created":"2012-11-27T09:50:03Z","created_at":"2012-11-27T09:50:03Z","pushed_at":"2013-01-05T23:25:21Z","pushed":"2013-01-05T23:25:21Z"},{"type":"repo","username":"bgribble","name":"github2csv","owner":"bgribble","homepage":null,"description":"Use GitHub v3 API to generate a CSV-formatted report of issues. ","language":"Python","watchers":2,"followers":2,"forks":0,"size":252,"open_issues":0,"score":2.9134018,"has_downloads":true,"has_issues":true,"has_wiki":true,"fork":false,"private":false,"url":"https://github.com/bgribble/github2csv","created":"2013-09-18T18:20:55Z","created_at":"2013-09-18T18:20:55Z","pushed_at":"2013-10-17T20:51:00Z","pushed":"2013-10-17T20:51:00Z"}]} + +https +GET +api.github.com +None +/repos/peter-murach/github +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4995'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '62E81E32:384A:2FAB97B:5325DB4F'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('content-length', '4906'), ('server', 'GitHub.com'), ('last-modified', 'Thu, 06 Mar 2014 21:56:11 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"82265a365b9313e6c76377ba9cf8d2ab"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Sun, 16 Mar 2014 17:11:44 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1394992949')] +{"id":2456210,"name":"github","full_name":"peter-murach/github","owner":{"login":"peter-murach","id":444312,"avatar_url":"https://gravatar.com/avatar/fb249d5564a0f8c5a0b69e0d71d58949?d=https%3A%2F%2Fidenticons.github.com%2F2c3d0e804b05aa1e6a2235d9117479b4.png&r=x","gravatar_id":"fb249d5564a0f8c5a0b69e0d71d58949","url":"https://api.github.com/users/peter-murach","html_url":"https://github.com/peter-murach","followers_url":"https://api.github.com/users/peter-murach/followers","following_url":"https://api.github.com/users/peter-murach/following{/other_user}","gists_url":"https://api.github.com/users/peter-murach/gists{/gist_id}","starred_url":"https://api.github.com/users/peter-murach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/peter-murach/subscriptions","organizations_url":"https://api.github.com/users/peter-murach/orgs","repos_url":"https://api.github.com/users/peter-murach/repos","events_url":"https://api.github.com/users/peter-murach/events{/privacy}","received_events_url":"https://api.github.com/users/peter-murach/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/peter-murach/github","description":"Ruby interface to github API v3","fork":false,"url":"https://api.github.com/repos/peter-murach/github","forks_url":"https://api.github.com/repos/peter-murach/github/forks","keys_url":"https://api.github.com/repos/peter-murach/github/keys{/key_id}","collaborators_url":"https://api.github.com/repos/peter-murach/github/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/peter-murach/github/teams","hooks_url":"https://api.github.com/repos/peter-murach/github/hooks","issue_events_url":"https://api.github.com/repos/peter-murach/github/issues/events{/number}","events_url":"https://api.github.com/repos/peter-murach/github/events","assignees_url":"https://api.github.com/repos/peter-murach/github/assignees{/user}","branches_url":"https://api.github.com/repos/peter-murach/github/branches{/branch}","tags_url":"https://api.github.com/repos/peter-murach/github/tags","blobs_url":"https://api.github.com/repos/peter-murach/github/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/peter-murach/github/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/peter-murach/github/git/refs{/sha}","trees_url":"https://api.github.com/repos/peter-murach/github/git/trees{/sha}","statuses_url":"https://api.github.com/repos/peter-murach/github/statuses/{sha}","languages_url":"https://api.github.com/repos/peter-murach/github/languages","stargazers_url":"https://api.github.com/repos/peter-murach/github/stargazers","contributors_url":"https://api.github.com/repos/peter-murach/github/contributors","subscribers_url":"https://api.github.com/repos/peter-murach/github/subscribers","subscription_url":"https://api.github.com/repos/peter-murach/github/subscription","commits_url":"https://api.github.com/repos/peter-murach/github/commits{/sha}","git_commits_url":"https://api.github.com/repos/peter-murach/github/git/commits{/sha}","comments_url":"https://api.github.com/repos/peter-murach/github/comments{/number}","issue_comment_url":"https://api.github.com/repos/peter-murach/github/issues/comments/{number}","contents_url":"https://api.github.com/repos/peter-murach/github/contents/{+path}","compare_url":"https://api.github.com/repos/peter-murach/github/compare/{base}...{head}","merges_url":"https://api.github.com/repos/peter-murach/github/merges","archive_url":"https://api.github.com/repos/peter-murach/github/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/peter-murach/github/downloads","issues_url":"https://api.github.com/repos/peter-murach/github/issues{/number}","pulls_url":"https://api.github.com/repos/peter-murach/github/pulls{/number}","milestones_url":"https://api.github.com/repos/peter-murach/github/milestones{/number}","notifications_url":"https://api.github.com/repos/peter-murach/github/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/peter-murach/github/labels{/name}","releases_url":"https://api.github.com/repos/peter-murach/github/releases{/id}","created_at":"2011-09-25T19:36:22Z","updated_at":"2014-03-06T21:56:11Z","pushed_at":"2014-03-06T21:56:09Z","git_url":"git://github.com/peter-murach/github.git","ssh_url":"git@github.com:peter-murach/github.git","clone_url":"https://github.com/peter-murach/github.git","svn_url":"https://github.com/peter-murach/github","homepage":"http://peter-murach.github.com/github","size":5302,"stargazers_count":425,"watchers_count":425,"language":"Ruby","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":108,"mirror_url":null,"open_issues_count":11,"forks":108,"open_issues":11,"watchers":425,"default_branch":"master","master_branch":"master","permissions":{"admin":false,"push":false,"pull":true},"network_count":108,"subscribers_count":27} + diff --git a/lib/github/tests/ReplayData/Github.testLegacySearchReposExplicitPagination.txt b/lib/github/tests/ReplayData/Github.testLegacySearchReposExplicitPagination.txt new file mode 100644 index 0000000000..bf7491540f --- /dev/null +++ b/lib/github/tests/ReplayData/Github.testLegacySearchReposExplicitPagination.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/legacy/repos/search/python?start_page=5 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4999'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('content-length', '40758'), ('server', 'nginx'), ('connection', 'keep-alive'), ('etag', '"55a485e08fb00f1ed4304534fbbf0cb0"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Tue, 11 Sep 2012 21:27:18 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"repositories":[{"type":"repo","forks":183,"owner":"kriswallsmith","pushed":"2012-09-07T10:40:33-07:00","username":"kriswallsmith","description":"Asset Management for PHP","created_at":"2011-01-10T09:47:13-08:00","watchers":1171,"followers":1171,"fork":false,"size":752,"created":"2011-01-10T09:47:13-08:00","name":"assetic","private":false,"pushed_at":"2012-09-07T10:40:33-07:00","language":"PHP"},{"type":"repo","forks":28,"owner":"Vizzuality","pushed":"2012-09-11T13:59:46-07:00","username":"Vizzuality","description":"Geospatial database for the cloud","created_at":"2011-01-12T07:25:41-08:00","watchers":238,"followers":238,"fork":false,"size":352,"created":"2011-01-12T07:25:41-08:00","name":"cartodb","private":false,"pushed_at":"2012-09-11T13:59:46-07:00","language":"JavaScript"},{"type":"repo","forks":73,"owner":"sebastien","pushed":"2012-09-11T12:10:16-07:00","username":"sebastien","description":"Chef-like functionality for Fabric","created_at":"2011-02-28T12:26:37-08:00","watchers":515,"followers":515,"fork":false,"size":236,"created":"2011-02-28T12:26:37-08:00","name":"cuisine","private":false,"pushed_at":"2012-09-11T12:10:16-07:00","language":"Python"},{"type":"repo","forks":26,"owner":"dound","pushed":"2011-12-19T12:52:24-08:00","username":"dound","description":"Fast, lightweight Sessions middleware for Google App Engine (secure cookies, memcache, or datastore)","created_at":"2010-04-07T02:30:31-07:00","watchers":231,"followers":231,"fork":false,"size":272,"created":"2010-04-07T02:30:31-07:00","name":"gae-sessions","private":false,"pushed_at":"2011-12-19T12:52:24-08:00","language":"Python"},{"type":"repo","forks":2,"owner":"geoalchemy","pushed":"2012-09-11T10:16:06-07:00","username":"geoalchemy","description":"GeoAlchemy 2","created_at":"2012-09-01T03:00:24-07:00","watchers":2,"followers":2,"fork":false,"size":228,"created":"2012-09-01T03:00:24-07:00","name":"geoalchemy2","private":false,"pushed_at":"2012-09-11T10:16:06-07:00","language":"Python"},{"type":"repo","forks":0,"owner":"SimonSapin","pushed":"2012-09-11T12:15:38-07:00","username":"SimonSapin","description":"Data Access Library","created_at":"2011-07-03T10:32:42-07:00","watchers":2,"followers":2,"fork":true,"size":232,"created":"2011-07-03T10:32:42-07:00","name":"Multicorn","private":false,"pushed_at":"2012-09-11T12:15:38-07:00","language":"Python"},{"type":"repo","forks":0,"owner":"JeanFred","pushed":"2012-09-11T13:08:53-07:00","username":"JeanFred","description":"A WmFr timeline","created_at":"2012-08-07T12:38:19-07:00","watchers":0,"followers":0,"fork":false,"size":336,"created":"2012-08-07T12:38:19-07:00","name":"wmfr-timeline","private":false,"pushed_at":"2012-09-11T13:08:53-07:00","language":"Python"},{"type":"repo","forks":12,"owner":"sripathikrishnan","pushed":"2012-08-02T08:16:15-07:00","username":"sripathikrishnan","description":"Parse Redis dump.rdb files, Analyze Memory, and Export Data to JSON","created_at":"2012-03-10T03:09:12-08:00","watchers":108,"followers":108,"fork":false,"size":132,"created":"2012-03-10T03:09:12-08:00","name":"redis-rdb-tools","private":false,"pushed_at":"2012-08-02T08:16:15-07:00","language":"Python"},{"type":"repo","forks":1,"owner":"Ilastik","pushed":"2012-09-11T10:02:43-07:00","username":"Ilastik","description":"ilastik-shell, applets, and workflows to string them together.","created_at":"2012-05-08T08:59:36-07:00","watchers":1,"followers":1,"fork":false,"size":296,"created":"2012-05-08T08:59:36-07:00","name":"applet-workflows","private":false,"pushed_at":"2012-09-11T10:02:43-07:00","language":"Python"},{"type":"repo","forks":0,"owner":"agoebel","pushed":"2012-09-11T10:19:08-07:00","username":"agoebel","description":"a micro command line tool that posts delayed tweets (like Buffer)","created_at":"2012-09-11T10:18:41-07:00","watchers":0,"followers":0,"fork":false,"size":92,"created":"2012-09-11T10:18:41-07:00","name":"TweetBuff","private":false,"pushed_at":"2012-09-11T10:19:08-07:00","language":"Python"},{"type":"repo","forks":77,"owner":"groovy","pushed":"2012-09-11T10:24:22-07:00","username":"groovy","description":"Groovy language Git repository","created_at":"2011-09-19T00:41:42-07:00","watchers":227,"followers":227,"fork":false,"size":928,"created":"2011-09-19T00:41:42-07:00","name":"groovy-core","private":false,"pushed_at":"2012-09-11T10:24:22-07:00","language":"Java"},{"type":"repo","forks":0,"owner":"RazvanB","pushed":"2012-09-11T10:34:54-07:00","username":"RazvanB","description":"","created_at":"2012-09-06T10:53:50-07:00","watchers":0,"followers":0,"fork":false,"size":220,"created":"2012-09-06T10:53:50-07:00","name":"StarTrekGame","private":false,"pushed_at":"2012-09-11T10:34:54-07:00","language":"Python"},{"type":"repo","forks":0,"owner":"Ugrt","pushed":"2012-09-11T11:19:36-07:00","username":"Ugrt","description":"Un nuevo repositorio","created_at":"2012-09-11T11:12:55-07:00","watchers":0,"followers":0,"fork":false,"size":92,"created":"2012-09-11T11:12:55-07:00","name":"Nuevo","private":false,"pushed_at":"2012-09-11T11:19:36-07:00","language":"Python"},{"type":"repo","forks":2,"owner":"andrewfiorillo","pushed":"2012-08-02T14:07:38-07:00","username":"andrewfiorillo","description":"Cupid color scheme for Sublime Text 2 and Textmate","created_at":"2012-05-29T07:05:33-07:00","watchers":3,"followers":3,"fork":false,"size":136,"created":"2012-05-29T07:05:33-07:00","name":"Cupid","private":false,"pushed_at":"2012-08-02T14:07:38-07:00","language":null},{"type":"repo","forks":25,"owner":"WindowsAzure","pushed":"2012-08-30T14:23:42-07:00","username":"WindowsAzure","description":"","created_at":"2012-03-02T08:35:36-08:00","watchers":175,"followers":175,"fork":false,"size":168,"created":"2012-03-02T08:35:36-08:00","name":"node-sqlserver","private":false,"pushed_at":"2012-08-30T14:23:42-07:00","language":"C++"},{"type":"repo","forks":6,"owner":"danfolkes","pushed":"2012-09-09T18:39:17-07:00","username":"danfolkes","description":"This will convert a magnet link into a .torrent file","created_at":"2012-04-19T07:31:02-07:00","watchers":17,"followers":17,"fork":false,"size":128,"created":"2012-04-19T07:31:02-07:00","name":"Magnet2Torrent","private":false,"pushed_at":"2012-09-09T18:39:17-07:00","language":"Python"},{"type":"repo","forks":18,"owner":"mattt","pushed":"2012-09-06T08:06:47-07:00","username":"mattt","description":"Remote configuration for iOS","created_at":"2012-08-31T16:13:59-07:00","watchers":308,"followers":308,"fork":false,"size":136,"created":"2012-08-31T16:13:59-07:00","name":"GroundControl","private":false,"pushed_at":"2012-09-06T08:06:47-07:00","language":"Objective-C"},{"type":"repo","forks":5,"owner":"dcramer","pushed":"2012-08-16T12:45:29-07:00","username":"dcramer","description":"","created_at":"2012-02-06T13:39:47-08:00","watchers":33,"followers":33,"fork":false,"size":132,"created":"2012-02-06T13:39:47-08:00","name":"mock-django","private":false,"pushed_at":"2012-08-16T12:45:29-07:00","language":"Python"},{"type":"repo","forks":16,"owner":"ciembor","pushed":"2012-09-07T10:18:30-07:00","username":"ciembor","description":"Terminal Color Scheme Designer","created_at":"2012-08-20T11:36:25-07:00","watchers":164,"followers":164,"fork":false,"size":208,"created":"2012-08-20T11:36:25-07:00","name":"4bit","private":false,"pushed_at":"2012-09-07T10:18:30-07:00","language":"JavaScript"},{"type":"repo","forks":0,"owner":"hexsprite","pushed":"2012-09-11T12:12:32-07:00","username":"hexsprite","description":"","created_at":"2012-09-11T12:05:15-07:00","watchers":0,"followers":0,"fork":true,"size":112,"created":"2012-09-11T12:05:15-07:00","name":"mock-django","private":false,"pushed_at":"2012-09-11T12:12:32-07:00","language":"Python"},{"type":"repo","forks":39,"owner":"gcollazo","pushed":"2012-08-08T09:06:13-07:00","username":"gcollazo","description":"Deploy django apps to Amazon EC2 with ONE command","created_at":"2011-06-26T13:27:07-07:00","watchers":383,"followers":383,"fork":false,"size":136,"created":"2011-06-26T13:27:07-07:00","name":"Fabulous","private":false,"pushed_at":"2012-08-08T09:06:13-07:00","language":"Python"},{"type":"repo","forks":78,"owner":"LaurentGomila","pushed":"2012-09-01T14:23:07-07:00","username":"LaurentGomila","description":"Simple and Fast Multimedia Library","created_at":"2011-03-25T01:05:25-07:00","watchers":637,"followers":637,"fork":false,"size":796,"created":"2011-03-25T01:05:25-07:00","name":"SFML","private":false,"pushed_at":"2012-09-01T14:23:07-07:00","language":"C"},{"type":"repo","forks":0,"owner":"fabiocerqueira","pushed":"2012-09-11T12:39:14-07:00","username":"fabiocerqueira","description":"Página pessoal: http://cerqueira.me","created_at":"2012-09-11T12:38:06-07:00","watchers":0,"followers":0,"fork":false,"size":316,"created":"2012-09-11T12:38:06-07:00","name":"pydicas","private":false,"pushed_at":"2012-09-11T12:39:14-07:00","language":"JavaScript"},{"type":"repo","forks":139,"owner":"AdamAtomic","pushed":"2011-10-16T12:30:21-07:00","username":"AdamAtomic","description":"flixel is a free Actionscript (Flash) library that I distilled from a variety of Flash games that I've worked on over the last couple years, including Gravity Hook, Fathom and Canabalt. It's primary function is to provide some useful base classes that you can extend to make your own game objects.","created_at":"2009-10-18T16:14:40-07:00","watchers":916,"followers":916,"fork":false,"size":284,"created":"2009-10-18T16:14:40-07:00","name":"flixel","private":false,"pushed_at":"2011-10-16T12:30:21-07:00","language":"ActionScript"},{"type":"repo","forks":0,"owner":"joehewitt","pushed":"2012-09-11T01:08:28-07:00","username":"joehewitt","description":"It's a programming language.","created_at":"2012-08-04T23:56:03-07:00","watchers":19,"followers":19,"fork":false,"size":3376,"created":"2012-08-04T23:56:03-07:00","name":"up","private":false,"pushed_at":"2012-09-11T01:08:28-07:00","language":"C"},{"type":"repo","forks":71,"owner":"zedshaw","pushed":"2012-09-01T11:24:16-07:00","username":"zedshaw","description":"The Mongrel2 Web Server Project","created_at":"2011-05-21T10:04:11-07:00","watchers":760,"followers":760,"fork":false,"size":264,"created":"2011-05-21T10:04:11-07:00","name":"mongrel2","private":false,"pushed_at":"2012-09-01T11:24:16-07:00","language":"C"},{"type":"repo","forks":0,"owner":"fabriceleal","pushed":"2012-09-11T13:43:09-07:00","username":"fabriceleal","description":"A static page server in node.js","created_at":"2012-09-10T14:38:34-07:00","watchers":1,"followers":1,"fork":false,"size":120,"created":"2012-09-10T14:38:34-07:00","name":"SimpleHTTPServerJs","private":false,"pushed_at":"2012-09-11T13:43:09-07:00","language":"JavaScript"},{"type":"repo","forks":0,"owner":"djrahl","pushed":"2012-09-11T13:48:10-07:00","username":"djrahl","description":"a crpg in the spirit of ultima v","created_at":"2012-09-11T13:38:24-07:00","watchers":0,"followers":0,"fork":false,"size":92,"created":"2012-09-11T13:38:24-07:00","name":"ultimos","private":false,"pushed_at":"2012-09-11T13:48:10-07:00","language":null},{"type":"repo","forks":45,"owner":"ArchipelProject","pushed":"2012-09-11T13:51:51-07:00","username":"ArchipelProject","description":"XMPP Based Orchestrator","created_at":"2010-09-25T08:03:52-07:00","watchers":298,"followers":298,"fork":false,"size":416,"created":"2010-09-25T08:03:52-07:00","name":"Archipel","private":false,"pushed_at":"2012-09-11T13:51:51-07:00","language":"Objective-J"},{"type":"repo","forks":32,"owner":"revolunet","pushed":"2012-08-27T09:22:58-07:00","username":"revolunet","description":"Open source javascript books compilation","created_at":"2012-07-31T01:03:56-07:00","watchers":153,"followers":153,"fork":false,"size":184,"created":"2012-07-31T01:03:56-07:00","name":"JSbooks","private":false,"pushed_at":"2012-08-27T09:22:58-07:00","language":"JavaScript"},{"type":"repo","forks":345,"owner":"openstack","pushed":"2012-09-11T14:17:33-07:00","username":"openstack","description":"OpenStack Compute (Nova)","created_at":"2010-07-21T19:04:27-07:00","watchers":630,"followers":630,"fork":false,"size":7912,"created":"2010-07-21T19:04:27-07:00","name":"nova","private":false,"pushed_at":"2012-09-11T14:17:33-07:00","language":"Python"},{"type":"repo","forks":9,"owner":"nodebox","pushed":"2012-09-11T14:18:01-07:00","username":"nodebox","description":"Interactive, hackable graphic design application ","created_at":"2009-02-10T08:28:47-08:00","watchers":160,"followers":160,"fork":false,"size":452568,"created":"2009-02-10T08:28:47-08:00","name":"nodebox","private":false,"pushed_at":"2012-09-11T14:18:01-07:00","language":"Java"},{"type":"repo","forks":24,"owner":"bitly","pushed":"2012-09-11T14:24:12-07:00","username":"bitly","description":"a family of libraries and daemons for building scalable web infrastructure","created_at":"2010-12-16T14:13:56-08:00","watchers":143,"followers":143,"fork":false,"size":193,"created":"2010-12-16T14:13:56-08:00","name":"simplehttp","private":false,"pushed_at":"2012-09-11T14:24:12-07:00","language":"C"},{"type":"repo","forks":23,"owner":"bitly","pushed":"2012-09-04T10:07:19-07:00","username":"bitly","description":"scaling, counting, bloom filter library","created_at":"2012-07-25T11:41:03-07:00","watchers":326,"followers":326,"fork":false,"size":356,"created":"2012-07-25T11:41:03-07:00","name":"dablooms","private":false,"pushed_at":"2012-09-04T10:07:19-07:00","language":"C"},{"type":"repo","forks":362,"owner":"altercation","pushed":"2012-08-26T22:50:52-07:00","username":"altercation","description":"precision color scheme for multiple applications (terminal, vim, etc.) with both dark/light modes","created_at":"2011-02-17T21:18:27-08:00","watchers":2918,"followers":2918,"fork":false,"size":388,"created":"2011-02-17T21:18:27-08:00","name":"solarized","private":false,"pushed_at":"2012-08-26T22:50:52-07:00","language":"Perl"},{"type":"repo","forks":132,"owner":"adamzap","pushed":"2012-09-06T21:24:25-07:00","username":"adamzap","description":"Generate a slideshow using the slides that power the html5-slides presentation","created_at":"2010-05-11T21:34:16-07:00","watchers":693,"followers":693,"fork":false,"size":176,"created":"2010-05-11T21:34:16-07:00","name":"landslide","private":false,"pushed_at":"2012-09-06T21:24:25-07:00","language":"Python"},{"type":"repo","forks":0,"owner":"i2bizpl","pushed":"2012-09-05T21:11:49-07:00","username":"i2bizpl","description":"File Upload widget with multiple file selection, drag&drop support, progress bars and preview images for jQuery. Supports cross-domain, chunked and resumable file uploads and client-side image resizing. Works with any server-side platform (PHP, Python, Ruby on Rails, Java, Node.js, Go etc.) that supports standard HTML form file uploads.","created_at":"2012-09-11T10:22:38-07:00","watchers":0,"followers":0,"fork":true,"size":316,"created":"2012-09-11T10:22:38-07:00","name":"jQuery-File-Upload","private":false,"pushed_at":"2012-09-05T21:11:49-07:00","language":"JavaScript"},{"type":"repo","forks":3,"owner":"swhitley","pushed":"2012-05-18T21:06:33-07:00","username":"swhitley","description":"File Upload widget with multiple file selection, drag&drop support, progress bars and preview images for jQuery. Supports cross-domain, chunked and resumable file uploads and client-side image resizing. Works with any server-side platform (PHP, Python, Ruby on Rails, Java, Node.js, Go etc.) that supports standard HTML form file uploads.","created_at":"2012-05-18T15:15:11-07:00","watchers":5,"followers":5,"fork":true,"size":116,"created":"2012-05-18T15:15:11-07:00","name":"jQuery-File-Upload","private":false,"pushed_at":"2012-05-18T21:06:33-07:00","language":"JavaScript"},{"type":"repo","forks":3,"owner":"timabell","pushed":"2012-03-21T09:32:35-07:00","username":"timabell","description":"File Upload widget with multiple file selection, drag&drop support, progress bars and preview images for jQuery. Supports cross-domain, chunked and resumable file uploads and client-side image resizing. Works with any server-side platform (PHP, Python, Ruby on Rails, Java, Node.js, Go etc.) that supports standard HTML form file uploads.","created_at":"2012-03-21T09:12:48-07:00","watchers":7,"followers":7,"fork":true,"size":612,"created":"2012-03-21T09:12:48-07:00","name":"jQuery-File-Upload","private":false,"pushed_at":"2012-03-21T09:32:35-07:00","language":"JavaScript"},{"type":"repo","forks":0,"owner":"MisterY","pushed":"2012-09-11T14:11:50-07:00","username":"MisterY","description":"Clipperz Community Edition is a web-based password manager. It allows you to host on your own server a web service identical to the well-known Clipperz online password manager. It supports multiple backends (PHP/MySQL, Python/AppEngine, …) and you can contribute your own. Local encryption within the browser guarantees that no one except you can read your data.","created_at":"2012-09-08T11:10:24-07:00","watchers":0,"followers":0,"fork":true,"size":156,"created":"2012-09-08T11:10:24-07:00","name":"password-manager","private":false,"pushed_at":"2012-09-11T14:11:50-07:00","language":"JavaScript"},{"type":"repo","forks":7,"owner":"spesmilo","pushed":"2012-09-11T12:02:13-07:00","username":"spesmilo","description":"Electrum; Bitcoin thin client","created_at":"2012-08-02T09:24:30-07:00","watchers":19,"followers":19,"fork":false,"size":552,"created":"2012-08-02T09:24:30-07:00","name":"electrum","private":false,"pushed_at":"2012-09-11T12:02:13-07:00","language":"Python"},{"type":"repo","forks":8,"owner":"aritter","pushed":"2012-06-28T20:57:20-07:00","username":"aritter","description":"UW Twitter NLP Tools","created_at":"2011-07-16T13:24:35-07:00","watchers":54,"followers":54,"fork":false,"size":1272,"created":"2011-07-16T13:24:35-07:00","name":"twitter_nlp","private":false,"pushed_at":"2012-06-28T20:57:20-07:00","language":"Java"},{"type":"repo","forks":12,"owner":"af","pushed":"2012-05-06T20:38:22-07:00","username":"af","description":"Makes it easy for Django backends to talk to Backbone.js.","created_at":"2011-11-26T13:33:53-08:00","watchers":122,"followers":122,"fork":false,"size":128,"created":"2011-11-26T13:33:53-08:00","name":"djangbone","private":false,"pushed_at":"2012-05-06T20:38:22-07:00","language":"Python"},{"type":"repo","forks":0,"owner":"vchahun","pushed":"2012-09-11T10:47:11-07:00","username":"vchahun","description":"Cython XFST bindings","created_at":"2012-09-11T10:46:18-07:00","watchers":0,"followers":0,"fork":false,"size":112,"created":"2012-09-11T10:46:18-07:00","name":"pyxfst","private":false,"pushed_at":"2012-09-11T10:47:11-07:00","language":"C"},{"type":"repo","forks":17,"owner":"TooTallNate","pushed":"2012-09-07T11:08:32-07:00","username":"TooTallNate","description":"Node.js native addon build tool","created_at":"2012-02-02T21:50:50-08:00","watchers":170,"followers":170,"fork":false,"size":1184,"created":"2012-02-02T21:50:50-08:00","name":"node-gyp","private":false,"pushed_at":"2012-09-07T11:08:32-07:00","language":"Python"},{"type":"repo","forks":63,"owner":"clintbellanger","pushed":"2012-09-11T11:27:46-07:00","username":"clintbellanger","description":"Free Libre Action Roleplaying Engine","created_at":"2011-06-03T19:53:27-07:00","watchers":178,"followers":178,"fork":false,"size":258771,"created":"2011-06-03T19:53:27-07:00","name":"flare","private":false,"pushed_at":"2012-09-11T11:27:46-07:00","language":"C++"},{"type":"repo","forks":21,"owner":"whit537","pushed":"2012-09-11T11:48:51-07:00","username":"whit537","description":"Gittip is a personal funding platform.","created_at":"2012-06-01T09:01:02-07:00","watchers":148,"followers":148,"fork":false,"size":764,"created":"2012-06-01T09:01:02-07:00","name":"www.gittip.com","private":false,"pushed_at":"2012-09-11T11:48:51-07:00","language":"Python"},{"type":"repo","forks":57,"owner":"wymeditor","pushed":"2012-08-24T07:33:42-07:00","username":"wymeditor","description":"Pure js cross-browser WYSIWYM editor with a focus on the clean separation of content and styling.","created_at":"2010-01-22T02:50:59-08:00","watchers":336,"followers":336,"fork":false,"size":1464,"created":"2010-01-22T02:50:59-08:00","name":"wymeditor","private":false,"pushed_at":"2012-08-24T07:33:42-07:00","language":"JavaScript"},{"type":"repo","forks":1,"owner":"Kokothekoala","pushed":"2012-09-11T13:10:34-07:00","username":"Kokothekoala","description":"","created_at":"2012-06-29T01:30:02-07:00","watchers":1,"followers":1,"fork":false,"size":2452,"created":"2012-06-29T01:30:02-07:00","name":"Kokobox","private":false,"pushed_at":"2012-09-11T13:10:34-07:00","language":"Python"},{"type":"repo","forks":0,"owner":"practo","pushed":"2012-08-01T15:35:10-07:00","username":"practo","description":"MyCQ is a simple website written in Flask to give MCQ test","created_at":"2012-07-29T08:51:31-07:00","watchers":2,"followers":2,"fork":false,"size":240,"created":"2012-07-29T08:51:31-07:00","name":"MyCQ","private":false,"pushed_at":"2012-08-01T15:35:10-07:00","language":"Python"},{"type":"repo","forks":0,"owner":"mhsundstrom","pushed":"2012-09-11T13:14:23-07:00","username":"mhsundstrom","description":"data analysis of race and workout runwalks","created_at":"2012-08-03T09:33:43-07:00","watchers":1,"followers":1,"fork":false,"size":272,"created":"2012-08-03T09:33:43-07:00","name":"runwalk","private":false,"pushed_at":"2012-09-11T13:14:23-07:00","language":"JavaScript"},{"type":"repo","forks":7,"owner":"arc90","pushed":"2012-04-23T07:38:20-07:00","username":"arc90","description":"A command-line tool that helps you clean up Git branches that have been merged into master.","created_at":"2012-03-16T06:58:07-07:00","watchers":114,"followers":114,"fork":false,"size":172,"created":"2012-03-16T06:58:07-07:00","name":"git-sweep","private":false,"pushed_at":"2012-04-23T07:38:20-07:00","language":"Python"},{"type":"repo","forks":0,"owner":"aterrel","pushed":"2012-09-11T14:07:51-07:00","username":"aterrel","description":"","created_at":"2012-09-05T12:44:32-07:00","watchers":1,"followers":1,"fork":false,"size":1712,"created":"2012-09-05T12:44:32-07:00","name":"HPCPythonSC2012","private":false,"pushed_at":"2012-09-11T14:07:51-07:00","language":null},{"type":"repo","forks":73,"owner":"vmg","pushed":"2012-08-01T16:27:07-07:00","username":"vmg","description":"Standards compliant, fast, secure markdown processing library in C","created_at":"2011-04-15T01:38:13-07:00","watchers":566,"followers":566,"fork":false,"size":192,"created":"2011-04-15T01:38:13-07:00","name":"sundown","private":false,"pushed_at":"2012-08-01T16:27:07-07:00","language":"C"},{"type":"repo","forks":59,"owner":"Instagram","pushed":"2012-06-13T10:47:46-07:00","username":"Instagram","description":"","created_at":"2012-02-17T00:21:51-08:00","watchers":613,"followers":613,"fork":false,"size":136,"created":"2012-02-17T00:21:51-08:00","name":"node2dm","private":false,"pushed_at":"2012-06-13T10:47:46-07:00","language":"JavaScript"},{"type":"repo","forks":1,"owner":"MeirKriheli","pushed":"2012-09-11T10:34:46-07:00","username":"MeirKriheli","description":"Multilingual static site and blog generator","created_at":"2011-04-27T11:47:17-07:00","watchers":1,"followers":1,"fork":false,"size":324,"created":"2011-04-27T11:47:17-07:00","name":"statirator","private":false,"pushed_at":"2012-09-11T10:34:46-07:00","language":"Python"},{"type":"repo","forks":0,"owner":"orzubalsky","pushed":"2012-09-11T11:12:18-07:00","username":"orzubalsky","description":"","created_at":"2012-08-22T07:24:46-07:00","watchers":0,"followers":0,"fork":false,"size":7176,"created":"2012-08-22T07:24:46-07:00","name":"fantastic-futures","private":false,"pushed_at":"2012-09-11T11:12:18-07:00","language":"JavaScript"},{"type":"repo","forks":1,"owner":"blahed","pushed":"2012-09-04T15:52:24-07:00","username":"blahed","description":"","created_at":"2012-08-30T11:56:14-07:00","watchers":138,"followers":138,"fork":false,"size":624,"created":"2012-08-30T11:56:14-07:00","name":"chainsaw","private":false,"pushed_at":"2012-09-04T15:52:24-07:00","language":"Ruby"},{"type":"repo","forks":1,"owner":"lucasmcastro","pushed":"2012-02-11T12:54:37-08:00","username":"lucasmcastro","description":"Gerenciador Tarefas IT Cursos","created_at":"2012-02-04T06:05:58-08:00","watchers":1,"followers":1,"fork":false,"size":136,"created":"2012-02-04T06:05:58-08:00","name":"itcursos-gerenciador-tarefas","private":false,"pushed_at":"2012-02-11T12:54:37-08:00","language":"Python"},{"type":"repo","forks":25,"owner":"TideSDK","pushed":"2012-09-07T21:49:37-07:00","username":"TideSDK","description":"Create multi-platform desktop apps with HTML5, CSS3 and JavaScript. TideSDK formerly known as Titanium Desktop is the best way to create beautiful, unique desktop apps using your web development skills.","created_at":"2012-03-06T05:53:47-08:00","watchers":174,"followers":174,"fork":true,"size":155104,"created":"2012-03-06T05:53:47-08:00","name":"TideSDK","private":false,"pushed_at":"2012-09-07T21:49:37-07:00","language":"C++"},{"type":"repo","forks":1,"owner":"KpaBap","pushed":"2012-09-11T12:18:52-07:00","username":"KpaBap","description":"Simple IRC Channel bot","created_at":"2012-06-21T09:20:27-07:00","watchers":3,"followers":3,"fork":true,"size":456,"created":"2012-06-21T09:20:27-07:00","name":"genmaybot","private":false,"pushed_at":"2012-09-11T12:18:52-07:00","language":"Python"},{"type":"repo","forks":83,"owner":"milkypostman","pushed":"2012-09-10T13:33:00-07:00","username":"milkypostman","description":"Scripts for building Emacs packages from Version Control","created_at":"2011-10-04T22:50:47-07:00","watchers":130,"followers":130,"fork":false,"size":564,"created":"2011-10-04T22:50:47-07:00","name":"melpa","private":false,"pushed_at":"2012-09-10T13:33:00-07:00","language":"JavaScript"},{"type":"repo","forks":0,"owner":"mjcuva","pushed":"2012-09-11T12:43:02-07:00","username":"mjcuva","description":null,"created_at":"2012-08-23T13:21:24-07:00","watchers":0,"followers":0,"fork":false,"size":1996,"created":"2012-08-23T13:21:24-07:00","name":"ConnectedWire","private":false,"pushed_at":"2012-09-11T12:43:02-07:00","language":"Python"},{"type":"repo","forks":13,"owner":"mailru","pushed":"2012-09-11T13:07:39-07:00","username":"mailru","description":"efficient in-memory storage","created_at":"2010-09-15T00:59:26-07:00","watchers":122,"followers":122,"fork":false,"size":560,"created":"2010-09-15T00:59:26-07:00","name":"tarantool","private":false,"pushed_at":"2012-09-11T13:07:39-07:00","language":"C"},{"type":"repo","forks":0,"owner":"agodbehere","pushed":"2012-09-11T13:20:51-07:00","username":"agodbehere","description":"experimental db alpha internal","created_at":"2012-09-10T12:33:32-07:00","watchers":0,"followers":0,"fork":false,"size":308,"created":"2012-09-10T12:33:32-07:00","name":"anserindicus_sn","private":false,"pushed_at":"2012-09-11T13:20:51-07:00","language":"Python"},{"type":"repo","forks":61,"owner":"luvit","pushed":"2012-09-11T13:24:05-07:00","username":"luvit","description":"Lua + libUV + jIT = pure awesomesauce","created_at":"2011-09-10T15:54:00-07:00","watchers":742,"followers":742,"fork":false,"size":936,"created":"2011-09-10T15:54:00-07:00","name":"luvit","private":false,"pushed_at":"2012-09-11T13:24:05-07:00","language":"C"},{"type":"repo","forks":131,"owner":"overviewer","pushed":"2012-09-11T13:42:15-07:00","username":"overviewer","description":"Render high-resolution maps of a Minecraft world with a Google Maps powered interface","created_at":"2010-08-28T14:44:16-07:00","watchers":646,"followers":646,"fork":false,"size":45878,"created":"2010-08-28T14:44:16-07:00","name":"Minecraft-Overviewer","private":false,"pushed_at":"2012-09-11T13:42:15-07:00","language":"Python"},{"type":"repo","forks":117,"owner":"somerandomdude","pushed":"2012-07-10T14:04:49-07:00","username":"somerandomdude","description":"A minimal set of icons in raster, vector and font formats — free for public use.","created_at":"2011-09-21T19:11:09-07:00","watchers":932,"followers":932,"fork":false,"size":10490,"created":"2011-09-21T19:11:09-07:00","name":"Iconic","private":false,"pushed_at":"2012-07-10T14:04:49-07:00","language":"Python"},{"type":"repo","forks":0,"owner":"cihann","pushed":"2012-09-11T14:23:44-07:00","username":"cihann","description":"","created_at":"2012-05-20T11:15:16-07:00","watchers":1,"followers":1,"fork":true,"size":132,"created":"2012-05-20T11:15:16-07:00","name":"pyist.net","private":false,"pushed_at":"2012-09-11T14:23:44-07:00","language":"JavaScript"},{"type":"repo","forks":0,"owner":"objarni","pushed":"2012-09-11T14:25:26-07:00","username":"objarni","description":"motargumentwikis bokskaparscript","created_at":"2012-09-10T23:42:49-07:00","watchers":0,"followers":0,"fork":false,"size":776,"created":"2012-09-10T23:42:49-07:00","name":"wikibok","private":false,"pushed_at":"2012-09-11T14:25:26-07:00","language":null},{"type":"repo","forks":0,"owner":"mguillech","pushed":"2012-09-11T11:25:14-07:00","username":"mguillech","description":"Scraper for Mejorenvo.com","created_at":"2012-09-09T08:39:24-07:00","watchers":0,"followers":0,"fork":false,"size":168,"created":"2012-09-09T08:39:24-07:00","name":"mejorenvo-scraper","private":false,"pushed_at":"2012-09-11T11:25:14-07:00","language":"Python"},{"type":"repo","forks":79,"owner":"samuelclay","pushed":"2012-09-11T13:43:15-07:00","username":"samuelclay","description":"NewsBlur is a social news reader with intelligence. A new sound of an old instrument.","created_at":"2009-01-05T06:00:43-08:00","watchers":705,"followers":705,"fork":false,"size":1944,"created":"2009-01-05T06:00:43-08:00","name":"NewsBlur","private":false,"pushed_at":"2012-09-11T13:43:15-07:00","language":"Objective-C"},{"type":"repo","forks":78,"owner":"square","pushed":"2012-08-30T19:07:53-07:00","username":"square","description":"A conforming Objective-C WebSocket client library.","created_at":"2012-01-29T16:21:34-08:00","watchers":868,"followers":868,"fork":false,"size":1148,"created":"2012-01-29T16:21:34-08:00","name":"SocketRocket","private":false,"pushed_at":"2012-08-30T19:07:53-07:00","language":"Python"},{"type":"repo","forks":299,"owner":"spf13","pushed":"2012-09-10T10:58:47-07:00","username":"spf13","description":"The ultimate vim distribution","created_at":"2010-04-20T09:20:16-07:00","watchers":1081,"followers":1081,"fork":false,"size":196,"created":"2010-04-20T09:20:16-07:00","name":"spf13-vim","private":false,"pushed_at":"2012-09-10T10:58:47-07:00","language":"VimL"},{"type":"repo","forks":153,"owner":"globocom","pushed":"2012-08-23T15:41:05-07:00","username":"globocom","description":"Você é web dev? Quer trabalhar no maior portal da América Latina? Esse repositório é pra você","created_at":"2011-05-26T09:54:51-07:00","watchers":211,"followers":211,"fork":false,"size":204,"created":"2011-05-26T09:54:51-07:00","name":"IWantToWorkAtGloboCom","private":false,"pushed_at":"2012-08-23T15:41:05-07:00","language":null},{"type":"repo","forks":309,"owner":"bbatsov","pushed":"2012-09-10T23:01:24-07:00","username":"bbatsov","description":"A community-driven Ruby coding style guide","created_at":"2011-09-12T06:03:05-07:00","watchers":1945,"followers":1945,"fork":false,"size":144,"created":"2011-09-12T06:03:05-07:00","name":"ruby-style-guide","private":false,"pushed_at":"2012-09-10T23:01:24-07:00","language":"Ruby"},{"type":"repo","forks":1,"owner":"aery32","pushed":"2012-09-11T12:40:20-07:00","username":"aery32","description":"Reference Guide for the Aery32 Software Framework","created_at":"2012-05-12T10:33:06-07:00","watchers":1,"followers":1,"fork":false,"size":3760,"created":"2012-05-12T10:33:06-07:00","name":"aery32-refguide","private":false,"pushed_at":"2012-09-11T12:40:20-07:00","language":"Python"},{"type":"repo","forks":0,"owner":"ana-balica","pushed":"2012-09-11T10:46:22-07:00","username":"ana-balica","description":"Anglophone Department Website","created_at":"2012-07-26T02:15:53-07:00","watchers":6,"followers":6,"fork":false,"size":3440,"created":"2012-07-26T02:15:53-07:00","name":"fafsite","private":false,"pushed_at":"2012-09-11T10:46:22-07:00","language":"Python"},{"type":"repo","forks":1,"owner":"miketrumpis","pushed":"2010-12-14T11:41:32-08:00","username":"miketrumpis","description":"","created_at":"2010-12-13T08:08:46-08:00","watchers":3,"followers":3,"fork":false,"size":1388,"created":"2010-12-13T08:08:46-08:00","name":"compsense_demo","private":false,"pushed_at":"2010-12-14T11:41:32-08:00","language":"C"},{"type":"repo","forks":17,"owner":"enthought","pushed":"2012-09-11T14:02:49-07:00","username":"enthought","description":"","created_at":"2011-08-05T08:02:07-07:00","watchers":65,"followers":65,"fork":false,"size":828,"created":"2011-08-05T08:02:07-07:00","name":"enaml","private":false,"pushed_at":"2012-09-11T14:02:49-07:00","language":"Python"},{"type":"repo","forks":1,"owner":"erdc-cm","pushed":"2012-09-11T10:07:34-07:00","username":"erdc-cm","description":"","created_at":"2012-01-26T10:07:04-08:00","watchers":1,"followers":1,"fork":false,"size":7400,"created":"2012-01-26T10:07:04-08:00","name":"mpi4py","private":false,"pushed_at":"2012-09-11T10:07:34-07:00","language":"Python"},{"type":"repo","forks":1,"owner":"python-finland","pushed":"2012-09-11T10:35:47-07:00","username":"python-finland","description":"PyCon Finland website","created_at":"2011-07-16T11:38:08-07:00","watchers":5,"followers":5,"fork":false,"size":280,"created":"2011-07-16T11:38:08-07:00","name":"fi.pycon.org","private":false,"pushed_at":"2012-09-11T10:35:47-07:00","language":"JavaScript"},{"type":"repo","forks":1,"owner":"stefanv","pushed":"2012-09-11T11:53:01-07:00","username":"stefanv","description":"Image Processing SciKit (Toolbox for SciPy)","created_at":"2011-09-17T10:42:44-07:00","watchers":1,"followers":1,"fork":true,"size":180,"created":"2011-09-17T10:42:44-07:00","name":"scikits-image","private":false,"pushed_at":"2012-09-11T11:53:01-07:00","language":"Python"},{"type":"repo","forks":0,"owner":"ahojnnes","pushed":"2012-09-11T13:02:36-07:00","username":"ahojnnes","description":"Image Processing SciKit (Toolbox for SciPy)","created_at":"2012-04-14T04:42:47-07:00","watchers":1,"followers":1,"fork":true,"size":452,"created":"2012-04-14T04:42:47-07:00","name":"scikits-image","private":false,"pushed_at":"2012-09-11T13:02:36-07:00","language":"Python"},{"type":"repo","forks":1,"owner":"lanticezdd","pushed":"2012-09-11T10:03:18-07:00","username":"lanticezdd","description":"","created_at":"2012-06-28T13:20:42-07:00","watchers":1,"followers":1,"fork":false,"size":1208,"created":"2012-06-28T13:20:42-07:00","name":"uni","private":false,"pushed_at":"2012-09-11T10:03:18-07:00","language":"Python"},{"type":"repo","forks":1,"owner":"vim-scripts","pushed":"2010-10-18T17:05:20-07:00","username":"vim-scripts","description":"Adds mako support to vim","created_at":"2010-10-18T17:05:04-07:00","watchers":1,"followers":1,"fork":false,"size":200,"created":"2010-10-18T17:05:04-07:00","name":"mako.vim","private":false,"pushed_at":"2010-10-18T17:05:20-07:00","language":"VimL"},{"type":"repo","forks":0,"owner":"lambacck","pushed":"2010-10-18T17:05:20-07:00","username":"lambacck","description":"Adds mako support to vim","created_at":"2012-09-11T10:27:26-07:00","watchers":0,"followers":0,"fork":true,"size":200,"created":"2012-09-11T10:27:26-07:00","name":"mako.vim","private":false,"pushed_at":"2010-10-18T17:05:20-07:00","language":"VimL"},{"type":"repo","forks":0,"owner":"squirly","pushed":"2012-09-11T10:30:04-07:00","username":"squirly","description":"A library that makes consuming a RESTful API easier and more convenient","created_at":"2012-09-06T16:41:58-07:00","watchers":0,"followers":0,"fork":true,"size":120,"created":"2012-09-06T16:41:58-07:00","name":"slumber","private":false,"pushed_at":"2012-09-11T10:30:04-07:00","language":"Python"},{"type":"repo","forks":0,"owner":"triposorbust","pushed":"2012-09-11T10:32:17-07:00","username":"triposorbust","description":"\"All you need is love!\", but for now I'll settle for a bit of linear prediction...","created_at":"2012-08-09T17:53:28-07:00","watchers":1,"followers":1,"fork":false,"size":312,"created":"2012-08-09T17:53:28-07:00","name":"de-composer","private":false,"pushed_at":"2012-09-11T10:32:17-07:00","language":"Python"},{"type":"repo","forks":117,"owner":"creationix","pushed":"2012-08-22T11:32:50-07:00","username":"creationix","description":"Node Version Manager - Simple bash script to manage multiple active node.js versions","created_at":"2010-04-15T10:47:47-07:00","watchers":991,"followers":991,"fork":false,"size":148,"created":"2010-04-15T10:47:47-07:00","name":"nvm","private":false,"pushed_at":"2012-08-22T11:32:50-07:00","language":"Shell"},{"type":"repo","forks":0,"owner":"anandrjoshi","pushed":"2012-09-11T10:49:20-07:00","username":"anandrjoshi","description":"","created_at":"2012-09-10T15:00:18-07:00","watchers":0,"followers":0,"fork":true,"size":120,"created":"2012-09-10T15:00:18-07:00","name":"helloshopply","private":false,"pushed_at":"2012-09-11T10:49:20-07:00","language":"Python"},{"type":"repo","forks":1,"owner":"diegofer","pushed":"2012-09-11T10:58:29-07:00","username":"diegofer","description":"Repositorio de la Alianza en Colombia","created_at":"2012-06-30T23:30:36-07:00","watchers":1,"followers":1,"fork":false,"size":11080,"created":"2012-06-30T23:30:36-07:00","name":"Alianza","private":false,"pushed_at":"2012-09-11T10:58:29-07:00","language":"JavaScript"},{"type":"repo","forks":1,"owner":"julionc","pushed":"2012-09-11T11:00:51-07:00","username":"julionc","description":"My ~/.vim configuration files","created_at":"2011-11-01T15:31:38-07:00","watchers":3,"followers":3,"fork":false,"size":1612,"created":"2011-11-01T15:31:38-07:00","name":"vimfiles","private":false,"pushed_at":"2012-09-11T11:00:51-07:00","language":"VimL"},{"type":"repo","forks":11,"owner":"mozilla","pushed":"2012-09-11T11:31:45-07:00","username":"mozilla","description":"crash-stats.m.o web UI using playdoh (Mozilla's django-based framework)","created_at":"2012-05-10T18:30:29-07:00","watchers":12,"followers":12,"fork":false,"size":376,"created":"2012-05-10T18:30:29-07:00","name":"socorro-crashstats","private":false,"pushed_at":"2012-09-11T11:31:45-07:00","language":"Python"},{"type":"repo","forks":0,"owner":"tinawen","pushed":"2012-09-11T11:32:49-07:00","username":"tinawen","description":"","created_at":"2012-08-19T01:57:40-07:00","watchers":0,"followers":0,"fork":false,"size":1604,"created":"2012-08-19T01:57:40-07:00","name":"menu","private":false,"pushed_at":"2012-09-11T11:32:49-07:00","language":"Python"},{"type":"repo","forks":3,"owner":"Khan","pushed":"2012-09-11T11:42:11-07:00","username":"Khan","description":"Tools to analyze KA logs and other data","created_at":"2012-05-15T16:38:46-07:00","watchers":7,"followers":7,"fork":false,"size":492,"created":"2012-05-15T16:38:46-07:00","name":"analytics","private":false,"pushed_at":"2012-09-11T11:42:11-07:00","language":"Python"},{"type":"repo","forks":141,"owner":"Studio-42","pushed":"2012-09-11T11:54:59-07:00","username":"Studio-42","description":"Open-source file manager for web, written in JavaScript using jQuery and jQuery UI","created_at":"2010-11-19T10:05:06-08:00","watchers":620,"followers":620,"fork":false,"size":1009,"created":"2010-11-19T10:05:06-08:00","name":"elFinder","private":false,"pushed_at":"2012-09-11T11:54:59-07:00","language":"JavaScript"},{"type":"repo","forks":89,"owner":"basho","pushed":"2012-09-11T10:40:59-07:00","username":"basho","description":"Riak Wiki","created_at":"2010-12-27T09:42:36-08:00","watchers":155,"followers":155,"fork":false,"size":712,"created":"2010-12-27T09:42:36-08:00","name":"riak_wiki","private":false,"pushed_at":"2012-09-11T10:40:59-07:00","language":"JavaScript"},{"type":"repo","forks":5,"owner":"chrippa","pushed":"2012-09-11T12:02:30-07:00","username":"chrippa","description":"Livestreamer is a CLI program that launches streams from various streaming services (Twitch.tv, Own3d.tv etc) in a custom video player (VLC, mplayer etc)","created_at":"2011-08-14T19:38:37-07:00","watchers":48,"followers":48,"fork":false,"size":220,"created":"2011-08-14T19:38:37-07:00","name":"livestreamer","private":false,"pushed_at":"2012-09-11T12:02:30-07:00","language":"Python"},{"type":"repo","forks":6,"owner":"nowells","pushed":"2012-04-02T18:21:11-07:00","username":"nowells","description":"A series of GIT utilities to streamline working with remote branches and reviewing code. git-goggles can be thought of as \"git branch -a\" on steroids. You can install with \"[pip install | easy_install] git-goggles\" and then run \"git goggles\".","created_at":"2010-01-15T08:09:35-08:00","watchers":129,"followers":129,"fork":false,"size":128,"created":"2010-01-15T08:09:35-08:00","name":"git-goggles","private":false,"pushed_at":"2012-04-02T18:21:11-07:00","language":"Python"}]} + diff --git a/lib/github/tests/ReplayData/Github.testLegacySearchReposPagination.txt b/lib/github/tests/ReplayData/Github.testLegacySearchReposPagination.txt new file mode 100644 index 0000000000..856333640b --- /dev/null +++ b/lib/github/tests/ReplayData/Github.testLegacySearchReposPagination.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/legacy/repos/search/document +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4983'), ('content-length', '62686'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"119efa369d825b108cebd210eb1381cb"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Fri, 29 Jun 2012 11:52:38 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"repositories":[{"type":"repo","created_at":"2008-07-23T07:21:26-07:00","score":240.037,"owner":"git","followers":2455,"open_issues":4,"organization":"git","created":"2008-07-23T07:21:26-07:00","homepage":"This is a publish-only repository and all pull requests are ignored. Please follow Documentation/SubmittingPatches procedure for any of your improvements.","has_issues":false,"has_downloads":true,"language":"C","pushed_at":"2012-06-28T16:36:34-07:00","forks":619,"fork":false,"size":33656,"name":"git","url":"https://github.com/git/git","description":"Git Source Code Mirror - This is a publish-only repository and all pull requests are ignored. Please follow Documentation/SubmittingPatches procedure for any of your improvements.","private":false,"username":"git","pushed":"2012-06-28T16:36:34-07:00","watchers":2455,"has_wiki":false},{"type":"repo","created_at":"2011-06-09T08:01:53-07:00","score":160.90036,"owner":"jverkoey","followers":1643,"open_issues":17,"created":"2011-06-09T08:01:53-07:00","homepage":"nimbuskit.info","has_issues":true,"has_downloads":true,"language":"Objective-C","pushed_at":"2012-06-28T10:14:09-07:00","forks":190,"fork":false,"size":19296,"name":"nimbus","url":"https://github.com/jverkoey/nimbus","description":"The iOS framework whose growth is bounded by its documentation.","private":false,"username":"jverkoey","pushed":"2012-06-28T10:14:09-07:00","watchers":1643,"has_wiki":true},{"type":"repo","created_at":"2011-11-25T10:03:29-08:00","score":132.56409,"owner":"kneath","followers":1352,"open_issues":17,"created":"2011-11-25T10:03:29-08:00","homepage":"warpspire.com/kss","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-05-16T00:19:42-07:00","forks":68,"fork":false,"size":132,"name":"kss","url":"https://github.com/kneath/kss","description":"A methodology for documenting CSS and generating styleguides","private":false,"username":"kneath","pushed":"2012-05-16T00:19:42-07:00","watchers":1352,"has_wiki":false},{"type":"repo","created_at":"2010-08-19T12:17:22-07:00","score":121.16062,"owner":"samsoffes","followers":1237,"open_issues":36,"created":"2010-08-19T12:17:22-07:00","homepage":"http://sstoolk.it","has_issues":true,"master_branch":"master","has_downloads":true,"language":"Objective-C","pushed_at":"2012-06-14T22:25:20-07:00","forks":124,"fork":false,"size":460,"name":"sstoolkit","url":"https://github.com/samsoffes/sstoolkit","description":"A collection of well-documented iOS classes for making life easier","private":false,"username":"samsoffes","pushed":"2012-06-14T22:25:20-07:00","watchers":1237,"has_wiki":false},{"type":"repo","created_at":"2009-07-08T19:09:35-07:00","score":105.90017,"owner":"brianleroux","followers":1079,"open_issues":38,"created":"2009-07-08T19:09:35-07:00","homepage":"http://brianleroux.github.com/lawnchair","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-05-29T16:27:29-07:00","forks":132,"fork":false,"size":300,"name":"lawnchair","url":"https://github.com/brianleroux/lawnchair","description":"A lightweight clientside JSON document store,","private":false,"username":"brianleroux","pushed":"2012-05-29T16:27:29-07:00","watchers":1079,"has_wiki":true},{"type":"repo","created_at":"2009-04-24T00:19:31-07:00","score":91.45697,"owner":"tomaz","followers":932,"open_issues":50,"created":"2009-04-24T00:19:31-07:00","homepage":"http://gentlebytes.com","has_issues":true,"has_downloads":false,"language":"Objective-C","pushed_at":"2012-06-26T07:51:09-07:00","forks":79,"fork":false,"size":604,"name":"appledoc","url":"https://github.com/tomaz/appledoc","description":"Objective-c code Apple style documentation set generator.","private":false,"username":"tomaz","pushed":"2012-06-26T07:51:09-07:00","watchers":932,"has_wiki":false},{"type":"repo","created_at":"2011-12-21T08:16:30-08:00","score":85.80408,"owner":"appMobi","followers":876,"open_issues":4,"organization":"appMobi","created":"2011-12-21T08:16:30-08:00","homepage":"http://www.jqmobi.com","has_issues":false,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-06-22T06:25:09-07:00","forks":143,"fork":false,"size":5722,"name":"jQ.Mobi","url":"https://github.com/appMobi/jQ.Mobi","description":"HTML5 javascript libary for mobile application development. Find documentation and report bugs at http://www.jqmobi.com","private":false,"username":"appMobi","pushed":"2012-06-22T06:25:09-07:00","watchers":876,"has_wiki":true},{"type":"repo","created_at":"2010-05-09T21:46:06-07:00","score":81.79961,"owner":"ipython","followers":834,"open_issues":289,"organization":"ipython","created":"2010-05-09T21:46:06-07:00","integrate_branch":"master","homepage":"http://ipython.org","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-28T16:29:38-07:00","forks":282,"fork":false,"size":1204,"name":"ipython","url":"https://github.com/ipython/ipython","description":"Official repository for IPython itself. Other repos in the IPython organization contain things like the website, documentation builds, etc.","private":false,"username":"ipython","pushed":"2012-06-28T16:29:38-07:00","watchers":834,"has_wiki":false},{"type":"repo","created_at":"2009-11-22T15:28:24-08:00","score":81.39696,"owner":"hmarr","followers":829,"open_issues":72,"created":"2009-11-22T15:28:24-08:00","integrate_branch":"dev","homepage":"http://mongoengine.org","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-23T14:24:37-07:00","forks":212,"fork":false,"size":376,"name":"mongoengine","url":"https://github.com/hmarr/mongoengine","description":"A Python Object-Document-Mapper for working with MongoDB","private":false,"username":"hmarr","pushed":"2012-06-23T14:24:37-07:00","watchers":829,"has_wiki":false},{"type":"repo","created_at":"2010-03-02T03:05:30-08:00","score":78.25956,"owner":"ravendb","followers":796,"open_issues":4,"created":"2010-03-02T03:05:30-08:00","homepage":"http://ayende.com/Blog/","has_issues":false,"has_downloads":true,"language":"C#","pushed_at":"2012-06-02T06:28:41-07:00","forks":225,"fork":false,"size":39524,"name":"ravendb","url":"https://github.com/ravendb/ravendb","description":"A linq enabled document database for .NET","private":false,"username":"ravendb","pushed":"2012-06-02T06:28:41-07:00","watchers":796,"has_wiki":true},{"type":"repo","created_at":"2010-10-27T12:03:38-07:00","score":75.14608,"owner":"substance","followers":765,"open_issues":73,"organization":"substance","created":"2010-10-27T12:03:38-07:00","homepage":"http://substance.io","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-06-17T22:44:44-07:00","forks":73,"fork":false,"size":156,"name":"substance","url":"https://github.com/substance/substance","description":"A data-driven and cloud-aware document authoring engine","private":false,"username":"substance","pushed":"2012-06-17T22:44:44-07:00","watchers":765,"has_wiki":true},{"type":"repo","created_at":"2010-02-17T00:43:51-08:00","score":74.91484,"owner":"symfony","followers":760,"open_issues":129,"organization":"symfony","created":"2010-02-17T00:43:51-08:00","homepage":"http://symfony.com/doc/2.0/","has_issues":true,"language":"","has_downloads":false,"pushed_at":"2012-06-25T20:52:42-07:00","forks":453,"fork":false,"size":972,"name":"symfony-docs","url":"https://github.com/symfony/symfony-docs","description":"The Symfony2 documentation","private":false,"username":"symfony","pushed":"2012-06-25T20:52:42-07:00","watchers":760,"has_wiki":false},{"type":"repo","created_at":"2011-01-04T06:41:31-08:00","score":67.442116,"owner":"BonsaiDen","followers":687,"open_issues":42,"created":"2011-01-04T06:41:31-08:00","integrate_branch":"master","homepage":"http://bonsaiden.github.com/JavaScript-Garden","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-05-06T08:43:43-07:00","forks":110,"fork":false,"size":220,"name":"JavaScript-Garden","url":"https://github.com/BonsaiDen/JavaScript-Garden","description":"A collection of documentation about the most quirky parts of the JavaScript language. ","private":false,"username":"BonsaiDen","pushed":"2012-05-06T08:43:43-07:00","watchers":687,"has_wiki":true},{"type":"repo","created_at":"2012-01-26T15:00:24-08:00","score":58.944824,"owner":"omz","followers":600,"open_issues":8,"created":"2012-01-26T15:00:24-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"C","pushed_at":"2012-06-01T16:09:06-07:00","forks":59,"fork":false,"size":1340,"name":"DocSets-for-iOS","url":"https://github.com/omz/DocSets-for-iOS","description":"Dedicated app for reading Apple's developer documentation on an iPad or iPhone","private":false,"username":"omz","pushed":"2012-06-01T16:09:06-07:00","watchers":600,"has_wiki":true},{"type":"repo","created_at":"2008-02-25T16:01:52-08:00","score":55.709747,"owner":"lsegal","followers":567,"open_issues":38,"created":"2008-02-25T16:01:52-08:00","homepage":"http://yardoc.org","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-06-16T09:53:09-07:00","forks":84,"fork":false,"size":492,"name":"yard","url":"https://github.com/lsegal/yard","description":"YARD is a Ruby Documentation tool. The Y stands for \"Yay!\"","private":false,"username":"lsegal","pushed":"2012-06-16T09:53:09-07:00","watchers":567,"has_wiki":true},{"type":"repo","created_at":"2010-07-07T05:07:55-07:00","score":54.990154,"owner":"phpDocumentor","followers":556,"open_issues":90,"organization":"phpDocumentor","created":"2010-07-07T05:07:55-07:00","homepage":"http://www.phpdoc.org","has_issues":true,"master_branch":"develop","has_downloads":true,"language":"PHP","pushed_at":"2012-06-26T13:24:59-07:00","forks":105,"fork":false,"size":1876,"name":"phpDocumentor2","url":"https://github.com/phpDocumentor/phpDocumentor2","description":"Documentation Generator for PHP ","private":false,"username":"phpDocumentor","pushed":"2012-06-26T13:24:59-07:00","watchers":556,"has_wiki":false},{"type":"repo","created_at":"2009-05-05T01:40:42-07:00","score":50.904995,"owner":"facebook","followers":518,"open_issues":12,"organization":"facebook","created":"2009-05-05T01:40:42-07:00","homepage":"http://www.phpsh.org/","has_issues":true,"has_downloads":true,"language":"Emacs Lisp","pushed_at":"2011-09-22T09:30:17-07:00","forks":46,"fork":false,"size":136,"name":"phpsh","url":"https://github.com/facebook/phpsh","description":"phpsh is a read-eval-print-loop for php that features readline history, tab completion, and quick access to documentation. It was developed at Facebook and ironically, is written mostly in python. It is open source and released under a modified BSD license.","private":false,"username":"facebook","pushed":"2011-09-22T09:30:17-07:00","watchers":518,"has_wiki":true},{"type":"repo","created_at":"2011-06-11T11:23:07-07:00","score":50.032917,"owner":"worrydream","followers":508,"open_issues":8,"created":"2011-06-11T11:23:07-07:00","homepage":"http://worrydream.com/Tangle/","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2011-11-23T20:25:39-08:00","forks":51,"fork":false,"size":177,"name":"Tangle","url":"https://github.com/worrydream/Tangle","description":"a JavaScript library for reactive documents","private":false,"username":"worrydream","pushed":"2011-11-23T20:25:39-08:00","watchers":508,"has_wiki":true},{"type":"repo","created_at":"2010-01-23T13:54:00-08:00","score":49.520634,"owner":"fileability","followers":500,"open_issues":32,"created":"2010-01-23T13:54:00-08:00","homepage":"http://fileability.net/ingredients/","has_issues":true,"has_downloads":true,"language":"C","pushed_at":"2012-04-22T16:07:21-07:00","forks":41,"fork":false,"size":184,"name":"Ingredients","url":"https://github.com/fileability/Ingredients","description":"A Cocoa documentation viewer.","private":false,"username":"fileability","pushed":"2012-04-22T16:07:21-07:00","watchers":500,"has_wiki":true},{"type":"repo","created_at":"2010-02-23T08:16:13-08:00","score":48.653572,"owner":"jupiterjs","followers":492,"open_issues":6,"organization":"jupiterjs","created":"2010-02-23T08:16:13-08:00","homepage":"http://javascriptmvc.com","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-06-12T13:25:49-07:00","forks":385,"fork":false,"size":6631,"name":"documentjs","url":"https://github.com/jupiterjs/documentjs","description":"A powerful documentation engine for JS","private":false,"username":"jupiterjs","pushed":"2012-06-12T13:25:49-07:00","watchers":492,"has_wiki":true},{"type":"repo","created_at":"2010-01-07T12:20:02-08:00","score":48.5918,"owner":"facebook","followers":494,"open_issues":16,"organization":"facebook","created":"2010-01-07T12:20:02-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"PHP","pushed_at":"2012-02-15T10:53:21-08:00","forks":44,"fork":false,"size":224,"name":"xhp","url":"https://github.com/facebook/xhp","description":"XHP is a PHP extension which augments the syntax of the language such that XML document fragments become valid PHP expressions.","private":false,"username":"facebook","pushed":"2012-02-15T10:53:21-08:00","watchers":494,"has_wiki":true},{"type":"repo","created_at":"2009-01-25T07:37:12-08:00","score":47.90811,"owner":"rnewson","followers":487,"open_issues":38,"created":"2009-01-25T07:37:12-08:00","integrate_branch":"master","homepage":"http://rnewson.github.com/couchdb-lucene/","has_issues":true,"has_downloads":true,"language":"Java","pushed_at":"2012-06-20T05:20:03-07:00","forks":63,"fork":false,"size":167262,"name":"couchdb-lucene","url":"https://github.com/rnewson/couchdb-lucene","description":"Enables full-text searching of CouchDB documents using Lucene","private":false,"username":"rnewson","pushed":"2012-06-20T05:20:03-07:00","watchers":487,"has_wiki":false},{"type":"repo","created_at":"2010-06-23T15:54:55-07:00","score":45.259056,"owner":"visionmedia","followers":459,"open_issues":31,"created":"2010-06-23T15:54:55-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-05-18T07:55:53-07:00","forks":44,"fork":false,"size":176,"name":"dox","url":"https://github.com/visionmedia/dox","description":"JavaScript documentation generator for node using markdown and jsdoc","private":false,"username":"visionmedia","pushed":"2012-05-18T07:55:53-07:00","watchers":459,"has_wiki":true},{"type":"repo","created_at":"2011-11-30T07:30:13-08:00","score":44.361103,"owner":"magento","followers":452,"open_issues":1,"organization":"magento","created":"2011-11-30T07:30:13-08:00","homepage":"http://www.magento.com","has_issues":true,"has_downloads":true,"language":"PHP","pushed_at":"2012-06-21T11:48:36-07:00","forks":79,"fork":false,"size":1952,"name":"magento2","url":"https://github.com/magento/magento2","description":"Magento 2 is currently at development stage. The information contained herein is subject to change without notice and is not warranted to be error-free. The software and documentation provided WITHOUT ANY WARRANTY and it is NOT intended for commercial applications and may be used at your own risk. ","private":false,"username":"magento","pushed":"2012-06-21T11:48:36-07:00","watchers":452,"has_wiki":false},{"type":"repo","created_at":"2010-02-10T16:19:31-08:00","score":42.82927,"owner":"jupiterjs","followers":435,"open_issues":8,"organization":"jupiterjs","created":"2010-02-10T16:19:31-08:00","homepage":"http://javascriptmvc.com","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-04-20T12:12:28-07:00","forks":78,"fork":false,"size":540704,"name":"javascriptmvc","url":"https://github.com/jupiterjs/javascriptmvc","description":"The framework containing StealJS, FuncUnit, jQueryMX, and DocumentJS.","private":false,"username":"jupiterjs","pushed":"2012-04-20T12:12:28-07:00","watchers":435,"has_wiki":true},{"type":"repo","created_at":"2010-10-27T02:28:44-07:00","score":42.34092,"owner":"mobfarm","followers":430,"open_issues":9,"organization":"mobfarm","created":"2010-10-27T02:28:44-07:00","homepage":"http://fastpdfkit.com","has_issues":true,"has_downloads":true,"language":"Objective-C","pushed_at":"2012-06-28T03:12:58-07:00","forks":72,"fork":false,"size":163332,"name":"FastPdfKit","url":"https://github.com/mobfarm/FastPdfKit","description":"A Static Library to be embedded on iOS applications to display pdf documents derived from Fast PDF","private":false,"username":"mobfarm","pushed":"2012-06-28T03:12:58-07:00","watchers":430,"has_wiki":true},{"type":"repo","created_at":"2011-01-01T10:22:16-08:00","score":41.65723,"owner":"apotonick","followers":423,"open_issues":3,"created":"2011-01-01T10:22:16-08:00","homepage":"http://roar.apotomo.de","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-06-22T01:23:58-07:00","forks":35,"fork":false,"size":152,"name":"roar","url":"https://github.com/apotonick/roar","description":"Resource-oriented architectures in Ruby. Roar focuses on object-oriented REST documents.","private":false,"username":"apotonick","pushed":"2012-06-22T01:23:58-07:00","watchers":423,"has_wiki":true},{"type":"repo","created_at":"2012-01-22T09:41:35-08:00","score":40.684464,"owner":"jeromegn","followers":372,"open_issues":11,"created":"2012-01-22T09:41:35-08:00","homepage":"http://documentup.com","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-05-13T14:06:55-07:00","forks":32,"fork":false,"size":196,"name":"DocumentUp","url":"https://github.com/jeromegn/DocumentUp","description":"Pretty documentation generator for Github projects with proper Readme.","private":false,"username":"jeromegn","pushed":"2012-05-13T14:06:55-07:00","watchers":372,"has_wiki":true},{"type":"repo","created_at":"2010-01-30T19:01:50-08:00","score":40.05166,"owner":"atheken","followers":407,"open_issues":47,"created":"2010-01-30T19:01:50-08:00","integrate_branch":"unstable","homepage":"","has_issues":true,"has_downloads":true,"language":"C#","pushed_at":"2012-03-08T07:36:16-08:00","forks":81,"fork":false,"size":1996,"name":"NoRM","url":"https://github.com/atheken/NoRM","description":"NoRM is a MongoDB driver for .Net designed to provide access to strongly/statically-typed documents and collections.","private":false,"username":"atheken","pushed":"2012-03-08T07:36:16-08:00","watchers":407,"has_wiki":true},{"type":"repo","created_at":"2010-03-13T01:18:03-08:00","score":39.191544,"owner":"jsdoc3","followers":396,"open_issues":6,"organization":"jsdoc3","created":"2010-03-13T01:18:03-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-06-27T14:10:20-07:00","forks":66,"fork":false,"size":368,"name":"jsdoc","url":"https://github.com/jsdoc3/jsdoc","description":"An automatic documentation generator for JavaScript.","private":false,"username":"jsdoc3","pushed":"2012-06-27T14:10:20-07:00","watchers":396,"has_wiki":false},{"type":"repo","created_at":"2011-05-05T11:59:49-07:00","score":38.422153,"owner":"apresta","followers":389,"open_issues":2,"created":"2011-05-05T11:59:49-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-08-11T05:43:52-07:00","forks":19,"fork":false,"size":140,"name":"tagger","url":"https://github.com/apresta/tagger","description":"A Python module for extracting relevant tags from text documents.","private":false,"username":"apresta","pushed":"2011-08-11T05:43:52-07:00","watchers":389,"has_wiki":true},{"type":"repo","created_at":"2009-08-02T14:55:59-07:00","score":35.40635,"owner":"samus","followers":359,"open_issues":6,"created":"2009-08-02T14:55:59-07:00","homepage":"","has_issues":false,"master_branch":"master","has_downloads":true,"language":"C#","pushed_at":"2010-09-20T20:00:13-07:00","forks":66,"fork":false,"size":4629,"name":"mongodb-csharp","url":"https://github.com/samus/mongodb-csharp","description":"A driver written in c# to connect to the MongoDB document oriented database.","private":false,"username":"samus","pushed":"2010-09-20T20:00:13-07:00","watchers":359,"has_wiki":true},{"type":"repo","created_at":"2010-02-13T03:26:52-08:00","score":35.16816,"owner":"ornicar","followers":357,"open_issues":5,"created":"2010-02-13T03:26:52-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"PHP","pushed_at":"2012-06-13T13:33:59-07:00","forks":68,"fork":false,"size":168,"name":"php-github-api","url":"https://github.com/ornicar/php-github-api","description":"A simple PHP GitHub API client, Object Oriented, tested and documented. For PHP 5.1 to 5.3.","private":false,"username":"ornicar","pushed":"2012-06-13T13:33:59-07:00","watchers":357,"has_wiki":false},{"type":"repo","created_at":"2012-01-04T14:23:26-08:00","score":34.80836,"owner":"PharkMillups","followers":353,"open_issues":3,"created":"2012-01-04T14:23:26-08:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-05-29T21:45:59-07:00","forks":40,"fork":false,"size":156,"name":"beautiful-docs","url":"https://github.com/PharkMillups/beautiful-docs","description":"Pointers to useful, well-written, and otherwise beautiful documentation.","private":false,"username":"PharkMillups","pushed":"2012-05-29T21:45:59-07:00","watchers":353,"has_wiki":true},{"type":"repo","created_at":"2010-05-20T13:20:00-07:00","score":33.147972,"owner":"doctrine","followers":335,"open_issues":41,"organization":"doctrine","created":"2010-05-20T13:20:00-07:00","homepage":"http://www.doctrine-project.org/projects/mongodb_odm","has_issues":true,"has_downloads":true,"language":"PHP","pushed_at":"2012-06-28T10:37:20-07:00","forks":125,"fork":false,"size":956,"name":"mongodb-odm","url":"https://github.com/doctrine/mongodb-odm","description":"Doctrine MongoDB Object Document Mapper (ODM)","private":false,"username":"doctrine","pushed":"2012-06-28T10:37:20-07:00","watchers":335,"has_wiki":true},{"type":"repo","created_at":"2011-07-29T09:02:42-07:00","score":32.23304,"owner":"mashery","followers":323,"open_issues":23,"organization":"mashery","created":"2011-07-29T09:02:42-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-05-03T10:42:05-07:00","forks":64,"fork":false,"size":132,"name":"iodocs","url":"https://github.com/mashery/iodocs","description":"Interactive API documentation system","private":false,"username":"mashery","pushed":"2012-05-03T10:42:05-07:00","watchers":323,"has_wiki":true},{"type":"repo","created_at":"2011-03-20T19:44:09-07:00","score":32.18324,"owner":"daveray","followers":326,"open_issues":17,"created":"2011-03-20T19:44:09-07:00","integrate_branch":"develop","homepage":"https://groups.google.com/group/seesaw-clj","has_issues":true,"master_branch":"develop","has_downloads":true,"language":"Clojure","pushed_at":"2012-05-23T18:09:13-07:00","forks":36,"fork":false,"size":310,"name":"seesaw","url":"https://github.com/daveray/seesaw","description":"Seesaw turns the Horror of Swing into a friendly, well-documented, Clojure library","private":false,"username":"daveray","pushed":"2012-05-23T18:09:13-07:00","watchers":326,"has_wiki":true},{"type":"repo","created_at":"2012-03-24T02:45:34-07:00","score":29.607916,"owner":"37signals","followers":297,"open_issues":16,"organization":"37signals","created":"2012-03-24T02:45:34-07:00","homepage":"http://basecamp.com","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-05-31T12:56:06-07:00","forks":34,"fork":false,"size":196,"name":"bcx-api","url":"https://github.com/37signals/bcx-api","description":"API documentation and wrappers for the new Basecamp","private":false,"username":"37signals","pushed":"2012-05-31T12:56:06-07:00","watchers":297,"has_wiki":true},{"type":"repo","created_at":"2011-04-26T12:20:56-07:00","score":29.314905,"owner":"github","followers":294,"open_issues":1,"organization":"github","created":"2011-04-26T12:20:56-07:00","homepage":"http://developer.github.com","has_issues":false,"has_downloads":true,"language":"Ruby","pushed_at":"2012-06-27T18:26:50-07:00","forks":139,"fork":false,"size":344,"name":"developer.github.com","url":"https://github.com/github/developer.github.com","description":"GitHub API documentation","private":false,"username":"github","pushed":"2012-06-27T18:26:50-07:00","watchers":294,"has_wiki":false},{"type":"repo","created_at":"2011-01-07T02:14:40-08:00","score":28.202702,"owner":"ruby-amqp","followers":287,"open_issues":6,"organization":"ruby-amqp","created":"2011-01-07T02:14:40-08:00","homepage":"http://rubyamqp.info","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-06-22T21:00:13-07:00","forks":86,"fork":false,"size":184,"name":"amqp","url":"https://github.com/ruby-amqp/amqp","description":"Ruby amqp gem is a widely used, feature-rich, well-maintained, fast asynchronous AMQP 0.9.1 Ruby client with batteries included. Get started in an instant: http://bit.ly/jcuACj, all documentation guides are at http://bit.ly/amqp-gem-docs, API reference is at http://bit.ly/mDm1JE — we do care about the docs!","private":false,"username":"ruby-amqp","pushed":"2012-06-22T21:00:13-07:00","watchers":287,"has_wiki":false},{"type":"repo","created_at":"2009-12-03T12:01:23-08:00","score":26.103762,"owner":"documentcloud","followers":262,"open_issues":14,"organization":"documentcloud","created":"2009-12-03T12:01:23-08:00","homepage":"http://documentcloud.github.com/docsplit/","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-06-14T08:55:07-07:00","forks":56,"fork":false,"size":144,"name":"docsplit","url":"https://github.com/documentcloud/docsplit","description":"Break Apart Documents into Images, Text, Pages and PDFs","private":false,"username":"documentcloud","pushed":"2012-06-14T08:55:07-07:00","watchers":262,"has_wiki":false},{"type":"repo","created_at":"2010-06-29T00:02:31-07:00","score":25.798784,"owner":"fitzgen","followers":259,"open_issues":13,"created":"2010-06-29T00:02:31-07:00","homepage":"http://fitzgen.github.com/pycco/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-23T16:07:26-07:00","forks":61,"fork":false,"size":156,"name":"pycco","url":"https://github.com/fitzgen/pycco","description":"Literate-style documentation generator.","private":false,"username":"fitzgen","pushed":"2012-06-23T16:07:26-07:00","watchers":259,"has_wiki":true},{"type":"repo","created_at":"2012-05-13T00:47:34-07:00","score":25.2367,"owner":"LearnProgramming","followers":253,"open_issues":2,"organization":"LearnProgramming","created":"2012-05-13T00:47:34-07:00","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-06-27T14:12:15-07:00","forks":43,"fork":false,"size":168,"name":"standards-and-practices","url":"https://github.com/LearnProgramming/standards-and-practices","description":"A collection of documents outlining what it is that we intend to do.","private":false,"username":"LearnProgramming","pushed":"2012-06-27T14:12:15-07:00","watchers":253,"has_wiki":true},{"type":"repo","created_at":"2011-11-16T23:11:35-08:00","score":24.736382,"owner":"w3c","followers":248,"open_issues":0,"organization":"w3c","created":"2011-11-16T23:11:35-08:00","homepage":"http://w3c.github.com/tidy-html5/","has_issues":true,"has_downloads":true,"language":"C","pushed_at":"2012-06-26T20:01:02-07:00","forks":29,"fork":false,"size":152,"name":"tidy-html5","url":"https://github.com/w3c/tidy-html5","description":"Experimental fork of Tidy for HTML5 documents","private":false,"username":"w3c","pushed":"2012-06-26T20:01:02-07:00","watchers":248,"has_wiki":true},{"type":"repo","created_at":"2010-09-16T08:34:02-07:00","score":23.295265,"owner":"antirez","followers":235,"open_issues":33,"created":"2010-09-16T08:34:02-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-06-25T11:52:53-07:00","forks":96,"fork":false,"size":308,"name":"redis-doc","url":"https://github.com/antirez/redis-doc","description":"Redis documentation source code for markdown and metadata files, conversion scripts, and so forth","private":false,"username":"antirez","pushed":"2012-06-25T11:52:53-07:00","watchers":235,"has_wiki":true},{"type":"repo","created_at":"2010-04-06T17:07:00-07:00","score":22.306599,"owner":"mojombo","followers":224,"open_issues":7,"created":"2010-04-06T17:07:00-07:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-05-07T21:15:09-07:00","forks":22,"fork":false,"size":144,"name":"tomdoc","url":"https://github.com/mojombo/tomdoc","description":"A flexible code documentation specification with human readers in mind.","private":false,"username":"mojombo","pushed":"2012-05-07T21:15:09-07:00","watchers":224,"has_wiki":true},{"type":"repo","created_at":"2010-11-01T06:16:49-07:00","score":20.707977,"owner":"fuel","followers":205,"open_issues":10,"organization":"fuel","created":"2010-11-01T06:16:49-07:00","integrate_branch":"1.1/develop","homepage":"http://fuelphp.com/docs","has_issues":true,"master_branch":"1.3/develop","has_downloads":true,"language":"JavaScript","pushed_at":"2012-06-24T16:10:10-07:00","forks":130,"fork":false,"size":316,"name":"docs","url":"https://github.com/fuel/docs","description":"Documentation for FuelPHP","private":false,"username":"fuel","pushed":"2012-06-24T16:10:10-07:00","watchers":205,"has_wiki":false},{"type":"repo","created_at":"2008-12-20T07:46:07-08:00","score":20.572474,"owner":"wbond","followers":208,"open_issues":1,"created":"2008-12-20T07:46:07-08:00","homepage":"http://flourishlib.com","has_issues":false,"has_downloads":false,"language":"PHP","pushed_at":"2012-01-12T10:40:08-08:00","forks":26,"fork":false,"size":444,"name":"flourish","url":"https://github.com/wbond/flourish","description":"Flourish is a PHP unframework — a general-purpose, object-oriented library. It's architecture is modular and thus not strictly MVC. It focuses on being secure, broadly compatible, portable, well documented and easy to use.","private":false,"username":"wbond","pushed":"2012-01-12T10:40:08-08:00","watchers":208,"has_wiki":false},{"type":"repo","created_at":"2009-09-06T19:21:55-07:00","score":20.536572,"owner":"kohana","followers":205,"open_issues":9,"organization":"kohana","created":"2009-09-06T19:21:55-07:00","integrate_branch":"3.1/develop","homepage":"http://kohanaphp.com/","has_issues":false,"master_branch":"3.2/master","has_downloads":false,"language":"PHP","pushed_at":"2012-06-25T18:09:29-07:00","forks":108,"fork":false,"size":452,"name":"userguide","url":"https://github.com/kohana/userguide","description":"Kohana user guide and live API documentation module","private":false,"username":"kohana","pushed":"2012-06-25T18:09:29-07:00","watchers":205,"has_wiki":false},{"type":"repo","created_at":"2011-07-15T15:56:39-07:00","score":19.986452,"owner":"wordnik","followers":202,"open_issues":10,"organization":"wordnik","created":"2011-07-15T15:56:39-07:00","homepage":"http://swagger.wordnik.com","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-06-28T13:12:36-07:00","forks":47,"fork":false,"size":357,"name":"swagger-ui","url":"https://github.com/wordnik/swagger-ui","description":"Swagger UI is a dependency-free collection of HTML, Javascript, and CSS assets that dynamically generate beautiful documentation from a Swagger-compliant API.","private":false,"username":"wordnik","pushed":"2012-06-28T13:12:36-07:00","watchers":202,"has_wiki":true},{"type":"repo","created_at":"2011-08-29T02:14:46-07:00","score":19.474169,"owner":"mislav","followers":195,"open_issues":10,"created":"2011-08-29T02:14:46-07:00","homepage":"http://pretty-rfc.herokuapp.com/","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-05-24T03:27:53-07:00","forks":8,"fork":false,"size":302,"name":"rfc","url":"https://github.com/mislav/rfc","description":"Pretty RFC indexes and reformats RFC documents for easier discovery and viewing.","private":false,"username":"mislav","pushed":"2012-05-24T03:27:53-07:00","watchers":195,"has_wiki":true},{"type":"repo","created_at":"2012-04-03T14:50:25-07:00","score":19.4622,"owner":"mattetti","followers":194,"open_issues":4,"created":"2012-04-03T14:50:25-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-05-24T08:57:33-07:00","forks":9,"fork":false,"size":168,"name":"Weasel-Diesel","url":"https://github.com/mattetti/Weasel-Diesel","description":"DSL to describe, document and test web services","private":false,"username":"mattetti","pushed":"2012-05-24T08:57:33-07:00","watchers":194,"has_wiki":true},{"type":"repo","created_at":"2008-12-04T18:26:02-08:00","score":18.363897,"owner":"yui","followers":181,"open_issues":8,"organization":"yui","created":"2008-12-04T18:26:02-08:00","homepage":"http://yui.github.com/yuidoc","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-06-07T12:22:17-07:00","forks":36,"fork":false,"size":392,"name":"yuidoc","url":"https://github.com/yui/yuidoc","description":"YUI Javascript Documentation Tool","private":false,"username":"yui","pushed":"2012-06-07T12:22:17-07:00","watchers":181,"has_wiki":false},{"type":"repo","created_at":"2011-02-26T12:23:53-08:00","score":18.192492,"owner":"apigen","followers":181,"open_issues":31,"organization":"apigen","created":"2011-02-26T12:23:53-08:00","integrate_branch":"develop","homepage":"http://apigen.org","has_issues":true,"master_branch":"develop","has_downloads":true,"language":"PHP","pushed_at":"2012-06-03T14:34:45-07:00","forks":33,"fork":false,"size":21078,"name":"apigen","url":"https://github.com/apigen/apigen","description":"API documentation generator for PHP 5.3+","private":false,"username":"apigen","pushed":"2012-06-03T14:34:45-07:00","watchers":181,"has_wiki":false},{"type":"repo","created_at":"2010-06-01T18:58:32-07:00","score":18.026733,"owner":"NYTimes","followers":140,"open_issues":6,"organization":"NYTimes","created":"2010-06-01T18:58:32-07:00","homepage":"http://open.blogs.nytimes.com/2010/03/27/a-new-view-introducing-doc-viewer-2-0/","has_issues":true,"master_branch":"frontend","has_downloads":true,"language":"JavaScript","pushed_at":"2010-07-07T11:18:04-07:00","forks":45,"fork":false,"size":6352,"name":"document-viewer","url":"https://github.com/NYTimes/document-viewer","description":"The NYTimes Document Viewer","private":false,"username":"NYTimes","pushed":"2010-07-07T11:18:04-07:00","watchers":140,"has_wiki":true},{"type":"repo","created_at":"2009-02-17T15:51:23-08:00","score":17.985184,"owner":"github","followers":178,"open_issues":44,"organization":"github","created":"2009-02-17T15:51:23-08:00","homepage":"http://develop.github.com","has_issues":true,"master_branch":"gh-pages","has_downloads":false,"language":"JavaScript","pushed_at":"2012-03-27T00:08:29-07:00","forks":61,"fork":false,"size":424,"name":"develop.github.com","url":"https://github.com/github/develop.github.com","description":"API Documentation for GitHub","private":false,"username":"github","pushed":"2012-03-27T00:08:29-07:00","watchers":178,"has_wiki":false},{"type":"repo","created_at":"2010-02-04T12:07:16-08:00","score":17.928259,"owner":"coen-hyde","followers":179,"open_issues":24,"created":"2010-02-04T12:07:16-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"PHP","pushed_at":"2012-06-17T11:18:14-07:00","forks":47,"fork":false,"size":240,"name":"Shanty-Mongo","url":"https://github.com/coen-hyde/Shanty-Mongo","description":"Shanty Mongo is a mongodb library for the Zend Framework. Its intention is to make working with mongodb documents as natural and as simple as possible. In particular allowing embedded documents to also have custom document classes.","private":false,"username":"coen-hyde","pushed":"2012-06-17T11:18:14-07:00","watchers":179,"has_wiki":true},{"type":"repo","created_at":"2012-02-28T03:21:21-08:00","score":17.501852,"owner":"exalted","followers":177,"open_issues":4,"created":"2012-02-28T03:21:21-08:00","homepage":"http://www.pittle.org/","has_issues":true,"has_downloads":true,"language":"Objective-C","pushed_at":"2012-06-27T07:29:43-07:00","forks":18,"fork":false,"size":168,"name":"PTShowcaseViewController","url":"https://github.com/exalted/PTShowcaseViewController","description":"An initial implementation of a \"showcase\" view( controller) for iOS apps... Visualizes images, videos and PDF files beautifully! (by @pittleorg) [meta: image, photo, video, document, pdf, album, gallery, showcase, gallery, iOS, iPhone, iPad, component, library, viewer]","private":false,"username":"exalted","pushed":"2012-06-27T07:29:43-07:00","watchers":177,"has_wiki":true},{"type":"repo","created_at":"2009-09-01T12:10:29-07:00","score":17.142056,"owner":"mdeering","followers":172,"open_issues":1,"created":"2009-09-01T12:10:29-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-06-24T09:55:45-07:00","forks":10,"fork":false,"size":192,"name":"gravatar_image_tag","url":"https://github.com/mdeering/gravatar_image_tag","description":"A configurable and documented Rail view helper for adding gravatars into your Rails application","private":false,"username":"mdeering","pushed":"2012-06-24T09:55:45-07:00","watchers":172,"has_wiki":true},{"type":"repo","created_at":"2011-06-10T11:54:25-07:00","score":17.106153,"owner":"Blizzard","followers":169,"open_issues":2,"organization":"Blizzard","created":"2011-06-10T11:54:25-07:00","homepage":"http://blizzard.github.com/api-wow-docs/","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-05-29T10:05:31-07:00","forks":14,"fork":false,"size":220,"name":"api-wow-docs","url":"https://github.com/Blizzard/api-wow-docs","description":"Documentation for the World of Warcraft web APIs.","private":false,"username":"Blizzard","pushed":"2012-05-29T10:05:31-07:00","watchers":169,"has_wiki":false},{"type":"repo","created_at":"2010-07-25T09:03:41-07:00","score":16.544067,"owner":"benedikt","followers":165,"open_issues":0,"created":"2010-07-25T09:03:41-07:00","homepage":"http://benedikt.github.com/mongoid-tree","has_issues":true,"has_downloads":false,"language":"Ruby","pushed_at":"2012-06-03T15:17:03-07:00","forks":35,"fork":false,"size":132,"name":"mongoid-tree","url":"https://github.com/benedikt/mongoid-tree","description":"A tree structure for Mongoid documents using the materialized path pattern","private":false,"username":"benedikt","pushed":"2012-06-03T15:17:03-07:00","watchers":165,"has_wiki":true},{"type":"repo","created_at":"2010-06-13T19:11:39-07:00","score":16.067684,"owner":"rfletcher","followers":161,"open_issues":7,"created":"2010-06-13T19:11:39-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-02-26T12:28:11-08:00","forks":16,"fork":false,"size":118,"name":"safari-json-formatter","url":"https://github.com/rfletcher/safari-json-formatter","description":"A Safari extension which makes valid JSON documents human-readable.","private":false,"username":"rfletcher","pushed":"2012-02-26T12:28:11-08:00","watchers":161,"has_wiki":true},{"type":"repo","created_at":"2011-02-03T08:37:15-08:00","score":15.89314,"owner":"rosarior","followers":159,"open_issues":8,"created":"2011-02-03T08:37:15-08:00","homepage":"http://www.mayan-edms.com","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-28T14:11:59-07:00","forks":31,"fork":false,"size":204,"name":"mayan","url":"https://github.com/rosarior/mayan","description":"Open source, Django based DMS (document management system) with custom metadata indexing, file serving integration, OCR capabilities, document versioning and electronic signature verification.","private":false,"username":"rosarior","pushed":"2012-06-28T14:11:59-07:00","watchers":159,"has_wiki":true},{"type":"repo","created_at":"2010-04-05T15:03:29-07:00","score":15.098347,"owner":"doctrine","followers":110,"open_issues":13,"organization":"doctrine","created":"2010-04-05T15:03:29-07:00","homepage":"http://www.doctrine-project.org","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-28T06:52:05-07:00","forks":79,"fork":false,"size":224,"name":"orm-documentation","url":"https://github.com/doctrine/orm-documentation","description":"Doctrine documentation","private":false,"username":"doctrine","pushed":"2012-06-28T06:52:05-07:00","watchers":110,"has_wiki":true},{"type":"repo","created_at":"2010-09-23T02:34:18-07:00","score":15.06705,"owner":"jsfiddle","followers":149,"open_issues":81,"organization":"jsfiddle","created":"2010-09-23T02:34:18-07:00","homepage":"doc.jsfiddle.net","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-05-31T04:44:25-07:00","forks":36,"fork":false,"size":132,"name":"jsfiddle-docs-alpha","url":"https://github.com/jsfiddle/jsfiddle-docs-alpha","description":"End user documentation for jsFiddle","private":false,"username":"jsfiddle","pushed":"2012-05-31T04:44:25-07:00","watchers":149,"has_wiki":true},{"type":"repo","created_at":"2010-08-05T12:41:31-07:00","score":14.786007,"owner":"weld","followers":147,"open_issues":6,"organization":"weld","created":"2010-08-05T12:41:31-07:00","homepage":"http://www.seamframework.org/Weld","has_issues":false,"master_branch":"master","has_downloads":false,"language":"Java","pushed_at":"2012-06-29T04:18:42-07:00","forks":87,"fork":false,"size":832,"name":"core","url":"https://github.com/weld/core","description":"Weld, including integrations for Servlet containers and Java SE, examples and documentation","private":false,"username":"weld","pushed":"2012-06-29T04:18:42-07:00","watchers":147,"has_wiki":false},{"type":"repo","created_at":"2011-11-30T02:09:35-08:00","score":14.652436,"owner":"documentcloud","followers":143,"open_issues":16,"organization":"documentcloud","created":"2011-11-30T02:09:35-08:00","homepage":"http://www.documentcloud.org","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-06-28T15:17:54-07:00","forks":24,"fork":false,"size":204,"name":"documentcloud","url":"https://github.com/documentcloud/documentcloud","description":"The DocumentCloud platform","private":false,"username":"documentcloud","pushed":"2012-06-28T15:17:54-07:00","watchers":143,"has_wiki":true},{"type":"repo","created_at":"2011-07-27T11:37:58-07:00","score":14.614601,"owner":"gre","followers":147,"open_issues":3,"created":"2011-07-27T11:37:58-07:00","homepage":"http://demo.greweb.fr/flexible-nav/","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2011-11-10T13:05:11-08:00","forks":15,"fork":false,"size":141,"name":"flexible-nav","url":"https://github.com/gre/flexible-nav","description":"Improve your navigation experience - this jQuery lib improves a webpage navigation and helps to visualize different sections. of a document, an article,.. any web page.","private":false,"username":"gre","pushed":"2011-11-10T13:05:11-08:00","watchers":147,"has_wiki":true},{"type":"repo","created_at":"2009-11-24T17:50:29-08:00","score":14.614601,"owner":"iamnoah","followers":147,"open_issues":2,"created":"2009-11-24T17:50:29-08:00","homepage":"http://iamnoah.github.com/writeCapture","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-05-29T18:39:07-07:00","forks":21,"fork":false,"size":279,"name":"writeCapture","url":"https://github.com/iamnoah/writeCapture","description":"Utility to assist the Ajax loading of HTML containing script tags that use document.write. Mailing List: http://groups.google.com/group/writecapturejs-users","private":false,"username":"iamnoah","pushed":"2012-05-29T18:39:07-07:00","watchers":147,"has_wiki":true},{"type":"repo","created_at":"2012-02-02T07:48:33-08:00","score":14.18802,"owner":"readium","followers":140,"open_issues":46,"created":"2012-02-02T07:48:33-08:00","homepage":"http://readium.org","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-06-28T15:40:55-07:00","forks":31,"fork":false,"size":832,"name":"readium","url":"https://github.com/readium/readium","description":"Readium: open source library for handling EPUB documents","private":false,"username":"readium","pushed":"2012-06-28T15:40:55-07:00","watchers":140,"has_wiki":true},{"type":"repo","created_at":"2011-01-20T09:04:50-08:00","score":14.102317,"owner":"nfarina","followers":140,"open_issues":0,"created":"2011-01-20T09:04:50-08:00","homepage":"http://nfarina.com/post/2843708636/a-lightweight-xml-parser-for-ios","has_issues":true,"has_downloads":true,"language":"Objective-C","pushed_at":"2012-04-30T14:23:33-07:00","forks":9,"fork":false,"size":164,"name":"xmldocument","url":"https://github.com/nfarina/xmldocument","description":"A lightweight XML Document class for iOS.","private":false,"username":"nfarina","pushed":"2012-04-30T14:23:33-07:00","watchers":140,"has_wiki":true},{"type":"repo","created_at":"2010-12-06T10:42:17-08:00","score":14.015406,"owner":"appcelerator","followers":99,"open_issues":1,"organization":"appcelerator","created":"2010-12-06T10:42:17-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2011-10-13T15:45:24-07:00","forks":20,"fork":false,"size":3472,"name":"Documentation-Examples","url":"https://github.com/appcelerator/Documentation-Examples","description":"","private":false,"username":"appcelerator","pushed":"2011-10-13T15:45:24-07:00","watchers":99,"has_wiki":true},{"type":"repo","created_at":"2010-02-10T15:59:05-08:00","score":13.99268,"owner":"grails","followers":138,"open_issues":3,"organization":"grails","created":"2010-02-10T15:59:05-08:00","homepage":"http://grails.org/doc/latest/","has_issues":true,"has_downloads":true,"language":"Groovy","pushed_at":"2012-06-27T06:26:26-07:00","forks":95,"fork":false,"size":216,"name":"grails-doc","url":"https://github.com/grails/grails-doc","description":"Documentation Project For The Grails Web Application Framework","private":false,"username":"grails","pushed":"2012-06-27T06:26:26-07:00","watchers":138,"has_wiki":true},{"type":"repo","created_at":"2009-01-29T00:22:07-08:00","score":13.821274,"owner":"astraw","followers":138,"open_issues":19,"created":"2009-01-29T00:22:07-08:00","homepage":"http://pypi.python.org/pypi/stdeb","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2010-07-30T02:08:17-07:00","forks":24,"fork":false,"size":1176,"name":"stdeb","url":"https://github.com/astraw/stdeb","description":"produces Debian source packages from Python packages (see README.rst for full documentation)","private":false,"username":"astraw","pushed":"2010-07-30T02:08:17-07:00","watchers":138,"has_wiki":false},{"type":"repo","created_at":"2012-01-11T14:29:55-08:00","score":13.79734,"owner":"Netflix","followers":136,"open_issues":1,"organization":"Netflix","created":"2012-01-11T14:29:55-08:00","homepage":"https://github.com/Netflix/aws-autoscaling/wiki","has_issues":true,"has_downloads":true,"language":"Shell","pushed_at":"2012-01-12T15:03:28-08:00","forks":13,"fork":false,"size":124,"name":"aws-autoscaling","url":"https://github.com/Netflix/aws-autoscaling","description":"Tools and Documentation about using Auto Scaling","private":false,"username":"Netflix","pushed":"2012-01-12T15:03:28-08:00","watchers":136,"has_wiki":true},{"type":"repo","created_at":"2010-09-01T05:52:55-07:00","score":13.680753,"owner":"vinova","followers":137,"open_issues":15,"organization":"vinova","created":"2010-09-01T05:52:55-07:00","homepage":"github.com/vinova/voteable_benchmarks","has_issues":true,"has_downloads":false,"language":"Ruby","pushed_at":"2011-10-19T06:24:52-07:00","forks":29,"fork":false,"size":3084,"name":"voteable_mongo","url":"https://github.com/vinova/voteable_mongo","description":"Add up / down voteability to Mongoid and MongoMapper documents. Optimized for speed by using only ONE request to validate, update, and retrieve updated data.","private":false,"username":"vinova","pushed":"2011-10-19T06:24:52-07:00","watchers":137,"has_wiki":true},{"type":"repo","created_at":"2010-01-16T04:42:25-08:00","score":13.516297,"owner":"kmuto","followers":134,"open_issues":34,"created":"2010-01-16T04:42:25-08:00","homepage":"https://svn.github.com/kmuto/review or https://kmuto.jp/svn/review/trunk","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-06-24T09:23:10-07:00","forks":21,"fork":false,"size":236,"name":"review","url":"https://github.com/kmuto/review","description":"ReVIEW is flexible document format/conversion system","private":false,"username":"kmuto","pushed":"2012-06-24T09:23:10-07:00","watchers":134,"has_wiki":true},{"type":"repo","created_at":"2009-04-06T13:18:23-07:00","score":13.418627,"owner":"10to1","followers":133,"open_issues":0,"organization":"10to1","created":"2009-04-06T13:18:23-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-04-04T09:19:56-07:00","forks":12,"fork":false,"size":168,"name":"spreadsheet_on_rails","url":"https://github.com/10to1/spreadsheet_on_rails","description":"A Rails plugin to generate xls documents by using rxls templates.","private":false,"username":"10to1","pushed":"2012-04-04T09:19:56-07:00","watchers":133,"has_wiki":true},{"type":"repo","created_at":"2010-02-18T12:27:48-08:00","score":13.182137,"owner":"uliwitness","followers":96,"open_issues":0,"created":"2010-02-18T12:27:48-08:00","homepage":"http://www.zathras.de/sourcecode.htm","has_issues":false,"has_downloads":true,"language":"Objective-C","pushed_at":"2012-02-05T04:20:24-08:00","forks":6,"fork":false,"size":168,"name":"UKSyntaxColoredTextDocument","url":"https://github.com/uliwitness/UKSyntaxColoredTextDocument","description":"An NSViewController (and optional document class) that implements syntax coloring and code editing-related features in an NSTextView.","private":false,"username":"uliwitness","pushed":"2012-02-05T04:20:24-08:00","watchers":96,"has_wiki":false},{"type":"repo","created_at":"2011-03-13T13:21:49-07:00","score":13.137584,"owner":"mandango","followers":131,"open_issues":7,"organization":"mandango","created":"2011-03-13T13:21:49-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"PHP","pushed_at":"2012-06-08T04:23:38-07:00","forks":17,"fork":false,"size":156,"name":"mandango","url":"https://github.com/mandango/mandango","description":"Mandango is a simple, poweful and ultrafast Object Document Mapper (ODM) for PHP and MongoDB.","private":false,"username":"mandango","pushed":"2012-06-08T04:23:38-07:00","watchers":131,"has_wiki":true},{"type":"repo","created_at":"2009-03-28T22:10:17-07:00","score":13.101683,"owner":"rmanalan","followers":128,"open_issues":5,"created":"2009-03-28T22:10:17-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2011-11-10T12:18:27-08:00","forks":12,"fork":false,"size":1044,"name":"bdoc","url":"https://github.com/rmanalan/bdoc","description":"Your local gem documentation browser","private":false,"username":"rmanalan","pushed":"2011-11-10T12:18:27-08:00","watchers":128,"has_wiki":false},{"type":"repo","created_at":"2010-11-04T22:26:15-07:00","score":13.0933,"owner":"movabletype","followers":45,"open_issues":0,"organization":"movabletype","created":"2010-11-04T22:26:15-07:00","homepage":"http://www.movabletype.org/","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-01-26T21:35:15-08:00","forks":5,"fork":false,"size":156,"name":"Documentation","url":"https://github.com/movabletype/Documentation","description":"Managing Movable Type documentation projects.","private":false,"username":"movabletype","pushed":"2012-01-26T21:35:15-08:00","watchers":45,"has_wiki":true},{"type":"repo","created_at":"2009-04-01T04:33:13-07:00","score":12.745697,"owner":"jessegrosjean","followers":86,"open_issues":1,"created":"2009-04-01T04:33:13-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-11-03T10:06:54-07:00","forks":12,"fork":false,"size":120,"name":"documents.com","url":"https://github.com/jessegrosjean/documents.com","description":"","private":false,"username":"jessegrosjean","pushed":"2011-11-03T10:06:54-07:00","watchers":86,"has_wiki":true},{"type":"repo","created_at":"2008-12-12T08:32:50-08:00","score":12.572359,"owner":"shairontoledo","followers":125,"open_issues":3,"created":"2008-12-12T08:32:50-08:00","integrate_branch":"master","homepage":"http://rghost.rubyforge.org","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-04-23T08:21:04-07:00","forks":17,"fork":false,"size":148,"name":"rghost","url":"https://github.com/shairontoledo/rghost","description":"RGhost is a document creation and conversion API. It uses the Ghostscript framework for the format conversion, utilizes EPS templates and is optimized to work with larger documents. Support(PDF,PS,GIF,TIF,PNG,JPG,etc)","private":false,"username":"shairontoledo","pushed":"2012-04-23T08:21:04-07:00","watchers":125,"has_wiki":true},{"type":"repo","created_at":"2009-12-30T23:40:28-08:00","score":12.453894,"owner":"leesmith","followers":124,"open_issues":5,"created":"2009-12-30T23:40:28-08:00","homepage":"http://appogee.posterous.com/ticketmule","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-05-16T19:51:01-07:00","forks":33,"fork":false,"size":144,"name":"ticket_mule","url":"https://github.com/leesmith/ticket_mule","description":"No frills, general use support ticket tracking. Easily document and communicate client relations within a support team.","private":false,"username":"leesmith","pushed":"2012-05-16T19:51:01-07:00","watchers":124,"has_wiki":true},{"type":"repo","created_at":"2010-11-02T18:42:33-07:00","score":12.441927,"owner":"vendo","followers":123,"open_issues":2,"organization":"vendo","created":"2010-11-02T18:42:33-07:00","homepage":"","has_issues":true,"master_branch":"develop","has_downloads":true,"language":"PHP","pushed_at":"2011-09-07T05:10:19-07:00","forks":17,"fork":false,"size":124,"name":"vendo","url":"https://github.com/vendo/vendo","description":"General documentation and sample files for Vendo e-commerce framework","private":false,"username":"vendo","pushed":"2011-09-07T05:10:19-07:00","watchers":123,"has_wiki":true},{"type":"repo","created_at":"2011-06-01T12:16:56-07:00","score":12.344256,"owner":"Khan","followers":122,"open_issues":8,"organization":"Khan","created":"2011-06-01T12:16:56-07:00","homepage":"http://www.khanacademy.org","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-02-27T11:44:11-08:00","forks":19,"fork":false,"size":124,"name":"khan-api","url":"https://github.com/Khan/khan-api","description":"Documentation for (and examples of) using the Khan Academy API ","private":false,"username":"Khan","pushed":"2012-02-27T11:44:11-08:00","watchers":122,"has_wiki":true},{"type":"repo","created_at":"2010-11-11T13:21:37-08:00","score":12.012239,"owner":"SpringSource","followers":84,"open_issues":2,"organization":"SpringSource","created":"2010-11-11T13:21:37-08:00","homepage":"http://www.springsource.org/spring-data","has_issues":true,"has_downloads":true,"language":"Java","pushed_at":"2011-09-07T04:45:54-07:00","forks":29,"fork":false,"size":148,"name":"spring-data-document-examples","url":"https://github.com/SpringSource/spring-data-document-examples","description":"Examples using Spring Data Document features","private":false,"username":"SpringSource","pushed":"2011-09-07T04:45:54-07:00","watchers":84,"has_wiki":true},{"type":"repo","created_at":"2011-11-15T08:12:21-08:00","score":11.871808,"owner":"zipmark","followers":77,"open_issues":6,"organization":"zipmark","created":"2011-11-15T08:12:21-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-06-05T06:53:03-07:00","forks":15,"fork":false,"size":204,"name":"rspec_api_documentation","url":"https://github.com/zipmark/rspec_api_documentation","description":"Automatically generate API documentation from RSpec","private":false,"username":"zipmark","pushed":"2012-06-05T06:53:03-07:00","watchers":77,"has_wiki":true},{"type":"repo","created_at":"2011-11-20T06:15:45-08:00","score":11.794138,"owner":"randym","followers":119,"open_issues":5,"created":"2011-11-20T06:15:45-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-06-27T20:57:36-07:00","forks":17,"fork":false,"size":41736,"name":"axlsx","url":"https://github.com/randym/axlsx","description":" xlsx generation with charts, images, automated column width, customizable styles and full schema validation. Axlsx excels at helping you generate beautiful Office Open XML Spreadsheet documents without having to understand the entire ECMA specification. Check out the README for some examples of how easy it is. Best of all, you can validate your xlsx file before serialization so you know for sure that anything generated is going to load on your client's machine.","private":false,"username":"randym","pushed":"2012-06-27T20:57:36-07:00","watchers":119,"has_wiki":true},{"type":"repo","created_at":"2010-09-26T14:42:53-07:00","score":11.574863,"owner":"theseer","followers":115,"open_issues":17,"created":"2010-09-26T14:42:53-07:00","homepage":"http://phpdox.de","has_issues":true,"has_downloads":false,"language":"PHP","pushed_at":"2012-02-25T10:57:19-08:00","forks":21,"fork":false,"size":136,"name":"phpdox","url":"https://github.com/theseer/phpdox","description":"Documentation generator for PHP Code using standard technology (SRC, DOCBLOCK, XML and XSLT)","private":false,"username":"theseer","pushed":"2012-02-25T10:57:19-08:00","watchers":115,"has_wiki":false},{"type":"repo","created_at":"2010-10-04T08:50:42-07:00","score":11.533151,"owner":"croogo","followers":29,"open_issues":0,"organization":"croogo","created":"2010-10-04T08:50:42-07:00","homepage":"http://wiki.croogo.org/","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-06-27T05:39:32-07:00","forks":21,"fork":false,"size":144,"name":"documentation","url":"https://github.com/croogo/documentation","description":"Documentation for Croogo","private":false,"username":"croogo","pushed":"2012-06-27T05:39:32-07:00","watchers":29,"has_wiki":true},{"type":"repo","created_at":"2012-05-15T04:20:10-07:00","score":11.526996,"owner":"fabpot","followers":111,"open_issues":9,"created":"2012-05-15T04:20:10-07:00","has_issues":true,"has_downloads":true,"language":"PHP","pushed_at":"2012-06-24T23:37:25-07:00","forks":13,"fork":false,"size":156,"name":"Sami","url":"https://github.com/fabpot/Sami","description":"An API documentation generator","private":false,"username":"fabpot","pushed":"2012-06-24T23:37:25-07:00","watchers":111,"has_wiki":false},{"type":"repo","created_at":"2010-04-04T14:36:21-07:00","score":11.379523,"owner":"jdbartlett","followers":113,"open_issues":0,"created":"2010-04-04T14:36:21-07:00","homepage":"http://jdbartlett.github.com/innershiv","has_issues":false,"has_downloads":true,"language":"JavaScript","pushed_at":"2011-12-22T06:54:27-08:00","forks":21,"fork":false,"size":160,"name":"innershiv","url":"https://github.com/jdbartlett/innershiv","description":"a workaround for HTML 5 via innerHTML outside the document in IE","private":false,"username":"jdbartlett","pushed":"2011-12-22T06:54:27-08:00","watchers":113,"has_wiki":false},{"type":"repo","created_at":"2009-02-02T00:34:22-08:00","score":11.184184,"owner":"mattball","followers":111,"open_issues":6,"created":"2009-02-02T00:34:22-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-10-19T12:45:49-07:00","forks":8,"fork":false,"size":1372,"name":"doxyclean","url":"https://github.com/mattball/doxyclean","description":"A script to convert Doxygen output to resemble Apple's AppKit documentation","private":false,"username":"mattball","pushed":"2011-10-19T12:45:49-07:00","watchers":111,"has_wiki":true},{"type":"repo","created_at":"2011-04-21T04:19:55-07:00","score":11.1339,"owner":"chenshuo","followers":25,"open_issues":0,"created":"2011-04-21T04:19:55-07:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2011-04-21T04:20:40-07:00","forks":3,"fork":false,"size":6794,"name":"documents","url":"https://github.com/chenshuo/documents","description":"","private":false,"username":"chenshuo","pushed":"2011-04-21T04:20:40-07:00","watchers":25,"has_wiki":true},{"type":"repo","created_at":"2010-02-27T10:51:22-08:00","score":11.038645,"owner":"wayneeseguin","followers":106,"open_issues":3,"created":"2010-02-27T10:51:22-08:00","homepage":"http://rvm.beginrescueend.com","has_issues":true,"has_downloads":false,"language":"JavaScript","pushed_at":"2012-06-28T23:00:06-07:00","forks":84,"fork":false,"size":260,"name":"rvm-site","url":"https://github.com/wayneeseguin/rvm-site","description":"RVM website and documentation","private":false,"username":"wayneeseguin","pushed":"2012-06-28T23:00:06-07:00","watchers":106,"has_wiki":false},{"type":"repo","created_at":"2010-01-30T05:23:40-08:00","score":10.976876,"owner":"mustardamus","followers":108,"open_issues":6,"created":"2010-01-30T05:23:40-08:00","homepage":"http://jqapi.com/","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-01-13T08:23:17-08:00","forks":73,"fork":false,"size":3349,"name":"jqapi","url":"https://github.com/mustardamus/jqapi","description":"jQAPI - Alternative jQuery Documentation","private":false,"username":"mustardamus","pushed":"2012-01-13T08:23:17-08:00","watchers":108,"has_wiki":true},{"type":"repo","created_at":"2010-01-25T05:15:01-08:00","score":10.845175,"owner":"onesocialweb","followers":22,"open_issues":0,"created":"2010-01-25T05:15:01-08:00","homepage":"http://onesocialweb.org","has_issues":false,"has_downloads":false,"language":"Shell","pushed_at":"2011-04-13T05:25:34-07:00","forks":5,"fork":false,"size":136,"name":"documentation","url":"https://github.com/onesocialweb/documentation","description":"All working documents, standards, data model, protocol extensions, etc.","private":false,"username":"onesocialweb","pushed":"2011-04-13T05:25:34-07:00","watchers":22,"has_wiki":false},{"type":"repo","created_at":"2009-10-17T18:25:29-07:00","score":10.598164,"owner":"bwhite","followers":105,"open_issues":37,"created":"2009-10-17T18:25:29-07:00","homepage":"www.hadoopy.com","has_issues":true,"has_downloads":true,"language":"C","pushed_at":"2012-06-27T13:01:38-07:00","forks":13,"fork":false,"size":156,"name":"hadoopy","url":"https://github.com/bwhite/hadoopy","description":"Python MapReduce library written in Cython. Visit us in #hadoopy on freenode. See the link below for documentation and tutorials.","private":false,"username":"bwhite","pushed":"2012-06-27T13:01:38-07:00","watchers":105,"has_wiki":false}]} + +https +GET +api.github.com +None +/legacy/repos/search/document?start_page=2 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4982'), ('content-length', '56821'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"7a429048f738479a3828adfd641228c6"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Fri, 29 Jun 2012 11:52:40 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"repositories":[{"type":"repo","created_at":"2011-12-01T14:18:22-08:00","score":10.500494,"owner":"dustin10","followers":104,"open_issues":15,"created":"2011-12-01T14:18:22-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"PHP","pushed_at":"2012-03-22T07:27:47-07:00","forks":24,"fork":false,"size":128,"name":"VichUploaderBundle","url":"https://github.com/dustin10/VichUploaderBundle","description":"A simple Symfony2 bundle to ease file uploads with ORM entities and ODM documents.","private":false,"username":"dustin10","pushed":"2012-03-22T07:27:47-07:00","watchers":104,"has_wiki":false},{"type":"repo","created_at":"2008-04-07T17:29:47-07:00","score":10.47656,"owner":"tobie","followers":102,"open_issues":2,"created":"2008-04-07T17:29:47-07:00","homepage":"http://pdoc.org","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2011-08-31T02:50:14-07:00","forks":17,"fork":false,"size":220,"name":"pdoc","url":"https://github.com/tobie/pdoc","description":"JavaScript inline documentation parser","private":false,"username":"tobie","pushed":"2011-08-31T02:50:14-07:00","watchers":102,"has_wiki":false},{"type":"repo","created_at":"2010-09-12T12:15:07-07:00","score":10.257012,"owner":"josegonzalez","followers":16,"open_issues":0,"created":"2010-09-12T12:15:07-07:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-02-22T16:46:05-08:00","forks":3,"fork":false,"size":164,"name":"documentation","url":"https://github.com/josegonzalez/documentation","description":"An INCOMPLETE re-implementation of the CakePHP documentation as a series of tutorials. CakePHP 1.3 ONLY. Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License","private":false,"username":"josegonzalez","pushed":"2012-02-22T16:46:05-08:00","watchers":16,"has_wiki":true},{"type":"repo","created_at":"2011-07-10T00:14:54-07:00","score":10.207483,"owner":"ryanmcgrath","followers":101,"open_issues":0,"created":"2011-07-10T00:14:54-07:00","homepage":"http://venodesigns.net/wii/","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2011-10-28T01:24:03-07:00","forks":5,"fork":false,"size":120,"name":"wii-js","url":"https://github.com/ryanmcgrath/wii-js","description":"A sane, documented, (hopefully) performant event-based library for Wiimote webpage interaction.","private":false,"username":"ryanmcgrath","pushed":"2011-10-28T01:24:03-07:00","watchers":101,"has_wiki":true},{"type":"repo","created_at":"2012-04-08T18:02:57-07:00","score":10.183549,"owner":"cloudfoundry","followers":99,"open_issues":1,"organization":"cloudfoundry","created":"2012-04-08T18:02:57-07:00","homepage":"http://cloudfoundry.org","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-06-26T22:45:56-07:00","forks":18,"fork":false,"size":232,"name":"oss-docs","url":"https://github.com/cloudfoundry/oss-docs","description":"Documentation for the Cloud Foundry Platform as a Service","private":false,"username":"cloudfoundry","pushed":"2012-06-26T22:45:56-07:00","watchers":99,"has_wiki":true},{"type":"repo","created_at":"2008-05-31T14:02:12-07:00","score":10.164632,"owner":"davidB","followers":101,"open_issues":18,"created":"2008-05-31T14:02:12-07:00","homepage":"http://davidb.github.com/scala-maven-plugin/","has_issues":true,"has_downloads":false,"language":"Java","pushed_at":"2012-06-29T00:35:06-07:00","forks":28,"fork":false,"size":208,"name":"scala-maven-plugin","url":"https://github.com/davidB/scala-maven-plugin","description":"The scala-maven-plugin (previously maven-scala-plugin) is used for compiling/testing/running/documenting scala code in maven.","private":false,"username":"davidB","pushed":"2012-06-29T00:35:06-07:00","watchers":101,"has_wiki":true},{"type":"repo","created_at":"2010-11-29T17:07:24-08:00","score":10.1572,"owner":"tpetricek","followers":15,"open_issues":0,"created":"2010-11-29T17:07:24-08:00","homepage":"http://tomasp.net/blog","has_issues":true,"has_downloads":true,"language":"F#","pushed_at":"2012-06-26T15:17:29-07:00","forks":3,"fork":false,"size":6960,"name":"Documents","url":"https://github.com/tpetricek/Documents","description":"Includes samples for my blog posts, source code and slides for my talks and other resources.","private":false,"username":"tpetricek","pushed":"2012-06-26T15:17:29-07:00","watchers":15,"has_wiki":true},{"type":"repo","created_at":"2010-01-01T15:23:02-08:00","score":10.063814,"owner":"symphonists","followers":14,"open_issues":2,"organization":"symphonists","created":"2010-01-01T15:23:02-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"PHP","pushed_at":"2012-05-18T09:20:36-07:00","forks":7,"fork":false,"size":208,"name":"documenter","url":"https://github.com/symphonists/documenter","description":"Symphony extension that allows users to add documentation to back-end pages","private":false,"username":"symphonists","pushed":"2012-05-18T09:20:36-07:00","watchers":14,"has_wiki":true},{"type":"repo","created_at":"2010-06-15T09:39:09-07:00","score":10.012143,"owner":"DigitalPebble","followers":99,"open_issues":12,"organization":"DigitalPebble","created":"2010-06-15T09:39:09-07:00","homepage":"","has_issues":true,"has_downloads":false,"language":"Java","pushed_at":"2012-06-28T05:59:52-07:00","forks":14,"fork":false,"size":200,"name":"behemoth","url":"https://github.com/DigitalPebble/behemoth","description":"Behemoth is an open source platform for large scale document analysis based on Apache Hadoop.","private":false,"username":"DigitalPebble","pushed":"2012-06-28T05:59:52-07:00","watchers":99,"has_wiki":true},{"type":"repo","created_at":"2012-02-14T00:57:11-08:00","score":9.966145,"owner":"locomotivecms","followers":13,"open_issues":2,"organization":"locomotivecms","created":"2012-02-14T00:57:11-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-06-28T05:30:46-07:00","forks":11,"fork":false,"size":196,"name":"documentation","url":"https://github.com/locomotivecms/documentation","description":"The website sources about the new LocomotiveCMS documentation \"center\"","private":false,"username":"locomotivecms","pushed":"2012-06-28T05:30:46-07:00","watchers":13,"has_wiki":true},{"type":"repo","created_at":"2012-05-23T17:31:03-07:00","score":9.96186,"owner":"eucalyptus","followers":13,"open_issues":0,"organization":"eucalyptus","created":"2012-05-23T17:31:03-07:00","has_issues":true,"has_downloads":true,"language":"Prolog","pushed_at":"2012-06-27T10:41:21-07:00","forks":9,"fork":false,"size":372,"name":"documentation","url":"https://github.com/eucalyptus/documentation","description":"","private":false,"username":"eucalyptus","pushed":"2012-06-27T10:41:21-07:00","watchers":13,"has_wiki":true},{"type":"repo","created_at":"2011-08-22T16:39:11-07:00","score":9.940341,"owner":"propelorm","followers":93,"open_issues":6,"organization":"propelorm","created":"2011-08-22T16:39:11-07:00","homepage":"http://www.propelorm.org/","has_issues":true,"master_branch":"master","has_downloads":true,"language":"JavaScript","pushed_at":"2012-06-27T06:49:38-07:00","forks":67,"fork":false,"size":236,"name":"propelorm.github.com","url":"https://github.com/propelorm/propelorm.github.com","description":"The Propel documentation.","private":false,"username":"propelorm","pushed":"2012-06-27T06:49:38-07:00","watchers":93,"has_wiki":false},{"type":"repo","created_at":"2011-06-20T12:36:30-07:00","score":9.92644,"owner":"kobold2d","followers":99,"open_issues":0,"organization":"kobold2d","created":"2011-06-20T12:36:30-07:00","integrate_branch":"develop","homepage":"http://www.kobold2d.com","has_issues":true,"has_downloads":true,"language":"Objective-C","pushed_at":"2012-03-24T14:21:10-07:00","forks":6,"fork":false,"size":112,"name":"Kobold2D","url":"https://github.com/kobold2d/Kobold2D","description":"Bringing Order to Cocos2D Chaos and Complexity. Kobold2D is open source, all-inclusive, ARC enabled, documented. For iOS and Mac OS X.","private":false,"username":"kobold2d","pushed":"2012-03-24T14:21:10-07:00","watchers":99,"has_wiki":true},{"type":"repo","created_at":"2011-06-12T19:11:35-07:00","score":9.918407,"owner":"vladocar","followers":57,"open_issues":1,"created":"2011-06-12T19:11:35-07:00","homepage":"http://www.vcarrer.com","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2011-09-18T08:09:13-07:00","forks":2,"fork":false,"size":172,"name":"AutoObjectDocumentation","url":"https://github.com/vladocar/AutoObjectDocumentation","description":"Auto Object Documentation - JavaScript","private":false,"username":"vladocar","pushed":"2011-09-18T08:09:13-07:00","watchers":57,"has_wiki":true},{"type":"repo","created_at":"2010-04-29T20:23:55-07:00","score":9.871622,"owner":"jwage","followers":98,"open_issues":2,"created":"2010-04-29T20:23:55-07:00","homepage":"http://www.twitter.com/jwage","has_issues":true,"has_downloads":true,"language":"PHP","pushed_at":"2011-06-27T08:36:05-07:00","forks":27,"fork":false,"size":224,"name":"php-mongodb-admin","url":"https://github.com/jwage/php-mongodb-admin","description":"A PHP MongoDB Admin script for managing databases, collections and documents from a standalone easy to use script.","private":false,"username":"jwage","pushed":"2011-06-27T08:36:05-07:00","watchers":98,"has_wiki":true},{"type":"repo","created_at":"2010-02-26T05:48:00-08:00","score":9.816803,"owner":"peterbe","followers":97,"open_issues":2,"created":"2010-02-26T05:48:00-08:00","integrate_branch":"master","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-09-01T07:58:42-07:00","forks":10,"fork":false,"size":488,"name":"django-mongokit","url":"https://github.com/peterbe/django-mongokit","description":"Bridging Django to MongoDB with the MongoKit ODM (Object Document Mapper)","private":false,"username":"peterbe","pushed":"2011-09-01T07:58:42-07:00","watchers":97,"has_wiki":true},{"type":"repo","created_at":"2010-09-14T12:30:19-07:00","score":9.768935,"owner":"puppetlabs","followers":93,"open_issues":0,"organization":"puppetlabs","created":"2010-09-14T12:30:19-07:00","homepage":"","has_issues":false,"has_downloads":true,"language":"Ruby","pushed_at":"2012-06-27T14:16:41-07:00","forks":73,"fork":false,"size":404,"name":"puppet-docs","url":"https://github.com/puppetlabs/puppet-docs","description":"Curated Puppet Documentation","private":false,"username":"puppetlabs","pushed":"2012-06-27T14:16:41-07:00","watchers":93,"has_wiki":true},{"type":"repo","created_at":"2011-07-16T08:54:08-07:00","score":9.671265,"owner":"laravel","followers":92,"open_issues":25,"organization":"laravel","created":"2011-07-16T08:54:08-07:00","homepage":"http://laravel.com","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-06-19T05:19:16-07:00","forks":53,"fork":false,"size":256,"name":"docs","url":"https://github.com/laravel/docs","description":"The Laravel Framework Documentation.","private":false,"username":"laravel","pushed":"2012-06-19T05:19:16-07:00","watchers":92,"has_wiki":false},{"type":"repo","created_at":"2012-04-24T14:59:39-07:00","score":9.668849,"owner":"zetacomponents","followers":10,"open_issues":1,"organization":"zetacomponents","created":"2012-04-24T14:59:39-07:00","has_issues":true,"has_downloads":true,"language":"PHP","pushed_at":"2012-05-21T02:55:50-07:00","forks":2,"fork":false,"size":128,"name":"Document","url":"https://github.com/zetacomponents/Document","description":"","private":false,"username":"zetacomponents","pushed":"2012-05-21T02:55:50-07:00","watchers":10,"has_wiki":true},{"type":"repo","created_at":"2011-12-12T21:52:00-08:00","score":9.597529,"owner":"grosser","followers":93,"open_issues":4,"created":"2011-12-12T21:52:00-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-04-06T09:26:19-07:00","forks":10,"fork":false,"size":144,"name":"vendorer","url":"https://github.com/grosser/vendorer","description":"Vendorer keeps your dependencies documented and up to date","private":false,"username":"grosser","pushed":"2012-04-06T09:26:19-07:00","watchers":93,"has_wiki":true},{"type":"repo","created_at":"2010-04-02T00:25:34-07:00","score":9.597529,"owner":"symfony","followers":93,"open_issues":1,"organization":"symfony","created":"2010-04-02T00:25:34-07:00","homepage":"http://www.symfony-project.org/","has_issues":false,"has_downloads":false,"language":"PHP","pushed_at":"2012-06-26T06:41:18-07:00","forks":50,"fork":false,"size":420,"name":"symfony1-docs","url":"https://github.com/symfony/symfony1-docs","description":"Documentation for symfony 1.3/1.4","private":false,"username":"symfony","pushed":"2012-06-26T06:41:18-07:00","watchers":93,"has_wiki":false},{"type":"repo","created_at":"2010-03-10T12:11:20-08:00","score":9.523793,"owner":"rtomayko","followers":94,"open_issues":8,"created":"2010-03-10T12:11:20-08:00","homepage":"http://rtomayko.github.com/shocco/","has_issues":true,"has_downloads":true,"language":"Perl","pushed_at":"2011-12-10T07:09:17-08:00","forks":17,"fork":false,"size":256,"name":"shocco","url":"https://github.com/rtomayko/shocco","description":"shocco is a quick-and-dirty, literate-programming-style documentation generator for / in POSIX shell","private":false,"username":"rtomayko","pushed":"2011-12-10T07:09:17-08:00","watchers":94,"has_wiki":true},{"type":"repo","created_at":"2010-06-21T18:18:23-07:00","score":9.480366,"owner":"swganh","followers":8,"open_issues":0,"created":"2010-06-21T18:18:23-07:00","homepage":"http://www.swganh.com","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2010-12-10T11:48:02-08:00","forks":3,"fork":false,"size":296,"name":"documentation","url":"https://github.com/swganh/documentation","description":"SWG:ANH - Documentation","private":false,"username":"swganh","pushed":"2010-12-10T11:48:02-08:00","watchers":8,"has_wiki":true},{"type":"repo","created_at":"2012-03-27T20:50:52-07:00","score":9.414156,"owner":"visionmedia","followers":92,"open_issues":5,"created":"2012-03-27T20:50:52-07:00","homepage":"http://visionmedia.github.com/jog ","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-04-15T09:58:56-07:00","forks":9,"fork":false,"size":192,"name":"jog","url":"https://github.com/visionmedia/jog","description":"JSON document logging & reporting inspired by loggly for node.js","private":false,"username":"visionmedia","pushed":"2012-04-15T09:58:56-07:00","watchers":92,"has_wiki":true},{"type":"repo","created_at":"2011-09-23T13:57:35-07:00","score":9.304519,"owner":"mongodb","followers":90,"open_issues":0,"organization":"mongodb","created":"2011-09-23T13:57:35-07:00","homepage":"http://docs.mongodb.org","has_issues":false,"has_downloads":true,"language":"Python","pushed_at":"2012-06-28T13:04:39-07:00","forks":58,"fork":false,"size":676,"name":"docs","url":"https://github.com/mongodb/docs","description":"The MongoDB Documentation Project Source.","private":false,"username":"mongodb","pushed":"2012-06-28T13:04:39-07:00","watchers":90,"has_wiki":false},{"type":"repo","created_at":"2011-05-07T17:05:20-07:00","score":9.285026,"owner":"HumMod","followers":6,"open_issues":0,"organization":"HumMod","created":"2011-05-07T17:05:20-07:00","homepage":"","has_issues":true,"master_branch":"gh-pages","language":"","has_downloads":true,"pushed_at":"2011-08-10T06:23:09-07:00","forks":4,"fork":false,"size":900,"name":"documentation","url":"https://github.com/HumMod/documentation","description":"The HumMod documentation.","private":false,"username":"HumMod","pushed":"2011-08-10T06:23:09-07:00","watchers":6,"has_wiki":true},{"type":"repo","created_at":"2010-10-02T13:36:38-07:00","score":9.285026,"owner":"londonhackspace","followers":7,"open_issues":0,"organization":"londonhackspace","created":"2010-10-02T13:36:38-07:00","homepage":"","has_issues":false,"language":"","has_downloads":false,"pushed_at":"2012-01-10T17:54:22-08:00","forks":2,"fork":false,"size":108,"name":"documentation","url":"https://github.com/londonhackspace/documentation","description":"London Hackspace's legal documentation","private":false,"username":"londonhackspace","pushed":"2012-01-10T17:54:22-08:00","watchers":7,"has_wiki":false},{"type":"repo","created_at":"2012-04-18T12:35:38-07:00","score":9.285026,"owner":"enStratus","followers":6,"open_issues":1,"organization":"enStratus","created":"2012-04-18T12:35:38-07:00","homepage":"http://docs.enstratus.com","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-12T20:17:53-07:00","forks":2,"fork":false,"size":376,"name":"documentation","url":"https://github.com/enStratus/documentation","description":"enStratus Documentation","private":false,"username":"enStratus","pushed":"2012-06-12T20:17:53-07:00","watchers":6,"has_wiki":true},{"type":"repo","created_at":"2011-03-29T10:32:53-07:00","score":9.285026,"owner":"citation-style-language","followers":6,"open_issues":4,"organization":"citation-style-language","created":"2011-03-29T10:32:53-07:00","homepage":"http://citationstyles.org/","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-06-27T18:42:14-07:00","forks":4,"fork":false,"size":188,"name":"documentation","url":"https://github.com/citation-style-language/documentation","description":"Citation Style Language documentation","private":false,"username":"citation-style-language","pushed":"2012-06-27T18:42:14-07:00","watchers":6,"has_wiki":true},{"type":"repo","created_at":"2011-12-01T09:58:56-08:00","score":9.283312,"owner":"Sylius","followers":6,"open_issues":0,"organization":"Sylius","created":"2011-12-01T09:58:56-08:00","homepage":"Sylius.org","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-05-13T02:36:33-07:00","forks":2,"fork":false,"size":136,"name":"Documentation","url":"https://github.com/Sylius/Documentation","description":"Official documentation repository, hosted on readthedocs.org.","private":false,"username":"Sylius","pushed":"2012-05-13T02:36:33-07:00","watchers":6,"has_wiki":false},{"type":"repo","created_at":"2011-10-27T12:22:20-07:00","score":9.2824545,"owner":"phpbb","followers":6,"open_issues":4,"organization":"phpbb","created":"2011-10-27T12:22:20-07:00","homepage":"http://www.phpbb.com","has_issues":true,"has_downloads":true,"language":"Shell","pushed_at":"2011-10-27T12:24:35-07:00","forks":7,"fork":false,"size":6680,"name":"documentation","url":"https://github.com/phpbb/documentation","description":"Documentation for end-users: board visitors, moderators and administrators","private":false,"username":"phpbb","pushed":"2011-10-27T12:24:35-07:00","watchers":6,"has_wiki":false},{"type":"repo","created_at":"2011-11-26T19:17:09-08:00","score":9.27817,"owner":"panada","followers":6,"open_issues":0,"created":"2011-11-26T19:17:09-08:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-06-25T05:05:38-07:00","forks":6,"fork":false,"size":260,"name":"documentation","url":"https://github.com/panada/documentation","description":"","private":false,"username":"panada","pushed":"2012-06-25T05:05:38-07:00","watchers":6,"has_wiki":true},{"type":"repo","created_at":"2009-12-25T01:41:27-08:00","score":9.238146,"owner":"sebastianbergmann","followers":50,"open_issues":10,"created":"2009-12-25T01:41:27-08:00","homepage":"http://www.phpunit.de/","has_issues":true,"has_downloads":false,"language":"JavaScript","pushed_at":"2012-06-20T20:04:57-07:00","forks":36,"fork":false,"size":184,"name":"phpunit-documentation","url":"https://github.com/sebastianbergmann/phpunit-documentation","description":"Documentation for PHPUnit.","private":false,"username":"sebastianbergmann","pushed":"2012-06-20T20:04:57-07:00","watchers":50,"has_wiki":false},{"type":"repo","created_at":"2009-10-08T12:58:28-07:00","score":9.218816,"owner":"coordt","followers":90,"open_issues":4,"created":"2009-10-08T12:58:28-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-02-17T09:44:35-08:00","forks":12,"fork":false,"size":188,"name":"ADCtheme","url":"https://github.com/coordt/ADCtheme","description":"A Sphinx theme that formats documentation like the Apple Developer Connection","private":false,"username":"coordt","pushed":"2012-02-17T09:44:35-08:00","watchers":90,"has_wiki":true},{"type":"repo","created_at":"2012-04-12T09:28:15-07:00","score":9.206849,"owner":"nelmio","followers":89,"open_issues":8,"organization":"nelmio","created":"2012-04-12T09:28:15-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"PHP","pushed_at":"2012-06-28T01:39:29-07:00","forks":11,"fork":false,"size":228,"name":"NelmioApiDocBundle","url":"https://github.com/nelmio/NelmioApiDocBundle","description":"Generates documentation for your REST API from annotations","private":false,"username":"nelmio","pushed":"2012-06-28T01:39:29-07:00","watchers":89,"has_wiki":true},{"type":"repo","created_at":"2011-11-25T04:23:08-08:00","score":9.187932,"owner":"sergiomtzlosa","followers":91,"open_issues":0,"created":"2011-11-25T04:23:08-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Objective-C","pushed_at":"2011-11-25T04:41:56-08:00","forks":4,"fork":false,"size":100,"name":"iCloud-Singleton-CloudMe","url":"https://github.com/sergiomtzlosa/iCloud-Singleton-CloudMe","description":"Upload text documents and images easily, also you can save your defaults in your cloud, just with few lines. Follow me : @sergimtzlosa","private":false,"username":"sergiomtzlosa","pushed":"2011-11-25T04:41:56-08:00","watchers":91,"has_wiki":true},{"type":"repo","created_at":"2011-10-26T08:35:29-07:00","score":9.186499,"owner":"Innovators-Team10","followers":5,"open_issues":0,"organization":"Innovators-Team10","created":"2011-10-26T08:35:29-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-06-24T08:03:51-07:00","forks":3,"fork":false,"size":272,"name":"Documentation","url":"https://github.com/Innovators-Team10/Documentation","description":"Team documentation for TrollEdit ","private":false,"username":"Innovators-Team10","pushed":"2012-06-24T08:03:51-07:00","watchers":5,"has_wiki":true},{"type":"repo","created_at":"2011-03-05T18:53:23-08:00","score":9.180499,"owner":"DrupalVietNam","followers":5,"open_issues":2,"organization":"DrupalVietNam","created":"2011-03-05T18:53:23-08:00","homepage":"http://drupalvietnam.org","has_issues":true,"master_branch":"master","has_downloads":true,"language":"PHP","pushed_at":"2011-03-05T19:09:07-08:00","forks":1,"fork":false,"size":320,"name":"document","url":"https://github.com/DrupalVietNam/document","description":"","private":false,"username":"DrupalVietNam","pushed":"2011-03-05T19:09:07-08:00","watchers":5,"has_wiki":true},{"type":"repo","created_at":"2010-08-10T05:46:25-07:00","score":9.135334,"owner":"ralph","followers":49,"open_issues":2,"created":"2010-08-10T05:46:25-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-01-29T05:56:58-08:00","forks":8,"fork":false,"size":116,"name":"document_mapper","url":"https://github.com/ralph/document_mapper","description":"Simple model layer that let's you query text documents as if they were a database.","private":false,"username":"ralph","pushed":"2012-01-29T05:56:58-08:00","watchers":49,"has_wiki":true},{"type":"repo","created_at":"2009-04-01T01:13:53-07:00","score":9.121146,"owner":"heroku","followers":89,"open_issues":1,"organization":"heroku","created":"2009-04-01T01:13:53-07:00","homepage":"http://docs.heroku.com/","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2011-01-24T12:55:46-08:00","forks":22,"fork":false,"size":1080,"name":"heroku-docs","url":"https://github.com/heroku/heroku-docs","description":"Documentation for Heroku, in the form of a Sinatra app serving markdown text files.","private":false,"username":"heroku","pushed":"2011-01-24T12:55:46-08:00","watchers":89,"has_wiki":true},{"type":"repo","created_at":"2010-09-18T02:37:23-07:00","score":9.109179,"owner":"doctrine","followers":88,"open_issues":4,"organization":"doctrine","created":"2010-09-18T02:37:23-07:00","homepage":"http://www.doctrine-project.org","has_issues":true,"has_downloads":true,"language":"PHP","pushed_at":"2012-05-22T06:19:26-07:00","forks":16,"fork":false,"size":204,"name":"couchdb-odm","url":"https://github.com/doctrine/couchdb-odm","description":"A Document Mapper based on CouchDB","private":false,"username":"doctrine","pushed":"2012-05-22T06:19:26-07:00","watchers":88,"has_wiki":true},{"type":"repo","created_at":"2010-09-29T12:34:21-07:00","score":9.089685,"owner":"travelbot","followers":4,"open_issues":0,"created":"2010-09-29T12:34:21-07:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2010-11-25T06:03:55-08:00","forks":1,"fork":false,"size":616,"name":"documentation","url":"https://github.com/travelbot/documentation","description":"Travelbot documentation repo","private":false,"username":"travelbot","pushed":"2010-11-25T06:03:55-08:00","watchers":4,"has_wiki":true},{"type":"repo","created_at":"2012-01-17T03:10:07-08:00","score":9.087114,"owner":"nizsheanez","followers":4,"open_issues":0,"created":"2012-01-17T03:10:07-08:00","has_issues":true,"has_downloads":true,"language":"PHP","pushed_at":"2012-05-06T10:03:05-07:00","forks":1,"fork":false,"size":2620,"name":"documentation","url":"https://github.com/nizsheanez/documentation","description":"Documentation engine for https://github.com/ostapetc/Yii-CMS","private":false,"username":"nizsheanez","pushed":"2012-05-06T10:03:05-07:00","watchers":4,"has_wiki":true},{"type":"repo","created_at":"2010-11-24T08:52:10-08:00","score":9.082829,"owner":"developmentseed","followers":5,"open_issues":0,"organization":"developmentseed","created":"2010-11-24T08:52:10-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-03-28T19:00:43-07:00","forks":1,"fork":false,"size":980,"name":"document","url":"https://github.com/developmentseed/document","description":"Rudimentary content system for Express + CouchDB + HBS.","private":false,"username":"developmentseed","pushed":"2012-03-28T19:00:43-07:00","watchers":5,"has_wiki":true},{"type":"repo","created_at":"2012-03-29T04:04:47-07:00","score":9.082829,"owner":"jbosstm","followers":4,"open_issues":0,"created":"2012-03-29T04:04:47-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Java","pushed_at":"2012-06-12T06:38:29-07:00","forks":3,"fork":false,"size":128,"name":"documentation","url":"https://github.com/jbosstm/documentation","description":"","private":false,"username":"jbosstm","pushed":"2012-06-12T06:38:29-07:00","watchers":4,"has_wiki":true},{"type":"repo","created_at":"2010-09-23T05:54:13-07:00","score":9.04741,"owner":"tciuro","followers":90,"open_issues":1,"created":"2010-09-23T05:54:13-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Objective-C","pushed_at":"2012-06-15T17:30:23-07:00","forks":6,"fork":false,"size":236,"name":"NanoStore","url":"https://github.com/tciuro/NanoStore","description":"NanoStore is an open source, lightweight schema-less local key-value document store written in Objective-C for Mac OS X and iOS. ","private":false,"username":"tciuro","pushed":"2012-06-15T17:30:23-07:00","watchers":90,"has_wiki":true},{"type":"repo","created_at":"2011-05-18T04:38:40-07:00","score":8.99373,"owner":"massidea","followers":3,"open_issues":0,"organization":"massidea","created":"2011-05-18T04:38:40-07:00","homepage":"http://code.google.com/p/massidea/wiki/","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2011-05-25T05:59:08-07:00","forks":3,"fork":false,"size":332,"name":"documentation","url":"https://github.com/massidea/documentation","description":"Documentation images and such","private":false,"username":"massidea","pushed":"2011-05-25T05:59:08-07:00","watchers":3,"has_wiki":true},{"type":"repo","created_at":"2012-01-20T14:36:42-08:00","score":8.99373,"owner":"phonelab","followers":3,"open_issues":0,"organization":"phonelab","created":"2012-01-20T14:36:42-08:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"forks":1,"fork":false,"size":0,"name":"Documentation","url":"https://github.com/phonelab/Documentation","description":"Repo for documentation","private":false,"username":"phonelab","pushed":null,"watchers":3,"has_wiki":true},{"type":"repo","created_at":"2012-01-23T15:37:44-08:00","score":8.99373,"owner":"agavi","followers":3,"open_issues":9,"created":"2012-01-23T15:37:44-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"PHP","pushed_at":"2012-02-08T19:42:39-08:00","forks":1,"fork":false,"size":812,"name":"documentation","url":"https://github.com/agavi/documentation","description":"The documentation for Agavi","private":false,"username":"agavi","pushed":"2012-02-08T19:42:39-08:00","watchers":3,"has_wiki":false},{"type":"repo","created_at":"2011-05-05T09:22:01-07:00","score":8.992015,"owner":"deskmetrics","followers":3,"open_issues":0,"organization":"deskmetrics","created":"2011-05-05T09:22:01-07:00","homepage":"http://docs.deskmetrics.com/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-08-08T08:16:56-07:00","forks":3,"fork":false,"size":254,"name":"Documentation","url":"https://github.com/deskmetrics/Documentation","description":"DeskMetrics Documentation","private":false,"username":"deskmetrics","pushed":"2011-08-08T08:16:56-07:00","watchers":3,"has_wiki":true},{"type":"repo","created_at":"2011-03-24T08:18:23-07:00","score":8.992015,"owner":"pika","followers":3,"open_issues":0,"organization":"pika","created":"2011-03-24T08:18:23-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-03-28T22:15:05-07:00","forks":1,"fork":false,"size":344,"name":"documentation","url":"https://github.com/pika/documentation","description":"Pika Sphinx documentation","private":false,"username":"pika","pushed":"2011-03-28T22:15:05-07:00","watchers":3,"has_wiki":true},{"type":"repo","created_at":"2012-05-25T12:26:01-07:00","score":8.9911585,"owner":"substance","followers":3,"open_issues":1,"organization":"substance","created":"2012-05-25T12:26:01-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-06-24T15:41:45-07:00","forks":1,"fork":false,"size":448,"name":"document","url":"https://github.com/substance/document","description":"Substance Document Format - not yet functional -","private":false,"username":"substance","pushed":"2012-06-24T15:41:45-07:00","watchers":3,"has_wiki":true},{"type":"repo","created_at":"2010-07-26T12:46:25-07:00","score":8.9911585,"owner":"68kb","followers":3,"open_issues":0,"organization":"68kb","created":"2010-07-26T12:46:25-07:00","homepage":"http://68kb.com","has_issues":true,"language":"","has_downloads":true,"forks":1,"fork":false,"size":0,"name":"documentation","url":"https://github.com/68kb/documentation","description":"68KB v2 Documentation","private":false,"username":"68kb","pushed":null,"watchers":3,"has_wiki":true},{"type":"repo","created_at":"2012-02-28T12:53:11-08:00","score":8.990301,"owner":"openmhealth","followers":3,"open_issues":0,"organization":"openmhealth","created":"2012-02-28T12:53:11-08:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"forks":1,"fork":false,"size":0,"name":"documentation","url":"https://github.com/openmhealth/documentation","description":"Open mHealth Technical Documentation","private":false,"username":"openmhealth","pushed":null,"watchers":3,"has_wiki":true},{"type":"repo","created_at":"2011-08-03T06:01:45-07:00","score":8.985159,"owner":"bonatoc","followers":3,"open_issues":0,"created":"2011-08-03T06:01:45-07:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"forks":1,"fork":false,"size":0,"name":"Documentation","url":"https://github.com/bonatoc/Documentation","description":"","private":false,"username":"bonatoc","pushed":null,"watchers":3,"has_wiki":true},{"type":"repo","created_at":"2011-04-23T00:19:47-07:00","score":8.985159,"owner":"trapd00r","followers":3,"open_issues":0,"created":"2011-04-23T00:19:47-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"VimL","pushed_at":"2012-06-12T10:14:02-07:00","forks":1,"fork":false,"size":225816,"name":"Documentation","url":"https://github.com/trapd00r/Documentation","description":"Docs and notes for Vim, Zsh, Git, Terminal emulators, Perl ... that I've either written or collected over time","private":false,"username":"trapd00r","pushed":"2012-06-12T10:14:02-07:00","watchers":3,"has_wiki":true},{"type":"repo","created_at":"2009-11-11T16:10:04-08:00","score":8.937773,"owner":"wesabe","followers":88,"open_issues":3,"organization":"wesabe","created":"2009-11-11T16:10:04-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Java","pushed_at":"2010-12-21T11:58:36-08:00","forks":7,"fork":false,"size":204,"name":"grendel","url":"https://github.com/wesabe/grendel","description":"Grendel is a RESTful web service which allows for the secure storage of users' documents.","private":false,"username":"wesabe","pushed":"2010-12-21T11:58:36-08:00","watchers":88,"has_wiki":true},{"type":"repo","created_at":"2011-01-24T06:25:50-08:00","score":8.937773,"owner":"ceylon","followers":88,"open_issues":76,"organization":"ceylon","created":"2011-01-24T06:25:50-08:00","homepage":"http://ceylon-lang.org","has_issues":true,"has_downloads":true,"language":"Java","pushed_at":"2012-06-28T03:45:52-07:00","forks":28,"fork":false,"size":2657,"name":"ceylon-compiler","url":"https://github.com/ceylon/ceylon-compiler","description":"Ceylon compiler (ceylonc: Java backend), Ceylon documentation generator (ceylond) and Ceylon ant tasks.","private":false,"username":"ceylon","pushed":"2012-06-28T03:45:52-07:00","watchers":88,"has_wiki":true},{"type":"repo","created_at":"2011-02-07T14:15:37-08:00","score":8.901872,"owner":"mapbox","followers":85,"open_issues":10,"organization":"mapbox","created":"2011-02-07T14:15:37-08:00","homepage":"http://mbtiles.org/","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-06-10T21:31:16-07:00","forks":9,"fork":false,"size":804,"name":"mbtiles-spec","url":"https://github.com/mapbox/mbtiles-spec","description":"specification documents for the MBTiles tileset format","private":false,"username":"mapbox","pushed":"2012-06-10T21:31:16-07:00","watchers":85,"has_wiki":true},{"type":"repo","created_at":"2011-03-18T15:42:12-07:00","score":8.901202,"owner":"sciversedev","followers":2,"open_issues":0,"created":"2011-03-18T15:42:12-07:00","homepage":"http://developer.sciverse.com/learn","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2011-04-07T15:47:16-07:00","forks":2,"fork":false,"size":27244,"name":"documentation","url":"https://github.com/sciversedev/documentation","description":"documentation","private":false,"username":"sciversedev","pushed":"2011-04-07T15:47:16-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2011-07-05T23:14:09-07:00","score":8.89606,"owner":"andreassolberg","followers":2,"open_issues":0,"created":"2011-07-05T23:14:09-07:00","homepage":"http://rnd.feide.no","has_issues":false,"language":"","has_downloads":true,"pushed_at":"2012-02-13T00:02:53-08:00","forks":1,"fork":false,"size":392,"name":"documents","url":"https://github.com/andreassolberg/documents","description":"Andreas' documents","private":false,"username":"andreassolberg","pushed":"2012-02-13T00:02:53-08:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2011-12-22T14:44:38-08:00","score":8.89606,"owner":"coolfluid","followers":2,"open_issues":0,"organization":"coolfluid","created":"2011-12-22T14:44:38-08:00","homepage":"http://coolfluidsrv.vki.ac.be","has_issues":true,"has_downloads":true,"language":"Objective-C","pushed_at":"2012-04-28T03:18:18-07:00","forks":2,"fork":false,"size":116,"name":"documents","url":"https://github.com/coolfluid/documents","description":"coolfluid documentation","private":false,"username":"coolfluid","pushed":"2012-04-28T03:18:18-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2012-05-16T18:19:31-07:00","score":8.89606,"owner":"DragonflyStudios","followers":2,"open_issues":0,"organization":"DragonflyStudios","created":"2012-05-16T18:19:31-07:00","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-05-16T18:20:15-07:00","forks":1,"fork":false,"size":92,"name":"Documents","url":"https://github.com/DragonflyStudios/Documents","description":"Organization Documents","private":false,"username":"DragonflyStudios","pushed":"2012-05-16T18:20:15-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2009-11-09T16:33:29-08:00","score":8.894345,"owner":"RedTeamCOSC470","followers":2,"open_issues":2,"created":"2009-11-09T16:33:29-08:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2010-04-25T11:34:05-07:00","forks":1,"fork":false,"size":29964,"name":"Documentation","url":"https://github.com/RedTeamCOSC470/Documentation","description":"Documentation for the Stargazer project.","private":false,"username":"RedTeamCOSC470","pushed":"2010-04-25T11:34:05-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2010-11-15T07:11:42-08:00","score":8.894345,"owner":"sugestio","followers":2,"open_issues":0,"created":"2010-11-15T07:11:42-08:00","homepage":"https://www.sugestio.com","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2011-12-15T03:17:16-08:00","forks":1,"fork":false,"size":1260,"name":"documentation","url":"https://github.com/sugestio/documentation","description":"API documentation in markdown format.","private":false,"username":"sugestio","pushed":"2011-12-15T03:17:16-08:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2011-12-19T05:55:08-08:00","score":8.894345,"owner":"NServiceBus","followers":2,"open_issues":1,"created":"2011-12-19T05:55:08-08:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2011-12-19T05:58:58-08:00","forks":1,"fork":false,"size":96,"name":"Documentation","url":"https://github.com/NServiceBus/Documentation","description":"Documentation for NServiceBus","private":false,"username":"NServiceBus","pushed":"2011-12-19T05:58:58-08:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2008-12-16T02:58:36-08:00","score":8.893489,"owner":"wodzupl20","followers":2,"open_issues":0,"created":"2008-12-16T02:58:36-08:00","homepage":"http://www.xmpp.org/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2008-12-02T09:11:15-08:00","forks":4,"fork":false,"size":26624,"name":"documentation","url":"https://github.com/wodzupl20/documentation","description":"Mirror of the main Documentation Subversion repository","private":false,"username":"wodzupl20","pushed":"2008-12-02T09:11:15-08:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2011-10-14T09:05:10-07:00","score":8.893489,"owner":"mantidproject","followers":2,"open_issues":0,"organization":"mantidproject","created":"2011-10-14T09:05:10-07:00","homepage":"www.mantidproject.org","has_issues":false,"has_downloads":true,"language":"Perl","pushed_at":"2012-06-27T08:21:29-07:00","forks":1,"fork":false,"size":264812,"name":"documents","url":"https://github.com/mantidproject/documents","description":"Holds documents relating to the Mantid project","private":false,"username":"mantidproject","pushed":"2012-06-27T08:21:29-07:00","watchers":2,"has_wiki":false},{"type":"repo","created_at":"2012-01-14T10:45:50-08:00","score":8.892632,"owner":"adventureloop","followers":2,"open_issues":16,"created":"2012-01-14T10:45:50-08:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-05-10T06:39:51-07:00","forks":1,"fork":false,"size":576,"name":"Documentation","url":"https://github.com/adventureloop/Documentation","description":"Documentation for all stages of final year project","private":false,"username":"adventureloop","pushed":"2012-05-10T06:39:51-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2012-05-13T23:49:04-07:00","score":8.892632,"owner":"enstratus-ja","followers":2,"open_issues":0,"organization":"enstratus-ja","created":"2012-05-13T23:49:04-07:00","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-06-13T01:26:36-07:00","forks":1,"fork":false,"size":12748,"name":"documentation","url":"https://github.com/enstratus-ja/documentation","description":"Japanese translation of enStratus Documentation","private":false,"username":"enstratus-ja","pushed":"2012-06-13T01:26:36-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2011-11-06T08:41:26-08:00","score":8.892632,"owner":"winlibs","followers":2,"open_issues":0,"organization":"winlibs","created":"2011-11-06T08:41:26-08:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2011-11-07T09:14:52-08:00","forks":1,"fork":false,"size":148,"name":"documentation","url":"https://github.com/winlibs/documentation","description":"General documentations about the winlib org and projects","private":false,"username":"winlibs","pushed":"2011-11-07T09:14:52-08:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2010-04-17T07:54:37-07:00","score":8.891774,"owner":"thousandparsec","followers":2,"open_issues":0,"organization":"thousandparsec","created":"2010-04-17T07:54:37-07:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2010-08-10T23:50:12-07:00","forks":1,"fork":false,"size":604,"name":"documents","url":"https://github.com/thousandparsec/documents","description":"A repository containing important documents such as the XML definition of the Thousand Parsec protocol. ","private":false,"username":"thousandparsec","pushed":"2010-08-10T23:50:12-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2011-08-29T09:22:13-07:00","score":8.891774,"owner":"wocommunity","followers":2,"open_issues":0,"organization":"wocommunity","created":"2011-08-29T09:22:13-07:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"forks":1,"fork":false,"size":0,"name":"Documentation","url":"https://github.com/wocommunity/Documentation","description":"All things needed for collaborate on new documentation (books, tutorials, etc.)","private":false,"username":"wocommunity","pushed":null,"watchers":2,"has_wiki":true},{"type":"repo","created_at":"2011-08-25T06:43:49-07:00","score":8.891774,"owner":"mangos","followers":2,"open_issues":0,"organization":"mangos","created":"2011-08-25T06:43:49-07:00","homepage":"http://getmangos.com/","has_issues":true,"language":"","has_downloads":true,"forks":1,"fork":false,"size":0,"name":"documentation","url":"https://github.com/mangos/documentation","description":"Project documentation, including general guidelines and rules for our community.","private":false,"username":"mangos","pushed":null,"watchers":2,"has_wiki":true},{"type":"repo","created_at":"2009-11-30T05:10:30-08:00","score":8.887489,"owner":"goremika","followers":2,"open_issues":0,"created":"2009-11-30T05:10:30-08:00","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2009-12-14T01:22:23-08:00","forks":1,"fork":false,"size":5836,"name":"documenter","url":"https://github.com/goremika/documenter","description":"TODO: one-line summary of your gem","private":false,"username":"goremika","pushed":"2009-12-14T01:22:23-08:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2011-02-01T09:49:03-08:00","score":8.887489,"owner":"fluid-project","followers":2,"open_issues":0,"organization":"fluid-project","created":"2011-02-01T09:49:03-08:00","homepage":"http://fluidproject.org/","has_issues":false,"master_branch":"tutorials","has_downloads":true,"language":"JavaScript","pushed_at":"2011-02-01T11:06:56-08:00","forks":2,"fork":false,"size":456,"name":"documentation","url":"https://github.com/fluid-project/documentation","description":"","private":false,"username":"fluid-project","pushed":"2011-02-01T11:06:56-08:00","watchers":2,"has_wiki":false},{"type":"repo","created_at":"2011-01-14T03:57:10-08:00","score":8.887489,"owner":"scieloorg","followers":3,"open_issues":0,"organization":"scieloorg","created":"2011-01-14T03:57:10-08:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2011-10-24T06:01:02-07:00","forks":2,"fork":false,"size":9364,"name":"documents","url":"https://github.com/scieloorg/documents","description":"This repository was created to be a repository of attatchements (Images, PDF, Video, etc)that will be used in the wiki pages on githug. ","private":false,"username":"scieloorg","pushed":"2011-10-24T06:01:02-07:00","watchers":3,"has_wiki":true},{"type":"repo","created_at":"2012-02-16T19:42:14-08:00","score":8.887489,"owner":"TulsaLUG","followers":2,"open_issues":0,"created":"2012-02-16T19:42:14-08:00","homepage":"http://orgs.utulsa.edu/linuxusers/","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-02-16T19:54:14-08:00","forks":1,"fork":false,"size":84,"name":"Documents","url":"https://github.com/TulsaLUG/Documents","description":"The meeting topics, minutes, and more","private":false,"username":"TulsaLUG","pushed":"2012-02-16T19:54:14-08:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2011-07-03T13:30:47-07:00","score":8.887489,"owner":"amotl","followers":2,"open_issues":0,"created":"2011-07-03T13:30:47-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-03-19T03:09:46-07:00","forks":1,"fork":false,"size":176,"name":"documents","url":"https://github.com/amotl/documents","description":"This and that. Non-blocking, asynchronous I/O; Gevent; Python","private":false,"username":"amotl","pushed":"2012-03-19T03:09:46-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2011-11-04T06:00:07-07:00","score":8.887489,"owner":"honza","followers":2,"open_issues":1,"created":"2011-11-04T06:00:07-07:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-01-09T08:20:30-08:00","forks":3,"fork":false,"size":116,"name":"documents","url":"https://github.com/honza/documents","description":"","private":false,"username":"honza","pushed":"2012-01-09T08:20:30-08:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2011-03-19T20:00:45-07:00","score":8.887489,"owner":"dylan-hackers","followers":2,"open_issues":0,"organization":"dylan-hackers","created":"2011-03-19T20:00:45-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Perl","pushed_at":"2011-03-19T20:18:59-07:00","forks":1,"fork":false,"size":66572,"name":"documentation","url":"https://github.com/dylan-hackers/documentation","description":"Open Dylan and Gwydion Dylan doc","private":false,"username":"dylan-hackers","pushed":"2011-03-19T20:18:59-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2012-01-30T16:10:57-08:00","score":8.887489,"owner":"kfly8","followers":2,"open_issues":0,"created":"2012-01-30T16:10:57-08:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-06-20T06:29:31-07:00","forks":1,"fork":false,"size":136,"name":"Document","url":"https://github.com/kfly8/Document","description":"勉強した内容を貯めておくよ。ブログにしろよ。","private":false,"username":"kfly8","pushed":"2012-06-20T06:29:31-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2012-04-11T23:23:37-07:00","score":8.887489,"owner":"dongyongzhou","followers":2,"open_issues":0,"created":"2012-04-11T23:23:37-07:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-06-26T00:58:04-07:00","forks":2,"fork":false,"size":228,"name":"document","url":"https://github.com/dongyongzhou/document","description":"recording what I learm","private":false,"username":"dongyongzhou","pushed":"2012-06-26T00:58:04-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2010-12-23T11:32:54-08:00","score":8.884431,"owner":"rdoc","followers":86,"open_issues":28,"organization":"rdoc","created":"2010-12-23T11:32:54-08:00","homepage":"http://rdoc.rubyforge.org/","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-06-28T17:22:47-07:00","forks":33,"fork":false,"size":264,"name":"rdoc","url":"https://github.com/rdoc/rdoc","description":"RDoc produces HTML and online documentation for Ruby projects. RDoc includes the rdoc and ri tools for generating and displaying online documentation.","private":false,"username":"rdoc","pushed":"2012-06-28T17:22:47-07:00","watchers":86,"has_wiki":true},{"type":"repo","created_at":"2011-06-03T21:05:16-07:00","score":8.828136,"owner":"thetron","followers":86,"open_issues":5,"created":"2011-06-03T21:05:16-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-04-12T23:31:10-07:00","forks":10,"fork":false,"size":144,"name":"mongoid_token","url":"https://github.com/thetron/mongoid_token","description":"A little random, unique token generator for Mongoid documents.","private":false,"username":"thetron","pushed":"2012-04-12T23:31:10-07:00","watchers":86,"has_wiki":true},{"type":"repo","created_at":"2011-06-18T10:43:36-07:00","score":8.816169,"owner":"travis-ci","followers":85,"open_issues":4,"organization":"travis-ci","created":"2011-06-18T10:43:36-07:00","homepage":"http://about.travis-ci.org","has_issues":true,"master_branch":"master","has_downloads":true,"language":"Ruby","pushed_at":"2012-06-28T10:22:18-07:00","forks":62,"fork":false,"size":240,"name":"travis-ci.github.com","url":"https://github.com/travis-ci/travis-ci.github.com","description":"the official Travis CI blog & documentation website","private":false,"username":"travis-ci","pushed":"2012-06-28T10:22:18-07:00","watchers":85,"has_wiki":false},{"type":"repo","created_at":"2009-07-15T02:21:19-07:00","score":8.803532,"owner":"darrylcousins","followers":1,"open_issues":0,"created":"2009-07-15T02:21:19-07:00","homepage":"http://darrylcousins.net.nz/documents","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2009-11-10T11:41:32-08:00","forks":1,"fork":false,"size":1126,"name":"Documents","url":"https://github.com/darrylcousins/Documents","description":"Documents","private":false,"username":"darrylcousins","pushed":"2009-11-10T11:41:32-08:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-01-06T06:07:11-08:00","score":8.803532,"owner":"tinybyte","followers":1,"open_issues":0,"created":"2011-01-06T06:07:11-08:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"forks":1,"fork":false,"size":0,"name":"Documents","url":"https://github.com/tinybyte/Documents","description":"Documents","private":false,"username":"tinybyte","pushed":null,"watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-06-08T18:46:23-07:00","score":8.803532,"owner":"op-wiki","followers":1,"open_issues":0,"created":"2011-06-08T18:46:23-07:00","homepage":"op.sdo.com","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2011-06-09T03:05:00-07:00","forks":1,"fork":false,"size":108,"name":"documents","url":"https://github.com/op-wiki/documents","description":"Documents","private":false,"username":"op-wiki","pushed":"2011-06-09T03:05:00-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-09-11T17:29:00-07:00","score":8.803532,"owner":"jackqin","followers":1,"open_issues":0,"created":"2011-09-11T17:29:00-07:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2011-11-18T17:01:12-08:00","forks":1,"fork":false,"size":384,"name":"Document","url":"https://github.com/jackqin/Document","description":"document","private":false,"username":"jackqin","pushed":"2011-11-18T17:01:12-08:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-12-13T07:59:28-08:00","score":8.803532,"owner":"patuww","followers":1,"open_issues":0,"created":"2011-12-13T07:59:28-08:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2011-12-14T07:52:42-08:00","forks":1,"fork":false,"size":50084,"name":"Documentation","url":"https://github.com/patuww/Documentation","description":"Documentation","private":false,"username":"patuww","pushed":"2011-12-14T07:52:42-08:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-12-23T21:27:31-08:00","score":8.803532,"owner":"srini4rails","followers":1,"open_issues":0,"created":"2011-12-23T21:27:31-08:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"forks":1,"fork":false,"size":0,"name":"documents","url":"https://github.com/srini4rails/documents","description":"documents","private":false,"username":"srini4rails","pushed":null,"watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-03-11T00:38:36-08:00","score":8.803532,"owner":"keamas","followers":1,"open_issues":0,"created":"2011-03-11T00:38:36-08:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-02-05T12:09:18-08:00","forks":1,"fork":false,"size":5944,"name":"Documents","url":"https://github.com/keamas/Documents","description":"Document ","private":false,"username":"keamas","pushed":"2012-02-05T12:09:18-08:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2012-02-22T23:18:36-08:00","score":8.803532,"owner":"goaaronnyc","followers":1,"open_issues":0,"created":"2012-02-22T23:18:36-08:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-02-22T23:27:34-08:00","forks":1,"fork":false,"size":84,"name":"Documentation","url":"https://github.com/goaaronnyc/Documentation","description":"Documentation","private":false,"username":"goaaronnyc","pushed":"2012-02-22T23:27:34-08:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2012-04-24T22:40:25-07:00","score":8.803532,"owner":"dongyulong","followers":1,"open_issues":0,"created":"2012-04-24T22:40:25-07:00","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-04-24T22:44:24-07:00","forks":1,"fork":false,"size":96,"name":"documents","url":"https://github.com/dongyulong/documents","description":"documents","private":false,"username":"dongyulong","pushed":"2012-04-24T22:44:24-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2012-06-07T23:19:59-07:00","score":8.803532,"owner":"wydoorg","followers":1,"open_issues":0,"created":"2012-06-07T23:19:59-07:00","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-06-13T04:47:29-07:00","forks":1,"fork":false,"size":168,"name":"documents","url":"https://github.com/wydoorg/documents","description":"documents","private":false,"username":"wydoorg","pushed":"2012-06-13T04:47:29-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2012-06-09T04:42:08-07:00","score":8.803532,"owner":"nomad","followers":1,"open_issues":0,"organization":"nomad","created":"2012-06-09T04:42:08-07:00","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-06-09T04:42:41-07:00","forks":1,"fork":false,"size":764,"name":"documents","url":"https://github.com/nomad/documents","description":"Documents","private":false,"username":"nomad","pushed":"2012-06-09T04:42:41-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2012-03-27T10:15:22-07:00","score":8.803532,"owner":"heldopslippers","followers":1,"open_issues":0,"created":"2012-03-27T10:15:22-07:00","homepage":"website-development.nl","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-03-28T02:44:56-07:00","forks":1,"fork":false,"size":128,"name":"documentation","url":"https://github.com/heldopslippers/documentation","description":"documentation","private":false,"username":"heldopslippers","pushed":"2012-03-28T02:44:56-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2012-06-25T20:03:54-07:00","score":8.803532,"owner":"ninehills","followers":1,"open_issues":0,"created":"2012-06-25T20:03:54-07:00","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-06-25T20:05:54-07:00","forks":1,"fork":false,"size":0,"name":"Documents","url":"https://github.com/ninehills/Documents","description":"Documents","private":false,"username":"ninehills","pushed":"2012-06-25T20:05:54-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2012-06-28T19:45:38-07:00","score":8.803532,"owner":"lsjeng","followers":1,"open_issues":0,"created":"2012-06-28T19:45:38-07:00","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-06-29T04:49:51-07:00","forks":1,"fork":false,"size":124,"name":"Document","url":"https://github.com/lsjeng/Document","description":"Document","private":false,"username":"lsjeng","pushed":"2012-06-29T04:49:51-07:00","watchers":1,"has_wiki":true}]} + +https +GET +api.github.com +None +/legacy/repos/search/document?start_page=3 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '52000'), ('x-ratelimit-remaining', '4981'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"05d6b83482e746254755a87b7d666cef"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Fri, 29 Jun 2012 11:52:42 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"repositories":[{"type":"repo","has_downloads":true,"homepage":"","owner":"railstone","score":8.798389,"pushed":"2011-07-03T10:15:29-07:00","description":"My documents","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":96,"open_issues":0,"created_at":"2011-07-03T09:43:44-07:00","username":"railstone","name":"documents","url":"https://github.com/railstone/documents","language":"","private":false,"pushed_at":"2011-07-03T10:15:29-07:00","created":"2011-07-03T09:43:44-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"fooker","score":8.798389,"pushed":"2011-01-18T05:57:25-08:00","description":"my documents","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":173280,"open_issues":0,"created_at":"2010-11-22T04:45:44-08:00","username":"fooker","name":"documents","url":"https://github.com/fooker/documents","private":false,"language":"Shell","pushed_at":"2011-01-18T05:57:25-08:00","created":"2010-11-22T04:45:44-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"levpevzner","score":8.798389,"pushed":null,"description":"Flite documentation","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2011-07-22T09:13:58-07:00","username":"levpevzner","name":"Documentation","url":"https://github.com/levpevzner/Documentation","language":"","private":false,"created":"2011-07-22T09:13:58-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"ariandikovic","score":8.798389,"pushed":"2011-11-11T02:23:07-08:00","description":"Project documentation","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":912,"open_issues":0,"created_at":"2011-11-11T02:22:24-08:00","username":"ariandikovic","name":"Documentation","url":"https://github.com/ariandikovic/Documentation","language":"","private":false,"pushed_at":"2011-11-11T02:23:07-08:00","created":"2011-11-11T02:22:24-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"QPhuong","score":8.798389,"pushed":null,"description":"some document","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2011-11-20T19:13:45-08:00","username":"QPhuong","name":"Document","url":"https://github.com/QPhuong/Document","language":"","private":false,"created":"2011-11-20T19:13:45-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"ifdefese","score":8.798389,"pushed":"2011-12-09T08:13:25-08:00","description":"Contains documentation","watchers":1,"has_wiki":true,"followers":1,"organization":"ifdefese","fork":false,"size":192,"open_issues":0,"created_at":"2011-11-09T03:32:13-08:00","username":"ifdefese","name":"documents","url":"https://github.com/ifdefese/documents","language":"","private":false,"pushed_at":"2011-12-09T08:13:25-08:00","created":"2011-11-09T03:32:13-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"sebastienv","score":8.798389,"pushed":"2011-12-16T02:14:27-08:00","description":"My documents","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":384,"open_issues":0,"created_at":"2011-12-16T02:10:53-08:00","username":"sebastienv","name":"Documents","url":"https://github.com/sebastienv/Documents","language":"","private":false,"pushed_at":"2011-12-16T02:14:27-08:00","created":"2011-12-16T02:10:53-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"git-for-oer","score":8.798389,"pushed":"2012-04-13T12:14:06-07:00","description":"Documents and Notes","watchers":1,"has_wiki":true,"followers":1,"organization":"git-for-oer","fork":false,"size":92,"open_issues":0,"created_at":"2012-04-13T12:02:06-07:00","username":"git-for-oer","name":"Documents","url":"https://github.com/git-for-oer/Documents","language":"","private":false,"pushed_at":"2012-04-13T12:14:06-07:00","created":"2012-04-13T12:02:06-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"http://flite.com","owner":"flite","score":8.798389,"pushed":"2012-04-16T22:51:21-07:00","description":"Flite documentation.","watchers":1,"has_wiki":true,"followers":1,"organization":"flite","fork":false,"size":3688,"open_issues":0,"created_at":"2011-07-22T09:40:13-07:00","username":"flite","name":"Documentation","url":"https://github.com/flite/Documentation","language":"","private":false,"pushed_at":"2012-04-16T22:51:21-07:00","created":"2011-07-22T09:40:13-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"stoani89","score":8.798389,"pushed":null,"description":"Documents by me","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":501,"open_issues":0,"created_at":"2010-08-24T07:53:32-07:00","username":"stoani89","name":"Documents","url":"https://github.com/stoani89/Documents","language":"","private":false,"created":"2010-08-24T07:53:32-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"owner":"lcguerrerocovo","score":8.798389,"pushed":"2012-04-22T14:12:20-07:00","description":"luisca's documents","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":140,"open_issues":0,"created_at":"2012-04-22T13:17:54-07:00","username":"lcguerrerocovo","name":"documents","url":"https://github.com/lcguerrerocovo/documents","language":"","private":false,"pushed_at":"2012-04-22T14:12:20-07:00","created":"2012-04-22T13:17:54-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"zipcodeman","score":8.798389,"pushed":"2012-05-01T19:54:17-07:00","description":"My Documents","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":188,"open_issues":0,"created_at":"2011-11-20T11:56:52-08:00","username":"zipcodeman","name":"Documents","url":"https://github.com/zipcodeman/Documents","private":false,"language":"Python","pushed_at":"2012-05-01T19:54:17-07:00","created":"2011-11-20T11:56:52-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"buta9999","score":8.798389,"pushed":"2012-05-13T04:10:27-07:00","description":"sphinx document","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":7620,"open_issues":0,"created_at":"2012-03-31T04:11:37-07:00","username":"buta9999","name":"document","url":"https://github.com/buta9999/document","private":false,"language":"JavaScript","pushed_at":"2012-05-13T04:10:27-07:00","created":"2012-03-31T04:11:37-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"yafengli","score":8.798389,"pushed":"2012-05-21T20:18:53-07:00","description":"My documents.","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":14524,"open_issues":0,"created_at":"2010-09-27T22:53:42-07:00","username":"yafengli","name":"documents","url":"https://github.com/yafengli/documents","private":false,"language":"JavaScript","pushed_at":"2012-05-21T20:18:53-07:00","created":"2010-09-27T22:53:42-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"lalyre","score":8.798389,"pushed":"2012-06-12T14:33:47-07:00","description":"Technical documentation","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":7664,"open_issues":0,"created_at":"2012-02-16T12:48:04-08:00","username":"lalyre","name":"Documentation","url":"https://github.com/lalyre/Documentation","language":"","private":false,"pushed_at":"2012-06-12T14:33:47-07:00","created":"2012-02-16T12:48:04-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"sposs","score":8.798389,"pushed":"2012-06-07T06:38:33-07:00","description":"My documents","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":74696,"open_issues":0,"created_at":"2011-05-26T00:58:15-07:00","username":"sposs","name":"Documents","url":"https://github.com/sposs/Documents","private":false,"language":"Python","pushed_at":"2012-06-07T06:38:33-07:00","created":"2011-05-26T00:58:15-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"http://martijn.vermaat.name","owner":"martijnvermaat","score":8.798389,"pushed":"2012-06-21T02:50:00-07:00","description":"My Documents","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":8280,"open_issues":0,"created_at":"2011-05-04T00:30:40-07:00","username":"martijnvermaat","name":"documents","url":"https://github.com/martijnvermaat/documents","private":false,"language":"Coq","pushed_at":"2012-06-21T02:50:00-07:00","created":"2011-05-04T00:30:40-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"http://about.me/leaf","owner":"cardmaster","score":8.797091,"pushed":"2011-09-16T03:58:03-07:00","description":"My public documents, including cv, or some documents","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":1652,"open_issues":0,"created_at":"2011-03-22T07:41:07-07:00","username":"cardmaster","name":"documents","url":"https://github.com/cardmaster/documents","language":"","private":false,"pushed_at":"2011-09-16T03:58:03-07:00","created":"2011-03-22T07:41:07-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"sireeshapatibandla","score":8.796675,"pushed":"2011-06-27T22:16:42-07:00","description":"Documents for TalentTube","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":96,"open_issues":0,"created_at":"2011-06-27T21:42:41-07:00","username":"sireeshapatibandla","name":"Documents","url":"https://github.com/sireeshapatibandla/Documents","language":"","private":false,"pushed_at":"2011-06-27T22:16:42-07:00","created":"2011-06-27T21:42:41-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"scroll","score":8.796675,"pushed":"2011-09-23T14:54:43-07:00","description":"documents and text files","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":100,"open_issues":0,"created_at":"2011-09-23T14:51:12-07:00","username":"scroll","name":"documents","url":"https://github.com/scroll/documents","language":"","private":false,"pushed_at":"2011-09-23T14:54:43-07:00","created":"2011-09-23T14:51:12-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"documentation","owner":"santony","score":8.796675,"pushed":"2009-12-29T08:56:38-08:00","description":"Mes documents utiles","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":76,"open_issues":0,"created_at":"2009-12-29T06:20:30-08:00","username":"santony","name":"Documentation","url":"https://github.com/santony/Documentation","integrate_branch":"testbranch","language":"","private":false,"pushed_at":"2009-12-29T08:56:38-08:00","created":"2009-12-29T06:20:30-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"http://dedomenon.org","owner":"dedomenon","score":8.796675,"pushed":"2010-03-10T06:51:37-08:00","description":"Developer documentation for Dedomenon","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":1312,"open_issues":0,"created_at":"2009-11-25T02:01:46-08:00","username":"dedomenon","name":"documentation","url":"https://github.com/dedomenon/documentation","private":false,"language":"Shell","pushed_at":"2010-03-10T06:51:37-08:00","created":"2009-11-25T02:01:46-08:00","forks":1,"has_issues":true,"master_branch":"gh-pages"},{"type":"repo","has_downloads":true,"homepage":"http://search.cpan.org/dist/Document/","owner":"gitpan","score":8.796675,"pushed":"2009-12-09T23:45:41-08:00","description":"Release history of Document","watchers":1,"has_wiki":true,"followers":1,"organization":"gitpan","fork":false,"size":552,"open_issues":0,"created_at":"2009-12-09T23:45:28-08:00","username":"gitpan","name":"Document","url":"https://github.com/gitpan/Document","private":false,"language":"Perl","pushed_at":"2009-12-09T23:45:41-08:00","created":"2009-12-09T23:45:28-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"plomb","score":8.796675,"pushed":null,"description":"Miscellaneous Public Documents","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2010-05-15T11:27:03-07:00","username":"plomb","name":"Documents","url":"https://github.com/plomb/Documents","language":"","private":false,"created":"2010-05-15T11:27:03-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"th0","score":8.796675,"pushed":null,"description":"documents task manager","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2011-01-03T02:02:10-08:00","username":"th0","name":"documents","url":"https://github.com/th0/documents","language":"","private":false,"created":"2011-01-03T02:02:10-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"oan","score":8.796675,"pushed":"2011-06-07T04:37:51-07:00","description":"Open Archive Network Documents","watchers":1,"has_wiki":true,"followers":1,"organization":"oan","fork":false,"size":456,"open_issues":0,"created_at":"2011-02-10T12:27:49-08:00","username":"oan","name":"documents","url":"https://github.com/oan/documents","language":"","private":false,"pushed_at":"2011-06-07T04:37:51-07:00","created":"2011-02-10T12:27:49-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"onixie","score":8.796675,"pushed":null,"description":"Study Documents and Notes","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2011-07-25T19:54:18-07:00","username":"onixie","name":"documents","url":"https://github.com/onixie/documents","language":"","private":false,"created":"2011-07-25T19:54:18-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"Andy2K11","score":8.796675,"pushed":"2011-10-13T04:29:04-07:00","description":"Working documents and drafts","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":108,"open_issues":0,"created_at":"2011-10-13T04:24:50-07:00","username":"Andy2K11","name":"Documentation","url":"https://github.com/Andy2K11/Documentation","language":"","private":false,"pushed_at":"2011-10-13T04:29:04-07:00","created":"2011-10-13T04:24:50-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"TouchLay","score":8.796675,"pushed":"2011-11-19T06:08:01-08:00","description":"TouchLay's Documentations","watchers":1,"has_wiki":true,"followers":1,"organization":"TouchLay","fork":false,"size":460,"open_issues":0,"created_at":"2011-11-07T07:12:05-08:00","username":"TouchLay","name":"Documentation","url":"https://github.com/TouchLay/Documentation","private":false,"language":"Python","pushed_at":"2011-11-19T06:08:01-08:00","created":"2011-11-07T07:12:05-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"chandershivdasani","score":8.796675,"pushed":"2011-12-07T13:41:59-08:00","description":"Some documents for helpful facts","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":96,"open_issues":0,"created_at":"2011-12-06T16:27:12-08:00","username":"chandershivdasani","name":"Documents","url":"https://github.com/chandershivdasani/Documents","language":"","private":false,"pushed_at":"2011-12-07T13:41:59-08:00","created":"2011-12-06T16:27:12-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"entouragesolutions","score":8.796675,"pushed":"2011-12-10T11:49:38-08:00","description":"For storing all documents","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":124,"open_issues":0,"created_at":"2011-12-08T00:59:16-08:00","username":"entouragesolutions","name":"Documents","url":"https://github.com/entouragesolutions/Documents","language":"","private":false,"pushed_at":"2011-12-10T11:49:38-08:00","created":"2011-12-08T00:59:16-08:00","forks":1,"has_issues":true,"master_branch":"gh-pages"},{"type":"repo","has_downloads":true,"homepage":"","owner":"mcgillcomp361","score":8.796675,"pushed":"2012-01-07T07:17:45-08:00","description":"Various documents for the report submissions","watchers":1,"has_wiki":true,"followers":1,"organization":"mcgillcomp361","fork":false,"size":168,"open_issues":0,"created_at":"2011-11-18T08:06:52-08:00","username":"mcgillcomp361","name":"Documents","url":"https://github.com/mcgillcomp361/Documents","language":"","private":false,"pushed_at":"2012-01-07T07:17:45-08:00","created":"2011-11-18T08:06:52-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"a-sk","score":8.796675,"pushed":"2012-02-18T06:27:45-08:00","description":"Sublimetext documentation writing plugin","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":276,"open_issues":0,"created_at":"2012-02-13T15:08:30-08:00","username":"a-sk","name":"Documenter","url":"https://github.com/a-sk/Documenter","private":false,"language":"Python","pushed_at":"2012-02-18T06:27:45-08:00","created":"2012-02-13T15:08:30-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"http://frankpzh.wordpress.com/","owner":"frankpzh","score":8.796675,"pushed":"2012-03-15T10:54:49-07:00","description":"Frank Pan's public document","watchers":1,"has_wiki":false,"followers":1,"fork":false,"size":3952,"open_issues":0,"created_at":"2010-08-15T02:20:35-07:00","username":"frankpzh","name":"document","url":"https://github.com/frankpzh/document","private":false,"language":"Emacs Lisp","pushed_at":"2012-03-15T10:54:49-07:00","created":"2010-08-15T02:20:35-07:00","forks":1,"has_issues":false},{"type":"repo","has_downloads":true,"homepage":"","owner":"TonyZhai","score":8.796675,"pushed":"2012-03-15T23:34:08-07:00","description":"Documentation for some useful","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":104,"open_issues":0,"created_at":"2012-03-14T06:54:06-07:00","username":"TonyZhai","name":"Documentation","url":"https://github.com/TonyZhai/Documentation","language":"","private":false,"pushed_at":"2012-03-15T23:34:08-07:00","created":"2012-03-14T06:54:06-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"railsfactory-shafi","score":8.796675,"pushed":null,"description":"RF reference Documents","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2012-03-28T20:47:49-07:00","username":"railsfactory-shafi","name":"Documents","url":"https://github.com/railsfactory-shafi/Documents","language":"","private":false,"created":"2012-03-28T20:47:49-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"athap","score":8.796675,"pushed":"2012-05-12T19:20:07-07:00","description":"This folder contains useful documents","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":412,"open_issues":0,"created_at":"2012-03-10T22:05:04-08:00","username":"athap","name":"Documents","url":"https://github.com/athap/Documents","language":"","private":false,"pushed_at":"2012-05-12T19:20:07-07:00","created":"2012-03-10T22:05:04-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"owner":"EucalyptusSystems","score":8.796675,"pushed":"2012-05-23T17:26:17-07:00","description":"Eucalyptus Product Documentation","watchers":1,"has_wiki":true,"followers":1,"organization":"EucalyptusSystems","fork":false,"size":0,"open_issues":0,"created_at":"2012-05-23T17:26:17-07:00","username":"EucalyptusSystems","name":"documentation","url":"https://github.com/EucalyptusSystems/documentation","language":"","private":false,"pushed_at":"2012-05-23T17:26:17-07:00","created":"2012-05-23T17:26:17-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"aaltsys.info","owner":"aaltsys","score":8.796675,"pushed":"2012-05-30T14:31:09-07:00","description":"AAltSys Documentation","watchers":1,"has_wiki":true,"followers":1,"organization":"aaltsys","fork":false,"size":2812,"open_issues":0,"created_at":"2011-09-27T13:23:39-07:00","username":"aaltsys","name":"documentation","url":"https://github.com/aaltsys/documentation","private":false,"language":"JavaScript","pushed_at":"2012-05-30T14:31:09-07:00","created":"2011-09-27T13:23:39-07:00","forks":1,"has_issues":true,"master_branch":"gh-pages"},{"type":"repo","has_downloads":true,"homepage":"","owner":"cordoval","score":8.796675,"pushed":"2012-01-27T21:23:16-08:00","description":"document component of zetacomponents","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":3748,"open_issues":0,"created_at":"2012-01-27T21:21:45-08:00","username":"cordoval","name":"Document","url":"https://github.com/cordoval/Document","private":false,"language":"PHP","pushed_at":"2012-01-27T21:23:16-08:00","created":"2012-01-27T21:21:45-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"owner":"ykiveish","score":8.796675,"pushed":"2012-06-18T02:10:32-07:00","description":"All important documents.","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2012-06-18T02:10:32-07:00","username":"ykiveish","name":"Documents","url":"https://github.com/ykiveish/Documents","language":"","private":false,"pushed_at":"2012-06-18T02:10:32-07:00","created":"2012-06-18T02:10:32-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"owner":"Ahmed-Elbagoury","score":8.796675,"pushed":"2012-06-20T09:34:33-07:00","description":"Graduation project documentation","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2012-06-20T09:34:33-07:00","username":"Ahmed-Elbagoury","name":"Documentation","url":"https://github.com/Ahmed-Elbagoury/Documentation","language":"","private":false,"pushed_at":"2012-06-20T09:34:33-07:00","created":"2012-06-20T09:34:33-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"3mara","score":8.796675,"pushed":"2012-06-28T20:41:16-07:00","description":"Graduation Project Documentation","watchers":1,"has_wiki":false,"followers":1,"fork":false,"size":29780,"open_issues":0,"created_at":"2012-04-15T08:49:26-07:00","username":"3mara","name":"Documentation","url":"https://github.com/3mara/Documentation","language":"","private":false,"pushed_at":"2012-06-28T20:41:16-07:00","created":"2012-04-15T08:49:26-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"yussidivnall","score":8.795818,"pushed":"2011-02-05T16:21:10-08:00","description":"Some misc documents I wrote","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":3036,"open_issues":0,"created_at":"2009-09-19T01:35:58-07:00","username":"yussidivnall","name":"Documents","url":"https://github.com/yussidivnall/Documents","language":"","private":false,"pushed_at":"2011-02-05T16:21:10-08:00","created":"2009-09-19T01:35:58-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"aronasorman","score":8.795818,"pushed":"2010-02-13T02:36:12-08:00","description":"A backup of my documents folder","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":1124,"open_issues":0,"created_at":"2010-02-01T03:52:08-08:00","username":"aronasorman","name":"documents","url":"https://github.com/aronasorman/documents","language":"","private":false,"pushed_at":"2010-02-13T02:36:12-08:00","created":"2010-02-01T03:52:08-08:00","forks":1,"has_issues":true,"master_branch":"1styear"},{"type":"repo","has_downloads":true,"homepage":"http://nerdsrescue.me/documents","owner":"nerdsrescueme","score":8.795818,"pushed":"2012-01-30T18:32:39-08:00","description":"Nerds, Rescue Me! development documents","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":668,"open_issues":0,"created_at":"2012-01-30T07:21:46-08:00","username":"nerdsrescueme","name":"Documents","url":"https://github.com/nerdsrescueme/Documents","private":false,"language":"PHP","pushed_at":"2012-01-30T18:32:39-08:00","created":"2012-01-30T07:21:46-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"http://jsfiddle.net/carylandholt/uCraE/","owner":"CaryLandholt","score":8.795818,"pushed":"2012-02-25T19:45:45-08:00","description":"Provides the document object as a module.","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":192,"open_issues":0,"created_at":"2011-11-21T19:26:17-08:00","username":"CaryLandholt","name":"document","url":"https://github.com/CaryLandholt/document","private":false,"language":"JavaScript","pushed_at":"2012-02-25T19:45:45-08:00","created":"2011-11-21T19:26:17-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"http://geomati.co","owner":"geomatico","score":8.795818,"pushed":"2012-04-11T08:26:33-07:00","description":"Geomati.co developer documentation","watchers":1,"has_wiki":true,"followers":1,"organization":"geomatico","fork":false,"size":1992,"open_issues":0,"created_at":"2012-01-31T03:06:00-08:00","username":"geomatico","name":"documentation","url":"https://github.com/geomatico/documentation","private":false,"language":"Python","pushed_at":"2012-04-11T08:26:33-07:00","created":"2012-01-31T03:06:00-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"alsuren","score":8.795818,"pushed":"2012-05-30T05:27:14-07:00","description":"Versioned Copy of my Documents folder","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":340,"open_issues":0,"created_at":"2012-01-25T08:33:35-08:00","username":"alsuren","name":"Documents","url":"https://github.com/alsuren/Documents","language":"","private":false,"pushed_at":"2012-05-30T05:27:14-07:00","created":"2012-01-25T08:33:35-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"mren","score":8.795818,"pushed":"2012-06-26T12:18:03-07:00","description":"personal documentation of tools I used","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":184,"open_issues":0,"created_at":"2012-03-29T00:45:10-07:00","username":"mren","name":"documentation","url":"https://github.com/mren/documentation","language":"","private":false,"pushed_at":"2012-06-26T12:18:03-07:00","created":"2012-03-29T00:45:10-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"owner":"webtsys","score":8.795818,"pushed":"2012-06-26T15:18:21-07:00","description":"A module for write basic documentation","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":132,"open_issues":0,"created_at":"2012-06-19T17:31:20-07:00","username":"webtsys","name":"documentation","url":"https://github.com/webtsys/documentation","private":false,"language":"PHP","pushed_at":"2012-06-26T15:18:21-07:00","created":"2012-06-19T17:31:20-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"owner":"androportal","score":8.795818,"pushed":"2012-06-29T03:28:54-07:00","description":"document all Aakash related work","watchers":1,"has_wiki":true,"followers":1,"organization":"androportal","fork":false,"size":204,"open_issues":0,"created_at":"2012-06-27T06:36:06-07:00","username":"androportal","name":"documentation","url":"https://github.com/androportal/documentation","language":"","private":false,"pushed_at":"2012-06-29T03:28:54-07:00","created":"2012-06-27T06:36:06-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"MobileRaggingPreventerApp","score":8.794961,"pushed":null,"description":"This project will have documentation to help in coding of the Mobile Application","watchers":1,"has_wiki":true,"followers":1,"organization":"MobileRaggingPreventerApp","fork":false,"size":0,"open_issues":0,"created_at":"2010-11-13T22:47:39-08:00","username":"MobileRaggingPreventerApp","name":"Documentation","url":"https://github.com/MobileRaggingPreventerApp/Documentation","language":"","private":false,"created":"2010-11-13T22:47:39-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"wclarkso","score":8.794961,"pushed":null,"description":"Important Documents that I want backed up forever.....","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2009-09-30T12:14:40-07:00","username":"wclarkso","name":"Documents","url":"https://github.com/wclarkso/Documents","language":"","private":false,"created":"2009-09-30T12:14:40-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"danmaclean","score":8.794961,"pushed":"2010-01-28T09:23:51-08:00","description":"HTML Documentation describing usage of Perl Modules","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":260,"open_issues":0,"created_at":"2009-10-29T12:15:28-07:00","username":"danmaclean","name":"Documents","url":"https://github.com/danmaclean/Documents","language":"","private":false,"pushed_at":"2010-01-28T09:23:51-08:00","created":"2009-10-29T12:15:28-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":false,"homepage":"http://projectaliter.com/documentation/","owner":"aliter","score":8.794961,"pushed":"2011-06-05T01:30:17-07:00","description":"Aliter's documentation on GitHub Pages.","watchers":1,"has_wiki":false,"followers":1,"organization":"aliter","fork":false,"size":352,"open_issues":0,"created_at":"2009-09-19T23:56:24-07:00","username":"aliter","name":"documentation","url":"https://github.com/aliter/documentation","private":false,"language":"Python","pushed_at":"2011-06-05T01:30:17-07:00","created":"2009-09-19T23:56:24-07:00","forks":1,"has_issues":false},{"type":"repo","has_downloads":true,"homepage":"","owner":"vexix","score":8.794961,"pushed":null,"description":"Documents that I work on with school, game development, etc.","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2010-03-14T14:18:09-07:00","username":"vexix","name":"Documents","url":"https://github.com/vexix/Documents","language":"","private":false,"created":"2010-03-14T14:18:09-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"LaurensRietveld","score":8.794961,"pushed":"2011-10-10T06:54:29-07:00","description":"All relevant documents for the open notebook science project","watchers":1,"has_wiki":false,"followers":1,"fork":false,"size":860,"open_issues":0,"created_at":"2011-09-28T04:52:35-07:00","username":"LaurensRietveld","name":"Documents","url":"https://github.com/LaurensRietveld/Documents","language":"","private":false,"pushed_at":"2011-10-10T06:54:29-07:00","created":"2011-09-28T04:52:35-07:00","forks":1,"has_issues":false},{"type":"repo","has_downloads":true,"homepage":"http://papyri.github.com/documentation","owner":"papyri","score":8.794961,"pushed":"2012-01-12T07:05:02-08:00","description":"Project-wide Documentation for Integrating Digital Papyrology","watchers":1,"has_wiki":true,"followers":1,"organization":"papyri","fork":false,"size":3692,"open_issues":0,"created_at":"2011-07-07T08:05:44-07:00","username":"papyri","name":"documentation","url":"https://github.com/papyri/documentation","private":false,"language":"Ruby","pushed_at":"2012-01-12T07:05:02-08:00","created":"2011-07-07T08:05:44-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"http://visualdiffer.com","owner":"visualdiffer","score":8.794961,"pushed":null,"description":"All documentation related to VisualDiffer","watchers":1,"has_wiki":true,"followers":1,"organization":"visualdiffer","fork":false,"size":0,"open_issues":0,"created_at":"2012-03-06T04:37:47-08:00","username":"visualdiffer","name":"documentation","url":"https://github.com/visualdiffer/documentation","language":"","private":false,"created":"2012-03-06T04:37:47-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"http://froodee.at","owner":"smtm","score":8.794961,"pushed":"2009-11-05T08:02:37-08:00","description":"copies of the legal document templates froodee uses","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2009-11-05T07:56:36-08:00","username":"smtm","name":"documents","url":"https://github.com/smtm/documents","language":"","private":false,"pushed_at":"2009-11-05T08:02:37-08:00","created":"2009-11-05T07:56:36-08:00","forks":1,"has_issues":false},{"type":"repo","has_downloads":true,"homepage":"","owner":"suthikshn","score":8.794104,"pushed":null,"description":"This will contain documentation for the project Open Source Virtual Campus Tour","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2010-11-13T22:44:20-08:00","username":"suthikshn","name":"Documentation","url":"https://github.com/suthikshn/Documentation","language":"","private":false,"created":"2010-11-13T22:44:20-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"craigplummer","score":8.794104,"pushed":null,"description":"A Rails Application for managing and presenting user documentation (Name to be decided)","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2011-08-30T12:44:05-07:00","username":"craigplummer","name":"documents","url":"https://github.com/craigplummer/documents","language":"","private":false,"created":"2011-08-30T12:44:05-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"http://pyrocms.com/documentation","owner":"ngonchan","score":8.794104,"pushed":"2010-12-06T02:13:21-08:00","description":"Documentation for the open-source project PyroCMS.","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":180,"open_issues":0,"created_at":"2010-12-08T17:39:06-08:00","username":"ngonchan","name":"documentation","url":"https://github.com/ngonchan/documentation","language":"","private":false,"pushed_at":"2010-12-06T02:13:21-08:00","created":"2010-12-08T17:39:06-08:00","forks":0,"has_issues":false},{"type":"repo","has_downloads":true,"homepage":"","owner":"AWooldrige","score":8.794104,"pushed":null,"description":"Testing using Hudson to build LaTeX documentation","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2012-02-09T04:44:05-08:00","username":"AWooldrige","name":"Documentation","url":"https://github.com/AWooldrige/Documentation","language":"","private":false,"created":"2012-02-09T04:44:05-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"erebos42","score":8.794104,"pushed":"2012-05-30T04:19:54-07:00","description":"Just some documents i wanted to share with me and maybe others...","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":3936,"open_issues":0,"created_at":"2012-03-19T06:29:27-07:00","username":"erebos42","name":"Documents","url":"https://github.com/erebos42/Documents","language":"","private":false,"pushed_at":"2012-05-30T04:19:54-07:00","created":"2012-03-19T06:29:27-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"owner":"c-team-2","score":8.794104,"pushed":"2012-06-12T16:33:48-07:00","description":"All the documentation that goes with the project: presentations, javadocs, API doc, etc...","watchers":1,"has_wiki":true,"followers":1,"organization":"c-team-2","fork":false,"size":1400,"open_issues":0,"created_at":"2012-05-11T16:14:05-07:00","username":"c-team-2","name":"documentation","url":"https://github.com/c-team-2/documentation","language":"","private":false,"pushed_at":"2012-06-12T16:33:48-07:00","created":"2012-05-11T16:14:05-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"http://social-igniter.com/documentation","owner":"socialigniter","score":8.793247,"pushed":"2011-10-01T13:21:51-07:00","description":"Documentation for the core Social-Igniter project. For specific Apps look at those repos","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":112,"open_issues":0,"created_at":"2011-07-05T12:47:30-07:00","username":"socialigniter","name":"documentation","url":"https://github.com/socialigniter/documentation","private":false,"language":"PHP","pushed_at":"2011-10-01T13:21:51-07:00","created":"2011-07-05T12:47:30-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"owner":"jackey","score":8.793247,"pushed":"2012-06-11T06:45:18-07:00","description":"record my works with document. So I can review them instead of searching.","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":324,"open_issues":0,"created_at":"2012-04-19T20:12:21-07:00","username":"jackey","name":"documents","url":"https://github.com/jackey/documents","private":false,"language":"PHP","pushed_at":"2012-06-11T06:45:18-07:00","created":"2012-04-19T20:12:21-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"remomueller","score":8.79239,"pushed":"2012-06-06T07:26:21-07:00","description":"Documentation for setting up servers to host Rails Applications. Servers: CentOS, Mac OS X, Windows. Tools: Git, Apache, MySQL, Node.js and CoffeeScript","watchers":1,"has_wiki":false,"followers":1,"fork":false,"size":288,"open_issues":0,"created_at":"2012-02-15T10:53:20-08:00","username":"remomueller","name":"documentation","url":"https://github.com/remomueller/documentation","language":"","private":false,"pushed_at":"2012-06-06T07:26:21-07:00","created":"2012-02-15T10:53:20-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"our.umbraco.org/documentation","owner":"umbraco","score":8.792234,"pushed":"2012-06-28T01:42:18-07:00","description":"The Umbraco Documentation Project","watchers":83,"has_wiki":true,"followers":83,"organization":"umbraco","fork":false,"size":264,"open_issues":2,"created_at":"2012-03-09T01:27:46-08:00","username":"umbraco","name":"Umbraco5Docs","url":"https://github.com/umbraco/Umbraco5Docs","language":"","private":false,"pushed_at":"2012-06-28T01:42:18-07:00","created":"2012-03-09T01:27:46-08:00","forks":38,"has_issues":true,"master_branch":"5.0.1"},{"type":"repo","has_downloads":true,"homepage":"","owner":"onewheelskyward","score":8.789819,"pushed":"2010-09-27T00:23:19-07:00","description":"","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":92,"open_issues":0,"created_at":"2010-09-26T16:26:25-07:00","username":"onewheelskyward","name":"documents","url":"https://github.com/onewheelskyward/documents","private":false,"language":"PHP","pushed_at":"2010-09-27T00:23:19-07:00","created":"2010-09-26T16:26:25-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"abdulghaffarpk","score":8.789819,"pushed":null,"description":"My Docs","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2010-10-23T02:41:47-07:00","username":"abdulghaffarpk","name":"Documents","url":"https://github.com/abdulghaffarpk/Documents","language":"","private":false,"created":"2010-10-23T02:41:47-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"williamgkeys.com","owner":"williamkeys","score":8.789819,"pushed":"2011-06-20T13:14:02-07:00","description":"","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":2876,"open_issues":0,"created_at":"2011-04-17T14:52:52-07:00","username":"williamkeys","name":"Documentation","url":"https://github.com/williamkeys/Documentation","private":false,"language":"VimL","pushed_at":"2011-06-20T13:14:02-07:00","created":"2011-04-17T14:52:52-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"wangdeshui","score":8.789819,"pushed":null,"description":"","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2011-06-27T19:29:03-07:00","username":"wangdeshui","name":"documents","url":"https://github.com/wangdeshui/documents","language":"","private":false,"created":"2011-06-27T19:29:03-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"Elgg","score":8.789819,"pushed":"2011-06-13T17:28:16-07:00","description":"","watchers":1,"has_wiki":true,"followers":1,"organization":"Elgg","fork":false,"size":328,"open_issues":0,"created_at":"2011-06-13T17:25:44-07:00","username":"Elgg","name":"document","url":"https://github.com/Elgg/document","private":false,"language":"PHP","pushed_at":"2011-06-13T17:28:16-07:00","created":"2011-06-13T17:25:44-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"vincentp","score":8.789819,"pushed":"2011-07-07T02:53:23-07:00","description":"","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":100,"open_issues":0,"created_at":"2011-07-07T02:50:39-07:00","username":"vincentp","name":"documents","url":"https://github.com/vincentp/documents","language":"","private":false,"pushed_at":"2011-07-07T02:53:23-07:00","created":"2011-07-07T02:50:39-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"horntau","score":8.789819,"pushed":null,"description":"mydocument","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2011-07-11T00:35:32-07:00","username":"horntau","name":"document","url":"https://github.com/horntau/document","language":"","private":false,"created":"2011-07-11T00:35:32-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"aodag","score":8.789819,"pushed":null,"description":"","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2011-07-15T10:08:45-07:00","username":"aodag","name":"documents","url":"https://github.com/aodag/documents","language":"","private":false,"created":"2011-07-15T10:08:45-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"iineed","score":8.789819,"pushed":"2011-09-18T12:55:03-07:00","description":"","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":124,"open_issues":0,"created_at":"2011-09-08T10:11:39-07:00","username":"iineed","name":"documentation","url":"https://github.com/iineed/documentation","language":"","private":false,"pushed_at":"2011-09-18T12:55:03-07:00","created":"2011-09-08T10:11:39-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"Progressbar","score":8.789819,"pushed":null,"description":"Dokumenty a subory verejne dostupne a zverejnovane v Progressbar hackerspace","watchers":1,"has_wiki":true,"followers":1,"organization":"Progressbar","fork":false,"size":0,"open_issues":0,"created_at":"2011-09-28T13:14:45-07:00","username":"Progressbar","name":"Documents","url":"https://github.com/Progressbar/Documents","language":"","private":false,"created":"2011-09-28T13:14:45-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"http://d.hatena.ne.jp/yuroyoro/","owner":"yuroyoro","score":8.789819,"pushed":"2008-11-18T18:34:42-08:00","description":"","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2008-11-18T18:32:04-08:00","username":"yuroyoro","name":"documents","url":"https://github.com/yuroyoro/documents","language":"","private":false,"pushed_at":"2008-11-18T18:34:42-08:00","created":"2008-11-18T18:32:04-08:00","forks":0,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"synn","score":8.789819,"pushed":"2009-01-30T01:07:14-08:00","description":"","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":516,"open_issues":0,"created_at":"2008-11-24T04:08:53-08:00","username":"synn","name":"document","url":"https://github.com/synn/document","language":"","private":false,"pushed_at":"2009-01-30T01:07:14-08:00","created":"2008-11-24T04:08:53-08:00","forks":0,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"RaviVaranasi","score":8.789819,"pushed":null,"description":"Container for resume, cover letter etc","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2009-06-14T05:18:51-07:00","username":"RaviVaranasi","name":"Documents","url":"https://github.com/RaviVaranasi/Documents","language":"","private":false,"created":"2009-06-14T05:18:51-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"mrhaydel","score":8.789819,"pushed":null,"description":"My docs for stuff.","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2009-10-27T06:13:38-07:00","username":"mrhaydel","name":"Documentation","url":"https://github.com/mrhaydel/Documentation","language":"","private":false,"created":"2009-10-27T06:13:38-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"fiedlert","score":8.789819,"pushed":"2009-08-20T06:38:17-07:00","description":"Bits of cruft and whitespace that I pick up","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":240,"open_issues":0,"created_at":"2009-08-14T05:41:20-07:00","username":"fiedlert","name":"Documentation","url":"https://github.com/fiedlert/Documentation","private":false,"language":"Shell","pushed_at":"2009-08-20T06:38:17-07:00","created":"2009-08-14T05:41:20-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"jardapoliak","score":8.789819,"pushed":"2010-08-22T12:05:55-07:00","description":"","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":92,"open_issues":0,"created_at":"2010-08-22T10:36:08-07:00","username":"jardapoliak","name":"documentation","url":"https://github.com/jardapoliak/documentation","language":"","private":false,"pushed_at":"2010-08-22T12:05:55-07:00","created":"2010-08-22T10:36:08-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"zjemcichleb.documentation","owner":"zjemcichleb","score":8.789819,"pushed":null,"description":"doc","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2010-08-26T03:38:09-07:00","username":"zjemcichleb","name":"Documentation","url":"https://github.com/zjemcichleb/Documentation","language":"","private":false,"created":"2010-08-26T03:38:09-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"jackhouse","score":8.789819,"pushed":"2010-12-13T23:12:08-08:00","description":"雑多なドキュメントのリポジトリ","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":108,"open_issues":0,"created_at":"2010-12-13T19:01:47-08:00","username":"jackhouse","name":"document","url":"https://github.com/jackhouse/document","language":"","private":false,"pushed_at":"2010-12-13T23:12:08-08:00","created":"2010-12-13T19:01:47-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"scottjacobsen","score":8.789819,"pushed":null,"description":"","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2010-12-28T09:31:41-08:00","username":"scottjacobsen","name":"documentation","url":"https://github.com/scottjacobsen/documentation","language":"","private":false,"created":"2010-12-28T09:31:41-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"Amivono","score":8.789819,"pushed":"2011-09-09T15:21:40-07:00","description":"","watchers":1,"has_wiki":true,"followers":1,"organization":"Amivono","fork":false,"size":228,"open_issues":0,"created_at":"2011-02-26T08:11:15-08:00","username":"Amivono","name":"documents","url":"https://github.com/Amivono/documents","language":"","private":false,"pushed_at":"2011-09-09T15:21:40-07:00","created":"2011-02-26T08:11:15-08:00","forks":0,"has_issues":false},{"type":"repo","has_downloads":true,"homepage":"","owner":"cessor","score":8.789819,"pushed":null,"description":"","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2011-03-02T11:02:26-08:00","username":"cessor","name":"documents","url":"https://github.com/cessor/documents","language":"","private":false,"created":"2011-03-02T11:02:26-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"kshitij22","score":8.789819,"pushed":"2011-02-28T21:13:51-08:00","description":"","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":200,"open_issues":0,"created_at":"2011-02-28T11:32:33-08:00","username":"kshitij22","name":"Documentations","url":"https://github.com/kshitij22/Documentations","private":false,"language":"Java","pushed_at":"2011-02-28T21:13:51-08:00","created":"2011-02-28T11:32:33-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"solea","score":8.789819,"pushed":null,"description":"cument","watchers":1,"has_wiki":false,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2011-03-27T20:28:06-07:00","username":"solea","name":"document","url":"https://github.com/solea/document","language":"","private":false,"created":"2011-03-27T20:28:06-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"circlsocial","score":8.789819,"pushed":null,"description":"","watchers":1,"has_wiki":true,"followers":1,"organization":"circlsocial","fork":false,"size":0,"open_issues":0,"created_at":"2011-03-28T15:55:48-07:00","username":"circlsocial","name":"documentation","url":"https://github.com/circlsocial/documentation","language":"","private":false,"created":"2011-03-28T15:55:48-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"macmade","score":8.789819,"pushed":"2011-04-03T01:08:59-07:00","description":"","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":376,"open_issues":0,"created_at":"2011-04-03T01:06:51-07:00","username":"macmade","name":"Documentation","url":"https://github.com/macmade/Documentation","language":"","private":false,"pushed_at":"2011-04-03T01:08:59-07:00","created":"2011-04-03T01:06:51-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"IgoR0604","score":8.789819,"pushed":"2011-04-08T10:22:03-07:00","description":"Lab02","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":121,"open_issues":0,"created_at":"2011-04-06T14:02:09-07:00","username":"IgoR0604","name":"Document","url":"https://github.com/IgoR0604/Document","language":"","private":false,"pushed_at":"2011-04-08T10:22:03-07:00","created":"2011-04-06T14:02:09-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"mayurp","score":8.789819,"pushed":"2011-04-06T14:47:16-07:00","description":"","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":124,"open_issues":0,"created_at":"2011-04-06T14:46:32-07:00","username":"mayurp","name":"Documents","url":"https://github.com/mayurp/Documents","language":"","private":false,"pushed_at":"2011-04-06T14:47:16-07:00","created":"2011-04-06T14:46:32-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"Amonaum","score":8.789819,"pushed":"2011-04-13T05:52:07-07:00","description":"","watchers":1,"has_wiki":true,"followers":1,"organization":"Amonaum","fork":false,"size":108,"open_issues":0,"created_at":"2011-04-13T05:46:35-07:00","username":"Amonaum","name":"Documents","url":"https://github.com/Amonaum/Documents","language":"","private":false,"pushed_at":"2011-04-13T05:52:07-07:00","created":"2011-04-13T05:46:35-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"sunshinemyson","score":8.789819,"pushed":"2011-09-02T01:31:05-07:00","description":"words","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":148,"open_issues":0,"created_at":"2011-04-24T19:26:49-07:00","username":"sunshinemyson","name":"Document","url":"https://github.com/sunshinemyson/Document","language":"","private":false,"pushed_at":"2011-09-02T01:31:05-07:00","created":"2011-04-24T19:26:49-07:00","forks":1,"has_issues":true}]} + diff --git a/lib/github/tests/ReplayData/Github.testLegacySearchReposWithLanguage.txt b/lib/github/tests/ReplayData/Github.testLegacySearchReposWithLanguage.txt new file mode 100644 index 0000000000..1fa774be30 --- /dev/null +++ b/lib/github/tests/ReplayData/Github.testLegacySearchReposWithLanguage.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/legacy/repos/search/document?language=Python +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '58730'), ('x-ratelimit-remaining', '4997'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"e5b8b7c4009c469b7d50d0ebe243fbcd"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Fri, 29 Jun 2012 11:37:24 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"repositories":[{"type":"repo","created_at":"2010-05-09T21:46:06-07:00","score":81.79961,"owner":"ipython","followers":834,"open_issues":289,"organization":"ipython","username":"ipython","created":"2010-05-09T21:46:06-07:00","integrate_branch":"master","homepage":"http://ipython.org","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-28T16:29:38-07:00","forks":282,"fork":false,"size":1204,"name":"ipython","url":"https://github.com/ipython/ipython","description":"Official repository for IPython itself. Other repos in the IPython organization contain things like the website, documentation builds, etc.","private":false,"pushed":"2012-06-28T16:29:38-07:00","watchers":834,"has_wiki":false},{"type":"repo","created_at":"2009-11-22T15:28:24-08:00","score":81.39696,"owner":"hmarr","followers":829,"open_issues":72,"username":"hmarr","created":"2009-11-22T15:28:24-08:00","integrate_branch":"dev","homepage":"http://mongoengine.org","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-23T14:24:37-07:00","forks":212,"fork":false,"size":376,"name":"mongoengine","url":"https://github.com/hmarr/mongoengine","description":"A Python Object-Document-Mapper for working with MongoDB","private":false,"pushed":"2012-06-23T14:24:37-07:00","watchers":829,"has_wiki":false},{"type":"repo","created_at":"2011-05-05T11:59:49-07:00","score":38.422153,"owner":"apresta","followers":389,"open_issues":2,"username":"apresta","created":"2011-05-05T11:59:49-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-08-11T05:43:52-07:00","forks":19,"fork":false,"size":140,"name":"tagger","url":"https://github.com/apresta/tagger","description":"A Python module for extracting relevant tags from text documents.","private":false,"pushed":"2011-08-11T05:43:52-07:00","watchers":389,"has_wiki":true},{"type":"repo","created_at":"2010-06-29T00:02:31-07:00","score":25.798784,"owner":"fitzgen","followers":259,"open_issues":13,"username":"fitzgen","created":"2010-06-29T00:02:31-07:00","homepage":"http://fitzgen.github.com/pycco/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-23T16:07:26-07:00","forks":61,"fork":false,"size":156,"name":"pycco","url":"https://github.com/fitzgen/pycco","description":"Literate-style documentation generator.","private":false,"pushed":"2012-06-23T16:07:26-07:00","watchers":259,"has_wiki":true},{"type":"repo","created_at":"2011-02-03T08:37:15-08:00","score":15.89314,"owner":"rosarior","followers":159,"open_issues":8,"username":"rosarior","created":"2011-02-03T08:37:15-08:00","homepage":"http://www.mayan-edms.com","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-28T14:11:59-07:00","forks":31,"fork":false,"size":204,"name":"mayan","url":"https://github.com/rosarior/mayan","description":"Open source, Django based DMS (document management system) with custom metadata indexing, file serving integration, OCR capabilities, document versioning and electronic signature verification.","private":false,"pushed":"2012-06-28T14:11:59-07:00","watchers":159,"has_wiki":true},{"type":"repo","created_at":"2010-04-05T15:03:29-07:00","score":15.098347,"owner":"doctrine","followers":110,"open_issues":13,"organization":"doctrine","username":"doctrine","created":"2010-04-05T15:03:29-07:00","homepage":"http://www.doctrine-project.org","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-28T06:52:05-07:00","forks":79,"fork":false,"size":224,"name":"orm-documentation","url":"https://github.com/doctrine/orm-documentation","description":"Doctrine documentation","private":false,"pushed":"2012-06-28T06:52:05-07:00","watchers":110,"has_wiki":true},{"type":"repo","created_at":"2010-09-23T02:34:18-07:00","score":15.06705,"owner":"jsfiddle","followers":149,"open_issues":81,"organization":"jsfiddle","username":"jsfiddle","created":"2010-09-23T02:34:18-07:00","homepage":"doc.jsfiddle.net","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-05-31T04:44:25-07:00","forks":36,"fork":false,"size":132,"name":"jsfiddle-docs-alpha","url":"https://github.com/jsfiddle/jsfiddle-docs-alpha","description":"End user documentation for jsFiddle","private":false,"pushed":"2012-05-31T04:44:25-07:00","watchers":149,"has_wiki":true},{"type":"repo","created_at":"2009-01-29T00:22:07-08:00","score":13.821274,"owner":"astraw","followers":138,"open_issues":19,"username":"astraw","created":"2009-01-29T00:22:07-08:00","homepage":"http://pypi.python.org/pypi/stdeb","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2010-07-30T02:08:17-07:00","forks":24,"fork":false,"size":1176,"name":"stdeb","url":"https://github.com/astraw/stdeb","description":"produces Debian source packages from Python packages (see README.rst for full documentation)","private":false,"pushed":"2010-07-30T02:08:17-07:00","watchers":138,"has_wiki":false},{"type":"repo","created_at":"2009-04-01T04:33:13-07:00","score":12.745697,"owner":"jessegrosjean","followers":86,"open_issues":1,"username":"jessegrosjean","created":"2009-04-01T04:33:13-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-11-03T10:06:54-07:00","forks":12,"fork":false,"size":120,"name":"documents.com","url":"https://github.com/jessegrosjean/documents.com","description":"","private":false,"pushed":"2011-11-03T10:06:54-07:00","watchers":86,"has_wiki":true},{"type":"repo","created_at":"2009-02-02T00:34:22-08:00","score":11.184184,"owner":"mattball","followers":111,"open_issues":6,"username":"mattball","created":"2009-02-02T00:34:22-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-10-19T12:45:49-07:00","forks":8,"fork":false,"size":1372,"name":"doxyclean","url":"https://github.com/mattball/doxyclean","description":"A script to convert Doxygen output to resemble Apple's AppKit documentation","private":false,"pushed":"2011-10-19T12:45:49-07:00","watchers":111,"has_wiki":true},{"type":"repo","created_at":"2010-02-26T05:48:00-08:00","score":9.816803,"owner":"peterbe","followers":97,"open_issues":2,"username":"peterbe","created":"2010-02-26T05:48:00-08:00","integrate_branch":"master","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-09-01T07:58:42-07:00","forks":10,"fork":false,"size":488,"name":"django-mongokit","url":"https://github.com/peterbe/django-mongokit","description":"Bridging Django to MongoDB with the MongoKit ODM (Object Document Mapper)","private":false,"pushed":"2011-09-01T07:58:42-07:00","watchers":97,"has_wiki":true},{"type":"repo","created_at":"2011-09-23T13:57:35-07:00","score":9.304519,"owner":"mongodb","followers":90,"open_issues":0,"organization":"mongodb","username":"mongodb","created":"2011-09-23T13:57:35-07:00","homepage":"http://docs.mongodb.org","has_issues":false,"has_downloads":true,"language":"Python","pushed_at":"2012-06-28T13:04:39-07:00","forks":58,"fork":false,"size":676,"name":"docs","url":"https://github.com/mongodb/docs","description":"The MongoDB Documentation Project Source.","private":false,"pushed":"2012-06-28T13:04:39-07:00","watchers":90,"has_wiki":false},{"type":"repo","created_at":"2012-04-18T12:35:38-07:00","score":9.285026,"owner":"enStratus","followers":6,"open_issues":1,"organization":"enStratus","username":"enStratus","created":"2012-04-18T12:35:38-07:00","homepage":"http://docs.enstratus.com","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-12T20:17:53-07:00","forks":2,"fork":false,"size":376,"name":"documentation","url":"https://github.com/enStratus/documentation","description":"enStratus Documentation","private":false,"pushed":"2012-06-12T20:17:53-07:00","watchers":6,"has_wiki":true},{"type":"repo","created_at":"2011-12-01T09:58:56-08:00","score":9.283312,"owner":"Sylius","followers":6,"open_issues":0,"organization":"Sylius","username":"Sylius","created":"2011-12-01T09:58:56-08:00","homepage":"Sylius.org","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-05-13T02:36:33-07:00","forks":2,"fork":false,"size":136,"name":"Documentation","url":"https://github.com/Sylius/Documentation","description":"Official documentation repository, hosted on readthedocs.org.","private":false,"pushed":"2012-05-13T02:36:33-07:00","watchers":6,"has_wiki":false},{"type":"repo","created_at":"2011-05-05T09:22:01-07:00","score":8.992015,"owner":"deskmetrics","followers":3,"open_issues":0,"organization":"deskmetrics","username":"deskmetrics","created":"2011-05-05T09:22:01-07:00","homepage":"http://docs.deskmetrics.com/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-08-08T08:16:56-07:00","forks":3,"fork":false,"size":254,"name":"Documentation","url":"https://github.com/deskmetrics/Documentation","description":"DeskMetrics Documentation","private":false,"pushed":"2011-08-08T08:16:56-07:00","watchers":3,"has_wiki":true},{"type":"repo","created_at":"2011-03-24T08:18:23-07:00","score":8.992015,"owner":"pika","followers":3,"open_issues":0,"organization":"pika","username":"pika","created":"2011-03-24T08:18:23-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-03-28T22:15:05-07:00","forks":1,"fork":false,"size":344,"name":"documentation","url":"https://github.com/pika/documentation","description":"Pika Sphinx documentation","private":false,"pushed":"2011-03-28T22:15:05-07:00","watchers":3,"has_wiki":true},{"type":"repo","created_at":"2008-12-16T02:58:36-08:00","score":8.893489,"owner":"wodzupl20","followers":2,"open_issues":0,"username":"wodzupl20","created":"2008-12-16T02:58:36-08:00","homepage":"http://www.xmpp.org/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2008-12-02T09:11:15-08:00","forks":4,"fork":false,"size":26624,"name":"documentation","url":"https://github.com/wodzupl20/documentation","description":"Mirror of the main Documentation Subversion repository","private":false,"pushed":"2008-12-02T09:11:15-08:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2011-07-03T13:30:47-07:00","score":8.887489,"owner":"amotl","followers":2,"open_issues":0,"username":"amotl","created":"2011-07-03T13:30:47-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-03-19T03:09:46-07:00","forks":1,"fork":false,"size":176,"name":"documents","url":"https://github.com/amotl/documents","description":"This and that. Non-blocking, asynchronous I/O; Gevent; Python","private":false,"pushed":"2012-03-19T03:09:46-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2011-11-20T11:56:52-08:00","score":8.798389,"owner":"zipcodeman","followers":1,"open_issues":0,"username":"zipcodeman","created":"2011-11-20T11:56:52-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-05-01T19:54:17-07:00","forks":1,"fork":false,"size":188,"name":"Documents","url":"https://github.com/zipcodeman/Documents","description":"My Documents","private":false,"pushed":"2012-05-01T19:54:17-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-05-26T00:58:15-07:00","score":8.798389,"owner":"sposs","followers":1,"open_issues":0,"username":"sposs","created":"2011-05-26T00:58:15-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-07T06:38:33-07:00","forks":1,"fork":false,"size":74696,"name":"Documents","url":"https://github.com/sposs/Documents","description":"My documents","private":false,"pushed":"2012-06-07T06:38:33-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-11-07T07:12:05-08:00","score":8.796675,"owner":"TouchLay","followers":1,"open_issues":0,"organization":"TouchLay","username":"TouchLay","created":"2011-11-07T07:12:05-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-11-19T06:08:01-08:00","forks":1,"fork":false,"size":460,"name":"Documentation","url":"https://github.com/TouchLay/Documentation","description":"TouchLay's Documentations","private":false,"pushed":"2011-11-19T06:08:01-08:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2012-02-13T15:08:30-08:00","score":8.796675,"owner":"a-sk","followers":1,"open_issues":0,"username":"a-sk","created":"2012-02-13T15:08:30-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-02-18T06:27:45-08:00","forks":1,"fork":false,"size":276,"name":"Documenter","url":"https://github.com/a-sk/Documenter","description":"Sublimetext documentation writing plugin","private":false,"pushed":"2012-02-18T06:27:45-08:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2012-01-31T03:06:00-08:00","score":8.795818,"owner":"geomatico","followers":1,"open_issues":0,"organization":"geomatico","username":"geomatico","created":"2012-01-31T03:06:00-08:00","homepage":"http://geomati.co","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-04-11T08:26:33-07:00","forks":1,"fork":false,"size":1992,"name":"documentation","url":"https://github.com/geomatico/documentation","description":"Geomati.co developer documentation","private":false,"pushed":"2012-04-11T08:26:33-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2009-09-19T23:56:24-07:00","score":8.794961,"owner":"aliter","followers":1,"open_issues":0,"organization":"aliter","username":"aliter","created":"2009-09-19T23:56:24-07:00","homepage":"http://projectaliter.com/documentation/","has_issues":false,"has_downloads":false,"language":"Python","pushed_at":"2011-06-05T01:30:17-07:00","forks":1,"fork":false,"size":352,"name":"documentation","url":"https://github.com/aliter/documentation","description":"Aliter's documentation on GitHub Pages.","private":false,"pushed":"2011-06-05T01:30:17-07:00","watchers":1,"has_wiki":false},{"type":"repo","created_at":"2012-01-02T06:11:35-08:00","score":8.789819,"owner":"plaguemorin","followers":1,"open_issues":0,"username":"plaguemorin","created":"2012-01-02T06:11:35-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-01-03T05:23:05-08:00","forks":1,"fork":false,"size":188,"name":"Documents","url":"https://github.com/plaguemorin/Documents","description":"","private":false,"pushed":"2012-01-03T05:23:05-08:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-03-10T04:52:36-08:00","score":8.789819,"owner":"masasuzu","followers":1,"open_issues":0,"username":"masasuzu","created":"2011-03-10T04:52:36-08:00","homepage":"http://masasuzu.github.com/document/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-03T04:17:47-07:00","forks":1,"fork":false,"size":3056,"name":"document","url":"https://github.com/masasuzu/document","description":"いろいろな資料","private":false,"pushed":"2012-06-03T04:17:47-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-05-10T09:09:22-07:00","score":8.789819,"owner":"pborky","followers":1,"open_issues":0,"username":"pborky","created":"2011-05-10T09:09:22-07:00","homepage":"http://www.pborky.sk/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-06T12:59:26-07:00","forks":1,"fork":false,"size":4868,"name":"documents","url":"https://github.com/pborky/documents","description":"","private":false,"pushed":"2012-06-06T12:59:26-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2010-12-25T21:21:21-08:00","score":8.694565,"owner":"Pylons","followers":82,"open_issues":0,"organization":"Pylons","username":"Pylons","created":"2010-12-25T21:21:21-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-17T00:14:17-07:00","forks":36,"fork":false,"size":216,"name":"pyramid_cookbook","url":"https://github.com/Pylons/pyramid_cookbook","description":"Pyramid cookbook recipes (documentation)","private":false,"pushed":"2012-06-17T00:14:17-07:00","watchers":82,"has_wiki":true},{"type":"repo","created_at":"2011-04-11T10:22:04-07:00","score":8.449423,"owner":"dagwieers","followers":83,"open_issues":18,"username":"dagwieers","created":"2011-04-11T10:22:04-07:00","homepage":"http://dag.wieers.com/home-made/unoconv/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-05-22T06:45:00-07:00","forks":21,"fork":false,"size":474,"name":"unoconv","url":"https://github.com/dagwieers/unoconv","description":"Universal Office Converter - Convert between any document format supported by LibreOffice/OpenOffice.","private":false,"pushed":"2012-05-22T06:45:00-07:00","watchers":83,"has_wiki":true},{"type":"repo","created_at":"2010-05-20T13:20:33-07:00","score":7.965925,"owner":"doctrine","followers":37,"open_issues":2,"organization":"doctrine","username":"doctrine","created":"2010-05-20T13:20:33-07:00","homepage":"http://www.doctrine-project.org/projects/mongodb_odm","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-27T11:18:06-07:00","forks":27,"fork":false,"size":188,"name":"mongodb-odm-documentation","url":"https://github.com/doctrine/mongodb-odm-documentation","description":"Doctrine MongoDB Object Document Mapper (ODM) Documentation","private":false,"pushed":"2012-06-27T11:18:06-07:00","watchers":37,"has_wiki":true},{"type":"repo","created_at":"2011-07-18T13:29:40-07:00","score":7.961073,"owner":"wallix","followers":78,"open_issues":0,"organization":"wallix","username":"wallix","created":"2011-07-18T13:29:40-07:00","homepage":"http://www.wallix.org/pylogsparser-project/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-13T09:15:09-07:00","forks":7,"fork":false,"size":160,"name":"pylogsparser","url":"https://github.com/wallix/pylogsparser","description":"Library for Log parsing in Python - get the documentation at http://wallix.github.com/pylogsparser/","private":false,"pushed":"2012-06-13T09:15:09-07:00","watchers":78,"has_wiki":true},{"type":"repo","created_at":"2010-07-06T11:28:10-07:00","score":7.4766574,"owner":"cguardia","followers":32,"open_issues":0,"username":"cguardia","created":"2010-07-06T11:28:10-07:00","homepage":"http://zodbdocs.blogspot.com","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-09-26T17:05:09-07:00","forks":7,"fork":false,"size":252,"name":"ZODB-Documentation","url":"https://github.com/cguardia/ZODB-Documentation","description":"Community supported documentation for the Z Object Data Base","private":false,"pushed":"2011-09-26T17:05:09-07:00","watchers":32,"has_wiki":true},{"type":"repo","created_at":"2011-05-19T22:57:28-07:00","score":7.4487886,"owner":"bigjason","followers":72,"open_issues":3,"username":"bigjason","created":"2011-05-19T22:57:28-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-02-25T00:39:21-08:00","forks":2,"fork":false,"size":116,"name":"datatree","url":"https://github.com/bigjason/datatree","description":"Pythonic, low noise structured document authoring","private":false,"pushed":"2012-02-25T00:39:21-08:00","watchers":72,"has_wiki":true},{"type":"repo","created_at":"2012-04-17T12:39:42-07:00","score":7.4487886,"owner":"jokull","followers":71,"open_issues":0,"username":"jokull","created":"2012-04-17T12:39:42-07:00","homepage":"http://calepin.co/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-26T07:12:28-07:00","forks":10,"fork":false,"size":124,"name":"calepin","url":"https://github.com/jokull/calepin","description":"Publish your markdown documents with the Dropbox API","private":false,"pushed":"2012-06-26T07:12:28-07:00","watchers":71,"has_wiki":true},{"type":"repo","created_at":"2009-09-05T08:58:24-07:00","score":6.732916,"owner":"jessegrosjean","followers":30,"open_issues":0,"username":"jessegrosjean","created":"2009-09-05T08:58:24-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2010-03-10T12:52:23-08:00","forks":5,"fork":false,"size":504,"name":"Documents.com.client.python","url":"https://github.com/jessegrosjean/Documents.com.client.python","description":"","private":false,"pushed":"2010-03-10T12:52:23-08:00","watchers":30,"has_wiki":true},{"type":"repo","created_at":"2008-07-19T08:52:59-07:00","score":6.6793957,"owner":"FooBarWidget","followers":64,"open_issues":0,"username":"FooBarWidget","created":"2008-07-19T08:52:59-07:00","homepage":"https://github.com/FooBarWidget/mizuho","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-05-28T03:21:35-07:00","forks":2,"fork":false,"size":164,"name":"mizuho","url":"https://github.com/FooBarWidget/mizuho","description":"Documentation formatting tool. Converts Asciidoc input into nicely formatted HTML.","private":false,"pushed":"2012-05-28T03:21:35-07:00","watchers":64,"has_wiki":true},{"type":"repo","created_at":"2010-04-06T11:12:45-07:00","score":6.5993414,"owner":"doctrine","followers":23,"open_issues":3,"organization":"doctrine","username":"doctrine","created":"2010-04-06T11:12:45-07:00","homepage":"http://www.doctrine-project.org","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-16T01:00:00-07:00","forks":11,"fork":false,"size":180,"name":"doctrine1-documentation","url":"https://github.com/doctrine/doctrine1-documentation","description":"Documentation for Doctrine 1","private":false,"pushed":"2012-06-16T01:00:00-07:00","watchers":23,"has_wiki":true},{"type":"repo","created_at":"2011-09-29T00:21:08-07:00","score":6.585479,"owner":"kemayo","followers":34,"open_issues":5,"username":"kemayo","created":"2011-09-29T00:21:08-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-06T01:38:50-07:00","forks":9,"fork":false,"size":132,"name":"sublime-text-2-goto-documentation","url":"https://github.com/kemayo/sublime-text-2-goto-documentation","description":"Sublime Text 2 plugin to go to documentation","private":false,"pushed":"2012-06-06T01:38:50-07:00","watchers":34,"has_wiki":true},{"type":"repo","created_at":"2010-04-07T11:57:56-07:00","score":6.2078037,"owner":"doctrine","followers":19,"open_issues":0,"organization":"doctrine","username":"doctrine","created":"2010-04-07T11:57:56-07:00","homepage":"http://www.doctrine-project.org","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-25T01:33:38-07:00","forks":10,"fork":false,"size":156,"name":"dbal-documentation","url":"https://github.com/doctrine/dbal-documentation","description":"Documentation files for the Doctrine 2 DBAL","private":false,"pushed":"2012-06-25T01:33:38-07:00","watchers":19,"has_wiki":true},{"type":"repo","created_at":"2009-12-15T11:18:56-08:00","score":5.9837384,"owner":"bradfitz","followers":56,"open_issues":0,"username":"bradfitz","created":"2009-12-15T11:18:56-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-08-11T10:56:35-07:00","forks":6,"fork":false,"size":276,"name":"scanningcabinet","url":"https://github.com/bradfitz/scanningcabinet","description":"Document Management System (scanner -> appengine blobs)","private":false,"pushed":"2011-08-11T10:56:35-07:00","watchers":56,"has_wiki":true},{"type":"repo","created_at":"2009-07-08T16:22:59-07:00","score":5.9156513,"owner":"rapidsms","followers":16,"open_issues":6,"organization":"rapidsms","username":"rapidsms","created":"2009-07-08T16:22:59-07:00","homepage":"http://docs.rapidsms.org","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-08-05T02:03:11-07:00","forks":9,"fork":false,"size":160,"name":"rapidsms-documentation","url":"https://github.com/rapidsms/rapidsms-documentation","description":"Documentation for RapidSMS","private":false,"pushed":"2011-08-05T02:03:11-07:00","watchers":16,"has_wiki":true},{"type":"repo","created_at":"2010-05-23T12:45:20-07:00","score":5.9100027,"owner":"paltman","followers":57,"open_issues":2,"username":"paltman","created":"2010-05-23T12:45:20-07:00","homepage":"http://packages.python.org/django-pdf/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2010-06-30T20:24:33-07:00","forks":11,"fork":false,"size":592,"name":"django-pdf","url":"https://github.com/paltman/django-pdf","description":"Manage uploaded documents (pdfs) with backend cloud processing of the pdfs into individual pngs per page","private":false,"pushed":"2010-06-30T20:24:33-07:00","watchers":57,"has_wiki":true},{"type":"repo","created_at":"2010-08-02T13:28:23-07:00","score":5.620927,"owner":"doctrine","followers":13,"open_issues":0,"organization":"doctrine","username":"doctrine","created":"2010-08-02T13:28:23-07:00","homepage":"http://www.doctrine-project.org/projects/common","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-27T06:53:53-07:00","forks":7,"fork":false,"size":400,"name":"common-documentation","url":"https://github.com/doctrine/common-documentation","description":"Documentation for the common Doctrine PHP extensions library.","private":false,"pushed":"2012-06-27T06:53:53-07:00","watchers":13,"has_wiki":true},{"type":"repo","created_at":"2011-02-19T14:56:14-08:00","score":5.5232573,"owner":"datadesk","followers":12,"open_issues":10,"organization":"datadesk","username":"datadesk","created":"2011-02-19T14:56:14-08:00","homepage":"http://document-stacker.appspot.com/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-08-16T11:35:06-07:00","forks":2,"fork":false,"size":116,"name":"latimes-document-stacker","url":"https://github.com/datadesk/latimes-document-stacker","description":"Use DocumentCloud to publish PDFs for humans.","private":false,"pushed":"2011-08-16T11:35:06-07:00","watchers":12,"has_wiki":true},{"type":"repo","created_at":"2010-04-22T08:51:01-07:00","score":5.4273014,"owner":"doctrine","followers":11,"open_issues":1,"organization":"doctrine","username":"doctrine","created":"2010-04-22T08:51:01-07:00","homepage":"http://www.doctrine-project.org","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-29T04:37:15-07:00","forks":3,"fork":false,"size":228,"name":"migrations-documentation","url":"https://github.com/doctrine/migrations-documentation","description":"Documentation for the Doctrine Migrations","private":false,"pushed":"2012-06-29T04:37:15-07:00","watchers":11,"has_wiki":true},{"type":"repo","created_at":"2012-01-23T16:40:31-08:00","score":5.3857517,"owner":"sjl","followers":49,"open_issues":1,"username":"sjl","created":"2012-01-23T16:40:31-08:00","homepage":"http://sjl.bitbucket.org/d/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-03-14T14:25:05-07:00","forks":6,"fork":false,"size":280,"name":"d","url":"https://github.com/sjl/d","description":"Markdown files to documentation. Nothing else.","private":false,"pushed":"2012-03-14T14:25:05-07:00","watchers":49,"has_wiki":true},{"type":"repo","created_at":"2011-02-13T07:27:47-08:00","score":5.034907,"owner":"doctrine","followers":7,"open_issues":0,"organization":"doctrine","username":"doctrine","created":"2011-02-13T07:27:47-08:00","homepage":"http://www.doctrine-project.org","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-04-04T04:29:03-07:00","forks":6,"fork":false,"size":144,"name":"couchdb-documentation","url":"https://github.com/doctrine/couchdb-documentation","description":"Documentation for Doctrine CouchDB ODM","private":false,"pushed":"2012-04-04T04:29:03-07:00","watchers":7,"has_wiki":true},{"type":"repo","created_at":"2012-01-17T02:20:53-08:00","score":4.937237,"owner":"openmicroscopy","followers":6,"open_issues":1,"organization":"openmicroscopy","username":"openmicroscopy","created":"2012-01-17T02:20:53-08:00","homepage":"http://openmicroscopy.org","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-04-11T01:40:42-07:00","forks":5,"fork":false,"size":288,"name":"ome-documentation","url":"https://github.com/openmicroscopy/ome-documentation","description":"Sphinx-based documentation for the Open Microscopy Environment ","private":false,"pushed":"2012-04-11T01:40:42-07:00","watchers":6,"has_wiki":true},{"type":"repo","created_at":"2011-11-23T02:58:02-08:00","score":4.9320946,"owner":"trigger-corp","followers":6,"open_issues":1,"organization":"trigger-corp","username":"trigger-corp","created":"2011-11-23T02:58:02-08:00","homepage":"https://webmynd.com/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-28T21:55:54-07:00","forks":2,"fork":false,"size":284,"name":"Forge-Documentation","url":"https://github.com/trigger-corp/Forge-Documentation","description":"","private":false,"pushed":"2012-06-28T21:55:54-07:00","watchers":6,"has_wiki":true},{"type":"repo","created_at":"2011-12-14T01:01:14-08:00","score":4.8395667,"owner":"simod","followers":5,"open_issues":5,"username":"simod","created":"2011-12-14T01:01:14-08:00","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-02-09T13:18:00-08:00","forks":4,"fork":false,"size":124,"name":"geonode-documents","url":"https://github.com/simod/geonode-documents","description":"Document handling extension for GeoNode","private":false,"pushed":"2012-02-09T13:18:00-08:00","watchers":5,"has_wiki":true},{"type":"repo","created_at":"2008-12-28T22:46:04-08:00","score":4.823665,"owner":"brosner","followers":45,"open_issues":0,"username":"brosner","created":"2008-12-28T22:46:04-08:00","homepage":"http://appdocs.oebfare.com/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2008-12-29T11:24:17-08:00","forks":24,"fork":false,"size":264,"name":"django-reusable-app-docs","url":"https://github.com/brosner/django-reusable-app-docs","description":"Documentation about how to write and maintain a Django reusable app.","private":false,"pushed":"2008-12-29T11:24:17-08:00","watchers":45,"has_wiki":true},{"type":"repo","created_at":"2011-02-17T08:10:23-08:00","score":4.7877645,"owner":"Behat","followers":42,"open_issues":1,"organization":"Behat","username":"Behat","created":"2011-02-17T08:10:23-08:00","homepage":"http://docs.behat.org","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-27T16:41:49-07:00","forks":22,"fork":false,"size":228,"name":"en-docs.behat.org","url":"https://github.com/Behat/en-docs.behat.org","description":"Behat Documentation Repository","private":false,"pushed":"2012-06-27T16:41:49-07:00","watchers":42,"has_wiki":false},{"type":"repo","created_at":"2011-11-27T06:37:09-08:00","score":4.7436113,"owner":"ninja-ide","followers":4,"open_issues":1,"organization":"ninja-ide","username":"ninja-ide","created":"2011-11-27T06:37:09-08:00","homepage":"http://ninja-ide.org","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-03-29T10:06:34-07:00","forks":3,"fork":false,"size":128,"name":"ninja-ide-documentation","url":"https://github.com/ninja-ide/ninja-ide-documentation","description":"Documentation for NINJA-IDE","private":false,"pushed":"2012-03-29T10:06:34-07:00","watchers":4,"has_wiki":true},{"type":"repo","created_at":"2011-10-12T00:55:30-07:00","score":4.7367544,"owner":"pdebuyl","followers":4,"open_issues":0,"username":"pdebuyl","created":"2011-10-12T00:55:30-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-03-02T02:24:49-08:00","forks":4,"fork":false,"size":116,"name":"euroscipy2012_document","url":"https://github.com/pdebuyl/euroscipy2012_document","description":"","private":false,"pushed":"2012-03-02T02:24:49-08:00","watchers":4,"has_wiki":true},{"type":"repo","created_at":"2010-01-06T14:16:16-08:00","score":4.690094,"owner":"tbaugis","followers":41,"open_issues":6,"username":"tbaugis","created":"2010-01-06T14:16:16-08:00","homepage":"http://wiki.github.com/tbaugis/hamster_experiments/","has_issues":true,"has_downloads":false,"language":"Python","pushed_at":"2012-06-12T09:37:16-07:00","forks":3,"fork":false,"size":444,"name":"hamster_experiments","url":"https://github.com/tbaugis/hamster_experiments","description":"Follow the link for documentation:","private":false,"pushed":"2012-06-12T09:37:16-07:00","watchers":41,"has_wiki":true},{"type":"repo","created_at":"2011-03-29T02:29:34-07:00","score":4.6459413,"owner":"Tryton-EvKliD","followers":3,"open_issues":0,"organization":"Tryton-EvKliD","username":"Tryton-EvKliD","created":"2011-03-29T02:29:34-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-03-30T22:27:50-07:00","forks":1,"fork":false,"size":6957,"name":"ekd_documents","url":"https://github.com/Tryton-EvKliD/ekd_documents","description":"module for Tryton (Documents)","private":false,"pushed":"2011-03-30T22:27:50-07:00","watchers":3,"has_wiki":false},{"type":"repo","created_at":"2011-02-07T22:59:53-08:00","score":4.6459413,"owner":"yosuke","followers":3,"open_issues":0,"username":"yosuke","created":"2011-02-07T22:59:53-08:00","homepage":"http://openhri.net/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-12-05T22:41:17-08:00","forks":3,"fork":false,"size":1108,"name":"OpenHRI-document","url":"https://github.com/yosuke/OpenHRI-document","description":"Documentation for OpenHRI","private":false,"pushed":"2011-12-05T22:41:17-08:00","watchers":3,"has_wiki":true},{"type":"repo","created_at":"2010-09-30T08:54:44-07:00","score":4.64337,"owner":"powellc","followers":3,"open_issues":0,"username":"powellc","created":"2010-09-30T08:54:44-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-03-29T08:25:44-07:00","forks":2,"fork":false,"size":416,"name":"django-documents","url":"https://github.com/powellc/django-documents","description":"Manages documents, allows them to be handled a bit like tags","private":false,"pushed":"2011-03-29T08:25:44-07:00","watchers":3,"has_wiki":true},{"type":"repo","created_at":"2012-05-25T08:04:47-07:00","score":4.64337,"owner":"alchemy-fr","followers":3,"open_issues":0,"organization":"alchemy-fr","username":"alchemy-fr","created":"2012-05-25T08:04:47-07:00","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-18T06:54:37-07:00","forks":2,"fork":false,"size":144,"name":"Documentation-Boilerplate","url":"https://github.com/alchemy-fr/Documentation-Boilerplate","description":"A sphinx documentation boilerplate for Alchemy open source projects","private":false,"pushed":"2012-06-18T06:54:37-07:00","watchers":3,"has_wiki":true},{"type":"repo","created_at":"2010-06-13T18:38:37-07:00","score":4.639085,"owner":"hflw","followers":3,"open_issues":0,"username":"hflw","created":"2010-06-13T18:38:37-07:00","homepage":"http://www.persvr.org/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2010-07-28T00:43:27-07:00","forks":1,"fork":false,"size":172,"name":"Persevere-Documentation","url":"https://github.com/hflw/Persevere-Documentation","description":"Better docs for persevere 2.0","private":false,"pushed":"2010-07-28T00:43:27-07:00","watchers":3,"has_wiki":true},{"type":"repo","created_at":"2011-07-26T06:11:40-07:00","score":4.639085,"owner":"cgsoftware","followers":3,"open_issues":0,"organization":"cgsoftware","username":"cgsoftware","created":"2011-07-26T06:11:40-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-12T07:40:26-07:00","forks":1,"fork":false,"size":1352,"name":"ItalianFiscalDocument","url":"https://github.com/cgsoftware/ItalianFiscalDocument","description":"Gestione documenti di Vendita e di Acquisto Openerp","private":false,"pushed":"2012-06-12T07:40:26-07:00","watchers":3,"has_wiki":true},{"type":"repo","created_at":"2011-04-27T03:18:50-07:00","score":4.639085,"owner":"noum","followers":3,"open_issues":0,"username":"noum","created":"2011-04-27T03:18:50-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-14T03:39:16-07:00","forks":2,"fork":false,"size":132,"name":"documentation-achrolab","url":"https://github.com/noum/documentation-achrolab","description":"","private":false,"pushed":"2012-06-14T03:39:16-07:00","watchers":3,"has_wiki":true},{"type":"repo","created_at":"2012-02-16T07:19:34-08:00","score":4.639085,"owner":"Alerion","followers":3,"open_issues":2,"username":"Alerion","created":"2012-02-16T07:19:34-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-18T08:31:55-07:00","forks":2,"fork":false,"size":232,"name":"django_documentation","url":"https://github.com/Alerion/django_documentation","description":"","private":false,"pushed":"2012-06-18T08:31:55-07:00","watchers":3,"has_wiki":true},{"type":"repo","created_at":"2011-04-30T21:40:32-07:00","score":4.548271,"owner":"richardfullmer","followers":2,"open_issues":0,"username":"richardfullmer","created":"2011-04-30T21:40:32-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-04-30T22:18:08-07:00","forks":1,"fork":false,"size":684,"name":"oxm-documentation","url":"https://github.com/richardfullmer/oxm-documentation","description":"Doctrine OXM Documentation","private":false,"pushed":"2011-04-30T22:18:08-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2012-02-08T04:29:40-08:00","score":4.547414,"owner":"aptivate","followers":2,"open_issues":0,"organization":"aptivate","username":"aptivate","created":"2012-02-08T04:29:40-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-27T02:18:31-07:00","forks":1,"fork":false,"size":824,"name":"intranet-documents","url":"https://github.com/aptivate/intranet-documents","description":"Generic Intranet, Document Store application","private":false,"pushed":"2012-06-27T02:18:31-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2011-09-19T17:46:57-07:00","score":4.546557,"owner":"NBitWonder","followers":2,"open_issues":0,"username":"NBitWonder","created":"2011-09-19T17:46:57-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-09-23T11:20:36-07:00","forks":1,"fork":false,"size":280,"name":"OpenDocumentationSystem","url":"https://github.com/NBitWonder/OpenDocumentationSystem","description":"OpenOffice-based project documentation templates","private":false,"pushed":"2011-09-23T11:20:36-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2010-12-16T00:44:55-08:00","score":4.5457,"owner":"bluedynamics","followers":2,"open_issues":0,"organization":"bluedynamics","username":"bluedynamics","created":"2010-12-16T00:44:55-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-22T08:02:15-07:00","forks":2,"fork":false,"size":252,"name":"yafowil.documentation","url":"https://github.com/bluedynamics/yafowil.documentation","description":"Documentation of YAFOWIL - Yet Another Form Widget Library (Python, Web)","private":false,"pushed":"2012-06-22T08:02:15-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2011-12-17T04:44:26-08:00","score":4.5457,"owner":"zyga","followers":2,"open_issues":0,"username":"zyga","created":"2011-12-17T04:44:26-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-05-13T14:17:48-07:00","forks":1,"fork":false,"size":424,"name":"json-document","url":"https://github.com/zyga/json-document","description":"Intuitive and powerful python bindings to JSON documents (with schema!)","private":false,"pushed":"2012-05-13T14:17:48-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2011-11-22T07:02:00-08:00","score":4.5444446,"owner":"raprasad","followers":2,"open_issues":0,"username":"raprasad","created":"2011-11-22T07:02:00-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-05-16T11:15:06-07:00","forks":1,"fork":false,"size":204,"name":"Simple-Project-Documentation","url":"https://github.com/raprasad/Simple-Project-Documentation","description":"Django admin interface/database to store basic information on existing projects/services. e.g., server location, codebase, who to contact for help, etc. Allow exporting of the documentation to static HTML--in case the documentation site itself is unavailable.","private":false,"pushed":"2012-05-16T11:15:06-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2012-06-06T04:53:24-07:00","score":4.5414147,"owner":"shinriyo","followers":2,"open_issues":0,"username":"shinriyo","created":"2012-06-06T04:53:24-07:00","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-08T02:37:54-07:00","forks":1,"fork":false,"size":1452,"name":"NGUI-japanese-document","url":"https://github.com/shinriyo/NGUI-japanese-document","description":"The translated from http://www.tasharen.com/?page_id=197 to Japanese","private":false,"pushed":"2012-06-08T02:37:54-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2012-06-20T02:49:07-07:00","score":4.5414147,"owner":"nfms4redd","followers":2,"open_issues":0,"organization":"nfms4redd","username":"nfms4redd","created":"2012-06-20T02:49:07-07:00","has_issues":true,"language":"Python","has_downloads":true,"pushed_at":"2012-06-25T13:25:17-07:00","forks":1,"fork":false,"size":2512,"name":"nfms-documentation","url":"https://github.com/nfms4redd/nfms-documentation","description":"","private":false,"pushed":"2012-06-25T13:25:17-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2010-08-18T11:35:30-07:00","score":4.451017,"owner":"nyxtom","followers":1,"open_issues":0,"username":"nyxtom","created":"2010-08-18T11:35:30-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2010-08-18T12:27:29-07:00","forks":1,"fork":false,"size":120,"name":"django-documents","url":"https://github.com/nyxtom/django-documents","description":"A simple manager of documents, document versions and attributes.","private":false,"pushed":"2010-08-18T12:27:29-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-06-02T04:34:28-07:00","score":4.450601,"owner":"gracefullife","followers":1,"open_issues":0,"username":"gracefullife","created":"2011-06-02T04:34:28-07:00","homepage":"http://d.hatena.ne.jp/graceful_life/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-07-28T08:24:49-07:00","forks":1,"fork":false,"size":100,"name":"GerritDocument_Ja","url":"https://github.com/gracefullife/GerritDocument_Ja","description":"Translated Gerrit Document to Japanese","private":false,"pushed":"2011-07-28T08:24:49-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-03-20T20:33:30-07:00","score":4.450601,"owner":"servee","followers":1,"open_issues":0,"organization":"servee","username":"servee","created":"2011-03-20T20:33:30-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-11-21T09:46:08-08:00","forks":1,"fork":false,"size":860,"name":"django-servee-document","url":"https://github.com/servee/django-servee-document","description":"Document Plugin for Servee","private":false,"pushed":"2011-11-21T09:46:08-08:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-05-26T00:19:25-07:00","score":4.450601,"owner":"alexgarel","followers":1,"open_issues":0,"username":"alexgarel","created":"2011-05-26T00:19:25-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-19T11:05:25-07:00","forks":1,"fork":false,"size":1304,"name":"document-chain","url":"https://github.com/alexgarel/document-chain","description":"A document transformation chain","private":false,"pushed":"2012-06-19T11:05:25-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2012-06-25T14:23:40-07:00","score":4.450601,"owner":"iunruh","followers":1,"open_issues":0,"username":"iunruh","created":"2012-06-25T14:23:40-07:00","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-25T19:34:08-07:00","forks":1,"fork":false,"size":128,"name":"frost-api-documentation","url":"https://github.com/iunruh/frost-api-documentation","description":"Frost MSP API Documentation","private":false,"pushed":"2012-06-25T19:34:08-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-05-12T02:51:25-07:00","score":4.4497437,"owner":"cuteflow","followers":1,"open_issues":0,"organization":"cuteflow","username":"cuteflow","created":"2011-05-12T02:51:25-07:00","homepage":"www.cuteflow.org","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-08-09T05:25:30-07:00","forks":2,"fork":false,"size":172,"name":"cuteflow-documentation","url":"https://github.com/cuteflow/cuteflow-documentation","description":"Documentation for the CuteFlow project","private":false,"pushed":"2011-08-09T05:25:30-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2012-04-21T09:17:09-07:00","score":4.4497437,"owner":"timvieira","followers":1,"open_issues":0,"username":"timvieira","created":"2012-04-21T09:17:09-07:00","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-04-21T16:58:11-07:00","forks":1,"fork":false,"size":144,"name":"document-explorer","url":"https://github.com/timvieira/document-explorer","description":"Too many documents on the hard drive...","private":false,"pushed":"2012-04-21T16:58:11-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2012-03-29T09:17:08-07:00","score":4.448887,"owner":"hugosantosred","followers":1,"open_issues":0,"username":"hugosantosred","created":"2012-03-29T09:17:08-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-05-27T09:19:28-07:00","forks":1,"fork":false,"size":176,"name":"dropbox_document_manager","url":"https://github.com/hugosantosred/dropbox_document_manager","description":"Document Manager With Dropbox for OpenERP","private":false,"pushed":"2012-05-27T09:19:28-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2012-05-02T07:36:05-07:00","score":4.448887,"owner":"benoitbryon","followers":1,"open_issues":9,"username":"benoitbryon","created":"2012-05-02T07:36:05-07:00","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-05-31T11:28:01-07:00","forks":1,"fork":false,"size":220,"name":"documentation-best-practices","url":"https://github.com/benoitbryon/documentation-best-practices","description":"Tips, tricks and conventions about documentation content.","private":false,"pushed":"2012-05-31T11:28:01-07:00","watchers":1,"has_wiki":false},{"type":"repo","created_at":"2011-02-10T08:20:54-08:00","score":4.4485927,"owner":"conwetlab","followers":1,"open_issues":0,"organization":"conwetlab","username":"conwetlab","created":"2011-02-10T08:20:54-08:00","homepage":"http://exlabos.blogspot.com","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-02-11T07:45:23-08:00","forks":1,"fork":false,"size":280,"name":"Markdown-Documentation","url":"https://github.com/conwetlab/Markdown-Documentation","description":"Markdown extensions to produce HTML code documentation. It is an environment prepared to offer fancy HTML outputs for extended markdown documents","private":false,"pushed":"2011-02-11T07:45:23-08:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-07-06T13:49:36-07:00","score":4.44803,"owner":"rhoslug","followers":1,"open_issues":0,"username":"rhoslug","created":"2011-07-06T13:49:36-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-08-10T13:59:51-07:00","forks":1,"fork":false,"size":188,"name":"Document_Tokenizer","url":"https://github.com/rhoslug/Document_Tokenizer","description":"A set of tools to tokenize and extract information from documents.","private":false,"pushed":"2011-08-10T13:59:51-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-06-22T19:26:15-07:00","score":4.44803,"owner":"srichand","followers":1,"open_issues":0,"username":"srichand","created":"2011-06-22T19:26:15-07:00","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-02-17T19:57:01-08:00","forks":1,"fork":false,"size":108,"name":"DocumentGenerator","url":"https://github.com/srichand/DocumentGenerator","description":"Generates nice LaTeX documents from web pages","private":false,"pushed":"2012-02-17T19:57:01-08:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2012-05-02T07:38:13-07:00","score":4.44803,"owner":"benoitbryon","followers":1,"open_issues":1,"username":"benoitbryon","created":"2012-05-02T07:38:13-07:00","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-05-31T13:57:03-07:00","forks":1,"fork":false,"size":124,"name":"documentation-templates-sphinx","url":"https://github.com/benoitbryon/documentation-templates-sphinx","description":"Template(s) to generate Sphinx-based documentations.","private":false,"pushed":"2012-05-31T13:57:03-07:00","watchers":1,"has_wiki":false},{"type":"repo","created_at":"2012-04-06T09:09:50-07:00","score":4.446316,"owner":"dae-eklen","followers":1,"open_issues":0,"username":"dae-eklen","created":"2012-04-06T09:09:50-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-04-06T09:13:19-07:00","forks":1,"fork":false,"size":96,"name":"Remote-documents-viewer","url":"https://github.com/dae-eklen/Remote-documents-viewer","description":"a remote documents viewer with CLI: concurrent server administrates a set of files in a directory; the client asks for files and information about them according to preestablished protocol","private":false,"pushed":"2012-04-06T09:13:19-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2010-10-05T13:29:59-07:00","score":4.4437447,"owner":"jbillsx","followers":1,"open_issues":0,"username":"jbillsx","created":"2010-10-05T13:29:59-07:00","homepage":"http://www.facebook.com/home.php?sk=group_108466959215982","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2010-10-07T17:59:39-07:00","forks":1,"fork":false,"size":216,"name":"Iggy-Document-Editor","url":"https://github.com/jbillsx/Iggy-Document-Editor","description":"A real time collaborative editor written in python, php, and AJAX","private":false,"pushed":"2010-10-07T17:59:39-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-05-24T06:54:31-07:00","score":4.4437447,"owner":"imait","followers":1,"open_issues":0,"username":"imait","created":"2011-05-24T06:54:31-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-05-24T06:57:35-07:00","forks":1,"fork":false,"size":124,"name":"HtmlDocument","url":"https://github.com/imait/HtmlDocument","description":"HTML -- Assist to make HTML.","private":false,"pushed":"2011-05-24T06:57:35-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-05-07T13:23:51-07:00","score":4.4437447,"owner":"dnephin","followers":1,"open_issues":0,"username":"dnephin","created":"2011-05-07T13:23:51-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-05-10T22:04:43-07:00","forks":1,"fork":false,"size":800,"name":"Find-Similar-Documents","url":"https://github.com/dnephin/Find-Similar-Documents","description":"","private":false,"pushed":"2011-05-10T22:04:43-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-07-24T00:33:46-07:00","score":4.4437447,"owner":"cametan001","followers":1,"open_issues":0,"username":"cametan001","created":"2011-07-24T00:33:46-07:00","homepage":"http://www.oreilly.co.jp/books/9784873113647/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-07-29T06:51:09-07:00","forks":1,"fork":false,"size":124,"name":"document_filtering","url":"https://github.com/cametan001/document_filtering","description":"集合知プログラミングでのベイジアンフィルタ","private":false,"pushed":"2011-07-29T06:51:09-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-07-12T01:47:29-07:00","score":4.4437447,"owner":"Zojax","followers":1,"open_issues":0,"organization":"Zojax","username":"Zojax","created":"2011-07-12T01:47:29-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-12-15T23:14:00-08:00","forks":1,"fork":false,"size":168,"name":"zojax.contenttype.document","url":"https://github.com/Zojax/zojax.contenttype.document","description":"","private":false,"pushed":"2011-12-15T23:14:00-08:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-07-12T02:58:28-07:00","score":4.4437447,"owner":"Zojax","followers":1,"open_issues":0,"organization":"Zojax","username":"Zojax","created":"2011-07-12T02:58:28-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-12-15T23:12:05-08:00","forks":1,"fork":false,"size":184,"name":"zojax.content.documents","url":"https://github.com/Zojax/zojax.content.documents","description":"","private":false,"pushed":"2011-12-15T23:12:05-08:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2012-04-28T03:21:43-07:00","score":4.4437447,"owner":"chedabob","followers":1,"open_issues":0,"username":"chedabob","created":"2012-04-28T03:21:43-07:00","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-04-28T13:50:13-07:00","forks":1,"fork":false,"size":156,"name":"DocumentStore","url":"https://github.com/chedabob/DocumentStore","description":"","private":false,"pushed":"2012-04-28T13:50:13-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-08-04T10:31:54-07:00","score":4.4437447,"owner":"slyzer05","followers":1,"open_issues":0,"username":"slyzer05","created":"2011-08-04T10:31:54-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-05-08T10:51:20-07:00","forks":1,"fork":false,"size":220,"name":"Document-Backup","url":"https://github.com/slyzer05/Document-Backup","description":"Python program to backup user data to another location.","private":false,"pushed":"2012-05-08T10:51:20-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2012-05-19T11:42:21-07:00","score":4.4437447,"owner":"berserck","followers":1,"open_issues":0,"username":"berserck","created":"2012-05-19T11:42:21-07:00","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-05-19T11:54:52-07:00","forks":1,"fork":false,"size":332,"name":"latexDocuments","url":"https://github.com/berserck/latexDocuments","description":"A place to put my latex templates and snippets","private":false,"pushed":"2012-05-19T11:54:52-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2012-03-02T13:30:32-08:00","score":4.4437447,"owner":"vkolev","followers":1,"open_issues":0,"username":"vkolev","created":"2012-03-02T13:30:32-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-27T04:47:41-07:00","forks":1,"fork":false,"size":552,"name":"go-documentation-bg","url":"https://github.com/vkolev/go-documentation-bg","description":"Документация за Go на български език","private":false,"pushed":"2012-06-27T04:47:41-07:00","watchers":1,"has_wiki":false},{"type":"repo","created_at":"2012-04-27T04:06:39-07:00","score":4.3939776,"owner":"benoitbryon","followers":6,"open_issues":10,"username":"benoitbryon","created":"2012-04-27T04:06:39-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-05-31T13:46:43-07:00","forks":1,"fork":false,"size":508,"name":"documentation-style-guide-sphinx","url":"https://github.com/benoitbryon/documentation-style-guide-sphinx","description":"Coding standards for Sphinx-based documentations","private":false,"pushed":"2012-05-31T13:46:43-07:00","watchers":6,"has_wiki":false},{"type":"repo","created_at":"2009-03-07T12:25:43-08:00","score":4.2735467,"owner":"engla","followers":42,"open_issues":4,"username":"engla","created":"2009-03-07T12:25:43-08:00","homepage":"http://kaizer.se/wiki/kupfer/","has_issues":false,"has_downloads":true,"language":"Python","pushed_at":"2012-06-28T11:36:40-07:00","forks":21,"fork":false,"size":344,"name":"kupfer","url":"https://github.com/engla/kupfer","description":"kupfer, smart, quick launcher. `master' is kupfer's release branch and tracks the main repository at http://git.gnome.org/browse/kupfer/ — All topic branches are Works in Progress and might be rebased. Kupfer Technical Documentation: http://kaizer.se/wiki/kupfer/Manual.html [[Send email, not pull requests. Email (or me)]]","private":false,"pushed":"2012-06-28T11:36:40-07:00","watchers":42,"has_wiki":false},{"type":"repo","created_at":"2011-01-13T17:04:59-08:00","score":4.1519423,"owner":"pycollada","followers":39,"open_issues":2,"organization":"pycollada","username":"pycollada","created":"2011-01-13T17:04:59-08:00","homepage":"http://pycollada.github.com/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-04-25T12:32:34-07:00","forks":8,"fork":false,"size":156,"name":"pycollada","url":"https://github.com/pycollada/pycollada","description":"A python COLLADA library. Can be used to create, edit and load COLLADA documents.","private":false,"pushed":"2012-04-25T12:32:34-07:00","watchers":39,"has_wiki":true},{"type":"repo","created_at":"2011-01-16T20:08:57-08:00","score":4.1519423,"owner":"NetAngels","followers":39,"open_issues":3,"username":"NetAngels","created":"2011-01-16T20:08:57-08:00","homepage":"http://packages.python.org/django-webodt/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-01T10:11:29-07:00","forks":8,"fork":false,"size":128,"name":"django-webodt","url":"https://github.com/NetAngels/django-webodt","description":"django module to create MS Word, PDF and other types of documents from ODF and HTML templates","private":false,"pushed":"2012-06-01T10:11:29-07:00","watchers":39,"has_wiki":true},{"type":"repo","created_at":"2011-02-12T15:30:34-08:00","score":4.139975,"owner":"chrisglass","followers":38,"open_issues":4,"username":"chrisglass","created":"2011-02-12T15:30:34-08:00","homepage":"http://bserve.webhop.org/django_polymorphic","has_issues":true,"has_downloads":false,"language":"Python","pushed_at":"2012-01-09T07:48:59-08:00","forks":19,"fork":false,"size":300,"name":"django_polymorphic","url":"https://github.com/chrisglass/django_polymorphic","description":"Seamless Polymorphic Inheritance for Django Models. For documentation and news click link below.","private":false,"pushed":"2012-01-09T07:48:59-08:00","watchers":38,"has_wiki":false}]} + +https +GET +api.github.com +None +/repos/ipython/ipython +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4996'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '1527'), ('server', 'nginx/1.0.13'), ('last-modified', 'Thu, 28 Jun 2012 23:29:38 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"724e676270069b5ab1aacdade3f0847f"'), ('cache-control', 'private, max-age=60'), ('date', 'Fri, 29 Jun 2012 11:37:26 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"mirror_url":null,"has_downloads":true,"homepage":"http://ipython.org","owner":{"avatar_url":"https://secure.gravatar.com/avatar/f72497397dd9a0a79c654c8182460bb1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"ipython","url":"https://api.github.com/users/ipython","gravatar_id":"f72497397dd9a0a79c654c8182460bb1","id":230453},"html_url":"https://github.com/ipython/ipython","clone_url":"https://github.com/ipython/ipython.git","has_wiki":false,"watchers":834,"description":"Official repository for IPython itself. Other repos in the IPython organization contain things like the website, documentation builds, etc.","ssh_url":"git@github.com:ipython/ipython.git","organization":{"avatar_url":"https://secure.gravatar.com/avatar/f72497397dd9a0a79c654c8182460bb1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"ipython","url":"https://api.github.com/users/ipython","gravatar_id":"f72497397dd9a0a79c654c8182460bb1","id":230453},"git_url":"git://github.com/ipython/ipython.git","full_name":"ipython/ipython","open_issues":289,"size":1204,"fork":false,"created_at":"2010-05-10T04:46:06Z","name":"ipython","url":"https://api.github.com/repos/ipython/ipython","permissions":{"push":false,"pull":true,"admin":false},"language":"Python","private":false,"pushed_at":"2012-06-28T23:29:38Z","id":658518,"master_branch":"master","forks":282,"has_issues":true,"svn_url":"https://github.com/ipython/ipython","updated_at":"2012-06-28T23:29:38Z"} + diff --git a/lib/github/tests/ReplayData/Github.testLegacySearchUserByEmail.txt b/lib/github/tests/ReplayData/Github.testLegacySearchUserByEmail.txt new file mode 100644 index 0000000000..bbfb223979 --- /dev/null +++ b/lib/github/tests/ReplayData/Github.testLegacySearchUserByEmail.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/legacy/user/email/vincent@vincent-jacques.net +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4999'), ('content-length', '395'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"f225d9662153996a309db055598b3c8b"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Fri, 29 Jun 2012 11:37:11 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"user":{"email":"vincent@vincent-jacques.net","blog":"http://vincent-jacques.net","name":"Vincent Jacques","location":"Paris, France","created_at":"2010-07-08T23:10:06-07:00","followers_count":13,"company":"Criteo","type":"User","permission":null,"public_repo_count":11,"public_gist_count":3,"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"following_count":24}} + +https +GET +api.github.com +None +/users/jacquev6 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '801'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4998'), ('server', 'nginx/1.0.13'), ('last-modified', 'Fri, 15 Jun 2012 15:37:06 GMT'), ('connection', 'keep-alive'), ('etag', '"41ade9c2e4794dd5214bb5f497af92cb"'), ('cache-control', 'private, max-age=60'), ('date', 'Fri, 29 Jun 2012 11:37:11 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"following":24,"created_at":"2010-07-09T06:10:06Z","type":"User","hireable":false,"private_gists":5,"collaborators":0,"public_repos":11,"followers":13,"company":"Criteo","bio":"","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","plan":{"collaborators":1,"private_repos":5,"space":614400,"name":"micro"},"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","total_private_repos":5,"disk_usage":16812,"location":"Paris, France","owned_private_repos":5,"login":"jacquev6","html_url":"https://github.com/jacquev6","name":"Vincent Jacques","url":"https://api.github.com/users/jacquev6","id":327146,"public_gists":3,"blog":"http://vincent-jacques.net","email":"vincent@vincent-jacques.net"} + diff --git a/lib/github/tests/ReplayData/Github.testLegacySearchUsers.txt b/lib/github/tests/ReplayData/Github.testLegacySearchUsers.txt new file mode 100644 index 0000000000..f173721673 --- /dev/null +++ b/lib/github/tests/ReplayData/Github.testLegacySearchUsers.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/legacy/user/search/vincent +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4982'), ('content-length', '41235'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"77b0277b5efb0ebf5f9e3de8a493fd0c"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Thu, 28 Jun 2012 20:57:52 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"users":[{"gravatar_id":"c5a7f21b46df698f3db31c37ed0cf55a","score":73.982216,"type":"user","name":"Vincent Driessen","location":"Netherlands","fullname":"Vincent Driessen","repos":63,"login":"nvie","public_repo_count":63,"username":"nvie","created_at":"2009-05-12T21:19:38Z","record":null,"id":"user-83844","followers":310,"followers_count":310,"created":"2009-05-12T21:19:38Z","language":"Python","pushed":"2012-06-26T14:15:26.172Z"},{"gravatar_id":"a145dbf5d67ba1eb717fbe3a1f51509c","score":35.851326,"type":"user","fullname":"Jesse Vincent","repos":57,"name":"Jesse Vincent","location":"Somerville, MA, USA","login":"obra","public_repo_count":57,"username":"obra","created_at":"2009-01-09T20:24:15Z","record":null,"id":"user-45416","followers":127,"followers_count":127,"created":"2009-01-09T20:24:15Z","language":"Perl","pushed":"2012-06-27T02:15:19.036Z"},{"gravatar_id":"03a966709300efb4a86ce5ee8f88f696","score":33.5964,"type":"user","repos":86,"name":"John E. Vincent","fullname":"John E. Vincent","location":"Roswell, GA.","login":"lusis","public_repo_count":86,"username":"lusis","created_at":"2010-03-23T20:28:44Z","record":null,"id":"user-228958","followers":112,"followers_count":112,"created":"2010-03-23T20:28:44Z","language":"Ruby","pushed":"2012-06-28T15:15:44.987Z"},{"gravatar_id":"c676f9efc8e54985e84c044899481267","score":29.771633,"type":"user","name":"Vincent Jousse","repos":43,"fullname":"Vincent Jousse","location":"Le Mans","login":"vjousse","public_repo_count":43,"username":"vjousse","created_at":"2009-11-18T15:43:09Z","record":null,"id":"user-154904","followers":102,"followers_count":102,"created":"2009-11-18T15:43:09Z","language":"PHP","pushed":"2012-06-19T10:15:25.469Z"},{"gravatar_id":"1d0a2ab73604a28d767acc0e547c8985","score":14.943241,"type":"user","name":"Vincent Hanquez","fullname":"Vincent Hanquez","repos":43,"location":"","login":"vincenthz","public_repo_count":43,"username":"vincenthz","created_at":"2009-12-31T10:52:40Z","record":null,"id":"user-174631","followers":30,"followers_count":30,"created":"2009-12-31T10:52:40Z","language":"Haskell","pushed":"2011-12-02T11:15:26.599Z"},{"gravatar_id":"dd02e2c7ecf7c377b6b9c2c1a23633d0","score":13.608737,"type":"user","location":"http://git.io/vt","name":"Vincent Tsai","fullname":"Vincent Tsai","repos":18,"login":"Vayn","public_repo_count":18,"username":"Vayn","created_at":"2010-03-17T07:53:26Z","record":null,"id":"user-224407","followers":32,"followers_count":32,"created":"2010-03-17T07:53:26Z","language":"Python","pushed":"2012-05-05T02:15:14.813Z"},{"gravatar_id":"a3895a2d6f26155968be47fc03dddc40","score":13.566472,"type":"user","fullname":"Vincent Battaglia","repos":11,"name":"Vincent Battaglia","location":"San Francisco, CA","login":"vinch","public_repo_count":11,"username":"vinch","created_at":"2009-11-19T11:56:56Z","record":null,"id":"user-155370","followers":34,"followers_count":34,"created":"2009-11-19T11:56:56Z","language":"JavaScript","pushed":"2012-06-27T19:15:37.908Z"},{"gravatar_id":"2c0bde3f5628f35390c42fe505b79da4","score":12.853587,"type":"user","fullname":"Vincent Bernat","name":"Vincent Bernat","repos":25,"location":"Paris","login":"vincentbernat","public_repo_count":25,"username":"vincentbernat","created_at":"2011-02-22T07:20:26Z","record":null,"id":"user-631446","followers":26,"followers_count":26,"created":"2011-02-22T07:20:26Z","language":"C","pushed":"2012-04-24T14:15:18.536Z"},{"gravatar_id":"bbd55fb25025ef973c45e587103a1007","score":12.540491,"type":"user","location":"Nantes, France","name":"Vincent Giersch","fullname":"Vincent Giersch","repos":20,"login":"gierschv","public_repo_count":20,"username":"gierschv","created_at":"2010-09-12T16:41:49Z","record":null,"id":"user-396537","followers":26,"followers_count":26,"created":"2010-09-12T16:41:49Z","language":"JavaScript","pushed":"2012-06-07T01:15:19.516Z"},{"gravatar_id":"c8ff80488014da414b65346806178fa5","score":12.304387,"type":"user","name":"Vincent Batts","repos":20,"fullname":"Vincent Batts","location":"Vienna, VA","login":"vbatts","public_repo_count":20,"username":"vbatts","created_at":"2009-03-25T14:57:43Z","record":null,"id":"user-67049","followers":25,"followers_count":25,"created":"2009-03-25T14:57:43Z","language":"Ruby","pushed":"2012-06-18T14:15:37.054Z"},{"gravatar_id":"5ad827a4eff2f5c23d26e1b4eb746143","score":12.204174,"type":"user","repos":16,"name":"Vincent","fullname":"Vincent","location":"","login":"Valodim","public_repo_count":16,"username":"Valodim","created_at":"2008-10-06T20:33:02Z","record":null,"id":"user-27813","followers":9,"followers_count":9,"created":"2008-10-06T20:33:02Z","language":"Python","pushed":"2011-11-27T18:15:31.138Z"},{"gravatar_id":"a267b99df7d74999affbda5c314083d7","score":12.204174,"type":"user","fullname":"Vincent","repos":25,"name":"Vincent","location":"","login":"Twinside","public_repo_count":25,"username":"Twinside","created_at":"2009-12-17T09:22:27Z","record":null,"id":"user-168874","followers":6,"followers_count":6,"created":"2009-12-17T09:22:27Z","language":"VimL","pushed":"2012-06-28T07:15:16.26Z"},{"gravatar_id":"722218c7702627097bd72901d7b39e6a","score":12.197243,"type":"user","name":"Mike Vincent","location":"FTW, TX","fullname":"Mike Vincent","repos":9,"login":"agile","public_repo_count":9,"username":"agile","created_at":"2008-02-13T19:58:02Z","record":null,"id":"user-249","followers":28,"followers_count":28,"created":"2008-02-13T19:58:02Z","language":"Ruby","pushed":"2012-06-23T19:16:35.651Z"},{"gravatar_id":"a56a9079e6af8a892337a671c3b1a230","score":12.029787,"type":"user","name":"Vincent Pit","repos":13,"location":"Paris, France","fullname":"Vincent Pit","login":"vpit","public_repo_count":13,"username":"vpit","created_at":"2009-04-05T16:43:32Z","record":null,"id":"user-70731","followers":26,"followers_count":26,"created":"2009-04-05T16:43:32Z","language":"Perl","pushed":"2012-04-25T22:15:28.818Z"},{"gravatar_id":"317cf21cbde7d18d79c27e123cbf7b73","score":11.095074,"type":"user","fullname":"Vincent Velociter","name":"Vincent Velociter","repos":14,"location":"Nantes","login":"veloce","public_repo_count":14,"username":"veloce","created_at":"2010-10-01T12:58:39Z","record":null,"id":"user-423393","followers":21,"followers_count":21,"created":"2010-10-01T12:58:39Z","language":"VimL","pushed":"2012-06-20T16:15:20.04Z"},{"gravatar_id":"d4ad14bf23231763ea3c1754a65de041","score":11.040714,"type":"user","repos":45,"name":"Vincent van Haaff","fullname":"Vincent van Haaff","location":"Vancouver, BC","login":"flyingoctopus","public_repo_count":45,"username":"flyingoctopus","created_at":"2009-02-03T08:21:05Z","record":null,"id":"user-51352","followers":16,"followers_count":16,"created":"2009-02-03T08:21:05Z","language":"JavaScript","pushed":"2012-06-28T19:15:23.553Z"},{"gravatar_id":"652e02cbd134e0e92f3f81fe14bda3d1","score":11.000038,"type":"user","name":"Seth Vincent","repos":52,"fullname":"Seth Vincent","location":"olympia, wa","login":"sethvincent","public_repo_count":52,"username":"sethvincent","created_at":"2009-12-08T05:13:00Z","record":null,"id":"user-164214","followers":8,"followers_count":8,"created":"2009-12-08T05:13:00Z","language":"JavaScript","pushed":"2012-06-13T05:15:13.738Z"},{"gravatar_id":"7d3e511e6531fa9fde610015867d5c82","score":10.762525,"type":"user","fullname":"Vincent","repos":13,"name":"Vincent","location":"Zurich","login":"minikermit","public_repo_count":13,"username":"minikermit","created_at":"2009-01-18T10:56:54Z","record":null,"id":"user-47452","followers":3,"followers_count":3,"created":"2009-01-18T10:56:54Z","language":"JavaScript","pushed":"2012-06-27T19:16:29.254Z"},{"gravatar_id":"d3f0155cbb376d40f0c2e6f2d70552a4","score":10.7480545,"type":"user","fullname":"Vincent Agnano","repos":15,"name":"Vincent Agnano","location":"Montpellier","login":"vinyll","public_repo_count":15,"username":"vinyll","created_at":"2009-10-27T09:00:05Z","record":null,"id":"user-145172","followers":19,"followers_count":19,"created":"2009-10-27T09:00:05Z","language":"PHP","pushed":"2012-06-27T13:15:35.164Z"},{"gravatar_id":"dca7a9de73436b37325226984917bec0","score":10.725438,"type":"user","fullname":"Vincent Mazenod","name":"Vincent Mazenod","repos":18,"location":"Clermont Ferrand (636)","login":"mazenovi","public_repo_count":18,"username":"mazenovi","created_at":"2010-08-17T08:26:28Z","record":null,"id":"user-366957","followers":18,"followers_count":18,"created":"2010-08-17T08:26:28Z","language":"PHP","pushed":"2012-06-12T10:15:21.258Z"},{"gravatar_id":"9cfe5fa2f21186a7bec97f0e25fdf68e","score":10.578381,"type":"user","fullname":"Vincent Lark","name":"Vincent Lark","location":"France / Luxembourg","repos":11,"login":"vincent","public_repo_count":11,"username":"vincent","created_at":"2008-04-07T17:52:22Z","record":null,"id":"user-5623","followers":9,"followers_count":9,"created":"2008-04-07T17:52:22Z","language":"Python","pushed":"2011-10-17T15:15:11.027Z"},{"gravatar_id":"2bb264ba6bb334e5bfa5e266788a94c7","score":10.556574,"type":"user","repos":13,"name":"Vincent","fullname":"Vincent","location":"","login":"vjcharles","public_repo_count":13,"username":"vjcharles","created_at":"2008-06-23T08:36:59Z","record":null,"id":"user-14668","followers":2,"followers_count":2,"created":"2008-06-23T08:36:59Z","language":"Ruby","pushed":"2012-06-28T18:15:31.165Z"},{"gravatar_id":"7105cb5590c1d689191fabaff3cfc23b","score":10.545874,"type":"user","name":"Sam Vincent","repos":6,"fullname":"Sam Vincent","location":"Vancouver, BC","login":"samvincent","public_repo_count":6,"username":"samvincent","created_at":"2009-02-25T08:54:33Z","record":null,"id":"user-57775","followers":21,"followers_count":21,"created":"2009-02-25T08:54:33Z","language":"Ruby","pushed":"2012-06-15T21:15:20.297Z"},{"gravatar_id":"96f903d97afc840d7c317ce094fef408","score":10.537209,"type":"user","name":"vincent","repos":18,"fullname":"vincent","location":"北京市海淀区海淀北街8号中关村SOHO ","login":"vincent1900","public_repo_count":18,"username":"vincent1900","created_at":"2011-04-21T04:53:45Z","record":null,"id":"user-743038","followers":0,"followers_count":0,"created":"2011-04-21T04:53:45Z","language":"JavaScript","pushed":"2012-01-10T03:15:21.421Z"},{"gravatar_id":"2ecfff7b4be5cc2a6f42a0e6258f1bdd","score":10.464482,"type":"user","name":"Aziz Hardaya","location":"Jakarta Timur","repos":5,"fullname":"Aziz Hardaya","login":"AzizVincent","public_repo_count":5,"username":"AzizVincent","created_at":"2011-08-12T03:56:24Z","record":null,"id":"user-975298","followers":30,"followers_count":30,"created":"2011-08-12T03:56:24Z","language":"","pushed":"2012-02-13T03:15:25.527Z"},{"gravatar_id":"e5e032ef6bc616aab797ce8562fa60fa","score":10.312129,"type":"user","repos":3,"name":"Vincent","fullname":"Vincent","location":"Rotterdam","login":"VvanGemert","public_repo_count":3,"username":"VvanGemert","created_at":"2010-03-22T15:14:38Z","record":null,"id":"user-227966","followers":4,"followers_count":4,"created":"2010-03-22T15:14:38Z","language":"Ruby","pushed":"2012-03-29T14:15:14.844Z"},{"gravatar_id":"31a9803728a756c2b6ec090cb77852b3","score":10.310701,"type":"user","name":"Vincent Toups","location":"North Carolina","fullname":"Vincent Toups","repos":17,"login":"VincentToups","public_repo_count":17,"username":"VincentToups","created_at":"2008-10-31T13:41:24Z","record":null,"id":"user-31994","followers":16,"followers_count":16,"created":"2008-10-31T13:41:24Z","language":"Common Lisp","pushed":"2012-05-20T16:15:19.958Z"},{"gravatar_id":"2843b1e49827c8a63ef3695778646263","score":10.281975,"type":"user","fullname":"vincent","name":"vincent","location":"","repos":6,"login":"vincentwv","public_repo_count":6,"username":"vincentwv","created_at":"2011-08-17T09:40:13Z","record":null,"id":"user-985725","followers":3,"followers_count":3,"created":"2011-08-17T09:40:13Z","language":"JavaScript","pushed":"2012-04-04T16:15:11.99Z"},{"gravatar_id":"2c7e6e3e5b099d9d9d3ceba6819ca864","score":10.244888,"type":"user","fullname":"Vincent Waller","repos":44,"name":"Vincent Waller","location":"Bend, OR","login":"vwall","public_repo_count":44,"username":"vwall","created_at":"2009-08-21T18:38:05Z","record":null,"id":"user-118020","followers":7,"followers_count":7,"created":"2009-08-21T18:38:05Z","language":"Ruby","pushed":"2012-06-26T19:16:08.156Z"},{"gravatar_id":"3a66abaecbdf3edc16b509b9f46a5128","score":10.102409,"type":"user","fullname":"Vincent","repos":3,"name":"Vincent","location":"Irvine, CA","login":"vmarquez","public_repo_count":3,"username":"vmarquez","created_at":"2010-10-05T06:35:10Z","record":null,"id":"user-427578","followers":3,"followers_count":3,"created":"2010-10-05T06:35:10Z","language":"VimL","pushed":"2012-06-26T23:15:29.811Z"},{"gravatar_id":"0fa1e7a2807be2aaf0bd66d688506199","score":10.076025,"type":"user","location":"Taipei/Taiwan ","name":"Vincent","repos":12,"fullname":"Vincent","login":"changyihsin","public_repo_count":12,"username":"changyihsin","created_at":"2012-01-10T07:09:41Z","record":null,"id":"user-1317650","followers":0,"followers_count":0,"created":"2012-01-10T07:09:41Z","language":"C","pushed":"2012-06-05T07:15:20.895Z"},{"gravatar_id":"a8d7a6a8449afeeeaf9583c80c9ce8fc","score":10.073187,"type":"user","fullname":"Vincent","name":"Vincent","location":"Rotterdam/NL","repos":11,"login":"vincent-psarga","public_repo_count":11,"username":"vincent-psarga","created_at":"2010-01-20T15:27:54Z","record":null,"id":"user-186248","followers":0,"followers_count":0,"created":"2010-01-20T15:27:54Z","language":"Python","pushed":"2011-10-19T10:15:15.782Z"},{"gravatar_id":"15f0181accb819d21fd149a30303d68c","score":10.065324,"type":"user","fullname":"Vincent Demeester","repos":38,"name":"Vincent Demeester","location":"Bordeaux, Aquitaine, France","login":"vdemeester","public_repo_count":38,"username":"vdemeester","created_at":"2008-04-11T06:56:22Z","record":null,"id":"user-6508","followers":8,"followers_count":8,"created":"2008-04-11T06:56:22Z","language":"Shell","pushed":"2012-06-26T21:15:36.396Z"},{"gravatar_id":"ea99573d979fd0a4e9503a1e9331e68a","score":10.0389385,"type":"user","name":"Vincent Cogne","location":"France, Paris","fullname":"Vincent Cogne","repos":20,"login":"xpac27","public_repo_count":20,"username":"xpac27","created_at":"2009-04-22T13:24:07Z","record":null,"id":"user-76585","followers":14,"followers_count":14,"created":"2009-04-22T13:24:07Z","language":"JavaScript","pushed":"2012-06-23T19:15:31.367Z"},{"gravatar_id":"cce588dc4e7a73ae4c284915ca4de863","score":10.007375,"type":"user","repos":11,"name":"VIncent","fullname":"VIncent","location":"Guangzhou,China","login":"ywdong","public_repo_count":11,"username":"ywdong","created_at":"2012-02-21T15:58:13Z","record":null,"id":"user-1457889","followers":0,"followers_count":0,"created":"2012-02-21T15:58:13Z","language":"Java","pushed":"2012-06-03T05:15:15.227Z"},{"gravatar_id":"06366cecc21b382cef72494f25bcbf3e","score":9.9387245,"type":"user","fullname":"Vincent","repos":10,"name":"Vincent","location":"","login":"zakora","public_repo_count":10,"username":"zakora","created_at":"2009-07-19T20:21:15Z","record":null,"id":"user-106620","followers":0,"followers_count":0,"created":"2009-07-19T20:21:15Z","language":"Python","pushed":"2012-06-27T20:15:10.991Z"},{"gravatar_id":"1255ca023ce9ca08c7354b619d562625","score":9.870074,"type":"user","location":"","name":"Vincent","repos":9,"fullname":"Vincent","login":"xuevin","public_repo_count":9,"username":"xuevin","created_at":"2010-06-04T01:46:36Z","record":null,"id":"user-296101","followers":0,"followers_count":0,"created":"2010-06-04T01:46:36Z","language":"Java","pushed":"2012-06-08T20:15:31.323Z"},{"gravatar_id":"94f3a1b384d13d1413422b6b64935d48","score":9.794494,"type":"user","fullname":"Vincent Anonymouse","repos":1,"name":"Vincent Anonymouse","location":"","login":"milomouse","public_repo_count":1,"username":"milomouse","created_at":"2009-04-23T05:11:40Z","record":null,"id":"user-76868","followers":19,"followers_count":19,"created":"2009-04-23T05:11:40Z","language":"Common Lisp","pushed":"2012-03-07T19:19:44.686Z"},{"gravatar_id":"0d131f51bf9526483afcac2dd0d3dad5","score":9.7643385,"type":"user","fullname":"Vincent Cabansag","repos":1,"name":"Vincent Cabansag","location":"Chicago, IL","login":"vcabansag","public_repo_count":1,"username":"vcabansag","created_at":"2011-09-19T15:10:07Z","record":null,"id":"user-1062352","followers":19,"followers_count":19,"created":"2011-09-19T15:10:07Z","language":"Ruby","pushed":"2012-06-27T15:15:38.916Z"},{"gravatar_id":"8c6856b195974b4e03bf9ce24f36ec16","score":9.6641245,"type":"user","repos":0,"name":"Vincent","fullname":"Vincent","location":"Santa Barbara, CA","login":"vincentalindogan","public_repo_count":0,"username":"vincentalindogan","created_at":"2011-03-27T18:47:05Z","record":null,"id":"user-693707","followers":2,"followers_count":2,"created":"2011-03-27T18:47:05Z","language":"","pushed":"2012-03-26T00:15:09.735Z"},{"gravatar_id":"fb56e63daee1464b77209410873f0070","score":9.6641245,"type":"user","name":"Will Vincent","location":"Twin Cities, MN","repos":0,"fullname":"Will Vincent","login":"willvincent","public_repo_count":0,"username":"willvincent","created_at":"2011-03-25T08:19:27Z","record":null,"id":"user-689891","followers":2,"followers_count":2,"created":"2011-03-25T08:19:27Z","language":"","pushed":"2012-05-14T19:16:38.835Z"},{"gravatar_id":"ed4127e0b58e6d0f753a987f895abebd","score":9.6641245,"type":"user","name":"vincent","fullname":"vincent","location":"Beijing China","repos":3,"login":"vincenttone","public_repo_count":3,"username":"vincenttone","created_at":"2011-11-08T01:48:51Z","record":null,"id":"user-1179536","followers":1,"followers_count":1,"created":"2011-11-08T01:48:51Z","language":"Python","pushed":"2012-05-28T11:15:18.397Z"},{"gravatar_id":"aa7c3566126ee339d33fee2c801662d9","score":9.6641245,"type":"user","fullname":"Vincent","name":"Vincent","repos":6,"location":"Valence/France","login":"vinzcoco","public_repo_count":6,"username":"vinzcoco","created_at":"2012-01-23T21:13:58Z","record":null,"id":"user-1372480","followers":0,"followers_count":0,"created":"2012-01-23T21:13:58Z","language":"PHP","pushed":"2012-06-20T10:15:18.217Z"},{"gravatar_id":"8493dbf44e9a5995b24165464f10df92","score":9.595475,"type":"user","location":"","name":"Vincent ","repos":5,"fullname":"Vincent ","login":"livewire195","public_repo_count":5,"username":"livewire195","created_at":"2012-03-27T16:10:49Z","record":null,"id":"user-1580359","followers":0,"followers_count":0,"created":"2012-03-27T16:10:49Z","language":"Python","pushed":"2012-06-09T07:15:13.208Z"},{"gravatar_id":"4667846b9c1e5e426ca958ac96882eb9","score":9.576109,"type":"user","name":"vincent","repos":4,"fullname":"vincent","location":"","login":"vincent5295","public_repo_count":4,"username":"vincent5295","created_at":"2012-02-29T03:00:42Z","record":null,"id":"user-1483932","followers":0,"followers_count":0,"created":"2012-02-29T03:00:42Z","language":"C","pushed":"2012-06-17T14:15:11.01Z"},{"gravatar_id":"032f1a85263f21ff1f013421967ef99e","score":9.558389,"type":"user","name":"Vincent Franco","repos":13,"fullname":"Vincent Franco","location":"Sacramento","login":"vinniefranco","public_repo_count":13,"username":"vinniefranco","created_at":"2010-07-10T20:05:55Z","record":null,"id":"user-328428","followers":14,"followers_count":14,"created":"2010-07-10T20:05:55Z","language":"Ruby","pushed":"2012-06-17T19:15:32.752Z"},{"gravatar_id":"5ed6fc41ebf7d88590a4c07eae074e97","score":9.558389,"type":"user","fullname":"Vincent Deloso","repos":25,"name":"Vincent Deloso","location":"","login":"Mitsugaru","public_repo_count":25,"username":"Mitsugaru","created_at":"2011-11-09T21:32:35Z","record":null,"id":"user-1184640","followers":10,"followers_count":10,"created":"2011-11-09T21:32:35Z","language":"Java","pushed":"2012-06-27T15:15:40.449Z"},{"gravatar_id":"051a209f0b3759e8e51680562955d555","score":9.556979,"type":"user","name":"Vincent","fullname":"Vincent","repos":1,"location":"","login":"vgametoo","public_repo_count":1,"username":"vgametoo","created_at":"2012-03-19T12:39:35Z","record":null,"id":"user-1552699","followers":1,"followers_count":1,"created":"2012-03-19T12:39:35Z","language":"","pushed":"2012-06-21T19:15:26.276Z"},{"gravatar_id":"a270083a603e945d156b9fa5ba7f1270","score":9.55321,"type":"user","fullname":"Vincent","name":"Vincent","location":"","repos":1,"login":"dominiquevincent","public_repo_count":1,"username":"dominiquevincent","created_at":"2010-05-05T13:45:32Z","record":null,"id":"user-265581","followers":1,"followers_count":1,"created":"2010-05-05T13:45:32Z","language":"JavaScript","pushed":"2010-11-12T07:15:10.614Z"},{"gravatar_id":"4136d955e297f2759ac728b6d1701f36","score":9.55321,"type":"user","name":"Vincent","repos":1,"fullname":"Vincent","location":"","login":"vincentamari","public_repo_count":1,"username":"vincentamari","created_at":"2011-03-14T11:02:58Z","record":null,"id":"user-668429","followers":1,"followers_count":1,"created":"2011-03-14T11:02:58Z","language":"JavaScript","pushed":"2012-06-18T07:15:51.072Z"},{"gravatar_id":"4b44c097908d14610ba01790b5fc975c","score":9.526825,"type":"user","fullname":"Vincent","name":"Vincent","location":"","repos":4,"login":"ciex","public_repo_count":4,"username":"ciex","created_at":"2010-05-16T15:08:50Z","record":null,"id":"user-278463","followers":0,"followers_count":0,"created":"2010-05-16T15:08:50Z","language":"Python","pushed":"2012-04-16T15:15:29.943Z"},{"gravatar_id":"010564c5d5894e8e22ba40de45917566","score":9.526825,"type":"user","fullname":"Vincent","name":"Vincent","repos":1,"location":"The Netherlands","login":"Vinnl","public_repo_count":1,"username":"Vinnl","created_at":"2008-04-02T18:24:21Z","record":null,"id":"user-4251","followers":1,"followers_count":1,"created":"2008-04-02T18:24:21Z","language":"","pushed":"2012-05-04T14:15:33.377Z"},{"gravatar_id":"4b86e791cadf9cc2c0a4a7bfc32d9e9e","score":9.526825,"type":"user","fullname":"Vincent","name":"Vincent","repos":1,"location":"","login":"monkeymajiks","public_repo_count":1,"username":"monkeymajiks","created_at":"2012-01-25T22:10:51Z","record":null,"id":"user-1380497","followers":1,"followers_count":1,"created":"2012-01-25T22:10:51Z","language":"","pushed":"2012-06-12T11:15:31.686Z"},{"gravatar_id":"916769ca776c1e7576bcb7cd34be7391","score":9.526825,"type":"user","name":"Vincent","location":"","fullname":"Vincent","repos":4,"login":"vgauthier","public_repo_count":4,"username":"vgauthier","created_at":"2012-02-25T20:07:22Z","record":null,"id":"user-1473920","followers":0,"followers_count":0,"created":"2012-02-25T20:07:22Z","language":"Python","pushed":"2012-06-23T16:15:14.419Z"},{"gravatar_id":"b2f52d3a1a83d0fa6be6705d322bc1de","score":9.523987,"type":"user","name":"Vincent","location":"France","repos":0,"fullname":"Vincent","login":"Vincent-P","public_repo_count":0,"username":"Vincent-P","created_at":"2011-07-28T13:51:46Z","record":null,"id":"user-944506","followers":1,"followers_count":1,"created":"2011-07-28T13:51:46Z","language":"","pushed":"2012-05-12T09:15:15.844Z"},{"gravatar_id":"fc24888b3f4d2a85348e7bbded2f4100","score":9.488329,"type":"user","fullname":"Vincent","repos":0,"name":"Vincent","location":"Amsterdam","login":"viancen","public_repo_count":0,"username":"viancen","created_at":"2012-02-15T08:22:55Z","record":null,"id":"user-1439145","followers":1,"followers_count":1,"created":"2012-02-15T08:22:55Z","language":"","pushed":"2012-06-26T21:15:34.446Z"},{"gravatar_id":"8682561c2989398cda139818390a25c4","score":9.48456,"type":"user","name":"Vincent","repos":0,"fullname":"Vincent","location":"Singapore","login":"vsputra","public_repo_count":0,"username":"vsputra","created_at":"2010-07-19T17:38:53Z","record":null,"id":"user-337548","followers":1,"followers_count":1,"created":"2010-07-19T17:38:53Z","language":"","pushed":"2012-06-19T03:15:15.214Z"},{"gravatar_id":"d3d7715ddc9d2c98dc0acca41026e3ec","score":9.48079,"type":"user","name":"Vincent","location":"Melbourne/Australia","fullname":"Vincent","repos":3,"login":"vincentwongso","public_repo_count":3,"username":"vincentwongso","created_at":"2012-01-03T00:57:50Z","record":null,"id":"user-1300030","followers":0,"followers_count":0,"created":"2012-01-03T00:57:50Z","language":"JavaScript","pushed":"2012-05-10T23:15:22.719Z"},{"gravatar_id":"207cf37afe1b8de78411201832496eb3","score":9.48079,"type":"user","name":"vincent","location":"bordeaux","fullname":"vincent","repos":3,"login":"guillaumevincent","public_repo_count":3,"username":"guillaumevincent","created_at":"2011-07-28T06:59:30Z","record":null,"id":"user-943762","followers":0,"followers_count":0,"created":"2011-07-28T06:59:30Z","language":"Python","pushed":"2012-06-22T12:15:17.467Z"},{"gravatar_id":"fc35e4705d430b49a2e1f962e73d567f","score":9.458175,"type":"user","fullname":"Vincent","repos":0,"name":"Vincent","location":"","login":"vn","public_repo_count":0,"username":"vn","created_at":"2012-01-20T23:48:32Z","record":null,"id":"user-1361165","followers":1,"followers_count":1,"created":"2012-01-20T23:48:32Z","language":"","pushed":"2012-06-28T11:15:11.679Z"},{"gravatar_id":"c34027ae138bf86507c5a36a6b3bf3a5","score":9.421089,"type":"user","name":"Vincent Lannurien","fullname":"Vincent Lannurien","location":"France","repos":8,"login":"addikt1ve","public_repo_count":8,"username":"addikt1ve","created_at":"2008-09-01T13:41:54Z","record":null,"id":"user-22757","followers":15,"followers_count":15,"created":"2008-09-01T13:41:54Z","language":"Shell","pushed":"2011-04-29T22:15:09.273Z"},{"gravatar_id":"226e40fdc55d4597a46279296a616384","score":9.419679,"type":"user","location":"Denver","name":"Vincent","repos":2,"fullname":"Vincent","login":"vincentdavis","public_repo_count":2,"username":"vincentdavis","created_at":"2010-03-29T12:06:25Z","record":null,"id":"user-232564","followers":0,"followers_count":0,"created":"2010-03-29T12:06:25Z","language":"VimL","pushed":"2012-06-05T19:15:38.974Z"},{"gravatar_id":"f6e9045bb7bf8b000eaf62caffbd17ab","score":9.41591,"type":"user","fullname":"Vincent","repos":2,"name":"Vincent","location":"Mont sainte anne","login":"vincentvent","public_repo_count":2,"username":"vincentvent","created_at":"2011-08-10T01:40:18Z","record":null,"id":"user-970338","followers":0,"followers_count":0,"created":"2011-08-10T01:40:18Z","language":"","pushed":"2012-03-08T14:15:38.332Z"},{"gravatar_id":"dfac99df6d6b570feb68f0b88f720a80","score":9.41214,"type":"user","name":"vincent","repos":2,"fullname":"vincent","location":"China, Shenzhen, Nanshan","login":"chenws","public_repo_count":2,"username":"chenws","created_at":"2012-01-03T16:35:05Z","record":null,"id":"user-1301573","followers":0,"followers_count":0,"created":"2012-01-03T16:35:05Z","language":"C","pushed":"2012-05-02T09:15:37.412Z"},{"gravatar_id":"1cc07aa5b421181a130efdd61112ec3e","score":9.403019,"type":"user","fullname":"Vincent S","name":"Vincent S","repos":1,"location":"","login":"VincentS","public_repo_count":1,"username":"VincentS","created_at":"2011-08-23T12:33:31Z","record":null,"id":"user-998872","followers":0,"followers_count":0,"created":"2011-08-23T12:33:31Z","language":"Ruby","pushed":"2011-08-23T13:15:25.062Z"},{"gravatar_id":"304da7fc1421e25a18b95b784baf9539","score":9.389524,"type":"user","name":"Vincent","fullname":"Vincent","location":"","repos":2,"login":"copyshaft","public_repo_count":2,"username":"copyshaft","created_at":"2009-12-04T03:29:28Z","record":null,"id":"user-161704","followers":0,"followers_count":0,"created":"2009-12-04T03:29:28Z","language":"","pushed":"2010-05-24T00:25:15.443Z"},{"gravatar_id":"838409afe0def35c03da9757148df790","score":9.389524,"type":"user","name":"Vincent","repos":2,"fullname":"Vincent","location":"Paris","login":"vinceofdrink","public_repo_count":2,"username":"vinceofdrink","created_at":"2011-07-04T11:24:46Z","record":null,"id":"user-893359","followers":0,"followers_count":0,"created":"2011-07-04T11:24:46Z","language":"C","pushed":"2012-01-12T15:15:29.207Z"},{"gravatar_id":"1adf0d0b91278d02e88627ffbdd1c65a","score":9.389524,"type":"user","repos":2,"name":"Vincent","fullname":"Vincent","location":"China","login":"wenzheng","public_repo_count":2,"username":"wenzheng","created_at":"2011-08-11T12:35:23Z","record":null,"id":"user-973811","followers":0,"followers_count":0,"created":"2011-08-11T12:35:23Z","language":"","pushed":"2012-02-23T15:15:48.56Z"},{"score":9.389524,"type":"user","fullname":"Vincent","name":"Vincent","location":"France","repos":2,"login":"ziefno","public_repo_count":2,"username":"ziefno","created_at":"2012-03-10T14:44:03Z","record":null,"id":"user-1523263","followers":0,"followers_count":0,"created":"2012-03-10T14:44:03Z","language":"","pushed":"2012-03-10T22:15:17.63Z"},{"gravatar_id":"95bcdb7789b7c0481aea3cf55b5bb987","score":9.389524,"type":"user","name":"Vincent","location":"","fullname":"Vincent","repos":2,"login":"vincentm8","public_repo_count":2,"username":"vincentm8","created_at":"2010-09-12T19:26:07Z","record":null,"id":"user-396662","followers":0,"followers_count":0,"created":"2010-09-12T19:26:07Z","language":"PHP","pushed":"2012-04-16T08:15:17.843Z"},{"gravatar_id":"811d7edddfcb7e652f38c7e56d51ea51","score":9.389524,"type":"user","fullname":"Vincent","repos":2,"name":"Vincent","location":"HCM","login":"vnoob","public_repo_count":2,"username":"vnoob","created_at":"2011-04-15T15:26:21Z","record":null,"id":"user-731797","followers":0,"followers_count":0,"created":"2011-04-15T15:26:21Z","language":"","pushed":"2012-06-02T04:15:19.714Z"},{"gravatar_id":"bf4442de23d120becefaa556f41562f2","score":9.389524,"type":"user","name":"Vincente","repos":2,"fullname":"Vincente","location":"California","login":"vciancio","public_repo_count":2,"username":"vciancio","created_at":"2011-12-01T03:03:38Z","record":null,"id":"user-1232406","followers":0,"followers_count":0,"created":"2011-12-01T03:03:38Z","language":"Java","pushed":"2012-06-19T00:15:59.771Z"},{"gravatar_id":"d6288a0b3a370e4db4ea27adbeb74a30","score":9.378824,"type":"user","repos":10,"name":"Blanchon Vincent","fullname":"Blanchon Vincent","location":"Sophia Antipolis, France","login":"blanchonvincent","public_repo_count":10,"username":"blanchonvincent","created_at":"2012-03-27T17:07:35Z","record":null,"id":"user-1580512","followers":14,"followers_count":14,"created":"2012-03-27T17:07:35Z","language":"PHP","pushed":"2012-06-04T10:15:20.206Z"},{"gravatar_id":"667176b96540d167eb74f473c9aea5f7","score":9.378824,"type":"user","name":"Vincent Voyer","location":"Paris, france","fullname":"Vincent Voyer","repos":13,"login":"vvo","public_repo_count":13,"username":"vvo","created_at":"2009-09-06T14:28:06Z","record":null,"id":"user-123822","followers":13,"followers_count":13,"created":"2009-09-06T14:28:06Z","language":"JavaScript","pushed":"2012-06-26T17:15:45.365Z"},{"gravatar_id":"71e56904f65a1ad1f3a178062fad6897","score":9.370159,"type":"user","fullname":"Vincent","name":"Vincent","repos":1,"location":"France, Tarn","login":"Vincent81","public_repo_count":1,"username":"Vincent81","created_at":"2011-08-05T21:22:58Z","record":null,"id":"user-962113","followers":0,"followers_count":0,"created":"2011-08-05T21:22:58Z","language":"","pushed":"2011-09-06T14:15:24.224Z"},{"gravatar_id":"014023e8bd4f74bdd5dd949f9afcf9c9","score":9.34726,"type":"user","name":"Vincent","fullname":"Vincent","location":"","repos":1,"login":"Vincentbosch","public_repo_count":1,"username":"Vincentbosch","created_at":"2011-05-12T14:48:43Z","record":null,"id":"user-784014","followers":0,"followers_count":0,"created":"2011-05-12T14:48:43Z","language":"","pushed":"2011-05-17T14:15:16.145Z"},{"gravatar_id":"86f44ee7aef87c7df23227ed99af157c","score":9.34726,"type":"user","name":"vincent","location":"","repos":1,"fullname":"vincent","login":"legarconjoure","public_repo_count":1,"username":"legarconjoure","created_at":"2011-04-04T12:20:19Z","record":null,"id":"user-708274","followers":0,"followers_count":0,"created":"2011-04-04T12:20:19Z","language":"","pushed":"2012-05-14T08:15:24.999Z"},{"gravatar_id":"fceb28e90061e831277e161d5e85757a","score":9.327894,"type":"user","repos":0,"name":"Vincent","fullname":"Vincent","location":"","login":"vincent7894","public_repo_count":0,"username":"vincent7894","created_at":"2011-12-10T20:26:26Z","record":null,"id":"user-1254570","followers":0,"followers_count":0,"created":"2011-12-10T20:26:26Z","language":"","pushed":"2012-03-29T18:15:22.448Z"},{"gravatar_id":"8a817ae82ab5e742c6aca7548e39ab65","score":9.327894,"type":"user","repos":0,"name":"Vincent","fullname":"Vincent","location":"","login":"vincent73000","public_repo_count":0,"username":"vincent73000","created_at":"2011-07-30T13:45:47Z","record":null,"id":"user-948600","followers":0,"followers_count":0,"created":"2011-07-30T13:45:47Z","language":"","pushed":"2012-06-04T11:15:21.524Z"},{"gravatar_id":"d98356664e29463bdc8d8e77095a80bd","score":9.320875,"type":"user","name":"Vincent","fullname":"Vincent","location":"Shanghai, China","repos":1,"login":"ttyio","public_repo_count":1,"username":"ttyio","created_at":"2010-08-16T06:35:46Z","record":null,"id":"user-365590","followers":0,"followers_count":0,"created":"2010-08-16T06:35:46Z","language":"VimL","pushed":"2010-11-08T03:15:12.032Z"},{"gravatar_id":"74ccd2db6dd9211393d4bd62408c6c13","score":9.320875,"type":"user","fullname":"vincent","repos":1,"name":"vincent","location":"","login":"tean60","public_repo_count":1,"username":"tean60","created_at":"2011-01-20T06:55:22Z","record":null,"id":"user-574055","followers":0,"followers_count":0,"created":"2011-01-20T06:55:22Z","language":"","pushed":"2011-06-10T06:15:11.093Z"},{"gravatar_id":"3526439448f2288e0aa5f9456b6aad4b","score":9.320875,"type":"user","name":"Will Vincent","fullname":"Will Vincent","repos":1,"location":"","login":"tcindie","public_repo_count":1,"username":"tcindie","created_at":"2010-07-02T18:50:26Z","record":null,"id":"user-321392","followers":0,"followers_count":0,"created":"2010-07-02T18:50:26Z","language":"PHP","pushed":"2011-07-01T17:15:14.856Z"},{"gravatar_id":"3aeafe584ef75baac1976c910f069752","score":9.320875,"type":"user","name":"vincent","fullname":"vincent","location":"","repos":1,"login":"vincentye38","public_repo_count":1,"username":"vincentye38","created_at":"2011-01-27T07:37:41Z","record":null,"id":"user-586072","followers":0,"followers_count":0,"created":"2011-01-27T07:37:41Z","language":"","pushed":"2012-04-05T05:15:16.89Z"},{"gravatar_id":"49a3fcbf452d1e9d85259d8e1f510934","score":9.320875,"type":"user","repos":1,"name":"Vincent","location":"Rouen","fullname":"Vincent","login":"pasificking","public_repo_count":1,"username":"pasificking","created_at":"2012-03-30T09:07:51Z","record":null,"id":"user-1589894","followers":0,"followers_count":0,"created":"2012-03-30T09:07:51Z","language":"","pushed":"2012-04-10T09:15:35.441Z"},{"gravatar_id":"c3ca1e10cdb67296511fdb480b4acdf0","score":9.320875,"type":"user","name":"Vincent","repos":1,"fullname":"Vincent","location":"","login":"Bpbannerproject","public_repo_count":1,"username":"Bpbannerproject","created_at":"2012-05-07T19:08:32Z","record":null,"id":"user-1714420","followers":0,"followers_count":0,"created":"2012-05-07T19:08:32Z","language":"","pushed":"2012-05-16T06:15:09.874Z"},{"gravatar_id":"259619f6b128ff8886bffa31ea52ab35","score":9.320875,"type":"user","fullname":"Vincent","repos":1,"name":"Vincent","location":"Nanjing, China","login":"farawayboat","public_repo_count":1,"username":"farawayboat","created_at":"2011-09-23T16:35:39Z","record":null,"id":"user-1074475","followers":0,"followers_count":0,"created":"2011-09-23T16:35:39Z","language":"","pushed":"2012-06-28T07:15:16.399Z"},{"gravatar_id":"6b3cc4c0504401ebb74ecac20cec5fbb","score":9.301509,"type":"user","fullname":"Vincent","name":"Vincent","location":"","repos":0,"login":"vincent7842","public_repo_count":0,"username":"vincent7842","created_at":"2012-03-17T14:30:39Z","record":null,"id":"user-1547379","followers":0,"followers_count":0,"created":"2012-03-17T14:30:39Z","language":"","pushed":"2012-03-17T15:15:16.619Z"},{"gravatar_id":"886a562bd3cc225ec3250650d8cdf4bd","score":9.297433,"type":"user","name":"Zhiqiang Zhao","location":"Hangzhou, China","fullname":"Zhiqiang Zhao","repos":9,"login":"vincent-zhao","public_repo_count":9,"username":"vincent-zhao","created_at":"2012-01-31T03:18:49Z","record":null,"id":"user-1393423","followers":23,"followers_count":23,"created":"2012-01-31T03:18:49Z","language":"JavaScript","pushed":"2012-06-23T07:15:16.545Z"},{"gravatar_id":"4c7ff78c68f09a6294059d17df823fbf","score":9.291653,"type":"user","name":"Vincent","repos":0,"fullname":"Vincent","location":"Belgium","login":"VincentU","public_repo_count":0,"username":"VincentU","created_at":"2012-03-21T06:39:02Z","record":null,"id":"user-1559921","followers":0,"followers_count":0,"created":"2012-03-21T06:39:02Z","language":"","pushed":"2012-05-16T18:15:22.652Z"},{"gravatar_id":"9ec9ad37e9ab75436de0b3a0ce971dbe","score":9.283789,"type":"user","name":"Vincent Tencé","location":"Laval, Qc Canada","fullname":"Vincent Tencé","repos":12,"login":"testinfected","public_repo_count":12,"username":"testinfected","created_at":"2009-09-18T23:30:38Z","record":null,"id":"user-128804","followers":13,"followers_count":13,"created":"2009-09-18T23:30:38Z","language":"Java","pushed":"2012-06-23T19:16:06.24Z"},{"gravatar_id":"30d318bdf8e6a1d013c1bd8c5e9749a0","score":9.282379,"type":"user","name":"Vincent","fullname":"Vincent","location":"Coeur d'Alene ID","repos":0,"login":"thinkeryvin","public_repo_count":0,"username":"thinkeryvin","created_at":"2009-09-22T06:48:36Z","record":null,"id":"user-129806","followers":0,"followers_count":0,"created":"2009-09-22T06:48:36Z","language":"","pushed":"2011-03-30T07:15:09.25Z"},{"gravatar_id":"160934525d484d9269d3f5be05ff26da","score":9.282379,"type":"user","fullname":"Vincent","name":"Vincent","repos":0,"location":"Zoetermeer","login":"vinnyb","public_repo_count":0,"username":"vinnyb","created_at":"2010-08-16T13:04:14Z","record":null,"id":"user-365924","followers":0,"followers_count":0,"created":"2010-08-16T13:04:14Z","language":"","pushed":"2012-05-07T09:15:11.135Z"},{"gravatar_id":"e36b0ea5f740b3545bb9c39dcf4e5110","score":9.282379,"type":"user","fullname":"vincent","name":"vincent","location":"","repos":0,"login":"vinc3nt","public_repo_count":0,"username":"vinc3nt","created_at":"2011-07-01T11:34:07Z","record":null,"id":"user-888545","followers":0,"followers_count":0,"created":"2011-07-01T11:34:07Z","language":"","pushed":"2012-05-22T21:15:13.084Z"},{"gravatar_id":"953b83ade35b99fb82c2a6e134b2329a","score":9.27861,"type":"user","name":"vincent","location":"Montpellier, France","fullname":"vincent","repos":0,"login":"narf","public_repo_count":0,"username":"narf","created_at":"2010-10-28T16:11:35Z","record":null,"id":"user-458263","followers":0,"followers_count":0,"created":"2010-10-28T16:11:35Z","language":"","pushed":"2012-05-21T08:15:26.631Z"},{"gravatar_id":"a6c32849daa0d165f480bfa612116767","score":9.27861,"type":"user","name":"Vincent","location":"","repos":0,"fullname":"Vincent","login":"vincentveri","public_repo_count":0,"username":"vincentveri","created_at":"2011-05-03T08:59:39Z","record":null,"id":"user-765248","followers":0,"followers_count":0,"created":"2011-05-03T08:59:39Z","language":"","pushed":"2012-05-25T18:15:20.565Z"},{"gravatar_id":"23284aaf57ee593baa81a3d953386021","score":9.27861,"type":"user","repos":0,"name":"Vincent","fullname":"Vincent","location":"","login":"vrafols","public_repo_count":0,"username":"vrafols","created_at":"2012-05-28T03:31:24Z","record":null,"id":"user-1784314","followers":0,"followers_count":0,"created":"2012-05-28T03:31:24Z","language":"","pushed":"2012-06-04T07:15:19.793Z"},{"gravatar_id":"24eb2af05f128cbf59314bddf59f3ed9","score":9.27861,"type":"user","name":"Vincent","fullname":"Vincent","repos":0,"location":"","login":"vinc38","public_repo_count":0,"username":"vinc38","created_at":"2012-01-18T08:14:07Z","record":null,"id":"user-1343597","followers":0,"followers_count":0,"created":"2012-01-18T08:14:07Z","language":"","pushed":"2012-06-14T14:15:37.571Z"},{"gravatar_id":"5a60bf71026c317ff9cacf9cce842924","score":9.27484,"type":"user","repos":0,"name":"Vincent","fullname":"Vincent","location":"","login":"Squee","public_repo_count":0,"username":"Squee","created_at":"2009-11-18T13:16:18Z","record":null,"id":"user-154841","followers":0,"followers_count":0,"created":"2009-11-18T13:16:18Z","language":"","pushed":"2011-11-15T17:15:15.363Z"},{"gravatar_id":"747d136a83a1e1fd26b5f001eb632d2c","score":9.252225,"type":"user","name":"Vincent","fullname":"Vincent","location":"","repos":0,"login":"msr911","public_repo_count":0,"username":"msr911","created_at":"2010-02-11T10:01:05Z","record":null,"id":"user-201682","followers":0,"followers_count":0,"created":"2010-02-11T10:01:05Z","language":"","pushed":"2010-05-23T23:30:14.272Z"},{"gravatar_id":"f09b6aab5c78a879998248e76e9e80b8","score":9.252225,"type":"user","name":"vincent","fullname":"vincent","location":"","repos":0,"login":"vincwu","public_repo_count":0,"username":"vincwu","created_at":"2009-05-02T14:51:55Z","record":null,"id":"user-80223","followers":0,"followers_count":0,"created":"2009-05-02T14:51:55Z","language":"","pushed":"2011-03-22T06:15:08.705Z"}]} + diff --git a/lib/github/tests/ReplayData/Github.testLegacySearchUsersExplicitPagination.txt b/lib/github/tests/ReplayData/Github.testLegacySearchUsersExplicitPagination.txt new file mode 100644 index 0000000000..59a5ce3130 --- /dev/null +++ b/lib/github/tests/ReplayData/Github.testLegacySearchUsersExplicitPagination.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/legacy/user/search/Lucy?start_page=2 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4946'), ('x-ratelimit-limit', '5000'), ('content-length', '17711'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('etag', '"2276a70e7cb32c70ab3018105c9dcb22"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Fri, 29 Jun 2012 12:30:45 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"users":[{"fullname":"","created_at":"2010-08-08T23:52:29Z","followers":0,"pushed":"2010-08-09T00:15:09.022Z","gravatar_id":"6d7d3334458d9b82a5c5e22409ed043b","followers_count":0,"name":"","username":"lucievh","login":"lucievh","repos":0,"created":"2010-08-08T23:52:29Z","language":"","record":null,"id":"user-358057","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2010-09-22T05:31:14Z","followers":0,"pushed":"2010-09-22T06:15:13.692Z","gravatar_id":"f753f69213bbfc3b80607ee48a488d6e","followers_count":0,"name":"","username":"lucyim","login":"lucyim","repos":0,"created":"2010-09-22T05:31:14Z","language":"","record":null,"id":"user-410994","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-04-24T20:45:24Z","followers":0,"pushed":"2011-04-24T21:15:12.163Z","gravatar_id":"f1e19ca48feb1e62ee3149d28c11e911","followers_count":0,"name":"","username":"Lucief","login":"Lucief","repos":0,"created":"2011-04-24T20:45:24Z","language":"","record":null,"id":"user-749248","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-05-30T09:55:59Z","followers":0,"pushed":"2011-05-30T11:15:20.068Z","gravatar_id":"2da8ca4713c1b1e42a4a17323e4e8dae","followers_count":0,"name":"","username":"RevolverUpstairs","login":"RevolverUpstairs","repos":0,"created":"2011-05-30T09:55:59Z","language":"","record":null,"id":"user-818408","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-07-22T13:27:38Z","followers":0,"pushed":"2011-07-22T15:15:23.693Z","gravatar_id":"3686834b80a859db93c76e78df9a5a64","followers_count":0,"name":"","username":"seriousprogramming","login":"seriousprogramming","repos":0,"created":"2011-07-22T13:27:38Z","language":"","record":null,"id":"user-932499","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-08-06T09:47:48Z","followers":0,"pushed":"2011-08-06T10:15:31.758Z","gravatar_id":"69eafce84a5e4a9b26bc337a58ca72bc","followers_count":0,"name":"","username":"reicul","login":"reicul","repos":0,"created":"2011-08-06T09:47:48Z","language":"","record":null,"id":"user-962793","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-08-07T11:56:47Z","followers":0,"pushed":"2011-08-07T12:15:14.482Z","gravatar_id":"8896a319762ed30fea086e8213003809","followers_count":0,"name":"","username":"davincidubai","login":"davincidubai","repos":0,"created":"2011-08-07T11:56:47Z","language":"","record":null,"id":"user-964372","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-08-14T23:19:20Z","followers":0,"pushed":"2011-08-15T00:15:17.005Z","gravatar_id":"c464112ee895455ebc7e4395455cc3b4","followers_count":0,"name":"","username":"LucianaNascimentodoPrado","login":"LucianaNascimentodoPrado","repos":0,"created":"2011-08-14T23:19:20Z","language":"","record":null,"id":"user-979924","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-08-20T03:41:59Z","followers":0,"pushed":"2011-08-20T04:15:15.688Z","gravatar_id":"89b16b399fef7f5cf0f09aa52eb1f982","followers_count":0,"name":"","username":"lucia-huenchunao","login":"lucia-huenchunao","repos":0,"created":"2011-08-20T03:41:59Z","language":"","record":null,"id":"user-992290","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-08-30T06:35:07Z","followers":0,"pushed":"2011-08-30T07:15:40.964Z","gravatar_id":"15e9c23dc4ff8309d32759ebbc12f136","followers_count":0,"name":"","username":"kraji20","login":"kraji20","repos":0,"created":"2011-08-30T06:35:07Z","language":"","record":null,"id":"user-1013732","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-09-16T16:00:13Z","followers":0,"pushed":"2011-09-16T16:15:31.791Z","gravatar_id":"29b7278765b2513f6b1770acffd6e76c","followers_count":0,"name":"","username":"Lucywolo","login":"Lucywolo","repos":0,"created":"2011-09-16T16:00:13Z","language":"","record":null,"id":"user-1056415","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-09-20T08:49:42Z","followers":0,"pushed":"2011-09-20T09:15:39.554Z","gravatar_id":"272574bc4ad24eb6ca99e0ff63181708","followers_count":0,"name":"","username":"Luciel","login":"Luciel","repos":0,"created":"2011-09-20T08:49:42Z","language":"","record":null,"id":"user-1064456","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-09-26T00:34:00Z","followers":0,"pushed":"2011-09-26T01:15:19.861Z","gravatar_id":"88afbca53168e171337cd236ebf861eb","followers_count":0,"name":"","username":"sunnysummer","login":"sunnysummer","repos":0,"created":"2011-09-26T00:34:00Z","language":"","record":null,"location":"","id":"user-1079184","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-10-12T18:56:57Z","followers":0,"pushed":"2011-10-12T19:15:46.788Z","gravatar_id":"2d2bbcf8fc6ba08acad9d0120f7e877f","followers_count":0,"name":"","username":"elush","login":"elush","repos":0,"created":"2011-10-12T18:56:57Z","language":"","record":null,"id":"user-1123389","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-11-08T13:10:02Z","followers":0,"pushed":"2011-11-08T13:15:29.919Z","gravatar_id":"e47379a7fb647bcfe9cb35b313c6681d","followers_count":0,"name":"","username":"oprealuci","login":"oprealuci","repos":0,"created":"2011-11-08T13:10:02Z","language":"","record":null,"id":"user-1180621","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-11-30T12:50:11Z","followers":0,"pushed":"2012-01-06T20:15:31.201Z","followers_count":0,"name":"","username":"Flika","login":"Flika","repos":0,"created":"2011-11-30T12:50:11Z","language":"","record":null,"id":"user-1230733","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-01-16T13:52:04Z","followers":0,"pushed":"2012-01-16T14:15:26.544Z","gravatar_id":"93a807008d0335f8cfa7630905a3731a","followers_count":0,"name":"","username":"lsher","login":"lsher","created":"2012-01-16T13:52:04Z","repos":0,"language":"","record":null,"id":"user-1333790","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-02-14T12:45:55Z","followers":0,"pushed":"2012-02-14T13:15:21.421Z","gravatar_id":"48c680a1435659586d2b5fa88978bf2f","followers_count":0,"name":"","username":"datadrivenjournalism","login":"datadrivenjournalism","created":"2012-02-14T12:45:55Z","repos":0,"language":"","record":null,"id":"user-1436639","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-09-05T19:25:13Z","followers":0,"pushed":"2012-03-07T21:16:16.829Z","gravatar_id":"f85bd730cad7f29b2a6ffcb877ca9049","followers_count":0,"name":"","username":"nill2020","login":"nill2020","repos":0,"created":"2011-09-05T19:25:13Z","language":"","record":null,"id":"user-1028199","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-03-12T09:34:25Z","followers":0,"pushed":"2012-03-12T10:15:30.499Z","followers_count":0,"name":"","username":"doobi","login":"doobi","created":"2012-03-12T09:34:25Z","repos":0,"language":"","record":null,"id":"user-1528155","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-03-15T05:39:16Z","followers":0,"pushed":"2012-03-15T06:15:26.409Z","gravatar_id":"6e1dffbbee01406ca6362a476406e311","followers_count":0,"name":"","username":"lucilu","login":"lucilu","repos":0,"created":"2012-03-15T05:39:16Z","language":"","record":null,"id":"user-1539233","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-03-21T15:37:52Z","followers":0,"pushed":"2012-03-21T16:15:24.866Z","gravatar_id":"de5a284da24ca18274e389e172269cfa","followers_count":0,"name":"","username":"deldeldel","login":"deldeldel","repos":0,"created":"2012-03-21T15:37:52Z","language":"","record":null,"id":"user-1561401","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-03-27T13:06:55Z","followers":0,"pushed":"2012-03-27T13:15:45.802Z","gravatar_id":"b004de54d6f13d701ae5050809bdd091","followers_count":0,"name":"","username":"lucianacocca","login":"lucianacocca","repos":0,"created":"2012-03-27T13:06:55Z","language":"","record":null,"id":"user-1579740","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-09-27T23:18:49Z","followers":0,"pushed":"2012-04-27T02:15:22.503Z","gravatar_id":"6692a18a892458d7c4ab139f2c442277","followers_count":0,"name":"","username":"lucyli-sfdc","login":"lucyli-sfdc","repos":0,"created":"2011-09-27T23:18:49Z","language":"","record":null,"id":"user-1085374","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-05-01T10:05:02Z","followers":0,"pushed":"2012-05-01T12:15:23.517Z","gravatar_id":"9786861913ce64448699dba1ee27a7a6","followers_count":0,"name":"","username":"lucysatchell","login":"lucysatchell","repos":0,"created":"2012-05-01T10:05:02Z","language":"","record":null,"id":"user-1695084","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-05-01T12:11:30Z","followers":0,"pushed":"2012-06-01T19:16:17.478Z","gravatar_id":"c0228bc603e6802f3ee5e8299474587b","followers_count":0,"name":"","username":"UBM","login":"UBM","repos":0,"created":"2012-05-01T12:11:30Z","language":"","record":null,"id":"user-1695284","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-05-30T16:12:12Z","followers":0,"pushed":"2012-06-06T19:16:09.64Z","gravatar_id":"1652e06df5d348d1a575a36e2f7e5f72","followers_count":0,"name":"","username":"kolousek","login":"kolousek","created":"2012-05-30T16:12:12Z","repos":0,"language":"","record":null,"id":"user-1794308","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2010-05-04T01:08:54Z","followers":0,"pushed":"2012-06-13T20:15:11.55Z","gravatar_id":"f8ec680ef4321558d220391d96dfb797","followers_count":0,"name":"","username":"lucyzhang","login":"lucyzhang","created":"2010-05-04T01:08:54Z","repos":0,"language":"","record":null,"id":"user-263828","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-07-20T17:01:35Z","followers":0,"pushed":"2012-06-28T00:15:22.237Z","gravatar_id":"772de244d454a467439f0cdb6f4a1e4e","followers_count":0,"name":"","username":"lmegia","login":"lmegia","repos":0,"created":"2011-07-20T17:01:35Z","language":"","record":null,"id":"user-928346","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"Luis Olivo","created_at":"2012-03-07T21:32:50Z","followers":1,"pushed":"2012-06-02T18:15:15.477Z","gravatar_id":"4141a3f99023b16642e8a33d155947b6","followers_count":1,"name":"Luis Olivo","username":"luisolivo","login":"luisolivo","repos":1,"created":"2012-03-07T21:32:50Z","language":"Ruby","record":null,"id":"user-1513356","location":"Port Saint Lucie, Florida","score":2.791304,"type":"user","public_repo_count":1},{"fullname":"","created_at":"2011-08-31T03:50:47Z","followers":0,"pushed":"2011-08-31T04:15:23.388Z","gravatar_id":"331ecd4d2e53187e0287d9a1af51a7cd","followers_count":0,"name":"","username":"Lucyzhen","login":"Lucyzhen","repos":1,"created":"2011-08-31T03:50:47Z","language":"C#","record":null,"id":"user-1016061","location":"","score":2.7240717,"type":"user","public_repo_count":1},{"fullname":"","created_at":"2012-04-28T11:04:47Z","followers":0,"pushed":"2012-04-28T11:15:41.657Z","gravatar_id":"10cdf0c816a67a79461e672dd47c46de","followers_count":0,"name":"","username":"Luhzinha","login":"Luhzinha","repos":1,"created":"2012-04-28T11:04:47Z","language":"","record":null,"id":"user-1687701","location":"","score":2.7240717,"type":"user","public_repo_count":1},{"fullname":"","created_at":"2009-09-18T00:12:07Z","followers":0,"pushed":"2010-05-25T02:17:49.827Z","gravatar_id":"7766d61aa4bee478cd29d01653f99a27","followers_count":0,"name":"","username":"beautifly","login":"beautifly","repos":0,"created":"2009-09-18T00:12:07Z","language":"","record":null,"id":"user-128333","location":"","score":2.6737857,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-09-30T20:31:27Z","followers":0,"pushed":"2011-09-30T21:15:27.445Z","gravatar_id":"2421514bb391ad0e4009b441f35a8cfd","followers_count":0,"name":"","username":"lucybm96","login":"lucybm96","repos":0,"created":"2011-09-30T20:31:27Z","language":"","record":null,"id":"user-1093675","location":"","score":2.6737857,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-08-08T21:10:18Z","followers":0,"pushed":"2011-10-19T16:15:28.01Z","gravatar_id":"bc63269a11f7ce4a1ba817d7b598a4ec","followers_count":0,"name":"","username":"BuonocoreL","login":"BuonocoreL","repos":0,"created":"2011-08-08T21:10:18Z","language":"","record":null,"id":"user-967470","location":"","score":2.6737857,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-10-25T13:59:15Z","followers":0,"pushed":"2011-10-25T14:15:35.825Z","gravatar_id":"336abbd9e4151ae169e30e7e6679c7b7","followers_count":0,"name":"","username":"lucywilliams","login":"lucywilliams","repos":0,"created":"2011-10-25T13:59:15Z","language":"","record":null,"id":"user-1150845","location":"","score":2.6737857,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-02-05T19:08:43Z","followers":0,"pushed":"2012-02-05T19:15:26.112Z","gravatar_id":"710af9c67bfc63c7911801c960153551","followers_count":0,"name":"","username":"ZxOxZ","login":"ZxOxZ","created":"2012-02-05T19:08:43Z","repos":0,"language":"","record":null,"id":"user-1410529","location":"","score":2.6737857,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-02-22T12:38:07Z","followers":0,"pushed":"2012-02-22T13:15:21.033Z","gravatar_id":"4e34174ab98cfb31d27783a15edd65ff","followers_count":0,"name":"","username":"Motwinb","login":"Motwinb","repos":0,"created":"2012-02-22T12:38:07Z","language":"","record":null,"id":"user-1461109","location":"","score":2.6737857,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-03-05T06:41:31Z","followers":0,"pushed":"2012-03-05T07:15:17.415Z","gravatar_id":"3fd43be5de5bc0394cbb2f02fd5f8e55","followers_count":0,"name":"","username":"johnlucy","login":"johnlucy","repos":0,"created":"2012-03-05T06:41:31Z","language":"","record":null,"id":"user-1501671","location":"","score":2.6737857,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-03-05T16:24:11Z","followers":0,"pushed":"2012-03-05T17:15:18.016Z","gravatar_id":"c4c7f39ce80796afe054742ecebebd68","followers_count":0,"name":"","username":"Aquanimation","login":"Aquanimation","repos":0,"created":"2012-03-05T16:24:11Z","language":"","record":null,"id":"user-1503528","location":"","score":2.6737857,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-03-25T22:54:59Z","followers":0,"pushed":"2012-03-25T23:15:19.92Z","gravatar_id":"941783cf5e9908c1c1539f52063bfa83","followers_count":0,"name":"","username":"alaltaieri","login":"alaltaieri","repos":0,"created":"2012-03-25T22:54:59Z","language":"","record":null,"id":"user-1574456","location":"","score":2.6737857,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-04-02T14:04:23Z","followers":0,"pushed":"2012-04-02T14:15:39.659Z","gravatar_id":"b6dd2523be99cb65f67549fb3397038f","followers_count":0,"name":"","username":"lucylin","login":"lucylin","created":"2012-04-02T14:04:23Z","repos":0,"language":"","record":null,"id":"user-1598365","location":"","score":2.6737857,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-09-06T12:13:13Z","followers":0,"pushed":"2012-06-12T16:15:31.304Z","gravatar_id":"24b955ee4add1de5b71d892ba6bd52ac","followers_count":0,"name":"","username":"lucychambers","login":"lucychambers","created":"2011-09-06T12:13:13Z","repos":0,"language":"","record":null,"id":"user-1029861","location":"","score":2.6737857,"type":"user","public_repo_count":0},{"fullname":"Juan M Sesma","created_at":"2011-04-14T18:29:44Z","followers":0,"pushed":"2011-07-25T16:15:21.323Z","gravatar_id":"9aa303ceb9eece6fe6af228fe5d992f6","followers_count":0,"name":"Juan M Sesma","username":"JuanSesma","login":"JuanSesma","repos":1,"created":"2011-04-14T18:29:44Z","language":"Ruby","record":null,"id":"user-729951","location":"Port St Lucie","score":2.6404455,"type":"user","public_repo_count":1},{"fullname":"Carl","created_at":"2012-03-17T22:30:00Z","followers":0,"pushed":"2012-03-19T04:15:12.148Z","gravatar_id":"f9e3fc4d72e3199a38ea641ccafbb844","followers_count":0,"name":"Carl","username":"cdwwebware","login":"cdwwebware","repos":0,"created":"2012-03-17T22:30:00Z","language":"","record":null,"id":"user-1548384","location":"Port Saint Lucie, Florida","score":2.5901594,"type":"user","public_repo_count":0},{"fullname":"Zachary Wills","created_at":"2012-03-07T00:29:36Z","followers":0,"pushed":"2012-06-20T16:15:50.039Z","gravatar_id":"31decf5c3bc6f0006c8152eb778203c1","followers_count":0,"name":"Zachary Wills","username":"ZachWills","login":"ZachWills","repos":0,"created":"2012-03-07T00:29:36Z","language":"","record":null,"id":"user-1509438","location":"Port St. Lucie, FL","score":2.5901594,"type":"user","public_repo_count":0}]} + diff --git a/lib/github/tests/ReplayData/Github.testLegacySearchUsersPagination.txt b/lib/github/tests/ReplayData/Github.testLegacySearchUsersPagination.txt new file mode 100644 index 0000000000..789b9eeb93 --- /dev/null +++ b/lib/github/tests/ReplayData/Github.testLegacySearchUsersPagination.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/legacy/user/search/Lucy +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4947'), ('x-ratelimit-limit', '5000'), ('content-length', '38993'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('etag', '"30586212918ceda0cf4664e806f50d3d"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Fri, 29 Jun 2012 12:30:44 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"users":[{"fullname":"lucy","created_at":"2008-08-21T13:06:47Z","followers":21,"pushed":"2012-06-20T20:15:48.832Z","gravatar_id":"274036f0898dcde5d22abc02541cc6fe","followers_count":21,"name":"lucy","username":"diN0bot","login":"diN0bot","repos":22,"created":"2008-08-21T13:06:47Z","language":"Python","record":null,"id":"user-21395","location":"SF, USA, EARTH","score":17.231083,"type":"user","public_repo_count":22},{"fullname":"lucie","created_at":"2012-04-09T21:24:43Z","followers":0,"pushed":"2012-04-09T22:15:16.463Z","gravatar_id":"f0ef4bb33686c9e1bdae0ce7cab03684","followers_count":0,"name":"lucie","username":"lucie-tomoconcept","login":"lucie-tomoconcept","created":"2012-04-09T21:24:43Z","repos":1,"language":"JavaScript","record":null,"id":"user-1627153","location":"","score":13.04163,"type":"user","public_repo_count":1},{"fullname":"Lucy","created_at":"2011-11-18T12:56:11Z","followers":0,"pushed":"2011-11-18T15:15:33.245Z","gravatar_id":"3af8bd9cbe32376f65840384aaf4544c","followers_count":0,"name":"Lucy","username":"lucymtc","login":"lucymtc","repos":0,"created":"2011-11-18T12:56:11Z","language":"","record":null,"id":"user-1204359","location":"","score":12.95676,"type":"user","public_repo_count":0},{"fullname":"Lucie","created_at":"2011-07-02T03:05:41Z","followers":0,"pushed":"2011-07-02T03:15:13.358Z","gravatar_id":"adaecb10ec5abea463ea2069f039b98d","followers_count":0,"name":"Lucie","username":"luciebaru","login":"luciebaru","repos":0,"created":"2011-07-02T03:05:41Z","language":"","record":null,"id":"user-889863","location":"","score":12.92111,"type":"user","public_repo_count":0},{"fullname":"Lucie Votypkova","created_at":"2011-09-07T07:07:08Z","followers":0,"pushed":"2012-06-13T09:15:43.045Z","gravatar_id":"4c35b50485a17f3365fabf3ee7545ff8","followers_count":0,"name":"Lucie Votypkova","username":"lvotypko","login":"lvotypko","created":"2011-09-07T07:07:08Z","repos":15,"language":"Java","record":null,"id":"user-1032196","location":"","score":8.829987,"type":"user","public_repo_count":15},{"fullname":"Lucie Boutou","created_at":"2012-03-28T11:29:43Z","followers":1,"pushed":"2012-05-30T14:15:23.212Z","gravatar_id":"4a06c90b26e3ed65e528c1c44123e5bf","followers_count":1,"name":"Lucie Boutou","username":"Flikalb","login":"Flikalb","created":"2012-03-28T11:29:43Z","repos":2,"language":"Java","record":null,"id":"user-1583097","location":"Belfort, France","score":8.358318,"type":"user","public_repo_count":2},{"fullname":"Lucy Diamond","created_at":"2011-05-19T15:30:20Z","followers":1,"pushed":"2012-04-16T10:15:46.936Z","gravatar_id":"937c8c58bd85a781889b9d126e6f5c0e","followers_count":1,"name":"Lucy Diamond","username":"waltz4lucy","login":"waltz4lucy","created":"2011-05-19T15:30:20Z","repos":1,"language":"Ruby","record":null,"id":"user-798455","location":"","score":8.338159,"type":"user","public_repo_count":1},{"fullname":"Léger Lucie","created_at":"2010-12-13T15:19:34Z","followers":1,"pushed":"2011-03-12T11:15:13.049Z","gravatar_id":"f56baba14dc3b8ae579006216433f65a","followers_count":1,"name":"Léger Lucie","username":"lucie62155","login":"lucie62155","repos":0,"created":"2010-12-13T15:19:34Z","language":"","record":null,"id":"user-521287","location":"Calais","score":8.269781,"type":"user","public_repo_count":0},{"fullname":"Lucy Kobarashi","created_at":"2011-08-06T10:17:23Z","followers":0,"pushed":"2011-11-03T15:15:26.893Z","gravatar_id":"3bc0d0a604d75d369033939067e0762a","followers_count":0,"name":"Lucy Kobarashi","username":"NyuSan","login":"NyuSan","repos":3,"created":"2011-08-06T10:17:23Z","language":"OCaml","record":null,"id":"user-962824","location":"Earth, Orion-Signus arm","score":8.226553,"type":"user","public_repo_count":3},{"fullname":"Lucy Park","created_at":"2011-11-19T04:16:29Z","followers":0,"pushed":"2012-05-05T15:16:11.913Z","gravatar_id":"cbb5b8e2afb8eaca599cf70a75b08963","followers_count":0,"name":"Lucy Park","username":"echojuliett","login":"echojuliett","created":"2011-11-19T04:16:29Z","repos":3,"language":"JavaScript","record":null,"id":"user-1205890","location":"","score":8.226553,"type":"user","public_repo_count":3},{"fullname":"Marian Lucy","created_at":"2011-04-25T06:31:48Z","followers":1,"pushed":"2012-06-10T18:15:21.05Z","gravatar_id":"f85970122e41a371fa331d9c1c481d4f","followers_count":1,"name":"Marian Lucy","username":"fressschwein","login":"fressschwein","created":"2011-04-25T06:31:48Z","repos":0,"language":"","record":null,"id":"user-749803","location":"Near Berlin","score":8.226553,"type":"user","public_repo_count":0},{"fullname":"Lucy Zhang","created_at":"2010-05-08T21:11:12Z","followers":0,"pushed":"2012-06-15T19:15:54.498Z","gravatar_id":"a32f70d85265c1246b916ddae9b5e5f6","followers_count":0,"name":"Lucy Zhang","username":"beluga","login":"beluga","created":"2010-05-08T21:11:12Z","repos":2,"language":"Python","record":null,"id":"user-271324","location":"","score":8.20746,"type":"user","public_repo_count":2},{"fullname":"Lucie Meresse","created_at":"2010-02-09T18:02:53Z","followers":0,"pushed":"2011-12-21T16:15:19.904Z","gravatar_id":"5eae59e863fc24fb5bd6faf8b1eea8a0","followers_count":0,"name":"Lucie Meresse","username":"Dexedrine","login":"Dexedrine","created":"2010-02-09T18:02:53Z","repos":2,"language":"Python","record":null,"id":"user-200432","location":"Lille, France","score":8.176267,"type":"user","public_repo_count":2},{"fullname":"Lucy Iconomidis","created_at":"2011-03-17T06:36:50Z","followers":0,"pushed":"2012-03-07T23:16:25.061Z","gravatar_id":"08fe07204ad5960b84af62a0b5411780","followers_count":0,"name":"Lucy Iconomidis","username":"lucy-iconomidis","login":"lucy-iconomidis","repos":0,"created":"2011-03-17T06:36:50Z","language":"","record":null,"id":"user-674557","location":"","score":8.141471,"type":"user","public_repo_count":0},{"fullname":"Lucy Li","created_at":"2011-01-27T00:39:36Z","followers":0,"pushed":"2011-03-11T03:15:11.574Z","gravatar_id":"26e9ec53be78d82e166eaeba7d19d8a8","followers_count":0,"name":"Lucy Li","username":"donotgoogleme","login":"donotgoogleme","repos":1,"created":"2011-01-27T00:39:36Z","language":"Java","record":null,"id":"user-585649","location":"","score":8.12598,"type":"user","public_repo_count":1},{"fullname":"Luci Cor","created_at":"2011-04-09T11:00:28Z","followers":0,"pushed":"2011-04-10T22:15:13.902Z","gravatar_id":"413dfdd7e2dbc325c99f73b2b1df0d6c","followers_count":0,"name":"Luci Cor","username":"lucicor","login":"lucicor","repos":1,"created":"2011-04-09T11:00:28Z","language":"C","record":null,"id":"user-719065","location":"","score":8.12598,"type":"user","public_repo_count":1},{"fullname":"Lucy Beer","created_at":"2011-09-11T22:12:21Z","followers":0,"pushed":"2011-09-11T22:15:20.913Z","gravatar_id":"67a6505bfb36238498079f18d2287f82","followers_count":0,"name":"Lucy Beer","username":"webtrainingwheels","login":"webtrainingwheels","repos":0,"created":"2011-09-11T22:12:21Z","language":"","record":null,"id":"user-1043076","location":"","score":8.111344,"type":"user","public_repo_count":0},{"fullname":"Luci Bonini","created_at":"2010-09-23T19:26:59Z","followers":0,"pushed":"2010-09-24T02:15:10.822Z","gravatar_id":"277c572836da2095fb477be5abece1de","followers_count":0,"name":"Luci Bonini","username":"lucibonini","login":"lucibonini","repos":0,"created":"2010-09-23T19:26:59Z","language":"","record":null,"id":"user-413414","location":"Brazil","score":8.075694,"type":"user","public_repo_count":0},{"fullname":"Lucy Ding","created_at":"2011-01-15T21:58:13Z","followers":0,"pushed":"2011-01-16T08:15:09.069Z","gravatar_id":"3540446a2d8bbd5be1951583040af45e","followers_count":0,"name":"Lucy Ding","username":"haju","login":"haju","created":"2011-01-15T21:58:13Z","repos":0,"language":"","record":null,"id":"user-566780","location":"Sydney, Australia","score":8.075694,"type":"user","public_repo_count":0},{"fullname":"Lucie Tezourová","created_at":"2011-03-01T15:08:35Z","followers":0,"pushed":"2011-03-01T16:15:16.874Z","gravatar_id":"36efb686f5345cfbbebd68cdf35c656c","followers_count":0,"name":"Lucie Tezourová","username":"lucietezourova","login":"lucietezourova","repos":0,"created":"2011-03-01T15:08:35Z","language":"","record":null,"id":"user-644955","location":"Svět","score":8.075694,"type":"user","public_repo_count":0},{"fullname":"Michael Lucy","created_at":"2011-03-07T03:01:12Z","followers":0,"pushed":"2011-03-07T03:15:13.328Z","gravatar_id":"8cf2053621b7f768897577004f0d3c98","followers_count":0,"name":"Michael Lucy","username":"sonik","login":"sonik","repos":0,"created":"2011-03-07T03:01:12Z","language":"","record":null,"id":"user-654822","location":"","score":8.075694,"type":"user","public_repo_count":0},{"fullname":"Lucy Chang","created_at":"2011-08-09T18:25:00Z","followers":0,"pushed":"2012-03-09T18:15:38.421Z","gravatar_id":"83cf79e74eec1fe65c473d457bbea2c5","followers_count":0,"name":"Lucy Chang","username":"lucychang-paypal","login":"lucychang-paypal","repos":0,"created":"2011-08-09T18:25:00Z","language":"","record":null,"id":"user-969613","location":"","score":8.075694,"type":"user","public_repo_count":0},{"fullname":"Lucy Miller","created_at":"2012-04-21T02:39:38Z","followers":0,"pushed":"2012-04-21T03:15:14.862Z","gravatar_id":"80a0dd79cd5852780889ab995052ac00","followers_count":0,"name":"Lucy Miller","username":"bus1nessmgt2012","login":"bus1nessmgt2012","created":"2012-04-21T02:39:38Z","repos":0,"language":"","record":null,"id":"user-1664725","location":"","score":8.075694,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2008-11-07T17:33:29Z","followers":0,"pushed":"2010-05-23T23:18:55.339Z","gravatar_id":"188ce836970219449b8d4cf85f2b33ec","followers_count":0,"name":"","username":"Lucy","login":"Lucy","repos":0,"created":"2008-11-07T17:33:29Z","language":"","record":null,"id":"user-33230","location":"","score":6.9521737,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2008-11-28T09:44:41Z","followers":0,"pushed":"2010-05-24T00:15:20.66Z","gravatar_id":"d520d024d722d1e1411f9d872eff8b95","followers_count":0,"name":"","username":"lucie","login":"lucie","repos":0,"created":"2008-11-28T09:44:41Z","language":"","record":null,"id":"user-37063","location":"","score":6.9521737,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-06-22T16:38:16Z","followers":0,"pushed":"2011-06-22T17:16:02.298Z","gravatar_id":"9dfb004a3e7dc56fbbb1d9308ba999ac","followers_count":0,"name":"","username":"lucys","login":"lucys","repos":0,"created":"2011-06-22T16:38:16Z","language":"","record":null,"id":"user-867348","location":"","score":6.9477177,"type":"user","public_repo_count":0},{"fullname":"Lucy McLaughlin","created_at":"2011-09-04T12:27:29Z","followers":0,"pushed":"2012-05-11T13:15:23.244Z","gravatar_id":"431afe648add519710c1a7f64e55b894","followers_count":0,"name":"Lucy McLaughlin","username":"randomling","login":"randomling","created":"2011-09-04T12:27:29Z","repos":4,"language":"Perl","record":null,"id":"user-1025313","location":"London","score":6.6617,"type":"user","public_repo_count":4},{"fullname":"endu-lucy","created_at":"2009-03-08T14:29:27Z","followers":0,"pushed":"2011-06-26T10:15:09.042Z","gravatar_id":"4ae01d244c3753665764afbb2cf6b0b1","followers_count":0,"name":"endu-lucy","username":"endu","login":"endu","repos":1,"created":"2009-03-08T14:29:27Z","language":"C","record":null,"id":"user-61279","location":"","score":6.5108414,"type":"user","public_repo_count":1},{"fullname":"Lucie Fitch Bodie","created_at":"2011-06-04T14:55:02Z","followers":0,"pushed":"2012-01-03T22:15:36.517Z","gravatar_id":"40bc753e529190e7525b51c6728a0cb8","followers_count":0,"name":"Lucie Fitch Bodie","username":"luciefitchbodie","login":"luciefitchbodie","repos":1,"created":"2011-06-04T14:55:02Z","language":"","record":null,"id":"user-829452","location":"","score":6.5108414,"type":"user","public_repo_count":1},{"fullname":"Download Wendy and Lucy full movie watch","created_at":"2009-12-08T13:57:45Z","followers":0,"pushed":"2010-05-24T00:26:14.619Z","followers_count":0,"name":"Download Wendy and Lucy full movie watch","username":"e4489xixpd2948t","login":"e4489xixpd2948t","repos":7,"created":"2009-12-08T13:57:45Z","language":"","record":null,"id":"user-164415","location":"","score":5.197419,"type":"user","public_repo_count":7},{"fullname":"","created_at":"2009-12-31T15:41:40Z","followers":1,"pushed":"2010-05-23T23:26:49.963Z","gravatar_id":"8874818eea10331cf88c7c6ceb6a260b","followers_count":1,"name":"","username":"lcr","login":"lcr","repos":0,"created":"2009-12-31T15:41:40Z","language":"","record":null,"id":"user-174722","location":"","score":5.1925974,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-05-12T02:37:30Z","followers":0,"pushed":"2012-05-14T07:15:24.533Z","gravatar_id":"3995c8fed7d37bf57dfd463d77cdfbea","followers_count":0,"name":"","username":"lucy2012","login":"lucy2012","created":"2012-05-12T02:37:30Z","repos":1,"language":"","record":null,"id":"user-1731863","location":"","score":4.3731136,"type":"user","public_repo_count":1},{"fullname":"","created_at":"2009-02-10T17:56:46Z","followers":0,"pushed":"2010-05-24T01:18:31.291Z","gravatar_id":"d4768ad29e02d6fdb82e42ffc0b9e486","followers_count":0,"name":"","username":"Luci0","login":"Luci0","repos":0,"created":"2009-02-10T17:56:46Z","language":"","record":null,"id":"user-53398","location":"","score":4.3540215,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2009-10-24T04:18:18Z","followers":0,"pushed":"2010-05-24T02:17:22.769Z","gravatar_id":"10bb57f304b30df01cfdf2651bc35d6b","followers_count":0,"name":"","username":"Lucy127","login":"Lucy127","repos":0,"created":"2009-10-24T04:18:18Z","language":"","record":null,"id":"user-143941","location":"","score":4.3540215,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-02-06T19:30:39Z","followers":0,"pushed":"2011-02-06T20:15:11.729Z","gravatar_id":"8fef5b5be5c201f77a21de8855c9311b","followers_count":0,"name":"","username":"lucy5533","login":"lucy5533","repos":0,"created":"2011-02-06T19:30:39Z","language":"","record":null,"id":"user-603563","location":"","score":4.3540215,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-06-28T16:00:00Z","followers":0,"pushed":"2012-06-28T16:15:43.35Z","gravatar_id":"3d2f7a0343b47950597fb2196e6e91c5","followers_count":0,"name":"","username":"lucy541","login":"lucy541","repos":0,"created":"2012-06-28T16:00:00Z","language":"","record":null,"id":"user-1903046","location":"","score":4.3540215,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2010-05-06T08:20:31Z","followers":0,"pushed":"2010-05-23T22:35:45.685Z","gravatar_id":"ebf14b66e770e5be37b6e1824e1a8604","followers_count":0,"name":"","username":"lucy1015","login":"lucy1015","repos":0,"created":"2010-05-06T08:20:31Z","language":"","record":null,"id":"user-266292","location":"","score":4.349565,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2010-03-16T00:39:18Z","followers":0,"pushed":"2010-03-16T01:15:09.268Z","gravatar_id":"b0ad475bf34cd7ab1631c94e857f79ba","followers_count":0,"name":"","username":"lucy1936","login":"lucy1936","created":"2010-03-16T00:39:18Z","repos":0,"language":"","record":null,"id":"user-223446","location":"","score":4.3228273,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-02-24T17:31:36Z","followers":0,"pushed":"2011-02-24T18:15:14.79Z","gravatar_id":"a8a0a96bb47bed20c304eb2f4e5c11e2","followers_count":0,"name":"","username":"lucy15","login":"lucy15","repos":0,"created":"2011-02-24T17:31:36Z","language":"","record":null,"id":"user-636402","location":"","score":4.3228273,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-06-23T18:20:27Z","followers":0,"pushed":"2011-06-23T19:15:32.546Z","gravatar_id":"bd0f86427e0c978c2554f0c67228afc6","followers_count":0,"name":"","username":"Lucy1771","login":"Lucy1771","repos":0,"created":"2011-06-23T18:20:27Z","language":"","record":null,"id":"user-871492","location":"","score":4.3228273,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-09-26T07:47:52Z","followers":0,"pushed":"2011-12-06T06:15:22.958Z","gravatar_id":"353e806e04ebaba84fc996114f00117a","followers_count":0,"name":"","username":"lucy0178","login":"lucy0178","repos":0,"created":"2011-09-26T07:47:52Z","language":"","record":null,"id":"user-1079895","location":"","score":4.3228273,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-01-17T20:26:32Z","followers":0,"pushed":"2012-01-18T21:15:32.336Z","gravatar_id":"aeb0c3fc7bb83512327a58fe0bf5a36f","followers_count":0,"name":"","username":"luci1234","login":"luci1234","created":"2012-01-17T20:26:32Z","repos":0,"language":"","record":null,"location":"","id":"user-1340006","score":4.3228273,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-03-30T11:34:26Z","followers":0,"pushed":"2012-03-30T12:15:24.98Z","gravatar_id":"16dd0f4291c09ab48e1aef163c7afe08","followers_count":0,"name":"","username":"Luci4","login":"Luci4","repos":0,"created":"2012-03-30T11:34:26Z","language":"","record":null,"id":"user-1590212","location":"","score":4.3228273,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-05-25T22:08:22Z","followers":1,"pushed":"2012-04-11T21:16:15.164Z","gravatar_id":"adc11abccfec98a183ccb9c9bd443a4b","followers_count":1,"name":"","username":"LucyI","login":"LucyI","created":"2011-05-25T22:08:22Z","repos":0,"language":"","record":null,"id":"user-810839","location":"","score":3.635858,"type":"user","public_repo_count":0},{"fullname":"Aura Travel","created_at":"2012-05-02T02:06:38Z","followers":0,"pushed":"2012-05-02T02:15:28.33Z","gravatar_id":"f9a974e21859062182b63392235a2a8a","followers_count":0,"name":"Aura Travel","username":"auratravel","login":"auratravel","created":"2012-05-02T02:06:38Z","repos":1,"language":"","record":null,"id":"user-1697327","location":"Australia","score":3.6153338,"type":"user","public_repo_count":1},{"fullname":"","created_at":"2011-10-10T14:11:01Z","followers":0,"pushed":"2012-05-03T03:15:21.088Z","gravatar_id":"8f58e67d013167b1110fdb78ef23fe7f","followers_count":0,"name":"","username":"lucymhdavies","login":"lucymhdavies","created":"2011-10-10T14:11:01Z","repos":1,"language":"Java","record":null,"id":"user-1116529","location":"","score":3.6153338,"type":"user","public_repo_count":1},{"fullname":"","created_at":"2012-01-07T15:56:48Z","followers":2,"pushed":"2012-06-26T00:15:17.201Z","gravatar_id":"a02be745bfbc49fe22395f69d664039e","followers_count":2,"name":"","username":"iamhutch","login":"iamhutch","created":"2012-01-07T15:56:48Z","repos":3,"language":"JavaScript","record":null,"id":"user-1311645","location":"","score":3.571992,"type":"user","public_repo_count":3},{"fullname":"","created_at":"2010-10-12T23:35:28Z","followers":0,"pushed":"2010-10-17T10:15:10.605Z","gravatar_id":"c1fd276707bbc89873e50fed40c2015f","followers_count":0,"name":"","username":"lucindamary","login":"lucindamary","repos":0,"created":"2010-10-12T23:35:28Z","language":"","record":null,"id":"user-437303","location":"","score":3.5650477,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-06-14T21:34:53Z","followers":0,"pushed":"2011-06-14T22:15:18.424Z","gravatar_id":"2d0c01d2df7455cd5de1a44c3601cbc0","followers_count":0,"name":"","username":"Fortepiano","login":"Fortepiano","created":"2011-06-14T21:34:53Z","repos":0,"language":"","record":null,"id":"user-850439","location":"","score":3.5650477,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-01-10T14:19:46Z","followers":0,"pushed":"2012-01-10T15:15:39.844Z","gravatar_id":"b3b4d49d89b08c6797a0c10b20d9ad5e","followers_count":0,"name":"","username":"luciekasna","login":"luciekasna","repos":0,"created":"2012-01-10T14:19:46Z","language":"","record":null,"id":"user-1318596","location":"","score":3.5650477,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-10-04T02:56:21Z","followers":0,"pushed":"2012-03-08T01:15:19.527Z","gravatar_id":"5d3d27a1c6b0cb450e690dd54a302469","followers_count":0,"name":"","username":"lucylou","login":"lucylou","repos":0,"created":"2011-10-04T02:56:21Z","language":"","record":null,"id":"user-1100650","location":"","score":3.5650477,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-01-11T09:23:51Z","followers":0,"pushed":"2012-04-11T08:15:25.21Z","gravatar_id":"db3731506ada5dce192c90d2778d2b03","followers_count":0,"name":"","username":"luciebarthlen","login":"luciebarthlen","created":"2012-01-11T09:23:51Z","repos":0,"language":"","record":null,"id":"user-1321175","location":"","score":3.5650477,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-06-01T18:08:10Z","followers":0,"pushed":"2012-06-01T19:15:13.898Z","gravatar_id":"1bfeb3e30e7054b24b3cc8969350032f","followers_count":0,"name":"","username":"lucybruckner","login":"lucybruckner","repos":0,"created":"2012-06-01T18:08:10Z","language":"","record":null,"id":"user-1807177","location":"","score":3.5650477,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2009-04-30T14:28:42Z","followers":0,"pushed":"2012-06-06T21:15:26.357Z","gravatar_id":"6497df826186da9709d52bcc36f53623","followers_count":0,"name":"","username":"lucygrayson","login":"lucygrayson","created":"2009-04-30T14:28:42Z","repos":0,"language":"","record":null,"id":"user-79583","location":"","score":3.5650477,"type":"user","public_repo_count":0},{"fullname":"Maddate","created_at":"2012-03-07T20:29:25Z","followers":0,"pushed":"2012-06-28T18:15:28.106Z","gravatar_id":"997a28ce13c7115780992acaf701d49d","followers_count":0,"name":"Maddate","username":"maddi","login":"maddi","repos":0,"created":"2012-03-07T20:29:25Z","language":"","record":null,"id":"user-1513164","location":"","score":3.5650477,"type":"user","public_repo_count":0},{"fullname":"Ermal Luçi","created_at":"2010-01-19T08:33:14Z","followers":2,"pushed":"2012-03-23T09:15:25.49Z","gravatar_id":"ada44811ee680f8b24bd3b0936a076ee","followers_count":2,"name":"Ermal Luçi","username":"ermal","login":"ermal","repos":2,"created":"2010-01-19T08:33:14Z","language":"Shell","record":null,"id":"user-185253","location":"Albania","score":3.5217059,"type":"user","public_repo_count":2},{"fullname":"","created_at":"2012-05-22T19:56:57Z","followers":0,"pushed":"2012-05-22T20:15:32.078Z","gravatar_id":"1111d2fc2c816a54ab2679ecf0343aa2","followers_count":0,"name":"","username":"LucyTech","login":"LucyTech","created":"2012-05-22T19:56:57Z","repos":1,"language":"PHP","record":null,"id":"user-1766837","location":"","score":3.5085478,"type":"user","public_repo_count":1},{"fullname":"","created_at":"2009-10-24T04:19:48Z","followers":0,"pushed":"2010-05-24T02:17:22.789Z","gravatar_id":"217c8b33ebdadc4d1a145ed5b734efcb","followers_count":0,"name":"","username":"Lucy-cun","login":"Lucy-cun","repos":0,"created":"2009-10-24T04:19:48Z","language":"","record":null,"id":"user-143943","location":"","score":3.489456,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-03-13T09:04:33Z","followers":0,"pushed":"2011-03-13T09:15:11.286Z","gravatar_id":"bc0f3ed62c378b135e408cd669ad2fb1","followers_count":0,"name":"","username":"luci-serb","login":"luci-serb","repos":0,"created":"2011-03-13T09:04:33Z","language":"","record":null,"id":"user-666715","location":"","score":3.489456,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2010-11-09T15:13:16Z","followers":0,"pushed":"2011-06-17T10:26:39.586Z","gravatar_id":"5e4a99d34928682c35f9f3260bc232ee","followers_count":0,"name":"","username":"LuciRebecca","login":"LuciRebecca","repos":0,"created":"2010-11-09T15:13:16Z","language":"","record":null,"id":"user-474234","location":"","score":3.489456,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2009-07-06T18:44:13Z","followers":0,"pushed":"2010-05-25T04:15:49.667Z","gravatar_id":"f703b440ac3b5991886d313b5e5ca25a","followers_count":0,"name":"","username":"LucySofiano","login":"LucySofiano","repos":0,"created":"2009-07-06T18:44:13Z","language":"","record":null,"id":"user-102224","location":"","score":3.4849997,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-05-19T15:30:20Z","followers":0,"pushed":"2011-05-19T16:15:19.239Z","gravatar_id":"937c8c58bd85a781889b9d126e6f5c0e","followers_count":0,"name":"","username":"waltz4lucy","login":"waltz4lucy","repos":0,"created":"2011-05-19T15:30:20Z","language":"","record":null,"id":"user-798456","location":"","score":3.4849997,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-08-26T09:37:46Z","followers":0,"pushed":"2011-08-26T10:15:52.832Z","gravatar_id":"7ee2c8660de537ff3bd471d09039ca3c","followers_count":0,"name":"","username":"LucyEKH","login":"LucyEKH","repos":0,"created":"2011-08-26T09:37:46Z","language":"","record":null,"id":"user-1006216","location":"","score":3.4849997,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-06-05T20:53:03Z","followers":0,"pushed":"2012-06-13T00:15:11.098Z","gravatar_id":"9f87af3761d6bb8539c12a6e23bbcd2a","followers_count":0,"name":"","username":"bv-lucy-puppet","login":"bv-lucy-puppet","created":"2012-06-05T20:53:03Z","repos":0,"language":"","record":null,"id":"user-1820833","location":"","score":3.4849997,"type":"user","public_repo_count":0},{"fullname":"Lucian Pacurar","created_at":"2010-02-06T19:11:50Z","followers":1,"pushed":"2012-04-27T13:15:20.332Z","gravatar_id":"1ceab007bf93e084e65809a905574811","followers_count":1,"name":"Lucian Pacurar","username":"lucassp","login":"lucassp","repos":4,"created":"2010-02-06T19:11:50Z","language":"JavaScript","record":null,"id":"user-198549","location":"Timisoara, ROMANIA","score":3.4714198,"type":"user","public_repo_count":4},{"fullname":"","created_at":"2010-01-28T19:12:12Z","followers":0,"pushed":"2010-05-23T21:26:11.895Z","gravatar_id":"dfa0beeba1fcfddbb9fe6710335782a3","followers_count":0,"name":"","username":"LucyQiu","login":"LucyQiu","repos":0,"created":"2010-01-28T19:12:12Z","language":"","record":null,"id":"user-191765","location":"","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-03-12T00:43:49Z","followers":0,"pushed":"2011-03-12T01:15:13.113Z","gravatar_id":"6d8d26708f5b1cd2c368e46f9fc0b816","followers_count":0,"name":"","username":"VinoLuciStyle","login":"VinoLuciStyle","repos":0,"created":"2011-03-12T00:43:49Z","language":"","record":null,"id":"user-665089","location":"","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-08-07T07:44:47Z","followers":0,"pushed":"2011-08-07T08:15:15Z","gravatar_id":"180354ce2355376982e2936266f32ed9","followers_count":0,"name":"","username":"LucyJane","login":"LucyJane","repos":0,"created":"2011-08-07T07:44:47Z","language":"","record":null,"id":"user-964138","location":"","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-08-28T01:22:03Z","followers":0,"pushed":"2011-09-21T19:15:28.828Z","gravatar_id":"d189bedd274ab331008059715d8658e0","followers_count":0,"name":"","username":"LucyJp","login":"LucyJp","repos":0,"created":"2011-08-28T01:22:03Z","language":"","record":null,"id":"user-1009291","location":"","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-10-24T01:26:36Z","followers":0,"pushed":"2011-10-24T02:15:19.952Z","gravatar_id":"cd9936e97ccc4cd2d9ffe02d43c9c438","followers_count":0,"name":"","username":"LucyHsieh","login":"LucyHsieh","repos":0,"created":"2011-10-24T01:26:36Z","language":"","record":null,"id":"user-1147204","location":"","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-01-29T06:07:49Z","followers":0,"pushed":"2012-02-27T01:15:20.197Z","gravatar_id":"919b9cfae3ca14a0c2e369dfb0228305","followers_count":0,"name":"","username":"LUCI-em","login":"LUCI-em","repos":0,"created":"2012-01-29T06:07:49Z","language":"","record":null,"id":"user-1388616","location":"","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-02-27T07:56:18Z","followers":0,"pushed":"2012-02-27T08:15:23.24Z","gravatar_id":"151dc1fe9b2b8c23d1dc03a403f20d9f","followers_count":0,"name":"","username":"LucySqueo","login":"LucySqueo","repos":0,"created":"2012-02-27T07:56:18Z","language":"","record":null,"id":"user-1477649","location":"","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-11-11T00:05:10Z","followers":0,"pushed":"2012-03-08T00:15:56.722Z","gravatar_id":"96b4574f85b9b34076cee7acadd6bdd4","followers_count":0,"name":"","username":"LucyBuildMaster","login":"LucyBuildMaster","repos":0,"created":"2011-11-11T00:05:10Z","language":"","record":null,"id":"user-1187480","location":"","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-07-15T03:48:11Z","followers":0,"pushed":"2012-03-15T12:15:39.26Z","gravatar_id":"04767af58da26ed16c1f2993dabf3fa2","followers_count":0,"name":"","username":"LucyOnskul","login":"LucyOnskul","repos":0,"created":"2011-07-15T03:48:11Z","language":"","record":null,"id":"user-916770","location":"","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-03-26T14:29:10Z","followers":0,"pushed":"2012-03-26T15:15:23.422Z","gravatar_id":"f24eee99ab516234bb3ec672999cc693","followers_count":0,"name":"","username":"LuciQa","login":"LuciQa","repos":0,"created":"2012-03-26T14:29:10Z","language":"","record":null,"id":"user-1576460","location":"","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-04-05T14:16:50Z","followers":0,"pushed":"2012-04-05T15:15:12.858Z","gravatar_id":"be394564d0e294ba5cdc79b8b577aef4","followers_count":0,"name":"","username":"LucyMoreno","login":"LucyMoreno","created":"2012-04-05T14:16:50Z","repos":0,"language":"","record":null,"id":"user-1615660","location":"","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-04-09T22:51:29Z","followers":0,"pushed":"2012-04-09T23:15:23.609Z","gravatar_id":"027fc013687698b4cb0139c3c84d8147","followers_count":0,"name":"","username":"LucyU","login":"LucyU","created":"2012-04-09T22:51:29Z","repos":0,"language":"","record":null,"id":"user-1627370","location":"","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-04-13T12:08:14Z","followers":0,"pushed":"2012-04-13T12:15:29.8Z","gravatar_id":"65b31bede1642408b3a9f15b45737dd9","followers_count":0,"name":"","username":"LucyKraz","login":"LucyKraz","created":"2012-04-13T12:08:14Z","repos":0,"language":"","record":null,"id":"user-1640137","location":"","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-05-02T20:22:40Z","followers":0,"pushed":"2012-05-02T21:15:14.109Z","gravatar_id":"0b6121216fd38441df7ff95c3c99b0e8","followers_count":0,"name":"","username":"LucyMagic","login":"LucyMagic","created":"2012-05-02T20:22:40Z","repos":0,"language":"","record":null,"id":"user-1700189","location":"","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-05-09T15:54:49Z","followers":0,"pushed":"2012-05-09T16:15:34.267Z","followers_count":0,"name":"","username":"LuciGrosjean10","login":"LuciGrosjean10","created":"2012-05-09T15:54:49Z","repos":0,"language":"","record":null,"id":"user-1722532","location":"","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-05-29T18:14:47Z","followers":0,"pushed":"2012-05-29T19:15:11.271Z","gravatar_id":"452e39dcf9ce47cabd9054a17d471c0a","followers_count":0,"name":"","username":"lucy-udalykh","login":"lucy-udalykh","created":"2012-05-29T18:14:47Z","repos":0,"language":"","record":null,"id":"user-1790068","location":"","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-05-08T14:08:51Z","followers":0,"pushed":"2012-06-01T01:15:25.696Z","followers_count":0,"name":"","username":"LucyCauthorn41","login":"LucyCauthorn41","created":"2012-05-08T14:08:51Z","repos":0,"language":"","record":null,"location":"","id":"user-1717385","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-05-08T15:18:35Z","followers":0,"pushed":"2012-06-01T01:15:30.385Z","followers_count":0,"name":"","username":"LuciHipp44","login":"LuciHipp44","created":"2012-05-08T15:18:35Z","repos":0,"language":"","record":null,"location":"","id":"user-1717908","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-05-08T16:50:18Z","followers":0,"pushed":"2012-06-01T01:15:36.396Z","followers_count":0,"name":"","username":"LucieStanga90","login":"LucieStanga90","created":"2012-05-08T16:50:18Z","repos":0,"language":"","record":null,"location":"","id":"user-1718551","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-06-28T08:27:18Z","followers":0,"pushed":"2012-06-28T09:15:16.181Z","gravatar_id":"0ec5fa48eefa0355c6fa9df6e82531c0","followers_count":0,"name":"","username":"LucyG","login":"LucyG","repos":0,"created":"2012-06-28T08:27:18Z","language":"","record":null,"id":"user-1901648","location":"","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-06-23T12:16:56Z","followers":1,"pushed":"2012-06-28T08:15:15.178Z","gravatar_id":"b89777898e97e9e3997493e1645bbce8","followers_count":1,"name":"","username":"lccoppee","login":"lccoppee","repos":2,"created":"2011-06-23T12:16:56Z","language":"PHP","record":null,"id":"user-870463","location":"France","score":3.3708475,"type":"user","public_repo_count":2},{"fullname":"","created_at":"2009-01-04T17:14:04Z","followers":1,"pushed":"2010-05-24T00:17:56.193Z","gravatar_id":"6c6bc56666e688d978776965e7b5c4dd","followers_count":1,"name":"","username":"lucieradkovicova","login":"lucieradkovicova","repos":1,"created":"2009-01-04T17:14:04Z","language":"JavaScript","record":null,"id":"user-44110","location":"","score":3.3205614,"type":"user","public_repo_count":1},{"fullname":"","created_at":"2010-01-27T13:47:19Z","followers":0,"pushed":"2010-05-23T21:25:46.71Z","gravatar_id":"8e676b7452b16a35ffb0b7dfb8871b9e","followers_count":0,"name":"","username":"Hanuman","login":"Hanuman","repos":3,"created":"2010-01-27T13:47:19Z","language":"Java","record":null,"id":"user-190899","location":"","score":3.270275,"type":"user","public_repo_count":3},{"fullname":"","created_at":"2010-09-29T13:56:20Z","followers":1,"pushed":"2010-09-29T14:15:14.548Z","gravatar_id":"eda6068c552e308c1592db6cc59150fc","followers_count":1,"name":"","username":"lucihana","login":"lucihana","repos":0,"created":"2010-09-29T13:56:20Z","language":"","record":null,"id":"user-420832","location":"","score":3.270275,"type":"user","public_repo_count":0},{"fullname":"Preda Lucian","created_at":"2011-10-01T14:41:57Z","followers":0,"pushed":"2012-06-24T19:16:00.175Z","gravatar_id":"fd6d24eac001cd1dfb235d0e018f8608","followers_count":0,"name":"Preda Lucian","username":"NorrWing","login":"NorrWing","created":"2011-10-01T14:41:57Z","repos":3,"language":"Python","record":null,"id":"user-1094937","location":"Bucharest, Romania, European Union.","score":3.270275,"type":"user","public_repo_count":3},{"fullname":"Nathan H","created_at":"2011-10-05T20:02:08Z","followers":1,"pushed":"2011-11-02T21:15:28.442Z","gravatar_id":"f125f8d6d1e2553793d02fa3b87d2e0b","followers_count":1,"name":"Nathan H","username":"Ha1luciNate","login":"Ha1luciNate","repos":1,"created":"2011-10-05T20:02:08Z","language":"PHP","record":null,"id":"user-1105848","location":"","score":3.2271237,"type":"user","public_repo_count":1},{"fullname":"","created_at":"2010-09-29T15:13:48Z","followers":0,"pushed":"2011-11-15T12:15:21.984Z","gravatar_id":"ce40eb39dea0ab7dab555457739345c4","followers_count":0,"name":"","username":"lkurian","login":"lkurian","repos":2,"created":"2010-09-29T15:13:48Z","language":"ASP","record":null,"id":"user-420950","location":"","score":3.219989,"type":"user","public_repo_count":2},{"fullname":"","created_at":"2012-06-15T08:41:41Z","followers":0,"pushed":"2012-06-29T06:15:20.722Z","gravatar_id":"6ae7e5842bfeb9d5b8c036b65aacb3a9","followers_count":0,"name":"","username":"heyuefeng","login":"heyuefeng","repos":2,"created":"2012-06-15T08:41:41Z","language":"Java","record":null,"id":"user-1853241","location":"","score":3.219989,"type":"user","public_repo_count":2},{"fullname":"","created_at":"2009-02-22T23:35:39Z","followers":0,"pushed":"2009-09-26T18:51:50.015Z","gravatar_id":"12714dc009f04b19e7731e653b5fe4a8","followers_count":0,"name":"","username":"lu","login":"lu","repos":1,"created":"2009-02-22T23:35:39Z","language":"","record":null,"location":"","id":"user-56936","score":3.1697028,"type":"user","public_repo_count":1},{"fullname":"","created_at":"2010-02-07T22:27:57Z","followers":0,"pushed":"2010-05-23T21:30:17.191Z","gravatar_id":"de54de13e0439a78f9db94f8c274654e","followers_count":0,"name":"","username":"lucykee","login":"lucykee","repos":1,"created":"2010-02-07T22:27:57Z","language":"JavaScript","record":null,"id":"user-199146","location":"","score":3.1697028,"type":"user","public_repo_count":1},{"fullname":"","created_at":"2012-02-03T20:08:55Z","followers":0,"pushed":"2012-02-03T20:15:36.116Z","followers_count":0,"name":"","username":"lucieaveris","login":"lucieaveris","created":"2012-02-03T20:08:55Z","repos":1,"language":"","record":null,"id":"user-1406522","location":"","score":3.1697028,"type":"user","public_repo_count":1},{"fullname":"","created_at":"2012-03-26T06:39:50Z","followers":0,"pushed":"2012-03-26T07:15:23.734Z","gravatar_id":"a14f9dd0146a0ce46927794273451b42","followers_count":0,"name":"","username":"lucychen","login":"lucychen","repos":1,"created":"2012-03-26T06:39:50Z","language":"","record":null,"id":"user-1575168","location":"","score":3.1697028,"type":"user","public_repo_count":1},{"fullname":"","created_at":"2012-02-27T00:22:16Z","followers":0,"pushed":"2012-04-23T21:15:32.218Z","gravatar_id":"18b9f8411fcaf622398142c0b6e16530","followers_count":0,"name":"","username":"wtlghf","login":"wtlghf","created":"2012-02-27T00:22:16Z","repos":1,"language":"","record":null,"id":"user-1476912","location":"","score":3.1697028,"type":"user","public_repo_count":1},{"fullname":"","created_at":"2012-05-22T10:31:47Z","followers":0,"pushed":"2012-05-22T19:16:29.159Z","gravatar_id":"fb5d5714453a98b58ee3b999fc61adce","followers_count":0,"name":"","username":"p3rpl3j4","login":"p3rpl3j4","created":"2012-05-22T10:31:47Z","repos":1,"language":"","record":null,"id":"user-1764046","location":"","score":3.1697028,"type":"user","public_repo_count":1},{"fullname":"","created_at":"2012-03-31T11:54:35Z","followers":0,"pushed":"2012-06-26T18:15:39.939Z","gravatar_id":"952e21a3d77230e0d0e706868a11cdac","followers_count":0,"name":"","username":"lucian-v","login":"lucian-v","repos":1,"created":"2012-03-31T11:54:35Z","language":"","record":null,"id":"user-1593065","location":"","score":3.1697028,"type":"user","public_repo_count":1}]} + +https +GET +api.github.com +None +/legacy/user/search/Lucy?start_page=2 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4946'), ('x-ratelimit-limit', '5000'), ('content-length', '17711'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('etag', '"2276a70e7cb32c70ab3018105c9dcb22"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Fri, 29 Jun 2012 12:30:45 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"users":[{"fullname":"","created_at":"2010-08-08T23:52:29Z","followers":0,"pushed":"2010-08-09T00:15:09.022Z","gravatar_id":"6d7d3334458d9b82a5c5e22409ed043b","followers_count":0,"name":"","username":"lucievh","login":"lucievh","repos":0,"created":"2010-08-08T23:52:29Z","language":"","record":null,"id":"user-358057","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2010-09-22T05:31:14Z","followers":0,"pushed":"2010-09-22T06:15:13.692Z","gravatar_id":"f753f69213bbfc3b80607ee48a488d6e","followers_count":0,"name":"","username":"lucyim","login":"lucyim","repos":0,"created":"2010-09-22T05:31:14Z","language":"","record":null,"id":"user-410994","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-04-24T20:45:24Z","followers":0,"pushed":"2011-04-24T21:15:12.163Z","gravatar_id":"f1e19ca48feb1e62ee3149d28c11e911","followers_count":0,"name":"","username":"Lucief","login":"Lucief","repos":0,"created":"2011-04-24T20:45:24Z","language":"","record":null,"id":"user-749248","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-05-30T09:55:59Z","followers":0,"pushed":"2011-05-30T11:15:20.068Z","gravatar_id":"2da8ca4713c1b1e42a4a17323e4e8dae","followers_count":0,"name":"","username":"RevolverUpstairs","login":"RevolverUpstairs","repos":0,"created":"2011-05-30T09:55:59Z","language":"","record":null,"id":"user-818408","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-07-22T13:27:38Z","followers":0,"pushed":"2011-07-22T15:15:23.693Z","gravatar_id":"3686834b80a859db93c76e78df9a5a64","followers_count":0,"name":"","username":"seriousprogramming","login":"seriousprogramming","repos":0,"created":"2011-07-22T13:27:38Z","language":"","record":null,"id":"user-932499","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-08-06T09:47:48Z","followers":0,"pushed":"2011-08-06T10:15:31.758Z","gravatar_id":"69eafce84a5e4a9b26bc337a58ca72bc","followers_count":0,"name":"","username":"reicul","login":"reicul","repos":0,"created":"2011-08-06T09:47:48Z","language":"","record":null,"id":"user-962793","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-08-07T11:56:47Z","followers":0,"pushed":"2011-08-07T12:15:14.482Z","gravatar_id":"8896a319762ed30fea086e8213003809","followers_count":0,"name":"","username":"davincidubai","login":"davincidubai","repos":0,"created":"2011-08-07T11:56:47Z","language":"","record":null,"id":"user-964372","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-08-14T23:19:20Z","followers":0,"pushed":"2011-08-15T00:15:17.005Z","gravatar_id":"c464112ee895455ebc7e4395455cc3b4","followers_count":0,"name":"","username":"LucianaNascimentodoPrado","login":"LucianaNascimentodoPrado","repos":0,"created":"2011-08-14T23:19:20Z","language":"","record":null,"id":"user-979924","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-08-20T03:41:59Z","followers":0,"pushed":"2011-08-20T04:15:15.688Z","gravatar_id":"89b16b399fef7f5cf0f09aa52eb1f982","followers_count":0,"name":"","username":"lucia-huenchunao","login":"lucia-huenchunao","repos":0,"created":"2011-08-20T03:41:59Z","language":"","record":null,"id":"user-992290","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-08-30T06:35:07Z","followers":0,"pushed":"2011-08-30T07:15:40.964Z","gravatar_id":"15e9c23dc4ff8309d32759ebbc12f136","followers_count":0,"name":"","username":"kraji20","login":"kraji20","repos":0,"created":"2011-08-30T06:35:07Z","language":"","record":null,"id":"user-1013732","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-09-16T16:00:13Z","followers":0,"pushed":"2011-09-16T16:15:31.791Z","gravatar_id":"29b7278765b2513f6b1770acffd6e76c","followers_count":0,"name":"","username":"Lucywolo","login":"Lucywolo","repos":0,"created":"2011-09-16T16:00:13Z","language":"","record":null,"id":"user-1056415","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-09-20T08:49:42Z","followers":0,"pushed":"2011-09-20T09:15:39.554Z","gravatar_id":"272574bc4ad24eb6ca99e0ff63181708","followers_count":0,"name":"","username":"Luciel","login":"Luciel","repos":0,"created":"2011-09-20T08:49:42Z","language":"","record":null,"id":"user-1064456","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-09-26T00:34:00Z","followers":0,"pushed":"2011-09-26T01:15:19.861Z","gravatar_id":"88afbca53168e171337cd236ebf861eb","followers_count":0,"name":"","username":"sunnysummer","login":"sunnysummer","repos":0,"created":"2011-09-26T00:34:00Z","language":"","record":null,"location":"","id":"user-1079184","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-10-12T18:56:57Z","followers":0,"pushed":"2011-10-12T19:15:46.788Z","gravatar_id":"2d2bbcf8fc6ba08acad9d0120f7e877f","followers_count":0,"name":"","username":"elush","login":"elush","repos":0,"created":"2011-10-12T18:56:57Z","language":"","record":null,"id":"user-1123389","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-11-08T13:10:02Z","followers":0,"pushed":"2011-11-08T13:15:29.919Z","gravatar_id":"e47379a7fb647bcfe9cb35b313c6681d","followers_count":0,"name":"","username":"oprealuci","login":"oprealuci","repos":0,"created":"2011-11-08T13:10:02Z","language":"","record":null,"id":"user-1180621","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-11-30T12:50:11Z","followers":0,"pushed":"2012-01-06T20:15:31.201Z","followers_count":0,"name":"","username":"Flika","login":"Flika","repos":0,"created":"2011-11-30T12:50:11Z","language":"","record":null,"id":"user-1230733","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-01-16T13:52:04Z","followers":0,"pushed":"2012-01-16T14:15:26.544Z","gravatar_id":"93a807008d0335f8cfa7630905a3731a","followers_count":0,"name":"","username":"lsher","login":"lsher","created":"2012-01-16T13:52:04Z","repos":0,"language":"","record":null,"id":"user-1333790","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-02-14T12:45:55Z","followers":0,"pushed":"2012-02-14T13:15:21.421Z","gravatar_id":"48c680a1435659586d2b5fa88978bf2f","followers_count":0,"name":"","username":"datadrivenjournalism","login":"datadrivenjournalism","created":"2012-02-14T12:45:55Z","repos":0,"language":"","record":null,"id":"user-1436639","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-09-05T19:25:13Z","followers":0,"pushed":"2012-03-07T21:16:16.829Z","gravatar_id":"f85bd730cad7f29b2a6ffcb877ca9049","followers_count":0,"name":"","username":"nill2020","login":"nill2020","repos":0,"created":"2011-09-05T19:25:13Z","language":"","record":null,"id":"user-1028199","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-03-12T09:34:25Z","followers":0,"pushed":"2012-03-12T10:15:30.499Z","followers_count":0,"name":"","username":"doobi","login":"doobi","created":"2012-03-12T09:34:25Z","repos":0,"language":"","record":null,"id":"user-1528155","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-03-15T05:39:16Z","followers":0,"pushed":"2012-03-15T06:15:26.409Z","gravatar_id":"6e1dffbbee01406ca6362a476406e311","followers_count":0,"name":"","username":"lucilu","login":"lucilu","repos":0,"created":"2012-03-15T05:39:16Z","language":"","record":null,"id":"user-1539233","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-03-21T15:37:52Z","followers":0,"pushed":"2012-03-21T16:15:24.866Z","gravatar_id":"de5a284da24ca18274e389e172269cfa","followers_count":0,"name":"","username":"deldeldel","login":"deldeldel","repos":0,"created":"2012-03-21T15:37:52Z","language":"","record":null,"id":"user-1561401","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-03-27T13:06:55Z","followers":0,"pushed":"2012-03-27T13:15:45.802Z","gravatar_id":"b004de54d6f13d701ae5050809bdd091","followers_count":0,"name":"","username":"lucianacocca","login":"lucianacocca","repos":0,"created":"2012-03-27T13:06:55Z","language":"","record":null,"id":"user-1579740","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-09-27T23:18:49Z","followers":0,"pushed":"2012-04-27T02:15:22.503Z","gravatar_id":"6692a18a892458d7c4ab139f2c442277","followers_count":0,"name":"","username":"lucyli-sfdc","login":"lucyli-sfdc","repos":0,"created":"2011-09-27T23:18:49Z","language":"","record":null,"id":"user-1085374","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-05-01T10:05:02Z","followers":0,"pushed":"2012-05-01T12:15:23.517Z","gravatar_id":"9786861913ce64448699dba1ee27a7a6","followers_count":0,"name":"","username":"lucysatchell","login":"lucysatchell","repos":0,"created":"2012-05-01T10:05:02Z","language":"","record":null,"id":"user-1695084","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-05-01T12:11:30Z","followers":0,"pushed":"2012-06-01T19:16:17.478Z","gravatar_id":"c0228bc603e6802f3ee5e8299474587b","followers_count":0,"name":"","username":"UBM","login":"UBM","repos":0,"created":"2012-05-01T12:11:30Z","language":"","record":null,"id":"user-1695284","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-05-30T16:12:12Z","followers":0,"pushed":"2012-06-06T19:16:09.64Z","gravatar_id":"1652e06df5d348d1a575a36e2f7e5f72","followers_count":0,"name":"","username":"kolousek","login":"kolousek","created":"2012-05-30T16:12:12Z","repos":0,"language":"","record":null,"id":"user-1794308","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2010-05-04T01:08:54Z","followers":0,"pushed":"2012-06-13T20:15:11.55Z","gravatar_id":"f8ec680ef4321558d220391d96dfb797","followers_count":0,"name":"","username":"lucyzhang","login":"lucyzhang","created":"2010-05-04T01:08:54Z","repos":0,"language":"","record":null,"id":"user-263828","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-07-20T17:01:35Z","followers":0,"pushed":"2012-06-28T00:15:22.237Z","gravatar_id":"772de244d454a467439f0cdb6f4a1e4e","followers_count":0,"name":"","username":"lmegia","login":"lmegia","repos":0,"created":"2011-07-20T17:01:35Z","language":"","record":null,"id":"user-928346","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"Luis Olivo","created_at":"2012-03-07T21:32:50Z","followers":1,"pushed":"2012-06-02T18:15:15.477Z","gravatar_id":"4141a3f99023b16642e8a33d155947b6","followers_count":1,"name":"Luis Olivo","username":"luisolivo","login":"luisolivo","repos":1,"created":"2012-03-07T21:32:50Z","language":"Ruby","record":null,"id":"user-1513356","location":"Port Saint Lucie, Florida","score":2.791304,"type":"user","public_repo_count":1},{"fullname":"","created_at":"2011-08-31T03:50:47Z","followers":0,"pushed":"2011-08-31T04:15:23.388Z","gravatar_id":"331ecd4d2e53187e0287d9a1af51a7cd","followers_count":0,"name":"","username":"Lucyzhen","login":"Lucyzhen","repos":1,"created":"2011-08-31T03:50:47Z","language":"C#","record":null,"id":"user-1016061","location":"","score":2.7240717,"type":"user","public_repo_count":1},{"fullname":"","created_at":"2012-04-28T11:04:47Z","followers":0,"pushed":"2012-04-28T11:15:41.657Z","gravatar_id":"10cdf0c816a67a79461e672dd47c46de","followers_count":0,"name":"","username":"Luhzinha","login":"Luhzinha","repos":1,"created":"2012-04-28T11:04:47Z","language":"","record":null,"id":"user-1687701","location":"","score":2.7240717,"type":"user","public_repo_count":1},{"fullname":"","created_at":"2009-09-18T00:12:07Z","followers":0,"pushed":"2010-05-25T02:17:49.827Z","gravatar_id":"7766d61aa4bee478cd29d01653f99a27","followers_count":0,"name":"","username":"beautifly","login":"beautifly","repos":0,"created":"2009-09-18T00:12:07Z","language":"","record":null,"id":"user-128333","location":"","score":2.6737857,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-09-30T20:31:27Z","followers":0,"pushed":"2011-09-30T21:15:27.445Z","gravatar_id":"2421514bb391ad0e4009b441f35a8cfd","followers_count":0,"name":"","username":"lucybm96","login":"lucybm96","repos":0,"created":"2011-09-30T20:31:27Z","language":"","record":null,"id":"user-1093675","location":"","score":2.6737857,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-08-08T21:10:18Z","followers":0,"pushed":"2011-10-19T16:15:28.01Z","gravatar_id":"bc63269a11f7ce4a1ba817d7b598a4ec","followers_count":0,"name":"","username":"BuonocoreL","login":"BuonocoreL","repos":0,"created":"2011-08-08T21:10:18Z","language":"","record":null,"id":"user-967470","location":"","score":2.6737857,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-10-25T13:59:15Z","followers":0,"pushed":"2011-10-25T14:15:35.825Z","gravatar_id":"336abbd9e4151ae169e30e7e6679c7b7","followers_count":0,"name":"","username":"lucywilliams","login":"lucywilliams","repos":0,"created":"2011-10-25T13:59:15Z","language":"","record":null,"id":"user-1150845","location":"","score":2.6737857,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-02-05T19:08:43Z","followers":0,"pushed":"2012-02-05T19:15:26.112Z","gravatar_id":"710af9c67bfc63c7911801c960153551","followers_count":0,"name":"","username":"ZxOxZ","login":"ZxOxZ","created":"2012-02-05T19:08:43Z","repos":0,"language":"","record":null,"id":"user-1410529","location":"","score":2.6737857,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-02-22T12:38:07Z","followers":0,"pushed":"2012-02-22T13:15:21.033Z","gravatar_id":"4e34174ab98cfb31d27783a15edd65ff","followers_count":0,"name":"","username":"Motwinb","login":"Motwinb","repos":0,"created":"2012-02-22T12:38:07Z","language":"","record":null,"id":"user-1461109","location":"","score":2.6737857,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-03-05T06:41:31Z","followers":0,"pushed":"2012-03-05T07:15:17.415Z","gravatar_id":"3fd43be5de5bc0394cbb2f02fd5f8e55","followers_count":0,"name":"","username":"johnlucy","login":"johnlucy","repos":0,"created":"2012-03-05T06:41:31Z","language":"","record":null,"id":"user-1501671","location":"","score":2.6737857,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-03-05T16:24:11Z","followers":0,"pushed":"2012-03-05T17:15:18.016Z","gravatar_id":"c4c7f39ce80796afe054742ecebebd68","followers_count":0,"name":"","username":"Aquanimation","login":"Aquanimation","repos":0,"created":"2012-03-05T16:24:11Z","language":"","record":null,"id":"user-1503528","location":"","score":2.6737857,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-03-25T22:54:59Z","followers":0,"pushed":"2012-03-25T23:15:19.92Z","gravatar_id":"941783cf5e9908c1c1539f52063bfa83","followers_count":0,"name":"","username":"alaltaieri","login":"alaltaieri","repos":0,"created":"2012-03-25T22:54:59Z","language":"","record":null,"id":"user-1574456","location":"","score":2.6737857,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-04-02T14:04:23Z","followers":0,"pushed":"2012-04-02T14:15:39.659Z","gravatar_id":"b6dd2523be99cb65f67549fb3397038f","followers_count":0,"name":"","username":"lucylin","login":"lucylin","created":"2012-04-02T14:04:23Z","repos":0,"language":"","record":null,"id":"user-1598365","location":"","score":2.6737857,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-09-06T12:13:13Z","followers":0,"pushed":"2012-06-12T16:15:31.304Z","gravatar_id":"24b955ee4add1de5b71d892ba6bd52ac","followers_count":0,"name":"","username":"lucychambers","login":"lucychambers","created":"2011-09-06T12:13:13Z","repos":0,"language":"","record":null,"id":"user-1029861","location":"","score":2.6737857,"type":"user","public_repo_count":0},{"fullname":"Juan M Sesma","created_at":"2011-04-14T18:29:44Z","followers":0,"pushed":"2011-07-25T16:15:21.323Z","gravatar_id":"9aa303ceb9eece6fe6af228fe5d992f6","followers_count":0,"name":"Juan M Sesma","username":"JuanSesma","login":"JuanSesma","repos":1,"created":"2011-04-14T18:29:44Z","language":"Ruby","record":null,"id":"user-729951","location":"Port St Lucie","score":2.6404455,"type":"user","public_repo_count":1},{"fullname":"Carl","created_at":"2012-03-17T22:30:00Z","followers":0,"pushed":"2012-03-19T04:15:12.148Z","gravatar_id":"f9e3fc4d72e3199a38ea641ccafbb844","followers_count":0,"name":"Carl","username":"cdwwebware","login":"cdwwebware","repos":0,"created":"2012-03-17T22:30:00Z","language":"","record":null,"id":"user-1548384","location":"Port Saint Lucie, Florida","score":2.5901594,"type":"user","public_repo_count":0},{"fullname":"Zachary Wills","created_at":"2012-03-07T00:29:36Z","followers":0,"pushed":"2012-06-20T16:15:50.039Z","gravatar_id":"31decf5c3bc6f0006c8152eb778203c1","followers_count":0,"name":"Zachary Wills","username":"ZachWills","login":"ZachWills","repos":0,"created":"2012-03-07T00:29:36Z","language":"","record":null,"id":"user-1509438","location":"Port St. Lucie, FL","score":2.5901594,"type":"user","public_repo_count":0}]} + +https +GET +api.github.com +None +/legacy/user/search/Lucy?start_page=3 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4945'), ('x-ratelimit-limit', '5000'), ('content-length', '12'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('etag', '"415a14c1d2a0aadba6cb4caa4ab9d59c"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Fri, 29 Jun 2012 12:30:46 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"users":[]} + diff --git a/lib/github/tests/ReplayData/Github.testSearchRepos.txt b/lib/github/tests/ReplayData/Github.testSearchRepos.txt new file mode 100644 index 0000000000..4b43aad058 --- /dev/null +++ b/lib/github/tests/ReplayData/Github.testSearchRepos.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/legacy/repos/search/github +api v3 {'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4984'), ('content-length', '41937'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"ca6d7101af2acb5a04f11645bc01f4b2"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Thu, 28 Jun 2012 20:53:53 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"repositories":[{"type":"repo","has_issues":true,"created_at":"2009-12-10T13:41:49-08:00","score":16.919834,"owner":"pengwynn","has_downloads":true,"followers":295,"created":"2009-12-10T13:41:49-08:00","pushed":"2012-06-28T05:54:54-07:00","homepage":"http://pengwynn.github.com/octokit","watchers":295,"has_wiki":true,"language":"Ruby","pushed_at":"2012-06-28T05:54:54-07:00","forks":73,"fork":false,"size":248,"name":"octokit","url":"https://github.com/pengwynn/octokit","description":"Simple Ruby wrapper for the GitHub v3 API","open_issues":2,"private":false,"integrate_branch":"master","username":"pengwynn"},{"type":"repo","has_issues":true,"created_at":"2011-06-23T15:52:33-07:00","score":8.835576,"owner":"jwilger","has_downloads":true,"followers":35,"created":"2011-06-23T15:52:33-07:00","pushed":"2012-01-20T12:46:30-08:00","watchers":35,"has_wiki":false,"language":"Ruby","pushed_at":"2012-01-20T12:46:30-08:00","forks":13,"fork":false,"size":212,"name":"github-v3-api","url":"https://github.com/jwilger/github-v3-api","description":"Ruby Client for the GitHub v3 API","open_issues":2,"private":false,"username":"jwilger"},{"type":"repo","has_issues":true,"created_at":"2011-10-11T13:02:03-07:00","master_branch":"develop","score":7.502039,"owner":"acoulton","has_downloads":true,"followers":11,"created":"2011-10-11T13:02:03-07:00","pushed":"2011-12-29T20:40:32-08:00","homepage":"","watchers":11,"has_wiki":true,"language":"PHP","pushed_at":"2011-12-29T20:40:32-08:00","forks":4,"fork":false,"size":164,"name":"github_v3_api","url":"https://github.com/acoulton/github_v3_api","description":"KO3 module for interacting with the new Github v3 API","open_issues":1,"private":false,"username":"acoulton"},{"type":"repo","has_issues":true,"created_at":"2011-09-25T12:36:22-07:00","score":7.3562603,"owner":"peter-murach","has_downloads":true,"followers":77,"created":"2011-09-25T12:36:22-07:00","pushed":"2012-06-24T10:54:21-07:00","homepage":"http://peter-murach.github.com/github","watchers":77,"has_wiki":true,"language":"Ruby","pushed_at":"2012-06-24T10:54:21-07:00","forks":26,"fork":false,"size":300,"name":"github","url":"https://github.com/peter-murach/github","description":"Ruby interface to github API v3","open_issues":1,"private":false,"username":"peter-murach"},{"type":"repo","has_issues":true,"created_at":"2012-06-04T15:20:41-07:00","score":7.121046,"owner":"VisualAppeal","has_downloads":true,"followers":2,"organization":"VisualAppeal","created":"2012-06-04T15:20:41-07:00","pushed":"2012-06-04T15:29:07-07:00","watchers":2,"has_wiki":true,"language":"PHP","pushed_at":"2012-06-04T15:29:07-07:00","forks":1,"fork":false,"size":132,"name":"Github-API-v3","url":"https://github.com/VisualAppeal/Github-API-v3","description":"PHP Github API client for version 3.","open_issues":0,"private":false,"username":"VisualAppeal"},{"type":"repo","has_issues":true,"created_at":"2012-02-21T02:02:04-08:00","score":7.116807,"owner":"guillaumepotier","has_downloads":true,"followers":2,"created":"2012-02-21T02:02:04-08:00","pushed":"2012-02-23T01:05:23-08:00","homepage":"","watchers":2,"has_wiki":true,"language":"PHP","pushed_at":"2012-02-23T01:05:23-08:00","forks":1,"fork":false,"size":104,"name":"GithubApi_v3","url":"https://github.com/guillaumepotier/GithubApi_v3","description":"Very simple class I use for my pet projects","open_issues":0,"private":false,"username":"guillaumepotier"},{"type":"repo","has_issues":true,"created_at":"2012-01-14T17:32:10-08:00","score":6.182912,"owner":"phated","has_downloads":true,"followers":3,"created":"2012-01-14T17:32:10-08:00","pushed":"2012-01-15T23:58:31-08:00","homepage":"","watchers":3,"has_wiki":true,"language":"JavaScript","pushed_at":"2012-01-15T23:58:31-08:00","forks":1,"fork":false,"size":9196,"name":"github-v3-api-js","url":"https://github.com/phated/github-v3-api-js","description":"Experimentation with github api (v3) in javascript","open_issues":0,"private":false,"username":"phated"},{"type":"repo","has_issues":true,"created_at":"2012-02-05T20:34:12-08:00","score":6.127202,"owner":"rsanders","has_downloads":true,"followers":3,"created":"2012-02-05T20:34:12-08:00","pushed":"2012-02-07T22:50:13-08:00","homepage":"","watchers":3,"has_wiki":true,"language":"Emacs Lisp","pushed_at":"2012-02-07T22:50:13-08:00","forks":3,"fork":false,"size":120,"name":"github-api-v3.el","url":"https://github.com/rsanders/github-api-v3.el","description":"Emacs Lisp interface for the GitHub API v3","open_issues":0,"private":false,"username":"rsanders"},{"type":"repo","has_issues":true,"created_at":"2011-01-21T13:09:02-08:00","score":5.6330614,"owner":"farnoy","has_downloads":true,"followers":46,"created":"2011-01-21T13:09:02-08:00","pushed":"2012-01-31T04:33:03-08:00","homepage":"","watchers":46,"has_wiki":true,"language":"Ruby","pushed_at":"2012-01-31T04:33:03-08:00","forks":13,"fork":false,"size":164,"name":"github-api-client","url":"https://github.com/farnoy/github-api-client","description":"v2+v3 GitHub API Ruby client library","open_issues":5,"private":false,"username":"farnoy"},{"type":"repo","has_issues":true,"created_at":"2011-11-20T18:13:13-08:00","score":4.9115667,"owner":"pksunkara","has_downloads":true,"followers":61,"created":"2011-11-20T18:13:13-08:00","pushed":"2012-06-20T10:21:27-07:00","homepage":"","watchers":61,"has_wiki":true,"language":"CoffeeScript","pushed_at":"2012-06-20T10:21:27-07:00","forks":16,"fork":false,"size":160,"name":"octonode","url":"https://github.com/pksunkara/octonode","description":"github api v3 in nodejs","open_issues":2,"private":false,"username":"pksunkara"},{"type":"repo","has_issues":true,"created_at":"2011-10-23T01:34:00-07:00","score":4.2667623,"owner":"yiiext","has_downloads":true,"followers":11,"organization":"yiiext","created":"2011-10-23T01:34:00-07:00","pushed":"2011-11-16T01:07:50-08:00","homepage":"http://developer.github.com/v3/","watchers":11,"has_wiki":true,"language":"PHP","pushed_at":"2011-11-16T01:07:50-08:00","forks":2,"fork":false,"size":164,"name":"github-api","url":"https://github.com/yiiext/github-api","description":"implementation of github api v3","open_issues":1,"private":false,"username":"yiiext"},{"type":"repo","has_issues":true,"created_at":"2011-09-06T13:24:42-07:00","score":4.205773,"owner":"dsyph3r","has_downloads":true,"followers":22,"created":"2011-09-06T13:24:42-07:00","pushed":"2012-03-09T15:40:02-08:00","homepage":"","watchers":22,"has_wiki":true,"language":"PHP","pushed_at":"2012-03-09T15:40:02-08:00","forks":7,"fork":false,"size":168,"name":"github-api3-php","url":"https://github.com/dsyph3r/github-api3-php","description":"PHP library for the GitHub API v3","open_issues":1,"private":false,"username":"dsyph3r"},{"type":"repo","has_issues":true,"created_at":"2011-11-19T12:57:47-08:00","score":3.566463,"owner":"jcarver989","has_downloads":true,"followers":1,"created":"2011-11-19T12:57:47-08:00","pushed":"2011-11-19T13:21:11-08:00","homepage":"","watchers":1,"has_wiki":true,"language":"JavaScript","pushed_at":"2011-11-19T13:21:11-08:00","forks":1,"fork":false,"size":140,"name":"GithubApi.js","url":"https://github.com/jcarver989/GithubApi.js","description":"Micro library for Github's API (v3)","open_issues":0,"private":false,"username":"jcarver989"},{"type":"repo","has_issues":true,"created_at":"2012-02-25T04:53:47-08:00","score":3.565757,"owner":"jacquev6","has_downloads":true,"followers":29,"created":"2012-02-25T04:53:47-08:00","pushed":"2012-06-28T13:28:23-07:00","homepage":"http://vincent-jacques.net/PyGithub","watchers":29,"has_wiki":false,"language":"Python","pushed_at":"2012-06-28T13:28:23-07:00","forks":5,"fork":false,"size":188,"name":"PyGithub","url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","open_issues":11,"private":false,"username":"jacquev6"},{"type":"repo","has_issues":true,"created_at":"2012-06-12T04:43:27-07:00","score":3.499493,"owner":"bcg","has_downloads":true,"followers":1,"created":"2012-06-12T04:43:27-07:00","pushed":"2012-06-12T04:46:45-07:00","watchers":1,"has_wiki":true,"language":"Go","pushed_at":"2012-06-12T04:46:45-07:00","forks":1,"fork":false,"size":92,"name":"github","url":"https://github.com/bcg/github","description":"Go api for github v3","open_issues":0,"private":false,"username":"bcg"},{"type":"repo","has_issues":true,"created_at":"2012-02-21T11:25:15-08:00","score":3.4658518,"owner":"csphere","has_downloads":true,"followers":5,"created":"2012-02-21T11:25:15-08:00","pushed":"2012-05-18T10:25:08-07:00","homepage":"","watchers":5,"has_wiki":true,"language":"PHP","pushed_at":"2012-05-18T10:25:08-07:00","forks":2,"fork":false,"size":136,"name":"GithubApiWrapper-PHP","url":"https://github.com/csphere/GithubApiWrapper-PHP","description":"An intuitive wrapper for the Github Api v3.","open_issues":0,"private":false,"username":"csphere"},{"type":"repo","has_issues":true,"created_at":"2012-02-22T03:20:10-08:00","score":3.4529202,"owner":"dkucinskas","has_downloads":true,"followers":2,"created":"2012-02-22T03:20:10-08:00","pushed":"2012-06-24T22:10:11-07:00","homepage":"","watchers":2,"has_wiki":true,"language":"C#","pushed_at":"2012-06-24T22:10:11-07:00","forks":2,"fork":false,"size":116,"name":"net-github-api","url":"https://github.com/dkucinskas/net-github-api","description":"Simple Github API v3 client library for .Net","open_issues":0,"private":false,"username":"dkucinskas"},{"type":"repo","has_issues":true,"created_at":"2012-02-22T18:29:18-08:00","score":3.4125106,"owner":"csphere","has_downloads":true,"followers":4,"created":"2012-02-22T18:29:18-08:00","pushed":"2012-05-18T10:26:45-07:00","homepage":"","watchers":4,"has_wiki":true,"language":"Python","pushed_at":"2012-05-18T10:26:45-07:00","forks":4,"fork":false,"size":132,"name":"GithubApiWrapper-Python","url":"https://github.com/csphere/GithubApiWrapper-Python","description":"An intuitive wrapper for the Github Api v3.","open_issues":0,"private":false,"username":"csphere"},{"type":"repo","has_issues":true,"created_at":"2011-11-30T14:56:52-08:00","score":3.3439152,"owner":"edwardhotchkiss","has_downloads":true,"followers":20,"created":"2011-11-30T14:56:52-08:00","pushed":"2012-06-26T04:04:33-07:00","homepage":"http://edwardhotchkiss.com/github3/","watchers":20,"has_wiki":true,"language":"JavaScript","pushed_at":"2012-06-26T04:04:33-07:00","forks":10,"fork":false,"size":140,"name":"github3","url":"https://github.com/edwardhotchkiss/github3","description":"Node.JS GitHub API (v3) Wrapper","open_issues":0,"private":false,"username":"edwardhotchkiss"},{"type":"repo","has_issues":true,"created_at":"2011-04-28T10:07:29-07:00","score":3.282869,"owner":"ChristopherMacGown","has_downloads":true,"followers":20,"created":"2011-04-28T10:07:29-07:00","pushed":"2012-06-14T19:06:26-07:00","homepage":"","watchers":20,"has_wiki":true,"language":"Python","pushed_at":"2012-06-14T19:06:26-07:00","forks":12,"fork":false,"size":136,"name":"python-github3","url":"https://github.com/ChristopherMacGown/python-github3","description":"Github API v3 library for Python.","open_issues":0,"private":false,"username":"ChristopherMacGown"},{"type":"repo","has_issues":true,"created_at":"2012-04-15T10:14:22-07:00","score":3.2326941,"owner":"RobertFischer","has_downloads":true,"followers":1,"created":"2012-04-15T10:14:22-07:00","pushed":"2012-05-15T05:40:26-07:00","homepage":"","watchers":1,"has_wiki":true,"language":"Java","pushed_at":"2012-05-15T05:40:26-07:00","forks":1,"fork":false,"size":194,"name":"github-api-3","url":"https://github.com/RobertFischer/github-api-3","description":"An under-implemented version of the GitHub API v3 using the Groovy RESTClient.","open_issues":0,"private":false,"username":"RobertFischer"},{"type":"repo","has_issues":true,"created_at":"2010-09-10T23:51:56-07:00","score":3.026753,"owner":"lynnwallenstein","has_downloads":true,"followers":25,"created":"2010-09-10T23:51:56-07:00","pushed":"2012-06-24T15:22:01-07:00","homepage":"","watchers":25,"has_wiki":true,"language":"JavaScript","pushed_at":"2012-06-24T15:22:01-07:00","forks":5,"fork":false,"size":173,"name":"jQuery-Github-Badge","url":"https://github.com/lynnwallenstein/jQuery-Github-Badge","description":"User and Project GitHub badge using jQuery and GitHub API v3","open_issues":4,"private":false,"username":"lynnwallenstein"},{"type":"repo","has_issues":true,"created_at":"2012-03-11T13:35:23-07:00","score":2.9790008,"owner":"peter-murach","has_downloads":true,"followers":18,"created":"2012-03-11T13:35:23-07:00","pushed":"2012-06-27T14:37:16-07:00","homepage":"","watchers":18,"has_wiki":true,"language":"Ruby","pushed_at":"2012-06-27T14:37:16-07:00","forks":3,"fork":false,"size":276,"name":"github_cli","url":"https://github.com/peter-murach/github_cli","description":"CLI-based access to GitHub API v3","open_issues":3,"private":false,"username":"peter-murach"},{"type":"repo","has_issues":true,"created_at":"2011-11-13T22:02:02-08:00","score":2.877118,"owner":"eed3si9n","has_downloads":true,"followers":5,"created":"2011-11-13T22:02:02-08:00","pushed":"2011-11-29T06:28:35-08:00","homepage":"","watchers":5,"has_wiki":true,"language":"Scala","pushed_at":"2011-11-29T06:28:35-08:00","forks":2,"fork":false,"size":200,"name":"dispatch-github","url":"https://github.com/eed3si9n/dispatch-github","description":"github API v3","open_issues":0,"private":false,"username":"eed3si9n"},{"type":"repo","has_issues":true,"created_at":"2011-06-25T03:40:24-07:00","score":2.6712246,"owner":"plu","has_downloads":true,"followers":19,"created":"2011-06-25T03:40:24-07:00","pushed":"2011-12-29T04:26:13-08:00","homepage":"http://metacpan.org/module/Pithub","watchers":19,"has_wiki":true,"language":"Perl","pushed_at":"2011-12-29T04:26:13-08:00","forks":1,"fork":false,"size":1382,"name":"Pithub","url":"https://github.com/plu/Pithub","description":"Perl Github v3 API","open_issues":18,"private":false,"username":"plu"},{"type":"repo","has_issues":true,"created_at":"2011-10-27T08:47:40-07:00","score":2.593327,"owner":"dominis","has_downloads":true,"followers":5,"created":"2011-10-27T08:47:40-07:00","pushed":"2012-01-07T14:01:34-08:00","homepage":"","watchers":5,"has_wiki":false,"language":"PHP","pushed_at":"2012-01-07T14:01:34-08:00","forks":1,"fork":false,"size":172,"name":"GitHub-API-PHP","url":"https://github.com/dominis/GitHub-API-PHP","description":"PHP library for GitHub's v3 api","open_issues":0,"private":false,"username":"dominis"},{"type":"repo","has_issues":false,"created_at":"2012-05-28T19:34:50-07:00","score":2.565456,"owner":"danielribeiro","has_downloads":true,"followers":1,"created":"2012-05-28T19:34:50-07:00","pushed":"2012-04-17T02:30:54-07:00","homepage":"","watchers":1,"has_wiki":true,"language":"JavaScript","pushed_at":"2012-04-17T02:30:54-07:00","forks":0,"fork":false,"size":464,"name":"api-amazing","url":"https://github.com/danielribeiro/api-amazing","description":"Amazing API client, currently for Github's API v3, in the browser","open_issues":0,"private":false,"username":"danielribeiro"},{"type":"repo","has_issues":true,"created_at":"2011-05-12T12:18:23-07:00","score":2.4090881,"owner":"trustmaster","has_downloads":true,"followers":11,"created":"2011-05-12T12:18:23-07:00","pushed":"2011-10-04T04:47:18-07:00","homepage":"","watchers":11,"has_wiki":true,"language":"PHP","pushed_at":"2011-10-04T04:47:18-07:00","forks":4,"fork":false,"size":184,"name":"trac2github","url":"https://github.com/trustmaster/trac2github","description":"Converts Trac milestones, tickets and comments into Github issues 2.0 using github api v3","open_issues":0,"private":false,"username":"trustmaster"},{"type":"repo","has_issues":true,"created_at":"2011-12-26T14:00:46-08:00","score":2.3760638,"owner":"ozipi","has_downloads":true,"followers":3,"created":"2011-12-26T14:00:46-08:00","pushed":"2012-01-08T14:10:07-08:00","homepage":"","watchers":3,"has_wiki":true,"language":"JavaScript","pushed_at":"2012-01-08T14:10:07-08:00","forks":2,"fork":false,"size":141,"name":"github.js","url":"https://github.com/ozipi/github.js","description":"Github v3 Api Javascript library","open_issues":0,"private":false,"username":"ozipi"},{"type":"repo","has_issues":true,"created_at":"2010-08-25T17:50:01-07:00","score":2.3341565,"owner":"diogenes","has_downloads":true,"followers":26,"created":"2010-08-25T17:50:01-07:00","pushed":"2011-10-17T08:15:23-07:00","homepage":"","watchers":26,"has_wiki":true,"language":"Ruby","pushed_at":"2011-10-17T08:15:23-07:00","forks":8,"fork":false,"size":112,"name":"hubruby","url":"https://github.com/diogenes/hubruby","description":"A simple Ruby library to access the current GitHub API (v3)","open_issues":0,"private":false,"username":"diogenes"},{"type":"repo","has_issues":true,"created_at":"2011-06-15T00:51:00-07:00","score":2.3227224,"owner":"rubik","has_downloads":true,"followers":2,"created":"2011-06-15T00:51:00-07:00","pushed":"2011-06-15T00:58:19-07:00","homepage":"","watchers":2,"has_wiki":true,"language":"Python","pushed_at":"2011-06-15T00:58:19-07:00","forks":1,"fork":false,"size":96,"name":"github.py","url":"https://github.com/rubik/github.py","description":"Python wrapper for Github API v3","open_issues":0,"private":false,"username":"rubik"},{"type":"repo","has_issues":true,"created_at":"2012-02-14T06:15:34-08:00","score":2.2703757,"owner":"ji","has_downloads":true,"followers":1,"created":"2012-02-14T06:15:34-08:00","pushed":"2012-03-07T10:29:38-08:00","homepage":"","watchers":1,"has_wiki":true,"language":"Ruby","pushed_at":"2012-03-07T10:29:38-08:00","forks":1,"fork":false,"size":224,"name":"github_widgets","url":"https://github.com/ji/github_widgets","description":"Github widgets for the github v3 API.","open_issues":0,"private":false,"username":"ji"},{"type":"repo","has_issues":true,"created_at":"2011-08-16T09:17:47-07:00","score":2.2693808,"owner":"mixu","has_downloads":true,"followers":1,"created":"2011-08-16T09:17:47-07:00","pushed":"2011-08-16T09:44:41-07:00","homepage":"","watchers":1,"has_wiki":true,"language":"JavaScript","pushed_at":"2011-08-16T09:44:41-07:00","forks":1,"fork":false,"size":96,"name":"github.js","url":"https://github.com/mixu/github.js","description":"Github API v3 JS client","open_issues":0,"private":false,"username":"mixu"},{"type":"repo","has_issues":true,"created_at":"2011-12-23T03:57:39-08:00","score":2.2693808,"owner":"zendflex","has_downloads":true,"followers":1,"organization":"zendflex","created":"2011-12-23T03:57:39-08:00","pushed":"2011-12-23T10:00:20-08:00","watchers":1,"has_wiki":true,"language":"PHP","pushed_at":"2011-12-23T10:00:20-08:00","forks":1,"fork":false,"size":112,"name":"zendflex-github-lib","url":"https://github.com/zendflex/zendflex-github-lib","description":"Php lib for github api v3","open_issues":0,"private":false,"username":"zendflex"},{"type":"repo","has_issues":true,"created_at":"2012-02-02T15:15:01-08:00","score":2.2693808,"owner":"devjones","has_downloads":true,"followers":1,"created":"2012-02-02T15:15:01-08:00","pushed":"2012-02-02T15:15:52-08:00","homepage":"","watchers":1,"has_wiki":true,"language":"Python","pushed_at":"2012-02-02T15:15:52-08:00","forks":1,"fork":false,"size":88,"name":"py_github3","url":"https://github.com/devjones/py_github3","description":"draft python wrapper for Github API v3","open_issues":0,"private":false,"username":"devjones"},{"type":"repo","has_issues":true,"created_at":"2012-01-01T21:15:53-08:00","score":2.125537,"owner":"mtutty","has_downloads":true,"followers":2,"created":"2012-01-01T21:15:53-08:00","pushed":"2012-01-18T13:24:44-08:00","homepage":"","watchers":2,"has_wiki":true,"language":"C#","pushed_at":"2012-01-18T13:24:44-08:00","forks":1,"fork":false,"size":4472,"name":"GithubIssueSync","url":"https://github.com/mtutty/GithubIssueSync","description":"Allows bulk import and export of issues via Github API V3","open_issues":1,"private":false,"username":"mtutty"},{"type":"repo","has_issues":true,"created_at":"2012-01-15T04:51:05-08:00","score":2.0350344,"owner":"Wolfy87","has_downloads":true,"followers":4,"created":"2012-01-15T04:51:05-08:00","pushed":"2012-01-23T06:38:19-08:00","homepage":"","watchers":4,"has_wiki":true,"language":"JavaScript","pushed_at":"2012-01-23T06:38:19-08:00","forks":2,"fork":false,"size":228,"name":"github.js","url":"https://github.com/Wolfy87/github.js","description":"Frontend JavaScript library for interacting with the GitHub API v3","open_issues":0,"private":false,"username":"Wolfy87"},{"type":"repo","has_issues":true,"created_at":"2011-07-16T15:32:34-07:00","score":1.9842197,"owner":"jhelwig","has_downloads":true,"followers":15,"created":"2011-07-16T15:32:34-07:00","pushed":"2012-05-23T13:17:32-07:00","homepage":"http://rdoc.info/github/jhelwig/octocat_herder/master/frames","watchers":15,"has_wiki":false,"language":"Ruby","pushed_at":"2012-05-23T13:17:32-07:00","forks":4,"fork":false,"size":132,"name":"octocat_herder","url":"https://github.com/jhelwig/octocat_herder","description":"Ruby interface to the v3 GitHub API","open_issues":1,"private":false,"username":"jhelwig"},{"type":"repo","has_issues":true,"created_at":"2011-07-12T23:06:31-07:00","score":1.9816928,"owner":"bitprophet","has_downloads":true,"followers":3,"created":"2011-07-12T23:06:31-07:00","pushed":"2011-08-18T17:19:18-07:00","homepage":"","watchers":3,"has_wiki":true,"language":"Ruby","pushed_at":"2011-08-18T17:19:18-07:00","forks":2,"fork":false,"size":128,"name":"redmine2github","url":"https://github.com/bitprophet/redmine2github","description":"Port (Fabric's) Redmine tickets to (Fabric's) Github Issues v2 / API v3","open_issues":0,"private":false,"username":"bitprophet"},{"type":"repo","has_issues":true,"created_at":"2011-08-08T23:02:37-07:00","score":1.9816928,"owner":"joeworkman","has_downloads":true,"followers":3,"created":"2011-08-08T23:02:37-07:00","pushed":"2012-02-09T10:20:36-08:00","watchers":3,"has_wiki":true,"language":"PHP","pushed_at":"2012-02-09T10:20:36-08:00","forks":2,"fork":false,"size":132,"name":"github_oauth","url":"https://github.com/joeworkman/github_oauth","description":"PHP Library that makes using OAuth with the GitHUB v3API a piece of cake","open_issues":0,"private":false,"username":"joeworkman"},{"type":"repo","has_issues":true,"created_at":"2011-09-27T07:41:01-07:00","score":1.9283514,"owner":"thiagolocatelli","has_downloads":true,"followers":2,"created":"2011-09-27T07:41:01-07:00","pushed":"2011-09-27T07:53:33-07:00","homepage":"","watchers":2,"has_wiki":true,"language":"Java","pushed_at":"2011-09-27T07:53:33-07:00","forks":1,"fork":false,"size":108,"name":"android-github-oauth","url":"https://github.com/thiagolocatelli/android-github-oauth","description":"Library and example project on how to connect to GitHub OAuth (v3) API","open_issues":0,"private":false,"username":"thiagolocatelli"},{"type":"repo","has_issues":true,"created_at":"2012-05-17T19:22:24-07:00","score":1.9283514,"owner":"erikcharlebois","has_downloads":false,"followers":2,"created":"2012-05-17T19:22:24-07:00","pushed":"2012-05-17T21:05:25-07:00","homepage":"https://github.com/erikcharlebois/git-hub","watchers":2,"has_wiki":false,"language":"Ruby","pushed_at":"2012-05-17T21:05:25-07:00","forks":1,"fork":false,"size":96,"name":"git-hub","url":"https://github.com/erikcharlebois/git-hub","description":"Command line extension to git for working with GitHub v3 API.","open_issues":1,"private":false,"username":"erikcharlebois"},{"type":"repo","has_issues":true,"created_at":"2011-05-12T19:11:45-07:00","score":1.8750099,"owner":"baz","has_downloads":true,"followers":1,"created":"2011-05-12T19:11:45-07:00","pushed":"2011-05-12T19:13:02-07:00","homepage":"","watchers":1,"has_wiki":true,"language":"JavaScript","pushed_at":"2011-05-12T19:13:02-07:00","forks":1,"fork":false,"size":124,"name":"node-github-issues","url":"https://github.com/baz/node-github-issues","description":"GitHub Issues API v3 Node.js module","open_issues":0,"private":false,"username":"baz"},{"type":"repo","has_issues":true,"created_at":"2010-10-28T19:31:52-07:00","score":1.6202691,"owner":"Factual","has_downloads":true,"followers":15,"organization":"Factual","created":"2010-10-28T19:31:52-07:00","pushed":"2012-02-23T20:03:15-08:00","homepage":"http://wiki.developer.factual.com/","watchers":15,"has_wiki":true,"language":"Ruby","pushed_at":"2012-02-23T20:03:15-08:00","forks":5,"fork":false,"size":112,"name":"ruby-factual","url":"https://github.com/Factual/ruby-factual","description":"Ruby gem to access Factual API v2. Since the Factual API v2 will be deprecated in Q2 2012, and we are moving forward to API v3, there is new ruby gem for V3 accessing, which is at https://github.com/Factual/factual-ruby-driver.","open_issues":0,"private":false,"username":"Factual"},{"type":"repo","has_issues":true,"created_at":"2011-10-03T17:46:03-07:00","score":1.5275998,"owner":"testpilot","has_downloads":true,"followers":2,"organization":"testpilot","created":"2011-10-03T17:46:03-07:00","pushed":"2011-11-29T00:14:53-08:00","homepage":"testpilot.me","watchers":2,"has_wiki":true,"language":"Ruby","pushed_at":"2011-11-29T00:14:53-08:00","forks":1,"fork":false,"size":264,"name":"octoplex","url":"https://github.com/testpilot/octoplex","description":"Github v3 API wrapper gem","open_issues":0,"private":false,"username":"testpilot"},{"type":"repo","has_issues":true,"created_at":"2012-02-29T15:46:40-08:00","score":1.5275998,"owner":"woloski","has_downloads":true,"followers":2,"created":"2012-02-29T15:46:40-08:00","pushed":"2012-03-01T18:36:35-08:00","homepage":"","watchers":2,"has_wiki":true,"language":"","pushed_at":"2012-03-01T18:36:35-08:00","forks":2,"fork":false,"size":132,"name":"githubapi-testrepo","url":"https://github.com/woloski/githubapi-testrepo","description":"testing repo for github api v3","open_issues":0,"private":false,"username":"woloski"},{"type":"repo","has_issues":true,"created_at":"2011-07-18T11:55:00-07:00","score":1.5041462,"owner":"gitpilot","has_downloads":true,"followers":7,"organization":"gitpilot","created":"2011-07-18T11:55:00-07:00","pushed":"2011-07-21T12:18:26-07:00","homepage":"http://www.gitpilot.com","watchers":7,"has_wiki":true,"language":"Ruby","pushed_at":"2011-07-21T12:18:26-07:00","forks":2,"fork":false,"size":112,"name":"fuselage","url":"https://github.com/gitpilot/fuselage","description":"Light weight Ruby wrapper for Github v3 api","open_issues":0,"private":false,"username":"gitpilot"},{"type":"repo","has_issues":true,"created_at":"2011-07-14T19:46:55-07:00","score":1.4742583,"owner":"wanthony","has_downloads":true,"followers":1,"created":"2011-07-14T19:46:55-07:00","pushed":"2011-07-14T19:57:37-07:00","homepage":"","watchers":1,"has_wiki":true,"language":"Ruby","pushed_at":"2011-07-14T19:57:37-07:00","forks":1,"fork":false,"size":96,"name":"octo_rest","url":"https://github.com/wanthony/octo_rest","description":"A ruby client for the github v3 api","open_issues":0,"private":false,"username":"wanthony"},{"type":"repo","has_issues":true,"created_at":"2011-10-06T03:41:32-07:00","score":1.4742583,"owner":"markharmon","has_downloads":true,"followers":1,"created":"2011-10-06T03:41:32-07:00","pushed":null,"homepage":"","watchers":1,"has_wiki":true,"language":"","forks":1,"fork":false,"size":0,"name":"GitHub.Net","url":"https://github.com/markharmon/GitHub.Net","description":"GitHub Api V3 for .Net","open_issues":0,"private":false,"username":"markharmon"},{"type":"repo","has_issues":true,"created_at":"2011-06-25T16:25:57-07:00","score":1.4508047,"owner":"sbellity","has_downloads":true,"followers":5,"created":"2011-06-25T16:25:57-07:00","pushed":"2011-07-21T03:21:10-07:00","homepage":"","watchers":5,"has_wiki":true,"language":"Ruby","pushed_at":"2011-07-21T03:21:10-07:00","forks":2,"fork":false,"size":112,"name":"githu3","url":"https://github.com/sbellity/githu3","description":"Ruby wrapper for GitHub's v3 API","open_issues":4,"private":false,"username":"sbellity"},{"type":"repo","has_issues":true,"created_at":"2011-09-13T03:01:53-07:00","score":1.3974632,"owner":"francescomari","has_downloads":true,"followers":4,"created":"2011-09-13T03:01:53-07:00","pushed":"2012-04-10T14:08:39-07:00","homepage":"","watchers":4,"has_wiki":false,"language":"Python","pushed_at":"2012-04-10T14:08:39-07:00","forks":2,"fork":false,"size":148,"name":"pythub","url":"https://github.com/francescomari/pythub","description":"A simple Python wrapper around the Github API v3","open_issues":0,"private":false,"username":"francescomari"},{"type":"repo","has_issues":true,"created_at":"2011-12-22T00:01:31-08:00","score":1.2907803,"owner":"smoak","has_downloads":true,"followers":2,"created":"2011-12-22T00:01:31-08:00","pushed":"2011-12-22T00:20:57-08:00","homepage":"","watchers":2,"has_wiki":true,"language":"Python","pushed_at":"2011-12-22T00:20:57-08:00","forks":1,"fork":false,"size":92,"name":"pyhub","url":"https://github.com/smoak/pyhub","description":"Python Client for the GitHub v3 API ","open_issues":0,"private":false,"username":"smoak"},{"type":"repo","has_issues":true,"created_at":"2012-03-08T12:07:25-08:00","score":1.2907803,"owner":"csphere","has_downloads":true,"followers":2,"created":"2012-03-08T12:07:25-08:00","pushed":"2012-04-02T15:08:54-07:00","homepage":"","watchers":2,"has_wiki":true,"language":"Ruby","pushed_at":"2012-04-02T15:08:54-07:00","forks":2,"fork":false,"size":264,"name":"rubhub","url":"https://github.com/csphere/rubhub","description":"Ruby Gem - An intuitive wrapper for the Github Api v3.","open_issues":0,"private":false,"username":"csphere"},{"type":"repo","has_issues":true,"created_at":"2012-06-03T12:59:40-07:00","score":1.2374389,"owner":"badsharkco","has_downloads":true,"followers":1,"created":"2012-06-03T12:59:40-07:00","pushed":"2012-06-03T13:58:55-07:00","watchers":1,"has_wiki":true,"language":"PHP","pushed_at":"2012-06-03T13:58:55-07:00","forks":1,"fork":false,"size":124,"name":"simplev3-php","url":"https://github.com/badsharkco/simplev3-php","description":"The simplest way to interact with the GitHub API v3, in PHP.","open_issues":0,"private":false,"username":"badsharkco"},{"type":"repo","has_issues":true,"created_at":"2012-06-07T08:51:53-07:00","score":1.2374389,"owner":"cheeyeo","has_downloads":true,"followers":1,"created":"2012-06-07T08:51:53-07:00","pushed":"2012-06-07T10:39:31-07:00","watchers":1,"has_wiki":true,"language":"","pushed_at":"2012-06-07T10:39:31-07:00","forks":1,"fork":false,"size":0,"name":"snipplets-test","url":"https://github.com/cheeyeo/snipplets-test","description":"Testing snipplets app link to github through api v3","open_issues":0,"private":false,"username":"cheeyeo"},{"type":"repo","has_issues":true,"created_at":"2012-06-05T00:39:13-07:00","score":1.2374389,"owner":"hahuang65","has_downloads":true,"followers":1,"created":"2012-06-05T00:39:13-07:00","pushed":"2012-06-14T17:11:06-07:00","watchers":1,"has_wiki":true,"language":"Ruby","pushed_at":"2012-06-14T17:11:06-07:00","forks":1,"fork":false,"size":436,"name":"Octobot","url":"https://github.com/hahuang65/Octobot","description":"GitHub V3 API Wrapper for Ruby","open_issues":0,"private":false,"username":"hahuang65"},{"type":"repo","has_issues":true,"created_at":"2012-06-14T14:31:40-07:00","score":1.2374389,"owner":"smencer","has_downloads":true,"followers":1,"created":"2012-06-14T14:31:40-07:00","pushed":"2012-06-25T19:51:13-07:00","watchers":1,"has_wiki":true,"language":"C#","pushed_at":"2012-06-25T19:51:13-07:00","forks":1,"fork":false,"size":396,"name":"CSharpGitHubAPIWrapper","url":"https://github.com/smencer/CSharpGitHubAPIWrapper","description":"A C# wrapper for the GitHub API (v3)","open_issues":0,"private":false,"username":"smencer"},{"type":"repo","has_issues":true,"created_at":"2011-04-29T15:16:32-07:00","score":1.2374388,"owner":"jeffremer","has_downloads":true,"followers":1,"created":"2011-04-29T15:16:32-07:00","pushed":"2011-04-30T19:43:37-07:00","homepage":"http://jeffremer.com","watchers":1,"has_wiki":true,"language":"Ruby","pushed_at":"2011-04-30T19:43:37-07:00","forks":1,"fork":false,"size":848,"name":"gist-client","url":"https://github.com/jeffremer/gist-client","description":"A REST client for CRUDing Github Gists via the v3 API.","open_issues":0,"private":false,"username":"jeffremer"},{"type":"repo","has_issues":true,"created_at":"2011-05-23T19:31:04-07:00","score":1.2374388,"owner":"kaiwu","has_downloads":true,"followers":1,"created":"2011-05-23T19:31:04-07:00","pushed":"2011-05-23T19:51:51-07:00","homepage":"","watchers":1,"has_wiki":true,"language":"","pushed_at":"2011-05-23T19:51:51-07:00","forks":1,"fork":false,"size":108,"name":"githubv3objc","url":"https://github.com/kaiwu/githubv3objc","description":"github v3 api wrapper in objective-c","open_issues":0,"private":false,"username":"kaiwu"},{"type":"repo","has_issues":true,"created_at":"2011-07-28T15:57:34-07:00","master_branch":"develop","score":1.2374388,"owner":"mrtazz","has_downloads":true,"followers":1,"created":"2011-07-28T15:57:34-07:00","pushed":"2011-07-28T15:58:01-07:00","homepage":"","watchers":1,"has_wiki":true,"language":"","pushed_at":"2011-07-28T15:58:01-07:00","forks":1,"fork":false,"size":100,"name":"octonode","url":"https://github.com/mrtazz/octonode","description":"[WIP] node.js wrapper for the github v3 API","open_issues":0,"private":false,"username":"mrtazz"},{"type":"repo","has_issues":true,"created_at":"2011-11-13T12:27:30-08:00","score":1.2374388,"owner":"mdellanoce","has_downloads":true,"followers":1,"created":"2011-11-13T12:27:30-08:00","pushed":"2012-01-17T18:24:42-08:00","homepage":"","watchers":1,"has_wiki":true,"language":"Ruby","pushed_at":"2012-01-17T18:24:42-08:00","forks":1,"fork":false,"size":268,"name":"gittycat","url":"https://github.com/mdellanoce/gittycat","description":"Yet another ruby binding for GitHub's V3 API","open_issues":0,"private":false,"username":"mdellanoce"},{"type":"repo","has_issues":true,"created_at":"2012-04-30T07:59:23-07:00","score":1.2374388,"owner":"Strech","has_downloads":true,"followers":1,"created":"2012-04-30T07:59:23-07:00","pushed":"2012-04-30T09:48:02-07:00","watchers":1,"has_wiki":true,"language":"Ruby","pushed_at":"2012-04-30T09:48:02-07:00","forks":1,"fork":false,"size":236,"name":"abak_oauth","url":"https://github.com/Strech/abak_oauth","description":"This is a simple rails app for github api v3 oauth2","open_issues":0,"private":false,"username":"Strech"},{"type":"repo","has_issues":true,"created_at":"2011-08-12T15:20:29-07:00","score":1.1073024,"owner":"meritt","has_downloads":true,"followers":3,"created":"2011-08-12T15:20:29-07:00","pushed":"2012-04-22T13:04:49-07:00","homepage":"http://github.com/meritt/node-gisty","watchers":3,"has_wiki":false,"language":"CoffeeScript","pushed_at":"2012-04-22T13:04:49-07:00","forks":1,"fork":false,"size":112,"name":"node-gisty","url":"https://github.com/meritt/node-gisty","description":"A Node.JS wrapper for GitHub gist API v3. ","open_issues":0,"private":false,"username":"meritt"},{"type":"repo","has_issues":true,"created_at":"2012-06-13T13:26:46-07:00","score":1.0669504,"owner":"ritratt","has_downloads":true,"followers":1,"created":"2012-06-13T13:26:46-07:00","pushed":"2012-06-13T13:37:31-07:00","watchers":1,"has_wiki":true,"language":"Python","pushed_at":"2012-06-13T13:37:31-07:00","forks":1,"fork":false,"size":92,"name":"gituserinfo","url":"https://github.com/ritratt/gituserinfo","description":"A simple python script that uses PyGithub for accessing user information through Github API v3","open_issues":0,"private":false,"username":"ritratt"},{"type":"repo","has_issues":true,"created_at":"2011-09-08T18:44:48-07:00","score":1.0006194,"owner":"wanthony","has_downloads":true,"followers":1,"created":"2011-09-08T18:44:48-07:00","pushed":null,"homepage":"","watchers":1,"has_wiki":true,"language":"","forks":1,"fork":false,"size":0,"name":"coffeehub","url":"https://github.com/wanthony/coffeehub","description":"A Node.js / CoffeeScript GitHub API v3 Implementation","open_issues":0,"private":false,"username":"wanthony"},{"type":"repo","has_issues":true,"created_at":"2011-11-17T23:39:13-08:00","score":1.0006194,"owner":"plu","has_downloads":true,"followers":1,"created":"2011-11-17T23:39:13-08:00","pushed":"2011-11-17T23:41:46-08:00","homepage":"","watchers":1,"has_wiki":true,"language":"Objective-C","pushed_at":"2011-11-17T23:41:46-08:00","forks":1,"fork":false,"size":348,"name":"Octotco","url":"https://github.com/plu/Octotco","description":"iOS App to access the Github v3 API via RestKit","open_issues":0,"private":false,"username":"plu"},{"type":"repo","has_issues":true,"created_at":"2012-02-11T22:46:07-08:00","score":1.0006194,"owner":"roopeshvaddepally","has_downloads":true,"followers":1,"created":"2012-02-11T22:46:07-08:00","pushed":"2012-02-12T15:14:35-08:00","homepage":"","watchers":1,"has_wiki":true,"language":"Python","pushed_at":"2012-02-12T15:14:35-08:00","forks":1,"fork":false,"size":108,"name":"pygh3","url":"https://github.com/roopeshvaddepally/pygh3","description":"python github wrapper for api v3. make it more like iorayne/tentacles","open_issues":0,"private":false,"username":"roopeshvaddepally"},{"type":"repo","has_issues":true,"created_at":"2011-11-02T09:35:46-07:00","score":1.0006194,"owner":"exallium","has_downloads":true,"followers":1,"created":"2011-11-02T09:35:46-07:00","pushed":"2012-03-02T15:30:29-08:00","homepage":"","watchers":1,"has_wiki":true,"language":"Java","pushed_at":"2012-03-02T15:30:29-08:00","forks":1,"fork":false,"size":1896,"name":"gitIssues2","url":"https://github.com/exallium/gitIssues2","description":"Complete Rewrite of GitIssues, including new UI and utilizing Github's V3 API Java Library","open_issues":2,"private":false,"username":"exallium"},{"type":"repo","has_issues":true,"created_at":"2012-03-09T05:24:54-08:00","score":1.0006194,"owner":"inkel","has_downloads":true,"followers":1,"created":"2012-03-09T05:24:54-08:00","pushed":"2012-03-12T05:38:07-07:00","homepage":"","watchers":1,"has_wiki":true,"language":"JavaScript","pushed_at":"2012-03-12T05:38:07-07:00","forks":1,"fork":false,"size":380,"name":"cuba-omniauth-octokit","url":"https://github.com/inkel/cuba-omniauth-octokit","description":"Proof of concept of a Cuba application with OmniAuth and Octokit to access the GitHub v3 API","open_issues":3,"private":false,"username":"inkel"},{"type":"repo","has_issues":true,"created_at":"2012-02-17T09:18:01-08:00","score":1.0006194,"owner":"LukasKnuth","has_downloads":true,"followers":1,"created":"2012-02-17T09:18:01-08:00","pushed":"2012-02-17T15:31:14-08:00","homepage":"","watchers":1,"has_wiki":true,"language":"JavaScript","pushed_at":"2012-02-17T15:31:14-08:00","forks":1,"fork":false,"size":124,"name":"jsg-hub","url":"https://github.com/LukasKnuth/jsg-hub","description":"This project aims to create a JavaScript library for the GitHub API v3","open_issues":0,"private":false,"username":"LukasKnuth"},{"type":"repo","has_issues":true,"created_at":"2012-01-01T17:23:26-08:00","score":0.9402493,"owner":"lrvick","has_downloads":true,"followers":1,"created":"2012-01-01T17:23:26-08:00","pushed":"2012-01-01T17:24:43-08:00","homepage":"","watchers":1,"has_wiki":true,"language":"","pushed_at":"2012-01-01T17:24:43-08:00","forks":1,"fork":false,"size":96,"name":"jquery-githubnav","url":"https://github.com/lrvick/jquery-githubnav","description":"jQuery driven stack to render a tree-driven explorer of all your Github code via the Github v3 API","open_issues":0,"private":false,"username":"lrvick"},{"type":"repo","has_issues":true,"created_at":"2011-07-31T03:41:16-07:00","score":0.9355511,"owner":"mklabs","has_downloads":true,"followers":2,"created":"2011-07-31T03:41:16-07:00","pushed":"2011-07-31T08:34:55-07:00","homepage":"","watchers":2,"has_wiki":true,"language":"JavaScript","pushed_at":"2011-07-31T08:34:55-07:00","forks":1,"fork":false,"size":176,"name":"ghv3","url":"https://github.com/mklabs/ghv3","description":"GitHub Api v3 library. Ideally, it should work in node via http request, and in browsers using jsonp.","open_issues":0,"private":false,"username":"mklabs"},{"type":"repo","has_issues":true,"created_at":"2012-03-17T11:12:39-07:00","score":0.8517214,"owner":"mklabs","has_downloads":true,"followers":1,"created":"2012-03-17T11:12:39-07:00","pushed":"2012-03-17T11:13:30-07:00","homepage":"http://mklabs.github.com/gh-issues-widget/","watchers":1,"has_wiki":true,"language":"JavaScript","pushed_at":"2012-03-17T11:13:30-07:00","forks":1,"fork":false,"size":224,"name":"gh-issues-widget","url":"https://github.com/mklabs/gh-issues-widget","description":"A bit of GitHub API v3, GitHub Flavored Markdown, a soupcon of data-* attributes and you get github issue comment system. Something like that.","open_issues":2,"private":false,"username":"mklabs"},{"type":"repo","has_issues":true,"created_at":"2012-01-12T04:28:02-08:00","score":0.80183375,"owner":"jaikoo","has_downloads":true,"followers":1,"created":"2012-01-12T04:28:02-08:00","pushed":"2012-01-20T05:24:12-08:00","homepage":"","watchers":1,"has_wiki":true,"language":"Ruby","pushed_at":"2012-01-20T05:24:12-08:00","forks":1,"fork":false,"size":148,"name":"OctoCow","url":"https://github.com/jaikoo/OctoCow","description":"Work in progress Github v3 API wrapper with association chaining and semi-concrete classes (class are concrete but contents are flexible) to allow for flexible changes in the API.","open_issues":0,"private":false,"username":"jaikoo"},{"type":"repo","has_issues":true,"created_at":"2012-04-23T19:23:24-07:00","score":0.7637999,"owner":"misutowolf","has_downloads":true,"followers":1,"created":"2012-04-23T19:23:24-07:00","pushed":"2012-04-24T07:30:51-07:00","homepage":"","watchers":1,"has_wiki":true,"language":"","pushed_at":"2012-04-24T07:30:51-07:00","forks":1,"fork":false,"size":184,"name":"js-githubv3","url":"https://github.com/misutowolf/js-githubv3","description":"js-githubv3 -- A JavaScript (jQuery) library for the JSON-driven GitHub API v3","open_issues":0,"private":false,"username":"misutowolf"}]} + diff --git a/lib/github/tests/ReplayData/Github.testSearchUserByEmail.txt b/lib/github/tests/ReplayData/Github.testSearchUserByEmail.txt new file mode 100644 index 0000000000..de84f2058b --- /dev/null +++ b/lib/github/tests/ReplayData/Github.testSearchUserByEmail.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/legacy/user/email/vincent@vincent-jacques.net +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4981'), ('content-length', '395'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"baf55235e157428f731c446efe6d6cba"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Thu, 28 Jun 2012 20:58:11 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","type":"User","location":"Paris, France","blog":"http://vincent-jacques.net","name":"Vincent Jacques","permission":null,"public_repo_count":11,"login":"jacquev6","email":"vincent@vincent-jacques.net","public_gist_count":3,"created_at":"2010-07-08T23:10:06-07:00","id":327146,"followers_count":13,"following_count":24,"company":"Criteo"}} + diff --git a/lib/github/tests/ReplayData/Github.testSearchUsers.txt b/lib/github/tests/ReplayData/Github.testSearchUsers.txt new file mode 100644 index 0000000000..f173721673 --- /dev/null +++ b/lib/github/tests/ReplayData/Github.testSearchUsers.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/legacy/user/search/vincent +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4982'), ('content-length', '41235'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"77b0277b5efb0ebf5f9e3de8a493fd0c"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Thu, 28 Jun 2012 20:57:52 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"users":[{"gravatar_id":"c5a7f21b46df698f3db31c37ed0cf55a","score":73.982216,"type":"user","name":"Vincent Driessen","location":"Netherlands","fullname":"Vincent Driessen","repos":63,"login":"nvie","public_repo_count":63,"username":"nvie","created_at":"2009-05-12T21:19:38Z","record":null,"id":"user-83844","followers":310,"followers_count":310,"created":"2009-05-12T21:19:38Z","language":"Python","pushed":"2012-06-26T14:15:26.172Z"},{"gravatar_id":"a145dbf5d67ba1eb717fbe3a1f51509c","score":35.851326,"type":"user","fullname":"Jesse Vincent","repos":57,"name":"Jesse Vincent","location":"Somerville, MA, USA","login":"obra","public_repo_count":57,"username":"obra","created_at":"2009-01-09T20:24:15Z","record":null,"id":"user-45416","followers":127,"followers_count":127,"created":"2009-01-09T20:24:15Z","language":"Perl","pushed":"2012-06-27T02:15:19.036Z"},{"gravatar_id":"03a966709300efb4a86ce5ee8f88f696","score":33.5964,"type":"user","repos":86,"name":"John E. Vincent","fullname":"John E. Vincent","location":"Roswell, GA.","login":"lusis","public_repo_count":86,"username":"lusis","created_at":"2010-03-23T20:28:44Z","record":null,"id":"user-228958","followers":112,"followers_count":112,"created":"2010-03-23T20:28:44Z","language":"Ruby","pushed":"2012-06-28T15:15:44.987Z"},{"gravatar_id":"c676f9efc8e54985e84c044899481267","score":29.771633,"type":"user","name":"Vincent Jousse","repos":43,"fullname":"Vincent Jousse","location":"Le Mans","login":"vjousse","public_repo_count":43,"username":"vjousse","created_at":"2009-11-18T15:43:09Z","record":null,"id":"user-154904","followers":102,"followers_count":102,"created":"2009-11-18T15:43:09Z","language":"PHP","pushed":"2012-06-19T10:15:25.469Z"},{"gravatar_id":"1d0a2ab73604a28d767acc0e547c8985","score":14.943241,"type":"user","name":"Vincent Hanquez","fullname":"Vincent Hanquez","repos":43,"location":"","login":"vincenthz","public_repo_count":43,"username":"vincenthz","created_at":"2009-12-31T10:52:40Z","record":null,"id":"user-174631","followers":30,"followers_count":30,"created":"2009-12-31T10:52:40Z","language":"Haskell","pushed":"2011-12-02T11:15:26.599Z"},{"gravatar_id":"dd02e2c7ecf7c377b6b9c2c1a23633d0","score":13.608737,"type":"user","location":"http://git.io/vt","name":"Vincent Tsai","fullname":"Vincent Tsai","repos":18,"login":"Vayn","public_repo_count":18,"username":"Vayn","created_at":"2010-03-17T07:53:26Z","record":null,"id":"user-224407","followers":32,"followers_count":32,"created":"2010-03-17T07:53:26Z","language":"Python","pushed":"2012-05-05T02:15:14.813Z"},{"gravatar_id":"a3895a2d6f26155968be47fc03dddc40","score":13.566472,"type":"user","fullname":"Vincent Battaglia","repos":11,"name":"Vincent Battaglia","location":"San Francisco, CA","login":"vinch","public_repo_count":11,"username":"vinch","created_at":"2009-11-19T11:56:56Z","record":null,"id":"user-155370","followers":34,"followers_count":34,"created":"2009-11-19T11:56:56Z","language":"JavaScript","pushed":"2012-06-27T19:15:37.908Z"},{"gravatar_id":"2c0bde3f5628f35390c42fe505b79da4","score":12.853587,"type":"user","fullname":"Vincent Bernat","name":"Vincent Bernat","repos":25,"location":"Paris","login":"vincentbernat","public_repo_count":25,"username":"vincentbernat","created_at":"2011-02-22T07:20:26Z","record":null,"id":"user-631446","followers":26,"followers_count":26,"created":"2011-02-22T07:20:26Z","language":"C","pushed":"2012-04-24T14:15:18.536Z"},{"gravatar_id":"bbd55fb25025ef973c45e587103a1007","score":12.540491,"type":"user","location":"Nantes, France","name":"Vincent Giersch","fullname":"Vincent Giersch","repos":20,"login":"gierschv","public_repo_count":20,"username":"gierschv","created_at":"2010-09-12T16:41:49Z","record":null,"id":"user-396537","followers":26,"followers_count":26,"created":"2010-09-12T16:41:49Z","language":"JavaScript","pushed":"2012-06-07T01:15:19.516Z"},{"gravatar_id":"c8ff80488014da414b65346806178fa5","score":12.304387,"type":"user","name":"Vincent Batts","repos":20,"fullname":"Vincent Batts","location":"Vienna, VA","login":"vbatts","public_repo_count":20,"username":"vbatts","created_at":"2009-03-25T14:57:43Z","record":null,"id":"user-67049","followers":25,"followers_count":25,"created":"2009-03-25T14:57:43Z","language":"Ruby","pushed":"2012-06-18T14:15:37.054Z"},{"gravatar_id":"5ad827a4eff2f5c23d26e1b4eb746143","score":12.204174,"type":"user","repos":16,"name":"Vincent","fullname":"Vincent","location":"","login":"Valodim","public_repo_count":16,"username":"Valodim","created_at":"2008-10-06T20:33:02Z","record":null,"id":"user-27813","followers":9,"followers_count":9,"created":"2008-10-06T20:33:02Z","language":"Python","pushed":"2011-11-27T18:15:31.138Z"},{"gravatar_id":"a267b99df7d74999affbda5c314083d7","score":12.204174,"type":"user","fullname":"Vincent","repos":25,"name":"Vincent","location":"","login":"Twinside","public_repo_count":25,"username":"Twinside","created_at":"2009-12-17T09:22:27Z","record":null,"id":"user-168874","followers":6,"followers_count":6,"created":"2009-12-17T09:22:27Z","language":"VimL","pushed":"2012-06-28T07:15:16.26Z"},{"gravatar_id":"722218c7702627097bd72901d7b39e6a","score":12.197243,"type":"user","name":"Mike Vincent","location":"FTW, TX","fullname":"Mike Vincent","repos":9,"login":"agile","public_repo_count":9,"username":"agile","created_at":"2008-02-13T19:58:02Z","record":null,"id":"user-249","followers":28,"followers_count":28,"created":"2008-02-13T19:58:02Z","language":"Ruby","pushed":"2012-06-23T19:16:35.651Z"},{"gravatar_id":"a56a9079e6af8a892337a671c3b1a230","score":12.029787,"type":"user","name":"Vincent Pit","repos":13,"location":"Paris, France","fullname":"Vincent Pit","login":"vpit","public_repo_count":13,"username":"vpit","created_at":"2009-04-05T16:43:32Z","record":null,"id":"user-70731","followers":26,"followers_count":26,"created":"2009-04-05T16:43:32Z","language":"Perl","pushed":"2012-04-25T22:15:28.818Z"},{"gravatar_id":"317cf21cbde7d18d79c27e123cbf7b73","score":11.095074,"type":"user","fullname":"Vincent Velociter","name":"Vincent Velociter","repos":14,"location":"Nantes","login":"veloce","public_repo_count":14,"username":"veloce","created_at":"2010-10-01T12:58:39Z","record":null,"id":"user-423393","followers":21,"followers_count":21,"created":"2010-10-01T12:58:39Z","language":"VimL","pushed":"2012-06-20T16:15:20.04Z"},{"gravatar_id":"d4ad14bf23231763ea3c1754a65de041","score":11.040714,"type":"user","repos":45,"name":"Vincent van Haaff","fullname":"Vincent van Haaff","location":"Vancouver, BC","login":"flyingoctopus","public_repo_count":45,"username":"flyingoctopus","created_at":"2009-02-03T08:21:05Z","record":null,"id":"user-51352","followers":16,"followers_count":16,"created":"2009-02-03T08:21:05Z","language":"JavaScript","pushed":"2012-06-28T19:15:23.553Z"},{"gravatar_id":"652e02cbd134e0e92f3f81fe14bda3d1","score":11.000038,"type":"user","name":"Seth Vincent","repos":52,"fullname":"Seth Vincent","location":"olympia, wa","login":"sethvincent","public_repo_count":52,"username":"sethvincent","created_at":"2009-12-08T05:13:00Z","record":null,"id":"user-164214","followers":8,"followers_count":8,"created":"2009-12-08T05:13:00Z","language":"JavaScript","pushed":"2012-06-13T05:15:13.738Z"},{"gravatar_id":"7d3e511e6531fa9fde610015867d5c82","score":10.762525,"type":"user","fullname":"Vincent","repos":13,"name":"Vincent","location":"Zurich","login":"minikermit","public_repo_count":13,"username":"minikermit","created_at":"2009-01-18T10:56:54Z","record":null,"id":"user-47452","followers":3,"followers_count":3,"created":"2009-01-18T10:56:54Z","language":"JavaScript","pushed":"2012-06-27T19:16:29.254Z"},{"gravatar_id":"d3f0155cbb376d40f0c2e6f2d70552a4","score":10.7480545,"type":"user","fullname":"Vincent Agnano","repos":15,"name":"Vincent Agnano","location":"Montpellier","login":"vinyll","public_repo_count":15,"username":"vinyll","created_at":"2009-10-27T09:00:05Z","record":null,"id":"user-145172","followers":19,"followers_count":19,"created":"2009-10-27T09:00:05Z","language":"PHP","pushed":"2012-06-27T13:15:35.164Z"},{"gravatar_id":"dca7a9de73436b37325226984917bec0","score":10.725438,"type":"user","fullname":"Vincent Mazenod","name":"Vincent Mazenod","repos":18,"location":"Clermont Ferrand (636)","login":"mazenovi","public_repo_count":18,"username":"mazenovi","created_at":"2010-08-17T08:26:28Z","record":null,"id":"user-366957","followers":18,"followers_count":18,"created":"2010-08-17T08:26:28Z","language":"PHP","pushed":"2012-06-12T10:15:21.258Z"},{"gravatar_id":"9cfe5fa2f21186a7bec97f0e25fdf68e","score":10.578381,"type":"user","fullname":"Vincent Lark","name":"Vincent Lark","location":"France / Luxembourg","repos":11,"login":"vincent","public_repo_count":11,"username":"vincent","created_at":"2008-04-07T17:52:22Z","record":null,"id":"user-5623","followers":9,"followers_count":9,"created":"2008-04-07T17:52:22Z","language":"Python","pushed":"2011-10-17T15:15:11.027Z"},{"gravatar_id":"2bb264ba6bb334e5bfa5e266788a94c7","score":10.556574,"type":"user","repos":13,"name":"Vincent","fullname":"Vincent","location":"","login":"vjcharles","public_repo_count":13,"username":"vjcharles","created_at":"2008-06-23T08:36:59Z","record":null,"id":"user-14668","followers":2,"followers_count":2,"created":"2008-06-23T08:36:59Z","language":"Ruby","pushed":"2012-06-28T18:15:31.165Z"},{"gravatar_id":"7105cb5590c1d689191fabaff3cfc23b","score":10.545874,"type":"user","name":"Sam Vincent","repos":6,"fullname":"Sam Vincent","location":"Vancouver, BC","login":"samvincent","public_repo_count":6,"username":"samvincent","created_at":"2009-02-25T08:54:33Z","record":null,"id":"user-57775","followers":21,"followers_count":21,"created":"2009-02-25T08:54:33Z","language":"Ruby","pushed":"2012-06-15T21:15:20.297Z"},{"gravatar_id":"96f903d97afc840d7c317ce094fef408","score":10.537209,"type":"user","name":"vincent","repos":18,"fullname":"vincent","location":"北京市海淀区海淀北街8号中关村SOHO ","login":"vincent1900","public_repo_count":18,"username":"vincent1900","created_at":"2011-04-21T04:53:45Z","record":null,"id":"user-743038","followers":0,"followers_count":0,"created":"2011-04-21T04:53:45Z","language":"JavaScript","pushed":"2012-01-10T03:15:21.421Z"},{"gravatar_id":"2ecfff7b4be5cc2a6f42a0e6258f1bdd","score":10.464482,"type":"user","name":"Aziz Hardaya","location":"Jakarta Timur","repos":5,"fullname":"Aziz Hardaya","login":"AzizVincent","public_repo_count":5,"username":"AzizVincent","created_at":"2011-08-12T03:56:24Z","record":null,"id":"user-975298","followers":30,"followers_count":30,"created":"2011-08-12T03:56:24Z","language":"","pushed":"2012-02-13T03:15:25.527Z"},{"gravatar_id":"e5e032ef6bc616aab797ce8562fa60fa","score":10.312129,"type":"user","repos":3,"name":"Vincent","fullname":"Vincent","location":"Rotterdam","login":"VvanGemert","public_repo_count":3,"username":"VvanGemert","created_at":"2010-03-22T15:14:38Z","record":null,"id":"user-227966","followers":4,"followers_count":4,"created":"2010-03-22T15:14:38Z","language":"Ruby","pushed":"2012-03-29T14:15:14.844Z"},{"gravatar_id":"31a9803728a756c2b6ec090cb77852b3","score":10.310701,"type":"user","name":"Vincent Toups","location":"North Carolina","fullname":"Vincent Toups","repos":17,"login":"VincentToups","public_repo_count":17,"username":"VincentToups","created_at":"2008-10-31T13:41:24Z","record":null,"id":"user-31994","followers":16,"followers_count":16,"created":"2008-10-31T13:41:24Z","language":"Common Lisp","pushed":"2012-05-20T16:15:19.958Z"},{"gravatar_id":"2843b1e49827c8a63ef3695778646263","score":10.281975,"type":"user","fullname":"vincent","name":"vincent","location":"","repos":6,"login":"vincentwv","public_repo_count":6,"username":"vincentwv","created_at":"2011-08-17T09:40:13Z","record":null,"id":"user-985725","followers":3,"followers_count":3,"created":"2011-08-17T09:40:13Z","language":"JavaScript","pushed":"2012-04-04T16:15:11.99Z"},{"gravatar_id":"2c7e6e3e5b099d9d9d3ceba6819ca864","score":10.244888,"type":"user","fullname":"Vincent Waller","repos":44,"name":"Vincent Waller","location":"Bend, OR","login":"vwall","public_repo_count":44,"username":"vwall","created_at":"2009-08-21T18:38:05Z","record":null,"id":"user-118020","followers":7,"followers_count":7,"created":"2009-08-21T18:38:05Z","language":"Ruby","pushed":"2012-06-26T19:16:08.156Z"},{"gravatar_id":"3a66abaecbdf3edc16b509b9f46a5128","score":10.102409,"type":"user","fullname":"Vincent","repos":3,"name":"Vincent","location":"Irvine, CA","login":"vmarquez","public_repo_count":3,"username":"vmarquez","created_at":"2010-10-05T06:35:10Z","record":null,"id":"user-427578","followers":3,"followers_count":3,"created":"2010-10-05T06:35:10Z","language":"VimL","pushed":"2012-06-26T23:15:29.811Z"},{"gravatar_id":"0fa1e7a2807be2aaf0bd66d688506199","score":10.076025,"type":"user","location":"Taipei/Taiwan ","name":"Vincent","repos":12,"fullname":"Vincent","login":"changyihsin","public_repo_count":12,"username":"changyihsin","created_at":"2012-01-10T07:09:41Z","record":null,"id":"user-1317650","followers":0,"followers_count":0,"created":"2012-01-10T07:09:41Z","language":"C","pushed":"2012-06-05T07:15:20.895Z"},{"gravatar_id":"a8d7a6a8449afeeeaf9583c80c9ce8fc","score":10.073187,"type":"user","fullname":"Vincent","name":"Vincent","location":"Rotterdam/NL","repos":11,"login":"vincent-psarga","public_repo_count":11,"username":"vincent-psarga","created_at":"2010-01-20T15:27:54Z","record":null,"id":"user-186248","followers":0,"followers_count":0,"created":"2010-01-20T15:27:54Z","language":"Python","pushed":"2011-10-19T10:15:15.782Z"},{"gravatar_id":"15f0181accb819d21fd149a30303d68c","score":10.065324,"type":"user","fullname":"Vincent Demeester","repos":38,"name":"Vincent Demeester","location":"Bordeaux, Aquitaine, France","login":"vdemeester","public_repo_count":38,"username":"vdemeester","created_at":"2008-04-11T06:56:22Z","record":null,"id":"user-6508","followers":8,"followers_count":8,"created":"2008-04-11T06:56:22Z","language":"Shell","pushed":"2012-06-26T21:15:36.396Z"},{"gravatar_id":"ea99573d979fd0a4e9503a1e9331e68a","score":10.0389385,"type":"user","name":"Vincent Cogne","location":"France, Paris","fullname":"Vincent Cogne","repos":20,"login":"xpac27","public_repo_count":20,"username":"xpac27","created_at":"2009-04-22T13:24:07Z","record":null,"id":"user-76585","followers":14,"followers_count":14,"created":"2009-04-22T13:24:07Z","language":"JavaScript","pushed":"2012-06-23T19:15:31.367Z"},{"gravatar_id":"cce588dc4e7a73ae4c284915ca4de863","score":10.007375,"type":"user","repos":11,"name":"VIncent","fullname":"VIncent","location":"Guangzhou,China","login":"ywdong","public_repo_count":11,"username":"ywdong","created_at":"2012-02-21T15:58:13Z","record":null,"id":"user-1457889","followers":0,"followers_count":0,"created":"2012-02-21T15:58:13Z","language":"Java","pushed":"2012-06-03T05:15:15.227Z"},{"gravatar_id":"06366cecc21b382cef72494f25bcbf3e","score":9.9387245,"type":"user","fullname":"Vincent","repos":10,"name":"Vincent","location":"","login":"zakora","public_repo_count":10,"username":"zakora","created_at":"2009-07-19T20:21:15Z","record":null,"id":"user-106620","followers":0,"followers_count":0,"created":"2009-07-19T20:21:15Z","language":"Python","pushed":"2012-06-27T20:15:10.991Z"},{"gravatar_id":"1255ca023ce9ca08c7354b619d562625","score":9.870074,"type":"user","location":"","name":"Vincent","repos":9,"fullname":"Vincent","login":"xuevin","public_repo_count":9,"username":"xuevin","created_at":"2010-06-04T01:46:36Z","record":null,"id":"user-296101","followers":0,"followers_count":0,"created":"2010-06-04T01:46:36Z","language":"Java","pushed":"2012-06-08T20:15:31.323Z"},{"gravatar_id":"94f3a1b384d13d1413422b6b64935d48","score":9.794494,"type":"user","fullname":"Vincent Anonymouse","repos":1,"name":"Vincent Anonymouse","location":"","login":"milomouse","public_repo_count":1,"username":"milomouse","created_at":"2009-04-23T05:11:40Z","record":null,"id":"user-76868","followers":19,"followers_count":19,"created":"2009-04-23T05:11:40Z","language":"Common Lisp","pushed":"2012-03-07T19:19:44.686Z"},{"gravatar_id":"0d131f51bf9526483afcac2dd0d3dad5","score":9.7643385,"type":"user","fullname":"Vincent Cabansag","repos":1,"name":"Vincent Cabansag","location":"Chicago, IL","login":"vcabansag","public_repo_count":1,"username":"vcabansag","created_at":"2011-09-19T15:10:07Z","record":null,"id":"user-1062352","followers":19,"followers_count":19,"created":"2011-09-19T15:10:07Z","language":"Ruby","pushed":"2012-06-27T15:15:38.916Z"},{"gravatar_id":"8c6856b195974b4e03bf9ce24f36ec16","score":9.6641245,"type":"user","repos":0,"name":"Vincent","fullname":"Vincent","location":"Santa Barbara, CA","login":"vincentalindogan","public_repo_count":0,"username":"vincentalindogan","created_at":"2011-03-27T18:47:05Z","record":null,"id":"user-693707","followers":2,"followers_count":2,"created":"2011-03-27T18:47:05Z","language":"","pushed":"2012-03-26T00:15:09.735Z"},{"gravatar_id":"fb56e63daee1464b77209410873f0070","score":9.6641245,"type":"user","name":"Will Vincent","location":"Twin Cities, MN","repos":0,"fullname":"Will Vincent","login":"willvincent","public_repo_count":0,"username":"willvincent","created_at":"2011-03-25T08:19:27Z","record":null,"id":"user-689891","followers":2,"followers_count":2,"created":"2011-03-25T08:19:27Z","language":"","pushed":"2012-05-14T19:16:38.835Z"},{"gravatar_id":"ed4127e0b58e6d0f753a987f895abebd","score":9.6641245,"type":"user","name":"vincent","fullname":"vincent","location":"Beijing China","repos":3,"login":"vincenttone","public_repo_count":3,"username":"vincenttone","created_at":"2011-11-08T01:48:51Z","record":null,"id":"user-1179536","followers":1,"followers_count":1,"created":"2011-11-08T01:48:51Z","language":"Python","pushed":"2012-05-28T11:15:18.397Z"},{"gravatar_id":"aa7c3566126ee339d33fee2c801662d9","score":9.6641245,"type":"user","fullname":"Vincent","name":"Vincent","repos":6,"location":"Valence/France","login":"vinzcoco","public_repo_count":6,"username":"vinzcoco","created_at":"2012-01-23T21:13:58Z","record":null,"id":"user-1372480","followers":0,"followers_count":0,"created":"2012-01-23T21:13:58Z","language":"PHP","pushed":"2012-06-20T10:15:18.217Z"},{"gravatar_id":"8493dbf44e9a5995b24165464f10df92","score":9.595475,"type":"user","location":"","name":"Vincent ","repos":5,"fullname":"Vincent ","login":"livewire195","public_repo_count":5,"username":"livewire195","created_at":"2012-03-27T16:10:49Z","record":null,"id":"user-1580359","followers":0,"followers_count":0,"created":"2012-03-27T16:10:49Z","language":"Python","pushed":"2012-06-09T07:15:13.208Z"},{"gravatar_id":"4667846b9c1e5e426ca958ac96882eb9","score":9.576109,"type":"user","name":"vincent","repos":4,"fullname":"vincent","location":"","login":"vincent5295","public_repo_count":4,"username":"vincent5295","created_at":"2012-02-29T03:00:42Z","record":null,"id":"user-1483932","followers":0,"followers_count":0,"created":"2012-02-29T03:00:42Z","language":"C","pushed":"2012-06-17T14:15:11.01Z"},{"gravatar_id":"032f1a85263f21ff1f013421967ef99e","score":9.558389,"type":"user","name":"Vincent Franco","repos":13,"fullname":"Vincent Franco","location":"Sacramento","login":"vinniefranco","public_repo_count":13,"username":"vinniefranco","created_at":"2010-07-10T20:05:55Z","record":null,"id":"user-328428","followers":14,"followers_count":14,"created":"2010-07-10T20:05:55Z","language":"Ruby","pushed":"2012-06-17T19:15:32.752Z"},{"gravatar_id":"5ed6fc41ebf7d88590a4c07eae074e97","score":9.558389,"type":"user","fullname":"Vincent Deloso","repos":25,"name":"Vincent Deloso","location":"","login":"Mitsugaru","public_repo_count":25,"username":"Mitsugaru","created_at":"2011-11-09T21:32:35Z","record":null,"id":"user-1184640","followers":10,"followers_count":10,"created":"2011-11-09T21:32:35Z","language":"Java","pushed":"2012-06-27T15:15:40.449Z"},{"gravatar_id":"051a209f0b3759e8e51680562955d555","score":9.556979,"type":"user","name":"Vincent","fullname":"Vincent","repos":1,"location":"","login":"vgametoo","public_repo_count":1,"username":"vgametoo","created_at":"2012-03-19T12:39:35Z","record":null,"id":"user-1552699","followers":1,"followers_count":1,"created":"2012-03-19T12:39:35Z","language":"","pushed":"2012-06-21T19:15:26.276Z"},{"gravatar_id":"a270083a603e945d156b9fa5ba7f1270","score":9.55321,"type":"user","fullname":"Vincent","name":"Vincent","location":"","repos":1,"login":"dominiquevincent","public_repo_count":1,"username":"dominiquevincent","created_at":"2010-05-05T13:45:32Z","record":null,"id":"user-265581","followers":1,"followers_count":1,"created":"2010-05-05T13:45:32Z","language":"JavaScript","pushed":"2010-11-12T07:15:10.614Z"},{"gravatar_id":"4136d955e297f2759ac728b6d1701f36","score":9.55321,"type":"user","name":"Vincent","repos":1,"fullname":"Vincent","location":"","login":"vincentamari","public_repo_count":1,"username":"vincentamari","created_at":"2011-03-14T11:02:58Z","record":null,"id":"user-668429","followers":1,"followers_count":1,"created":"2011-03-14T11:02:58Z","language":"JavaScript","pushed":"2012-06-18T07:15:51.072Z"},{"gravatar_id":"4b44c097908d14610ba01790b5fc975c","score":9.526825,"type":"user","fullname":"Vincent","name":"Vincent","location":"","repos":4,"login":"ciex","public_repo_count":4,"username":"ciex","created_at":"2010-05-16T15:08:50Z","record":null,"id":"user-278463","followers":0,"followers_count":0,"created":"2010-05-16T15:08:50Z","language":"Python","pushed":"2012-04-16T15:15:29.943Z"},{"gravatar_id":"010564c5d5894e8e22ba40de45917566","score":9.526825,"type":"user","fullname":"Vincent","name":"Vincent","repos":1,"location":"The Netherlands","login":"Vinnl","public_repo_count":1,"username":"Vinnl","created_at":"2008-04-02T18:24:21Z","record":null,"id":"user-4251","followers":1,"followers_count":1,"created":"2008-04-02T18:24:21Z","language":"","pushed":"2012-05-04T14:15:33.377Z"},{"gravatar_id":"4b86e791cadf9cc2c0a4a7bfc32d9e9e","score":9.526825,"type":"user","fullname":"Vincent","name":"Vincent","repos":1,"location":"","login":"monkeymajiks","public_repo_count":1,"username":"monkeymajiks","created_at":"2012-01-25T22:10:51Z","record":null,"id":"user-1380497","followers":1,"followers_count":1,"created":"2012-01-25T22:10:51Z","language":"","pushed":"2012-06-12T11:15:31.686Z"},{"gravatar_id":"916769ca776c1e7576bcb7cd34be7391","score":9.526825,"type":"user","name":"Vincent","location":"","fullname":"Vincent","repos":4,"login":"vgauthier","public_repo_count":4,"username":"vgauthier","created_at":"2012-02-25T20:07:22Z","record":null,"id":"user-1473920","followers":0,"followers_count":0,"created":"2012-02-25T20:07:22Z","language":"Python","pushed":"2012-06-23T16:15:14.419Z"},{"gravatar_id":"b2f52d3a1a83d0fa6be6705d322bc1de","score":9.523987,"type":"user","name":"Vincent","location":"France","repos":0,"fullname":"Vincent","login":"Vincent-P","public_repo_count":0,"username":"Vincent-P","created_at":"2011-07-28T13:51:46Z","record":null,"id":"user-944506","followers":1,"followers_count":1,"created":"2011-07-28T13:51:46Z","language":"","pushed":"2012-05-12T09:15:15.844Z"},{"gravatar_id":"fc24888b3f4d2a85348e7bbded2f4100","score":9.488329,"type":"user","fullname":"Vincent","repos":0,"name":"Vincent","location":"Amsterdam","login":"viancen","public_repo_count":0,"username":"viancen","created_at":"2012-02-15T08:22:55Z","record":null,"id":"user-1439145","followers":1,"followers_count":1,"created":"2012-02-15T08:22:55Z","language":"","pushed":"2012-06-26T21:15:34.446Z"},{"gravatar_id":"8682561c2989398cda139818390a25c4","score":9.48456,"type":"user","name":"Vincent","repos":0,"fullname":"Vincent","location":"Singapore","login":"vsputra","public_repo_count":0,"username":"vsputra","created_at":"2010-07-19T17:38:53Z","record":null,"id":"user-337548","followers":1,"followers_count":1,"created":"2010-07-19T17:38:53Z","language":"","pushed":"2012-06-19T03:15:15.214Z"},{"gravatar_id":"d3d7715ddc9d2c98dc0acca41026e3ec","score":9.48079,"type":"user","name":"Vincent","location":"Melbourne/Australia","fullname":"Vincent","repos":3,"login":"vincentwongso","public_repo_count":3,"username":"vincentwongso","created_at":"2012-01-03T00:57:50Z","record":null,"id":"user-1300030","followers":0,"followers_count":0,"created":"2012-01-03T00:57:50Z","language":"JavaScript","pushed":"2012-05-10T23:15:22.719Z"},{"gravatar_id":"207cf37afe1b8de78411201832496eb3","score":9.48079,"type":"user","name":"vincent","location":"bordeaux","fullname":"vincent","repos":3,"login":"guillaumevincent","public_repo_count":3,"username":"guillaumevincent","created_at":"2011-07-28T06:59:30Z","record":null,"id":"user-943762","followers":0,"followers_count":0,"created":"2011-07-28T06:59:30Z","language":"Python","pushed":"2012-06-22T12:15:17.467Z"},{"gravatar_id":"fc35e4705d430b49a2e1f962e73d567f","score":9.458175,"type":"user","fullname":"Vincent","repos":0,"name":"Vincent","location":"","login":"vn","public_repo_count":0,"username":"vn","created_at":"2012-01-20T23:48:32Z","record":null,"id":"user-1361165","followers":1,"followers_count":1,"created":"2012-01-20T23:48:32Z","language":"","pushed":"2012-06-28T11:15:11.679Z"},{"gravatar_id":"c34027ae138bf86507c5a36a6b3bf3a5","score":9.421089,"type":"user","name":"Vincent Lannurien","fullname":"Vincent Lannurien","location":"France","repos":8,"login":"addikt1ve","public_repo_count":8,"username":"addikt1ve","created_at":"2008-09-01T13:41:54Z","record":null,"id":"user-22757","followers":15,"followers_count":15,"created":"2008-09-01T13:41:54Z","language":"Shell","pushed":"2011-04-29T22:15:09.273Z"},{"gravatar_id":"226e40fdc55d4597a46279296a616384","score":9.419679,"type":"user","location":"Denver","name":"Vincent","repos":2,"fullname":"Vincent","login":"vincentdavis","public_repo_count":2,"username":"vincentdavis","created_at":"2010-03-29T12:06:25Z","record":null,"id":"user-232564","followers":0,"followers_count":0,"created":"2010-03-29T12:06:25Z","language":"VimL","pushed":"2012-06-05T19:15:38.974Z"},{"gravatar_id":"f6e9045bb7bf8b000eaf62caffbd17ab","score":9.41591,"type":"user","fullname":"Vincent","repos":2,"name":"Vincent","location":"Mont sainte anne","login":"vincentvent","public_repo_count":2,"username":"vincentvent","created_at":"2011-08-10T01:40:18Z","record":null,"id":"user-970338","followers":0,"followers_count":0,"created":"2011-08-10T01:40:18Z","language":"","pushed":"2012-03-08T14:15:38.332Z"},{"gravatar_id":"dfac99df6d6b570feb68f0b88f720a80","score":9.41214,"type":"user","name":"vincent","repos":2,"fullname":"vincent","location":"China, Shenzhen, Nanshan","login":"chenws","public_repo_count":2,"username":"chenws","created_at":"2012-01-03T16:35:05Z","record":null,"id":"user-1301573","followers":0,"followers_count":0,"created":"2012-01-03T16:35:05Z","language":"C","pushed":"2012-05-02T09:15:37.412Z"},{"gravatar_id":"1cc07aa5b421181a130efdd61112ec3e","score":9.403019,"type":"user","fullname":"Vincent S","name":"Vincent S","repos":1,"location":"","login":"VincentS","public_repo_count":1,"username":"VincentS","created_at":"2011-08-23T12:33:31Z","record":null,"id":"user-998872","followers":0,"followers_count":0,"created":"2011-08-23T12:33:31Z","language":"Ruby","pushed":"2011-08-23T13:15:25.062Z"},{"gravatar_id":"304da7fc1421e25a18b95b784baf9539","score":9.389524,"type":"user","name":"Vincent","fullname":"Vincent","location":"","repos":2,"login":"copyshaft","public_repo_count":2,"username":"copyshaft","created_at":"2009-12-04T03:29:28Z","record":null,"id":"user-161704","followers":0,"followers_count":0,"created":"2009-12-04T03:29:28Z","language":"","pushed":"2010-05-24T00:25:15.443Z"},{"gravatar_id":"838409afe0def35c03da9757148df790","score":9.389524,"type":"user","name":"Vincent","repos":2,"fullname":"Vincent","location":"Paris","login":"vinceofdrink","public_repo_count":2,"username":"vinceofdrink","created_at":"2011-07-04T11:24:46Z","record":null,"id":"user-893359","followers":0,"followers_count":0,"created":"2011-07-04T11:24:46Z","language":"C","pushed":"2012-01-12T15:15:29.207Z"},{"gravatar_id":"1adf0d0b91278d02e88627ffbdd1c65a","score":9.389524,"type":"user","repos":2,"name":"Vincent","fullname":"Vincent","location":"China","login":"wenzheng","public_repo_count":2,"username":"wenzheng","created_at":"2011-08-11T12:35:23Z","record":null,"id":"user-973811","followers":0,"followers_count":0,"created":"2011-08-11T12:35:23Z","language":"","pushed":"2012-02-23T15:15:48.56Z"},{"score":9.389524,"type":"user","fullname":"Vincent","name":"Vincent","location":"France","repos":2,"login":"ziefno","public_repo_count":2,"username":"ziefno","created_at":"2012-03-10T14:44:03Z","record":null,"id":"user-1523263","followers":0,"followers_count":0,"created":"2012-03-10T14:44:03Z","language":"","pushed":"2012-03-10T22:15:17.63Z"},{"gravatar_id":"95bcdb7789b7c0481aea3cf55b5bb987","score":9.389524,"type":"user","name":"Vincent","location":"","fullname":"Vincent","repos":2,"login":"vincentm8","public_repo_count":2,"username":"vincentm8","created_at":"2010-09-12T19:26:07Z","record":null,"id":"user-396662","followers":0,"followers_count":0,"created":"2010-09-12T19:26:07Z","language":"PHP","pushed":"2012-04-16T08:15:17.843Z"},{"gravatar_id":"811d7edddfcb7e652f38c7e56d51ea51","score":9.389524,"type":"user","fullname":"Vincent","repos":2,"name":"Vincent","location":"HCM","login":"vnoob","public_repo_count":2,"username":"vnoob","created_at":"2011-04-15T15:26:21Z","record":null,"id":"user-731797","followers":0,"followers_count":0,"created":"2011-04-15T15:26:21Z","language":"","pushed":"2012-06-02T04:15:19.714Z"},{"gravatar_id":"bf4442de23d120becefaa556f41562f2","score":9.389524,"type":"user","name":"Vincente","repos":2,"fullname":"Vincente","location":"California","login":"vciancio","public_repo_count":2,"username":"vciancio","created_at":"2011-12-01T03:03:38Z","record":null,"id":"user-1232406","followers":0,"followers_count":0,"created":"2011-12-01T03:03:38Z","language":"Java","pushed":"2012-06-19T00:15:59.771Z"},{"gravatar_id":"d6288a0b3a370e4db4ea27adbeb74a30","score":9.378824,"type":"user","repos":10,"name":"Blanchon Vincent","fullname":"Blanchon Vincent","location":"Sophia Antipolis, France","login":"blanchonvincent","public_repo_count":10,"username":"blanchonvincent","created_at":"2012-03-27T17:07:35Z","record":null,"id":"user-1580512","followers":14,"followers_count":14,"created":"2012-03-27T17:07:35Z","language":"PHP","pushed":"2012-06-04T10:15:20.206Z"},{"gravatar_id":"667176b96540d167eb74f473c9aea5f7","score":9.378824,"type":"user","name":"Vincent Voyer","location":"Paris, france","fullname":"Vincent Voyer","repos":13,"login":"vvo","public_repo_count":13,"username":"vvo","created_at":"2009-09-06T14:28:06Z","record":null,"id":"user-123822","followers":13,"followers_count":13,"created":"2009-09-06T14:28:06Z","language":"JavaScript","pushed":"2012-06-26T17:15:45.365Z"},{"gravatar_id":"71e56904f65a1ad1f3a178062fad6897","score":9.370159,"type":"user","fullname":"Vincent","name":"Vincent","repos":1,"location":"France, Tarn","login":"Vincent81","public_repo_count":1,"username":"Vincent81","created_at":"2011-08-05T21:22:58Z","record":null,"id":"user-962113","followers":0,"followers_count":0,"created":"2011-08-05T21:22:58Z","language":"","pushed":"2011-09-06T14:15:24.224Z"},{"gravatar_id":"014023e8bd4f74bdd5dd949f9afcf9c9","score":9.34726,"type":"user","name":"Vincent","fullname":"Vincent","location":"","repos":1,"login":"Vincentbosch","public_repo_count":1,"username":"Vincentbosch","created_at":"2011-05-12T14:48:43Z","record":null,"id":"user-784014","followers":0,"followers_count":0,"created":"2011-05-12T14:48:43Z","language":"","pushed":"2011-05-17T14:15:16.145Z"},{"gravatar_id":"86f44ee7aef87c7df23227ed99af157c","score":9.34726,"type":"user","name":"vincent","location":"","repos":1,"fullname":"vincent","login":"legarconjoure","public_repo_count":1,"username":"legarconjoure","created_at":"2011-04-04T12:20:19Z","record":null,"id":"user-708274","followers":0,"followers_count":0,"created":"2011-04-04T12:20:19Z","language":"","pushed":"2012-05-14T08:15:24.999Z"},{"gravatar_id":"fceb28e90061e831277e161d5e85757a","score":9.327894,"type":"user","repos":0,"name":"Vincent","fullname":"Vincent","location":"","login":"vincent7894","public_repo_count":0,"username":"vincent7894","created_at":"2011-12-10T20:26:26Z","record":null,"id":"user-1254570","followers":0,"followers_count":0,"created":"2011-12-10T20:26:26Z","language":"","pushed":"2012-03-29T18:15:22.448Z"},{"gravatar_id":"8a817ae82ab5e742c6aca7548e39ab65","score":9.327894,"type":"user","repos":0,"name":"Vincent","fullname":"Vincent","location":"","login":"vincent73000","public_repo_count":0,"username":"vincent73000","created_at":"2011-07-30T13:45:47Z","record":null,"id":"user-948600","followers":0,"followers_count":0,"created":"2011-07-30T13:45:47Z","language":"","pushed":"2012-06-04T11:15:21.524Z"},{"gravatar_id":"d98356664e29463bdc8d8e77095a80bd","score":9.320875,"type":"user","name":"Vincent","fullname":"Vincent","location":"Shanghai, China","repos":1,"login":"ttyio","public_repo_count":1,"username":"ttyio","created_at":"2010-08-16T06:35:46Z","record":null,"id":"user-365590","followers":0,"followers_count":0,"created":"2010-08-16T06:35:46Z","language":"VimL","pushed":"2010-11-08T03:15:12.032Z"},{"gravatar_id":"74ccd2db6dd9211393d4bd62408c6c13","score":9.320875,"type":"user","fullname":"vincent","repos":1,"name":"vincent","location":"","login":"tean60","public_repo_count":1,"username":"tean60","created_at":"2011-01-20T06:55:22Z","record":null,"id":"user-574055","followers":0,"followers_count":0,"created":"2011-01-20T06:55:22Z","language":"","pushed":"2011-06-10T06:15:11.093Z"},{"gravatar_id":"3526439448f2288e0aa5f9456b6aad4b","score":9.320875,"type":"user","name":"Will Vincent","fullname":"Will Vincent","repos":1,"location":"","login":"tcindie","public_repo_count":1,"username":"tcindie","created_at":"2010-07-02T18:50:26Z","record":null,"id":"user-321392","followers":0,"followers_count":0,"created":"2010-07-02T18:50:26Z","language":"PHP","pushed":"2011-07-01T17:15:14.856Z"},{"gravatar_id":"3aeafe584ef75baac1976c910f069752","score":9.320875,"type":"user","name":"vincent","fullname":"vincent","location":"","repos":1,"login":"vincentye38","public_repo_count":1,"username":"vincentye38","created_at":"2011-01-27T07:37:41Z","record":null,"id":"user-586072","followers":0,"followers_count":0,"created":"2011-01-27T07:37:41Z","language":"","pushed":"2012-04-05T05:15:16.89Z"},{"gravatar_id":"49a3fcbf452d1e9d85259d8e1f510934","score":9.320875,"type":"user","repos":1,"name":"Vincent","location":"Rouen","fullname":"Vincent","login":"pasificking","public_repo_count":1,"username":"pasificking","created_at":"2012-03-30T09:07:51Z","record":null,"id":"user-1589894","followers":0,"followers_count":0,"created":"2012-03-30T09:07:51Z","language":"","pushed":"2012-04-10T09:15:35.441Z"},{"gravatar_id":"c3ca1e10cdb67296511fdb480b4acdf0","score":9.320875,"type":"user","name":"Vincent","repos":1,"fullname":"Vincent","location":"","login":"Bpbannerproject","public_repo_count":1,"username":"Bpbannerproject","created_at":"2012-05-07T19:08:32Z","record":null,"id":"user-1714420","followers":0,"followers_count":0,"created":"2012-05-07T19:08:32Z","language":"","pushed":"2012-05-16T06:15:09.874Z"},{"gravatar_id":"259619f6b128ff8886bffa31ea52ab35","score":9.320875,"type":"user","fullname":"Vincent","repos":1,"name":"Vincent","location":"Nanjing, China","login":"farawayboat","public_repo_count":1,"username":"farawayboat","created_at":"2011-09-23T16:35:39Z","record":null,"id":"user-1074475","followers":0,"followers_count":0,"created":"2011-09-23T16:35:39Z","language":"","pushed":"2012-06-28T07:15:16.399Z"},{"gravatar_id":"6b3cc4c0504401ebb74ecac20cec5fbb","score":9.301509,"type":"user","fullname":"Vincent","name":"Vincent","location":"","repos":0,"login":"vincent7842","public_repo_count":0,"username":"vincent7842","created_at":"2012-03-17T14:30:39Z","record":null,"id":"user-1547379","followers":0,"followers_count":0,"created":"2012-03-17T14:30:39Z","language":"","pushed":"2012-03-17T15:15:16.619Z"},{"gravatar_id":"886a562bd3cc225ec3250650d8cdf4bd","score":9.297433,"type":"user","name":"Zhiqiang Zhao","location":"Hangzhou, China","fullname":"Zhiqiang Zhao","repos":9,"login":"vincent-zhao","public_repo_count":9,"username":"vincent-zhao","created_at":"2012-01-31T03:18:49Z","record":null,"id":"user-1393423","followers":23,"followers_count":23,"created":"2012-01-31T03:18:49Z","language":"JavaScript","pushed":"2012-06-23T07:15:16.545Z"},{"gravatar_id":"4c7ff78c68f09a6294059d17df823fbf","score":9.291653,"type":"user","name":"Vincent","repos":0,"fullname":"Vincent","location":"Belgium","login":"VincentU","public_repo_count":0,"username":"VincentU","created_at":"2012-03-21T06:39:02Z","record":null,"id":"user-1559921","followers":0,"followers_count":0,"created":"2012-03-21T06:39:02Z","language":"","pushed":"2012-05-16T18:15:22.652Z"},{"gravatar_id":"9ec9ad37e9ab75436de0b3a0ce971dbe","score":9.283789,"type":"user","name":"Vincent Tencé","location":"Laval, Qc Canada","fullname":"Vincent Tencé","repos":12,"login":"testinfected","public_repo_count":12,"username":"testinfected","created_at":"2009-09-18T23:30:38Z","record":null,"id":"user-128804","followers":13,"followers_count":13,"created":"2009-09-18T23:30:38Z","language":"Java","pushed":"2012-06-23T19:16:06.24Z"},{"gravatar_id":"30d318bdf8e6a1d013c1bd8c5e9749a0","score":9.282379,"type":"user","name":"Vincent","fullname":"Vincent","location":"Coeur d'Alene ID","repos":0,"login":"thinkeryvin","public_repo_count":0,"username":"thinkeryvin","created_at":"2009-09-22T06:48:36Z","record":null,"id":"user-129806","followers":0,"followers_count":0,"created":"2009-09-22T06:48:36Z","language":"","pushed":"2011-03-30T07:15:09.25Z"},{"gravatar_id":"160934525d484d9269d3f5be05ff26da","score":9.282379,"type":"user","fullname":"Vincent","name":"Vincent","repos":0,"location":"Zoetermeer","login":"vinnyb","public_repo_count":0,"username":"vinnyb","created_at":"2010-08-16T13:04:14Z","record":null,"id":"user-365924","followers":0,"followers_count":0,"created":"2010-08-16T13:04:14Z","language":"","pushed":"2012-05-07T09:15:11.135Z"},{"gravatar_id":"e36b0ea5f740b3545bb9c39dcf4e5110","score":9.282379,"type":"user","fullname":"vincent","name":"vincent","location":"","repos":0,"login":"vinc3nt","public_repo_count":0,"username":"vinc3nt","created_at":"2011-07-01T11:34:07Z","record":null,"id":"user-888545","followers":0,"followers_count":0,"created":"2011-07-01T11:34:07Z","language":"","pushed":"2012-05-22T21:15:13.084Z"},{"gravatar_id":"953b83ade35b99fb82c2a6e134b2329a","score":9.27861,"type":"user","name":"vincent","location":"Montpellier, France","fullname":"vincent","repos":0,"login":"narf","public_repo_count":0,"username":"narf","created_at":"2010-10-28T16:11:35Z","record":null,"id":"user-458263","followers":0,"followers_count":0,"created":"2010-10-28T16:11:35Z","language":"","pushed":"2012-05-21T08:15:26.631Z"},{"gravatar_id":"a6c32849daa0d165f480bfa612116767","score":9.27861,"type":"user","name":"Vincent","location":"","repos":0,"fullname":"Vincent","login":"vincentveri","public_repo_count":0,"username":"vincentveri","created_at":"2011-05-03T08:59:39Z","record":null,"id":"user-765248","followers":0,"followers_count":0,"created":"2011-05-03T08:59:39Z","language":"","pushed":"2012-05-25T18:15:20.565Z"},{"gravatar_id":"23284aaf57ee593baa81a3d953386021","score":9.27861,"type":"user","repos":0,"name":"Vincent","fullname":"Vincent","location":"","login":"vrafols","public_repo_count":0,"username":"vrafols","created_at":"2012-05-28T03:31:24Z","record":null,"id":"user-1784314","followers":0,"followers_count":0,"created":"2012-05-28T03:31:24Z","language":"","pushed":"2012-06-04T07:15:19.793Z"},{"gravatar_id":"24eb2af05f128cbf59314bddf59f3ed9","score":9.27861,"type":"user","name":"Vincent","fullname":"Vincent","repos":0,"location":"","login":"vinc38","public_repo_count":0,"username":"vinc38","created_at":"2012-01-18T08:14:07Z","record":null,"id":"user-1343597","followers":0,"followers_count":0,"created":"2012-01-18T08:14:07Z","language":"","pushed":"2012-06-14T14:15:37.571Z"},{"gravatar_id":"5a60bf71026c317ff9cacf9cce842924","score":9.27484,"type":"user","repos":0,"name":"Vincent","fullname":"Vincent","location":"","login":"Squee","public_repo_count":0,"username":"Squee","created_at":"2009-11-18T13:16:18Z","record":null,"id":"user-154841","followers":0,"followers_count":0,"created":"2009-11-18T13:16:18Z","language":"","pushed":"2011-11-15T17:15:15.363Z"},{"gravatar_id":"747d136a83a1e1fd26b5f001eb632d2c","score":9.252225,"type":"user","name":"Vincent","fullname":"Vincent","location":"","repos":0,"login":"msr911","public_repo_count":0,"username":"msr911","created_at":"2010-02-11T10:01:05Z","record":null,"id":"user-201682","followers":0,"followers_count":0,"created":"2010-02-11T10:01:05Z","language":"","pushed":"2010-05-23T23:30:14.272Z"},{"gravatar_id":"f09b6aab5c78a879998248e76e9e80b8","score":9.252225,"type":"user","name":"vincent","fullname":"vincent","location":"","repos":0,"login":"vincwu","public_repo_count":0,"username":"vincwu","created_at":"2009-05-02T14:51:55Z","record":null,"id":"user-80223","followers":0,"followers_count":0,"created":"2009-05-02T14:51:55Z","language":"","pushed":"2011-03-22T06:15:08.705Z"}]} + diff --git a/lib/github/tests/ReplayData/Hook.setUp.txt b/lib/github/tests/ReplayData/Hook.setUp.txt new file mode 100644 index 0000000000..c885036a2c --- /dev/null +++ b/lib/github/tests/ReplayData/Hook.setUp.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4954'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"7af2c1dbdce8b064d8e1c1cee90fe416"'), ('date', 'Tue, 29 May 2012 19:04:12 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"total_private_repos":5,"collaborators":0,"html_url":"https://github.com/jacquev6","type":"User","company":"Criteo","location":"Paris, France","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","owned_private_repos":5,"public_repos":10,"public_gists":3,"private_gists":5,"following":24,"blog":"http://vincent-jacques.net","followers":13,"disk_usage":17092,"hireable":false,"url":"https://api.github.com/users/jacquev6","name":"Vincent Jacques","login":"jacquev6","email":"vincent@vincent-jacques.net","bio":"","id":327146,"plan":{"collaborators":1,"private_repos":5,"name":"micro","space":614400},"created_at":"2010-07-09T06:10:06Z","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4953'), ('content-length', '1129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d574405822696c3387860e1e0f104059"'), ('date', 'Tue, 29 May 2012 19:04:13 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"mirror_url":null,"clone_url":"https://github.com/jacquev6/PyGithub.git","has_downloads":true,"watchers":17,"updated_at":"2012-05-29T18:49:46Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","html_url":"https://github.com/jacquev6/PyGithub","has_wiki":false,"has_issues":true,"fork":false,"forks":3,"git_url":"git://github.com/jacquev6/PyGithub.git","size":480,"private":false,"open_issues":12,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-29T18:49:46Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"full_name":"jacquev6/PyGithub"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/hooks/257993 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4952'), ('content-length', '293'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"36d23f2fb8cd26bc14f28b609f2aa3a3"'), ('date', 'Tue, 29 May 2012 19:04:14 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"updated_at":"2012-05-29T18:49:47Z","events":["push"],"url":"https://api.github.com/repos/jacquev6/PyGithub/hooks/257993","config":{"url":"http://foobar.com"},"last_response":{"status":"ok","message":"OK","code":200},"active":true,"name":"web","created_at":"2012-05-19T06:01:45Z","id":257993} + diff --git a/lib/github/tests/ReplayData/Hook.testDelete.txt b/lib/github/tests/ReplayData/Hook.testDelete.txt new file mode 100644 index 0000000000..0ca5d08a83 --- /dev/null +++ b/lib/github/tests/ReplayData/Hook.testDelete.txt @@ -0,0 +1,11 @@ +https +DELETE +api.github.com +None +/repos/jacquev6/PyGithub/hooks/257993 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4986'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sat, 19 May 2012 05:09:01 GMT')] + + diff --git a/lib/github/tests/ReplayData/Hook.testEditWithAllParameters.txt b/lib/github/tests/ReplayData/Hook.testEditWithAllParameters.txt new file mode 100644 index 0000000000..bb5045d4e5 --- /dev/null +++ b/lib/github/tests/ReplayData/Hook.testEditWithAllParameters.txt @@ -0,0 +1,44 @@ +https +PATCH +api.github.com +None +/repos/jacquev6/PyGithub/hooks/257993 +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"config": {"url": "http://foobar.com"}, "name": "web", "events": ["fork", "push"]} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4987'), ('content-length', '305'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"43f8b86dbc2f5bbfde20abb9d9142206"'), ('date', 'Sat, 19 May 2012 06:03:18 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"updated_at":"2012-05-19T06:03:18Z","url":"https://api.github.com/repos/jacquev6/PyGithub/hooks/257993","last_response":{"status":"unused","message":null,"code":null},"config":{"url":"http://foobar.com"},"active":true,"events":["fork","push"],"name":"web","created_at":"2012-05-19T06:01:45Z","id":257993} + +https +PATCH +api.github.com +None +/repos/jacquev6/PyGithub/hooks/257993 +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"config": {"url": "http://foobar.com"}, "name": "web", "add_events": ["push"]} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4986'), ('content-length', '305'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"f372cc9359ed1d3b3fb8d484a09b36d7"'), ('date', 'Sat, 19 May 2012 06:03:19 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"updated_at":"2012-05-19T06:03:19Z","url":"https://api.github.com/repos/jacquev6/PyGithub/hooks/257993","last_response":{"status":"unused","message":null,"code":null},"config":{"url":"http://foobar.com"},"active":true,"events":["fork","push"],"name":"web","created_at":"2012-05-19T06:01:45Z","id":257993} + +https +PATCH +api.github.com +None +/repos/jacquev6/PyGithub/hooks/257993 +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"remove_events": ["fork"], "config": {"url": "http://foobar.com"}, "name": "web"} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4985'), ('content-length', '298'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"223ecc83a014738547fd99c826e3f125"'), ('date', 'Sat, 19 May 2012 06:03:19 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"updated_at":"2012-05-19T06:03:19Z","url":"https://api.github.com/repos/jacquev6/PyGithub/hooks/257993","config":{"url":"http://foobar.com"},"active":true,"last_response":{"status":"unused","message":null,"code":null},"events":["push"],"name":"web","created_at":"2012-05-19T06:01:45Z","id":257993} + +https +PATCH +api.github.com +None +/repos/jacquev6/PyGithub/hooks/257993 +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"active": true, "config": {"url": "http://foobar.com"}, "name": "web"} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4984'), ('content-length', '298'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"711cf06c29a923c290e1af74dc3e019d"'), ('date', 'Sat, 19 May 2012 06:03:20 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"updated_at":"2012-05-19T06:03:20Z","url":"https://api.github.com/repos/jacquev6/PyGithub/hooks/257993","last_response":{"status":"unused","message":null,"code":null},"config":{"url":"http://foobar.com"},"active":true,"events":["push"],"name":"web","created_at":"2012-05-19T06:01:45Z","id":257993} + diff --git a/lib/github/tests/ReplayData/Hook.testEditWithMinimalParameters.txt b/lib/github/tests/ReplayData/Hook.testEditWithMinimalParameters.txt new file mode 100644 index 0000000000..4981ee7af2 --- /dev/null +++ b/lib/github/tests/ReplayData/Hook.testEditWithMinimalParameters.txt @@ -0,0 +1,11 @@ +https +PATCH +api.github.com +None +/repos/jacquev6/PyGithub/hooks/257993 +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"config": {"url": "http://foobar.com/hook"}, "name": "web"} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4990'), ('content-length', '303'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"8628a600a78bd5171c9e8d23b1ec22de"'), ('date', 'Sat, 19 May 2012 05:08:16 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"last_response":{"status":"unused","message":null,"code":null},"updated_at":"2012-05-19T05:08:16Z","url":"https://api.github.com/repos/jacquev6/PyGithub/hooks/257993","config":{"url":"http://foobar.com/hook"},"active":true,"events":["push"],"name":"web","created_at":"2012-05-19T05:03:14Z","id":257993} + diff --git a/lib/github/tests/ReplayData/Hook.testTest.txt b/lib/github/tests/ReplayData/Hook.testTest.txt new file mode 100644 index 0000000000..6f6e25494e --- /dev/null +++ b/lib/github/tests/ReplayData/Hook.testTest.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/hooks/257993/tests +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4980'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sat, 19 May 2012 06:04:06 GMT')] + + diff --git a/lib/github/tests/ReplayData/Issue.setUp.txt b/lib/github/tests/ReplayData/Issue.setUp.txt new file mode 100644 index 0000000000..d9f841e576 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue.setUp.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4993'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"9459b6e1e4805aad5e10d13344d6ffbf"'), ('date', 'Sat, 26 May 2012 14:59:39 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"public_repos":11,"type":"User","hireable":false,"disk_usage":17080,"blog":"http://vincent-jacques.net","bio":"","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","total_private_repos":5,"plan":{"private_repos":5,"collaborators":1,"name":"micro","space":614400},"owned_private_repos":5,"company":"Criteo","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","collaborators":0,"public_gists":3,"email":"vincent@vincent-jacques.net","followers":13,"name":"Vincent Jacques","private_gists":5,"created_at":"2010-07-09T06:10:06Z","location":"Paris, France","id":327146,"following":24,"html_url":"https://github.com/jacquev6"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4992'), ('content-length', '1129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"5dc65a168cf4d957347ea04221cd5102"'), ('date', 'Sat, 26 May 2012 14:59:39 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"clone_url":"https://github.com/jacquev6/PyGithub.git","has_downloads":true,"watchers":13,"updated_at":"2012-05-26T11:25:48Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","mirror_url":null,"has_wiki":false,"has_issues":true,"fork":false,"forks":2,"size":412,"private":false,"open_issues":15,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-26T11:25:48Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"git_url":"git://github.com/jacquev6/PyGithub.git","html_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/28 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4991'), ('content-length', '2258'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"071cb2b8bfef81f56b94d7d9397e6aa4"'), ('date', 'Sat, 26 May 2012 14:59:40 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"updated_at":"2012-05-26T14:59:33Z","body":"Body edited by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/28","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/1","number":1,"title":"Version 0.4","due_on":"2012-03-13T07:00:00Z","open_issues":0,"created_at":"2012-03-08T12:22:10Z","state":"closed","description":"","id":93546,"closed_issues":3},"number":28,"closed_by":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"closed_at":"2012-05-26T14:59:33Z","title":"Issue created by PyGithub","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}],"created_at":"2012-05-19T10:38:23Z","state":"closed","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4653757,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/28"} + diff --git a/lib/github/tests/ReplayData/Issue.testAddAndRemoveLabels.txt b/lib/github/tests/ReplayData/Issue.testAddAndRemoveLabels.txt new file mode 100644 index 0000000000..bc62c78b86 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue.testAddAndRemoveLabels.txt @@ -0,0 +1,99 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/labels/Bug +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4992'), ('content-length', '97'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"569c414d87e8ec43ec269a9e28bc2982"'), ('date', 'Sun, 27 May 2012 09:04:01 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"color":"e10c02","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/labels/Question +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4991'), ('content-length', '107'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"b659c8dcc1212c71f826547c3cc7ae99"'), ('date', 'Sun, 27 May 2012 09:04:02 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/28/labels +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4990'), ('content-length', '335'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"c9f9beccb03030beaf7b80927da6fef6"'), ('date', 'Sun, 27 May 2012 09:04:03 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}] + +https +DELETE +api.github.com +None +/repos/jacquev6/PyGithub/issues/28/labels/Bug +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4989'), ('content-length', '237'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"46cc70bad88a09b559a5e67089005105"'), ('date', 'Sun, 27 May 2012 09:04:03 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}] + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/28/labels +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4988'), ('content-length', '237'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"46cc70bad88a09b559a5e67089005105"'), ('date', 'Sun, 27 May 2012 09:04:04 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}] + +https +DELETE +api.github.com +None +/repos/jacquev6/PyGithub/issues/28/labels/Question +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4987'), ('content-length', '129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"5352ae15c8a5a36c6cace63be9367332"'), ('date', 'Sun, 27 May 2012 09:04:04 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"}] + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/28/labels +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4986'), ('content-length', '129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"5352ae15c8a5a36c6cace63be9367332"'), ('date', 'Sun, 27 May 2012 09:04:05 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"}] + +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/issues/28/labels +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +["Bug", "Question"] +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4985'), ('content-length', '335'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d135d74d2ea2159d044676a220d41d3a"'), ('date', 'Sun, 27 May 2012 09:04:06 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"color":"e10c02","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug"},{"color":"444444","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management"},{"color":"02e10c","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question"}] + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/28/labels +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4984'), ('content-length', '335'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"c9f9beccb03030beaf7b80927da6fef6"'), ('date', 'Sun, 27 May 2012 09:04:06 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}] + diff --git a/lib/github/tests/ReplayData/Issue.testAddAndRemoveLabelsWithStringArguments.txt b/lib/github/tests/ReplayData/Issue.testAddAndRemoveLabelsWithStringArguments.txt new file mode 100644 index 0000000000..34bace898b --- /dev/null +++ b/lib/github/tests/ReplayData/Issue.testAddAndRemoveLabelsWithStringArguments.txt @@ -0,0 +1,77 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/28/labels +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4990'), ('content-length', '335'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"c9f9beccb03030beaf7b80927da6fef6"'), ('date', 'Sun, 27 May 2012 09:04:03 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}] + +https +DELETE +api.github.com +None +/repos/jacquev6/PyGithub/issues/28/labels/Bug +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4989'), ('content-length', '237'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"46cc70bad88a09b559a5e67089005105"'), ('date', 'Sun, 27 May 2012 09:04:03 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}] + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/28/labels +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4988'), ('content-length', '237'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"46cc70bad88a09b559a5e67089005105"'), ('date', 'Sun, 27 May 2012 09:04:04 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}] + +https +DELETE +api.github.com +None +/repos/jacquev6/PyGithub/issues/28/labels/Question +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4987'), ('content-length', '129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"5352ae15c8a5a36c6cace63be9367332"'), ('date', 'Sun, 27 May 2012 09:04:04 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"}] + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/28/labels +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4986'), ('content-length', '129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"5352ae15c8a5a36c6cace63be9367332"'), ('date', 'Sun, 27 May 2012 09:04:05 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"}] + +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/issues/28/labels +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +["Bug", "Question"] +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4985'), ('content-length', '335'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d135d74d2ea2159d044676a220d41d3a"'), ('date', 'Sun, 27 May 2012 09:04:06 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"color":"e10c02","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug"},{"color":"444444","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management"},{"color":"02e10c","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question"}] + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/28/labels +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4984'), ('content-length', '335'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"c9f9beccb03030beaf7b80927da6fef6"'), ('date', 'Sun, 27 May 2012 09:04:06 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}] + diff --git a/lib/github/tests/ReplayData/Issue.testAttributes.txt b/lib/github/tests/ReplayData/Issue.testAttributes.txt new file mode 100644 index 0000000000..4b4bbfbe8d --- /dev/null +++ b/lib/github/tests/ReplayData/Issue.testAttributes.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4992'), ('content-length', '1129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"5dc65a168cf4d957347ea04221cd5102"'), ('date', 'Sat, 26 May 2012 14:59:39 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"clone_url":"https://github.com/jacquev6/PyGithub.git","has_downloads":true,"watchers":13,"updated_at":"2012-05-26T11:25:48Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","mirror_url":null,"has_wiki":false,"has_issues":true,"fork":false,"forks":2,"size":412,"private":false,"open_issues":15,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-26T11:25:48Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"git_url":"git://github.com/jacquev6/PyGithub.git","html_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub"} + diff --git a/lib/github/tests/ReplayData/Issue.testCreateComment.txt b/lib/github/tests/ReplayData/Issue.testCreateComment.txt new file mode 100644 index 0000000000..894b75d66b --- /dev/null +++ b/lib/github/tests/ReplayData/Issue.testCreateComment.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/issues/28/comments +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"body": "Comment created by PyGithub"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4996'), ('content-length', '506'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"08cea7c821f6f3378e38921a9e7bc05e"'), ('date', 'Sun, 20 May 2012 11:46:43 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5808311')] +{"updated_at":"2012-05-20T11:46:42Z","body":"Comment created by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5808311","created_at":"2012-05-20T11:46:42Z","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":5808311} + diff --git a/lib/github/tests/ReplayData/Issue.testDeleteAndSetLabels.txt b/lib/github/tests/ReplayData/Issue.testDeleteAndSetLabels.txt new file mode 100644 index 0000000000..9d0ec2a5ad --- /dev/null +++ b/lib/github/tests/ReplayData/Issue.testDeleteAndSetLabels.txt @@ -0,0 +1,77 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/labels/Bug +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4974'), ('content-length', '97'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"fe2e942523eecb156d100829a6347516"'), ('date', 'Sun, 27 May 2012 09:06:37 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/labels/Question +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4973'), ('content-length', '107'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"931e58d337b2290717303141eda89cd7"'), ('date', 'Sun, 27 May 2012 09:06:38 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"color":"02e10c","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/28/labels +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4972'), ('content-length', '335'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d135d74d2ea2159d044676a220d41d3a"'), ('date', 'Sun, 27 May 2012 09:06:39 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"color":"e10c02","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug"},{"color":"444444","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management"},{"color":"02e10c","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question"}] + +https +DELETE +api.github.com +None +/repos/jacquev6/PyGithub/issues/28/labels +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4971'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sun, 27 May 2012 09:06:39 GMT')] + + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/28/labels +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4970'), ('content-length', '2'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d751713988987e9331980363e24189ce"'), ('date', 'Sun, 27 May 2012 09:06:40 GMT'), ('content-type', 'application/json; charset=utf-8')] +[] + +https +PUT +api.github.com +None +/repos/jacquev6/PyGithub/issues/28/labels +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +["Bug", "Question"] +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4969'), ('content-length', '207'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"1a56634d9c1050a88592ff55ed8adc62"'), ('date', 'Sun, 27 May 2012 09:06:40 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}] + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/28/labels +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4968'), ('content-length', '207'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"1a56634d9c1050a88592ff55ed8adc62"'), ('date', 'Sun, 27 May 2012 09:06:41 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}] + diff --git a/lib/github/tests/ReplayData/Issue.testDeleteAndSetLabelsWithStringArguments.txt b/lib/github/tests/ReplayData/Issue.testDeleteAndSetLabelsWithStringArguments.txt new file mode 100755 index 0000000000..f020144695 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue.testDeleteAndSetLabelsWithStringArguments.txt @@ -0,0 +1,55 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/28/labels +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4972'), ('content-length', '335'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d135d74d2ea2159d044676a220d41d3a"'), ('date', 'Sun, 27 May 2012 09:06:39 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"color":"e10c02","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug"},{"color":"444444","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management"},{"color":"02e10c","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question"}] + +https +DELETE +api.github.com +None +/repos/jacquev6/PyGithub/issues/28/labels +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4971'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sun, 27 May 2012 09:06:39 GMT')] + + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/28/labels +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4970'), ('content-length', '2'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d751713988987e9331980363e24189ce"'), ('date', 'Sun, 27 May 2012 09:06:40 GMT'), ('content-type', 'application/json; charset=utf-8')] +[] + +https +PUT +api.github.com +None +/repos/jacquev6/PyGithub/issues/28/labels +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +["Bug", "Question"] +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4969'), ('content-length', '207'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"1a56634d9c1050a88592ff55ed8adc62"'), ('date', 'Sun, 27 May 2012 09:06:40 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}] + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/28/labels +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4968'), ('content-length', '207'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"1a56634d9c1050a88592ff55ed8adc62"'), ('date', 'Sun, 27 May 2012 09:06:41 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}] + diff --git a/lib/github/tests/ReplayData/Issue.testEditResetAssignee.txt b/lib/github/tests/ReplayData/Issue.testEditResetAssignee.txt new file mode 100644 index 0000000000..48825f6739 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue.testEditResetAssignee.txt @@ -0,0 +1,11 @@ +https +PATCH +api.github.com +None +/repos/jacquev6/PyGithub/issues/28 +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"assignee": ""} +200 +[('status', '200 OK'), ('content-length', '1853'), ('x-ratelimit-limit', '5000'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-remaining', '4980'), ('server', 'nginx'), ('connection', 'keep-alive'), ('etag', '"6947b498e9fd9f792130d6c80982b949"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Tue, 11 Sep 2012 18:47:24 GMT'), ('x-github-media-type', 'github.beta; format=json'), ('content-type', 'application/json; charset=utf-8')] +{"body":"Body edited by PyGithub","closed_at":"2012-05-26T14:59:33Z","milestone":{"due_on":"2012-03-13T07:00:00Z","description":"","created_at":"2012-03-08T12:22:10Z","closed_issues":3,"title":"Version 0.4","open_issues":0,"state":"closed","creator":{"login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146},"number":1,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/1","id":93546},"labels":[{"color":"e10c02","name":"Bug","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug"},{"color":"02e10c","name":"Question","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question"}],"user":{"login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146},"pull_request":{"html_url":null,"patch_url":null,"diff_url":null},"created_at":"2012-05-19T10:38:23Z","comments":0,"closed_by":{"login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146},"title":"Issue created by PyGithub","html_url":"https://github.com/jacquev6/PyGithub/issues/28","assignee":null,"state":"closed","number":28,"updated_at":"2012-09-11T18:47:24Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/28","id":4653757} + diff --git a/lib/github/tests/ReplayData/Issue.testEditResetMilestone.txt b/lib/github/tests/ReplayData/Issue.testEditResetMilestone.txt new file mode 100644 index 0000000000..f89550a4c9 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue.testEditResetMilestone.txt @@ -0,0 +1,11 @@ +https +PATCH +api.github.com +None +/repos/jacquev6/PyGithub/issues/28 +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"milestone": ""} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4976'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('content-length', '1296'), ('server', 'nginx'), ('connection', 'keep-alive'), ('etag', '"71423b9f379e4978b85005a6dc6820ed"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Tue, 11 Sep 2012 18:48:34 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"body":"Body edited by PyGithub","closed_at":"2012-05-26T14:59:33Z","milestone":null,"labels":[{"color":"e10c02","name":"Bug","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug"},{"color":"02e10c","name":"Question","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question"}],"user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146},"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"created_at":"2012-05-19T10:38:23Z","comments":0,"closed_by":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146},"title":"Issue created by PyGithub","assignee":null,"state":"closed","number":28,"html_url":"https://github.com/jacquev6/PyGithub/issues/28","updated_at":"2012-09-11T18:48:34Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/28","id":4653757} + diff --git a/lib/github/tests/ReplayData/Issue.testEditWithAllParameters.txt b/lib/github/tests/ReplayData/Issue.testEditWithAllParameters.txt new file mode 100644 index 0000000000..a194f2fd40 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue.testEditWithAllParameters.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/users/jacquev6 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4999'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"62c7a8cbbce2a245818e460643df01ea"'), ('date', 'Fri, 01 Jun 2012 18:53:23 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"public_gists":3,"type":"User","total_private_repos":5,"company":"Criteo","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","private_gists":5,"collaborators":0,"email":"vincent@vincent-jacques.net","owned_private_repos":5,"public_repos":10,"created_at":"2010-07-09T06:10:06Z","location":"Paris, France","url":"https://api.github.com/users/jacquev6","following":24,"blog":"http://vincent-jacques.net","disk_usage":16900,"name":"Vincent Jacques","hireable":false,"followers":13,"html_url":"https://github.com/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"plan":{"collaborators":1,"private_repos":5,"space":614400,"name":"micro"},"bio":""} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/milestones/2 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4996'), ('content-length', '899'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"3a7652875cbbfe2a93b7307ab7a3deac"'), ('date', 'Fri, 01 Jun 2012 18:53:25 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"title":"Version 1.0: coherent public interface","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"closed_issues":13,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","due_on":"2012-06-04T07:00:00Z","open_issues":6,"number":2,"id":93547} + +https +PATCH +api.github.com +None +/repos/jacquev6/PyGithub/issues/28 +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"body": "Body edited by PyGithub", "title": "Title edited by PyGithub", "labels": ["Bug"], "assignee": "jacquev6", "assignees": ["assigned1", "assigned2"], "state": "open", "milestone": 2} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4992'), ('content-length', '2034'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"98bbbf2b2187bf5cdd9aead53ecc2b97"'), ('date', 'Sat, 19 May 2012 10:42:26 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"updated_at":"2012-05-19T10:42:25Z","body":"Body edited by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/28","comments":0,"number":28,"title":"Title edited by PyGithub","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"closed_at":null,"labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"}],"closed_by":null,"html_url":"https://github.com/jacquev6/PyGithub/issues/28","created_at":"2012-05-19T10:38:23Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":4653757,"milestone":{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","due_on":null,"closed_issues":1,"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"number":2,"open_issues":11,"title":"Version 1.0: coherent public interface","created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547}} + diff --git a/lib/github/tests/ReplayData/Issue.testEditWithoutParameters.txt b/lib/github/tests/ReplayData/Issue.testEditWithoutParameters.txt new file mode 100644 index 0000000000..baef093e07 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue.testEditWithoutParameters.txt @@ -0,0 +1,11 @@ +https +PATCH +api.github.com +None +/repos/jacquev6/PyGithub/issues/28 +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4996'), ('content-length', '748'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"771af112ee4f9ad5858f5c9b5141b319"'), ('date', 'Sat, 19 May 2012 10:41:03 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"assignee":null,"updated_at":"2012-05-19T10:38:23Z","body":null,"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/28","comments":0,"number":28,"title":"Issue created by PyGithub","pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"closed_at":null,"labels":[],"closed_by":null,"html_url":"https://github.com/jacquev6/PyGithub/issues/28","created_at":"2012-05-19T10:38:23Z","state":"open","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":4653757,"milestone":null} + diff --git a/lib/github/tests/ReplayData/Issue.testGetComments.txt b/lib/github/tests/ReplayData/Issue.testGetComments.txt new file mode 100644 index 0000000000..f23b545e01 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue.testGetComments.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/28/comments +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4984'), ('content-length', '1820'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"bab5fb77d873847d153979f7fcd7e0f1"'), ('date', 'Sat, 26 May 2012 09:43:03 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"updated_at":"2012-05-01T22:03:59Z","body":"Thank you for the suggestion. It's somehow related to https://github.com/jacquev6/PyGithub/issues/6, even if I have not described it in details.\r\n\r\nI'm currently doing a very deep rewrite, which will lead to much more readable stack traces in case of exceptions, and I will include more details about the error. I may also be able to detect type errors *before* sending the request to github.\r\n\r\nBy the way, I'm very glad to hear that you have solved a real-life use case using PyGithub :-)","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5449237","id":5449237,"created_at":"2012-05-01T22:03:59Z"},{"user":{"gravatar_id":"b58d0f1ea06b8d5de5f02c53f747ac03","avatar_url":"https://secure.gravatar.com/avatar/b58d0f1ea06b8d5de5f02c53f747ac03?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/roskakori","login":"roskakori","id":328726},"updated_at":"2012-05-04T19:23:57Z","body":"Good to hear you are already working on this in #6, so I suppose this can be tagged as duplicate and be closed.\r\n\r\nBTW, I cleaned up my script to convert Trac tickets to Github issues and uploaded it to PyPI: http://pypi.python.org/pypi/tratihubis/. It seems that at least some people find it useful, so hopefully it helps to popularize PyGithub a little.","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5518272","id":5518272,"created_at":"2012-05-04T19:23:57Z"}] + diff --git a/lib/github/tests/ReplayData/Issue.testGetCommentsSince.txt b/lib/github/tests/ReplayData/Issue.testGetCommentsSince.txt new file mode 100644 index 0000000000..b665ea73f8 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue.testGetCommentsSince.txt @@ -0,0 +1,10 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/28/comments?since=2012-05-26T13%3A59%3A33Z +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4984'), ('content-length', '1820'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"bab5fb77d873847d153979f7fcd7e0f1"'), ('date', 'Sat, 26 May 2012 09:43:03 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"updated_at":"2012-05-01T22:03:59Z","body":"Thank you for the suggestion. It's somehow related to https://github.com/jacquev6/PyGithub/issues/6, even if I have not described it in details.\r\n\r\nI'm currently doing a very deep rewrite, which will lead to much more readable stack traces in case of exceptions, and I will include more details about the error. I may also be able to detect type errors *before* sending the request to github.\r\n\r\nBy the way, I'm very glad to hear that you have solved a real-life use case using PyGithub :-)","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5449237","id":5449237,"created_at":"2012-05-01T22:03:59Z"},{"user":{"gravatar_id":"b58d0f1ea06b8d5de5f02c53f747ac03","avatar_url":"https://secure.gravatar.com/avatar/b58d0f1ea06b8d5de5f02c53f747ac03?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/roskakori","login":"roskakori","id":328726},"updated_at":"2012-05-04T19:23:57Z","body":"Good to hear you are already working on this in #6, so I suppose this can be tagged as duplicate and be closed.\r\n\r\nBTW, I cleaned up my script to convert Trac tickets to Github issues and uploaded it to PyPI: http://pypi.python.org/pypi/tratihubis/. It seems that at least some people find it useful, so hopefully it helps to popularize PyGithub a little.","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5518272","id":5518272,"created_at":"2012-05-04T19:23:57Z"}] diff --git a/lib/github/tests/ReplayData/Issue.testGetEvents.txt b/lib/github/tests/ReplayData/Issue.testGetEvents.txt new file mode 100644 index 0000000000..e3e27f2c62 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue.testGetEvents.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/28/events +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4967'), ('content-length', '945'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"c22776de31a71795b5374ee3c61f51bd"'), ('date', 'Sun, 20 May 2012 12:02:39 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/15819975","commit_id":null,"created_at":"2012-05-19T10:38:23Z","event":"subscribed","id":15819975,"actor":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/15820048","commit_id":null,"created_at":"2012-05-19T10:42:25Z","event":"assigned","id":15820048,"actor":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146}}] + diff --git a/lib/github/tests/ReplayData/Issue.testGetLabels.txt b/lib/github/tests/ReplayData/Issue.testGetLabels.txt new file mode 100644 index 0000000000..054f4c68d2 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue.testGetLabels.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/28/labels +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4996'), ('content-length', '335'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"c9f9beccb03030beaf7b80927da6fef6"'), ('date', 'Sun, 27 May 2012 08:56:31 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}] + diff --git a/lib/github/tests/ReplayData/Issue131.setUp.txt b/lib/github/tests/ReplayData/Issue131.setUp.txt new file mode 100644 index 0000000000..e8e002ef26 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue131.setUp.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/users/openmicroscopy +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '880'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4970'), ('server', 'GitHub.com'), ('last-modified', 'Wed, 23 Jan 2013 08:05:19 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"27fbbede10fb63fbf5865a0ebfe59d0c"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Sun, 03 Feb 2013 16:46:08 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"Organization","company":null,"url":"https://api.github.com/orgs/openmicroscopy","events_url":"https://api.github.com/orgs/openmicroscopy/events","login":"openmicroscopy","public_gists":0,"updated_at":"2013-01-23T08:05:19Z","avatar_url":"https://secure.gravatar.com/avatar/7424190904f55023bd16416af0fd799b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","blog":"http://www.openmicroscopy.org/","html_url":"https://github.com/openmicroscopy","followers":0,"following":0,"created_at":"2011-08-12T10:59:08Z","members_url":"https://api.github.com/orgs/openmicroscopy/members{/member}","public_repos":9,"location":null,"name":"Open Microscopy Environment","public_members_url":"https://api.github.com/orgs/openmicroscopy/public_members{/member}","id":975861,"email":null,"repos_url":"https://api.github.com/orgs/openmicroscopy/repos"} + +https +GET +api.github.com +None +/repos/openmicroscopy/ome-documentation +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '6339'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4969'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 01 Feb 2013 11:04:39 GMT'), ('connection', 'keep-alive'), ('etag', '"4515ca61239f4659ce223447eca194ec"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Sun, 03 Feb 2013 16:46:09 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"id":3198415,"fork":false,"statuses_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/statuses/{sha}","forks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/forks","created_at":"2012-01-17T10:20:53Z","contributors_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contributors","milestones_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/milestones{/number}","branches_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/branches{/branch}","permissions":{"push":false,"pull":true,"admin":false},"watchers_count":9,"collaborators_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/collaborators{/collaborator}","contents_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contents/{+path}","has_wiki":true,"mirror_url":null,"trees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/trees{/sha}","language":"Python","description":"Sphinx-based documentation for the Open Microscopy Environment ","clone_url":"https://github.com/openmicroscopy/ome-documentation.git","watchers":9,"assignees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/assignees{/user}","tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/tags{/tag}","events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/events","has_issues":true,"git_url":"git://github.com/openmicroscopy/ome-documentation.git","stargazers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/stargazers","updated_at":"2013-02-01T11:04:39Z","open_issues":3,"master_branch":"develop","keys_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/keys{/key_id}","git_commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/commits{/sha}","downloads_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/downloads","homepage":"http://openmicroscopy.org","git_refs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/refs{/sha}","languages_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/languages","network_count":19,"issue_events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/events{/number}","issue_comment_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/comments/{number}","issues_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues{/number}","pulls_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls{/number}","has_downloads":true,"pushed_at":"2013-02-01T11:04:38Z","private":false,"subscription_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscription","url":"https://api.github.com/repos/openmicroscopy/ome-documentation","git_tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/tags{/sha}","forks":19,"name":"ome-documentation","hooks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/hooks","forks_count":19,"commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/commits{/sha}","html_url":"https://github.com/openmicroscopy/ome-documentation","size":488,"archive_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/{archive_format}{/ref}","subscribers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscribers","blobs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/blobs{/sha}","notifications_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/notifications{?since,all,participating}","svn_url":"https://github.com/openmicroscopy/ome-documentation","default_branch":"develop","compare_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/compare/{base}...{head}","open_issues_count":3,"teams_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/teams","organization":{"type":"Organization","events_url":"https://api.github.com/users/openmicroscopy/events{/privacy}","url":"https://api.github.com/users/openmicroscopy","login":"openmicroscopy","received_events_url":"https://api.github.com/users/openmicroscopy/received_events","organizations_url":"https://api.github.com/users/openmicroscopy/orgs","gists_url":"https://api.github.com/users/openmicroscopy/gists{/gist_id}","starred_url":"https://api.github.com/users/openmicroscopy/starred{/owner}{/repo}","gravatar_id":"7424190904f55023bd16416af0fd799b","repos_url":"https://api.github.com/users/openmicroscopy/repos","followers_url":"https://api.github.com/users/openmicroscopy/followers","id":975861,"subscriptions_url":"https://api.github.com/users/openmicroscopy/subscriptions","following_url":"https://api.github.com/users/openmicroscopy/following","avatar_url":"https://secure.gravatar.com/avatar/7424190904f55023bd16416af0fd799b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png"},"merges_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/merges","labels_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/labels{/name}","ssh_url":"git@github.com:openmicroscopy/ome-documentation.git","full_name":"openmicroscopy/ome-documentation","owner":{"type":"Organization","events_url":"https://api.github.com/users/openmicroscopy/events{/privacy}","url":"https://api.github.com/users/openmicroscopy","login":"openmicroscopy","received_events_url":"https://api.github.com/users/openmicroscopy/received_events","organizations_url":"https://api.github.com/users/openmicroscopy/orgs","gists_url":"https://api.github.com/users/openmicroscopy/gists{/gist_id}","starred_url":"https://api.github.com/users/openmicroscopy/starred{/owner}{/repo}","gravatar_id":"7424190904f55023bd16416af0fd799b","repos_url":"https://api.github.com/users/openmicroscopy/repos","followers_url":"https://api.github.com/users/openmicroscopy/followers","id":975861,"subscriptions_url":"https://api.github.com/users/openmicroscopy/subscriptions","following_url":"https://api.github.com/users/openmicroscopy/following","avatar_url":"https://secure.gravatar.com/avatar/7424190904f55023bd16416af0fd799b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png"},"comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/comments{/number}"} + diff --git a/lib/github/tests/ReplayData/Issue131.testGetPullWithOrgHeadUser.txt b/lib/github/tests/ReplayData/Issue131.testGetPullWithOrgHeadUser.txt new file mode 100644 index 0000000000..57cb3721e8 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue131.testGetPullWithOrgHeadUser.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/openmicroscopy/ome-documentation/pulls/204 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '16076'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4971'), ('server', 'GitHub.com'), ('last-modified', 'Thu, 31 Jan 2013 16:47:37 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"90a545a2bec87c31fff795c572a21ade"'), ('cache-control', 'private, s-maxage=60, max-age=60'), ('date', 'Sun, 03 Feb 2013 16:46:06 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"deletions":6,"title":"Add note about libjpeg for PIL","state":"closed","number":204,"url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/204","head":{"user":{"type":"Organization","url":"https://api.github.com/users/imcf","avatar_url":"https://secure.gravatar.com/avatar/2e1c3dfd6e44c98d66556f9e454e7b99?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","login":"imcf","events_url":"https://api.github.com/users/imcf/events{/privacy}","organizations_url":"https://api.github.com/users/imcf/orgs","starred_url":"https://api.github.com/users/imcf/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/imcf/gists{/gist_id}","gravatar_id":"2e1c3dfd6e44c98d66556f9e454e7b99","repos_url":"https://api.github.com/users/imcf/repos","followers_url":"https://api.github.com/users/imcf/followers","id":2847663,"received_events_url":"https://api.github.com/users/imcf/received_events","subscriptions_url":"https://api.github.com/users/imcf/subscriptions","following_url":"https://api.github.com/users/imcf/following"},"label":"imcf:develop","repo":{"forks":0,"watchers_count":0,"compare_url":"https://api.github.com/repos/imcf/ome-documentation/compare/{base}...{head}","languages_url":"https://api.github.com/repos/imcf/ome-documentation/languages","git_refs_url":"https://api.github.com/repos/imcf/ome-documentation/git/refs{/sha}","url":"https://api.github.com/repos/imcf/ome-documentation","has_issues":false,"issues_url":"https://api.github.com/repos/imcf/ome-documentation/issues{/number}","contents_url":"https://api.github.com/repos/imcf/ome-documentation/contents/{+path}","commits_url":"https://api.github.com/repos/imcf/ome-documentation/commits{/sha}","issue_events_url":"https://api.github.com/repos/imcf/ome-documentation/issues/events{/number}","owner":{"type":"Organization","url":"https://api.github.com/users/imcf","avatar_url":"https://secure.gravatar.com/avatar/2e1c3dfd6e44c98d66556f9e454e7b99?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","login":"imcf","events_url":"https://api.github.com/users/imcf/events{/privacy}","organizations_url":"https://api.github.com/users/imcf/orgs","starred_url":"https://api.github.com/users/imcf/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/imcf/gists{/gist_id}","gravatar_id":"2e1c3dfd6e44c98d66556f9e454e7b99","repos_url":"https://api.github.com/users/imcf/repos","followers_url":"https://api.github.com/users/imcf/followers","id":2847663,"received_events_url":"https://api.github.com/users/imcf/received_events","subscriptions_url":"https://api.github.com/users/imcf/subscriptions","following_url":"https://api.github.com/users/imcf/following"},"default_branch":"develop","open_issues":0,"updated_at":"2013-01-14T15:20:58Z","svn_url":"https://github.com/imcf/ome-documentation","mirror_url":null,"milestones_url":"https://api.github.com/repos/imcf/ome-documentation/milestones{/number}","stargazers_url":"https://api.github.com/repos/imcf/ome-documentation/stargazers","trees_url":"https://api.github.com/repos/imcf/ome-documentation/git/trees{/sha}","events_url":"https://api.github.com/repos/imcf/ome-documentation/events","forks_url":"https://api.github.com/repos/imcf/ome-documentation/forks","notifications_url":"https://api.github.com/repos/imcf/ome-documentation/notifications{?since,all,participating}","merges_url":"https://api.github.com/repos/imcf/ome-documentation/merges","contributors_url":"https://api.github.com/repos/imcf/ome-documentation/contributors","assignees_url":"https://api.github.com/repos/imcf/ome-documentation/assignees{/user}","full_name":"imcf/ome-documentation","ssh_url":"git@github.com:imcf/ome-documentation.git","issue_comment_url":"https://api.github.com/repos/imcf/ome-documentation/issues/comments/{number}","statuses_url":"https://api.github.com/repos/imcf/ome-documentation/statuses/{sha}","homepage":"http://openmicroscopy.org","archive_url":"https://api.github.com/repos/imcf/ome-documentation/{archive_format}{/ref}","branches_url":"https://api.github.com/repos/imcf/ome-documentation/branches{/branch}","watchers":0,"created_at":"2013-01-10T15:32:44Z","has_downloads":true,"open_issues_count":0,"labels_url":"https://api.github.com/repos/imcf/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/imcf/ome-documentation/downloads","comments_url":"https://api.github.com/repos/imcf/ome-documentation/comments{/number}","subscribers_url":"https://api.github.com/repos/imcf/ome-documentation/subscribers","collaborators_url":"https://api.github.com/repos/imcf/ome-documentation/collaborators{/collaborator}","keys_url":"https://api.github.com/repos/imcf/ome-documentation/keys{/key_id}","size":128,"pulls_url":"https://api.github.com/repos/imcf/ome-documentation/pulls{/number}","blobs_url":"https://api.github.com/repos/imcf/ome-documentation/git/blobs{/sha}","tags_url":"https://api.github.com/repos/imcf/ome-documentation/tags{/tag}","fork":true,"html_url":"https://github.com/imcf/ome-documentation","clone_url":"https://github.com/imcf/ome-documentation.git","subscription_url":"https://api.github.com/repos/imcf/ome-documentation/subscription","teams_url":"https://api.github.com/repos/imcf/ome-documentation/teams","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","git_url":"git://github.com/imcf/ome-documentation.git","language":"Python","git_tags_url":"https://api.github.com/repos/imcf/ome-documentation/git/tags{/sha}","private":false,"id":7543421,"master_branch":"develop","pushed_at":"2013-01-10T16:04:23Z","has_wiki":true,"forks_count":0,"git_commits_url":"https://api.github.com/repos/imcf/ome-documentation/git/commits{/sha}","hooks_url":"https://api.github.com/repos/imcf/ome-documentation/hooks"},"sha":"e37990a177fbb47a481663e79015d1862d84e20c","ref":"develop"},"commits_url":"https://github.com/openmicroscopy/ome-documentation/pull/204/commits","_links":{"comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/204/comments"},"issue":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/204"},"html":{"href":"https://github.com/openmicroscopy/ome-documentation/pull/204"},"self":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/204"},"review_comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/204/comments"}},"assignee":null,"updated_at":"2013-01-14T15:20:58Z","mergeable_state":"unknown","comments":3,"commits":1,"changed_files":1,"closed_at":"2013-01-14T15:20:58Z","user":{"type":"User","url":"https://api.github.com/users/ehrenfeu","avatar_url":"https://secure.gravatar.com/avatar/d78ee38089403f67735ddbdc80b69745?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"ehrenfeu","events_url":"https://api.github.com/users/ehrenfeu/events{/privacy}","organizations_url":"https://api.github.com/users/ehrenfeu/orgs","starred_url":"https://api.github.com/users/ehrenfeu/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/ehrenfeu/gists{/gist_id}","gravatar_id":"d78ee38089403f67735ddbdc80b69745","repos_url":"https://api.github.com/users/ehrenfeu/repos","followers_url":"https://api.github.com/users/ehrenfeu/followers","id":697157,"received_events_url":"https://api.github.com/users/ehrenfeu/received_events","subscriptions_url":"https://api.github.com/users/ehrenfeu/subscriptions","following_url":"https://api.github.com/users/ehrenfeu/following"},"issue_url":"https://github.com/openmicroscopy/ome-documentation/issues/204","additions":8,"merged_at":"2013-01-14T15:20:58Z","review_comments":0,"comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/204/comments","merge_commit_sha":"d6d517c48187befdfdd1dc6784542d0976433ddd","created_at":"2013-01-10T16:20:56Z","diff_url":"https://github.com/openmicroscopy/ome-documentation/pull/204.diff","html_url":"https://github.com/openmicroscopy/ome-documentation/pull/204","review_comments_url":"https://github.com/openmicroscopy/ome-documentation/pull/204/comments","merged_by":{"type":"User","url":"https://api.github.com/users/joshmoore","avatar_url":"https://secure.gravatar.com/avatar/b9d1630a90131545c699075f73da092b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"joshmoore","events_url":"https://api.github.com/users/joshmoore/events{/privacy}","organizations_url":"https://api.github.com/users/joshmoore/orgs","starred_url":"https://api.github.com/users/joshmoore/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/joshmoore/gists{/gist_id}","gravatar_id":"b9d1630a90131545c699075f73da092b","repos_url":"https://api.github.com/users/joshmoore/repos","followers_url":"https://api.github.com/users/joshmoore/followers","id":88113,"received_events_url":"https://api.github.com/users/joshmoore/received_events","subscriptions_url":"https://api.github.com/users/joshmoore/subscriptions","following_url":"https://api.github.com/users/joshmoore/following"},"milestone":null,"body":"If `libjpeg` is not installed while building PIL the JPEG support for some of the python scripts is missing (e.g. the \"Split View\" from the Figure scripts will fail).\r\n\r\nThe windows documentation probably doesn't need to be updated since PIL is provided as a binary distribution for that platform (and hopefully comes with JPEG support).","id":3623392,"merged":true,"mergeable":null,"base":{"user":{"type":"Organization","url":"https://api.github.com/users/openmicroscopy","avatar_url":"https://secure.gravatar.com/avatar/7424190904f55023bd16416af0fd799b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","login":"openmicroscopy","events_url":"https://api.github.com/users/openmicroscopy/events{/privacy}","organizations_url":"https://api.github.com/users/openmicroscopy/orgs","starred_url":"https://api.github.com/users/openmicroscopy/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/openmicroscopy/gists{/gist_id}","gravatar_id":"7424190904f55023bd16416af0fd799b","repos_url":"https://api.github.com/users/openmicroscopy/repos","followers_url":"https://api.github.com/users/openmicroscopy/followers","id":975861,"received_events_url":"https://api.github.com/users/openmicroscopy/received_events","subscriptions_url":"https://api.github.com/users/openmicroscopy/subscriptions","following_url":"https://api.github.com/users/openmicroscopy/following"},"label":"openmicroscopy:develop","repo":{"forks":19,"watchers_count":9,"compare_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/compare/{base}...{head}","languages_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/languages","git_refs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/refs{/sha}","url":"https://api.github.com/repos/openmicroscopy/ome-documentation","has_issues":true,"issues_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues{/number}","contents_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contents/{+path}","commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/commits{/sha}","issue_events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/events{/number}","owner":{"type":"Organization","url":"https://api.github.com/users/openmicroscopy","avatar_url":"https://secure.gravatar.com/avatar/7424190904f55023bd16416af0fd799b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","login":"openmicroscopy","events_url":"https://api.github.com/users/openmicroscopy/events{/privacy}","organizations_url":"https://api.github.com/users/openmicroscopy/orgs","starred_url":"https://api.github.com/users/openmicroscopy/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/openmicroscopy/gists{/gist_id}","gravatar_id":"7424190904f55023bd16416af0fd799b","repos_url":"https://api.github.com/users/openmicroscopy/repos","followers_url":"https://api.github.com/users/openmicroscopy/followers","id":975861,"received_events_url":"https://api.github.com/users/openmicroscopy/received_events","subscriptions_url":"https://api.github.com/users/openmicroscopy/subscriptions","following_url":"https://api.github.com/users/openmicroscopy/following"},"default_branch":"develop","open_issues":3,"updated_at":"2013-02-01T11:04:39Z","svn_url":"https://github.com/openmicroscopy/ome-documentation","mirror_url":null,"milestones_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/milestones{/number}","stargazers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/stargazers","trees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/trees{/sha}","events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/events","forks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/forks","notifications_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/notifications{?since,all,participating}","merges_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/merges","contributors_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contributors","assignees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/assignees{/user}","full_name":"openmicroscopy/ome-documentation","ssh_url":"git@github.com:openmicroscopy/ome-documentation.git","issue_comment_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/comments/{number}","statuses_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/statuses/{sha}","homepage":"http://openmicroscopy.org","archive_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/{archive_format}{/ref}","branches_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/branches{/branch}","watchers":9,"created_at":"2012-01-17T10:20:53Z","has_downloads":true,"open_issues_count":3,"labels_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/downloads","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/comments{/number}","subscribers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscribers","collaborators_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/collaborators{/collaborator}","keys_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/keys{/key_id}","size":488,"pulls_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls{/number}","blobs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/blobs{/sha}","tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/tags{/tag}","fork":false,"html_url":"https://github.com/openmicroscopy/ome-documentation","clone_url":"https://github.com/openmicroscopy/ome-documentation.git","subscription_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscription","teams_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/teams","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","git_url":"git://github.com/openmicroscopy/ome-documentation.git","language":"Python","git_tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/tags{/sha}","private":false,"id":3198415,"master_branch":"develop","pushed_at":"2013-02-01T11:04:38Z","has_wiki":true,"forks_count":19,"git_commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/commits{/sha}","hooks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/hooks"},"sha":"66b416256fd3333771b9722582e2801df96c4a99","ref":"develop"},"review_comment_url":"/repos/openmicroscopy/ome-documentation/pulls/comments/{number}","patch_url":"https://github.com/openmicroscopy/ome-documentation/pull/204.patch"} + diff --git a/lib/github/tests/ReplayData/Issue131.testGetPullsWithOrgHeadUser.txt b/lib/github/tests/ReplayData/Issue131.testGetPullsWithOrgHeadUser.txt new file mode 100644 index 0000000000..d2036e7b0b --- /dev/null +++ b/lib/github/tests/ReplayData/Issue131.testGetPullsWithOrgHeadUser.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/openmicroscopy/ome-documentation/pulls?state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4968'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '424635'), ('server', 'GitHub.com'), ('last-modified', 'Sat, 02 Feb 2013 21:21:49 GMT'), ('connection', 'keep-alive'), ('etag', '"a91db68d9aa99fb306c666e1363ab50c"'), ('link', '; rel="next", ; rel="last"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Sun, 03 Feb 2013 16:46:11 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"_links":{"comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/234/comments"},"issue":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/234"},"html":{"href":"https://github.com/openmicroscopy/ome-documentation/pull/234"},"self":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/234"},"review_comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/234/comments"}},"title":"Homebrew installation command","state":"closed","number":234,"url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/234","head":{"user":{"type":"User","url":"https://api.github.com/users/sbesson","received_events_url":"https://api.github.com/users/sbesson/received_events","login":"sbesson","events_url":"https://api.github.com/users/sbesson/events{/privacy}","organizations_url":"https://api.github.com/users/sbesson/orgs","avatar_url":"https://secure.gravatar.com/avatar/8ea0fde1295027db9d37e419ac10cbf4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/sbesson/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/sbesson/gists{/gist_id}","gravatar_id":"8ea0fde1295027db9d37e419ac10cbf4","followers_url":"https://api.github.com/users/sbesson/followers","id":1355463,"repos_url":"https://api.github.com/users/sbesson/repos","subscriptions_url":"https://api.github.com/users/sbesson/subscriptions","following_url":"https://api.github.com/users/sbesson/following"},"label":"sbesson:homebrew_install_cmd","repo":{"forks":0,"svn_url":"https://github.com/sbesson/ome-documentation","merges_url":"https://api.github.com/repos/sbesson/ome-documentation/merges","languages_url":"https://api.github.com/repos/sbesson/ome-documentation/languages","assignees_url":"https://api.github.com/repos/sbesson/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/sbesson/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/sbesson/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/sbesson/ome-documentation/statuses/{sha}","owner":{"type":"User","url":"https://api.github.com/users/sbesson","received_events_url":"https://api.github.com/users/sbesson/received_events","login":"sbesson","events_url":"https://api.github.com/users/sbesson/events{/privacy}","organizations_url":"https://api.github.com/users/sbesson/orgs","avatar_url":"https://secure.gravatar.com/avatar/8ea0fde1295027db9d37e419ac10cbf4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/sbesson/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/sbesson/gists{/gist_id}","gravatar_id":"8ea0fde1295027db9d37e419ac10cbf4","followers_url":"https://api.github.com/users/sbesson/followers","id":1355463,"repos_url":"https://api.github.com/users/sbesson/repos","subscriptions_url":"https://api.github.com/users/sbesson/subscriptions","following_url":"https://api.github.com/users/sbesson/following"},"open_issues":0,"updated_at":"2013-02-02T21:21:49Z","milestones_url":"https://api.github.com/repos/sbesson/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/sbesson/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/sbesson/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/sbesson/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/sbesson/ome-documentation/events","notifications_url":"https://api.github.com/repos/sbesson/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/sbesson/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/sbesson/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/sbesson/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/sbesson/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/sbesson/ome-documentation/collaborators{/collaborator}","full_name":"sbesson/ome-documentation","ssh_url":"git@github.com:sbesson/ome-documentation.git","pulls_url":"https://api.github.com/repos/sbesson/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/sbesson/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/sbesson/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":0,"subscription_url":"https://api.github.com/repos/sbesson/ome-documentation/subscription","teams_url":"https://api.github.com/repos/sbesson/ome-documentation/teams","watchers":1,"created_at":"2012-08-22T08:57:59Z","git_url":"git://github.com/sbesson/ome-documentation.git","open_issues_count":0,"labels_url":"https://api.github.com/repos/sbesson/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/sbesson/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/sbesson/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/sbesson/ome-documentation/keys{/key_id}","size":608,"compare_url":"https://api.github.com/repos/sbesson/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/sbesson/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/sbesson/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/sbesson/ome-documentation/hooks","fork":true,"html_url":"https://github.com/sbesson/ome-documentation","master_branch":"dev_4_4","clone_url":"https://github.com/sbesson/ome-documentation.git","watchers_count":1,"git_refs_url":"https://api.github.com/repos/sbesson/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/sbesson/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/sbesson/ome-documentation/issues/events{/number}","private":false,"id":5507021,"default_branch":"dev_4_4","pushed_at":"2013-02-01T15:04:17Z","has_issues":false,"mirror_url":null,"trees_url":"https://api.github.com/repos/sbesson/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/sbesson/ome-documentation/forks"},"sha":"4c2b874e9e20667d610b71454551e0807013f2b4","ref":"homebrew_install_cmd"},"assignee":null,"updated_at":"2013-02-01T11:04:37Z","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/234/comments","commits_url":"https://github.com/openmicroscopy/ome-documentation/pull/234/commits","closed_at":"2013-02-01T11:04:37Z","user":{"type":"User","url":"https://api.github.com/users/sbesson","received_events_url":"https://api.github.com/users/sbesson/received_events","login":"sbesson","events_url":"https://api.github.com/users/sbesson/events{/privacy}","organizations_url":"https://api.github.com/users/sbesson/orgs","avatar_url":"https://secure.gravatar.com/avatar/8ea0fde1295027db9d37e419ac10cbf4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/sbesson/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/sbesson/gists{/gist_id}","gravatar_id":"8ea0fde1295027db9d37e419ac10cbf4","followers_url":"https://api.github.com/users/sbesson/followers","id":1355463,"repos_url":"https://api.github.com/users/sbesson/repos","subscriptions_url":"https://api.github.com/users/sbesson/subscriptions","following_url":"https://api.github.com/users/sbesson/following"},"issue_url":"https://github.com/openmicroscopy/ome-documentation/issues/234","merged_at":"2013-02-01T11:04:37Z","merge_commit_sha":"3e6f47a1eb8615aa62fcfc9766802508c44d094b","created_at":"2013-01-31T09:30:56Z","review_comments_url":"https://github.com/openmicroscopy/ome-documentation/pull/234/comments","patch_url":"https://github.com/openmicroscopy/ome-documentation/pull/234.patch","html_url":"https://github.com/openmicroscopy/ome-documentation/pull/234","review_comment_url":"/repos/openmicroscopy/ome-documentation/pulls/comments/{number}","milestone":null,"body":"Main goal of this PR is to fix the wrong Homebrew installation command (thanks @stick for noticing it) - see commit 4c2b874.\r\n\r\nAdded a number of commits fixing redirected links (see [linkcheck output](http://hudson.openmicroscopy.org.uk/job/OMERO-docs-merge-stable/ws/_build/linkcheck/output.txt) ). Linkcheck should still pass, hyperlinks should be unchanged and the size of output.txt reduced.","diff_url":"https://github.com/openmicroscopy/ome-documentation/pull/234.diff","id":3923290,"base":{"user":null,"label":"openmicroscopy:dev_4_4","repo":{"forks":19,"svn_url":"https://github.com/openmicroscopy/ome-documentation","merges_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/merges","languages_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/languages","assignees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/openmicroscopy/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/statuses/{sha}","owner":{"type":"Organization","url":"https://api.github.com/users/openmicroscopy","received_events_url":"https://api.github.com/users/openmicroscopy/received_events","login":"openmicroscopy","events_url":"https://api.github.com/users/openmicroscopy/events{/privacy}","organizations_url":"https://api.github.com/users/openmicroscopy/orgs","avatar_url":"https://secure.gravatar.com/avatar/7424190904f55023bd16416af0fd799b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","starred_url":"https://api.github.com/users/openmicroscopy/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/openmicroscopy/gists{/gist_id}","gravatar_id":"7424190904f55023bd16416af0fd799b","followers_url":"https://api.github.com/users/openmicroscopy/followers","id":975861,"repos_url":"https://api.github.com/users/openmicroscopy/repos","subscriptions_url":"https://api.github.com/users/openmicroscopy/subscriptions","following_url":"https://api.github.com/users/openmicroscopy/following"},"open_issues":3,"updated_at":"2013-02-01T11:04:39Z","milestones_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/events","notifications_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/collaborators{/collaborator}","full_name":"openmicroscopy/ome-documentation","ssh_url":"git@github.com:openmicroscopy/ome-documentation.git","pulls_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":19,"subscription_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscription","teams_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/teams","watchers":9,"created_at":"2012-01-17T10:20:53Z","git_url":"git://github.com/openmicroscopy/ome-documentation.git","open_issues_count":3,"labels_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/keys{/key_id}","size":488,"compare_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/hooks","fork":false,"html_url":"https://github.com/openmicroscopy/ome-documentation","master_branch":"develop","clone_url":"https://github.com/openmicroscopy/ome-documentation.git","watchers_count":9,"git_refs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/events{/number}","private":false,"id":3198415,"default_branch":"develop","pushed_at":"2013-02-01T11:04:38Z","has_issues":true,"mirror_url":null,"trees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/forks"},"sha":"982b9089c180f4c27c461d7258a8f40036d0721e","ref":"dev_4_4"}},{"_links":{"comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/233/comments"},"issue":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/233"},"html":{"href":"https://github.com/openmicroscopy/ome-documentation/pull/233"},"self":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/233"},"review_comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/233/comments"}},"title":"Virtualjob extlink (rebased onto develop)","state":"closed","number":233,"url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/233","head":{"user":{"type":"User","url":"https://api.github.com/users/sbesson","received_events_url":"https://api.github.com/users/sbesson/received_events","login":"sbesson","events_url":"https://api.github.com/users/sbesson/events{/privacy}","organizations_url":"https://api.github.com/users/sbesson/orgs","avatar_url":"https://secure.gravatar.com/avatar/8ea0fde1295027db9d37e419ac10cbf4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/sbesson/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/sbesson/gists{/gist_id}","gravatar_id":"8ea0fde1295027db9d37e419ac10cbf4","followers_url":"https://api.github.com/users/sbesson/followers","id":1355463,"repos_url":"https://api.github.com/users/sbesson/repos","subscriptions_url":"https://api.github.com/users/sbesson/subscriptions","following_url":"https://api.github.com/users/sbesson/following"},"label":"sbesson:rebased/develop/virtualjob_extlink","repo":{"forks":0,"svn_url":"https://github.com/sbesson/ome-documentation","merges_url":"https://api.github.com/repos/sbesson/ome-documentation/merges","languages_url":"https://api.github.com/repos/sbesson/ome-documentation/languages","assignees_url":"https://api.github.com/repos/sbesson/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/sbesson/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/sbesson/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/sbesson/ome-documentation/statuses/{sha}","owner":{"type":"User","url":"https://api.github.com/users/sbesson","received_events_url":"https://api.github.com/users/sbesson/received_events","login":"sbesson","events_url":"https://api.github.com/users/sbesson/events{/privacy}","organizations_url":"https://api.github.com/users/sbesson/orgs","avatar_url":"https://secure.gravatar.com/avatar/8ea0fde1295027db9d37e419ac10cbf4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/sbesson/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/sbesson/gists{/gist_id}","gravatar_id":"8ea0fde1295027db9d37e419ac10cbf4","followers_url":"https://api.github.com/users/sbesson/followers","id":1355463,"repos_url":"https://api.github.com/users/sbesson/repos","subscriptions_url":"https://api.github.com/users/sbesson/subscriptions","following_url":"https://api.github.com/users/sbesson/following"},"open_issues":0,"updated_at":"2013-02-02T21:21:49Z","milestones_url":"https://api.github.com/repos/sbesson/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/sbesson/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/sbesson/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/sbesson/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/sbesson/ome-documentation/events","notifications_url":"https://api.github.com/repos/sbesson/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/sbesson/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/sbesson/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/sbesson/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/sbesson/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/sbesson/ome-documentation/collaborators{/collaborator}","full_name":"sbesson/ome-documentation","ssh_url":"git@github.com:sbesson/ome-documentation.git","pulls_url":"https://api.github.com/repos/sbesson/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/sbesson/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/sbesson/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":0,"subscription_url":"https://api.github.com/repos/sbesson/ome-documentation/subscription","teams_url":"https://api.github.com/repos/sbesson/ome-documentation/teams","watchers":1,"created_at":"2012-08-22T08:57:59Z","git_url":"git://github.com/sbesson/ome-documentation.git","open_issues_count":0,"labels_url":"https://api.github.com/repos/sbesson/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/sbesson/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/sbesson/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/sbesson/ome-documentation/keys{/key_id}","size":608,"compare_url":"https://api.github.com/repos/sbesson/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/sbesson/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/sbesson/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/sbesson/ome-documentation/hooks","fork":true,"html_url":"https://github.com/sbesson/ome-documentation","master_branch":"dev_4_4","clone_url":"https://github.com/sbesson/ome-documentation.git","watchers_count":1,"git_refs_url":"https://api.github.com/repos/sbesson/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/sbesson/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/sbesson/ome-documentation/issues/events{/number}","private":false,"id":5507021,"default_branch":"dev_4_4","pushed_at":"2013-02-01T15:04:17Z","has_issues":false,"mirror_url":null,"trees_url":"https://api.github.com/repos/sbesson/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/sbesson/ome-documentation/forks"},"sha":"1963ddb2b0e4650ec5859d40103e052e1471b2e1","ref":"rebased/develop/virtualjob_extlink"},"assignee":null,"updated_at":"2013-01-28T20:36:45Z","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/233/comments","commits_url":"https://github.com/openmicroscopy/ome-documentation/pull/233/commits","closed_at":"2013-01-28T20:36:44Z","user":{"type":"User","url":"https://api.github.com/users/sbesson","received_events_url":"https://api.github.com/users/sbesson/received_events","login":"sbesson","events_url":"https://api.github.com/users/sbesson/events{/privacy}","organizations_url":"https://api.github.com/users/sbesson/orgs","avatar_url":"https://secure.gravatar.com/avatar/8ea0fde1295027db9d37e419ac10cbf4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/sbesson/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/sbesson/gists{/gist_id}","gravatar_id":"8ea0fde1295027db9d37e419ac10cbf4","followers_url":"https://api.github.com/users/sbesson/followers","id":1355463,"repos_url":"https://api.github.com/users/sbesson/repos","subscriptions_url":"https://api.github.com/users/sbesson/subscriptions","following_url":"https://api.github.com/users/sbesson/following"},"issue_url":"https://github.com/openmicroscopy/ome-documentation/issues/233","merged_at":"2013-01-28T20:36:44Z","merge_commit_sha":"eb33f32f962ebb8ea76d0b77d90543b8bdf31d84","created_at":"2013-01-25T10:44:40Z","review_comments_url":"https://github.com/openmicroscopy/ome-documentation/pull/233/comments","patch_url":"https://github.com/openmicroscopy/ome-documentation/pull/233.patch","html_url":"https://github.com/openmicroscopy/ome-documentation/pull/233","review_comment_url":"/repos/openmicroscopy/ome-documentation/pulls/comments/{number}","milestone":null,"body":"\n\nThis is the same as gh-229 but rebased onto develop.\n\n----\n\nThis PR should fix the link to the latest succesful `.ova` file in the virtual appliance documentation.\r\n\r\nAt the current HEAD of this branch, I have\r\n```\r\nsbesson:sphinx sebastien$ git grep -E \"\\-trunk\"\r\nREADME.rst:By default, the OMERO job is set to ``OMERO-trunk``. To specify a different \r\nconf.py: jenkins_job = 'OMERO-trunk'\r\ndevelopers/Cpp.txt:- :jenkins:`Windows Server 2003 (32 bit) `\r\ndevelopers/Cpp.txt:- :jenkins:`Linux `\r\ndevelopers/Cpp.txt:- :jenkins:`MacOSX `\r\ndevelopers/continuous-integration.txt: * :term:`OMERO-trunk`\r\ndevelopers/continuous-integration.txt: * :term:`BIOFORMATS-trunk`\r\ndevelopers/continuous-integration.txt: :jenkinsjob:`BIOFORMATS-trunk`\r\ndevelopers/continuous-integration.txt: :jenkinsjob:`OMERO-trunk`\r\ndevelopers/release-process.txt: - See: :jenkins:`job/OMERO-trunk-components`.\r\ndevelopers/release-process.txt:- Rename \"\\*-trunk\" jenkins jobs to \"\\*-\"\r\n```\r\n\r\nAll the `*-trunk` links present in the developers/continuous-integration.txt page are expected. The only leftovers are the `OMERO-trunk-components` links. Once this job is green again and copied on to the stable branch, I will implement the same strategy as the one in this PR and create a `componentsjob` alias.\r\n\r\n/cc @joshmoore, @hflynn\n\n ","diff_url":"https://github.com/openmicroscopy/ome-documentation/pull/233.diff","id":3837341,"base":{"user":null,"label":"openmicroscopy:develop","repo":{"forks":19,"svn_url":"https://github.com/openmicroscopy/ome-documentation","merges_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/merges","languages_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/languages","assignees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/openmicroscopy/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/statuses/{sha}","owner":{"type":"Organization","url":"https://api.github.com/users/openmicroscopy","received_events_url":"https://api.github.com/users/openmicroscopy/received_events","login":"openmicroscopy","events_url":"https://api.github.com/users/openmicroscopy/events{/privacy}","organizations_url":"https://api.github.com/users/openmicroscopy/orgs","avatar_url":"https://secure.gravatar.com/avatar/7424190904f55023bd16416af0fd799b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","starred_url":"https://api.github.com/users/openmicroscopy/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/openmicroscopy/gists{/gist_id}","gravatar_id":"7424190904f55023bd16416af0fd799b","followers_url":"https://api.github.com/users/openmicroscopy/followers","id":975861,"repos_url":"https://api.github.com/users/openmicroscopy/repos","subscriptions_url":"https://api.github.com/users/openmicroscopy/subscriptions","following_url":"https://api.github.com/users/openmicroscopy/following"},"open_issues":3,"updated_at":"2013-02-01T11:04:39Z","milestones_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/events","notifications_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/collaborators{/collaborator}","full_name":"openmicroscopy/ome-documentation","ssh_url":"git@github.com:openmicroscopy/ome-documentation.git","pulls_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":19,"subscription_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscription","teams_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/teams","watchers":9,"created_at":"2012-01-17T10:20:53Z","git_url":"git://github.com/openmicroscopy/ome-documentation.git","open_issues_count":3,"labels_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/keys{/key_id}","size":488,"compare_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/hooks","fork":false,"html_url":"https://github.com/openmicroscopy/ome-documentation","master_branch":"develop","clone_url":"https://github.com/openmicroscopy/ome-documentation.git","watchers_count":9,"git_refs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/events{/number}","private":false,"id":3198415,"default_branch":"develop","pushed_at":"2013-02-01T11:04:38Z","has_issues":true,"mirror_url":null,"trees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/forks"},"sha":"0376ea24dedc227a6ef76da4cb5978c431aadfee","ref":"develop"}},{"_links":{"comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/232/comments"},"issue":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/232"},"html":{"href":"https://github.com/openmicroscopy/ome-documentation/pull/232"},"self":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/232"},"review_comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/232/comments"}},"title":"Remove extra spaces on build system links.","state":"closed","number":232,"url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/232","head":{"user":{"type":"User","url":"https://api.github.com/users/mtbc","received_events_url":"https://api.github.com/users/mtbc/received_events","login":"mtbc","events_url":"https://api.github.com/users/mtbc/events{/privacy}","organizations_url":"https://api.github.com/users/mtbc/orgs","avatar_url":"https://secure.gravatar.com/avatar/dd3abf4ce82fd7321089540d5ff28796?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/mtbc/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/mtbc/gists{/gist_id}","gravatar_id":"dd3abf4ce82fd7321089540d5ff28796","followers_url":"https://api.github.com/users/mtbc/followers","id":2630707,"repos_url":"https://api.github.com/users/mtbc/repos","subscriptions_url":"https://api.github.com/users/mtbc/subscriptions","following_url":"https://api.github.com/users/mtbc/following"},"label":"mtbc:small-typos-dev","repo":{"forks":0,"svn_url":"https://github.com/mtbc/ome-documentation","merges_url":"https://api.github.com/repos/mtbc/ome-documentation/merges","languages_url":"https://api.github.com/repos/mtbc/ome-documentation/languages","assignees_url":"https://api.github.com/repos/mtbc/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/mtbc/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/mtbc/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/mtbc/ome-documentation/statuses/{sha}","owner":{"type":"User","url":"https://api.github.com/users/mtbc","received_events_url":"https://api.github.com/users/mtbc/received_events","login":"mtbc","events_url":"https://api.github.com/users/mtbc/events{/privacy}","organizations_url":"https://api.github.com/users/mtbc/orgs","avatar_url":"https://secure.gravatar.com/avatar/dd3abf4ce82fd7321089540d5ff28796?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/mtbc/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/mtbc/gists{/gist_id}","gravatar_id":"dd3abf4ce82fd7321089540d5ff28796","followers_url":"https://api.github.com/users/mtbc/followers","id":2630707,"repos_url":"https://api.github.com/users/mtbc/repos","subscriptions_url":"https://api.github.com/users/mtbc/subscriptions","following_url":"https://api.github.com/users/mtbc/following"},"open_issues":0,"updated_at":"2013-01-29T21:32:59Z","milestones_url":"https://api.github.com/repos/mtbc/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/mtbc/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/mtbc/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/mtbc/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/mtbc/ome-documentation/events","notifications_url":"https://api.github.com/repos/mtbc/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/mtbc/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/mtbc/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/mtbc/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/mtbc/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/mtbc/ome-documentation/collaborators{/collaborator}","full_name":"mtbc/ome-documentation","ssh_url":"git@github.com:mtbc/ome-documentation.git","pulls_url":"https://api.github.com/repos/mtbc/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/mtbc/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/mtbc/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":0,"subscription_url":"https://api.github.com/repos/mtbc/ome-documentation/subscription","teams_url":"https://api.github.com/repos/mtbc/ome-documentation/teams","watchers":0,"created_at":"2012-10-23T10:27:15Z","git_url":"git://github.com/mtbc/ome-documentation.git","open_issues_count":0,"labels_url":"https://api.github.com/repos/mtbc/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/mtbc/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/mtbc/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/mtbc/ome-documentation/keys{/key_id}","size":268,"compare_url":"https://api.github.com/repos/mtbc/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/mtbc/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/mtbc/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/mtbc/ome-documentation/hooks","fork":true,"html_url":"https://github.com/mtbc/ome-documentation","master_branch":"develop","clone_url":"https://github.com/mtbc/ome-documentation.git","watchers_count":0,"git_refs_url":"https://api.github.com/repos/mtbc/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/mtbc/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/mtbc/ome-documentation/issues/events{/number}","private":false,"id":6350485,"default_branch":"develop","pushed_at":"2013-01-29T08:26:06Z","has_issues":false,"mirror_url":null,"trees_url":"https://api.github.com/repos/mtbc/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/mtbc/ome-documentation/forks"},"sha":"3809650dde2f205226bab426f2a57e3727c4fe87","ref":"small-typos-dev"},"assignee":null,"updated_at":"2013-01-29T21:32:59Z","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/232/comments","commits_url":"https://github.com/openmicroscopy/ome-documentation/pull/232/commits","closed_at":"2013-01-29T21:32:59Z","user":{"type":"User","url":"https://api.github.com/users/mtbc","received_events_url":"https://api.github.com/users/mtbc/received_events","login":"mtbc","events_url":"https://api.github.com/users/mtbc/events{/privacy}","organizations_url":"https://api.github.com/users/mtbc/orgs","avatar_url":"https://secure.gravatar.com/avatar/dd3abf4ce82fd7321089540d5ff28796?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/mtbc/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/mtbc/gists{/gist_id}","gravatar_id":"dd3abf4ce82fd7321089540d5ff28796","followers_url":"https://api.github.com/users/mtbc/followers","id":2630707,"repos_url":"https://api.github.com/users/mtbc/repos","subscriptions_url":"https://api.github.com/users/mtbc/subscriptions","following_url":"https://api.github.com/users/mtbc/following"},"issue_url":"https://github.com/openmicroscopy/ome-documentation/issues/232","merged_at":"2013-01-29T21:32:59Z","merge_commit_sha":"2d3d61714b3bed58d0de65ea5d5eb5a4ee73e70b","created_at":"2013-01-24T17:09:14Z","review_comments_url":"https://github.com/openmicroscopy/ome-documentation/pull/232/comments","patch_url":"https://github.com/openmicroscopy/ome-documentation/pull/232.patch","html_url":"https://github.com/openmicroscopy/ome-documentation/pull/232","review_comment_url":"/repos/openmicroscopy/ome-documentation/pulls/comments/{number}","milestone":null,"body":"Rebase of https://github.com/openmicroscopy/ome-documentation/pull/230 from dev_4_4 to develop.","diff_url":"https://github.com/openmicroscopy/ome-documentation/pull/232.diff","id":3823956,"base":{"user":null,"label":"openmicroscopy:develop","repo":{"forks":19,"svn_url":"https://github.com/openmicroscopy/ome-documentation","merges_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/merges","languages_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/languages","assignees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/openmicroscopy/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/statuses/{sha}","owner":{"type":"Organization","url":"https://api.github.com/users/openmicroscopy","received_events_url":"https://api.github.com/users/openmicroscopy/received_events","login":"openmicroscopy","events_url":"https://api.github.com/users/openmicroscopy/events{/privacy}","organizations_url":"https://api.github.com/users/openmicroscopy/orgs","avatar_url":"https://secure.gravatar.com/avatar/7424190904f55023bd16416af0fd799b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","starred_url":"https://api.github.com/users/openmicroscopy/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/openmicroscopy/gists{/gist_id}","gravatar_id":"7424190904f55023bd16416af0fd799b","followers_url":"https://api.github.com/users/openmicroscopy/followers","id":975861,"repos_url":"https://api.github.com/users/openmicroscopy/repos","subscriptions_url":"https://api.github.com/users/openmicroscopy/subscriptions","following_url":"https://api.github.com/users/openmicroscopy/following"},"open_issues":3,"updated_at":"2013-02-01T11:04:39Z","milestones_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/events","notifications_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/collaborators{/collaborator}","full_name":"openmicroscopy/ome-documentation","ssh_url":"git@github.com:openmicroscopy/ome-documentation.git","pulls_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":19,"subscription_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscription","teams_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/teams","watchers":9,"created_at":"2012-01-17T10:20:53Z","git_url":"git://github.com/openmicroscopy/ome-documentation.git","open_issues_count":3,"labels_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/keys{/key_id}","size":488,"compare_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/hooks","fork":false,"html_url":"https://github.com/openmicroscopy/ome-documentation","master_branch":"develop","clone_url":"https://github.com/openmicroscopy/ome-documentation.git","watchers_count":9,"git_refs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/events{/number}","private":false,"id":3198415,"default_branch":"develop","pushed_at":"2013-02-01T11:04:38Z","has_issues":true,"mirror_url":null,"trees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/forks"},"sha":"c91ecbb2eaae790ff37d5ba42bd87f34f183c51c","ref":"develop"}},{"_links":{"comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/231/comments"},"issue":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/231"},"html":{"href":"https://github.com/openmicroscopy/ome-documentation/pull/231"},"self":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/231"},"review_comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/231/comments"}},"title":"Migrate the VM installation instructions to the Sphinx documentation","state":"closed","number":231,"url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/231","head":{"user":{"type":"User","url":"https://api.github.com/users/sbesson","received_events_url":"https://api.github.com/users/sbesson/received_events","login":"sbesson","events_url":"https://api.github.com/users/sbesson/events{/privacy}","organizations_url":"https://api.github.com/users/sbesson/orgs","avatar_url":"https://secure.gravatar.com/avatar/8ea0fde1295027db9d37e419ac10cbf4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/sbesson/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/sbesson/gists{/gist_id}","gravatar_id":"8ea0fde1295027db9d37e419ac10cbf4","followers_url":"https://api.github.com/users/sbesson/followers","id":1355463,"repos_url":"https://api.github.com/users/sbesson/repos","subscriptions_url":"https://api.github.com/users/sbesson/subscriptions","following_url":"https://api.github.com/users/sbesson/following"},"label":"sbesson:VM_install","repo":{"forks":0,"svn_url":"https://github.com/sbesson/ome-documentation","merges_url":"https://api.github.com/repos/sbesson/ome-documentation/merges","languages_url":"https://api.github.com/repos/sbesson/ome-documentation/languages","assignees_url":"https://api.github.com/repos/sbesson/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/sbesson/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/sbesson/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/sbesson/ome-documentation/statuses/{sha}","owner":{"type":"User","url":"https://api.github.com/users/sbesson","received_events_url":"https://api.github.com/users/sbesson/received_events","login":"sbesson","events_url":"https://api.github.com/users/sbesson/events{/privacy}","organizations_url":"https://api.github.com/users/sbesson/orgs","avatar_url":"https://secure.gravatar.com/avatar/8ea0fde1295027db9d37e419ac10cbf4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/sbesson/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/sbesson/gists{/gist_id}","gravatar_id":"8ea0fde1295027db9d37e419ac10cbf4","followers_url":"https://api.github.com/users/sbesson/followers","id":1355463,"repos_url":"https://api.github.com/users/sbesson/repos","subscriptions_url":"https://api.github.com/users/sbesson/subscriptions","following_url":"https://api.github.com/users/sbesson/following"},"open_issues":0,"updated_at":"2013-02-02T21:21:49Z","milestones_url":"https://api.github.com/repos/sbesson/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/sbesson/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/sbesson/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/sbesson/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/sbesson/ome-documentation/events","notifications_url":"https://api.github.com/repos/sbesson/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/sbesson/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/sbesson/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/sbesson/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/sbesson/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/sbesson/ome-documentation/collaborators{/collaborator}","full_name":"sbesson/ome-documentation","ssh_url":"git@github.com:sbesson/ome-documentation.git","pulls_url":"https://api.github.com/repos/sbesson/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/sbesson/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/sbesson/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":0,"subscription_url":"https://api.github.com/repos/sbesson/ome-documentation/subscription","teams_url":"https://api.github.com/repos/sbesson/ome-documentation/teams","watchers":1,"created_at":"2012-08-22T08:57:59Z","git_url":"git://github.com/sbesson/ome-documentation.git","open_issues_count":0,"labels_url":"https://api.github.com/repos/sbesson/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/sbesson/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/sbesson/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/sbesson/ome-documentation/keys{/key_id}","size":608,"compare_url":"https://api.github.com/repos/sbesson/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/sbesson/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/sbesson/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/sbesson/ome-documentation/hooks","fork":true,"html_url":"https://github.com/sbesson/ome-documentation","master_branch":"dev_4_4","clone_url":"https://github.com/sbesson/ome-documentation.git","watchers_count":1,"git_refs_url":"https://api.github.com/repos/sbesson/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/sbesson/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/sbesson/ome-documentation/issues/events{/number}","private":false,"id":5507021,"default_branch":"dev_4_4","pushed_at":"2013-02-01T15:04:17Z","has_issues":false,"mirror_url":null,"trees_url":"https://api.github.com/repos/sbesson/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/sbesson/ome-documentation/forks"},"sha":"f6550a0ef34121b7a5912cc98928964c645111aa","ref":"VM_install"},"assignee":null,"updated_at":"2013-02-02T21:21:49Z","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/231/comments","commits_url":"https://github.com/openmicroscopy/ome-documentation/pull/231/commits","closed_at":"2013-02-02T21:21:49Z","user":{"type":"User","url":"https://api.github.com/users/sbesson","received_events_url":"https://api.github.com/users/sbesson/received_events","login":"sbesson","events_url":"https://api.github.com/users/sbesson/events{/privacy}","organizations_url":"https://api.github.com/users/sbesson/orgs","avatar_url":"https://secure.gravatar.com/avatar/8ea0fde1295027db9d37e419ac10cbf4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/sbesson/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/sbesson/gists{/gist_id}","gravatar_id":"8ea0fde1295027db9d37e419ac10cbf4","followers_url":"https://api.github.com/users/sbesson/followers","id":1355463,"repos_url":"https://api.github.com/users/sbesson/repos","subscriptions_url":"https://api.github.com/users/sbesson/subscriptions","following_url":"https://api.github.com/users/sbesson/following"},"issue_url":"https://github.com/openmicroscopy/ome-documentation/issues/231","merged_at":null,"merge_commit_sha":"8fe6d48e138e75b1ff353bfc5fec9477faa18f21","created_at":"2013-01-24T13:41:44Z","review_comments_url":"https://github.com/openmicroscopy/ome-documentation/pull/231/comments","patch_url":"https://github.com/openmicroscopy/ome-documentation/pull/231.patch","html_url":"https://github.com/openmicroscopy/ome-documentation/pull/231","review_comment_url":"/repos/openmicroscopy/ome-documentation/pulls/comments/{number}","milestone":null,"body":"This PR moves the instructions located under docs/install/VM/README.txt in the main openmicroscopy repository to the documentation.","diff_url":"https://github.com/openmicroscopy/ome-documentation/pull/231.diff","id":3820054,"base":{"user":null,"label":"openmicroscopy:dev_4_4","repo":{"forks":19,"svn_url":"https://github.com/openmicroscopy/ome-documentation","merges_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/merges","languages_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/languages","assignees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/openmicroscopy/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/statuses/{sha}","owner":{"type":"Organization","url":"https://api.github.com/users/openmicroscopy","received_events_url":"https://api.github.com/users/openmicroscopy/received_events","login":"openmicroscopy","events_url":"https://api.github.com/users/openmicroscopy/events{/privacy}","organizations_url":"https://api.github.com/users/openmicroscopy/orgs","avatar_url":"https://secure.gravatar.com/avatar/7424190904f55023bd16416af0fd799b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","starred_url":"https://api.github.com/users/openmicroscopy/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/openmicroscopy/gists{/gist_id}","gravatar_id":"7424190904f55023bd16416af0fd799b","followers_url":"https://api.github.com/users/openmicroscopy/followers","id":975861,"repos_url":"https://api.github.com/users/openmicroscopy/repos","subscriptions_url":"https://api.github.com/users/openmicroscopy/subscriptions","following_url":"https://api.github.com/users/openmicroscopy/following"},"open_issues":3,"updated_at":"2013-02-01T11:04:39Z","milestones_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/events","notifications_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/collaborators{/collaborator}","full_name":"openmicroscopy/ome-documentation","ssh_url":"git@github.com:openmicroscopy/ome-documentation.git","pulls_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":19,"subscription_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscription","teams_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/teams","watchers":9,"created_at":"2012-01-17T10:20:53Z","git_url":"git://github.com/openmicroscopy/ome-documentation.git","open_issues_count":3,"labels_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/keys{/key_id}","size":488,"compare_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/hooks","fork":false,"html_url":"https://github.com/openmicroscopy/ome-documentation","master_branch":"develop","clone_url":"https://github.com/openmicroscopy/ome-documentation.git","watchers_count":9,"git_refs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/events{/number}","private":false,"id":3198415,"default_branch":"develop","pushed_at":"2013-02-01T11:04:38Z","has_issues":true,"mirror_url":null,"trees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/forks"},"sha":"18ba8058a525f1e3c5bedf3c46b459e3e2b6e76a","ref":"dev_4_4"}},{"_links":{"comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/230/comments"},"issue":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/230"},"html":{"href":"https://github.com/openmicroscopy/ome-documentation/pull/230"},"self":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/230"},"review_comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/230/comments"}},"title":"Remove extra spaces on build system links.","state":"closed","number":230,"url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/230","head":{"user":{"type":"User","url":"https://api.github.com/users/mtbc","received_events_url":"https://api.github.com/users/mtbc/received_events","login":"mtbc","events_url":"https://api.github.com/users/mtbc/events{/privacy}","organizations_url":"https://api.github.com/users/mtbc/orgs","avatar_url":"https://secure.gravatar.com/avatar/dd3abf4ce82fd7321089540d5ff28796?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/mtbc/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/mtbc/gists{/gist_id}","gravatar_id":"dd3abf4ce82fd7321089540d5ff28796","followers_url":"https://api.github.com/users/mtbc/followers","id":2630707,"repos_url":"https://api.github.com/users/mtbc/repos","subscriptions_url":"https://api.github.com/users/mtbc/subscriptions","following_url":"https://api.github.com/users/mtbc/following"},"label":"mtbc:small-typos","repo":{"forks":0,"svn_url":"https://github.com/mtbc/ome-documentation","merges_url":"https://api.github.com/repos/mtbc/ome-documentation/merges","languages_url":"https://api.github.com/repos/mtbc/ome-documentation/languages","assignees_url":"https://api.github.com/repos/mtbc/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/mtbc/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/mtbc/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/mtbc/ome-documentation/statuses/{sha}","owner":{"type":"User","url":"https://api.github.com/users/mtbc","received_events_url":"https://api.github.com/users/mtbc/received_events","login":"mtbc","events_url":"https://api.github.com/users/mtbc/events{/privacy}","organizations_url":"https://api.github.com/users/mtbc/orgs","avatar_url":"https://secure.gravatar.com/avatar/dd3abf4ce82fd7321089540d5ff28796?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/mtbc/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/mtbc/gists{/gist_id}","gravatar_id":"dd3abf4ce82fd7321089540d5ff28796","followers_url":"https://api.github.com/users/mtbc/followers","id":2630707,"repos_url":"https://api.github.com/users/mtbc/repos","subscriptions_url":"https://api.github.com/users/mtbc/subscriptions","following_url":"https://api.github.com/users/mtbc/following"},"open_issues":0,"updated_at":"2013-01-29T21:32:59Z","milestones_url":"https://api.github.com/repos/mtbc/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/mtbc/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/mtbc/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/mtbc/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/mtbc/ome-documentation/events","notifications_url":"https://api.github.com/repos/mtbc/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/mtbc/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/mtbc/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/mtbc/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/mtbc/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/mtbc/ome-documentation/collaborators{/collaborator}","full_name":"mtbc/ome-documentation","ssh_url":"git@github.com:mtbc/ome-documentation.git","pulls_url":"https://api.github.com/repos/mtbc/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/mtbc/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/mtbc/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":0,"subscription_url":"https://api.github.com/repos/mtbc/ome-documentation/subscription","teams_url":"https://api.github.com/repos/mtbc/ome-documentation/teams","watchers":0,"created_at":"2012-10-23T10:27:15Z","git_url":"git://github.com/mtbc/ome-documentation.git","open_issues_count":0,"labels_url":"https://api.github.com/repos/mtbc/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/mtbc/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/mtbc/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/mtbc/ome-documentation/keys{/key_id}","size":268,"compare_url":"https://api.github.com/repos/mtbc/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/mtbc/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/mtbc/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/mtbc/ome-documentation/hooks","fork":true,"html_url":"https://github.com/mtbc/ome-documentation","master_branch":"develop","clone_url":"https://github.com/mtbc/ome-documentation.git","watchers_count":0,"git_refs_url":"https://api.github.com/repos/mtbc/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/mtbc/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/mtbc/ome-documentation/issues/events{/number}","private":false,"id":6350485,"default_branch":"develop","pushed_at":"2013-01-29T08:26:06Z","has_issues":false,"mirror_url":null,"trees_url":"https://api.github.com/repos/mtbc/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/mtbc/ome-documentation/forks"},"sha":"442139924e1bcae862a8270da9c8e25efca8cbfa","ref":"small-typos"},"assignee":null,"updated_at":"2013-01-25T08:03:06Z","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/230/comments","commits_url":"https://github.com/openmicroscopy/ome-documentation/pull/230/commits","closed_at":"2013-01-25T08:03:06Z","user":{"type":"User","url":"https://api.github.com/users/mtbc","received_events_url":"https://api.github.com/users/mtbc/received_events","login":"mtbc","events_url":"https://api.github.com/users/mtbc/events{/privacy}","organizations_url":"https://api.github.com/users/mtbc/orgs","avatar_url":"https://secure.gravatar.com/avatar/dd3abf4ce82fd7321089540d5ff28796?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/mtbc/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/mtbc/gists{/gist_id}","gravatar_id":"dd3abf4ce82fd7321089540d5ff28796","followers_url":"https://api.github.com/users/mtbc/followers","id":2630707,"repos_url":"https://api.github.com/users/mtbc/repos","subscriptions_url":"https://api.github.com/users/mtbc/subscriptions","following_url":"https://api.github.com/users/mtbc/following"},"issue_url":"https://github.com/openmicroscopy/ome-documentation/issues/230","merged_at":"2013-01-25T08:03:06Z","merge_commit_sha":"db2aea0141d33dfbf61fdec4e917a9cdb3a9c3b6","created_at":"2013-01-24T11:24:26Z","review_comments_url":"https://github.com/openmicroscopy/ome-documentation/pull/230/comments","patch_url":"https://github.com/openmicroscopy/ome-documentation/pull/230.patch","html_url":"https://github.com/openmicroscopy/ome-documentation/pull/230","review_comment_url":"/repos/openmicroscopy/ome-documentation/pulls/comments/{number}","milestone":null,"body":"I noticed some leading spaces in hyperlinks. They seem to work fine without.","diff_url":"https://github.com/openmicroscopy/ome-documentation/pull/230.diff","id":3818348,"base":{"user":null,"label":"openmicroscopy:dev_4_4","repo":{"forks":19,"svn_url":"https://github.com/openmicroscopy/ome-documentation","merges_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/merges","languages_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/languages","assignees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/openmicroscopy/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/statuses/{sha}","owner":{"type":"Organization","url":"https://api.github.com/users/openmicroscopy","received_events_url":"https://api.github.com/users/openmicroscopy/received_events","login":"openmicroscopy","events_url":"https://api.github.com/users/openmicroscopy/events{/privacy}","organizations_url":"https://api.github.com/users/openmicroscopy/orgs","avatar_url":"https://secure.gravatar.com/avatar/7424190904f55023bd16416af0fd799b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","starred_url":"https://api.github.com/users/openmicroscopy/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/openmicroscopy/gists{/gist_id}","gravatar_id":"7424190904f55023bd16416af0fd799b","followers_url":"https://api.github.com/users/openmicroscopy/followers","id":975861,"repos_url":"https://api.github.com/users/openmicroscopy/repos","subscriptions_url":"https://api.github.com/users/openmicroscopy/subscriptions","following_url":"https://api.github.com/users/openmicroscopy/following"},"open_issues":3,"updated_at":"2013-02-01T11:04:39Z","milestones_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/events","notifications_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/collaborators{/collaborator}","full_name":"openmicroscopy/ome-documentation","ssh_url":"git@github.com:openmicroscopy/ome-documentation.git","pulls_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":19,"subscription_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscription","teams_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/teams","watchers":9,"created_at":"2012-01-17T10:20:53Z","git_url":"git://github.com/openmicroscopy/ome-documentation.git","open_issues_count":3,"labels_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/keys{/key_id}","size":488,"compare_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/hooks","fork":false,"html_url":"https://github.com/openmicroscopy/ome-documentation","master_branch":"develop","clone_url":"https://github.com/openmicroscopy/ome-documentation.git","watchers_count":9,"git_refs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/events{/number}","private":false,"id":3198415,"default_branch":"develop","pushed_at":"2013-02-01T11:04:38Z","has_issues":true,"mirror_url":null,"trees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/forks"},"sha":"1a5500adbd66f9c5c30b070bd5503b174478d02d","ref":"dev_4_4"}},{"_links":{"comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/229/comments"},"issue":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/229"},"html":{"href":"https://github.com/openmicroscopy/ome-documentation/pull/229"},"self":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/229"},"review_comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/229/comments"}},"title":"Virtualjob extlink","state":"closed","number":229,"url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/229","head":{"user":{"type":"User","url":"https://api.github.com/users/sbesson","received_events_url":"https://api.github.com/users/sbesson/received_events","login":"sbesson","events_url":"https://api.github.com/users/sbesson/events{/privacy}","organizations_url":"https://api.github.com/users/sbesson/orgs","avatar_url":"https://secure.gravatar.com/avatar/8ea0fde1295027db9d37e419ac10cbf4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/sbesson/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/sbesson/gists{/gist_id}","gravatar_id":"8ea0fde1295027db9d37e419ac10cbf4","followers_url":"https://api.github.com/users/sbesson/followers","id":1355463,"repos_url":"https://api.github.com/users/sbesson/repos","subscriptions_url":"https://api.github.com/users/sbesson/subscriptions","following_url":"https://api.github.com/users/sbesson/following"},"label":"sbesson:virtualjob_extlink","repo":{"forks":0,"svn_url":"https://github.com/sbesson/ome-documentation","merges_url":"https://api.github.com/repos/sbesson/ome-documentation/merges","languages_url":"https://api.github.com/repos/sbesson/ome-documentation/languages","assignees_url":"https://api.github.com/repos/sbesson/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/sbesson/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/sbesson/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/sbesson/ome-documentation/statuses/{sha}","owner":{"type":"User","url":"https://api.github.com/users/sbesson","received_events_url":"https://api.github.com/users/sbesson/received_events","login":"sbesson","events_url":"https://api.github.com/users/sbesson/events{/privacy}","organizations_url":"https://api.github.com/users/sbesson/orgs","avatar_url":"https://secure.gravatar.com/avatar/8ea0fde1295027db9d37e419ac10cbf4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/sbesson/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/sbesson/gists{/gist_id}","gravatar_id":"8ea0fde1295027db9d37e419ac10cbf4","followers_url":"https://api.github.com/users/sbesson/followers","id":1355463,"repos_url":"https://api.github.com/users/sbesson/repos","subscriptions_url":"https://api.github.com/users/sbesson/subscriptions","following_url":"https://api.github.com/users/sbesson/following"},"open_issues":0,"updated_at":"2013-02-02T21:21:49Z","milestones_url":"https://api.github.com/repos/sbesson/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/sbesson/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/sbesson/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/sbesson/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/sbesson/ome-documentation/events","notifications_url":"https://api.github.com/repos/sbesson/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/sbesson/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/sbesson/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/sbesson/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/sbesson/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/sbesson/ome-documentation/collaborators{/collaborator}","full_name":"sbesson/ome-documentation","ssh_url":"git@github.com:sbesson/ome-documentation.git","pulls_url":"https://api.github.com/repos/sbesson/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/sbesson/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/sbesson/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":0,"subscription_url":"https://api.github.com/repos/sbesson/ome-documentation/subscription","teams_url":"https://api.github.com/repos/sbesson/ome-documentation/teams","watchers":1,"created_at":"2012-08-22T08:57:59Z","git_url":"git://github.com/sbesson/ome-documentation.git","open_issues_count":0,"labels_url":"https://api.github.com/repos/sbesson/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/sbesson/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/sbesson/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/sbesson/ome-documentation/keys{/key_id}","size":608,"compare_url":"https://api.github.com/repos/sbesson/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/sbesson/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/sbesson/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/sbesson/ome-documentation/hooks","fork":true,"html_url":"https://github.com/sbesson/ome-documentation","master_branch":"dev_4_4","clone_url":"https://github.com/sbesson/ome-documentation.git","watchers_count":1,"git_refs_url":"https://api.github.com/repos/sbesson/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/sbesson/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/sbesson/ome-documentation/issues/events{/number}","private":false,"id":5507021,"default_branch":"dev_4_4","pushed_at":"2013-02-01T15:04:17Z","has_issues":false,"mirror_url":null,"trees_url":"https://api.github.com/repos/sbesson/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/sbesson/ome-documentation/forks"},"sha":"61139ce688bda4c5abb750e684c1dd57e7209632","ref":"virtualjob_extlink"},"assignee":null,"updated_at":"2013-01-25T13:17:57Z","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/229/comments","commits_url":"https://github.com/openmicroscopy/ome-documentation/pull/229/commits","closed_at":"2013-01-25T13:17:57Z","user":{"type":"User","url":"https://api.github.com/users/sbesson","received_events_url":"https://api.github.com/users/sbesson/received_events","login":"sbesson","events_url":"https://api.github.com/users/sbesson/events{/privacy}","organizations_url":"https://api.github.com/users/sbesson/orgs","avatar_url":"https://secure.gravatar.com/avatar/8ea0fde1295027db9d37e419ac10cbf4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/sbesson/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/sbesson/gists{/gist_id}","gravatar_id":"8ea0fde1295027db9d37e419ac10cbf4","followers_url":"https://api.github.com/users/sbesson/followers","id":1355463,"repos_url":"https://api.github.com/users/sbesson/repos","subscriptions_url":"https://api.github.com/users/sbesson/subscriptions","following_url":"https://api.github.com/users/sbesson/following"},"issue_url":"https://github.com/openmicroscopy/ome-documentation/issues/229","merged_at":"2013-01-25T13:17:57Z","merge_commit_sha":"98a269b52af13e6aa9e32dbdd69655dc7bc82d09","created_at":"2013-01-24T11:00:01Z","review_comments_url":"https://github.com/openmicroscopy/ome-documentation/pull/229/comments","patch_url":"https://github.com/openmicroscopy/ome-documentation/pull/229.patch","html_url":"https://github.com/openmicroscopy/ome-documentation/pull/229","review_comment_url":"/repos/openmicroscopy/ome-documentation/pulls/comments/{number}","milestone":null,"body":"This PR should fix the link to the latest succesful `.ova` file in the virtual appliance documentation.\r\n\r\nAt the current HEAD of this branch, I have\r\n```\r\nsbesson:sphinx sebastien$ git grep -E \"\\-trunk\"\r\nREADME.rst:By default, the OMERO job is set to ``OMERO-trunk``. To specify a different \r\nconf.py: jenkins_job = 'OMERO-trunk'\r\ndevelopers/Cpp.txt:- :jenkins:`Windows Server 2003 (32 bit) `\r\ndevelopers/Cpp.txt:- :jenkins:`Linux `\r\ndevelopers/Cpp.txt:- :jenkins:`MacOSX `\r\ndevelopers/continuous-integration.txt: * :term:`OMERO-trunk`\r\ndevelopers/continuous-integration.txt: * :term:`BIOFORMATS-trunk`\r\ndevelopers/continuous-integration.txt: :jenkinsjob:`BIOFORMATS-trunk`\r\ndevelopers/continuous-integration.txt: :jenkinsjob:`OMERO-trunk`\r\ndevelopers/release-process.txt: - See: :jenkins:`job/OMERO-trunk-components`.\r\ndevelopers/release-process.txt:- Rename \"\\*-trunk\" jenkins jobs to \"\\*-\"\r\n```\r\n\r\nAll the `*-trunk` links present in the developers/continuous-integration.txt page are expected. The only leftovers are the `OMERO-trunk-components` links. Once this job is green again and copied on to the stable branch, I will implement the same strategy as the one in this PR and create a `componentsjob` alias.\r\n\r\n/cc @joshmoore, @hflynn","diff_url":"https://github.com/openmicroscopy/ome-documentation/pull/229.diff","id":3818035,"base":{"user":null,"label":"openmicroscopy:dev_4_4","repo":{"forks":19,"svn_url":"https://github.com/openmicroscopy/ome-documentation","merges_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/merges","languages_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/languages","assignees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/openmicroscopy/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/statuses/{sha}","owner":{"type":"Organization","url":"https://api.github.com/users/openmicroscopy","received_events_url":"https://api.github.com/users/openmicroscopy/received_events","login":"openmicroscopy","events_url":"https://api.github.com/users/openmicroscopy/events{/privacy}","organizations_url":"https://api.github.com/users/openmicroscopy/orgs","avatar_url":"https://secure.gravatar.com/avatar/7424190904f55023bd16416af0fd799b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","starred_url":"https://api.github.com/users/openmicroscopy/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/openmicroscopy/gists{/gist_id}","gravatar_id":"7424190904f55023bd16416af0fd799b","followers_url":"https://api.github.com/users/openmicroscopy/followers","id":975861,"repos_url":"https://api.github.com/users/openmicroscopy/repos","subscriptions_url":"https://api.github.com/users/openmicroscopy/subscriptions","following_url":"https://api.github.com/users/openmicroscopy/following"},"open_issues":3,"updated_at":"2013-02-01T11:04:39Z","milestones_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/events","notifications_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/collaborators{/collaborator}","full_name":"openmicroscopy/ome-documentation","ssh_url":"git@github.com:openmicroscopy/ome-documentation.git","pulls_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":19,"subscription_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscription","teams_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/teams","watchers":9,"created_at":"2012-01-17T10:20:53Z","git_url":"git://github.com/openmicroscopy/ome-documentation.git","open_issues_count":3,"labels_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/keys{/key_id}","size":488,"compare_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/hooks","fork":false,"html_url":"https://github.com/openmicroscopy/ome-documentation","master_branch":"develop","clone_url":"https://github.com/openmicroscopy/ome-documentation.git","watchers_count":9,"git_refs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/events{/number}","private":false,"id":3198415,"default_branch":"develop","pushed_at":"2013-02-01T11:04:38Z","has_issues":true,"mirror_url":null,"trees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/forks"},"sha":"1a5500adbd66f9c5c30b070bd5503b174478d02d","ref":"dev_4_4"}},{"_links":{"comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/228/comments"},"issue":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/228"},"html":{"href":"https://github.com/openmicroscopy/ome-documentation/pull/228"},"self":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/228"},"review_comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/228/comments"}},"title":"\"Contributing to OMERO\" developer doc rework (rebased onto develop)","state":"closed","number":228,"url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/228","head":{"user":{"type":"User","url":"https://api.github.com/users/joshmoore","received_events_url":"https://api.github.com/users/joshmoore/received_events","login":"joshmoore","events_url":"https://api.github.com/users/joshmoore/events{/privacy}","organizations_url":"https://api.github.com/users/joshmoore/orgs","avatar_url":"https://secure.gravatar.com/avatar/b9d1630a90131545c699075f73da092b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/joshmoore/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/joshmoore/gists{/gist_id}","gravatar_id":"b9d1630a90131545c699075f73da092b","followers_url":"https://api.github.com/users/joshmoore/followers","id":88113,"repos_url":"https://api.github.com/users/joshmoore/repos","subscriptions_url":"https://api.github.com/users/joshmoore/subscriptions","following_url":"https://api.github.com/users/joshmoore/following"},"label":"joshmoore:rebased/develop/contrib-section","repo":{"forks":0,"svn_url":"https://github.com/joshmoore/ome-documentation","merges_url":"https://api.github.com/repos/joshmoore/ome-documentation/merges","languages_url":"https://api.github.com/repos/joshmoore/ome-documentation/languages","assignees_url":"https://api.github.com/repos/joshmoore/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/joshmoore/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/joshmoore/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/joshmoore/ome-documentation/statuses/{sha}","owner":{"type":"User","url":"https://api.github.com/users/joshmoore","received_events_url":"https://api.github.com/users/joshmoore/received_events","login":"joshmoore","events_url":"https://api.github.com/users/joshmoore/events{/privacy}","organizations_url":"https://api.github.com/users/joshmoore/orgs","avatar_url":"https://secure.gravatar.com/avatar/b9d1630a90131545c699075f73da092b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/joshmoore/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/joshmoore/gists{/gist_id}","gravatar_id":"b9d1630a90131545c699075f73da092b","followers_url":"https://api.github.com/users/joshmoore/followers","id":88113,"repos_url":"https://api.github.com/users/joshmoore/repos","subscriptions_url":"https://api.github.com/users/joshmoore/subscriptions","following_url":"https://api.github.com/users/joshmoore/following"},"open_issues":0,"updated_at":"2013-02-01T11:33:14Z","milestones_url":"https://api.github.com/repos/joshmoore/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/joshmoore/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/joshmoore/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/joshmoore/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/joshmoore/ome-documentation/events","notifications_url":"https://api.github.com/repos/joshmoore/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/joshmoore/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/joshmoore/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/joshmoore/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/joshmoore/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/joshmoore/ome-documentation/collaborators{/collaborator}","full_name":"joshmoore/ome-documentation","ssh_url":"git@github.com:joshmoore/ome-documentation.git","pulls_url":"https://api.github.com/repos/joshmoore/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/joshmoore/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/joshmoore/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":0,"subscription_url":"https://api.github.com/repos/joshmoore/ome-documentation/subscription","teams_url":"https://api.github.com/repos/joshmoore/ome-documentation/teams","watchers":1,"created_at":"2012-03-01T09:53:37Z","git_url":"git://github.com/joshmoore/ome-documentation.git","open_issues_count":0,"labels_url":"https://api.github.com/repos/joshmoore/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/joshmoore/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/joshmoore/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/joshmoore/ome-documentation/keys{/key_id}","size":780,"compare_url":"https://api.github.com/repos/joshmoore/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/joshmoore/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/joshmoore/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/joshmoore/ome-documentation/hooks","fork":true,"html_url":"https://github.com/joshmoore/ome-documentation","clone_url":"https://github.com/joshmoore/ome-documentation.git","watchers_count":1,"git_refs_url":"https://api.github.com/repos/joshmoore/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/joshmoore/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/joshmoore/ome-documentation/issues/events{/number}","private":false,"id":3590779,"pushed_at":"2013-01-31T11:56:02Z","has_issues":false,"mirror_url":null,"trees_url":"https://api.github.com/repos/joshmoore/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/joshmoore/ome-documentation/forks"},"sha":"abe9ddd7585c52729d574c24f638c65b50cd354d","ref":"rebased/develop/contrib-section"},"assignee":null,"updated_at":"2013-01-25T08:02:32Z","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/228/comments","commits_url":"https://github.com/openmicroscopy/ome-documentation/pull/228/commits","closed_at":"2013-01-25T08:02:32Z","user":{"type":"User","url":"https://api.github.com/users/joshmoore","received_events_url":"https://api.github.com/users/joshmoore/received_events","login":"joshmoore","events_url":"https://api.github.com/users/joshmoore/events{/privacy}","organizations_url":"https://api.github.com/users/joshmoore/orgs","avatar_url":"https://secure.gravatar.com/avatar/b9d1630a90131545c699075f73da092b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/joshmoore/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/joshmoore/gists{/gist_id}","gravatar_id":"b9d1630a90131545c699075f73da092b","followers_url":"https://api.github.com/users/joshmoore/followers","id":88113,"repos_url":"https://api.github.com/users/joshmoore/repos","subscriptions_url":"https://api.github.com/users/joshmoore/subscriptions","following_url":"https://api.github.com/users/joshmoore/following"},"issue_url":"https://github.com/openmicroscopy/ome-documentation/issues/228","merged_at":"2013-01-25T08:02:32Z","merge_commit_sha":"1234d0f831c2d19f713b8e30c14b904cace7b6d9","created_at":"2013-01-24T08:25:41Z","review_comments_url":"https://github.com/openmicroscopy/ome-documentation/pull/228/comments","patch_url":"https://github.com/openmicroscopy/ome-documentation/pull/228.patch","html_url":"https://github.com/openmicroscopy/ome-documentation/pull/228","review_comment_url":"/repos/openmicroscopy/ome-documentation/pulls/comments/{number}","milestone":null,"body":"\n\nThis is the same as gh-222 but rebased onto develop.\n\n----\n\n\r\n * Rename files to follow abc-xyz.txt standard\r\n * Reduce the number of individual files\r\n * Improve the order of files for external developers\r\n * Improve the order of sections in some files\r\n * Drop UsingGitFlow\r\n\r\nLooking at developers/index.txt and developers/contributing.txt\r\nit's still not completely clear 1) that a developer should REALLY\r\nread the \"contributing\" section, nor 2) once they've opened up\r\ncontributing.txt which sections are highly important.\r\n\r\nNB: very little has been done in the way of optimizing the PDF\n\n ","diff_url":"https://github.com/openmicroscopy/ome-documentation/pull/228.diff","id":3816200,"base":{"user":null,"label":"openmicroscopy:develop","repo":{"forks":19,"svn_url":"https://github.com/openmicroscopy/ome-documentation","merges_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/merges","languages_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/languages","assignees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/openmicroscopy/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/statuses/{sha}","owner":{"type":"Organization","url":"https://api.github.com/users/openmicroscopy","received_events_url":"https://api.github.com/users/openmicroscopy/received_events","login":"openmicroscopy","events_url":"https://api.github.com/users/openmicroscopy/events{/privacy}","organizations_url":"https://api.github.com/users/openmicroscopy/orgs","avatar_url":"https://secure.gravatar.com/avatar/7424190904f55023bd16416af0fd799b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","starred_url":"https://api.github.com/users/openmicroscopy/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/openmicroscopy/gists{/gist_id}","gravatar_id":"7424190904f55023bd16416af0fd799b","followers_url":"https://api.github.com/users/openmicroscopy/followers","id":975861,"repos_url":"https://api.github.com/users/openmicroscopy/repos","subscriptions_url":"https://api.github.com/users/openmicroscopy/subscriptions","following_url":"https://api.github.com/users/openmicroscopy/following"},"open_issues":3,"updated_at":"2013-02-01T11:04:39Z","milestones_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/events","notifications_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/collaborators{/collaborator}","full_name":"openmicroscopy/ome-documentation","ssh_url":"git@github.com:openmicroscopy/ome-documentation.git","pulls_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":19,"subscription_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscription","teams_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/teams","watchers":9,"created_at":"2012-01-17T10:20:53Z","git_url":"git://github.com/openmicroscopy/ome-documentation.git","open_issues_count":3,"labels_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/keys{/key_id}","size":488,"compare_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/hooks","fork":false,"html_url":"https://github.com/openmicroscopy/ome-documentation","master_branch":"develop","clone_url":"https://github.com/openmicroscopy/ome-documentation.git","watchers_count":9,"git_refs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/events{/number}","private":false,"id":3198415,"default_branch":"develop","pushed_at":"2013-02-01T11:04:38Z","has_issues":true,"mirror_url":null,"trees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/forks"},"sha":"281ddcc74b87247095f05e494f70efd28ee87785","ref":"develop"}},{"_links":{"comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/226/comments"},"issue":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/226"},"html":{"href":"https://github.com/openmicroscopy/ome-documentation/pull/226"},"self":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/226"},"review_comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/226/comments"}},"title":"Jenkins stable renaming (rebased onto develop)","state":"closed","number":226,"url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/226","head":{"user":{"type":"User","url":"https://api.github.com/users/sbesson","received_events_url":"https://api.github.com/users/sbesson/received_events","login":"sbesson","events_url":"https://api.github.com/users/sbesson/events{/privacy}","organizations_url":"https://api.github.com/users/sbesson/orgs","avatar_url":"https://secure.gravatar.com/avatar/8ea0fde1295027db9d37e419ac10cbf4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/sbesson/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/sbesson/gists{/gist_id}","gravatar_id":"8ea0fde1295027db9d37e419ac10cbf4","followers_url":"https://api.github.com/users/sbesson/followers","id":1355463,"repos_url":"https://api.github.com/users/sbesson/repos","subscriptions_url":"https://api.github.com/users/sbesson/subscriptions","following_url":"https://api.github.com/users/sbesson/following"},"label":"sbesson:rebased/develop/jenkins_stable_renaming","repo":{"forks":0,"svn_url":"https://github.com/sbesson/ome-documentation","merges_url":"https://api.github.com/repos/sbesson/ome-documentation/merges","languages_url":"https://api.github.com/repos/sbesson/ome-documentation/languages","assignees_url":"https://api.github.com/repos/sbesson/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/sbesson/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/sbesson/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/sbesson/ome-documentation/statuses/{sha}","owner":{"type":"User","url":"https://api.github.com/users/sbesson","received_events_url":"https://api.github.com/users/sbesson/received_events","login":"sbesson","events_url":"https://api.github.com/users/sbesson/events{/privacy}","organizations_url":"https://api.github.com/users/sbesson/orgs","avatar_url":"https://secure.gravatar.com/avatar/8ea0fde1295027db9d37e419ac10cbf4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/sbesson/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/sbesson/gists{/gist_id}","gravatar_id":"8ea0fde1295027db9d37e419ac10cbf4","followers_url":"https://api.github.com/users/sbesson/followers","id":1355463,"repos_url":"https://api.github.com/users/sbesson/repos","subscriptions_url":"https://api.github.com/users/sbesson/subscriptions","following_url":"https://api.github.com/users/sbesson/following"},"open_issues":0,"updated_at":"2013-02-02T21:21:49Z","milestones_url":"https://api.github.com/repos/sbesson/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/sbesson/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/sbesson/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/sbesson/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/sbesson/ome-documentation/events","notifications_url":"https://api.github.com/repos/sbesson/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/sbesson/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/sbesson/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/sbesson/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/sbesson/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/sbesson/ome-documentation/collaborators{/collaborator}","full_name":"sbesson/ome-documentation","ssh_url":"git@github.com:sbesson/ome-documentation.git","pulls_url":"https://api.github.com/repos/sbesson/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/sbesson/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/sbesson/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":0,"subscription_url":"https://api.github.com/repos/sbesson/ome-documentation/subscription","teams_url":"https://api.github.com/repos/sbesson/ome-documentation/teams","watchers":1,"created_at":"2012-08-22T08:57:59Z","git_url":"git://github.com/sbesson/ome-documentation.git","open_issues_count":0,"labels_url":"https://api.github.com/repos/sbesson/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/sbesson/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/sbesson/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/sbesson/ome-documentation/keys{/key_id}","size":608,"compare_url":"https://api.github.com/repos/sbesson/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/sbesson/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/sbesson/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/sbesson/ome-documentation/hooks","fork":true,"html_url":"https://github.com/sbesson/ome-documentation","master_branch":"dev_4_4","clone_url":"https://github.com/sbesson/ome-documentation.git","watchers_count":1,"git_refs_url":"https://api.github.com/repos/sbesson/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/sbesson/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/sbesson/ome-documentation/issues/events{/number}","private":false,"id":5507021,"default_branch":"dev_4_4","pushed_at":"2013-02-01T15:04:17Z","has_issues":false,"mirror_url":null,"trees_url":"https://api.github.com/repos/sbesson/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/sbesson/ome-documentation/forks"},"sha":"fbd464819ba9647fe0254d17c7486ff9f6846831","ref":"rebased/develop/jenkins_stable_renaming"},"assignee":null,"updated_at":"2013-01-24T11:30:27Z","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/226/comments","commits_url":"https://github.com/openmicroscopy/ome-documentation/pull/226/commits","closed_at":"2013-01-24T11:30:27Z","user":{"type":"User","url":"https://api.github.com/users/sbesson","received_events_url":"https://api.github.com/users/sbesson/received_events","login":"sbesson","events_url":"https://api.github.com/users/sbesson/events{/privacy}","organizations_url":"https://api.github.com/users/sbesson/orgs","avatar_url":"https://secure.gravatar.com/avatar/8ea0fde1295027db9d37e419ac10cbf4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/sbesson/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/sbesson/gists{/gist_id}","gravatar_id":"8ea0fde1295027db9d37e419ac10cbf4","followers_url":"https://api.github.com/users/sbesson/followers","id":1355463,"repos_url":"https://api.github.com/users/sbesson/repos","subscriptions_url":"https://api.github.com/users/sbesson/subscriptions","following_url":"https://api.github.com/users/sbesson/following"},"issue_url":"https://github.com/openmicroscopy/ome-documentation/issues/226","merged_at":"2013-01-24T11:30:26Z","merge_commit_sha":"52db421dde8528dc7396473c98d351e0b0175951","created_at":"2013-01-23T21:11:40Z","review_comments_url":"https://github.com/openmicroscopy/ome-documentation/pull/226/comments","patch_url":"https://github.com/openmicroscopy/ome-documentation/pull/226.patch","html_url":"https://github.com/openmicroscopy/ome-documentation/pull/226","review_comment_url":"/repos/openmicroscopy/ome-documentation/pulls/comments/{number}","milestone":null,"body":"\n\nThis is the same as gh-225 but rebased onto develop.\n\n----\n\n\n\n ","diff_url":"https://github.com/openmicroscopy/ome-documentation/pull/226.diff","id":3808825,"base":{"user":null,"label":"openmicroscopy:develop","repo":{"forks":19,"svn_url":"https://github.com/openmicroscopy/ome-documentation","merges_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/merges","languages_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/languages","assignees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/openmicroscopy/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/statuses/{sha}","owner":{"type":"Organization","url":"https://api.github.com/users/openmicroscopy","received_events_url":"https://api.github.com/users/openmicroscopy/received_events","login":"openmicroscopy","events_url":"https://api.github.com/users/openmicroscopy/events{/privacy}","organizations_url":"https://api.github.com/users/openmicroscopy/orgs","avatar_url":"https://secure.gravatar.com/avatar/7424190904f55023bd16416af0fd799b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","starred_url":"https://api.github.com/users/openmicroscopy/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/openmicroscopy/gists{/gist_id}","gravatar_id":"7424190904f55023bd16416af0fd799b","followers_url":"https://api.github.com/users/openmicroscopy/followers","id":975861,"repos_url":"https://api.github.com/users/openmicroscopy/repos","subscriptions_url":"https://api.github.com/users/openmicroscopy/subscriptions","following_url":"https://api.github.com/users/openmicroscopy/following"},"open_issues":3,"updated_at":"2013-02-01T11:04:39Z","milestones_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/events","notifications_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/collaborators{/collaborator}","full_name":"openmicroscopy/ome-documentation","ssh_url":"git@github.com:openmicroscopy/ome-documentation.git","pulls_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":19,"subscription_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscription","teams_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/teams","watchers":9,"created_at":"2012-01-17T10:20:53Z","git_url":"git://github.com/openmicroscopy/ome-documentation.git","open_issues_count":3,"labels_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/keys{/key_id}","size":488,"compare_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/hooks","fork":false,"html_url":"https://github.com/openmicroscopy/ome-documentation","master_branch":"develop","clone_url":"https://github.com/openmicroscopy/ome-documentation.git","watchers_count":9,"git_refs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/events{/number}","private":false,"id":3198415,"default_branch":"develop","pushed_at":"2013-02-01T11:04:38Z","has_issues":true,"mirror_url":null,"trees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/forks"},"sha":"1ee47d5123ed947f97d6dce8385883e45549e4f0","ref":"develop"}},{"_links":{"comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/225/comments"},"issue":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/225"},"html":{"href":"https://github.com/openmicroscopy/ome-documentation/pull/225"},"self":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/225"},"review_comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/225/comments"}},"title":"Jenkins stable renaming","state":"closed","number":225,"url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/225","head":{"user":{"type":"User","url":"https://api.github.com/users/sbesson","received_events_url":"https://api.github.com/users/sbesson/received_events","login":"sbesson","events_url":"https://api.github.com/users/sbesson/events{/privacy}","organizations_url":"https://api.github.com/users/sbesson/orgs","avatar_url":"https://secure.gravatar.com/avatar/8ea0fde1295027db9d37e419ac10cbf4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/sbesson/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/sbesson/gists{/gist_id}","gravatar_id":"8ea0fde1295027db9d37e419ac10cbf4","followers_url":"https://api.github.com/users/sbesson/followers","id":1355463,"repos_url":"https://api.github.com/users/sbesson/repos","subscriptions_url":"https://api.github.com/users/sbesson/subscriptions","following_url":"https://api.github.com/users/sbesson/following"},"label":"sbesson:jenkins_stable_renaming","repo":{"forks":0,"svn_url":"https://github.com/sbesson/ome-documentation","merges_url":"https://api.github.com/repos/sbesson/ome-documentation/merges","languages_url":"https://api.github.com/repos/sbesson/ome-documentation/languages","assignees_url":"https://api.github.com/repos/sbesson/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/sbesson/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/sbesson/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/sbesson/ome-documentation/statuses/{sha}","owner":{"type":"User","url":"https://api.github.com/users/sbesson","received_events_url":"https://api.github.com/users/sbesson/received_events","login":"sbesson","events_url":"https://api.github.com/users/sbesson/events{/privacy}","organizations_url":"https://api.github.com/users/sbesson/orgs","avatar_url":"https://secure.gravatar.com/avatar/8ea0fde1295027db9d37e419ac10cbf4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/sbesson/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/sbesson/gists{/gist_id}","gravatar_id":"8ea0fde1295027db9d37e419ac10cbf4","followers_url":"https://api.github.com/users/sbesson/followers","id":1355463,"repos_url":"https://api.github.com/users/sbesson/repos","subscriptions_url":"https://api.github.com/users/sbesson/subscriptions","following_url":"https://api.github.com/users/sbesson/following"},"open_issues":0,"updated_at":"2013-02-02T21:21:49Z","milestones_url":"https://api.github.com/repos/sbesson/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/sbesson/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/sbesson/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/sbesson/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/sbesson/ome-documentation/events","notifications_url":"https://api.github.com/repos/sbesson/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/sbesson/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/sbesson/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/sbesson/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/sbesson/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/sbesson/ome-documentation/collaborators{/collaborator}","full_name":"sbesson/ome-documentation","ssh_url":"git@github.com:sbesson/ome-documentation.git","pulls_url":"https://api.github.com/repos/sbesson/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/sbesson/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/sbesson/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":0,"subscription_url":"https://api.github.com/repos/sbesson/ome-documentation/subscription","teams_url":"https://api.github.com/repos/sbesson/ome-documentation/teams","watchers":1,"created_at":"2012-08-22T08:57:59Z","git_url":"git://github.com/sbesson/ome-documentation.git","open_issues_count":0,"labels_url":"https://api.github.com/repos/sbesson/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/sbesson/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/sbesson/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/sbesson/ome-documentation/keys{/key_id}","size":608,"compare_url":"https://api.github.com/repos/sbesson/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/sbesson/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/sbesson/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/sbesson/ome-documentation/hooks","fork":true,"html_url":"https://github.com/sbesson/ome-documentation","master_branch":"dev_4_4","clone_url":"https://github.com/sbesson/ome-documentation.git","watchers_count":1,"git_refs_url":"https://api.github.com/repos/sbesson/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/sbesson/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/sbesson/ome-documentation/issues/events{/number}","private":false,"id":5507021,"default_branch":"dev_4_4","pushed_at":"2013-02-01T15:04:17Z","has_issues":false,"mirror_url":null,"trees_url":"https://api.github.com/repos/sbesson/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/sbesson/ome-documentation/forks"},"sha":"9b5531c3840a85b3244105a4fc975b9334a8a155","ref":"jenkins_stable_renaming"},"assignee":null,"updated_at":"2013-01-24T11:32:24Z","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/225/comments","commits_url":"https://github.com/openmicroscopy/ome-documentation/pull/225/commits","closed_at":"2013-01-24T11:32:24Z","user":{"type":"User","url":"https://api.github.com/users/sbesson","received_events_url":"https://api.github.com/users/sbesson/received_events","login":"sbesson","events_url":"https://api.github.com/users/sbesson/events{/privacy}","organizations_url":"https://api.github.com/users/sbesson/orgs","avatar_url":"https://secure.gravatar.com/avatar/8ea0fde1295027db9d37e419ac10cbf4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/sbesson/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/sbesson/gists{/gist_id}","gravatar_id":"8ea0fde1295027db9d37e419ac10cbf4","followers_url":"https://api.github.com/users/sbesson/followers","id":1355463,"repos_url":"https://api.github.com/users/sbesson/repos","subscriptions_url":"https://api.github.com/users/sbesson/subscriptions","following_url":"https://api.github.com/users/sbesson/following"},"issue_url":"https://github.com/openmicroscopy/ome-documentation/issues/225","merged_at":"2013-01-24T11:32:24Z","merge_commit_sha":"be00fe43dd7f26651f9ebe49f639a4174c5217a3","created_at":"2013-01-23T13:03:39Z","review_comments_url":"https://github.com/openmicroscopy/ome-documentation/pull/225/comments","patch_url":"https://github.com/openmicroscopy/ome-documentation/pull/225.patch","html_url":"https://github.com/openmicroscopy/ome-documentation/pull/225","review_comment_url":"/repos/openmicroscopy/ome-documentation/pulls/comments/{number}","milestone":null,"body":"","diff_url":"https://github.com/openmicroscopy/ome-documentation/pull/225.diff","id":3799374,"base":{"user":null,"label":"openmicroscopy:dev_4_4","repo":{"forks":19,"svn_url":"https://github.com/openmicroscopy/ome-documentation","merges_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/merges","languages_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/languages","assignees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/openmicroscopy/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/statuses/{sha}","owner":{"type":"Organization","url":"https://api.github.com/users/openmicroscopy","received_events_url":"https://api.github.com/users/openmicroscopy/received_events","login":"openmicroscopy","events_url":"https://api.github.com/users/openmicroscopy/events{/privacy}","organizations_url":"https://api.github.com/users/openmicroscopy/orgs","avatar_url":"https://secure.gravatar.com/avatar/7424190904f55023bd16416af0fd799b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","starred_url":"https://api.github.com/users/openmicroscopy/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/openmicroscopy/gists{/gist_id}","gravatar_id":"7424190904f55023bd16416af0fd799b","followers_url":"https://api.github.com/users/openmicroscopy/followers","id":975861,"repos_url":"https://api.github.com/users/openmicroscopy/repos","subscriptions_url":"https://api.github.com/users/openmicroscopy/subscriptions","following_url":"https://api.github.com/users/openmicroscopy/following"},"open_issues":3,"updated_at":"2013-02-01T11:04:39Z","milestones_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/events","notifications_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/collaborators{/collaborator}","full_name":"openmicroscopy/ome-documentation","ssh_url":"git@github.com:openmicroscopy/ome-documentation.git","pulls_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":19,"subscription_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscription","teams_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/teams","watchers":9,"created_at":"2012-01-17T10:20:53Z","git_url":"git://github.com/openmicroscopy/ome-documentation.git","open_issues_count":3,"labels_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/keys{/key_id}","size":488,"compare_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/hooks","fork":false,"html_url":"https://github.com/openmicroscopy/ome-documentation","master_branch":"develop","clone_url":"https://github.com/openmicroscopy/ome-documentation.git","watchers_count":9,"git_refs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/events{/number}","private":false,"id":3198415,"default_branch":"develop","pushed_at":"2013-02-01T11:04:38Z","has_issues":true,"mirror_url":null,"trees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/forks"},"sha":"1a5500adbd66f9c5c30b070bd5503b174478d02d","ref":"dev_4_4"}},{"_links":{"comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/223/comments"},"issue":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/223"},"html":{"href":"https://github.com/openmicroscopy/ome-documentation/pull/223"},"self":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/223"},"review_comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/223/comments"}},"title":"Editing developer intro pages (rebased onto develop)","state":"closed","number":223,"url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/223","head":{"user":{"type":"User","url":"https://api.github.com/users/hflynn","received_events_url":"https://api.github.com/users/hflynn/received_events","login":"hflynn","events_url":"https://api.github.com/users/hflynn/events{/privacy}","organizations_url":"https://api.github.com/users/hflynn/orgs","avatar_url":"https://secure.gravatar.com/avatar/0ee126d1abcd3c5b4f178b8d77af95ae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/hflynn/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/hflynn/gists{/gist_id}","gravatar_id":"0ee126d1abcd3c5b4f178b8d77af95ae","followers_url":"https://api.github.com/users/hflynn/followers","id":2368904,"repos_url":"https://api.github.com/users/hflynn/repos","subscriptions_url":"https://api.github.com/users/hflynn/subscriptions","following_url":"https://api.github.com/users/hflynn/following"},"label":"hflynn:rebased/develop/10212-fix","repo":{"forks":0,"svn_url":"https://github.com/hflynn/ome-documentation","merges_url":"https://api.github.com/repos/hflynn/ome-documentation/merges","languages_url":"https://api.github.com/repos/hflynn/ome-documentation/languages","assignees_url":"https://api.github.com/repos/hflynn/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/hflynn/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/hflynn/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/hflynn/ome-documentation/statuses/{sha}","owner":{"type":"User","url":"https://api.github.com/users/hflynn","received_events_url":"https://api.github.com/users/hflynn/received_events","login":"hflynn","events_url":"https://api.github.com/users/hflynn/events{/privacy}","organizations_url":"https://api.github.com/users/hflynn/orgs","avatar_url":"https://secure.gravatar.com/avatar/0ee126d1abcd3c5b4f178b8d77af95ae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/hflynn/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/hflynn/gists{/gist_id}","gravatar_id":"0ee126d1abcd3c5b4f178b8d77af95ae","followers_url":"https://api.github.com/users/hflynn/followers","id":2368904,"repos_url":"https://api.github.com/users/hflynn/repos","subscriptions_url":"https://api.github.com/users/hflynn/subscriptions","following_url":"https://api.github.com/users/hflynn/following"},"open_issues":0,"updated_at":"2013-02-01T17:31:59Z","milestones_url":"https://api.github.com/repos/hflynn/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/hflynn/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/hflynn/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/hflynn/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/hflynn/ome-documentation/events","notifications_url":"https://api.github.com/repos/hflynn/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/hflynn/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/hflynn/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/hflynn/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/hflynn/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/hflynn/ome-documentation/collaborators{/collaborator}","full_name":"hflynn/ome-documentation","ssh_url":"git@github.com:hflynn/ome-documentation.git","pulls_url":"https://api.github.com/repos/hflynn/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/hflynn/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/hflynn/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":0,"subscription_url":"https://api.github.com/repos/hflynn/ome-documentation/subscription","teams_url":"https://api.github.com/repos/hflynn/ome-documentation/teams","watchers":0,"created_at":"2012-09-18T09:22:07Z","git_url":"git://github.com/hflynn/ome-documentation.git","open_issues_count":0,"labels_url":"https://api.github.com/repos/hflynn/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/hflynn/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/hflynn/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/hflynn/ome-documentation/keys{/key_id}","size":340,"compare_url":"https://api.github.com/repos/hflynn/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/hflynn/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/hflynn/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/hflynn/ome-documentation/hooks","fork":true,"html_url":"https://github.com/hflynn/ome-documentation","master_branch":"develop","clone_url":"https://github.com/hflynn/ome-documentation.git","watchers_count":0,"git_refs_url":"https://api.github.com/repos/hflynn/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/hflynn/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/hflynn/ome-documentation/issues/events{/number}","private":false,"id":5853981,"default_branch":"develop","pushed_at":"2013-02-01T17:31:59Z","has_issues":false,"mirror_url":null,"trees_url":"https://api.github.com/repos/hflynn/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/hflynn/ome-documentation/forks"},"sha":"87ad0799b37d69a7f04c80fd10ba323f49dc3b05","ref":"rebased/develop/10212-fix"},"assignee":null,"updated_at":"2013-01-24T08:22:54Z","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/223/comments","commits_url":"https://github.com/openmicroscopy/ome-documentation/pull/223/commits","closed_at":"2013-01-24T08:22:54Z","user":{"type":"User","url":"https://api.github.com/users/hflynn","received_events_url":"https://api.github.com/users/hflynn/received_events","login":"hflynn","events_url":"https://api.github.com/users/hflynn/events{/privacy}","organizations_url":"https://api.github.com/users/hflynn/orgs","avatar_url":"https://secure.gravatar.com/avatar/0ee126d1abcd3c5b4f178b8d77af95ae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/hflynn/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/hflynn/gists{/gist_id}","gravatar_id":"0ee126d1abcd3c5b4f178b8d77af95ae","followers_url":"https://api.github.com/users/hflynn/followers","id":2368904,"repos_url":"https://api.github.com/users/hflynn/repos","subscriptions_url":"https://api.github.com/users/hflynn/subscriptions","following_url":"https://api.github.com/users/hflynn/following"},"issue_url":"https://github.com/openmicroscopy/ome-documentation/issues/223","merged_at":"2013-01-24T08:22:54Z","merge_commit_sha":"ae956e43674d9ffdaff44c112a7de63c4b70d7b5","created_at":"2013-01-23T10:21:17Z","review_comments_url":"https://github.com/openmicroscopy/ome-documentation/pull/223/comments","patch_url":"https://github.com/openmicroscopy/ome-documentation/pull/223.patch","html_url":"https://github.com/openmicroscopy/ome-documentation/pull/223","review_comment_url":"/repos/openmicroscopy/ome-documentation/pulls/comments/{number}","milestone":null,"body":"\n\nThis is the same as gh-219 but rebased onto develop.\n\n----\n\nSee tickets 10212 & 10199 \n\n ","diff_url":"https://github.com/openmicroscopy/ome-documentation/pull/223.diff","id":3797215,"base":{"user":null,"label":"openmicroscopy:develop","repo":{"forks":19,"svn_url":"https://github.com/openmicroscopy/ome-documentation","merges_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/merges","languages_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/languages","assignees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/openmicroscopy/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/statuses/{sha}","owner":{"type":"Organization","url":"https://api.github.com/users/openmicroscopy","received_events_url":"https://api.github.com/users/openmicroscopy/received_events","login":"openmicroscopy","events_url":"https://api.github.com/users/openmicroscopy/events{/privacy}","organizations_url":"https://api.github.com/users/openmicroscopy/orgs","avatar_url":"https://secure.gravatar.com/avatar/7424190904f55023bd16416af0fd799b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","starred_url":"https://api.github.com/users/openmicroscopy/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/openmicroscopy/gists{/gist_id}","gravatar_id":"7424190904f55023bd16416af0fd799b","followers_url":"https://api.github.com/users/openmicroscopy/followers","id":975861,"repos_url":"https://api.github.com/users/openmicroscopy/repos","subscriptions_url":"https://api.github.com/users/openmicroscopy/subscriptions","following_url":"https://api.github.com/users/openmicroscopy/following"},"open_issues":3,"updated_at":"2013-02-01T11:04:39Z","milestones_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/events","notifications_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/collaborators{/collaborator}","full_name":"openmicroscopy/ome-documentation","ssh_url":"git@github.com:openmicroscopy/ome-documentation.git","pulls_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":19,"subscription_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscription","teams_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/teams","watchers":9,"created_at":"2012-01-17T10:20:53Z","git_url":"git://github.com/openmicroscopy/ome-documentation.git","open_issues_count":3,"labels_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/keys{/key_id}","size":488,"compare_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/hooks","fork":false,"html_url":"https://github.com/openmicroscopy/ome-documentation","master_branch":"develop","clone_url":"https://github.com/openmicroscopy/ome-documentation.git","watchers_count":9,"git_refs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/events{/number}","private":false,"id":3198415,"default_branch":"develop","pushed_at":"2013-02-01T11:04:38Z","has_issues":true,"mirror_url":null,"trees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/forks"},"sha":"1ee47d5123ed947f97d6dce8385883e45549e4f0","ref":"develop"}},{"_links":{"comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/222/comments"},"issue":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/222"},"html":{"href":"https://github.com/openmicroscopy/ome-documentation/pull/222"},"self":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/222"},"review_comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/222/comments"}},"title":"\"Contributing to OMERO\" developer doc rework","state":"closed","number":222,"url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/222","head":{"user":{"type":"User","url":"https://api.github.com/users/joshmoore","received_events_url":"https://api.github.com/users/joshmoore/received_events","login":"joshmoore","events_url":"https://api.github.com/users/joshmoore/events{/privacy}","organizations_url":"https://api.github.com/users/joshmoore/orgs","avatar_url":"https://secure.gravatar.com/avatar/b9d1630a90131545c699075f73da092b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/joshmoore/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/joshmoore/gists{/gist_id}","gravatar_id":"b9d1630a90131545c699075f73da092b","followers_url":"https://api.github.com/users/joshmoore/followers","id":88113,"repos_url":"https://api.github.com/users/joshmoore/repos","subscriptions_url":"https://api.github.com/users/joshmoore/subscriptions","following_url":"https://api.github.com/users/joshmoore/following"},"label":"joshmoore:contrib-section","repo":{"forks":0,"svn_url":"https://github.com/joshmoore/ome-documentation","merges_url":"https://api.github.com/repos/joshmoore/ome-documentation/merges","languages_url":"https://api.github.com/repos/joshmoore/ome-documentation/languages","assignees_url":"https://api.github.com/repos/joshmoore/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/joshmoore/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/joshmoore/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/joshmoore/ome-documentation/statuses/{sha}","owner":{"type":"User","url":"https://api.github.com/users/joshmoore","received_events_url":"https://api.github.com/users/joshmoore/received_events","login":"joshmoore","events_url":"https://api.github.com/users/joshmoore/events{/privacy}","organizations_url":"https://api.github.com/users/joshmoore/orgs","avatar_url":"https://secure.gravatar.com/avatar/b9d1630a90131545c699075f73da092b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/joshmoore/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/joshmoore/gists{/gist_id}","gravatar_id":"b9d1630a90131545c699075f73da092b","followers_url":"https://api.github.com/users/joshmoore/followers","id":88113,"repos_url":"https://api.github.com/users/joshmoore/repos","subscriptions_url":"https://api.github.com/users/joshmoore/subscriptions","following_url":"https://api.github.com/users/joshmoore/following"},"open_issues":0,"updated_at":"2013-02-01T11:33:14Z","milestones_url":"https://api.github.com/repos/joshmoore/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/joshmoore/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/joshmoore/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/joshmoore/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/joshmoore/ome-documentation/events","notifications_url":"https://api.github.com/repos/joshmoore/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/joshmoore/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/joshmoore/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/joshmoore/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/joshmoore/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/joshmoore/ome-documentation/collaborators{/collaborator}","full_name":"joshmoore/ome-documentation","ssh_url":"git@github.com:joshmoore/ome-documentation.git","pulls_url":"https://api.github.com/repos/joshmoore/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/joshmoore/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/joshmoore/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":0,"subscription_url":"https://api.github.com/repos/joshmoore/ome-documentation/subscription","teams_url":"https://api.github.com/repos/joshmoore/ome-documentation/teams","watchers":1,"created_at":"2012-03-01T09:53:37Z","git_url":"git://github.com/joshmoore/ome-documentation.git","open_issues_count":0,"labels_url":"https://api.github.com/repos/joshmoore/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/joshmoore/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/joshmoore/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/joshmoore/ome-documentation/keys{/key_id}","size":780,"compare_url":"https://api.github.com/repos/joshmoore/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/joshmoore/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/joshmoore/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/joshmoore/ome-documentation/hooks","fork":true,"html_url":"https://github.com/joshmoore/ome-documentation","clone_url":"https://github.com/joshmoore/ome-documentation.git","watchers_count":1,"git_refs_url":"https://api.github.com/repos/joshmoore/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/joshmoore/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/joshmoore/ome-documentation/issues/events{/number}","private":false,"id":3590779,"pushed_at":"2013-01-31T11:56:02Z","has_issues":false,"mirror_url":null,"trees_url":"https://api.github.com/repos/joshmoore/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/joshmoore/ome-documentation/forks"},"sha":"ae1269389be0d50832b996ed60dd2a471596bff7","ref":"contrib-section"},"assignee":null,"updated_at":"2013-01-23T11:22:23Z","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/222/comments","commits_url":"https://github.com/openmicroscopy/ome-documentation/pull/222/commits","closed_at":"2013-01-23T11:09:39Z","user":{"type":"User","url":"https://api.github.com/users/joshmoore","received_events_url":"https://api.github.com/users/joshmoore/received_events","login":"joshmoore","events_url":"https://api.github.com/users/joshmoore/events{/privacy}","organizations_url":"https://api.github.com/users/joshmoore/orgs","avatar_url":"https://secure.gravatar.com/avatar/b9d1630a90131545c699075f73da092b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/joshmoore/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/joshmoore/gists{/gist_id}","gravatar_id":"b9d1630a90131545c699075f73da092b","followers_url":"https://api.github.com/users/joshmoore/followers","id":88113,"repos_url":"https://api.github.com/users/joshmoore/repos","subscriptions_url":"https://api.github.com/users/joshmoore/subscriptions","following_url":"https://api.github.com/users/joshmoore/following"},"issue_url":"https://github.com/openmicroscopy/ome-documentation/issues/222","merged_at":"2013-01-23T11:09:38Z","merge_commit_sha":"e33c326a3616d0cd16f6da980c8320e84eb1380a","created_at":"2013-01-21T10:29:38Z","review_comments_url":"https://github.com/openmicroscopy/ome-documentation/pull/222/comments","patch_url":"https://github.com/openmicroscopy/ome-documentation/pull/222.patch","html_url":"https://github.com/openmicroscopy/ome-documentation/pull/222","review_comment_url":"/repos/openmicroscopy/ome-documentation/pulls/comments/{number}","milestone":null,"body":"\r\n * Rename files to follow abc-xyz.txt standard\r\n * Reduce the number of individual files\r\n * Improve the order of files for external developers\r\n * Improve the order of sections in some files\r\n * Drop UsingGitFlow\r\n\r\nLooking at developers/index.txt and developers/contributing.txt\r\nit's still not completely clear 1) that a developer should REALLY\r\nread the \"contributing\" section, nor 2) once they've opened up\r\ncontributing.txt which sections are highly important.\r\n\r\nNB: very little has been done in the way of optimizing the PDF","diff_url":"https://github.com/openmicroscopy/ome-documentation/pull/222.diff","id":3760655,"base":{"user":null,"label":"openmicroscopy:dev_4_4","repo":{"forks":19,"svn_url":"https://github.com/openmicroscopy/ome-documentation","merges_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/merges","languages_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/languages","assignees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/openmicroscopy/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/statuses/{sha}","owner":{"type":"Organization","url":"https://api.github.com/users/openmicroscopy","received_events_url":"https://api.github.com/users/openmicroscopy/received_events","login":"openmicroscopy","events_url":"https://api.github.com/users/openmicroscopy/events{/privacy}","organizations_url":"https://api.github.com/users/openmicroscopy/orgs","avatar_url":"https://secure.gravatar.com/avatar/7424190904f55023bd16416af0fd799b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","starred_url":"https://api.github.com/users/openmicroscopy/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/openmicroscopy/gists{/gist_id}","gravatar_id":"7424190904f55023bd16416af0fd799b","followers_url":"https://api.github.com/users/openmicroscopy/followers","id":975861,"repos_url":"https://api.github.com/users/openmicroscopy/repos","subscriptions_url":"https://api.github.com/users/openmicroscopy/subscriptions","following_url":"https://api.github.com/users/openmicroscopy/following"},"open_issues":3,"updated_at":"2013-02-01T11:04:39Z","milestones_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/events","notifications_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/collaborators{/collaborator}","full_name":"openmicroscopy/ome-documentation","ssh_url":"git@github.com:openmicroscopy/ome-documentation.git","pulls_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":19,"subscription_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscription","teams_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/teams","watchers":9,"created_at":"2012-01-17T10:20:53Z","git_url":"git://github.com/openmicroscopy/ome-documentation.git","open_issues_count":3,"labels_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/keys{/key_id}","size":488,"compare_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/hooks","fork":false,"html_url":"https://github.com/openmicroscopy/ome-documentation","master_branch":"develop","clone_url":"https://github.com/openmicroscopy/ome-documentation.git","watchers_count":9,"git_refs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/events{/number}","private":false,"id":3198415,"default_branch":"develop","pushed_at":"2013-02-01T11:04:38Z","has_issues":true,"mirror_url":null,"trees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/forks"},"sha":"7be161a4ff322bd3741145a7d8fab53f34944e10","ref":"dev_4_4"}},{"_links":{"comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/221/comments"},"issue":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/221"},"html":{"href":"https://github.com/openmicroscopy/ome-documentation/pull/221"},"self":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/221"},"review_comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/221/comments"}},"title":"Fixing ticket 10174 (rebased onto develop)","state":"closed","number":221,"url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/221","head":{"user":{"type":"User","url":"https://api.github.com/users/hflynn","received_events_url":"https://api.github.com/users/hflynn/received_events","login":"hflynn","events_url":"https://api.github.com/users/hflynn/events{/privacy}","organizations_url":"https://api.github.com/users/hflynn/orgs","avatar_url":"https://secure.gravatar.com/avatar/0ee126d1abcd3c5b4f178b8d77af95ae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/hflynn/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/hflynn/gists{/gist_id}","gravatar_id":"0ee126d1abcd3c5b4f178b8d77af95ae","followers_url":"https://api.github.com/users/hflynn/followers","id":2368904,"repos_url":"https://api.github.com/users/hflynn/repos","subscriptions_url":"https://api.github.com/users/hflynn/subscriptions","following_url":"https://api.github.com/users/hflynn/following"},"label":"hflynn:rebased/develop/10174-fix","repo":{"forks":0,"svn_url":"https://github.com/hflynn/ome-documentation","merges_url":"https://api.github.com/repos/hflynn/ome-documentation/merges","languages_url":"https://api.github.com/repos/hflynn/ome-documentation/languages","assignees_url":"https://api.github.com/repos/hflynn/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/hflynn/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/hflynn/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/hflynn/ome-documentation/statuses/{sha}","owner":{"type":"User","url":"https://api.github.com/users/hflynn","received_events_url":"https://api.github.com/users/hflynn/received_events","login":"hflynn","events_url":"https://api.github.com/users/hflynn/events{/privacy}","organizations_url":"https://api.github.com/users/hflynn/orgs","avatar_url":"https://secure.gravatar.com/avatar/0ee126d1abcd3c5b4f178b8d77af95ae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/hflynn/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/hflynn/gists{/gist_id}","gravatar_id":"0ee126d1abcd3c5b4f178b8d77af95ae","followers_url":"https://api.github.com/users/hflynn/followers","id":2368904,"repos_url":"https://api.github.com/users/hflynn/repos","subscriptions_url":"https://api.github.com/users/hflynn/subscriptions","following_url":"https://api.github.com/users/hflynn/following"},"open_issues":0,"updated_at":"2013-02-01T17:31:59Z","milestones_url":"https://api.github.com/repos/hflynn/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/hflynn/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/hflynn/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/hflynn/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/hflynn/ome-documentation/events","notifications_url":"https://api.github.com/repos/hflynn/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/hflynn/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/hflynn/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/hflynn/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/hflynn/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/hflynn/ome-documentation/collaborators{/collaborator}","full_name":"hflynn/ome-documentation","ssh_url":"git@github.com:hflynn/ome-documentation.git","pulls_url":"https://api.github.com/repos/hflynn/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/hflynn/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/hflynn/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":0,"subscription_url":"https://api.github.com/repos/hflynn/ome-documentation/subscription","teams_url":"https://api.github.com/repos/hflynn/ome-documentation/teams","watchers":0,"created_at":"2012-09-18T09:22:07Z","git_url":"git://github.com/hflynn/ome-documentation.git","open_issues_count":0,"labels_url":"https://api.github.com/repos/hflynn/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/hflynn/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/hflynn/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/hflynn/ome-documentation/keys{/key_id}","size":340,"compare_url":"https://api.github.com/repos/hflynn/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/hflynn/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/hflynn/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/hflynn/ome-documentation/hooks","fork":true,"html_url":"https://github.com/hflynn/ome-documentation","master_branch":"develop","clone_url":"https://github.com/hflynn/ome-documentation.git","watchers_count":0,"git_refs_url":"https://api.github.com/repos/hflynn/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/hflynn/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/hflynn/ome-documentation/issues/events{/number}","private":false,"id":5853981,"default_branch":"develop","pushed_at":"2013-02-01T17:31:59Z","has_issues":false,"mirror_url":null,"trees_url":"https://api.github.com/repos/hflynn/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/hflynn/ome-documentation/forks"},"sha":"8e4e5d0556408ac09504785b4e5a72e0e2433b0c","ref":"rebased/develop/10174-fix"},"assignee":null,"updated_at":"2013-01-23T09:49:35Z","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/221/comments","commits_url":"https://github.com/openmicroscopy/ome-documentation/pull/221/commits","closed_at":"2013-01-23T09:03:06Z","user":{"type":"User","url":"https://api.github.com/users/hflynn","received_events_url":"https://api.github.com/users/hflynn/received_events","login":"hflynn","events_url":"https://api.github.com/users/hflynn/events{/privacy}","organizations_url":"https://api.github.com/users/hflynn/orgs","avatar_url":"https://secure.gravatar.com/avatar/0ee126d1abcd3c5b4f178b8d77af95ae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/hflynn/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/hflynn/gists{/gist_id}","gravatar_id":"0ee126d1abcd3c5b4f178b8d77af95ae","followers_url":"https://api.github.com/users/hflynn/followers","id":2368904,"repos_url":"https://api.github.com/users/hflynn/repos","subscriptions_url":"https://api.github.com/users/hflynn/subscriptions","following_url":"https://api.github.com/users/hflynn/following"},"issue_url":"https://github.com/openmicroscopy/ome-documentation/issues/221","merged_at":"2013-01-23T09:03:06Z","merge_commit_sha":"188beb24525eb3e00974dcb9dfb560f4d09b6b3b","created_at":"2013-01-21T10:02:23Z","review_comments_url":"https://github.com/openmicroscopy/ome-documentation/pull/221/comments","patch_url":"https://github.com/openmicroscopy/ome-documentation/pull/221.patch","html_url":"https://github.com/openmicroscopy/ome-documentation/pull/221","review_comment_url":"/repos/openmicroscopy/ome-documentation/pulls/comments/{number}","milestone":null,"body":"\n\nThis is the same as gh-212 but rebased onto develop.\n\n----\n\n\n\n ","diff_url":"https://github.com/openmicroscopy/ome-documentation/pull/221.diff","id":3760344,"base":{"user":null,"label":"openmicroscopy:develop","repo":{"forks":19,"svn_url":"https://github.com/openmicroscopy/ome-documentation","merges_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/merges","languages_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/languages","assignees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/openmicroscopy/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/statuses/{sha}","owner":{"type":"Organization","url":"https://api.github.com/users/openmicroscopy","received_events_url":"https://api.github.com/users/openmicroscopy/received_events","login":"openmicroscopy","events_url":"https://api.github.com/users/openmicroscopy/events{/privacy}","organizations_url":"https://api.github.com/users/openmicroscopy/orgs","avatar_url":"https://secure.gravatar.com/avatar/7424190904f55023bd16416af0fd799b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","starred_url":"https://api.github.com/users/openmicroscopy/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/openmicroscopy/gists{/gist_id}","gravatar_id":"7424190904f55023bd16416af0fd799b","followers_url":"https://api.github.com/users/openmicroscopy/followers","id":975861,"repos_url":"https://api.github.com/users/openmicroscopy/repos","subscriptions_url":"https://api.github.com/users/openmicroscopy/subscriptions","following_url":"https://api.github.com/users/openmicroscopy/following"},"open_issues":3,"updated_at":"2013-02-01T11:04:39Z","milestones_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/events","notifications_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/collaborators{/collaborator}","full_name":"openmicroscopy/ome-documentation","ssh_url":"git@github.com:openmicroscopy/ome-documentation.git","pulls_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":19,"subscription_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscription","teams_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/teams","watchers":9,"created_at":"2012-01-17T10:20:53Z","git_url":"git://github.com/openmicroscopy/ome-documentation.git","open_issues_count":3,"labels_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/keys{/key_id}","size":488,"compare_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/hooks","fork":false,"html_url":"https://github.com/openmicroscopy/ome-documentation","master_branch":"develop","clone_url":"https://github.com/openmicroscopy/ome-documentation.git","watchers_count":9,"git_refs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/events{/number}","private":false,"id":3198415,"default_branch":"develop","pushed_at":"2013-02-01T11:04:38Z","has_issues":true,"mirror_url":null,"trees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/forks"},"sha":"136309257792c0f721d9eda8a6e64d6631c4fcc8","ref":"develop"}},{"_links":{"comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/220/comments"},"issue":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/220"},"html":{"href":"https://github.com/openmicroscopy/ome-documentation/pull/220"},"self":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/220"},"review_comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/220/comments"}},"title":"Continuous integration (rebased onto develop)","state":"closed","number":220,"url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/220","head":{"user":{"type":"User","url":"https://api.github.com/users/sbesson","received_events_url":"https://api.github.com/users/sbesson/received_events","login":"sbesson","events_url":"https://api.github.com/users/sbesson/events{/privacy}","organizations_url":"https://api.github.com/users/sbesson/orgs","avatar_url":"https://secure.gravatar.com/avatar/8ea0fde1295027db9d37e419ac10cbf4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/sbesson/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/sbesson/gists{/gist_id}","gravatar_id":"8ea0fde1295027db9d37e419ac10cbf4","followers_url":"https://api.github.com/users/sbesson/followers","id":1355463,"repos_url":"https://api.github.com/users/sbesson/repos","subscriptions_url":"https://api.github.com/users/sbesson/subscriptions","following_url":"https://api.github.com/users/sbesson/following"},"label":"sbesson:rebased/develop/continuous_integration","repo":{"forks":0,"svn_url":"https://github.com/sbesson/ome-documentation","merges_url":"https://api.github.com/repos/sbesson/ome-documentation/merges","languages_url":"https://api.github.com/repos/sbesson/ome-documentation/languages","assignees_url":"https://api.github.com/repos/sbesson/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/sbesson/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/sbesson/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/sbesson/ome-documentation/statuses/{sha}","owner":{"type":"User","url":"https://api.github.com/users/sbesson","received_events_url":"https://api.github.com/users/sbesson/received_events","login":"sbesson","events_url":"https://api.github.com/users/sbesson/events{/privacy}","organizations_url":"https://api.github.com/users/sbesson/orgs","avatar_url":"https://secure.gravatar.com/avatar/8ea0fde1295027db9d37e419ac10cbf4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/sbesson/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/sbesson/gists{/gist_id}","gravatar_id":"8ea0fde1295027db9d37e419ac10cbf4","followers_url":"https://api.github.com/users/sbesson/followers","id":1355463,"repos_url":"https://api.github.com/users/sbesson/repos","subscriptions_url":"https://api.github.com/users/sbesson/subscriptions","following_url":"https://api.github.com/users/sbesson/following"},"open_issues":0,"updated_at":"2013-02-02T21:21:49Z","milestones_url":"https://api.github.com/repos/sbesson/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/sbesson/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/sbesson/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/sbesson/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/sbesson/ome-documentation/events","notifications_url":"https://api.github.com/repos/sbesson/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/sbesson/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/sbesson/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/sbesson/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/sbesson/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/sbesson/ome-documentation/collaborators{/collaborator}","full_name":"sbesson/ome-documentation","ssh_url":"git@github.com:sbesson/ome-documentation.git","pulls_url":"https://api.github.com/repos/sbesson/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/sbesson/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/sbesson/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":0,"subscription_url":"https://api.github.com/repos/sbesson/ome-documentation/subscription","teams_url":"https://api.github.com/repos/sbesson/ome-documentation/teams","watchers":1,"created_at":"2012-08-22T08:57:59Z","git_url":"git://github.com/sbesson/ome-documentation.git","open_issues_count":0,"labels_url":"https://api.github.com/repos/sbesson/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/sbesson/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/sbesson/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/sbesson/ome-documentation/keys{/key_id}","size":608,"compare_url":"https://api.github.com/repos/sbesson/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/sbesson/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/sbesson/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/sbesson/ome-documentation/hooks","fork":true,"html_url":"https://github.com/sbesson/ome-documentation","master_branch":"dev_4_4","clone_url":"https://github.com/sbesson/ome-documentation.git","watchers_count":1,"git_refs_url":"https://api.github.com/repos/sbesson/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/sbesson/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/sbesson/ome-documentation/issues/events{/number}","private":false,"id":5507021,"default_branch":"dev_4_4","pushed_at":"2013-02-01T15:04:17Z","has_issues":false,"mirror_url":null,"trees_url":"https://api.github.com/repos/sbesson/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/sbesson/ome-documentation/forks"},"sha":"432b6333c5411899f95537d3c89b75ecf165baa5","ref":"rebased/develop/continuous_integration"},"assignee":null,"updated_at":"2013-01-21T13:37:17Z","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/220/comments","commits_url":"https://github.com/openmicroscopy/ome-documentation/pull/220/commits","closed_at":"2013-01-21T13:37:17Z","user":{"type":"User","url":"https://api.github.com/users/sbesson","received_events_url":"https://api.github.com/users/sbesson/received_events","login":"sbesson","events_url":"https://api.github.com/users/sbesson/events{/privacy}","organizations_url":"https://api.github.com/users/sbesson/orgs","avatar_url":"https://secure.gravatar.com/avatar/8ea0fde1295027db9d37e419ac10cbf4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/sbesson/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/sbesson/gists{/gist_id}","gravatar_id":"8ea0fde1295027db9d37e419ac10cbf4","followers_url":"https://api.github.com/users/sbesson/followers","id":1355463,"repos_url":"https://api.github.com/users/sbesson/repos","subscriptions_url":"https://api.github.com/users/sbesson/subscriptions","following_url":"https://api.github.com/users/sbesson/following"},"issue_url":"https://github.com/openmicroscopy/ome-documentation/issues/220","merged_at":"2013-01-21T13:37:17Z","merge_commit_sha":"f51f26057a5008b204554bb4e214d356825b92f1","created_at":"2013-01-18T17:27:26Z","review_comments_url":"https://github.com/openmicroscopy/ome-documentation/pull/220/comments","patch_url":"https://github.com/openmicroscopy/ome-documentation/pull/220.patch","html_url":"https://github.com/openmicroscopy/ome-documentation/pull/220","review_comment_url":"/repos/openmicroscopy/ome-documentation/pulls/comments/{number}","milestone":null,"body":"\n\nThis is the same as gh-196 but rebased onto develop.\n\n----\n\nThis PR converts the [Multiple development branch g.doc](https://docs.google.com/document/d/1LZkxRgzrfVcKttST2d1pNuViPXClb9ssD7Bvt1osRaQ/edit) into a proper Sphinx documentation page.\r\n\r\nObjectives of this document:\r\n- explain the dual development branch strategy\r\n- describe the main Jenkins jobs used for testing the current & next major release\r\n- introduce & describe some of the scc utility tools for managing branches & PRs\r\n\n\n ","diff_url":"https://github.com/openmicroscopy/ome-documentation/pull/220.diff","id":3742302,"base":{"user":null,"label":"openmicroscopy:develop","repo":{"forks":19,"svn_url":"https://github.com/openmicroscopy/ome-documentation","merges_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/merges","languages_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/languages","assignees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/openmicroscopy/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/statuses/{sha}","owner":{"type":"Organization","url":"https://api.github.com/users/openmicroscopy","received_events_url":"https://api.github.com/users/openmicroscopy/received_events","login":"openmicroscopy","events_url":"https://api.github.com/users/openmicroscopy/events{/privacy}","organizations_url":"https://api.github.com/users/openmicroscopy/orgs","avatar_url":"https://secure.gravatar.com/avatar/7424190904f55023bd16416af0fd799b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","starred_url":"https://api.github.com/users/openmicroscopy/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/openmicroscopy/gists{/gist_id}","gravatar_id":"7424190904f55023bd16416af0fd799b","followers_url":"https://api.github.com/users/openmicroscopy/followers","id":975861,"repos_url":"https://api.github.com/users/openmicroscopy/repos","subscriptions_url":"https://api.github.com/users/openmicroscopy/subscriptions","following_url":"https://api.github.com/users/openmicroscopy/following"},"open_issues":3,"updated_at":"2013-02-01T11:04:39Z","milestones_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/events","notifications_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/collaborators{/collaborator}","full_name":"openmicroscopy/ome-documentation","ssh_url":"git@github.com:openmicroscopy/ome-documentation.git","pulls_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":19,"subscription_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscription","teams_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/teams","watchers":9,"created_at":"2012-01-17T10:20:53Z","git_url":"git://github.com/openmicroscopy/ome-documentation.git","open_issues_count":3,"labels_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/keys{/key_id}","size":488,"compare_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/hooks","fork":false,"html_url":"https://github.com/openmicroscopy/ome-documentation","master_branch":"develop","clone_url":"https://github.com/openmicroscopy/ome-documentation.git","watchers_count":9,"git_refs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/events{/number}","private":false,"id":3198415,"default_branch":"develop","pushed_at":"2013-02-01T11:04:38Z","has_issues":true,"mirror_url":null,"trees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/forks"},"sha":"136309257792c0f721d9eda8a6e64d6631c4fcc8","ref":"develop"}},{"_links":{"comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/219/comments"},"issue":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/219"},"html":{"href":"https://github.com/openmicroscopy/ome-documentation/pull/219"},"self":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/219"},"review_comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/219/comments"}},"title":"Editing developer intro pages","state":"closed","number":219,"url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/219","head":{"user":{"type":"User","url":"https://api.github.com/users/hflynn","received_events_url":"https://api.github.com/users/hflynn/received_events","login":"hflynn","events_url":"https://api.github.com/users/hflynn/events{/privacy}","organizations_url":"https://api.github.com/users/hflynn/orgs","avatar_url":"https://secure.gravatar.com/avatar/0ee126d1abcd3c5b4f178b8d77af95ae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/hflynn/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/hflynn/gists{/gist_id}","gravatar_id":"0ee126d1abcd3c5b4f178b8d77af95ae","followers_url":"https://api.github.com/users/hflynn/followers","id":2368904,"repos_url":"https://api.github.com/users/hflynn/repos","subscriptions_url":"https://api.github.com/users/hflynn/subscriptions","following_url":"https://api.github.com/users/hflynn/following"},"label":"hflynn:10212-fix","repo":{"forks":0,"svn_url":"https://github.com/hflynn/ome-documentation","merges_url":"https://api.github.com/repos/hflynn/ome-documentation/merges","languages_url":"https://api.github.com/repos/hflynn/ome-documentation/languages","assignees_url":"https://api.github.com/repos/hflynn/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/hflynn/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/hflynn/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/hflynn/ome-documentation/statuses/{sha}","owner":{"type":"User","url":"https://api.github.com/users/hflynn","received_events_url":"https://api.github.com/users/hflynn/received_events","login":"hflynn","events_url":"https://api.github.com/users/hflynn/events{/privacy}","organizations_url":"https://api.github.com/users/hflynn/orgs","avatar_url":"https://secure.gravatar.com/avatar/0ee126d1abcd3c5b4f178b8d77af95ae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/hflynn/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/hflynn/gists{/gist_id}","gravatar_id":"0ee126d1abcd3c5b4f178b8d77af95ae","followers_url":"https://api.github.com/users/hflynn/followers","id":2368904,"repos_url":"https://api.github.com/users/hflynn/repos","subscriptions_url":"https://api.github.com/users/hflynn/subscriptions","following_url":"https://api.github.com/users/hflynn/following"},"open_issues":0,"updated_at":"2013-02-01T17:31:59Z","milestones_url":"https://api.github.com/repos/hflynn/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/hflynn/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/hflynn/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/hflynn/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/hflynn/ome-documentation/events","notifications_url":"https://api.github.com/repos/hflynn/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/hflynn/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/hflynn/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/hflynn/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/hflynn/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/hflynn/ome-documentation/collaborators{/collaborator}","full_name":"hflynn/ome-documentation","ssh_url":"git@github.com:hflynn/ome-documentation.git","pulls_url":"https://api.github.com/repos/hflynn/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/hflynn/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/hflynn/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":0,"subscription_url":"https://api.github.com/repos/hflynn/ome-documentation/subscription","teams_url":"https://api.github.com/repos/hflynn/ome-documentation/teams","watchers":0,"created_at":"2012-09-18T09:22:07Z","git_url":"git://github.com/hflynn/ome-documentation.git","open_issues_count":0,"labels_url":"https://api.github.com/repos/hflynn/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/hflynn/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/hflynn/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/hflynn/ome-documentation/keys{/key_id}","size":340,"compare_url":"https://api.github.com/repos/hflynn/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/hflynn/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/hflynn/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/hflynn/ome-documentation/hooks","fork":true,"html_url":"https://github.com/hflynn/ome-documentation","master_branch":"develop","clone_url":"https://github.com/hflynn/ome-documentation.git","watchers_count":0,"git_refs_url":"https://api.github.com/repos/hflynn/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/hflynn/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/hflynn/ome-documentation/issues/events{/number}","private":false,"id":5853981,"default_branch":"develop","pushed_at":"2013-02-01T17:31:59Z","has_issues":false,"mirror_url":null,"trees_url":"https://api.github.com/repos/hflynn/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/hflynn/ome-documentation/forks"},"sha":"da1e4f93f741fd561c26b904d87f1962f82b9762","ref":"10212-fix"},"assignee":null,"updated_at":"2013-01-22T18:17:14Z","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/219/comments","commits_url":"https://github.com/openmicroscopy/ome-documentation/pull/219/commits","closed_at":"2013-01-22T18:17:14Z","user":{"type":"User","url":"https://api.github.com/users/hflynn","received_events_url":"https://api.github.com/users/hflynn/received_events","login":"hflynn","events_url":"https://api.github.com/users/hflynn/events{/privacy}","organizations_url":"https://api.github.com/users/hflynn/orgs","avatar_url":"https://secure.gravatar.com/avatar/0ee126d1abcd3c5b4f178b8d77af95ae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/hflynn/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/hflynn/gists{/gist_id}","gravatar_id":"0ee126d1abcd3c5b4f178b8d77af95ae","followers_url":"https://api.github.com/users/hflynn/followers","id":2368904,"repos_url":"https://api.github.com/users/hflynn/repos","subscriptions_url":"https://api.github.com/users/hflynn/subscriptions","following_url":"https://api.github.com/users/hflynn/following"},"issue_url":"https://github.com/openmicroscopy/ome-documentation/issues/219","merged_at":"2013-01-22T18:17:14Z","merge_commit_sha":"b975c011df85c43237f810b7c03472c37b1249d4","created_at":"2013-01-18T12:13:33Z","review_comments_url":"https://github.com/openmicroscopy/ome-documentation/pull/219/comments","patch_url":"https://github.com/openmicroscopy/ome-documentation/pull/219.patch","html_url":"https://github.com/openmicroscopy/ome-documentation/pull/219","review_comment_url":"/repos/openmicroscopy/ome-documentation/pulls/comments/{number}","milestone":null,"body":"See tickets 10212 & 10199 ","diff_url":"https://github.com/openmicroscopy/ome-documentation/pull/219.diff","id":3737282,"base":{"user":null,"label":"openmicroscopy:dev_4_4","repo":{"forks":19,"svn_url":"https://github.com/openmicroscopy/ome-documentation","merges_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/merges","languages_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/languages","assignees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/openmicroscopy/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/statuses/{sha}","owner":{"type":"Organization","url":"https://api.github.com/users/openmicroscopy","received_events_url":"https://api.github.com/users/openmicroscopy/received_events","login":"openmicroscopy","events_url":"https://api.github.com/users/openmicroscopy/events{/privacy}","organizations_url":"https://api.github.com/users/openmicroscopy/orgs","avatar_url":"https://secure.gravatar.com/avatar/7424190904f55023bd16416af0fd799b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","starred_url":"https://api.github.com/users/openmicroscopy/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/openmicroscopy/gists{/gist_id}","gravatar_id":"7424190904f55023bd16416af0fd799b","followers_url":"https://api.github.com/users/openmicroscopy/followers","id":975861,"repos_url":"https://api.github.com/users/openmicroscopy/repos","subscriptions_url":"https://api.github.com/users/openmicroscopy/subscriptions","following_url":"https://api.github.com/users/openmicroscopy/following"},"open_issues":3,"updated_at":"2013-02-01T11:04:39Z","milestones_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/events","notifications_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/collaborators{/collaborator}","full_name":"openmicroscopy/ome-documentation","ssh_url":"git@github.com:openmicroscopy/ome-documentation.git","pulls_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":19,"subscription_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscription","teams_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/teams","watchers":9,"created_at":"2012-01-17T10:20:53Z","git_url":"git://github.com/openmicroscopy/ome-documentation.git","open_issues_count":3,"labels_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/keys{/key_id}","size":488,"compare_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/hooks","fork":false,"html_url":"https://github.com/openmicroscopy/ome-documentation","master_branch":"develop","clone_url":"https://github.com/openmicroscopy/ome-documentation.git","watchers_count":9,"git_refs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/events{/number}","private":false,"id":3198415,"default_branch":"develop","pushed_at":"2013-02-01T11:04:38Z","has_issues":true,"mirror_url":null,"trees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/forks"},"sha":"1843d7a435646ed07dd56821b5d9ba02105cd716","ref":"dev_4_4"}},{"_links":{"comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/218/comments"},"issue":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/218"},"html":{"href":"https://github.com/openmicroscopy/ome-documentation/pull/218"},"self":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/218"},"review_comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/218/comments"}},"title":"Make the copyright date the current year (rebased onto develop)","state":"closed","number":218,"url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/218","head":{"user":{"type":"User","url":"https://api.github.com/users/bpindelski","received_events_url":"https://api.github.com/users/bpindelski/received_events","login":"bpindelski","events_url":"https://api.github.com/users/bpindelski/events{/privacy}","organizations_url":"https://api.github.com/users/bpindelski/orgs","avatar_url":"https://secure.gravatar.com/avatar/3c0a5e3c2c6d2f8117bbe6e08c930874?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/bpindelski/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/bpindelski/gists{/gist_id}","gravatar_id":"3c0a5e3c2c6d2f8117bbe6e08c930874","followers_url":"https://api.github.com/users/bpindelski/followers","id":1692189,"repos_url":"https://api.github.com/users/bpindelski/repos","subscriptions_url":"https://api.github.com/users/bpindelski/subscriptions","following_url":"https://api.github.com/users/bpindelski/following"},"label":"bpindelski:rebased/develop/doc-date","repo":{"forks":1,"svn_url":"https://github.com/bpindelski/ome-documentation","merges_url":"https://api.github.com/repos/bpindelski/ome-documentation/merges","languages_url":"https://api.github.com/repos/bpindelski/ome-documentation/languages","assignees_url":"https://api.github.com/repos/bpindelski/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/bpindelski/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/bpindelski/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/bpindelski/ome-documentation/statuses/{sha}","owner":{"type":"User","url":"https://api.github.com/users/bpindelski","received_events_url":"https://api.github.com/users/bpindelski/received_events","login":"bpindelski","events_url":"https://api.github.com/users/bpindelski/events{/privacy}","organizations_url":"https://api.github.com/users/bpindelski/orgs","avatar_url":"https://secure.gravatar.com/avatar/3c0a5e3c2c6d2f8117bbe6e08c930874?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/bpindelski/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/bpindelski/gists{/gist_id}","gravatar_id":"3c0a5e3c2c6d2f8117bbe6e08c930874","followers_url":"https://api.github.com/users/bpindelski/followers","id":1692189,"repos_url":"https://api.github.com/users/bpindelski/repos","subscriptions_url":"https://api.github.com/users/bpindelski/subscriptions","following_url":"https://api.github.com/users/bpindelski/following"},"open_issues":0,"updated_at":"2013-01-22T10:13:55Z","milestones_url":"https://api.github.com/repos/bpindelski/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/bpindelski/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/bpindelski/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/bpindelski/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/bpindelski/ome-documentation/events","notifications_url":"https://api.github.com/repos/bpindelski/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/bpindelski/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/bpindelski/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/bpindelski/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/bpindelski/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/bpindelski/ome-documentation/collaborators{/collaborator}","full_name":"bpindelski/ome-documentation","ssh_url":"git@github.com:bpindelski/ome-documentation.git","pulls_url":"https://api.github.com/repos/bpindelski/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/bpindelski/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/bpindelski/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":1,"subscription_url":"https://api.github.com/repos/bpindelski/ome-documentation/subscription","teams_url":"https://api.github.com/repos/bpindelski/ome-documentation/teams","watchers":0,"created_at":"2012-08-14T09:55:03Z","git_url":"git://github.com/bpindelski/ome-documentation.git","open_issues_count":0,"labels_url":"https://api.github.com/repos/bpindelski/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/bpindelski/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/bpindelski/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/bpindelski/ome-documentation/keys{/key_id}","size":280,"compare_url":"https://api.github.com/repos/bpindelski/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/bpindelski/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/bpindelski/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/bpindelski/ome-documentation/hooks","fork":true,"html_url":"https://github.com/bpindelski/ome-documentation","clone_url":"https://github.com/bpindelski/ome-documentation.git","watchers_count":0,"git_refs_url":"https://api.github.com/repos/bpindelski/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/bpindelski/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/bpindelski/ome-documentation/issues/events{/number}","private":false,"id":5411049,"pushed_at":"2013-01-22T10:13:53Z","has_issues":false,"mirror_url":null,"trees_url":"https://api.github.com/repos/bpindelski/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/bpindelski/ome-documentation/forks"},"sha":"f224736c38ee147e7ac6998c65abb801b0ca372c","ref":"rebased/develop/doc-date"},"assignee":null,"updated_at":"2013-01-21T22:24:16Z","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/218/comments","commits_url":"https://github.com/openmicroscopy/ome-documentation/pull/218/commits","closed_at":"2013-01-21T22:24:16Z","user":{"type":"User","url":"https://api.github.com/users/bpindelski","received_events_url":"https://api.github.com/users/bpindelski/received_events","login":"bpindelski","events_url":"https://api.github.com/users/bpindelski/events{/privacy}","organizations_url":"https://api.github.com/users/bpindelski/orgs","avatar_url":"https://secure.gravatar.com/avatar/3c0a5e3c2c6d2f8117bbe6e08c930874?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/bpindelski/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/bpindelski/gists{/gist_id}","gravatar_id":"3c0a5e3c2c6d2f8117bbe6e08c930874","followers_url":"https://api.github.com/users/bpindelski/followers","id":1692189,"repos_url":"https://api.github.com/users/bpindelski/repos","subscriptions_url":"https://api.github.com/users/bpindelski/subscriptions","following_url":"https://api.github.com/users/bpindelski/following"},"issue_url":"https://github.com/openmicroscopy/ome-documentation/issues/218","merged_at":"2013-01-21T22:24:16Z","merge_commit_sha":"5475fe1afba8be953a27ead4d6e77fd34ced6e48","created_at":"2013-01-18T09:09:27Z","review_comments_url":"https://github.com/openmicroscopy/ome-documentation/pull/218/comments","patch_url":"https://github.com/openmicroscopy/ome-documentation/pull/218.patch","html_url":"https://github.com/openmicroscopy/ome-documentation/pull/218","review_comment_url":"/repos/openmicroscopy/ome-documentation/pulls/comments/{number}","milestone":null,"body":"\n\nThis is the same as gh-215 but rebased onto develop.\n\n----\n\nAs @hflynn noticed, the date in the documentation footer was a static string. With this PR it'll be formatted to the current year in which the docs have been built (depending on the settings of the build system).\n\n ","diff_url":"https://github.com/openmicroscopy/ome-documentation/pull/218.diff","id":3735194,"base":{"user":null,"label":"openmicroscopy:develop","repo":{"forks":19,"svn_url":"https://github.com/openmicroscopy/ome-documentation","merges_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/merges","languages_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/languages","assignees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/openmicroscopy/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/statuses/{sha}","owner":{"type":"Organization","url":"https://api.github.com/users/openmicroscopy","received_events_url":"https://api.github.com/users/openmicroscopy/received_events","login":"openmicroscopy","events_url":"https://api.github.com/users/openmicroscopy/events{/privacy}","organizations_url":"https://api.github.com/users/openmicroscopy/orgs","avatar_url":"https://secure.gravatar.com/avatar/7424190904f55023bd16416af0fd799b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","starred_url":"https://api.github.com/users/openmicroscopy/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/openmicroscopy/gists{/gist_id}","gravatar_id":"7424190904f55023bd16416af0fd799b","followers_url":"https://api.github.com/users/openmicroscopy/followers","id":975861,"repos_url":"https://api.github.com/users/openmicroscopy/repos","subscriptions_url":"https://api.github.com/users/openmicroscopy/subscriptions","following_url":"https://api.github.com/users/openmicroscopy/following"},"open_issues":3,"updated_at":"2013-02-01T11:04:39Z","milestones_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/events","notifications_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/collaborators{/collaborator}","full_name":"openmicroscopy/ome-documentation","ssh_url":"git@github.com:openmicroscopy/ome-documentation.git","pulls_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":19,"subscription_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscription","teams_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/teams","watchers":9,"created_at":"2012-01-17T10:20:53Z","git_url":"git://github.com/openmicroscopy/ome-documentation.git","open_issues_count":3,"labels_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/keys{/key_id}","size":488,"compare_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/hooks","fork":false,"html_url":"https://github.com/openmicroscopy/ome-documentation","master_branch":"develop","clone_url":"https://github.com/openmicroscopy/ome-documentation.git","watchers_count":9,"git_refs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/events{/number}","private":false,"id":3198415,"default_branch":"develop","pushed_at":"2013-02-01T11:04:38Z","has_issues":true,"mirror_url":null,"trees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/forks"},"sha":"dd7e4e54f700f8e7c1ddf4933bacf5d07016ac5b","ref":"develop"}},{"_links":{"comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/217/comments"},"issue":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/217"},"html":{"href":"https://github.com/openmicroscopy/ome-documentation/pull/217"},"self":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/217"},"review_comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/217/comments"}},"title":"Replace lastSuccessfulBuild by lastBuild (rebased onto develop)","state":"closed","number":217,"url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/217","head":{"user":{"type":"User","url":"https://api.github.com/users/sbesson","received_events_url":"https://api.github.com/users/sbesson/received_events","login":"sbesson","events_url":"https://api.github.com/users/sbesson/events{/privacy}","organizations_url":"https://api.github.com/users/sbesson/orgs","avatar_url":"https://secure.gravatar.com/avatar/8ea0fde1295027db9d37e419ac10cbf4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/sbesson/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/sbesson/gists{/gist_id}","gravatar_id":"8ea0fde1295027db9d37e419ac10cbf4","followers_url":"https://api.github.com/users/sbesson/followers","id":1355463,"repos_url":"https://api.github.com/users/sbesson/repos","subscriptions_url":"https://api.github.com/users/sbesson/subscriptions","following_url":"https://api.github.com/users/sbesson/following"},"label":"sbesson:rebased/develop/jenkins_testing","repo":{"forks":0,"svn_url":"https://github.com/sbesson/ome-documentation","merges_url":"https://api.github.com/repos/sbesson/ome-documentation/merges","languages_url":"https://api.github.com/repos/sbesson/ome-documentation/languages","assignees_url":"https://api.github.com/repos/sbesson/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/sbesson/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/sbesson/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/sbesson/ome-documentation/statuses/{sha}","owner":{"type":"User","url":"https://api.github.com/users/sbesson","received_events_url":"https://api.github.com/users/sbesson/received_events","login":"sbesson","events_url":"https://api.github.com/users/sbesson/events{/privacy}","organizations_url":"https://api.github.com/users/sbesson/orgs","avatar_url":"https://secure.gravatar.com/avatar/8ea0fde1295027db9d37e419ac10cbf4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/sbesson/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/sbesson/gists{/gist_id}","gravatar_id":"8ea0fde1295027db9d37e419ac10cbf4","followers_url":"https://api.github.com/users/sbesson/followers","id":1355463,"repos_url":"https://api.github.com/users/sbesson/repos","subscriptions_url":"https://api.github.com/users/sbesson/subscriptions","following_url":"https://api.github.com/users/sbesson/following"},"open_issues":0,"updated_at":"2013-02-02T21:21:49Z","milestones_url":"https://api.github.com/repos/sbesson/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/sbesson/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/sbesson/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/sbesson/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/sbesson/ome-documentation/events","notifications_url":"https://api.github.com/repos/sbesson/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/sbesson/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/sbesson/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/sbesson/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/sbesson/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/sbesson/ome-documentation/collaborators{/collaborator}","full_name":"sbesson/ome-documentation","ssh_url":"git@github.com:sbesson/ome-documentation.git","pulls_url":"https://api.github.com/repos/sbesson/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/sbesson/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/sbesson/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":0,"subscription_url":"https://api.github.com/repos/sbesson/ome-documentation/subscription","teams_url":"https://api.github.com/repos/sbesson/ome-documentation/teams","watchers":1,"created_at":"2012-08-22T08:57:59Z","git_url":"git://github.com/sbesson/ome-documentation.git","open_issues_count":0,"labels_url":"https://api.github.com/repos/sbesson/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/sbesson/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/sbesson/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/sbesson/ome-documentation/keys{/key_id}","size":608,"compare_url":"https://api.github.com/repos/sbesson/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/sbesson/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/sbesson/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/sbesson/ome-documentation/hooks","fork":true,"html_url":"https://github.com/sbesson/ome-documentation","master_branch":"dev_4_4","clone_url":"https://github.com/sbesson/ome-documentation.git","watchers_count":1,"git_refs_url":"https://api.github.com/repos/sbesson/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/sbesson/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/sbesson/ome-documentation/issues/events{/number}","private":false,"id":5507021,"default_branch":"dev_4_4","pushed_at":"2013-02-01T15:04:17Z","has_issues":false,"mirror_url":null,"trees_url":"https://api.github.com/repos/sbesson/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/sbesson/ome-documentation/forks"},"sha":"da6d9e295c41764d7c743b4e7edd286a81262249","ref":"rebased/develop/jenkins_testing"},"assignee":null,"updated_at":"2013-01-18T12:14:04Z","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/217/comments","commits_url":"https://github.com/openmicroscopy/ome-documentation/pull/217/commits","closed_at":"2013-01-18T12:14:04Z","user":{"type":"User","url":"https://api.github.com/users/sbesson","received_events_url":"https://api.github.com/users/sbesson/received_events","login":"sbesson","events_url":"https://api.github.com/users/sbesson/events{/privacy}","organizations_url":"https://api.github.com/users/sbesson/orgs","avatar_url":"https://secure.gravatar.com/avatar/8ea0fde1295027db9d37e419ac10cbf4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/sbesson/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/sbesson/gists{/gist_id}","gravatar_id":"8ea0fde1295027db9d37e419ac10cbf4","followers_url":"https://api.github.com/users/sbesson/followers","id":1355463,"repos_url":"https://api.github.com/users/sbesson/repos","subscriptions_url":"https://api.github.com/users/sbesson/subscriptions","following_url":"https://api.github.com/users/sbesson/following"},"issue_url":"https://github.com/openmicroscopy/ome-documentation/issues/217","merged_at":"2013-01-18T12:14:04Z","merge_commit_sha":"286311c7e778e5965ae34b06b06ba981073e6926","created_at":"2013-01-18T07:50:09Z","review_comments_url":"https://github.com/openmicroscopy/ome-documentation/pull/217/comments","patch_url":"https://github.com/openmicroscopy/ome-documentation/pull/217.patch","html_url":"https://github.com/openmicroscopy/ome-documentation/pull/217","review_comment_url":"/repos/openmicroscopy/ome-documentation/pulls/comments/{number}","milestone":null,"body":"\n\nThis is the same as gh-216 but rebased onto develop.\n\n----\n\n\n\n ","diff_url":"https://github.com/openmicroscopy/ome-documentation/pull/217.diff","id":3734536,"base":{"user":null,"label":"openmicroscopy:develop","repo":{"forks":19,"svn_url":"https://github.com/openmicroscopy/ome-documentation","merges_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/merges","languages_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/languages","assignees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/openmicroscopy/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/statuses/{sha}","owner":{"type":"Organization","url":"https://api.github.com/users/openmicroscopy","received_events_url":"https://api.github.com/users/openmicroscopy/received_events","login":"openmicroscopy","events_url":"https://api.github.com/users/openmicroscopy/events{/privacy}","organizations_url":"https://api.github.com/users/openmicroscopy/orgs","avatar_url":"https://secure.gravatar.com/avatar/7424190904f55023bd16416af0fd799b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","starred_url":"https://api.github.com/users/openmicroscopy/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/openmicroscopy/gists{/gist_id}","gravatar_id":"7424190904f55023bd16416af0fd799b","followers_url":"https://api.github.com/users/openmicroscopy/followers","id":975861,"repos_url":"https://api.github.com/users/openmicroscopy/repos","subscriptions_url":"https://api.github.com/users/openmicroscopy/subscriptions","following_url":"https://api.github.com/users/openmicroscopy/following"},"open_issues":3,"updated_at":"2013-02-01T11:04:39Z","milestones_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/events","notifications_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/collaborators{/collaborator}","full_name":"openmicroscopy/ome-documentation","ssh_url":"git@github.com:openmicroscopy/ome-documentation.git","pulls_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":19,"subscription_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscription","teams_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/teams","watchers":9,"created_at":"2012-01-17T10:20:53Z","git_url":"git://github.com/openmicroscopy/ome-documentation.git","open_issues_count":3,"labels_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/keys{/key_id}","size":488,"compare_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/hooks","fork":false,"html_url":"https://github.com/openmicroscopy/ome-documentation","master_branch":"develop","clone_url":"https://github.com/openmicroscopy/ome-documentation.git","watchers_count":9,"git_refs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/events{/number}","private":false,"id":3198415,"default_branch":"develop","pushed_at":"2013-02-01T11:04:38Z","has_issues":true,"mirror_url":null,"trees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/forks"},"sha":"dd7e4e54f700f8e7c1ddf4933bacf5d07016ac5b","ref":"develop"}},{"_links":{"comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/216/comments"},"issue":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/216"},"html":{"href":"https://github.com/openmicroscopy/ome-documentation/pull/216"},"self":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/216"},"review_comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/216/comments"}},"title":"Replace lastSuccessfulBuild by lastBuild","state":"closed","number":216,"url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/216","head":{"user":{"type":"User","url":"https://api.github.com/users/sbesson","received_events_url":"https://api.github.com/users/sbesson/received_events","login":"sbesson","events_url":"https://api.github.com/users/sbesson/events{/privacy}","organizations_url":"https://api.github.com/users/sbesson/orgs","avatar_url":"https://secure.gravatar.com/avatar/8ea0fde1295027db9d37e419ac10cbf4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/sbesson/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/sbesson/gists{/gist_id}","gravatar_id":"8ea0fde1295027db9d37e419ac10cbf4","followers_url":"https://api.github.com/users/sbesson/followers","id":1355463,"repos_url":"https://api.github.com/users/sbesson/repos","subscriptions_url":"https://api.github.com/users/sbesson/subscriptions","following_url":"https://api.github.com/users/sbesson/following"},"label":"sbesson:jenkins_testing","repo":{"forks":0,"svn_url":"https://github.com/sbesson/ome-documentation","merges_url":"https://api.github.com/repos/sbesson/ome-documentation/merges","languages_url":"https://api.github.com/repos/sbesson/ome-documentation/languages","assignees_url":"https://api.github.com/repos/sbesson/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/sbesson/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/sbesson/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/sbesson/ome-documentation/statuses/{sha}","owner":{"type":"User","url":"https://api.github.com/users/sbesson","received_events_url":"https://api.github.com/users/sbesson/received_events","login":"sbesson","events_url":"https://api.github.com/users/sbesson/events{/privacy}","organizations_url":"https://api.github.com/users/sbesson/orgs","avatar_url":"https://secure.gravatar.com/avatar/8ea0fde1295027db9d37e419ac10cbf4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/sbesson/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/sbesson/gists{/gist_id}","gravatar_id":"8ea0fde1295027db9d37e419ac10cbf4","followers_url":"https://api.github.com/users/sbesson/followers","id":1355463,"repos_url":"https://api.github.com/users/sbesson/repos","subscriptions_url":"https://api.github.com/users/sbesson/subscriptions","following_url":"https://api.github.com/users/sbesson/following"},"open_issues":0,"updated_at":"2013-02-02T21:21:49Z","milestones_url":"https://api.github.com/repos/sbesson/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/sbesson/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/sbesson/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/sbesson/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/sbesson/ome-documentation/events","notifications_url":"https://api.github.com/repos/sbesson/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/sbesson/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/sbesson/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/sbesson/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/sbesson/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/sbesson/ome-documentation/collaborators{/collaborator}","full_name":"sbesson/ome-documentation","ssh_url":"git@github.com:sbesson/ome-documentation.git","pulls_url":"https://api.github.com/repos/sbesson/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/sbesson/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/sbesson/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":0,"subscription_url":"https://api.github.com/repos/sbesson/ome-documentation/subscription","teams_url":"https://api.github.com/repos/sbesson/ome-documentation/teams","watchers":1,"created_at":"2012-08-22T08:57:59Z","git_url":"git://github.com/sbesson/ome-documentation.git","open_issues_count":0,"labels_url":"https://api.github.com/repos/sbesson/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/sbesson/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/sbesson/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/sbesson/ome-documentation/keys{/key_id}","size":608,"compare_url":"https://api.github.com/repos/sbesson/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/sbesson/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/sbesson/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/sbesson/ome-documentation/hooks","fork":true,"html_url":"https://github.com/sbesson/ome-documentation","master_branch":"dev_4_4","clone_url":"https://github.com/sbesson/ome-documentation.git","watchers_count":1,"git_refs_url":"https://api.github.com/repos/sbesson/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/sbesson/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/sbesson/ome-documentation/issues/events{/number}","private":false,"id":5507021,"default_branch":"dev_4_4","pushed_at":"2013-02-01T15:04:17Z","has_issues":false,"mirror_url":null,"trees_url":"https://api.github.com/repos/sbesson/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/sbesson/ome-documentation/forks"},"sha":"adcc80e6b418175aa1594dff143e9009e8e9bbd5","ref":"jenkins_testing"},"assignee":null,"updated_at":"2013-01-21T11:59:23Z","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/216/comments","commits_url":"https://github.com/openmicroscopy/ome-documentation/pull/216/commits","closed_at":"2013-01-18T12:14:16Z","user":{"type":"User","url":"https://api.github.com/users/sbesson","received_events_url":"https://api.github.com/users/sbesson/received_events","login":"sbesson","events_url":"https://api.github.com/users/sbesson/events{/privacy}","organizations_url":"https://api.github.com/users/sbesson/orgs","avatar_url":"https://secure.gravatar.com/avatar/8ea0fde1295027db9d37e419ac10cbf4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/sbesson/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/sbesson/gists{/gist_id}","gravatar_id":"8ea0fde1295027db9d37e419ac10cbf4","followers_url":"https://api.github.com/users/sbesson/followers","id":1355463,"repos_url":"https://api.github.com/users/sbesson/repos","subscriptions_url":"https://api.github.com/users/sbesson/subscriptions","following_url":"https://api.github.com/users/sbesson/following"},"issue_url":"https://github.com/openmicroscopy/ome-documentation/issues/216","merged_at":"2013-01-18T12:14:16Z","merge_commit_sha":"d8ba7dc891c192be315161b817cca16406b7092c","created_at":"2013-01-18T07:49:40Z","review_comments_url":"https://github.com/openmicroscopy/ome-documentation/pull/216/comments","patch_url":"https://github.com/openmicroscopy/ome-documentation/pull/216.patch","html_url":"https://github.com/openmicroscopy/ome-documentation/pull/216","review_comment_url":"/repos/openmicroscopy/ome-documentation/pulls/comments/{number}","milestone":null,"body":"","diff_url":"https://github.com/openmicroscopy/ome-documentation/pull/216.diff","id":3734532,"base":{"user":null,"label":"openmicroscopy:dev_4_4","repo":{"forks":19,"svn_url":"https://github.com/openmicroscopy/ome-documentation","merges_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/merges","languages_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/languages","assignees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/openmicroscopy/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/statuses/{sha}","owner":{"type":"Organization","url":"https://api.github.com/users/openmicroscopy","received_events_url":"https://api.github.com/users/openmicroscopy/received_events","login":"openmicroscopy","events_url":"https://api.github.com/users/openmicroscopy/events{/privacy}","organizations_url":"https://api.github.com/users/openmicroscopy/orgs","avatar_url":"https://secure.gravatar.com/avatar/7424190904f55023bd16416af0fd799b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","starred_url":"https://api.github.com/users/openmicroscopy/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/openmicroscopy/gists{/gist_id}","gravatar_id":"7424190904f55023bd16416af0fd799b","followers_url":"https://api.github.com/users/openmicroscopy/followers","id":975861,"repos_url":"https://api.github.com/users/openmicroscopy/repos","subscriptions_url":"https://api.github.com/users/openmicroscopy/subscriptions","following_url":"https://api.github.com/users/openmicroscopy/following"},"open_issues":3,"updated_at":"2013-02-01T11:04:39Z","milestones_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/events","notifications_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/collaborators{/collaborator}","full_name":"openmicroscopy/ome-documentation","ssh_url":"git@github.com:openmicroscopy/ome-documentation.git","pulls_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":19,"subscription_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscription","teams_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/teams","watchers":9,"created_at":"2012-01-17T10:20:53Z","git_url":"git://github.com/openmicroscopy/ome-documentation.git","open_issues_count":3,"labels_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/keys{/key_id}","size":488,"compare_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/hooks","fork":false,"html_url":"https://github.com/openmicroscopy/ome-documentation","master_branch":"develop","clone_url":"https://github.com/openmicroscopy/ome-documentation.git","watchers_count":9,"git_refs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/events{/number}","private":false,"id":3198415,"default_branch":"develop","pushed_at":"2013-02-01T11:04:38Z","has_issues":true,"mirror_url":null,"trees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/forks"},"sha":"1843d7a435646ed07dd56821b5d9ba02105cd716","ref":"dev_4_4"}},{"_links":{"comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/215/comments"},"issue":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/215"},"html":{"href":"https://github.com/openmicroscopy/ome-documentation/pull/215"},"self":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/215"},"review_comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/215/comments"}},"title":"Make the copyright date the current year","state":"closed","number":215,"url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/215","head":{"user":{"type":"User","url":"https://api.github.com/users/bpindelski","received_events_url":"https://api.github.com/users/bpindelski/received_events","login":"bpindelski","events_url":"https://api.github.com/users/bpindelski/events{/privacy}","organizations_url":"https://api.github.com/users/bpindelski/orgs","avatar_url":"https://secure.gravatar.com/avatar/3c0a5e3c2c6d2f8117bbe6e08c930874?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/bpindelski/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/bpindelski/gists{/gist_id}","gravatar_id":"3c0a5e3c2c6d2f8117bbe6e08c930874","followers_url":"https://api.github.com/users/bpindelski/followers","id":1692189,"repos_url":"https://api.github.com/users/bpindelski/repos","subscriptions_url":"https://api.github.com/users/bpindelski/subscriptions","following_url":"https://api.github.com/users/bpindelski/following"},"label":"bpindelski:doc-date","repo":{"forks":1,"svn_url":"https://github.com/bpindelski/ome-documentation","merges_url":"https://api.github.com/repos/bpindelski/ome-documentation/merges","languages_url":"https://api.github.com/repos/bpindelski/ome-documentation/languages","assignees_url":"https://api.github.com/repos/bpindelski/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/bpindelski/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/bpindelski/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/bpindelski/ome-documentation/statuses/{sha}","owner":{"type":"User","url":"https://api.github.com/users/bpindelski","received_events_url":"https://api.github.com/users/bpindelski/received_events","login":"bpindelski","events_url":"https://api.github.com/users/bpindelski/events{/privacy}","organizations_url":"https://api.github.com/users/bpindelski/orgs","avatar_url":"https://secure.gravatar.com/avatar/3c0a5e3c2c6d2f8117bbe6e08c930874?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/bpindelski/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/bpindelski/gists{/gist_id}","gravatar_id":"3c0a5e3c2c6d2f8117bbe6e08c930874","followers_url":"https://api.github.com/users/bpindelski/followers","id":1692189,"repos_url":"https://api.github.com/users/bpindelski/repos","subscriptions_url":"https://api.github.com/users/bpindelski/subscriptions","following_url":"https://api.github.com/users/bpindelski/following"},"open_issues":0,"updated_at":"2013-01-22T10:13:55Z","milestones_url":"https://api.github.com/repos/bpindelski/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/bpindelski/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/bpindelski/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/bpindelski/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/bpindelski/ome-documentation/events","notifications_url":"https://api.github.com/repos/bpindelski/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/bpindelski/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/bpindelski/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/bpindelski/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/bpindelski/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/bpindelski/ome-documentation/collaborators{/collaborator}","full_name":"bpindelski/ome-documentation","ssh_url":"git@github.com:bpindelski/ome-documentation.git","pulls_url":"https://api.github.com/repos/bpindelski/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/bpindelski/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/bpindelski/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":1,"subscription_url":"https://api.github.com/repos/bpindelski/ome-documentation/subscription","teams_url":"https://api.github.com/repos/bpindelski/ome-documentation/teams","watchers":0,"created_at":"2012-08-14T09:55:03Z","git_url":"git://github.com/bpindelski/ome-documentation.git","open_issues_count":0,"labels_url":"https://api.github.com/repos/bpindelski/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/bpindelski/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/bpindelski/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/bpindelski/ome-documentation/keys{/key_id}","size":280,"compare_url":"https://api.github.com/repos/bpindelski/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/bpindelski/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/bpindelski/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/bpindelski/ome-documentation/hooks","fork":true,"html_url":"https://github.com/bpindelski/ome-documentation","clone_url":"https://github.com/bpindelski/ome-documentation.git","watchers_count":0,"git_refs_url":"https://api.github.com/repos/bpindelski/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/bpindelski/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/bpindelski/ome-documentation/issues/events{/number}","private":false,"id":5411049,"pushed_at":"2013-01-22T10:13:53Z","has_issues":false,"mirror_url":null,"trees_url":"https://api.github.com/repos/bpindelski/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/bpindelski/ome-documentation/forks"},"sha":"9554b121b7e3866499f060b0fc4502a9e9beb6e2","ref":"doc-date"},"assignee":null,"updated_at":"2013-01-17T20:41:17Z","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/215/comments","commits_url":"https://github.com/openmicroscopy/ome-documentation/pull/215/commits","closed_at":"2013-01-17T20:41:16Z","user":{"type":"User","url":"https://api.github.com/users/bpindelski","received_events_url":"https://api.github.com/users/bpindelski/received_events","login":"bpindelski","events_url":"https://api.github.com/users/bpindelski/events{/privacy}","organizations_url":"https://api.github.com/users/bpindelski/orgs","avatar_url":"https://secure.gravatar.com/avatar/3c0a5e3c2c6d2f8117bbe6e08c930874?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/bpindelski/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/bpindelski/gists{/gist_id}","gravatar_id":"3c0a5e3c2c6d2f8117bbe6e08c930874","followers_url":"https://api.github.com/users/bpindelski/followers","id":1692189,"repos_url":"https://api.github.com/users/bpindelski/repos","subscriptions_url":"https://api.github.com/users/bpindelski/subscriptions","following_url":"https://api.github.com/users/bpindelski/following"},"issue_url":"https://github.com/openmicroscopy/ome-documentation/issues/215","merged_at":"2013-01-17T20:41:16Z","merge_commit_sha":"f2564d40dbb22e517a4044acc664c125b4f78316","created_at":"2013-01-17T15:25:59Z","review_comments_url":"https://github.com/openmicroscopy/ome-documentation/pull/215/comments","patch_url":"https://github.com/openmicroscopy/ome-documentation/pull/215.patch","html_url":"https://github.com/openmicroscopy/ome-documentation/pull/215","review_comment_url":"/repos/openmicroscopy/ome-documentation/pulls/comments/{number}","milestone":null,"body":"As @hflynn noticed, the date in the documentation footer was a static string. With this PR it'll be formatted to the current year in which the docs have been built (depending on the settings of the build system).","diff_url":"https://github.com/openmicroscopy/ome-documentation/pull/215.diff","id":3721230,"base":{"user":null,"label":"openmicroscopy:dev_4_4","repo":{"forks":19,"svn_url":"https://github.com/openmicroscopy/ome-documentation","merges_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/merges","languages_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/languages","assignees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/openmicroscopy/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/statuses/{sha}","owner":{"type":"Organization","url":"https://api.github.com/users/openmicroscopy","received_events_url":"https://api.github.com/users/openmicroscopy/received_events","login":"openmicroscopy","events_url":"https://api.github.com/users/openmicroscopy/events{/privacy}","organizations_url":"https://api.github.com/users/openmicroscopy/orgs","avatar_url":"https://secure.gravatar.com/avatar/7424190904f55023bd16416af0fd799b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","starred_url":"https://api.github.com/users/openmicroscopy/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/openmicroscopy/gists{/gist_id}","gravatar_id":"7424190904f55023bd16416af0fd799b","followers_url":"https://api.github.com/users/openmicroscopy/followers","id":975861,"repos_url":"https://api.github.com/users/openmicroscopy/repos","subscriptions_url":"https://api.github.com/users/openmicroscopy/subscriptions","following_url":"https://api.github.com/users/openmicroscopy/following"},"open_issues":3,"updated_at":"2013-02-01T11:04:39Z","milestones_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/events","notifications_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/collaborators{/collaborator}","full_name":"openmicroscopy/ome-documentation","ssh_url":"git@github.com:openmicroscopy/ome-documentation.git","pulls_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":19,"subscription_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscription","teams_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/teams","watchers":9,"created_at":"2012-01-17T10:20:53Z","git_url":"git://github.com/openmicroscopy/ome-documentation.git","open_issues_count":3,"labels_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/keys{/key_id}","size":488,"compare_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/hooks","fork":false,"html_url":"https://github.com/openmicroscopy/ome-documentation","master_branch":"develop","clone_url":"https://github.com/openmicroscopy/ome-documentation.git","watchers_count":9,"git_refs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/events{/number}","private":false,"id":3198415,"default_branch":"develop","pushed_at":"2013-02-01T11:04:38Z","has_issues":true,"mirror_url":null,"trees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/forks"},"sha":"06d64f21d98da8a4eb8218a4c955edb88746c8e2","ref":"dev_4_4"}},{"_links":{"comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/214/comments"},"issue":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/214"},"html":{"href":"https://github.com/openmicroscopy/ome-documentation/pull/214"},"self":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/214"},"review_comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/214/comments"}},"title":"Fixed forward declartion incomplete type error in c++ example code (rebased onto develop)","state":"closed","number":214,"url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/214","head":{"user":{"type":"User","url":"https://api.github.com/users/jburel","received_events_url":"https://api.github.com/users/jburel/received_events","login":"jburel","events_url":"https://api.github.com/users/jburel/events{/privacy}","organizations_url":"https://api.github.com/users/jburel/orgs","avatar_url":"https://secure.gravatar.com/avatar/e1f7a610652e5e71eda0b0b8381c3f98?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/jburel/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/jburel/gists{/gist_id}","gravatar_id":"e1f7a610652e5e71eda0b0b8381c3f98","followers_url":"https://api.github.com/users/jburel/followers","id":1022396,"repos_url":"https://api.github.com/users/jburel/repos","subscriptions_url":"https://api.github.com/users/jburel/subscriptions","following_url":"https://api.github.com/users/jburel/following"},"label":"jburel:rebased/develop/dev_4_4","repo":{"forks":0,"svn_url":"https://github.com/jburel/ome-documentation","merges_url":"https://api.github.com/repos/jburel/ome-documentation/merges","languages_url":"https://api.github.com/repos/jburel/ome-documentation/languages","assignees_url":"https://api.github.com/repos/jburel/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/jburel/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/jburel/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/jburel/ome-documentation/statuses/{sha}","owner":{"type":"User","url":"https://api.github.com/users/jburel","received_events_url":"https://api.github.com/users/jburel/received_events","login":"jburel","events_url":"https://api.github.com/users/jburel/events{/privacy}","organizations_url":"https://api.github.com/users/jburel/orgs","avatar_url":"https://secure.gravatar.com/avatar/e1f7a610652e5e71eda0b0b8381c3f98?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/jburel/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/jburel/gists{/gist_id}","gravatar_id":"e1f7a610652e5e71eda0b0b8381c3f98","followers_url":"https://api.github.com/users/jburel/followers","id":1022396,"repos_url":"https://api.github.com/users/jburel/repos","subscriptions_url":"https://api.github.com/users/jburel/subscriptions","following_url":"https://api.github.com/users/jburel/following"},"open_issues":0,"updated_at":"2013-01-18T09:49:33Z","milestones_url":"https://api.github.com/repos/jburel/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/jburel/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/jburel/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/jburel/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/jburel/ome-documentation/events","notifications_url":"https://api.github.com/repos/jburel/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/jburel/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/jburel/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/jburel/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/jburel/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/jburel/ome-documentation/collaborators{/collaborator}","full_name":"jburel/ome-documentation","ssh_url":"git@github.com:jburel/ome-documentation.git","pulls_url":"https://api.github.com/repos/jburel/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/jburel/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/jburel/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":0,"subscription_url":"https://api.github.com/repos/jburel/ome-documentation/subscription","teams_url":"https://api.github.com/repos/jburel/ome-documentation/teams","watchers":2,"created_at":"2012-01-17T14:12:05Z","git_url":"git://github.com/jburel/ome-documentation.git","open_issues_count":0,"labels_url":"https://api.github.com/repos/jburel/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/jburel/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/jburel/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/jburel/ome-documentation/keys{/key_id}","size":292,"compare_url":"https://api.github.com/repos/jburel/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/jburel/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/jburel/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/jburel/ome-documentation/hooks","fork":true,"html_url":"https://github.com/jburel/ome-documentation","clone_url":"https://github.com/jburel/ome-documentation.git","watchers_count":2,"git_refs_url":"https://api.github.com/repos/jburel/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":null,"contents_url":"https://api.github.com/repos/jburel/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/jburel/ome-documentation/issues/events{/number}","private":false,"id":3199804,"pushed_at":"2013-01-16T19:23:39Z","has_issues":false,"mirror_url":null,"trees_url":"https://api.github.com/repos/jburel/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/jburel/ome-documentation/forks"},"sha":"e4158a87a77b307142fad3eab48ddaecdd306216","ref":"rebased/develop/dev_4_4"},"assignee":null,"updated_at":"2013-01-18T09:49:33Z","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/214/comments","commits_url":"https://github.com/openmicroscopy/ome-documentation/pull/214/commits","closed_at":"2013-01-17T08:44:43Z","user":{"type":"User","url":"https://api.github.com/users/jburel","received_events_url":"https://api.github.com/users/jburel/received_events","login":"jburel","events_url":"https://api.github.com/users/jburel/events{/privacy}","organizations_url":"https://api.github.com/users/jburel/orgs","avatar_url":"https://secure.gravatar.com/avatar/e1f7a610652e5e71eda0b0b8381c3f98?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/jburel/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/jburel/gists{/gist_id}","gravatar_id":"e1f7a610652e5e71eda0b0b8381c3f98","followers_url":"https://api.github.com/users/jburel/followers","id":1022396,"repos_url":"https://api.github.com/users/jburel/repos","subscriptions_url":"https://api.github.com/users/jburel/subscriptions","following_url":"https://api.github.com/users/jburel/following"},"issue_url":"https://github.com/openmicroscopy/ome-documentation/issues/214","merged_at":"2013-01-17T08:44:43Z","merge_commit_sha":"f2933c2d7c257bc54fe54c0d0921506faa7bae4b","created_at":"2013-01-16T19:24:22Z","review_comments_url":"https://github.com/openmicroscopy/ome-documentation/pull/214/comments","patch_url":"https://github.com/openmicroscopy/ome-documentation/pull/214.patch","html_url":"https://github.com/openmicroscopy/ome-documentation/pull/214","review_comment_url":"/repos/openmicroscopy/ome-documentation/pulls/comments/{number}","milestone":null,"body":"\n\nThis is the same as gh-206 but rebased onto develop.\n\n----\n\nCompiling the existing example code results in an incomplete type error as omero/client.h includes omero/ServicesF.h which forward declares IAdmin\r\n\r\nFix by including omero/api/IAdmin.h\r\n\r\n```\r\ng++ -c -o yourcode.o yourcode.cpp -I/home/dpwrussell/Ice/omero/OMERO.cpp-4.4.5-ice33-posix-gcc-4.6.3-64dbg/include -I/home/dpwrussell/Ice/home/Ice-3.3.1//include \r\nyourcode.cpp: In function ‘int main(int, char**)’:\r\nyourcode.cpp:30:18: error: invalid use of incomplete type ‘struct IceProxy::omero::api::IAdmin’\r\n/home/dpwrussell/Ice/omero/OMERO.cpp-4.4.5-ice33-posix-gcc-4.6.3-64dbg/include/omero/ServicesF.h:60:7: error: forward declaration of ‘struct IceProxy::omero::api::IAdmin’\r\nmake: *** [yourcode.o] Error 1\r\n```\n\n ","diff_url":"https://github.com/openmicroscopy/ome-documentation/pull/214.diff","id":3706910,"base":{"user":null,"label":"openmicroscopy:develop","repo":{"forks":19,"svn_url":"https://github.com/openmicroscopy/ome-documentation","merges_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/merges","languages_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/languages","assignees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/openmicroscopy/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/statuses/{sha}","owner":{"type":"Organization","url":"https://api.github.com/users/openmicroscopy","received_events_url":"https://api.github.com/users/openmicroscopy/received_events","login":"openmicroscopy","events_url":"https://api.github.com/users/openmicroscopy/events{/privacy}","organizations_url":"https://api.github.com/users/openmicroscopy/orgs","avatar_url":"https://secure.gravatar.com/avatar/7424190904f55023bd16416af0fd799b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","starred_url":"https://api.github.com/users/openmicroscopy/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/openmicroscopy/gists{/gist_id}","gravatar_id":"7424190904f55023bd16416af0fd799b","followers_url":"https://api.github.com/users/openmicroscopy/followers","id":975861,"repos_url":"https://api.github.com/users/openmicroscopy/repos","subscriptions_url":"https://api.github.com/users/openmicroscopy/subscriptions","following_url":"https://api.github.com/users/openmicroscopy/following"},"open_issues":3,"updated_at":"2013-02-01T11:04:39Z","milestones_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/events","notifications_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/collaborators{/collaborator}","full_name":"openmicroscopy/ome-documentation","ssh_url":"git@github.com:openmicroscopy/ome-documentation.git","pulls_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":19,"subscription_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscription","teams_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/teams","watchers":9,"created_at":"2012-01-17T10:20:53Z","git_url":"git://github.com/openmicroscopy/ome-documentation.git","open_issues_count":3,"labels_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/keys{/key_id}","size":488,"compare_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/hooks","fork":false,"html_url":"https://github.com/openmicroscopy/ome-documentation","master_branch":"develop","clone_url":"https://github.com/openmicroscopy/ome-documentation.git","watchers_count":9,"git_refs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/events{/number}","private":false,"id":3198415,"default_branch":"develop","pushed_at":"2013-02-01T11:04:38Z","has_issues":true,"mirror_url":null,"trees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/forks"},"sha":"e38561d11128664793c359e81a32be0059a76088","ref":"develop"}},{"_links":{"comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/213/comments"},"issue":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/213"},"html":{"href":"https://github.com/openmicroscopy/ome-documentation/pull/213"},"self":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/213"},"review_comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/213/comments"}},"title":"Tables documentation partial rewrite 9957 (rebased onto develop)","state":"closed","number":213,"url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/213","head":{"user":{"type":"User","url":"https://api.github.com/users/manics","received_events_url":"https://api.github.com/users/manics/received_events","login":"manics","events_url":"https://api.github.com/users/manics/events{/privacy}","organizations_url":"https://api.github.com/users/manics/orgs","avatar_url":"https://secure.gravatar.com/avatar/a840b00f848faf9c64699f092fc4c745?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/manics/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/manics/gists{/gist_id}","gravatar_id":"a840b00f848faf9c64699f092fc4c745","followers_url":"https://api.github.com/users/manics/followers","id":1644105,"repos_url":"https://api.github.com/users/manics/repos","subscriptions_url":"https://api.github.com/users/manics/subscriptions","following_url":"https://api.github.com/users/manics/following"},"label":"manics:rebased/develop/tables_arraycolumns_9957","repo":{"forks":0,"svn_url":"https://github.com/manics/ome-documentation","merges_url":"https://api.github.com/repos/manics/ome-documentation/merges","languages_url":"https://api.github.com/repos/manics/ome-documentation/languages","assignees_url":"https://api.github.com/repos/manics/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/manics/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/manics/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/manics/ome-documentation/statuses/{sha}","owner":{"type":"User","url":"https://api.github.com/users/manics","received_events_url":"https://api.github.com/users/manics/received_events","login":"manics","events_url":"https://api.github.com/users/manics/events{/privacy}","organizations_url":"https://api.github.com/users/manics/orgs","avatar_url":"https://secure.gravatar.com/avatar/a840b00f848faf9c64699f092fc4c745?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/manics/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/manics/gists{/gist_id}","gravatar_id":"a840b00f848faf9c64699f092fc4c745","followers_url":"https://api.github.com/users/manics/followers","id":1644105,"repos_url":"https://api.github.com/users/manics/repos","subscriptions_url":"https://api.github.com/users/manics/subscriptions","following_url":"https://api.github.com/users/manics/following"},"open_issues":0,"updated_at":"2013-01-17T10:39:59Z","milestones_url":"https://api.github.com/repos/manics/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/manics/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/manics/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/manics/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/manics/ome-documentation/events","notifications_url":"https://api.github.com/repos/manics/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/manics/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/manics/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/manics/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/manics/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/manics/ome-documentation/collaborators{/collaborator}","full_name":"manics/ome-documentation","ssh_url":"git@github.com:manics/ome-documentation.git","pulls_url":"https://api.github.com/repos/manics/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/manics/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/manics/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":0,"subscription_url":"https://api.github.com/repos/manics/ome-documentation/subscription","teams_url":"https://api.github.com/repos/manics/ome-documentation/teams","watchers":0,"created_at":"2012-10-08T11:43:13Z","git_url":"git://github.com/manics/ome-documentation.git","open_issues_count":0,"labels_url":"https://api.github.com/repos/manics/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/manics/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/manics/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/manics/ome-documentation/keys{/key_id}","size":2584,"compare_url":"https://api.github.com/repos/manics/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/manics/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/manics/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/manics/ome-documentation/hooks","fork":true,"html_url":"https://github.com/manics/ome-documentation","master_branch":"develop","clone_url":"https://github.com/manics/ome-documentation.git","watchers_count":0,"git_refs_url":"https://api.github.com/repos/manics/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/manics/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/manics/ome-documentation/issues/events{/number}","private":false,"id":6123523,"default_branch":"develop","pushed_at":"2013-01-16T13:46:34Z","has_issues":false,"mirror_url":null,"trees_url":"https://api.github.com/repos/manics/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/manics/ome-documentation/forks"},"sha":"c7a42401100f79798ba70181cb7a58ab25f3b165","ref":"rebased/develop/tables_arraycolumns_9957"},"assignee":null,"updated_at":"2013-01-17T10:39:59Z","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/213/comments","commits_url":"https://github.com/openmicroscopy/ome-documentation/pull/213/commits","closed_at":"2013-01-17T10:39:59Z","user":{"type":"User","url":"https://api.github.com/users/manics","received_events_url":"https://api.github.com/users/manics/received_events","login":"manics","events_url":"https://api.github.com/users/manics/events{/privacy}","organizations_url":"https://api.github.com/users/manics/orgs","avatar_url":"https://secure.gravatar.com/avatar/a840b00f848faf9c64699f092fc4c745?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/manics/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/manics/gists{/gist_id}","gravatar_id":"a840b00f848faf9c64699f092fc4c745","followers_url":"https://api.github.com/users/manics/followers","id":1644105,"repos_url":"https://api.github.com/users/manics/repos","subscriptions_url":"https://api.github.com/users/manics/subscriptions","following_url":"https://api.github.com/users/manics/following"},"issue_url":"https://github.com/openmicroscopy/ome-documentation/issues/213","merged_at":"2013-01-17T10:39:59Z","merge_commit_sha":"4e59b65363b053670f3c6a010216821b1933c9bc","created_at":"2013-01-16T13:46:36Z","review_comments_url":"https://github.com/openmicroscopy/ome-documentation/pull/213/comments","patch_url":"https://github.com/openmicroscopy/ome-documentation/pull/213.patch","html_url":"https://github.com/openmicroscopy/ome-documentation/pull/213","review_comment_url":"/repos/openmicroscopy/ome-documentation/pulls/comments/{number}","milestone":null,"body":"\n\nThis is the same as gh-193 but rebased onto develop.\n\n----\n\nThis was origingally a partial rewrite of the tables documentation including the new array columns from PR openmicroscopy/openmicroscopy#538. Since it may be held back from the next release I'll split the docs PR into two, this one covers doc changes relating to the existing tables functionality:\r\n* Moved the tables docs out of analysis and into a new page\r\n* Added more API detail, especially parameter types\r\n* This currently appears under `Analysis` in the TOC.\r\n\r\nIf I don't open this now I'll probably forget after Christmas.\n\n ","diff_url":"https://github.com/openmicroscopy/ome-documentation/pull/213.diff","id":3700514,"base":{"user":null,"label":"openmicroscopy:develop","repo":{"forks":19,"svn_url":"https://github.com/openmicroscopy/ome-documentation","merges_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/merges","languages_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/languages","assignees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/openmicroscopy/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/statuses/{sha}","owner":{"type":"Organization","url":"https://api.github.com/users/openmicroscopy","received_events_url":"https://api.github.com/users/openmicroscopy/received_events","login":"openmicroscopy","events_url":"https://api.github.com/users/openmicroscopy/events{/privacy}","organizations_url":"https://api.github.com/users/openmicroscopy/orgs","avatar_url":"https://secure.gravatar.com/avatar/7424190904f55023bd16416af0fd799b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","starred_url":"https://api.github.com/users/openmicroscopy/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/openmicroscopy/gists{/gist_id}","gravatar_id":"7424190904f55023bd16416af0fd799b","followers_url":"https://api.github.com/users/openmicroscopy/followers","id":975861,"repos_url":"https://api.github.com/users/openmicroscopy/repos","subscriptions_url":"https://api.github.com/users/openmicroscopy/subscriptions","following_url":"https://api.github.com/users/openmicroscopy/following"},"open_issues":3,"updated_at":"2013-02-01T11:04:39Z","milestones_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/events","notifications_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/collaborators{/collaborator}","full_name":"openmicroscopy/ome-documentation","ssh_url":"git@github.com:openmicroscopy/ome-documentation.git","pulls_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":19,"subscription_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscription","teams_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/teams","watchers":9,"created_at":"2012-01-17T10:20:53Z","git_url":"git://github.com/openmicroscopy/ome-documentation.git","open_issues_count":3,"labels_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/keys{/key_id}","size":488,"compare_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/hooks","fork":false,"html_url":"https://github.com/openmicroscopy/ome-documentation","master_branch":"develop","clone_url":"https://github.com/openmicroscopy/ome-documentation.git","watchers_count":9,"git_refs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/events{/number}","private":false,"id":3198415,"default_branch":"develop","pushed_at":"2013-02-01T11:04:38Z","has_issues":true,"mirror_url":null,"trees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/forks"},"sha":"e38561d11128664793c359e81a32be0059a76088","ref":"develop"}},{"_links":{"comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/212/comments"},"issue":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/212"},"html":{"href":"https://github.com/openmicroscopy/ome-documentation/pull/212"},"self":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/212"},"review_comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/212/comments"}},"title":"Fixing ticket 10174","state":"closed","number":212,"url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/212","head":{"user":{"type":"User","url":"https://api.github.com/users/hflynn","received_events_url":"https://api.github.com/users/hflynn/received_events","login":"hflynn","events_url":"https://api.github.com/users/hflynn/events{/privacy}","organizations_url":"https://api.github.com/users/hflynn/orgs","avatar_url":"https://secure.gravatar.com/avatar/0ee126d1abcd3c5b4f178b8d77af95ae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/hflynn/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/hflynn/gists{/gist_id}","gravatar_id":"0ee126d1abcd3c5b4f178b8d77af95ae","followers_url":"https://api.github.com/users/hflynn/followers","id":2368904,"repos_url":"https://api.github.com/users/hflynn/repos","subscriptions_url":"https://api.github.com/users/hflynn/subscriptions","following_url":"https://api.github.com/users/hflynn/following"},"label":"hflynn:10174-fix","repo":{"forks":0,"svn_url":"https://github.com/hflynn/ome-documentation","merges_url":"https://api.github.com/repos/hflynn/ome-documentation/merges","languages_url":"https://api.github.com/repos/hflynn/ome-documentation/languages","assignees_url":"https://api.github.com/repos/hflynn/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/hflynn/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/hflynn/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/hflynn/ome-documentation/statuses/{sha}","owner":{"type":"User","url":"https://api.github.com/users/hflynn","received_events_url":"https://api.github.com/users/hflynn/received_events","login":"hflynn","events_url":"https://api.github.com/users/hflynn/events{/privacy}","organizations_url":"https://api.github.com/users/hflynn/orgs","avatar_url":"https://secure.gravatar.com/avatar/0ee126d1abcd3c5b4f178b8d77af95ae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/hflynn/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/hflynn/gists{/gist_id}","gravatar_id":"0ee126d1abcd3c5b4f178b8d77af95ae","followers_url":"https://api.github.com/users/hflynn/followers","id":2368904,"repos_url":"https://api.github.com/users/hflynn/repos","subscriptions_url":"https://api.github.com/users/hflynn/subscriptions","following_url":"https://api.github.com/users/hflynn/following"},"open_issues":0,"updated_at":"2013-02-01T17:31:59Z","milestones_url":"https://api.github.com/repos/hflynn/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/hflynn/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/hflynn/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/hflynn/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/hflynn/ome-documentation/events","notifications_url":"https://api.github.com/repos/hflynn/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/hflynn/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/hflynn/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/hflynn/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/hflynn/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/hflynn/ome-documentation/collaborators{/collaborator}","full_name":"hflynn/ome-documentation","ssh_url":"git@github.com:hflynn/ome-documentation.git","pulls_url":"https://api.github.com/repos/hflynn/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/hflynn/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/hflynn/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":0,"subscription_url":"https://api.github.com/repos/hflynn/ome-documentation/subscription","teams_url":"https://api.github.com/repos/hflynn/ome-documentation/teams","watchers":0,"created_at":"2012-09-18T09:22:07Z","git_url":"git://github.com/hflynn/ome-documentation.git","open_issues_count":0,"labels_url":"https://api.github.com/repos/hflynn/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/hflynn/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/hflynn/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/hflynn/ome-documentation/keys{/key_id}","size":340,"compare_url":"https://api.github.com/repos/hflynn/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/hflynn/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/hflynn/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/hflynn/ome-documentation/hooks","fork":true,"html_url":"https://github.com/hflynn/ome-documentation","master_branch":"develop","clone_url":"https://github.com/hflynn/ome-documentation.git","watchers_count":0,"git_refs_url":"https://api.github.com/repos/hflynn/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/hflynn/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/hflynn/ome-documentation/issues/events{/number}","private":false,"id":5853981,"default_branch":"develop","pushed_at":"2013-02-01T17:31:59Z","has_issues":false,"mirror_url":null,"trees_url":"https://api.github.com/repos/hflynn/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/hflynn/ome-documentation/forks"},"sha":"8679358f62eda2f5c229ba48dad5597bdc427fb5","ref":"10174-fix"},"assignee":null,"updated_at":"2013-01-22T10:10:11Z","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/212/comments","commits_url":"https://github.com/openmicroscopy/ome-documentation/pull/212/commits","closed_at":"2013-01-21T22:24:04Z","user":{"type":"User","url":"https://api.github.com/users/hflynn","received_events_url":"https://api.github.com/users/hflynn/received_events","login":"hflynn","events_url":"https://api.github.com/users/hflynn/events{/privacy}","organizations_url":"https://api.github.com/users/hflynn/orgs","avatar_url":"https://secure.gravatar.com/avatar/0ee126d1abcd3c5b4f178b8d77af95ae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/hflynn/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/hflynn/gists{/gist_id}","gravatar_id":"0ee126d1abcd3c5b4f178b8d77af95ae","followers_url":"https://api.github.com/users/hflynn/followers","id":2368904,"repos_url":"https://api.github.com/users/hflynn/repos","subscriptions_url":"https://api.github.com/users/hflynn/subscriptions","following_url":"https://api.github.com/users/hflynn/following"},"issue_url":"https://github.com/openmicroscopy/ome-documentation/issues/212","merged_at":"2013-01-21T22:24:04Z","merge_commit_sha":"8f6c86a6d8b6ef135e03584c4803abe60f34ed6c","created_at":"2013-01-16T11:12:48Z","review_comments_url":"https://github.com/openmicroscopy/ome-documentation/pull/212/comments","patch_url":"https://github.com/openmicroscopy/ome-documentation/pull/212.patch","html_url":"https://github.com/openmicroscopy/ome-documentation/pull/212","review_comment_url":"/repos/openmicroscopy/ome-documentation/pulls/comments/{number}","milestone":null,"body":"","diff_url":"https://github.com/openmicroscopy/ome-documentation/pull/212.diff","id":3698481,"base":{"user":null,"label":"openmicroscopy:dev_4_4","repo":{"forks":19,"svn_url":"https://github.com/openmicroscopy/ome-documentation","merges_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/merges","languages_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/languages","assignees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/openmicroscopy/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/statuses/{sha}","owner":{"type":"Organization","url":"https://api.github.com/users/openmicroscopy","received_events_url":"https://api.github.com/users/openmicroscopy/received_events","login":"openmicroscopy","events_url":"https://api.github.com/users/openmicroscopy/events{/privacy}","organizations_url":"https://api.github.com/users/openmicroscopy/orgs","avatar_url":"https://secure.gravatar.com/avatar/7424190904f55023bd16416af0fd799b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","starred_url":"https://api.github.com/users/openmicroscopy/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/openmicroscopy/gists{/gist_id}","gravatar_id":"7424190904f55023bd16416af0fd799b","followers_url":"https://api.github.com/users/openmicroscopy/followers","id":975861,"repos_url":"https://api.github.com/users/openmicroscopy/repos","subscriptions_url":"https://api.github.com/users/openmicroscopy/subscriptions","following_url":"https://api.github.com/users/openmicroscopy/following"},"open_issues":3,"updated_at":"2013-02-01T11:04:39Z","milestones_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/events","notifications_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/collaborators{/collaborator}","full_name":"openmicroscopy/ome-documentation","ssh_url":"git@github.com:openmicroscopy/ome-documentation.git","pulls_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":19,"subscription_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscription","teams_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/teams","watchers":9,"created_at":"2012-01-17T10:20:53Z","git_url":"git://github.com/openmicroscopy/ome-documentation.git","open_issues_count":3,"labels_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/keys{/key_id}","size":488,"compare_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/hooks","fork":false,"html_url":"https://github.com/openmicroscopy/ome-documentation","master_branch":"develop","clone_url":"https://github.com/openmicroscopy/ome-documentation.git","watchers_count":9,"git_refs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/events{/number}","private":false,"id":3198415,"default_branch":"develop","pushed_at":"2013-02-01T11:04:38Z","has_issues":true,"mirror_url":null,"trees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/forks"},"sha":"ad0052677c2aee2ffe76de527ea6fb744acdfa55","ref":"dev_4_4"}},{"_links":{"comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/211/comments"},"issue":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/211"},"html":{"href":"https://github.com/openmicroscopy/ome-documentation/pull/211"},"self":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/211"},"review_comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/211/comments"}},"title":"Sysadmin docs tidy (rebased onto develop)","state":"closed","number":211,"url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/211","head":{"user":{"type":"User","url":"https://api.github.com/users/hflynn","received_events_url":"https://api.github.com/users/hflynn/received_events","login":"hflynn","events_url":"https://api.github.com/users/hflynn/events{/privacy}","organizations_url":"https://api.github.com/users/hflynn/orgs","avatar_url":"https://secure.gravatar.com/avatar/0ee126d1abcd3c5b4f178b8d77af95ae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/hflynn/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/hflynn/gists{/gist_id}","gravatar_id":"0ee126d1abcd3c5b4f178b8d77af95ae","followers_url":"https://api.github.com/users/hflynn/followers","id":2368904,"repos_url":"https://api.github.com/users/hflynn/repos","subscriptions_url":"https://api.github.com/users/hflynn/subscriptions","following_url":"https://api.github.com/users/hflynn/following"},"label":"hflynn:rebased/develop/sysadmin-docs-tidy","repo":{"forks":0,"svn_url":"https://github.com/hflynn/ome-documentation","merges_url":"https://api.github.com/repos/hflynn/ome-documentation/merges","languages_url":"https://api.github.com/repos/hflynn/ome-documentation/languages","assignees_url":"https://api.github.com/repos/hflynn/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/hflynn/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/hflynn/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/hflynn/ome-documentation/statuses/{sha}","owner":{"type":"User","url":"https://api.github.com/users/hflynn","received_events_url":"https://api.github.com/users/hflynn/received_events","login":"hflynn","events_url":"https://api.github.com/users/hflynn/events{/privacy}","organizations_url":"https://api.github.com/users/hflynn/orgs","avatar_url":"https://secure.gravatar.com/avatar/0ee126d1abcd3c5b4f178b8d77af95ae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/hflynn/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/hflynn/gists{/gist_id}","gravatar_id":"0ee126d1abcd3c5b4f178b8d77af95ae","followers_url":"https://api.github.com/users/hflynn/followers","id":2368904,"repos_url":"https://api.github.com/users/hflynn/repos","subscriptions_url":"https://api.github.com/users/hflynn/subscriptions","following_url":"https://api.github.com/users/hflynn/following"},"open_issues":0,"updated_at":"2013-02-01T17:31:59Z","milestones_url":"https://api.github.com/repos/hflynn/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/hflynn/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/hflynn/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/hflynn/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/hflynn/ome-documentation/events","notifications_url":"https://api.github.com/repos/hflynn/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/hflynn/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/hflynn/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/hflynn/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/hflynn/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/hflynn/ome-documentation/collaborators{/collaborator}","full_name":"hflynn/ome-documentation","ssh_url":"git@github.com:hflynn/ome-documentation.git","pulls_url":"https://api.github.com/repos/hflynn/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/hflynn/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/hflynn/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":0,"subscription_url":"https://api.github.com/repos/hflynn/ome-documentation/subscription","teams_url":"https://api.github.com/repos/hflynn/ome-documentation/teams","watchers":0,"created_at":"2012-09-18T09:22:07Z","git_url":"git://github.com/hflynn/ome-documentation.git","open_issues_count":0,"labels_url":"https://api.github.com/repos/hflynn/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/hflynn/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/hflynn/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/hflynn/ome-documentation/keys{/key_id}","size":340,"compare_url":"https://api.github.com/repos/hflynn/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/hflynn/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/hflynn/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/hflynn/ome-documentation/hooks","fork":true,"html_url":"https://github.com/hflynn/ome-documentation","master_branch":"develop","clone_url":"https://github.com/hflynn/ome-documentation.git","watchers_count":0,"git_refs_url":"https://api.github.com/repos/hflynn/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/hflynn/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/hflynn/ome-documentation/issues/events{/number}","private":false,"id":5853981,"default_branch":"develop","pushed_at":"2013-02-01T17:31:59Z","has_issues":false,"mirror_url":null,"trees_url":"https://api.github.com/repos/hflynn/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/hflynn/ome-documentation/forks"},"sha":"1acd446490dbfc637a5c9823ec5d0d04edf5ea8b","ref":"rebased/develop/sysadmin-docs-tidy"},"assignee":null,"updated_at":"2013-01-17T14:18:22Z","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/211/comments","commits_url":"https://github.com/openmicroscopy/ome-documentation/pull/211/commits","closed_at":"2013-01-17T14:18:22Z","user":{"type":"User","url":"https://api.github.com/users/hflynn","received_events_url":"https://api.github.com/users/hflynn/received_events","login":"hflynn","events_url":"https://api.github.com/users/hflynn/events{/privacy}","organizations_url":"https://api.github.com/users/hflynn/orgs","avatar_url":"https://secure.gravatar.com/avatar/0ee126d1abcd3c5b4f178b8d77af95ae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/hflynn/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/hflynn/gists{/gist_id}","gravatar_id":"0ee126d1abcd3c5b4f178b8d77af95ae","followers_url":"https://api.github.com/users/hflynn/followers","id":2368904,"repos_url":"https://api.github.com/users/hflynn/repos","subscriptions_url":"https://api.github.com/users/hflynn/subscriptions","following_url":"https://api.github.com/users/hflynn/following"},"issue_url":"https://github.com/openmicroscopy/ome-documentation/issues/211","merged_at":"2013-01-17T14:18:22Z","merge_commit_sha":"fd1ded7a5bb6f9abce17656f957e64547dbe5e0e","created_at":"2013-01-16T10:41:29Z","review_comments_url":"https://github.com/openmicroscopy/ome-documentation/pull/211/comments","patch_url":"https://github.com/openmicroscopy/ome-documentation/pull/211.patch","html_url":"https://github.com/openmicroscopy/ome-documentation/pull/211","review_comment_url":"/repos/openmicroscopy/ome-documentation/pulls/comments/{number}","milestone":null,"body":"\n\nThis is the same as gh-209 but rebased onto develop.\n\n----\n\nFixing an issue spotted by Kenny and then tidying sysadmin docs re: formatting and style rules.\r\nAlso see ticket 10114\n\n ","diff_url":"https://github.com/openmicroscopy/ome-documentation/pull/211.diff","id":3698059,"base":{"user":null,"label":"openmicroscopy:develop","repo":{"forks":19,"svn_url":"https://github.com/openmicroscopy/ome-documentation","merges_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/merges","languages_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/languages","assignees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/openmicroscopy/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/statuses/{sha}","owner":{"type":"Organization","url":"https://api.github.com/users/openmicroscopy","received_events_url":"https://api.github.com/users/openmicroscopy/received_events","login":"openmicroscopy","events_url":"https://api.github.com/users/openmicroscopy/events{/privacy}","organizations_url":"https://api.github.com/users/openmicroscopy/orgs","avatar_url":"https://secure.gravatar.com/avatar/7424190904f55023bd16416af0fd799b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","starred_url":"https://api.github.com/users/openmicroscopy/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/openmicroscopy/gists{/gist_id}","gravatar_id":"7424190904f55023bd16416af0fd799b","followers_url":"https://api.github.com/users/openmicroscopy/followers","id":975861,"repos_url":"https://api.github.com/users/openmicroscopy/repos","subscriptions_url":"https://api.github.com/users/openmicroscopy/subscriptions","following_url":"https://api.github.com/users/openmicroscopy/following"},"open_issues":3,"updated_at":"2013-02-01T11:04:39Z","milestones_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/events","notifications_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/collaborators{/collaborator}","full_name":"openmicroscopy/ome-documentation","ssh_url":"git@github.com:openmicroscopy/ome-documentation.git","pulls_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":19,"subscription_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscription","teams_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/teams","watchers":9,"created_at":"2012-01-17T10:20:53Z","git_url":"git://github.com/openmicroscopy/ome-documentation.git","open_issues_count":3,"labels_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/keys{/key_id}","size":488,"compare_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/hooks","fork":false,"html_url":"https://github.com/openmicroscopy/ome-documentation","master_branch":"develop","clone_url":"https://github.com/openmicroscopy/ome-documentation.git","watchers_count":9,"git_refs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/events{/number}","private":false,"id":3198415,"default_branch":"develop","pushed_at":"2013-02-01T11:04:38Z","has_issues":true,"mirror_url":null,"trees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/forks"},"sha":"e38561d11128664793c359e81a32be0059a76088","ref":"develop"}},{"_links":{"comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/210/comments"},"issue":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/210"},"html":{"href":"https://github.com/openmicroscopy/ome-documentation/pull/210"},"self":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/210"},"review_comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/210/comments"}},"title":"Update Windows docs (see #10095) (rebased onto develop)","state":"closed","number":210,"url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/210","head":{"user":{"type":"User","url":"https://api.github.com/users/bpindelski","received_events_url":"https://api.github.com/users/bpindelski/received_events","login":"bpindelski","events_url":"https://api.github.com/users/bpindelski/events{/privacy}","organizations_url":"https://api.github.com/users/bpindelski/orgs","avatar_url":"https://secure.gravatar.com/avatar/3c0a5e3c2c6d2f8117bbe6e08c930874?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/bpindelski/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/bpindelski/gists{/gist_id}","gravatar_id":"3c0a5e3c2c6d2f8117bbe6e08c930874","followers_url":"https://api.github.com/users/bpindelski/followers","id":1692189,"repos_url":"https://api.github.com/users/bpindelski/repos","subscriptions_url":"https://api.github.com/users/bpindelski/subscriptions","following_url":"https://api.github.com/users/bpindelski/following"},"label":"bpindelski:rebased/develop/admin-docs-win","repo":{"forks":1,"svn_url":"https://github.com/bpindelski/ome-documentation","merges_url":"https://api.github.com/repos/bpindelski/ome-documentation/merges","languages_url":"https://api.github.com/repos/bpindelski/ome-documentation/languages","assignees_url":"https://api.github.com/repos/bpindelski/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/bpindelski/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/bpindelski/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/bpindelski/ome-documentation/statuses/{sha}","owner":{"type":"User","url":"https://api.github.com/users/bpindelski","received_events_url":"https://api.github.com/users/bpindelski/received_events","login":"bpindelski","events_url":"https://api.github.com/users/bpindelski/events{/privacy}","organizations_url":"https://api.github.com/users/bpindelski/orgs","avatar_url":"https://secure.gravatar.com/avatar/3c0a5e3c2c6d2f8117bbe6e08c930874?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/bpindelski/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/bpindelski/gists{/gist_id}","gravatar_id":"3c0a5e3c2c6d2f8117bbe6e08c930874","followers_url":"https://api.github.com/users/bpindelski/followers","id":1692189,"repos_url":"https://api.github.com/users/bpindelski/repos","subscriptions_url":"https://api.github.com/users/bpindelski/subscriptions","following_url":"https://api.github.com/users/bpindelski/following"},"open_issues":0,"updated_at":"2013-01-22T10:13:55Z","milestones_url":"https://api.github.com/repos/bpindelski/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/bpindelski/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/bpindelski/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/bpindelski/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/bpindelski/ome-documentation/events","notifications_url":"https://api.github.com/repos/bpindelski/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/bpindelski/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/bpindelski/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/bpindelski/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/bpindelski/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/bpindelski/ome-documentation/collaborators{/collaborator}","full_name":"bpindelski/ome-documentation","ssh_url":"git@github.com:bpindelski/ome-documentation.git","pulls_url":"https://api.github.com/repos/bpindelski/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/bpindelski/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/bpindelski/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":1,"subscription_url":"https://api.github.com/repos/bpindelski/ome-documentation/subscription","teams_url":"https://api.github.com/repos/bpindelski/ome-documentation/teams","watchers":0,"created_at":"2012-08-14T09:55:03Z","git_url":"git://github.com/bpindelski/ome-documentation.git","open_issues_count":0,"labels_url":"https://api.github.com/repos/bpindelski/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/bpindelski/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/bpindelski/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/bpindelski/ome-documentation/keys{/key_id}","size":280,"compare_url":"https://api.github.com/repos/bpindelski/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/bpindelski/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/bpindelski/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/bpindelski/ome-documentation/hooks","fork":true,"html_url":"https://github.com/bpindelski/ome-documentation","clone_url":"https://github.com/bpindelski/ome-documentation.git","watchers_count":0,"git_refs_url":"https://api.github.com/repos/bpindelski/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/bpindelski/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/bpindelski/ome-documentation/issues/events{/number}","private":false,"id":5411049,"pushed_at":"2013-01-22T10:13:53Z","has_issues":false,"mirror_url":null,"trees_url":"https://api.github.com/repos/bpindelski/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/bpindelski/ome-documentation/forks"},"sha":"8003e6d2fb8f85158f922610170ac19d853405d8","ref":"rebased/develop/admin-docs-win"},"assignee":null,"updated_at":"2013-01-16T19:32:02Z","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/210/comments","commits_url":"https://github.com/openmicroscopy/ome-documentation/pull/210/commits","closed_at":"2013-01-16T19:32:01Z","user":{"type":"User","url":"https://api.github.com/users/bpindelski","received_events_url":"https://api.github.com/users/bpindelski/received_events","login":"bpindelski","events_url":"https://api.github.com/users/bpindelski/events{/privacy}","organizations_url":"https://api.github.com/users/bpindelski/orgs","avatar_url":"https://secure.gravatar.com/avatar/3c0a5e3c2c6d2f8117bbe6e08c930874?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/bpindelski/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/bpindelski/gists{/gist_id}","gravatar_id":"3c0a5e3c2c6d2f8117bbe6e08c930874","followers_url":"https://api.github.com/users/bpindelski/followers","id":1692189,"repos_url":"https://api.github.com/users/bpindelski/repos","subscriptions_url":"https://api.github.com/users/bpindelski/subscriptions","following_url":"https://api.github.com/users/bpindelski/following"},"issue_url":"https://github.com/openmicroscopy/ome-documentation/issues/210","merged_at":"2013-01-16T19:32:01Z","merge_commit_sha":"9b59862600af4389965d0c3ed7f56321dec584f7","created_at":"2013-01-15T09:55:22Z","review_comments_url":"https://github.com/openmicroscopy/ome-documentation/pull/210/comments","patch_url":"https://github.com/openmicroscopy/ome-documentation/pull/210.patch","html_url":"https://github.com/openmicroscopy/ome-documentation/pull/210","review_comment_url":"/repos/openmicroscopy/ome-documentation/pulls/comments/{number}","milestone":null,"body":"\n\nThis is the same as gh-198 but rebased onto develop.\n\n----\n\nUpdate the output listing of ``bin\\omero admin diagnostics`` and remove any dependency on ``sc.exe`` or ``ntrights.exe``.\n\n ","diff_url":"https://github.com/openmicroscopy/ome-documentation/pull/210.diff","id":3678632,"base":{"user":null,"label":"openmicroscopy:develop","repo":{"forks":19,"svn_url":"https://github.com/openmicroscopy/ome-documentation","merges_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/merges","languages_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/languages","assignees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/openmicroscopy/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/statuses/{sha}","owner":{"type":"Organization","url":"https://api.github.com/users/openmicroscopy","received_events_url":"https://api.github.com/users/openmicroscopy/received_events","login":"openmicroscopy","events_url":"https://api.github.com/users/openmicroscopy/events{/privacy}","organizations_url":"https://api.github.com/users/openmicroscopy/orgs","avatar_url":"https://secure.gravatar.com/avatar/7424190904f55023bd16416af0fd799b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","starred_url":"https://api.github.com/users/openmicroscopy/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/openmicroscopy/gists{/gist_id}","gravatar_id":"7424190904f55023bd16416af0fd799b","followers_url":"https://api.github.com/users/openmicroscopy/followers","id":975861,"repos_url":"https://api.github.com/users/openmicroscopy/repos","subscriptions_url":"https://api.github.com/users/openmicroscopy/subscriptions","following_url":"https://api.github.com/users/openmicroscopy/following"},"open_issues":3,"updated_at":"2013-02-01T11:04:39Z","milestones_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/events","notifications_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/collaborators{/collaborator}","full_name":"openmicroscopy/ome-documentation","ssh_url":"git@github.com:openmicroscopy/ome-documentation.git","pulls_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":19,"subscription_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscription","teams_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/teams","watchers":9,"created_at":"2012-01-17T10:20:53Z","git_url":"git://github.com/openmicroscopy/ome-documentation.git","open_issues_count":3,"labels_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/keys{/key_id}","size":488,"compare_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/hooks","fork":false,"html_url":"https://github.com/openmicroscopy/ome-documentation","master_branch":"develop","clone_url":"https://github.com/openmicroscopy/ome-documentation.git","watchers_count":9,"git_refs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/events{/number}","private":false,"id":3198415,"default_branch":"develop","pushed_at":"2013-02-01T11:04:38Z","has_issues":true,"mirror_url":null,"trees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/forks"},"sha":"0e53556a3e4e6e83d664c7207da8551a2bcba14d","ref":"develop"}},{"_links":{"comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/209/comments"},"issue":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/209"},"html":{"href":"https://github.com/openmicroscopy/ome-documentation/pull/209"},"self":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/209"},"review_comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/209/comments"}},"title":"Sysadmin docs tidy","state":"closed","number":209,"url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/209","head":{"user":{"type":"User","url":"https://api.github.com/users/hflynn","received_events_url":"https://api.github.com/users/hflynn/received_events","login":"hflynn","events_url":"https://api.github.com/users/hflynn/events{/privacy}","organizations_url":"https://api.github.com/users/hflynn/orgs","avatar_url":"https://secure.gravatar.com/avatar/0ee126d1abcd3c5b4f178b8d77af95ae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/hflynn/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/hflynn/gists{/gist_id}","gravatar_id":"0ee126d1abcd3c5b4f178b8d77af95ae","followers_url":"https://api.github.com/users/hflynn/followers","id":2368904,"repos_url":"https://api.github.com/users/hflynn/repos","subscriptions_url":"https://api.github.com/users/hflynn/subscriptions","following_url":"https://api.github.com/users/hflynn/following"},"label":"hflynn:sysadmin-docs-tidy","repo":{"forks":0,"svn_url":"https://github.com/hflynn/ome-documentation","merges_url":"https://api.github.com/repos/hflynn/ome-documentation/merges","languages_url":"https://api.github.com/repos/hflynn/ome-documentation/languages","assignees_url":"https://api.github.com/repos/hflynn/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/hflynn/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/hflynn/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/hflynn/ome-documentation/statuses/{sha}","owner":{"type":"User","url":"https://api.github.com/users/hflynn","received_events_url":"https://api.github.com/users/hflynn/received_events","login":"hflynn","events_url":"https://api.github.com/users/hflynn/events{/privacy}","organizations_url":"https://api.github.com/users/hflynn/orgs","avatar_url":"https://secure.gravatar.com/avatar/0ee126d1abcd3c5b4f178b8d77af95ae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/hflynn/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/hflynn/gists{/gist_id}","gravatar_id":"0ee126d1abcd3c5b4f178b8d77af95ae","followers_url":"https://api.github.com/users/hflynn/followers","id":2368904,"repos_url":"https://api.github.com/users/hflynn/repos","subscriptions_url":"https://api.github.com/users/hflynn/subscriptions","following_url":"https://api.github.com/users/hflynn/following"},"open_issues":0,"updated_at":"2013-02-01T17:31:59Z","milestones_url":"https://api.github.com/repos/hflynn/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/hflynn/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/hflynn/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/hflynn/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/hflynn/ome-documentation/events","notifications_url":"https://api.github.com/repos/hflynn/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/hflynn/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/hflynn/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/hflynn/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/hflynn/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/hflynn/ome-documentation/collaborators{/collaborator}","full_name":"hflynn/ome-documentation","ssh_url":"git@github.com:hflynn/ome-documentation.git","pulls_url":"https://api.github.com/repos/hflynn/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/hflynn/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/hflynn/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":0,"subscription_url":"https://api.github.com/repos/hflynn/ome-documentation/subscription","teams_url":"https://api.github.com/repos/hflynn/ome-documentation/teams","watchers":0,"created_at":"2012-09-18T09:22:07Z","git_url":"git://github.com/hflynn/ome-documentation.git","open_issues_count":0,"labels_url":"https://api.github.com/repos/hflynn/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/hflynn/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/hflynn/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/hflynn/ome-documentation/keys{/key_id}","size":340,"compare_url":"https://api.github.com/repos/hflynn/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/hflynn/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/hflynn/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/hflynn/ome-documentation/hooks","fork":true,"html_url":"https://github.com/hflynn/ome-documentation","master_branch":"develop","clone_url":"https://github.com/hflynn/ome-documentation.git","watchers_count":0,"git_refs_url":"https://api.github.com/repos/hflynn/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/hflynn/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/hflynn/ome-documentation/issues/events{/number}","private":false,"id":5853981,"default_branch":"develop","pushed_at":"2013-02-01T17:31:59Z","has_issues":false,"mirror_url":null,"trees_url":"https://api.github.com/repos/hflynn/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/hflynn/ome-documentation/forks"},"sha":"398b9c495391d6bcb843fe251f9926538417b943","ref":"sysadmin-docs-tidy"},"assignee":null,"updated_at":"2013-01-17T08:45:49Z","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/209/comments","commits_url":"https://github.com/openmicroscopy/ome-documentation/pull/209/commits","closed_at":"2013-01-17T08:45:49Z","user":{"type":"User","url":"https://api.github.com/users/hflynn","received_events_url":"https://api.github.com/users/hflynn/received_events","login":"hflynn","events_url":"https://api.github.com/users/hflynn/events{/privacy}","organizations_url":"https://api.github.com/users/hflynn/orgs","avatar_url":"https://secure.gravatar.com/avatar/0ee126d1abcd3c5b4f178b8d77af95ae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/hflynn/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/hflynn/gists{/gist_id}","gravatar_id":"0ee126d1abcd3c5b4f178b8d77af95ae","followers_url":"https://api.github.com/users/hflynn/followers","id":2368904,"repos_url":"https://api.github.com/users/hflynn/repos","subscriptions_url":"https://api.github.com/users/hflynn/subscriptions","following_url":"https://api.github.com/users/hflynn/following"},"issue_url":"https://github.com/openmicroscopy/ome-documentation/issues/209","merged_at":"2013-01-17T08:45:49Z","merge_commit_sha":"8b2ecbc547508255347bbcaf4b6fa19b02c3c00b","created_at":"2013-01-14T16:10:35Z","review_comments_url":"https://github.com/openmicroscopy/ome-documentation/pull/209/comments","patch_url":"https://github.com/openmicroscopy/ome-documentation/pull/209.patch","html_url":"https://github.com/openmicroscopy/ome-documentation/pull/209","review_comment_url":"/repos/openmicroscopy/ome-documentation/pulls/comments/{number}","milestone":null,"body":"Fixing an issue spotted by Kenny and then tidying sysadmin docs re: formatting and style rules.\r\nAlso see ticket 10114","diff_url":"https://github.com/openmicroscopy/ome-documentation/pull/209.diff","id":3665632,"base":{"user":null,"label":"openmicroscopy:dev_4_4","repo":{"forks":19,"svn_url":"https://github.com/openmicroscopy/ome-documentation","merges_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/merges","languages_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/languages","assignees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/openmicroscopy/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/statuses/{sha}","owner":{"type":"Organization","url":"https://api.github.com/users/openmicroscopy","received_events_url":"https://api.github.com/users/openmicroscopy/received_events","login":"openmicroscopy","events_url":"https://api.github.com/users/openmicroscopy/events{/privacy}","organizations_url":"https://api.github.com/users/openmicroscopy/orgs","avatar_url":"https://secure.gravatar.com/avatar/7424190904f55023bd16416af0fd799b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","starred_url":"https://api.github.com/users/openmicroscopy/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/openmicroscopy/gists{/gist_id}","gravatar_id":"7424190904f55023bd16416af0fd799b","followers_url":"https://api.github.com/users/openmicroscopy/followers","id":975861,"repos_url":"https://api.github.com/users/openmicroscopy/repos","subscriptions_url":"https://api.github.com/users/openmicroscopy/subscriptions","following_url":"https://api.github.com/users/openmicroscopy/following"},"open_issues":3,"updated_at":"2013-02-01T11:04:39Z","milestones_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/events","notifications_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/collaborators{/collaborator}","full_name":"openmicroscopy/ome-documentation","ssh_url":"git@github.com:openmicroscopy/ome-documentation.git","pulls_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":19,"subscription_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscription","teams_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/teams","watchers":9,"created_at":"2012-01-17T10:20:53Z","git_url":"git://github.com/openmicroscopy/ome-documentation.git","open_issues_count":3,"labels_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/keys{/key_id}","size":488,"compare_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/hooks","fork":false,"html_url":"https://github.com/openmicroscopy/ome-documentation","master_branch":"develop","clone_url":"https://github.com/openmicroscopy/ome-documentation.git","watchers_count":9,"git_refs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/events{/number}","private":false,"id":3198415,"default_branch":"develop","pushed_at":"2013-02-01T11:04:38Z","has_issues":true,"mirror_url":null,"trees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/forks"},"sha":"698b93efc8c0eaa45be01d95e07856447d3faeaf","ref":"dev_4_4"}},{"_links":{"comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/208/comments"},"issue":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/208"},"html":{"href":"https://github.com/openmicroscopy/ome-documentation/pull/208"},"self":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/208"},"review_comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/208/comments"}},"title":"Add note about libjpeg for PIL (rebased onto dev_4_4)","state":"closed","number":208,"url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/208","head":{"user":{"type":"User","url":"https://api.github.com/users/hflynn","received_events_url":"https://api.github.com/users/hflynn/received_events","login":"hflynn","events_url":"https://api.github.com/users/hflynn/events{/privacy}","organizations_url":"https://api.github.com/users/hflynn/orgs","avatar_url":"https://secure.gravatar.com/avatar/0ee126d1abcd3c5b4f178b8d77af95ae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/hflynn/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/hflynn/gists{/gist_id}","gravatar_id":"0ee126d1abcd3c5b4f178b8d77af95ae","followers_url":"https://api.github.com/users/hflynn/followers","id":2368904,"repos_url":"https://api.github.com/users/hflynn/repos","subscriptions_url":"https://api.github.com/users/hflynn/subscriptions","following_url":"https://api.github.com/users/hflynn/following"},"label":"hflynn:rebased/dev_4_4/develop","repo":{"forks":0,"svn_url":"https://github.com/hflynn/ome-documentation","merges_url":"https://api.github.com/repos/hflynn/ome-documentation/merges","languages_url":"https://api.github.com/repos/hflynn/ome-documentation/languages","assignees_url":"https://api.github.com/repos/hflynn/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/hflynn/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/hflynn/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/hflynn/ome-documentation/statuses/{sha}","owner":{"type":"User","url":"https://api.github.com/users/hflynn","received_events_url":"https://api.github.com/users/hflynn/received_events","login":"hflynn","events_url":"https://api.github.com/users/hflynn/events{/privacy}","organizations_url":"https://api.github.com/users/hflynn/orgs","avatar_url":"https://secure.gravatar.com/avatar/0ee126d1abcd3c5b4f178b8d77af95ae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/hflynn/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/hflynn/gists{/gist_id}","gravatar_id":"0ee126d1abcd3c5b4f178b8d77af95ae","followers_url":"https://api.github.com/users/hflynn/followers","id":2368904,"repos_url":"https://api.github.com/users/hflynn/repos","subscriptions_url":"https://api.github.com/users/hflynn/subscriptions","following_url":"https://api.github.com/users/hflynn/following"},"open_issues":0,"updated_at":"2013-02-01T17:31:59Z","milestones_url":"https://api.github.com/repos/hflynn/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/hflynn/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/hflynn/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/hflynn/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/hflynn/ome-documentation/events","notifications_url":"https://api.github.com/repos/hflynn/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/hflynn/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/hflynn/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/hflynn/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/hflynn/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/hflynn/ome-documentation/collaborators{/collaborator}","full_name":"hflynn/ome-documentation","ssh_url":"git@github.com:hflynn/ome-documentation.git","pulls_url":"https://api.github.com/repos/hflynn/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/hflynn/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/hflynn/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":0,"subscription_url":"https://api.github.com/repos/hflynn/ome-documentation/subscription","teams_url":"https://api.github.com/repos/hflynn/ome-documentation/teams","watchers":0,"created_at":"2012-09-18T09:22:07Z","git_url":"git://github.com/hflynn/ome-documentation.git","open_issues_count":0,"labels_url":"https://api.github.com/repos/hflynn/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/hflynn/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/hflynn/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/hflynn/ome-documentation/keys{/key_id}","size":340,"compare_url":"https://api.github.com/repos/hflynn/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/hflynn/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/hflynn/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/hflynn/ome-documentation/hooks","fork":true,"html_url":"https://github.com/hflynn/ome-documentation","master_branch":"develop","clone_url":"https://github.com/hflynn/ome-documentation.git","watchers_count":0,"git_refs_url":"https://api.github.com/repos/hflynn/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/hflynn/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/hflynn/ome-documentation/issues/events{/number}","private":false,"id":5853981,"default_branch":"develop","pushed_at":"2013-02-01T17:31:59Z","has_issues":false,"mirror_url":null,"trees_url":"https://api.github.com/repos/hflynn/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/hflynn/ome-documentation/forks"},"sha":"bb1b82d32520f8362333335328321988202a9aef","ref":"rebased/dev_4_4/develop"},"assignee":null,"updated_at":"2013-01-15T20:02:36Z","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/208/comments","commits_url":"https://github.com/openmicroscopy/ome-documentation/pull/208/commits","closed_at":"2013-01-15T20:02:36Z","user":{"type":"User","url":"https://api.github.com/users/hflynn","received_events_url":"https://api.github.com/users/hflynn/received_events","login":"hflynn","events_url":"https://api.github.com/users/hflynn/events{/privacy}","organizations_url":"https://api.github.com/users/hflynn/orgs","avatar_url":"https://secure.gravatar.com/avatar/0ee126d1abcd3c5b4f178b8d77af95ae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/hflynn/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/hflynn/gists{/gist_id}","gravatar_id":"0ee126d1abcd3c5b4f178b8d77af95ae","followers_url":"https://api.github.com/users/hflynn/followers","id":2368904,"repos_url":"https://api.github.com/users/hflynn/repos","subscriptions_url":"https://api.github.com/users/hflynn/subscriptions","following_url":"https://api.github.com/users/hflynn/following"},"issue_url":"https://github.com/openmicroscopy/ome-documentation/issues/208","merged_at":"2013-01-15T20:02:36Z","merge_commit_sha":"323fb029776abcf6ef1c39aa268f338c59276a6d","created_at":"2013-01-14T11:19:15Z","review_comments_url":"https://github.com/openmicroscopy/ome-documentation/pull/208/comments","patch_url":"https://github.com/openmicroscopy/ome-documentation/pull/208.patch","html_url":"https://github.com/openmicroscopy/ome-documentation/pull/208","review_comment_url":"/repos/openmicroscopy/ome-documentation/pulls/comments/{number}","milestone":null,"body":"\n\nThis is the same as gh-204 but rebased onto dev_4_4.\n\n----\n\nIf `libjpeg` is not installed while building PIL the JPEG support for some of the python scripts is missing (e.g. the \"Split View\" from the Figure scripts will fail).\r\n\r\nThe windows documentation probably doesn't need to be updated since PIL is provided as a binary distribution for that platform (and hopefully comes with JPEG support).\n\n ","diff_url":"https://github.com/openmicroscopy/ome-documentation/pull/208.diff","id":3661573,"base":{"user":null,"label":"openmicroscopy:dev_4_4","repo":{"forks":19,"svn_url":"https://github.com/openmicroscopy/ome-documentation","merges_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/merges","languages_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/languages","assignees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/openmicroscopy/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/statuses/{sha}","owner":{"type":"Organization","url":"https://api.github.com/users/openmicroscopy","received_events_url":"https://api.github.com/users/openmicroscopy/received_events","login":"openmicroscopy","events_url":"https://api.github.com/users/openmicroscopy/events{/privacy}","organizations_url":"https://api.github.com/users/openmicroscopy/orgs","avatar_url":"https://secure.gravatar.com/avatar/7424190904f55023bd16416af0fd799b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","starred_url":"https://api.github.com/users/openmicroscopy/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/openmicroscopy/gists{/gist_id}","gravatar_id":"7424190904f55023bd16416af0fd799b","followers_url":"https://api.github.com/users/openmicroscopy/followers","id":975861,"repos_url":"https://api.github.com/users/openmicroscopy/repos","subscriptions_url":"https://api.github.com/users/openmicroscopy/subscriptions","following_url":"https://api.github.com/users/openmicroscopy/following"},"open_issues":3,"updated_at":"2013-02-01T11:04:39Z","milestones_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/events","notifications_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/collaborators{/collaborator}","full_name":"openmicroscopy/ome-documentation","ssh_url":"git@github.com:openmicroscopy/ome-documentation.git","pulls_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":19,"subscription_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscription","teams_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/teams","watchers":9,"created_at":"2012-01-17T10:20:53Z","git_url":"git://github.com/openmicroscopy/ome-documentation.git","open_issues_count":3,"labels_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/keys{/key_id}","size":488,"compare_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/hooks","fork":false,"html_url":"https://github.com/openmicroscopy/ome-documentation","master_branch":"develop","clone_url":"https://github.com/openmicroscopy/ome-documentation.git","watchers_count":9,"git_refs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/events{/number}","private":false,"id":3198415,"default_branch":"develop","pushed_at":"2013-02-01T11:04:38Z","has_issues":true,"mirror_url":null,"trees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/forks"},"sha":"e1c4760c812f4b1b5d150a48ee872d4962f3722c","ref":"dev_4_4"}},{"_links":{"comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/207/comments"},"issue":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/207"},"html":{"href":"https://github.com/openmicroscopy/ome-documentation/pull/207"},"self":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/207"},"review_comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/207/comments"}},"title":"CLI documentation (rebased onto develop)","state":"closed","number":207,"url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/207","head":{"user":{"type":"User","url":"https://api.github.com/users/sbesson","received_events_url":"https://api.github.com/users/sbesson/received_events","login":"sbesson","events_url":"https://api.github.com/users/sbesson/events{/privacy}","organizations_url":"https://api.github.com/users/sbesson/orgs","avatar_url":"https://secure.gravatar.com/avatar/8ea0fde1295027db9d37e419ac10cbf4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/sbesson/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/sbesson/gists{/gist_id}","gravatar_id":"8ea0fde1295027db9d37e419ac10cbf4","followers_url":"https://api.github.com/users/sbesson/followers","id":1355463,"repos_url":"https://api.github.com/users/sbesson/repos","subscriptions_url":"https://api.github.com/users/sbesson/subscriptions","following_url":"https://api.github.com/users/sbesson/following"},"label":"sbesson:rebased/develop/2571_cli_improvements","repo":{"forks":0,"svn_url":"https://github.com/sbesson/ome-documentation","merges_url":"https://api.github.com/repos/sbesson/ome-documentation/merges","languages_url":"https://api.github.com/repos/sbesson/ome-documentation/languages","assignees_url":"https://api.github.com/repos/sbesson/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/sbesson/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/sbesson/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/sbesson/ome-documentation/statuses/{sha}","owner":{"type":"User","url":"https://api.github.com/users/sbesson","received_events_url":"https://api.github.com/users/sbesson/received_events","login":"sbesson","events_url":"https://api.github.com/users/sbesson/events{/privacy}","organizations_url":"https://api.github.com/users/sbesson/orgs","avatar_url":"https://secure.gravatar.com/avatar/8ea0fde1295027db9d37e419ac10cbf4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/sbesson/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/sbesson/gists{/gist_id}","gravatar_id":"8ea0fde1295027db9d37e419ac10cbf4","followers_url":"https://api.github.com/users/sbesson/followers","id":1355463,"repos_url":"https://api.github.com/users/sbesson/repos","subscriptions_url":"https://api.github.com/users/sbesson/subscriptions","following_url":"https://api.github.com/users/sbesson/following"},"open_issues":0,"updated_at":"2013-02-02T21:21:49Z","milestones_url":"https://api.github.com/repos/sbesson/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/sbesson/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/sbesson/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/sbesson/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/sbesson/ome-documentation/events","notifications_url":"https://api.github.com/repos/sbesson/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/sbesson/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/sbesson/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/sbesson/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/sbesson/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/sbesson/ome-documentation/collaborators{/collaborator}","full_name":"sbesson/ome-documentation","ssh_url":"git@github.com:sbesson/ome-documentation.git","pulls_url":"https://api.github.com/repos/sbesson/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/sbesson/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/sbesson/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":0,"subscription_url":"https://api.github.com/repos/sbesson/ome-documentation/subscription","teams_url":"https://api.github.com/repos/sbesson/ome-documentation/teams","watchers":1,"created_at":"2012-08-22T08:57:59Z","git_url":"git://github.com/sbesson/ome-documentation.git","open_issues_count":0,"labels_url":"https://api.github.com/repos/sbesson/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/sbesson/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/sbesson/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/sbesson/ome-documentation/keys{/key_id}","size":608,"compare_url":"https://api.github.com/repos/sbesson/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/sbesson/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/sbesson/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/sbesson/ome-documentation/hooks","fork":true,"html_url":"https://github.com/sbesson/ome-documentation","master_branch":"dev_4_4","clone_url":"https://github.com/sbesson/ome-documentation.git","watchers_count":1,"git_refs_url":"https://api.github.com/repos/sbesson/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/sbesson/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/sbesson/ome-documentation/issues/events{/number}","private":false,"id":5507021,"default_branch":"dev_4_4","pushed_at":"2013-02-01T15:04:17Z","has_issues":false,"mirror_url":null,"trees_url":"https://api.github.com/repos/sbesson/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/sbesson/ome-documentation/forks"},"sha":"e37ed12e664defb381f7726c8931484693770989","ref":"rebased/develop/2571_cli_improvements"},"assignee":null,"updated_at":"2013-01-15T20:04:10Z","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/207/comments","commits_url":"https://github.com/openmicroscopy/ome-documentation/pull/207/commits","closed_at":"2013-01-15T20:04:10Z","user":{"type":"User","url":"https://api.github.com/users/sbesson","received_events_url":"https://api.github.com/users/sbesson/received_events","login":"sbesson","events_url":"https://api.github.com/users/sbesson/events{/privacy}","organizations_url":"https://api.github.com/users/sbesson/orgs","avatar_url":"https://secure.gravatar.com/avatar/8ea0fde1295027db9d37e419ac10cbf4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/sbesson/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/sbesson/gists{/gist_id}","gravatar_id":"8ea0fde1295027db9d37e419ac10cbf4","followers_url":"https://api.github.com/users/sbesson/followers","id":1355463,"repos_url":"https://api.github.com/users/sbesson/repos","subscriptions_url":"https://api.github.com/users/sbesson/subscriptions","following_url":"https://api.github.com/users/sbesson/following"},"issue_url":"https://github.com/openmicroscopy/ome-documentation/issues/207","merged_at":"2013-01-15T20:04:10Z","merge_commit_sha":"43f6e415f4faf967ac93a94135843876437e48d7","created_at":"2013-01-14T08:49:46Z","review_comments_url":"https://github.com/openmicroscopy/ome-documentation/pull/207/comments","patch_url":"https://github.com/openmicroscopy/ome-documentation/pull/207.patch","html_url":"https://github.com/openmicroscopy/ome-documentation/pull/207","review_comment_url":"/repos/openmicroscopy/ome-documentation/pulls/comments/{number}","milestone":null,"body":"\n\nThis is the same as gh-179 but rebased onto develop.\n\n----\n\nThis PR was originally meant to document the CLI changes of openmicroscopy/openmicroscopy#498 and openmicroscopy/openmicroscopy#514. Since the Command Line Interface documentation had been directly imported from trac, I ended up significantly rewriting the CLI documentation with the help of @ximenesuk.\r\n\r\nSummary of main changes:\r\n- CLI documentation is now split into three pages (users, sysadmins, developers)\r\n- User documentation currently describes `sessions` & `import` plugins\r\n- Sysadmin documentation currently describes `config`, `db`, `admin`, `user` & `group` plugins\r\n- A new role `:omerocmd:` is defined in conf.py which turns CLI commands into bold face and create an entry in the generated index.\r\n\r\nNote: this PR documents changes occuring in the `dev_4_4` branch post the `v.4.4.5` tag. Thus it should only be be released together with the code release and should not be merged until a full release is scheduled.\n\n ","diff_url":"https://github.com/openmicroscopy/ome-documentation/pull/207.diff","id":3659910,"base":{"user":null,"label":"openmicroscopy:develop","repo":{"forks":19,"svn_url":"https://github.com/openmicroscopy/ome-documentation","merges_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/merges","languages_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/languages","assignees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/openmicroscopy/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/statuses/{sha}","owner":{"type":"Organization","url":"https://api.github.com/users/openmicroscopy","received_events_url":"https://api.github.com/users/openmicroscopy/received_events","login":"openmicroscopy","events_url":"https://api.github.com/users/openmicroscopy/events{/privacy}","organizations_url":"https://api.github.com/users/openmicroscopy/orgs","avatar_url":"https://secure.gravatar.com/avatar/7424190904f55023bd16416af0fd799b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","starred_url":"https://api.github.com/users/openmicroscopy/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/openmicroscopy/gists{/gist_id}","gravatar_id":"7424190904f55023bd16416af0fd799b","followers_url":"https://api.github.com/users/openmicroscopy/followers","id":975861,"repos_url":"https://api.github.com/users/openmicroscopy/repos","subscriptions_url":"https://api.github.com/users/openmicroscopy/subscriptions","following_url":"https://api.github.com/users/openmicroscopy/following"},"open_issues":3,"updated_at":"2013-02-01T11:04:39Z","milestones_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/events","notifications_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/collaborators{/collaborator}","full_name":"openmicroscopy/ome-documentation","ssh_url":"git@github.com:openmicroscopy/ome-documentation.git","pulls_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":19,"subscription_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscription","teams_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/teams","watchers":9,"created_at":"2012-01-17T10:20:53Z","git_url":"git://github.com/openmicroscopy/ome-documentation.git","open_issues_count":3,"labels_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/keys{/key_id}","size":488,"compare_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/hooks","fork":false,"html_url":"https://github.com/openmicroscopy/ome-documentation","master_branch":"develop","clone_url":"https://github.com/openmicroscopy/ome-documentation.git","watchers_count":9,"git_refs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/events{/number}","private":false,"id":3198415,"default_branch":"develop","pushed_at":"2013-02-01T11:04:38Z","has_issues":true,"mirror_url":null,"trees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/forks"},"sha":"5c0fcbe7f0fd8bd70c31f9e29b9ce5378e2726c3","ref":"develop"}},{"_links":{"comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/206/comments"},"issue":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/206"},"html":{"href":"https://github.com/openmicroscopy/ome-documentation/pull/206"},"self":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/206"},"review_comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/206/comments"}},"title":"Fixed forward declartion incomplete type error in c++ example code","state":"closed","number":206,"url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/206","head":{"user":{"type":"User","url":"https://api.github.com/users/dpwrussell","received_events_url":"https://api.github.com/users/dpwrussell/received_events","login":"dpwrussell","events_url":"https://api.github.com/users/dpwrussell/events{/privacy}","organizations_url":"https://api.github.com/users/dpwrussell/orgs","avatar_url":"https://secure.gravatar.com/avatar/bcb60819fb3f875de3d2701ee5642e17?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/dpwrussell/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/dpwrussell/gists{/gist_id}","gravatar_id":"bcb60819fb3f875de3d2701ee5642e17","followers_url":"https://api.github.com/users/dpwrussell/followers","id":1889043,"repos_url":"https://api.github.com/users/dpwrussell/repos","subscriptions_url":"https://api.github.com/users/dpwrussell/subscriptions","following_url":"https://api.github.com/users/dpwrussell/following"},"label":"dpwrussell:dev_4_4","repo":{"forks":0,"svn_url":"https://github.com/dpwrussell/ome-documentation","merges_url":"https://api.github.com/repos/dpwrussell/ome-documentation/merges","languages_url":"https://api.github.com/repos/dpwrussell/ome-documentation/languages","assignees_url":"https://api.github.com/repos/dpwrussell/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/dpwrussell/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/dpwrussell/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/dpwrussell/ome-documentation/statuses/{sha}","owner":{"type":"User","url":"https://api.github.com/users/dpwrussell","received_events_url":"https://api.github.com/users/dpwrussell/received_events","login":"dpwrussell","events_url":"https://api.github.com/users/dpwrussell/events{/privacy}","organizations_url":"https://api.github.com/users/dpwrussell/orgs","avatar_url":"https://secure.gravatar.com/avatar/bcb60819fb3f875de3d2701ee5642e17?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/dpwrussell/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/dpwrussell/gists{/gist_id}","gravatar_id":"bcb60819fb3f875de3d2701ee5642e17","followers_url":"https://api.github.com/users/dpwrussell/followers","id":1889043,"repos_url":"https://api.github.com/users/dpwrussell/repos","subscriptions_url":"https://api.github.com/users/dpwrussell/subscriptions","following_url":"https://api.github.com/users/dpwrussell/following"},"open_issues":0,"updated_at":"2013-01-14T20:49:36Z","milestones_url":"https://api.github.com/repos/dpwrussell/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/dpwrussell/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/dpwrussell/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/dpwrussell/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/dpwrussell/ome-documentation/events","notifications_url":"https://api.github.com/repos/dpwrussell/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/dpwrussell/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/dpwrussell/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/dpwrussell/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/dpwrussell/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/dpwrussell/ome-documentation/collaborators{/collaborator}","full_name":"dpwrussell/ome-documentation","ssh_url":"git@github.com:dpwrussell/ome-documentation.git","pulls_url":"https://api.github.com/repos/dpwrussell/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/dpwrussell/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/dpwrussell/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":0,"subscription_url":"https://api.github.com/repos/dpwrussell/ome-documentation/subscription","teams_url":"https://api.github.com/repos/dpwrussell/ome-documentation/teams","watchers":0,"created_at":"2013-01-11T16:28:07Z","git_url":"git://github.com/dpwrussell/ome-documentation.git","open_issues_count":0,"labels_url":"https://api.github.com/repos/dpwrussell/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/dpwrussell/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/dpwrussell/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/dpwrussell/ome-documentation/keys{/key_id}","size":132,"compare_url":"https://api.github.com/repos/dpwrussell/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/dpwrussell/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/dpwrussell/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/dpwrussell/ome-documentation/hooks","fork":true,"html_url":"https://github.com/dpwrussell/ome-documentation","master_branch":"develop","clone_url":"https://github.com/dpwrussell/ome-documentation.git","watchers_count":0,"git_refs_url":"https://api.github.com/repos/dpwrussell/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/dpwrussell/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/dpwrussell/ome-documentation/issues/events{/number}","private":false,"id":7562962,"default_branch":"develop","pushed_at":"2013-01-11T17:05:00Z","has_issues":false,"mirror_url":null,"trees_url":"https://api.github.com/repos/dpwrussell/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/dpwrussell/ome-documentation/forks"},"sha":"4033810988777c8f905e44f627a398640df2ed05","ref":"dev_4_4"},"assignee":null,"updated_at":"2013-01-14T20:49:36Z","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/206/comments","commits_url":"https://github.com/openmicroscopy/ome-documentation/pull/206/commits","closed_at":"2013-01-14T20:49:36Z","user":{"type":"User","url":"https://api.github.com/users/dpwrussell","received_events_url":"https://api.github.com/users/dpwrussell/received_events","login":"dpwrussell","events_url":"https://api.github.com/users/dpwrussell/events{/privacy}","organizations_url":"https://api.github.com/users/dpwrussell/orgs","avatar_url":"https://secure.gravatar.com/avatar/bcb60819fb3f875de3d2701ee5642e17?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/dpwrussell/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/dpwrussell/gists{/gist_id}","gravatar_id":"bcb60819fb3f875de3d2701ee5642e17","followers_url":"https://api.github.com/users/dpwrussell/followers","id":1889043,"repos_url":"https://api.github.com/users/dpwrussell/repos","subscriptions_url":"https://api.github.com/users/dpwrussell/subscriptions","following_url":"https://api.github.com/users/dpwrussell/following"},"issue_url":"https://github.com/openmicroscopy/ome-documentation/issues/206","merged_at":"2013-01-14T20:49:36Z","merge_commit_sha":"591c4b608e04a3e6f7da4d599f6761f7111c53b3","created_at":"2013-01-11T17:12:07Z","review_comments_url":"https://github.com/openmicroscopy/ome-documentation/pull/206/comments","patch_url":"https://github.com/openmicroscopy/ome-documentation/pull/206.patch","html_url":"https://github.com/openmicroscopy/ome-documentation/pull/206","review_comment_url":"/repos/openmicroscopy/ome-documentation/pulls/comments/{number}","milestone":null,"body":"Compiling the existing example code results in an incomplete type error as omero/client.h includes omero/ServicesF.h which forward declares IAdmin\r\n\r\nFix by including omero/api/IAdmin.h\r\n\r\n```\r\ng++ -c -o yourcode.o yourcode.cpp -I/home/dpwrussell/Ice/omero/OMERO.cpp-4.4.5-ice33-posix-gcc-4.6.3-64dbg/include -I/home/dpwrussell/Ice/home/Ice-3.3.1//include \r\nyourcode.cpp: In function ‘int main(int, char**)’:\r\nyourcode.cpp:30:18: error: invalid use of incomplete type ‘struct IceProxy::omero::api::IAdmin’\r\n/home/dpwrussell/Ice/omero/OMERO.cpp-4.4.5-ice33-posix-gcc-4.6.3-64dbg/include/omero/ServicesF.h:60:7: error: forward declaration of ‘struct IceProxy::omero::api::IAdmin’\r\nmake: *** [yourcode.o] Error 1\r\n```","diff_url":"https://github.com/openmicroscopy/ome-documentation/pull/206.diff","id":3642598,"base":{"user":null,"label":"openmicroscopy:dev_4_4","repo":{"forks":19,"svn_url":"https://github.com/openmicroscopy/ome-documentation","merges_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/merges","languages_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/languages","assignees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/openmicroscopy/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/statuses/{sha}","owner":{"type":"Organization","url":"https://api.github.com/users/openmicroscopy","received_events_url":"https://api.github.com/users/openmicroscopy/received_events","login":"openmicroscopy","events_url":"https://api.github.com/users/openmicroscopy/events{/privacy}","organizations_url":"https://api.github.com/users/openmicroscopy/orgs","avatar_url":"https://secure.gravatar.com/avatar/7424190904f55023bd16416af0fd799b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","starred_url":"https://api.github.com/users/openmicroscopy/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/openmicroscopy/gists{/gist_id}","gravatar_id":"7424190904f55023bd16416af0fd799b","followers_url":"https://api.github.com/users/openmicroscopy/followers","id":975861,"repos_url":"https://api.github.com/users/openmicroscopy/repos","subscriptions_url":"https://api.github.com/users/openmicroscopy/subscriptions","following_url":"https://api.github.com/users/openmicroscopy/following"},"open_issues":3,"updated_at":"2013-02-01T11:04:39Z","milestones_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/events","notifications_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/collaborators{/collaborator}","full_name":"openmicroscopy/ome-documentation","ssh_url":"git@github.com:openmicroscopy/ome-documentation.git","pulls_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":19,"subscription_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscription","teams_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/teams","watchers":9,"created_at":"2012-01-17T10:20:53Z","git_url":"git://github.com/openmicroscopy/ome-documentation.git","open_issues_count":3,"labels_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/keys{/key_id}","size":488,"compare_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/hooks","fork":false,"html_url":"https://github.com/openmicroscopy/ome-documentation","master_branch":"develop","clone_url":"https://github.com/openmicroscopy/ome-documentation.git","watchers_count":9,"git_refs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/events{/number}","private":false,"id":3198415,"default_branch":"develop","pushed_at":"2013-02-01T11:04:38Z","has_issues":true,"mirror_url":null,"trees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/forks"},"sha":"0250249b48e2df6daf8fcaa9d4508a5bc744117a","ref":"dev_4_4"}},{"_links":{"comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/205/comments"},"issue":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/205"},"html":{"href":"https://github.com/openmicroscopy/ome-documentation/pull/205"},"self":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/205"},"review_comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/205/comments"}},"title":"Fix typo and broken links. (rebased onto develop)","state":"closed","number":205,"url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/205","head":{"user":{"type":"User","url":"https://api.github.com/users/jburel","received_events_url":"https://api.github.com/users/jburel/received_events","login":"jburel","events_url":"https://api.github.com/users/jburel/events{/privacy}","organizations_url":"https://api.github.com/users/jburel/orgs","avatar_url":"https://secure.gravatar.com/avatar/e1f7a610652e5e71eda0b0b8381c3f98?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/jburel/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/jburel/gists{/gist_id}","gravatar_id":"e1f7a610652e5e71eda0b0b8381c3f98","followers_url":"https://api.github.com/users/jburel/followers","id":1022396,"repos_url":"https://api.github.com/users/jburel/repos","subscriptions_url":"https://api.github.com/users/jburel/subscriptions","following_url":"https://api.github.com/users/jburel/following"},"label":"jburel:rebased/develop/script-doc","repo":{"forks":0,"svn_url":"https://github.com/jburel/ome-documentation","merges_url":"https://api.github.com/repos/jburel/ome-documentation/merges","languages_url":"https://api.github.com/repos/jburel/ome-documentation/languages","assignees_url":"https://api.github.com/repos/jburel/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/jburel/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/jburel/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/jburel/ome-documentation/statuses/{sha}","owner":{"type":"User","url":"https://api.github.com/users/jburel","received_events_url":"https://api.github.com/users/jburel/received_events","login":"jburel","events_url":"https://api.github.com/users/jburel/events{/privacy}","organizations_url":"https://api.github.com/users/jburel/orgs","avatar_url":"https://secure.gravatar.com/avatar/e1f7a610652e5e71eda0b0b8381c3f98?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/jburel/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/jburel/gists{/gist_id}","gravatar_id":"e1f7a610652e5e71eda0b0b8381c3f98","followers_url":"https://api.github.com/users/jburel/followers","id":1022396,"repos_url":"https://api.github.com/users/jburel/repos","subscriptions_url":"https://api.github.com/users/jburel/subscriptions","following_url":"https://api.github.com/users/jburel/following"},"open_issues":0,"updated_at":"2013-01-18T09:49:33Z","milestones_url":"https://api.github.com/repos/jburel/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/jburel/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/jburel/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/jburel/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/jburel/ome-documentation/events","notifications_url":"https://api.github.com/repos/jburel/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/jburel/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/jburel/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/jburel/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/jburel/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/jburel/ome-documentation/collaborators{/collaborator}","full_name":"jburel/ome-documentation","ssh_url":"git@github.com:jburel/ome-documentation.git","pulls_url":"https://api.github.com/repos/jburel/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/jburel/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/jburel/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":0,"subscription_url":"https://api.github.com/repos/jburel/ome-documentation/subscription","teams_url":"https://api.github.com/repos/jburel/ome-documentation/teams","watchers":2,"created_at":"2012-01-17T14:12:05Z","git_url":"git://github.com/jburel/ome-documentation.git","open_issues_count":0,"labels_url":"https://api.github.com/repos/jburel/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/jburel/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/jburel/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/jburel/ome-documentation/keys{/key_id}","size":292,"compare_url":"https://api.github.com/repos/jburel/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/jburel/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/jburel/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/jburel/ome-documentation/hooks","fork":true,"html_url":"https://github.com/jburel/ome-documentation","clone_url":"https://github.com/jburel/ome-documentation.git","watchers_count":2,"git_refs_url":"https://api.github.com/repos/jburel/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":null,"contents_url":"https://api.github.com/repos/jburel/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/jburel/ome-documentation/issues/events{/number}","private":false,"id":3199804,"pushed_at":"2013-01-16T19:23:39Z","has_issues":false,"mirror_url":null,"trees_url":"https://api.github.com/repos/jburel/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/jburel/ome-documentation/forks"},"sha":"90bea8f261ad2637ba3ccaaaa2c50714475c1054","ref":"rebased/develop/script-doc"},"assignee":null,"updated_at":"2013-01-14T08:20:15Z","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/205/comments","commits_url":"https://github.com/openmicroscopy/ome-documentation/pull/205/commits","closed_at":"2013-01-14T08:20:15Z","user":{"type":"User","url":"https://api.github.com/users/jburel","received_events_url":"https://api.github.com/users/jburel/received_events","login":"jburel","events_url":"https://api.github.com/users/jburel/events{/privacy}","organizations_url":"https://api.github.com/users/jburel/orgs","avatar_url":"https://secure.gravatar.com/avatar/e1f7a610652e5e71eda0b0b8381c3f98?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/jburel/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/jburel/gists{/gist_id}","gravatar_id":"e1f7a610652e5e71eda0b0b8381c3f98","followers_url":"https://api.github.com/users/jburel/followers","id":1022396,"repos_url":"https://api.github.com/users/jburel/repos","subscriptions_url":"https://api.github.com/users/jburel/subscriptions","following_url":"https://api.github.com/users/jburel/following"},"issue_url":"https://github.com/openmicroscopy/ome-documentation/issues/205","merged_at":"2013-01-14T08:20:15Z","merge_commit_sha":"a42b2d13763841ad6e8d665a12e9ec94736b03ae","created_at":"2013-01-10T19:51:34Z","review_comments_url":"https://github.com/openmicroscopy/ome-documentation/pull/205/comments","patch_url":"https://github.com/openmicroscopy/ome-documentation/pull/205.patch","html_url":"https://github.com/openmicroscopy/ome-documentation/pull/205","review_comment_url":"/repos/openmicroscopy/ome-documentation/pulls/comments/{number}","milestone":null,"body":"\n\nThis is the same as gh-199 but rebased onto develop.\n\n----\n\nProblem noticed while reviewing Petr's PR.\n\n ","diff_url":"https://github.com/openmicroscopy/ome-documentation/pull/205.diff","id":3627317,"base":{"user":null,"label":"openmicroscopy:develop","repo":{"forks":19,"svn_url":"https://github.com/openmicroscopy/ome-documentation","merges_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/merges","languages_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/languages","assignees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/openmicroscopy/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/statuses/{sha}","owner":{"type":"Organization","url":"https://api.github.com/users/openmicroscopy","received_events_url":"https://api.github.com/users/openmicroscopy/received_events","login":"openmicroscopy","events_url":"https://api.github.com/users/openmicroscopy/events{/privacy}","organizations_url":"https://api.github.com/users/openmicroscopy/orgs","avatar_url":"https://secure.gravatar.com/avatar/7424190904f55023bd16416af0fd799b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","starred_url":"https://api.github.com/users/openmicroscopy/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/openmicroscopy/gists{/gist_id}","gravatar_id":"7424190904f55023bd16416af0fd799b","followers_url":"https://api.github.com/users/openmicroscopy/followers","id":975861,"repos_url":"https://api.github.com/users/openmicroscopy/repos","subscriptions_url":"https://api.github.com/users/openmicroscopy/subscriptions","following_url":"https://api.github.com/users/openmicroscopy/following"},"open_issues":3,"updated_at":"2013-02-01T11:04:39Z","milestones_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/events","notifications_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/collaborators{/collaborator}","full_name":"openmicroscopy/ome-documentation","ssh_url":"git@github.com:openmicroscopy/ome-documentation.git","pulls_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":19,"subscription_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscription","teams_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/teams","watchers":9,"created_at":"2012-01-17T10:20:53Z","git_url":"git://github.com/openmicroscopy/ome-documentation.git","open_issues_count":3,"labels_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/keys{/key_id}","size":488,"compare_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/hooks","fork":false,"html_url":"https://github.com/openmicroscopy/ome-documentation","master_branch":"develop","clone_url":"https://github.com/openmicroscopy/ome-documentation.git","watchers_count":9,"git_refs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/events{/number}","private":false,"id":3198415,"default_branch":"develop","pushed_at":"2013-02-01T11:04:38Z","has_issues":true,"mirror_url":null,"trees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/forks"},"sha":"66b416256fd3333771b9722582e2801df96c4a99","ref":"develop"}},{"_links":{"comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/204/comments"},"issue":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/204"},"html":{"href":"https://github.com/openmicroscopy/ome-documentation/pull/204"},"self":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/204"},"review_comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/204/comments"}},"title":"Add note about libjpeg for PIL","state":"closed","number":204,"url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/204","head":{"user":null,"label":"imcf:develop","repo":{"forks":0,"svn_url":"https://github.com/imcf/ome-documentation","merges_url":"https://api.github.com/repos/imcf/ome-documentation/merges","languages_url":"https://api.github.com/repos/imcf/ome-documentation/languages","assignees_url":"https://api.github.com/repos/imcf/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/imcf/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/imcf/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/imcf/ome-documentation/statuses/{sha}","owner":{"type":"Organization","url":"https://api.github.com/users/imcf","received_events_url":"https://api.github.com/users/imcf/received_events","login":"imcf","events_url":"https://api.github.com/users/imcf/events{/privacy}","organizations_url":"https://api.github.com/users/imcf/orgs","avatar_url":"https://secure.gravatar.com/avatar/2e1c3dfd6e44c98d66556f9e454e7b99?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","starred_url":"https://api.github.com/users/imcf/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/imcf/gists{/gist_id}","gravatar_id":"2e1c3dfd6e44c98d66556f9e454e7b99","followers_url":"https://api.github.com/users/imcf/followers","id":2847663,"repos_url":"https://api.github.com/users/imcf/repos","subscriptions_url":"https://api.github.com/users/imcf/subscriptions","following_url":"https://api.github.com/users/imcf/following"},"open_issues":0,"updated_at":"2013-01-14T15:20:58Z","milestones_url":"https://api.github.com/repos/imcf/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/imcf/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/imcf/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/imcf/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/imcf/ome-documentation/events","notifications_url":"https://api.github.com/repos/imcf/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/imcf/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/imcf/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/imcf/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/imcf/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/imcf/ome-documentation/collaborators{/collaborator}","full_name":"imcf/ome-documentation","ssh_url":"git@github.com:imcf/ome-documentation.git","pulls_url":"https://api.github.com/repos/imcf/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/imcf/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/imcf/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":0,"subscription_url":"https://api.github.com/repos/imcf/ome-documentation/subscription","teams_url":"https://api.github.com/repos/imcf/ome-documentation/teams","watchers":0,"created_at":"2013-01-10T15:32:44Z","git_url":"git://github.com/imcf/ome-documentation.git","open_issues_count":0,"labels_url":"https://api.github.com/repos/imcf/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/imcf/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/imcf/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/imcf/ome-documentation/keys{/key_id}","size":128,"compare_url":"https://api.github.com/repos/imcf/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/imcf/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/imcf/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/imcf/ome-documentation/hooks","fork":true,"html_url":"https://github.com/imcf/ome-documentation","master_branch":"develop","clone_url":"https://github.com/imcf/ome-documentation.git","watchers_count":0,"git_refs_url":"https://api.github.com/repos/imcf/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/imcf/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/imcf/ome-documentation/issues/events{/number}","private":false,"id":7543421,"default_branch":"develop","pushed_at":"2013-01-10T16:04:23Z","has_issues":false,"mirror_url":null,"trees_url":"https://api.github.com/repos/imcf/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/imcf/ome-documentation/forks"},"sha":"e37990a177fbb47a481663e79015d1862d84e20c","ref":"develop"},"assignee":null,"updated_at":"2013-01-14T15:20:58Z","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/204/comments","commits_url":"https://github.com/openmicroscopy/ome-documentation/pull/204/commits","closed_at":"2013-01-14T15:20:58Z","user":{"type":"User","url":"https://api.github.com/users/ehrenfeu","received_events_url":"https://api.github.com/users/ehrenfeu/received_events","login":"ehrenfeu","events_url":"https://api.github.com/users/ehrenfeu/events{/privacy}","organizations_url":"https://api.github.com/users/ehrenfeu/orgs","avatar_url":"https://secure.gravatar.com/avatar/d78ee38089403f67735ddbdc80b69745?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/ehrenfeu/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/ehrenfeu/gists{/gist_id}","gravatar_id":"d78ee38089403f67735ddbdc80b69745","followers_url":"https://api.github.com/users/ehrenfeu/followers","id":697157,"repos_url":"https://api.github.com/users/ehrenfeu/repos","subscriptions_url":"https://api.github.com/users/ehrenfeu/subscriptions","following_url":"https://api.github.com/users/ehrenfeu/following"},"issue_url":"https://github.com/openmicroscopy/ome-documentation/issues/204","merged_at":"2013-01-14T15:20:58Z","merge_commit_sha":"d6d517c48187befdfdd1dc6784542d0976433ddd","created_at":"2013-01-10T16:20:56Z","review_comments_url":"https://github.com/openmicroscopy/ome-documentation/pull/204/comments","patch_url":"https://github.com/openmicroscopy/ome-documentation/pull/204.patch","html_url":"https://github.com/openmicroscopy/ome-documentation/pull/204","review_comment_url":"/repos/openmicroscopy/ome-documentation/pulls/comments/{number}","milestone":null,"body":"If `libjpeg` is not installed while building PIL the JPEG support for some of the python scripts is missing (e.g. the \"Split View\" from the Figure scripts will fail).\r\n\r\nThe windows documentation probably doesn't need to be updated since PIL is provided as a binary distribution for that platform (and hopefully comes with JPEG support).","diff_url":"https://github.com/openmicroscopy/ome-documentation/pull/204.diff","id":3623392,"base":{"user":null,"label":"openmicroscopy:develop","repo":{"forks":19,"svn_url":"https://github.com/openmicroscopy/ome-documentation","merges_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/merges","languages_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/languages","assignees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/openmicroscopy/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/statuses/{sha}","owner":{"type":"Organization","url":"https://api.github.com/users/openmicroscopy","received_events_url":"https://api.github.com/users/openmicroscopy/received_events","login":"openmicroscopy","events_url":"https://api.github.com/users/openmicroscopy/events{/privacy}","organizations_url":"https://api.github.com/users/openmicroscopy/orgs","avatar_url":"https://secure.gravatar.com/avatar/7424190904f55023bd16416af0fd799b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","starred_url":"https://api.github.com/users/openmicroscopy/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/openmicroscopy/gists{/gist_id}","gravatar_id":"7424190904f55023bd16416af0fd799b","followers_url":"https://api.github.com/users/openmicroscopy/followers","id":975861,"repos_url":"https://api.github.com/users/openmicroscopy/repos","subscriptions_url":"https://api.github.com/users/openmicroscopy/subscriptions","following_url":"https://api.github.com/users/openmicroscopy/following"},"open_issues":3,"updated_at":"2013-02-01T11:04:39Z","milestones_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/events","notifications_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/collaborators{/collaborator}","full_name":"openmicroscopy/ome-documentation","ssh_url":"git@github.com:openmicroscopy/ome-documentation.git","pulls_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":19,"subscription_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscription","teams_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/teams","watchers":9,"created_at":"2012-01-17T10:20:53Z","git_url":"git://github.com/openmicroscopy/ome-documentation.git","open_issues_count":3,"labels_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/keys{/key_id}","size":488,"compare_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/hooks","fork":false,"html_url":"https://github.com/openmicroscopy/ome-documentation","master_branch":"develop","clone_url":"https://github.com/openmicroscopy/ome-documentation.git","watchers_count":9,"git_refs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/events{/number}","private":false,"id":3198415,"default_branch":"develop","pushed_at":"2013-02-01T11:04:38Z","has_issues":true,"mirror_url":null,"trees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/forks"},"sha":"66b416256fd3333771b9722582e2801df96c4a99","ref":"develop"}},{"_links":{"comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/203/comments"},"issue":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/203"},"html":{"href":"https://github.com/openmicroscopy/ome-documentation/pull/203"},"self":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/203"},"review_comments":{"href":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/203/comments"}},"title":"9993 fix develop","state":"closed","number":203,"url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls/203","head":{"user":{"type":"User","url":"https://api.github.com/users/hflynn","received_events_url":"https://api.github.com/users/hflynn/received_events","login":"hflynn","events_url":"https://api.github.com/users/hflynn/events{/privacy}","organizations_url":"https://api.github.com/users/hflynn/orgs","avatar_url":"https://secure.gravatar.com/avatar/0ee126d1abcd3c5b4f178b8d77af95ae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/hflynn/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/hflynn/gists{/gist_id}","gravatar_id":"0ee126d1abcd3c5b4f178b8d77af95ae","followers_url":"https://api.github.com/users/hflynn/followers","id":2368904,"repos_url":"https://api.github.com/users/hflynn/repos","subscriptions_url":"https://api.github.com/users/hflynn/subscriptions","following_url":"https://api.github.com/users/hflynn/following"},"label":"hflynn:9993-fix-develop","repo":{"forks":0,"svn_url":"https://github.com/hflynn/ome-documentation","merges_url":"https://api.github.com/repos/hflynn/ome-documentation/merges","languages_url":"https://api.github.com/repos/hflynn/ome-documentation/languages","assignees_url":"https://api.github.com/repos/hflynn/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/hflynn/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/hflynn/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/hflynn/ome-documentation/statuses/{sha}","owner":{"type":"User","url":"https://api.github.com/users/hflynn","received_events_url":"https://api.github.com/users/hflynn/received_events","login":"hflynn","events_url":"https://api.github.com/users/hflynn/events{/privacy}","organizations_url":"https://api.github.com/users/hflynn/orgs","avatar_url":"https://secure.gravatar.com/avatar/0ee126d1abcd3c5b4f178b8d77af95ae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/hflynn/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/hflynn/gists{/gist_id}","gravatar_id":"0ee126d1abcd3c5b4f178b8d77af95ae","followers_url":"https://api.github.com/users/hflynn/followers","id":2368904,"repos_url":"https://api.github.com/users/hflynn/repos","subscriptions_url":"https://api.github.com/users/hflynn/subscriptions","following_url":"https://api.github.com/users/hflynn/following"},"open_issues":0,"updated_at":"2013-02-01T17:31:59Z","milestones_url":"https://api.github.com/repos/hflynn/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/hflynn/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/hflynn/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/hflynn/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/hflynn/ome-documentation/events","notifications_url":"https://api.github.com/repos/hflynn/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/hflynn/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/hflynn/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/hflynn/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/hflynn/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/hflynn/ome-documentation/collaborators{/collaborator}","full_name":"hflynn/ome-documentation","ssh_url":"git@github.com:hflynn/ome-documentation.git","pulls_url":"https://api.github.com/repos/hflynn/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/hflynn/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/hflynn/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":0,"subscription_url":"https://api.github.com/repos/hflynn/ome-documentation/subscription","teams_url":"https://api.github.com/repos/hflynn/ome-documentation/teams","watchers":0,"created_at":"2012-09-18T09:22:07Z","git_url":"git://github.com/hflynn/ome-documentation.git","open_issues_count":0,"labels_url":"https://api.github.com/repos/hflynn/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/hflynn/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/hflynn/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/hflynn/ome-documentation/keys{/key_id}","size":340,"compare_url":"https://api.github.com/repos/hflynn/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/hflynn/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/hflynn/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/hflynn/ome-documentation/hooks","fork":true,"html_url":"https://github.com/hflynn/ome-documentation","master_branch":"develop","clone_url":"https://github.com/hflynn/ome-documentation.git","watchers_count":0,"git_refs_url":"https://api.github.com/repos/hflynn/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/hflynn/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/hflynn/ome-documentation/issues/events{/number}","private":false,"id":5853981,"default_branch":"develop","pushed_at":"2013-02-01T17:31:59Z","has_issues":false,"mirror_url":null,"trees_url":"https://api.github.com/repos/hflynn/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/hflynn/ome-documentation/forks"},"sha":"814e48863217bc6b9d4e1f74de4061e56918b3cb","ref":"9993-fix-develop"},"assignee":null,"updated_at":"2013-01-14T08:18:58Z","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/203/comments","commits_url":"https://github.com/openmicroscopy/ome-documentation/pull/203/commits","closed_at":"2013-01-14T08:18:58Z","user":{"type":"User","url":"https://api.github.com/users/hflynn","received_events_url":"https://api.github.com/users/hflynn/received_events","login":"hflynn","events_url":"https://api.github.com/users/hflynn/events{/privacy}","organizations_url":"https://api.github.com/users/hflynn/orgs","avatar_url":"https://secure.gravatar.com/avatar/0ee126d1abcd3c5b4f178b8d77af95ae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","starred_url":"https://api.github.com/users/hflynn/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/hflynn/gists{/gist_id}","gravatar_id":"0ee126d1abcd3c5b4f178b8d77af95ae","followers_url":"https://api.github.com/users/hflynn/followers","id":2368904,"repos_url":"https://api.github.com/users/hflynn/repos","subscriptions_url":"https://api.github.com/users/hflynn/subscriptions","following_url":"https://api.github.com/users/hflynn/following"},"issue_url":"https://github.com/openmicroscopy/ome-documentation/issues/203","merged_at":"2013-01-14T08:18:58Z","merge_commit_sha":"6ffaa6729532be5843b3a2236ab0d422b1775c8b","created_at":"2013-01-10T16:17:51Z","review_comments_url":"https://github.com/openmicroscopy/ome-documentation/pull/203/comments","patch_url":"https://github.com/openmicroscopy/ome-documentation/pull/203.patch","html_url":"https://github.com/openmicroscopy/ome-documentation/pull/203","review_comment_url":"/repos/openmicroscopy/ome-documentation/pulls/comments/{number}","milestone":null,"body":"PR #200 rebased to develop, fixing issue in ticket 9993","diff_url":"https://github.com/openmicroscopy/ome-documentation/pull/203.diff","id":3623337,"base":{"user":null,"label":"openmicroscopy:develop","repo":{"forks":19,"svn_url":"https://github.com/openmicroscopy/ome-documentation","merges_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/merges","languages_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/languages","assignees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/assignees{/user}","url":"https://api.github.com/repos/openmicroscopy/ome-documentation","has_downloads":true,"issues_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues{/number}","statuses_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/statuses/{sha}","owner":{"type":"Organization","url":"https://api.github.com/users/openmicroscopy","received_events_url":"https://api.github.com/users/openmicroscopy/received_events","login":"openmicroscopy","events_url":"https://api.github.com/users/openmicroscopy/events{/privacy}","organizations_url":"https://api.github.com/users/openmicroscopy/orgs","avatar_url":"https://secure.gravatar.com/avatar/7424190904f55023bd16416af0fd799b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","starred_url":"https://api.github.com/users/openmicroscopy/starred{/owner}{/repo}","gists_url":"https://api.github.com/users/openmicroscopy/gists{/gist_id}","gravatar_id":"7424190904f55023bd16416af0fd799b","followers_url":"https://api.github.com/users/openmicroscopy/followers","id":975861,"repos_url":"https://api.github.com/users/openmicroscopy/repos","subscriptions_url":"https://api.github.com/users/openmicroscopy/subscriptions","following_url":"https://api.github.com/users/openmicroscopy/following"},"open_issues":3,"updated_at":"2013-02-01T11:04:39Z","milestones_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/milestones{/number}","archive_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/{archive_format}{/ref}","stargazers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/stargazers","branches_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/branches{/branch}","events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/events","notifications_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/notifications{?since,all,participating}","comments_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/comments{/number}","commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/commits{/sha}","subscribers_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscribers","contributors_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contributors","collaborators_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/collaborators{/collaborator}","full_name":"openmicroscopy/ome-documentation","ssh_url":"git@github.com:openmicroscopy/ome-documentation.git","pulls_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/pulls{/number}","issue_comment_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/comments/{number}","blobs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/blobs{/sha}","homepage":"http://openmicroscopy.org","has_wiki":true,"forks_count":19,"subscription_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/subscription","teams_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/teams","watchers":9,"created_at":"2012-01-17T10:20:53Z","git_url":"git://github.com/openmicroscopy/ome-documentation.git","open_issues_count":3,"labels_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/labels{/name}","downloads_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/downloads","git_tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/tags{/sha}","keys_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/keys{/key_id}","size":488,"compare_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/compare/{base}...{head}","git_commits_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/commits{/sha}","tags_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/tags{/tag}","hooks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/hooks","fork":false,"html_url":"https://github.com/openmicroscopy/ome-documentation","master_branch":"develop","clone_url":"https://github.com/openmicroscopy/ome-documentation.git","watchers_count":9,"git_refs_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/refs{/sha}","description":"Sphinx-based documentation for the Open Microscopy Environment ","name":"ome-documentation","language":"Python","contents_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/contents/{+path}","issue_events_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/issues/events{/number}","private":false,"id":3198415,"default_branch":"develop","pushed_at":"2013-02-01T11:04:38Z","has_issues":true,"mirror_url":null,"trees_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/git/trees{/sha}","forks_url":"https://api.github.com/repos/openmicroscopy/ome-documentation/forks"},"sha":"66b416256fd3333771b9722582e2801df96c4a99","ref":"develop"}}] + diff --git a/lib/github/tests/ReplayData/Issue133.testGetPageWithoutInitialArguments.txt b/lib/github/tests/ReplayData/Issue133.testGetPageWithoutInitialArguments.txt new file mode 100644 index 0000000000..0059759dc6 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue133.testGetPageWithoutInitialArguments.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/user/followers +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '20426'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4932'), ('server', 'GitHub.com'), ('last-modified', 'Tue, 29 Jan 2013 16:17:47 GMT'), ('connection', 'keep-alive'), ('etag', '"fb0fbb23fbad4099a53f6c5f6e0de34d"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Tue, 29 Jan 2013 17:46:40 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"type":"User","url":"https://api.github.com/users/jnorthrup","repos_url":"https://api.github.com/users/jnorthrup/repos","avatar_url":"https://secure.gravatar.com/avatar/29222a2dca6dd4cd33790d72ff3f5346?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","organizations_url":"https://api.github.com/users/jnorthrup/orgs","received_events_url":"https://api.github.com/users/jnorthrup/received_events","events_url":"https://api.github.com/users/jnorthrup/events{/privacy}","followers_url":"https://api.github.com/users/jnorthrup/followers","starred_url":"https://api.github.com/users/jnorthrup/starred{/owner}{/repo}","following_url":"https://api.github.com/users/jnorthrup/following","gravatar_id":"29222a2dca6dd4cd33790d72ff3f5346","subscriptions_url":"https://api.github.com/users/jnorthrup/subscriptions","gists_url":"https://api.github.com/users/jnorthrup/gists{/gist_id}","id":73514,"login":"jnorthrup"},{"type":"User","url":"https://api.github.com/users/brugidou","repos_url":"https://api.github.com/users/brugidou/repos","avatar_url":"https://secure.gravatar.com/avatar/43485eeefd3da3c96a7ea0c7e6b839dc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","organizations_url":"https://api.github.com/users/brugidou/orgs","received_events_url":"https://api.github.com/users/brugidou/received_events","events_url":"https://api.github.com/users/brugidou/events{/privacy}","followers_url":"https://api.github.com/users/brugidou/followers","starred_url":"https://api.github.com/users/brugidou/starred{/owner}{/repo}","following_url":"https://api.github.com/users/brugidou/following","gravatar_id":"43485eeefd3da3c96a7ea0c7e6b839dc","subscriptions_url":"https://api.github.com/users/brugidou/subscriptions","gists_url":"https://api.github.com/users/brugidou/gists{/gist_id}","id":167633,"login":"brugidou"},{"type":"User","url":"https://api.github.com/users/regisb","repos_url":"https://api.github.com/users/regisb/repos","avatar_url":"https://secure.gravatar.com/avatar/c5c2e6aa207dd3686244700d39117bdc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","organizations_url":"https://api.github.com/users/regisb/orgs","received_events_url":"https://api.github.com/users/regisb/received_events","events_url":"https://api.github.com/users/regisb/events{/privacy}","followers_url":"https://api.github.com/users/regisb/followers","starred_url":"https://api.github.com/users/regisb/starred{/owner}{/repo}","following_url":"https://api.github.com/users/regisb/following","gravatar_id":"c5c2e6aa207dd3686244700d39117bdc","subscriptions_url":"https://api.github.com/users/regisb/subscriptions","gists_url":"https://api.github.com/users/regisb/gists{/gist_id}","id":44319,"login":"regisb"},{"type":"User","url":"https://api.github.com/users/walidk","repos_url":"https://api.github.com/users/walidk/repos","avatar_url":"https://secure.gravatar.com/avatar/e251d20766937949a109603ca37bb3be?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","organizations_url":"https://api.github.com/users/walidk/orgs","received_events_url":"https://api.github.com/users/walidk/received_events","events_url":"https://api.github.com/users/walidk/events{/privacy}","followers_url":"https://api.github.com/users/walidk/followers","starred_url":"https://api.github.com/users/walidk/starred{/owner}{/repo}","following_url":"https://api.github.com/users/walidk/following","gravatar_id":"e251d20766937949a109603ca37bb3be","subscriptions_url":"https://api.github.com/users/walidk/subscriptions","gists_url":"https://api.github.com/users/walidk/gists{/gist_id}","id":734669,"login":"walidk"},{"type":"User","url":"https://api.github.com/users/afzalkhan","repos_url":"https://api.github.com/users/afzalkhan/repos","avatar_url":"https://secure.gravatar.com/avatar/8e85398b116be75d4baeeddfc9c3cce1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","organizations_url":"https://api.github.com/users/afzalkhan/orgs","received_events_url":"https://api.github.com/users/afzalkhan/received_events","events_url":"https://api.github.com/users/afzalkhan/events{/privacy}","followers_url":"https://api.github.com/users/afzalkhan/followers","starred_url":"https://api.github.com/users/afzalkhan/starred{/owner}{/repo}","following_url":"https://api.github.com/users/afzalkhan/following","gravatar_id":"8e85398b116be75d4baeeddfc9c3cce1","subscriptions_url":"https://api.github.com/users/afzalkhan/subscriptions","gists_url":"https://api.github.com/users/afzalkhan/gists{/gist_id}","id":1003845,"login":"afzalkhan"},{"type":"User","url":"https://api.github.com/users/sdanzan","repos_url":"https://api.github.com/users/sdanzan/repos","avatar_url":"https://secure.gravatar.com/avatar/4a1e187f4f22547534a56966f6d8f942?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","organizations_url":"https://api.github.com/users/sdanzan/orgs","received_events_url":"https://api.github.com/users/sdanzan/received_events","events_url":"https://api.github.com/users/sdanzan/events{/privacy}","followers_url":"https://api.github.com/users/sdanzan/followers","starred_url":"https://api.github.com/users/sdanzan/starred{/owner}{/repo}","following_url":"https://api.github.com/users/sdanzan/following","gravatar_id":"4a1e187f4f22547534a56966f6d8f942","subscriptions_url":"https://api.github.com/users/sdanzan/subscriptions","gists_url":"https://api.github.com/users/sdanzan/gists{/gist_id}","id":1094967,"login":"sdanzan"},{"type":"User","url":"https://api.github.com/users/vineus","repos_url":"https://api.github.com/users/vineus/repos","avatar_url":"https://secure.gravatar.com/avatar/2d0c93649b7572036335aed380e351e5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","organizations_url":"https://api.github.com/users/vineus/orgs","received_events_url":"https://api.github.com/users/vineus/received_events","events_url":"https://api.github.com/users/vineus/events{/privacy}","followers_url":"https://api.github.com/users/vineus/followers","starred_url":"https://api.github.com/users/vineus/starred{/owner}{/repo}","following_url":"https://api.github.com/users/vineus/following","gravatar_id":"2d0c93649b7572036335aed380e351e5","subscriptions_url":"https://api.github.com/users/vineus/subscriptions","gists_url":"https://api.github.com/users/vineus/gists{/gist_id}","id":467126,"login":"vineus"},{"type":"User","url":"https://api.github.com/users/gturri","repos_url":"https://api.github.com/users/gturri/repos","avatar_url":"https://secure.gravatar.com/avatar/ba064e32f068e12bfc87d178179878a5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","organizations_url":"https://api.github.com/users/gturri/orgs","received_events_url":"https://api.github.com/users/gturri/received_events","events_url":"https://api.github.com/users/gturri/events{/privacy}","followers_url":"https://api.github.com/users/gturri/followers","starred_url":"https://api.github.com/users/gturri/starred{/owner}{/repo}","following_url":"https://api.github.com/users/gturri/following","gravatar_id":"ba064e32f068e12bfc87d178179878a5","subscriptions_url":"https://api.github.com/users/gturri/subscriptions","gists_url":"https://api.github.com/users/gturri/gists{/gist_id}","id":308601,"login":"gturri"},{"type":"User","url":"https://api.github.com/users/fjardon","repos_url":"https://api.github.com/users/fjardon/repos","avatar_url":"https://secure.gravatar.com/avatar/cb044bd9a9f6548b9a9bae44617c97c7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","organizations_url":"https://api.github.com/users/fjardon/orgs","received_events_url":"https://api.github.com/users/fjardon/received_events","events_url":"https://api.github.com/users/fjardon/events{/privacy}","followers_url":"https://api.github.com/users/fjardon/followers","starred_url":"https://api.github.com/users/fjardon/starred{/owner}{/repo}","following_url":"https://api.github.com/users/fjardon/following","gravatar_id":"cb044bd9a9f6548b9a9bae44617c97c7","subscriptions_url":"https://api.github.com/users/fjardon/subscriptions","gists_url":"https://api.github.com/users/fjardon/gists{/gist_id}","id":121402,"login":"fjardon"},{"type":"User","url":"https://api.github.com/users/cjuniet","repos_url":"https://api.github.com/users/cjuniet/repos","avatar_url":"https://secure.gravatar.com/avatar/197eed5292fd11c0277335c3524ccfd5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","organizations_url":"https://api.github.com/users/cjuniet/orgs","received_events_url":"https://api.github.com/users/cjuniet/received_events","events_url":"https://api.github.com/users/cjuniet/events{/privacy}","followers_url":"https://api.github.com/users/cjuniet/followers","starred_url":"https://api.github.com/users/cjuniet/starred{/owner}{/repo}","following_url":"https://api.github.com/users/cjuniet/following","gravatar_id":"197eed5292fd11c0277335c3524ccfd5","subscriptions_url":"https://api.github.com/users/cjuniet/subscriptions","gists_url":"https://api.github.com/users/cjuniet/gists{/gist_id}","id":1233553,"login":"cjuniet"},{"type":"User","url":"https://api.github.com/users/jardon-u","repos_url":"https://api.github.com/users/jardon-u/repos","avatar_url":"https://secure.gravatar.com/avatar/1b4be24fa7e62eb508ca448da99e43d4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","organizations_url":"https://api.github.com/users/jardon-u/orgs","received_events_url":"https://api.github.com/users/jardon-u/received_events","events_url":"https://api.github.com/users/jardon-u/events{/privacy}","followers_url":"https://api.github.com/users/jardon-u/followers","starred_url":"https://api.github.com/users/jardon-u/starred{/owner}{/repo}","following_url":"https://api.github.com/users/jardon-u/following","gravatar_id":"1b4be24fa7e62eb508ca448da99e43d4","subscriptions_url":"https://api.github.com/users/jardon-u/subscriptions","gists_url":"https://api.github.com/users/jardon-u/gists{/gist_id}","id":994192,"login":"jardon-u"},{"type":"User","url":"https://api.github.com/users/kamaradclimber","repos_url":"https://api.github.com/users/kamaradclimber/repos","avatar_url":"https://secure.gravatar.com/avatar/0c43eba4a99f65e071e66e684cea8177?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","organizations_url":"https://api.github.com/users/kamaradclimber/orgs","received_events_url":"https://api.github.com/users/kamaradclimber/received_events","events_url":"https://api.github.com/users/kamaradclimber/events{/privacy}","followers_url":"https://api.github.com/users/kamaradclimber/followers","starred_url":"https://api.github.com/users/kamaradclimber/starred{/owner}{/repo}","following_url":"https://api.github.com/users/kamaradclimber/following","gravatar_id":"0c43eba4a99f65e071e66e684cea8177","subscriptions_url":"https://api.github.com/users/kamaradclimber/subscriptions","gists_url":"https://api.github.com/users/kamaradclimber/gists{/gist_id}","id":503537,"login":"kamaradclimber"},{"type":"User","url":"https://api.github.com/users/L42y","repos_url":"https://api.github.com/users/L42y/repos","avatar_url":"https://secure.gravatar.com/avatar/4dc11d87759273f3466ab4f673bcecae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","organizations_url":"https://api.github.com/users/L42y/orgs","received_events_url":"https://api.github.com/users/L42y/received_events","events_url":"https://api.github.com/users/L42y/events{/privacy}","followers_url":"https://api.github.com/users/L42y/followers","starred_url":"https://api.github.com/users/L42y/starred{/owner}{/repo}","following_url":"https://api.github.com/users/L42y/following","gravatar_id":"4dc11d87759273f3466ab4f673bcecae","subscriptions_url":"https://api.github.com/users/L42y/subscriptions","gists_url":"https://api.github.com/users/L42y/gists{/gist_id}","id":284820,"login":"L42y"},{"type":"User","url":"https://api.github.com/users/jobar","repos_url":"https://api.github.com/users/jobar/repos","avatar_url":"https://secure.gravatar.com/avatar/c9d5df4c0be8b077f3cd8edde2f02c9e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","organizations_url":"https://api.github.com/users/jobar/orgs","received_events_url":"https://api.github.com/users/jobar/received_events","events_url":"https://api.github.com/users/jobar/events{/privacy}","followers_url":"https://api.github.com/users/jobar/followers","starred_url":"https://api.github.com/users/jobar/starred{/owner}{/repo}","following_url":"https://api.github.com/users/jobar/following","gravatar_id":"c9d5df4c0be8b077f3cd8edde2f02c9e","subscriptions_url":"https://api.github.com/users/jobar/subscriptions","gists_url":"https://api.github.com/users/jobar/gists{/gist_id}","id":1686047,"login":"jobar"},{"type":"User","url":"https://api.github.com/users/koobs","repos_url":"https://api.github.com/users/koobs/repos","avatar_url":"https://secure.gravatar.com/avatar/a083cdd9096b4a5623a298d6b4d590a8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","organizations_url":"https://api.github.com/users/koobs/orgs","received_events_url":"https://api.github.com/users/koobs/received_events","events_url":"https://api.github.com/users/koobs/events{/privacy}","followers_url":"https://api.github.com/users/koobs/followers","starred_url":"https://api.github.com/users/koobs/starred{/owner}{/repo}","following_url":"https://api.github.com/users/koobs/following","gravatar_id":"a083cdd9096b4a5623a298d6b4d590a8","subscriptions_url":"https://api.github.com/users/koobs/subscriptions","gists_url":"https://api.github.com/users/koobs/gists{/gist_id}","id":1011612,"login":"koobs"},{"type":"User","url":"https://api.github.com/users/csjaba","repos_url":"https://api.github.com/users/csjaba/repos","avatar_url":"https://secure.gravatar.com/avatar/487684504c90d530bc674ea554acb9c5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","organizations_url":"https://api.github.com/users/csjaba/orgs","received_events_url":"https://api.github.com/users/csjaba/received_events","events_url":"https://api.github.com/users/csjaba/events{/privacy}","followers_url":"https://api.github.com/users/csjaba/followers","starred_url":"https://api.github.com/users/csjaba/starred{/owner}{/repo}","following_url":"https://api.github.com/users/csjaba/following","gravatar_id":"487684504c90d530bc674ea554acb9c5","subscriptions_url":"https://api.github.com/users/csjaba/subscriptions","gists_url":"https://api.github.com/users/csjaba/gists{/gist_id}","id":2398264,"login":"csjaba"},{"type":"User","url":"https://api.github.com/users/jtrigalo","repos_url":"https://api.github.com/users/jtrigalo/repos","avatar_url":"https://secure.gravatar.com/avatar/7cf8013e6d87e3d7458dfff8dee27bea?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","organizations_url":"https://api.github.com/users/jtrigalo/orgs","received_events_url":"https://api.github.com/users/jtrigalo/received_events","events_url":"https://api.github.com/users/jtrigalo/events{/privacy}","followers_url":"https://api.github.com/users/jtrigalo/followers","starred_url":"https://api.github.com/users/jtrigalo/starred{/owner}{/repo}","following_url":"https://api.github.com/users/jtrigalo/following","gravatar_id":"7cf8013e6d87e3d7458dfff8dee27bea","subscriptions_url":"https://api.github.com/users/jtrigalo/subscriptions","gists_url":"https://api.github.com/users/jtrigalo/gists{/gist_id}","id":2675607,"login":"jtrigalo"},{"type":"User","url":"https://api.github.com/users/nicuveo","repos_url":"https://api.github.com/users/nicuveo/repos","avatar_url":"https://secure.gravatar.com/avatar/d7b0dfff3ee3c7b1eba8ac9e9a3b43b6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","organizations_url":"https://api.github.com/users/nicuveo/orgs","received_events_url":"https://api.github.com/users/nicuveo/received_events","events_url":"https://api.github.com/users/nicuveo/events{/privacy}","followers_url":"https://api.github.com/users/nicuveo/followers","starred_url":"https://api.github.com/users/nicuveo/starred{/owner}{/repo}","following_url":"https://api.github.com/users/nicuveo/following","gravatar_id":"d7b0dfff3ee3c7b1eba8ac9e9a3b43b6","subscriptions_url":"https://api.github.com/users/nicuveo/subscriptions","gists_url":"https://api.github.com/users/nicuveo/gists{/gist_id}","id":1618949,"login":"nicuveo"},{"type":"User","url":"https://api.github.com/users/MariusNV","repos_url":"https://api.github.com/users/MariusNV/repos","avatar_url":"https://secure.gravatar.com/avatar/1ba6c81323b8482294b9d50de14bd18b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","organizations_url":"https://api.github.com/users/MariusNV/orgs","received_events_url":"https://api.github.com/users/MariusNV/received_events","events_url":"https://api.github.com/users/MariusNV/events{/privacy}","followers_url":"https://api.github.com/users/MariusNV/followers","starred_url":"https://api.github.com/users/MariusNV/starred{/owner}{/repo}","following_url":"https://api.github.com/users/MariusNV/following","gravatar_id":"1ba6c81323b8482294b9d50de14bd18b","subscriptions_url":"https://api.github.com/users/MariusNV/subscriptions","gists_url":"https://api.github.com/users/MariusNV/gists{/gist_id}","id":2228498,"login":"MariusNV"},{"type":"User","url":"https://api.github.com/users/llubu","repos_url":"https://api.github.com/users/llubu/repos","avatar_url":"https://secure.gravatar.com/avatar/02249adde786dbff8b8fa21d9d1bd601?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","organizations_url":"https://api.github.com/users/llubu/orgs","received_events_url":"https://api.github.com/users/llubu/received_events","events_url":"https://api.github.com/users/llubu/events{/privacy}","followers_url":"https://api.github.com/users/llubu/followers","starred_url":"https://api.github.com/users/llubu/starred{/owner}{/repo}","following_url":"https://api.github.com/users/llubu/following","gravatar_id":"02249adde786dbff8b8fa21d9d1bd601","subscriptions_url":"https://api.github.com/users/llubu/subscriptions","gists_url":"https://api.github.com/users/llubu/gists{/gist_id}","id":1433937,"login":"llubu"},{"type":"User","url":"https://api.github.com/users/cancerhermit","repos_url":"https://api.github.com/users/cancerhermit/repos","avatar_url":"https://secure.gravatar.com/avatar/9be6dcfe3820b88a23001e4758ca6703?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","organizations_url":"https://api.github.com/users/cancerhermit/orgs","received_events_url":"https://api.github.com/users/cancerhermit/received_events","events_url":"https://api.github.com/users/cancerhermit/events{/privacy}","followers_url":"https://api.github.com/users/cancerhermit/followers","starred_url":"https://api.github.com/users/cancerhermit/starred{/owner}{/repo}","following_url":"https://api.github.com/users/cancerhermit/following","gravatar_id":"9be6dcfe3820b88a23001e4758ca6703","subscriptions_url":"https://api.github.com/users/cancerhermit/subscriptions","gists_url":"https://api.github.com/users/cancerhermit/gists{/gist_id}","id":1584557,"login":"cancerhermit"},{"type":"User","url":"https://api.github.com/users/mt3","repos_url":"https://api.github.com/users/mt3/repos","avatar_url":"https://secure.gravatar.com/avatar/db57d04ef17c0c3a45a27059e4667f64?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","organizations_url":"https://api.github.com/users/mt3/orgs","received_events_url":"https://api.github.com/users/mt3/received_events","events_url":"https://api.github.com/users/mt3/events{/privacy}","followers_url":"https://api.github.com/users/mt3/followers","starred_url":"https://api.github.com/users/mt3/starred{/owner}{/repo}","following_url":"https://api.github.com/users/mt3/following","gravatar_id":"db57d04ef17c0c3a45a27059e4667f64","subscriptions_url":"https://api.github.com/users/mt3/subscriptions","gists_url":"https://api.github.com/users/mt3/gists{/gist_id}","id":227318,"login":"mt3"}] + diff --git a/lib/github/tests/ReplayData/Issue134.testGetAuthorizationsFailsWhenAutenticatedThroughOAuth.txt b/lib/github/tests/ReplayData/Issue134.testGetAuthorizationsFailsWhenAutenticatedThroughOAuth.txt new file mode 100644 index 0000000000..86948827c7 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue134.testGetAuthorizationsFailsWhenAutenticatedThroughOAuth.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/authorizations +{'Authorization': 'token private_token_removed', 'User-Agent': 'PyGithub/Python'} +null +404 +[('status', '404 Not Found'), ('content-length', '23'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-remaining', '55'), ('server', 'GitHub.com'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '60'), ('cache-control', ''), ('date', 'Tue, 29 Jan 2013 18:19:32 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"message":"Not Found"} + diff --git a/lib/github/tests/ReplayData/Issue134.testGetAuthorizationsSucceedsWhenAutenticatedThroughLoginPassword.txt b/lib/github/tests/ReplayData/Issue134.testGetAuthorizationsSucceedsWhenAutenticatedThroughLoginPassword.txt new file mode 100644 index 0000000000..77146e04b2 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue134.testGetAuthorizationsSucceedsWhenAutenticatedThroughLoginPassword.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/authorizations +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '1930'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4928'), ('server', 'GitHub.com'), ('last-modified', 'Tue, 29 Jan 2013 17:36:52 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"1ee9c020e28a8e60c0ed7eee863a79fc"'), ('cache-control', 'private, s-maxage=60, max-age=60'), ('date', 'Tue, 29 Jan 2013 18:19:33 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"token":"private_token_removed","url":"https://api.github.com/authorizations/619306","updated_at":"2012-09-03T08:35:36Z","scopes":[],"created_at":"2012-09-02T15:30:23Z","app":{"url":"http://upverter.com","name":"Upverter"},"note":null,"id":619306,"note_url":null},{"token":"private_token_removed","url":"https://api.github.com/authorizations/648494","updated_at":"2013-01-29T17:36:52Z","scopes":["public_repo","user:email"],"created_at":"2012-09-16T07:13:01Z","app":{"url":"https://travis-ci.org","name":"Travis"},"note":null,"id":648494,"note_url":null},{"token":"private_token_removed","url":"https://api.github.com/authorizations/651653","updated_at":"2012-09-17T21:05:19Z","scopes":["user","repo","gists","delete_repo"],"created_at":"2012-09-17T21:05:19Z","app":{"url":"https://github.com/CMB/cligh","name":"cligh (API)"},"note":"cligh","id":651653,"note_url":"https://github.com/CMB/cligh"},{"token":"private_token_removed","url":"https://api.github.com/authorizations/816763","updated_at":"2012-12-19T09:22:09Z","scopes":[],"created_at":"2012-11-15T17:47:48Z","app":{"url":"https://coderwall.com","name":"coderwall.com"},"note":null,"id":816763,"note_url":null},{"token":"private_token_removed","url":"https://api.github.com/authorizations/974947","updated_at":"2012-12-19T09:17:20Z","scopes":["public_repo"],"created_at":"2012-12-19T09:15:32Z","app":{"url":"http://geekli.st/","name":"Geeklist, Inc."},"note":null,"id":974947,"note_url":null},{"token":"private_token_removed","url":"https://api.github.com/authorizations/1348532","updated_at":"2013-01-27T11:51:21Z","scopes":["repo","user","gist"],"created_at":"2013-01-27T11:51:21Z","app":{"url":"https://github.com/github/android","name":"GitHub Android App (API)"},"note":"GitHub Android App","id":1348532,"note_url":"https://github.com/github/android"}] + diff --git a/lib/github/tests/ReplayData/Issue134.testGetOAuthScopesFromHeader.txt b/lib/github/tests/ReplayData/Issue134.testGetOAuthScopesFromHeader.txt new file mode 100644 index 0000000000..704fe8632c --- /dev/null +++ b/lib/github/tests/ReplayData/Issue134.testGetOAuthScopesFromHeader.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'token private_token_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4992'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '1464'), ('server', 'GitHub.com'), ('last-modified', 'Tue, 05 Feb 2013 18:44:48 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"9257360a3470aac247f722352581abb1"'), ('cache-control', 'private, s-maxage=60, max-age=60'), ('date', 'Tue, 05 Feb 2013 22:57:03 GMT'), ('x-oauth-scopes', 'repo, user, gist'), ('content-type', 'application/json; charset=utf-8'), ('x-accepted-oauth-scopes', 'user:follow, user:email, user')] +{"public_repos":21,"type":"User","repos_url":"https://api.github.com/users/jacquev6/repos","followers_url":"https://api.github.com/users/jacquev6/followers","url":"https://api.github.com/users/jacquev6","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","following_url":"https://api.github.com/users/jacquev6/following","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","total_private_repos":4,"following":37,"html_url":"https://github.com/jacquev6","created_at":"2010-07-09T06:10:06Z","collaborators":1,"location":"Paris, France","received_events_url":"https://api.github.com/users/jacquev6/received_events","owned_private_repos":4,"followers":22,"organizations_url":"https://api.github.com/users/jacquev6/orgs","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","email":"vincent@vincent-jacques.net","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","disk_usage":13360,"public_gists":2,"name":"Vincent Jacques","blog":"http://vincent-jacques.net","hireable":false,"plan":{"collaborators":1,"space":614400,"name":"micro","private_repos":5},"starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","id":327146,"login":"jacquev6","private_gists":5,"updated_at":"2013-02-05T18:44:48Z","company":"Criteo","bio":""} + diff --git a/lib/github/tests/ReplayData/Issue139.setUp.txt b/lib/github/tests/ReplayData/Issue139.setUp.txt new file mode 100644 index 0000000000..fd2c1f921c --- /dev/null +++ b/lib/github/tests/ReplayData/Issue139.setUp.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '1464'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4994'), ('server', 'GitHub.com'), ('last-modified', 'Thu, 07 Feb 2013 18:20:14 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"e0a49ecde4e224bb688cb9d21b420114"'), ('cache-control', 'private, s-maxage=60, max-age=60'), ('date', 'Fri, 08 Feb 2013 07:27:49 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"collaborators":1,"plan":{"collaborators":1,"space":614400,"private_repos":5,"name":"micro"},"blog":"http://vincent-jacques.net","type":"User","company":"Criteo","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","followers_url":"https://api.github.com/users/jacquev6/followers","total_private_repos":4,"following":37,"created_at":"2010-07-09T06:10:06Z","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","following_url":"https://api.github.com/users/jacquev6/following","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","public_gists":2,"location":"Paris, France","received_events_url":"https://api.github.com/users/jacquev6/received_events","owned_private_repos":4,"public_repos":21,"private_gists":5,"followers":22,"email":"vincent@vincent-jacques.net","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","html_url":"https://github.com/jacquev6","hireable":false,"organizations_url":"https://api.github.com/users/jacquev6/orgs","name":"Vincent Jacques","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","disk_usage":13312,"updated_at":"2013-02-07T18:20:14Z","bio":"","id":327146,"repos_url":"https://api.github.com/users/jacquev6/repos"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '4615'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4993'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 08 Feb 2013 05:51:24 GMT'), ('connection', 'keep-alive'), ('etag', '"846e3aa719a81e1f9c6cedaa6bab919e"'), ('cache-control', 'private, s-maxage=60, max-age=60'), ('date', 'Fri, 08 Feb 2013 07:27:50 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"id":3544490,"archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","fork":false,"html_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","watchers":152,"has_wiki":true,"notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags{/tag}","forks_count":43,"default_branch":"master","open_issues":12,"created_at":"2012-02-25T12:53:47Z","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","master_branch":"master","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","pushed_at":"2013-02-07T18:10:11Z","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","language":"Python","description":"Python library implementing the full Github API v3","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","forks":43,"collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","ssh_url":"git@github.com:jacquev6/PyGithub.git","watchers_count":152,"url":"https://api.github.com/repos/jacquev6/PyGithub","updated_at":"2013-02-08T05:51:24Z","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","homepage":"http://vincent-jacques.net/PyGithub","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","has_downloads":true,"has_issues":true,"clone_url":"https://github.com/jacquev6/PyGithub.git","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","private":false,"keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","git_url":"git://github.com/jacquev6/PyGithub.git","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","mirror_url":null,"svn_url":"https://github.com/jacquev6/PyGithub","name":"PyGithub","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","permissions":{"push":true,"admin":true,"pull":true},"open_issues_count":12,"issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","size":384,"issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","network_count":43,"contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","owner":{"type":"User","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","followers_url":"https://api.github.com/users/jacquev6/followers","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","following_url":"https://api.github.com/users/jacquev6/following","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","organizations_url":"https://api.github.com/users/jacquev6/orgs","login":"jacquev6","id":327146}} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/139 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '4824'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4992'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 08 Feb 2013 07:13:44 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"4194b45d4744a28a5b6393ef05bd3bbc"'), ('cache-control', 'private, s-maxage=60, max-age=60'), ('date', 'Fri, 08 Feb 2013 07:27:50 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"closed_by":null,"events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/139/events","created_at":"2013-02-07T22:12:31Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/139","body":"I noticed that calls to a user object (e.g. user.email, user.location etc) caused multiple calls to GitHub. Looking at GithubObject.py I see several references to __completed and one to _completed (single underscore) on line 72. Changing line 72 to use a double underscore removed the repeated calls to Github.\r\n\r\nI tried to run your tests but can't figure out how to do so? I'd have left you a pull request if so. I tried \"python -m unittest discover\" and also just running the files, I'm not familiar with the format you've used. I'm happy to run with logs etc if that's useful (some guidance on how to run the tests would be super helpful too). Thanks, Ian.","user":{"type":"User","events_url":"https://api.github.com/users/ianozsvald/events{/privacy}","followers_url":"https://api.github.com/users/ianozsvald/followers","subscriptions_url":"https://api.github.com/users/ianozsvald/subscriptions","gists_url":"https://api.github.com/users/ianozsvald/gists{/gist_id}","following_url":"https://api.github.com/users/ianozsvald/following","url":"https://api.github.com/users/ianozsvald","avatar_url":"https://secure.gravatar.com/avatar/3d644406158b4d440111903db1f62622?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","received_events_url":"https://api.github.com/users/ianozsvald/received_events","gravatar_id":"3d644406158b4d440111903db1f62622","organizations_url":"https://api.github.com/users/ianozsvald/orgs","starred_url":"https://api.github.com/users/ianozsvald/starred{/owner}{/repo}","login":"ianozsvald","id":273210,"repos_url":"https://api.github.com/users/ianozsvald/repos"},"comments_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/139/comments","closed_at":null,"milestone":{"due_on":null,"created_at":"2013-02-07T18:19:05Z","url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/21","open_issues":3,"description":"","creator":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","followers_url":"https://api.github.com/users/jacquev6/followers","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","following_url":"https://api.github.com/users/jacquev6/following","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","received_events_url":"https://api.github.com/users/jacquev6/received_events","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","id":327146,"repos_url":"https://api.github.com/users/jacquev6/repos"},"closed_issues":0,"state":"open","title":"Version 1.11.1","number":21,"updated_at":"2013-02-08T07:11:03Z","id":262264,"labels_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/21/labels"},"state":"open","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"}],"title":"Typo in GithubObject \"self._completed\" -> \"self.__completed\"?","number":139,"html_url":"https://github.com/jacquev6/PyGithub/issues/139","pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"updated_at":"2013-02-08T07:13:44Z","id":10758585,"labels_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/139/labels{/name}","comments":1,"assignee":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","followers_url":"https://api.github.com/users/jacquev6/followers","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","following_url":"https://api.github.com/users/jacquev6/following","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","received_events_url":"https://api.github.com/users/jacquev6/received_events","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","id":327146,"repos_url":"https://api.github.com/users/jacquev6/repos"}} + diff --git a/lib/github/tests/ReplayData/Issue139.testCompletion.txt b/lib/github/tests/ReplayData/Issue139.testCompletion.txt new file mode 100644 index 0000000000..f1124e630c --- /dev/null +++ b/lib/github/tests/ReplayData/Issue139.testCompletion.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/users/ianozsvald +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4991'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '1278'), ('server', 'GitHub.com'), ('last-modified', 'Thu, 07 Feb 2013 22:12:31 GMT'), ('connection', 'keep-alive'), ('etag', '"c7e39237717a6e60232f1dde7c4dcb73"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 08 Feb 2013 07:27:51 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","public_repos":26,"company":"Mor Consulting Ltd","events_url":"https://api.github.com/users/ianozsvald/events{/privacy}","followers_url":"https://api.github.com/users/ianozsvald/followers","following":4,"created_at":"2010-05-11T10:22:02Z","hireable":true,"subscriptions_url":"https://api.github.com/users/ianozsvald/subscriptions","gists_url":"https://api.github.com/users/ianozsvald/gists{/gist_id}","following_url":"https://api.github.com/users/ianozsvald/following","url":"https://api.github.com/users/ianozsvald","html_url":"https://github.com/ianozsvald","location":"London, UK","bio":null,"starred_url":"https://api.github.com/users/ianozsvald/starred{/owner}{/repo}","avatar_url":"https://secure.gravatar.com/avatar/3d644406158b4d440111903db1f62622?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","followers":45,"email":null,"gravatar_id":"3d644406158b4d440111903db1f62622","repos_url":"https://api.github.com/users/ianozsvald/repos","organizations_url":"https://api.github.com/users/ianozsvald/orgs","public_gists":2,"name":"Ian Ozsvald","login":"ianozsvald","updated_at":"2013-02-07T22:12:31Z","blog":"ianozsvald.com","received_events_url":"https://api.github.com/users/ianozsvald/received_events","id":273210} + diff --git a/lib/github/tests/ReplayData/Issue140.setUp.txt b/lib/github/tests/ReplayData/Issue140.setUp.txt new file mode 100644 index 0000000000..013209c619 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue140.setUp.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/twitter/bootstrap +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4977'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '5618'), ('server', 'GitHub.com'), ('last-modified', 'Sat, 16 Feb 2013 17:39:19 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"1bae4e11b2e038d9086f79ccf6828879"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Sat, 16 Feb 2013 17:59:00 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"id":2126244,"name":"bootstrap","full_name":"twitter/bootstrap","owner":{"login":"twitter","id":50278,"avatar_url":"https://secure.gravatar.com/avatar/2f4a8254d032a8ec5e4c48d461e54fcc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","gravatar_id":"2f4a8254d032a8ec5e4c48d461e54fcc","url":"https://api.github.com/users/twitter","followers_url":"https://api.github.com/users/twitter/followers","following_url":"https://api.github.com/users/twitter/following","gists_url":"https://api.github.com/users/twitter/gists{/gist_id}","starred_url":"https://api.github.com/users/twitter/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/twitter/subscriptions","organizations_url":"https://api.github.com/users/twitter/orgs","repos_url":"https://api.github.com/users/twitter/repos","events_url":"https://api.github.com/users/twitter/events{/privacy}","received_events_url":"https://api.github.com/users/twitter/received_events","type":"Organization"},"private":false,"html_url":"https://github.com/twitter/bootstrap","description":"Sleek, intuitive, and powerful front-end framework for faster and easier web development.","fork":false,"url":"https://api.github.com/repos/twitter/bootstrap","forks_url":"https://api.github.com/repos/twitter/bootstrap/forks","keys_url":"https://api.github.com/repos/twitter/bootstrap/keys{/key_id}","collaborators_url":"https://api.github.com/repos/twitter/bootstrap/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/twitter/bootstrap/teams","hooks_url":"https://api.github.com/repos/twitter/bootstrap/hooks","issue_events_url":"https://api.github.com/repos/twitter/bootstrap/issues/events{/number}","events_url":"https://api.github.com/repos/twitter/bootstrap/events","assignees_url":"https://api.github.com/repos/twitter/bootstrap/assignees{/user}","branches_url":"https://api.github.com/repos/twitter/bootstrap/branches{/branch}","tags_url":"https://api.github.com/repos/twitter/bootstrap/tags{/tag}","blobs_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/twitter/bootstrap/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/twitter/bootstrap/git/refs{/sha}","trees_url":"https://api.github.com/repos/twitter/bootstrap/git/trees{/sha}","statuses_url":"https://api.github.com/repos/twitter/bootstrap/statuses/{sha}","languages_url":"https://api.github.com/repos/twitter/bootstrap/languages","stargazers_url":"https://api.github.com/repos/twitter/bootstrap/stargazers","contributors_url":"https://api.github.com/repos/twitter/bootstrap/contributors","subscribers_url":"https://api.github.com/repos/twitter/bootstrap/subscribers","subscription_url":"https://api.github.com/repos/twitter/bootstrap/subscription","commits_url":"https://api.github.com/repos/twitter/bootstrap/commits{/sha}","git_commits_url":"https://api.github.com/repos/twitter/bootstrap/git/commits{/sha}","comments_url":"https://api.github.com/repos/twitter/bootstrap/comments{/number}","issue_comment_url":"https://api.github.com/repos/twitter/bootstrap/issues/comments/{number}","contents_url":"https://api.github.com/repos/twitter/bootstrap/contents/{+path}","compare_url":"https://api.github.com/repos/twitter/bootstrap/compare/{base}...{head}","merges_url":"https://api.github.com/repos/twitter/bootstrap/merges","archive_url":"https://api.github.com/repos/twitter/bootstrap/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/twitter/bootstrap/downloads","issues_url":"https://api.github.com/repos/twitter/bootstrap/issues{/number}","pulls_url":"https://api.github.com/repos/twitter/bootstrap/pulls{/number}","milestones_url":"https://api.github.com/repos/twitter/bootstrap/milestones{/number}","notifications_url":"https://api.github.com/repos/twitter/bootstrap/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/twitter/bootstrap/labels{/name}","created_at":"2011-07-29T21:19:00Z","updated_at":"2013-02-16T17:39:19Z","pushed_at":"2013-02-16T10:49:39Z","git_url":"git://github.com/twitter/bootstrap.git","ssh_url":"git@github.com:twitter/bootstrap.git","clone_url":"https://github.com/twitter/bootstrap.git","svn_url":"https://github.com/twitter/bootstrap","homepage":"http://twitter.github.com/bootstrap","size":2524,"watchers_count":44894,"language":"JavaScript","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":12535,"mirror_url":null,"open_issues_count":56,"forks":12535,"open_issues":56,"watchers":44894,"master_branch":"master","default_branch":"master","permissions":{"admin":false,"push":false,"pull":true},"network_count":12535,"organization":{"login":"twitter","id":50278,"avatar_url":"https://secure.gravatar.com/avatar/2f4a8254d032a8ec5e4c48d461e54fcc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","gravatar_id":"2f4a8254d032a8ec5e4c48d461e54fcc","url":"https://api.github.com/users/twitter","followers_url":"https://api.github.com/users/twitter/followers","following_url":"https://api.github.com/users/twitter/following","gists_url":"https://api.github.com/users/twitter/gists{/gist_id}","starred_url":"https://api.github.com/users/twitter/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/twitter/subscriptions","organizations_url":"https://api.github.com/users/twitter/orgs","repos_url":"https://api.github.com/users/twitter/repos","events_url":"https://api.github.com/users/twitter/events{/privacy}","received_events_url":"https://api.github.com/users/twitter/received_events","type":"Organization"}} + diff --git a/lib/github/tests/ReplayData/Issue140.testGetDirContents.txt b/lib/github/tests/ReplayData/Issue140.testGetDirContents.txt new file mode 100644 index 0000000000..6a9031d807 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue140.testGetDirContents.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/twitter/bootstrap/contents/js +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4996'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '10514'), ('server', 'GitHub.com'), ('last-modified', 'Sat, 16 Feb 2013 17:39:19 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"1bae4e11b2e038d9086f79ccf6828879"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Sat, 16 Feb 2013 17:40:25 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"sha":"e0722690bd73b3195d87577aab3bba151a85f7e0","size":232,"name":".jshintrc","path":"js/.jshintrc","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/.jshintrc","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/e0722690bd73b3195d87577aab3bba151a85f7e0","html_url":"https://github.com/twitter/bootstrap/blob/master/js/.jshintrc","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/.jshintrc","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/e0722690bd73b3195d87577aab3bba151a85f7e0","html":"https://github.com/twitter/bootstrap/blob/master/js/.jshintrc"}},{"sha":"7595fdb06771c324e1c3e0a166fdeafa1933e0f5","size":3483,"name":"bootstrap-affix.js","path":"js/bootstrap-affix.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-affix.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/7595fdb06771c324e1c3e0a166fdeafa1933e0f5","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-affix.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-affix.js","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/7595fdb06771c324e1c3e0a166fdeafa1933e0f5","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-affix.js"}},{"sha":"b5627984e4ca3b49ae63943aa9f0204c266c65af","size":2524,"name":"bootstrap-alert.js","path":"js/bootstrap-alert.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-alert.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/b5627984e4ca3b49ae63943aa9f0204c266c65af","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-alert.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-alert.js","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/b5627984e4ca3b49ae63943aa9f0204c266c65af","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-alert.js"}},{"sha":"045927b6ba732ada14dbf5c0ec296623b37a5121","size":2841,"name":"bootstrap-button.js","path":"js/bootstrap-button.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-button.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/045927b6ba732ada14dbf5c0ec296623b37a5121","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-button.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-button.js","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/045927b6ba732ada14dbf5c0ec296623b37a5121","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-button.js"}},{"sha":"604552012b170bc20579c13d724883c253dd152a","size":6053,"name":"bootstrap-carousel.js","path":"js/bootstrap-carousel.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-carousel.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/604552012b170bc20579c13d724883c253dd152a","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-carousel.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-carousel.js","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/604552012b170bc20579c13d724883c253dd152a","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-carousel.js"}},{"sha":"7bbad8e43aba9a778fa54650237f7acb96e783c9","size":4735,"name":"bootstrap-collapse.js","path":"js/bootstrap-collapse.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-collapse.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/7bbad8e43aba9a778fa54650237f7acb96e783c9","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-collapse.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-collapse.js","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/7bbad8e43aba9a778fa54650237f7acb96e783c9","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-collapse.js"}},{"sha":"ec86cf0d709577fc840a64123993dc69c6ae292a","size":4198,"name":"bootstrap-dropdown.js","path":"js/bootstrap-dropdown.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-dropdown.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/ec86cf0d709577fc840a64123993dc69c6ae292a","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-dropdown.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-dropdown.js","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/ec86cf0d709577fc840a64123993dc69c6ae292a","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-dropdown.js"}},{"sha":"b5ffa95b3b7639607a279d06b3e5e1c584acb5b4","size":6638,"name":"bootstrap-modal.js","path":"js/bootstrap-modal.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-modal.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/b5ffa95b3b7639607a279d06b3e5e1c584acb5b4","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-modal.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-modal.js","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/b5ffa95b3b7639607a279d06b3e5e1c584acb5b4","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-modal.js"}},{"sha":"0e7774bf668c75a7b93989a1146fbb8822d5489d","size":3115,"name":"bootstrap-popover.js","path":"js/bootstrap-popover.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-popover.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/0e7774bf668c75a7b93989a1146fbb8822d5489d","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-popover.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-popover.js","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/0e7774bf668c75a7b93989a1146fbb8822d5489d","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-popover.js"}},{"sha":"dff9a3b37518c2ccf6f0fbe23b327860cb6fee08","size":4655,"name":"bootstrap-scrollspy.js","path":"js/bootstrap-scrollspy.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-scrollspy.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/dff9a3b37518c2ccf6f0fbe23b327860cb6fee08","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-scrollspy.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-scrollspy.js","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/dff9a3b37518c2ccf6f0fbe23b327860cb6fee08","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-scrollspy.js"}},{"sha":"bd77eb5c358074801f20de0f46b1e2e9d1b1247b","size":3496,"name":"bootstrap-tab.js","path":"js/bootstrap-tab.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-tab.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/bd77eb5c358074801f20de0f46b1e2e9d1b1247b","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-tab.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-tab.js","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/bd77eb5c358074801f20de0f46b1e2e9d1b1247b","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-tab.js"}},{"sha":"981319077e9bdb4ea0dcbee50dfe5715a54b4c51","size":9694,"name":"bootstrap-tooltip.js","path":"js/bootstrap-tooltip.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-tooltip.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/981319077e9bdb4ea0dcbee50dfe5715a54b4c51","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-tooltip.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-tooltip.js","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/981319077e9bdb4ea0dcbee50dfe5715a54b4c51","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-tooltip.js"}},{"sha":"64f275778094043dc871f94ceacadbe7f74f9734","size":1756,"name":"bootstrap-transition.js","path":"js/bootstrap-transition.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-transition.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/64f275778094043dc871f94ceacadbe7f74f9734","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-transition.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-transition.js","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/64f275778094043dc871f94ceacadbe7f74f9734","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-transition.js"}},{"sha":"960f2af85a7ced44c4e3190255ee3092c3665bbb","size":8320,"name":"bootstrap-typeahead.js","path":"js/bootstrap-typeahead.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-typeahead.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/960f2af85a7ced44c4e3190255ee3092c3665bbb","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-typeahead.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-typeahead.js","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/960f2af85a7ced44c4e3190255ee3092c3665bbb","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-typeahead.js"}},{"sha":"f1ad7515dc05d0e2bc60f7c292e4f2134dcd91cf","size":0,"name":"tests","path":"js/tests","type":"dir","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/tests","git_url":"https://api.github.com/repos/twitter/bootstrap/git/trees/f1ad7515dc05d0e2bc60f7c292e4f2134dcd91cf","html_url":"https://github.com/twitter/bootstrap/tree/master/js/tests","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/tests","git":"https://api.github.com/repos/twitter/bootstrap/git/trees/f1ad7515dc05d0e2bc60f7c292e4f2134dcd91cf","html":"https://github.com/twitter/bootstrap/tree/master/js/tests"}}] + diff --git a/lib/github/tests/ReplayData/Issue140.testGetDirContentsThenLazyCompletionOfFile.txt b/lib/github/tests/ReplayData/Issue140.testGetDirContentsThenLazyCompletionOfFile.txt new file mode 100644 index 0000000000..898ffafe23 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue140.testGetDirContentsThenLazyCompletionOfFile.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/repos/twitter/bootstrap/contents/js +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4976'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '10514'), ('server', 'GitHub.com'), ('last-modified', 'Sat, 16 Feb 2013 17:39:19 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"1bae4e11b2e038d9086f79ccf6828879"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Sat, 16 Feb 2013 17:59:08 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"sha":"e0722690bd73b3195d87577aab3bba151a85f7e0","size":232,"name":".jshintrc","path":"js/.jshintrc","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/.jshintrc","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/e0722690bd73b3195d87577aab3bba151a85f7e0","html_url":"https://github.com/twitter/bootstrap/blob/master/js/.jshintrc","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/.jshintrc","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/e0722690bd73b3195d87577aab3bba151a85f7e0","html":"https://github.com/twitter/bootstrap/blob/master/js/.jshintrc"}},{"sha":"7595fdb06771c324e1c3e0a166fdeafa1933e0f5","size":3483,"name":"bootstrap-affix.js","path":"js/bootstrap-affix.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-affix.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/7595fdb06771c324e1c3e0a166fdeafa1933e0f5","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-affix.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-affix.js","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/7595fdb06771c324e1c3e0a166fdeafa1933e0f5","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-affix.js"}},{"sha":"b5627984e4ca3b49ae63943aa9f0204c266c65af","size":2524,"name":"bootstrap-alert.js","path":"js/bootstrap-alert.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-alert.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/b5627984e4ca3b49ae63943aa9f0204c266c65af","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-alert.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-alert.js","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/b5627984e4ca3b49ae63943aa9f0204c266c65af","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-alert.js"}},{"sha":"045927b6ba732ada14dbf5c0ec296623b37a5121","size":2841,"name":"bootstrap-button.js","path":"js/bootstrap-button.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-button.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/045927b6ba732ada14dbf5c0ec296623b37a5121","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-button.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-button.js","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/045927b6ba732ada14dbf5c0ec296623b37a5121","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-button.js"}},{"sha":"604552012b170bc20579c13d724883c253dd152a","size":6053,"name":"bootstrap-carousel.js","path":"js/bootstrap-carousel.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-carousel.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/604552012b170bc20579c13d724883c253dd152a","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-carousel.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-carousel.js","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/604552012b170bc20579c13d724883c253dd152a","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-carousel.js"}},{"sha":"7bbad8e43aba9a778fa54650237f7acb96e783c9","size":4735,"name":"bootstrap-collapse.js","path":"js/bootstrap-collapse.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-collapse.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/7bbad8e43aba9a778fa54650237f7acb96e783c9","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-collapse.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-collapse.js","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/7bbad8e43aba9a778fa54650237f7acb96e783c9","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-collapse.js"}},{"sha":"ec86cf0d709577fc840a64123993dc69c6ae292a","size":4198,"name":"bootstrap-dropdown.js","path":"js/bootstrap-dropdown.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-dropdown.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/ec86cf0d709577fc840a64123993dc69c6ae292a","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-dropdown.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-dropdown.js","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/ec86cf0d709577fc840a64123993dc69c6ae292a","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-dropdown.js"}},{"sha":"b5ffa95b3b7639607a279d06b3e5e1c584acb5b4","size":6638,"name":"bootstrap-modal.js","path":"js/bootstrap-modal.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-modal.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/b5ffa95b3b7639607a279d06b3e5e1c584acb5b4","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-modal.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-modal.js","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/b5ffa95b3b7639607a279d06b3e5e1c584acb5b4","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-modal.js"}},{"sha":"0e7774bf668c75a7b93989a1146fbb8822d5489d","size":3115,"name":"bootstrap-popover.js","path":"js/bootstrap-popover.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-popover.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/0e7774bf668c75a7b93989a1146fbb8822d5489d","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-popover.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-popover.js","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/0e7774bf668c75a7b93989a1146fbb8822d5489d","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-popover.js"}},{"sha":"dff9a3b37518c2ccf6f0fbe23b327860cb6fee08","size":4655,"name":"bootstrap-scrollspy.js","path":"js/bootstrap-scrollspy.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-scrollspy.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/dff9a3b37518c2ccf6f0fbe23b327860cb6fee08","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-scrollspy.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-scrollspy.js","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/dff9a3b37518c2ccf6f0fbe23b327860cb6fee08","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-scrollspy.js"}},{"sha":"bd77eb5c358074801f20de0f46b1e2e9d1b1247b","size":3496,"name":"bootstrap-tab.js","path":"js/bootstrap-tab.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-tab.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/bd77eb5c358074801f20de0f46b1e2e9d1b1247b","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-tab.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-tab.js","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/bd77eb5c358074801f20de0f46b1e2e9d1b1247b","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-tab.js"}},{"sha":"981319077e9bdb4ea0dcbee50dfe5715a54b4c51","size":9694,"name":"bootstrap-tooltip.js","path":"js/bootstrap-tooltip.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-tooltip.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/981319077e9bdb4ea0dcbee50dfe5715a54b4c51","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-tooltip.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-tooltip.js","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/981319077e9bdb4ea0dcbee50dfe5715a54b4c51","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-tooltip.js"}},{"sha":"64f275778094043dc871f94ceacadbe7f74f9734","size":1756,"name":"bootstrap-transition.js","path":"js/bootstrap-transition.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-transition.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/64f275778094043dc871f94ceacadbe7f74f9734","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-transition.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-transition.js","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/64f275778094043dc871f94ceacadbe7f74f9734","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-transition.js"}},{"sha":"960f2af85a7ced44c4e3190255ee3092c3665bbb","size":8320,"name":"bootstrap-typeahead.js","path":"js/bootstrap-typeahead.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-typeahead.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/960f2af85a7ced44c4e3190255ee3092c3665bbb","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-typeahead.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-typeahead.js","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/960f2af85a7ced44c4e3190255ee3092c3665bbb","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-typeahead.js"}},{"sha":"f1ad7515dc05d0e2bc60f7c292e4f2134dcd91cf","size":0,"name":"tests","path":"js/tests","type":"dir","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/tests","git_url":"https://api.github.com/repos/twitter/bootstrap/git/trees/f1ad7515dc05d0e2bc60f7c292e4f2134dcd91cf","html_url":"https://github.com/twitter/bootstrap/tree/master/js/tests","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/tests","git":"https://api.github.com/repos/twitter/bootstrap/git/trees/f1ad7515dc05d0e2bc60f7c292e4f2134dcd91cf","html":"https://github.com/twitter/bootstrap/tree/master/js/tests"}}] + +https +GET +api.github.com +None +/repos/twitter/bootstrap/contents/js/bootstrap-affix.js +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4975'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '5532'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 08 Feb 2013 06:13:13 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"23daa8e0f42915d5ce84a6a117122afa"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Sat, 16 Feb 2013 17:59:15 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"sha":"7595fdb06771c324e1c3e0a166fdeafa1933e0f5","size":3483,"name":"bootstrap-affix.js","path":"js/bootstrap-affix.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-affix.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/7595fdb06771c324e1c3e0a166fdeafa1933e0f5","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-affix.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-affix.js","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/7595fdb06771c324e1c3e0a166fdeafa1933e0f5","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-affix.js"},"content":"LyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09\nPT09PT09PT09PT09PT09PQogKiBib290c3RyYXAtYWZmaXguanMgdjIuMy4w\nCiAqIGh0dHA6Ly90d2l0dGVyLmdpdGh1Yi5jb20vYm9vdHN0cmFwL2phdmFz\nY3JpcHQuaHRtbCNhZmZpeAogKiA9PT09PT09PT09PT09PT09PT09PT09PT09\nPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAqIENvcHlyaWdo\ndCAyMDEyIFR3aXR0ZXIsIEluYy4KICoKICogTGljZW5zZWQgdW5kZXIgdGhl\nIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7\nCiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBs\naWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KICogWW91IG1heSBvYnRhaW4gYSBj\nb3B5IG9mIHRoZSBMaWNlbnNlIGF0CiAqCiAqIGh0dHA6Ly93d3cuYXBhY2hl\nLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAogKgogKiBVbmxlc3MgcmVxdWly\nZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcs\nIHNvZnR3YXJlCiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlz\nIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCiAqIFdJVEhPVVQg\nV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIg\nZXhwcmVzcyBvciBpbXBsaWVkLgogKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRo\nZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5k\nCiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgogKiA9PT09PT09\nPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09\nPT09PT09ICovCgoKIWZ1bmN0aW9uICgkKSB7CgogICJ1c2Ugc3RyaWN0Ijsg\nLy8ganNoaW50IDtfOwoKCiAvKiBBRkZJWCBDTEFTUyBERUZJTklUSU9OCiAg\nKiA9PT09PT09PT09PT09PT09PT09PT09ICovCgogIHZhciBBZmZpeCA9IGZ1\nbmN0aW9uIChlbGVtZW50LCBvcHRpb25zKSB7CiAgICB0aGlzLm9wdGlvbnMg\nPSAkLmV4dGVuZCh7fSwgJC5mbi5hZmZpeC5kZWZhdWx0cywgb3B0aW9ucykK\nICAgIHRoaXMuJHdpbmRvdyA9ICQod2luZG93KQogICAgICAub24oJ3Njcm9s\nbC5hZmZpeC5kYXRhLWFwaScsICQucHJveHkodGhpcy5jaGVja1Bvc2l0aW9u\nLCB0aGlzKSkKICAgICAgLm9uKCdjbGljay5hZmZpeC5kYXRhLWFwaScsICAk\nLnByb3h5KGZ1bmN0aW9uICgpIHsgc2V0VGltZW91dCgkLnByb3h5KHRoaXMu\nY2hlY2tQb3NpdGlvbiwgdGhpcyksIDEpIH0sIHRoaXMpKQogICAgdGhpcy4k\nZWxlbWVudCA9ICQoZWxlbWVudCkKICAgIHRoaXMuY2hlY2tQb3NpdGlvbigp\nCiAgfQoKICBBZmZpeC5wcm90b3R5cGUuY2hlY2tQb3NpdGlvbiA9IGZ1bmN0\naW9uICgpIHsKICAgIGlmICghdGhpcy4kZWxlbWVudC5pcygnOnZpc2libGUn\nKSkgcmV0dXJuCgogICAgdmFyIHNjcm9sbEhlaWdodCA9ICQoZG9jdW1lbnQp\nLmhlaWdodCgpCiAgICAgICwgc2Nyb2xsVG9wID0gdGhpcy4kd2luZG93LnNj\ncm9sbFRvcCgpCiAgICAgICwgcG9zaXRpb24gPSB0aGlzLiRlbGVtZW50Lm9m\nZnNldCgpCiAgICAgICwgb2Zmc2V0ID0gdGhpcy5vcHRpb25zLm9mZnNldAog\nICAgICAsIG9mZnNldEJvdHRvbSA9IG9mZnNldC5ib3R0b20KICAgICAgLCBv\nZmZzZXRUb3AgPSBvZmZzZXQudG9wCiAgICAgICwgcmVzZXQgPSAnYWZmaXgg\nYWZmaXgtdG9wIGFmZml4LWJvdHRvbScKICAgICAgLCBhZmZpeAoKICAgIGlm\nICh0eXBlb2Ygb2Zmc2V0ICE9ICdvYmplY3QnKSBvZmZzZXRCb3R0b20gPSBv\nZmZzZXRUb3AgPSBvZmZzZXQKICAgIGlmICh0eXBlb2Ygb2Zmc2V0VG9wID09\nICdmdW5jdGlvbicpIG9mZnNldFRvcCA9IG9mZnNldC50b3AoKQogICAgaWYg\nKHR5cGVvZiBvZmZzZXRCb3R0b20gPT0gJ2Z1bmN0aW9uJykgb2Zmc2V0Qm90\ndG9tID0gb2Zmc2V0LmJvdHRvbSgpCgogICAgYWZmaXggPSB0aGlzLnVucGlu\nICE9IG51bGwgJiYgKHNjcm9sbFRvcCArIHRoaXMudW5waW4gPD0gcG9zaXRp\nb24udG9wKSA/CiAgICAgIGZhbHNlICAgIDogb2Zmc2V0Qm90dG9tICE9IG51\nbGwgJiYgKHBvc2l0aW9uLnRvcCArIHRoaXMuJGVsZW1lbnQuaGVpZ2h0KCkg\nPj0gc2Nyb2xsSGVpZ2h0IC0gb2Zmc2V0Qm90dG9tKSA/CiAgICAgICdib3R0\nb20nIDogb2Zmc2V0VG9wICE9IG51bGwgJiYgc2Nyb2xsVG9wIDw9IG9mZnNl\ndFRvcCA/CiAgICAgICd0b3AnICAgIDogZmFsc2UKCiAgICBpZiAodGhpcy5h\nZmZpeGVkID09PSBhZmZpeCkgcmV0dXJuCgogICAgdGhpcy5hZmZpeGVkID0g\nYWZmaXgKICAgIHRoaXMudW5waW4gPSBhZmZpeCA9PSAnYm90dG9tJyA/IHBv\nc2l0aW9uLnRvcCAtIHNjcm9sbFRvcCA6IG51bGwKCiAgICB0aGlzLiRlbGVt\nZW50LnJlbW92ZUNsYXNzKHJlc2V0KS5hZGRDbGFzcygnYWZmaXgnICsgKGFm\nZml4ID8gJy0nICsgYWZmaXggOiAnJykpCiAgfQoKCiAvKiBBRkZJWCBQTFVH\nSU4gREVGSU5JVElPTgogICogPT09PT09PT09PT09PT09PT09PT09PT0gKi8K\nCiAgdmFyIG9sZCA9ICQuZm4uYWZmaXgKCiAgJC5mbi5hZmZpeCA9IGZ1bmN0\naW9uIChvcHRpb24pIHsKICAgIHJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24g\nKCkgewogICAgICB2YXIgJHRoaXMgPSAkKHRoaXMpCiAgICAgICAgLCBkYXRh\nID0gJHRoaXMuZGF0YSgnYWZmaXgnKQogICAgICAgICwgb3B0aW9ucyA9IHR5\ncGVvZiBvcHRpb24gPT0gJ29iamVjdCcgJiYgb3B0aW9uCiAgICAgIGlmICgh\nZGF0YSkgJHRoaXMuZGF0YSgnYWZmaXgnLCAoZGF0YSA9IG5ldyBBZmZpeCh0\naGlzLCBvcHRpb25zKSkpCiAgICAgIGlmICh0eXBlb2Ygb3B0aW9uID09ICdz\ndHJpbmcnKSBkYXRhW29wdGlvbl0oKQogICAgfSkKICB9CgogICQuZm4uYWZm\naXguQ29uc3RydWN0b3IgPSBBZmZpeAoKICAkLmZuLmFmZml4LmRlZmF1bHRz\nID0gewogICAgb2Zmc2V0OiAwCiAgfQoKCiAvKiBBRkZJWCBOTyBDT05GTElD\nVAogICogPT09PT09PT09PT09PT09PT0gKi8KCiAgJC5mbi5hZmZpeC5ub0Nv\nbmZsaWN0ID0gZnVuY3Rpb24gKCkgewogICAgJC5mbi5hZmZpeCA9IG9sZAog\nICAgcmV0dXJuIHRoaXMKICB9CgoKIC8qIEFGRklYIERBVEEtQVBJCiAgKiA9\nPT09PT09PT09PT09PSAqLwoKICAkKHdpbmRvdykub24oJ2xvYWQnLCBmdW5j\ndGlvbiAoKSB7CiAgICAkKCdbZGF0YS1zcHk9ImFmZml4Il0nKS5lYWNoKGZ1\nbmN0aW9uICgpIHsKICAgICAgdmFyICRzcHkgPSAkKHRoaXMpCiAgICAgICAg\nLCBkYXRhID0gJHNweS5kYXRhKCkKCiAgICAgIGRhdGEub2Zmc2V0ID0gZGF0\nYS5vZmZzZXQgfHwge30KCiAgICAgIGRhdGEub2Zmc2V0Qm90dG9tICYmIChk\nYXRhLm9mZnNldC5ib3R0b20gPSBkYXRhLm9mZnNldEJvdHRvbSkKICAgICAg\nZGF0YS5vZmZzZXRUb3AgJiYgKGRhdGEub2Zmc2V0LnRvcCA9IGRhdGEub2Zm\nc2V0VG9wKQoKICAgICAgJHNweS5hZmZpeChkYXRhKQogICAgfSkKICB9KQoK\nCn0od2luZG93LmpRdWVyeSk7\n","encoding":"base64"} + diff --git a/lib/github/tests/ReplayData/Issue140.testGetDirContentsWithRef.txt b/lib/github/tests/ReplayData/Issue140.testGetDirContentsWithRef.txt new file mode 100644 index 0000000000..aefb16135b --- /dev/null +++ b/lib/github/tests/ReplayData/Issue140.testGetDirContentsWithRef.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/twitter/bootstrap/contents/js?ref=8c7f9c66a7d12f47f50618ef420868fe836d0c33 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4998'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '12794'), ('server', 'GitHub.com'), ('last-modified', 'Wed, 20 Feb 2013 17:41:42 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"1d3ee11cf26854a582d3ae4760013142"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 20 Feb 2013 17:43:06 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"sha":"e0722690bd73b3195d87577aab3bba151a85f7e0","size":232,"name":".jshintrc","path":"js/.jshintrc","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/.jshintrc?ref=8c7f9c66a7d12f47f50618ef420868fe836d0c33","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/e0722690bd73b3195d87577aab3bba151a85f7e0","html_url":"https://github.com/twitter/bootstrap/blob/8c7f9c66a7d12f47f50618ef420868fe836d0c33/js/.jshintrc","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/.jshintrc?ref=8c7f9c66a7d12f47f50618ef420868fe836d0c33","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/e0722690bd73b3195d87577aab3bba151a85f7e0","html":"https://github.com/twitter/bootstrap/blob/8c7f9c66a7d12f47f50618ef420868fe836d0c33/js/.jshintrc"}},{"sha":"7595fdb06771c324e1c3e0a166fdeafa1933e0f5","size":3483,"name":"bootstrap-affix.js","path":"js/bootstrap-affix.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-affix.js?ref=8c7f9c66a7d12f47f50618ef420868fe836d0c33","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/7595fdb06771c324e1c3e0a166fdeafa1933e0f5","html_url":"https://github.com/twitter/bootstrap/blob/8c7f9c66a7d12f47f50618ef420868fe836d0c33/js/bootstrap-affix.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-affix.js?ref=8c7f9c66a7d12f47f50618ef420868fe836d0c33","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/7595fdb06771c324e1c3e0a166fdeafa1933e0f5","html":"https://github.com/twitter/bootstrap/blob/8c7f9c66a7d12f47f50618ef420868fe836d0c33/js/bootstrap-affix.js"}},{"sha":"b5627984e4ca3b49ae63943aa9f0204c266c65af","size":2524,"name":"bootstrap-alert.js","path":"js/bootstrap-alert.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-alert.js?ref=8c7f9c66a7d12f47f50618ef420868fe836d0c33","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/b5627984e4ca3b49ae63943aa9f0204c266c65af","html_url":"https://github.com/twitter/bootstrap/blob/8c7f9c66a7d12f47f50618ef420868fe836d0c33/js/bootstrap-alert.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-alert.js?ref=8c7f9c66a7d12f47f50618ef420868fe836d0c33","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/b5627984e4ca3b49ae63943aa9f0204c266c65af","html":"https://github.com/twitter/bootstrap/blob/8c7f9c66a7d12f47f50618ef420868fe836d0c33/js/bootstrap-alert.js"}},{"sha":"045927b6ba732ada14dbf5c0ec296623b37a5121","size":2841,"name":"bootstrap-button.js","path":"js/bootstrap-button.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-button.js?ref=8c7f9c66a7d12f47f50618ef420868fe836d0c33","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/045927b6ba732ada14dbf5c0ec296623b37a5121","html_url":"https://github.com/twitter/bootstrap/blob/8c7f9c66a7d12f47f50618ef420868fe836d0c33/js/bootstrap-button.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-button.js?ref=8c7f9c66a7d12f47f50618ef420868fe836d0c33","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/045927b6ba732ada14dbf5c0ec296623b37a5121","html":"https://github.com/twitter/bootstrap/blob/8c7f9c66a7d12f47f50618ef420868fe836d0c33/js/bootstrap-button.js"}},{"sha":"604552012b170bc20579c13d724883c253dd152a","size":6053,"name":"bootstrap-carousel.js","path":"js/bootstrap-carousel.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-carousel.js?ref=8c7f9c66a7d12f47f50618ef420868fe836d0c33","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/604552012b170bc20579c13d724883c253dd152a","html_url":"https://github.com/twitter/bootstrap/blob/8c7f9c66a7d12f47f50618ef420868fe836d0c33/js/bootstrap-carousel.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-carousel.js?ref=8c7f9c66a7d12f47f50618ef420868fe836d0c33","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/604552012b170bc20579c13d724883c253dd152a","html":"https://github.com/twitter/bootstrap/blob/8c7f9c66a7d12f47f50618ef420868fe836d0c33/js/bootstrap-carousel.js"}},{"sha":"7bbad8e43aba9a778fa54650237f7acb96e783c9","size":4735,"name":"bootstrap-collapse.js","path":"js/bootstrap-collapse.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-collapse.js?ref=8c7f9c66a7d12f47f50618ef420868fe836d0c33","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/7bbad8e43aba9a778fa54650237f7acb96e783c9","html_url":"https://github.com/twitter/bootstrap/blob/8c7f9c66a7d12f47f50618ef420868fe836d0c33/js/bootstrap-collapse.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-collapse.js?ref=8c7f9c66a7d12f47f50618ef420868fe836d0c33","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/7bbad8e43aba9a778fa54650237f7acb96e783c9","html":"https://github.com/twitter/bootstrap/blob/8c7f9c66a7d12f47f50618ef420868fe836d0c33/js/bootstrap-collapse.js"}},{"sha":"ec86cf0d709577fc840a64123993dc69c6ae292a","size":4198,"name":"bootstrap-dropdown.js","path":"js/bootstrap-dropdown.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-dropdown.js?ref=8c7f9c66a7d12f47f50618ef420868fe836d0c33","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/ec86cf0d709577fc840a64123993dc69c6ae292a","html_url":"https://github.com/twitter/bootstrap/blob/8c7f9c66a7d12f47f50618ef420868fe836d0c33/js/bootstrap-dropdown.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-dropdown.js?ref=8c7f9c66a7d12f47f50618ef420868fe836d0c33","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/ec86cf0d709577fc840a64123993dc69c6ae292a","html":"https://github.com/twitter/bootstrap/blob/8c7f9c66a7d12f47f50618ef420868fe836d0c33/js/bootstrap-dropdown.js"}},{"sha":"b5ffa95b3b7639607a279d06b3e5e1c584acb5b4","size":6638,"name":"bootstrap-modal.js","path":"js/bootstrap-modal.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-modal.js?ref=8c7f9c66a7d12f47f50618ef420868fe836d0c33","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/b5ffa95b3b7639607a279d06b3e5e1c584acb5b4","html_url":"https://github.com/twitter/bootstrap/blob/8c7f9c66a7d12f47f50618ef420868fe836d0c33/js/bootstrap-modal.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-modal.js?ref=8c7f9c66a7d12f47f50618ef420868fe836d0c33","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/b5ffa95b3b7639607a279d06b3e5e1c584acb5b4","html":"https://github.com/twitter/bootstrap/blob/8c7f9c66a7d12f47f50618ef420868fe836d0c33/js/bootstrap-modal.js"}},{"sha":"0e7774bf668c75a7b93989a1146fbb8822d5489d","size":3115,"name":"bootstrap-popover.js","path":"js/bootstrap-popover.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-popover.js?ref=8c7f9c66a7d12f47f50618ef420868fe836d0c33","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/0e7774bf668c75a7b93989a1146fbb8822d5489d","html_url":"https://github.com/twitter/bootstrap/blob/8c7f9c66a7d12f47f50618ef420868fe836d0c33/js/bootstrap-popover.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-popover.js?ref=8c7f9c66a7d12f47f50618ef420868fe836d0c33","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/0e7774bf668c75a7b93989a1146fbb8822d5489d","html":"https://github.com/twitter/bootstrap/blob/8c7f9c66a7d12f47f50618ef420868fe836d0c33/js/bootstrap-popover.js"}},{"sha":"dff9a3b37518c2ccf6f0fbe23b327860cb6fee08","size":4655,"name":"bootstrap-scrollspy.js","path":"js/bootstrap-scrollspy.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-scrollspy.js?ref=8c7f9c66a7d12f47f50618ef420868fe836d0c33","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/dff9a3b37518c2ccf6f0fbe23b327860cb6fee08","html_url":"https://github.com/twitter/bootstrap/blob/8c7f9c66a7d12f47f50618ef420868fe836d0c33/js/bootstrap-scrollspy.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-scrollspy.js?ref=8c7f9c66a7d12f47f50618ef420868fe836d0c33","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/dff9a3b37518c2ccf6f0fbe23b327860cb6fee08","html":"https://github.com/twitter/bootstrap/blob/8c7f9c66a7d12f47f50618ef420868fe836d0c33/js/bootstrap-scrollspy.js"}},{"sha":"bd77eb5c358074801f20de0f46b1e2e9d1b1247b","size":3496,"name":"bootstrap-tab.js","path":"js/bootstrap-tab.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-tab.js?ref=8c7f9c66a7d12f47f50618ef420868fe836d0c33","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/bd77eb5c358074801f20de0f46b1e2e9d1b1247b","html_url":"https://github.com/twitter/bootstrap/blob/8c7f9c66a7d12f47f50618ef420868fe836d0c33/js/bootstrap-tab.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-tab.js?ref=8c7f9c66a7d12f47f50618ef420868fe836d0c33","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/bd77eb5c358074801f20de0f46b1e2e9d1b1247b","html":"https://github.com/twitter/bootstrap/blob/8c7f9c66a7d12f47f50618ef420868fe836d0c33/js/bootstrap-tab.js"}},{"sha":"981319077e9bdb4ea0dcbee50dfe5715a54b4c51","size":9694,"name":"bootstrap-tooltip.js","path":"js/bootstrap-tooltip.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-tooltip.js?ref=8c7f9c66a7d12f47f50618ef420868fe836d0c33","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/981319077e9bdb4ea0dcbee50dfe5715a54b4c51","html_url":"https://github.com/twitter/bootstrap/blob/8c7f9c66a7d12f47f50618ef420868fe836d0c33/js/bootstrap-tooltip.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-tooltip.js?ref=8c7f9c66a7d12f47f50618ef420868fe836d0c33","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/981319077e9bdb4ea0dcbee50dfe5715a54b4c51","html":"https://github.com/twitter/bootstrap/blob/8c7f9c66a7d12f47f50618ef420868fe836d0c33/js/bootstrap-tooltip.js"}},{"sha":"64f275778094043dc871f94ceacadbe7f74f9734","size":1756,"name":"bootstrap-transition.js","path":"js/bootstrap-transition.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-transition.js?ref=8c7f9c66a7d12f47f50618ef420868fe836d0c33","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/64f275778094043dc871f94ceacadbe7f74f9734","html_url":"https://github.com/twitter/bootstrap/blob/8c7f9c66a7d12f47f50618ef420868fe836d0c33/js/bootstrap-transition.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-transition.js?ref=8c7f9c66a7d12f47f50618ef420868fe836d0c33","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/64f275778094043dc871f94ceacadbe7f74f9734","html":"https://github.com/twitter/bootstrap/blob/8c7f9c66a7d12f47f50618ef420868fe836d0c33/js/bootstrap-transition.js"}},{"sha":"960f2af85a7ced44c4e3190255ee3092c3665bbb","size":8320,"name":"bootstrap-typeahead.js","path":"js/bootstrap-typeahead.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-typeahead.js?ref=8c7f9c66a7d12f47f50618ef420868fe836d0c33","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/960f2af85a7ced44c4e3190255ee3092c3665bbb","html_url":"https://github.com/twitter/bootstrap/blob/8c7f9c66a7d12f47f50618ef420868fe836d0c33/js/bootstrap-typeahead.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-typeahead.js?ref=8c7f9c66a7d12f47f50618ef420868fe836d0c33","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/960f2af85a7ced44c4e3190255ee3092c3665bbb","html":"https://github.com/twitter/bootstrap/blob/8c7f9c66a7d12f47f50618ef420868fe836d0c33/js/bootstrap-typeahead.js"}},{"sha":"f1ad7515dc05d0e2bc60f7c292e4f2134dcd91cf","size":0,"name":"tests","path":"js/tests","type":"dir","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/tests","git_url":"https://api.github.com/repos/twitter/bootstrap/git/trees/f1ad7515dc05d0e2bc60f7c292e4f2134dcd91cf","html_url":"https://github.com/twitter/bootstrap/tree/8c7f9c66a7d12f47f50618ef420868fe836d0c33/js/tests","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/tests","git":"https://api.github.com/repos/twitter/bootstrap/git/trees/f1ad7515dc05d0e2bc60f7c292e4f2134dcd91cf","html":"https://github.com/twitter/bootstrap/tree/8c7f9c66a7d12f47f50618ef420868fe836d0c33/js/tests"}}] + diff --git a/lib/github/tests/ReplayData/Issue140.testGetFileContents.txt b/lib/github/tests/ReplayData/Issue140.testGetFileContents.txt new file mode 100644 index 0000000000..f730314a5c --- /dev/null +++ b/lib/github/tests/ReplayData/Issue140.testGetFileContents.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/twitter/bootstrap/contents/js/bootstrap-affix.js +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4989'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '5532'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 08 Feb 2013 06:13:13 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"23daa8e0f42915d5ce84a6a117122afa"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Sat, 16 Feb 2013 17:47:30 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"sha":"7595fdb06771c324e1c3e0a166fdeafa1933e0f5","size":3483,"name":"bootstrap-affix.js","path":"js/bootstrap-affix.js","type":"file","url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-affix.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/7595fdb06771c324e1c3e0a166fdeafa1933e0f5","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-affix.js","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-affix.js","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/7595fdb06771c324e1c3e0a166fdeafa1933e0f5","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-affix.js"},"content":"LyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09\nPT09PT09PT09PT09PT09PQogKiBib290c3RyYXAtYWZmaXguanMgdjIuMy4w\nCiAqIGh0dHA6Ly90d2l0dGVyLmdpdGh1Yi5jb20vYm9vdHN0cmFwL2phdmFz\nY3JpcHQuaHRtbCNhZmZpeAogKiA9PT09PT09PT09PT09PT09PT09PT09PT09\nPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAqIENvcHlyaWdo\ndCAyMDEyIFR3aXR0ZXIsIEluYy4KICoKICogTGljZW5zZWQgdW5kZXIgdGhl\nIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7\nCiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBs\naWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KICogWW91IG1heSBvYnRhaW4gYSBj\nb3B5IG9mIHRoZSBMaWNlbnNlIGF0CiAqCiAqIGh0dHA6Ly93d3cuYXBhY2hl\nLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAogKgogKiBVbmxlc3MgcmVxdWly\nZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcs\nIHNvZnR3YXJlCiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlz\nIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCiAqIFdJVEhPVVQg\nV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIg\nZXhwcmVzcyBvciBpbXBsaWVkLgogKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRo\nZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5k\nCiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgogKiA9PT09PT09\nPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09\nPT09PT09ICovCgoKIWZ1bmN0aW9uICgkKSB7CgogICJ1c2Ugc3RyaWN0Ijsg\nLy8ganNoaW50IDtfOwoKCiAvKiBBRkZJWCBDTEFTUyBERUZJTklUSU9OCiAg\nKiA9PT09PT09PT09PT09PT09PT09PT09ICovCgogIHZhciBBZmZpeCA9IGZ1\nbmN0aW9uIChlbGVtZW50LCBvcHRpb25zKSB7CiAgICB0aGlzLm9wdGlvbnMg\nPSAkLmV4dGVuZCh7fSwgJC5mbi5hZmZpeC5kZWZhdWx0cywgb3B0aW9ucykK\nICAgIHRoaXMuJHdpbmRvdyA9ICQod2luZG93KQogICAgICAub24oJ3Njcm9s\nbC5hZmZpeC5kYXRhLWFwaScsICQucHJveHkodGhpcy5jaGVja1Bvc2l0aW9u\nLCB0aGlzKSkKICAgICAgLm9uKCdjbGljay5hZmZpeC5kYXRhLWFwaScsICAk\nLnByb3h5KGZ1bmN0aW9uICgpIHsgc2V0VGltZW91dCgkLnByb3h5KHRoaXMu\nY2hlY2tQb3NpdGlvbiwgdGhpcyksIDEpIH0sIHRoaXMpKQogICAgdGhpcy4k\nZWxlbWVudCA9ICQoZWxlbWVudCkKICAgIHRoaXMuY2hlY2tQb3NpdGlvbigp\nCiAgfQoKICBBZmZpeC5wcm90b3R5cGUuY2hlY2tQb3NpdGlvbiA9IGZ1bmN0\naW9uICgpIHsKICAgIGlmICghdGhpcy4kZWxlbWVudC5pcygnOnZpc2libGUn\nKSkgcmV0dXJuCgogICAgdmFyIHNjcm9sbEhlaWdodCA9ICQoZG9jdW1lbnQp\nLmhlaWdodCgpCiAgICAgICwgc2Nyb2xsVG9wID0gdGhpcy4kd2luZG93LnNj\ncm9sbFRvcCgpCiAgICAgICwgcG9zaXRpb24gPSB0aGlzLiRlbGVtZW50Lm9m\nZnNldCgpCiAgICAgICwgb2Zmc2V0ID0gdGhpcy5vcHRpb25zLm9mZnNldAog\nICAgICAsIG9mZnNldEJvdHRvbSA9IG9mZnNldC5ib3R0b20KICAgICAgLCBv\nZmZzZXRUb3AgPSBvZmZzZXQudG9wCiAgICAgICwgcmVzZXQgPSAnYWZmaXgg\nYWZmaXgtdG9wIGFmZml4LWJvdHRvbScKICAgICAgLCBhZmZpeAoKICAgIGlm\nICh0eXBlb2Ygb2Zmc2V0ICE9ICdvYmplY3QnKSBvZmZzZXRCb3R0b20gPSBv\nZmZzZXRUb3AgPSBvZmZzZXQKICAgIGlmICh0eXBlb2Ygb2Zmc2V0VG9wID09\nICdmdW5jdGlvbicpIG9mZnNldFRvcCA9IG9mZnNldC50b3AoKQogICAgaWYg\nKHR5cGVvZiBvZmZzZXRCb3R0b20gPT0gJ2Z1bmN0aW9uJykgb2Zmc2V0Qm90\ndG9tID0gb2Zmc2V0LmJvdHRvbSgpCgogICAgYWZmaXggPSB0aGlzLnVucGlu\nICE9IG51bGwgJiYgKHNjcm9sbFRvcCArIHRoaXMudW5waW4gPD0gcG9zaXRp\nb24udG9wKSA/CiAgICAgIGZhbHNlICAgIDogb2Zmc2V0Qm90dG9tICE9IG51\nbGwgJiYgKHBvc2l0aW9uLnRvcCArIHRoaXMuJGVsZW1lbnQuaGVpZ2h0KCkg\nPj0gc2Nyb2xsSGVpZ2h0IC0gb2Zmc2V0Qm90dG9tKSA/CiAgICAgICdib3R0\nb20nIDogb2Zmc2V0VG9wICE9IG51bGwgJiYgc2Nyb2xsVG9wIDw9IG9mZnNl\ndFRvcCA/CiAgICAgICd0b3AnICAgIDogZmFsc2UKCiAgICBpZiAodGhpcy5h\nZmZpeGVkID09PSBhZmZpeCkgcmV0dXJuCgogICAgdGhpcy5hZmZpeGVkID0g\nYWZmaXgKICAgIHRoaXMudW5waW4gPSBhZmZpeCA9PSAnYm90dG9tJyA/IHBv\nc2l0aW9uLnRvcCAtIHNjcm9sbFRvcCA6IG51bGwKCiAgICB0aGlzLiRlbGVt\nZW50LnJlbW92ZUNsYXNzKHJlc2V0KS5hZGRDbGFzcygnYWZmaXgnICsgKGFm\nZml4ID8gJy0nICsgYWZmaXggOiAnJykpCiAgfQoKCiAvKiBBRkZJWCBQTFVH\nSU4gREVGSU5JVElPTgogICogPT09PT09PT09PT09PT09PT09PT09PT0gKi8K\nCiAgdmFyIG9sZCA9ICQuZm4uYWZmaXgKCiAgJC5mbi5hZmZpeCA9IGZ1bmN0\naW9uIChvcHRpb24pIHsKICAgIHJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24g\nKCkgewogICAgICB2YXIgJHRoaXMgPSAkKHRoaXMpCiAgICAgICAgLCBkYXRh\nID0gJHRoaXMuZGF0YSgnYWZmaXgnKQogICAgICAgICwgb3B0aW9ucyA9IHR5\ncGVvZiBvcHRpb24gPT0gJ29iamVjdCcgJiYgb3B0aW9uCiAgICAgIGlmICgh\nZGF0YSkgJHRoaXMuZGF0YSgnYWZmaXgnLCAoZGF0YSA9IG5ldyBBZmZpeCh0\naGlzLCBvcHRpb25zKSkpCiAgICAgIGlmICh0eXBlb2Ygb3B0aW9uID09ICdz\ndHJpbmcnKSBkYXRhW29wdGlvbl0oKQogICAgfSkKICB9CgogICQuZm4uYWZm\naXguQ29uc3RydWN0b3IgPSBBZmZpeAoKICAkLmZuLmFmZml4LmRlZmF1bHRz\nID0gewogICAgb2Zmc2V0OiAwCiAgfQoKCiAvKiBBRkZJWCBOTyBDT05GTElD\nVAogICogPT09PT09PT09PT09PT09PT0gKi8KCiAgJC5mbi5hZmZpeC5ub0Nv\nbmZsaWN0ID0gZnVuY3Rpb24gKCkgewogICAgJC5mbi5hZmZpeCA9IG9sZAog\nICAgcmV0dXJuIHRoaXMKICB9CgoKIC8qIEFGRklYIERBVEEtQVBJCiAgKiA9\nPT09PT09PT09PT09PSAqLwoKICAkKHdpbmRvdykub24oJ2xvYWQnLCBmdW5j\ndGlvbiAoKSB7CiAgICAkKCdbZGF0YS1zcHk9ImFmZml4Il0nKS5lYWNoKGZ1\nbmN0aW9uICgpIHsKICAgICAgdmFyICRzcHkgPSAkKHRoaXMpCiAgICAgICAg\nLCBkYXRhID0gJHNweS5kYXRhKCkKCiAgICAgIGRhdGEub2Zmc2V0ID0gZGF0\nYS5vZmZzZXQgfHwge30KCiAgICAgIGRhdGEub2Zmc2V0Qm90dG9tICYmIChk\nYXRhLm9mZnNldC5ib3R0b20gPSBkYXRhLm9mZnNldEJvdHRvbSkKICAgICAg\nZGF0YS5vZmZzZXRUb3AgJiYgKGRhdGEub2Zmc2V0LnRvcCA9IGRhdGEub2Zm\nc2V0VG9wKQoKICAgICAgJHNweS5hZmZpeChkYXRhKQogICAgfSkKICB9KQoK\nCn0od2luZG93LmpRdWVyeSk7\n","encoding":"base64"} + diff --git a/lib/github/tests/ReplayData/Issue158.testPaginationWithSecretKeyAuthentication.txt b/lib/github/tests/ReplayData/Issue158.testPaginationWithSecretKeyAuthentication.txt new file mode 100644 index 0000000000..21f22e432a --- /dev/null +++ b/lib/github/tests/ReplayData/Issue158.testPaginationWithSecretKeyAuthentication.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/orgs/BeaverSoftware?client_secret=client_secret&client_id=client_id +{'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4997'), ('content-length', '716'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"bd349122929faf5f9be3e53d9ad41d08"'), ('date', 'Fri, 11 May 2012 09:07:56 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"Organization","url":"https://api.github.com/orgs/BeaverSoftware","billing_email":"BeaverSoftware@vincent-jacques.net","disk_usage":112,"plan":{"private_repos":0,"space":307200,"name":"free"},"html_url":"https://github.com/BeaverSoftware","blog":null,"login":"BeaverSoftware","public_gists":0,"email":null,"avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","total_private_repos":0,"private_gists":0,"collaborators":0,"created_at":"2012-02-09T19:20:12Z","company":null,"location":"Paris, France","followers":0,"following":0,"name":null,"owned_private_repos":0,"id":1424031,"public_repos":2} + +https +GET +api.github.com +None +/orgs/BeaverSoftware/repos?client_secret=client_secret&type=public&client_id=client_id +{'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4987'), ('content-length', '2291'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"4bcc5321db433ac18171c121303c77d2"'), ('date', 'Tue, 29 May 2012 18:11:16 GMT'), ('content-type', 'application/json; charset=utf-8'), ('link', '; rel="next", ; rel="last"')] +[{"mirror_url":null,"clone_url":"https://github.com/BeaverSoftware/FatherBeaver.git","has_downloads":true,"watchers":2,"updated_at":"2012-02-16T21:51:15Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/BeaverSoftware/FatherBeaver","html_url":"https://github.com/BeaverSoftware/FatherBeaver","has_wiki":true,"has_issues":true,"fork":false,"git_url":"git://github.com/BeaverSoftware/FatherBeaver.git","forks":1,"size":0,"private":false,"open_issues":0,"svn_url":"https://github.com/BeaverSoftware/FatherBeaver","owner":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031},"name":"FatherBeaver","language":null,"description":"","ssh_url":"git@github.com:BeaverSoftware/FatherBeaver.git","pushed_at":null,"created_at":"2012-02-09T19:32:21Z","id":3400397,"full_name":"BeaverSoftware/FatherBeaver"}] + +https +GET +api.github.com +None +/orgs/BeaverSoftware/repos?client_secret=client_secret&type=public&client_id=client_id&page=2 +{'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4987'), ('content-length', '2291'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"4bcc5321db433ac18171c121303c77d2"'), ('date', 'Tue, 29 May 2012 18:11:16 GMT'), ('content-type', 'application/json; charset=utf-8'), ('link', '; rel="last"')] +[{"mirror_url":null,"clone_url":"https://github.com/BeaverSoftware/PyGithub.git","has_downloads":true,"watchers":1,"updated_at":"2012-05-29T18:09:14Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/BeaverSoftware/PyGithub","html_url":"https://github.com/BeaverSoftware/PyGithub","has_wiki":false,"has_issues":false,"fork":true,"git_url":"git://github.com/BeaverSoftware/PyGithub.git","forks":0,"size":428,"private":false,"open_issues":0,"svn_url":"https://github.com/BeaverSoftware/PyGithub","owner":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:BeaverSoftware/PyGithub.git","pushed_at":"2012-05-29T18:05:10Z","created_at":"2012-05-29T18:03:19Z","id":4485562,"full_name":"BeaverSoftware/PyGithub"}] + diff --git a/lib/github/tests/ReplayData/Issue174.setUp.txt b/lib/github/tests/ReplayData/Issue174.setUp.txt new file mode 100644 index 0000000000..c3443a4571 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue174.setUp.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/twitter/bootstrap +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4999'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '5720'), ('server', 'GitHub.com'), ('last-modified', 'Tue, 18 Jun 2013 19:52:37 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"525271e07b1b6c94fd4a0633d61cd3c6"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Tue, 18 Jun 2013 20:10:16 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8')] +{"id":2126244,"name":"bootstrap","full_name":"twitter/bootstrap","owner":{"login":"twitter","id":50278,"avatar_url":"https://secure.gravatar.com/avatar/2f4a8254d032a8ec5e4c48d461e54fcc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","gravatar_id":"2f4a8254d032a8ec5e4c48d461e54fcc","url":"https://api.github.com/users/twitter","html_url":"https://github.com/twitter","followers_url":"https://api.github.com/users/twitter/followers","following_url":"https://api.github.com/users/twitter/following{/other_user}","gists_url":"https://api.github.com/users/twitter/gists{/gist_id}","starred_url":"https://api.github.com/users/twitter/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/twitter/subscriptions","organizations_url":"https://api.github.com/users/twitter/orgs","repos_url":"https://api.github.com/users/twitter/repos","events_url":"https://api.github.com/users/twitter/events{/privacy}","received_events_url":"https://api.github.com/users/twitter/received_events","type":"Organization"},"private":false,"html_url":"https://github.com/twitter/bootstrap","description":"Sleek, intuitive, and powerful front-end framework for faster and easier web development.","fork":false,"url":"https://api.github.com/repos/twitter/bootstrap","forks_url":"https://api.github.com/repos/twitter/bootstrap/forks","keys_url":"https://api.github.com/repos/twitter/bootstrap/keys{/key_id}","collaborators_url":"https://api.github.com/repos/twitter/bootstrap/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/twitter/bootstrap/teams","hooks_url":"https://api.github.com/repos/twitter/bootstrap/hooks","issue_events_url":"https://api.github.com/repos/twitter/bootstrap/issues/events{/number}","events_url":"https://api.github.com/repos/twitter/bootstrap/events","assignees_url":"https://api.github.com/repos/twitter/bootstrap/assignees{/user}","branches_url":"https://api.github.com/repos/twitter/bootstrap/branches{/branch}","tags_url":"https://api.github.com/repos/twitter/bootstrap/tags","blobs_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/twitter/bootstrap/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/twitter/bootstrap/git/refs{/sha}","trees_url":"https://api.github.com/repos/twitter/bootstrap/git/trees{/sha}","statuses_url":"https://api.github.com/repos/twitter/bootstrap/statuses/{sha}","languages_url":"https://api.github.com/repos/twitter/bootstrap/languages","stargazers_url":"https://api.github.com/repos/twitter/bootstrap/stargazers","contributors_url":"https://api.github.com/repos/twitter/bootstrap/contributors","subscribers_url":"https://api.github.com/repos/twitter/bootstrap/subscribers","subscription_url":"https://api.github.com/repos/twitter/bootstrap/subscription","commits_url":"https://api.github.com/repos/twitter/bootstrap/commits{/sha}","git_commits_url":"https://api.github.com/repos/twitter/bootstrap/git/commits{/sha}","comments_url":"https://api.github.com/repos/twitter/bootstrap/comments{/number}","issue_comment_url":"https://api.github.com/repos/twitter/bootstrap/issues/comments/{number}","contents_url":"https://api.github.com/repos/twitter/bootstrap/contents/{+path}","compare_url":"https://api.github.com/repos/twitter/bootstrap/compare/{base}...{head}","merges_url":"https://api.github.com/repos/twitter/bootstrap/merges","archive_url":"https://api.github.com/repos/twitter/bootstrap/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/twitter/bootstrap/downloads","issues_url":"https://api.github.com/repos/twitter/bootstrap/issues{/number}","pulls_url":"https://api.github.com/repos/twitter/bootstrap/pulls{/number}","milestones_url":"https://api.github.com/repos/twitter/bootstrap/milestones{/number}","notifications_url":"https://api.github.com/repos/twitter/bootstrap/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/twitter/bootstrap/labels{/name}","created_at":"2011-07-29T21:19:00Z","updated_at":"2013-06-18T19:52:37Z","pushed_at":"2013-06-18T18:16:49Z","git_url":"git://github.com/twitter/bootstrap.git","ssh_url":"git@github.com:twitter/bootstrap.git","clone_url":"https://github.com/twitter/bootstrap.git","svn_url":"https://github.com/twitter/bootstrap","homepage":"http://twitter.github.io/bootstrap/","size":3744,"watchers_count":51744,"language":"JavaScript","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":16569,"mirror_url":null,"open_issues_count":184,"forks":16569,"open_issues":184,"watchers":51744,"master_branch":"master","default_branch":"master","permissions":{"admin":false,"push":false,"pull":true},"network_count":16569,"organization":{"login":"twitter","id":50278,"avatar_url":"https://secure.gravatar.com/avatar/2f4a8254d032a8ec5e4c48d461e54fcc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","gravatar_id":"2f4a8254d032a8ec5e4c48d461e54fcc","url":"https://api.github.com/users/twitter","html_url":"https://github.com/twitter","followers_url":"https://api.github.com/users/twitter/followers","following_url":"https://api.github.com/users/twitter/following{/other_user}","gists_url":"https://api.github.com/users/twitter/gists{/gist_id}","starred_url":"https://api.github.com/users/twitter/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/twitter/subscriptions","organizations_url":"https://api.github.com/users/twitter/orgs","repos_url":"https://api.github.com/users/twitter/repos","events_url":"https://api.github.com/users/twitter/events{/privacy}","received_events_url":"https://api.github.com/users/twitter/received_events","type":"Organization"}} + diff --git a/lib/github/tests/ReplayData/Issue174.testGetDirContentsWhithHttpRedirect.txt b/lib/github/tests/ReplayData/Issue174.testGetDirContentsWhithHttpRedirect.txt new file mode 100644 index 0000000000..89894fd5d7 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue174.testGetDirContentsWhithHttpRedirect.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/repos/twitter/bootstrap/contents/js/ +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +302 +[('status', '302 Found'), ('x-ratelimit-remaining', '4998'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('vary', 'Accept-Encoding'), ('content-length', '0'), ('server', 'GitHub.com'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('location', 'https://api.github.com/repositories/2126244/contents/js'), ('access-control-allow-credentials', 'true'), ('date', 'Tue, 18 Jun 2013 20:10:18 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'text/html;charset=utf-8')] + + +https +GET +api.github.com +None +/repositories/2126244/contents/js +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4997'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '10844'), ('server', 'GitHub.com'), ('last-modified', 'Tue, 18 Jun 2013 19:52:37 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"525271e07b1b6c94fd4a0633d61cd3c6"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Tue, 18 Jun 2013 20:10:19 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8')] +[{"name":".jshintrc","path":"js/.jshintrc","sha":"e0722690bd73b3195d87577aab3bba151a85f7e0","size":232,"url":"https://api.github.com/repos/twitter/bootstrap/contents/js/.jshintrc?ref=master","html_url":"https://github.com/twitter/bootstrap/blob/master/js/.jshintrc","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/e0722690bd73b3195d87577aab3bba151a85f7e0","type":"file","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/.jshintrc?ref=master","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/e0722690bd73b3195d87577aab3bba151a85f7e0","html":"https://github.com/twitter/bootstrap/blob/master/js/.jshintrc"}},{"name":"bootstrap-affix.js","path":"js/bootstrap-affix.js","sha":"91c9ced13d00b36f4f8fa7573014945608a8fe65","size":3483,"url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-affix.js?ref=master","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-affix.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/91c9ced13d00b36f4f8fa7573014945608a8fe65","type":"file","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-affix.js?ref=master","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/91c9ced13d00b36f4f8fa7573014945608a8fe65","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-affix.js"}},{"name":"bootstrap-alert.js","path":"js/bootstrap-alert.js","sha":"0cefe5fc5ecd7df06f6c9cb37261fce000d9408d","size":2524,"url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-alert.js?ref=master","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-alert.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/0cefe5fc5ecd7df06f6c9cb37261fce000d9408d","type":"file","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-alert.js?ref=master","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/0cefe5fc5ecd7df06f6c9cb37261fce000d9408d","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-alert.js"}},{"name":"bootstrap-button.js","path":"js/bootstrap-button.js","sha":"ce45991644b3d9fc5f3b563791999e6862dedbcb","size":2841,"url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-button.js?ref=master","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-button.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/ce45991644b3d9fc5f3b563791999e6862dedbcb","type":"file","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-button.js?ref=master","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/ce45991644b3d9fc5f3b563791999e6862dedbcb","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-button.js"}},{"name":"bootstrap-carousel.js","path":"js/bootstrap-carousel.js","sha":"476494ad6ad1ae6418ae4131bac416230f4dc9bb","size":6057,"url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-carousel.js?ref=master","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-carousel.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/476494ad6ad1ae6418ae4131bac416230f4dc9bb","type":"file","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-carousel.js?ref=master","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/476494ad6ad1ae6418ae4131bac416230f4dc9bb","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-carousel.js"}},{"name":"bootstrap-collapse.js","path":"js/bootstrap-collapse.js","sha":"74a73a890a2feb65103984910dcd571c36003669","size":4735,"url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-collapse.js?ref=master","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-collapse.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/74a73a890a2feb65103984910dcd571c36003669","type":"file","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-collapse.js?ref=master","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/74a73a890a2feb65103984910dcd571c36003669","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-collapse.js"}},{"name":"bootstrap-dropdown.js","path":"js/bootstrap-dropdown.js","sha":"6cc1221133f073a2b5602124cdaf8cc230f68c2c","size":4413,"url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-dropdown.js?ref=master","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-dropdown.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/6cc1221133f073a2b5602124cdaf8cc230f68c2c","type":"file","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-dropdown.js?ref=master","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/6cc1221133f073a2b5602124cdaf8cc230f68c2c","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-dropdown.js"}},{"name":"bootstrap-modal.js","path":"js/bootstrap-modal.js","sha":"c3648d8b7c38bba6a881ba3e0b58991af219de5a","size":6656,"url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-modal.js?ref=master","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-modal.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/c3648d8b7c38bba6a881ba3e0b58991af219de5a","type":"file","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-modal.js?ref=master","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/c3648d8b7c38bba6a881ba3e0b58991af219de5a","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-modal.js"}},{"name":"bootstrap-popover.js","path":"js/bootstrap-popover.js","sha":"e6a23d21045816cbf2b88b881cfb70242e774817","size":3115,"url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-popover.js?ref=master","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-popover.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/e6a23d21045816cbf2b88b881cfb70242e774817","type":"file","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-popover.js?ref=master","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/e6a23d21045816cbf2b88b881cfb70242e774817","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-popover.js"}},{"name":"bootstrap-scrollspy.js","path":"js/bootstrap-scrollspy.js","sha":"7dd60c4262c70df806072910d175d8b45d0c302f","size":4655,"url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-scrollspy.js?ref=master","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-scrollspy.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/7dd60c4262c70df806072910d175d8b45d0c302f","type":"file","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-scrollspy.js?ref=master","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/7dd60c4262c70df806072910d175d8b45d0c302f","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-scrollspy.js"}},{"name":"bootstrap-tab.js","path":"js/bootstrap-tab.js","sha":"a5161515acf4d812dd26f676a4c1cdae4996e269","size":3496,"url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-tab.js?ref=master","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-tab.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/a5161515acf4d812dd26f676a4c1cdae4996e269","type":"file","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-tab.js?ref=master","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/a5161515acf4d812dd26f676a4c1cdae4996e269","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-tab.js"}},{"name":"bootstrap-tooltip.js","path":"js/bootstrap-tooltip.js","sha":"a3bbd580bba946f3fa3dd7a9bd65989597c86759","size":9911,"url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-tooltip.js?ref=master","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-tooltip.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/a3bbd580bba946f3fa3dd7a9bd65989597c86759","type":"file","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-tooltip.js?ref=master","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/a3bbd580bba946f3fa3dd7a9bd65989597c86759","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-tooltip.js"}},{"name":"bootstrap-transition.js","path":"js/bootstrap-transition.js","sha":"e12cf6e5af81ad88e591f353d86cb00894d5b29f","size":1756,"url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-transition.js?ref=master","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-transition.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/e12cf6e5af81ad88e591f353d86cb00894d5b29f","type":"file","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-transition.js?ref=master","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/e12cf6e5af81ad88e591f353d86cb00894d5b29f","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-transition.js"}},{"name":"bootstrap-typeahead.js","path":"js/bootstrap-typeahead.js","sha":"abc48d5056e13ca3371e1486029e67815eff048a","size":8320,"url":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-typeahead.js?ref=master","html_url":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-typeahead.js","git_url":"https://api.github.com/repos/twitter/bootstrap/git/blobs/abc48d5056e13ca3371e1486029e67815eff048a","type":"file","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/bootstrap-typeahead.js?ref=master","git":"https://api.github.com/repos/twitter/bootstrap/git/blobs/abc48d5056e13ca3371e1486029e67815eff048a","html":"https://github.com/twitter/bootstrap/blob/master/js/bootstrap-typeahead.js"}},{"name":"tests","path":"js/tests","sha":"bac460d88cf867a9382be45673ebbbdcb2ef7f41","size":0,"url":"https://api.github.com/repos/twitter/bootstrap/contents/js/tests?ref=master","html_url":"https://github.com/twitter/bootstrap/tree/master/js/tests","git_url":"https://api.github.com/repos/twitter/bootstrap/git/trees/bac460d88cf867a9382be45673ebbbdcb2ef7f41","type":"dir","_links":{"self":"https://api.github.com/repos/twitter/bootstrap/contents/js/tests?ref=master","git":"https://api.github.com/repos/twitter/bootstrap/git/trees/bac460d88cf867a9382be45673ebbbdcb2ef7f41","html":"https://github.com/twitter/bootstrap/tree/master/js/tests"}}] + diff --git a/lib/github/tests/ReplayData/Issue214.setUp.txt b/lib/github/tests/ReplayData/Issue214.setUp.txt new file mode 100644 index 0000000000..83a57d95e8 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue214.setUp.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4768'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', 'A99159CE:6DA8:2C02300:52AF94DA'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('content-length', '1395'), ('server', 'GitHub.com'), ('last-modified', 'Mon, 16 Dec 2013 23:51:56 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"56120a0ff6bd4c69ed5aca11916c2ff8"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Tue, 17 Dec 2013 00:03:38 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1387240227')] +{"login":"farrd","id":1387834,"avatar_url":"https://gravatar.com/avatar/3281acd8cd12337bfba7577736ae663e?d=https%3A%2F%2Fidenticons.github.com%2Fe57fcb2ce01df0e0a8305b6fff8070d8.png&r=x","gravatar_id":"3281acd8cd12337bfba7577736ae663e","url":"https://api.github.com/users/farrd","html_url":"https://github.com/farrd","followers_url":"https://api.github.com/users/farrd/followers","following_url":"https://api.github.com/users/farrd/following{/other_user}","gists_url":"https://api.github.com/users/farrd/gists{/gist_id}","starred_url":"https://api.github.com/users/farrd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/farrd/subscriptions","organizations_url":"https://api.github.com/users/farrd/orgs","repos_url":"https://api.github.com/users/farrd/repos","events_url":"https://api.github.com/users/farrd/events{/privacy}","received_events_url":"https://api.github.com/users/farrd/received_events","type":"User","site_admin":false,"name":"","company":null,"blog":"","location":null,"email":"","hireable":false,"bio":null,"public_repos":10,"followers":0,"following":1,"created_at":"2012-01-28T19:38:20Z","updated_at":"2013-12-16T23:51:56Z","public_gists":0,"total_private_repos":0,"owned_private_repos":0,"disk_usage":16176,"collaborators":0,"plan":{"name":"free","space":307200,"collaborators":0,"private_repos":0},"private_gists":0} + +https +GET +api.github.com +None +/repos/farrd/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4767'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', 'A99159CE:6DAC:7BF4DD8:52AF94DA'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('content-length', '14028'), ('server', 'GitHub.com'), ('last-modified', 'Mon, 16 Dec 2013 23:29:38 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"481861750ad70aeeae3fc09b40288ade"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Tue, 17 Dec 2013 00:03:39 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1387240227')] +{"id":15089554,"name":"PyGithub","full_name":"farrd/PyGithub","owner":{"login":"farrd","id":1387834,"avatar_url":"https://gravatar.com/avatar/3281acd8cd12337bfba7577736ae663e?d=https%3A%2F%2Fidenticons.github.com%2Fe57fcb2ce01df0e0a8305b6fff8070d8.png&r=x","gravatar_id":"3281acd8cd12337bfba7577736ae663e","url":"https://api.github.com/users/farrd","html_url":"https://github.com/farrd","followers_url":"https://api.github.com/users/farrd/followers","following_url":"https://api.github.com/users/farrd/following{/other_user}","gists_url":"https://api.github.com/users/farrd/gists{/gist_id}","starred_url":"https://api.github.com/users/farrd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/farrd/subscriptions","organizations_url":"https://api.github.com/users/farrd/orgs","repos_url":"https://api.github.com/users/farrd/repos","events_url":"https://api.github.com/users/farrd/events{/privacy}","received_events_url":"https://api.github.com/users/farrd/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/farrd/PyGithub","description":"Python library implementing the full Github API v3","fork":true,"url":"https://api.github.com/repos/farrd/PyGithub","forks_url":"https://api.github.com/repos/farrd/PyGithub/forks","keys_url":"https://api.github.com/repos/farrd/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/farrd/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/farrd/PyGithub/teams","hooks_url":"https://api.github.com/repos/farrd/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/farrd/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/farrd/PyGithub/events","assignees_url":"https://api.github.com/repos/farrd/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/farrd/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/farrd/PyGithub/tags","blobs_url":"https://api.github.com/repos/farrd/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/farrd/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/farrd/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/farrd/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/farrd/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/farrd/PyGithub/languages","stargazers_url":"https://api.github.com/repos/farrd/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/farrd/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/farrd/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/farrd/PyGithub/subscription","commits_url":"https://api.github.com/repos/farrd/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/farrd/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/farrd/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/farrd/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/farrd/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/farrd/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/farrd/PyGithub/merges","archive_url":"https://api.github.com/repos/farrd/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/farrd/PyGithub/downloads","issues_url":"https://api.github.com/repos/farrd/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/farrd/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/farrd/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/farrd/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/farrd/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/farrd/PyGithub/releases{/id}","created_at":"2013-12-10T21:12:48Z","updated_at":"2013-12-16T23:29:38Z","pushed_at":"2013-12-16T19:15:40Z","git_url":"git://github.com/farrd/PyGithub.git","ssh_url":"git@github.com:farrd/PyGithub.git","clone_url":"https://github.com/farrd/PyGithub.git","svn_url":"https://github.com/farrd/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":8785,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":0,"mirror_url":null,"open_issues_count":3,"forks":0,"open_issues":3,"watchers":0,"default_branch":"master","master_branch":"master","permissions":{"admin":true,"push":true,"pull":true},"parent":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png&r=x","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/jacquev6/PyGithub/releases{/id}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-12-16T02:11:29Z","pushed_at":"2013-12-16T02:11:29Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":8785,"stargazers_count":314,"watchers_count":314,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":88,"mirror_url":null,"open_issues_count":23,"forks":88,"open_issues":23,"watchers":314,"default_branch":"master","master_branch":"master"},"source":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png&r=x","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/jacquev6/PyGithub/releases{/id}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-12-16T02:11:29Z","pushed_at":"2013-12-16T02:11:29Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":8785,"stargazers_count":314,"watchers_count":314,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":88,"mirror_url":null,"open_issues_count":23,"forks":88,"open_issues":23,"watchers":314,"default_branch":"master","master_branch":"master"},"network_count":88,"subscribers_count":2} + +https +GET +api.github.com +None +/repos/farrd/PyGithub/issues/1 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4766'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', 'A99159CE:6DAB:78E783D:52AF94DB'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('content-length', '1621'), ('server', 'GitHub.com'), ('last-modified', 'Mon, 16 Dec 2013 23:51:58 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"10591bd2c625813e49751bcca25b7c61"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Tue, 17 Dec 2013 00:03:39 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1387240227')] +{"url":"https://api.github.com/repos/farrd/PyGithub/issues/1","labels_url":"https://api.github.com/repos/farrd/PyGithub/issues/1/labels{/name}","comments_url":"https://api.github.com/repos/farrd/PyGithub/issues/1/comments","events_url":"https://api.github.com/repos/farrd/PyGithub/issues/1/events","html_url":"https://github.com/farrd/PyGithub/issues/1","id":24389294,"number":1,"title":"Test Issue","user":{"login":"farrd","id":1387834,"avatar_url":"https://gravatar.com/avatar/3281acd8cd12337bfba7577736ae663e?d=https%3A%2F%2Fidenticons.github.com%2Fe57fcb2ce01df0e0a8305b6fff8070d8.png&r=x","gravatar_id":"3281acd8cd12337bfba7577736ae663e","url":"https://api.github.com/users/farrd","html_url":"https://github.com/farrd","followers_url":"https://api.github.com/users/farrd/followers","following_url":"https://api.github.com/users/farrd/following{/other_user}","gists_url":"https://api.github.com/users/farrd/gists{/gist_id}","starred_url":"https://api.github.com/users/farrd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/farrd/subscriptions","organizations_url":"https://api.github.com/users/farrd/orgs","repos_url":"https://api.github.com/users/farrd/repos","events_url":"https://api.github.com/users/farrd/events{/privacy}","received_events_url":"https://api.github.com/users/farrd/received_events","type":"User","site_admin":false},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2013-12-16T23:36:11Z","updated_at":"2013-12-16T23:51:58Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"","closed_by":null} + diff --git a/lib/github/tests/ReplayData/Issue214.testAssignees.txt b/lib/github/tests/ReplayData/Issue214.testAssignees.txt new file mode 100644 index 0000000000..b268ae296d --- /dev/null +++ b/lib/github/tests/ReplayData/Issue214.testAssignees.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/repos/farrd/PyGithub/assignees/farrd +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4838'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', 'A99159CE:043C:7376C18:52AF9217'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('access-control-allow-credentials', 'true'), ('date', 'Mon, 16 Dec 2013 23:51:51 GMT'), ('access-control-allow-origin', '*'), ('x-ratelimit-reset', '1387240227')] + + +https +GET +api.github.com +None +/repos/farrd/PyGithub/assignees/fake +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +404 +[('status', '404 Not Found'), ('x-ratelimit-remaining', '4837'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', 'A99159CE:0438:2A76207:52AF9218'), ('content-length', '76'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('access-control-allow-credentials', 'true'), ('date', 'Mon, 16 Dec 2013 23:51:52 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1387240227')] +{"message":"Not Found","documentation_url":"http://developer.github.com/v3"} + diff --git a/lib/github/tests/ReplayData/Issue214.testCollaborators.txt b/lib/github/tests/ReplayData/Issue214.testCollaborators.txt new file mode 100644 index 0000000000..5880b26aa0 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue214.testCollaborators.txt @@ -0,0 +1,77 @@ +https +GET +api.github.com +None +/repos/farrd/PyGithub/collaborators/farrd +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4765'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', 'A99159CE:6DAC:7BF4F10:52AF94DB'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('access-control-allow-credentials', 'true'), ('date', 'Tue, 17 Dec 2013 00:03:40 GMT'), ('access-control-allow-origin', '*'), ('x-ratelimit-reset', '1387240227')] + + +https +GET +api.github.com +None +/repos/farrd/PyGithub/collaborators/fake +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +404 +[('status', '404 Not Found'), ('x-ratelimit-remaining', '4764'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', 'A99159CE:6DAC:7BF4F8B:52AF94DC'), ('content-length', '76'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('access-control-allow-credentials', 'true'), ('date', 'Tue, 17 Dec 2013 00:03:40 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1387240227')] +{"message":"Not Found","documentation_url":"http://developer.github.com/v3"} + +https +GET +api.github.com +None +/repos/farrd/PyGithub/collaborators/marcmenges +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +404 +[('status', '404 Not Found'), ('x-ratelimit-remaining', '4763'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', 'A99159CE:6DAA:61929C1:52AF94DC'), ('content-length', '76'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('access-control-allow-credentials', 'true'), ('date', 'Tue, 17 Dec 2013 00:03:40 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1387240227')] +{"message":"Not Found","documentation_url":"http://developer.github.com/v3"} + +https +PUT +api.github.com +None +/repos/farrd/PyGithub/collaborators/marcmenges +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4762'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', 'A99159CE:6DAA:6192A15:52AF94DC'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('access-control-allow-credentials', 'true'), ('date', 'Tue, 17 Dec 2013 00:03:41 GMT'), ('access-control-allow-origin', '*'), ('x-ratelimit-reset', '1387240227')] + + +https +GET +api.github.com +None +/repos/farrd/PyGithub/collaborators/marcmenges +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4761'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', 'A99159CE:6DAB:78E7BE4:52AF94DD'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('access-control-allow-credentials', 'true'), ('date', 'Tue, 17 Dec 2013 00:03:41 GMT'), ('access-control-allow-origin', '*'), ('x-ratelimit-reset', '1387240227')] + + +https +DELETE +api.github.com +None +/repos/farrd/PyGithub/collaborators/marcmenges +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4760'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', 'A99159CE:6DAC:7BF51C3:52AF94DD'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('access-control-allow-credentials', 'true'), ('date', 'Tue, 17 Dec 2013 00:03:41 GMT'), ('access-control-allow-origin', '*'), ('x-ratelimit-reset', '1387240227')] + + +https +GET +api.github.com +None +/repos/farrd/PyGithub/collaborators/marcmenges +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +404 +[('status', '404 Not Found'), ('x-ratelimit-remaining', '4759'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', 'A99159CE:6DA9:6920FB1:52AF94DE'), ('content-length', '76'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('access-control-allow-credentials', 'true'), ('date', 'Tue, 17 Dec 2013 00:03:42 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1387240227')] +{"message":"Not Found","documentation_url":"http://developer.github.com/v3"} + diff --git a/lib/github/tests/ReplayData/Issue214.testCreateIssue.txt b/lib/github/tests/ReplayData/Issue214.testCreateIssue.txt new file mode 100644 index 0000000000..8517b3b215 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue214.testCreateIssue.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/repos/farrd/PyGithub/issues +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"assignee": "farrd", "title": "Issue created by PyGithub"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4828'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', 'A99159CE:043B:6651E72:52AF921C'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP'), ('location', 'https://api.github.com/repos/farrd/PyGithub/issues/3'), ('content-length', '2592'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('etag', '"900018f8180df60c18df92fcab23cf23"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 16 Dec 2013 23:51:56 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1387240227')] +{"url":"https://api.github.com/repos/farrd/PyGithub/issues/3","labels_url":"https://api.github.com/repos/farrd/PyGithub/issues/3/labels{/name}","comments_url":"https://api.github.com/repos/farrd/PyGithub/issues/3/comments","events_url":"https://api.github.com/repos/farrd/PyGithub/issues/3/events","html_url":"https://github.com/farrd/PyGithub/issues/3","id":24390063,"number":3,"title":"Issue created by PyGithub","user":{"login":"farrd","id":1387834,"avatar_url":"https://gravatar.com/avatar/3281acd8cd12337bfba7577736ae663e?d=https%3A%2F%2Fidenticons.github.com%2Fe57fcb2ce01df0e0a8305b6fff8070d8.png&r=x","gravatar_id":"3281acd8cd12337bfba7577736ae663e","url":"https://api.github.com/users/farrd","html_url":"https://github.com/farrd","followers_url":"https://api.github.com/users/farrd/followers","following_url":"https://api.github.com/users/farrd/following{/other_user}","gists_url":"https://api.github.com/users/farrd/gists{/gist_id}","starred_url":"https://api.github.com/users/farrd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/farrd/subscriptions","organizations_url":"https://api.github.com/users/farrd/orgs","repos_url":"https://api.github.com/users/farrd/repos","events_url":"https://api.github.com/users/farrd/events{/privacy}","received_events_url":"https://api.github.com/users/farrd/received_events","type":"User","site_admin":false},"labels":[],"state":"open","assignee":{"login":"farrd","id":1387834,"avatar_url":"https://gravatar.com/avatar/3281acd8cd12337bfba7577736ae663e?d=https%3A%2F%2Fidenticons.github.com%2Fe57fcb2ce01df0e0a8305b6fff8070d8.png&r=x","gravatar_id":"3281acd8cd12337bfba7577736ae663e","url":"https://api.github.com/users/farrd","html_url":"https://github.com/farrd","followers_url":"https://api.github.com/users/farrd/followers","following_url":"https://api.github.com/users/farrd/following{/other_user}","gists_url":"https://api.github.com/users/farrd/gists{/gist_id}","starred_url":"https://api.github.com/users/farrd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/farrd/subscriptions","organizations_url":"https://api.github.com/users/farrd/orgs","repos_url":"https://api.github.com/users/farrd/repos","events_url":"https://api.github.com/users/farrd/events{/privacy}","received_events_url":"https://api.github.com/users/farrd/received_events","type":"User","site_admin":false},"milestone":null,"comments":0,"created_at":"2013-12-16T23:51:56Z","updated_at":"2013-12-16T23:51:56Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":null,"closed_by":null} + diff --git a/lib/github/tests/ReplayData/Issue214.testEditIssue.txt b/lib/github/tests/ReplayData/Issue214.testEditIssue.txt new file mode 100644 index 0000000000..593004c466 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue214.testEditIssue.txt @@ -0,0 +1,22 @@ +https +PATCH +api.github.com +None +/repos/farrd/PyGithub/issues/1 +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"assignee": "farrd"} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4824'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', 'A99159CE:043C:7377930:52AF921D'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('content-length', '2575'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('etag', '"fa6d38417e4f455619cdfe179b7b1e40"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 16 Dec 2013 23:51:58 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1387240227')] +{"url":"https://api.github.com/repos/farrd/PyGithub/issues/1","labels_url":"https://api.github.com/repos/farrd/PyGithub/issues/1/labels{/name}","comments_url":"https://api.github.com/repos/farrd/PyGithub/issues/1/comments","events_url":"https://api.github.com/repos/farrd/PyGithub/issues/1/events","html_url":"https://github.com/farrd/PyGithub/issues/1","id":24389294,"number":1,"title":"Test Issue","user":{"login":"farrd","id":1387834,"avatar_url":"https://gravatar.com/avatar/3281acd8cd12337bfba7577736ae663e?d=https%3A%2F%2Fidenticons.github.com%2Fe57fcb2ce01df0e0a8305b6fff8070d8.png&r=x","gravatar_id":"3281acd8cd12337bfba7577736ae663e","url":"https://api.github.com/users/farrd","html_url":"https://github.com/farrd","followers_url":"https://api.github.com/users/farrd/followers","following_url":"https://api.github.com/users/farrd/following{/other_user}","gists_url":"https://api.github.com/users/farrd/gists{/gist_id}","starred_url":"https://api.github.com/users/farrd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/farrd/subscriptions","organizations_url":"https://api.github.com/users/farrd/orgs","repos_url":"https://api.github.com/users/farrd/repos","events_url":"https://api.github.com/users/farrd/events{/privacy}","received_events_url":"https://api.github.com/users/farrd/received_events","type":"User","site_admin":false},"labels":[],"state":"open","assignee":{"login":"farrd","id":1387834,"avatar_url":"https://gravatar.com/avatar/3281acd8cd12337bfba7577736ae663e?d=https%3A%2F%2Fidenticons.github.com%2Fe57fcb2ce01df0e0a8305b6fff8070d8.png&r=x","gravatar_id":"3281acd8cd12337bfba7577736ae663e","url":"https://api.github.com/users/farrd","html_url":"https://github.com/farrd","followers_url":"https://api.github.com/users/farrd/followers","following_url":"https://api.github.com/users/farrd/following{/other_user}","gists_url":"https://api.github.com/users/farrd/gists{/gist_id}","starred_url":"https://api.github.com/users/farrd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/farrd/subscriptions","organizations_url":"https://api.github.com/users/farrd/orgs","repos_url":"https://api.github.com/users/farrd/repos","events_url":"https://api.github.com/users/farrd/events{/privacy}","received_events_url":"https://api.github.com/users/farrd/received_events","type":"User","site_admin":false},"milestone":null,"comments":0,"created_at":"2013-12-16T23:36:11Z","updated_at":"2013-12-16T23:51:58Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"","closed_by":null} + +https +PATCH +api.github.com +None +/repos/farrd/PyGithub/issues/1 +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"assignee": ""} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4823'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', 'A99159CE:043C:7377A01:52AF921E'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('content-length', '1621'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('etag', '"f6bb6e7859e5f62cdc99f6fc6cbe0c09"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 16 Dec 2013 23:51:58 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1387240227')] +{"url":"https://api.github.com/repos/farrd/PyGithub/issues/1","labels_url":"https://api.github.com/repos/farrd/PyGithub/issues/1/labels{/name}","comments_url":"https://api.github.com/repos/farrd/PyGithub/issues/1/comments","events_url":"https://api.github.com/repos/farrd/PyGithub/issues/1/events","html_url":"https://github.com/farrd/PyGithub/issues/1","id":24389294,"number":1,"title":"Test Issue","user":{"login":"farrd","id":1387834,"avatar_url":"https://gravatar.com/avatar/3281acd8cd12337bfba7577736ae663e?d=https%3A%2F%2Fidenticons.github.com%2Fe57fcb2ce01df0e0a8305b6fff8070d8.png&r=x","gravatar_id":"3281acd8cd12337bfba7577736ae663e","url":"https://api.github.com/users/farrd","html_url":"https://github.com/farrd","followers_url":"https://api.github.com/users/farrd/followers","following_url":"https://api.github.com/users/farrd/following{/other_user}","gists_url":"https://api.github.com/users/farrd/gists{/gist_id}","starred_url":"https://api.github.com/users/farrd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/farrd/subscriptions","organizations_url":"https://api.github.com/users/farrd/orgs","repos_url":"https://api.github.com/users/farrd/repos","events_url":"https://api.github.com/users/farrd/events{/privacy}","received_events_url":"https://api.github.com/users/farrd/received_events","type":"User","site_admin":false},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2013-12-16T23:36:11Z","updated_at":"2013-12-16T23:51:58Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"","closed_by":null} + diff --git a/lib/github/tests/ReplayData/Issue214.testGetIssues.txt b/lib/github/tests/ReplayData/Issue214.testGetIssues.txt new file mode 100644 index 0000000000..e3f86910f7 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue214.testGetIssues.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/farrd/PyGithub/issues?assignee=farrd +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4815'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', 'A99159CE:2C50:65E63AF:52AF923A'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('content-length', '5153'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('etag', '"3758de592b6c58f9de00b937c89b4db4"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 16 Dec 2013 23:52:27 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1387240227')] +[{"url":"https://api.github.com/repos/farrd/PyGithub/issues/3","labels_url":"https://api.github.com/repos/farrd/PyGithub/issues/3/labels{/name}","comments_url":"https://api.github.com/repos/farrd/PyGithub/issues/3/comments","events_url":"https://api.github.com/repos/farrd/PyGithub/issues/3/events","html_url":"https://github.com/farrd/PyGithub/issues/3","id":24390063,"number":3,"title":"Issue created by PyGithub","user":{"login":"farrd","id":1387834,"avatar_url":"https://gravatar.com/avatar/3281acd8cd12337bfba7577736ae663e?d=https%3A%2F%2Fidenticons.github.com%2Fe57fcb2ce01df0e0a8305b6fff8070d8.png&r=x","gravatar_id":"3281acd8cd12337bfba7577736ae663e","url":"https://api.github.com/users/farrd","html_url":"https://github.com/farrd","followers_url":"https://api.github.com/users/farrd/followers","following_url":"https://api.github.com/users/farrd/following{/other_user}","gists_url":"https://api.github.com/users/farrd/gists{/gist_id}","starred_url":"https://api.github.com/users/farrd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/farrd/subscriptions","organizations_url":"https://api.github.com/users/farrd/orgs","repos_url":"https://api.github.com/users/farrd/repos","events_url":"https://api.github.com/users/farrd/events{/privacy}","received_events_url":"https://api.github.com/users/farrd/received_events","type":"User","site_admin":false},"labels":[],"state":"open","assignee":{"login":"farrd","id":1387834,"avatar_url":"https://gravatar.com/avatar/3281acd8cd12337bfba7577736ae663e?d=https%3A%2F%2Fidenticons.github.com%2Fe57fcb2ce01df0e0a8305b6fff8070d8.png&r=x","gravatar_id":"3281acd8cd12337bfba7577736ae663e","url":"https://api.github.com/users/farrd","html_url":"https://github.com/farrd","followers_url":"https://api.github.com/users/farrd/followers","following_url":"https://api.github.com/users/farrd/following{/other_user}","gists_url":"https://api.github.com/users/farrd/gists{/gist_id}","starred_url":"https://api.github.com/users/farrd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/farrd/subscriptions","organizations_url":"https://api.github.com/users/farrd/orgs","repos_url":"https://api.github.com/users/farrd/repos","events_url":"https://api.github.com/users/farrd/events{/privacy}","received_events_url":"https://api.github.com/users/farrd/received_events","type":"User","site_admin":false},"milestone":null,"comments":0,"created_at":"2013-12-16T23:51:56Z","updated_at":"2013-12-16T23:51:56Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":null},{"url":"https://api.github.com/repos/farrd/PyGithub/issues/2","labels_url":"https://api.github.com/repos/farrd/PyGithub/issues/2/labels{/name}","comments_url":"https://api.github.com/repos/farrd/PyGithub/issues/2/comments","events_url":"https://api.github.com/repos/farrd/PyGithub/issues/2/events","html_url":"https://github.com/farrd/PyGithub/issues/2","id":24389967,"number":2,"title":"Issue created by PyGithub","user":{"login":"farrd","id":1387834,"avatar_url":"https://gravatar.com/avatar/3281acd8cd12337bfba7577736ae663e?d=https%3A%2F%2Fidenticons.github.com%2Fe57fcb2ce01df0e0a8305b6fff8070d8.png&r=x","gravatar_id":"3281acd8cd12337bfba7577736ae663e","url":"https://api.github.com/users/farrd","html_url":"https://github.com/farrd","followers_url":"https://api.github.com/users/farrd/followers","following_url":"https://api.github.com/users/farrd/following{/other_user}","gists_url":"https://api.github.com/users/farrd/gists{/gist_id}","starred_url":"https://api.github.com/users/farrd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/farrd/subscriptions","organizations_url":"https://api.github.com/users/farrd/orgs","repos_url":"https://api.github.com/users/farrd/repos","events_url":"https://api.github.com/users/farrd/events{/privacy}","received_events_url":"https://api.github.com/users/farrd/received_events","type":"User","site_admin":false},"labels":[],"state":"open","assignee":{"login":"farrd","id":1387834,"avatar_url":"https://gravatar.com/avatar/3281acd8cd12337bfba7577736ae663e?d=https%3A%2F%2Fidenticons.github.com%2Fe57fcb2ce01df0e0a8305b6fff8070d8.png&r=x","gravatar_id":"3281acd8cd12337bfba7577736ae663e","url":"https://api.github.com/users/farrd","html_url":"https://github.com/farrd","followers_url":"https://api.github.com/users/farrd/followers","following_url":"https://api.github.com/users/farrd/following{/other_user}","gists_url":"https://api.github.com/users/farrd/gists{/gist_id}","starred_url":"https://api.github.com/users/farrd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/farrd/subscriptions","organizations_url":"https://api.github.com/users/farrd/orgs","repos_url":"https://api.github.com/users/farrd/repos","events_url":"https://api.github.com/users/farrd/events{/privacy}","received_events_url":"https://api.github.com/users/farrd/received_events","type":"User","site_admin":false},"milestone":null,"comments":0,"created_at":"2013-12-16T23:49:47Z","updated_at":"2013-12-16T23:49:47Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":null}] + diff --git a/lib/github/tests/ReplayData/Issue216.setUp.txt b/lib/github/tests/ReplayData/Issue216.setUp.txt new file mode 100644 index 0000000000..d2f26966de --- /dev/null +++ b/lib/github/tests/ReplayData/Issue216.setUp.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/users/openframeworks +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4929'), ('content-length', '564'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"cddd0710dc9490553aecd937e15d1136"'), ('date', 'Tue, 29 May 2012 19:36:56 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","hireable":false,"url":"https://api.github.com/users/openframeworks","html_url":"https://github.com/openframeworks","public_gists":0,"blog":null,"bio":null,"public_repos":12,"company":null,"gravatar_id":"a858611b044a8302ab14cfe752e17369","login":"openframeworks","email":"","followers":399,"name":null,"avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","created_at":"2009-10-21T21:54:37Z","location":null,"id":142866,"following":4} + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4928'), ('content-length', '1253'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"e7459f63683768d5b53fc4b246d13a10"'), ('date', 'Tue, 29 May 2012 19:36:56 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"clone_url":"https://github.com/openframeworks/openFrameworks.git","has_downloads":true,"watchers":1745,"updated_at":"2012-05-29T19:23:07Z","permissions":{"pull":true,"admin":false,"push":false},"homepage":"http://openframeworks.cc","url":"https://api.github.com/repos/openframeworks/openFrameworks","html_url":"https://github.com/openframeworks/openFrameworks","has_wiki":true,"has_issues":true,"fork":false,"forks":349,"size":4232,"git_url":"git://github.com/openframeworks/openFrameworks.git","private":false,"open_issues":333,"svn_url":"https://github.com/openframeworks/openFrameworks","owner":{"url":"https://api.github.com/users/openframeworks","gravatar_id":"a858611b044a8302ab14cfe752e17369","login":"openframeworks","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142866},"name":"openFrameworks","mirror_url":null,"language":"C","description":"OpenFrameworks is a cross platform open source toolkit for creative coding in C++.","ssh_url":"git@github.com:openframeworks/openFrameworks.git","pushed_at":"2012-05-29T19:23:07Z","created_at":"2009-10-21T21:55:54Z","id":345337,"full_name":"openframeworks/openFrameworks"} + diff --git a/lib/github/tests/ReplayData/Issue216.testIteration.txt b/lib/github/tests/ReplayData/Issue216.testIteration.txt new file mode 100644 index 0000000000..9d49e037b9 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue216.testIteration.txt @@ -0,0 +1,154 @@ +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4927'), ('content-length', '52085'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('Link', '; rel="next", ; rel="last"'), ('etag', '"5e8867ffb4e7630e852b2b231f3b9cdb"'), ('date', 'Tue, 29 May 2012 19:36:57 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-27T18:11:17Z","body":"Since more and more of the OF Core now relies on Poco (ie ofThread, etc) does OF_USING_POCO make sense anymore?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1280","comments":0,"milestone":null,"number":1280,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1280","assignee":null,"title":"deprecate OF_USING_POCO?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-27T18:03:23Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"danomatika","id":480637},"id":4772349,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-28T08:08:24Z","body":"There occurs a weir glitch when compiling the ofShader example with my HD Graphics 3000 (288 Mb) (Mac osx 10.7.4 - Mac Mini - i5 - 2.3Ghz)\n\nI was able to get rid of the glitch by replacing \"gl_FragColor = gl_Color;\" with \"gl_FragColor = 255.0;\" or any other number.\nAnybody knows a reason for the glitch / proper solution?\n\nScreenshot: http://goo.gl/Xdf74\nOpenGL capacities on different graphic cards on apple machines: http://goo.gl/FGQ2N","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1279","comments":2,"milestone":null,"number":1279,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1279","assignee":null,"title":"ofShader example with HD Graphics 3000 issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-26T19:27:56Z","state":"open","user":{"url":"https://api.github.com/users/subtiv","gravatar_id":"837cfe96365c031130a46311eb11d86a","avatar_url":"https://secure.gravatar.com/avatar/837cfe96365c031130a46311eb11d86a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"subtiv","id":1012684},"id":4767675,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-25T18:39:02Z","body":"produces an error on app exit or tex destruction.\n\n OF: OF_LOG_ERROR: trying to delete a non indexed texture, something weird is happening. Deleting anyway\n\nThis is because retain(int id) is a static function in ofTexture.cpp. So we can't retain the depthStencilTexture.\n\nThis suggest we should move the texture allocation of the depth / stencil texture to ofTexture - something which is not possible at the moment. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1277","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1277,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1277","assignee":null,"title":"ofFbo can't retain depthStencil Texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-05-25T18:37:46Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":4758608,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-22T21:26:57Z","body":"\nthe offending line is: \n\nif( speed.getValue() != preSpeed ){\n\nwhich is evaluating as true even through the slider is not touched (float equality test, etc). \n\nif we alter it to something like: \n\nif( fabs(speed.getValue() - preSpeed) > 0.0001 ){\n\nthe code runs fine. probably nicer to add a \"value changed()\" functionality to the slider object though or use EPSILON, etc. \n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1271","comments":0,"milestone":null,"number":1271,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1271","assignee":null,"title":"periodic signal example doesn't run well on windows / cb (float equality error)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-05-22T21:26:57Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":4700182,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-22T16:41:21Z","body":"There's some error that appears on linux systems running the project generator to make VS examples, where the debug and release libs for opencv get added badly to the vs project: \n\n\t%(AdditionalDependencies);opencv_highgui231d.lib;opencv_calib3d231.lib;opencv_imgproc231d.lib;opencv_haartraining_engined.lib;opencv_gpu231d.lib;opencv_flann231.lib;opencv_contrib231d.lib;opencv_video231d.lib;opencv_objdetect231d.lib;zlib.lib;opencv_core231d.lib;opencv_contrib231.lib;opencv_ml231d.lib;opencv_features2d231.lib;opencv_core231.lib;opencv_gpu231.lib;opencv_legacy231d.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_ml231.lib;opencv_imgproc231.lib;opencv_objdetect231.lib;opencv_legacy231.lib;opencv_video231.lib\n\t\t\t\t%(AdditionalLibraryDirectories);..\\..\\..\\addons\\ofxOpenCv\\libs\\opencv\\lib\\vs2010\n\nthis doesn't seem to be the case on osx or windows, which produces correct results: \n\n\t%(AdditionalDependencies);opencv_calib3d231.lib;opencv_contrib231.lib;opencv_core231.lib;opencv_features2d231.lib;opencv_flann231.lib;opencv_gpu231.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_imgproc231.lib;opencv_legacy231.lib;opencv_ml231.lib;opencv_objdetect231.lib;opencv_video231.lib;zlib.lib\n\nwould be good to look at the logic of \"visualStudioProject::addAddon()\" and see if we can fix this.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1268","comments":9,"milestone":null,"number":1268,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1268","assignee":null,"title":"project generator - bad libs for VS / opencv examples","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-05-20T21:50:24Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":4662873,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T00:43:37Z","body":"I woud love some eyes on ofFbo would be great to get it cleaned up and standardized for 0072. \nRight now there are a ton of #ifdefs and some very hard to follow logic, which makes bug fixing quite difficult especially on OPENGL_ES\n\nsee: https://gist.github.com/2711815\n\n@elliotwoods @arturoc @memotv @damiannz @ofZach @kylemcdonald \n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1263","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1263,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1263","assignee":null,"title":"ofFbo.cpp is a huge mess! ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-16T16:27:30Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":4608132,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T14:29:02Z","body":"I added a .mailmap file to the repo to correctly collate all the contributors in spite of changing nick names/email addresses. This is useful when trying to identify contributors for a changelog or similar, or when using the git logging functions like shortlog.\n\nSee the before/after situation here: https://gist.github.com/2710366\n\nI have respected privacy and only used those real names that people have already given in a git ID in the repo. Mainly this addition only associates the different email addresses to one user. @arturoc wins the prize of most used emails! :-)\nThe list is pretty complete, I only had difficulties to associate some IDs to the correct Zachs, since it was not clear for some if @ofZach or @stfj (Zach Gage) was the contributor. Those were left as-is.\n\nIf anybody has objections to their various email being united under their name, please say so and I will correct/remove the relevant entries.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1262","comments":2,"milestone":null,"number":1262,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1262","assignee":null,"title":"Add .mailmap for contributor collation","labels":[],"closed_at":null,"created_at":"2012-05-16T13:44:32Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"id":4604661,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1262.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1262","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1262.patch"}},{"updated_at":"2012-05-16T09:35:31Z","body":"Address #375.\n\nAdd setVolumef(float). Also more clearly define volume ranges (int is 0..255, float is 0..1) and more robust clamping of volume argument.\n\nThis has not been tested on Linux or Windows.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1260","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1260,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1260","assignee":null,"title":"allow float volume on ofVideoPlayer","labels":[],"closed_at":null,"created_at":"2012-05-15T17:50:22Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"damiannz","id":144366},"id":4588997,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1260.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1260","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1260.patch"}},{"updated_at":"2012-05-21T07:31:47Z","body":"This was originally posted @\"biginners\".\n\nhttp://forum.openframeworks.cc/index.php/topic,9527.msg44049.html#msg44049\n\nJoshua noble suggested me to file it as a bug on jithub\n\n\n/////////////////original messages\n\nHello.\n\nI have question about ofShortPixels and ofShortColor.\n\nIf you execute the code below , it'll draw at half way screen height even though I did set aDot at (0. screen height / 4)\n\nAnd another weird thing is it draws 20 pixels instead of 10 pixels which I set for loop for 10 times.\n\nIt only draws correctly with ofPixels and ofColor.\n\nIt doesn't work with ofFloatPixels and ofFloatColor.\n\nPlease help me out.\n\nI need to have RGB value over 255 so I can check if those values are over 255.\n\nThanks in advanced\n\nJin\n\n\n.h file\nCode:\nview plaincopy to clipboardprint?\n\n #pragma once \n #include \"ofMain.h\" \n \n class Dot { \n public: \n ofVec2f location; \n \n Dot(){ \n location.set(0,0); \n } \n \n ~Dot(){} \n }; \n \n class testApp : public ofBaseApp{ \n public: \n void setup(); \n void update(); \n void draw(); \n \n int w,h; \n \n ofTexture particleTexture; \n ofShortPixels * rgbPixels; \n \n ofShortColor& paint(ofShortColor &); \n \n Dot aDot; \n \n \n }; \n\n\n.cpp file\nCode:\nview plaincopy to clipboardprint?\n\n #include \"testApp.h\" \n //-------------------------------------------------------------- \n void testApp::setup(){ \n ofSetFrameRate(30); \n ofSetBackgroundAuto(TRUE); \n ofBackground(0, 0, 0); \n w = ofGetWidth(); \n h = ofGetHeight(); \n \n particleTexture.allocate(w,h,GL_RGB); \n rgbPixels = new ofShortPixels; \n rgbPixels->allocate(w, h, 3); \n aDot.location.set(0, h/4); \n } \n \n //-------------------------------------------------------------- \n void testApp::update(){ \n ofShortColor pixelColor; \n ofShortColor newPixelColor; \n for(int i = 0; i<10; i++){ \n pixelColor = rgbPixels->getColor(aDot.location.x+i, aDot.location.y); \n \n newPixelColor = paint(pixelColor); \n \n rgbPixels->setColor(aDot.location.x+i, aDot.location.y,newPixelColor); \n \n } \n particleTexture.loadData(* rgbPixels); \n } \n \n //-------------------------------------------------------------- \n void testApp::draw(){ \n particleTexture.draw(0, 0, w, h); \n } \n \n ofShortColor & testApp::paint(ofShortColor & _c){ \n \n _c.r += 10; \n _c.g += 2; \n _c.b += 3; \n \n _c.set(_c.r, _c.g, _c.b); \n _c.clamp(); \n \n return _c; \n } ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1257","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1257,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1257","assignee":null,"title":"ofShortPixels doesn't draw pixels correctly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-14T05:46:14Z","state":"open","user":{"url":"https://api.github.com/users/gazaebal","gravatar_id":"f9d7811bb6318fedf7e9f2fe8bfece32","avatar_url":"https://secure.gravatar.com/avatar/f9d7811bb6318fedf7e9f2fe8bfece32?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"gazaebal","id":1736190},"id":4557803,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T21:42:08Z","body":"if i'm not mistaken, the correct way of using ofMatrix4x4 in oF is `glMultMatrixf(myMatrix.getPtr())` or `glLoadMatrixf`.\nThis seems a bit uncomfortable for me.\n\nsome candidates are:\n\n```c++\nofPushMatrix(const ofMatrix4x4 &); //needs alternatives as you might not want to push at the time\nofLoadMatrix(const ofMatrix4x4 &);\nofMultMatrix(const ofMatrix4x4 &);\n\nofMatrix4x4::apply();\nofMatrix4x4::glLoadMatrix(matrixMode = OF_MATRIX_MODE_CURRENT);\n```\n\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1256","comments":5,"milestone":null,"number":1256,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1256","assignee":null,"title":"Feature ofPushMatrix(const ofMatrix4x4 &)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-13T18:20:29Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4554058,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-11T21:24:20Z","body":"\tunsigned char faceSize = 3;\n\tif(data.getNumIndices()){\n\t\tos << \"element face \" << data.getNumIndices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t} else if(data.getMode() == OF_PRIMITIVE_TRIANGLES) {\n\t\tos << \"element face \" << data.getNumVertices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t}\n\nThe facesize is being set as static as 3, but this results in strange exports...things open OK in Meshlab, but exporting to other programs with no faces seems like it won't work","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1252","comments":6,"milestone":null,"number":1252,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1252","assignee":null,"title":"0071 ply (mesh.save()) Point export is broken","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-11T19:45:53Z","state":"open","user":{"url":"https://api.github.com/users/laserpilot","gravatar_id":"07001341fe6c156dddd5b9d06d828cba","avatar_url":"https://secure.gravatar.com/avatar/07001341fe6c156dddd5b9d06d828cba?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"laserpilot","id":1041023},"id":4539985,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:33:31Z","body":"couple of minor bugfixes (absolute path wasn't being detected on second if [absolute] for windows paths)\r\nfixes unixy paths no matter what on windows","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1251","comments":8,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1251,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1251","assignee":null,"title":"Bugfix of to data path","labels":[],"closed_at":null,"created_at":"2012-05-10T06:44:20Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4507572,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1251.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1251","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1251.patch"}},{"updated_at":"2012-05-16T09:43:23Z","body":":(\r\n\r\nIt seems i'm getting double 'data/' in my paths\r\nafter a little tracking down, i found this is because ofSystemLoadDialog changes the current working directory\r\n\r\nso we could try and either fix that by popping the folder after the dialog, \r\nof for windows using something like ```GetModuleFileName``` to get the path of the current exe rather than using the current working directory\r\n\r\nI can't seem to run GetModuleFileName from ofUtils.cpp even though windows.h is included in ofConstants.h (included in ofUtils.h)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1250","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1250,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1250","assignee":null,"title":"bug: ofToDataPath broken again","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-05-10T06:35:24Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4507492,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:42:44Z","body":"'ofx TCPClient :: receiveRaw' was found in the proble.\n\nOriginal :\n\n\tint ofxTCPClient::receiveRawBytes(char * receiveBuffer, int numBytes){\n\t\t\t messageSize = TCPClient.Receive(receiveBuffer, numBytes);\t\n\t\t\t if(messageSize==0){\t\t\n\t\t\t\t\t\tclose();\t\n\t\t\t }\t\n\t\t\t return messageSize;\n\t}\n\nBut 'TCPClient.Receive (receiveBuffer, numBytes)' from '-1' may return\n\nI was modified\n\n\tstring ofxTCPClient::receiveRaw(){\n\t\t\t messageSize = TCPClient.Receive(tmpBuff, TCP_MAX_MSG_SIZE);\n\t\t\t if(messageSize==0){\n\t\t\t\t\t\tclose();\n\t\t\t }\n\t\t\t //TCPClient.Receive is return -1....\n\t\t\t else if(messageSize < 0){ \n\t\t\t\t\t\ttmpBuff[0] = 0;\n\t\t\t }\n\t\t\t else if(messageSize; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"cf9ec647fbc78faae05cb2d11598f79c"'), ('date', 'Tue, 29 May 2012 19:27:10 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-04-30T19:43:55Z","body":"On 'update', PG should respect existing custom include paths, source files, linker flags and project options (such as optimization settings).\r\n\r\nOR\r\n\r\nXcode project should read and respect `OTHER_LDFLAGS` and `HEADER_SEARCH_PATHS`, and add `OTHER_CFLAGS` from Project.xcconfig; projectGenerator should leave these settings alone unless it figures out they need to be adjusted (this is probably going to be difficult).","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1217","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1217,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1217","assignee":null,"title":"projectGenerator update doesn't respect existing project settings","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-04-24T21:03:44Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4269431,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-02T10:19:07Z","body":"Since I don't want to derail #484 further, this issue deals with the implementation of a deprecation mechanism.\r\nBased on [this](http://stackoverflow.com/questions/295120/c-mark-as-deprecated), I made an OFDEPRECATED preproc macro.\r\n\r\nQUESTION: How do I correctly #ifdef for MacOS/XCode4/llvm?\r\n\r\nCould people test this on different platforms? On linux this works. \r\n\r\n\t\ttestApp.h:\r\n\r\n\t\t#pragma once\r\n\r\n\t\t#ifdef __GNUC__\r\n\t\t// maybe __clang__ for checking against llvm/xcode4?\r\n\t\t#define OFDEPRECATED(message, func) func __attribute__ ((deprecated(message)))\r\n\t\t#elif defined(_MSC_VER)\r\n\t\t#define OFDEPRECATED(message, func) __declspec(deprecated(message)) func\r\n\t\t#else\r\n\t\t#pragma message(\"WARNING: You need to implement DEPRECATED for this compiler\")\r\n\t\t#define OFDEPRECATED(message, func) func\r\n\t\t#endif\r\n\r\n\t\tand \r\n\r\n\t\t\t\tvoid dragEvent(ofDragInfo dragInfo);\r\n\t\t\t\tvoid gotMessage(ofMessage msg);\r\n\t\t\r\n\t\t\t\tOFDEPRECATED(\"This is an old function, don't use!\", void deprecatedFunction(void));\r\n\t\t\t\tOFDEPRECATED(\"Obsolete type, use T2!\", typedef int T1);\r\n\t\t\t\ttypedef int T2;\r\n\t\t\t\tOFDEPRECATED(\"This is an old variable, don't use!\", int oldvar3);\r\n\t\t\t\t//This breaks a bit cause it's used in the constructor of testApp, so always triggers.\r\n\r\n\t\t};\r\n\t\tOFDEPRECATED(\"old class!\", class oldClass {\r\n\t\t\tpublic:\r\n\t\t\t\toldClass();\r\n\t\t\t\tvirtual ~oldClass();\r\n\t\t});\r\n\r\n\t\ttestApp.cpp:\r\n\r\n\t\tvoid testApp::setup(){\r\n\t\t\tOFDEPRECATED(\"old string. Don't use\", string oldstring);\r\n\t\t\t// Uncomment these to trigger deprecation warnings\r\n\t\t//\tdeprecatedFunction();\r\n\t\t//\tT1 t1object = 5;\r\n\t\t//\toldstring = \"bla\";\r\n\t\t//\toldvar3=5;\r\n\t\t//\toldClass bla;\r\n\t\t}\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1216","comments":11,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1216,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1216","assignee":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Implement deprecation mechanism","labels":[],"closed_at":null,"created_at":"2012-04-24T21:03:39Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4269429,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-30T19:43:14Z","body":"When using PG's 'update' functionality on apps are in paths with non-standard depths (in my case, `oF/apps/dir/subdir/subsubdir`) the OF_PATH and #include directives in the resulting Project.xcconfig don't match, which means oF projects won't compile:\r\n\r\n~~~~\r\n//THE PATH TO THE ROOT OF OUR OF PATH RELATIVE TO THIS PROJECT.\r\n//THIS NEEDS TO BE DEFINED BEFORE CoreOF.xcconfig IS INCLUDED\r\nOF_PATH = ../../../..\r\n\r\n//THIS HAS ALL THE HEADER AND LIBS FOR OF CORE\r\n#include \"../../../../../libs/openFrameworksCompiled/project/osx/CoreOF.xcconfig\"\r\n~~~~\r\n\r\nNote extra `../` in the `#include` path.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1215","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1215,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1215","assignee":null,"title":"projectGenerator sets incorrect path in Project.xcconfig","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-04-24T20:59:57Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4269359,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-22T23:56:33Z","body":"i'm teaching a workshop right now and i feel like it's ridiculous that i need to explain pointers just to access video :)\r\n\r\nlet's add this!","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1202","comments":3,"milestone":null,"number":1202,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1202","assignee":null,"title":"ofVideoPlayer etc needs ofColor access","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-22T18:42:58Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4231092,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-29T17:34:24Z","body":"DO NOT PULL YET!\r\n\r\nHey all\r\n\r\nHere's the 'off-axis camera' setup we worked on at ScreenLab last weekend.\r\nIt allows you to:\r\n\r\n* Set lens offset on a camera\r\n* Calculate the camera parameters based on a 'view portal' defined by 3 points (top left, bottom left, bottom right)\r\n\r\nCurrently the changes involve editing ofBaseRenderer (and therefore all other renderers) to support lensOffset parameter (default 0,0). We could remove this since ofCamera doesn't actually use ofSetupScreenPerspective\r\n\r\nSo let's have a quick chat about what needs chaning to make this core friendly and then probably pull after 0071 release?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1201","comments":9,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1201,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1201","assignee":null,"title":"Feature provocation pull request: ofCamera lens offset","labels":[],"closed_at":null,"created_at":"2012-04-22T15:55:29Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4230131,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1201.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1201","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1201.patch"}},{"updated_at":"2012-05-14T01:22:17Z","body":"I'm investigating the way to draw bezier curves / nurbs etc. with shaders, here is a list a links and information I found that can improve render times with OF. Any way I must admit I'm new to openGL & shaders so maybe someone can take this to implement maybe an add-on or maybe to added to the core.\r\n\r\n**Resolution Independent Curve Rendering using Programmable Graphics Hardware**\r\nhttp://research.microsoft.com/en-us/um/people/cloop/loopblinn05.pdf\r\n\r\n**Resolution independent GPU accelerated Curve & Font rendering**\r\n**GPU based Resolution Independent Font & Curve Rendering – initial Release**\r\nhttp://jausoft.com/blog/2011/04/01/resolution-independent-gpu-accelerated-curve-font-rendering/\r\nhttp://ramisantina.com/blog/?p=73\r\nhttp://vimeo.com/21810192\r\nhttp://jogamp.org/doc/gpunurbs2011/p70-santina.pdf\r\n\r\n**Curvy blues**\r\nhttp://www.mdk.org.pl/2007/10/27/curvy-blues\r\n\r\n**Vector drawing: OpenGL shaders and cairo & vector hardware tessellation**\r\nhttp://www.mdk.org.pl/2007/8/6/vector-drawing-opengl-shaders-and-cairo\r\n\r\n**ShivaVG & Random Access Rendering of Animated Vector Graphics**\r\nhttp://ivanleben.blogspot.com.es/2007/07/shivavg-open-source-ansi-c-openvg.html\r\nhttp://www.youtube.com/watch?v=mD8X-e5-sY4\r\nhttp://www.youtube.com/watch?v=U4USCfwORUg\r\nhttp://andrejas-atelier.com/ivan/IvanLebenHonsThesis.pdf\r\n\r\n**RAVG**\r\nhttp://research.microsoft.com/en-us/um/people/hoppe/proj/ravg/\r\n\r\n**NV Path Rendering Videos (seams only with nvidia)**\r\nhttp://developer.nvidia.com/nv-path-rendering-videos\r\n\r\n**Vector drawing: OpenGL polygon tessellation**\r\nhttp://www.mdk.org.pl/2007/8/16/vector-drawing-opengl-polygon-tessellation\r\nhttp://zrusin.blogspot.com.es/2006/07/hardware-accelerated-polygon-rendering.html\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1190","comments":8,"milestone":null,"number":1190,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1190","assignee":null,"title":"Bezier Shaders & Vector openGL rendering","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-2D","name":"section-2D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-20T09:23:00Z","state":"open","user":{"url":"https://api.github.com/users/microbians","gravatar_id":"98c91e60903b83c0a022ee70cca9ca21","login":"microbians","id":1662136,"avatar_url":"https://secure.gravatar.com/avatar/98c91e60903b83c0a022ee70cca9ca21?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4207350,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:41:20Z","body":"ofSetCurveResolution is not changing the resolution using ofBezier nor ofBezierVertex (tested with ofScale is more easy to see the bug)\r\n\r\n ofFill();\r\n ofSetHexColor(0xFF9933);\r\n ofBeginShape();\r\n ofVertex(x0,y0);\r\n ofBezierVertex(x1,y1,x2,y2,x3,y3);\r\n ofEndShape();\r\n\r\nall works fine when using ofPath directly:\r\n\r\n ofPath curve;\r\n curve.setFillHexColor(0xFF000);\r\n curve.setCurveResolution(120);\r\n curve.moveTo(x0, y0);\r\n curve.bezierTo(x1,y1,x2,y2,x3,y3);\r\n curve.draw();\r\n\r\nmore: http://forum.openframeworks.cc/index.php/topic,9596.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1189","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1189,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1189","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofSetCurveResolution + ofBezierVertex bug","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-04-20T08:51:51Z","state":"open","user":{"url":"https://api.github.com/users/microbians","gravatar_id":"98c91e60903b83c0a022ee70cca9ca21","login":"microbians","id":1662136,"avatar_url":"https://secure.gravatar.com/avatar/98c91e60903b83c0a022ee70cca9ca21?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4206982,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-01T04:10:23Z","body":"If you set up an ofFbo as follows...\r\n\r\n```cpp\r\n ofFbo::Settings s;\r\n s.width = 400;\r\n s.height = 400;\r\n s.textureTarget = GL_TEXTURE_2D;\r\n s.useDepth = true;\r\n s.depthAsTexture = true;\r\n s.dethInternalFormat = GL_DEPTH_COMPONENT24;\r\n```\r\n\r\n...then the colour texture's dimensions are set to be the next POTs up but the depth texture's dimensions don't seem to be. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1186","comments":2,"milestone":null,"number":1186,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1186","assignee":null,"title":"ofFbo depthBufferTex can be inconsistent with colour texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-18T15:08:32Z","state":"open","user":{"url":"https://api.github.com/users/neilmendoza","gravatar_id":"3e46b12547e7bac19eb982bc512b19c4","login":"neilmendoza","id":818571,"avatar_url":"https://secure.gravatar.com/avatar/3e46b12547e7bac19eb982bc512b19c4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4174070,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:44:27Z","body":"As mentioned here: http://forum.openframeworks.cc/index.php?topic=9107.0\r\nOpenGLES2 not working. It is always falls back to ES1. I tested it only on iPad2 with iOS 5.0.1.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1178","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1178,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1178","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"OpenGLES2 not working","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-04-16T11:19:36Z","state":"open","user":{"url":"https://api.github.com/users/erinnovations","gravatar_id":"29639bbeb3afdde8fb3c7e273e5e43c6","login":"erinnovations","id":253455,"avatar_url":"https://secure.gravatar.com/avatar/29639bbeb3afdde8fb3c7e273e5e43c6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4132608,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-14T13:45:55Z","body":"in ofTexture::loadData we are doing:\r\n\r\n\r\n\t//------------------------ likely, we are uploading continuous data\r\n\tGLint prevAlignment;\r\n\tglGetIntegerv(GL_UNPACK_ALIGNMENT, &prevAlignment);\r\n\tglPixelStorei(GL_UNPACK_ALIGNMENT, 1);\r\n\r\nany reason for this? leaving the default works too. i've been working with a huge video and the transfer rates on some cards were super slow with ofTexture::loadData. even glDrawPixels was faster, i've finally used pbo's but later looking at ofTexture discovered this lines and i suspect that it could be the reason for loadData being slower, haven't tested it yet though.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1175","comments":0,"milestone":null,"number":1175,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1175","assignee":null,"title":"GL_UNPACK_ALIGNMENT 1 in ofTexture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-14T13:45:42Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4117762,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:39:22Z","body":"one returns the result (dot) the other performs in place (cross), i.e. overrides the contents\r\nThe two definitions are inconsistent\r\npropose rename `ofVec3f::dot` to become `ofVec3f::getDotted` in line with `ofVec3f::getCrossed`","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1174","comments":9,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1174,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1174","assignee":null,"title":"bug : inconsistent API for ofVec3f::dot and ofVec3f::cross","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-13T17:09:38Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4108582,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-14T04:20:36Z","body":"If you pass a string containing non-ascii characters to ofToHex(), the non-ascii characters (with character codes above 127) will be output as ffffxxxx (it depends on the exact character value and the size of the int type on the platform you are compiling for).\r\nThe problem is due to an incorrect cast in the ostringstream operation inside the loop.\r\nInstead of directly casting the (signed) char from the input character to an unsigned int, the input character must first be cast to an unsigned char.\r\nIn other words, instead of:\r\n``` out << setfill('0') << setw(2) << hex << (unsigned int) value[i];```\r\nit should be:\r\n``` out << setfill('0') << setw(2) << hex << (unsigned int) ((unsigned char)value[i]);```\r\nor maybe even:\r\n``` out << setfill('0') << setw(2) << hex << static_cast(static_cast(value[i]));```\r\nif you prefer C++ style casts over C style casts. :)\r\n\r\nHTH\r\n/Jesper","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1173","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1173,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1173","assignee":null,"title":"ofToHex(string) is wrong for non-ascii input","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-13T14:42:30Z","state":"open","user":{"url":"https://api.github.com/users/pappis","gravatar_id":"fbf3d56c96cf5b891056530066549692","login":"pappis","id":1640543,"avatar_url":"https://secure.gravatar.com/avatar/fbf3d56c96cf5b891056530066549692?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4104336,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-12T10:09:42Z","body":"if I call ofBeginSaveScreenAsPDF using ofEasyCam or the ofCamera, the pdf doesn't have the perspective of the camera. There's a parameter b3d to ofBeginSaveScreenAsPDF which I interpret to be \"render taking into account 3d transforms\", but it doesn't seem to have any effect.\r\n\r\nmore on the forum\r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,9542.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1171","comments":0,"milestone":null,"number":1171,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1171","assignee":null,"title":"ofBeginSaveScreenAsPDF ignores 3d transformations","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-12T10:09:42Z","state":"open","user":{"url":"https://api.github.com/users/jesusgollonet","gravatar_id":"5008d5295e9bc2636313c7b50ed5981d","login":"jesusgollonet","id":31100,"avatar_url":"https://secure.gravatar.com/avatar/5008d5295e9bc2636313c7b50ed5981d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4081188,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-13T14:54:18Z","body":"if I have `ofEvent boolEvent` and i try to call `ofNotifyEvent( boolEvent, true )` i get a `no matching function` error as the compiler cannot coerce `true` to a `bool &`.\r\n\r\nto solve this, instead of this:\r\n\r\n~~~~\r\nofEvent boolEvent;\r\n...\r\nofNotifyEvent( boolEvent, true );\r\n~~~~\r\n\r\ni need to write this:\r\n\r\n~~~~\r\nofEvent boolEvent;\r\n...\r\nbool myBool = true;\r\nofNotifyEvent( boolEvent, myBool );\r\n~~~~\r\n\r\nthis is kind of annoying.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1167","comments":2,"milestone":null,"number":1167,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1167","assignee":null,"title":"ofNotifyEvent( boolEvent, true ) fails to compile","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-04-11T12:03:34Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4063456,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-11T13:21:33Z","body":"It's currently not possible to have an event without arguments\r\n\r\n`ofEvent testEvent;` -- fails to compile\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1166","comments":2,"milestone":null,"number":1166,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1166","assignee":null,"title":"ofEvent lacks simple, argument-free use case","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-04-11T12:00:19Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4063417,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-21T15:41:01Z","body":"It's currently not possible to write `ofLogError( \"serial\", \"error %i connecting to serial\", serialError )`. \r\n\r\nThere should be `ofLogError( string module, string format, ... )` methods as with normal ofLog.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1165","comments":6,"milestone":null,"number":1165,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1165","assignee":null,"title":"ofLogError, ofLogWarning lack format, ... args","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-04-11T11:56:33Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4063366,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-10T16:47:19Z","body":"change `allocate(_w, _h, OF_IMAGE_COLOR);` to `allocate(_w, _h, OF_IMAGE_COLOR_ALPHA);` (via reza on irc)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1152","comments":4,"milestone":null,"number":1152,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1152","assignee":null,"title":"grabScreen in ofImage fails on Android","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-04-09T17:15:21Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4032047,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-29T14:46:40Z","body":"the module name is no longer printed if it's coming from OF itself.\r\n\r\ninstead of the constant name, a human-readable string is printed.\r\n\r\nexample output from project generator: http://pastebin.com/raw.php?i=0dp938Jx","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1151","comments":6,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1151,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1151","assignee":null,"title":"shorten + simplify ofLog output","labels":[],"closed_at":null,"created_at":"2012-04-08T21:13:14Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4023525,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1151.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1151","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1151.patch"}},{"updated_at":"2012-04-17T14:47:36Z","body":"\r\nWorking on the project generator, which has a fair amount of logging, I'm concerned about how much space we loose on each line: \r\n\r\n OF: OF_LOG_NOTICE:\r\n\r\nit's about 15-20 characters or so, pretty significant where each line is 80, so alot more wrapping happens then I'd like, making the results less cleaner or organized. \r\n\r\nI propose we alter \r\n\r\n string ofGetLogLevelName(ofLogLevel level){\r\n switch(level){\r\n case OF_LOG_VERBOSE:\r\n return \"OF_LOG_VERBOSE\";\r\n break;\r\n case OF_LOG_NOTICE:\r\n return \"OF_LOG_NOTICE\";\r\n break;\r\n case OF_LOG_WARNING:\r\n return \"OF_LOG_WARNING\";\r\n break;\r\n case OF_LOG_ERROR:\r\n return \"OF_LOG_ERROR\";\r\n break;\r\n case OF_LOG_FATAL_ERROR:\r\n return \"OF_LOG_FATAL_ERROR\";\r\n break;\r\n case OF_LOG_SILENT:\r\n return \"OF_LOG_SILENT\";\r\n break;\r\n default:\r\n return \"\";\r\n }\r\n }\r\n\r\nso that we can have something like : \r\n\r\n (of:notice) \r\n (of:verbose) \r\n (of:error) \r\n\r\nor something smaller and if we loose the all caps, maybe less threatening :)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1150","comments":4,"milestone":null,"number":1150,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1150","assignee":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"propose shortening ofLog console message length","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-04-08T20:32:49Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4023305,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-07T15:00:32Z","body":"Hey all\r\n\r\nA few sections of the repo need some love to put them in line with the project generator:\r\n\r\n1. Readme's\r\n2. Rogue old project generators\r\n3. Document complementing tools\r\n\r\n# Readme\r\n\r\nThe readme's in the root of the repo need some love\r\nnone of them mention project generator \r\n\r\ni feel like each should be a description of how to get to a working project generator on each of the respective platforms\r\n\r\nalso note:\r\n* .vs2010 is missing\r\n* readme.txt repeats information from the other readme's (i.e. it's a list of platform specific instructions)\r\ni think this should be perhaps a little description of oF and a few tips on how to get started\r\n\r\n# Rogue old 'project generators' / documenting complementary tools for project generator\r\n\r\nHere's things I can find in the repo which don't make sense to me at the moment:\r\n\r\n* `openFrameworks\\scripts\\????\\compileAllExamples.bat`\r\n** is this supposed to be run (optionally) after the project generator?\r\n** why is the project template within this folder?\r\n* `openFrameworks\\scripts\\????\\createProjects.py` \r\n** if this isn't supposed to be used anymore, lets delete it immediately (we can always recover in emergencies)\r\n\r\nand the 'other' folder in the root.. perhaps never took off?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1146","comments":0,"milestone":null,"number":1146,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1146","assignee":null,"title":"Document Project Generator / clean out old tools","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"closed_at":null,"created_at":"2012-04-07T14:43:53Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4015514,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-07T19:49:31Z","body":"When attempting to render a mesh to a PDF the ofCairoRender does not output a filled mesh, thus the PDF output looks empty. \r\n\r\nIf you open the file in illustrator you'll see the paths, there but with no stroke or fill. \r\n\r\nWhen I dug into the issue a bit further I realized that Cairo isn't capable of rendering shapes with per vertex colors easily...\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1145","comments":3,"milestone":null,"number":1145,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1145","assignee":null,"title":"ofCairoRenderer ofMesh doesn't render properly to PDF","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-04-06T22:02:01Z","state":"open","user":{"url":"https://api.github.com/users/rezaali","gravatar_id":"548374013b9c6e50ebbd2294e12d4f31","login":"rezaali","id":555207,"avatar_url":"https://secure.gravatar.com/avatar/548374013b9c6e50ebbd2294e12d4f31?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4010494,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-01T04:21:01Z","body":"When using the ofColor subtraction operator, negative results are clamped to positive values instead of 0. Values are circulating between 0 and 255, which could be useful for hue in HSV but in most cases (R, G, B..) is not what I would expect.\r\n\r\n ofColor a(10, 40, 80);\r\n ofColor b(20, 5, 30);\r\n ofColor c = (a-b); // I get: (246, 45, 50), I would expect: (0, 45, 50)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1144","comments":9,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1144,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1144","assignee":null,"title":"ofColor subtraction and negative values","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-04-06T07:56:44Z","state":"open","user":{"url":"https://api.github.com/users/jembezmamy","gravatar_id":"69a23dc9914cb6bc3202c50e15eabba0","login":"jembezmamy","id":720354,"avatar_url":"https://secure.gravatar.com/avatar/69a23dc9914cb6bc3202c50e15eabba0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4001148,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-04T12:07:24Z","body":"When using the dragEvent ofDragInfo I always get the following error message:\r\n\r\nwarning: Could not find object file \"/Users/theo/Documents/CODE/__OPENFRAMEWORKS/gitOF/openFrameworks/apps/devApps/macDragDropExample/buildGlutFrameworkHackedWindowLevel10.4/libForeground.a(macx_foreground.o)\" - no debug information available for \"/Users/mcast/Code/GLUT-ToPost/macx_foreground.m\".\r\n\r\nIt doesn't seem to hurt my code but is a bit annoying, especially early on when I wasn't sure if it had anything to do with compile failings. Not a big issue obviously, but it might confuse some other newbie's also.\r\n\r\n(OF 0.07 - Xcode 4.2.1 - OS X 10.7.3 - macbook pro) ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1138","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1138,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1138","assignee":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"benign error message","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2012-04-04T11:05:57Z","state":"open","user":{"url":"https://api.github.com/users/davideo71","gravatar_id":"42c3c1acbdb4a998d8096b49745219cd","login":"davideo71","id":1611385,"avatar_url":"https://secure.gravatar.com/avatar/42c3c1acbdb4a998d8096b49745219cd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3968742,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-03T17:37:10Z","body":"theo's #1133 made me think about ways that i use noise regularly that might also be abstracted.\r\n\r\ni would also like to see versions of noise that return multidimensional results. normally i do something like:\r\n\r\n\tofVec2 a(ofSignedNoise(t, 0), ofSignedNoise(0, t)); // 1D -> 2D\r\n\tofVec2 b(ofSignedNoise(x, 0), ofSignedNoise(0, y)); // 2D -> 2D\r\n\tofVec3 c(ofSignedNoise(t, 0, 0), ofSignedNoise(0, t, 0), ofSignedNoise(0, 0, t)); // 1D -> 3D\r\n\tofVec3 d(ofSignedNoise(x, 0, 0), ofSignedNoise(0, y, 0), ofSignedNoise(0, 0, (x + y) / 2)); // 2D -> 3D\r\n\r\nand it would be good to spend some time making sure these are really good ways of doing it, then implement them inside some functions like `ofSignedNoise2()` and `ofSignedNoise3()` (for example).","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1134","comments":2,"milestone":null,"number":1134,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1134","assignee":null,"title":"multidimensional noise output","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-04-01T16:44:55Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3917377,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-01T17:48:12Z","body":"ie: the equivalent of doing \r\n\r\nfloat rate = 0.02 + ofNoise(ofGetElapsedTimeF() * 0.02, 100.0) * 0.015;\r\nfloat value = ofSignedNoise( rate, x, y ); \r\n\r\nas one function. \r\n\r\nalso see kyle's #1134 for other noise utils. \r\n\r\nI find myself needing this quite often for more natural random motion where the rate of change is variable. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1133","comments":0,"milestone":null,"number":1133,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1133","assignee":null,"title":"ofNoise and ofSignedNoise with 2nd order control for rate.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-04-01T15:45:11Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3917018,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=3 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4941'), ('content-length', '55518'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('Link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"414a5c156bbe219ad21d164052b40f6c"'), ('date', 'Tue, 29 May 2012 19:27:11 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-04-02T02:05:52Z","body":"This is a feature discussion issue for what string features we should add to of.\r\nofZach mentioned some regexp ones from P5 match matchAll\r\nWould be great to get some eyes on this.\r\n\r\nOne approach would be a static class or namespace.\r\nThe idea would be we could include a variety of handy functions that would be useful for people not wanting to get into regexp\r\n\r\n\tofString::contains(str, \"apple\") //returns bool\r\n\tofString::starts(str, \"The\") //returns bool\r\n\tofString::ends(str, \".\") //returns bool\r\n\tofString::count(str, \"apples\") //count how many times apples appears in the \r\n\tofString::join(myVectorStr, \", \"); //this is currently ofJoinString\r\n\tofString::split(someText, \".\"); //this is currently ofSplitString\r\n\tofString::split(someHtml, \"<\", \">\"); //this is the same but returns a vector of things between the start and end delims\r\n\tofString::limit(someText, 200); //limit the text to 200 characters. optional arg to add ... to the end.\r\n\r\nQuestions:\r\n- Should we mirror P5 with match and matchAll or should we indicate that regexp is required? ie regexMatch regexMatchAll ?\r\n- Other string utils we could add?\r\n- Should it be ofStringUtils:: or ofString:: ?\r\n- Something to do a split and then return a vector of float int etc?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1132","comments":6,"milestone":null,"number":1132,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1132","assignee":null,"title":"ofStringUtils:: feature discussion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-31T17:52:48Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":3911629,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-05-27T17:40:30Z","body":"This is a feature discussion issue for what should be added / changed to ofTTF.\r\nWould be great to get some eyes on this from @vtron @ofzach @arturoc and anyone with thoughts on the matter.\r\n\r\nTextAreas:\r\n- Fit text to a box\r\n- Handle overflow ( ie either truncate or resize box height )\r\n- non ragged options\r\n- could textAreas work with both ofTTF and ofDrawBitmapString ? abstract text formatting?\r\n\r\nAlignment:\r\n- Left align a string\r\n- Right align\r\n- Center\r\n- Top align \r\n- Base align \r\n\r\nSpacing:\r\n- Kerning\r\n- Leading / line height\r\n\r\nLoading:\r\n- Allow for loading a font up to a max size for drawing at different sizes. \r\n- Allow for selection and loading of specific sizes within one object. ie: myFont.setCurrentSize(12); \r\n- Font family's / sets ? Bold, Italic etc? \r\n\r\nDrawing:\r\n- Allow for drawing font at different sizes. Scale font as needed. \r\n\r\nFormatting:\r\n- Could we somehow allow a string to have different colors, sizes. Right now it is a pain to change colors or sizes. \r\n- would this be replicating basic html or another approach? maybe better as an addon?\r\n\r\nInfo:\r\n- Ability to get the x and y position of the nth character in the string? useful maybe for cursor or selection?\r\n\r\n**Update:**\r\n-Underline\r\n-Render rect behind text ( a la what @kylemcdonald added to ofDrawBitmapString)\r\n-Scale type to fit a rect + keep aspect ratio\r\n-Crazy: text along a path :) ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1131","comments":25,"milestone":null,"number":1131,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1131","assignee":null,"title":"ofTTF feature discussion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-31T17:36:25Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":3911537,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-31T14:44:01Z","body":"Agree on a common format for a header in the contributed example files.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1130","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1130,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1130","assignee":null,"title":"Define standard header for examples.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-31T14:44:01Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":3910580,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-04-24T02:12:05Z","body":"\r\n\r\nXcode 4 mangles OF projects pretty badly in the following ways: \r\n\r\na) it autogenerates schemes, and \"openframeworks\" appears as the chosen scheme\r\nb) it sometimes chooses the wrong SDK for OF -- is there a way to set that?\r\nc) debug and release are not really clear, part of this is a shift in xcode -- but it's much harder to see how things are compiled and to set release or debug\r\nd) I still had issues with OF needing to be recompiled all the time. I tried to fix this, but we should make sure it's done right. the of lib was appearing red even though it had been built, etc. \r\n\r\nI've tried to fix some of this in detroit with the PG, but I don't think it's the right way to do it. Overall, it would be great to have projects work smoothly on xcode 4...\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1129","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1129,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1129","assignee":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"title":"xcode 4 issues: scheme, auto-generation of schemes, rebuilding OF, sdk, etc","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-03-31T14:39:04Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":3910555,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-31T16:32:04Z","body":"When deprecating api's (e.g. ofEvents, ofVertexes), perhaps we could help automate the changes through simple scripts to update api\r\nSuggest sticking to something close to how uncrustify scripts are run (and perhaps there are tools like uncrustify but specifically for this task)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1128","comments":1,"milestone":null,"number":1128,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1128","assignee":null,"title":"upgrade scripts","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-31T14:38:19Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":3910549,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-04-09T16:47:04Z","body":"It would be nice (and useful for testing the PG) if the PG would get an option to clean the examples folders of all generated files. \r\n\r\nCurrently, the quickest option is to delete the examples folder on disk, and do `git reset --hard HEAD`.\r\n\r\nAs before, milestoned for 0071, but feel free to push back.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1126","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1126,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1126","assignee":null,"title":"PG Feature request: Clean examples folder","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-03-30T12:51:30Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":3897090,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-29T16:47:29Z","body":"there is a hard limit of 100 files when using drag & drop into an of app. not sure if it's an of issue, but am curious if it comes from the hacked glutDragEventFunc ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1124","comments":0,"milestone":null,"number":1124,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1124","assignee":null,"title":"void dragEvent(ofDragInfo dragInfo) limited to 100 files in osx lion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-29T16:47:29Z","state":"open","user":{"url":"https://api.github.com/users/jesusgollonet","gravatar_id":"5008d5295e9bc2636313c7b50ed5981d","login":"jesusgollonet","avatar_url":"https://secure.gravatar.com/avatar/5008d5295e9bc2636313c7b50ed5981d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":31100},"id":3883598,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-29T13:05:25Z","body":"When loading a file with ofImage, ofSoundPlayer , ofVideoPlayer-file or any ofFile it would be nice to be able to know if the file changed since it was loaded.\r\n\r\nIts very simple to implement with Poco::File->getLastModified() and it would be very nice if this would be built into the above classes.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1120","comments":2,"milestone":null,"number":1120,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1120","assignee":null,"title":"isFileChanged() for ofImage, ofVideoPlayer, ofSoundPlayer and ofFile","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-28T16:21:45Z","state":"open","user":{"url":"https://api.github.com/users/imanhp","gravatar_id":"7398ab0bbd07832d0289f26773e65077","login":"imanhp","avatar_url":"https://secure.gravatar.com/avatar/7398ab0bbd07832d0289f26773e65077?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1216228},"id":3856005,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-30T12:19:59Z","body":"paths.make should be in the repo as an example on how to set it up correctly, but changes (i.e. paths unique to every user) to it should be ignored cause everyone will have a different version in their computers so we don't want personal changes to appear in git status.\r\n\r\nI think the best way to solve this is to rename it to paths.make.default, keep this in the repo, maybe with `` instead of your path, and have people make their own paths.make from that one. We track changes to paths.make.default and ignore paths.make. \r\n\r\nThis will probably also need a mechanism in the makefile to fail gracefully and remind the user, if his customized paths.make is missing.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1118","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1118,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1118","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"Default paths.make for Android","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/android","name":"android","color":"2bc4ad"}],"closed_at":null,"created_at":"2012-03-28T12:19:39Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":3850655,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-04-18T17:13:36Z","body":"Once ofSetFrameRate() is called, I can't find a way to retrieve it. I think implementing a ofGetDesiredFrameRate() in ofAppRunner would make sense, also adding getDesiredFrameRate() to ofAppBaseWindow and all subclasses, where the actual value is stored. \r\n\r\nThis can be useful to compare the desired frame rate with actual frame rate and react accordingly if required.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1117","comments":0,"milestone":null,"number":1117,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1117","assignee":null,"title":"Can't retrieve desired frame rate once set","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-27T11:48:00Z","state":"open","user":{"url":"https://api.github.com/users/armadillu","gravatar_id":"b87a82d7c86161432ee6388c7cbd5e2c","login":"armadillu","avatar_url":"https://secure.gravatar.com/avatar/b87a82d7c86161432ee6388c7cbd5e2c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":167057},"id":3825582,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-26T22:27:14Z","body":"https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/gl/ofVbo.cpp#L343\r\n\r\nIndices should be specified as GL_ELEMENT_ARRAY_BUFFER unless I am mistaken.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1116","comments":5,"milestone":null,"number":1116,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1116","assignee":null,"title":"ofVBO updateIndexData incorrect buffer type.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-26T18:26:05Z","state":"open","user":{"url":"https://api.github.com/users/vade","gravatar_id":"37aca214d4875cd90af9d67072c82642","login":"vade","avatar_url":"https://secure.gravatar.com/avatar/37aca214d4875cd90af9d67072c82642?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":65011},"id":3813852,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-26T18:45:51Z","body":"The default optimization settings for debug builds in example XCode projects is set to Fastest,Smallest thus making debugging very difficult, is there a specific reason for this?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1115","comments":3,"milestone":null,"number":1115,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1115","assignee":null,"title":"optimization level in xcode projects","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"}],"closed_at":null,"created_at":"2012-03-26T17:05:14Z","state":"open","user":{"url":"https://api.github.com/users/colormotor","gravatar_id":"2548dbd6a86902ed5260b5f76710b83c","login":"colormotor","avatar_url":"https://secure.gravatar.com/avatar/2548dbd6a86902ed5260b5f76710b83c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1239872},"id":3812318,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-31T15:31:31Z","body":"I had some problems because of macro definitions in ofArduino.h overriding an enum in a a class of my codebase ( SHIFT )\r\nIt's not exactly a bug! but I would suggest using enums or const int instead of the macros to avoid any conflicts\r\nI solved the problem by modifying \r\n#define SHIFT 0x05 \r\ninto \r\nconst int SHIFT = 0x05;\r\n\r\nanother solution could be using enumerations as \r\nenum\r\n{\r\n ...\r\n SHIFT = 0x05,\r\n etc...\r\n};\r\n\r\nI believe this would not break any of the existing code\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1114","comments":1,"milestone":null,"number":1114,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1114","assignee":{"url":"https://api.github.com/users/joshuajnoble","gravatar_id":"10960ba0f305803a1cdc7cd6188d643b","login":"joshuajnoble","avatar_url":"https://secure.gravatar.com/avatar/10960ba0f305803a1cdc7cd6188d643b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":237423},"title":"macros in ofArduino","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-03-26T17:02:21Z","state":"open","user":{"url":"https://api.github.com/users/colormotor","gravatar_id":"2548dbd6a86902ed5260b5f76710b83c","login":"colormotor","avatar_url":"https://secure.gravatar.com/avatar/2548dbd6a86902ed5260b5f76710b83c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1239872},"id":3812275,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-27T14:56:56Z","body":"Hello.\r\n\r\nI'm trying to run camera frame grabing in OSX Lion.\r\nSimple ofVideoGrabber doesn't work - even if I link it with 10.6 SDK (and 10.6 is deployment target) I receive crash in initialization of ofVideoGrabber. Details are the same as in http://forum.openframeworks.cc/index.php/topic,6776.0.html\r\n\r\nI tryed QtKitMovieGrabberExample. It had some problems in compilation - texture property was not synthesized, I wrote this property and compilation run well.\r\nBut linking is fault. All I receive form linker is:\r\n\r\n*Ld bin/movieGrabberExampleDebug.app/Contents/MacOS/movieGrabberExampleDebug normal i386\r\n cd /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample\r\n setenv MACOSX_DEPLOYMENT_TARGET 10.6\r\n /Developer/usr/bin/clang++ -arch i386 -isysroot /Developer/SDKs/MacOSX10.6.sdk -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freeimage/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/GLee/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/rtAudio/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/fmodex/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freetype/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx -F/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin -F/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/glut/lib/osx -filelist /Users/yltastep/Library/Developer/Xcode/DerivedData/movieGrabberExample-aftkspwrgtotrteyzaplfbqzeasd/Build/Intermediates/movieGrabberExample.build/Debug/movieGrabberExample.build/Objects-normal/i386/movieGrabberExampleDebug.LinkFileList -mmacosx-version-min=10.6 -dead_strip ../../../libs/poco/lib/osx/PocoFoundation.a ../../../libs/poco/lib/osx/PocoNet.a ../../../libs/poco/lib/osx/PocoXML.a ../../../libs/poco/lib/osx/PocoUtil.a ../../../libs/tess2/lib/osx/tess2.a ../../../libs/glew/lib/osx/glew.a ../../../libs/cairo/lib/osx/cairo-script-interpreter.a ../../../libs/cairo/lib/osx/cairo.a ../../../libs/cairo/lib/osx/pixman-1.a ../../../libs/fmodex/lib/osx/libfmodex.dylib ../../../libs/rtAudio/lib/osx/rtAudio.a /Users/yltastep/Documents/XCode/openframeworks/libs/openFrameworksCompiled/lib/osx/openFrameworksDebug.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/GLee/lib/osx/GLee.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/rtAudio/lib/osx/rtAudio.a -framework AGL -framework ApplicationServices -framework AudioToolbox -framework Carbon -framework CoreAudio -framework CoreFoundation -framework CoreServices -framework OpenGL -framework QuickTime -framework AppKit -framework Cocoa -framework IOKit -framework GLUT /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoFoundation.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoNet.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoUtil.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoXML.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freetype/lib/osx/freetype.a -lfmodex /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx/freeimage.a -framework QTKit -framework Quartz -framework QuartzCore -o /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin/movieGrabberExampleDebug.app/Contents/MacOS/movieGrabberExampleDebug*\r\n\r\n**Command /Developer/usr/bin/clang++ failed with exit code 1**\r\n\r\nSo no explanation of problem.\r\n\r\nIs somebody ran this example successfully ?\r\nAnd what I'm doing wrong ?\r\n\r\nThanks in advance !\r\n\r\nWith regards.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1112","comments":9,"milestone":null,"number":1112,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1112","assignee":null,"title":"Issue with QtKitMovieGrabberExample in apps/devapps","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2012-03-26T12:11:44Z","state":"open","user":{"url":"https://api.github.com/users/OlexandrStepanov","gravatar_id":"aa6e2a475cab75513c9cc435b28eef31","login":"OlexandrStepanov","avatar_url":"https://secure.gravatar.com/avatar/aa6e2a475cab75513c9cc435b28eef31?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":971079},"id":3807459,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-25T20:07:16Z","body":"Todd's example has this code a few times in it by hand, but I'm thinking it's so simple it could be added along side ofSplitString() and would be really useful ? for sure, more string utility functions are helpful, and for basic text parsing, this is great. Poco gives us this for free, so it doesn't seem like a huge stretch to think of something like this, plus find and replace, etc. Would make the regex example much shorter. \r\n\r\np5 has something similar, if that's a helpful argument: \r\n\r\nhttp://processing.org/reference/matchAll_.html\r\n\r\n\r\n\tvector < string > ofxRegex::getMatchedStrings (string contents, string regex );\r\n\tvector < string > ofxRegex::getMatchedStrings (string contents, string regex ){\r\n \r\n\t vector < string > results;\r\n\t RegularExpression regEx(regex);\r\n\t RegularExpression::Match match;\r\n \r\n\t while(regEx.match(contents, match) != 0) {\r\n \r\n\t // we get the sub string from the content\r\n\t // and then trim the content so that we\r\n\t // can continue to search \r\n\t string foundStr = contents.substr(match.offset, match.length);\r\n\t contents = contents.substr(match.offset + match.length);\r\n \r\n\t results.push_back(foundStr);\r\n \r\n\t }\r\n\t return results;\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1110","comments":1,"milestone":null,"number":1110,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1110","assignee":null,"title":"add a simple regex function like ofSplitString()","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-03-25T18:56:37Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":3799872,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-25T18:50:13Z","body":"code to recreate: \r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::setup(){\r\n system(\"pwd;\");\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::update(){\r\n system(\"pwd;\");\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::draw(){\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::keyPressed(int key){\r\n cout << ofToDataPath(\"temp\") << endl;\r\n}\r\n\r\nproduces: \r\n\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n../../../data/temp\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin/emptyExampleDebug.app/Contents/MacOS\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin/emptyExampleDebug.app/Contents/MacOS\r\n\r\nthis is because the code that fixes OSX paths isn't called until you call ofToDataPath(). a good fix I think would be to set ofDataPathRoot (which happens in ofToDataPath) somewhere early in ofRunApp(). Or should it happen even earlier?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1109","comments":3,"milestone":null,"number":1109,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1109","assignee":null,"title":"mac paths don't seem right until you call \"ofToDataPath()\"","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2012-03-25T18:18:28Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":3799653,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-04-09T13:06:18Z","body":"easycam behaves as expected when inited but as soon as I change it's target it begins to behave strangely.\r\nthere's this imaginary sphere that we are rotating (it's diameter is min (viewport.width, vieport.height)), when the mouse is dragged from inside to outside of it the rotation just jumps to a \"random\" rotation. \r\nas well when you have a the camera rotated more than 180º in some axis the \"trackball\" doesn't behave as expected. yet this behavior is not seen when the target hasn't been changed.\r\n\r\nDoes any one know what's going on?\r\n\r\nI just came across this but I haven't gone deeply into how easycam handles the mouse to rotate. \r\nI'll do so ASAP. If someone can give me any clues I'll really apreciate it.\r\n\r\nregards!","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1108","comments":7,"milestone":null,"number":1108,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1108","assignee":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"title":"easyCam weird behavior when target changed","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-25T00:01:54Z","state":"open","user":{"url":"https://api.github.com/users/roymacdonald","gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","login":"roymacdonald","avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":974878},"id":3795495,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-04-09T16:47:18Z","body":"It would be great if the PG could also generate projects/examples for usage with Eclipse, i.e. just the makefile related files, no CB or other project files.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1103","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1103,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1103","assignee":null,"title":"PG feature request: Generate makefile-only projects","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-03-21T21:43:34Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":3754055,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-19T16:18:43Z","body":"whenever i call ofLog beneath openmp i have to wrap it in ```#pragma omp critical (ofLog)``` otherwise i get a crash\r\ni found adding the line above \r\nhttps://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/utils/ofLog.cpp#L84\r\nworks pretty well\r\n\r\nany objections to having it in there?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1098","comments":3,"milestone":null,"number":1098,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1098","assignee":null,"title":"feature / bug - #pragma omp critical(ofLog)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-19T14:04:51Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":3710293,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-15T20:34:17Z","body":"I'm finding that `ofDirector::listDir, open` are extremely slow\r\nit seems that it's actually loading the entire dir contents into memory\r\n\r\nit's possible to then do something like\r\n```\r\nofLoadImage(myPixels, dir.getFile(i));\r\n```\r\nand you can quickly load that image from memory. which is faster than\r\n```\r\nofLoadImage(myPixels, dir.getFile(i).getAbsolutePath());\r\n```\r\n\r\nBut this doesn't seem to work consistently (even though the slow listing is consistent)\r\nand surely isn't what we want.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1075","comments":2,"milestone":null,"number":1075,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1075","assignee":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"title":"bug ofDirectory::open(string path) actually loads the entire dir into memory?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-15T07:54:55Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":3662214,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-14T16:03:06Z","body":"Hello,\r\nI needed alpha channel in short length video for a recent project.\r\nIn the forum there is some old zip file for a ofxAlphaVideoPlayer that is still working, but that's OS X & windows only as it's based on QT.\r\nI'm working on linux, and I didn't find anything for GStreamer, so I modified the existing ofGstUtils and ofGstVideoPlayer.\r\nWould you mind if I do a pull request for this?\r\nI can also provide an example with a short length video using animation codec.\r\nWhat do you think?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1070","comments":6,"milestone":null,"number":1070,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1070","assignee":null,"title":"Alpha movies in GStreamer","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-14T13:02:41Z","state":"open","user":{"url":"https://api.github.com/users/manuelgeoffray","gravatar_id":"c1ec5161b69b4a990436deafb1170d64","login":"manuelgeoffray","avatar_url":"https://secure.gravatar.com/avatar/c1ec5161b69b4a990436deafb1170d64?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":808090},"id":3647640,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-17T19:26:40Z","body":"Hey !\r\n\r\nMe again. Didn't find anywhere this infos. I'm currently testing the travis-ci.org service.\r\nAs many people are working on the project and as many many issue are raised, and fixed, I thought it could be great to add some test and thus the travis service.\r\n\r\nIt would avoid the problem met here :\r\nhttps://github.com/openframeworks/openFrameworks/commit/7ca7833ea1afb6bd5a6c54031e3fa688aa0c0ba8\r\nand the discussion here :\r\nhttps://github.com/openframeworks/openFrameworks/issues/804\r\nor there :\r\nhttps://github.com/openframeworks/openFrameworks/pull/921\r\n\r\nI read that :\r\n\r\n>feel free to make a unitTests folder at the root level of OF -\r\n> that is where all unitTests will go.\r\n\r\nBut didn't find them.\r\n\r\nThe travis service will permit to get the little badge we know well : \r\n[![Build Status](https://secure.travis-ci.org/soixantecircuits/openFrameworks.png?branch=master)](http://travis-ci.org/soixantecircuits/openFrameworks)\r\n\r\nAlso, why not adding some spec test, to ensure future development of features.\r\nI'm currently reading :\r\nhttp://www.squidoo.com/cplusplus-behaviour-driven-development-tools#module124841511\r\nhttp://sourceforge.net/apps/mediawiki/turtle/index.php?title=Turtle\r\n\r\nFor those who want some other nice reading :\r\n\r\nhttp://gamesfromwithin.com/exploring-the-c-unit-testing-framework-jungle\r\n\r\nThe travis test is here, currently it is a total fake, but I just proposed the idea of a test driven development\r\nhttp://travis-ci.org/#!/soixantecircuits/openFrameworks/builds/854259 ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1068","comments":10,"milestone":null,"number":1068,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1068","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"Continuous integration","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-13T15:49:23Z","state":"open","user":{"url":"https://api.github.com/users/gabrielstuff","gravatar_id":"390ea42c23c2c383f973abdafa24bb07","login":"gabrielstuff","avatar_url":"https://secure.gravatar.com/avatar/390ea42c23c2c383f973abdafa24bb07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":285033},"id":3631618,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-13T15:21:30Z","body":"Hi !\r\n\r\nRecently, I've been in lot of languages, from C++ to ruby, passing by the colosus of javascript and the sea of php. Dropping by various and strange framework such as the Cinder, the jQuery, the Rails, the Processing, etc ...\r\n\r\n## the situation \r\n\r\nWhat I have noticed is that a strong architecture and a really ease use of add-ons makes a framework get stronger. For instance, if we take a look at Ruby, we see that the use of gems give him a powerfull advance over his friend php. \r\n\r\n### the Rubyist\r\n\r\nThis way of thinking is getting even better with the http://gembundler.com/ [Bundler](http://gembundler.com/) friend. The gems have dependencies and a simple GemFile help to easily install all dependencies for one project.\r\n\r\n### the Cinderist\r\n\r\nFor Cinder, we get the block, as for OSX, it quiet easy and fast. Drag and drop and play/code.\r\n\r\n### the jQueryist\r\n\r\nWell, it is not frequent to have jQuery plugins depending on other jQuery plugins, but there are several way to handle dependencies on jQuery and JS.\r\n\r\n### the nodist\r\n\r\nThis lead us to http://npmjs.org/, which is really nice with dependencies.\r\nFor instance, if you tried cloud9ide, you know that you just have to make sure you get the proper package.json :\r\n\r\n```\r\n{\r\n \"name\": \"node-example\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": {\r\n \"express\": \"2.2.0\"\r\n }\r\n}\r\n```\r\n\r\nThis file ensure that everything before running the server will be installed via npm.\r\n\r\n### the ofist\r\n\r\nRight now, we just have the addons.make file, which is nice but does not do any lifting for us. We have to verify that the ofx addons has been downloaded and is installed in the right folder.\r\n\r\n- Why not creating a script that will allow to manage dependencies compilation ? \r\nI have this wonderful ofxJSONsettings, but he depends on [JSONCPP](http://jsoncpp.sourceforge.net/) and on boost, so here we will have :\r\n\r\npackage.json file in the ofxJSONsettings folder :\r\n\r\n```\r\n{\r\n \"name\": \"ofxJSONsettings\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": [{\r\n \"jsoncpp\": \"0.6.0-rc2\"\r\n \"url\":\"http://jsoncpp.svn.sourceforge.net/svnroot/jsoncpp/trunk/\"\r\n \"protocol\":\"svn\"\r\n }\r\n ]\r\n}\r\n```\r\n\r\nHum, then, we have our little bash script :\r\n\r\n`xadd -addon ofxJSONsettings`\r\n\r\nand for a project, we have to ensure that the make file run `xadd -addon ofxJSONsettings` if it does not find ofXJSONsettings.\r\n\r\nThis could lead to simplify and easify the use of plugin ! Hey, I want the new [mistubaRenderer](https://github.com/satoruhiga/ofxMitsubaRenderer) let's give a try :\r\n\r\n```\r\n{\r\n \"name\": \"ofxMitsubaRenderer\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": [{\r\n \"mitsuba\": \"0.1\"\r\n \"url\":\"https://www.mitsuba-renderer.org/hg/mitsuba-bidir\"\r\n \"protocol\":\"hg\"\r\n }\r\n ]\r\n}\r\n```\r\n\r\nWell, this would be simplify if everybody use some same pattern, and respect some convention.\r\n\r\nSo what do you guys think about that ?\r\n\r\n\r\nThank you !\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1063","comments":7,"milestone":null,"number":1063,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1063","assignee":null,"title":"Automatic installer + dependencies handler","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-13T10:44:57Z","state":"open","user":{"url":"https://api.github.com/users/gabrielstuff","gravatar_id":"390ea42c23c2c383f973abdafa24bb07","login":"gabrielstuff","avatar_url":"https://secure.gravatar.com/avatar/390ea42c23c2c383f973abdafa24bb07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":285033},"id":3627067,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-12T17:58:20Z","body":"right now there is a lot of duplicated code in the vector math classes. for example, normalize() and getNormalized() have separate implementations. if we follow the pattern of always implementing things in self-modifying methods, then providing copy-returning methods as alternatives, this will reduce the amount of code and make it harder to cause bugs or behavioral discrepancies.\r\n\r\n- implementations of an algorithm should always be self-modifying\r\n- copy-returning versions should be implemented using a differently named method, internally making a copy and calling the self-modifying version on the copy.\r\n\r\ne.g. something like (note, this isn't how it's implemented right now):\r\n\r\n\tinline ofVec2f& ofVec2f::normalize() {\r\n\t\tfloat length = (float)sqrt(x*x + y*y);\r\n\t\tif( length > 0 ) {\r\n\t\t\tx /= length;\r\n\t\t\ty /= length;\r\n\t\t}\r\n\t\treturn *this;\r\n\t}\r\n\r\n\tinline ofVec2f ofVec2f::getNormalized() const {\r\n\t\tofVec2f result = *this;\r\n\t\treturn result.normalize();\r\n\t}\r\n\r\ntaken from this post https://github.com/openframeworks/openFrameworks/pull/1061#issuecomment-4455601","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1062","comments":4,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1062,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1062","assignee":null,"title":"regularize code for math addons","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-12T16:33:06Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":3614231,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-13T13:07:11Z","body":"Just saw this is the documentation.\r\nVertexes is incorrect (wrong plural)\r\nVertices","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1055","comments":18,"milestone":null,"number":1055,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1055","assignee":null,"title":"ofVertexes?? ofCurveVertexes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-03-12T01:50:19Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":3605277,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=4 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4940'), ('content-length', '44623'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('Link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"7a7b635a35e21a9f69de7a09b9040837"'), ('date', 'Tue, 29 May 2012 19:27:12 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-03-10T17:52:58Z","body":"if you have:\r\n\r\n uniform float dog;\r\n float cat;\r\n\r\nand:\r\n\r\n shader.setUniform1f(\"dog\", ofGetElapsedTimef());\r\n shader.setUniform1f(\"cat\", ofGetElapsedTimef());\r\n\r\nthere is no currently no error printed to the console, and \"cat\" is mysteriously unchanging while \"dog\" is fine.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1052","comments":0,"milestone":null,"number":1052,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1052","assignee":null,"title":"ofShader should show an error when using an invalid name","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-03-10T17:52:58Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3596240,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-14T15:11:08Z","body":"ofxiPhoneScreenGrab saves with compression artifacts.\r\nfix for saving a lossless image in the below post,\r\nhttp://forum.openframeworks.cc/index.php/topic,4737.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1051","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1051,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1051","assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"title":"ofxiPhoneScreenGrab saves with compression artifacts.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-03-10T12:15:33Z","state":"open","user":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"id":3594731,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-14T15:09:09Z","body":"just wanted to kick off a discussion about cleaning up ofxiPhone folder structure.\r\nhave this up on the forum, http://forum.openframeworks.cc/index.php/topic,8955.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1050","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1050,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1050","assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"title":"clean up ofxiPhone folder structure.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-10T06:32:12Z","state":"open","user":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"id":3593619,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-29T14:55:24Z","body":"This an implementation of ofxiPhoneScreenGrab for Android","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1048","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1048,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1048","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"Adding Android screenshot feature, example to demonstrate it","labels":[],"closed_at":null,"created_at":"2012-03-10T05:31:45Z","state":"open","user":{"url":"https://api.github.com/users/bostonbusmap","avatar_url":"https://secure.gravatar.com/avatar/433032cca043cedb67180dc5109062da?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"433032cca043cedb67180dc5109062da","login":"bostonbusmap","id":863262},"id":3593430,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1048","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1048.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1048.diff"}},{"updated_at":"2012-03-12T15:31:12Z","body":"whenever I try to open a file using system dialog from OF utils or ofxFileDIalogOSX, the video is loaded correctly but it get stuck and doesn't play at all. see:\r\nhttp://forum.openframeworks.cc/index.php/topic,5233.0.html\r\nhttp://forum.openframeworks.cc/index.php/topic,6515.0.html\r\n\r\nquite a big issue IMHO","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1047","comments":8,"milestone":null,"number":1047,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1047","assignee":null,"title":"opening video files with system dialog in osx prevents them to play correctly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-09T18:54:28Z","state":"open","user":{"url":"https://api.github.com/users/hvfrancesco","avatar_url":"https://secure.gravatar.com/avatar/e02a8a3953de9d5d9ec1c7aa8d43eca4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e02a8a3953de9d5d9ec1c7aa8d43eca4","login":"hvfrancesco","id":614123},"id":3587808,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-20T16:11:54Z","body":"just a small one but would be great. \r\nmaybe even different icon for debug and release? ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1039","comments":12,"milestone":null,"number":1039,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1039","assignee":null,"title":"make icons for OF apps","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-06T17:56:58Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":3528378,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-06T15:32:44Z","body":"right now it is not clear from a visual perspective what is a button / trigger and what is a toggle. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1037","comments":1,"milestone":null,"number":1037,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1037","assignee":null,"title":"ofxGui, ofxButton should look visually different to toggle","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-05T18:06:03Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":3510933,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-10T19:29:53Z","body":"xml is one of the reasons this is currently an addon. \r\nthe original idea was to have something simple and minimal that could be in the core. \r\nalso something which could be built off of for larger gui addons ( hence ofParameter ) \r\n\r\nI see a couple of options going forward.\r\n\r\n1) swtich from xml to newline separated text files and move ofGui into core\r\nthis would be quite simple as ofParameter already has a name, value structure \r\n\r\n2) same as 1) but keep ofxGui as an addon - making it a bit simpler to add to a project \r\n2b) add ofParameter to core as it is more general purpose\r\n\r\n3) bring ofxXmlSettings into the core and bring ofGui into core.\r\n\r\n\r\nanyway I thought it would be good to get some discussion going about this.\r\nI'm especially interested in setting up ofParam and ofBaseGui in a way to make things modular and extendable. \r\n\r\nalso could be interesting to look at a way to represent a collection/group of ofParameters\r\nsome of this might be similar to some of the stuff @memo was doing with his plist style system. \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1036","comments":10,"milestone":null,"number":1036,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1036","assignee":null,"title":"ofxGui -> ofGui - how/should we bring into core?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-05T16:56:26Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":3509628,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-12T12:39:10Z","body":"If it finds .vert, .frag (and .geom?) files in the data/ folder, the project generator should make a new folder, in the project file, next to (or inside) src called data/ and add the files to it. (data/ so that beginners can find the files in Finder)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1034","comments":3,"milestone":null,"number":1034,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1034","assignee":null,"title":"projectGenerator ignores shader .vert and .frag files","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-03-04T11:19:04Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":3495602,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-06T15:06:00Z","body":"I talked to Arturo about this, but I want to make sure it's known. When you call ofLogSetLogLevel with a module string, that string is added to a map used to check the module's log level ... but right now that string is never removed.\r\n\r\nIf someone creates a large amount module names the map could grow arbitrarily large over time. The thought so far is that no one would make enough module names for it to be a problem.\r\n\r\nFor instance, using the [proposed ofThread rewrite](https://github.com/openframeworks/openFrameworks/pull/1031), each thread creates a new module name when it sets itself to verbose and, in the case of spawning lots of verbose worker threads, the map will grow.\r\n\r\nMy proposed solution would be to remove the module name from the map when the level for that module is set back to OF_LOG_NOTICE and/or to the current log level.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1033","comments":11,"milestone":null,"number":1033,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1033","assignee":null,"title":"ofSetLogLevel(module, level) adds to map but dosen't remove","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-04T10:54:12Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3495503,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-14T15:11:08Z","body":"this change c50648e29199a3f61eae05f6ceb350a97ab275d7 caused the problem. i'm not sure why adding explicit cases for handling loadData for ofShortPixels and ofFloatPixels would do this. to see the proof, run devApps/AdvancedImageLoading","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1029","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1029,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1029","assignee":null,"title":"display of short + float textures are broken","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-03-03T19:04:59Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3491627,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-10T06:54:25Z","body":"I've just encountered a real 'wall meets head' bug, aka 'why is my camera image black??'\r\n\r\nwell it turns out that actually, ofSaveImage doesn't save mono images\r\nit just saves out black pixels\r\n\r\ntesting on Windows, VS2010.\r\nAnybody else getting this?\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1028","comments":5,"milestone":null,"number":1028,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1028","assignee":null,"title":"ofSaveImage / ofImage::saveImage() problem with OF_IMAGE_GRAYSCALE / OF_PIXELS_MONO","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-03-03T12:23:06Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3489266,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-16T09:25:13Z","body":"The Android example is basically a copy of the existing 3dModelBuilder example with some code changes to work with OpenGL ES","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1024","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1024,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1024","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"Fixing 3DModelBuilder to work with OpenGL ES, added Android example for it","labels":[],"closed_at":null,"created_at":"2012-03-02T16:55:29Z","state":"open","user":{"url":"https://api.github.com/users/bostonbusmap","avatar_url":"https://secure.gravatar.com/avatar/433032cca043cedb67180dc5109062da?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"433032cca043cedb67180dc5109062da","login":"bostonbusmap","id":863262},"id":3479768,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1024","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1024.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1024.diff"}},{"updated_at":"2012-03-30T16:34:06Z","body":"Continuation of http://forum.openframeworks.cc/index.php/topic,9095.msg42378.html#new\r\n\r\nNOTE: Things may have changed as the projects I'm using are all created using the older creation tools.\r\nCan somebody up to date please check?\r\n\r\nCurrently XCode's default project setting is /O2 for debug projects\r\nwhilst Visual Studio's is /O0\r\n\r\n/O0 generally makes the most sense for debug mode as it allows for effective program flow and variable tracking (because with /O2, lines of code and variables are commonly optimised away).\r\n\r\nIf we are worried that this will leave default users in a default 'slower state' then perhaps we could make release the default? Then people could be aware that they are selecting debug when they want to actually do some debugging?\r\nBut this may have other issues (such as some libraries might not perform as many checks as otherwise?)\r\n\r\nit might be worth making users more aware of the 2 options anyway, and then start using them consistently","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1022","comments":12,"milestone":null,"number":1022,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1022","assignee":null,"title":"Optimisation consistency","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-02T13:25:15Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3476540,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-01T19:42:09Z","body":"currently if MSAA is enabled, COLOR_ATTACHMENT[ 0 -> nSamples]_EXT are bound for MS blitting, which could overwrite your texture color attachments without notifying you [ i.e. setSamples(4); setNumTextures(4) ]. There may be some solution where numSamples*numTextures = maxAttachments, allowing for multisampled internal textures, but at the very least we should warn/notify that samples and textures won't play so nicely together, or try to allocate samples/textures in the remaining attachments and notify on overflow.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1019","comments":0,"milestone":null,"number":1019,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1019","assignee":null,"title":"ofFbo needs consideration as far as MRT + MSAA","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-01T19:42:09Z","state":"open","user":{"url":"https://api.github.com/users/kpasko","avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","login":"kpasko","id":167271},"id":3462226,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-01T04:33:36Z","body":"there's a block in ofConstants which reads like:\r\n\r\n```c++\r\n#ifndef PI\r\n\t#define PI 3.14159265358979323846\r\n#endif\r\n\r\n#ifndef TWO_PI\r\n\t#define TWO_PI 6.28318530717958647693\r\n#endif\r\n\r\n#ifndef M_TWO_PI\r\n\t#define M_TWO_PI 6.28318530717958647693\r\n#endif\r\n\r\n#ifndef FOUR_PI\r\n\t#define FOUR_PI 12.56637061435917295385\r\n#endif\r\n\r\n#ifndef HALF_PI\r\n\t#define HALF_PI 1.57079632679489661923\r\n#endif\r\n\r\n#ifndef DEG_TO_RAD\r\n\t#define DEG_TO_RAD (PI/180.0)\r\n#endif\r\n\r\n#ifndef RAD_TO_DEG\r\n\t#define RAD_TO_DEG (180.0/PI)\r\n#endif\r\n\r\n#ifndef MIN\r\n\t#define MIN(x,y) (((x) < (y)) ? (x) : (y))\r\n#endif\r\n\r\n#ifndef MAX\r\n\t#define MAX(x,y) (((x) > (y)) ? (x) : (y))\r\n#endif\r\n\r\n#ifndef CLAMP\r\n\t#define CLAMP(val,min,max) (MAX(MIN(val,max),min))\r\n#endif\r\n\r\n#ifndef ABS\r\n\t#define ABS(x) (((x) < 0) ? -(x) : (x))\r\n#endif\r\n```\r\n\r\nthe problem is i've got this in another header file:\r\n\r\n```c++\r\n// macro-like inline functions\r\n\r\ntemplate\r\ninline T SQR(const T a) {return a*a;}\r\n\r\ntemplate\r\ninline const T &MAX(const T &a, const T &b)\r\n {return b > a ? (b) : (a);}\r\n\r\ninline float MAX(const double &a, const float &b)\r\n {return b > a ? (b) : float(a);}\r\n\r\ninline float MAX(const float &a, const double &b)\r\n {return b > a ? float(b) : (a);}\r\n\r\ntemplate\r\ninline const T &MIN(const T &a, const T &b)\r\n {return b < a ? (b) : (a);}\r\n\r\ninline float MIN(const double &a, const float &b)\r\n {return b < a ? (b) : float(a);}\r\n\r\ninline float MIN(const float &a, const double &b)\r\n {return b < a ? float(b) : (a);}\r\n\r\ntemplate\r\ninline T SIGN(const T &a, const T &b)\r\n\t{return b >= 0 ? (a >= 0 ? a : -a) : (a >= 0 ? -a : a);}\r\n\r\ninline float SIGN(const float &a, const double &b)\r\n\t{return b >= 0 ? (a >= 0 ? a : -a) : (a >= 0 ? -a : a);}\r\n\r\ninline float SIGN(const double &a, const float &b)\r\n\t{return (float)(b >= 0 ? (a >= 0 ? a : -a) : (a >= 0 ? -a : a));}\r\n```\r\n\r\nAnd ofConstants is included in almost every oF file\r\n\r\ni'd suggest moving to inline functions and presume that compiler optimisations makes these 2 options equivalent in terms of performance, but that inline wins out for compatability","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1007","comments":10,"milestone":null,"number":1007,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1007","assignee":null,"title":"bug #defines in ofConstants conflict with other libraries","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-29T15:31:18Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3438233,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-01T13:02:37Z","body":"Propose the following functions:\r\n\r\n```c++\r\nofVec2f ofRandom(const ofVec2f&);\r\nofVec3f ofRandom(const ofVec3f&);\r\nofVec2f ofRandom(const ofVec2f& range1, const ofVec2f& range2);\r\nofVec3f ofRandom(const ofVec3f& range1, const ofVec3f& range2);\r\n```\r\n\r\nalso lots of other candidates for this, e.g. `ofClamp`, `ofMap`, etc\r\nsome clever templating possible?\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1005","comments":12,"milestone":null,"number":1005,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1005","assignee":null,"title":"feature ofRandom(ofVec3f) ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-29T06:32:03Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3432042,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-18T08:47:08Z","body":"I have a simple app that plays video files. I try to route (under windows) its output using Jack and Vitual Audio Cable but none can access it. I am just using the basic functionality of ofVideoPlayer, this is the class that deals with the video playing\r\n\r\n\r\n\t#include \"oscVPlayer.h\"\r\n\t#include \"ofMain.h\"\r\n\r\n\r\n\r\n\toscVPlayer::oscVPlayer()\r\n\t{\r\n\t\t\treset();\r\n\t}\r\n\r\n\tvoid oscVPlayer::reset()\r\n\t{ //defaults to fullscreen\r\n\t\t\tw = NULL;\r\n\t\t\th = NULL;\r\n\t\t\tx = 0;\r\n\t\t\ty = 0;\r\n\t\t\tdonereported = false;\r\n\t\t\tloopflag = OF_LOOP_NONE;\r\n\t\t\t\r\n\t\t\tcol.r = 0;\r\n\t\t\tcol.g = 0;\r\n\t\t\tcol.b = 0;\r\n\t\t\tcol.a = 255;\r\n\r\n\t\t\tif (isLoaded())\r\n\t\t{\r\n\t\t\t\t\tsetFrame(0);\r\n\t\t\t\t\tsetUseTexture(1);\r\n\t\t\t\t\tsetPaused(0);\r\n\t\t\t\t\tsetLoopState(OF_LOOP_NORMAL);\r\n\t\t\t\t\tsetSpeed(1);\r\n\t\t\t\t\tsetVolume(255);\r\n\t\t\t\t\tstop();\r\n\t\t}\r\n\t}\r\n\r\n\r\n\tvoid oscVPlayer::setUpVideo(string movie)\r\n\t{\r\n\t\t\tif (movie != \"none\")\r\n\t\t\t{\r\n\t\t\t\t\tif ( loadMovie(movie) )\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\t\tprintf(\"movie loaded\\n\");\r\n\t\t\t\t\t\t\tofVideoPlayer::update();\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\t\tprintf(\"CANNOT load movie\\n\");\r\n\t\t\t\t\t}\r\n\t\t\t}\r\n\t\t\telse\r\n\t\t\t{\r\n\t\t\t\t\tprintf(\"movie parameter is none, cannot load it\\n\");\r\n\t\t\t}\r\n\t}\r\n\r\n\r\n\r\n\r\n\tvoid oscVPlayer::setLoop()\r\n\t{\r\n\t\t\tsetLoopState(loopflag); // go back to your state. otherwise play resets it to loop ON\r\n\t}\r\n\r\n\r\n\r\n\r\n\tvoid oscVPlayer::resetSize()\r\n\t{\r\n\t\t\tw = NULL;\r\n\t\t\th = NULL;\r\n\t}\r\n\r\n\r\n\tvoid oscVPlayer::draw()\r\n\t{\r\n\t\tif (isLoaded())\r\n\t\t{\r\n\t\t\t if (col.a < 255) ofEnableAlphaBlending();\r\n\t\t\t\tofSetColor(col.r,col.g,col.b, col.a);\r\n\t\t\t\tofVideoPlayer::update();\r\n\t\t\t\tif (w==NULL && h==NULL)\r\n\t\t\t\t{\r\n\t\t\t\t\t\tofVideoPlayer::draw(x, y);\r\n\t\t\t\t}\r\n\t\t\t\telse\r\n\t\t\t\t{\r\n\t\t\t\t\t\t\tofVideoPlayer::draw(x, y, w, h);\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (col.a < 255) ofDisableAlphaBlending(); \r\n\t\t}\r\n\t}\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1001","comments":2,"milestone":null,"number":1001,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1001","assignee":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"title":"OF app sound out not available from Jack","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-02-27T14:59:34Z","state":"open","user":{"url":"https://api.github.com/users/enrike","avatar_url":"https://secure.gravatar.com/avatar/cc2adbc6d91bf2288f34f60a547a82cd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"cc2adbc6d91bf2288f34f60a547a82cd","login":"enrike","id":710785},"id":3401755,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-29T14:42:36Z","body":"// scissor\r\nvoid ofBeginScissor(ofRectangle &r);\r\nvoid ofBeginScissor(ofPoint &p, float w, float h);\r\nvoid ofBeginScissor(float x, float y, float w, float h);\r\nvoid ofEndScissor();\r\n\r\n\r\nthere is a problem with ofFBO due to the flip. I do not think that there is a way around it sooo just scale -1\r\n\r\nalso: \r\nextra ; removed \r\nlibs/openFrameworks/utils/ofUtils.cpp","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/993","comments":11,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":993,"html_url":"https://github.com/openframeworks/openFrameworks/issues/993","assignee":null,"title":"Of scissors","labels":[],"closed_at":null,"created_at":"2012-02-26T21:35:55Z","state":"open","user":{"url":"https://api.github.com/users/vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","id":149997},"id":3393466,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/993","patch_url":"https://github.com/openframeworks/openFrameworks/pull/993.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/993.diff"}},{"updated_at":"2012-02-25T20:25:00Z","body":"i think this is because ofDrawBitmapString draws the quads in the wrong orientation. but i'm guessing it works in FBOs... so if we switch the order it will stop working in FBOs.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/987","comments":0,"milestone":null,"number":987,"html_url":"https://github.com/openframeworks/openFrameworks/issues/987","assignee":null,"title":"GL_CULL_FACE breaks ofDrawBitmapString()","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-02-25T20:25:00Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3387163,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-22T23:34:17Z","body":"Some logging messages don't really tell where they were triggered. Someone needs to go through them and add information as to what module triggered the message. \r\n@danomatika has already volunteered to do this some time.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/985","comments":16,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":985,"html_url":"https://github.com/openframeworks/openFrameworks/issues/985","assignee":null,"title":"Make logging messages more informative","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-02-25T19:41:58Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3386914,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-11T18:31:55Z","body":"There's a lot of logging printfs in the core addons. These should be replaced by appropriate ofLog calls.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/984","comments":5,"milestone":null,"number":984,"html_url":"https://github.com/openframeworks/openFrameworks/issues/984","assignee":null,"title":"Replace printf() occurences by ofLog() in the core addons","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-02-25T19:36:51Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3386889,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-02-27T13:35:34Z","body":"`ofVec2f` has a function called `average` which takes an array of `ofVec2f` and calculates the centroid. it is not static, rather it overwrites its own `x` and `y` with the average. \r\n\r\nthis is a little weird. `average` should be static, or at least be *returning* the average rather than assigning to self.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/976","comments":4,"milestone":null,"number":976,"html_url":"https://github.com/openframeworks/openFrameworks/issues/976","assignee":null,"title":"ofVec2f::average has unexpected/clumsy behaviour","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-25T03:45:02Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":3382990,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-02-25T02:47:26Z","body":"Dummy issue to ensure that the 0076 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/972","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/10","number":10,"title":"0076 Release","due_on":"2012-10-29T07:00:00Z","closed_issues":0,"open_issues":1,"created_at":"2012-02-25T02:46:26Z","state":"open","description":"","id":88838},"number":972,"html_url":"https://github.com/openframeworks/openFrameworks/issues/972","assignee":null,"title":"0076 Release tracking issue","labels":[],"closed_at":null,"created_at":"2012-02-25T02:47:26Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3382766,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-02-25T02:47:37Z","body":"Dummy issue to ensure that the 0075 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/971","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/9","number":9,"title":"0075 Release","due_on":"2012-09-24T07:00:00Z","closed_issues":0,"open_issues":1,"created_at":"2012-02-25T02:46:15Z","state":"open","description":"","id":88837},"number":971,"html_url":"https://github.com/openframeworks/openFrameworks/issues/971","assignee":null,"title":"0075 Release tracking issue","labels":[],"closed_at":null,"created_at":"2012-02-25T02:47:05Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3382764,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=5 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4939'), ('content-length', '39838'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('Link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"a7bfe812cbaa85fbb708d70f4d883fac"'), ('date', 'Tue, 29 May 2012 19:27:13 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-02-25T01:36:58Z","body":"Dummy issue to ensure that the 0080 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/970","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","number":8,"closed_issues":0,"title":"0080 Release","due_on":"2013-01-01T08:00:00Z","open_issues":3,"created_at":"2012-02-25T01:34:28Z","state":"open","description":"","id":88731},"number":970,"html_url":"https://github.com/openframeworks/openFrameworks/issues/970","assignee":null,"title":"0080 Release tracking issue","labels":[],"closed_at":null,"created_at":"2012-02-25T01:36:54Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3381982,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T01:36:37Z","body":"Dummy issue to ensure that the 0074 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/969","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/7","number":7,"closed_issues":0,"title":"0074 Release","due_on":"2012-08-27T07:00:00Z","open_issues":1,"created_at":"2012-02-25T00:41:17Z","state":"open","description":"","id":88728},"number":969,"html_url":"https://github.com/openframeworks/openFrameworks/issues/969","assignee":null,"title":"0074 Release tracking issue","labels":[],"closed_at":null,"created_at":"2012-02-25T01:36:37Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3381977,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-24T04:31:01Z","body":"right now if you try and scale/rotate/etc before calling ofBackgroundGradient, it will fail.\r\n\r\npeople generally call ofBackground at the top of draw() so it shouldn't be a huge issue... but it does make it a little 'fragile'.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/955","comments":0,"milestone":null,"number":955,"html_url":"https://github.com/openframeworks/openFrameworks/issues/955","assignee":null,"title":"ofBackgroundGradient needs to be billboarded","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-02-24T04:31:01Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3367910,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-23T19:12:08Z","body":"Hello, I get a weird error trying to compile the movieplayerexample under linux64 :\r\n\r\n> `.text._ZN11ofBaseVideoD2Ev' referenced in section `.text._ZN11ofBaseVideoD1Ev[non-virtual thunk to ofBaseVideo::~ofBaseVideo()]' of ../../../libs/openFrameworksCompiled/lib/linux64/libopenFrameworks.a(ofBaseTypes.o): defined in discarded section `.text._ZN11ofBaseVideoD2Ev[_ZN11ofBaseVideoD5Ev]' of ../../../libs/openFrameworksCompiled/lib/linux64/libopenFrameworks.a(ofBaseTypes.o)\r\n\r\nMy version of OF is 007, it used to work under 0062...\r\n\r\nWhat should I do ?\r\n\r\nThanks","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/933","comments":4,"milestone":null,"number":933,"html_url":"https://github.com/openframeworks/openFrameworks/issues/933","assignee":null,"title":"Problem with moviePlayerExample under linux64","labels":[],"closed_at":null,"created_at":"2012-02-23T15:46:06Z","state":"open","user":{"url":"https://api.github.com/users/agrosjea","avatar_url":"https://secure.gravatar.com/avatar/e52c167621119d58d03c586bb053a633?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e52c167621119d58d03c586bb053a633","login":"agrosjea","id":1466085},"id":3357855,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-23T05:13:24Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/931","comments":0,"milestone":null,"number":931,"html_url":"https://github.com/openframeworks/openFrameworks/issues/931","assignee":null,"title":"ofCamera is not aware of ofOrientation","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-02-23T05:13:24Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":3351646,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-23T05:12:47Z","body":"do we need the ofOrientation parameter in ofSetupPerspective?\r\n\r\nit applies the rotation but if ofSetOrientation hasn't been called before passing the same orientation the results are not the expected.\r\n\r\nto test it:\r\n\r\nofSetOrientation(OF_ORIENTATION_90_LEFT);\r\nofSetPerspective(ofGetWidth(), ofGetHeight(),OF_ORIENTATION_90_LEFT)\r\n\r\nworks as expected but calling only \r\n\r\nofSetPerspective(ofGetWidth(), ofGetHeight(),OF_ORIENTATION_90_LEFT)\r\n\r\napplies a weird rotation cause the values of ofGetWidth(), ofGetHeight() are still the default ones\r\n\r\nis there any case where it's useful to call setupPerspective with a different orientation that the window has?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/930","comments":0,"milestone":null,"number":930,"html_url":"https://github.com/openframeworks/openFrameworks/issues/930","assignee":null,"title":"ofSetupPerspective ofOrientation","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-23T05:12:47Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":3351643,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-23T04:19:48Z","body":"Currently ofGetLogLevel returns the global log level aka for the \"OF\" module. It would be nice to be able to get the log level for user modules via:\r\n\r\n ofLogLevel level = ofGetLogLevel(\"myLogModule\");\r\n\r\nIt would as simple as adding the module as a string variable with a default of \"OF\".\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/929","comments":0,"milestone":null,"number":929,"html_url":"https://github.com/openframeworks/openFrameworks/issues/929","assignee":null,"title":"ofGetLogLevel should also accept modules","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-02-23T04:19:48Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3351374,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-23T03:46:32Z","body":"Currently there is a ofBgColorPtr(), but maybe it's nice to have a ofGetBackground() that returns an ofColor object or a reference to one.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/928","comments":0,"milestone":null,"number":928,"html_url":"https://github.com/openframeworks/openFrameworks/issues/928","assignee":null,"title":"no ofGetBackground()","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-23T03:46:32Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3351170,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-22T19:12:56Z","body":"ofGetViewportWidth/Height returns 0 is called in an object destructor, while ofGetWidth/Height do not. Could the ofGetViewport size be set to the ofGetWidth/Height size instead of 0 be default?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/926","comments":0,"milestone":null,"number":926,"html_url":"https://github.com/openframeworks/openFrameworks/issues/926","assignee":null,"title":"ofGetViewportWidth/Height returns 0 at startup","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-22T19:12:56Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3341020,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-22T00:28:08Z","body":"I noticed a few things when working with ofImage:\r\n\r\n* ofImage has a type variable for the image type but this is an int, as opposed to the ofImageType enum, so it's annoying to force convert ...\r\n* the width, height, & bpp variables are public, they should be protected with getters/setters\r\n* there isn't a getBytesPerPixel, you have to get the pixel reference then call getBytesPerPixel ...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/925","comments":0,"milestone":null,"number":925,"html_url":"https://github.com/openframeworks/openFrameworks/issues/925","assignee":null,"title":"ofImage has type as int, public vars, & missing getBPP, etc","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-22T00:28:08Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3324501,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-29T14:41:17Z","body":"As requested in https://github.com/openframeworks/openFrameworks/pull/794 I've branched openframeworks:develop into my own branch and applied the fixes required to build openFrameworks for Android with MinGW on the windows platform.\r\n\r\nThe instructions on how to compile are still valid (except for the part of patching):\r\nhttp://www.multigesture.net/articles/how-to-setup-openframeworks-for-android-on-windows/\r\n\r\nNote 1: You will need to run:\r\nandroid.bat update project --target android-8 --path C:\\openFrameworks\\addons\\ofxAndroid\\ofAndroidLib\r\n\r\nThis updates the project files for ofAndroidLib project. I didn't included those because those are user specific (they contain the path to the sdk)\r\n\r\nNote 2: d3ddf8e1 \r\nI only added this commit in order to make the examples build properly. Someone still needs to fix the proper implementation.\r\n\r\nNote 3: 7a9cf0ba\r\nWhile working on NodeBeat, we found out that not all devices are using /mnt/sdcard as their external storage location. In some cases the sdcard is located somewhere else (\"Environment.getExternalStorageDirectory()\" doesnt always return the correct location). This commit fixes this problem by checking several locations as reported on multiple Stackoverflow threads. More info about this issue can be found in the commit description.\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/922","comments":13,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":922,"html_url":"https://github.com/openframeworks/openFrameworks/issues/922","assignee":null,"title":"Windows compatibility patches and External storage location fixes.","labels":[],"closed_at":null,"created_at":"2012-02-19T23:30:24Z","state":"open","user":{"url":"https://api.github.com/users/falcon4ever","avatar_url":"https://secure.gravatar.com/avatar/4a503abeaa3d803e55e99093fbf1505d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"4a503abeaa3d803e55e99093fbf1505d","login":"falcon4ever","id":480019},"id":3288053,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/922.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/922","patch_url":"https://github.com/openframeworks/openFrameworks/pull/922.patch"}},{"updated_at":"2012-02-16T09:39:46Z","body":"What about having our own transform stack , in order to:\r\n-avoid to recompute globalTransformMatrix in each ofNode\r\n-could use it when rendering with OpenGL ES 2.0 shaders , which do not support predefined matrix values as world (modelview), worldProjection , or world inverseTranspose (for normals)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/920","comments":0,"milestone":null,"number":920,"html_url":"https://github.com/openframeworks/openFrameworks/issues/920","assignee":null,"title":"Transform stack","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-16T09:39:46Z","state":"open","user":{"url":"https://api.github.com/users/AugusteBonnin","avatar_url":"https://secure.gravatar.com/avatar/cbf7aa7c655d3652170984c9aa497a4c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"cbf7aa7c655d3652170984c9aa497a4c","login":"AugusteBonnin","id":1442658},"id":3248309,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-16T09:31:24Z","body":"There is an easy-to-correct error in ofNode::transformGL:\r\nIt should call loadMatrix with globalTransformMatrix as parameter (with a void restoreGL), or pushMatrix then multMatrix with localTransformMatrix (with a restoreGL that pops the previously pushed matrix),\r\nNOT push then mult with global. The bug appears as soon as you have got more than one level of depth in your node tree. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/919","comments":0,"milestone":null,"number":919,"html_url":"https://github.com/openframeworks/openFrameworks/issues/919","assignee":null,"title":"Error in ofNode::transformGL","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-02-16T09:31:24Z","state":"open","user":{"url":"https://api.github.com/users/AugusteBonnin","avatar_url":"https://secure.gravatar.com/avatar/cbf7aa7c655d3652170984c9aa497a4c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"cbf7aa7c655d3652170984c9aa497a4c","login":"AugusteBonnin","id":1442658},"id":3248230,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-08T10:15:31Z","body":"vs2010 does not include stdint.h support:\r\n\r\nhttp://stackoverflow.com/questions/126279/c99-stdint-h-header-and-ms-visual-studio\r\n\r\nwhich causes addon bugs like this:\r\n\r\nhttps://github.com/openframeworks/openFrameworks/issues/559\r\nhttps://github.com/kylemcdonald/ofxCv/issues/28\r\n\r\neven though these bugs aren't in the core, i think OF is designed to make it easy for people to write cross-platform, cross-compiler code. so i propose that we add an explicit declaration of the missing types for vs2010.\r\n\r\nthis isn't really something i'm worried about directly since i don't use vs2010, but i know people like elliot do. and it would be cleaner to add it once to the core than to add it once for every addon that is broken.\r\n\r\nthe solution would probably look like: take dan's code from the above issue, and move it from ofxOsc into the core.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/917","comments":5,"milestone":null,"number":917,"html_url":"https://github.com/openframeworks/openFrameworks/issues/917","assignee":null,"title":"add global stdint.h support?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"}],"closed_at":null,"created_at":"2012-02-15T02:38:17Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3229504,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-12T14:55:20Z","body":"to match ofGetWidth(), ofGetHeight()\r\n\r\ni.e. for ofGetMouseX() / ofGetWidth()","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/916","comments":1,"milestone":null,"number":916,"html_url":"https://github.com/openframeworks/openFrameworks/issues/916","assignee":null,"title":"ofGetMouseX() and ofGetMouseY() should return float","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-14T05:17:47Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3214174,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-13T08:16:08Z","body":"I had downloaded the 007 version, when I run of_preRelease_v007_linux/scripts/linux/debian/install_codeblocks.sh it install codeblocks without error, but when I run preRelease_v007_linux/scripts/linux/debian/install_dependencies.sh I get this error\r\n\r\ncompiling object for ../../../openFrameworks/graphics/ofGraphics.cpp\r\nmkdir -p obj/Debug/openFrameworks/graphics\r\ng++ -g3 -Wall -fexceptions -I../../../FreeImage/include -I../../../assimp/include -I../../../assimp/include/Compiler -I../../../cairo/include -I../../../cairo/include/cairo -I../../../cairo/include/pixman-1 -I../../../cairo/include/libpng15 -I../../../fmodex/include -I../../../freetype/include -I../../../freetype/include/freetype2 -I../../../freetype/include/freetype2/freetype -I../../../freetype/include/freetype2/freetype/config -I../../../freetype/include/freetype2/freetype/internal -I../../../freetype/include/freetype2/freetype/internal/services -I../../../glew/include -I../../../glew/include/GL -I../../../kiss/include -I../../../portaudio/include -I../../../rtAudio/include -I../../../tess2/include -I../../../poco/include -I../../../glu/include -I../../../openFrameworks/ -I../../../openFrameworks/3d -I../../../openFrameworks/math -I../../../openFrameworks/types -I../../../openFrameworks/graphics -I../../../openFrameworks/utils -I../../../openFrameworks/app -I../../../openFrameworks/video -I../../../openFrameworks/events -I../../../openFrameworks/communication -I../../../openFrameworks/gl -I../../../openFrameworks/sound -pthread -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -DOF_USING_GTK -MMD -MP -MFobj/Debug/openFrameworks/graphics/ofGraphics.d -MTobj/Debug/openFrameworks/graphics/ofGraphics.d -o obj/Debug/openFrameworks/graphics/ofGraphics.o -c ../../../openFrameworks/graphics/ofGraphics.cpp\r\n../../../openFrameworks/graphics/ofGraphics.cpp:37:22: warning: GL/glut.h: No such file or directory\r\n../../../openFrameworks/graphics/ofGraphics.cpp: In function ‘void ofSphere(float)’:\r\n../../../openFrameworks/graphics/ofGraphics.cpp:889: error: ‘glutSolidSphere’ was not declared in this scope\r\n../../../openFrameworks/graphics/ofGraphics.cpp:891: error: ‘glutWireSphere’ was not declared in this scope\r\nmake: *** [obj/Debug/openFrameworks/graphics/ofGraphics.o] Error 1\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/915","comments":2,"milestone":null,"number":915,"html_url":"https://github.com/openframeworks/openFrameworks/issues/915","assignee":null,"title":"problems installing dependencies in debian 6.0.4","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2012-02-13T05:45:01Z","state":"open","user":{"url":"https://api.github.com/users/atomsfat","avatar_url":"https://secure.gravatar.com/avatar/f732e5a8b77f8e4ed8fadc2c71916236?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"f732e5a8b77f8e4ed8fadc2c71916236","login":"atomsfat","id":140008},"id":3196145,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-12T04:41:26Z","body":"We have ofSetDataPathRoot() .... it makes sense to have a Getter as well. Basically I wanted the absolute path to the root data folder.\r\n\r\nI managed to fake this by calling ofToDataPath(\".\",true) but this seems a little counter-intuitive.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/914","comments":0,"milestone":null,"number":914,"html_url":"https://github.com/openframeworks/openFrameworks/issues/914","assignee":null,"title":"Add ofGetDataPathRoot","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-12T04:41:26Z","state":"open","user":{"url":"https://api.github.com/users/pierrep","avatar_url":"https://secure.gravatar.com/avatar/be11c9de8242e7aef0446eceaa289e01?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"be11c9de8242e7aef0446eceaa289e01","login":"pierrep","id":392160},"id":3189189,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-12T14:56:56Z","body":"it would be amazing if ofBeginShape()/ofEndShape() and ofPath supported tex coords (maybe ofTexCoord() and addTexCoord()).\r\n\r\nthis would allow for drawing arbitrary subsections of an image, or for creating an ofMesh that is texture mapped by an image.\r\n\r\nprocessing handles this with extra arguments to vertex() http://processing.org/reference/texture_.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/909","comments":3,"milestone":null,"number":909,"html_url":"https://github.com/openframeworks/openFrameworks/issues/909","assignee":null,"title":"shapes with texCoords","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-02-10T01:42:42Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3166745,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-09T08:16:47Z","body":"a student just showed me how you can use the xcode templates for pocode to create a new project wherever you want on the disk. i know we used to have xcode templates for this, but i just tried them and it seems to be hilariously broken.\r\n\r\ni'm not sure if the new project creator stuff covers this idea or not, but it would be great to have a similar ability with OF somehow.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/902","comments":2,"milestone":null,"number":902,"html_url":"https://github.com/openframeworks/openFrameworks/issues/902","assignee":null,"title":"Xcode templates should be fixed or removed","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-09T04:30:13Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3152323,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-08T21:50:23Z","body":"to draw a filled ofPolyline right now, you need to use beginshape/endshape. but i think a way of adding ofPolylines to an ofPath would be really good -- even a conversion from ofPolyline to ofPath might make sense. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/901","comments":0,"milestone":null,"number":901,"html_url":"https://github.com/openframeworks/openFrameworks/issues/901","assignee":null,"title":"easier filled ofPolyline, or easy ofPolyline->ofPath conversion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-08T21:50:23Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3148441,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-09T14:46:48Z","body":"Hi.\r\n\r\nI've been trying to load stream video ( mpeg2 .ts and hls .m3u8 ) using OF on MacOS 10.7.2.\r\n\r\nBoth cases causes error -2048 in the line below: ( l:89, ofQuickTimePlayer.cpp )\r\n\r\n```c++\r\nerr = NewMovieFromDataRef(&movie, newMovieAsyncOK,nil, urlDataRef, URLDataHandlerSubType);\r\n```\r\n\r\nLoading remote .mp4 works perect. Loading same streams in QuickTime player(v10.1) works without any troubles.\r\n\r\nSo, it seems the trouble happens just when no videofile size info returned from server.\r\n\r\nIs it a bug? Or I've missed smthng?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/897","comments":4,"milestone":null,"number":897,"html_url":"https://github.com/openframeworks/openFrameworks/issues/897","assignee":null,"title":"ofQuickTimePlayer.createMovieFromURL fails on streaming video","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-02-06T11:42:08Z","state":"open","user":{"url":"https://api.github.com/users/4pcbr","avatar_url":"https://secure.gravatar.com/avatar/52e8e29748826594f27b5c6c20a353e0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"52e8e29748826594f27b5c6c20a353e0","login":"4pcbr","id":247109},"id":3106705,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-05T17:11:59Z","body":"This concerns libraries included in addons in source form. According to [this issue](https://github.com/chrisoshea/ofxMidi/issues/8) reported by @danomatika, the makefile can only compile libraries' source code if they are in an addon's `/src` folder. This is in contradiction with @obviousjim's guide to addons' folder structure at http://ofxaddons.com/howto.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/896","comments":6,"milestone":null,"number":896,"html_url":"https://github.com/openframeworks/openFrameworks/issues/896","assignee":null,"title":"Makefile and ofxaddons.com guide don't agree regarding file structure","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"closed_at":null,"created_at":"2012-02-05T15:20:42Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3099567,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-10T02:47:13Z","body":"it needs to handle all these things:\r\n\r\n- meshes vs point clouds\r\n- different types of meshes (depending on the triangles)\r\n- indexed vs non-indexed geometry\r\n- colors, normals, texcoords\r\n- ascii vs binary\r\n- loading from externally created/defined ply files","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/880","comments":1,"milestone":null,"number":880,"html_url":"https://github.com/openframeworks/openFrameworks/issues/880","assignee":null,"title":"test ofMesh::load/save rigorously","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-01-25T16:55:09Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":2967700,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-03T19:40:34Z","body":"If you set the proper switches on the iphone sound stream you can get it to play over whatever is playing on the users ipod without muting it. There are a bunch of switches for this behavior detailed in kAudioSessionProperty_Mode.\r\n\r\nThese would need to be set before initing the audio session. The other issue is that there are like 15-20 flags you can set. Maybe just a slightly higher level setting on the stream so that these behaivors could be set in the users testapp.mm","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/878","comments":0,"milestone":null,"number":878,"html_url":"https://github.com/openframeworks/openFrameworks/issues/878","assignee":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"title":"add a switch to the iphone soundstream to support ambient","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-01-24T16:41:17Z","state":"open","user":{"url":"https://api.github.com/users/jonbro","avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"893ec14dc008e3774afe5841115920d6","login":"jonbro","id":1597},"id":2952993,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-15T18:33:39Z","body":"change pan range to -1..1, right now is 0..1","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/875","comments":2,"milestone":null,"number":875,"html_url":"https://github.com/openframeworks/openFrameworks/issues/875","assignee":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"title":"ofOpenALSoundPlayer pan -1..1","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-01-21T00:01:45Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":2918619,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=6 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4938'), ('content-length', '49322'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('Link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"93bd237d518e2c23c29e5e7b340262a8"'), ('date', 'Tue, 29 May 2012 19:27:14 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-03-10T05:09:49Z","body":" testImg.saveImage(ofxiPhoneGetDocumentsDirectory() + \"test.png\");\r\ncrashes the App and results in this error:\r\n\r\nProgram received signal: \"SIGARBT\".\r\n\r\nerror thrown in this line:\r\n\r\n FreeImage_Save(fif, bmp, fileName.c_str());","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/872","comments":1,"milestone":null,"number":872,"html_url":"https://github.com/openframeworks/openFrameworks/issues/872","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"saveImage crashes in iOS Simulator","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-01-17T21:51:17Z","state":"open","user":{"url":"https://api.github.com/users/khlrqa","gravatar_id":"dfa7e4582a04e784d50c750ae51d894f","login":"khlrqa","avatar_url":"https://secure.gravatar.com/avatar/dfa7e4582a04e784d50c750ae51d894f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":53301},"id":2875276,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-01-07T15:38:14Z","body":"Hi -\r\n\r\nwhen it comes down to multicast communication over udp, it's is important that the correct ip address of the local interface is set. Most computers nowadays have several interfaces (wired and wireless). Whereas ofxUDPManager::BindMcast uses INADDR_ANY as the local address, this might be wrong if you are not using the default interface. In my case, I connect the computers in a local wlan. The wlan device is not the primary device on my machine.\r\n\r\nTherefore I rewrote the BindMcast function adding a third argument pLocal, the local Ip address of the network interface.\r\n\r\n```c++\r\nbool ofxUDPManager::BindMcast(char *pMcast, unsigned short usPort, char *pLocal)\r\n```\r\nchanging the line: \r\n\r\n```c++\r\nmreq.imr_interface.s_addr = pLocal == \"\" ? INADDR_ANY: inet_addr(pLocal);\r\n```\r\n\r\nwhich makes a different header file as well:\r\n\r\n```c++\r\nbool BindMcast(char *pMcast, unsigned short usPort, char *pLocal = \"\");\r\n```\r\n\r\nAs you can see, the pLocal Adress is optional, if omitted, INADDR_ANY is used (backwards compatibility).\r\n\r\n\r\nNOTE:\r\n\r\nI've added the function:\r\n\r\n```c++\r\nchar* GetInterfaceAddr(const char* interface); //returns the IP of a specified interface\r\n```\r\n\r\nto the ofxUDPManager as well. This function returns the IP adress of an interface (e.g. en1 on a mac for the airport device). This is useful in dhcp networks, where your own address always changes. The function itself looks like:\r\n\r\n```c++\r\n//--------------------------------------------------------------------------------\r\nchar* ofxUDPManager::GetInterfaceAddr(const char* interface)\r\n{\r\n\tint fd;\r\n\tstruct ifreq ifr;\r\n\tfd = socket(AF_INET, SOCK_DGRAM, 0);\r\n\tifr.ifr_addr.sa_family = AF_INET;\r\n\tstrncpy(ifr.ifr_name, interface, IFNAMSIZ-1);\r\n\tioctl(fd, SIOCGIFADDR, &ifr);\r\n\tclose(fd);\r\n\treturn(inet_ntoa(((struct sockaddr_in *)&ifr.ifr_addr)->sin_addr));\r\n}\r\n```\r\n\r\nPlease not that for this function, additional headers have to be included in ofxUDPManager.h:\r\n\r\n```c++\r\n#include \r\n```\r\n\r\nIf you consider the changes useful, theres a copy of the two files downloadable here:\r\nhttp://dl.dropbox.com/u/394122/ofxUDPManager_uh_07012012.zip\r\n\r\nregards,\r\nUrs Hofer","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/866","comments":0,"milestone":null,"number":866,"html_url":"https://github.com/openframeworks/openFrameworks/issues/866","assignee":null,"title":"Multicast & UDP: Local IP required when dealing with multiple network interfaces","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-01-07T15:38:14Z","state":"open","user":{"url":"https://api.github.com/users/urshofer","gravatar_id":"0424af1c917883090f0edddf55a8f21b","login":"urshofer","avatar_url":"https://secure.gravatar.com/avatar/0424af1c917883090f0edddf55a8f21b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":116976},"id":2756440,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-03T19:40:34Z","body":"I've posted here\r\nhttp://forum.openframeworks.cc/index.php/topic,8467.new.html\r\n\r\nAt the moment when you do sample.unloadSound() on iOS the app crashes with\r\n\r\n[Switching to thread 13059]\r\n[Switching to thread 13059]\r\nProgram received signal: “EXC_BAD_ACCESS”.\r\nwarning: Unable to read symbols for /Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.2.1 (8C148)/Symbols/Developer/usr/lib/libXcodeDebuggerSupport.dylib (file not found).\r\n\r\n\r\nThis has been tested on the soundPlayerExample.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/863","comments":1,"milestone":null,"number":863,"html_url":"https://github.com/openframeworks/openFrameworks/issues/863","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"unloadSound on iOS crashes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-01-03T12:48:09Z","state":"open","user":{"url":"https://api.github.com/users/chrisoshea","gravatar_id":"62d775b0fa28bcde2d9d29405d059be3","login":"chrisoshea","avatar_url":"https://secure.gravatar.com/avatar/62d775b0fa28bcde2d9d29405d059be3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":104786},"id":2710048,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-03T19:38:16Z","body":"ofxsynth doesn't wont to compile because this line:\r\nsource->audioOut( working, numFrames, numChannels, tickCount ) in ofxSoundUnit.cpp is wrong.\r\nthe canddates are:\r\n\r\nvirtual void audioOut( float * output, int bufferSize, int nChannels, int deviceID, long unsigned long tickCount )\r\nvirtual void audioOut( float * output, int bufferSize, int nChannels)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/861","comments":10,"milestone":null,"number":861,"html_url":"https://github.com/openframeworks/openFrameworks/issues/861","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"ofxSynth semantic issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-01-02T11:14:47Z","state":"open","user":{"url":"https://api.github.com/users/viniciolindo","gravatar_id":"7aa1a7f9bf0b838c0d99886c3682ac5d","login":"viniciolindo","avatar_url":"https://secure.gravatar.com/avatar/7aa1a7f9bf0b838c0d99886c3682ac5d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1298679},"id":2700549,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-03T19:40:34Z","body":"ofPixels has getPixels(), but OF has no equivalent getSamples() for sound.\r\n\r\nright now the best solution seems to be using libsndfile with OF http://forum.openframeworks.cc/index.php/topic,3502.0.html\r\n\r\nbut i would love to see the audio architecture for OF mirror the visual architecture better. this means ofSoundPlayer acts like ofVideoPlayer, and we need to add an ofSound object that mirrors ofPixels. ofSound should always store samples in memory, while ofSoundPlayer can stream audio from disk like ofVideoPlayer.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/856","comments":1,"milestone":null,"number":856,"html_url":"https://github.com/openframeworks/openFrameworks/issues/856","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"allow access to individual sound samples","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2011-12-30T02:33:19Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2685556,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-29T04:43:24Z","body":"Today I came across this strange bug.\r\nAny OF app that needed to use the quicktime video grabber crashed at startup when the this was launched from xcode (eg. using build and run) yet it worked correctly when I opened the compiled app by doubleclicking it.\r\n\r\nThe error thrown was a EXCBADACCESS.\r\nthe function that threw this was ACWma1DecoderEntry\r\n\r\nJust some googling and I found that it had to do with Flip4Mac quicktime component.\r\nI uninstalled it and problem gone.\r\n\r\nThe strange thing is that I've had installed Flip4Mac since long ago, yet I updated iTunes a few days ago, that might have done this problem to arise.\r\n\r\nI don't know if this is actually an OF bug from its Quicktime implementation or what ever but it was really annoying getting across with it. Hope this helps others.\r\n\r\nCheers!","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/855","comments":0,"milestone":null,"number":855,"html_url":"https://github.com/openframeworks/openFrameworks/issues/855","assignee":null,"title":"video Grabber crashes with Flip4Mac","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-12-29T04:43:24Z","state":"open","user":{"url":"https://api.github.com/users/roymacdonald","gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","login":"roymacdonald","avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":974878},"id":2677212,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-23T14:13:39Z","body":"ofNode::resetTransform only resets orientation and position.\r\n\r\nI think setScale(1,1,1); needs to be called too in ofNode::resetTransform \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/851","comments":0,"milestone":null,"number":851,"html_url":"https://github.com/openframeworks/openFrameworks/issues/851","assignee":null,"title":"ofNode::resetTransform does not reset scale","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-12-23T14:13:39Z","state":"open","user":{"url":"https://api.github.com/users/companje","gravatar_id":"30a7e135fe77636519d74d129c60e156","login":"companje","avatar_url":"https://secure.gravatar.com/avatar/30a7e135fe77636519d74d129c60e156?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":156066},"id":2647508,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-22T14:31:37Z","body":"if I add an external lib to my addon, I should provide headers for all platforms to be cross-platfomr like OF but the Makefile doesn't have any switch to ignore certain files which are not needed on linux.\r\n\r\nthe problem is that the OF Makefile compiles everythin under libs/mylib/include\r\n\r\nsee here for more: http://forum.openframeworks.cc/index.php?topic=6486.new;topicseen#new","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/849","comments":0,"milestone":null,"number":849,"html_url":"https://github.com/openframeworks/openFrameworks/issues/849","assignee":null,"title":"skip files in an addon with Makefile","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-12-22T14:31:37Z","state":"open","user":{"url":"https://api.github.com/users/benben","gravatar_id":"614a4e493d7c353296519bba720e77c5","login":"benben","avatar_url":"https://secure.gravatar.com/avatar/614a4e493d7c353296519bba720e77c5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":124513},"id":2637694,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-19T22:35:27Z","body":"But it does!\r\n\r\nSomehow it's casting from float to ofPoint, maybe using the ofVec3f( float _x=0.f, float _y=0.f, float _z=0.f ) constructor.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/846","comments":10,"milestone":null,"number":846,"html_url":"https://github.com/openframeworks/openFrameworks/issues/846","assignee":null,"title":"ofCircle(float, float) should not work","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-12-14T00:42:31Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2546302,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-10T21:25:49Z","body":"Please add \"-Wreturn-type\" to the XCode project. I've noticed that it's a common mistake to add a return type but nothing is returned. Adding this option will at least show an error. I think Visual Studio shows an error already by default. You can add it like this in the project settings: http://img805.imageshack.us/img805/8745/screenshot20111210at102.png \r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/843","comments":0,"milestone":null,"number":843,"html_url":"https://github.com/openframeworks/openFrameworks/issues/843","assignee":null,"title":"Add return-type warning for XCode project files ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-12-10T21:25:49Z","state":"open","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":358809},"id":2512838,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-31T19:36:40Z","body":"Playing a movie crashes on exit on linux. Fedora 16 32-bit, latest git.\r\n\r\noutput:\r\n./moviePlayerExample\r\ndeleting video player\r\nterminate called after throwing an instance of 'Poco::SystemException'\r\n what(): System exception\r\nAborted (core dumped)\r\n\r\nbacktrace:\r\n#0 0x00110416 in __kernel_vsyscall ()\r\n#1 0x4623998f in raise () from /lib/libc.so.6\r\n#2 0x4623b2d5 in abort () from /lib/libc.so.6\r\n#3 0x46a9b74d in __gnu_cxx::__verbose_terminate_handler() ()\r\n from /usr/lib/libstdc++.so.6\r\n#4 0x46a994c4 in ?? () from /usr/lib/libstdc++.so.6\r\n#5 0x46a99500 in std::terminate() () from /usr/lib/libstdc++.so.6\r\n#6 0x46a9964f in __cxa_throw () from /usr/lib/libstdc++.so.6\r\n#7 0x08098bef in Poco::MutexImpl::lockImpl (this=0x814eb48)\r\n at /usr/include/Poco/Mutex_POSIX.h:82\r\n#8 0x08098d07 in Poco::FastMutex::lock (this=0x814eb48)\r\n at /usr/include/Poco/Mutex.h:257\r\n#9 0x0809907d in Poco::ScopedLock::ScopedLock (this=\r\n 0xbfffeabc, mutex=...) at /usr/include/Poco/ScopedLock.h:59\r\n#10 0x0809a340 in Poco::AbstractEvent, Poco::p_less > >, Poco::AbstractDelegate, Poco::FastMutex>::operator-=\r\n (this=0x814eb10, aDelegate=...) at /usr/include/Poco/AbstractEvent.h:195\r\n#11 0x080d40c5 in ofRemoveListener, ofEventArgs, ofGstUtils> (event=..., listener=0x82698e0, listenerMethod=\r\n (void (ofGstUtils::*)(ofGstUtils * const, ofEventArgs &)) 0x80d27b4 ) at ../../../openFrameworks/events/ofEventUtils.h:87\r\n#12 0x080d25be in ofGstUtils::close (this=0x82698e0)\r\nat ../../../openFrameworks/video/ofGstUtils.cpp:353\r\n#13 0x080d175e in ofGstUtils::~ofGstUtils (this=0x82698e0, \r\n __in_chrg=)\r\n at ../../../openFrameworks/video/ofGstUtils.cpp:85\r\n#14 0x080d32c4 in ofGstVideoUtils::~ofGstVideoUtils (this=0x82698d8, \r\n __in_chrg=)\r\n at ../../../openFrameworks/video/ofGstUtils.cpp:536\r\n#15 0x080d06ff in ofGstVideoPlayer::~ofGstVideoPlayer (this=0x82698b8, \r\n __in_chrg=, __vtt_parm=)\r\n at ../../../openFrameworks/video/ofGstVideoPlayer.cpp:19\r\n#16 0x080d07d9 in ofGstVideoPlayer::~ofGstVideoPlayer (this=0x82698b8, \r\n __in_chrg=, __vtt_parm=)\r\n at ../../../openFrameworks/video/ofGstVideoPlayer.cpp:21\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/840","comments":3,"milestone":null,"number":840,"html_url":"https://github.com/openframeworks/openFrameworks/issues/840","assignee":null,"title":"ofGstVideoPlayer crash on exit","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2011-12-08T11:53:55Z","state":"open","user":{"url":"https://api.github.com/users/gaborpapp","gravatar_id":"9cb0f8a67c238d2aa91d9a7957b9ef4b","login":"gaborpapp","avatar_url":"https://secure.gravatar.com/avatar/9cb0f8a67c238d2aa91d9a7957b9ef4b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":203532},"id":2486705,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-12T12:30:53Z","body":"right now the only way to change the type of pixels is to go through ofImage and set image type there.\r\n\r\nseems like this should be moved into ofPixels.\r\n\r\nthoughts?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/838","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":838,"html_url":"https://github.com/openframeworks/openFrameworks/issues/838","assignee":{"url":"https://api.github.com/users/obviousjim","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","login":"obviousjim","avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":321434},"title":"ofPixels has no setImageType","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-12-07T16:30:59Z","state":"open","user":{"url":"https://api.github.com/users/obviousjim","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","login":"obviousjim","avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":321434},"id":2476561,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-05T21:44:08Z","body":"I made a small example which uses the Wikipedia xml api to make queries which are then parsed by an ofXmlSettings object. The problem is Wikipedia complains there is no User-Agent string and dosen't return any data, while threatening to block by IP.\r\n\r\nThe fix was as simple as adding this to ofURLFileLoader.cpp line 144:\r\n
    \r\n\t\tHTTPRequest req(HTTPRequest::HTTP_GET, path, HTTPMessage::HTTP_1_1);\r\n        \treq.add(\"User-Agent\", \"Mozilla/5.0 (iPad; U; CPU OS 3_2_1 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Mobile/7B405\");\r\n
    \r\n\r\nIt uses the iOS safari user agent string. I think the best fix is to expose the HTTPRequest and HTTPResponse Poco objects so that, like in the ofxHttpUtils, you could add manually the string/value to the request before sending it. I don't think it should be set ti a default within the class. Also, it would be awesome to be able to add data into and pull data out of the requests. This is a great wrapper, especially the threading, I'd just like to have the full req/response control ... perhaps provide a method to add Poco::HttpRequests and recieve Poco::HttpResponses which could be set as references inside the ofxHttpRequest/ofxHttpResponse objects?\r\n\r\nOn another note, ofURLFileLoader seems like a rather specific name for a regular HTTP action. What's wrong with ofHttpSession etc since I've found it useful for more then just","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/837","comments":0,"milestone":null,"number":837,"html_url":"https://github.com/openframeworks/openFrameworks/issues/837","assignee":null,"title":"ofURLFileLoader dosen't set HTTP User-Agent string and there is no way to set it","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-12-05T21:44:08Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":2455011,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-04T00:08:35Z","body":"Dummy issue to ensure that the 0073 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/836","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","closed_issues":0,"number":6,"title":"0073 Release","due_on":"2012-07-30T07:00:00Z","open_issues":5,"created_at":"2011-12-03T15:37:49Z","state":"open","description":"","id":62090},"number":836,"html_url":"https://github.com/openframeworks/openFrameworks/issues/836","assignee":null,"title":"0073 Release tracking issue","labels":[],"closed_at":null,"created_at":"2011-12-04T00:08:35Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":2439965,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T09:03:22Z","body":"Not sure if is an issue or im doing wrong.\r\n\r\nIm trying to implement dragEvent() in an external class in windoes 7. I'm getting neither an error nor a response nor result. While debugging dragEvent is not called at all. The same code works perfectly on osx. \r\n\r\nhere's some:\r\n\r\ndummy.h\r\n\r\n\t#include \"ofMain.h\"\r\n\r\n\tclass dummy\r\n\t{\r\n\t\tpublic:\r\n\t\t\tdummy();\r\n\t\t\t~dummy();\r\n\t\t\t\t\t\r\n\t\t\tvoid config();\r\n\t\t\tvoid dragEvent(ofDragInfo &info);\r\n\t\t\t\r\n\t\tprivate:\r\n\t\tprotected:\r\n\t\t\r\n\t};\r\n\r\ndummy.cpp\r\n\r\n\t#include \"dummy.h\"\r\n\r\n\tdummy::dummy(){}\r\n\r\n\tdummy::~dummy(){}\r\n\r\n\tvoid dummy::config(){\r\n\t\tofAddListener(ofEvents.fileDragEvent, this, &dummy::dragEvent);\r\n\t}\r\n\r\n\tvoid dummy::dragEvent(ofDragInfo &info){\r\n\t\tfor( int i = 0; i < info.files.size() ; i++){\r\n\t\t\tcout << \"path: \" << info.files[i] << endl;\r\n\t\t}\r\n\t}\r\n\r\n\r\ntesApp.h\r\n\r\n\t#include \"ofMain.h\"\r\n\t#include \"dummy.h\"\r\n\r\n\r\n\tclass testApp : public ofBaseApp{\r\n\r\n\t\tpublic:\r\n\t\t\tvoid setup();\r\n\t\t\tvoid update();\r\n\t\t\tvoid draw();\r\n\r\n\t\t\tvoid keyPressed (int key);\r\n\t\t\tvoid keyReleased(int key);\r\n\t\t\tvoid mouseMoved(int x, int y );\r\n\t\t\tvoid mouseDragged(int x, int y, int button);\r\n\t\t\tvoid mousePressed(int x, int y, int button);\r\n\t\t\tvoid mouseReleased(int x, int y, int button);\r\n\t\t\tvoid windowResized(int w, int h);\r\n\t\t\tvoid dragEvent(ofDragInfo dragInfo);\r\n\t\t\tvoid gotMessage(ofMessage msg);\r\n\t\t\t\r\n\t\t\tdummy d;\r\n\r\ntestApp.cpp\r\n\r\n\t#include \"testApp.h\"\r\n\r\n\tvoid testApp::setup(){\r\n\t\td.config();\r\n\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/831","comments":0,"milestone":null,"number":831,"html_url":"https://github.com/openframeworks/openFrameworks/issues/831","assignee":null,"title":"dragEvent() in new class not working in win7","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-12-03T08:51:42Z","state":"open","user":{"url":"https://api.github.com/users/decolector","gravatar_id":"7165a50ea8df968de57ffb5a27ba6ebc","login":"decolector","avatar_url":"https://secure.gravatar.com/avatar/7165a50ea8df968de57ffb5a27ba6ebc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":390056},"id":2436532,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-02T16:28:49Z","body":"Dummy issue to ensure that the 0072 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/829","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":829,"html_url":"https://github.com/openframeworks/openFrameworks/issues/829","assignee":null,"title":"0072 Release tracking issue","labels":[],"closed_at":null,"created_at":"2011-12-02T16:28:49Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":2429871,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-11-29T17:54:48Z","body":"Loading Futura at font size 10 and simplify=0 yields oversimplified chars in a pdf render. I'm not sure if there's a way to fix this if the fonts are small.\r\n\r\nA workaround is to load the font at a larger size, say 40, then scale down by 0.25 when drawing. \r\n\r\nThe font below is a zoom of the pdf export using font size 10. The font above is Futura at font size 144 by comparison.\r\n\r\n![oversimplified fonts](http://farm8.staticflickr.com/7161/6423768819_9129b6d608_o.jpg)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/825","comments":2,"milestone":null,"number":825,"html_url":"https://github.com/openframeworks/openFrameworks/issues/825","assignee":null,"title":"small font sizes yield oversimplified glyph shapes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-11-29T08:26:16Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":2380571,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-19T07:01:47Z","body":"If I use loadScreenData with anti-Aliasing turned on in the program's startup like this:\r\n\r\nofAppiPhoneWindow * iOSWindow = new ofAppiPhoneWindow();\r\niOSWindow->enableAntiAliasing(4);\r\n\r\nthen the texture will load in nothing but solid black. If I bypass this anti-aliasing, it works fine. I also cannot properly populate a texture using loadScreenData in a landscape orientation. Changing to Portrait orientation in the update loop, and then back to landscape after the grab fixes it.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/822","comments":5,"milestone":null,"number":822,"html_url":"https://github.com/openframeworks/openFrameworks/issues/822","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"iOS - ofTexture.loadScreenData issue when antiAliasing is on","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-11-28T06:48:27Z","state":"open","user":{"url":"https://api.github.com/users/momo-the-monster","gravatar_id":"31f8a3ef87e828b70d2a441c8dae97d8","login":"momo-the-monster","avatar_url":"https://secure.gravatar.com/avatar/31f8a3ef87e828b70d2a441c8dae97d8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":737888},"id":2364541,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-11-28T18:48:58Z","body":"It'd be nice if ofRectangle used a ofVec2f or ofVec3f internally so you could do the something like:\r\n\r\n
    \r\nofRectangle myRect;\r\nofVec2f vel(-1, 2);\r\nmyRect.pos += vel;\r\n
    \r\n\r\nNow I'm not saying drop the x and y member vars, but link them to the ofVec internals thorugh either a union or reference. A reference would be easy through the constructor:\r\n\r\n
    \r\nclass ofRectangle {\r\n\r\n   public:\r\n\r\n     float &x, &y;\r\n     ofVec2f pos;\r\n     ....\r\n\r\n\r\nofRectangle::ofRectangle() : x(pos.x), y(pos.y) {\r\n\r\n...\r\n
    \r\n\r\nThis way we get the best of both worlds without broken code ...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/821","comments":3,"milestone":null,"number":821,"html_url":"https://github.com/openframeworks/openFrameworks/issues/821","assignee":null,"title":"suggest: ofRectangle internal ofVec","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-11-26T20:19:31Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":2356801,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-01T18:13:35Z","body":"i'm experiencing troubles in windows when i use a system file-opening dialog from openframeworks. after using it Data root path seems to get pointing to a wrong location, causing troubles e.g. true type fonts not loading.\r\nif I use the open-file dialog once again to open a file in root folder of the application, then the data path is reset correctly.\r\nusing ofSetDataPathRoot() doens't seem to fix the issue, or maybe I'm not using it correctly.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/819","comments":2,"milestone":null,"number":819,"html_url":"https://github.com/openframeworks/openFrameworks/issues/819","assignee":null,"title":"datapath messed in windows after using file open dialog","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-11-22T10:50:13Z","state":"open","user":{"url":"https://api.github.com/users/hvfrancesco","gravatar_id":"e02a8a3953de9d5d9ec1c7aa8d43eca4","login":"hvfrancesco","avatar_url":"https://secure.gravatar.com/avatar/e02a8a3953de9d5d9ec1c7aa8d43eca4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":614123},"id":2316595,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-02T15:19:58Z","body":"Had a talk with Theo about this. I think that it would be really nice if it were possible to #define/ pre-process macro if you want to exclude modules like ofVideoPlayer/ofSoundplayer in your app. \r\n\r\nThis would be super helpful for a couple of reasons.\r\n\r\nplugins that are not able to use the modules can exclude them without hacking the core.\r\nif you want to reduce the final size of you app and its not using something like ofVideoPlayer you dont need to add it.\r\n\r\nwhat do you think...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/818","comments":1,"milestone":null,"number":818,"html_url":"https://github.com/openframeworks/openFrameworks/issues/818","assignee":null,"title":"#defines for modules ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-11-21T16:45:51Z","state":"open","user":{"url":"https://api.github.com/users/vanderlin","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":149997},"id":2306518,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-11-17T15:17:10Z","body":"Hello, \r\nRunning on MacOS 10.7 with XCode 4.1 I could not compile any of the examples in devApps, except for _DeployExamples. \r\nThe first error always encountered is: \r\n\r\n../../../libs/openFrameworks/utils/ofConstants.h:101:22: error: GL/glew.h: No such file or directory\r\n\r\nI tried both changing the paths of the include part in the code and dragging the GL folder that contains glew.h separately in the project, but neither worked. \r\n\r\nHelp please... \r\n\r\nThanks, \r\n\r\nIannis Zannos","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/815","comments":3,"milestone":null,"number":815,"html_url":"https://github.com/openframeworks/openFrameworks/issues/815","assignee":null,"title":"Examples in devApps folder do not compile. Missing glew.h","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-11-17T13:45:47Z","state":"open","user":{"url":"https://api.github.com/users/iani","gravatar_id":"8200f2533f23c9daaff63c4dba6f4819","login":"iani","avatar_url":"https://secure.gravatar.com/avatar/8200f2533f23c9daaff63c4dba6f4819?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":181956},"id":2268829,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T16:30:18Z","body":"Hello, \r\nIt took me more than 4 hours to get openFrameworks to compile deployExamples on MacOS X 10.7.2 with XCode 4.1, because of having to figure out two things; \r\n\r\n1. Need to change SDK for the deployExamples project definitions to 10.6\r\n2. Need to choose deployExamples in the build menu on the toolbar of the project window. \r\n\r\nPerhaps this info should be added to the readme.txt file of the present master branch in order to spare other people the hassle? \r\n\r\nI suggest the following addition: \r\n=====\r\nTo deploy openFrameworks examples from the files cloned via the present github repository, you should build and run the project: \r\napps/devApps/_DeployExamples/deployExamples.xcodeproj\r\n\r\nTo successfully compile in Lion (MacOS X 10.7) in XCode you should select in the project file list of XCode both the target deployExamples from the top level of the file hierarchy and the project openFrameworksLib.xcodeproj from inside the openFrameworks folder, then find the project definition, and change the SDK to MacOS X 10.6. You should do the same for the targets of those two items. \r\n\r\nImportant: Before clicking the Build and Go, or the Run button, make sure that you choose the deployExamples project in the menu on the toolbar of the project window. (Otherwise if you leave openFrameworks as selected project and push Run or Build and Run, no application will be created or run). \r\n\r\n\r\n=====\r\nHopefully this helps. \r\nCheers, \r\nIannis Zannos","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/814","comments":2,"milestone":null,"number":814,"html_url":"https://github.com/openframeworks/openFrameworks/issues/814","assignee":null,"title":"Suggest adding some info about Lion to readme.txt","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-11-17T11:48:32Z","state":"open","user":{"url":"https://api.github.com/users/iani","gravatar_id":"8200f2533f23c9daaff63c4dba6f4819","login":"iani","avatar_url":"https://secure.gravatar.com/avatar/8200f2533f23c9daaff63c4dba6f4819?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":181956},"id":2267854,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-11-16T04:46:48Z","body":"I'm trying this simple ofFbo example on OF 007, the system is Ubuntu Lucid, with an Intel 945 GPU.\r\n\r\n]//--------------------------------------------------------------\r\nvoid testApp::setup(){\r\n fbo.allocate(500, 500, GL_RGBA);\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::update(){\r\n\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::draw(){\r\n\r\n fbo.begin();\r\n ofClear(255, 255, 255, 255);\r\n ofSetColor(255, 0, 0);\r\n ofCircle(mouseX, mouseY, 100);\r\n fbo.end();\r\n\r\n ofSetColor(255);\r\n fbo.draw(0, 0);\r\n}\r\n\r\nI got a segfault in i915 dri, and any test using ofFbo leads to same results.\r\n\r\n\r\n#0 0x1bd3c36 _mesa_FramebufferRenderbufferEXT() (/usr/lib/dri/i915_dri.so:??)\r\n#1 0x80cc56a ofFbo::createAndAttachRenderbuffer(this=0x85b28e8, internalFormat=34041, attachmentPoint=33306) (../../../openFrameworks/gl/ofFbo.cpp:489)\r\n#2 0x80cc352 ofFbo::allocate(this=0x85b28e8, _settings=...) (../../../openFrameworks/gl/ofFbo.cpp:388)\r\n#3 0x80cc269 ofFbo::allocate(this=0x85b28e8, width=500, height=500, internalformat=6408, numSamples=0) (../../../openFrameworks/gl/ofFbo.cpp:363)\r\n#4 0x80562ec testApp::setup(this=0x85b28d8) (src/testApp.cpp:5)\r\n#5 0x8059ca6 ofNotifySetup() (../../../openFrameworks/events/ofEvents.cpp:73)\r\n#6 0x8056a23 ofAppGlutWindow::runAppViaInfiniteLoop(this=0xbffff2f8, appPtr=0x85b28d8) (../../../openFrameworks/app/ofAppGlutWindow.cpp:317)\r\n#7 0x80584cc ofRunApp(OFSA=0x85b28d8) (../../../openFrameworks/app/ofAppRunner.cpp:82)\r\n#8 0x8055bfc main() (src/main.cpp:14)\r\n\r\nany idea about what I should try or where the problem could be? has anyone experienced similar problems?\r\n\r\nthanks in advance to all","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/811","comments":1,"milestone":null,"number":811,"html_url":"https://github.com/openframeworks/openFrameworks/issues/811","assignee":null,"title":"ofFBO causes segfault on Linux Ubuntu Lucid with i945 GPU","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-11-13T20:49:26Z","state":"open","user":{"url":"https://api.github.com/users/hvfrancesco","gravatar_id":"e02a8a3953de9d5d9ec1c7aa8d43eca4","login":"hvfrancesco","avatar_url":"https://secure.gravatar.com/avatar/e02a8a3953de9d5d9ec1c7aa8d43eca4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":614123},"id":2223158,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-09T18:51:38Z","body":"Julapy and I were discussing how to do this on the forum http://forum.openframeworks.cc/index.php?topic=7852 and I think adding a flag to allocate for mipmaps to ofTexture and ofFbo would come in handy for some people.\r\n\r\n```c\r\nvoid ofTexture::allocate(int w, int h, int internalGlDataType, bool bUseARBExtention, bool generateMipmaps = false) \r\n{\r\n if( generateMipmaps )\r\n {\r\n glTexParameterf( texData.textureTarget, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_NEAREST );\r\n glTexParameterf( texData.textureTarget, GL_TEXTURE_MAG_FILTER, GL_LINEAR );\r\n glTexParameterf( texData.textureTarget, GL_GENERATE_MIPMAP, GL_TRUE );\r\n }\r\n```\r\n\r\nand in ofFbo\r\n\r\n```c\r\nstruct Settings {\r\n bool generateMipMaps; // or int\r\n}\r\n```\r\n\r\nI'd be happy to do this & submit a pull request too.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/810","comments":2,"milestone":null,"number":810,"html_url":"https://github.com/openframeworks/openFrameworks/issues/810","assignee":null,"title":"Add flag for mipmapping in ofTexture/ofFbo","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-11-11T07:34:53Z","state":"open","user":{"url":"https://api.github.com/users/joshuajnoble","gravatar_id":"10960ba0f305803a1cdc7cd6188d643b","login":"joshuajnoble","avatar_url":"https://secure.gravatar.com/avatar/10960ba0f305803a1cdc7cd6188d643b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":237423},"id":2206980,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=7 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4937'), ('content-length', '49276'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('Link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"362300e7c4c0fc8f170b2c345084dfad"'), ('date', 'Tue, 29 May 2012 19:27:16 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-12-03T23:58:48Z","body":"right now it's inside ofMath.h","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/800","comments":3,"milestone":null,"number":800,"html_url":"https://github.com/openframeworks/openFrameworks/issues/800","assignee":null,"title":"ofInsidePoly should be a static method of ofPolyline","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-30T04:16:14Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2089523,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-05T21:31:07Z","body":"ofRect very commonly has a little chunk missing from one corner.\r\n\r\nthere is also a discrepancy between the filled and outline rectangles. it's not clear whether the outline rect should be within the bounds of the filled rect, or enclosing the filled rect, and in practice it can be a little of both.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/798","comments":2,"milestone":null,"number":798,"html_url":"https://github.com/openframeworks/openFrameworks/issues/798","assignee":null,"title":"ofRect isn't quite rectangular","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-10-29T06:38:43Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2086039,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-29T02:37:28Z","body":"we're working on some ideas regarding procedural animation and posing:\r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,7714.new.html#new\r\n\r\nwhich should be more powerful than playing back manual animations.\r\n\r\nintegrating it into the core would be ideal, but we're still trying to understand how it works.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/797","comments":0,"milestone":null,"number":797,"html_url":"https://github.com/openframeworks/openFrameworks/issues/797","assignee":null,"title":"procedural posing of bones in ofxAssimpModelLoader","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-29T02:37:28Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2085543,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T03:48:47Z","body":"this fails to display any text:\r\n\r\n\tofBackground(0);\r\n\tofSetColor(255, 254);\r\n\tofDrawBitmapString(\"this text is not displayed\", 10, 20);\r\n\r\nthis is because line 448 of ofBitmapFont.h reads:\r\n\r\n\tglAlphaFunc(GL_EQUAL, 1.0f);\r\n\r\nwhich should be changed to:\r\n\r\n\tglAlphaFunc(GL_GREATER, 0);","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/795","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":795,"html_url":"https://github.com/openframeworks/openFrameworks/issues/795","assignee":null,"title":"ofDrawBitmapString does not work with alpha","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-27T09:50:07Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2066090,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-25T23:39:09Z","body":"\r\nThis should be user adjustable / on / off. it's sort of a drag to be using easy cam and trigger double clicks are you are interacting with a gui, etc.... \r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/793","comments":1,"milestone":null,"number":793,"html_url":"https://github.com/openframeworks/openFrameworks/issues/793","assignee":null,"title":"easyCam -- ability to disable doubleClick reset","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-25T23:36:40Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":2051692,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T23:53:12Z","body":"when drawing certain shapes i get crashes, debugger claims a tessellator issue pointing to \r\n\"if (!tessTesselate(cacheTess, polyWindingMode, TESS_POLYGONS, 3, 3, 0)){\" in \"performTessellation\" function in file ofTessellator.cpp ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/789","comments":1,"milestone":null,"number":789,"html_url":"https://github.com/openframeworks/openFrameworks/issues/789","assignee":null,"title":"crashes with tessellator","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-10-21T14:49:12Z","state":"open","user":{"url":"https://api.github.com/users/ruim","gravatar_id":"18875575931764c674b5fc64ae8b7274","login":"ruim","avatar_url":"https://secure.gravatar.com/avatar/18875575931764c674b5fc64ae8b7274?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480525},"id":2016194,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-19T22:39:37Z","body":"would be useful as well. Perhaps an ofxMeshUtils would be in order for upcoming versions...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/787","comments":0,"milestone":null,"number":787,"html_url":"https://github.com/openframeworks/openFrameworks/issues/787","assignee":null,"title":"half edge mesh structure extension of ofMesh","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-19T22:39:37Z","state":"open","user":{"url":"https://api.github.com/users/kpasko","gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","login":"kpasko","avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":167271},"id":1999520,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-11-04T21:59:22Z","body":"would be quite useful","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/786","comments":1,"milestone":null,"number":786,"html_url":"https://github.com/openframeworks/openFrameworks/issues/786","assignee":null,"title":"axis aligned bounding box tree for ofMesh","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-19T22:38:35Z","state":"open","user":{"url":"https://api.github.com/users/kpasko","gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","login":"kpasko","avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":167271},"id":1999513,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-27T17:58:58Z","body":"I am loading in boujou camera data (translation and euler rotation), and I get really fine results when I do: \r\n\r\nglTranslatef(tx,ty,tz);\r\nglRotatef(rx, 1,0,0);\r\nglRotatef(ry, 0,1,0);\r\nglRotatef(rz, 0,0,1);\r\n\r\nbut when I create an ofCamera, and do: \r\n\r\nsetPosition(ofPoint(tx, ty, tz));\r\nsetOrientation(ofPoint(rx, ry, rz));\r\n\r\nI get strange results. I am wondering about ofNodes \"setOrientation\" and if it's really right in that the order is switched:\r\n\r\nsetOrientation(ofQuaternion(eulerAngles.y, ofVec3f(0, 1, 0), eulerAngles.x, ofVec3f(1, 0, 0), eulerAngles.z, ofVec3f(0, 0, 1)));\r\n\r\nalso, maybe I am mis interpreting what \"set orientation\" does. But I can't seem to get similar results with ofCam, even if I do, for example, \r\n\r\ncam.setPosition( tx,ty,tz);\r\ncam.rotate( rx, 1,0,0);\r\ncam.rotate( ry, 0,1,0);\r\ncam.rotate( rz, 0,0,1);\r\n\r\nI still don't get the same results as when I do it via opengl. This seems like a bug maybe with how ofNode handles rotation?\r\n\r\n(note , I am calling resetTranform() on the camera, so it's not an accumulation of rotations.... it's just that I can't seem to find a way to get ofCam to rotate in the same way as opengl commands). \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/785","comments":2,"milestone":null,"number":785,"html_url":"https://github.com/openframeworks/openFrameworks/issues/785","assignee":null,"title":"ofCamera setOrientation gives odd results","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-10-19T11:16:42Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":1992818,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-09T11:46:35Z","body":"It seems to be happening pretty far in, if you put debug statements in touchesMoved in EAGL view, you will see that y is set to the x value of the touch.\r\n\r\nThis does not occur in debug mode, or in the simulator, and it has to be done with xcode4. I am running the newest ios5 beta as well.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/778","comments":2,"milestone":null,"number":778,"html_url":"https://github.com/openframeworks/openFrameworks/issues/778","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"running an iphone retina app in release mode causes touch.x == touch.y","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-10-18T11:26:26Z","state":"open","user":{"url":"https://api.github.com/users/jonbro","gravatar_id":"893ec14dc008e3774afe5841115920d6","login":"jonbro","avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1597},"id":1938472,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-16T18:30:08Z","body":"\r\nat the moment, the ofCamera draw calls ofNode, which does't really give you a clear indication of which way the camera is looking. even that is weird, because a camera looks on -z, and the node draw draws a line on positive z. \r\n\r\nI suggest we add something that draws a bit of a frustum (ie, fov, etc) and gives you a feeling about orientation. \r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/774","comments":0,"milestone":null,"number":774,"html_url":"https://github.com/openframeworks/openFrameworks/issues/774","assignee":null,"title":"ofCamera draw() should be more indicative of where the camera is facing. ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-16T18:30:08Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":1922704,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-12T15:09:29Z","body":"Currently we have:\r\n\tvirtual void draw(float x,float y)=0;\r\n\tvirtual void draw(float x,float y,float w, float h)=0;\r\n\r\n\tvirtual float getHeight()=0;\r\n\tvirtual float getWidth()=0;\r\n\r\nSince we're insisting that the user define a getWidth and getHeight, can I ask why we don't set the default of draw(x,y) to be\r\n virtual void draw(float x,float y) {draw(x, y, getWidth(), getHeight()) };\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/772","comments":0,"milestone":null,"number":772,"html_url":"https://github.com/openframeworks/openFrameworks/issues/772","assignee":null,"title":"ofBaseDraws draw(x, y) default","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-10-12T15:08:55Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":1888302,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T15:11:08Z","body":"Greetings,\r\n\r\nI downloaded OF v.007 on my laptop running Vista SP2. I compiled and ran some of the example apps like imageLoader example using VS2010. \r\n\r\nTextures seem to be broken. Images appear as white slabs.\r\n\r\nI tracked it down and found that disabling ArbTex, with ofDisableArbTex(), will get the textures working again. \r\n\r\nUsing ArbTex worked fine in OF v0.62 on the same machine.\r\n\r\nLaptop:\r\nHP Pavilion dv600 Notebook PC\r\nManufacturer: Hewlett-Packard\r\nOperating System: Windows Vista Home Premium, Service Pack 2 (6.0.6002)\r\nPhysical Memory:\t 2037 MB\r\nProcessor: Intel Core2 Duo PU T5250 @ 1.5 GHz, 1.5 GHz\r\n\r\nCompiler:\r\nMicrosoft Visual Studio 2010\r\nInstalled Version: Professional\r\nMicrosoft Visual C++ 2010\r\n\r\nGraphics:\r\nGraphics: Intel Graphics Media Accelerator Driver for Mobile\r\nGraphics: Driver Version: 7.14.10.1244\r\nDirectX Version:\t10.0\r\nOpenGL Version 1.5\r\n\r\nHere's a full report of OpenGL info from GLview:\r\n\r\n\r\nRenderer: Intel 965/963 Graphics Media Accelerator\r\nVendor: Intel\r\nMemory: 448 MB\r\nVersion: 1.5.0 - Build 7.14.10.1244\r\nShading language version: N/A\r\n\r\n\r\nMax texture size: 2048 x 2048\r\nMax texture coordinates: 8\r\nMax vertex texture image units: 0\r\nMax texture image units: 16\r\nMax geometry texture units: 0\r\nMax anisotropic filtering value: 2\r\nMax number of light sources: 16\r\nMax viewport size: 2048 x 2048\r\nMax uniform vertex components: 0\r\nMax uniform fragment components: 0\r\nMax geometry uniform components: 0\r\nMax varying floats: 0\r\nMax samples: 0\r\nMax draw buffers: 0\r\n\r\n\r\nExtensions: 56\r\n\r\nGL_3DFX_texture_compression_FXT1\r\nGL_ARB_depth_texture\r\nGL_ARB_fragment_program\r\nGL_ARB_multitexture\r\nGL_ARB_occlusion_query\r\nGL_ARB_point_parameters\r\nGL_ARB_shadow\r\nGL_ARB_texture_border_clamp\r\nGL_ARB_texture_compression\r\nGL_ARB_texture_cube_map\r\nGL_ARB_texture_env_add\r\nGL_ARB_texture_env_combine\r\nGL_ARB_texture_env_crossbar\r\nGL_ARB_texture_env_dot3\r\nGL_ARB_transpose_matrix\r\nGL_ARB_vertex_buffer_object\r\nGL_ARB_vertex_program\r\nGL_ARB_window_pos\r\nGL_EXT_abgr\r\nGL_EXT_bgra\r\nGL_EXT_blend_color\r\nGL_EXT_blend_func_separate\r\nGL_EXT_blend_minmax\r\nGL_EXT_blend_subtract\r\nGL_EXT_clip_volume_hint\r\nGL_EXT_compiled_vertex_array\r\nGL_EXT_draw_range_elements\r\nGL_EXT_fog_coord\r\nGL_EXT_multi_draw_arrays\r\nGL_EXT_packed_pixels\r\nGL_EXT_rescale_normal\r\nGL_EXT_secondary_color\r\nGL_EXT_separate_specular_color\r\nGL_EXT_shadow_funcs\r\nGL_EXT_stencil_two_side\r\nGL_EXT_stencil_wrap\r\nGL_EXT_texture3D\r\nGL_EXT_texture_compression_s3tc\r\nGL_EXT_texture_env_add\r\nGL_EXT_texture_env_combine\r\nGL_EXT_texture_filter_anisotropic\r\nGL_EXT_texture_lod_bias\r\nGL_IBM_texture_mirrored_repeat\r\nGL_NV_blend_square\r\nGL_NV_texgen_reflection\r\nGL_SGIS_generate_mipmap\r\nGL_SGIS_texture_edge_clamp\r\nGL_SGIS_texture_lod\r\nGL_WIN_swap_hint\r\nWGL_ARB_buffer_region\r\nWGL_ARB_extensions_string\r\nWGL_ARB_make_current_read\r\nWGL_ARB_pbuffer\r\nWGL_ARB_pixel_format\r\nWGL_EXT_extensions_string\r\nWGL_EXT_swap_control\r\n\r\nCore features\r\nv1.1 (100 % - 7/7)\r\nv1.2 (100 % - 8/8)\r\nv1.3 (100 % - 9/9)\r\nv1.4 (100 % - 15/15)\r\nv1.5 (100 % - 3/3)\r\nv2.0 (10 % - 1/10)\r\nv2.1 (0 % - 0/3)\r\nv3.0 (0 % - 0/23)\r\nv3.1 (0 % - 0/8)\r\nv3.2 (0 % - 0/10)\r\nv3.3 (0 % - 0/10)\r\nv4.0 (0 % - 0/14)\r\nv4.1 (0 % - 0/7)\r\nv4.2 (0 % - 0/12)\r\n\r\nOpenGL driver version check (Current: 1.5.0 - Build 7.14.10.1244, Latest known: ):\r\nLatest version of display drivers found\r\nAccording the database, you are running the latest display drivers for your video card.\r\n\r\nNo ICD registry entry\r\nThe current OpenGL driver doesn't expose the SOFTWARE/Microsoft/Windows (NT)/CurrentVersion/OpenGLDrivers registry entry. Unable to detect the driver version, driver revision name and filename.\r\n\r\nCompiled vertex array support\r\nThis feature improves OpenGL performance by using video memory to cache transformed vertices.\r\n\r\nMultitexture support\r\nThis feature accelerates complex rendering such as lightmaps or environment mapping.\r\n\r\nSecondary color support\r\nThis feature provides an alternate method of coloring specular highlights on polygons.\r\n\r\nS3TC compression support\r\nThis feature improves texture mapping performance in some applications by using lossy compression.\r\n\r\nTexture edge clamp support\r\nThis feature improves texturing quality by adding clamping control to edge texel filtering.\r\n\r\nVertex program support\r\nThis feature enables a wide variety of effects via flexible vertex programming (equivalent to DX8 Vertex Shader.)\r\n\r\nFragment program support\r\nThis feature enables a wide variety of effects via per pixel programming (equivalent to DX9 Pixel Shader.)\r\n\r\nTexture anisotropic filtering support\r\nThis feature improves the quality of texture mapping on oblique surfaces.\r\n\r\nOcclusion test support\r\nThis feature provides hardware accelerated culling for objects.\r\n\r\nNo OpenGL Shading Language support\r\nThis may break compatibility for applications using per pixel shading.\r\n\r\nNo Frame buffer object support\r\nThis may break compatibility for applications using render to texture functions.\r\n\r\nDisabling ArbTex will work for me, but I thought others might have the same problem with 007.\r\n\r\n- Rob","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/771","comments":3,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":771,"html_url":"https://github.com/openframeworks/openFrameworks/issues/771","assignee":null,"title":"Textures Didn't Work in 007 on my Laptop, Had to Disable ArbTex","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2011-10-11T13:02:28Z","state":"open","user":{"url":"https://api.github.com/users/robgonsalves","gravatar_id":"7c2e18ac17a0b907dbac36aaa6a9ec0f","login":"robgonsalves","avatar_url":"https://secure.gravatar.com/avatar/7c2e18ac17a0b907dbac36aaa6a9ec0f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1119357},"id":1874373,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-24T15:27:29Z","body":"When integrating openFrameworks into existing build systems, it would make things easier if this common include convention was followed.\r\n\r\ni.e. to include openFrameworks headers in my own build, because all the includes look like:\r\n\r\n#include \"ofMesh.h\"\r\n#include \"ofAppGlutWindow.h\"\r\n#include \"ofSerial.h\"\r\n\r\nI have to add all these paths to my include paths:\r\n\r\n\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/app\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/3d\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/communication\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/gl\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/graphics\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/utils\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/types\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/math\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/events\r\n\r\n\r\n\r\nIt is common to instead structure files like (in the case of openFrameworks):\r\n\r\noF/include/oF\r\noF/include/oF/app\r\noF/include/oF/3d\r\noF/include/oF/communication\r\noF/include/oF/gl\r\noF/include/oF/graphics\r\n...etc...\r\n\r\nand just write:\r\n\r\n#include \r\n#include \r\n\r\netc.\r\n\r\nI'm not sure if there is an argument to leave it like it is because it's easier for oF's demographic? But I would say teaching the some_lib/include/some_lib/ convention would help people use more C++.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/767","comments":2,"milestone":null,"number":767,"html_url":"https://github.com/openframeworks/openFrameworks/issues/767","assignee":null,"title":"#include instead of #include ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-10-09T03:58:30Z","state":"open","user":{"url":"https://api.github.com/users/gimlids","gravatar_id":"cc4cace34c61103f0624002a692820f7","login":"gimlids","avatar_url":"https://secure.gravatar.com/avatar/cc4cace34c61103f0624002a692820f7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":186277},"id":1854874,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-12T13:12:02Z","body":"\r\nat the moment, ofNode has a draw function that has awkwardly hard coded sizes: \r\n\r\nvirtual void customDraw() {\r\n\t\tofBox(10);\r\n\t\tofDrawAxis(20);\r\n\t}\r\n\r\nI'd like a draw(size) option. obviously I can extend ofNode and create my own functions, but if I just draw a node, I might want to adjust the size internally, as the \"10\" and \"20\" might not make any sense based on where I am drawing, for example here: \r\n\r\nhttp://imgur.com/idWPp\r\n\r\nlooks quite weird, but at 1/10th the size would look ok. \r\n\r\nas most other OF objects have draw(size) options, I think ofNodeShould have this too. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/766","comments":4,"milestone":null,"number":766,"html_url":"https://github.com/openframeworks/openFrameworks/issues/766","assignee":null,"title":"ofNode should have a draw(float size) option","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-08T09:38:46Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":1851779,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T23:51:04Z","body":"edit: originally this issue was about adding glu functions. now i realize any remaining ones need to be removed. but it's still relevant to have an ofScreenToWorld and ofWorldToScreen. \r\n\r\nthis would be really awesome. there is already some code in ofDrawBitmapString that's using gluProject, it would be good to clean it up.\r\n\r\nthe main issue is that glu is not on iOS, so we'd need to find/write our own implementation.\r\n\r\nhere's a first pass:\r\n\r\n\tGLdouble modelviewMatrix[16], projectionMatrix[16];\r\n\tGLint viewport[4];\r\n\tvoid updateProjectionState() {\r\n\t\tglGetDoublev(GL_MODELVIEW_MATRIX, modelviewMatrix);\r\n\t\tglGetDoublev(GL_PROJECTION_MATRIX, projectionMatrix);\r\n\t\tglGetIntegerv(GL_VIEWPORT, viewport);\r\n\t}\r\n\r\n\tofVec3f ofWorldToScreen(ofVec3f world) {\r\n\t\tupdateProjectionState();\r\n\t\tGLdouble x, y, z;\r\n\t\tgluProject(world.x, world.y, world.z, modelviewMatrix, projectionMatrix, viewport, &x, &y, &z);\r\n\t\tofVec3f screen(x, y, z);\r\n\t\tscreen.y = ofGetHeight() - screen.y;\r\n\t\treturn screen;\r\n\t}\r\n\r\n\tofVec3f ofScreenToWorld(ofVec3f screen) {\r\n\t\tupdateProjectionState();\r\n\t\tGLdouble x, y, z;\r\n\t\tscreen.y = ofGetHeight() - screen.y;\r\n\t\tgluUnProject(screen.x, screen.y, screen.z, modelviewMatrix, projectionMatrix, viewport, &x, &y, &z);\r\n\t\tofVec3f world(x, y, z);\r\n\t\treturn world;\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/765","comments":4,"milestone":null,"number":765,"html_url":"https://github.com/openframeworks/openFrameworks/issues/765","assignee":null,"title":"remove gluProject and gluUnProject, add screenToWorld, worldToScreen","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-07T09:46:06Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1841802,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T06:02:37Z","body":"I made an app using the preRelease version 007, I have a gui view with a bunch of buttons and sliders this view is 1/3 of the screen size and sits at the bottom, it is an Universal app that allows any orientation on the iPad and supports Portrait only for the iPhone / iPod Touch, here is my problem I need to allow touches to pass through the gui view for this I use **[ofxiPhoneGetGLView() addSubview:guiViewController.view];** the problem this method is that the gui view does not call the **willAnimateRotationToInterfaceOrientation()** at launch, and I get the following message in the console\r\n_**Action connections from <UIView: 0x5b88d0; frame = (20 0; 280 320); autoresize = LM+RM+H; layer = <CALayer: 0x5b7d30>> are not supported.**_\r\n\r\n if I use **[ofxiPhoneGetUIWindow() addSubview:guiViewController.view];** the **willAnimateRotationToInterfaceOrientation()** method works at launch as expected and the gui view adjust itself to the correct position and size\r\n\r\nAny help will be much appreciated","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/764","comments":1,"milestone":null,"number":764,"html_url":"https://github.com/openframeworks/openFrameworks/issues/764","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"Autoresize problem in iOS","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-10-05T20:35:04Z","state":"open","user":{"url":"https://api.github.com/users/nardove","gravatar_id":"8022cb5f529975afbc64cc9312008d8c","login":"nardove","avatar_url":"https://secure.gravatar.com/avatar/8022cb5f529975afbc64cc9312008d8c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":277690},"id":1827792,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-28T01:00:34Z","body":"ofxXmlXettings uses TinyXML which gives you lots of useful error info like what line the error is on as well as what it has trouble reading. This is super awesome and useful to people like me who always mistype xml here and there.\r\n\r\nCurrently ofxXmlSettings::loadFile only returns a bool and you're left to figure out if it's a path issue, bad xml formatting, etc. At the least, we should be able to grab an error string.\r\n\r\nHere's how to do it:\r\n
    \r\nstd::string Xml::getErrorString(const TiXmlDocument* xmlDoc)\r\n{\r\n    if(xmlDoc == NULL)\r\n        return \"\";\r\n\r\n    std::stringstream error;\r\n    error << \"line \" <<  xmlDoc->ErrorRow() << \", \" << (std::string) xmlDoc->ErrorDesc();\r\n    return error.str();\r\n}\r\n
    ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/760","comments":1,"milestone":null,"number":760,"html_url":"https://github.com/openframeworks/openFrameworks/issues/760","assignee":null,"title":"ofxXmlSettings does not print any useful error messages","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-09-28T00:53:09Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":1758237,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T03:48:47Z","body":"This would be the best thing ever. \r\n\r\nstring ipAddr = ofxXmlSettings::readValueFromFile(\"data.xml\", \"ip\", \"127.0.0.1\"); \r\n\r\nofxXmlSettings::saveValueToFile(\"data.xml\", \"ip\", ipAddr); ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/758","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":758,"html_url":"https://github.com/openframeworks/openFrameworks/issues/758","assignee":null,"title":"non ofxXmlSettings object read and write value","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-09-26T11:54:06Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":1738864,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-25T13:22:59Z","body":"in my opinion, it would make sense for ofPixels::allocate to initialize the new memory to 0. even for large images, i don't think this is such an expensive operation.\r\n\r\ni discovered that it is not initialized to 0 when i had a really weird bug -- some code that gave me different results depending on whether i loaded another image before allocating or not. i was expecting OF to act like opencv, which also sets new memory to 0. this would be in line with ofVec*, ofColor, and a few other things, which are all allocated to 0.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/757","comments":0,"milestone":null,"number":757,"html_url":"https://github.com/openframeworks/openFrameworks/issues/757","assignee":null,"title":"ofPixels::allocate should init new memory","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-09-25T13:22:59Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1733504,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-22T08:20:27Z","body":"void ofFbo::end() {\r\n\tunbind();\r\n\tif(ofGetGLRenderer()){\r\n\t\tofGetGLRenderer()->setCurrentFBO(NULL);\r\n\t}\r\n\tofPopView();\r\n}\r\n\r\nthis will go wrong if nested fbo as following\r\n\r\nfbo1.begin();\r\n...\r\n fbo2.begin();\r\n ...\r\n fbo2.end();\r\n...\r\nfbo1.end();\r\n\r\nso probably the current fbo must not be set NULL\r\n\r\nerror show's in\r\nvoid ofGLRenderer::viewport(float x, float y, float width, float height, bool invertY) {\r\n\tif(width == 0) width = ofGetWindowWidth();\r\n\tif(height == 0) height = ofGetWindowHeight();\r\n\r\n\tif (invertY){\r\n\t\tif(currentFbo){\r\n\t\t\ty = currentFbo->getHeight() - (y + height);\r\n\t\t}else{\r\n\t\t\ty = ofGetWindowHeight() - (y + height);\r\n\t\t}\r\n\t}\r\n\tglViewport(x, y, width, height);\t\r\n}\r\nthe 'y' will computing wrong when current height is wrong\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/754","comments":0,"milestone":null,"number":754,"html_url":"https://github.com/openframeworks/openFrameworks/issues/754","assignee":null,"title":"nested fbo causing currentFBO lost","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-09-22T08:20:27Z","state":"open","user":{"url":"https://api.github.com/users/liquidzym","gravatar_id":"166640c513e589c86d2de49c52258eb4","login":"liquidzym","avatar_url":"https://secure.gravatar.com/avatar/166640c513e589c86d2de49c52258eb4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":51957},"id":1708332,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:38:03Z","body":"I found an issue with readToPixels() on iOS that works as expected when compiled for OSX. \r\n\r\nInitialize an FBO:\r\n\r\n   ofFbo::Settings settings;\r\n    settings.width = 1024;\r\n    settings.height = 1024;\r\n    settings.internalformat = GL_RGB;\r\n    settings.numSamples = 0;\r\n    settings.useDepth = false;\r\n    settings.useStencil = false;\r\n    screenFBO.allocate(settings);\r\n\r\nthen draw into the FBO and attempt to retrieve the pixels:\r\n\r\n ofPixels pixels; \r\n screenFBO.readToPixels(pixels); \r\n\r\nThis gives me the ofPixels I'm expecting in OSX, in iOS the pixels aren't populated. I can draw the FBO and see it on screen, I just can't get the pixels out of the texture in iOS.\r\n\r\nThis seems to be related to this portion of readToPixels() from ofFbo.cpp:\r\n\r\n bind(); \r\n int format,type; \r\n ofGetGlFormatAndType(settings.internalformat,format,type); \r\n glReadPixels(0,0,settings.width, settings.height, format, GL_UNSIGNED_BYTE, pixels.getPixels()); \r\n unbind(); \r\n\r\nHas anyone experienced this issue – any fixes?\r\n\r\nThanks,\r\nSteve","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/753","comments":1,"milestone":null,"number":753,"html_url":"https://github.com/openframeworks/openFrameworks/issues/753","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"ofFbo readToPixels() in iOS","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-09-21T20:50:33Z","state":"open","user":{"url":"https://api.github.com/users/stephen-baker","gravatar_id":"96e9ae469240e57fc3ebeed6769c7016","login":"stephen-baker","avatar_url":"https://secure.gravatar.com/avatar/96e9ae469240e57fc3ebeed6769c7016?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1047836},"id":1704855,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-21T10:37:20Z","body":"I'm having a problem with creating an image out of ofFbo pixels with some image and fbo sizes\r\n\r\n```c++\r\nvoid testApp::setup(){\r\n\r\n ofSetLogLevel(OF_LOG_VERBOSE);\r\n\tofSetVerticalSync(false);\r\n ofBackground(34, 34, 34);\r\n\tofEnableAlphaBlending();\r\n\r\n ofSetWindowShape(1024, ofGetScreenHeight()-70);\r\n ofSetFrameRate(60);\r\n\r\n frame.loadImage(\"lay.png\");\r\n \r\n imageHeight = 1172;\r\n imageWidth = 1182;\r\n\r\n mergeFbo.allocate(imageWidth, imageHeight, GL_RGB);\r\n\r\n final.setImageType(OF_IMAGE_COLOR);\r\n\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::draw(){\r\n\r\n ofEnableAlphaBlending();\r\n\r\n mergeFbo.begin();\r\n\r\n ofClear(0, 0, 0, 1);\r\n\r\n frame.draw(0, 0);\r\n\r\n mergeFbo.end();\r\n\r\n\r\n mergeFbo.draw(200, 100, 100, 200);\r\n \r\n \r\n mergeFbo.readToPixels(pixels);\r\n final.setFromPixels(pixels);\r\n\r\n final.draw(0, 0);\r\n\r\n}\r\n```","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/752","comments":1,"milestone":null,"number":752,"html_url":"https://github.com/openframeworks/openFrameworks/issues/752","assignee":null,"title":"ofFbo (problems with certain image dimensions)","labels":[],"closed_at":null,"created_at":"2011-09-20T21:16:24Z","state":"open","user":{"url":"https://api.github.com/users/ammalgamma","gravatar_id":"96b69749f518cf6a2964b999bf29ee8e","login":"ammalgamma","avatar_url":"https://secure.gravatar.com/avatar/96b69749f518cf6a2964b999bf29ee8e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":517000},"id":1691874,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-19T09:04:12Z","body":"feature request for a more generic ofJoin() function that accepts vectors of all kinds of objects (float, int, ofVec2f, etc) rather than just string. anything that implements operator<<\r\n\r\nhere's an example using stl:\r\n\r\n\t#include \r\n\ttemplate \r\n\tstring ofJoin(vector& elements, string delimiter) {\r\n\t\tstringstream result;\r\n\t\tcopy(elements.begin(), elements.end(), ostream_iterator(result, delimiter.c_str()));\r\n\t\treturn result.str();\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/748","comments":3,"milestone":null,"number":748,"html_url":"https://github.com/openframeworks/openFrameworks/issues/748","assignee":null,"title":"more generic ofJoin","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-09-17T07:26:18Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1668066,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-21T17:22:14Z","body":"\r\nI'm looking into creating some new primitives for OF [1] and the polygon winding has me a bit confused.\r\n\r\nIf you take for instance \"graphicsExample\" an you add:\r\n\r\n```glEnable( GL_CULL_FACE );```\r\n\r\nSomewhere you will no longer see much drawn to screen.\r\n\r\nGL_CCW is the default FrontFace for OpenGL, but OF seems to be the opposite.\r\nhttp://www.khronos.org/opengles/sdk/docs/man/xhtml/glFrontFace.xml\r\n\r\nWhich is coolio of course, as long as we are consistent.\r\n\r\nOur options are either to throw a ```glFrontFace( GL_CW );``` in there somewhere OR re-write all the drawing to be consistent with OpenGL default, not sure what is the best in the long run.\r\n\r\nWhat say you all?\r\n\r\n/A\r\n\r\n\r\n[1] https://github.com/andreasmuller/openFrameworks/blob/develop-opengles2/libs/openFrameworks/3d/of3dPrimitives.h","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/745","comments":2,"milestone":null,"number":745,"html_url":"https://github.com/openframeworks/openFrameworks/issues/745","assignee":null,"title":"Polygon winding","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-09-14T13:50:48Z","state":"open","user":{"url":"https://api.github.com/users/andreasmuller","gravatar_id":"210831a04d36f1aa26413ecbdbd4b07c","login":"andreasmuller","avatar_url":"https://secure.gravatar.com/avatar/210831a04d36f1aa26413ecbdbd4b07c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":791114},"id":1643672,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=8 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4936'), ('content-length', '42586'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('Link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"1f6749765d79f3319834dfda4c27cd5e"'), ('date', 'Tue, 29 May 2012 19:27:17 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-03-17T16:52:58Z","body":"i think it would be wonderful if every OF example was named ofApp instead of testApp. especially because:\r\n\r\n\tclass ofApp : public ofBaseApp {\r\n\r\nis more natural than:\r\n\r\n\tclass testApp : public ofBaseApp {\r\n\r\ngiven the rest of OF naming conventions. and it would increase consistency with things like:\r\n\r\n\tofGetAppPtr();\r\n\tofAppBaseWindow\r\n\tofAppGlutWindow\r\n\r\nthis is a massive refactor that shouldn't be difficult, but should be done at the same time as something like a code formatting cleanup.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/744","comments":10,"milestone":null,"number":744,"html_url":"https://github.com/openframeworks/openFrameworks/issues/744","assignee":null,"title":"rename testApp to ofApp","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-09-14T07:02:36Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1641198,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-26T11:56:48Z","body":"calling ofEnableAlphaBlending() crashes my app on a machine with opengl version 1.1.0, because glBlendEquation(), introduced at opengl 1.3, needs to gracefully degrade. Here is the solution:\r\n\r\n
    \r\nvoid ofEnableAlphaBlending_slightlySafer(void){\r\n\tconst GLubyte * version = glGetString(GL_VERSION);\r\n\tint major, minor;\r\n\tsscanf((const char*)version, \"%i.%i\",&major, &minor);\r\n\r\n\tif(major > 1 || (major==1 && minor>=3)){\r\n\t\tofEnableAlphaBlending();\r\n\t}\t\r\n}\r\n
    ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/743","comments":1,"milestone":null,"number":743,"html_url":"https://github.com/openframeworks/openFrameworks/issues/743","assignee":null,"title":"seg fault on ofEnableAlphaBlending() -> glBlendEquation()","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-09-13T22:53:55Z","state":"open","user":{"url":"https://api.github.com/users/jtnimoy","gravatar_id":"153ba4a8df491692b717daad7a6030be","login":"jtnimoy","avatar_url":"https://secure.gravatar.com/avatar/153ba4a8df491692b717daad7a6030be?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":183796},"id":1639020,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:39:00Z","body":"In ofxiPhoneAppDelegate.mm in the setAnimationFrameInterval method should be changed from\r\n\r\n\r\nif (animating){\r\n [self stopAnimation];\r\n [self startAnimation];\r\n}\r\n\r\nto\r\n\r\nif (animating){\r\n [self stopAnimation];\r\n}\r\n [self startAnimation];\r\n\r\nThis will allow it start again if it's stopped.\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/738","comments":0,"milestone":null,"number":738,"html_url":"https://github.com/openframeworks/openFrameworks/issues/738","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"ofxiPhone - setting ofSetFrameRate(0) and then back to > 0 doesn't start again","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-09-12T21:23:04Z","state":"open","user":{"url":"https://api.github.com/users/cerupcat","gravatar_id":"91b3d4bfbbb99d840b096cde3af877bf","login":"cerupcat","avatar_url":"https://secure.gravatar.com/avatar/91b3d4bfbbb99d840b096cde3af877bf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":204151},"id":1628082,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T22:55:09Z","body":"it would be awesome to have lines drawn nicer when they are 1 thick and 2 make sharp edges. processing has some functions strokeCap() and strokeJoin() for setting this behavior, but it doesn't work with OPENGL mode. we could probably adapt a geometry shader to do some smart mitering for us on the GPU.\r\n\r\nprompted by the discussion here: http://forum.openframeworks.cc/index.php/topic,7278.0/topicseen.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/730","comments":1,"milestone":null,"number":730,"html_url":"https://github.com/openframeworks/openFrameworks/issues/730","assignee":null,"title":"nicer stroke mitering/joining and end caps","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-09-07T03:27:13Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1586262,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-05T15:39:58Z","body":"ofColor_:operator+= currently calls clamp() when it's done doing the +=\r\n\r\ni imagined one of the applications of ofFloatColor would be for averaging or summing ofColor, which normally requires non-saturation semantics for +=. i could also do a / or * every += operation to avoid overflow. this doesn't have to be a bug, but it should at least be documented clearly when we discuss ofColor.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/728","comments":1,"milestone":null,"number":728,"html_url":"https://github.com/openframeworks/openFrameworks/issues/728","assignee":null,"title":"ofColor and clamping","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-09-05T14:41:50Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1569364,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-05T10:17:48Z","body":"Hello\r\n\r\nI had a problem with gamma for my Carbon app in OSX 10.6, UI looked \"blotched\" with Pappis' help it was solved, here are details:\r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,6404.msg30519.html#msg30519\r\n\r\nHowever, the trick with HIWindowSetColorSpace does not work in OSX 10.7 Lion\r\nLooking for solutions again\r\n\r\nThanks\r\nTom\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/727","comments":0,"milestone":null,"number":727,"html_url":"https://github.com/openframeworks/openFrameworks/issues/727","assignee":null,"title":"OSX 10.7 Gamma Problem","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2011-09-05T10:17:48Z","state":"open","user":{"url":"https://api.github.com/users/Tommato","gravatar_id":"95bbfbd39116dffe06be4d816f322bf0","login":"Tommato","avatar_url":"https://secure.gravatar.com/avatar/95bbfbd39116dffe06be4d816f322bf0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1027082},"id":1566286,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-26T18:44:30Z","body":"Related forum post: http://forum.openframeworks.cc/index.php/topic,7053.0.html\r\n\r\nFrom what I understand, it's best to leave the mainThread for UIKit elements and move openGL and other things to another thread. Currently, if there's a lot of drawing then the UIKit elements are delayed and can even pause the update/draw methods entirely. Moving the drawing to it's own thread should help with this.\r\n\r\nI'm still testing, but this looks like it could be a good candidate for core integration. It has examples of threaded, single (what we currently use), and GCD (which I think is iOS 4.0 only) openGL implementation: https://github.com/Volcore/LimbicGL In my early tests, it does fix any pausing of the update/draw with the threaded example (haven't tried the others). I could use some help though trying to integrate this into OF properly.\r\n\r\nThe main example classes are here: https://github.com/Volcore/LimbicGL/tree/master/limbicgl/drivers\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/721","comments":0,"milestone":null,"number":721,"html_url":"https://github.com/openframeworks/openFrameworks/issues/721","assignee":null,"title":"ofxiPhone - Move openGL to its own thread","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-08-26T18:43:09Z","state":"open","user":{"url":"https://api.github.com/users/cerupcat","gravatar_id":"91b3d4bfbbb99d840b096cde3af877bf","login":"cerupcat","avatar_url":"https://secure.gravatar.com/avatar/91b3d4bfbbb99d840b096cde3af877bf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":204151},"id":1497330,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:39:39Z","body":"The libraries linked in 007 as well as the new AVFoundationVideoPlayer is not compatible with 3.x devices and won't build.\r\n\r\nAfter further exploring, I believe these are the steps to get things running on 3.x devices.\r\n\r\n1) In Xcode, Click on target -> application name\r\n2) In the File Name window, set AVFoundation, CoreMedia, and CoreVideo from role \"required\" to \"weak\". They need to be weak linked since they're only available in iOS 4+.\r\n3) In ofxiPhone src folder, AVFoundationVideoPlayer.mm uses CMBlockBufferRef and that is only available in iOS4. This means, this function should be commented out (sorry - avfoundationvideoplayer won't run on iOS4 unless the blocker is changed). Either that or you can comment ouf AVFoundationVideoPlayer from being included in OF.\r\n4) Clean all targets and rebuild","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/720","comments":0,"milestone":null,"number":720,"html_url":"https://github.com/openframeworks/openFrameworks/issues/720","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"007 ofxiPhone not compatible with 3.x devices ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-08-26T18:38:38Z","state":"open","user":{"url":"https://api.github.com/users/cerupcat","gravatar_id":"91b3d4bfbbb99d840b096cde3af877bf","login":"cerupcat","avatar_url":"https://secure.gravatar.com/avatar/91b3d4bfbbb99d840b096cde3af877bf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":204151},"id":1497291,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-22T17:38:49Z","body":"\r\nbased on this comment, \r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,5319.msg33381.html#msg33381\r\n\r\nI wonder if we can be smarter in endShape() / ofPath::tessellate() and look for simple usage (3 or 4 points, etc) before tessellating, or if the slow down is just based on the use of the ofPath object. \r\n\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/719","comments":1,"milestone":null,"number":719,"html_url":"https://github.com/openframeworks/openFrameworks/issues/719","assignee":null,"title":"optimize ofEndShape() to deal with simple shapes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-08-22T16:56:27Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":1459353,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-22T16:02:30Z","body":"change\r\n\r\nfloat ofCamera::getImagePlaneDistance(ofRectangle viewport) const {\r\n\treturn getPosition().length(); //viewport.height / (2.0f * tanf(PI * fov / 360.0f));\r\n}\r\n\r\nold in comment\r\n\r\ncurrent system is abitrary\r\nsuggest new system is more sensible\r\n(i'm always working in normalised coords)\r\npls check in your life before changing :)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/717","comments":0,"milestone":null,"number":717,"html_url":"https://github.com/openframeworks/openFrameworks/issues/717","assignee":null,"title":"suggest new calc clip planes routine","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-08-22T16:02:30Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":1458979,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-22T14:11:34Z","body":"http://forum.openframeworks.cc/index.php/topic,5222.msg33366.html#msg33366\r\n\r\nthere also seem to be a memory leak, when deleting a ofQuicktimeVideoPlayer","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/716","comments":0,"milestone":null,"number":716,"html_url":"https://github.com/openframeworks/openFrameworks/issues/716","assignee":null,"title":"problems with stop/play in quicktime videoPlayer","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-08-22T14:11:34Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":1458044,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-16T13:39:49Z","body":"Here\r\nhttps://github.com/openframeworks/openFrameworks/issues/653\r\nI downloaded latest version but in still crashes on my old video card Nvidia GeForce Go 7200.\r\nAny idea why?\r\nofxFBOTexture works, but i got some trobles in pixel format there. \r\nofxFBOTexture uses function with postfix EXT sometimes? ofFbo without it.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/711","comments":5,"milestone":null,"number":711,"html_url":"https://github.com/openframeworks/openFrameworks/issues/711","assignee":null,"title":"Problem with ofFbo. Crashes on allocate.There were the same issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-08-16T10:21:29Z","state":"open","user":{"url":"https://api.github.com/users/IonRod","gravatar_id":"cf3cb346817dd8a9f8327d1af13c3d46","login":"IonRod","avatar_url":"https://secure.gravatar.com/avatar/cf3cb346817dd8a9f8327d1af13c3d46?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":886012},"id":1414013,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-15T14:23:47Z","body":"i'm noticing this on osx 10.6. all 8-bit images are correct, but somehow i didn't notice about unsigned short and float until now!\r\n\r\ni'm super busy atm, but i've kind of been maintaining the unsigned short/float loading so i'll look into this if someone else doesn't get to it first.\r\n\r\nmeanwhile it would be good to see if it's the same on windows or not. for anyone interested in testing, please check devApps/AdvancedImageLoading and compare the results of the app to the .exr opened in photoshop.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/710","comments":0,"milestone":null,"number":710,"html_url":"https://github.com/openframeworks/openFrameworks/issues/710","assignee":null,"title":"16-bit and 32-bit images are red/blue swapped","labels":[],"closed_at":null,"created_at":"2011-08-15T14:23:47Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1407813,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-07T12:19:07Z","body":"in the past there has been ofxQtVideoSaver and a few others. i think this is a really hard problem because it basically needs to be written for each platform, but something that should eventually be solved.\r\n\r\ntwo major use cases i know are:\r\n\r\n- capturing and saving simultaneously, for long streams\r\n- capturing a quick burst of video then saving it to disk\r\n\r\nwhich would might be handled a little differently.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/702","comments":1,"milestone":null,"number":702,"html_url":"https://github.com/openframeworks/openFrameworks/issues/702","assignee":null,"title":"cross platform video saving (ofVideoSaver?)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-08-07T03:23:38Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1359729,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-06T20:20:03Z","body":"Hi!\r\n\r\nI have problems even getting the ofxOsc Send/Receive examples talking on Ubuntu 11.04 64bit. \r\nThey compile without problems, but sometimes when I run them, communication fails somewhere along the road - input events are not shown in the receiver app. Sometimes it does not work at all.\r\n\r\nThis works all flawlessly on 32bit Ubuntu 11.04. See http://forum.openframeworks.cc/index.php/topic,6918.0.html for more details.\r\n\r\nCan anyone reproduce these problems? Any tips? How could I debug this?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/701","comments":3,"milestone":null,"number":701,"html_url":"https://github.com/openframeworks/openFrameworks/issues/701","assignee":null,"title":"ofxOsc does not seem to work on 64bit Ubuntu","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2011-08-06T19:14:37Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":1358688,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-05T03:06:25Z","body":"very simple but helpful feature request. e.g.,\r\n\r\nofBuffer::operator=(const ofBuffer& mom) {\r\n set(mom.getBinaryBuffer(), mom.size());\r\n}\r\n\r\nthis goes along with the general \"what does the equal operator mean\" debate/discussion :)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/700","comments":0,"milestone":null,"number":700,"html_url":"https://github.com/openframeworks/openFrameworks/issues/700","assignee":null,"title":"ofBuffer with overloaded = operator","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-08-05T03:06:25Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1349012,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T15:11:28Z","body":"this seems like an api inconsistency to me: i feel like ofTexture::loadData() is similar to ofImage::setFromPixels(), but setFromPixels() will allocate space if necessary while loadData() just prints an error if the data is larger than the allocated space.\r\n\r\ni think auto-allocation would be nice, but i might just be misunderstanding/making a false comparison here.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/699","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":699,"html_url":"https://github.com/openframeworks/openFrameworks/issues/699","assignee":null,"title":"loadData() does not allocate as necessary","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-08-04T10:29:57Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1343463,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T15:12:03Z","body":"from: http://forum.openframeworks.cc/index.php/topic,6952.msg32509.html\r\n\r\n\r\n\r\ngetBmpFromPixels() crashed repeatedly when I tried to rescale grayscale Images of size 3026*2048.\r\n\r\nIt's because memcpy overshoots the src pixel array because dstStride can be larger than srcStride.\r\n\r\nIn ofImage.cpp \r\n\r\ngetBmpFromPixels()\r\n\r\naround line 119, I believe, it should read:\r\n\r\nCode:\r\nview plaincopy to clipboardprint?\r\n... \r\n int srcStride = width * pix.getBytesPerPixel(); \r\n int dstStride = FreeImage_GetPitch(bmp); \r\n unsigned char* src = (unsigned char*) pixels; \r\n unsigned char* dst = bmpBits; \r\n for(int i = 0; i < (int)height; i++) { \r\n // memcpy(dst, src, dstStride); \r\n memcpy(dst, src, srcStride); // did overshoot with e.g. grayscale img of size 3026*2048 \r\n src += srcStride; \r\n dst += dstStride; \r\n } \r\n... \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/698","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":698,"html_url":"https://github.com/openframeworks/openFrameworks/issues/698","assignee":null,"title":"getBmpFromPixels memcpy issue / ofImage::resize issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-08-03T18:15:55Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":1339116,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-21T15:34:07Z","body":"I'm trying to build ofxPd in Visual Studio and running into multiple define issues related to the videoinput lib, namely static `verbose`: https://github.com/openframeworks/openFrameworks/blob/master/libs/videoInput/include/videoInput.h#L115\r\n\r\nCouldn't this variable as well as `comInitCount` be moved to the implementation files? or at least in a header hidden from the global namespace? At the least, `verbose` could be renamed to something not so common ...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/697","comments":1,"milestone":null,"number":697,"html_url":"https://github.com/openframeworks/openFrameworks/issues/697","assignee":null,"title":"videoinput lib global statics","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-08-03T02:27:52Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":1334657,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T00:53:30Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/685","comments":3,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":685,"html_url":"https://github.com/openframeworks/openFrameworks/issues/685","assignee":null,"title":"update shader example to work on ati.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-07-28T15:57:58Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":1303812,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:40:42Z","body":"It is very annoying if you can not disable autocorrections in ofxiPhoneKeyboard. Specially for creative uses of this class. I add code how to add this feature.\r\n\r\n[CODE] Add to ofxiPhoneKeyboard class:\r\n\r\n- (void)disableAutoCorrection;\r\n- (void)enableAutoCorrection;\r\n\r\n//--------------------------------------------------------------\r\nvoid ofxiPhoneKeyboard::disableAutoCorrection()\r\n{\r\n [keyboard disableAutoCorrection];\r\n}\r\n//--------------------------------------------------------------\r\nvoid ofxiPhoneKeyboard::enableAutoCorrection()\r\n{\r\n [keyboard enableAutoCorrection];\r\n}\r\n\r\n- (void)disableAutoCorrection\r\n{\r\n _textField.autocorrectionType = UITextAutocorrectionTypeNo;\r\n}\r\n\r\n- (void)enableAutoCorrection\r\n{\r\n _textField.autocorrectionType = UITextAutocorrectionTypeYes;\r\n}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/684","comments":0,"milestone":null,"number":684,"html_url":"https://github.com/openframeworks/openFrameworks/issues/684","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"ofxiPhoneKeyboard should have disable/enable methods for auto correction","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-07-28T12:12:52Z","state":"open","user":{"url":"https://api.github.com/users/mcanet","gravatar_id":"e4d2b0151a843dde7b815b848170d6e9","login":"mcanet","avatar_url":"https://secure.gravatar.com/avatar/e4d2b0151a843dde7b815b848170d6e9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":308759},"id":1302375,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-24T18:26:54Z","body":"I think there's a bug in ofQuaternion in of007. When i use ofNode's setOrientation() or ofNode setRoll I can rotate my ofNode object around the Z axis. However when I try to obtain the current rotation around the Z axis it will always give a value like -180, 0 or 180.\r\n\r\nRick","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/679","comments":0,"milestone":null,"number":679,"html_url":"https://github.com/openframeworks/openFrameworks/issues/679","assignee":null,"title":"possible bug in getEuler / getOrientation / getRoll","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-24T18:26:54Z","state":"open","user":{"url":"https://api.github.com/users/companje","gravatar_id":"30a7e135fe77636519d74d129c60e156","login":"companje","avatar_url":"https://secure.gravatar.com/avatar/30a7e135fe77636519d74d129c60e156?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":156066},"id":1278252,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T22:13:24Z","body":"I know that with the 007 release ofxDirList addon is deprecated and instead we are encouraged to use ofDirectory to achiece the same kind of functionality. In fact the are so similar that is possible to use them interchangeably. To do that transparently you changed the ofxDirList.h so that it made a typedef to point to ofDirectory (and will probably remove it completely someday).\r\n\r\nThe contents of ofxDirList.h are the following:\r\n---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------\r\n#pragma once\r\n\r\n#include \"ofFileUtils.h\"\r\n\r\n#warning ofxDirList has been deprecated. \r\n#warning Remove all references to ofxDirList.h and use ofDirectory instead.\r\ntypedef ofDirectory ofxDirList;\r\n---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------\r\nSo far so good. The problem is that you use the #warning preprocessing directive is non-standard and unsupported on Visual C++ compiler. In fact it gives me an error while building a project that I ported from 0062 version that used ofxDirList. To make it work I had to comment the two #warning lines. \r\n\r\nI suggest that you remove the #warning directives and replace it with something else that works across all compilers. I know that the #warning directive works on GCC and MinGW but not on VC++ so if you are going to support all those compilers (like you do) you better have all of your code working across all of them.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/676","comments":2,"milestone":null,"number":676,"html_url":"https://github.com/openframeworks/openFrameworks/issues/676","assignee":null,"title":"ofxDirList deprecated #warning directive preprocessor Visual Studio 2010","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-23T01:19:54Z","state":"open","user":{"url":"https://api.github.com/users/petersaints","gravatar_id":"03848790c2ebb8e5edbe130e8ce76f1d","login":"petersaints","avatar_url":"https://secure.gravatar.com/avatar/03848790c2ebb8e5edbe130e8ce76f1d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157810},"id":1273716,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-21T11:29:24Z","body":"changed this in dirListExample\r\n\r\n ofFile testfile;\r\n\t// you can now iterate through the files and load them into the ofImage vector\r\n\tfor(int i = 0; i < (int)dir.size(); i++){\r\n\t\timages[i].loadImage(dir.getPath(i));\r\n\t\ttestfile.open(dir.getPath(i));\r\n\t\tcout << testfile.isFile() << endl; //THIS LINE SEGFAULTS ON WIN7\r\n testfile.close();\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/671","comments":0,"milestone":null,"number":671,"html_url":"https://github.com/openframeworks/openFrameworks/issues/671","assignee":null,"title":"isFile() segfaults on win7","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-07-21T11:27:16Z","state":"open","user":{"url":"https://api.github.com/users/benben","gravatar_id":"614a4e493d7c353296519bba720e77c5","login":"benben","avatar_url":"https://secure.gravatar.com/avatar/614a4e493d7c353296519bba720e77c5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":124513},"id":1262459,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-21T10:39:29Z","body":"just added output to all events in an emptyExample on windows7 64bit.\r\n\r\nif im clicking, the following output occurs even if the mouse is not moved\r\n\r\n mousePressed\r\n mouseReleased\r\n mouseMoved","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/670","comments":2,"milestone":null,"number":670,"html_url":"https://github.com/openframeworks/openFrameworks/issues/670","assignee":null,"title":"mouseReleased fires mouseMoved too (win7)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-07-21T09:34:52Z","state":"open","user":{"url":"https://api.github.com/users/benben","gravatar_id":"614a4e493d7c353296519bba720e77c5","login":"benben","avatar_url":"https://secure.gravatar.com/avatar/614a4e493d7c353296519bba720e77c5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":124513},"id":1261982,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=9 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4935'), ('content-length', '45016'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('Link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"c403779e3346f56dddb655b8bb57d5ae"'), ('date', 'Tue, 29 May 2012 19:27:18 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-03-09T06:11:12Z","body":"I'm curious why the movieplayer uses AvAsset instead of AvPlayer which seems better suited for OF needs ( seeking / looping etc ) \r\n\r\nhttp://developer.apple.com/library/ios/#documentation/AVFoundation/Reference/AVPlayer_Class/Reference/Reference.html\r\n\r\nhttp://stackoverflow.com/questions/5361145/looping-a-video-with-avfoundation-avplayer\r\n\r\n\r\nI think you can get init a player with an AVAsset:\r\nhttp://developer.apple.com/library/ios/#documentation/AVFoundation/Reference/AVPlayer_Class/Reference/Reference.html%23//apple_ref/occ/instm/AVPlayer/initWithPlayerItem:\r\nhttp://developer.apple.com/library/ios/documentation/AVFoundation/Reference/AVPlayerItem_Class/Reference/Reference.html#//apple_ref/occ/instm/AVPlayerItem/initWithAsset:\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/666","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":666,"html_url":"https://github.com/openframeworks/openFrameworks/issues/666","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"iphone video player should use AVPlayer ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-07-20T20:01:04Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":1258863,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-01-08T04:45:01Z","body":"In some cases, when modifier keys are used, the pressedKeys set will accumulate keys.\r\n\r\nThis happens because \"modifier-up\" messages are not sent in the same way as normal and special keys.\r\n\r\nTo test, watch the size of the pressedKeys:\r\n\r\n cout << pressedKeys.size() << \" num pressed keys \" << endl;\r\n\r\nPress a modifier key and a normal key -- say ctrl-a. If the 'a' is lifted first, then the modified-a key int is removed from the pressedKeys set. If CTRL is released before the 'a', then the non-modified-a key-up int is sent, and it is not erased from the pressedKeys set. If this is repeated with different modifier+key downs / ups the accumulation occurs.\r\n\r\nUltimately, there needs to be better handling of modifier keys. Perhaps there is a way to use the modifier masks keep track of modifier keys with a call to glutGetModifiers() in the keyboard_cb and keyboard_up_cb static methods?\r\n\r\nIt looks like progress has been made toward this in ofConstants.h\r\n\r\n\t#define OF_KEY_CTRL\t\t\t0x0200\r\n\t#define OF_KEY_ALT\t\t\t0x0300\r\n\t#define OF_KEY_SHIFT\t\t0x0400\r\n\r\nBut it seems to have stopped there.\r\n\r\nI'm happy to work on this -- any suggestions on a strategy? Perhaps this is already being addressed of 007?\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/652","comments":5,"milestone":null,"number":652,"html_url":"https://github.com/openframeworks/openFrameworks/issues/652","assignee":null,"title":"ofAppGlutWindow/ofEvents: pressedKeys accumulate in special cases","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-15T18:49:46Z","state":"open","user":{"url":"https://api.github.com/users/bakercp","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","login":"bakercp","avatar_url":"https://secure.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":300484},"id":1231959,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-20T19:04:31Z","body":"If you use those these two together the 3d objects get an unwanted offset\r\n\r\ncode:\r\n\r\n```c++\r\nvoid testApp::draw()\r\n{\r\n \r\n cam.begin();\r\n ofPushMatrix();\r\n ofSetColor(255,255,255);\r\n ofBox(200);\r\n ofPopMatrix();\r\n cam.end();\r\n \r\n \r\n fbo.begin();\r\n cam.begin();\r\n \r\n ofClear(0);\r\n ofPushMatrix();\r\n ofSetColor(0,0,0);\r\n ofBox(200);\r\n ofPopMatrix();\r\n \r\n cam.end();\r\n fbo.end();\r\n \r\n \r\n glPushMatrix();\r\n //ofTranslate(0,6,0); <--- now i'm using something like this to \"repair\" it\r\n ofSetColor(255,255,255,255);\r\n glScalef(1,-1,1);\r\n fbo.draw(0,- ofGetHeight());\r\n glPopMatrix();\r\n \r\n \r\n \r\n}\r\n```\r\n\r\nNormally the two boxes should overlap completely, instead it looks like this:\r\n\r\n![screen1](http://i51.tinypic.com/11cfi1l.png)\r\n![screen2](http://i55.tinypic.com/2ewnv5i.png)\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/651","comments":4,"milestone":null,"number":651,"html_url":"https://github.com/openframeworks/openFrameworks/issues/651","assignee":null,"title":"ofFBO + ofCamera = unwanted offset","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2011-07-15T13:21:44Z","state":"open","user":{"url":"https://api.github.com/users/toxin20","gravatar_id":"29a3b85e704ec06a72df8897a726920e","login":"toxin20","avatar_url":"https://secure.gravatar.com/avatar/29a3b85e704ec06a72df8897a726920e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":123776},"id":1230184,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-19T00:31:38Z","body":"\r\nA tiny issue I spotted:\r\n\r\nofQuaternion.cpp, line 14:\r\n\r\n```C++\r\n/// Set the elements of the Quat to represent a rotation of angle\r\n/// (radians) around the axis (x,y,z)\r\nvoid ofQuaternion::makeRotate( float angle, float x, float y, float z ) {\r\n\tangle = ofDegToRad(angle);\r\n```\r\n\r\nof**X**Quaternion::makeRotate used to take radians, only noticed as I was moving some old code over, otherwise I would have just looked at the code in ofQuaternion.cpp to see the angle type. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/646","comments":1,"milestone":null,"number":646,"html_url":"https://github.com/openframeworks/openFrameworks/issues/646","assignee":null,"title":"ofQuaternion::makeRotate takes degrees, used to take radians, documentation says radians","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"closed_at":null,"created_at":"2011-07-13T15:18:04Z","state":"open","user":{"url":"https://api.github.com/users/andreasmuller","gravatar_id":"210831a04d36f1aa26413ecbdbd4b07c","login":"andreasmuller","avatar_url":"https://secure.gravatar.com/avatar/210831a04d36f1aa26413ecbdbd4b07c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":791114},"id":1216274,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-12T16:05:23Z","body":"^^^^\r\nTried on Mac:\r\nhttps://gist.github.com/1078282","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/645","comments":0,"milestone":null,"number":645,"html_url":"https://github.com/openframeworks/openFrameworks/issues/645","assignee":null,"title":"ofVideoGrabber::listDevices() does not list devices when initGrabber not called","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-12T16:05:23Z","state":"open","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":358809},"id":1209436,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-16T04:21:18Z","body":"https://gist.github.com/1077933\r\n\r\nsaving images converted to 8PP using ofImage::setImageType(OF_IMAGE_GRAYSCALE) and then calling saveImage() save blank on windows, but works on OS X\r\n\r\ntraced the issue down to the call to FreeImage_Save(), both seem to be the same. not sure what the problem is\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/643","comments":1,"milestone":null,"number":643,"html_url":"https://github.com/openframeworks/openFrameworks/issues/643","assignee":null,"title":"8 BPP (grayscale) ofImage saves blank on Windows, fine on os x","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-07-12T13:05:25Z","state":"open","user":{"url":"https://api.github.com/users/obviousjim","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","login":"obviousjim","avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":321434},"id":1208289,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:42:09Z","body":"Forum issue: http://forum.openframeworks.cc/index.php/topic,6316.new.html#new\r\n\r\nThis may be related to using CADisplayLink. When openGL seems to be pushed a bit, touch events seem to drop or are delayed. When using NSTimer in ofxiPhoneAppDelegate instead of CADisplayLink this does not occur.\r\n\r\nIt may be beneficial for developers to set whether they'd like to use CADisplayLink (if available) vs NSTimer for rendering or not.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/642","comments":0,"milestone":null,"number":642,"html_url":"https://github.com/openframeworks/openFrameworks/issues/642","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"ofxiPhone: Possible delayed input/touch event issue ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-12T02:46:23Z","state":"open","user":{"url":"https://api.github.com/users/cerupcat","gravatar_id":"91b3d4bfbbb99d840b096cde3af877bf","login":"cerupcat","avatar_url":"https://secure.gravatar.com/avatar/91b3d4bfbbb99d840b096cde3af877bf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":204151},"id":1205789,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-12T13:03:00Z","body":"See title and test code:\r\nhttps://gist.github.com/952bd35591dc0cb23f61","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/631","comments":1,"milestone":null,"number":631,"html_url":"https://github.com/openframeworks/openFrameworks/issues/631","assignee":null,"title":"ofImage::saveImage() - saving from png to gif creates grayscale image","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-07T21:37:47Z","state":"open","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":358809},"id":1185346,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T03:48:47Z","body":"Tried to load a text file over https but I got this message:\r\n\r\n``400 The plain HTTP request was sent to HTTPS port\r\n

    400 Bad Request

    The plain HTTP request was sent to HTTPS port

    nginx/1.0.4
    ``\r\n\r\n\r\n\r\nUsing this code\r\n``ofHttpResponse resp = ofLoadURL(\"https://raw.github.com/openframeworks/openFrameworks/6af1dc980f6d93d84b3bf8fdc1b6435697be9ed9/readme.txt\");``\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/623","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":623,"html_url":"https://github.com/openframeworks/openFrameworks/issues/623","assignee":null,"title":"ofLoadURL() does not work with httpS","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-06T18:12:06Z","state":"open","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":358809},"id":1175654,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-06T18:09:03Z","body":"Setting the position of an ofEasyCam instance in ofSetup() does not work. What does work in testApp::setup() is calling ofEasyCam::setDistance(). When calling ofEasyCam::setPosition() in for example testApp::draw() does work.\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/618","comments":0,"milestone":null,"number":618,"html_url":"https://github.com/openframeworks/openFrameworks/issues/618","assignee":null,"title":"call ofEasyCam::setPosition in testApp::setup() is forgotten","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-05T18:23:34Z","state":"open","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":358809},"id":1169032,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-06-27T18:30:26Z","body":"Currently there doesn't appear to be any way to do this other than by hand\r\nAlso it would be highly useful ofMatrix3x3 in general had equivalent accessors to ofMatrix4x4","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/612","comments":0,"milestone":null,"number":612,"html_url":"https://github.com/openframeworks/openFrameworks/issues/612","assignee":null,"title":"need conversion ofMatrix3x3<->ofMatrix4x4","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-06-27T18:30:26Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":1124068,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-04T10:10:06Z","body":"Need some way of applying current ofMatrix4x4 to the scene without going down to gl calls","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/605","comments":4,"milestone":null,"number":605,"html_url":"https://github.com/openframeworks/openFrameworks/issues/605","assignee":null,"title":"function wrapping glMultMatrixf in ofMatrix4x4","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-06-16T13:13:35Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":1067300,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:42:59Z","body":"Here's a function that will do it...\r\n\r\nvoid ofxiPhoneLaunchBrowser(string url) {\r\n\t[[UIApplication sharedApplication] openURL:[NSURL URLWithString:ofxStringToNSString(url)]];\r\n}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/603","comments":0,"milestone":null,"number":603,"html_url":"https://github.com/openframeworks/openFrameworks/issues/603","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"ofLaunchBrowser() for iPhone not implemented","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-06-13T13:03:15Z","state":"open","user":{"url":"https://api.github.com/users/mazbox","gravatar_id":"3cfb19dbce7926933555ac9755a86ca8","login":"mazbox","avatar_url":"https://secure.gravatar.com/avatar/3cfb19dbce7926933555ac9755a86ca8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":194121},"id":1048971,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T21:38:43Z","body":"OF: OF_LOG_ERROR: ofxNetwork:/addons/ofxNetwork/src/ofxTCPManager.cpp: 157 ECONNREFUSED: the server has actively refused to establish the connection\r\n\r\nThis error happens in every use of ofxTCPClient.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/599","comments":1,"milestone":null,"number":599,"html_url":"https://github.com/openframeworks/openFrameworks/issues/599","assignee":null,"title":"TCPManager Consistent Error","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-06-08T23:02:28Z","state":"open","user":{"url":"https://api.github.com/users/tomorrowevening","gravatar_id":"f92a8e912b59171abde0354e2f212c12","login":"tomorrowevening","avatar_url":"https://secure.gravatar.com/avatar/f92a8e912b59171abde0354e2f212c12?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":626143},"id":1027184,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-06-01T13:56:17Z","body":"http://forum.openframeworks.cc/index.php/topic,6370.0.html\r\n\r\nwhen they are not power of 2 perhaps?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/591","comments":0,"milestone":null,"number":591,"html_url":"https://github.com/openframeworks/openFrameworks/issues/591","assignee":null,"title":"problem with ofImage resize","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-06-01T13:56:17Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":984564,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-05-31T12:33:31Z","body":"### ofxNetworkUtils.h - issue 1\n\nThe default message should print out `err` instead of `errno`\n\n```\n\tdefault:\n\t\tofLog(OF_LOG_ERROR,\"ofxNetwork:\"+file+\": \" +line+\" unknown error: \" + ofToString(errno) + \" see errno.h for description of the error\");\n\t\tbreak;\n```\n\nto:\n\n```\n\tdefault:\n\t\tofLog(OF_LOG_ERROR,\"ofxNetwork:\"+file+\": \" +line+\" unknown error: \" + ofToString(err) + \" see errno.h for description of the error\");\n\t\tbreak;\n```\n\nSince errno would not be set on windows machines.\n\n\n\n\n### ofxTCPManager.cpp - issue 2\n\nIn the `Receive` method of the `ofxTCPManager` the function will always return -1 when checking for data and there is no new data and the TCPServer has been set to non-blocking.\n\nAfter changing the code in issue 1 mentioned above i got:\n\n`ofxNetwork:addons\\ofxNetwork\\src\\ofxTCPManager.cpp: 304 unknown error: 10035 see errno.h for description of the error`\n\ninstead of `error: 0` when `errno`was used.\n\nWhich on windows is the [`WSAEWOULDBLOCK`](http://msdn.microsoft.com/en-us/library/ms740668.aspx) or `EWOULDBLOCK` as defined in `ofxNetworkUtils`\n\nSo someplace in the code there should be a mechanism to check if the code is client is non-blocking and ignore the error.\nThis is `windows` only but still could be as an additional parameter to the `Receive` method. Or add it as an `switch case` for the `EWOULDBLOCK` in the `ofxNetworkUtils` and ignore the ouput and comment it.\n\nI just noticed this above when i started usin an application that i was developing on my mac an using it on windows machines this code would appear too often.\n\nSo as stated above my solution is that i added:\n\n```\n #ifdef TARGET_WIN32 // otherwise EAGAIN & EWOULDBLOCK will create a \"duplicate case value\" on Non windows\n\tcase EWOULDBLOCK: \n\t\t// \tofLog(OF_LOG_VERBOSE,\"ofxNetwork:\"+file+\": \" +line+\" EWOULDBLOCK: perhaps non-blocking\");\n\t\tbreak;\n #endif\n```\ncode and ignoring the output.\n\n\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/590","comments":0,"milestone":null,"number":590,"html_url":"https://github.com/openframeworks/openFrameworks/issues/590","assignee":null,"title":"ofxTCPManager.receive() - EWOULDBLOCK on Windows","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-05-31T11:31:08Z","state":"open","user":{"url":"https://api.github.com/users/cristobal","gravatar_id":"c7f941e0c10696b758ae8792714a6744","login":"cristobal","avatar_url":"https://secure.gravatar.com/avatar/c7f941e0c10696b758ae8792714a6744?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":155505},"id":978212,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-05-31T02:06:22Z","body":"setFromPixels has two forms: one that takes an int channels, another that takes ofImageType.\r\n\r\nsetFromExternalPixels only has one form: it takes an int channels.\r\n\r\nin my opinion, it makes sense to change them both to ofImageType only, because the int channels is susceptible to accidentally passing an ofImageType to it.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/589","comments":0,"milestone":null,"number":589,"html_url":"https://github.com/openframeworks/openFrameworks/issues/589","assignee":null,"title":"setFromPixels vs setFromExternalPixels","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-05-31T02:06:22Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":976610,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T21:54:02Z","body":"ofImage_ should be ofBaseImage, likewise with ofPixels_\n\nin general, X_ style classes should be BaseX\n\ntemplated functions that are just sitting around should also have descriptive template names.\n\nit's important for this to happen before 007, otherwise code will be written against ofImage\\_<T> etc.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/582","comments":5,"milestone":null,"number":582,"html_url":"https://github.com/openframeworks/openFrameworks/issues/582","assignee":null,"title":"templated code needs to be more readable","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-05-23T17:46:28Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":942647,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-31T13:42:28Z","body":"just need to add the line\r\n\r\n\t\t\tcase 230400: cfsetispeed(&options,B230400);\r\n\t\t\t\tcfsetospeed(&options,B230400);\r\n\t\t\t\tbreak;\r\n\r\nin the setup function after\r\ncase 115200: cfsetispeed(&options,B115200);\r\n\t\t\t\t\t\tcfsetospeed(&options,B115200);\r\n\t\t\t\tbreak;\r\n\r\ntested with our device that runs at that baud rate, seems to work a-OK so far.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/577","comments":2,"milestone":null,"number":577,"html_url":"https://github.com/openframeworks/openFrameworks/issues/577","assignee":null,"title":"ofSerial: add 230400 speed","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-05-20T16:16:52Z","state":"open","user":{"url":"https://api.github.com/users/labatrockwell","gravatar_id":"e6d243a56cd069a225f56f4a388e8838","login":"labatrockwell","avatar_url":"https://secure.gravatar.com/avatar/e6d243a56cd069a225f56f4a388e8838?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","id":313943},"id":932655,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T19:59:00Z","body":"This is a generic Linux build of oF for ARM Cortex A8/9 devices (Beagleboard, Pandaboard, Gumstix, Tegra 250, IGEPv2, ...) with built-in NEON optimizations in the included libs and makefiles (via gcc -O3 -march=armv7-a -mtune=cortex-a8 -mfpu=neon -ftree-vectorize -mfloat-abi=softfp)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/576","comments":17,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","closed_issues":0,"number":8,"title":"0080 Release","due_on":"2013-01-01T08:00:00Z","open_issues":3,"created_at":"2012-02-25T01:34:28Z","state":"open","description":"","id":88731},"number":576,"html_url":"https://github.com/openframeworks/openFrameworks/issues/576","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"Generic armv7l Linux build for Beagleboard &co. ","labels":[],"closed_at":null,"created_at":"2011-05-19T14:49:57Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"id":927378,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/576.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/576","patch_url":"https://github.com/openframeworks/openFrameworks/pull/576.patch"}},{"updated_at":"2011-05-13T15:28:46Z","body":"http://forum.openframeworks.cc/index.php?topic=6201.0","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/572","comments":0,"milestone":null,"number":572,"html_url":"https://github.com/openframeworks/openFrameworks/issues/572","assignee":null,"title":"ofToggleFullscreen doesn't set width and height correctly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2011-05-13T15:28:46Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":895515,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-02T15:47:14Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/569","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":569,"html_url":"https://github.com/openframeworks/openFrameworks/issues/569","assignee":null,"title":"saving an image with the image quality flag set to high or best causes empty jpegs. ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-05-11T13:53:42Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":883385,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T03:48:47Z","body":"Currently using an FBO with an ofCamera is really tricky, as both setup their own viewing matrix and viewport. \r\n\r\nDoes it make sense to have ofFbo use an ofCamera internally?\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/568","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":568,"html_url":"https://github.com/openframeworks/openFrameworks/issues/568","assignee":null,"title":"ofFbo and ofCamera do not play well together.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-05-11T13:52:46Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":883380,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-15T18:31:30Z","body":"Greetings,\r\n\r\nI have downloaded the latest master of Openframeworks b4397c1 and I have tried to compile the AllAddons example (just to check if everything was well installed).\r\n\r\nThe ofxSynth library just won't compile (using either GCC or LLVM, Xcode 3 or Xcode4), be it in the allAddons or in it's own examples, here is the error log :\r\n\r\nUndefined symbols for architecture i386:\r\n \"typeinfo for ofxSoundEffect\", referenced from:\r\n typeinfo for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"non-virtual thunk to ofxSoundEffect::setSampleRate(int)\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundBuffer::ofxSoundBuffer()\", referenced from:\r\n ofxSoundSink::ofxSoundSink()in ofxSynth.o\r\n \"vtable for ofxSoundEffect\", referenced from:\r\n ofxSoundEffect::~ofxSoundEffect()in ofxSynthDelayLine.o\r\n ofxSoundEffect::~ofxSoundEffect()in ofxSynthDelayLine.o\r\n \"vtable for ofxSoundSink\", referenced from:\r\n ofxSoundSink::~ofxSoundSink()in ofxSynthDelayLine.o\r\n ofxSoundSink::~ofxSoundSink()in ofxSynthDelayLine.o\r\n \"virtual thunk to ofxSoundSink::getInputs()\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"typeinfo for ofxSoundSink\", referenced from:\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundSink::setSampleRate(int)\", referenced from:\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundSink::getInputs()\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundSink::addInputFrom(ofxSoundSource*)\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"VTT for ofxSoundEffect\", referenced from:\r\n ofxSoundEffect::~ofxSoundEffect()in ofxSynthDelayLine.o\r\n ofxSoundEffect::~ofxSoundEffect()in ofxSynthDelayLine.o\r\n \"ofxSoundEffect::setSampleRate(int)\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundSink::audioIn(float*, int, int, unsigned long long)\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundEffect::audioOut(float*, int, int, unsigned long long)\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundBuffer::~ofxSoundBuffer()\", referenced from:\r\n ofxSoundSink::~ofxSoundSink()in main.o\r\n ofxSoundSink::~ofxSoundSink()in ofxSynthDelayLine.o\r\n ofxSoundSink::~ofxSoundSink()in ofxSynthDelayLine.o\r\nld: symbol(s) not found for architecture i386\r\ncollect2: ld returned 1 exit status\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/566","comments":3,"milestone":null,"number":566,"html_url":"https://github.com/openframeworks/openFrameworks/issues/566","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"ofxSynth won't compile","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2011-05-07T12:25:01Z","state":"open","user":{"url":"https://api.github.com/users/benoitespinola","gravatar_id":"d08687285addcdde144d4eceb4cfa78e","login":"benoitespinola","avatar_url":"https://secure.gravatar.com/avatar/d08687285addcdde144d4eceb4cfa78e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":720460},"id":862321,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:48:58Z","body":"I'm fixing it using \r\n_textField.transform = CGAffineTransformMakeRotation(M_PI*1.5f);\r\nin - (void) setFrame: (CGRect) rect\r\nto fix it now.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/565","comments":1,"milestone":null,"number":565,"html_url":"https://github.com/openframeworks/openFrameworks/issues/565","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"Textfield in ofxiPhoneKeyboard upside down in landscape","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-05-05T14:20:42Z","state":"open","user":{"url":"https://api.github.com/users/labatrockwell","gravatar_id":"e6d243a56cd069a225f56f4a388e8838","login":"labatrockwell","avatar_url":"https://secure.gravatar.com/avatar/e6d243a56cd069a225f56f4a388e8838?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","id":313943},"id":853551,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=10 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4934'), ('content-length', '43807'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('Link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"78e9c565cba926f6a72fa2b7dd021b78"'), ('date', 'Tue, 29 May 2012 19:27:19 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-12-03T21:20:01Z","body":"Does anybody know the status of this?\r\nI would like to help but I'm not sure where to start. Is the `iphone-dev-0061` the branch to work on this?\r\nI just want to know what's been done or whether there are plans in the works.\r\n\r\nI have posted this in the forum but have not received any response.\r\nhttp://forum.openframeworks.cc/index.php/topic,4089.msg29156.html#msg29156","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/564","comments":1,"milestone":null,"number":564,"html_url":"https://github.com/openframeworks/openFrameworks/issues/564","assignee":null,"title":"ofxShader for iOS","labels":[],"closed_at":null,"created_at":"2011-05-04T18:35:58Z","state":"open","user":{"url":"https://api.github.com/users/chrisirhc","gravatar_id":"22d0038769b1786fcdc0983bdb2e4033","login":"chrisirhc","avatar_url":"https://secure.gravatar.com/avatar/22d0038769b1786fcdc0983bdb2e4033?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":132584},"id":850096,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-12T08:58:12Z","body":"it's compiling now but doesn't work in openGL ES.\r\n\r\nalso take a look at setupShadow generating depthBuffer as texture, when it's released as a renderbuffer","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/560","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":560,"html_url":"https://github.com/openframeworks/openFrameworks/issues/560","assignee":null,"title":"fix ofFbo for openGL ES","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/android","name":"android","color":"2bc4ad"}],"closed_at":null,"created_at":"2011-04-30T17:21:39Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":833772,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-04-26T00:37:56Z","body":"nothing fancy, but I have an implementation of ofxCvHaarFinder that draws, and it's useful for debugging. something like:\n\n``` c++\n void ofxCvHaarFinder::draw( float x, float y ) {\n\t\t// ofPushStyle(); ?\n\t\tofEnableAlphaBlending();\n\t\tofSetColor( 255,0,200,100 );\n\t\tglPushMatrix();\n\t\t\n\t\tglTranslatef( x, y, 0.0 );\n\t\t\n\t\tofNoFill();\n\t\tfor( int i=0; i007 than <007. this can be changed in the ofStyle() constructor.\r\n\r\nalso, @elliotwoods it would be great to have a comment next to each of the constants in enum ofDrawBitmapMode explaining what they do.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/520","comments":1,"milestone":null,"number":520,"html_url":"https://github.com/openframeworks/openFrameworks/issues/520","assignee":null,"title":"ofDrawBitmapString default behavior has changed","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-04-01T06:37:16Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":723496,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-31T17:49:33Z","body":"it's obvious if you've used opengl directly before, but i would expect something more like:\r\n\r\n\tvoid ofSetTextureInterpolation(ofInterpolationType downscale, ofInterpolationType upscale)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/519","comments":0,"milestone":null,"number":519,"html_url":"https://github.com/openframeworks/openFrameworks/issues/519","assignee":null,"title":"ofSetMinMagFilters() is confusingly named","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-03-31T17:49:33Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":721833,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-17T00:51:48Z","body":"movieGrabberExample => videoGrabberExample\r\nmoviePlayerExample => videoPlayerExample\r\n\r\nthere are probably other examples of this, but this one strikes me as particularly odd. there's probably some historical reason... :)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/510","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":510,"html_url":"https://github.com/openframeworks/openFrameworks/issues/510","assignee":null,"title":"movieGrabber/PlayerExamples are poorly named","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-03-22T06:47:02Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":693126,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-21T01:01:25Z","body":"i accidentally initialized my ofFbo with setupShadow() instead of setup(), and when i said draw() it caused EXC_BAD_ACCESS. draw() calls getTexture(), so maybe the best way to handle this is to put a check inside getTexture() like this:\r\n\r\n\tif(textures.size() == 0) {\r\n\t\tofLog(OF_LOG_ERROR, \"You must call ofFbo::setup() before you can use an FBO\");\r\n\t}\r\n\treturn textures[attachmentPoint];","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/507","comments":0,"milestone":null,"number":507,"html_url":"https://github.com/openframeworks/openFrameworks/issues/507","assignee":null,"title":"ofFbo::draw() causes EXC_BAD_ACCESS when setup() isn't called","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-03-21T01:01:25Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":689769,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-20T17:35:05Z","body":"i know the reason for this is because the mappings are OS and mouse dependent, and that it's GLUT slowing us down here, but i think we could at least add a guess like OF_MOUSE_LEFT = 0, OF_MOUSE_MIDDLE= 1, OF_MOUSE_RIGHT = 2, etc.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/503","comments":0,"milestone":null,"number":503,"html_url":"https://github.com/openframeworks/openFrameworks/issues/503","assignee":null,"title":"no OF_MOUSE_LEFT or OF_MOUSE_RIGHT","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-03-20T17:35:05Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":688955,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T15:48:41Z","body":"you need to use bUse3D flag but even then graphics aren't saved to pdf as they look on screen. \r\ntry the OF_ORIENTATION_90_LEFT or 90_RIGHT to reproduce. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/502","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":502,"html_url":"https://github.com/openframeworks/openFrameworks/issues/502","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"ofSetOrientation doesn't work for cairo","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-03-18T09:17:36Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":684091,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-18T03:56:02Z","body":"it looks like ofGLRenderer::drawString is currently overriding whatever the current blend mode is:\n\n\tglEnable(GL_BLEND);\n\tglBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);\n\nand then setting it back later.\n\ni'm guessing this is so the empty/alpha part of the bitmap font is drawn.\n\ninstead of using glBlendFunc i would suggest glAlphaFunc... but it looks like as of OpenGL ES 2.0 glAlphaFunc doesn't exist anymore :(\n\nnot sure what to do, but it's really weird to have ofSetColor(255) work, but not ofSetColor(255, 254). e.g.:\n\n\tofBackground(128);\n\tofEnableAlphaBlending();\n\tofSetColor(255, 254);\n\tofDrawBitmapString(\"255, 254\", 10, 20);\n\tofSetColor(255, 255);\n\tofDrawBitmapString(\"255, 255\", 10, 40);\n\tofDisableAlphaBlending();","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/501","comments":0,"milestone":null,"number":501,"html_url":"https://github.com/openframeworks/openFrameworks/issues/501","assignee":null,"title":"ofDrawBitmapString / ofGLRenderer::drawString doesn't work with alpha","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-03-18T03:54:34Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":683732,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-03T10:41:35Z","body":"right now ofImage::getPixelsRef() is always non-const, as well as ofImage::getPixels()","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/500","comments":4,"milestone":null,"number":500,"html_url":"https://github.com/openframeworks/openFrameworks/issues/500","assignee":null,"title":"missing const version of getPixelsRef()","labels":[],"closed_at":null,"created_at":"2011-03-14T19:14:21Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":672608,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=11 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4933'), ('content-length', '40272'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('Link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"b87c61471553096d60e5ff8b292ff704"'), ('date', 'Tue, 29 May 2012 19:27:20 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"milestone":null,"state":"open","user":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"osx movieplayer problem on reloading","html_url":"https://github.com/openframeworks/openFrameworks/issues/495","comments":0,"assignee":null,"updated_at":"2011-03-09T16:17:56Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=7&t=5729&view=unread#unread","number":495,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/495","labels":[{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":659446,"closed_at":null,"created_at":"2011-03-09T16:17:56Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"GLUT 007 hack","html_url":"https://github.com/openframeworks/openFrameworks/issues/491","comments":0,"assignee":null,"updated_at":"2011-03-04T14:44:53Z","body":"it seems that some commented defines are still being preprocessed and making gdb behave weird:\r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=4&t=5602&view=unread#unread","number":491,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/491","labels":[{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":646846,"closed_at":null,"created_at":"2011-03-04T14:44:53Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"close corners on basic shapes?","html_url":"https://github.com/openframeworks/openFrameworks/issues/490","comments":0,"assignee":null,"updated_at":"2011-03-03T16:35:17Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=8&t=5678&view=unread#unread\r\n\r\nperhaps use style.linewith? won't work if you use glLineWidth though","number":490,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/490","labels":[{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":643861,"closed_at":null,"created_at":"2011-03-03T16:35:17Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"893ec14dc008e3774afe5841115920d6","url":"https://api.github.com/users/jonbro","login":"jonbro","id":1597,"avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofOrientation incompatible with iOS addon","html_url":"https://github.com/openframeworks/openFrameworks/issues/486","comments":0,"assignee":{"gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-10T04:50:03Z","body":"the existing iOS orientation methods are not compatible with the virtual functions that they inherit from. The new virtuals use a ofOrientation enum, and the old functions use ints.\r\n\r\nThis issue was introduced in https://github.com/openframeworks/openFrameworks/commit/38011d54","number":486,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/486","labels":[{"color":"2babad","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":635112,"closed_at":null,"created_at":"2011-02-28T18:14:04Z"},{"milestone":{"state":"open","description":"","title":"0073 Release","due_on":"2012-07-30T07:00:00Z","closed_issues":0,"open_issues":5,"number":6,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":62090,"created_at":"2011-12-03T15:37:49Z"},"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"grabFrame/idleFrame deprecation","html_url":"https://github.com/openframeworks/openFrameworks/issues/484","comments":12,"assignee":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-04-24T21:04:32Z","body":"it would be nice to start deprecating grabFrame() and idleFrame() (but maybe wait a couple years to actually remove them) , and change the examples to only use update() and isFrameNew().","number":484,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/484","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"37c200","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy"}],"id":613171,"closed_at":null,"created_at":"2011-02-20T17:56:02Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"ace632f74988653fdbde09225134bfdd","url":"https://api.github.com/users/nemik","login":"nemik","id":62301,"avatar_url":"https://secure.gravatar.com/avatar/ace632f74988653fdbde09225134bfdd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofVideoPlayer bug when loading subsequent movies after the first one","html_url":"https://github.com/openframeworks/openFrameworks/issues/475","comments":0,"assignee":null,"updated_at":"2011-02-14T17:11:08Z","body":"Within 0062, inside libs/openFrameworks/video/ofVideoPlayer.cpp on line 314 there is a check for height and width not being 0, then \"bDoWeAlreadyHaveAGworld = true;\" is set. However, this prevents other movies after the first from being loaded into that instance of ofVideoPlayer. \r\nI have posted about this in the forum with a fix (to just remove that check) here: http://www.openframeworks.cc/forum/viewtopic.php?f=8&t=5222\r\n\r\nInside the latest code, it is within ofQuickTimePlayer.cpp https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/video/ofQuickTimePlayer.cpp#L281.","number":475,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/475","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":598097,"closed_at":null,"created_at":"2011-02-14T17:11:08Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"object init/load state is not consistently testable","html_url":"https://github.com/openframeworks/openFrameworks/issues/463","comments":0,"assignee":null,"updated_at":"2011-02-07T19:58:23Z","body":"I like to be able to know when an object has successfully initialized or loaded and OF provides for this, for the most part, but in an inconsistent manner ie\r\n\r\nofVideoGrabber::initGrabber() returns a bool, but ofVideoGrabber:bInitialized is protected and therefore not accessible\r\n\r\nwhile\r\n\r\nofTrueTypeFont::bLoadedOk is public, but ofTrueTypeFont::loadFont() returns void\r\n\r\nand\r\n\r\nofImage::loadImage() returns a bool and ofLoadImage::bAllocated() returns a bool, yet ofImage::setFromPixels() returns void\r\n\r\nI propose all loadable/initable objects have loading functions which always return a bool and a testable function (isInited(), isLoaded(), etc) for use after loading. Ideally, the testable functions would always be named the same ie myImage.isLoaded(), myVideoGrabber().isLoaded(), myFont.isLoaded() but of course a general name may not apply to all situations (myVideoGrabber.isInited() probably makes more sense).\r\n\r\nHell, all the load functions could be overloaded ie ofImage::load(string filename), ofImage::load(ofPixels pixels), ofImage::load(unsigned char* pixels) across different objects, ofTrueTypeFont::load(string filename), ofVideoGrabber::load(int w, int h, int deviceID). This consistency looks nice to anal me. but might be confusing to newbies and of course would break old code (unless wrapped for legacy compatibility). It seems a little annoying that every objects seems to have it's own way of checking this and that ...","number":463,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/463","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"37c200","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy"}],"id":581395,"closed_at":null,"created_at":"2011-02-07T19:58:23Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"8022cb5f529975afbc64cc9312008d8c","url":"https://api.github.com/users/nardove","login":"nardove","id":277690,"avatar_url":"https://secure.gravatar.com/avatar/8022cb5f529975afbc64cc9312008d8c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"OpenCV cvSobel() not working with latest master branch","html_url":"https://github.com/openframeworks/openFrameworks/issues/462","comments":0,"assignee":null,"updated_at":"2011-02-07T15:58:19Z","body":"Hi,\r\n\r\nI get the following error:\r\n// INIT OF ERROR\r\nOF_WARNING: ofBaseVideoPlayer::setPixelFormat not implemented\r\nOpenCV Error: Assertion failed (src.size() == dst.size() && src.channels() == dst.channels() && ((src.depth() == CV_8U && (dst.depth() == CV_16S || dst.depth() == CV_32F)) || (src.depth() == CV_32F && dst.depth() == CV_32F))) in cvSobel, file /Users/theo/Documents/CODE/__OPENFRAMEWORKS/gitOF/__BuildAllLibs/OpenCV-2.2.0/modules/imgproc/src/deriv.cpp, line 347\r\nterminate called after throwing an instance of 'cv::Exception'\r\n what(): /Users/theo/Documents/CODE/__OPENFRAMEWORKS/gitOF/__BuildAllLibs/OpenCV-2.2.0/modules/imgproc/src/deriv.cpp:347: error: (-215) src.size() == dst.size() && src.channels() == dst.channels() && ((src.depth() == CV_8U && (dst.depth() == CV_16S || dst.depth() == CV_32F)) || (src.depth() == CV_32F && dst.depth() == CV_32F)) in function cvSobel\r\n// END OF ERROR\r\n\r\nWhen I try to call the cvSobel method like this:\r\ncvSobel( grayImage.getCvImage(), grayImage.getCvImage(), 0, 1, 3 );\r\n\r\nThis works fine in 0062.\r\n\r\nCheers\r\n- rS","number":462,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/462","labels":[{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":580717,"closed_at":null,"created_at":"2011-02-07T15:58:19Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"get number of input devices and device IDs from ofVideoGrabber","html_url":"https://github.com/openframeworks/openFrameworks/issues/461","comments":0,"assignee":null,"updated_at":"2011-02-07T19:38:51Z","body":"Currently, the ofVideoGrabber can list devices to stdout, but does not return the number of available devices. I propose that either listDevices() return an int or a new function be added, something like getNumDevices() or a getDeviceNums() which returns a vector of valid device ids. This could be related to Arturo's Issue where the devices could be retrieved as strings. I think it makes sense to have these as static functions so that you could open all available cameras into an Array of ofVideoGrabbers by retrieving the number of devices and their ids to open them.","number":461,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/461","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":580556,"closed_at":null,"created_at":"2011-02-07T15:24:21Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"saveImage() and other save operations should create missing directories","html_url":"https://github.com/openframeworks/openFrameworks/issues/460","comments":8,"assignee":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-08T15:56:48Z","body":"i feel like it happens relatively often where i try to save an image (for example) and the parent directories don't exist, so it just fails without really saying anything.\r\n\r\nit would be nice if the dir(s) were just created automatically for you.","number":460,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/460","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":579790,"closed_at":null,"created_at":"2011-02-07T07:52:25Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofTexture::allocate not checking for unnecessary reallocation","html_url":"https://github.com/openframeworks/openFrameworks/issues/454","comments":0,"assignee":null,"updated_at":"2011-02-06T04:26:44Z","body":"ofPixels::allocate is smart in that it doesn't reallocate if you ask for the same size as what's already there. ofTexture should work the same way to avoid unnecessary overhead.","number":454,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/454","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":578069,"closed_at":null,"created_at":"2011-02-06T04:26:44Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofViewport doesn't work with ofSetOrientation","html_url":"https://github.com/openframeworks/openFrameworks/issues/449","comments":0,"assignee":null,"updated_at":"2011-02-02T00:03:09Z","body":"maybe a generic 'transformer' function would handle both this and mouse coordinates, and anything else? ofPoint ofGetAsbolutePosition(x,y)?","number":449,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/449","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":568540,"closed_at":null,"created_at":"2011-02-02T00:03:09Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"no way to get imageType of ofVideoGrabber","html_url":"https://github.com/openframeworks/openFrameworks/issues/446","comments":0,"assignee":null,"updated_at":"2011-01-31T19:26:41Z","body":"ofVideoGrabber has getOFPixels in the .h, but it isn't implemented in the .cpp.\r\n\r\nmaybe this is just a signal that ofPixels stuff needs to be resolved soon... :) i'd be glad to help with this if possible.","number":446,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/446","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":565122,"closed_at":null,"created_at":"2011-01-31T19:26:41Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofGetElapsedTimeMillis returns an int instead of unsigned long","html_url":"https://github.com/openframeworks/openFrameworks/issues/428","comments":0,"assignee":null,"updated_at":"2011-01-28T06:28:01Z","body":"the start time is stored internally as an unsigned long, but ofGetElapsedTimeMillis returns it as an int. ofGetElapsedTimef also does calculations using time as an int. this means time wraps around every (2^31 - 1) milliseconds in days = 24.8 days.\r\n\r\nas an unsigned long it would be (2^64 - 1) milliseconds in years = 584 million years :)","number":428,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/428","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"65a300","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize"}],"id":558215,"closed_at":null,"created_at":"2011-01-28T06:28:01Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"4fc88ba881fee72fc4c5de473dc2ebbf","url":"https://api.github.com/users/NickHardeman","login":"NickHardeman","id":142694,"avatar_url":"https://secure.gravatar.com/avatar/4fc88ba881fee72fc4c5de473dc2ebbf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Check ofShader Texture Wrap Parameters","html_url":"https://github.com/openframeworks/openFrameworks/issues/424","comments":1,"assignee":null,"updated_at":"2011-12-02T21:05:54Z","body":"I thought checking for custom texture wrapping in ofShader might be useful. Not sure how to add a label to this :/\n\n#include ofGraphics.h\n\nvoid setUniformTexture(const char* name, ofBaseHasTexture& img, int textureLocation=-1);\nvoid setUniformTexture(const char* name, ofTexture& img, int textureLocation=-1);\n\nvoid ofShader::setUniformTexture(const char* name, ofTexture& tex, int textureLocation) {\n\tif(bLoaded) {\n\t\t\n\t\tGLfloat wrapS = -1;\n\t\tGLfloat wrapT = -1;\n\t\t\n\t\tif (ofGetUsingCustomTextureWrap()) {\n\t\t\tglGetTexParameterfv(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, &wrapS);\n\t\t\tglGetTexParameterfv(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, &wrapT);\n\t\t}\n\t\t\n\t\tofTextureData texData = tex.getTextureData();\n\t\tif (textureLocation < 0) textureLocation = texData.textureID;\n\t\tglActiveTexture(GL_TEXTURE0 + textureLocation);\n\t\tglEnable(texData.textureTarget);\n\t\t\n\t\tif(wrapS > 0) glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, wrapS);\n\t\tif(wrapT > 0) glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, wrapT);\n\t\t\n\t\tglBindTexture(texData.textureTarget, texData.textureID);\n\t\tglDisable(texData.textureTarget);\n\t\tsetUniform1i(name, texData.textureID);\n\t\tglActiveTexture(GL_TEXTURE0);\n\t}\n}","number":424,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/424","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":556923,"closed_at":null,"created_at":"2011-01-27T19:43:31Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"problem with reloading movies in osx","html_url":"https://github.com/openframeworks/openFrameworks/issues/423","comments":0,"assignee":null,"updated_at":"2011-01-24T22:34:29Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=8&t=5222","number":423,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/423","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"2a8296","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS"}],"id":548302,"closed_at":null,"created_at":"2011-01-24T22:34:29Z"},{"milestone":{"state":"open","description":"","title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"number":5,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61810,"created_at":"2011-12-02T15:29:48Z"},"state":"open","user":{"gravatar_id":"117a7eecfee7c7f7e954623fd96e1b6e","url":"https://api.github.com/users/snibbe","login":"snibbe","id":581517,"avatar_url":"https://secure.gravatar.com/avatar/117a7eecfee7c7f7e954623fd96e1b6e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Retina display support **that doesn't crash devices!** with backward compatibility to OS 3.0","html_url":"https://github.com/openframeworks/openFrameworks/issues/421","comments":2,"assignee":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2011-12-05T22:03:15Z","body":"Hi guys,\r\n\r\nI posted to the OF forum a solution back in August to support retina display with backward compatibility to pre-OS 4.0 devices:\r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=25&t=4185&start=15\r\n\r\nIf it's still outstanding, here's the solution!\r\n\r\nEAGLView.mm, initWithFrame, after the eaglLayer.drawableProperties assignment, add:\r\n\r\n if ([[UIScreen mainScreen] respondsToSelector:@selector(scale)]) {\r\n if ([[UIScreen mainScreen] scale] > 1) {\r\n // code below doesn't work on iPad 3.2 OS and below, but doesn't need to because scale is 1\r\n [self setContentScaleFactor:[[UIScreen mainScreen] scale]];\r\n }\r\n }\r\n\r\nofAppiPhoneWindow.mm, timerLoop, after [ofxiPhoneGetGLView() startRender]; add:\r\n\r\n int ofwidth = ofGetWidth();\r\n int ofheight = ofGetHeight();\r\n \r\n if ([[UIScreen mainScreen] respondsToSelector:@selector(scale)]) {\r\n ofwidth *= [[UIScreen mainScreen] scale];\r\n ofheight *= [[UIScreen mainScreen] scale];\r\n }\r\n\r\nthen change the glViewport calls:\r\n\r\n\t// this could be taken out and included in ofAppBaseWIndow\r\n\tif(orientation == OFXIPHONE_ORIENTATION_PORTRAIT || orientation == OFXIPHONE_ORIENTATION_UPSIDEDOWN)\r\n\t\tglViewport( 0, 0, ofwidth, ofheight );\r\n\telse\r\n\t\tglViewport( 0, 0, ofheight, ofwidth );","number":421,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/421","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"2a8296","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS"}],"id":548070,"closed_at":null,"created_at":"2011-01-24T20:52:18Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"something to wrap glMultMatrixf","html_url":"https://github.com/openframeworks/openFrameworks/issues/418","comments":0,"assignee":null,"updated_at":"2011-01-22T15:57:37Z","body":"suggestions:\r\n\r\n ofPopMatrix(ofMatrix4x4 m)\r\n\r\n ofMultMatrix(ofMatrix4x4 m)\r\n\r\n ofMatrix4x4::apply();\r\n ofMatrix4x4::push();","number":418,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/418","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":543729,"closed_at":null,"created_at":"2011-01-22T15:57:37Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"3D isn't scale invariant in certain parts","html_url":"https://github.com/openframeworks/openFrameworks/issues/417","comments":0,"assignee":null,"updated_at":"2011-01-22T15:24:07Z","body":"e.g.\r\n\r\n void ofEasyCam::reset() {\r\n\ttarget.resetTransform();\r\n\tdistance = 100;\r\n }\r\n\r\nofNode's\r\n\tvirtual void customDraw() {\r\n\t\tofBox(10);\r\n\t\tofDrawAxis(20);\r\n\t}\r\n\r\nsuggestions:\r\n\r\nglobal variable called something like 'base3DScaleFactor = 10.0f' which will affect all of these current constant scale factors","number":417,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/417","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":543694,"closed_at":null,"created_at":"2011-01-22T15:24:07Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","url":"https://api.github.com/users/vanderlin","login":"vanderlin","id":149997,"avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Simulator not working with any examples ","html_url":"https://github.com/openframeworks/openFrameworks/issues/414","comments":3,"assignee":{"gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-10T05:00:35Z","body":"Getting this error after the app launches in simulator mode \r\n\r\nDetected an attempt to call a symbol in system libraries that is not present on the iPhone:\r\n\r\n","number":414,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/414","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"2babad","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":539979,"closed_at":null,"created_at":"2011-01-20T20:17:35Z"},{"milestone":{"state":"open","description":"","title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"number":5,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61810,"created_at":"2011-12-02T15:29:48Z"},"state":"open","user":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofCamera::setPan is broken","html_url":"https://github.com/openframeworks/openFrameworks/issues/413","comments":1,"assignee":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-14T15:11:06Z","body":"","number":413,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/413","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"31e03a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed"}],"id":539915,"closed_at":null,"created_at":"2011-01-20T20:01:00Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"add setMultisampling method to glutWindow","html_url":"https://github.com/openframeworks/openFrameworks/issues/412","comments":0,"assignee":null,"updated_at":"2011-01-20T19:33:30Z","body":"multisampling is now working in linux through the display string option. perhaps we could add a method to easily set it if it also works on win/osx","number":412,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/412","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"244569","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows"}],"id":539845,"closed_at":null,"created_at":"2011-01-20T19:33:30Z"},{"milestone":{"state":"open","description":"","title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"number":5,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61810,"created_at":"2011-12-02T15:29:48Z"},"state":"open","user":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofCamera / ofEasyCamera does not work correctly for iPhone / iPad","html_url":"https://github.com/openframeworks/openFrameworks/issues/410","comments":2,"assignee":{"gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-14T15:11:06Z","body":"Needs to take into account the rotation and the flipping happening in ofAppiPhoneWindow::timerLoop() \n\nAlso the internal call to ofViewport causes clipping in horizontal mode. \n\nIts currently very difficult to setup the camera correctly for iPad / iPhone - would be great if the default for ofCamera would be to start with the typical OF camera view. ","number":410,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/410","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"2babad","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"31e03a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed"}],"id":539744,"closed_at":null,"created_at":"2011-01-20T18:59:10Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","url":"https://api.github.com/users/vanderlin","login":"vanderlin","id":149997,"avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofEnableLighting","html_url":"https://github.com/openframeworks/openFrameworks/issues/406","comments":0,"assignee":null,"updated_at":"2011-01-19T19:39:37Z","body":"ofLight bug not sure what the ios equivalent is..\r\n\r\nglColorMaterial(GL_FRONT_AND_BACK, GL_AMBIENT_AND_DIFFUSE); is not supported in IOS","number":406,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/406","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":537416,"closed_at":null,"created_at":"2011-01-19T19:39:36Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofViewport doesn't match rest of openFrameworks coordinates","html_url":"https://github.com/openframeworks/openFrameworks/issues/405","comments":0,"assignee":null,"updated_at":"2011-01-19T13:24:54Z","body":"Suggest change line 126 of ofGraphics.h to\r\n\tglViewport(x, ofGetHeight() - y - height, width, height);\r\n\r\nto be in line with rest of openFrameworks coordinate system\r\ne.g. ofRect(myRect) matches ofViewport(myRect)\r\n","number":405,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/405","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"31e03a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed"}],"id":536614,"closed_at":null,"created_at":"2011-01-19T13:24:53Z"}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=12 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4932'), ('content-length', '38352'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('Link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"679d499a026b6f6d6a1e20857a7392dc"'), ('date', 'Tue, 29 May 2012 19:27:21 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-01-17T23:39:31Z","body":"it should be only in the implementations and queried by the grabber/player in case an implementation doesn't support a format if not the app can crash or have really weird results","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/403","comments":0,"milestone":null,"number":403,"html_url":"https://github.com/openframeworks/openFrameworks/issues/403","assignee":null,"title":"setPixelFormat shouldn't be stored in videoGrabber/Player","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-17T23:39:31Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":532954,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-17T16:37:42Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/400","comments":0,"milestone":null,"number":400,"html_url":"https://github.com/openframeworks/openFrameworks/issues/400","assignee":null,"title":"ofTTF should have setAnchorPercent so you can draw strings centered, right aligned etc","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography","color":"DDDDDD"}],"closed_at":null,"created_at":"2011-01-17T16:37:42Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":532096,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-03-20T17:33:14Z","body":"every frame, it should update the pmouse value. so if you don't move the mouse, the pmouse value is equal to the current value.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/391","comments":1,"milestone":null,"number":391,"html_url":"https://github.com/openframeworks/openFrameworks/issues/391","assignee":null,"title":"ofGetPreviousMouseX/Y() does not update per frame","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-16T07:21:15Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":529705,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-03-20T17:32:59Z","body":"this is a limitation to glut, but it might be hackable on each system separately.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/389","comments":1,"milestone":null,"number":389,"html_url":"https://github.com/openframeworks/openFrameworks/issues/389","assignee":null,"title":"mouse position doesn't update until mouse is moved","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-16T07:11:53Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":529700,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-03-13T21:10:48Z","body":"following error appears when i try to load an image; commenting out the call to loadImage(\"...\") makes the error go away.\n\n Undefined symbols:\n \"std::basic_ostream >& std::__ostream_insert >(std::basic_ostream >&, char const*, int)\", \n referenced from:\n Poco::Net::HTTPClientSession::proxyAuthenticateImpl(Poco::Net::HTTPRequest&)in PocoNet.a(HTTPClientSession.o)\n Poco::Net::HTTPClientSession::proxyAuthenticateImpl(Poco::Net::HTTPRequest&)in PocoNet.a(HTTPClientSession.o)\n Poco::Net::HTTPRequest::write(std::basic_ostream >&) constin PocoNet.a(HTTPRequest.o)\n Poco::Net::HTTPRequest::write(std::basic_ostream >&) constin PocoNet.a(HTTPRequest.o)\n Poco::Net::HTTPRequest::write(std::basic_ostream >&) constin PocoNet.a(HTTPRequest.o)\n Poco::Net::MessageHeader::write(std::basic_ostream >&) constin PocoNet.a(MessageHeader.o)\n Poco::Net::MessageHeader::write(std::basic_ostream >&) constin PocoNet.a(MessageHeader.o)\n Poco::Net::HTTPResponse::write(std::basic_ostream >&) constin PocoNet.a(HTTPResponse.o)\n Poco::Net::HTTPResponse::write(std::basic_ostream >&) constin PocoNet.a(HTTPResponse.o)\n\nld: symbol(s) not found\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/387","comments":1,"milestone":null,"number":387,"html_url":"https://github.com/openframeworks/openFrameworks/issues/387","assignee":null,"title":"Linker error when loading image (Poco::Net related?)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-16T05:57:51Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"id":529646,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-15T17:01:08Z","body":"would be nice if it was a float (0-1) and not an int(0-100) for standardization with every other audio thing in the universe aside from quicktime","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/375","comments":2,"milestone":null,"number":375,"html_url":"https://github.com/openframeworks/openFrameworks/issues/375","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"ofVideoPlayer setVolume uses an int","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"closed_at":null,"created_at":"2011-01-15T23:03:57Z","state":"open","user":{"url":"https://api.github.com/users/stfj","gravatar_id":"b089227a1748a2d70cdfc4ef00b325ad","login":"stfj","avatar_url":"https://secure.gravatar.com/avatar/b089227a1748a2d70cdfc4ef00b325ad?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":177578},"id":529268,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-14T19:30:31Z","body":"glDrawBitmapString doesn't work when GL_LIGHTING is enabled.\r\n\r\nwell, it works... but it is black because it isn't reflecting any light. regardless of the ofSetColor.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/357","comments":0,"milestone":null,"number":357,"html_url":"https://github.com/openframeworks/openFrameworks/issues/357","assignee":null,"title":"glDrawBitmapString vs GL_LIGHTING","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-14T19:30:31Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":527591,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-14T01:33:38Z","body":"some of the core functions only work with 2d points, others only with 3d points, some work with both. but they all take ofPoints.\r\n\r\nit's good for teaching purposes to have ofPoints because you don't have to explain what a 'vector' is, but it's unclear for advanced users whether the functions take 2d or 3d points...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/347","comments":0,"milestone":null,"number":347,"html_url":"https://github.com/openframeworks/openFrameworks/issues/347","assignee":null,"title":"none of the core functions report how many dimensions they work for","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-01-14T01:33:38Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":526094,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-13T16:16:40Z","body":"e.g., GL_DEPTH_TEST.\r\n\r\none of the reasons for this is that it's not obvious to newbies what common features are available.\r\n\r\nanother is that i've seen lots of people write GL_DEPTH instead, which obviously doesn't work.\r\n\r\nthere might be some others too, see processing's hint():\r\n\r\nhttp://processing.org/reference/hint_.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/340","comments":0,"milestone":null,"number":340,"html_url":"https://github.com/openframeworks/openFrameworks/issues/340","assignee":null,"title":"OF wrapper for basic gl functions that aren't intuitive to newbies","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"closed_at":null,"created_at":"2011-01-13T16:16:40Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":524875,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-27T13:35:42Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/337","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":337,"html_url":"https://github.com/openframeworks/openFrameworks/issues/337","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"ofFileDialog allow folder selection ( works on os x ) needs code for win and linux","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-01-13T05:21:53Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":523837,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T15:11:06Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/330","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":330,"html_url":"https://github.com/openframeworks/openFrameworks/issues/330","assignee":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"title":"OpenCv 2.2 for Win ( CB and VS )","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"}],"closed_at":null,"created_at":"2011-01-12T19:09:37Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":522789,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-04T14:06:34Z","body":"currentStyle stores everything about the current style, so it can be used rather than things like drawMode for tracking how things should currently be draw.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/325","comments":1,"milestone":null,"number":325,"html_url":"https://github.com/openframeworks/openFrameworks/issues/325","assignee":null,"title":"drawMode can be deprecated, currentStyle.bFill should be used instead","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-12T15:41:11Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":522255,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-12T15:34:48Z","body":"ordering for code completion is a little weird.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/324","comments":0,"milestone":null,"number":324,"html_url":"https://github.com/openframeworks/openFrameworks/issues/324","assignee":null,"title":"ofPushView/ofPopView appear before ofPushMatrix/ofPopMatrix","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"}],"closed_at":null,"created_at":"2011-01-12T15:34:48Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":522231,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-10T22:30:48Z","body":"under the /video directory","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/311","comments":0,"milestone":null,"number":311,"html_url":"https://github.com/openframeworks/openFrameworks/issues/311","assignee":null,"title":"openFrameworksLib has ofQtUtils included twice","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-10T22:30:48Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":518434,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-10T06:36:27Z","body":"better to use aggregation (helper classes/functions) if necessary for common functionality that have implementation in those classes. making them pure abstract classes will avoid problems with multiple inheritance and easier to extend in case of different behaviour","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/305","comments":0,"milestone":null,"number":305,"html_url":"https://github.com/openframeworks/openFrameworks/issues/305","assignee":null,"title":"no implementation in ofBaseTypes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-10T06:36:27Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":516844,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-05T21:59:59Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/302","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":302,"html_url":"https://github.com/openframeworks/openFrameworks/issues/302","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"Remove Poco CppUnit from all projects ( done on os x )","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-01-10T02:39:28Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":516565,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T01:06:09Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/299","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","closed_issues":0,"number":6,"title":"0073 Release","due_on":"2012-07-30T07:00:00Z","open_issues":5,"created_at":"2011-12-03T15:37:49Z","state":"open","description":"","id":62090},"number":299,"html_url":"https://github.com/openframeworks/openFrameworks/issues/299","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"freetype-2.4.4 for linux","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-01-10T02:38:08Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":516560,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T01:06:08Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/298","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","closed_issues":0,"number":6,"title":"0073 Release","due_on":"2012-07-30T07:00:00Z","open_issues":5,"created_at":"2011-12-03T15:37:49Z","state":"open","description":"","id":62090},"number":298,"html_url":"https://github.com/openframeworks/openFrameworks/issues/298","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"freetype-2.4.4 for windows","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-01-10T02:37:49Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":516559,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-05T21:59:27Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/296","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":296,"html_url":"https://github.com/openframeworks/openFrameworks/issues/296","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"FreeImage 3141 build for windows","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-01-10T02:36:58Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":516556,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-09T20:46:43Z","body":"I think the pixeltype, the gltypeinternal and the gltype should be accessible to the user as well as the loadData(void * data, int w, int h, int glDataType) which is actually protected.\r\n\r\nActual implementation is only limited to a few choice of internalFormat which lead to choice of pixeltype and gltype. It thus doesn't allow from user specific type.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/292","comments":0,"milestone":null,"number":292,"html_url":"https://github.com/openframeworks/openFrameworks/issues/292","assignee":null,"title":"ofTexture should be more flexible","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-01-09T20:46:43Z","state":"open","user":{"url":"https://api.github.com/users/I33N","gravatar_id":"ba8d7c3b4532d3747c30b9be91dc20d5","login":"I33N","avatar_url":"https://secure.gravatar.com/avatar/ba8d7c3b4532d3747c30b9be91dc20d5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":520375},"id":516071,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T10:49:15Z","body":"ofImage::getWidth()/getHeight() are just getters that do absolutely nothing but return a copy of the width and height. these methods should be marked const.\r\n\r\n[added]: there are hacks inside ofxCv that i've had to make because getWidth/getHeight are not const correct. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/288","comments":6,"milestone":null,"number":288,"html_url":"https://github.com/openframeworks/openFrameworks/issues/288","assignee":null,"title":"const correctness - add const to getWidth/getHeight","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-08T02:14:03Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":513779,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2010-11-30T05:13:10Z","body":"This is giving me some crashes. There needs to be a way to disable this when making custom windows. I have tried to do atexit(NULL); but the callback in ofRunApp(ofBaseApp * OFSA) is still being called. \r\n\r\nmaybe something like:\r\n\r\nvoid ofRunApp(ofBaseApp * OFSA, bool useExitCallback);\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/275","comments":0,"milestone":null,"number":275,"html_url":"https://github.com/openframeworks/openFrameworks/issues/275","assignee":null,"title":"atexit(ofExitCallback);","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-11-30T05:13:10Z","state":"open","user":{"url":"https://api.github.com/users/vanderlin","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":149997},"id":445829,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-03-17T02:02:25Z","body":"bottom left corner is inconsistent with every other drawing command in OF, should be top left instead.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/271","comments":7,"milestone":null,"number":271,"html_url":"https://github.com/openframeworks/openFrameworks/issues/271","assignee":null,"title":"ofDrawBitmapString draws from bottom left","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-11-22T21:30:40Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":433297,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-06-03T19:04:08Z","body":"test if this is really useful:\r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=7&t=4889&view=unread#unread\r\n\r\nhe adds a queue just before the color conversion","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/265","comments":0,"milestone":null,"number":265,"html_url":"https://github.com/openframeworks/openFrameworks/issues/265","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"linux videograbber stopping after some time","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2010-11-18T12:07:46Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":426050,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-19T22:47:21Z","body":"ofClear(r,g,b) is inconsistent with ofBackground(r,g,b) because the alpha is 0 by default -- meaning you always have to explicitly declare the alpha to clear the background.\r\n\r\nfurthermore, because all the arguments have default values there is not/cannot exist an ofClear(gray, alpha) to match ofSetColor style","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/264","comments":5,"milestone":null,"number":264,"html_url":"https://github.com/openframeworks/openFrameworks/issues/264","assignee":null,"title":"ofClear uses inconsistent arguments","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2010-11-18T06:15:47Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":425675,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=13 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4931'), ('content-length', '46291'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('Link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"bf7e6718fe6b733d04e77e00e220150f"'), ('date', 'Tue, 29 May 2012 19:27:22 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-12-05T21:58:33Z","body":"A lot of OF files are including ofMain / ofConstants.h - this makes compiles super slow. Try to have files only include what they need. Or find a way to break things up into the most often used ( windows.h etc ) and less used. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/255","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":255,"html_url":"https://github.com/openframeworks/openFrameworks/issues/255","assignee":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"title":"COMPILE SPEED UP - cleanup internal includes to avoid ofMain.h and ofConstants.h","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2010-11-11T21:14:05Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":413771,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T20:11:33Z","body":"ofHideCursor()/ofShowCursor()\r\n\r\nofEnableArbTex()\r\nofEnableSetupScreen()\r\nofEnableDataPath()\r\nofEnableAlphaBlending()\r\nofEnableSmoothing()\r\n\r\nofSetFullscreen() + ofToggleFullscreen()\r\nofSetVerticalSync()\r\n\r\netc.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/249","comments":1,"milestone":null,"number":249,"html_url":"https://github.com/openframeworks/openFrameworks/issues/249","assignee":null,"title":"normalize option nomenclature (hide/enable/set/etc.)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2010-11-03T22:52:08Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":399214,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T22:03:41Z","body":"some video to test:\r\n\r\nmmsh://live.camstreams.com/cscamglobal16?MSWMExt=.asf\r\n\r\nit works ok with totem so it should be a problem in ofGstUtils","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/245","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":245,"html_url":"https://github.com/openframeworks/openFrameworks/issues/245","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"gstreamer problems with streaming of microsoft video","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2010-10-13T16:33:06Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":360885,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-13T20:13:07Z","body":"I found an annoying bug in ofVideoPlayer.\nThis module do not like to be dynamically created or destroyed.\nCheck this little example :\n\nhttp://knu.free.fr/bug_ofVideoPlayer.zip\n\nLeft-click to create an object playing video.\nRight-click to suppress the last video.\n\nhere are the phenomenons I am facing on my Win7 machine :\n\n- \nIf you create an object, and then you suppress it, and then try to create an object again, the app will crash.\n\n- \nIf you create some objects (lets say 8), and then you suppress all of them, the app will crash before the last one (not always, but most of the time).\n\n\n\nNow in OF source tree, try replacing ofVideoPlayer.cpp with FIX_ofVideoPlayer.cpp (at the root of the zip)\nRebuild the project.\nNow everything should be working as expected.\n\n\nThe modifications I made in the source are marked by : //###############\n\nI do not have time to fully read and understand the quicktime API, so there are chances this workaround is fucking dirty.\nBut at least it seems to work.\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/244","comments":1,"milestone":null,"number":244,"html_url":"https://github.com/openframeworks/openFrameworks/issues/244","assignee":null,"title":"bug in ofVideoPlayer","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2010-10-11T19:56:46Z","state":"open","user":{"url":"https://api.github.com/users/fmauclere","avatar_url":"https://secure.gravatar.com/avatar/1c7dcbab3712f1a4d90bd2c3aa9a3e3d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"1c7dcbab3712f1a4d90bd2c3aa9a3e3d","login":"fmauclere","id":435720},"id":357395,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-10T05:06:06Z","body":"Check out this code - also check if latest ffmpeg is better optimized for iphone.\r\nhttp://github.com/jgh-/FFmpeg-for-iOS","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/240","comments":0,"milestone":null,"number":240,"html_url":"https://github.com/openframeworks/openFrameworks/issues/240","assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"title":"iphone video player - ffmpeg and audioqueues","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-10-06T17:19:57Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":349886,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-10T05:08:56Z","body":"XCode: 3.2.4\nOF: github master @24 Sep 2010\nCompiled as: device base SDK 4.1 release arm7 deployment target 3.2\n\nWeird error: Build ofAudioOutputExample. Add a void testApp::exit() to see if it is called. Run app on ipod touch 2010 version with 4.1 installed.\n\nApp runs OK yet pressing the exit button on front of device quits the app, but xcode keeps running. Digging in a bit it appears not only testApp::exit, but ofExitCallback is not getting called.\n\nSwitch to iPad (no other settings changed) and app runs fine, and exits properly.\n\nSwitch to BaseSDK 3.2 and example runs fine and exits fine on both iPad and iPod.\n\nIdeas? Is this just me? I'm fairly new to OF, XCode and iPhone\n\n[edit]\nOK I worked out that pressing the \"close\" button in 4.1 calls applicationWillResignActive in ofxiPhoneAppDelegate.mm. As a hacky workaround as my app just needs to exit, not sit in background, I added exit(0); to the end of applicationWillResignActive and it seems to work.\n\nWould like to know how to do this properly though.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/236","comments":1,"milestone":null,"number":236,"html_url":"https://github.com/openframeworks/openFrameworks/issues/236","assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"title":"ofExitCallback not being called on iphone4.1?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-09-25T01:55:49Z","state":"open","user":{"url":"https://api.github.com/users/DavidDC","avatar_url":"https://secure.gravatar.com/avatar/a6fdad0c31fcd273a1ba89434fec0419?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"a6fdad0c31fcd273a1ba89434fec0419","login":"DavidDC","id":415101},"id":332379,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-04-19T00:32:33Z","body":"related to #221: texData.bAllocated is only used in the isAllocated method which can be changed from:\r\n\r\n bool ofTexture::bAllocated(){\r\n return texData.bAllocated;\r\n }\r\n\r\nto\r\n\r\n bool ofTexture::bAllocated(){\r\n return texData.textureID!=0;\r\n }\r\n\r\navoiding problems like #221 since we don't have two flags for the same thing","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/228","comments":4,"milestone":null,"number":228,"html_url":"https://github.com/openframeworks/openFrameworks/issues/228","assignee":null,"title":"remove bAllocated in ofTexture?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2010-09-09T14:20:55Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":309191,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T15:45:27Z","body":"Segfault when playing .ogv files on 64 bit linux.\nSee forum post - http://www.openframeworks.cc/forum/viewtopic.php?f=7&t=4582","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/227","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":227,"html_url":"https://github.com/openframeworks/openFrameworks/issues/227","assignee":null,"title":"Ubuntu 64-bit conflict with FMOD when playing ogg theora files","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2010-09-08T14:54:33Z","state":"open","user":{"url":"https://api.github.com/users/pierrep","avatar_url":"https://secure.gravatar.com/avatar/be11c9de8242e7aef0446eceaa289e01?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"be11c9de8242e7aef0446eceaa289e01","login":"pierrep","id":392160},"id":307684,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-08-31T10:54:19Z","body":"It would be nice to have:\r\n\r\n\tconst ofxVec2f xunit2f(1, 0), yunit2f(0, 1);\r\n\tconst ofxVec3f xunit3f(1, 0, 0), yunit3f(0, 1, 0), zunit3f(0, 0, 1);\r\n\r\nOr something similar that allows for more elegant notation when you're multiplying or adding by an axis.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/225","comments":0,"milestone":null,"number":225,"html_url":"https://github.com/openframeworks/openFrameworks/issues/225","assignee":null,"title":"ofxVectorMath constants","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-08-31T10:54:19Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":295913,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-26T18:37:47Z","body":"can this be useful?\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=25&t=4500\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/224","comments":1,"milestone":null,"number":224,"html_url":"https://github.com/openframeworks/openFrameworks/issues/224","assignee":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"title":"gaussian noise","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"}],"closed_at":null,"created_at":"2010-08-26T10:21:24Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":290973,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-10-17T13:58:53Z","body":"ofxOsc causes a memory access violation in VS2008, when you use sendMessage(ofxOscMessage) from within a class.\r\nNo error when you run that from main ofApp","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/214","comments":1,"milestone":null,"number":214,"html_url":"https://github.com/openframeworks/openFrameworks/issues/214","assignee":null,"title":"ofxOsc memory access violation. namespace issue?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-08-04T05:59:22Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":268332,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-14T15:12:26Z","body":"e) get arturo's script to work, or rewrite a new one to just clobber a given directory (and not pull from git, etc as it's doing now). \r\n\r\ntheo - might be good to have two scripts?\r\n1) to pull from git \r\n2) to remove everything not related to a platform - or maybe better just copies the files into a folder for that platform. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/199","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":199,"html_url":"https://github.com/openframeworks/openFrameworks/issues/199","assignee":null,"title":"script that doesn't pull everything from git","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-06-01T13:28:54Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":211418,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-05-25T14:54:52Z","body":"\r\nas per: \r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=8&t=3962&p=20661#p20661\r\n\r\nwe should explain how to use it properly. \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/194","comments":0,"milestone":null,"number":194,"html_url":"https://github.com/openframeworks/openFrameworks/issues/194","assignee":null,"title":"ofGetAppPtr documentation is wrong ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"closed_at":null,"created_at":"2010-05-25T14:54:52Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":205935,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:58:22Z","body":"http://www.glfw.org/release-2.6.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/193","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":193,"html_url":"https://github.com/openframeworks/openFrameworks/issues/193","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"look at glfw - just got updated","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-05-23T21:04:25Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":204247,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T19:20:16Z","body":"I had the L.A.S.E.R. tag software up and running great on my new MacBook Pro but recently my computer did a software update and now something is wrong and I can't properly use the program. I have snow leopard 10.6.3 OS. I'm not totally sure if it was the auto update that caused the issue but it seems like it stopped working after the update. Below I listed the suspected updates. Seems weird to me 2 digital camera RAW updates.\r\n\r\n3/27/10 Digital Camera RAW update 2.7\r\n3/27/10 Safari 4.0.5\r\n3/27/10 Digital Camera RAW update 3.1\r\n3/27/10 iMovie update 8.0.6\r\n\r\n0 com.apple.QuickTime \t0x9408e179 QTMLGrabMutex + 18\r\n1 com.apple.QuickTime \t0x9421b6a3 QTWorkContextCopyForMediaContextID + 28\r\n2 ...uickTimeStreaming.component\t0x14f77c15 HTTPDhlr_CheckForFatalError + 254\r\n3 ...uickTimeStreaming.component\t0x14f77cc6 HTTPDhlr_ReadSYNC + 165\r\n4 ...uickTimeStreaming.component\t0x14f7ab01 HTTPDataHandler_ScheduleData64 + 452\r\n5 ...ple.CoreServices.CarbonCore\t0x949a2d05 callComponentStorage_4444444 + 63\r\n6 ...ple.CoreServices.CarbonCore\t0x949976f0 CallComponentFunctionCommonWithStorage(char**, ComponentParameters*, long (*)(), unsigned long) + 54\r\n7 ...uickTimeStreaming.component\t0x14f784c7 HTTPDataHandler_ComponentDispatch + 110\r\n8 ...ple.CoreServices.CarbonCore\t0x9498fd87 CallComponentDispatch + 29\r\n9 com.apple.QuickTime \t0x94093540 DataHScheduleData64 + 73\r\n10 com.apple.QuickTime \t0x940b5704 NewMovieFromDataRefPriv_priv + 8296\r\n11 com.apple.QuickTime \t0x9419e613 NewMovieFromDataRef_priv + 54\r\n12 com.apple.QuickTime \t0x942fb95e NewMovieFromDataRef + 52\r\n13 com.yourcompany.openFrameworks\t0x0000aa2a createMovieFromURL(std::string, MovieType**&) + 112\r\n14 com.yourcompany.openFrameworks\t0x0000abe2 ofVideoPlayer::loadMovie(std::string) + 182\r\n15 com.yourcompany.openFrameworks\t0x0002fe03 appController::setup() + 2169\r\n16 com.yourcompany.openFrameworks\t0x00002864 ofRunApp(ofSimpleApp*) + 170\r\n17 com.yourcompany.openFrameworks\t0x0003dc06 main + 90\r\n18 com.yourcompany.openFrameworks\t0x00001da2 _start + 216\r\n19 com.yourcompany.openFrameworks\t0x00001cc9 start + 41","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/182","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":182,"html_url":"https://github.com/openframeworks/openFrameworks/issues/182","assignee":null,"title":"ofVideoPlayer - createMovieFromURL broken in 10.6.3 with specific updates?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-04-15T16:20:25Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":172424,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-04-14T15:48:19Z","body":"can we add moments to the blob. \n\nadd CvMoments moments to blob class\n\nand in ofxCvContourFinder.cpp line 119\n\n\t blobs[i].moments.m00 = myMoments->m00;\n\t\tblobs[i].moments.m10 = myMoments->m10;\n\t\tblobs[i].moments.m01 = myMoments->m01;\n\t\tblobs[i].moments.m20 = myMoments->m20;\n\t\tblobs[i].moments.m11 = myMoments->m11;\n\t\tblobs[i].moments.m02 = myMoments->m02;\n\t\tblobs[i].moments.m30 = myMoments->m30;\n\t\tblobs[i].moments.m21 = myMoments->m21;\n\t\tblobs[i].moments.m12 = myMoments->m12;\n\t\tblobs[i].moments.m03 = myMoments->m03;\n\t\t\n\t\tblobs[i].moments.mu20 = myMoments->mu20;\n\t\tblobs[i].moments.mu11 = myMoments->mu11;\n\t\tblobs[i].moments.mu02 = myMoments->mu02;\n\t\tblobs[i].moments.mu30 = myMoments->mu30;\n\t\tblobs[i].moments.mu21 = myMoments->mu21;\n\t\tblobs[i].moments.mu12 = myMoments->mu12;\n\t\tblobs[i].moments.mu03 = myMoments->mu03;\n\n\nthis is good for finding the angle and other info about the contour.\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/181","comments":2,"milestone":null,"number":181,"html_url":"https://github.com/openframeworks/openFrameworks/issues/181","assignee":null,"title":"ofxCvBlobs","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2010-04-14T15:42:22Z","state":"open","user":{"url":"https://api.github.com/users/vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","id":149997},"id":171615,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-29T15:04:04Z","body":"Buffer is 512 but should be 276 ( or something )\r\nSetting it to 256 says the buffer size should be 176 ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/178","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":178,"html_url":"https://github.com/openframeworks/openFrameworks/issues/178","assignee":null,"title":"iPhone sound bug with 1st gen ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-04-11T10:18:58Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":169176,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T19:18:14Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/175","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":175,"html_url":"https://github.com/openframeworks/openFrameworks/issues/175","assignee":null,"title":"bring examples up to date - make sexy","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"}],"closed_at":null,"created_at":"2010-04-06T19:44:04Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166214,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T19:14:03Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/174","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":174,"html_url":"https://github.com/openframeworks/openFrameworks/issues/174","assignee":null,"title":"vertical sync on for mac by default","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-04-06T19:43:21Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166212,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:58:10Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/173","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":173,"html_url":"https://github.com/openframeworks/openFrameworks/issues/173","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"ofAlphaBlending default on","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2010-04-06T19:42:34Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166211,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:57:50Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/172","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":172,"html_url":"https://github.com/openframeworks/openFrameworks/issues/172","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"rgb + alpha -> blit to texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-04-06T19:40:28Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166209,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:57:36Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/171","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":171,"html_url":"https://github.com/openframeworks/openFrameworks/issues/171","assignee":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"title":"sexy shader example","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"}],"closed_at":null,"created_at":"2010-04-06T19:38:51Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166208,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-03T19:40:33Z","body":"can we do it?\r\nwe need cross platform:\r\nplayback \r\nstreaming\r\npitch\r\npan \r\nmultiplay \r\n\r\nfor us to be compatible with what exists. \r\nOpenAL seems like the best choice.\r\nWhat other options are there?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/167","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","number":8,"title":"0080 Release","due_on":"2013-01-01T08:00:00Z","closed_issues":0,"open_issues":3,"created_at":"2012-02-25T01:34:28Z","state":"open","description":"","id":88731},"number":167,"html_url":"https://github.com/openframeworks/openFrameworks/issues/167","assignee":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"title":"replace fmod","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2010-04-06T12:13:31Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":165898,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:56:41Z","body":"i have this working for 3d with selection buffer although it's meant to be slow i haven't had any problems","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/160","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":160,"html_url":"https://github.com/openframeworks/openFrameworks/issues/160","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"ofIsUnderMouse?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2010-04-05T21:39:19Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":165537,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:54:57Z","body":"Theo: I have this code uses the selection buffer. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/153","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":153,"html_url":"https://github.com/openframeworks/openFrameworks/issues/153","assignee":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"title":"ofIsOnScreen - ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2010-04-05T18:49:10Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":165409,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=14 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4930'), ('content-length', '13008'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('Link', '; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"a63cf45ee23c003caf863065072ec4bb"'), ('date', 'Tue, 29 May 2012 19:27:23 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-02-29T11:13:10Z","body":"check out - http://www.openframeworks.cc/forum/viewtopic.php?p=19169#p19169\r\npossible integration into core. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/140","comments":4,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":140,"html_url":"https://github.com/openframeworks/openFrameworks/issues/140","assignee":null,"title":"texture compression and mipmaps for of texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-04-02T19:43:00Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":163959,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-12T16:15:52Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=10&t=3319","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/128","comments":4,"milestone":null,"number":128,"html_url":"https://github.com/openframeworks/openFrameworks/issues/128","assignee":null,"title":"ofxTCPServer doesn't manage connected clients correcly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-02-14T09:40:13Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"arturoc","id":48240},"id":132671,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T12:31:57Z","body":"Something that easily converts vector direction to openGL degrees?\r\nI find myself constantly trying to guess 270 - atan2(y, x)*RAD_TO_DEG ..... etc\r\nTo rotate something along a vector. \r\n\r\nMight be good to have it be aware of the GL world orientation - or have it so you pass in the up \r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/126","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":126,"html_url":"https://github.com/openframeworks/openFrameworks/issues/126","assignee":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"title":"ofATan2GL / ofVecToGL ?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-02-13T14:22:51Z","state":"open","user":{"url":"https://api.github.com/users/openframeworks","gravatar_id":"a858611b044a8302ab14cfe752e17369","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"openframeworks","id":142866},"id":132377,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-22T15:51:57Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=7&t=3299&p=17852#p17852","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/124","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","number":6,"title":"0073 Release","closed_issues":0,"due_on":"2012-07-30T07:00:00Z","open_issues":5,"created_at":"2011-12-03T15:37:49Z","state":"open","description":"","id":62090},"number":124,"html_url":"https://github.com/openframeworks/openFrameworks/issues/124","assignee":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"title":"TTF type rendering in OF - fix fuzziness ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography","color":"DDDDDD"}],"closed_at":null,"created_at":"2010-02-13T14:15:25Z","state":"open","user":{"url":"https://api.github.com/users/openframeworks","gravatar_id":"a858611b044a8302ab14cfe752e17369","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"openframeworks","id":142866},"id":132373,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T12:30:14Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=8&t=1374","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/121","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":121,"html_url":"https://github.com/openframeworks/openFrameworks/issues/121","assignee":null,"title":"video: loop is not working unless you call play first","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"closed_at":null,"created_at":"2010-02-10T23:16:23Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"arturoc","id":48240},"id":130269,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T12:30:49Z","body":"it would make sense to have an opengl stress test app, that can test some basic about wether or not someone has ARB support, how fast their systems are, etc. I can imagine that for 0.07, we'll be helping people debug shaders and FBOs, having some way to gauge what kind of system they are on and what it can take, will be helpful. \r\n\r\nHere's a simple test app from the Lua-AV folks that looks like a reasonable system: \r\n\r\nhttp://img191.imageshack.us/img191/1659/picture3po.png","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/115","comments":0,"milestone":null,"number":115,"html_url":"https://github.com/openframeworks/openFrameworks/issues/115","assignee":null,"title":"opengl stress test example","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-01-12T02:56:21Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":111018,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-28T14:02:04Z","body":"at the moment, we've got it like:\r\n\r\nofAppGlutWindow::ofAppGlutWindow(){\r\n\tfps\t\t\t\t= 60.0; //give a realistic starting value - win32 issues\r\n\tbFrameRateSet\t\t= false;\r\n}\r\n\r\nbut I personally prefer all apps to start with some kind of similar frame rate (ie, examples running really fast on mac, etc). see for example: \r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?p=16520&#p16520\r\n\r\nthis kind of thing leads to less \"cross-platform-ness\" and more confusion from beginners, no? \r\n\r\n- z\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/107","comments":8,"milestone":null,"number":107,"html_url":"https://github.com/openframeworks/openFrameworks/issues/107","assignee":null,"title":"should we start all OF apps with a frame rate set?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2009-12-31T15:10:45Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":104702,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-27T15:47:45Z","body":"videoGrabber and serial listDevices should return a vector of strings apart from printing to console","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/91","comments":4,"milestone":null,"number":91,"html_url":"https://github.com/openframeworks/openFrameworks/issues/91","assignee":null,"title":"listDevices should return a list of strings","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2009-12-09T17:11:40Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"arturoc","id":48240},"id":94898,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + diff --git a/lib/github/tests/ReplayData/Issue278.setUp.txt b/lib/github/tests/ReplayData/Issue278.setUp.txt new file mode 100644 index 0000000000..d2f26966de --- /dev/null +++ b/lib/github/tests/ReplayData/Issue278.setUp.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/users/openframeworks +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4929'), ('content-length', '564'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"cddd0710dc9490553aecd937e15d1136"'), ('date', 'Tue, 29 May 2012 19:36:56 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","hireable":false,"url":"https://api.github.com/users/openframeworks","html_url":"https://github.com/openframeworks","public_gists":0,"blog":null,"bio":null,"public_repos":12,"company":null,"gravatar_id":"a858611b044a8302ab14cfe752e17369","login":"openframeworks","email":"","followers":399,"name":null,"avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","created_at":"2009-10-21T21:54:37Z","location":null,"id":142866,"following":4} + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4928'), ('content-length', '1253'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"e7459f63683768d5b53fc4b246d13a10"'), ('date', 'Tue, 29 May 2012 19:36:56 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"clone_url":"https://github.com/openframeworks/openFrameworks.git","has_downloads":true,"watchers":1745,"updated_at":"2012-05-29T19:23:07Z","permissions":{"pull":true,"admin":false,"push":false},"homepage":"http://openframeworks.cc","url":"https://api.github.com/repos/openframeworks/openFrameworks","html_url":"https://github.com/openframeworks/openFrameworks","has_wiki":true,"has_issues":true,"fork":false,"forks":349,"size":4232,"git_url":"git://github.com/openframeworks/openFrameworks.git","private":false,"open_issues":333,"svn_url":"https://github.com/openframeworks/openFrameworks","owner":{"url":"https://api.github.com/users/openframeworks","gravatar_id":"a858611b044a8302ab14cfe752e17369","login":"openframeworks","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142866},"name":"openFrameworks","mirror_url":null,"language":"C","description":"OpenFrameworks is a cross platform open source toolkit for creative coding in C++.","ssh_url":"git@github.com:openframeworks/openFrameworks.git","pushed_at":"2012-05-29T19:23:07Z","created_at":"2009-10-21T21:55:54Z","id":345337,"full_name":"openframeworks/openFrameworks"} + diff --git a/lib/github/tests/ReplayData/Issue278.testIteration.txt b/lib/github/tests/ReplayData/Issue278.testIteration.txt new file mode 100644 index 0000000000..4163a8c267 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue278.testIteration.txt @@ -0,0 +1,154 @@ +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4927'), ('content-length', '52085'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last"'), ('etag', '"5e8867ffb4e7630e852b2b231f3b9cdb"'), ('date', 'Tue, 29 May 2012 19:36:57 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-27T18:11:17Z","body":"Since more and more of the OF Core now relies on Poco (ie ofThread, etc) does OF_USING_POCO make sense anymore?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1280","comments":0,"milestone":null,"number":1280,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1280","assignee":null,"title":"deprecate OF_USING_POCO?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-27T18:03:23Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"danomatika","id":480637},"id":4772349,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-28T08:08:24Z","body":"There occurs a weir glitch when compiling the ofShader example with my HD Graphics 3000 (288 Mb) (Mac osx 10.7.4 - Mac Mini - i5 - 2.3Ghz)\n\nI was able to get rid of the glitch by replacing \"gl_FragColor = gl_Color;\" with \"gl_FragColor = 255.0;\" or any other number.\nAnybody knows a reason for the glitch / proper solution?\n\nScreenshot: http://goo.gl/Xdf74\nOpenGL capacities on different graphic cards on apple machines: http://goo.gl/FGQ2N","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1279","comments":2,"milestone":null,"number":1279,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1279","assignee":null,"title":"ofShader example with HD Graphics 3000 issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-26T19:27:56Z","state":"open","user":{"url":"https://api.github.com/users/subtiv","gravatar_id":"837cfe96365c031130a46311eb11d86a","avatar_url":"https://secure.gravatar.com/avatar/837cfe96365c031130a46311eb11d86a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"subtiv","id":1012684},"id":4767675,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-25T18:39:02Z","body":"produces an error on app exit or tex destruction.\n\n OF: OF_LOG_ERROR: trying to delete a non indexed texture, something weird is happening. Deleting anyway\n\nThis is because retain(int id) is a static function in ofTexture.cpp. So we can't retain the depthStencilTexture.\n\nThis suggest we should move the texture allocation of the depth / stencil texture to ofTexture - something which is not possible at the moment. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1277","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1277,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1277","assignee":null,"title":"ofFbo can't retain depthStencil Texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-05-25T18:37:46Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":4758608,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-22T21:26:57Z","body":"\nthe offending line is: \n\nif( speed.getValue() != preSpeed ){\n\nwhich is evaluating as true even through the slider is not touched (float equality test, etc). \n\nif we alter it to something like: \n\nif( fabs(speed.getValue() - preSpeed) > 0.0001 ){\n\nthe code runs fine. probably nicer to add a \"value changed()\" functionality to the slider object though or use EPSILON, etc. \n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1271","comments":0,"milestone":null,"number":1271,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1271","assignee":null,"title":"periodic signal example doesn't run well on windows / cb (float equality error)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-05-22T21:26:57Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":4700182,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-22T16:41:21Z","body":"There's some error that appears on linux systems running the project generator to make VS examples, where the debug and release libs for opencv get added badly to the vs project: \n\n\t%(AdditionalDependencies);opencv_highgui231d.lib;opencv_calib3d231.lib;opencv_imgproc231d.lib;opencv_haartraining_engined.lib;opencv_gpu231d.lib;opencv_flann231.lib;opencv_contrib231d.lib;opencv_video231d.lib;opencv_objdetect231d.lib;zlib.lib;opencv_core231d.lib;opencv_contrib231.lib;opencv_ml231d.lib;opencv_features2d231.lib;opencv_core231.lib;opencv_gpu231.lib;opencv_legacy231d.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_ml231.lib;opencv_imgproc231.lib;opencv_objdetect231.lib;opencv_legacy231.lib;opencv_video231.lib\n\t\t\t\t%(AdditionalLibraryDirectories);..\\..\\..\\addons\\ofxOpenCv\\libs\\opencv\\lib\\vs2010\n\nthis doesn't seem to be the case on osx or windows, which produces correct results: \n\n\t%(AdditionalDependencies);opencv_calib3d231.lib;opencv_contrib231.lib;opencv_core231.lib;opencv_features2d231.lib;opencv_flann231.lib;opencv_gpu231.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_imgproc231.lib;opencv_legacy231.lib;opencv_ml231.lib;opencv_objdetect231.lib;opencv_video231.lib;zlib.lib\n\nwould be good to look at the logic of \"visualStudioProject::addAddon()\" and see if we can fix this.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1268","comments":9,"milestone":null,"number":1268,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1268","assignee":null,"title":"project generator - bad libs for VS / opencv examples","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-05-20T21:50:24Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":4662873,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T00:43:37Z","body":"I woud love some eyes on ofFbo would be great to get it cleaned up and standardized for 0072. \nRight now there are a ton of #ifdefs and some very hard to follow logic, which makes bug fixing quite difficult especially on OPENGL_ES\n\nsee: https://gist.github.com/2711815\n\n@elliotwoods @arturoc @memotv @damiannz @ofZach @kylemcdonald \n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1263","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1263,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1263","assignee":null,"title":"ofFbo.cpp is a huge mess! ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-16T16:27:30Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":4608132,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T14:29:02Z","body":"I added a .mailmap file to the repo to correctly collate all the contributors in spite of changing nick names/email addresses. This is useful when trying to identify contributors for a changelog or similar, or when using the git logging functions like shortlog.\n\nSee the before/after situation here: https://gist.github.com/2710366\n\nI have respected privacy and only used those real names that people have already given in a git ID in the repo. Mainly this addition only associates the different email addresses to one user. @arturoc wins the prize of most used emails! :-)\nThe list is pretty complete, I only had difficulties to associate some IDs to the correct Zachs, since it was not clear for some if @ofZach or @stfj (Zach Gage) was the contributor. Those were left as-is.\n\nIf anybody has objections to their various email being united under their name, please say so and I will correct/remove the relevant entries.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1262","comments":2,"milestone":null,"number":1262,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1262","assignee":null,"title":"Add .mailmap for contributor collation","labels":[],"closed_at":null,"created_at":"2012-05-16T13:44:32Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"id":4604661,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1262.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1262","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1262.patch"}},{"updated_at":"2012-05-16T09:35:31Z","body":"Address #375.\n\nAdd setVolumef(float). Also more clearly define volume ranges (int is 0..255, float is 0..1) and more robust clamping of volume argument.\n\nThis has not been tested on Linux or Windows.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1260","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1260,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1260","assignee":null,"title":"allow float volume on ofVideoPlayer","labels":[],"closed_at":null,"created_at":"2012-05-15T17:50:22Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"damiannz","id":144366},"id":4588997,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1260.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1260","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1260.patch"}},{"updated_at":"2012-05-21T07:31:47Z","body":"This was originally posted @\"biginners\".\n\nhttp://forum.openframeworks.cc/index.php/topic,9527.msg44049.html#msg44049\n\nJoshua noble suggested me to file it as a bug on jithub\n\n\n/////////////////original messages\n\nHello.\n\nI have question about ofShortPixels and ofShortColor.\n\nIf you execute the code below , it'll draw at half way screen height even though I did set aDot at (0. screen height / 4)\n\nAnd another weird thing is it draws 20 pixels instead of 10 pixels which I set for loop for 10 times.\n\nIt only draws correctly with ofPixels and ofColor.\n\nIt doesn't work with ofFloatPixels and ofFloatColor.\n\nPlease help me out.\n\nI need to have RGB value over 255 so I can check if those values are over 255.\n\nThanks in advanced\n\nJin\n\n\n.h file\nCode:\nview plaincopy to clipboardprint?\n\n #pragma once \n #include \"ofMain.h\" \n \n class Dot { \n public: \n ofVec2f location; \n \n Dot(){ \n location.set(0,0); \n } \n \n ~Dot(){} \n }; \n \n class testApp : public ofBaseApp{ \n public: \n void setup(); \n void update(); \n void draw(); \n \n int w,h; \n \n ofTexture particleTexture; \n ofShortPixels * rgbPixels; \n \n ofShortColor& paint(ofShortColor &); \n \n Dot aDot; \n \n \n }; \n\n\n.cpp file\nCode:\nview plaincopy to clipboardprint?\n\n #include \"testApp.h\" \n //-------------------------------------------------------------- \n void testApp::setup(){ \n ofSetFrameRate(30); \n ofSetBackgroundAuto(TRUE); \n ofBackground(0, 0, 0); \n w = ofGetWidth(); \n h = ofGetHeight(); \n \n particleTexture.allocate(w,h,GL_RGB); \n rgbPixels = new ofShortPixels; \n rgbPixels->allocate(w, h, 3); \n aDot.location.set(0, h/4); \n } \n \n //-------------------------------------------------------------- \n void testApp::update(){ \n ofShortColor pixelColor; \n ofShortColor newPixelColor; \n for(int i = 0; i<10; i++){ \n pixelColor = rgbPixels->getColor(aDot.location.x+i, aDot.location.y); \n \n newPixelColor = paint(pixelColor); \n \n rgbPixels->setColor(aDot.location.x+i, aDot.location.y,newPixelColor); \n \n } \n particleTexture.loadData(* rgbPixels); \n } \n \n //-------------------------------------------------------------- \n void testApp::draw(){ \n particleTexture.draw(0, 0, w, h); \n } \n \n ofShortColor & testApp::paint(ofShortColor & _c){ \n \n _c.r += 10; \n _c.g += 2; \n _c.b += 3; \n \n _c.set(_c.r, _c.g, _c.b); \n _c.clamp(); \n \n return _c; \n } ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1257","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1257,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1257","assignee":null,"title":"ofShortPixels doesn't draw pixels correctly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-14T05:46:14Z","state":"open","user":{"url":"https://api.github.com/users/gazaebal","gravatar_id":"f9d7811bb6318fedf7e9f2fe8bfece32","avatar_url":"https://secure.gravatar.com/avatar/f9d7811bb6318fedf7e9f2fe8bfece32?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"gazaebal","id":1736190},"id":4557803,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T21:42:08Z","body":"if i'm not mistaken, the correct way of using ofMatrix4x4 in oF is `glMultMatrixf(myMatrix.getPtr())` or `glLoadMatrixf`.\nThis seems a bit uncomfortable for me.\n\nsome candidates are:\n\n```c++\nofPushMatrix(const ofMatrix4x4 &); //needs alternatives as you might not want to push at the time\nofLoadMatrix(const ofMatrix4x4 &);\nofMultMatrix(const ofMatrix4x4 &);\n\nofMatrix4x4::apply();\nofMatrix4x4::glLoadMatrix(matrixMode = OF_MATRIX_MODE_CURRENT);\n```\n\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1256","comments":5,"milestone":null,"number":1256,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1256","assignee":null,"title":"Feature ofPushMatrix(const ofMatrix4x4 &)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-13T18:20:29Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4554058,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-11T21:24:20Z","body":"\tunsigned char faceSize = 3;\n\tif(data.getNumIndices()){\n\t\tos << \"element face \" << data.getNumIndices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t} else if(data.getMode() == OF_PRIMITIVE_TRIANGLES) {\n\t\tos << \"element face \" << data.getNumVertices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t}\n\nThe facesize is being set as static as 3, but this results in strange exports...things open OK in Meshlab, but exporting to other programs with no faces seems like it won't work","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1252","comments":6,"milestone":null,"number":1252,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1252","assignee":null,"title":"0071 ply (mesh.save()) Point export is broken","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-11T19:45:53Z","state":"open","user":{"url":"https://api.github.com/users/laserpilot","gravatar_id":"07001341fe6c156dddd5b9d06d828cba","avatar_url":"https://secure.gravatar.com/avatar/07001341fe6c156dddd5b9d06d828cba?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"laserpilot","id":1041023},"id":4539985,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:33:31Z","body":"couple of minor bugfixes (absolute path wasn't being detected on second if [absolute] for windows paths)\r\nfixes unixy paths no matter what on windows","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1251","comments":8,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1251,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1251","assignee":null,"title":"Bugfix of to data path","labels":[],"closed_at":null,"created_at":"2012-05-10T06:44:20Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4507572,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1251.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1251","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1251.patch"}},{"updated_at":"2012-05-16T09:43:23Z","body":":(\r\n\r\nIt seems i'm getting double 'data/' in my paths\r\nafter a little tracking down, i found this is because ofSystemLoadDialog changes the current working directory\r\n\r\nso we could try and either fix that by popping the folder after the dialog, \r\nof for windows using something like ```GetModuleFileName``` to get the path of the current exe rather than using the current working directory\r\n\r\nI can't seem to run GetModuleFileName from ofUtils.cpp even though windows.h is included in ofConstants.h (included in ofUtils.h)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1250","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1250,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1250","assignee":null,"title":"bug: ofToDataPath broken again","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-05-10T06:35:24Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4507492,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:42:44Z","body":"'ofx TCPClient :: receiveRaw' was found in the proble.\n\nOriginal :\n\n\tint ofxTCPClient::receiveRawBytes(char * receiveBuffer, int numBytes){\n\t\t\t messageSize = TCPClient.Receive(receiveBuffer, numBytes);\t\n\t\t\t if(messageSize==0){\t\t\n\t\t\t\t\t\tclose();\t\n\t\t\t }\t\n\t\t\t return messageSize;\n\t}\n\nBut 'TCPClient.Receive (receiveBuffer, numBytes)' from '-1' may return\n\nI was modified\n\n\tstring ofxTCPClient::receiveRaw(){\n\t\t\t messageSize = TCPClient.Receive(tmpBuff, TCP_MAX_MSG_SIZE);\n\t\t\t if(messageSize==0){\n\t\t\t\t\t\tclose();\n\t\t\t }\n\t\t\t //TCPClient.Receive is return -1....\n\t\t\t else if(messageSize < 0){ \n\t\t\t\t\t\ttmpBuff[0] = 0;\n\t\t\t }\n\t\t\t else if(messageSize; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"cf9ec647fbc78faae05cb2d11598f79c"'), ('date', 'Tue, 29 May 2012 19:27:10 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-04-30T19:43:55Z","body":"On 'update', PG should respect existing custom include paths, source files, linker flags and project options (such as optimization settings).\r\n\r\nOR\r\n\r\nXcode project should read and respect `OTHER_LDFLAGS` and `HEADER_SEARCH_PATHS`, and add `OTHER_CFLAGS` from Project.xcconfig; projectGenerator should leave these settings alone unless it figures out they need to be adjusted (this is probably going to be difficult).","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1217","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1217,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1217","assignee":null,"title":"projectGenerator update doesn't respect existing project settings","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-04-24T21:03:44Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4269431,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-02T10:19:07Z","body":"Since I don't want to derail #484 further, this issue deals with the implementation of a deprecation mechanism.\r\nBased on [this](http://stackoverflow.com/questions/295120/c-mark-as-deprecated), I made an OFDEPRECATED preproc macro.\r\n\r\nQUESTION: How do I correctly #ifdef for MacOS/XCode4/llvm?\r\n\r\nCould people test this on different platforms? On linux this works. \r\n\r\n\t\ttestApp.h:\r\n\r\n\t\t#pragma once\r\n\r\n\t\t#ifdef __GNUC__\r\n\t\t// maybe __clang__ for checking against llvm/xcode4?\r\n\t\t#define OFDEPRECATED(message, func) func __attribute__ ((deprecated(message)))\r\n\t\t#elif defined(_MSC_VER)\r\n\t\t#define OFDEPRECATED(message, func) __declspec(deprecated(message)) func\r\n\t\t#else\r\n\t\t#pragma message(\"WARNING: You need to implement DEPRECATED for this compiler\")\r\n\t\t#define OFDEPRECATED(message, func) func\r\n\t\t#endif\r\n\r\n\t\tand \r\n\r\n\t\t\t\tvoid dragEvent(ofDragInfo dragInfo);\r\n\t\t\t\tvoid gotMessage(ofMessage msg);\r\n\t\t\r\n\t\t\t\tOFDEPRECATED(\"This is an old function, don't use!\", void deprecatedFunction(void));\r\n\t\t\t\tOFDEPRECATED(\"Obsolete type, use T2!\", typedef int T1);\r\n\t\t\t\ttypedef int T2;\r\n\t\t\t\tOFDEPRECATED(\"This is an old variable, don't use!\", int oldvar3);\r\n\t\t\t\t//This breaks a bit cause it's used in the constructor of testApp, so always triggers.\r\n\r\n\t\t};\r\n\t\tOFDEPRECATED(\"old class!\", class oldClass {\r\n\t\t\tpublic:\r\n\t\t\t\toldClass();\r\n\t\t\t\tvirtual ~oldClass();\r\n\t\t});\r\n\r\n\t\ttestApp.cpp:\r\n\r\n\t\tvoid testApp::setup(){\r\n\t\t\tOFDEPRECATED(\"old string. Don't use\", string oldstring);\r\n\t\t\t// Uncomment these to trigger deprecation warnings\r\n\t\t//\tdeprecatedFunction();\r\n\t\t//\tT1 t1object = 5;\r\n\t\t//\toldstring = \"bla\";\r\n\t\t//\toldvar3=5;\r\n\t\t//\toldClass bla;\r\n\t\t}\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1216","comments":11,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1216,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1216","assignee":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Implement deprecation mechanism","labels":[],"closed_at":null,"created_at":"2012-04-24T21:03:39Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4269429,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-30T19:43:14Z","body":"When using PG's 'update' functionality on apps are in paths with non-standard depths (in my case, `oF/apps/dir/subdir/subsubdir`) the OF_PATH and #include directives in the resulting Project.xcconfig don't match, which means oF projects won't compile:\r\n\r\n~~~~\r\n//THE PATH TO THE ROOT OF OUR OF PATH RELATIVE TO THIS PROJECT.\r\n//THIS NEEDS TO BE DEFINED BEFORE CoreOF.xcconfig IS INCLUDED\r\nOF_PATH = ../../../..\r\n\r\n//THIS HAS ALL THE HEADER AND LIBS FOR OF CORE\r\n#include \"../../../../../libs/openFrameworksCompiled/project/osx/CoreOF.xcconfig\"\r\n~~~~\r\n\r\nNote extra `../` in the `#include` path.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1215","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1215,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1215","assignee":null,"title":"projectGenerator sets incorrect path in Project.xcconfig","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-04-24T20:59:57Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4269359,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-22T23:56:33Z","body":"i'm teaching a workshop right now and i feel like it's ridiculous that i need to explain pointers just to access video :)\r\n\r\nlet's add this!","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1202","comments":3,"milestone":null,"number":1202,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1202","assignee":null,"title":"ofVideoPlayer etc needs ofColor access","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-22T18:42:58Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4231092,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-29T17:34:24Z","body":"DO NOT PULL YET!\r\n\r\nHey all\r\n\r\nHere's the 'off-axis camera' setup we worked on at ScreenLab last weekend.\r\nIt allows you to:\r\n\r\n* Set lens offset on a camera\r\n* Calculate the camera parameters based on a 'view portal' defined by 3 points (top left, bottom left, bottom right)\r\n\r\nCurrently the changes involve editing ofBaseRenderer (and therefore all other renderers) to support lensOffset parameter (default 0,0). We could remove this since ofCamera doesn't actually use ofSetupScreenPerspective\r\n\r\nSo let's have a quick chat about what needs chaning to make this core friendly and then probably pull after 0071 release?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1201","comments":9,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1201,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1201","assignee":null,"title":"Feature provocation pull request: ofCamera lens offset","labels":[],"closed_at":null,"created_at":"2012-04-22T15:55:29Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4230131,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1201.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1201","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1201.patch"}},{"updated_at":"2012-05-14T01:22:17Z","body":"I'm investigating the way to draw bezier curves / nurbs etc. with shaders, here is a list a links and information I found that can improve render times with OF. Any way I must admit I'm new to openGL & shaders so maybe someone can take this to implement maybe an add-on or maybe to added to the core.\r\n\r\n**Resolution Independent Curve Rendering using Programmable Graphics Hardware**\r\nhttp://research.microsoft.com/en-us/um/people/cloop/loopblinn05.pdf\r\n\r\n**Resolution independent GPU accelerated Curve & Font rendering**\r\n**GPU based Resolution Independent Font & Curve Rendering – initial Release**\r\nhttp://jausoft.com/blog/2011/04/01/resolution-independent-gpu-accelerated-curve-font-rendering/\r\nhttp://ramisantina.com/blog/?p=73\r\nhttp://vimeo.com/21810192\r\nhttp://jogamp.org/doc/gpunurbs2011/p70-santina.pdf\r\n\r\n**Curvy blues**\r\nhttp://www.mdk.org.pl/2007/10/27/curvy-blues\r\n\r\n**Vector drawing: OpenGL shaders and cairo & vector hardware tessellation**\r\nhttp://www.mdk.org.pl/2007/8/6/vector-drawing-opengl-shaders-and-cairo\r\n\r\n**ShivaVG & Random Access Rendering of Animated Vector Graphics**\r\nhttp://ivanleben.blogspot.com.es/2007/07/shivavg-open-source-ansi-c-openvg.html\r\nhttp://www.youtube.com/watch?v=mD8X-e5-sY4\r\nhttp://www.youtube.com/watch?v=U4USCfwORUg\r\nhttp://andrejas-atelier.com/ivan/IvanLebenHonsThesis.pdf\r\n\r\n**RAVG**\r\nhttp://research.microsoft.com/en-us/um/people/hoppe/proj/ravg/\r\n\r\n**NV Path Rendering Videos (seams only with nvidia)**\r\nhttp://developer.nvidia.com/nv-path-rendering-videos\r\n\r\n**Vector drawing: OpenGL polygon tessellation**\r\nhttp://www.mdk.org.pl/2007/8/16/vector-drawing-opengl-polygon-tessellation\r\nhttp://zrusin.blogspot.com.es/2006/07/hardware-accelerated-polygon-rendering.html\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1190","comments":8,"milestone":null,"number":1190,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1190","assignee":null,"title":"Bezier Shaders & Vector openGL rendering","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-2D","name":"section-2D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-20T09:23:00Z","state":"open","user":{"url":"https://api.github.com/users/microbians","gravatar_id":"98c91e60903b83c0a022ee70cca9ca21","login":"microbians","id":1662136,"avatar_url":"https://secure.gravatar.com/avatar/98c91e60903b83c0a022ee70cca9ca21?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4207350,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:41:20Z","body":"ofSetCurveResolution is not changing the resolution using ofBezier nor ofBezierVertex (tested with ofScale is more easy to see the bug)\r\n\r\n ofFill();\r\n ofSetHexColor(0xFF9933);\r\n ofBeginShape();\r\n ofVertex(x0,y0);\r\n ofBezierVertex(x1,y1,x2,y2,x3,y3);\r\n ofEndShape();\r\n\r\nall works fine when using ofPath directly:\r\n\r\n ofPath curve;\r\n curve.setFillHexColor(0xFF000);\r\n curve.setCurveResolution(120);\r\n curve.moveTo(x0, y0);\r\n curve.bezierTo(x1,y1,x2,y2,x3,y3);\r\n curve.draw();\r\n\r\nmore: http://forum.openframeworks.cc/index.php/topic,9596.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1189","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1189,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1189","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofSetCurveResolution + ofBezierVertex bug","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-04-20T08:51:51Z","state":"open","user":{"url":"https://api.github.com/users/microbians","gravatar_id":"98c91e60903b83c0a022ee70cca9ca21","login":"microbians","id":1662136,"avatar_url":"https://secure.gravatar.com/avatar/98c91e60903b83c0a022ee70cca9ca21?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4206982,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-01T04:10:23Z","body":"If you set up an ofFbo as follows...\r\n\r\n```cpp\r\n ofFbo::Settings s;\r\n s.width = 400;\r\n s.height = 400;\r\n s.textureTarget = GL_TEXTURE_2D;\r\n s.useDepth = true;\r\n s.depthAsTexture = true;\r\n s.dethInternalFormat = GL_DEPTH_COMPONENT24;\r\n```\r\n\r\n...then the colour texture's dimensions are set to be the next POTs up but the depth texture's dimensions don't seem to be. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1186","comments":2,"milestone":null,"number":1186,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1186","assignee":null,"title":"ofFbo depthBufferTex can be inconsistent with colour texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-18T15:08:32Z","state":"open","user":{"url":"https://api.github.com/users/neilmendoza","gravatar_id":"3e46b12547e7bac19eb982bc512b19c4","login":"neilmendoza","id":818571,"avatar_url":"https://secure.gravatar.com/avatar/3e46b12547e7bac19eb982bc512b19c4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4174070,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:44:27Z","body":"As mentioned here: http://forum.openframeworks.cc/index.php?topic=9107.0\r\nOpenGLES2 not working. It is always falls back to ES1. I tested it only on iPad2 with iOS 5.0.1.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1178","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1178,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1178","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"OpenGLES2 not working","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-04-16T11:19:36Z","state":"open","user":{"url":"https://api.github.com/users/erinnovations","gravatar_id":"29639bbeb3afdde8fb3c7e273e5e43c6","login":"erinnovations","id":253455,"avatar_url":"https://secure.gravatar.com/avatar/29639bbeb3afdde8fb3c7e273e5e43c6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4132608,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-14T13:45:55Z","body":"in ofTexture::loadData we are doing:\r\n\r\n\r\n\t//------------------------ likely, we are uploading continuous data\r\n\tGLint prevAlignment;\r\n\tglGetIntegerv(GL_UNPACK_ALIGNMENT, &prevAlignment);\r\n\tglPixelStorei(GL_UNPACK_ALIGNMENT, 1);\r\n\r\nany reason for this? leaving the default works too. i've been working with a huge video and the transfer rates on some cards were super slow with ofTexture::loadData. even glDrawPixels was faster, i've finally used pbo's but later looking at ofTexture discovered this lines and i suspect that it could be the reason for loadData being slower, haven't tested it yet though.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1175","comments":0,"milestone":null,"number":1175,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1175","assignee":null,"title":"GL_UNPACK_ALIGNMENT 1 in ofTexture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-14T13:45:42Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4117762,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:39:22Z","body":"one returns the result (dot) the other performs in place (cross), i.e. overrides the contents\r\nThe two definitions are inconsistent\r\npropose rename `ofVec3f::dot` to become `ofVec3f::getDotted` in line with `ofVec3f::getCrossed`","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1174","comments":9,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1174,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1174","assignee":null,"title":"bug : inconsistent API for ofVec3f::dot and ofVec3f::cross","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-13T17:09:38Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4108582,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-14T04:20:36Z","body":"If you pass a string containing non-ascii characters to ofToHex(), the non-ascii characters (with character codes above 127) will be output as ffffxxxx (it depends on the exact character value and the size of the int type on the platform you are compiling for).\r\nThe problem is due to an incorrect cast in the ostringstream operation inside the loop.\r\nInstead of directly casting the (signed) char from the input character to an unsigned int, the input character must first be cast to an unsigned char.\r\nIn other words, instead of:\r\n``` out << setfill('0') << setw(2) << hex << (unsigned int) value[i];```\r\nit should be:\r\n``` out << setfill('0') << setw(2) << hex << (unsigned int) ((unsigned char)value[i]);```\r\nor maybe even:\r\n``` out << setfill('0') << setw(2) << hex << static_cast(static_cast(value[i]));```\r\nif you prefer C++ style casts over C style casts. :)\r\n\r\nHTH\r\n/Jesper","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1173","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1173,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1173","assignee":null,"title":"ofToHex(string) is wrong for non-ascii input","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-13T14:42:30Z","state":"open","user":{"url":"https://api.github.com/users/pappis","gravatar_id":"fbf3d56c96cf5b891056530066549692","login":"pappis","id":1640543,"avatar_url":"https://secure.gravatar.com/avatar/fbf3d56c96cf5b891056530066549692?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4104336,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-12T10:09:42Z","body":"if I call ofBeginSaveScreenAsPDF using ofEasyCam or the ofCamera, the pdf doesn't have the perspective of the camera. There's a parameter b3d to ofBeginSaveScreenAsPDF which I interpret to be \"render taking into account 3d transforms\", but it doesn't seem to have any effect.\r\n\r\nmore on the forum\r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,9542.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1171","comments":0,"milestone":null,"number":1171,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1171","assignee":null,"title":"ofBeginSaveScreenAsPDF ignores 3d transformations","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-12T10:09:42Z","state":"open","user":{"url":"https://api.github.com/users/jesusgollonet","gravatar_id":"5008d5295e9bc2636313c7b50ed5981d","login":"jesusgollonet","id":31100,"avatar_url":"https://secure.gravatar.com/avatar/5008d5295e9bc2636313c7b50ed5981d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4081188,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-13T14:54:18Z","body":"if I have `ofEvent boolEvent` and i try to call `ofNotifyEvent( boolEvent, true )` i get a `no matching function` error as the compiler cannot coerce `true` to a `bool &`.\r\n\r\nto solve this, instead of this:\r\n\r\n~~~~\r\nofEvent boolEvent;\r\n...\r\nofNotifyEvent( boolEvent, true );\r\n~~~~\r\n\r\ni need to write this:\r\n\r\n~~~~\r\nofEvent boolEvent;\r\n...\r\nbool myBool = true;\r\nofNotifyEvent( boolEvent, myBool );\r\n~~~~\r\n\r\nthis is kind of annoying.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1167","comments":2,"milestone":null,"number":1167,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1167","assignee":null,"title":"ofNotifyEvent( boolEvent, true ) fails to compile","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-04-11T12:03:34Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4063456,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-11T13:21:33Z","body":"It's currently not possible to have an event without arguments\r\n\r\n`ofEvent testEvent;` -- fails to compile\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1166","comments":2,"milestone":null,"number":1166,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1166","assignee":null,"title":"ofEvent lacks simple, argument-free use case","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-04-11T12:00:19Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4063417,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-21T15:41:01Z","body":"It's currently not possible to write `ofLogError( \"serial\", \"error %i connecting to serial\", serialError )`. \r\n\r\nThere should be `ofLogError( string module, string format, ... )` methods as with normal ofLog.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1165","comments":6,"milestone":null,"number":1165,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1165","assignee":null,"title":"ofLogError, ofLogWarning lack format, ... args","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-04-11T11:56:33Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4063366,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-10T16:47:19Z","body":"change `allocate(_w, _h, OF_IMAGE_COLOR);` to `allocate(_w, _h, OF_IMAGE_COLOR_ALPHA);` (via reza on irc)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1152","comments":4,"milestone":null,"number":1152,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1152","assignee":null,"title":"grabScreen in ofImage fails on Android","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-04-09T17:15:21Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4032047,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-29T14:46:40Z","body":"the module name is no longer printed if it's coming from OF itself.\r\n\r\ninstead of the constant name, a human-readable string is printed.\r\n\r\nexample output from project generator: http://pastebin.com/raw.php?i=0dp938Jx","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1151","comments":6,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1151,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1151","assignee":null,"title":"shorten + simplify ofLog output","labels":[],"closed_at":null,"created_at":"2012-04-08T21:13:14Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4023525,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1151.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1151","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1151.patch"}},{"updated_at":"2012-04-17T14:47:36Z","body":"\r\nWorking on the project generator, which has a fair amount of logging, I'm concerned about how much space we loose on each line: \r\n\r\n OF: OF_LOG_NOTICE:\r\n\r\nit's about 15-20 characters or so, pretty significant where each line is 80, so alot more wrapping happens then I'd like, making the results less cleaner or organized. \r\n\r\nI propose we alter \r\n\r\n string ofGetLogLevelName(ofLogLevel level){\r\n switch(level){\r\n case OF_LOG_VERBOSE:\r\n return \"OF_LOG_VERBOSE\";\r\n break;\r\n case OF_LOG_NOTICE:\r\n return \"OF_LOG_NOTICE\";\r\n break;\r\n case OF_LOG_WARNING:\r\n return \"OF_LOG_WARNING\";\r\n break;\r\n case OF_LOG_ERROR:\r\n return \"OF_LOG_ERROR\";\r\n break;\r\n case OF_LOG_FATAL_ERROR:\r\n return \"OF_LOG_FATAL_ERROR\";\r\n break;\r\n case OF_LOG_SILENT:\r\n return \"OF_LOG_SILENT\";\r\n break;\r\n default:\r\n return \"\";\r\n }\r\n }\r\n\r\nso that we can have something like : \r\n\r\n (of:notice) \r\n (of:verbose) \r\n (of:error) \r\n\r\nor something smaller and if we loose the all caps, maybe less threatening :)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1150","comments":4,"milestone":null,"number":1150,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1150","assignee":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"propose shortening ofLog console message length","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-04-08T20:32:49Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4023305,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-07T15:00:32Z","body":"Hey all\r\n\r\nA few sections of the repo need some love to put them in line with the project generator:\r\n\r\n1. Readme's\r\n2. Rogue old project generators\r\n3. Document complementing tools\r\n\r\n# Readme\r\n\r\nThe readme's in the root of the repo need some love\r\nnone of them mention project generator \r\n\r\ni feel like each should be a description of how to get to a working project generator on each of the respective platforms\r\n\r\nalso note:\r\n* .vs2010 is missing\r\n* readme.txt repeats information from the other readme's (i.e. it's a list of platform specific instructions)\r\ni think this should be perhaps a little description of oF and a few tips on how to get started\r\n\r\n# Rogue old 'project generators' / documenting complementary tools for project generator\r\n\r\nHere's things I can find in the repo which don't make sense to me at the moment:\r\n\r\n* `openFrameworks\\scripts\\????\\compileAllExamples.bat`\r\n** is this supposed to be run (optionally) after the project generator?\r\n** why is the project template within this folder?\r\n* `openFrameworks\\scripts\\????\\createProjects.py` \r\n** if this isn't supposed to be used anymore, lets delete it immediately (we can always recover in emergencies)\r\n\r\nand the 'other' folder in the root.. perhaps never took off?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1146","comments":0,"milestone":null,"number":1146,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1146","assignee":null,"title":"Document Project Generator / clean out old tools","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"closed_at":null,"created_at":"2012-04-07T14:43:53Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4015514,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-07T19:49:31Z","body":"When attempting to render a mesh to a PDF the ofCairoRender does not output a filled mesh, thus the PDF output looks empty. \r\n\r\nIf you open the file in illustrator you'll see the paths, there but with no stroke or fill. \r\n\r\nWhen I dug into the issue a bit further I realized that Cairo isn't capable of rendering shapes with per vertex colors easily...\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1145","comments":3,"milestone":null,"number":1145,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1145","assignee":null,"title":"ofCairoRenderer ofMesh doesn't render properly to PDF","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-04-06T22:02:01Z","state":"open","user":{"url":"https://api.github.com/users/rezaali","gravatar_id":"548374013b9c6e50ebbd2294e12d4f31","login":"rezaali","id":555207,"avatar_url":"https://secure.gravatar.com/avatar/548374013b9c6e50ebbd2294e12d4f31?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4010494,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-01T04:21:01Z","body":"When using the ofColor subtraction operator, negative results are clamped to positive values instead of 0. Values are circulating between 0 and 255, which could be useful for hue in HSV but in most cases (R, G, B..) is not what I would expect.\r\n\r\n ofColor a(10, 40, 80);\r\n ofColor b(20, 5, 30);\r\n ofColor c = (a-b); // I get: (246, 45, 50), I would expect: (0, 45, 50)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1144","comments":9,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1144,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1144","assignee":null,"title":"ofColor subtraction and negative values","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-04-06T07:56:44Z","state":"open","user":{"url":"https://api.github.com/users/jembezmamy","gravatar_id":"69a23dc9914cb6bc3202c50e15eabba0","login":"jembezmamy","id":720354,"avatar_url":"https://secure.gravatar.com/avatar/69a23dc9914cb6bc3202c50e15eabba0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4001148,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-04T12:07:24Z","body":"When using the dragEvent ofDragInfo I always get the following error message:\r\n\r\nwarning: Could not find object file \"/Users/theo/Documents/CODE/__OPENFRAMEWORKS/gitOF/openFrameworks/apps/devApps/macDragDropExample/buildGlutFrameworkHackedWindowLevel10.4/libForeground.a(macx_foreground.o)\" - no debug information available for \"/Users/mcast/Code/GLUT-ToPost/macx_foreground.m\".\r\n\r\nIt doesn't seem to hurt my code but is a bit annoying, especially early on when I wasn't sure if it had anything to do with compile failings. Not a big issue obviously, but it might confuse some other newbie's also.\r\n\r\n(OF 0.07 - Xcode 4.2.1 - OS X 10.7.3 - macbook pro) ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1138","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1138,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1138","assignee":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"benign error message","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2012-04-04T11:05:57Z","state":"open","user":{"url":"https://api.github.com/users/davideo71","gravatar_id":"42c3c1acbdb4a998d8096b49745219cd","login":"davideo71","id":1611385,"avatar_url":"https://secure.gravatar.com/avatar/42c3c1acbdb4a998d8096b49745219cd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3968742,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-03T17:37:10Z","body":"theo's #1133 made me think about ways that i use noise regularly that might also be abstracted.\r\n\r\ni would also like to see versions of noise that return multidimensional results. normally i do something like:\r\n\r\n\tofVec2 a(ofSignedNoise(t, 0), ofSignedNoise(0, t)); // 1D -> 2D\r\n\tofVec2 b(ofSignedNoise(x, 0), ofSignedNoise(0, y)); // 2D -> 2D\r\n\tofVec3 c(ofSignedNoise(t, 0, 0), ofSignedNoise(0, t, 0), ofSignedNoise(0, 0, t)); // 1D -> 3D\r\n\tofVec3 d(ofSignedNoise(x, 0, 0), ofSignedNoise(0, y, 0), ofSignedNoise(0, 0, (x + y) / 2)); // 2D -> 3D\r\n\r\nand it would be good to spend some time making sure these are really good ways of doing it, then implement them inside some functions like `ofSignedNoise2()` and `ofSignedNoise3()` (for example).","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1134","comments":2,"milestone":null,"number":1134,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1134","assignee":null,"title":"multidimensional noise output","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-04-01T16:44:55Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3917377,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-01T17:48:12Z","body":"ie: the equivalent of doing \r\n\r\nfloat rate = 0.02 + ofNoise(ofGetElapsedTimeF() * 0.02, 100.0) * 0.015;\r\nfloat value = ofSignedNoise( rate, x, y ); \r\n\r\nas one function. \r\n\r\nalso see kyle's #1134 for other noise utils. \r\n\r\nI find myself needing this quite often for more natural random motion where the rate of change is variable. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1133","comments":0,"milestone":null,"number":1133,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1133","assignee":null,"title":"ofNoise and ofSignedNoise with 2nd order control for rate.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-04-01T15:45:11Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3917018,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=3 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4941'), ('content-length', '55518'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"414a5c156bbe219ad21d164052b40f6c"'), ('date', 'Tue, 29 May 2012 19:27:11 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-04-02T02:05:52Z","body":"This is a feature discussion issue for what string features we should add to of.\r\nofZach mentioned some regexp ones from P5 match matchAll\r\nWould be great to get some eyes on this.\r\n\r\nOne approach would be a static class or namespace.\r\nThe idea would be we could include a variety of handy functions that would be useful for people not wanting to get into regexp\r\n\r\n\tofString::contains(str, \"apple\") //returns bool\r\n\tofString::starts(str, \"The\") //returns bool\r\n\tofString::ends(str, \".\") //returns bool\r\n\tofString::count(str, \"apples\") //count how many times apples appears in the \r\n\tofString::join(myVectorStr, \", \"); //this is currently ofJoinString\r\n\tofString::split(someText, \".\"); //this is currently ofSplitString\r\n\tofString::split(someHtml, \"<\", \">\"); //this is the same but returns a vector of things between the start and end delims\r\n\tofString::limit(someText, 200); //limit the text to 200 characters. optional arg to add ... to the end.\r\n\r\nQuestions:\r\n- Should we mirror P5 with match and matchAll or should we indicate that regexp is required? ie regexMatch regexMatchAll ?\r\n- Other string utils we could add?\r\n- Should it be ofStringUtils:: or ofString:: ?\r\n- Something to do a split and then return a vector of float int etc?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1132","comments":6,"milestone":null,"number":1132,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1132","assignee":null,"title":"ofStringUtils:: feature discussion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-31T17:52:48Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":3911629,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-05-27T17:40:30Z","body":"This is a feature discussion issue for what should be added / changed to ofTTF.\r\nWould be great to get some eyes on this from @vtron @ofzach @arturoc and anyone with thoughts on the matter.\r\n\r\nTextAreas:\r\n- Fit text to a box\r\n- Handle overflow ( ie either truncate or resize box height )\r\n- non ragged options\r\n- could textAreas work with both ofTTF and ofDrawBitmapString ? abstract text formatting?\r\n\r\nAlignment:\r\n- Left align a string\r\n- Right align\r\n- Center\r\n- Top align \r\n- Base align \r\n\r\nSpacing:\r\n- Kerning\r\n- Leading / line height\r\n\r\nLoading:\r\n- Allow for loading a font up to a max size for drawing at different sizes. \r\n- Allow for selection and loading of specific sizes within one object. ie: myFont.setCurrentSize(12); \r\n- Font family's / sets ? Bold, Italic etc? \r\n\r\nDrawing:\r\n- Allow for drawing font at different sizes. Scale font as needed. \r\n\r\nFormatting:\r\n- Could we somehow allow a string to have different colors, sizes. Right now it is a pain to change colors or sizes. \r\n- would this be replicating basic html or another approach? maybe better as an addon?\r\n\r\nInfo:\r\n- Ability to get the x and y position of the nth character in the string? useful maybe for cursor or selection?\r\n\r\n**Update:**\r\n-Underline\r\n-Render rect behind text ( a la what @kylemcdonald added to ofDrawBitmapString)\r\n-Scale type to fit a rect + keep aspect ratio\r\n-Crazy: text along a path :) ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1131","comments":25,"milestone":null,"number":1131,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1131","assignee":null,"title":"ofTTF feature discussion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-31T17:36:25Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":3911537,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-31T14:44:01Z","body":"Agree on a common format for a header in the contributed example files.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1130","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1130,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1130","assignee":null,"title":"Define standard header for examples.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-31T14:44:01Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":3910580,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-04-24T02:12:05Z","body":"\r\n\r\nXcode 4 mangles OF projects pretty badly in the following ways: \r\n\r\na) it autogenerates schemes, and \"openframeworks\" appears as the chosen scheme\r\nb) it sometimes chooses the wrong SDK for OF -- is there a way to set that?\r\nc) debug and release are not really clear, part of this is a shift in xcode -- but it's much harder to see how things are compiled and to set release or debug\r\nd) I still had issues with OF needing to be recompiled all the time. I tried to fix this, but we should make sure it's done right. the of lib was appearing red even though it had been built, etc. \r\n\r\nI've tried to fix some of this in detroit with the PG, but I don't think it's the right way to do it. Overall, it would be great to have projects work smoothly on xcode 4...\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1129","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1129,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1129","assignee":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"title":"xcode 4 issues: scheme, auto-generation of schemes, rebuilding OF, sdk, etc","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-03-31T14:39:04Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":3910555,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-31T16:32:04Z","body":"When deprecating api's (e.g. ofEvents, ofVertexes), perhaps we could help automate the changes through simple scripts to update api\r\nSuggest sticking to something close to how uncrustify scripts are run (and perhaps there are tools like uncrustify but specifically for this task)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1128","comments":1,"milestone":null,"number":1128,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1128","assignee":null,"title":"upgrade scripts","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-31T14:38:19Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":3910549,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-04-09T16:47:04Z","body":"It would be nice (and useful for testing the PG) if the PG would get an option to clean the examples folders of all generated files. \r\n\r\nCurrently, the quickest option is to delete the examples folder on disk, and do `git reset --hard HEAD`.\r\n\r\nAs before, milestoned for 0071, but feel free to push back.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1126","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1126,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1126","assignee":null,"title":"PG Feature request: Clean examples folder","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-03-30T12:51:30Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":3897090,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-29T16:47:29Z","body":"there is a hard limit of 100 files when using drag & drop into an of app. not sure if it's an of issue, but am curious if it comes from the hacked glutDragEventFunc ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1124","comments":0,"milestone":null,"number":1124,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1124","assignee":null,"title":"void dragEvent(ofDragInfo dragInfo) limited to 100 files in osx lion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-29T16:47:29Z","state":"open","user":{"url":"https://api.github.com/users/jesusgollonet","gravatar_id":"5008d5295e9bc2636313c7b50ed5981d","login":"jesusgollonet","avatar_url":"https://secure.gravatar.com/avatar/5008d5295e9bc2636313c7b50ed5981d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":31100},"id":3883598,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-29T13:05:25Z","body":"When loading a file with ofImage, ofSoundPlayer , ofVideoPlayer-file or any ofFile it would be nice to be able to know if the file changed since it was loaded.\r\n\r\nIts very simple to implement with Poco::File->getLastModified() and it would be very nice if this would be built into the above classes.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1120","comments":2,"milestone":null,"number":1120,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1120","assignee":null,"title":"isFileChanged() for ofImage, ofVideoPlayer, ofSoundPlayer and ofFile","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-28T16:21:45Z","state":"open","user":{"url":"https://api.github.com/users/imanhp","gravatar_id":"7398ab0bbd07832d0289f26773e65077","login":"imanhp","avatar_url":"https://secure.gravatar.com/avatar/7398ab0bbd07832d0289f26773e65077?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1216228},"id":3856005,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-30T12:19:59Z","body":"paths.make should be in the repo as an example on how to set it up correctly, but changes (i.e. paths unique to every user) to it should be ignored cause everyone will have a different version in their computers so we don't want personal changes to appear in git status.\r\n\r\nI think the best way to solve this is to rename it to paths.make.default, keep this in the repo, maybe with `` instead of your path, and have people make their own paths.make from that one. We track changes to paths.make.default and ignore paths.make. \r\n\r\nThis will probably also need a mechanism in the makefile to fail gracefully and remind the user, if his customized paths.make is missing.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1118","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1118,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1118","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"Default paths.make for Android","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/android","name":"android","color":"2bc4ad"}],"closed_at":null,"created_at":"2012-03-28T12:19:39Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":3850655,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-04-18T17:13:36Z","body":"Once ofSetFrameRate() is called, I can't find a way to retrieve it. I think implementing a ofGetDesiredFrameRate() in ofAppRunner would make sense, also adding getDesiredFrameRate() to ofAppBaseWindow and all subclasses, where the actual value is stored. \r\n\r\nThis can be useful to compare the desired frame rate with actual frame rate and react accordingly if required.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1117","comments":0,"milestone":null,"number":1117,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1117","assignee":null,"title":"Can't retrieve desired frame rate once set","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-27T11:48:00Z","state":"open","user":{"url":"https://api.github.com/users/armadillu","gravatar_id":"b87a82d7c86161432ee6388c7cbd5e2c","login":"armadillu","avatar_url":"https://secure.gravatar.com/avatar/b87a82d7c86161432ee6388c7cbd5e2c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":167057},"id":3825582,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-26T22:27:14Z","body":"https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/gl/ofVbo.cpp#L343\r\n\r\nIndices should be specified as GL_ELEMENT_ARRAY_BUFFER unless I am mistaken.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1116","comments":5,"milestone":null,"number":1116,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1116","assignee":null,"title":"ofVBO updateIndexData incorrect buffer type.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-26T18:26:05Z","state":"open","user":{"url":"https://api.github.com/users/vade","gravatar_id":"37aca214d4875cd90af9d67072c82642","login":"vade","avatar_url":"https://secure.gravatar.com/avatar/37aca214d4875cd90af9d67072c82642?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":65011},"id":3813852,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-26T18:45:51Z","body":"The default optimization settings for debug builds in example XCode projects is set to Fastest,Smallest thus making debugging very difficult, is there a specific reason for this?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1115","comments":3,"milestone":null,"number":1115,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1115","assignee":null,"title":"optimization level in xcode projects","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"}],"closed_at":null,"created_at":"2012-03-26T17:05:14Z","state":"open","user":{"url":"https://api.github.com/users/colormotor","gravatar_id":"2548dbd6a86902ed5260b5f76710b83c","login":"colormotor","avatar_url":"https://secure.gravatar.com/avatar/2548dbd6a86902ed5260b5f76710b83c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1239872},"id":3812318,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-31T15:31:31Z","body":"I had some problems because of macro definitions in ofArduino.h overriding an enum in a a class of my codebase ( SHIFT )\r\nIt's not exactly a bug! but I would suggest using enums or const int instead of the macros to avoid any conflicts\r\nI solved the problem by modifying \r\n#define SHIFT 0x05 \r\ninto \r\nconst int SHIFT = 0x05;\r\n\r\nanother solution could be using enumerations as \r\nenum\r\n{\r\n ...\r\n SHIFT = 0x05,\r\n etc...\r\n};\r\n\r\nI believe this would not break any of the existing code\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1114","comments":1,"milestone":null,"number":1114,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1114","assignee":{"url":"https://api.github.com/users/joshuajnoble","gravatar_id":"10960ba0f305803a1cdc7cd6188d643b","login":"joshuajnoble","avatar_url":"https://secure.gravatar.com/avatar/10960ba0f305803a1cdc7cd6188d643b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":237423},"title":"macros in ofArduino","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-03-26T17:02:21Z","state":"open","user":{"url":"https://api.github.com/users/colormotor","gravatar_id":"2548dbd6a86902ed5260b5f76710b83c","login":"colormotor","avatar_url":"https://secure.gravatar.com/avatar/2548dbd6a86902ed5260b5f76710b83c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1239872},"id":3812275,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-27T14:56:56Z","body":"Hello.\r\n\r\nI'm trying to run camera frame grabing in OSX Lion.\r\nSimple ofVideoGrabber doesn't work - even if I link it with 10.6 SDK (and 10.6 is deployment target) I receive crash in initialization of ofVideoGrabber. Details are the same as in http://forum.openframeworks.cc/index.php/topic,6776.0.html\r\n\r\nI tryed QtKitMovieGrabberExample. It had some problems in compilation - texture property was not synthesized, I wrote this property and compilation run well.\r\nBut linking is fault. All I receive form linker is:\r\n\r\n*Ld bin/movieGrabberExampleDebug.app/Contents/MacOS/movieGrabberExampleDebug normal i386\r\n cd /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample\r\n setenv MACOSX_DEPLOYMENT_TARGET 10.6\r\n /Developer/usr/bin/clang++ -arch i386 -isysroot /Developer/SDKs/MacOSX10.6.sdk -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freeimage/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/GLee/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/rtAudio/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/fmodex/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freetype/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx -F/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin -F/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/glut/lib/osx -filelist /Users/yltastep/Library/Developer/Xcode/DerivedData/movieGrabberExample-aftkspwrgtotrteyzaplfbqzeasd/Build/Intermediates/movieGrabberExample.build/Debug/movieGrabberExample.build/Objects-normal/i386/movieGrabberExampleDebug.LinkFileList -mmacosx-version-min=10.6 -dead_strip ../../../libs/poco/lib/osx/PocoFoundation.a ../../../libs/poco/lib/osx/PocoNet.a ../../../libs/poco/lib/osx/PocoXML.a ../../../libs/poco/lib/osx/PocoUtil.a ../../../libs/tess2/lib/osx/tess2.a ../../../libs/glew/lib/osx/glew.a ../../../libs/cairo/lib/osx/cairo-script-interpreter.a ../../../libs/cairo/lib/osx/cairo.a ../../../libs/cairo/lib/osx/pixman-1.a ../../../libs/fmodex/lib/osx/libfmodex.dylib ../../../libs/rtAudio/lib/osx/rtAudio.a /Users/yltastep/Documents/XCode/openframeworks/libs/openFrameworksCompiled/lib/osx/openFrameworksDebug.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/GLee/lib/osx/GLee.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/rtAudio/lib/osx/rtAudio.a -framework AGL -framework ApplicationServices -framework AudioToolbox -framework Carbon -framework CoreAudio -framework CoreFoundation -framework CoreServices -framework OpenGL -framework QuickTime -framework AppKit -framework Cocoa -framework IOKit -framework GLUT /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoFoundation.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoNet.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoUtil.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoXML.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freetype/lib/osx/freetype.a -lfmodex /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx/freeimage.a -framework QTKit -framework Quartz -framework QuartzCore -o /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin/movieGrabberExampleDebug.app/Contents/MacOS/movieGrabberExampleDebug*\r\n\r\n**Command /Developer/usr/bin/clang++ failed with exit code 1**\r\n\r\nSo no explanation of problem.\r\n\r\nIs somebody ran this example successfully ?\r\nAnd what I'm doing wrong ?\r\n\r\nThanks in advance !\r\n\r\nWith regards.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1112","comments":9,"milestone":null,"number":1112,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1112","assignee":null,"title":"Issue with QtKitMovieGrabberExample in apps/devapps","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2012-03-26T12:11:44Z","state":"open","user":{"url":"https://api.github.com/users/OlexandrStepanov","gravatar_id":"aa6e2a475cab75513c9cc435b28eef31","login":"OlexandrStepanov","avatar_url":"https://secure.gravatar.com/avatar/aa6e2a475cab75513c9cc435b28eef31?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":971079},"id":3807459,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-25T20:07:16Z","body":"Todd's example has this code a few times in it by hand, but I'm thinking it's so simple it could be added along side ofSplitString() and would be really useful ? for sure, more string utility functions are helpful, and for basic text parsing, this is great. Poco gives us this for free, so it doesn't seem like a huge stretch to think of something like this, plus find and replace, etc. Would make the regex example much shorter. \r\n\r\np5 has something similar, if that's a helpful argument: \r\n\r\nhttp://processing.org/reference/matchAll_.html\r\n\r\n\r\n\tvector < string > ofxRegex::getMatchedStrings (string contents, string regex );\r\n\tvector < string > ofxRegex::getMatchedStrings (string contents, string regex ){\r\n \r\n\t vector < string > results;\r\n\t RegularExpression regEx(regex);\r\n\t RegularExpression::Match match;\r\n \r\n\t while(regEx.match(contents, match) != 0) {\r\n \r\n\t // we get the sub string from the content\r\n\t // and then trim the content so that we\r\n\t // can continue to search \r\n\t string foundStr = contents.substr(match.offset, match.length);\r\n\t contents = contents.substr(match.offset + match.length);\r\n \r\n\t results.push_back(foundStr);\r\n \r\n\t }\r\n\t return results;\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1110","comments":1,"milestone":null,"number":1110,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1110","assignee":null,"title":"add a simple regex function like ofSplitString()","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-03-25T18:56:37Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":3799872,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-25T18:50:13Z","body":"code to recreate: \r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::setup(){\r\n system(\"pwd;\");\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::update(){\r\n system(\"pwd;\");\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::draw(){\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::keyPressed(int key){\r\n cout << ofToDataPath(\"temp\") << endl;\r\n}\r\n\r\nproduces: \r\n\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n../../../data/temp\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin/emptyExampleDebug.app/Contents/MacOS\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin/emptyExampleDebug.app/Contents/MacOS\r\n\r\nthis is because the code that fixes OSX paths isn't called until you call ofToDataPath(). a good fix I think would be to set ofDataPathRoot (which happens in ofToDataPath) somewhere early in ofRunApp(). Or should it happen even earlier?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1109","comments":3,"milestone":null,"number":1109,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1109","assignee":null,"title":"mac paths don't seem right until you call \"ofToDataPath()\"","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2012-03-25T18:18:28Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":3799653,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-04-09T13:06:18Z","body":"easycam behaves as expected when inited but as soon as I change it's target it begins to behave strangely.\r\nthere's this imaginary sphere that we are rotating (it's diameter is min (viewport.width, vieport.height)), when the mouse is dragged from inside to outside of it the rotation just jumps to a \"random\" rotation. \r\nas well when you have a the camera rotated more than 180º in some axis the \"trackball\" doesn't behave as expected. yet this behavior is not seen when the target hasn't been changed.\r\n\r\nDoes any one know what's going on?\r\n\r\nI just came across this but I haven't gone deeply into how easycam handles the mouse to rotate. \r\nI'll do so ASAP. If someone can give me any clues I'll really apreciate it.\r\n\r\nregards!","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1108","comments":7,"milestone":null,"number":1108,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1108","assignee":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"title":"easyCam weird behavior when target changed","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-25T00:01:54Z","state":"open","user":{"url":"https://api.github.com/users/roymacdonald","gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","login":"roymacdonald","avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":974878},"id":3795495,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-04-09T16:47:18Z","body":"It would be great if the PG could also generate projects/examples for usage with Eclipse, i.e. just the makefile related files, no CB or other project files.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1103","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1103,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1103","assignee":null,"title":"PG feature request: Generate makefile-only projects","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-03-21T21:43:34Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":3754055,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-19T16:18:43Z","body":"whenever i call ofLog beneath openmp i have to wrap it in ```#pragma omp critical (ofLog)``` otherwise i get a crash\r\ni found adding the line above \r\nhttps://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/utils/ofLog.cpp#L84\r\nworks pretty well\r\n\r\nany objections to having it in there?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1098","comments":3,"milestone":null,"number":1098,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1098","assignee":null,"title":"feature / bug - #pragma omp critical(ofLog)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-19T14:04:51Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":3710293,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-15T20:34:17Z","body":"I'm finding that `ofDirector::listDir, open` are extremely slow\r\nit seems that it's actually loading the entire dir contents into memory\r\n\r\nit's possible to then do something like\r\n```\r\nofLoadImage(myPixels, dir.getFile(i));\r\n```\r\nand you can quickly load that image from memory. which is faster than\r\n```\r\nofLoadImage(myPixels, dir.getFile(i).getAbsolutePath());\r\n```\r\n\r\nBut this doesn't seem to work consistently (even though the slow listing is consistent)\r\nand surely isn't what we want.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1075","comments":2,"milestone":null,"number":1075,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1075","assignee":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"title":"bug ofDirectory::open(string path) actually loads the entire dir into memory?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-15T07:54:55Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":3662214,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-14T16:03:06Z","body":"Hello,\r\nI needed alpha channel in short length video for a recent project.\r\nIn the forum there is some old zip file for a ofxAlphaVideoPlayer that is still working, but that's OS X & windows only as it's based on QT.\r\nI'm working on linux, and I didn't find anything for GStreamer, so I modified the existing ofGstUtils and ofGstVideoPlayer.\r\nWould you mind if I do a pull request for this?\r\nI can also provide an example with a short length video using animation codec.\r\nWhat do you think?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1070","comments":6,"milestone":null,"number":1070,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1070","assignee":null,"title":"Alpha movies in GStreamer","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-14T13:02:41Z","state":"open","user":{"url":"https://api.github.com/users/manuelgeoffray","gravatar_id":"c1ec5161b69b4a990436deafb1170d64","login":"manuelgeoffray","avatar_url":"https://secure.gravatar.com/avatar/c1ec5161b69b4a990436deafb1170d64?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":808090},"id":3647640,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-17T19:26:40Z","body":"Hey !\r\n\r\nMe again. Didn't find anywhere this infos. I'm currently testing the travis-ci.org service.\r\nAs many people are working on the project and as many many issue are raised, and fixed, I thought it could be great to add some test and thus the travis service.\r\n\r\nIt would avoid the problem met here :\r\nhttps://github.com/openframeworks/openFrameworks/commit/7ca7833ea1afb6bd5a6c54031e3fa688aa0c0ba8\r\nand the discussion here :\r\nhttps://github.com/openframeworks/openFrameworks/issues/804\r\nor there :\r\nhttps://github.com/openframeworks/openFrameworks/pull/921\r\n\r\nI read that :\r\n\r\n>feel free to make a unitTests folder at the root level of OF -\r\n> that is where all unitTests will go.\r\n\r\nBut didn't find them.\r\n\r\nThe travis service will permit to get the little badge we know well : \r\n[![Build Status](https://secure.travis-ci.org/soixantecircuits/openFrameworks.png?branch=master)](http://travis-ci.org/soixantecircuits/openFrameworks)\r\n\r\nAlso, why not adding some spec test, to ensure future development of features.\r\nI'm currently reading :\r\nhttp://www.squidoo.com/cplusplus-behaviour-driven-development-tools#module124841511\r\nhttp://sourceforge.net/apps/mediawiki/turtle/index.php?title=Turtle\r\n\r\nFor those who want some other nice reading :\r\n\r\nhttp://gamesfromwithin.com/exploring-the-c-unit-testing-framework-jungle\r\n\r\nThe travis test is here, currently it is a total fake, but I just proposed the idea of a test driven development\r\nhttp://travis-ci.org/#!/soixantecircuits/openFrameworks/builds/854259 ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1068","comments":10,"milestone":null,"number":1068,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1068","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"Continuous integration","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-13T15:49:23Z","state":"open","user":{"url":"https://api.github.com/users/gabrielstuff","gravatar_id":"390ea42c23c2c383f973abdafa24bb07","login":"gabrielstuff","avatar_url":"https://secure.gravatar.com/avatar/390ea42c23c2c383f973abdafa24bb07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":285033},"id":3631618,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-13T15:21:30Z","body":"Hi !\r\n\r\nRecently, I've been in lot of languages, from C++ to ruby, passing by the colosus of javascript and the sea of php. Dropping by various and strange framework such as the Cinder, the jQuery, the Rails, the Processing, etc ...\r\n\r\n## the situation \r\n\r\nWhat I have noticed is that a strong architecture and a really ease use of add-ons makes a framework get stronger. For instance, if we take a look at Ruby, we see that the use of gems give him a powerfull advance over his friend php. \r\n\r\n### the Rubyist\r\n\r\nThis way of thinking is getting even better with the http://gembundler.com/ [Bundler](http://gembundler.com/) friend. The gems have dependencies and a simple GemFile help to easily install all dependencies for one project.\r\n\r\n### the Cinderist\r\n\r\nFor Cinder, we get the block, as for OSX, it quiet easy and fast. Drag and drop and play/code.\r\n\r\n### the jQueryist\r\n\r\nWell, it is not frequent to have jQuery plugins depending on other jQuery plugins, but there are several way to handle dependencies on jQuery and JS.\r\n\r\n### the nodist\r\n\r\nThis lead us to http://npmjs.org/, which is really nice with dependencies.\r\nFor instance, if you tried cloud9ide, you know that you just have to make sure you get the proper package.json :\r\n\r\n```\r\n{\r\n \"name\": \"node-example\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": {\r\n \"express\": \"2.2.0\"\r\n }\r\n}\r\n```\r\n\r\nThis file ensure that everything before running the server will be installed via npm.\r\n\r\n### the ofist\r\n\r\nRight now, we just have the addons.make file, which is nice but does not do any lifting for us. We have to verify that the ofx addons has been downloaded and is installed in the right folder.\r\n\r\n- Why not creating a script that will allow to manage dependencies compilation ? \r\nI have this wonderful ofxJSONsettings, but he depends on [JSONCPP](http://jsoncpp.sourceforge.net/) and on boost, so here we will have :\r\n\r\npackage.json file in the ofxJSONsettings folder :\r\n\r\n```\r\n{\r\n \"name\": \"ofxJSONsettings\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": [{\r\n \"jsoncpp\": \"0.6.0-rc2\"\r\n \"url\":\"http://jsoncpp.svn.sourceforge.net/svnroot/jsoncpp/trunk/\"\r\n \"protocol\":\"svn\"\r\n }\r\n ]\r\n}\r\n```\r\n\r\nHum, then, we have our little bash script :\r\n\r\n`xadd -addon ofxJSONsettings`\r\n\r\nand for a project, we have to ensure that the make file run `xadd -addon ofxJSONsettings` if it does not find ofXJSONsettings.\r\n\r\nThis could lead to simplify and easify the use of plugin ! Hey, I want the new [mistubaRenderer](https://github.com/satoruhiga/ofxMitsubaRenderer) let's give a try :\r\n\r\n```\r\n{\r\n \"name\": \"ofxMitsubaRenderer\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": [{\r\n \"mitsuba\": \"0.1\"\r\n \"url\":\"https://www.mitsuba-renderer.org/hg/mitsuba-bidir\"\r\n \"protocol\":\"hg\"\r\n }\r\n ]\r\n}\r\n```\r\n\r\nWell, this would be simplify if everybody use some same pattern, and respect some convention.\r\n\r\nSo what do you guys think about that ?\r\n\r\n\r\nThank you !\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1063","comments":7,"milestone":null,"number":1063,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1063","assignee":null,"title":"Automatic installer + dependencies handler","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-13T10:44:57Z","state":"open","user":{"url":"https://api.github.com/users/gabrielstuff","gravatar_id":"390ea42c23c2c383f973abdafa24bb07","login":"gabrielstuff","avatar_url":"https://secure.gravatar.com/avatar/390ea42c23c2c383f973abdafa24bb07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":285033},"id":3627067,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-12T17:58:20Z","body":"right now there is a lot of duplicated code in the vector math classes. for example, normalize() and getNormalized() have separate implementations. if we follow the pattern of always implementing things in self-modifying methods, then providing copy-returning methods as alternatives, this will reduce the amount of code and make it harder to cause bugs or behavioral discrepancies.\r\n\r\n- implementations of an algorithm should always be self-modifying\r\n- copy-returning versions should be implemented using a differently named method, internally making a copy and calling the self-modifying version on the copy.\r\n\r\ne.g. something like (note, this isn't how it's implemented right now):\r\n\r\n\tinline ofVec2f& ofVec2f::normalize() {\r\n\t\tfloat length = (float)sqrt(x*x + y*y);\r\n\t\tif( length > 0 ) {\r\n\t\t\tx /= length;\r\n\t\t\ty /= length;\r\n\t\t}\r\n\t\treturn *this;\r\n\t}\r\n\r\n\tinline ofVec2f ofVec2f::getNormalized() const {\r\n\t\tofVec2f result = *this;\r\n\t\treturn result.normalize();\r\n\t}\r\n\r\ntaken from this post https://github.com/openframeworks/openFrameworks/pull/1061#issuecomment-4455601","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1062","comments":4,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1062,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1062","assignee":null,"title":"regularize code for math addons","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-12T16:33:06Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":3614231,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-13T13:07:11Z","body":"Just saw this is the documentation.\r\nVertexes is incorrect (wrong plural)\r\nVertices","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1055","comments":18,"milestone":null,"number":1055,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1055","assignee":null,"title":"ofVertexes?? ofCurveVertexes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-03-12T01:50:19Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":3605277,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=4 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4940'), ('content-length', '44623'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"7a7b635a35e21a9f69de7a09b9040837"'), ('date', 'Tue, 29 May 2012 19:27:12 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-03-10T17:52:58Z","body":"if you have:\r\n\r\n uniform float dog;\r\n float cat;\r\n\r\nand:\r\n\r\n shader.setUniform1f(\"dog\", ofGetElapsedTimef());\r\n shader.setUniform1f(\"cat\", ofGetElapsedTimef());\r\n\r\nthere is no currently no error printed to the console, and \"cat\" is mysteriously unchanging while \"dog\" is fine.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1052","comments":0,"milestone":null,"number":1052,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1052","assignee":null,"title":"ofShader should show an error when using an invalid name","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-03-10T17:52:58Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3596240,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-14T15:11:08Z","body":"ofxiPhoneScreenGrab saves with compression artifacts.\r\nfix for saving a lossless image in the below post,\r\nhttp://forum.openframeworks.cc/index.php/topic,4737.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1051","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1051,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1051","assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"title":"ofxiPhoneScreenGrab saves with compression artifacts.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-03-10T12:15:33Z","state":"open","user":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"id":3594731,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-14T15:09:09Z","body":"just wanted to kick off a discussion about cleaning up ofxiPhone folder structure.\r\nhave this up on the forum, http://forum.openframeworks.cc/index.php/topic,8955.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1050","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1050,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1050","assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"title":"clean up ofxiPhone folder structure.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-10T06:32:12Z","state":"open","user":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"id":3593619,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-29T14:55:24Z","body":"This an implementation of ofxiPhoneScreenGrab for Android","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1048","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1048,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1048","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"Adding Android screenshot feature, example to demonstrate it","labels":[],"closed_at":null,"created_at":"2012-03-10T05:31:45Z","state":"open","user":{"url":"https://api.github.com/users/bostonbusmap","avatar_url":"https://secure.gravatar.com/avatar/433032cca043cedb67180dc5109062da?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"433032cca043cedb67180dc5109062da","login":"bostonbusmap","id":863262},"id":3593430,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1048","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1048.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1048.diff"}},{"updated_at":"2012-03-12T15:31:12Z","body":"whenever I try to open a file using system dialog from OF utils or ofxFileDIalogOSX, the video is loaded correctly but it get stuck and doesn't play at all. see:\r\nhttp://forum.openframeworks.cc/index.php/topic,5233.0.html\r\nhttp://forum.openframeworks.cc/index.php/topic,6515.0.html\r\n\r\nquite a big issue IMHO","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1047","comments":8,"milestone":null,"number":1047,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1047","assignee":null,"title":"opening video files with system dialog in osx prevents them to play correctly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-09T18:54:28Z","state":"open","user":{"url":"https://api.github.com/users/hvfrancesco","avatar_url":"https://secure.gravatar.com/avatar/e02a8a3953de9d5d9ec1c7aa8d43eca4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e02a8a3953de9d5d9ec1c7aa8d43eca4","login":"hvfrancesco","id":614123},"id":3587808,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-20T16:11:54Z","body":"just a small one but would be great. \r\nmaybe even different icon for debug and release? ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1039","comments":12,"milestone":null,"number":1039,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1039","assignee":null,"title":"make icons for OF apps","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-06T17:56:58Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":3528378,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-06T15:32:44Z","body":"right now it is not clear from a visual perspective what is a button / trigger and what is a toggle. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1037","comments":1,"milestone":null,"number":1037,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1037","assignee":null,"title":"ofxGui, ofxButton should look visually different to toggle","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-05T18:06:03Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":3510933,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-10T19:29:53Z","body":"xml is one of the reasons this is currently an addon. \r\nthe original idea was to have something simple and minimal that could be in the core. \r\nalso something which could be built off of for larger gui addons ( hence ofParameter ) \r\n\r\nI see a couple of options going forward.\r\n\r\n1) swtich from xml to newline separated text files and move ofGui into core\r\nthis would be quite simple as ofParameter already has a name, value structure \r\n\r\n2) same as 1) but keep ofxGui as an addon - making it a bit simpler to add to a project \r\n2b) add ofParameter to core as it is more general purpose\r\n\r\n3) bring ofxXmlSettings into the core and bring ofGui into core.\r\n\r\n\r\nanyway I thought it would be good to get some discussion going about this.\r\nI'm especially interested in setting up ofParam and ofBaseGui in a way to make things modular and extendable. \r\n\r\nalso could be interesting to look at a way to represent a collection/group of ofParameters\r\nsome of this might be similar to some of the stuff @memo was doing with his plist style system. \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1036","comments":10,"milestone":null,"number":1036,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1036","assignee":null,"title":"ofxGui -> ofGui - how/should we bring into core?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-05T16:56:26Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":3509628,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-12T12:39:10Z","body":"If it finds .vert, .frag (and .geom?) files in the data/ folder, the project generator should make a new folder, in the project file, next to (or inside) src called data/ and add the files to it. (data/ so that beginners can find the files in Finder)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1034","comments":3,"milestone":null,"number":1034,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1034","assignee":null,"title":"projectGenerator ignores shader .vert and .frag files","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-03-04T11:19:04Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":3495602,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-06T15:06:00Z","body":"I talked to Arturo about this, but I want to make sure it's known. When you call ofLogSetLogLevel with a module string, that string is added to a map used to check the module's log level ... but right now that string is never removed.\r\n\r\nIf someone creates a large amount module names the map could grow arbitrarily large over time. The thought so far is that no one would make enough module names for it to be a problem.\r\n\r\nFor instance, using the [proposed ofThread rewrite](https://github.com/openframeworks/openFrameworks/pull/1031), each thread creates a new module name when it sets itself to verbose and, in the case of spawning lots of verbose worker threads, the map will grow.\r\n\r\nMy proposed solution would be to remove the module name from the map when the level for that module is set back to OF_LOG_NOTICE and/or to the current log level.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1033","comments":11,"milestone":null,"number":1033,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1033","assignee":null,"title":"ofSetLogLevel(module, level) adds to map but dosen't remove","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-04T10:54:12Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3495503,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-14T15:11:08Z","body":"this change c50648e29199a3f61eae05f6ceb350a97ab275d7 caused the problem. i'm not sure why adding explicit cases for handling loadData for ofShortPixels and ofFloatPixels would do this. to see the proof, run devApps/AdvancedImageLoading","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1029","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1029,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1029","assignee":null,"title":"display of short + float textures are broken","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-03-03T19:04:59Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3491627,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-10T06:54:25Z","body":"I've just encountered a real 'wall meets head' bug, aka 'why is my camera image black??'\r\n\r\nwell it turns out that actually, ofSaveImage doesn't save mono images\r\nit just saves out black pixels\r\n\r\ntesting on Windows, VS2010.\r\nAnybody else getting this?\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1028","comments":5,"milestone":null,"number":1028,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1028","assignee":null,"title":"ofSaveImage / ofImage::saveImage() problem with OF_IMAGE_GRAYSCALE / OF_PIXELS_MONO","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-03-03T12:23:06Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3489266,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-16T09:25:13Z","body":"The Android example is basically a copy of the existing 3dModelBuilder example with some code changes to work with OpenGL ES","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1024","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1024,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1024","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"Fixing 3DModelBuilder to work with OpenGL ES, added Android example for it","labels":[],"closed_at":null,"created_at":"2012-03-02T16:55:29Z","state":"open","user":{"url":"https://api.github.com/users/bostonbusmap","avatar_url":"https://secure.gravatar.com/avatar/433032cca043cedb67180dc5109062da?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"433032cca043cedb67180dc5109062da","login":"bostonbusmap","id":863262},"id":3479768,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1024","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1024.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1024.diff"}},{"updated_at":"2012-03-30T16:34:06Z","body":"Continuation of http://forum.openframeworks.cc/index.php/topic,9095.msg42378.html#new\r\n\r\nNOTE: Things may have changed as the projects I'm using are all created using the older creation tools.\r\nCan somebody up to date please check?\r\n\r\nCurrently XCode's default project setting is /O2 for debug projects\r\nwhilst Visual Studio's is /O0\r\n\r\n/O0 generally makes the most sense for debug mode as it allows for effective program flow and variable tracking (because with /O2, lines of code and variables are commonly optimised away).\r\n\r\nIf we are worried that this will leave default users in a default 'slower state' then perhaps we could make release the default? Then people could be aware that they are selecting debug when they want to actually do some debugging?\r\nBut this may have other issues (such as some libraries might not perform as many checks as otherwise?)\r\n\r\nit might be worth making users more aware of the 2 options anyway, and then start using them consistently","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1022","comments":12,"milestone":null,"number":1022,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1022","assignee":null,"title":"Optimisation consistency","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-02T13:25:15Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3476540,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-01T19:42:09Z","body":"currently if MSAA is enabled, COLOR_ATTACHMENT[ 0 -> nSamples]_EXT are bound for MS blitting, which could overwrite your texture color attachments without notifying you [ i.e. setSamples(4); setNumTextures(4) ]. There may be some solution where numSamples*numTextures = maxAttachments, allowing for multisampled internal textures, but at the very least we should warn/notify that samples and textures won't play so nicely together, or try to allocate samples/textures in the remaining attachments and notify on overflow.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1019","comments":0,"milestone":null,"number":1019,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1019","assignee":null,"title":"ofFbo needs consideration as far as MRT + MSAA","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-01T19:42:09Z","state":"open","user":{"url":"https://api.github.com/users/kpasko","avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","login":"kpasko","id":167271},"id":3462226,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-01T04:33:36Z","body":"there's a block in ofConstants which reads like:\r\n\r\n```c++\r\n#ifndef PI\r\n\t#define PI 3.14159265358979323846\r\n#endif\r\n\r\n#ifndef TWO_PI\r\n\t#define TWO_PI 6.28318530717958647693\r\n#endif\r\n\r\n#ifndef M_TWO_PI\r\n\t#define M_TWO_PI 6.28318530717958647693\r\n#endif\r\n\r\n#ifndef FOUR_PI\r\n\t#define FOUR_PI 12.56637061435917295385\r\n#endif\r\n\r\n#ifndef HALF_PI\r\n\t#define HALF_PI 1.57079632679489661923\r\n#endif\r\n\r\n#ifndef DEG_TO_RAD\r\n\t#define DEG_TO_RAD (PI/180.0)\r\n#endif\r\n\r\n#ifndef RAD_TO_DEG\r\n\t#define RAD_TO_DEG (180.0/PI)\r\n#endif\r\n\r\n#ifndef MIN\r\n\t#define MIN(x,y) (((x) < (y)) ? (x) : (y))\r\n#endif\r\n\r\n#ifndef MAX\r\n\t#define MAX(x,y) (((x) > (y)) ? (x) : (y))\r\n#endif\r\n\r\n#ifndef CLAMP\r\n\t#define CLAMP(val,min,max) (MAX(MIN(val,max),min))\r\n#endif\r\n\r\n#ifndef ABS\r\n\t#define ABS(x) (((x) < 0) ? -(x) : (x))\r\n#endif\r\n```\r\n\r\nthe problem is i've got this in another header file:\r\n\r\n```c++\r\n// macro-like inline functions\r\n\r\ntemplate\r\ninline T SQR(const T a) {return a*a;}\r\n\r\ntemplate\r\ninline const T &MAX(const T &a, const T &b)\r\n {return b > a ? (b) : (a);}\r\n\r\ninline float MAX(const double &a, const float &b)\r\n {return b > a ? (b) : float(a);}\r\n\r\ninline float MAX(const float &a, const double &b)\r\n {return b > a ? float(b) : (a);}\r\n\r\ntemplate\r\ninline const T &MIN(const T &a, const T &b)\r\n {return b < a ? (b) : (a);}\r\n\r\ninline float MIN(const double &a, const float &b)\r\n {return b < a ? (b) : float(a);}\r\n\r\ninline float MIN(const float &a, const double &b)\r\n {return b < a ? float(b) : (a);}\r\n\r\ntemplate\r\ninline T SIGN(const T &a, const T &b)\r\n\t{return b >= 0 ? (a >= 0 ? a : -a) : (a >= 0 ? -a : a);}\r\n\r\ninline float SIGN(const float &a, const double &b)\r\n\t{return b >= 0 ? (a >= 0 ? a : -a) : (a >= 0 ? -a : a);}\r\n\r\ninline float SIGN(const double &a, const float &b)\r\n\t{return (float)(b >= 0 ? (a >= 0 ? a : -a) : (a >= 0 ? -a : a));}\r\n```\r\n\r\nAnd ofConstants is included in almost every oF file\r\n\r\ni'd suggest moving to inline functions and presume that compiler optimisations makes these 2 options equivalent in terms of performance, but that inline wins out for compatability","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1007","comments":10,"milestone":null,"number":1007,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1007","assignee":null,"title":"bug #defines in ofConstants conflict with other libraries","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-29T15:31:18Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3438233,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-01T13:02:37Z","body":"Propose the following functions:\r\n\r\n```c++\r\nofVec2f ofRandom(const ofVec2f&);\r\nofVec3f ofRandom(const ofVec3f&);\r\nofVec2f ofRandom(const ofVec2f& range1, const ofVec2f& range2);\r\nofVec3f ofRandom(const ofVec3f& range1, const ofVec3f& range2);\r\n```\r\n\r\nalso lots of other candidates for this, e.g. `ofClamp`, `ofMap`, etc\r\nsome clever templating possible?\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1005","comments":12,"milestone":null,"number":1005,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1005","assignee":null,"title":"feature ofRandom(ofVec3f) ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-29T06:32:03Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3432042,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-18T08:47:08Z","body":"I have a simple app that plays video files. I try to route (under windows) its output using Jack and Vitual Audio Cable but none can access it. I am just using the basic functionality of ofVideoPlayer, this is the class that deals with the video playing\r\n\r\n\r\n\t#include \"oscVPlayer.h\"\r\n\t#include \"ofMain.h\"\r\n\r\n\r\n\r\n\toscVPlayer::oscVPlayer()\r\n\t{\r\n\t\t\treset();\r\n\t}\r\n\r\n\tvoid oscVPlayer::reset()\r\n\t{ //defaults to fullscreen\r\n\t\t\tw = NULL;\r\n\t\t\th = NULL;\r\n\t\t\tx = 0;\r\n\t\t\ty = 0;\r\n\t\t\tdonereported = false;\r\n\t\t\tloopflag = OF_LOOP_NONE;\r\n\t\t\t\r\n\t\t\tcol.r = 0;\r\n\t\t\tcol.g = 0;\r\n\t\t\tcol.b = 0;\r\n\t\t\tcol.a = 255;\r\n\r\n\t\t\tif (isLoaded())\r\n\t\t{\r\n\t\t\t\t\tsetFrame(0);\r\n\t\t\t\t\tsetUseTexture(1);\r\n\t\t\t\t\tsetPaused(0);\r\n\t\t\t\t\tsetLoopState(OF_LOOP_NORMAL);\r\n\t\t\t\t\tsetSpeed(1);\r\n\t\t\t\t\tsetVolume(255);\r\n\t\t\t\t\tstop();\r\n\t\t}\r\n\t}\r\n\r\n\r\n\tvoid oscVPlayer::setUpVideo(string movie)\r\n\t{\r\n\t\t\tif (movie != \"none\")\r\n\t\t\t{\r\n\t\t\t\t\tif ( loadMovie(movie) )\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\t\tprintf(\"movie loaded\\n\");\r\n\t\t\t\t\t\t\tofVideoPlayer::update();\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\t\tprintf(\"CANNOT load movie\\n\");\r\n\t\t\t\t\t}\r\n\t\t\t}\r\n\t\t\telse\r\n\t\t\t{\r\n\t\t\t\t\tprintf(\"movie parameter is none, cannot load it\\n\");\r\n\t\t\t}\r\n\t}\r\n\r\n\r\n\r\n\r\n\tvoid oscVPlayer::setLoop()\r\n\t{\r\n\t\t\tsetLoopState(loopflag); // go back to your state. otherwise play resets it to loop ON\r\n\t}\r\n\r\n\r\n\r\n\r\n\tvoid oscVPlayer::resetSize()\r\n\t{\r\n\t\t\tw = NULL;\r\n\t\t\th = NULL;\r\n\t}\r\n\r\n\r\n\tvoid oscVPlayer::draw()\r\n\t{\r\n\t\tif (isLoaded())\r\n\t\t{\r\n\t\t\t if (col.a < 255) ofEnableAlphaBlending();\r\n\t\t\t\tofSetColor(col.r,col.g,col.b, col.a);\r\n\t\t\t\tofVideoPlayer::update();\r\n\t\t\t\tif (w==NULL && h==NULL)\r\n\t\t\t\t{\r\n\t\t\t\t\t\tofVideoPlayer::draw(x, y);\r\n\t\t\t\t}\r\n\t\t\t\telse\r\n\t\t\t\t{\r\n\t\t\t\t\t\t\tofVideoPlayer::draw(x, y, w, h);\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (col.a < 255) ofDisableAlphaBlending(); \r\n\t\t}\r\n\t}\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1001","comments":2,"milestone":null,"number":1001,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1001","assignee":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"title":"OF app sound out not available from Jack","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-02-27T14:59:34Z","state":"open","user":{"url":"https://api.github.com/users/enrike","avatar_url":"https://secure.gravatar.com/avatar/cc2adbc6d91bf2288f34f60a547a82cd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"cc2adbc6d91bf2288f34f60a547a82cd","login":"enrike","id":710785},"id":3401755,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-29T14:42:36Z","body":"// scissor\r\nvoid ofBeginScissor(ofRectangle &r);\r\nvoid ofBeginScissor(ofPoint &p, float w, float h);\r\nvoid ofBeginScissor(float x, float y, float w, float h);\r\nvoid ofEndScissor();\r\n\r\n\r\nthere is a problem with ofFBO due to the flip. I do not think that there is a way around it sooo just scale -1\r\n\r\nalso: \r\nextra ; removed \r\nlibs/openFrameworks/utils/ofUtils.cpp","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/993","comments":11,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":993,"html_url":"https://github.com/openframeworks/openFrameworks/issues/993","assignee":null,"title":"Of scissors","labels":[],"closed_at":null,"created_at":"2012-02-26T21:35:55Z","state":"open","user":{"url":"https://api.github.com/users/vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","id":149997},"id":3393466,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/993","patch_url":"https://github.com/openframeworks/openFrameworks/pull/993.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/993.diff"}},{"updated_at":"2012-02-25T20:25:00Z","body":"i think this is because ofDrawBitmapString draws the quads in the wrong orientation. but i'm guessing it works in FBOs... so if we switch the order it will stop working in FBOs.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/987","comments":0,"milestone":null,"number":987,"html_url":"https://github.com/openframeworks/openFrameworks/issues/987","assignee":null,"title":"GL_CULL_FACE breaks ofDrawBitmapString()","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-02-25T20:25:00Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3387163,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-22T23:34:17Z","body":"Some logging messages don't really tell where they were triggered. Someone needs to go through them and add information as to what module triggered the message. \r\n@danomatika has already volunteered to do this some time.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/985","comments":16,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":985,"html_url":"https://github.com/openframeworks/openFrameworks/issues/985","assignee":null,"title":"Make logging messages more informative","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-02-25T19:41:58Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3386914,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-11T18:31:55Z","body":"There's a lot of logging printfs in the core addons. These should be replaced by appropriate ofLog calls.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/984","comments":5,"milestone":null,"number":984,"html_url":"https://github.com/openframeworks/openFrameworks/issues/984","assignee":null,"title":"Replace printf() occurences by ofLog() in the core addons","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-02-25T19:36:51Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3386889,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-02-27T13:35:34Z","body":"`ofVec2f` has a function called `average` which takes an array of `ofVec2f` and calculates the centroid. it is not static, rather it overwrites its own `x` and `y` with the average. \r\n\r\nthis is a little weird. `average` should be static, or at least be *returning* the average rather than assigning to self.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/976","comments":4,"milestone":null,"number":976,"html_url":"https://github.com/openframeworks/openFrameworks/issues/976","assignee":null,"title":"ofVec2f::average has unexpected/clumsy behaviour","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-25T03:45:02Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":3382990,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-02-25T02:47:26Z","body":"Dummy issue to ensure that the 0076 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/972","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/10","number":10,"title":"0076 Release","due_on":"2012-10-29T07:00:00Z","closed_issues":0,"open_issues":1,"created_at":"2012-02-25T02:46:26Z","state":"open","description":"","id":88838},"number":972,"html_url":"https://github.com/openframeworks/openFrameworks/issues/972","assignee":null,"title":"0076 Release tracking issue","labels":[],"closed_at":null,"created_at":"2012-02-25T02:47:26Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3382766,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-02-25T02:47:37Z","body":"Dummy issue to ensure that the 0075 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/971","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/9","number":9,"title":"0075 Release","due_on":"2012-09-24T07:00:00Z","closed_issues":0,"open_issues":1,"created_at":"2012-02-25T02:46:15Z","state":"open","description":"","id":88837},"number":971,"html_url":"https://github.com/openframeworks/openFrameworks/issues/971","assignee":null,"title":"0075 Release tracking issue","labels":[],"closed_at":null,"created_at":"2012-02-25T02:47:05Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3382764,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=5 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4939'), ('content-length', '39838'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"a7bfe812cbaa85fbb708d70f4d883fac"'), ('date', 'Tue, 29 May 2012 19:27:13 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-02-25T01:36:58Z","body":"Dummy issue to ensure that the 0080 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/970","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","number":8,"closed_issues":0,"title":"0080 Release","due_on":"2013-01-01T08:00:00Z","open_issues":3,"created_at":"2012-02-25T01:34:28Z","state":"open","description":"","id":88731},"number":970,"html_url":"https://github.com/openframeworks/openFrameworks/issues/970","assignee":null,"title":"0080 Release tracking issue","labels":[],"closed_at":null,"created_at":"2012-02-25T01:36:54Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3381982,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T01:36:37Z","body":"Dummy issue to ensure that the 0074 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/969","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/7","number":7,"closed_issues":0,"title":"0074 Release","due_on":"2012-08-27T07:00:00Z","open_issues":1,"created_at":"2012-02-25T00:41:17Z","state":"open","description":"","id":88728},"number":969,"html_url":"https://github.com/openframeworks/openFrameworks/issues/969","assignee":null,"title":"0074 Release tracking issue","labels":[],"closed_at":null,"created_at":"2012-02-25T01:36:37Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3381977,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-24T04:31:01Z","body":"right now if you try and scale/rotate/etc before calling ofBackgroundGradient, it will fail.\r\n\r\npeople generally call ofBackground at the top of draw() so it shouldn't be a huge issue... but it does make it a little 'fragile'.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/955","comments":0,"milestone":null,"number":955,"html_url":"https://github.com/openframeworks/openFrameworks/issues/955","assignee":null,"title":"ofBackgroundGradient needs to be billboarded","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-02-24T04:31:01Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3367910,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-23T19:12:08Z","body":"Hello, I get a weird error trying to compile the movieplayerexample under linux64 :\r\n\r\n> `.text._ZN11ofBaseVideoD2Ev' referenced in section `.text._ZN11ofBaseVideoD1Ev[non-virtual thunk to ofBaseVideo::~ofBaseVideo()]' of ../../../libs/openFrameworksCompiled/lib/linux64/libopenFrameworks.a(ofBaseTypes.o): defined in discarded section `.text._ZN11ofBaseVideoD2Ev[_ZN11ofBaseVideoD5Ev]' of ../../../libs/openFrameworksCompiled/lib/linux64/libopenFrameworks.a(ofBaseTypes.o)\r\n\r\nMy version of OF is 007, it used to work under 0062...\r\n\r\nWhat should I do ?\r\n\r\nThanks","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/933","comments":4,"milestone":null,"number":933,"html_url":"https://github.com/openframeworks/openFrameworks/issues/933","assignee":null,"title":"Problem with moviePlayerExample under linux64","labels":[],"closed_at":null,"created_at":"2012-02-23T15:46:06Z","state":"open","user":{"url":"https://api.github.com/users/agrosjea","avatar_url":"https://secure.gravatar.com/avatar/e52c167621119d58d03c586bb053a633?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e52c167621119d58d03c586bb053a633","login":"agrosjea","id":1466085},"id":3357855,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-23T05:13:24Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/931","comments":0,"milestone":null,"number":931,"html_url":"https://github.com/openframeworks/openFrameworks/issues/931","assignee":null,"title":"ofCamera is not aware of ofOrientation","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-02-23T05:13:24Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":3351646,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-23T05:12:47Z","body":"do we need the ofOrientation parameter in ofSetupPerspective?\r\n\r\nit applies the rotation but if ofSetOrientation hasn't been called before passing the same orientation the results are not the expected.\r\n\r\nto test it:\r\n\r\nofSetOrientation(OF_ORIENTATION_90_LEFT);\r\nofSetPerspective(ofGetWidth(), ofGetHeight(),OF_ORIENTATION_90_LEFT)\r\n\r\nworks as expected but calling only \r\n\r\nofSetPerspective(ofGetWidth(), ofGetHeight(),OF_ORIENTATION_90_LEFT)\r\n\r\napplies a weird rotation cause the values of ofGetWidth(), ofGetHeight() are still the default ones\r\n\r\nis there any case where it's useful to call setupPerspective with a different orientation that the window has?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/930","comments":0,"milestone":null,"number":930,"html_url":"https://github.com/openframeworks/openFrameworks/issues/930","assignee":null,"title":"ofSetupPerspective ofOrientation","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-23T05:12:47Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":3351643,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-23T04:19:48Z","body":"Currently ofGetLogLevel returns the global log level aka for the \"OF\" module. It would be nice to be able to get the log level for user modules via:\r\n\r\n ofLogLevel level = ofGetLogLevel(\"myLogModule\");\r\n\r\nIt would as simple as adding the module as a string variable with a default of \"OF\".\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/929","comments":0,"milestone":null,"number":929,"html_url":"https://github.com/openframeworks/openFrameworks/issues/929","assignee":null,"title":"ofGetLogLevel should also accept modules","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-02-23T04:19:48Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3351374,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-23T03:46:32Z","body":"Currently there is a ofBgColorPtr(), but maybe it's nice to have a ofGetBackground() that returns an ofColor object or a reference to one.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/928","comments":0,"milestone":null,"number":928,"html_url":"https://github.com/openframeworks/openFrameworks/issues/928","assignee":null,"title":"no ofGetBackground()","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-23T03:46:32Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3351170,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-22T19:12:56Z","body":"ofGetViewportWidth/Height returns 0 is called in an object destructor, while ofGetWidth/Height do not. Could the ofGetViewport size be set to the ofGetWidth/Height size instead of 0 be default?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/926","comments":0,"milestone":null,"number":926,"html_url":"https://github.com/openframeworks/openFrameworks/issues/926","assignee":null,"title":"ofGetViewportWidth/Height returns 0 at startup","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-22T19:12:56Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3341020,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-22T00:28:08Z","body":"I noticed a few things when working with ofImage:\r\n\r\n* ofImage has a type variable for the image type but this is an int, as opposed to the ofImageType enum, so it's annoying to force convert ...\r\n* the width, height, & bpp variables are public, they should be protected with getters/setters\r\n* there isn't a getBytesPerPixel, you have to get the pixel reference then call getBytesPerPixel ...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/925","comments":0,"milestone":null,"number":925,"html_url":"https://github.com/openframeworks/openFrameworks/issues/925","assignee":null,"title":"ofImage has type as int, public vars, & missing getBPP, etc","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-22T00:28:08Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3324501,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-29T14:41:17Z","body":"As requested in https://github.com/openframeworks/openFrameworks/pull/794 I've branched openframeworks:develop into my own branch and applied the fixes required to build openFrameworks for Android with MinGW on the windows platform.\r\n\r\nThe instructions on how to compile are still valid (except for the part of patching):\r\nhttp://www.multigesture.net/articles/how-to-setup-openframeworks-for-android-on-windows/\r\n\r\nNote 1: You will need to run:\r\nandroid.bat update project --target android-8 --path C:\\openFrameworks\\addons\\ofxAndroid\\ofAndroidLib\r\n\r\nThis updates the project files for ofAndroidLib project. I didn't included those because those are user specific (they contain the path to the sdk)\r\n\r\nNote 2: d3ddf8e1 \r\nI only added this commit in order to make the examples build properly. Someone still needs to fix the proper implementation.\r\n\r\nNote 3: 7a9cf0ba\r\nWhile working on NodeBeat, we found out that not all devices are using /mnt/sdcard as their external storage location. In some cases the sdcard is located somewhere else (\"Environment.getExternalStorageDirectory()\" doesnt always return the correct location). This commit fixes this problem by checking several locations as reported on multiple Stackoverflow threads. More info about this issue can be found in the commit description.\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/922","comments":13,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":922,"html_url":"https://github.com/openframeworks/openFrameworks/issues/922","assignee":null,"title":"Windows compatibility patches and External storage location fixes.","labels":[],"closed_at":null,"created_at":"2012-02-19T23:30:24Z","state":"open","user":{"url":"https://api.github.com/users/falcon4ever","avatar_url":"https://secure.gravatar.com/avatar/4a503abeaa3d803e55e99093fbf1505d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"4a503abeaa3d803e55e99093fbf1505d","login":"falcon4ever","id":480019},"id":3288053,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/922.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/922","patch_url":"https://github.com/openframeworks/openFrameworks/pull/922.patch"}},{"updated_at":"2012-02-16T09:39:46Z","body":"What about having our own transform stack , in order to:\r\n-avoid to recompute globalTransformMatrix in each ofNode\r\n-could use it when rendering with OpenGL ES 2.0 shaders , which do not support predefined matrix values as world (modelview), worldProjection , or world inverseTranspose (for normals)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/920","comments":0,"milestone":null,"number":920,"html_url":"https://github.com/openframeworks/openFrameworks/issues/920","assignee":null,"title":"Transform stack","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-16T09:39:46Z","state":"open","user":{"url":"https://api.github.com/users/AugusteBonnin","avatar_url":"https://secure.gravatar.com/avatar/cbf7aa7c655d3652170984c9aa497a4c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"cbf7aa7c655d3652170984c9aa497a4c","login":"AugusteBonnin","id":1442658},"id":3248309,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-16T09:31:24Z","body":"There is an easy-to-correct error in ofNode::transformGL:\r\nIt should call loadMatrix with globalTransformMatrix as parameter (with a void restoreGL), or pushMatrix then multMatrix with localTransformMatrix (with a restoreGL that pops the previously pushed matrix),\r\nNOT push then mult with global. The bug appears as soon as you have got more than one level of depth in your node tree. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/919","comments":0,"milestone":null,"number":919,"html_url":"https://github.com/openframeworks/openFrameworks/issues/919","assignee":null,"title":"Error in ofNode::transformGL","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-02-16T09:31:24Z","state":"open","user":{"url":"https://api.github.com/users/AugusteBonnin","avatar_url":"https://secure.gravatar.com/avatar/cbf7aa7c655d3652170984c9aa497a4c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"cbf7aa7c655d3652170984c9aa497a4c","login":"AugusteBonnin","id":1442658},"id":3248230,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-08T10:15:31Z","body":"vs2010 does not include stdint.h support:\r\n\r\nhttp://stackoverflow.com/questions/126279/c99-stdint-h-header-and-ms-visual-studio\r\n\r\nwhich causes addon bugs like this:\r\n\r\nhttps://github.com/openframeworks/openFrameworks/issues/559\r\nhttps://github.com/kylemcdonald/ofxCv/issues/28\r\n\r\neven though these bugs aren't in the core, i think OF is designed to make it easy for people to write cross-platform, cross-compiler code. so i propose that we add an explicit declaration of the missing types for vs2010.\r\n\r\nthis isn't really something i'm worried about directly since i don't use vs2010, but i know people like elliot do. and it would be cleaner to add it once to the core than to add it once for every addon that is broken.\r\n\r\nthe solution would probably look like: take dan's code from the above issue, and move it from ofxOsc into the core.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/917","comments":5,"milestone":null,"number":917,"html_url":"https://github.com/openframeworks/openFrameworks/issues/917","assignee":null,"title":"add global stdint.h support?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"}],"closed_at":null,"created_at":"2012-02-15T02:38:17Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3229504,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-12T14:55:20Z","body":"to match ofGetWidth(), ofGetHeight()\r\n\r\ni.e. for ofGetMouseX() / ofGetWidth()","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/916","comments":1,"milestone":null,"number":916,"html_url":"https://github.com/openframeworks/openFrameworks/issues/916","assignee":null,"title":"ofGetMouseX() and ofGetMouseY() should return float","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-14T05:17:47Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3214174,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-13T08:16:08Z","body":"I had downloaded the 007 version, when I run of_preRelease_v007_linux/scripts/linux/debian/install_codeblocks.sh it install codeblocks without error, but when I run preRelease_v007_linux/scripts/linux/debian/install_dependencies.sh I get this error\r\n\r\ncompiling object for ../../../openFrameworks/graphics/ofGraphics.cpp\r\nmkdir -p obj/Debug/openFrameworks/graphics\r\ng++ -g3 -Wall -fexceptions -I../../../FreeImage/include -I../../../assimp/include -I../../../assimp/include/Compiler -I../../../cairo/include -I../../../cairo/include/cairo -I../../../cairo/include/pixman-1 -I../../../cairo/include/libpng15 -I../../../fmodex/include -I../../../freetype/include -I../../../freetype/include/freetype2 -I../../../freetype/include/freetype2/freetype -I../../../freetype/include/freetype2/freetype/config -I../../../freetype/include/freetype2/freetype/internal -I../../../freetype/include/freetype2/freetype/internal/services -I../../../glew/include -I../../../glew/include/GL -I../../../kiss/include -I../../../portaudio/include -I../../../rtAudio/include -I../../../tess2/include -I../../../poco/include -I../../../glu/include -I../../../openFrameworks/ -I../../../openFrameworks/3d -I../../../openFrameworks/math -I../../../openFrameworks/types -I../../../openFrameworks/graphics -I../../../openFrameworks/utils -I../../../openFrameworks/app -I../../../openFrameworks/video -I../../../openFrameworks/events -I../../../openFrameworks/communication -I../../../openFrameworks/gl -I../../../openFrameworks/sound -pthread -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -DOF_USING_GTK -MMD -MP -MFobj/Debug/openFrameworks/graphics/ofGraphics.d -MTobj/Debug/openFrameworks/graphics/ofGraphics.d -o obj/Debug/openFrameworks/graphics/ofGraphics.o -c ../../../openFrameworks/graphics/ofGraphics.cpp\r\n../../../openFrameworks/graphics/ofGraphics.cpp:37:22: warning: GL/glut.h: No such file or directory\r\n../../../openFrameworks/graphics/ofGraphics.cpp: In function ‘void ofSphere(float)’:\r\n../../../openFrameworks/graphics/ofGraphics.cpp:889: error: ‘glutSolidSphere’ was not declared in this scope\r\n../../../openFrameworks/graphics/ofGraphics.cpp:891: error: ‘glutWireSphere’ was not declared in this scope\r\nmake: *** [obj/Debug/openFrameworks/graphics/ofGraphics.o] Error 1\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/915","comments":2,"milestone":null,"number":915,"html_url":"https://github.com/openframeworks/openFrameworks/issues/915","assignee":null,"title":"problems installing dependencies in debian 6.0.4","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2012-02-13T05:45:01Z","state":"open","user":{"url":"https://api.github.com/users/atomsfat","avatar_url":"https://secure.gravatar.com/avatar/f732e5a8b77f8e4ed8fadc2c71916236?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"f732e5a8b77f8e4ed8fadc2c71916236","login":"atomsfat","id":140008},"id":3196145,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-12T04:41:26Z","body":"We have ofSetDataPathRoot() .... it makes sense to have a Getter as well. Basically I wanted the absolute path to the root data folder.\r\n\r\nI managed to fake this by calling ofToDataPath(\".\",true) but this seems a little counter-intuitive.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/914","comments":0,"milestone":null,"number":914,"html_url":"https://github.com/openframeworks/openFrameworks/issues/914","assignee":null,"title":"Add ofGetDataPathRoot","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-12T04:41:26Z","state":"open","user":{"url":"https://api.github.com/users/pierrep","avatar_url":"https://secure.gravatar.com/avatar/be11c9de8242e7aef0446eceaa289e01?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"be11c9de8242e7aef0446eceaa289e01","login":"pierrep","id":392160},"id":3189189,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-12T14:56:56Z","body":"it would be amazing if ofBeginShape()/ofEndShape() and ofPath supported tex coords (maybe ofTexCoord() and addTexCoord()).\r\n\r\nthis would allow for drawing arbitrary subsections of an image, or for creating an ofMesh that is texture mapped by an image.\r\n\r\nprocessing handles this with extra arguments to vertex() http://processing.org/reference/texture_.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/909","comments":3,"milestone":null,"number":909,"html_url":"https://github.com/openframeworks/openFrameworks/issues/909","assignee":null,"title":"shapes with texCoords","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-02-10T01:42:42Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3166745,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-09T08:16:47Z","body":"a student just showed me how you can use the xcode templates for pocode to create a new project wherever you want on the disk. i know we used to have xcode templates for this, but i just tried them and it seems to be hilariously broken.\r\n\r\ni'm not sure if the new project creator stuff covers this idea or not, but it would be great to have a similar ability with OF somehow.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/902","comments":2,"milestone":null,"number":902,"html_url":"https://github.com/openframeworks/openFrameworks/issues/902","assignee":null,"title":"Xcode templates should be fixed or removed","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-09T04:30:13Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3152323,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-08T21:50:23Z","body":"to draw a filled ofPolyline right now, you need to use beginshape/endshape. but i think a way of adding ofPolylines to an ofPath would be really good -- even a conversion from ofPolyline to ofPath might make sense. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/901","comments":0,"milestone":null,"number":901,"html_url":"https://github.com/openframeworks/openFrameworks/issues/901","assignee":null,"title":"easier filled ofPolyline, or easy ofPolyline->ofPath conversion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-08T21:50:23Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3148441,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-09T14:46:48Z","body":"Hi.\r\n\r\nI've been trying to load stream video ( mpeg2 .ts and hls .m3u8 ) using OF on MacOS 10.7.2.\r\n\r\nBoth cases causes error -2048 in the line below: ( l:89, ofQuickTimePlayer.cpp )\r\n\r\n```c++\r\nerr = NewMovieFromDataRef(&movie, newMovieAsyncOK,nil, urlDataRef, URLDataHandlerSubType);\r\n```\r\n\r\nLoading remote .mp4 works perect. Loading same streams in QuickTime player(v10.1) works without any troubles.\r\n\r\nSo, it seems the trouble happens just when no videofile size info returned from server.\r\n\r\nIs it a bug? Or I've missed smthng?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/897","comments":4,"milestone":null,"number":897,"html_url":"https://github.com/openframeworks/openFrameworks/issues/897","assignee":null,"title":"ofQuickTimePlayer.createMovieFromURL fails on streaming video","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-02-06T11:42:08Z","state":"open","user":{"url":"https://api.github.com/users/4pcbr","avatar_url":"https://secure.gravatar.com/avatar/52e8e29748826594f27b5c6c20a353e0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"52e8e29748826594f27b5c6c20a353e0","login":"4pcbr","id":247109},"id":3106705,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-05T17:11:59Z","body":"This concerns libraries included in addons in source form. According to [this issue](https://github.com/chrisoshea/ofxMidi/issues/8) reported by @danomatika, the makefile can only compile libraries' source code if they are in an addon's `/src` folder. This is in contradiction with @obviousjim's guide to addons' folder structure at http://ofxaddons.com/howto.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/896","comments":6,"milestone":null,"number":896,"html_url":"https://github.com/openframeworks/openFrameworks/issues/896","assignee":null,"title":"Makefile and ofxaddons.com guide don't agree regarding file structure","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"closed_at":null,"created_at":"2012-02-05T15:20:42Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3099567,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-10T02:47:13Z","body":"it needs to handle all these things:\r\n\r\n- meshes vs point clouds\r\n- different types of meshes (depending on the triangles)\r\n- indexed vs non-indexed geometry\r\n- colors, normals, texcoords\r\n- ascii vs binary\r\n- loading from externally created/defined ply files","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/880","comments":1,"milestone":null,"number":880,"html_url":"https://github.com/openframeworks/openFrameworks/issues/880","assignee":null,"title":"test ofMesh::load/save rigorously","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-01-25T16:55:09Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":2967700,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-03T19:40:34Z","body":"If you set the proper switches on the iphone sound stream you can get it to play over whatever is playing on the users ipod without muting it. There are a bunch of switches for this behavior detailed in kAudioSessionProperty_Mode.\r\n\r\nThese would need to be set before initing the audio session. The other issue is that there are like 15-20 flags you can set. Maybe just a slightly higher level setting on the stream so that these behaivors could be set in the users testapp.mm","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/878","comments":0,"milestone":null,"number":878,"html_url":"https://github.com/openframeworks/openFrameworks/issues/878","assignee":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"title":"add a switch to the iphone soundstream to support ambient","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-01-24T16:41:17Z","state":"open","user":{"url":"https://api.github.com/users/jonbro","avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"893ec14dc008e3774afe5841115920d6","login":"jonbro","id":1597},"id":2952993,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-15T18:33:39Z","body":"change pan range to -1..1, right now is 0..1","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/875","comments":2,"milestone":null,"number":875,"html_url":"https://github.com/openframeworks/openFrameworks/issues/875","assignee":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"title":"ofOpenALSoundPlayer pan -1..1","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-01-21T00:01:45Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":2918619,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=6 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4938'), ('content-length', '49322'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"93bd237d518e2c23c29e5e7b340262a8"'), ('date', 'Tue, 29 May 2012 19:27:14 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-03-10T05:09:49Z","body":" testImg.saveImage(ofxiPhoneGetDocumentsDirectory() + \"test.png\");\r\ncrashes the App and results in this error:\r\n\r\nProgram received signal: \"SIGARBT\".\r\n\r\nerror thrown in this line:\r\n\r\n FreeImage_Save(fif, bmp, fileName.c_str());","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/872","comments":1,"milestone":null,"number":872,"html_url":"https://github.com/openframeworks/openFrameworks/issues/872","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"saveImage crashes in iOS Simulator","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-01-17T21:51:17Z","state":"open","user":{"url":"https://api.github.com/users/khlrqa","gravatar_id":"dfa7e4582a04e784d50c750ae51d894f","login":"khlrqa","avatar_url":"https://secure.gravatar.com/avatar/dfa7e4582a04e784d50c750ae51d894f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":53301},"id":2875276,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-01-07T15:38:14Z","body":"Hi -\r\n\r\nwhen it comes down to multicast communication over udp, it's is important that the correct ip address of the local interface is set. Most computers nowadays have several interfaces (wired and wireless). Whereas ofxUDPManager::BindMcast uses INADDR_ANY as the local address, this might be wrong if you are not using the default interface. In my case, I connect the computers in a local wlan. The wlan device is not the primary device on my machine.\r\n\r\nTherefore I rewrote the BindMcast function adding a third argument pLocal, the local Ip address of the network interface.\r\n\r\n```c++\r\nbool ofxUDPManager::BindMcast(char *pMcast, unsigned short usPort, char *pLocal)\r\n```\r\nchanging the line: \r\n\r\n```c++\r\nmreq.imr_interface.s_addr = pLocal == \"\" ? INADDR_ANY: inet_addr(pLocal);\r\n```\r\n\r\nwhich makes a different header file as well:\r\n\r\n```c++\r\nbool BindMcast(char *pMcast, unsigned short usPort, char *pLocal = \"\");\r\n```\r\n\r\nAs you can see, the pLocal Adress is optional, if omitted, INADDR_ANY is used (backwards compatibility).\r\n\r\n\r\nNOTE:\r\n\r\nI've added the function:\r\n\r\n```c++\r\nchar* GetInterfaceAddr(const char* interface); //returns the IP of a specified interface\r\n```\r\n\r\nto the ofxUDPManager as well. This function returns the IP adress of an interface (e.g. en1 on a mac for the airport device). This is useful in dhcp networks, where your own address always changes. The function itself looks like:\r\n\r\n```c++\r\n//--------------------------------------------------------------------------------\r\nchar* ofxUDPManager::GetInterfaceAddr(const char* interface)\r\n{\r\n\tint fd;\r\n\tstruct ifreq ifr;\r\n\tfd = socket(AF_INET, SOCK_DGRAM, 0);\r\n\tifr.ifr_addr.sa_family = AF_INET;\r\n\tstrncpy(ifr.ifr_name, interface, IFNAMSIZ-1);\r\n\tioctl(fd, SIOCGIFADDR, &ifr);\r\n\tclose(fd);\r\n\treturn(inet_ntoa(((struct sockaddr_in *)&ifr.ifr_addr)->sin_addr));\r\n}\r\n```\r\n\r\nPlease not that for this function, additional headers have to be included in ofxUDPManager.h:\r\n\r\n```c++\r\n#include \r\n```\r\n\r\nIf you consider the changes useful, theres a copy of the two files downloadable here:\r\nhttp://dl.dropbox.com/u/394122/ofxUDPManager_uh_07012012.zip\r\n\r\nregards,\r\nUrs Hofer","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/866","comments":0,"milestone":null,"number":866,"html_url":"https://github.com/openframeworks/openFrameworks/issues/866","assignee":null,"title":"Multicast & UDP: Local IP required when dealing with multiple network interfaces","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-01-07T15:38:14Z","state":"open","user":{"url":"https://api.github.com/users/urshofer","gravatar_id":"0424af1c917883090f0edddf55a8f21b","login":"urshofer","avatar_url":"https://secure.gravatar.com/avatar/0424af1c917883090f0edddf55a8f21b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":116976},"id":2756440,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-03T19:40:34Z","body":"I've posted here\r\nhttp://forum.openframeworks.cc/index.php/topic,8467.new.html\r\n\r\nAt the moment when you do sample.unloadSound() on iOS the app crashes with\r\n\r\n[Switching to thread 13059]\r\n[Switching to thread 13059]\r\nProgram received signal: “EXC_BAD_ACCESS”.\r\nwarning: Unable to read symbols for /Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.2.1 (8C148)/Symbols/Developer/usr/lib/libXcodeDebuggerSupport.dylib (file not found).\r\n\r\n\r\nThis has been tested on the soundPlayerExample.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/863","comments":1,"milestone":null,"number":863,"html_url":"https://github.com/openframeworks/openFrameworks/issues/863","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"unloadSound on iOS crashes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-01-03T12:48:09Z","state":"open","user":{"url":"https://api.github.com/users/chrisoshea","gravatar_id":"62d775b0fa28bcde2d9d29405d059be3","login":"chrisoshea","avatar_url":"https://secure.gravatar.com/avatar/62d775b0fa28bcde2d9d29405d059be3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":104786},"id":2710048,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-03T19:38:16Z","body":"ofxsynth doesn't wont to compile because this line:\r\nsource->audioOut( working, numFrames, numChannels, tickCount ) in ofxSoundUnit.cpp is wrong.\r\nthe canddates are:\r\n\r\nvirtual void audioOut( float * output, int bufferSize, int nChannels, int deviceID, long unsigned long tickCount )\r\nvirtual void audioOut( float * output, int bufferSize, int nChannels)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/861","comments":10,"milestone":null,"number":861,"html_url":"https://github.com/openframeworks/openFrameworks/issues/861","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"ofxSynth semantic issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-01-02T11:14:47Z","state":"open","user":{"url":"https://api.github.com/users/viniciolindo","gravatar_id":"7aa1a7f9bf0b838c0d99886c3682ac5d","login":"viniciolindo","avatar_url":"https://secure.gravatar.com/avatar/7aa1a7f9bf0b838c0d99886c3682ac5d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1298679},"id":2700549,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-03T19:40:34Z","body":"ofPixels has getPixels(), but OF has no equivalent getSamples() for sound.\r\n\r\nright now the best solution seems to be using libsndfile with OF http://forum.openframeworks.cc/index.php/topic,3502.0.html\r\n\r\nbut i would love to see the audio architecture for OF mirror the visual architecture better. this means ofSoundPlayer acts like ofVideoPlayer, and we need to add an ofSound object that mirrors ofPixels. ofSound should always store samples in memory, while ofSoundPlayer can stream audio from disk like ofVideoPlayer.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/856","comments":1,"milestone":null,"number":856,"html_url":"https://github.com/openframeworks/openFrameworks/issues/856","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"allow access to individual sound samples","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2011-12-30T02:33:19Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2685556,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-29T04:43:24Z","body":"Today I came across this strange bug.\r\nAny OF app that needed to use the quicktime video grabber crashed at startup when the this was launched from xcode (eg. using build and run) yet it worked correctly when I opened the compiled app by doubleclicking it.\r\n\r\nThe error thrown was a EXCBADACCESS.\r\nthe function that threw this was ACWma1DecoderEntry\r\n\r\nJust some googling and I found that it had to do with Flip4Mac quicktime component.\r\nI uninstalled it and problem gone.\r\n\r\nThe strange thing is that I've had installed Flip4Mac since long ago, yet I updated iTunes a few days ago, that might have done this problem to arise.\r\n\r\nI don't know if this is actually an OF bug from its Quicktime implementation or what ever but it was really annoying getting across with it. Hope this helps others.\r\n\r\nCheers!","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/855","comments":0,"milestone":null,"number":855,"html_url":"https://github.com/openframeworks/openFrameworks/issues/855","assignee":null,"title":"video Grabber crashes with Flip4Mac","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-12-29T04:43:24Z","state":"open","user":{"url":"https://api.github.com/users/roymacdonald","gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","login":"roymacdonald","avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":974878},"id":2677212,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-23T14:13:39Z","body":"ofNode::resetTransform only resets orientation and position.\r\n\r\nI think setScale(1,1,1); needs to be called too in ofNode::resetTransform \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/851","comments":0,"milestone":null,"number":851,"html_url":"https://github.com/openframeworks/openFrameworks/issues/851","assignee":null,"title":"ofNode::resetTransform does not reset scale","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-12-23T14:13:39Z","state":"open","user":{"url":"https://api.github.com/users/companje","gravatar_id":"30a7e135fe77636519d74d129c60e156","login":"companje","avatar_url":"https://secure.gravatar.com/avatar/30a7e135fe77636519d74d129c60e156?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":156066},"id":2647508,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-22T14:31:37Z","body":"if I add an external lib to my addon, I should provide headers for all platforms to be cross-platfomr like OF but the Makefile doesn't have any switch to ignore certain files which are not needed on linux.\r\n\r\nthe problem is that the OF Makefile compiles everythin under libs/mylib/include\r\n\r\nsee here for more: http://forum.openframeworks.cc/index.php?topic=6486.new;topicseen#new","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/849","comments":0,"milestone":null,"number":849,"html_url":"https://github.com/openframeworks/openFrameworks/issues/849","assignee":null,"title":"skip files in an addon with Makefile","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-12-22T14:31:37Z","state":"open","user":{"url":"https://api.github.com/users/benben","gravatar_id":"614a4e493d7c353296519bba720e77c5","login":"benben","avatar_url":"https://secure.gravatar.com/avatar/614a4e493d7c353296519bba720e77c5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":124513},"id":2637694,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-19T22:35:27Z","body":"But it does!\r\n\r\nSomehow it's casting from float to ofPoint, maybe using the ofVec3f( float _x=0.f, float _y=0.f, float _z=0.f ) constructor.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/846","comments":10,"milestone":null,"number":846,"html_url":"https://github.com/openframeworks/openFrameworks/issues/846","assignee":null,"title":"ofCircle(float, float) should not work","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-12-14T00:42:31Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2546302,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-10T21:25:49Z","body":"Please add \"-Wreturn-type\" to the XCode project. I've noticed that it's a common mistake to add a return type but nothing is returned. Adding this option will at least show an error. I think Visual Studio shows an error already by default. You can add it like this in the project settings: http://img805.imageshack.us/img805/8745/screenshot20111210at102.png \r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/843","comments":0,"milestone":null,"number":843,"html_url":"https://github.com/openframeworks/openFrameworks/issues/843","assignee":null,"title":"Add return-type warning for XCode project files ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-12-10T21:25:49Z","state":"open","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":358809},"id":2512838,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-31T19:36:40Z","body":"Playing a movie crashes on exit on linux. Fedora 16 32-bit, latest git.\r\n\r\noutput:\r\n./moviePlayerExample\r\ndeleting video player\r\nterminate called after throwing an instance of 'Poco::SystemException'\r\n what(): System exception\r\nAborted (core dumped)\r\n\r\nbacktrace:\r\n#0 0x00110416 in __kernel_vsyscall ()\r\n#1 0x4623998f in raise () from /lib/libc.so.6\r\n#2 0x4623b2d5 in abort () from /lib/libc.so.6\r\n#3 0x46a9b74d in __gnu_cxx::__verbose_terminate_handler() ()\r\n from /usr/lib/libstdc++.so.6\r\n#4 0x46a994c4 in ?? () from /usr/lib/libstdc++.so.6\r\n#5 0x46a99500 in std::terminate() () from /usr/lib/libstdc++.so.6\r\n#6 0x46a9964f in __cxa_throw () from /usr/lib/libstdc++.so.6\r\n#7 0x08098bef in Poco::MutexImpl::lockImpl (this=0x814eb48)\r\n at /usr/include/Poco/Mutex_POSIX.h:82\r\n#8 0x08098d07 in Poco::FastMutex::lock (this=0x814eb48)\r\n at /usr/include/Poco/Mutex.h:257\r\n#9 0x0809907d in Poco::ScopedLock::ScopedLock (this=\r\n 0xbfffeabc, mutex=...) at /usr/include/Poco/ScopedLock.h:59\r\n#10 0x0809a340 in Poco::AbstractEvent, Poco::p_less > >, Poco::AbstractDelegate, Poco::FastMutex>::operator-=\r\n (this=0x814eb10, aDelegate=...) at /usr/include/Poco/AbstractEvent.h:195\r\n#11 0x080d40c5 in ofRemoveListener, ofEventArgs, ofGstUtils> (event=..., listener=0x82698e0, listenerMethod=\r\n (void (ofGstUtils::*)(ofGstUtils * const, ofEventArgs &)) 0x80d27b4 ) at ../../../openFrameworks/events/ofEventUtils.h:87\r\n#12 0x080d25be in ofGstUtils::close (this=0x82698e0)\r\nat ../../../openFrameworks/video/ofGstUtils.cpp:353\r\n#13 0x080d175e in ofGstUtils::~ofGstUtils (this=0x82698e0, \r\n __in_chrg=)\r\n at ../../../openFrameworks/video/ofGstUtils.cpp:85\r\n#14 0x080d32c4 in ofGstVideoUtils::~ofGstVideoUtils (this=0x82698d8, \r\n __in_chrg=)\r\n at ../../../openFrameworks/video/ofGstUtils.cpp:536\r\n#15 0x080d06ff in ofGstVideoPlayer::~ofGstVideoPlayer (this=0x82698b8, \r\n __in_chrg=, __vtt_parm=)\r\n at ../../../openFrameworks/video/ofGstVideoPlayer.cpp:19\r\n#16 0x080d07d9 in ofGstVideoPlayer::~ofGstVideoPlayer (this=0x82698b8, \r\n __in_chrg=, __vtt_parm=)\r\n at ../../../openFrameworks/video/ofGstVideoPlayer.cpp:21\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/840","comments":3,"milestone":null,"number":840,"html_url":"https://github.com/openframeworks/openFrameworks/issues/840","assignee":null,"title":"ofGstVideoPlayer crash on exit","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2011-12-08T11:53:55Z","state":"open","user":{"url":"https://api.github.com/users/gaborpapp","gravatar_id":"9cb0f8a67c238d2aa91d9a7957b9ef4b","login":"gaborpapp","avatar_url":"https://secure.gravatar.com/avatar/9cb0f8a67c238d2aa91d9a7957b9ef4b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":203532},"id":2486705,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-12T12:30:53Z","body":"right now the only way to change the type of pixels is to go through ofImage and set image type there.\r\n\r\nseems like this should be moved into ofPixels.\r\n\r\nthoughts?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/838","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":838,"html_url":"https://github.com/openframeworks/openFrameworks/issues/838","assignee":{"url":"https://api.github.com/users/obviousjim","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","login":"obviousjim","avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":321434},"title":"ofPixels has no setImageType","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-12-07T16:30:59Z","state":"open","user":{"url":"https://api.github.com/users/obviousjim","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","login":"obviousjim","avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":321434},"id":2476561,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-05T21:44:08Z","body":"I made a small example which uses the Wikipedia xml api to make queries which are then parsed by an ofXmlSettings object. The problem is Wikipedia complains there is no User-Agent string and dosen't return any data, while threatening to block by IP.\r\n\r\nThe fix was as simple as adding this to ofURLFileLoader.cpp line 144:\r\n
    \r\n\t\tHTTPRequest req(HTTPRequest::HTTP_GET, path, HTTPMessage::HTTP_1_1);\r\n        \treq.add(\"User-Agent\", \"Mozilla/5.0 (iPad; U; CPU OS 3_2_1 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Mobile/7B405\");\r\n
    \r\n\r\nIt uses the iOS safari user agent string. I think the best fix is to expose the HTTPRequest and HTTPResponse Poco objects so that, like in the ofxHttpUtils, you could add manually the string/value to the request before sending it. I don't think it should be set ti a default within the class. Also, it would be awesome to be able to add data into and pull data out of the requests. This is a great wrapper, especially the threading, I'd just like to have the full req/response control ... perhaps provide a method to add Poco::HttpRequests and recieve Poco::HttpResponses which could be set as references inside the ofxHttpRequest/ofxHttpResponse objects?\r\n\r\nOn another note, ofURLFileLoader seems like a rather specific name for a regular HTTP action. What's wrong with ofHttpSession etc since I've found it useful for more then just","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/837","comments":0,"milestone":null,"number":837,"html_url":"https://github.com/openframeworks/openFrameworks/issues/837","assignee":null,"title":"ofURLFileLoader dosen't set HTTP User-Agent string and there is no way to set it","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-12-05T21:44:08Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":2455011,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-04T00:08:35Z","body":"Dummy issue to ensure that the 0073 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/836","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","closed_issues":0,"number":6,"title":"0073 Release","due_on":"2012-07-30T07:00:00Z","open_issues":5,"created_at":"2011-12-03T15:37:49Z","state":"open","description":"","id":62090},"number":836,"html_url":"https://github.com/openframeworks/openFrameworks/issues/836","assignee":null,"title":"0073 Release tracking issue","labels":[],"closed_at":null,"created_at":"2011-12-04T00:08:35Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":2439965,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T09:03:22Z","body":"Not sure if is an issue or im doing wrong.\r\n\r\nIm trying to implement dragEvent() in an external class in windoes 7. I'm getting neither an error nor a response nor result. While debugging dragEvent is not called at all. The same code works perfectly on osx. \r\n\r\nhere's some:\r\n\r\ndummy.h\r\n\r\n\t#include \"ofMain.h\"\r\n\r\n\tclass dummy\r\n\t{\r\n\t\tpublic:\r\n\t\t\tdummy();\r\n\t\t\t~dummy();\r\n\t\t\t\t\t\r\n\t\t\tvoid config();\r\n\t\t\tvoid dragEvent(ofDragInfo &info);\r\n\t\t\t\r\n\t\tprivate:\r\n\t\tprotected:\r\n\t\t\r\n\t};\r\n\r\ndummy.cpp\r\n\r\n\t#include \"dummy.h\"\r\n\r\n\tdummy::dummy(){}\r\n\r\n\tdummy::~dummy(){}\r\n\r\n\tvoid dummy::config(){\r\n\t\tofAddListener(ofEvents.fileDragEvent, this, &dummy::dragEvent);\r\n\t}\r\n\r\n\tvoid dummy::dragEvent(ofDragInfo &info){\r\n\t\tfor( int i = 0; i < info.files.size() ; i++){\r\n\t\t\tcout << \"path: \" << info.files[i] << endl;\r\n\t\t}\r\n\t}\r\n\r\n\r\ntesApp.h\r\n\r\n\t#include \"ofMain.h\"\r\n\t#include \"dummy.h\"\r\n\r\n\r\n\tclass testApp : public ofBaseApp{\r\n\r\n\t\tpublic:\r\n\t\t\tvoid setup();\r\n\t\t\tvoid update();\r\n\t\t\tvoid draw();\r\n\r\n\t\t\tvoid keyPressed (int key);\r\n\t\t\tvoid keyReleased(int key);\r\n\t\t\tvoid mouseMoved(int x, int y );\r\n\t\t\tvoid mouseDragged(int x, int y, int button);\r\n\t\t\tvoid mousePressed(int x, int y, int button);\r\n\t\t\tvoid mouseReleased(int x, int y, int button);\r\n\t\t\tvoid windowResized(int w, int h);\r\n\t\t\tvoid dragEvent(ofDragInfo dragInfo);\r\n\t\t\tvoid gotMessage(ofMessage msg);\r\n\t\t\t\r\n\t\t\tdummy d;\r\n\r\ntestApp.cpp\r\n\r\n\t#include \"testApp.h\"\r\n\r\n\tvoid testApp::setup(){\r\n\t\td.config();\r\n\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/831","comments":0,"milestone":null,"number":831,"html_url":"https://github.com/openframeworks/openFrameworks/issues/831","assignee":null,"title":"dragEvent() in new class not working in win7","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-12-03T08:51:42Z","state":"open","user":{"url":"https://api.github.com/users/decolector","gravatar_id":"7165a50ea8df968de57ffb5a27ba6ebc","login":"decolector","avatar_url":"https://secure.gravatar.com/avatar/7165a50ea8df968de57ffb5a27ba6ebc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":390056},"id":2436532,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-02T16:28:49Z","body":"Dummy issue to ensure that the 0072 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/829","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":829,"html_url":"https://github.com/openframeworks/openFrameworks/issues/829","assignee":null,"title":"0072 Release tracking issue","labels":[],"closed_at":null,"created_at":"2011-12-02T16:28:49Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":2429871,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-11-29T17:54:48Z","body":"Loading Futura at font size 10 and simplify=0 yields oversimplified chars in a pdf render. I'm not sure if there's a way to fix this if the fonts are small.\r\n\r\nA workaround is to load the font at a larger size, say 40, then scale down by 0.25 when drawing. \r\n\r\nThe font below is a zoom of the pdf export using font size 10. The font above is Futura at font size 144 by comparison.\r\n\r\n![oversimplified fonts](http://farm8.staticflickr.com/7161/6423768819_9129b6d608_o.jpg)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/825","comments":2,"milestone":null,"number":825,"html_url":"https://github.com/openframeworks/openFrameworks/issues/825","assignee":null,"title":"small font sizes yield oversimplified glyph shapes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-11-29T08:26:16Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":2380571,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-19T07:01:47Z","body":"If I use loadScreenData with anti-Aliasing turned on in the program's startup like this:\r\n\r\nofAppiPhoneWindow * iOSWindow = new ofAppiPhoneWindow();\r\niOSWindow->enableAntiAliasing(4);\r\n\r\nthen the texture will load in nothing but solid black. If I bypass this anti-aliasing, it works fine. I also cannot properly populate a texture using loadScreenData in a landscape orientation. Changing to Portrait orientation in the update loop, and then back to landscape after the grab fixes it.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/822","comments":5,"milestone":null,"number":822,"html_url":"https://github.com/openframeworks/openFrameworks/issues/822","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"iOS - ofTexture.loadScreenData issue when antiAliasing is on","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-11-28T06:48:27Z","state":"open","user":{"url":"https://api.github.com/users/momo-the-monster","gravatar_id":"31f8a3ef87e828b70d2a441c8dae97d8","login":"momo-the-monster","avatar_url":"https://secure.gravatar.com/avatar/31f8a3ef87e828b70d2a441c8dae97d8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":737888},"id":2364541,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-11-28T18:48:58Z","body":"It'd be nice if ofRectangle used a ofVec2f or ofVec3f internally so you could do the something like:\r\n\r\n
    \r\nofRectangle myRect;\r\nofVec2f vel(-1, 2);\r\nmyRect.pos += vel;\r\n
    \r\n\r\nNow I'm not saying drop the x and y member vars, but link them to the ofVec internals thorugh either a union or reference. A reference would be easy through the constructor:\r\n\r\n
    \r\nclass ofRectangle {\r\n\r\n   public:\r\n\r\n     float &x, &y;\r\n     ofVec2f pos;\r\n     ....\r\n\r\n\r\nofRectangle::ofRectangle() : x(pos.x), y(pos.y) {\r\n\r\n...\r\n
    \r\n\r\nThis way we get the best of both worlds without broken code ...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/821","comments":3,"milestone":null,"number":821,"html_url":"https://github.com/openframeworks/openFrameworks/issues/821","assignee":null,"title":"suggest: ofRectangle internal ofVec","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-11-26T20:19:31Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":2356801,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-01T18:13:35Z","body":"i'm experiencing troubles in windows when i use a system file-opening dialog from openframeworks. after using it Data root path seems to get pointing to a wrong location, causing troubles e.g. true type fonts not loading.\r\nif I use the open-file dialog once again to open a file in root folder of the application, then the data path is reset correctly.\r\nusing ofSetDataPathRoot() doens't seem to fix the issue, or maybe I'm not using it correctly.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/819","comments":2,"milestone":null,"number":819,"html_url":"https://github.com/openframeworks/openFrameworks/issues/819","assignee":null,"title":"datapath messed in windows after using file open dialog","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-11-22T10:50:13Z","state":"open","user":{"url":"https://api.github.com/users/hvfrancesco","gravatar_id":"e02a8a3953de9d5d9ec1c7aa8d43eca4","login":"hvfrancesco","avatar_url":"https://secure.gravatar.com/avatar/e02a8a3953de9d5d9ec1c7aa8d43eca4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":614123},"id":2316595,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-02T15:19:58Z","body":"Had a talk with Theo about this. I think that it would be really nice if it were possible to #define/ pre-process macro if you want to exclude modules like ofVideoPlayer/ofSoundplayer in your app. \r\n\r\nThis would be super helpful for a couple of reasons.\r\n\r\nplugins that are not able to use the modules can exclude them without hacking the core.\r\nif you want to reduce the final size of you app and its not using something like ofVideoPlayer you dont need to add it.\r\n\r\nwhat do you think...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/818","comments":1,"milestone":null,"number":818,"html_url":"https://github.com/openframeworks/openFrameworks/issues/818","assignee":null,"title":"#defines for modules ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-11-21T16:45:51Z","state":"open","user":{"url":"https://api.github.com/users/vanderlin","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":149997},"id":2306518,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-11-17T15:17:10Z","body":"Hello, \r\nRunning on MacOS 10.7 with XCode 4.1 I could not compile any of the examples in devApps, except for _DeployExamples. \r\nThe first error always encountered is: \r\n\r\n../../../libs/openFrameworks/utils/ofConstants.h:101:22: error: GL/glew.h: No such file or directory\r\n\r\nI tried both changing the paths of the include part in the code and dragging the GL folder that contains glew.h separately in the project, but neither worked. \r\n\r\nHelp please... \r\n\r\nThanks, \r\n\r\nIannis Zannos","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/815","comments":3,"milestone":null,"number":815,"html_url":"https://github.com/openframeworks/openFrameworks/issues/815","assignee":null,"title":"Examples in devApps folder do not compile. Missing glew.h","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-11-17T13:45:47Z","state":"open","user":{"url":"https://api.github.com/users/iani","gravatar_id":"8200f2533f23c9daaff63c4dba6f4819","login":"iani","avatar_url":"https://secure.gravatar.com/avatar/8200f2533f23c9daaff63c4dba6f4819?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":181956},"id":2268829,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T16:30:18Z","body":"Hello, \r\nIt took me more than 4 hours to get openFrameworks to compile deployExamples on MacOS X 10.7.2 with XCode 4.1, because of having to figure out two things; \r\n\r\n1. Need to change SDK for the deployExamples project definitions to 10.6\r\n2. Need to choose deployExamples in the build menu on the toolbar of the project window. \r\n\r\nPerhaps this info should be added to the readme.txt file of the present master branch in order to spare other people the hassle? \r\n\r\nI suggest the following addition: \r\n=====\r\nTo deploy openFrameworks examples from the files cloned via the present github repository, you should build and run the project: \r\napps/devApps/_DeployExamples/deployExamples.xcodeproj\r\n\r\nTo successfully compile in Lion (MacOS X 10.7) in XCode you should select in the project file list of XCode both the target deployExamples from the top level of the file hierarchy and the project openFrameworksLib.xcodeproj from inside the openFrameworks folder, then find the project definition, and change the SDK to MacOS X 10.6. You should do the same for the targets of those two items. \r\n\r\nImportant: Before clicking the Build and Go, or the Run button, make sure that you choose the deployExamples project in the menu on the toolbar of the project window. (Otherwise if you leave openFrameworks as selected project and push Run or Build and Run, no application will be created or run). \r\n\r\n\r\n=====\r\nHopefully this helps. \r\nCheers, \r\nIannis Zannos","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/814","comments":2,"milestone":null,"number":814,"html_url":"https://github.com/openframeworks/openFrameworks/issues/814","assignee":null,"title":"Suggest adding some info about Lion to readme.txt","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-11-17T11:48:32Z","state":"open","user":{"url":"https://api.github.com/users/iani","gravatar_id":"8200f2533f23c9daaff63c4dba6f4819","login":"iani","avatar_url":"https://secure.gravatar.com/avatar/8200f2533f23c9daaff63c4dba6f4819?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":181956},"id":2267854,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-11-16T04:46:48Z","body":"I'm trying this simple ofFbo example on OF 007, the system is Ubuntu Lucid, with an Intel 945 GPU.\r\n\r\n]//--------------------------------------------------------------\r\nvoid testApp::setup(){\r\n fbo.allocate(500, 500, GL_RGBA);\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::update(){\r\n\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::draw(){\r\n\r\n fbo.begin();\r\n ofClear(255, 255, 255, 255);\r\n ofSetColor(255, 0, 0);\r\n ofCircle(mouseX, mouseY, 100);\r\n fbo.end();\r\n\r\n ofSetColor(255);\r\n fbo.draw(0, 0);\r\n}\r\n\r\nI got a segfault in i915 dri, and any test using ofFbo leads to same results.\r\n\r\n\r\n#0 0x1bd3c36 _mesa_FramebufferRenderbufferEXT() (/usr/lib/dri/i915_dri.so:??)\r\n#1 0x80cc56a ofFbo::createAndAttachRenderbuffer(this=0x85b28e8, internalFormat=34041, attachmentPoint=33306) (../../../openFrameworks/gl/ofFbo.cpp:489)\r\n#2 0x80cc352 ofFbo::allocate(this=0x85b28e8, _settings=...) (../../../openFrameworks/gl/ofFbo.cpp:388)\r\n#3 0x80cc269 ofFbo::allocate(this=0x85b28e8, width=500, height=500, internalformat=6408, numSamples=0) (../../../openFrameworks/gl/ofFbo.cpp:363)\r\n#4 0x80562ec testApp::setup(this=0x85b28d8) (src/testApp.cpp:5)\r\n#5 0x8059ca6 ofNotifySetup() (../../../openFrameworks/events/ofEvents.cpp:73)\r\n#6 0x8056a23 ofAppGlutWindow::runAppViaInfiniteLoop(this=0xbffff2f8, appPtr=0x85b28d8) (../../../openFrameworks/app/ofAppGlutWindow.cpp:317)\r\n#7 0x80584cc ofRunApp(OFSA=0x85b28d8) (../../../openFrameworks/app/ofAppRunner.cpp:82)\r\n#8 0x8055bfc main() (src/main.cpp:14)\r\n\r\nany idea about what I should try or where the problem could be? has anyone experienced similar problems?\r\n\r\nthanks in advance to all","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/811","comments":1,"milestone":null,"number":811,"html_url":"https://github.com/openframeworks/openFrameworks/issues/811","assignee":null,"title":"ofFBO causes segfault on Linux Ubuntu Lucid with i945 GPU","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-11-13T20:49:26Z","state":"open","user":{"url":"https://api.github.com/users/hvfrancesco","gravatar_id":"e02a8a3953de9d5d9ec1c7aa8d43eca4","login":"hvfrancesco","avatar_url":"https://secure.gravatar.com/avatar/e02a8a3953de9d5d9ec1c7aa8d43eca4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":614123},"id":2223158,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-09T18:51:38Z","body":"Julapy and I were discussing how to do this on the forum http://forum.openframeworks.cc/index.php?topic=7852 and I think adding a flag to allocate for mipmaps to ofTexture and ofFbo would come in handy for some people.\r\n\r\n```c\r\nvoid ofTexture::allocate(int w, int h, int internalGlDataType, bool bUseARBExtention, bool generateMipmaps = false) \r\n{\r\n if( generateMipmaps )\r\n {\r\n glTexParameterf( texData.textureTarget, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_NEAREST );\r\n glTexParameterf( texData.textureTarget, GL_TEXTURE_MAG_FILTER, GL_LINEAR );\r\n glTexParameterf( texData.textureTarget, GL_GENERATE_MIPMAP, GL_TRUE );\r\n }\r\n```\r\n\r\nand in ofFbo\r\n\r\n```c\r\nstruct Settings {\r\n bool generateMipMaps; // or int\r\n}\r\n```\r\n\r\nI'd be happy to do this & submit a pull request too.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/810","comments":2,"milestone":null,"number":810,"html_url":"https://github.com/openframeworks/openFrameworks/issues/810","assignee":null,"title":"Add flag for mipmapping in ofTexture/ofFbo","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-11-11T07:34:53Z","state":"open","user":{"url":"https://api.github.com/users/joshuajnoble","gravatar_id":"10960ba0f305803a1cdc7cd6188d643b","login":"joshuajnoble","avatar_url":"https://secure.gravatar.com/avatar/10960ba0f305803a1cdc7cd6188d643b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":237423},"id":2206980,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=7 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4937'), ('content-length', '49276'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"362300e7c4c0fc8f170b2c345084dfad"'), ('date', 'Tue, 29 May 2012 19:27:16 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-12-03T23:58:48Z","body":"right now it's inside ofMath.h","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/800","comments":3,"milestone":null,"number":800,"html_url":"https://github.com/openframeworks/openFrameworks/issues/800","assignee":null,"title":"ofInsidePoly should be a static method of ofPolyline","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-30T04:16:14Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2089523,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-05T21:31:07Z","body":"ofRect very commonly has a little chunk missing from one corner.\r\n\r\nthere is also a discrepancy between the filled and outline rectangles. it's not clear whether the outline rect should be within the bounds of the filled rect, or enclosing the filled rect, and in practice it can be a little of both.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/798","comments":2,"milestone":null,"number":798,"html_url":"https://github.com/openframeworks/openFrameworks/issues/798","assignee":null,"title":"ofRect isn't quite rectangular","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-10-29T06:38:43Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2086039,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-29T02:37:28Z","body":"we're working on some ideas regarding procedural animation and posing:\r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,7714.new.html#new\r\n\r\nwhich should be more powerful than playing back manual animations.\r\n\r\nintegrating it into the core would be ideal, but we're still trying to understand how it works.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/797","comments":0,"milestone":null,"number":797,"html_url":"https://github.com/openframeworks/openFrameworks/issues/797","assignee":null,"title":"procedural posing of bones in ofxAssimpModelLoader","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-29T02:37:28Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2085543,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T03:48:47Z","body":"this fails to display any text:\r\n\r\n\tofBackground(0);\r\n\tofSetColor(255, 254);\r\n\tofDrawBitmapString(\"this text is not displayed\", 10, 20);\r\n\r\nthis is because line 448 of ofBitmapFont.h reads:\r\n\r\n\tglAlphaFunc(GL_EQUAL, 1.0f);\r\n\r\nwhich should be changed to:\r\n\r\n\tglAlphaFunc(GL_GREATER, 0);","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/795","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":795,"html_url":"https://github.com/openframeworks/openFrameworks/issues/795","assignee":null,"title":"ofDrawBitmapString does not work with alpha","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-27T09:50:07Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2066090,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-25T23:39:09Z","body":"\r\nThis should be user adjustable / on / off. it's sort of a drag to be using easy cam and trigger double clicks are you are interacting with a gui, etc.... \r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/793","comments":1,"milestone":null,"number":793,"html_url":"https://github.com/openframeworks/openFrameworks/issues/793","assignee":null,"title":"easyCam -- ability to disable doubleClick reset","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-25T23:36:40Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":2051692,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T23:53:12Z","body":"when drawing certain shapes i get crashes, debugger claims a tessellator issue pointing to \r\n\"if (!tessTesselate(cacheTess, polyWindingMode, TESS_POLYGONS, 3, 3, 0)){\" in \"performTessellation\" function in file ofTessellator.cpp ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/789","comments":1,"milestone":null,"number":789,"html_url":"https://github.com/openframeworks/openFrameworks/issues/789","assignee":null,"title":"crashes with tessellator","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-10-21T14:49:12Z","state":"open","user":{"url":"https://api.github.com/users/ruim","gravatar_id":"18875575931764c674b5fc64ae8b7274","login":"ruim","avatar_url":"https://secure.gravatar.com/avatar/18875575931764c674b5fc64ae8b7274?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480525},"id":2016194,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-19T22:39:37Z","body":"would be useful as well. Perhaps an ofxMeshUtils would be in order for upcoming versions...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/787","comments":0,"milestone":null,"number":787,"html_url":"https://github.com/openframeworks/openFrameworks/issues/787","assignee":null,"title":"half edge mesh structure extension of ofMesh","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-19T22:39:37Z","state":"open","user":{"url":"https://api.github.com/users/kpasko","gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","login":"kpasko","avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":167271},"id":1999520,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-11-04T21:59:22Z","body":"would be quite useful","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/786","comments":1,"milestone":null,"number":786,"html_url":"https://github.com/openframeworks/openFrameworks/issues/786","assignee":null,"title":"axis aligned bounding box tree for ofMesh","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-19T22:38:35Z","state":"open","user":{"url":"https://api.github.com/users/kpasko","gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","login":"kpasko","avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":167271},"id":1999513,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-27T17:58:58Z","body":"I am loading in boujou camera data (translation and euler rotation), and I get really fine results when I do: \r\n\r\nglTranslatef(tx,ty,tz);\r\nglRotatef(rx, 1,0,0);\r\nglRotatef(ry, 0,1,0);\r\nglRotatef(rz, 0,0,1);\r\n\r\nbut when I create an ofCamera, and do: \r\n\r\nsetPosition(ofPoint(tx, ty, tz));\r\nsetOrientation(ofPoint(rx, ry, rz));\r\n\r\nI get strange results. I am wondering about ofNodes \"setOrientation\" and if it's really right in that the order is switched:\r\n\r\nsetOrientation(ofQuaternion(eulerAngles.y, ofVec3f(0, 1, 0), eulerAngles.x, ofVec3f(1, 0, 0), eulerAngles.z, ofVec3f(0, 0, 1)));\r\n\r\nalso, maybe I am mis interpreting what \"set orientation\" does. But I can't seem to get similar results with ofCam, even if I do, for example, \r\n\r\ncam.setPosition( tx,ty,tz);\r\ncam.rotate( rx, 1,0,0);\r\ncam.rotate( ry, 0,1,0);\r\ncam.rotate( rz, 0,0,1);\r\n\r\nI still don't get the same results as when I do it via opengl. This seems like a bug maybe with how ofNode handles rotation?\r\n\r\n(note , I am calling resetTranform() on the camera, so it's not an accumulation of rotations.... it's just that I can't seem to find a way to get ofCam to rotate in the same way as opengl commands). \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/785","comments":2,"milestone":null,"number":785,"html_url":"https://github.com/openframeworks/openFrameworks/issues/785","assignee":null,"title":"ofCamera setOrientation gives odd results","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-10-19T11:16:42Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":1992818,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-09T11:46:35Z","body":"It seems to be happening pretty far in, if you put debug statements in touchesMoved in EAGL view, you will see that y is set to the x value of the touch.\r\n\r\nThis does not occur in debug mode, or in the simulator, and it has to be done with xcode4. I am running the newest ios5 beta as well.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/778","comments":2,"milestone":null,"number":778,"html_url":"https://github.com/openframeworks/openFrameworks/issues/778","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"running an iphone retina app in release mode causes touch.x == touch.y","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-10-18T11:26:26Z","state":"open","user":{"url":"https://api.github.com/users/jonbro","gravatar_id":"893ec14dc008e3774afe5841115920d6","login":"jonbro","avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1597},"id":1938472,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-16T18:30:08Z","body":"\r\nat the moment, the ofCamera draw calls ofNode, which does't really give you a clear indication of which way the camera is looking. even that is weird, because a camera looks on -z, and the node draw draws a line on positive z. \r\n\r\nI suggest we add something that draws a bit of a frustum (ie, fov, etc) and gives you a feeling about orientation. \r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/774","comments":0,"milestone":null,"number":774,"html_url":"https://github.com/openframeworks/openFrameworks/issues/774","assignee":null,"title":"ofCamera draw() should be more indicative of where the camera is facing. ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-16T18:30:08Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":1922704,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-12T15:09:29Z","body":"Currently we have:\r\n\tvirtual void draw(float x,float y)=0;\r\n\tvirtual void draw(float x,float y,float w, float h)=0;\r\n\r\n\tvirtual float getHeight()=0;\r\n\tvirtual float getWidth()=0;\r\n\r\nSince we're insisting that the user define a getWidth and getHeight, can I ask why we don't set the default of draw(x,y) to be\r\n virtual void draw(float x,float y) {draw(x, y, getWidth(), getHeight()) };\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/772","comments":0,"milestone":null,"number":772,"html_url":"https://github.com/openframeworks/openFrameworks/issues/772","assignee":null,"title":"ofBaseDraws draw(x, y) default","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-10-12T15:08:55Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":1888302,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T15:11:08Z","body":"Greetings,\r\n\r\nI downloaded OF v.007 on my laptop running Vista SP2. I compiled and ran some of the example apps like imageLoader example using VS2010. \r\n\r\nTextures seem to be broken. Images appear as white slabs.\r\n\r\nI tracked it down and found that disabling ArbTex, with ofDisableArbTex(), will get the textures working again. \r\n\r\nUsing ArbTex worked fine in OF v0.62 on the same machine.\r\n\r\nLaptop:\r\nHP Pavilion dv600 Notebook PC\r\nManufacturer: Hewlett-Packard\r\nOperating System: Windows Vista Home Premium, Service Pack 2 (6.0.6002)\r\nPhysical Memory:\t 2037 MB\r\nProcessor: Intel Core2 Duo PU T5250 @ 1.5 GHz, 1.5 GHz\r\n\r\nCompiler:\r\nMicrosoft Visual Studio 2010\r\nInstalled Version: Professional\r\nMicrosoft Visual C++ 2010\r\n\r\nGraphics:\r\nGraphics: Intel Graphics Media Accelerator Driver for Mobile\r\nGraphics: Driver Version: 7.14.10.1244\r\nDirectX Version:\t10.0\r\nOpenGL Version 1.5\r\n\r\nHere's a full report of OpenGL info from GLview:\r\n\r\n\r\nRenderer: Intel 965/963 Graphics Media Accelerator\r\nVendor: Intel\r\nMemory: 448 MB\r\nVersion: 1.5.0 - Build 7.14.10.1244\r\nShading language version: N/A\r\n\r\n\r\nMax texture size: 2048 x 2048\r\nMax texture coordinates: 8\r\nMax vertex texture image units: 0\r\nMax texture image units: 16\r\nMax geometry texture units: 0\r\nMax anisotropic filtering value: 2\r\nMax number of light sources: 16\r\nMax viewport size: 2048 x 2048\r\nMax uniform vertex components: 0\r\nMax uniform fragment components: 0\r\nMax geometry uniform components: 0\r\nMax varying floats: 0\r\nMax samples: 0\r\nMax draw buffers: 0\r\n\r\n\r\nExtensions: 56\r\n\r\nGL_3DFX_texture_compression_FXT1\r\nGL_ARB_depth_texture\r\nGL_ARB_fragment_program\r\nGL_ARB_multitexture\r\nGL_ARB_occlusion_query\r\nGL_ARB_point_parameters\r\nGL_ARB_shadow\r\nGL_ARB_texture_border_clamp\r\nGL_ARB_texture_compression\r\nGL_ARB_texture_cube_map\r\nGL_ARB_texture_env_add\r\nGL_ARB_texture_env_combine\r\nGL_ARB_texture_env_crossbar\r\nGL_ARB_texture_env_dot3\r\nGL_ARB_transpose_matrix\r\nGL_ARB_vertex_buffer_object\r\nGL_ARB_vertex_program\r\nGL_ARB_window_pos\r\nGL_EXT_abgr\r\nGL_EXT_bgra\r\nGL_EXT_blend_color\r\nGL_EXT_blend_func_separate\r\nGL_EXT_blend_minmax\r\nGL_EXT_blend_subtract\r\nGL_EXT_clip_volume_hint\r\nGL_EXT_compiled_vertex_array\r\nGL_EXT_draw_range_elements\r\nGL_EXT_fog_coord\r\nGL_EXT_multi_draw_arrays\r\nGL_EXT_packed_pixels\r\nGL_EXT_rescale_normal\r\nGL_EXT_secondary_color\r\nGL_EXT_separate_specular_color\r\nGL_EXT_shadow_funcs\r\nGL_EXT_stencil_two_side\r\nGL_EXT_stencil_wrap\r\nGL_EXT_texture3D\r\nGL_EXT_texture_compression_s3tc\r\nGL_EXT_texture_env_add\r\nGL_EXT_texture_env_combine\r\nGL_EXT_texture_filter_anisotropic\r\nGL_EXT_texture_lod_bias\r\nGL_IBM_texture_mirrored_repeat\r\nGL_NV_blend_square\r\nGL_NV_texgen_reflection\r\nGL_SGIS_generate_mipmap\r\nGL_SGIS_texture_edge_clamp\r\nGL_SGIS_texture_lod\r\nGL_WIN_swap_hint\r\nWGL_ARB_buffer_region\r\nWGL_ARB_extensions_string\r\nWGL_ARB_make_current_read\r\nWGL_ARB_pbuffer\r\nWGL_ARB_pixel_format\r\nWGL_EXT_extensions_string\r\nWGL_EXT_swap_control\r\n\r\nCore features\r\nv1.1 (100 % - 7/7)\r\nv1.2 (100 % - 8/8)\r\nv1.3 (100 % - 9/9)\r\nv1.4 (100 % - 15/15)\r\nv1.5 (100 % - 3/3)\r\nv2.0 (10 % - 1/10)\r\nv2.1 (0 % - 0/3)\r\nv3.0 (0 % - 0/23)\r\nv3.1 (0 % - 0/8)\r\nv3.2 (0 % - 0/10)\r\nv3.3 (0 % - 0/10)\r\nv4.0 (0 % - 0/14)\r\nv4.1 (0 % - 0/7)\r\nv4.2 (0 % - 0/12)\r\n\r\nOpenGL driver version check (Current: 1.5.0 - Build 7.14.10.1244, Latest known: ):\r\nLatest version of display drivers found\r\nAccording the database, you are running the latest display drivers for your video card.\r\n\r\nNo ICD registry entry\r\nThe current OpenGL driver doesn't expose the SOFTWARE/Microsoft/Windows (NT)/CurrentVersion/OpenGLDrivers registry entry. Unable to detect the driver version, driver revision name and filename.\r\n\r\nCompiled vertex array support\r\nThis feature improves OpenGL performance by using video memory to cache transformed vertices.\r\n\r\nMultitexture support\r\nThis feature accelerates complex rendering such as lightmaps or environment mapping.\r\n\r\nSecondary color support\r\nThis feature provides an alternate method of coloring specular highlights on polygons.\r\n\r\nS3TC compression support\r\nThis feature improves texture mapping performance in some applications by using lossy compression.\r\n\r\nTexture edge clamp support\r\nThis feature improves texturing quality by adding clamping control to edge texel filtering.\r\n\r\nVertex program support\r\nThis feature enables a wide variety of effects via flexible vertex programming (equivalent to DX8 Vertex Shader.)\r\n\r\nFragment program support\r\nThis feature enables a wide variety of effects via per pixel programming (equivalent to DX9 Pixel Shader.)\r\n\r\nTexture anisotropic filtering support\r\nThis feature improves the quality of texture mapping on oblique surfaces.\r\n\r\nOcclusion test support\r\nThis feature provides hardware accelerated culling for objects.\r\n\r\nNo OpenGL Shading Language support\r\nThis may break compatibility for applications using per pixel shading.\r\n\r\nNo Frame buffer object support\r\nThis may break compatibility for applications using render to texture functions.\r\n\r\nDisabling ArbTex will work for me, but I thought others might have the same problem with 007.\r\n\r\n- Rob","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/771","comments":3,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":771,"html_url":"https://github.com/openframeworks/openFrameworks/issues/771","assignee":null,"title":"Textures Didn't Work in 007 on my Laptop, Had to Disable ArbTex","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2011-10-11T13:02:28Z","state":"open","user":{"url":"https://api.github.com/users/robgonsalves","gravatar_id":"7c2e18ac17a0b907dbac36aaa6a9ec0f","login":"robgonsalves","avatar_url":"https://secure.gravatar.com/avatar/7c2e18ac17a0b907dbac36aaa6a9ec0f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1119357},"id":1874373,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-24T15:27:29Z","body":"When integrating openFrameworks into existing build systems, it would make things easier if this common include convention was followed.\r\n\r\ni.e. to include openFrameworks headers in my own build, because all the includes look like:\r\n\r\n#include \"ofMesh.h\"\r\n#include \"ofAppGlutWindow.h\"\r\n#include \"ofSerial.h\"\r\n\r\nI have to add all these paths to my include paths:\r\n\r\n\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/app\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/3d\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/communication\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/gl\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/graphics\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/utils\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/types\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/math\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/events\r\n\r\n\r\n\r\nIt is common to instead structure files like (in the case of openFrameworks):\r\n\r\noF/include/oF\r\noF/include/oF/app\r\noF/include/oF/3d\r\noF/include/oF/communication\r\noF/include/oF/gl\r\noF/include/oF/graphics\r\n...etc...\r\n\r\nand just write:\r\n\r\n#include \r\n#include \r\n\r\netc.\r\n\r\nI'm not sure if there is an argument to leave it like it is because it's easier for oF's demographic? But I would say teaching the some_lib/include/some_lib/ convention would help people use more C++.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/767","comments":2,"milestone":null,"number":767,"html_url":"https://github.com/openframeworks/openFrameworks/issues/767","assignee":null,"title":"#include instead of #include ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-10-09T03:58:30Z","state":"open","user":{"url":"https://api.github.com/users/gimlids","gravatar_id":"cc4cace34c61103f0624002a692820f7","login":"gimlids","avatar_url":"https://secure.gravatar.com/avatar/cc4cace34c61103f0624002a692820f7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":186277},"id":1854874,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-12T13:12:02Z","body":"\r\nat the moment, ofNode has a draw function that has awkwardly hard coded sizes: \r\n\r\nvirtual void customDraw() {\r\n\t\tofBox(10);\r\n\t\tofDrawAxis(20);\r\n\t}\r\n\r\nI'd like a draw(size) option. obviously I can extend ofNode and create my own functions, but if I just draw a node, I might want to adjust the size internally, as the \"10\" and \"20\" might not make any sense based on where I am drawing, for example here: \r\n\r\nhttp://imgur.com/idWPp\r\n\r\nlooks quite weird, but at 1/10th the size would look ok. \r\n\r\nas most other OF objects have draw(size) options, I think ofNodeShould have this too. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/766","comments":4,"milestone":null,"number":766,"html_url":"https://github.com/openframeworks/openFrameworks/issues/766","assignee":null,"title":"ofNode should have a draw(float size) option","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-08T09:38:46Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":1851779,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T23:51:04Z","body":"edit: originally this issue was about adding glu functions. now i realize any remaining ones need to be removed. but it's still relevant to have an ofScreenToWorld and ofWorldToScreen. \r\n\r\nthis would be really awesome. there is already some code in ofDrawBitmapString that's using gluProject, it would be good to clean it up.\r\n\r\nthe main issue is that glu is not on iOS, so we'd need to find/write our own implementation.\r\n\r\nhere's a first pass:\r\n\r\n\tGLdouble modelviewMatrix[16], projectionMatrix[16];\r\n\tGLint viewport[4];\r\n\tvoid updateProjectionState() {\r\n\t\tglGetDoublev(GL_MODELVIEW_MATRIX, modelviewMatrix);\r\n\t\tglGetDoublev(GL_PROJECTION_MATRIX, projectionMatrix);\r\n\t\tglGetIntegerv(GL_VIEWPORT, viewport);\r\n\t}\r\n\r\n\tofVec3f ofWorldToScreen(ofVec3f world) {\r\n\t\tupdateProjectionState();\r\n\t\tGLdouble x, y, z;\r\n\t\tgluProject(world.x, world.y, world.z, modelviewMatrix, projectionMatrix, viewport, &x, &y, &z);\r\n\t\tofVec3f screen(x, y, z);\r\n\t\tscreen.y = ofGetHeight() - screen.y;\r\n\t\treturn screen;\r\n\t}\r\n\r\n\tofVec3f ofScreenToWorld(ofVec3f screen) {\r\n\t\tupdateProjectionState();\r\n\t\tGLdouble x, y, z;\r\n\t\tscreen.y = ofGetHeight() - screen.y;\r\n\t\tgluUnProject(screen.x, screen.y, screen.z, modelviewMatrix, projectionMatrix, viewport, &x, &y, &z);\r\n\t\tofVec3f world(x, y, z);\r\n\t\treturn world;\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/765","comments":4,"milestone":null,"number":765,"html_url":"https://github.com/openframeworks/openFrameworks/issues/765","assignee":null,"title":"remove gluProject and gluUnProject, add screenToWorld, worldToScreen","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-07T09:46:06Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1841802,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T06:02:37Z","body":"I made an app using the preRelease version 007, I have a gui view with a bunch of buttons and sliders this view is 1/3 of the screen size and sits at the bottom, it is an Universal app that allows any orientation on the iPad and supports Portrait only for the iPhone / iPod Touch, here is my problem I need to allow touches to pass through the gui view for this I use **[ofxiPhoneGetGLView() addSubview:guiViewController.view];** the problem this method is that the gui view does not call the **willAnimateRotationToInterfaceOrientation()** at launch, and I get the following message in the console\r\n_**Action connections from <UIView: 0x5b88d0; frame = (20 0; 280 320); autoresize = LM+RM+H; layer = <CALayer: 0x5b7d30>> are not supported.**_\r\n\r\n if I use **[ofxiPhoneGetUIWindow() addSubview:guiViewController.view];** the **willAnimateRotationToInterfaceOrientation()** method works at launch as expected and the gui view adjust itself to the correct position and size\r\n\r\nAny help will be much appreciated","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/764","comments":1,"milestone":null,"number":764,"html_url":"https://github.com/openframeworks/openFrameworks/issues/764","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"Autoresize problem in iOS","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-10-05T20:35:04Z","state":"open","user":{"url":"https://api.github.com/users/nardove","gravatar_id":"8022cb5f529975afbc64cc9312008d8c","login":"nardove","avatar_url":"https://secure.gravatar.com/avatar/8022cb5f529975afbc64cc9312008d8c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":277690},"id":1827792,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-28T01:00:34Z","body":"ofxXmlXettings uses TinyXML which gives you lots of useful error info like what line the error is on as well as what it has trouble reading. This is super awesome and useful to people like me who always mistype xml here and there.\r\n\r\nCurrently ofxXmlSettings::loadFile only returns a bool and you're left to figure out if it's a path issue, bad xml formatting, etc. At the least, we should be able to grab an error string.\r\n\r\nHere's how to do it:\r\n
    \r\nstd::string Xml::getErrorString(const TiXmlDocument* xmlDoc)\r\n{\r\n    if(xmlDoc == NULL)\r\n        return \"\";\r\n\r\n    std::stringstream error;\r\n    error << \"line \" <<  xmlDoc->ErrorRow() << \", \" << (std::string) xmlDoc->ErrorDesc();\r\n    return error.str();\r\n}\r\n
    ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/760","comments":1,"milestone":null,"number":760,"html_url":"https://github.com/openframeworks/openFrameworks/issues/760","assignee":null,"title":"ofxXmlSettings does not print any useful error messages","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-09-28T00:53:09Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":1758237,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T03:48:47Z","body":"This would be the best thing ever. \r\n\r\nstring ipAddr = ofxXmlSettings::readValueFromFile(\"data.xml\", \"ip\", \"127.0.0.1\"); \r\n\r\nofxXmlSettings::saveValueToFile(\"data.xml\", \"ip\", ipAddr); ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/758","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":758,"html_url":"https://github.com/openframeworks/openFrameworks/issues/758","assignee":null,"title":"non ofxXmlSettings object read and write value","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-09-26T11:54:06Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":1738864,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-25T13:22:59Z","body":"in my opinion, it would make sense for ofPixels::allocate to initialize the new memory to 0. even for large images, i don't think this is such an expensive operation.\r\n\r\ni discovered that it is not initialized to 0 when i had a really weird bug -- some code that gave me different results depending on whether i loaded another image before allocating or not. i was expecting OF to act like opencv, which also sets new memory to 0. this would be in line with ofVec*, ofColor, and a few other things, which are all allocated to 0.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/757","comments":0,"milestone":null,"number":757,"html_url":"https://github.com/openframeworks/openFrameworks/issues/757","assignee":null,"title":"ofPixels::allocate should init new memory","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-09-25T13:22:59Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1733504,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-22T08:20:27Z","body":"void ofFbo::end() {\r\n\tunbind();\r\n\tif(ofGetGLRenderer()){\r\n\t\tofGetGLRenderer()->setCurrentFBO(NULL);\r\n\t}\r\n\tofPopView();\r\n}\r\n\r\nthis will go wrong if nested fbo as following\r\n\r\nfbo1.begin();\r\n...\r\n fbo2.begin();\r\n ...\r\n fbo2.end();\r\n...\r\nfbo1.end();\r\n\r\nso probably the current fbo must not be set NULL\r\n\r\nerror show's in\r\nvoid ofGLRenderer::viewport(float x, float y, float width, float height, bool invertY) {\r\n\tif(width == 0) width = ofGetWindowWidth();\r\n\tif(height == 0) height = ofGetWindowHeight();\r\n\r\n\tif (invertY){\r\n\t\tif(currentFbo){\r\n\t\t\ty = currentFbo->getHeight() - (y + height);\r\n\t\t}else{\r\n\t\t\ty = ofGetWindowHeight() - (y + height);\r\n\t\t}\r\n\t}\r\n\tglViewport(x, y, width, height);\t\r\n}\r\nthe 'y' will computing wrong when current height is wrong\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/754","comments":0,"milestone":null,"number":754,"html_url":"https://github.com/openframeworks/openFrameworks/issues/754","assignee":null,"title":"nested fbo causing currentFBO lost","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-09-22T08:20:27Z","state":"open","user":{"url":"https://api.github.com/users/liquidzym","gravatar_id":"166640c513e589c86d2de49c52258eb4","login":"liquidzym","avatar_url":"https://secure.gravatar.com/avatar/166640c513e589c86d2de49c52258eb4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":51957},"id":1708332,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:38:03Z","body":"I found an issue with readToPixels() on iOS that works as expected when compiled for OSX. \r\n\r\nInitialize an FBO:\r\n\r\n   ofFbo::Settings settings;\r\n    settings.width = 1024;\r\n    settings.height = 1024;\r\n    settings.internalformat = GL_RGB;\r\n    settings.numSamples = 0;\r\n    settings.useDepth = false;\r\n    settings.useStencil = false;\r\n    screenFBO.allocate(settings);\r\n\r\nthen draw into the FBO and attempt to retrieve the pixels:\r\n\r\n ofPixels pixels; \r\n screenFBO.readToPixels(pixels); \r\n\r\nThis gives me the ofPixels I'm expecting in OSX, in iOS the pixels aren't populated. I can draw the FBO and see it on screen, I just can't get the pixels out of the texture in iOS.\r\n\r\nThis seems to be related to this portion of readToPixels() from ofFbo.cpp:\r\n\r\n bind(); \r\n int format,type; \r\n ofGetGlFormatAndType(settings.internalformat,format,type); \r\n glReadPixels(0,0,settings.width, settings.height, format, GL_UNSIGNED_BYTE, pixels.getPixels()); \r\n unbind(); \r\n\r\nHas anyone experienced this issue – any fixes?\r\n\r\nThanks,\r\nSteve","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/753","comments":1,"milestone":null,"number":753,"html_url":"https://github.com/openframeworks/openFrameworks/issues/753","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"ofFbo readToPixels() in iOS","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-09-21T20:50:33Z","state":"open","user":{"url":"https://api.github.com/users/stephen-baker","gravatar_id":"96e9ae469240e57fc3ebeed6769c7016","login":"stephen-baker","avatar_url":"https://secure.gravatar.com/avatar/96e9ae469240e57fc3ebeed6769c7016?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1047836},"id":1704855,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-21T10:37:20Z","body":"I'm having a problem with creating an image out of ofFbo pixels with some image and fbo sizes\r\n\r\n```c++\r\nvoid testApp::setup(){\r\n\r\n ofSetLogLevel(OF_LOG_VERBOSE);\r\n\tofSetVerticalSync(false);\r\n ofBackground(34, 34, 34);\r\n\tofEnableAlphaBlending();\r\n\r\n ofSetWindowShape(1024, ofGetScreenHeight()-70);\r\n ofSetFrameRate(60);\r\n\r\n frame.loadImage(\"lay.png\");\r\n \r\n imageHeight = 1172;\r\n imageWidth = 1182;\r\n\r\n mergeFbo.allocate(imageWidth, imageHeight, GL_RGB);\r\n\r\n final.setImageType(OF_IMAGE_COLOR);\r\n\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::draw(){\r\n\r\n ofEnableAlphaBlending();\r\n\r\n mergeFbo.begin();\r\n\r\n ofClear(0, 0, 0, 1);\r\n\r\n frame.draw(0, 0);\r\n\r\n mergeFbo.end();\r\n\r\n\r\n mergeFbo.draw(200, 100, 100, 200);\r\n \r\n \r\n mergeFbo.readToPixels(pixels);\r\n final.setFromPixels(pixels);\r\n\r\n final.draw(0, 0);\r\n\r\n}\r\n```","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/752","comments":1,"milestone":null,"number":752,"html_url":"https://github.com/openframeworks/openFrameworks/issues/752","assignee":null,"title":"ofFbo (problems with certain image dimensions)","labels":[],"closed_at":null,"created_at":"2011-09-20T21:16:24Z","state":"open","user":{"url":"https://api.github.com/users/ammalgamma","gravatar_id":"96b69749f518cf6a2964b999bf29ee8e","login":"ammalgamma","avatar_url":"https://secure.gravatar.com/avatar/96b69749f518cf6a2964b999bf29ee8e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":517000},"id":1691874,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-19T09:04:12Z","body":"feature request for a more generic ofJoin() function that accepts vectors of all kinds of objects (float, int, ofVec2f, etc) rather than just string. anything that implements operator<<\r\n\r\nhere's an example using stl:\r\n\r\n\t#include \r\n\ttemplate \r\n\tstring ofJoin(vector& elements, string delimiter) {\r\n\t\tstringstream result;\r\n\t\tcopy(elements.begin(), elements.end(), ostream_iterator(result, delimiter.c_str()));\r\n\t\treturn result.str();\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/748","comments":3,"milestone":null,"number":748,"html_url":"https://github.com/openframeworks/openFrameworks/issues/748","assignee":null,"title":"more generic ofJoin","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-09-17T07:26:18Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1668066,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-21T17:22:14Z","body":"\r\nI'm looking into creating some new primitives for OF [1] and the polygon winding has me a bit confused.\r\n\r\nIf you take for instance \"graphicsExample\" an you add:\r\n\r\n```glEnable( GL_CULL_FACE );```\r\n\r\nSomewhere you will no longer see much drawn to screen.\r\n\r\nGL_CCW is the default FrontFace for OpenGL, but OF seems to be the opposite.\r\nhttp://www.khronos.org/opengles/sdk/docs/man/xhtml/glFrontFace.xml\r\n\r\nWhich is coolio of course, as long as we are consistent.\r\n\r\nOur options are either to throw a ```glFrontFace( GL_CW );``` in there somewhere OR re-write all the drawing to be consistent with OpenGL default, not sure what is the best in the long run.\r\n\r\nWhat say you all?\r\n\r\n/A\r\n\r\n\r\n[1] https://github.com/andreasmuller/openFrameworks/blob/develop-opengles2/libs/openFrameworks/3d/of3dPrimitives.h","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/745","comments":2,"milestone":null,"number":745,"html_url":"https://github.com/openframeworks/openFrameworks/issues/745","assignee":null,"title":"Polygon winding","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-09-14T13:50:48Z","state":"open","user":{"url":"https://api.github.com/users/andreasmuller","gravatar_id":"210831a04d36f1aa26413ecbdbd4b07c","login":"andreasmuller","avatar_url":"https://secure.gravatar.com/avatar/210831a04d36f1aa26413ecbdbd4b07c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":791114},"id":1643672,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=8 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4936'), ('content-length', '42586'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"1f6749765d79f3319834dfda4c27cd5e"'), ('date', 'Tue, 29 May 2012 19:27:17 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-03-17T16:52:58Z","body":"i think it would be wonderful if every OF example was named ofApp instead of testApp. especially because:\r\n\r\n\tclass ofApp : public ofBaseApp {\r\n\r\nis more natural than:\r\n\r\n\tclass testApp : public ofBaseApp {\r\n\r\ngiven the rest of OF naming conventions. and it would increase consistency with things like:\r\n\r\n\tofGetAppPtr();\r\n\tofAppBaseWindow\r\n\tofAppGlutWindow\r\n\r\nthis is a massive refactor that shouldn't be difficult, but should be done at the same time as something like a code formatting cleanup.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/744","comments":10,"milestone":null,"number":744,"html_url":"https://github.com/openframeworks/openFrameworks/issues/744","assignee":null,"title":"rename testApp to ofApp","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-09-14T07:02:36Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1641198,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-26T11:56:48Z","body":"calling ofEnableAlphaBlending() crashes my app on a machine with opengl version 1.1.0, because glBlendEquation(), introduced at opengl 1.3, needs to gracefully degrade. Here is the solution:\r\n\r\n
    \r\nvoid ofEnableAlphaBlending_slightlySafer(void){\r\n\tconst GLubyte * version = glGetString(GL_VERSION);\r\n\tint major, minor;\r\n\tsscanf((const char*)version, \"%i.%i\",&major, &minor);\r\n\r\n\tif(major > 1 || (major==1 && minor>=3)){\r\n\t\tofEnableAlphaBlending();\r\n\t}\t\r\n}\r\n
    ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/743","comments":1,"milestone":null,"number":743,"html_url":"https://github.com/openframeworks/openFrameworks/issues/743","assignee":null,"title":"seg fault on ofEnableAlphaBlending() -> glBlendEquation()","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-09-13T22:53:55Z","state":"open","user":{"url":"https://api.github.com/users/jtnimoy","gravatar_id":"153ba4a8df491692b717daad7a6030be","login":"jtnimoy","avatar_url":"https://secure.gravatar.com/avatar/153ba4a8df491692b717daad7a6030be?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":183796},"id":1639020,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:39:00Z","body":"In ofxiPhoneAppDelegate.mm in the setAnimationFrameInterval method should be changed from\r\n\r\n\r\nif (animating){\r\n [self stopAnimation];\r\n [self startAnimation];\r\n}\r\n\r\nto\r\n\r\nif (animating){\r\n [self stopAnimation];\r\n}\r\n [self startAnimation];\r\n\r\nThis will allow it start again if it's stopped.\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/738","comments":0,"milestone":null,"number":738,"html_url":"https://github.com/openframeworks/openFrameworks/issues/738","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"ofxiPhone - setting ofSetFrameRate(0) and then back to > 0 doesn't start again","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-09-12T21:23:04Z","state":"open","user":{"url":"https://api.github.com/users/cerupcat","gravatar_id":"91b3d4bfbbb99d840b096cde3af877bf","login":"cerupcat","avatar_url":"https://secure.gravatar.com/avatar/91b3d4bfbbb99d840b096cde3af877bf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":204151},"id":1628082,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T22:55:09Z","body":"it would be awesome to have lines drawn nicer when they are 1 thick and 2 make sharp edges. processing has some functions strokeCap() and strokeJoin() for setting this behavior, but it doesn't work with OPENGL mode. we could probably adapt a geometry shader to do some smart mitering for us on the GPU.\r\n\r\nprompted by the discussion here: http://forum.openframeworks.cc/index.php/topic,7278.0/topicseen.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/730","comments":1,"milestone":null,"number":730,"html_url":"https://github.com/openframeworks/openFrameworks/issues/730","assignee":null,"title":"nicer stroke mitering/joining and end caps","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-09-07T03:27:13Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1586262,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-05T15:39:58Z","body":"ofColor_:operator+= currently calls clamp() when it's done doing the +=\r\n\r\ni imagined one of the applications of ofFloatColor would be for averaging or summing ofColor, which normally requires non-saturation semantics for +=. i could also do a / or * every += operation to avoid overflow. this doesn't have to be a bug, but it should at least be documented clearly when we discuss ofColor.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/728","comments":1,"milestone":null,"number":728,"html_url":"https://github.com/openframeworks/openFrameworks/issues/728","assignee":null,"title":"ofColor and clamping","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-09-05T14:41:50Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1569364,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-05T10:17:48Z","body":"Hello\r\n\r\nI had a problem with gamma for my Carbon app in OSX 10.6, UI looked \"blotched\" with Pappis' help it was solved, here are details:\r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,6404.msg30519.html#msg30519\r\n\r\nHowever, the trick with HIWindowSetColorSpace does not work in OSX 10.7 Lion\r\nLooking for solutions again\r\n\r\nThanks\r\nTom\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/727","comments":0,"milestone":null,"number":727,"html_url":"https://github.com/openframeworks/openFrameworks/issues/727","assignee":null,"title":"OSX 10.7 Gamma Problem","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2011-09-05T10:17:48Z","state":"open","user":{"url":"https://api.github.com/users/Tommato","gravatar_id":"95bbfbd39116dffe06be4d816f322bf0","login":"Tommato","avatar_url":"https://secure.gravatar.com/avatar/95bbfbd39116dffe06be4d816f322bf0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1027082},"id":1566286,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-26T18:44:30Z","body":"Related forum post: http://forum.openframeworks.cc/index.php/topic,7053.0.html\r\n\r\nFrom what I understand, it's best to leave the mainThread for UIKit elements and move openGL and other things to another thread. Currently, if there's a lot of drawing then the UIKit elements are delayed and can even pause the update/draw methods entirely. Moving the drawing to it's own thread should help with this.\r\n\r\nI'm still testing, but this looks like it could be a good candidate for core integration. It has examples of threaded, single (what we currently use), and GCD (which I think is iOS 4.0 only) openGL implementation: https://github.com/Volcore/LimbicGL In my early tests, it does fix any pausing of the update/draw with the threaded example (haven't tried the others). I could use some help though trying to integrate this into OF properly.\r\n\r\nThe main example classes are here: https://github.com/Volcore/LimbicGL/tree/master/limbicgl/drivers\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/721","comments":0,"milestone":null,"number":721,"html_url":"https://github.com/openframeworks/openFrameworks/issues/721","assignee":null,"title":"ofxiPhone - Move openGL to its own thread","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-08-26T18:43:09Z","state":"open","user":{"url":"https://api.github.com/users/cerupcat","gravatar_id":"91b3d4bfbbb99d840b096cde3af877bf","login":"cerupcat","avatar_url":"https://secure.gravatar.com/avatar/91b3d4bfbbb99d840b096cde3af877bf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":204151},"id":1497330,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:39:39Z","body":"The libraries linked in 007 as well as the new AVFoundationVideoPlayer is not compatible with 3.x devices and won't build.\r\n\r\nAfter further exploring, I believe these are the steps to get things running on 3.x devices.\r\n\r\n1) In Xcode, Click on target -> application name\r\n2) In the File Name window, set AVFoundation, CoreMedia, and CoreVideo from role \"required\" to \"weak\". They need to be weak linked since they're only available in iOS 4+.\r\n3) In ofxiPhone src folder, AVFoundationVideoPlayer.mm uses CMBlockBufferRef and that is only available in iOS4. This means, this function should be commented out (sorry - avfoundationvideoplayer won't run on iOS4 unless the blocker is changed). Either that or you can comment ouf AVFoundationVideoPlayer from being included in OF.\r\n4) Clean all targets and rebuild","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/720","comments":0,"milestone":null,"number":720,"html_url":"https://github.com/openframeworks/openFrameworks/issues/720","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"007 ofxiPhone not compatible with 3.x devices ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-08-26T18:38:38Z","state":"open","user":{"url":"https://api.github.com/users/cerupcat","gravatar_id":"91b3d4bfbbb99d840b096cde3af877bf","login":"cerupcat","avatar_url":"https://secure.gravatar.com/avatar/91b3d4bfbbb99d840b096cde3af877bf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":204151},"id":1497291,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-22T17:38:49Z","body":"\r\nbased on this comment, \r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,5319.msg33381.html#msg33381\r\n\r\nI wonder if we can be smarter in endShape() / ofPath::tessellate() and look for simple usage (3 or 4 points, etc) before tessellating, or if the slow down is just based on the use of the ofPath object. \r\n\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/719","comments":1,"milestone":null,"number":719,"html_url":"https://github.com/openframeworks/openFrameworks/issues/719","assignee":null,"title":"optimize ofEndShape() to deal with simple shapes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-08-22T16:56:27Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":1459353,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-22T16:02:30Z","body":"change\r\n\r\nfloat ofCamera::getImagePlaneDistance(ofRectangle viewport) const {\r\n\treturn getPosition().length(); //viewport.height / (2.0f * tanf(PI * fov / 360.0f));\r\n}\r\n\r\nold in comment\r\n\r\ncurrent system is abitrary\r\nsuggest new system is more sensible\r\n(i'm always working in normalised coords)\r\npls check in your life before changing :)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/717","comments":0,"milestone":null,"number":717,"html_url":"https://github.com/openframeworks/openFrameworks/issues/717","assignee":null,"title":"suggest new calc clip planes routine","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-08-22T16:02:30Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":1458979,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-22T14:11:34Z","body":"http://forum.openframeworks.cc/index.php/topic,5222.msg33366.html#msg33366\r\n\r\nthere also seem to be a memory leak, when deleting a ofQuicktimeVideoPlayer","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/716","comments":0,"milestone":null,"number":716,"html_url":"https://github.com/openframeworks/openFrameworks/issues/716","assignee":null,"title":"problems with stop/play in quicktime videoPlayer","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-08-22T14:11:34Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":1458044,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-16T13:39:49Z","body":"Here\r\nhttps://github.com/openframeworks/openFrameworks/issues/653\r\nI downloaded latest version but in still crashes on my old video card Nvidia GeForce Go 7200.\r\nAny idea why?\r\nofxFBOTexture works, but i got some trobles in pixel format there. \r\nofxFBOTexture uses function with postfix EXT sometimes? ofFbo without it.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/711","comments":5,"milestone":null,"number":711,"html_url":"https://github.com/openframeworks/openFrameworks/issues/711","assignee":null,"title":"Problem with ofFbo. Crashes on allocate.There were the same issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-08-16T10:21:29Z","state":"open","user":{"url":"https://api.github.com/users/IonRod","gravatar_id":"cf3cb346817dd8a9f8327d1af13c3d46","login":"IonRod","avatar_url":"https://secure.gravatar.com/avatar/cf3cb346817dd8a9f8327d1af13c3d46?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":886012},"id":1414013,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-15T14:23:47Z","body":"i'm noticing this on osx 10.6. all 8-bit images are correct, but somehow i didn't notice about unsigned short and float until now!\r\n\r\ni'm super busy atm, but i've kind of been maintaining the unsigned short/float loading so i'll look into this if someone else doesn't get to it first.\r\n\r\nmeanwhile it would be good to see if it's the same on windows or not. for anyone interested in testing, please check devApps/AdvancedImageLoading and compare the results of the app to the .exr opened in photoshop.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/710","comments":0,"milestone":null,"number":710,"html_url":"https://github.com/openframeworks/openFrameworks/issues/710","assignee":null,"title":"16-bit and 32-bit images are red/blue swapped","labels":[],"closed_at":null,"created_at":"2011-08-15T14:23:47Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1407813,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-07T12:19:07Z","body":"in the past there has been ofxQtVideoSaver and a few others. i think this is a really hard problem because it basically needs to be written for each platform, but something that should eventually be solved.\r\n\r\ntwo major use cases i know are:\r\n\r\n- capturing and saving simultaneously, for long streams\r\n- capturing a quick burst of video then saving it to disk\r\n\r\nwhich would might be handled a little differently.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/702","comments":1,"milestone":null,"number":702,"html_url":"https://github.com/openframeworks/openFrameworks/issues/702","assignee":null,"title":"cross platform video saving (ofVideoSaver?)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-08-07T03:23:38Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1359729,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-06T20:20:03Z","body":"Hi!\r\n\r\nI have problems even getting the ofxOsc Send/Receive examples talking on Ubuntu 11.04 64bit. \r\nThey compile without problems, but sometimes when I run them, communication fails somewhere along the road - input events are not shown in the receiver app. Sometimes it does not work at all.\r\n\r\nThis works all flawlessly on 32bit Ubuntu 11.04. See http://forum.openframeworks.cc/index.php/topic,6918.0.html for more details.\r\n\r\nCan anyone reproduce these problems? Any tips? How could I debug this?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/701","comments":3,"milestone":null,"number":701,"html_url":"https://github.com/openframeworks/openFrameworks/issues/701","assignee":null,"title":"ofxOsc does not seem to work on 64bit Ubuntu","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2011-08-06T19:14:37Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":1358688,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-05T03:06:25Z","body":"very simple but helpful feature request. e.g.,\r\n\r\nofBuffer::operator=(const ofBuffer& mom) {\r\n set(mom.getBinaryBuffer(), mom.size());\r\n}\r\n\r\nthis goes along with the general \"what does the equal operator mean\" debate/discussion :)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/700","comments":0,"milestone":null,"number":700,"html_url":"https://github.com/openframeworks/openFrameworks/issues/700","assignee":null,"title":"ofBuffer with overloaded = operator","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-08-05T03:06:25Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1349012,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T15:11:28Z","body":"this seems like an api inconsistency to me: i feel like ofTexture::loadData() is similar to ofImage::setFromPixels(), but setFromPixels() will allocate space if necessary while loadData() just prints an error if the data is larger than the allocated space.\r\n\r\ni think auto-allocation would be nice, but i might just be misunderstanding/making a false comparison here.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/699","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":699,"html_url":"https://github.com/openframeworks/openFrameworks/issues/699","assignee":null,"title":"loadData() does not allocate as necessary","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-08-04T10:29:57Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1343463,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T15:12:03Z","body":"from: http://forum.openframeworks.cc/index.php/topic,6952.msg32509.html\r\n\r\n\r\n\r\ngetBmpFromPixels() crashed repeatedly when I tried to rescale grayscale Images of size 3026*2048.\r\n\r\nIt's because memcpy overshoots the src pixel array because dstStride can be larger than srcStride.\r\n\r\nIn ofImage.cpp \r\n\r\ngetBmpFromPixels()\r\n\r\naround line 119, I believe, it should read:\r\n\r\nCode:\r\nview plaincopy to clipboardprint?\r\n... \r\n int srcStride = width * pix.getBytesPerPixel(); \r\n int dstStride = FreeImage_GetPitch(bmp); \r\n unsigned char* src = (unsigned char*) pixels; \r\n unsigned char* dst = bmpBits; \r\n for(int i = 0; i < (int)height; i++) { \r\n // memcpy(dst, src, dstStride); \r\n memcpy(dst, src, srcStride); // did overshoot with e.g. grayscale img of size 3026*2048 \r\n src += srcStride; \r\n dst += dstStride; \r\n } \r\n... \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/698","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":698,"html_url":"https://github.com/openframeworks/openFrameworks/issues/698","assignee":null,"title":"getBmpFromPixels memcpy issue / ofImage::resize issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-08-03T18:15:55Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":1339116,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-21T15:34:07Z","body":"I'm trying to build ofxPd in Visual Studio and running into multiple define issues related to the videoinput lib, namely static `verbose`: https://github.com/openframeworks/openFrameworks/blob/master/libs/videoInput/include/videoInput.h#L115\r\n\r\nCouldn't this variable as well as `comInitCount` be moved to the implementation files? or at least in a header hidden from the global namespace? At the least, `verbose` could be renamed to something not so common ...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/697","comments":1,"milestone":null,"number":697,"html_url":"https://github.com/openframeworks/openFrameworks/issues/697","assignee":null,"title":"videoinput lib global statics","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-08-03T02:27:52Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":1334657,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T00:53:30Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/685","comments":3,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":685,"html_url":"https://github.com/openframeworks/openFrameworks/issues/685","assignee":null,"title":"update shader example to work on ati.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-07-28T15:57:58Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":1303812,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:40:42Z","body":"It is very annoying if you can not disable autocorrections in ofxiPhoneKeyboard. Specially for creative uses of this class. I add code how to add this feature.\r\n\r\n[CODE] Add to ofxiPhoneKeyboard class:\r\n\r\n- (void)disableAutoCorrection;\r\n- (void)enableAutoCorrection;\r\n\r\n//--------------------------------------------------------------\r\nvoid ofxiPhoneKeyboard::disableAutoCorrection()\r\n{\r\n [keyboard disableAutoCorrection];\r\n}\r\n//--------------------------------------------------------------\r\nvoid ofxiPhoneKeyboard::enableAutoCorrection()\r\n{\r\n [keyboard enableAutoCorrection];\r\n}\r\n\r\n- (void)disableAutoCorrection\r\n{\r\n _textField.autocorrectionType = UITextAutocorrectionTypeNo;\r\n}\r\n\r\n- (void)enableAutoCorrection\r\n{\r\n _textField.autocorrectionType = UITextAutocorrectionTypeYes;\r\n}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/684","comments":0,"milestone":null,"number":684,"html_url":"https://github.com/openframeworks/openFrameworks/issues/684","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"ofxiPhoneKeyboard should have disable/enable methods for auto correction","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-07-28T12:12:52Z","state":"open","user":{"url":"https://api.github.com/users/mcanet","gravatar_id":"e4d2b0151a843dde7b815b848170d6e9","login":"mcanet","avatar_url":"https://secure.gravatar.com/avatar/e4d2b0151a843dde7b815b848170d6e9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":308759},"id":1302375,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-24T18:26:54Z","body":"I think there's a bug in ofQuaternion in of007. When i use ofNode's setOrientation() or ofNode setRoll I can rotate my ofNode object around the Z axis. However when I try to obtain the current rotation around the Z axis it will always give a value like -180, 0 or 180.\r\n\r\nRick","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/679","comments":0,"milestone":null,"number":679,"html_url":"https://github.com/openframeworks/openFrameworks/issues/679","assignee":null,"title":"possible bug in getEuler / getOrientation / getRoll","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-24T18:26:54Z","state":"open","user":{"url":"https://api.github.com/users/companje","gravatar_id":"30a7e135fe77636519d74d129c60e156","login":"companje","avatar_url":"https://secure.gravatar.com/avatar/30a7e135fe77636519d74d129c60e156?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":156066},"id":1278252,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T22:13:24Z","body":"I know that with the 007 release ofxDirList addon is deprecated and instead we are encouraged to use ofDirectory to achiece the same kind of functionality. In fact the are so similar that is possible to use them interchangeably. To do that transparently you changed the ofxDirList.h so that it made a typedef to point to ofDirectory (and will probably remove it completely someday).\r\n\r\nThe contents of ofxDirList.h are the following:\r\n---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------\r\n#pragma once\r\n\r\n#include \"ofFileUtils.h\"\r\n\r\n#warning ofxDirList has been deprecated. \r\n#warning Remove all references to ofxDirList.h and use ofDirectory instead.\r\ntypedef ofDirectory ofxDirList;\r\n---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------\r\nSo far so good. The problem is that you use the #warning preprocessing directive is non-standard and unsupported on Visual C++ compiler. In fact it gives me an error while building a project that I ported from 0062 version that used ofxDirList. To make it work I had to comment the two #warning lines. \r\n\r\nI suggest that you remove the #warning directives and replace it with something else that works across all compilers. I know that the #warning directive works on GCC and MinGW but not on VC++ so if you are going to support all those compilers (like you do) you better have all of your code working across all of them.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/676","comments":2,"milestone":null,"number":676,"html_url":"https://github.com/openframeworks/openFrameworks/issues/676","assignee":null,"title":"ofxDirList deprecated #warning directive preprocessor Visual Studio 2010","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-23T01:19:54Z","state":"open","user":{"url":"https://api.github.com/users/petersaints","gravatar_id":"03848790c2ebb8e5edbe130e8ce76f1d","login":"petersaints","avatar_url":"https://secure.gravatar.com/avatar/03848790c2ebb8e5edbe130e8ce76f1d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157810},"id":1273716,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-21T11:29:24Z","body":"changed this in dirListExample\r\n\r\n ofFile testfile;\r\n\t// you can now iterate through the files and load them into the ofImage vector\r\n\tfor(int i = 0; i < (int)dir.size(); i++){\r\n\t\timages[i].loadImage(dir.getPath(i));\r\n\t\ttestfile.open(dir.getPath(i));\r\n\t\tcout << testfile.isFile() << endl; //THIS LINE SEGFAULTS ON WIN7\r\n testfile.close();\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/671","comments":0,"milestone":null,"number":671,"html_url":"https://github.com/openframeworks/openFrameworks/issues/671","assignee":null,"title":"isFile() segfaults on win7","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-07-21T11:27:16Z","state":"open","user":{"url":"https://api.github.com/users/benben","gravatar_id":"614a4e493d7c353296519bba720e77c5","login":"benben","avatar_url":"https://secure.gravatar.com/avatar/614a4e493d7c353296519bba720e77c5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":124513},"id":1262459,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-21T10:39:29Z","body":"just added output to all events in an emptyExample on windows7 64bit.\r\n\r\nif im clicking, the following output occurs even if the mouse is not moved\r\n\r\n mousePressed\r\n mouseReleased\r\n mouseMoved","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/670","comments":2,"milestone":null,"number":670,"html_url":"https://github.com/openframeworks/openFrameworks/issues/670","assignee":null,"title":"mouseReleased fires mouseMoved too (win7)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-07-21T09:34:52Z","state":"open","user":{"url":"https://api.github.com/users/benben","gravatar_id":"614a4e493d7c353296519bba720e77c5","login":"benben","avatar_url":"https://secure.gravatar.com/avatar/614a4e493d7c353296519bba720e77c5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":124513},"id":1261982,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=9 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4935'), ('content-length', '45016'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"c403779e3346f56dddb655b8bb57d5ae"'), ('date', 'Tue, 29 May 2012 19:27:18 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-03-09T06:11:12Z","body":"I'm curious why the movieplayer uses AvAsset instead of AvPlayer which seems better suited for OF needs ( seeking / looping etc ) \r\n\r\nhttp://developer.apple.com/library/ios/#documentation/AVFoundation/Reference/AVPlayer_Class/Reference/Reference.html\r\n\r\nhttp://stackoverflow.com/questions/5361145/looping-a-video-with-avfoundation-avplayer\r\n\r\n\r\nI think you can get init a player with an AVAsset:\r\nhttp://developer.apple.com/library/ios/#documentation/AVFoundation/Reference/AVPlayer_Class/Reference/Reference.html%23//apple_ref/occ/instm/AVPlayer/initWithPlayerItem:\r\nhttp://developer.apple.com/library/ios/documentation/AVFoundation/Reference/AVPlayerItem_Class/Reference/Reference.html#//apple_ref/occ/instm/AVPlayerItem/initWithAsset:\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/666","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":666,"html_url":"https://github.com/openframeworks/openFrameworks/issues/666","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"iphone video player should use AVPlayer ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-07-20T20:01:04Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":1258863,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-01-08T04:45:01Z","body":"In some cases, when modifier keys are used, the pressedKeys set will accumulate keys.\r\n\r\nThis happens because \"modifier-up\" messages are not sent in the same way as normal and special keys.\r\n\r\nTo test, watch the size of the pressedKeys:\r\n\r\n cout << pressedKeys.size() << \" num pressed keys \" << endl;\r\n\r\nPress a modifier key and a normal key -- say ctrl-a. If the 'a' is lifted first, then the modified-a key int is removed from the pressedKeys set. If CTRL is released before the 'a', then the non-modified-a key-up int is sent, and it is not erased from the pressedKeys set. If this is repeated with different modifier+key downs / ups the accumulation occurs.\r\n\r\nUltimately, there needs to be better handling of modifier keys. Perhaps there is a way to use the modifier masks keep track of modifier keys with a call to glutGetModifiers() in the keyboard_cb and keyboard_up_cb static methods?\r\n\r\nIt looks like progress has been made toward this in ofConstants.h\r\n\r\n\t#define OF_KEY_CTRL\t\t\t0x0200\r\n\t#define OF_KEY_ALT\t\t\t0x0300\r\n\t#define OF_KEY_SHIFT\t\t0x0400\r\n\r\nBut it seems to have stopped there.\r\n\r\nI'm happy to work on this -- any suggestions on a strategy? Perhaps this is already being addressed of 007?\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/652","comments":5,"milestone":null,"number":652,"html_url":"https://github.com/openframeworks/openFrameworks/issues/652","assignee":null,"title":"ofAppGlutWindow/ofEvents: pressedKeys accumulate in special cases","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-15T18:49:46Z","state":"open","user":{"url":"https://api.github.com/users/bakercp","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","login":"bakercp","avatar_url":"https://secure.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":300484},"id":1231959,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-20T19:04:31Z","body":"If you use those these two together the 3d objects get an unwanted offset\r\n\r\ncode:\r\n\r\n```c++\r\nvoid testApp::draw()\r\n{\r\n \r\n cam.begin();\r\n ofPushMatrix();\r\n ofSetColor(255,255,255);\r\n ofBox(200);\r\n ofPopMatrix();\r\n cam.end();\r\n \r\n \r\n fbo.begin();\r\n cam.begin();\r\n \r\n ofClear(0);\r\n ofPushMatrix();\r\n ofSetColor(0,0,0);\r\n ofBox(200);\r\n ofPopMatrix();\r\n \r\n cam.end();\r\n fbo.end();\r\n \r\n \r\n glPushMatrix();\r\n //ofTranslate(0,6,0); <--- now i'm using something like this to \"repair\" it\r\n ofSetColor(255,255,255,255);\r\n glScalef(1,-1,1);\r\n fbo.draw(0,- ofGetHeight());\r\n glPopMatrix();\r\n \r\n \r\n \r\n}\r\n```\r\n\r\nNormally the two boxes should overlap completely, instead it looks like this:\r\n\r\n![screen1](http://i51.tinypic.com/11cfi1l.png)\r\n![screen2](http://i55.tinypic.com/2ewnv5i.png)\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/651","comments":4,"milestone":null,"number":651,"html_url":"https://github.com/openframeworks/openFrameworks/issues/651","assignee":null,"title":"ofFBO + ofCamera = unwanted offset","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2011-07-15T13:21:44Z","state":"open","user":{"url":"https://api.github.com/users/toxin20","gravatar_id":"29a3b85e704ec06a72df8897a726920e","login":"toxin20","avatar_url":"https://secure.gravatar.com/avatar/29a3b85e704ec06a72df8897a726920e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":123776},"id":1230184,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-19T00:31:38Z","body":"\r\nA tiny issue I spotted:\r\n\r\nofQuaternion.cpp, line 14:\r\n\r\n```C++\r\n/// Set the elements of the Quat to represent a rotation of angle\r\n/// (radians) around the axis (x,y,z)\r\nvoid ofQuaternion::makeRotate( float angle, float x, float y, float z ) {\r\n\tangle = ofDegToRad(angle);\r\n```\r\n\r\nof**X**Quaternion::makeRotate used to take radians, only noticed as I was moving some old code over, otherwise I would have just looked at the code in ofQuaternion.cpp to see the angle type. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/646","comments":1,"milestone":null,"number":646,"html_url":"https://github.com/openframeworks/openFrameworks/issues/646","assignee":null,"title":"ofQuaternion::makeRotate takes degrees, used to take radians, documentation says radians","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"closed_at":null,"created_at":"2011-07-13T15:18:04Z","state":"open","user":{"url":"https://api.github.com/users/andreasmuller","gravatar_id":"210831a04d36f1aa26413ecbdbd4b07c","login":"andreasmuller","avatar_url":"https://secure.gravatar.com/avatar/210831a04d36f1aa26413ecbdbd4b07c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":791114},"id":1216274,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-12T16:05:23Z","body":"^^^^\r\nTried on Mac:\r\nhttps://gist.github.com/1078282","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/645","comments":0,"milestone":null,"number":645,"html_url":"https://github.com/openframeworks/openFrameworks/issues/645","assignee":null,"title":"ofVideoGrabber::listDevices() does not list devices when initGrabber not called","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-12T16:05:23Z","state":"open","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":358809},"id":1209436,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-16T04:21:18Z","body":"https://gist.github.com/1077933\r\n\r\nsaving images converted to 8PP using ofImage::setImageType(OF_IMAGE_GRAYSCALE) and then calling saveImage() save blank on windows, but works on OS X\r\n\r\ntraced the issue down to the call to FreeImage_Save(), both seem to be the same. not sure what the problem is\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/643","comments":1,"milestone":null,"number":643,"html_url":"https://github.com/openframeworks/openFrameworks/issues/643","assignee":null,"title":"8 BPP (grayscale) ofImage saves blank on Windows, fine on os x","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-07-12T13:05:25Z","state":"open","user":{"url":"https://api.github.com/users/obviousjim","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","login":"obviousjim","avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":321434},"id":1208289,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:42:09Z","body":"Forum issue: http://forum.openframeworks.cc/index.php/topic,6316.new.html#new\r\n\r\nThis may be related to using CADisplayLink. When openGL seems to be pushed a bit, touch events seem to drop or are delayed. When using NSTimer in ofxiPhoneAppDelegate instead of CADisplayLink this does not occur.\r\n\r\nIt may be beneficial for developers to set whether they'd like to use CADisplayLink (if available) vs NSTimer for rendering or not.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/642","comments":0,"milestone":null,"number":642,"html_url":"https://github.com/openframeworks/openFrameworks/issues/642","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"ofxiPhone: Possible delayed input/touch event issue ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-12T02:46:23Z","state":"open","user":{"url":"https://api.github.com/users/cerupcat","gravatar_id":"91b3d4bfbbb99d840b096cde3af877bf","login":"cerupcat","avatar_url":"https://secure.gravatar.com/avatar/91b3d4bfbbb99d840b096cde3af877bf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":204151},"id":1205789,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-12T13:03:00Z","body":"See title and test code:\r\nhttps://gist.github.com/952bd35591dc0cb23f61","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/631","comments":1,"milestone":null,"number":631,"html_url":"https://github.com/openframeworks/openFrameworks/issues/631","assignee":null,"title":"ofImage::saveImage() - saving from png to gif creates grayscale image","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-07T21:37:47Z","state":"open","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":358809},"id":1185346,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T03:48:47Z","body":"Tried to load a text file over https but I got this message:\r\n\r\n``400 The plain HTTP request was sent to HTTPS port\r\n

    400 Bad Request

    The plain HTTP request was sent to HTTPS port

    nginx/1.0.4
    ``\r\n\r\n\r\n\r\nUsing this code\r\n``ofHttpResponse resp = ofLoadURL(\"https://raw.github.com/openframeworks/openFrameworks/6af1dc980f6d93d84b3bf8fdc1b6435697be9ed9/readme.txt\");``\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/623","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":623,"html_url":"https://github.com/openframeworks/openFrameworks/issues/623","assignee":null,"title":"ofLoadURL() does not work with httpS","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-06T18:12:06Z","state":"open","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":358809},"id":1175654,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-06T18:09:03Z","body":"Setting the position of an ofEasyCam instance in ofSetup() does not work. What does work in testApp::setup() is calling ofEasyCam::setDistance(). When calling ofEasyCam::setPosition() in for example testApp::draw() does work.\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/618","comments":0,"milestone":null,"number":618,"html_url":"https://github.com/openframeworks/openFrameworks/issues/618","assignee":null,"title":"call ofEasyCam::setPosition in testApp::setup() is forgotten","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-05T18:23:34Z","state":"open","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":358809},"id":1169032,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-06-27T18:30:26Z","body":"Currently there doesn't appear to be any way to do this other than by hand\r\nAlso it would be highly useful ofMatrix3x3 in general had equivalent accessors to ofMatrix4x4","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/612","comments":0,"milestone":null,"number":612,"html_url":"https://github.com/openframeworks/openFrameworks/issues/612","assignee":null,"title":"need conversion ofMatrix3x3<->ofMatrix4x4","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-06-27T18:30:26Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":1124068,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-04T10:10:06Z","body":"Need some way of applying current ofMatrix4x4 to the scene without going down to gl calls","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/605","comments":4,"milestone":null,"number":605,"html_url":"https://github.com/openframeworks/openFrameworks/issues/605","assignee":null,"title":"function wrapping glMultMatrixf in ofMatrix4x4","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-06-16T13:13:35Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":1067300,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:42:59Z","body":"Here's a function that will do it...\r\n\r\nvoid ofxiPhoneLaunchBrowser(string url) {\r\n\t[[UIApplication sharedApplication] openURL:[NSURL URLWithString:ofxStringToNSString(url)]];\r\n}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/603","comments":0,"milestone":null,"number":603,"html_url":"https://github.com/openframeworks/openFrameworks/issues/603","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"ofLaunchBrowser() for iPhone not implemented","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-06-13T13:03:15Z","state":"open","user":{"url":"https://api.github.com/users/mazbox","gravatar_id":"3cfb19dbce7926933555ac9755a86ca8","login":"mazbox","avatar_url":"https://secure.gravatar.com/avatar/3cfb19dbce7926933555ac9755a86ca8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":194121},"id":1048971,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T21:38:43Z","body":"OF: OF_LOG_ERROR: ofxNetwork:/addons/ofxNetwork/src/ofxTCPManager.cpp: 157 ECONNREFUSED: the server has actively refused to establish the connection\r\n\r\nThis error happens in every use of ofxTCPClient.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/599","comments":1,"milestone":null,"number":599,"html_url":"https://github.com/openframeworks/openFrameworks/issues/599","assignee":null,"title":"TCPManager Consistent Error","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-06-08T23:02:28Z","state":"open","user":{"url":"https://api.github.com/users/tomorrowevening","gravatar_id":"f92a8e912b59171abde0354e2f212c12","login":"tomorrowevening","avatar_url":"https://secure.gravatar.com/avatar/f92a8e912b59171abde0354e2f212c12?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":626143},"id":1027184,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-06-01T13:56:17Z","body":"http://forum.openframeworks.cc/index.php/topic,6370.0.html\r\n\r\nwhen they are not power of 2 perhaps?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/591","comments":0,"milestone":null,"number":591,"html_url":"https://github.com/openframeworks/openFrameworks/issues/591","assignee":null,"title":"problem with ofImage resize","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-06-01T13:56:17Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":984564,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-05-31T12:33:31Z","body":"### ofxNetworkUtils.h - issue 1\n\nThe default message should print out `err` instead of `errno`\n\n```\n\tdefault:\n\t\tofLog(OF_LOG_ERROR,\"ofxNetwork:\"+file+\": \" +line+\" unknown error: \" + ofToString(errno) + \" see errno.h for description of the error\");\n\t\tbreak;\n```\n\nto:\n\n```\n\tdefault:\n\t\tofLog(OF_LOG_ERROR,\"ofxNetwork:\"+file+\": \" +line+\" unknown error: \" + ofToString(err) + \" see errno.h for description of the error\");\n\t\tbreak;\n```\n\nSince errno would not be set on windows machines.\n\n\n\n\n### ofxTCPManager.cpp - issue 2\n\nIn the `Receive` method of the `ofxTCPManager` the function will always return -1 when checking for data and there is no new data and the TCPServer has been set to non-blocking.\n\nAfter changing the code in issue 1 mentioned above i got:\n\n`ofxNetwork:addons\\ofxNetwork\\src\\ofxTCPManager.cpp: 304 unknown error: 10035 see errno.h for description of the error`\n\ninstead of `error: 0` when `errno`was used.\n\nWhich on windows is the [`WSAEWOULDBLOCK`](http://msdn.microsoft.com/en-us/library/ms740668.aspx) or `EWOULDBLOCK` as defined in `ofxNetworkUtils`\n\nSo someplace in the code there should be a mechanism to check if the code is client is non-blocking and ignore the error.\nThis is `windows` only but still could be as an additional parameter to the `Receive` method. Or add it as an `switch case` for the `EWOULDBLOCK` in the `ofxNetworkUtils` and ignore the ouput and comment it.\n\nI just noticed this above when i started usin an application that i was developing on my mac an using it on windows machines this code would appear too often.\n\nSo as stated above my solution is that i added:\n\n```\n #ifdef TARGET_WIN32 // otherwise EAGAIN & EWOULDBLOCK will create a \"duplicate case value\" on Non windows\n\tcase EWOULDBLOCK: \n\t\t// \tofLog(OF_LOG_VERBOSE,\"ofxNetwork:\"+file+\": \" +line+\" EWOULDBLOCK: perhaps non-blocking\");\n\t\tbreak;\n #endif\n```\ncode and ignoring the output.\n\n\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/590","comments":0,"milestone":null,"number":590,"html_url":"https://github.com/openframeworks/openFrameworks/issues/590","assignee":null,"title":"ofxTCPManager.receive() - EWOULDBLOCK on Windows","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-05-31T11:31:08Z","state":"open","user":{"url":"https://api.github.com/users/cristobal","gravatar_id":"c7f941e0c10696b758ae8792714a6744","login":"cristobal","avatar_url":"https://secure.gravatar.com/avatar/c7f941e0c10696b758ae8792714a6744?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":155505},"id":978212,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-05-31T02:06:22Z","body":"setFromPixels has two forms: one that takes an int channels, another that takes ofImageType.\r\n\r\nsetFromExternalPixels only has one form: it takes an int channels.\r\n\r\nin my opinion, it makes sense to change them both to ofImageType only, because the int channels is susceptible to accidentally passing an ofImageType to it.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/589","comments":0,"milestone":null,"number":589,"html_url":"https://github.com/openframeworks/openFrameworks/issues/589","assignee":null,"title":"setFromPixels vs setFromExternalPixels","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-05-31T02:06:22Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":976610,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T21:54:02Z","body":"ofImage_ should be ofBaseImage, likewise with ofPixels_\n\nin general, X_ style classes should be BaseX\n\ntemplated functions that are just sitting around should also have descriptive template names.\n\nit's important for this to happen before 007, otherwise code will be written against ofImage\\_<T> etc.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/582","comments":5,"milestone":null,"number":582,"html_url":"https://github.com/openframeworks/openFrameworks/issues/582","assignee":null,"title":"templated code needs to be more readable","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-05-23T17:46:28Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":942647,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-31T13:42:28Z","body":"just need to add the line\r\n\r\n\t\t\tcase 230400: cfsetispeed(&options,B230400);\r\n\t\t\t\tcfsetospeed(&options,B230400);\r\n\t\t\t\tbreak;\r\n\r\nin the setup function after\r\ncase 115200: cfsetispeed(&options,B115200);\r\n\t\t\t\t\t\tcfsetospeed(&options,B115200);\r\n\t\t\t\tbreak;\r\n\r\ntested with our device that runs at that baud rate, seems to work a-OK so far.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/577","comments":2,"milestone":null,"number":577,"html_url":"https://github.com/openframeworks/openFrameworks/issues/577","assignee":null,"title":"ofSerial: add 230400 speed","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-05-20T16:16:52Z","state":"open","user":{"url":"https://api.github.com/users/labatrockwell","gravatar_id":"e6d243a56cd069a225f56f4a388e8838","login":"labatrockwell","avatar_url":"https://secure.gravatar.com/avatar/e6d243a56cd069a225f56f4a388e8838?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","id":313943},"id":932655,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T19:59:00Z","body":"This is a generic Linux build of oF for ARM Cortex A8/9 devices (Beagleboard, Pandaboard, Gumstix, Tegra 250, IGEPv2, ...) with built-in NEON optimizations in the included libs and makefiles (via gcc -O3 -march=armv7-a -mtune=cortex-a8 -mfpu=neon -ftree-vectorize -mfloat-abi=softfp)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/576","comments":17,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","closed_issues":0,"number":8,"title":"0080 Release","due_on":"2013-01-01T08:00:00Z","open_issues":3,"created_at":"2012-02-25T01:34:28Z","state":"open","description":"","id":88731},"number":576,"html_url":"https://github.com/openframeworks/openFrameworks/issues/576","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"Generic armv7l Linux build for Beagleboard &co. ","labels":[],"closed_at":null,"created_at":"2011-05-19T14:49:57Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"id":927378,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/576.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/576","patch_url":"https://github.com/openframeworks/openFrameworks/pull/576.patch"}},{"updated_at":"2011-05-13T15:28:46Z","body":"http://forum.openframeworks.cc/index.php?topic=6201.0","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/572","comments":0,"milestone":null,"number":572,"html_url":"https://github.com/openframeworks/openFrameworks/issues/572","assignee":null,"title":"ofToggleFullscreen doesn't set width and height correctly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2011-05-13T15:28:46Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":895515,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-02T15:47:14Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/569","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":569,"html_url":"https://github.com/openframeworks/openFrameworks/issues/569","assignee":null,"title":"saving an image with the image quality flag set to high or best causes empty jpegs. ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-05-11T13:53:42Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":883385,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T03:48:47Z","body":"Currently using an FBO with an ofCamera is really tricky, as both setup their own viewing matrix and viewport. \r\n\r\nDoes it make sense to have ofFbo use an ofCamera internally?\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/568","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":568,"html_url":"https://github.com/openframeworks/openFrameworks/issues/568","assignee":null,"title":"ofFbo and ofCamera do not play well together.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-05-11T13:52:46Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":883380,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-15T18:31:30Z","body":"Greetings,\r\n\r\nI have downloaded the latest master of Openframeworks b4397c1 and I have tried to compile the AllAddons example (just to check if everything was well installed).\r\n\r\nThe ofxSynth library just won't compile (using either GCC or LLVM, Xcode 3 or Xcode4), be it in the allAddons or in it's own examples, here is the error log :\r\n\r\nUndefined symbols for architecture i386:\r\n \"typeinfo for ofxSoundEffect\", referenced from:\r\n typeinfo for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"non-virtual thunk to ofxSoundEffect::setSampleRate(int)\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundBuffer::ofxSoundBuffer()\", referenced from:\r\n ofxSoundSink::ofxSoundSink()in ofxSynth.o\r\n \"vtable for ofxSoundEffect\", referenced from:\r\n ofxSoundEffect::~ofxSoundEffect()in ofxSynthDelayLine.o\r\n ofxSoundEffect::~ofxSoundEffect()in ofxSynthDelayLine.o\r\n \"vtable for ofxSoundSink\", referenced from:\r\n ofxSoundSink::~ofxSoundSink()in ofxSynthDelayLine.o\r\n ofxSoundSink::~ofxSoundSink()in ofxSynthDelayLine.o\r\n \"virtual thunk to ofxSoundSink::getInputs()\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"typeinfo for ofxSoundSink\", referenced from:\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundSink::setSampleRate(int)\", referenced from:\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundSink::getInputs()\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundSink::addInputFrom(ofxSoundSource*)\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"VTT for ofxSoundEffect\", referenced from:\r\n ofxSoundEffect::~ofxSoundEffect()in ofxSynthDelayLine.o\r\n ofxSoundEffect::~ofxSoundEffect()in ofxSynthDelayLine.o\r\n \"ofxSoundEffect::setSampleRate(int)\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundSink::audioIn(float*, int, int, unsigned long long)\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundEffect::audioOut(float*, int, int, unsigned long long)\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundBuffer::~ofxSoundBuffer()\", referenced from:\r\n ofxSoundSink::~ofxSoundSink()in main.o\r\n ofxSoundSink::~ofxSoundSink()in ofxSynthDelayLine.o\r\n ofxSoundSink::~ofxSoundSink()in ofxSynthDelayLine.o\r\nld: symbol(s) not found for architecture i386\r\ncollect2: ld returned 1 exit status\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/566","comments":3,"milestone":null,"number":566,"html_url":"https://github.com/openframeworks/openFrameworks/issues/566","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"ofxSynth won't compile","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2011-05-07T12:25:01Z","state":"open","user":{"url":"https://api.github.com/users/benoitespinola","gravatar_id":"d08687285addcdde144d4eceb4cfa78e","login":"benoitespinola","avatar_url":"https://secure.gravatar.com/avatar/d08687285addcdde144d4eceb4cfa78e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":720460},"id":862321,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:48:58Z","body":"I'm fixing it using \r\n_textField.transform = CGAffineTransformMakeRotation(M_PI*1.5f);\r\nin - (void) setFrame: (CGRect) rect\r\nto fix it now.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/565","comments":1,"milestone":null,"number":565,"html_url":"https://github.com/openframeworks/openFrameworks/issues/565","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"Textfield in ofxiPhoneKeyboard upside down in landscape","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-05-05T14:20:42Z","state":"open","user":{"url":"https://api.github.com/users/labatrockwell","gravatar_id":"e6d243a56cd069a225f56f4a388e8838","login":"labatrockwell","avatar_url":"https://secure.gravatar.com/avatar/e6d243a56cd069a225f56f4a388e8838?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","id":313943},"id":853551,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=10 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4934'), ('content-length', '43807'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"78e9c565cba926f6a72fa2b7dd021b78"'), ('date', 'Tue, 29 May 2012 19:27:19 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-12-03T21:20:01Z","body":"Does anybody know the status of this?\r\nI would like to help but I'm not sure where to start. Is the `iphone-dev-0061` the branch to work on this?\r\nI just want to know what's been done or whether there are plans in the works.\r\n\r\nI have posted this in the forum but have not received any response.\r\nhttp://forum.openframeworks.cc/index.php/topic,4089.msg29156.html#msg29156","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/564","comments":1,"milestone":null,"number":564,"html_url":"https://github.com/openframeworks/openFrameworks/issues/564","assignee":null,"title":"ofxShader for iOS","labels":[],"closed_at":null,"created_at":"2011-05-04T18:35:58Z","state":"open","user":{"url":"https://api.github.com/users/chrisirhc","gravatar_id":"22d0038769b1786fcdc0983bdb2e4033","login":"chrisirhc","avatar_url":"https://secure.gravatar.com/avatar/22d0038769b1786fcdc0983bdb2e4033?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":132584},"id":850096,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-12T08:58:12Z","body":"it's compiling now but doesn't work in openGL ES.\r\n\r\nalso take a look at setupShadow generating depthBuffer as texture, when it's released as a renderbuffer","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/560","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":560,"html_url":"https://github.com/openframeworks/openFrameworks/issues/560","assignee":null,"title":"fix ofFbo for openGL ES","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/android","name":"android","color":"2bc4ad"}],"closed_at":null,"created_at":"2011-04-30T17:21:39Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":833772,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-04-26T00:37:56Z","body":"nothing fancy, but I have an implementation of ofxCvHaarFinder that draws, and it's useful for debugging. something like:\n\n``` c++\n void ofxCvHaarFinder::draw( float x, float y ) {\n\t\t// ofPushStyle(); ?\n\t\tofEnableAlphaBlending();\n\t\tofSetColor( 255,0,200,100 );\n\t\tglPushMatrix();\n\t\t\n\t\tglTranslatef( x, y, 0.0 );\n\t\t\n\t\tofNoFill();\n\t\tfor( int i=0; i007 than <007. this can be changed in the ofStyle() constructor.\r\n\r\nalso, @elliotwoods it would be great to have a comment next to each of the constants in enum ofDrawBitmapMode explaining what they do.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/520","comments":1,"milestone":null,"number":520,"html_url":"https://github.com/openframeworks/openFrameworks/issues/520","assignee":null,"title":"ofDrawBitmapString default behavior has changed","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-04-01T06:37:16Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":723496,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-31T17:49:33Z","body":"it's obvious if you've used opengl directly before, but i would expect something more like:\r\n\r\n\tvoid ofSetTextureInterpolation(ofInterpolationType downscale, ofInterpolationType upscale)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/519","comments":0,"milestone":null,"number":519,"html_url":"https://github.com/openframeworks/openFrameworks/issues/519","assignee":null,"title":"ofSetMinMagFilters() is confusingly named","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-03-31T17:49:33Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":721833,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-17T00:51:48Z","body":"movieGrabberExample => videoGrabberExample\r\nmoviePlayerExample => videoPlayerExample\r\n\r\nthere are probably other examples of this, but this one strikes me as particularly odd. there's probably some historical reason... :)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/510","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":510,"html_url":"https://github.com/openframeworks/openFrameworks/issues/510","assignee":null,"title":"movieGrabber/PlayerExamples are poorly named","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-03-22T06:47:02Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":693126,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-21T01:01:25Z","body":"i accidentally initialized my ofFbo with setupShadow() instead of setup(), and when i said draw() it caused EXC_BAD_ACCESS. draw() calls getTexture(), so maybe the best way to handle this is to put a check inside getTexture() like this:\r\n\r\n\tif(textures.size() == 0) {\r\n\t\tofLog(OF_LOG_ERROR, \"You must call ofFbo::setup() before you can use an FBO\");\r\n\t}\r\n\treturn textures[attachmentPoint];","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/507","comments":0,"milestone":null,"number":507,"html_url":"https://github.com/openframeworks/openFrameworks/issues/507","assignee":null,"title":"ofFbo::draw() causes EXC_BAD_ACCESS when setup() isn't called","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-03-21T01:01:25Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":689769,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-20T17:35:05Z","body":"i know the reason for this is because the mappings are OS and mouse dependent, and that it's GLUT slowing us down here, but i think we could at least add a guess like OF_MOUSE_LEFT = 0, OF_MOUSE_MIDDLE= 1, OF_MOUSE_RIGHT = 2, etc.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/503","comments":0,"milestone":null,"number":503,"html_url":"https://github.com/openframeworks/openFrameworks/issues/503","assignee":null,"title":"no OF_MOUSE_LEFT or OF_MOUSE_RIGHT","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-03-20T17:35:05Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":688955,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T15:48:41Z","body":"you need to use bUse3D flag but even then graphics aren't saved to pdf as they look on screen. \r\ntry the OF_ORIENTATION_90_LEFT or 90_RIGHT to reproduce. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/502","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":502,"html_url":"https://github.com/openframeworks/openFrameworks/issues/502","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"ofSetOrientation doesn't work for cairo","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-03-18T09:17:36Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":684091,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-18T03:56:02Z","body":"it looks like ofGLRenderer::drawString is currently overriding whatever the current blend mode is:\n\n\tglEnable(GL_BLEND);\n\tglBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);\n\nand then setting it back later.\n\ni'm guessing this is so the empty/alpha part of the bitmap font is drawn.\n\ninstead of using glBlendFunc i would suggest glAlphaFunc... but it looks like as of OpenGL ES 2.0 glAlphaFunc doesn't exist anymore :(\n\nnot sure what to do, but it's really weird to have ofSetColor(255) work, but not ofSetColor(255, 254). e.g.:\n\n\tofBackground(128);\n\tofEnableAlphaBlending();\n\tofSetColor(255, 254);\n\tofDrawBitmapString(\"255, 254\", 10, 20);\n\tofSetColor(255, 255);\n\tofDrawBitmapString(\"255, 255\", 10, 40);\n\tofDisableAlphaBlending();","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/501","comments":0,"milestone":null,"number":501,"html_url":"https://github.com/openframeworks/openFrameworks/issues/501","assignee":null,"title":"ofDrawBitmapString / ofGLRenderer::drawString doesn't work with alpha","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-03-18T03:54:34Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":683732,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-03T10:41:35Z","body":"right now ofImage::getPixelsRef() is always non-const, as well as ofImage::getPixels()","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/500","comments":4,"milestone":null,"number":500,"html_url":"https://github.com/openframeworks/openFrameworks/issues/500","assignee":null,"title":"missing const version of getPixelsRef()","labels":[],"closed_at":null,"created_at":"2011-03-14T19:14:21Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":672608,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=11 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4933'), ('content-length', '40272'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"b87c61471553096d60e5ff8b292ff704"'), ('date', 'Tue, 29 May 2012 19:27:20 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"milestone":null,"state":"open","user":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"osx movieplayer problem on reloading","html_url":"https://github.com/openframeworks/openFrameworks/issues/495","comments":0,"assignee":null,"updated_at":"2011-03-09T16:17:56Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=7&t=5729&view=unread#unread","number":495,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/495","labels":[{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":659446,"closed_at":null,"created_at":"2011-03-09T16:17:56Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"GLUT 007 hack","html_url":"https://github.com/openframeworks/openFrameworks/issues/491","comments":0,"assignee":null,"updated_at":"2011-03-04T14:44:53Z","body":"it seems that some commented defines are still being preprocessed and making gdb behave weird:\r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=4&t=5602&view=unread#unread","number":491,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/491","labels":[{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":646846,"closed_at":null,"created_at":"2011-03-04T14:44:53Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"close corners on basic shapes?","html_url":"https://github.com/openframeworks/openFrameworks/issues/490","comments":0,"assignee":null,"updated_at":"2011-03-03T16:35:17Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=8&t=5678&view=unread#unread\r\n\r\nperhaps use style.linewith? won't work if you use glLineWidth though","number":490,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/490","labels":[{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":643861,"closed_at":null,"created_at":"2011-03-03T16:35:17Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"893ec14dc008e3774afe5841115920d6","url":"https://api.github.com/users/jonbro","login":"jonbro","id":1597,"avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofOrientation incompatible with iOS addon","html_url":"https://github.com/openframeworks/openFrameworks/issues/486","comments":0,"assignee":{"gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-10T04:50:03Z","body":"the existing iOS orientation methods are not compatible with the virtual functions that they inherit from. The new virtuals use a ofOrientation enum, and the old functions use ints.\r\n\r\nThis issue was introduced in https://github.com/openframeworks/openFrameworks/commit/38011d54","number":486,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/486","labels":[{"color":"2babad","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":635112,"closed_at":null,"created_at":"2011-02-28T18:14:04Z"},{"milestone":{"state":"open","description":"","title":"0073 Release","due_on":"2012-07-30T07:00:00Z","closed_issues":0,"open_issues":5,"number":6,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":62090,"created_at":"2011-12-03T15:37:49Z"},"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"grabFrame/idleFrame deprecation","html_url":"https://github.com/openframeworks/openFrameworks/issues/484","comments":12,"assignee":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-04-24T21:04:32Z","body":"it would be nice to start deprecating grabFrame() and idleFrame() (but maybe wait a couple years to actually remove them) , and change the examples to only use update() and isFrameNew().","number":484,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/484","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"37c200","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy"}],"id":613171,"closed_at":null,"created_at":"2011-02-20T17:56:02Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"ace632f74988653fdbde09225134bfdd","url":"https://api.github.com/users/nemik","login":"nemik","id":62301,"avatar_url":"https://secure.gravatar.com/avatar/ace632f74988653fdbde09225134bfdd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofVideoPlayer bug when loading subsequent movies after the first one","html_url":"https://github.com/openframeworks/openFrameworks/issues/475","comments":0,"assignee":null,"updated_at":"2011-02-14T17:11:08Z","body":"Within 0062, inside libs/openFrameworks/video/ofVideoPlayer.cpp on line 314 there is a check for height and width not being 0, then \"bDoWeAlreadyHaveAGworld = true;\" is set. However, this prevents other movies after the first from being loaded into that instance of ofVideoPlayer. \r\nI have posted about this in the forum with a fix (to just remove that check) here: http://www.openframeworks.cc/forum/viewtopic.php?f=8&t=5222\r\n\r\nInside the latest code, it is within ofQuickTimePlayer.cpp https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/video/ofQuickTimePlayer.cpp#L281.","number":475,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/475","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":598097,"closed_at":null,"created_at":"2011-02-14T17:11:08Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"object init/load state is not consistently testable","html_url":"https://github.com/openframeworks/openFrameworks/issues/463","comments":0,"assignee":null,"updated_at":"2011-02-07T19:58:23Z","body":"I like to be able to know when an object has successfully initialized or loaded and OF provides for this, for the most part, but in an inconsistent manner ie\r\n\r\nofVideoGrabber::initGrabber() returns a bool, but ofVideoGrabber:bInitialized is protected and therefore not accessible\r\n\r\nwhile\r\n\r\nofTrueTypeFont::bLoadedOk is public, but ofTrueTypeFont::loadFont() returns void\r\n\r\nand\r\n\r\nofImage::loadImage() returns a bool and ofLoadImage::bAllocated() returns a bool, yet ofImage::setFromPixels() returns void\r\n\r\nI propose all loadable/initable objects have loading functions which always return a bool and a testable function (isInited(), isLoaded(), etc) for use after loading. Ideally, the testable functions would always be named the same ie myImage.isLoaded(), myVideoGrabber().isLoaded(), myFont.isLoaded() but of course a general name may not apply to all situations (myVideoGrabber.isInited() probably makes more sense).\r\n\r\nHell, all the load functions could be overloaded ie ofImage::load(string filename), ofImage::load(ofPixels pixels), ofImage::load(unsigned char* pixels) across different objects, ofTrueTypeFont::load(string filename), ofVideoGrabber::load(int w, int h, int deviceID). This consistency looks nice to anal me. but might be confusing to newbies and of course would break old code (unless wrapped for legacy compatibility). It seems a little annoying that every objects seems to have it's own way of checking this and that ...","number":463,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/463","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"37c200","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy"}],"id":581395,"closed_at":null,"created_at":"2011-02-07T19:58:23Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"8022cb5f529975afbc64cc9312008d8c","url":"https://api.github.com/users/nardove","login":"nardove","id":277690,"avatar_url":"https://secure.gravatar.com/avatar/8022cb5f529975afbc64cc9312008d8c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"OpenCV cvSobel() not working with latest master branch","html_url":"https://github.com/openframeworks/openFrameworks/issues/462","comments":0,"assignee":null,"updated_at":"2011-02-07T15:58:19Z","body":"Hi,\r\n\r\nI get the following error:\r\n// INIT OF ERROR\r\nOF_WARNING: ofBaseVideoPlayer::setPixelFormat not implemented\r\nOpenCV Error: Assertion failed (src.size() == dst.size() && src.channels() == dst.channels() && ((src.depth() == CV_8U && (dst.depth() == CV_16S || dst.depth() == CV_32F)) || (src.depth() == CV_32F && dst.depth() == CV_32F))) in cvSobel, file /Users/theo/Documents/CODE/__OPENFRAMEWORKS/gitOF/__BuildAllLibs/OpenCV-2.2.0/modules/imgproc/src/deriv.cpp, line 347\r\nterminate called after throwing an instance of 'cv::Exception'\r\n what(): /Users/theo/Documents/CODE/__OPENFRAMEWORKS/gitOF/__BuildAllLibs/OpenCV-2.2.0/modules/imgproc/src/deriv.cpp:347: error: (-215) src.size() == dst.size() && src.channels() == dst.channels() && ((src.depth() == CV_8U && (dst.depth() == CV_16S || dst.depth() == CV_32F)) || (src.depth() == CV_32F && dst.depth() == CV_32F)) in function cvSobel\r\n// END OF ERROR\r\n\r\nWhen I try to call the cvSobel method like this:\r\ncvSobel( grayImage.getCvImage(), grayImage.getCvImage(), 0, 1, 3 );\r\n\r\nThis works fine in 0062.\r\n\r\nCheers\r\n- rS","number":462,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/462","labels":[{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":580717,"closed_at":null,"created_at":"2011-02-07T15:58:19Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"get number of input devices and device IDs from ofVideoGrabber","html_url":"https://github.com/openframeworks/openFrameworks/issues/461","comments":0,"assignee":null,"updated_at":"2011-02-07T19:38:51Z","body":"Currently, the ofVideoGrabber can list devices to stdout, but does not return the number of available devices. I propose that either listDevices() return an int or a new function be added, something like getNumDevices() or a getDeviceNums() which returns a vector of valid device ids. This could be related to Arturo's Issue where the devices could be retrieved as strings. I think it makes sense to have these as static functions so that you could open all available cameras into an Array of ofVideoGrabbers by retrieving the number of devices and their ids to open them.","number":461,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/461","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":580556,"closed_at":null,"created_at":"2011-02-07T15:24:21Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"saveImage() and other save operations should create missing directories","html_url":"https://github.com/openframeworks/openFrameworks/issues/460","comments":8,"assignee":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-08T15:56:48Z","body":"i feel like it happens relatively often where i try to save an image (for example) and the parent directories don't exist, so it just fails without really saying anything.\r\n\r\nit would be nice if the dir(s) were just created automatically for you.","number":460,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/460","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":579790,"closed_at":null,"created_at":"2011-02-07T07:52:25Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofTexture::allocate not checking for unnecessary reallocation","html_url":"https://github.com/openframeworks/openFrameworks/issues/454","comments":0,"assignee":null,"updated_at":"2011-02-06T04:26:44Z","body":"ofPixels::allocate is smart in that it doesn't reallocate if you ask for the same size as what's already there. ofTexture should work the same way to avoid unnecessary overhead.","number":454,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/454","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":578069,"closed_at":null,"created_at":"2011-02-06T04:26:44Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofViewport doesn't work with ofSetOrientation","html_url":"https://github.com/openframeworks/openFrameworks/issues/449","comments":0,"assignee":null,"updated_at":"2011-02-02T00:03:09Z","body":"maybe a generic 'transformer' function would handle both this and mouse coordinates, and anything else? ofPoint ofGetAsbolutePosition(x,y)?","number":449,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/449","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":568540,"closed_at":null,"created_at":"2011-02-02T00:03:09Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"no way to get imageType of ofVideoGrabber","html_url":"https://github.com/openframeworks/openFrameworks/issues/446","comments":0,"assignee":null,"updated_at":"2011-01-31T19:26:41Z","body":"ofVideoGrabber has getOFPixels in the .h, but it isn't implemented in the .cpp.\r\n\r\nmaybe this is just a signal that ofPixels stuff needs to be resolved soon... :) i'd be glad to help with this if possible.","number":446,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/446","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":565122,"closed_at":null,"created_at":"2011-01-31T19:26:41Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofGetElapsedTimeMillis returns an int instead of unsigned long","html_url":"https://github.com/openframeworks/openFrameworks/issues/428","comments":0,"assignee":null,"updated_at":"2011-01-28T06:28:01Z","body":"the start time is stored internally as an unsigned long, but ofGetElapsedTimeMillis returns it as an int. ofGetElapsedTimef also does calculations using time as an int. this means time wraps around every (2^31 - 1) milliseconds in days = 24.8 days.\r\n\r\nas an unsigned long it would be (2^64 - 1) milliseconds in years = 584 million years :)","number":428,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/428","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"65a300","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize"}],"id":558215,"closed_at":null,"created_at":"2011-01-28T06:28:01Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"4fc88ba881fee72fc4c5de473dc2ebbf","url":"https://api.github.com/users/NickHardeman","login":"NickHardeman","id":142694,"avatar_url":"https://secure.gravatar.com/avatar/4fc88ba881fee72fc4c5de473dc2ebbf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Check ofShader Texture Wrap Parameters","html_url":"https://github.com/openframeworks/openFrameworks/issues/424","comments":1,"assignee":null,"updated_at":"2011-12-02T21:05:54Z","body":"I thought checking for custom texture wrapping in ofShader might be useful. Not sure how to add a label to this :/\n\n#include ofGraphics.h\n\nvoid setUniformTexture(const char* name, ofBaseHasTexture& img, int textureLocation=-1);\nvoid setUniformTexture(const char* name, ofTexture& img, int textureLocation=-1);\n\nvoid ofShader::setUniformTexture(const char* name, ofTexture& tex, int textureLocation) {\n\tif(bLoaded) {\n\t\t\n\t\tGLfloat wrapS = -1;\n\t\tGLfloat wrapT = -1;\n\t\t\n\t\tif (ofGetUsingCustomTextureWrap()) {\n\t\t\tglGetTexParameterfv(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, &wrapS);\n\t\t\tglGetTexParameterfv(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, &wrapT);\n\t\t}\n\t\t\n\t\tofTextureData texData = tex.getTextureData();\n\t\tif (textureLocation < 0) textureLocation = texData.textureID;\n\t\tglActiveTexture(GL_TEXTURE0 + textureLocation);\n\t\tglEnable(texData.textureTarget);\n\t\t\n\t\tif(wrapS > 0) glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, wrapS);\n\t\tif(wrapT > 0) glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, wrapT);\n\t\t\n\t\tglBindTexture(texData.textureTarget, texData.textureID);\n\t\tglDisable(texData.textureTarget);\n\t\tsetUniform1i(name, texData.textureID);\n\t\tglActiveTexture(GL_TEXTURE0);\n\t}\n}","number":424,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/424","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":556923,"closed_at":null,"created_at":"2011-01-27T19:43:31Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"problem with reloading movies in osx","html_url":"https://github.com/openframeworks/openFrameworks/issues/423","comments":0,"assignee":null,"updated_at":"2011-01-24T22:34:29Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=8&t=5222","number":423,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/423","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"2a8296","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS"}],"id":548302,"closed_at":null,"created_at":"2011-01-24T22:34:29Z"},{"milestone":{"state":"open","description":"","title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"number":5,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61810,"created_at":"2011-12-02T15:29:48Z"},"state":"open","user":{"gravatar_id":"117a7eecfee7c7f7e954623fd96e1b6e","url":"https://api.github.com/users/snibbe","login":"snibbe","id":581517,"avatar_url":"https://secure.gravatar.com/avatar/117a7eecfee7c7f7e954623fd96e1b6e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Retina display support **that doesn't crash devices!** with backward compatibility to OS 3.0","html_url":"https://github.com/openframeworks/openFrameworks/issues/421","comments":2,"assignee":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2011-12-05T22:03:15Z","body":"Hi guys,\r\n\r\nI posted to the OF forum a solution back in August to support retina display with backward compatibility to pre-OS 4.0 devices:\r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=25&t=4185&start=15\r\n\r\nIf it's still outstanding, here's the solution!\r\n\r\nEAGLView.mm, initWithFrame, after the eaglLayer.drawableProperties assignment, add:\r\n\r\n if ([[UIScreen mainScreen] respondsToSelector:@selector(scale)]) {\r\n if ([[UIScreen mainScreen] scale] > 1) {\r\n // code below doesn't work on iPad 3.2 OS and below, but doesn't need to because scale is 1\r\n [self setContentScaleFactor:[[UIScreen mainScreen] scale]];\r\n }\r\n }\r\n\r\nofAppiPhoneWindow.mm, timerLoop, after [ofxiPhoneGetGLView() startRender]; add:\r\n\r\n int ofwidth = ofGetWidth();\r\n int ofheight = ofGetHeight();\r\n \r\n if ([[UIScreen mainScreen] respondsToSelector:@selector(scale)]) {\r\n ofwidth *= [[UIScreen mainScreen] scale];\r\n ofheight *= [[UIScreen mainScreen] scale];\r\n }\r\n\r\nthen change the glViewport calls:\r\n\r\n\t// this could be taken out and included in ofAppBaseWIndow\r\n\tif(orientation == OFXIPHONE_ORIENTATION_PORTRAIT || orientation == OFXIPHONE_ORIENTATION_UPSIDEDOWN)\r\n\t\tglViewport( 0, 0, ofwidth, ofheight );\r\n\telse\r\n\t\tglViewport( 0, 0, ofheight, ofwidth );","number":421,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/421","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"2a8296","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS"}],"id":548070,"closed_at":null,"created_at":"2011-01-24T20:52:18Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"something to wrap glMultMatrixf","html_url":"https://github.com/openframeworks/openFrameworks/issues/418","comments":0,"assignee":null,"updated_at":"2011-01-22T15:57:37Z","body":"suggestions:\r\n\r\n ofPopMatrix(ofMatrix4x4 m)\r\n\r\n ofMultMatrix(ofMatrix4x4 m)\r\n\r\n ofMatrix4x4::apply();\r\n ofMatrix4x4::push();","number":418,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/418","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":543729,"closed_at":null,"created_at":"2011-01-22T15:57:37Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"3D isn't scale invariant in certain parts","html_url":"https://github.com/openframeworks/openFrameworks/issues/417","comments":0,"assignee":null,"updated_at":"2011-01-22T15:24:07Z","body":"e.g.\r\n\r\n void ofEasyCam::reset() {\r\n\ttarget.resetTransform();\r\n\tdistance = 100;\r\n }\r\n\r\nofNode's\r\n\tvirtual void customDraw() {\r\n\t\tofBox(10);\r\n\t\tofDrawAxis(20);\r\n\t}\r\n\r\nsuggestions:\r\n\r\nglobal variable called something like 'base3DScaleFactor = 10.0f' which will affect all of these current constant scale factors","number":417,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/417","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":543694,"closed_at":null,"created_at":"2011-01-22T15:24:07Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","url":"https://api.github.com/users/vanderlin","login":"vanderlin","id":149997,"avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Simulator not working with any examples ","html_url":"https://github.com/openframeworks/openFrameworks/issues/414","comments":3,"assignee":{"gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-10T05:00:35Z","body":"Getting this error after the app launches in simulator mode \r\n\r\nDetected an attempt to call a symbol in system libraries that is not present on the iPhone:\r\n\r\n","number":414,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/414","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"2babad","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":539979,"closed_at":null,"created_at":"2011-01-20T20:17:35Z"},{"milestone":{"state":"open","description":"","title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"number":5,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61810,"created_at":"2011-12-02T15:29:48Z"},"state":"open","user":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofCamera::setPan is broken","html_url":"https://github.com/openframeworks/openFrameworks/issues/413","comments":1,"assignee":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-14T15:11:06Z","body":"","number":413,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/413","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"31e03a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed"}],"id":539915,"closed_at":null,"created_at":"2011-01-20T20:01:00Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"add setMultisampling method to glutWindow","html_url":"https://github.com/openframeworks/openFrameworks/issues/412","comments":0,"assignee":null,"updated_at":"2011-01-20T19:33:30Z","body":"multisampling is now working in linux through the display string option. perhaps we could add a method to easily set it if it also works on win/osx","number":412,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/412","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"244569","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows"}],"id":539845,"closed_at":null,"created_at":"2011-01-20T19:33:30Z"},{"milestone":{"state":"open","description":"","title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"number":5,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61810,"created_at":"2011-12-02T15:29:48Z"},"state":"open","user":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofCamera / ofEasyCamera does not work correctly for iPhone / iPad","html_url":"https://github.com/openframeworks/openFrameworks/issues/410","comments":2,"assignee":{"gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-14T15:11:06Z","body":"Needs to take into account the rotation and the flipping happening in ofAppiPhoneWindow::timerLoop() \n\nAlso the internal call to ofViewport causes clipping in horizontal mode. \n\nIts currently very difficult to setup the camera correctly for iPad / iPhone - would be great if the default for ofCamera would be to start with the typical OF camera view. ","number":410,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/410","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"2babad","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"31e03a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed"}],"id":539744,"closed_at":null,"created_at":"2011-01-20T18:59:10Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","url":"https://api.github.com/users/vanderlin","login":"vanderlin","id":149997,"avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofEnableLighting","html_url":"https://github.com/openframeworks/openFrameworks/issues/406","comments":0,"assignee":null,"updated_at":"2011-01-19T19:39:37Z","body":"ofLight bug not sure what the ios equivalent is..\r\n\r\nglColorMaterial(GL_FRONT_AND_BACK, GL_AMBIENT_AND_DIFFUSE); is not supported in IOS","number":406,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/406","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":537416,"closed_at":null,"created_at":"2011-01-19T19:39:36Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofViewport doesn't match rest of openFrameworks coordinates","html_url":"https://github.com/openframeworks/openFrameworks/issues/405","comments":0,"assignee":null,"updated_at":"2011-01-19T13:24:54Z","body":"Suggest change line 126 of ofGraphics.h to\r\n\tglViewport(x, ofGetHeight() - y - height, width, height);\r\n\r\nto be in line with rest of openFrameworks coordinate system\r\ne.g. ofRect(myRect) matches ofViewport(myRect)\r\n","number":405,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/405","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"31e03a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed"}],"id":536614,"closed_at":null,"created_at":"2011-01-19T13:24:53Z"}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=12 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4932'), ('content-length', '38352'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"679d499a026b6f6d6a1e20857a7392dc"'), ('date', 'Tue, 29 May 2012 19:27:21 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-01-17T23:39:31Z","body":"it should be only in the implementations and queried by the grabber/player in case an implementation doesn't support a format if not the app can crash or have really weird results","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/403","comments":0,"milestone":null,"number":403,"html_url":"https://github.com/openframeworks/openFrameworks/issues/403","assignee":null,"title":"setPixelFormat shouldn't be stored in videoGrabber/Player","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-17T23:39:31Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":532954,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-17T16:37:42Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/400","comments":0,"milestone":null,"number":400,"html_url":"https://github.com/openframeworks/openFrameworks/issues/400","assignee":null,"title":"ofTTF should have setAnchorPercent so you can draw strings centered, right aligned etc","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography","color":"DDDDDD"}],"closed_at":null,"created_at":"2011-01-17T16:37:42Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":532096,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-03-20T17:33:14Z","body":"every frame, it should update the pmouse value. so if you don't move the mouse, the pmouse value is equal to the current value.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/391","comments":1,"milestone":null,"number":391,"html_url":"https://github.com/openframeworks/openFrameworks/issues/391","assignee":null,"title":"ofGetPreviousMouseX/Y() does not update per frame","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-16T07:21:15Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":529705,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-03-20T17:32:59Z","body":"this is a limitation to glut, but it might be hackable on each system separately.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/389","comments":1,"milestone":null,"number":389,"html_url":"https://github.com/openframeworks/openFrameworks/issues/389","assignee":null,"title":"mouse position doesn't update until mouse is moved","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-16T07:11:53Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":529700,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-03-13T21:10:48Z","body":"following error appears when i try to load an image; commenting out the call to loadImage(\"...\") makes the error go away.\n\n Undefined symbols:\n \"std::basic_ostream >& std::__ostream_insert >(std::basic_ostream >&, char const*, int)\", \n referenced from:\n Poco::Net::HTTPClientSession::proxyAuthenticateImpl(Poco::Net::HTTPRequest&)in PocoNet.a(HTTPClientSession.o)\n Poco::Net::HTTPClientSession::proxyAuthenticateImpl(Poco::Net::HTTPRequest&)in PocoNet.a(HTTPClientSession.o)\n Poco::Net::HTTPRequest::write(std::basic_ostream >&) constin PocoNet.a(HTTPRequest.o)\n Poco::Net::HTTPRequest::write(std::basic_ostream >&) constin PocoNet.a(HTTPRequest.o)\n Poco::Net::HTTPRequest::write(std::basic_ostream >&) constin PocoNet.a(HTTPRequest.o)\n Poco::Net::MessageHeader::write(std::basic_ostream >&) constin PocoNet.a(MessageHeader.o)\n Poco::Net::MessageHeader::write(std::basic_ostream >&) constin PocoNet.a(MessageHeader.o)\n Poco::Net::HTTPResponse::write(std::basic_ostream >&) constin PocoNet.a(HTTPResponse.o)\n Poco::Net::HTTPResponse::write(std::basic_ostream >&) constin PocoNet.a(HTTPResponse.o)\n\nld: symbol(s) not found\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/387","comments":1,"milestone":null,"number":387,"html_url":"https://github.com/openframeworks/openFrameworks/issues/387","assignee":null,"title":"Linker error when loading image (Poco::Net related?)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-16T05:57:51Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"id":529646,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-15T17:01:08Z","body":"would be nice if it was a float (0-1) and not an int(0-100) for standardization with every other audio thing in the universe aside from quicktime","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/375","comments":2,"milestone":null,"number":375,"html_url":"https://github.com/openframeworks/openFrameworks/issues/375","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"ofVideoPlayer setVolume uses an int","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"closed_at":null,"created_at":"2011-01-15T23:03:57Z","state":"open","user":{"url":"https://api.github.com/users/stfj","gravatar_id":"b089227a1748a2d70cdfc4ef00b325ad","login":"stfj","avatar_url":"https://secure.gravatar.com/avatar/b089227a1748a2d70cdfc4ef00b325ad?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":177578},"id":529268,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-14T19:30:31Z","body":"glDrawBitmapString doesn't work when GL_LIGHTING is enabled.\r\n\r\nwell, it works... but it is black because it isn't reflecting any light. regardless of the ofSetColor.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/357","comments":0,"milestone":null,"number":357,"html_url":"https://github.com/openframeworks/openFrameworks/issues/357","assignee":null,"title":"glDrawBitmapString vs GL_LIGHTING","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-14T19:30:31Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":527591,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-14T01:33:38Z","body":"some of the core functions only work with 2d points, others only with 3d points, some work with both. but they all take ofPoints.\r\n\r\nit's good for teaching purposes to have ofPoints because you don't have to explain what a 'vector' is, but it's unclear for advanced users whether the functions take 2d or 3d points...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/347","comments":0,"milestone":null,"number":347,"html_url":"https://github.com/openframeworks/openFrameworks/issues/347","assignee":null,"title":"none of the core functions report how many dimensions they work for","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-01-14T01:33:38Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":526094,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-13T16:16:40Z","body":"e.g., GL_DEPTH_TEST.\r\n\r\none of the reasons for this is that it's not obvious to newbies what common features are available.\r\n\r\nanother is that i've seen lots of people write GL_DEPTH instead, which obviously doesn't work.\r\n\r\nthere might be some others too, see processing's hint():\r\n\r\nhttp://processing.org/reference/hint_.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/340","comments":0,"milestone":null,"number":340,"html_url":"https://github.com/openframeworks/openFrameworks/issues/340","assignee":null,"title":"OF wrapper for basic gl functions that aren't intuitive to newbies","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"closed_at":null,"created_at":"2011-01-13T16:16:40Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":524875,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-27T13:35:42Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/337","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":337,"html_url":"https://github.com/openframeworks/openFrameworks/issues/337","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"ofFileDialog allow folder selection ( works on os x ) needs code for win and linux","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-01-13T05:21:53Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":523837,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T15:11:06Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/330","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":330,"html_url":"https://github.com/openframeworks/openFrameworks/issues/330","assignee":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"title":"OpenCv 2.2 for Win ( CB and VS )","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"}],"closed_at":null,"created_at":"2011-01-12T19:09:37Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":522789,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-04T14:06:34Z","body":"currentStyle stores everything about the current style, so it can be used rather than things like drawMode for tracking how things should currently be draw.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/325","comments":1,"milestone":null,"number":325,"html_url":"https://github.com/openframeworks/openFrameworks/issues/325","assignee":null,"title":"drawMode can be deprecated, currentStyle.bFill should be used instead","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-12T15:41:11Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":522255,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-12T15:34:48Z","body":"ordering for code completion is a little weird.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/324","comments":0,"milestone":null,"number":324,"html_url":"https://github.com/openframeworks/openFrameworks/issues/324","assignee":null,"title":"ofPushView/ofPopView appear before ofPushMatrix/ofPopMatrix","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"}],"closed_at":null,"created_at":"2011-01-12T15:34:48Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":522231,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-10T22:30:48Z","body":"under the /video directory","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/311","comments":0,"milestone":null,"number":311,"html_url":"https://github.com/openframeworks/openFrameworks/issues/311","assignee":null,"title":"openFrameworksLib has ofQtUtils included twice","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-10T22:30:48Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":518434,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-10T06:36:27Z","body":"better to use aggregation (helper classes/functions) if necessary for common functionality that have implementation in those classes. making them pure abstract classes will avoid problems with multiple inheritance and easier to extend in case of different behaviour","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/305","comments":0,"milestone":null,"number":305,"html_url":"https://github.com/openframeworks/openFrameworks/issues/305","assignee":null,"title":"no implementation in ofBaseTypes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-10T06:36:27Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":516844,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-05T21:59:59Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/302","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":302,"html_url":"https://github.com/openframeworks/openFrameworks/issues/302","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"Remove Poco CppUnit from all projects ( done on os x )","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-01-10T02:39:28Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":516565,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T01:06:09Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/299","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","closed_issues":0,"number":6,"title":"0073 Release","due_on":"2012-07-30T07:00:00Z","open_issues":5,"created_at":"2011-12-03T15:37:49Z","state":"open","description":"","id":62090},"number":299,"html_url":"https://github.com/openframeworks/openFrameworks/issues/299","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"freetype-2.4.4 for linux","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-01-10T02:38:08Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":516560,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T01:06:08Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/298","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","closed_issues":0,"number":6,"title":"0073 Release","due_on":"2012-07-30T07:00:00Z","open_issues":5,"created_at":"2011-12-03T15:37:49Z","state":"open","description":"","id":62090},"number":298,"html_url":"https://github.com/openframeworks/openFrameworks/issues/298","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"freetype-2.4.4 for windows","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-01-10T02:37:49Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":516559,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-05T21:59:27Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/296","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":296,"html_url":"https://github.com/openframeworks/openFrameworks/issues/296","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"FreeImage 3141 build for windows","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-01-10T02:36:58Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":516556,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-09T20:46:43Z","body":"I think the pixeltype, the gltypeinternal and the gltype should be accessible to the user as well as the loadData(void * data, int w, int h, int glDataType) which is actually protected.\r\n\r\nActual implementation is only limited to a few choice of internalFormat which lead to choice of pixeltype and gltype. It thus doesn't allow from user specific type.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/292","comments":0,"milestone":null,"number":292,"html_url":"https://github.com/openframeworks/openFrameworks/issues/292","assignee":null,"title":"ofTexture should be more flexible","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-01-09T20:46:43Z","state":"open","user":{"url":"https://api.github.com/users/I33N","gravatar_id":"ba8d7c3b4532d3747c30b9be91dc20d5","login":"I33N","avatar_url":"https://secure.gravatar.com/avatar/ba8d7c3b4532d3747c30b9be91dc20d5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":520375},"id":516071,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T10:49:15Z","body":"ofImage::getWidth()/getHeight() are just getters that do absolutely nothing but return a copy of the width and height. these methods should be marked const.\r\n\r\n[added]: there are hacks inside ofxCv that i've had to make because getWidth/getHeight are not const correct. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/288","comments":6,"milestone":null,"number":288,"html_url":"https://github.com/openframeworks/openFrameworks/issues/288","assignee":null,"title":"const correctness - add const to getWidth/getHeight","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-08T02:14:03Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":513779,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2010-11-30T05:13:10Z","body":"This is giving me some crashes. There needs to be a way to disable this when making custom windows. I have tried to do atexit(NULL); but the callback in ofRunApp(ofBaseApp * OFSA) is still being called. \r\n\r\nmaybe something like:\r\n\r\nvoid ofRunApp(ofBaseApp * OFSA, bool useExitCallback);\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/275","comments":0,"milestone":null,"number":275,"html_url":"https://github.com/openframeworks/openFrameworks/issues/275","assignee":null,"title":"atexit(ofExitCallback);","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-11-30T05:13:10Z","state":"open","user":{"url":"https://api.github.com/users/vanderlin","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":149997},"id":445829,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-03-17T02:02:25Z","body":"bottom left corner is inconsistent with every other drawing command in OF, should be top left instead.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/271","comments":7,"milestone":null,"number":271,"html_url":"https://github.com/openframeworks/openFrameworks/issues/271","assignee":null,"title":"ofDrawBitmapString draws from bottom left","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-11-22T21:30:40Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":433297,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-06-03T19:04:08Z","body":"test if this is really useful:\r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=7&t=4889&view=unread#unread\r\n\r\nhe adds a queue just before the color conversion","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/265","comments":0,"milestone":null,"number":265,"html_url":"https://github.com/openframeworks/openFrameworks/issues/265","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"linux videograbber stopping after some time","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2010-11-18T12:07:46Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":426050,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-19T22:47:21Z","body":"ofClear(r,g,b) is inconsistent with ofBackground(r,g,b) because the alpha is 0 by default -- meaning you always have to explicitly declare the alpha to clear the background.\r\n\r\nfurthermore, because all the arguments have default values there is not/cannot exist an ofClear(gray, alpha) to match ofSetColor style","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/264","comments":5,"milestone":null,"number":264,"html_url":"https://github.com/openframeworks/openFrameworks/issues/264","assignee":null,"title":"ofClear uses inconsistent arguments","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2010-11-18T06:15:47Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":425675,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=13 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4931'), ('content-length', '46291'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"bf7e6718fe6b733d04e77e00e220150f"'), ('date', 'Tue, 29 May 2012 19:27:22 GMT'), ('content-type', 'application/json; charset=utf-8')] +[null,{"updated_at":"2011-12-05T21:58:33Z","body":"A lot of OF files are including ofMain / ofConstants.h - this makes compiles super slow. Try to have files only include what they need. Or find a way to break things up into the most often used ( windows.h etc ) and less used. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/255","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":255,"html_url":"https://github.com/openframeworks/openFrameworks/issues/255","assignee":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"title":"COMPILE SPEED UP - cleanup internal includes to avoid ofMain.h and ofConstants.h","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2010-11-11T21:14:05Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":413771,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T20:11:33Z","body":"ofHideCursor()/ofShowCursor()\r\n\r\nofEnableArbTex()\r\nofEnableSetupScreen()\r\nofEnableDataPath()\r\nofEnableAlphaBlending()\r\nofEnableSmoothing()\r\n\r\nofSetFullscreen() + ofToggleFullscreen()\r\nofSetVerticalSync()\r\n\r\netc.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/249","comments":1,"milestone":null,"number":249,"html_url":"https://github.com/openframeworks/openFrameworks/issues/249","assignee":null,"title":"normalize option nomenclature (hide/enable/set/etc.)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2010-11-03T22:52:08Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":399214,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T22:03:41Z","body":"some video to test:\r\n\r\nmmsh://live.camstreams.com/cscamglobal16?MSWMExt=.asf\r\n\r\nit works ok with totem so it should be a problem in ofGstUtils","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/245","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":245,"html_url":"https://github.com/openframeworks/openFrameworks/issues/245","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"gstreamer problems with streaming of microsoft video","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2010-10-13T16:33:06Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":360885,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-13T20:13:07Z","body":"I found an annoying bug in ofVideoPlayer.\nThis module do not like to be dynamically created or destroyed.\nCheck this little example :\n\nhttp://knu.free.fr/bug_ofVideoPlayer.zip\n\nLeft-click to create an object playing video.\nRight-click to suppress the last video.\n\nhere are the phenomenons I am facing on my Win7 machine :\n\n- \nIf you create an object, and then you suppress it, and then try to create an object again, the app will crash.\n\n- \nIf you create some objects (lets say 8), and then you suppress all of them, the app will crash before the last one (not always, but most of the time).\n\n\n\nNow in OF source tree, try replacing ofVideoPlayer.cpp with FIX_ofVideoPlayer.cpp (at the root of the zip)\nRebuild the project.\nNow everything should be working as expected.\n\n\nThe modifications I made in the source are marked by : //###############\n\nI do not have time to fully read and understand the quicktime API, so there are chances this workaround is fucking dirty.\nBut at least it seems to work.\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/244","comments":1,"milestone":null,"number":244,"html_url":"https://github.com/openframeworks/openFrameworks/issues/244","assignee":null,"title":"bug in ofVideoPlayer","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2010-10-11T19:56:46Z","state":"open","user":{"url":"https://api.github.com/users/fmauclere","avatar_url":"https://secure.gravatar.com/avatar/1c7dcbab3712f1a4d90bd2c3aa9a3e3d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"1c7dcbab3712f1a4d90bd2c3aa9a3e3d","login":"fmauclere","id":435720},"id":357395,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-10T05:06:06Z","body":"Check out this code - also check if latest ffmpeg is better optimized for iphone.\r\nhttp://github.com/jgh-/FFmpeg-for-iOS","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/240","comments":0,"milestone":null,"number":240,"html_url":"https://github.com/openframeworks/openFrameworks/issues/240","assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"title":"iphone video player - ffmpeg and audioqueues","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-10-06T17:19:57Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":349886,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-10T05:08:56Z","body":"XCode: 3.2.4\nOF: github master @24 Sep 2010\nCompiled as: device base SDK 4.1 release arm7 deployment target 3.2\n\nWeird error: Build ofAudioOutputExample. Add a void testApp::exit() to see if it is called. Run app on ipod touch 2010 version with 4.1 installed.\n\nApp runs OK yet pressing the exit button on front of device quits the app, but xcode keeps running. Digging in a bit it appears not only testApp::exit, but ofExitCallback is not getting called.\n\nSwitch to iPad (no other settings changed) and app runs fine, and exits properly.\n\nSwitch to BaseSDK 3.2 and example runs fine and exits fine on both iPad and iPod.\n\nIdeas? Is this just me? I'm fairly new to OF, XCode and iPhone\n\n[edit]\nOK I worked out that pressing the \"close\" button in 4.1 calls applicationWillResignActive in ofxiPhoneAppDelegate.mm. As a hacky workaround as my app just needs to exit, not sit in background, I added exit(0); to the end of applicationWillResignActive and it seems to work.\n\nWould like to know how to do this properly though.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/236","comments":1,"milestone":null,"number":236,"html_url":"https://github.com/openframeworks/openFrameworks/issues/236","assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"title":"ofExitCallback not being called on iphone4.1?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-09-25T01:55:49Z","state":"open","user":{"url":"https://api.github.com/users/DavidDC","avatar_url":"https://secure.gravatar.com/avatar/a6fdad0c31fcd273a1ba89434fec0419?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"a6fdad0c31fcd273a1ba89434fec0419","login":"DavidDC","id":415101},"id":332379,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-04-19T00:32:33Z","body":"related to #221: texData.bAllocated is only used in the isAllocated method which can be changed from:\r\n\r\n bool ofTexture::bAllocated(){\r\n return texData.bAllocated;\r\n }\r\n\r\nto\r\n\r\n bool ofTexture::bAllocated(){\r\n return texData.textureID!=0;\r\n }\r\n\r\navoiding problems like #221 since we don't have two flags for the same thing","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/228","comments":4,"milestone":null,"number":228,"html_url":"https://github.com/openframeworks/openFrameworks/issues/228","assignee":null,"title":"remove bAllocated in ofTexture?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2010-09-09T14:20:55Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":309191,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T15:45:27Z","body":"Segfault when playing .ogv files on 64 bit linux.\nSee forum post - http://www.openframeworks.cc/forum/viewtopic.php?f=7&t=4582","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/227","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":227,"html_url":"https://github.com/openframeworks/openFrameworks/issues/227","assignee":null,"title":"Ubuntu 64-bit conflict with FMOD when playing ogg theora files","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2010-09-08T14:54:33Z","state":"open","user":{"url":"https://api.github.com/users/pierrep","avatar_url":"https://secure.gravatar.com/avatar/be11c9de8242e7aef0446eceaa289e01?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"be11c9de8242e7aef0446eceaa289e01","login":"pierrep","id":392160},"id":307684,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-08-31T10:54:19Z","body":"It would be nice to have:\r\n\r\n\tconst ofxVec2f xunit2f(1, 0), yunit2f(0, 1);\r\n\tconst ofxVec3f xunit3f(1, 0, 0), yunit3f(0, 1, 0), zunit3f(0, 0, 1);\r\n\r\nOr something similar that allows for more elegant notation when you're multiplying or adding by an axis.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/225","comments":0,"milestone":null,"number":225,"html_url":"https://github.com/openframeworks/openFrameworks/issues/225","assignee":null,"title":"ofxVectorMath constants","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-08-31T10:54:19Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":295913,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-26T18:37:47Z","body":"can this be useful?\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=25&t=4500\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/224","comments":1,"milestone":null,"number":224,"html_url":"https://github.com/openframeworks/openFrameworks/issues/224","assignee":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"title":"gaussian noise","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"}],"closed_at":null,"created_at":"2010-08-26T10:21:24Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":290973,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-10-17T13:58:53Z","body":"ofxOsc causes a memory access violation in VS2008, when you use sendMessage(ofxOscMessage) from within a class.\r\nNo error when you run that from main ofApp","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/214","comments":1,"milestone":null,"number":214,"html_url":"https://github.com/openframeworks/openFrameworks/issues/214","assignee":null,"title":"ofxOsc memory access violation. namespace issue?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-08-04T05:59:22Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":268332,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-14T15:12:26Z","body":"e) get arturo's script to work, or rewrite a new one to just clobber a given directory (and not pull from git, etc as it's doing now). \r\n\r\ntheo - might be good to have two scripts?\r\n1) to pull from git \r\n2) to remove everything not related to a platform - or maybe better just copies the files into a folder for that platform. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/199","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":199,"html_url":"https://github.com/openframeworks/openFrameworks/issues/199","assignee":null,"title":"script that doesn't pull everything from git","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-06-01T13:28:54Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":211418,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-05-25T14:54:52Z","body":"\r\nas per: \r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=8&t=3962&p=20661#p20661\r\n\r\nwe should explain how to use it properly. \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/194","comments":0,"milestone":null,"number":194,"html_url":"https://github.com/openframeworks/openFrameworks/issues/194","assignee":null,"title":"ofGetAppPtr documentation is wrong ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"closed_at":null,"created_at":"2010-05-25T14:54:52Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":205935,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:58:22Z","body":"http://www.glfw.org/release-2.6.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/193","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":193,"html_url":"https://github.com/openframeworks/openFrameworks/issues/193","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"look at glfw - just got updated","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-05-23T21:04:25Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":204247,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T19:20:16Z","body":"I had the L.A.S.E.R. tag software up and running great on my new MacBook Pro but recently my computer did a software update and now something is wrong and I can't properly use the program. I have snow leopard 10.6.3 OS. I'm not totally sure if it was the auto update that caused the issue but it seems like it stopped working after the update. Below I listed the suspected updates. Seems weird to me 2 digital camera RAW updates.\r\n\r\n3/27/10 Digital Camera RAW update 2.7\r\n3/27/10 Safari 4.0.5\r\n3/27/10 Digital Camera RAW update 3.1\r\n3/27/10 iMovie update 8.0.6\r\n\r\n0 com.apple.QuickTime \t0x9408e179 QTMLGrabMutex + 18\r\n1 com.apple.QuickTime \t0x9421b6a3 QTWorkContextCopyForMediaContextID + 28\r\n2 ...uickTimeStreaming.component\t0x14f77c15 HTTPDhlr_CheckForFatalError + 254\r\n3 ...uickTimeStreaming.component\t0x14f77cc6 HTTPDhlr_ReadSYNC + 165\r\n4 ...uickTimeStreaming.component\t0x14f7ab01 HTTPDataHandler_ScheduleData64 + 452\r\n5 ...ple.CoreServices.CarbonCore\t0x949a2d05 callComponentStorage_4444444 + 63\r\n6 ...ple.CoreServices.CarbonCore\t0x949976f0 CallComponentFunctionCommonWithStorage(char**, ComponentParameters*, long (*)(), unsigned long) + 54\r\n7 ...uickTimeStreaming.component\t0x14f784c7 HTTPDataHandler_ComponentDispatch + 110\r\n8 ...ple.CoreServices.CarbonCore\t0x9498fd87 CallComponentDispatch + 29\r\n9 com.apple.QuickTime \t0x94093540 DataHScheduleData64 + 73\r\n10 com.apple.QuickTime \t0x940b5704 NewMovieFromDataRefPriv_priv + 8296\r\n11 com.apple.QuickTime \t0x9419e613 NewMovieFromDataRef_priv + 54\r\n12 com.apple.QuickTime \t0x942fb95e NewMovieFromDataRef + 52\r\n13 com.yourcompany.openFrameworks\t0x0000aa2a createMovieFromURL(std::string, MovieType**&) + 112\r\n14 com.yourcompany.openFrameworks\t0x0000abe2 ofVideoPlayer::loadMovie(std::string) + 182\r\n15 com.yourcompany.openFrameworks\t0x0002fe03 appController::setup() + 2169\r\n16 com.yourcompany.openFrameworks\t0x00002864 ofRunApp(ofSimpleApp*) + 170\r\n17 com.yourcompany.openFrameworks\t0x0003dc06 main + 90\r\n18 com.yourcompany.openFrameworks\t0x00001da2 _start + 216\r\n19 com.yourcompany.openFrameworks\t0x00001cc9 start + 41","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/182","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":182,"html_url":"https://github.com/openframeworks/openFrameworks/issues/182","assignee":null,"title":"ofVideoPlayer - createMovieFromURL broken in 10.6.3 with specific updates?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-04-15T16:20:25Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":172424,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-04-14T15:48:19Z","body":"can we add moments to the blob. \n\nadd CvMoments moments to blob class\n\nand in ofxCvContourFinder.cpp line 119\n\n\t blobs[i].moments.m00 = myMoments->m00;\n\t\tblobs[i].moments.m10 = myMoments->m10;\n\t\tblobs[i].moments.m01 = myMoments->m01;\n\t\tblobs[i].moments.m20 = myMoments->m20;\n\t\tblobs[i].moments.m11 = myMoments->m11;\n\t\tblobs[i].moments.m02 = myMoments->m02;\n\t\tblobs[i].moments.m30 = myMoments->m30;\n\t\tblobs[i].moments.m21 = myMoments->m21;\n\t\tblobs[i].moments.m12 = myMoments->m12;\n\t\tblobs[i].moments.m03 = myMoments->m03;\n\t\t\n\t\tblobs[i].moments.mu20 = myMoments->mu20;\n\t\tblobs[i].moments.mu11 = myMoments->mu11;\n\t\tblobs[i].moments.mu02 = myMoments->mu02;\n\t\tblobs[i].moments.mu30 = myMoments->mu30;\n\t\tblobs[i].moments.mu21 = myMoments->mu21;\n\t\tblobs[i].moments.mu12 = myMoments->mu12;\n\t\tblobs[i].moments.mu03 = myMoments->mu03;\n\n\nthis is good for finding the angle and other info about the contour.\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/181","comments":2,"milestone":null,"number":181,"html_url":"https://github.com/openframeworks/openFrameworks/issues/181","assignee":null,"title":"ofxCvBlobs","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2010-04-14T15:42:22Z","state":"open","user":{"url":"https://api.github.com/users/vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","id":149997},"id":171615,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-29T15:04:04Z","body":"Buffer is 512 but should be 276 ( or something )\r\nSetting it to 256 says the buffer size should be 176 ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/178","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":178,"html_url":"https://github.com/openframeworks/openFrameworks/issues/178","assignee":null,"title":"iPhone sound bug with 1st gen ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-04-11T10:18:58Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":169176,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T19:18:14Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/175","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":175,"html_url":"https://github.com/openframeworks/openFrameworks/issues/175","assignee":null,"title":"bring examples up to date - make sexy","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"}],"closed_at":null,"created_at":"2010-04-06T19:44:04Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166214,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T19:14:03Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/174","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":174,"html_url":"https://github.com/openframeworks/openFrameworks/issues/174","assignee":null,"title":"vertical sync on for mac by default","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-04-06T19:43:21Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166212,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:58:10Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/173","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":173,"html_url":"https://github.com/openframeworks/openFrameworks/issues/173","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"ofAlphaBlending default on","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2010-04-06T19:42:34Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166211,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:57:50Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/172","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":172,"html_url":"https://github.com/openframeworks/openFrameworks/issues/172","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"rgb + alpha -> blit to texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-04-06T19:40:28Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166209,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:57:36Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/171","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":171,"html_url":"https://github.com/openframeworks/openFrameworks/issues/171","assignee":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"title":"sexy shader example","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"}],"closed_at":null,"created_at":"2010-04-06T19:38:51Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166208,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-03T19:40:33Z","body":"can we do it?\r\nwe need cross platform:\r\nplayback \r\nstreaming\r\npitch\r\npan \r\nmultiplay \r\n\r\nfor us to be compatible with what exists. \r\nOpenAL seems like the best choice.\r\nWhat other options are there?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/167","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","number":8,"title":"0080 Release","due_on":"2013-01-01T08:00:00Z","closed_issues":0,"open_issues":3,"created_at":"2012-02-25T01:34:28Z","state":"open","description":"","id":88731},"number":167,"html_url":"https://github.com/openframeworks/openFrameworks/issues/167","assignee":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"title":"replace fmod","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2010-04-06T12:13:31Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":165898,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:56:41Z","body":"i have this working for 3d with selection buffer although it's meant to be slow i haven't had any problems","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/160","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":160,"html_url":"https://github.com/openframeworks/openFrameworks/issues/160","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"ofIsUnderMouse?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2010-04-05T21:39:19Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":165537,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:54:57Z","body":"Theo: I have this code uses the selection buffer. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/153","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":153,"html_url":"https://github.com/openframeworks/openFrameworks/issues/153","assignee":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"title":"ofIsOnScreen - ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2010-04-05T18:49:10Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":165409,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=14 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4930'), ('content-length', '13008'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"a63cf45ee23c003caf863065072ec4bb"'), ('date', 'Tue, 29 May 2012 19:27:23 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-02-29T11:13:10Z","body":"check out - http://www.openframeworks.cc/forum/viewtopic.php?p=19169#p19169\r\npossible integration into core. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/140","comments":4,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":140,"html_url":"https://github.com/openframeworks/openFrameworks/issues/140","assignee":null,"title":"texture compression and mipmaps for of texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-04-02T19:43:00Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":163959,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-12T16:15:52Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=10&t=3319","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/128","comments":4,"milestone":null,"number":128,"html_url":"https://github.com/openframeworks/openFrameworks/issues/128","assignee":null,"title":"ofxTCPServer doesn't manage connected clients correcly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-02-14T09:40:13Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"arturoc","id":48240},"id":132671,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T12:31:57Z","body":"Something that easily converts vector direction to openGL degrees?\r\nI find myself constantly trying to guess 270 - atan2(y, x)*RAD_TO_DEG ..... etc\r\nTo rotate something along a vector. \r\n\r\nMight be good to have it be aware of the GL world orientation - or have it so you pass in the up \r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/126","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":126,"html_url":"https://github.com/openframeworks/openFrameworks/issues/126","assignee":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"title":"ofATan2GL / ofVecToGL ?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-02-13T14:22:51Z","state":"open","user":{"url":"https://api.github.com/users/openframeworks","gravatar_id":"a858611b044a8302ab14cfe752e17369","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"openframeworks","id":142866},"id":132377,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-22T15:51:57Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=7&t=3299&p=17852#p17852","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/124","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","number":6,"title":"0073 Release","closed_issues":0,"due_on":"2012-07-30T07:00:00Z","open_issues":5,"created_at":"2011-12-03T15:37:49Z","state":"open","description":"","id":62090},"number":124,"html_url":"https://github.com/openframeworks/openFrameworks/issues/124","assignee":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"title":"TTF type rendering in OF - fix fuzziness ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography","color":"DDDDDD"}],"closed_at":null,"created_at":"2010-02-13T14:15:25Z","state":"open","user":{"url":"https://api.github.com/users/openframeworks","gravatar_id":"a858611b044a8302ab14cfe752e17369","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"openframeworks","id":142866},"id":132373,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T12:30:14Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=8&t=1374","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/121","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":121,"html_url":"https://github.com/openframeworks/openFrameworks/issues/121","assignee":null,"title":"video: loop is not working unless you call play first","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"closed_at":null,"created_at":"2010-02-10T23:16:23Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"arturoc","id":48240},"id":130269,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T12:30:49Z","body":"it would make sense to have an opengl stress test app, that can test some basic about wether or not someone has ARB support, how fast their systems are, etc. I can imagine that for 0.07, we'll be helping people debug shaders and FBOs, having some way to gauge what kind of system they are on and what it can take, will be helpful. \r\n\r\nHere's a simple test app from the Lua-AV folks that looks like a reasonable system: \r\n\r\nhttp://img191.imageshack.us/img191/1659/picture3po.png","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/115","comments":0,"milestone":null,"number":115,"html_url":"https://github.com/openframeworks/openFrameworks/issues/115","assignee":null,"title":"opengl stress test example","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-01-12T02:56:21Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":111018,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-28T14:02:04Z","body":"at the moment, we've got it like:\r\n\r\nofAppGlutWindow::ofAppGlutWindow(){\r\n\tfps\t\t\t\t= 60.0; //give a realistic starting value - win32 issues\r\n\tbFrameRateSet\t\t= false;\r\n}\r\n\r\nbut I personally prefer all apps to start with some kind of similar frame rate (ie, examples running really fast on mac, etc). see for example: \r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?p=16520&#p16520\r\n\r\nthis kind of thing leads to less \"cross-platform-ness\" and more confusion from beginners, no? \r\n\r\n- z\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/107","comments":8,"milestone":null,"number":107,"html_url":"https://github.com/openframeworks/openFrameworks/issues/107","assignee":null,"title":"should we start all OF apps with a frame rate set?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2009-12-31T15:10:45Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":104702,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-27T15:47:45Z","body":"videoGrabber and serial listDevices should return a vector of strings apart from printing to console","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/91","comments":4,"milestone":null,"number":91,"html_url":"https://github.com/openframeworks/openFrameworks/issues/91","assignee":null,"title":"listDevices should return a list of strings","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2009-12-09T17:11:40Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"arturoc","id":48240},"id":94898,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},null] + diff --git a/lib/github/tests/ReplayData/Issue33.setUp.txt b/lib/github/tests/ReplayData/Issue33.setUp.txt new file mode 100644 index 0000000000..0971a4feb7 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue33.setUp.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/users/openframeworks +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4984'), ('content-length', '564'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"a8e114c69001724baa16b7296683b6c7"'), ('date', 'Tue, 29 May 2012 06:43:33 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"public_repos":12,"type":"User","hireable":false,"blog":null,"url":"https://api.github.com/users/openframeworks","bio":null,"avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","public_gists":0,"company":null,"gravatar_id":"a858611b044a8302ab14cfe752e17369","login":"openframeworks","email":"","followers":399,"name":null,"created_at":"2009-10-21T21:54:37Z","location":null,"id":142866,"following":4,"html_url":"https://github.com/openframeworks"} + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4983'), ('content-length', '1253'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"b765d626a03448a6b078da9e936f51b4"'), ('date', 'Tue, 29 May 2012 06:43:34 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"clone_url":"https://github.com/openframeworks/openFrameworks.git","has_downloads":true,"watchers":1741,"updated_at":"2012-05-29T04:44:30Z","permissions":{"pull":true,"admin":false,"push":false},"homepage":"http://openframeworks.cc","url":"https://api.github.com/repos/openframeworks/openFrameworks","has_wiki":true,"has_issues":true,"fork":false,"forks":349,"size":3792,"private":false,"open_issues":338,"svn_url":"https://github.com/openframeworks/openFrameworks","owner":{"url":"https://api.github.com/users/openframeworks","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"a858611b044a8302ab14cfe752e17369","login":"openframeworks","id":142866},"name":"openFrameworks","language":"C","description":"OpenFrameworks is a cross platform open source toolkit for creative coding in C++.","ssh_url":"git@github.com:openframeworks/openFrameworks.git","git_url":"git://github.com/openframeworks/openFrameworks.git","pushed_at":"2012-05-28T19:23:35Z","created_at":"2009-10-21T21:55:54Z","id":345337,"mirror_url":null,"html_url":"https://github.com/openframeworks/openFrameworks","full_name":"openframeworks/openFrameworks"} + diff --git a/lib/github/tests/ReplayData/Issue33.testClosedIssues.txt b/lib/github/tests/ReplayData/Issue33.testClosedIssues.txt new file mode 100644 index 0000000000..296f484795 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue33.testClosedIssues.txt @@ -0,0 +1,418 @@ +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4995'), ('content-length', '43496'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last"'), ('etag', '"d63f11ca1f530464908888e7f87e4703"'), ('date', 'Tue, 29 May 2012 18:46:20 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-29T15:15:44Z","body":"Purge .svn directories from pugixmlLib. Closes #1282.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1283","comments":11,"milestone":null,"number":1283,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1283","assignee":null,"title":"Fix #1282","labels":[],"closed_at":"2012-05-29T13:06:59Z","created_at":"2012-05-29T12:27:44Z","state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":4793868,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1283","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1283.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1283.diff"}},{"updated_at":"2012-05-29T13:07:00Z","body":"A svn checkout of the git repo fails because of .svn dirs inside the repository. I suggest you remove them since they interfere with the svn backend of github...\n\nI'm not sure if this is relevant but you can include an svn repo inside a git repo.. \nhttp://stackoverflow.com/questions/746151/add-svn-repo-to-existing-git-repo\n\nOtherwise add the .svn dirs too .gitignore\n\nsvn: warning: Failed to add directory 'openFrameworks/apps/devApps/projectGenerator/src/pugixmlLib/.svn': an unversioned directory of the same name already exists\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1282","comments":1,"milestone":null,"number":1282,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1282","assignee":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"title":"remove .svn dirs from git repo","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"}],"closed_at":"2012-05-29T13:07:00Z","created_at":"2012-05-29T10:09:06Z","state":"closed","user":{"url":"https://api.github.com/users/sphaero","gravatar_id":"f17e8b6636b46f5bfacbda5854842eb9","login":"sphaero","avatar_url":"https://secure.gravatar.com/avatar/f17e8b6636b46f5bfacbda5854842eb9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":832465},"id":4792153,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-28T16:34:15Z","body":"sorry,the projectGenerator in the main.cpp the last part which is testApp *app = new testApp;currenly missing the * before the app,cheers.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1281","comments":2,"milestone":null,"number":1281,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1281","assignee":null,"title":"projectGenerator missing pointer *app","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":"2012-05-28T16:34:15Z","created_at":"2012-05-28T16:23:26Z","state":"closed","user":{"url":"https://api.github.com/users/liquidzym","gravatar_id":"166640c513e589c86d2de49c52258eb4","login":"liquidzym","avatar_url":"https://secure.gravatar.com/avatar/166640c513e589c86d2de49c52258eb4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":51957},"id":4782585,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-26T19:55:06Z","body":"both the install_dependencies script and make in openFrameworks/libs/openFrameworksCompiled/project/linux64 is giving me this\n\n../../../openFrameworks/gl/ofFbo.cpp:28:0: warning: \"GL_UNSIGNED_INT_24_8\" redefined [enabled by default]\n../../../glew/include/GL/glew.h:3348:0: note: this is the location of the previous definition\n../../../openFrameworks/gl/ofFbo.cpp: In member function ‘void ofFbo::allocate(int, int, int, int)’:\n../../../openFrameworks/gl/ofFbo.cpp:396:5: error: ‘textureTarget’ was not declared in this scope\nmake: *** [obj/Release/openFrameworks/gl/ofFbo.o] Error 1\n\n\nuname -a\nLinux ktower 3.2.0-23-generic #36-Ubuntu SMP Tue Apr 10 20:39:51 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux\n\n cat /etc/issue\nUbuntu 12.04 LTS \n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1278","comments":1,"milestone":null,"number":1278,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1278","assignee":null,"title":"ofFbo causing linux to fail to compile","labels":[],"closed_at":"2012-05-26T19:55:06Z","created_at":"2012-05-26T19:18:55Z","state":"closed","user":{"url":"https://api.github.com/users/jvcleave","gravatar_id":"9c0384a91739bea093f453cf40a59742","login":"jvcleave","avatar_url":"https://secure.gravatar.com/avatar/9c0384a91739bea093f453cf40a59742?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":150037},"id":4767640,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-25T18:53:31Z","body":"Fixed iOS depth component type. Added iOS depth needs stencil. Disabled depth as tex for iOS as it doesn't work. Added retain for the the depth and stencil buffers.\n\nTested both with and without texture depth on osx and iOS.\nAlso tested with ARB and non ARB.\niOS depth as texture doesn't work afaikt, so I disabled it.\niOS also needs stencil enabled for depth to work - so its handled now automatically in allocate.\n\nOne issue still remains - is because retain(int id) is a static function in ofTexture.cpp we can't retain the depthStencilTexture - this produces an error at the end of the app.\n\n\t\tOF: OF_LOG_ERROR: trying to delete a non indexed texture, something weird is happening. Deleting anyway\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1276","comments":0,"milestone":null,"number":1276,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1276","assignee":null,"title":"Fixed non ARB_RECT depth and stencil textures coords and power-of-two.......","labels":[],"closed_at":"2012-05-25T18:53:31Z","created_at":"2012-05-25T18:31:54Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":4758507,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1276","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1276.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1276.diff"}},{"updated_at":"2012-05-25T16:54:02Z","body":"@ofTheo this has all your changes but refactored in a different way so there's less ifdef's. it also keeps depth/stencil as texture for openGL ES but i haven't been able to test it cause actually in android depth and stencil is not supported except in openGL ES 2 if you can give it a try in iOS and if it doesn't work we can just set the flag to false in GL ES and log.\n\nI've also disabled the mandatory stencil + depth for GL ES. from some posts in the forum, it seems like it should work just not the way it was done before, also if you can try it, if it doesn't work just uncomment the first lines in allocate which set stencil if depth is enabled\n\nstencil only doesn't work for me in the desktop either but it's the same as before so it's probably my implementation which doesn't support stencil only or the current code is broken.\n\nhere's a simple test for the depthAsTexture:\n\n\tofFbo::Settings settings;\n\tsettings.depthStencilAsTexture = true;\n\tsettings.width=640;\n\tsettings.height=480;\n\tsettings.useDepth=true;\n\tsettings.useStencil=true;\n\tdepth.allocate(settings);\n\n\n\tdepth.begin(true);\n\tglEnable(GL_DEPTH_TEST);\n\tofBox(0,0,0,100);\n\tofBox(100,100,-100,100);\n\tofBox(300,300,-300,100);\n\tdepth.end();\n\n\tglDisable(GL_DEPTH_TEST);\n\n\nthen in draw\n\n depth.getDepthTexture().draw(0,0);\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1275","comments":2,"milestone":null,"number":1275,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1275","assignee":null,"title":"Fbo refactor","labels":[],"closed_at":"2012-05-25T16:20:08Z","created_at":"2012-05-25T10:42:18Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":4751356,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1275","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1275.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1275.diff"}},{"updated_at":"2012-05-25T10:36:13Z","body":"different refactoring of the fbo allocate function. now it has variables to setup the different options and less ifdefs. it also mantains the depth in texture for GL ES. actually in android depth and stencil is not supported except in openGL ES 2 so feel free to change it to whatever works in iOS\n\nstencil only doesn't work for me in the desktop either but it's the same as before so it's probably my implementation which doesn't support stencil only or the current code is broken.\n\nhere's a simple test for the depthAsTexture:\n\n\tofFbo::Settings settings;\n\tsettings.depthStencilAsTexture = true;\n\tsettings.width=640;\n\tsettings.height=480;\n\tsettings.useDepth=true;\n\tsettings.useStencil=true;\n\tsettings.depthStencilInternalFormat=GL_DEPTH_COMPONENT32;\n\tdepth.allocate(settings);\n\n\n\tdepth.begin(true);\n\tglEnable(GL_DEPTH_TEST);\n\tofBox(0,0,0,100);\n\tofBox(100,100,-100,100);\n\tofBox(300,300,-300,100);\n\tdepth.end();\n\n\tglDisable(GL_DEPTH_TEST);\n\n\nthen in draw\n\n depth.getDepthTexture().draw(0,0);\n\ni've added some comments in allocate for things i've changed for openGL ES if someone can try iOS and verify it's working?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1274","comments":4,"milestone":null,"number":1274,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1274","assignee":null,"title":"Fbo cleanup arturo","labels":[],"closed_at":"2012-05-25T10:36:13Z","created_at":"2012-05-25T00:18:28Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":4746034,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1274","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1274.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1274.diff"}},{"updated_at":"2012-05-25T18:26:28Z","body":"hi!\n\nI wanted to start testing openFrameworks on several linux distros with VirtualBox but I can't generate any Makefiles to test the examples because the projectGenerator is not running.\n\n $ ./projectGenerator --allexamples\n OF: OF_LOG_ERROR: Error: Missing GL version\n\nbut `glxinfo` shows everything correct and `glxgears` is running fine. I can't try to compile examples, because I need the projectGenerator to create Makefiles, but I can remember every example runned slow but fine in a VM while I tested 007 for releasing.\n\nI did a quick search and found this https://forums.virtualbox.org/viewtopic.php?f=3&t=30964 but even\n LIBGL_ALWAYS_INDIRECT=1 ./projectGenerator --allexamples\nends with the same error. Maybe this helps in some way.\n\nAnother things is: Would it be a good idea to run the PG without any GL stuff when I'm in headless mode? (Could be hard if its a normal OF app under the hood)\n\nPlease let me know what I can do. I'm willing to test everything further....","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1273","comments":6,"milestone":null,"number":1273,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1273","assignee":null,"title":"projectGenerator does not run in a VM","labels":[],"closed_at":"2012-05-25T18:26:28Z","created_at":"2012-05-24T15:23:39Z","state":"closed","user":{"url":"https://api.github.com/users/benben","gravatar_id":"614a4e493d7c353296519bba720e77c5","login":"benben","avatar_url":"https://secure.gravatar.com/avatar/614a4e493d7c353296519bba720e77c5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":124513},"id":4736394,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-28T09:58:24Z","body":"hi!\n\nthe PG is not compiling on Fedora16. After running all installation scripts and `make` in the PG folder I get\n\n /usr/bin/ld: ../../../libs/openFrameworksCompiled/lib/linux/libopenFrameworks.a(ofTexture.o): undefined reference to symbol 'gluBuild2DMipmaps'\n /usr/bin/ld: note: 'gluBuild2DMipmaps' is defined in DSO /usr/lib/libGLU.so.1 so try adding it to the linker command line\n /usr/lib/libGLU.so.1: could not read symbols: Invalid operation\n collect2: ld returned 1 exit status\n make: *** [bin/projectGenerator] Error 1\n\nActually I don't know much about the development of the PG, so maybe I have fixed it in the wrong place. If so, please let me know.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1272","comments":1,"milestone":null,"number":1272,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1272","assignee":null,"title":"add -lGLU to config.make of PG to build on fedora16","labels":[],"closed_at":"2012-05-28T09:58:24Z","created_at":"2012-05-24T13:22:43Z","state":"closed","user":{"url":"https://api.github.com/users/benben","gravatar_id":"614a4e493d7c353296519bba720e77c5","login":"benben","avatar_url":"https://secure.gravatar.com/avatar/614a4e493d7c353296519bba720e77c5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":124513},"id":4732838,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1272","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1272.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1272.diff"}},{"updated_at":"2012-05-25T08:12:47Z","body":"Since @benben seems to be off the radar, I prepared a PR for this.\nCAUTION: Lacking a fedora install, I can't test/verify this, but it seems a logical/trivial change enough to warrant that. \nCloses #844.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1270","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1270,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1270","assignee":null,"title":"Add libmpg123-devel to fedora codec install script","labels":[],"closed_at":"2012-05-25T08:12:47Z","created_at":"2012-05-22T14:05:24Z","state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":4691127,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1270","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1270.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1270.diff"}},{"updated_at":"2012-05-22T14:10:14Z","body":"Little less efficient but does not rely on addons.make order or directory listing order.\n\nInstead performs exhaustive search on any unique file name post adding debug/release libs...this means it checks every debug lib against every other lib several times, but it does solve the bug :-)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1269","comments":5,"milestone":null,"number":1269,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1269","assignee":null,"title":"Fixes issue #1268 - PG now sorts VS Debug and Release libs correctly on all platforms","labels":[],"closed_at":"2012-05-21T18:39:33Z","created_at":"2012-05-21T15:32:13Z","state":"closed","user":{"url":"https://api.github.com/users/gameoverhack","gravatar_id":"397ac2141aace0681a354185e7efb0f1","login":"gameoverhack","avatar_url":"https://secure.gravatar.com/avatar/397ac2141aace0681a354185e7efb0f1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331599},"id":4673269,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1269","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1269.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1269.diff"}},{"updated_at":"2012-05-20T10:26:53Z","body":"I found an inheritance ambiguity issue in within ofVideoPlayer, which also was present in ofVideoGrabber.\nI fixed it by making the inherited class virtual (I don't know if this is the correct way to call this). Just check the code diff.\nThis issue arose when I was trying to compile some of the examples from kyle's ofxCV addon.\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1267","comments":1,"milestone":null,"number":1267,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1267","assignee":null,"title":"Fix multiple inheritance ambiguity","labels":[],"closed_at":"2012-05-20T10:26:53Z","created_at":"2012-05-20T05:38:45Z","state":"closed","user":{"url":"https://api.github.com/users/roymacdonald","gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","login":"roymacdonald","avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":974878},"id":4658367,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1267","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1267.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1267.diff"}},{"updated_at":"2012-05-20T10:27:43Z","body":"it looks like the inheritance hierarchy of ofVideoGrabber has changed, breaking ofxCv. so when you try to say toCv(cam) for an ofVideoGrabber or ofVideoPlayer it gives the error in the title.\n\nit looks like the reason for this is that ofBaseVideo is inherited via ofBaseVideoGrabber and ofBaseVideoDraws (both which inherit from ofBaseHasPixels).\n\nshouldn't only one of these be inheriting from ofBaseHasPixels? not just because it breaks ofxCv, but i think maybe it will break some other things too or introduce some ambiguities elsewhere?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1266","comments":1,"milestone":null,"number":1266,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1266","assignee":null,"title":"'ofBaseHasPixels_' is an ambiguous base of 'ofVideoGrabber'","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":"2012-05-20T10:27:43Z","created_at":"2012-05-19T00:28:09Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":4651645,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-17T19:34:12Z","body":"Turns out the problem with the openCV libs on mingw32 is a very old bug to do with the implementation of SSE/SSE2 in GNU GCC or in the way that individual functions/libraries align bits on the stack.\n\nBoiling it all down: what (I think) happens is that non-aligned code calls an aligned stack and you get a segmentation fault.\n\nThere seem to be 2 workarounds: compiling with -mpreferred-stack-boundary=2 or -mstackrealign ... it's all a bit over my head but it seems that - the latter is the better way to go, see:\n\nhttp://gcc.gnu.org/bugzilla/show_bug.cgi?id=40838#c80 \n\nand the feedback from openCV bug report: \n\nhttp://code.opencv.org/issues/1932#note-3\n\nBoth workarounds bring efficiency back to same or better than VS openCV 2.3.1 lib performance.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1265","comments":0,"milestone":null,"number":1265,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1265","assignee":null,"title":"Better fix for issue #1253. openCV 2.3.1 mingw32 compiled with SSE/SSE2, -O3 and -mstackrealign","labels":[],"closed_at":"2012-05-17T19:34:12Z","created_at":"2012-05-17T19:15:50Z","state":"closed","user":{"url":"https://api.github.com/users/gameoverhack","gravatar_id":"397ac2141aace0681a354185e7efb0f1","login":"gameoverhack","avatar_url":"https://secure.gravatar.com/avatar/397ac2141aace0681a354185e7efb0f1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331599},"id":4630039,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1265","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1265.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1265.diff"}},{"updated_at":"2012-05-25T01:08:45Z","body":"...upport for POT textures. Lots of fixes for iOS also. Please take a look.\nThis is related to issue #1263\n\nwould be good to have eyes on from @damiannz @elliotwoods @memotv @kylemcdonald @obviousjim @julapy @arturoc and anyone who knows about fbos :) \n\nsome of the big changes are:\n1) make the depth as texture and stencil as texture match the texture type of the main fbo texture ( ie ARB if main is ARB and TEX_2D if main is TEX_2D ). \n2) if depth textures are TEX_2D then calculating the proper t and u coords based on the requested sizes and the adjusted pot sizes. \n3) check for ofGetUsingArb when FBO initializes - instead of being hard coded to ARB\n4) less ifdefs for OPENGL_ES \n5) auto addition of stencil buffer for ios fbo that has depth requested ( need both to get a depth buffer )\n6) auto pot for iOS now works with depth buffer\n7) general redundent code cleanup. \n\nmainly tested this on iOS - need to test more on desktop - but would be great to have fbo heads look at this. \nFor example depth and stencil textures had TEXTURE_2D hardcoded - maybe there was a reason for this?\n\n\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1264","comments":13,"milestone":null,"number":1264,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1264","assignee":null,"title":"cleanup for ofFbo.cpp - tries to reduce redundent code and also better s...","labels":[],"closed_at":"2012-05-25T01:08:45Z","created_at":"2012-05-17T15:09:51Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":4625581,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1264","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1264.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1264.diff"}},{"updated_at":"2012-05-16T13:43:25Z","body":"I added a .mailmap file to the repo to correctly collate all the contributors in spite of changing nick names/email addresses. This is useful when trying to identify contributors for a changelog or similar, or when using the git logging functions like shortlog.\n\nSee the before/after situation here: https://gist.github.com/2710366\n\nI have respected privacy and only used those real names that people have already given in a git ID in the repo. Mainly this addition only associates the different email addresses to one user. @arturoc wins the prize of most used emails! :-)\nThe list is pretty complete, I only had difficulties to associate some IDs to the correct Zachs, since it was not clear for some if @ofZach or @stfj/Zach Gage was the contributor. Those were left as-is.\n\nIf anybody has objections to their various email being united under their name, please say so and I will correct/remove the relevant entries.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1261","comments":1,"milestone":null,"number":1261,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1261","assignee":null,"title":"Add .mailmap for contributor collation","labels":[],"closed_at":"2012-05-16T13:43:25Z","created_at":"2012-05-16T13:42:47Z","state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":4604623,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1261","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1261.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1261.diff"}},{"updated_at":"2012-05-16T11:42:53Z","body":"in core.xcconfig rtaudio should be rtAudio for HFS case sensitive filesystems, cf #733","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1259","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1259,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1259","assignee":null,"title":"Fix OSX rtAudio path case ","labels":[],"closed_at":"2012-05-16T11:42:53Z","created_at":"2012-05-15T17:46:34Z","state":"closed","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"id":4588917,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1259","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1259.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1259.diff"}},{"updated_at":"2012-05-18T08:28:15Z","body":"These are the same libs as in https://github.com/gameoverhack/openFrameworks/tree/bugfix-openCV231_O1_WITH_SSE but without the modification to the opencvExample used for testing efficiency.\n\nThose tests showed that these libs were around 4-5% slower than the VS libs when running in Release mode.\n\nI tried a lot of different variations of BUILD options - these libs are compiled with same/similiar options as VS, linux and Mac OSX libs - but when I tried turning off all WITH options I did not get a libopencv_ts231.a and since the byte size of all other resulting libs was the same as these ones I think it's best to just go ahead and use them.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1258","comments":2,"milestone":null,"number":1258,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1258","assignee":null,"title":"Fixes #1253 by re-compiling openCV for mingw32 with -O1","labels":[],"closed_at":"2012-05-15T19:35:38Z","created_at":"2012-05-15T15:26:58Z","state":"closed","user":{"url":"https://api.github.com/users/gameoverhack","gravatar_id":"397ac2141aace0681a354185e7efb0f1","login":"gameoverhack","avatar_url":"https://secure.gravatar.com/avatar/397ac2141aace0681a354185e7efb0f1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331599},"id":4586112,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1258","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1258.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1258.diff"}},{"updated_at":"2012-05-14T11:29:32Z","body":"hey guys,\n\nafter pulling from develop (into my fork) two days ago I can't build opencv related projects anymore. today i tested the openCv example with a fresh and clean oF clone on linux32 and linux64. on linux32 everything works fine but on linux64 i still get the following linking error\n\n\n>../../../addons/ofxOpenCv/libs/opencv/lib/linux64/libopencv_calib3d.a(circlesgrid.o):\n>In function `CirclesGridClusterFinder::hierarchicalClustering(...)':\n>circlesgrid.cpp: undefined reference to `std::__detail::_List_node_base::_M_hook(std::__detail::_List_node_base*)'\n>circlesgrid.cpp: undefined reference to `std::__detail::_List_node_base::_M_transfer(std::__detail::_List_node_base*, std::__detail::_List_node_base*)'\n>collect2: ld returned 1 exit status\n\nor is this a gcc version issue? i'm working on ubuntu 11.04","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1255","comments":2,"milestone":null,"number":1255,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1255","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"linux64 opencv libraries are broken","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":"2012-05-14T11:29:32Z","created_at":"2012-05-13T17:36:13Z","state":"closed","user":{"url":"https://api.github.com/users/fx-lange","gravatar_id":"f229f28e1a7bfcfee4e7580660cbcfd7","login":"fx-lange","avatar_url":"https://secure.gravatar.com/avatar/f229f28e1a7bfcfee4e7580660cbcfd7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1012266},"id":4553864,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-29T16:32:01Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1254","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1254,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1254","assignee":null,"title":"Adding ofClear(ofColor c) just a detail","labels":[],"closed_at":"2012-05-29T16:32:01Z","created_at":"2012-05-12T19:15:59Z","state":"closed","user":{"url":"https://api.github.com/users/patriciogonzalezvivo","gravatar_id":"69406d376e65f8070acfbe220f246989","login":"patriciogonzalezvivo","avatar_url":"https://secure.gravatar.com/avatar/69406d376e65f8070acfbe220f246989?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":346914},"id":4548835,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1254","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1254.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1254.diff"}},{"updated_at":"2012-05-17T17:06:39Z","body":"When testing opencvExample against current openCV 2.3.1 static libs in Code::Blocks the application always quits. Debug only shows that this is a SIGSEGV on either cvThreshold or cvFindContour (depending on whether you comment one or the other out). Stack trace is not very helpful, but reports segmentation fault on cv::thresh_8u.\n\nAfter a lot of testing I believe this is a quite specific bug in openCV relating to SSE/SSE2 and optimization level of the build. See:\n\nhttp://code.opencv.org/issues/596\nand\nhttp://code.opencv.org/issues/1896\n\nIn order to confirm this I tried the following with 2.3.0, 2.3.1 and 2.4.0\n\n1. With openCV compiled with SSE/SSE2 on, release and -O3 there IS problems - eg., cvThreshold and cvFindContours crash with SIGSEGV. Current openCV libs in develop seem to be compiled with these settings as they exhibit same crash pattern.\n2. With openCV compiled with SSE/SSE2 off, release and -O3 there is no problem.\n3. With openCV compiled with SSE/SSE2 on, debug and -O3 there is no problem.\n4. With openCV compiled with SSE/SSE2 on, release and -O1 there is no problem. (you can find these here: https://github.com/gameoverhack/openframeworks/tree/bugfix-openCV231)\n\nI am using cmake 2.8, latest openCV downloaded from sourceforge (not SVN) mingw 4.4.1 on a native win 7 box (core 2 duo 4gb ram - fresh install).\n\nBefore making a pull request I figure there needs to be input from everyone about:\na) do we turn SSE/SSE2 off? - I think this will affect efficiency for many functions\nb) what is the difference in efficiency with -O1 vs -O3?\nc) can someone on a machine with more modern GCC manage to compile with -O2\nd) people need to test these libs to see if they are stable\ne) some other magic ;-)\n\nif it is helpful I can upload the many different versions of the libs I have compiled for testing, but #4 above is the only combo with SSE/SSE2 that ran on my machine - which is fairly common configuration...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1253","comments":3,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1253,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1253","assignee":null,"title":"openCV mingw32 libs crash","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/critical","name":"critical","color":"ff0000"}],"closed_at":"2012-05-15T19:35:49Z","created_at":"2012-05-12T13:19:39Z","state":"closed","user":{"url":"https://api.github.com/users/gameoverhack","gravatar_id":"397ac2141aace0681a354185e7efb0f1","login":"gameoverhack","avatar_url":"https://secure.gravatar.com/avatar/397ac2141aace0681a354185e7efb0f1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331599},"id":4546918,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-10T17:13:40Z","body":"When binding a texture to an ofBox on iOS, it seems to render oddly where certain sides are transparent. Related post on OF forum with image examples below:\r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,9765.new.html#new","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1248","comments":1,"milestone":null,"number":1248,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1248","assignee":null,"title":"ofxBox + bind texture renders oddly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2012-05-10T17:13:40Z","created_at":"2012-05-10T03:36:01Z","state":"closed","user":{"url":"https://api.github.com/users/cerupcat","gravatar_id":"91b3d4bfbbb99d840b096cde3af877bf","login":"cerupcat","avatar_url":"https://secure.gravatar.com/avatar/91b3d4bfbbb99d840b096cde3af877bf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":204151},"id":4506336,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-09T19:38:46Z","body":"Fixes issue #1246 ofSystemDialog behaves correctly in VS2010\r\n\r\nTested in CB and VS and seems all a-ok now...was a wide char conversion thing.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1247","comments":0,"milestone":null,"number":1247,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1247","assignee":null,"title":"Bugfix issue #1246 ofSystemDialog in VS","labels":[],"closed_at":"2012-05-09T19:38:46Z","created_at":"2012-05-09T19:24:01Z","state":"closed","user":{"url":"https://api.github.com/users/gameoverhack","gravatar_id":"397ac2141aace0681a354185e7efb0f1","login":"gameoverhack","avatar_url":"https://secure.gravatar.com/avatar/397ac2141aace0681a354185e7efb0f1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331599},"id":4499600,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1247","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1247.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1247.diff"}},{"updated_at":"2012-05-09T20:13:47Z","body":"Heya!\r\ncommits\r\n3b0d89e435307ac528ddf3c164d20532ce070b7b\r\nand\r\nb4f59794e790289996f35a7fe04bd58d38dd65f9\r\n\r\nbreaks file loading in windows rather than fixing it (it worked before!)\r\n\r\ni presume it fixes it for minigw, but breaks it for vs.\r\nreverting to old version for now. Could you have a look at this @gameoverhack ?\r\ni guess marshalling the changes for mingw only would be the way?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1246","comments":4,"milestone":null,"number":1246,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1246","assignee":null,"title":"ofSystemLoadDialog broken on VS2010","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"}],"closed_at":"2012-05-09T20:13:47Z","created_at":"2012-05-09T06:47:16Z","state":"closed","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":4487374,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-24T09:53:58Z","body":"please do not merge just yet.\r\nthis is still a WIP up for discussion in #820","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1244","comments":6,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1244,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1244","assignee":null,"title":"movie player fixes / optimisations","labels":[],"closed_at":"2012-05-23T14:15:50Z","created_at":"2012-05-06T15:31:42Z","state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"id":4443897,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1244","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1244.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1244.diff"}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=2&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4994'), ('content-length', '44978'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"9d6a7179674e934a6c984fd3ee1a6c10"'), ('date', 'Tue, 29 May 2012 18:46:21 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-06T13:15:27Z","body":"fixed videoGrabber orientation issue.\r\nadded support for UIDeviceOrientationPortraitUpsideDown.\r\n\r\ncloses #1207","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1243","comments":0,"milestone":null,"number":1243,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1243","assignee":null,"title":"ios video grabber orientation fix","labels":[],"closed_at":"2012-05-06T13:15:27Z","created_at":"2012-05-06T12:52:50Z","state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"id":4442888,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1243","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1243.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1243.diff"}},{"updated_at":"2012-05-16T12:16:08Z","body":"removed xcode templates folder. It's a bit out of date now!","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1242","comments":6,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1242,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1242","assignee":null,"title":"Feature removedxcodetemplatesfolder","labels":[],"closed_at":"2012-05-16T12:16:08Z","created_at":"2012-05-05T10:13:24Z","state":"closed","user":{"url":"https://api.github.com/users/memo","gravatar_id":"b5c0e3c2630097b29680cfeda464024c","login":"memo","avatar_url":"https://secure.gravatar.com/avatar/b5c0e3c2630097b29680cfeda464024c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144230},"id":4435701,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1242","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1242.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1242.diff"}},{"updated_at":"2012-05-04T22:40:39Z","body":"I think Poco needs to be recompiled for the latest version of ofAndroid. I am getting these errors upon building: \r\n\r\nobj/androidRelease/addons/ofxAndroid/src/ofAppAndroidWindow.o: In function `ofxRegisterMultitouch(ofxAndroidApp*)':\r\nofAppAndroidWindow.cpp:(.text+0x10c0): undefined reference to `ofEvents()'\r\nofAppAndroidWindow.cpp:(.text+0x10ec): undefined reference to `ofEvents()'\r\nofAppAndroidWindow.cpp:(.text+0x1114): undefined reference to `ofEvents()'\r\nofAppAndroidWindow.cpp:(.text+0x113c): undefined reference to `ofEvents()'\r\nofAppAndroidWindow.cpp:(.text+0x1168): undefined reference to `ofEvents()'\r\nobj/androidRelease/addons/ofxAndroid/src/ofAppAndroidWindow.o: In function `ofGetOFActivityObject()':\r\nofAppAndroidWindow.cpp:(.text+0x12d8): undefined reference to `ofLog::padding'\r\nobj/androidRelease/addons/ofxAndroid/src/ofAppAndroidWindow.o: In function `Java_cc_openframeworks_OFAndroid_render':\r\nofAppAndroidWindow.cpp:(.text+0x1380): undefined reference to `ofEvents()'\r\nofAppAndroidWindow.cpp:(.text+0x1398): undefined reference to `ofEvents()'\r\nofAppAndroidWindow.cpp:(.text+0x13ac): undefined reference to `ofEvents()'\r\nofAppAndroidWindow.cpp:(.text+0x13bc): undefined reference to `ofEvents()'\r\nobj/androidRelease/addons/ofxAndroid/src/ofAppAndroidWindow.o: In function `Java_cc_openframeworks_OFAndroid_onTouchUp':\r\nofAppAndroidWindow.cpp:(.text+0x1818): undefined reference to `ofEvents()'\r\nobj/androidRelease/addons/ofxAndroid/src/ofAppAndroidWindow.o:ofAppAndroidWindow.cpp:(.text+0x18d0): more undefined references to `ofEvents()' follow\r\nobj/androidRelease/addons/ofxAndroid/src/ofxAndroidSoundPlayer.o: In function `_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E.clone.0':\r\nofxAndroidSoundPlayer.cpp:(.text+0x354): undefined reference to `ofLog::padding'\r\nobj/androidRelease/addons/ofxAndroid/src/ofxAndroidSoundStream.o: In function `ofxAndroidSoundStream::androidInputAudioCallback(_JNIEnv*, _jobject*, _jshortArray*, int, int)':\r\nofxAndroidSoundStream.cpp:(.text+0xdbc): undefined reference to `ofLog::padding'\r\nobj/androidRelease/addons/ofxAndroid/src/ofxAndroidSoundStream.o: In function `ofxAndroidSoundStream::androidOutputAudioCallback(_JNIEnv*, _jobject*, _jshortArray*, int, int)':\r\nofxAndroidSoundStream.cpp:(.text+0x10bc): undefined reference to `ofLog::padding'\r\ncollect2: ld returned 1 exit status\r\nmake[1]: *** [libs/armeabi/libOFAndroidApp.so] Error 1\r\nmake: *** [AndroidRelease] Error 2\r\n\r\nThe application crashed when installed and ran on an android device, also posted this issus on the OF forum: http://forum.openframeworks.cc/index.php/board,27.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1241","comments":6,"milestone":null,"number":1241,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1241","assignee":null,"title":"ofAndroid: undefined reference to `ofEvents()' ","labels":[],"closed_at":"2012-05-04T22:09:49Z","created_at":"2012-05-04T19:59:58Z","state":"closed","user":{"url":"https://api.github.com/users/rezaali","gravatar_id":"548374013b9c6e50ebbd2294e12d4f31","login":"rezaali","avatar_url":"https://secure.gravatar.com/avatar/548374013b9c6e50ebbd2294e12d4f31?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":555207},"id":4430168,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-16T11:43:23Z","body":"I found a bug in the linux/cleanAllExamples.sh script - it only cleans the first example it encounters.\r\noutput e.g.\r\n\r\n\t-----------------------------------------------------------------\r\n\tcleaning + meshFromCamera\r\n\t./cleanAllExamples.sh: line 16: cd: meshFromCamera: No such file or directory\r\n\trm -rf obj/i686Release/\r\n\trm -f bin/advanced3dExample_debug bin/advanced3dExample\r\n\trm -r bin/libs\r\n\trm: cannot remove `bin/libs': No such file or directory\r\n\tmake: *** [clean] Error 1\r\n\t-----------------------------------------------------------------\r\n\r\nThere's a `cd ..` missing at https://github.com/openframeworks/openFrameworks/blob/develop/scripts/linux/cleanAllExamples.sh#L24\r\nThis PR fixes teh bug.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1240","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1240,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1240","assignee":null,"title":"Fix cleanAllExamples script","labels":[],"closed_at":"2012-05-16T11:43:23Z","created_at":"2012-05-04T11:12:27Z","state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":4421886,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1240","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1240.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1240.diff"}},{"updated_at":"2012-05-29T15:02:47Z","body":"Adds two new forms of ofToString:\r\n\r\n~~~~\r\nstring ofToString(const T& value, int width, char fill );\r\n~~~~\r\n\r\nBehaves like `\"%04d\"` or `\"%04f\"` arguments to `printf`, with `width=4` and `fill='0'` in this example. Use to prettily align numbers, using `fill=' '`.\r\n\r\n~~~~\r\nstring ofToString(const T& value, int precision, int width, char fill=' ' );\r\n~~~~\r\n\r\n\r\nBehaves like `\"%04.2f\"` with `width=4`, `precision=2` and `fill='0'` in this example.\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1238","comments":7,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1238,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1238","assignee":null,"title":"Feature: ofToString float formatting arguments","labels":[],"closed_at":"2012-05-29T15:02:47Z","created_at":"2012-05-03T14:31:05Z","state":"closed","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"id":4406071,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1238","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1238.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1238.diff"}},{"updated_at":"2012-05-03T04:33:15Z","body":"OFXIPHONE_UNKNOWN_DEVICE missing from ofxiPhoneDeviceType.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1237","comments":0,"milestone":null,"number":1237,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1237","assignee":null,"title":"OFXIPHONE_UNKNOWN_DEVICE missing from ofxiPhoneDeviceType.","labels":[],"closed_at":"2012-05-03T04:33:15Z","created_at":"2012-05-03T04:31:57Z","state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"id":4399262,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1237","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1237.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1237.diff"}},{"updated_at":"2012-05-01T19:05:17Z","body":"I'd like to propose a \"minor\" change to the [OF style guide](https://github.com/openframeworks/openFrameworks/wiki/oF-code-style). I realize that it is based on, yet deviates from, the [Qt style guide](http://wiki.qt-project.org/Coding_Style) and that this issue is a matter of style.\r\n\r\nHowever, I disagree with the whitespace rule with control structures, parenthesized conditions and braces.\r\n\r\nI would like to change the style guide to:\r\n\r\n```\r\nif (foo) {\r\n}\r\n\r\nswitch (foo) {\r\n}\r\n\r\nwhile (foo) {\r\n}\r\n\r\nclass Foo {\r\n}\r\n\r\nvoid methodName(int foo) {\r\n}\r\n```\r\n\r\nI would like to propose this documented style change before committing a patch that makes the above changes. The lack of whitespace between parens and braces, and between flow-control keywords and parens seems to go against the grain of the overall \"Qt-like\" style that the style guide is based on, and postmodern best practices for legibility in C-like languages.\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1231","comments":6,"milestone":null,"number":1231,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1231","assignee":null,"title":"style guide brace-related whitespace guide change","labels":[],"closed_at":"2012-05-01T17:33:30Z","created_at":"2012-05-01T17:14:01Z","state":"closed","user":{"url":"https://api.github.com/users/ybakos","gravatar_id":"41a619faa9d2d02404b369744575b1a6","login":"ybakos","avatar_url":"https://secure.gravatar.com/avatar/41a619faa9d2d02404b369744575b1a6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":5502},"id":4370196,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-01T12:44:52Z","body":"the cvLoad call to load the haar xml results in:\r\n\r\nstrtod$UNIX2003 called from function _ZL16icvXMLParseValueP13CvFileStoragePcP10CvFileNodei in image opencvFaceExample.\r\n\r\nand then it crashes. \r\n\r\nXcode 3.2 with ios 4.1 it doesn't have this issue. \r\nthis is in the simulator","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1230","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1230,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1230","assignee":null,"title":"opencvFaceExample doesn't run on ios5 / xcode 4 ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2012-04-30T20:33:34Z","created_at":"2012-04-30T20:02:56Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":4356775,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-29T18:03:52Z","body":"I completely rewrote ofEasyCam as it was working in some weird ways when the target was changed.\r\nNow the maths are much simpler and tidier.\r\nI also changed the way it is used.\r\nNow by pressing the dragging the mouse with the left button the camera rotates around the target. when doing so with the right button the camera rotates around it's local z axis.\r\n\r\nWhen the 'm' key is pressed, dragging the mouse with the left button will move the camera over it's local X an Y axes. Using the right button will move the camera over it's local z axis, making it \"zoom\" in or out.\r\n\r\nIn my initial implementation I checked if the mouse was inside a circle of radius min(ofGetWith, ofGetHeight) centered at the middle of the viewport, if it was inside the X and Y rotation was applied, else the Z rotation, thus leaving the second button free to use \"zoom\" in or out.\r\nI finally decided to leave out this way of use opting for the one that I'm commiting.\r\nIf anyone of you thinks that my initial implementation would be better I can pull it.\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1227","comments":27,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1227,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1227","assignee":null,"title":"Rewritten ofEasyCam + minor fixes to ofNode","labels":[],"closed_at":"2012-05-29T18:03:52Z","created_at":"2012-04-30T03:15:12Z","state":"closed","user":{"url":"https://api.github.com/users/roymacdonald","gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","login":"roymacdonald","avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":974878},"id":4345219,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1227","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1227.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1227.diff"}},{"updated_at":"2012-04-29T16:54:10Z","body":"ofxiPhoneImagePicker now also works on the iPad.\r\nworks in all device orientations.\r\na custom overlay view can be created by extending OverlayView rather then having to change code inside ofxiPhoneImagePicker.\r\nfixed a bunch of leaks. \r\nstill a couple small leaks showing up which im trying to patch up.\r\nfixed up formatting.\r\n\r\ncloses #1208","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1226","comments":0,"milestone":null,"number":1226,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1226","assignee":null,"title":"ofxiPhoneImagePicker update","labels":[],"closed_at":"2012-04-29T16:54:10Z","created_at":"2012-04-29T15:05:07Z","state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"id":4341279,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1226","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1226.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1226.diff"}},{"updated_at":"2012-04-29T12:09:58Z","body":"this issue was introduced on iOS with a fix for issue #1199.\r\nive added isLoaded() method to ofxOpenALSoundPlayer and is again building fine on iOS.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1225","comments":0,"milestone":null,"number":1225,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1225","assignee":null,"title":"ofxOpenALSoundPlayer was missing isLoaded() method.","labels":[],"closed_at":"2012-04-29T12:09:58Z","created_at":"2012-04-29T12:09:34Z","state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"id":4340490,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1225","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1225.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1225.diff"}},{"updated_at":"2012-04-27T18:17:31Z","body":"This class can be used to create a default file to store openFrameworks\r\ncore variables like window-position, -size, framerate... This default\r\nfile will be saved to ofFilePath::getCurrentWorkingDirectory()\r\nAlso added an example.\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1224","comments":9,"milestone":null,"number":1224,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1224","assignee":null,"title":"ofxXmlSettings default file [develop branch]","labels":[],"closed_at":"2012-04-27T18:17:31Z","created_at":"2012-04-27T09:21:44Z","state":"closed","user":{"url":"https://api.github.com/users/WrongEntertainment","gravatar_id":"8aa3a1b1a5238b9a8f375688dfa14e49","login":"WrongEntertainment","avatar_url":"https://secure.gravatar.com/avatar/8aa3a1b1a5238b9a8f375688dfa14e49?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":235200},"id":4318954,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1224","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1224.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1224.diff"}},{"updated_at":"2012-04-27T09:26:00Z","body":"Hey oFolk,\r\nwhat do you think about the xml default idea? i've used it two weeks for myself and i love it.\r\n\r\ngreets from berlin, paul.\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1222","comments":2,"milestone":null,"number":1222,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1222","assignee":null,"title":"ofxXmlSettings default file","labels":[],"closed_at":"2012-04-27T05:30:34Z","created_at":"2012-04-27T04:33:35Z","state":"closed","user":{"url":"https://api.github.com/users/WrongEntertainment","gravatar_id":"8aa3a1b1a5238b9a8f375688dfa14e49","login":"WrongEntertainment","avatar_url":"https://secure.gravatar.com/avatar/8aa3a1b1a5238b9a8f375688dfa14e49?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":235200},"id":4315860,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1222","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1222.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1222.diff"}},{"updated_at":"2012-04-27T06:39:51Z","body":"I find that I'm using rectangles with rounded corners quiet often and seems like a fairly simple addition.\r\nAn example of using this is as follows:\r\n\r\n\tofSetPolyMode(OF_POLY_WINDING_ODD);\r\n\tofSetLineWidth(1.5);\r\n\tofEnableSmoothing();\r\n\tofNoFill();\r\n\tofSetHexColor(0x000000);\r\n\tofRoundedRect(630,520,80,60,9);\r\n\tofDisableSmoothing();\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1221","comments":2,"milestone":null,"number":1221,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1221","assignee":null,"title":"Added ofRoundedRect() functions to ofGraphics","labels":[],"closed_at":"2012-04-27T05:30:29Z","created_at":"2012-04-26T22:21:09Z","state":"closed","user":{"url":"https://api.github.com/users/lawarner","gravatar_id":"030dc27a9e68781f8c0090d2adc5312e","login":"lawarner","avatar_url":"https://secure.gravatar.com/avatar/030dc27a9e68781f8c0090d2adc5312e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1479237},"id":4312697,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1221","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1221.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1221.diff"}},{"updated_at":"2012-04-26T21:16:22Z","body":"... caused linker errors on linux (directory not found) if custom project directory not in default location.\r\n\r\n\r\nUsing makefile: Makefile\r\nmake: *** No rule to make target `../../../libs/poco/lib/linux/libPocoXML.a', needed by `bin/testProject_debug'. Stop.\r\nProcess terminated with status 2 (0 minutes, 0 seconds)\r\n0 errors, 0 warnings\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1220","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1220,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1220","assignee":null,"title":"Bugfix makefile.examples","labels":[],"closed_at":"2012-04-26T21:16:22Z","created_at":"2012-04-26T20:30:57Z","state":"closed","user":{"url":"https://api.github.com/users/tgfrerer","gravatar_id":"b37673dd0fb953e948cfd5475d49de9f","login":"tgfrerer","avatar_url":"https://secure.gravatar.com/avatar/b37673dd0fb953e948cfd5475d49de9f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":423509},"id":4310831,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1220","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1220.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1220.diff"}},{"updated_at":"2012-04-30T22:03:53Z","body":"I have an Universal app that uses this feature the screen grab works fine on non retina display devices but in iPhone 4 the screen grab is 1/4 of the size of the screen, posible solution by jasonwalters here http://forum.openframeworks.cc/index.php/topic,6092.15.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1219","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1219,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1219","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"ofxiPhoneScreenGrab doesnt use Retina Display scaling","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":"2012-04-30T22:03:53Z","created_at":"2012-04-26T08:21:49Z","state":"closed","user":{"url":"https://api.github.com/users/nardove","gravatar_id":"8022cb5f529975afbc64cc9312008d8c","login":"nardove","avatar_url":"https://secure.gravatar.com/avatar/8022cb5f529975afbc64cc9312008d8c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":277690},"id":4297487,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-30T14:43:17Z","body":" \"_cvKalmanPredict\", referenced from:\r\n \"_cvReleaseKalman\", referenced from:\r\n \"_cvCreateKalman\", referenced from:\r\n \"_cvKalmanCorrect\", referenced from:\r\n\r\nwant to make sure we're not missing anything from opencv.a \r\n\r\n- hmm adding the raw libs ( not the smooshed ones ) it finds those symbols.\r\ngoing to check the opencv smooshing project. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1214","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1214,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1214","assignee":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"title":"2.3.2 osx opencv.a missing kalman methods ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/critical","name":"critical","color":"ff0000"}],"closed_at":"2012-04-30T14:43:17Z","created_at":"2012-04-24T14:49:54Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":4261132,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-24T04:02:19Z","body":"new Default.png and Icon.png for 0071 release.\r\n\r\nwill add retina icons too\r\nbut just wanted to update the essentials first.\r\n\r\ncloses #1209","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1213","comments":2,"milestone":null,"number":1213,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1213","assignee":null,"title":"ios new splashscreen + icon","labels":[],"closed_at":"2012-04-24T03:35:14Z","created_at":"2012-04-24T03:32:37Z","state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"id":4253268,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1213","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1213.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1213.diff"}},{"updated_at":"2012-04-24T03:23:23Z","body":"touch events and alerts are now being added automatically when the app is started.\r\nplease see the first commit.\r\nall other commits are adjustments made to iOS examples.\r\n\r\nthis means, the user doesn't have to worry about setting touch events and alerts up inside their app.\r\nit makes sense as this is what the user will always need to do anyway when running an iOS OF project.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1212","comments":0,"milestone":null,"number":1212,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1212","assignee":null,"title":"ios example changes","labels":[],"closed_at":"2012-04-24T03:23:23Z","created_at":"2012-04-24T03:13:46Z","state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"id":4253139,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1212","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1212.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1212.diff"}},{"updated_at":"2012-04-30T15:55:27Z","body":"examples/ios/xmlSettingsExample\r\nfiles in addons/ofxXmlSettings/libs are getting added twice by PG and its causing duplicate method errors.\r\n\r\nthis issue will be resolved when issue #1206 is resolved.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1211","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1211,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1211","assignee":null,"title":"iOS xmlSettingsExample errors","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":"2012-04-30T15:55:27Z","created_at":"2012-04-24T02:32:41Z","state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"id":4252816,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-30T15:55:27Z","body":"examples/ios/oscReceiverExample\r\nexamples/ios/oscSenderExample\r\n\r\n/Volumes/STORAGE/openFrameworks/examples/ios/oscReceiverExample/../../../addons/ofxOsc/libs/oscpack/src/osc/OscTypes.h:128:16: error: expected unqualified-id\r\nextern NilType Nil;\r\n\r\nsimulator and device, across all iOS versions.\r\nthis is not an issue in 007.\r\n\r\nthis issue may be resolved when issue #1206 is resolved.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1210","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1210,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1210","assignee":null,"title":"iOS OSC examples build with errors","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":"2012-04-30T15:55:27Z","created_at":"2012-04-24T02:30:30Z","state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"id":4252797,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-24T08:31:55Z","body":"Default.png says openFrameworks 007 \r\nshould be 0071 for the next release.\r\nim taking care of this today.\r\n\r\nwill also have a version ready for ipad.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1209","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1209,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1209","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"Default.png and Icon.png need update for 0071 release","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"}],"closed_at":"2012-04-24T08:31:55Z","created_at":"2012-04-24T02:23:37Z","state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"id":4252761,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-24T08:37:24Z","body":"examples/ios/ImagePickerExample\r\nImagePicker is working fine but when photo taken is upside down.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1208","comments":1,"milestone":null,"number":1208,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1208","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"iOS ImagePickerExample is upside down","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2012-04-24T08:37:24Z","created_at":"2012-04-24T02:18:39Z","state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"id":4252721,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-11T17:49:27Z","body":"examples/ios/videoGrabberExample\r\nvideo image is upside down.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1207","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1207,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1207","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"iOS videoGrabberExample is upside down","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"}],"closed_at":"2012-05-11T17:49:27Z","created_at":"2012-04-24T02:17:23Z","state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"id":4252711,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-30T15:55:55Z","body":"something ive noticed when testing all the iOS examples today.\r\nPG seems to be duplicating files in the addons libs folder.\r\n\r\nfor example in the ofxXmlSettings folder,\r\nsrc/ is fine.\r\nlibs/ has all the files duplicated.\r\n\r\nthis is causing duplicate declaration issues in projects that use addons.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1206","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1206,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1206","assignee":null,"title":"project generator duplicating files in addons libs folder","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":"2012-04-30T15:55:55Z","created_at":"2012-04-24T02:16:16Z","state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"id":4252699,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=3&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4993'), ('content-length', '52066'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"1f4d92939c86368abd980ac88fa4a129"'), ('date', 'Tue, 29 May 2012 18:46:22 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-29T14:51:07Z","body":"@ofTheo @memo @bilderbuchi @ofZach For your consideration (ref #1200)\r\n\r\n~~~~\r\n\tofVec3f p( 1, 2, 3 ); // p is { 1, 2, 3 }\r\n\tp.set( 4 ); // ok, p is now { 4, 4, 4 }\r\n\tp = ofVec3f( 5 ); // ok, p is now { 5, 5, 5 }\r\n\tp.set( 6, 7 ); // ok, p is now { 6, 7, 0 }\r\n\tp = 8; // generates error 'No match for 'operator=' in 'p = 8'\r\n~~~~\r\n\r\nBehaviour is similar with ofVec2f and ofVec4f.\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1205","comments":25,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1205,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1205","assignee":null,"title":"Fix ofVec2/3/4f float assignment","labels":[],"closed_at":"2012-05-29T14:51:07Z","created_at":"2012-04-23T22:31:13Z","state":"closed","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":4250445,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1205","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1205.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1205.diff"}},{"updated_at":"2012-04-23T11:50:50Z","body":"ofShader was calling glGetProgramiv incorrectly, passing a shader argument when it should have been a program argument.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1204","comments":2,"milestone":null,"number":1204,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1204","assignee":null,"title":"Fix ofShader's broken call to glGetProgramiv","labels":[],"closed_at":"2012-04-23T00:40:14Z","created_at":"2012-04-23T00:36:54Z","state":"closed","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":4233147,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1204","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1204.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1204.diff"}},{"updated_at":"2012-04-23T00:33:41Z","body":"ofShader was calling `glGetProgramiv( shader, GL_LINK_STATUS, &status );` but this call is invalid as `glGetProgramiv` expects a program argument, not a shader. Hence status was uninitialised after the call, and the following if statement was nonsense.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1203","comments":0,"milestone":null,"number":1203,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1203","assignee":null,"title":"Fix ofShader's call to glGetProgramiv( GL_LINK_STATUS )","labels":[],"closed_at":"2012-04-23T00:33:41Z","created_at":"2012-04-23T00:33:10Z","state":"closed","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":4233127,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1203","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1203.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1203.diff"}},{"updated_at":"2012-05-29T14:59:44Z","body":"we used to have operator overloading for float so you could do: myVec = 0.0; \r\nor myScale3f = 100.0; and it would set x y and z to that number. \r\n\r\nat somepoint someone commented it out ( breaking quite a few projects for me ).\r\nanyway I would like to revert that commenting out and restore it to its original behavior. \r\n\r\nthis is what ofVec3f.h currently looks like\r\n\r\n\t//operator overloading for float\r\n\t//\r\n\t//\r\n\t//inline void ofVec3f::operator=( const float f){\r\n\t//\tx = f;\r\n\t//\ty = f;\r\n\t//\tz = f;\r\n\t//}\r\n\r\nI know @memo had some thoughts on this. \r\nAlso would be good to have @ofZach look at this. \r\n\r\nI want to make sure I don't introduce anything unexpected by reverting it to its original behavior. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1200","comments":12,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1200,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1200","assignee":null,"title":"fix/feature: restore the = operator overload for ofVec2 / ofVec3 ....","labels":[],"closed_at":"2012-05-29T14:59:44Z","created_at":"2012-04-22T14:24:01Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":4229599,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-24T14:52:36Z","body":"currently there is no way to know if your sound file has loaded.\r\nin ofFmodSoundPlayer we have a bLoaded bool, but there should be a method for all sound player objects to query if a sound was successfully loaded. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1199","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1199,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1199","assignee":null,"title":"feature: add isLoaded() to ofSoundPlayer ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2012-04-24T14:52:36Z","created_at":"2012-04-22T14:18:28Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":4229567,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-23T00:11:06Z","body":"@damiannz found that examples were not rendering on a recent Macbook Air. Specs are as follows:\r\n\r\n\r\n Macbook Air 4,1 (late-2011) with Intel HD Graphics 3000 (Sandy Bridge core i7 1.8Ghz CPU):\r\n Chipset Model:\tIntel HD Graphics 3000\r\n Type:\tGPU\r\n Bus:\tBuilt-In\r\n VRAM (Total):\t384 MB\r\n Vendor:\tIntel (0x8086)\r\n Device ID:\t0x0116\r\n Revision ID:\t0x0009\r\n\r\n\r\nWould be great to get this working as its a common laptop setup. \r\n\r\nhere are the features of the card: http://feedback.wildfiregames.com/report/opengl/device/Intel%20HD%20Graphics%203000\r\n\r\n@damiannz \r\n\r\ncould you try changing in testApp of gl/billboardExample\r\n\r\n\t// bind the shader so that wee can change the\r\n\t// size of the points via the vert shader\r\n\t//billboardShader.begin();\r\n\tbillboardShader.setUniform1fv(\"pointSize\", billboardSize, NUM_BILLBOARDS); \r\n\t\r\n\tglPointSize(30);\r\n\tofEnablePointSprites();\r\n\ttexture.getTextureReference().bind();\r\n\tbillboardVbo.bind();\r\n\tbillboardVbo.setVertexData(billboardVerts, NUM_BILLBOARDS, GL_DYNAMIC_DRAW);\r\n\t//billboardVbo.setColorData(billboardColor, NUM_BILLBOARDS, GL_DYNAMIC_DRAW);\r\n\tbillboardVbo.draw(GL_POINTS, 0, NUM_BILLBOARDS);\r\n\t\r\n\tbillboardVbo.unbind();\r\n\ttexture.getTextureReference().unbind();\r\n\tofDisablePointSprites();\r\n\t\r\n\t//billboardShader.end();\r\n\r\nthis comments out the shader and sets the size of the points without the shader.\r\nthis way we can see if its a shader issue or a vbo issue. \r\n\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1198","comments":11,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1198,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1198","assignee":null,"title":"billboard examples not working on Intel HD 3000","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/critical","name":"critical","color":"ff0000"}],"closed_at":"2012-04-23T00:09:09Z","created_at":"2012-04-22T13:56:34Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":4229433,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-22T19:34:27Z","body":"still experiencing problem with develop branch on linux ubuntu lucid 32 bit, now it's an error at linking with new opencv:\r\n\r\n../../../addons/ofxOpenCv/libs/opencv/lib/linux/libopencv_core.a(system.o): In function `cv::tempfile(char const*)':\r\nsystem.cpp:(.text._ZN2cv8tempfileEPKc+0x3a): warning: the use of `tmpnam' is dangerous, better use `mkstemp'\r\n../../../addons/ofxOpenCv/libs/opencv/lib/linux/libopencv_calib3d.a(circlesgrid.o): In function `void std::__uninitialized_fill_n::__uninit_fill_n >*, unsigned int, std::list > >(std::list >*, unsigned int, std::list > const&)':\r\ncirclesgrid.cpp:(.text._ZNSt22__uninitialized_fill_nILb0EE15__uninit_fill_nIPSt4listIjSaIjEEjS4_EEvT_T0_RKT1_[void std::__uninitialized_fill_n::__uninit_fill_n >*, unsigned int, std::list > >(std::list >*, unsigned int, std::list > const&)]+0x57): undefined reference to `std::__detail::_List_node_base::_M_hook(std::__detail::_List_node_base*)'\r\n../../../addons/ofxOpenCv/libs/opencv/lib/linux/libopencv_calib3d.a(circlesgrid.o): In function `CirclesGridClusterFinder::hierarchicalClustering(std::vector, std::allocator > >, cv::Size_ const&, std::vector, std::allocator > >&)':\r\ncirclesgrid.cpp:(.text._ZN24CirclesGridClusterFinder22hierarchicalClusteringESt6vectorIN2cv6Point_IfEESaIS3_EERKNS1_5Size_IiEERS5_+0x4a1): undefined reference to `std::__detail::_List_node_base::_M_hook(std::__detail::_List_node_base*)'\r\ncirclesgrid.cpp:(.text._ZN24CirclesGridClusterFinder22hierarchicalClusteringESt6vectorIN2cv6Point_IfEESaIS3_EERKNS1_5Size_IiEERS5_+0xcab): undefined reference to `std::__detail::_List_node_base::_M_transfer(std::__detail::_List_node_base*, std::__detail::_List_node_base*)'\r\ncollect2: ld returned 1 exit status\r\nmake: *** [bin/lpmt] Errore 1\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1197","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1197,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1197","assignee":null,"title":"linker error in ubuntu lucid with new opencv libs","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":"2012-04-22T19:34:27Z","created_at":"2012-04-22T12:02:28Z","state":"closed","user":{"url":"https://api.github.com/users/hvfrancesco","avatar_url":"https://secure.gravatar.com/avatar/e02a8a3953de9d5d9ec1c7aa8d43eca4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e02a8a3953de9d5d9ec1c7aa8d43eca4","login":"hvfrancesco","id":614123},"id":4228922,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-22T16:11:05Z","body":"added some little additions to ofVec* classes so generic external functions (e.g. templated functions and classes) can manipulate them without knowing if its a ofVec2f or ofVec3f etc. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1196","comments":5,"milestone":null,"number":1196,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1196","assignee":null,"title":"Feature of vec things","labels":[],"closed_at":"2012-04-22T16:11:05Z","created_at":"2012-04-22T11:03:34Z","state":"closed","user":{"url":"https://api.github.com/users/memo","avatar_url":"https://secure.gravatar.com/avatar/b5c0e3c2630097b29680cfeda464024c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b5c0e3c2630097b29680cfeda464024c","login":"memo","id":144230},"id":4228716,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1196","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1196.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1196.diff"}},{"updated_at":"2012-04-21T19:17:43Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1195","comments":0,"milestone":null,"number":1195,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1195","assignee":null,"title":"arturo's changes to fix linux","labels":[],"closed_at":"2012-04-21T19:17:43Z","created_at":"2012-04-21T19:17:29Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":4225438,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1195","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1195.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1195.diff"}},{"updated_at":"2012-04-21T23:17:32Z","body":"I'm experiencing a segfault on Ubuntu Linux Lucid on my application since commit 3406911340b2c659f298eeab68f607db8491cd21\r\nit seems to me something related with events and triggered by ofxTimeline addon,\r\n\r\nthis is the backtrace:\r\n(gdb) bt\r\n#0 0x0012d422 in __kernel_vsyscall ()\r\n#1 0x0144f651 in raise () from /lib/tls/i686/cmov/libc.so.6\r\n#2 0x01452a82 in abort () from /lib/tls/i686/cmov/libc.so.6\r\n#3 0x0148606d in ?? () from /lib/tls/i686/cmov/libc.so.6\r\n#4 0x01490161 in ?? () from /lib/tls/i686/cmov/libc.so.6\r\n#5 0x014919b8 in ?? () from /lib/tls/i686/cmov/libc.so.6\r\n#6 0x01494a9d in free () from /lib/tls/i686/cmov/libc.so.6\r\n#7 0x013a69f1 in operator delete(void*) () from /usr/lib/libstdc++.so.6\r\n#8 0x080e2aee in Poco::SharedPtr, Poco::ReferenceCounter, Poco::ReleasePolicy > >::release (this=0xbfffecb8) at ../../../libs/poco/include/Poco/SharedPtr.h:407\r\n#9 0x080e2885 in ~SharedPtr (this=0xbfffecb8, __in_chrg=) at ../../../libs/poco/include/Poco/SharedPtr.h:159\r\n#10 0x080e272c in Poco::DefaultStrategy >::add (this=0x87ccc04, delegate=...)\r\n at ../../../libs/poco/include/Poco/DefaultStrategy.h:88\r\n#11 0x080e24e8 in Poco::AbstractEvent >, Poco::AbstractDelegate, Poco::FastMutex>::operator+= (this=0x87ccbf4, aDelegate=...) at ../../../libs/poco/include/Poco/AbstractEvent.h:197\r\n#12 0x080e1fed in ofAddListener, ofxTLZoomEventArgs, ofxTLElement> (event=..., listener=0x906ec18, \r\n listenerMethod=&virtual ofxTLElement::zoomStarted(ofxTLZoomEventArgs&)) at ../../../libs/openFrameworks/events/ofEventUtils.h:59\r\n#13 0x080e230f in ofxTLRegisterZoomEvents (listener=0x906ec18) at ../../../addons/ofxTimeline/src/ofxTLEvents.h:111\r\n#14 0x080e173e in ofxTLElement::enable (this=0x906ec18) at ../../../addons/ofxTimeline/src/ofxTLElement.cpp:58\r\n#15 0x08106a62 in ofxTLTicker::setup (this=0x906ec18) at ../../../addons/ofxTimeline/src/ofxTLTicker.cpp:46\r\n#16 0x08113521 in ofxTimeline::setup (this=0x8c396b0) at ../../../addons/ofxTimeline/src/ofxTimeline.cpp:99\r\n#17 0x08086786 in testApp::timelineSetup (this=0x8c19cc0, duration=10) at src/timeline.cpp:6\r\n#18 0x080694ae in testApp::setup (this=0x8c19cc0) at src/testApp.cpp:266\r\n#19 0x0815665f in ofNotifySetup () at ../../../openFrameworks/events/ofEvents.cpp:77\r\n#20 0x08200f7f in ofAppGlutWindow::runAppViaInfiniteLoop (this=0x889c690, appPtr=0x8c19cc0) at ../../../openFrameworks/app/ofAppGlutWindow.cpp:331\r\n#21 0x08154ef2 in ofRunApp (OFSA=0x8c19cc0) at ../../../openFrameworks/app/ofAppRunner.cpp:78\r\n#22 0x0805b372 in main () at src/main.cpp:18\r\n\r\ni've tracked the problem to the commit that introduced new poco headers\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1194","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1194,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1194","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"segfault with new Poco libs 1.4.3","labels":[],"closed_at":"2012-04-21T23:17:32Z","created_at":"2012-04-21T18:33:05Z","state":"closed","user":{"url":"https://api.github.com/users/hvfrancesco","avatar_url":"https://secure.gravatar.com/avatar/e02a8a3953de9d5d9ec1c7aa8d43eca4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e02a8a3953de9d5d9ec1c7aa8d43eca4","login":"hvfrancesco","id":614123},"id":4225207,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-21T23:17:32Z","body":"the of core lib compiled fine. but when i did testing the example,it won't compiled,seems there's a trouble with ofFileUtils.cpp and poco::File somehow. cheers @ofTheo\r\n\r\nopenframeworksLib.lib(ofFileUtils.obj) : error LNK2019: unresolved external symbol \"public: class Poco::File & __thiscall Poco::File::setWriteable(bool)\" (?setWriteable@File@Poco@@QAEAAV12@_N@Z) referenced in function \"public: void __thiscall ofFile::setWriteable(bool)\" (?setWriteable@ofFile@@QAEX_N@Z)\r\n1>openframeworksLib.lib(ofFileUtils.obj) : error LNK2019: unresolved external symbol \"public: class Poco::File & __thiscall Poco::File::setReadOnly(bool)\" (?setReadOnly@File@Poco@@QAEAAV12@_N@Z) referenced in function \"public: void __thiscall ofFile::setReadOnly(bool)\" (?setReadOnly@ofFile@@QAEX_N@Z)\r\n1>openframeworksLib.lib(ofFileUtils.obj) : error LNK2019: unresolved external symbol \"public: class Poco::File & __thiscall Poco::File::setExecutable(bool)\" (?setExecutable@File@Poco@@QAEAAV12@_N@Z) referenced in function \"public: void __thiscall ofFile::setExecutable(bool)\" (?setExecutable@ofFile@@QAEX_N@Z)\r\n1>openframeworksLib.lib(ofFileUtils.obj) : error LNK2019: unresolved external symbol \"public: class Poco::Path & __thiscall Poco::Path::setFileName(class std::basic_string,class std::allocator > const &)\" (?setFileName@Path@Poco@@QAEAAV12@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z) referenced in function \"public: int __thiscall ofDirectory::listDir(void)\" (?listDir@ofDirectory@@QAEHXZ)\r\n1>bin\\emptyExample_vs2010.exe : fatal error LNK1120: 4 unresolved externals","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1193","comments":3,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1193,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1193","assignee":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"title":"the vs2010 examples does not compile with 0071","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":"2012-04-21T23:17:32Z","created_at":"2012-04-21T13:32:21Z","state":"closed","user":{"url":"https://api.github.com/users/liquidzym","avatar_url":"https://secure.gravatar.com/avatar/166640c513e589c86d2de49c52258eb4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"166640c513e589c86d2de49c52258eb4","login":"liquidzym","id":51957},"id":4223588,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-30T18:51:21Z","body":"iOS openCV examples are not working when built using Project Generator.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1192","comments":8,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1192,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1192","assignee":null,"title":"iOS openCV examples not working - created using PG","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":"2012-04-30T18:51:21Z","created_at":"2012-04-20T11:28:58Z","state":"closed","user":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"id":4208911,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-20T17:40:27Z","body":"On a fresh develop checkout from today, any app that uses sound player example crashes on exit. I've tested the soundPlayerExample and an app created with the PG\r\n\r\n```c++\r\n//------------------------------------------------------------\r\nvoid ofFmodSoundPlayer::unloadSound(){\r\n\tif (bLoadedOk){\r\n\t\tstop();\t\t\t\t\t\t// try to stop the sound\r\n\t\tif(!isStreaming)FMOD_Sound_Release(sound); // <---the error points to this line\r\n\t}\r\n}\r\n```\r\n\r\nosx 10.7.3\r\n\r\nalso, I'm getting a warning like this in every app I compile \r\n\r\nGuardMalloc[soundPlayerExampleDebug-6203]: Allocations will be placed on 16 byte boundaries.\r\nGuardMalloc[soundPlayerExampleDebug-6203]: - Some buffer overruns may not be noticed.\r\nGuardMalloc[soundPlayerExampleDebug-6203]: - Applications using vector instructions (e.g., SSE) should work.\r\nGuardMalloc[soundPlayerExampleDebug-6203]: version 25\r\nCouldn't set thread priority\r\n\r\nnot sure if it's related, as this happens in every application with this checkout but only those with ofSoundPlayer crash. If it's not related I'll file a different issue.\r\n\r\nfor the record, on a different project I'm using a slightly older develop (last commit from March 12, #d20c36f9fb543037dd71a6da7cdfbae22ca64b1d) and none of these issues are there","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1191","comments":6,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1191,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1191","assignee":null,"title":"ofSoundPlayer EXC_BAD_ACCESS on app exit ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/critical","name":"critical","color":"ff0000"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":"2012-04-20T15:41:05Z","created_at":"2012-04-20T10:51:32Z","state":"closed","user":{"url":"https://api.github.com/users/jesusgollonet","avatar_url":"https://secure.gravatar.com/avatar/5008d5295e9bc2636313c7b50ed5981d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5008d5295e9bc2636313c7b50ed5981d","login":"jesusgollonet","id":31100},"id":4208500,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-19T11:41:38Z","body":"noticed that hex colour values were being passed into ofSetColor which was displaying lots of log messages in the console.\r\n\r\nchanged to ofSetHexColor.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1188","comments":0,"milestone":null,"number":1188,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1188","assignee":null,"title":"bugfix for ios imageLoaderExample","labels":[],"closed_at":"2012-04-19T11:41:38Z","created_at":"2012-04-19T11:41:24Z","state":"closed","user":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"id":4189934,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1188","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1188.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1188.diff"}},{"updated_at":"2012-04-19T13:10:11Z","body":"[[self context] renderbufferStorage:GL_RENDERBUFFER_OES fromDrawable:eaglLayer];\r\nwas stopping the framebuffer from being created on iOS 4.1\r\ncloses #1182","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1187","comments":2,"milestone":null,"number":1187,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1187","assignee":null,"title":"bugfix #1182 - framebuffer not being created on iOS 4.1","labels":[],"closed_at":"2012-04-19T13:02:21Z","created_at":"2012-04-19T11:10:00Z","state":"closed","user":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"id":4189562,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1187","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1187.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1187.diff"}},{"updated_at":"2012-04-18T15:09:51Z","body":"If you set up an ofFbo as follows...\r\n\r\n```cpp\r\n ofFbo::Settings s;\r\n s.width = 400;\r\n s.height = 400;\r\n s.textureTarget = GL_TEXTURE_2D;\r\n s.useDepth = true;\r\n s.depthAsTexture = true;\r\n s.dethInternalFormat = GL_DEPTH_COMPONENT24;\r\n```\r\n\r\n...then the colour texture's dimensions are set to be the next POTs up but the depth texture's dimensions don't seem to be. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1185","comments":1,"milestone":null,"number":1185,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1185","assignee":null,"title":"ofFbo depthBufferTex can be inconsistent with colour texture","labels":[],"closed_at":"2012-04-18T15:09:51Z","created_at":"2012-04-18T15:07:24Z","state":"closed","user":{"url":"https://api.github.com/users/neilmendoza","avatar_url":"https://secure.gravatar.com/avatar/3e46b12547e7bac19eb982bc512b19c4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3e46b12547e7bac19eb982bc512b19c4","login":"neilmendoza","id":818571},"id":4174044,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-22T19:46:16Z","body":"The PG does not compile on Linux (32 and 64bit). Latest test with today's develop.\r\nError message: \r\n`no match for ‘operator!=’ in ‘it != ((baseProject*)this)->baseProject::addons.std::vector<_Tp, _Alloc>::end [with _Tp = ofAddon, _Alloc = std::allocator, std::vector<_Tp, _Alloc>::iterator = __gnu_cxx::__normal_iterator >, typename std::_Vector_base<_Tp, _Alloc>::_Tp_alloc_type::pointer = ofAddon*]()’\tbaseProject.cpp`\r\n\r\nThe problem is that @gameoverhack changed a variable type from `set` to `vector` in 085089b, but it's not clear yet how to resolve this. \r\nSome discussion about this with @arturoc is [here](https://github.com/openframeworks/openFrameworks/commit/967997d28b877a4bcc2c8e4972f10b9b9d179562#apps/devApps/projectGenerator/src/projects/baseProject.cpp-P78).\r\n\r\nLack of even a compiling PG has made it impossible for me to generate/compile the examples to check if my gitignore overhaul is working well.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1184","comments":10,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1184,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1184","assignee":null,"title":"PG does not compile on Linux","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":"2012-04-22T19:46:16Z","created_at":"2012-04-18T15:04:12Z","state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":4173977,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-02T14:45:20Z","body":"Current OS X opencv has references to Cocoa and QuickTime. \r\n\r\nFix is:\r\nBuild openCV without Cocoa and QuickTime so we can use the osx/opencv.a for iOS simulator. \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1183","comments":7,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1183,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1183","assignee":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"title":"openCV for iOS doesn't work in Simulator. ","labels":[],"closed_at":"2012-04-17T21:33:16Z","created_at":"2012-04-17T21:09:59Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":4161588,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-19T13:02:21Z","body":"ofxiPhone now builds for 4.1 SDK but when the window is created we get \"Failed to make complete framebuffer object\" \r\ndepth, fsaa, retina is all disabled so I don't really know what the issue is. \r\n\r\nCurrent develop branch works fine with iOS 5.0 SDK and xcode 4. \r\nWould be nice to get it working for older too. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1182","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1182,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1182","assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"title":"error creating framebuffer on 4.1 SDK","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2012-04-19T13:02:21Z","created_at":"2012-04-17T21:07:30Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":4161539,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-18T16:50:58Z","body":"two warnings in xcode \r\n\r\nwarning: instance method '-destroyFramebuffer' not found (return type defaults to 'id') \r\nwarning: instance method '-createFramebuffer:' not found (return type defaults to 'id') [3]\r\n\r\n- (BOOL)resizeFromLayer:(CAEAGLLayer *)layer {\t\r\n\t[self destroyFramebuffer];\r\n\t[self createFramebuffer:layer];\r\n}\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1181","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1181,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1181","assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"title":"iOS warnings / Bugs? in resizeFromLayer","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2012-04-18T16:50:58Z","created_at":"2012-04-17T16:27:19Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":4156397,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-01T04:17:26Z","body":"returns OFXIPHONE_DEVICE_IPHONE on an iPad.\r\n\r\nThe problem is that \"caseInsensitiveCompare:(NSString*)\" is treated as if it returned a BOOL, but it returns a NSComparisonResult. \r\n\r\nI ended up doing this, which seems to work on most cases:\r\n\r\n ofxiPhoneDeviceType ofxiPhoneGetDeviceType() {\r\n \tNSString * dev = [[[UIDevice currentDevice] model] lowercaseString];\t\r\n \tif( [dev hasPrefix:@\"iphone\"] ) return OFXIPHONE_DEVICE_IPHONE;\r\n \tif( [dev hasPrefix:@\"ipad\"] ) return OFXIPHONE_DEVICE_IPAD;\r\n \tif( [dev hasPrefix:@\"ipod\"] ) return OFXIPHONE_DEVICE_IPODTOUCH;\r\n \treturn OFXIPHONE_UNKNOWN_DEVICE; //this would need to be declared \r\n }\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1180","comments":0,"milestone":null,"number":1180,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1180","assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"title":"ofxiPhoneGetDeviceType() ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2012-05-01T04:17:26Z","created_at":"2012-04-16T22:42:42Z","state":"closed","user":{"url":"https://api.github.com/users/armadillu","avatar_url":"https://secure.gravatar.com/avatar/b87a82d7c86161432ee6388c7cbd5e2c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b87a82d7c86161432ee6388c7cbd5e2c","login":"armadillu","id":167057},"id":4144168,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-18T00:43:43Z","body":"error: request for member 'preferredMode' in 'externalScreen', which is of non-class type 'UIScreen*'\r\n\r\n\t//-------------------------------------------------------------------------------------------\r\n\t-(BOOL) createExternalWindowWithPreferredMode {\r\n\t\tif([[UIScreen screens] count] == 1){\r\n\t\t\treturn NO;\r\n\t\t}\r\n\t\t\r\n\t\tUIScreen * externalScreen;\r\n\t\texternalScreen = [[UIScreen screens] objectAtIndex:1];\r\n\t\t\r\n\t\texternalScreen.currentMode = externalScreen.preferredMode;\r\n\r\n\r\n@julapy can we ifdef this somehow so it allows people to still build for iOS 4.1 ?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1179","comments":9,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1179,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1179","assignee":null,"title":"iOS bug with SDK 4.1","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":"2012-04-17T21:04:28Z","created_at":"2012-04-16T18:53:34Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":4140249,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-16T15:50:37Z","body":"The OF path in the project generator got easily overflowed at the right margin.\r\nI moved tha of path to get drawn at the left and wrapped the path string in case it was to long.\r\nthe examples and addons panels get repositioned so the ofpath doesn't get drawn over the panels","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1177","comments":0,"milestone":null,"number":1177,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1177","assignee":null,"title":"Fix pg ofpath overflow","labels":[],"closed_at":"2012-04-16T15:50:37Z","created_at":"2012-04-15T20:50:03Z","state":"closed","user":{"url":"https://api.github.com/users/roymacdonald","avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","login":"roymacdonald","id":974878},"id":4126089,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1177","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1177.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1177.diff"}},{"updated_at":"2012-04-16T16:05:43Z","body":"oscpack as source from bilderbuchi github, support for broadcasting and socket reuse under poxis","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1176","comments":3,"milestone":null,"number":1176,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1176","assignee":null,"title":"oscpack as source","labels":[],"closed_at":"2012-04-16T16:05:43Z","created_at":"2012-04-14T15:39:25Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":4118313,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1176","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1176.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1176.diff"}},{"updated_at":"2012-04-16T20:06:39Z","body":"When the OF path is drawn in PG it gets overflowed at the right if the path is \"too\" long.\r\nI have a fix for this that I'll push later.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1172","comments":3,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1172,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1172","assignee":null,"title":"PG OF path overflow","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":"2012-04-16T20:06:39Z","created_at":"2012-04-13T05:14:40Z","state":"closed","user":{"url":"https://api.github.com/users/roymacdonald","avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","login":"roymacdonald","id":974878},"id":4097923,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=4&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4992'), ('content-length', '43474'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"5701951ff538f65147b7ec1024c267f3"'), ('date', 'Tue, 29 May 2012 18:46:23 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"milestone":null,"state":"closed","user":{"gravatar_id":"248569b4b21882f854f3a0eee701cc37","url":"https://api.github.com/users/liasomething","login":"liasomething","id":183150,"avatar_url":"https://secure.gravatar.com/avatar/248569b4b21882f854f3a0eee701cc37?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Fix: add setDoubleBuffering(tf) to ofAppGlutWindow","html_url":"https://github.com/openframeworks/openFrameworks/issues/1170","comments":11,"assignee":null,"updated_at":"2012-04-18T16:40:15Z","body":"allows apps to switch between single and double buffering by a function call in main.cpp. solves flickering problem with ofSetBackgroundAuto(false), see #368","number":1170,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1170","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1170.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1170.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1170","labels":[],"id":4079683,"closed_at":"2012-04-18T13:25:31Z","created_at":"2012-04-12T08:05:03Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"e02a8a3953de9d5d9ec1c7aa8d43eca4","url":"https://api.github.com/users/hvfrancesco","login":"hvfrancesco","id":614123,"avatar_url":"https://secure.gravatar.com/avatar/e02a8a3953de9d5d9ec1c7aa8d43eca4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"issue with image.draw(x,y,w,h)","html_url":"https://github.com/openframeworks/openFrameworks/issues/1169","comments":2,"assignee":null,"updated_at":"2012-04-11T14:53:39Z","body":"compiling against last develop branch, I get an issue drawing images with img.draw(x,y,w,h) when w and h are larger than actual image size: instead of scaling border pixels are replicated like this:\r\nhttp://www.hv-a.com/dati/bug.png","number":1169,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1169","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":4064511,"closed_at":"2012-04-11T13:34:59Z","created_at":"2012-04-11T13:18:05Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"bugfix SKIP_INSTALL set to YES","html_url":"https://github.com/openframeworks/openFrameworks/issues/1168","comments":0,"assignee":null,"updated_at":"2012-04-11T13:30:50Z","body":"this fixes the issue that people have been having with XCode4 and when trying to create Archive builds for the app store.\r\n\r\nswitching SKIP_INSTALL to YES fixes the issue.\r\n\r\nfixes #1097","number":1168,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1168","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1168.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1168.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1168","labels":[],"id":4064407,"closed_at":"2012-04-11T13:30:50Z","created_at":"2012-04-11T13:10:57Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"fb2d7be3b062f7b8843c62dd40e7534a","url":"https://api.github.com/users/mantissa","login":"mantissa","id":921747,"avatar_url":"https://secure.gravatar.com/avatar/fb2d7be3b062f7b8843c62dd40e7534a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofSetBackgroundAuto(false) ignored when writing to PDF ","html_url":"https://github.com/openframeworks/openFrameworks/issues/1164","comments":5,"assignee":null,"updated_at":"2012-04-12T17:30:19Z","body":"Howdy --\r\n\r\nJust noticed a bug when trying to save shapes accumulating over multiple frames into a single page PDF.\r\n\r\nI'm using the ofGraphics function ofBeginSaveScreenAsPDF();\r\n\r\nIf I call ofSetBackgroundAuto(false), the background is cleared each and every frame while the PDF is being drawn -- when drawing ends, it stops clearing -- as exactly.\r\n\r\nHere's a quick code sample demonstrating the problem:\r\n\r\n if( bIsSavingtoPDF ){\r\n\t\t\r\n\t\tif( ofGetFrameNum() == 0 ) {\r\n\t\t\t\r\n\t\t\tprintf(\"starting composition\\n\");\r\n\t\t\tofBeginSaveScreenAsPDF(\"composition.pdf\", false );\r\n\t\t\tofSetBackgroundAuto(false);\r\n\t\t\tofBackground(0, 0, 0);\r\n\t\t\tofEnableAlphaBlending();\r\n\t\t}\r\n\t\t\t\r\n\t\tofSetColor(ofRandom(255), ofRandom(255), ofRandom(255), ofRandom(255));\r\n\t\tofCircle(ofRandom(ofGetWidth()), ofRandom(ofGetHeight()), ofRandom(35, 135));\r\n\t\t\r\n\t\tif( ofGetFrameNum() > 48 ){\r\n\t\t\r\n\t\t\tprintf(\"ending composition\\n\");\r\n\t\t\tofEndSaveScreenAsPDF();\r\n\t\t\tbIsSavingtoPDF = false;\r\n\t\t} \r\n\t\r\n\t} else {\r\n\t\r\n\t\tofSetColor(ofRandom(255), ofRandom(255), ofRandom(255), ofRandom(255));\r\n\t\tofCircle(ofRandom(ofGetWidth()), ofRandom(ofGetHeight()), ofRandom(35, 135));\r\n\t}\r\n\r\nThe problem is triggered by ofCairoRenderer::update(), which calls ofSetStyle(ofGetStyle()), which in turn calls ofBackground(style.bgColor).\r\n\r\nOtherwise, the graphics are looking super-sharp in cairo.\r\n\r\nThanks!\r\n\r\nJeremy","number":1164,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1164","labels":[],"id":4058479,"closed_at":"2012-04-11T11:50:47Z","created_at":"2012-04-11T03:33:48Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"subsection fixes","html_url":"https://github.com/openframeworks/openFrameworks/issues/1163","comments":5,"assignee":null,"updated_at":"2012-04-11T14:30:37Z","body":"there was a bug where drawing something with draw(x, y, w, h) would draw the top-left subsection instead of the whole image with size wxh. this was the bug that i saw with zach while working on another project. it had nothing to do with my implementation of the subsection stuff itself, it was just a mistake in how the wrappers were calling each other.","number":1163,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1163","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1163.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1163.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1163","labels":[],"id":4049392,"closed_at":"2012-04-11T13:30:16Z","created_at":"2012-04-10T16:30:49Z"},{"milestone":{"state":"closed","description":"","title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"number":4,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61808,"created_at":"2011-12-02T15:29:28Z"},"state":"closed","user":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"imageSequenceExample has strange drawing issue ","html_url":"https://github.com/openframeworks/openFrameworks/issues/1162","comments":9,"assignee":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-04-18T08:13:19Z","body":"looks like it is drawing from center. could be related to #1041","number":1162,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1162","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"d1af26","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":4047160,"closed_at":"2012-04-17T18:28:25Z","created_at":"2012-04-10T14:40:32Z"},{"milestone":{"state":"closed","description":"","title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"number":4,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61808,"created_at":"2011-12-02T15:29:28Z"},"state":"closed","user":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"noise1d example crashes in xcode 4","html_url":"https://github.com/openframeworks/openFrameworks/issues/1161","comments":1,"assignee":null,"updated_at":"2012-04-19T13:42:02Z","body":"something related to ofxSimpleSlider and poco. ","number":1161,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1161","labels":[{"color":"d1af26","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":4047135,"closed_at":"2012-04-19T13:39:34Z","created_at":"2012-04-10T14:38:53Z"},{"milestone":{"state":"closed","description":"","title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"number":4,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61808,"created_at":"2011-12-02T15:29:28Z"},"state":"closed","user":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"remove ofxGui from release examples","html_url":"https://github.com/openframeworks/openFrameworks/issues/1160","comments":0,"assignee":null,"updated_at":"2012-04-19T14:10:47Z","body":"","number":1160,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1160","labels":[{"color":"d68e22","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon"},{"color":"d1af26","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example"}],"id":4047087,"closed_at":"2012-04-19T14:10:47Z","created_at":"2012-04-10T14:37:14Z"},{"milestone":{"state":"closed","description":"","title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"number":4,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61808,"created_at":"2011-12-02T15:29:28Z"},"state":"closed","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofPolyline::getSmoothed now works for closed and open polylines","html_url":"https://github.com/openframeworks/openFrameworks/issues/1159","comments":4,"assignee":null,"updated_at":"2012-05-17T16:17:37Z","body":"i tested this against the polylineBlobExample and wrote some code that tests open polylines as well.\r\n\r\nit's very clean now, but it's slightly slower than the old implementation.","number":1159,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1159","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1159.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1159.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1159","labels":[],"id":4046929,"closed_at":"2012-05-16T12:12:32Z","created_at":"2012-04-10T14:30:55Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"1be41bfa26cd2ba0b18e653c6c3230ea","url":"https://api.github.com/users/prettyextreme","login":"prettyextreme","id":1591037,"avatar_url":"https://secure.gravatar.com/avatar/1be41bfa26cd2ba0b18e653c6c3230ea?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofImage Quick Bug Fix","html_url":"https://github.com/openframeworks/openFrameworks/issues/1158","comments":0,"assignee":null,"updated_at":"2012-04-10T14:19:18Z","body":"A previous commit moved the setting of width/height/bpp/type into\r\nallocate(). While these values should indeed be set during\r\nallocation, possibly before an update(), they should also be set\r\nin the case that some other program flow results in an update()\r\nwithout an explicit call to allocate(), as occurs when calling\r\nloadImage().\r\n\r\nTested on Windows against dirListExample and imageLoaderExample\r\nand everything works again.\r\n\r\nIf anything, code added in this commit is resetting variables that, at\r\nworst, have already been set, making it redundant.","number":1158,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1158","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1158.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1158.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1158","labels":[],"id":4046689,"closed_at":"2012-04-10T14:19:18Z","created_at":"2012-04-10T14:16:48Z"},{"milestone":{"state":"open","description":"","title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"number":5,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61810,"created_at":"2011-12-02T15:29:48Z"},"state":"closed","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofPolyline::getSmoothed() doesn't work for open polylines","html_url":"https://github.com/openframeworks/openFrameworks/issues/1157","comments":0,"assignee":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-05-16T12:12:33Z","body":"this is because the method was written with blobs and other closed shapes in mind.\r\n\r\nthe solution is to use the current smoothing technique on the center of the polyline, and write a little extra (slightly slower) code to handle the edge cases.","number":1157,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1157","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":4039362,"closed_at":"2012-05-16T12:12:33Z","created_at":"2012-04-10T02:17:36Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"1be41bfa26cd2ba0b18e653c6c3230ea","url":"https://api.github.com/users/prettyextreme","login":"prettyextreme","id":1591037,"avatar_url":"https://secure.gravatar.com/avatar/1be41bfa26cd2ba0b18e653c6c3230ea?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofImage Memory Reallocations","html_url":"https://github.com/openframeworks/openFrameworks/issues/1156","comments":11,"assignee":null,"updated_at":"2012-04-10T14:18:29Z","body":"Streamline reallocation of memory in ofImage.\r\n\r\nI have identified a few places in ofImage where it seems that pixel and texture memory was being reallocated in places that were not necessary, that is: when \"allocating\" memory of the same size as previously allocated. I have not tested these changes extensively, though they are fairly minor and logically easy-to-follow.\r\n\r\nThese changes provide a drastic speed increase when using setFromPixels() to repeatedly load pixels of the same width/height/bitdepth as one might do when playing back a image/frame sequence.","number":1156,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1156","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1156.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1156.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1156","labels":[],"id":4035572,"closed_at":"2012-04-10T01:46:28Z","created_at":"2012-04-09T20:52:22Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"1be41bfa26cd2ba0b18e653c6c3230ea","url":"https://api.github.com/users/prettyextreme","login":"prettyextreme","id":1591037,"avatar_url":"https://secure.gravatar.com/avatar/1be41bfa26cd2ba0b18e653c6c3230ea?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofSerial bug fixes","html_url":"https://github.com/openframeworks/openFrameworks/issues/1155","comments":2,"assignee":null,"updated_at":"2012-04-09T20:40:21Z","body":"Some very minor but necessary fixes for ofSerial on Windows.","number":1155,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1155","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1155.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1155.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1155","labels":[],"id":4034734,"closed_at":"2012-04-09T20:40:21Z","created_at":"2012-04-09T20:00:13Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"fix opencv allocation","html_url":"https://github.com/openframeworks/openFrameworks/issues/1154","comments":1,"assignee":null,"updated_at":"2012-04-09T20:50:14Z","body":"sorry, too much dance music. wasn't paying attention to the commit range.\r\n\r\ni tested this by creating an unallocated image and running the updateTexture(), getPixelsRef(), and draw().\r\n\r\nbefore the fix, EXC_BAD_ACCESS, after no problem.\r\n","number":1154,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1154","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1154.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1154.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1154","labels":[],"id":4033395,"closed_at":"2012-04-09T20:50:14Z","created_at":"2012-04-09T18:39:45Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"fix opencv allocation","html_url":"https://github.com/openframeworks/openFrameworks/issues/1153","comments":0,"assignee":null,"updated_at":"2012-04-09T18:38:16Z","body":"i tested this by creating an unallocated image and running the updateTexture(), getPixelsRef(), and draw().\r\n\r\nbefore the fix, EXC_BAD_ACCESS, after no problem.","number":1153,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1153","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1153.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1153.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1153","labels":[],"id":4033329,"closed_at":"2012-04-09T18:38:16Z","created_at":"2012-04-09T18:36:24Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"cleaning remaining examples","html_url":"https://github.com/openframeworks/openFrameworks/issues/1149","comments":3,"assignee":null,"updated_at":"2012-04-09T16:24:38Z","body":"meshFromCamera had a bug\r\nsimpleTimer was missing functions\r\nvboExample was not verbose enough\r\nfboTrailsExample had some formatting issues\r\nimageLoaderExample had some formatting issues\r\nimageLoaderWebExample was missing functions\r\ntrigonomtericMotionExample was missing functions\r\ntrigonometryExample was missing functions\r\nsystemSpeakExample was missing functions\r\n\r\nthe only remaining decisions are:\r\n\r\n1 if vectorOfPointersExample isn't a good example, we should remove it. then we can rename `other` to `empty`.\r\n2 the piratepad says fboTrailsExample \"still needs some work\", but i'm not sure how exactly i can help here.\r\n3 systemSpeakExample is neat, but it's the only platform specific example, so maybe it's better to remove it.","number":1149,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1149","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1149.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1149.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1149","labels":[],"id":4019085,"closed_at":"2012-04-09T16:24:38Z","created_at":"2012-04-08T02:23:37Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Use Property Sheets in project settings, project generator vs2010 project update","html_url":"https://github.com/openframeworks/openFrameworks/issues/1148","comments":1,"assignee":null,"updated_at":"2012-04-08T11:53:22Z","body":"This is:\r\n\r\n* A clean up of the projectGenerator project for vs2010\r\n* An implementation of Property Sheets in both projectGenerator project and in the template project\r\n* Added emptyExample to the projectGenerator solution but set it to not build there\r\n* Changed reference type for oF (i.e. use VS reference rather than explicitly linking .lib file). ","number":1148,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1148","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1148.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1148.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1148","labels":[],"id":4016550,"closed_at":"2012-04-08T11:53:22Z","created_at":"2012-04-07T17:16:56Z"},{"milestone":{"state":"closed","description":"","title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"number":4,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61808,"created_at":"2011-12-02T15:29:28Z"},"state":"closed","user":{"gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"How to get to working project generator","html_url":"https://github.com/openframeworks/openFrameworks/issues/1147","comments":12,"assignee":null,"updated_at":"2012-05-16T10:58:53Z","body":"Also note #1146\r\n\r\nWhat's the route to get project generator running in windows as by default it has no vcxproj files\r\nobviously people can hand-roll this vcxproj, but this seems to defeat the point of having project generator in the first place :)\r\n\r\nI have a template project at `openFrameworks\\scripts\\vs2010\\template` so will use that for the time being\r\n","number":1147,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1147","labels":[{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"cccc29","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation"},{"color":"444444","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator"}],"id":4015561,"closed_at":"2012-05-16T10:58:53Z","created_at":"2012-04-07T14:53:27Z"},{"milestone":{"state":"closed","description":"","title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"number":4,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61808,"created_at":"2011-12-02T15:29:28Z"},"state":"closed","user":{"gravatar_id":"166640c513e589c86d2de49c52258eb4","url":"https://api.github.com/users/liquidzym","login":"liquidzym","id":51957,"avatar_url":"https://secure.gravatar.com/avatar/166640c513e589c86d2de49c52258eb4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"projectGenerator issue with vs2010 (doesn't generate vcxproj.filters)","html_url":"https://github.com/openframeworks/openFrameworks/issues/1143","comments":4,"assignee":null,"updated_at":"2012-04-09T16:12:09Z","body":"i knew this isn't finished yet,but i did some testing last night,seems that projectGenerator can't creat proper vs2010 solution file.\r\ni.e the addon should be as subfolder,but somehow all the files dumps as flat in the project solution ","number":1143,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1143","labels":[{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"444444","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator"}],"id":3999805,"closed_at":"2012-04-09T16:12:09Z","created_at":"2012-04-06T03:50:43Z"},{"milestone":{"state":"open","description":"","title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"number":5,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61810,"created_at":"2011-12-02T15:29:48Z"},"state":"closed","user":{"gravatar_id":"9c0384a91739bea093f453cf40a59742","url":"https://api.github.com/users/jvcleave","login":"jvcleave","id":150037,"avatar_url":"https://secure.gravatar.com/avatar/9c0384a91739bea093f453cf40a59742?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"PG only uses OFPath that is set at launch","html_url":"https://github.com/openframeworks/openFrameworks/issues/1142","comments":4,"assignee":null,"updated_at":"2012-04-19T17:54:10Z","body":"Steps to reproduce:\r\n\r\n1. Open, compile, run projectGenerator \r\n2. Set OFPath via \"change OF Path\" (i.e ~/Desktop/openFrameworks)\r\n3. Close projectGenerator\r\n4. Run projectGenerator\r\n5. Set OFPath via \"change OF Path\" to different folder (i.e ~/Desktop/openFrameworks_DEVELOP)\r\n6. Generate examples\r\n\r\nOutcome:\r\nGenerate examples will use previous settings (i.e ~/Desktop/openFrameworks)\r\n\r\nPossible Fix:\r\nsetOFRoot needs to be called again in askOFRoot?","number":1142,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1142","labels":[{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"31e03a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed"},{"color":"444444","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator"}],"id":3999333,"closed_at":"2012-04-19T17:54:10Z","created_at":"2012-04-06T02:26:31Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"4dee8cb7b3cab6548c82cfe1539a4284","url":"https://api.github.com/users/pabloriera","login":"pabloriera","id":1613757,"avatar_url":"https://secure.gravatar.com/avatar/4dee8cb7b3cab6548c82cfe1539a4284?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"several problems with branch develop in Ubuntu 11.04 64 Bits","html_url":"https://github.com/openframeworks/openFrameworks/issues/1141","comments":10,"assignee":null,"updated_at":"2012-04-05T17:55:24Z","body":"Hi, I have recently started with OF and I had some issues, I think regarded to the 64 Bit experience.\r\n\r\nThe first thing I found was that the createProjets.py doesn't find the right templates in the linux64 folder, this was fix appending the \"arch\" variable to the path of the templates.\r\n\r\nI was tring to test de projectGenerator in devApps, so I wanted to create these CBP files. I added some lines to the createProjects.py to also create the projects in the devApps folder.\r\n\r\nThe projectGenerator seems to work fine, I was able to build it and use it.\r\n\r\nThen I wanted to try the basic examples to check that everything is working, so I pick the audio examples to try. I couldn't build the projects because it couldn't find the libopencv*.a dependencies. I couldn't find a reason yet. I think there is a problem with the CBP files and the addons path.\r\n\r\nGoodbyes","number":1141,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1141","labels":[],"id":3989705,"closed_at":"2012-04-05T17:55:23Z","created_at":"2012-04-05T15:04:58Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"3b648c678136b3ace849c455b289861c","url":"https://api.github.com/users/katewatkins","login":"katewatkins","id":679361,"avatar_url":"https://secure.gravatar.com/avatar/3b648c678136b3ace849c455b289861c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"box2d question -- SIGABRT error","html_url":"https://github.com/openframeworks/openFrameworks/issues/1140","comments":2,"assignee":null,"updated_at":"2012-04-05T15:14:50Z","body":"I'm working on a blob tracking project (using TSPS: http://opentsps.com/) that involves the Box2d addon. I am tracking hand gestures and forming the blobs into digital shadows. One of the gestures (when velocity.x=negative value) triangulates the blob into polygons. \r\n\r\nThe app was working fine until today when I was trying to break up the blob into smaller/nicer looking polys, rather than just using the center of the blob. Now I'm getting a SIGABRT error, which I have narrowed it down to 2 lines of code -- I know that this function is causing the error: GoodShape();\r\n\r\nif(newTriangle.poly.isGoodShape()) {\r\n\r\nnewTriangle.poly.create(box2d.getWorld());\r\n\r\n\r\nI have noticed that it will skip over \"bad\" shapes, but eventually it crashes the program and gives me the SIGABRT error. I could use some assistance to why this is happening.. \r\n\r\nHere is the functioning code -- triangulation based on the center of the blob: \r\n\r\nWORKING CODE ::::: \r\n\r\n//get the contour from the blob, and make a bunch of triangles out of it\r\n\r\nofPolyline\tshadow;\r\n\r\n//add all of the vertexes in the shadow to the outline\r\n\r\nfor (int j=0; j tris = triangulatePolygonWithOutline(resampled, outline);\r\n\r\n// add some random points inside\r\n\r\naddRandomPointsInside(shadow, 255);\r\n\r\n// now loop through all the triangles and make polygons for each one\r\n\r\nfor (int z=0; z if(newTriangle.poly.isGoodShape()) :: \r\n\r\n\t ofxBox2dPolygon poly;\r\n\r\n\t for (int j=0; j; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"f5f7469e272c21727bcbc98c0edf8567"'), ('date', 'Tue, 29 May 2012 18:46:24 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-04-22T20:03:27Z","body":"When letting the PG generate the linux CB examples, it never completes, but after a while it just doesn't do anything anymore, console output just stops (for >5min). This is on Ubuntu 11.10 32&64bit.\r\n\r\nA log can be found at http://pastebin.com/SGyzywvz . this way created using 1c65db62f791aa0a5f1e1d179d9f15f148e67f45.\r\nI also fired up the debugger to try to find what happens. when it stops printing anything to the console, I stopped it many times, it's always in `ofAppGlutWindow::runAppViaInfiniteLoop` at line `glutMainLoop();`\r\n\r\n@arturoc, could you maybe take a look at this?\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1135","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"closed_issues":70,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1135,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1135","assignee":null,"title":"PG never completes generating linux CB examples","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":"2012-04-22T20:03:27Z","created_at":"2012-04-02T19:53:39Z","state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3933212,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-09T21:14:03Z","body":"there is still an issue where you can copy a file into a folder without overwrite set to true.\r\n\r\nofFile::copyFromTo(\"myFile.txt\", \"someFolder/\");\r\n\r\nThe question is should we check to see if the destination is a folder? \r\nShould we use the trailing slash to determine and should we use the trailing slash to replicate command line copy ( ie copy to or copy into )","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1127","comments":13,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"closed_issues":70,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1127,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1127","assignee":null,"title":"copyFromTo bug","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":"2012-04-09T21:13:14Z","created_at":"2012-03-31T14:27:31Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3910488,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-08T16:45:20Z","body":"problem was that when calculating strideDst, dst.width was 0, as the allocation of dst happened later. closes #1123","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1125","comments":3,"milestone":null,"number":1125,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1125","assignee":null,"title":"bug fix for ofPixels::rotate90To with nRotations = 1","labels":[],"closed_at":"2012-04-08T16:45:20Z","created_at":"2012-03-29T22:38:39Z","state":"closed","user":{"url":"https://api.github.com/users/jesusgollonet","gravatar_id":"5008d5295e9bc2636313c7b50ed5981d","login":"jesusgollonet","id":31100,"avatar_url":"https://secure.gravatar.com/avatar/5008d5295e9bc2636313c7b50ed5981d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3889571,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1125.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1125","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1125.patch"}},{"updated_at":"2012-04-09T17:22:57Z","body":"if you do \r\n\r\n```c++\r\nofImage test;\r\ntest.loadImage(\"whichever.jpg\");\r\ntest.rotate90(1);\r\n```\r\n\r\nyou get a black image with the correct changed width and height.\r\n\r\nall other possible params to rotate90 work correctly. \r\n\r\nThe mistake must be here\r\n\r\nhttps://github.com/openframeworks/openFrameworks/blob/develop/libs/openFrameworks/graphics/ofPixels.cpp#L481\r\n\r\n```c++\r\nif(rotation == 1){\r\n\tPixelType * srcPixels = pixels;\r\n\tfor (int i = 0; i < height; i++){\r\n\t\tPixelType * dstPixels = dst.getPixels() + (strideDst - channels*(i+1));\r\n\t\tfor (int j = 0; j < width; j++){\r\n\t\t\tfor (int k = 0; k < channels; k++){\r\n\t\t\t\tdstPixels[k] = srcPixels[k];\r\n\t\t\t}\r\n\t\t\tsrcPixels += channels;\r\n\t\t\tdstPixels += strideDst;\r\n\t\t}\r\n\t}\r\n} \r\n```\r\n\r\nbut I haven't been able to figure it out","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1123","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"closed_issues":70,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1123,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1123","assignee":null,"title":"ofPixels::rotate90(nRotations) fails with nRotations = 1","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":"2012-04-09T17:22:57Z","created_at":"2012-03-29T16:35:55Z","state":"closed","user":{"url":"https://api.github.com/users/jesusgollonet","gravatar_id":"5008d5295e9bc2636313c7b50ed5981d","login":"jesusgollonet","id":31100,"avatar_url":"https://secure.gravatar.com/avatar/5008d5295e9bc2636313c7b50ed5981d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3883416,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-09T21:15:30Z","body":"right now you can get a nasty crash if you try and draw a cv image that hasn't been allocated. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1122","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"closed_issues":70,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1122,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1122","assignee":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofxOpenCv updateTexture and getPixelsRef should check for allocation","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":"2012-04-09T21:13:14Z","created_at":"2012-03-29T15:40:25Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3882327,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-29T16:23:28Z","body":"Fixes the createProjects.py script to work correctly with the new examples directory structure (including ignoring gitignore and gitkeep files).\r\n\r\nEDIT: sorry I realised this is going to be deprecated by the project generator! I needed it to work today and forgot to go digging...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1121","comments":0,"milestone":null,"number":1121,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1121","assignee":null,"title":"Bugfix: windows code::blocks createprojects.py script","labels":[],"closed_at":"2012-03-29T16:23:28Z","created_at":"2012-03-29T03:18:37Z","state":"closed","user":{"url":"https://api.github.com/users/gameoverhack","gravatar_id":"397ac2141aace0681a354185e7efb0f1","login":"gameoverhack","id":331599,"avatar_url":"https://secure.gravatar.com/avatar/397ac2141aace0681a354185e7efb0f1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3869447,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1121.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1121","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1121.patch"}},{"updated_at":"2012-03-28T14:59:37Z","body":"hi guys,\r\n\r\nive added support to display OF apps on External Displays from the iPhone/iPad over VGA and AirPlay.\r\nthere is some cool possibilities for gaming and also using iOS devices for live performance visuals.\r\n\r\nthere is quite a lot of changes in this feature.\r\ni had to make some changes to the ES1 renderer to get resizing of the EAGLView working properly.\r\nwill need to apply similar changes to ES2 but not sure what the current status of ES2 is...?? who is the best person to chat to about this?\r\n\r\nthere is an iosExternalDisplayExample included.\r\nyou can test on Simulator by selecting Hardware => TV out => and select an external display.\r\nto test on the device, connect to a tv/projector using a Apple VGA Adapter or connect to your Apple TV using AirPlay. here is how => http://support.apple.com/kb/HT5209?viewlocale=en_US\r\n\r\nmirroring will work on devices that support it (iPhone 4S, iPad2, iPad3).\r\n\r\nfixes #436","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1119","comments":4,"milestone":null,"number":1119,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1119","assignee":null,"title":"feature - iOS External Display support for VGA and AirPlay","labels":[],"closed_at":"2012-03-28T14:45:13Z","created_at":"2012-03-28T14:17:44Z","state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3853447,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1119.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1119","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1119.patch"}},{"updated_at":"2012-03-26T12:21:41Z","body":"Hello.\r\n\r\nI'm trying to run camera frame grabing in OSX Lion.\r\nSimple ofVideoGrabber doesn't work - even if I link it with 10.6 SDK (and 10.6 is deployment target) I receive crash in initialization of ofVideoGrabber. Details are the same as in http://forum.openframeworks.cc/index.php/topic,6776.0.html\r\n\r\nI tryed QtKitMovieGrabberExample. It had some problems in compilation - texture property was not synthesized, I wrote this property and compilation run well.\r\nBut linking is fault. All I receive form linker is:\r\n\r\n*Ld bin/movieGrabberExampleDebug.app/Contents/MacOS/movieGrabberExampleDebug normal i386\r\n cd /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample\r\n setenv MACOSX_DEPLOYMENT_TARGET 10.6\r\n /Developer/usr/bin/clang++ -arch i386 -isysroot /Developer/SDKs/MacOSX10.6.sdk -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freeimage/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/GLee/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/rtAudio/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/fmodex/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freetype/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx -F/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin -F/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/glut/lib/osx -filelist /Users/yltastep/Library/Developer/Xcode/DerivedData/movieGrabberExample-aftkspwrgtotrteyzaplfbqzeasd/Build/Intermediates/movieGrabberExample.build/Debug/movieGrabberExample.build/Objects-normal/i386/movieGrabberExampleDebug.LinkFileList -mmacosx-version-min=10.6 -dead_strip ../../../libs/poco/lib/osx/PocoFoundation.a ../../../libs/poco/lib/osx/PocoNet.a ../../../libs/poco/lib/osx/PocoXML.a ../../../libs/poco/lib/osx/PocoUtil.a ../../../libs/tess2/lib/osx/tess2.a ../../../libs/glew/lib/osx/glew.a ../../../libs/cairo/lib/osx/cairo-script-interpreter.a ../../../libs/cairo/lib/osx/cairo.a ../../../libs/cairo/lib/osx/pixman-1.a ../../../libs/fmodex/lib/osx/libfmodex.dylib ../../../libs/rtAudio/lib/osx/rtAudio.a /Users/yltastep/Documents/XCode/openframeworks/libs/openFrameworksCompiled/lib/osx/openFrameworksDebug.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/GLee/lib/osx/GLee.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/rtAudio/lib/osx/rtAudio.a -framework AGL -framework ApplicationServices -framework AudioToolbox -framework Carbon -framework CoreAudio -framework CoreFoundation -framework CoreServices -framework OpenGL -framework QuickTime -framework AppKit -framework Cocoa -framework IOKit -framework GLUT /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoFoundation.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoNet.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoUtil.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoXML.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freetype/lib/osx/freetype.a -lfmodex /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx/freeimage.a -framework QTKit -framework Quartz -framework QuartzCore -o /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin/movieGrabberExampleDebug.app/Contents/MacOS/movieGrabberExampleDebug*\r\n\r\n**Command /Developer/usr/bin/clang++ failed with exit code 1**\r\n\r\nSo no explanation of problem.\r\n\r\nIs somebody ran this example successfully ?\r\nAnd what I'm doing wrong ?\r\n\r\nThanks in advance !\r\n\r\nWith regards.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1113","comments":1,"milestone":null,"number":1113,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1113","assignee":null,"title":"Issue with QtKitMovieGrabberExample in apps/devapps","labels":[],"closed_at":"2012-03-26T12:21:41Z","created_at":"2012-03-26T12:12:07Z","state":"closed","user":{"url":"https://api.github.com/users/OlexandrStepanov","gravatar_id":"aa6e2a475cab75513c9cc435b28eef31","login":"OlexandrStepanov","id":971079,"avatar_url":"https://secure.gravatar.com/avatar/aa6e2a475cab75513c9cc435b28eef31?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3807464,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-26T15:05:42Z","body":"Further fixes to the code style. Closes #1072 (again).\r\n\r\n`sp_angle_word=add` fixes Elliot's problem where `vector particles;` turns into `vectorparticles;` We actually want a space there, right, @ofTheo?\r\n\r\n`tok_split_gte` fixes the problem where a `>=` gets turned into a template.\r\n\r\nThe rest fixes there problem where existing alignment in variable declarations and definitions was not removed.\r\nAlso, I fixed some alignment and spacing problems I discovered w.r.t `&` and `*`.\r\n\r\n@elliotwoods, @ofTheo: Could you please take a look if it's good now? I checked that OF compiles, and browsed through the changes compared to before my fixes, and it looks good to me.\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1111","comments":0,"milestone":null,"number":1111,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1111","assignee":null,"title":"Codestyle fixes","labels":[],"closed_at":"2012-03-26T15:05:42Z","created_at":"2012-03-26T12:04:30Z","state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3807368,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1111.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1111","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1111.patch"}},{"updated_at":"2012-05-16T11:44:58Z","body":"*As good as done, this might as well make it into 0071, see below.*\r\n\r\n~~Relevant issue #1081. This is the first round of fixes to the existing structure. \r\nI'd like to complete/refine the overhaul, but make the changes visible for everyone, so please DON'T MERGE this yet. ~~\r\n~~Better, please take a look at #1081, and answer my questions. :-)~~","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1107","comments":8,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"closed_issues":70,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1107,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1107","assignee":null,"title":"Gitignore structure overhaul","labels":[],"closed_at":"2012-05-16T11:44:58Z","created_at":"2012-03-24T18:13:45Z","state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3793561,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1107.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1107","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1107.patch"}},{"updated_at":"2012-03-23T13:10:45Z","body":"heavy style rewrite of advanced3dExample\r\nThe suggestion is still out to split it into multiple smaller examples (hence viewportExample)\r\nbut bit worried that adding lots of examples now is probably going to be rejected \r\n\r\nSo focused mostly on updating style of advanced3dExample to follow style guides\r\n\r\nand ran uncrustify afterwards","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1106","comments":0,"milestone":null,"number":1106,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1106","assignee":null,"title":"style fixes to advanced3dExample, added viewportExample","labels":[],"closed_at":"2012-03-23T13:10:45Z","created_at":"2012-03-23T12:01:37Z","state":"closed","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3778865,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1106.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1106","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1106.patch"}},{"updated_at":"2012-03-23T14:42:04Z","body":"heavy style rewrite of advanced3dExample\r\nThe suggestion is still out to split it into multiple smaller examples (hence viewportExample)\r\nbut bit worried that adding lots of examples now is probably going to be rejected \r\n\r\nSo focused mostly on updating style of advanced3dExample to follow style guides\r\n\r\nand ran uncrustify afterwards","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1105","comments":3,"milestone":null,"number":1105,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1105","assignee":null,"title":"style fixes to advanced3dExample, added viewportExample","labels":[],"closed_at":"2012-03-23T12:01:03Z","created_at":"2012-03-23T12:00:22Z","state":"closed","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3778844,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1105.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1105","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1105.patch"}},{"updated_at":"2012-03-23T01:00:11Z","body":"Due to https://github.com/gameoverhack/openFrameworks/commit/68a9805c5a76fcf9bb620c317c1ad9087d49e456\r\n\r\nit appears we need to use ofEvents().someEvent instead of ofEvents.someEvent...\r\n\r\n...fixed the advancedEventsExample to use this syntax","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1104","comments":0,"milestone":null,"number":1104,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1104","assignee":null,"title":"Bug fix advanced events example","labels":[],"closed_at":"2012-03-23T01:00:11Z","created_at":"2012-03-23T00:25:41Z","state":"closed","user":{"url":"https://api.github.com/users/gameoverhack","gravatar_id":"397ac2141aace0681a354185e7efb0f1","login":"gameoverhack","id":331599,"avatar_url":"https://secure.gravatar.com/avatar/397ac2141aace0681a354185e7efb0f1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3773505,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1104.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1104","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1104.patch"}},{"updated_at":"2012-04-09T17:29:41Z","body":"I guess this is a renaming in progress or gone wrong, but currently PG generates folder for examples which are not there.\r\n\r\n examples/graphics/InstagramLikeImageFilters/\r\n\texamples/video/movieGrabberExample/\r\n\texamples/video/moviePlayerExample/\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1102","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"closed_issues":70,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1102,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1102","assignee":null,"title":"PG generates imagined examples","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":"2012-04-09T17:29:41Z","created_at":"2012-03-21T20:58:28Z","state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3753360,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-22T20:01:00Z","body":"I just found out that the PG puts a fully populated addons.make file in (presumably - only tested a handful) all examples which don't already have one. This is wrong behaviour and leads to unnecessary compilation of addons which are not even needed for the respective example.\r\n\r\n~~AFAICT, it does not overwrite examples where there is already an addons.make, but I only checked with a couple.~~\r\nEdit: I was wrong, PG indeed writes changes to existing addons.make, too.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1101","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"closed_issues":70,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1101,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1101","assignee":null,"title":"Project generator messes with addons.make files in example directories","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":"2012-04-22T20:01:00Z","created_at":"2012-03-21T20:45:18Z","state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3753147,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T08:19:08Z","body":"Hi oF team! I'm having a issue while using some Audio Units along with oF. On Cmd-q, I get an EXC_BAD_ACCESS on the line (in ofAppRunner.cpp): \r\n\r\n```C++\r\nwindow->runAppViaInfiniteLoop(OFSAptr.get());\r\n```\r\n\r\nThis happens before my app's exit() gets called, before any destructors get called, and before any callbacks registered to ofEvents().exit get called. This seems to occur while using any units by Native Instruments, though not all 3rd party units are as tempermental. I've tested with both the current develop and master branch as of March 20. Mini reproduction example follows:\r\n\r\n```C++\r\n#include \"testApp.h\"\r\n#include \r\n\r\nAUGraph graph;\r\n\r\nvoid testApp::setup(){\r\n// Replace this with the description for a 3rd party Audio Unit\r\n// that you have installed. Run \"auval -a\" to see a list of\r\n// Audio Units you have available. Not all 3rd party Audio Units\r\n// trigger a crash (though all of NI's seem to). Apple® brand \r\n// Audio Units don't seem to be as tempermental\r\n// \r\n// This description is for Native Instruments' Reaktor 5 synth.\r\n AudioComponentDescription desc = {'aumu', 'NiR5', '-NI-'};\r\n AUNode node; \r\n NewAUGraph(&graph);\r\n AUGraphAddNode(graph, &desc, &node);\r\n AUGraphInitialize(graph);\r\n AUGraphOpen(graph);\r\n \r\n// uncomment this to \"fix\"\r\n// shutdownAUGraph();\r\n}\r\n\r\nvoid testApp::shutdownAUGraph(){\r\n AUGraphClose(graph);\r\n AUGraphUninitialize(graph);\r\n DisposeAUGraph(graph);\r\n}\r\n\r\nvoid testApp::exit(){\r\n shutdownAUGraph();\r\n}\r\n```","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1100","comments":8,"milestone":null,"number":1100,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1100","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"EXC_BAD_ACCESS thrown on exit before any exit routines are called","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":"2012-05-16T08:19:08Z","created_at":"2012-03-20T15:41:47Z","state":"closed","user":{"url":"https://api.github.com/users/admsyn","gravatar_id":"9bfde17cfd50ff8f12cae51ab1079d72","login":"admsyn","id":609318,"avatar_url":"https://secure.gravatar.com/avatar/9bfde17cfd50ff8f12cae51ab1079d72?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3730068,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-17T21:01:03Z","body":"iPhoneGuiExample created by the projectGenerator seems to have an issue with XIB files.\r\nthe XIB is included in the project but can not be viewed inside the xcode project.\r\nin another instance, it was causing the app to crash.\r\n\r\nwhen removing the XIB and adding it back to the project manually, it start working again.\r\nwhich makes me believe its got something to do with the way projectGenerator is adding the XIB to the project.\r\n\r\nive compared the before and after (adding the XIB back manually) and here are the differences in the xcode projects.\r\nnote, the top line is the before and the bottom is the after.\r\n\r\n/* MyGuiView.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; name = MyGuiView.xib; path = gui/MyGuiView.xib; sourceTree = \"\"; };\r\n/* MyGuiView.xib */ = {isa = PBXFileReference; explicitFileType = file; fileEncoding = 30; name = MyGuiView.xib; path = src/gui/MyGuiView.xib; sourceTree = SOURCE_ROOT; };\r\n\r\n/* MyGuiView.xib in Resources */\r\n/* MyGuiView.xib in Sources */","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1099","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"closed_issues":70,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1099,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1099","assignee":null,"title":"issue with projectGenerator and XIB files.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":"2012-04-17T21:01:02Z","created_at":"2012-03-19T14:27:25Z","state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3710691,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-12T00:25:28Z","body":"SKIP_INSTALL in iPhone+OF Lib.xcodeproj Build Settings is currently set to NO.\r\nforum users have been reporting this to be causing issues when trying to build an archive for a AdHoc release or when trying to build for the app store.\r\n\r\nwhen submitting to the app store the following error message comes up,\r\n\"emptyExample” does not contain a single–bundle application or contains multiple products. Please select another archive, or adjust your scheme to create a single–bundle application\r\n\r\nswitching SKIP_INSTALL to YES fixes the issue.\r\nalthough im not entirely sure what else this might effect... any ideas?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1097","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"closed_issues":70,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1097,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1097","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"SKIP_INSTALL in iPhone+OF Lib.xcodeproj Build Settings should be set to YES","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":"2012-04-12T00:25:28Z","created_at":"2012-03-19T13:31:39Z","state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3709730,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-19T12:54:51Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1096","comments":0,"milestone":null,"number":1096,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1096","assignee":null,"title":"added an example for variable EAGLView window size","labels":[],"closed_at":"2012-03-19T12:54:51Z","created_at":"2012-03-19T12:48:23Z","state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3709105,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1096.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1096","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1096.patch"}},{"updated_at":"2012-03-19T12:37:03Z","body":"this is a small change but opens up a range of possibilities :)\r\n\r\nallows for EAGLView to be created at different width and height to UIScreen dimensions.\r\nand be able to position EAGLView anywhere on the screen.\r\n\r\nthis addition only applies to the native iOS-OF app structure as shown in iosNativeExample.\r\nthis addition leaves standalone iOS-OF apps unchanged.\r\n\r\nhas been tested with all iOS examples.\r\n\r\nfixes #1094","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1095","comments":0,"milestone":null,"number":1095,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1095","assignee":null,"title":"EAGLView can be created to any width and height.","labels":[],"closed_at":"2012-03-19T12:37:03Z","created_at":"2012-03-19T11:37:56Z","state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3708367,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1095.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1095","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1095.patch"}},{"updated_at":"2012-03-19T12:46:06Z","body":"allow for EAGLView to be created at different width and height to UIScreen dimensions.\r\nand be able to position EAGLView anywhere on the screen.\r\n\r\nthis will have many advantages when embedding OF into iOS apps where the full screen is not required.\r\nthis will also allow for a landscape EAGLView to be created inline with apple developer guidelines, at the right dimensions rather then rotating a portrait view.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1094","comments":0,"milestone":null,"number":1094,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1094","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"create EAGLView with any width and height.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2012-03-19T12:46:06Z","created_at":"2012-03-19T11:29:32Z","state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3708296,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-19T02:50:45Z","body":"fixed a bug theo found with ofDrawBitmapString and newlines","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1093","comments":1,"milestone":null,"number":1093,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1093","assignee":null,"title":"drawString bug","labels":[],"closed_at":"2012-03-19T02:50:45Z","created_at":"2012-03-19T02:40:39Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3704539,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1093.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1093","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1093.patch"}},{"updated_at":"2012-03-20T05:00:52Z","body":"Should solve issue #1087\r\n\r\nhttps://github.com/openframeworks/openFrameworks/issues/1087\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1092","comments":4,"milestone":null,"number":1092,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1092","assignee":null,"title":"Copy Default.png and Icon.png for ios project generation","labels":[],"closed_at":"2012-03-20T05:00:52Z","created_at":"2012-03-18T22:27:31Z","state":"closed","user":{"url":"https://api.github.com/users/jvcleave","gravatar_id":"9c0384a91739bea093f453cf40a59742","login":"jvcleave","id":150037,"avatar_url":"https://secure.gravatar.com/avatar/9c0384a91739bea093f453cf40a59742?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3703045,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1092.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1092","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1092.patch"}},{"updated_at":"2012-03-19T02:50:45Z","body":"certain bitmapstring modes do \t\t\r\n\tofTranslate(x, y, 0);\r\n\r\nat the start but then don't set x to 0\r\n\r\nso when you get a \\n \r\nthis code below fails and does double translation because it sets the current draw pos to x instead of 0 \r\n\r\n\t\tif(textString[c] == '\\n'){\r\n\r\n\t\t\tsy += bOrigin ? -1 : 1 * (fontSize*1.7);\r\n\t\t\tsx = x;\r\n\r\n\r\nsolution:\r\nfor any mode which does translate set x to 0 after the initial translate call. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1091","comments":3,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"closed_issues":70,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1091,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1091","assignee":null,"title":"ofDrawBitmapString bug with \\n ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/critical","name":"critical","color":"ff0000"}],"closed_at":"2012-03-19T02:50:45Z","created_at":"2012-03-18T21:02:52Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3702507,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-18T13:42:09Z","body":"removed initWithFrame method from EAGLView because it was stopping EAGLView from being extended and it was never being used.\r\n\r\ncleaned up EAGLView to conform to OF code style guide.\r\n\r\nfixes #1089","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1090","comments":0,"milestone":null,"number":1090,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1090","assignee":null,"title":"EAGLView clean.","labels":[],"closed_at":"2012-03-18T13:42:09Z","created_at":"2012-03-18T13:00:09Z","state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3699817,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1090.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1090","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1090.patch"}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=6&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4990'), ('content-length', '38771'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"4d3ddafd0fb5d3eeeadfa1308648cafe"'), ('date', 'Tue, 29 May 2012 18:46:26 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1089","html_url":"https://github.com/openframeworks/openFrameworks/issues/1089","body":"in a couple cases ive needed to extend EAGLView to give it some extra functionality.\r\none instance of this was getting the Qualcomm AR library working with OF.\r\n\r\ncurrently the EAGLView is not extendible because it defines,\r\n- (id) initWithFrame:(CGRect)frame\r\nwithout calling the same super function.\r\noverwriting this method means [super initWithFrame:frame] never gets called and this throws an error.\r\n\r\nbesides this, i think it would be nice to give EAGLView the ability to accept a custom renderer which extends ESRenderer.","closed_at":"2012-03-18T14:55:39Z","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","color":"2babad","name":"iOS"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","color":"622425","name":"feature"}],"title":"make EAGLView extendible.","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-03-18T11:52:59Z","updated_at":"2012-03-18T23:41:17Z","comments":4,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","due_on":"2012-06-25T07:00:00Z","open_issues":81,"title":"0072 Release","created_at":"2011-12-02T15:29:48Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":5,"id":61810,"state":"open","closed_issues":21},"number":1089,"id":3699564,"assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1088","html_url":"https://github.com/openframeworks/openFrameworks/issues/1088","body":"![Alt text](http://dl.dropbox.com/u/3828359/OF_forum/ios_project_schemes.png)\r\n\r\nwhen building ios projects using projectGenerator, the project schemes are incorrect.\r\nthere is a mac osx scheme which shouldn't be there.\r\nthe correct ios scheme is there but named incorrectly to iPhoneEmptyExample - should be the example project name.","closed_at":"2012-04-17T21:01:02Z","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","color":"2babad","name":"iOS"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","color":"444444","name":"project generator"}],"title":"ios projectGenerator schemes issue","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-03-18T05:42:46Z","updated_at":"2012-04-17T21:01:02Z","comments":0,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","due_on":"2012-04-08T07:00:00Z","open_issues":0,"title":"0071 Release","created_at":"2011-12-02T15:29:28Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":4,"id":61808,"state":"closed","closed_issues":70},"number":1088,"id":3698387,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1087","html_url":"https://github.com/openframeworks/openFrameworks/issues/1087","body":"currently the Default.png and Icon.png are missing from the ios examples data folder.\r\nshould they be included inside the data folder of each ios example?\r\nor is this something for the projectGenerator to take care of?","closed_at":"2012-04-17T21:01:02Z","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","color":"2babad","name":"iOS"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","color":"444444","name":"project generator"}],"title":"ios examples are missing Default.png and Icon.png when built using projectGenerator","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-03-18T04:57:10Z","updated_at":"2012-04-17T21:01:02Z","comments":4,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","due_on":"2012-04-08T07:00:00Z","open_issues":0,"title":"0071 Release","created_at":"2011-12-02T15:29:28Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":4,"id":61808,"state":"closed","closed_issues":70},"number":1087,"id":3698291,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1086","html_url":"https://github.com/openframeworks/openFrameworks/issues/1086","body":"when building ios examples using projectGenerator,\r\nassimpExample is missing some information in the Project.xcconfig\r\n\r\nis, \r\nOTHER_LDFLAGS = $(OF_CORE_LIBS) \r\nHEADER_SEARCH_PATHS = $(OF_CORE_HEADERS)\r\n\r\nshoud be,\r\nOTHER_LDFLAGS = $(OF_CORE_LIBS) $(OF_PATH)/addons/ofxAssimpModelLoader/libs/assimp/lib/iphone/assimp.a\r\nHEADER_SEARCH_PATHS = $(OF_CORE_HEADERS) $(OF_PATH)/addons/ofxAssimpModelLoader/libs/assimp/include\r\n","closed_at":"2012-04-17T21:01:02Z","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","color":"2babad","name":"iOS"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","color":"444444","name":"project generator"}],"title":"ios assimpExample project not building correctly by projectGenerator","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-03-18T04:41:43Z","updated_at":"2012-04-17T21:01:02Z","comments":3,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","due_on":"2012-04-08T07:00:00Z","open_issues":0,"title":"0071 Release","created_at":"2011-12-02T15:29:28Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":4,"id":61808,"state":"closed","closed_issues":70},"number":1086,"id":3698255,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1085","html_url":"https://github.com/openframeworks/openFrameworks/issues/1085","body":"some renaming, indentation, adding empty methods. fixed serial and golan's noise examples.","closed_at":"2012-03-17T19:09:08Z","labels":[],"title":"cleaned up some examples","pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/1085.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/1085","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1085.diff"},"created_at":"2012-03-17T19:06:12Z","updated_at":"2012-03-17T19:09:08Z","comments":0,"milestone":null,"number":1085,"id":3696044,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1084","html_url":"https://github.com/openframeworks/openFrameworks/issues/1084","body":"started cleaning up the iOS examples.\r\nlet me know if this all looks ok and i'll continue on with the rest of them.","closed_at":"2012-03-18T13:41:11Z","labels":[],"title":"bugfix 1071 - clean up ios examples","pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/1084.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/1084","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1084.diff"},"created_at":"2012-03-17T15:57:03Z","updated_at":"2012-03-18T13:41:11Z","comments":2,"milestone":null,"number":1084,"id":3695050,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1083","html_url":"https://github.com/openframeworks/openFrameworks/issues/1083","body":"setting overwrite to true fixed it with xcode 3.2.6 and 10.6.8 (similar to lines above 181)","closed_at":"2012-03-17T06:04:12Z","labels":[],"title":"projectGenerator files missing .plist","pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/1083.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/1083","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1083.diff"},"created_at":"2012-03-17T05:59:25Z","updated_at":"2012-03-17T06:04:12Z","comments":0,"milestone":null,"number":1083,"id":3692975,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/jvcleave","gravatar_id":"9c0384a91739bea093f453cf40a59742","login":"jvcleave","avatar_url":"https://secure.gravatar.com/avatar/9c0384a91739bea093f453cf40a59742?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":150037}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1082","html_url":"https://github.com/openframeworks/openFrameworks/issues/1082","body":"i previously pushed the changes directly upstream, but should have done a pull request. theo noticed that the indentation on the header files was all wrong so i just went through and fixed them.","closed_at":"2012-03-17T05:39:57Z","labels":[],"title":"cleaned up some examples","pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/1082.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/1082","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1082.diff"},"created_at":"2012-03-17T05:27:20Z","updated_at":"2012-03-17T05:39:57Z","comments":1,"milestone":null,"number":1082,"id":3692871,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1081","html_url":"https://github.com/openframeworks/openFrameworks/issues/1081","body":"The gitignore structure needs an overhaul. It's become really confusing to read, rules are duplicated (that could be interesting to debug one day:P), and some things don't get ignored properly.\r\nI plan to tackle this some time soon, but will wait for the project manager and whole repo to settle down a bit more. Work will probably happen in https://github.com/bilderbuchi/openFrameworks/tree/gitignore-fixes.\r\n\r\nThis issue is for the RFC from the core that I'll definitely have when figuring out what you really want/need ignored and what not.","closed_at":"2012-05-27T11:02:43Z","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","color":"622425","name":"feature"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","color":"DDDDDD","name":"section-internals"}],"title":"Overhaul .gitignore structure","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-03-16T20:23:21Z","updated_at":"2012-05-27T11:02:43Z","comments":9,"milestone":null,"number":1081,"id":3688749,"assignee":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1080","html_url":"https://github.com/openframeworks/openFrameworks/issues/1080","body":"I don't know if this is on the TOTO already (I assume it is), but many of the scripts in the scripts folder are broken currently but still in the repo. \r\nIn my opinion, these have to be looked at/updated/deleted before we release, otherwise we ship broken stuff, so I'm milestoning 0071.","closed_at":"2012-05-24T21:08:58Z","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"}],"title":"Look at/update scripts","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-03-16T20:15:12Z","updated_at":"2012-05-25T08:15:53Z","comments":6,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","due_on":"2012-04-08T07:00:00Z","open_issues":0,"title":"0071 Release","created_at":"2011-12-02T15:29:28Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":4,"id":61808,"state":"closed","closed_issues":70},"number":1080,"id":3688635,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1079","html_url":"https://github.com/openframeworks/openFrameworks/issues/1079","body":"Some clean-up and fixes to the gitignores, to properly a compiled project generator.\r\n\r\nGenerally, the gitignore structure needs an overhaul. It's become really confusing to read, rules are duplicated (that could be interesting to debug :P), etc., but I'll postpone that to a later date. I'll be back, I guess.\r\n\r\nThis goes towards fixing part of #1076","closed_at":"2012-03-16T19:05:54Z","labels":[],"title":".gitignore fixes","pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/1079.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/1079","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1079.diff"},"created_at":"2012-03-16T19:00:29Z","updated_at":"2012-03-16T19:20:46Z","comments":1,"milestone":null,"number":1079,"id":3687448,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1078","html_url":"https://github.com/openframeworks/openFrameworks/issues/1078","body":"ofFbo on iOS is not rendering correctly.\r\nwill need to investigate further.\r\nhttp://forum.openframeworks.cc/index.php/topic,7484.0.html","closed_at":"2012-05-16T11:45:33Z","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","color":"2babad","name":"iOS"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"}],"title":"ofFbo on iOS - Scaling and Offset Issues","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-03-16T10:15:34Z","updated_at":"2012-05-16T11:45:33Z","comments":11,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","due_on":"2012-04-08T07:00:00Z","open_issues":0,"title":"0071 Release","created_at":"2011-12-02T15:29:28Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":4,"id":61808,"state":"closed","closed_issues":70},"number":1078,"id":3680047,"assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1077","html_url":"https://github.com/openframeworks/openFrameworks/issues/1077","body":"now the ofMesh can be rendered using quads, quads strips or polygon","closed_at":"2012-03-16T15:07:05Z","labels":[],"title":"added GL_QUADS GL_QUAD_STRIP and GL_POLYGON to the OF_PRIMITIVES.","pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/1077.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/1077","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1077.diff"},"created_at":"2012-03-16T05:16:13Z","updated_at":"2012-03-16T15:07:05Z","comments":6,"milestone":null,"number":1077,"id":3677810,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/roymacdonald","gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","login":"roymacdonald","avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":974878}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1076","html_url":"https://github.com/openframeworks/openFrameworks/issues/1076","body":"Hi!\r\n\r\nSomething's not working with the gitignore structure currently.\r\nFor example, after compiling the project explorer (just say `make` in its directory) I get the following untracked files:\r\n\r\n\t\t# Untracked files:\r\n\t\t# (use \"git add ...\" to include in what will be committed)\r\n\t\t#\r\n\t\t#\tapps/devApps/projectGenerator/bin/libs/\r\n\t\t#\tapps/devApps/projectGenerator/bin/projectGenerator\r\n\t\t#\tapps/devApps/projectGenerator/obj/\r\n\r\nI think other things are not being correctly ignored in the examples, but could not repro, see below.\r\n\r\nAlso, I just tried to generate the examples, but the PG segfaults on me (but that's probably because it's a moving target currently.\r\n\r\nSorry for the sloppy reporting, I'm in a hurry but wanted to get this out there. Will try to get more detail/better reporting tomorrow, or close this again if appropriate.\r\n\r\n\r\n","closed_at":"2012-03-16T20:18:47Z","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","color":"444444","name":"project generator"}],"title":"gitignore structure has some holes, project generator segfaults","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-03-15T22:15:46Z","updated_at":"2012-03-17T02:36:16Z","comments":16,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","due_on":"2012-04-08T07:00:00Z","open_issues":0,"title":"0071 Release","created_at":"2011-12-02T15:29:28Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":4,"id":61808,"state":"closed","closed_issues":70},"number":1076,"id":3674441,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1074","html_url":"https://github.com/openframeworks/openFrameworks/issues/1074","body":"Apply fixed code style to the OSC and logging examples.","closed_at":"2012-03-15T15:05:47Z","labels":[],"title":"bb examples codestyle cleanup","pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/1074.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/1074","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1074.diff"},"created_at":"2012-03-14T22:43:26Z","updated_at":"2012-03-15T15:05:47Z","comments":4,"milestone":null,"number":1074,"id":3658004,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1073","html_url":"https://github.com/openframeworks/openFrameworks/issues/1073","body":"I fixed the bugs in #1072 manually now. UniversalIndentGUI export seems to be messed up somehow, and the config is just a text file. Style conversion output looks good, the bugs in #1072 are fixed.","closed_at":"2012-03-15T08:42:05Z","labels":[],"title":"Codestyle fixes","pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/1073.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/1073","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1073.diff"},"created_at":"2012-03-14T22:32:04Z","updated_at":"2012-03-15T08:42:05Z","comments":1,"milestone":null,"number":1073,"id":3657847,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1072","html_url":"https://github.com/openframeworks/openFrameworks/issues/1072","body":"I found some bugs in the current uncrustify code style. I tried to fix them using universal indent GUI, but on saving I made a diff of the old and new config files, and there was more in there than I expected (and imho unrelated to the changes I made). \r\nProbably a version problem? UnivIndGUI 1.1.0, uncrustify 0.57\r\n\r\nAnyway, the bugs are the following, demonstrated by diffs I got from running the code style over some of my examples:\r\n\r\nEmpty function bodies are collapsed (don't know if this is actually desired):\r\n\r\n```c++\r\n-void testApp::gotMessage(ofMessage msg){\r\n-\r\n-}\r\n+void testApp::gotMessage(ofMessage msg){}\r\n```\r\nBraces after an else if line are moved to the next line:\r\n\r\n```c++\r\n-\t\telse if(m.getArgType(i) == OFXOSC_TYPE_FLOAT){\r\n+\t\telse if(m.getArgType(i) == OFXOSC_TYPE_FLOAT)\r\n+\t\t{\r\n```\r\n\r\nVariable name alignment is not removed:\r\n\r\n```c++\r\n-\t\tofTrueTypeFont\t\tfont;\r\n-\t\tofxOscReceiver\treceiver;\r\n+\t\tofTrueTypeFont font;\r\n+\t\tofxOscReceiver receiver;\r\n```\r\n\r\n\r\nThe options I changed to fix this were:\r\n\r\n* Deactivate Nl Collapse Empty Body to preserve empty function bodies in testapp.cpp files.\r\n* Set Remove Nl Elseif Brace.\r\n* Disable Add Space after Type rule to remove variable name alignment. (Don't know 100% about this, since setting it to Remove also looks correct)\r\n\r\n@danomatika, could you take a look?","closed_at":"2012-04-10T13:03:21Z","labels":[],"title":"code style config file bugs","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-03-14T19:22:15Z","updated_at":"2012-04-10T13:03:21Z","comments":11,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","due_on":"2012-06-25T07:00:00Z","open_issues":81,"title":"0072 Release","created_at":"2011-12-02T15:29:48Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":5,"id":61810,"state":"open","closed_issues":21},"number":1072,"id":3654585,"assignee":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1071","html_url":"https://github.com/openframeworks/openFrameworks/issues/1071","body":"@ofTheo requested that everyone look over their contributed examples before 0071 is released, and make sure they conform to https://github.com/openframeworks/openFrameworks/wiki/oF-code-style","closed_at":"2012-04-09T16:54:16Z","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","color":"d1af26","name":"example"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"}],"title":"examples should match the OF code style guidelines","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-03-14T15:19:09Z","updated_at":"2012-04-09T16:54:16Z","comments":15,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","due_on":"2012-04-08T07:00:00Z","open_issues":0,"title":"0071 Release","created_at":"2011-12-02T15:29:28Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":4,"id":61808,"state":"closed","closed_issues":70},"number":1071,"id":3650044,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1069","html_url":"https://github.com/openframeworks/openFrameworks/issues/1069","body":"Fix a capitalisation error introduced in 6aa9d1037ed2 - the path is `openFrameworks/libs/poco/include/Poco` not `openFrameworks/libs/poco/include/poco`. \r\nOF does not build on my linux machine without this, but builds without problems after the fix. I was kinda surprised that nobody caught/encountered this yet...","closed_at":"2012-03-13T21:10:27Z","labels":[],"title":"Fix poco include","pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/1069.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/1069","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1069.diff"},"created_at":"2012-03-13T20:54:52Z","updated_at":"2012-03-13T21:10:27Z","comments":0,"milestone":null,"number":1069,"id":3638151,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1067","html_url":"https://github.com/openframeworks/openFrameworks/issues/1067","body":"a bug in deserialization of ofMatrix4x4","closed_at":"2012-03-13T14:19:14Z","labels":[],"title":"Update libs/openFrameworks/math/ofMatrix4x4.h","pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/1067.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/1067","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1067.diff"},"created_at":"2012-03-13T13:58:38Z","updated_at":"2012-03-13T14:19:14Z","comments":3,"milestone":null,"number":1067,"id":3629561,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/roikr","gravatar_id":"b2e9245374200fd517b978805af456bb","login":"roikr","avatar_url":"https://secure.gravatar.com/avatar/b2e9245374200fd517b978805af456bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":210179}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1066","html_url":"https://github.com/openframeworks/openFrameworks/issues/1066","body":"Hi,\r\n\r\nLoading a JPG or PNG with a resolution of 1280x576 crashes the application (EXC_BAD_ACCESS)\r\nYou can test it yourself by loading an image with a size of 1280x576 pixels 72 DPI in the standard imageLoaderExample. I thought it had something to do with the aspect ratio, but it looks like it doesn't. Loading an image half the size 640x288 gives me the same error but loading an image quarter size (320x144) works perfect. \r\nOS -> Mac (Lion)\r\nOF -> of_preRelease_v007_osx\r\n\r\nHarm","closed_at":"2012-03-13T13:56:04Z","labels":[],"title":"ofImage loadImage() crash at a certain sizes (1280x576) ","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-03-13T13:50:46Z","updated_at":"2012-03-13T14:07:39Z","comments":2,"milestone":null,"number":1066,"id":3629436,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/harmvandeven","gravatar_id":"3d1fbd62d2c7c56ad4e144407f0d057d","login":"harmvandeven","avatar_url":"https://secure.gravatar.com/avatar/3d1fbd62d2c7c56ad4e144407f0d057d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":817338}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1065","html_url":"https://github.com/openframeworks/openFrameworks/issues/1065","body":"a bug with \r\ninline istream& operator>>(istream& is, ofMatrix4x4& M)","closed_at":"2012-03-13T14:00:59Z","labels":[],"title":"Update libs/openFrameworks/math/ofMatrix4x4.h","pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/1065.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/1065","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1065.diff"},"created_at":"2012-03-13T13:22:32Z","updated_at":"2012-03-13T14:00:59Z","comments":6,"milestone":null,"number":1065,"id":3629063,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/roikr","gravatar_id":"b2e9245374200fd517b978805af456bb","login":"roikr","avatar_url":"https://secure.gravatar.com/avatar/b2e9245374200fd517b978805af456bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":210179}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1064","html_url":"https://github.com/openframeworks/openFrameworks/issues/1064","body":"fixes #567","closed_at":"2012-03-13T12:53:19Z","labels":[],"title":"bugfix 567 - fixed numTouches in touchesBegan","pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/1064.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/1064","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1064.diff"},"created_at":"2012-03-13T12:52:41Z","updated_at":"2012-03-13T12:53:19Z","comments":0,"milestone":null,"number":1064,"id":3628625,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1061","html_url":"https://github.com/openframeworks/openFrameworks/issues/1061","body":"affects ofFbo, ofMatrix3x3; doesn't address outstanding MRT considerations","closed_at":"2012-03-12T16:22:06Z","labels":[],"title":"fixes a few return type errors that were caught in vs","pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/1061.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/1061","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1061.diff"},"created_at":"2012-03-12T16:18:46Z","updated_at":"2012-03-12T16:35:27Z","comments":2,"milestone":null,"number":1061,"id":3613994,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/kpasko","gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","login":"kpasko","avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":167271}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1060","html_url":"https://github.com/openframeworks/openFrameworks/issues/1060","body":"fixes #683","closed_at":"2012-03-12T13:06:34Z","labels":[],"title":"bugfix 683 iPhoneGuiExample","pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/1060.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/1060","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1060.diff"},"created_at":"2012-03-12T13:03:30Z","updated_at":"2012-03-12T13:06:34Z","comments":0,"milestone":null,"number":1060,"id":3610582,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=7&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4989'), ('content-length', '39063'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"fdba8110fdafd1567d86fdfe2d8eb3ac"'), ('date', 'Tue, 29 May 2012 18:46:27 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-03-12T15:01:00Z","body":"just noticed in ofSaveImage there is a default argument which sets the format ( the default being .png ) \r\nwondering why we have this argument when previous behavior was to determine format from extension? \r\n\r\nI only noticed it as it was polluting the auto complete for:\r\nOF_IMAGE_COLOR\r\nOF_IMAGE_COLOR_ALPHA\r\nOF_IMAGE_GRAYSCALE\r\n\r\nenum ofImageFormat {\r\n\tOF_IMAGE_FORMAT_BMP\t\t= 0,\r\n\tOF_IMAGE_FORMAT_ICO\t\t= 1,\r\n\tOF_IMAGE_FORMAT_JPEG\t= 2,\r\n\tOF_IMAGE_FORMAT_JNG\t\t= 3,\r\n\tOF_IMAGE_FORMAT_KOALA\t= 4,\r\n\tOF_IMAGE_FORMAT_LBM\t\t= 5,\r\n\tOF_IMAGE_FORMAT_IFF = OF_IMAGE_FORMAT_LBM,\r\n\tOF_IMAGE_FORMAT_MNG\t\t= 6,\r\n\tOF_IMAGE_FORMAT_PBM\t\t= 7,\r\n\tOF_IMAGE_FORMAT_PBMRAW\t= 8,\r\n\tOF_IMAGE_FORMAT_PCD\t\t= 9,\r\n\tOF_IMAGE_FORMAT_PCX\t\t= 10,\r\n\tOF_IMAGE_FORMAT_PGM\t\t= 11,\r\n\tOF_IMAGE_FORMAT_PGMRAW\t= 12,\r\n\tOF_IMAGE_FORMAT_PNG\t\t= 13,\r\n\tOF_IMAGE_FORMAT_PPM\t\t= 14,\r\n\tOF_IMAGE_FORMAT_PPMRAW\t= 15,\r\n\tOF_IMAGE_FORMAT_RAS\t\t= 16,\r\n\tOF_IMAGE_FORMAT_TARGA\t= 17,\r\n\tOF_IMAGE_FORMAT_TIFF\t= 18,\r\n\tOF_IMAGE_FORMAT_WBMP\t= 19,\r\n\tOF_IMAGE_FORMAT_PSD\t\t= 20,\r\n\tOF_IMAGE_FORMAT_CUT\t\t= 21,\r\n\tOF_IMAGE_FORMAT_XBM\t\t= 22,\r\n\tOF_IMAGE_FORMAT_XPM\t\t= 23,\r\n\tOF_IMAGE_FORMAT_DDS\t\t= 24,\r\n\tOF_IMAGE_FORMAT_GIF = 25,\r\n\tOF_IMAGE_FORMAT_HDR\t\t= 26,\r\n\tOF_IMAGE_FORMAT_FAXG3\t= 27,\r\n\tOF_IMAGE_FORMAT_SGI\t\t= 28,\r\n\tOF_IMAGE_FORMAT_EXR\t\t= 29,\r\n\tOF_IMAGE_FORMAT_J2K\t\t= 30,\r\n\tOF_IMAGE_FORMAT_JP2\t\t= 31,\r\n\tOF_IMAGE_FORMAT_PFM\t\t= 32,\r\n\tOF_IMAGE_FORMAT_PICT\t= 33,\r\n\tOF_IMAGE_FORMAT_RAW\t\t= 34\r\n};","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1059","comments":2,"milestone":null,"number":1059,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1059","assignee":null,"title":"what is the purpose of ofImageFormat enum ? ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":"2012-03-12T15:01:00Z","created_at":"2012-03-12T12:45:37Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3610389,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-17T16:40:38Z","body":"previously logged as PR #1004\r\nfixes #1057","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1058","comments":0,"milestone":null,"number":1058,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1058","assignee":null,"title":"support for new low-power GPS feature","labels":[],"closed_at":"2012-03-17T16:40:38Z","created_at":"2012-03-12T12:34:34Z","state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3610287,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1058.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1058","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1058.patch"}},{"updated_at":"2012-03-22T03:01:51Z","body":"add power-saving way to track general location when a GPS lock isn't needed.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1057","comments":1,"milestone":null,"number":1057,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1057","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"support for new low-power GPS feature","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2012-03-22T03:01:51Z","created_at":"2012-03-12T12:23:24Z","state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3610189,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-12T16:55:12Z","body":"ofMatrix3x3::entrywiseTimes' : missing return value with vs2010 at the moment,thxs","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1056","comments":4,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"closed_issues":70,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1056,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1056","assignee":null,"title":"ofMatrix3x3::entrywiseTimes missing return value","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":"2012-03-12T16:55:12Z","created_at":"2012-03-12T05:00:28Z","state":"closed","user":{"url":"https://api.github.com/users/liquidzym","gravatar_id":"166640c513e589c86d2de49c52258eb4","login":"liquidzym","id":51957,"avatar_url":"https://secure.gravatar.com/avatar/166640c513e589c86d2de49c52258eb4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3606284,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-11T22:52:34Z","body":"hi, im getting a crash when trying to generate ios projects.\r\nits happening when trying to replace the PROJECTNAME inside the findandreplaceInTexfile() method.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1054","comments":2,"milestone":null,"number":1054,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1054","assignee":null,"title":"projectGenerator crash when generating ios projects","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/critical","name":"critical","color":"ff0000"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":"2012-03-11T13:21:55Z","created_at":"2012-03-11T09:30:39Z","state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3600155,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-11T12:56:39Z","body":"ive merged ofxiOS into ofxiPhone.\r\n\r\nOF apps can now be embedded inside native ios apps.\r\nadded iosNativeExample to demonstrate/test this functionality.\r\n\r\nfixes #1049","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1053","comments":2,"milestone":null,"number":1053,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1053","assignee":null,"title":"merge ofxiOS into ofxiPhone","labels":[],"closed_at":"2012-03-11T12:56:39Z","created_at":"2012-03-11T01:33:38Z","state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3598709,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1053.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1053","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1053.patch"}},{"updated_at":"2012-03-11T15:24:35Z","body":"ofxiOS allows to embed OF apps at different levels in the iPhone application structure.\r\n\r\nhttps://github.com/julapy/ofxiOS","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1049","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"closed_issues":70,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":1049,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1049","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"merge ofxiOS into ofxiPhone","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2012-03-11T15:24:35Z","created_at":"2012-03-10T06:16:51Z","state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3593571,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-09T13:36:33Z","body":"the original example hat a rotating cube and a matrix transfomation, i made some moving lines instead.\r\nthey better show the difference between the floating point fbo and the non floating point fbo.\r\nthey also show the difference between the internal format RGB and RGBA.\r\nadded text on the screen to observe the changes in color values.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1046","comments":0,"milestone":null,"number":1046,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1046","assignee":null,"title":"Better fboTrailsExample","labels":[],"closed_at":"2012-03-09T13:36:33Z","created_at":"2012-03-09T13:04:04Z","state":"closed","user":{"url":"https://api.github.com/users/liasomething","gravatar_id":"248569b4b21882f854f3a0eee701cc37","login":"liasomething","id":183150,"avatar_url":"https://secure.gravatar.com/avatar/248569b4b21882f854f3a0eee701cc37?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3582780,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1046.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1046","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1046.patch"}},{"updated_at":"2012-03-09T23:08:00Z","body":"this took a bit of fiddling but finally got it sorted.\r\nscreenGrab now works in all orientations.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1045","comments":3,"milestone":null,"number":1045,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1045","assignee":null,"title":"bugfix for issue #135 - ios screengrab","labels":[],"closed_at":"2012-03-09T13:31:02Z","created_at":"2012-03-08T23:49:45Z","state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3574720,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1045.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1045","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1045.patch"}},{"updated_at":"2012-03-26T14:46:46Z","body":"Running install_dependencies.sh it trys to cd to a non existant directory:\r\n\r\n[snipped]\r\nlibglu1-mesa-dev is already the newest version.\r\nlibgl1-mesa-dev is already the newest version.\r\nlibcairo2-dev is already the newest version.\r\nlibdrm-dev is already the newest version.\r\n0 upgraded, 0 newly installed, 0 to remove and 28 not upgraded.\r\ncd: 11: can't cd to ../../../libs/openFrameworksCompiled/project/linux\r\nmake: *** No rule to make target `Debug'. Stop.\r\nthere has been a problem compiling Debug OF library\r\nplease report this problem in the forums\r\n\r\n\r\nIf I create a symlink:\r\n# ln -s ../../../libs/openFrameworksCompiled/project/linux64 ../../../libs/openFrameworksCompiled/project/linux\r\n\r\nThings get further but still get stuck:\r\n\r\n[snipped]\r\n0 upgraded, 0 newly installed, 0 to remove and 28 not upgraded.\r\necho \"creating \" ../../lib/linux/libopenFrameworksDebug.a\r\ncreating ../../lib/linux/libopenFrameworksDebug.a\r\nar -r \"../../lib/linux/libopenFrameworksDebug.a\" obj/Debug/openFrameworks/communication/ofSerial.o obj/Debug/openFrameworks/communication/ofArduino.o obj/Debug/openFrameworks/sound/ofSoundPlayer.o obj/Debug/openFrameworks/sound/ofRtAudioSoundStream.o obj/Debug/openFrameworks/sound/ofBaseSoundStream.o obj/Debug/openFrameworks/sound/ofOpenALSoundPlayer.o obj/Debug/openFrameworks/sound/ofSoundStream.o obj/Debug/openFrameworks/sound/ofPASoundStream.o obj/Debug/openFrameworks/sound/ofFmodSoundPlayer.o obj/Debug/openFrameworks/sound/ofBaseSoundPlayer.o obj/Debug/openFrameworks/video/ofVideoPlayer.o obj/Debug/openFrameworks/video/ofGstVideoGrabber.o obj/Debug/openFrameworks/video/ofQtUtils.o obj/Debug/openFrameworks/video/ofVideoGrabber.o obj/Debug/openFrameworks/video/ofGstUtils.o obj/Debug/openFrameworks/video/ofGstVideoPlayer.o obj/Debug/openFrameworks/video/ofQuickTimeGrabber.o obj/Debug/openFrameworks/video/ofQuickTimePlayer.o obj/Debug/openFrameworks/video/ofDirectShowGrabber.o obj/Debug/openFrameworks/types/ofRectangle.o obj/Debug/openFrameworks/types/ofBaseTypes.o obj/Debug/openFrameworks/types/ofColor.o obj/Debug/openFrameworks/types/ofPoint.o obj/Debug/openFrameworks/3d/ofCamera.o obj/Debug/openFrameworks/3d/ofMesh.o obj/Debug/openFrameworks/3d/ofNode.o obj/Debug/openFrameworks/3d/ofEasyCam.o obj/Debug/openFrameworks/3d/of3dUtils.o obj/Debug/openFrameworks/app/ofAppGlutWindow.o obj/Debug/openFrameworks/app/ofAppRunner.o obj/Debug/openFrameworks/gl/ofGLRenderer.o obj/Debug/openFrameworks/gl/ofLight.o obj/Debug/openFrameworks/gl/ofFbo.o obj/Debug/openFrameworks/gl/ofVbo.o obj/Debug/openFrameworks/gl/ofTexture.o obj/Debug/openFrameworks/gl/ofMaterial.o obj/Debug/openFrameworks/gl/ofVboMesh.o obj/Debug/openFrameworks/gl/ofShader.o obj/Debug/openFrameworks/graphics/ofImage.o obj/Debug/openFrameworks/graphics/ofPixels.o obj/Debug/openFrameworks/graphics/ofTrueTypeFont.o obj/Debug/openFrameworks/graphics/ofCairoRenderer.o obj/Debug/openFrameworks/graphics/ofGraphics.o obj/Debug/openFrameworks/graphics/ofPolyline.o obj/Debug/openFrameworks/graphics/ofBitmapFont.o obj/Debug/openFrameworks/graphics/ofPath.o obj/Debug/openFrameworks/graphics/ofTessellator.o obj/Debug/openFrameworks/math/ofMatrix3x3.o obj/Debug/openFrameworks/math/ofVec4f.o obj/Debug/openFrameworks/math/ofVec2f.o obj/Debug/openFrameworks/math/ofMath.o obj/Debug/openFrameworks/math/ofMatrix4x4.o obj/Debug/openFrameworks/math/ofQuaternion.o obj/Debug/openFrameworks/events/ofEvents.o obj/Debug/openFrameworks/utils/ofUtils.o obj/Debug/openFrameworks/utils/ofSystemUtils.o obj/Debug/openFrameworks/utils/ofFileUtils.o obj/Debug/openFrameworks/utils/ofLog.o obj/Debug/openFrameworks/utils/ofThread.o obj/Debug/openFrameworks/utils/ofURLFileLoader.o\r\nar: ../../lib/linux/libopenFrameworksDebug.a: No such file or directory\r\nmake: *** [../../lib/linux/libopenFrameworksDebug.a] Error 1\r\nthere has been a problem compiling Debug OF library\r\nplease report this problem in the forums\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1044","comments":3,"milestone":null,"number":1044,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1044","assignee":null,"title":"Problem installing dependencies on 64bit ubuntu","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":"2012-03-26T14:46:46Z","created_at":"2012-03-08T14:22:57Z","state":"closed","user":{"url":"https://api.github.com/users/stuaxo","gravatar_id":"bf2a73b1327be388096c602e986bc06f","login":"stuaxo","id":179677,"avatar_url":"https://secure.gravatar.com/avatar/bf2a73b1327be388096c602e986bc06f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3563392,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-09T11:58:22Z","body":"When trying to compile either release or debug, easyCamExample_vs2010 exits build phase with the following error:\r\n\r\n2> Generating Code...\r\n2> Creating library bin\\easyCamExample_vs2010.lib and object bin\\easyCamExample_vs2010.exp\r\n2>openframeworksLib.lib(of3dUtils.obj) : error LNK2019: unresolved external symbol \"void __cdecl ofDrawGridPlane(float,float,bool)\" (?ofDrawGridPlane@@YAXMM_N@Z) referenced in function \"void __cdecl ofDrawGrid(float,float,bool,bool,bool,bool)\" (?ofDrawGrid@@YAXMM_N000@Z)\r\n2>bin\\easyCamExample_vs2010.exe : fatal error LNK1120: 1 unresolved externals\r\n\r\nSame result for advanced3dExample\r\n\r\nMost recent version from Git 7/3/2012, please let me know if you need more information\r\n\r\nCheers guys.\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1043","comments":13,"milestone":null,"number":1043,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1043","assignee":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"easyCamExample_vs2010 example build error","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":"2012-03-09T11:58:22Z","created_at":"2012-03-08T02:35:02Z","state":"closed","user":{"url":"https://api.github.com/users/voidsetupdraw","gravatar_id":"baa95342acc3e8871036d7e54cd093ed","login":"voidsetupdraw","id":1080703,"avatar_url":"https://secure.gravatar.com/avatar/baa95342acc3e8871036d7e54cd093ed?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3555209,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-08T15:03:28Z","body":"See here: https://github.com/openframeworks/openFrameworks/tree/master/apps/iPhoneSpecificExamples/iPadExample","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1042","comments":3,"milestone":null,"number":1042,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1042","assignee":null,"title":"iPhoneSpecificExamples/iPadExample is missing 'src' folder","labels":[],"closed_at":"2012-03-08T12:32:49Z","created_at":"2012-03-07T20:58:40Z","state":"closed","user":{"url":"https://api.github.com/users/prisonerjohn","gravatar_id":"b52cabeecffe4497699db813a715456f","login":"prisonerjohn","id":119702,"avatar_url":"https://secure.gravatar.com/avatar/b52cabeecffe4497699db813a715456f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3550444,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-10T14:33:27Z","body":"closes the long requested feature #751\r\n\r\ni even made a cute example https://secure.flickr.com/photos/kylemcdonald/6962137427/in/photostream\r\n\r\ncairo needs an implementation as well, right now it just ignores the extra arguments.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1041","comments":14,"milestone":null,"number":1041,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1041","assignee":null,"title":"image subsection drawing","labels":[],"closed_at":"2012-04-09T17:09:44Z","created_at":"2012-03-07T17:39:41Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3547308,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1041.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1041","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1041.patch"}},{"updated_at":"2012-03-06T22:46:10Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1040","comments":0,"milestone":null,"number":1040,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1040","assignee":null,"title":"Fixing comments and Changing ofEvents. for ofEvents(). on Golan´s examples","labels":[],"closed_at":"2012-03-06T22:46:10Z","created_at":"2012-03-06T21:02:53Z","state":"closed","user":{"url":"https://api.github.com/users/patriciogonzalezvivo","gravatar_id":"69406d376e65f8070acfbe220f246989","login":"patriciogonzalezvivo","id":346914,"avatar_url":"https://secure.gravatar.com/avatar/69406d376e65f8070acfbe220f246989?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3532561,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1040.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1040","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1040.patch"}},{"updated_at":"2012-03-05T18:17:43Z","body":"its a trigger so there is no need to do this:\r\n\r\nvoid testApp::buttonHit(bool & pressed){\r\n\r\n}\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1038","comments":2,"milestone":null,"number":1038,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1038","assignee":null,"title":"ofxGui, ofxButton callback shouldn't need a bool argument","labels":[],"closed_at":"2012-03-05T18:17:43Z","created_at":"2012-03-05T18:08:24Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3510973,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-12T12:20:33Z","body":"\r\nApropos this forum discussion: http://forum.openframeworks.cc/index.php/topic,9160.new.html#new","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1035","comments":0,"milestone":null,"number":1035,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1035","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"adding multiple i/o devices to rtSoundStream","labels":[],"closed_at":"2012-03-12T12:20:33Z","created_at":"2012-03-05T03:14:25Z","state":"closed","user":{"url":"https://api.github.com/users/joshuajnoble","gravatar_id":"10960ba0f305803a1cdc7cd6188d643b","login":"joshuajnoble","id":237423,"avatar_url":"https://secure.gravatar.com/avatar/10960ba0f305803a1cdc7cd6188d643b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3501043,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1035.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1035","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1035.patch"}},{"updated_at":"2012-03-10T00:31:26Z","body":"i often have to use Poco::Mutex if i want to lock different variables in a thread\r\nperhaps it's time we had an ofThreadLock which ofThread uses internally?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1032","comments":9,"milestone":null,"number":1032,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1032","assignee":null,"title":"feature ofThreadLock","labels":[],"closed_at":"2012-03-04T10:33:12Z","created_at":"2012-03-04T09:39:30Z","state":"closed","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3495251,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-03T15:12:25Z","body":"Howdy all,\r\n\r\nI started rewriting ofThread in Detroit but stopped do to other priorities. Now it's essentially done and much cleaner then what I started with .. wheew. In any case, it's been rewritten using Poco::Thread and Poco::Runnable and the resulting code is much cleaner and hopefully easier to maintain ... no platform specific stuff.\r\n\r\nPoco::Thread provides some nice things like unique ids, thread sleep(), yield(), and knowing which thread you are in. The verbosity prints now uses an ofLog module with the current thread id and the mutex lock()/unlock() verbose prints now tell you if the thread itself or another thread is trying to lock/unlock it.\r\n\r\nThe verbose output looks like this:\r\n
    \r\nThread 1: OF_VERBOSE: started\r\nThread 1: OF_VERBOSE: thread waiting for mutex to be unlocked\r\nThread 1: OF_VERBOSE: thread locked mutex\r\nThread 1: OF_VERBOSE: thread unlocked mutex\r\nThread 1: OF_VERBOSE: waiting for mutex to be unlocked\r\nThread 1: OF_VERBOSE: mutex locked\r\nThread 1: OF_VERBOSE: mutex unlocked\r\n
    \r\n\r\nSorry Kyle, getCurrentThread() returns a pointer. How else can you either return an object or not if there isn't one? :D\r\n\r\nIn any case, I tested this with the threadExample and it's working fine. I'd appreciate others trying it out, especially on Windows. I noticed a bug last week on Windows with the original ofThread where starting the same thread multiple times *spawns new threads*. I assume Poco::Thread dosen't let that happen so this bug should be gone.\r\n\r\nAlso, from talking with Damian about what's needed for Threads, I added an ofSemaphore typedef of Poco::Semaphore.\r\n\r\nP.S. The commenting comes from me working out how ofThread is supposed to work internally by reading the code for both the rewrite and the site documentation. I normally do this when I write an API and I figured I'd leave it in for now. I can remove it if the \"no header commenting\" unwritten rule is in force ...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1031","comments":15,"milestone":null,"number":1031,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1031","assignee":null,"title":"ofThread rewrite & ofSemaphore typedef","labels":[],"closed_at":"2012-03-11T13:15:21Z","created_at":"2012-03-04T04:10:39Z","state":"closed","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3494366,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1031.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1031","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1031.patch"}},{"updated_at":"2012-03-07T01:58:41Z","body":"the pdf example was too complicated for beginners (eg. dropZone, drag and drop, matrix stuff for rotation, vectors of images and tail...) and it had no comments.\r\n\r\ni simplified by only having one rectangle moving randomly.\r\ni tried to make even basic stuff understandable by adding a lot of comments.\r\n\r\ni also demonstrated rendering multiple frames into a single page pdf versus a multipage pdf.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1030","comments":2,"milestone":null,"number":1030,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1030","assignee":null,"title":"example: simpler pdf example plus added comments","labels":[],"closed_at":"2012-03-07T01:58:41Z","created_at":"2012-03-03T21:15:06Z","state":"closed","user":{"url":"https://api.github.com/users/liasomething","gravatar_id":"248569b4b21882f854f3a0eee701cc37","login":"liasomething","id":183150,"avatar_url":"https://secure.gravatar.com/avatar/248569b4b21882f854f3a0eee701cc37?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3492273,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1030.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1030","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1030.patch"}},{"updated_at":"2012-03-03T16:05:10Z","body":"currently it's `ofSaveImage(ofPixels& pixels, string filename)`, etc\r\nshould be `ofSaveImage(const ofPixels& pixels, string filename)`\r\n\r\nthere's lots of const correctness issues in general\r\ni'm not sure if littlering the git issue log with them all individually is a good idea\r\nperhaps an issue like 'fix general const correctness'","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1027","comments":1,"milestone":null,"number":1027,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1027","assignee":null,"title":"ofSaveImage doesn't accept const","labels":[],"closed_at":"2012-03-03T16:05:10Z","created_at":"2012-03-03T11:48:14Z","state":"closed","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3489150,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-02T23:17:56Z","body":"Very minor OpenGL ES tweaks were needed. I figured it would be nice to have a somewhat complicated Android OpenGL example that people could play with","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1026","comments":3,"milestone":null,"number":1026,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1026","assignee":null,"title":"Porting advanced3D example to work with android","labels":[],"closed_at":"2012-03-02T23:17:31Z","created_at":"2012-03-02T18:35:58Z","state":"closed","user":{"url":"https://api.github.com/users/bostonbusmap","gravatar_id":"433032cca043cedb67180dc5109062da","login":"bostonbusmap","id":863262,"avatar_url":"https://secure.gravatar.com/avatar/433032cca043cedb67180dc5109062da?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3481276,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1026.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1026","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1026.patch"}},{"updated_at":"2012-03-02T18:43:11Z","body":"these seem to be missing","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1025","comments":0,"milestone":null,"number":1025,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1025","assignee":null,"title":"add ofxGui .cpp files to project generator","labels":[],"closed_at":"2012-03-02T18:43:11Z","created_at":"2012-03-02T17:18:52Z","state":"closed","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3480161,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1025.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1025","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1025.patch"}},{"updated_at":"2012-03-09T13:37:25Z","body":"it is a hack but at least runs. Kieth I think that you need to look at this.\r\n\r\n`GL_COLOR_ATTACHMENT0_OES` and `glDrawBuffers` does not look supported in OpenglES 2","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1023","comments":2,"milestone":null,"number":1023,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1023","assignee":null,"title":"#ifndef out the GL_COLOR_ATTACHMENT0_OES and glDrawBuffers(...) stuff","labels":[],"closed_at":"2012-03-09T13:37:25Z","created_at":"2012-03-02T16:52:06Z","state":"closed","user":{"url":"https://api.github.com/users/vanderlin","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","id":149997,"avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3479714,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1023.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1023","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1023.patch"}},{"updated_at":"2012-03-02T00:11:14Z","body":"I'm just adding parentheses. I'm assuming that's the correct fix since I saw it in this commit: https://github.com/openframeworks/openFrameworks/commit/6879f3ce6e05e5b17b884efee86039a97444980b\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1021","comments":0,"milestone":null,"number":1021,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1021","assignee":null,"title":"Fixing android compilation error","labels":[],"closed_at":"2012-03-02T00:11:14Z","created_at":"2012-03-01T23:50:47Z","state":"closed","user":{"url":"https://api.github.com/users/bostonbusmap","gravatar_id":"433032cca043cedb67180dc5109062da","login":"bostonbusmap","id":863262,"avatar_url":"https://secure.gravatar.com/avatar/433032cca043cedb67180dc5109062da?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3468314,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1021.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1021","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1021.patch"}},{"updated_at":"2012-03-02T00:52:15Z","body":"tons of warnings for bad conversions and missing delegates and comments crap. now there are only two warnings for missing architecture.\r\n\r\nIgnoring file ../../../libs/FreeImage/lib/iphone/freeimage.a, missing required architecture i386 in file\r\nIgnoring file ../../../libs/glu/lib/iphone/glu-iphone.a, missing required architecture i386 in file\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1020","comments":0,"milestone":null,"number":1020,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1020","assignee":null,"title":"all warning removed from IOS project","labels":[],"closed_at":"2012-03-02T00:52:15Z","created_at":"2012-03-01T22:59:42Z","state":"closed","user":{"url":"https://api.github.com/users/vanderlin","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","id":149997,"avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3467172,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1020.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1020","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1020.patch"}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=8&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4988'), ('content-length', '29257'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"03a690b7fa3bc5d859c28d976f3872d7"'), ('date', 'Tue, 29 May 2012 18:46:28 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-03-09T14:01:30Z","body":"Added some features in ofLight\r\n- don't have to set light position every frame, called automatically through enable()\r\n- moved init function to constructor to create lights\r\n- added spotConcentration (exponent) vars and clamping for spotlights\r\n- added spotCutoff vars and clamping for spotLight\r\n\r\nExamples\r\nMultiLight Example\r\n- Uses all three light types, point, spot and directional\r\n- turn on/off textured objects\r\nhttp://www.flickr.com/photos/95943853@N00/6944163657/\r\nhttp://www.flickr.com/photos/95943853@N00/6944163519/in/photostream/\r\n\r\nSingle Light Example\r\n- point light highlighting rotating spheres\r\n- color changing\r\nhttp://www.flickr.com/photos/95943853@N00/6944163745/in/photostream/\r\nhttp://www.flickr.com/photos/95943853@N00/6944163709/in/photostream/","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1018","comments":4,"milestone":null,"number":1018,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1018","assignee":null,"title":"Light examples","labels":[],"closed_at":"2012-03-09T14:01:30Z","created_at":"2012-03-01T17:15:34Z","state":"closed","user":{"url":"https://api.github.com/users/NickHardeman","avatar_url":"https://secure.gravatar.com/avatar/4fc88ba881fee72fc4c5de473dc2ebbf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"4fc88ba881fee72fc4c5de473dc2ebbf","login":"NickHardeman","id":142694},"id":3458298,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1018","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1018.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1018.diff"}},{"updated_at":"2012-03-01T15:59:02Z","body":"Ran across this writing documentation for ofFileDialogResult https://github.com/openframeworks/openFrameworks/blob/develop/libs/openFrameworks/utils/ofSystemUtils.h\r\n\r\nWould filePath/fileName ever needed to be set programmatically or should they be set to private?\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1017","comments":2,"milestone":null,"number":1017,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1017","assignee":null,"title":"ofFileDialogResult getPath()/filePath getName()/fileName","labels":[],"closed_at":"2012-03-01T15:59:02Z","created_at":"2012-03-01T06:17:21Z","state":"closed","user":{"url":"https://api.github.com/users/jvcleave","avatar_url":"https://secure.gravatar.com/avatar/9c0384a91739bea093f453cf40a59742?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"9c0384a91739bea093f453cf40a59742","login":"jvcleave","id":150037},"id":3449854,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-01T19:34:30Z","body":"On ofxTCPClient and ofxTCPServer there are a \"bool verbose\" variable... should I delete it? because now ever all it´s on OF_LOG_VERBOSE","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1016","comments":1,"milestone":null,"number":1016,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1016","assignee":null,"title":"Replacing printf for ofLog","labels":[],"closed_at":"2012-03-01T19:34:30Z","created_at":"2012-03-01T02:18:10Z","state":"closed","user":{"url":"https://api.github.com/users/patriciogonzalezvivo","avatar_url":"https://secure.gravatar.com/avatar/69406d376e65f8070acfbe220f246989?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"69406d376e65f8070acfbe220f246989","login":"patriciogonzalezvivo","id":346914},"id":3448203,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1016","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1016.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1016.diff"}},{"updated_at":"2012-03-26T12:06:03Z","body":"I've made some code styling scripts and an uncrustify config file:\r\n\r\n* ofStyler: runs the OF style config on a file or given dir + file suffix\r\n* styleAddons: runs the of style over an given addon's src dir\r\n* styleOFCore: runs the of style over all .h & .cpp files in the core, adds core_header.txt to the top of files missing a header\r\n\r\nThere is a readme that explains how to use them.\r\n\r\nThe config is not perfect yet, I can't get it to remove the space before the { on enum and class definitions. Sorry Theo ... ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1015","comments":5,"milestone":null,"number":1015,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1015","assignee":null,"title":"OF code styling scripts","labels":[],"closed_at":"2012-03-01T13:14:16Z","created_at":"2012-03-01T01:23:10Z","state":"closed","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3447720,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1015","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1015.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1015.diff"}},{"updated_at":"2012-02-29T22:51:11Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1014","comments":0,"milestone":null,"number":1014,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1014","assignee":null,"title":"IOS Working on develop branch","labels":[],"closed_at":"2012-02-29T22:51:11Z","created_at":"2012-02-29T22:37:06Z","state":"closed","user":{"url":"https://api.github.com/users/vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","id":149997},"id":3445668,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1014","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1014.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1014.diff"}},{"updated_at":"2012-02-29T22:54:23Z","body":"Added a small logging example demonstrating the most important features of ofLog.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1013","comments":0,"milestone":null,"number":1013,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1013","assignee":null,"title":"Logging example","labels":[],"closed_at":"2012-02-29T22:54:23Z","created_at":"2012-02-29T21:48:24Z","state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3444934,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1013","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1013.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1013.diff"}},{"updated_at":"2012-02-29T22:02:59Z","body":"Thanks Kyle","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1012","comments":0,"milestone":null,"number":1012,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1012","assignee":null,"title":"changing ofEvents.update to ofEvents().update ","labels":[],"closed_at":"2012-02-29T22:02:59Z","created_at":"2012-02-29T21:43:56Z","state":"closed","user":{"url":"https://api.github.com/users/patriciogonzalezvivo","avatar_url":"https://secure.gravatar.com/avatar/69406d376e65f8070acfbe220f246989?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"69406d376e65f8070acfbe220f246989","login":"patriciogonzalezvivo","id":346914},"id":3444849,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1012","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1012.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1012.diff"}},{"updated_at":"2012-03-01T02:20:27Z","body":"After yesterday´s changes on ofEvent, I´m having this problem when using core events:\r\n\"Member reference base type 'ofCoreEvents &(*)()' is not a structure or union\" ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1011","comments":3,"milestone":null,"number":1011,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1011","assignee":null,"title":"Error Message on ofEvent","labels":[],"closed_at":"2012-03-01T02:20:27Z","created_at":"2012-02-29T21:15:03Z","state":"closed","user":{"url":"https://api.github.com/users/patriciogonzalezvivo","avatar_url":"https://secure.gravatar.com/avatar/69406d376e65f8070acfbe220f246989?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"69406d376e65f8070acfbe220f246989","login":"patriciogonzalezvivo","id":346914},"id":3444375,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-02-29T21:58:37Z","body":"Added app/DevApps/IOSTesting to get this version of OF running on the iPhone. \r\n\r\nThere is still a bug with ofImage releasing `static set images = new set` I think this happens when IOS runs the app in the back ground. \r\n\r\nBut at least this is a compiling version...\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1010","comments":2,"milestone":null,"number":1010,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1010","assignee":null,"title":"IOS testing","labels":[],"closed_at":"2012-02-29T21:58:37Z","created_at":"2012-02-29T20:32:24Z","state":"closed","user":{"url":"https://api.github.com/users/vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","id":149997},"id":3443629,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1010","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1010.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1010.diff"}},{"updated_at":"2012-02-29T22:29:15Z","body":"GL_RGB5 doesn't exist for OpenGL ES 1.0, so I added an ifdef to work around the problem","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1009","comments":5,"milestone":null,"number":1009,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1009","assignee":null,"title":"Fix to get Android build working again","labels":[],"closed_at":"2012-02-29T17:49:49Z","created_at":"2012-02-29T17:19:56Z","state":"closed","user":{"url":"https://api.github.com/users/bostonbusmap","avatar_url":"https://secure.gravatar.com/avatar/433032cca043cedb67180dc5109062da?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"433032cca043cedb67180dc5109062da","login":"bostonbusmap","id":863262},"id":3440474,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1009","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1009.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1009.diff"}},{"updated_at":"2012-03-02T17:30:17Z","body":"if i use ofSetBackgroundAuto(false) (which is awesome and should never be deprecated!) and then try to save using the pdf saving, i have 2 problems:\r\n\r\n1. the output PDF only shows the last frame drawn.\r\n2. the normal visible window on the screen is cleared every frame.\r\n\r\ni can fix 1 by calling ofSetBackgroundAuto(false) again AFTER calling ofBeginSaveScreenAsPDF, but this doesn't affect 2. i have a testApp that demonstrates the problem, if it helps i can also paste it here.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1008","comments":4,"milestone":null,"number":1008,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1008","assignee":null,"title":"ofSetBackgroundAuto(false) doesn't work with ofBeginSaveScreenAsPDF","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":"2012-03-02T17:30:17Z","created_at":"2012-02-29T16:38:19Z","state":"closed","user":{"url":"https://api.github.com/users/liasomething","avatar_url":"https://secure.gravatar.com/avatar/248569b4b21882f854f3a0eee701cc37?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"248569b4b21882f854f3a0eee701cc37","login":"liasomething","id":183150},"id":3439597,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-12T14:54:25Z","body":"problem is happening for me in Utils.cpp\r\n\r\n```\r\nvoid findandreplaceInTexfile (string fileName, std::string tFind, std::string tReplace ){\r\n \r\n std::ifstream ifile(fileName.c_str(),std::ios::binary);\r\n\tifile.seekg(0,std::ios_base::end);\r\n\tlong s=ifile.tellg();\r\n```\r\n\r\ns is returning -1 and leads to a crash\r\n\r\nQuick fix that allows it to continue but probably causes other issues\r\n\r\n```\r\nif(s == -1){\r\n\treturn;\r\n}\r\n```","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1006","comments":7,"milestone":null,"number":1006,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1006","assignee":null,"title":"projectGenerator crashes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":"2012-03-12T14:54:25Z","created_at":"2012-02-29T07:53:18Z","state":"closed","user":{"url":"https://api.github.com/users/jvcleave","avatar_url":"https://secure.gravatar.com/avatar/9c0384a91739bea093f453cf40a59742?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"9c0384a91739bea093f453cf40a59742","login":"jvcleave","id":150037},"id":3432560,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-12T12:21:48Z","body":"Added support for startMonitoringSignificantLocationChanges / stopMonitoringSignificantLocationChanges - power-saving way to track general location when a GPS lock isn't needed.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1004","comments":5,"milestone":null,"number":1004,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1004","assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"title":"Added support for new low-power GPS feature","labels":[],"closed_at":"2012-03-12T12:21:45Z","created_at":"2012-02-28T23:11:39Z","state":"closed","user":{"url":"https://api.github.com/users/cwcw","avatar_url":"https://secure.gravatar.com/avatar/bb2654a3366b4ba49d566772847c559f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bb2654a3366b4ba49d566772847c559f","login":"cwcw","id":510679},"id":3428232,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1004","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1004.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1004.diff"}},{"updated_at":"2012-03-01T12:57:23Z","body":"had no default","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1003","comments":5,"milestone":null,"number":1003,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1003","assignee":null,"title":"Bugfix ofGetGLTypeFromPixelFormat return","labels":[],"closed_at":"2012-03-01T12:57:23Z","created_at":"2012-02-28T07:23:06Z","state":"closed","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3414422,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1003","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1003.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1003.diff"}},{"updated_at":"2012-02-27T17:24:05Z","body":"using the delegate, ofx iphone should be able to support an external keyboard. This would also open up support for things like iCade.\r\n\r\nI am looking at the https://github.com/scarnie/iCade-iOS to do a test implementation.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1002","comments":2,"milestone":null,"number":1002,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1002","assignee":null,"title":"Add support for hardware keyboard in ofxiPhone","labels":[],"closed_at":"2012-02-27T17:24:02Z","created_at":"2012-02-27T16:19:01Z","state":"closed","user":{"url":"https://api.github.com/users/jonbro","avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"893ec14dc008e3774afe5841115920d6","login":"jonbro","id":1597},"id":3403380,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-12T16:19:24Z","body":"fixes Issue #884 ; fixes Issue #912","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1000","comments":10,"milestone":null,"number":1000,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1000","assignee":null,"title":"0071 milestone issue fixes, helper functions for MRT added to ofFbo","labels":[],"closed_at":"2012-03-01T19:32:53Z","created_at":"2012-02-27T14:25:13Z","state":"closed","user":{"url":"https://api.github.com/users/kpasko","avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","login":"kpasko","id":167271},"id":3401275,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1000","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1000.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1000.diff"}},{"updated_at":"2012-02-27T14:09:53Z","body":"closes Issue #884","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/999","comments":0,"milestone":null,"number":999,"html_url":"https://github.com/openframeworks/openFrameworks/issues/999","assignee":null,"title":"small changes: fix ofMatrix3x3 hadamard *= issue, add near/far clip getters for ofCamera, MRT helpers in ofFbo","labels":[],"closed_at":"2012-02-27T14:09:53Z","created_at":"2012-02-27T13:57:24Z","state":"closed","user":{"url":"https://api.github.com/users/kpasko","avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","login":"kpasko","id":167271},"id":3400899,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/999","patch_url":"https://github.com/openframeworks/openFrameworks/pull/999.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/999.diff"}},{"updated_at":"2012-02-27T16:17:50Z","body":"How to process data on the GPU that´s not only graphics\r\nExplains about pipeline\r\nHave another example of a Geometry Shader","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/998","comments":4,"milestone":null,"number":998,"html_url":"https://github.com/openframeworks/openFrameworks/issues/998","assignee":null,"title":"GPU Particle System","labels":[],"closed_at":"2012-02-27T16:11:21Z","created_at":"2012-02-27T13:38:53Z","state":"closed","user":{"url":"https://api.github.com/users/patriciogonzalezvivo","avatar_url":"https://secure.gravatar.com/avatar/69406d376e65f8070acfbe220f246989?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"69406d376e65f8070acfbe220f246989","login":"patriciogonzalezvivo","id":346914},"id":3400644,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/998","patch_url":"https://github.com/openframeworks/openFrameworks/pull/998.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/998.diff"}},{"updated_at":"2012-02-27T13:38:04Z","body":"- pipeline\r\n- how to process data on textures channels other that images\r\n- geom shader","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/997","comments":0,"milestone":null,"number":997,"html_url":"https://github.com/openframeworks/openFrameworks/issues/997","assignee":null,"title":"GPU Particle System ","labels":[],"closed_at":"2012-02-27T13:38:04Z","created_at":"2012-02-27T13:37:40Z","state":"closed","user":{"url":"https://api.github.com/users/patriciogonzalezvivo","avatar_url":"https://secure.gravatar.com/avatar/69406d376e65f8070acfbe220f246989?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"69406d376e65f8070acfbe220f246989","login":"patriciogonzalezvivo","id":346914},"id":3400618,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/997","patch_url":"https://github.com/openframeworks/openFrameworks/pull/997.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/997.diff"}},{"updated_at":"2012-02-28T15:27:14Z","body":"Multiple ofLight example, including pointLight, spotLight and directional light.\r\n\r\nofSphere needs to be updated since glScalef does not work with the lighting.\r\nPull request here: https://github.com/openframeworks/openFrameworks/pull/995","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/996","comments":3,"milestone":null,"number":996,"html_url":"https://github.com/openframeworks/openFrameworks/issues/996","assignee":null,"title":"Light example","labels":[],"closed_at":"2012-02-28T15:27:14Z","created_at":"2012-02-27T01:00:21Z","state":"closed","user":{"url":"https://api.github.com/users/NickHardeman","avatar_url":"https://secure.gravatar.com/avatar/4fc88ba881fee72fc4c5de473dc2ebbf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"4fc88ba881fee72fc4c5de473dc2ebbf","login":"NickHardeman","id":142694},"id":3394807,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/996","patch_url":"https://github.com/openframeworks/openFrameworks/pull/996.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/996.diff"}},{"updated_at":"2012-03-01T22:21:38Z","body":"Now using ofMesh. \r\nRemoved glScale since it resulted in improper lighting. \r\nAdded tex coords. \r\n~40ms slower than glutSolidSphere. \r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/995","comments":12,"milestone":null,"number":995,"html_url":"https://github.com/openframeworks/openFrameworks/issues/995","assignee":null,"title":"Of sphere develop","labels":[],"closed_at":"2012-02-29T04:52:40Z","created_at":"2012-02-27T00:48:01Z","state":"closed","user":{"url":"https://api.github.com/users/NickHardeman","avatar_url":"https://secure.gravatar.com/avatar/4fc88ba881fee72fc4c5de473dc2ebbf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"4fc88ba881fee72fc4c5de473dc2ebbf","login":"NickHardeman","id":142694},"id":3394672,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/995","patch_url":"https://github.com/openframeworks/openFrameworks/pull/995.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/995.diff"}},{"updated_at":"2012-02-26T23:21:51Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/994","comments":0,"milestone":null,"number":994,"html_url":"https://github.com/openframeworks/openFrameworks/issues/994","assignee":null,"title":"Added trigonometric motion example","labels":[],"closed_at":"2012-02-26T23:21:51Z","created_at":"2012-02-26T21:52:14Z","state":"closed","user":{"url":"https://api.github.com/users/roymacdonald","avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","login":"roymacdonald","id":974878},"id":3393599,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/994","patch_url":"https://github.com/openframeworks/openFrameworks/pull/994.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/994.diff"}},{"updated_at":"2012-02-27T04:10:23Z","body":"i've cleaned up devApps a ton and moved a few relevant examples into examples.\r\n\r\n* AdvancedImageLoading: i'm going to work on it for a bit, it seems to be broken.\r\n* fboTester: i think @kpasko is going to do some porting of this.\r\n* ofSynthFloaties, synthExample, synthSequencingExample: should be removed or ported by @jonbro\r\n* VboExample is pretty awesome, and should be ported to examples. but needs a little more work.\r\n* VboiPhoneExample i can't guarantee this builds. if @obviousjim or @julapy could test this, that would be great.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/992","comments":2,"milestone":null,"number":992,"html_url":"https://github.com/openframeworks/openFrameworks/issues/992","assignee":null,"title":"cleaning up devApps","labels":[],"closed_at":"2012-02-26T20:43:51Z","created_at":"2012-02-26T20:22:48Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3392930,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/992","patch_url":"https://github.com/openframeworks/openFrameworks/pull/992.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/992.diff"}},{"updated_at":"2012-02-26T12:18:55Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/991","comments":0,"milestone":null,"number":991,"html_url":"https://github.com/openframeworks/openFrameworks/issues/991","assignee":null,"title":"ImageFilteringUsingLUTsExample","labels":[],"closed_at":"2012-02-26T12:18:55Z","created_at":"2012-02-26T05:03:20Z","state":"closed","user":{"url":"https://api.github.com/users/roymacdonald","avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","login":"roymacdonald","id":974878},"id":3389228,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/991","patch_url":"https://github.com/openframeworks/openFrameworks/pull/991.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/991.diff"}},{"updated_at":"2012-02-26T04:11:46Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/990","comments":0,"milestone":null,"number":990,"html_url":"https://github.com/openframeworks/openFrameworks/issues/990","assignee":null,"title":"feature - added guards for reloading textures on the iphone.","labels":[],"closed_at":"2012-02-26T04:11:46Z","created_at":"2012-02-26T02:06:47Z","state":"closed","user":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"id":3388718,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/990","patch_url":"https://github.com/openframeworks/openFrameworks/pull/990.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/990.diff"}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=9&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4987'), ('content-length', '28800'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"9fab1ce9a082aeb0f790509548340fba"'), ('date', 'Tue, 29 May 2012 18:46:30 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"milestone":null,"state":"closed","user":{"gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","url":"https://api.github.com/users/vanderlin","login":"vanderlin","id":149997,"avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"customEventsExample","html_url":"https://github.com/openframeworks/openFrameworks/issues/989","comments":0,"assignee":null,"updated_at":"2012-02-25T23:04:04Z","body":" This example demonstrates a simple game. We have a GameEvent class that is \r\n used to store the bullet and bug that just collided. \r\n \r\n Topics:\r\n ofEventArgs\r\n ofAddListener\r\n ofRemove\r\n vector math\r\n objects & classes\r\n ","number":989,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/989","diff_url":"https://github.com/openframeworks/openFrameworks/pull/989.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/989.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/989","labels":[],"id":3387524,"closed_at":"2012-02-25T23:04:04Z","created_at":"2012-02-25T21:39:25Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"cleaning the devApps","html_url":"https://github.com/openframeworks/openFrameworks/issues/988","comments":0,"assignee":null,"updated_at":"2012-02-25T21:36:51Z","body":"some have been moved to examples, some have been removed completely. as examples, they may not be the best, but they're a good start.","number":988,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/988","diff_url":"https://github.com/openframeworks/openFrameworks/pull/988.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/988.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/988","labels":[],"id":3387329,"closed_at":"2012-02-25T21:36:51Z","created_at":"2012-02-25T20:59:23Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","url":"https://api.github.com/users/damiannz","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Fix to call MoviesTask when in background thread","html_url":"https://github.com/openframeworks/openFrameworks/issues/986","comments":1,"assignee":null,"updated_at":"2012-02-25T19:54:56Z","body":"If movies are only being read in a background thread and MoviesTask isn't being called, sometimes the movies don't end up being updated. \r\n\r\nthis pull request addresses that.","number":986,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/986","diff_url":"https://github.com/openframeworks/openFrameworks/pull/986.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/986.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/986","labels":[],"id":3386966,"closed_at":"2012-02-25T19:54:56Z","created_at":"2012-02-25T19:52:05Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Ofx osc log fixes","html_url":"https://github.com/openframeworks/openFrameworks/issues/983","comments":0,"assignee":null,"updated_at":"2012-02-25T19:54:16Z","body":"Stumbled over some more logging printfs in ofxOsc. \r\nTurns out, there's still O(200) more in the core addons, will make an issue about that.","number":983,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/983","diff_url":"https://github.com/openframeworks/openFrameworks/pull/983.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/983.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/983","labels":[],"id":3386878,"closed_at":"2012-02-25T19:54:16Z","created_at":"2012-02-25T19:34:36Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"69406d376e65f8070acfbe220f246989","url":"https://api.github.com/users/patriciogonzalezvivo","login":"patriciogonzalezvivo","id":346914,"avatar_url":"https://secure.gravatar.com/avatar/69406d376e65f8070acfbe220f246989?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"changing some examples places, adding some notes to them, and other aesthetic things","html_url":"https://github.com/openframeworks/openFrameworks/issues/982","comments":0,"assignee":null,"updated_at":"2012-02-25T19:34:04Z","body":"","number":982,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/982","diff_url":"https://github.com/openframeworks/openFrameworks/pull/982.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/982.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/982","labels":[],"id":3386819,"closed_at":"2012-02-25T19:34:04Z","created_at":"2012-02-25T19:22:55Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"3b88af2b75dcea500fcf7a472ae239eb","url":"https://api.github.com/users/golanlevin","login":"golanlevin","id":290053,"avatar_url":"https://secure.gravatar.com/avatar/3b88af2b75dcea500fcf7a472ae239eb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Adding noise1dExample and noise1dOctaveExample.","html_url":"https://github.com/openframeworks/openFrameworks/issues/981","comments":0,"assignee":null,"updated_at":"2012-02-25T15:09:28Z","body":"Thanks!","number":981,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/981","diff_url":"https://github.com/openframeworks/openFrameworks/pull/981.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/981.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/981","labels":[],"id":3385318,"closed_at":"2012-02-25T15:09:28Z","created_at":"2012-02-25T15:09:04Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"cleaning devApps, reverting matrix caching regression","html_url":"https://github.com/openframeworks/openFrameworks/issues/980","comments":2,"assignee":null,"updated_at":"2012-02-25T17:57:57Z","body":"+conversionExample from devApps\r\n+billboardExample (wip) from devApps\r\n~reverting matrix caching regression","number":980,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/980","diff_url":"https://github.com/openframeworks/openFrameworks/pull/980.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/980.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/980","labels":[],"id":3383596,"closed_at":"2012-02-25T17:57:57Z","created_at":"2012-02-25T06:47:11Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"3b88af2b75dcea500fcf7a472ae239eb","url":"https://api.github.com/users/golanlevin","login":"golanlevin","id":290053,"avatar_url":"https://secure.gravatar.com/avatar/3b88af2b75dcea500fcf7a472ae239eb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Correction of ofMesh smoothing","html_url":"https://github.com/openframeworks/openFrameworks/issues/979","comments":0,"assignee":null,"updated_at":"2012-02-25T06:28:22Z","body":"Hi Arturo, \r\nI would REALLY appreciate it if you would please accept this small correction to OF. \r\nThanks,\r\nGolan\r\n","number":979,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/979","diff_url":"https://github.com/openframeworks/openFrameworks/pull/979.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/979.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/979","labels":[],"id":3383507,"closed_at":"2012-02-25T06:28:22Z","created_at":"2012-02-25T06:23:22Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"removed a residual '\\n' char; added ofQuickTimeGrabber to error log headers","html_url":"https://github.com/openframeworks/openFrameworks/issues/978","comments":0,"assignee":null,"updated_at":"2012-02-25T11:31:28Z","body":".","number":978,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/978","diff_url":"https://github.com/openframeworks/openFrameworks/pull/978.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/978.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/978","labels":[],"id":3383278,"closed_at":"2012-02-25T11:31:28Z","created_at":"2012-02-25T05:10:22Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","url":"https://api.github.com/users/vanderlin","login":"vanderlin","id":149997,"avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Win32 bug fix for ofFile Utils","html_url":"https://github.com/openframeworks/openFrameworks/issues/977","comments":0,"assignee":null,"updated_at":"2012-02-25T04:18:41Z","body":"","number":977,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/977","diff_url":"https://github.com/openframeworks/openFrameworks/pull/977.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/977.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/977","labels":[],"id":3383090,"closed_at":"2012-02-25T04:18:41Z","created_at":"2012-02-25T04:10:52Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","url":"https://api.github.com/users/vanderlin","login":"vanderlin","id":149997,"avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Image Sequence Example","html_url":"https://github.com/openframeworks/openFrameworks/issues/975","comments":1,"assignee":null,"updated_at":"2012-02-25T04:00:36Z","body":"\r\n In this example we are going to load a sequence of images from a folder.\r\n We know that the images are in order and the we saved them out at 24fps. \r\n the goal is to play them back at 24fps independent of the fps of the app.\r\n \r\n note: if you bring the frame-rate lower then 24 it will look a bit slow\r\n \r\n\r\n Topics:\r\n - ofDirectory\r\n - ofImage\r\n - timing\r\n \r\n gif from: http://probertson.livejournal.com/32350.html\r\n \r\n\r\nalso little fix for systemExample (no rate param)","number":975,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/975","diff_url":"https://github.com/openframeworks/openFrameworks/pull/975.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/975.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/975","labels":[],"id":3382936,"closed_at":"2012-02-25T04:00:35Z","created_at":"2012-02-25T03:26:15Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","url":"https://api.github.com/users/vanderlin","login":"vanderlin","id":149997,"avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Fix for system say example and a image sequence example ","html_url":"https://github.com/openframeworks/openFrameworks/issues/974","comments":0,"assignee":null,"updated_at":"2012-02-25T03:23:47Z","body":"Image Sequence Example\r\n In this example we are going to load a sequence of images from a folder.\r\n We know that the images are in order and the we saved them out at 24fps. \r\n the goal is to play them back at 24fps independent of the fps of the app.\\\r\n \r\n note: if you bring the frame-rate lower then 24 it will look a bit slow\r\n \r\n \r\n Topics:\r\n - ofDirectory\r\n - ofImage\r\n - timing\r\n \r\n gif from: http://probertson.livejournal.com/32350.html\r\n ","number":974,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/974","diff_url":"https://github.com/openframeworks/openFrameworks/pull/974.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/974.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/974","labels":[],"id":3382918,"closed_at":"2012-02-25T03:23:47Z","created_at":"2012-02-25T03:21:44Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","url":"https://api.github.com/users/bakercp","login":"bakercp","id":300484,"avatar_url":"https://secure.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofPath, ofPolyline, ofCairoRenderer :: arcNegative() support added.","html_url":"https://github.com/openframeworks/openFrameworks/issues/973","comments":7,"assignee":null,"updated_at":"2012-02-25T19:32:22Z","body":"All \"arc\" methods now accept any start or stop angle. Counter clockwise arcs can now be drawn with arcNegative method. Associated Cairo support for \"arc_negative\" added and tested. Circle Points LUT preserved for all. Arc method generally re-written to support both clockwise and counter-clockwise directions.\r\n\r\nThis PR fixed to leave out GLUT-keymod-related changes.","number":973,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/973","diff_url":"https://github.com/openframeworks/openFrameworks/pull/973.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/973.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/973","labels":[],"id":3382908,"closed_at":"2012-02-25T19:32:22Z","created_at":"2012-02-25T03:19:37Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"69406d376e65f8070acfbe220f246989","url":"https://api.github.com/users/patriciogonzalezvivo","login":"patriciogonzalezvivo","id":346914,"avatar_url":"https://secure.gravatar.com/avatar/69406d376e65f8070acfbe220f246989?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"I fix the alphaMasking and multiTexturing GPU examples ","html_url":"https://github.com/openframeworks/openFrameworks/issues/968","comments":0,"assignee":null,"updated_at":"2012-02-25T01:36:49Z","body":"","number":968,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/968","diff_url":"https://github.com/openframeworks/openFrameworks/pull/968.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/968.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/968","labels":[],"id":3381924,"closed_at":"2012-02-25T01:36:49Z","created_at":"2012-02-25T01:27:54Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","url":"https://api.github.com/users/kpasko","login":"kpasko","id":167271,"avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"normals example modification","html_url":"https://github.com/openframeworks/openFrameworks/issues/967","comments":1,"assignee":null,"updated_at":"2012-02-25T01:53:36Z","body":"used ofMap instead of more opaque direct version and cached matrices to avoid multiple printouts","number":967,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/967","diff_url":"https://github.com/openframeworks/openFrameworks/pull/967.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/967.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/967","labels":[],"id":3381700,"closed_at":"2012-02-25T01:53:36Z","created_at":"2012-02-25T00:59:07Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"9c0384a91739bea093f453cf40a59742","url":"https://api.github.com/users/jvcleave","login":"jvcleave","id":150037,"avatar_url":"https://secure.gravatar.com/avatar/9c0384a91739bea093f453cf40a59742?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"added ofFile/ofBuffer and ofFileDialogResult examples","html_url":"https://github.com/openframeworks/openFrameworks/issues/966","comments":0,"assignee":null,"updated_at":"2012-02-25T00:29:40Z","body":"added example of ofFile/ofBuffer to load .csv file\r\n\r\nadded example of ofFileDialogResult for opening/saving files","number":966,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/966","diff_url":"https://github.com/openframeworks/openFrameworks/pull/966.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/966.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/966","labels":[],"id":3381209,"closed_at":"2012-02-25T00:29:40Z","created_at":"2012-02-24T23:54:59Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","url":"https://api.github.com/users/vanderlin","login":"vanderlin","id":149997,"avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Bunch of examples and ofSort(...)","html_url":"https://github.com/openframeworks/openFrameworks/issues/965","comments":1,"assignee":null,"updated_at":"2012-02-25T00:31:29Z","body":"Utils:\r\nloadTextFileExample\r\nsortingExample\r\nsystemSpeakExample\r\nregularExpressionExample\r\n\r\nGL:\r\npointsAsTextures\r\nslowFastRendering\r\n\r\nOther:\r\nofSort(values, compare) just adding an second function so that you can pass in a compare function for sorting. ","number":965,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/965","diff_url":"https://github.com/openframeworks/openFrameworks/pull/965.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/965.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/965","labels":[],"id":3381113,"closed_at":"2012-02-25T00:31:29Z","created_at":"2012-02-24T23:44:35Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","url":"https://api.github.com/users/roymacdonald","login":"roymacdonald","id":974878,"avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"little format fix in trigonometryexample","html_url":"https://github.com/openframeworks/openFrameworks/issues/964","comments":0,"assignee":null,"updated_at":"2012-02-24T23:09:25Z","body":"","number":964,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/964","diff_url":"https://github.com/openframeworks/openFrameworks/pull/964.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/964.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/964","labels":[],"id":3380744,"closed_at":"2012-02-24T23:09:25Z","created_at":"2012-02-24T23:08:16Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","url":"https://api.github.com/users/damiannz","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofVec2f/ofVec3f: align() -> isAligned()","html_url":"https://github.com/openframeworks/openFrameworks/issues/963","comments":0,"assignee":null,"updated_at":"2012-02-24T22:40:23Z","body":"ofVec2f and ofVec3f contain methods called align() that for consistency *should* be called isAligned(). this pull request adds isAligned() methods, shifts functionality from align() to isAligned() and makes align() call isAligned().\r\n\r\ni think that use of align() should be **deprecated** from now on.","number":963,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/963","diff_url":"https://github.com/openframeworks/openFrameworks/pull/963.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/963.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/963","labels":[],"id":3380321,"closed_at":"2012-02-24T22:40:23Z","created_at":"2012-02-24T22:36:12Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","url":"https://api.github.com/users/damiannz","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"added align() -> isAligned() in ofVec2f/ofVec3f","html_url":"https://github.com/openframeworks/openFrameworks/issues/962","comments":0,"assignee":null,"updated_at":"2012-02-24T22:35:08Z","body":"ofVec2f and ofVec3f contain methods called align() that for consistency *should* be called isAligned(). this pull request adds isAligned() methods, shifts functionality from align() to isAligned() and makes align() call isAligned().\r\n\r\ni think that use of align() should be **deprecated** from now on.","number":962,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/962","diff_url":"https://github.com/openframeworks/openFrameworks/pull/962.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/962.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/962","labels":[],"id":3380289,"closed_at":"2012-02-24T22:35:08Z","created_at":"2012-02-24T22:34:48Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Osc chat example","html_url":"https://github.com/openframeworks/openFrameworks/issues/961","comments":4,"assignee":null,"updated_at":"2012-02-24T23:14:07Z","body":"A simple OSC chat application.","number":961,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/961","diff_url":"https://github.com/openframeworks/openFrameworks/pull/961.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/961.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/961","labels":[],"id":3378276,"closed_at":"2012-02-24T23:14:07Z","created_at":"2012-02-24T19:57:15Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"noise field in 2d example","html_url":"https://github.com/openframeworks/openFrameworks/issues/960","comments":3,"assignee":null,"updated_at":"2012-02-24T19:48:54Z","body":"https://secure.flickr.com/photos/kylemcdonald/6780339620/in/photostream\r\nhttps://secure.flickr.com/photos/kylemcdonald/6780339586/in/photostream","number":960,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/960","diff_url":"https://github.com/openframeworks/openFrameworks/pull/960.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/960.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/960","labels":[],"id":3377924,"closed_at":"2012-02-24T19:36:44Z","created_at":"2012-02-24T19:33:46Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","url":"https://api.github.com/users/roymacdonald","login":"roymacdonald","id":974878,"avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Develop","html_url":"https://github.com/openframeworks/openFrameworks/issues/959","comments":0,"assignee":null,"updated_at":"2012-02-24T18:32:14Z","body":"added trigonometry example and fixed a bug in ofPolyline::arc that wasn't drawing correctly when the angle was less than 360","number":959,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/959","diff_url":"https://github.com/openframeworks/openFrameworks/pull/959.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/959.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/959","labels":[],"id":3376932,"closed_at":"2012-02-24T18:32:14Z","created_at":"2012-02-24T18:26:55Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","url":"https://api.github.com/users/kpasko","login":"kpasko","id":167271,"avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Normals example, modify ofMesh drawing accordingly","html_url":"https://github.com/openframeworks/openFrameworks/issues/958","comments":0,"assignee":null,"updated_at":"2012-02-24T23:19:45Z","body":"Added an example for normals; in order to do it how i wanted, I added an enable/disable bool in ofMesh to allow for override of colors,textures, and normals (previously, was hard-enabling if any colors/textures/normals existed). This is in a commit that's semi-buried a few commits down because rebase wasn't playing nicely.","number":958,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/958","diff_url":"https://github.com/openframeworks/openFrameworks/pull/958.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/958.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/958","labels":[],"id":3376156,"closed_at":"2012-02-24T23:19:45Z","created_at":"2012-02-24T17:35:15Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Fix const load data on of texture","html_url":"https://github.com/openframeworks/openFrameworks/issues/957","comments":0,"assignee":null,"updated_at":"2012-02-24T23:40:00Z","body":"hey!\r\ni know you guys must be busy\r\n\r\nbut here's a couple of small things that have been quite important to me\r\n\r\n1. const correctness of ofTexture::loadData\r\n2. ofTexture::allocate(const ofPIxels& pix)\r\n\r\ni think it's also worth adding allocate(const ofShortPixels& pix) and allocate(const ofFloatPixels pix) in a seperate pull request later when they can be tested properly\r\n\r\npull pull pull!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\n\r\nelliot","number":957,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/957","diff_url":"https://github.com/openframeworks/openFrameworks/pull/957.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/957.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/957","labels":[],"id":3368701,"closed_at":"2012-02-24T23:40:00Z","created_at":"2012-02-24T06:47:11Z"}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=10&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4986'), ('content-length', '25537'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"4015a8b16b7c01d7375be17a81ff2c11"'), ('date', 'Tue, 29 May 2012 18:46:31 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-02-25T04:38:01Z","body":"Also removed some leftover '\\n' chars from previous printfs.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/956","comments":6,"milestone":null,"number":956,"html_url":"https://github.com/openframeworks/openFrameworks/issues/956","assignee":null,"title":"replaced more residual printfs","labels":[],"closed_at":"2012-02-25T04:38:01Z","created_at":"2012-02-24T05:45:29Z","state":"closed","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"danomatika","id":480637},"id":3368375,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/956.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/956","patch_url":"https://github.com/openframeworks/openFrameworks/pull/956.patch"}},{"updated_at":"2012-02-24T04:24:16Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/954","comments":0,"milestone":null,"number":954,"html_url":"https://github.com/openframeworks/openFrameworks/issues/954","assignee":null,"title":"added const get getTextureData()","labels":[],"closed_at":"2012-02-24T04:24:16Z","created_at":"2012-02-24T04:17:54Z","state":"closed","user":{"url":"https://api.github.com/users/obviousjim","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"obviousjim","id":321434},"id":3367833,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/954.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/954","patch_url":"https://github.com/openframeworks/openFrameworks/pull/954.patch"}},{"updated_at":"2012-02-24T03:50:12Z","body":"+ pointPickerExample\r\n+ ofBackgroundGradient\r\n+ ofDrawBitmapStringHighlight","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/953","comments":0,"milestone":null,"number":953,"html_url":"https://github.com/openframeworks/openFrameworks/issues/953","assignee":null,"title":"adding some features and examples","labels":[],"closed_at":"2012-02-24T03:50:12Z","created_at":"2012-02-24T03:48:40Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"kylemcdonald","id":157106},"id":3367661,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/953.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/953","patch_url":"https://github.com/openframeworks/openFrameworks/pull/953.patch"}},{"updated_at":"2012-02-24T18:32:01Z","body":"Adding ofSort with a compare function and example","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/952","comments":0,"milestone":null,"number":952,"html_url":"https://github.com/openframeworks/openFrameworks/issues/952","assignee":null,"title":"ofSort(values, compare) with example","labels":[],"closed_at":"2012-02-24T18:32:01Z","created_at":"2012-02-24T02:39:47Z","state":"closed","user":{"url":"https://api.github.com/users/vanderlin","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"vanderlin","id":149997},"id":3367207,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/952.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/952","patch_url":"https://github.com/openframeworks/openFrameworks/pull/952.patch"}},{"updated_at":"2012-02-24T01:35:43Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/951","comments":0,"milestone":null,"number":951,"html_url":"https://github.com/openframeworks/openFrameworks/issues/951","assignee":null,"title":"texture data by reference fix","labels":[],"closed_at":"2012-02-24T01:35:43Z","created_at":"2012-02-24T01:32:35Z","state":"closed","user":{"url":"https://api.github.com/users/obviousjim","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"obviousjim","id":321434},"id":3366641,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/951.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/951","patch_url":"https://github.com/openframeworks/openFrameworks/pull/951.patch"}},{"updated_at":"2012-02-24T01:20:03Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/950","comments":0,"milestone":null,"number":950,"html_url":"https://github.com/openframeworks/openFrameworks/issues/950","assignee":null,"title":"committed image for greenscreen","labels":[],"closed_at":"2012-02-24T01:20:03Z","created_at":"2012-02-24T01:13:56Z","state":"closed","user":{"url":"https://api.github.com/users/obviousjim","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"obviousjim","id":321434},"id":3366484,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/950.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/950","patch_url":"https://github.com/openframeworks/openFrameworks/pull/950.patch"}},{"updated_at":"2012-02-24T22:11:08Z","body":"* ensure normalize() doesn't divide-by-zero\r\n* make setHsb conform to the always-specify-alpha rule","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/949","comments":5,"milestone":null,"number":949,"html_url":"https://github.com/openframeworks/openFrameworks/issues/949","assignee":null,"title":"FIX: color weirdnesses (please test!)","labels":[],"closed_at":"2012-02-24T22:11:08Z","created_at":"2012-02-24T00:48:49Z","state":"closed","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"damiannz","id":144366},"id":3366248,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/949.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/949","patch_url":"https://github.com/openframeworks/openFrameworks/pull/949.patch"}},{"updated_at":"2012-02-24T18:32:55Z","body":"very simple.... humble examples Daniel Son","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/948","comments":0,"milestone":null,"number":948,"html_url":"https://github.com/openframeworks/openFrameworks/issues/948","assignee":null,"title":"Simple example of vector of pointers","labels":[],"closed_at":"2012-02-24T18:32:55Z","created_at":"2012-02-23T23:50:13Z","state":"closed","user":{"url":"https://api.github.com/users/patriciogonzalezvivo","gravatar_id":"69406d376e65f8070acfbe220f246989","avatar_url":"https://secure.gravatar.com/avatar/69406d376e65f8070acfbe220f246989?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"patriciogonzalezvivo","id":346914},"id":3365569,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/948.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/948","patch_url":"https://github.com/openframeworks/openFrameworks/pull/948.patch"}},{"updated_at":"2012-02-23T23:47:57Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/947","comments":0,"milestone":null,"number":947,"html_url":"https://github.com/openframeworks/openFrameworks/issues/947","assignee":null,"title":"Simple Color Key example","labels":[],"closed_at":"2012-02-23T23:47:57Z","created_at":"2012-02-23T23:42:04Z","state":"closed","user":{"url":"https://api.github.com/users/obviousjim","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"obviousjim","id":321434},"id":3365459,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/947.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/947","patch_url":"https://github.com/openframeworks/openFrameworks/pull/947.patch"}},{"updated_at":"2012-02-23T22:54:48Z","body":"vboExample\r\npointCloudExample","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/946","comments":0,"milestone":null,"number":946,"html_url":"https://github.com/openframeworks/openFrameworks/issues/946","assignee":null,"title":"adding a few examples","labels":[],"closed_at":"2012-02-23T22:54:48Z","created_at":"2012-02-23T22:49:08Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"kylemcdonald","id":157106},"id":3364652,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/946.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/946","patch_url":"https://github.com/openframeworks/openFrameworks/pull/946.patch"}},{"updated_at":"2012-02-23T22:49:30Z","body":"vboExample\r\npointCloudExample","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/945","comments":0,"milestone":null,"number":945,"html_url":"https://github.com/openframeworks/openFrameworks/issues/945","assignee":null,"title":"adding a few examples","labels":[],"closed_at":"2012-02-23T22:49:30Z","created_at":"2012-02-23T22:48:16Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"kylemcdonald","id":157106},"id":3364634,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/945.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/945","patch_url":"https://github.com/openframeworks/openFrameworks/pull/945.patch"}},{"updated_at":"2012-02-23T22:24:21Z","body":"a 3d example showing how to texture a mesh with a camera input, using the pixels to modify the geometry","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/944","comments":0,"milestone":null,"number":944,"html_url":"https://github.com/openframeworks/openFrameworks/issues/944","assignee":null,"title":"Mesh from Camera example","labels":[],"closed_at":"2012-02-23T22:24:21Z","created_at":"2012-02-23T22:09:04Z","state":"closed","user":{"url":"https://api.github.com/users/obviousjim","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"obviousjim","id":321434},"id":3364038,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/944.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/944","patch_url":"https://github.com/openframeworks/openFrameworks/pull/944.patch"}},{"updated_at":"2012-02-23T21:10:30Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/943","comments":0,"milestone":null,"number":943,"html_url":"https://github.com/openframeworks/openFrameworks/issues/943","assignee":null,"title":"restructured again, removed project files","labels":[],"closed_at":"2012-02-23T21:10:30Z","created_at":"2012-02-23T21:08:20Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"kylemcdonald","id":157106},"id":3363024,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/943.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/943","patch_url":"https://github.com/openframeworks/openFrameworks/pull/943.patch"}},{"updated_at":"2012-02-23T21:09:05Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/942","comments":0,"milestone":null,"number":942,"html_url":"https://github.com/openframeworks/openFrameworks/issues/942","assignee":null,"title":"simple multiTexturing Shader example","labels":[],"closed_at":"2012-02-23T21:09:05Z","created_at":"2012-02-23T21:07:46Z","state":"closed","user":{"url":"https://api.github.com/users/patriciogonzalezvivo","gravatar_id":"69406d376e65f8070acfbe220f246989","avatar_url":"https://secure.gravatar.com/avatar/69406d376e65f8070acfbe220f246989?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"patriciogonzalezvivo","id":346914},"id":3363014,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/942.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/942","patch_url":"https://github.com/openframeworks/openFrameworks/pull/942.patch"}},{"updated_at":"2012-02-23T21:09:24Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/941","comments":0,"milestone":null,"number":941,"html_url":"https://github.com/openframeworks/openFrameworks/issues/941","assignee":null,"title":"camera and 3d ribbon drawing example","labels":[],"closed_at":"2012-02-23T21:09:24Z","created_at":"2012-02-23T20:53:00Z","state":"closed","user":{"url":"https://api.github.com/users/obviousjim","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"obviousjim","id":321434},"id":3362787,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/941.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/941","patch_url":"https://github.com/openframeworks/openFrameworks/pull/941.patch"}},{"updated_at":"2012-02-25T11:35:00Z","body":"my first stab at an example demonstrating HSB color usage","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/940","comments":1,"milestone":null,"number":940,"html_url":"https://github.com/openframeworks/openFrameworks/issues/940","assignee":null,"title":"color (HSB) example","labels":[],"closed_at":"2012-02-25T11:35:00Z","created_at":"2012-02-23T19:29:00Z","state":"closed","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"damiannz","id":144366},"id":3361558,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/940.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/940","patch_url":"https://github.com/openframeworks/openFrameworks/pull/940.patch"}},{"updated_at":"2012-02-23T19:43:07Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/939","comments":0,"milestone":null,"number":939,"html_url":"https://github.com/openframeworks/openFrameworks/issues/939","assignee":null,"title":"Quaternion examples for 3d","labels":[],"closed_at":"2012-02-23T19:43:07Z","created_at":"2012-02-23T19:25:33Z","state":"closed","user":{"url":"https://api.github.com/users/obviousjim","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"obviousjim","id":321434},"id":3361490,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/939.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/939","patch_url":"https://github.com/openframeworks/openFrameworks/pull/939.patch"}},{"updated_at":"2012-02-23T19:28:05Z","body":"my stab at an example demonstrating HSB colour setting","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/938","comments":0,"milestone":null,"number":938,"html_url":"https://github.com/openframeworks/openFrameworks/issues/938","assignee":null,"title":"color (HSB) example","labels":[],"closed_at":"2012-02-23T19:28:05Z","created_at":"2012-02-23T19:24:29Z","state":"closed","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"damiannz","id":144366},"id":3361464,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/938.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/938","patch_url":"https://github.com/openframeworks/openFrameworks/pull/938.patch"}},{"updated_at":"2012-02-24T05:20:39Z","body":"...g to ofLog ostream operator, fixes #761","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/937","comments":0,"milestone":null,"number":937,"html_url":"https://github.com/openframeworks/openFrameworks/issues/937","assignee":null,"title":"default log level is now OF_LOG_NOTICE, fixes #858; removed space paddin...","labels":[],"closed_at":"2012-02-24T05:20:39Z","created_at":"2012-02-23T19:22:47Z","state":"closed","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"danomatika","id":480637},"id":3361430,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/937.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/937","patch_url":"https://github.com/openframeworks/openFrameworks/pull/937.patch"}},{"updated_at":"2012-02-23T19:24:31Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/936","comments":0,"milestone":null,"number":936,"html_url":"https://github.com/openframeworks/openFrameworks/issues/936","assignee":null,"title":"Two Quaternion based examples for the 3d folder","labels":[],"closed_at":"2012-02-23T19:24:31Z","created_at":"2012-02-23T19:22:40Z","state":"closed","user":{"url":"https://api.github.com/users/obviousjim","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"obviousjim","id":321434},"id":3361426,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/936.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/936","patch_url":"https://github.com/openframeworks/openFrameworks/pull/936.patch"}},{"updated_at":"2012-02-23T19:16:55Z","body":"makes a little more sense now, after discussion with arturo.\r\n\r\n(trying to send this again)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/935","comments":0,"milestone":null,"number":935,"html_url":"https://github.com/openframeworks/openFrameworks/issues/935","assignee":null,"title":"fixed example structure","labels":[],"closed_at":"2012-02-23T19:16:55Z","created_at":"2012-02-23T18:40:16Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"kylemcdonald","id":157106},"id":3360790,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/935.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/935","patch_url":"https://github.com/openframeworks/openFrameworks/pull/935.patch"}},{"updated_at":"2012-02-23T18:39:20Z","body":"makes a little more sense now, after discussion with arturo.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/934","comments":0,"milestone":null,"number":934,"html_url":"https://github.com/openframeworks/openFrameworks/issues/934","assignee":null,"title":"fixed example structure","labels":[],"closed_at":"2012-02-23T18:39:20Z","created_at":"2012-02-23T18:38:58Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"kylemcdonald","id":157106},"id":3360773,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/934.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/934","patch_url":"https://github.com/openframeworks/openFrameworks/pull/934.patch"}},{"updated_at":"2012-02-24T23:39:28Z","body":"-> Allow use of Multisampling on Windows 7 (call of method setGlutDisplayString(\"rgba double samples>=4 depth alpha\")).\r\nPartielly fix Issue #412\r\n\r\nall examples have been successfully tested (use of freeglut instead of glut)\r\n\r\nexamples Graphics, Polygon, Advanced3d and AdvancedEvents have been successfully tested with multisampling\r\n\r\nAdd compileAllExemples script on windows 7 64bits named compileAllExamplesOnWindowsx64.bat","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/932","comments":1,"milestone":null,"number":932,"html_url":"https://github.com/openframeworks/openFrameworks/issues/932","assignee":null,"title":"Replacement of old glut by freeglut 2.8","labels":[],"closed_at":"2012-02-24T23:39:28Z","created_at":"2012-02-23T15:22:48Z","state":"closed","user":{"url":"https://api.github.com/users/benerone","gravatar_id":"695cbec02130d955193699b9f57f3537","avatar_url":"https://secure.gravatar.com/avatar/695cbec02130d955193699b9f57f3537?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"benerone","id":1463319},"id":3357412,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/932.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/932","patch_url":"https://github.com/openframeworks/openFrameworks/pull/932.patch"}},{"updated_at":"2012-02-23T03:43:32Z","body":"david's code was really confusing","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/927","comments":0,"milestone":null,"number":927,"html_url":"https://github.com/openframeworks/openFrameworks/issues/927","assignee":null,"title":"clarifying of ofMesh::getCentroid","labels":[],"closed_at":"2012-02-23T03:43:32Z","created_at":"2012-02-23T03:35:54Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"kylemcdonald","id":157106},"id":3351086,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/927.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/927","patch_url":"https://github.com/openframeworks/openFrameworks/pull/927.patch"}},{"updated_at":"2012-02-26T04:12:31Z","body":"I noticed that PR's are coming in so thought I'd try this out.\r\n\r\nHere's a couple of additions / fixes for 3d in oF","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/924","comments":7,"milestone":null,"number":924,"html_url":"https://github.com/openframeworks/openFrameworks/issues/924","assignee":null,"title":"Section 3d","labels":[],"closed_at":"2012-02-25T19:29:01Z","created_at":"2012-02-21T08:45:05Z","state":"closed","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":3308155,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/924.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/924","patch_url":"https://github.com/openframeworks/openFrameworks/pull/924.patch"}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=11&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4985'), ('content-length', '34706'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"8850a976447909b25534f28d1e1c245b"'), ('date', 'Tue, 29 May 2012 18:46:31 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-02-21T08:44:28Z","body":"I noticed that PR's are coming in so thought I'd try this out.\r\n\r\nHere's a couple of additions / fixes for 3d in oF","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/923","comments":0,"milestone":null,"number":923,"html_url":"https://github.com/openframeworks/openFrameworks/issues/923","assignee":null,"title":"Section 3d","labels":[],"closed_at":"2012-02-21T08:44:28Z","created_at":"2012-02-21T08:43:39Z","state":"closed","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3308136,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/923","patch_url":"https://github.com/openframeworks/openFrameworks/pull/923.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/923.diff"}},{"updated_at":"2012-02-25T18:33:00Z","body":"hi,\r\n\r\nive merged the ofxiOS addon (https://github.com/julapy/ofxiOS) into ofxiPhone.\r\nits a significant change to ofxiPhone and so im wondering if there is a testing procedure for this?\r\ni have an example which tests the new code but not sure if to upload it somewhere or to commit it to the iPhoneSpecificExamples folder.\r\nlet me know the best way to go about this.\r\n\r\nthx,\r\nL.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/921","comments":1,"milestone":null,"number":921,"html_url":"https://github.com/openframeworks/openFrameworks/issues/921","assignee":null,"title":"merge ofxiOS into ofxiPhone","labels":[],"closed_at":"2012-02-25T18:33:00Z","created_at":"2012-02-16T22:34:27Z","state":"closed","user":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"id":3259859,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/921","patch_url":"https://github.com/openframeworks/openFrameworks/pull/921.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/921.diff"}},{"updated_at":"2012-03-15T18:34:17Z","body":"logic error - if the file doesn't exist and overwrite is set to true it returns prematurely. \r\n\r\nthis needs removing:\r\n\r\n\t\t\telse{\r\n\t\t\tofLog(OF_LOG_WARNING, \"ofFile::moveFromTo destination file/folder exists, use bool overwrite if you want to overwrite destination file/folder\");\r\n\t\t\treturn false;\r\n\t\t\t}\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/918","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":918,"html_url":"https://github.com/openframeworks/openFrameworks/issues/918","assignee":null,"title":"bug in ofFile::moveFromTo / copyFromTo","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2012-03-15T18:34:17Z","created_at":"2012-02-15T21:06:20Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":3241883,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-02-24T19:53:13Z","body":"Apologies it turns out my last fix to closeMovie was not the best approach: https://github.com/openframeworks/openFrameworks/pull/887\r\n\r\nAdding width = height = 0 in closeMovie forces the QuicktimePlayer to reallocate pixels and MemGWorld every time you have closed a movie in an instance...but after more extensive testing on Mac and PC it would seem that a better approach is to not clearMemory() in the closeMovie call, but only in the dtor.\r\n\r\nThis is for two reasons:\r\n\r\n!) we don't clear the gWorld pixels and we don't dispose of the MemGworld in the closeMovie call so it doesn't make sense to clear our pixels\r\n2) if you are rapidly (ie., in a thread) opening and closing movies of the same width and height as fast as possible it turns out it's best not to try to dispose and reallocate the memGworld and gWorld pixels -> this is possibly because we are not deleting the gWorld pixels (the crash is a malloc error when new'ing the gWorld pixels)\r\n\r\nUsing this method gives the fastest results when loading/unloading movies of the same size.\r\n\r\nIf we're not happy with leaving memory allocated after a call to closeMovie we could try another approach which is to move the calls in the dtor into the closeMovie call...\r\n\r\nBut it seems to me that there is no harm in leaving the pixels, gWorld pixels and MemGworld allocated in an instance...the smart pointer will delete the pixels if we stop using the instance and if the user is using a pointer then they will delete it with the same result...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/913","comments":0,"milestone":null,"number":913,"html_url":"https://github.com/openframeworks/openFrameworks/issues/913","assignee":null,"title":"Bugfix of quicktime player (updated)","labels":[],"closed_at":"2012-02-24T19:53:13Z","created_at":"2012-02-11T01:11:44Z","state":"closed","user":{"url":"https://api.github.com/users/gameoverhack","avatar_url":"https://secure.gravatar.com/avatar/397ac2141aace0681a354185e7efb0f1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"397ac2141aace0681a354185e7efb0f1","login":"gameoverhack","id":331599},"id":3182222,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/913","patch_url":"https://github.com/openframeworks/openFrameworks/pull/913.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/913.diff"}},{"updated_at":"2012-03-13T14:24:08Z","body":"In my understanding ofQuaternion ofMatrix4x4::getRotate() should return an ofQuaternion which contains only the rotation part of the transformation stored in the matrix. It should therefore be scale invariant.\r\nHowever scaling the matrix produces different outputs of getRotate():\r\n\r\n
    ofMatrix4x4 m;                          // identity matrix m\r\nm.rotate(45, 1, 0, 0);                  // rotates m by 45 degrees around x-axis\r\ncout << m.getRotate() << endl;          // writes return value of getRotate() to the console\r\ncout << m.getScale() << endl << endl;   // writes return value of getScale() to the console\r\nm.scale(2, 2, 2);                       // scales the matrix symmetrically in all dimensions\r\ncout << m.getRotate() << endl;          // writes return value of getRotate() to the console\r\ncout << m.getScale() << endl;           // writes return value of getScale() to the console\r\n
    \r\n\r\nExpected behavior:\r\n
           1,        0,        0,        0\r\n       0, 0.707107, 0.707107,        0\r\n       0, -0.707107, 0.707107,        0\r\n       0,        0,        0,        1\r\n1, 1, 1\r\n\r\n       1,        0,        0,        0\r\n       0, 0.707107, 0.707107,        0\r\n       0, -0.707107, 0.707107,        0\r\n       0,        0,        0,        1\r\n2, 2, 2\r\n
    \r\n\r\nObserved behavior:\r\n
           1,        0,        0,        0\r\n       0, 0.707107, 0.707107,        0\r\n       0, -0.707107, 0.707107,        0\r\n       0,        0,        0,        1\r\n1, 1, 1\r\n\r\n       1,        0,        0,        0\r\n       0,  0.61878, 0.785564,        0\r\n       0, -0.785564,  0.61878,        0\r\n       0,        0,        0,        1\r\n2, 2, 2\r\n
    \r\n\r\nSo getScale() returns the correct values, but getRotate() does not and might need to be fixed.\r\n\r\nofMatrix4x4::decompose() seems to always return the correct rotation quaternion.\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/912","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":912,"html_url":"https://github.com/openframeworks/openFrameworks/issues/912","assignee":null,"title":"Bug in ofMatrix4x4::getRotate","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2012-03-13T14:24:08Z","created_at":"2012-02-10T14:30:37Z","state":"closed","user":{"url":"https://api.github.com/users/santa41116","avatar_url":"https://secure.gravatar.com/avatar/40b8d7b7ecf1a7937dda0f1a2308b869?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"40b8d7b7ecf1a7937dda0f1a2308b869","login":"santa41116","id":941916},"id":3172556,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-02-10T02:39:14Z","body":"the current develop branch is broken. click here to fix!\r\n\r\nedit: i'm terrible at selecting \"develop\" instead of \"master\".","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/911","comments":0,"milestone":null,"number":911,"html_url":"https://github.com/openframeworks/openFrameworks/issues/911","assignee":null,"title":"OF_LOG_NOTICE errors from current build","labels":[],"closed_at":"2012-02-10T02:39:14Z","created_at":"2012-02-10T02:29:24Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3167036,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/911","patch_url":"https://github.com/openframeworks/openFrameworks/pull/911.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/911.diff"}},{"updated_at":"2012-02-10T02:28:38Z","body":"the current develop branch is broken. click here to fix!","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/910","comments":0,"milestone":null,"number":910,"html_url":"https://github.com/openframeworks/openFrameworks/issues/910","assignee":null,"title":"OF_LOG_NOTICE errors from current build","labels":[],"closed_at":"2012-02-10T02:28:38Z","created_at":"2012-02-10T02:28:23Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3167033,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/910","patch_url":"https://github.com/openframeworks/openFrameworks/pull/910.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/910.diff"}},{"updated_at":"2012-02-25T03:30:47Z","body":"All \"arc\" methods now accept any start or stop angle. Counter clockwise arcs can now be drawn with arcNegative method. Associated Cairo support for \"arc_negative\" added and tested. Circle Points LUT preserved for all. Arc method generally re-written to support both clockwise and counter-clockwise directions.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/908","comments":2,"milestone":null,"number":908,"html_url":"https://github.com/openframeworks/openFrameworks/issues/908","assignee":null,"title":"ofPath, ofPolyline, ofCairoRenderer :: arcNegative() support added.","labels":[],"closed_at":"2012-02-25T03:30:47Z","created_at":"2012-02-09T23:24:31Z","state":"closed","user":{"url":"https://api.github.com/users/bakercp","avatar_url":"https://secure.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","login":"bakercp","id":300484},"id":3165436,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/908","patch_url":"https://github.com/openframeworks/openFrameworks/pull/908.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/908.diff"}},{"updated_at":"2012-02-25T19:10:18Z","body":"This commit implements a GLUT-based solution for keeping track of\r\nmodifier keys. Changes are made to GLUT and the events system.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/907","comments":5,"milestone":null,"number":907,"html_url":"https://github.com/openframeworks/openFrameworks/issues/907","assignee":null,"title":"A GLUT-based solution for keeping track of modifier keys.","labels":[],"closed_at":"2012-02-25T18:29:47Z","created_at":"2012-02-09T23:21:12Z","state":"closed","user":{"url":"https://api.github.com/users/bakercp","avatar_url":"https://secure.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","login":"bakercp","id":300484},"id":3165400,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/907","patch_url":"https://github.com/openframeworks/openFrameworks/pull/907.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/907.diff"}},{"updated_at":"2012-02-25T11:30:26Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/906","comments":3,"milestone":null,"number":906,"html_url":"https://github.com/openframeworks/openFrameworks/issues/906","assignee":null,"title":"A few small changes to eliminate compiler warnings on OS X.","labels":[],"closed_at":"2012-02-25T11:30:26Z","created_at":"2012-02-09T23:17:28Z","state":"closed","user":{"url":"https://api.github.com/users/bakercp","avatar_url":"https://secure.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","login":"bakercp","id":300484},"id":3165361,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/906","patch_url":"https://github.com/openframeworks/openFrameworks/pull/906.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/906.diff"}},{"updated_at":"2012-02-09T17:25:22Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/905","comments":0,"milestone":null,"number":905,"html_url":"https://github.com/openframeworks/openFrameworks/issues/905","assignee":null,"title":"fixed ofxiPhoneSetGLViewTransparent(bool b). Now it correctly sets ios glsview transparency.","labels":[],"closed_at":"2012-02-09T17:25:22Z","created_at":"2012-02-09T17:18:57Z","state":"closed","user":{"url":"https://api.github.com/users/roymacdonald","avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","login":"roymacdonald","id":974878},"id":3160184,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/905","patch_url":"https://github.com/openframeworks/openFrameworks/pull/905.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/905.diff"}},{"updated_at":"2012-02-09T17:16:56Z","body":"edit: sorry for the bad commit range in that last pull request :)\r\n\r\ni tested all these changes against MeshLab, which uses VCGlib internally to parse the ply files.\r\n\r\ni was considering replacing the save function entirely with the binary version, but decided against it because the load() doesn't support binary yet.\r\n\r\nif this pull request can be done, it will help a ton with my next class at ITP where we're covering 3d. having built in load/save for ply clouds and meshes makes a huge difference.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/904","comments":3,"milestone":null,"number":904,"html_url":"https://github.com/openframeworks/openFrameworks/issues/904","assignee":null,"title":"fixed ofMesh saving colors and normals, added binary save","labels":[],"closed_at":"2012-02-09T17:16:56Z","created_at":"2012-02-09T08:08:09Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3153707,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/904","patch_url":"https://github.com/openframeworks/openFrameworks/pull/904.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/904.diff"}},{"updated_at":"2012-02-09T08:07:03Z","body":"i tested all these changes against MeshLab, which uses VCGlib internally to parse the ply files.\r\n\r\ni was considering replacing the save function entirely with the binary version, but decided against it because the load() doesn't support binary yet.\r\n\r\nif this pull request can be done, it will help a ton with my next class at ITP where we're covering 3d. having built in load/save for ply clouds and meshes makes a huge difference.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/903","comments":0,"milestone":null,"number":903,"html_url":"https://github.com/openframeworks/openFrameworks/issues/903","assignee":null,"title":"fixed ofMesh saving colors and normals, added binary save","labels":[],"closed_at":"2012-02-09T08:07:03Z","created_at":"2012-02-09T08:05:32Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3153687,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/903","patch_url":"https://github.com/openframeworks/openFrameworks/pull/903.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/903.diff"}},{"updated_at":"2012-02-09T13:31:41Z","body":"See commit notes.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/900","comments":2,"milestone":null,"number":900,"html_url":"https://github.com/openframeworks/openFrameworks/issues/900","assignee":null,"title":"ofPath, ofPolyline, ofCairoRenderer, ofTrueTypeFont, ofGetModifierPressed(GLUT keymodifier addition)","labels":[],"closed_at":"2012-02-09T13:31:41Z","created_at":"2012-02-08T18:51:11Z","state":"closed","user":{"url":"https://api.github.com/users/bakercp","avatar_url":"https://secure.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","login":"bakercp","id":300484},"id":3145547,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/900","patch_url":"https://github.com/openframeworks/openFrameworks/pull/900.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/900.diff"}},{"updated_at":"2012-02-12T00:57:56Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/899","comments":0,"milestone":null,"number":899,"html_url":"https://github.com/openframeworks/openFrameworks/issues/899","assignee":null,"title":"archlinux install scripts: only update packages related to OF","labels":[],"closed_at":"2012-02-12T00:57:56Z","created_at":"2012-02-07T22:04:56Z","state":"closed","user":{"url":"https://api.github.com/users/benben","avatar_url":"https://secure.gravatar.com/avatar/614a4e493d7c353296519bba720e77c5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"614a4e493d7c353296519bba720e77c5","login":"benben","id":124513},"id":3132166,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/899","patch_url":"https://github.com/openframeworks/openFrameworks/pull/899.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/899.diff"}},{"updated_at":"2012-02-07T08:26:31Z","body":"The download link on the documenation on the openframeworks.cc site just contains an empty (just a few .css-files) archive.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/898","comments":1,"milestone":null,"number":898,"html_url":"https://github.com/openframeworks/openFrameworks/issues/898","assignee":null,"title":"ofx Online Documentation Download broken","labels":[],"closed_at":"2012-02-07T08:26:31Z","created_at":"2012-02-06T22:45:53Z","state":"closed","user":{"url":"https://api.github.com/users/faebser","avatar_url":"https://secure.gravatar.com/avatar/6fbc9e499848684791054026c73e0dac?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"6fbc9e499848684791054026c73e0dac","login":"faebser","id":333862},"id":3115859,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-02-25T18:19:11Z","body":"ofEasing class with static functions for all the penner easing equations + new version of the ofMap function that accepts a parameter for the easing function, like:\r\n\r\nofMap(value, minIn, maxIn, minOut, maxOut, clamp, easingFunction);","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/895","comments":0,"milestone":null,"number":895,"html_url":"https://github.com/openframeworks/openFrameworks/issues/895","assignee":null,"title":"ofTween","labels":[],"closed_at":"2012-02-25T18:19:11Z","created_at":"2012-02-04T17:48:34Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":3094794,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/895","patch_url":"https://github.com/openframeworks/openFrameworks/pull/895.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/895.diff"}},{"updated_at":"2012-02-04T17:40:32Z","body":"ofEasing class with functions for the penner easing equations + a new version of the ofMap function that takes an additional argument for the easing equation to use","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/894","comments":0,"milestone":null,"number":894,"html_url":"https://github.com/openframeworks/openFrameworks/issues/894","assignee":null,"title":"ofTween","labels":[],"closed_at":"2012-02-04T17:40:32Z","created_at":"2012-02-04T17:40:02Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":3094737,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/894","patch_url":"https://github.com/openframeworks/openFrameworks/pull/894.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/894.diff"}},{"updated_at":"2012-02-09T15:55:33Z","body":"I noticed the ios sound stream is hard coded to use 1 input channel. As of iOS 4.3, the iPad is capable of using usb audio devices through a powered hub, so its desirable to be able to set a stereo input etc.\r\n\r\nThis request fixes #890. I tested in the simulator and on an iPad 2, both with external sound card and internal speakers/mic. A stereo in/out app works without any modifications (no notifications and sound stream restart required).\r\n\r\nAlso, this includes some code cleanup.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/893","comments":14,"milestone":null,"number":893,"html_url":"https://github.com/openframeworks/openFrameworks/issues/893","assignee":null,"title":"updated ios sound stream to handle multiple input channels","labels":[],"closed_at":"2012-02-09T15:34:14Z","created_at":"2012-02-04T11:22:45Z","state":"closed","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3093159,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/893","patch_url":"https://github.com/openframeworks/openFrameworks/pull/893.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/893.diff"}},{"updated_at":"2012-02-09T15:13:44Z","body":"fixes #891\r\nhttps://github.com/openframeworks/openFrameworks/issues/891\r\n\r\nconsider doing same elsewhere (ofImage_, but then also need to deal with textures, and possibility of non-matching texture)\r\n\r\nThis obviously doesn't fit with the 'little as possible' maxim of code\r\ni can't see any other way to use the ofPixels objects for other types, and am curious whether anybody has any objections\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/892","comments":2,"milestone":null,"number":892,"html_url":"https://github.com/openframeworks/openFrameworks/issues/892","assignee":null,"title":"Add extra ofPixels_ types","labels":[],"closed_at":"2012-02-09T15:13:44Z","created_at":"2012-02-04T07:12:21Z","state":"closed","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3092432,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/892","patch_url":"https://github.com/openframeworks/openFrameworks/pull/892.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/892.diff"}},{"updated_at":"2012-02-12T04:35:37Z","body":"hey!\r\ni'd like to have an `ofPixels_`\r\nbut since this isn't defined in `ofPixels_`, and many of the template functions are in that cpp (and not in the h), i can't just have whatever image type i like.\r\nhttps://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/graphics/ofPixels.cpp\r\n\r\nsuggestions:\r\n1. add lots more possibilities to ofPixels.cpp\r\n2. move a few more important functions over to ofPixels.h (e.g. getPixels, allocate)\r\n\r\ni think 1 is tidier, so i'm doing that in my project branch","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/891","comments":2,"milestone":null,"number":891,"html_url":"https://github.com/openframeworks/openFrameworks/issues/891","assignee":null,"title":"ofPixels limitations","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2012-02-09T15:52:57Z","created_at":"2012-02-04T07:07:07Z","state":"closed","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3092414,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-02-09T15:54:40Z","body":"ofxiPhoneSoundStream is assuming the input will only ever be mono (1 channel).\r\n\r\nin /libs/openFrameworks/sound/ofxiPhoneSoundStream.mm, in recordingCallback(), the actual number of channels is being overwritten; \r\nalso in :setup, the malloc of sampleBuffer `sampleBuffer = (short int*) malloc(MAX_BUFFER_SIZE*2);` is ignoring the number of inChannels.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/890","comments":3,"milestone":null,"number":890,"html_url":"https://github.com/openframeworks/openFrameworks/issues/890","assignee":null,"title":"iOS sound input is single channel only","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":"2012-02-09T15:54:40Z","created_at":"2012-02-03T16:49:34Z","state":"closed","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":3085576,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-02-09T15:15:02Z","body":"When using setOrientation the iPhoneKeyboard was not automatically re-orienting itself correctly. These changes fix that problem on on Ipad2 IOS4; could not check it on any other device or IOS.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/889","comments":3,"milestone":null,"number":889,"html_url":"https://github.com/openframeworks/openFrameworks/issues/889","assignee":null,"title":"Bugfix ofx iphone keyboard","labels":[],"closed_at":"2012-02-09T15:15:02Z","created_at":"2012-02-03T13:24:15Z","state":"closed","user":{"url":"https://api.github.com/users/gameoverhack","avatar_url":"https://secure.gravatar.com/avatar/397ac2141aace0681a354185e7efb0f1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"397ac2141aace0681a354185e7efb0f1","login":"gameoverhack","id":331599},"id":3082911,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/889","patch_url":"https://github.com/openframeworks/openFrameworks/pull/889.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/889.diff"}},{"updated_at":"2012-02-09T15:08:28Z","body":"setOrientation was not working on Ipad2 IOS4; could not check it on any other device or IOS.\r\n\r\nBasically the the enum's for ofOrientation were making apps flip the wrong way left/right. Also was crashing sometimes because was not checking for OF_ORIENTATION_UNKNOWN before setting the orientation.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/888","comments":0,"milestone":null,"number":888,"html_url":"https://github.com/openframeworks/openFrameworks/issues/888","assignee":null,"title":"Bugfix set orientation","labels":[],"closed_at":"2012-02-09T15:08:28Z","created_at":"2012-02-03T13:22:08Z","state":"closed","user":{"url":"https://api.github.com/users/gameoverhack","avatar_url":"https://secure.gravatar.com/avatar/397ac2141aace0681a354185e7efb0f1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"397ac2141aace0681a354185e7efb0f1","login":"gameoverhack","id":331599},"id":3082885,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/888","patch_url":"https://github.com/openframeworks/openFrameworks/pull/888.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/888.diff"}},{"updated_at":"2012-02-09T15:00:54Z","body":"Tiny bug in closeMovie fixed by reseting width and height to 0; if we't then re-loading a movie in the same instance doesn't work because ofPixels and memGWorld do not get reallocated","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/887","comments":0,"milestone":null,"number":887,"html_url":"https://github.com/openframeworks/openFrameworks/issues/887","assignee":null,"title":"Bugfix of quicktime player","labels":[],"closed_at":"2012-02-09T15:00:54Z","created_at":"2012-02-03T13:06:19Z","state":"closed","user":{"url":"https://api.github.com/users/gameoverhack","avatar_url":"https://secure.gravatar.com/avatar/397ac2141aace0681a354185e7efb0f1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"397ac2141aace0681a354185e7efb0f1","login":"gameoverhack","id":331599},"id":3082756,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/887","patch_url":"https://github.com/openframeworks/openFrameworks/pull/887.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/887.diff"}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=12&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4984'), ('content-length', '37658'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"5a69eb871801e8ffe9ee98c01a2b00b9"'), ('date', 'Tue, 29 May 2012 18:46:32 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/886","html_url":"https://github.com/openframeworks/openFrameworks/issues/886","body":"the change is minor but it was quite a headache trying to figure out what wasn't working.\r\nchanged from \r\n\r\nofxiPhoneSetGLViewTransparent(bool b) {\r\n\r\n\tofxiPhoneGetGLView().opaque = !b;\r\n\r\n}\r\n\r\nto\r\n\r\n\r\nofxiPhoneSetGLViewTransparent(bool b) {\r\n\r\n\tofxiPhoneGetGLView().layer.opaque = !b;\r\n\r\n}","closed_at":"2012-02-09T15:00:24Z","labels":[],"title":"Just a little fix to ofxiPhone. the function ofxiPhoneSetGLViewTransparent now works.","pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/886.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/886","diff_url":"https://github.com/openframeworks/openFrameworks/pull/886.diff"},"created_at":"2012-01-31T06:11:44Z","updated_at":"2012-02-09T15:00:24Z","comments":1,"milestone":null,"number":886,"id":3031789,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/roymacdonald","gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","login":"roymacdonald","avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":974878}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/885","html_url":"https://github.com/openframeworks/openFrameworks/issues/885","body":"\tif( !ofFile::doesFileExist(pathSrc) ){\r\n\r\nneeds to pass through if the path is absolute or not - note this introduces a second bug which is that we can't mix absolute path and relative paths. \r\n\r\nthe smarter fix is to have doesFileExist check if the file starts with a \"/\" and if so understand it is absolute. ","closed_at":"2012-03-15T18:34:17Z","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/critical","color":"ff0000","name":"critical"}],"title":"bug in ofFile::copyFromTo ( prob ofDirectory::copyFromTo also )","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-01-31T01:36:56Z","updated_at":"2012-03-15T18:34:17Z","comments":1,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","due_on":"2012-04-08T07:00:00Z","open_issues":0,"title":"0071 Release","created_at":"2011-12-02T15:29:28Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":4,"id":61808,"state":"closed","closed_issues":70},"number":885,"id":3029989,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/884","html_url":"https://github.com/openframeworks/openFrameworks/issues/884","body":"I found an error in the multiplication of ofMatrix3x3...\r\n\r\nhere is the correct function :\r\n\r\nofMatrix3x3 ofMatrix3x3::operator*(const ofMatrix3x3& B) {\r\n\tofMatrix3x3 C;\r\n\tC.a = a * B.a + b * B.d + c * B.g;\r\n\tC.b = a * B.b + b * B.e + c * B.h;\r\n\tC.c = a * B.c + b * B.f + c * B.i;\r\n\tC.d = d * B.a + e * B.d + f * B.g;\r\n\tC.e = d * B.b + e * B.e + f * B.h;\r\n\tC.f = d * B.c + e * B.f + f * B.i;\r\n\tC.g = g * B.a + h * B.d + i * B.g;\r\n\tC.h = g * B.b + h * B.e + i * B.h;\r\n\tC.i = g * B.c + h * B.f + i * B.i;\r\n\treturn C;\r\n}\r\n\r\nRegards,\r\nMathieu.","closed_at":"2012-03-12T03:29:36Z","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/critical","color":"ff0000","name":"critical"}],"title":"Error found in ofMatrix3x3","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-01-28T00:54:06Z","updated_at":"2012-03-12T03:29:36Z","comments":6,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","due_on":"2012-04-08T07:00:00Z","open_issues":0,"title":"0071 Release","created_at":"2011-12-02T15:29:28Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":4,"id":61808,"state":"closed","closed_issues":70},"number":884,"id":3002341,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/lemuzimi","gravatar_id":"311a7493bfeb6437092aee8421c17bef","login":"lemuzimi","avatar_url":"https://secure.gravatar.com/avatar/311a7493bfeb6437092aee8421c17bef?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":644183}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/883","html_url":"https://github.com/openframeworks/openFrameworks/issues/883","body":"Parts of the base openFrameworks library has dependancies \"downstream\" that require you set up your project in the unintuitive, circular and very particular manner the examples are built. \r\n\r\nFound in:\r\nofEvents (ofxEventUtils)\r\nofiPhoneVideoPlayer (ofxiPhoneExtras) - why are there iPhone objects in base?\r\nofLog (ofx*LogChannel)\r\nofSoundPlayer (ofxOpenALSoundPlayer)\r\nofSoundStream (ofx*SoundStream)\r\nofSystemUtils (ofxAndroidUtils)\r\nofVideoGrabber (ofxAndroidVideoGrabber)","closed_at":"2012-02-27T06:00:34Z","labels":[],"title":"base openFrameworks library has dependancies in ofx (addons)","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-01-27T20:43:00Z","updated_at":"2012-02-27T22:22:49Z","comments":6,"milestone":null,"number":883,"id":2999813,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/yoiang","gravatar_id":"a4bb66a2f2e0ce3f812e68dcf625c753","login":"yoiang","avatar_url":"https://secure.gravatar.com/avatar/a4bb66a2f2e0ce3f812e68dcf625c753?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":89718}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/882","html_url":"https://github.com/openframeworks/openFrameworks/issues/882","body":"there's at least 6 tweening addons right now, i just saw satoru add another :)\r\n\r\nhttp://ofxaddons.com/repos/16\r\nhttp://ofxaddons.com/repos/367\r\nhttp://ofxaddons.com/repos/243\r\nhttp://ofxaddons.com/repos/160\r\nhttp://ofxaddons.com/repos/132\r\nhttps://github.com/satoruhiga/ofxEasingFunc","closed_at":"2012-02-03T17:16:17Z","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","color":"d68e22","name":"addon"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","color":"622425","name":"feature"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","color":"37c200","name":"development-strategy"}],"title":"we need a tweening library in the core","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-01-26T23:22:17Z","updated_at":"2012-02-05T06:37:36Z","comments":6,"milestone":null,"number":882,"id":2987980,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/881","html_url":"https://github.com/openframeworks/openFrameworks/issues/881","body":"or loadMesh/saveMesh.\r\n\r\nit should mirror working with images/everything else.","closed_at":"2012-02-03T11:35:46Z","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","color":"622425","name":"feature"}],"title":"ofMesh::operator<> should be load()/save()","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-01-25T16:56:50Z","updated_at":"2012-02-03T11:35:46Z","comments":0,"milestone":null,"number":881,"id":2967723,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/879","html_url":"https://github.com/openframeworks/openFrameworks/issues/879","body":"binary makes a huge difference when loading and saving large meshes (e.g., kinect depth meshes).","closed_at":"2012-02-10T02:44:13Z","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","color":"622425","name":"feature"}],"title":"add support for binary ply in ofMesh::operator<>","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-01-25T16:53:57Z","updated_at":"2012-02-10T02:44:13Z","comments":1,"milestone":null,"number":879,"id":2967683,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/877","html_url":"https://github.com/openframeworks/openFrameworks/issues/877","body":"The primary contribution here is better integration with GLUT's (limited) support of modifier keys. Since they are not reported as normal keys are, it doesn't make sense to add them to the pressedKeys set. Further, this fix doesn't solve the issue #807, but it moves in that direction.\r\n\r\nhttps://github.com/openframeworks/openFrameworks/issues/652#issuecomment-3400277\r\nhttps://github.com/openframeworks/openFrameworks/pull/807#issuecomment-3402901\r\n\r\nCheers,\r\nChristopher","closed_at":"2012-02-09T13:33:42Z","labels":[],"title":"Keymodifiers for GLUT, ofPolyline/ofPath::arc fixed, ofPolyline/ofPath::arcNegative added.","pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/877.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/877","diff_url":"https://github.com/openframeworks/openFrameworks/pull/877.diff"},"created_at":"2012-01-23T21:42:26Z","updated_at":"2012-02-09T13:33:43Z","comments":1,"milestone":null,"number":877,"id":2942171,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/bakercp","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","login":"bakercp","avatar_url":"https://secure.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":300484}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/876","html_url":"https://github.com/openframeworks/openFrameworks/issues/876","body":"piggy backing the already existing android functionality for reloading textures for ofImage, ofBitmapFont etc...\r\nthis is necessary when the EAGLView needs to be created more then once.","closed_at":"2012-02-25T18:27:19Z","labels":[],"title":"added TARGET_OF_IPHONE guards where iOS needs to reload textures.","pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/876.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/876","diff_url":"https://github.com/openframeworks/openFrameworks/pull/876.diff"},"created_at":"2012-01-23T12:33:39Z","updated_at":"2012-02-25T18:27:19Z","comments":10,"milestone":null,"number":876,"id":2934037,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/874","html_url":"https://github.com/openframeworks/openFrameworks/issues/874","body":"fixes #871","closed_at":"2012-01-21T00:01:10Z","labels":[],"title":"fmod panning","pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/874.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/874","diff_url":"https://github.com/openframeworks/openFrameworks/pull/874.diff"},"created_at":"2012-01-20T12:26:14Z","updated_at":"2012-01-21T00:01:10Z","comments":4,"milestone":null,"number":874,"id":2910394,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/okjake","gravatar_id":"5315c80a526341fa5e8563a8560dadc1","login":"okjake","avatar_url":"https://secure.gravatar.com/avatar/5315c80a526341fa5e8563a8560dadc1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":316538}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/873","html_url":"https://github.com/openframeworks/openFrameworks/issues/873","body":"exposing ofUpdateBitmapCharacterTexture() method so it can be called external to ofBitmapFont.\r\nthis small change is essential when swapping out testApps at run-time, like it is done in ofxiOS (https://github.com/julapy/ofxiOS) \r\nso that the bitmap font texture can be recreated again, otherwise it does not render properly.","closed_at":"2012-01-23T10:02:43Z","labels":[],"title":"exposing ofUpdateBitmapCharacterTexture() in ofBitmapFont","pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/873.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/873","diff_url":"https://github.com/openframeworks/openFrameworks/pull/873.diff"},"created_at":"2012-01-20T04:48:37Z","updated_at":"2012-01-23T12:24:20Z","comments":2,"milestone":null,"number":873,"id":2907377,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/871","html_url":"https://github.com/openframeworks/openFrameworks/issues/871","body":"inside ofFmodSoundPlayer.cpp\r\n\r\n\tpan \t\t\t= 0.5f;\r\n\r\nshould be\r\n\r\n\tpan \t\t\t= 0;\r\n\r\nbecause panning is -1 to 1, not 0 to 1.\r\n\r\nnot sure how this influences the other soundplayers...","closed_at":"2012-01-21T13:11:39Z","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","color":"65a300","name":"bitesize"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","color":"31e03a","name":"fix-proposed"}],"title":"all fmod sounds are panned slightly to the right","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-01-17T09:26:33Z","updated_at":"2012-01-21T13:11:39Z","comments":1,"milestone":null,"number":871,"id":2866235,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/870","html_url":"https://github.com/openframeworks/openFrameworks/issues/870","body":"This is my fix for issue #862. I'm not sure why some of arturoc's changes are showing up in the commits/files changed tab, this is my first pull request. I'm pretty sure my fork is up to date with develop.","closed_at":"2012-01-15T14:56:31Z","labels":[],"title":"Bugfix gst video grabber init","pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/870.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/870","diff_url":"https://github.com/openframeworks/openFrameworks/pull/870.diff"},"created_at":"2012-01-15T08:54:12Z","updated_at":"2012-01-15T16:27:59Z","comments":7,"milestone":null,"number":870,"id":2845038,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/timscaffidi","gravatar_id":"2ad43b65cb02eca2b722133681647492","login":"timscaffidi","avatar_url":"https://secure.gravatar.com/avatar/2ad43b65cb02eca2b722133681647492?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":177125}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/869","html_url":"https://github.com/openframeworks/openFrameworks/issues/869","body":"As recommended by Theo, did some simple benchmark tests and improvements.\r\n\r\nThe GLUT version and this GL version look almost identical.\r\nhttp://www.flickr.com/photos/95943853@N00/6686691527/sizes/o/in/photostream/\r\n\r\nI moved the drawing of the sphere into the renderers so that it stores the verts and eliminates redundant calculations. \r\nThe GL renderer, also has normals. For GL renderer wireframe mode it uses GL_QUAD_STRIPS, which is not defined as an ofPrimitiveMode? And triangle strip for filled mode.\r\n\r\nSimple speed tests drawing 5000 spheres and measuring with ofGetElapsedTimeMillis()\r\nofScale - 231ms\r\nGLUT - 243ms\r\nMultiplying verts by radius - 280ms\r\n\r\n\r\n","closed_at":"2012-02-09T14:49:02Z","labels":[],"title":"Of sphere develop - no GLUT","pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/869.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/869","diff_url":"https://github.com/openframeworks/openFrameworks/pull/869.diff"},"created_at":"2012-01-12T22:47:06Z","updated_at":"2012-02-09T14:49:02Z","comments":5,"milestone":null,"number":869,"id":2825018,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/NickHardeman","gravatar_id":"4fc88ba881fee72fc4c5de473dc2ebbf","login":"NickHardeman","avatar_url":"https://secure.gravatar.com/avatar/4fc88ba881fee72fc4c5de473dc2ebbf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142694}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/868","html_url":"https://github.com/openframeworks/openFrameworks/issues/868","body":"Implemented code based on Paul Bourke here:\r\nhttp://paulbourke.net/texture_colour/texturemap/\r\n\r\nIncludes normals, texture coords and verts","closed_at":"2012-01-12T16:07:50Z","labels":[],"title":"ofSphere non-GLUT based on Paul Bourke","pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/868.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/868","diff_url":"https://github.com/openframeworks/openFrameworks/pull/868.diff"},"created_at":"2012-01-11T20:28:57Z","updated_at":"2012-01-12T16:07:50Z","comments":2,"milestone":null,"number":868,"id":2809551,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/NickHardeman","gravatar_id":"4fc88ba881fee72fc4c5de473dc2ebbf","login":"NickHardeman","avatar_url":"https://secure.gravatar.com/avatar/4fc88ba881fee72fc4c5de473dc2ebbf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142694}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/867","html_url":"https://github.com/openframeworks/openFrameworks/issues/867","body":"I've disabled the allocation of textures in inputImage in ofxCvContourfinder, since it gave me problems using the contour finder with odd resolutions multithreaded (because the thread cannot allocate a texture), and since I couldn't see any reason to generate a texture and use gpu space when its never used. \r\n\r\nJonas Jongejan ","closed_at":"2012-01-20T12:15:03Z","labels":[],"title":"Texture allocation in ofxCvContourfinder disabled ","pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/867.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/867","diff_url":"https://github.com/openframeworks/openFrameworks/pull/867.diff"},"created_at":"2012-01-10T11:38:30Z","updated_at":"2012-01-20T12:15:03Z","comments":0,"milestone":null,"number":867,"id":2783845,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/HalfdanJ","gravatar_id":"9aa6a5cc8cd427d846b067a84f5b96ed","login":"HalfdanJ","avatar_url":"https://secure.gravatar.com/avatar/9aa6a5cc8cd427d846b067a84f5b96ed?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":227529}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/865","html_url":"https://github.com/openframeworks/openFrameworks/issues/865","body":"ofDrawGrid and ofDrawGridPlane\r\nseems current develop branch doesn't build (or i just need to recreate my projects)\r\nissues with ofQuicktimeGrabber\r\nso i cant test this with latest release\r\n","closed_at":"2012-01-16T00:17:00Z","labels":[],"title":"ofDrawGrid for a 3D grid","pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/865.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/865","diff_url":"https://github.com/openframeworks/openFrameworks/pull/865.diff"},"created_at":"2012-01-06T16:11:08Z","updated_at":"2012-02-21T03:37:51Z","comments":7,"milestone":null,"number":865,"id":2748585,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/864","html_url":"https://github.com/openframeworks/openFrameworks/issues/864","body":"The return value of gtkFileDialog is not assigned to results.filePath.\r\n\r\n#if defined( TARGET_LINUX ) && defined (OF_USING_GTK)\r\n \r\n\\- gtkFileDialog(GTK_FILE_CHOOSER_ACTION_SAVE, messageName,defaultName); \r\n\\+ results.filePath = gtkFileDialog(GTK_FILE_CHOOSER_ACTION_SAVE, messageName,defaultName); \r\n\r\n#endif ","closed_at":"2012-01-04T10:45:44Z","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","color":"27607f","name":"linux"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","color":"65a300","name":"bitesize"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","color":"31e03a","name":"fix-proposed"}],"title":"Issue with the linux version of ofSystemSaveDialog","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-01-04T08:13:04Z","updated_at":"2012-01-04T10:45:44Z","comments":0,"milestone":null,"number":864,"id":2720393,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/ljudoed","gravatar_id":"132d4de549d8ac8c04680ccf89c88d4f","login":"ljudoed","avatar_url":"https://secure.gravatar.com/avatar/132d4de549d8ac8c04680ccf89c88d4f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1303238}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/862","html_url":"https://github.com/openframeworks/openFrameworks/issues/862","body":"In trying to get the built in iSight to work in an older MBP, pre unibody, I noticed that the initialization routine was where things were going wrong. I looked at the way that it is done in cheese and found that they first set the state to GST_STATE_READY to determine the capabilities of the device, and in oF we set the state to GST_STATE_PLAYING, before even setting the resolution and framerate.\r\n\r\nSo, in ofGstVideoGrabber.cpp get_device_data(), the iSight had issues with this line, gst_element_set_state (pipeline, GST_STATE_PLAY), where it would return a failure code later on. So I changed it to GST_STATE_READY, and all is good. \r\n\r\nI'm not very experienced with gstreamer, so I'm not sure if just changing that one line is enough to be robust, or if there is a reason it was done this way in the first place.\r\n\r\nhere's the relevant file from the cheese git. http://git.gnome.org/browse/cheese/tree/libcheese/cheese-camera-device.c\r\ncheese_camera_device_get_caps() is the relevant function.\r\n","closed_at":"2012-01-15T15:38:54Z","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"}],"title":"Change gstreamer video initialization process","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-01-03T04:26:08Z","updated_at":"2012-01-15T15:38:54Z","comments":0,"milestone":null,"number":862,"id":2707240,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/timscaffidi","gravatar_id":"2ad43b65cb02eca2b722133681647492","login":"timscaffidi","avatar_url":"https://secure.gravatar.com/avatar/2ad43b65cb02eca2b722133681647492?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":177125}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/860","html_url":"https://github.com/openframeworks/openFrameworks/issues/860","body":"fix is to change the \r\nIntermediate Build Path in the OF project target settings to \r\n\r\n$(SRCROOT)/../../lib/osx/build/debug/\r\n$(SRCROOT)/../../lib/osx/build/release/","closed_at":"2011-12-31T17:30:33Z","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","color":"993e7a","name":"xcode"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/critical","color":"ff0000","name":"critical"}],"title":"xcode OF project getting rebuilt everytime you switch apps","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2011-12-31T17:23:00Z","updated_at":"2011-12-31T17:30:33Z","comments":0,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","due_on":"2012-04-08T07:00:00Z","open_issues":0,"title":"0071 Release","created_at":"2011-12-02T15:29:28Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":4,"id":61808,"state":"closed","closed_issues":70},"number":860,"id":2695070,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/859","html_url":"https://github.com/openframeworks/openFrameworks/issues/859","body":"Closes #796.","closed_at":"2012-01-20T12:15:52Z","labels":[],"title":"Correct applyTranslation parameters in ofxVectorGraphics.","pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/859.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/859","diff_url":"https://github.com/openframeworks/openFrameworks/pull/859.diff"},"created_at":"2011-12-31T13:55:40Z","updated_at":"2012-01-20T12:15:52Z","comments":0,"milestone":null,"number":859,"id":2694572,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/858","html_url":"https://github.com/openframeworks/openFrameworks/issues/858","body":"[Comments](https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/utils/ofLog.h#L37) say that the default log level is `OF_LOG_NOTICE`.\r\n[The source](https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/utils/ofLog.cpp#L6) says the default is `OF_LOG_WARNING`.\r\nThis can be easily checked - adding `ofLog(OF_LOG_NOTICE, \"Test\");` does not produce output. \r\n\r\nSo, should the source or the docs be corrected? Should the default level be notice or warning?\r\n","closed_at":"2012-02-24T05:20:39Z","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","color":"cccc29","name":"documentation"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","color":"37c200","name":"development-strategy"}],"title":"ofLog default level does not match description in comments","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2011-12-31T13:26:44Z","updated_at":"2012-02-24T05:20:39Z","comments":16,"milestone":null,"number":858,"id":2694512,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/857","html_url":"https://github.com/openframeworks/openFrameworks/issues/857","body":"the bezierTo methode of ofPolyline at line 50 does not pass the curveResolution parameter","closed_at":"2011-12-30T12:38:59Z","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","color":"65a300","name":"bitesize"}],"title":"curveResolution of bezierTo in ofPolyline","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2011-12-30T12:29:43Z","updated_at":"2011-12-30T12:38:59Z","comments":1,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","due_on":"2012-04-08T07:00:00Z","open_issues":0,"title":"0071 Release","created_at":"2011-12-02T15:29:28Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":4,"id":61808,"state":"closed","closed_issues":70},"number":857,"id":2688537,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/tmuthesius","gravatar_id":"7c54ab5ecd100a22ff7c4e048bcad864","login":"tmuthesius","avatar_url":"https://secure.gravatar.com/avatar/7c54ab5ecd100a22ff7c4e048bcad864?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":419190}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/854","html_url":"https://github.com/openframeworks/openFrameworks/issues/854","body":"I replaced printf occurences by equivalent ofLog. The changes are quite simple, but please review before merging, I can't even test most of those changes.\r\nSome occurences still remain, please advise how to proceed:\r\n\r\nofSystemUtils.cpp contains MacOS-only printfs (which I have no access to), and it's not clear to me which log levels would be appropriate for those.\r\n\r\nofTrueTypeFont and ofThread contain conditional printfs with bools `printVectorInfo` and `verbose`, respectively. This is obviously to manually enable logging, but if we replace the printfs with ofLog, it would be possible to not get logging output, even if those bools are true, depending on the log level.\r\nSo how should we treat that? \r\n`OF_LOG_FATAL_ERROR` would ensure output if the bools are true, but sounds really too drastic for most of that output.\r\nOTOH, leaving the printfs would ensure appropriate output, but it couldn't be managed/redirected like all other logging output, so that's not very consistent.\r\n\r\nAside of the occurences in ofSystemUtils.cpp, ofTrueTypeFont and ofThread, there remain no relevant, non-commented, logging printfs in `libs/openFrameworks`.\r\nPlease discuss, and I'll amend this PR.\r\nRelevant issues are #833 and #294.","closed_at":"2012-02-09T14:43:51Z","labels":[],"title":"Replace printf by ofLog in /libs/OpenFrameworks","pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/854.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/854","diff_url":"https://github.com/openframeworks/openFrameworks/pull/854.diff"},"created_at":"2011-12-24T12:25:12Z","updated_at":"2012-02-09T14:43:51Z","comments":2,"milestone":null,"number":854,"id":2652588,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/853","html_url":"https://github.com/openframeworks/openFrameworks/issues/853","body":"i get this issue in windows: http://forum.openframeworks.cc/index.php/topic,8329.msg39128.html#new there are other OF user that have this issue in windows? Are you interested to solve this?\r\n\r\ni have a Sony Vaio VGN-AR51E with a NVIDIA GeForce 8400M GT GPU, Windows Vista operative system. And of course i'm using openFramework version 007.\r\n\r\nthanks to all for the attention.","closed_at":"2012-02-05T12:11:54Z","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","color":"244569","name":"windows"}],"title":"ofFbo issues in windows","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2011-12-23T19:21:12Z","updated_at":"2012-02-05T12:11:54Z","comments":0,"milestone":null,"number":853,"id":2649677,"assignee":null,"state":"closed","user":{"url":"https://api.github.com/users/kalwalt","gravatar_id":"4ec3f9bd7d21934ccfbcc5242b786cd0","login":"kalwalt","avatar_url":"https://secure.gravatar.com/avatar/4ec3f9bd7d21934ccfbcc5242b786cd0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1275858}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=13&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4983'), ('content-length', '47132'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"b059090078900e32e218433d0dd9dbd8"'), ('date', 'Tue, 29 May 2012 18:46:33 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-12-23T19:19:03Z","body":"from openframework forum: \r\n\r\ni get this issue in windows: http://forum.openframeworks.cc/index.php/topic,8329.msg39128.html#new there are other OF user that have this issue in windows? Are you interested to solve this?\r\n\r\ni have a Sony Vaio VGN-AR51E with a NVIDIA GeForce 8400M GT GPU, Windows Vista operative system. And of course i'm using openFramework version 007.\r\n\r\nthanks to all for the attention.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/852","comments":0,"milestone":null,"number":852,"html_url":"https://github.com/openframeworks/openFrameworks/issues/852","assignee":null,"title":"ofFbo issues in windows","labels":[],"closed_at":"2011-12-23T19:19:03Z","created_at":"2011-12-23T19:18:38Z","state":"closed","user":{"url":"https://api.github.com/users/kalwalt","gravatar_id":"4ec3f9bd7d21934ccfbcc5242b786cd0","login":"kalwalt","avatar_url":"https://secure.gravatar.com/avatar/4ec3f9bd7d21934ccfbcc5242b786cd0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1275858},"id":2649662,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-16T22:50:31Z","body":"ofHideCursor - fullscreen on startup etc\r\n\r\nsee issues here: \r\nhttp://forum.openframeworks.cc/index.php/topic,7621.0.html\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/850","comments":3,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":850,"html_url":"https://github.com/openframeworks/openFrameworks/issues/850","assignee":null,"title":"fix 10.7.2 issues for OF 0071","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":"2012-03-16T22:49:04Z","created_at":"2011-12-22T19:00:26Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":2640562,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-21T21:25:50Z","body":"0071 section needs to be filled in eventually.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/848","comments":0,"milestone":null,"number":848,"html_url":"https://github.com/openframeworks/openFrameworks/issues/848","assignee":null,"title":"rearranged the commit log, added a section for 0071","labels":[],"closed_at":"2011-12-21T21:25:50Z","created_at":"2011-12-21T20:03:17Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2628968,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/848","patch_url":"https://github.com/openframeworks/openFrameworks/pull/848.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/848.diff"}},{"updated_at":"2011-12-20T21:18:29Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/847","comments":0,"milestone":null,"number":847,"html_url":"https://github.com/openframeworks/openFrameworks/issues/847","assignee":null,"title":"added change log","labels":[],"closed_at":"2011-12-20T21:18:29Z","created_at":"2011-12-20T21:12:39Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2618235,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/847","patch_url":"https://github.com/openframeworks/openFrameworks/pull/847.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/847.diff"}},{"updated_at":"2011-12-13T13:59:21Z","body":"From the forum: http://forum.openframeworks.cc/index.php/topic,8270.msg38547/\r\n> I know it must be something remarkably simple, but ever since switching to archlinux my .h file changes have not been included in my builds unless I do a 'make clean' first.\r\n\r\nInterestingly, I can reproduce this on an Ubuntu 32bit machine. Anybody else?\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/845","comments":1,"milestone":null,"number":845,"html_url":"https://github.com/openframeworks/openFrameworks/issues/845","assignee":null,"title":"Make ignores .h file changes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":"2011-12-13T13:59:21Z","created_at":"2011-12-12T08:24:45Z","state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":2520429,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-25T08:33:50Z","body":"Only add in the script of fedora to install libmpg123-devel.\r\nI can't run the example \"soundPlayerExample\" without this library,\r\nneed to compile again for works.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/844","comments":15,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":844,"html_url":"https://github.com/openframeworks/openFrameworks/issues/844","assignee":null,"title":"libmpg123-devel need to read mp3 in fedora","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":"2012-05-25T08:12:48Z","created_at":"2011-12-11T20:32:32Z","state":"closed","user":{"url":"https://api.github.com/users/nosoyhector","gravatar_id":"23a8f80f17180ec435bdd61f192e8e14","login":"nosoyhector","avatar_url":"https://secure.gravatar.com/avatar/23a8f80f17180ec435bdd61f192e8e14?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1255975},"id":2517403,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-15T18:53:29Z","body":"when opening a file, setting binary to true doesn't do anything","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/842","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":842,"html_url":"https://github.com/openframeworks/openFrameworks/issues/842","assignee":null,"title":"ofFileUtils line 207 ignores binary flag","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/critical","name":"critical","color":"ff0000"}],"closed_at":"2012-03-15T18:53:29Z","created_at":"2011-12-09T20:54:24Z","state":"closed","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":2506806,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-11T15:16:15Z","body":"little fix to solve problems with paths in windows\r\n\r\ntested on osx (no issues on a complex project with these changes applied)\r\ntested on windows (removes all my issues with paths for this project)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/841","comments":9,"milestone":null,"number":841,"html_url":"https://github.com/openframeworks/openFrameworks/issues/841","assignee":null,"title":"fixes to path in windows (otherwise lots of problems)","labels":[],"closed_at":"2011-12-11T15:16:15Z","created_at":"2011-12-09T08:53:53Z","state":"closed","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":2499537,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/841","patch_url":"https://github.com/openframeworks/openFrameworks/pull/841.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/841.diff"}},{"updated_at":"2012-03-16T17:31:50Z","body":"right now if you do \r\n\r\nofxCvColorImage color; \r\ncolor = pixRef;\r\n\r\nyou get a nasty crash because you didn't call allocate first. \r\nofImage allocates as needed and ofxOpenCv should too. \r\n\r\nThere is of course some issues to do with ROIs but if the image width is 0 thats a no brainer. \r\nAlso if the current ROI or current cv image is larger than the input it makes sense to either reallocate or do a smart roi based copy. \r\n\r\neither way we need to get rid of crashes relating to allocate not being called - it is just no fun. \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/839","comments":4,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":839,"html_url":"https://github.com/openframeworks/openFrameworks/issues/839","assignee":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"title":"ofxOpenCv should do smarter allocation","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2012-03-16T17:31:50Z","created_at":"2011-12-07T17:10:00Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":2477055,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-02-25T19:48:21Z","body":"According to GH support, it's not possible to assign a milestone to a PR (only to the issue a PR references). Therefore, I put all currently opened pull requests into this bug and milestone it to 0071. When we have dealt with those (one way or the other) then we could start preparing a 0071 release, according to http://forum.openframeworks.cc/index.php/topic,7869.0.html.\r\n\r\n~~#307 - Automake build files - to help with clean src tarball and install~~\r\n~~#562 - Re-enabled MoviesTask in ofQuickTimePlayer~~\r\n#576 - Generic armv7l Linux build for Beagleboard &co. \r\n~~#637 - ofQuicktimeSoundPlayer~~\r\n~~#708 - Bugfix 3d model loader normals~~\r\n~~#709 - opencv2.3~~\r\n~~#726 - added ofDrawGrid to complement ofDrawAxis. added 'get' accessors to ofCam~~\r\n~~#792 - Bugfix autoreleasepool\r\n~~#794 - Windows compatibility patches for the oF Develop branch~~\r\n~~#907 - A GLUT-based solution for keeping track of modifier keys~~\r\n~~#808 - Feature of sound player get volume~~\r\n~~#809 - Feature of sound stream~~\r\n\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/835","comments":4,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":835,"html_url":"https://github.com/openframeworks/openFrameworks/issues/835","assignee":null,"title":"PR tracking issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2012-02-25T19:48:21Z","created_at":"2011-12-03T15:36:47Z","state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":2437711,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-03T15:54:54Z","body":"Fixed Linux OF Codeblocks projects, including Makefiles that weren't cleaning properly.\r\nThe codeblocks projects hadn't been updated to the latest files.\r\nMakefile clean was not working at the command-line, and was also using uppercase 'Clean' instead of lowercase 'clean', causing codeblocks to spew","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/834","comments":6,"milestone":null,"number":834,"html_url":"https://github.com/openframeworks/openFrameworks/issues/834","assignee":null,"title":"Linux OF codeblocks project fixes - Fixes #830 ","labels":[],"closed_at":"2011-12-03T15:11:54Z","created_at":"2011-12-03T13:47:33Z","state":"closed","user":{"url":"https://api.github.com/users/pierrep","gravatar_id":"be11c9de8242e7aef0446eceaa289e01","login":"pierrep","avatar_url":"https://secure.gravatar.com/avatar/be11c9de8242e7aef0446eceaa289e01?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":392160},"id":2437367,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/834","patch_url":"https://github.com/openframeworks/openFrameworks/pull/834.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/834.diff"}},{"updated_at":"2012-02-25T19:37:25Z","body":"General version of #294. all instances of printf to console in the code should be replaced by ofLog.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/833","comments":4,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":833,"html_url":"https://github.com/openframeworks/openFrameworks/issues/833","assignee":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"title":"Replace printf() occurences by ofLog()","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2012-02-25T19:37:25Z","created_at":"2011-12-03T10:44:36Z","state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":2436827,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-03T11:51:28Z","body":"Also reenabled createProjects.py script as executable.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/832","comments":2,"milestone":null,"number":832,"html_url":"https://github.com/openframeworks/openFrameworks/issues/832","assignee":null,"title":"Fixed OF codeblocks projects for Linux that needing updating.","labels":[],"closed_at":"2011-12-03T11:51:28Z","created_at":"2011-12-03T10:38:34Z","state":"closed","user":{"url":"https://api.github.com/users/pierrep","gravatar_id":"be11c9de8242e7aef0446eceaa289e01","login":"pierrep","avatar_url":"https://secure.gravatar.com/avatar/be11c9de8242e7aef0446eceaa289e01?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":392160},"id":2436814,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/832","patch_url":"https://github.com/openframeworks/openFrameworks/pull/832.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/832.diff"}},{"updated_at":"2011-12-03T15:11:52Z","body":"Both 32 and 64 codeblocks project for the OF library are out of date....I'm sure the Makefile works though.\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/830","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":830,"html_url":"https://github.com/openframeworks/openFrameworks/issues/830","assignee":null,"title":"Linux OF codeblocks projects broken","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":"2011-12-03T15:11:52Z","created_at":"2011-12-03T08:18:47Z","state":"closed","user":{"url":"https://api.github.com/users/pierrep","gravatar_id":"be11c9de8242e7aef0446eceaa289e01","login":"pierrep","avatar_url":"https://secure.gravatar.com/avatar/be11c9de8242e7aef0446eceaa289e01?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":392160},"id":2436472,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-28T14:36:24Z","body":"Dummy issue to ensure that the 0071 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/828","comments":3,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":828,"html_url":"https://github.com/openframeworks/openFrameworks/issues/828","assignee":null,"title":"0071 Release tracking issue","labels":[],"closed_at":"2012-05-28T14:36:24Z","created_at":"2011-12-02T16:28:33Z","state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":2429869,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T15:30:10Z","body":"Seems some replacements were overlooked when introducing OF_ROOT. It's actually OK in master, but this way you don't have to merge master into develop to fix this.\r\nThis closes #826.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/827","comments":3,"milestone":null,"number":827,"html_url":"https://github.com/openframeworks/openFrameworks/issues/827","assignee":null,"title":"Correct missing OF_ROOT occurences in develop","labels":[],"closed_at":"2011-12-02T15:26:27Z","created_at":"2011-12-02T09:56:06Z","state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":2425573,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/827","patch_url":"https://github.com/openframeworks/openFrameworks/pull/827.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/827.diff"}},{"updated_at":"2011-12-02T15:29:20Z","body":"This line makes error.\r\n\r\nLIB_STATIC += $(OF_ROOT)/libs/poco/lib/$(LIBSPATH)/libPocoNet.a ../../../libs/poco/lib/$(LIBSPATH)/libPocoXML.a ../../../libs/poco/lib/$(LIBSPATH)/libPocoUtil.a ../../../libs/poco/lib/$(LIBSPATH)/libPocoFoundation.a\r\n\r\nIt has to change below\r\n\r\nLIB_STATIC += $(OF_ROOT)/libs/poco/lib/$(LIBSPATH)/libPocoNet.a $(OF_ROOT)/libs/poco/lib/$(LIBSPATH)/libPocoXML.a $(OF_ROOT)/libs/poco/lib/$(LIBSPATH)/libPocoUtil.a $(OF_ROOT)/libs/poco/lib/$(LIBSPATH)/libPocoFoundation.a\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/826","comments":3,"milestone":null,"number":826,"html_url":"https://github.com/openframeworks/openFrameworks/issues/826","assignee":null,"title":"Makefile error in linux","labels":[],"closed_at":"2011-12-02T15:29:20Z","created_at":"2011-11-30T11:59:40Z","state":"closed","user":{"url":"https://api.github.com/users/donghee","gravatar_id":"b534a5f5d851e45bb4f94348b45f094c","login":"donghee","avatar_url":"https://secure.gravatar.com/avatar/b534a5f5d851e45bb4f94348b45f094c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":91220},"id":2400551,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-11-28T17:36:00Z","body":"Per this discussion http://forum.openframeworks.cc/index.php/topic,8123.0.html added glutEntryFunc callbacks. Pretty simple, but maybe helpful to someone else.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/824","comments":1,"milestone":null,"number":824,"html_url":"https://github.com/openframeworks/openFrameworks/issues/824","assignee":null,"title":"added GLUT window entry callbacks","labels":[],"closed_at":"2011-11-28T17:35:42Z","created_at":"2011-11-28T17:32:27Z","state":"closed","user":{"url":"https://api.github.com/users/joshuajnoble","gravatar_id":"10960ba0f305803a1cdc7cd6188d643b","login":"joshuajnoble","avatar_url":"https://secure.gravatar.com/avatar/10960ba0f305803a1cdc7cd6188d643b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":237423},"id":2370726,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/824","patch_url":"https://github.com/openframeworks/openFrameworks/pull/824.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/824.diff"}},{"updated_at":"2011-11-28T17:31:06Z","body":"\r\nPer this discussion http://forum.openframeworks.cc/index.php/topic,8123.0.html added glutEntryFunc callbacks. Pretty simple, but maybe helpful to someone else.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/823","comments":5,"milestone":null,"number":823,"html_url":"https://github.com/openframeworks/openFrameworks/issues/823","assignee":null,"title":"added GLUT window entry callbacks","labels":[],"closed_at":"2011-11-28T17:05:23Z","created_at":"2011-11-28T17:02:55Z","state":"closed","user":{"url":"https://api.github.com/users/joshuajnoble","gravatar_id":"10960ba0f305803a1cdc7cd6188d643b","login":"joshuajnoble","avatar_url":"https://secure.gravatar.com/avatar/10960ba0f305803a1cdc7cd6188d643b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":237423},"id":2370049,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/823","patch_url":"https://github.com/openframeworks/openFrameworks/pull/823.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/823.diff"}},{"updated_at":"2012-05-28T15:44:40Z","body":"Testing out the moviePlayerExample.xcodeproj\r\nWorks fine in the 4.3 Simulator\r\n\r\nBut running it on 5.0 Simulator/on my iPad 2, the videos are all just black. \r\nThe getPixel circle thing still seems to work fine though. \r\n\r\nPretty new to OF maybe I'm doing something wrong.\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/820","comments":46,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":820,"html_url":"https://github.com/openframeworks/openFrameworks/issues/820","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"ofVideoPlayer bug with iOS 5","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":"2012-05-23T13:58:05Z","created_at":"2011-11-23T09:39:59Z","state":"closed","user":{"url":"https://api.github.com/users/everythingoriginal","gravatar_id":"4463e6f9ef6b5aae32380a32f835fcf3","login":"everythingoriginal","avatar_url":"https://secure.gravatar.com/avatar/4463e6f9ef6b5aae32380a32f835fcf3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":527628},"id":2328003,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-11-21T11:23:00Z","body":"the ofVideoGrabber switches between using the internal texture and the Video Grabber suppplied one.\r\n\r\nWorking towards having ofxQTKitVideoPlayer work within the oF core code better\r\n\r\nSigned-off-by: obviousjim ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/817","comments":1,"milestone":null,"number":817,"html_url":"https://github.com/openframeworks/openFrameworks/issues/817","assignee":null,"title":"More consistent support of ofTexture* playerTex in ofVideoGrabber","labels":[],"closed_at":"2011-11-21T11:21:44Z","created_at":"2011-11-20T20:53:17Z","state":"closed","user":{"url":"https://api.github.com/users/obviousjim","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","login":"obviousjim","avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":321434},"id":2299304,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/817","patch_url":"https://github.com/openframeworks/openFrameworks/pull/817.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/817.diff"}},{"updated_at":"2011-11-20T15:46:34Z","body":"/Volumes/MacData/Dependencies/openframe/libs/openFrameworks/video/ofQuickTimePlayer.cpp\r\n'DisposeGWorld' was not declared in this scope\r\n'GetGWorldPixMap' was not declared in this scope\r\n'LockPixels' was not declared in this scope\r\n'SetGWorld' was not declared in this scope\r\n'DisposeGWorld' was not declared in this scope\r\nfile://localhost/Volumes/MacData/Dependencies/openframe/libs/openFrameworks/video/ofQuickTimePlayer.cpp: error: Semantic Issue: Use of undeclared identifier 'DisposeGWorld'\r\nfile://localhost/Volumes/MacData/Dependencies/openframe/libs/openFrameworks/video/ofQuickTimePlayer.cpp: error: Semantic Issue: Use of undeclared identifier 'GetGWorldPixMap'\r\nfile://localhost/Volumes/MacData/Dependencies/openframe/libs/openFrameworks/video/ofQuickTimePlayer.cpp: error: Semantic Issue: Use of undeclared identifier 'SetGWorld'\r\nfile://localhost/Volumes/MacData/Dependencies/openframe/libs/openFrameworks/video/ofQuickTimePlayer.cpp: error: Semantic Issue: Use of undeclared identifier 'DisposeGWorld'\r\n/Volumes/MacData/Dependencies/openframe/libs/openFrameworks/video/ofQuickTimeGrabber.cpp\r\n'MacSetRect' was not declared in this scope\r\n'GetGWorldPixMap' was not declared in this scope\r\n'LockPixels' was not declared in this scope\r\n'SetGWorld' was not declared in this scope","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/816","comments":1,"milestone":null,"number":816,"html_url":"https://github.com/openframeworks/openFrameworks/issues/816","assignee":null,"title":"can't build deployExamples in xcode 4.2.","labels":[],"closed_at":"2011-11-20T15:46:34Z","created_at":"2011-11-20T12:57:55Z","state":"closed","user":{"url":"https://api.github.com/users/yaxinhoo","gravatar_id":"c9537df6f84698967c217c189d18a149","login":"yaxinhoo","avatar_url":"https://secure.gravatar.com/avatar/c9537df6f84698967c217c189d18a149?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":405604},"id":2292343,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-11-17T15:20:52Z","body":"Hello, \r\nI am trying to set up the project files for XCode on a newly cloned openFrameworks on a MacBook running MacOS 10.7.2 with XCode 3.2.5. When doing build and run on deployExamples, I get 11 errors such as: \r\nerror: 'MacSetRect' was not declared in this scope\r\n (see full details below): \r\n\r\nCould someone please help? \r\n\r\n\r\nCompileC build/openFrameworksLib.build/Debug/openFrameworks.build/Objects-normal/i386/ofQuickTimeGrabber.o ../../../openFrameworks/video/ofQuickTimeGrabber.cpp normal i386 c++ com.apple.compilers.gcc.4_2\r\ncd /Users/iani/Documents/projects_ongoing/openFrameworks/openFrameworks/libs/openFrameworksCompiled/project/osx\r\nsetenv LANG en_US.US-ASCII\r\n/Developer-3.2.5/usr/bin/gcc-4.2 -x c++ -arch i386 -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -ftree-vectorize -msse3 -mssse3 -Wno-deprecated-declarations -Wno-invalid-offsetof -gdwarf-2 -I/Users/iani/Documents/projects_ongoing/openFrameworks/openFrameworks/libs/openFrameworksCompiled/project/osx/build/openFrameworksLib.build/Debug/openFrameworks.build/openFrameworksDebug.hmap -F/Users/iani/Documents/projects_ongoing/openFrameworks/openFrameworks/libs/openFrameworksCompiled/project/osx/../../lib/osx -I/Users/iani/Documents/projects_ongoing/openFrameworks/openFrameworks/libs/openFrameworksCompiled/project/osx/../../lib/osx/include -I../../../../libs/openFrameworks -I../../../../libs/openFrameworks/3d -I../../../../libs/openFrameworks/app -I../../../../libs/openFrameworks/communication -I../../../../libs/openFrameworks/events -I../../../../libs/openFrameworks/gl -I../../../../libs/openFrameworks/graphics -I../../../../libs/openFrameworks/math -I../../../../libs/openFrameworks/sound -I../../../../libs/openFrameworks/types -I../../../../libs/openFrameworks/utils -I../../../../libs/openFrameworks/video -I../../../../libs/poco/include -I../../../../libs/freetype/include -I../../../../libs/freetype/include/freetype2 -I../../../../libs/fmodex/include -I../../../../libs/glew/include -I../../../../libs/FreeImage/include -I../../../../libs/tess2/include -I../../../../libs/cairo/include/cairo -I../../../../libs/rtaudio/include -I/Users/iani/Documents/projects_ongoing/openFrameworks/openFrameworks/libs/openFrameworksCompiled/project/osx/build/openFrameworksLib.build/Debug/openFrameworks.build/DerivedSources/i386 -I/Users/iani/Documents/projects_ongoing/openFrameworks/openFrameworks/libs/openFrameworksCompiled/project/osx/build/openFrameworksLib.build/Debug/openFrameworks.build/DerivedSources -D__MACOSX_CORE__ -lpthread -c /Users/iani/Documents/projects_ongoing/openFrameworks/openFrameworks/libs/openFrameworksCompiled/project/osx/../../../openFrameworks/video/ofQuickTimeGrabber.cpp -o /Users/iani/Documents/projects_ongoing/openFrameworks/openFrameworks/libs/openFrameworksCompiled/project/osx/build/openFrameworksLib.build/Debug/openFrameworks.build/Objects-normal/i386/ofQuickTimeGrabber.o\r\n\r\n/Users/iani/Documents/projects_ongoing/openFrameworks/openFrameworks/libs/openFrameworksCompiled/project/osx/../../../openFrameworks/video/ofQuickTimeGrabber.cpp: In member function 'virtual bool ofQuickTimeGrabber::initGrabber(int, int)':\r\n/Users/iani/Documents/projects_ongoing/openFrameworks/openFrameworks/libs/openFrameworksCompiled/project/osx/../../../openFrameworks/video/ofQuickTimeGrabber.cpp:109: error: 'MacSetRect' was not declared in this scope\r\n/Users/iani/Documents/projects_ongoing/openFrameworks/openFrameworks/libs/openFrameworksCompiled/project/osx/../../../openFrameworks/video/ofQuickTimeGrabber.cpp:125: error: 'GetGWorldPixMap' was not declared in this scope\r\n/Users/iani/Documents/projects_ongoing/openFrameworks/openFrameworks/libs/openFrameworksCompiled/project/osx/../../../openFrameworks/video/ofQuickTimeGrabber.cpp:125: error: 'LockPixels' was not declared in this scope\r\n/Users/iani/Documents/projects_ongoing/openFrameworks/openFrameworks/libs/openFrameworksCompiled/project/osx/../../../openFrameworks/video/ofQuickTimeGrabber.cpp:126: error: 'SetGWorld' was not declared in this scope\r\n\r\nCompileC build/openFrameworksLib.build/Debug/openFrameworks.build/Objects-normal/i386/ofQuickTimePlayer.o ../../../openFrameworks/video/ofQuickTimePlayer.cpp normal i386 c++ com.apple.compilers.gcc.4_2\r\ncd /Users/iani/Documents/projects_ongoing/openFrameworks/openFrameworks/libs/openFrameworksCompiled/project/osx\r\nsetenv LANG en_US.US-ASCII\r\n/Developer-3.2.5/usr/bin/gcc-4.2 -x c++ -arch i386 -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -ftree-vectorize -msse3 -mssse3 -Wno-deprecated-declarations -Wno-invalid-offsetof -gdwarf-2 -I/Users/iani/Documents/projects_ongoing/openFrameworks/openFrameworks/libs/openFrameworksCompiled/project/osx/build/openFrameworksLib.build/Debug/openFrameworks.build/openFrameworksDebug.hmap -F/Users/iani/Documents/projects_ongoing/openFrameworks/openFrameworks/libs/openFrameworksCompiled/project/osx/../../lib/osx -I/Users/iani/Documents/projects_ongoing/openFrameworks/openFrameworks/libs/openFrameworksCompiled/project/osx/../../lib/osx/include -I../../../../libs/openFrameworks -I../../../../libs/openFrameworks/3d -I../../../../libs/openFrameworks/app -I../../../../libs/openFrameworks/communication -I../../../../libs/openFrameworks/events -I../../../../libs/openFrameworks/gl -I../../../../libs/openFrameworks/graphics -I../../../../libs/openFrameworks/math -I../../../../libs/openFrameworks/sound -I../../../../libs/openFrameworks/types -I../../../../libs/openFrameworks/utils -I../../../../libs/openFrameworks/video -I../../../../libs/poco/include -I../../../../libs/freetype/include -I../../../../libs/freetype/include/freetype2 -I../../../../libs/fmodex/include -I../../../../libs/glew/include -I../../../../libs/FreeImage/include -I../../../../libs/tess2/include -I../../../../libs/cairo/include/cairo -I../../../../libs/rtaudio/include -I/Users/iani/Documents/projects_ongoing/openFrameworks/openFrameworks/libs/openFrameworksCompiled/project/osx/build/openFrameworksLib.build/Debug/openFrameworks.build/DerivedSources/i386 -I/Users/iani/Documents/projects_ongoing/openFrameworks/openFrameworks/libs/openFrameworksCompiled/project/osx/build/openFrameworksLib.build/Debug/openFrameworks.build/DerivedSources -D__MACOSX_CORE__ -lpthread -c /Users/iani/Documents/projects_ongoing/openFrameworks/openFrameworks/libs/openFrameworksCompiled/project/osx/../../../openFrameworks/video/ofQuickTimePlayer.cpp -o /Users/iani/Documents/projects_ongoing/openFrameworks/openFrameworks/libs/openFrameworksCompiled/project/osx/build/openFrameworksLib.build/Debug/openFrameworks.build/Objects-normal/i386/ofQuickTimePlayer.o\r\n\r\n/Users/iani/Documents/projects_ongoing/openFrameworks/openFrameworks/libs/openFrameworksCompiled/project/osx/../../../openFrameworks/video/ofQuickTimePlayer.cpp: In destructor 'virtual ofQuickTimePlayer::~ofQuickTimePlayer()':\r\n/Users/iani/Documents/projects_ongoing/openFrameworks/openFrameworks/libs/openFrameworksCompiled/project/osx/../../../openFrameworks/video/ofQuickTimePlayer.cpp:142: error: 'DisposeGWorld' was not declared in this scope\r\n/Users/iani/Documents/projects_ongoing/openFrameworks/openFrameworks/libs/openFrameworksCompiled/project/osx/../../../openFrameworks/video/ofQuickTimePlayer.cpp: In member function 'void ofQuickTimePlayer::createImgMemAndGWorld()':\r\n/Users/iani/Documents/projects_ongoing/openFrameworks/openFrameworks/libs/openFrameworksCompiled/project/osx/../../../openFrameworks/video/ofQuickTimePlayer.cpp:249: error: 'GetGWorldPixMap' was not declared in this scope\r\n/Users/iani/Documents/projects_ongoing/openFrameworks/openFrameworks/libs/openFrameworksCompiled/project/osx/../../../openFrameworks/video/ofQuickTimePlayer.cpp:249: error: 'LockPixels' was not declared in this scope\r\n/Users/iani/Documents/projects_ongoing/openFrameworks/openFrameworks/libs/openFrameworksCompiled/project/osx/../../../openFrameworks/video/ofQuickTimePlayer.cpp:250: error: 'SetGWorld' was not declared in this scope\r\n/Users/iani/Documents/projects_ongoing/openFrameworks/openFrameworks/libs/openFrameworksCompiled/project/osx/../../../openFrameworks/video/ofQuickTimePlayer.cpp: In member function 'virtual bool ofQuickTimePlayer::loadMovie(std::string)':\r\n/Users/iani/Documents/projects_ongoing/openFrameworks/openFrameworks/libs/openFrameworksCompiled/project/osx/../../../openFrameworks/video/ofQuickTimePlayer.cpp:295: error: 'DisposeGWorld' was not declared in this scope\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/813","comments":6,"milestone":null,"number":813,"html_url":"https://github.com/openframeworks/openFrameworks/issues/813","assignee":null,"title":"deployExamples produces 11 compile errors on MacOS 10.7.2","labels":[],"closed_at":"2011-11-17T11:37:36Z","created_at":"2011-11-16T21:07:09Z","state":"closed","user":{"url":"https://api.github.com/users/iani","gravatar_id":"8200f2533f23c9daaff63c4dba6f4819","login":"iani","avatar_url":"https://secure.gravatar.com/avatar/8200f2533f23c9daaff63c4dba6f4819?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":181956},"id":2261720,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-11-17T03:26:45Z","body":"Working with this file https://github.com/jvcleave/ofxIPhoneTracker/blob/develop/src/testApp.cpp\r\n\r\nI am seeing a color shift when using OF:Develop branch\r\n\r\nhttp://i41.tinypic.com/2dtvgh1.jpg\r\n\r\nHowever, OF:master is ok\r\n\r\nhttp://i43.tinypic.com/1dikz.jpg","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/812","comments":7,"milestone":null,"number":812,"html_url":"https://github.com/openframeworks/openFrameworks/issues/812","assignee":null,"title":"Color shift in OF:Develop (ok in Master)","labels":[],"closed_at":"2011-11-17T03:26:45Z","created_at":"2011-11-16T20:38:47Z","state":"closed","user":{"url":"https://api.github.com/users/jvcleave","gravatar_id":"9c0384a91739bea093f453cf40a59742","login":"jvcleave","avatar_url":"https://secure.gravatar.com/avatar/9c0384a91739bea093f453cf40a59742?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":150037},"id":2261395,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-02-25T18:31:14Z","body":"Added function and types to return sound devices as a vector of ofStreamDevices and to setDeviceID by name (handy when you have several audio devices in an installation and need to make sure you are using the right one). Also made setDeviceID return a bool where it was possible and issued ofLogWarnings where it is not.\r\n\r\nUpdated the examples as well.\r\n\r\nFor other installations I've done similar modifications to ofVideoGrabber, ofVideoPlayer etc\r\n\r\nI'm wondering if it's worth abstracting this to have an ofBaseDevice type and then variously: ofStreamDevice, ofSerialDevice, ofVideoDevice etc? With all 'device' managing classes enforcing listDevices() return a vector of the appropriate type of device? And indeed all those classes having an ofBaseDeviceManager class that enforces a common syntax for devices: such as getDevices (instead of listDevices) etc -> perhaps I should put this up for discussion in the forum?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/809","comments":2,"milestone":null,"number":809,"html_url":"https://github.com/openframeworks/openFrameworks/issues/809","assignee":null,"title":"Feature of sound stream","labels":[],"closed_at":"2012-02-25T18:31:14Z","created_at":"2011-11-11T05:12:58Z","state":"closed","user":{"url":"https://api.github.com/users/gameoverhack","gravatar_id":"397ac2141aace0681a354185e7efb0f1","login":"gameoverhack","avatar_url":"https://secure.gravatar.com/avatar/397ac2141aace0681a354185e7efb0f1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331599},"id":2206447,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/809","patch_url":"https://github.com/openframeworks/openFrameworks/pull/809.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/809.diff"}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=14&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4982'), ('content-length', '35329'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"5f2c45187900a6bfc7bcadf4b00756c3"'), ('date', 'Tue, 29 May 2012 18:46:34 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"milestone":null,"state":"closed","user":{"gravatar_id":"397ac2141aace0681a354185e7efb0f1","url":"https://api.github.com/users/gameoverhack","login":"gameoverhack","id":331599,"avatar_url":"https://secure.gravatar.com/avatar/397ac2141aace0681a354185e7efb0f1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Feature of sound player get volume","html_url":"https://github.com/openframeworks/openFrameworks/issues/808","comments":0,"assignee":null,"updated_at":"2012-01-20T12:50:34Z","body":"Added getVolume() to ofSoundPlayer.\r\n\r\nNB: I had a strange problem with openALSoundPlayer where Xcode kept complaining if I implemented getVolume as a pure virtual function in ofBaseSoundPlayer (which it should be)...perhaps it's just my development platform?\r\n\r\nAnnoyingly I had to change it in order to continue developing, but really it should be virtual void getVolume() = 0; in ofBaseSoundPlayer...","number":808,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/808","diff_url":"https://github.com/openframeworks/openFrameworks/pull/808.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/808.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/808","labels":[],"id":2206402,"closed_at":"2012-01-20T12:50:34Z","created_at":"2011-11-11T05:01:54Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"397ac2141aace0681a354185e7efb0f1","url":"https://api.github.com/users/gameoverhack","login":"gameoverhack","id":331599,"avatar_url":"https://secure.gravatar.com/avatar/397ac2141aace0681a354185e7efb0f1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Feature of key modifiers","html_url":"https://github.com/openframeworks/openFrameworks/issues/807","comments":7,"assignee":null,"updated_at":"2012-02-25T18:23:52Z","body":"Since its pretty common to need this thought it might be worth adding to ofUtils","number":807,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/807","diff_url":"https://github.com/openframeworks/openFrameworks/pull/807.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/807.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/807","labels":[],"id":2206382,"closed_at":"2012-02-25T18:23:52Z","created_at":"2011-11-11T04:53:33Z"},{"milestone":{"state":"open","description":"","title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"number":5,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61810,"created_at":"2011-12-02T15:29:48Z"},"state":"closed","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofShader::linkProgram() should return false when it fails","html_url":"https://github.com/openframeworks/openFrameworks/issues/806","comments":2,"assignee":null,"updated_at":"2012-05-14T11:24:45Z","body":"right now linkProgram() only returns false when there is no shader to link, but still returns true when it fails to link.","number":806,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/806","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":2196040,"closed_at":"2012-05-14T11:24:45Z","created_at":"2011-11-10T09:19:31Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofColor bugs","html_url":"https://github.com/openframeworks/openFrameworks/issues/805","comments":3,"assignee":null,"updated_at":"2011-11-10T05:58:27Z","body":"closes #804. fixes an oversaturation bug, overbrightness bug, desaturation bug, and gray setHsb bug.","number":805,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/805","diff_url":"https://github.com/openframeworks/openFrameworks/pull/805.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/805.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/805","labels":[],"id":2194737,"closed_at":"2011-11-10T05:58:27Z","created_at":"2011-11-10T04:54:00Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"setHSB / getHSB is broken ","html_url":"https://github.com/openframeworks/openFrameworks/issues/804","comments":8,"assignee":null,"updated_at":"2011-11-10T05:58:29Z","body":"this should draw two black squares, but it draws a black square and then a white square ( 255, 255, 255 ) \r\n\r\n\tofColor c; \r\n\tc.set(1, 1, 1); \r\n\r\n\tofSetColor(c); \r\n\tofRect(0, 0, 100, 100); \r\n\t\r\n\tfloat h, s, v = 0.0;\r\n\tc.getHsb(h, s, v);\r\n\tc.setHsb(h, s, v);\r\n\r\n\tofSetColor(c); \r\n\tofRect(100, 0, 100, 100); ","number":804,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/804","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":2191717,"closed_at":"2011-11-10T05:58:29Z","created_at":"2011-11-09T21:45:24Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"24a17bf6ee1c1ea2f24a8015a5eb63c1","url":"https://api.github.com/users/leorobot","login":"leorobot","id":1172107,"avatar_url":"https://secure.gravatar.com/avatar/24a17bf6ee1c1ea2f24a8015a5eb63c1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"AssimpExample OSX","html_url":"https://github.com/openframeworks/openFrameworks/issues/803","comments":4,"assignee":null,"updated_at":"2011-12-02T15:15:50Z","body":"Hi all !\r\n\r\nMaybe this may be a very dumb question... I tried to build the assimpExample in my MAC with OSX and Xcode (using of course the 007 OF version) and the build process was successful. However, after this, I tried to run it but It did not do it !! It's very strange, because I tried to run other examples and they did run. In fact, I was thinking there was a problem with the OpenGL, but I tried to run the 3DmodelLoaded example and another one working with OpenGL and both of them worked perfectly.\r\n\r\nAny idea ??\r\n\r\nBest,\r\n\r\nLeoRobot","number":803,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/803","labels":[],"id":2142759,"closed_at":"2011-12-02T15:15:50Z","created_at":"2011-11-04T11:12:48Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"a23d62f208aaa5793d80dff557f59187","url":"https://api.github.com/users/trentbrooks","login":"trentbrooks","id":578782,"avatar_url":"https://secure.gravatar.com/avatar/a23d62f208aaa5793d80dff557f59187?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"osx lion 10.7 and ofImage/ofPixels bug?","html_url":"https://github.com/openframeworks/openFrameworks/issues/802","comments":2,"assignee":null,"updated_at":"2012-02-08T08:36:38Z","body":"I've slowly been migrating an OF project from another machine on osx 10.6 to one on osx lion 10.7 and have noticed 2 weird bugs with ofImage. Note, I've already changed base sdk to 10.6 for projects + targets as suggested here https://github.com/openframeworks/openFrameworks/issues/573 which works fine except for these issues.\r\n\r\n1) When loading an image with dimensions exactly 1280x720, if fails every time and stops at the swapRGB method in ofPixels? You can test this with the 'imageLoaderExample' just change the first line in setup to load any image you have that's 1280x720. Here's an image to save to the data/images folder if you want to test: http://trentbrooks.com/files/testImage.jpg\r\n\r\n// first line in setup\r\nbikers.loadImage(\"images/testImage.jpg\");\r\n\r\nI've got around this for now by changing the image size to 1282x722.\r\n\r\nUPDATE... just noticed this happens for images 1024x768 as well.\r\n\r\n2) I've noticed when loading images from within a thread, loading fails with 'OF: OF_LOG_ERROR: Couldn't load image... '. From what I can tell, it prepends \"../../../data/\" to whatever string you pass to loadImage().\r\n\r\nI've got around this by adding ofToDataPath(\"whatever.jpg\") inside the loadImage() function. But this didn't happen in 10.6.\r\n\r\nThanks.","number":802,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/802","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":2129168,"closed_at":"2012-02-08T08:36:38Z","created_at":"2011-11-03T03:53:24Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"0f88fd202fd91181787105ee0611ef39","url":"https://api.github.com/users/atduskgreg","login":"atduskgreg","id":165,"avatar_url":"https://secure.gravatar.com/avatar/0f88fd202fd91181787105ee0611ef39?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Polyline include","html_url":"https://github.com/openframeworks/openFrameworks/issues/801","comments":6,"assignee":null,"updated_at":"2011-10-31T09:45:07Z","body":"Moved functions for checking to see whether a point is contained inside of a polygon from ofMath to be a static function on ofPolyline as discussed in issue #800. New function is ofPolyline::include() with two signatures (exactly in parallel with the two it had when it was ofInsidePoly()).\r\n\r\n(Note for some reason Github is generating this pull request to include two older commits as well as the two on my polyline-include branch. My branch (atrudskgreg/openframeworks/polyline-include) should merge cleanly into the HEAD of openframeworks/openframeworks/develop)\r\n\r\n-- Greg","number":801,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/801","diff_url":"https://github.com/openframeworks/openFrameworks/pull/801.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/801.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/801","labels":[],"id":2091018,"closed_at":"2011-10-31T09:45:07Z","created_at":"2011-10-30T15:54:08Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"8022cb5f529975afbc64cc9312008d8c","url":"https://api.github.com/users/nardove","login":"nardove","id":277690,"avatar_url":"https://secure.gravatar.com/avatar/8022cb5f529975afbc64cc9312008d8c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"enableAntiAliasing() on iOS incompatible with ofxiPhoneScreenGrab()","html_url":"https://github.com/openframeworks/openFrameworks/issues/799","comments":2,"assignee":null,"updated_at":"2012-03-09T06:34:00Z","body":"Setting the following in main.h\r\n\r\n```c++\r\nofAppiPhoneWindow *iOSWindow = new ofAppiPhoneWindow();\r\niOSWindow->enableRetinaSupport();\r\niOSWindow->enableAntiAliasing( 4 );\r\n\r\nofSetupOpenGL( iOSWindow, 480, 320, OF_FULLSCREEN );\r\n\r\nofRunApp( new testApp );\r\n```\r\n\r\nresults in black images from ofxiPhoneScreenGrab()","number":799,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/799","labels":[{"color":"d68e22","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon"},{"color":"2babad","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":2086898,"closed_at":"2012-03-09T06:34:00Z","created_at":"2011-10-29T13:13:06Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofxVectorGraphics :: beginEPS - bug with applying translation.","html_url":"https://github.com/openframeworks/openFrameworks/issues/796","comments":0,"assignee":null,"updated_at":"2012-01-20T12:33:37Z","body":"picked up on a small bug in this line,\r\ncreeps.applyTranslation(0, ofGetHeight());\r\n\r\nit should be,\r\ncreeps.applyTranslation(0, h);\r\n\r\nif the user specifies a dimension different to the window size, the h property needs to be used instead of ofGetHeight() otherwise the positioning inside the EPS gets messed up.","number":796,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/796","labels":[{"color":"d68e22","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"65a300","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize"},{"color":"31e03a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed"}],"id":2074949,"closed_at":"2012-01-20T12:33:37Z","created_at":"2011-10-28T01:55:23Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"4a503abeaa3d803e55e99093fbf1505d","url":"https://api.github.com/users/falcon4ever","login":"falcon4ever","id":480019,"avatar_url":"https://secure.gravatar.com/avatar/4a503abeaa3d803e55e99093fbf1505d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Windows compatibility patches for the oF Develop branch","html_url":"https://github.com/openframeworks/openFrameworks/issues/794","comments":6,"assignee":null,"updated_at":"2012-02-19T23:30:58Z","body":"- Patches required to compile openFrameworks for Android on the Windows platform (Requires MinGW/MSYS, details are explained in links below)\r\n- Patches required to compile Android demo applications on Windows\r\n- Updated ofAndroidlib and Android demo projects to be compatible with Android SDK r14 (New build.xml and property files)\r\n- All demo applications work correctly on Android 2.3.6 stock (Nexus One)\r\n\r\nAdditional information:\r\n- http://www.multigesture.net/articles/how-to-setup-openframeworks-for-android-on-windows/\r\n- http://forum.openframeworks.cc/index.php/topic,7046.msg32895.html#msg32895\r\n\r\n19/11/2011:\r\nAdded updates for NDK r7","number":794,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/794","diff_url":"https://github.com/openframeworks/openFrameworks/pull/794.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/794.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/794","labels":[],"id":2057482,"closed_at":"2012-02-19T23:30:58Z","created_at":"2011-10-26T14:53:58Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"58512428c7499b4bdcbeefd049743cc4","url":"https://api.github.com/users/dallastaylor","login":"dallastaylor","id":54482,"avatar_url":"https://secure.gravatar.com/avatar/58512428c7499b4bdcbeefd049743cc4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Bugfix autoreleasepool","html_url":"https://github.com/openframeworks/openFrameworks/issues/792","comments":4,"assignee":null,"updated_at":"2012-02-25T18:22:42Z","body":"I added an objective-c file so NSAutoreleasePool can be used to resolve the memory leak caused by the OSX alert dialog, as documented in Issue #358.\r\n\r\nAlso updated the xcode project to include it in the build.\r\n\r\n","number":792,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/792","diff_url":"https://github.com/openframeworks/openFrameworks/pull/792.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/792.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/792","labels":[],"id":2029765,"closed_at":"2012-02-25T18:22:42Z","created_at":"2011-10-24T02:25:32Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"58512428c7499b4bdcbeefd049743cc4","url":"https://api.github.com/users/dallastaylor","login":"dallastaylor","id":54482,"avatar_url":"https://secure.gravatar.com/avatar/58512428c7499b4bdcbeefd049743cc4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Bugfix osx open dialog memory leak","html_url":"https://github.com/openframeworks/openFrameworks/issues/791","comments":0,"assignee":null,"updated_at":"2011-10-23T19:19:25Z","body":"The OS X open dialog has a memory leak as cfString was not being released.","number":791,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/791","diff_url":"https://github.com/openframeworks/openFrameworks/pull/791.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/791.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/791","labels":[],"id":2027833,"closed_at":"2011-10-23T19:19:25Z","created_at":"2011-10-23T18:01:18Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofxOsc only adds int32_t typedef for VS vers < VS2010, fixes #559","html_url":"https://github.com/openframeworks/openFrameworks/issues/790","comments":1,"assignee":null,"updated_at":"2011-10-23T19:21:44Z","body":"A small define fix as VS2010+ now have ANSI C typedefs. See https://github.com/openframeworks/openFrameworks/issues/559#issuecomment-2433189 for more info.","number":790,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/790","diff_url":"https://github.com/openframeworks/openFrameworks/pull/790.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/790.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/790","labels":[],"id":2027683,"closed_at":"2011-10-23T19:21:44Z","created_at":"2011-10-23T17:32:32Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"4a503abeaa3d803e55e99093fbf1505d","url":"https://api.github.com/users/falcon4ever","login":"falcon4ever","id":480019,"avatar_url":"https://secure.gravatar.com/avatar/4a503abeaa3d803e55e99093fbf1505d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"openFrameworks for Android on Windows Makefile fixes","html_url":"https://github.com/openframeworks/openFrameworks/issues/788","comments":0,"assignee":null,"updated_at":"2011-11-10T13:21:43Z","body":"Fixes to compile openFrameworks for Android on Windows. Requires MinGW/MSYS environment, details are explained in the tutorial.\r\n\r\nAdditional information:\r\n- http://www.multigesture.net/articles/how-to-setup-openframeworks-for-android-on-windows/\r\n- http://forum.openframeworks.cc/index.php/topic,7046.msg32895.html#msg32895","number":788,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/788","diff_url":"https://github.com/openframeworks/openFrameworks/pull/788.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/788.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/788","labels":[],"id":2015407,"closed_at":"2011-11-10T13:21:43Z","created_at":"2011-10-21T13:33:08Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"opencv2 hole detection broken, here is the fix (thanks Golan) ... again again!","html_url":"https://github.com/openframeworks/openFrameworks/issues/784","comments":1,"assignee":null,"updated_at":"2011-10-19T08:06:41Z","body":"opencv2 cvContourArea runs fabs on the area by default unless the (new!) third variable is set to true, this breaks hole detection since no negative areas are returned. Also, the current fabs calls are redundant.\r\n\r\nGolan noticed that hole detection was off in 007 and I tracked this down, although the function update is not actually reflected in the opencv2 documentation ... blah. See this [disgruntled post](http://opencv-users.1802565.n2.nabble.com/cvContourArea-changed-API-tt4817692.html#none).\r\n\r\nI tracked down the [diff for the open cv update](https://code.ros.org/trac/opencv/changeset/2927) that clearly shows the new variable, int oriented, controls whether negative areas are returned or not.\r\n\r\nThis is a re-resubmission of a previous [pull request](https://github.com/openframeworks/openFrameworks/pull/756) but now to the develop branch.","number":784,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/784","diff_url":"https://github.com/openframeworks/openFrameworks/pull/784.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/784.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/784","labels":[],"id":1990670,"closed_at":"2011-10-19T08:06:41Z","created_at":"2011-10-19T04:57:23Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"opencv2 hole detection broken, here is the fix (thanks Golan) ... try try again","html_url":"https://github.com/openframeworks/openFrameworks/issues/783","comments":2,"assignee":null,"updated_at":"2011-10-19T04:23:52Z","body":"opencv2 cvContourArea runs fabs on the area by default unless the (new!) third variable is set to true, this breaks hole detection since no negative areas are returned. Also, the current fabs calls are redundant.\r\n\r\nGolan noticed that hole detection was off in 007 and I tracked this down, although the function update is not actually reflected in the opencv2 documentation ... blah. See this [disgruntled post](http://opencv-users.1802565.n2.nabble.com/cvContourArea-changed-API-tt4817692.html#none).\r\n\r\nI tracked down the [diff for the open cv update](https://code.ros.org/trac/opencv/changeset/2927) that clearly shows the new variable, int oriented, controls whether negative areas are returned or not.\r\n\r\nThis is a re-resubmission of a previous [pull request](https://github.com/openframeworks/openFrameworks/pull/756) but now to the develop branch.","number":783,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/783","diff_url":"https://github.com/openframeworks/openFrameworks/pull/783.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/783.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/783","labels":[],"id":1990450,"closed_at":"2011-10-19T04:23:52Z","created_at":"2011-10-19T03:59:48Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"5934b87b143f3bc860a2da7387f42de9","url":"https://api.github.com/users/github-user32","login":"github-user32","id":447669,"avatar_url":"https://secure.gravatar.com/avatar/5934b87b143f3bc860a2da7387f42de9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Added 3D versions of ofCurve(), ofBezier(), ofVertex() and ofBezierVertex()","html_url":"https://github.com/openframeworks/openFrameworks/issues/782","comments":2,"assignee":null,"updated_at":"2011-10-19T08:22:03Z","body":"ofGraphics.h already has 3D versions of ofTriangle(), ofCircle() etc.\r\n\r\nTo match these, I've added 3D versions of ofCurve(), ofBezier(), ofVertex() and ofBezierVertex() which really just pass an additional (z) coordinate through to the underlying shape path.\r\n\r\nIn ofGraphics.cpp only, I've also fixed all instances of opening braces to match the OF coding style guide. ie. Opening brace on same line as start of statement, without preceding space.\r\n\r\nJust noticed that some of my new function declarations exceed the 100 character width in the OF coding style guide...but there are a number of other functions in the same file that already do too. Happy to fix it if you can point at an example of how you split function declarations over multiple lines - the coding style guide doesn't seem to address it directly...","number":782,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/782","diff_url":"https://github.com/openframeworks/openFrameworks/pull/782.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/782.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/782","labels":[],"id":1990323,"closed_at":"2011-10-19T08:08:56Z","created_at":"2011-10-19T03:26:31Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"cc4cace34c61103f0624002a692820f7","url":"https://api.github.com/users/gimlids","login":"gimlids","id":186277,"avatar_url":"https://secure.gravatar.com/avatar/cc4cace34c61103f0624002a692820f7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofMesh::getCentroid()","html_url":"https://github.com/openframeworks/openFrameworks/issues/781","comments":13,"assignee":null,"updated_at":"2011-10-27T11:08:46Z","body":"","number":781,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/781","diff_url":"https://github.com/openframeworks/openFrameworks/pull/781.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/781.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/781","labels":[],"id":1989894,"closed_at":"2011-10-27T11:08:46Z","created_at":"2011-10-19T02:04:53Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"opencv2 hole detection broken, here is the fix (thanks Golan)","html_url":"https://github.com/openframeworks/openFrameworks/issues/780","comments":2,"assignee":null,"updated_at":"2011-10-19T03:19:58Z","body":"opencv2 cvContourArea runs fabs on the area by default unless the (new!) third variable is set to true, this breaks hole detection since no negative areas are returned. Also, the current fabs calls are redundant.\r\n\r\nGolan noticed that hole detection was off in 007 and I tracked this down, although the function update is not actually reflected in the opencv2 documentation ... blah. See this [disgruntled post](http://opencv-users.1802565.n2.nabble.com/cvContourArea-changed-API-tt4817692.html#none).\r\n\r\nI tracked down the [diff for the open cv update](https://code.ros.org/trac/opencv/changeset/2927) that clearly shows the new variable, int oriented, controls whether negative areas are returned or not.\r\n\r\nThis is a resubmission of a previous [pull request](https://github.com/openframeworks/openFrameworks/pull/756) but now to the develop branch.","number":780,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/780","diff_url":"https://github.com/openframeworks/openFrameworks/pull/780.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/780.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/780","labels":[],"id":1986549,"closed_at":"2011-10-19T03:19:58Z","created_at":"2011-10-19T00:12:37Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"5934b87b143f3bc860a2da7387f42de9","url":"https://api.github.com/users/github-user32","login":"github-user32","id":447669,"avatar_url":"https://secure.gravatar.com/avatar/5934b87b143f3bc860a2da7387f42de9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Added 3D versions of ofCurve(), ofBezier(), ofVertex() and ofBezierVertex()","html_url":"https://github.com/openframeworks/openFrameworks/issues/779","comments":6,"assignee":null,"updated_at":"2011-10-19T02:52:18Z","body":"ofGraphics.h already has 3D versions of ofTriangle(), ofCircle() etc. \r\n\r\nTo match these, I've added 3D versions of ofCurve(), ofBezier(), ofVertex() and ofBezierVertex() which really just pass an additional (z) coordinate through to the underlying shape path.","number":779,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/779","diff_url":"https://github.com/openframeworks/openFrameworks/pull/779.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/779.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/779","labels":[],"id":1978176,"closed_at":"2011-10-19T02:52:18Z","created_at":"2011-10-18T22:08:22Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"f3ca5c4c2359e9103ba20a1ea992680c","url":"https://api.github.com/users/soundanalogous","login":"soundanalogous","id":401539,"avatar_url":"https://secure.gravatar.com/avatar/f3ca5c4c2359e9103ba20a1ea992680c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Bugfix of arduino update - added missing image","html_url":"https://github.com/openframeworks/openFrameworks/issues/777","comments":0,"assignee":null,"updated_at":"2011-10-18T05:54:21Z","body":"This commit adds the image file that was missing from the previous pull request and also gets rid of a file that's no longer needed.","number":777,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/777","diff_url":"https://github.com/openframeworks/openFrameworks/pull/777.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/777.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/777","labels":[],"id":1935186,"closed_at":"2011-10-18T05:54:21Z","created_at":"2011-10-18T00:42:58Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"a530cfce7e7e26f354cdc1bb444f94c5","url":"https://api.github.com/users/2bbb","login":"2bbb","id":200899,"avatar_url":"https://secure.gravatar.com/avatar/a530cfce7e7e26f354cdc1bb444f94c5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Maybe, tex_coords[] in GL_TRIANGLE_STRIP are ","html_url":"https://github.com/openframeworks/openFrameworks/issues/776","comments":2,"assignee":null,"updated_at":"2011-10-17T07:33:28Z","body":"975: tx1, ty1,\r\n976: tx0, ty1\r\n->\r\n975: tx0, ty1,\r\n976: tx1, ty1","number":776,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/776","diff_url":"https://github.com/openframeworks/openFrameworks/pull/776.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/776.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/776","labels":[],"id":1924020,"closed_at":"2011-10-17T07:33:28Z","created_at":"2011-10-17T00:22:50Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"a530cfce7e7e26f354cdc1bb444f94c5","url":"https://api.github.com/users/2bbb","login":"2bbb","id":200899,"avatar_url":"https://secure.gravatar.com/avatar/a530cfce7e7e26f354cdc1bb444f94c5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"correct line 982. \"p4.x, p4.x\" -> \"p4.x, p4.y\"","html_url":"https://github.com/openframeworks/openFrameworks/issues/775","comments":0,"assignee":null,"updated_at":"2011-10-17T06:11:45Z","body":"","number":775,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/775","diff_url":"https://github.com/openframeworks/openFrameworks/pull/775.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/775.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/775","labels":[],"id":1923910,"closed_at":"2011-10-17T06:11:45Z","created_at":"2011-10-16T23:40:44Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofxOsc getRemotePort() returns wrong port","html_url":"https://github.com/openframeworks/openFrameworks/issues/773","comments":1,"assignee":null,"updated_at":"2011-10-13T15:44:06Z","body":"as mentioned in http://forum.openframeworks.cc/index.php/topic,7614.msg35625 \r\nI have also experienced that, so I can confirm.\r\n\r\ngetRemotePort() returns e.g. 52555 when the real port is 12345. \r\naccording to `ofxOscReceiver::ProcessMessage` implementation, this should work, the port gets assigned when the message is processed. The comment in `IpEndpointName.h`: \r\n`// address and port are maintained in host byte order here` is the only thing jumping out at me, does the byte order get jumbled or something? but that shouldn't be an issue when on `localhost`, no?","number":773,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/773","labels":[],"id":1897860,"closed_at":"2011-10-13T15:44:06Z","created_at":"2011-10-13T07:32:44Z"}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=15&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4981'), ('content-length', '39109'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"c04775a433cb77f27d8539e9940abd5b"'), ('date', 'Tue, 29 May 2012 18:46:35 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-10-10T12:40:09Z","body":"in ofAppRunner.cpp, ofExitCallback() calls ofNotifyExit() last, after closing the sound stream and cleaning up free image. This created a problem for me when I had some code in my testApp::exit() function which was trying to use ofSaveImage(), and getting a segfault beacuse freeImage is no longer loaded. \r\n\r\nBy moving ofNotifyExit() to the top of the function, the problem is solved. I'm not sure if this introduces other problems, but I checked with the debugger and everything else does get called after the testApp::exit() function returns, so it should be okay.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/770","comments":0,"milestone":null,"number":770,"html_url":"https://github.com/openframeworks/openFrameworks/issues/770","assignee":null,"title":"ofExitCallback() does cleanup before notifying the running app","labels":[],"closed_at":"2011-10-10T12:40:09Z","created_at":"2011-10-10T06:07:10Z","state":"closed","user":{"url":"https://api.github.com/users/timscaffidi","gravatar_id":"2ad43b65cb02eca2b722133681647492","login":"timscaffidi","avatar_url":"https://secure.gravatar.com/avatar/2ad43b65cb02eca2b722133681647492?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":177125},"id":1861067,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2011-10-10T12:40:09Z","body":"I noticed that in linux (not sure about other platforms) calling setDesiredFrameRate(); before calling initGrabber() has no effect, even when the desired framerate is available by the camera driver, and shows up in the log from ofVideoPlayer.\r\n\r\nI've tracked down the source of the problem, and it appears to be that initially the internal grabber object is NULL, and is only created when initGrabber is called, thus any prior attempts to set the framerate will not work. \r\n\r\nBy moving the lines:\r\n\r\nif( grabber == NULL ){\r\n\tsetGrabber( ofPtr(new OF_VID_GRABBER_TYPE) );\r\n}\r\n\r\nfrom initGrabber() to the ofVideoGrabber constructor, the issue is solved. I'm not sure if this would have any undesirable effects, however.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/769","comments":0,"milestone":null,"number":769,"html_url":"https://github.com/openframeworks/openFrameworks/issues/769","assignee":null,"title":"ofVideoGrabber, setDesiredFrameRate ignored","labels":[],"closed_at":"2011-10-10T12:40:09Z","created_at":"2011-10-10T05:17:54Z","state":"closed","user":{"url":"https://api.github.com/users/timscaffidi","gravatar_id":"2ad43b65cb02eca2b722133681647492","login":"timscaffidi","avatar_url":"https://secure.gravatar.com/avatar/2ad43b65cb02eca2b722133681647492?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":177125},"id":1860899,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2011-10-17T16:08:24Z","body":"A change in the firmata protocol that ships with the upcoming Arduino 1.0 release will impact ofArduino (for OF users who load StandardFirmata from Arduino 1.0). The issue is a change in the pin numbering used in the Firmata library for the standard (ATMega168 and ATMega328 based) Arduinos. This commit fixes the issue while maintaining backwards compatibility with previous versions of firmata. I have also updated the firmataExample example to demonstrate how to set analog pins as digital I/O pins (this was previously broken) and also how to control a servo motor.\r\n\r\nThere are a number of new features in Firmata 2.3 that can make it easier to use Arduino with OF (and other frameworks). However ofArduino currently supports 3 different versions of Firmata so to add new features and maintain backwards compatibility would be a pain (not to mention a mess). In the near future I plan to create a new addon ofxArduino (or ofxFirmata) that will take full advantage of Firmata 2.3, adding support for pretty much any board that can be programmed via the Arduino IDE as well as new features such as I2C support (which is now part of StandardFirmata). I think ofArduino should remain as is to provide backwards compatibility, and the new addon will only support Firmata 2.3 (Arduino 1.0) and higher.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/768","comments":3,"milestone":null,"number":768,"html_url":"https://github.com/openframeworks/openFrameworks/issues/768","assignee":null,"title":"Bugfix ofArduino update to be compatible with Arduino 1.0","labels":[],"closed_at":"2011-10-17T06:47:33Z","created_at":"2011-10-09T06:07:35Z","state":"closed","user":{"url":"https://api.github.com/users/soundanalogous","gravatar_id":"f3ca5c4c2359e9103ba20a1ea992680c","login":"soundanalogous","avatar_url":"https://secure.gravatar.com/avatar/f3ca5c4c2359e9103ba20a1ea992680c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":401539},"id":1855139,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/768.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/768","diff_url":"https://github.com/openframeworks/openFrameworks/pull/768.diff"}},{"updated_at":"2011-12-03T23:44:15Z","body":"when using the movieGrabber on osx (10.6 in my case) There are a bunch of warnings like this\r\n\r\nmovieGrabberExampleDebug[2351:903] *** __NSAutoreleaseNoPool(): Object 0x1410280 of class NSCFArray autoreleased with no pool in place - just leaking\r\n\r\nthere seem to be some memory leaks in ofQuickTimeGrabber. according to Instruments, those are in listDevices(), loadSettings() and qtSelectDevice \r\n\r\nmore info + screenshot of Instruments session\r\nhttp://forum.openframeworks.cc/index.php/topic,7474.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/763","comments":1,"milestone":null,"number":763,"html_url":"https://github.com/openframeworks/openFrameworks/issues/763","assignee":null,"title":"ofQuickTimeGrabber::listDevices memory leak","labels":[],"closed_at":"2011-12-03T23:44:15Z","created_at":"2011-10-02T09:30:42Z","state":"closed","user":{"url":"https://api.github.com/users/jesusgollonet","gravatar_id":"5008d5295e9bc2636313c7b50ed5981d","login":"jesusgollonet","avatar_url":"https://secure.gravatar.com/avatar/5008d5295e9bc2636313c7b50ed5981d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":31100},"id":1794924,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2011-10-17T23:21:32Z","body":"Changed saveFile methods in ofxXmlSettings to return a boolean on success/failure to save a file...this let's you catch errors if it's not possible to save an xml file during or after modifications. \r\n\r\n(It's pretty basic, but figure I should start somewhere helping out ;-)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/762","comments":1,"milestone":null,"number":762,"html_url":"https://github.com/openframeworks/openFrameworks/issues/762","assignee":null,"title":"Bugfix return bool on save xml","labels":[],"closed_at":"2011-10-17T23:21:32Z","created_at":"2011-09-29T11:43:43Z","state":"closed","user":{"url":"https://api.github.com/users/gameoverhack","gravatar_id":"397ac2141aace0681a354185e7efb0f1","login":"gameoverhack","avatar_url":"https://secure.gravatar.com/avatar/397ac2141aace0681a354185e7efb0f1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331599},"id":1774106,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/762.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/762","diff_url":"https://github.com/openframeworks/openFrameworks/pull/762.diff"}},{"updated_at":"2012-02-25T03:57:37Z","body":"Why is ofLog [adding a space after the ostream (<<) operator](https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/utils/ofLog.h#L73)?\r\n\r\nThis does not match the expected behavior of cout and cerr which ofLog is modeled after. I can understand it may be \"nice\" for some newbies but it now means I can't concatenate string output and prints formatted in the manner of ALL C++ BOOKS AND ONLINE INFO.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/761","comments":6,"milestone":null,"number":761,"html_url":"https://github.com/openframeworks/openFrameworks/issues/761","assignee":null,"title":"ofLog is adding a space after the ostream operator","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"}],"closed_at":"2012-02-25T03:57:37Z","created_at":"2011-09-28T01:15:42Z","state":"closed","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":1758336,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2011-10-15T12:58:27Z","body":"Hi,\r\n\r\nThe ofSoundStream automatically resets your sample rate to be 96000 Hz, since this is the soundcard default. This can be seen by looking at Audio MIDI setup application, as Arturo observed on the old forum.\r\n\r\n\r\nI find that simply clicking on the sample rate in Audio MIDI setup works but Is there a way to have control over this? What would we need to do to change it in the code?\r\n\r\nponje other alternative might be use a sample rate conversion : eg zita-resampler, but if we can not switch to different sample rate, that would be preferable.\r\n\r\nI'm trying to port some audio analysis - beat tracking, chroma etc, that currently run at 44100.\r\n\r\nThanks,\r\nAndrew","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/759","comments":1,"milestone":null,"number":759,"html_url":"https://github.com/openframeworks/openFrameworks/issues/759","assignee":null,"title":"Sample rate using ofSoundStream and RtAudio","labels":[],"closed_at":"2011-10-15T12:58:27Z","created_at":"2011-09-27T17:06:04Z","state":"closed","user":{"url":"https://api.github.com/users/Venetian","gravatar_id":"380a371d4bec591ddf9f8201ffdaed5d","login":"Venetian","avatar_url":"https://secure.gravatar.com/avatar/380a371d4bec591ddf9f8201ffdaed5d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":474147},"id":1754108,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2011-10-19T00:09:30Z","body":"opencv2 cvContourArea runs fabs on the area by default unless the (new!) third variable is set to true, this breaks hole detection since no negative areas are returned. Also, the current fabs calls are redundant.\r\n\r\nGolan noticed that hole detection was off in 007 and I tracked this down, although the function update is not actually reflected in the opencv2 documentation ... blah. See this [disgruntled post](http://opencv-users.1802565.n2.nabble.com/cvContourArea-changed-API-tt4817692.html#none).\r\n\r\nI tracked down the [diff for the open cv update](https://code.ros.org/trac/opencv/changeset/2927) that clearly shows the new variable, int oriented, controls whether negative areas are returned or not.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/756","comments":6,"milestone":null,"number":756,"html_url":"https://github.com/openframeworks/openFrameworks/issues/756","assignee":null,"title":"opencv2 hole detection broken, here is the fix (thanks Golan)","labels":[],"closed_at":"2011-10-19T00:09:30Z","created_at":"2011-09-25T04:48:52Z","state":"closed","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":1732626,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/756.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/756","diff_url":"https://github.com/openframeworks/openFrameworks/pull/756.diff"}},{"updated_at":"2012-02-10T08:43:13Z","body":"In 3d/ofMesh.h, line 135, the ofMesh parameter should be a reference (like it is declared)\r\n\r\nFix:\r\ninline std::ostream& operator<<(std::ostream& os, ofMesh& data) ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/755","comments":3,"milestone":null,"number":755,"html_url":"https://github.com/openframeworks/openFrameworks/issues/755","assignee":null,"title":"ofMesh << operator, incorrect parameter ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":"2012-02-10T08:43:13Z","created_at":"2011-09-23T12:50:05Z","state":"closed","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":358809},"id":1723034,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-05-28T14:59:16Z","body":"this question comes up constantly on the forum.\r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,2197.0.html\r\nhttp://forum.openframeworks.cc/index.php/topic,7383.msg34454.html#msg34454\r\nhttp://forum.openframeworks.cc/index.php/topic,5962.msg28994.html\r\nhttp://forum.openframeworks.cc/index.php/topic,7260.msg33887.html\r\n\r\n'roi' is my language, but for naming i think the best words come from the people asking questions:\r\n\r\n- \"subsection\"\r\n- \"part of an image\"\r\n- \"parts of it\"\r\n- \"cropping\"\r\n- \"breaking it apart into tiles\"\r\n\r\nideally this would exist for videograbber, image, etc. anything with a texture.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/751","comments":9,"milestone":null,"number":751,"html_url":"https://github.com/openframeworks/openFrameworks/issues/751","assignee":null,"title":"gl-based roi/subsection drawing","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":"2012-05-28T14:59:16Z","created_at":"2011-09-20T05:18:04Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1685124,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2011-10-17T23:35:56Z","body":"these should be non-controversial solutions for some serious problems, closing 3 issues.\r\n\r\ni do have a three ideas that might be more controversial:\r\n\r\n1 remove background-auto-color setting from ofBackground. this means that the historical ofBackground would be completely divided into ofBackground and ofSetBackgroundColor. it also breaks usage of ofBackground in setup, which i think is a bad pattern anyway.\r\n\r\n2 remove ofClear, which is confusing and causes issues like https://github.com/openframeworks/openFrameworks/issues/264 if ofBackground and ofSetBackgroundColor are separated as suggested above, ofClear becomes redundant.\r\n\r\n3 this might sound ridiculous, but hear me out: let's move ofSetBackgroundAuto() to main.cpp. right now there are serious problems with ofSetBackgroundAuto(false), see https://github.com/openframeworks/openFrameworks/issues/368#issuecomment-2135179 i'm pretty sure the only way to get a consistently non-flickering accumulation buffer is to use a single buffer. (unless there's some trick where you blit from the back to front instead of swapping them). and to have a single buffer setup, we need to do that from main.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/750","comments":6,"milestone":null,"number":750,"html_url":"https://github.com/openframeworks/openFrameworks/issues/750","assignee":null,"title":"fixed some bugs surrounding background setting","labels":[],"closed_at":"2011-10-17T23:18:51Z","created_at":"2011-09-19T16:11:12Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1679683,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/750.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/750","diff_url":"https://github.com/openframeworks/openFrameworks/pull/750.diff"}},{"updated_at":"2012-04-22T17:27:01Z","body":"very curious to know why this is commented out:\r\n\r\n//operator overloading for float\r\n//\r\n//\r\n//inline void ofVec3f::operator=( const float f){\r\n//\tx = f;\r\n//\ty = f;\r\n//\tz = f;\r\n//}\r\n\r\npre 007 behavior was:\r\n\r\nmyPoint = 0.0; would set x y and z to 0.0. \r\nnow myPoint = 0.0; only sets x. \r\n\r\nthis can create some really bad bugs for people expecting ofPoint to work as it used to. \r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/749","comments":3,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":749,"html_url":"https://github.com/openframeworks/openFrameworks/issues/749","assignee":null,"title":"ofPoint / ofVec3f missing = operator for float ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2012-04-22T17:27:01Z","created_at":"2011-09-17T10:14:04Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":1668455,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-04-09T16:52:28Z","body":"Linker setting needs libcomdlg32.a for all CB projects.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/747","comments":3,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":70,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":747,"html_url":"https://github.com/openframeworks/openFrameworks/issues/747","assignee":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"title":"bug in CB 007 project - missing libcomdlg32.a for dialog boxes / load save dialogs","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2012-04-09T16:52:28Z","created_at":"2011-09-16T17:41:15Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":1664249,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2011-09-15T14:41:11Z","body":"this bug stems from a misunderstanding of ofVbo that could have been averted if ofVbo reported a warning when you try to update with more data than you've allocated: http://forum.openframeworks.cc/index.php/topic,7313.0/","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/746","comments":4,"milestone":null,"number":746,"html_url":"https://github.com/openframeworks/openFrameworks/issues/746","assignee":null,"title":"ofVbo::update*Data should warn when updating too much data","labels":[],"closed_at":"2011-09-15T14:41:11Z","created_at":"2011-09-15T13:18:30Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1652792,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2011-11-16T17:05:58Z","body":"It was not compiling the examples because of this missing lib.\r\n\r\nThis happened on Fedora 15.\r\nBTW, I also needed to install the jack library, maybe we should add it to the install_dependencies.sh, I can do it if you agree.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/742","comments":9,"milestone":null,"number":742,"html_url":"https://github.com/openframeworks/openFrameworks/issues/742","assignee":null,"title":"linux: Add zlib to the system libs in the template's makefile","labels":[],"closed_at":"2011-11-16T17:05:43Z","created_at":"2011-09-13T13:38:02Z","state":"closed","user":{"url":"https://api.github.com/users/joaquimrocha","gravatar_id":"a0a1e3a9ca85502ca53f11819d236764","login":"joaquimrocha","avatar_url":"https://secure.gravatar.com/avatar/a0a1e3a9ca85502ca53f11819d236764?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1029635},"id":1633135,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/742.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/742","diff_url":"https://github.com/openframeworks/openFrameworks/pull/742.diff"}},{"updated_at":"2011-09-13T11:40:28Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/741","comments":1,"milestone":null,"number":741,"html_url":"https://github.com/openframeworks/openFrameworks/issues/741","assignee":null,"title":"fix fmod syntax error","labels":[],"closed_at":"2011-09-13T11:40:09Z","created_at":"2011-09-13T11:25:13Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1632366,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/741.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/741","diff_url":"https://github.com/openframeworks/openFrameworks/pull/741.diff"}},{"updated_at":"2011-09-13T11:05:05Z","body":"sorry, last pull request was into master instead of develop","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/740","comments":1,"milestone":null,"number":740,"html_url":"https://github.com/openframeworks/openFrameworks/issues/740","assignee":null,"title":"fixes for ofColor static types and ofColor::operator<<","labels":[],"closed_at":"2011-09-13T11:04:53Z","created_at":"2011-09-13T10:53:31Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1632201,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/740.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/740","diff_url":"https://github.com/openframeworks/openFrameworks/pull/740.diff"}},{"updated_at":"2011-09-13T10:53:48Z","body":"some bugs i noticed","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/739","comments":0,"milestone":null,"number":739,"html_url":"https://github.com/openframeworks/openFrameworks/issues/739","assignee":null,"title":"fixes for ofColor static types and ofColor::operator<<","labels":[],"closed_at":"2011-09-13T10:53:48Z","created_at":"2011-09-13T10:51:55Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1632191,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/739.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/739","diff_url":"https://github.com/openframeworks/openFrameworks/pull/739.diff"}},{"updated_at":"2011-09-11T11:20:34Z","body":"Hi All\r\n\r\nAFAIK I need to create OpenGL pixel shader to have a OpenGL phong preview.\r\nI'm familiar with phong render but never did it in OpenGL. My task is quite standard - I need just a lighting with surface normal interpolated for every pixel. Is there a standard pixel shader(s) (or other ways to do this) that could be used?\r\n\r\nThanks\r\nTom","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/737","comments":1,"milestone":null,"number":737,"html_url":"https://github.com/openframeworks/openFrameworks/issues/737","assignee":null,"title":"OpenGL pixel shader (Phong)","labels":[],"closed_at":"2011-09-11T11:20:34Z","created_at":"2011-09-11T11:16:46Z","state":"closed","user":{"url":"https://api.github.com/users/Tommato","gravatar_id":"95bbfbd39116dffe06be4d816f322bf0","login":"Tommato","avatar_url":"https://secure.gravatar.com/avatar/95bbfbd39116dffe06be4d816f322bf0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1027082},"id":1617725,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2011-09-11T11:20:54Z","body":"Hi All\r\n\r\nI'm reading about VAO but up to now don't understand too much ;)\r\nExample: I've an old OpenGL code draws via glDrawElements and glSetVertexPointer, glSetNormalPointer etc. Should I replace it with VAO and will it be faster/better?\r\n\r\nThanks\r\nTom","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/736","comments":0,"milestone":null,"number":736,"html_url":"https://github.com/openframeworks/openFrameworks/issues/736","assignee":null,"title":"OpenGL - Using VAO","labels":[],"closed_at":"2011-09-11T11:20:54Z","created_at":"2011-09-11T11:14:41Z","state":"closed","user":{"url":"https://api.github.com/users/Tommato","gravatar_id":"95bbfbd39116dffe06be4d816f322bf0","login":"Tommato","avatar_url":"https://secure.gravatar.com/avatar/95bbfbd39116dffe06be4d816f322bf0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1027082},"id":1617717,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2011-09-11T11:21:04Z","body":"Hi All\r\n\r\nI've rebuilding an old app written more 10 years ago by other programmer. In code I see:\r\n\r\n- if there is no texture, so do draw via glDrawElements and glSetVertexPointer, glSetNormalPointer etc\r\n\r\n- otherwise (if there is a texture), do a simplest draw with glBegin, glVertex3f, glEnd. The UV coordinates are calculated based on map type (spherical etc), the texture's seams are processed by hands (temporary extra polygons are created).\r\n\r\nSo my question is: how can I use (faster) glDrawElements with texture as well? Is there a way to crete UVs via OpenGL (and to process seams properly) now?\r\n\r\nThanks\r\nTom","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/735","comments":0,"milestone":null,"number":735,"html_url":"https://github.com/openframeworks/openFrameworks/issues/735","assignee":null,"title":"Open GL - Texture Seams","labels":[],"closed_at":"2011-09-11T11:21:04Z","created_at":"2011-09-11T11:11:15Z","state":"closed","user":{"url":"https://api.github.com/users/Tommato","gravatar_id":"95bbfbd39116dffe06be4d816f322bf0","login":"Tommato","avatar_url":"https://secure.gravatar.com/avatar/95bbfbd39116dffe06be4d816f322bf0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1027082},"id":1617665,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2011-09-11T11:23:54Z","body":"discussed here\r\nhttp://forum.openframeworks.cc/index.php/topic,7297","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/734","comments":2,"milestone":null,"number":734,"html_url":"https://github.com/openframeworks/openFrameworks/issues/734","assignee":null,"title":"kyle's suggestion of dealing with ofDataPath","labels":[],"closed_at":"2011-09-11T11:23:43Z","created_at":"2011-09-11T10:04:17Z","state":"closed","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":1617397,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/734.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/734","diff_url":"https://github.com/openframeworks/openFrameworks/pull/734.diff"}},{"updated_at":"2012-05-16T11:42:53Z","body":"Trying to compile an OF app against fca449d348cf33803609a837311fa07450706750 on Lion, I get an error message \"RtAudio.h File cannot be found\". Looking at the openFrameworksLib.xcodeproj settings, HEADER_RTAUDIO is set to \"../../../../libs/rtaudio/include\". Setting it to \"../../../../libs/rtAudio/include\" fixes the problem.\r\n\r\nI suspect that this was missed in other peoples' tests because they were running with the stock non-case-sensitive HFS filesystem. I'm using the case-sensitive version.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/733","comments":1,"milestone":null,"number":733,"html_url":"https://github.com/openframeworks/openFrameworks/issues/733","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"RtAudio.h cannot be found on Mac with HFS case-sensitive file system","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":"2012-05-16T11:42:53Z","created_at":"2011-09-09T22:15:08Z","state":"closed","user":{"url":"https://api.github.com/users/heisters","gravatar_id":"320244a88881285d92475b3b0011b042","login":"heisters","avatar_url":"https://secure.gravatar.com/avatar/320244a88881285d92475b3b0011b042?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":72790},"id":1611853,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2011-12-05T16:59:00Z","body":"Most of the time, no cam is selected when the program start (no green led).\r\n\r\nUsing videoGrabber.videoSettings() makes the green led light up (video seems ok in the settings pane), but no data seems to be grabbed by the openFrameworks application (pixels are black).\r\n\r\nThe movieGrabberExample does not work and can be used to test the problem.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/732","comments":3,"milestone":null,"number":732,"html_url":"https://github.com/openframeworks/openFrameworks/issues/732","assignee":null,"title":"osx lion + of 007 ofVideoGrabber does not grab","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":"2011-12-05T16:59:00Z","created_at":"2011-09-09T16:54:44Z","state":"closed","user":{"url":"https://api.github.com/users/labe-me","gravatar_id":"ecca3b1bb8135dec28204aa085c56627","login":"labe-me","avatar_url":"https://secure.gravatar.com/avatar/ecca3b1bb8135dec28204aa085c56627?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":428594},"id":1609385,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2011-12-03T23:38:42Z","body":"When ofSetBackgroundAuto(false) is executed and ofPushStyle() is used strange things happens to ofFbos.\r\n\r\nHere's a testApp to illustrate the problem:\r\n\r\n```c++\r\n#include \"testApp.h\"\r\n\r\n// Test background auto + ofFbo + pushStyle bug.\r\n//\r\n// When background auto is disabled, any call to ofPushStyle/ofPopStyle will break the fbo.\r\n//\r\n// Expected: green screen whatever these bool values\r\n// Actual: black background, fbo does not appear\r\n//\r\nbool useBackgroundAuto = false;\r\nbool useStyleContext = true;\r\n\r\nofFbo buffer;\r\n\r\nvoid testApp::setup(){\r\n ofSetFrameRate(60);\r\n ofSetBackgroundAuto(useBackgroundAuto);\r\n ofBackground(0);\r\n\r\n buffer.allocate();\r\n\r\n // fill the buffer with green\r\n buffer.begin();\r\n if (useStyleContext) ofPushStyle();\r\n ofSetColor(255, 0, 0);\r\n ofFill();\r\n ofRect(0,0,ofGetWidth(),ofGetHeight());\r\n if (useStyleContext) ofPopStyle();\r\n buffer.end();\r\n}\r\n\r\nvoid testApp::update(){\r\n}\r\n\r\nvoid testApp::draw(){\r\n if (useStyleContext) ofPushStyle();\r\n ofSetColor(255,255,255); // set buffer brightness to maximum\r\n buffer.draw(0,0);\r\n if (useStyleContext) ofPopStyle();\r\n}\r\n\r\nvoid testApp::keyPressed(int key){\r\n}\r\n\r\nvoid testApp::keyReleased(int key){\r\n}\r\n\r\nvoid testApp::mouseMoved(int x, int y ){\r\n}\r\n\r\nvoid testApp::mouseDragged(int x, int y, int button){\r\n}\r\n\r\nvoid testApp::mousePressed(int x, int y, int button){\r\n}\r\n\r\nvoid testApp::mouseReleased(int x, int y, int button){\r\n}\r\n\r\nvoid testApp::windowResized(int w, int h){\r\n}\r\n\r\nvoid testApp::gotMessage(ofMessage msg){\r\n}\r\n\r\nvoid testApp::dragEvent(ofDragInfo dragInfo){\r\n}\r\n```","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/731","comments":5,"milestone":null,"number":731,"html_url":"https://github.com/openframeworks/openFrameworks/issues/731","assignee":null,"title":"ofSetBackgroundAuto(false) + ofFbo + ofPushStyle() = fbo.draw() do not work","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2011-12-03T23:38:42Z","created_at":"2011-09-07T12:56:23Z","state":"closed","user":{"url":"https://api.github.com/users/labe-me","gravatar_id":"ecca3b1bb8135dec28204aa085c56627","login":"labe-me","avatar_url":"https://secure.gravatar.com/avatar/ecca3b1bb8135dec28204aa085c56627?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":428594},"id":1589067,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=16&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4980'), ('content-length', '31592'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"4b60fb64c94220278e0acfd277109471"'), ('date', 'Tue, 29 May 2012 18:46:36 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-09-13T13:38:45Z","body":"It was not compiling the examples because of this missing lib.\r\n\r\nThis happened on Fedora 15.\r\nBTW, I also needed to install the jack library, maybe we should add it to the install_dependencies.sh, I can do it if you agree.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/729","comments":1,"milestone":null,"number":729,"html_url":"https://github.com/openframeworks/openFrameworks/issues/729","assignee":null,"title":"linux: Add zlib to the system libs in the template's makefile","labels":[],"closed_at":"2011-09-13T13:38:09Z","created_at":"2011-09-06T17:33:53Z","state":"closed","user":{"url":"https://api.github.com/users/joaquimrocha","gravatar_id":"a0a1e3a9ca85502ca53f11819d236764","login":"joaquimrocha","avatar_url":"https://secure.gravatar.com/avatar/a0a1e3a9ca85502ca53f11819d236764?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1029635},"id":1581423,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/729.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/729","diff_url":"https://github.com/openframeworks/openFrameworks/pull/729.diff"}},{"updated_at":"2012-02-21T08:46:14Z","body":"added ofDrawGrid to complement ofDrawAxis. added 'get' accessors to ofCamera's internal properties, made ofCamera's internal properties protected rather than private","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/726","comments":8,"milestone":null,"number":726,"html_url":"https://github.com/openframeworks/openFrameworks/issues/726","assignee":null,"title":"added ofDrawGrid to complement ofDrawAxis. added 'get' accessors to ofCam","labels":[],"closed_at":"2012-02-09T15:37:33Z","created_at":"2011-09-03T11:12:49Z","state":"closed","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":1557628,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/726.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/726","diff_url":"https://github.com/openframeworks/openFrameworks/pull/726.diff"}},{"updated_at":"2011-09-03T10:58:55Z","body":"added ofDrawGrid to complement ofDrawAxis. added 'get' accessors to ofCamera's internal properties, made ofCamera's internal properties protected rather than private","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/725","comments":0,"milestone":null,"number":725,"html_url":"https://github.com/openframeworks/openFrameworks/issues/725","assignee":null,"title":"minor inclusions for 3d","labels":[],"closed_at":"2011-09-03T10:58:55Z","created_at":"2011-09-03T09:53:05Z","state":"closed","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":1557458,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/725.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/725","diff_url":"https://github.com/openframeworks/openFrameworks/pull/725.diff"}},{"updated_at":"2011-12-03T22:52:02Z","body":"I know it has been addressed before,\r\nbut came up again.\r\n\r\nA simple issue with VS2010 character bug.\r\n\r\nOn \r\n/libs/quictime/includes/icon.h\r\n/libs/quictime/includes/ConditionalMacros.h\r\n/libs/quictime/includes/Endian.h\r\netc.\r\n\r\nCould you please replace appropriate files?\r\nThanks in advance.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/724","comments":2,"milestone":null,"number":724,"html_url":"https://github.com/openframeworks/openFrameworks/issues/724","assignee":null,"title":"Quicktime character issue on non-english Windows VS2010","labels":[],"closed_at":"2011-12-03T22:52:02Z","created_at":"2011-08-31T16:49:40Z","state":"closed","user":{"url":"https://api.github.com/users/mailiam","gravatar_id":"191d48da5061ccc21e391e633a1978c3","login":"mailiam","avatar_url":"https://secure.gravatar.com/avatar/191d48da5061ccc21e391e633a1978c3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":955322},"id":1533791,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-05-17T15:01:04Z","body":"Is anyone else getting a crash when running the assimpExample on an iOS device?\r\n\r\nIt works fine in the simulator, but on the device I get a **Thread 1: Program received signal \"EXC_BAD_ACCESS\"**\r\n\r\non line 63 in **aiVector3D.h**\r\n\r\nLine 63 says:\r\n\r\n```aiVector3D () : x(0.0f), y(0.0f), z(0.0f) {}```\r\n\r\nWhich seems like an odd place for it to crash.\r\n\r\n```\r\n60: struct aiVector3D\r\n61: {\r\n62: #ifdef __cplusplus\r\n63: \t aiVector3D () : x(0.0f), y(0.0f), z(0.0f) {}\r\n64: \t aiVector3D (float _x, float _y, float _z) : x(_x), y(_y), z(_z) {}\r\n65: \t aiVector3D (float _xyz) : x(_xyz), y(_xyz), z(_xyz) {}\r\n66: \t aiVector3D (const aiVector3D& o) : x(o.x), y(o.y), z(o.z) {}\r\n```\r\n\r\nI've tried a 3GS and an iPad2.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/723","comments":17,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":70,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":723,"html_url":"https://github.com/openframeworks/openFrameworks/issues/723","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"assimp / assimpeExample on iOS device","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2012-05-17T15:01:04Z","created_at":"2011-08-30T20:22:04Z","state":"closed","user":{"url":"https://api.github.com/users/andreasmuller","gravatar_id":"210831a04d36f1aa26413ecbdbd4b07c","login":"andreasmuller","avatar_url":"https://secure.gravatar.com/avatar/210831a04d36f1aa26413ecbdbd4b07c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":791114},"id":1524220,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-04-30T15:55:27Z","body":"i believe the code posted here is patched for both those requirements:\r\n\r\nhttps://github.com/kylemcdonald/DohaInstallation/tree/master/addons/ofxOsc/libs/oscpack/src\r\n\r\ni have access to the oscpack repo and need to submit the changes + test across systems.\r\n\r\nalso, some discussion here: http://forum.openframeworks.cc/index.php/topic,1625.0/topicseen.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/722","comments":28,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":70,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":722,"html_url":"https://github.com/openframeworks/openFrameworks/issues/722","assignee":null,"title":"ofxOsc needs broadcast + multiple clients on single port","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":"2012-04-30T15:55:27Z","created_at":"2011-08-28T15:07:16Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1503930,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-08T13:27:53Z","body":"added to of3dUtils.cpp/h\r\n\r\nvoid ofDrawGrid(float size) {\r\n\tofPushStyle();\r\n\t\r\n\tconst float gridCount = 5.0f;\r\n\tconst ofVec3f dx(size / gridCount, 0, 0);\r\n\tconst ofVec3f dX(size, 0, 0);\r\n\tconst ofVec3f dz(0, 0, size / gridCount);\r\n\tconst ofVec3f dZ(0, 0, size);\r\n\t\r\n\tofSetLineWidth(2);\r\n\tfor (int i=-gridCount; i<=gridCount; i+=gridCount)\r\n\t{\r\n\t\tofLine(dx*i-dZ,dx*i+dZ);\r\n\t\tofLine(dz*i-dX,dz*i+dX);\r\n\t}\r\n\t\r\n\tofSetLineWidth(1);\r\n\tfor (int i=1-gridCount; i<=gridCount-1; ++i)\r\n\t{\r\n\t\tofLine(dx*i-dZ,dx*i+dZ);\r\n\t\tofLine(dz*i-dX,dz*i+dX);\r\n\t}\r\n\t\r\n\tofPopStyle();\r\n}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/718","comments":1,"milestone":null,"number":718,"html_url":"https://github.com/openframeworks/openFrameworks/issues/718","assignee":null,"title":"suggest ofDrawGrid()","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":"2012-03-08T13:27:53Z","created_at":"2011-08-22T16:12:22Z","state":"closed","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":1459045,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2011-08-21T20:08:09Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/715","comments":0,"milestone":null,"number":715,"html_url":"https://github.com/openframeworks/openFrameworks/issues/715","assignee":null,"title":"ensuring that after an update to the ofPixels of an ofImage, the update() updates the texture too","labels":[],"closed_at":"2011-08-21T20:08:09Z","created_at":"2011-08-21T18:04:01Z","state":"closed","user":{"url":"https://api.github.com/users/joshuajnoble","gravatar_id":"10960ba0f305803a1cdc7cd6188d643b","login":"joshuajnoble","avatar_url":"https://secure.gravatar.com/avatar/10960ba0f305803a1cdc7cd6188d643b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":237423},"id":1453487,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/715.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/715","diff_url":"https://github.com/openframeworks/openFrameworks/pull/715.diff"}},{"updated_at":"2011-08-17T14:16:12Z","body":"bunch of fixes to make short/float ofImages and ofColors more usable.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/714","comments":1,"milestone":null,"number":714,"html_url":"https://github.com/openframeworks/openFrameworks/issues/714","assignee":null,"title":"color swapping for short/float and fixing 255f related bugs for short/float","labels":[],"closed_at":"2011-08-17T14:16:04Z","created_at":"2011-08-17T10:40:58Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1422123,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/714.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/714","diff_url":"https://github.com/openframeworks/openFrameworks/pull/714.diff"}},{"updated_at":"2011-08-17T14:16:05Z","body":"setColor, getColor, color conversion from hsb, etc is mostly broken for ofFloatColor and ofShortColor because there are a lot of 255.0fs hard coded into ofColor.h and ofColor.cpp. one alternative is to create a static templated limit() function that returns the max value for each type. this also cleans up copyFrom(). i'll take a shot at this.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/713","comments":0,"milestone":null,"number":713,"html_url":"https://github.com/openframeworks/openFrameworks/issues/713","assignee":null,"title":"ofColor is littered with 255.0fs","labels":[],"closed_at":"2011-08-17T14:16:05Z","created_at":"2011-08-17T09:34:58Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1421761,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2011-08-17T10:40:46Z","body":"fixes a bug where float and unsigned short images are unnecessarily swapped when loaded/saved.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/712","comments":0,"milestone":null,"number":712,"html_url":"https://github.com/openframeworks/openFrameworks/issues/712","assignee":null,"title":"closes #710 by adding conditions for only swapping on 8-bit images.","labels":[],"closed_at":"2011-08-17T10:40:46Z","created_at":"2011-08-17T06:55:48Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1421044,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/712.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/712","diff_url":"https://github.com/openframeworks/openFrameworks/pull/712.diff"}},{"updated_at":"2012-04-10T08:29:52Z","body":"opencv2.3 headers + iinux64 & android don't merge it till there's no binaries for at least osx in case it breaks the repo","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/709","comments":15,"milestone":null,"number":709,"html_url":"https://github.com/openframeworks/openFrameworks/issues/709","assignee":null,"title":"opencv2.3","labels":[],"closed_at":"2012-02-25T18:20:39Z","created_at":"2011-08-12T10:22:26Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":1393925,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/709.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/709","diff_url":"https://github.com/openframeworks/openFrameworks/pull/709.diff"}},{"updated_at":"2012-02-25T18:21:38Z","body":"supposedly fixes normals but haven't tested myself. juliolucio sent me the fixes","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/708","comments":0,"milestone":null,"number":708,"html_url":"https://github.com/openframeworks/openFrameworks/issues/708","assignee":null,"title":"Bugfix 3d model loader normals","labels":[],"closed_at":"2012-02-25T18:21:38Z","created_at":"2011-08-12T10:21:05Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":1393918,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/708.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/708","diff_url":"https://github.com/openframeworks/openFrameworks/pull/708.diff"}},{"updated_at":"2011-08-12T10:20:31Z","body":"supposedly fixes normals but haven't tested myself. juliolucio sent me the fixes","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/707","comments":1,"milestone":null,"number":707,"html_url":"https://github.com/openframeworks/openFrameworks/issues/707","assignee":null,"title":"Bugfix 3d model loader normals","labels":[],"closed_at":"2011-08-12T10:20:31Z","created_at":"2011-08-12T10:19:42Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":1393909,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/707.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/707","diff_url":"https://github.com/openframeworks/openFrameworks/pull/707.diff"}},{"updated_at":"2011-08-09T12:29:35Z","body":"Seeing as many people use git in their project, it makes sense to exclude this directory to ignore it during compilation.\r\nI think that's reasonable, I just noticed in the make output that it seems to be crawling through .git, that's what gave me the idea.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/706","comments":1,"milestone":null,"number":706,"html_url":"https://github.com/openframeworks/openFrameworks/issues/706","assignee":null,"title":"Ignore a potential .git directory during make.","labels":[],"closed_at":"2011-08-09T12:27:58Z","created_at":"2011-08-09T12:23:45Z","state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":1371935,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/706.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/706","diff_url":"https://github.com/openframeworks/openFrameworks/pull/706.diff"}},{"updated_at":"2011-08-09T12:13:35Z","body":"fixed all the issues detected by CheckJNI","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/705","comments":0,"milestone":null,"number":705,"html_url":"https://github.com/openframeworks/openFrameworks/issues/705","assignee":null,"title":"CheckJNI fixes for ofxAndroid","labels":[],"closed_at":"2011-08-09T12:13:35Z","created_at":"2011-08-09T11:38:13Z","state":"closed","user":{"url":"https://api.github.com/users/mbosi","gravatar_id":"68e7c7fd68a25d311e6c0ac6bba7042e","login":"mbosi","avatar_url":"https://secure.gravatar.com/avatar/68e7c7fd68a25d311e6c0ac6bba7042e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":207906},"id":1371719,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/705.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/705","diff_url":"https://github.com/openframeworks/openFrameworks/pull/705.diff"}},{"updated_at":"2011-08-09T12:15:08Z","body":"I had a client and server connected. Upon closing the client, the console on the server gets flooded with ECONNRESET messages.\r\n\r\nIn ofxTCPClient::receive() line 192, I changed the check to use ofxNetworkCheckError to check for errors. Using the errno macro directly does not check the target platform, but ofxNetworkCheckError does check for platform and then uses errno macro if not a WIN_32 machine. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/704","comments":0,"milestone":null,"number":704,"html_url":"https://github.com/openframeworks/openFrameworks/issues/704","assignee":null,"title":"ofxTCPClient receive() connection reset check platform independence","labels":[],"closed_at":"2011-08-09T12:15:08Z","created_at":"2011-08-08T18:42:54Z","state":"closed","user":{"url":"https://api.github.com/users/SnareHanger","gravatar_id":"2f1d676cd19be8a80686276873288310","login":"SnareHanger","avatar_url":"https://secure.gravatar.com/avatar/2f1d676cd19be8a80686276873288310?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":193882},"id":1367206,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/704.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/704","diff_url":"https://github.com/openframeworks/openFrameworks/pull/704.diff"}},{"updated_at":"2012-03-13T14:40:35Z","body":"ofMesh has a few methods declared in ofMesh.h that are missing in ofMesh.cpp\r\n\r\nremoveVertex\r\nremoveNormal\r\nremoveColor\r\nremoveTexCoord\r\nremoveIndex","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/703","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":70,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":703,"html_url":"https://github.com/openframeworks/openFrameworks/issues/703","assignee":null,"title":"ofMesh remove* methods not in implemention","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2012-03-13T14:40:35Z","created_at":"2011-08-07T18:33:00Z","state":"closed","user":{"url":"https://api.github.com/users/jvcleave","gravatar_id":"9c0384a91739bea093f453cf40a59742","login":"jvcleave","avatar_url":"https://secure.gravatar.com/avatar/9c0384a91739bea093f453cf40a59742?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":150037},"id":1361371,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2011-08-09T12:16:12Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/696","comments":0,"milestone":null,"number":696,"html_url":"https://github.com/openframeworks/openFrameworks/issues/696","assignee":null,"title":"Allow the project creation script to work with different PREFIX","labels":[],"closed_at":"2011-08-09T12:16:12Z","created_at":"2011-08-02T19:10:06Z","state":"closed","user":{"url":"https://api.github.com/users/grimreaper","gravatar_id":"76a48f348109c77a429491cddc428459","login":"grimreaper","avatar_url":"https://secure.gravatar.com/avatar/76a48f348109c77a429491cddc428459?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":433817},"id":1332469,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/696.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/696","diff_url":"https://github.com/openframeworks/openFrameworks/pull/696.diff"}},{"updated_at":"2011-08-05T16:53:49Z","body":"Hei\r\n\r\nI am using this model loader and i found a rotation and translation in the draw method.\r\nShouldt it be removed from there?\r\n\r\nI want the model like it is when i build it i the modeling software.\r\n\r\n\r\n\r\n glEnable(GL_NORMALIZE);\r\n\r\n ofPushMatrix();\r\n\r\n ofTranslate(pos);\r\n\r\n //ofRotate(180, 0, 0, 1);\r\n //ofTranslate(-scene_center.x, -scene_center.y, scene_center.z);\r\n\r\n if(normalizeScale)\r\n {\r\n ofScale(normalizedScale , normalizedScale, normalizedScale);\r\n }\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/695","comments":1,"milestone":null,"number":695,"html_url":"https://github.com/openframeworks/openFrameworks/issues/695","assignee":null,"title":"ofxAssimpModelLoader::draw","labels":[],"closed_at":"2011-08-05T16:53:49Z","created_at":"2011-08-02T13:05:24Z","state":"closed","user":{"url":"https://api.github.com/users/juliolucio","gravatar_id":"01004afde74eb6d67c920c4b9c878239","login":"juliolucio","avatar_url":"https://secure.gravatar.com/avatar/01004afde74eb6d67c920c4b9c878239?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":356169},"id":1329765,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2011-08-09T15:22:44Z","body":"updated everything in fedora folder to how we do it in other distros.\r\nI needed to add some additional linker flags to the Makefile template.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/694","comments":0,"milestone":null,"number":694,"html_url":"https://github.com/openframeworks/openFrameworks/issues/694","assignee":null,"title":"updated fedora install scripts","labels":[],"closed_at":"2011-08-09T15:22:44Z","created_at":"2011-08-01T22:07:03Z","state":"closed","user":{"url":"https://api.github.com/users/benben","gravatar_id":"614a4e493d7c353296519bba720e77c5","login":"benben","avatar_url":"https://secure.gravatar.com/avatar/614a4e493d7c353296519bba720e77c5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":124513},"id":1326292,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/694.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/694","diff_url":"https://github.com/openframeworks/openFrameworks/pull/694.diff"}},{"updated_at":"2011-08-09T15:27:17Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/693","comments":0,"milestone":null,"number":693,"html_url":"https://github.com/openframeworks/openFrameworks/issues/693","assignee":null,"title":"ofRectangle: Added ofPoint-based constructor to be consistent with the corresponding set(ofPoint ...) function.","labels":[],"closed_at":"2011-08-09T15:27:17Z","created_at":"2011-08-01T00:14:07Z","state":"closed","user":{"url":"https://api.github.com/users/bakercp","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","login":"bakercp","avatar_url":"https://secure.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":300484},"id":1320040,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/693.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/693","diff_url":"https://github.com/openframeworks/openFrameworks/pull/693.diff"}},{"updated_at":"2011-08-02T04:50:33Z","body":"it looks like Poco needs to be recompiled for OF to run on 10.5: http://forum.openframeworks.cc/index.php/topic,6351.msg32361.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/692","comments":2,"milestone":null,"number":692,"html_url":"https://github.com/openframeworks/openFrameworks/issues/692","assignee":null,"title":"007 not compiling on 10.5?","labels":[],"closed_at":"2011-08-02T04:50:33Z","created_at":"2011-07-31T19:55:28Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1319328,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2011-08-01T07:59:53Z","body":"MacOSX 10.6.8 and Windows 7 both demonstrate the same behavior - attempting to unZIP the archive as downloaded provides only the ADDONS folder - OR... delivers a file name \"openFrameworks-007-20-gfc5c3f2.zip.cpgz\" - which then does not unZIP as expected. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/691","comments":3,"milestone":null,"number":691,"html_url":"https://github.com/openframeworks/openFrameworks/issues/691","assignee":null,"title":"ZIP Wrapper does not unzip","labels":[],"closed_at":"2011-07-31T18:37:10Z","created_at":"2011-07-29T15:11:37Z","state":"closed","user":{"url":"https://api.github.com/users/notarysojac","gravatar_id":"95d9b2de090b399e8f22a30ac3ef07ae","login":"notarysojac","avatar_url":"https://secure.gravatar.com/avatar/95d9b2de090b399e8f22a30ac3ef07ae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":799437},"id":1310651,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2011-08-09T15:24:33Z","body":"closes #688","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/690","comments":1,"milestone":null,"number":690,"html_url":"https://github.com/openframeworks/openFrameworks/issues/690","assignee":null,"title":"fixed a typo with the output setting on iphone sound","labels":[],"closed_at":"2011-08-09T15:24:33Z","created_at":"2011-07-29T11:37:43Z","state":"closed","user":{"url":"https://api.github.com/users/jonbro","gravatar_id":"893ec14dc008e3774afe5841115920d6","login":"jonbro","avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1597},"id":1309486,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/690.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/690","diff_url":"https://github.com/openframeworks/openFrameworks/pull/690.diff"}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=17&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4979'), ('content-length', '32093'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"9768ee22891453bd6fad21062a499f8d"'), ('date', 'Tue, 29 May 2012 18:46:37 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-07-29T11:37:00Z","body":"closes #688","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/689","comments":1,"milestone":null,"number":689,"html_url":"https://github.com/openframeworks/openFrameworks/issues/689","assignee":null,"title":"fixed a typo with the output setting on iphone sound","labels":[],"closed_at":"2011-07-29T11:37:00Z","created_at":"2011-07-29T10:45:28Z","state":"closed","user":{"url":"https://api.github.com/users/jonbro","avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"893ec14dc008e3774afe5841115920d6","login":"jonbro","id":1597},"id":1309299,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/689","patch_url":"https://github.com/openframeworks/openFrameworks/pull/689.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/689.diff"}},{"updated_at":"2011-07-29T13:12:01Z","body":"there is a typo in ofxiphonesoundstream, patch coming in momentarily.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/688","comments":0,"milestone":null,"number":688,"html_url":"https://github.com/openframeworks/openFrameworks/issues/688","assignee":null,"title":"audio output not working on iphone","labels":[],"closed_at":"2011-07-29T13:12:01Z","created_at":"2011-07-29T10:43:17Z","state":"closed","user":{"url":"https://api.github.com/users/jonbro","avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"893ec14dc008e3774afe5841115920d6","login":"jonbro","id":1597},"id":1309289,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-08-09T15:25:14Z","body":"needed for accessing the fov of cameras if it's set somewhere else","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/687","comments":0,"milestone":null,"number":687,"html_url":"https://github.com/openframeworks/openFrameworks/issues/687","assignee":null,"title":"added getFov() to ofCamera","labels":[],"closed_at":"2011-08-09T15:25:14Z","created_at":"2011-07-28T17:51:28Z","state":"closed","user":{"url":"https://api.github.com/users/obviousjim","avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","login":"obviousjim","id":321434},"id":1304538,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/687","patch_url":"https://github.com/openframeworks/openFrameworks/pull/687.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/687.diff"}},{"updated_at":"2011-07-28T17:50:18Z","body":"otherwise there's no way to query the fov of a camera, even though you can set it.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/686","comments":0,"milestone":null,"number":686,"html_url":"https://github.com/openframeworks/openFrameworks/issues/686","assignee":null,"title":"added getFov() to ofCamera","labels":[],"closed_at":"2011-07-28T17:50:18Z","created_at":"2011-07-28T17:47:26Z","state":"closed","user":{"url":"https://api.github.com/users/obviousjim","avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","login":"obviousjim","id":321434},"id":1304516,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/686","patch_url":"https://github.com/openframeworks/openFrameworks/pull/686.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/686.diff"}},{"updated_at":"2012-03-12T13:27:45Z","body":"The error is that \"File owner\" is linked to a wrong class name: \"MyMusicView\". And this should be linked to \"MyGuiView\". It is a small error but for people with not too many experience with Interface builder can be problematic.\r\n\r\nDescribe in this forum post:\r\nhttp://forum.openframeworks.cc/index.php/topic,6279.msg32194.html#msg32194","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/683","comments":1,"milestone":null,"number":683,"html_url":"https://github.com/openframeworks/openFrameworks/issues/683","assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"title":"small bug in OF iphone example: \"iPhoneGuiExample\" ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2012-03-12T13:27:45Z","created_at":"2011-07-28T12:03:51Z","state":"closed","user":{"url":"https://api.github.com/users/mcanet","avatar_url":"https://secure.gravatar.com/avatar/e4d2b0151a843dde7b815b848170d6e9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e4d2b0151a843dde7b815b848170d6e9","login":"mcanet","id":308759},"id":1302334,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-07-29T11:43:37Z","body":"just adapted the archway :)\r\n\r\nfixes: http://forum.openframeworks.cc/index.php/topic,6864.msg32124.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/682","comments":0,"milestone":null,"number":682,"html_url":"https://github.com/openframeworks/openFrameworks/issues/682","assignee":null,"title":"fixed bug in ubuntu instell_dep script if user isn't in standard group","labels":[],"closed_at":"2011-07-29T11:43:37Z","created_at":"2011-07-27T20:18:20Z","state":"closed","user":{"url":"https://api.github.com/users/benben","avatar_url":"https://secure.gravatar.com/avatar/614a4e493d7c353296519bba720e77c5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"614a4e493d7c353296519bba720e77c5","login":"benben","id":124513},"id":1298580,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/682","patch_url":"https://github.com/openframeworks/openFrameworks/pull/682.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/682.diff"}},{"updated_at":"2011-09-11T11:30:31Z","body":"The below code works in OF 0062 but not in 007\r\n\r\nGraphicFace.h\r\n\r\n```c\r\n#pragma once\r\n\r\n#include \"ofMain.h\"\r\n\r\n\r\nclass GraphicFace {\r\npublic:\r\n\tGraphicFace();\r\n\tofImage head;\r\n\tvoid draw();\r\n};\r\n```\r\n\r\nGraphicFace.cpp\r\n\r\n```c\r\n#include \"GraphicFace.h\"\r\n\r\nGraphicFace::GraphicFace()\r\n{\r\n\thead.loadImage(\"head.png\");\r\n}\r\nvoid GraphicFace::draw()\r\n{\r\n\thead.draw(0, 0);\r\n\r\n}\r\n\r\n```\r\ntestApp.h\r\n\r\n```c\r\n#pragma once\r\n\r\n#include \"ofMain.h\"\r\n#include \"GraphicFace.h\"\r\n\r\nclass testApp : public ofBaseApp{\r\n\r\n\tpublic:\r\n\t\tvoid setup();\r\n\t\tvoid update();\r\n\t\tvoid draw();\r\n\r\n\t\tGraphicFace graphicFace;\r\n};\r\n```\r\ntestApp.cpp\r\n\r\n```c\r\nvoid testApp::draw(){\r\n\tgraphicFace.draw();\r\n}\r\n```\r\n\r\n007 displays this in Console\r\nOF: OF_LOG_ERROR: Couldn't load image from head.png\r\nOF: OF_LOG_WARNING: ofGLRenderer::draw(): texture is not allocated \r\n\r\nHere is a screen of the files to show head.png is there. Maybe there is something new I need to do in 007?\r\nhttp://i.imgur.com/ZDKow.jpg\r\n\r\n\r\nHere are my machine specs\r\nOS X 10.6.8\r\n\r\nModel Name: Mac Pro\r\nModel Identifier: MacPro1,1\r\nProcessor Name: Dual-Core Intel Xeon\r\nProcessor Speed: 2.66 GHz\r\nNumber Of Processors: 2\r\nTotal Number Of Cores: 4\r\nL2 Cache (per processor): 4 MB\r\nMemory: 7 GB\r\nBus Speed: 1.33 GHz\r\nBoot ROM Version: MP11.005C.B08\r\nSMC Version (system): 1.7f10\r\n\r\nNVIDIA GeForce 7300 GT:\r\n\r\nChipset Model: NVIDIA GeForce 7300 GT\r\nType: GPU\r\nBus: PCIe\r\nSlot: Slot-1\r\nPCIe Lane Width: x16\r\nVRAM (Total): 256 MB\r\nVendor: NVIDIA (0x10de)\r\nDevice ID: 0x0393\r\nRevision ID: 0x00a1\r\nROM Revision: 3008\r\nDisplays:\r\nCinema:\r\nResolution: 1680 x 1050\r\nPixel Depth: 32-Bit Color (ARGB8888)\r\nDisplay Serial Number: 2A7022K2UFZ\r\nMain Display: Yes\r\nMirror: Off\r\nOnline: Yes\r\nRotation: Supported\r\nBenQ FP202W:\r\nResolution: 1680 x 1050 @ 60 Hz\r\nPixel Depth: 32-Bit Color (ARGB8888)\r\nMirror: Off\r\nOnline: Yes\r\nRotation: Supported","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/681","comments":3,"milestone":null,"number":681,"html_url":"https://github.com/openframeworks/openFrameworks/issues/681","assignee":null,"title":"ofImage loadImage gets ofGLRenderer::draw(): texture is not allocated ","labels":[],"closed_at":"2011-09-11T11:30:31Z","created_at":"2011-07-26T19:45:30Z","state":"closed","user":{"url":"https://api.github.com/users/jvcleave","avatar_url":"https://secure.gravatar.com/avatar/9c0384a91739bea093f453cf40a59742?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"9c0384a91739bea093f453cf40a59742","login":"jvcleave","id":150037},"id":1291163,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-07-25T14:57:07Z","body":"The \"advanced3dExample\" contained in the \"Visual Studio 2010\" package of openFrameworks 007 does not build. The project is missing a number of source files.\r\n\r\nAdding these files to the project fixes the problem.\r\n\r\nAlso, the \"advancedEventsExample\" project is also missing a source file, but since it is a header file, it still builds successfully without it.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/680","comments":1,"milestone":null,"number":680,"html_url":"https://github.com/openframeworks/openFrameworks/issues/680","assignee":null,"title":"advanced3dExample + of007 + vs2010 does not build","labels":[],"closed_at":"2011-07-25T14:57:07Z","created_at":"2011-07-25T13:27:40Z","state":"closed","user":{"url":"https://api.github.com/users/carlosefr","avatar_url":"https://secure.gravatar.com/avatar/5d027189c1708f259ce60c0911f6cd25?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5d027189c1708f259ce60c0911f6cd25","login":"carlosefr","id":937276},"id":1281738,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-07-27T11:50:16Z","body":"Using quotation marks for 'grep -v' command to work with list of folders.\r\nWithout this, EXCLUDE_FROM_SOURCE option does not work.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/678","comments":0,"milestone":null,"number":678,"html_url":"https://github.com/openframeworks/openFrameworks/issues/678","assignee":null,"title":"Fixed makefile exclude dirs.","labels":[],"closed_at":"2011-07-27T11:50:16Z","created_at":"2011-07-24T17:20:07Z","state":"closed","user":{"url":"https://api.github.com/users/ptrv","avatar_url":"https://secure.gravatar.com/avatar/7bed46e1c078b29fad9f44f8e0a113bd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"7bed46e1c078b29fad9f44f8e0a113bd","login":"ptrv","id":49775},"id":1278069,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/678","patch_url":"https://github.com/openframeworks/openFrameworks/pull/678.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/678.diff"}},{"updated_at":"2011-07-27T11:49:38Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/677","comments":0,"milestone":null,"number":677,"html_url":"https://github.com/openframeworks/openFrameworks/issues/677","assignee":null,"title":"Added linux 32 bit fullCBP template.","labels":[],"closed_at":"2011-07-27T11:49:38Z","created_at":"2011-07-24T14:39:39Z","state":"closed","user":{"url":"https://api.github.com/users/ptrv","avatar_url":"https://secure.gravatar.com/avatar/7bed46e1c078b29fad9f44f8e0a113bd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"7bed46e1c078b29fad9f44f8e0a113bd","login":"ptrv","id":49775},"id":1277577,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/677","patch_url":"https://github.com/openframeworks/openFrameworks/pull/677.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/677.diff"}},{"updated_at":"2011-07-27T11:48:33Z","body":"Couldn't compile outside of \"apps\" directory because of those relative paths.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/675","comments":0,"milestone":null,"number":675,"html_url":"https://github.com/openframeworks/openFrameworks/issues/675","assignee":null,"title":"Replaced relative paths with OF_ROOT","labels":[],"closed_at":"2011-07-27T11:48:33Z","created_at":"2011-07-22T22:51:17Z","state":"closed","user":{"url":"https://api.github.com/users/ThomasColliers","avatar_url":"https://secure.gravatar.com/avatar/5b663c1e73eda619104004e329af097d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5b663c1e73eda619104004e329af097d","login":"ThomasColliers","id":156175},"id":1273172,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/675","patch_url":"https://github.com/openframeworks/openFrameworks/pull/675.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/675.diff"}},{"updated_at":"2011-08-01T00:12:48Z","body":"ofRectangle: Added ofPoint-based constructor to be consistent with the corresponding set(ofPoint ...) function. Updated inside() function.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/674","comments":0,"milestone":null,"number":674,"html_url":"https://github.com/openframeworks/openFrameworks/issues/674","assignee":null,"title":"ofRectangle: Added ofPoint-based constructor to be consistent with the corresponding set(ofPoint ...) function. ","labels":[],"closed_at":"2011-08-01T00:12:48Z","created_at":"2011-07-21T21:41:49Z","state":"closed","user":{"url":"https://api.github.com/users/bakercp","avatar_url":"https://secure.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","login":"bakercp","id":300484},"id":1266144,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/674","patch_url":"https://github.com/openframeworks/openFrameworks/pull/674.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/674.diff"}},{"updated_at":"2011-07-27T11:50:35Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/673","comments":0,"milestone":null,"number":673,"html_url":"https://github.com/openframeworks/openFrameworks/issues/673","assignee":null,"title":"updated arch install scripts, added arch to readme.linux","labels":[],"closed_at":"2011-07-27T11:50:35Z","created_at":"2011-07-21T17:47:26Z","state":"closed","user":{"url":"https://api.github.com/users/benben","avatar_url":"https://secure.gravatar.com/avatar/614a4e493d7c353296519bba720e77c5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"614a4e493d7c353296519bba720e77c5","login":"benben","id":124513},"id":1264713,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/673","patch_url":"https://github.com/openframeworks/openFrameworks/pull/673.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/673.diff"}},{"updated_at":"2011-07-21T16:52:34Z","body":"**needs testing**\r\n\r\n-fixed retina bug","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/672","comments":0,"milestone":null,"number":672,"html_url":"https://github.com/openframeworks/openFrameworks/issues/672","assignee":null,"title":"ofxiPhoneSoundStream","labels":[],"closed_at":"2011-07-21T16:52:34Z","created_at":"2011-07-21T16:47:21Z","state":"closed","user":{"url":"https://api.github.com/users/stfj","avatar_url":"https://secure.gravatar.com/avatar/b089227a1748a2d70cdfc4ef00b325ad?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b089227a1748a2d70cdfc4ef00b325ad","login":"stfj","id":177578},"id":1264355,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/672","patch_url":"https://github.com/openframeworks/openFrameworks/pull/672.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/672.diff"}},{"updated_at":"2011-07-21T12:34:39Z","body":"and breaks backward functionality\r\n\r\nat theo's request :)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/669","comments":0,"milestone":null,"number":669,"html_url":"https://github.com/openframeworks/openFrameworks/issues/669","assignee":null,"title":"ofSplitString now works like Processing and PHP's explode()","labels":[],"closed_at":"2011-07-21T12:34:39Z","created_at":"2011-07-21T04:45:37Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":1261065,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/669","patch_url":"https://github.com/openframeworks/openFrameworks/pull/669.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/669.diff"}},{"updated_at":"2011-09-11T11:27:24Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/668","comments":2,"milestone":null,"number":668,"html_url":"https://github.com/openframeworks/openFrameworks/issues/668","assignee":null,"title":"\t\tofURLFileLoader loader; errors in constructor if created at top of testApp.cpp - ofLog factory try catch issue","labels":[],"closed_at":"2011-09-11T11:27:24Z","created_at":"2011-07-20T22:03:11Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":1259589,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-07-20T20:57:06Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/667","comments":0,"milestone":null,"number":667,"html_url":"https://github.com/openframeworks/openFrameworks/issues/667","assignee":null,"title":"simplified and expanded the osx readme","labels":[],"closed_at":"2011-07-20T20:57:06Z","created_at":"2011-07-20T20:50:56Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":1259146,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/667","patch_url":"https://github.com/openframeworks/openFrameworks/pull/667.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/667.diff"}},{"updated_at":"2011-07-19T23:58:01Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/665","comments":0,"milestone":null,"number":665,"html_url":"https://github.com/openframeworks/openFrameworks/issues/665","assignee":null,"title":"fixing short + float for the changes to ofTexture","labels":[],"closed_at":"2011-07-19T23:58:01Z","created_at":"2011-07-19T23:57:13Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":1253379,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/665","patch_url":"https://github.com/openframeworks/openFrameworks/pull/665.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/665.diff"}},{"updated_at":"2011-07-20T13:04:58Z","body":"a few issues though that make it different than the normal ofVideoPlayer\r\n\r\n- it can't loop. if you need it to loop you can do something like:\r\n\r\nif(!fingerMovie.isPlaying()){\r\n\t\tfingerMovie.loadMovie(\"fingers.mov\");\r\n\t\tfingerMovie.play();\r\n}\r\n\r\nbut i didn't want to put that in because it definitely pauses when it unloads the video\r\n\r\n- getPixels() returns NULL sometimes. This is because the actual pixel array is malloced once the file has actually been loaded in. Not even the width or height are known until this has happened. They cannot be set independently. This could cause issues in getting pixels and expecting them to be there. the proper way to deal with this would be to use getWidth() and getHeight() instead of the static values that you know the video to be:\r\n\r\nunsigned char * pixels = fingerMovie.getPixels();\r\n\r\n\t\tfor (int i = 4; i < fingerMovie.getWidth(); i+=8){\r\n\t\t\tfor (int j = 4; j < fingerMovie.getHeight(); j+=8){\r\n\t\t\t\tunsigned char r = pixels[(j * 320 + i)*3];\r\n\t\t\t\tfloat val = 1 - ((float)r / 255.0f);\r\n\t\t\t\tofCircle(i,j,10*val);\r\n\t\t\t}\r\n\t\t}\r\n\r\n- lastly, movies are inverted, but it seemed like arturo was on this as it's a ofTexture issue","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/664","comments":0,"milestone":null,"number":664,"html_url":"https://github.com/openframeworks/openFrameworks/issues/664","assignee":null,"title":"ofiPhoneVideoPlayer","labels":[],"closed_at":"2011-07-20T13:04:58Z","created_at":"2011-07-19T20:00:12Z","state":"closed","user":{"url":"https://api.github.com/users/stfj","avatar_url":"https://secure.gravatar.com/avatar/b089227a1748a2d70cdfc4ef00b325ad?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b089227a1748a2d70cdfc4ef00b325ad","login":"stfj","id":177578},"id":1251860,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/664","patch_url":"https://github.com/openframeworks/openFrameworks/pull/664.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/664.diff"}},{"updated_at":"2011-07-19T17:47:10Z","body":"fixes seriously broken retina support","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/663","comments":1,"milestone":null,"number":663,"html_url":"https://github.com/openframeworks/openFrameworks/issues/663","assignee":null,"title":"retina fixes, + updates to deploy projects files, though you may have already reworked that since we talked theo","labels":[],"closed_at":"2011-07-19T17:47:10Z","created_at":"2011-07-19T17:36:16Z","state":"closed","user":{"url":"https://api.github.com/users/stfj","avatar_url":"https://secure.gravatar.com/avatar/b089227a1748a2d70cdfc4ef00b325ad?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b089227a1748a2d70cdfc4ef00b325ad","login":"stfj","id":177578},"id":1250872,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/663","patch_url":"https://github.com/openframeworks/openFrameworks/pull/663.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/663.diff"}},{"updated_at":"2011-07-20T12:24:37Z","body":"Hi!\r\nI built the current head, and Eclipse throws 12 warnings. Some are obviously false positives of the code indexer, but some seem to be genuine problems which could trigger bugs. I will leave them for discussion and possible fix by the original authors, cause I'm sometimes not sure what the intended behaviour is. After successful discussion, I can form up some pull requests if nobody else does.\r\n\r\n1) `‘srcColor’ may be used uninitialized in this function\tofPixels.cpp\t/openFrameworks/graphics\tline 672`\r\nI'm sure this is a bug, since, if the `if` in L707 does not trigger, in L710 we have an uninitialised `srcColor`. I will file a fix, initialise to 0, later.\r\n\r\n2) `converting to non-pointer type ‘pthread_t’ from NULL\tofThread.cpp\t/openFrameworks/utils\tline 110`\r\nprobably not problematic?\r\n\r\n3) `dereferencing type-punned pointer will break strict-aliasing rules\tofUtils.cpp\t/openFrameworks/utils\tline 342` \r\nSame in L441. Don't even know what that means...\r\n\r\n4) `enumeration value ‘PNG’ not handled in switch\tofCairoRenderer.cpp\t/openFrameworks/graphics\tline 41`\r\nPretty clearly a bug, there's no case for PNG, and not default case. Question is: What should be done if a PNG case is triggered?\r\n\r\n5) `Invalid project path: Duplicate path entries found (/openFrameworks [Output path]), path: [/openFrameworks].\topenFrameworks\t\tpathentry`\r\nFrom what I read, some leftover path somewhere in the project files, but I have no idea how to locate that. According to the internet, nothing tragic.\r\n\r\n6) `unused variable ‘len’\tofUtils.cpp\t/openFrameworks/utils\tline 585`\r\nYes, an unused return variable is not tragic, but why does it get incremented by one, and then remains unused afterwards? That does not make sense.\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/662","comments":6,"milestone":null,"number":662,"html_url":"https://github.com/openframeworks/openFrameworks/issues/662","assignee":null,"title":"Eclipse build warnings - possible bugs","labels":[],"closed_at":"2011-07-19T17:13:37Z","created_at":"2011-07-19T17:05:52Z","state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":1250671,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-07-19T14:30:36Z","body":"First commit removes superfluous/wrong include paths - those get added by the toolchain anyway. Otherwise, I get a build warning `Invalid project path: Include path not found (/usr/include/c++/4.5/x86_64-linux-gnu)` on a 32bit system.\r\nReferences: https://github.com/openframeworks/openFrameworks/commit/5c869c4799cc6e95cc685fd269afa6a8afb61722\r\nhttps://github.com/openframeworks/openFrameworks/commit/596524722f3924d5fc87a3af5672e6d6ae19a4b8#libs/openFrameworks/.cproject-P5\r\n\r\nSecond commit, I'm not sure about the proper way to reference the projects among each other, so feel free to leave those out. \r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/661","comments":1,"milestone":null,"number":661,"html_url":"https://github.com/openframeworks/openFrameworks/issues/661","assignee":null,"title":"Fix eclipse include paths and project reference","labels":[],"closed_at":"2011-07-19T14:30:24Z","created_at":"2011-07-19T14:26:18Z","state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":1249645,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/661","patch_url":"https://github.com/openframeworks/openFrameworks/pull/661.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/661.diff"}},{"updated_at":"2011-07-20T00:06:02Z","body":"Now when clients disconnect and reconnect, the TCPServer will re-use the disconnected ID as opposed to incrementing it and adding a new one","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/660","comments":0,"milestone":null,"number":660,"html_url":"https://github.com/openframeworks/openFrameworks/issues/660","assignee":null,"title":"Reclaiming client id's","labels":[],"closed_at":"2011-07-20T00:06:02Z","created_at":"2011-07-19T12:02:37Z","state":"closed","user":{"url":"https://api.github.com/users/obviousjim","avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","login":"obviousjim","id":321434},"id":1248886,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/660","patch_url":"https://github.com/openframeworks/openFrameworks/pull/660.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/660.diff"}},{"updated_at":"2011-07-19T13:56:52Z","body":"See underdoeg's observation [here](http://forum.openframeworks.cc/index.php/topic,6766.msg31842.html#msg31842).\r\nI browsed through the makefile, and I think that maybe [this](https://github.com/openframeworks/openFrameworks/blob/master/apps/devApps/linux/Makefile#L139) section is the culprit - there's no check to see if addons.make is non-empty, therefore nonsensical `ADDONS_REL_DIRS` etc. get created. \r\nUnfortunately, I'm not confident enough with my make-fu to fix it myself. :-(","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/659","comments":0,"milestone":null,"number":659,"html_url":"https://github.com/openframeworks/openFrameworks/issues/659","assignee":null,"title":"Empty addons.make file causes error in the build process","labels":[],"closed_at":"2011-07-19T13:56:52Z","created_at":"2011-07-19T11:23:32Z","state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":1248717,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-07-19T10:50:18Z","body":"ofFileUtils/ofBuffer: getNextLine() now handles LF, CR, and CRLF. Added resetLineReader() method. Made integer casts consistent (i.e. changed int(...) to (int)(...)). Made if( ... ) and while ( ... ) statement spacing consistent.\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/658","comments":2,"milestone":null,"number":658,"html_url":"https://github.com/openframeworks/openFrameworks/issues/658","assignee":null,"title":"ofFileUtils/ofBuffer: getNextLine() now handles LF, CR, and CRLF. Added resetLineReader() method.","labels":[],"closed_at":"2011-07-19T10:49:15Z","created_at":"2011-07-19T01:51:15Z","state":"closed","user":{"url":"https://api.github.com/users/bakercp","avatar_url":"https://secure.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","login":"bakercp","id":300484},"id":1246834,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/658","patch_url":"https://github.com/openframeworks/openFrameworks/pull/658.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/658.diff"}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=18&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4978'), ('content-length', '28581'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"239ec1422615ad2c6da7efd55f77b7ae"'), ('date', 'Tue, 29 May 2012 18:46:38 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-07-18T18:26:50Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/657","comments":0,"milestone":null,"number":657,"html_url":"https://github.com/openframeworks/openFrameworks/issues/657","assignee":null,"title":"minor changes while checking c::b","labels":[],"closed_at":"2011-07-18T18:26:50Z","created_at":"2011-07-18T16:16:45Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1243018,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/657.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/657","patch_url":"https://github.com/openframeworks/openFrameworks/pull/657.patch"}},{"updated_at":"2011-07-19T11:25:52Z","body":"Hi!\r\nI just looked at the space requirements of my (compiled) github openFrameworks install. \r\n\r\nLooking at the addons directory, I saw that of the 338MB size of the (stock) addons directory, 274MB were occupied by OpenCV alone. Now I realise that it's a very nice addon, but seeing that it's got its own repository on the official oF github page, would it maybe make sense to not pack it, and save significant space in the install package?\r\n\r\nTo get a feeling, my oF git clone, having been compiled on both 32bit and 64bit Linux, is 1.4GB big. The biggest contributors are libs (478MB), .git (467MB), addons (338MB, of which 274MB is openCV).","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/656","comments":2,"milestone":null,"number":656,"html_url":"https://github.com/openframeworks/openFrameworks/issues/656","assignee":null,"title":"OpenCV space requirements - do we need to package it?","labels":[],"closed_at":"2011-07-19T11:25:52Z","created_at":"2011-07-18T15:03:28Z","state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1242131,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-18T19:17:43Z","body":"Scripts are now working and ready to go. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/655","comments":1,"milestone":null,"number":655,"html_url":"https://github.com/openframeworks/openFrameworks/issues/655","assignee":null,"title":"Finalised Codeblocks scripts","labels":[],"closed_at":"2011-07-18T19:17:15Z","created_at":"2011-07-18T13:53:17Z","state":"closed","user":{"url":"https://api.github.com/users/pierrep","gravatar_id":"be11c9de8242e7aef0446eceaa289e01","login":"pierrep","id":392160,"avatar_url":"https://secure.gravatar.com/avatar/be11c9de8242e7aef0446eceaa289e01?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1241662,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/655.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/655","patch_url":"https://github.com/openframeworks/openFrameworks/pull/655.patch"}},{"updated_at":"2011-07-19T12:01:20Z","body":"Added function to set the end of message delimiter for the TCP server and client.\r\n\r\nThis is really helpful for making send() and receive() work with other systems that expect different types of message ends. \r\n\r\nThe change maintains backwards compatibly with existing OF networking code. Hoping to sneak this into oF 007.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/654","comments":2,"milestone":null,"number":654,"html_url":"https://github.com/openframeworks/openFrameworks/issues/654","assignee":null,"title":"ability to change delimiter for ofxTCPClient / Server","labels":[],"closed_at":"2011-07-19T12:01:20Z","created_at":"2011-07-18T11:30:06Z","state":"closed","user":{"url":"https://api.github.com/users/obviousjim","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","login":"obviousjim","id":321434,"avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1241038,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/654.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/654","patch_url":"https://github.com/openframeworks/openFrameworks/pull/654.patch"}},{"updated_at":"2012-03-27T04:09:16Z","body":"MacPro1,1\r\nATI Radeon X1900 XT:\r\n\r\nUsing this code\r\n\r\n```c++\r\nvoid testApp::setup(){\r\n\tofSetLogLevel(OF_LOG_VERBOSE);\r\n\tfboObject.allocate(500, 500);\r\n}\r\n```\r\nConsole reads\r\nOF: OF_LOG_NOTICE: ofFbo::checkGLSupport()\r\nmaxColorAttachments: 4\r\nmaxDrawBuffers: 4\r\nmaxSamples: 6\r\n\r\nI get a EXC_BAD_ACCESS error on line 370 of ofFBO.cpp\r\n\r\nHere is a screenshot of the debugger\r\nhttp://imbx.us/Xld.png\r\n\r\nanother with ofFBO::Settings expanded\r\nhttp://imbx.us/X9f1.png\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/653","comments":26,"milestone":null,"number":653,"html_url":"https://github.com/openframeworks/openFrameworks/issues/653","assignee":null,"title":"ofFBO crashing on allocate","labels":[],"closed_at":"2011-07-19T16:37:22Z","created_at":"2011-07-18T05:53:28Z","state":"closed","user":{"url":"https://api.github.com/users/jvcleave","gravatar_id":"9c0384a91739bea093f453cf40a59742","login":"jvcleave","id":150037,"avatar_url":"https://secure.gravatar.com/avatar/9c0384a91739bea093f453cf40a59742?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1239898,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-15T13:05:13Z","body":"missing checks was causing crashes on backthreads\r\n\r\nalso made consistent and took out unneeded '== true' checks","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/650","comments":0,"milestone":null,"number":650,"html_url":"https://github.com/openframeworks/openFrameworks/issues/650","assignee":null,"title":"added checks for bUseTexture in ofImage","labels":[],"closed_at":"2011-07-15T13:05:13Z","created_at":"2011-07-15T08:53:00Z","state":"closed","user":{"url":"https://api.github.com/users/obviousjim","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","login":"obviousjim","id":321434,"avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1229132,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/650.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/650","patch_url":"https://github.com/openframeworks/openFrameworks/pull/650.patch"}},{"updated_at":"2011-07-15T13:03:54Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/649","comments":0,"milestone":null,"number":649,"html_url":"https://github.com/openframeworks/openFrameworks/issues/649","assignee":null,"title":"A handful of small ofTrueTypeFont fixes / updates.","labels":[],"closed_at":"2011-07-15T13:03:54Z","created_at":"2011-07-15T02:05:51Z","state":"closed","user":{"url":"https://api.github.com/users/bakercp","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","login":"bakercp","id":300484,"avatar_url":"https://secure.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1227955,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/649.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/649","patch_url":"https://github.com/openframeworks/openFrameworks/pull/649.patch"}},{"updated_at":"2011-07-14T17:39:48Z","body":"in order to help integrating it into the rest of the drawables i think it makes sense for the fbo to extend these two classes.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/648","comments":1,"milestone":null,"number":648,"html_url":"https://github.com/openframeworks/openFrameworks/issues/648","assignee":null,"title":"ofFbo extends ofBaseDraws and ofBaseHasTexture","labels":[],"closed_at":"2011-07-14T17:39:21Z","created_at":"2011-07-14T17:37:02Z","state":"closed","user":{"url":"https://api.github.com/users/obviousjim","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","login":"obviousjim","id":321434,"avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1224637,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/648.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/648","patch_url":"https://github.com/openframeworks/openFrameworks/pull/648.patch"}},{"updated_at":"2011-07-14T16:42:24Z","body":"like the title says....\r\n\r\nI'm back baby!","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/647","comments":1,"milestone":null,"number":647,"html_url":"https://github.com/openframeworks/openFrameworks/issues/647","assignee":null,"title":"removed a bunch of .DS_Store files from the rep","labels":[],"closed_at":"2011-07-14T16:42:16Z","created_at":"2011-07-14T16:38:04Z","state":"closed","user":{"url":"https://api.github.com/users/memo","gravatar_id":"b5c0e3c2630097b29680cfeda464024c","login":"memo","id":144230,"avatar_url":"https://secure.gravatar.com/avatar/b5c0e3c2630097b29680cfeda464024c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1224318,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/647.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/647","patch_url":"https://github.com/openframeworks/openFrameworks/pull/647.patch"}},{"updated_at":"2011-07-14T22:30:46Z","body":"The current implementation uses `TARGET_*` macros to determine which `OF_SOUND_PLAYER_*` macro to define and as a result which audio backend to use. This patch makes it so that if a `OF_SOUND_PLAYER_*` macro is defined beforehand, it is taken as authoritative and no further checking is done. It makes it possible to force an audio backend if needed.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/644","comments":5,"milestone":null,"number":644,"html_url":"https://github.com/openframeworks/openFrameworks/issues/644","assignee":null,"title":"Make ofSoundPlayer's choice of backend overrideable","labels":[],"closed_at":"2011-07-14T18:37:06Z","created_at":"2011-07-12T14:57:33Z","state":"closed","user":{"url":"https://api.github.com/users/nasser","gravatar_id":"c9449359b1c46fd095d70f7ddb6aff2e","login":"nasser","id":412966,"avatar_url":"https://secure.gravatar.com/avatar/c9449359b1c46fd095d70f7ddb6aff2e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1208975,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/644.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/644","patch_url":"https://github.com/openframeworks/openFrameworks/pull/644.patch"}},{"updated_at":"2011-07-11T21:55:33Z","body":"i just pulled from upstream noticed i've slightly diverged. there were a couple little fixes i had for windows that hadn't been pulled it seems.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/641","comments":1,"milestone":null,"number":641,"html_url":"https://github.com/openframeworks/openFrameworks/issues/641","assignee":null,"title":"fixing some windows issues, other issues","labels":[],"closed_at":"2011-07-11T21:46:46Z","created_at":"2011-07-11T19:45:50Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1203852,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/641.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/641","patch_url":"https://github.com/openframeworks/openFrameworks/pull/641.patch"}},{"updated_at":"2011-07-20T13:05:26Z","body":"Latest version of xmlSettingsExample with the touch methods was missing the multitouch set-up.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/640","comments":2,"milestone":null,"number":640,"html_url":"https://github.com/openframeworks/openFrameworks/issues/640","assignee":null,"title":"Add missing multitouch set-up to the xmlSettingsExample testApp","labels":[],"closed_at":"2011-07-20T13:05:26Z","created_at":"2011-07-11T13:25:38Z","state":"closed","user":{"url":"https://api.github.com/users/gwydionapdafydd","gravatar_id":"72620270b0d72c728e6948bb3c783774","login":"gwydionapdafydd","id":649628,"avatar_url":"https://secure.gravatar.com/avatar/72620270b0d72c728e6948bb3c783774?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1201474,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/640.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/640","patch_url":"https://github.com/openframeworks/openFrameworks/pull/640.patch"}},{"updated_at":"2011-07-11T13:18:39Z","body":"Vertex data is not copied from mesh:\r\n\r\nFix:\r\nhttps://gist.github.com/ab64c7ca0b4f77313c42\r\n\r\nTest code:\r\ntestApp.h: https://gist.github.com/8b5b7637cd7ec5e90721\r\ntestApp.cpp: https://gist.github.com/1075760\r\n\r\n\r\nAlso rename \"getIndexPointer\" to \"getIndicesPointer()\", all other \"get[x]Pointer\" use plural.\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/639","comments":0,"milestone":null,"number":639,"html_url":"https://github.com/openframeworks/openFrameworks/issues/639","assignee":null,"title":"ofVbo::setMesh does not set index data + naming thingie","labels":[],"closed_at":"2011-07-11T13:18:39Z","created_at":"2011-07-11T12:37:53Z","state":"closed","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","id":358809,"avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1201259,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-12T14:22:59Z","body":"Would be more clear to use both getTextureReference()","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/638","comments":2,"milestone":null,"number":638,"html_url":"https://github.com/openframeworks/openFrameworks/issues/638","assignee":null,"title":"ofFbo::getTexture <-> ofImage::getTextureReference","labels":[],"closed_at":"2011-07-12T14:22:59Z","created_at":"2011-07-11T11:51:04Z","state":"closed","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","id":358809,"avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1201069,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T00:26:59Z","body":"`ofQuicktimeSoundPlayer.h` is `#include`d in `ofSoundPlayer.h`, but the actual header and implementation files are nowhere in the `libs/openFrameworks` tree. \r\n\r\n`ofSoundPlayer.h` lines 48-51.\r\n\r\n```cpp\r\n#ifdef OF_SOUND_PLAYER_QUICKTIME\r\n#include \"ofQuicktimeSoundPlayer.h\"\r\n#define OF_SOUND_PLAYER_TYPE ofQuicktimeSoundPlayer\r\n#endif\r\n```\r\n\r\nThere is an ofQuicktimeSoundPlayer.h/.cpp in `apps/devApps/goodByeFMODExample` that seem to work fine (its what I use in [zajal](http://zajal.cc) to play back sounds). This commit copies those files into `libs/openFrameworks/sound/` so that `OF_SOUND_PLAYER_QUICKTIME` can be used.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/637","comments":2,"milestone":null,"number":637,"html_url":"https://github.com/openframeworks/openFrameworks/issues/637","assignee":null,"title":"ofQuicktimeSoundPlayer","labels":[],"closed_at":"2012-02-25T00:26:51Z","created_at":"2011-07-11T11:32:15Z","state":"closed","user":{"url":"https://api.github.com/users/nasser","gravatar_id":"c9449359b1c46fd095d70f7ddb6aff2e","login":"nasser","id":412966,"avatar_url":"https://secure.gravatar.com/avatar/c9449359b1c46fd095d70f7ddb6aff2e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1200989,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/637.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/637","patch_url":"https://github.com/openframeworks/openFrameworks/pull/637.patch"}},{"updated_at":"2011-07-11T13:10:11Z","body":"Hope this is ok to do... have a fix in the iPhoneAddonsExamples/xmlSettingsExample that I wanted to share, so need to edit the apps/.gitignore first","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/636","comments":4,"milestone":null,"number":636,"html_url":"https://github.com/openframeworks/openFrameworks/issues/636","assignee":null,"title":"Exclude iPhoneAddonsExamples from the apps folder .gitignore","labels":[],"closed_at":"2011-07-11T13:10:00Z","created_at":"2011-07-11T10:47:50Z","state":"closed","user":{"url":"https://api.github.com/users/gwydionapdafydd","gravatar_id":"72620270b0d72c728e6948bb3c783774","login":"gwydionapdafydd","id":649628,"avatar_url":"https://secure.gravatar.com/avatar/72620270b0d72c728e6948bb3c783774?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1200829,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/636.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/636","patch_url":"https://github.com/openframeworks/openFrameworks/pull/636.patch"}},{"updated_at":"2011-07-11T13:32:53Z","body":"^^^^","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/635","comments":0,"milestone":null,"number":635,"html_url":"https://github.com/openframeworks/openFrameworks/issues/635","assignee":null,"title":"ofMaterial.h not included by default","labels":[],"closed_at":"2011-07-11T13:32:53Z","created_at":"2011-07-11T09:57:35Z","state":"closed","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","id":358809,"avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1200636,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-11T13:18:39Z","body":"Here is a fix:\r\nhttps://gist.github.com/1075582","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/634","comments":0,"milestone":null,"number":634,"html_url":"https://github.com/openframeworks/openFrameworks/issues/634","assignee":null,"title":"ofLight::set[*]Color are not setting the colors","labels":[],"closed_at":"2011-07-11T13:18:39Z","created_at":"2011-07-11T09:17:18Z","state":"closed","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","id":358809,"avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1200465,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-10T20:52:21Z","body":"\r\nNot a big deal, but odd nonetheless.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/633","comments":2,"milestone":null,"number":633,"html_url":"https://github.com/openframeworks/openFrameworks/issues/633","assignee":null,"title":"the base template for the DeployExamples has opencv includes in it","labels":[],"closed_at":"2011-07-10T20:50:57Z","created_at":"2011-07-10T15:02:17Z","state":"closed","user":{"url":"https://api.github.com/users/joshuajnoble","gravatar_id":"10960ba0f305803a1cdc7cd6188d643b","login":"joshuajnoble","id":237423,"avatar_url":"https://secure.gravatar.com/avatar/10960ba0f305803a1cdc7cd6188d643b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1197698,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/633.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/633","patch_url":"https://github.com/openframeworks/openFrameworks/pull/633.patch"}},{"updated_at":"2011-07-08T17:37:49Z","body":"Hei.\r\nI have detected that of doesn't compiles in MAC OSX.\r\nI am in 10.6\r\nI am using the master\r\nI spouse that some changes have beenn made in quicktime library.\r\n\r\nthat is the error at get\r\n\r\nI have detected also that there is not Xcode project in most of the examples.\r\n\r\nThanks\r\n\r\nopenFrameworks\r\n/Users/juliolucio/Documents/_My Code_/XCode Projects/openFrameworks/libs/openFrameworks/video/ofQuickTimeGrabber.cpp\r\n'MacSetRect' was not declared in this scope\r\n'GetGWorldPixMap' was not declared in this scope\r\n'LockPixels' was not declared in this scope\r\n'SetGWorld' was not declared in this scope\r\n/Users/juliolucio/Documents/_My Code_/XCode Projects/openFrameworks/libs/openFrameworks/video/ofQuickTimePlayer.cpp\r\n'DisposeGWorld' was not declared in this scope\r\n'GetGWorldPixMap' was not declared in this scope\r\n'LockPixels' was not declared in this scope\r\n'SetGWorld' was not declared in this scope\r\n'DisposeGWorld' was not declared in this scope","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/632","comments":2,"milestone":null,"number":632,"html_url":"https://github.com/openframeworks/openFrameworks/issues/632","assignee":null,"title":"openframeworks lib not compiling","labels":[],"closed_at":"2011-07-08T17:37:49Z","created_at":"2011-07-08T17:26:12Z","state":"closed","user":{"url":"https://api.github.com/users/juliolucio","gravatar_id":"01004afde74eb6d67c920c4b9c878239","login":"juliolucio","id":356169,"avatar_url":"https://secure.gravatar.com/avatar/01004afde74eb6d67c920c4b9c878239?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1191360,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-08T17:43:12Z","body":"When passing a width and height bigger then the cropped-from image you get garbage data in the image.\r\n\r\nTest code: \r\nhttps://gist.github.com/bc6dfc5e0f27a7bee8c8\r\n\r\n\r\n... and I'm off again... doing some bughunting.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/630","comments":1,"milestone":null,"number":630,"html_url":"https://github.com/openframeworks/openFrameworks/issues/630","assignee":null,"title":"ofImage::cropFrom() needs a size check ","labels":[],"closed_at":"2011-07-08T17:43:12Z","created_at":"2011-07-07T21:30:33Z","state":"closed","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","id":358809,"avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1185298,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-08T18:01:33Z","body":"When you render to a PDF and you don't call ofSetColor first the shape (i only tested ofCircle) is not rendered. Adding a call to ofSetColor before ofCircle works. \r\n\r\nTest code\r\nhttps://gist.github.com/417b767770e524f11add","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/629","comments":0,"milestone":null,"number":629,"html_url":"https://github.com/openframeworks/openFrameworks/issues/629","assignee":null,"title":"render to PDF without call to ofSetColor doesnt render circle","labels":[],"closed_at":"2011-07-08T18:01:33Z","created_at":"2011-07-07T20:17:12Z","state":"closed","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","id":358809,"avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1184834,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-08T18:12:40Z","body":"hi\r\n\r\nto get opencv to compile, I had to add one line to the opencv code. found the solution throughout the internet and don't know how we should handle bugfixes which are not directly in OF ? And I also don't know whats happening on mac/win with this line.\r\nhere is the diff\r\n\r\n diff --git a/addons/ofxOpenCv/libs/opencv/include/opencv2/core/core.hpp b/addons/ofxOpenCv/libs/open\r\n index 338d53b..50356e2 100755\r\n --- a/addons/ofxOpenCv/libs/opencv/include/opencv2/core/core.hpp\r\n +++ b/addons/ofxOpenCv/libs/opencv/include/opencv2/core/core.hpp\r\n @@ -74,6 +74,7 @@ namespace cv {\r\n \r\n using std::vector;\r\n using std::string;\r\n +using std::ptrdiff_t;\r\n \r\n template class CV_EXPORTS Size_;\r\n template class CV_EXPORTS Point_;","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/628","comments":0,"milestone":null,"number":628,"html_url":"https://github.com/openframeworks/openFrameworks/issues/628","assignee":null,"title":"opencv doesn't compile (at least on archlinux)","labels":[],"closed_at":"2011-07-08T18:12:40Z","created_at":"2011-07-07T07:47:41Z","state":"closed","user":{"url":"https://api.github.com/users/benben","gravatar_id":"614a4e493d7c353296519bba720e77c5","login":"benben","id":124513,"avatar_url":"https://secure.gravatar.com/avatar/614a4e493d7c353296519bba720e77c5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1180596,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-06T21:16:51Z","body":"see title","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/627","comments":0,"milestone":null,"number":627,"html_url":"https://github.com/openframeworks/openFrameworks/issues/627","assignee":null,"title":"ofFilePath::getFilename <> ofFile::getFileName, name clash","labels":[],"closed_at":"2011-07-06T21:16:51Z","created_at":"2011-07-06T21:12:10Z","state":"closed","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","id":358809,"avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1176801,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-09T14:07:50Z","body":"1) ofLog() calls are not stored in the log file.\r\n2) ofLogVerbose(), ofLogNotice(), ofLogWarning(), ofLogError(), ofLogFatalError() do log to a file, but the file is not appended.\r\n3) The message <> level of ofLogVerbose, ofLogWarning, etc.. is different then ofLog\r\n\r\nSee:\r\nhttps://gist.github.com/1068321\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/626","comments":0,"milestone":null,"number":626,"html_url":"https://github.com/openframeworks/openFrameworks/issues/626","assignee":null,"title":"ofLog() doesnt log to file, ofLogVerbose, ofLogWarning* does; not appended","labels":[],"closed_at":"2011-07-09T14:07:50Z","created_at":"2011-07-06T21:07:06Z","state":"closed","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","id":358809,"avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1176772,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=19&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4977'), ('content-length', '32311'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"ac442e01b28d5423488f9df5041237be"'), ('date', 'Tue, 29 May 2012 18:46:39 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-07-06T19:25:10Z","body":"Creating a blocking thread does not block. \r\n\r\nhttps://gist.github.com/1068050","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/625","comments":2,"milestone":null,"number":625,"html_url":"https://github.com/openframeworks/openFrameworks/issues/625","assignee":null,"title":"ofThead::startThread(true,true) - blocking thread does not block","labels":[],"closed_at":"2011-07-06T19:19:38Z","created_at":"2011-07-06T19:06:09Z","state":"closed","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","id":358809,"avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1175978,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-09T14:09:23Z","body":"Creating a blocking thread does not block. \r\n\r\nhttps://gist.github.com/1068050","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/624","comments":0,"milestone":null,"number":624,"html_url":"https://github.com/openframeworks/openFrameworks/issues/624","assignee":null,"title":"ofThead::startThread(true,true) - blocking thread does not block","labels":[],"closed_at":"2011-07-09T14:09:23Z","created_at":"2011-07-06T19:06:06Z","state":"closed","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","id":358809,"avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1175977,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-06T10:19:36Z","body":"Two wizards, each doing the same thing but with slightly different scripts.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/622","comments":0,"milestone":null,"number":622,"html_url":"https://github.com/openframeworks/openFrameworks/issues/622","assignee":null,"title":"Added Linux and Windows codeblocks wizards to script folder","labels":[],"closed_at":"2011-07-06T10:19:36Z","created_at":"2011-07-06T08:12:48Z","state":"closed","user":{"url":"https://api.github.com/users/pierrep","gravatar_id":"be11c9de8242e7aef0446eceaa289e01","login":"pierrep","id":392160,"avatar_url":"https://secure.gravatar.com/avatar/be11c9de8242e7aef0446eceaa289e01?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1172547,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/622.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/622","patch_url":"https://github.com/openframeworks/openFrameworks/pull/622.patch"}},{"updated_at":"2011-07-06T11:43:29Z","body":"nothing structural. once the release happens i'll switch back to using branches ;)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/621","comments":0,"milestone":null,"number":621,"html_url":"https://github.com/openframeworks/openFrameworks/issues/621","assignee":null,"title":"ofSplitString bug fix + a few other things","labels":[],"closed_at":"2011-07-06T11:43:29Z","created_at":"2011-07-06T04:46:18Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1171930,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/621.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/621","patch_url":"https://github.com/openframeworks/openFrameworks/pull/621.patch"}},{"updated_at":"2011-07-06T16:23:36Z","body":"Continuing my bug hunting party here :)\r\n\r\nThis piece of code:\r\n----------------------------\r\n\tstring items = \"one|two|three|four|five |||test|\";\r\n\tvector parts = ofSplitString(items,\"|\",true,true);\r\n\tfor(int i = 0; i < parts.size(); ++i) {\r\n\t\tcout << \"part: '\" << parts[i] << \"'\" << endl;\r\n\t}\r\n\r\nGives me this\r\n-------------------\r\npart: 'one'\r\npart: 'two'\r\npart: 'three'\r\npart: 'four'\r\npart: 'five'\r\npart: 'test'\r\npart: ''\r\n\r\nBut I would expect:\r\n---------------------------\r\npart: 'one'\r\npart: 'two'\r\npart: 'three'\r\npart: 'four'\r\npart: 'five'\r\npart: 'test'\r\n\r\n\r\nGreetz! \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/620","comments":1,"milestone":null,"number":620,"html_url":"https://github.com/openframeworks/openFrameworks/issues/620","assignee":null,"title":"ofSplitString - delimiter at end gives incorrect result ","labels":[],"closed_at":"2011-07-06T16:23:36Z","created_at":"2011-07-05T21:07:29Z","state":"closed","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","id":358809,"avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1170163,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-09T16:01:01Z","body":"^^^ There is a ifdef in ofCamera which skips using the ortho. I suppose this should set the ortho. I saw it's possible to set what kind of ortho one wants to use; it's common to use a top left or centered orho matrix. ofMatrix4x4 already has a orho functions which can be used.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/619","comments":2,"milestone":null,"number":619,"html_url":"https://github.com/openframeworks/openFrameworks/issues/619","assignee":null,"title":"ofCamera::setOrtho() no implemention when not GLES","labels":[],"closed_at":"2011-07-09T14:53:16Z","created_at":"2011-07-05T18:26:19Z","state":"closed","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","id":358809,"avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1169049,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-06T19:32:52Z","body":"At least in Fedora 15, seems like an update to ld now requires libraries to be linked explicitly. The example apps do not compile properly now as is. The appropriate library tags needed to be add to the makefile.\r\n\r\nFor example:\r\n\r\n/usr/bin/ld: /usr/lib/gcc/i686-redhat-linux/4.6.0/../../../libgio-2.0.so: undefined reference to symbol 'inflateInit2_'\r\n/usr/bin/ld: note: 'inflateInit2_' is defined in DSO /lib/libz.so.1 so try adding it to the linker command line\r\n/lib/libz.so.1: could not read symbols: Invalid operation\r\ncollect2: ld returned 1 exit status\r\nmake: *** [bin/advanced3dExample] Error 1\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/617","comments":2,"milestone":null,"number":617,"html_url":"https://github.com/openframeworks/openFrameworks/issues/617","assignee":null,"title":"Linux makefiles now need to link libraries explicitly","labels":[],"closed_at":"2011-07-06T19:32:49Z","created_at":"2011-07-05T17:16:40Z","state":"closed","user":{"url":"https://api.github.com/users/mbliu","gravatar_id":"01b6b14da92a35f264899f1e72756fed","login":"mbliu","id":885503,"avatar_url":"https://secure.gravatar.com/avatar/01b6b14da92a35f264899f1e72756fed?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1168628,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-03T11:02:59Z","body":"Running ofProject create on a fresh install creates the following error:\r\n\r\n\r\nbase@base-nix:~/dev/gitMINE/openFrameworks/apps/personal$ ofProject create test\r\nTraceback (most recent call last):\r\n File \"/usr/local/bin/ofProject\", line 2, in \r\n from ofProject import ofProject\r\n File \"/usr/local/ofProjectManager/ofProject.py\", line 2, in \r\n import amara\r\nImportError: No module named amara\r\n\r\nNothing too serious, but this should be installed w/the installDependencies script I think.\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/616","comments":3,"milestone":null,"number":616,"html_url":"https://github.com/openframeworks/openFrameworks/issues/616","assignee":null,"title":"ubuntu ofProject requirements should be installed w/installDependencies","labels":[],"closed_at":"2011-07-03T10:58:46Z","created_at":"2011-07-03T10:53:23Z","state":"closed","user":{"url":"https://api.github.com/users/joshuajnoble","gravatar_id":"10960ba0f305803a1cdc7cd6188d643b","login":"joshuajnoble","id":237423,"avatar_url":"https://secure.gravatar.com/avatar/10960ba0f305803a1cdc7cd6188d643b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1156999,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-02T20:02:54Z","body":"tested all the examples on vs2010\r\n\r\nnotes here:\r\n\r\nhttp://typewith.me/Fl7rIv0aBr\r\n\r\nstill a couple things left to do (opencv, assimp), but theo + arturo said they would look into it.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/615","comments":0,"milestone":null,"number":615,"html_url":"https://github.com/openframeworks/openFrameworks/issues/615","assignee":null,"title":"fixes for vs2010","labels":[],"closed_at":"2011-07-02T20:02:54Z","created_at":"2011-07-02T05:18:34Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1154257,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/615.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/615","patch_url":"https://github.com/openframeworks/openFrameworks/pull/615.patch"}},{"updated_at":"2011-07-02T18:56:49Z","body":"lots of changes for cleaner rendering, more default arguments, loading + saving to xml, returning pointers from setup() to make ofPanel creation easier.\r\n\r\nthis is all changes in devApps, i just think it should be merged back to master so if anyone wants to work more on ofGui we're all on the same page!","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/614","comments":3,"milestone":null,"number":614,"html_url":"https://github.com/openframeworks/openFrameworks/issues/614","assignee":null,"title":"ofGui modifications","labels":[],"closed_at":"2011-07-02T18:56:49Z","created_at":"2011-07-01T21:16:59Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1153086,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/614.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/614","patch_url":"https://github.com/openframeworks/openFrameworks/pull/614.patch"}},{"updated_at":"2011-07-01T15:06:31Z","body":"Added getLabelText(), which returns the string in the text label attached to the keyboard.\r\n\r\nUseful when you want to hide the default UILabel have real time custom drawing of the text typed in by the user.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/613","comments":0,"milestone":null,"number":613,"html_url":"https://github.com/openframeworks/openFrameworks/issues/613","assignee":null,"title":"Added getLabelText(), which returns the string in the text label attached","labels":[],"closed_at":"2011-07-01T15:06:31Z","created_at":"2011-06-29T20:55:03Z","state":"closed","user":{"url":"https://api.github.com/users/gardaud","gravatar_id":"60e65d6498422fb5a59e3404ef1a6c21","login":"gardaud","id":206641,"avatar_url":"https://secure.gravatar.com/avatar/60e65d6498422fb5a59e3404ef1a6c21?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1140547,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/613.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/613","patch_url":"https://github.com/openframeworks/openFrameworks/pull/613.patch"}},{"updated_at":"2011-07-02T18:57:19Z","body":"things like rotation and scaling were affecting bitmap strings in ways they weren't supposed to.\r\n\r\ni meant for this to be in a branch, whoops :)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/611","comments":2,"milestone":null,"number":611,"html_url":"https://github.com/openframeworks/openFrameworks/issues/611","assignee":null,"title":"brought default ofDrawBitmapString behavior back to the way it used to be","labels":[],"closed_at":"2011-07-02T18:57:19Z","created_at":"2011-06-24T01:28:56Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1107813,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/611.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/611","patch_url":"https://github.com/openframeworks/openFrameworks/pull/611.patch"}},{"updated_at":"2011-07-01T15:08:18Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/610","comments":1,"milestone":null,"number":610,"html_url":"https://github.com/openframeworks/openFrameworks/issues/610","assignee":null,"title":"tessellation on polygonExamples broken for iPhone - tess2 issue?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2011-07-01T15:08:18Z","created_at":"2011-06-23T17:44:41Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1105571,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-01T18:54:54Z","body":"Would be good to fix the example to show correct usage. \r\n\r\n/Users/theo/Documents/CODE/__OPENFRAMEWORKS/gitOF/openFrameworks/apps/iPhoneExamples/fontShapesExample/src/testApp.mm:59: error: 'class ofTTFCharacter' has no member named 'contours'\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/609","comments":1,"milestone":null,"number":609,"html_url":"https://github.com/openframeworks/openFrameworks/issues/609","assignee":null,"title":"typedef ofPath ofTTFCharacter; breaks the TTF shapes example","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2011-07-01T18:54:54Z","created_at":"2011-06-23T17:42:05Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1105558,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-03T13:46:56Z","body":"I updated the .gitignore so it ignores the generated xcode project files.\r\n\r\nThe other commit's are more cosmetic. Take them if they make sense:\r\n- ofTrueTypeFont has a number of public member variables that should probably be made protected and wrapped by getter funcs. I did this for bLoadedOK (redundant name, bLoaded is sufficient), bAntiAliased, bFullCharacterSet, nCharacters. Also, bAntiAliased was misspelled as \"bAntiAlised\". This is fixed.\r\n- ofImage has a \"bAllocated()\" func while pretty much every other OF object uses \"isAllocated\". I fixed that.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/608","comments":8,"milestone":null,"number":608,"html_url":"https://github.com/openframeworks/openFrameworks/issues/608","assignee":null,"title":"updated .gitignore for generated xcode projs; updates to ofTTFont","labels":[],"closed_at":"2011-07-03T13:46:39Z","created_at":"2011-06-18T12:46:10Z","state":"closed","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1077661,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/608.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/608","patch_url":"https://github.com/openframeworks/openFrameworks/pull/608.patch"}},{"updated_at":"2011-06-18T12:13:43Z","body":"I updated the .gitignore so it ignores the generated xcode project files.\r\n\r\nThe other commit's are more cosmetic. Take them if they make sense:\r\n- ofTrueTypeFont has a number of public member variables that should probably be made protected and wrapped by getter funcs. I did this for bLoadedOK (redundant name, bLoaded is sufficient), bAntiAliased, bFullCharacterSet, nCharacters. Also, bAntiAliased was misspelled as \"bAntiAlised\". This is fixed.\r\n- ofImage has a \"bAllocated()\" func while pretty much every other OF object uses \"isAllocated\". I fixed that.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/607","comments":2,"milestone":null,"number":607,"html_url":"https://github.com/openframeworks/openFrameworks/issues/607","assignee":null,"title":"updated .gitignore for generated xcode projs; various nameing fixes","labels":[],"closed_at":"2011-06-18T12:13:43Z","created_at":"2011-06-18T12:03:23Z","state":"closed","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1077587,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/607.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/607","patch_url":"https://github.com/openframeworks/openFrameworks/pull/607.patch"}},{"updated_at":"2011-12-03T22:20:15Z","body":"It appears that the line:\r\nofEnableBlendMode(currentStyle.blendingMode);\r\n\r\nshould be:\r\nofEnableBlendMode(style.blendingMode);\r\n\r\nin function\r\nvoid ofSetStyle(ofStyle style){..}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/606","comments":2,"milestone":null,"number":606,"html_url":"https://github.com/openframeworks/openFrameworks/issues/606","assignee":null,"title":"currentStyle should be style on line 568 of ofGraphics.cpp","labels":[],"closed_at":"2011-12-03T22:20:15Z","created_at":"2011-06-17T10:11:47Z","state":"closed","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1072757,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-06-16T10:46:21Z","body":"Hi, \r\n\r\nWorking with the ofxAssimpModelLoader.cpp (OF007), I realized there is a small mistake in draw(ofPolyRenderMode renderType) that mess up the matrixes to use in anything that is draw after the model. \r\nSimple to fix: \r\n\r\n \"ofPopStyle()\" command should be at the END of the function, after \"glPopAttrib()\".\r\n\r\nHope it helps. \r\nChema","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/604","comments":0,"milestone":null,"number":604,"html_url":"https://github.com/openframeworks/openFrameworks/issues/604","assignee":null,"title":"ofxAssimpModelLoader - Error in draw(ofPolyRenderMode renderType)","labels":[],"closed_at":"2011-06-16T10:46:21Z","created_at":"2011-06-16T10:35:17Z","state":"closed","user":{"url":"https://api.github.com/users/knute","gravatar_id":"af04648f76fc1980d4f47742e51f8903","login":"knute","id":853813,"avatar_url":"https://secure.gravatar.com/avatar/af04648f76fc1980d4f47742e51f8903?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1066642,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-01T18:54:36Z","body":"SUMMARY\r\nofTessellator.cpp generates an incorrect vertex list from that passed to it by libtess2, resulting in polygons not being drawn correctly in the iOS simulator.\r\n\r\nDESCRIPTION\r\nI've migrated from 0.062 to the github master branch a couple of days ago and have noticed that simple polygons don't seem to render in the iOS simulator. (Xcode 3.2.6, iOS 4.2). The same code works fine on Mac OS X, although I don't have a iOS device currently to test with.\r\n\r\nFor example, attempting to draw this square:\r\n```\r\nofSetColor(255,0,0,0); \r\nofFill(); \r\nofBeginShape(); \r\nofVertex(10, 10); \r\nofVertex(10, 85); \r\nofVertex(85, 85); \r\nofVertex(85, 10); \r\nofVertex(10, 10); \r\nofEndShape(); \r\n```\r\nresults in nothing being drawn in the iOS simulator. ofTriangle() and ofRect() don't suffer the problem as they don't use ofPath to get drawn.\r\n\r\nIn the debugger, I'm finding that when the above polygon is tessellated in ofPath::tessellate(), the cachedTessellation mesh has the correct vertices, but has an indices list of {0, 0, 1, 0, 2, 0} which is probably why it doesn't render (ie. duplicate consecutive indices within the same triangle. The vertices under OS X are the same, but the indices list looks more sensible.)\r\n\r\nCAUSE\r\nThe problem appears to be that ofTessellator::performTessellation() incorrectly assumes that:\r\n```\r\nsizeof(ofIndexType) == sizeof(TESSindex)\r\n```\r\nwhen it calls:\r\n```\r\ndstmesh.addIndices((ofIndexType*)tessGetElements(cacheTess),numIndices);\r\n```\r\nWhen building for iOS, this assumption is not true. ofIndexType is GLushort while TESSindex is int.\r\n\r\nSOLUTION\r\nThe following patch fixes the issue:\r\n\r\n```\r\ndiff --git a/libs/openFrameworks/graphics/ofTessellator.cpp b/libs/openFrameworks/graphics/ofTessellator.cpp\r\nindex 68fdd65..03fde46 100644\r\n--- a/libs/openFrameworks/graphics/ofTessellator.cpp\r\n+++ b/libs/openFrameworks/graphics/ofTessellator.cpp\r\n@@ -1,3 +1,5 @@\r\n+#include \r\n+\r\n #include \"ofTessellator.h\"\r\n \r\n \r\n@@ -146,7 +148,18 @@ void ofTessellator::performTessellation(ofPolyWindingMode polyWindingMode, ofMes\r\n \r\n \tdstmesh.clear();\r\n \tdstmesh.addVertices((ofVec3f*)tessGetVertices(cacheTess),numVertexes);\r\n-\tdstmesh.addIndices((ofIndexType*)tessGetElements(cacheTess),numIndices);\r\n+\r\n+\r\n+\t// If assertion fails, can safely replace following loop with more efficient:\r\n+\t//\t\tdstmesh.addIndices((ofIndexType*)tessGetElements(cacheTess),numIndices);\r\n+\tassert(sizeof(ofIndexType) != sizeof(TESSindex));\r\n+\tconst TESSindex* indices = tessGetElements(cacheTess);\r\n+\tfor (int i = 0; i < numIndices; ++i)\r\n+\t{\r\n+\t\tofIndexType index = indices[i];\r\n+\t\tdstmesh.addIndices(&index, 1);\r\n+\t}\r\n+\r\n\t/*ofIndexType * tessElements = (ofIndexType *)tessGetElements(cacheTess);\r\n\tfor(int i=0;i; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"ef9fdd81521bb220014f66c184d34497"'), ('date', 'Tue, 29 May 2012 18:46:41 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-14T15:08:20Z","body":"no matter if it works at the end it always reports\r\n\r\nOF: OF_LOG_ERROR: GL_FRAGMENT_SHADER shader failed to link.\r\nOF: OF_LOG_ERROR: GL_VERTEX_SHADER shader failed to link.\r\n...\r\n\r\nat least on linux","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/594","comments":5,"milestone":null,"number":594,"html_url":"https://github.com/openframeworks/openFrameworks/issues/594","assignee":null,"title":"shader always reports failed to link","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":"2012-05-14T11:24:50Z","created_at":"2011-06-04T12:48:35Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":1002555,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-06-04T12:31:08Z","body":"I just forked the newest git version(from the master branch) and all the xcode projects on every app seem to be gone. Is there any reason for this?\r\n\r\nthanks","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/593","comments":2,"milestone":null,"number":593,"html_url":"https://github.com/openframeworks/openFrameworks/issues/593","assignee":null,"title":"xcode projects are gone from master branch?","labels":[],"closed_at":"2011-06-04T10:53:25Z","created_at":"2011-06-04T06:45:36Z","state":"closed","user":{"url":"https://api.github.com/users/emmanuelflores","gravatar_id":"2ce598d400bf8d74653cff4cb34ae310","login":"emmanuelflores","avatar_url":"https://secure.gravatar.com/avatar/2ce598d400bf8d74653cff4cb34ae310?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":281086},"id":1002022,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-01T17:15:33Z","body":"currently its: \r\n\tOF_TRIANGLES_MODE,\r\n\tOF_TRIANGLE_STRIP_MODE,\r\n\tOF_TRIANGLE_FAN_MODE,\r\n\tOF_LINES_MODE,\r\n\tOF_LINE_STRIP_MODE,\r\n\tOF_LINE_LOOP_MODE,\r\n\tOF_POINTS_MODE\r\n\r\nthis makes it hard to tell what modes are available to you with autocompletion. \r\n\r\nit should be something more like this:\r\n\r\n\tOF_PRIMITIVE_TRIANGLES,\r\n\tOF_PRIMITIVE_TRIANGLE_STRIP,\r\n\tOF_PRIMITIVE_TRIANGLE_FAN,\r\n\tOF_PRIMITIVE_LINES,\r\n\tOF_PRIMITIVE_LINE_STRIP,\r\n\tOF_PRIMITIVE_LINE_LOOP,\r\n\tOF_PRIMITIVE_POINTS\r\n\r\nplus are we missing quad strip ? or is that because it isn't supported on ES ?\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/592","comments":1,"milestone":null,"number":592,"html_url":"https://github.com/openframeworks/openFrameworks/issues/592","assignee":null,"title":"ofPrimitiveMode doesn't match OF style","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2011-07-01T17:15:33Z","created_at":"2011-06-02T13:26:44Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":989815,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-05-29T19:06:48Z","body":"I added the tess2 project so OF builds for iPhone. Also, added perspectivev3 files to the gitignore.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/588","comments":0,"milestone":null,"number":588,"html_url":"https://github.com/openframeworks/openFrameworks/issues/588","assignee":null,"title":"updated iPhone OF lib xcode project","labels":[],"closed_at":"2011-05-29T19:06:48Z","created_at":"2011-05-28T12:40:49Z","state":"closed","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":968227,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/588.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/588","patch_url":"https://github.com/openframeworks/openFrameworks/pull/588.patch"}},{"updated_at":"2011-05-29T19:05:02Z","body":"my previous setImageType was actually a bad solution. i found a better way to solve the problem by moving around a little code inside changeTypeOfPixels instead.\r\n\r\nbefore, changeTypeOfPixels wasn't always reallocating the texture. e.g., if you go from rgb to grayscale you don't need to because you're using less space. this meant that the ofTexture was still the old type (color) and was throwing errors. if this optimization is important, it should be added back into ofTexture::allocate instead of changeTypeOfPixels.\r\n\r\nthis also solves a key bug where calling setImageType would cause an image to go through getBmpFromPixels/putBmpIntoPixels and there was a stride mismatch issue for some image widths.\r\n\r\ni also solved a bug with setFromAlignedPixels where the channel math was wrong.\r\n\r\ni also added a case to putBmpIntoPixels() that should allow support for more kind of images that have alpha.\r\n\r\ntl;dr: lots of bug fixes and refactoring for image loading and conversion code.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/587","comments":4,"milestone":null,"number":587,"html_url":"https://github.com/openframeworks/openFrameworks/issues/587","assignee":null,"title":"fix setImageType (again) and other bug fixes","labels":[],"closed_at":"2011-05-29T19:04:44Z","created_at":"2011-05-28T07:17:48Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":967833,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/587.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/587","patch_url":"https://github.com/openframeworks/openFrameworks/pull/587.patch"}},{"updated_at":"2011-06-12T14:34:50Z","body":"This is the updated ofLight branch with the latest build of OF. I deleted the old version, so this should be good to go with the new file structure.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/586","comments":2,"milestone":null,"number":586,"html_url":"https://github.com/openframeworks/openFrameworks/issues/586","assignee":null,"title":"Lightdev - ofLight multi light support and spotlight support","labels":[],"closed_at":"2011-06-12T14:34:50Z","created_at":"2011-05-25T16:49:20Z","state":"closed","user":{"url":"https://api.github.com/users/NickHardeman","gravatar_id":"4fc88ba881fee72fc4c5de473dc2ebbf","login":"NickHardeman","avatar_url":"https://secure.gravatar.com/avatar/4fc88ba881fee72fc4c5de473dc2ebbf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142694},"id":953953,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/586.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/586","patch_url":"https://github.com/openframeworks/openFrameworks/pull/586.patch"}},{"updated_at":"2011-05-24T22:34:54Z","body":"added va_list log functions, fixes #584; ofVAArgsToString va_list func stub added, needs to be implemented","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/585","comments":3,"milestone":null,"number":585,"html_url":"https://github.com/openframeworks/openFrameworks/issues/585","assignee":null,"title":"ofLog va_list fix","labels":[],"closed_at":"2011-05-24T22:05:59Z","created_at":"2011-05-24T21:58:31Z","state":"closed","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":949851,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/585.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/585","patch_url":"https://github.com/openframeworks/openFrameworks/pull/585.patch"}},{"updated_at":"2011-05-24T22:06:01Z","body":"The ofLog variadic call is totally broken. Doing a print yields gibberish for the given variable arguments.\n\nI tracked down the cause to passing a va_list from one function to another function that takes the ellipses (...):\n
    \nvoid ofConsoleLoggerChannel::log(ofLogLevel logLevel, const string & module, const char* format, ...){\n\t//thanks stefan!\n\t//http://www.ozzu.com/cpp-tutorials/tutorial-writing-custom-printf-wrapper-function-t89166.html\n        va_list args;\n        va_start( args, format );\n\tif(logLevel OF_LOG_ERROR){\n\t\tprintf(\"%s: \", module.c_str());\n\t\tprintf(\"%s: \", ofGetLogLevelName(logLevel).c_str());\n\t\tvprintf( format, args );\n\t\tprintf(\"\\n\");\n\t}else{\n\t\tfprintf(stderr,\"%s: \", module.c_str());\n\t\tfprintf(stderr,\"%s: \", ofGetLogLevelName(logLevel).c_str());\n\t\tvfprintf( stderr, format, args );\n\t\tfprintf(stderr,\"\\n\");\n\t}\n\n\tva_end( args );\n}\n\n
    \n\nSee the first answer to this Stack Overflow post http://stackoverflow.com/questions/205529/c-c-passing-variable-number-of-arguments-around.\n\nBasically, it seems the second function taking the va_list via (...) dosen't automatically know what it is and tries to read the raw memory based on the format string ... \n\nThis function should in fact take a va_list arg which has already been started in the calling function and va_start and va_end do not need to be used:\n\n
    \nvoid ofConsoleLoggerChannel::log(ofLogLevel logLevel, const string & module, const char* format, va_list args){\n\t//thanks stefan!\n\t//http://www.ozzu.com/cpp-tutorials/tutorial-writing-custom-printf-wrapper-function-t89166.html\n\n\tif(logLevel OF_LOG_ERROR){\n\t\tprintf(\"%s: \", module.c_str());\n\t\tprintf(\"%s: \", ofGetLogLevelName(logLevel).c_str());\n\t\tvprintf( format, args );\n\t\tprintf(\"\\n\");\n\t}else{\n\t\tfprintf(stderr,\"%s: \", module.c_str());\n\t\tfprintf(stderr,\"%s: \", ofGetLogLevelName(logLevel).c_str());\n\t\tvfprintf( stderr, format, args );\n\t\tfprintf(stderr,\"\\n\");\n\t}\n\n}\n
    \n\nI changed the logger channel classes to implement va_list args and everything works fine now. I can submit a pull request after my current request is accepted .. :D","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/584","comments":3,"milestone":null,"number":584,"html_url":"https://github.com/openframeworks/openFrameworks/issues/584","assignee":null,"title":"ofLog va_args broken","labels":[],"closed_at":"2011-05-24T22:06:01Z","created_at":"2011-05-24T16:57:16Z","state":"closed","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":948244,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-05-24T18:30:51Z","body":"Kyle's ofGetInternalFormatName wasn't #ifdef-ed for OPENGLES and ofxiPhoneApp implemented \nrunAppViaInfiniteLoop with a * pointer not the new ofPtr object and, as such, did not override the ofBaseApp virtual function ... meaning the app will not actually run. :P Shouldn't most of ofBaseApp be virtual = 0?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/583","comments":0,"milestone":null,"number":583,"html_url":"https://github.com/openframeworks/openFrameworks/issues/583","assignee":null,"title":"iOS fixes","labels":[],"closed_at":"2011-05-24T18:30:51Z","created_at":"2011-05-23T18:36:23Z","state":"closed","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":942870,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/583.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/583","patch_url":"https://github.com/openframeworks/openFrameworks/pull/583.patch"}},{"updated_at":"2011-05-28T07:18:20Z","body":"closes #50. this is against the actual upstream/master while my last attempt at making this work was on an old upstream/master. whoops.\r\n\r\nfor some reason #50 was closed before, but it was never actually fixed...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/581","comments":5,"milestone":null,"number":581,"html_url":"https://github.com/openframeworks/openFrameworks/issues/581","assignee":null,"title":"fixed: setImageType didn''t reallocate the ofTexture","labels":[],"closed_at":"2011-05-21T19:55:51Z","created_at":"2011-05-21T19:53:17Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":936328,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/581.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/581","patch_url":"https://github.com/openframeworks/openFrameworks/pull/581.patch"}},{"updated_at":"2011-05-21T18:09:12Z","body":"fixed rt audio hang on exit by removing close() in destructor; now correctly deleting audio pointer when closing","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/580","comments":2,"milestone":null,"number":580,"html_url":"https://github.com/openframeworks/openFrameworks/issues/580","assignee":null,"title":"fixed rt audio hang on exit","labels":[],"closed_at":"2011-05-21T18:03:50Z","created_at":"2011-05-21T18:02:13Z","state":"closed","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":936118,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/580.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/580","patch_url":"https://github.com/openframeworks/openFrameworks/pull/580.patch"}},{"updated_at":"2011-05-21T17:24:51Z","body":"fixed RtAudio close call in destructor which hangs on exit, added bSetup bool since audio pointer is now a shared_ptr","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/579","comments":11,"milestone":null,"number":579,"html_url":"https://github.com/openframeworks/openFrameworks/issues/579","assignee":null,"title":"fixed RtAudio hanging on exit","labels":[],"closed_at":"2011-05-21T17:23:39Z","created_at":"2011-05-21T16:46:40Z","state":"closed","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":935985,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/579.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/579","patch_url":"https://github.com/openframeworks/openFrameworks/pull/579.patch"}},{"updated_at":"2011-05-21T16:03:59Z","body":"check if RTAudio stream is open/running before closing/stopping, avoids error print on RT sound stream destructor if close was called during app::exit()","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/578","comments":0,"milestone":null,"number":578,"html_url":"https://github.com/openframeworks/openFrameworks/issues/578","assignee":null,"title":"check if RTAudio stream is open/running before closing/stopping","labels":[],"closed_at":"2011-05-21T16:03:59Z","created_at":"2011-05-21T16:00:40Z","state":"closed","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":935912,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/578.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/578","patch_url":"https://github.com/openframeworks/openFrameworks/pull/578.patch"}},{"updated_at":"2011-08-26T11:51:32Z","body":"* capital-M Makefile is more standard; updated base in devApps/linux/Makefile + script (FIXED)\n* USER_LD_FLAGS in config.make should be USER_LDFLAGS (FIXED)\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/575","comments":2,"milestone":null,"number":575,"html_url":"https://github.com/openframeworks/openFrameworks/issues/575","assignee":null,"title":"Linux: renamed examples makefile->Makefile; fixed config.make; updated devApps/linux/copyMakefiles.sh","labels":[],"closed_at":"2011-08-26T11:51:32Z","created_at":"2011-05-19T14:38:29Z","state":"closed","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"id":927292,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/575.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/575","patch_url":"https://github.com/openframeworks/openFrameworks/pull/575.patch"}},{"updated_at":"2011-12-12T21:29:06Z","body":"Using the bleeding edge 007, I noticed that the following call prints even if the log level is not OF_LOG_VERBOSE:\r\n
    \r\nstring line = \"test\";\r\nofLog(OF_LOG_VERBOSE, \"ofxPd: print: \"+line);\r\n
    \r\n\r\nSwitching to the var args works fine:\r\n
    \r\nofLog(OF_LOG_VERBOSE, \"ofxPd: print: %s\", line.c_str());\r\n
    \r\n\r\nSomehow the string concatenation via the + operator is forcing the print through ...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/574","comments":5,"milestone":null,"number":574,"html_url":"https://github.com/openframeworks/openFrameworks/issues/574","assignee":null,"title":"ofLog logLevels ignored when adding strings","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2011-12-12T20:58:10Z","created_at":"2011-05-18T20:23:45Z","state":"closed","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":923832,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-22T09:19:54Z","body":"I just want to tell you that there is a problem with Lion. I'm a beta tester and I usualy work with OF and there is a problem with QT\r\nXCode (4.1 L2) tell me that MacSetRect, GetGWorldPixMap, LockPixels, SetGWord as not declare in the scope in ofQuickTimePlayer.cpp and ofQuickTimeGrabber.cpp ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/573","comments":16,"milestone":null,"number":573,"html_url":"https://github.com/openframeworks/openFrameworks/issues/573","assignee":null,"title":"Lion beta tester problem with ofQuicktimeGrabber and ofQuickTimePlayer","labels":[],"closed_at":"2011-08-22T09:19:54Z","created_at":"2011-05-16T22:52:20Z","state":"closed","user":{"url":"https://api.github.com/users/rsilvestre","gravatar_id":"e7b7d7f64512fd4f1fd53e5f4846b1f6","login":"rsilvestre","avatar_url":"https://secure.gravatar.com/avatar/e7b7d7f64512fd4f1fd53e5f4846b1f6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":213663},"id":913417,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-01T15:33:02Z","body":"needs: tex.texData.bFlipTexture = true;\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/571","comments":0,"milestone":null,"number":571,"html_url":"https://github.com/openframeworks/openFrameworks/issues/571","assignee":null,"title":"ofFbo is rendering upside down","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2011-07-01T15:33:02Z","created_at":"2011-05-12T22:13:24Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":891991,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-05T11:44:02Z","body":"Is there any possibility of future releases of openFrameworks for Mac OSX will be as xcode frameworks?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/570","comments":1,"milestone":null,"number":570,"html_url":"https://github.com/openframeworks/openFrameworks/issues/570","assignee":null,"title":"openFrameworks as and xcode framework","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":"2012-03-05T11:44:02Z","created_at":"2011-05-12T08:25:07Z","state":"closed","user":{"url":"https://api.github.com/users/subszero","gravatar_id":"aac7f9a85388beb45df5ee4366240473","login":"subszero","avatar_url":"https://secure.gravatar.com/avatar/aac7f9a85388beb45df5ee4366240473?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":732178},"id":888301,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-13T13:21:55Z","body":"I get this in the console instead num touches: 818435748","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/567","comments":0,"milestone":null,"number":567,"html_url":"https://github.com/openframeworks/openFrameworks/issues/567","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"iOS touche.numTouches does not return correct value","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2012-03-13T13:21:55Z","created_at":"2011-05-10T19:47:14Z","state":"closed","user":{"url":"https://api.github.com/users/nardove","gravatar_id":"8022cb5f529975afbc64cc9312008d8c","login":"nardove","avatar_url":"https://secure.gravatar.com/avatar/8022cb5f529975afbc64cc9312008d8c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":277690},"id":878145,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T21:21:11Z","body":"Hi\r\n\r\nBeen working on getting the openCVexample working for Windows with the latest stable branch. Got most of it done (adding search directories and linking the newly named libs for GL). The error I can't get rid of is \"obj\\release\\addons\\ofxOpenCv\\src\\ofxCvImage.o:ofxCvImage.cpp|| undefined reference to `cvUnDistortOnce'|\". A bit of searching shows that this is in the opencv_legacy.a file, which exists for linux, iphone, osx and android, but not for win_cb.\r\n\r\nI'd be happy to compile this file, if only I knew how!\r\n\r\nStefan","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/563","comments":1,"milestone":null,"number":563,"html_url":"https://github.com/openframeworks/openFrameworks/issues/563","assignee":null,"title":"opencv_legacy.a for windows codeblocks","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":"2011-12-03T21:21:11Z","created_at":"2011-05-02T13:35:49Z","state":"closed","user":{"url":"https://api.github.com/users/stepto","gravatar_id":"a5f1321d2fe04fb88e22f0a99605377c","login":"stepto","avatar_url":"https://secure.gravatar.com/avatar/a5f1321d2fe04fb88e22f0a99605377c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":366395},"id":838677,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T18:18:58Z","body":"MoviesTask was #ifdef'd out by an #ifdef OF_QT_MOVIETASK which was not defined anywhere. Although MoviesTask is called automatically in most cases under OSX, when movie playback is heavily multithreaded failing to call MoviesTask manually can cause movies to freeze.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/562","comments":5,"milestone":null,"number":562,"html_url":"https://github.com/openframeworks/openFrameworks/issues/562","assignee":null,"title":"Re-enabled MoviesTask in ofQuickTimePlayer","labels":[],"closed_at":"2012-02-25T18:16:52Z","created_at":"2011-05-01T16:57:08Z","state":"closed","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"id":835644,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/562.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/562","patch_url":"https://github.com/openframeworks/openFrameworks/pull/562.patch"}},{"updated_at":"2011-07-06T18:33:02Z","body":"adding img.resetROI before copying the input img in findHaarObjects\r\nsolves issue 558\r\nhttps://github.com/openframeworks/openFrameworks/issues/558\r\nbut maybe someone with more knowledge of the haarFinder could review?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/561","comments":0,"milestone":null,"number":561,"html_url":"https://github.com/openframeworks/openFrameworks/issues/561","assignee":null,"title":"resetROI on ofxCvHaarFinder::findHaarObjects","labels":[],"closed_at":"2011-07-06T18:33:02Z","created_at":"2011-04-30T18:52:11Z","state":"closed","user":{"url":"https://api.github.com/users/jesusgollonet","gravatar_id":"5008d5295e9bc2636313c7b50ed5981d","login":"jesusgollonet","avatar_url":"https://secure.gravatar.com/avatar/5008d5295e9bc2636313c7b50ed5981d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":31100},"id":833930,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/561.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/561","patch_url":"https://github.com/openframeworks/openFrameworks/pull/561.patch"}},{"updated_at":"2011-10-23T19:21:45Z","body":"Visual Studio versions before 2010 did not come with stdint.h, so those types had to be defined in cross platform code. Now that the new version does, some of this older code breaks due to the redefinition.\n\nSee http://stackoverflow.com/questions/126279/c99-stdint-h-header-and-ms-visual-studio\n\nIn ofxOSC in ofxOscArg.h on lines 73-76:\n
    \n#if defined TARGET_WIN32 && defined _MSC_VER\n// required because MSVC isn't ANSI-C compliant\ntypedef long int32_t;\n#endif\n
    \n\nThe define should check for versions < VS 2010. See https://github.com/ofTheo/ofxKinect/issues/64","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/559","comments":6,"milestone":null,"number":559,"html_url":"https://github.com/openframeworks/openFrameworks/issues/559","assignee":null,"title":"ofxOsc int32_t typedef not needed with VS 2010 on windows","labels":[],"closed_at":"2011-10-23T19:21:45Z","created_at":"2011-04-28T13:29:04Z","state":"closed","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":824284,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-04T20:22:42Z","body":"In findHaarObjects, we call img.setROI after making the copy of the input image, but if the internal img of the haarfinder has a previous ROI, we get the error\r\nOF_ERROR: in =, ROI mismatch \r\n\r\nexplanation and proposed solution \r\nhttp://forum.openframeworks.cc/index.php/topic,6091.msg29389.html#msg29389\r\n\r\nif the solution seems sensitive, I can make a pull request","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/558","comments":1,"milestone":null,"number":558,"html_url":"https://github.com/openframeworks/openFrameworks/issues/558","assignee":null,"title":"ofxCvHaarFinder fails when using different ROI on succesive calls","labels":[],"closed_at":"2011-12-04T20:22:35Z","created_at":"2011-04-27T22:31:00Z","state":"closed","user":{"url":"https://api.github.com/users/jesusgollonet","gravatar_id":"5008d5295e9bc2636313c7b50ed5981d","login":"jesusgollonet","avatar_url":"https://secure.gravatar.com/avatar/5008d5295e9bc2636313c7b50ed5981d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":31100},"id":822013,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-04-27T18:09:25Z","body":"draws at a constant line width.\r\n\r\ndoesn't leak color.\r\n\r\nminor formatting cleanup.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/557","comments":2,"milestone":null,"number":557,"html_url":"https://github.com/openframeworks/openFrameworks/issues/557","assignee":null,"title":"ofDrawAxis fixes","labels":[],"closed_at":"2011-04-27T18:01:07Z","created_at":"2011-04-27T17:58:30Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":820863,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/557.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/557","patch_url":"https://github.com/openframeworks/openFrameworks/pull/557.patch"}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=21&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4975'), ('content-length', '33051'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"40a3fca1fc2d59e7793251208ccbfae2"'), ('date', 'Tue, 29 May 2012 18:46:42 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"milestone":null,"state":"closed","user":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"iPhone setOrientation uses two different enums","html_url":"https://github.com/openframeworks/openFrameworks/issues/556","comments":1,"assignee":null,"updated_at":"2011-07-02T19:25:46Z","body":"OFXIPHONE_ORIENTATION_LANDSCAPE_RIGHT is set to UIDeviceOrientationLandscapeRight\r\n\r\nbut in ofxiPhoneAppWindow::setOrientation it uses a different enum \r\n\r\nOFXIPHONE_ORIENTATION_LANDSCAPE_RIGHT:\r\n\t\t\t[[UIApplication sharedApplication] setStatusBarOrientation: UIInterfaceOrientationLandscapeRight\r\n\r\non iPad UIDeviceOrientationLandscapeRight = UIInterfaceOrientationLandscapeLeft and vice versa \r\n\r\nwe should use one of these sets for everything - mixing them causes crazy iPad rotation weirdness. \r\n\r\n@memo @stfj","number":556,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/556","labels":[],"id":817446,"closed_at":"2011-07-02T19:25:46Z","created_at":"2011-04-27T00:18:26Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"62d775b0fa28bcde2d9d29405d059be3","url":"https://api.github.com/users/chrisoshea","login":"chrisoshea","id":104786,"avatar_url":"https://secure.gravatar.com/avatar/62d775b0fa28bcde2d9d29405d059be3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"OF_SOUND_PLAYER_IPHONE in ofSoundPlayer.h","html_url":"https://github.com/openframeworks/openFrameworks/issues/554","comments":4,"assignee":{"gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-05-26T10:27:20Z","body":"There is this (line 37):\n#ifdef TARGET_OF_IPHONE\n#define OF_SOUND_PLAYER_IPHONE\n\nbut OF_SOUND_PLAYER_IPHONE isnt used again anywhere.\n\nline 62:\n#ifdef TARGET_OF_IPHONE\n#include \"ofxOpenALSoundPlayer.h\"\n#define OF_SOUND_PLAYER_TYPE ofxOpenALSoundPlayer()\n#endif\n\nshould be\n#ifdef OF_SOUND_PLAYER_IPHONE\n#include \"ofxOpenALSoundPlayer.h\"\n#define OF_SOUND_PLAYER_TYPE ofxOpenALSoundPlayer()\n#endif\n\nit still works anyway, but i wondered why OF_SOUND_PLAYER_IPHONE was being defined. just a minor thing.\n\n\n","number":554,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/554","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"2babad","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS"},{"color":"37c200","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy"},{"color":"DDDDDD","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound"}],"id":809549,"closed_at":"2012-05-26T10:27:16Z","created_at":"2011-04-25T12:36:14Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"b5c0e3c2630097b29680cfeda464024c","url":"https://api.github.com/users/memo","login":"memo","id":144230,"avatar_url":"https://secure.gravatar.com/avatar/b5c0e3c2630097b29680cfeda464024c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"fixed iphone empty example","html_url":"https://github.com/openframeworks/openFrameworks/issues/553","comments":0,"assignee":null,"updated_at":"2011-04-24T03:51:15Z","body":"updated iPhoneEmptyExample project file to compile, link, and run for iphone and simulator","number":553,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/553","diff_url":"https://github.com/openframeworks/openFrameworks/pull/553.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/553.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/553","labels":[],"id":805986,"closed_at":"2011-04-24T03:51:15Z","created_at":"2011-04-23T20:31:11Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"b5c0e3c2630097b29680cfeda464024c","url":"https://api.github.com/users/memo","login":"memo","id":144230,"avatar_url":"https://secure.gravatar.com/avatar/b5c0e3c2630097b29680cfeda464024c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"CRITICAL FIX: ios touch positions are in the wrong place when in landscape","html_url":"https://github.com/openframeworks/openFrameworks/issues/552","comments":0,"assignee":null,"updated_at":"2011-04-24T03:49:56Z","body":"fixed","number":552,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/552","diff_url":"https://github.com/openframeworks/openFrameworks/pull/552.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/552.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/552","labels":[],"id":805911,"closed_at":"2011-04-24T03:49:56Z","created_at":"2011-04-23T19:55:31Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"b5c0e3c2630097b29680cfeda464024c","url":"https://api.github.com/users/memo","login":"memo","id":144230,"avatar_url":"https://secure.gravatar.com/avatar/b5c0e3c2630097b29680cfeda464024c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"fixed iphoneEmptyExample project","html_url":"https://github.com/openframeworks/openFrameworks/issues/551","comments":1,"assignee":null,"updated_at":"2011-04-23T20:28:29Z","body":"removed all OSX libraries\r\nremoved cppUnit.cpp from poco\r\nadded necessary frameworks\r\n\r\napps/iPhoneExamples/emptyExample/iPhoneEmptyExample.xcodeproj is now a working project\r\n\r\n","number":551,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/551","diff_url":"https://github.com/openframeworks/openFrameworks/pull/551.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/551.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/551","labels":[],"id":805835,"closed_at":"2011-04-23T20:28:29Z","created_at":"2011-04-23T19:09:21Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"b5c0e3c2630097b29680cfeda464024c","url":"https://api.github.com/users/memo","login":"memo","id":144230,"avatar_url":"https://secure.gravatar.com/avatar/b5c0e3c2630097b29680cfeda464024c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofMesh::addTriangle(index1, index2, index3)","html_url":"https://github.com/openframeworks/openFrameworks/issues/550","comments":0,"assignee":null,"updated_at":"2011-04-23T18:46:49Z","body":"to add a triangle to a mesh, you need to do it in 3 lines:\r\nmesh.addIndex(0);\r\nmesh.addIndex(1);\r\nmesh.addIndex(2);\r\nand that adds a triangle.\r\n\r\nSo I added a simple method which wraps that. \r\nmesh.addTriangle(0, 1, 2);\r\n","number":550,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/550","diff_url":"https://github.com/openframeworks/openFrameworks/pull/550.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/550.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/550","labels":[],"id":805710,"closed_at":"2011-04-23T18:46:48Z","created_at":"2011-04-23T18:04:28Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"remaining ofDirectory issues","html_url":"https://github.com/openframeworks/openFrameworks/issues/547","comments":5,"assignee":null,"updated_at":"2011-04-20T09:20:08Z","body":"three or four issues were introduced, two of them fairly serious, when ofDirList turned into ofDirectory. i've fixed them in this branch.\r\n\r\nthis pull request cleans up the commits.","number":547,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/547","diff_url":"https://github.com/openframeworks/openFrameworks/pull/547.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/547.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/547","labels":[],"id":790166,"closed_at":"2011-04-20T00:25:22Z","created_at":"2011-04-19T18:45:30Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"remaining ofDirectory issues","html_url":"https://github.com/openframeworks/openFrameworks/issues/546","comments":5,"assignee":null,"updated_at":"2011-04-19T18:46:55Z","body":"three or four issues were introduced, two of them fairly serious, when ofDirList turned into ofDirectory. i've fixed them in this branch.","number":546,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/546","diff_url":"https://github.com/openframeworks/openFrameworks/pull/546.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/546.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/546","labels":[],"id":790022,"closed_at":"2011-04-19T18:40:48Z","created_at":"2011-04-19T18:10:21Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofDirectory::setExecutable is unimplemented","html_url":"https://github.com/openframeworks/openFrameworks/issues/544","comments":4,"assignee":null,"updated_at":"2011-12-03T21:05:39Z","body":"i don't know if it even makes sense to set a directory as 'executable', but regardless, the method is unimplemented.\r\n\r\nif there is going to be so much repetition between ofFile and ofDirectory it might make sense for ofDirectory to extend ofFile.","number":544,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/544","labels":[],"id":789872,"closed_at":"2011-12-03T21:05:39Z","created_at":"2011-04-19T17:46:37Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofDirectory hidden files broken by ofFileUtils migration","html_url":"https://github.com/openframeworks/openFrameworks/issues/543","comments":2,"assignee":null,"updated_at":"2011-12-03T21:04:46Z","body":"ofDirectory must have a constructor, and this constructor must initialize \"showHidden\" to false. otherwise the variable is uninitialized, and you might have random problems with hidden files.","number":543,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/543","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":789788,"closed_at":"2011-12-03T21:04:46Z","created_at":"2011-04-19T17:34:17Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"b5c0e3c2630097b29680cfeda464024c","url":"https://api.github.com/users/memo","login":"memo","id":144230,"avatar_url":"https://secure.gravatar.com/avatar/b5c0e3c2630097b29680cfeda464024c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"fixing ios compile problems","html_url":"https://github.com/openframeworks/openFrameworks/issues/542","comments":1,"assignee":null,"updated_at":"2011-04-23T15:53:33Z","body":"fixed a bunch of ios no-compile problems\r\n\r\n\r\n- graphics + gl\r\n- orientation stuff (and thus anything that uses it, e.g. keyboard)\r\n- events\r\n- video player\r\n- video grabber\r\n\r\ni've fixed these all and committed in a fix-ios branch. The examples compile and run now, but I recommend whoever wrote those bits to have a bit more of an indepth look to make sure the fixes don't have any side effects.\r\n\r\nP.S. Some of the examples, the developer is set to Theo's developer profile. If we leave this on Automatic it will pick whatever profile is installed on the mac. Also, there is a stray cppunit.a missing in the example projects /libs/poco too (we don't even need the osx folder here i guess in the projects?). I've fixed the empty example, which compiles and works now, some of the other examples (e.g. videograbber) doesn't link though. I\"ll leave that to the video guys :)\r\n","number":542,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/542","diff_url":"https://github.com/openframeworks/openFrameworks/pull/542.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/542.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/542","labels":[],"id":788711,"closed_at":"2011-04-23T15:53:32Z","created_at":"2011-04-19T14:14:40Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"62d775b0fa28bcde2d9d29405d059be3","url":"https://api.github.com/users/chrisoshea","login":"chrisoshea","id":104786,"avatar_url":"https://secure.gravatar.com/avatar/62d775b0fa28bcde2d9d29405d059be3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofxAssimpModelLoader ref to ofFileUtils","html_url":"https://github.com/openframeworks/openFrameworks/issues/540","comments":2,"assignee":null,"updated_at":"2011-04-16T10:55:23Z","body":"needs fixing in ...\r\n\r\n/addons/ofxAssimpModelLoader/src/ofxAssimpModelLoader.cpp:147: error: \r\n'ofFileUtils' has not been declared\r\n","number":540,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/540","labels":[],"id":777819,"closed_at":"2011-04-16T10:54:23Z","created_at":"2011-04-16T10:53:25Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofBuffer getNextLine - error putting file back together.","html_url":"https://github.com/openframeworks/openFrameworks/issues/539","comments":0,"assignee":null,"updated_at":"2011-05-01T15:23:50Z","body":"When I use getNextLine to go through a file and recombine the file into a single string something is missing ( ie a json file can't be parsed ). \r\n\r\nUsing this code instead and stitching it back together works fine.\r\n\r\n\tstring str,strTotal;\r\n\tifstream in;\r\n\tin.open(ofToDataPath(path, true).c_str());\r\n\t\r\n\tgetline(in,str);\r\n\twhile ( in ) {\r\n\t\r\n\t\tstrTotal += str;\r\n\t\tgetline(in, str);\r\n }\r\n\r\nI'll try and see what the difference is - but in theory the result should be the same. \r\n\r\nalso possible related the size of getNextLine is never 0, it seems like the size is 1 when its done reading. \r\nis this because of the null byte?\r\nit would be good to find a clear way to know when you have reached the last line of the file.\r\n\r\n@arturoc","number":539,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/539","labels":[],"id":773449,"closed_at":"2011-05-01T15:23:50Z","created_at":"2011-04-15T13:00:12Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","url":"https://api.github.com/users/roxlu","login":"roxlu","id":358809,"avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofToDataPath returns incorrect path when used in constructor (Mac)","html_url":"https://github.com/openframeworks/openFrameworks/issues/538","comments":2,"assignee":null,"updated_at":"2011-09-11T11:28:15Z","body":"When you call ofToDataPath(\"file.mov\",true) inside the testApp constructor (or actually before setup() is called) it returns\r\nan incorrect path. ","number":538,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/538","labels":[],"id":765530,"closed_at":"2011-09-11T11:28:15Z","created_at":"2011-04-13T18:49:37Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofxDirList is broken by ofFileUtils restructuring","html_url":"https://github.com/openframeworks/openFrameworks/issues/537","comments":1,"assignee":null,"updated_at":"2011-09-11T11:37:45Z","body":"ofxDirList.h should now be:\r\n\r\n\t#pragma once\r\n\r\n\t#include \"ofFileUtils.h\"\r\n\r\n\t#warning ofxDirList has been deprecated. \r\n\t#warning Remove all references to ofxDirList.h and use ofDirectory instead.\r\n\ttypedef ofDirectory ofxDirList;","number":537,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/537","labels":[],"id":764261,"closed_at":"2011-09-11T11:37:45Z","created_at":"2011-04-13T14:11:28Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"simple ofLog and ofDrawBitmapString C++ ostream wrappers","html_url":"https://github.com/openframeworks/openFrameworks/issues/536","comments":0,"assignee":null,"updated_at":"2011-04-29T18:10:42Z","body":"Here's a simplified version of the C++ ostream << interface to ofLog and ofDrawBitmapString as well as a test app in /apps/devApps. This is based on [ofxLogger](https://github.com/danomatika/ofxLogger) but with the normal printf backend instead of the Poco::Logger.\n\nThis supports the old ofLog usage and also allows you to use streams by log level name:\n\nofLog(OF_LOG_NOTICE, \"a message\");\nofLog() << \"a message\";\n\nofLog(OF_LOG_ERROR, \"an error\");\nofLogError() << \"an error\";\n\nofDrawBitmapString works the same way:\n\nofDrawBitmapString(\"a message on the screen\", 10, 10);\nofDrawBitmapString(10, 10) << \"a message on the screen\";\n\nNaturally the stream operators handle type conversion to strings for you and this implementations handles all the stream io formatting functions such as std::endl, std::hex, etc ...","number":536,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/536","diff_url":"https://github.com/openframeworks/openFrameworks/pull/536.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/536.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/536","labels":[],"id":756726,"closed_at":"2011-04-29T18:10:42Z","created_at":"2011-04-11T22:21:05Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"trying to close a thread several time can be problematic","html_url":"https://github.com/openframeworks/openFrameworks/issues/535","comments":3,"assignee":null,"updated_at":"2012-04-03T22:57:43Z","body":"http://forum.openframeworks.cc/index.php/topic,5924.0.html\r\n\r\nperhaps we should look into using Poco::Thread or even std::tr1::thread if it's available in all the compilers","number":535,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/535","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":755993,"closed_at":"2012-04-03T16:44:15Z","created_at":"2011-04-11T19:58:14Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"e02a8a3953de9d5d9ec1c7aa8d43eca4","url":"https://api.github.com/users/hvfrancesco","login":"hvfrancesco","id":614123,"avatar_url":"https://secure.gravatar.com/avatar/e02a8a3953de9d5d9ec1c7aa8d43eca4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"kiss library missing on linux32 ?","html_url":"https://github.com/openframeworks/openFrameworks/issues/531","comments":4,"assignee":null,"updated_at":"2011-04-10T20:51:00Z","body":"is the kiss library missing on linux 32 bit?\r\nis it vital for openal soundplayer?","number":531,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/531","labels":[],"id":749734,"closed_at":"2011-04-10T10:40:23Z","created_at":"2011-04-10T10:04:53Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"2510c33845ef9568d7d753be5de0f96a","url":"https://api.github.com/users/dimitre","login":"dimitre","id":58289,"avatar_url":"https://secure.gravatar.com/avatar/2510c33845ef9568d7d753be5de0f96a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofDirectoryLister / ofDirectory, latest from GIT master on OS X","html_url":"https://github.com/openframeworks/openFrameworks/issues/527","comments":2,"assignee":null,"updated_at":"2011-04-08T21:28:35Z","body":"I've noticed ofDirectoryLister was renamed ofDirectory, but from the latest master I can't compile anything, how can I fix this?\r\n\r\n CompileC build/openFrameworksLib.build/Debug/openFrameworks.build/Objects-normal/i386/ofDirectoryLister.o ../../../openFrameworks/utils/ofDirectoryLister.cpp normal i386 c++ com.apple.compilers.gcc.4_2\r\n cd /Users/dimitre/src/OFnew/openFrameworks/libs/openFrameworksCompiled/project/osx\r\n setenv LANG en_US.US-ASCII\r\n /Developer/usr/bin/gcc-4.2 -x c++ -arch i386 -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -ftree-vectorize -msse3 -mssse3 -Wno-deprecated-declarations -Wno-invalid-offsetof -gdwarf-2 -I/Users/dimitre/src/OFnew/openFrameworks/libs/openFrameworksCompiled/project/osx/build/openFrameworksLib.build/Debug/openFrameworks.build/openFrameworksDebug.hmap -F/Users/dimitre/src/OFnew/openFrameworks/libs/openFrameworksCompiled/project/osx/../../lib/osx -I/Users/dimitre/src/OFnew/openFrameworks/libs/openFrameworksCompiled/project/osx/../../lib/osx/include -I../../../../libs/freetype/include -I../../../../libs/freetype/include/freetype2 -I../../../../libs/poco/include -I/Users/dimitre/src/OFnew/openFrameworks/libs/openFrameworksCompiled/project/osx/build/openFrameworksLib.build/Debug/openFrameworks.build/DerivedSources/i386 -I/Users/dimitre/src/OFnew/openFrameworks/libs/openFrameworksCompiled/project/osx/build/openFrameworksLib.build/Debug/openFrameworks.build/DerivedSources -D__MACOSX_CORE__ -lpthread -c /Users/dimitre/src/OFnew/openFrameworks/libs/openFrameworksCompiled/project/osx/../../../openFrameworks/utils/ofDirectoryLister.cpp -o /Users/dimitre/src/OFnew/openFrameworks/libs/openFrameworksCompiled/project/osx/build/openFrameworksLib.build/Debug/openFrameworks.build/Objects-normal/i386/ofDirectoryLister.o\r\n\r\n i686-apple-darwin10-gcc-4.2.1: /Users/dimitre/src/OFnew/openFrameworks/libs/openFrameworksCompiled/project/osx/../../../openFrameworks/utils/ofDirectoryLister.cpp: No such file or directory\r\n Command /Developer/usr/bin/gcc-4.2 failed with exit code 1","number":527,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/527","labels":[],"id":746514,"closed_at":"2011-04-08T21:19:58Z","created_at":"2011-04-08T21:02:45Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofFind broken for vector with one element ","html_url":"https://github.com/openframeworks/openFrameworks/issues/526","comments":4,"assignee":null,"updated_at":"2011-04-15T13:34:04Z","body":"@kylemcdonald\r\n\r\nvector arr; \r\narr.push_back(\"hello\"); \r\n\r\nofFind(arr, \"hello\"); //returns false should return true.","number":526,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/526","labels":[],"id":742304,"closed_at":"2011-04-15T13:01:42Z","created_at":"2011-04-07T19:18:41Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofDrawAxis leaks color, and disappears sometimes","html_url":"https://github.com/openframeworks/openFrameworks/issues/521","comments":1,"assignee":null,"updated_at":"2011-08-26T06:14:56Z","body":"ofDrawAxis needs an ofPushStyle()/ofPopStyle() surrounding it.\r\n\r\nit should also be drawn with constant-width thick lines (ofSetLineWidth()) instead of drawn with boxes. the boxes will disappear if you zoom out too much, or they will get too big if you're working on a smaller scale.","number":521,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/521","labels":[],"id":725921,"closed_at":"2011-08-26T06:14:56Z","created_at":"2011-04-02T00:53:10Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"2510c33845ef9568d7d753be5de0f96a","url":"https://api.github.com/users/dimitre","login":"dimitre","id":58289,"avatar_url":"https://secure.gravatar.com/avatar/2510c33845ef9568d7d753be5de0f96a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofLine termination with width > 1, drawing in angle","html_url":"https://github.com/openframeworks/openFrameworks/issues/518","comments":2,"assignee":null,"updated_at":"2011-12-03T22:55:25Z","body":"Hello, I've just noticed that when I draw a line with some width, lets say 10 pixels, the line always have terminations in orthogonal endings (0, 90 degrees) related to the screen instead of related to the line itself.\r\n","number":518,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/518","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":719227,"closed_at":"2011-12-03T22:55:25Z","created_at":"2011-03-30T21:39:27Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"floating point ofImage + ofPixel","html_url":"https://github.com/openframeworks/openFrameworks/issues/517","comments":1,"assignee":null,"updated_at":"2011-09-25T13:15:30Z","body":"i see two major reasons to introduce floating point images. one is for ofTexture compatibility (ofTexture has a floating point pixel datatype already implemented, and it's integrated with ofFbo i believe.) if we want proper readback texture -> pixels we need this.\n\nthe other big reason is opencv compatibility. there are a lot of arguments in opencv that require floating point images, or work best with floating point images. if OF had a floating point image type, it would make the transition between OF and CV much more seamless. things like cpu-based accumulation buffers will happen more easily.\n\nthis would also bring us one step closer to higher bit depth png saving.\n\ni understand this feature is not easy at all, but i think it's super important.","number":517,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/517","labels":[],"id":718930,"closed_at":"2011-09-25T13:15:30Z","created_at":"2011-03-30T20:17:04Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"closes #514, fixes issue with dirList on paths not ending with slashes","html_url":"https://github.com/openframeworks/openFrameworks/issues/516","comments":2,"assignee":null,"updated_at":"2011-04-04T15:53:58Z","body":"that's embarrassing, a user just reported this obvious problem i somehow failed to port from the old ofxDirList.\r\n\r\nnote that i solved it by adding a function ofFileUtils::getPathForDirectory(string path) which uses poco to add a trailing slash when necessary. i feel like this is probably more reliable than checking if the last character is a slash and adding it ourself (which was the old solution).","number":516,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/516","diff_url":"https://github.com/openframeworks/openFrameworks/pull/516.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/516.patch"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/516","labels":[],"id":718612,"closed_at":"2011-04-04T15:53:58Z","created_at":"2011-03-30T18:30:27Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"cairo bug with ofCircle - hardcoded to be black!","html_url":"https://github.com/openframeworks/openFrameworks/issues/515","comments":2,"assignee":null,"updated_at":"2011-03-30T18:58:04Z","body":"remove line 902:\r\n\t\tcairo_set_source_rgba(cr,0,0,0,1);\r\nfrom:\r\n\t//----------------------------------------------------------\r\n\tvoid ofCairoRenderer::drawCircle(float x, float y, float z, float radius){\r\n\t\tcairo_new_path(cr);\r\n\t\tcairo_set_source_rgba(cr,0,0,0,1);\r\n\t\tcairo_arc(cr, x,y,radius,0,2*PI);\r\n\r\n\t\tcairo_close_path(cr);\r\n\r\n\t\tif(bFilled==OF_FILLED){\r\n\t\t\tcairo_fill( cr );\r\n\t\t}else{\r\n\t\t\tcairo_stroke( cr );\r\n\t\t}\r\n\t}\r\n","number":515,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/515","labels":[],"id":718532,"closed_at":"2011-03-30T18:58:04Z","created_at":"2011-03-30T18:05:36Z"}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=22&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4974'), ('content-length', '28521'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"12aa0c3192d5169fa13f2b75f3f437fb"'), ('date', 'Tue, 29 May 2012 18:46:43 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-03-30T18:44:28Z","body":"I'm listing a folder inside \"data\" folder, its called \"videos/001\"\nwhen I use getPath it returns me something like \"videos/0.mov\" instead of \"videos/001/0.mov\"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/514","comments":4,"milestone":null,"number":514,"html_url":"https://github.com/openframeworks/openFrameworks/issues/514","assignee":null,"title":"ofDirectoryLister, getPath returning incomplete path","labels":[],"closed_at":"2011-03-30T18:03:19Z","created_at":"2011-03-30T13:59:00Z","state":"closed","user":{"url":"https://api.github.com/users/dimitre","gravatar_id":"2510c33845ef9568d7d753be5de0f96a","login":"dimitre","avatar_url":"https://secure.gravatar.com/avatar/2510c33845ef9568d7d753be5de0f96a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":58289},"id":717785,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2011-03-28T13:55:08Z","body":"I got some bad access errors when loading images from twitpic/yfrom asynchronously. Added some checks to ofURLoader. I also tried to handle http-redirects; but could not find anything usefull information in the poco documentation. I think it would be good to have an option to follow redirects.\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/513","comments":1,"milestone":null,"number":513,"html_url":"https://github.com/openframeworks/openFrameworks/issues/513","assignee":null,"title":"ofUrlLoader exc_bad_access","labels":[],"closed_at":"2011-03-28T13:55:08Z","created_at":"2011-03-27T18:25:41Z","state":"closed","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":358809},"id":708745,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/513.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/513","diff_url":"https://github.com/openframeworks/openFrameworks/pull/513.diff"}},{"updated_at":"2011-03-24T10:07:24Z","body":"tested in c::b on windows vista, and tested in xcode.\r\n\r\npoco has a massive bug with one of the file listing methods Poco::File::list(vector) so i switched to Poco::File::list(vector), which works fine, and extrapolated.\r\n\r\nnot sure if this is because poco win is behind poco osx, or if it's just a bug with poco?\r\n\r\nalso, this includes an example (dirListExample) working in c::b on win.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/512","comments":3,"milestone":null,"number":512,"html_url":"https://github.com/openframeworks/openFrameworks/issues/512","assignee":null,"title":"ofDirectoryLister fixed for windows","labels":[],"closed_at":"2011-03-24T10:07:24Z","created_at":"2011-03-23T06:31:16Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":696762,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/512.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/512","diff_url":"https://github.com/openframeworks/openFrameworks/pull/512.diff"}},{"updated_at":"2011-03-23T18:05:53Z","body":"Use of ofDirectoryLister on Windows Code::Block leads to a Segmentation Fault. \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/511","comments":7,"milestone":null,"number":511,"html_url":"https://github.com/openframeworks/openFrameworks/issues/511","assignee":null,"title":"ofDirectoryLister on Windows Code::Blocks","labels":[],"closed_at":"2011-03-22T17:29:27Z","created_at":"2011-03-22T11:27:47Z","state":"closed","user":{"url":"https://api.github.com/users/ambroisemaupate","gravatar_id":"82bf1f66bdd97e89ea46cb48639aa5c1","login":"ambroisemaupate","avatar_url":"https://secure.gravatar.com/avatar/82bf1f66bdd97e89ea46cb48639aa5c1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":380026},"id":693547,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2011-03-21T21:27:34Z","body":"line 354 has a leftover \r\n <<<<<<< HEAD \r\nfrom a merge","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/509","comments":1,"milestone":null,"number":509,"html_url":"https://github.com/openframeworks/openFrameworks/issues/509","assignee":null,"title":"Stray characters / bad merge in ofGLRenderer.cpp","labels":[],"closed_at":"2011-03-21T21:27:34Z","created_at":"2011-03-21T21:22:30Z","state":"closed","user":{"url":"https://api.github.com/users/labatrockwell","gravatar_id":"e6d243a56cd069a225f56f4a388e8838","login":"labatrockwell","avatar_url":"https://secure.gravatar.com/avatar/e6d243a56cd069a225f56f4a388e8838?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","id":313943},"id":692219,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2011-03-21T09:17:19Z","body":"../../../openFrameworks/sound/ofRtAudioSoundStream.cpp: In static member function ‘static int ofRtAudioSoundStream::rtAudioCallback(void*, void*, unsigned int, double, RtAudioStreamStatus, void*)’:\r\n../../../openFrameworks/sound/ofRtAudioSoundStream.cpp:209: error: no matching function for call to ‘ofBaseSoundInput::audioIn(float*, unsigned int&, int&, long long unsigned int&)’\r\n../../../openFrameworks/types/ofBaseTypes.h:98: note: candidates are: virtual void ofBaseSoundInput::audioIn(float*, int, int)\r\n../../../openFrameworks/sound/ofRtAudioSoundStream.cpp:217: error: no matching function for call to ‘ofBaseSoundOutput::audioOut(float*, unsigned int&, int&, long long unsigned int&)’\r\n../../../openFrameworks/types/ofBaseTypes.h:111: note: candidates are: virtual void ofBaseSoundOutput::audioOut(float*, int, int)\r\nmake: *** [obj/Debug/openFrameworks/sound/ofRtAudioSoundStream.o] Errore 1\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/508","comments":1,"milestone":null,"number":508,"html_url":"https://github.com/openframeworks/openFrameworks/issues/508","assignee":null,"title":"007 does not compile anymore on Ubuntu Linux (Lucid x86)","labels":[],"closed_at":"2011-03-21T09:17:19Z","created_at":"2011-03-21T01:30:26Z","state":"closed","user":{"url":"https://api.github.com/users/hvfrancesco","gravatar_id":"e02a8a3953de9d5d9ec1c7aa8d43eca4","login":"hvfrancesco","avatar_url":"https://secure.gravatar.com/avatar/e02a8a3953de9d5d9ec1c7aa8d43eca4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":614123},"id":689805,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2011-12-03T20:26:56Z","body":"You're calling the string method 'replace()' in ofUtils.cpp (L253), but this give me an error at compilation on Windows Codeblocks, \"replace() is not a member of std\".\r\n\r\nI've changed the line to this : \"path.replace(...)\" instead of \"std::replace(...)\" and it works. Thanks to apply modifications !","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/506","comments":2,"milestone":null,"number":506,"html_url":"https://github.com/openframeworks/openFrameworks/issues/506","assignee":null,"title":"std::replace() in ofUtils.cpp (L253) win32 codeblocks 007","labels":[],"closed_at":"2011-12-03T20:26:56Z","created_at":"2011-03-20T23:06:08Z","state":"closed","user":{"url":"https://api.github.com/users/ambroisemaupate","gravatar_id":"82bf1f66bdd97e89ea46cb48639aa5c1","login":"ambroisemaupate","avatar_url":"https://secure.gravatar.com/avatar/82bf1f66bdd97e89ea46cb48639aa5c1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":380026},"id":689570,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2011-03-21T14:39:13Z","body":"we need recent compiled opencv libs in ofxOpenCv for linux32 in master branch of 007","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/505","comments":1,"milestone":null,"number":505,"html_url":"https://github.com/openframeworks/openFrameworks/issues/505","assignee":null,"title":"need for compiled opencv for linux32 in master branch","labels":[],"closed_at":"2011-03-21T14:39:13Z","created_at":"2011-03-20T21:55:22Z","state":"closed","user":{"url":"https://api.github.com/users/hvfrancesco","gravatar_id":"e02a8a3953de9d5d9ec1c7aa8d43eca4","login":"hvfrancesco","avatar_url":"https://secure.gravatar.com/avatar/e02a8a3953de9d5d9ec1c7aa8d43eca4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":614123},"id":689446,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-05T15:59:48Z","body":"\r\n\r\ncurrent fbo says \"#ifndef TARGET_OPENGLES\" \r\n\r\nbut it would be great to have fbo (or some subset of the fbo) work on iphone / opengles, such at this version: \r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=25&t=2909","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/504","comments":2,"milestone":null,"number":504,"html_url":"https://github.com/openframeworks/openFrameworks/issues/504","assignee":null,"title":"fbo needs opengl/es love","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2012-03-05T15:59:48Z","created_at":"2011-03-20T19:40:07Z","state":"closed","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":689182,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2011-04-04T14:52:52Z","body":"This is rewrite of my previous patch base on update upstream.\r\n\r\nfollowing is the original message:\r\nI know the guide line, make your app on apps/ directory. changes in this commit follow it.\r\nand give easy way to make app in other place for people not want to -or can't- follow the guild line.\r\n\r\nIf your app is not under the apps/ direchtory, just modify OF_ROOT in your makefile to point OF directory.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/499","comments":1,"milestone":null,"number":499,"html_url":"https://github.com/openframeworks/openFrameworks/issues/499","assignee":null,"title":"Replace ../../../ in makefile with $(OF_ROOT)","labels":[],"closed_at":"2011-04-04T14:52:52Z","created_at":"2011-03-14T13:13:01Z","state":"closed","user":{"url":"https://api.github.com/users/suapapa","gravatar_id":"77bae140335cdfbd46237d35f8fdd204","login":"suapapa","avatar_url":"https://secure.gravatar.com/avatar/77bae140335cdfbd46237d35f8fdd204?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":333745},"id":671568,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/499.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/499","diff_url":"https://github.com/openframeworks/openFrameworks/pull/499.diff"}},{"updated_at":"2011-10-17T18:51:55Z","body":"Source: loadFont(...) calls FT_Set_Char_Size(...) with fixed dpi regardless of true display dpi.\r\nResult: Fonts have the wrong size on displays.\r\n\r\nFrom http://www.openframeworks.cc/forum/viewtopic.php?f=7&t=5759\r\nRelevant code is at https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/graphics/ofTrueTypeFont.cpp#L244","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/498","comments":6,"milestone":null,"number":498,"html_url":"https://github.com/openframeworks/openFrameworks/issues/498","assignee":null,"title":"ofTrueTypeFont does not respect correct display dpi","labels":[],"closed_at":"2011-10-17T18:29:37Z","created_at":"2011-03-14T09:16:33Z","state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":671149,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2011-03-13T17:07:02Z","body":"- moved everything gl related to a gl folder\r\n- removed all the 3d high level classes like ofModel and ofMeshRenderer and that functionality is now in ofxAssimp\r\n- assimp has now methods to return ofMesh\r\n- reference count for all gl related classes so they can be stored in vectors or passed by copy\r\n- several fixes for new classes","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/497","comments":0,"milestone":null,"number":497,"html_url":"https://github.com/openframeworks/openFrameworks/issues/497","assignee":null,"title":"3d restructuring","labels":[],"closed_at":"2011-03-13T17:07:02Z","created_at":"2011-03-13T16:21:04Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":669471,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/497.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/497","diff_url":"https://github.com/openframeworks/openFrameworks/pull/497.diff"}},{"updated_at":"2011-03-13T22:34:55Z","body":"Found a memoryLeak in ofxCvGrayscaleImage\n\nCvMat* briConLutMatrix; is allocated at creation time, but not at destructor time. Destructor should be implemented:\n\nvoid ofxCvGrayscaleImage::~ofxCvGrayscaleImage() {\n cvReleaseMat(&briConLutMatrix);\n}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/496","comments":1,"milestone":null,"number":496,"html_url":"https://github.com/openframeworks/openFrameworks/issues/496","assignee":null,"title":"MemoryLeak in ofxCvGrayscaleImage","labels":[],"closed_at":"2011-03-13T22:34:55Z","created_at":"2011-03-12T17:49:44Z","state":"closed","user":{"url":"https://api.github.com/users/armadillu","gravatar_id":"b87a82d7c86161432ee6388c7cbd5e2c","login":"armadillu","avatar_url":"https://secure.gravatar.com/avatar/b87a82d7c86161432ee6388c7cbd5e2c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":167057},"id":667917,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2011-03-11T14:24:59Z","body":"Fixed quaternion default constructor","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/494","comments":0,"milestone":null,"number":494,"html_url":"https://github.com/openframeworks/openFrameworks/issues/494","assignee":null,"title":"Fix easycam (quaternion)","labels":[],"closed_at":"2011-03-11T14:24:59Z","created_at":"2011-03-08T12:08:07Z","state":"closed","user":{"url":"https://api.github.com/users/memo","gravatar_id":"b5c0e3c2630097b29680cfeda464024c","login":"memo","avatar_url":"https://secure.gravatar.com/avatar/b5c0e3c2630097b29680cfeda464024c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144230},"id":655608,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/494.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/494","diff_url":"https://github.com/openframeworks/openFrameworks/pull/494.diff"}},{"updated_at":"2011-03-13T20:04:29Z","body":"Fixed a couple of errors in a previous pull request.\r\n\r\nThis update fixes servo functionality for firmata v. 2.2 (and higher). It should still be backwards compatible with older versions of firmata that implemented a preliminary protocol for servos.\r\n\r\nExample implementation available here: http://www.box.net/shared/static/32tfaon50q.zip\r\n\r\nAlso update to firmataExample to use EInitialized event rather than polling isArduinoReady(). The polling method was based on an arbitrary delay rather than the actual initialization event triggered when firmata.begin is called on the Arduino. The use of the EInitialized event is a much better approach than polling and is recommended. It is also necessary for proper Firmata v2.2 functionality.\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/493","comments":0,"milestone":null,"number":493,"html_url":"https://github.com/openframeworks/openFrameworks/issues/493","assignee":null,"title":"ofArduino updated for firmata 2.2 servo protocol","labels":[],"closed_at":"2011-03-13T20:04:29Z","created_at":"2011-03-08T03:48:43Z","state":"closed","user":{"url":"https://api.github.com/users/soundanalogous","gravatar_id":"f3ca5c4c2359e9103ba20a1ea992680c","login":"soundanalogous","avatar_url":"https://secure.gravatar.com/avatar/f3ca5c4c2359e9103ba20a1ea992680c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":401539},"id":654802,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/493.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/493","diff_url":"https://github.com/openframeworks/openFrameworks/pull/493.diff"}},{"updated_at":"2011-03-07T17:08:54Z","body":"This update fixes servo functionality for firmata v. 2.2 (and higher). It should still be backwards compatible with older versions of firmata that implemented a preliminary protocol for servos.\r\n\r\nExample implementation available here: http://www.box.net/shared/static/32tfaon50q.zip","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/492","comments":1,"milestone":null,"number":492,"html_url":"https://github.com/openframeworks/openFrameworks/issues/492","assignee":null,"title":"ofArduino updated for firmata 2.2 servo protocol","labels":[],"closed_at":"2011-03-08T01:08:07Z","created_at":"2011-03-06T04:02:40Z","state":"closed","user":{"url":"https://api.github.com/users/soundanalogous","gravatar_id":"f3ca5c4c2359e9103ba20a1ea992680c","login":"soundanalogous","avatar_url":"https://secure.gravatar.com/avatar/f3ca5c4c2359e9103ba20a1ea992680c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":401539},"id":649956,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/492.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/492","diff_url":"https://github.com/openframeworks/openFrameworks/pull/492.diff"}},{"updated_at":"2011-03-13T22:30:43Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=9&t=5669","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/489","comments":1,"milestone":null,"number":489,"html_url":"https://github.com/openframeworks/openFrameworks/issues/489","assignee":null,"title":"firmata servo control seems to be broken","labels":[],"closed_at":"2011-03-13T22:30:43Z","created_at":"2011-03-03T15:11:54Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":643589,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2011-04-23T15:54:05Z","body":"the videograbber / videoplayer code for ios was not compiling correctly, changed the header protection to the new style (#pragma once) brought in the required includes.\r\n\r\nAlso added a fall though videograbber type.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/488","comments":2,"milestone":null,"number":488,"html_url":"https://github.com/openframeworks/openFrameworks/issues/488","assignee":null,"title":"Bugfix of videograbber ios","labels":[],"closed_at":"2011-04-23T15:54:05Z","created_at":"2011-02-28T21:00:29Z","state":"closed","user":{"url":"https://api.github.com/users/jonbro","gravatar_id":"893ec14dc008e3774afe5841115920d6","login":"jonbro","avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1597},"id":635548,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/488.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/488","diff_url":"https://github.com/openframeworks/openFrameworks/pull/488.diff"}},{"updated_at":"2011-04-23T15:54:19Z","body":"ofOrientation functions were throwing errors for iOS examples.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/487","comments":2,"milestone":null,"number":487,"html_url":"https://github.com/openframeworks/openFrameworks/issues/487","assignee":null,"title":"ofOrientation iOS compatible","labels":[],"closed_at":"2011-04-23T15:54:19Z","created_at":"2011-02-28T18:23:01Z","state":"closed","user":{"url":"https://api.github.com/users/jonbro","gravatar_id":"893ec14dc008e3774afe5841115920d6","login":"jonbro","avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1597},"id":635143,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/487.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/487","diff_url":"https://github.com/openframeworks/openFrameworks/pull/487.diff"}},{"updated_at":"2011-09-11T11:27:55Z","body":"When using ofDataPath() in constructor of testApp::testApp() { .. } the path is different. Probably because Mac changes the working directory somehow? When using ofToDataPath( ) in setup it works fine.\n\nI did a quickfix (ugly) with this code which works for my addon:\nhttp://codepad.org/0xiWH2pz","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/485","comments":1,"milestone":null,"number":485,"html_url":"https://github.com/openframeworks/openFrameworks/issues/485","assignee":null,"title":"ofDataPath() gives incorrect path with called in constructor (tested Mac OSX) ","labels":[],"closed_at":"2011-09-11T11:27:55Z","created_at":"2011-02-26T15:43:10Z","state":"closed","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":358809},"id":629409,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2011-03-13T22:28:19Z","body":"there's a bug limiting the number of lines that can be drawn to 2.\r\nsee http://www.openframeworks.cc/forum/viewtopic.php?f=7&t=5585 which includes a proposed fix.\r\nthe fix goes here: https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/graphics/ofTrueTypeFont.cpp#L752\r\n\r\nthx","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/483","comments":1,"milestone":null,"number":483,"html_url":"https://github.com/openframeworks/openFrameworks/issues/483","assignee":null,"title":"bug in drawStringAsShapes. fix included.","labels":[],"closed_at":"2011-03-13T22:28:19Z","created_at":"2011-02-18T09:05:56Z","state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":608747,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2011-03-13T22:24:29Z","body":"You have to explicitly set this after you've created the light, it would be nice to have a default behaviour rather than undefined.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/482","comments":1,"milestone":null,"number":482,"html_url":"https://github.com/openframeworks/openFrameworks/issues/482","assignee":null,"title":"ofLight directional not set in constructor","labels":[],"closed_at":"2011-03-13T22:24:29Z","created_at":"2011-02-17T17:50:15Z","state":"closed","user":{"url":"https://api.github.com/users/mazbox","gravatar_id":"3cfb19dbce7926933555ac9755a86ca8","login":"mazbox","avatar_url":"https://secure.gravatar.com/avatar/3cfb19dbce7926933555ac9755a86ca8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":194121},"id":607089,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2011-04-23T15:55:00Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/481","comments":3,"milestone":null,"number":481,"html_url":"https://github.com/openframeworks/openFrameworks/issues/481","assignee":null,"title":"fixed a bug for unbinding the vbo when you set any data...","labels":[],"closed_at":"2011-04-23T15:55:00Z","created_at":"2011-02-16T16:48:55Z","state":"closed","user":{"url":"https://api.github.com/users/vanderlin","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":149997},"id":603984,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/481.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/481","diff_url":"https://github.com/openframeworks/openFrameworks/pull/481.diff"}},{"updated_at":"2011-03-13T19:24:01Z","body":"small but ESSENTIAL commit.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/480","comments":2,"milestone":null,"number":480,"html_url":"https://github.com/openframeworks/openFrameworks/issues/480","assignee":null,"title":"added ofColor::cyan, magenta, yellow","labels":[],"closed_at":"2011-03-13T19:24:01Z","created_at":"2011-02-16T08:27:30Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":602905,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/480.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/480","diff_url":"https://github.com/openframeworks/openFrameworks/pull/480.diff"}},{"updated_at":"2011-10-21T18:48:21Z","body":"Several of the /util files have moved since the codeblocks project file was last updated (ofMath.h, ofMath.cpp, ofType.h), and the compiler, at least on my machine, is having trouble finding a slew of needed files: glew.h and wglew.h are the first two to sport errors, followed closely by ofPoint.h, ofColor.h and other oF files. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/479","comments":4,"milestone":null,"number":479,"html_url":"https://github.com/openframeworks/openFrameworks/issues/479","assignee":null,"title":"libs/ofCompiled/project/winCB project file is out of date","labels":[],"closed_at":"2011-10-21T18:48:21Z","created_at":"2011-02-15T05:47:25Z","state":"closed","user":{"url":"https://api.github.com/users/amzuko","gravatar_id":"0aa12b39584ebf6f796e7b6ad6bbc37d","login":"amzuko","avatar_url":"https://secure.gravatar.com/avatar/0aa12b39584ebf6f796e7b6ad6bbc37d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":601612},"id":599670,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=23&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4973'), ('content-length', '31122'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"aa5b4101cc4e07d6182db5f49a14f6b7"'), ('date', 'Tue, 29 May 2012 18:46:44 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-02-15T18:44:54Z","body":"This is a fix for loading more movies into the QuickTime instance of VideoPlayer on OS X. With the check that was commented out in this commit, it would not play any videos (aside from the first one of the instance) that were attempted to be loaded.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/478","comments":3,"milestone":null,"number":478,"html_url":"https://github.com/openframeworks/openFrameworks/issues/478","assignee":null,"title":"fix loading of subsequent movies into QuickTimeVideoPlayer","labels":[],"closed_at":"2011-02-15T21:45:32Z","created_at":"2011-02-15T04:54:26Z","state":"closed","user":{"url":"https://api.github.com/users/nemik","gravatar_id":"ace632f74988653fdbde09225134bfdd","login":"nemik","avatar_url":"https://secure.gravatar.com/avatar/ace632f74988653fdbde09225134bfdd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":62301},"id":599607,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/478.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/478.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/478"}},{"updated_at":"2011-02-14T21:28:18Z","body":"- minor changes\r\n- removed some typedef\r\n- added ofMaterial \r\n- added some stream operators\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/477","comments":0,"milestone":null,"number":477,"html_url":"https://github.com/openframeworks/openFrameworks/issues/477","assignee":null,"title":"Feature ofmaterial","labels":[],"closed_at":"2011-02-14T21:28:18Z","created_at":"2011-02-14T20:54:34Z","state":"closed","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":358809},"id":598683,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/477.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/477.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/477"}},{"updated_at":"2011-02-14T19:57:51Z","body":"like the subject says","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/476","comments":2,"milestone":null,"number":476,"html_url":"https://github.com/openframeworks/openFrameworks/issues/476","assignee":null,"title":"fixed crash bug in ofNode::setMatrix, and updates to ofQuaternion","labels":[],"closed_at":"2011-02-14T19:57:51Z","created_at":"2011-02-14T18:41:00Z","state":"closed","user":{"url":"https://api.github.com/users/memo","gravatar_id":"b5c0e3c2630097b29680cfeda464024c","login":"memo","avatar_url":"https://secure.gravatar.com/avatar/b5c0e3c2630097b29680cfeda464024c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144230},"id":598333,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/476.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/476.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/476"}},{"updated_at":"2011-02-14T16:33:50Z","body":"ofxThreadedImageLoader wasn't compiling due to the removal of getOFPixels","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/474","comments":0,"milestone":null,"number":474,"html_url":"https://github.com/openframeworks/openFrameworks/issues/474","assignee":null,"title":"hotfix: getOFPixels migration","labels":[],"closed_at":"2011-02-14T16:33:50Z","created_at":"2011-02-14T07:36:53Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":597005,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/474.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/474.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/474"}},{"updated_at":"2011-02-14T18:51:06Z","body":"i think this closes #404 and definitely closes #470","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/473","comments":5,"milestone":null,"number":473,"html_url":"https://github.com/openframeworks/openFrameworks/issues/473","assignee":null,"title":"added poco-based ofDirList","labels":[],"closed_at":"2011-02-15T00:32:56Z","created_at":"2011-02-14T07:27:11Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":596984,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/473.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/473.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/473"}},{"updated_at":"2011-02-13T20:20:04Z","body":"fleshing out the discussed structures/renamings for models, meshes, and so forth. WIP, still much to be done.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/472","comments":0,"milestone":null,"number":472,"html_url":"https://github.com/openframeworks/openFrameworks/issues/472","assignee":null,"title":"3d dev","labels":[],"closed_at":"2011-02-13T20:20:04Z","created_at":"2011-02-13T19:59:06Z","state":"closed","user":{"url":"https://api.github.com/users/kpasko","gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","login":"kpasko","avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":167271},"id":595993,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/472.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/472.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/472"}},{"updated_at":"2011-03-19T22:55:28Z","body":"we found this a week or two ago, but it hasn't been written down until now.\r\n\r\nOF_ERROR: getTextureData() - texture has not been allocated\r\n\r\ni think this is inside the draw bitmap character function?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/471","comments":3,"milestone":null,"number":471,"html_url":"https://github.com/openframeworks/openFrameworks/issues/471","assignee":null,"title":"ofDrawBitmapString causes an error the first time it's used","labels":[],"closed_at":"2011-03-19T08:14:16Z","created_at":"2011-02-13T19:51:54Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":595980,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2011-02-14T18:51:18Z","body":"all the platform specific code in ofxDirList needs to be removed and replaced with poco code. then it needs to be moved into whatever the files/utils namespace and renamed to DirList or DirectoryLister, FileLister or similar. i'm working on this.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/470","comments":4,"milestone":null,"number":470,"html_url":"https://github.com/openframeworks/openFrameworks/issues/470","assignee":null,"title":"ofxDirList should be moved into core, replaced with Poco","labels":[],"closed_at":"2011-02-14T18:51:18Z","created_at":"2011-02-13T19:19:44Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":595926,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2011-02-14T21:28:18Z","body":"Added:\r\n• ofMeshNode - a renderable 3D object which can contain ofMaterials \r\n• ofMaterial - \"Anything graphical applied to the polygons\"\r\n• added ostream operator on ofColor (I thought I did that already but probably forgot)\r\n- add ostream for ofVertexData which can be used while debugging VBOs for example","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/469","comments":0,"milestone":null,"number":469,"html_url":"https://github.com/openframeworks/openFrameworks/issues/469","assignee":null,"title":"3d","labels":[],"closed_at":"2011-02-14T21:28:18Z","created_at":"2011-02-13T00:16:44Z","state":"closed","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":358809},"id":594689,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/469.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/469.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/469"}},{"updated_at":"2011-02-11T19:31:00Z","body":"needs qtGrabber and iphone grabber and player implementation using ofPixels instead of unsigned char","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/468","comments":0,"milestone":null,"number":468,"html_url":"https://github.com/openframeworks/openFrameworks/issues/468","assignee":null,"title":"getPixelsRef for all ofBaseHasPixels","labels":[],"closed_at":"2011-02-11T19:31:00Z","created_at":"2011-02-11T00:32:17Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":590782,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/468.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/468.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/468"}},{"updated_at":"2011-06-12T14:03:22Z","body":"There's a typo in the error description on line 21\r\nhttps://github.com/openframeworks/openFrameworks/blob/master/scripts/linux/ubuntu/install_dependencies.sh#L21\r\nshould be \"Release\" instead of \"Debug\"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/467","comments":1,"milestone":null,"number":467,"html_url":"https://github.com/openframeworks/openFrameworks/issues/467","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"Minor typo in ubuntu install_dependencies script","labels":[],"closed_at":"2011-06-12T14:03:22Z","created_at":"2011-02-09T14:41:52Z","state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":586045,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2011-03-19T21:24:45Z","body":"I wanted to wrap some depreciated 0062 stuff so it could work in 007 .. but OF_VERSION has not been updated so this is not possible. We *really* need a DEPRECIATED flag in order not to break backwards compatibility ...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/466","comments":3,"milestone":null,"number":466,"html_url":"https://github.com/openframeworks/openFrameworks/issues/466","assignee":null,"title":"update OF_VERSION to 7","labels":[],"closed_at":"2011-03-19T21:24:45Z","created_at":"2011-02-09T07:57:05Z","state":"closed","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":585331,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2011-02-11T19:31:57Z","body":"this is a merge of everything in my android + swappable renderers branches with master\r\n\r\neverything is working here, have tested both in linux and osx. \r\n\r\ni've added some clean scripts and fixed the examples to build with the buildAndTest scripts in osx btw : )","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/465","comments":1,"milestone":null,"number":465,"html_url":"https://github.com/openframeworks/openFrameworks/issues/465","assignee":null,"title":"android + swappable renderers","labels":[],"closed_at":"2011-02-12T03:30:59Z","created_at":"2011-02-08T20:31:10Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":584083,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/465.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/465.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/465"}},{"updated_at":"2011-02-08T04:02:10Z","body":"I understand the reasoning behind ofSetHexColor, yet I prefer how Processing overloads stroke and background. ofSetColor could take a hex int, rgb, AND a char or uint_8t byte value to allow the distinction between a byte and int value to be made without requiring and extra function name. We'd just have to use the explicit byte types from C++ ie\n\n`ofSetColor(uint8_t byte); // 0 - 255`\n\n`ofSetColor(uint32_t hex); // 0xFF0000`\n\n`ofSetColor(int r, int g, int b); // RGB`\n\netc ... now I could be wrong, but I'll give it a try in the meantime.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/464","comments":1,"milestone":null,"number":464,"html_url":"https://github.com/openframeworks/openFrameworks/issues/464","assignee":null,"title":"Do we need ofSetHexColor when ofSetColor could be overloaded?","labels":[],"closed_at":"2011-02-08T04:02:10Z","created_at":"2011-02-08T03:51:30Z","state":"closed","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":582362,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2011-03-22T10:32:27Z","body":"right now it's using createDirectory() which fails if the parent directories aren't there.\r\n\r\ncreateDirectories() will create any necessary parent directories.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/459","comments":3,"milestone":null,"number":459,"html_url":"https://github.com/openframeworks/openFrameworks/issues/459","assignee":null,"title":"ofFileUtils::makeDirectory should use Poco::File::createDirectories() for recursive creation","labels":[],"closed_at":"2011-03-13T22:19:42Z","created_at":"2011-02-07T07:50:46Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":579788,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2011-02-10T19:57:04Z","body":"\r\n\r\nat the moment, when you change the notes in an ofxSynth, it does some interpolation / smoothing of pitches. this might be good if you are changing the pitch while playing (ie, pitch bend) it sounds pretty weird when you are triggering different notes. IMO trigger should reset the pitch and not have any smoothing.\r\n\r\nalso, think we need an intuitive way to set ADSR / envelopes on the notes -- I haven't had good luck with this yet. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/458","comments":2,"milestone":null,"number":458,"html_url":"https://github.com/openframeworks/openFrameworks/issues/458","assignee":null,"title":"ofxSynth pitch smoothing","labels":[],"closed_at":"2011-02-10T19:57:04Z","created_at":"2011-02-06T17:44:05Z","state":"closed","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":578882,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2011-02-10T20:00:48Z","body":"\r\n\r\nif you set the delay larger then 2 seconds, it can crash in: \r\n\r\nvoid ofxSynthDelayline::process( float* input, float *output, int numFrames, int numInChannels, int numOutChannels )\r\n\r\nsince memory is set to a fixed size:\r\n\r\ndouble memory[88200];\r\n\r\nwe can either make this more dynamic (reallocate if necessary) or cap the delay size. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/457","comments":1,"milestone":null,"number":457,"html_url":"https://github.com/openframeworks/openFrameworks/issues/457","assignee":null,"title":"ofxSynth crashes with delay line adjustments","labels":[],"closed_at":"2011-02-10T20:00:48Z","created_at":"2011-02-06T17:41:20Z","state":"closed","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":578878,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2012-04-01T11:22:31Z","body":"2011-02-06 17:33:40.309 DictionaryTesterDebug[17484:a0f] *** __NSAutoreleaseNoPool(): Object 0x180c2c0 of class NSCarbonWindowContentView autoreleased with no pool in place - just leaking\r\n2011-02-06 17:33:40.311 DictionaryTesterDebug[17484:a0f] *** __NSAutoreleaseNoPool(): Object 0x322d70 of class NSCFArray autoreleased with no pool in place - just leaking\r\n2011-02-06 17:33:40.312 DictionaryTesterDebug[17484:a0f] *** __NSAutoreleaseNoPool(): Object 0x3204e0 of class NSPathStore2 autoreleased with no pool in place - just leaking\r\n2011-02-06 17:33:40.312 DictionaryTesterDebug[17484:a0f] *** __NSAutoreleaseNoPool(): Object 0x6006b0 of class NSCFData autoreleased with no pool in place - just leaking\r\n2011-02-06 17:33:40.313 DictionaryTesterDebug[17484:a0f] *** __NSAutoreleaseNoPool(): Object 0xa0174ae8 of class NSCFString autoreleased with no pool in place - just leaking\r\n2011-02-06 17:33:40.313 DictionaryTesterDebug[17484:a0f] *** __NSAutoreleaseNoPool(): Object 0x1906a50 of class __NSArray0 autoreleased with no pool in place - just leaking\r\n2011-02-06 17:33:40.314 DictionaryTesterDebug[17484:a0f] *** __NSAutoreleaseNoPool(): Object 0x1936480 of class NSCFNumber autoreleased with no pool in place - just leaking\r\n2011-02-06 17:33:40.314 DictionaryTesterDebug[17484:a0f] *** __NSAutoreleaseNoPool(): Object 0x61e390 of class NSCFArray autoreleased with no pool in place - just leaking\r\n2011-02-06 17:33:40.315 DictionaryTesterDebug[17484:a0f] *** __NSAutoreleaseNoPool(): Object 0x6094f0 of class NSCFArray autoreleased with no pool in place - just leaking\r\n2011-02-06 17:33:40.316 DictionaryTesterDebug[17484:a0f] *** __NSAutoreleaseNoPool(): Object 0xa079d44c of class NSCFString autoreleased with no pool in place - just leaking\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/456","comments":2,"milestone":null,"number":456,"html_url":"https://github.com/openframeworks/openFrameworks/issues/456","assignee":null,"title":"ofCreateAlertDialog has crazy memory leaks on OSX","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":"2012-04-01T11:22:29Z","created_at":"2011-02-06T17:34:37Z","state":"closed","user":{"url":"https://api.github.com/users/memo","gravatar_id":"b5c0e3c2630097b29680cfeda464024c","login":"memo","avatar_url":"https://secure.gravatar.com/avatar/b5c0e3c2630097b29680cfeda464024c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144230},"id":578869,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2012-03-12T01:56:24Z","body":"we still need a method for transferring data from ofTexture to ofPixels.\r\n\r\ni had it in there for a bit but i think it was removed because ofPixels was still in flux.\r\n\r\nat the moment, this means it's impossible to save to disk anything you do in an fbo.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/455","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":455,"html_url":"https://github.com/openframeworks/openFrameworks/issues/455","assignee":null,"title":"texture readback","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2012-03-11T15:24:03Z","created_at":"2011-02-06T05:05:55Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":578098,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2011-03-13T22:13:06Z","body":"i think ofUtils line 536 should read:\r\n\r\n\tscreen.grabScreen(0, 0, view.width, view.height);\r\n\r\nright now width and height are reversed.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/453","comments":1,"milestone":null,"number":453,"html_url":"https://github.com/openframeworks/openFrameworks/issues/453","assignee":null,"title":"ofSaveViewport is broken","labels":[],"closed_at":"2011-03-13T22:13:06Z","created_at":"2011-02-06T03:27:52Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":578012,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2011-03-13T22:10:59Z","body":"code to solve it here:\r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=6&t=5496&view=unread#unread","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/452","comments":1,"milestone":null,"number":452,"html_url":"https://github.com/openframeworks/openFrameworks/issues/452","assignee":null,"title":"ofImage doesn't save gifs","labels":[],"closed_at":"2011-03-13T22:10:59Z","created_at":"2011-02-03T00:11:01Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":571352,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2011-05-25T15:47:14Z","body":"Added multi-light support, material support, spotlight support, attenuation and fixed get functions for colors to return 0 - 255. Not sure if the material functions belong here :/ Haven't tested on iPhone yet.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/451","comments":10,"milestone":null,"number":451,"html_url":"https://github.com/openframeworks/openFrameworks/issues/451","assignee":null,"title":"ofLight Update","labels":[],"closed_at":"2011-05-25T15:47:14Z","created_at":"2011-02-02T20:21:16Z","state":"closed","user":{"url":"https://api.github.com/users/NickHardeman","gravatar_id":"4fc88ba881fee72fc4c5de473dc2ebbf","login":"NickHardeman","avatar_url":"https://secure.gravatar.com/avatar/4fc88ba881fee72fc4c5de473dc2ebbf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142694},"id":570742,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/451.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/451.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/451"}},{"updated_at":"2011-02-11T20:59:11Z","body":"ofSetupScreenPerspective had been changed to accept a new parameter (orientation), but ofFbo - which called ofSetupScreenPerspective hadn't been updated! rendering it unusable. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/450","comments":0,"milestone":null,"number":450,"html_url":"https://github.com/openframeworks/openFrameworks/issues/450","assignee":null,"title":"fixed ofFbo to work with the new ofSetupScreenPerspective","labels":[],"closed_at":"2011-02-11T20:59:11Z","created_at":"2011-02-02T15:33:11Z","state":"closed","user":{"url":"https://api.github.com/users/memo","gravatar_id":"b5c0e3c2630097b29680cfeda464024c","login":"memo","avatar_url":"https://secure.gravatar.com/avatar/b5c0e3c2630097b29680cfeda464024c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144230},"id":569981,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/450.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/450.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/450"}},{"updated_at":"2011-03-18T13:35:58Z","body":"i think theo already knows, but i thought i'd file a bug for him to squash ;)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/448","comments":2,"milestone":null,"number":448,"html_url":"https://github.com/openframeworks/openFrameworks/issues/448","assignee":null,"title":"ofSetupSCreenOrtho doesn't work with ofSetOrientation","labels":[],"closed_at":"2011-03-18T09:15:37Z","created_at":"2011-02-02T00:00:04Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":568534,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2011-02-11T19:30:55Z","body":"drawing classes:\n- ofShape: stores commands without decomposing in vertices. Used for renderers that can do things like beziers directly like cairo for pdf/svg. caches ofShapeTess for faster rendering in opengl\n\n-ofShapeTessellation: stores decomposed primitives like bezier, curve.. as vertices. same api as ofPath. can decompose a whole ofPath. caches outline and tessellation. you can do everything with ofShape but this is slightly faster for things that you need to update a lot and are only going to be drawn to gl\n\n-ofCairoRenderer: can draw all the primitives to pdf or svg, multipage, and 3d with perspective trasnformations, still missing blending functions. some examples:\n\n - multipage pdf: http://arturocastro.net/multipagepaths.pdf\n - ofTrueType as shapes: http://arturocastro.net/fontasvectors.pdf\n - and 3d: http://arturocastro.net/squirrel.pdf\n\n-ofGLRenderer: uses a vertex array for rendering of ofShape/ofShapeTessellation, ofVertexData and ofPolyline + viewport, setupScreenPerspective... \n\nofGraphics: all non-gl specific functions (like textureARB) go through renderers, ofGraphics decide to use a shape or a shapeTess depending on the type of renderer (cairo -> ofShape, gl -> ofShapeTess)\n\nofTrueTypeFont: ofTTFCharacter as a shape, to be able to render to pdf/svg/opengl\n\nofMesh/ofModel: drawing through vbo or default renderer instead of vbo/va\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/447","comments":0,"milestone":null,"number":447,"html_url":"https://github.com/openframeworks/openFrameworks/issues/447","assignee":null,"title":"ofShape + swappable renderers","labels":[],"closed_at":"2011-02-11T19:30:55Z","created_at":"2011-02-01T22:06:34Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":568248,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/447.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/447.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/447"}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=24&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4972'), ('content-length', '32520'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"5dbc63e6737acfedcbfb04a918233a77"'), ('date', 'Tue, 29 May 2012 18:46:45 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-01-31T10:35:18Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/445","comments":1,"milestone":null,"number":445,"html_url":"https://github.com/openframeworks/openFrameworks/issues/445","assignee":null,"title":"ofPixels: copy constructor fix, const correctness, operator[] returns a reference","labels":[],"closed_at":"2011-01-31T18:35:10Z","created_at":"2011-01-31T10:30:52Z","state":"closed","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":563844,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/445","patch_url":"https://github.com/openframeworks/openFrameworks/pull/445.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/445.diff"}},{"updated_at":"2011-12-03T16:12:34Z","body":"right now it checks for background auto and does nothing if it's false. i suppose a explicit call from the code to ofBackground should be clearing it even on background auto=false. That's also how it's explained in the docs:\r\n\r\nhttp://www.openframeworks.cc/documentation?detail=ofGraphics#ofSetBackgroundAuto","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/444","comments":10,"milestone":null,"number":444,"html_url":"https://github.com/openframeworks/openFrameworks/issues/444","assignee":null,"title":"should ofBackground clear even on setBackgroundAuto==false","labels":[],"closed_at":"2011-12-03T10:39:32Z","created_at":"2011-01-31T10:28:24Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":563841,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-02-14T10:21:10Z","body":"renamed some bits, fixed iPhone issues with functions in ofDrawBitmapString","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/443","comments":1,"milestone":null,"number":443,"html_url":"https://github.com/openframeworks/openFrameworks/issues/443","assignee":null,"title":"fixes","labels":[],"closed_at":"2011-02-14T18:20:58Z","created_at":"2011-01-31T04:40:58Z","state":"closed","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":563425,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/443","patch_url":"https://github.com/openframeworks/openFrameworks/pull/443.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/443.diff"}},{"updated_at":"2011-01-31T04:32:33Z","body":"implemented some things kyle pointed out","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/442","comments":0,"milestone":null,"number":442,"html_url":"https://github.com/openframeworks/openFrameworks/issues/442","assignee":null,"title":"little fixes to ofDrawBitmapString","labels":[],"closed_at":"2011-01-31T04:32:33Z","created_at":"2011-01-31T03:48:09Z","state":"closed","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":563367,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/442","patch_url":"https://github.com/openframeworks/openFrameworks/pull/442.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/442.diff"}},{"updated_at":"2011-02-11T20:16:23Z","body":"just learned a ton about OF by trying to teach it to 40 itp students. when i asked how many people understood what pixels[y*w+x] meant only 3 people raised their hands :)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/441","comments":6,"milestone":null,"number":441,"html_url":"https://github.com/openframeworks/openFrameworks/issues/441","assignee":null,"title":"ofImage::getPixel and setPixel","labels":[],"closed_at":"2011-02-11T20:16:23Z","created_at":"2011-01-31T01:03:32Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":563219,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/441","patch_url":"https://github.com/openframeworks/openFrameworks/pull/441.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/441.diff"}},{"updated_at":"2011-02-01T22:02:25Z","body":"drawing classes:\n- ofPath: stores commands without decomposing in vertices. Used for renderers that can do things like beziers directly like cairo for pdf/svg. caches ofShape for faster rendering in opengl\n\n-ofShape: stores decomposed primitives like bezier, curve.. as vertices. same api as ofPath. can decompose a whole ofPath. caches outline and tessellation\n\n-ofCairoRenderer: can draw all the primitives to pdf or svg, multipage, still missing background/color/blending functions. some examples:\n - multipage pdf: http://arturocastro.net/multipagepaths.pdf\n - ofTrueType as shapes: http://arturocastro.net/fontasvectors.pdf\n - and 3d: http://arturocastro.net/squirrel.pdf\n\n-ofGLRenderer: uses a vertex array for rendering of ofPath/ofShape, ofVertexData and ofPolyline + viewport, setupScreenPerspective...\n\nofGraphics: all non-gl specific functions (like textureARB) go through renderers, ofGraphics decide to use a path or a shape depending on the type of renderer (cairo -> ofPath, gl -> ofShape)\n\nofTrueTypeFont: ofTTFCharacter as a path, to be able to render to pdf/svg/opengl\n\nofMesh/ofModel: drawing through vbo/default renderer","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/440","comments":1,"milestone":null,"number":440,"html_url":"https://github.com/openframeworks/openFrameworks/issues/440","assignee":null,"title":"Swappable renderers","labels":[],"closed_at":"2011-02-01T22:02:25Z","created_at":"2011-01-30T13:01:01Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":562380,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/440","patch_url":"https://github.com/openframeworks/openFrameworks/pull/440.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/440.diff"}},{"updated_at":"2011-01-31T00:59:41Z","body":"Sometimes when i open advanced3dExample, I get all my variables that are taking from ofRandom(1.0f) = -nan.\ni presume that if we ever get to -nan, then all subsequent random variables are also -nan (unless we reseed).\n\nofSeedRandom seems to have no effect on this issue\n\ni'm testing on OSX 10.6 / Xcode\n\nsometimes, i get valid numbers but all the numbers are quite large\n\nanybody seen similar results?\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/439","comments":2,"milestone":null,"number":439,"html_url":"https://github.com/openframeworks/openFrameworks/issues/439","assignee":null,"title":"ofRandom(1.0f) sometimes giving -nan","labels":[],"closed_at":"2011-01-31T08:58:28Z","created_at":"2011-01-30T11:15:39Z","state":"closed","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":562284,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-01-30T14:03:57Z","body":"Added enum type ofDrawBitmapMode\r\nfunction ofSetDrawBitmapMode(ofDrawBitmapMode mode)\r\n\r\ndefault is OF_BITMAPMODE_SIMPLE (i.e. same method as with kyle's existing ofDrawBitmapString)\r\n\r\nthe options are:\r\n\tOF_BITMAPMODE_SIMPLE = 0,\r\n\tOF_BITMAPMODE_SCREEN,\r\n\tOF_BITMAPMODE_VIEWPORT,\r\n\tOF_BITMAPMODE_MODEL,\r\n\tOF_BITMAPMODE_MODEL_BILLBOARD\r\n\r\nsimple = as before, strange in 3D (upside down for a start!)\r\nscreen = override current transform and draw in screen space\r\nviewport = override current transform and draw in viewport space\r\nmodel = draw in 3D space (with text the right way up)\r\nmodel_billboard = draw in screen space at projected position of 3D point (aka draw in 3D space but ignore scale / rotate / distort)\r\n\r\n\r\n===CONTENTION===\r\nPerhaps the name is wrong?\r\ni.e. if this is only ever going to be used for text\r\nthen ofSetTextMode or ofSetBitmapTextMode\r\nwould be more relevant\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/438","comments":0,"milestone":null,"number":438,"html_url":"https://github.com/openframeworks/openFrameworks/issues/438","assignee":null,"title":"ofSetDrawBitmapMode can be used for altering the personality of ofDrawBitmapString","labels":[],"closed_at":"2011-01-30T14:03:57Z","created_at":"2011-01-30T11:11:39Z","state":"closed","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":562280,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/438","patch_url":"https://github.com/openframeworks/openFrameworks/pull/438.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/438.diff"}},{"updated_at":"2011-02-03T01:40:36Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/437","comments":0,"milestone":null,"number":437,"html_url":"https://github.com/openframeworks/openFrameworks/issues/437","assignee":null,"title":"ofVBO fix for IOS","labels":[],"closed_at":"2011-02-03T01:40:36Z","created_at":"2011-01-30T01:19:33Z","state":"closed","user":{"url":"https://api.github.com/users/vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","id":149997},"id":561917,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/437","patch_url":"https://github.com/openframeworks/openFrameworks/pull/437.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/437.diff"}},{"updated_at":"2012-03-28T15:02:50Z","body":"I found this link that does most of the work for video out from the iPad and iPhone via the VGA adapter:\n\nhttp://www.touchcentric.com/blog/archives/123\nhttp://github.com/robterrell/TVOutManager\n\nIt's a 2-line solution. BUT it uses undocumented APIs and mirrors the entire screen and UI. Instead of copying pixels, I think we could modify this code to automatically call the OF draw method twice and make a new opengl surface on the output surface, thereby speeding up drawing to the second display, and also only drawing opengl content and not any UI.\n\nI could see a really fancy version with options:\n\n1. No mirroring\n2. Mirror opengl (call draw twice)\n3. provide discrete draw callbacks with each display - maybe an argument to the draw callback with screen number? This might be the cleanest option, since it supports both of the above.\n\nScott","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/436","comments":9,"milestone":null,"number":436,"html_url":"https://github.com/openframeworks/openFrameworks/issues/436","assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"title":"Add video out/second display/mirroring for iOS devices","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2012-03-28T15:02:50Z","created_at":"2011-01-29T21:01:03Z","state":"closed","user":{"url":"https://api.github.com/users/snibbe","avatar_url":"https://secure.gravatar.com/avatar/117a7eecfee7c7f7e954623fd96e1b6e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"117a7eecfee7c7f7e954623fd96e1b6e","login":"snibbe","id":581517},"id":561610,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-01-29T20:14:19Z","body":"small fixes to ofNode and ofFbo\nalso made ofImage::getOFPixels() return reference instead of copy","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/435","comments":0,"milestone":null,"number":435,"html_url":"https://github.com/openframeworks/openFrameworks/issues/435","assignee":null,"title":"small fixes to ofNode and ofFbo","labels":[],"closed_at":"2011-01-29T20:14:19Z","created_at":"2011-01-29T20:10:46Z","state":"closed","user":{"url":"https://api.github.com/users/memo","avatar_url":"https://secure.gravatar.com/avatar/b5c0e3c2630097b29680cfeda464024c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b5c0e3c2630097b29680cfeda464024c","login":"memo","id":144230},"id":561561,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/435","patch_url":"https://github.com/openframeworks/openFrameworks/pull/435.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/435.diff"}},{"updated_at":"2011-01-29T14:57:16Z","body":"Bunch of VBO examples and Billboard example - desktop/IOS \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/434","comments":0,"milestone":null,"number":434,"html_url":"https://github.com/openframeworks/openFrameworks/issues/434","assignee":null,"title":"Vbo branch","labels":[],"closed_at":"2011-01-29T14:57:16Z","created_at":"2011-01-29T05:06:28Z","state":"closed","user":{"url":"https://api.github.com/users/vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","id":149997},"id":560785,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/434","patch_url":"https://github.com/openframeworks/openFrameworks/pull/434.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/434.diff"}},{"updated_at":"2011-02-11T19:30:52Z","body":"the main changes in the core is some structures in:\nofImage\nofBitmapString\nofVideoGrabber\n\nto be able to register them and send them notifications when the app pauses and resume. android destroys the opengl context and this way i can regenerate all the textures in a transparent way for people.\n\nThere's also some changes in ifdefs that were iphone where it should be opengles, but appart from that everything else is in ofxAndroid and the androidExamples","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/433","comments":0,"milestone":null,"number":433,"html_url":"https://github.com/openframeworks/openFrameworks/issues/433","assignee":null,"title":"android","labels":[],"closed_at":"2011-02-11T19:30:52Z","created_at":"2011-01-29T02:06:07Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":560638,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/433","patch_url":"https://github.com/openframeworks/openFrameworks/pull/433.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/433.diff"}},{"updated_at":"2011-01-29T05:05:30Z","body":"vbo testing","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/432","comments":0,"milestone":null,"number":432,"html_url":"https://github.com/openframeworks/openFrameworks/issues/432","assignee":null,"title":"Vbo branch","labels":[],"closed_at":"2011-01-29T05:05:30Z","created_at":"2011-01-28T23:04:57Z","state":"closed","user":{"url":"https://api.github.com/users/vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","id":149997},"id":560393,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/432","patch_url":"https://github.com/openframeworks/openFrameworks/pull/432.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/432.diff"}},{"updated_at":"2011-01-29T02:23:05Z","body":"Its IOS safe as well...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/431","comments":0,"milestone":null,"number":431,"html_url":"https://github.com/openframeworks/openFrameworks/issues/431","assignee":null,"title":"ofEnablePointSprites for billboarding ","labels":[],"closed_at":"2011-01-29T02:23:05Z","created_at":"2011-01-28T20:03:24Z","state":"closed","user":{"url":"https://api.github.com/users/vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","id":149997},"id":559876,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/431","patch_url":"https://github.com/openframeworks/openFrameworks/pull/431.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/431.diff"}},{"updated_at":"2011-01-28T19:11:12Z","body":"as per theo's request, elliot's changes merged back to master accounting for things that i changed in the intermediate time.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/430","comments":4,"milestone":null,"number":430,"html_url":"https://github.com/openframeworks/openFrameworks/issues/430","assignee":null,"title":"elliotwoods master","labels":[],"closed_at":"2011-01-28T19:11:12Z","created_at":"2011-01-28T17:44:08Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":559493,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/430","patch_url":"https://github.com/openframeworks/openFrameworks/pull/430.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/430.diff"}},{"updated_at":"2011-01-28T12:58:41Z","body":"this is some more significant commits to ofEasyCam that make it more intuitive. most importantly, the default depth is calculated using a short method i added to ofCamera that calculates the distance from the image plane assuming 1 px = 1 unit.\r\n\r\nofBoxExample is also cleaned up to use ofLight and ofEasyCam.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/429","comments":0,"milestone":null,"number":429,"html_url":"https://github.com/openframeworks/openFrameworks/issues/429","assignee":null,"title":"cleanup of ofBoxExample and ofEasyCam","labels":[],"closed_at":"2011-01-28T12:58:41Z","created_at":"2011-01-28T07:38:49Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":558284,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/429","patch_url":"https://github.com/openframeworks/openFrameworks/pull/429.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/429.diff"}},{"updated_at":"2011-01-28T18:14:32Z","body":"the setup(...) function was throwing and error ambiguous method.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/427","comments":1,"milestone":null,"number":427,"html_url":"https://github.com/openframeworks/openFrameworks/issues/427","assignee":null,"title":"fix for ofShader setup function ","labels":[],"closed_at":"2011-01-28T18:14:32Z","created_at":"2011-01-28T04:39:34Z","state":"closed","user":{"url":"https://api.github.com/users/vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","id":149997},"id":558068,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/427","patch_url":"https://github.com/openframeworks/openFrameworks/pull/427.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/427.diff"}},{"updated_at":"2011-01-28T04:49:12Z","body":"just pulled this from elliot, and merged it with upstream master.\n\nthere are some initial changes to ofPolyline included here as well. the ofPolyline branch still needs to be merged, however.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/426","comments":0,"milestone":null,"number":426,"html_url":"https://github.com/openframeworks/openFrameworks/issues/426","assignee":null,"title":"momentum and a few other fixes to ofEasyCam","labels":[],"closed_at":"2011-01-28T04:49:12Z","created_at":"2011-01-27T21:48:00Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":557210,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/426","patch_url":"https://github.com/openframeworks/openFrameworks/pull/426.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/426.diff"}},{"updated_at":"2011-03-13T21:52:23Z","body":"Auto shows client connected when not true. \r\nThink this is to do with using for the client connections as the first element is created by trying to access it so the returned size of numClients is 1 instead of 0. \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/425","comments":1,"milestone":null,"number":425,"html_url":"https://github.com/openframeworks/openFrameworks/issues/425","assignee":null,"title":"ofxTcpServer example shows client connected on 000.000.000.000 ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2011-03-13T21:52:23Z","created_at":"2011-01-27T19:46:22Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":556929,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-01-29T20:55:00Z","body":"For at least six months, OF cannot compile for iPhone target due to missing FreeImage library compiled for iPhone. If this issue is still outstanding, here is the solution from a June forum posting:\r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=25&t=3658&hilit=+libfreeimage+iphone\r\n\r\njefftimesten\r\nPosted: Sat May 01, 2010 12:37 pm\t \r\nJoined: Fri Oct 05, 2007 8:49 am\r\nPosts: 78\r\nLocation: New York\r\nI found Robert Carlsen's post about compiling FreeImage for armv6 and modified his Makefile a bit so that it compiles for iPhone OS 4.0 and 4.0 simulator.\r\n\r\n1. Download and expand Freeimage\r\n2. Download this Makefile and put it into the FreeImage directory\r\n3. Run the makefile with make -f Makefile.iphone\r\n4. Replace the the libraries in /libs/FreeImage/lib/iphone with libfreeimage-iphone.a and libfreeimage-iphonesimulator.a\r\n5. Add the libraries to your project in the FreeImage group\r\n\r\nAlternately, just download FreeImage_libs_iphoneOS40.zip, unpack it, and put it in your libs folder. \r\n\r\nThis is working for me so far... We'll see if I run into any issues.\r\n\r\n\r\nTop\t \r\nsss\r\nPosted: Sat Jun 19, 2010 8:25 pm\t \r\nJoined: Mon Apr 12, 2010 5:00 pm\r\nPosts: 7\r\nI just tried downloading the compiled libraries and got this error:\r\n\r\nUndefined symbols:\r\n\"_fopen$UNIX2003\", referenced from:\r\n_FreeImage_GetFileType in libfreeimage-iphonesimulator.a(GetType.o-i686)\r\n_FreeImage_Save in libfreeimage-iphonesimulator.a(Plugin.o-i686)\r\n_FreeImage_Load in libfreeimage-iphonesimulator.a(Plugin.o-i686)\r\nLibRaw::dcraw_ppm_tiff_writer(char const*)in libfreeimage-iphonesimulator.a(libraw_cxx.o-i686)\r\nLibRaw::dcraw_thumb_writer(char const*)in libfreeimage-iphonesimulator.a(libraw_cxx.o-i686)\r\nLibRaw_file_datastream::LibRaw_file_datastream(char const*)in libfreeimage-iphonesimulator.a(libraw_cxx.o-i686)\r\n\r\nWhich is supposedly due to a conflict in compiling against different system libraries (http://cocoawithlove.com/2009/09/buildi ... ns-in.html).\r\n\r\nDownloaded FreeImage source and makefile and rebuilt - I'm running OSX6.3. Worked fine. Couldn't attache the libraries here - taking too long to upload. But if anyone fails the process above send me a message and I'll email you the libs.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/422","comments":2,"milestone":null,"number":422,"html_url":"https://github.com/openframeworks/openFrameworks/issues/422","assignee":null,"title":"wrong architecture libfreeimage makes compiling for iPhone device impossible","labels":[],"closed_at":"2011-01-29T20:55:00Z","created_at":"2011-01-24T20:57:33Z","state":"closed","user":{"url":"https://api.github.com/users/snibbe","avatar_url":"https://secure.gravatar.com/avatar/117a7eecfee7c7f7e954623fd96e1b6e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"117a7eecfee7c7f7e954623fd96e1b6e","login":"snibbe","id":581517},"id":548081,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-01-28T04:58:55Z","body":"includes:\r\n\r\nfixes to ofPolyline::draw()\r\nconst fixes to ofVec operators\r\nofPolyline::getPerimeter()\r\nofGetClosestPoint(ofPoint, ofPoint, ofPoint)\r\nofGetClosestPoint(ofPolyline, ofPoint)\r\nofGetSmoothed(ofPolyline)\r\nofGetResampledSpacing(ofPolyline) // resampled in terms of final point spacing\r\nofGetResampledCount(ofPolyline) // resampled in terms of final point count\r\nofGetBoundingBox(ofPolyline)\r\n\r\nadded a ofPolylineTest to devApps, which isn't far from being a demo.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/420","comments":2,"milestone":null,"number":420,"html_url":"https://github.com/openframeworks/openFrameworks/issues/420","assignee":null,"title":"ofPolyline manipulation","labels":[],"closed_at":"2011-01-28T04:58:55Z","created_at":"2011-01-24T08:03:34Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":546587,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/420","patch_url":"https://github.com/openframeworks/openFrameworks/pull/420.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/420.diff"}},{"updated_at":"2011-03-13T23:02:49Z","body":"Added two new fields for controlling the space between characters and text. We're using this for a project already where we need to control the rendering of the text on a touch screen.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/419","comments":0,"milestone":null,"number":419,"html_url":"https://github.com/openframeworks/openFrameworks/issues/419","assignee":null,"title":"Add support for setting the amount of space between characters and the size a space should represent","labels":[],"closed_at":"2011-03-13T23:02:49Z","created_at":"2011-01-23T23:09:06Z","state":"closed","user":{"url":"https://api.github.com/users/scottmac","avatar_url":"https://secure.gravatar.com/avatar/3c5a0318513620a5d04916e7deee6737?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3c5a0318513620a5d04916e7deee6737","login":"scottmac","id":50088},"id":545793,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/419","patch_url":"https://github.com/openframeworks/openFrameworks/pull/419.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/419.diff"}},{"updated_at":"2011-01-31T10:32:22Z","body":"I compiled the last version of Poco on a 32bits Ubuntu 10.04.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/416","comments":1,"milestone":null,"number":416,"html_url":"https://github.com/openframeworks/openFrameworks/issues/416","assignee":null,"title":"New version of Poco for Linux","labels":[],"closed_at":"2011-01-31T10:32:22Z","created_at":"2011-01-21T17:33:50Z","state":"closed","user":{"url":"https://api.github.com/users/I33N","avatar_url":"https://secure.gravatar.com/avatar/ba8d7c3b4532d3747c30b9be91dc20d5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"ba8d7c3b4532d3747c30b9be91dc20d5","login":"I33N","id":520375},"id":541961,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/416","patch_url":"https://github.com/openframeworks/openFrameworks/pull/416.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/416.diff"}},{"updated_at":"2011-01-20T20:52:48Z","body":"its currently wrapped in #ifndef TARGET_OPENGLES","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/415","comments":1,"milestone":null,"number":415,"html_url":"https://github.com/openframeworks/openFrameworks/issues/415","assignee":null,"title":"ofEnableAlphaBlending / ofEnableBlendMode doesn't work on iPhone","labels":[],"closed_at":"2011-01-20T20:52:48Z","created_at":"2011-01-20T20:51:24Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":540057,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=25&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4971'), ('content-length', '28826'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"eb8b1faa67b539bbc57910658df0d5b4"'), ('date', 'Tue, 29 May 2012 18:46:46 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-01-20T19:07:52Z","body":"This allows ofGetMouseX and ofGetMousePressed to work on iPhone. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/411","comments":1,"milestone":null,"number":411,"html_url":"https://github.com/openframeworks/openFrameworks/issues/411","assignee":null,"title":"Update EagleView.mm to use ofEvents.cpp mouse notification","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"}],"closed_at":"2011-01-20T19:07:52Z","created_at":"2011-01-20T19:07:08Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":539769,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-01-19T23:43:07Z","body":"right now we are adding a '\\0' to the end of the buffer but this could break binary files","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/409","comments":1,"milestone":null,"number":409,"html_url":"https://github.com/openframeworks/openFrameworks/issues/409","assignee":null,"title":"ofBuffer needs string/binary mode so it knows to add null byte ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2011-01-19T23:43:07Z","created_at":"2011-01-19T23:13:48Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":537987,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-01-19T23:10:32Z","body":"simple fix on mouse action to memo's ofEasyCam arcball mechanism\n\nadded a new example called 'advanced3dExample' which demonstrates:\nuse of viewports\ncustom 3D classes inherited from ofNode\ncustom camera class inherited from ofCamera\nlighting\nsome simple 3D mechanics (SHM)\n\nofViewport now uses oF co-ordinate system as default (there was a ticket about this a while back, and a new one by me recently). oF co-ordinate system is default, but the last argument can be set to false if you want to use gl window space","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/408","comments":1,"milestone":null,"number":408,"html_url":"https://github.com/openframeworks/openFrameworks/issues/408","assignee":null,"title":"fixes to memo's arcball, advanced3dExample added, ofViewport invert option added","labels":[],"closed_at":"2011-01-20T06:39:30Z","created_at":"2011-01-19T21:59:26Z","state":"closed","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":537808,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/408","patch_url":"https://github.com/openframeworks/openFrameworks/pull/408.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/408.diff"}},{"updated_at":"2011-03-13T21:20:25Z","body":"the latest check in of the easy cam example glitches and rotates erratically. \r\nIt was working nicely a few days ago...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/407","comments":0,"milestone":null,"number":407,"html_url":"https://github.com/openframeworks/openFrameworks/issues/407","assignee":null,"title":"easyCam example broken","labels":[],"closed_at":"2011-03-13T21:20:25Z","created_at":"2011-01-19T21:48:07Z","state":"closed","user":{"url":"https://api.github.com/users/obviousjim","avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","login":"obviousjim","id":321434},"id":537783,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-13T21:18:35Z","body":"The ofxDirList addon is having a problem. I've only tested it on OS X in Xcode.\r\n\r\nIf you try to Build and Run openFrameworks / apps / addonsExamples / dirListExample you will get the error:\r\n../../../addons/ofxDirList/src/ofxDirList.h:46: error: 'relDir' was not declared in this scope","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/404","comments":1,"milestone":null,"number":404,"html_url":"https://github.com/openframeworks/openFrameworks/issues/404","assignee":null,"title":"ofxDirList broken","labels":[],"closed_at":"2011-03-13T21:18:35Z","created_at":"2011-01-18T18:43:43Z","state":"closed","user":{"url":"https://api.github.com/users/jfenwick","avatar_url":"https://secure.gravatar.com/avatar/1360daa717268f06cb3b7cc64dbabd1f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"1360daa717268f06cb3b7cc64dbabd1f","login":"jfenwick","id":99384},"id":534777,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-04T14:10:49Z","body":"Is this the answer?\r\nofLogger needs lots of attention - its quite dangerous as is. \r\n\r\n\t#ifndef TARGET_OS_IPHONE\r\n\t\tfileChannel = new Poco::FileChannel(ofToDataPath(\"openframeworks.log\"));\r\n\t#else\r\n\t\tfileChannel = new Poco::FileChannel();\r\n\t#endif ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/402","comments":1,"milestone":null,"number":402,"html_url":"https://github.com/openframeworks/openFrameworks/issues/402","assignee":null,"title":"ofLogger is still creating a log file by default - on iPhone this causes a crash as data/ is not writable","labels":[],"closed_at":"2011-12-04T14:10:49Z","created_at":"2011-01-17T17:47:00Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":532246,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-01-19T22:32:44Z","body":"cleaner and more complete version of the mesh dev with the modified structure; data is now stored in ofMeshElement with a mode of how it is indexed (and the corresponding indices). ofAssimpMeshLoader loads into an ofMeshElement with default mode triangles, ofVboMesh uses a vbo to draw this mesh. Proper implementation still needed for normals, colors, and tex coords, but wanted to send over the current structure that I think (hope) will be our final.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/401","comments":0,"milestone":null,"number":401,"html_url":"https://github.com/openframeworks/openFrameworks/issues/401","assignee":null,"title":"updated structure for meshes, likely preferable over last pull request","labels":[],"closed_at":"2011-01-19T22:32:44Z","created_at":"2011-01-17T17:19:59Z","state":"closed","user":{"url":"https://api.github.com/users/kpasko","avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","login":"kpasko","id":167271},"id":532185,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/401","patch_url":"https://github.com/openframeworks/openFrameworks/pull/401.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/401.diff"}},{"updated_at":"2011-12-04T14:10:30Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/399","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":399,"html_url":"https://github.com/openframeworks/openFrameworks/issues/399","assignee":null,"title":"ofTTF should have setAnchorPercent - so you can draw string centred or right aligned etc. ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":"2011-12-04T14:10:30Z","created_at":"2011-01-17T16:36:06Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":532090,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-01-19T22:20:34Z","body":"eg: virtual destructors, checking for nan/inf in important places, panning on the mixer actually working","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/398","comments":0,"milestone":null,"number":398,"html_url":"https://github.com/openframeworks/openFrameworks/issues/398","assignee":null,"title":"important fixes to ofSynth + damian's awesome floating points sound example","labels":[],"closed_at":"2011-01-19T22:20:34Z","created_at":"2011-01-17T04:00:07Z","state":"closed","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":531085,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/398","patch_url":"https://github.com/openframeworks/openFrameworks/pull/398.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/398.diff"}},{"updated_at":"2011-01-19T22:10:10Z","body":"typo in the graphics core, leading to unexpected behavior.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/397","comments":0,"milestone":null,"number":397,"html_url":"https://github.com/openframeworks/openFrameworks/issues/397","assignee":null,"title":"Of clear fix","labels":[],"closed_at":"2011-01-19T22:10:10Z","created_at":"2011-01-16T19:53:01Z","state":"closed","user":{"url":"https://api.github.com/users/jonbro","avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"893ec14dc008e3774afe5841115920d6","login":"jonbro","id":1597},"id":530422,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/397","patch_url":"https://github.com/openframeworks/openFrameworks/pull/397.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/397.diff"}},{"updated_at":"2011-01-19T22:08:22Z","body":"cleaned up the file structure\r\nadded all the constructors to the classes\r\npulled the files into different classes\r\nadded the sequencing example in a new place","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/396","comments":0,"milestone":null,"number":396,"html_url":"https://github.com/openframeworks/openFrameworks/issues/396","assignee":null,"title":"Ofx synth fixes","labels":[],"closed_at":"2011-01-19T22:08:22Z","created_at":"2011-01-16T17:12:17Z","state":"closed","user":{"url":"https://api.github.com/users/jonbro","avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"893ec14dc008e3774afe5841115920d6","login":"jonbro","id":1597},"id":530188,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/396","patch_url":"https://github.com/openframeworks/openFrameworks/pull/396.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/396.diff"}},{"updated_at":"2011-01-17T17:16:05Z","body":"actually added the files this time, removed vao.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/395","comments":0,"milestone":null,"number":395,"html_url":"https://github.com/openframeworks/openFrameworks/issues/395","assignee":null,"title":"very basic working version of mesh loading and displaying via vbo","labels":[],"closed_at":"2011-01-17T17:16:05Z","created_at":"2011-01-16T15:28:34Z","state":"closed","user":{"url":"https://api.github.com/users/kpasko","avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","login":"kpasko","id":167271},"id":530083,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/395","patch_url":"https://github.com/openframeworks/openFrameworks/pull/395.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/395.diff"}},{"updated_at":"2011-01-16T15:19:17Z","body":"note that the assimp loader is currently in the src folder of the devApps/meshTester example...wanted to hold back on putting that in core for now","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/394","comments":0,"milestone":null,"number":394,"html_url":"https://github.com/openframeworks/openFrameworks/issues/394","assignee":null,"title":"basic functionality for assimp model loading and vertex array drawing of the data","labels":[],"closed_at":"2011-01-16T15:19:17Z","created_at":"2011-01-16T15:16:50Z","state":"closed","user":{"url":"https://api.github.com/users/kpasko","avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","login":"kpasko","id":167271},"id":530075,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/394","patch_url":"https://github.com/openframeworks/openFrameworks/pull/394.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/394.diff"}},{"updated_at":"2011-03-13T19:20:10Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/393","comments":1,"milestone":null,"number":393,"html_url":"https://github.com/openframeworks/openFrameworks/issues/393","assignee":null,"title":"Added << operators for most of the core classes.","labels":[],"closed_at":"2011-03-13T19:20:10Z","created_at":"2011-01-16T14:51:35Z","state":"closed","user":{"url":"https://api.github.com/users/roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","id":358809},"id":530057,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/393","patch_url":"https://github.com/openframeworks/openFrameworks/pull/393.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/393.diff"}},{"updated_at":"2011-01-16T15:07:53Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/392","comments":0,"milestone":null,"number":392,"html_url":"https://github.com/openframeworks/openFrameworks/issues/392","assignee":null,"title":"3d","labels":[],"closed_at":"2011-01-16T15:07:53Z","created_at":"2011-01-16T07:22:30Z","state":"closed","user":{"url":"https://api.github.com/users/memo","avatar_url":"https://secure.gravatar.com/avatar/b5c0e3c2630097b29680cfeda464024c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b5c0e3c2630097b29680cfeda464024c","login":"memo","id":144230},"id":529708,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/392","patch_url":"https://github.com/openframeworks/openFrameworks/pull/392.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/392.diff"}},{"updated_at":"2011-04-10T07:29:49Z","body":"added ofBitmapStream and removed an extraneous printf in ofLogger","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/390","comments":2,"milestone":null,"number":390,"html_url":"https://github.com/openframeworks/openFrameworks/issues/390","assignee":null,"title":"added ofBitmapStream, fixed logger bugs, added loggerTest app","labels":[],"closed_at":"2011-04-10T07:29:49Z","created_at":"2011-01-16T07:17:28Z","state":"closed","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":529702,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/390","patch_url":"https://github.com/openframeworks/openFrameworks/pull/390.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/390.diff"}},{"updated_at":"2011-01-16T06:42:17Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/388","comments":0,"milestone":null,"number":388,"html_url":"https://github.com/openframeworks/openFrameworks/issues/388","assignee":null,"title":"more 3d awesomeness","labels":[],"closed_at":"2011-01-16T06:42:17Z","created_at":"2011-01-16T06:33:17Z","state":"closed","user":{"url":"https://api.github.com/users/memo","avatar_url":"https://secure.gravatar.com/avatar/b5c0e3c2630097b29680cfeda464024c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b5c0e3c2630097b29680cfeda464024c","login":"memo","id":144230},"id":529671,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/388","patch_url":"https://github.com/openframeworks/openFrameworks/pull/388.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/388.diff"}},{"updated_at":"2011-01-16T06:34:42Z","body":"fixed logger exception on exit, messages are printed with a warning if the logger is being called after it's been destroyed using printf","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/386","comments":0,"milestone":null,"number":386,"html_url":"https://github.com/openframeworks/openFrameworks/issues/386","assignee":null,"title":"fixed logger exception on exit","labels":[],"closed_at":"2011-01-16T06:34:42Z","created_at":"2011-01-16T05:46:14Z","state":"closed","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":529638,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/386","patch_url":"https://github.com/openframeworks/openFrameworks/pull/386.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/386.diff"}},{"updated_at":"2011-01-16T05:28:25Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/385","comments":0,"milestone":null,"number":385,"html_url":"https://github.com/openframeworks/openFrameworks/issues/385","assignee":null,"title":"Of shape clean moved example","labels":[],"closed_at":"2011-01-16T05:28:25Z","created_at":"2011-01-16T05:15:06Z","state":"closed","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":529620,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/385","patch_url":"https://github.com/openframeworks/openFrameworks/pull/385.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/385.diff"}},{"updated_at":"2011-01-16T05:05:54Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/384","comments":0,"milestone":null,"number":384,"html_url":"https://github.com/openframeworks/openFrameworks/issues/384","assignee":null,"title":"moved threadedimageloader to addonsexamples","labels":[],"closed_at":"2011-01-16T05:05:54Z","created_at":"2011-01-16T04:29:23Z","state":"closed","user":{"url":"https://api.github.com/users/roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","id":358809},"id":529598,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/384","patch_url":"https://github.com/openframeworks/openFrameworks/pull/384.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/384.diff"}},{"updated_at":"2011-01-16T05:03:14Z","body":"from video grabber works better","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/383","comments":0,"milestone":null,"number":383,"html_url":"https://github.com/openframeworks/openFrameworks/issues/383","assignee":null,"title":"isFrameNew","labels":[],"closed_at":"2011-01-16T05:03:14Z","created_at":"2011-01-16T04:23:39Z","state":"closed","user":{"url":"https://api.github.com/users/stfj","avatar_url":"https://secure.gravatar.com/avatar/b089227a1748a2d70cdfc4ef00b325ad?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b089227a1748a2d70cdfc4ef00b325ad","login":"stfj","id":177578},"id":529592,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/383","patch_url":"https://github.com/openframeworks/openFrameworks/pull/383.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/383.diff"}},{"updated_at":"2011-01-19T23:05:45Z","body":"Looks like uninited memory \r\n\r\nOF_VERBOSE: Creating GLSL Program\r\nOF_ERROR: GL_VERTEX_SHADER shader failed to compile\r\nOF_ERROR: GL_VERTEX_SHADER shader reports:\r\nERROR: 0:9: 'metrySh' : syntax error syntax error\r\n\r\nOF_ERROR: GL_FRAGMENT_SHADER shader failed to compile\r\nOF_ERROR: GL_FRAGMENT_SHADER shader reports:\r\nERROR: 0:6: ']' : syntax error syntax error\r\n\r\nOF_ERROR: GL_GEOMETRY_SHADER_EXT shader failed to compile\r\nOF_ERROR: GL_GEOMETRY_SHADER_EXT shader reports:\r\nERROR: 0:44: 'mpler2DRectShadow' : syntax error syntax error\r\n\r\nOF_ERROR: Trying to link GLSL program, but no shaders created yet\r\nMaximum number of output vertices support is: 1024\r\nOF_VERBOSE: OF app is being terminated!\r\n\r\nOF_VERBOSE: Creating GLSL Program\r\nOF_ERROR: GL_VERTEX_SHADER shader failed to compile\r\nOF_ERROR: GL_VERTEX_SHADER shader reports:\r\nERROR: 0:9: 'orks' : syntax error syntax error\r\n\r\nOF_ERROR: GL_FRAGMENT_SHADER shader failed to compile\r\nOF_ERROR: GL_FRAGMENT_SHADER shader reports:\r\nERROR: 0:6: 'SHADER' : syntax error syntax error\r\n\r\nOF_VERBOSE: GL_GEOMETRY_SHADER_EXT shader compiled.\r\nOF_VERBOSE: Attaching shader of type GL_GEOMETRY_SHADER_EXT\r\nOF_ERROR: Shader program reports:\r\nERROR: geometry shader does not have required vertex shader.\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/382","comments":1,"milestone":null,"number":382,"html_url":"https://github.com/openframeworks/openFrameworks/issues/382","assignee":null,"title":"ofShader - sometimes the shader names that are being loaded look mangled. Could be ofBuffer","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2011-01-19T23:05:45Z","created_at":"2011-01-16T04:21:05Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":529589,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-13T21:09:31Z","body":"cf #define DRAW_WITH_MESHIES in ofShape.h\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/381","comments":0,"milestone":null,"number":381,"html_url":"https://github.com/openframeworks/openFrameworks/issues/381","assignee":null,"title":"ofShape should use ofMesh once ofMesh is ready","labels":[],"closed_at":"2011-03-13T21:09:31Z","created_at":"2011-01-16T03:25:40Z","state":"closed","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":529546,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-01-16T05:15:30Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/380","comments":0,"milestone":null,"number":380,"html_url":"https://github.com/openframeworks/openFrameworks/issues/380","assignee":null,"title":"ofShape","labels":[],"closed_at":"2011-01-16T05:15:30Z","created_at":"2011-01-16T03:12:08Z","state":"closed","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":529537,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/380","patch_url":"https://github.com/openframeworks/openFrameworks/pull/380.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/380.diff"}},{"updated_at":"2011-01-16T03:07:45Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/379","comments":0,"milestone":null,"number":379,"html_url":"https://github.com/openframeworks/openFrameworks/issues/379","assignee":null,"title":"ofShape","labels":[],"closed_at":"2011-01-16T03:07:45Z","created_at":"2011-01-16T00:45:43Z","state":"closed","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":529388,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/379","patch_url":"https://github.com/openframeworks/openFrameworks/pull/379.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/379.diff"}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=26&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4970'), ('content-length', '28575'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"18ade8333b69e6ed5113f575903c21d1"'), ('date', 'Tue, 29 May 2012 18:46:47 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-01-16T03:29:11Z","body":"pending soundSwapping and integration of the new mesh stuff etc., ofxiphone 007 is complete (i think) (!!)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/378","comments":0,"milestone":null,"number":378,"html_url":"https://github.com/openframeworks/openFrameworks/issues/378","assignee":null,"title":"ofxiPhone007 complete","labels":[],"closed_at":"2011-01-16T03:29:11Z","created_at":"2011-01-16T00:11:09Z","state":"closed","user":{"url":"https://api.github.com/users/stfj","avatar_url":"https://secure.gravatar.com/avatar/b089227a1748a2d70cdfc4ef00b325ad?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b089227a1748a2d70cdfc4ef00b325ad","login":"stfj","id":177578},"id":529366,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/378","patch_url":"https://github.com/openframeworks/openFrameworks/pull/378.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/378.diff"}},{"updated_at":"2011-01-16T03:31:10Z","body":"The ofLogger uses the Poco::FileChannel to write to the log file which does not have append/replace controls. An easy way to add this would be to implement a custom FileChannel class with these controls.\r\n\r\nSee Poco::FileChannel.h/.cpp: http://pocoproject.org/docs/Poco.FileChannel.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/377","comments":1,"milestone":null,"number":377,"html_url":"https://github.com/openframeworks/openFrameworks/issues/377","assignee":null,"title":"file logger overwrites existing file, does not append","labels":[],"closed_at":"2011-01-16T03:31:10Z","created_at":"2011-01-15T23:11:24Z","state":"closed","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":529282,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-01-16T03:26:46Z","body":"clear the working buffer on init in case no-one touches it; a few formatting tweaks; log message in ofSoundBuffer on bad behaviour by user.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/376","comments":0,"milestone":null,"number":376,"html_url":"https://github.com/openframeworks/openFrameworks/issues/376","assignee":null,"title":"Sound tweaks","labels":[],"closed_at":"2011-01-16T03:26:46Z","created_at":"2011-01-15T23:06:13Z","state":"closed","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":529272,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/376","patch_url":"https://github.com/openframeworks/openFrameworks/pull/376.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/376.diff"}},{"updated_at":"2011-01-16T03:32:51Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/374","comments":0,"milestone":null,"number":374,"html_url":"https://github.com/openframeworks/openFrameworks/issues/374","assignee":null,"title":"Add threaded loader example to the devApps.","labels":[],"closed_at":"2011-01-16T03:32:51Z","created_at":"2011-01-15T22:57:26Z","state":"closed","user":{"url":"https://api.github.com/users/roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","id":358809},"id":529264,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/374","patch_url":"https://github.com/openframeworks/openFrameworks/pull/374.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/374.diff"}},{"updated_at":"2011-01-16T03:25:46Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/373","comments":0,"milestone":null,"number":373,"html_url":"https://github.com/openframeworks/openFrameworks/issues/373","assignee":null,"title":"awesome 3d updates!","labels":[],"closed_at":"2011-01-16T03:25:46Z","created_at":"2011-01-15T22:43:16Z","state":"closed","user":{"url":"https://api.github.com/users/memo","avatar_url":"https://secure.gravatar.com/avatar/b5c0e3c2630097b29680cfeda464024c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b5c0e3c2630097b29680cfeda464024c","login":"memo","id":144230},"id":529248,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/373","patch_url":"https://github.com/openframeworks/openFrameworks/pull/373.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/373.diff"}},{"updated_at":"2011-01-15T23:47:15Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/372","comments":0,"milestone":null,"number":372,"html_url":"https://github.com/openframeworks/openFrameworks/issues/372","assignee":null,"title":"major log update to add access to a poco console/file logger and convenience stream log classes","labels":[],"closed_at":"2011-01-15T23:47:15Z","created_at":"2011-01-15T22:27:05Z","state":"closed","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":529228,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/372","patch_url":"https://github.com/openframeworks/openFrameworks/pull/372.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/372.diff"}},{"updated_at":"2011-01-16T03:19:35Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/371","comments":0,"milestone":null,"number":371,"html_url":"https://github.com/openframeworks/openFrameworks/issues/371","assignee":null,"title":"modified ofImage to remove FreeImage dependencies in the header","labels":[],"closed_at":"2011-01-16T03:19:35Z","created_at":"2011-01-15T22:20:35Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":529219,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/371","patch_url":"https://github.com/openframeworks/openFrameworks/pull/371.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/371.diff"}},{"updated_at":"2012-03-17T19:29:11Z","body":"so that you can do slab processing on the gpu by just writing ofRect, rather than defining your own vertexes and passing them to the card.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/370","comments":1,"milestone":null,"number":370,"html_url":"https://github.com/openframeworks/openFrameworks/issues/370","assignee":null,"title":"ofRect should have texCoordinates","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2012-03-17T19:29:11Z","created_at":"2011-01-15T20:00:01Z","state":"closed","user":{"url":"https://api.github.com/users/jonbro","avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"893ec14dc008e3774afe5841115920d6","login":"jonbro","id":1597},"id":529085,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-01-15T21:48:18Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/369","comments":0,"milestone":null,"number":369,"html_url":"https://github.com/openframeworks/openFrameworks/issues/369","assignee":null,"title":"normalized naming and argument conventions for ofImage loading","labels":[],"closed_at":"2011-01-15T21:48:18Z","created_at":"2011-01-15T19:11:41Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":529043,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/369","patch_url":"https://github.com/openframeworks/openFrameworks/pull/369.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/369.diff"}},{"updated_at":"2012-04-18T13:33:17Z","body":"On OSX, resizing the window causes persistent flickering with ofSetBackgroundAuto(false). \r\n\r\nIt appears as though oF is still drawing double-buffered and is swapping between front and back buffers even with ofSetBackgroundAuto(false), but this behaviour only appears if the window is resized. Expected behaviour would be to draw single buffered with ofSetBackgroundAuto(false) (always draw to the back buffer).","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/368","comments":15,"milestone":null,"number":368,"html_url":"https://github.com/openframeworks/openFrameworks/issues/368","assignee":null,"title":"ofSetBackgroundAuto flickering","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2012-04-18T13:33:17Z","created_at":"2011-01-15T18:11:04Z","state":"closed","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":528983,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-01-15T21:45:53Z","body":"as requested. adds missing headers and binary files.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/367","comments":0,"milestone":null,"number":367,"html_url":"https://github.com/openframeworks/openFrameworks/issues/367","assignee":null,"title":"Ofx synth fixes","labels":[],"closed_at":"2011-01-15T21:45:53Z","created_at":"2011-01-15T17:11:45Z","state":"closed","user":{"url":"https://api.github.com/users/jonbro","avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"893ec14dc008e3774afe5841115920d6","login":"jonbro","id":1597},"id":528919,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/367","patch_url":"https://github.com/openframeworks/openFrameworks/pull/367.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/367.diff"}},{"updated_at":"2011-01-15T16:43:57Z","body":"when saving an image it is now possible to specify the jpeg compression level.\r\n\r\nmore complex options are available, but this is a start.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/366","comments":0,"milestone":null,"number":366,"html_url":"https://github.com/openframeworks/openFrameworks/issues/366","assignee":null,"title":"added image compression parameter to ofImage","labels":[],"closed_at":"2011-01-15T16:43:57Z","created_at":"2011-01-15T09:01:25Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":528525,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/366","patch_url":"https://github.com/openframeworks/openFrameworks/pull/366.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/366.diff"}},{"updated_at":"2011-01-15T06:09:03Z","body":"because the viewport was being saved, fbos would not properly draw to the screen.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/365","comments":0,"milestone":null,"number":365,"html_url":"https://github.com/openframeworks/openFrameworks/issues/365","assignee":null,"title":"Fbo viewport fix","labels":[],"closed_at":"2011-01-15T06:09:03Z","created_at":"2011-01-15T06:01:11Z","state":"closed","user":{"url":"https://api.github.com/users/jonbro","avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"893ec14dc008e3774afe5841115920d6","login":"jonbro","id":1597},"id":528437,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/365","patch_url":"https://github.com/openframeworks/openFrameworks/pull/365.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/365.diff"}},{"updated_at":"2011-01-15T16:27:17Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/364","comments":0,"milestone":null,"number":364,"html_url":"https://github.com/openframeworks/openFrameworks/issues/364","assignee":null,"title":"Of color constants","labels":[],"closed_at":"2011-01-15T16:27:17Z","created_at":"2011-01-15T05:59:05Z","state":"closed","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":528436,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/364","patch_url":"https://github.com/openframeworks/openFrameworks/pull/364.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/364.diff"}},{"updated_at":"2011-01-15T17:25:51Z","body":"woo!","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/363","comments":0,"milestone":null,"number":363,"html_url":"https://github.com/openframeworks/openFrameworks/issues/363","assignee":null,"title":"video stuff for iphone","labels":[],"closed_at":"2011-01-15T17:25:51Z","created_at":"2011-01-15T04:58:53Z","state":"closed","user":{"url":"https://api.github.com/users/stfj","avatar_url":"https://secure.gravatar.com/avatar/b089227a1748a2d70cdfc4ef00b325ad?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b089227a1748a2d70cdfc4ef00b325ad","login":"stfj","id":177578},"id":528398,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/363","patch_url":"https://github.com/openframeworks/openFrameworks/pull/363.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/363.diff"}},{"updated_at":"2011-02-10T20:09:11Z","body":"there's a branch with ofPixels using smartpointers internally to make it java like. there's also an example in devApps/smartofPixels:\r\n\r\nhttps://github.com/openframeworks/openFrameworks/tree/smartofPixels","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/362","comments":1,"milestone":null,"number":362,"html_url":"https://github.com/openframeworks/openFrameworks/issues/362","assignee":null,"title":"decide if we want smart pointers","labels":[],"closed_at":"2011-02-10T20:09:11Z","created_at":"2011-01-15T03:47:47Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":528329,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-01-15T05:10:37Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/361","comments":0,"milestone":null,"number":361,"html_url":"https://github.com/openframeworks/openFrameworks/issues/361","assignee":null,"title":"Added the ofxSynth and examples","labels":[],"closed_at":"2011-01-15T05:10:37Z","created_at":"2011-01-15T00:56:39Z","state":"closed","user":{"url":"https://api.github.com/users/jonbro","avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"893ec14dc008e3774afe5841115920d6","login":"jonbro","id":1597},"id":528173,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/361","patch_url":"https://github.com/openframeworks/openFrameworks/pull/361.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/361.diff"}},{"updated_at":"2011-03-13T21:06:39Z","body":"static bool mySortFunction( ofPoint A, ofPoint B ){\r\n return ( A.x < B.x );\r\n}\r\n\r\nvector myVector;\r\nofSort(myVector, mySortFunction);","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/360","comments":0,"milestone":null,"number":360,"html_url":"https://github.com/openframeworks/openFrameworks/issues/360","assignee":null,"title":"ofSort( myVector, mySortFunction )","labels":[],"closed_at":"2011-03-13T21:06:39Z","created_at":"2011-01-14T21:27:30Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":527844,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-13T21:04:37Z","body":"ofVertex() does not accept ofVec2f","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/359","comments":1,"milestone":null,"number":359,"html_url":"https://github.com/openframeworks/openFrameworks/issues/359","assignee":null,"title":"ofVertex() does not accept ofVec2f","labels":[],"closed_at":"2011-03-13T21:04:37Z","created_at":"2011-01-14T20:30:16Z","state":"closed","user":{"url":"https://api.github.com/users/vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","id":149997},"id":527721,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-02-25T20:12:06Z","body":"2011-01-14 14:46:11.675 serialExample[91162:a0f] *** __NSAutoreleaseNoPool(): Object 0x3478e0 of class NSCFArray autoreleased with no pool in place - just leaking\r\n2011-01-14 14:46:11.676 serialExample[91162:a0f] *** __NSAutoreleaseNoPool(): Object 0x347d00 of class NSPathStore2 autoreleased with no pool in place - just leaking\r\n2011-01-14 14:46:11.676 serialExample[91162:a0f] *** __NSAutoreleaseNoPool(): Object 0x347d30 of class NSCFData autoreleased with no pool in place - just leaking\r\n2011-01-14 14:46:11.677 serialExample[91162:a0f] *** __NSAutoreleaseNoPool(): Object 0xa03d2ae8 of class NSCFString autoreleased with no pool in place - just leaking\r\n2011-01-14 14:46:11.678 serialExample[91162:a0f] *** __NSAutoreleaseNoPool(): Object 0x31dfd0 of class __NSArray0 autoreleased with no pool in place - just leaking\r\n2011-01-14 14:46:11.679 serialExample[91162:a0f] *** __NSAutoreleaseNoPool(): Object 0x3199c0 of class NSCFNumber autoreleased with no pool in place - just leaking\r\n2011-01-14 14:46:11.680 serialExample[91162:a0f] *** __NSAutoreleaseNoPool(): Object 0x347fa0 of class NSCFArray autoreleased with no pool in place - just leaking\r\n2011-01-14 14:46:11.681 serialExample[91162:a0f] *** __NSAutoreleaseNoPool(): Object 0x3353f0 of class NSCFArray autoreleased with no pool in place - just leaking\r\n2011-01-14 14:46:11.682 serialExample[91162:a0f] *** __NSAutoreleaseNoPool(): Object 0xa067344c of class NSCFString autoreleased with no pool in place - just leaking\r\n2011-01-14 14:46:15.645 serialExample[91162:a0f] *** __NSAutoreleaseNoPool(): Object 0x1813ee0 of class NSCFArray autoreleased with no pool in place - just leaking\r\n2011-01-14 14:46:15.650 serialExample[91162:a0f] *** __NSAutoreleaseNoPool(): Object 0x1826d60 of class NSCarbonWindow autoreleased with no pool in place - just leaking","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/358","comments":4,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/4","number":4,"title":"0071 Release","due_on":"2012-04-08T07:00:00Z","closed_issues":70,"open_issues":0,"created_at":"2011-12-02T15:29:28Z","state":"closed","description":"","id":61808},"number":358,"html_url":"https://github.com/openframeworks/openFrameworks/issues/358","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"ofCreateAlertDialog - leaking on os x ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":"2012-02-25T20:01:20Z","created_at":"2011-01-14T19:48:33Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":527633,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-13T19:19:20Z","body":"Missing include in ofxAccelerometer.h was causing the compile to bork. Added include of ofpoint.h and all is happy.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/356","comments":1,"milestone":null,"number":356,"html_url":"https://github.com/openframeworks/openFrameworks/issues/356","assignee":null,"title":"Add missing include","labels":[],"closed_at":"2011-03-13T19:19:20Z","created_at":"2011-01-14T18:50:50Z","state":"closed","user":{"url":"https://api.github.com/users/emonty","avatar_url":"https://secure.gravatar.com/avatar/70046f765dfa1f330e61066dda4351bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"70046f765dfa1f330e61066dda4351bb","login":"emonty","id":95156},"id":527515,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/356","patch_url":"https://github.com/openframeworks/openFrameworks/pull/356.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/356.diff"}},{"updated_at":"2011-01-19T22:42:33Z","body":"The recent move of ofNode3d.h wound up moving it to ofNode3D.h. I'm guessing folks are on mac laptops with case-insensitive filesystems. :) ... In any case, just a few includes had to be fixed for linux.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/355","comments":1,"milestone":null,"number":355,"html_url":"https://github.com/openframeworks/openFrameworks/issues/355","assignee":null,"title":"Fix 3d case problem","labels":[],"closed_at":"2011-01-19T22:42:33Z","created_at":"2011-01-14T18:28:23Z","state":"closed","user":{"url":"https://api.github.com/users/emonty","avatar_url":"https://secure.gravatar.com/avatar/70046f765dfa1f330e61066dda4351bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"70046f765dfa1f330e61066dda4351bb","login":"emonty","id":95156},"id":527480,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/355","patch_url":"https://github.com/openframeworks/openFrameworks/pull/355.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/355.diff"}},{"updated_at":"2011-01-15T05:54:41Z","body":"(ofColor::gray, ofColor::blue, ofColor::red etc)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/354","comments":0,"milestone":null,"number":354,"html_url":"https://github.com/openframeworks/openFrameworks/issues/354","assignee":null,"title":"adds ofColor static members for predefined colors","labels":[],"closed_at":"2011-01-15T05:54:41Z","created_at":"2011-01-14T18:12:42Z","state":"closed","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":527453,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/354","patch_url":"https://github.com/openframeworks/openFrameworks/pull/354.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/354.diff"}},{"updated_at":"2011-01-15T05:06:37Z","body":"indices draw correctly now for back face culling and lighting","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/353","comments":1,"milestone":null,"number":353,"html_url":"https://github.com/openframeworks/openFrameworks/issues/353","assignee":null,"title":"fixes to ofBox","labels":[],"closed_at":"2011-01-15T05:06:37Z","created_at":"2011-01-14T15:58:50Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":527200,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/353","patch_url":"https://github.com/openframeworks/openFrameworks/pull/353.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/353.diff"}},{"updated_at":"2011-01-14T15:13:08Z","body":"yo, fixed all latest conflits and ready to go","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/352","comments":0,"milestone":null,"number":352,"html_url":"https://github.com/openframeworks/openFrameworks/issues/352","assignee":null,"title":"Adv3d","labels":[],"closed_at":"2011-01-14T15:13:08Z","created_at":"2011-01-14T06:55:56Z","state":"closed","user":{"url":"https://api.github.com/users/memo","avatar_url":"https://secure.gravatar.com/avatar/b5c0e3c2630097b29680cfeda464024c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b5c0e3c2630097b29680cfeda464024c","login":"memo","id":144230},"id":526473,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/352","patch_url":"https://github.com/openframeworks/openFrameworks/pull/352.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/352.diff"}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=27&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4969'), ('content-length', '24473'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"ce1b424cfdd846014923c2d5d4528074"'), ('date', 'Tue, 29 May 2012 18:46:48 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-01-14T05:39:52Z","body":"whoop whoop","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/351","comments":0,"milestone":null,"number":351,"html_url":"https://github.com/openframeworks/openFrameworks/issues/351","assignee":null,"title":"made ofPoint typedef'd","labels":[],"closed_at":"2011-01-14T05:39:52Z","created_at":"2011-01-14T05:34:07Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":526404,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/351","patch_url":"https://github.com/openframeworks/openFrameworks/pull/351.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/351.diff"}},{"updated_at":"2011-01-14T05:24:00Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/350","comments":0,"milestone":null,"number":350,"html_url":"https://github.com/openframeworks/openFrameworks/issues/350","assignee":null,"title":"Geometry shader example","labels":[],"closed_at":"2011-01-14T05:24:00Z","created_at":"2011-01-14T05:19:42Z","state":"closed","user":{"url":"https://api.github.com/users/jonbro","avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"893ec14dc008e3774afe5841115920d6","login":"jonbro","id":1597},"id":526388,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/350","patch_url":"https://github.com/openframeworks/openFrameworks/pull/350.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/350.diff"}},{"updated_at":"2011-01-14T05:23:17Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/349","comments":0,"milestone":null,"number":349,"html_url":"https://github.com/openframeworks/openFrameworks/issues/349","assignee":null,"title":"Added the stream operators for the math classes","labels":[],"closed_at":"2011-01-14T05:23:17Z","created_at":"2011-01-14T04:23:09Z","state":"closed","user":{"url":"https://api.github.com/users/roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","id":358809},"id":526307,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/349","patch_url":"https://github.com/openframeworks/openFrameworks/pull/349.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/349.diff"}},{"updated_at":"2011-01-14T02:15:43Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/348","comments":1,"milestone":null,"number":348,"html_url":"https://github.com/openframeworks/openFrameworks/issues/348","assignee":null,"title":"ofGetPreviousMouseX ofGetPreviousMouseY","labels":[],"closed_at":"2011-01-14T02:15:43Z","created_at":"2011-01-14T02:15:18Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":526160,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T22:37:28Z","body":"This text is in both the debug and release projects, and causes warnings on compilation:\r\n\r\n\tLIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_4 = \"\\\"$(SRCROOT)/../../../libs/GLee/lib/osx\\\"\";","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/346","comments":2,"milestone":null,"number":346,"html_url":"https://github.com/openframeworks/openFrameworks/issues/346","assignee":null,"title":"example projects have extra glee references after glee has been removed","labels":[],"closed_at":"2011-12-02T22:37:28Z","created_at":"2011-01-13T20:18:19Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":525440,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-01-14T03:14:12Z","body":"i've been merging while i go, which is why the commit history looks nastier than it actually is.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/345","comments":0,"milestone":null,"number":345,"html_url":"https://github.com/openframeworks/openFrameworks/issues/345","assignee":null,"title":"added non-glut ofBox that is iphone compatible","labels":[],"closed_at":"2011-01-14T03:14:12Z","created_at":"2011-01-13T18:31:26Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":525199,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/345","patch_url":"https://github.com/openframeworks/openFrameworks/pull/345.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/345.diff"}},{"updated_at":"2011-01-14T03:11:27Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/344","comments":1,"milestone":null,"number":344,"html_url":"https://github.com/openframeworks/openFrameworks/issues/344","assignee":null,"title":"ofPixels needs destructor","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2011-01-14T03:11:27Z","created_at":"2011-01-13T18:03:27Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":525115,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-01-13T21:23:59Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/343","comments":0,"milestone":null,"number":343,"html_url":"https://github.com/openframeworks/openFrameworks/issues/343","assignee":null,"title":"ofImage resize is broken - doesn't resize","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2011-01-13T21:23:59Z","created_at":"2011-01-13T17:49:55Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":525075,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-01-13T21:24:37Z","body":"\ttdfSmall.loadImage(\"images/tdf_1972_poster.jpg\");\r\n\ttdfSmall.resize(tdf.width / 4, tdf.height / 4);\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/342","comments":1,"milestone":null,"number":342,"html_url":"https://github.com/openframeworks/openFrameworks/issues/342","assignee":null,"title":"ofImage swap channels on resize","labels":[],"closed_at":"2011-01-13T21:24:37Z","created_at":"2011-01-13T17:40:50Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":525056,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-01-13T21:22:26Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/341","comments":0,"milestone":null,"number":341,"html_url":"https://github.com/openframeworks/openFrameworks/issues/341","assignee":null,"title":"ofImage missing GIF palletization code - check both color and grayscale gifs - use imageLoaderExample to check","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2011-01-13T21:22:26Z","created_at":"2011-01-13T17:36:44Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":525044,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-01-13T16:17:33Z","body":"just pulling master this morning, I get these errors on VS 2010\n\n\t..\\..\\..\\openFrameworks\\sound\\ofSoundStream.cpp(83): error C3861: 'back_inserter': identifier not found\n\t..\\..\\..\\openFrameworks\\sound\\ofSoundStream.cpp(170): error C2057: expected constant expression\n\t..\\..\\..\\openFrameworks\\sound\\ofSoundStream.cpp(170): error C2466: cannot allocate an array of constant size 0\n\t..\\..\\..\\openFrameworks\\sound\\ofSoundStream.cpp(170): error C2133: 'working' : unknown size\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/339","comments":1,"milestone":null,"number":339,"html_url":"https://github.com/openframeworks/openFrameworks/issues/339","assignee":null,"title":"ofSoundStream doesn't compile cleanly for vs2010","labels":[],"closed_at":"2011-01-13T16:17:33Z","created_at":"2011-01-13T13:45:54Z","state":"closed","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":524541,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-01-14T03:52:09Z","body":"Yay.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/338","comments":2,"milestone":null,"number":338,"html_url":"https://github.com/openframeworks/openFrameworks/issues/338","assignee":null,"title":"new ofAssimpLoader and example, and a new ofBlendMode example.","labels":[],"closed_at":"2011-01-14T11:52:08Z","created_at":"2011-01-13T07:07:32Z","state":"closed","user":{"url":"https://api.github.com/users/vade","avatar_url":"https://secure.gravatar.com/avatar/37aca214d4875cd90af9d67072c82642?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"37aca214d4875cd90af9d67072c82642","login":"vade","id":65011},"id":523945,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/338","patch_url":"https://github.com/openframeworks/openFrameworks/pull/338.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/338.diff"}},{"updated_at":"2011-03-13T20:58:22Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/336","comments":0,"milestone":null,"number":336,"html_url":"https://github.com/openframeworks/openFrameworks/issues/336","assignee":null,"title":"ofFileDialog for linux","labels":[],"closed_at":"2011-03-13T20:58:22Z","created_at":"2011-01-13T05:21:00Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":523836,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-01-13T06:50:45Z","body":"ofSoundUnit.cpp/.h and ofSoundEffect.cpp/.h","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/335","comments":1,"milestone":null,"number":335,"html_url":"https://github.com/openframeworks/openFrameworks/issues/335","assignee":null,"title":"ofSound stuff","labels":[],"closed_at":"2011-01-13T06:50:45Z","created_at":"2011-01-13T05:10:23Z","state":"closed","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":523821,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/335","patch_url":"https://github.com/openframeworks/openFrameworks/pull/335.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/335.diff"}},{"updated_at":"2011-01-13T06:21:08Z","body":"lib is broken though, needs poco + freeimage + freetype compliations","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/334","comments":0,"milestone":null,"number":334,"html_url":"https://github.com/openframeworks/openFrameworks/issues/334","assignee":null,"title":"updated iphone lib + ofShader + ofFbo setup for iphone","labels":[],"closed_at":"2011-01-13T06:21:08Z","created_at":"2011-01-13T03:31:06Z","state":"closed","user":{"url":"https://api.github.com/users/stfj","avatar_url":"https://secure.gravatar.com/avatar/b089227a1748a2d70cdfc4ef00b325ad?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b089227a1748a2d70cdfc4ef00b325ad","login":"stfj","id":177578},"id":523725,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/334","patch_url":"https://github.com/openframeworks/openFrameworks/pull/334.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/334.diff"}},{"updated_at":"2011-01-13T03:46:33Z","body":"basic demo right now, golan is going to make a better one using the camera input.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/333","comments":1,"milestone":null,"number":333,"html_url":"https://github.com/openframeworks/openFrameworks/issues/333","assignee":null,"title":"adding ofxCvHaarFinder","labels":[],"closed_at":"2011-01-13T03:46:33Z","created_at":"2011-01-12T20:53:05Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":523032,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/333","patch_url":"https://github.com/openframeworks/openFrameworks/pull/333.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/333.diff"}},{"updated_at":"2011-03-13T20:58:05Z","body":"expose the function \ninvert_4x4(const ofMatrix4x4 rhs, ofMatrix4x4 dst)\n\nfrom inside ofMatrix4x4.cpp\n\nsuggest methods:\n\tofMatrix4x4 ofMatrix4x4::getInverse()\n\t{\n\t\tofMatrix4x4 inverse;\n\t\tinvert_4x4(*this, inverse);\n\t\treturn inverse;\n\t}\n\n\tbool ofMatrix4x4::getInverse(ofMatrix4x4 &inverse)\n\t{\n\t\treturn invert_4x4(*this, inverse);\n\t}\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/332","comments":2,"milestone":null,"number":332,"html_url":"https://github.com/openframeworks/openFrameworks/issues/332","assignee":null,"title":"getInverse() method for ofMatrix4x4","labels":[],"closed_at":"2011-03-13T20:58:05Z","created_at":"2011-01-12T20:24:13Z","state":"closed","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":522953,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-01-12T19:17:48Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/331","comments":1,"milestone":null,"number":331,"html_url":"https://github.com/openframeworks/openFrameworks/issues/331","assignee":null,"title":"ofxCvBlob is using ofSetColor with hex - causes loads of warnings","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2011-01-12T19:17:48Z","created_at":"2011-01-12T19:10:07Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":522790,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-21T22:14:35Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/329","comments":6,"milestone":null,"number":329,"html_url":"https://github.com/openframeworks/openFrameworks/issues/329","assignee":null,"title":"OpenCv 2.2 for linux","labels":[],"closed_at":"2011-03-21T14:39:13Z","created_at":"2011-01-12T19:09:17Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":522788,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-01-12T19:17:48Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/328","comments":1,"milestone":null,"number":328,"html_url":"https://github.com/openframeworks/openFrameworks/issues/328","assignee":null,"title":"OpenCv 2.2 for OSX","labels":[],"closed_at":"2011-01-12T19:17:48Z","created_at":"2011-01-12T19:08:56Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":522787,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-01-12T19:40:44Z","body":"added some 3d geometry, integrated with ofStyle.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/327","comments":0,"milestone":null,"number":327,"html_url":"https://github.com/openframeworks/openFrameworks/issues/327","assignee":null,"title":"ofCube(), ofSphere(), ofSetSphereResolution()","labels":[],"closed_at":"2011-01-12T19:40:44Z","created_at":"2011-01-12T18:29:29Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":522698,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/327","patch_url":"https://github.com/openframeworks/openFrameworks/pull/327.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/327.diff"}},{"updated_at":"2011-03-13T21:54:57Z","body":"right now it just sets ofEnableAlphaBlending/ofDisableAlphaBlending\r\n\r\nit needs to be plugged into the new blend modes that anton added.\r\n\r\nin general it might be best for ofSetStyle to call currentStyle.applyStyle() so people see it when/if they add new things to ofStyle","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/326","comments":4,"milestone":null,"number":326,"html_url":"https://github.com/openframeworks/openFrameworks/issues/326","assignee":null,"title":"ofSetStyle should set blending mode","labels":[],"closed_at":"2011-03-14T03:48:53Z","created_at":"2011-01-12T17:39:37Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":522594,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-01-14T03:11:27Z","body":"a lot is included in ofx3dUtils https://code.google.com/p/ofx3dutils/source/browse/trunk/ofx3DUtils/src/ofx3DGraphics.h?r=36\r\n\r\ni think the two key geometries are sphere and box.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/323","comments":2,"milestone":null,"number":323,"html_url":"https://github.com/openframeworks/openFrameworks/issues/323","assignee":null,"title":"basic 3d geometry is missing from OF","labels":[],"closed_at":"2011-01-14T03:11:27Z","created_at":"2011-01-12T03:30:55Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":521135,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-01-19T22:08:21Z","body":"\r\nremoved ofxShader - now is ofShader...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/322","comments":0,"milestone":null,"number":322,"html_url":"https://github.com/openframeworks/openFrameworks/issues/322","assignee":null,"title":"fixed the geometry shader example","labels":[],"closed_at":"2011-01-19T22:08:21Z","created_at":"2011-01-12T02:55:16Z","state":"closed","user":{"url":"https://api.github.com/users/vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","id":149997},"id":521091,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/322","patch_url":"https://github.com/openframeworks/openFrameworks/pull/322.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/322.diff"}},{"updated_at":"2011-01-12T03:00:41Z","body":"we're up to speed with processing's conversion functions.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/321","comments":0,"milestone":null,"number":321,"html_url":"https://github.com/openframeworks/openFrameworks/issues/321","assignee":null,"title":"all remaining conversion functions added with test example","labels":[],"closed_at":"2011-01-12T03:00:41Z","created_at":"2011-01-12T02:19:04Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":521044,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/321","patch_url":"https://github.com/openframeworks/openFrameworks/pull/321.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/321.diff"}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=28&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4968'), ('content-length', '29175'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"00cfe693b345a28d96b3357fcf373aeb"'), ('date', 'Tue, 29 May 2012 18:46:49 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-02-14T20:21:42Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/320","comments":3,"milestone":null,"number":320,"html_url":"https://github.com/openframeworks/openFrameworks/issues/320","assignee":null,"title":"ofBackground( 255 ) shouldn't be using hex","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2011-02-14T20:21:42Z","created_at":"2011-01-11T23:10:48Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":520796,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-11T23:21:41Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/319","comments":1,"milestone":null,"number":319,"html_url":"https://github.com/openframeworks/openFrameworks/issues/319","assignee":null,"title":"#include in ofURLFileLoader.cpp - isn't needed / or found on os x prob win too","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2011-01-11T23:21:41Z","created_at":"2011-01-11T22:46:16Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":520738,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-11T20:47:01Z","body":"bool\t\tofInsideRect(const ofPoint & p, const ofRectangle & rect);\r\nbool\t\tofInsideRect(float x, float y, const ofRectangle & rect);\r\nbool\t\tofInsideRect(float x, float y, float rx, float ry, float rw, float rh);\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/318","comments":0,"milestone":null,"number":318,"html_url":"https://github.com/openframeworks/openFrameworks/issues/318","assignee":null,"title":"added ofInsideRect(...)","labels":[],"closed_at":"2011-01-11T20:47:01Z","created_at":"2011-01-11T20:33:13Z","state":"closed","user":{"url":"https://api.github.com/users/vanderlin","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"vanderlin","id":149997},"id":520463,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/318.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/318","patch_url":"https://github.com/openframeworks/openFrameworks/pull/318.patch"}},{"updated_at":"2011-03-13T20:42:33Z","body":"bool\t\tofInsideRect(const ofPoint & p, const ofRectangle & rect);\r\nbool\t\tofInsideRect(float x, float y, const ofRectangle & rect);\r\nbool\t\tofInsideRect(float x, float y, float rx, float ry, float rw, float rh);\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/317","comments":1,"milestone":null,"number":317,"html_url":"https://github.com/openframeworks/openFrameworks/issues/317","assignee":null,"title":"need to add ofInsideRect(...)","labels":[],"closed_at":"2011-03-13T20:42:33Z","created_at":"2011-01-11T20:28:14Z","state":"closed","user":{"url":"https://api.github.com/users/vanderlin","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"vanderlin","id":149997},"id":520454,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-11T20:46:17Z","body":"this adds ofMutex and fixes an occasional hang on exit in ofSoundStream","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/316","comments":0,"milestone":null,"number":316,"html_url":"https://github.com/openframeworks/openFrameworks/issues/316","assignee":null,"title":"ofMutex / ofSoundStream hang on exit","labels":[],"closed_at":"2011-01-11T20:46:17Z","created_at":"2011-01-11T18:55:28Z","state":"closed","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"damiannz","id":144366},"id":520256,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/316.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/316","patch_url":"https://github.com/openframeworks/openFrameworks/pull/316.patch"}},{"updated_at":"2011-01-11T18:12:18Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/315","comments":1,"milestone":null,"number":315,"html_url":"https://github.com/openframeworks/openFrameworks/issues/315","assignee":null,"title":"move ofxVectorMath to core","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"}],"closed_at":"2011-01-11T18:12:18Z","created_at":"2011-01-11T18:11:31Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":520122,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-11T16:55:44Z","body":"fixed some things with ofToString, templated functions so they're more generic, added more conversion from string functions. still have a few conversion functions left to add.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/314","comments":0,"milestone":null,"number":314,"html_url":"https://github.com/openframeworks/openFrameworks/issues/314","assignee":null,"title":"starting work on ofUtils conversion utilities","labels":[],"closed_at":"2011-01-11T16:55:44Z","created_at":"2011-01-11T02:36:38Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"kylemcdonald","id":157106},"id":518853,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/314.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/314","patch_url":"https://github.com/openframeworks/openFrameworks/pull/314.patch"}},{"updated_at":"2011-01-11T01:41:20Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/313","comments":1,"milestone":null,"number":313,"html_url":"https://github.com/openframeworks/openFrameworks/issues/313","assignee":null,"title":"move ofxThread to core","labels":[],"closed_at":"2011-01-11T01:41:20Z","created_at":"2011-01-11T01:07:57Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":518702,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-11T00:25:31Z","body":"also repairs the examples to work (pulls in examples from 0062)\r\nfont example is a little broken.\r\nadvanced graphics example also shows how to use antialiasing and depth and retina","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/312","comments":0,"milestone":null,"number":312,"html_url":"https://github.com/openframeworks/openFrameworks/issues/312","assignee":null,"title":"adds depth buffer, antialiasing, and retina support options to ofxiPhone","labels":[],"closed_at":"2011-01-11T00:25:31Z","created_at":"2011-01-10T23:03:00Z","state":"closed","user":{"url":"https://api.github.com/users/stfj","gravatar_id":"b089227a1748a2d70cdfc4ef00b325ad","avatar_url":"https://secure.gravatar.com/avatar/b089227a1748a2d70cdfc4ef00b325ad?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"stfj","id":177578},"id":518480,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/312.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/312","patch_url":"https://github.com/openframeworks/openFrameworks/pull/312.patch"}},{"updated_at":"2011-01-11T00:58:45Z","body":"This commit adds ofEnableBlendMode, with OF_BLENDMODE_ALPHA, OF_BLENDMODE_ADD, OF_BLENDMODE_MULTIPLY, OF_BLENDMODE_SUBTRACT and OF_BLENDMODE_SCREEN photoshop style blending via the fixed function GL glBlendFunc and glBlendEquation. Extended ofStyle to accommodate the changes.\r\n\r\nofEnableAlphaBlending and ofDisableAlphaBlending now using the ofEnableBlendMode functions internally.\r\n\r\nThese changes have been vetted against Photoshop, and look correct.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/310","comments":0,"milestone":null,"number":310,"html_url":"https://github.com/openframeworks/openFrameworks/issues/310","assignee":null,"title":"New ofEnableBlendMode support.","labels":[],"closed_at":"2011-01-11T00:58:45Z","created_at":"2011-01-10T19:46:32Z","state":"closed","user":{"url":"https://api.github.com/users/vade","gravatar_id":"37aca214d4875cd90af9d67072c82642","avatar_url":"https://secure.gravatar.com/avatar/37aca214d4875cd90af9d67072c82642?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"vade","id":65011},"id":518077,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/310.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/310","patch_url":"https://github.com/openframeworks/openFrameworks/pull/310.patch"}},{"updated_at":"2011-01-10T20:02:06Z","body":"also one update to ofRandom","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/309","comments":0,"milestone":null,"number":309,"html_url":"https://github.com/openframeworks/openFrameworks/issues/309","assignee":null,"title":"ofColor updates","labels":[],"closed_at":"2011-01-10T20:02:06Z","created_at":"2011-01-10T19:16:07Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"kylemcdonald","id":157106},"id":518027,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/309.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/309","patch_url":"https://github.com/openframeworks/openFrameworks/pull/309.patch"}},{"updated_at":"2011-12-02T15:05:54Z","body":"I think some people were having this issue on 62, I think that it isn't present on 61.\r\n\r\nTo reproduce:\r\nLaunch the audio output example.\r\nAttempt to quit using command+q\r\nThe app will hang at this point\r\nIf you force quit the app, you will get the following dump to the debugger:\r\n\r\n 0\t0x93c6b142 in semaphore_wait_signal_trap\r\n 1\t0x93c98cfc in _pthread_cond_wait\r\n 2\t0x93ce146f in pthread_cond_wait\r\n 3\t0x0001d234 in RtApiCore::stopStream at RtAudio.cpp:1340\r\n 4\t0x00009296 in RtAudio::closeStream at RtAudio.h:143\r\n 5\t0x00009296 in ofSoundStreamClose at ofSoundStream.cpp:144\r\n 6\t0x00007ea7 in ofExitCallback at ofAppRunner.cpp:55\r\n\r\nIt seems that adding the ofSoundStreamClose in the exit callback is what is causing this. Closing the stream is not totally necessary, because it is implicitly closed in the RtAudio destructor function.\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/308","comments":3,"milestone":null,"number":308,"html_url":"https://github.com/openframeworks/openFrameworks/issues/308","assignee":null,"title":"rtaudio hang on exit.","labels":[],"closed_at":"2011-12-02T15:05:54Z","created_at":"2011-01-10T18:09:41Z","state":"closed","user":{"url":"https://api.github.com/users/jonbro","gravatar_id":"893ec14dc008e3774afe5841115920d6","avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jonbro","id":1597},"id":517872,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T18:15:44Z","body":"This adds a basic automake-based build which serves two purposes:\r\n\r\n- Allows generation of a source tarball which does not include any of the included upstream binary library versions.\r\n- Produces a 'make install' version of OF for ease of packaging.\r\n\r\nThe end goal being a packaged version of OF that's in the debian main repository (although obviously not in squeeze) and in Ubuntu (likely not by natty, but probably by natty+1)\r\n\r\nI just did basic automake here and did not go full-on pandora-build or anything like that, as the only real expected user of this would be people on modern ubuntu. I _was_ looking/poking at the cmake branch earlier, but since the make dist and make install targets in that system are so mind-numbingly borked, and since this isn't intended to replace your full build system, I just went back to actually-functional autotools.\r\n\r\nIn any case - it passes make distcheck, and builds all of OF and most addons (except for iphone specific ones) on Ubuntu using all system-installed libraries (although it would be slightly harder for you to verify that since two of the dep packages are stuck in the debian new queue and I just have them installed locally :)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/307","comments":5,"milestone":null,"number":307,"html_url":"https://github.com/openframeworks/openFrameworks/issues/307","assignee":null,"title":"Automake build files - to help with clean src tarball and install","labels":[],"closed_at":"2012-02-25T18:15:44Z","created_at":"2011-01-10T08:00:59Z","state":"closed","user":{"url":"https://api.github.com/users/emonty","gravatar_id":"70046f765dfa1f330e61066dda4351bb","avatar_url":"https://secure.gravatar.com/avatar/70046f765dfa1f330e61066dda4351bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"emonty","id":95156},"id":516913,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/307.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/307","patch_url":"https://github.com/openframeworks/openFrameworks/pull/307.patch"}},{"updated_at":"2011-07-06T18:34:50Z","body":"A small patch which fixes inclusion of files from oscpack. When using the (newly created) debian package of oscpack rather than the one found in tree (as one would do when packaging OF itself), there is no sensible way to add the subdirs of /usr/include/ospack to the include path, as oscpack does not ship with a pkg-config file.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/306","comments":0,"milestone":null,"number":306,"html_url":"https://github.com/openframeworks/openFrameworks/issues/306","assignee":null,"title":"Fix oscpack relpath","labels":[],"closed_at":"2011-07-06T18:34:50Z","created_at":"2011-01-10T07:41:52Z","state":"closed","user":{"url":"https://api.github.com/users/emonty","gravatar_id":"70046f765dfa1f330e61066dda4351bb","avatar_url":"https://secure.gravatar.com/avatar/70046f765dfa1f330e61066dda4351bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"emonty","id":95156},"id":516895,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/306.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/306","patch_url":"https://github.com/openframeworks/openFrameworks/pull/306.patch"}},{"updated_at":"2011-01-10T20:01:58Z","body":"any kind of ofColor::set() or ofColor::setHex() will override your alpha value with 255 if you don't specify otherwise.\r\n\r\nthe solution should simply set your alpha value if you specify it, or don't touch it if you don't specify it.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/304","comments":2,"milestone":null,"number":304,"html_url":"https://github.com/openframeworks/openFrameworks/issues/304","assignee":null,"title":"handling of alpha values is counter intuitive in ofColor","labels":[],"closed_at":"2011-01-10T20:01:58Z","created_at":"2011-01-10T03:38:20Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"kylemcdonald","id":157106},"id":516630,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-10T20:01:58Z","body":"it's doing very wrong math at the moment, involving + 8s and + 16s instead of 8/16 bit bit shifts.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/303","comments":1,"milestone":null,"number":303,"html_url":"https://github.com/openframeworks/openFrameworks/issues/303","assignee":null,"title":"ofColor::getHex() is absurdly broken","labels":[],"closed_at":"2011-01-10T20:01:58Z","created_at":"2011-01-10T03:16:55Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"kylemcdonald","id":157106},"id":516610,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-31T10:55:49Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/301","comments":2,"milestone":null,"number":301,"html_url":"https://github.com/openframeworks/openFrameworks/issues/301","assignee":null,"title":"poco-1.4.0 for linux","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":"2011-01-31T10:55:49Z","created_at":"2011-01-10T02:38:56Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":516564,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-11T00:52:19Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/300","comments":1,"milestone":null,"number":300,"html_url":"https://github.com/openframeworks/openFrameworks/issues/300","assignee":null,"title":"poco-1.4.0 for windows","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"}],"closed_at":"2011-01-11T00:52:19Z","created_at":"2011-01-10T02:38:32Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":516562,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-06-03T19:03:37Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/297","comments":1,"milestone":null,"number":297,"html_url":"https://github.com/openframeworks/openFrameworks/issues/297","assignee":null,"title":"FreeImage 3141 for linux","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":"2011-06-03T19:03:37Z","created_at":"2011-01-10T02:37:25Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":516557,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-10T20:01:58Z","body":"getBrightness() returns a value between 0 and 1, this is inconsistent with the rest of ofColor","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/295","comments":1,"milestone":null,"number":295,"html_url":"https://github.com/openframeworks/openFrameworks/issues/295","assignee":null,"title":"getBrightness() returns a normalized value","labels":[],"closed_at":"2011-01-10T20:01:58Z","created_at":"2011-01-09T23:27:51Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"kylemcdonald","id":157106},"id":516331,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T05:11:26Z","body":"printf is being used instead of cout, and it isn't being used correctly:\n\t\n\tprintf(\"NavCreatePutFileDialog returned %i\\n\", err );\n\tprintf(\"NavDialogRun returned %i\\n\", err );\n\tprintf(\"got action %i\\n\", action);","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/294","comments":5,"milestone":null,"number":294,"html_url":"https://github.com/openframeworks/openFrameworks/issues/294","assignee":null,"title":"ofSystemUtils causes warnings","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"}],"closed_at":"2012-02-25T05:11:26Z","created_at":"2011-01-09T22:03:16Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"kylemcdonald","id":157106},"id":516200,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-10T20:01:58Z","body":"processing includes ofRandom(x) which picks a random number between 0 and x","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/293","comments":1,"milestone":null,"number":293,"html_url":"https://github.com/openframeworks/openFrameworks/issues/293","assignee":null,"title":"ofRandom doesn't support a single value","labels":[],"closed_at":"2011-01-10T20:01:58Z","created_at":"2011-01-09T21:21:54Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"kylemcdonald","id":157106},"id":516131,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-06T18:33:55Z","body":"Added a couple of preprocessor defines to allow easy disabling of fmodex compilation. (important for debian packaging) This should have no real impact on other folks, or else I've done something horribly, horribly wrong.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/291","comments":0,"milestone":null,"number":291,"html_url":"https://github.com/openframeworks/openFrameworks/issues/291","assignee":null,"title":"Skip fmodex","labels":[],"closed_at":"2011-07-06T18:33:55Z","created_at":"2011-01-09T06:58:22Z","state":"closed","user":{"url":"https://api.github.com/users/emonty","gravatar_id":"70046f765dfa1f330e61066dda4351bb","avatar_url":"https://secure.gravatar.com/avatar/70046f765dfa1f330e61066dda4351bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"emonty","id":95156},"id":515389,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/291.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/291","patch_url":"https://github.com/openframeworks/openFrameworks/pull/291.patch"}},{"updated_at":"2011-01-10T19:38:06Z","body":"it's been drawing the wrong colors, and issuing tons of warnings (e.g., for ofxKinect demo).","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/290","comments":3,"milestone":null,"number":290,"html_url":"https://github.com/openframeworks/openFrameworks/issues/290","assignee":null,"title":"ofxSetHexColor wasn't swapped out from ofxOpenCv","labels":[],"closed_at":"2011-01-10T19:38:06Z","created_at":"2011-01-09T02:22:24Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"kylemcdonald","id":157106},"id":515181,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/290.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/290","patch_url":"https://github.com/openframeworks/openFrameworks/pull/290.patch"}},{"updated_at":"2011-12-02T20:24:09Z","body":"ie: \r\n\r\nofRect( float x, float y, float w, float h ); should come before ofRect(ofPoint p, float w, float h);\r\n\r\nthis is important as syntax highlighting only shows the first function that matches.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/289","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":289,"html_url":"https://github.com/openframeworks/openFrameworks/issues/289","assignee":null,"title":"change header file function order to show most common usage function first","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":"2011-12-02T20:24:09Z","created_at":"2011-01-08T20:30:13Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":514785,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=29&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4967'), ('content-length', '35540'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"faa2d8faf2dc7faf857fc912cc668ae6"'), ('date', 'Tue, 29 May 2012 18:46:50 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-03-13T20:39:19Z","body":"It would be useful if there was a function to programmatically exit an app, say an ofExit() that will shutdown the app when called. There are times when it's useful to throw an error and exit as well as the ability to shutdown the app remotely, etc.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/287","comments":1,"milestone":null,"number":287,"html_url":"https://github.com/openframeworks/openFrameworks/issues/287","assignee":null,"title":"ofExit() function","labels":[],"closed_at":"2011-03-13T20:39:19Z","created_at":"2011-01-07T17:22:21Z","state":"closed","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"danomatika","id":480637},"id":512787,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-03-13T20:35:52Z","body":"currently we have: \r\n\r\n\r\n\t//----------------------------------------------------------\r\n\tvoid ofSetupScreenOrtho(float width, float height, bool vFlip, float nearDist, float farDist) {\r\n\t\tif(width == 0) width = ofGetWidth();\r\n\t\tif(height == 0) height = ofGetHeight();\r\n\r\n\t\t#ifndef TARGET_OPENGLES\r\n\r\n\t\t\tglMatrixMode(GL_PROJECTION);\r\n\t\t\tglLoadIdentity();\r\n\t\t\tif(vFlip) glOrtho(0, width, height, 0, nearDist, farDist);\r\n\t\t\telse glOrtho(0, width, 0, height, nearDist, farDist);\r\n\t\t\tglMatrixMode(GL_MODELVIEW);\r\n\t\t\tglLoadIdentity();\r\n\t\t\r\n\t\t#else\r\n\t\t\t//FIX: is here http://stackoverflow.com/questions/2847574/opengl-es-2-0-equivalent-of-glortho\r\n\t\t\tofLog(OF_LOG_ERROR, \"ofSetupScreenOrtho - you can't use glOrtho with iphone / ES at the moment\");\r\n\t\t#endif \r\n\t}\r\n\r\nbut we need a glOrtho replacement for ES. \r\n\r\nthis seems to suggest you can do it with matrix multiplication ( though shader code should apply to ES 1.0 ) : http://stackoverflow.com/questions/2847574/opengl-es-2-0-equivalent-of-glortho","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/286","comments":1,"milestone":null,"number":286,"html_url":"https://github.com/openframeworks/openFrameworks/issues/286","assignee":null,"title":"ofSetupScreenOrtho needs iPhone compatible version","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2011-03-13T20:35:52Z","created_at":"2011-01-05T17:57:08Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":508576,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-09T01:35:35Z","body":"When saving to a JPG or other lossy file, you should be able to pass a compression ratio or quality value. Intuitively it should be a float in the 0-1 range, but ideally it would simply wrap whatever parameters FreeImage already uses.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/285","comments":2,"milestone":null,"number":285,"html_url":"https://github.com/openframeworks/openFrameworks/issues/285","assignee":null,"title":"add jpg compression level parameter","labels":[],"closed_at":"2011-01-08T02:10:30Z","created_at":"2011-01-04T17:58:36Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"kylemcdonald","id":157106},"id":506233,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-16T15:19:32Z","body":"This fixes a bug in ofArduino::update() that was causing a number of unnecessary calls to _port.readByte(). Should help speed up communication between computer and Arduino a bit.\r\n\r\nAlso change to ofArduino::sendSysEx() to split data bytes into two 7 bit bytes before sending.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/284","comments":0,"milestone":null,"number":284,"html_url":"https://github.com/openframeworks/openFrameworks/issues/284","assignee":null,"title":"fix to bug in ofArduino::update() method","labels":[],"closed_at":"2011-01-16T15:19:32Z","created_at":"2011-01-01T00:22:47Z","state":"closed","user":{"url":"https://api.github.com/users/soundanalogous","gravatar_id":"f3ca5c4c2359e9103ba20a1ea992680c","avatar_url":"https://secure.gravatar.com/avatar/f3ca5c4c2359e9103ba20a1ea992680c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"soundanalogous","id":401539},"id":500607,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/284.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/284","patch_url":"https://github.com/openframeworks/openFrameworks/pull/284.patch"}},{"updated_at":"2011-01-11T00:24:36Z","body":"tried adding this code to ES1Renderer but its unable to create the surface then.\n\n\t\t//DEPTH - hmm why doesn't this work. does it need something to be set at the appDelegate or EAGLView level\n\t\tglGetRenderbufferParameterivOES(GL_RENDERBUFFER_OES, GL_RENDERBUFFER_WIDTH_OES, &backingWidth);\n\t\tglGetRenderbufferParameterivOES(GL_RENDERBUFFER_OES, GL_RENDERBUFFER_HEIGHT_OES, &backingHeight);\n\t\t\n\t\tglGenRenderbuffersOES(1, &depthRenderbuffer);\n\t\tglBindRenderbufferOES(GL_RENDERBUFFER_OES, depthRenderbuffer);\n\t\tglRenderbufferStorageOES(GL_RENDERBUFFER_OES, GL_DEPTH_COMPONENT24_OES, backingWidth, backingHeight);\n\t\tglFramebufferRenderbufferOES(GL_FRAMEBUFFER_OES, GL_DEPTH_ATTACHMENT_OES, GL_RENDERBUFFER_OES, depthRenderbuffer);\n\n\nis it something to do with this line? I tried uncommenting the second half so that depth format was set to 16 but it caused a crash. \n\n\tglView = [[EAGLView alloc] initWithFrame:screenBounds];// pixelFormat:GL_RGB565_OES depthFormat:GL_DEPTH_COMPONENT16_OES preserveBackbuffer:NO];\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/283","comments":2,"milestone":null,"number":283,"html_url":"https://github.com/openframeworks/openFrameworks/issues/283","assignee":null,"title":"iPhone / iPad needs option for depth buffer","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2011-01-11T00:24:36Z","created_at":"2010-12-31T18:06:55Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":500312,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-03-13T20:30:20Z","body":"submitted pull request instead. please ignore this issue.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/282","comments":0,"milestone":null,"number":282,"html_url":"https://github.com/openframeworks/openFrameworks/issues/282","assignee":null,"title":"bug in ofArduino","labels":[],"closed_at":"2011-03-13T20:30:20Z","created_at":"2010-12-31T07:34:09Z","state":"closed","user":{"url":"https://api.github.com/users/soundanalogous","gravatar_id":"f3ca5c4c2359e9103ba20a1ea992680c","avatar_url":"https://secure.gravatar.com/avatar/f3ca5c4c2359e9103ba20a1ea992680c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"soundanalogous","id":401539},"id":499912,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2010-12-28T18:31:14Z","body":"Regarding the following method: \n\tGLuint ofxFbo::createAndAttachRenderbuffer(GLenum internalFormat, GLenum attachmentPoint) {\n\t\t...\n\t\tglFramebufferRenderbuffer(GL_RENDERBUFFER, attachmentPoint, GL_RENDERBUFFER, buffer);\n\t\treturn buffer;\n\t}\n\nthe target (ie. first argument) should be GL_FRAMEBUFFER instead of GL_RENDERBUFFER (see http://www.opengl.org/sdk/docs/man3/xhtml/glFramebufferRenderbuffer.xml for the specs).","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/281","comments":1,"milestone":null,"number":281,"html_url":"https://github.com/openframeworks/openFrameworks/issues/281","assignee":null,"title":"ofxFbo (depth) attachment bug","labels":[],"closed_at":"2010-12-28T18:31:14Z","created_at":"2010-12-21T16:52:59Z","state":"closed","user":{"url":"https://api.github.com/users/Jaxan","gravatar_id":"f4b90f3bc19995082fb937114d07be7b","avatar_url":"https://secure.gravatar.com/avatar/f4b90f3bc19995082fb937114d07be7b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"Jaxan","id":272545},"id":486417,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-03-13T19:34:38Z","body":"I use OF with ubuntu linux and, made some fix for linux.\n\n## commit: 9d100885\nI added missing addons.make and, header on ofxShader.cpp to compile the example on linux.\nNow, It works on linux too. Just type \"make\" like other examples.\n\nThe instruction of libs/glee/lib/linux/readme.txt says way to build & install the GLee system-widely.\nbut, they shipped as binary in OF and, the makefile can directly link it (/libs/glee/lib/linux/libGLee.a or /libs/glee/lib/linux64/libGLee.a).\n\nand, also, I think this may kill some warnings of compile in other platforms.\n\n## commit: 8c65fd75\nI know the guide line, make your app on apps/ directory. changes in this commit follow it.\nand give easy way to make app in other place for people not want to -or can't- follow the guild line.\n\nIf your app is not under the apps/ direchtory, just modify OF_ROOT in your makefile to point OF directory.\n\n## commit: b9bcf524\nClean some sources. for the future. :)\n\nThat's it. Thanks.\n-- Homin Lee.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/280","comments":1,"milestone":null,"number":280,"html_url":"https://github.com/openframeworks/openFrameworks/issues/280","assignee":null,"title":"linux: Compile error fix of fboExample and more..","labels":[],"closed_at":"2011-03-13T19:34:38Z","created_at":"2010-12-18T17:48:08Z","state":"closed","user":{"url":"https://api.github.com/users/suapapa","gravatar_id":"77bae140335cdfbd46237d35f8fdd204","avatar_url":"https://secure.gravatar.com/avatar/77bae140335cdfbd46237d35f8fdd204?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"suapapa","id":333745},"id":481756,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/280.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/280","patch_url":"https://github.com/openframeworks/openFrameworks/pull/280.patch"}},{"updated_at":"2010-12-19T15:50:10Z","body":"kind of amazing how ghetto it is:\r\n\r\n\tint readBytes(unsigned char * buffer, int length);\r\n\tint writeBytes(unsigned char * buffer, int length);\r\n\tbool writeByte(unsigned char singleByte);\r\n\tint readByte();\r\n\r\nreadBytes has a place because fixed-length reading happens pretty often. writeBytes should definitely have a string-based wrapper. and how often is the single character writeByte used?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/279","comments":3,"milestone":null,"number":279,"html_url":"https://github.com/openframeworks/openFrameworks/issues/279","assignee":null,"title":"ofSerial has no string support","labels":[],"closed_at":"2010-12-14T02:22:25Z","created_at":"2010-12-13T18:16:26Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"kylemcdonald","id":157106},"id":472299,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-14T18:23:48Z","body":"Hi!\r\n\r\nI was compiling an app I made with some extra warnings turned on (I tend to be a pedant) and that wound up point out a few things... no big deal, just thought I'd forward them on.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/278","comments":0,"milestone":null,"number":278,"html_url":"https://github.com/openframeworks/openFrameworks/issues/278","assignee":null,"title":"A few warning cleanups","labels":[],"closed_at":"2011-01-14T18:23:48Z","created_at":"2010-12-09T10:06:42Z","state":"closed","user":{"url":"https://api.github.com/users/emonty","gravatar_id":"70046f765dfa1f330e61066dda4351bb","avatar_url":"https://secure.gravatar.com/avatar/70046f765dfa1f330e61066dda4351bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"emonty","id":95156},"id":464817,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/278.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/278","patch_url":"https://github.com/openframeworks/openFrameworks/pull/278.patch"}},{"updated_at":"2010-12-08T19:17:19Z","body":"Hi, when I'm trying to compile emptyExample in VS2010 Express, I get errors:\r\n\r\n2>openframeworksLib.lib(ofAppGlutWindow.obj) : error LNK2019: unresolved external symbol \"void __cdecl ofNotifyUpdate(void)\" (?ofNotifyUpdate@@YAXXZ) referenced in function \"public: virtual void __thiscall ofAppGlutWindow::runAppViaInfiniteLoop(class ofBaseApp *)\" (?runAppViaInfiniteLoop@ofAppGlutWindow@@UAEXPAVofBaseApp@@@Z)\r\n2>openframeworksLib.lib(ofAppGlutWindow.obj) : error LNK2019: unresolved external symbol \"void __cdecl ofNotifySetup(void)\" (?ofNotifySetup@@YAXXZ) referenced in function \"public: virtual void __thiscall ofAppGlutWindow::runAppViaInfiniteLoop(class ofBaseApp *)\" (?runAppViaInfiniteLoop@ofAppGlutWindow@@UAEXPAVofBaseApp@@@Z)\r\n2>openframeworksLib.lib(ofAppGlutWindow.obj) : error LNK2019: unresolved external symbol \"void __cdecl ofNotifyDraw(void)\" (?ofNotifyDraw@@YAXXZ) referenced in function \"public: static void __cdecl ofAppGlutWindow::display(void)\" (?display@ofAppGlutWindow@@SAXXZ)\r\n2>openframeworksLib.lib(ofAppGlutWindow.obj) : error LNK2019: unresolved external symbol \"void __cdecl ofNotifyMouseReleased(int,int,int)\" (?ofNotifyMouseReleased@@YAXHHH@Z) referenced in function \"public: static void __cdecl ofAppGlutWindow::mouse_cb(int,int,int,int)\" (?mouse_cb@ofAppGlutWindow@@SAXHHHH@Z)\r\n2>openframeworksLib.lib(ofAppGlutWindow.obj) : error LNK2019: unresolved external symbol \"void __cdecl ofNotifyMousePressed(int,int,int)\" (?ofNotifyMousePressed@@YAXHHH@Z) referenced in function \"public: static void __cdecl ofAppGlutWindow::mouse_cb(int,int,int,int)\" (?mouse_cb@ofAppGlutWindow@@SAXHHHH@Z)\r\n2>openframeworksLib.lib(ofAppGlutWindow.obj) : error LNK2019: unresolved external symbol \"void __cdecl ofNotifyMouseDragged(int,int,int)\" (?ofNotifyMouseDragged@@YAXHHH@Z) referenced in function \"public: static void __cdecl ofAppGlutWindow::motion_cb(int,int)\" (?motion_cb@ofAppGlutWindow@@SAXHH@Z)\r\n2>openframeworksLib.lib(ofAppGlutWindow.obj) : error LNK2019: unresolved external symbol \"void __cdecl ofNotifyMouseMoved(int,int)\" (?ofNotifyMouseMoved@@YAXHH@Z) referenced in function \"public: static void __cdecl ofAppGlutWindow::passive_motion_cb(int,int)\" (?passive_motion_cb@ofAppGlutWindow@@SAXHH@Z)\r\n2>openframeworksLib.lib(ofAppGlutWindow.obj) : error LNK2019: unresolved external symbol \"void __cdecl ofNotifyKeyPressed(int)\" (?ofNotifyKeyPressed@@YAXH@Z) referenced in function \"public: static void __cdecl ofAppGlutWindow::keyboard_cb(unsigned char,int,int)\" (?keyboard_cb@ofAppGlutWindow@@SAXEHH@Z)\r\n2>openframeworksLib.lib(ofAppGlutWindow.obj) : error LNK2019: unresolved external symbol \"void __cdecl ofNotifyKeyReleased(int)\" (?ofNotifyKeyReleased@@YAXH@Z) referenced in function \"public: static void __cdecl ofAppGlutWindow::keyboard_up_cb(unsigned char,int,int)\" (?keyboard_up_cb@ofAppGlutWindow@@SAXEHH@Z)\r\n2>openframeworksLib.lib(ofAppGlutWindow.obj) : error LNK2019: unresolved external symbol \"void __cdecl ofNotifyWindowResized(int,int)\" (?ofNotifyWindowResized@@YAXHH@Z) referenced in function \"public: static void __cdecl ofAppGlutWindow::resize_cb(int,int)\" (?resize_cb@ofAppGlutWindow@@SAXHH@Z)\r\n2>openframeworksLib.lib(ofAppRunner.obj) : error LNK2019: unresolved external symbol \"void __cdecl ofNotifyExit(void)\" (?ofNotifyExit@@YAXXZ) referenced in function \"void __cdecl ofExitCallback(void)\" (?ofExitCallback@@YAXXZ)\r\n2>openframeworksLib.lib(ofSoundStream.obj) : error LNK2019: unresolved external symbol \"class ofCoreEvents ofEvents\" (?ofEvents@@3VofCoreEvents@@A) referenced in function \"int __cdecl receiveAudioBufferAndCallSimpleApp(void *,void *,unsigned int,double,unsigned int,void *)\" (?receiveAudioBufferAndCallSimpleApp@@YAHPAX0INI0@Z)\r\n2>bin\\emptyExample_vs2010.exe : fatal error LNK1120: 12 unresolved externals\r\n========== Build: 1 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========\r\n\r\nWhat can be the problem? Same with VS2008 :(","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/277","comments":3,"milestone":null,"number":277,"html_url":"https://github.com/openframeworks/openFrameworks/issues/277","assignee":null,"title":"VS2010 compile errors","labels":[],"closed_at":"2010-12-08T19:17:19Z","created_at":"2010-12-08T17:20:56Z","state":"closed","user":{"url":"https://api.github.com/users/overjoy","gravatar_id":"0db68e1ff4776516180e0dcef85ec0d5","avatar_url":"https://secure.gravatar.com/avatar/0db68e1ff4776516180e0dcef85ec0d5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"overjoy","id":510509},"id":463263,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-16T00:30:29Z","body":"currently, ofViewport reads:\n\n\tvoid ofViewport(float x, float y, float width, float height) {\n\t\tif(width == 0) width = ofGetWidth();\n\t\tif(height == 0) height = ofGetHeight();\n\n\t\tglViewport(0, 0, width, height);\n\t}\n\nif they were just dropped in to substitute the current 0, 0, this would mean OF has core calls that don't fit the top-left standard... so i propose:\n\n\tvoid ofViewport(int x, int y, int width, int height, bool relative = true) {\n\t\tif(width == 0) {\n\t\t\twidth = ofGetWidth();\n\t\t}\n\t\tif(height == 0) {\n\t\t\theight = ofGetHeight();\n\t\t}\n\t\tif(relative) {\n\t\t\ty = ofGetHeight() - (height + y);\n\t\t}\n\t\tglViewport(x, y, width, height);\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/276","comments":3,"milestone":null,"number":276,"html_url":"https://github.com/openframeworks/openFrameworks/issues/276","assignee":null,"title":"ofViewport ignores x,y values","labels":[],"closed_at":"2011-01-16T00:30:29Z","created_at":"2010-12-04T19:04:36Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"kylemcdonald","id":157106},"id":456021,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-12T19:52:00Z","body":"commit e31e1b9:\nUpdated ofSetColor to ofSetColorHex on ofxCvContourFinder and ofxCvBlob\n\ncommit e0ae765:\nadded the copy operator to ofxVec4f , so it has the same behavior as ofxVec2f and ofxVec3f:\nvoid \t operator=( const ofxVec4f& vec );\nvoid \t operator=( const float f);","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/274","comments":2,"milestone":null,"number":274,"html_url":"https://github.com/openframeworks/openFrameworks/issues/274","assignee":null,"title":"changed ofSetColor(int hex) to ofSetHexColor(int hex) on ofxCvContourFinder and ofxCvBlob |||||||||| added copy operator(=) to ofxVec4f","labels":[],"closed_at":"2011-01-12T19:52:00Z","created_at":"2010-11-29T16:51:14Z","state":"closed","user":{"url":"https://api.github.com/users/paulobarcelos","gravatar_id":"1a9d12db1eca833154421017ef09524f","avatar_url":"https://secure.gravatar.com/avatar/1a9d12db1eca833154421017ef09524f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"paulobarcelos","id":122277},"id":444628,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/274.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/274","patch_url":"https://github.com/openframeworks/openFrameworks/pull/274.patch"}},{"updated_at":"2011-01-16T00:28:44Z","body":"i have generally avoided setFromPixels and just do my own memcpys because i don't understand when setFromPixels reallocates and when it doesn't.\r\n\r\nthe first thing it does is allocate the pixels if they're not allocated.\r\n\r\nthen if the width and height don't match, it allocates them (first calling clear() which seems to be responsible for saying delete[] myPixels.pixels).\r\n\r\nand then it calls allocatePixels regardless of anything that has already been done. fortunately allocatePixels is pretty smart. actually, it's smart in exactly the same ways setFromPixels is smart: it makes sure that the pixels are allocated, and it makes sure the width and height match. it deletes the pixels itself, instead of using the clear() method, because it's a helper function for some reason.\r\n\r\nall that said, there should only be one check: is the new width and height same as the current one? if not, reallocate (where reallocating means deleting anything if it's there, and dynamically allocating new memory). because ofImage should have a width and height of 0 when it's created, this handles all the cases instead of being spread across three different places.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/273","comments":1,"milestone":null,"number":273,"html_url":"https://github.com/openframeworks/openFrameworks/issues/273","assignee":null,"title":"ofImage::setFromPixels is really hard to read","labels":[],"closed_at":"2011-01-16T00:28:44Z","created_at":"2010-11-27T23:55:30Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"kylemcdonald","id":157106},"id":442132,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2010-11-23T21:02:20Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/272","comments":0,"milestone":null,"number":272,"html_url":"https://github.com/openframeworks/openFrameworks/issues/272","assignee":null,"title":"Untitled","labels":[],"closed_at":"2010-11-23T21:02:20Z","created_at":"2010-11-23T20:56:52Z","state":"closed","user":{"url":"https://api.github.com/users/kamend","gravatar_id":"1b0002ee319a421a56ef94c199382fb7","avatar_url":"https://secure.gravatar.com/avatar/1b0002ee319a421a56ef94c199382fb7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"kamend","id":462951},"id":435353,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2010-11-22T23:43:14Z","body":"added block for win32 that are not redefines for OSX but necessary for windows build","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/270","comments":0,"milestone":null,"number":270,"html_url":"https://github.com/openframeworks/openFrameworks/issues/270","assignee":null,"title":"ofxFbo.cpp win32 specific #defines","labels":[],"closed_at":"2010-11-22T23:43:14Z","created_at":"2010-11-22T18:10:22Z","state":"closed","user":{"url":"https://api.github.com/users/sbonkowski","gravatar_id":"88dfb005acfaf20ecff20bf7c9edf0a1","avatar_url":"https://secure.gravatar.com/avatar/88dfb005acfaf20ecff20bf7c9edf0a1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"sbonkowski","id":365754},"id":432909,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/270.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/270","patch_url":"https://github.com/openframeworks/openFrameworks/pull/270.patch"}},{"updated_at":"2010-11-22T23:43:14Z","body":"added ofEvents.cpp to win_cp project","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/269","comments":0,"milestone":null,"number":269,"html_url":"https://github.com/openframeworks/openFrameworks/issues/269","assignee":null,"title":"added ofEvents.cpp to win_cp project","labels":[],"closed_at":"2010-11-22T23:43:14Z","created_at":"2010-11-22T14:44:59Z","state":"closed","user":{"url":"https://api.github.com/users/sbonkowski","gravatar_id":"88dfb005acfaf20ecff20bf7c9edf0a1","avatar_url":"https://secure.gravatar.com/avatar/88dfb005acfaf20ecff20bf7c9edf0a1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"sbonkowski","id":365754},"id":432554,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/269.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/269","patch_url":"https://github.com/openframeworks/openFrameworks/pull/269.patch"}},{"updated_at":"2010-11-22T23:49:05Z","body":"i think there are probably more of these to be added, but i needed this one :)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/268","comments":2,"milestone":null,"number":268,"html_url":"https://github.com/openframeworks/openFrameworks/issues/268","assignee":null,"title":"ofVertex(ofPoint & p) added","labels":[],"closed_at":"2010-11-23T07:41:01Z","created_at":"2010-11-21T19:25:58Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"kylemcdonald","id":157106},"id":431379,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/268.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/268","patch_url":"https://github.com/openframeworks/openFrameworks/pull/268.patch"}},{"updated_at":"2011-03-13T20:28:34Z","body":"ofxCvFloatImage::setFromPixels( float* _pixels, int w, int h ) \n\n if( w == width && h == height ) {\n // copy _pixels into cvImage\n for( int i=0; i < height; i++ ) {\n memcpy( cvImage->imageData + (i*cvImage->widthStep),\n _pixels + (i*w),\n width );\n }\n flagImageChanged();\n } else {\n ofLog(OF_LOG_ERROR, \"in setFromPixels, size mismatch\");\n }\n\nshould be:\n\n if( w == width && h == height ) {\n // copy _pixels into cvImage\n for( int i=0; i < height; i++ ) {\n memcpy( cvImage->imageData + (i*cvImage->widthStep),\n _pixels + (i*w),\n width * sizeof(float) );\n }\n flagImageChanged();\n } else {\n ofLog(OF_LOG_ERROR, \"in setFromPixels, size mismatch\");\n }","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/267","comments":1,"milestone":null,"number":267,"html_url":"https://github.com/openframeworks/openFrameworks/issues/267","assignee":null,"title":"ofxCvFloatImage memcpy for float * assumes 1 byte per pixel instead of 4bytes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2011-03-13T20:28:34Z","created_at":"2010-11-18T21:43:02Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":427168,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-15T23:47:11Z","body":"something like php date. \nwhere you could do \n\nofGetTimeAsString(\"Y-M-D-H-M-S-MS\");\nreturns \"2010-12-20-13-44-05-0980\" \n\nmakes saving files without overwriting easier. \n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/266","comments":1,"milestone":null,"number":266,"html_url":"https://github.com/openframeworks/openFrameworks/issues/266","assignee":null,"title":"ofGetTimeAsString(string format)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2011-01-15T23:47:11Z","created_at":"2010-11-18T16:59:02Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":426568,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2010-11-22T23:31:07Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/263","comments":4,"milestone":null,"number":263,"html_url":"https://github.com/openframeworks/openFrameworks/issues/263","assignee":null,"title":"the linux ofVideoPlayer should not use a texture if bUseTexture is set to false","labels":[],"closed_at":"2010-11-22T23:31:07Z","created_at":"2010-11-17T13:52:40Z","state":"closed","user":{"url":"https://api.github.com/users/benben","gravatar_id":"614a4e493d7c353296519bba720e77c5","avatar_url":"https://secure.gravatar.com/avatar/614a4e493d7c353296519bba720e77c5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"benben","id":124513},"id":424070,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/263.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/263","patch_url":"https://github.com/openframeworks/openFrameworks/pull/263.patch"}},{"updated_at":"2010-11-22T23:30:40Z","body":"see here: https://github.com/openframeworks/openFrameworks/issues/issue/261","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/262","comments":1,"milestone":null,"number":262,"html_url":"https://github.com/openframeworks/openFrameworks/issues/262","assignee":null,"title":"fixes #261","labels":[],"closed_at":"2010-11-22T23:30:40Z","created_at":"2010-11-17T13:39:23Z","state":"closed","user":{"url":"https://api.github.com/users/benben","gravatar_id":"614a4e493d7c353296519bba720e77c5","avatar_url":"https://secure.gravatar.com/avatar/614a4e493d7c353296519bba720e77c5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"benben","id":124513},"id":424049,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/262.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/262","patch_url":"https://github.com/openframeworks/openFrameworks/pull/262.patch"}},{"updated_at":"2010-11-17T15:04:06Z","body":"In ofxCvContourFinder when you call findContours there should be away to disable the textures for the inputCopy(...) line 67\n\nYou will get a crash if you are trying to run this function in a thread due to opengl ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/261","comments":3,"milestone":null,"number":261,"html_url":"https://github.com/openframeworks/openFrameworks/issues/261","assignee":null,"title":"ofxCvContourFinder","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2010-11-17T15:04:06Z","created_at":"2010-11-16T19:19:56Z","state":"closed","user":{"url":"https://api.github.com/users/vanderlin","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"vanderlin","id":149997},"id":422560,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-02-14T20:20:33Z","body":"ofSetColor(255) is white while ofBackground(255) is blue","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/260","comments":1,"milestone":null,"number":260,"html_url":"https://github.com/openframeworks/openFrameworks/issues/260","assignee":null,"title":"ofBackground is inconsistent with ofSetColor","labels":[],"closed_at":"2011-02-14T20:20:33Z","created_at":"2010-11-15T11:48:12Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"kylemcdonald","id":157106},"id":418837,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2010-11-17T14:55:30Z","body":"A couple of things here:\r\n1. The current version of ofxiPhoneKeyboard has no way to keep the textfield visible and hide the keyboard. I added a closeKeyboard() method to do just that.\r\n2. Manually editing the text using the [setText] method didn't trigger all the callbacks that got triggered when editing the text using the keyboard. I just added a call to [textFieldDidEndEditing] to correct that. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/259","comments":0,"milestone":null,"number":259,"html_url":"https://github.com/openframeworks/openFrameworks/issues/259","assignee":null,"title":"iPhone keyboard fixes","labels":[],"closed_at":"2010-11-17T14:55:30Z","created_at":"2010-11-13T17:33:58Z","state":"closed","user":{"url":"https://api.github.com/users/prisonerjohn","gravatar_id":"b52cabeecffe4497699db813a715456f","avatar_url":"https://secure.gravatar.com/avatar/b52cabeecffe4497699db813a715456f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"prisonerjohn","id":119702},"id":416874,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/259.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/259","patch_url":"https://github.com/openframeworks/openFrameworks/pull/259.patch"}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=30&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4966'), ('content-length', '29775'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"75048d1758b8859dd03cee1ffd88b1d3"'), ('date', 'Tue, 29 May 2012 18:46:51 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2010-11-13T17:21:27Z","body":"I just added a return statement to the laodFromBuffer() method to indicated whether the operation was successful or not. The \"loadOkay\" var was already there but unused.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/258","comments":1,"milestone":null,"number":258,"html_url":"https://github.com/openframeworks/openFrameworks/issues/258","assignee":null,"title":"XML loadFromBuffer() return value","labels":[],"closed_at":"2010-11-13T17:21:27Z","created_at":"2010-11-13T17:16:14Z","state":"closed","user":{"url":"https://api.github.com/users/prisonerjohn","gravatar_id":"b52cabeecffe4497699db813a715456f","login":"prisonerjohn","avatar_url":"https://secure.gravatar.com/avatar/b52cabeecffe4497699db813a715456f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":119702},"id":416858,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/258.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/258.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/258"}},{"updated_at":"2011-03-13T20:19:34Z","body":"ofColor, ofImage, ofSound... should all report either complete information (ofColor) or partial information (ofImage: width, height, format). this will encourage more people to use << when debugging, make debugging faster, make code shorter, and generally cause less problems with people misformatting prtinfs :)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/257","comments":0,"milestone":null,"number":257,"html_url":"https://github.com/openframeworks/openFrameworks/issues/257","assignee":null,"title":"operator<< should be overloaded for all basic types","labels":[],"closed_at":"2011-03-13T20:19:34Z","created_at":"2010-11-13T17:07:05Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":416848,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2010-11-15T18:06:12Z","body":"I just noticed that fonts are not being displayed in the iPhone simulator. I just tried the iPhoneFontsExample from the 0062Release branch and although it works fine on the actual device, nothing gets displayed in the simulator and I get the following trace in the console (over and over again):\r\n\r\n\tOF_ERROR: Error : font not allocated -- line 779 in /my/oF/dir/libs/openFrameworksCompiled/project/iphone/../../../openFrameworks/graphics/ofTrueTypeFont.cpp\r\n\r\nI had a quick look at ofTrueTypeFont and the problem happens on line 369:\r\n\tif (FT_New_Face( library, filename.c_str(), 0, &face )) {\r\n\t\treturn;\r\n\t}\r\n\r\nI also checked the contents of the .app package on both the device and simulator apps, and both have the font file at the correct path.\r\n\r\nFinally, I reverted back to an older versions of oF and the bug is still there, is it possible the problem lies with the recompiled version of freetype? (b3fd9144b8d45108fca86c96364655f9a0d68f7a)\r\n\r\nI don't really know where to go from here, so if someone wants to look at it or has any suggestions on stuff I can try, let me know!","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/256","comments":3,"milestone":null,"number":256,"html_url":"https://github.com/openframeworks/openFrameworks/issues/256","assignee":null,"title":"Problem with fonts on iPhone Simulator","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2010-11-15T18:06:12Z","created_at":"2010-11-13T16:39:54Z","state":"closed","user":{"url":"https://api.github.com/users/prisonerjohn","gravatar_id":"b52cabeecffe4497699db813a715456f","login":"prisonerjohn","avatar_url":"https://secure.gravatar.com/avatar/b52cabeecffe4497699db813a715456f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":119702},"id":416819,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2011-02-12T14:09:54Z","body":"Hi,\n\nJust clone a brand new copy, but I am unable to run any of the iphone projects. I get the following error messages:\n\n/openframeworks_master/libs/openFrameworksCompiled/project/iphone/../../../openFrameworks/graphics/ofGraphics.cpp:70:0 /openframeworks_master/libs/openFrameworksCompiled/project/iphone/../../../openFrameworks/graphics/ofGraphics.cpp:70: error: 'glPushAttrib' was not declared in this scope\n\nand the same goes for glPopAttrib and glOrtho\n\nAny help will be much appreciated\n\nCheers\nrS\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/254","comments":5,"milestone":null,"number":254,"html_url":"https://github.com/openframeworks/openFrameworks/issues/254","assignee":null,"title":"Unable to run iPhone projects","labels":[],"closed_at":"2011-02-12T14:09:54Z","created_at":"2010-11-11T16:28:37Z","state":"closed","user":{"url":"https://api.github.com/users/nardove","gravatar_id":"8022cb5f529975afbc64cc9312008d8c","login":"nardove","avatar_url":"https://secure.gravatar.com/avatar/8022cb5f529975afbc64cc9312008d8c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":277690},"id":413178,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2011-12-02T15:13:08Z","body":"i wish every main.cpp looked more like this:\r\n\r\n\t#include \"testApp.h\"\r\n\r\n\tint main() {\r\n\t\tofAppGlutWindow window;\r\n\t\t// specify width, height and OF_WINDOW or OF_FULLSCREEN\r\n\t\tofSetupOpenGL(&window, 640, 480, OF_WINDOW);\r\n\t\tofRunApp(new testApp());\r\n\t}\r\n\r\nthe two extra includes are unnecessary as they're included by testApp.h which has ofMain.h\r\n\r\nin general, there are lots of stray tabs throughout the core, conflicting indentation and bracing styles, random collections of newlines, sometimes spaces where there should be tabs, half-attempts at aligning variable names, unnecessary caps lock in comments, and way more //----- than there should be.\r\n\r\nin general this demands discussion on of-dev and agreement on some basic stylistic goals, but i feel like the above (main.cpp) should be pretty obvious and agreeable.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/253","comments":3,"milestone":null,"number":253,"html_url":"https://github.com/openframeworks/openFrameworks/issues/253","assignee":null,"title":"clean up the formatting!","labels":[],"closed_at":"2011-12-02T15:13:08Z","created_at":"2010-11-11T03:08:59Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":412183,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2010-11-13T14:31:17Z","body":"My commit here:\r\nhttps://github.com/tmatth/openFrameworks/commit/122e7081a2246cf2591f87cf0526d6683ab7e562\r\nresolves compiler warnings for the getHex method of ofColor","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/252","comments":0,"milestone":null,"number":252,"html_url":"https://github.com/openframeworks/openFrameworks/issues/252","assignee":null,"title":"Patch for https://github.com/openframeworks/openFrameworks/issues/issue/251","labels":[],"closed_at":"2010-11-13T14:31:17Z","created_at":"2010-11-09T21:13:56Z","state":"closed","user":{"url":"https://api.github.com/users/tmatth","gravatar_id":"540065079e39292038cd38830d20560a","login":"tmatth","avatar_url":"https://secure.gravatar.com/avatar/540065079e39292038cd38830d20560a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":66862},"id":409643,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/252.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/252.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/252"}},{"updated_at":"2011-03-13T20:18:06Z","body":"Compiling openFrameworks on Ubuntu 10.10 leads to the following warning:\r\n \r\n../../../openFrameworks/utils/ofTypes.h:376: warning: suggest parentheses around ‘+’ inside ‘<<’","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/251","comments":0,"milestone":null,"number":251,"html_url":"https://github.com/openframeworks/openFrameworks/issues/251","assignee":null,"title":"compiler warning for ofTypes.h","labels":[],"closed_at":"2011-03-13T20:18:06Z","created_at":"2010-11-09T20:59:26Z","state":"closed","user":{"url":"https://api.github.com/users/tmatth","gravatar_id":"540065079e39292038cd38830d20560a","login":"tmatth","avatar_url":"https://secure.gravatar.com/avatar/540065079e39292038cd38830d20560a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":66862},"id":409621,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2010-11-07T13:13:53Z","body":"install_dependencies.sh should call `sudo apt-get` instead of just `apt-get` so users won't have to run the script using sudo and subsequently compile everything as root.\n\nalso on ubuntu 10.10 `pkg-config --cflags libavformat` doesn't output a path, so compile fails with\n\n../../../openFrameworks/video/ofUCUtils.cpp:19: fatal error: avformat.h: No such file or directory\n\n19: #include -- doesn't exist: error\n20: #include -- doesn't exist\n21: #include -- correct\n22: #include -- correct\n\nYour hack doesn't work.\n\nMaybe you should leave all paths for ffmpeg away and add them using the Makefile?\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/250","comments":1,"milestone":null,"number":250,"html_url":"https://github.com/openframeworks/openFrameworks/issues/250","assignee":null,"title":"ubuntu setup script issuses","labels":[],"closed_at":"2010-11-07T13:13:53Z","created_at":"2010-11-06T20:23:09Z","state":"closed","user":{"url":"https://api.github.com/users/neapel","gravatar_id":"dcc01bf257434d56ea213358ad0c037a","login":"neapel","avatar_url":"https://secure.gravatar.com/avatar/dcc01bf257434d56ea213358ad0c037a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":77855},"id":404367,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2012-03-10T05:04:59Z","body":"This is on ofxIphone, requires the [appDelegate startAnimation] method to be called.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/248","comments":1,"milestone":null,"number":248,"html_url":"https://github.com/openframeworks/openFrameworks/issues/248","assignee":null,"title":"setFramerate doesn't properly return after being set to 0","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2012-03-10T05:04:59Z","created_at":"2010-11-01T01:17:01Z","state":"closed","user":{"url":"https://api.github.com/users/jonbro","gravatar_id":"893ec14dc008e3774afe5841115920d6","login":"jonbro","avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1597},"id":392755,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2011-01-14T03:11:27Z","body":"ofToInt() returns junk on the empty string, and this junk is different across systems. On OSX I tend to get negative integers while on Windows I tend to get positive integers (I was testing for <0 so my code worked on OSX and broke on Windows).\r\n\r\nI'm assuming this applies to ofToFloat() as well.\r\n\r\nHere is a demo that shows the problem, and provides a solution using stringstreams instead of sscanf.\r\n\r\n\tint testInt;\r\n\t\r\n\ttestInt = 0;\r\n\ttestInt = ofToInt(\"\");\r\n\tcout << \"testInt = ofToInt(empty): \" << testInt << endl;\r\n\t\r\n\ttestInt = 0;\r\n\tstringstream convert(\"\");\r\n\tconvert >> testInt;\r\n\tcout << \"empty >> testInt: \" << testInt << endl;\r\n\r\nThe alternative is to test for the string length before running sscanf. In general I think stringstreams are a smarter way to do conversion though.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/247","comments":1,"milestone":null,"number":247,"html_url":"https://github.com/openframeworks/openFrameworks/issues/247","assignee":null,"title":"inconsistent and arbitrary conversion behavior ofToInt","labels":[],"closed_at":"2011-01-14T03:11:27Z","created_at":"2010-10-17T19:35:06Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":367083,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2011-03-13T21:43:35Z","body":"This can be a massive headache when parsing basic delimited data.\r\n\r\nFor example, the string \"a,,b,,c\" yields 3 tokens instead of 5 (Processing's split() gives 5).\r\n\r\nMore of a description including a solution is posted here http://www.openframeworks.cc/forum/viewtopic.php?p=24126#p24126","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/246","comments":2,"milestone":null,"number":246,"html_url":"https://github.com/openframeworks/openFrameworks/issues/246","assignee":null,"title":"ofSplitString ignores empty tokens","labels":[],"closed_at":"2011-03-14T03:14:22Z","created_at":"2010-10-14T22:15:02Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":363172,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2011-03-13T19:36:30Z","body":"Lines are cited for changing, that aren't in the .cbp files.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/243","comments":0,"milestone":null,"number":243,"html_url":"https://github.com/openframeworks/openFrameworks/issues/243","assignee":null,"title":"The Windows CodeBlocks guide to creating a new project includes steps that you don't need to perform","labels":[],"closed_at":"2011-03-13T19:36:30Z","created_at":"2010-10-11T04:11:16Z","state":"closed","user":{"url":"https://api.github.com/users/pnewhook","gravatar_id":"fae2af75c8c0ca925a229678b528bb04","login":"pnewhook","avatar_url":"https://secure.gravatar.com/avatar/fae2af75c8c0ca925a229678b528bb04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":92876},"id":356107,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/243.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/243.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/243"}},{"updated_at":"2011-07-06T18:36:06Z","body":"This pull request includes:\r\n - cmake files to build OF as a shared/static library under linux/OS X\r\n - cmake files to build examples and addon examples\r\n - cmake files included in addons directory and to be included in project using addons to easily build apps witch use addons\r\n - a readme explaining how to build thoses parts and generate project files for various IDEs ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/242","comments":4,"milestone":null,"number":242,"html_url":"https://github.com/openframeworks/openFrameworks/issues/242","assignee":null,"title":"CMake build files","labels":[],"closed_at":"2011-07-06T18:36:06Z","created_at":"2010-10-09T13:57:04Z","state":"closed","user":{"url":"https://api.github.com/users/dopuskh3","gravatar_id":"33990a985289ab17b97d854cf3ea5bdc","login":"dopuskh3","avatar_url":"https://secure.gravatar.com/avatar/33990a985289ab17b97d854cf3ea5bdc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":86608},"id":354555,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/242.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/242.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/242"}},{"updated_at":"2010-11-08T16:36:08Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/241","comments":1,"milestone":null,"number":241,"html_url":"https://github.com/openframeworks/openFrameworks/issues/241","assignee":null,"title":"set base SDK to current OS for os x projects","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"}],"closed_at":"2010-11-08T16:36:08Z","created_at":"2010-10-07T18:58:53Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":351891,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2010-10-05T13:45:47Z","body":"In 0061 my update() routine is running after exit() is called, so deleted objects are being called and it's no fun.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/239","comments":1,"milestone":null,"number":239,"html_url":"https://github.com/openframeworks/openFrameworks/issues/239","assignee":null,"title":"update() running after exit() called","labels":[],"closed_at":"2010-10-05T13:45:47Z","created_at":"2010-10-01T14:29:40Z","state":"closed","user":{"url":"https://api.github.com/users/gimlids","gravatar_id":"cc4cace34c61103f0624002a692820f7","login":"gimlids","avatar_url":"https://secure.gravatar.com/avatar/cc4cace34c61103f0624002a692820f7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":186277},"id":342470,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2011-03-13T20:11:04Z","body":"possibly also have getNumBytes\nand getNumPixels","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/238","comments":1,"milestone":null,"number":238,"html_url":"https://github.com/openframeworks/openFrameworks/issues/238","assignee":null,"title":"ofBaseHasPixels should have getWidth getHeight getBytesPerPixel ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2011-03-13T20:11:04Z","created_at":"2010-09-29T15:37:31Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":338905,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2011-03-13T20:09:51Z","body":"http://www.openframeworks.cc/forum/posting.php?mode=reply&f=7&t=4687&sid=af92e2439a47e67b107dd3c3e0e4b1fb","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/237","comments":1,"milestone":null,"number":237,"html_url":"https://github.com/openframeworks/openFrameworks/issues/237","assignee":null,"title":"fix firmata way of reading the serial port","labels":[],"closed_at":"2011-03-13T20:09:51Z","created_at":"2010-09-28T18:23:38Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":337154,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2011-01-16T00:05:49Z","body":"multiplatform open/save file dialog functions with parameters for files/dirs, once closed it returns the name of the chosen file/dir or empty string if cancel was pressed","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/235","comments":1,"milestone":null,"number":235,"html_url":"https://github.com/openframeworks/openFrameworks/issues/235","assignee":null,"title":"ofOpenFileDialog/ofSaveFileDialog","labels":[],"closed_at":"2011-01-16T00:05:49Z","created_at":"2010-09-24T15:20:31Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":331578,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2010-09-24T10:33:07Z","body":"right now to apply rotations, translations and scales to an existent matrix4x4, you need to use preMult or postMult, add more simple methods. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/234","comments":1,"milestone":null,"number":234,"html_url":"https://github.com/openframeworks/openFrameworks/issues/234","assignee":null,"title":"create more understandable methods fo matrix4x4 for basic operations","labels":[],"closed_at":"2010-09-24T10:33:07Z","created_at":"2010-09-24T10:28:36Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":331253,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2010-10-05T12:56:47Z","body":"Hi. FreeImage and FreeType generate several warnings for me. They generally are the result of the dsymutil failing while attempting to create the dSYM file. \r\n\r\nWarnings look like this:\r\n\r\nwarning: (armv6) libs/freetype/lib/iphone/libFreeType_iphone_universal.a(ftinit.o) object file 'libs/freetype/lib/iphone/libFreeType_iphone_universal.a(ftinit.o)' doesn't contain architecture information for armv6.\r\n\r\nAnd when building for the simulator I get a lot of these: \r\n\r\nwarning: invalid DWARF generated by the compiler: DIE 0x000016a6 has multiple AT_byte_size attributes in 'libs/FreeImage/lib/iphone/libFreeImage_iphone_universal.a'\r\n\r\nIs there a way to clean these warnings up?\r\n\r\nThanks!!","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/233","comments":2,"milestone":null,"number":233,"html_url":"https://github.com/openframeworks/openFrameworks/issues/233","assignee":null,"title":"Warnings from missing/invalid debug info (iPhone)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"}],"closed_at":"2010-10-05T12:56:47Z","created_at":"2010-09-21T04:24:45Z","state":"closed","user":{"url":"https://api.github.com/users/colevscode","gravatar_id":"136e4c02a3c6c6012aef63553d01f70f","login":"colevscode","avatar_url":"https://secure.gravatar.com/avatar/136e4c02a3c6c6012aef63553d01f70f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":409293},"id":325829,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2010-10-05T12:56:28Z","body":"currently most libs are armv6 - if you try and make an app which is armv7 and \"only build active archs\" is not checked you get an error as the code for the armv7 part of the binary does not exist for poco freeimage etc. \r\n\r\nshould we make armv6 and armv7 joined libs for all iphone?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/232","comments":1,"milestone":null,"number":232,"html_url":"https://github.com/openframeworks/openFrameworks/issues/232","assignee":null,"title":"armv7 for all iphone libs?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"}],"closed_at":"2010-10-05T12:56:28Z","created_at":"2010-09-20T14:02:21Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":324604,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2010-09-24T17:39:36Z","body":"found on vista, just ran into it again on win 7. fix described here:\r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?p=21020#p21020\r\n\r\nalso, thanks to arturo for already adding fstream to ofConstants :) :)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/231","comments":4,"milestone":null,"number":231,"html_url":"https://github.com/openframeworks/openFrameworks/issues/231","assignee":null,"title":"ofConstants.h fails to compile with recent code::blocks on windows","labels":[],"closed_at":"2010-09-24T21:21:56Z","created_at":"2010-09-19T21:03:52Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":323813,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2010-09-24T14:56:53Z","body":"Calling in virtual void brightnessContrast(float brightness, float contrast); in ofxCvGrayscaleImage.h crashes out.\n\n // (uses values between -100 and 100)\n\nIs also incorrect? Peeking at the code appears as if the code is expecting values between -1.f and 1.f inclusive.\n\nE.g.\n\n\t\tdouble delta = 127.*contrast;\n\t\tdouble a = 255./(255. - delta*2);\n\t\tdouble b = a*(brightness*100 - delta);","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/230","comments":2,"milestone":null,"number":230,"html_url":"https://github.com/openframeworks/openFrameworks/issues/230","assignee":null,"title":"openCV BrightnessContrast crashes","labels":[],"closed_at":"2010-09-24T14:56:53Z","created_at":"2010-09-16T14:58:01Z","state":"closed","user":{"url":"https://api.github.com/users/JGL","gravatar_id":"e28464b00d9bd8370fa47b92d7a192f2","login":"JGL","avatar_url":"https://secure.gravatar.com/avatar/e28464b00d9bd8370fa47b92d7a192f2?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":243074},"id":319613,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2010-09-24T13:12:51Z","body":"ofSoundStreamClose causes segmentation fault on linux.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/229","comments":4,"milestone":null,"number":229,"html_url":"https://github.com/openframeworks/openFrameworks/issues/229","assignee":null,"title":"Segmentation fault on application closing","labels":[],"closed_at":"2010-09-24T13:12:51Z","created_at":"2010-09-11T15:02:13Z","state":"closed","user":{"url":"https://api.github.com/users/ptrv","gravatar_id":"7bed46e1c078b29fad9f44f8e0a113bd","login":"ptrv","avatar_url":"https://secure.gravatar.com/avatar/7bed46e1c078b29fad9f44f8e0a113bd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":49775},"id":312043,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2011-03-13T20:00:26Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/226","comments":3,"milestone":null,"number":226,"html_url":"https://github.com/openframeworks/openFrameworks/issues/226","assignee":null,"title":"do we need copy constructor for ofTexture?","labels":[],"closed_at":"2011-03-13T20:00:26Z","created_at":"2010-09-08T14:35:38Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":307668,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=31&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4965'), ('content-length', '32545'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"dc08421a13110890dc53b3e876eb34d5"'), ('date', 'Tue, 29 May 2012 18:46:53 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2010-09-09T14:11:39Z","body":"0061\nLooks like there is a malloc without a free in ofxDirlist.h, tested on Windows 7. I patched as this forum post explains but there is probably a nicer way...\n\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=7&t=4450&p=22909","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/223","comments":1,"milestone":null,"number":223,"html_url":"https://github.com/openframeworks/openFrameworks/issues/223","assignee":null,"title":"ofxDirList memory leak","labels":[],"closed_at":"2010-09-09T14:11:39Z","created_at":"2010-08-20T08:54:52Z","state":"closed","user":{"url":"https://api.github.com/users/darrencperry","avatar_url":"https://secure.gravatar.com/avatar/b2ef53381472a5b480dea39905e09f15?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b2ef53381472a5b480dea39905e09f15","login":"darrencperry","id":370601},"id":284261,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-13T19:59:33Z","body":"E-Mail:wanglei198428@163.com\r\nThe openFrameworks haven't supported the Live-streaming on IPhone?\r\nI just have a demo about playing local avi files.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/222","comments":1,"milestone":null,"number":222,"html_url":"https://github.com/openframeworks/openFrameworks/issues/222","assignee":null,"title":"Who could give me a Live-streaming video's Demo for IPhone","labels":[],"closed_at":"2011-03-13T19:59:33Z","created_at":"2010-08-19T03:15:42Z","state":"closed","user":{"url":"https://api.github.com/users/draco99","avatar_url":"https://secure.gravatar.com/avatar/39d4459e5668d771b421df83933b3b6c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"39d4459e5668d771b421df83933b3b6c","login":"draco99","id":324149},"id":282926,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-09-10T08:54:04Z","body":"ofTexture does not set textureID back to 0 after glDeleteTextures is called in ofTexture::clear . \n\nIf you do myTex.clear(); and allocate some other textures somewhere else. Then do myTex.loadData ( or ofImage::loadImage ) the clear() call that happens inside ofTexture::allocate will see that the ID of myTex.texData.textureID is not 0 and then try and clear it. This texture id number has a very good chance of being an ID of an existing texture. So the clear call trashes another bound texture. \n\nFix is very simple:\n\nReplace this:\n\n\t//----------------------------------------------------------\n\tvoid ofTexture::clear(){\n\t\t// try to free up the texture memory so we don't reallocate\n\t\tif (texData.textureID != 0){\n\t\t\tglDeleteTextures(1, (GLuint *)&texData.textureID);\t\t\t\n\t\t}\n\n\t\ttexData.bAllocated = false;\n\t}\n\nWith:\n\n\n\t//----------------------------------------------------------\n\tvoid ofTexture::clear(){\n\t\t// try to free up the texture memory so we don't reallocate\n\t\tif (texData.textureID != 0){\n\t\t\tglDeleteTextures(1, (GLuint *)&texData.textureID);\n\t\t\t//reset the tex id\t\t\t\n\t\t\ttexData.textureID = 0;\n\t\t}\n\t\ttexData.bAllocated = false;\n\t}\n\n\nReplicate:\nTo replicate the bug you can add this to the top of the current ofTexture.cpp file\n\n\t\tstatic int numAllocated = 0;\n\t\tstatic int numFreed = 0;\n\nThen in ofTexture::allocate\n\nunder this line:\n\tglGenTextures(1, (GLuint *)&texData.textureID); // could be more then one, but for now, just one\n\nadd:\n\tif( texData.textureID != 0 ){\n\t\tnumAllocated++;\n\t}\n\nthen in ofTexture::clear\n\nunder this line:\n\t\t\tglDeleteTextures(1, (GLuint *)&texData.textureID);\n\nadd:\n\t\t\tnumFreed++;\n\t\t\tprintf(\"ofTexture num allocated / free = %i / %i \\n\", numAllocated, numFreed);\n\nNow in the top of your main OF app \n\n\t\t\tvector tex;\n\nin testApp::setup();\n\n\t\t\ttex.assign(10, ofTexture());\n\t\t\tfor(int k = 0; k < tex.size(); k++)tex[k].allocate(32, 32, GL_RGB);\n\nin testApp::keyPressed\n\n\t\t\tfor(int k = 0; k < 5; k++)tex[k].clear();\n\nif there is no bug the numAllocated / free print out should be something like this:\n\t\tofTexture num allocated / free = 10 / 5\n\nbut if the bug exists the second number should go up on each key press ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/221","comments":2,"milestone":null,"number":221,"html_url":"https://github.com/openframeworks/openFrameworks/issues/221","assignee":null,"title":"Crazy ofTexture::Clear() Bug!! textureID not being reset to 0 - trashes other textures","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2010-09-10T08:54:04Z","created_at":"2010-08-15T23:49:06Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":279264,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-09-20T11:58:00Z","body":"char * machine was not being freed. \n\nchange to:\n\n\t//--------------------------------------------------------------\n\tstring ofxiPhoneGetDeviceRevision() {\n\t\tsize_t size;\n\t\tsysctlbyname(\"hw.machine\", NULL, &size, NULL, 0);\n\t\t\n\t\tif( size > 0 ){\n\t\t\tchar * machine;\n\t\t\tmachine = new char[size];\n\t\t\tsysctlbyname(\"hw.machine\", machine, &size, NULL, 0);\n\t\t\n\t\t\tstring device(machine);\n\t\t\t\n\t\t\tdelete[] machine;\n\t\t\t\t\n\t\t\treturn device;\n\t\t}else{\n\t\t\treturn \"\";\n\t\t}\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/220","comments":1,"milestone":null,"number":220,"html_url":"https://github.com/openframeworks/openFrameworks/issues/220","assignee":null,"title":"iphone ofxiPhoneGetDeviceRevision memory leak","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2010-09-20T11:58:00Z","created_at":"2010-08-15T22:03:48Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":279188,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-09-20T11:58:00Z","body":"This is because in the setupScreen code it is pulling the size of W and H from the key window - if this window has a small view like the UIAlertView this causes the opengl view in the background to look funky. The correct approach is to use ofGetWidth and ofGetHeight which return the cached app width and height regardless of the small view being shown. \r\n\r\nTo fix remove ofAppiPhoneWindow::timerLoop :\r\n\r\n\tif(bEnableSetupScreen) {\r\n\t\tint w, h;\r\n\t\t\r\n\t\tCGSize s = [[[UIApplication sharedApplication] keyWindow] bounds].size;\r\n\t\tw = s.width;\r\n\t\th = s.height;\r\n\r\nand replace with:\r\n\r\n\tif(bEnableSetupScreen) {\r\n\t\tint w, h;\r\n\t\t\r\n\t\tswitch(orientation) {\r\n\t\t\tcase OFXIPHONE_ORIENTATION_LANDSCAPE_RIGHT:\r\n\t\t\t\t\th = ofGetWidth();\r\n\t\t\t\t\tw = ofGetHeight();\r\n\t\t\t\tbreak;\r\n\t\t\t\t\r\n\t\t\tcase OFXIPHONE_ORIENTATION_LANDSCAPE_LEFT:\r\n\t\t\t\t\th = ofGetWidth();\r\n\t\t\t\t\tw = ofGetHeight();\r\n\t\t\t\tbreak;\r\n\t\r\n\t\t\tdefault:\r\n\t\t\t\tw = ofGetWidth();\r\n\t\t\t\th = ofGetHeight();\r\n\t\t\tbreak;\r\n\t\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/219","comments":1,"milestone":null,"number":219,"html_url":"https://github.com/openframeworks/openFrameworks/issues/219","assignee":null,"title":"iPhone opengl scales when UIAlertView comes up","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2010-09-20T11:58:00Z","created_at":"2010-08-13T17:56:24Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":277753,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-09-20T11:50:25Z","body":"Looks like the LITTLE_ENDIAN define is not made. \r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?p=22693#p22693\r\n\r\nmaybe this is better solved in ofConstants.h by defining LITTLE_ENDIAN for iphone OS? ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/218","comments":2,"milestone":null,"number":218,"html_url":"https://github.com/openframeworks/openFrameworks/issues/218","assignee":null,"title":"iphone rgb swap needed in iOS4 ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2010-09-20T11:50:25Z","created_at":"2010-08-10T21:52:35Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":274613,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-10-05T13:13:02Z","body":"Note that his diff is backwards - the size should be change from 256 to 64\nhttp://www.openframeworks.cc/forum/viewtopic.php?p=22640&#p22640","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/217","comments":1,"milestone":null,"number":217,"html_url":"https://github.com/openframeworks/openFrameworks/issues/217","assignee":null,"title":"ofVideoGrabber listDevices memcpy issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2010-10-05T13:13:02Z","created_at":"2010-08-09T14:51:39Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":273034,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-07-04T13:20:43Z","body":"if not the callback can try to call the audioReceived/Requested method in testApp when it's been destroyed","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/216","comments":2,"milestone":null,"number":216,"html_url":"https://github.com/openframeworks/openFrameworks/issues/216","assignee":null,"title":"ofSoundStream should be closed when the app ends","labels":[],"closed_at":"2010-09-10T08:54:04Z","created_at":"2010-08-06T18:48:02Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":270810,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-13T19:55:55Z","body":"I suggest in ofConstants.h replacing the definitions of these OF_IMAGE values:\r\n\r\n\t#define \tOF_IMAGE_GRAYSCALE\t\tGL_LUMINANCE\r\n\t#define \tOF_IMAGE_COLOR\t\t\tGL_RGB\r\n\t#define \tOF_IMAGE_COLOR_ALPHA\tGL_RGBA\r\n\t#define \tOF_IMAGE_UNDEFINED\t\tGL_NONE\r\n\r\nThis is a completely backward compatible change, but makes it more intuitive to allocate textures.\r\n\r\nYesterday I tried:\r\n\r\n\tofTexture tex;\r\n\ttex.allocate(w, h, OF_IMAGE_COLOR);\r\n\r\nAnd spent a few hours trying to figure out why my texture was grayscale :(","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/215","comments":2,"milestone":null,"number":215,"html_url":"https://github.com/openframeworks/openFrameworks/issues/215","assignee":null,"title":"make OF_IMAGE constants compatible with GL constants","labels":[],"closed_at":"2011-03-13T19:55:55Z","created_at":"2010-08-05T21:53:45Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":270080,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-09-24T14:14:29Z","body":"When you call receiveRaw() you get whatever is in ofxTCPClient's internal tmpBuff, up to the first null, but the class gets its data from a method that reads bytes, not c strings - i.e. no null terminator, just an array of bytes and a length. So you just need to put the null in at the end.\r\n\r\nPatch below.\r\n\r\n string ofxTCPClient::receiveRaw(){\r\n messageSize = TCPClient.Receive(tmpBuff, TCP_MAX_MSG_SIZE);\r\n if(messageSize==0){\r\n close();\r\n } else if(messageSize x + width && py > y + height ){\r\n\t\t return false;\r\n\t\t}\r\n\t\treturn true;\r\n\r\nshould be:\r\n\r\n\t\tif( px < x || py < y || px > x + width || py > y + height ){\r\n\t\t return false;\r\n\t\t}\r\n\t\treturn true;","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/211","comments":3,"milestone":null,"number":211,"html_url":"https://github.com/openframeworks/openFrameworks/issues/211","assignee":null,"title":"ofRectangle::inside has bad logic","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2010-09-09T20:56:23Z","created_at":"2010-07-21T14:38:46Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":255463,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-09-24T14:10:09Z","body":"ofBaseVideo inherits getPixels() from ofBaseHasPixels, but redeclares it anyway. the fix is as simple as removing this line from ofBaseVideo:\r\n\r\nvirtual unsigned char * getPixels()=0;","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/210","comments":1,"milestone":null,"number":210,"html_url":"https://github.com/openframeworks/openFrameworks/issues/210","assignee":null,"title":"ofBaseVideo redeclares getPixels()","labels":[],"closed_at":"2010-09-24T14:10:09Z","created_at":"2010-07-11T00:14:57Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":244074,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-09-24T14:08:23Z","body":"ofxCvContourFinder could do with a pushstyle/popstlye on it's draw:\r\n\r\n\r\n\tvoid ofxCvContourFinder::draw( float x, float y, float w, float h ) {\r\n\r\n\t\tofPushStyle();\r\n\t.\r\n\t.\r\n\t.\r\n\t\tofPopStyle();\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/209","comments":1,"milestone":null,"number":209,"html_url":"https://github.com/openframeworks/openFrameworks/issues/209","assignee":null,"title":"ofxCvContourFinder's draw changes style","labels":[],"closed_at":"2010-09-24T14:08:23Z","created_at":"2010-07-10T15:20:54Z","state":"closed","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":243851,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-09-24T14:01:43Z","body":"Hey all\n\nThis might have already been spotted / fixed\n\nIt seems that if you've got bUseTexture to true in ofxCvImage, then it will still only update the texture when draw is called (which isn't entirely what you want if you want to draw the texture elsewhere without calling the draw command)\n\nanyway. might be good to change this in future releases if not already fixed\n\nto get around it myself, i moved the texture update from draw() into an update() function which is also called from draw() (so you dont need to call both update() and draw(), as before. but if you want to use the texture without calling draw, then you can use update to fill the texture).\n\nthe update could instead be called whenever the image is set\n\ncode below:\n\tvoid ofxCvImage::update()\n\t{\n\t\tif( bTextureDirty ) {\n\t\t\tif(tex.getWidth() != width || tex.getHeight() != height) {\n\t\t\t\t//ROI was changed\n\t\t\t\t// reallocating texture - this could be faster with ROI support\n\t\t\t\ttex.clear();\n\t\t\t\ttex.allocate( width, height, glchannels );\n\t\t\t}\n\t\t\ttex.loadData( getPixels(), width, height, glchannels );\n\t\t\tbTextureDirty = false;\n\t\t}\n\t}\n\n\t//--------------------------------------------------------------------------------\n\tvoid ofxCvImage::draw( float x, float y ) {\n\t\tdraw( x,y, width, height );\n\t}\n\n\t//--------------------------------------------------------------------------------\n\tvoid ofxCvImage::draw( float x, float y, float w, float h ) {\n\t\tif( bUseTexture ) {\n\t\t\tupdate();\n\t\t\t\n\t\t\ttex.draw(x,y, w,h);\n\t\t\t\n\t\t} else {\n\t\t\t..\n\t\t\t..\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/208","comments":1,"milestone":null,"number":208,"html_url":"https://github.com/openframeworks/openFrameworks/issues/208","assignee":null,"title":"ofxCvImage creates texture on draw","labels":[],"closed_at":"2010-09-24T14:01:43Z","created_at":"2010-07-10T15:18:18Z","state":"closed","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":243849,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-04T14:00:09Z","body":"I tested this with the pre3 0061 version.\r\nIn a screenshot this look odd since the negative part is cutted completely but the offset rises with a higher volume dynamically. Looks like a mixture of an AGC and a wrong data type.\r\n\r\nWith the build in microphone next to the wide connector the signal is as it should.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/207","comments":2,"milestone":null,"number":207,"html_url":"https://github.com/openframeworks/openFrameworks/issues/207","assignee":null,"title":"iphone input example: not symmetric for headset microphone input","labels":[],"closed_at":"2011-12-04T14:00:09Z","created_at":"2010-07-04T14:12:30Z","state":"closed","user":{"url":"https://api.github.com/users/fah","avatar_url":"https://secure.gravatar.com/avatar/c946a36b97631c842d9fbc54be476a7b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c946a36b97631c842d9fbc54be476a7b","login":"fah","id":322496},"id":238386,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-09-24T18:31:41Z","body":"If you have an ofImage which you have disabled texture loading on and resize it - it trys to allocate a texture.\r\n\r\n//fix is \r\n\tif (!( (width == w) && (height == h) && (type == newType) ) ){\r\n\t\tbool bCacheBUseTexture = bUseTexture; //new\r\n\t\tclear();\r\n\t\tbUseTexture = bCacheBUseTexture; //new\r\n\t\tallocate(w, h, newType);\r\n\t}\r\n\r\nNOTE: we should check ofImage.cpp for other instances.\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/206","comments":1,"milestone":null,"number":206,"html_url":"https://github.com/openframeworks/openFrameworks/issues/206","assignee":null,"title":"Nasty ofImage bug - if you do resize(newWidth, newHeight) the call to clear() reset the bUseTextureFlag","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2010-09-24T18:31:41Z","created_at":"2010-06-20T20:02:19Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":226943,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-09-24T13:55:35Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/205","comments":1,"milestone":null,"number":205,"html_url":"https://github.com/openframeworks/openFrameworks/issues/205","assignee":null,"title":"Untitled","labels":[],"closed_at":"2010-09-24T13:55:35Z","created_at":"2010-06-20T04:47:51Z","state":"closed","user":{"url":"https://api.github.com/users/jadesoul","avatar_url":"https://secure.gravatar.com/avatar/1a124d165142f3fa684ac2485252ddda?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"1a124d165142f3fa684ac2485252ddda","login":"jadesoul","id":278372},"id":226670,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-09-24T13:55:05Z","body":"requested by Pierre - needs win32 implementation.\n\n\n ////////////////////////////////////////////////////////////\n /// Wait until the thread finishes\n ////////////////////////////////////////////////////////////\n void ofxThread::waitForThread(){\n if (threadRunning)\n {\n // Wait for the thread to finish, no timeout\n pthread_join(myThread, NULL);\n \n if(verbose)printf(\"ofxThread: waiting for thread to stop\\n\");\n // Reset the thread state\n threadRunning = false;\n }\n }\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/204","comments":2,"milestone":null,"number":204,"html_url":"https://github.com/openframeworks/openFrameworks/issues/204","assignee":null,"title":"ofxThread - waitForThread","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"}],"closed_at":"2010-09-24T13:55:05Z","created_at":"2010-06-17T13:12:20Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":224798,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-06-08T13:32:00Z","body":"vs complains about double to float conversion in much of the new ofRectangle functionality","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/203","comments":2,"milestone":null,"number":203,"html_url":"https://github.com/openframeworks/openFrameworks/issues/203","assignee":null,"title":"warnings on new code in ofTypes","labels":[],"closed_at":"2010-06-08T13:32:00Z","created_at":"2010-06-08T02:28:55Z","state":"closed","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":216589,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-01-12T02:47:41Z","body":"OF has no analog to the mousePressed or keyPressed variables in Processing that allow you to check for the mouse and keyboard state in the draw loop. This is further confused by the bMousePressed in ofAppRunner that is inaccessible in testApp.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/202","comments":6,"milestone":null,"number":202,"html_url":"https://github.com/openframeworks/openFrameworks/issues/202","assignee":null,"title":"No mousePressed or keyPressed equivalent","labels":[],"closed_at":"2011-01-12T02:47:41Z","created_at":"2010-06-06T20:11:59Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":215619,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-06-07T16:46:21Z","body":"videoInput has set and get methods for the camera parameters. It'd be great to have this in ofVideoGrabber and implemented across platforms. http://www.openframeworks.cc/forum/viewtopic.php?f=10&t=3330&p=21043","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/201","comments":5,"milestone":null,"number":201,"html_url":"https://github.com/openframeworks/openFrameworks/issues/201","assignee":null,"title":"Multiplatform setVideoSettingCamera","labels":[],"closed_at":"2010-06-07T23:31:58Z","created_at":"2010-06-06T17:05:53Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":215504,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-09-19T00:40:05Z","body":"f) get addons up and running too (by making all addons, mirroring and then stripping out code we don't want)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/200","comments":0,"milestone":null,"number":200,"html_url":"https://github.com/openframeworks/openFrameworks/issues/200","assignee":null,"title":"addons for vs2010","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"}],"closed_at":"2010-09-19T00:40:05Z","created_at":"2010-06-01T13:29:41Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":211420,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-09-19T00:40:05Z","body":"d) rename all vs2008 projects to have 2008 in the name and internally (it gets stripped out). I think this means all vs2008.slns internally too","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/198","comments":1,"milestone":null,"number":198,"html_url":"https://github.com/openframeworks/openFrameworks/issues/198","assignee":null,"title":"rename vs2008 project files","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"}],"closed_at":"2010-09-19T00:40:05Z","created_at":"2010-06-01T13:27:21Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":211414,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-09-19T00:40:05Z","body":"c) get compile all script to work (test that it works) and try all the basic examples","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/197","comments":1,"milestone":null,"number":197,"html_url":"https://github.com/openframeworks/openFrameworks/issues/197","assignee":null,"title":"vs2010 compile all script","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"}],"closed_at":"2010-09-19T00:40:05Z","created_at":"2010-06-01T13:26:26Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":211412,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=32&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4964'), ('content-length', '31552'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"ab42387f005b2112009f4a20856e64c8"'), ('date', 'Tue, 29 May 2012 18:46:54 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2010-09-19T00:40:05Z","body":"b) check other libraries (vs2010 changed libraries at the moment are poco foundation and oscpack)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/196","comments":1,"milestone":null,"number":196,"html_url":"https://github.com/openframeworks/openFrameworks/issues/196","assignee":null,"title":"check other vs2010 libs","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"}],"closed_at":"2010-09-19T00:40:05Z","created_at":"2010-06-01T13:25:56Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":211410,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2010-06-01T15:49:51Z","body":"a) compile all poco libraries to vs2010 (at the moment, only foundation is compiled to vs2010). I strongly think this is wrong. The question is do we upgrade poco or not? I've gotten both to compile on vs2010 but it took some real hacky things to get them up and running. At the moment, I've stuck with the old versions. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/195","comments":1,"milestone":null,"number":195,"html_url":"https://github.com/openframeworks/openFrameworks/issues/195","assignee":null,"title":"compile all poco libraries to vs2010 ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"}],"closed_at":"2010-06-01T15:49:51Z","created_at":"2010-06-01T13:24:40Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":211409,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2010-05-26T18:47:20Z","body":"\r\nIto and I just had that annoying path issue, where the app get's run at the wrong location. it was importing an old xcode project into a different version of xcode, and suddenly the working directory of the exe shifts. \r\n\r\nthis snippet seems to help -- specifically, \"_NSGetExecutablePath\" to get the actual path, then I strip off the file name and chdir there. \r\n\r\nmight be good to write some code to detect if we are properly running from within the bundle , and if not fix it in this way?\r\n\r\n #include \r\n\r\n void testApp::setup() {\r\n\t\r\n\tchar path[1024];\r\n\tuint32_t size = sizeof(path);\r\n\tif (_NSGetExecutablePath(path, &size) == 0){\r\n\t\tprintf(\"executable path is %s\\n\", path);\r\n\t\tstring pathStr = string(path);\r\n\t\tvector < string> pathBrokenUp = ofSplitString( pathStr, \"/\");\r\n\t\tstring newPath = \"/\";\r\n\t\tfor(int i = 0; i < pathBrokenUp.size()-1; i++){\r\n\t\t\tnewPath += pathBrokenUp[i];\r\n\t\t\tnewPath += \"/\";\r\n\t\t}\r\n\r\n\t\tcout << newPath << endl; // some sanity checks here\r\n\t\tsystem( \"pwd\" );\r\n\t\tchdir ( newPath.c_str() );\r\n\t\tsystem(\"pwd\");\r\n\t} else\r\n\t\tprintf(\"buffer too small; need size %u\\n\", size);\r\n\t","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/192","comments":1,"milestone":null,"number":192,"html_url":"https://github.com/openframeworks/openFrameworks/issues/192","assignee":null,"title":"xcode / mac paths issue, possible fix","labels":[],"closed_at":"2010-05-26T18:47:20Z","created_at":"2010-05-20T16:20:23Z","state":"closed","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":201814,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2010-09-24T13:20:29Z","body":"should be only in Release target","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/191","comments":2,"milestone":null,"number":191,"html_url":"https://github.com/openframeworks/openFrameworks/issues/191","assignee":null,"title":"remove -s flag in linux makefiles","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2010-09-24T13:20:29Z","created_at":"2010-05-20T11:10:35Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":201579,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2010-05-20T08:36:08Z","body":"The ofSoundStream.cpp function receiveAudioBufferAndCallSimpleApp will blank the input buffer before sending the ofEvent. This results in all ofEvents for audioReceived get a buffer of zeros.\n\nFixing it is as simple as removing the memset from the function:\nBefore:\n\tif (nInputChannels > 0){\n\t\t\n\t\tif( OFSAptr )\n\t\t\tOFSAptr->audioReceived(fPtrIn, bufferSize, nInputChannels);\n\t\tmemset(fPtrIn, 0, bufferSize * nInputChannels * sizeof(float));\n\t\t#ifdef OF_USING_POCO\n\t\t\taudioEventArgs.buffer = fPtrIn;\n\t\t\taudioEventArgs.bufferSize = bufferSize;\n\t\t\taudioEventArgs.nChannels = nInputChannels;\n\t\t\tofNotifyEvent( ofEvents.audioReceived, audioEventArgs );\n\t\t#endif\n\t}\n\n\nAfter: Removed the memset fixes empty notifications.\n\tif (nInputChannels > 0){\n\t\t\n\t\tif( OFSAptr )\n\t\t\tOFSAptr->audioReceived(fPtrIn, bufferSize, nInputChannels);\n\t\t#ifdef OF_USING_POCO\n\t\t\taudioEventArgs.buffer = fPtrIn;\n\t\t\taudioEventArgs.bufferSize = bufferSize;\n\t\t\taudioEventArgs.nChannels = nInputChannels;\n\t\t\tofNotifyEvent( ofEvents.audioReceived, audioEventArgs );\n\t\t#endif\n\t}\n\nNote! The if( OFSAptr ) line is added by me so creation of a sound system without an app wont cause a crash. There is an existing issue for this at: http://github.com/openframeworks/openFrameworks/issuesearch?state=open&q=receiveAudioBufferAndCallSimpleApp#issue/183","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/190","comments":2,"milestone":null,"number":190,"html_url":"https://github.com/openframeworks/openFrameworks/issues/190","assignee":null,"title":"receiveAudioBufferAndCallSimpleApp blanks memory before event","labels":[],"closed_at":"2010-05-20T08:36:08Z","created_at":"2010-05-20T00:00:26Z","state":"closed","user":{"url":"https://api.github.com/users/fractaloop","gravatar_id":"aa8541e1bdd8a427f737cf36a983c817","login":"fractaloop","avatar_url":"https://secure.gravatar.com/avatar/aa8541e1bdd8a427f737cf36a983c817?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":223073},"id":201266,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2010-06-07T16:18:38Z","body":"Hi. I dont know / use git, so I cant make the change myself, but in ofx3DmodelLoader, mip map filtering on the MAG param is a glError, so rather than:\r\n\r\n glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_LINEAR);\r\n\r\n\r\n glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);\r\n\r\nline 77 @ http://github.com/openframeworks/openFrameworks/blob/master/addons/ofx3DModelLoader/src/3DS/texture3DS.cpp sorry if this is the wrong way going about this :)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/189","comments":2,"milestone":null,"number":189,"html_url":"https://github.com/openframeworks/openFrameworks/issues/189","assignee":null,"title":"ofx3DmodelLoader","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2010-06-07T16:18:38Z","created_at":"2010-04-30T16:51:45Z","state":"closed","user":{"url":"https://api.github.com/users/vade","gravatar_id":"37aca214d4875cd90af9d67072c82642","login":"vade","avatar_url":"https://secure.gravatar.com/avatar/37aca214d4875cd90af9d67072c82642?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":65011},"id":183917,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2010-09-24T13:16:43Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=5&t=3762&view=unread#unread","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/188","comments":1,"milestone":null,"number":188,"html_url":"https://github.com/openframeworks/openFrameworks/issues/188","assignee":null,"title":"linux videoplayer seems to have memory leaks","labels":[],"closed_at":"2010-09-24T13:16:43Z","created_at":"2010-04-27T21:04:15Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":181163,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2010-06-07T17:07:32Z","body":"fps can jump over 60fps when the app slows down due to heavy opengl\nmoving the sleeping code from idle to render callback fixes this - why? \nis this some hardware optimization / threading sort of thing? \n\nI have seen this on mac and pc:\n\n\n\tSteps to reproduce:\n\n\n\tTake the polygon example of 0061:\n\n\n\tadd to setup():\n\tofSetFrameRate(30);\n\n\n\tadd to draw():\n\n\n\tofSetColor(0x000000);\n\tofDrawBitmapString(ofToString(ofGetFrameRate()), 10, 20);\n\n\n\tfor(int i = 0; i < ofRandom(3, 50); i++){\n\n\n\n\n\t//--REST OF THE DRAW CODE\n\n\n\n\n\n\n\t}\n\n\n\n\n\tResults: you should see the fps hover between 29 and 38 ( depending on\n\tyour system ). \n\n\n\n\n\tFix?: Move this code in void ofAppGlutWindow::display(void)\n\tTo void ofAppGlutWindow::idle_cb(void) --> under the line: prevMillis\n\t= ofGetElapsedTimeMillis(); // you have to measure here\n\n\n\t// -------------- fps calculation:\n\t// theo - please don't mess with this without letting me know.\n\t// there was some very strange issues with doing ( timeNow-timeThen )\n\tproducing different values to: double diff = timeNow-timeThen;\n\t//\n\thttp://www.openframeworks.cc/forum/viewtopic.php?f=7&t=1892&p=11166#p11166\n\n\n\ttimeNow = ofGetElapsedTimef();\n\tdouble diff = timeNow-timeThen;\n\tif( diff > 0.00001 ){\n\tfps = 1.0 / diff;\n\tframeRate *= 0.9f;\n\tframeRate += 0.1f*fps;\n\t}\n\tlastFrameTime = diff;\n\ttimeThen = timeNow;\n\t // --------------\n\n\n\n\n\tResults: fps now reports between 25-30 fps as expected\n\n\n\tStrange huh?\n\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/187","comments":1,"milestone":null,"number":187,"html_url":"https://github.com/openframeworks/openFrameworks/issues/187","assignee":null,"title":"framerate issue when ofSetFrameRate or ofSetVerticalSync is on ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2010-06-07T17:07:32Z","created_at":"2010-04-26T22:02:15Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":180339,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2010-06-07T16:12:09Z","body":"Not sure if this is the final fix - but we should look into it:\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?p=19340#p19340","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/186","comments":2,"milestone":null,"number":186,"html_url":"https://github.com/openframeworks/openFrameworks/issues/186","assignee":null,"title":"serial bug for snow leopard / 10.6.2","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2010-06-07T16:12:09Z","created_at":"2010-04-26T13:34:13Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":179937,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2010-07-03T08:16:28Z","body":"hi!\nin addition to this thread : http://www.openframeworks.cc/forum/viewtopic.php?f=9&t=2233\n\nIt looks like this function can crash the application :\n\tvoid ofSoundStreamSetup(int nOutputChannels, int nInputChannels, int sampleRate, int bufferSize, int nBuffers);\n\nI had to change the line 36 of ofSoundStream.cpp from : \n\tOFSAptr->audioReceived(fPtrIn, bufferSize, nInputChannels);\n\nto\n\n\tif(OFSAptr != NULL) OFSAptr->audioReceived(fPtrIn, bufferSize, nInputChannels);","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/185","comments":1,"milestone":null,"number":185,"html_url":"https://github.com/openframeworks/openFrameworks/issues/185","assignee":null,"title":"ofSoundStreamSetup with ofBaseApp == NULL","labels":[],"closed_at":"2010-07-03T08:16:28Z","created_at":"2010-04-26T10:29:48Z","state":"closed","user":{"url":"https://api.github.com/users/kikko","gravatar_id":"035cbd6b9548954a83479230633ca398","login":"kikko","avatar_url":"https://secure.gravatar.com/avatar/035cbd6b9548954a83479230633ca398?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144372},"id":179871,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-14T03:11:27Z","body":"As far as I know, this is the most recent revision of the addon:\r\n\r\nhttp://kyle.googlecode.com/files/ofxCvHaarFinder.zip","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/184","comments":2,"milestone":null,"number":184,"html_url":"https://github.com/openframeworks/openFrameworks/issues/184","assignee":null,"title":"ofxOpenCv needs ofxCvHaarFinder","labels":[],"closed_at":"2011-01-14T03:11:27Z","created_at":"2010-04-21T17:08:57Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":176681,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2010-09-24T13:14:57Z","body":"If ofSoundStream is created using:\nvoid ofSoundStreamSetup(int nOutputChannels, int nInputChannels, int sampleRate, int bufferSize, int nBuffers);\nthen OFSAptr is never set.\n\nDuring the loop, receiveAudioBufferAndCallSimpleApp is called. It does not check for a null pointer before OFSAptr->audioReceived(fPtrIn, bufferSize, nInputChannels);\n\nSuggested fix:\n if( OFSAptr )\n OFSAptr->audioReceived(fPtrIn, bufferSize, nInputChannels);","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/183","comments":1,"milestone":null,"number":183,"html_url":"https://github.com/openframeworks/openFrameworks/issues/183","assignee":null,"title":"ofSoundStream crashes if not initialized with ofBaseApp","labels":[],"closed_at":"2010-09-24T13:14:57Z","created_at":"2010-04-17T21:49:30Z","state":"closed","user":{"url":"https://api.github.com/users/fractaloop","gravatar_id":"aa8541e1bdd8a427f737cf36a983c817","login":"fractaloop","avatar_url":"https://secure.gravatar.com/avatar/aa8541e1bdd8a427f737cf36a983c817?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":223073},"id":173991,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-03-13T19:48:41Z","body":"This is a feature request.\n\nCurrently ofVideoPlayer only supports one decoding system per platform.\n\nIdeally it would support various implementations using a pluggable factory design. This would extend ofVideoPlayer to support DirectShow, Theora, and a host of others implemented as one interface.\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/180","comments":0,"milestone":null,"number":180,"html_url":"https://github.com/openframeworks/openFrameworks/issues/180","assignee":null,"title":"ofVideoPlayer restructured for plug-in support","labels":[],"closed_at":"2011-03-13T19:48:41Z","created_at":"2010-04-11T22:12:55Z","state":"closed","user":{"url":"https://api.github.com/users/fractaloop","gravatar_id":"aa8541e1bdd8a427f737cf36a983c817","login":"fractaloop","avatar_url":"https://secure.gravatar.com/avatar/aa8541e1bdd8a427f737cf36a983c817?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":223073},"id":169482,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2010-10-05T13:11:59Z","body":"\r\nas we move old projects to 10.6 / latest xcode gcc you can get hundreds and hundreds of warnings (2000+) from fmod. \r\n\r\nhttp://stackoverflow.com/questions/59670/how-to-get-rid-of-deprecated-conversion-from-string-constant-to-char-warning\r\n\r\niwe should disable this warning as compiler flag or pragma, so that switching between gcc versions is less painful. \r\n\r\n- z\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/179","comments":5,"milestone":null,"number":179,"html_url":"https://github.com/openframeworks/openFrameworks/issues/179","assignee":null,"title":"xcode - deprecated conversion from string constant to 'char*' ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"}],"closed_at":"2010-10-05T13:11:59Z","created_at":"2010-04-11T11:19:26Z","state":"closed","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":169193,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-16T00:31:14Z","body":"lets add \r\n\r\ncropping...\r\nand image conversions. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/177","comments":3,"milestone":null,"number":177,"html_url":"https://github.com/openframeworks/openFrameworks/issues/177","assignee":null,"title":"ofImage Features ","labels":[],"closed_at":"2011-01-16T00:31:14Z","created_at":"2010-04-10T01:51:49Z","state":"closed","user":{"url":"https://api.github.com/users/vanderlin","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":149997},"id":168548,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-02T19:18:34Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/176","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":176,"html_url":"https://github.com/openframeworks/openFrameworks/issues/176","assignee":null,"title":"example packs - opencv motion detection etc. ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":"2011-12-02T19:18:34Z","created_at":"2010-04-06T19:44:55Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":166215,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-17T09:18:48Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/170","comments":2,"milestone":null,"number":170,"html_url":"https://github.com/openframeworks/openFrameworks/issues/170","assignee":null,"title":"opengl hardware test example","labels":[],"closed_at":"2011-10-17T09:18:48Z","created_at":"2010-04-06T19:38:19Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":166206,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-16T00:47:42Z","body":"when creating copying textures the actual texture in the graphics card is deleted when one of the copies is destroyed. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/169","comments":1,"milestone":null,"number":169,"html_url":"https://github.com/openframeworks/openFrameworks/issues/169","assignee":null,"title":"copy constructor for textures","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2011-01-16T00:47:42Z","created_at":"2010-04-06T15:38:23Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":166053,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2010-09-10T09:23:08Z","body":" is included by default, which is helpful for doing C++ style string creation.\n\nC++ style file i/o would be nice too.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/168","comments":0,"milestone":null,"number":168,"html_url":"https://github.com/openframeworks/openFrameworks/issues/168","assignee":null,"title":" included by default","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2010-09-10T09:23:08Z","created_at":"2010-04-06T14:41:49Z","state":"closed","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":166005,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2010-04-26T20:25:38Z","body":"you need to add if(dir != NULL) closedir(dir); after the while loop (line 142)\r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=7&t=2055","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/166","comments":2,"milestone":null,"number":166,"html_url":"https://github.com/openframeworks/openFrameworks/issues/166","assignee":null,"title":"ofxDirList maxes out","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2010-04-26T20:25:38Z","created_at":"2010-04-06T12:09:43Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":165893,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-16T00:47:20Z","body":"1) load and save raw bytes\r\n2) file move, rename, delete ( theo - I have this code ) \r\n3) file dialogs? ofxFileDialog? ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/165","comments":4,"milestone":null,"number":165,"html_url":"https://github.com/openframeworks/openFrameworks/issues/165","assignee":null,"title":"file tools","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2011-01-16T00:47:20Z","created_at":"2010-04-06T12:08:53Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":165891,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-16T00:05:15Z","body":"at very least maybe then a file downloader - finally use that Poco?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/164","comments":4,"milestone":null,"number":164,"html_url":"https://github.com/openframeworks/openFrameworks/issues/164","assignee":null,"title":"load file from web for ofimage / xml ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2011-01-16T00:05:15Z","created_at":"2010-04-06T12:07:34Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":165889,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2010-04-26T20:27:25Z","body":"ofxDirList fix:\r\n\r\nyou need to add if(dir != NULL) closedir(dir); after the while loop (line 142)\r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=7&t=2055","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/163","comments":1,"milestone":null,"number":163,"html_url":"https://github.com/openframeworks/openFrameworks/issues/163","assignee":null,"title":"ofxDirList max reads","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2010-04-26T20:27:25Z","created_at":"2010-04-05T22:03:42Z","state":"closed","user":{"url":"https://api.github.com/users/vanderlin","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":149997},"id":165549,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2010-11-06T15:11:12Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/162","comments":1,"milestone":null,"number":162,"html_url":"https://github.com/openframeworks/openFrameworks/issues/162","assignee":null,"title":"all color functions to take ofColor arguments","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2010-11-06T15:11:12Z","created_at":"2010-04-05T21:44:38Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":165541,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-03-19T08:05:08Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=8&t=3444&hilit=ofxSoundStream\r\n\r\nthis will allow to use several devices at the same time. although it can just stay as an addon and just add some function to select which device you want to use. right now you need to change the core code to select a different device than the default one","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/161","comments":1,"milestone":null,"number":161,"html_url":"https://github.com/openframeworks/openFrameworks/issues/161","assignee":null,"title":"make ofSoundStream a class","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2011-03-19T08:05:08Z","created_at":"2010-04-05T21:43:14Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":165539,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=33&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4963'), ('content-length', '30206'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"d7beb767269c6f25493ac5a42cfb2f67"'), ('date', 'Tue, 29 May 2012 18:46:55 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-03-13T19:43:17Z","body":"this can be a different version of the functions, and be used by the opengl ones. can help to abstract the opengl calls for the swappable renderer. also useful with ofShape or ofVertexes and more performance than calculating the vertexes each update","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/159","comments":1,"milestone":null,"number":159,"html_url":"https://github.com/openframeworks/openFrameworks/issues/159","assignee":null,"title":"have primitive drawing functions in ofGraphics return the vertexes?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2011-03-13T19:43:17Z","created_at":"2010-04-05T21:36:34Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":165536,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-01-09T01:06:30Z","body":"This would mean dropping support for 10.4 users. \r\nIs the future though!\r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?p=19222#p19222","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/158","comments":3,"milestone":null,"number":158,"html_url":"https://github.com/openframeworks/openFrameworks/issues/158","assignee":null,"title":"QTKit -> replace Quicktime ? ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2011-01-09T01:06:30Z","created_at":"2010-04-05T19:10:02Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":165429,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-01-16T03:58:25Z","body":"being able to have multiple classes receive the callback for a sound output and mix into the buffer instead of replacing it. ( ie more how an OS audio system works ) ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/157","comments":2,"milestone":null,"number":157,"html_url":"https://github.com/openframeworks/openFrameworks/issues/157","assignee":null,"title":"audio output mixer","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2011-01-16T03:58:25Z","created_at":"2010-04-05T18:57:42Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":165421,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-11-09T23:06:12Z","body":"a la ofxVideoGrabber","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/156","comments":1,"milestone":null,"number":156,"html_url":"https://github.com/openframeworks/openFrameworks/issues/156","assignee":null,"title":"swappable video grabber?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2010-11-09T23:06:12Z","created_at":"2010-04-05T18:56:00Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":165418,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-13T19:42:04Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/155","comments":0,"milestone":null,"number":155,"html_url":"https://github.com/openframeworks/openFrameworks/issues/155","assignee":null,"title":"swappable sound api?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2011-03-13T19:42:04Z","created_at":"2010-04-05T18:55:48Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":165417,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-11-09T23:06:12Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/154","comments":1,"milestone":null,"number":154,"html_url":"https://github.com/openframeworks/openFrameworks/issues/154","assignee":null,"title":"swappable video player?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2010-11-09T23:06:12Z","created_at":"2010-04-05T18:55:36Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":165415,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T19:42:12Z","body":"Theo: I have this code to a certain extent\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/152","comments":3,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":152,"html_url":"https://github.com/openframeworks/openFrameworks/issues/152","assignee":null,"title":"depth testing / sorting for png textures ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":"2011-12-02T19:42:12Z","created_at":"2010-04-05T18:48:23Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":165408,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-02-27T13:10:11Z","body":"http://users.design.ucla.edu/~acolubri/processing/glgraphics/home/\r\nport?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/151","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":151,"html_url":"https://github.com/openframeworks/openFrameworks/issues/151","assignee":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"title":"look at GLGraphics","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2012-02-27T13:10:11Z","created_at":"2010-04-05T18:47:37Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":165407,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-01-10T15:35:32Z","body":"( from our wish list )\r\n\r\nShaders\r\nVolumetric lighting\r\nGood stuff\r\nping pong\r\nblur and glow\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/150","comments":1,"milestone":null,"number":150,"html_url":"https://github.com/openframeworks/openFrameworks/issues/150","assignee":null,"title":"Shaders in core","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2011-01-10T15:35:32Z","created_at":"2010-04-05T18:46:27Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":165403,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-01-10T15:35:32Z","body":"make it core, make it dope!\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=10&t=3143&hilit=fbo&start=15","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/149","comments":5,"milestone":null,"number":149,"html_url":"https://github.com/openframeworks/openFrameworks/issues/149","assignee":null,"title":"ofFBOTexture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2011-01-10T15:35:32Z","created_at":"2010-04-05T18:45:57Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":165402,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-01-16T00:46:20Z","body":"Collada is dope - but might be too heavy?\r\nThere is OBJ out there that handles textures - ask Keith?\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/148","comments":10,"milestone":null,"number":148,"html_url":"https://github.com/openframeworks/openFrameworks/issues/148","assignee":null,"title":"better 3D model loader","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2011-01-16T08:46:19Z","created_at":"2010-04-05T18:44:44Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":165400,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-13T19:44:31Z","body":"allows for tessellation, caching etc\npossibly auto tex coords based on bounding box?\ntex coords and color arrays\nmake shader friendly!\n\nnotes from:\nhttp://wiki.openframeworks.cc/index.php?title=3D_WishList\n\nofPolygonFace? ie: ofPolygon made up of ofPolygonFace - then you could do stuff like shatter where a polygon brekas up into parts.\nofPolygonVertex (same as above) break a face up into vertexes or a polygon to vertexes directly.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/147","comments":1,"milestone":null,"number":147,"html_url":"https://github.com/openframeworks/openFrameworks/issues/147","assignee":null,"title":"ofShape object","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2011-03-13T19:44:31Z","created_at":"2010-04-05T18:42:28Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":165398,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-10-14T20:45:28Z","body":"ofBeginShape();\r\nofVertexes(myArray); \r\nofEndShape()\r\n\r\ncould be combines with tex cords or color arrays?\r\n\r\nofBeginShape();\r\nofVertexes(myArray); \r\nofTextureCoordinates(myTexArray);\r\nofEndShape()","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/146","comments":2,"milestone":null,"number":146,"html_url":"https://github.com/openframeworks/openFrameworks/issues/146","assignee":null,"title":"ofBeginShape / EndShape to take vector?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2011-01-14T16:09:50Z","created_at":"2010-04-05T18:41:02Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":165397,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-11-06T15:11:12Z","body":"ie: ofCircle(myPt, 20); \r\nofLine(my3DPt1, my3DPt2); \r\nofTriangle(pt1, pt2, pt3);","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/145","comments":3,"milestone":null,"number":145,"html_url":"https://github.com/openframeworks/openFrameworks/issues/145","assignee":null,"title":"ofRect, ofTriangle etc to take ofPoint arguments ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2010-11-06T15:11:12Z","created_at":"2010-04-05T18:40:02Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":165396,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-11-06T15:11:12Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/144","comments":3,"milestone":null,"number":144,"html_url":"https://github.com/openframeworks/openFrameworks/issues/144","assignee":null,"title":"all ofGraphics to have z = 0 ) argument?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2010-11-06T15:11:12Z","created_at":"2010-04-05T18:38:04Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":165394,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-01-16T00:45:36Z","body":"Multiple lights\r\nDifferent types\r\nPosition\r\nDirection\r\nTweening\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/143","comments":1,"milestone":null,"number":143,"html_url":"https://github.com/openframeworks/openFrameworks/issues/143","assignee":null,"title":"lighting - basic lighting for 3D","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2011-01-16T00:45:36Z","created_at":"2010-04-05T18:37:40Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":165393,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-01-16T00:44:56Z","body":"should be abstracted along with swappable render - THEO: \"I have most of below from Rise & Fall project\". \n\nCamera:\n\nSet origin\nReset view\nPosition\nLookAt\nTweening\nFOV\nclip plane (near and far)\ndebug grid (like graph paper) shows origin and coordinate system - so you know which way you are facing.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/142","comments":2,"milestone":null,"number":142,"html_url":"https://github.com/openframeworks/openFrameworks/issues/142","assignee":null,"title":"opengl camera control","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2011-01-16T00:44:56Z","created_at":"2010-04-05T18:35:34Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":165391,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-13T19:41:53Z","body":"abstract all opengl calls","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/141","comments":1,"milestone":null,"number":141,"html_url":"https://github.com/openframeworks/openFrameworks/issues/141","assignee":null,"title":"swappable render","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2011-03-13T19:41:53Z","created_at":"2010-04-05T18:34:27Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":165390,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-04-26T20:13:26Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?p=19156&#p19156","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/139","comments":1,"milestone":null,"number":139,"html_url":"https://github.com/openframeworks/openFrameworks/issues/139","assignee":null,"title":"ofxDirList bug with empty paths","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2010-04-26T20:13:26Z","created_at":"2010-04-02T17:07:49Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":163886,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-04-26T20:27:25Z","body":"\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?p=19093&#p19093","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/138","comments":2,"milestone":null,"number":138,"html_url":"https://github.com/openframeworks/openFrameworks/issues/138","assignee":null,"title":"ofEventUtils missing include guard or #pragma once","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2010-04-26T20:27:25Z","created_at":"2010-03-30T10:40:57Z","state":"closed","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":161526,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-06-07T16:06:43Z","body":"enables 0.0-1.0 for both ARB and regular.\r\n\r\nhttp://github.com/memo/openFrameworks/commit/fdcb83e91cb8030898da72fb4652b55ea1924fe4\r\n( for iphone ) http://github.com/memo/openFrameworks/commit/601ff6fede8393868e49d5244dee6b74f65690a2","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/137","comments":1,"milestone":null,"number":137,"html_url":"https://github.com/openframeworks/openFrameworks/issues/137","assignee":null,"title":"ofEnableNormalizedTexCoords ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2010-06-07T16:06:43Z","created_at":"2010-03-23T14:20:55Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":156852,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-08-27T22:48:05Z","body":"Two requests regarding keyPressed() / keyReleased():\r\n1) It would be very convenient if those functions had an extra bitfield argument to indicate modifier state; e.g.:\r\nenum KEY_MODIFIER {\r\n KEY_SHIFT = 1 << 0,\r\n KEY_CTRL = 1 << 1,\r\n /* etc. */\r\n};\r\n\r\n2) Have the functions return a bool, so they can easily be chained without multiple objects handling the same keyboard event; this goes for mouse events as well.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/136","comments":2,"milestone":null,"number":136,"html_url":"https://github.com/openframeworks/openFrameworks/issues/136","assignee":null,"title":"change of keyPressed/keyReleased functions","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2011-08-27T22:48:05Z","created_at":"2010-03-19T00:42:20Z","state":"closed","user":{"url":"https://api.github.com/users/woutgg","avatar_url":"https://secure.gravatar.com/avatar/4903b31ae1bfc8ffc90d70fe265d6a4f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"4903b31ae1bfc8ffc90d70fe265d6a4f","login":"woutgg","id":45257},"id":154058,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-09T15:05:22Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/135","comments":8,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":135,"html_url":"https://github.com/openframeworks/openFrameworks/issues/135","assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"title":"ofImage::grabScreen doesn't work on iPhone","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":"2012-03-09T15:05:22Z","created_at":"2010-03-18T15:53:25Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":153744,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-10-05T12:55:53Z","body":"On a little-endian machine (macbook4.1), resizing an ofImage loaded from an RGB+alpha (8bit per channel) PNG file yields an image with the color channels inversed.\r\nWhen the line 'if (pix.bytesPerPixel != 1) swapRgb(pix);' (ofImage.cpp#430) is disabled, everything works properly.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/134","comments":3,"milestone":null,"number":134,"html_url":"https://github.com/openframeworks/openFrameworks/issues/134","assignee":null,"title":"ofImage resize reverses colors","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2010-10-05T12:55:53Z","created_at":"2010-03-07T16:15:30Z","state":"closed","user":{"url":"https://api.github.com/users/woutgg","avatar_url":"https://secure.gravatar.com/avatar/4903b31ae1bfc8ffc90d70fe265d6a4f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"4903b31ae1bfc8ffc90d70fe265d6a4f","login":"woutgg","id":45257},"id":146251,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-04-26T20:53:45Z","body":"\r\nI found a bug in the v0.61 with the ofSerial function setup(int deviceNumber, int baud).\r\n\r\nofSerial.cpp, line 274 :\r\nif( str.substr(0,3) == \"cu.\" || str.substr(0,3) == \"tty\" || str.substr(0,3) == \"rfc\" ){\r\n\r\ntr.substr(0,3) == \"tty\" matches all the pseudo terminal devices of the dev folder (ttyxx) where it should only find the tty.something real physical devices (at least on osx). And the enumerateDevices() function doesn't look for tty string but only for cu., so the device list it returns don't match with the setup function.\r\n\r\nThe code should be tr.substr(0,4) == \"tty.\" or only str.substr(0,3) == \"cu.\" like in of V0.60 \r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?p=18237&#p18237","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/133","comments":1,"milestone":null,"number":133,"html_url":"https://github.com/openframeworks/openFrameworks/issues/133","assignee":null,"title":"ofSerial v0.061 bug","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2010-04-26T20:53:45Z","created_at":"2010-03-02T01:09:20Z","state":"closed","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":142831,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=34&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4962'), ('content-length', '32810'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"65895bac8c389fdb8db462c57279b271"'), ('date', 'Tue, 29 May 2012 18:46:56 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2010-06-07T16:06:02Z","body":"need getters to know if a movie is playing, if it paused, started etc\r\n\r\n\t\tbool \t\t\t\tbStarted;\r\n\t\tbool \t\t\t\tbPlaying;\r\n\t\tbool \t\t\t\tbPaused;","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/132","comments":1,"milestone":null,"number":132,"html_url":"https://github.com/openframeworks/openFrameworks/issues/132","assignee":null,"title":"ofVideoPlayer missing getters for important stuff!","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2010-06-07T16:06:02Z","created_at":"2010-02-21T16:10:01Z","state":"closed","user":{"url":"https://api.github.com/users/openframeworks","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"a858611b044a8302ab14cfe752e17369","login":"openframeworks","id":142866},"id":137016,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-06-07T16:05:41Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/131","comments":4,"milestone":null,"number":131,"html_url":"https://github.com/openframeworks/openFrameworks/issues/131","assignee":null,"title":"ofVideoPlayer setLoopState(OF_LOOP_NONE) doesn't work in 0061","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2010-06-07T16:05:41Z","created_at":"2010-02-21T16:08:11Z","state":"closed","user":{"url":"https://api.github.com/users/openframeworks","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"a858611b044a8302ab14cfe752e17369","login":"openframeworks","id":142866},"id":137014,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-02-15T22:54:52Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=9&t=2233&p=17903#p17903","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/130","comments":1,"milestone":null,"number":130,"html_url":"https://github.com/openframeworks/openFrameworks/issues/130","assignee":null,"title":"order of soundstream events clean buffer is wrong","labels":[],"closed_at":"2010-02-15T22:54:52Z","created_at":"2010-02-15T22:48:39Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":133509,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-04-26T22:12:02Z","body":"i tried to start an example app through codeblocks.\n\nit couldn't be started because xterm was missing. this should be added to the install scripts.\n\ni tried this on fedora12 32bit with the master branch from here. i don't have the possibility to test it with other distributions, so i don't know if this problem exists on other install scripts.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/129","comments":2,"milestone":null,"number":129,"html_url":"https://github.com/openframeworks/openFrameworks/issues/129","assignee":null,"title":"Linux Scripts - missing dependencies","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2010-04-26T22:12:02Z","created_at":"2010-02-14T23:40:35Z","state":"closed","user":{"url":"https://api.github.com/users/benben","avatar_url":"https://secure.gravatar.com/avatar/614a4e493d7c353296519bba720e77c5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"614a4e493d7c353296519bba720e77c5","login":"benben","id":124513},"id":132913,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-02-01T20:20:09Z","body":"\r\nin recent workshops, I've noticed that ofEnableAlphaBlending() is confusing for beginners. \r\nam wondering if we should try just enabling alpha blending by default ? advanced users can turn it off for speed, but the plus would be ofSetColor(r,g,b,a) just working by default.....\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/127","comments":3,"milestone":null,"number":127,"html_url":"https://github.com/openframeworks/openFrameworks/issues/127","assignee":null,"title":"enable alpha blending by default?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2010-10-05T13:06:46Z","created_at":"2010-02-13T14:47:07Z","state":"closed","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":132383,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-05-23T22:06:19Z","body":"Useful with the lerp radians / lerp degrees.\nStill not 100% if this is the perfect solution though - should test this and lerpDegrees for correct behavior. \n\n\t//------------------------------\n\t//------------------------------\n\tstatic float ofAngleDifferenceDegrees(float currentAngle, float targetAngle) {\n\t\tfloat diff = targetAngle - currentAngle;\n\t\twhile(diff > 180.0f) diff -= 360.0f;\n\t\twhile(diff < -180.0f) diff += 360.0f;\n\t\treturn diff;\n\t}\n\n\t//------------------------------\n\t//------------------------------\n\tstatic float ofAngleDifferenceRadians(float currentAngle, float targetAngle, float pct) {\n\t\tfloat diff = targetAngle - currentAngle;\n\t\twhile(diff > PI) diff -= TWO_PI;\n\t\twhile(diff < -PI) diff += TWO_PI;\n\t\treturn diff;\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/125","comments":1,"milestone":null,"number":125,"html_url":"https://github.com/openframeworks/openFrameworks/issues/125","assignee":null,"title":"ofAngleDifferenceDegrees / ofAngleDifferenceRadians ?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2010-05-23T22:06:19Z","created_at":"2010-02-13T14:17:13Z","state":"closed","user":{"url":"https://api.github.com/users/openframeworks","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"a858611b044a8302ab14cfe752e17369","login":"openframeworks","id":142866},"id":132374,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-02-13T14:28:34Z","body":"super useful for time based animations","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/123","comments":2,"milestone":null,"number":123,"html_url":"https://github.com/openframeworks/openFrameworks/issues/123","assignee":null,"title":"add a ofGetLastFrameTime function","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"}],"closed_at":"2010-02-13T14:28:34Z","created_at":"2010-02-12T00:50:11Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":131299,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-09-25T18:53:38Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=9&t=3214&p=17767#p17767\r\n\r\nwe can check errno and print an error message in case something goes wrong.\r\n\r\ncheck how to know if it's returning -1 because there's nothing to receive or because there's actually some error in the connection.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/122","comments":1,"milestone":null,"number":122,"html_url":"https://github.com/openframeworks/openFrameworks/issues/122","assignee":null,"title":"check what has been wrong on error network receive, send...","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2010-09-25T18:53:38Z","created_at":"2010-02-11T23:14:05Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":131229,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-04-26T20:42:24Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=9&t=3275","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/120","comments":1,"milestone":null,"number":120,"html_url":"https://github.com/openframeworks/openFrameworks/issues/120","assignee":null,"title":"ofxCvFloatImage *= operator rounding","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2010-04-26T20:42:24Z","created_at":"2010-02-08T14:14:43Z","state":"closed","user":{"url":"https://api.github.com/users/openframeworks","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"a858611b044a8302ab14cfe752e17369","login":"openframeworks","id":142866},"id":128045,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-04-26T20:33:05Z","body":"Lines 72 and 73 of ofxCVContourFinder are\r\n\r\ninputCopy = input;\r\ninputCopy.setROI( input.getROI() );\r\n\r\nbut now in of0061 the '=' copy will fail if the ROIs are not the same. so the lines either need to be swapped or a change in ROI be made explicit (its a performance tweak by the looks of it).\r\n\r\n...i think. ymmv: first oF post so i may have things backwards.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/119","comments":1,"milestone":null,"number":119,"html_url":"https://github.com/openframeworks/openFrameworks/issues/119","assignee":null,"title":"ofxCVContourFinder","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2010-04-26T20:33:05Z","created_at":"2010-02-05T15:23:26Z","state":"closed","user":{"url":"https://api.github.com/users/tobyspark","avatar_url":"https://secure.gravatar.com/avatar/679ba099805997e32f7091b1f67a17ce?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"679ba099805997e32f7091b1f67a17ce","login":"tobyspark","id":197773},"id":126409,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-02-03T08:34:25Z","body":"Hi,\r\n\r\nThe installation script scripts/linux/ubuntu/install_dependencies.sh has a buggy line:\r\n\r\nchown -R $ID:$ID obj ../../lib/linux64/*\r\n\r\nInstead, it must be replaced with the next line:\r\n\r\nchown -R $ID:$ID obj ../../lib/$LIBSPATH/*\r\n\r\nI patched it. You can fetch it from http://github.com/onurgu/openFrameworks/commit/febf059a55dc79f4ca784332d8024b9d3e521db9\r\n\r\nActually I don't know you can merge it easily with the master.\r\n\r\nI must say that I am a newbie to both git and github.\r\n\r\nBy the way, I would be more than happy if you can point me to any text about development practices that you follow while developing openframeworks.\r\n\r\nThanks,\r\nOnur\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/118","comments":1,"milestone":null,"number":118,"html_url":"https://github.com/openframeworks/openFrameworks/issues/118","assignee":null,"title":"Buggy Installation Script - Ubuntu Linux - Incomplete Architecture Detection","labels":[],"closed_at":"2010-02-03T08:34:25Z","created_at":"2010-01-25T14:38:47Z","state":"closed","user":{"url":"https://api.github.com/users/onurgu","avatar_url":"https://secure.gravatar.com/avatar/05184c7ef9e65553ad02716783cc43e8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"05184c7ef9e65553ad02716783cc43e8","login":"onurgu","id":56893},"id":119422,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-01-16T00:27:21Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=6&t=2616&view=unread#unread\r\n\r\ncmd-q/alt-f4 can be surely be disabled by capturing some os interruption\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/117","comments":3,"milestone":null,"number":117,"html_url":"https://github.com/openframeworks/openFrameworks/issues/117","assignee":null,"title":"veto esc key cmd-q/alt-f4","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2011-01-16T00:27:21Z","created_at":"2010-01-14T13:02:33Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":112749,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-04-27T21:38:19Z","body":"\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?p=16844&#p16844","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/116","comments":1,"milestone":null,"number":116,"html_url":"https://github.com/openframeworks/openFrameworks/issues/116","assignee":null,"title":"getStringBoundingBox multiline crash: ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2010-04-27T21:38:19Z","created_at":"2010-01-13T01:50:51Z","state":"closed","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":111750,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-01-15T04:51:12Z","body":"\r\nthere is some good serial code here: \r\n\r\nhttp://zambetti.com/projects/seriality/\r\n\r\nwhich points to simple ways to find the best ports on mac (always a pain at the moment, to find out since they change as you swap devices, are autogenerated, etc):\r\n\r\nvoid Seriality::refreshPorts()\r\n{\r\n\tchar* command = \"ls /dev/tty.*\";\r\n\tchar line[128];\r\n\tFILE* pipe;\r\n\r\n\twhile (!ports_.empty()) {\r\n\t ports_.pop_back();\r\n\t}\r\n\r\n\tif (!(pipe = (FILE*)popen(command,\"r\"))) {\r\n\t return;\r\n\t}\r\n\r\n\twhile (fgets(line, sizeof line, pipe)) {\r\n\t if ('\\n' == line[strlen(line) - 1]) {\r\n\t line[strlen(line) - 1] = '\\0';\r\n\t }\r\n\t if (NULL == strstr(line, \"usbserial\")) {\r\n\t ports_.push_back(line);\r\n\t }\r\n\t else {\r\n\t ports_.insert(ports_.begin(), line);\r\n\t }\r\n\t}\r\n\r\n\tpclose(pipe);\r\n}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/114","comments":1,"milestone":null,"number":114,"html_url":"https://github.com/openframeworks/openFrameworks/issues/114","assignee":null,"title":"ofSerial - find mac ports more automatically","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2011-01-15T04:51:12Z","created_at":"2010-01-10T02:28:19Z","state":"closed","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":109929,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-04-01T06:41:18Z","body":"\r\nI think most ofxFboTextures floating around will break because of: \r\n\r\n glGenTextures(1, (GLuint *)texData.textureName); // could be more then one, but for now, just one\r\n glBindTexture(texData.textureTarget, (GLuint)texData.textureName[0]);\r\n\r\nneed to be written with \"textureID\"... we should be sure to update ofxFboTexture ASAP. \r\n\r\n(I'm working on FBO and shader stuff now, will open up a branch soon)\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/113","comments":2,"milestone":null,"number":113,"html_url":"https://github.com/openframeworks/openFrameworks/issues/113","assignee":null,"title":"the removal of the textureData.textureName breaks ofxFBOtexture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2011-01-16T00:03:54Z","created_at":"2010-01-06T21:11:14Z","state":"closed","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":107934,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-04-26T19:01:53Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?p=16600&#p16600","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/112","comments":1,"milestone":null,"number":112,"html_url":"https://github.com/openframeworks/openFrameworks/issues/112","assignee":null,"title":"absolute paths broken in 0061?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2010-04-26T19:01:53Z","created_at":"2010-01-06T11:07:25Z","state":"closed","user":{"url":"https://api.github.com/users/openframeworks","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"a858611b044a8302ab14cfe752e17369","login":"openframeworks","id":142866},"id":107449,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-04-26T20:27:25Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=18&t=3093&view=unread#unread","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/111","comments":1,"milestone":null,"number":111,"html_url":"https://github.com/openframeworks/openFrameworks/issues/111","assignee":null,"title":"problems with gcc 4.4 on windows","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2010-04-26T20:27:25Z","created_at":"2010-01-06T00:14:22Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":107250,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-04-26T20:27:25Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?p=16600&#p16600","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/110","comments":1,"milestone":null,"number":110,"html_url":"https://github.com/openframeworks/openFrameworks/issues/110","assignee":null,"title":"ofToDataPath absolute paths on osx seem broken","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2010-04-26T20:27:25Z","created_at":"2010-01-05T23:34:48Z","state":"closed","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":107220,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-04-26T20:27:25Z","body":"missing the new additions of ofxQuarternion and ofxMatrix4x4\r\n\r\n\t\r\n\t\t../../../addons/ofxVectorMath/src/ofxMatrix3x3.h\r\n\t\t../../../addons/ofxVectorMath/src/ofxVec2f.h\r\n\t\t../../../addons/ofxVectorMath/src/ofxVec3f.h\r\n\t\t../../../addons/ofxVectorMath/src/ofxVec4f.h\r\n\t\t../../../addons/ofxVectorMath/src/ofxMatrix3x3.cpp\r\n\t\t../../../addons/ofxVectorMath/src/ofxVectorMath.h\r\n\t\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/109","comments":1,"milestone":null,"number":109,"html_url":"https://github.com/openframeworks/openFrameworks/issues/109","assignee":null,"title":"ofxVectorMath - install.xml is out of date","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2010-04-26T20:27:25Z","created_at":"2010-01-04T12:06:10Z","state":"closed","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":106072,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-06-07T15:41:27Z","body":"also, maybe we should add curve tightness ala p5?\n\n\tofPoint bezierPoint( ofPoint a, ofPoint b, ofPoint c, ofPoint d, float t){\n\t\tfloat tp = 1.0 - t;\n\t\treturn a*tp*tp*tp + b*3*t*tp*tp + c*3*t*t*tp + d*t*t*t;\n\t}\n\n\tofPoint curvePoint( ofPoint a, ofPoint b, ofPoint c, ofPoint d, float t){\n\t\t\n\t\tofPoint pt;\n\t\tfloat t2 = t * t;\n\t\tfloat t3 = t2 * t;\n\t\tpt.x = 0.5f * ( ( 2.0f * b.x ) +\n\t\t\t\t\t ( -a.x + c.x ) * t +\n\t\t\t\t\t ( 2.0f * a.x - 5.0f * b.x + 4 * c.x - d.x ) * t2 +\n\t\t\t\t\t ( -a.x + 3.0f * b.x - 3.0f * c.x + d.x ) * t3 );\n\t\tpt.y = 0.5f * ( ( 2.0f * b.y ) +\n\t\t\t\t\t ( -a.y + c.y ) * t +\n\t\t\t\t\t ( 2.0f * a.y - 5.0f * b.y + 4 * c.y - d.y ) * t2 +\n\t\t\t\t\t ( -a.y + 3.0f * b.y - 3.0f * c.y + d.y ) * t3 );\n\t\treturn pt;\n\t}\n\n\tofPoint bezierTangent( ofPoint a, ofPoint b, ofPoint c, ofPoint d, float t){\n\t\treturn (d-a-c*3+b*3)*(t*t)*3 + (a+c-b*2)*t*6 - a*3+b*3;\n\t}\n\n\tofPoint curveTangent( ofPoint a, ofPoint b, ofPoint c, ofPoint d, float t){\n\t\tofPoint v0 = ( c - a )*0.5;\n\t\tofPoint v1 = ( d - b )*0.5;\n\t\treturn ( b*2 -c*2 + v0 + v1)*(3*t*t) + ( c*3 - b*3 - v1 - v0*2 )*( 2*t) + v0;\n\t\t\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/108","comments":1,"milestone":null,"number":108,"html_url":"https://github.com/openframeworks/openFrameworks/issues/108","assignee":null,"title":"curvePoint, bezierPoint, curveTangent, bezierTangent...","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2010-06-07T15:41:27Z","created_at":"2010-01-01T23:47:41Z","state":"closed","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":105124,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-06-07T15:40:07Z","body":"more poly utils : )\n\nit's indeed LineSegmentCross and LineSegmentIntersection:\n\nbool LineCross(ofPoint Line1Start, ofPoint Line1End, ofPoint Line2Start, ofPoint Line2End){\n ofPoint diffLA, diffLB;\n float compareA = 0, compareB = 0;\n bool result = false;\n diffLA = Line1End - Line1Start;\n diffLB = Line2End - Line2Start;\n compareA = diffLA.x*Line1Start.y - diffLA.y*Line1Start.x;\n compareB = diffLB.x*Line2Start.y - diffLB.y*Line2Start.x;\n if (\n \t(\n \t\t( ( diffLA.x*Line2Start.y - diffLA.y*Line2Start.x ) < compareA ) xor\n \t\t( ( diffLA.x*Line2End.y - diffLA.y*Line2End.x ) < compareA )\n \t) and\n \t(\n \t\t( ( diffLB.x*Line1Start.y - diffLB.y*Line1Start.x ) < compareB ) xor\n \t\t( ( diffLB.x*Line1End.y - diffLB.y*Line1End.x) < compareB )\n \t)\n ) result = true;\n\n return result;\n}\n\nofPoint LineIntersection(ofPoint Line1Start, ofPoint Line1End, ofPoint Line2Start, ofPoint Line2End){\n\n float LDetLineA, LDetLineB, LDetDivInv;\n ofPoint LDiffLA, LDiffLB, Result;\n\n LDetLineA = Line1Start.x*Line1End.y - Line1Start.y*Line1End.x;\n LDetLineB = Line2Start.x*Line2End.y - Line2Start.y*Line2End.x;\n LDiffLA = Line1Start - Line1End;\n LDiffLB = Line2Start - Line2End;\n LDetDivInv = 1 / ((LDiffLA.x*LDiffLB.y) - (LDiffLA.y*LDiffLB.x));\n Result.x = ((LDetLineA*LDiffLB.x) - (LDiffLA.x*LDetLineB)) * LDetDivInv ;\n Result.y = ((LDetLineA*LDiffLB.y) - (LDiffLA.y*LDetLineB)) * LDetDivInv ;\n\n return Result;\n}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/106","comments":1,"milestone":null,"number":106,"html_url":"https://github.com/openframeworks/openFrameworks/issues/106","assignee":null,"title":"ofLineCross & ofLineIntersection","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2010-06-07T15:40:07Z","created_at":"2009-12-29T11:33:01Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":103753,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-06-07T15:39:32Z","body":"Finally - one that works! Wish we had got this into 0061\n\nCould be more efficient maybe? - replace the while by an if and then calculate the number of rotations needed to wind/unwind. \n\n\tfloat ofLerpDegrees(float currentAngle, float targetAngle, float pct) {\n\t\twhile(targetAngle - currentAngle > 180.0f) targetAngle -= 360.0f;\n\t\twhile(targetAngle - currentAngle < -180.0f) targetAngle += 360.0f;\n\t\t\n\t\treturn currentAngle + (targetAngle - currentAngle) * pct;\n\t}\n\n\tfloat ofLerpRadians(float currentAngle, float targetAngle, float pct) {\n\t\twhile(targetAngle - currentAngle > PI) targetAngle -= TWO_PI;\n\t\twhile(targetAngle - currentAngle < -PI) targetAngle += TWO_PI;\n\t\t\n\t\treturn currentAngle + (targetAngle - currentAngle) * pct;\n\t}\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/105","comments":3,"milestone":null,"number":105,"html_url":"https://github.com/openframeworks/openFrameworks/issues/105","assignee":null,"title":"ofLerpDegrees, ofLerpRadians","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2010-06-07T15:39:32Z","created_at":"2009-12-28T15:13:47Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":103333,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-06-07T15:39:15Z","body":"\t//------------------------------\n\tbool InsidePolygon( vector &polygon, ofPoint &p){\n\t int counter = 0;\n\t int i;\n\t double xinters;\n\t ofPoint p1,p2;\n\t \n\t int N = polygon.size();\n\n\t p1 = polygon[0];\n\t for (i=1;i<=N;i++) {\n\t\tp2 = polygon[i % N];\n\t\tif (p.y > MIN(p1.y,p2.y)) {\n\t\t if (p.y <= MAX(p1.y,p2.y)) {\n\t\t\tif (p.x <= MAX(p1.x,p2.x)) {\n\t\t\t if (p1.y != p2.y) {\n\t\t\t\txinters = (p.y-p1.y)*(p2.x-p1.x)/(p2.y-p1.y)+p1.x;\n\t\t\t\tif (p1.x == p2.x || p.x <= xinters)\n\t\t\t\t counter++;\n\t\t\t }\n\t\t\t}\n\t\t }\n\t\t}\n\t\tp1 = p2;\n\t }\n\n\t if (counter % 2 == 0) return false;\n\t else return true;\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/104","comments":1,"milestone":null,"number":104,"html_url":"https://github.com/openframeworks/openFrameworks/issues/104","assignee":null,"title":"ofInsidePolygon","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2010-06-07T15:39:15Z","created_at":"2009-12-28T14:58:43Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":103328,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-06-07T15:38:53Z","body":"bool InsideRect(ofRectangle &rect, ofPoint &p){\r\n\tif( p.x < rect.x || p.y < rect.y || p.x > rect.x + rect.width || p.y > rect.y + rect.height ){\r\n\t\treturn false;\r\n\t}\r\n\treturn true;\r\n}\r\n\r\nalternatively could be a method of ofRectangle maybe?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/103","comments":1,"milestone":null,"number":103,"html_url":"https://github.com/openframeworks/openFrameworks/issues/103","assignee":null,"title":"ofInsideRect","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":"2010-06-07T15:38:53Z","created_at":"2009-12-28T14:58:11Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":103327,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-27T16:45:56Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=8&t=3042&p=16425#p16425","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/102","comments":1,"milestone":null,"number":102,"html_url":"https://github.com/openframeworks/openFrameworks/issues/102","assignee":null,"title":"problem with ofArduino and vs2008","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"}],"closed_at":"2009-12-27T16:45:56Z","created_at":"2009-12-27T16:45:02Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":103021,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=35&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4961'), ('content-length', '24090'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"df0e51a467dbfca0e3fc6a0c3a781c4d"'), ('date', 'Tue, 29 May 2012 18:46:57 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2009-12-27T16:49:15Z","body":"this:\r\nfloat scalef = 1.0/255.0; \r\ncvMul( cvImage, mom.getCvImage(), cvImageTemp, scalef );\r\n\r\nseems to make the operator* behave like a division. ie when multiplying by a image with every pixel to 255 the result is the same as the original or when multiplying by everything to 25 the result is 10% of the original luminace.\r\n\r\nthis:\r\n\r\ncvMul( cvImage, mom.getCvImage(), cvImageTemp, 1);\r\n\r\nmakes it behave as a pixel by pixel multiplication","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/101","comments":1,"milestone":null,"number":101,"html_url":"https://github.com/openframeworks/openFrameworks/issues/101","assignee":null,"title":"ofxCvImage operator* seems to behave like division","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"}],"closed_at":"2009-12-27T16:49:15Z","created_at":"2009-12-23T22:17:30Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":102062,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-21T21:34:00Z","body":"at the moment, it's listed as: \r\n\r\nquicktime/CIncludes\r\n\r\nneeds to be changed since the quicktime folder structure has been changed. (at the moment, the lib doesn't compile because it can't find QTML.h, etc). \r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/100","comments":0,"milestone":null,"number":100,"html_url":"https://github.com/openframeworks/openFrameworks/issues/100","assignee":null,"title":"visual studio compiled lib has old quicktime include path","labels":[],"closed_at":"2009-12-21T21:34:00Z","created_at":"2009-12-21T18:22:06Z","state":"closed","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":100941,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-21T21:28:08Z","body":"I needed to add in a command line switch \n\n--target=\"release\"\n\nat least to the compiledLib to get everything to compile fine via the script as only the debug was compiled...\n\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/99","comments":0,"milestone":null,"number":99,"html_url":"https://github.com/openframeworks/openFrameworks/issues/99","assignee":null,"title":"codeblocks build all script needs targets","labels":[],"closed_at":"2009-12-21T21:28:08Z","created_at":"2009-12-21T16:30:14Z","state":"closed","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":100878,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-04-26T21:03:10Z","body":"\r\nxcode seems unhappy with the += with colorImages, but it is with grayscale for: \r\n\r\nimageA += imageB\r\n\r\nerror: no match for 'operator+=' in '((testApp*)this)->testApp::imageA += ((testApp*)this)->testApp::imageB\r\n\r\nseems to be fixed when I do: \r\n\r\n(ofxCvImage&)imageA += (ofxCvImage&)imageB;","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/98","comments":2,"milestone":null,"number":98,"html_url":"https://github.com/openframeworks/openFrameworks/issues/98","assignee":null,"title":"ofxOpenCv - colorImage += colorImage seems to be a problem","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2010-04-26T21:03:10Z","created_at":"2009-12-20T00:06:23Z","state":"closed","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":100255,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-14T12:49:00Z","body":"if the zips are already there it adds to them. \r\nshould do an rm for the zips before creating the archive. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/97","comments":1,"milestone":null,"number":97,"html_url":"https://github.com/openframeworks/openFrameworks/issues/97","assignee":null,"title":"create_package not zipping folders properly","labels":[],"closed_at":"2009-12-14T12:49:00Z","created_at":"2009-12-14T10:11:57Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":97080,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-27T16:44:04Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/96","comments":2,"milestone":null,"number":96,"html_url":"https://github.com/openframeworks/openFrameworks/issues/96","assignee":null,"title":"add readme files","labels":[],"closed_at":"2009-12-27T16:44:04Z","created_at":"2009-12-11T16:00:26Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":95944,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-11T14:30:22Z","body":"of_preRelease_v0061_osx_FAT.zip => unzips to of_preRelease_v0061_osx","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/95","comments":1,"milestone":null,"number":95,"html_url":"https://github.com/openframeworks/openFrameworks/issues/95","assignee":null,"title":"create_package.sh - FAT folder unzipping to folder name without FAT ","labels":[],"closed_at":"2009-12-11T14:30:22Z","created_at":"2009-12-11T13:00:44Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":95857,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-11T15:00:13Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/94","comments":3,"milestone":null,"number":94,"html_url":"https://github.com/openframeworks/openFrameworks/issues/94","assignee":null,"title":"create_package.sh - remove other platform libs and examples from addons/ folder","labels":[],"closed_at":"2009-12-11T15:00:13Z","created_at":"2009-12-11T12:58:51Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":95855,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-11T14:20:23Z","body":"currently we have both and it is confusing.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/93","comments":0,"milestone":null,"number":93,"html_url":"https://github.com/openframeworks/openFrameworks/issues/93","assignee":null,"title":"Pick win_vs2008 or vs2008!","labels":[],"closed_at":"2009-12-11T14:20:23Z","created_at":"2009-12-11T12:58:00Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":95853,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-11T14:20:16Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/92","comments":0,"milestone":null,"number":92,"html_url":"https://github.com/openframeworks/openFrameworks/issues/92","assignee":null,"title":"create_package.sh leaving win_vs2008 libs in osx folder","labels":[],"closed_at":"2009-12-11T14:20:16Z","created_at":"2009-12-11T12:57:21Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":95852,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-09T13:07:05Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/90","comments":0,"milestone":null,"number":90,"html_url":"https://github.com/openframeworks/openFrameworks/issues/90","assignee":null,"title":"3DModelLoaderExample win_cb has ofxDirList instead of ofx3DModelLoader","labels":[],"closed_at":"2009-12-09T13:07:05Z","created_at":"2009-12-09T01:36:33Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":94555,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-10-17T09:18:20Z","body":"loader says loaded but model contains no meshes","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/89","comments":5,"milestone":null,"number":89,"html_url":"https://github.com/openframeworks/openFrameworks/issues/89","assignee":null,"title":"ofx3dModelLoader not working on ppc macs. ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2011-10-17T09:18:20Z","created_at":"2009-12-07T14:48:34Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":93555,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-10T11:19:53Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/88","comments":1,"milestone":null,"number":88,"html_url":"https://github.com/openframeworks/openFrameworks/issues/88","assignee":null,"title":"scripts/macosx build and run script for addons has addonExamples instead of addonsExamples","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"}],"closed_at":"2009-12-10T11:19:53Z","created_at":"2009-12-07T14:26:34Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":93543,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-08T16:47:20Z","body":"\r\n\r\nthey all need ofxThread added as in 0.06 to compile","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/87","comments":1,"milestone":null,"number":87,"html_url":"https://github.com/openframeworks/openFrameworks/issues/87","assignee":null,"title":"windows codeblocks addonsExamples/network * need ofxThread","labels":[],"closed_at":"2009-12-08T16:47:20Z","created_at":"2009-12-07T10:47:33Z","state":"closed","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":93458,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-07T14:08:24Z","body":"AdvancedEventsExample currently works - so use that as a base. \r\ntheo do this no one else. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/86","comments":1,"milestone":null,"number":86,"html_url":"https://github.com/openframeworks/openFrameworks/issues/86","assignee":null,"title":"xcode project files need freetype.a re-added ( for PPC machines ) ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"}],"closed_at":"2009-12-07T14:08:24Z","created_at":"2009-12-07T03:38:37Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":93357,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-07T10:35:18Z","body":"of_prerelease_v0065_win_vs2008\\addons\\ofxvectorgraphics\\libs\\creeps.cpp(595) : error C2668: 'ns_creeps::sqrt' : ambiguous call to overloaded function\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/85","comments":1,"milestone":null,"number":85,"html_url":"https://github.com/openframeworks/openFrameworks/issues/85","assignee":null,"title":"creEps sqrt error","labels":[],"closed_at":"2009-12-07T10:35:18Z","created_at":"2009-12-07T03:15:06Z","state":"closed","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":93353,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-08T18:21:09Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/84","comments":1,"milestone":null,"number":84,"html_url":"https://github.com/openframeworks/openFrameworks/issues/84","assignee":null,"title":"linux makefiles are broken","labels":[],"closed_at":"2009-12-08T18:21:09Z","created_at":"2009-12-07T02:52:58Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":93351,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T15:14:45Z","body":"these are warnings I'm seeing in compiling 0.065\n\nneed a newline in the 3d model load code somewhere. \n..\\..\\..\\addons\\ofx3DModelLoader\\src\\ofx3DBaseLoader.h|16|warning: no newline at end of file\n\naddons\\ofxOsc\\src\\ofxOscMessage.cpp|92|warning: converting to `int32_t' from `float'|\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/83","comments":10,"milestone":null,"number":83,"html_url":"https://github.com/openframeworks/openFrameworks/issues/83","assignee":null,"title":"small warnings","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2011-12-02T15:14:45Z","created_at":"2009-12-07T02:34:57Z","state":"closed","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":93347,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-09T01:45:20Z","body":"(win cb):\n\n-- libs\\openFrameworksCompiled\\project should have only win_cb\n\n-- scripts should have just win_cb (and we should make it work with win_cb)\n\n-- remove cb_build_runner.sh script from all examples (this is for linux)\n\n-- remove all .gitignore files... (inside empty data folders)\n\n-- remove linux specific workspace files \n\n-- remove _win_cb from name and inside of workspace files\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/82","comments":4,"milestone":null,"number":82,"html_url":"https://github.com/openframeworks/openFrameworks/issues/82","assignee":null,"title":"changes to the packaging script","labels":[],"closed_at":"2009-12-09T01:45:20Z","created_at":"2009-12-07T02:31:35Z","state":"closed","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":93346,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-07T02:07:55Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/81","comments":1,"milestone":null,"number":81,"html_url":"https://github.com/openframeworks/openFrameworks/issues/81","assignee":null,"title":"xcode projects should be renamed to the folder name. ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"}],"closed_at":"2009-12-07T02:07:55Z","created_at":"2009-12-07T02:06:57Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":93338,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-07T02:13:59Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/80","comments":1,"milestone":null,"number":80,"html_url":"https://github.com/openframeworks/openFrameworks/issues/80","assignee":null,"title":"ofxXmlSettings has a printf(tag.c_str()); xcode complains","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"}],"closed_at":"2009-12-07T02:13:59Z","created_at":"2009-12-07T01:35:24Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":93332,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-07T02:09:18Z","body":"the project files still contain links to these files. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/79","comments":2,"milestone":null,"number":79,"html_url":"https://github.com/openframeworks/openFrameworks/issues/79","assignee":null,"title":"remove ofStandardFirmata files from all projects.","labels":[],"closed_at":"2009-12-07T02:09:18Z","created_at":"2009-12-06T20:44:50Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":93192,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-06T20:50:25Z","body":"\r\nfix this with single buffering on win32 and some smart window resized code.... ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/78","comments":1,"milestone":null,"number":78,"html_url":"https://github.com/openframeworks/openFrameworks/issues/78","assignee":null,"title":"ofSetBackgroundAuto(false) on pc is bad news ","labels":[],"closed_at":"2009-12-06T20:50:25Z","created_at":"2009-12-06T20:42:15Z","state":"closed","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":93190,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-07T00:20:50Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/77","comments":2,"milestone":null,"number":77,"html_url":"https://github.com/openframeworks/openFrameworks/issues/77","assignee":null,"title":"remove copy files phase for info.plist in xcode","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"}],"closed_at":"2009-12-07T00:20:50Z","created_at":"2009-12-06T20:37:50Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":93185,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-06T20:40:08Z","body":"this is so cocoa apps and other apps that have BOOL defines don't need FreeImage hacked","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/76","comments":1,"milestone":null,"number":76,"html_url":"https://github.com/openframeworks/openFrameworks/issues/76","assignee":null,"title":"FreeImage.h -> move BOOL typedefs etc to #defines and do #undef at the end","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"}],"closed_at":"2009-12-06T20:40:08Z","created_at":"2009-12-06T20:21:25Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":93179,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=36&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4960'), ('content-length', '23511'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"dd46a4e94f2297cba6d3d87f894c66fa"'), ('date', 'Tue, 29 May 2012 18:46:57 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2009-12-06T19:12:10Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/75","comments":1,"milestone":null,"number":75,"html_url":"https://github.com/openframeworks/openFrameworks/issues/75","assignee":null,"title":"close / destroy window on win32 needs fixing...","labels":[],"closed_at":"2009-12-06T19:12:10Z","created_at":"2009-12-06T19:08:24Z","state":"closed","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":93147,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-07T00:21:04Z","body":"in xcode if you have libSomething.a and xcode finds a system version of the lib it will include the system version which causes mad problems if you try and give your app to someone. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/74","comments":1,"milestone":null,"number":74,"html_url":"https://github.com/openframeworks/openFrameworks/issues/74","assignee":null,"title":"os x - change all libSomething.a to be something.a ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"}],"closed_at":"2009-12-07T00:21:04Z","created_at":"2009-12-06T16:47:57Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":93093,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-06T16:46:03Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/73","comments":2,"milestone":null,"number":73,"html_url":"https://github.com/openframeworks/openFrameworks/issues/73","assignee":null,"title":"CreEPS 2.0 ( with MIT ) ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"}],"closed_at":"2009-12-06T16:46:03Z","created_at":"2009-12-06T16:42:04Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":93092,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-06T16:46:19Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/72","comments":1,"milestone":null,"number":72,"html_url":"https://github.com/openframeworks/openFrameworks/issues/72","assignee":null,"title":"Update to CreEPS 2.0 - has MIT license and new stuff!","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"}],"closed_at":"2009-12-06T16:46:19Z","created_at":"2009-12-06T16:22:45Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":93088,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-06T15:54:47Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/71","comments":1,"milestone":null,"number":71,"html_url":"https://github.com/openframeworks/openFrameworks/issues/71","assignee":null,"title":"remove ofV4lUtils ","labels":[],"closed_at":"2009-12-06T15:54:47Z","created_at":"2009-12-06T15:30:57Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":93077,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-06T18:34:22Z","body":"feel like the typedef should be in ofxVec3f / 2f etc and have the ofxPoint headers just have the warnings. right now if we remove the ofxPoint files we lose the typedef ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/70","comments":2,"milestone":null,"number":70,"html_url":"https://github.com/openframeworks/openFrameworks/issues/70","assignee":null,"title":"look at ofxPoint warnings - super annoying","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"}],"closed_at":"2009-12-06T18:34:22Z","created_at":"2009-12-06T14:40:08Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":93071,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-06T18:59:57Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/69","comments":2,"milestone":null,"number":69,"html_url":"https://github.com/openframeworks/openFrameworks/issues/69","assignee":null,"title":"remove ofStandardFirmata stub files","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"}],"closed_at":"2009-12-06T18:59:57Z","created_at":"2009-12-06T14:37:24Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":93070,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-06T14:52:40Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/68","comments":1,"milestone":null,"number":68,"html_url":"https://github.com/openframeworks/openFrameworks/issues/68","assignee":null,"title":"change linux videograbber to gstreamer","labels":[],"closed_at":"2009-12-06T14:52:40Z","created_at":"2009-12-06T14:32:58Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":93069,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-06T18:58:25Z","body":"is this meant to be there?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/67","comments":1,"milestone":null,"number":67,"html_url":"https://github.com/openframeworks/openFrameworks/issues/67","assignee":null,"title":"ofxOpenCv addon example app has a printf with ofGetFrameRate at end of update","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"}],"closed_at":"2009-12-06T18:58:25Z","created_at":"2009-12-06T14:16:20Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":93066,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-06T18:01:03Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/66","comments":1,"milestone":null,"number":66,"html_url":"https://github.com/openframeworks/openFrameworks/issues/66","assignee":null,"title":"ofAppGlutWindow - frameRate set to 0.0 in startup should be set to 60.0","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"}],"closed_at":"2009-12-06T18:01:03Z","created_at":"2009-12-06T13:16:10Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":93060,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-06T11:09:30Z","body":"this is a request from kyle on the forums....\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/65","comments":0,"milestone":null,"number":65,"html_url":"https://github.com/openframeworks/openFrameworks/issues/65","assignee":null,"title":"ofxOpenCv - convertToPlanarImage(...) for one channel (ie, grabbing just sautration)","labels":[],"closed_at":"2009-12-06T11:09:30Z","created_at":"2009-12-06T11:05:43Z","state":"closed","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":93046,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-05T21:36:03Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/64","comments":1,"milestone":null,"number":64,"html_url":"https://github.com/openframeworks/openFrameworks/issues/64","assignee":null,"title":"fix ofImage for latest freeImage ( flip bug in early freeimage library )","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"}],"closed_at":"2009-12-05T21:36:03Z","created_at":"2009-12-05T21:27:12Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":92827,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-05T19:17:36Z","body":"no need for convert pixels for intel machines - should be a LOT faster. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/63","comments":1,"milestone":null,"number":63,"html_url":"https://github.com/openframeworks/openFrameworks/issues/63","assignee":null,"title":"ofVideoPlayer and ofVideoGrabber on OS X Intel not using k24RGBPixelFormat","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"}],"closed_at":"2009-12-05T19:17:36Z","created_at":"2009-12-05T16:48:19Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":92724,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-05T19:37:54Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?p=14615#p14615","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/62","comments":1,"milestone":null,"number":62,"html_url":"https://github.com/openframeworks/openFrameworks/issues/62","assignee":null,"title":"update the quicktime settings dialog so that PS3 eye panel shows up. ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"}],"closed_at":"2009-12-05T19:37:54Z","created_at":"2009-12-05T16:47:17Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":92722,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-05T20:57:50Z","body":"videoInput has this. \r\nQT needs SGSetFrameRate \r\nGstreamer has this. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/61","comments":1,"milestone":null,"number":61,"html_url":"https://github.com/openframeworks/openFrameworks/issues/61","assignee":null,"title":"add setFrameRate for ofVideoGrabber","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"}],"closed_at":"2009-12-05T20:57:50Z","created_at":"2009-12-05T16:45:44Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":92721,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-07T02:08:44Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/60","comments":2,"milestone":null,"number":60,"html_url":"https://github.com/openframeworks/openFrameworks/issues/60","assignee":null,"title":"check projects for references to .cpp of inlined ofxVectorMath - breaks on CB win32","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"}],"closed_at":"2009-12-07T02:08:44Z","created_at":"2009-12-05T14:57:17Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":92702,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-05T14:09:50Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/59","comments":0,"milestone":null,"number":59,"html_url":"https://github.com/openframeworks/openFrameworks/issues/59","assignee":null,"title":"ofxOpenCv - add brightness contrast to grayscale image","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"}],"closed_at":"2009-12-05T14:09:50Z","created_at":"2009-12-05T14:00:07Z","state":"closed","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":92680,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-07T02:17:52Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=4&t=2599&hilit=snow+leopard\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=4&t=2749&p=14925","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/58","comments":1,"milestone":null,"number":58,"html_url":"https://github.com/openframeworks/openFrameworks/issues/58","assignee":null,"title":"snow leopard fixes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"}],"closed_at":"2009-12-07T02:17:52Z","created_at":"2009-12-04T19:40:06Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":92434,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-05T14:59:12Z","body":"internally use void * ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/57","comments":1,"milestone":null,"number":57,"html_url":"https://github.com/openframeworks/openFrameworks/issues/57","assignee":null,"title":"ofTexture float *, char *, short * ","labels":[],"closed_at":"2009-12-05T14:59:12Z","created_at":"2009-12-04T19:19:36Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":92426,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-05T15:23:15Z","body":"just so you can access getTexture getPixels... for images, cvImages, videos... from at the same time","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/56","comments":0,"milestone":null,"number":56,"html_url":"https://github.com/openframeworks/openFrameworks/issues/56","assignee":null,"title":"ofBaseImage so ofBaseVideo and images have the same inheritance base","labels":[],"closed_at":"2009-12-05T15:23:15Z","created_at":"2009-12-04T19:13:45Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":92423,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-07T01:55:14Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/55","comments":1,"milestone":null,"number":55,"html_url":"https://github.com/openframeworks/openFrameworks/issues/55","assignee":null,"title":"max optimization settings - check xcode","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"}],"closed_at":"2009-12-07T01:55:14Z","created_at":"2009-12-04T19:08:47Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":92420,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-05T17:19:35Z","body":"\r\n\r\nas they are so similar, this would make sense. Also, we should test it versus new baud rate and any other changes that have been made to firmata recently. \r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/54","comments":0,"milestone":null,"number":54,"html_url":"https://github.com/openframeworks/openFrameworks/issues/54","assignee":null,"title":"combine ofStdFirmata and ofArduino","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"}],"closed_at":"2009-12-05T17:19:35Z","created_at":"2009-12-04T18:48:58Z","state":"closed","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":92409,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-05T21:14:57Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/53","comments":1,"milestone":null,"number":53,"html_url":"https://github.com/openframeworks/openFrameworks/issues/53","assignee":null,"title":"ofVideoPlayer - crash with setSpeed / setPos before play()","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"}],"closed_at":"2009-12-05T21:14:57Z","created_at":"2009-12-04T18:43:09Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":92405,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-05T19:42:35Z","body":"see: http://github.com/memo/openFrameworks/commit/d8a29d400bdf61cfcc45056a9eb8665fd92d7b09","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/52","comments":2,"milestone":null,"number":52,"html_url":"https://github.com/openframeworks/openFrameworks/issues/52","assignee":null,"title":"memo's texture stuff - ofSetTextureWrap & ofSetMinMagFilters","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"}],"closed_at":"2009-12-05T19:42:35Z","created_at":"2009-12-04T18:31:17Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":92389,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-05T13:25:18Z","body":"\r\nwrappers that are ofTexture type independent for glTexCoord: \r\n\r\nhttp://www.opengl.org/sdk/docs/man/xhtml/glTexCoord.xml\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/51","comments":1,"milestone":null,"number":51,"html_url":"https://github.com/openframeworks/openFrameworks/issues/51","assignee":null,"title":"ofTexture -- texPoint / texPercent","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"}],"closed_at":"2009-12-05T13:25:18Z","created_at":"2009-12-04T18:30:46Z","state":"closed","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":92387,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=37&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4959'), ('content-length', '25398'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"28b7b469c9258bf15e31c49e3f825463"'), ('date', 'Tue, 29 May 2012 18:46:58 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-05-21T19:17:44Z","body":"\r\n\r\nfor example, if we have a grayscale image and convert to color or colorAlpha, we need the texture to support additional info internally (ie, be an RGB or RGBA texture), but it's been allocated as grayscale. think this isn't a huge issue -- You don't see this issue until you start altering pixels and not seeing changes within the textured representation (ie, there's alot of steps to see the problem) -- but it's worth looking into.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/50","comments":1,"milestone":null,"number":50,"html_url":"https://github.com/openframeworks/openFrameworks/issues/50","assignee":null,"title":"ofImage::setImageType doesn't alter the internal ofTexture if we need to","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"}],"closed_at":"2009-12-05T20:23:32Z","created_at":"2009-12-04T12:49:40Z","state":"closed","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":92253,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-05T13:52:36Z","body":"// the random () calls are based on misconceptions described here:\r\n// http://www.azillionmonkeys.com/qed/random.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/49","comments":1,"milestone":null,"number":49,"html_url":"https://github.com/openframeworks/openFrameworks/issues/49","assignee":null,"title":"ofRandom uses flawed rand()% approach","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"}],"closed_at":"2009-12-05T13:52:36Z","created_at":"2009-11-09T11:32:49Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":80573,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-05T14:09:50Z","body":"\r\nseems like lines 116, 117 are kind of wrong to me: \r\n\r\nis \r\n\r\nblobs[i].centroid.x = (int) (myMoments->m10 / myMoments->m00);\r\nblobs[i].centroid.y = (int) (myMoments->m01 / myMoments->m00);\r\n\r\nshould be : \r\n\r\nblobs[i].centroid.x = (myMoments->m10 / myMoments->m00);\r\nblobs[i].centroid.y = (myMoments->m01 / myMoments->m00);\r\n\r\n(I am seeing small objects with \"jiggly\" centroids because of this). Feels like it should be up the end used to cast as int as needed, but the centroid is likely a non-integer.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/48","comments":0,"milestone":null,"number":48,"html_url":"https://github.com/openframeworks/openFrameworks/issues/48","assignee":null,"title":"ofxOpenCv - ofxCvContourFinder converts centroid to ints","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"}],"closed_at":"2009-12-05T14:09:50Z","created_at":"2009-11-01T17:40:41Z","state":"closed","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":77053,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-05T17:33:49Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/47","comments":0,"milestone":null,"number":47,"html_url":"https://github.com/openframeworks/openFrameworks/issues/47","assignee":null,"title":"ofBaseHasTexture should have ofSetUseTexture ( for enable / disable texture )","labels":[],"closed_at":"2009-12-05T17:33:49Z","created_at":"2009-11-01T17:40:11Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":77052,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-05T13:09:50Z","body":"give the option to clamp the output value of ofMap.\r\nofMap(float in, float inMin, float inMax, float outMin, float outMax, bool clamp = false);","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/46","comments":1,"milestone":null,"number":46,"html_url":"https://github.com/openframeworks/openFrameworks/issues/46","assignee":null,"title":"ofMap - include a clamp = false argument","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"}],"closed_at":"2009-12-05T13:09:50Z","created_at":"2009-10-31T10:35:11Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":76700,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-07T01:55:14Z","body":"Add another configuration so you can compile an optimized app that isn't universal (twice as quick and half the size). \r\n\r\nSo if you have an intel laptop Release would compile just for Intel and Release Universal would be both intel and ppc.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/45","comments":2,"milestone":null,"number":45,"html_url":"https://github.com/openframeworks/openFrameworks/issues/45","assignee":null,"title":"Xcode - Debug, Release, Release Universal?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"}],"closed_at":"2009-12-07T01:55:14Z","created_at":"2009-10-29T01:11:51Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":75416,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-05T12:27:35Z","body":"when doing ofPushStyle numCiclePts is being stored in currentStyle but not used to draw circles. also when doing ofPopStyle it should check numCirclePts and call ofSetCicleResolution if it has changed","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/44","comments":1,"milestone":null,"number":44,"html_url":"https://github.com/openframeworks/openFrameworks/issues/44","assignee":null,"title":"numCirclePts is being stored on ofPushStyle but not used","labels":[],"closed_at":"2009-12-05T12:27:35Z","created_at":"2009-10-28T11:23:48Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":75035,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-06T19:01:43Z","body":"006 has the asio folder - but it is currently missing from the repo. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/43","comments":2,"milestone":null,"number":43,"html_url":"https://github.com/openframeworks/openFrameworks/issues/43","assignee":null,"title":"asio folder missing from rtAudio - is this intentional?","labels":[],"closed_at":"2009-12-06T19:01:43Z","created_at":"2009-10-26T12:53:34Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":73924,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-05T19:26:08Z","body":"When playing lots of sounds with FMOD - FMOD_Update() needs to be called every frame. \r\nWe should either do it internally or give people a global function with which to call it - something like: ofSoundPlayerUpdate ?\r\n\r\nNote:\r\nThis problem specifically applies to fmod - so it maybe that we won't need it if we find an fmod replacement. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/42","comments":1,"milestone":null,"number":42,"html_url":"https://github.com/openframeworks/openFrameworks/issues/42","assignee":null,"title":"Add a ofSoundPlayerUpdate call - for keeping fmod on track.","labels":[],"closed_at":"2009-12-05T19:26:08Z","created_at":"2009-10-26T12:37:28Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":73919,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-06T17:56:48Z","body":"I know - it sucks but I think technically we need to. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/41","comments":8,"milestone":null,"number":41,"html_url":"https://github.com/openframeworks/openFrameworks/issues/41","assignee":null,"title":"Put MIT license in OF headers","labels":[],"closed_at":"2009-12-06T17:56:48Z","created_at":"2009-10-25T09:57:59Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":73527,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-05T14:10:41Z","body":"The authors of CreEPS kindly agreed to provide us with a LGPL version of their library. Update the latest OF with this version.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/40","comments":1,"milestone":null,"number":40,"html_url":"https://github.com/openframeworks/openFrameworks/issues/40","assignee":null,"title":"ofxVectorGraphics / CreEPS - update to LGPL/MIT","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"}],"closed_at":"2009-12-05T14:10:41Z","created_at":"2009-10-25T09:56:14Z","state":"closed","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":73525,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-10-24T08:30:19Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/39","comments":1,"milestone":null,"number":39,"html_url":"https://github.com/openframeworks/openFrameworks/issues/39","assignee":null,"title":"Examples have testApp constructor and stdio","labels":[],"closed_at":"2009-10-24T08:30:19Z","created_at":"2009-10-24T08:13:55Z","state":"closed","user":{"url":"https://api.github.com/users/openframeworks","gravatar_id":"a858611b044a8302ab14cfe752e17369","login":"openframeworks","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142866},"id":73228,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-06T18:56:24Z","body":"rtAudio 3 is outdated, in the past rtAudio 4 gave some problems under linux but now it works ok.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/38","comments":1,"milestone":null,"number":38,"html_url":"https://github.com/openframeworks/openFrameworks/issues/38","assignee":null,"title":"change ofSoundStream to rtAudio 4","labels":[],"closed_at":"2009-12-06T18:56:24Z","created_at":"2009-10-23T17:15:52Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":72941,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-06T13:30:36Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=7&t=2577","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/37","comments":1,"milestone":null,"number":37,"html_url":"https://github.com/openframeworks/openFrameworks/issues/37","assignee":null,"title":"Loading a corrupted image in linux makes the app crash","labels":[],"closed_at":"2009-12-06T13:30:36Z","created_at":"2009-10-22T09:24:35Z","state":"closed","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":72331,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-06T23:50:04Z","body":"* CB PC needs -lIphlpapi in linker settings","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/36","comments":2,"milestone":null,"number":36,"html_url":"https://github.com/openframeworks/openFrameworks/issues/36","assignee":null,"title":"Poco linker flag for CB","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"}],"closed_at":"2009-12-06T23:50:04Z","created_at":"2009-10-22T00:08:08Z","state":"closed","user":{"url":"https://api.github.com/users/openframeworks","gravatar_id":"a858611b044a8302ab14cfe752e17369","login":"openframeworks","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142866},"id":72161,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T15:08:50Z","body":" fedora installs alsa in /lib instead of /usr/lib http://www.openframeworks.cc/forum/viewtopic.php?f=5&t=1870&p=10035#p10035\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/35","comments":3,"milestone":null,"number":35,"html_url":"https://github.com/openframeworks/openFrameworks/issues/35","assignee":null,"title":"Linux Scripts - Fedora issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":"2011-12-02T15:08:50Z","created_at":"2009-10-22T00:07:15Z","state":"closed","user":{"url":"https://api.github.com/users/openframeworks","gravatar_id":"a858611b044a8302ab14cfe752e17369","login":"openframeworks","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142866},"id":72160,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-05T20:11:29Z","body":"* some examples in windows cb doesn't have resized updated to windowResized, complete list in: http://www.openframeworks.cc/forum/viewtopic.php?f=7&t=1851","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/34","comments":0,"milestone":null,"number":34,"html_url":"https://github.com/openframeworks/openFrameworks/issues/34","assignee":null,"title":"Examples - Windows - windowResized missing","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"}],"closed_at":"2009-12-05T20:11:29Z","created_at":"2009-10-22T00:06:37Z","state":"closed","user":{"url":"https://api.github.com/users/openframeworks","gravatar_id":"a858611b044a8302ab14cfe752e17369","login":"openframeworks","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142866},"id":72159,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-05T20:11:30Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/33","comments":0,"milestone":null,"number":33,"html_url":"https://github.com/openframeworks/openFrameworks/issues/33","assignee":null,"title":"advancedEventsExample doesn't have all the files in src in linux & same with CB win32","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"}],"closed_at":"2009-12-05T20:11:30Z","created_at":"2009-10-22T00:06:05Z","state":"closed","user":{"url":"https://api.github.com/users/openframeworks","gravatar_id":"a858611b044a8302ab14cfe752e17369","login":"openframeworks","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142866},"id":72158,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-05T20:11:29Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/32","comments":0,"milestone":null,"number":32,"html_url":"https://github.com/openframeworks/openFrameworks/issues/32","assignee":null,"title":"osc example is not updated to 003 in mac ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"}],"closed_at":"2009-12-05T20:11:29Z","created_at":"2009-10-22T00:05:54Z","state":"closed","user":{"url":"https://api.github.com/users/openframeworks","gravatar_id":"a858611b044a8302ab14cfe752e17369","login":"openframeworks","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142866},"id":72157,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-05T20:11:30Z","body":"* some examples in windows seems to not have all the files included, ie, firmata files in the alladdonsexample","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/31","comments":0,"milestone":null,"number":31,"html_url":"https://github.com/openframeworks/openFrameworks/issues/31","assignee":null,"title":"Examples - Windows - Files missing","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"}],"closed_at":"2009-12-05T20:11:30Z","created_at":"2009-10-22T00:05:43Z","state":"closed","user":{"url":"https://api.github.com/users/openframeworks","gravatar_id":"a858611b044a8302ab14cfe752e17369","login":"openframeworks","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142866},"id":72156,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-05T21:00:47Z","body":"* serial fix:\r\n** http://www.openframeworks.cc/forum/viewtopic.php?t=773\r\n** not completely sure but think this doesn't worked in linux\r\n** serial setup by device number doesn't work on linux http://www.openframeworks.cc/forum/viewtopic.php?f=7&t=2156&p=11654#p11654","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/30","comments":1,"milestone":null,"number":30,"html_url":"https://github.com/openframeworks/openFrameworks/issues/30","assignee":null,"title":"Linux serial issues with device number:","labels":[],"closed_at":"2009-12-05T21:00:47Z","created_at":"2009-10-22T00:05:14Z","state":"closed","user":{"url":"https://api.github.com/users/openframeworks","gravatar_id":"a858611b044a8302ab14cfe752e17369","login":"openframeworks","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142866},"id":72155,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-06T23:50:03Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/29","comments":1,"milestone":null,"number":29,"html_url":"https://github.com/openframeworks/openFrameworks/issues/29","assignee":null,"title":"Poco linking order on win32 - See Comments for correct order","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"}],"closed_at":"2009-12-06T23:50:03Z","created_at":"2009-10-22T00:04:46Z","state":"closed","user":{"url":"https://api.github.com/users/openframeworks","gravatar_id":"a858611b044a8302ab14cfe752e17369","login":"openframeworks","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142866},"id":72154,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-04T18:42:51Z","body":"** don't wait for paused state on loadMovie? (zach, what does this mean?) arturo, it seems on loading there's a tiny freeze while the file is loaded by not waiting and treating the file as a stream it should be possible to avoid it: http://www.openframeworks.cc/forum/viewtopic.php?f=8&t=1791","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/28","comments":0,"milestone":null,"number":28,"html_url":"https://github.com/openframeworks/openFrameworks/issues/28","assignee":null,"title":"ofVideoPlayer - pause delay","labels":[],"closed_at":"2009-12-04T18:42:51Z","created_at":"2009-10-22T00:03:56Z","state":"closed","user":{"url":"https://api.github.com/users/openframeworks","gravatar_id":"a858611b044a8302ab14cfe752e17369","login":"openframeworks","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142866},"id":72153,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-06T20:11:50Z","body":"* [NEEDS REFIX] fps is not calculated correctly resulting in NAN on windows -see last fix here: http://www.openframeworks.cc/forum/viewtopic.php?f=7&t=1892&p=11166#p11166\r\n\r\nAlso for some reason on windows the app can jump up to 100fps when doing heavy texture loading. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/27","comments":2,"milestone":null,"number":27,"html_url":"https://github.com/openframeworks/openFrameworks/issues/27","assignee":null,"title":"Windows FPS issues","labels":[],"closed_at":"2009-12-06T20:11:50Z","created_at":"2009-10-22T00:03:19Z","state":"closed","user":{"url":"https://api.github.com/users/openframeworks","gravatar_id":"a858611b044a8302ab14cfe752e17369","login":"openframeworks","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142866},"id":72152,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2009-12-05T12:54:55Z","body":"Maybe an average one too?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/26","comments":1,"milestone":null,"number":26,"html_url":"https://github.com/openframeworks/openFrameworks/issues/26","assignee":null,"title":"ofGetLastFrameTime - to get the elapsed time of the last frame. ","labels":[],"closed_at":"2009-12-05T12:54:55Z","created_at":"2009-10-22T00:02:30Z","state":"closed","user":{"url":"https://api.github.com/users/openframeworks","gravatar_id":"a858611b044a8302ab14cfe752e17369","login":"openframeworks","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142866},"id":72150,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=38&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4958'), ('content-length', '22487'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="first", ; rel="prev"'), ('etag', '"98deeee1d4ab1f6a96a5336774ac0087"'), ('date', 'Tue, 29 May 2012 18:46:59 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"milestone":null,"state":"closed","user":{"gravatar_id":"a858611b044a8302ab14cfe752e17369","url":"https://api.github.com/users/openframeworks","login":"openframeworks","id":142866,"avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Add simplex/perlin noise to core","html_url":"https://github.com/openframeworks/openFrameworks/issues/25","comments":3,"assignee":null,"updated_at":"2009-12-06T11:51:10Z","body":"","number":25,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/25","labels":[],"id":72149,"closed_at":"2009-12-06T11:51:10Z","created_at":"2009-10-22T00:01:49Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"a858611b044a8302ab14cfe752e17369","url":"https://api.github.com/users/openframeworks","login":"openframeworks","id":142866,"avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Dean's ofPoint cleanup / comments","html_url":"https://github.com/openframeworks/openFrameworks/issues/24","comments":1,"assignee":null,"updated_at":"2009-12-05T21:36:47Z","body":"","number":24,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/24","labels":[],"id":72148,"closed_at":"2009-12-05T21:36:47Z","created_at":"2009-10-22T00:01:33Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"a858611b044a8302ab14cfe752e17369","url":"https://api.github.com/users/openframeworks","login":"openframeworks","id":142866,"avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Deans abgr to rfb blitter","html_url":"https://github.com/openframeworks/openFrameworks/issues/23","comments":2,"assignee":null,"updated_at":"2009-12-05T19:05:32Z","body":"","number":23,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/23","labels":[],"id":72147,"closed_at":"2009-12-05T19:05:32Z","created_at":"2009-10-22T00:01:22Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"a858611b044a8302ab14cfe752e17369","url":"https://api.github.com/users/openframeworks","login":"openframeworks","id":142866,"avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofTexture copy constructor issue","html_url":"https://github.com/openframeworks/openFrameworks/issues/22","comments":0,"assignee":null,"updated_at":"2009-12-05T19:50:43Z","body":"problem with ofTexture copy constructor: http://www.openframeworks.cc/forum/viewtopic.php?f=7&t=2638&view=unread#unread","number":22,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/22","labels":[],"id":72146,"closed_at":"2009-12-05T19:50:43Z","created_at":"2009-10-22T00:00:43Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"a858611b044a8302ab14cfe752e17369","url":"https://api.github.com/users/openframeworks","login":"openframeworks","id":142866,"avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"setAnchorPoint - move arguments from int to float","html_url":"https://github.com/openframeworks/openFrameworks/issues/21","comments":1,"assignee":null,"updated_at":"2009-10-24T16:12:19Z","body":"\r\n","number":21,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/21","labels":[],"id":72145,"closed_at":"2009-10-24T16:12:19Z","created_at":"2009-10-22T00:00:26Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"a858611b044a8302ab14cfe752e17369","url":"https://api.github.com/users/openframeworks","login":"openframeworks","id":142866,"avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofBaseVideo - isFrameNew","html_url":"https://github.com/openframeworks/openFrameworks/issues/20","comments":1,"assignee":null,"updated_at":"2009-10-24T12:48:29Z","body":"","number":20,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/20","labels":[],"id":72144,"closed_at":"2009-10-24T12:48:29Z","created_at":"2009-10-21T23:59:41Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"a858611b044a8302ab14cfe752e17369","url":"https://api.github.com/users/openframeworks","login":"openframeworks","id":142866,"avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofxOpenCv - grayscale to planar not working","html_url":"https://github.com/openframeworks/openFrameworks/issues/19","comments":0,"assignee":null,"updated_at":"2009-12-05T13:47:40Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?t=1763","number":19,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/19","labels":[{"color":"d68e22","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon"}],"id":72142,"closed_at":"2009-12-05T13:47:40Z","created_at":"2009-10-21T23:59:09Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"a858611b044a8302ab14cfe752e17369","url":"https://api.github.com/users/openframeworks","login":"openframeworks","id":142866,"avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofxOpenCv - remove implicit ROI intersection","html_url":"https://github.com/openframeworks/openFrameworks/issues/18","comments":0,"assignee":null,"updated_at":"2009-12-05T13:46:06Z","body":"","number":18,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/18","labels":[{"color":"d68e22","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon"}],"id":72141,"closed_at":"2009-12-05T13:46:06Z","created_at":"2009-10-21T23:58:23Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"a858611b044a8302ab14cfe752e17369","url":"https://api.github.com/users/openframeworks","login":"openframeworks","id":142866,"avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"latest xcode needs tcp.h included in ofxUdpManager ","html_url":"https://github.com/openframeworks/openFrameworks/issues/17","comments":1,"assignee":null,"updated_at":"2009-10-24T12:51:02Z","body":"","number":17,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/17","labels":[{"color":"d68e22","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon"}],"id":72140,"closed_at":"2009-10-24T12:51:02Z","created_at":"2009-10-21T23:57:50Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"a858611b044a8302ab14cfe752e17369","url":"https://api.github.com/users/openframeworks","login":"openframeworks","id":142866,"avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofxOpenCv - drawBlobIntoMe","html_url":"https://github.com/openframeworks/openFrameworks/issues/16","comments":0,"assignee":null,"updated_at":"2009-12-05T13:46:06Z","body":"restore it","number":16,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/16","labels":[{"color":"d68e22","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon"}],"id":72139,"closed_at":"2009-12-05T13:46:06Z","created_at":"2009-10-21T23:57:31Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"a858611b044a8302ab14cfe752e17369","url":"https://api.github.com/users/openframeworks","login":"openframeworks","id":142866,"avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofxOpenCv - shortImage - assignment operators","html_url":"https://github.com/openframeworks/openFrameworks/issues/15","comments":1,"assignee":null,"updated_at":"2009-12-05T21:26:06Z","body":"","number":15,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/15","labels":[{"color":"d68e22","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon"}],"id":72137,"closed_at":"2009-12-05T21:26:06Z","created_at":"2009-10-21T23:56:56Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"a858611b044a8302ab14cfe752e17369","url":"https://api.github.com/users/openframeworks","login":"openframeworks","id":142866,"avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofxOpenCv - iphone #ifdefs ","html_url":"https://github.com/openframeworks/openFrameworks/issues/14","comments":0,"assignee":null,"updated_at":"2009-12-05T13:46:06Z","body":"","number":14,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/14","labels":[{"color":"d68e22","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon"}],"id":72136,"closed_at":"2009-12-05T13:46:06Z","created_at":"2009-10-21T23:56:35Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"a858611b044a8302ab14cfe752e17369","url":"https://api.github.com/users/openframeworks","login":"openframeworks","id":142866,"avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofxThread - stopThread should be called when threaded function returns","html_url":"https://github.com/openframeworks/openFrameworks/issues/13","comments":1,"assignee":null,"updated_at":"2009-12-04T17:22:09Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=9&t=2210&p=11929#p11929\r\n","number":13,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/13","labels":[{"color":"d68e22","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon"}],"id":72135,"closed_at":"2009-12-04T17:22:09Z","created_at":"2009-10-21T23:55:54Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"a858611b044a8302ab14cfe752e17369","url":"https://api.github.com/users/openframeworks","login":"openframeworks","id":142866,"avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Examples - imageLoader - ofSetupScreen call not needed","html_url":"https://github.com/openframeworks/openFrameworks/issues/12","comments":1,"assignee":null,"updated_at":"2009-10-24T22:19:07Z","body":"","number":12,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/12","labels":[],"id":72134,"closed_at":"2009-10-24T22:19:07Z","created_at":"2009-10-21T23:55:06Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"a858611b044a8302ab14cfe752e17369","url":"https://api.github.com/users/openframeworks","login":"openframeworks","id":142866,"avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofVideoPlayer uninitialized bool","html_url":"https://github.com/openframeworks/openFrameworks/issues/11","comments":1,"assignee":null,"updated_at":"2009-10-24T14:27:08Z","body":"dean's fix for unitialized bool in ofVideoPlayer","number":11,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/11","labels":[],"id":72133,"closed_at":"2009-10-24T14:27:08Z","created_at":"2009-10-21T23:54:25Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"a858611b044a8302ab14cfe752e17369","url":"https://api.github.com/users/openframeworks","login":"openframeworks","id":142866,"avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofxOpenCv - do quick copy for getPixels and setPixels when image is memory alligned","html_url":"https://github.com/openframeworks/openFrameworks/issues/10","comments":1,"assignee":null,"updated_at":"2009-10-24T09:06:55Z","body":"ie 640 480 can be just a straight memcpy","number":10,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/10","labels":[{"color":"d68e22","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon"}],"id":72132,"closed_at":"2009-10-24T09:06:55Z","created_at":"2009-10-21T23:53:24Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"a858611b044a8302ab14cfe752e17369","url":"https://api.github.com/users/openframeworks","login":"openframeworks","id":142866,"avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofxOsc shutdown leak","html_url":"https://github.com/openframeworks/openFrameworks/issues/9","comments":1,"assignee":null,"updated_at":"2009-10-24T13:40:48Z","body":"Shutdown issue - fix here: http://damian.dreamhosters.com/svn/public/ofxOsc/latest/\n","number":9,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/9","labels":[{"color":"d68e22","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon"}],"id":72131,"closed_at":"2009-10-24T13:40:48Z","created_at":"2009-10-21T23:51:07Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"a858611b044a8302ab14cfe752e17369","url":"https://api.github.com/users/openframeworks","login":"openframeworks","id":142866,"avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofxXmlSettings memory leak","html_url":"https://github.com/openframeworks/openFrameworks/issues/8","comments":2,"assignee":null,"updated_at":"2009-12-05T12:09:09Z","body":"Memory Leak in constructor: storedHandle = new TiXmlHandle(NULL); Never freed. \r\n","number":8,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/8","labels":[{"color":"d68e22","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon"}],"id":72130,"closed_at":"2009-12-05T12:09:09Z","created_at":"2009-10-21T23:50:49Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"a858611b044a8302ab14cfe752e17369","url":"https://api.github.com/users/openframeworks","login":"openframeworks","id":142866,"avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofx3DModelLoader - non power of 2 textures","html_url":"https://github.com/openframeworks/openFrameworks/issues/7","comments":0,"assignee":null,"updated_at":"2011-01-08T20:27:15Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?p=12210#p12210\r\n","number":7,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/7","labels":[{"color":"d68e22","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":72129,"closed_at":"2011-01-08T20:27:15Z","created_at":"2009-10-21T23:50:06Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"a858611b044a8302ab14cfe752e17369","url":"https://api.github.com/users/openframeworks","login":"openframeworks","id":142866,"avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofxXmlSettings read attributes","html_url":"https://github.com/openframeworks/openFrameworks/issues/6","comments":2,"assignee":null,"updated_at":"2009-12-05T12:08:38Z","body":"check and find the best out of these plus damian's and chris's http://www.openframeworks.cc/forum/viewtopic.php?f=10&t=2039&hilit=attribute & http://www.openframeworks.cc/forum/viewtopic.php?f=10&t=643&hilit=attribute","number":6,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/6","labels":[{"color":"d68e22","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon"}],"id":72128,"closed_at":"2009-12-05T12:08:38Z","created_at":"2009-10-21T23:49:38Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"a858611b044a8302ab14cfe752e17369","url":"https://api.github.com/users/openframeworks","login":"openframeworks","id":142866,"avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofGetAppPtr()","html_url":"https://github.com/openframeworks/openFrameworks/issues/5","comments":1,"assignee":null,"updated_at":"2009-10-22T20:37:38Z","body":"to get a pointer to testApp","number":5,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/5","labels":[],"id":72127,"closed_at":"2009-10-22T20:37:38Z","created_at":"2009-10-21T23:48:21Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"a858611b044a8302ab14cfe752e17369","url":"https://api.github.com/users/openframeworks","login":"openframeworks","id":142866,"avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofSetCurveResolution - makes curved shapes a lot faster!","html_url":"https://github.com/openframeworks/openFrameworks/issues/4","comments":1,"assignee":null,"updated_at":"2009-10-24T16:23:42Z","body":"","number":4,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/4","labels":[],"id":72126,"closed_at":"2009-10-24T16:23:42Z","created_at":"2009-10-21T23:47:58Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"a858611b044a8302ab14cfe752e17369","url":"https://api.github.com/users/openframeworks","login":"openframeworks","id":142866,"avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Fullscreen on OS X should be not top level","html_url":"https://github.com/openframeworks/openFrameworks/issues/3","comments":7,"assignee":null,"updated_at":"2009-12-07T01:55:14Z","body":"Zach has the code for this - find simple implementation. ","number":3,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/3","labels":[{"color":"993e7a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode"}],"id":72125,"closed_at":"2009-12-07T01:55:14Z","created_at":"2009-10-21T23:47:33Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"a858611b044a8302ab14cfe752e17369","url":"https://api.github.com/users/openframeworks","login":"openframeworks","id":142866,"avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"detect C:/ as a root path in ofToDataPath","html_url":"https://github.com/openframeworks/openFrameworks/issues/2","comments":1,"assignee":null,"updated_at":"2009-10-23T06:53:51Z","body":"","number":2,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2","labels":[],"id":72124,"closed_at":"2009-10-23T06:53:51Z","created_at":"2009-10-21T23:46:21Z"},{"milestone":null,"state":"closed","user":{"gravatar_id":"a858611b044a8302ab14cfe752e17369","url":"https://api.github.com/users/openframeworks","login":"openframeworks","id":142866,"avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"glutInitDisplayString option","html_url":"https://github.com/openframeworks/openFrameworks/issues/1","comments":4,"assignee":null,"updated_at":"2009-12-05T11:39:54Z","body":"allow user to pass a custom glut window string. fallback to default window if string unsuccessful. ","number":1,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1","labels":[],"id":72123,"closed_at":"2009-12-05T11:39:54Z","created_at":"2009-10-21T23:45:56Z"}] + diff --git a/lib/github/tests/ReplayData/Issue33.testOpenIssues.txt b/lib/github/tests/ReplayData/Issue33.testOpenIssues.txt new file mode 100644 index 0000000000..87b436785d --- /dev/null +++ b/lib/github/tests/ReplayData/Issue33.testOpenIssues.txt @@ -0,0 +1,154 @@ +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4982'), ('content-length', '51959'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last"'), ('etag', '"c3111cf6eead96b7d0ea0d14f4a5e9eb"'), ('date', 'Tue, 29 May 2012 06:43:34 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-27T18:11:17Z","body":"Since more and more of the OF Core now relies on Poco (ie ofThread, etc) does OF_USING_POCO make sense anymore?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1280","comments":0,"milestone":null,"number":1280,"assignee":null,"closed_at":null,"title":"deprecate OF_USING_POCO?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"created_at":"2012-05-27T18:03:23Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":4772349,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1280"},{"updated_at":"2012-05-28T08:08:24Z","body":"There occurs a weir glitch when compiling the ofShader example with my HD Graphics 3000 (288 Mb) (Mac osx 10.7.4 - Mac Mini - i5 - 2.3Ghz)\n\nI was able to get rid of the glitch by replacing \"gl_FragColor = gl_Color;\" with \"gl_FragColor = 255.0;\" or any other number.\nAnybody knows a reason for the glitch / proper solution?\n\nScreenshot: http://goo.gl/Xdf74\nOpenGL capacities on different graphic cards on apple machines: http://goo.gl/FGQ2N","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1279","comments":2,"milestone":null,"number":1279,"assignee":null,"closed_at":null,"title":"ofShader example with HD Graphics 3000 issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"created_at":"2012-05-26T19:27:56Z","state":"open","user":{"url":"https://api.github.com/users/subtiv","avatar_url":"https://secure.gravatar.com/avatar/837cfe96365c031130a46311eb11d86a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"837cfe96365c031130a46311eb11d86a","login":"subtiv","id":1012684},"id":4767675,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1279"},{"updated_at":"2012-05-25T18:39:02Z","body":"produces an error on app exit or tex destruction.\n\n OF: OF_LOG_ERROR: trying to delete a non indexed texture, something weird is happening. Deleting anyway\n\nThis is because retain(int id) is a static function in ofTexture.cpp. So we can't retain the depthStencilTexture.\n\nThis suggest we should move the texture allocation of the depth / stencil texture to ofTexture - something which is not possible at the moment. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1277","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":16,"open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1277,"assignee":null,"closed_at":null,"title":"ofFbo can't retain depthStencil Texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2012-05-25T18:37:46Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":4758608,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1277"},{"updated_at":"2012-05-22T21:26:57Z","body":"\nthe offending line is: \n\nif( speed.getValue() != preSpeed ){\n\nwhich is evaluating as true even through the slider is not touched (float equality test, etc). \n\nif we alter it to something like: \n\nif( fabs(speed.getValue() - preSpeed) > 0.0001 ){\n\nthe code runs fine. probably nicer to add a \"value changed()\" functionality to the slider object though or use EPSILON, etc. \n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1271","comments":0,"milestone":null,"number":1271,"assignee":null,"closed_at":null,"title":"periodic signal example doesn't run well on windows / cb (float equality error)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2012-05-22T21:26:57Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":4700182,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1271"},{"updated_at":"2012-05-22T16:41:21Z","body":"There's some error that appears on linux systems running the project generator to make VS examples, where the debug and release libs for opencv get added badly to the vs project: \n\n\t%(AdditionalDependencies);opencv_highgui231d.lib;opencv_calib3d231.lib;opencv_imgproc231d.lib;opencv_haartraining_engined.lib;opencv_gpu231d.lib;opencv_flann231.lib;opencv_contrib231d.lib;opencv_video231d.lib;opencv_objdetect231d.lib;zlib.lib;opencv_core231d.lib;opencv_contrib231.lib;opencv_ml231d.lib;opencv_features2d231.lib;opencv_core231.lib;opencv_gpu231.lib;opencv_legacy231d.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_ml231.lib;opencv_imgproc231.lib;opencv_objdetect231.lib;opencv_legacy231.lib;opencv_video231.lib\n\t\t\t\t%(AdditionalLibraryDirectories);..\\..\\..\\addons\\ofxOpenCv\\libs\\opencv\\lib\\vs2010\n\nthis doesn't seem to be the case on osx or windows, which produces correct results: \n\n\t%(AdditionalDependencies);opencv_calib3d231.lib;opencv_contrib231.lib;opencv_core231.lib;opencv_features2d231.lib;opencv_flann231.lib;opencv_gpu231.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_imgproc231.lib;opencv_legacy231.lib;opencv_ml231.lib;opencv_objdetect231.lib;opencv_video231.lib;zlib.lib\n\nwould be good to look at the logic of \"visualStudioProject::addAddon()\" and see if we can fix this.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1268","comments":9,"milestone":null,"number":1268,"assignee":null,"closed_at":null,"title":"project generator - bad libs for VS / opencv examples","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"created_at":"2012-05-20T21:50:24Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":4662873,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1268"},{"updated_at":"2012-05-17T00:43:37Z","body":"I woud love some eyes on ofFbo would be great to get it cleaned up and standardized for 0072. \nRight now there are a ton of #ifdefs and some very hard to follow logic, which makes bug fixing quite difficult especially on OPENGL_ES\n\nsee: https://gist.github.com/2711815\n\n@elliotwoods @arturoc @memotv @damiannz @ofZach @kylemcdonald \n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1263","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":16,"open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1263,"assignee":null,"closed_at":null,"title":"ofFbo.cpp is a huge mess! ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"created_at":"2012-05-16T16:27:30Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":4608132,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1263"},{"updated_at":"2012-05-17T14:29:02Z","body":"I added a .mailmap file to the repo to correctly collate all the contributors in spite of changing nick names/email addresses. This is useful when trying to identify contributors for a changelog or similar, or when using the git logging functions like shortlog.\n\nSee the before/after situation here: https://gist.github.com/2710366\n\nI have respected privacy and only used those real names that people have already given in a git ID in the repo. Mainly this addition only associates the different email addresses to one user. @arturoc wins the prize of most used emails! :-)\nThe list is pretty complete, I only had difficulties to associate some IDs to the correct Zachs, since it was not clear for some if @ofZach or @stfj (Zach Gage) was the contributor. Those were left as-is.\n\nIf anybody has objections to their various email being united under their name, please say so and I will correct/remove the relevant entries.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1262","comments":2,"milestone":null,"number":1262,"assignee":null,"closed_at":null,"title":"Add .mailmap for contributor collation","labels":[],"created_at":"2012-05-16T13:44:32Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":4604661,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1262.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1262.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/1262"},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1262"},{"updated_at":"2012-05-16T09:35:31Z","body":"Address #375.\n\nAdd setVolumef(float). Also more clearly define volume ranges (int is 0..255, float is 0..1) and more robust clamping of volume argument.\n\nThis has not been tested on Linux or Windows.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1260","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":16,"open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1260,"assignee":null,"closed_at":null,"title":"allow float volume on ofVideoPlayer","labels":[],"created_at":"2012-05-15T17:50:22Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":4588997,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1260.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1260.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/1260"},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1260"},{"updated_at":"2012-05-21T07:31:47Z","body":"This was originally posted @\"biginners\".\n\nhttp://forum.openframeworks.cc/index.php/topic,9527.msg44049.html#msg44049\n\nJoshua noble suggested me to file it as a bug on jithub\n\n\n/////////////////original messages\n\nHello.\n\nI have question about ofShortPixels and ofShortColor.\n\nIf you execute the code below , it'll draw at half way screen height even though I did set aDot at (0. screen height / 4)\n\nAnd another weird thing is it draws 20 pixels instead of 10 pixels which I set for loop for 10 times.\n\nIt only draws correctly with ofPixels and ofColor.\n\nIt doesn't work with ofFloatPixels and ofFloatColor.\n\nPlease help me out.\n\nI need to have RGB value over 255 so I can check if those values are over 255.\n\nThanks in advanced\n\nJin\n\n\n.h file\nCode:\nview plaincopy to clipboardprint?\n\n #pragma once \n #include \"ofMain.h\" \n \n class Dot { \n public: \n ofVec2f location; \n \n Dot(){ \n location.set(0,0); \n } \n \n ~Dot(){} \n }; \n \n class testApp : public ofBaseApp{ \n public: \n void setup(); \n void update(); \n void draw(); \n \n int w,h; \n \n ofTexture particleTexture; \n ofShortPixels * rgbPixels; \n \n ofShortColor& paint(ofShortColor &); \n \n Dot aDot; \n \n \n }; \n\n\n.cpp file\nCode:\nview plaincopy to clipboardprint?\n\n #include \"testApp.h\" \n //-------------------------------------------------------------- \n void testApp::setup(){ \n ofSetFrameRate(30); \n ofSetBackgroundAuto(TRUE); \n ofBackground(0, 0, 0); \n w = ofGetWidth(); \n h = ofGetHeight(); \n \n particleTexture.allocate(w,h,GL_RGB); \n rgbPixels = new ofShortPixels; \n rgbPixels->allocate(w, h, 3); \n aDot.location.set(0, h/4); \n } \n \n //-------------------------------------------------------------- \n void testApp::update(){ \n ofShortColor pixelColor; \n ofShortColor newPixelColor; \n for(int i = 0; i<10; i++){ \n pixelColor = rgbPixels->getColor(aDot.location.x+i, aDot.location.y); \n \n newPixelColor = paint(pixelColor); \n \n rgbPixels->setColor(aDot.location.x+i, aDot.location.y,newPixelColor); \n \n } \n particleTexture.loadData(* rgbPixels); \n } \n \n //-------------------------------------------------------------- \n void testApp::draw(){ \n particleTexture.draw(0, 0, w, h); \n } \n \n ofShortColor & testApp::paint(ofShortColor & _c){ \n \n _c.r += 10; \n _c.g += 2; \n _c.b += 3; \n \n _c.set(_c.r, _c.g, _c.b); \n _c.clamp(); \n \n return _c; \n } ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1257","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":16,"open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1257,"assignee":null,"closed_at":null,"title":"ofShortPixels doesn't draw pixels correctly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"created_at":"2012-05-14T05:46:14Z","state":"open","user":{"url":"https://api.github.com/users/gazaebal","avatar_url":"https://secure.gravatar.com/avatar/f9d7811bb6318fedf7e9f2fe8bfece32?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"f9d7811bb6318fedf7e9f2fe8bfece32","login":"gazaebal","id":1736190},"id":4557803,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1257"},{"updated_at":"2012-05-17T21:42:08Z","body":"if i'm not mistaken, the correct way of using ofMatrix4x4 in oF is `glMultMatrixf(myMatrix.getPtr())` or `glLoadMatrixf`.\nThis seems a bit uncomfortable for me.\n\nsome candidates are:\n\n```c++\nofPushMatrix(const ofMatrix4x4 &); //needs alternatives as you might not want to push at the time\nofLoadMatrix(const ofMatrix4x4 &);\nofMultMatrix(const ofMatrix4x4 &);\n\nofMatrix4x4::apply();\nofMatrix4x4::glLoadMatrix(matrixMode = OF_MATRIX_MODE_CURRENT);\n```\n\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1256","comments":5,"milestone":null,"number":1256,"assignee":null,"closed_at":null,"title":"Feature ofPushMatrix(const ofMatrix4x4 &)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"created_at":"2012-05-13T18:20:29Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":4554058,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1256"},{"updated_at":"2012-05-16T09:35:07Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1254","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":16,"open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1254,"assignee":null,"closed_at":null,"title":"Adding ofClear(ofColor c) just a detail","labels":[],"created_at":"2012-05-12T19:15:59Z","state":"open","user":{"url":"https://api.github.com/users/patriciogonzalezvivo","avatar_url":"https://secure.gravatar.com/avatar/69406d376e65f8070acfbe220f246989?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"69406d376e65f8070acfbe220f246989","login":"patriciogonzalezvivo","id":346914},"id":4548835,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1254.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1254.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/1254"},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1254"},{"updated_at":"2012-05-11T21:24:20Z","body":"\tunsigned char faceSize = 3;\n\tif(data.getNumIndices()){\n\t\tos << \"element face \" << data.getNumIndices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t} else if(data.getMode() == OF_PRIMITIVE_TRIANGLES) {\n\t\tos << \"element face \" << data.getNumVertices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t}\n\nThe facesize is being set as static as 3, but this results in strange exports...things open OK in Meshlab, but exporting to other programs with no faces seems like it won't work","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1252","comments":6,"milestone":null,"number":1252,"assignee":null,"closed_at":null,"title":"0071 ply (mesh.save()) Point export is broken","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"created_at":"2012-05-11T19:45:53Z","state":"open","user":{"url":"https://api.github.com/users/laserpilot","avatar_url":"https://secure.gravatar.com/avatar/07001341fe6c156dddd5b9d06d828cba?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"07001341fe6c156dddd5b9d06d828cba","login":"laserpilot","id":1041023},"id":4539985,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1252"},{"updated_at":"2012-05-16T09:33:31Z","body":"couple of minor bugfixes (absolute path wasn't being detected on second if [absolute] for windows paths)\r\nfixes unixy paths no matter what on windows","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1251","comments":8,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":16,"open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1251,"assignee":null,"closed_at":null,"title":"Bugfix of to data path","labels":[],"created_at":"2012-05-10T06:44:20Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":4507572,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1251.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1251.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/1251"},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1251"},{"updated_at":"2012-05-16T09:43:23Z","body":":(\r\n\r\nIt seems i'm getting double 'data/' in my paths\r\nafter a little tracking down, i found this is because ofSystemLoadDialog changes the current working directory\r\n\r\nso we could try and either fix that by popping the folder after the dialog, \r\nof for windows using something like ```GetModuleFileName``` to get the path of the current exe rather than using the current working directory\r\n\r\nI can't seem to run GetModuleFileName from ofUtils.cpp even though windows.h is included in ofConstants.h (included in ofUtils.h)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1250","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":16,"open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1250,"assignee":null,"closed_at":null,"title":"bug: ofToDataPath broken again","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2012-05-10T06:35:24Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":4507492,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1250"},{"updated_at":"2012-05-16T09:42:44Z","body":"'ofx TCPClient :: receiveRaw' was found in the proble.\n\nOriginal :\n\n\tint ofxTCPClient::receiveRawBytes(char * receiveBuffer, int numBytes){\n\t\t\t messageSize = TCPClient.Receive(receiveBuffer, numBytes);\t\n\t\t\t if(messageSize==0){\t\t\n\t\t\t\t\t\tclose();\t\n\t\t\t }\t\n\t\t\t return messageSize;\n\t}\n\nBut 'TCPClient.Receive (receiveBuffer, numBytes)' from '-1' may return\n\nI was modified\n\n\tstring ofxTCPClient::receiveRaw(){\n\t\t\t messageSize = TCPClient.Receive(tmpBuff, TCP_MAX_MSG_SIZE);\n\t\t\t if(messageSize==0){\n\t\t\t\t\t\tclose();\n\t\t\t }\n\t\t\t //TCPClient.Receive is return -1....\n\t\t\t else if(messageSize < 0){ \n\t\t\t\t\t\ttmpBuff[0] = 0;\n\t\t\t }\n\t\t\t else if(messageSize; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"21c33fd6632c4b3cd659410979a9c609"'), ('date', 'Tue, 29 May 2012 06:43:35 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-18T21:52:52Z","body":"I completely rewrote ofEasyCam as it was working in some weird ways when the target was changed.\r\nNow the maths are much simpler and tidier.\r\nI also changed the way it is used.\r\nNow by pressing the dragging the mouse with the left button the camera rotates around the target. when doing so with the right button the camera rotates around it's local z axis.\r\n\r\nWhen the 'm' key is pressed, dragging the mouse with the left button will move the camera over it's local X an Y axes. Using the right button will move the camera over it's local z axis, making it \"zoom\" in or out.\r\n\r\nIn my initial implementation I checked if the mouse was inside a circle of radius min(ofGetWith, ofGetHeight) centered at the middle of the viewport, if it was inside the X and Y rotation was applied, else the Z rotation, thus leaving the second button free to use \"zoom\" in or out.\r\nI finally decided to leave out this way of use opting for the one that I'm commiting.\r\nIf anyone of you thinks that my initial implementation would be better I can pull it.\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1227","comments":24,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":1227,"assignee":null,"closed_at":null,"title":"Rewritten ofEasyCam + minor fixes to ofNode","labels":[],"created_at":"2012-04-30T03:15:12Z","state":"open","user":{"url":"https://api.github.com/users/roymacdonald","gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"roymacdonald","id":974878},"id":4345219,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/1227.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1227.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1227"},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1227"},{"updated_at":"2012-05-16T09:27:47Z","body":"I find that I'm using rectangles with rounded corners quiet often and seems like a fairly simple addition.\r\nAn example of using this is as follows:\r\n\r\n ofSetPolyMode(OF_POLY_WINDING_ODD);\r\n ofSetLineWidth(1.5);\r\n ofEnableSmoothing();\r\n ofNoFill();\r\n ofSetHexColor(0x000000);\r\n ofRoundedRect(630,520,80,60,9);\r\n ofDisableSmoothing();\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1223","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":1223,"assignee":null,"closed_at":null,"title":"Feature of rounded rect","labels":[],"created_at":"2012-04-27T06:35:58Z","state":"open","user":{"url":"https://api.github.com/users/lawarner","gravatar_id":"030dc27a9e68781f8c0090d2adc5312e","avatar_url":"https://secure.gravatar.com/avatar/030dc27a9e68781f8c0090d2adc5312e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"lawarner","id":1479237},"id":4317009,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/1223.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1223.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1223"},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1223"},{"updated_at":"2012-05-16T09:27:12Z","body":"Updated ofQuickTimePlayer to properly handle videos with an alpha channel. This uses the setPixelFormat() method, so all you need to do is:\r\n```\r\nmyVideoPlayer.setPixelFormat(OF_PIXELS_RGBA);\r\nmyVideoPlayer.loadMovie(\"path/to/movie.mov\");\t\r\nmyVideoPlayer.play();\r\n```","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1218","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":1218,"assignee":null,"closed_at":null,"title":"ofQuickTimePlayer with alpha","labels":[],"created_at":"2012-04-25T18:48:41Z","state":"open","user":{"url":"https://api.github.com/users/prisonerjohn","gravatar_id":"b52cabeecffe4497699db813a715456f","avatar_url":"https://secure.gravatar.com/avatar/b52cabeecffe4497699db813a715456f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"prisonerjohn","id":119702},"id":4286936,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/1218.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1218.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1218"},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1218"},{"updated_at":"2012-04-30T19:43:55Z","body":"On 'update', PG should respect existing custom include paths, source files, linker flags and project options (such as optimization settings).\r\n\r\nOR\r\n\r\nXcode project should read and respect `OTHER_LDFLAGS` and `HEADER_SEARCH_PATHS`, and add `OTHER_CFLAGS` from Project.xcconfig; projectGenerator should leave these settings alone unless it figures out they need to be adjusted (this is probably going to be difficult).","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1217","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":1217,"assignee":null,"closed_at":null,"title":"projectGenerator update doesn't respect existing project settings","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"created_at":"2012-04-24T21:03:44Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"damiannz","id":144366},"id":4269431,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1217"},{"updated_at":"2012-05-02T10:19:07Z","body":"Since I don't want to derail #484 further, this issue deals with the implementation of a deprecation mechanism.\r\nBased on [this](http://stackoverflow.com/questions/295120/c-mark-as-deprecated), I made an OFDEPRECATED preproc macro.\r\n\r\nQUESTION: How do I correctly #ifdef for MacOS/XCode4/llvm?\r\n\r\nCould people test this on different platforms? On linux this works. \r\n\r\n\t\ttestApp.h:\r\n\r\n\t\t#pragma once\r\n\r\n\t\t#ifdef __GNUC__\r\n\t\t// maybe __clang__ for checking against llvm/xcode4?\r\n\t\t#define OFDEPRECATED(message, func) func __attribute__ ((deprecated(message)))\r\n\t\t#elif defined(_MSC_VER)\r\n\t\t#define OFDEPRECATED(message, func) __declspec(deprecated(message)) func\r\n\t\t#else\r\n\t\t#pragma message(\"WARNING: You need to implement DEPRECATED for this compiler\")\r\n\t\t#define OFDEPRECATED(message, func) func\r\n\t\t#endif\r\n\r\n\t\tand \r\n\r\n\t\t\t\tvoid dragEvent(ofDragInfo dragInfo);\r\n\t\t\t\tvoid gotMessage(ofMessage msg);\r\n\t\t\r\n\t\t\t\tOFDEPRECATED(\"This is an old function, don't use!\", void deprecatedFunction(void));\r\n\t\t\t\tOFDEPRECATED(\"Obsolete type, use T2!\", typedef int T1);\r\n\t\t\t\ttypedef int T2;\r\n\t\t\t\tOFDEPRECATED(\"This is an old variable, don't use!\", int oldvar3);\r\n\t\t\t\t//This breaks a bit cause it's used in the constructor of testApp, so always triggers.\r\n\r\n\t\t};\r\n\t\tOFDEPRECATED(\"old class!\", class oldClass {\r\n\t\t\tpublic:\r\n\t\t\t\toldClass();\r\n\t\t\t\tvirtual ~oldClass();\r\n\t\t});\r\n\r\n\t\ttestApp.cpp:\r\n\r\n\t\tvoid testApp::setup(){\r\n\t\t\tOFDEPRECATED(\"old string. Don't use\", string oldstring);\r\n\t\t\t// Uncomment these to trigger deprecation warnings\r\n\t\t//\tdeprecatedFunction();\r\n\t\t//\tT1 t1object = 5;\r\n\t\t//\toldstring = \"bla\";\r\n\t\t//\toldvar3=5;\r\n\t\t//\toldClass bla;\r\n\t\t}\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1216","comments":11,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":1216,"assignee":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"closed_at":null,"title":"Implement deprecation mechanism","labels":[],"created_at":"2012-04-24T21:03:39Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"id":4269429,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1216"},{"updated_at":"2012-04-30T19:43:14Z","body":"When using PG's 'update' functionality on apps are in paths with non-standard depths (in my case, `oF/apps/dir/subdir/subsubdir`) the OF_PATH and #include directives in the resulting Project.xcconfig don't match, which means oF projects won't compile:\r\n\r\n~~~~\r\n//THE PATH TO THE ROOT OF OUR OF PATH RELATIVE TO THIS PROJECT.\r\n//THIS NEEDS TO BE DEFINED BEFORE CoreOF.xcconfig IS INCLUDED\r\nOF_PATH = ../../../..\r\n\r\n//THIS HAS ALL THE HEADER AND LIBS FOR OF CORE\r\n#include \"../../../../../libs/openFrameworksCompiled/project/osx/CoreOF.xcconfig\"\r\n~~~~\r\n\r\nNote extra `../` in the `#include` path.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1215","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":1215,"assignee":null,"closed_at":null,"title":"projectGenerator sets incorrect path in Project.xcconfig","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"created_at":"2012-04-24T20:59:57Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"damiannz","id":144366},"id":4269359,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1215"},{"updated_at":"2012-04-30T19:42:14Z","body":"@ofTheo @memo @bilderbuchi @ofZach For your consideration (ref #1200)\r\n\r\n~~~~\r\n\tofVec3f p( 1, 2, 3 ); // p is { 1, 2, 3 }\r\n\tp.set( 4 ); // ok, p is now { 4, 4, 4 }\r\n\tp = ofVec3f( 5 ); // ok, p is now { 5, 5, 5 }\r\n\tp.set( 6, 7 ); // ok, p is now { 6, 7, 0 }\r\n\tp = 8; // generates error 'No match for 'operator=' in 'p = 8'\r\n~~~~\r\n\r\nBehaviour is similar with ofVec2f and ofVec4f.\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1205","comments":23,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":1205,"assignee":null,"closed_at":null,"title":"Fix ofVec2/3/4f float assignment","labels":[],"created_at":"2012-04-23T22:31:13Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"damiannz","id":144366},"id":4250445,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/1205.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1205.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1205"},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1205"},{"updated_at":"2012-04-22T23:56:33Z","body":"i'm teaching a workshop right now and i feel like it's ridiculous that i need to explain pointers just to access video :)\r\n\r\nlet's add this!","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1202","comments":3,"milestone":null,"number":1202,"assignee":null,"closed_at":null,"title":"ofVideoPlayer etc needs ofColor access","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"created_at":"2012-04-22T18:42:58Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"kylemcdonald","id":157106},"id":4231092,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1202"},{"updated_at":"2012-04-26T18:48:12Z","body":"DO NOT PULL YET!\r\n\r\nHey all\r\n\r\nHere's the 'off-axis camera' setup we worked on at ScreenLab last weekend.\r\nIt allows you to:\r\n\r\n* Set lens offset on a camera\r\n* Calculate the camera parameters based on a 'view portal' defined by 3 points (top left, bottom left, bottom right)\r\n\r\nCurrently the changes involve editing ofBaseRenderer (and therefore all other renderers) to support lensOffset parameter (default 0,0). We could remove this since ofCamera doesn't actually use ofSetupScreenPerspective\r\n\r\nSo let's have a quick chat about what needs chaning to make this core friendly and then probably pull after 0071 release?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1201","comments":7,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":1201,"assignee":null,"closed_at":null,"title":"Feature provocation pull request: ofCamera lens offset","labels":[],"created_at":"2012-04-22T15:55:29Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4230131,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/1201.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1201.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1201"},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1201"},{"updated_at":"2012-04-30T19:43:30Z","body":"we used to have operator overloading for float so you could do: myVec = 0.0; \r\nor myScale3f = 100.0; and it would set x y and z to that number. \r\n\r\nat somepoint someone commented it out ( breaking quite a few projects for me ).\r\nanyway I would like to revert that commenting out and restore it to its original behavior. \r\n\r\nthis is what ofVec3f.h currently looks like\r\n\r\n\t//operator overloading for float\r\n\t//\r\n\t//\r\n\t//inline void ofVec3f::operator=( const float f){\r\n\t//\tx = f;\r\n\t//\ty = f;\r\n\t//\tz = f;\r\n\t//}\r\n\r\nI know @memo had some thoughts on this. \r\nAlso would be good to have @ofZach look at this. \r\n\r\nI want to make sure I don't introduce anything unexpected by reverting it to its original behavior. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1200","comments":12,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":1200,"assignee":null,"closed_at":null,"title":"fix/feature: restore the = operator overload for ofVec2 / ofVec3 ....","labels":[],"created_at":"2012-04-22T14:24:01Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":4229599,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1200"},{"updated_at":"2012-05-14T01:22:17Z","body":"I'm investigating the way to draw bezier curves / nurbs etc. with shaders, here is a list a links and information I found that can improve render times with OF. Any way I must admit I'm new to openGL & shaders so maybe someone can take this to implement maybe an add-on or maybe to added to the core.\r\n\r\n**Resolution Independent Curve Rendering using Programmable Graphics Hardware**\r\nhttp://research.microsoft.com/en-us/um/people/cloop/loopblinn05.pdf\r\n\r\n**Resolution independent GPU accelerated Curve & Font rendering**\r\n**GPU based Resolution Independent Font & Curve Rendering – initial Release**\r\nhttp://jausoft.com/blog/2011/04/01/resolution-independent-gpu-accelerated-curve-font-rendering/\r\nhttp://ramisantina.com/blog/?p=73\r\nhttp://vimeo.com/21810192\r\nhttp://jogamp.org/doc/gpunurbs2011/p70-santina.pdf\r\n\r\n**Curvy blues**\r\nhttp://www.mdk.org.pl/2007/10/27/curvy-blues\r\n\r\n**Vector drawing: OpenGL shaders and cairo & vector hardware tessellation**\r\nhttp://www.mdk.org.pl/2007/8/6/vector-drawing-opengl-shaders-and-cairo\r\n\r\n**ShivaVG & Random Access Rendering of Animated Vector Graphics**\r\nhttp://ivanleben.blogspot.com.es/2007/07/shivavg-open-source-ansi-c-openvg.html\r\nhttp://www.youtube.com/watch?v=mD8X-e5-sY4\r\nhttp://www.youtube.com/watch?v=U4USCfwORUg\r\nhttp://andrejas-atelier.com/ivan/IvanLebenHonsThesis.pdf\r\n\r\n**RAVG**\r\nhttp://research.microsoft.com/en-us/um/people/hoppe/proj/ravg/\r\n\r\n**NV Path Rendering Videos (seams only with nvidia)**\r\nhttp://developer.nvidia.com/nv-path-rendering-videos\r\n\r\n**Vector drawing: OpenGL polygon tessellation**\r\nhttp://www.mdk.org.pl/2007/8/16/vector-drawing-opengl-polygon-tessellation\r\nhttp://zrusin.blogspot.com.es/2006/07/hardware-accelerated-polygon-rendering.html\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1190","comments":8,"milestone":null,"number":1190,"assignee":null,"closed_at":null,"title":"Bezier Shaders & Vector openGL rendering","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-2D","name":"section-2D","color":"DDDDDD"}],"created_at":"2012-04-20T09:23:00Z","state":"open","user":{"url":"https://api.github.com/users/microbians","gravatar_id":"98c91e60903b83c0a022ee70cca9ca21","avatar_url":"https://secure.gravatar.com/avatar/98c91e60903b83c0a022ee70cca9ca21?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"microbians","id":1662136},"id":4207350,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1190"},{"updated_at":"2012-05-16T09:41:20Z","body":"ofSetCurveResolution is not changing the resolution using ofBezier nor ofBezierVertex (tested with ofScale is more easy to see the bug)\r\n\r\n ofFill();\r\n ofSetHexColor(0xFF9933);\r\n ofBeginShape();\r\n ofVertex(x0,y0);\r\n ofBezierVertex(x1,y1,x2,y2,x3,y3);\r\n ofEndShape();\r\n\r\nall works fine when using ofPath directly:\r\n\r\n ofPath curve;\r\n curve.setFillHexColor(0xFF000);\r\n curve.setCurveResolution(120);\r\n curve.moveTo(x0, y0);\r\n curve.bezierTo(x1,y1,x2,y2,x3,y3);\r\n curve.draw();\r\n\r\nmore: http://forum.openframeworks.cc/index.php/topic,9596.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1189","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":1189,"assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"arturoc","id":48240},"closed_at":null,"title":"ofSetCurveResolution + ofBezierVertex bug","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2012-04-20T08:51:51Z","state":"open","user":{"url":"https://api.github.com/users/microbians","gravatar_id":"98c91e60903b83c0a022ee70cca9ca21","avatar_url":"https://secure.gravatar.com/avatar/98c91e60903b83c0a022ee70cca9ca21?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"microbians","id":1662136},"id":4206982,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1189"},{"updated_at":"2012-05-01T04:10:23Z","body":"If you set up an ofFbo as follows...\r\n\r\n```cpp\r\n ofFbo::Settings s;\r\n s.width = 400;\r\n s.height = 400;\r\n s.textureTarget = GL_TEXTURE_2D;\r\n s.useDepth = true;\r\n s.depthAsTexture = true;\r\n s.dethInternalFormat = GL_DEPTH_COMPONENT24;\r\n```\r\n\r\n...then the colour texture's dimensions are set to be the next POTs up but the depth texture's dimensions don't seem to be. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1186","comments":2,"milestone":null,"number":1186,"assignee":null,"closed_at":null,"title":"ofFbo depthBufferTex can be inconsistent with colour texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"created_at":"2012-04-18T15:08:32Z","state":"open","user":{"url":"https://api.github.com/users/neilmendoza","gravatar_id":"3e46b12547e7bac19eb982bc512b19c4","avatar_url":"https://secure.gravatar.com/avatar/3e46b12547e7bac19eb982bc512b19c4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"neilmendoza","id":818571},"id":4174070,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1186"},{"updated_at":"2012-05-16T09:44:27Z","body":"As mentioned here: http://forum.openframeworks.cc/index.php?topic=9107.0\r\nOpenGLES2 not working. It is always falls back to ES1. I tested it only on iPad2 with iOS 5.0.1.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1178","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":1178,"assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"julapy","id":331382},"closed_at":null,"title":"OpenGLES2 not working","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2012-04-16T11:19:36Z","state":"open","user":{"url":"https://api.github.com/users/erinnovations","gravatar_id":"29639bbeb3afdde8fb3c7e273e5e43c6","avatar_url":"https://secure.gravatar.com/avatar/29639bbeb3afdde8fb3c7e273e5e43c6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"erinnovations","id":253455},"id":4132608,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1178"},{"updated_at":"2012-04-14T13:45:55Z","body":"in ofTexture::loadData we are doing:\r\n\r\n\r\n\t//------------------------ likely, we are uploading continuous data\r\n\tGLint prevAlignment;\r\n\tglGetIntegerv(GL_UNPACK_ALIGNMENT, &prevAlignment);\r\n\tglPixelStorei(GL_UNPACK_ALIGNMENT, 1);\r\n\r\nany reason for this? leaving the default works too. i've been working with a huge video and the transfer rates on some cards were super slow with ofTexture::loadData. even glDrawPixels was faster, i've finally used pbo's but later looking at ofTexture discovered this lines and i suspect that it could be the reason for loadData being slower, haven't tested it yet though.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1175","comments":0,"milestone":null,"number":1175,"assignee":null,"closed_at":null,"title":"GL_UNPACK_ALIGNMENT 1 in ofTexture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"created_at":"2012-04-14T13:45:42Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"arturoc","id":48240},"id":4117762,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1175"},{"updated_at":"2012-05-16T09:39:22Z","body":"one returns the result (dot) the other performs in place (cross), i.e. overrides the contents\r\nThe two definitions are inconsistent\r\npropose rename `ofVec3f::dot` to become `ofVec3f::getDotted` in line with `ofVec3f::getCrossed`","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1174","comments":9,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":1174,"assignee":null,"closed_at":null,"title":"bug : inconsistent API for ofVec3f::dot and ofVec3f::cross","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"created_at":"2012-04-13T17:09:38Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4108582,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1174"},{"updated_at":"2012-04-14T04:20:36Z","body":"If you pass a string containing non-ascii characters to ofToHex(), the non-ascii characters (with character codes above 127) will be output as ffffxxxx (it depends on the exact character value and the size of the int type on the platform you are compiling for).\r\nThe problem is due to an incorrect cast in the ostringstream operation inside the loop.\r\nInstead of directly casting the (signed) char from the input character to an unsigned int, the input character must first be cast to an unsigned char.\r\nIn other words, instead of:\r\n``` out << setfill('0') << setw(2) << hex << (unsigned int) value[i];```\r\nit should be:\r\n``` out << setfill('0') << setw(2) << hex << (unsigned int) ((unsigned char)value[i]);```\r\nor maybe even:\r\n``` out << setfill('0') << setw(2) << hex << static_cast(static_cast(value[i]));```\r\nif you prefer C++ style casts over C style casts. :)\r\n\r\nHTH\r\n/Jesper","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1173","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":1173,"assignee":null,"closed_at":null,"title":"ofToHex(string) is wrong for non-ascii input","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"created_at":"2012-04-13T14:42:30Z","state":"open","user":{"url":"https://api.github.com/users/pappis","gravatar_id":"fbf3d56c96cf5b891056530066549692","avatar_url":"https://secure.gravatar.com/avatar/fbf3d56c96cf5b891056530066549692?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"pappis","id":1640543},"id":4104336,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1173"},{"updated_at":"2012-04-12T10:09:42Z","body":"if I call ofBeginSaveScreenAsPDF using ofEasyCam or the ofCamera, the pdf doesn't have the perspective of the camera. There's a parameter b3d to ofBeginSaveScreenAsPDF which I interpret to be \"render taking into account 3d transforms\", but it doesn't seem to have any effect.\r\n\r\nmore on the forum\r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,9542.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1171","comments":0,"milestone":null,"number":1171,"assignee":null,"closed_at":null,"title":"ofBeginSaveScreenAsPDF ignores 3d transformations","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"created_at":"2012-04-12T10:09:42Z","state":"open","user":{"url":"https://api.github.com/users/jesusgollonet","gravatar_id":"5008d5295e9bc2636313c7b50ed5981d","avatar_url":"https://secure.gravatar.com/avatar/5008d5295e9bc2636313c7b50ed5981d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jesusgollonet","id":31100},"id":4081188,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1171"},{"updated_at":"2012-04-13T14:54:18Z","body":"if I have `ofEvent boolEvent` and i try to call `ofNotifyEvent( boolEvent, true )` i get a `no matching function` error as the compiler cannot coerce `true` to a `bool &`.\r\n\r\nto solve this, instead of this:\r\n\r\n~~~~\r\nofEvent boolEvent;\r\n...\r\nofNotifyEvent( boolEvent, true );\r\n~~~~\r\n\r\ni need to write this:\r\n\r\n~~~~\r\nofEvent boolEvent;\r\n...\r\nbool myBool = true;\r\nofNotifyEvent( boolEvent, myBool );\r\n~~~~\r\n\r\nthis is kind of annoying.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1167","comments":2,"milestone":null,"number":1167,"assignee":null,"closed_at":null,"title":"ofNotifyEvent( boolEvent, true ) fails to compile","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2012-04-11T12:03:34Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"damiannz","id":144366},"id":4063456,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1167"},{"updated_at":"2012-04-11T13:21:33Z","body":"It's currently not possible to have an event without arguments\r\n\r\n`ofEvent testEvent;` -- fails to compile\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1166","comments":2,"milestone":null,"number":1166,"assignee":null,"closed_at":null,"title":"ofEvent lacks simple, argument-free use case","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2012-04-11T12:00:19Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"damiannz","id":144366},"id":4063417,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1166"},{"updated_at":"2012-04-21T15:41:01Z","body":"It's currently not possible to write `ofLogError( \"serial\", \"error %i connecting to serial\", serialError )`. \r\n\r\nThere should be `ofLogError( string module, string format, ... )` methods as with normal ofLog.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1165","comments":6,"milestone":null,"number":1165,"assignee":null,"closed_at":null,"title":"ofLogError, ofLogWarning lack format, ... args","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2012-04-11T11:56:33Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"damiannz","id":144366},"id":4063366,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1165"},{"updated_at":"2012-04-10T16:47:19Z","body":"change `allocate(_w, _h, OF_IMAGE_COLOR);` to `allocate(_w, _h, OF_IMAGE_COLOR_ALPHA);` (via reza on irc)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1152","comments":4,"milestone":null,"number":1152,"assignee":null,"closed_at":null,"title":"grabScreen in ofImage fails on Android","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2012-04-09T17:15:21Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"kylemcdonald","id":157106},"id":4032047,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1152"},{"updated_at":"2012-05-16T09:26:13Z","body":"the module name is no longer printed if it's coming from OF itself.\r\n\r\ninstead of the constant name, a human-readable string is printed.\r\n\r\nexample output from project generator: http://pastebin.com/raw.php?i=0dp938Jx","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1151","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":1151,"assignee":null,"closed_at":null,"title":"shorten + simplify ofLog output","labels":[],"created_at":"2012-04-08T21:13:14Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"kylemcdonald","id":157106},"id":4023525,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/1151.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1151.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1151"},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1151"},{"updated_at":"2012-04-17T14:47:36Z","body":"\r\nWorking on the project generator, which has a fair amount of logging, I'm concerned about how much space we loose on each line: \r\n\r\n OF: OF_LOG_NOTICE:\r\n\r\nit's about 15-20 characters or so, pretty significant where each line is 80, so alot more wrapping happens then I'd like, making the results less cleaner or organized. \r\n\r\nI propose we alter \r\n\r\n string ofGetLogLevelName(ofLogLevel level){\r\n switch(level){\r\n case OF_LOG_VERBOSE:\r\n return \"OF_LOG_VERBOSE\";\r\n break;\r\n case OF_LOG_NOTICE:\r\n return \"OF_LOG_NOTICE\";\r\n break;\r\n case OF_LOG_WARNING:\r\n return \"OF_LOG_WARNING\";\r\n break;\r\n case OF_LOG_ERROR:\r\n return \"OF_LOG_ERROR\";\r\n break;\r\n case OF_LOG_FATAL_ERROR:\r\n return \"OF_LOG_FATAL_ERROR\";\r\n break;\r\n case OF_LOG_SILENT:\r\n return \"OF_LOG_SILENT\";\r\n break;\r\n default:\r\n return \"\";\r\n }\r\n }\r\n\r\nso that we can have something like : \r\n\r\n (of:notice) \r\n (of:verbose) \r\n (of:error) \r\n\r\nor something smaller and if we loose the all caps, maybe less threatening :)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1150","comments":4,"milestone":null,"number":1150,"assignee":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"kylemcdonald","id":157106},"closed_at":null,"title":"propose shortening ofLog console message length","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2012-04-08T20:32:49Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":4023305,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1150"},{"updated_at":"2012-04-07T15:00:32Z","body":"Hey all\r\n\r\nA few sections of the repo need some love to put them in line with the project generator:\r\n\r\n1. Readme's\r\n2. Rogue old project generators\r\n3. Document complementing tools\r\n\r\n# Readme\r\n\r\nThe readme's in the root of the repo need some love\r\nnone of them mention project generator \r\n\r\ni feel like each should be a description of how to get to a working project generator on each of the respective platforms\r\n\r\nalso note:\r\n* .vs2010 is missing\r\n* readme.txt repeats information from the other readme's (i.e. it's a list of platform specific instructions)\r\ni think this should be perhaps a little description of oF and a few tips on how to get started\r\n\r\n# Rogue old 'project generators' / documenting complementary tools for project generator\r\n\r\nHere's things I can find in the repo which don't make sense to me at the moment:\r\n\r\n* `openFrameworks\\scripts\\????\\compileAllExamples.bat`\r\n** is this supposed to be run (optionally) after the project generator?\r\n** why is the project template within this folder?\r\n* `openFrameworks\\scripts\\????\\createProjects.py` \r\n** if this isn't supposed to be used anymore, lets delete it immediately (we can always recover in emergencies)\r\n\r\nand the 'other' folder in the root.. perhaps never took off?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1146","comments":0,"milestone":null,"number":1146,"assignee":null,"closed_at":null,"title":"Document Project Generator / clean out old tools","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"created_at":"2012-04-07T14:43:53Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4015514,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1146"}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=3 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4980'), ('content-length', '51857'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"486232af96fd8aa5ef0ba6e0afe32983"'), ('date', 'Tue, 29 May 2012 06:43:36 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-04-07T19:49:31Z","body":"When attempting to render a mesh to a PDF the ofCairoRender does not output a filled mesh, thus the PDF output looks empty. \r\n\r\nIf you open the file in illustrator you'll see the paths, there but with no stroke or fill. \r\n\r\nWhen I dug into the issue a bit further I realized that Cairo isn't capable of rendering shapes with per vertex colors easily...\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1145","comments":3,"milestone":null,"number":1145,"assignee":null,"closed_at":null,"title":"ofCairoRenderer ofMesh doesn't render properly to PDF","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2012-04-06T22:02:01Z","state":"open","user":{"url":"https://api.github.com/users/rezaali","gravatar_id":"548374013b9c6e50ebbd2294e12d4f31","avatar_url":"https://secure.gravatar.com/avatar/548374013b9c6e50ebbd2294e12d4f31?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"rezaali","id":555207},"id":4010494,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1145"},{"updated_at":"2012-05-01T04:21:01Z","body":"When using the ofColor subtraction operator, negative results are clamped to positive values instead of 0. Values are circulating between 0 and 255, which could be useful for hue in HSV but in most cases (R, G, B..) is not what I would expect.\r\n\r\n ofColor a(10, 40, 80);\r\n ofColor b(20, 5, 30);\r\n ofColor c = (a-b); // I get: (246, 45, 50), I would expect: (0, 45, 50)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1144","comments":9,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":1144,"assignee":null,"closed_at":null,"title":"ofColor subtraction and negative values","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2012-04-06T07:56:44Z","state":"open","user":{"url":"https://api.github.com/users/jembezmamy","gravatar_id":"69a23dc9914cb6bc3202c50e15eabba0","avatar_url":"https://secure.gravatar.com/avatar/69a23dc9914cb6bc3202c50e15eabba0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jembezmamy","id":720354},"id":4001148,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1144"},{"updated_at":"2012-04-04T12:07:24Z","body":"When using the dragEvent ofDragInfo I always get the following error message:\r\n\r\nwarning: Could not find object file \"/Users/theo/Documents/CODE/__OPENFRAMEWORKS/gitOF/openFrameworks/apps/devApps/macDragDropExample/buildGlutFrameworkHackedWindowLevel10.4/libForeground.a(macx_foreground.o)\" - no debug information available for \"/Users/mcast/Code/GLUT-ToPost/macx_foreground.m\".\r\n\r\nIt doesn't seem to hurt my code but is a bit annoying, especially early on when I wasn't sure if it had anything to do with compile failings. Not a big issue obviously, but it might confuse some other newbie's also.\r\n\r\n(OF 0.07 - Xcode 4.2.1 - OS X 10.7.3 - macbook pro) ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1138","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":1138,"assignee":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"closed_at":null,"title":"benign error message","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"created_at":"2012-04-04T11:05:57Z","state":"open","user":{"url":"https://api.github.com/users/davideo71","gravatar_id":"42c3c1acbdb4a998d8096b49745219cd","avatar_url":"https://secure.gravatar.com/avatar/42c3c1acbdb4a998d8096b49745219cd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"davideo71","id":1611385},"id":3968742,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1138"},{"updated_at":"2012-04-03T17:37:10Z","body":"theo's #1133 made me think about ways that i use noise regularly that might also be abstracted.\r\n\r\ni would also like to see versions of noise that return multidimensional results. normally i do something like:\r\n\r\n\tofVec2 a(ofSignedNoise(t, 0), ofSignedNoise(0, t)); // 1D -> 2D\r\n\tofVec2 b(ofSignedNoise(x, 0), ofSignedNoise(0, y)); // 2D -> 2D\r\n\tofVec3 c(ofSignedNoise(t, 0, 0), ofSignedNoise(0, t, 0), ofSignedNoise(0, 0, t)); // 1D -> 3D\r\n\tofVec3 d(ofSignedNoise(x, 0, 0), ofSignedNoise(0, y, 0), ofSignedNoise(0, 0, (x + y) / 2)); // 2D -> 3D\r\n\r\nand it would be good to spend some time making sure these are really good ways of doing it, then implement them inside some functions like `ofSignedNoise2()` and `ofSignedNoise3()` (for example).","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1134","comments":2,"milestone":null,"number":1134,"assignee":null,"closed_at":null,"title":"multidimensional noise output","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2012-04-01T16:44:55Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"kylemcdonald","id":157106},"id":3917377,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1134"},{"updated_at":"2012-04-01T17:48:12Z","body":"ie: the equivalent of doing \r\n\r\nfloat rate = 0.02 + ofNoise(ofGetElapsedTimeF() * 0.02, 100.0) * 0.015;\r\nfloat value = ofSignedNoise( rate, x, y ); \r\n\r\nas one function. \r\n\r\nalso see kyle's #1134 for other noise utils. \r\n\r\nI find myself needing this quite often for more natural random motion where the rate of change is variable. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1133","comments":0,"milestone":null,"number":1133,"assignee":null,"closed_at":null,"title":"ofNoise and ofSignedNoise with 2nd order control for rate.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2012-04-01T15:45:11Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":3917018,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1133"},{"updated_at":"2012-04-02T02:05:52Z","body":"This is a feature discussion issue for what string features we should add to of.\r\nofZach mentioned some regexp ones from P5 match matchAll\r\nWould be great to get some eyes on this.\r\n\r\nOne approach would be a static class or namespace.\r\nThe idea would be we could include a variety of handy functions that would be useful for people not wanting to get into regexp\r\n\r\n\tofString::contains(str, \"apple\") //returns bool\r\n\tofString::starts(str, \"The\") //returns bool\r\n\tofString::ends(str, \".\") //returns bool\r\n\tofString::count(str, \"apples\") //count how many times apples appears in the \r\n\tofString::join(myVectorStr, \", \"); //this is currently ofJoinString\r\n\tofString::split(someText, \".\"); //this is currently ofSplitString\r\n\tofString::split(someHtml, \"<\", \">\"); //this is the same but returns a vector of things between the start and end delims\r\n\tofString::limit(someText, 200); //limit the text to 200 characters. optional arg to add ... to the end.\r\n\r\nQuestions:\r\n- Should we mirror P5 with match and matchAll or should we indicate that regexp is required? ie regexMatch regexMatchAll ?\r\n- Other string utils we could add?\r\n- Should it be ofStringUtils:: or ofString:: ?\r\n- Something to do a split and then return a vector of float int etc?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1132","comments":6,"milestone":null,"number":1132,"assignee":null,"closed_at":null,"title":"ofStringUtils:: feature discussion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2012-03-31T17:52:48Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":3911629,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1132"},{"updated_at":"2012-05-27T17:40:30Z","body":"This is a feature discussion issue for what should be added / changed to ofTTF.\r\nWould be great to get some eyes on this from @vtron @ofzach @arturoc and anyone with thoughts on the matter.\r\n\r\nTextAreas:\r\n- Fit text to a box\r\n- Handle overflow ( ie either truncate or resize box height )\r\n- non ragged options\r\n- could textAreas work with both ofTTF and ofDrawBitmapString ? abstract text formatting?\r\n\r\nAlignment:\r\n- Left align a string\r\n- Right align\r\n- Center\r\n- Top align \r\n- Base align \r\n\r\nSpacing:\r\n- Kerning\r\n- Leading / line height\r\n\r\nLoading:\r\n- Allow for loading a font up to a max size for drawing at different sizes. \r\n- Allow for selection and loading of specific sizes within one object. ie: myFont.setCurrentSize(12); \r\n- Font family's / sets ? Bold, Italic etc? \r\n\r\nDrawing:\r\n- Allow for drawing font at different sizes. Scale font as needed. \r\n\r\nFormatting:\r\n- Could we somehow allow a string to have different colors, sizes. Right now it is a pain to change colors or sizes. \r\n- would this be replicating basic html or another approach? maybe better as an addon?\r\n\r\nInfo:\r\n- Ability to get the x and y position of the nth character in the string? useful maybe for cursor or selection?\r\n\r\n**Update:**\r\n-Underline\r\n-Render rect behind text ( a la what @kylemcdonald added to ofDrawBitmapString)\r\n-Scale type to fit a rect + keep aspect ratio\r\n-Crazy: text along a path :) ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1131","comments":25,"milestone":null,"number":1131,"assignee":null,"closed_at":null,"title":"ofTTF feature discussion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography","color":"DDDDDD"}],"created_at":"2012-03-31T17:36:25Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":3911537,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1131"},{"updated_at":"2012-03-31T14:44:01Z","body":"Agree on a common format for a header in the contributed example files.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1130","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":1130,"assignee":null,"closed_at":null,"title":"Define standard header for examples.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2012-03-31T14:44:01Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"id":3910580,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1130"},{"updated_at":"2012-04-24T02:12:05Z","body":"\r\n\r\nXcode 4 mangles OF projects pretty badly in the following ways: \r\n\r\na) it autogenerates schemes, and \"openframeworks\" appears as the chosen scheme\r\nb) it sometimes chooses the wrong SDK for OF -- is there a way to set that?\r\nc) debug and release are not really clear, part of this is a shift in xcode -- but it's much harder to see how things are compiled and to set release or debug\r\nd) I still had issues with OF needing to be recompiled all the time. I tried to fix this, but we should make sure it's done right. the of lib was appearing red even though it had been built, etc. \r\n\r\nI've tried to fix some of this in detroit with the PG, but I don't think it's the right way to do it. Overall, it would be great to have projects work smoothly on xcode 4...\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1129","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":1129,"assignee":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"closed_at":null,"title":"xcode 4 issues: scheme, auto-generation of schemes, rebuilding OF, sdk, etc","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"created_at":"2012-03-31T14:39:04Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":3910555,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1129"},{"updated_at":"2012-03-31T16:32:04Z","body":"When deprecating api's (e.g. ofEvents, ofVertexes), perhaps we could help automate the changes through simple scripts to update api\r\nSuggest sticking to something close to how uncrustify scripts are run (and perhaps there are tools like uncrustify but specifically for this task)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1128","comments":1,"milestone":null,"number":1128,"assignee":null,"closed_at":null,"title":"upgrade scripts","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"created_at":"2012-03-31T14:38:19Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":3910549,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1128"},{"updated_at":"2012-04-09T16:47:04Z","body":"It would be nice (and useful for testing the PG) if the PG would get an option to clean the examples folders of all generated files. \r\n\r\nCurrently, the quickest option is to delete the examples folder on disk, and do `git reset --hard HEAD`.\r\n\r\nAs before, milestoned for 0071, but feel free to push back.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1126","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":1126,"assignee":null,"closed_at":null,"title":"PG Feature request: Clean examples folder","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"created_at":"2012-03-30T12:51:30Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"id":3897090,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1126"},{"updated_at":"2012-03-29T16:47:29Z","body":"there is a hard limit of 100 files when using drag & drop into an of app. not sure if it's an of issue, but am curious if it comes from the hacked glutDragEventFunc ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1124","comments":0,"milestone":null,"number":1124,"assignee":null,"closed_at":null,"title":"void dragEvent(ofDragInfo dragInfo) limited to 100 files in osx lion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"created_at":"2012-03-29T16:47:29Z","state":"open","user":{"url":"https://api.github.com/users/jesusgollonet","gravatar_id":"5008d5295e9bc2636313c7b50ed5981d","avatar_url":"https://secure.gravatar.com/avatar/5008d5295e9bc2636313c7b50ed5981d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jesusgollonet","id":31100},"id":3883598,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1124"},{"updated_at":"2012-03-29T13:05:25Z","body":"When loading a file with ofImage, ofSoundPlayer , ofVideoPlayer-file or any ofFile it would be nice to be able to know if the file changed since it was loaded.\r\n\r\nIts very simple to implement with Poco::File->getLastModified() and it would be very nice if this would be built into the above classes.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1120","comments":2,"milestone":null,"number":1120,"assignee":null,"closed_at":null,"title":"isFileChanged() for ofImage, ofVideoPlayer, ofSoundPlayer and ofFile","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2012-03-28T16:21:45Z","state":"open","user":{"url":"https://api.github.com/users/imanhp","gravatar_id":"7398ab0bbd07832d0289f26773e65077","avatar_url":"https://secure.gravatar.com/avatar/7398ab0bbd07832d0289f26773e65077?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"imanhp","id":1216228},"id":3856005,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1120"},{"updated_at":"2012-03-30T12:19:59Z","body":"paths.make should be in the repo as an example on how to set it up correctly, but changes (i.e. paths unique to every user) to it should be ignored cause everyone will have a different version in their computers so we don't want personal changes to appear in git status.\r\n\r\nI think the best way to solve this is to rename it to paths.make.default, keep this in the repo, maybe with `` instead of your path, and have people make their own paths.make from that one. We track changes to paths.make.default and ignore paths.make. \r\n\r\nThis will probably also need a mechanism in the makefile to fail gracefully and remind the user, if his customized paths.make is missing.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1118","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":1118,"assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"arturoc","id":48240},"closed_at":null,"title":"Default paths.make for Android","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/android","name":"android","color":"2bc4ad"}],"created_at":"2012-03-28T12:19:39Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"id":3850655,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1118"},{"updated_at":"2012-04-18T17:13:36Z","body":"Once ofSetFrameRate() is called, I can't find a way to retrieve it. I think implementing a ofGetDesiredFrameRate() in ofAppRunner would make sense, also adding getDesiredFrameRate() to ofAppBaseWindow and all subclasses, where the actual value is stored. \r\n\r\nThis can be useful to compare the desired frame rate with actual frame rate and react accordingly if required.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1117","comments":0,"milestone":null,"number":1117,"assignee":null,"closed_at":null,"title":"Can't retrieve desired frame rate once set","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2012-03-27T11:48:00Z","state":"open","user":{"url":"https://api.github.com/users/armadillu","gravatar_id":"b87a82d7c86161432ee6388c7cbd5e2c","avatar_url":"https://secure.gravatar.com/avatar/b87a82d7c86161432ee6388c7cbd5e2c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"armadillu","id":167057},"id":3825582,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1117"},{"updated_at":"2012-03-26T22:27:14Z","body":"https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/gl/ofVbo.cpp#L343\r\n\r\nIndices should be specified as GL_ELEMENT_ARRAY_BUFFER unless I am mistaken.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1116","comments":5,"milestone":null,"number":1116,"assignee":null,"closed_at":null,"title":"ofVBO updateIndexData incorrect buffer type.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"created_at":"2012-03-26T18:26:05Z","state":"open","user":{"url":"https://api.github.com/users/vade","gravatar_id":"37aca214d4875cd90af9d67072c82642","avatar_url":"https://secure.gravatar.com/avatar/37aca214d4875cd90af9d67072c82642?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"vade","id":65011},"id":3813852,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1116"},{"updated_at":"2012-03-26T18:45:51Z","body":"The default optimization settings for debug builds in example XCode projects is set to Fastest,Smallest thus making debugging very difficult, is there a specific reason for this?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1115","comments":3,"milestone":null,"number":1115,"assignee":null,"closed_at":null,"title":"optimization level in xcode projects","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"}],"created_at":"2012-03-26T17:05:14Z","state":"open","user":{"url":"https://api.github.com/users/colormotor","gravatar_id":"2548dbd6a86902ed5260b5f76710b83c","avatar_url":"https://secure.gravatar.com/avatar/2548dbd6a86902ed5260b5f76710b83c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"colormotor","id":1239872},"id":3812318,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1115"},{"updated_at":"2012-03-31T15:31:31Z","body":"I had some problems because of macro definitions in ofArduino.h overriding an enum in a a class of my codebase ( SHIFT )\r\nIt's not exactly a bug! but I would suggest using enums or const int instead of the macros to avoid any conflicts\r\nI solved the problem by modifying \r\n#define SHIFT 0x05 \r\ninto \r\nconst int SHIFT = 0x05;\r\n\r\nanother solution could be using enumerations as \r\nenum\r\n{\r\n ...\r\n SHIFT = 0x05,\r\n etc...\r\n};\r\n\r\nI believe this would not break any of the existing code\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1114","comments":1,"milestone":null,"number":1114,"assignee":{"url":"https://api.github.com/users/joshuajnoble","gravatar_id":"10960ba0f305803a1cdc7cd6188d643b","avatar_url":"https://secure.gravatar.com/avatar/10960ba0f305803a1cdc7cd6188d643b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"joshuajnoble","id":237423},"closed_at":null,"title":"macros in ofArduino","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2012-03-26T17:02:21Z","state":"open","user":{"url":"https://api.github.com/users/colormotor","gravatar_id":"2548dbd6a86902ed5260b5f76710b83c","avatar_url":"https://secure.gravatar.com/avatar/2548dbd6a86902ed5260b5f76710b83c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"colormotor","id":1239872},"id":3812275,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1114"},{"updated_at":"2012-03-27T14:56:56Z","body":"Hello.\r\n\r\nI'm trying to run camera frame grabing in OSX Lion.\r\nSimple ofVideoGrabber doesn't work - even if I link it with 10.6 SDK (and 10.6 is deployment target) I receive crash in initialization of ofVideoGrabber. Details are the same as in http://forum.openframeworks.cc/index.php/topic,6776.0.html\r\n\r\nI tryed QtKitMovieGrabberExample. It had some problems in compilation - texture property was not synthesized, I wrote this property and compilation run well.\r\nBut linking is fault. All I receive form linker is:\r\n\r\n*Ld bin/movieGrabberExampleDebug.app/Contents/MacOS/movieGrabberExampleDebug normal i386\r\n cd /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample\r\n setenv MACOSX_DEPLOYMENT_TARGET 10.6\r\n /Developer/usr/bin/clang++ -arch i386 -isysroot /Developer/SDKs/MacOSX10.6.sdk -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freeimage/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/GLee/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/rtAudio/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/fmodex/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freetype/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx -F/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin -F/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/glut/lib/osx -filelist /Users/yltastep/Library/Developer/Xcode/DerivedData/movieGrabberExample-aftkspwrgtotrteyzaplfbqzeasd/Build/Intermediates/movieGrabberExample.build/Debug/movieGrabberExample.build/Objects-normal/i386/movieGrabberExampleDebug.LinkFileList -mmacosx-version-min=10.6 -dead_strip ../../../libs/poco/lib/osx/PocoFoundation.a ../../../libs/poco/lib/osx/PocoNet.a ../../../libs/poco/lib/osx/PocoXML.a ../../../libs/poco/lib/osx/PocoUtil.a ../../../libs/tess2/lib/osx/tess2.a ../../../libs/glew/lib/osx/glew.a ../../../libs/cairo/lib/osx/cairo-script-interpreter.a ../../../libs/cairo/lib/osx/cairo.a ../../../libs/cairo/lib/osx/pixman-1.a ../../../libs/fmodex/lib/osx/libfmodex.dylib ../../../libs/rtAudio/lib/osx/rtAudio.a /Users/yltastep/Documents/XCode/openframeworks/libs/openFrameworksCompiled/lib/osx/openFrameworksDebug.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/GLee/lib/osx/GLee.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/rtAudio/lib/osx/rtAudio.a -framework AGL -framework ApplicationServices -framework AudioToolbox -framework Carbon -framework CoreAudio -framework CoreFoundation -framework CoreServices -framework OpenGL -framework QuickTime -framework AppKit -framework Cocoa -framework IOKit -framework GLUT /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoFoundation.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoNet.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoUtil.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoXML.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freetype/lib/osx/freetype.a -lfmodex /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx/freeimage.a -framework QTKit -framework Quartz -framework QuartzCore -o /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin/movieGrabberExampleDebug.app/Contents/MacOS/movieGrabberExampleDebug*\r\n\r\n**Command /Developer/usr/bin/clang++ failed with exit code 1**\r\n\r\nSo no explanation of problem.\r\n\r\nIs somebody ran this example successfully ?\r\nAnd what I'm doing wrong ?\r\n\r\nThanks in advance !\r\n\r\nWith regards.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1112","comments":9,"milestone":null,"number":1112,"assignee":null,"closed_at":null,"title":"Issue with QtKitMovieGrabberExample in apps/devapps","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"created_at":"2012-03-26T12:11:44Z","state":"open","user":{"url":"https://api.github.com/users/OlexandrStepanov","gravatar_id":"aa6e2a475cab75513c9cc435b28eef31","avatar_url":"https://secure.gravatar.com/avatar/aa6e2a475cab75513c9cc435b28eef31?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"OlexandrStepanov","id":971079},"id":3807459,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1112"},{"updated_at":"2012-03-25T20:07:16Z","body":"Todd's example has this code a few times in it by hand, but I'm thinking it's so simple it could be added along side ofSplitString() and would be really useful ? for sure, more string utility functions are helpful, and for basic text parsing, this is great. Poco gives us this for free, so it doesn't seem like a huge stretch to think of something like this, plus find and replace, etc. Would make the regex example much shorter. \r\n\r\np5 has something similar, if that's a helpful argument: \r\n\r\nhttp://processing.org/reference/matchAll_.html\r\n\r\n\r\n\tvector < string > ofxRegex::getMatchedStrings (string contents, string regex );\r\n\tvector < string > ofxRegex::getMatchedStrings (string contents, string regex ){\r\n \r\n\t vector < string > results;\r\n\t RegularExpression regEx(regex);\r\n\t RegularExpression::Match match;\r\n \r\n\t while(regEx.match(contents, match) != 0) {\r\n \r\n\t // we get the sub string from the content\r\n\t // and then trim the content so that we\r\n\t // can continue to search \r\n\t string foundStr = contents.substr(match.offset, match.length);\r\n\t contents = contents.substr(match.offset + match.length);\r\n \r\n\t results.push_back(foundStr);\r\n \r\n\t }\r\n\t return results;\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1110","comments":1,"milestone":null,"number":1110,"assignee":null,"closed_at":null,"title":"add a simple regex function like ofSplitString()","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2012-03-25T18:56:37Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":3799872,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1110"},{"updated_at":"2012-03-25T18:50:13Z","body":"code to recreate: \r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::setup(){\r\n system(\"pwd;\");\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::update(){\r\n system(\"pwd;\");\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::draw(){\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::keyPressed(int key){\r\n cout << ofToDataPath(\"temp\") << endl;\r\n}\r\n\r\nproduces: \r\n\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n../../../data/temp\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin/emptyExampleDebug.app/Contents/MacOS\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin/emptyExampleDebug.app/Contents/MacOS\r\n\r\nthis is because the code that fixes OSX paths isn't called until you call ofToDataPath(). a good fix I think would be to set ofDataPathRoot (which happens in ofToDataPath) somewhere early in ofRunApp(). Or should it happen even earlier?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1109","comments":3,"milestone":null,"number":1109,"assignee":null,"closed_at":null,"title":"mac paths don't seem right until you call \"ofToDataPath()\"","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"created_at":"2012-03-25T18:18:28Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":3799653,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1109"},{"updated_at":"2012-04-09T13:06:18Z","body":"easycam behaves as expected when inited but as soon as I change it's target it begins to behave strangely.\r\nthere's this imaginary sphere that we are rotating (it's diameter is min (viewport.width, vieport.height)), when the mouse is dragged from inside to outside of it the rotation just jumps to a \"random\" rotation. \r\nas well when you have a the camera rotated more than 180º in some axis the \"trackball\" doesn't behave as expected. yet this behavior is not seen when the target hasn't been changed.\r\n\r\nDoes any one know what's going on?\r\n\r\nI just came across this but I haven't gone deeply into how easycam handles the mouse to rotate. \r\nI'll do so ASAP. If someone can give me any clues I'll really apreciate it.\r\n\r\nregards!","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1108","comments":7,"milestone":null,"number":1108,"assignee":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"closed_at":null,"title":"easyCam weird behavior when target changed","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"created_at":"2012-03-25T00:01:54Z","state":"open","user":{"url":"https://api.github.com/users/roymacdonald","gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"roymacdonald","id":974878},"id":3795495,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1108"},{"updated_at":"2012-04-09T16:47:18Z","body":"It would be great if the PG could also generate projects/examples for usage with Eclipse, i.e. just the makefile related files, no CB or other project files.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1103","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":1103,"assignee":null,"closed_at":null,"title":"PG feature request: Generate makefile-only projects","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"created_at":"2012-03-21T21:43:34Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"id":3754055,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1103"},{"updated_at":"2012-03-19T16:18:43Z","body":"whenever i call ofLog beneath openmp i have to wrap it in ```#pragma omp critical (ofLog)``` otherwise i get a crash\r\ni found adding the line above \r\nhttps://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/utils/ofLog.cpp#L84\r\nworks pretty well\r\n\r\nany objections to having it in there?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1098","comments":3,"milestone":null,"number":1098,"assignee":null,"closed_at":null,"title":"feature / bug - #pragma omp critical(ofLog)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"created_at":"2012-03-19T14:04:51Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":3710293,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1098"},{"updated_at":"2012-03-15T20:34:17Z","body":"I'm finding that `ofDirector::listDir, open` are extremely slow\r\nit seems that it's actually loading the entire dir contents into memory\r\n\r\nit's possible to then do something like\r\n```\r\nofLoadImage(myPixels, dir.getFile(i));\r\n```\r\nand you can quickly load that image from memory. which is faster than\r\n```\r\nofLoadImage(myPixels, dir.getFile(i).getAbsolutePath());\r\n```\r\n\r\nBut this doesn't seem to work consistently (even though the slow listing is consistent)\r\nand surely isn't what we want.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1075","comments":2,"milestone":null,"number":1075,"assignee":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"closed_at":null,"title":"bug ofDirectory::open(string path) actually loads the entire dir into memory?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"created_at":"2012-03-15T07:54:55Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":3662214,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1075"}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=4 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4979'), ('content-length', '50026'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"76bc0aa4d9c592b059742cd1e992e558"'), ('date', 'Tue, 29 May 2012 06:43:37 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-03-14T16:03:06Z","body":"Hello,\r\nI needed alpha channel in short length video for a recent project.\r\nIn the forum there is some old zip file for a ofxAlphaVideoPlayer that is still working, but that's OS X & windows only as it's based on QT.\r\nI'm working on linux, and I didn't find anything for GStreamer, so I modified the existing ofGstUtils and ofGstVideoPlayer.\r\nWould you mind if I do a pull request for this?\r\nI can also provide an example with a short length video using animation codec.\r\nWhat do you think?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1070","comments":6,"milestone":null,"number":1070,"assignee":null,"closed_at":null,"title":"Alpha movies in GStreamer","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2012-03-14T13:02:41Z","state":"open","user":{"url":"https://api.github.com/users/manuelgeoffray","gravatar_id":"c1ec5161b69b4a990436deafb1170d64","login":"manuelgeoffray","id":808090,"avatar_url":"https://secure.gravatar.com/avatar/c1ec5161b69b4a990436deafb1170d64?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3647640,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1070"},{"updated_at":"2012-03-17T19:26:40Z","body":"Hey !\r\n\r\nMe again. Didn't find anywhere this infos. I'm currently testing the travis-ci.org service.\r\nAs many people are working on the project and as many many issue are raised, and fixed, I thought it could be great to add some test and thus the travis service.\r\n\r\nIt would avoid the problem met here :\r\nhttps://github.com/openframeworks/openFrameworks/commit/7ca7833ea1afb6bd5a6c54031e3fa688aa0c0ba8\r\nand the discussion here :\r\nhttps://github.com/openframeworks/openFrameworks/issues/804\r\nor there :\r\nhttps://github.com/openframeworks/openFrameworks/pull/921\r\n\r\nI read that :\r\n\r\n>feel free to make a unitTests folder at the root level of OF -\r\n> that is where all unitTests will go.\r\n\r\nBut didn't find them.\r\n\r\nThe travis service will permit to get the little badge we know well : \r\n[![Build Status](https://secure.travis-ci.org/soixantecircuits/openFrameworks.png?branch=master)](http://travis-ci.org/soixantecircuits/openFrameworks)\r\n\r\nAlso, why not adding some spec test, to ensure future development of features.\r\nI'm currently reading :\r\nhttp://www.squidoo.com/cplusplus-behaviour-driven-development-tools#module124841511\r\nhttp://sourceforge.net/apps/mediawiki/turtle/index.php?title=Turtle\r\n\r\nFor those who want some other nice reading :\r\n\r\nhttp://gamesfromwithin.com/exploring-the-c-unit-testing-framework-jungle\r\n\r\nThe travis test is here, currently it is a total fake, but I just proposed the idea of a test driven development\r\nhttp://travis-ci.org/#!/soixantecircuits/openFrameworks/builds/854259 ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1068","comments":10,"milestone":null,"number":1068,"assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"closed_at":null,"title":"Continuous integration","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2012-03-13T15:49:23Z","state":"open","user":{"url":"https://api.github.com/users/gabrielstuff","gravatar_id":"390ea42c23c2c383f973abdafa24bb07","login":"gabrielstuff","id":285033,"avatar_url":"https://secure.gravatar.com/avatar/390ea42c23c2c383f973abdafa24bb07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3631618,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1068"},{"updated_at":"2012-03-13T15:21:30Z","body":"Hi !\r\n\r\nRecently, I've been in lot of languages, from C++ to ruby, passing by the colosus of javascript and the sea of php. Dropping by various and strange framework such as the Cinder, the jQuery, the Rails, the Processing, etc ...\r\n\r\n## the situation \r\n\r\nWhat I have noticed is that a strong architecture and a really ease use of add-ons makes a framework get stronger. For instance, if we take a look at Ruby, we see that the use of gems give him a powerfull advance over his friend php. \r\n\r\n### the Rubyist\r\n\r\nThis way of thinking is getting even better with the http://gembundler.com/ [Bundler](http://gembundler.com/) friend. The gems have dependencies and a simple GemFile help to easily install all dependencies for one project.\r\n\r\n### the Cinderist\r\n\r\nFor Cinder, we get the block, as for OSX, it quiet easy and fast. Drag and drop and play/code.\r\n\r\n### the jQueryist\r\n\r\nWell, it is not frequent to have jQuery plugins depending on other jQuery plugins, but there are several way to handle dependencies on jQuery and JS.\r\n\r\n### the nodist\r\n\r\nThis lead us to http://npmjs.org/, which is really nice with dependencies.\r\nFor instance, if you tried cloud9ide, you know that you just have to make sure you get the proper package.json :\r\n\r\n```\r\n{\r\n \"name\": \"node-example\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": {\r\n \"express\": \"2.2.0\"\r\n }\r\n}\r\n```\r\n\r\nThis file ensure that everything before running the server will be installed via npm.\r\n\r\n### the ofist\r\n\r\nRight now, we just have the addons.make file, which is nice but does not do any lifting for us. We have to verify that the ofx addons has been downloaded and is installed in the right folder.\r\n\r\n- Why not creating a script that will allow to manage dependencies compilation ? \r\nI have this wonderful ofxJSONsettings, but he depends on [JSONCPP](http://jsoncpp.sourceforge.net/) and on boost, so here we will have :\r\n\r\npackage.json file in the ofxJSONsettings folder :\r\n\r\n```\r\n{\r\n \"name\": \"ofxJSONsettings\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": [{\r\n \"jsoncpp\": \"0.6.0-rc2\"\r\n \"url\":\"http://jsoncpp.svn.sourceforge.net/svnroot/jsoncpp/trunk/\"\r\n \"protocol\":\"svn\"\r\n }\r\n ]\r\n}\r\n```\r\n\r\nHum, then, we have our little bash script :\r\n\r\n`xadd -addon ofxJSONsettings`\r\n\r\nand for a project, we have to ensure that the make file run `xadd -addon ofxJSONsettings` if it does not find ofXJSONsettings.\r\n\r\nThis could lead to simplify and easify the use of plugin ! Hey, I want the new [mistubaRenderer](https://github.com/satoruhiga/ofxMitsubaRenderer) let's give a try :\r\n\r\n```\r\n{\r\n \"name\": \"ofxMitsubaRenderer\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": [{\r\n \"mitsuba\": \"0.1\"\r\n \"url\":\"https://www.mitsuba-renderer.org/hg/mitsuba-bidir\"\r\n \"protocol\":\"hg\"\r\n }\r\n ]\r\n}\r\n```\r\n\r\nWell, this would be simplify if everybody use some same pattern, and respect some convention.\r\n\r\nSo what do you guys think about that ?\r\n\r\n\r\nThank you !\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1063","comments":7,"milestone":null,"number":1063,"assignee":null,"closed_at":null,"title":"Automatic installer + dependencies handler","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2012-03-13T10:44:57Z","state":"open","user":{"url":"https://api.github.com/users/gabrielstuff","gravatar_id":"390ea42c23c2c383f973abdafa24bb07","login":"gabrielstuff","id":285033,"avatar_url":"https://secure.gravatar.com/avatar/390ea42c23c2c383f973abdafa24bb07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3627067,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1063"},{"updated_at":"2012-03-12T17:58:20Z","body":"right now there is a lot of duplicated code in the vector math classes. for example, normalize() and getNormalized() have separate implementations. if we follow the pattern of always implementing things in self-modifying methods, then providing copy-returning methods as alternatives, this will reduce the amount of code and make it harder to cause bugs or behavioral discrepancies.\r\n\r\n- implementations of an algorithm should always be self-modifying\r\n- copy-returning versions should be implemented using a differently named method, internally making a copy and calling the self-modifying version on the copy.\r\n\r\ne.g. something like (note, this isn't how it's implemented right now):\r\n\r\n\tinline ofVec2f& ofVec2f::normalize() {\r\n\t\tfloat length = (float)sqrt(x*x + y*y);\r\n\t\tif( length > 0 ) {\r\n\t\t\tx /= length;\r\n\t\t\ty /= length;\r\n\t\t}\r\n\t\treturn *this;\r\n\t}\r\n\r\n\tinline ofVec2f ofVec2f::getNormalized() const {\r\n\t\tofVec2f result = *this;\r\n\t\treturn result.normalize();\r\n\t}\r\n\r\ntaken from this post https://github.com/openframeworks/openFrameworks/pull/1061#issuecomment-4455601","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1062","comments":4,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":1062,"assignee":null,"closed_at":null,"title":"regularize code for math addons","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2012-03-12T16:33:06Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3614231,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1062"},{"updated_at":"2012-03-13T13:07:11Z","body":"Just saw this is the documentation.\r\nVertexes is incorrect (wrong plural)\r\nVertices","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1055","comments":18,"milestone":null,"number":1055,"assignee":null,"closed_at":null,"title":"ofVertexes?? ofCurveVertexes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2012-03-12T01:50:19Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3605277,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1055"},{"updated_at":"2012-03-10T17:52:58Z","body":"if you have:\r\n\r\n uniform float dog;\r\n float cat;\r\n\r\nand:\r\n\r\n shader.setUniform1f(\"dog\", ofGetElapsedTimef());\r\n shader.setUniform1f(\"cat\", ofGetElapsedTimef());\r\n\r\nthere is no currently no error printed to the console, and \"cat\" is mysteriously unchanging while \"dog\" is fine.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1052","comments":0,"milestone":null,"number":1052,"assignee":null,"closed_at":null,"title":"ofShader should show an error when using an invalid name","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2012-03-10T17:52:58Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3596240,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1052"},{"updated_at":"2012-03-14T15:11:08Z","body":"ofxiPhoneScreenGrab saves with compression artifacts.\r\nfix for saving a lossless image in the below post,\r\nhttp://forum.openframeworks.cc/index.php/topic,4737.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1051","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":1051,"assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"closed_at":null,"title":"ofxiPhoneScreenGrab saves with compression artifacts.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2012-03-10T12:15:33Z","state":"open","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3594731,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1051"},{"updated_at":"2012-03-14T15:09:09Z","body":"just wanted to kick off a discussion about cleaning up ofxiPhone folder structure.\r\nhave this up on the forum, http://forum.openframeworks.cc/index.php/topic,8955.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1050","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":1050,"assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"closed_at":null,"title":"clean up ofxiPhone folder structure.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2012-03-10T06:32:12Z","state":"open","user":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3593619,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1050"},{"updated_at":"2012-05-16T09:25:18Z","body":"This an implementation of ofxiPhoneScreenGrab for Android","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1048","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":1048,"assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"closed_at":null,"title":"Adding Android screenshot feature, example to demonstrate it","labels":[],"created_at":"2012-03-10T05:31:45Z","state":"open","user":{"url":"https://api.github.com/users/bostonbusmap","gravatar_id":"433032cca043cedb67180dc5109062da","login":"bostonbusmap","id":863262,"avatar_url":"https://secure.gravatar.com/avatar/433032cca043cedb67180dc5109062da?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3593430,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/1048.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1048.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1048"},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1048"},{"updated_at":"2012-03-12T15:31:12Z","body":"whenever I try to open a file using system dialog from OF utils or ofxFileDIalogOSX, the video is loaded correctly but it get stuck and doesn't play at all. see:\r\nhttp://forum.openframeworks.cc/index.php/topic,5233.0.html\r\nhttp://forum.openframeworks.cc/index.php/topic,6515.0.html\r\n\r\nquite a big issue IMHO","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1047","comments":8,"milestone":null,"number":1047,"assignee":null,"closed_at":null,"title":"opening video files with system dialog in osx prevents them to play correctly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"created_at":"2012-03-09T18:54:28Z","state":"open","user":{"url":"https://api.github.com/users/hvfrancesco","gravatar_id":"e02a8a3953de9d5d9ec1c7aa8d43eca4","login":"hvfrancesco","id":614123,"avatar_url":"https://secure.gravatar.com/avatar/e02a8a3953de9d5d9ec1c7aa8d43eca4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3587808,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1047"},{"updated_at":"2012-03-20T16:11:54Z","body":"just a small one but would be great. \r\nmaybe even different icon for debug and release? ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1039","comments":12,"milestone":null,"number":1039,"assignee":null,"closed_at":null,"title":"make icons for OF apps","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2012-03-06T17:56:58Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3528378,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1039"},{"updated_at":"2012-03-06T15:32:44Z","body":"right now it is not clear from a visual perspective what is a button / trigger and what is a toggle. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1037","comments":1,"milestone":null,"number":1037,"assignee":null,"closed_at":null,"title":"ofxGui, ofxButton should look visually different to toggle","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2012-03-05T18:06:03Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3510933,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1037"},{"updated_at":"2012-04-10T19:29:53Z","body":"xml is one of the reasons this is currently an addon. \r\nthe original idea was to have something simple and minimal that could be in the core. \r\nalso something which could be built off of for larger gui addons ( hence ofParameter ) \r\n\r\nI see a couple of options going forward.\r\n\r\n1) swtich from xml to newline separated text files and move ofGui into core\r\nthis would be quite simple as ofParameter already has a name, value structure \r\n\r\n2) same as 1) but keep ofxGui as an addon - making it a bit simpler to add to a project \r\n2b) add ofParameter to core as it is more general purpose\r\n\r\n3) bring ofxXmlSettings into the core and bring ofGui into core.\r\n\r\n\r\nanyway I thought it would be good to get some discussion going about this.\r\nI'm especially interested in setting up ofParam and ofBaseGui in a way to make things modular and extendable. \r\n\r\nalso could be interesting to look at a way to represent a collection/group of ofParameters\r\nsome of this might be similar to some of the stuff @memo was doing with his plist style system. \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1036","comments":10,"milestone":null,"number":1036,"assignee":null,"closed_at":null,"title":"ofxGui -> ofGui - how/should we bring into core?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2012-03-05T16:56:26Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3509628,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1036"},{"updated_at":"2012-03-12T12:39:10Z","body":"If it finds .vert, .frag (and .geom?) files in the data/ folder, the project generator should make a new folder, in the project file, next to (or inside) src called data/ and add the files to it. (data/ so that beginners can find the files in Finder)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1034","comments":3,"milestone":null,"number":1034,"assignee":null,"closed_at":null,"title":"projectGenerator ignores shader .vert and .frag files","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"created_at":"2012-03-04T11:19:04Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3495602,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1034"},{"updated_at":"2012-03-06T15:06:00Z","body":"I talked to Arturo about this, but I want to make sure it's known. When you call ofLogSetLogLevel with a module string, that string is added to a map used to check the module's log level ... but right now that string is never removed.\r\n\r\nIf someone creates a large amount module names the map could grow arbitrarily large over time. The thought so far is that no one would make enough module names for it to be a problem.\r\n\r\nFor instance, using the [proposed ofThread rewrite](https://github.com/openframeworks/openFrameworks/pull/1031), each thread creates a new module name when it sets itself to verbose and, in the case of spawning lots of verbose worker threads, the map will grow.\r\n\r\nMy proposed solution would be to remove the module name from the map when the level for that module is set back to OF_LOG_NOTICE and/or to the current log level.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1033","comments":11,"milestone":null,"number":1033,"assignee":null,"closed_at":null,"title":"ofSetLogLevel(module, level) adds to map but dosen't remove","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2012-03-04T10:54:12Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3495503,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1033"},{"updated_at":"2012-03-14T15:11:08Z","body":"this change c50648e29199a3f61eae05f6ceb350a97ab275d7 caused the problem. i'm not sure why adding explicit cases for handling loadData for ofShortPixels and ofFloatPixels would do this. to see the proof, run devApps/AdvancedImageLoading","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1029","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":1029,"assignee":null,"closed_at":null,"title":"display of short + float textures are broken","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2012-03-03T19:04:59Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3491627,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1029"},{"updated_at":"2012-05-10T06:54:25Z","body":"I've just encountered a real 'wall meets head' bug, aka 'why is my camera image black??'\r\n\r\nwell it turns out that actually, ofSaveImage doesn't save mono images\r\nit just saves out black pixels\r\n\r\ntesting on Windows, VS2010.\r\nAnybody else getting this?\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1028","comments":5,"milestone":null,"number":1028,"assignee":null,"closed_at":null,"title":"ofSaveImage / ofImage::saveImage() problem with OF_IMAGE_GRAYSCALE / OF_PIXELS_MONO","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2012-03-03T12:23:06Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3489266,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1028"},{"updated_at":"2012-05-16T09:25:13Z","body":"The Android example is basically a copy of the existing 3dModelBuilder example with some code changes to work with OpenGL ES","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1024","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":1024,"assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"closed_at":null,"title":"Fixing 3DModelBuilder to work with OpenGL ES, added Android example for it","labels":[],"created_at":"2012-03-02T16:55:29Z","state":"open","user":{"url":"https://api.github.com/users/bostonbusmap","gravatar_id":"433032cca043cedb67180dc5109062da","login":"bostonbusmap","id":863262,"avatar_url":"https://secure.gravatar.com/avatar/433032cca043cedb67180dc5109062da?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3479768,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/1024.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1024.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1024"},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1024"},{"updated_at":"2012-03-30T16:34:06Z","body":"Continuation of http://forum.openframeworks.cc/index.php/topic,9095.msg42378.html#new\r\n\r\nNOTE: Things may have changed as the projects I'm using are all created using the older creation tools.\r\nCan somebody up to date please check?\r\n\r\nCurrently XCode's default project setting is /O2 for debug projects\r\nwhilst Visual Studio's is /O0\r\n\r\n/O0 generally makes the most sense for debug mode as it allows for effective program flow and variable tracking (because with /O2, lines of code and variables are commonly optimised away).\r\n\r\nIf we are worried that this will leave default users in a default 'slower state' then perhaps we could make release the default? Then people could be aware that they are selecting debug when they want to actually do some debugging?\r\nBut this may have other issues (such as some libraries might not perform as many checks as otherwise?)\r\n\r\nit might be worth making users more aware of the 2 options anyway, and then start using them consistently","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1022","comments":12,"milestone":null,"number":1022,"assignee":null,"closed_at":null,"title":"Optimisation consistency","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2012-03-02T13:25:15Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3476540,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1022"},{"updated_at":"2012-03-01T19:42:09Z","body":"currently if MSAA is enabled, COLOR_ATTACHMENT[ 0 -> nSamples]_EXT are bound for MS blitting, which could overwrite your texture color attachments without notifying you [ i.e. setSamples(4); setNumTextures(4) ]. There may be some solution where numSamples*numTextures = maxAttachments, allowing for multisampled internal textures, but at the very least we should warn/notify that samples and textures won't play so nicely together, or try to allocate samples/textures in the remaining attachments and notify on overflow.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1019","comments":0,"milestone":null,"number":1019,"assignee":null,"closed_at":null,"title":"ofFbo needs consideration as far as MRT + MSAA","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2012-03-01T19:42:09Z","state":"open","user":{"url":"https://api.github.com/users/kpasko","gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","login":"kpasko","id":167271,"avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3462226,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1019"},{"updated_at":"2012-03-01T04:33:36Z","body":"there's a block in ofConstants which reads like:\r\n\r\n```c++\r\n#ifndef PI\r\n\t#define PI 3.14159265358979323846\r\n#endif\r\n\r\n#ifndef TWO_PI\r\n\t#define TWO_PI 6.28318530717958647693\r\n#endif\r\n\r\n#ifndef M_TWO_PI\r\n\t#define M_TWO_PI 6.28318530717958647693\r\n#endif\r\n\r\n#ifndef FOUR_PI\r\n\t#define FOUR_PI 12.56637061435917295385\r\n#endif\r\n\r\n#ifndef HALF_PI\r\n\t#define HALF_PI 1.57079632679489661923\r\n#endif\r\n\r\n#ifndef DEG_TO_RAD\r\n\t#define DEG_TO_RAD (PI/180.0)\r\n#endif\r\n\r\n#ifndef RAD_TO_DEG\r\n\t#define RAD_TO_DEG (180.0/PI)\r\n#endif\r\n\r\n#ifndef MIN\r\n\t#define MIN(x,y) (((x) < (y)) ? (x) : (y))\r\n#endif\r\n\r\n#ifndef MAX\r\n\t#define MAX(x,y) (((x) > (y)) ? (x) : (y))\r\n#endif\r\n\r\n#ifndef CLAMP\r\n\t#define CLAMP(val,min,max) (MAX(MIN(val,max),min))\r\n#endif\r\n\r\n#ifndef ABS\r\n\t#define ABS(x) (((x) < 0) ? -(x) : (x))\r\n#endif\r\n```\r\n\r\nthe problem is i've got this in another header file:\r\n\r\n```c++\r\n// macro-like inline functions\r\n\r\ntemplate\r\ninline T SQR(const T a) {return a*a;}\r\n\r\ntemplate\r\ninline const T &MAX(const T &a, const T &b)\r\n {return b > a ? (b) : (a);}\r\n\r\ninline float MAX(const double &a, const float &b)\r\n {return b > a ? (b) : float(a);}\r\n\r\ninline float MAX(const float &a, const double &b)\r\n {return b > a ? float(b) : (a);}\r\n\r\ntemplate\r\ninline const T &MIN(const T &a, const T &b)\r\n {return b < a ? (b) : (a);}\r\n\r\ninline float MIN(const double &a, const float &b)\r\n {return b < a ? (b) : float(a);}\r\n\r\ninline float MIN(const float &a, const double &b)\r\n {return b < a ? float(b) : (a);}\r\n\r\ntemplate\r\ninline T SIGN(const T &a, const T &b)\r\n\t{return b >= 0 ? (a >= 0 ? a : -a) : (a >= 0 ? -a : a);}\r\n\r\ninline float SIGN(const float &a, const double &b)\r\n\t{return b >= 0 ? (a >= 0 ? a : -a) : (a >= 0 ? -a : a);}\r\n\r\ninline float SIGN(const double &a, const float &b)\r\n\t{return (float)(b >= 0 ? (a >= 0 ? a : -a) : (a >= 0 ? -a : a));}\r\n```\r\n\r\nAnd ofConstants is included in almost every oF file\r\n\r\ni'd suggest moving to inline functions and presume that compiler optimisations makes these 2 options equivalent in terms of performance, but that inline wins out for compatability","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1007","comments":10,"milestone":null,"number":1007,"assignee":null,"closed_at":null,"title":"bug #defines in ofConstants conflict with other libraries","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2012-02-29T15:31:18Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3438233,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1007"},{"updated_at":"2012-03-01T13:02:37Z","body":"Propose the following functions:\r\n\r\n```c++\r\nofVec2f ofRandom(const ofVec2f&);\r\nofVec3f ofRandom(const ofVec3f&);\r\nofVec2f ofRandom(const ofVec2f& range1, const ofVec2f& range2);\r\nofVec3f ofRandom(const ofVec3f& range1, const ofVec3f& range2);\r\n```\r\n\r\nalso lots of other candidates for this, e.g. `ofClamp`, `ofMap`, etc\r\nsome clever templating possible?\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1005","comments":12,"milestone":null,"number":1005,"assignee":null,"closed_at":null,"title":"feature ofRandom(ofVec3f) ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2012-02-29T06:32:03Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3432042,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1005"},{"updated_at":"2012-05-18T08:47:08Z","body":"I have a simple app that plays video files. I try to route (under windows) its output using Jack and Vitual Audio Cable but none can access it. I am just using the basic functionality of ofVideoPlayer, this is the class that deals with the video playing\r\n\r\n\r\n\t#include \"oscVPlayer.h\"\r\n\t#include \"ofMain.h\"\r\n\r\n\r\n\r\n\toscVPlayer::oscVPlayer()\r\n\t{\r\n\t\t\treset();\r\n\t}\r\n\r\n\tvoid oscVPlayer::reset()\r\n\t{ //defaults to fullscreen\r\n\t\t\tw = NULL;\r\n\t\t\th = NULL;\r\n\t\t\tx = 0;\r\n\t\t\ty = 0;\r\n\t\t\tdonereported = false;\r\n\t\t\tloopflag = OF_LOOP_NONE;\r\n\t\t\t\r\n\t\t\tcol.r = 0;\r\n\t\t\tcol.g = 0;\r\n\t\t\tcol.b = 0;\r\n\t\t\tcol.a = 255;\r\n\r\n\t\t\tif (isLoaded())\r\n\t\t{\r\n\t\t\t\t\tsetFrame(0);\r\n\t\t\t\t\tsetUseTexture(1);\r\n\t\t\t\t\tsetPaused(0);\r\n\t\t\t\t\tsetLoopState(OF_LOOP_NORMAL);\r\n\t\t\t\t\tsetSpeed(1);\r\n\t\t\t\t\tsetVolume(255);\r\n\t\t\t\t\tstop();\r\n\t\t}\r\n\t}\r\n\r\n\r\n\tvoid oscVPlayer::setUpVideo(string movie)\r\n\t{\r\n\t\t\tif (movie != \"none\")\r\n\t\t\t{\r\n\t\t\t\t\tif ( loadMovie(movie) )\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\t\tprintf(\"movie loaded\\n\");\r\n\t\t\t\t\t\t\tofVideoPlayer::update();\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\t\tprintf(\"CANNOT load movie\\n\");\r\n\t\t\t\t\t}\r\n\t\t\t}\r\n\t\t\telse\r\n\t\t\t{\r\n\t\t\t\t\tprintf(\"movie parameter is none, cannot load it\\n\");\r\n\t\t\t}\r\n\t}\r\n\r\n\r\n\r\n\r\n\tvoid oscVPlayer::setLoop()\r\n\t{\r\n\t\t\tsetLoopState(loopflag); // go back to your state. otherwise play resets it to loop ON\r\n\t}\r\n\r\n\r\n\r\n\r\n\tvoid oscVPlayer::resetSize()\r\n\t{\r\n\t\t\tw = NULL;\r\n\t\t\th = NULL;\r\n\t}\r\n\r\n\r\n\tvoid oscVPlayer::draw()\r\n\t{\r\n\t\tif (isLoaded())\r\n\t\t{\r\n\t\t\t if (col.a < 255) ofEnableAlphaBlending();\r\n\t\t\t\tofSetColor(col.r,col.g,col.b, col.a);\r\n\t\t\t\tofVideoPlayer::update();\r\n\t\t\t\tif (w==NULL && h==NULL)\r\n\t\t\t\t{\r\n\t\t\t\t\t\tofVideoPlayer::draw(x, y);\r\n\t\t\t\t}\r\n\t\t\t\telse\r\n\t\t\t\t{\r\n\t\t\t\t\t\t\tofVideoPlayer::draw(x, y, w, h);\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (col.a < 255) ofDisableAlphaBlending(); \r\n\t\t}\r\n\t}\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1001","comments":2,"milestone":null,"number":1001,"assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"closed_at":null,"title":"OF app sound out not available from Jack","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"created_at":"2012-02-27T14:59:34Z","state":"open","user":{"url":"https://api.github.com/users/enrike","gravatar_id":"cc2adbc6d91bf2288f34f60a547a82cd","login":"enrike","id":710785,"avatar_url":"https://secure.gravatar.com/avatar/cc2adbc6d91bf2288f34f60a547a82cd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3401755,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1001"},{"updated_at":"2012-05-16T09:24:52Z","body":"// scissor\r\nvoid ofBeginScissor(ofRectangle &r);\r\nvoid ofBeginScissor(ofPoint &p, float w, float h);\r\nvoid ofBeginScissor(float x, float y, float w, float h);\r\nvoid ofEndScissor();\r\n\r\n\r\nthere is a problem with ofFBO due to the flip. I do not think that there is a way around it sooo just scale -1\r\n\r\nalso: \r\nextra ; removed \r\nlibs/openFrameworks/utils/ofUtils.cpp","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/993","comments":10,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":993,"assignee":null,"closed_at":null,"title":"Of scissors","labels":[],"created_at":"2012-02-26T21:35:55Z","state":"open","user":{"url":"https://api.github.com/users/vanderlin","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","id":149997,"avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3393466,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/993.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/993.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/993"},"html_url":"https://github.com/openframeworks/openFrameworks/issues/993"},{"updated_at":"2012-02-25T20:25:00Z","body":"i think this is because ofDrawBitmapString draws the quads in the wrong orientation. but i'm guessing it works in FBOs... so if we switch the order it will stop working in FBOs.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/987","comments":0,"milestone":null,"number":987,"assignee":null,"closed_at":null,"title":"GL_CULL_FACE breaks ofDrawBitmapString()","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"created_at":"2012-02-25T20:25:00Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3387163,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/987"}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=5 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4978'), ('content-length', '38555'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"c720c465254b2a50d1fa3249bfd1c55a"'), ('date', 'Tue, 29 May 2012 06:43:38 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-03-22T23:34:17Z","body":"Some logging messages don't really tell where they were triggered. Someone needs to go through them and add information as to what module triggered the message. \r\n@danomatika has already volunteered to do this some time.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/985","comments":16,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":16,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":985,"assignee":null,"closed_at":null,"title":"Make logging messages more informative","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2012-02-25T19:41:58Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3386914,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/985"},{"updated_at":"2012-03-11T18:31:55Z","body":"There's a lot of logging printfs in the core addons. These should be replaced by appropriate ofLog calls.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/984","comments":5,"milestone":null,"number":984,"assignee":null,"closed_at":null,"title":"Replace printf() occurences by ofLog() in the core addons","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2012-02-25T19:36:51Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3386889,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/984"},{"updated_at":"2012-02-27T13:35:34Z","body":"`ofVec2f` has a function called `average` which takes an array of `ofVec2f` and calculates the centroid. it is not static, rather it overwrites its own `x` and `y` with the average. \r\n\r\nthis is a little weird. `average` should be static, or at least be *returning* the average rather than assigning to self.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/976","comments":4,"milestone":null,"number":976,"assignee":null,"closed_at":null,"title":"ofVec2f::average has unexpected/clumsy behaviour","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2012-02-25T03:45:02Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":3382990,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/976"},{"updated_at":"2012-02-25T02:47:26Z","body":"Dummy issue to ensure that the 0076 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/972","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":0,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/10","number":10,"title":"0076 Release","due_on":"2012-10-29T07:00:00Z","open_issues":1,"created_at":"2012-02-25T02:46:26Z","state":"open","description":"","id":88838},"number":972,"assignee":null,"closed_at":null,"title":"0076 Release tracking issue","labels":[],"created_at":"2012-02-25T02:47:26Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3382766,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/972"},{"updated_at":"2012-02-25T02:47:37Z","body":"Dummy issue to ensure that the 0075 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/971","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":0,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/9","number":9,"title":"0075 Release","due_on":"2012-09-24T07:00:00Z","open_issues":1,"created_at":"2012-02-25T02:46:15Z","state":"open","description":"","id":88837},"number":971,"assignee":null,"closed_at":null,"title":"0075 Release tracking issue","labels":[],"created_at":"2012-02-25T02:47:05Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3382764,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/971"},{"updated_at":"2012-02-25T01:36:58Z","body":"Dummy issue to ensure that the 0080 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/970","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":0,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","number":8,"title":"0080 Release","due_on":"2013-01-01T08:00:00Z","open_issues":3,"created_at":"2012-02-25T01:34:28Z","state":"open","description":"","id":88731},"number":970,"assignee":null,"closed_at":null,"title":"0080 Release tracking issue","labels":[],"created_at":"2012-02-25T01:36:54Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3381982,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/970"},{"updated_at":"2012-02-25T01:36:37Z","body":"Dummy issue to ensure that the 0074 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/969","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":0,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/7","number":7,"title":"0074 Release","due_on":"2012-08-27T07:00:00Z","open_issues":1,"created_at":"2012-02-25T00:41:17Z","state":"open","description":"","id":88728},"number":969,"assignee":null,"closed_at":null,"title":"0074 Release tracking issue","labels":[],"created_at":"2012-02-25T01:36:37Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3381977,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/969"},{"updated_at":"2012-02-24T04:31:01Z","body":"right now if you try and scale/rotate/etc before calling ofBackgroundGradient, it will fail.\r\n\r\npeople generally call ofBackground at the top of draw() so it shouldn't be a huge issue... but it does make it a little 'fragile'.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/955","comments":0,"milestone":null,"number":955,"assignee":null,"closed_at":null,"title":"ofBackgroundGradient needs to be billboarded","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2012-02-24T04:31:01Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3367910,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/955"},{"updated_at":"2012-02-23T19:12:08Z","body":"Hello, I get a weird error trying to compile the movieplayerexample under linux64 :\r\n\r\n> `.text._ZN11ofBaseVideoD2Ev' referenced in section `.text._ZN11ofBaseVideoD1Ev[non-virtual thunk to ofBaseVideo::~ofBaseVideo()]' of ../../../libs/openFrameworksCompiled/lib/linux64/libopenFrameworks.a(ofBaseTypes.o): defined in discarded section `.text._ZN11ofBaseVideoD2Ev[_ZN11ofBaseVideoD5Ev]' of ../../../libs/openFrameworksCompiled/lib/linux64/libopenFrameworks.a(ofBaseTypes.o)\r\n\r\nMy version of OF is 007, it used to work under 0062...\r\n\r\nWhat should I do ?\r\n\r\nThanks","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/933","comments":4,"milestone":null,"number":933,"assignee":null,"closed_at":null,"title":"Problem with moviePlayerExample under linux64","labels":[],"created_at":"2012-02-23T15:46:06Z","state":"open","user":{"url":"https://api.github.com/users/agrosjea","avatar_url":"https://secure.gravatar.com/avatar/e52c167621119d58d03c586bb053a633?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e52c167621119d58d03c586bb053a633","login":"agrosjea","id":1466085},"id":3357855,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/933"},{"updated_at":"2012-02-23T05:13:24Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/931","comments":0,"milestone":null,"number":931,"assignee":null,"closed_at":null,"title":"ofCamera is not aware of ofOrientation","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2012-02-23T05:13:24Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":3351646,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/931"},{"updated_at":"2012-02-23T05:12:47Z","body":"do we need the ofOrientation parameter in ofSetupPerspective?\r\n\r\nit applies the rotation but if ofSetOrientation hasn't been called before passing the same orientation the results are not the expected.\r\n\r\nto test it:\r\n\r\nofSetOrientation(OF_ORIENTATION_90_LEFT);\r\nofSetPerspective(ofGetWidth(), ofGetHeight(),OF_ORIENTATION_90_LEFT)\r\n\r\nworks as expected but calling only \r\n\r\nofSetPerspective(ofGetWidth(), ofGetHeight(),OF_ORIENTATION_90_LEFT)\r\n\r\napplies a weird rotation cause the values of ofGetWidth(), ofGetHeight() are still the default ones\r\n\r\nis there any case where it's useful to call setupPerspective with a different orientation that the window has?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/930","comments":0,"milestone":null,"number":930,"assignee":null,"closed_at":null,"title":"ofSetupPerspective ofOrientation","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2012-02-23T05:12:47Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":3351643,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/930"},{"updated_at":"2012-02-23T04:19:48Z","body":"Currently ofGetLogLevel returns the global log level aka for the \"OF\" module. It would be nice to be able to get the log level for user modules via:\r\n\r\n ofLogLevel level = ofGetLogLevel(\"myLogModule\");\r\n\r\nIt would as simple as adding the module as a string variable with a default of \"OF\".\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/929","comments":0,"milestone":null,"number":929,"assignee":null,"closed_at":null,"title":"ofGetLogLevel should also accept modules","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2012-02-23T04:19:48Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3351374,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/929"},{"updated_at":"2012-02-23T03:46:32Z","body":"Currently there is a ofBgColorPtr(), but maybe it's nice to have a ofGetBackground() that returns an ofColor object or a reference to one.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/928","comments":0,"milestone":null,"number":928,"assignee":null,"closed_at":null,"title":"no ofGetBackground()","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2012-02-23T03:46:32Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3351170,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/928"},{"updated_at":"2012-02-22T19:12:56Z","body":"ofGetViewportWidth/Height returns 0 is called in an object destructor, while ofGetWidth/Height do not. Could the ofGetViewport size be set to the ofGetWidth/Height size instead of 0 be default?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/926","comments":0,"milestone":null,"number":926,"assignee":null,"closed_at":null,"title":"ofGetViewportWidth/Height returns 0 at startup","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2012-02-22T19:12:56Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3341020,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/926"},{"updated_at":"2012-02-22T00:28:08Z","body":"I noticed a few things when working with ofImage:\r\n\r\n* ofImage has a type variable for the image type but this is an int, as opposed to the ofImageType enum, so it's annoying to force convert ...\r\n* the width, height, & bpp variables are public, they should be protected with getters/setters\r\n* there isn't a getBytesPerPixel, you have to get the pixel reference then call getBytesPerPixel ...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/925","comments":0,"milestone":null,"number":925,"assignee":null,"closed_at":null,"title":"ofImage has type as int, public vars, & missing getBPP, etc","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2012-02-22T00:28:08Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3324501,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/925"},{"updated_at":"2012-03-15T13:58:41Z","body":"As requested in https://github.com/openframeworks/openFrameworks/pull/794 I've branched openframeworks:develop into my own branch and applied the fixes required to build openFrameworks for Android with MinGW on the windows platform.\r\n\r\nThe instructions on how to compile are still valid (except for the part of patching):\r\nhttp://www.multigesture.net/articles/how-to-setup-openframeworks-for-android-on-windows/\r\n\r\nNote 1: You will need to run:\r\nandroid.bat update project --target android-8 --path C:\\openFrameworks\\addons\\ofxAndroid\\ofAndroidLib\r\n\r\nThis updates the project files for ofAndroidLib project. I didn't included those because those are user specific (they contain the path to the sdk)\r\n\r\nNote 2: d3ddf8e1 \r\nI only added this commit in order to make the examples build properly. Someone still needs to fix the proper implementation.\r\n\r\nNote 3: 7a9cf0ba\r\nWhile working on NodeBeat, we found out that not all devices are using /mnt/sdcard as their external storage location. In some cases the sdcard is located somewhere else (\"Environment.getExternalStorageDirectory()\" doesnt always return the correct location). This commit fixes this problem by checking several locations as reported on multiple Stackoverflow threads. More info about this issue can be found in the commit description.\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/922","comments":12,"milestone":null,"number":922,"assignee":null,"closed_at":null,"title":"Windows compatibility patches and External storage location fixes.","labels":[],"created_at":"2012-02-19T23:30:24Z","state":"open","user":{"url":"https://api.github.com/users/falcon4ever","avatar_url":"https://secure.gravatar.com/avatar/4a503abeaa3d803e55e99093fbf1505d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"4a503abeaa3d803e55e99093fbf1505d","login":"falcon4ever","id":480019},"id":3288053,"pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/922.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/922.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/922"},"html_url":"https://github.com/openframeworks/openFrameworks/issues/922"},{"updated_at":"2012-02-16T09:39:46Z","body":"What about having our own transform stack , in order to:\r\n-avoid to recompute globalTransformMatrix in each ofNode\r\n-could use it when rendering with OpenGL ES 2.0 shaders , which do not support predefined matrix values as world (modelview), worldProjection , or world inverseTranspose (for normals)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/920","comments":0,"milestone":null,"number":920,"assignee":null,"closed_at":null,"title":"Transform stack","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2012-02-16T09:39:46Z","state":"open","user":{"url":"https://api.github.com/users/AugusteBonnin","avatar_url":"https://secure.gravatar.com/avatar/cbf7aa7c655d3652170984c9aa497a4c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"cbf7aa7c655d3652170984c9aa497a4c","login":"AugusteBonnin","id":1442658},"id":3248309,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/920"},{"updated_at":"2012-02-16T09:31:24Z","body":"There is an easy-to-correct error in ofNode::transformGL:\r\nIt should call loadMatrix with globalTransformMatrix as parameter (with a void restoreGL), or pushMatrix then multMatrix with localTransformMatrix (with a restoreGL that pops the previously pushed matrix),\r\nNOT push then mult with global. The bug appears as soon as you have got more than one level of depth in your node tree. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/919","comments":0,"milestone":null,"number":919,"assignee":null,"closed_at":null,"title":"Error in ofNode::transformGL","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2012-02-16T09:31:24Z","state":"open","user":{"url":"https://api.github.com/users/AugusteBonnin","avatar_url":"https://secure.gravatar.com/avatar/cbf7aa7c655d3652170984c9aa497a4c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"cbf7aa7c655d3652170984c9aa497a4c","login":"AugusteBonnin","id":1442658},"id":3248230,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/919"},{"updated_at":"2012-03-08T10:15:31Z","body":"vs2010 does not include stdint.h support:\r\n\r\nhttp://stackoverflow.com/questions/126279/c99-stdint-h-header-and-ms-visual-studio\r\n\r\nwhich causes addon bugs like this:\r\n\r\nhttps://github.com/openframeworks/openFrameworks/issues/559\r\nhttps://github.com/kylemcdonald/ofxCv/issues/28\r\n\r\neven though these bugs aren't in the core, i think OF is designed to make it easy for people to write cross-platform, cross-compiler code. so i propose that we add an explicit declaration of the missing types for vs2010.\r\n\r\nthis isn't really something i'm worried about directly since i don't use vs2010, but i know people like elliot do. and it would be cleaner to add it once to the core than to add it once for every addon that is broken.\r\n\r\nthe solution would probably look like: take dan's code from the above issue, and move it from ofxOsc into the core.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/917","comments":5,"milestone":null,"number":917,"assignee":null,"closed_at":null,"title":"add global stdint.h support?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"}],"created_at":"2012-02-15T02:38:17Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3229504,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/917"},{"updated_at":"2012-03-12T14:55:20Z","body":"to match ofGetWidth(), ofGetHeight()\r\n\r\ni.e. for ofGetMouseX() / ofGetWidth()","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/916","comments":1,"milestone":null,"number":916,"assignee":null,"closed_at":null,"title":"ofGetMouseX() and ofGetMouseY() should return float","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2012-02-14T05:17:47Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3214174,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/916"},{"updated_at":"2012-02-13T08:16:08Z","body":"I had downloaded the 007 version, when I run of_preRelease_v007_linux/scripts/linux/debian/install_codeblocks.sh it install codeblocks without error, but when I run preRelease_v007_linux/scripts/linux/debian/install_dependencies.sh I get this error\r\n\r\ncompiling object for ../../../openFrameworks/graphics/ofGraphics.cpp\r\nmkdir -p obj/Debug/openFrameworks/graphics\r\ng++ -g3 -Wall -fexceptions -I../../../FreeImage/include -I../../../assimp/include -I../../../assimp/include/Compiler -I../../../cairo/include -I../../../cairo/include/cairo -I../../../cairo/include/pixman-1 -I../../../cairo/include/libpng15 -I../../../fmodex/include -I../../../freetype/include -I../../../freetype/include/freetype2 -I../../../freetype/include/freetype2/freetype -I../../../freetype/include/freetype2/freetype/config -I../../../freetype/include/freetype2/freetype/internal -I../../../freetype/include/freetype2/freetype/internal/services -I../../../glew/include -I../../../glew/include/GL -I../../../kiss/include -I../../../portaudio/include -I../../../rtAudio/include -I../../../tess2/include -I../../../poco/include -I../../../glu/include -I../../../openFrameworks/ -I../../../openFrameworks/3d -I../../../openFrameworks/math -I../../../openFrameworks/types -I../../../openFrameworks/graphics -I../../../openFrameworks/utils -I../../../openFrameworks/app -I../../../openFrameworks/video -I../../../openFrameworks/events -I../../../openFrameworks/communication -I../../../openFrameworks/gl -I../../../openFrameworks/sound -pthread -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -DOF_USING_GTK -MMD -MP -MFobj/Debug/openFrameworks/graphics/ofGraphics.d -MTobj/Debug/openFrameworks/graphics/ofGraphics.d -o obj/Debug/openFrameworks/graphics/ofGraphics.o -c ../../../openFrameworks/graphics/ofGraphics.cpp\r\n../../../openFrameworks/graphics/ofGraphics.cpp:37:22: warning: GL/glut.h: No such file or directory\r\n../../../openFrameworks/graphics/ofGraphics.cpp: In function ‘void ofSphere(float)’:\r\n../../../openFrameworks/graphics/ofGraphics.cpp:889: error: ‘glutSolidSphere’ was not declared in this scope\r\n../../../openFrameworks/graphics/ofGraphics.cpp:891: error: ‘glutWireSphere’ was not declared in this scope\r\nmake: *** [obj/Debug/openFrameworks/graphics/ofGraphics.o] Error 1\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/915","comments":2,"milestone":null,"number":915,"assignee":null,"closed_at":null,"title":"problems installing dependencies in debian 6.0.4","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"created_at":"2012-02-13T05:45:01Z","state":"open","user":{"url":"https://api.github.com/users/atomsfat","avatar_url":"https://secure.gravatar.com/avatar/f732e5a8b77f8e4ed8fadc2c71916236?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"f732e5a8b77f8e4ed8fadc2c71916236","login":"atomsfat","id":140008},"id":3196145,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/915"},{"updated_at":"2012-02-12T04:41:26Z","body":"We have ofSetDataPathRoot() .... it makes sense to have a Getter as well. Basically I wanted the absolute path to the root data folder.\r\n\r\nI managed to fake this by calling ofToDataPath(\".\",true) but this seems a little counter-intuitive.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/914","comments":0,"milestone":null,"number":914,"assignee":null,"closed_at":null,"title":"Add ofGetDataPathRoot","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2012-02-12T04:41:26Z","state":"open","user":{"url":"https://api.github.com/users/pierrep","avatar_url":"https://secure.gravatar.com/avatar/be11c9de8242e7aef0446eceaa289e01?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"be11c9de8242e7aef0446eceaa289e01","login":"pierrep","id":392160},"id":3189189,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/914"},{"updated_at":"2012-03-12T14:56:56Z","body":"it would be amazing if ofBeginShape()/ofEndShape() and ofPath supported tex coords (maybe ofTexCoord() and addTexCoord()).\r\n\r\nthis would allow for drawing arbitrary subsections of an image, or for creating an ofMesh that is texture mapped by an image.\r\n\r\nprocessing handles this with extra arguments to vertex() http://processing.org/reference/texture_.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/909","comments":3,"milestone":null,"number":909,"assignee":null,"closed_at":null,"title":"shapes with texCoords","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2012-02-10T01:42:42Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3166745,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/909"},{"updated_at":"2012-02-09T08:16:47Z","body":"a student just showed me how you can use the xcode templates for pocode to create a new project wherever you want on the disk. i know we used to have xcode templates for this, but i just tried them and it seems to be hilariously broken.\r\n\r\ni'm not sure if the new project creator stuff covers this idea or not, but it would be great to have a similar ability with OF somehow.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/902","comments":2,"milestone":null,"number":902,"assignee":null,"closed_at":null,"title":"Xcode templates should be fixed or removed","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2012-02-09T04:30:13Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3152323,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/902"},{"updated_at":"2012-02-08T21:50:23Z","body":"to draw a filled ofPolyline right now, you need to use beginshape/endshape. but i think a way of adding ofPolylines to an ofPath would be really good -- even a conversion from ofPolyline to ofPath might make sense. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/901","comments":0,"milestone":null,"number":901,"assignee":null,"closed_at":null,"title":"easier filled ofPolyline, or easy ofPolyline->ofPath conversion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2012-02-08T21:50:23Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3148441,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/901"}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=6 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4977'), ('content-length', '46887'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"f8fa517a4e928136125636e8dba042a2"'), ('date', 'Tue, 29 May 2012 06:43:39 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-02-09T14:46:48Z","body":"Hi.\r\n\r\nI've been trying to load stream video ( mpeg2 .ts and hls .m3u8 ) using OF on MacOS 10.7.2.\r\n\r\nBoth cases causes error -2048 in the line below: ( l:89, ofQuickTimePlayer.cpp )\r\n\r\n```c++\r\nerr = NewMovieFromDataRef(&movie, newMovieAsyncOK,nil, urlDataRef, URLDataHandlerSubType);\r\n```\r\n\r\nLoading remote .mp4 works perect. Loading same streams in QuickTime player(v10.1) works without any troubles.\r\n\r\nSo, it seems the trouble happens just when no videofile size info returned from server.\r\n\r\nIs it a bug? Or I've missed smthng?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/897","comments":4,"milestone":null,"number":897,"assignee":null,"closed_at":null,"title":"ofQuickTimePlayer.createMovieFromURL fails on streaming video","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2012-02-06T11:42:08Z","state":"open","user":{"url":"https://api.github.com/users/4pcbr","gravatar_id":"52e8e29748826594f27b5c6c20a353e0","login":"4pcbr","id":247109,"avatar_url":"https://secure.gravatar.com/avatar/52e8e29748826594f27b5c6c20a353e0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3106705,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/897"},{"updated_at":"2012-02-05T17:11:59Z","body":"This concerns libraries included in addons in source form. According to [this issue](https://github.com/chrisoshea/ofxMidi/issues/8) reported by @danomatika, the makefile can only compile libraries' source code if they are in an addon's `/src` folder. This is in contradiction with @obviousjim's guide to addons' folder structure at http://ofxaddons.com/howto.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/896","comments":6,"milestone":null,"number":896,"assignee":null,"closed_at":null,"title":"Makefile and ofxaddons.com guide don't agree regarding file structure","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"created_at":"2012-02-05T15:20:42Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3099567,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/896"},{"updated_at":"2012-02-10T02:47:13Z","body":"it needs to handle all these things:\r\n\r\n- meshes vs point clouds\r\n- different types of meshes (depending on the triangles)\r\n- indexed vs non-indexed geometry\r\n- colors, normals, texcoords\r\n- ascii vs binary\r\n- loading from externally created/defined ply files","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/880","comments":1,"milestone":null,"number":880,"assignee":null,"closed_at":null,"title":"test ofMesh::load/save rigorously","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2012-01-25T16:55:09Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":2967700,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/880"},{"updated_at":"2012-03-03T19:40:34Z","body":"If you set the proper switches on the iphone sound stream you can get it to play over whatever is playing on the users ipod without muting it. There are a bunch of switches for this behavior detailed in kAudioSessionProperty_Mode.\r\n\r\nThese would need to be set before initing the audio session. The other issue is that there are like 15-20 flags you can set. Maybe just a slightly higher level setting on the stream so that these behaivors could be set in the users testapp.mm","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/878","comments":0,"milestone":null,"number":878,"assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"closed_at":null,"title":"add a switch to the iphone soundstream to support ambient","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"created_at":"2012-01-24T16:41:17Z","state":"open","user":{"url":"https://api.github.com/users/jonbro","gravatar_id":"893ec14dc008e3774afe5841115920d6","login":"jonbro","id":1597,"avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":2952993,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/878"},{"updated_at":"2012-05-15T18:33:39Z","body":"change pan range to -1..1, right now is 0..1","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/875","comments":2,"milestone":null,"number":875,"assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"closed_at":null,"title":"ofOpenALSoundPlayer pan -1..1","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"created_at":"2012-01-21T00:01:45Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":2918619,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/875"},{"updated_at":"2012-03-10T05:09:49Z","body":" testImg.saveImage(ofxiPhoneGetDocumentsDirectory() + \"test.png\");\r\ncrashes the App and results in this error:\r\n\r\nProgram received signal: \"SIGARBT\".\r\n\r\nerror thrown in this line:\r\n\r\n FreeImage_Save(fif, bmp, fileName.c_str());","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/872","comments":1,"milestone":null,"number":872,"assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"closed_at":null,"title":"saveImage crashes in iOS Simulator","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2012-01-17T21:51:17Z","state":"open","user":{"url":"https://api.github.com/users/khlrqa","gravatar_id":"dfa7e4582a04e784d50c750ae51d894f","login":"khlrqa","id":53301,"avatar_url":"https://secure.gravatar.com/avatar/dfa7e4582a04e784d50c750ae51d894f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":2875276,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/872"},{"updated_at":"2012-01-07T15:38:14Z","body":"Hi -\r\n\r\nwhen it comes down to multicast communication over udp, it's is important that the correct ip address of the local interface is set. Most computers nowadays have several interfaces (wired and wireless). Whereas ofxUDPManager::BindMcast uses INADDR_ANY as the local address, this might be wrong if you are not using the default interface. In my case, I connect the computers in a local wlan. The wlan device is not the primary device on my machine.\r\n\r\nTherefore I rewrote the BindMcast function adding a third argument pLocal, the local Ip address of the network interface.\r\n\r\n```c++\r\nbool ofxUDPManager::BindMcast(char *pMcast, unsigned short usPort, char *pLocal)\r\n```\r\nchanging the line: \r\n\r\n```c++\r\nmreq.imr_interface.s_addr = pLocal == \"\" ? INADDR_ANY: inet_addr(pLocal);\r\n```\r\n\r\nwhich makes a different header file as well:\r\n\r\n```c++\r\nbool BindMcast(char *pMcast, unsigned short usPort, char *pLocal = \"\");\r\n```\r\n\r\nAs you can see, the pLocal Adress is optional, if omitted, INADDR_ANY is used (backwards compatibility).\r\n\r\n\r\nNOTE:\r\n\r\nI've added the function:\r\n\r\n```c++\r\nchar* GetInterfaceAddr(const char* interface); //returns the IP of a specified interface\r\n```\r\n\r\nto the ofxUDPManager as well. This function returns the IP adress of an interface (e.g. en1 on a mac for the airport device). This is useful in dhcp networks, where your own address always changes. The function itself looks like:\r\n\r\n```c++\r\n//--------------------------------------------------------------------------------\r\nchar* ofxUDPManager::GetInterfaceAddr(const char* interface)\r\n{\r\n\tint fd;\r\n\tstruct ifreq ifr;\r\n\tfd = socket(AF_INET, SOCK_DGRAM, 0);\r\n\tifr.ifr_addr.sa_family = AF_INET;\r\n\tstrncpy(ifr.ifr_name, interface, IFNAMSIZ-1);\r\n\tioctl(fd, SIOCGIFADDR, &ifr);\r\n\tclose(fd);\r\n\treturn(inet_ntoa(((struct sockaddr_in *)&ifr.ifr_addr)->sin_addr));\r\n}\r\n```\r\n\r\nPlease not that for this function, additional headers have to be included in ofxUDPManager.h:\r\n\r\n```c++\r\n#include \r\n```\r\n\r\nIf you consider the changes useful, theres a copy of the two files downloadable here:\r\nhttp://dl.dropbox.com/u/394122/ofxUDPManager_uh_07012012.zip\r\n\r\nregards,\r\nUrs Hofer","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/866","comments":0,"milestone":null,"number":866,"assignee":null,"closed_at":null,"title":"Multicast & UDP: Local IP required when dealing with multiple network interfaces","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2012-01-07T15:38:14Z","state":"open","user":{"url":"https://api.github.com/users/urshofer","gravatar_id":"0424af1c917883090f0edddf55a8f21b","login":"urshofer","id":116976,"avatar_url":"https://secure.gravatar.com/avatar/0424af1c917883090f0edddf55a8f21b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":2756440,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/866"},{"updated_at":"2012-03-03T19:40:34Z","body":"I've posted here\r\nhttp://forum.openframeworks.cc/index.php/topic,8467.new.html\r\n\r\nAt the moment when you do sample.unloadSound() on iOS the app crashes with\r\n\r\n[Switching to thread 13059]\r\n[Switching to thread 13059]\r\nProgram received signal: “EXC_BAD_ACCESS”.\r\nwarning: Unable to read symbols for /Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.2.1 (8C148)/Symbols/Developer/usr/lib/libXcodeDebuggerSupport.dylib (file not found).\r\n\r\n\r\nThis has been tested on the soundPlayerExample.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/863","comments":1,"milestone":null,"number":863,"assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"closed_at":null,"title":"unloadSound on iOS crashes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"created_at":"2012-01-03T12:48:09Z","state":"open","user":{"url":"https://api.github.com/users/chrisoshea","gravatar_id":"62d775b0fa28bcde2d9d29405d059be3","login":"chrisoshea","id":104786,"avatar_url":"https://secure.gravatar.com/avatar/62d775b0fa28bcde2d9d29405d059be3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":2710048,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/863"},{"updated_at":"2012-03-03T19:38:16Z","body":"ofxsynth doesn't wont to compile because this line:\r\nsource->audioOut( working, numFrames, numChannels, tickCount ) in ofxSoundUnit.cpp is wrong.\r\nthe canddates are:\r\n\r\nvirtual void audioOut( float * output, int bufferSize, int nChannels, int deviceID, long unsigned long tickCount )\r\nvirtual void audioOut( float * output, int bufferSize, int nChannels)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/861","comments":10,"milestone":null,"number":861,"assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"closed_at":null,"title":"ofxSynth semantic issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"created_at":"2012-01-02T11:14:47Z","state":"open","user":{"url":"https://api.github.com/users/viniciolindo","gravatar_id":"7aa1a7f9bf0b838c0d99886c3682ac5d","login":"viniciolindo","id":1298679,"avatar_url":"https://secure.gravatar.com/avatar/7aa1a7f9bf0b838c0d99886c3682ac5d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":2700549,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/861"},{"updated_at":"2012-03-03T19:40:34Z","body":"ofPixels has getPixels(), but OF has no equivalent getSamples() for sound.\r\n\r\nright now the best solution seems to be using libsndfile with OF http://forum.openframeworks.cc/index.php/topic,3502.0.html\r\n\r\nbut i would love to see the audio architecture for OF mirror the visual architecture better. this means ofSoundPlayer acts like ofVideoPlayer, and we need to add an ofSound object that mirrors ofPixels. ofSound should always store samples in memory, while ofSoundPlayer can stream audio from disk like ofVideoPlayer.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/856","comments":1,"milestone":null,"number":856,"assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"closed_at":null,"title":"allow access to individual sound samples","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"created_at":"2011-12-30T02:33:19Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":2685556,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/856"},{"updated_at":"2011-12-29T04:43:24Z","body":"Today I came across this strange bug.\r\nAny OF app that needed to use the quicktime video grabber crashed at startup when the this was launched from xcode (eg. using build and run) yet it worked correctly when I opened the compiled app by doubleclicking it.\r\n\r\nThe error thrown was a EXCBADACCESS.\r\nthe function that threw this was ACWma1DecoderEntry\r\n\r\nJust some googling and I found that it had to do with Flip4Mac quicktime component.\r\nI uninstalled it and problem gone.\r\n\r\nThe strange thing is that I've had installed Flip4Mac since long ago, yet I updated iTunes a few days ago, that might have done this problem to arise.\r\n\r\nI don't know if this is actually an OF bug from its Quicktime implementation or what ever but it was really annoying getting across with it. Hope this helps others.\r\n\r\nCheers!","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/855","comments":0,"milestone":null,"number":855,"assignee":null,"closed_at":null,"title":"video Grabber crashes with Flip4Mac","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2011-12-29T04:43:24Z","state":"open","user":{"url":"https://api.github.com/users/roymacdonald","gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","login":"roymacdonald","id":974878,"avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":2677212,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/855"},{"updated_at":"2011-12-23T14:13:39Z","body":"ofNode::resetTransform only resets orientation and position.\r\n\r\nI think setScale(1,1,1); needs to be called too in ofNode::resetTransform \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/851","comments":0,"milestone":null,"number":851,"assignee":null,"closed_at":null,"title":"ofNode::resetTransform does not reset scale","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2011-12-23T14:13:39Z","state":"open","user":{"url":"https://api.github.com/users/companje","gravatar_id":"30a7e135fe77636519d74d129c60e156","login":"companje","id":156066,"avatar_url":"https://secure.gravatar.com/avatar/30a7e135fe77636519d74d129c60e156?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":2647508,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/851"},{"updated_at":"2011-12-22T14:31:37Z","body":"if I add an external lib to my addon, I should provide headers for all platforms to be cross-platfomr like OF but the Makefile doesn't have any switch to ignore certain files which are not needed on linux.\r\n\r\nthe problem is that the OF Makefile compiles everythin under libs/mylib/include\r\n\r\nsee here for more: http://forum.openframeworks.cc/index.php?topic=6486.new;topicseen#new","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/849","comments":0,"milestone":null,"number":849,"assignee":null,"closed_at":null,"title":"skip files in an addon with Makefile","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2011-12-22T14:31:37Z","state":"open","user":{"url":"https://api.github.com/users/benben","gravatar_id":"614a4e493d7c353296519bba720e77c5","login":"benben","id":124513,"avatar_url":"https://secure.gravatar.com/avatar/614a4e493d7c353296519bba720e77c5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":2637694,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/849"},{"updated_at":"2011-12-19T22:35:27Z","body":"But it does!\r\n\r\nSomehow it's casting from float to ofPoint, maybe using the ofVec3f( float _x=0.f, float _y=0.f, float _z=0.f ) constructor.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/846","comments":10,"milestone":null,"number":846,"assignee":null,"closed_at":null,"title":"ofCircle(float, float) should not work","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2011-12-14T00:42:31Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":2546302,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/846"},{"updated_at":"2011-12-10T21:25:49Z","body":"Please add \"-Wreturn-type\" to the XCode project. I've noticed that it's a common mistake to add a return type but nothing is returned. Adding this option will at least show an error. I think Visual Studio shows an error already by default. You can add it like this in the project settings: http://img805.imageshack.us/img805/8745/screenshot20111210at102.png \r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/843","comments":0,"milestone":null,"number":843,"assignee":null,"closed_at":null,"title":"Add return-type warning for XCode project files ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2011-12-10T21:25:49Z","state":"open","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","id":358809,"avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":2512838,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/843"},{"updated_at":"2011-12-31T19:36:40Z","body":"Playing a movie crashes on exit on linux. Fedora 16 32-bit, latest git.\r\n\r\noutput:\r\n./moviePlayerExample\r\ndeleting video player\r\nterminate called after throwing an instance of 'Poco::SystemException'\r\n what(): System exception\r\nAborted (core dumped)\r\n\r\nbacktrace:\r\n#0 0x00110416 in __kernel_vsyscall ()\r\n#1 0x4623998f in raise () from /lib/libc.so.6\r\n#2 0x4623b2d5 in abort () from /lib/libc.so.6\r\n#3 0x46a9b74d in __gnu_cxx::__verbose_terminate_handler() ()\r\n from /usr/lib/libstdc++.so.6\r\n#4 0x46a994c4 in ?? () from /usr/lib/libstdc++.so.6\r\n#5 0x46a99500 in std::terminate() () from /usr/lib/libstdc++.so.6\r\n#6 0x46a9964f in __cxa_throw () from /usr/lib/libstdc++.so.6\r\n#7 0x08098bef in Poco::MutexImpl::lockImpl (this=0x814eb48)\r\n at /usr/include/Poco/Mutex_POSIX.h:82\r\n#8 0x08098d07 in Poco::FastMutex::lock (this=0x814eb48)\r\n at /usr/include/Poco/Mutex.h:257\r\n#9 0x0809907d in Poco::ScopedLock::ScopedLock (this=\r\n 0xbfffeabc, mutex=...) at /usr/include/Poco/ScopedLock.h:59\r\n#10 0x0809a340 in Poco::AbstractEvent, Poco::p_less > >, Poco::AbstractDelegate, Poco::FastMutex>::operator-=\r\n (this=0x814eb10, aDelegate=...) at /usr/include/Poco/AbstractEvent.h:195\r\n#11 0x080d40c5 in ofRemoveListener, ofEventArgs, ofGstUtils> (event=..., listener=0x82698e0, listenerMethod=\r\n (void (ofGstUtils::*)(ofGstUtils * const, ofEventArgs &)) 0x80d27b4 ) at ../../../openFrameworks/events/ofEventUtils.h:87\r\n#12 0x080d25be in ofGstUtils::close (this=0x82698e0)\r\nat ../../../openFrameworks/video/ofGstUtils.cpp:353\r\n#13 0x080d175e in ofGstUtils::~ofGstUtils (this=0x82698e0, \r\n __in_chrg=)\r\n at ../../../openFrameworks/video/ofGstUtils.cpp:85\r\n#14 0x080d32c4 in ofGstVideoUtils::~ofGstVideoUtils (this=0x82698d8, \r\n __in_chrg=)\r\n at ../../../openFrameworks/video/ofGstUtils.cpp:536\r\n#15 0x080d06ff in ofGstVideoPlayer::~ofGstVideoPlayer (this=0x82698b8, \r\n __in_chrg=, __vtt_parm=)\r\n at ../../../openFrameworks/video/ofGstVideoPlayer.cpp:19\r\n#16 0x080d07d9 in ofGstVideoPlayer::~ofGstVideoPlayer (this=0x82698b8, \r\n __in_chrg=, __vtt_parm=)\r\n at ../../../openFrameworks/video/ofGstVideoPlayer.cpp:21\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/840","comments":3,"milestone":null,"number":840,"assignee":null,"closed_at":null,"title":"ofGstVideoPlayer crash on exit","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"created_at":"2011-12-08T11:53:55Z","state":"open","user":{"url":"https://api.github.com/users/gaborpapp","gravatar_id":"9cb0f8a67c238d2aa91d9a7957b9ef4b","login":"gaborpapp","id":203532,"avatar_url":"https://secure.gravatar.com/avatar/9cb0f8a67c238d2aa91d9a7957b9ef4b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":2486705,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/840"},{"updated_at":"2012-03-12T12:30:53Z","body":"right now the only way to change the type of pixels is to go through ofImage and set image type there.\r\n\r\nseems like this should be moved into ofPixels.\r\n\r\nthoughts?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/838","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":838,"assignee":{"url":"https://api.github.com/users/obviousjim","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","login":"obviousjim","id":321434,"avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"closed_at":null,"title":"ofPixels has no setImageType","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2011-12-07T16:30:59Z","state":"open","user":{"url":"https://api.github.com/users/obviousjim","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","login":"obviousjim","id":321434,"avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":2476561,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/838"},{"updated_at":"2011-12-05T21:44:08Z","body":"I made a small example which uses the Wikipedia xml api to make queries which are then parsed by an ofXmlSettings object. The problem is Wikipedia complains there is no User-Agent string and dosen't return any data, while threatening to block by IP.\r\n\r\nThe fix was as simple as adding this to ofURLFileLoader.cpp line 144:\r\n
    \r\n\t\tHTTPRequest req(HTTPRequest::HTTP_GET, path, HTTPMessage::HTTP_1_1);\r\n        \treq.add(\"User-Agent\", \"Mozilla/5.0 (iPad; U; CPU OS 3_2_1 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Mobile/7B405\");\r\n
    \r\n\r\nIt uses the iOS safari user agent string. I think the best fix is to expose the HTTPRequest and HTTPResponse Poco objects so that, like in the ofxHttpUtils, you could add manually the string/value to the request before sending it. I don't think it should be set ti a default within the class. Also, it would be awesome to be able to add data into and pull data out of the requests. This is a great wrapper, especially the threading, I'd just like to have the full req/response control ... perhaps provide a method to add Poco::HttpRequests and recieve Poco::HttpResponses which could be set as references inside the ofxHttpRequest/ofxHttpResponse objects?\r\n\r\nOn another note, ofURLFileLoader seems like a rather specific name for a regular HTTP action. What's wrong with ofHttpSession etc since I've found it useful for more then just","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/837","comments":0,"milestone":null,"number":837,"assignee":null,"closed_at":null,"title":"ofURLFileLoader dosen't set HTTP User-Agent string and there is no way to set it","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2011-12-05T21:44:08Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":2455011,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/837"},{"updated_at":"2011-12-04T00:08:35Z","body":"Dummy issue to ensure that the 0073 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/836","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","number":6,"title":"0073 Release","due_on":"2012-07-30T07:00:00Z","open_issues":5,"created_at":"2011-12-03T15:37:49Z","state":"open","description":"","id":62090,"closed_issues":0},"number":836,"assignee":null,"closed_at":null,"title":"0073 Release tracking issue","labels":[],"created_at":"2011-12-04T00:08:35Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":2439965,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/836"},{"updated_at":"2011-12-03T09:03:22Z","body":"Not sure if is an issue or im doing wrong.\r\n\r\nIm trying to implement dragEvent() in an external class in windoes 7. I'm getting neither an error nor a response nor result. While debugging dragEvent is not called at all. The same code works perfectly on osx. \r\n\r\nhere's some:\r\n\r\ndummy.h\r\n\r\n\t#include \"ofMain.h\"\r\n\r\n\tclass dummy\r\n\t{\r\n\t\tpublic:\r\n\t\t\tdummy();\r\n\t\t\t~dummy();\r\n\t\t\t\t\t\r\n\t\t\tvoid config();\r\n\t\t\tvoid dragEvent(ofDragInfo &info);\r\n\t\t\t\r\n\t\tprivate:\r\n\t\tprotected:\r\n\t\t\r\n\t};\r\n\r\ndummy.cpp\r\n\r\n\t#include \"dummy.h\"\r\n\r\n\tdummy::dummy(){}\r\n\r\n\tdummy::~dummy(){}\r\n\r\n\tvoid dummy::config(){\r\n\t\tofAddListener(ofEvents.fileDragEvent, this, &dummy::dragEvent);\r\n\t}\r\n\r\n\tvoid dummy::dragEvent(ofDragInfo &info){\r\n\t\tfor( int i = 0; i < info.files.size() ; i++){\r\n\t\t\tcout << \"path: \" << info.files[i] << endl;\r\n\t\t}\r\n\t}\r\n\r\n\r\ntesApp.h\r\n\r\n\t#include \"ofMain.h\"\r\n\t#include \"dummy.h\"\r\n\r\n\r\n\tclass testApp : public ofBaseApp{\r\n\r\n\t\tpublic:\r\n\t\t\tvoid setup();\r\n\t\t\tvoid update();\r\n\t\t\tvoid draw();\r\n\r\n\t\t\tvoid keyPressed (int key);\r\n\t\t\tvoid keyReleased(int key);\r\n\t\t\tvoid mouseMoved(int x, int y );\r\n\t\t\tvoid mouseDragged(int x, int y, int button);\r\n\t\t\tvoid mousePressed(int x, int y, int button);\r\n\t\t\tvoid mouseReleased(int x, int y, int button);\r\n\t\t\tvoid windowResized(int w, int h);\r\n\t\t\tvoid dragEvent(ofDragInfo dragInfo);\r\n\t\t\tvoid gotMessage(ofMessage msg);\r\n\t\t\t\r\n\t\t\tdummy d;\r\n\r\ntestApp.cpp\r\n\r\n\t#include \"testApp.h\"\r\n\r\n\tvoid testApp::setup(){\r\n\t\td.config();\r\n\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/831","comments":0,"milestone":null,"number":831,"assignee":null,"closed_at":null,"title":"dragEvent() in new class not working in win7","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"created_at":"2011-12-03T08:51:42Z","state":"open","user":{"url":"https://api.github.com/users/decolector","gravatar_id":"7165a50ea8df968de57ffb5a27ba6ebc","login":"decolector","id":390056,"avatar_url":"https://secure.gravatar.com/avatar/7165a50ea8df968de57ffb5a27ba6ebc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":2436532,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/831"},{"updated_at":"2011-12-02T16:28:49Z","body":"Dummy issue to ensure that the 0072 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/829","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":829,"assignee":null,"closed_at":null,"title":"0072 Release tracking issue","labels":[],"created_at":"2011-12-02T16:28:49Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":2429871,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/829"},{"updated_at":"2011-11-29T17:54:48Z","body":"Loading Futura at font size 10 and simplify=0 yields oversimplified chars in a pdf render. I'm not sure if there's a way to fix this if the fonts are small.\r\n\r\nA workaround is to load the font at a larger size, say 40, then scale down by 0.25 when drawing. \r\n\r\nThe font below is a zoom of the pdf export using font size 10. The font above is Futura at font size 144 by comparison.\r\n\r\n![oversimplified fonts](http://farm8.staticflickr.com/7161/6423768819_9129b6d608_o.jpg)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/825","comments":2,"milestone":null,"number":825,"assignee":null,"closed_at":null,"title":"small font sizes yield oversimplified glyph shapes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2011-11-29T08:26:16Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":2380571,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/825"},{"updated_at":"2012-04-19T07:01:47Z","body":"If I use loadScreenData with anti-Aliasing turned on in the program's startup like this:\r\n\r\nofAppiPhoneWindow * iOSWindow = new ofAppiPhoneWindow();\r\niOSWindow->enableAntiAliasing(4);\r\n\r\nthen the texture will load in nothing but solid black. If I bypass this anti-aliasing, it works fine. I also cannot properly populate a texture using loadScreenData in a landscape orientation. Changing to Portrait orientation in the update loop, and then back to landscape after the grab fixes it.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/822","comments":5,"milestone":null,"number":822,"assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"closed_at":null,"title":"iOS - ofTexture.loadScreenData issue when antiAliasing is on","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2011-11-28T06:48:27Z","state":"open","user":{"url":"https://api.github.com/users/momo-the-monster","gravatar_id":"31f8a3ef87e828b70d2a441c8dae97d8","login":"momo-the-monster","id":737888,"avatar_url":"https://secure.gravatar.com/avatar/31f8a3ef87e828b70d2a441c8dae97d8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":2364541,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/822"},{"updated_at":"2011-11-28T18:48:58Z","body":"It'd be nice if ofRectangle used a ofVec2f or ofVec3f internally so you could do the something like:\r\n\r\n
    \r\nofRectangle myRect;\r\nofVec2f vel(-1, 2);\r\nmyRect.pos += vel;\r\n
    \r\n\r\nNow I'm not saying drop the x and y member vars, but link them to the ofVec internals thorugh either a union or reference. A reference would be easy through the constructor:\r\n\r\n
    \r\nclass ofRectangle {\r\n\r\n   public:\r\n\r\n     float &x, &y;\r\n     ofVec2f pos;\r\n     ....\r\n\r\n\r\nofRectangle::ofRectangle() : x(pos.x), y(pos.y) {\r\n\r\n...\r\n
    \r\n\r\nThis way we get the best of both worlds without broken code ...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/821","comments":3,"milestone":null,"number":821,"assignee":null,"closed_at":null,"title":"suggest: ofRectangle internal ofVec","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2011-11-26T20:19:31Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":2356801,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/821"},{"updated_at":"2011-12-01T18:13:35Z","body":"i'm experiencing troubles in windows when i use a system file-opening dialog from openframeworks. after using it Data root path seems to get pointing to a wrong location, causing troubles e.g. true type fonts not loading.\r\nif I use the open-file dialog once again to open a file in root folder of the application, then the data path is reset correctly.\r\nusing ofSetDataPathRoot() doens't seem to fix the issue, or maybe I'm not using it correctly.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/819","comments":2,"milestone":null,"number":819,"assignee":null,"closed_at":null,"title":"datapath messed in windows after using file open dialog","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"created_at":"2011-11-22T10:50:13Z","state":"open","user":{"url":"https://api.github.com/users/hvfrancesco","gravatar_id":"e02a8a3953de9d5d9ec1c7aa8d43eca4","login":"hvfrancesco","id":614123,"avatar_url":"https://secure.gravatar.com/avatar/e02a8a3953de9d5d9ec1c7aa8d43eca4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":2316595,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/819"}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=7 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4976'), ('content-length', '50046'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"87fd13521b0dc2d60ee04eb082151549"'), ('date', 'Tue, 29 May 2012 06:43:39 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-03-02T15:19:58Z","body":"Had a talk with Theo about this. I think that it would be really nice if it were possible to #define/ pre-process macro if you want to exclude modules like ofVideoPlayer/ofSoundplayer in your app. \r\n\r\nThis would be super helpful for a couple of reasons.\r\n\r\nplugins that are not able to use the modules can exclude them without hacking the core.\r\nif you want to reduce the final size of you app and its not using something like ofVideoPlayer you dont need to add it.\r\n\r\nwhat do you think...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/818","comments":1,"milestone":null,"number":818,"assignee":null,"closed_at":null,"title":"#defines for modules ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2011-11-21T16:45:51Z","state":"open","user":{"url":"https://api.github.com/users/vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","id":149997},"id":2306518,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/818"},{"updated_at":"2011-11-17T15:17:10Z","body":"Hello, \r\nRunning on MacOS 10.7 with XCode 4.1 I could not compile any of the examples in devApps, except for _DeployExamples. \r\nThe first error always encountered is: \r\n\r\n../../../libs/openFrameworks/utils/ofConstants.h:101:22: error: GL/glew.h: No such file or directory\r\n\r\nI tried both changing the paths of the include part in the code and dragging the GL folder that contains glew.h separately in the project, but neither worked. \r\n\r\nHelp please... \r\n\r\nThanks, \r\n\r\nIannis Zannos","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/815","comments":3,"milestone":null,"number":815,"assignee":null,"closed_at":null,"title":"Examples in devApps folder do not compile. Missing glew.h","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2011-11-17T13:45:47Z","state":"open","user":{"url":"https://api.github.com/users/iani","avatar_url":"https://secure.gravatar.com/avatar/8200f2533f23c9daaff63c4dba6f4819?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8200f2533f23c9daaff63c4dba6f4819","login":"iani","id":181956},"id":2268829,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/815"},{"updated_at":"2012-03-14T16:30:18Z","body":"Hello, \r\nIt took me more than 4 hours to get openFrameworks to compile deployExamples on MacOS X 10.7.2 with XCode 4.1, because of having to figure out two things; \r\n\r\n1. Need to change SDK for the deployExamples project definitions to 10.6\r\n2. Need to choose deployExamples in the build menu on the toolbar of the project window. \r\n\r\nPerhaps this info should be added to the readme.txt file of the present master branch in order to spare other people the hassle? \r\n\r\nI suggest the following addition: \r\n=====\r\nTo deploy openFrameworks examples from the files cloned via the present github repository, you should build and run the project: \r\napps/devApps/_DeployExamples/deployExamples.xcodeproj\r\n\r\nTo successfully compile in Lion (MacOS X 10.7) in XCode you should select in the project file list of XCode both the target deployExamples from the top level of the file hierarchy and the project openFrameworksLib.xcodeproj from inside the openFrameworks folder, then find the project definition, and change the SDK to MacOS X 10.6. You should do the same for the targets of those two items. \r\n\r\nImportant: Before clicking the Build and Go, or the Run button, make sure that you choose the deployExamples project in the menu on the toolbar of the project window. (Otherwise if you leave openFrameworks as selected project and push Run or Build and Run, no application will be created or run). \r\n\r\n\r\n=====\r\nHopefully this helps. \r\nCheers, \r\nIannis Zannos","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/814","comments":2,"milestone":null,"number":814,"assignee":null,"closed_at":null,"title":"Suggest adding some info about Lion to readme.txt","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2011-11-17T11:48:32Z","state":"open","user":{"url":"https://api.github.com/users/iani","avatar_url":"https://secure.gravatar.com/avatar/8200f2533f23c9daaff63c4dba6f4819?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8200f2533f23c9daaff63c4dba6f4819","login":"iani","id":181956},"id":2267854,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/814"},{"updated_at":"2011-11-16T04:46:48Z","body":"I'm trying this simple ofFbo example on OF 007, the system is Ubuntu Lucid, with an Intel 945 GPU.\r\n\r\n]//--------------------------------------------------------------\r\nvoid testApp::setup(){\r\n fbo.allocate(500, 500, GL_RGBA);\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::update(){\r\n\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::draw(){\r\n\r\n fbo.begin();\r\n ofClear(255, 255, 255, 255);\r\n ofSetColor(255, 0, 0);\r\n ofCircle(mouseX, mouseY, 100);\r\n fbo.end();\r\n\r\n ofSetColor(255);\r\n fbo.draw(0, 0);\r\n}\r\n\r\nI got a segfault in i915 dri, and any test using ofFbo leads to same results.\r\n\r\n\r\n#0 0x1bd3c36 _mesa_FramebufferRenderbufferEXT() (/usr/lib/dri/i915_dri.so:??)\r\n#1 0x80cc56a ofFbo::createAndAttachRenderbuffer(this=0x85b28e8, internalFormat=34041, attachmentPoint=33306) (../../../openFrameworks/gl/ofFbo.cpp:489)\r\n#2 0x80cc352 ofFbo::allocate(this=0x85b28e8, _settings=...) (../../../openFrameworks/gl/ofFbo.cpp:388)\r\n#3 0x80cc269 ofFbo::allocate(this=0x85b28e8, width=500, height=500, internalformat=6408, numSamples=0) (../../../openFrameworks/gl/ofFbo.cpp:363)\r\n#4 0x80562ec testApp::setup(this=0x85b28d8) (src/testApp.cpp:5)\r\n#5 0x8059ca6 ofNotifySetup() (../../../openFrameworks/events/ofEvents.cpp:73)\r\n#6 0x8056a23 ofAppGlutWindow::runAppViaInfiniteLoop(this=0xbffff2f8, appPtr=0x85b28d8) (../../../openFrameworks/app/ofAppGlutWindow.cpp:317)\r\n#7 0x80584cc ofRunApp(OFSA=0x85b28d8) (../../../openFrameworks/app/ofAppRunner.cpp:82)\r\n#8 0x8055bfc main() (src/main.cpp:14)\r\n\r\nany idea about what I should try or where the problem could be? has anyone experienced similar problems?\r\n\r\nthanks in advance to all","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/811","comments":1,"milestone":null,"number":811,"assignee":null,"closed_at":null,"title":"ofFBO causes segfault on Linux Ubuntu Lucid with i945 GPU","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2011-11-13T20:49:26Z","state":"open","user":{"url":"https://api.github.com/users/hvfrancesco","avatar_url":"https://secure.gravatar.com/avatar/e02a8a3953de9d5d9ec1c7aa8d43eca4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e02a8a3953de9d5d9ec1c7aa8d43eca4","login":"hvfrancesco","id":614123},"id":2223158,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/811"},{"updated_at":"2012-03-09T18:51:38Z","body":"Julapy and I were discussing how to do this on the forum http://forum.openframeworks.cc/index.php?topic=7852 and I think adding a flag to allocate for mipmaps to ofTexture and ofFbo would come in handy for some people.\r\n\r\n```c\r\nvoid ofTexture::allocate(int w, int h, int internalGlDataType, bool bUseARBExtention, bool generateMipmaps = false) \r\n{\r\n if( generateMipmaps )\r\n {\r\n glTexParameterf( texData.textureTarget, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_NEAREST );\r\n glTexParameterf( texData.textureTarget, GL_TEXTURE_MAG_FILTER, GL_LINEAR );\r\n glTexParameterf( texData.textureTarget, GL_GENERATE_MIPMAP, GL_TRUE );\r\n }\r\n```\r\n\r\nand in ofFbo\r\n\r\n```c\r\nstruct Settings {\r\n bool generateMipMaps; // or int\r\n}\r\n```\r\n\r\nI'd be happy to do this & submit a pull request too.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/810","comments":2,"milestone":null,"number":810,"assignee":null,"closed_at":null,"title":"Add flag for mipmapping in ofTexture/ofFbo","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2011-11-11T07:34:53Z","state":"open","user":{"url":"https://api.github.com/users/joshuajnoble","avatar_url":"https://secure.gravatar.com/avatar/10960ba0f305803a1cdc7cd6188d643b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"10960ba0f305803a1cdc7cd6188d643b","login":"joshuajnoble","id":237423},"id":2206980,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/810"},{"updated_at":"2011-12-03T23:58:48Z","body":"right now it's inside ofMath.h","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/800","comments":3,"milestone":null,"number":800,"assignee":null,"closed_at":null,"title":"ofInsidePoly should be a static method of ofPolyline","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2011-10-30T04:16:14Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":2089523,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/800"},{"updated_at":"2011-12-05T21:31:07Z","body":"ofRect very commonly has a little chunk missing from one corner.\r\n\r\nthere is also a discrepancy between the filled and outline rectangles. it's not clear whether the outline rect should be within the bounds of the filled rect, or enclosing the filled rect, and in practice it can be a little of both.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/798","comments":2,"milestone":null,"number":798,"assignee":null,"closed_at":null,"title":"ofRect isn't quite rectangular","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2011-10-29T06:38:43Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":2086039,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/798"},{"updated_at":"2011-10-29T02:37:28Z","body":"we're working on some ideas regarding procedural animation and posing:\r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,7714.new.html#new\r\n\r\nwhich should be more powerful than playing back manual animations.\r\n\r\nintegrating it into the core would be ideal, but we're still trying to understand how it works.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/797","comments":0,"milestone":null,"number":797,"assignee":null,"closed_at":null,"title":"procedural posing of bones in ofxAssimpModelLoader","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2011-10-29T02:37:28Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":2085543,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/797"},{"updated_at":"2012-02-27T03:48:47Z","body":"this fails to display any text:\r\n\r\n\tofBackground(0);\r\n\tofSetColor(255, 254);\r\n\tofDrawBitmapString(\"this text is not displayed\", 10, 20);\r\n\r\nthis is because line 448 of ofBitmapFont.h reads:\r\n\r\n\tglAlphaFunc(GL_EQUAL, 1.0f);\r\n\r\nwhich should be changed to:\r\n\r\n\tglAlphaFunc(GL_GREATER, 0);","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/795","comments":0,"milestone":{"closed_issues":16,"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":795,"assignee":null,"closed_at":null,"title":"ofDrawBitmapString does not work with alpha","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2011-10-27T09:50:07Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":2066090,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/795"},{"updated_at":"2011-10-25T23:39:09Z","body":"\r\nThis should be user adjustable / on / off. it's sort of a drag to be using easy cam and trigger double clicks are you are interacting with a gui, etc.... \r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/793","comments":1,"milestone":null,"number":793,"assignee":null,"closed_at":null,"title":"easyCam -- ability to disable doubleClick reset","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2011-10-25T23:36:40Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":2051692,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/793"},{"updated_at":"2011-12-03T23:53:12Z","body":"when drawing certain shapes i get crashes, debugger claims a tessellator issue pointing to \r\n\"if (!tessTesselate(cacheTess, polyWindingMode, TESS_POLYGONS, 3, 3, 0)){\" in \"performTessellation\" function in file ofTessellator.cpp ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/789","comments":1,"milestone":null,"number":789,"assignee":null,"closed_at":null,"title":"crashes with tessellator","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2011-10-21T14:49:12Z","state":"open","user":{"url":"https://api.github.com/users/ruim","avatar_url":"https://secure.gravatar.com/avatar/18875575931764c674b5fc64ae8b7274?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"18875575931764c674b5fc64ae8b7274","login":"ruim","id":480525},"id":2016194,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/789"},{"updated_at":"2011-10-19T22:39:37Z","body":"would be useful as well. Perhaps an ofxMeshUtils would be in order for upcoming versions...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/787","comments":0,"milestone":null,"number":787,"assignee":null,"closed_at":null,"title":"half edge mesh structure extension of ofMesh","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2011-10-19T22:39:37Z","state":"open","user":{"url":"https://api.github.com/users/kpasko","avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","login":"kpasko","id":167271},"id":1999520,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/787"},{"updated_at":"2011-11-04T21:59:22Z","body":"would be quite useful","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/786","comments":1,"milestone":null,"number":786,"assignee":null,"closed_at":null,"title":"axis aligned bounding box tree for ofMesh","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2011-10-19T22:38:35Z","state":"open","user":{"url":"https://api.github.com/users/kpasko","avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","login":"kpasko","id":167271},"id":1999513,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/786"},{"updated_at":"2011-12-27T17:58:58Z","body":"I am loading in boujou camera data (translation and euler rotation), and I get really fine results when I do: \r\n\r\nglTranslatef(tx,ty,tz);\r\nglRotatef(rx, 1,0,0);\r\nglRotatef(ry, 0,1,0);\r\nglRotatef(rz, 0,0,1);\r\n\r\nbut when I create an ofCamera, and do: \r\n\r\nsetPosition(ofPoint(tx, ty, tz));\r\nsetOrientation(ofPoint(rx, ry, rz));\r\n\r\nI get strange results. I am wondering about ofNodes \"setOrientation\" and if it's really right in that the order is switched:\r\n\r\nsetOrientation(ofQuaternion(eulerAngles.y, ofVec3f(0, 1, 0), eulerAngles.x, ofVec3f(1, 0, 0), eulerAngles.z, ofVec3f(0, 0, 1)));\r\n\r\nalso, maybe I am mis interpreting what \"set orientation\" does. But I can't seem to get similar results with ofCam, even if I do, for example, \r\n\r\ncam.setPosition( tx,ty,tz);\r\ncam.rotate( rx, 1,0,0);\r\ncam.rotate( ry, 0,1,0);\r\ncam.rotate( rz, 0,0,1);\r\n\r\nI still don't get the same results as when I do it via opengl. This seems like a bug maybe with how ofNode handles rotation?\r\n\r\n(note , I am calling resetTranform() on the camera, so it's not an accumulation of rotations.... it's just that I can't seem to find a way to get ofCam to rotate in the same way as opengl commands). \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/785","comments":2,"milestone":null,"number":785,"assignee":null,"closed_at":null,"title":"ofCamera setOrientation gives odd results","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2011-10-19T11:16:42Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":1992818,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/785"},{"updated_at":"2012-03-09T11:46:35Z","body":"It seems to be happening pretty far in, if you put debug statements in touchesMoved in EAGL view, you will see that y is set to the x value of the touch.\r\n\r\nThis does not occur in debug mode, or in the simulator, and it has to be done with xcode4. I am running the newest ios5 beta as well.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/778","comments":2,"milestone":null,"number":778,"assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"closed_at":null,"title":"running an iphone retina app in release mode causes touch.x == touch.y","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2011-10-18T11:26:26Z","state":"open","user":{"url":"https://api.github.com/users/jonbro","avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"893ec14dc008e3774afe5841115920d6","login":"jonbro","id":1597},"id":1938472,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/778"},{"updated_at":"2011-10-16T18:30:08Z","body":"\r\nat the moment, the ofCamera draw calls ofNode, which does't really give you a clear indication of which way the camera is looking. even that is weird, because a camera looks on -z, and the node draw draws a line on positive z. \r\n\r\nI suggest we add something that draws a bit of a frustum (ie, fov, etc) and gives you a feeling about orientation. \r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/774","comments":0,"milestone":null,"number":774,"assignee":null,"closed_at":null,"title":"ofCamera draw() should be more indicative of where the camera is facing. ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2011-10-16T18:30:08Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":1922704,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/774"},{"updated_at":"2011-10-12T15:09:29Z","body":"Currently we have:\r\n\tvirtual void draw(float x,float y)=0;\r\n\tvirtual void draw(float x,float y,float w, float h)=0;\r\n\r\n\tvirtual float getHeight()=0;\r\n\tvirtual float getWidth()=0;\r\n\r\nSince we're insisting that the user define a getWidth and getHeight, can I ask why we don't set the default of draw(x,y) to be\r\n virtual void draw(float x,float y) {draw(x, y, getWidth(), getHeight()) };\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/772","comments":0,"milestone":null,"number":772,"assignee":null,"closed_at":null,"title":"ofBaseDraws draw(x, y) default","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2011-10-12T15:08:55Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":1888302,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/772"},{"updated_at":"2012-03-14T15:11:08Z","body":"Greetings,\r\n\r\nI downloaded OF v.007 on my laptop running Vista SP2. I compiled and ran some of the example apps like imageLoader example using VS2010. \r\n\r\nTextures seem to be broken. Images appear as white slabs.\r\n\r\nI tracked it down and found that disabling ArbTex, with ofDisableArbTex(), will get the textures working again. \r\n\r\nUsing ArbTex worked fine in OF v0.62 on the same machine.\r\n\r\nLaptop:\r\nHP Pavilion dv600 Notebook PC\r\nManufacturer: Hewlett-Packard\r\nOperating System: Windows Vista Home Premium, Service Pack 2 (6.0.6002)\r\nPhysical Memory:\t 2037 MB\r\nProcessor: Intel Core2 Duo PU T5250 @ 1.5 GHz, 1.5 GHz\r\n\r\nCompiler:\r\nMicrosoft Visual Studio 2010\r\nInstalled Version: Professional\r\nMicrosoft Visual C++ 2010\r\n\r\nGraphics:\r\nGraphics: Intel Graphics Media Accelerator Driver for Mobile\r\nGraphics: Driver Version: 7.14.10.1244\r\nDirectX Version:\t10.0\r\nOpenGL Version 1.5\r\n\r\nHere's a full report of OpenGL info from GLview:\r\n\r\n\r\nRenderer: Intel 965/963 Graphics Media Accelerator\r\nVendor: Intel\r\nMemory: 448 MB\r\nVersion: 1.5.0 - Build 7.14.10.1244\r\nShading language version: N/A\r\n\r\n\r\nMax texture size: 2048 x 2048\r\nMax texture coordinates: 8\r\nMax vertex texture image units: 0\r\nMax texture image units: 16\r\nMax geometry texture units: 0\r\nMax anisotropic filtering value: 2\r\nMax number of light sources: 16\r\nMax viewport size: 2048 x 2048\r\nMax uniform vertex components: 0\r\nMax uniform fragment components: 0\r\nMax geometry uniform components: 0\r\nMax varying floats: 0\r\nMax samples: 0\r\nMax draw buffers: 0\r\n\r\n\r\nExtensions: 56\r\n\r\nGL_3DFX_texture_compression_FXT1\r\nGL_ARB_depth_texture\r\nGL_ARB_fragment_program\r\nGL_ARB_multitexture\r\nGL_ARB_occlusion_query\r\nGL_ARB_point_parameters\r\nGL_ARB_shadow\r\nGL_ARB_texture_border_clamp\r\nGL_ARB_texture_compression\r\nGL_ARB_texture_cube_map\r\nGL_ARB_texture_env_add\r\nGL_ARB_texture_env_combine\r\nGL_ARB_texture_env_crossbar\r\nGL_ARB_texture_env_dot3\r\nGL_ARB_transpose_matrix\r\nGL_ARB_vertex_buffer_object\r\nGL_ARB_vertex_program\r\nGL_ARB_window_pos\r\nGL_EXT_abgr\r\nGL_EXT_bgra\r\nGL_EXT_blend_color\r\nGL_EXT_blend_func_separate\r\nGL_EXT_blend_minmax\r\nGL_EXT_blend_subtract\r\nGL_EXT_clip_volume_hint\r\nGL_EXT_compiled_vertex_array\r\nGL_EXT_draw_range_elements\r\nGL_EXT_fog_coord\r\nGL_EXT_multi_draw_arrays\r\nGL_EXT_packed_pixels\r\nGL_EXT_rescale_normal\r\nGL_EXT_secondary_color\r\nGL_EXT_separate_specular_color\r\nGL_EXT_shadow_funcs\r\nGL_EXT_stencil_two_side\r\nGL_EXT_stencil_wrap\r\nGL_EXT_texture3D\r\nGL_EXT_texture_compression_s3tc\r\nGL_EXT_texture_env_add\r\nGL_EXT_texture_env_combine\r\nGL_EXT_texture_filter_anisotropic\r\nGL_EXT_texture_lod_bias\r\nGL_IBM_texture_mirrored_repeat\r\nGL_NV_blend_square\r\nGL_NV_texgen_reflection\r\nGL_SGIS_generate_mipmap\r\nGL_SGIS_texture_edge_clamp\r\nGL_SGIS_texture_lod\r\nGL_WIN_swap_hint\r\nWGL_ARB_buffer_region\r\nWGL_ARB_extensions_string\r\nWGL_ARB_make_current_read\r\nWGL_ARB_pbuffer\r\nWGL_ARB_pixel_format\r\nWGL_EXT_extensions_string\r\nWGL_EXT_swap_control\r\n\r\nCore features\r\nv1.1 (100 % - 7/7)\r\nv1.2 (100 % - 8/8)\r\nv1.3 (100 % - 9/9)\r\nv1.4 (100 % - 15/15)\r\nv1.5 (100 % - 3/3)\r\nv2.0 (10 % - 1/10)\r\nv2.1 (0 % - 0/3)\r\nv3.0 (0 % - 0/23)\r\nv3.1 (0 % - 0/8)\r\nv3.2 (0 % - 0/10)\r\nv3.3 (0 % - 0/10)\r\nv4.0 (0 % - 0/14)\r\nv4.1 (0 % - 0/7)\r\nv4.2 (0 % - 0/12)\r\n\r\nOpenGL driver version check (Current: 1.5.0 - Build 7.14.10.1244, Latest known: ):\r\nLatest version of display drivers found\r\nAccording the database, you are running the latest display drivers for your video card.\r\n\r\nNo ICD registry entry\r\nThe current OpenGL driver doesn't expose the SOFTWARE/Microsoft/Windows (NT)/CurrentVersion/OpenGLDrivers registry entry. Unable to detect the driver version, driver revision name and filename.\r\n\r\nCompiled vertex array support\r\nThis feature improves OpenGL performance by using video memory to cache transformed vertices.\r\n\r\nMultitexture support\r\nThis feature accelerates complex rendering such as lightmaps or environment mapping.\r\n\r\nSecondary color support\r\nThis feature provides an alternate method of coloring specular highlights on polygons.\r\n\r\nS3TC compression support\r\nThis feature improves texture mapping performance in some applications by using lossy compression.\r\n\r\nTexture edge clamp support\r\nThis feature improves texturing quality by adding clamping control to edge texel filtering.\r\n\r\nVertex program support\r\nThis feature enables a wide variety of effects via flexible vertex programming (equivalent to DX8 Vertex Shader.)\r\n\r\nFragment program support\r\nThis feature enables a wide variety of effects via per pixel programming (equivalent to DX9 Pixel Shader.)\r\n\r\nTexture anisotropic filtering support\r\nThis feature improves the quality of texture mapping on oblique surfaces.\r\n\r\nOcclusion test support\r\nThis feature provides hardware accelerated culling for objects.\r\n\r\nNo OpenGL Shading Language support\r\nThis may break compatibility for applications using per pixel shading.\r\n\r\nNo Frame buffer object support\r\nThis may break compatibility for applications using render to texture functions.\r\n\r\nDisabling ArbTex will work for me, but I thought others might have the same problem with 007.\r\n\r\n- Rob","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/771","comments":3,"milestone":{"closed_issues":16,"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":771,"assignee":null,"closed_at":null,"title":"Textures Didn't Work in 007 on my Laptop, Had to Disable ArbTex","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"created_at":"2011-10-11T13:02:28Z","state":"open","user":{"url":"https://api.github.com/users/robgonsalves","avatar_url":"https://secure.gravatar.com/avatar/7c2e18ac17a0b907dbac36aaa6a9ec0f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"7c2e18ac17a0b907dbac36aaa6a9ec0f","login":"robgonsalves","id":1119357},"id":1874373,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/771"},{"updated_at":"2011-10-24T15:27:29Z","body":"When integrating openFrameworks into existing build systems, it would make things easier if this common include convention was followed.\r\n\r\ni.e. to include openFrameworks headers in my own build, because all the includes look like:\r\n\r\n#include \"ofMesh.h\"\r\n#include \"ofAppGlutWindow.h\"\r\n#include \"ofSerial.h\"\r\n\r\nI have to add all these paths to my include paths:\r\n\r\n\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/app\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/3d\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/communication\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/gl\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/graphics\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/utils\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/types\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/math\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/events\r\n\r\n\r\n\r\nIt is common to instead structure files like (in the case of openFrameworks):\r\n\r\noF/include/oF\r\noF/include/oF/app\r\noF/include/oF/3d\r\noF/include/oF/communication\r\noF/include/oF/gl\r\noF/include/oF/graphics\r\n...etc...\r\n\r\nand just write:\r\n\r\n#include \r\n#include \r\n\r\netc.\r\n\r\nI'm not sure if there is an argument to leave it like it is because it's easier for oF's demographic? But I would say teaching the some_lib/include/some_lib/ convention would help people use more C++.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/767","comments":2,"milestone":null,"number":767,"assignee":null,"closed_at":null,"title":"#include instead of #include ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2011-10-09T03:58:30Z","state":"open","user":{"url":"https://api.github.com/users/gimlids","avatar_url":"https://secure.gravatar.com/avatar/cc4cace34c61103f0624002a692820f7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"cc4cace34c61103f0624002a692820f7","login":"gimlids","id":186277},"id":1854874,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/767"},{"updated_at":"2011-10-12T13:12:02Z","body":"\r\nat the moment, ofNode has a draw function that has awkwardly hard coded sizes: \r\n\r\nvirtual void customDraw() {\r\n\t\tofBox(10);\r\n\t\tofDrawAxis(20);\r\n\t}\r\n\r\nI'd like a draw(size) option. obviously I can extend ofNode and create my own functions, but if I just draw a node, I might want to adjust the size internally, as the \"10\" and \"20\" might not make any sense based on where I am drawing, for example here: \r\n\r\nhttp://imgur.com/idWPp\r\n\r\nlooks quite weird, but at 1/10th the size would look ok. \r\n\r\nas most other OF objects have draw(size) options, I think ofNodeShould have this too. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/766","comments":4,"milestone":null,"number":766,"assignee":null,"closed_at":null,"title":"ofNode should have a draw(float size) option","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2011-10-08T09:38:46Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":1851779,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/766"},{"updated_at":"2011-12-03T23:51:04Z","body":"edit: originally this issue was about adding glu functions. now i realize any remaining ones need to be removed. but it's still relevant to have an ofScreenToWorld and ofWorldToScreen. \r\n\r\nthis would be really awesome. there is already some code in ofDrawBitmapString that's using gluProject, it would be good to clean it up.\r\n\r\nthe main issue is that glu is not on iOS, so we'd need to find/write our own implementation.\r\n\r\nhere's a first pass:\r\n\r\n\tGLdouble modelviewMatrix[16], projectionMatrix[16];\r\n\tGLint viewport[4];\r\n\tvoid updateProjectionState() {\r\n\t\tglGetDoublev(GL_MODELVIEW_MATRIX, modelviewMatrix);\r\n\t\tglGetDoublev(GL_PROJECTION_MATRIX, projectionMatrix);\r\n\t\tglGetIntegerv(GL_VIEWPORT, viewport);\r\n\t}\r\n\r\n\tofVec3f ofWorldToScreen(ofVec3f world) {\r\n\t\tupdateProjectionState();\r\n\t\tGLdouble x, y, z;\r\n\t\tgluProject(world.x, world.y, world.z, modelviewMatrix, projectionMatrix, viewport, &x, &y, &z);\r\n\t\tofVec3f screen(x, y, z);\r\n\t\tscreen.y = ofGetHeight() - screen.y;\r\n\t\treturn screen;\r\n\t}\r\n\r\n\tofVec3f ofScreenToWorld(ofVec3f screen) {\r\n\t\tupdateProjectionState();\r\n\t\tGLdouble x, y, z;\r\n\t\tscreen.y = ofGetHeight() - screen.y;\r\n\t\tgluUnProject(screen.x, screen.y, screen.z, modelviewMatrix, projectionMatrix, viewport, &x, &y, &z);\r\n\t\tofVec3f world(x, y, z);\r\n\t\treturn world;\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/765","comments":4,"milestone":null,"number":765,"assignee":null,"closed_at":null,"title":"remove gluProject and gluUnProject, add screenToWorld, worldToScreen","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2011-10-07T09:46:06Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":1841802,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/765"},{"updated_at":"2012-03-10T06:02:37Z","body":"I made an app using the preRelease version 007, I have a gui view with a bunch of buttons and sliders this view is 1/3 of the screen size and sits at the bottom, it is an Universal app that allows any orientation on the iPad and supports Portrait only for the iPhone / iPod Touch, here is my problem I need to allow touches to pass through the gui view for this I use **[ofxiPhoneGetGLView() addSubview:guiViewController.view];** the problem this method is that the gui view does not call the **willAnimateRotationToInterfaceOrientation()** at launch, and I get the following message in the console\r\n_**Action connections from <UIView: 0x5b88d0; frame = (20 0; 280 320); autoresize = LM+RM+H; layer = <CALayer: 0x5b7d30>> are not supported.**_\r\n\r\n if I use **[ofxiPhoneGetUIWindow() addSubview:guiViewController.view];** the **willAnimateRotationToInterfaceOrientation()** method works at launch as expected and the gui view adjust itself to the correct position and size\r\n\r\nAny help will be much appreciated","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/764","comments":1,"milestone":null,"number":764,"assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"closed_at":null,"title":"Autoresize problem in iOS","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2011-10-05T20:35:04Z","state":"open","user":{"url":"https://api.github.com/users/nardove","avatar_url":"https://secure.gravatar.com/avatar/8022cb5f529975afbc64cc9312008d8c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8022cb5f529975afbc64cc9312008d8c","login":"nardove","id":277690},"id":1827792,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/764"},{"updated_at":"2011-09-28T01:00:34Z","body":"ofxXmlXettings uses TinyXML which gives you lots of useful error info like what line the error is on as well as what it has trouble reading. This is super awesome and useful to people like me who always mistype xml here and there.\r\n\r\nCurrently ofxXmlSettings::loadFile only returns a bool and you're left to figure out if it's a path issue, bad xml formatting, etc. At the least, we should be able to grab an error string.\r\n\r\nHere's how to do it:\r\n
    \r\nstd::string Xml::getErrorString(const TiXmlDocument* xmlDoc)\r\n{\r\n    if(xmlDoc == NULL)\r\n        return \"\";\r\n\r\n    std::stringstream error;\r\n    error << \"line \" <<  xmlDoc->ErrorRow() << \", \" << (std::string) xmlDoc->ErrorDesc();\r\n    return error.str();\r\n}\r\n
    ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/760","comments":1,"milestone":null,"number":760,"assignee":null,"closed_at":null,"title":"ofxXmlSettings does not print any useful error messages","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2011-09-28T00:53:09Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":1758237,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/760"},{"updated_at":"2012-02-27T03:48:47Z","body":"This would be the best thing ever. \r\n\r\nstring ipAddr = ofxXmlSettings::readValueFromFile(\"data.xml\", \"ip\", \"127.0.0.1\"); \r\n\r\nofxXmlSettings::saveValueToFile(\"data.xml\", \"ip\", ipAddr); ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/758","comments":0,"milestone":{"closed_issues":16,"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":758,"assignee":null,"closed_at":null,"title":"non ofxXmlSettings object read and write value","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2011-09-26T11:54:06Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":1738864,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/758"},{"updated_at":"2011-09-25T13:22:59Z","body":"in my opinion, it would make sense for ofPixels::allocate to initialize the new memory to 0. even for large images, i don't think this is such an expensive operation.\r\n\r\ni discovered that it is not initialized to 0 when i had a really weird bug -- some code that gave me different results depending on whether i loaded another image before allocating or not. i was expecting OF to act like opencv, which also sets new memory to 0. this would be in line with ofVec*, ofColor, and a few other things, which are all allocated to 0.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/757","comments":0,"milestone":null,"number":757,"assignee":null,"closed_at":null,"title":"ofPixels::allocate should init new memory","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2011-09-25T13:22:59Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":1733504,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/757"}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=8 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4975'), ('content-length', '43399'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"854a64f2869b18d01ef68be3fccb02bb"'), ('date', 'Tue, 29 May 2012 06:43:40 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-09-22T08:20:27Z","body":"void ofFbo::end() {\r\n\tunbind();\r\n\tif(ofGetGLRenderer()){\r\n\t\tofGetGLRenderer()->setCurrentFBO(NULL);\r\n\t}\r\n\tofPopView();\r\n}\r\n\r\nthis will go wrong if nested fbo as following\r\n\r\nfbo1.begin();\r\n...\r\n fbo2.begin();\r\n ...\r\n fbo2.end();\r\n...\r\nfbo1.end();\r\n\r\nso probably the current fbo must not be set NULL\r\n\r\nerror show's in\r\nvoid ofGLRenderer::viewport(float x, float y, float width, float height, bool invertY) {\r\n\tif(width == 0) width = ofGetWindowWidth();\r\n\tif(height == 0) height = ofGetWindowHeight();\r\n\r\n\tif (invertY){\r\n\t\tif(currentFbo){\r\n\t\t\ty = currentFbo->getHeight() - (y + height);\r\n\t\t}else{\r\n\t\t\ty = ofGetWindowHeight() - (y + height);\r\n\t\t}\r\n\t}\r\n\tglViewport(x, y, width, height);\t\r\n}\r\nthe 'y' will computing wrong when current height is wrong\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/754","comments":0,"milestone":null,"number":754,"assignee":null,"closed_at":null,"title":"nested fbo causing currentFBO lost","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2011-09-22T08:20:27Z","state":"open","user":{"url":"https://api.github.com/users/liquidzym","gravatar_id":"166640c513e589c86d2de49c52258eb4","login":"liquidzym","id":51957,"avatar_url":"https://secure.gravatar.com/avatar/166640c513e589c86d2de49c52258eb4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1708332,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/754"},{"updated_at":"2012-03-10T04:38:03Z","body":"I found an issue with readToPixels() on iOS that works as expected when compiled for OSX. \r\n\r\nInitialize an FBO:\r\n\r\n   ofFbo::Settings settings;\r\n    settings.width = 1024;\r\n    settings.height = 1024;\r\n    settings.internalformat = GL_RGB;\r\n    settings.numSamples = 0;\r\n    settings.useDepth = false;\r\n    settings.useStencil = false;\r\n    screenFBO.allocate(settings);\r\n\r\nthen draw into the FBO and attempt to retrieve the pixels:\r\n\r\n ofPixels pixels; \r\n screenFBO.readToPixels(pixels); \r\n\r\nThis gives me the ofPixels I'm expecting in OSX, in iOS the pixels aren't populated. I can draw the FBO and see it on screen, I just can't get the pixels out of the texture in iOS.\r\n\r\nThis seems to be related to this portion of readToPixels() from ofFbo.cpp:\r\n\r\n bind(); \r\n int format,type; \r\n ofGetGlFormatAndType(settings.internalformat,format,type); \r\n glReadPixels(0,0,settings.width, settings.height, format, GL_UNSIGNED_BYTE, pixels.getPixels()); \r\n unbind(); \r\n\r\nHas anyone experienced this issue – any fixes?\r\n\r\nThanks,\r\nSteve","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/753","comments":1,"milestone":null,"number":753,"assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"closed_at":null,"title":"ofFbo readToPixels() in iOS","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2011-09-21T20:50:33Z","state":"open","user":{"url":"https://api.github.com/users/stephen-baker","gravatar_id":"96e9ae469240e57fc3ebeed6769c7016","login":"stephen-baker","id":1047836,"avatar_url":"https://secure.gravatar.com/avatar/96e9ae469240e57fc3ebeed6769c7016?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1704855,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/753"},{"updated_at":"2011-09-21T10:37:20Z","body":"I'm having a problem with creating an image out of ofFbo pixels with some image and fbo sizes\r\n\r\n```c++\r\nvoid testApp::setup(){\r\n\r\n ofSetLogLevel(OF_LOG_VERBOSE);\r\n\tofSetVerticalSync(false);\r\n ofBackground(34, 34, 34);\r\n\tofEnableAlphaBlending();\r\n\r\n ofSetWindowShape(1024, ofGetScreenHeight()-70);\r\n ofSetFrameRate(60);\r\n\r\n frame.loadImage(\"lay.png\");\r\n \r\n imageHeight = 1172;\r\n imageWidth = 1182;\r\n\r\n mergeFbo.allocate(imageWidth, imageHeight, GL_RGB);\r\n\r\n final.setImageType(OF_IMAGE_COLOR);\r\n\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::draw(){\r\n\r\n ofEnableAlphaBlending();\r\n\r\n mergeFbo.begin();\r\n\r\n ofClear(0, 0, 0, 1);\r\n\r\n frame.draw(0, 0);\r\n\r\n mergeFbo.end();\r\n\r\n\r\n mergeFbo.draw(200, 100, 100, 200);\r\n \r\n \r\n mergeFbo.readToPixels(pixels);\r\n final.setFromPixels(pixels);\r\n\r\n final.draw(0, 0);\r\n\r\n}\r\n```","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/752","comments":1,"milestone":null,"number":752,"assignee":null,"closed_at":null,"title":"ofFbo (problems with certain image dimensions)","labels":[],"created_at":"2011-09-20T21:16:24Z","state":"open","user":{"url":"https://api.github.com/users/ammalgamma","gravatar_id":"96b69749f518cf6a2964b999bf29ee8e","login":"ammalgamma","id":517000,"avatar_url":"https://secure.gravatar.com/avatar/96b69749f518cf6a2964b999bf29ee8e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1691874,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/752"},{"updated_at":"2011-09-19T09:04:12Z","body":"feature request for a more generic ofJoin() function that accepts vectors of all kinds of objects (float, int, ofVec2f, etc) rather than just string. anything that implements operator<<\r\n\r\nhere's an example using stl:\r\n\r\n\t#include \r\n\ttemplate \r\n\tstring ofJoin(vector& elements, string delimiter) {\r\n\t\tstringstream result;\r\n\t\tcopy(elements.begin(), elements.end(), ostream_iterator(result, delimiter.c_str()));\r\n\t\treturn result.str();\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/748","comments":3,"milestone":null,"number":748,"assignee":null,"closed_at":null,"title":"more generic ofJoin","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2011-09-17T07:26:18Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1668066,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/748"},{"updated_at":"2011-09-21T17:22:14Z","body":"\r\nI'm looking into creating some new primitives for OF [1] and the polygon winding has me a bit confused.\r\n\r\nIf you take for instance \"graphicsExample\" an you add:\r\n\r\n```glEnable( GL_CULL_FACE );```\r\n\r\nSomewhere you will no longer see much drawn to screen.\r\n\r\nGL_CCW is the default FrontFace for OpenGL, but OF seems to be the opposite.\r\nhttp://www.khronos.org/opengles/sdk/docs/man/xhtml/glFrontFace.xml\r\n\r\nWhich is coolio of course, as long as we are consistent.\r\n\r\nOur options are either to throw a ```glFrontFace( GL_CW );``` in there somewhere OR re-write all the drawing to be consistent with OpenGL default, not sure what is the best in the long run.\r\n\r\nWhat say you all?\r\n\r\n/A\r\n\r\n\r\n[1] https://github.com/andreasmuller/openFrameworks/blob/develop-opengles2/libs/openFrameworks/3d/of3dPrimitives.h","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/745","comments":2,"milestone":null,"number":745,"assignee":null,"closed_at":null,"title":"Polygon winding","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2011-09-14T13:50:48Z","state":"open","user":{"url":"https://api.github.com/users/andreasmuller","gravatar_id":"210831a04d36f1aa26413ecbdbd4b07c","login":"andreasmuller","id":791114,"avatar_url":"https://secure.gravatar.com/avatar/210831a04d36f1aa26413ecbdbd4b07c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1643672,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/745"},{"updated_at":"2012-03-17T16:52:58Z","body":"i think it would be wonderful if every OF example was named ofApp instead of testApp. especially because:\r\n\r\n\tclass ofApp : public ofBaseApp {\r\n\r\nis more natural than:\r\n\r\n\tclass testApp : public ofBaseApp {\r\n\r\ngiven the rest of OF naming conventions. and it would increase consistency with things like:\r\n\r\n\tofGetAppPtr();\r\n\tofAppBaseWindow\r\n\tofAppGlutWindow\r\n\r\nthis is a massive refactor that shouldn't be difficult, but should be done at the same time as something like a code formatting cleanup.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/744","comments":10,"milestone":null,"number":744,"assignee":null,"closed_at":null,"title":"rename testApp to ofApp","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2011-09-14T07:02:36Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1641198,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/744"},{"updated_at":"2011-09-26T11:56:48Z","body":"calling ofEnableAlphaBlending() crashes my app on a machine with opengl version 1.1.0, because glBlendEquation(), introduced at opengl 1.3, needs to gracefully degrade. Here is the solution:\r\n\r\n
    \r\nvoid ofEnableAlphaBlending_slightlySafer(void){\r\n\tconst GLubyte * version = glGetString(GL_VERSION);\r\n\tint major, minor;\r\n\tsscanf((const char*)version, \"%i.%i\",&major, &minor);\r\n\r\n\tif(major > 1 || (major==1 && minor>=3)){\r\n\t\tofEnableAlphaBlending();\r\n\t}\t\r\n}\r\n
    ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/743","comments":1,"milestone":null,"number":743,"assignee":null,"closed_at":null,"title":"seg fault on ofEnableAlphaBlending() -> glBlendEquation()","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2011-09-13T22:53:55Z","state":"open","user":{"url":"https://api.github.com/users/jtnimoy","gravatar_id":"153ba4a8df491692b717daad7a6030be","login":"jtnimoy","id":183796,"avatar_url":"https://secure.gravatar.com/avatar/153ba4a8df491692b717daad7a6030be?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1639020,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/743"},{"updated_at":"2012-03-10T04:39:00Z","body":"In ofxiPhoneAppDelegate.mm in the setAnimationFrameInterval method should be changed from\r\n\r\n\r\nif (animating){\r\n [self stopAnimation];\r\n [self startAnimation];\r\n}\r\n\r\nto\r\n\r\nif (animating){\r\n [self stopAnimation];\r\n}\r\n [self startAnimation];\r\n\r\nThis will allow it start again if it's stopped.\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/738","comments":0,"milestone":null,"number":738,"assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"closed_at":null,"title":"ofxiPhone - setting ofSetFrameRate(0) and then back to > 0 doesn't start again","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2011-09-12T21:23:04Z","state":"open","user":{"url":"https://api.github.com/users/cerupcat","gravatar_id":"91b3d4bfbbb99d840b096cde3af877bf","login":"cerupcat","id":204151,"avatar_url":"https://secure.gravatar.com/avatar/91b3d4bfbbb99d840b096cde3af877bf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1628082,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/738"},{"updated_at":"2011-12-03T22:55:09Z","body":"it would be awesome to have lines drawn nicer when they are 1 thick and 2 make sharp edges. processing has some functions strokeCap() and strokeJoin() for setting this behavior, but it doesn't work with OPENGL mode. we could probably adapt a geometry shader to do some smart mitering for us on the GPU.\r\n\r\nprompted by the discussion here: http://forum.openframeworks.cc/index.php/topic,7278.0/topicseen.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/730","comments":1,"milestone":null,"number":730,"assignee":null,"closed_at":null,"title":"nicer stroke mitering/joining and end caps","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2011-09-07T03:27:13Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1586262,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/730"},{"updated_at":"2011-09-05T15:39:58Z","body":"ofColor_:operator+= currently calls clamp() when it's done doing the +=\r\n\r\ni imagined one of the applications of ofFloatColor would be for averaging or summing ofColor, which normally requires non-saturation semantics for +=. i could also do a / or * every += operation to avoid overflow. this doesn't have to be a bug, but it should at least be documented clearly when we discuss ofColor.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/728","comments":1,"milestone":null,"number":728,"assignee":null,"closed_at":null,"title":"ofColor and clamping","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2011-09-05T14:41:50Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1569364,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/728"},{"updated_at":"2011-09-05T10:17:48Z","body":"Hello\r\n\r\nI had a problem with gamma for my Carbon app in OSX 10.6, UI looked \"blotched\" with Pappis' help it was solved, here are details:\r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,6404.msg30519.html#msg30519\r\n\r\nHowever, the trick with HIWindowSetColorSpace does not work in OSX 10.7 Lion\r\nLooking for solutions again\r\n\r\nThanks\r\nTom\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/727","comments":0,"milestone":null,"number":727,"assignee":null,"closed_at":null,"title":"OSX 10.7 Gamma Problem","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"created_at":"2011-09-05T10:17:48Z","state":"open","user":{"url":"https://api.github.com/users/Tommato","gravatar_id":"95bbfbd39116dffe06be4d816f322bf0","login":"Tommato","id":1027082,"avatar_url":"https://secure.gravatar.com/avatar/95bbfbd39116dffe06be4d816f322bf0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1566286,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/727"},{"updated_at":"2011-08-26T18:44:30Z","body":"Related forum post: http://forum.openframeworks.cc/index.php/topic,7053.0.html\r\n\r\nFrom what I understand, it's best to leave the mainThread for UIKit elements and move openGL and other things to another thread. Currently, if there's a lot of drawing then the UIKit elements are delayed and can even pause the update/draw methods entirely. Moving the drawing to it's own thread should help with this.\r\n\r\nI'm still testing, but this looks like it could be a good candidate for core integration. It has examples of threaded, single (what we currently use), and GCD (which I think is iOS 4.0 only) openGL implementation: https://github.com/Volcore/LimbicGL In my early tests, it does fix any pausing of the update/draw with the threaded example (haven't tried the others). I could use some help though trying to integrate this into OF properly.\r\n\r\nThe main example classes are here: https://github.com/Volcore/LimbicGL/tree/master/limbicgl/drivers\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/721","comments":0,"milestone":null,"number":721,"assignee":null,"closed_at":null,"title":"ofxiPhone - Move openGL to its own thread","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2011-08-26T18:43:09Z","state":"open","user":{"url":"https://api.github.com/users/cerupcat","gravatar_id":"91b3d4bfbbb99d840b096cde3af877bf","login":"cerupcat","id":204151,"avatar_url":"https://secure.gravatar.com/avatar/91b3d4bfbbb99d840b096cde3af877bf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1497330,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/721"},{"updated_at":"2012-03-10T04:39:39Z","body":"The libraries linked in 007 as well as the new AVFoundationVideoPlayer is not compatible with 3.x devices and won't build.\r\n\r\nAfter further exploring, I believe these are the steps to get things running on 3.x devices.\r\n\r\n1) In Xcode, Click on target -> application name\r\n2) In the File Name window, set AVFoundation, CoreMedia, and CoreVideo from role \"required\" to \"weak\". They need to be weak linked since they're only available in iOS 4+.\r\n3) In ofxiPhone src folder, AVFoundationVideoPlayer.mm uses CMBlockBufferRef and that is only available in iOS4. This means, this function should be commented out (sorry - avfoundationvideoplayer won't run on iOS4 unless the blocker is changed). Either that or you can comment ouf AVFoundationVideoPlayer from being included in OF.\r\n4) Clean all targets and rebuild","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/720","comments":0,"milestone":null,"number":720,"assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"closed_at":null,"title":"007 ofxiPhone not compatible with 3.x devices ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2011-08-26T18:38:38Z","state":"open","user":{"url":"https://api.github.com/users/cerupcat","gravatar_id":"91b3d4bfbbb99d840b096cde3af877bf","login":"cerupcat","id":204151,"avatar_url":"https://secure.gravatar.com/avatar/91b3d4bfbbb99d840b096cde3af877bf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1497291,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/720"},{"updated_at":"2011-08-22T17:38:49Z","body":"\r\nbased on this comment, \r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,5319.msg33381.html#msg33381\r\n\r\nI wonder if we can be smarter in endShape() / ofPath::tessellate() and look for simple usage (3 or 4 points, etc) before tessellating, or if the slow down is just based on the use of the ofPath object. \r\n\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/719","comments":1,"milestone":null,"number":719,"assignee":null,"closed_at":null,"title":"optimize ofEndShape() to deal with simple shapes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2011-08-22T16:56:27Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1459353,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/719"},{"updated_at":"2011-08-22T16:02:30Z","body":"change\r\n\r\nfloat ofCamera::getImagePlaneDistance(ofRectangle viewport) const {\r\n\treturn getPosition().length(); //viewport.height / (2.0f * tanf(PI * fov / 360.0f));\r\n}\r\n\r\nold in comment\r\n\r\ncurrent system is abitrary\r\nsuggest new system is more sensible\r\n(i'm always working in normalised coords)\r\npls check in your life before changing :)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/717","comments":0,"milestone":null,"number":717,"assignee":null,"closed_at":null,"title":"suggest new calc clip planes routine","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2011-08-22T16:02:30Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1458979,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/717"},{"updated_at":"2011-08-22T14:11:34Z","body":"http://forum.openframeworks.cc/index.php/topic,5222.msg33366.html#msg33366\r\n\r\nthere also seem to be a memory leak, when deleting a ofQuicktimeVideoPlayer","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/716","comments":0,"milestone":null,"number":716,"assignee":null,"closed_at":null,"title":"problems with stop/play in quicktime videoPlayer","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2011-08-22T14:11:34Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1458044,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/716"},{"updated_at":"2011-08-16T13:39:49Z","body":"Here\r\nhttps://github.com/openframeworks/openFrameworks/issues/653\r\nI downloaded latest version but in still crashes on my old video card Nvidia GeForce Go 7200.\r\nAny idea why?\r\nofxFBOTexture works, but i got some trobles in pixel format there. \r\nofxFBOTexture uses function with postfix EXT sometimes? ofFbo without it.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/711","comments":5,"milestone":null,"number":711,"assignee":null,"closed_at":null,"title":"Problem with ofFbo. Crashes on allocate.There were the same issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"created_at":"2011-08-16T10:21:29Z","state":"open","user":{"url":"https://api.github.com/users/IonRod","gravatar_id":"cf3cb346817dd8a9f8327d1af13c3d46","login":"IonRod","id":886012,"avatar_url":"https://secure.gravatar.com/avatar/cf3cb346817dd8a9f8327d1af13c3d46?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1414013,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/711"},{"updated_at":"2011-08-15T14:23:47Z","body":"i'm noticing this on osx 10.6. all 8-bit images are correct, but somehow i didn't notice about unsigned short and float until now!\r\n\r\ni'm super busy atm, but i've kind of been maintaining the unsigned short/float loading so i'll look into this if someone else doesn't get to it first.\r\n\r\nmeanwhile it would be good to see if it's the same on windows or not. for anyone interested in testing, please check devApps/AdvancedImageLoading and compare the results of the app to the .exr opened in photoshop.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/710","comments":0,"milestone":null,"number":710,"assignee":null,"closed_at":null,"title":"16-bit and 32-bit images are red/blue swapped","labels":[],"created_at":"2011-08-15T14:23:47Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1407813,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/710"},{"updated_at":"2011-08-07T12:19:07Z","body":"in the past there has been ofxQtVideoSaver and a few others. i think this is a really hard problem because it basically needs to be written for each platform, but something that should eventually be solved.\r\n\r\ntwo major use cases i know are:\r\n\r\n- capturing and saving simultaneously, for long streams\r\n- capturing a quick burst of video then saving it to disk\r\n\r\nwhich would might be handled a little differently.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/702","comments":1,"milestone":null,"number":702,"assignee":null,"closed_at":null,"title":"cross platform video saving (ofVideoSaver?)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2011-08-07T03:23:38Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1359729,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/702"},{"updated_at":"2011-09-06T20:20:03Z","body":"Hi!\r\n\r\nI have problems even getting the ofxOsc Send/Receive examples talking on Ubuntu 11.04 64bit. \r\nThey compile without problems, but sometimes when I run them, communication fails somewhere along the road - input events are not shown in the receiver app. Sometimes it does not work at all.\r\n\r\nThis works all flawlessly on 32bit Ubuntu 11.04. See http://forum.openframeworks.cc/index.php/topic,6918.0.html for more details.\r\n\r\nCan anyone reproduce these problems? Any tips? How could I debug this?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/701","comments":3,"milestone":null,"number":701,"assignee":null,"closed_at":null,"title":"ofxOsc does not seem to work on 64bit Ubuntu","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"created_at":"2011-08-06T19:14:37Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1358688,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/701"},{"updated_at":"2011-08-05T03:06:25Z","body":"very simple but helpful feature request. e.g.,\r\n\r\nofBuffer::operator=(const ofBuffer& mom) {\r\n set(mom.getBinaryBuffer(), mom.size());\r\n}\r\n\r\nthis goes along with the general \"what does the equal operator mean\" debate/discussion :)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/700","comments":0,"milestone":null,"number":700,"assignee":null,"closed_at":null,"title":"ofBuffer with overloaded = operator","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2011-08-05T03:06:25Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1349012,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/700"},{"updated_at":"2012-03-14T15:11:28Z","body":"this seems like an api inconsistency to me: i feel like ofTexture::loadData() is similar to ofImage::setFromPixels(), but setFromPixels() will allocate space if necessary while loadData() just prints an error if the data is larger than the allocated space.\r\n\r\ni think auto-allocation would be nice, but i might just be misunderstanding/making a false comparison here.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/699","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":699,"assignee":null,"closed_at":null,"title":"loadData() does not allocate as necessary","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2011-08-04T10:29:57Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1343463,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/699"},{"updated_at":"2012-03-14T15:12:03Z","body":"from: http://forum.openframeworks.cc/index.php/topic,6952.msg32509.html\r\n\r\n\r\n\r\ngetBmpFromPixels() crashed repeatedly when I tried to rescale grayscale Images of size 3026*2048.\r\n\r\nIt's because memcpy overshoots the src pixel array because dstStride can be larger than srcStride.\r\n\r\nIn ofImage.cpp \r\n\r\ngetBmpFromPixels()\r\n\r\naround line 119, I believe, it should read:\r\n\r\nCode:\r\nview plaincopy to clipboardprint?\r\n... \r\n int srcStride = width * pix.getBytesPerPixel(); \r\n int dstStride = FreeImage_GetPitch(bmp); \r\n unsigned char* src = (unsigned char*) pixels; \r\n unsigned char* dst = bmpBits; \r\n for(int i = 0; i < (int)height; i++) { \r\n // memcpy(dst, src, dstStride); \r\n memcpy(dst, src, srcStride); // did overshoot with e.g. grayscale img of size 3026*2048 \r\n src += srcStride; \r\n dst += dstStride; \r\n } \r\n... \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/698","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":698,"assignee":null,"closed_at":null,"title":"getBmpFromPixels memcpy issue / ofImage::resize issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2011-08-03T18:15:55Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1339116,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/698"},{"updated_at":"2012-04-21T15:34:07Z","body":"I'm trying to build ofxPd in Visual Studio and running into multiple define issues related to the videoinput lib, namely static `verbose`: https://github.com/openframeworks/openFrameworks/blob/master/libs/videoInput/include/videoInput.h#L115\r\n\r\nCouldn't this variable as well as `comInitCount` be moved to the implementation files? or at least in a header hidden from the global namespace? At the least, `verbose` could be renamed to something not so common ...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/697","comments":1,"milestone":null,"number":697,"assignee":null,"closed_at":null,"title":"videoinput lib global statics","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2011-08-03T02:27:52Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1334657,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/697"},{"updated_at":"2012-02-25T00:53:30Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/685","comments":3,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":685,"assignee":null,"closed_at":null,"title":"update shader example to work on ati.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2011-07-28T15:57:58Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":1303812,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/685"}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=9 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4974'), ('content-length', '42757'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"52cdeb246732dfe3d45282b30efc7163"'), ('date', 'Tue, 29 May 2012 06:43:41 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"milestone":null,"state":"open","user":{"gravatar_id":"e4d2b0151a843dde7b815b848170d6e9","avatar_url":"https://secure.gravatar.com/avatar/e4d2b0151a843dde7b815b848170d6e9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/mcanet","login":"mcanet","id":308759},"title":"ofxiPhoneKeyboard should have disable/enable methods for auto correction","comments":0,"assignee":{"gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/julapy","login":"julapy","id":331382},"updated_at":"2012-03-10T04:40:42Z","body":"It is very annoying if you can not disable autocorrections in ofxiPhoneKeyboard. Specially for creative uses of this class. I add code how to add this feature.\r\n\r\n[CODE] Add to ofxiPhoneKeyboard class:\r\n\r\n- (void)disableAutoCorrection;\r\n- (void)enableAutoCorrection;\r\n\r\n//--------------------------------------------------------------\r\nvoid ofxiPhoneKeyboard::disableAutoCorrection()\r\n{\r\n [keyboard disableAutoCorrection];\r\n}\r\n//--------------------------------------------------------------\r\nvoid ofxiPhoneKeyboard::enableAutoCorrection()\r\n{\r\n [keyboard enableAutoCorrection];\r\n}\r\n\r\n- (void)disableAutoCorrection\r\n{\r\n _textField.autocorrectionType = UITextAutocorrectionTypeNo;\r\n}\r\n\r\n- (void)enableAutoCorrection\r\n{\r\n _textField.autocorrectionType = UITextAutocorrectionTypeYes;\r\n}","number":684,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/684","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/684","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"2babad","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"31e03a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed"}],"id":1302375,"created_at":"2011-07-28T12:12:52Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"30a7e135fe77636519d74d129c60e156","avatar_url":"https://secure.gravatar.com/avatar/30a7e135fe77636519d74d129c60e156?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/companje","login":"companje","id":156066},"title":"possible bug in getEuler / getOrientation / getRoll","comments":0,"assignee":null,"updated_at":"2011-07-24T18:26:54Z","body":"I think there's a bug in ofQuaternion in of007. When i use ofNode's setOrientation() or ofNode setRoll I can rotate my ofNode object around the Z axis. However when I try to obtain the current rotation around the Z axis it will always give a value like -180, 0 or 180.\r\n\r\nRick","number":679,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/679","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/679","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":1278252,"created_at":"2011-07-24T18:26:54Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"03848790c2ebb8e5edbe130e8ce76f1d","avatar_url":"https://secure.gravatar.com/avatar/03848790c2ebb8e5edbe130e8ce76f1d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/petersaints","login":"petersaints","id":157810},"title":"ofxDirList deprecated #warning directive preprocessor Visual Studio 2010","comments":2,"assignee":null,"updated_at":"2011-12-03T22:13:24Z","body":"I know that with the 007 release ofxDirList addon is deprecated and instead we are encouraged to use ofDirectory to achiece the same kind of functionality. In fact the are so similar that is possible to use them interchangeably. To do that transparently you changed the ofxDirList.h so that it made a typedef to point to ofDirectory (and will probably remove it completely someday).\r\n\r\nThe contents of ofxDirList.h are the following:\r\n---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------\r\n#pragma once\r\n\r\n#include \"ofFileUtils.h\"\r\n\r\n#warning ofxDirList has been deprecated. \r\n#warning Remove all references to ofxDirList.h and use ofDirectory instead.\r\ntypedef ofDirectory ofxDirList;\r\n---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------\r\nSo far so good. The problem is that you use the #warning preprocessing directive is non-standard and unsupported on Visual C++ compiler. In fact it gives me an error while building a project that I ported from 0062 version that used ofxDirList. To make it work I had to comment the two #warning lines. \r\n\r\nI suggest that you remove the #warning directives and replace it with something else that works across all compilers. I know that the #warning directive works on GCC and MinGW but not on VC++ so if you are going to support all those compilers (like you do) you better have all of your code working across all of them.","number":676,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/676","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/676","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":1273716,"created_at":"2011-07-23T01:19:54Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"614a4e493d7c353296519bba720e77c5","avatar_url":"https://secure.gravatar.com/avatar/614a4e493d7c353296519bba720e77c5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/benben","login":"benben","id":124513},"title":"isFile() segfaults on win7","comments":0,"assignee":null,"updated_at":"2011-07-21T11:29:24Z","body":"changed this in dirListExample\r\n\r\n ofFile testfile;\r\n\t// you can now iterate through the files and load them into the ofImage vector\r\n\tfor(int i = 0; i < (int)dir.size(); i++){\r\n\t\timages[i].loadImage(dir.getPath(i));\r\n\t\ttestfile.open(dir.getPath(i));\r\n\t\tcout << testfile.isFile() << endl; //THIS LINE SEGFAULTS ON WIN7\r\n testfile.close();\r\n\t}","number":671,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/671","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/671","labels":[{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"244569","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows"}],"id":1262459,"created_at":"2011-07-21T11:27:16Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"614a4e493d7c353296519bba720e77c5","avatar_url":"https://secure.gravatar.com/avatar/614a4e493d7c353296519bba720e77c5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/benben","login":"benben","id":124513},"title":"mouseReleased fires mouseMoved too (win7)","comments":2,"assignee":null,"updated_at":"2011-07-21T10:39:29Z","body":"just added output to all events in an emptyExample on windows7 64bit.\r\n\r\nif im clicking, the following output occurs even if the mouse is not moved\r\n\r\n mousePressed\r\n mouseReleased\r\n mouseMoved","number":670,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/670","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/670","labels":[{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"244569","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows"}],"id":1261982,"created_at":"2011-07-21T09:34:52Z"},{"milestone":{"state":"open","description":"","title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"number":5,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442},"closed_issues":16,"id":61810,"created_at":"2011-12-02T15:29:48Z"},"state":"open","user":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000},"title":"iphone video player should use AVPlayer ","comments":0,"assignee":{"gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/julapy","login":"julapy","id":331382},"updated_at":"2012-03-09T06:11:12Z","body":"I'm curious why the movieplayer uses AvAsset instead of AvPlayer which seems better suited for OF needs ( seeking / looping etc ) \r\n\r\nhttp://developer.apple.com/library/ios/#documentation/AVFoundation/Reference/AVPlayer_Class/Reference/Reference.html\r\n\r\nhttp://stackoverflow.com/questions/5361145/looping-a-video-with-avfoundation-avplayer\r\n\r\n\r\nI think you can get init a player with an AVAsset:\r\nhttp://developer.apple.com/library/ios/#documentation/AVFoundation/Reference/AVPlayer_Class/Reference/Reference.html%23//apple_ref/occ/instm/AVPlayer/initWithPlayerItem:\r\nhttp://developer.apple.com/library/ios/documentation/AVFoundation/Reference/AVPlayerItem_Class/Reference/Reference.html#//apple_ref/occ/instm/AVPlayerItem/initWithAsset:\r\n","number":666,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/666","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/666","labels":[{"color":"d68e22","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon"},{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"cb6efa","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks "},{"color":"2babad","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":1258863,"created_at":"2011-07-20T20:01:04Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","avatar_url":"https://secure.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/bakercp","login":"bakercp","id":300484},"title":"ofAppGlutWindow/ofEvents: pressedKeys accumulate in special cases","comments":5,"assignee":null,"updated_at":"2012-01-08T04:45:01Z","body":"In some cases, when modifier keys are used, the pressedKeys set will accumulate keys.\r\n\r\nThis happens because \"modifier-up\" messages are not sent in the same way as normal and special keys.\r\n\r\nTo test, watch the size of the pressedKeys:\r\n\r\n cout << pressedKeys.size() << \" num pressed keys \" << endl;\r\n\r\nPress a modifier key and a normal key -- say ctrl-a. If the 'a' is lifted first, then the modified-a key int is removed from the pressedKeys set. If CTRL is released before the 'a', then the non-modified-a key-up int is sent, and it is not erased from the pressedKeys set. If this is repeated with different modifier+key downs / ups the accumulation occurs.\r\n\r\nUltimately, there needs to be better handling of modifier keys. Perhaps there is a way to use the modifier masks keep track of modifier keys with a call to glutGetModifiers() in the keyboard_cb and keyboard_up_cb static methods?\r\n\r\nIt looks like progress has been made toward this in ofConstants.h\r\n\r\n\t#define OF_KEY_CTRL\t\t\t0x0200\r\n\t#define OF_KEY_ALT\t\t\t0x0300\r\n\t#define OF_KEY_SHIFT\t\t0x0400\r\n\r\nBut it seems to have stopped there.\r\n\r\nI'm happy to work on this -- any suggestions on a strategy? Perhaps this is already being addressed of 007?\r\n","number":652,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/652","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/652","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":1231959,"created_at":"2011-07-15T18:49:46Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"29a3b85e704ec06a72df8897a726920e","avatar_url":"https://secure.gravatar.com/avatar/29a3b85e704ec06a72df8897a726920e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/toxin20","login":"toxin20","id":123776},"title":"ofFBO + ofCamera = unwanted offset","comments":4,"assignee":null,"updated_at":"2011-07-20T19:04:31Z","body":"If you use those these two together the 3d objects get an unwanted offset\r\n\r\ncode:\r\n\r\n```c++\r\nvoid testApp::draw()\r\n{\r\n \r\n cam.begin();\r\n ofPushMatrix();\r\n ofSetColor(255,255,255);\r\n ofBox(200);\r\n ofPopMatrix();\r\n cam.end();\r\n \r\n \r\n fbo.begin();\r\n cam.begin();\r\n \r\n ofClear(0);\r\n ofPushMatrix();\r\n ofSetColor(0,0,0);\r\n ofBox(200);\r\n ofPopMatrix();\r\n \r\n cam.end();\r\n fbo.end();\r\n \r\n \r\n glPushMatrix();\r\n //ofTranslate(0,6,0); <--- now i'm using something like this to \"repair\" it\r\n ofSetColor(255,255,255,255);\r\n glScalef(1,-1,1);\r\n fbo.draw(0,- ofGetHeight());\r\n glPopMatrix();\r\n \r\n \r\n \r\n}\r\n```\r\n\r\nNormally the two boxes should overlap completely, instead it looks like this:\r\n\r\n![screen1](http://i51.tinypic.com/11cfi1l.png)\r\n![screen2](http://i55.tinypic.com/2ewnv5i.png)\r\n\r\n\r\n","number":651,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/651","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/651","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"2a8296","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS"}],"id":1230184,"created_at":"2011-07-15T13:21:44Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"210831a04d36f1aa26413ecbdbd4b07c","avatar_url":"https://secure.gravatar.com/avatar/210831a04d36f1aa26413ecbdbd4b07c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/andreasmuller","login":"andreasmuller","id":791114},"title":"ofQuaternion::makeRotate takes degrees, used to take radians, documentation says radians","comments":1,"assignee":null,"updated_at":"2011-07-19T00:31:38Z","body":"\r\nA tiny issue I spotted:\r\n\r\nofQuaternion.cpp, line 14:\r\n\r\n```C++\r\n/// Set the elements of the Quat to represent a rotation of angle\r\n/// (radians) around the axis (x,y,z)\r\nvoid ofQuaternion::makeRotate( float angle, float x, float y, float z ) {\r\n\tangle = ofDegToRad(angle);\r\n```\r\n\r\nof**X**Quaternion::makeRotate used to take radians, only noticed as I was moving some old code over, otherwise I would have just looked at the code in ofQuaternion.cpp to see the angle type. ","number":646,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/646","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/646","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"cccc29","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation"}],"id":1216274,"created_at":"2011-07-13T15:18:04Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/roxlu","login":"roxlu","id":358809},"title":"ofVideoGrabber::listDevices() does not list devices when initGrabber not called","comments":0,"assignee":null,"updated_at":"2011-07-12T16:05:23Z","body":"^^^^\r\nTried on Mac:\r\nhttps://gist.github.com/1078282","number":645,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/645","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/645","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":1209436,"created_at":"2011-07-12T16:05:23Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/obviousjim","login":"obviousjim","id":321434},"title":"8 BPP (grayscale) ofImage saves blank on Windows, fine on os x","comments":1,"assignee":null,"updated_at":"2012-03-16T04:21:18Z","body":"https://gist.github.com/1077933\r\n\r\nsaving images converted to 8PP using ofImage::setImageType(OF_IMAGE_GRAYSCALE) and then calling saveImage() save blank on windows, but works on OS X\r\n\r\ntraced the issue down to the call to FreeImage_Save(), both seem to be the same. not sure what the problem is\r\n\r\n","number":643,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/643","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/643","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"244569","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows"}],"id":1208289,"created_at":"2011-07-12T13:05:25Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"91b3d4bfbbb99d840b096cde3af877bf","avatar_url":"https://secure.gravatar.com/avatar/91b3d4bfbbb99d840b096cde3af877bf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/cerupcat","login":"cerupcat","id":204151},"title":"ofxiPhone: Possible delayed input/touch event issue ","comments":0,"assignee":{"gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/julapy","login":"julapy","id":331382},"updated_at":"2012-03-10T04:42:09Z","body":"Forum issue: http://forum.openframeworks.cc/index.php/topic,6316.new.html#new\r\n\r\nThis may be related to using CADisplayLink. When openGL seems to be pushed a bit, touch events seem to drop or are delayed. When using NSTimer in ofxiPhoneAppDelegate instead of CADisplayLink this does not occur.\r\n\r\nIt may be beneficial for developers to set whether they'd like to use CADisplayLink (if available) vs NSTimer for rendering or not.","number":642,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/642","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/642","labels":[{"color":"d68e22","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon"},{"color":"2babad","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":1205789,"created_at":"2011-07-12T02:46:23Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/roxlu","login":"roxlu","id":358809},"title":"ofImage::saveImage() - saving from png to gif creates grayscale image","comments":1,"assignee":null,"updated_at":"2011-07-12T13:03:00Z","body":"See title and test code:\r\nhttps://gist.github.com/952bd35591dc0cb23f61","number":631,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/631","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/631","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":1185346,"created_at":"2011-07-07T21:37:47Z"},{"milestone":{"state":"open","description":"","title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"number":5,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442},"closed_issues":16,"id":61810,"created_at":"2011-12-02T15:29:48Z"},"state":"open","user":{"gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/roxlu","login":"roxlu","id":358809},"title":"ofLoadURL() does not work with httpS","comments":5,"assignee":null,"updated_at":"2012-02-27T03:48:47Z","body":"Tried to load a text file over https but I got this message:\r\n\r\n``400 The plain HTTP request was sent to HTTPS port\r\n

    400 Bad Request

    The plain HTTP request was sent to HTTPS port

    nginx/1.0.4
    ``\r\n\r\n\r\n\r\nUsing this code\r\n``ofHttpResponse resp = ofLoadURL(\"https://raw.github.com/openframeworks/openFrameworks/6af1dc980f6d93d84b3bf8fdc1b6435697be9ed9/readme.txt\");``\r\n","number":623,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/623","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/623","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":1175654,"created_at":"2011-07-06T18:12:06Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/roxlu","login":"roxlu","id":358809},"title":"call ofEasyCam::setPosition in testApp::setup() is forgotten","comments":0,"assignee":null,"updated_at":"2011-07-06T18:09:03Z","body":"Setting the position of an ofEasyCam instance in ofSetup() does not work. What does work in testApp::setup() is calling ofEasyCam::setDistance(). When calling ofEasyCam::setPosition() in for example testApp::draw() does work.\r\n","number":618,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/618","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/618","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":1169032,"created_at":"2011-07-05T18:23:34Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/elliotwoods","login":"elliotwoods","id":328294},"title":"need conversion ofMatrix3x3<->ofMatrix4x4","comments":0,"assignee":null,"updated_at":"2011-06-27T18:30:26Z","body":"Currently there doesn't appear to be any way to do this other than by hand\r\nAlso it would be highly useful ofMatrix3x3 in general had equivalent accessors to ofMatrix4x4","number":612,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/612","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/612","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":1124068,"created_at":"2011-06-27T18:30:26Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/elliotwoods","login":"elliotwoods","id":328294},"title":"function wrapping glMultMatrixf in ofMatrix4x4","comments":4,"assignee":null,"updated_at":"2011-10-04T10:10:06Z","body":"Need some way of applying current ofMatrix4x4 to the scene without going down to gl calls","number":605,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/605","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/605","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"31e03a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed"}],"id":1067300,"created_at":"2011-06-16T13:13:35Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"3cfb19dbce7926933555ac9755a86ca8","avatar_url":"https://secure.gravatar.com/avatar/3cfb19dbce7926933555ac9755a86ca8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/mazbox","login":"mazbox","id":194121},"title":"ofLaunchBrowser() for iPhone not implemented","comments":0,"assignee":{"gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/julapy","login":"julapy","id":331382},"updated_at":"2012-03-10T04:42:59Z","body":"Here's a function that will do it...\r\n\r\nvoid ofxiPhoneLaunchBrowser(string url) {\r\n\t[[UIApplication sharedApplication] openURL:[NSURL URLWithString:ofxStringToNSString(url)]];\r\n}","number":603,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/603","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/603","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"2babad","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"31e03a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed"}],"id":1048971,"created_at":"2011-06-13T13:03:15Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"f92a8e912b59171abde0354e2f212c12","avatar_url":"https://secure.gravatar.com/avatar/f92a8e912b59171abde0354e2f212c12?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/tomorrowevening","login":"tomorrowevening","id":626143},"title":"TCPManager Consistent Error","comments":1,"assignee":null,"updated_at":"2011-12-03T21:38:43Z","body":"OF: OF_LOG_ERROR: ofxNetwork:/addons/ofxNetwork/src/ofxTCPManager.cpp: 157 ECONNREFUSED: the server has actively refused to establish the connection\r\n\r\nThis error happens in every use of ofxTCPClient.","number":599,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/599","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/599","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":1027184,"created_at":"2011-06-08T23:02:28Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240},"title":"problem with ofImage resize","comments":0,"assignee":null,"updated_at":"2011-06-01T13:56:17Z","body":"http://forum.openframeworks.cc/index.php/topic,6370.0.html\r\n\r\nwhen they are not power of 2 perhaps?","number":591,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/591","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/591","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":984564,"created_at":"2011-06-01T13:56:17Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"c7f941e0c10696b758ae8792714a6744","avatar_url":"https://secure.gravatar.com/avatar/c7f941e0c10696b758ae8792714a6744?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/cristobal","login":"cristobal","id":155505},"title":"ofxTCPManager.receive() - EWOULDBLOCK on Windows","comments":0,"assignee":null,"updated_at":"2011-05-31T12:33:31Z","body":"### ofxNetworkUtils.h - issue 1\n\nThe default message should print out `err` instead of `errno`\n\n```\n\tdefault:\n\t\tofLog(OF_LOG_ERROR,\"ofxNetwork:\"+file+\": \" +line+\" unknown error: \" + ofToString(errno) + \" see errno.h for description of the error\");\n\t\tbreak;\n```\n\nto:\n\n```\n\tdefault:\n\t\tofLog(OF_LOG_ERROR,\"ofxNetwork:\"+file+\": \" +line+\" unknown error: \" + ofToString(err) + \" see errno.h for description of the error\");\n\t\tbreak;\n```\n\nSince errno would not be set on windows machines.\n\n\n\n\n### ofxTCPManager.cpp - issue 2\n\nIn the `Receive` method of the `ofxTCPManager` the function will always return -1 when checking for data and there is no new data and the TCPServer has been set to non-blocking.\n\nAfter changing the code in issue 1 mentioned above i got:\n\n`ofxNetwork:addons\\ofxNetwork\\src\\ofxTCPManager.cpp: 304 unknown error: 10035 see errno.h for description of the error`\n\ninstead of `error: 0` when `errno`was used.\n\nWhich on windows is the [`WSAEWOULDBLOCK`](http://msdn.microsoft.com/en-us/library/ms740668.aspx) or `EWOULDBLOCK` as defined in `ofxNetworkUtils`\n\nSo someplace in the code there should be a mechanism to check if the code is client is non-blocking and ignore the error.\nThis is `windows` only but still could be as an additional parameter to the `Receive` method. Or add it as an `switch case` for the `EWOULDBLOCK` in the `ofxNetworkUtils` and ignore the ouput and comment it.\n\nI just noticed this above when i started usin an application that i was developing on my mac an using it on windows machines this code would appear too often.\n\nSo as stated above my solution is that i added:\n\n```\n #ifdef TARGET_WIN32 // otherwise EAGAIN & EWOULDBLOCK will create a \"duplicate case value\" on Non windows\n\tcase EWOULDBLOCK: \n\t\t// \tofLog(OF_LOG_VERBOSE,\"ofxNetwork:\"+file+\": \" +line+\" EWOULDBLOCK: perhaps non-blocking\");\n\t\tbreak;\n #endif\n```\ncode and ignoring the output.\n\n\n\n","number":590,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/590","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/590","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"244569","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows"}],"id":978212,"created_at":"2011-05-31T11:31:08Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106},"title":"setFromPixels vs setFromExternalPixels","comments":0,"assignee":null,"updated_at":"2011-05-31T02:06:22Z","body":"setFromPixels has two forms: one that takes an int channels, another that takes ofImageType.\r\n\r\nsetFromExternalPixels only has one form: it takes an int channels.\r\n\r\nin my opinion, it makes sense to change them both to ofImageType only, because the int channels is susceptible to accidentally passing an ofImageType to it.","number":589,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/589","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/589","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"37c200","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy"}],"id":976610,"created_at":"2011-05-31T02:06:22Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106},"title":"templated code needs to be more readable","comments":5,"assignee":null,"updated_at":"2011-12-03T21:54:02Z","body":"ofImage_ should be ofBaseImage, likewise with ofPixels_\n\nin general, X_ style classes should be BaseX\n\ntemplated functions that are just sitting around should also have descriptive template names.\n\nit's important for this to happen before 007, otherwise code will be written against ofImage\\_<T> etc.","number":582,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/582","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/582","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"37c200","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy"}],"id":942647,"created_at":"2011-05-23T17:46:28Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"e6d243a56cd069a225f56f4a388e8838","avatar_url":"https://secure.gravatar.com/avatar/e6d243a56cd069a225f56f4a388e8838?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","url":"https://api.github.com/users/labatrockwell","login":"labatrockwell","id":313943},"title":"ofSerial: add 230400 speed","comments":2,"assignee":null,"updated_at":"2011-12-31T13:42:28Z","body":"just need to add the line\r\n\r\n\t\t\tcase 230400: cfsetispeed(&options,B230400);\r\n\t\t\t\tcfsetospeed(&options,B230400);\r\n\t\t\t\tbreak;\r\n\r\nin the setup function after\r\ncase 115200: cfsetispeed(&options,B115200);\r\n\t\t\t\t\t\tcfsetospeed(&options,B115200);\r\n\t\t\t\tbreak;\r\n\r\ntested with our device that runs at that baud rate, seems to work a-OK so far.","number":577,"closed_at":null,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/577","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/577","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"65a300","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize"},{"color":"31e03a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed"}],"id":932655,"created_at":"2011-05-20T16:16:52Z"},{"milestone":{"state":"open","description":"","title":"0080 Release","due_on":"2013-01-01T08:00:00Z","open_issues":3,"number":8,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442},"closed_issues":0,"id":88731,"created_at":"2012-02-25T01:34:28Z"},"state":"open","user":{"gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/damiannz","login":"damiannz","id":144366},"title":"Generic armv7l Linux build for Beagleboard &co. ","comments":17,"assignee":{"gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/damiannz","login":"damiannz","id":144366},"updated_at":"2012-02-25T19:59:00Z","body":"This is a generic Linux build of oF for ARM Cortex A8/9 devices (Beagleboard, Pandaboard, Gumstix, Tegra 250, IGEPv2, ...) with built-in NEON optimizations in the included libs and makefiles (via gcc -O3 -march=armv7-a -mtune=cortex-a8 -mfpu=neon -ftree-vectorize -mfloat-abi=softfp)","number":576,"closed_at":null,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/576.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/576","patch_url":"https://github.com/openframeworks/openFrameworks/pull/576.patch"},"html_url":"https://github.com/openframeworks/openFrameworks/issues/576","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/576","labels":[],"id":927378,"created_at":"2011-05-19T14:49:57Z"}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=10 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4973'), ('content-length', '47539'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"acf3f766b7c50e2fb9b6897576cc36ab"'), ('date', 'Tue, 29 May 2012 06:43:42 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-05-13T15:28:46Z","body":"http://forum.openframeworks.cc/index.php?topic=6201.0","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/572","comments":0,"milestone":null,"number":572,"assignee":null,"closed_at":null,"title":"ofToggleFullscreen doesn't set width and height correctly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"created_at":"2011-05-13T15:28:46Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":895515,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/572"},{"updated_at":"2011-12-02T15:47:14Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/569","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"closed_issues":16,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":569,"assignee":null,"closed_at":null,"title":"saving an image with the image quality flag set to high or best causes empty jpegs. ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2011-05-11T13:53:42Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":883385,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/569"},{"updated_at":"2012-02-27T03:48:47Z","body":"Currently using an FBO with an ofCamera is really tricky, as both setup their own viewing matrix and viewport. \r\n\r\nDoes it make sense to have ofFbo use an ofCamera internally?\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/568","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"closed_issues":16,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":568,"assignee":null,"closed_at":null,"title":"ofFbo and ofCamera do not play well together.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2011-05-11T13:52:46Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":883380,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/568"},{"updated_at":"2012-05-15T18:31:30Z","body":"Greetings,\r\n\r\nI have downloaded the latest master of Openframeworks b4397c1 and I have tried to compile the AllAddons example (just to check if everything was well installed).\r\n\r\nThe ofxSynth library just won't compile (using either GCC or LLVM, Xcode 3 or Xcode4), be it in the allAddons or in it's own examples, here is the error log :\r\n\r\nUndefined symbols for architecture i386:\r\n \"typeinfo for ofxSoundEffect\", referenced from:\r\n typeinfo for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"non-virtual thunk to ofxSoundEffect::setSampleRate(int)\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundBuffer::ofxSoundBuffer()\", referenced from:\r\n ofxSoundSink::ofxSoundSink()in ofxSynth.o\r\n \"vtable for ofxSoundEffect\", referenced from:\r\n ofxSoundEffect::~ofxSoundEffect()in ofxSynthDelayLine.o\r\n ofxSoundEffect::~ofxSoundEffect()in ofxSynthDelayLine.o\r\n \"vtable for ofxSoundSink\", referenced from:\r\n ofxSoundSink::~ofxSoundSink()in ofxSynthDelayLine.o\r\n ofxSoundSink::~ofxSoundSink()in ofxSynthDelayLine.o\r\n \"virtual thunk to ofxSoundSink::getInputs()\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"typeinfo for ofxSoundSink\", referenced from:\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundSink::setSampleRate(int)\", referenced from:\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundSink::getInputs()\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundSink::addInputFrom(ofxSoundSource*)\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"VTT for ofxSoundEffect\", referenced from:\r\n ofxSoundEffect::~ofxSoundEffect()in ofxSynthDelayLine.o\r\n ofxSoundEffect::~ofxSoundEffect()in ofxSynthDelayLine.o\r\n \"ofxSoundEffect::setSampleRate(int)\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundSink::audioIn(float*, int, int, unsigned long long)\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundEffect::audioOut(float*, int, int, unsigned long long)\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundBuffer::~ofxSoundBuffer()\", referenced from:\r\n ofxSoundSink::~ofxSoundSink()in main.o\r\n ofxSoundSink::~ofxSoundSink()in ofxSynthDelayLine.o\r\n ofxSoundSink::~ofxSoundSink()in ofxSynthDelayLine.o\r\nld: symbol(s) not found for architecture i386\r\ncollect2: ld returned 1 exit status\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/566","comments":3,"milestone":null,"number":566,"assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"closed_at":null,"title":"ofxSynth won't compile","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"created_at":"2011-05-07T12:25:01Z","state":"open","user":{"url":"https://api.github.com/users/benoitespinola","gravatar_id":"d08687285addcdde144d4eceb4cfa78e","login":"benoitespinola","id":720460,"avatar_url":"https://secure.gravatar.com/avatar/d08687285addcdde144d4eceb4cfa78e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":862321,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/566"},{"updated_at":"2012-03-10T04:48:58Z","body":"I'm fixing it using \r\n_textField.transform = CGAffineTransformMakeRotation(M_PI*1.5f);\r\nin - (void) setFrame: (CGRect) rect\r\nto fix it now.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/565","comments":1,"milestone":null,"number":565,"assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"closed_at":null,"title":"Textfield in ofxiPhoneKeyboard upside down in landscape","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2011-05-05T14:20:42Z","state":"open","user":{"url":"https://api.github.com/users/labatrockwell","gravatar_id":"e6d243a56cd069a225f56f4a388e8838","login":"labatrockwell","id":313943,"avatar_url":"https://secure.gravatar.com/avatar/e6d243a56cd069a225f56f4a388e8838?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"id":853551,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/565"},{"updated_at":"2011-12-03T21:20:01Z","body":"Does anybody know the status of this?\r\nI would like to help but I'm not sure where to start. Is the `iphone-dev-0061` the branch to work on this?\r\nI just want to know what's been done or whether there are plans in the works.\r\n\r\nI have posted this in the forum but have not received any response.\r\nhttp://forum.openframeworks.cc/index.php/topic,4089.msg29156.html#msg29156","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/564","comments":1,"milestone":null,"number":564,"assignee":null,"closed_at":null,"title":"ofxShader for iOS","labels":[],"created_at":"2011-05-04T18:35:58Z","state":"open","user":{"url":"https://api.github.com/users/chrisirhc","gravatar_id":"22d0038769b1786fcdc0983bdb2e4033","login":"chrisirhc","id":132584,"avatar_url":"https://secure.gravatar.com/avatar/22d0038769b1786fcdc0983bdb2e4033?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":850096,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/564"},{"updated_at":"2012-05-12T08:58:12Z","body":"it's compiling now but doesn't work in openGL ES.\r\n\r\nalso take a look at setupShadow generating depthBuffer as texture, when it's released as a renderbuffer","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/560","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"closed_issues":16,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":560,"assignee":null,"closed_at":null,"title":"fix ofFbo for openGL ES","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/android","name":"android","color":"2bc4ad"}],"created_at":"2011-04-30T17:21:39Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":833772,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/560"},{"updated_at":"2011-04-26T00:37:56Z","body":"nothing fancy, but I have an implementation of ofxCvHaarFinder that draws, and it's useful for debugging. something like:\n\n``` c++\n void ofxCvHaarFinder::draw( float x, float y ) {\n\t\t// ofPushStyle(); ?\n\t\tofEnableAlphaBlending();\n\t\tofSetColor( 255,0,200,100 );\n\t\tglPushMatrix();\n\t\t\n\t\tglTranslatef( x, y, 0.0 );\n\t\t\n\t\tofNoFill();\n\t\tfor( int i=0; i007 than <007. this can be changed in the ofStyle() constructor.\r\n\r\nalso, @elliotwoods it would be great to have a comment next to each of the constants in enum ofDrawBitmapMode explaining what they do.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/520","comments":1,"milestone":null,"number":520,"assignee":null,"closed_at":null,"title":"ofDrawBitmapString default behavior has changed","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2011-04-01T06:37:16Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":723496,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/520"},{"updated_at":"2011-03-31T17:49:33Z","body":"it's obvious if you've used opengl directly before, but i would expect something more like:\r\n\r\n\tvoid ofSetTextureInterpolation(ofInterpolationType downscale, ofInterpolationType upscale)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/519","comments":0,"milestone":null,"number":519,"assignee":null,"closed_at":null,"title":"ofSetMinMagFilters() is confusingly named","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2011-03-31T17:49:33Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":721833,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/519"},{"updated_at":"2012-03-17T00:51:48Z","body":"movieGrabberExample => videoGrabberExample\r\nmoviePlayerExample => videoPlayerExample\r\n\r\nthere are probably other examples of this, but this one strikes me as particularly odd. there's probably some historical reason... :)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/510","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"closed_issues":16,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":510,"assignee":null,"closed_at":null,"title":"movieGrabber/PlayerExamples are poorly named","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2011-03-22T06:47:02Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":693126,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/510"}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=11 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4972'), ('content-length', '39552'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"606aaf570390fb916af9285c189a2d03"'), ('date', 'Tue, 29 May 2012 06:43:43 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-03-21T01:01:25Z","body":"i accidentally initialized my ofFbo with setupShadow() instead of setup(), and when i said draw() it caused EXC_BAD_ACCESS. draw() calls getTexture(), so maybe the best way to handle this is to put a check inside getTexture() like this:\r\n\r\n\tif(textures.size() == 0) {\r\n\t\tofLog(OF_LOG_ERROR, \"You must call ofFbo::setup() before you can use an FBO\");\r\n\t}\r\n\treturn textures[attachmentPoint];","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/507","comments":0,"milestone":null,"number":507,"assignee":null,"closed_at":null,"title":"ofFbo::draw() causes EXC_BAD_ACCESS when setup() isn't called","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2011-03-21T01:01:25Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":689769,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/507"},{"updated_at":"2011-03-20T17:35:05Z","body":"i know the reason for this is because the mappings are OS and mouse dependent, and that it's GLUT slowing us down here, but i think we could at least add a guess like OF_MOUSE_LEFT = 0, OF_MOUSE_MIDDLE= 1, OF_MOUSE_RIGHT = 2, etc.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/503","comments":0,"milestone":null,"number":503,"assignee":null,"closed_at":null,"title":"no OF_MOUSE_LEFT or OF_MOUSE_RIGHT","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2011-03-20T17:35:05Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":688955,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/503"},{"updated_at":"2011-12-02T15:48:41Z","body":"you need to use bUse3D flag but even then graphics aren't saved to pdf as they look on screen. \r\ntry the OF_ORIENTATION_90_LEFT or 90_RIGHT to reproduce. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/502","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":16,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":502,"assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"closed_at":null,"title":"ofSetOrientation doesn't work for cairo","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2011-03-18T09:17:36Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":684091,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/502"},{"updated_at":"2011-03-18T03:56:02Z","body":"it looks like ofGLRenderer::drawString is currently overriding whatever the current blend mode is:\n\n\tglEnable(GL_BLEND);\n\tglBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);\n\nand then setting it back later.\n\ni'm guessing this is so the empty/alpha part of the bitmap font is drawn.\n\ninstead of using glBlendFunc i would suggest glAlphaFunc... but it looks like as of OpenGL ES 2.0 glAlphaFunc doesn't exist anymore :(\n\nnot sure what to do, but it's really weird to have ofSetColor(255) work, but not ofSetColor(255, 254). e.g.:\n\n\tofBackground(128);\n\tofEnableAlphaBlending();\n\tofSetColor(255, 254);\n\tofDrawBitmapString(\"255, 254\", 10, 20);\n\tofSetColor(255, 255);\n\tofDrawBitmapString(\"255, 255\", 10, 40);\n\tofDisableAlphaBlending();","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/501","comments":0,"milestone":null,"number":501,"assignee":null,"closed_at":null,"title":"ofDrawBitmapString / ofGLRenderer::drawString doesn't work with alpha","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2011-03-18T03:54:34Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":683732,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/501"},{"updated_at":"2011-12-03T10:41:35Z","body":"right now ofImage::getPixelsRef() is always non-const, as well as ofImage::getPixels()","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/500","comments":4,"milestone":null,"number":500,"assignee":null,"closed_at":null,"title":"missing const version of getPixelsRef()","labels":[],"created_at":"2011-03-14T19:14:21Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":672608,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/500"},{"updated_at":"2011-03-09T16:17:56Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=7&t=5729&view=unread#unread","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/495","comments":0,"milestone":null,"number":495,"assignee":null,"closed_at":null,"title":"osx movieplayer problem on reloading","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2011-03-09T16:17:56Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":659446,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/495"},{"updated_at":"2011-03-04T14:44:53Z","body":"it seems that some commented defines are still being preprocessed and making gdb behave weird:\r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=4&t=5602&view=unread#unread","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/491","comments":0,"milestone":null,"number":491,"assignee":null,"closed_at":null,"title":"GLUT 007 hack","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2011-03-04T14:44:53Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":646846,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/491"},{"updated_at":"2011-03-03T16:35:17Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=8&t=5678&view=unread#unread\r\n\r\nperhaps use style.linewith? won't work if you use glLineWidth though","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/490","comments":0,"milestone":null,"number":490,"assignee":null,"closed_at":null,"title":"close corners on basic shapes?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2011-03-03T16:35:17Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":643861,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/490"},{"updated_at":"2012-03-10T04:50:03Z","body":"the existing iOS orientation methods are not compatible with the virtual functions that they inherit from. The new virtuals use a ofOrientation enum, and the old functions use ints.\r\n\r\nThis issue was introduced in https://github.com/openframeworks/openFrameworks/commit/38011d54","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/486","comments":0,"milestone":null,"number":486,"assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"closed_at":null,"title":"ofOrientation incompatible with iOS addon","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2011-02-28T18:14:04Z","state":"open","user":{"url":"https://api.github.com/users/jonbro","avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"893ec14dc008e3774afe5841115920d6","login":"jonbro","id":1597},"id":635112,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/486"},{"updated_at":"2012-04-24T21:04:32Z","body":"it would be nice to start deprecating grabFrame() and idleFrame() (but maybe wait a couple years to actually remove them) , and change the examples to only use update() and isFrameNew().","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/484","comments":12,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":0,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","number":6,"title":"0073 Release","due_on":"2012-07-30T07:00:00Z","open_issues":5,"created_at":"2011-12-03T15:37:49Z","state":"open","description":"","id":62090},"number":484,"assignee":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_at":null,"title":"grabFrame/idleFrame deprecation","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2011-02-20T17:56:02Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":613171,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/484"},{"updated_at":"2011-02-14T17:11:08Z","body":"Within 0062, inside libs/openFrameworks/video/ofVideoPlayer.cpp on line 314 there is a check for height and width not being 0, then \"bDoWeAlreadyHaveAGworld = true;\" is set. However, this prevents other movies after the first from being loaded into that instance of ofVideoPlayer. \r\nI have posted about this in the forum with a fix (to just remove that check) here: http://www.openframeworks.cc/forum/viewtopic.php?f=8&t=5222\r\n\r\nInside the latest code, it is within ofQuickTimePlayer.cpp https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/video/ofQuickTimePlayer.cpp#L281.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/475","comments":0,"milestone":null,"number":475,"assignee":null,"closed_at":null,"title":"ofVideoPlayer bug when loading subsequent movies after the first one","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2011-02-14T17:11:08Z","state":"open","user":{"url":"https://api.github.com/users/nemik","avatar_url":"https://secure.gravatar.com/avatar/ace632f74988653fdbde09225134bfdd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"ace632f74988653fdbde09225134bfdd","login":"nemik","id":62301},"id":598097,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/475"},{"updated_at":"2011-02-07T19:58:23Z","body":"I like to be able to know when an object has successfully initialized or loaded and OF provides for this, for the most part, but in an inconsistent manner ie\r\n\r\nofVideoGrabber::initGrabber() returns a bool, but ofVideoGrabber:bInitialized is protected and therefore not accessible\r\n\r\nwhile\r\n\r\nofTrueTypeFont::bLoadedOk is public, but ofTrueTypeFont::loadFont() returns void\r\n\r\nand\r\n\r\nofImage::loadImage() returns a bool and ofLoadImage::bAllocated() returns a bool, yet ofImage::setFromPixels() returns void\r\n\r\nI propose all loadable/initable objects have loading functions which always return a bool and a testable function (isInited(), isLoaded(), etc) for use after loading. Ideally, the testable functions would always be named the same ie myImage.isLoaded(), myVideoGrabber().isLoaded(), myFont.isLoaded() but of course a general name may not apply to all situations (myVideoGrabber.isInited() probably makes more sense).\r\n\r\nHell, all the load functions could be overloaded ie ofImage::load(string filename), ofImage::load(ofPixels pixels), ofImage::load(unsigned char* pixels) across different objects, ofTrueTypeFont::load(string filename), ofVideoGrabber::load(int w, int h, int deviceID). This consistency looks nice to anal me. but might be confusing to newbies and of course would break old code (unless wrapped for legacy compatibility). It seems a little annoying that every objects seems to have it's own way of checking this and that ...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/463","comments":0,"milestone":null,"number":463,"assignee":null,"closed_at":null,"title":"object init/load state is not consistently testable","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2011-02-07T19:58:23Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":581395,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/463"},{"updated_at":"2011-02-07T15:58:19Z","body":"Hi,\r\n\r\nI get the following error:\r\n// INIT OF ERROR\r\nOF_WARNING: ofBaseVideoPlayer::setPixelFormat not implemented\r\nOpenCV Error: Assertion failed (src.size() == dst.size() && src.channels() == dst.channels() && ((src.depth() == CV_8U && (dst.depth() == CV_16S || dst.depth() == CV_32F)) || (src.depth() == CV_32F && dst.depth() == CV_32F))) in cvSobel, file /Users/theo/Documents/CODE/__OPENFRAMEWORKS/gitOF/__BuildAllLibs/OpenCV-2.2.0/modules/imgproc/src/deriv.cpp, line 347\r\nterminate called after throwing an instance of 'cv::Exception'\r\n what(): /Users/theo/Documents/CODE/__OPENFRAMEWORKS/gitOF/__BuildAllLibs/OpenCV-2.2.0/modules/imgproc/src/deriv.cpp:347: error: (-215) src.size() == dst.size() && src.channels() == dst.channels() && ((src.depth() == CV_8U && (dst.depth() == CV_16S || dst.depth() == CV_32F)) || (src.depth() == CV_32F && dst.depth() == CV_32F)) in function cvSobel\r\n// END OF ERROR\r\n\r\nWhen I try to call the cvSobel method like this:\r\ncvSobel( grayImage.getCvImage(), grayImage.getCvImage(), 0, 1, 3 );\r\n\r\nThis works fine in 0062.\r\n\r\nCheers\r\n- rS","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/462","comments":0,"milestone":null,"number":462,"assignee":null,"closed_at":null,"title":"OpenCV cvSobel() not working with latest master branch","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2011-02-07T15:58:19Z","state":"open","user":{"url":"https://api.github.com/users/nardove","avatar_url":"https://secure.gravatar.com/avatar/8022cb5f529975afbc64cc9312008d8c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8022cb5f529975afbc64cc9312008d8c","login":"nardove","id":277690},"id":580717,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/462"},{"updated_at":"2011-02-07T19:38:51Z","body":"Currently, the ofVideoGrabber can list devices to stdout, but does not return the number of available devices. I propose that either listDevices() return an int or a new function be added, something like getNumDevices() or a getDeviceNums() which returns a vector of valid device ids. This could be related to Arturo's Issue where the devices could be retrieved as strings. I think it makes sense to have these as static functions so that you could open all available cameras into an Array of ofVideoGrabbers by retrieving the number of devices and their ids to open them.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/461","comments":0,"milestone":null,"number":461,"assignee":null,"closed_at":null,"title":"get number of input devices and device IDs from ofVideoGrabber","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2011-02-07T15:24:21Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":580556,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/461"},{"updated_at":"2012-03-08T15:56:48Z","body":"i feel like it happens relatively often where i try to save an image (for example) and the parent directories don't exist, so it just fails without really saying anything.\r\n\r\nit would be nice if the dir(s) were just created automatically for you.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/460","comments":8,"milestone":null,"number":460,"assignee":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"closed_at":null,"title":"saveImage() and other save operations should create missing directories","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2011-02-07T07:52:25Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":579790,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/460"},{"updated_at":"2011-02-06T04:26:44Z","body":"ofPixels::allocate is smart in that it doesn't reallocate if you ask for the same size as what's already there. ofTexture should work the same way to avoid unnecessary overhead.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/454","comments":0,"milestone":null,"number":454,"assignee":null,"closed_at":null,"title":"ofTexture::allocate not checking for unnecessary reallocation","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2011-02-06T04:26:44Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":578069,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/454"},{"updated_at":"2011-02-02T00:03:09Z","body":"maybe a generic 'transformer' function would handle both this and mouse coordinates, and anything else? ofPoint ofGetAsbolutePosition(x,y)?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/449","comments":0,"milestone":null,"number":449,"assignee":null,"closed_at":null,"title":"ofViewport doesn't work with ofSetOrientation","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2011-02-02T00:03:09Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":568540,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/449"},{"updated_at":"2011-01-31T19:26:41Z","body":"ofVideoGrabber has getOFPixels in the .h, but it isn't implemented in the .cpp.\r\n\r\nmaybe this is just a signal that ofPixels stuff needs to be resolved soon... :) i'd be glad to help with this if possible.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/446","comments":0,"milestone":null,"number":446,"assignee":null,"closed_at":null,"title":"no way to get imageType of ofVideoGrabber","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2011-01-31T19:26:41Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":565122,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/446"},{"updated_at":"2011-01-28T06:28:01Z","body":"the start time is stored internally as an unsigned long, but ofGetElapsedTimeMillis returns it as an int. ofGetElapsedTimef also does calculations using time as an int. this means time wraps around every (2^31 - 1) milliseconds in days = 24.8 days.\r\n\r\nas an unsigned long it would be (2^64 - 1) milliseconds in years = 584 million years :)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/428","comments":0,"milestone":null,"number":428,"assignee":null,"closed_at":null,"title":"ofGetElapsedTimeMillis returns an int instead of unsigned long","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"}],"created_at":"2011-01-28T06:28:01Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":558215,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/428"},{"updated_at":"2011-12-02T21:05:54Z","body":"I thought checking for custom texture wrapping in ofShader might be useful. Not sure how to add a label to this :/\n\n#include ofGraphics.h\n\nvoid setUniformTexture(const char* name, ofBaseHasTexture& img, int textureLocation=-1);\nvoid setUniformTexture(const char* name, ofTexture& img, int textureLocation=-1);\n\nvoid ofShader::setUniformTexture(const char* name, ofTexture& tex, int textureLocation) {\n\tif(bLoaded) {\n\t\t\n\t\tGLfloat wrapS = -1;\n\t\tGLfloat wrapT = -1;\n\t\t\n\t\tif (ofGetUsingCustomTextureWrap()) {\n\t\t\tglGetTexParameterfv(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, &wrapS);\n\t\t\tglGetTexParameterfv(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, &wrapT);\n\t\t}\n\t\t\n\t\tofTextureData texData = tex.getTextureData();\n\t\tif (textureLocation < 0) textureLocation = texData.textureID;\n\t\tglActiveTexture(GL_TEXTURE0 + textureLocation);\n\t\tglEnable(texData.textureTarget);\n\t\t\n\t\tif(wrapS > 0) glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, wrapS);\n\t\tif(wrapT > 0) glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, wrapT);\n\t\t\n\t\tglBindTexture(texData.textureTarget, texData.textureID);\n\t\tglDisable(texData.textureTarget);\n\t\tsetUniform1i(name, texData.textureID);\n\t\tglActiveTexture(GL_TEXTURE0);\n\t}\n}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/424","comments":1,"milestone":null,"number":424,"assignee":null,"closed_at":null,"title":"Check ofShader Texture Wrap Parameters","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2011-01-27T19:43:31Z","state":"open","user":{"url":"https://api.github.com/users/NickHardeman","avatar_url":"https://secure.gravatar.com/avatar/4fc88ba881fee72fc4c5de473dc2ebbf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"4fc88ba881fee72fc4c5de473dc2ebbf","login":"NickHardeman","id":142694},"id":556923,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/424"},{"updated_at":"2011-01-24T22:34:29Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=8&t=5222","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/423","comments":0,"milestone":null,"number":423,"assignee":null,"closed_at":null,"title":"problem with reloading movies in osx","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"created_at":"2011-01-24T22:34:29Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":548302,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/423"},{"updated_at":"2011-12-05T22:03:15Z","body":"Hi guys,\r\n\r\nI posted to the OF forum a solution back in August to support retina display with backward compatibility to pre-OS 4.0 devices:\r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=25&t=4185&start=15\r\n\r\nIf it's still outstanding, here's the solution!\r\n\r\nEAGLView.mm, initWithFrame, after the eaglLayer.drawableProperties assignment, add:\r\n\r\n if ([[UIScreen mainScreen] respondsToSelector:@selector(scale)]) {\r\n if ([[UIScreen mainScreen] scale] > 1) {\r\n // code below doesn't work on iPad 3.2 OS and below, but doesn't need to because scale is 1\r\n [self setContentScaleFactor:[[UIScreen mainScreen] scale]];\r\n }\r\n }\r\n\r\nofAppiPhoneWindow.mm, timerLoop, after [ofxiPhoneGetGLView() startRender]; add:\r\n\r\n int ofwidth = ofGetWidth();\r\n int ofheight = ofGetHeight();\r\n \r\n if ([[UIScreen mainScreen] respondsToSelector:@selector(scale)]) {\r\n ofwidth *= [[UIScreen mainScreen] scale];\r\n ofheight *= [[UIScreen mainScreen] scale];\r\n }\r\n\r\nthen change the glViewport calls:\r\n\r\n\t// this could be taken out and included in ofAppBaseWIndow\r\n\tif(orientation == OFXIPHONE_ORIENTATION_PORTRAIT || orientation == OFXIPHONE_ORIENTATION_UPSIDEDOWN)\r\n\t\tglViewport( 0, 0, ofwidth, ofheight );\r\n\telse\r\n\t\tglViewport( 0, 0, ofheight, ofwidth );","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/421","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":16,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":421,"assignee":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"closed_at":null,"title":"Retina display support **that doesn't crash devices!** with backward compatibility to OS 3.0","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"created_at":"2011-01-24T20:52:18Z","state":"open","user":{"url":"https://api.github.com/users/snibbe","avatar_url":"https://secure.gravatar.com/avatar/117a7eecfee7c7f7e954623fd96e1b6e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"117a7eecfee7c7f7e954623fd96e1b6e","login":"snibbe","id":581517},"id":548070,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/421"},{"updated_at":"2011-01-22T15:57:37Z","body":"suggestions:\r\n\r\n ofPopMatrix(ofMatrix4x4 m)\r\n\r\n ofMultMatrix(ofMatrix4x4 m)\r\n\r\n ofMatrix4x4::apply();\r\n ofMatrix4x4::push();","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/418","comments":0,"milestone":null,"number":418,"assignee":null,"closed_at":null,"title":"something to wrap glMultMatrixf","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2011-01-22T15:57:37Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":543729,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/418"},{"updated_at":"2011-01-22T15:24:07Z","body":"e.g.\r\n\r\n void ofEasyCam::reset() {\r\n\ttarget.resetTransform();\r\n\tdistance = 100;\r\n }\r\n\r\nofNode's\r\n\tvirtual void customDraw() {\r\n\t\tofBox(10);\r\n\t\tofDrawAxis(20);\r\n\t}\r\n\r\nsuggestions:\r\n\r\nglobal variable called something like 'base3DScaleFactor = 10.0f' which will affect all of these current constant scale factors","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/417","comments":0,"milestone":null,"number":417,"assignee":null,"closed_at":null,"title":"3D isn't scale invariant in certain parts","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2011-01-22T15:24:07Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":543694,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/417"},{"updated_at":"2012-03-10T05:00:35Z","body":"Getting this error after the app launches in simulator mode \r\n\r\nDetected an attempt to call a symbol in system libraries that is not present on the iPhone:\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/414","comments":3,"milestone":null,"number":414,"assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"closed_at":null,"title":"Simulator not working with any examples ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2011-01-20T20:17:35Z","state":"open","user":{"url":"https://api.github.com/users/vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","id":149997},"id":539979,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/414"}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=12 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4971'), ('content-length', '39721'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"3d3037764dd77af4d0d48c0efe09d81d"'), ('date', 'Tue, 29 May 2012 06:43:44 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-03-14T15:11:06Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/413","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":16,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":413,"assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"closed_at":null,"title":"ofCamera::setPan is broken","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2011-01-20T20:01:00Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":539915,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/413"},{"updated_at":"2011-01-20T19:33:30Z","body":"multisampling is now working in linux through the display string option. perhaps we could add a method to easily set it if it also works on win/osx","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/412","comments":0,"milestone":null,"number":412,"assignee":null,"closed_at":null,"title":"add setMultisampling method to glutWindow","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"created_at":"2011-01-20T19:33:30Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":539845,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/412"},{"updated_at":"2012-03-14T15:11:06Z","body":"Needs to take into account the rotation and the flipping happening in ofAppiPhoneWindow::timerLoop() \n\nAlso the internal call to ofViewport causes clipping in horizontal mode. \n\nIts currently very difficult to setup the camera correctly for iPad / iPhone - would be great if the default for ofCamera would be to start with the typical OF camera view. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/410","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":16,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":410,"assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"closed_at":null,"title":"ofCamera / ofEasyCamera does not work correctly for iPhone / iPad","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2011-01-20T18:59:10Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":539744,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/410"},{"updated_at":"2011-01-19T19:39:37Z","body":"ofLight bug not sure what the ios equivalent is..\r\n\r\nglColorMaterial(GL_FRONT_AND_BACK, GL_AMBIENT_AND_DIFFUSE); is not supported in IOS","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/406","comments":0,"milestone":null,"number":406,"assignee":null,"closed_at":null,"title":"ofEnableLighting","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2011-01-19T19:39:36Z","state":"open","user":{"url":"https://api.github.com/users/vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","id":149997},"id":537416,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/406"},{"updated_at":"2011-01-19T13:24:54Z","body":"Suggest change line 126 of ofGraphics.h to\r\n\tglViewport(x, ofGetHeight() - y - height, width, height);\r\n\r\nto be in line with rest of openFrameworks coordinate system\r\ne.g. ofRect(myRect) matches ofViewport(myRect)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/405","comments":0,"milestone":null,"number":405,"assignee":null,"closed_at":null,"title":"ofViewport doesn't match rest of openFrameworks coordinates","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2011-01-19T13:24:53Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":536614,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/405"},{"updated_at":"2011-01-17T23:39:31Z","body":"it should be only in the implementations and queried by the grabber/player in case an implementation doesn't support a format if not the app can crash or have really weird results","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/403","comments":0,"milestone":null,"number":403,"assignee":null,"closed_at":null,"title":"setPixelFormat shouldn't be stored in videoGrabber/Player","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2011-01-17T23:39:31Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":532954,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/403"},{"updated_at":"2011-01-17T16:37:42Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/400","comments":0,"milestone":null,"number":400,"assignee":null,"closed_at":null,"title":"ofTTF should have setAnchorPercent so you can draw strings centered, right aligned etc","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography","color":"DDDDDD"}],"created_at":"2011-01-17T16:37:42Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":532096,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/400"},{"updated_at":"2011-03-20T17:33:14Z","body":"every frame, it should update the pmouse value. so if you don't move the mouse, the pmouse value is equal to the current value.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/391","comments":1,"milestone":null,"number":391,"assignee":null,"closed_at":null,"title":"ofGetPreviousMouseX/Y() does not update per frame","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2011-01-16T07:21:15Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":529705,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/391"},{"updated_at":"2011-03-20T17:32:59Z","body":"this is a limitation to glut, but it might be hackable on each system separately.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/389","comments":1,"milestone":null,"number":389,"assignee":null,"closed_at":null,"title":"mouse position doesn't update until mouse is moved","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2011-01-16T07:11:53Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":529700,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/389"},{"updated_at":"2011-03-13T21:10:48Z","body":"following error appears when i try to load an image; commenting out the call to loadImage(\"...\") makes the error go away.\n\n Undefined symbols:\n \"std::basic_ostream >& std::__ostream_insert >(std::basic_ostream >&, char const*, int)\", \n referenced from:\n Poco::Net::HTTPClientSession::proxyAuthenticateImpl(Poco::Net::HTTPRequest&)in PocoNet.a(HTTPClientSession.o)\n Poco::Net::HTTPClientSession::proxyAuthenticateImpl(Poco::Net::HTTPRequest&)in PocoNet.a(HTTPClientSession.o)\n Poco::Net::HTTPRequest::write(std::basic_ostream >&) constin PocoNet.a(HTTPRequest.o)\n Poco::Net::HTTPRequest::write(std::basic_ostream >&) constin PocoNet.a(HTTPRequest.o)\n Poco::Net::HTTPRequest::write(std::basic_ostream >&) constin PocoNet.a(HTTPRequest.o)\n Poco::Net::MessageHeader::write(std::basic_ostream >&) constin PocoNet.a(MessageHeader.o)\n Poco::Net::MessageHeader::write(std::basic_ostream >&) constin PocoNet.a(MessageHeader.o)\n Poco::Net::HTTPResponse::write(std::basic_ostream >&) constin PocoNet.a(HTTPResponse.o)\n Poco::Net::HTTPResponse::write(std::basic_ostream >&) constin PocoNet.a(HTTPResponse.o)\n\nld: symbol(s) not found\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/387","comments":1,"milestone":null,"number":387,"assignee":null,"closed_at":null,"title":"Linker error when loading image (Poco::Net related?)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2011-01-16T05:57:51Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":529646,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/387"},{"updated_at":"2012-05-15T17:01:08Z","body":"would be nice if it was a float (0-1) and not an int(0-100) for standardization with every other audio thing in the universe aside from quicktime","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/375","comments":2,"milestone":null,"number":375,"assignee":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"closed_at":null,"title":"ofVideoPlayer setVolume uses an int","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"created_at":"2011-01-15T23:03:57Z","state":"open","user":{"url":"https://api.github.com/users/stfj","avatar_url":"https://secure.gravatar.com/avatar/b089227a1748a2d70cdfc4ef00b325ad?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b089227a1748a2d70cdfc4ef00b325ad","login":"stfj","id":177578},"id":529268,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/375"},{"updated_at":"2011-01-14T19:30:31Z","body":"glDrawBitmapString doesn't work when GL_LIGHTING is enabled.\r\n\r\nwell, it works... but it is black because it isn't reflecting any light. regardless of the ofSetColor.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/357","comments":0,"milestone":null,"number":357,"assignee":null,"closed_at":null,"title":"glDrawBitmapString vs GL_LIGHTING","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2011-01-14T19:30:31Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":527591,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/357"},{"updated_at":"2011-01-14T01:33:38Z","body":"some of the core functions only work with 2d points, others only with 3d points, some work with both. but they all take ofPoints.\r\n\r\nit's good for teaching purposes to have ofPoints because you don't have to explain what a 'vector' is, but it's unclear for advanced users whether the functions take 2d or 3d points...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/347","comments":0,"milestone":null,"number":347,"assignee":null,"closed_at":null,"title":"none of the core functions report how many dimensions they work for","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2011-01-14T01:33:38Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":526094,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/347"},{"updated_at":"2011-01-13T16:16:40Z","body":"e.g., GL_DEPTH_TEST.\r\n\r\none of the reasons for this is that it's not obvious to newbies what common features are available.\r\n\r\nanother is that i've seen lots of people write GL_DEPTH instead, which obviously doesn't work.\r\n\r\nthere might be some others too, see processing's hint():\r\n\r\nhttp://processing.org/reference/hint_.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/340","comments":0,"milestone":null,"number":340,"assignee":null,"closed_at":null,"title":"OF wrapper for basic gl functions that aren't intuitive to newbies","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"created_at":"2011-01-13T16:16:40Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":524875,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/340"},{"updated_at":"2012-05-27T13:35:42Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/337","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":16,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":337,"assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"closed_at":null,"title":"ofFileDialog allow folder selection ( works on os x ) needs code for win and linux","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2011-01-13T05:21:53Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":523837,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/337"},{"updated_at":"2012-03-14T15:11:06Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/330","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":16,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":330,"assignee":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"closed_at":null,"title":"OpenCv 2.2 for Win ( CB and VS )","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"}],"created_at":"2011-01-12T19:09:37Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":522789,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/330"},{"updated_at":"2011-12-04T14:06:34Z","body":"currentStyle stores everything about the current style, so it can be used rather than things like drawMode for tracking how things should currently be draw.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/325","comments":1,"milestone":null,"number":325,"assignee":null,"closed_at":null,"title":"drawMode can be deprecated, currentStyle.bFill should be used instead","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2011-01-12T15:41:11Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":522255,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/325"},{"updated_at":"2011-01-12T15:34:48Z","body":"ordering for code completion is a little weird.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/324","comments":0,"milestone":null,"number":324,"assignee":null,"closed_at":null,"title":"ofPushView/ofPopView appear before ofPushMatrix/ofPopMatrix","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"}],"created_at":"2011-01-12T15:34:48Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":522231,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/324"},{"updated_at":"2011-01-10T22:30:48Z","body":"under the /video directory","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/311","comments":0,"milestone":null,"number":311,"assignee":null,"closed_at":null,"title":"openFrameworksLib has ofQtUtils included twice","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2011-01-10T22:30:48Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":518434,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/311"},{"updated_at":"2011-01-10T06:36:27Z","body":"better to use aggregation (helper classes/functions) if necessary for common functionality that have implementation in those classes. making them pure abstract classes will avoid problems with multiple inheritance and easier to extend in case of different behaviour","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/305","comments":0,"milestone":null,"number":305,"assignee":null,"closed_at":null,"title":"no implementation in ofBaseTypes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2011-01-10T06:36:27Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":516844,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/305"},{"updated_at":"2011-12-05T21:59:59Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/302","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":16,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":302,"assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"closed_at":null,"title":"Remove Poco CppUnit from all projects ( done on os x )","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2011-01-10T02:39:28Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":516565,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/302"},{"updated_at":"2012-02-25T01:06:09Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/299","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":0,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","number":6,"title":"0073 Release","due_on":"2012-07-30T07:00:00Z","open_issues":5,"created_at":"2011-12-03T15:37:49Z","state":"open","description":"","id":62090},"number":299,"assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"closed_at":null,"title":"freetype-2.4.4 for linux","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2011-01-10T02:38:08Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":516560,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/299"},{"updated_at":"2012-02-25T01:06:08Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/298","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":0,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","number":6,"title":"0073 Release","due_on":"2012-07-30T07:00:00Z","open_issues":5,"created_at":"2011-12-03T15:37:49Z","state":"open","description":"","id":62090},"number":298,"assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"closed_at":null,"title":"freetype-2.4.4 for windows","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"created_at":"2011-01-10T02:37:49Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":516559,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/298"},{"updated_at":"2011-12-05T21:59:27Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/296","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":16,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":296,"assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"closed_at":null,"title":"FreeImage 3141 build for windows","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"created_at":"2011-01-10T02:36:58Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":516556,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/296"},{"updated_at":"2011-01-09T20:46:43Z","body":"I think the pixeltype, the gltypeinternal and the gltype should be accessible to the user as well as the loadData(void * data, int w, int h, int glDataType) which is actually protected.\r\n\r\nActual implementation is only limited to a few choice of internalFormat which lead to choice of pixeltype and gltype. It thus doesn't allow from user specific type.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/292","comments":0,"milestone":null,"number":292,"assignee":null,"closed_at":null,"title":"ofTexture should be more flexible","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2011-01-09T20:46:43Z","state":"open","user":{"url":"https://api.github.com/users/I33N","avatar_url":"https://secure.gravatar.com/avatar/ba8d7c3b4532d3747c30b9be91dc20d5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"ba8d7c3b4532d3747c30b9be91dc20d5","login":"I33N","id":520375},"id":516071,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/292"}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=13 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4970'), ('content-length', '43018'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"caade974e6dd6e7ac7febf9cb0494e92"'), ('date', 'Tue, 29 May 2012 06:43:44 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-12-03T10:49:15Z","body":"ofImage::getWidth()/getHeight() are just getters that do absolutely nothing but return a copy of the width and height. these methods should be marked const.\r\n\r\n[added]: there are hacks inside ofxCv that i've had to make because getWidth/getHeight are not const correct. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/288","comments":6,"milestone":null,"number":288,"assignee":null,"closed_at":null,"title":"const correctness - add const to getWidth/getHeight","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2011-01-08T02:14:03Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":513779,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/288"},{"updated_at":"2010-11-30T05:13:10Z","body":"This is giving me some crashes. There needs to be a way to disable this when making custom windows. I have tried to do atexit(NULL); but the callback in ofRunApp(ofBaseApp * OFSA) is still being called. \r\n\r\nmaybe something like:\r\n\r\nvoid ofRunApp(ofBaseApp * OFSA, bool useExitCallback);\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/275","comments":0,"milestone":null,"number":275,"assignee":null,"closed_at":null,"title":"atexit(ofExitCallback);","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2010-11-30T05:13:10Z","state":"open","user":{"url":"https://api.github.com/users/vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","id":149997},"id":445829,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/275"},{"updated_at":"2011-03-17T02:02:25Z","body":"bottom left corner is inconsistent with every other drawing command in OF, should be top left instead.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/271","comments":7,"milestone":null,"number":271,"assignee":null,"closed_at":null,"title":"ofDrawBitmapString draws from bottom left","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2010-11-22T21:30:40Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":433297,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/271"},{"updated_at":"2011-06-03T19:04:08Z","body":"test if this is really useful:\r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=7&t=4889&view=unread#unread\r\n\r\nhe adds a queue just before the color conversion","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/265","comments":0,"milestone":null,"number":265,"assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"closed_at":null,"title":"linux videograbber stopping after some time","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"created_at":"2010-11-18T12:07:46Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":426050,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/265"},{"updated_at":"2011-09-19T22:47:21Z","body":"ofClear(r,g,b) is inconsistent with ofBackground(r,g,b) because the alpha is 0 by default -- meaning you always have to explicitly declare the alpha to clear the background.\r\n\r\nfurthermore, because all the arguments have default values there is not/cannot exist an ofClear(gray, alpha) to match ofSetColor style","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/264","comments":5,"milestone":null,"number":264,"assignee":null,"closed_at":null,"title":"ofClear uses inconsistent arguments","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2010-11-18T06:15:47Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":425675,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/264"},{"updated_at":"2011-12-05T21:58:33Z","body":"A lot of OF files are including ofMain / ofConstants.h - this makes compiles super slow. Try to have files only include what they need. Or find a way to break things up into the most often used ( windows.h etc ) and less used. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/255","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":16,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":255,"assignee":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"closed_at":null,"title":"COMPILE SPEED UP - cleanup internal includes to avoid ofMain.h and ofConstants.h","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2010-11-11T21:14:05Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":413771,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/255"},{"updated_at":"2011-12-02T20:11:33Z","body":"ofHideCursor()/ofShowCursor()\r\n\r\nofEnableArbTex()\r\nofEnableSetupScreen()\r\nofEnableDataPath()\r\nofEnableAlphaBlending()\r\nofEnableSmoothing()\r\n\r\nofSetFullscreen() + ofToggleFullscreen()\r\nofSetVerticalSync()\r\n\r\netc.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/249","comments":1,"milestone":null,"number":249,"assignee":null,"closed_at":null,"title":"normalize option nomenclature (hide/enable/set/etc.)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2010-11-03T22:52:08Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":399214,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/249"},{"updated_at":"2011-12-05T22:03:41Z","body":"some video to test:\r\n\r\nmmsh://live.camstreams.com/cscamglobal16?MSWMExt=.asf\r\n\r\nit works ok with totem so it should be a problem in ofGstUtils","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/245","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":16,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":245,"assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"closed_at":null,"title":"gstreamer problems with streaming of microsoft video","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"created_at":"2010-10-13T16:33:06Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":360885,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/245"},{"updated_at":"2011-03-13T20:13:07Z","body":"I found an annoying bug in ofVideoPlayer.\nThis module do not like to be dynamically created or destroyed.\nCheck this little example :\n\nhttp://knu.free.fr/bug_ofVideoPlayer.zip\n\nLeft-click to create an object playing video.\nRight-click to suppress the last video.\n\nhere are the phenomenons I am facing on my Win7 machine :\n\n- \nIf you create an object, and then you suppress it, and then try to create an object again, the app will crash.\n\n- \nIf you create some objects (lets say 8), and then you suppress all of them, the app will crash before the last one (not always, but most of the time).\n\n\n\nNow in OF source tree, try replacing ofVideoPlayer.cpp with FIX_ofVideoPlayer.cpp (at the root of the zip)\nRebuild the project.\nNow everything should be working as expected.\n\n\nThe modifications I made in the source are marked by : //###############\n\nI do not have time to fully read and understand the quicktime API, so there are chances this workaround is fucking dirty.\nBut at least it seems to work.\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/244","comments":1,"milestone":null,"number":244,"assignee":null,"closed_at":null,"title":"bug in ofVideoPlayer","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2010-10-11T19:56:46Z","state":"open","user":{"url":"https://api.github.com/users/fmauclere","avatar_url":"https://secure.gravatar.com/avatar/1c7dcbab3712f1a4d90bd2c3aa9a3e3d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"1c7dcbab3712f1a4d90bd2c3aa9a3e3d","login":"fmauclere","id":435720},"id":357395,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/244"},{"updated_at":"2012-03-10T05:06:06Z","body":"Check out this code - also check if latest ffmpeg is better optimized for iphone.\r\nhttp://github.com/jgh-/FFmpeg-for-iOS","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/240","comments":0,"milestone":null,"number":240,"assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"closed_at":null,"title":"iphone video player - ffmpeg and audioqueues","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2010-10-06T17:19:57Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":349886,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/240"},{"updated_at":"2012-03-10T05:08:56Z","body":"XCode: 3.2.4\nOF: github master @24 Sep 2010\nCompiled as: device base SDK 4.1 release arm7 deployment target 3.2\n\nWeird error: Build ofAudioOutputExample. Add a void testApp::exit() to see if it is called. Run app on ipod touch 2010 version with 4.1 installed.\n\nApp runs OK yet pressing the exit button on front of device quits the app, but xcode keeps running. Digging in a bit it appears not only testApp::exit, but ofExitCallback is not getting called.\n\nSwitch to iPad (no other settings changed) and app runs fine, and exits properly.\n\nSwitch to BaseSDK 3.2 and example runs fine and exits fine on both iPad and iPod.\n\nIdeas? Is this just me? I'm fairly new to OF, XCode and iPhone\n\n[edit]\nOK I worked out that pressing the \"close\" button in 4.1 calls applicationWillResignActive in ofxiPhoneAppDelegate.mm. As a hacky workaround as my app just needs to exit, not sit in background, I added exit(0); to the end of applicationWillResignActive and it seems to work.\n\nWould like to know how to do this properly though.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/236","comments":1,"milestone":null,"number":236,"assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"closed_at":null,"title":"ofExitCallback not being called on iphone4.1?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2010-09-25T01:55:49Z","state":"open","user":{"url":"https://api.github.com/users/DavidDC","avatar_url":"https://secure.gravatar.com/avatar/a6fdad0c31fcd273a1ba89434fec0419?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"a6fdad0c31fcd273a1ba89434fec0419","login":"DavidDC","id":415101},"id":332379,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/236"},{"updated_at":"2011-04-19T00:32:33Z","body":"related to #221: texData.bAllocated is only used in the isAllocated method which can be changed from:\r\n\r\n bool ofTexture::bAllocated(){\r\n return texData.bAllocated;\r\n }\r\n\r\nto\r\n\r\n bool ofTexture::bAllocated(){\r\n return texData.textureID!=0;\r\n }\r\n\r\navoiding problems like #221 since we don't have two flags for the same thing","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/228","comments":4,"milestone":null,"number":228,"assignee":null,"closed_at":null,"title":"remove bAllocated in ofTexture?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2010-09-09T14:20:55Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":309191,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/228"},{"updated_at":"2011-12-02T15:45:27Z","body":"Segfault when playing .ogv files on 64 bit linux.\nSee forum post - http://www.openframeworks.cc/forum/viewtopic.php?f=7&t=4582","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/227","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":16,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":227,"assignee":null,"closed_at":null,"title":"Ubuntu 64-bit conflict with FMOD when playing ogg theora files","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"created_at":"2010-09-08T14:54:33Z","state":"open","user":{"url":"https://api.github.com/users/pierrep","avatar_url":"https://secure.gravatar.com/avatar/be11c9de8242e7aef0446eceaa289e01?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"be11c9de8242e7aef0446eceaa289e01","login":"pierrep","id":392160},"id":307684,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/227"},{"updated_at":"2010-08-31T10:54:19Z","body":"It would be nice to have:\r\n\r\n\tconst ofxVec2f xunit2f(1, 0), yunit2f(0, 1);\r\n\tconst ofxVec3f xunit3f(1, 0, 0), yunit3f(0, 1, 0), zunit3f(0, 0, 1);\r\n\r\nOr something similar that allows for more elegant notation when you're multiplying or adding by an axis.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/225","comments":0,"milestone":null,"number":225,"assignee":null,"closed_at":null,"title":"ofxVectorMath constants","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2010-08-31T10:54:19Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":295913,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/225"},{"updated_at":"2012-03-26T18:37:47Z","body":"can this be useful?\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=25&t=4500\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/224","comments":1,"milestone":null,"number":224,"assignee":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_at":null,"title":"gaussian noise","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"}],"created_at":"2010-08-26T10:21:24Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":290973,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/224"},{"updated_at":"2011-10-17T13:58:53Z","body":"ofxOsc causes a memory access violation in VS2008, when you use sendMessage(ofxOscMessage) from within a class.\r\nNo error when you run that from main ofApp","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/214","comments":1,"milestone":null,"number":214,"assignee":null,"closed_at":null,"title":"ofxOsc memory access violation. namespace issue?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2010-08-04T05:59:22Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":268332,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/214"},{"updated_at":"2012-03-14T15:12:26Z","body":"e) get arturo's script to work, or rewrite a new one to just clobber a given directory (and not pull from git, etc as it's doing now). \r\n\r\ntheo - might be good to have two scripts?\r\n1) to pull from git \r\n2) to remove everything not related to a platform - or maybe better just copies the files into a folder for that platform. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/199","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":16,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":199,"assignee":null,"closed_at":null,"title":"script that doesn't pull everything from git","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2010-06-01T13:28:54Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":211418,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/199"},{"updated_at":"2010-05-25T14:54:52Z","body":"\r\nas per: \r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=8&t=3962&p=20661#p20661\r\n\r\nwe should explain how to use it properly. \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/194","comments":0,"milestone":null,"number":194,"assignee":null,"closed_at":null,"title":"ofGetAppPtr documentation is wrong ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"created_at":"2010-05-25T14:54:52Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":205935,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/194"},{"updated_at":"2011-12-05T21:58:22Z","body":"http://www.glfw.org/release-2.6.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/193","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":16,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":193,"assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"closed_at":null,"title":"look at glfw - just got updated","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2010-05-23T21:04:25Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":204247,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/193"},{"updated_at":"2011-12-02T19:20:16Z","body":"I had the L.A.S.E.R. tag software up and running great on my new MacBook Pro but recently my computer did a software update and now something is wrong and I can't properly use the program. I have snow leopard 10.6.3 OS. I'm not totally sure if it was the auto update that caused the issue but it seems like it stopped working after the update. Below I listed the suspected updates. Seems weird to me 2 digital camera RAW updates.\r\n\r\n3/27/10 Digital Camera RAW update 2.7\r\n3/27/10 Safari 4.0.5\r\n3/27/10 Digital Camera RAW update 3.1\r\n3/27/10 iMovie update 8.0.6\r\n\r\n0 com.apple.QuickTime \t0x9408e179 QTMLGrabMutex + 18\r\n1 com.apple.QuickTime \t0x9421b6a3 QTWorkContextCopyForMediaContextID + 28\r\n2 ...uickTimeStreaming.component\t0x14f77c15 HTTPDhlr_CheckForFatalError + 254\r\n3 ...uickTimeStreaming.component\t0x14f77cc6 HTTPDhlr_ReadSYNC + 165\r\n4 ...uickTimeStreaming.component\t0x14f7ab01 HTTPDataHandler_ScheduleData64 + 452\r\n5 ...ple.CoreServices.CarbonCore\t0x949a2d05 callComponentStorage_4444444 + 63\r\n6 ...ple.CoreServices.CarbonCore\t0x949976f0 CallComponentFunctionCommonWithStorage(char**, ComponentParameters*, long (*)(), unsigned long) + 54\r\n7 ...uickTimeStreaming.component\t0x14f784c7 HTTPDataHandler_ComponentDispatch + 110\r\n8 ...ple.CoreServices.CarbonCore\t0x9498fd87 CallComponentDispatch + 29\r\n9 com.apple.QuickTime \t0x94093540 DataHScheduleData64 + 73\r\n10 com.apple.QuickTime \t0x940b5704 NewMovieFromDataRefPriv_priv + 8296\r\n11 com.apple.QuickTime \t0x9419e613 NewMovieFromDataRef_priv + 54\r\n12 com.apple.QuickTime \t0x942fb95e NewMovieFromDataRef + 52\r\n13 com.yourcompany.openFrameworks\t0x0000aa2a createMovieFromURL(std::string, MovieType**&) + 112\r\n14 com.yourcompany.openFrameworks\t0x0000abe2 ofVideoPlayer::loadMovie(std::string) + 182\r\n15 com.yourcompany.openFrameworks\t0x0002fe03 appController::setup() + 2169\r\n16 com.yourcompany.openFrameworks\t0x00002864 ofRunApp(ofSimpleApp*) + 170\r\n17 com.yourcompany.openFrameworks\t0x0003dc06 main + 90\r\n18 com.yourcompany.openFrameworks\t0x00001da2 _start + 216\r\n19 com.yourcompany.openFrameworks\t0x00001cc9 start + 41","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/182","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":16,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":182,"assignee":null,"closed_at":null,"title":"ofVideoPlayer - createMovieFromURL broken in 10.6.3 with specific updates?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2010-04-15T16:20:25Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":172424,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/182"},{"updated_at":"2010-04-14T15:48:19Z","body":"can we add moments to the blob. \n\nadd CvMoments moments to blob class\n\nand in ofxCvContourFinder.cpp line 119\n\n\t blobs[i].moments.m00 = myMoments->m00;\n\t\tblobs[i].moments.m10 = myMoments->m10;\n\t\tblobs[i].moments.m01 = myMoments->m01;\n\t\tblobs[i].moments.m20 = myMoments->m20;\n\t\tblobs[i].moments.m11 = myMoments->m11;\n\t\tblobs[i].moments.m02 = myMoments->m02;\n\t\tblobs[i].moments.m30 = myMoments->m30;\n\t\tblobs[i].moments.m21 = myMoments->m21;\n\t\tblobs[i].moments.m12 = myMoments->m12;\n\t\tblobs[i].moments.m03 = myMoments->m03;\n\t\t\n\t\tblobs[i].moments.mu20 = myMoments->mu20;\n\t\tblobs[i].moments.mu11 = myMoments->mu11;\n\t\tblobs[i].moments.mu02 = myMoments->mu02;\n\t\tblobs[i].moments.mu30 = myMoments->mu30;\n\t\tblobs[i].moments.mu21 = myMoments->mu21;\n\t\tblobs[i].moments.mu12 = myMoments->mu12;\n\t\tblobs[i].moments.mu03 = myMoments->mu03;\n\n\nthis is good for finding the angle and other info about the contour.\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/181","comments":2,"milestone":null,"number":181,"assignee":null,"closed_at":null,"title":"ofxCvBlobs","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2010-04-14T15:42:22Z","state":"open","user":{"url":"https://api.github.com/users/vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","id":149997},"id":171615,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/181"},{"updated_at":"2011-12-02T15:44:06Z","body":"Buffer is 512 but should be 276 ( or something )\r\nSetting it to 256 says the buffer size should be 176 ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/178","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":16,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":178,"assignee":null,"closed_at":null,"title":"iPhone sound bug with 1st gen ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2010-04-11T10:18:58Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":169176,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/178"},{"updated_at":"2011-12-02T19:18:14Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/175","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":16,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":175,"assignee":null,"closed_at":null,"title":"bring examples up to date - make sexy","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"}],"created_at":"2010-04-06T19:44:04Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166214,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/175"},{"updated_at":"2011-12-02T19:14:03Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/174","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":16,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":174,"assignee":null,"closed_at":null,"title":"vertical sync on for mac by default","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2010-04-06T19:43:21Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166212,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/174"},{"updated_at":"2011-12-05T21:58:10Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/173","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":16,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":173,"assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"closed_at":null,"title":"ofAlphaBlending default on","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2010-04-06T19:42:34Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166211,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/173"}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=14 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4969'), ('content-length', '23083'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"f317f6e26c56743bf8ac8b747a73d3af"'), ('date', 'Tue, 29 May 2012 06:43:45 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-12-05T21:57:50Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/172","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":172,"assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"arturoc","id":48240},"closed_at":null,"title":"rgb + alpha -> blit to texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2010-04-06T19:40:28Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":166209,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/172"},{"updated_at":"2011-12-05T21:57:36Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/171","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":171,"assignee":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"closed_at":null,"title":"sexy shader example","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"}],"created_at":"2010-04-06T19:38:51Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":166208,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/171"},{"updated_at":"2012-03-03T19:40:33Z","body":"can we do it?\r\nwe need cross platform:\r\nplayback \r\nstreaming\r\npitch\r\npan \r\nmultiplay \r\n\r\nfor us to be compatible with what exists. \r\nOpenAL seems like the best choice.\r\nWhat other options are there?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/167","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","number":8,"title":"0080 Release","due_on":"2013-01-01T08:00:00Z","open_issues":3,"created_at":"2012-02-25T01:34:28Z","state":"open","description":"","id":88731,"closed_issues":0},"number":167,"assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"damiannz","id":144366},"closed_at":null,"title":"replace fmod","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"created_at":"2010-04-06T12:13:31Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":165898,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/167"},{"updated_at":"2011-12-05T21:56:41Z","body":"i have this working for 3d with selection buffer although it's meant to be slow i haven't had any problems","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/160","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":160,"assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"arturoc","id":48240},"closed_at":null,"title":"ofIsUnderMouse?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2010-04-05T21:39:19Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"arturoc","id":48240},"id":165537,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/160"},{"updated_at":"2011-12-05T21:54:57Z","body":"Theo: I have this code uses the selection buffer. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/153","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":153,"assignee":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"closed_at":null,"title":"ofIsOnScreen - ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2010-04-05T18:49:10Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":165409,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/153"},{"updated_at":"2012-02-29T11:13:10Z","body":"check out - http://www.openframeworks.cc/forum/viewtopic.php?p=19169#p19169\r\npossible integration into core. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/140","comments":4,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":140,"assignee":null,"closed_at":null,"title":"texture compression and mipmaps for of texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2010-04-02T19:43:00Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":163959,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/140"},{"updated_at":"2012-03-12T16:15:52Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=10&t=3319","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/128","comments":4,"milestone":null,"number":128,"assignee":null,"closed_at":null,"title":"ofxTCPServer doesn't manage connected clients correcly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2010-02-14T09:40:13Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"arturoc","id":48240},"id":132671,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/128"},{"updated_at":"2012-02-27T12:31:57Z","body":"Something that easily converts vector direction to openGL degrees?\r\nI find myself constantly trying to guess 270 - atan2(y, x)*RAD_TO_DEG ..... etc\r\nTo rotate something along a vector. \r\n\r\nMight be good to have it be aware of the GL world orientation - or have it so you pass in the up \r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/126","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":126,"assignee":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"closed_at":null,"title":"ofATan2GL / ofVecToGL ?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2010-02-13T14:22:51Z","state":"open","user":{"url":"https://api.github.com/users/openframeworks","gravatar_id":"a858611b044a8302ab14cfe752e17369","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"openframeworks","id":142866},"id":132377,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/126"},{"updated_at":"2012-04-22T15:51:57Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=7&t=3299&p=17852#p17852","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/124","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","number":6,"title":"0073 Release","due_on":"2012-07-30T07:00:00Z","open_issues":5,"created_at":"2011-12-03T15:37:49Z","state":"open","description":"","id":62090,"closed_issues":0},"number":124,"assignee":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"closed_at":null,"title":"TTF type rendering in OF - fix fuzziness ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography","color":"DDDDDD"}],"created_at":"2010-02-13T14:15:25Z","state":"open","user":{"url":"https://api.github.com/users/openframeworks","gravatar_id":"a858611b044a8302ab14cfe752e17369","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"openframeworks","id":142866},"id":132373,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/124"},{"updated_at":"2012-02-27T12:30:14Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=8&t=1374","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/121","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":121,"assignee":null,"closed_at":null,"title":"video: loop is not working unless you call play first","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"created_at":"2010-02-10T23:16:23Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"arturoc","id":48240},"id":130269,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/121"},{"updated_at":"2012-02-27T12:30:49Z","body":"it would make sense to have an opengl stress test app, that can test some basic about wether or not someone has ARB support, how fast their systems are, etc. I can imagine that for 0.07, we'll be helping people debug shaders and FBOs, having some way to gauge what kind of system they are on and what it can take, will be helpful. \r\n\r\nHere's a simple test app from the Lua-AV folks that looks like a reasonable system: \r\n\r\nhttp://img191.imageshack.us/img191/1659/picture3po.png","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/115","comments":0,"milestone":null,"number":115,"assignee":null,"closed_at":null,"title":"opengl stress test example","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2010-01-12T02:56:21Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":111018,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/115"},{"updated_at":"2012-02-28T14:02:04Z","body":"at the moment, we've got it like:\r\n\r\nofAppGlutWindow::ofAppGlutWindow(){\r\n\tfps\t\t\t\t= 60.0; //give a realistic starting value - win32 issues\r\n\tbFrameRateSet\t\t= false;\r\n}\r\n\r\nbut I personally prefer all apps to start with some kind of similar frame rate (ie, examples running really fast on mac, etc). see for example: \r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?p=16520&#p16520\r\n\r\nthis kind of thing leads to less \"cross-platform-ness\" and more confusion from beginners, no? \r\n\r\n- z\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/107","comments":8,"milestone":null,"number":107,"assignee":null,"closed_at":null,"title":"should we start all OF apps with a frame rate set?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2009-12-31T15:10:45Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":104702,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/107"},{"updated_at":"2011-09-27T15:47:45Z","body":"videoGrabber and serial listDevices should return a vector of strings apart from printing to console","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/91","comments":4,"milestone":null,"number":91,"assignee":null,"closed_at":null,"title":"listDevices should return a list of strings","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2009-12-09T17:11:40Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"arturoc","id":48240},"id":94898,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/91"}] + diff --git a/lib/github/tests/ReplayData/Issue50.setUp.txt b/lib/github/tests/ReplayData/Issue50.setUp.txt new file mode 100644 index 0000000000..9f732303e9 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue50.setUp.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4892'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('last-modified', 'Fri, 15 Jun 2012 15:37:06 GMT'), ('connection', 'keep-alive'), ('etag', '"41ade9c2e4794dd5214bb5f497af92cb"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 20:04:04 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"following":24,"created_at":"2010-07-09T06:10:06Z","type":"User","private_gists":5,"public_repos":11,"followers":13,"hireable":false,"html_url":"https://github.com/jacquev6","bio":"","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","disk_usage":16820,"blog":"http://vincent-jacques.net","location":"Paris, France","total_private_repos":5,"login":"jacquev6","owned_private_repos":5,"collaborators":0,"name":"Vincent Jacques","company":"Criteo","url":"https://api.github.com/users/jacquev6","plan":{"space":614400,"private_repos":5,"collaborators":1,"name":"micro"},"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146,"public_gists":3,"email":"vincent@vincent-jacques.net"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '1154'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4891'), ('server', 'nginx/1.0.13'), ('last-modified', 'Tue, 26 Jun 2012 12:30:06 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"eb3fdb98c65995892b016162b91ad68c"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 20:04:05 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"homepage":"http://vincent-jacques.net/PyGithub","owner":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146},"open_issues":12,"mirror_url":null,"git_url":"git://github.com/jacquev6/PyGithub.git","permissions":{"push":true,"admin":true,"pull":true},"description":"Python library implementing the full Github API v3","master_branch":"master","has_issues":true,"svn_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub","has_downloads":true,"size":184,"fork":false,"created_at":"2012-02-25T12:53:47Z","html_url":"https://github.com/jacquev6/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","language":"Python","clone_url":"https://github.com/jacquev6/PyGithub.git","private":false,"pushed_at":"2012-06-20T21:03:27Z","id":3544490,"forks":5,"has_wiki":false,"watchers":29,"ssh_url":"git@github.com:jacquev6/PyGithub.git","updated_at":"2012-06-26T12:30:06Z"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/50 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '2169'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4890'), ('server', 'nginx/1.0.13'), ('last-modified', 'Wed, 27 Jun 2012 22:46:10 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"bb61450865a934ca7ee53d6dde588876"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 20:04:05 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"labels":[{"color":"e10c02","name":"Bug","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug"},{"color":"ffff00","name":"Label with spaces and strange characters (&*#$)","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29"},{"color":"e10c02","name":"RequestedByUser","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/RequestedByUser"}],"body":null,"state":"open","closed_at":null,"assignee":{"login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"comments":2,"title":"[Issue] Replace label _identity with name","created_at":"2012-06-25T18:45:05Z","number":50,"milestone":{"open_issues":3,"state":"open","due_on":"2012-07-01T07:00:00Z","description":"","creator":{"login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_issues":0,"title":"Version 1.2","created_at":"2012-06-25T19:31:02Z","number":6,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/6","id":136827},"html_url":"https://github.com/jacquev6/PyGithub/issues/50","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/50","closed_by":null,"user":{"login":"philipkimmey","gravatar_id":"6baf93a46e584369e1ea64bc1aca62f4","url":"https://api.github.com/users/philipkimmey","avatar_url":"https://secure.gravatar.com/avatar/6baf93a46e584369e1ea64bc1aca62f4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":211079},"id":5256315,"pull_request":{"diff_url":"https://github.com/jacquev6/PyGithub/pull/50.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/50.patch","html_url":"https://github.com/jacquev6/PyGithub/pull/50"},"updated_at":"2012-06-25T19:33:48Z"} + diff --git a/lib/github/tests/ReplayData/Issue50.testAddLabelToIssue.txt b/lib/github/tests/ReplayData/Issue50.testAddLabelToIssue.txt new file mode 100644 index 0000000000..5cff00a931 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue50.testAddLabelToIssue.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/labels/Label%20with%20spaces%20and%20strange%20characters%20%28%26%2A%23%24%29 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '197'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4918'), ('server', 'nginx/1.0.13'), ('last-modified', 'Thu, 28 Jun 2012 19:29:52 GMT'), ('connection', 'keep-alive'), ('etag', '"c536d81e7479c8c9acfa7deeddeb6e72"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 19:54:44 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"color":"ffff00","name":"Label with spaces and strange characters (&*#$)","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29"} + +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/issues/50/labels +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +["Label with spaces and strange characters (&*#$)"] +200 +[('status', '200 OK'), ('content-length', '419'), ('x-ratelimit-limit', '5000'), ('x-ratelimit-remaining', '4917'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('etag', '"e1d0a1c54608a676af0cdc1f63e04da7"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Thu, 28 Jun 2012 19:54:44 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"color":"e10c02","name":"Bug","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug"},{"color":"ffff00","name":"Label with spaces and strange characters (&*#$)","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29"},{"color":"e10c02","name":"RequestedByUser","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/RequestedByUser"}] + diff --git a/lib/github/tests/ReplayData/Issue50.testCreateIssueWithLabel.txt b/lib/github/tests/ReplayData/Issue50.testCreateIssueWithLabel.txt new file mode 100644 index 0000000000..62edb57f90 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue50.testCreateIssueWithLabel.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/labels/Label%20with%20spaces%20and%20strange%20characters%20%28%26%2A%23%24%29 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '197'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4908'), ('server', 'nginx/1.0.13'), ('last-modified', 'Thu, 28 Jun 2012 19:29:52 GMT'), ('connection', 'keep-alive'), ('etag', '"c536d81e7479c8c9acfa7deeddeb6e72"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 19:56:20 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"color":"ffff00","name":"Label with spaces and strange characters (&*#$)","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29"} + +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/issues +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"labels": ["Label with spaces and strange characters (&*#$)"], "title": "Issue created by PyGithub to test issue #50"} +201 +[('status', '201 Created'), ('content-length', '963'), ('x-ratelimit-limit', '5000'), ('x-ratelimit-remaining', '4907'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('etag', '"e1e5db9ef97e084a3d36ede8dc41c0d9"'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/issues/52'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Thu, 28 Jun 2012 19:56:21 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"labels":[{"color":"ffff00","name":"Label with spaces and strange characters (&*#$)","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29"}],"body":null,"state":"open","closed_at":null,"assignee":null,"comments":0,"title":"Issue created by PyGithub to test issue #50","created_at":"2012-06-28T19:56:21Z","number":52,"milestone":null,"html_url":"https://github.com/jacquev6/PyGithub/issues/52","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/52","closed_by":null,"user":{"login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146},"id":5330629,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"updated_at":"2012-06-28T19:56:21Z"} + diff --git a/lib/github/tests/ReplayData/Issue50.testCreateLabel.txt b/lib/github/tests/ReplayData/Issue50.testCreateLabel.txt new file mode 100644 index 0000000000..01b235a1c7 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue50.testCreateLabel.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/labels +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"color": "ffff00", "name": "Label with spaces and strange characters (&*#$)"} +201 +[('status', '201 Created'), ('content-length', '197'), ('etag', '"99cbb3bf0f7ee7d6278c2ddd3ef42577"'), ('x-ratelimit-remaining', '4968'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Thu, 28 Jun 2012 19:29:52 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"color":"ffff00","name":"Label with spaces and strange characters (&*#$)","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29"} + diff --git a/lib/github/tests/ReplayData/Issue50.testGetIssuesWithLabel.txt b/lib/github/tests/ReplayData/Issue50.testGetIssuesWithLabel.txt new file mode 100644 index 0000000000..3d4f4c70b3 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue50.testGetIssuesWithLabel.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/labels/Label%20with%20spaces%20and%20strange%20characters%20%28%26%2A%23%24%29 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4894'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '197'), ('server', 'nginx/1.0.13'), ('last-modified', 'Thu, 28 Jun 2012 19:29:52 GMT'), ('connection', 'keep-alive'), ('etag', '"c536d81e7479c8c9acfa7deeddeb6e72"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 20:03:09 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"color":"ffff00","name":"Label with spaces and strange characters (&*#$)","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues?labels=Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '3101'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4893'), ('server', 'nginx/1.0.13'), ('last-modified', 'Thu, 28 Jun 2012 19:56:21 GMT'), ('connection', 'keep-alive'), ('etag', '"60a85542a2e824eb5fc96c5a99657fff"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 20:03:10 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"labels":[{"color":"ffff00","name":"Label with spaces and strange characters (&*#$)","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29"}],"body":null,"state":"open","closed_at":null,"assignee":null,"comments":0,"title":"Issue created by PyGithub to test issue #50","created_at":"2012-06-28T19:56:21Z","number":52,"milestone":null,"html_url":"https://github.com/jacquev6/PyGithub/issues/52","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/52","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146},"id":5330629,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"updated_at":"2012-06-28T19:56:21Z"},{"labels":[{"color":"e10c02","name":"Bug","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug"},{"color":"e10c02","name":"RequestedByUser","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/RequestedByUser"},{"color":"ffff00","name":"Label with spaces and strange characters (&*#$)","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29"}],"body":null,"state":"open","closed_at":null,"assignee":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146},"comments":2,"title":"[Issue] Replace label _identity with name","created_at":"2012-06-25T18:45:05Z","number":50,"milestone":{"open_issues":3,"state":"open","due_on":"2012-07-01T07:00:00Z","description":"","creator":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146},"closed_issues":0,"title":"Version 1.2","created_at":"2012-06-25T19:31:02Z","number":6,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/6","id":136827},"html_url":"https://github.com/jacquev6/PyGithub/issues/50","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/50","user":{"avatar_url":"https://secure.gravatar.com/avatar/6baf93a46e584369e1ea64bc1aca62f4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"philipkimmey","gravatar_id":"6baf93a46e584369e1ea64bc1aca62f4","url":"https://api.github.com/users/philipkimmey","id":211079},"id":5256315,"pull_request":{"diff_url":"https://github.com/jacquev6/PyGithub/pull/50.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/50.patch","html_url":"https://github.com/jacquev6/PyGithub/pull/50"},"updated_at":"2012-06-25T19:33:48Z"}] + diff --git a/lib/github/tests/ReplayData/Issue50.testGetLabel.txt b/lib/github/tests/ReplayData/Issue50.testGetLabel.txt new file mode 100644 index 0000000000..b5f39d242a --- /dev/null +++ b/lib/github/tests/ReplayData/Issue50.testGetLabel.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/labels/Label%20with%20spaces%20and%20strange%20characters%20%28%26%2A%23%24%29 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '197'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4964'), ('server', 'nginx/1.0.13'), ('last-modified', 'Thu, 28 Jun 2012 19:29:52 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"c536d81e7479c8c9acfa7deeddeb6e72"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 19:32:14 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"color":"ffff00","name":"Label with spaces and strange characters (&*#$)","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29"} + diff --git a/lib/github/tests/ReplayData/Issue50.testGetLabels.txt b/lib/github/tests/ReplayData/Issue50.testGetLabels.txt new file mode 100644 index 0000000000..2c20d6c94a --- /dev/null +++ b/lib/github/tests/ReplayData/Issue50.testGetLabels.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/labels +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '1015'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4953'), ('server', 'nginx/1.0.13'), ('last-modified', 'Thu, 28 Jun 2012 19:29:52 GMT'), ('connection', 'keep-alive'), ('etag', '"c536d81e7479c8c9acfa7deeddeb6e72"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 19:36:59 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"color":"0b02e1","name":"Refactoring","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Refactoring"},{"color":"d7e102","name":"Public interface","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface"},{"color":"e102d8","name":"Functionalities","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities"},{"color":"444444","name":"Project management","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management"},{"color":"e10c02","name":"Bug","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug"},{"color":"02e10c","name":"Question","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question"},{"color":"e10c02","name":"RequestedByUser","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/RequestedByUser"},{"color":"ffff00","name":"Label with spaces and strange characters (&*#$)","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29"}] + diff --git a/lib/github/tests/ReplayData/Issue50.testIssueGetLabels.txt b/lib/github/tests/ReplayData/Issue50.testIssueGetLabels.txt new file mode 100644 index 0000000000..dab3552dfd --- /dev/null +++ b/lib/github/tests/ReplayData/Issue50.testIssueGetLabels.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/50/labels +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4903'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '419'), ('server', 'nginx/1.0.13'), ('last-modified', 'Thu, 28 Jun 2012 19:29:52 GMT'), ('connection', 'keep-alive'), ('etag', '"c536d81e7479c8c9acfa7deeddeb6e72"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 19:57:21 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"color":"e10c02","name":"Bug","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug"},{"color":"ffff00","name":"Label with spaces and strange characters (&*#$)","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29"},{"color":"e10c02","name":"RequestedByUser","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/RequestedByUser"}] + diff --git a/lib/github/tests/ReplayData/Issue50.testRemoveLabelFromIssue.txt b/lib/github/tests/ReplayData/Issue50.testRemoveLabelFromIssue.txt new file mode 100644 index 0000000000..d95e3baed3 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue50.testRemoveLabelFromIssue.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/labels/Label%20with%20spaces%20and%20strange%20characters%20%28%26%2A%23%24%29 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '197'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4937'), ('server', 'nginx/1.0.13'), ('last-modified', 'Thu, 28 Jun 2012 19:29:52 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"c536d81e7479c8c9acfa7deeddeb6e72"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 19:43:02 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"color":"ffff00","name":"Label with spaces and strange characters (&*#$)","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29"} + +https +DELETE +api.github.com +None +/repos/jacquev6/PyGithub/issues/50/labels/Label%20with%20spaces%20and%20strange%20characters%20%28%26%2A%23%24%29 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '221'), ('x-ratelimit-limit', '5000'), ('x-ratelimit-remaining', '4936'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('etag', '"f52869e02750b4a36166ec2d23c2f471"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Thu, 28 Jun 2012 19:43:02 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"color":"e10c02","name":"Bug","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug"},{"color":"e10c02","name":"RequestedByUser","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/RequestedByUser"}] + diff --git a/lib/github/tests/ReplayData/Issue50.testSetIssueLabels.txt b/lib/github/tests/ReplayData/Issue50.testSetIssueLabels.txt new file mode 100644 index 0000000000..3d26675005 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue50.testSetIssueLabels.txt @@ -0,0 +1,44 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/labels/Bug +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '97'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4889'), ('server', 'nginx/1.0.13'), ('last-modified', 'Sat, 20 Oct 2007 11:24:19 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"147027ac86c95043e935b318f88c3683"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 20:04:06 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"color":"e10c02","name":"Bug","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/labels/RequestedByUser +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '121'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4888'), ('server', 'nginx/1.0.13'), ('last-modified', 'Sat, 20 Oct 2007 11:24:19 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"147027ac86c95043e935b318f88c3683"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 20:04:06 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"color":"e10c02","name":"RequestedByUser","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/RequestedByUser"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/labels/Label%20with%20spaces%20and%20strange%20characters%20%28%26%2A%23%24%29 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4887'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '197'), ('server', 'nginx/1.0.13'), ('last-modified', 'Thu, 28 Jun 2012 19:29:52 GMT'), ('connection', 'keep-alive'), ('etag', '"c536d81e7479c8c9acfa7deeddeb6e72"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 20:04:07 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"color":"ffff00","name":"Label with spaces and strange characters (&*#$)","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29"} + +https +PUT +api.github.com +None +/repos/jacquev6/PyGithub/issues/50/labels +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +["Bug", "RequestedByUser", "Label with spaces and strange characters (&*#$)"] +200 +[('status', '200 OK'), ('content-length', '419'), ('x-ratelimit-limit', '5000'), ('x-ratelimit-remaining', '4886'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('etag', '"e1d0a1c54608a676af0cdc1f63e04da7"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Thu, 28 Jun 2012 20:04:08 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"color":"e10c02","name":"Bug","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug"},{"color":"ffff00","name":"Label with spaces and strange characters (&*#$)","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29"},{"color":"e10c02","name":"RequestedByUser","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/RequestedByUser"}] + diff --git a/lib/github/tests/ReplayData/Issue54.setUp.txt b/lib/github/tests/ReplayData/Issue54.setUp.txt new file mode 100644 index 0000000000..2e9cca2728 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue54.setUp.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '801'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4986'), ('server', 'nginx/1.0.13'), ('last-modified', 'Mon, 09 Jul 2012 06:49:53 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"1bd2b9dfc8ba65f7665102d6245a1593"'), ('cache-control', 'private, max-age=60'), ('date', 'Fri, 13 Jul 2012 19:06:43 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"html_url":"https://github.com/jacquev6","type":"User","email":"vincent@vincent-jacques.net","created_at":"2010-07-09T06:10:06Z","collaborators":0,"followers":13,"company":"Criteo","plan":{"collaborators":1,"space":614400,"private_repos":5,"name":"micro"},"hireable":false,"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","disk_usage":16468,"blog":"http://vincent-jacques.net","bio":"","public_gists":3,"total_private_repos":3,"public_repos":12,"private_gists":5,"name":"Vincent Jacques","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","owned_private_repos":3,"following":26,"location":"Paris, France","id":327146,"login":"jacquev6","url":"https://api.github.com/users/jacquev6"} + +https +GET +api.github.com +None +/repos/jacquev6/TestRepo +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4985'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '1172'), ('server', 'nginx/1.0.13'), ('last-modified', 'Fri, 13 Jul 2012 18:48:49 GMT'), ('connection', 'keep-alive'), ('etag', '"385e2f22f9b54b1d56fc731de0d5c9bc"'), ('cache-control', 'private, max-age=60'), ('date', 'Fri, 13 Jul 2012 19:06:44 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"permissions":{"push":true,"admin":true,"pull":true},"open_issues":0,"clone_url":"https://github.com/jacquev6/TestRepo.git","ssh_url":"git@github.com:jacquev6/TestRepo.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146,"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225"},"description":"Test repository created around Fri, 13 Jul 2012 18:43:21 GMT, that is vendredi 13 juillet 2012 20:43:21 GMT+2","master_branch":"master","mirror_url":null,"has_issues":true,"html_url":"https://github.com/jacquev6/TestRepo","pushed_at":"2012-07-13T18:47:21Z","forks":1,"has_downloads":true,"created_at":"2012-07-13T18:45:21Z","full_name":"jacquev6/TestRepo","language":null,"size":96,"fork":false,"svn_url":"https://github.com/jacquev6/TestRepo","has_wiki":true,"watchers":1,"updated_at":"2012-07-13T18:48:49Z","name":"TestRepo","git_url":"git://github.com/jacquev6/TestRepo.git","private":false,"id":5023526,"homepage":null,"url":"https://api.github.com/repos/jacquev6/TestRepo"} + diff --git a/lib/github/tests/ReplayData/Issue54.testConversion.txt b/lib/github/tests/ReplayData/Issue54.testConversion.txt new file mode 100644 index 0000000000..979ec564a9 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue54.testConversion.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/TestRepo/git/commits/73f320ae06cd565cf38faca34b6a482addfc721b +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '676'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4984'), ('server', 'nginx/1.0.13'), ('last-modified', 'Fri, 13 Jul 2012 18:47:10 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"ab832024b149674b5210a1a3b146575c"'), ('cache-control', 'private, max-age=60'), ('date', 'Fri, 13 Jul 2012 19:06:44 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"committer":{"email":"vincent@vincent-jacques.net","date":"2012-07-13T11:47:10-07:00","name":"Vincent Jacques"},"message":"Test commit created around Fri, 13 Jul 2012 18:43:21 GMT, that is vendredi 13 juillet 2012 20:43:21 GMT+2\n","sha":"73f320ae06cd565cf38faca34b6a482addfc721b","tree":{"sha":"52fe1ba4ac2b979c0a8fbeb9f87c1b1c9f177520","url":"https://api.github.com/repos/jacquev6/TestRepo/git/trees/52fe1ba4ac2b979c0a8fbeb9f87c1b1c9f177520"},"author":{"email":"vincent@vincent-jacques.net","date":"2012-07-13T11:47:10-07:00","name":"Vincent Jacques"},"parents":[],"url":"https://api.github.com/repos/jacquev6/TestRepo/git/commits/73f320ae06cd565cf38faca34b6a482addfc721b"} + diff --git a/lib/github/tests/ReplayData/Issue80.testIgnoreHttpsFromGithubEnterprise.txt b/lib/github/tests/ReplayData/Issue80.testIgnoreHttpsFromGithubEnterprise.txt new file mode 100644 index 0000000000..0d3f6a72e3 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue80.testIgnoreHttpsFromGithubEnterprise.txt @@ -0,0 +1,22 @@ +http +GET +my.enterprise.com +None +/some/prefix/orgs/BeaverSoftware +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4997'), ('content-length', '716'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"bd349122929faf5f9be3e53d9ad41d08"'), ('date', 'Fri, 11 May 2012 09:07:56 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"Organization","url":"https://my.enterprise.com/some/prefix/orgs/BeaverSoftware","billing_email":"BeaverSoftware@vincent-jacques.net","disk_usage":112,"plan":{"private_repos":0,"space":307200,"name":"free"},"html_url":"https://github.com/BeaverSoftware","blog":null,"login":"BeaverSoftware","public_gists":0,"email":null,"avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","total_private_repos":0,"private_gists":0,"collaborators":0,"created_at":"2012-02-09T19:20:12Z","company":null,"location":"Paris, France","followers":0,"following":0,"name":null,"owned_private_repos":0,"id":1424031,"public_repos":2} + +http +GET +my.enterprise.com +None +/some/prefix/orgs/BeaverSoftware/repos +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4978'), ('content-length', '2300'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"56a6b76672924aa7f1d6f1753388f04b"'), ('date', 'Sun, 27 May 2012 05:12:35 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"clone_url":"https://github.com/BeaverSoftware/FatherBeaver.git","has_downloads":true,"watchers":2,"git_url":"git://github.com/BeaverSoftware/FatherBeaver.git","updated_at":"2012-02-16T21:51:15Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://my.enterprise.com/some/prefix/repos/BeaverSoftware/FatherBeaver","has_wiki":true,"has_issues":true,"fork":false,"forks":1,"mirror_url":null,"size":0,"private":false,"open_issues":0,"svn_url":"https://github.com/BeaverSoftware/FatherBeaver","owner":{"url":"https://my.enterprise.com/some/prefix/users/BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031,"avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"name":"FatherBeaver","language":null,"description":"","ssh_url":"git@github.com:BeaverSoftware/FatherBeaver.git","pushed_at":null,"created_at":"2012-02-09T19:32:21Z","id":3400397,"html_url":"https://github.com/BeaverSoftware/FatherBeaver","full_name":"BeaverSoftware/FatherBeaver"},{"clone_url":"https://github.com/BeaverSoftware/TestPyGithub.git","has_downloads":true,"watchers":1,"git_url":"git://github.com/BeaverSoftware/TestPyGithub.git","updated_at":"2012-04-25T06:51:38Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://my.enterprise.com/some/prefix/repos/BeaverSoftware/TestPyGithub","has_wiki":true,"has_issues":false,"fork":false,"forks":0,"mirror_url":null,"size":112,"private":false,"open_issues":0,"svn_url":"https://github.com/BeaverSoftware/TestPyGithub","owner":{"url":"https://my.enterprise.com/some/prefix/users/BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031,"avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"name":"TestPyGithub","language":null,"description":"Guinea-pig for PyGithub testing","ssh_url":"git@github.com:BeaverSoftware/TestPyGithub.git","pushed_at":"2012-03-03T08:57:40Z","created_at":"2012-03-03T07:53:19Z","id":3609352,"html_url":"https://github.com/BeaverSoftware/TestPyGithub","full_name":"BeaverSoftware/TestPyGithub"}] + diff --git a/lib/github/tests/ReplayData/Issue80.testIgnoreHttpsFromGithubEnterpriseWithPort.txt b/lib/github/tests/ReplayData/Issue80.testIgnoreHttpsFromGithubEnterpriseWithPort.txt new file mode 100644 index 0000000000..56035b58f0 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue80.testIgnoreHttpsFromGithubEnterpriseWithPort.txt @@ -0,0 +1,22 @@ +http +GET +my.enterprise.com +1234 +/some/prefix/orgs/BeaverSoftware +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4997'), ('content-length', '716'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"bd349122929faf5f9be3e53d9ad41d08"'), ('date', 'Fri, 11 May 2012 09:07:56 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"Organization","url":"https://my.enterprise.com:1234/some/prefix/orgs/BeaverSoftware","billing_email":"BeaverSoftware@vincent-jacques.net","disk_usage":112,"plan":{"private_repos":0,"space":307200,"name":"free"},"html_url":"https://github.com/BeaverSoftware","blog":null,"login":"BeaverSoftware","public_gists":0,"email":null,"avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","total_private_repos":0,"private_gists":0,"collaborators":0,"created_at":"2012-02-09T19:20:12Z","company":null,"location":"Paris, France","followers":0,"following":0,"name":null,"owned_private_repos":0,"id":1424031,"public_repos":2} + +http +GET +my.enterprise.com +1234 +/some/prefix/orgs/BeaverSoftware/repos +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4978'), ('content-length', '2300'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"56a6b76672924aa7f1d6f1753388f04b"'), ('date', 'Sun, 27 May 2012 05:12:35 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"clone_url":"https://github.com/BeaverSoftware/FatherBeaver.git","has_downloads":true,"watchers":2,"git_url":"git://github.com/BeaverSoftware/FatherBeaver.git","updated_at":"2012-02-16T21:51:15Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://my.enterprise.com:1234/some/prefix/repos/BeaverSoftware/FatherBeaver","has_wiki":true,"has_issues":true,"fork":false,"forks":1,"mirror_url":null,"size":0,"private":false,"open_issues":0,"svn_url":"https://github.com/BeaverSoftware/FatherBeaver","owner":{"url":"https://my.enterprise.com:1234/some/prefix/users/BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031,"avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"name":"FatherBeaver","language":null,"description":"","ssh_url":"git@github.com:BeaverSoftware/FatherBeaver.git","pushed_at":null,"created_at":"2012-02-09T19:32:21Z","id":3400397,"html_url":"https://github.com/BeaverSoftware/FatherBeaver","full_name":"BeaverSoftware/FatherBeaver"},{"clone_url":"https://github.com/BeaverSoftware/TestPyGithub.git","has_downloads":true,"watchers":1,"git_url":"git://github.com/BeaverSoftware/TestPyGithub.git","updated_at":"2012-04-25T06:51:38Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://my.enterprise.com:1234/some/prefix/repos/BeaverSoftware/TestPyGithub","has_wiki":true,"has_issues":false,"fork":false,"forks":0,"mirror_url":null,"size":112,"private":false,"open_issues":0,"svn_url":"https://github.com/BeaverSoftware/TestPyGithub","owner":{"url":"https://my.enterprise.com:1234/some/prefix/users/BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031,"avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"name":"TestPyGithub","language":null,"description":"Guinea-pig for PyGithub testing","ssh_url":"git@github.com:BeaverSoftware/TestPyGithub.git","pushed_at":"2012-03-03T08:57:40Z","created_at":"2012-03-03T07:53:19Z","id":3609352,"html_url":"https://github.com/BeaverSoftware/TestPyGithub","full_name":"BeaverSoftware/TestPyGithub"}] + diff --git a/lib/github/tests/ReplayData/Issue87.setUp.txt b/lib/github/tests/ReplayData/Issue87.setUp.txt new file mode 100644 index 0000000000..477b73bfa2 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue87.setUp.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '806'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4703'), ('server', 'nginx'), ('last-modified', 'Tue, 25 Sep 2012 07:42:42 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"e199a6b2e012ed6ffb1e6a935f4ba856"'), ('cache-control', 'private, s-maxage=60, max-age=60'), ('date', 'Tue, 25 Sep 2012 19:50:45 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","blog":"http://vincent-jacques.net","public_gists":3,"html_url":"https://github.com/jacquev6","login":"jacquev6","followers":14,"company":"Criteo","hireable":false,"private_gists":5,"plan":{"space":614400,"private_repos":5,"name":"micro","collaborators":1},"created_at":"2010-07-09T06:10:06Z","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","email":"vincent@vincent-jacques.net","bio":"","disk_usage":18788,"public_repos":13,"total_private_repos":4,"following":29,"name":"Vincent Jacques","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","owned_private_repos":4,"collaborators":1,"id":327146,"location":"Paris, France","url":"https://api.github.com/users/jacquev6"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '1238'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4702'), ('server', 'nginx'), ('last-modified', 'Mon, 24 Sep 2012 18:51:20 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d0aaa41da0d7452a0dad489a3a4fcd35"'), ('cache-control', 'private, s-maxage=60, max-age=60'), ('date', 'Tue, 25 Sep 2012 19:50:46 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"open_issues":16,"mirror_url":null,"has_issues":true,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","owner":{"login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146,"url":"https://api.github.com/users/jacquev6"},"html_url":"https://github.com/jacquev6/PyGithub","master_branch":"master","description":"Python library implementing the full Github API v3","forks_count":20,"has_downloads":true,"created_at":"2012-02-25T12:53:47Z","svn_url":"https://github.com/jacquev6/PyGithub","git_url":"git://github.com/jacquev6/PyGithub.git","network_count":20,"watchers_count":79,"size":408,"fork":false,"ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-09-17T19:28:28Z","forks":20,"has_wiki":true,"name":"PyGithub","permissions":{"pull":true,"admin":true,"push":true},"watchers":79,"open_issues_count":16,"clone_url":"https://github.com/jacquev6/PyGithub.git","private":false,"updated_at":"2012-09-24T18:51:20Z","full_name":"jacquev6/PyGithub","id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub"} + diff --git a/lib/github/tests/ReplayData/Issue87.testCreateIssueWithEscapedPercentInBody.txt b/lib/github/tests/ReplayData/Issue87.testCreateIssueWithEscapedPercentInBody.txt new file mode 100644 index 0000000000..cc58a4b584 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue87.testCreateIssueWithEscapedPercentInBody.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/issues +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"body": "Escaped percent %25 in body", "title": "Issue created by PyGithub"} +201 +[('status', '201 Created'), ('content-length', '778'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('etag', '"5b11ec85aeed655554b5e7b977975ea0"'), ('x-ratelimit-remaining', '4710'), ('server', 'nginx'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/issues/96'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Tue, 25 Sep 2012 19:50:41 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"closed_by":null,"created_at":"2012-09-25T19:50:41Z","comments":0,"title":"Issue created by PyGithub","state":"open","assignee":null,"number":96,"updated_at":"2012-09-25T19:50:41Z","html_url":"https://github.com/jacquev6/PyGithub/issues/96","milestone":null,"body":"Escaped percent %25 in body","labels":[],"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","id":327146,"login":"jacquev6","url":"https://api.github.com/users/jacquev6"},"pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"closed_at":null,"id":7132212,"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/96"} + diff --git a/lib/github/tests/ReplayData/Issue87.testCreateIssueWithEscapedPercentInTitle.txt b/lib/github/tests/ReplayData/Issue87.testCreateIssueWithEscapedPercentInTitle.txt new file mode 100644 index 0000000000..45223a76d7 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue87.testCreateIssueWithEscapedPercentInTitle.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/issues +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"title": "Issue with escaped percent %25 in title created by PyGithub"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4707'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('etag', '"50db679c69dac05fd00490516c95521a"'), ('content-length', '787'), ('server', 'nginx'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/issues/97'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Tue, 25 Sep 2012 19:50:43 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"body":null,"assignee":null,"labels":[],"user":{"login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146,"url":"https://api.github.com/users/jacquev6"},"html_url":"https://github.com/jacquev6/PyGithub/issues/97","milestone":null,"created_at":"2012-09-25T19:50:43Z","comments":0,"title":"Issue with escaped percent %25 in title created by PyGithub","pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"closed_at":null,"state":"open","closed_by":null,"number":97,"updated_at":"2012-09-25T19:50:43Z","id":7132216,"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/97"} + diff --git a/lib/github/tests/ReplayData/Issue87.testCreateIssueWithPercentInBody.txt b/lib/github/tests/ReplayData/Issue87.testCreateIssueWithPercentInBody.txt new file mode 100644 index 0000000000..d572a1a441 --- /dev/null +++ b/lib/github/tests/ReplayData/Issue87.testCreateIssueWithPercentInBody.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/issues +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"body": "Percent % in body", "title": "Issue created by PyGithub"} +201 +[('status', '201 Created'), ('content-length', '768'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-remaining', '4704'), ('server', 'nginx'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/issues/98'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Tue, 25 Sep 2012 19:50:45 GMT'), ('etag', '"41fe20e6fee4a38d4b11589129459e15"'), ('content-type', 'application/json; charset=utf-8')] +{"body":"Percent % in body","assignee":null,"labels":[],"user":{"login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146,"url":"https://api.github.com/users/jacquev6"},"html_url":"https://github.com/jacquev6/PyGithub/issues/98","milestone":null,"created_at":"2012-09-25T19:50:45Z","comments":0,"title":"Issue created by PyGithub","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"closed_at":null,"state":"open","closed_by":null,"number":98,"updated_at":"2012-09-25T19:50:45Z","id":7132217,"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/98"} + diff --git a/lib/github/tests/ReplayData/Issue87.testCreateIssueWithPercentInTitle.txt b/lib/github/tests/ReplayData/Issue87.testCreateIssueWithPercentInTitle.txt new file mode 100644 index 0000000000..afc82d8bea --- /dev/null +++ b/lib/github/tests/ReplayData/Issue87.testCreateIssueWithPercentInTitle.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/issues +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"title": "Issue with percent % in title created by PyGithub"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4701'), ('x-ratelimit-limit', '5000'), ('x-content-type-options', 'nosniff'), ('content-length', '777'), ('server', 'nginx'), ('connection', 'keep-alive'), ('etag', '"4f8b2cd3aecb26240538f54c3e4ff8f6"'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/issues/99'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Tue, 25 Sep 2012 19:50:46 GMT'), ('x-github-media-type', 'github.beta; format=json'), ('content-type', 'application/json; charset=utf-8')] +{"body":null,"assignee":null,"labels":[],"user":{"login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146,"url":"https://api.github.com/users/jacquev6"},"closed_at":null,"milestone":null,"created_at":"2012-09-25T19:50:46Z","comments":0,"closed_by":null,"title":"Issue with percent % in title created by PyGithub","pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"state":"open","number":99,"updated_at":"2012-09-25T19:50:46Z","id":7132221,"html_url":"https://github.com/jacquev6/PyGithub/issues/99","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/99"} + diff --git a/lib/github/tests/ReplayData/IssueComment.setUp.txt b/lib/github/tests/ReplayData/IssueComment.setUp.txt new file mode 100644 index 0000000000..015629144a --- /dev/null +++ b/lib/github/tests/ReplayData/IssueComment.setUp.txt @@ -0,0 +1,44 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4993'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"9459b6e1e4805aad5e10d13344d6ffbf"'), ('date', 'Sat, 26 May 2012 14:59:39 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"public_repos":11,"type":"User","hireable":false,"disk_usage":17080,"blog":"http://vincent-jacques.net","bio":"","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","total_private_repos":5,"plan":{"private_repos":5,"collaborators":1,"name":"micro","space":614400},"owned_private_repos":5,"company":"Criteo","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","collaborators":0,"public_gists":3,"email":"vincent@vincent-jacques.net","followers":13,"name":"Vincent Jacques","private_gists":5,"created_at":"2010-07-09T06:10:06Z","location":"Paris, France","id":327146,"following":24,"html_url":"https://github.com/jacquev6"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4992'), ('content-length', '1129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"5dc65a168cf4d957347ea04221cd5102"'), ('date', 'Sat, 26 May 2012 14:59:39 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"clone_url":"https://github.com/jacquev6/PyGithub.git","has_downloads":true,"watchers":13,"updated_at":"2012-05-26T11:25:48Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","mirror_url":null,"has_wiki":false,"has_issues":true,"fork":false,"forks":2,"size":412,"private":false,"open_issues":15,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-26T11:25:48Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"git_url":"git://github.com/jacquev6/PyGithub.git","html_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/28 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4991'), ('content-length', '2258'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"071cb2b8bfef81f56b94d7d9397e6aa4"'), ('date', 'Sat, 26 May 2012 14:59:40 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"updated_at":"2012-05-26T14:59:33Z","body":"Body edited by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/28","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/1","number":1,"title":"Version 0.4","due_on":"2012-03-13T07:00:00Z","open_issues":0,"created_at":"2012-03-08T12:22:10Z","state":"closed","description":"","id":93546,"closed_issues":3},"number":28,"closed_by":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"closed_at":"2012-05-26T14:59:33Z","title":"Issue created by PyGithub","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}],"created_at":"2012-05-19T10:38:23Z","state":"closed","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4653757,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/28"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/comments/5808311 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4985'), ('content-length', '506'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"4fa1a8e8e534bcc93123ea6ee8fd4284"'), ('date', 'Sun, 20 May 2012 11:50:56 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"updated_at":"2012-05-20T11:46:42Z","body":"Comment created by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5808311","created_at":"2012-05-20T11:46:42Z","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":5808311,"html_url":"https://github.com/jacquev6/PyGithub/issues/28#issuecomment-5808311"} + diff --git a/lib/github/tests/ReplayData/IssueComment.testDelete.txt b/lib/github/tests/ReplayData/IssueComment.testDelete.txt new file mode 100644 index 0000000000..3415c0ab4a --- /dev/null +++ b/lib/github/tests/ReplayData/IssueComment.testDelete.txt @@ -0,0 +1,10 @@ +https +DELETE +api.github.com +None +/repos/jacquev6/PyGithub/issues/comments/5808311 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4975'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sun, 20 May 2012 11:57:12 GMT')] + diff --git a/lib/github/tests/ReplayData/IssueComment.testEdit.txt b/lib/github/tests/ReplayData/IssueComment.testEdit.txt new file mode 100644 index 0000000000..8c25c0f408 --- /dev/null +++ b/lib/github/tests/ReplayData/IssueComment.testEdit.txt @@ -0,0 +1,11 @@ +https +PATCH +api.github.com +None +/repos/jacquev6/PyGithub/issues/comments/5808311 +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"body": "Comment edited by PyGithub"} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4980'), ('content-length', '505'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"1599061186ef7ca2dbf5bdee1711746a"'), ('date', 'Sun, 20 May 2012 11:53:59 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"updated_at":"2012-05-20T11:53:59Z","body":"Comment edited by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5808311","created_at":"2012-05-20T11:46:42Z","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":5808311} + diff --git a/lib/github/tests/ReplayData/IssueEvent.setUp.txt b/lib/github/tests/ReplayData/IssueEvent.setUp.txt new file mode 100644 index 0000000000..694b9475ad --- /dev/null +++ b/lib/github/tests/ReplayData/IssueEvent.setUp.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4996'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"8974bb1628a3e3a6d3eb3b08c1b5a46b"'), ('date', 'Sun, 27 May 2012 07:32:54 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","bio":"","disk_usage":16976,"total_private_repos":5,"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","owned_private_repos":5,"collaborators":0,"plan":{"collaborators":1,"private_repos":5,"name":"micro","space":614400},"company":"Criteo","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","email":"vincent@vincent-jacques.net","public_gists":3,"followers":13,"name":"Vincent Jacques","created_at":"2010-07-09T06:10:06Z","blog":"http://vincent-jacques.net","location":"Paris, France","hireable":false,"id":327146,"private_gists":5,"public_repos":11,"following":24,"html_url":"https://github.com/jacquev6"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4995'), ('content-length', '1129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"f1e4eb3993a364b66b68ec9db42405bd"'), ('date', 'Sun, 27 May 2012 07:32:55 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"clone_url":"https://github.com/jacquev6/PyGithub.git","has_downloads":true,"watchers":15,"updated_at":"2012-05-27T07:29:24Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","mirror_url":null,"has_wiki":false,"has_issues":true,"fork":false,"forks":3,"git_url":"git://github.com/jacquev6/PyGithub.git","size":308,"private":false,"open_issues":16,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-27T07:29:24Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"html_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/events/16348656 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4994'), ('content-length', '1384'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"fefecab09e7355d4ef9875677c2631da"'), ('date', 'Sun, 27 May 2012 07:32:56 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/16348656","issue":{"updated_at":"2012-05-27T07:27:51Z","body":"Body created by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/30","comments":0,"milestone":null,"number":30,"assignee":null,"closed_at":null,"title":"Issue also created by PyGithub","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}],"created_at":"2012-05-27T05:40:15Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4769659,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/30"},"commit_id":"ed866fc43833802ab553e5ff8581c81bb00dd433","created_at":"2012-05-27T07:29:25Z","event":"referenced","id":16348656,"actor":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"}} + diff --git a/lib/github/tests/ReplayData/IssueEvent.testAttributes.txt b/lib/github/tests/ReplayData/IssueEvent.testAttributes.txt new file mode 100644 index 0000000000..683b3021da --- /dev/null +++ b/lib/github/tests/ReplayData/IssueEvent.testAttributes.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/events/15819975 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4986'), ('content-length', '2430'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"0c719d0498b6dd52dfa5a444e743397a"'), ('date', 'Sat, 26 May 2012 19:42:58 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/15819975","issue":{"updated_at":"2012-05-26T14:59:33Z","body":"Body edited by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/28","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/1","number":1,"title":"Version 0.4","due_on":"2012-03-13T07:00:00Z","open_issues":0,"created_at":"2012-03-08T12:22:10Z","state":"closed","closed_issues":3,"description":"","id":93546},"number":28,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-05-26T14:59:33Z","title":"Issue created by PyGithub","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}],"created_at":"2012-05-19T10:38:23Z","state":"closed","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":4653757,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/28"},"commit_id":null,"created_at":"2012-05-19T10:38:23Z","event":"subscribed","id":15819975,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}} + diff --git a/lib/github/tests/ReplayData/Label.setUp.txt b/lib/github/tests/ReplayData/Label.setUp.txt new file mode 100644 index 0000000000..f9f2a2228b --- /dev/null +++ b/lib/github/tests/ReplayData/Label.setUp.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4964'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"708be4e44b32b617fad893a7eb4aed93"'), ('date', 'Sat, 19 May 2012 10:17:52 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","public_gists":1,"company":"Criteo","blog":"http://vincent-jacques.net","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","total_private_repos":5,"private_gists":5,"collaborators":0,"plan":{"private_repos":5,"collaborators":1,"name":"micro","space":614400},"public_repos":11,"followers":13,"owned_private_repos":5,"hireable":false,"login":"jacquev6","email":"vincent@vincent-jacques.net","bio":"","disk_usage":16768,"html_url":"https://github.com/jacquev6","name":"Vincent Jacques","created_at":"2010-07-09T06:10:06Z","location":"Paris, France","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"following":24} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4963'), ('content-length', '1097'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"1da4fc53170e51b749ed7930a5fe947c"'), ('date', 'Sat, 19 May 2012 10:17:52 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"svn_url":"https://github.com/jacquev6/PyGithub","has_wiki":false,"has_issues":true,"updated_at":"2012-05-18T20:30:15Z","forks":2,"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","git_url":"git://github.com/jacquev6/PyGithub.git","open_issues":17,"fork":false,"ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-18T20:30:14Z","mirror_url":null,"size":220,"private":false,"has_downloads":true,"watchers":13,"html_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"name":"PyGithub","permissions":{"pull":true,"admin":true,"push":true},"language":"Python","description":"Python library implementing the full Github API v3","created_at":"2012-02-25T12:53:47Z","id":3544490} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/labels/Bug +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4994'), ('content-length', '97'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"fe2e942523eecb156d100829a6347516"'), ('date', 'Sat, 19 May 2012 09:40:37 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"} + diff --git a/lib/github/tests/ReplayData/Label.testDelete.txt b/lib/github/tests/ReplayData/Label.testDelete.txt new file mode 100644 index 0000000000..a99ebe4300 --- /dev/null +++ b/lib/github/tests/ReplayData/Label.testDelete.txt @@ -0,0 +1,11 @@ +https +DELETE +api.github.com +None +/repos/jacquev6/PyGithub/labels/Bug +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4961'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sat, 19 May 2012 10:17:53 GMT')] + + diff --git a/lib/github/tests/ReplayData/Label.testEdit.txt b/lib/github/tests/ReplayData/Label.testEdit.txt new file mode 100644 index 0000000000..eea4654de2 --- /dev/null +++ b/lib/github/tests/ReplayData/Label.testEdit.txt @@ -0,0 +1,11 @@ +https +PATCH +api.github.com +None +/repos/jacquev6/PyGithub/labels/Bug +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"color": "0000ff", "name": "LabelEditedByPyGithub"} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4965'), ('content-length', '133'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"57435796bd4f14b84ad92105669cfab1"'), ('date', 'Sat, 19 May 2012 10:17:44 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/LabelEditedByPyGithub","name":"LabelEditedByPyGithub","color":"0000ff"} + diff --git a/lib/github/tests/ReplayData/LazyRepository.setUp.txt b/lib/github/tests/ReplayData/LazyRepository.setUp.txt new file mode 100644 index 0000000000..c895b97a5f --- /dev/null +++ b/lib/github/tests/ReplayData/LazyRepository.setUp.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '1304'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', 'c6c65e5196703428e7641f7d1e9bc353'), ('x-oauth-scopes', 'gist, repo, user'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('x-accepted-oauth-scopes', ''), ('etag', '"975c21d2f55751d13745ffc5fa12b1c2"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4960'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '6CE875F7:1E5F:42689E:5514C7D8'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Fri, 27 Mar 2015 02:56:43 GMT'), ('date', 'Fri, 27 Mar 2015 03:00:40 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1427427963')] +{"login":"korfuri","id":1124263,"avatar_url":"https://avatars.githubusercontent.com/u/1124263?v=3","gravatar_id":"","url":"https://api.github.com/users/korfuri","html_url":"https://github.com/korfuri","followers_url":"https://api.github.com/users/korfuri/followers","following_url":"https://api.github.com/users/korfuri/following{/other_user}","gists_url":"https://api.github.com/users/korfuri/gists{/gist_id}","starred_url":"https://api.github.com/users/korfuri/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/korfuri/subscriptions","organizations_url":"https://api.github.com/users/korfuri/orgs","repos_url":"https://api.github.com/users/korfuri/repos","events_url":"https://api.github.com/users/korfuri/events{/privacy}","received_events_url":"https://api.github.com/users/korfuri/received_events","type":"User","site_admin":false,"name":"Uriel Corfa","company":"","blog":"http://korfuri.fr/","location":"","email":"uriel@corfa.fr","hireable":false,"bio":null,"public_repos":13,"public_gists":0,"followers":29,"following":57,"created_at":"2011-10-13T02:27:26Z","updated_at":"2015-03-27T02:56:43Z","private_gists":0,"total_private_repos":0,"owned_private_repos":0,"disk_usage":444,"collaborators":0,"plan":{"name":"free","space":976562499,"collaborators":0,"private_repos":0}} + diff --git a/lib/github/tests/ReplayData/LazyRepository.testGetIssues.txt b/lib/github/tests/ReplayData/LazyRepository.testGetIssues.txt new file mode 100644 index 0000000000..0f7630bf47 --- /dev/null +++ b/lib/github/tests/ReplayData/LazyRepository.testGetIssues.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/repos/korfuri/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '13643'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', 'd594a23ec74671eba905bf91ef329026'), ('x-oauth-scopes', 'gist, repo, user'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('x-accepted-oauth-scopes', 'repo'), ('etag', '"4a598c12d70d21ed45f8cc87ca10c0ef"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4963'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '6CE875F7:2CC6:6A71E4:5514C7D6'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Fri, 27 Mar 2015 02:56:43 GMT'), ('date', 'Fri, 27 Mar 2015 03:00:38 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1427427963')] +{"id":32964720,"name":"PyGithub","full_name":"korfuri/PyGithub","owner":{"login":"korfuri","id":1124263,"avatar_url":"https://avatars.githubusercontent.com/u/1124263?v=3","gravatar_id":"","url":"https://api.github.com/users/korfuri","html_url":"https://github.com/korfuri","followers_url":"https://api.github.com/users/korfuri/followers","following_url":"https://api.github.com/users/korfuri/following{/other_user}","gists_url":"https://api.github.com/users/korfuri/gists{/gist_id}","starred_url":"https://api.github.com/users/korfuri/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/korfuri/subscriptions","organizations_url":"https://api.github.com/users/korfuri/orgs","repos_url":"https://api.github.com/users/korfuri/repos","events_url":"https://api.github.com/users/korfuri/events{/privacy}","received_events_url":"https://api.github.com/users/korfuri/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/korfuri/PyGithub","description":"Python library implementing the GitHub API v3","fork":true,"url":"https://api.github.com/repos/korfuri/PyGithub","forks_url":"https://api.github.com/repos/korfuri/PyGithub/forks","keys_url":"https://api.github.com/repos/korfuri/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/korfuri/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/korfuri/PyGithub/teams","hooks_url":"https://api.github.com/repos/korfuri/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/korfuri/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/korfuri/PyGithub/events","assignees_url":"https://api.github.com/repos/korfuri/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/korfuri/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/korfuri/PyGithub/tags","blobs_url":"https://api.github.com/repos/korfuri/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/korfuri/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/korfuri/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/korfuri/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/korfuri/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/korfuri/PyGithub/languages","stargazers_url":"https://api.github.com/repos/korfuri/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/korfuri/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/korfuri/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/korfuri/PyGithub/subscription","commits_url":"https://api.github.com/repos/korfuri/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/korfuri/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/korfuri/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/korfuri/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/korfuri/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/korfuri/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/korfuri/PyGithub/merges","archive_url":"https://api.github.com/repos/korfuri/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/korfuri/PyGithub/downloads","issues_url":"https://api.github.com/repos/korfuri/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/korfuri/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/korfuri/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/korfuri/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/korfuri/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/korfuri/PyGithub/releases{/id}","created_at":"2015-03-27T02:56:40Z","updated_at":"2015-03-27T02:56:43Z","pushed_at":"2015-03-18T19:20:30Z","git_url":"git://github.com/korfuri/PyGithub.git","ssh_url":"git@github.com:korfuri/PyGithub.git","clone_url":"https://github.com/korfuri/PyGithub.git","svn_url":"https://github.com/korfuri/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15874,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master","permissions":{"admin":true,"push":true,"pull":true},"parent":{"id":32905113,"name":"PyGithub","full_name":"Jucyio/PyGithub","owner":{"login":"Jucyio","id":11623651,"avatar_url":"https://avatars.githubusercontent.com/u/11623651?v=3","gravatar_id":"","url":"https://api.github.com/users/Jucyio","html_url":"https://github.com/Jucyio","followers_url":"https://api.github.com/users/Jucyio/followers","following_url":"https://api.github.com/users/Jucyio/following{/other_user}","gists_url":"https://api.github.com/users/Jucyio/gists{/gist_id}","starred_url":"https://api.github.com/users/Jucyio/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Jucyio/subscriptions","organizations_url":"https://api.github.com/users/Jucyio/orgs","repos_url":"https://api.github.com/users/Jucyio/repos","events_url":"https://api.github.com/users/Jucyio/events{/privacy}","received_events_url":"https://api.github.com/users/Jucyio/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/Jucyio/PyGithub","description":"Python library implementing the GitHub API v3","fork":true,"url":"https://api.github.com/repos/Jucyio/PyGithub","forks_url":"https://api.github.com/repos/Jucyio/PyGithub/forks","keys_url":"https://api.github.com/repos/Jucyio/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Jucyio/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Jucyio/PyGithub/teams","hooks_url":"https://api.github.com/repos/Jucyio/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/Jucyio/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/Jucyio/PyGithub/events","assignees_url":"https://api.github.com/repos/Jucyio/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/Jucyio/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/Jucyio/PyGithub/tags","blobs_url":"https://api.github.com/repos/Jucyio/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Jucyio/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Jucyio/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/Jucyio/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Jucyio/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/Jucyio/PyGithub/languages","stargazers_url":"https://api.github.com/repos/Jucyio/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/Jucyio/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/Jucyio/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/Jucyio/PyGithub/subscription","commits_url":"https://api.github.com/repos/Jucyio/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/Jucyio/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/Jucyio/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/Jucyio/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/Jucyio/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/Jucyio/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Jucyio/PyGithub/merges","archive_url":"https://api.github.com/repos/Jucyio/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Jucyio/PyGithub/downloads","issues_url":"https://api.github.com/repos/Jucyio/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/Jucyio/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/Jucyio/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/Jucyio/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Jucyio/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/Jucyio/PyGithub/releases{/id}","created_at":"2015-03-26T03:17:03Z","updated_at":"2015-03-26T03:17:05Z","pushed_at":"2015-03-18T19:20:30Z","git_url":"git://github.com/Jucyio/PyGithub.git","ssh_url":"git@github.com:Jucyio/PyGithub.git","clone_url":"https://github.com/Jucyio/PyGithub.git","svn_url":"https://github.com/Jucyio/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15874,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"},"source":{"id":3544490,"name":"PyGithub","full_name":"PyGithub/PyGithub","owner":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/PyGithub/PyGithub","description":"Python library implementing the GitHub API v3","fork":false,"url":"https://api.github.com/repos/PyGithub/PyGithub","forks_url":"https://api.github.com/repos/PyGithub/PyGithub/forks","keys_url":"https://api.github.com/repos/PyGithub/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PyGithub/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PyGithub/PyGithub/teams","hooks_url":"https://api.github.com/repos/PyGithub/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/PyGithub/PyGithub/events","assignees_url":"https://api.github.com/repos/PyGithub/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/PyGithub/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/PyGithub/PyGithub/tags","blobs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PyGithub/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/PyGithub/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PyGithub/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/PyGithub/PyGithub/languages","stargazers_url":"https://api.github.com/repos/PyGithub/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/PyGithub/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/PyGithub/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/PyGithub/PyGithub/subscription","commits_url":"https://api.github.com/repos/PyGithub/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/PyGithub/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/PyGithub/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/PyGithub/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/PyGithub/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PyGithub/PyGithub/merges","archive_url":"https://api.github.com/repos/PyGithub/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PyGithub/PyGithub/downloads","issues_url":"https://api.github.com/repos/PyGithub/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/PyGithub/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/PyGithub/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/PyGithub/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PyGithub/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/PyGithub/PyGithub/releases{/id}","created_at":"2012-02-25T12:53:47Z","updated_at":"2015-03-26T14:31:35Z","pushed_at":"2015-03-18T19:20:30Z","git_url":"git://github.com/PyGithub/PyGithub.git","ssh_url":"git@github.com:PyGithub/PyGithub.git","clone_url":"https://github.com/PyGithub/PyGithub.git","svn_url":"https://github.com/PyGithub/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15874,"stargazers_count":559,"watchers_count":559,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":152,"mirror_url":null,"open_issues_count":24,"forks":152,"open_issues":24,"watchers":559,"default_branch":"master"},"network_count":152,"subscribers_count":1} + +https +GET +api.github.com +None +/repos/korfuri/PyGithub/issues +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '2'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '318e55760cf7cdb40e61175a4d36cd32'), ('x-oauth-scopes', 'gist, repo, user'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('x-accepted-oauth-scopes', ''), ('etag', '"ce023c8f5eae55b9873e83f4f0d6e9ae"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4962'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '6CE875F7:1E5F:4266C5:5514C7D6'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 27 Mar 2015 03:00:39 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1427427963')] +[] + +https +GET +api.github.com +None +/repos/korfuri/PyGithub/issues +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '2'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '474556b853193c38f1b14328ce2d1b7d'), ('x-oauth-scopes', 'gist, repo, user'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('x-accepted-oauth-scopes', ''), ('etag', '"ce023c8f5eae55b9873e83f4f0d6e9ae"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4961'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '6CE875F7:1E62:50EDBA:5514C7D7'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 27 Mar 2015 03:00:39 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1427427963')] +[] + diff --git a/lib/github/tests/ReplayData/LazyRepository.testGetUser.txt b/lib/github/tests/ReplayData/LazyRepository.testGetUser.txt new file mode 100644 index 0000000000..ffb07ebb61 --- /dev/null +++ b/lib/github/tests/ReplayData/LazyRepository.testGetUser.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '1304'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '07ff1c8a09e44b62e277fae50a1b1dc4'), ('x-oauth-scopes', 'gist, repo, user'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('x-accepted-oauth-scopes', ''), ('etag', '"6754cf6361cd6d31646de909f5c90146"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4996'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '6CE875F7:1E63:532872:5514C5BC'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Fri, 27 Mar 2015 02:25:51 GMT'), ('date', 'Fri, 27 Mar 2015 02:51:40 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1427427963')] +{"login":"korfuri","id":1124263,"avatar_url":"https://avatars.githubusercontent.com/u/1124263?v=3","gravatar_id":"","url":"https://api.github.com/users/korfuri","html_url":"https://github.com/korfuri","followers_url":"https://api.github.com/users/korfuri/followers","following_url":"https://api.github.com/users/korfuri/following{/other_user}","gists_url":"https://api.github.com/users/korfuri/gists{/gist_id}","starred_url":"https://api.github.com/users/korfuri/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/korfuri/subscriptions","organizations_url":"https://api.github.com/users/korfuri/orgs","repos_url":"https://api.github.com/users/korfuri/repos","events_url":"https://api.github.com/users/korfuri/events{/privacy}","received_events_url":"https://api.github.com/users/korfuri/received_events","type":"User","site_admin":false,"name":"Uriel Corfa","company":"","blog":"http://korfuri.fr/","location":"","email":"uriel@corfa.fr","hireable":false,"bio":null,"public_repos":12,"public_gists":0,"followers":29,"following":57,"created_at":"2011-10-13T02:27:26Z","updated_at":"2015-03-27T02:25:51Z","private_gists":0,"total_private_repos":0,"owned_private_repos":0,"disk_usage":444,"collaborators":0,"plan":{"name":"free","space":976562499,"collaborators":0,"private_repos":0}} + diff --git a/lib/github/tests/ReplayData/LazyRepository.testOwner.txt b/lib/github/tests/ReplayData/LazyRepository.testOwner.txt new file mode 100644 index 0000000000..687db64323 --- /dev/null +++ b/lib/github/tests/ReplayData/LazyRepository.testOwner.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/repos/korfuri/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '13643'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', 'dc1ce2bfb41810a06c705e83b388572d'), ('x-oauth-scopes', 'gist, repo, user'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('x-accepted-oauth-scopes', 'repo'), ('etag', '"4a598c12d70d21ed45f8cc87ca10c0ef"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4959'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '6CE875F7:1E66:6831F8:5514C7D8'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Fri, 27 Mar 2015 02:56:43 GMT'), ('date', 'Fri, 27 Mar 2015 03:00:40 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1427427963')] +{"id":32964720,"name":"PyGithub","full_name":"korfuri/PyGithub","owner":{"login":"korfuri","id":1124263,"avatar_url":"https://avatars.githubusercontent.com/u/1124263?v=3","gravatar_id":"","url":"https://api.github.com/users/korfuri","html_url":"https://github.com/korfuri","followers_url":"https://api.github.com/users/korfuri/followers","following_url":"https://api.github.com/users/korfuri/following{/other_user}","gists_url":"https://api.github.com/users/korfuri/gists{/gist_id}","starred_url":"https://api.github.com/users/korfuri/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/korfuri/subscriptions","organizations_url":"https://api.github.com/users/korfuri/orgs","repos_url":"https://api.github.com/users/korfuri/repos","events_url":"https://api.github.com/users/korfuri/events{/privacy}","received_events_url":"https://api.github.com/users/korfuri/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/korfuri/PyGithub","description":"Python library implementing the GitHub API v3","fork":true,"url":"https://api.github.com/repos/korfuri/PyGithub","forks_url":"https://api.github.com/repos/korfuri/PyGithub/forks","keys_url":"https://api.github.com/repos/korfuri/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/korfuri/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/korfuri/PyGithub/teams","hooks_url":"https://api.github.com/repos/korfuri/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/korfuri/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/korfuri/PyGithub/events","assignees_url":"https://api.github.com/repos/korfuri/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/korfuri/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/korfuri/PyGithub/tags","blobs_url":"https://api.github.com/repos/korfuri/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/korfuri/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/korfuri/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/korfuri/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/korfuri/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/korfuri/PyGithub/languages","stargazers_url":"https://api.github.com/repos/korfuri/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/korfuri/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/korfuri/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/korfuri/PyGithub/subscription","commits_url":"https://api.github.com/repos/korfuri/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/korfuri/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/korfuri/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/korfuri/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/korfuri/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/korfuri/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/korfuri/PyGithub/merges","archive_url":"https://api.github.com/repos/korfuri/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/korfuri/PyGithub/downloads","issues_url":"https://api.github.com/repos/korfuri/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/korfuri/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/korfuri/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/korfuri/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/korfuri/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/korfuri/PyGithub/releases{/id}","created_at":"2015-03-27T02:56:40Z","updated_at":"2015-03-27T02:56:43Z","pushed_at":"2015-03-18T19:20:30Z","git_url":"git://github.com/korfuri/PyGithub.git","ssh_url":"git@github.com:korfuri/PyGithub.git","clone_url":"https://github.com/korfuri/PyGithub.git","svn_url":"https://github.com/korfuri/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15874,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master","permissions":{"admin":true,"push":true,"pull":true},"parent":{"id":32905113,"name":"PyGithub","full_name":"Jucyio/PyGithub","owner":{"login":"Jucyio","id":11623651,"avatar_url":"https://avatars.githubusercontent.com/u/11623651?v=3","gravatar_id":"","url":"https://api.github.com/users/Jucyio","html_url":"https://github.com/Jucyio","followers_url":"https://api.github.com/users/Jucyio/followers","following_url":"https://api.github.com/users/Jucyio/following{/other_user}","gists_url":"https://api.github.com/users/Jucyio/gists{/gist_id}","starred_url":"https://api.github.com/users/Jucyio/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Jucyio/subscriptions","organizations_url":"https://api.github.com/users/Jucyio/orgs","repos_url":"https://api.github.com/users/Jucyio/repos","events_url":"https://api.github.com/users/Jucyio/events{/privacy}","received_events_url":"https://api.github.com/users/Jucyio/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/Jucyio/PyGithub","description":"Python library implementing the GitHub API v3","fork":true,"url":"https://api.github.com/repos/Jucyio/PyGithub","forks_url":"https://api.github.com/repos/Jucyio/PyGithub/forks","keys_url":"https://api.github.com/repos/Jucyio/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Jucyio/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Jucyio/PyGithub/teams","hooks_url":"https://api.github.com/repos/Jucyio/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/Jucyio/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/Jucyio/PyGithub/events","assignees_url":"https://api.github.com/repos/Jucyio/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/Jucyio/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/Jucyio/PyGithub/tags","blobs_url":"https://api.github.com/repos/Jucyio/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Jucyio/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Jucyio/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/Jucyio/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Jucyio/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/Jucyio/PyGithub/languages","stargazers_url":"https://api.github.com/repos/Jucyio/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/Jucyio/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/Jucyio/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/Jucyio/PyGithub/subscription","commits_url":"https://api.github.com/repos/Jucyio/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/Jucyio/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/Jucyio/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/Jucyio/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/Jucyio/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/Jucyio/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Jucyio/PyGithub/merges","archive_url":"https://api.github.com/repos/Jucyio/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Jucyio/PyGithub/downloads","issues_url":"https://api.github.com/repos/Jucyio/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/Jucyio/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/Jucyio/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/Jucyio/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Jucyio/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/Jucyio/PyGithub/releases{/id}","created_at":"2015-03-26T03:17:03Z","updated_at":"2015-03-26T03:17:05Z","pushed_at":"2015-03-18T19:20:30Z","git_url":"git://github.com/Jucyio/PyGithub.git","ssh_url":"git@github.com:Jucyio/PyGithub.git","clone_url":"https://github.com/Jucyio/PyGithub.git","svn_url":"https://github.com/Jucyio/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15874,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"},"source":{"id":3544490,"name":"PyGithub","full_name":"PyGithub/PyGithub","owner":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/PyGithub/PyGithub","description":"Python library implementing the GitHub API v3","fork":false,"url":"https://api.github.com/repos/PyGithub/PyGithub","forks_url":"https://api.github.com/repos/PyGithub/PyGithub/forks","keys_url":"https://api.github.com/repos/PyGithub/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PyGithub/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PyGithub/PyGithub/teams","hooks_url":"https://api.github.com/repos/PyGithub/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/PyGithub/PyGithub/events","assignees_url":"https://api.github.com/repos/PyGithub/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/PyGithub/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/PyGithub/PyGithub/tags","blobs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PyGithub/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/PyGithub/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PyGithub/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/PyGithub/PyGithub/languages","stargazers_url":"https://api.github.com/repos/PyGithub/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/PyGithub/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/PyGithub/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/PyGithub/PyGithub/subscription","commits_url":"https://api.github.com/repos/PyGithub/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/PyGithub/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/PyGithub/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/PyGithub/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/PyGithub/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PyGithub/PyGithub/merges","archive_url":"https://api.github.com/repos/PyGithub/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PyGithub/PyGithub/downloads","issues_url":"https://api.github.com/repos/PyGithub/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/PyGithub/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/PyGithub/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/PyGithub/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PyGithub/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/PyGithub/PyGithub/releases{/id}","created_at":"2012-02-25T12:53:47Z","updated_at":"2015-03-26T14:31:35Z","pushed_at":"2015-03-18T19:20:30Z","git_url":"git://github.com/PyGithub/PyGithub.git","ssh_url":"git@github.com:PyGithub/PyGithub.git","clone_url":"https://github.com/PyGithub/PyGithub.git","svn_url":"https://github.com/PyGithub/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15874,"stargazers_count":559,"watchers_count":559,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":152,"mirror_url":null,"open_issues_count":24,"forks":152,"open_issues":24,"watchers":559,"default_branch":"master"},"network_count":152,"subscribers_count":1} + +https +GET +api.github.com +None +/repos/korfuri/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '13643'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '76d9828c7e4f1d910f7ba069e90ce976'), ('x-oauth-scopes', 'gist, repo, user'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('x-accepted-oauth-scopes', 'repo'), ('etag', '"4a598c12d70d21ed45f8cc87ca10c0ef"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4958'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '6CE875F7:1A8F:54374C:5514C7D9'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Fri, 27 Mar 2015 02:56:43 GMT'), ('date', 'Fri, 27 Mar 2015 03:00:41 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1427427963')] +{"id":32964720,"name":"PyGithub","full_name":"korfuri/PyGithub","owner":{"login":"korfuri","id":1124263,"avatar_url":"https://avatars.githubusercontent.com/u/1124263?v=3","gravatar_id":"","url":"https://api.github.com/users/korfuri","html_url":"https://github.com/korfuri","followers_url":"https://api.github.com/users/korfuri/followers","following_url":"https://api.github.com/users/korfuri/following{/other_user}","gists_url":"https://api.github.com/users/korfuri/gists{/gist_id}","starred_url":"https://api.github.com/users/korfuri/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/korfuri/subscriptions","organizations_url":"https://api.github.com/users/korfuri/orgs","repos_url":"https://api.github.com/users/korfuri/repos","events_url":"https://api.github.com/users/korfuri/events{/privacy}","received_events_url":"https://api.github.com/users/korfuri/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/korfuri/PyGithub","description":"Python library implementing the GitHub API v3","fork":true,"url":"https://api.github.com/repos/korfuri/PyGithub","forks_url":"https://api.github.com/repos/korfuri/PyGithub/forks","keys_url":"https://api.github.com/repos/korfuri/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/korfuri/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/korfuri/PyGithub/teams","hooks_url":"https://api.github.com/repos/korfuri/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/korfuri/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/korfuri/PyGithub/events","assignees_url":"https://api.github.com/repos/korfuri/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/korfuri/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/korfuri/PyGithub/tags","blobs_url":"https://api.github.com/repos/korfuri/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/korfuri/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/korfuri/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/korfuri/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/korfuri/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/korfuri/PyGithub/languages","stargazers_url":"https://api.github.com/repos/korfuri/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/korfuri/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/korfuri/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/korfuri/PyGithub/subscription","commits_url":"https://api.github.com/repos/korfuri/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/korfuri/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/korfuri/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/korfuri/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/korfuri/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/korfuri/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/korfuri/PyGithub/merges","archive_url":"https://api.github.com/repos/korfuri/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/korfuri/PyGithub/downloads","issues_url":"https://api.github.com/repos/korfuri/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/korfuri/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/korfuri/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/korfuri/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/korfuri/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/korfuri/PyGithub/releases{/id}","created_at":"2015-03-27T02:56:40Z","updated_at":"2015-03-27T02:56:43Z","pushed_at":"2015-03-18T19:20:30Z","git_url":"git://github.com/korfuri/PyGithub.git","ssh_url":"git@github.com:korfuri/PyGithub.git","clone_url":"https://github.com/korfuri/PyGithub.git","svn_url":"https://github.com/korfuri/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15874,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master","permissions":{"admin":true,"push":true,"pull":true},"parent":{"id":32905113,"name":"PyGithub","full_name":"Jucyio/PyGithub","owner":{"login":"Jucyio","id":11623651,"avatar_url":"https://avatars.githubusercontent.com/u/11623651?v=3","gravatar_id":"","url":"https://api.github.com/users/Jucyio","html_url":"https://github.com/Jucyio","followers_url":"https://api.github.com/users/Jucyio/followers","following_url":"https://api.github.com/users/Jucyio/following{/other_user}","gists_url":"https://api.github.com/users/Jucyio/gists{/gist_id}","starred_url":"https://api.github.com/users/Jucyio/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Jucyio/subscriptions","organizations_url":"https://api.github.com/users/Jucyio/orgs","repos_url":"https://api.github.com/users/Jucyio/repos","events_url":"https://api.github.com/users/Jucyio/events{/privacy}","received_events_url":"https://api.github.com/users/Jucyio/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/Jucyio/PyGithub","description":"Python library implementing the GitHub API v3","fork":true,"url":"https://api.github.com/repos/Jucyio/PyGithub","forks_url":"https://api.github.com/repos/Jucyio/PyGithub/forks","keys_url":"https://api.github.com/repos/Jucyio/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Jucyio/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Jucyio/PyGithub/teams","hooks_url":"https://api.github.com/repos/Jucyio/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/Jucyio/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/Jucyio/PyGithub/events","assignees_url":"https://api.github.com/repos/Jucyio/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/Jucyio/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/Jucyio/PyGithub/tags","blobs_url":"https://api.github.com/repos/Jucyio/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Jucyio/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Jucyio/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/Jucyio/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Jucyio/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/Jucyio/PyGithub/languages","stargazers_url":"https://api.github.com/repos/Jucyio/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/Jucyio/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/Jucyio/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/Jucyio/PyGithub/subscription","commits_url":"https://api.github.com/repos/Jucyio/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/Jucyio/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/Jucyio/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/Jucyio/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/Jucyio/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/Jucyio/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Jucyio/PyGithub/merges","archive_url":"https://api.github.com/repos/Jucyio/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Jucyio/PyGithub/downloads","issues_url":"https://api.github.com/repos/Jucyio/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/Jucyio/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/Jucyio/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/Jucyio/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Jucyio/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/Jucyio/PyGithub/releases{/id}","created_at":"2015-03-26T03:17:03Z","updated_at":"2015-03-26T03:17:05Z","pushed_at":"2015-03-18T19:20:30Z","git_url":"git://github.com/Jucyio/PyGithub.git","ssh_url":"git@github.com:Jucyio/PyGithub.git","clone_url":"https://github.com/Jucyio/PyGithub.git","svn_url":"https://github.com/Jucyio/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15874,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"},"source":{"id":3544490,"name":"PyGithub","full_name":"PyGithub/PyGithub","owner":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/PyGithub/PyGithub","description":"Python library implementing the GitHub API v3","fork":false,"url":"https://api.github.com/repos/PyGithub/PyGithub","forks_url":"https://api.github.com/repos/PyGithub/PyGithub/forks","keys_url":"https://api.github.com/repos/PyGithub/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PyGithub/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PyGithub/PyGithub/teams","hooks_url":"https://api.github.com/repos/PyGithub/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/PyGithub/PyGithub/events","assignees_url":"https://api.github.com/repos/PyGithub/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/PyGithub/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/PyGithub/PyGithub/tags","blobs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PyGithub/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/PyGithub/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PyGithub/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/PyGithub/PyGithub/languages","stargazers_url":"https://api.github.com/repos/PyGithub/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/PyGithub/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/PyGithub/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/PyGithub/PyGithub/subscription","commits_url":"https://api.github.com/repos/PyGithub/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/PyGithub/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/PyGithub/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/PyGithub/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/PyGithub/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PyGithub/PyGithub/merges","archive_url":"https://api.github.com/repos/PyGithub/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PyGithub/PyGithub/downloads","issues_url":"https://api.github.com/repos/PyGithub/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/PyGithub/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/PyGithub/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/PyGithub/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PyGithub/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/PyGithub/PyGithub/releases{/id}","created_at":"2012-02-25T12:53:47Z","updated_at":"2015-03-26T14:31:35Z","pushed_at":"2015-03-18T19:20:30Z","git_url":"git://github.com/PyGithub/PyGithub.git","ssh_url":"git@github.com:PyGithub/PyGithub.git","clone_url":"https://github.com/PyGithub/PyGithub.git","svn_url":"https://github.com/PyGithub/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15874,"stargazers_count":559,"watchers_count":559,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":152,"mirror_url":null,"open_issues_count":24,"forks":152,"open_issues":24,"watchers":559,"default_branch":"master"},"network_count":152,"subscribers_count":1} + diff --git a/lib/github/tests/ReplayData/Logging.testLoggingWithBaseUrl.txt b/lib/github/tests/ReplayData/Logging.testLoggingWithBaseUrl.txt new file mode 100644 index 0000000000..a98d150058 --- /dev/null +++ b/lib/github/tests/ReplayData/Logging.testLoggingWithBaseUrl.txt @@ -0,0 +1,11 @@ +http +GET +my.enterprise.com +None +/my/prefix/users/jacquev6 +{'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '628'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept'), ('x-ratelimit-remaining', '4989'), ('server', 'nginx'), ('last-modified', 'Tue, 25 Sep 2012 07:42:42 GMT'), ('connection', 'keep-alive'), ('etag', '"9bd085221a16b6d2ea95e72634c3c1ac"'), ('cache-control', 'public, max-age=60, s-maxage=60'), ('date', 'Tue, 25 Sep 2012 20:38:56 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","html_url":"https://github.com/jacquev6","login":"jacquev6","followers":14,"company":"Criteo","created_at":"2010-07-09T06:10:06Z","email":"vincent@vincent-jacques.net","hireable":false,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","public_gists":3,"bio":"","following":29,"name":"Vincent Jacques","blog":"http://vincent-jacques.net","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146,"public_repos":13,"location":"Paris, France","url":"https://api.github.com/users/jacquev6"} + diff --git a/lib/github/tests/ReplayData/Logging.testLoggingWithBasicAuthentication.txt b/lib/github/tests/ReplayData/Logging.testLoggingWithBasicAuthentication.txt new file mode 100644 index 0000000000..f88da05ad7 --- /dev/null +++ b/lib/github/tests/ReplayData/Logging.testLoggingWithBasicAuthentication.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '806'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4993'), ('server', 'nginx'), ('last-modified', 'Fri, 14 Sep 2012 18:47:46 GMT'), ('connection', 'keep-alive'), ('etag', '"434dfe5d3f50558fe3cea087cb95c401"'), ('cache-control', 'private, s-maxage=60, max-age=60'), ('date', 'Mon, 17 Sep 2012 17:12:32 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"owned_private_repos":3,"disk_usage":18612,"following":28,"type":"User","public_repos":13,"location":"Paris, France","company":"Criteo","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","plan":{"space":614400,"private_repos":5,"name":"micro","collaborators":1},"blog":"http://vincent-jacques.net","login":"jacquev6","public_gists":3,"html_url":"https://github.com/jacquev6","hireable":false,"created_at":"2010-07-09T06:10:06Z","private_gists":5,"followers":13,"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","bio":"","total_private_repos":3,"collaborators":0,"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146,"url":"https://api.github.com/users/jacquev6"} + diff --git a/lib/github/tests/ReplayData/Logging.testLoggingWithOAuthAuthentication.txt b/lib/github/tests/ReplayData/Logging.testLoggingWithOAuthAuthentication.txt new file mode 100644 index 0000000000..14e75bdab3 --- /dev/null +++ b/lib/github/tests/ReplayData/Logging.testLoggingWithOAuthAuthentication.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'token private_token_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4993'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '628'), ('server', 'nginx'), ('last-modified', 'Tue, 25 Sep 2012 07:42:42 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"c23ad6b5815fc3d6ec6341c4a47afe85"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Tue, 25 Sep 2012 20:36:54 GMT'), ('x-oauth-scopes', ''), ('content-type', 'application/json; charset=utf-8'), ('x-accepted-oauth-scopes', 'user')] +{"type":"User","bio":"","html_url":"https://github.com/jacquev6","login":"jacquev6","followers":14,"company":"Criteo","blog":"http://vincent-jacques.net","public_repos":13,"created_at":"2010-07-09T06:10:06Z","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","email":"vincent@vincent-jacques.net","following":29,"name":"Vincent Jacques","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","hireable":false,"id":327146,"public_gists":3,"location":"Paris, France","url":"https://api.github.com/users/jacquev6"} + diff --git a/lib/github/tests/ReplayData/Logging.testLoggingWithoutAuthentication.txt b/lib/github/tests/ReplayData/Logging.testLoggingWithoutAuthentication.txt new file mode 100644 index 0000000000..f0ca9b3dd8 --- /dev/null +++ b/lib/github/tests/ReplayData/Logging.testLoggingWithoutAuthentication.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/users/jacquev6 +{'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '628'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept'), ('x-ratelimit-remaining', '4989'), ('server', 'nginx'), ('last-modified', 'Tue, 25 Sep 2012 07:42:42 GMT'), ('connection', 'keep-alive'), ('etag', '"9bd085221a16b6d2ea95e72634c3c1ac"'), ('cache-control', 'public, max-age=60, s-maxage=60'), ('date', 'Tue, 25 Sep 2012 20:38:56 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","html_url":"https://github.com/jacquev6","login":"jacquev6","followers":14,"company":"Criteo","created_at":"2010-07-09T06:10:06Z","email":"vincent@vincent-jacques.net","hireable":false,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","public_gists":3,"bio":"","following":29,"name":"Vincent Jacques","blog":"http://vincent-jacques.net","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146,"public_repos":13,"location":"Paris, France","url":"https://api.github.com/users/jacquev6"} + diff --git a/lib/github/tests/ReplayData/Markdown.setUp.txt b/lib/github/tests/ReplayData/Markdown.setUp.txt new file mode 100644 index 0000000000..96d9ce34bf --- /dev/null +++ b/lib/github/tests/ReplayData/Markdown.setUp.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '801'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4987'), ('server', 'nginx/1.0.13'), ('last-modified', 'Mon, 09 Jul 2012 06:49:53 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"1bd2b9dfc8ba65f7665102d6245a1593"'), ('cache-control', 'private, max-age=60'), ('date', 'Fri, 13 Jul 2012 11:59:58 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"disk_usage":13720,"public_repos":11,"type":"User","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","total_private_repos":3,"collaborators":0,"hireable":false,"login":"jacquev6","owned_private_repos":3,"public_gists":3,"email":"vincent@vincent-jacques.net","bio":"","private_gists":5,"created_at":"2010-07-09T06:10:06Z","blog":"http://vincent-jacques.net","following":26,"location":"Paris, France","followers":13,"name":"Vincent Jacques","company":"Criteo","plan":{"collaborators":1,"private_repos":5,"name":"micro","space":614400},"html_url":"https://github.com/jacquev6","id":327146,"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4986'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '1154'), ('server', 'nginx/1.0.13'), ('last-modified', 'Thu, 12 Jul 2012 18:10:45 GMT'), ('connection', 'keep-alive'), ('etag', '"7db49a096161f262ffd7e0545292f4c3"'), ('cache-control', 'private, max-age=60'), ('date', 'Fri, 13 Jul 2012 11:59:59 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"svn_url":"https://github.com/jacquev6/PyGithub","created_at":"2012-02-25T12:53:47Z","owner":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146,"login":"jacquev6","url":"https://api.github.com/users/jacquev6"},"full_name":"jacquev6/PyGithub","has_wiki":false,"watchers":43,"git_url":"git://github.com/jacquev6/PyGithub.git","html_url":"https://github.com/jacquev6/PyGithub","pushed_at":"2012-07-11T11:29:24Z","updated_at":"2012-07-12T18:10:45Z","permissions":{"pull":true,"push":true,"admin":true},"open_issues":11,"forks":7,"clone_url":"https://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","homepage":"http://vincent-jacques.net/PyGithub","size":160,"fork":false,"master_branch":"master","mirror_url":null,"has_issues":true,"name":"PyGithub","has_downloads":true,"description":"Python library implementing the full Github API v3","private":false,"id":3544490,"language":"Python","url":"https://api.github.com/repos/jacquev6/PyGithub"} + diff --git a/lib/github/tests/ReplayData/Markdown.testRenderGithubFlavoredMarkdown.txt b/lib/github/tests/ReplayData/Markdown.testRenderGithubFlavoredMarkdown.txt new file mode 100644 index 0000000000..c12654cc0f --- /dev/null +++ b/lib/github/tests/ReplayData/Markdown.testRenderGithubFlavoredMarkdown.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/markdown +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"text": "MyTitle\n=======\n\nIssue #1", "mode": "gfm", "context": "jacquev6/PyGithub"} +200 +[('status', '200 OK'), ('content-length', '150'), ('x-ratelimit-remaining', '4988'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"63251bf7dbb58f62c59ae39bb72c7a38"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Fri, 13 Jul 2012 11:59:58 GMT'), ('content-type', 'text/html;charset=utf-8')] +

    MyTitle

    Issue #1

    + diff --git a/lib/github/tests/ReplayData/Markdown.testRenderMarkdown.txt b/lib/github/tests/ReplayData/Markdown.testRenderMarkdown.txt new file mode 100644 index 0000000000..b31ac7f1ec --- /dev/null +++ b/lib/github/tests/ReplayData/Markdown.testRenderMarkdown.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/markdown +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"text": "MyTitle\n=======\n\nIssue #1"} +200 +[('status', '200 OK'), ('content-length', '133'), ('x-ratelimit-remaining', '4985'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"4cb17c0ebe3cc45c1a7f27d4d0850c54"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Fri, 13 Jul 2012 11:59:59 GMT'), ('content-type', 'text/html;charset=utf-8')] +

    MyTitle

    Issue #1

    + diff --git a/lib/github/tests/ReplayData/Milestone.setUp.txt b/lib/github/tests/ReplayData/Milestone.setUp.txt new file mode 100644 index 0000000000..924af9fa66 --- /dev/null +++ b/lib/github/tests/ReplayData/Milestone.setUp.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4999'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"cafcc970ccfa36947999605caefbe3be"'), ('date', 'Fri, 11 May 2012 13:34:48 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","bio":"","url":"https://api.github.com/users/jacquev6","blog":"http://vincent-jacques.net","total_private_repos":5,"disk_usage":16676,"plan":{"collaborators":1,"space":614400,"name":"micro","private_repos":5},"public_gists":1,"html_url":"https://github.com/jacquev6","owned_private_repos":5,"public_repos":11,"login":"jacquev6","private_gists":5,"collaborators":0,"email":"vincent@vincent-jacques.net","created_at":"2010-07-09T06:10:06Z","company":"Criteo","location":"Paris, France","followers":13,"following":24,"name":"Vincent Jacques","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","hireable":false,"id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4998'), ('content-length', '1097'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"4a386c2ab2675e1e0addb729b4576ea9"'), ('date', 'Fri, 11 May 2012 13:34:49 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"updated_at":"2012-05-10T20:00:24Z","has_wiki":false,"has_issues":true,"homepage":"http://vincent-jacques.net/PyGithub","git_url":"git://github.com/jacquev6/PyGithub.git","mirror_url":null,"forks":2,"html_url":"https://github.com/jacquev6/PyGithub","open_issues":15,"fork":false,"svn_url":"https://github.com/jacquev6/PyGithub","ssh_url":"git@github.com:jacquev6/PyGithub.git","url":"https://api.github.com/repos/jacquev6/PyGithub","pushed_at":"2012-05-10T20:00:24Z","language":"Python","size":196,"private":false,"clone_url":"https://github.com/jacquev6/PyGithub.git","created_at":"2012-02-25T12:53:47Z","owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"name":"PyGithub","has_downloads":true,"watchers":13,"description":"Python library implementing the full Github API v3","id":3544490,"permissions":{"admin":true,"pull":true,"push":true}} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/milestones/1 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4997'), ('content-length', '556'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"977ee5e1d9c368036c6121e01680ce45"'), ('date', 'Fri, 11 May 2012 13:34:49 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/1","number":1,"closed_issues":2,"title":"Version 0.4","due_on":"2012-03-13T07:00:00Z","created_at":"2012-03-08T12:22:10Z","state":"closed","creator":{"url":"https://api.github.com/users/jacquev6","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"description":"","open_issues":0,"id":93546} + diff --git a/lib/github/tests/ReplayData/Milestone.testDelete.txt b/lib/github/tests/ReplayData/Milestone.testDelete.txt new file mode 100644 index 0000000000..b8dd1c4b33 --- /dev/null +++ b/lib/github/tests/ReplayData/Milestone.testDelete.txt @@ -0,0 +1,11 @@ +https +DELETE +api.github.com +None +/repos/jacquev6/PyGithub/milestones/1 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4938'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sat, 19 May 2012 10:34:44 GMT')] + + diff --git a/lib/github/tests/ReplayData/Milestone.testEditWithAllParameters.txt b/lib/github/tests/ReplayData/Milestone.testEditWithAllParameters.txt new file mode 100644 index 0000000000..2f980f935a --- /dev/null +++ b/lib/github/tests/ReplayData/Milestone.testEditWithAllParameters.txt @@ -0,0 +1,11 @@ +https +PATCH +api.github.com +None +/repos/jacquev6/PyGithub/milestones/1 +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"due_on": "2012-06-16", "state": "closed", "description": "Description edited by PyGithub", "title": "Title edited twice by PyGithub"} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4946'), ('content-length', '606'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"ac9f76c61e1fe0e76cd26e77e59d5797"'), ('date', 'Sat, 19 May 2012 10:30:15 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/5","due_on":"2012-06-16T07:00:00Z","creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"number":5,"open_issues":0,"title":"Title edited twice by PyGithub","closed_issues":0,"created_at":"2012-05-19T10:24:13Z","state":"closed","description":"Description edited by PyGithub","id":121463} + diff --git a/lib/github/tests/ReplayData/Milestone.testEditWithMinimalParameters.txt b/lib/github/tests/ReplayData/Milestone.testEditWithMinimalParameters.txt new file mode 100644 index 0000000000..a8ae1c1847 --- /dev/null +++ b/lib/github/tests/ReplayData/Milestone.testEditWithMinimalParameters.txt @@ -0,0 +1,11 @@ +https +PATCH +api.github.com +None +/repos/jacquev6/PyGithub/milestones/1 +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"title": "Title edited by PyGithub"} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4954'), ('content-length', '599'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"df00dd4d1183f48c313b9cf04330623b"'), ('date', 'Sat, 19 May 2012 10:29:02 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"closed_issues":0,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/5","due_on":"2012-06-15T07:00:00Z","creator":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"number":5,"open_issues":0,"title":"Title edited by PyGithub","created_at":"2012-05-19T10:24:13Z","state":"open","description":"Description created by PyGithub","id":121463} + diff --git a/lib/github/tests/ReplayData/Milestone.testGetLabels.txt b/lib/github/tests/ReplayData/Milestone.testGetLabels.txt new file mode 100644 index 0000000000..96cd8745d2 --- /dev/null +++ b/lib/github/tests/ReplayData/Milestone.testGetLabels.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/milestones/1/labels +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4942'), ('content-length', '253'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"cd4ed3176e27a01da9a51f84c7b19b63"'), ('date', 'Sat, 19 May 2012 10:33:15 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"}] + diff --git a/lib/github/tests/ReplayData/NamedUser.setUp.txt b/lib/github/tests/ReplayData/NamedUser.setUp.txt new file mode 100644 index 0000000000..a2232d31cf --- /dev/null +++ b/lib/github/tests/ReplayData/NamedUser.setUp.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/users/jacquev6 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4960'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"2b9d2167029cc33666d02e0b0e95f2b9"'), ('date', 'Sat, 26 May 2012 11:08:21 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","disk_usage":17080,"public_gists":2,"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","public_repos":11,"hireable":false,"private_gists":5,"plan":{"private_repos":5,"collaborators":1,"name":"micro","space":614400},"bio":"","company":"Criteo","blog":"http://vincent-jacques.net","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","total_private_repos":5,"email":"vincent@vincent-jacques.net","collaborators":0,"followers":13,"name":"Vincent Jacques","owned_private_repos":5,"created_at":"2010-07-09T06:10:06Z","location":"Paris, France","id":327146,"following":24,"html_url":"https://github.com/jacquev6"} + diff --git a/lib/github/tests/ReplayData/NamedUser.testAttributesOfOtherUser.txt b/lib/github/tests/ReplayData/NamedUser.testAttributesOfOtherUser.txt new file mode 100644 index 0000000000..0e0e1fde47 --- /dev/null +++ b/lib/github/tests/ReplayData/NamedUser.testAttributesOfOtherUser.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/users/nvie +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4994'), ('content-length', '598'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"66a516a2007fb7df8bbb3f9cc7cb2da8"'), ('date', 'Fri, 18 May 2012 19:46:37 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"public_gists":16,"type":"User","hireable":false,"company":"3rd Cloud","url":"https://api.github.com/users/nvie","gravatar_id":"c5a7f21b46df698f3db31c37ed0cf55a","bio":null,"followers":296,"blog":"http://nvie.com","avatar_url":"https://secure.gravatar.com/avatar/c5a7f21b46df698f3db31c37ed0cf55a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"nvie","email":"vincent@3rdcloud.com","public_repos":61,"html_url":"https://github.com/nvie","name":"Vincent Driessen","created_at":"2009-05-12T21:19:38Z","location":"Netherlands","id":83844,"following":41} + diff --git a/lib/github/tests/ReplayData/NamedUser.testGetEvents.txt b/lib/github/tests/ReplayData/NamedUser.testGetEvents.txt new file mode 100644 index 0000000000..610e6982d2 --- /dev/null +++ b/lib/github/tests/ReplayData/NamedUser.testGetEvents.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/users/jacquev6/events +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4955'), ('content-length', '75377'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next"'), ('etag', '"c8320d1ab46fc40525837ed17c96dd2e"'), ('date', 'Sun, 20 May 2012 12:17:21 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"type":"GistEvent","payload":{"action":"create","gist":{"created_at":"2012-05-20T12:14:08Z","comments":0,"public":true,"updated_at":"2012-05-20T12:14:08Z","files":{},"git_push_url":"git@gist.github.com:2757859.git","url":"https://api.github.com/gists/2757859","id":"2757859","git_pull_url":"git://gist.github.com/2757859.git","description":"Gist created by PyGithub on a NamedUser","html_url":"https://gist.github.com/2757859","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}}},"public":true,"repo":{"url":"https://api.github.com/repos//","name":"/"},"created_at":"2012-05-20T12:14:09Z","id":"1553915048","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T11:46:42Z","body":"Comment created by PyGithub","updated_at":"2012-05-20T11:46:42Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5808311","id":5808311,"user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},"action":"created","issue":{"number":28,"created_at":"2012-05-19T10:38:23Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"Body edited by PyGithub","comments":1,"title":"Title edited by PyGithub","updated_at":"2012-05-20T11:46:43Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/28","id":4653757,"assignee":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":{"number":2,"created_at":"2012-03-08T12:22:28Z","due_on":null,"title":"Version 1.0: coherent public interface","creator":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","id":93547,"closed_issues":1,"open_issues":11,"description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","state":"open"},"closed_at":null,"labels":[{"name":"Bug","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","color":"e10c02"},{"name":"Project management","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","color":"444444"},{"name":"Question","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","color":"02e10c"}],"html_url":"https://github.com/jacquev6/PyGithub/issues/28","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"state":"open"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-20T11:46:43Z","id":"1553912723","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"63f8767c5b8d1f2f8d88346a58cdb6173e251d52","size":9,"push_id":79333321,"commits":[{"sha":"da3bea69229c6498be48968db8dc27d21b05da67","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/da3bea69229c6498be48968db8dc27d21b05da67","distinct":true,"message":"Test Tag attributes"},{"sha":"667937b437747df181cfeeab84fa74bcc5e7b118","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/667937b437747df181cfeeab84fa74bcc5e7b118","distinct":true,"message":"Test Hooks"},{"sha":"350e014d55a82eab268d7229c99debce8ede3625","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/350e014d55a82eab268d7229c99debce8ede3625","distinct":true,"message":"Remove completion of Hook"},{"sha":"799d22a39e12b020b49dc59ce5775c6135ee54ea","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/799d22a39e12b020b49dc59ce5775c6135ee54ea","distinct":true,"message":"Remove __completed from non-completable classes"},{"sha":"a097671795e9dba08ff8e86f59e58ba98a4478e2","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a097671795e9dba08ff8e86f59e58ba98a4478e2","distinct":true,"message":"Test Gist"},{"sha":"fdb10338257556a7590f8f93c16284dba49743d6","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/fdb10338257556a7590f8f93c16284dba49743d6","distinct":true,"message":"Rename some tests"},{"sha":"72c34a840d1492a62683f081bd00d286b28cef0f","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/72c34a840d1492a62683f081bd00d286b28cef0f","distinct":true,"message":"Test labels (new special case in Repository.get_label...)"},{"sha":"c1787205baa31f20f8c444d2908677c4d09f4db0","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c1787205baa31f20f8c444d2908677c4d09f4db0","distinct":true,"message":"Test Milestone"},{"sha":"63f8767c5b8d1f2f8d88346a58cdb6173e251d52","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/63f8767c5b8d1f2f8d88346a58cdb6173e251d52","distinct":true,"message":"Test Issue"}],"ref":"refs/heads/topic/RewriteWithGeneratedCode"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-19T10:50:40Z","id":"1553749349","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6"}},{"type":"IssuesEvent","payload":{"action":"opened","issue":{"number":28,"created_at":"2012-05-19T10:38:23Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":null,"title":"Issue created by PyGithub","comments":0,"updated_at":"2012-05-19T10:38:23Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/28","id":4653757,"assignee":null,"milestone":null,"closed_at":null,"user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"html_url":"https://github.com/jacquev6/PyGithub/issues/28","labels":[],"state":"open"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-19T10:38:24Z","id":"1553748323","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6"}},{"type":"GistEvent","payload":{"action":"fork","gist":{"created_at":"2012-05-19T07:25:30Z","public":true,"comments":0,"files":{},"updated_at":"2012-05-19T07:25:30Z","git_push_url":"git@gist.github.com:2729865.git","url":"https://api.github.com/gists/2729865","id":"2729865","git_pull_url":"git://gist.github.com/2729865.git","description":"RoR setup in AWS EC2(Ubuntu 12.04 LTS)","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"html_url":"https://gist.github.com/2729865"}},"public":true,"repo":{"url":"https://api.github.com/repos//","name":"/"},"created_at":"2012-05-19T07:25:31Z","id":"1553728670","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6"}},{"type":"GistEvent","payload":{"action":"update","gist":{"created_at":"2012-05-19T07:00:58Z","comments":0,"public":true,"git_push_url":"git@gist.github.com:2729810.git","files":{},"updated_at":"2012-05-19T07:06:10Z","url":"https://api.github.com/gists/2729810","id":"2729810","git_pull_url":"git://gist.github.com/2729810.git","description":"Description edited by PyGithub","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"html_url":"https://gist.github.com/2729810"}},"public":true,"repo":{"url":"https://api.github.com/repos//","name":"/"},"created_at":"2012-05-19T07:06:10Z","id":"1553727205","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6"}},{"type":"GistEvent","payload":{"action":"update","gist":{"created_at":"2012-05-19T07:00:58Z","public":true,"comments":0,"updated_at":"2012-05-19T07:04:31Z","files":{},"git_push_url":"git@gist.github.com:2729810.git","url":"https://api.github.com/gists/2729810","id":"2729810","git_pull_url":"git://gist.github.com/2729810.git","description":"Description edited by PyGitHub","html_url":"https://gist.github.com/2729810","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}}},"public":true,"repo":{"url":"https://api.github.com/repos//","name":"/"},"created_at":"2012-05-19T07:04:31Z","id":"1553727091","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6"}},{"type":"GistEvent","payload":{"action":"create","gist":{"created_at":"2012-05-19T07:00:58Z","comments":0,"public":true,"updated_at":"2012-05-19T07:00:58Z","files":{},"git_push_url":"git@gist.github.com:2729810.git","url":"https://api.github.com/gists/2729810","id":"2729810","git_pull_url":"git://gist.github.com/2729810.git","description":"Gist created by PyGithub","html_url":"https://gist.github.com/2729810","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}}},"public":true,"repo":{"url":"https://api.github.com/repos//","name":"/"},"created_at":"2012-05-19T07:00:58Z","id":"1553726807","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"8cca4872ed04efb0252fbc70431b615931193145","size":3,"push_id":79265481,"commits":[{"sha":"030b23a3a9112864e922a965254428beefebbe42","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/030b23a3a9112864e922a965254428beefebbe42","distinct":true,"message":"Test Issue attributes"},{"sha":"55779ebbb4d8848ca7a2cf6ffbeb029239dbfdf2","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/55779ebbb4d8848ca7a2cf6ffbeb029239dbfdf2","distinct":true,"message":"Test attributes of NamedUser"},{"sha":"8cca4872ed04efb0252fbc70431b615931193145","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/8cca4872ed04efb0252fbc70431b615931193145","distinct":true,"message":"Test attributes of commit comments"}],"ref":"refs/heads/topic/RewriteWithGeneratedCode"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-18T20:30:16Z","id":"1553628294","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6"}},{"type":"CommitCommentEvent","payload":{"comment":{"position":3,"created_at":"2012-05-18T20:11:17Z","line":25,"body":"This comment is here only to test PyGithub...","updated_at":"2012-05-18T20:11:17Z","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1349654","id":1349654,"path":"codegen/templates/GithubObject.MethodBody.UseResult.py","html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1349654","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-18T20:11:17Z","id":"1553622265","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6"}},{"type":"CommitCommentEvent","payload":{"comment":{"position":null,"created_at":"2012-05-18T08:59:28Z","line":null,"body":"No, it has nothing to do with auto-completion in IDEs :D\n\nGithub API v3 sends only the main part of objects in reply to some requests. So, if the user wants an attribute that has not been received yet, I have to do another request to complete the object.\n\nYet, in version 1.0 (see the milesone), my library will be much more readable for IDEs and their auto-completion mechanisms, because I am giving up the meta-description that I used until 0.6, and I'm now generating much more traditional code, that you will be able to explore as if it was written manually.\n\nIf you want to take the time to open an issue about auto-completion in IDEs, I'll deal with it in milestion 1.0.\n\nThanks !","updated_at":"2012-05-18T08:59:28Z","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1347083","id":1347083,"path":null,"html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1347083","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-18T08:59:28Z","id":"1553410839","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6"}},{"type":"WatchEvent","payload":{"action":"started"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-18T05:29:53Z","id":"1553373866","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-18T05:27:40Z","body":"Thank you for your feedback.\n\nI have indeed not yet implemented this feature because I have no real use of it: each API call is more than half a second long, so it's hard to reach the rate limit.\n\nAnyway, it is easy to extract the rate limiting headers, so I will add an attribute to the Github class to give access to their last value.\n\nExpect it in version 1.0. I will set an expected date on the milestone during the week-end.\n","updated_at":"2012-05-18T05:27:40Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5780183","id":5780183,"user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},"action":"created","issue":{"number":26,"created_at":"2012-05-17T12:02:05Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"title":"Rate limiting?","comments":1,"body":"Hi!\n\nI tried to find a function which returns the number of API requests I have remaining due to [rate limiting](http://developer.github.com/v3/#rate-limiting). Is this somewhere in the library and I can't find it? If not, I think it would be a great feature to have, to be able to keep track of how many requests certain actions use up.","updated_at":"2012-05-18T05:27:40Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/26","id":4622816,"assignee":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":{"number":2,"created_at":"2012-03-08T12:22:28Z","due_on":null,"title":"Version 1.0: coherent public interface","creator":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","id":93547,"closed_issues":1,"open_issues":10,"description":"","state":"open"},"closed_at":null,"html_url":"https://github.com/jacquev6/PyGithub/issues/26","labels":[],"user":{"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","id":327442,"login":"bilderbuchi"},"state":"open"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-18T05:27:40Z","id":"1553373556","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"c75cb64d906ce4e21c509102004d4f9770348bf7","size":12,"push_id":79118465,"ref":"refs/heads/topic/RewriteWithGeneratedCode","commits":[{"sha":"93007180f6796f83a57f66f94b3ac58b1ae8ece7","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/93007180f6796f83a57f66f94b3ac58b1ae8ece7","distinct":true,"message":"Remove useless code"},{"sha":"5a943ad0b255797cea79188bb346c670076062ce","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5a943ad0b255797cea79188bb346c670076062ce","distinct":true,"message":"Test Organization attributes"},{"sha":"dc1a8f8c9d9b8fb90f93a484629eb3f7a5d23dcc","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/dc1a8f8c9d9b8fb90f93a484629eb3f7a5d23dcc","distinct":true,"message":"Assert that we know all attributes\n\nTo be removed before release, since this would break the application if\ngithub.com adds a new attribute"},{"sha":"6ba5baad7ec39d7eed64049624c6519750fcb297","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6ba5baad7ec39d7eed64049624c6519750fcb297","distinct":true,"message":"Test Repository.create_git_blob"},{"sha":"f23ed6341da0fcf7a416d04ad0ab252ed55308a5","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/f23ed6341da0fcf7a416d04ad0ab252ed55308a5","distinct":true,"message":"Create a GitTreeElement class"},{"sha":"8956796e7f462a49f499eac52fab901cdb59abdb","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/8956796e7f462a49f499eac52fab901cdb59abdb","distinct":true,"message":"Be explicit about complete-ability"},{"sha":"71b0ede8dec2436643ca0d6374c603f3794a1562","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/71b0ede8dec2436643ca0d6374c603f3794a1562","distinct":true,"message":"Remove complete-ability from git objects"},{"sha":"350c7a3726311e83a903cc02ec8f080010fcef54","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/350c7a3726311e83a903cc02ec8f080010fcef54","distinct":true,"message":"Remove repeated code"},{"sha":"a72d8b135841aa00158054d229c8e18333075cd4","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a72d8b135841aa00158054d229c8e18333075cd4","distinct":true,"message":"Improve management of lazy completion"},{"sha":"6945921c529be14c3a8f566dd1e483674516d46d","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6945921c529be14c3a8f566dd1e483674516d46d","distinct":true,"message":"Use NoCompletion when creating an object from the result of a request"},{"sha":"1a20e048f214d625622e5f1b5494d99cb247f98b","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1a20e048f214d625622e5f1b5494d99cb247f98b","distinct":true,"message":"Test attributes of Milestone"},{"sha":"c75cb64d906ce4e21c509102004d4f9770348bf7","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c75cb64d906ce4e21c509102004d4f9770348bf7","distinct":true,"message":"Improve message when we check that we know all attributes"}]},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-18T05:18:18Z","id":"1553372245","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"c75cb64d906ce4e21c509102004d4f9770348bf7","size":21,"push_id":77865457,"ref":"refs/heads/tmp","commits":[{"sha":"5c18c20ec4e790792635e22cc1065ec2956ebd3e","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/5c18c20ec4e790792635e22cc1065ec2956ebd3e","distinct":true,"message":"Change sys.path to import the development version in tests!"},{"sha":"2e76c9b7c569bfa5b8bf0a13d2049002ff73fa9a","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/2e76c9b7c569bfa5b8bf0a13d2049002ff73fa9a","distinct":true,"message":"Test GitTag attributes"},{"sha":"71b8d5a3cc805c017c13c7adbcc49142a02c53fb","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/71b8d5a3cc805c017c13c7adbcc49142a02c53fb","distinct":true,"message":"Re-order tests"},{"sha":"79ce8784291025d4235be9e4fae1ecf6d92d8cbf","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/79ce8784291025d4235be9e4fae1ecf6d92d8cbf","distinct":true,"message":"Test Repository.create_git_ref, GitRef.edit and .delete (needs a manual edition of Repository.py)"},{"sha":"1a886afbd6529793ed24719c107c1ad2c313fb25","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/1a886afbd6529793ed24719c107c1ad2c313fb25","distinct":true,"message":"Reorganize test fixtures"},{"sha":"7c4fc487c2a06f38ccabdaf60ae0f8d4c3442356","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/7c4fc487c2a06f38ccabdaf60ae0f8d4c3442356","distinct":true,"message":"Test AuthenticatedUser.create_repo (requires manual edition of generated code)"},{"sha":"9cc24b0d3f0fd810836c84354a9c4fe7ea96ad0f","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/9cc24b0d3f0fd810836c84354a9c4fe7ea96ad0f","distinct":true,"message":"Custom url for AuthenticatedUser"},{"sha":"2cd6dbce91804d33b15332367dc9ab35c9d59f15","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/2cd6dbce91804d33b15332367dc9ab35c9d59f15","distinct":true,"message":"Test Repository.edit"},{"sha":"d052371c15e2b3fcd2fd347518f1bf2e257e6382","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/d052371c15e2b3fcd2fd347518f1bf2e257e6382","distinct":true,"message":"Create a class Permissions"},{"sha":"93007180f6796f83a57f66f94b3ac58b1ae8ece7","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/93007180f6796f83a57f66f94b3ac58b1ae8ece7","distinct":true,"message":"Remove useless code"},{"sha":"5a943ad0b255797cea79188bb346c670076062ce","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/5a943ad0b255797cea79188bb346c670076062ce","distinct":true,"message":"Test Organization attributes"},{"sha":"dc1a8f8c9d9b8fb90f93a484629eb3f7a5d23dcc","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/dc1a8f8c9d9b8fb90f93a484629eb3f7a5d23dcc","distinct":true,"message":"Assert that we know all attributes\n\nTo be removed before release, since this would break the application if\ngithub.com adds a new attribute"},{"sha":"6ba5baad7ec39d7eed64049624c6519750fcb297","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/6ba5baad7ec39d7eed64049624c6519750fcb297","distinct":true,"message":"Test Repository.create_git_blob"},{"sha":"f23ed6341da0fcf7a416d04ad0ab252ed55308a5","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/f23ed6341da0fcf7a416d04ad0ab252ed55308a5","distinct":true,"message":"Create a GitTreeElement class"},{"sha":"8956796e7f462a49f499eac52fab901cdb59abdb","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/8956796e7f462a49f499eac52fab901cdb59abdb","distinct":true,"message":"Be explicit about complete-ability"},{"sha":"71b0ede8dec2436643ca0d6374c603f3794a1562","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/71b0ede8dec2436643ca0d6374c603f3794a1562","distinct":true,"message":"Remove complete-ability from git objects"},{"sha":"350c7a3726311e83a903cc02ec8f080010fcef54","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/350c7a3726311e83a903cc02ec8f080010fcef54","distinct":true,"message":"Remove repeated code"},{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/a72d8b135841aa00158054d229c8e18333075cd4","message":"Improve management of lazy completion","distinct":true,"sha":"a72d8b135841aa00158054d229c8e18333075cd4"},{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/6945921c529be14c3a8f566dd1e483674516d46d","message":"Use NoCompletion when creating an object from the result of a request","distinct":true,"sha":"6945921c529be14c3a8f566dd1e483674516d46d"},{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/1a20e048f214d625622e5f1b5494d99cb247f98b","message":"Test attributes of Milestone","distinct":true,"sha":"1a20e048f214d625622e5f1b5494d99cb247f98b"}]},"public":false,"repo":{"url":"https://api.github.com/repos/jacquev6/Candidates","id":1592290,"name":"jacquev6/Candidates"},"created_at":"2012-05-11T13:50:38Z","id":"1551159050","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"d052371c15e2b3fcd2fd347518f1bf2e257e6382","size":1,"push_id":77713594,"commits":[{"sha":"d052371c15e2b3fcd2fd347518f1bf2e257e6382","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/d052371c15e2b3fcd2fd347518f1bf2e257e6382","distinct":true,"message":"Create a class Permissions"}],"ref":"refs/heads/topic/RewriteWithGeneratedCode"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-10T20:00:26Z","id":"1550890586","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"2cd6dbce91804d33b15332367dc9ab35c9d59f15","size":8,"push_id":77707669,"ref":"refs/heads/topic/RewriteWithGeneratedCode","commits":[{"sha":"5c18c20ec4e790792635e22cc1065ec2956ebd3e","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5c18c20ec4e790792635e22cc1065ec2956ebd3e","distinct":true,"message":"Change sys.path to import the development version in tests!"},{"sha":"2e76c9b7c569bfa5b8bf0a13d2049002ff73fa9a","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2e76c9b7c569bfa5b8bf0a13d2049002ff73fa9a","distinct":true,"message":"Test GitTag attributes"},{"sha":"71b8d5a3cc805c017c13c7adbcc49142a02c53fb","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/71b8d5a3cc805c017c13c7adbcc49142a02c53fb","distinct":true,"message":"Re-order tests"},{"sha":"79ce8784291025d4235be9e4fae1ecf6d92d8cbf","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/79ce8784291025d4235be9e4fae1ecf6d92d8cbf","distinct":true,"message":"Test Repository.create_git_ref, GitRef.edit and .delete (needs a manual edition of Repository.py)"},{"sha":"1a886afbd6529793ed24719c107c1ad2c313fb25","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1a886afbd6529793ed24719c107c1ad2c313fb25","distinct":true,"message":"Reorganize test fixtures"},{"sha":"7c4fc487c2a06f38ccabdaf60ae0f8d4c3442356","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/7c4fc487c2a06f38ccabdaf60ae0f8d4c3442356","distinct":true,"message":"Test AuthenticatedUser.create_repo (requires manual edition of generated code)"},{"sha":"9cc24b0d3f0fd810836c84354a9c4fe7ea96ad0f","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/9cc24b0d3f0fd810836c84354a9c4fe7ea96ad0f","distinct":true,"message":"Custom url for AuthenticatedUser"},{"sha":"2cd6dbce91804d33b15332367dc9ab35c9d59f15","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2cd6dbce91804d33b15332367dc9ab35c9d59f15","distinct":true,"message":"Test Repository.edit"}]},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-10T19:33:23Z","id":"1550880794","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6"}},{"type":"CreateEvent","payload":{"master_branch":"master","ref_type":"repository","description":null,"ref":null},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/TestPyGithub","id":4288693,"name":"jacquev6/TestPyGithub"},"created_at":"2012-05-10T19:17:13Z","id":"1550874963","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"4303c5b90e2216d927155e9609436ccb8984c495","size":0,"push_id":77697827,"commits":[],"ref":"refs/heads/BranchCreatedByPyGithub"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-10T18:49:21Z","id":"1550864260","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"04cde900a0775b51f762735637bd30de392a2793","size":1,"push_id":77697824,"ref":"refs/heads/BranchCreatedByPyGithub","commits":[{"sha":"04cde900a0775b51f762735637bd30de392a2793","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/04cde900a0775b51f762735637bd30de392a2793","distinct":false,"message":"On the way to code generation instead of meta-description\n\n(lots of useless eratic history squashed together in one commit)"}]},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-10T18:49:21Z","id":"1550864258","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"4303c5b90e2216d927155e9609436ccb8984c495","size":2,"push_id":77697820,"commits":[{"sha":"2a7e80e6421c5d4d201d60619068dea6bae612cb","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2a7e80e6421c5d4d201d60619068dea6bae612cb","distinct":false,"message":"Publish version 0.6"},{"sha":"4303c5b90e2216d927155e9609436ccb8984c495","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4303c5b90e2216d927155e9609436ccb8984c495","distinct":false,"message":"Merge branch 'develop'"}],"ref":"refs/heads/BranchCreatedByPyGithub"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-10T18:49:20Z","id":"1550864252","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"4c4e551d39f77beb507cd745408284eb0f8078ec","size":9,"push_id":77687307,"commits":[{"sha":"cd68559b0861ad2be12be29b9d4b7ec66e885191","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cd68559b0861ad2be12be29b9d4b7ec66e885191","distinct":true,"message":"Separate asserts on type and assignments of values of attributes"},{"sha":"d631e83b7901b0a0b6061b361130700a79505319","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/d631e83b7901b0a0b6061b361130700a79505319","distinct":true,"message":"Move files around"},{"sha":"d6efda12012dfb0c35f81d2c291bed575d2f9336","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/d6efda12012dfb0c35f81d2c291bed575d2f9336","distinct":true,"message":"Remove old tests"},{"sha":"595e88cd5537208958f90d6727965cc7918f09a7","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/595e88cd5537208958f90d6727965cc7918f09a7","distinct":true,"message":"Rename new tests as only tests"},{"sha":"283da5e7de6a4a3b6aaae7045909d70b643ad380","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/283da5e7de6a4a3b6aaae7045909d70b643ad380","distinct":true,"message":"Fix code generation and tests after reorganization"},{"sha":"a78d82212b67402527d1a0200300e772bc889620","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a78d82212b67402527d1a0200300e772bc889620","distinct":true,"message":"Modularize integration tests"},{"sha":"efa58887aa170aefe844d1c4a3f6c9d8d030548d","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/efa58887aa170aefe844d1c4a3f6c9d8d030548d","distinct":true,"message":"Test Branch and Commit attributes"},{"sha":"3c71195916d2f3352ca354d99115709a9334617b","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/3c71195916d2f3352ca354d99115709a9334617b","distinct":true,"message":"Test GitRef attributes"},{"sha":"4c4e551d39f77beb507cd745408284eb0f8078ec","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4c4e551d39f77beb507cd745408284eb0f8078ec","distinct":true,"message":"Toto"}],"ref":"refs/heads/topic/RewriteWithGeneratedCode"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-10T18:02:02Z","id":"1550846032","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"4c4e551d39f77beb507cd745408284eb0f8078ec","size":1,"push_id":77642805,"commits":[{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/4c4e551d39f77beb507cd745408284eb0f8078ec","message":"Toto","distinct":true,"sha":"4c4e551d39f77beb507cd745408284eb0f8078ec"}],"ref":"refs/heads/tmp"},"public":false,"repo":{"url":"https://api.github.com/repos/jacquev6/Candidates","id":1592290,"name":"jacquev6/Candidates"},"created_at":"2012-05-10T14:55:13Z","id":"1550770489","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"3c71195916d2f3352ca354d99115709a9334617b","size":25,"push_id":77640970,"ref":"refs/heads/tmp","commits":[{"sha":"bc08112dce9be4227c90ad812ff4b6e6dbfc81c5","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/bc08112dce9be4227c90ad812ff4b6e6dbfc81c5","distinct":true,"message":"Do not try to __complete objects without url"},{"sha":"ead8fdd1659f743a060679d77ec94deaa7ac92a0","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/ead8fdd1659f743a060679d77ec94deaa7ac92a0","distinct":true,"message":"Use a small eval instead of a big exec"},{"sha":"c559faa6804f4066fee641a079c008f570adffb5","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/c559faa6804f4066fee641a079c008f570adffb5","distinct":true,"message":"Check types of received attributes"},{"sha":"114db51fe79cad37e50bc3bc82c183c7d2845316","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/114db51fe79cad37e50bc3bc82c183c7d2845316","distinct":true,"message":"Test attributes of Repository"},{"sha":"5e4cfeda7f5a3f9c8738ba953d704b7e1d28a3f6","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/5e4cfeda7f5a3f9c8738ba953d704b7e1d28a3f6","distinct":true,"message":"Test attributes of GitTree (needs a manual change in url in Repository.get_git_tree)"},{"sha":"a03ff8d09ef2f1d55284b8797dd5b9a95b19f917","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/a03ff8d09ef2f1d55284b8797dd5b9a95b19f917","distinct":true,"message":"Explanation about a toto"},{"sha":"d577b691527f5c7f6f663ceef42cba472aae7209","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/d577b691527f5c7f6f663ceef42cba472aae7209","distinct":true,"message":"Further simplify record mode"},{"sha":"e1afa5aa3ca92f26aa8dfc3c3d979c1d6d573b39","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/e1afa5aa3ca92f26aa8dfc3c3d979c1d6d573b39","distinct":true,"message":"Standardize detection of replay problems"},{"sha":"ec389d6b62275ccc07f935184cdcbd82bb9124cd","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/ec389d6b62275ccc07f935184cdcbd82bb9124cd","distinct":true,"message":"Remove more code again"},{"sha":"d4a6a3a344e642672fd3107943bf8899326e9ee1","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/d4a6a3a344e642672fd3107943bf8899326e9ee1","distinct":true,"message":"Fix urls for git objects"},{"sha":"1612b7bcf7b3449c3820c2e49033894e7135739f","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/1612b7bcf7b3449c3820c2e49033894e7135739f","distinct":true,"message":"Test GitBlob attributes"},{"sha":"954177f98928d5768b02d3cf6340fddcad697410","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/954177f98928d5768b02d3cf6340fddcad697410","distinct":true,"message":"Re-order tests"},{"sha":"80b4e550f354ff5285717eb096839ea25b238fad","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/80b4e550f354ff5285717eb096839ea25b238fad","distinct":true,"message":"Test attributes of GitCommit"},{"sha":"f23ad16aaaf4c5b2f312317cabf3c3e67dccc92b","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/f23ad16aaaf4c5b2f312317cabf3c3e67dccc92b","distinct":true,"message":"Add a GitAuthor class"},{"sha":"f14d761344782215c94a23be806a357e5d7ab58d","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/f14d761344782215c94a23be806a357e5d7ab58d","distinct":true,"message":"Structure some attributes"},{"sha":"b46ed0dfde5ad02d3b91eb54a41c5ed960710eae","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/b46ed0dfde5ad02d3b91eb54a41c5ed960710eae","distinct":true,"message":"More assertions"},{"sha":"1292bf0e22c796e91cc3d6e24b544aece8c21f2a","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a","distinct":true,"message":"Remove completion functions from GitAuthor"},{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/cd68559b0861ad2be12be29b9d4b7ec66e885191","message":"Separate asserts on type and assignments of values of attributes","distinct":true,"sha":"cd68559b0861ad2be12be29b9d4b7ec66e885191"},{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/d631e83b7901b0a0b6061b361130700a79505319","message":"Move files around","distinct":true,"sha":"d631e83b7901b0a0b6061b361130700a79505319"},{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/d6efda12012dfb0c35f81d2c291bed575d2f9336","message":"Remove old tests","distinct":true,"sha":"d6efda12012dfb0c35f81d2c291bed575d2f9336"}]},"public":false,"repo":{"url":"https://api.github.com/repos/jacquev6/Candidates","id":1592290,"name":"jacquev6/Candidates"},"created_at":"2012-05-10T14:48:13Z","id":"1550767239","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"1292bf0e22c796e91cc3d6e24b544aece8c21f2a","size":17,"push_id":77421832,"commits":[{"sha":"bc08112dce9be4227c90ad812ff4b6e6dbfc81c5","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/bc08112dce9be4227c90ad812ff4b6e6dbfc81c5","distinct":true,"message":"Do not try to __complete objects without url"},{"sha":"ead8fdd1659f743a060679d77ec94deaa7ac92a0","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ead8fdd1659f743a060679d77ec94deaa7ac92a0","distinct":true,"message":"Use a small eval instead of a big exec"},{"sha":"c559faa6804f4066fee641a079c008f570adffb5","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c559faa6804f4066fee641a079c008f570adffb5","distinct":true,"message":"Check types of received attributes"},{"sha":"114db51fe79cad37e50bc3bc82c183c7d2845316","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/114db51fe79cad37e50bc3bc82c183c7d2845316","distinct":true,"message":"Test attributes of Repository"},{"sha":"5e4cfeda7f5a3f9c8738ba953d704b7e1d28a3f6","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5e4cfeda7f5a3f9c8738ba953d704b7e1d28a3f6","distinct":true,"message":"Test attributes of GitTree (needs a manual change in url in Repository.get_git_tree)"},{"sha":"a03ff8d09ef2f1d55284b8797dd5b9a95b19f917","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a03ff8d09ef2f1d55284b8797dd5b9a95b19f917","distinct":true,"message":"Explanation about a toto"},{"sha":"d577b691527f5c7f6f663ceef42cba472aae7209","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/d577b691527f5c7f6f663ceef42cba472aae7209","distinct":true,"message":"Further simplify record mode"},{"sha":"e1afa5aa3ca92f26aa8dfc3c3d979c1d6d573b39","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e1afa5aa3ca92f26aa8dfc3c3d979c1d6d573b39","distinct":true,"message":"Standardize detection of replay problems"},{"sha":"ec389d6b62275ccc07f935184cdcbd82bb9124cd","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ec389d6b62275ccc07f935184cdcbd82bb9124cd","distinct":true,"message":"Remove more code again"},{"sha":"d4a6a3a344e642672fd3107943bf8899326e9ee1","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/d4a6a3a344e642672fd3107943bf8899326e9ee1","distinct":true,"message":"Fix urls for git objects"},{"sha":"1612b7bcf7b3449c3820c2e49033894e7135739f","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1612b7bcf7b3449c3820c2e49033894e7135739f","distinct":true,"message":"Test GitBlob attributes"},{"sha":"954177f98928d5768b02d3cf6340fddcad697410","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/954177f98928d5768b02d3cf6340fddcad697410","distinct":true,"message":"Re-order tests"},{"sha":"80b4e550f354ff5285717eb096839ea25b238fad","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/80b4e550f354ff5285717eb096839ea25b238fad","distinct":true,"message":"Test attributes of GitCommit"},{"sha":"f23ad16aaaf4c5b2f312317cabf3c3e67dccc92b","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/f23ad16aaaf4c5b2f312317cabf3c3e67dccc92b","distinct":true,"message":"Add a GitAuthor class"},{"sha":"f14d761344782215c94a23be806a357e5d7ab58d","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/f14d761344782215c94a23be806a357e5d7ab58d","distinct":true,"message":"Structure some attributes"},{"sha":"b46ed0dfde5ad02d3b91eb54a41c5ed960710eae","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b46ed0dfde5ad02d3b91eb54a41c5ed960710eae","distinct":true,"message":"More assertions"},{"sha":"1292bf0e22c796e91cc3d6e24b544aece8c21f2a","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a","distinct":true,"message":"Remove completion functions from GitAuthor"}],"ref":"refs/heads/topic/RewriteWithGeneratedCode"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-09T16:22:49Z","id":"1550379824","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"41e11740d1921001a2e2474dbe0fa75d3a861849","size":31,"push_id":77401200,"ref":"refs/heads/tmp","commits":[{"sha":"90ff8697b7039fcc1f12369b421f31319fd996df","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/90ff8697b7039fcc1f12369b421f31319fd996df","distinct":true,"message":"Simplify definition of list types"},{"sha":"c01d36a64eb6c4e69e3ac2f6ade27d793f7f2300","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/c01d36a64eb6c4e69e3ac2f6ade27d793f7f2300","distinct":true,"message":"Remove underscores in keys in description, to allow hunting underscores in values"},{"sha":"07e994823e22a01d11612f141c2c0f9336ae5bf5","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/07e994823e22a01d11612f141c2c0f9336ae5bf5","distinct":true,"message":"Fix testGists"},{"sha":"5be7fed4c9533dedffe03c7f908a608a8e6fe221","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/5be7fed4c9533dedffe03c7f908a608a8e6fe221","distinct":true,"message":"Toto"},{"sha":"fcd377e377c23f87779d7940c3e894fd5844aad2","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/fcd377e377c23f87779d7940c3e894fd5844aad2","distinct":true,"message":"Fix testIssuesForAuthenticatedUser"},{"sha":"84dff1cca70806dd51440fef0634626fd5180a59","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/84dff1cca70806dd51440fef0634626fd5180a59","distinct":true,"message":"Fix testKeys"},{"sha":"e614a30e129b8b7a54173571a379ffe976696578","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/e614a30e129b8b7a54173571a379ffe976696578","distinct":true,"message":"Fix testRepositoryCompare"},{"sha":"74d7704bcd1c291b9003b5785b5978a8036c0505","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/74d7704bcd1c291b9003b5785b5978a8036c0505","distinct":true,"message":"Repository.get_languages => fix testRepositoryDetails"},{"sha":"4b820e09c9487b8f92a8fc098c6e708d16219ec1","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/4b820e09c9487b8f92a8fc098c6e708d16219ec1","distinct":true,"message":"Remove an old toto"},{"sha":"1625a645de547b29e9de0f40d40cbcdc4a72f29d","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/1625a645de547b29e9de0f40d40cbcdc4a72f29d","distinct":true,"message":"Start to rewrite integration test"},{"sha":"1c2f5c78cc8c018775e389a2520e570a707118a6","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/1c2f5c78cc8c018775e389a2520e570a707118a6","distinct":true,"message":"Improve coverage"},{"sha":"26676020797823c0ff91ccb3cca6112d4b93261e","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/26676020797823c0ff91ccb3cca6112d4b93261e","distinct":true,"message":"First recording for new integration tests"},{"sha":"523f2fdd1dcd2e58bc30f6541e53d9858cfa244f","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/523f2fdd1dcd2e58bc30f6541e53d9858cfa244f","distinct":true,"message":"Fix recording"},{"sha":"00904f33330d690994a973cd0e021c498e826bc5","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/00904f33330d690994a973cd0e021c498e826bc5","distinct":true,"message":"Cover AuthenticatedUser.edit"},{"sha":"656556341233c62324445eb3f5cef6331a7578d3","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/656556341233c62324445eb3f5cef6331a7578d3","distinct":true,"message":"Ensure that recorded calls are all replayed"},{"sha":"824b45490dd3b8b2fae4bd4201f195249e26e8a1","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/824b45490dd3b8b2fae4bd4201f195249e26e8a1","distinct":true,"message":"Add a Plan class"},{"sha":"eed1e43c9588a76e230e1599fb200a904fe89bd8","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/eed1e43c9588a76e230e1599fb200a904fe89bd8","distinct":true,"message":"Check types of received attributes"},{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/56dc5d118f17e173eff2bc438681c5903c6444c2","message":"Test attributes of Repository","distinct":true,"sha":"56dc5d118f17e173eff2bc438681c5903c6444c2"},{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/e5b6e83d493add2052fe63bde12c47cddf7fd7cf","message":"Test attributes of GitTree (needs a manual change in url in Repository.get_git_tree)","distinct":true,"sha":"e5b6e83d493add2052fe63bde12c47cddf7fd7cf"},{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques"},"url":"https://api.github.com/repos/jacquev6/Candidates/commits/d1c0dbdd50de73300e408800f9594aff65765ea4","message":"Explanation about a toto","distinct":true,"sha":"d1c0dbdd50de73300e408800f9594aff65765ea4"}]},"public":false,"repo":{"url":"https://api.github.com/repos/jacquev6/Candidates","id":1592290,"name":"jacquev6/Candidates"},"created_at":"2012-05-09T14:58:19Z","id":"1550344090","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"824b45490dd3b8b2fae4bd4201f195249e26e8a1","size":1,"push_id":77223918,"commits":[{"sha":"824b45490dd3b8b2fae4bd4201f195249e26e8a1","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/824b45490dd3b8b2fae4bd4201f195249e26e8a1","distinct":true,"message":"Add a Plan class"}],"ref":"refs/heads/topic/RewriteWithGeneratedCode"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-08T19:27:45Z","id":"1550038588","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"f2ccff31671f56b9a1db152056c40fc5118ac403","size":11,"push_id":77220608,"commits":[{"sha":"84dff1cca70806dd51440fef0634626fd5180a59","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/84dff1cca70806dd51440fef0634626fd5180a59","distinct":true,"message":"Fix testKeys"},{"sha":"e614a30e129b8b7a54173571a379ffe976696578","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e614a30e129b8b7a54173571a379ffe976696578","distinct":true,"message":"Fix testRepositoryCompare"},{"sha":"74d7704bcd1c291b9003b5785b5978a8036c0505","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/74d7704bcd1c291b9003b5785b5978a8036c0505","distinct":true,"message":"Repository.get_languages => fix testRepositoryDetails"},{"sha":"4b820e09c9487b8f92a8fc098c6e708d16219ec1","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4b820e09c9487b8f92a8fc098c6e708d16219ec1","distinct":true,"message":"Remove an old toto"},{"sha":"1625a645de547b29e9de0f40d40cbcdc4a72f29d","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1625a645de547b29e9de0f40d40cbcdc4a72f29d","distinct":true,"message":"Start to rewrite integration test"},{"sha":"1c2f5c78cc8c018775e389a2520e570a707118a6","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1c2f5c78cc8c018775e389a2520e570a707118a6","distinct":true,"message":"Improve coverage"},{"sha":"26676020797823c0ff91ccb3cca6112d4b93261e","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/26676020797823c0ff91ccb3cca6112d4b93261e","distinct":true,"message":"First recording for new integration tests"},{"sha":"523f2fdd1dcd2e58bc30f6541e53d9858cfa244f","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/523f2fdd1dcd2e58bc30f6541e53d9858cfa244f","distinct":true,"message":"Fix recording"},{"sha":"00904f33330d690994a973cd0e021c498e826bc5","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/00904f33330d690994a973cd0e021c498e826bc5","distinct":true,"message":"Cover AuthenticatedUser.edit"},{"sha":"656556341233c62324445eb3f5cef6331a7578d3","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/656556341233c62324445eb3f5cef6331a7578d3","distinct":true,"message":"Ensure that recorded calls are all replayed"},{"sha":"f2ccff31671f56b9a1db152056c40fc5118ac403","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/f2ccff31671f56b9a1db152056c40fc5118ac403","distinct":true,"message":"Add a Plan class"}],"ref":"refs/heads/topic/RewriteWithGeneratedCode"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-08T19:12:55Z","id":"1550033011","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"658e8e1ff5d4846d7aa709e516432843d39ad3d5","size":15,"push_id":77097011,"commits":[{"sha":"b9d318a09a89d71a9025da545e0883ee06bb2e40","author":{"name":"Baylor Rae'","email":"baylorrae@gmail.com"},"url":"https://api.github.com/repos/jacquev6/developer.github.com/commits/b9d318a09a89d71a9025da545e0883ee06bb2e40","distinct":true,"message":"fix a typo that didn't create a link"},{"sha":"fe434fe8d0dc57d06d8491ce0ce8d407e2634170","author":{"name":"Chris McDonald","email":"XWraithanX@gmail.com"},"url":"https://api.github.com/repos/jacquev6/developer.github.com/commits/fe434fe8d0dc57d06d8491ce0ce8d407e2634170","distinct":true,"message":"spelling fix: tecnique -> technique"},{"sha":"5c8f53cd01538eaf4a097636861dd87408bdd61e","author":{"name":"Clint Shryock","email":"clint@ctshryock.com"},"url":"https://api.github.com/repos/jacquev6/developer.github.com/commits/5c8f53cd01538eaf4a097636861dd87408bdd61e","distinct":true,"message":"Fix small typo\n\n\"a comments\" -> \"a comment\""},{"sha":"f8a3a353705e85132373c40d029af8b544de44b6","author":{"name":"Tyler Stalder","email":"tyler@stalder.me"},"url":"https://api.github.com/repos/jacquev6/developer.github.com/commits/f8a3a353705e85132373c40d029af8b544de44b6","distinct":true,"message":"Fix the links to the the newer /settings/applications/new"},{"sha":"9d11e103e1b5f01088d60a9d9f765b78565c4e7d","author":{"name":"John Barnette","email":"jbarnette@gmail.com"},"url":"https://api.github.com/repos/jacquev6/developer.github.com/commits/9d11e103e1b5f01088d60a9d9f765b78565c4e7d","distinct":true,"message":"Merge pull request #70 from BaylorRae/patch-1\n\nfix a typo that didn't create a link"},{"sha":"4036368a0ecfc7676e421ab81a9dd4beb566c5fb","author":{"name":"John Barnette","email":"jbarnette@gmail.com"},"url":"https://api.github.com/repos/jacquev6/developer.github.com/commits/4036368a0ecfc7676e421ab81a9dd4beb566c5fb","distinct":true,"message":"Merge pull request #71 from wraithan/patch-1\n\nspelling fix: tecnique -> technique"},{"sha":"c3a412b425e699f4d2bc5cea9c5bf90287bd8c39","author":{"name":"John Barnette","email":"jbarnette@gmail.com"},"url":"https://api.github.com/repos/jacquev6/developer.github.com/commits/c3a412b425e699f4d2bc5cea9c5bf90287bd8c39","distinct":true,"message":"Merge pull request #73 from ctshryock/mime-typo\n\nFix small typo on /v3/mime/"},{"sha":"338fc8c0e1ebd58c02fd3dd7197032947f4410bd","author":{"name":"John Barnette","email":"jbarnette@gmail.com"},"url":"https://api.github.com/repos/jacquev6/developer.github.com/commits/338fc8c0e1ebd58c02fd3dd7197032947f4410bd","distinct":true,"message":"Merge pull request #74 from tylerstalder/patch-1\n\nFix the links to the the newer /settings/applications/new"},{"sha":"52b8a57eca396da67c8a3fb0d7b022348324cbb3","author":{"name":"John Barnette","email":"john@jbarnette.com"},"url":"https://api.github.com/repos/jacquev6/developer.github.com/commits/52b8a57eca396da67c8a3fb0d7b022348324cbb3","distinct":true,"message":"Make new auth link anchor consistent. (@kastiglione)"},{"sha":"11fa772024c1b6ed578b5de95121f5f5935528e9","author":{"name":"John Barnette","email":"john@jbarnette.com"},"url":"https://api.github.com/repos/jacquev6/developer.github.com/commits/11fa772024c1b6ed578b5de95121f5f5935528e9","distinct":true,"message":"Squash an encoding issue."},{"sha":"1773daffb48b4d48f34ad145f22a7fa8e655625f","author":{"name":"John Barnette","email":"john@jbarnette.com"},"url":"https://api.github.com/repos/jacquev6/developer.github.com/commits/1773daffb48b4d48f34ad145f22a7fa8e655625f","distinct":true,"message":"Stop lying."},{"sha":"da0ecbdfd9cb3d3b23299c05f0325f92acf07771","author":{"name":"Jason Salaz","email":"jsalaz@github.com"},"url":"https://api.github.com/repos/jacquev6/developer.github.com/commits/da0ecbdfd9cb3d3b23299c05f0325f92acf07771","distinct":true,"message":"Suggested clarification from Bradley at Logos -> https://support.enterprise.github.com/tickets/478"},{"sha":"63cd091f4ca04a3b9b3b960d3ad588125d2c2e1b","author":{"name":"rick","email":"technoweenie@gmail.com"},"url":"https://api.github.com/repos/jacquev6/developer.github.com/commits/63cd091f4ca04a3b9b3b960d3ad588125d2c2e1b","distinct":true,"message":"Update content/v3.md"},{"sha":"d6599c82af8cfd98f7cb2e815d64ca3af890bb3e","author":{"name":"rick","email":"technoweenie@gmail.com"},"url":"https://api.github.com/repos/jacquev6/developer.github.com/commits/d6599c82af8cfd98f7cb2e815d64ca3af890bb3e","distinct":true,"message":"Update content/v3.md"},{"sha":"658e8e1ff5d4846d7aa709e516432843d39ad3d5","author":{"name":"rick","email":"technoweenie@gmail.com"},"url":"https://api.github.com/repos/jacquev6/developer.github.com/commits/658e8e1ff5d4846d7aa709e516432843d39ad3d5","distinct":true,"message":"pull request changes"}],"ref":"refs/heads/master"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/developer.github.com","id":3361136,"name":"jacquev6/developer.github.com"},"created_at":"2012-05-08T08:36:30Z","id":"1549819985","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"fcd377e377c23f87779d7940c3e894fd5844aad2","size":5,"push_id":77092135,"commits":[{"sha":"90ff8697b7039fcc1f12369b421f31319fd996df","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/90ff8697b7039fcc1f12369b421f31319fd996df","distinct":true,"message":"Simplify definition of list types"},{"sha":"c01d36a64eb6c4e69e3ac2f6ade27d793f7f2300","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c01d36a64eb6c4e69e3ac2f6ade27d793f7f2300","distinct":true,"message":"Remove underscores in keys in description, to allow hunting underscores in values"},{"sha":"07e994823e22a01d11612f141c2c0f9336ae5bf5","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/07e994823e22a01d11612f141c2c0f9336ae5bf5","distinct":true,"message":"Fix testGists"},{"sha":"5be7fed4c9533dedffe03c7f908a608a8e6fe221","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5be7fed4c9533dedffe03c7f908a608a8e6fe221","distinct":true,"message":"Toto"},{"sha":"fcd377e377c23f87779d7940c3e894fd5844aad2","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/fcd377e377c23f87779d7940c3e894fd5844aad2","distinct":true,"message":"Fix testIssuesForAuthenticatedUser"}],"ref":"refs/heads/topic/RewriteWithGeneratedCode"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-08T07:57:57Z","id":"1549811703","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6"}}] + diff --git a/lib/github/tests/ReplayData/NamedUser.testGetFollowers.txt b/lib/github/tests/ReplayData/NamedUser.testGetFollowers.txt new file mode 100644 index 0000000000..cbcdd1d75a --- /dev/null +++ b/lib/github/tests/ReplayData/NamedUser.testGetFollowers.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/users/jacquev6/followers +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4958'), ('content-length', '3849'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"f108ded43b2e23acc383f7eff74ee559"'), ('date', 'Sun, 20 May 2012 12:15:34 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/users/jnorthrup","gravatar_id":"29222a2dca6dd4cd33790d72ff3f5346","login":"jnorthrup","avatar_url":"https://secure.gravatar.com/avatar/29222a2dca6dd4cd33790d72ff3f5346?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":73514},{"url":"https://api.github.com/users/brugidou","gravatar_id":"43485eeefd3da3c96a7ea0c7e6b839dc","login":"brugidou","avatar_url":"https://secure.gravatar.com/avatar/43485eeefd3da3c96a7ea0c7e6b839dc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":167633},{"url":"https://api.github.com/users/regisb","gravatar_id":"43d211a7021343f2be236d2b9855b734","login":"regisb","avatar_url":"https://secure.gravatar.com/avatar/43d211a7021343f2be236d2b9855b734?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":44319},{"url":"https://api.github.com/users/walidk","gravatar_id":"e251d20766937949a109603ca37bb3be","login":"walidk","avatar_url":"https://secure.gravatar.com/avatar/e251d20766937949a109603ca37bb3be?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":734669},{"url":"https://api.github.com/users/afzalkhan","gravatar_id":"8e85398b116be75d4baeeddfc9c3cce1","login":"afzalkhan","avatar_url":"https://secure.gravatar.com/avatar/8e85398b116be75d4baeeddfc9c3cce1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1003845},{"url":"https://api.github.com/users/sdanzan","gravatar_id":"4a1e187f4f22547534a56966f6d8f942","login":"sdanzan","avatar_url":"https://secure.gravatar.com/avatar/4a1e187f4f22547534a56966f6d8f942?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1094967},{"url":"https://api.github.com/users/vineus","gravatar_id":"2d0c93649b7572036335aed380e351e5","login":"vineus","avatar_url":"https://secure.gravatar.com/avatar/2d0c93649b7572036335aed380e351e5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":467126},{"url":"https://api.github.com/users/gturri","gravatar_id":"ba064e32f068e12bfc87d178179878a5","login":"gturri","avatar_url":"https://secure.gravatar.com/avatar/ba064e32f068e12bfc87d178179878a5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":308601},{"url":"https://api.github.com/users/fjardon","gravatar_id":"cb044bd9a9f6548b9a9bae44617c97c7","login":"fjardon","avatar_url":"https://secure.gravatar.com/avatar/cb044bd9a9f6548b9a9bae44617c97c7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":121402},{"url":"https://api.github.com/users/cjuniet","gravatar_id":"197eed5292fd11c0277335c3524ccfd5","login":"cjuniet","avatar_url":"https://secure.gravatar.com/avatar/197eed5292fd11c0277335c3524ccfd5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1233553},{"url":"https://api.github.com/users/jardon-u","gravatar_id":"1b4be24fa7e62eb508ca448da99e43d4","login":"jardon-u","avatar_url":"https://secure.gravatar.com/avatar/1b4be24fa7e62eb508ca448da99e43d4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":994192},{"url":"https://api.github.com/users/kamaradclimber","gravatar_id":"0c43eba4a99f65e071e66e684cea8177","login":"kamaradclimber","avatar_url":"https://secure.gravatar.com/avatar/0c43eba4a99f65e071e66e684cea8177?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":503537},{"url":"https://api.github.com/users/L42y","gravatar_id":"4dc11d87759273f3466ab4f673bcecae","login":"L42y","avatar_url":"https://secure.gravatar.com/avatar/4dc11d87759273f3466ab4f673bcecae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":284820}] + diff --git a/lib/github/tests/ReplayData/NamedUser.testGetFollowing.txt b/lib/github/tests/ReplayData/NamedUser.testGetFollowing.txt new file mode 100644 index 0000000000..3587b468ed --- /dev/null +++ b/lib/github/tests/ReplayData/NamedUser.testGetFollowing.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/users/jacquev6/following +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4957'), ('content-length', '7072'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"83babfd00229c6e016e079e609e6db86"'), ('date', 'Sun, 20 May 2012 12:15:34 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/users/nvie","gravatar_id":"c5a7f21b46df698f3db31c37ed0cf55a","avatar_url":"https://secure.gravatar.com/avatar/c5a7f21b46df698f3db31c37ed0cf55a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"nvie","id":83844},{"url":"https://api.github.com/users/schacon","gravatar_id":"9375a9529679f1b42b567a640d775e7d","avatar_url":"https://secure.gravatar.com/avatar/9375a9529679f1b42b567a640d775e7d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"schacon","id":70},{"url":"https://api.github.com/users/jamis","gravatar_id":"992fe8c19bbbc27f2b562a9f96efc03d","avatar_url":"https://secure.gravatar.com/avatar/992fe8c19bbbc27f2b562a9f96efc03d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jamis","id":1627},{"url":"https://api.github.com/users/chad","gravatar_id":"77f306388bb6ae00ac0b0401e27cdc99","avatar_url":"https://secure.gravatar.com/avatar/77f306388bb6ae00ac0b0401e27cdc99?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"chad","id":237},{"url":"https://api.github.com/users/unclebob","gravatar_id":"e47a3e81d72676bd497b1cb67f66da97","avatar_url":"https://secure.gravatar.com/avatar/e47a3e81d72676bd497b1cb67f66da97?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"unclebob","id":36901},{"url":"https://api.github.com/users/dabrahams","gravatar_id":"5b45540ae377ec54a071f313b7193a27","avatar_url":"https://secure.gravatar.com/avatar/5b45540ae377ec54a071f313b7193a27?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"dabrahams","id":44065},{"url":"https://api.github.com/users/jnorthrup","gravatar_id":"29222a2dca6dd4cd33790d72ff3f5346","avatar_url":"https://secure.gravatar.com/avatar/29222a2dca6dd4cd33790d72ff3f5346?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jnorthrup","id":73514},{"url":"https://api.github.com/users/brugidou","gravatar_id":"43485eeefd3da3c96a7ea0c7e6b839dc","avatar_url":"https://secure.gravatar.com/avatar/43485eeefd3da3c96a7ea0c7e6b839dc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"brugidou","id":167633},{"url":"https://api.github.com/users/regisb","gravatar_id":"43d211a7021343f2be236d2b9855b734","avatar_url":"https://secure.gravatar.com/avatar/43d211a7021343f2be236d2b9855b734?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"regisb","id":44319},{"url":"https://api.github.com/users/walidk","gravatar_id":"e251d20766937949a109603ca37bb3be","avatar_url":"https://secure.gravatar.com/avatar/e251d20766937949a109603ca37bb3be?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"walidk","id":734669},{"url":"https://api.github.com/users/tanzilli","gravatar_id":"5d533d287dda8809a5369b65063ef725","avatar_url":"https://secure.gravatar.com/avatar/5d533d287dda8809a5369b65063ef725?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"tanzilli","id":434112},{"url":"https://api.github.com/users/fjardon","gravatar_id":"cb044bd9a9f6548b9a9bae44617c97c7","avatar_url":"https://secure.gravatar.com/avatar/cb044bd9a9f6548b9a9bae44617c97c7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"fjardon","id":121402},{"url":"https://api.github.com/users/r3c","gravatar_id":"9240b01ceef60b45be83aee8637e7043","avatar_url":"https://secure.gravatar.com/avatar/9240b01ceef60b45be83aee8637e7043?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"r3c","id":979446},{"url":"https://api.github.com/users/sdanzan","gravatar_id":"4a1e187f4f22547534a56966f6d8f942","avatar_url":"https://secure.gravatar.com/avatar/4a1e187f4f22547534a56966f6d8f942?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"sdanzan","id":1094967},{"url":"https://api.github.com/users/vineus","gravatar_id":"2d0c93649b7572036335aed380e351e5","avatar_url":"https://secure.gravatar.com/avatar/2d0c93649b7572036335aed380e351e5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"vineus","id":467126},{"url":"https://api.github.com/users/cjuniet","gravatar_id":"197eed5292fd11c0277335c3524ccfd5","avatar_url":"https://secure.gravatar.com/avatar/197eed5292fd11c0277335c3524ccfd5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"cjuniet","id":1233553},{"url":"https://api.github.com/users/gturri","gravatar_id":"ba064e32f068e12bfc87d178179878a5","avatar_url":"https://secure.gravatar.com/avatar/ba064e32f068e12bfc87d178179878a5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"gturri","id":308601},{"url":"https://api.github.com/users/ant9000","gravatar_id":"05c5d147f5decac1213f47007f6e97ed","avatar_url":"https://secure.gravatar.com/avatar/05c5d147f5decac1213f47007f6e97ed?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ant9000","id":803884},{"url":"https://api.github.com/users/asquini","gravatar_id":"ffc7ee9137c7c6859958bd21b724dde1","avatar_url":"https://secure.gravatar.com/avatar/ffc7ee9137c7c6859958bd21b724dde1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"asquini","id":1159877},{"url":"https://api.github.com/users/claudyus","gravatar_id":"694d276cdabd74c2538838f55d289143","avatar_url":"https://secure.gravatar.com/avatar/694d276cdabd74c2538838f55d289143?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"claudyus","id":509291},{"url":"https://api.github.com/users/jardon-u","gravatar_id":"1b4be24fa7e62eb508ca448da99e43d4","avatar_url":"https://secure.gravatar.com/avatar/1b4be24fa7e62eb508ca448da99e43d4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jardon-u","id":994192},{"url":"https://api.github.com/users/s-bernard","gravatar_id":"046dc82526c7cb4c60d8e70c6f4d4615","avatar_url":"https://secure.gravatar.com/avatar/046dc82526c7cb4c60d8e70c6f4d4615?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"s-bernard","id":1468889},{"url":"https://api.github.com/users/kamaradclimber","gravatar_id":"0c43eba4a99f65e071e66e684cea8177","avatar_url":"https://secure.gravatar.com/avatar/0c43eba4a99f65e071e66e684cea8177?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"kamaradclimber","id":503537},{"url":"https://api.github.com/users/Lyloa","gravatar_id":"1517ed584458ccf83e03f5d77d9699d7","avatar_url":"https://secure.gravatar.com/avatar/1517ed584458ccf83e03f5d77d9699d7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"Lyloa","id":1131432}] + diff --git a/lib/github/tests/ReplayData/NamedUser.testGetGists.txt b/lib/github/tests/ReplayData/NamedUser.testGetGists.txt new file mode 100644 index 0000000000..659578f1ad --- /dev/null +++ b/lib/github/tests/ReplayData/NamedUser.testGetGists.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/users/jacquev6/gists +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4967'), ('content-length', '3681'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"5718165cec484b5936e6e08ff24eb2e5"'), ('date', 'Sat, 26 May 2012 10:09:40 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-26T10:09:33Z","url":"https://api.github.com/gists/2793179","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2793179.git","git_push_url":"git@gist.github.com:2793179.git","files":{"foobar.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2793179/73a1c7f17aa0ad5d7cbb5a8ca033ce47d3d23197/foobar.txt","size":24,"filename":"foobar.txt","language":"Text"}},"user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"description":"Gist created by PyGithub","created_at":"2012-05-26T09:50:02Z","id":"2793179","html_url":"https://gist.github.com/2793179"},{"updated_at":"2012-04-26T13:20:53Z","url":"https://api.github.com/gists/11cb445f8197e17d303d","comments":0,"public":false,"git_pull_url":"git://gist.github.com/11cb445f8197e17d303d.git","git_push_url":"git@gist.github.com:11cb445f8197e17d303d.git","files":{"FairThreadPoolPool.cpp":{"type":"text/plain","raw_url":"https://gist.github.com/raw/11cb445f8197e17d303d/0f72c6fe50eb011eacb4e39fa613bdfe2f7a0c51/FairThreadPoolPool.cpp","size":7779,"filename":"FairThreadPoolPool.cpp","language":"C++"}},"user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"description":"FairThreadPoolPool.cpp","created_at":"2012-04-26T13:20:53Z","id":"11cb445f8197e17d303d","html_url":"https://gist.github.com/11cb445f8197e17d303d"},{"updated_at":"2012-02-29T16:47:12Z","url":"https://api.github.com/gists/1942384","comments":0,"public":true,"git_pull_url":"git://gist.github.com/1942384.git","git_push_url":"git@gist.github.com:1942384.git","files":{"fail_github.py":{"type":"application/python","raw_url":"https://gist.github.com/raw/1942384/2fb3aa84e0efa50dc0f4c18b5df5b7b9ab27076b/fail_github.py","size":1636,"filename":"fail_github.py","language":"Python"}},"user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"description":"How to error 500 Github API v3, as requested by Rick (GitHub Staff)","created_at":"2012-02-29T16:47:12Z","id":"1942384","html_url":"https://gist.github.com/1942384"},{"updated_at":"2012-02-28T19:44:42Z","url":"https://api.github.com/gists/dcb7de17e8a52b74541d","comments":1,"public":false,"git_pull_url":"git://gist.github.com/dcb7de17e8a52b74541d.git","git_push_url":"git@gist.github.com:dcb7de17e8a52b74541d.git","files":{"cadfael.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/dcb7de17e8a52b74541d/48ca696645682d7430d73180814434e0284796b2/cadfael.txt","size":585,"filename":"cadfael.txt","language":"Text"}},"user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"description":"Cadfael: order of episodes in French DVD edition","created_at":"2012-02-28T19:44:42Z","id":"dcb7de17e8a52b74541d","html_url":"https://gist.github.com/dcb7de17e8a52b74541d"}] + diff --git a/lib/github/tests/ReplayData/NamedUser.testGetKeys.txt b/lib/github/tests/ReplayData/NamedUser.testGetKeys.txt new file mode 100644 index 0000000000..d386deda45 --- /dev/null +++ b/lib/github/tests/ReplayData/NamedUser.testGetKeys.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/users/jacquev6/keys +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4998'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '2021'), ('server', 'GitHub.com'), ('last-modified', 'Sun, 03 Feb 2013 11:54:54 GMT'), ('connection', 'keep-alive'), ('etag', '"d80dfcef46052de82fcfd18ddc6d0b9f"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Sun, 03 Feb 2013 16:17:13 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"key":"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDBIP5wjRLjI21lmSNsdGCbB/6Oc6PwyGTr7xn0z0QgUukL8YdsbVtDlgwAXcJbjEO0fIZtXumtHtN6dXxMwzvuyLxwp+YX6itjOex8X+ARsMa3g84+d252E1eVs480s5fZZwfoKGhWD+55bpFVlNokc4OUbqSXEnK45nrEWpxNEfeYF48aW4RpJ42HF8sF1ihxLHCrPXxpx1jKXN8ZpHqzfEHCF2hjJHaIS9sUADxaINEeakWy5brbNn5qSQurs3ADNs827Pahh6tPYcbUWpk7+Lu2V3wvqOdjfQz9GIEhSD1jUDa/R7/FIt92yUShMULdQZ49GuHup7VcTaBW3bBj","id":3557894},{"key":"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDNPDWrRtvubw0UEsoF3GMsfaRnt2Q2uj1vADkSt2Ii9QmoA4oy4Z/QJwVCYnosGhr/Y21pBYk1J0BuyYnw1NZ0CpC1dxdZLsm5YFVKy0n7DKjyiKShTXEi0rj9GAZfVY4Whv8Du4Jjy0cb4tN9OXqYJ7AI+hN0H/AAX9+vmX0C1Oph7KKyy31De4ov68mpKXQr3EPORgOJQ78yV0LxlaGMeXjYjiMKW9fT0nCKfy/WMQCNE8IJNKDoBsX10ctPQ57K8zE+O9XS8WPS2AL7B1TCJl2GebJjeRN9GHyc8o70ZLgfW4W5JzFMCGv2sYcDJjvVrymYt4/YfAl9AnzZDAN5","id":3791954},{"key":"ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAruD8eAQGD1PcfwiycEiwij6StRlNzXKVWlu8IkgfGZq/fk7k5kNf0PwdmG7kZo4gZAi/ljcHrnyINqxtO6zxbUihxJp7T0Zyz27fT0nOrs1p+KAFg7x/qs28Dm7aSYquKztcLqlZdRSDjD/178i7ft90+sjIq9mg2zgYDiV9tGzMfwoD9Cf/OpbFNOdDHNDvuVzGKefDfrC9zY9bpxteJP/teCQXzC6eqYTL7Qz0L6NANRq0Bv9WKA1xE04E6xlSEbtIX9+VWGHH5WnD/q/PABwZqwhxwDm7/b2vd8E9TuoXiVw0rSgWh3WFfYzSLnN/kTw5zadML6egC91Gx594jw==","id":3937333},{"key":"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC262QAZ3rvJ7KySFEHUQYGfntylusL03x/ULKdVaSltc3Z2xvWm4zQSLHrWrdUbRN9z9kMpHWZZ2G+pvUPcY/qijbqtwg9FwBHNZoviq65LujKyQeegFXQKhGGaesDeKKC+jTXbg2NJY6+u5HLe4Je8q45VVHyAfltcuSE2QoCim50toyGUGWhcIDz/2mQYpy1wtkehQA6TeC55UE00TSU06E9glnqVi8hjDlsA7DABqyctG/sjP79OwUMBppiXYX2B0RJMtRHZ+5chsHx8oqavux1oG/tdTw9ZSAfKUHfDrN97x9PB38F3j8s60S2udRwLEYuErlF1JizTF4XOZhD","id":4051357},{"key":"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDK+jbASXi+PhE7GpBuKEH0qC+02J8L20A9CscleT5GUXKpZSbvxmsU0XLz95kYIBVUfrmTdn3PBn6FMK2OTWpxF9gt9DKclidkv2xfA1RkqnNVpMvZbzBMDmJcWo/lae+arQVJ26O1pbZjPH56c0cYvhblsoZnI1kCFatiJ3MOUeD2zCDylsfQ8zgLKA5yj0HRC3n5cPe9nIVWXnJQ1two4GHmxE7zue+hikYB7PQvaldGKTmHX04ODyZpyFOd86cvjiftN3G39POr2vh52jBwj4oLAiF89SC3QxQes8+zF00jOmnFUlONup0nLvJg4t/ij0M2kr5cqca7pMP+QfZp","id":4051492}] + diff --git a/lib/github/tests/ReplayData/NamedUser.testGetOrgs.txt b/lib/github/tests/ReplayData/NamedUser.testGetOrgs.txt new file mode 100644 index 0000000000..4b3f046978 --- /dev/null +++ b/lib/github/tests/ReplayData/NamedUser.testGetOrgs.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/users/jacquev6/orgs +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4949'), ('content-length', '262'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"82deae94305d8c551e4874e06f6efd48"'), ('date', 'Sun, 20 May 2012 12:27:03 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","url":"https://api.github.com/orgs/BeaverSoftware","login":"BeaverSoftware","id":1424031}] + diff --git a/lib/github/tests/ReplayData/NamedUser.testGetPublicEvents.txt b/lib/github/tests/ReplayData/NamedUser.testGetPublicEvents.txt new file mode 100644 index 0000000000..0ca1875ebb --- /dev/null +++ b/lib/github/tests/ReplayData/NamedUser.testGetPublicEvents.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/users/jacquev6/events/public +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4965'), ('content-length', '44220'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next"'), ('etag', '"c2fc2e5ccf4abdbd7b603c90a9254d37"'), ('date', 'Sat, 26 May 2012 10:48:48 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"type":"PushEvent","payload":{"head":"619eae8d51c5988f0d2889fc767fa677438ba95d","size":11,"push_id":80673538,"ref":"refs/heads/topic/RewriteWithGeneratedCode","commits":[{"sha":"5bb654d26dd014d36794acd1e6ecf3736f12aad7","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5bb654d26dd014d36794acd1e6ecf3736f12aad7","distinct":false,"message":"Implement the three authentication schemes"},{"sha":"cb0313157bf904f2d364377d35d9397b269547a5","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cb0313157bf904f2d364377d35d9397b269547a5","distinct":false,"message":"Merge branch 'topic/Authentication' into develop"},{"sha":"0cec0d25e606c023a62a4fc7cdc815309ebf6d16","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16","distinct":false,"message":"Publish version 0.7"},{"sha":"ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","distinct":false,"message":"Merge branch 'develop'"},{"sha":"3a3bf4763192ee1234eb0557628133e06f3dfc76","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/3a3bf4763192ee1234eb0557628133e06f3dfc76","distinct":true,"message":"Merge branch 'master' into topic/RewriteWithGeneratedCode\n\nConflicts:\n\tgithub/Github.py\n\tgithub/Requester.py"},{"sha":"608f17794664f61693a3dc05e6056fea8fbef0ff","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/608f17794664f61693a3dc05e6056fea8fbef0ff","distinct":true,"message":"Restore some form of Authorization header in replay data"},{"sha":"2c04b8adbd91d38eef4f0767337ab7a12b2f684b","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2c04b8adbd91d38eef4f0767337ab7a12b2f684b","distinct":true,"message":"Allow test without pre-set-up Github"},{"sha":"5b97389988b6fe43e15a079702f6f1671257fb28","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5b97389988b6fe43e15a079702f6f1671257fb28","distinct":true,"message":"Test three authentication schemes"},{"sha":"12747613c5ec00deccf296b8619ad507f7050475","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/12747613c5ec00deccf296b8619ad507f7050475","distinct":true,"message":"Test Issue.getComments"},{"sha":"2982fa96c5ca75abe717d974d83f9135d664232e","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2982fa96c5ca75abe717d974d83f9135d664232e","distinct":true,"message":"Test the new Repository.full_name attribute"},{"sha":"619eae8d51c5988f0d2889fc767fa677438ba95d","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/619eae8d51c5988f0d2889fc767fa677438ba95d","distinct":true,"message":"Improve coverage of AuthenticatedUser"}]},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-26T10:01:39Z","id":"1556114751","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"login":"jacquev6"}},{"type":"CreateEvent","payload":{"master_branch":"master","ref":null,"ref_type":"repository","description":"Repo created by PyGithub"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/TestPyGithub","id":4454027,"name":"jacquev6/TestPyGithub"},"created_at":"2012-05-26T09:55:27Z","id":"1556114217","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"login":"jacquev6"}},{"type":"GistEvent","payload":{"action":"create","gist":{"created_at":"2012-05-26T09:50:02Z","public":true,"comments":0,"git_push_url":"git@gist.github.com:2793179.git","files":{},"updated_at":"2012-05-26T09:50:02Z","url":"https://api.github.com/gists/2793179","id":"2793179","git_pull_url":"git://gist.github.com/2793179.git","description":null,"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"html_url":"https://gist.github.com/2793179"}},"public":true,"repo":{"url":"https://api.github.com/repos//","name":"/"},"created_at":"2012-05-26T09:50:03Z","id":"1556113740","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"login":"jacquev6"}},{"type":"IssuesEvent","payload":{"action":"closed","issue":{"number":29,"created_at":"2012-05-25T11:47:59Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"","comments":0,"title":"Publish version 0.7","updated_at":"2012-05-25T17:32:32Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/29","id":4752048,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":{"number":5,"due_on":"2012-05-26T07:00:00Z","created_at":"2012-05-25T11:47:06Z","title":"Version 0.7","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/5","id":124045,"closed_issues":2,"open_issues":0,"description":"","state":"closed"},"closed_at":"2012-05-25T17:32:32Z","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"labels":[{"name":"Project management","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","color":"444444"}],"html_url":"https://github.com/jacquev6/PyGithub/issues/29","state":"closed"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T17:32:33Z","id":"1555940993","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"login":"jacquev6"}},{"type":"IssuesEvent","payload":{"action":"closed","issue":{"number":15,"created_at":"2012-03-13T06:24:05Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"One would want to use the API without authentication, with login+password, and with OAuth token. Let's cover these use-cases.","comments":1,"title":"Implement all authentication schemes","updated_at":"2012-05-25T17:32:31Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/15","id":3624575,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":{"number":5,"due_on":"2012-05-26T07:00:00Z","created_at":"2012-05-25T11:47:06Z","title":"Version 0.7","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/5","id":124045,"closed_issues":2,"open_issues":0,"description":"","state":"closed"},"closed_at":"2012-05-25T17:32:31Z","labels":[{"name":"Functionalities","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","color":"e102d8"}],"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"html_url":"https://github.com/jacquev6/PyGithub/issues/15","state":"closed"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T17:32:33Z","id":"1555940986","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"login":"jacquev6"}},{"type":"CreateEvent","payload":{"master_branch":"master","ref_type":"tag","ref":"v0.7","description":"Python library implementing the full Github API v3"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T17:19:48Z","id":"1555936661","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"login":"jacquev6"}},{"type":"DeleteEvent","payload":{"ref_type":"branch","ref":"topic/Authentication"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T17:19:48Z","id":"1555936660","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","size":4,"push_id":80573368,"ref":"refs/heads/master","commits":[{"sha":"5bb654d26dd014d36794acd1e6ecf3736f12aad7","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5bb654d26dd014d36794acd1e6ecf3736f12aad7","distinct":false,"message":"Implement the three authentication schemes"},{"sha":"cb0313157bf904f2d364377d35d9397b269547a5","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cb0313157bf904f2d364377d35d9397b269547a5","distinct":false,"message":"Merge branch 'topic/Authentication' into develop"},{"sha":"0cec0d25e606c023a62a4fc7cdc815309ebf6d16","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16","distinct":false,"message":"Publish version 0.7"},{"sha":"ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","distinct":true,"message":"Merge branch 'develop'"}]},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T17:19:48Z","id":"1555936659","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"0cec0d25e606c023a62a4fc7cdc815309ebf6d16","size":3,"push_id":80573367,"commits":[{"sha":"5bb654d26dd014d36794acd1e6ecf3736f12aad7","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5bb654d26dd014d36794acd1e6ecf3736f12aad7","distinct":false,"message":"Implement the three authentication schemes"},{"sha":"cb0313157bf904f2d364377d35d9397b269547a5","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cb0313157bf904f2d364377d35d9397b269547a5","distinct":false,"message":"Merge branch 'topic/Authentication' into develop"},{"sha":"0cec0d25e606c023a62a4fc7cdc815309ebf6d16","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16","distinct":false,"message":"Publish version 0.7"}],"ref":"refs/heads/develop"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T17:19:47Z","id":"1555936657","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"login":"jacquev6"}},{"type":"CreateEvent","payload":{"master_branch":"master","ref":"topic/Authentication","description":"Python library implementing the full Github API v3","ref_type":"branch"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T12:24:21Z","id":"1555833283","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"login":"jacquev6"}},{"type":"IssuesEvent","payload":{"action":"opened","issue":{"number":29,"created_at":"2012-05-25T11:47:59Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"","title":"Publish version 0.7","comments":0,"updated_at":"2012-05-25T11:47:59Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/29","id":4752048,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":{"number":5,"created_at":"2012-05-25T11:47:06Z","due_on":"2012-05-26T07:00:00Z","title":"Version 0.7","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/5","id":124045,"open_issues":2,"closed_issues":0,"description":"","state":"open"},"closed_at":null,"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"html_url":"https://github.com/jacquev6/PyGithub/issues/29","labels":[{"name":"Project management","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","color":"444444"}],"state":"open"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T12:02:48Z","id":"1555822981","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"login":"jacquev6"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-25T06:31:42Z","body":"It means that there will be three ways to create an instance of the Github class:\n github = Github()\n github = Github( login, password )\n github = Github( oauth_token )\n","updated_at":"2012-05-25T06:31:42Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5924198","id":5924198,"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},"action":"created","issue":{"number":15,"created_at":"2012-03-13T06:24:05Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"comments":1,"body":"One would want to use the API without authentication, with login+password, and with OAuth token. Let's cover these use-cases.","title":"Implement all authentication schemes","updated_at":"2012-05-25T06:31:42Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/15","id":3624575,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":null,"closed_at":null,"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"labels":[{"name":"Functionalities","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","color":"e102d8"}],"html_url":"https://github.com/jacquev6/PyGithub/issues/15","state":"open"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T06:31:42Z","id":"1555742639","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"login":"jacquev6"}},{"type":"WatchEvent","payload":{"action":"started"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T06:05:21Z","id":"1555738288","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"527ce7459a2e60d1536883f19b9bc6850d71127b","size":5,"push_id":79877715,"commits":[{"sha":"287bc541542f9d32339e7dd4b36a511cab2ebdae","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/287bc541542f9d32339e7dd4b36a511cab2ebdae","distinct":true,"message":"Generate more coverage information"},{"sha":"588a4a9a355096c00a2bb25f27664d2115e120ac","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/588a4a9a355096c00a2bb25f27664d2115e120ac","distinct":true,"message":"Test AuthenticatedUser watching"},{"sha":"815720f0deb376c34166c27b6e3b73e5c1f5b1a3","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/815720f0deb376c34166c27b6e3b73e5c1f5b1a3","distinct":true,"message":"Test Authorization"},{"sha":"473c92adcd8bbbd32003d9c65666ede66059551b","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/473c92adcd8bbbd32003d9c65666ede66059551b","distinct":true,"message":"Test Download and CommitComment"},{"sha":"527ce7459a2e60d1536883f19b9bc6850d71127b","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/527ce7459a2e60d1536883f19b9bc6850d71127b","distinct":true,"message":"Merge commit 'c93f9cc8484b7' into topic/RewriteWithGeneratedCode\n\nConflicts:\n\ttest/IntegrationTest.py"}],"ref":"refs/heads/topic/RewriteWithGeneratedCode"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-22T19:59:48Z","id":"1554729420","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"login":"jacquev6"}},{"type":"DownloadEvent","payload":{"download":{"name":"Foobar.txt","size":1024,"created_at":"2012-05-22T19:15:29Z","content_type":"text/plain","download_count":0,"url":"https://api.github.com/repos/jacquev6/PyGithub/downloads/242562","id":242562,"description":null,"html_url":"https://github.com/downloads/jacquev6/PyGithub/Foobar.txt"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-22T19:15:30Z","id":"1554712197","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"login":"jacquev6"}},{"type":"DownloadEvent","payload":{"download":{"name":"Foobar.txt","size":1024,"created_at":"2012-05-22T19:11:49Z","content_type":"text/richtext","download_count":0,"url":"https://api.github.com/repos/jacquev6/PyGithub/downloads/242556","id":242556,"description":"Download created by PyGithub","html_url":"https://github.com/downloads/jacquev6/PyGithub/Foobar.txt"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-22T19:11:49Z","id":"1554710791","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"login":"jacquev6"}},{"type":"DownloadEvent","payload":{"download":{"name":"Foobar.txt","created_at":"2012-05-22T18:58:32Z","size":1024,"content_type":"text/plain","url":"https://api.github.com/repos/jacquev6/PyGithub/downloads/242550","download_count":0,"id":242550,"description":null,"html_url":"https://github.com/downloads/jacquev6/PyGithub/Foobar.txt"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-22T18:58:32Z","id":"1554705673","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"login":"jacquev6"}},{"type":"CommitCommentEvent","payload":{"comment":{"position":19,"created_at":"2012-05-22T18:53:25Z","line":211,"body":"Foobar","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","updated_at":"2012-05-22T18:53:25Z","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1362020","id":1362020,"path":"src/github/AuthenticatedUser.py","html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1362020","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-22T18:53:25Z","id":"1554703698","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"login":"jacquev6"}},{"type":"CommitCommentEvent","payload":{"comment":{"position":3,"created_at":"2012-05-22T18:50:02Z","line":null,"body":"Comment also created by PyGithub","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","updated_at":"2012-05-22T18:50:02Z","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1362001","id":1362001,"path":"codegen/templates/GithubObject.MethodBody.UseResult.py","html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1362001","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-22T18:50:02Z","id":"1554702296","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"login":"jacquev6"}},{"type":"CommitCommentEvent","payload":{"comment":{"position":null,"created_at":"2012-05-22T18:49:34Z","line":26,"body":"Comment created by PyGithub","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","updated_at":"2012-05-22T18:49:34Z","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1362000","id":1362000,"path":"codegen/templates/GithubObject.MethodBody.UseResult.py","html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1362000","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-22T18:49:34Z","id":"1554702087","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"login":"jacquev6"}},{"type":"CommitCommentEvent","payload":{"comment":{"position":null,"created_at":"2012-05-22T18:40:18Z","body":"Comment created by PyGithub","line":null,"commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","updated_at":"2012-05-22T18:40:18Z","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1361949","id":1361949,"path":null,"html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1361949","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-22T18:40:18Z","id":"1554698320","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"login":"jacquev6"}},{"type":"CommitCommentEvent","payload":{"comment":{"position":null,"created_at":"2012-05-22T18:36:58Z","line":null,"body":"Comment created by PyGithub","updated_at":"2012-05-22T18:36:58Z","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1361928","id":1361928,"path":null,"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1361928"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-22T18:36:58Z","id":"1554697057","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"login":"jacquev6"}},{"type":"WatchEvent","payload":{"action":"started"},"public":true,"repo":{"url":"https://api.github.com/repos/nvie/gitflow","id":481366,"name":"nvie/gitflow"},"created_at":"2012-05-22T17:15:11Z","id":"1554664316","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"661812b9dd136efdb0e0c413793deb0939146651","size":2,"push_id":79550719,"commits":[{"sha":"c93f9cc8484b7835130689befc89ae88c7e72694","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c93f9cc8484b7835130689befc89ae88c7e72694","distinct":true,"message":"Remove noise in human readable description"},{"sha":"661812b9dd136efdb0e0c413793deb0939146651","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/661812b9dd136efdb0e0c413793deb0939146651","distinct":true,"message":"Test watching"}],"ref":"refs/heads/topic/RewriteWithGeneratedCode"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-21T13:48:45Z","id":"1554164185","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"login":"jacquev6"}},{"type":"WatchEvent","payload":{"action":"started"},"public":true,"repo":{"url":"https://api.github.com/repos/nvie/gitflow","id":481366,"name":"nvie/gitflow"},"created_at":"2012-05-21T11:31:55Z","id":"1554123822","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"login":"jacquev6"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-21T11:17:12Z","body":"Implemented in ca97469. Will be in version 1.0.","updated_at":"2012-05-21T11:17:12Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5820199","id":5820199,"user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},"action":"created","issue":{"number":26,"created_at":"2012-05-17T12:02:05Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"Hi!\n\nI tried to find a function which returns the number of API requests I have remaining due to [rate limiting](http://developer.github.com/v3/#rate-limiting). Is this somewhere in the library and I can't find it? If not, I think it would be a great feature to have, to be able to keep track of how many requests certain actions use up.","comments":3,"title":"Rate limiting?","updated_at":"2012-05-21T11:17:12Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/26","id":4622816,"assignee":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":{"number":2,"created_at":"2012-03-08T12:22:28Z","due_on":"2012-06-04T07:00:00Z","title":"Version 1.0: coherent public interface","creator":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","id":93547,"closed_issues":2,"open_issues":9,"description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","state":"open"},"closed_at":"2012-05-21T11:17:12Z","html_url":"https://github.com/jacquev6/PyGithub/issues/26","user":{"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","id":327442,"login":"bilderbuchi"},"labels":[{"name":"Public interface","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","color":"d7e102"}],"state":"closed"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-21T11:17:14Z","id":"1554120319","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"login":"jacquev6"}},{"type":"IssuesEvent","payload":{"action":"closed","issue":{"number":26,"created_at":"2012-05-17T12:02:05Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"Hi!\n\nI tried to find a function which returns the number of API requests I have remaining due to [rate limiting](http://developer.github.com/v3/#rate-limiting). Is this somewhere in the library and I can't find it? If not, I think it would be a great feature to have, to be able to keep track of how many requests certain actions use up.","comments":3,"title":"Rate limiting?","updated_at":"2012-05-21T11:17:12Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/26","id":4622816,"assignee":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":{"number":2,"created_at":"2012-03-08T12:22:28Z","due_on":"2012-06-04T07:00:00Z","title":"Version 1.0: coherent public interface","creator":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","id":93547,"open_issues":9,"closed_issues":2,"description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","state":"open"},"closed_at":"2012-05-21T11:17:12Z","html_url":"https://github.com/jacquev6/PyGithub/issues/26","user":{"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","id":327442,"login":"bilderbuchi"},"labels":[{"name":"Public interface","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","color":"d7e102"}],"state":"closed"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-21T11:17:14Z","id":"1554120316","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"ca974699b0ea2a770e6c2dbd162b3d2c0ae9fe89","size":1,"push_id":79524271,"commits":[{"sha":"ca974699b0ea2a770e6c2dbd162b3d2c0ae9fe89","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ca974699b0ea2a770e6c2dbd162b3d2c0ae9fe89","distinct":true,"message":"Retrieve rate limiting information"}],"ref":"refs/heads/topic/RewriteWithGeneratedCode"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-21T11:16:05Z","id":"1554120027","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"d5ba645d446d9c237a52ddc9cdc6862e399c62dc","size":4,"push_id":79431688,"commits":[{"sha":"fd18d6299da666bffb9490a1a784060ca7a516f1","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/fd18d6299da666bffb9490a1a784060ca7a516f1","distinct":true,"message":"Test IssueComment"},{"sha":"beaa58ca0c038469b3b553b804b4d37b2363f8e2","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/beaa58ca0c038469b3b553b804b4d37b2363f8e2","distinct":true,"message":"Test IssueEvent attributes"},{"sha":"6a2e4b4958385667c892cbd720fb91c6c44ab81a","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6a2e4b4958385667c892cbd720fb91c6c44ab81a","distinct":true,"message":"Improve test coverage of NamedUser"},{"sha":"d5ba645d446d9c237a52ddc9cdc6862e399c62dc","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/d5ba645d446d9c237a52ddc9cdc6862e399c62dc","distinct":true,"message":"Improve test coverage of AuthenticatedUser"}],"ref":"refs/heads/topic/RewriteWithGeneratedCode"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-20T17:59:32Z","id":"1553953684","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"login":"jacquev6"}},{"type":"FollowEvent","payload":{"target":{"name":"Vincent Driessen","company":"3rd Cloud","gravatar_id":"c5a7f21b46df698f3db31c37ed0cf55a","avatar_url":"https://secure.gravatar.com/avatar/c5a7f21b46df698f3db31c37ed0cf55a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","created_at":"2009-05-12T21:19:38Z","location":"Netherlands","public_repos":61,"blog":"http://nvie.com","followers":297,"url":"https://api.github.com/users/nvie","public_gists":16,"hireable":false,"id":83844,"type":"User","bio":null,"login":"nvie","html_url":"https://github.com/nvie","email":"vincent@3rdcloud.com","following":41}},"public":true,"repo":{"url":"https://api.github.com/repos//","name":"/"},"created_at":"2012-05-20T12:47:52Z","id":"1553918130","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"login":"jacquev6"}}] + diff --git a/lib/github/tests/ReplayData/NamedUser.testGetPublicReceivedEvents.txt b/lib/github/tests/ReplayData/NamedUser.testGetPublicReceivedEvents.txt new file mode 100644 index 0000000000..5d1652d2f2 --- /dev/null +++ b/lib/github/tests/ReplayData/NamedUser.testGetPublicReceivedEvents.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/users/jacquev6/received_events/public +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4943'), ('content-length', '79562'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next"'), ('etag', '"901c887a2dc34d6a5067538b206fdb07"'), ('date', 'Sun, 20 May 2012 12:29:39 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T12:29:17Z","body":"+1","updated_at":"2012-05-20T12:29:17Z","url":"https://api.github.com/repos/github/markup/issues/comments/5808535","id":5808535,"user":{"avatar_url":"https://secure.gravatar.com/avatar/b3cb2e7b64cad46d1cd6e5d3294c12cc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b3cb2e7b64cad46d1cd6e5d3294c12cc","url":"https://api.github.com/users/cherryboss","id":1078894,"login":"cherryboss"}},"action":"created","issue":{"number":34,"created_at":"2011-01-21T16:04:58Z","pull_request":{"diff_url":"https://github.com/github/markup/pull/34.diff","patch_url":"https://github.com/github/markup/pull/34.patch","html_url":"https://github.com/github/markup/pull/34"},"body":"Hello, I've created support for great Texy! text-to-HTML formatter and converter library (http://texy.info, http://github.com/dg/texy).\r\n\r\nHere's my implementation branch: https://github.com/smasty/markup/tree/texy","comments":23,"title":"[new markup] Texy! formatter support","updated_at":"2012-05-20T12:29:17Z","url":"https://api.github.com/repos/github/markup/issues/34","id":541804,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/github/markup/issues/34","user":{"avatar_url":"https://secure.gravatar.com/avatar/c27f2f0deb68f04a58db7b7254df893b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c27f2f0deb68f04a58db7b7254df893b","url":"https://api.github.com/users/smasty","id":218524,"login":"smasty"},"labels":[],"state":"open"}},"public":true,"org":{"avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"61024896f291303615bcd4f7a0dcfb74","url":"https://api.github.com/orgs/github","id":9919,"login":"github"},"repo":{"url":"https://api.github.com/repos/github/markup","id":355893,"name":"github/markup"},"created_at":"2012-05-20T12:29:18Z","id":"1553916447","actor":{"avatar_url":"https://secure.gravatar.com/avatar/b3cb2e7b64cad46d1cd6e5d3294c12cc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b3cb2e7b64cad46d1cd6e5d3294c12cc","url":"https://api.github.com/users/cherryboss","id":1078894,"login":"cherryboss"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T12:25:03Z","body":"+1","updated_at":"2012-05-20T12:25:03Z","url":"https://api.github.com/repos/github/markup/issues/comments/5808513","id":5808513,"user":{"avatar_url":"https://secure.gravatar.com/avatar/1cf1c7870c060e3d6e9bba907869deac?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"1cf1c7870c060e3d6e9bba907869deac","url":"https://api.github.com/users/Aurielle","id":144428,"login":"Aurielle"}},"action":"created","issue":{"number":34,"created_at":"2011-01-21T16:04:58Z","pull_request":{"diff_url":"https://github.com/github/markup/pull/34.diff","patch_url":"https://github.com/github/markup/pull/34.patch","html_url":"https://github.com/github/markup/pull/34"},"comments":22,"title":"[new markup] Texy! formatter support","body":"Hello, I've created support for great Texy! text-to-HTML formatter and converter library (http://texy.info, http://github.com/dg/texy).\r\n\r\nHere's my implementation branch: https://github.com/smasty/markup/tree/texy","updated_at":"2012-05-20T12:25:03Z","url":"https://api.github.com/repos/github/markup/issues/34","id":541804,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/github/markup/issues/34","user":{"avatar_url":"https://secure.gravatar.com/avatar/c27f2f0deb68f04a58db7b7254df893b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c27f2f0deb68f04a58db7b7254df893b","url":"https://api.github.com/users/smasty","id":218524,"login":"smasty"},"labels":[],"state":"open"}},"public":true,"org":{"avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"61024896f291303615bcd4f7a0dcfb74","url":"https://api.github.com/orgs/github","id":9919,"login":"github"},"repo":{"url":"https://api.github.com/repos/github/markup","id":355893,"name":"github/markup"},"created_at":"2012-05-20T12:25:06Z","id":"1553916062","actor":{"avatar_url":"https://secure.gravatar.com/avatar/1cf1c7870c060e3d6e9bba907869deac?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"1cf1c7870c060e3d6e9bba907869deac","url":"https://api.github.com/users/Aurielle","id":144428,"login":"Aurielle"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T12:23:10Z","body":"+1","updated_at":"2012-05-20T12:23:10Z","url":"https://api.github.com/repos/github/markup/issues/comments/5808502","id":5808502,"user":{"avatar_url":"https://secure.gravatar.com/avatar/19a6b06bab555481b203b024e5761567?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"19a6b06bab555481b203b024e5761567","url":"https://api.github.com/users/janmarek","id":150257,"login":"janmarek"}},"action":"created","issue":{"number":34,"created_at":"2011-01-21T16:04:58Z","pull_request":{"diff_url":"https://github.com/github/markup/pull/34.diff","patch_url":"https://github.com/github/markup/pull/34.patch","html_url":"https://github.com/github/markup/pull/34"},"comments":21,"body":"Hello, I've created support for great Texy! text-to-HTML formatter and converter library (http://texy.info, http://github.com/dg/texy).\r\n\r\nHere's my implementation branch: https://github.com/smasty/markup/tree/texy","title":"[new markup] Texy! formatter support","updated_at":"2012-05-20T12:23:10Z","url":"https://api.github.com/repos/github/markup/issues/34","id":541804,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/github/markup/issues/34","user":{"avatar_url":"https://secure.gravatar.com/avatar/c27f2f0deb68f04a58db7b7254df893b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c27f2f0deb68f04a58db7b7254df893b","url":"https://api.github.com/users/smasty","id":218524,"login":"smasty"},"labels":[],"state":"open"}},"public":true,"org":{"avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"61024896f291303615bcd4f7a0dcfb74","url":"https://api.github.com/orgs/github","id":9919,"login":"github"},"repo":{"url":"https://api.github.com/repos/github/markup","id":355893,"name":"github/markup"},"created_at":"2012-05-20T12:23:10Z","id":"1553915882","actor":{"avatar_url":"https://secure.gravatar.com/avatar/19a6b06bab555481b203b024e5761567?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"19a6b06bab555481b203b024e5761567","url":"https://api.github.com/users/janmarek","id":150257,"login":"janmarek"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T12:22:47Z","body":"+1","updated_at":"2012-05-20T12:22:47Z","url":"https://api.github.com/repos/github/markup/issues/comments/5808501","id":5808501,"user":{"avatar_url":"https://secure.gravatar.com/avatar/e9de61b5196e93a3db50330622319687?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e9de61b5196e93a3db50330622319687","url":"https://api.github.com/users/Jirda","id":888765,"login":"Jirda"}},"action":"created","issue":{"number":34,"created_at":"2011-01-21T16:04:58Z","pull_request":{"diff_url":"https://github.com/github/markup/pull/34.diff","patch_url":"https://github.com/github/markup/pull/34.patch","html_url":"https://github.com/github/markup/pull/34"},"body":"Hello, I've created support for great Texy! text-to-HTML formatter and converter library (http://texy.info, http://github.com/dg/texy).\r\n\r\nHere's my implementation branch: https://github.com/smasty/markup/tree/texy","title":"[new markup] Texy! formatter support","comments":20,"updated_at":"2012-05-20T12:22:47Z","url":"https://api.github.com/repos/github/markup/issues/34","id":541804,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/github/markup/issues/34","user":{"avatar_url":"https://secure.gravatar.com/avatar/c27f2f0deb68f04a58db7b7254df893b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c27f2f0deb68f04a58db7b7254df893b","url":"https://api.github.com/users/smasty","id":218524,"login":"smasty"},"labels":[],"state":"open"}},"public":true,"org":{"avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"61024896f291303615bcd4f7a0dcfb74","url":"https://api.github.com/orgs/github","id":9919,"login":"github"},"repo":{"url":"https://api.github.com/repos/github/markup","id":355893,"name":"github/markup"},"created_at":"2012-05-20T12:22:48Z","id":"1553915852","actor":{"avatar_url":"https://secure.gravatar.com/avatar/e9de61b5196e93a3db50330622319687?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e9de61b5196e93a3db50330622319687","url":"https://api.github.com/users/Jirda","id":888765,"login":"Jirda"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T12:22:42Z","body":"+1","updated_at":"2012-05-20T12:22:42Z","url":"https://api.github.com/repos/github/markup/issues/comments/5808500","id":5808500,"user":{"avatar_url":"https://secure.gravatar.com/avatar/73997373b9f2e330bc4ed2dff3ad8561?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"73997373b9f2e330bc4ed2dff3ad8561","url":"https://api.github.com/users/NeosinneR","id":470616,"login":"NeosinneR"}},"action":"created","issue":{"number":34,"created_at":"2011-01-21T16:04:58Z","pull_request":{"diff_url":"https://github.com/github/markup/pull/34.diff","patch_url":"https://github.com/github/markup/pull/34.patch","html_url":"https://github.com/github/markup/pull/34"},"body":"Hello, I've created support for great Texy! text-to-HTML formatter and converter library (http://texy.info, http://github.com/dg/texy).\r\n\r\nHere's my implementation branch: https://github.com/smasty/markup/tree/texy","title":"[new markup] Texy! formatter support","comments":19,"updated_at":"2012-05-20T12:22:42Z","url":"https://api.github.com/repos/github/markup/issues/34","id":541804,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/github/markup/issues/34","user":{"avatar_url":"https://secure.gravatar.com/avatar/c27f2f0deb68f04a58db7b7254df893b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c27f2f0deb68f04a58db7b7254df893b","url":"https://api.github.com/users/smasty","id":218524,"login":"smasty"},"labels":[],"state":"open"}},"public":true,"org":{"avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"61024896f291303615bcd4f7a0dcfb74","url":"https://api.github.com/orgs/github","id":9919,"login":"github"},"repo":{"url":"https://api.github.com/repos/github/markup","id":355893,"name":"github/markup"},"created_at":"2012-05-20T12:22:43Z","id":"1553915842","actor":{"avatar_url":"https://secure.gravatar.com/avatar/73997373b9f2e330bc4ed2dff3ad8561?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"73997373b9f2e330bc4ed2dff3ad8561","url":"https://api.github.com/users/NeosinneR","id":470616,"login":"NeosinneR"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T12:21:39Z","body":"+1","updated_at":"2012-05-20T12:21:39Z","url":"https://api.github.com/repos/github/markup/issues/comments/5808494","id":5808494,"user":{"avatar_url":"https://secure.gravatar.com/avatar/6f055df11c2384360588bff39eca3179?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"6f055df11c2384360588bff39eca3179","url":"https://api.github.com/users/Acnnair","id":198089,"login":"Acnnair"}},"action":"created","issue":{"number":34,"pull_request":{"diff_url":"https://github.com/github/markup/pull/34.diff","patch_url":"https://github.com/github/markup/pull/34.patch","html_url":"https://github.com/github/markup/pull/34"},"created_at":"2011-01-21T16:04:58Z","comments":18,"body":"Hello, I've created support for great Texy! text-to-HTML formatter and converter library (http://texy.info, http://github.com/dg/texy).\r\n\r\nHere's my implementation branch: https://github.com/smasty/markup/tree/texy","title":"[new markup] Texy! formatter support","updated_at":"2012-05-20T12:21:39Z","url":"https://api.github.com/repos/github/markup/issues/34","id":541804,"assignee":null,"milestone":null,"closed_at":null,"user":{"avatar_url":"https://secure.gravatar.com/avatar/c27f2f0deb68f04a58db7b7254df893b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c27f2f0deb68f04a58db7b7254df893b","url":"https://api.github.com/users/smasty","id":218524,"login":"smasty"},"html_url":"https://github.com/github/markup/issues/34","labels":[],"state":"open"}},"public":true,"org":{"avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"61024896f291303615bcd4f7a0dcfb74","url":"https://api.github.com/orgs/github","id":9919,"login":"github"},"repo":{"url":"https://api.github.com/repos/github/markup","id":355893,"name":"github/markup"},"created_at":"2012-05-20T12:21:39Z","id":"1553915747","actor":{"avatar_url":"https://secure.gravatar.com/avatar/6f055df11c2384360588bff39eca3179?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"6f055df11c2384360588bff39eca3179","url":"https://api.github.com/users/Acnnair","id":198089,"login":"Acnnair"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T12:21:18Z","body":"+ 01 :)","updated_at":"2012-05-20T12:21:18Z","url":"https://api.github.com/repos/github/markup/issues/comments/5808490","id":5808490,"user":{"avatar_url":"https://secure.gravatar.com/avatar/39e7b53a5166503123d4b99ad3b959b9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"39e7b53a5166503123d4b99ad3b959b9","url":"https://api.github.com/users/adamtomecek","id":157048,"login":"adamtomecek"}},"action":"created","issue":{"number":34,"created_at":"2011-01-21T16:04:58Z","pull_request":{"diff_url":"https://github.com/github/markup/pull/34.diff","patch_url":"https://github.com/github/markup/pull/34.patch","html_url":"https://github.com/github/markup/pull/34"},"comments":17,"title":"[new markup] Texy! formatter support","body":"Hello, I've created support for great Texy! text-to-HTML formatter and converter library (http://texy.info, http://github.com/dg/texy).\r\n\r\nHere's my implementation branch: https://github.com/smasty/markup/tree/texy","updated_at":"2012-05-20T12:21:18Z","url":"https://api.github.com/repos/github/markup/issues/34","id":541804,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/github/markup/issues/34","user":{"avatar_url":"https://secure.gravatar.com/avatar/c27f2f0deb68f04a58db7b7254df893b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c27f2f0deb68f04a58db7b7254df893b","url":"https://api.github.com/users/smasty","id":218524,"login":"smasty"},"labels":[],"state":"open"}},"public":true,"org":{"avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"61024896f291303615bcd4f7a0dcfb74","url":"https://api.github.com/orgs/github","id":9919,"login":"github"},"repo":{"url":"https://api.github.com/repos/github/markup","id":355893,"name":"github/markup"},"created_at":"2012-05-20T12:21:18Z","id":"1553915704","actor":{"avatar_url":"https://secure.gravatar.com/avatar/39e7b53a5166503123d4b99ad3b959b9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"39e7b53a5166503123d4b99ad3b959b9","url":"https://api.github.com/users/adamtomecek","id":157048,"login":"adamtomecek"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T12:20:43Z","body":"+1","updated_at":"2012-05-20T12:20:43Z","url":"https://api.github.com/repos/github/markup/issues/comments/5808487","id":5808487,"user":{"avatar_url":"https://secure.gravatar.com/avatar/d8fe8d5f9012e9e1d76f19e05eedcc73?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d8fe8d5f9012e9e1d76f19e05eedcc73","url":"https://api.github.com/users/Marax","id":402625,"login":"Marax"}},"action":"created","issue":{"number":34,"created_at":"2011-01-21T16:04:58Z","pull_request":{"diff_url":"https://github.com/github/markup/pull/34.diff","patch_url":"https://github.com/github/markup/pull/34.patch","html_url":"https://github.com/github/markup/pull/34"},"body":"Hello, I've created support for great Texy! text-to-HTML formatter and converter library (http://texy.info, http://github.com/dg/texy).\r\n\r\nHere's my implementation branch: https://github.com/smasty/markup/tree/texy","comments":16,"title":"[new markup] Texy! formatter support","updated_at":"2012-05-20T12:20:43Z","url":"https://api.github.com/repos/github/markup/issues/34","id":541804,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/github/markup/issues/34","user":{"avatar_url":"https://secure.gravatar.com/avatar/c27f2f0deb68f04a58db7b7254df893b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c27f2f0deb68f04a58db7b7254df893b","url":"https://api.github.com/users/smasty","id":218524,"login":"smasty"},"labels":[],"state":"open"}},"public":true,"org":{"avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"61024896f291303615bcd4f7a0dcfb74","url":"https://api.github.com/orgs/github","id":9919,"login":"github"},"repo":{"url":"https://api.github.com/repos/github/markup","id":355893,"name":"github/markup"},"created_at":"2012-05-20T12:20:43Z","id":"1553915653","actor":{"avatar_url":"https://secure.gravatar.com/avatar/d8fe8d5f9012e9e1d76f19e05eedcc73?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d8fe8d5f9012e9e1d76f19e05eedcc73","url":"https://api.github.com/users/Marax","id":402625,"login":"Marax"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T12:15:29Z","body":"+1","updated_at":"2012-05-20T12:15:29Z","url":"https://api.github.com/repos/github/markup/issues/comments/5808456","id":5808456,"user":{"avatar_url":"https://secure.gravatar.com/avatar/c41460d1cfc23cbc64a2639f753d8b70?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c41460d1cfc23cbc64a2639f753d8b70","url":"https://api.github.com/users/MartinSadovy","id":179039,"login":"MartinSadovy"}},"action":"created","issue":{"number":34,"created_at":"2011-01-21T16:04:58Z","pull_request":{"diff_url":"https://github.com/github/markup/pull/34.diff","patch_url":"https://github.com/github/markup/pull/34.patch","html_url":"https://github.com/github/markup/pull/34"},"body":"Hello, I've created support for great Texy! text-to-HTML formatter and converter library (http://texy.info, http://github.com/dg/texy).\r\n\r\nHere's my implementation branch: https://github.com/smasty/markup/tree/texy","comments":15,"title":"[new markup] Texy! formatter support","updated_at":"2012-05-20T12:15:29Z","url":"https://api.github.com/repos/github/markup/issues/34","id":541804,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/github/markup/issues/34","user":{"avatar_url":"https://secure.gravatar.com/avatar/c27f2f0deb68f04a58db7b7254df893b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c27f2f0deb68f04a58db7b7254df893b","url":"https://api.github.com/users/smasty","id":218524,"login":"smasty"},"labels":[],"state":"open"}},"public":true,"org":{"avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"61024896f291303615bcd4f7a0dcfb74","url":"https://api.github.com/orgs/github","id":9919,"login":"github"},"repo":{"url":"https://api.github.com/repos/github/markup","id":355893,"name":"github/markup"},"created_at":"2012-05-20T12:15:30Z","id":"1553915168","actor":{"avatar_url":"https://secure.gravatar.com/avatar/c41460d1cfc23cbc64a2639f753d8b70?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c41460d1cfc23cbc64a2639f753d8b70","url":"https://api.github.com/users/MartinSadovy","id":179039,"login":"MartinSadovy"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T12:13:14Z","body":"+1","updated_at":"2012-05-20T12:13:14Z","url":"https://api.github.com/repos/github/markup/issues/comments/5808447","id":5808447,"user":{"avatar_url":"https://secure.gravatar.com/avatar/6f4840694cd92f20ce0df5233bbc04b0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"6f4840694cd92f20ce0df5233bbc04b0","url":"https://api.github.com/users/HosipLan","id":158625,"login":"HosipLan"}},"action":"created","issue":{"number":34,"created_at":"2011-01-21T16:04:58Z","pull_request":{"diff_url":"https://github.com/github/markup/pull/34.diff","patch_url":"https://github.com/github/markup/pull/34.patch","html_url":"https://github.com/github/markup/pull/34"},"body":"Hello, I've created support for great Texy! text-to-HTML formatter and converter library (http://texy.info, http://github.com/dg/texy).\r\n\r\nHere's my implementation branch: https://github.com/smasty/markup/tree/texy","title":"[new markup] Texy! formatter support","comments":14,"updated_at":"2012-05-20T12:13:14Z","url":"https://api.github.com/repos/github/markup/issues/34","id":541804,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/github/markup/issues/34","user":{"avatar_url":"https://secure.gravatar.com/avatar/c27f2f0deb68f04a58db7b7254df893b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c27f2f0deb68f04a58db7b7254df893b","url":"https://api.github.com/users/smasty","id":218524,"login":"smasty"},"labels":[],"state":"open"}},"public":true,"org":{"avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"61024896f291303615bcd4f7a0dcfb74","url":"https://api.github.com/orgs/github","id":9919,"login":"github"},"repo":{"url":"https://api.github.com/repos/github/markup","id":355893,"name":"github/markup"},"created_at":"2012-05-20T12:13:15Z","id":"1553914970","actor":{"avatar_url":"https://secure.gravatar.com/avatar/6f4840694cd92f20ce0df5233bbc04b0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"6f4840694cd92f20ce0df5233bbc04b0","url":"https://api.github.com/users/HosipLan","id":158625,"login":"HosipLan"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T12:05:45Z","body":"+1","updated_at":"2012-05-20T12:05:45Z","url":"https://api.github.com/repos/github/markup/issues/comments/5808414","id":5808414,"user":{"avatar_url":"https://secure.gravatar.com/avatar/6ed2b9a3737b1c2ad7fcb1a82fd379bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"6ed2b9a3737b1c2ad7fcb1a82fd379bb","url":"https://api.github.com/users/Lopo","id":279973,"login":"Lopo"}},"action":"created","issue":{"number":34,"created_at":"2011-01-21T16:04:58Z","pull_request":{"diff_url":"https://github.com/github/markup/pull/34.diff","patch_url":"https://github.com/github/markup/pull/34.patch","html_url":"https://github.com/github/markup/pull/34"},"body":"Hello, I've created support for great Texy! text-to-HTML formatter and converter library (http://texy.info, http://github.com/dg/texy).\r\n\r\nHere's my implementation branch: https://github.com/smasty/markup/tree/texy","title":"[new markup] Texy! formatter support","comments":13,"updated_at":"2012-05-20T12:05:45Z","url":"https://api.github.com/repos/github/markup/issues/34","id":541804,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/github/markup/issues/34","user":{"avatar_url":"https://secure.gravatar.com/avatar/c27f2f0deb68f04a58db7b7254df893b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c27f2f0deb68f04a58db7b7254df893b","url":"https://api.github.com/users/smasty","id":218524,"login":"smasty"},"labels":[],"state":"open"}},"public":true,"org":{"avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"61024896f291303615bcd4f7a0dcfb74","url":"https://api.github.com/orgs/github","id":9919,"login":"github"},"repo":{"url":"https://api.github.com/repos/github/markup","id":355893,"name":"github/markup"},"created_at":"2012-05-20T12:05:45Z","id":"1553914335","actor":{"avatar_url":"https://secure.gravatar.com/avatar/6ed2b9a3737b1c2ad7fcb1a82fd379bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"6ed2b9a3737b1c2ad7fcb1a82fd379bb","url":"https://api.github.com/users/Lopo","id":279973,"login":"Lopo"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T11:59:10Z","body":"+1","updated_at":"2012-05-20T11:59:10Z","url":"https://api.github.com/repos/github/markup/issues/comments/5808385","id":5808385,"user":{"avatar_url":"https://secure.gravatar.com/avatar/df9a5876a05095a41d9762c60de90fc6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"df9a5876a05095a41d9762c60de90fc6","url":"https://api.github.com/users/Twista","id":1297511,"login":"Twista"}},"action":"created","issue":{"number":34,"created_at":"2011-01-21T16:04:58Z","pull_request":{"diff_url":"https://github.com/github/markup/pull/34.diff","patch_url":"https://github.com/github/markup/pull/34.patch","html_url":"https://github.com/github/markup/pull/34"},"body":"Hello, I've created support for great Texy! text-to-HTML formatter and converter library (http://texy.info, http://github.com/dg/texy).\r\n\r\nHere's my implementation branch: https://github.com/smasty/markup/tree/texy","title":"[new markup] Texy! formatter support","comments":12,"updated_at":"2012-05-20T11:59:10Z","url":"https://api.github.com/repos/github/markup/issues/34","id":541804,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/github/markup/issues/34","user":{"avatar_url":"https://secure.gravatar.com/avatar/c27f2f0deb68f04a58db7b7254df893b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c27f2f0deb68f04a58db7b7254df893b","url":"https://api.github.com/users/smasty","id":218524,"login":"smasty"},"labels":[],"state":"open"}},"public":true,"org":{"avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"61024896f291303615bcd4f7a0dcfb74","url":"https://api.github.com/orgs/github","id":9919,"login":"github"},"repo":{"url":"https://api.github.com/repos/github/markup","id":355893,"name":"github/markup"},"created_at":"2012-05-20T11:59:11Z","id":"1553913765","actor":{"avatar_url":"https://secure.gravatar.com/avatar/df9a5876a05095a41d9762c60de90fc6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"df9a5876a05095a41d9762c60de90fc6","url":"https://api.github.com/users/Twista","id":1297511,"login":"Twista"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T11:53:44Z","body":"+1","updated_at":"2012-05-20T11:53:44Z","url":"https://api.github.com/repos/github/markup/issues/comments/5808351","id":5808351,"user":{"avatar_url":"https://secure.gravatar.com/avatar/0b532998b3de0282ae25faec12409900?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"0b532998b3de0282ae25faec12409900","url":"https://api.github.com/users/f3l1x","id":538058,"login":"f3l1x"}},"action":"created","issue":{"number":34,"created_at":"2011-01-21T16:04:58Z","pull_request":{"diff_url":"https://github.com/github/markup/pull/34.diff","patch_url":"https://github.com/github/markup/pull/34.patch","html_url":"https://github.com/github/markup/pull/34"},"title":"[new markup] Texy! formatter support","body":"Hello, I've created support for great Texy! text-to-HTML formatter and converter library (http://texy.info, http://github.com/dg/texy).\r\n\r\nHere's my implementation branch: https://github.com/smasty/markup/tree/texy","comments":11,"updated_at":"2012-05-20T11:53:44Z","url":"https://api.github.com/repos/github/markup/issues/34","id":541804,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/github/markup/issues/34","user":{"avatar_url":"https://secure.gravatar.com/avatar/c27f2f0deb68f04a58db7b7254df893b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c27f2f0deb68f04a58db7b7254df893b","url":"https://api.github.com/users/smasty","id":218524,"login":"smasty"},"labels":[],"state":"open"}},"public":true,"org":{"avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"61024896f291303615bcd4f7a0dcfb74","url":"https://api.github.com/orgs/github","id":9919,"login":"github"},"repo":{"url":"https://api.github.com/repos/github/markup","id":355893,"name":"github/markup"},"created_at":"2012-05-20T11:53:44Z","id":"1553913287","actor":{"avatar_url":"https://secure.gravatar.com/avatar/0b532998b3de0282ae25faec12409900?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"0b532998b3de0282ae25faec12409900","url":"https://api.github.com/users/f3l1x","id":538058,"login":"f3l1x"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T11:52:32Z","body":"+1 :)","updated_at":"2012-05-20T11:52:32Z","url":"https://api.github.com/repos/github/markup/issues/comments/5808340","id":5808340,"user":{"avatar_url":"https://secure.gravatar.com/avatar/5632d1bf9598d8d03fa3da1c54f2118e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5632d1bf9598d8d03fa3da1c54f2118e","url":"https://api.github.com/users/enumag","id":539462,"login":"enumag"}},"action":"created","issue":{"number":34,"created_at":"2011-01-21T16:04:58Z","pull_request":{"diff_url":"https://github.com/github/markup/pull/34.diff","patch_url":"https://github.com/github/markup/pull/34.patch","html_url":"https://github.com/github/markup/pull/34"},"body":"Hello, I've created support for great Texy! text-to-HTML formatter and converter library (http://texy.info, http://github.com/dg/texy).\r\n\r\nHere's my implementation branch: https://github.com/smasty/markup/tree/texy","title":"[new markup] Texy! formatter support","comments":10,"updated_at":"2012-05-20T11:52:32Z","url":"https://api.github.com/repos/github/markup/issues/34","id":541804,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/github/markup/issues/34","user":{"avatar_url":"https://secure.gravatar.com/avatar/c27f2f0deb68f04a58db7b7254df893b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c27f2f0deb68f04a58db7b7254df893b","url":"https://api.github.com/users/smasty","id":218524,"login":"smasty"},"labels":[],"state":"open"}},"public":true,"org":{"avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"61024896f291303615bcd4f7a0dcfb74","url":"https://api.github.com/orgs/github","id":9919,"login":"github"},"repo":{"url":"https://api.github.com/repos/github/markup","id":355893,"name":"github/markup"},"created_at":"2012-05-20T11:52:32Z","id":"1553913189","actor":{"avatar_url":"https://secure.gravatar.com/avatar/5632d1bf9598d8d03fa3da1c54f2118e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5632d1bf9598d8d03fa3da1c54f2118e","url":"https://api.github.com/users/enumag","id":539462,"login":"enumag"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T11:43:14Z","body":"Thanks! But in my case I have to wrap the the modal in a form...\n\nI'm thinking about something like this to fix it:\nI've to catch the enter key, when pressed and when a input is active.","updated_at":"2012-05-20T11:43:14Z","url":"https://api.github.com/repos/twitter/bootstrap/issues/comments/5808288","id":5808288,"user":{"avatar_url":"https://secure.gravatar.com/avatar/e491117553ef3b2399721b8916af9813?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e491117553ef3b2399721b8916af9813","url":"https://api.github.com/users/royduin","id":1703233,"login":"royduin"}},"action":"created","issue":{"number":3343,"created_at":"2012-05-03T17:25:01Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"I've got a modal with a form in it and a input field. In de footer of the modal a submit button. When clicking on the submit button the form will be submitted. When pressing enter, from the input field, the modal disappears. Simple example:\r\n\r\n```html\r\n
    \r\n\t
    \r\n\t\t
    \r\n\t\t\t

    Login

    \r\n\t\t
    \r\n\t\t
    \t\r\n\t\t\t\r\n\t\t
    \r\n\t\t
    \r\n\t\t\t\r\n\t\t
    \r\n\t
    \r\n
    \r\n```\r\n\r\nI hope it will be fixed soon!","comments":4,"title":"Modal disappears when press enter","updated_at":"2012-05-20T11:43:14Z","url":"https://api.github.com/repos/twitter/bootstrap/issues/3343","id":4409660,"assignee":null,"milestone":null,"closed_at":"2012-05-04T19:04:44Z","html_url":"https://github.com/twitter/bootstrap/issues/3343","user":{"avatar_url":"https://secure.gravatar.com/avatar/e491117553ef3b2399721b8916af9813?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e491117553ef3b2399721b8916af9813","url":"https://api.github.com/users/royduin","id":1703233,"login":"royduin"},"labels":[],"state":"closed"}},"public":true,"org":{"avatar_url":"https://secure.gravatar.com/avatar/74e977ae0a10f06057a119eef30c6660?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"74e977ae0a10f06057a119eef30c6660","url":"https://api.github.com/orgs/twitter","id":50278,"login":"twitter"},"repo":{"url":"https://api.github.com/repos/twitter/bootstrap","id":2126244,"name":"twitter/bootstrap"},"created_at":"2012-05-20T11:43:16Z","id":"1553912424","actor":{"avatar_url":"https://secure.gravatar.com/avatar/e491117553ef3b2399721b8916af9813?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e491117553ef3b2399721b8916af9813","url":"https://api.github.com/users/royduin","id":1703233,"login":"royduin"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T11:23:11Z","body":"can you add one more image? There is sometimes a min. of 3 images required for the carousel to work.","updated_at":"2012-05-20T11:23:11Z","url":"https://api.github.com/repos/twitter/bootstrap/issues/comments/5808187","id":5808187,"user":{"avatar_url":"https://secure.gravatar.com/avatar/a4f984ab9880a062644a6f9c15ce79e0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"a4f984ab9880a062644a6f9c15ce79e0","url":"https://api.github.com/users/thaibluesky","id":1756528,"login":"thaibluesky"}},"action":"created","issue":{"number":3528,"created_at":"2012-05-18T19:22:21Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"Carousel does not start sliding to the next one after 5 seconds until after I click to the next slide. Only then does the timer start. What am I missing?","comments":8,"title":"Carousel does not start sliding","updated_at":"2012-05-20T11:23:11Z","url":"https://api.github.com/repos/twitter/bootstrap/issues/3528","id":4647904,"assignee":null,"milestone":null,"closed_at":null,"labels":[],"html_url":"https://github.com/twitter/bootstrap/issues/3528","user":{"avatar_url":"https://secure.gravatar.com/avatar/3fdf23df74c9d4897818887e74686e48?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3fdf23df74c9d4897818887e74686e48","url":"https://api.github.com/users/gigdates","id":1179255,"login":"gigdates"},"state":"open"}},"public":true,"org":{"avatar_url":"https://secure.gravatar.com/avatar/74e977ae0a10f06057a119eef30c6660?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"74e977ae0a10f06057a119eef30c6660","url":"https://api.github.com/orgs/twitter","id":50278,"login":"twitter"},"repo":{"url":"https://api.github.com/repos/twitter/bootstrap","id":2126244,"name":"twitter/bootstrap"},"created_at":"2012-05-20T11:23:15Z","id":"1553910775","actor":{"avatar_url":"https://secure.gravatar.com/avatar/a4f984ab9880a062644a6f9c15ce79e0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"a4f984ab9880a062644a6f9c15ce79e0","url":"https://api.github.com/users/thaibluesky","id":1756528,"login":"thaibluesky"}},{"type":"PushEvent","payload":{"head":"03f86a5adb930eac55dea1e903fb958c002d5bc4","size":1,"push_id":79407330,"commits":[{"sha":"03f86a5adb930eac55dea1e903fb958c002d5bc4","author":{"name":"Aymeric Augustin","email":"aymeric.augustin@m4x.org"},"url":"https://api.github.com/repos/django/django/commits/03f86a5adb930eac55dea1e903fb958c002d5bc4","distinct":true,"message":"Fixed #18354 -- Performance issue in CBV.\n\nPrevented repeating a query twice when the model isn't ordered by\n-date_field (in Meta), allow_empty is False and pagination isn't\nenabled."}],"ref":"refs/heads/master"},"public":true,"org":{"avatar_url":"https://secure.gravatar.com/avatar/fd542381031aa84dca86628ece84fc07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"fd542381031aa84dca86628ece84fc07","url":"https://api.github.com/orgs/django","id":27804,"login":"django"},"repo":{"url":"https://api.github.com/repos/django/django","id":4164482,"name":"django/django"},"created_at":"2012-05-20T11:20:49Z","id":"1553910583","actor":{"avatar_url":"https://secure.gravatar.com/avatar/ec12d7f60c595a45665f74b651aefabe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"ec12d7f60c595a45665f74b651aefabe","url":"https://api.github.com/users/aaugustin","id":788910,"login":"aaugustin"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T10:22:07Z","body":"Do you need any additional information from me?","updated_at":"2012-05-20T10:22:07Z","url":"https://api.github.com/repos/mxcl/homebrew/issues/comments/5807859","id":5807859,"user":{"avatar_url":"https://secure.gravatar.com/avatar/457f59eedabca29c1fa9cf798b5a11c4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"457f59eedabca29c1fa9cf798b5a11c4","url":"https://api.github.com/users/fceller","id":392005,"login":"fceller"}},"action":"created","issue":{"number":12215,"created_at":"2012-05-12T19:12:18Z","pull_request":{"diff_url":"https://github.com/mxcl/homebrew/pull/12215.diff","patch_url":"https://github.com/mxcl/homebrew/pull/12215.patch","html_url":"https://github.com/mxcl/homebrew/pull/12215"},"comments":2,"title":"Upgrade ArangoDB (formally known as AvocadoDB) to 0.5.0","body":"We had to rename AvocadoDB to ArangoDB due to legal issues.","updated_at":"2012-05-20T10:22:07Z","url":"https://api.github.com/repos/mxcl/homebrew/issues/12215","id":4548813,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/mxcl/homebrew/issues/12215","user":{"avatar_url":"https://secure.gravatar.com/avatar/457f59eedabca29c1fa9cf798b5a11c4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"457f59eedabca29c1fa9cf798b5a11c4","url":"https://api.github.com/users/fceller","id":392005,"login":"fceller"},"labels":[{"name":"renames","url":"https://api.github.com/repos/mxcl/homebrew/labels/renames","color":"e102d8"}],"state":"open"}},"public":true,"repo":{"url":"https://api.github.com/repos/mxcl/homebrew","id":206084,"name":"mxcl/homebrew"},"created_at":"2012-05-20T10:22:08Z","id":"1553905852","actor":{"avatar_url":"https://secure.gravatar.com/avatar/457f59eedabca29c1fa9cf798b5a11c4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"457f59eedabca29c1fa9cf798b5a11c4","url":"https://api.github.com/users/fceller","id":392005,"login":"fceller"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T10:20:14Z","body":"Cfernandi, thanks, but that didn't help. The words aren't smushing together, it's just one of the words is too long and overflows the right of the screen. I guess I'll just have to get a shorter surname :P","updated_at":"2012-05-20T10:20:14Z","url":"https://api.github.com/repos/twitter/bootstrap/issues/comments/5807847","id":5807847,"user":{"avatar_url":"https://secure.gravatar.com/avatar/6eff6b838ee9a1b1d5defa126a714ffc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"6eff6b838ee9a1b1d5defa126a714ffc","url":"https://api.github.com/users/hughrawlinson","id":829836,"login":"hughrawlinson"}},"action":"created","issue":{"number":3230,"created_at":"2012-04-25T17:20:27Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"When you use a button to present a modal on mobile, the screen turns black, and only does the modal appear after some crafty scrolling and zooming. This is not apparent to a new user.\r\n\r\nAny fixes?\r\n\r\nMore discussion on the problem here: https://github.com/twitter/bootstrap/issues/1036","comments":16,"title":"Modals in 2.0 are broken on mobile.","updated_at":"2012-05-20T10:20:14Z","url":"https://api.github.com/repos/twitter/bootstrap/issues/3230","id":4285344,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/twitter/bootstrap/issues/3230","user":{"avatar_url":"https://secure.gravatar.com/avatar/c8112e74c84fea5e2faccbc7da3c2ba9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c8112e74c84fea5e2faccbc7da3c2ba9","url":"https://api.github.com/users/ATSiem","id":1068543,"login":"ATSiem"},"labels":[{"name":"css","url":"https://api.github.com/repos/twitter/bootstrap/labels/css","color":"7a43b6"},{"name":"responsive","url":"https://api.github.com/repos/twitter/bootstrap/labels/responsive","color":"ae8bd4"}],"state":"open"}},"public":true,"org":{"avatar_url":"https://secure.gravatar.com/avatar/74e977ae0a10f06057a119eef30c6660?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"74e977ae0a10f06057a119eef30c6660","url":"https://api.github.com/orgs/twitter","id":50278,"login":"twitter"},"repo":{"url":"https://api.github.com/repos/twitter/bootstrap","id":2126244,"name":"twitter/bootstrap"},"created_at":"2012-05-20T10:20:18Z","id":"1553905709","actor":{"avatar_url":"https://secure.gravatar.com/avatar/6eff6b838ee9a1b1d5defa126a714ffc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"6eff6b838ee9a1b1d5defa126a714ffc","url":"https://api.github.com/users/hughrawlinson","id":829836,"login":"hughrawlinson"}},{"type":"PushEvent","payload":{"head":"b0c1e5c081472436bf2300af3073cef1df1bd696","size":1,"push_id":79403570,"ref":"refs/heads/master","commits":[{"sha":"b0c1e5c081472436bf2300af3073cef1df1bd696","author":{"name":"Aymeric Augustin","email":"aymeric.augustin@m4x.org"},"url":"https://api.github.com/repos/django/django/commits/b0c1e5c081472436bf2300af3073cef1df1bd696","distinct":true,"message":"Documented next/previous_week. Refs #10890."}]},"public":true,"org":{"avatar_url":"https://secure.gravatar.com/avatar/fd542381031aa84dca86628ece84fc07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"fd542381031aa84dca86628ece84fc07","url":"https://api.github.com/orgs/django","id":27804,"login":"django"},"repo":{"url":"https://api.github.com/repos/django/django","id":4164482,"name":"django/django"},"created_at":"2012-05-20T09:58:44Z","id":"1553903002","actor":{"avatar_url":"https://secure.gravatar.com/avatar/ec12d7f60c595a45665f74b651aefabe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"ec12d7f60c595a45665f74b651aefabe","url":"https://api.github.com/users/aaugustin","id":788910,"login":"aaugustin"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T09:27:14Z","body":"Please excuse the crudity of this model... ;) I'm too exhausted to really pretty it up right now, but here's a new mock-up based on a combination of my old one and some of the others I've seen here: http://jsfiddle.net/VEW2K/\n\nA rundown:\n\n* No javascript.\n* No extra tags (just a checkbox and a label).\n* Should degrade gracefully.\n\nI have not tested it in IE or Firefox, and I was not able to get CSS transitions working on the :before and :after pseudo content, so maybe someone else will have better luck. But I think it's cleaner than my old test, and I prefer a non-JS solution personally.","updated_at":"2012-05-20T09:27:14Z","url":"https://api.github.com/repos/twitter/bootstrap/issues/comments/5807584","id":5807584,"user":{"avatar_url":"https://secure.gravatar.com/avatar/02688ffd42b4265a4fa2ca1683115e4e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"02688ffd42b4265a4fa2ca1683115e4e","url":"https://api.github.com/users/thomshouse","id":75411,"login":"thomshouse"}},"action":"created","issue":{"number":1935,"created_at":"2012-02-13T00:05:29Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"comments":39,"body":"Not sure if anyone has mentioned this or not, but it would be cool to have something like this:\r\n\r\nhttp://papermashup.com/demos/ajax-switch/","title":"Create ON/OFF Switch","updated_at":"2012-05-20T09:27:14Z","url":"https://api.github.com/repos/twitter/bootstrap/issues/1935","id":3194346,"assignee":null,"milestone":{"number":7,"created_at":"2012-01-09T17:18:56Z","due_on":null,"title":"v2.1.0","creator":{"avatar_url":"https://secure.gravatar.com/avatar/bc4ab438f7a4ce1c406aadc688427f2c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bc4ab438f7a4ce1c406aadc688427f2c","url":"https://api.github.com/users/markdotto","id":98681,"login":"markdotto"},"url":"https://api.github.com/repos/twitter/bootstrap/milestones/7","id":71627,"closed_issues":4,"open_issues":15,"description":"","state":"open"},"closed_at":null,"html_url":"https://github.com/twitter/bootstrap/issues/1935","user":{"avatar_url":"https://secure.gravatar.com/avatar/25fb0acc0fc379c2974004bb5d050bc2?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"25fb0acc0fc379c2974004bb5d050bc2","url":"https://api.github.com/users/adetwiler","id":1124801,"login":"adetwiler"},"labels":[{"name":"feature","url":"https://api.github.com/repos/twitter/bootstrap/labels/feature","color":"4bb14b"}],"state":"open"}},"public":true,"org":{"avatar_url":"https://secure.gravatar.com/avatar/74e977ae0a10f06057a119eef30c6660?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"74e977ae0a10f06057a119eef30c6660","url":"https://api.github.com/orgs/twitter","id":50278,"login":"twitter"},"repo":{"url":"https://api.github.com/repos/twitter/bootstrap","id":2126244,"name":"twitter/bootstrap"},"created_at":"2012-05-20T09:27:16Z","id":"1553896923","actor":{"avatar_url":"https://secure.gravatar.com/avatar/02688ffd42b4265a4fa2ca1683115e4e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"02688ffd42b4265a4fa2ca1683115e4e","url":"https://api.github.com/users/thomshouse","id":75411,"login":"thomshouse"}},{"type":"IssuesEvent","payload":{"action":"opened","issue":{"number":3546,"created_at":"2012-05-20T09:00:43Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"I have a problem when I integrate the content with jquery \".load\" (a form for example) in a modal window or a single page. All scripts tooltips, popover, datepicker no longer starts?\n\nBy cons scripts work fine in a normal page.\n\nIf I integrate content directly in the tags \"modal-body\" of the modal window, the scripts work perfectly\n\nThe objective is to integrate a form on the fly, in a single modal window, after the click of a button. But once the loaded content such as a datepicker does not work! or the tooltips on a label, ...\n\nhere a test : http://testcode.olvani.net/test2\n\nThank for reply\nOlivier","comments":0,"title":"Problem for load script (tooltips, popover,...) after use jquery .load dynamic content","updated_at":"2012-05-20T09:00:43Z","url":"https://api.github.com/repos/twitter/bootstrap/issues/3546","id":4658922,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/twitter/bootstrap/issues/3546","user":{"avatar_url":"https://secure.gravatar.com/avatar/36677d5ad489b685b3a437a247733339?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"36677d5ad489b685b3a437a247733339","url":"https://api.github.com/users/olvani","id":1643481,"login":"olvani"},"labels":[],"state":"open"}},"public":true,"org":{"avatar_url":"https://secure.gravatar.com/avatar/74e977ae0a10f06057a119eef30c6660?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"74e977ae0a10f06057a119eef30c6660","url":"https://api.github.com/orgs/twitter","id":50278,"login":"twitter"},"repo":{"url":"https://api.github.com/repos/twitter/bootstrap","id":2126244,"name":"twitter/bootstrap"},"created_at":"2012-05-20T09:00:45Z","id":"1553894937","actor":{"avatar_url":"https://secure.gravatar.com/avatar/36677d5ad489b685b3a437a247733339?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"36677d5ad489b685b3a437a247733339","url":"https://api.github.com/users/olvani","id":1643481,"login":"olvani"}},{"type":"PullRequestEvent","payload":{"number":3545,"pull_request":{"issue_url":"https://github.com/twitter/bootstrap/issues/3545","number":3545,"head":{"repo":{"name":"bootstrap","size":120,"created_at":"2012-05-20T08:48:41Z","has_wiki":true,"clone_url":"https://github.com/pvorb/bootstrap.git","private":false,"watchers":1,"updated_at":"2012-05-20T08:54:22Z","ssh_url":"git@github.com:pvorb/bootstrap.git","fork":true,"url":"https://api.github.com/repos/pvorb/bootstrap","git_url":"git://github.com/pvorb/bootstrap.git","language":"JavaScript","id":4383503,"pushed_at":"2012-05-20T08:54:22Z","svn_url":"https://github.com/pvorb/bootstrap","has_downloads":true,"mirror_url":null,"open_issues":0,"has_issues":false,"homepage":"http://twitter.github.com/bootstrap","description":"HTML, CSS, and JS toolkit from Twitter","forks":0,"html_url":"https://github.com/pvorb/bootstrap","owner":{"gravatar_id":"b30a7c139117a36a3f2cc2958942847e","avatar_url":"https://secure.gravatar.com/avatar/b30a7c139117a36a3f2cc2958942847e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/pvorb","id":183534,"login":"pvorb"}},"label":"pvorb:patch-1","sha":"faf2866f96513dc1c2775974518d979feb554dbd","ref":"patch-1","user":{"gravatar_id":"b30a7c139117a36a3f2cc2958942847e","avatar_url":"https://secure.gravatar.com/avatar/b30a7c139117a36a3f2cc2958942847e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/pvorb","id":183534,"login":"pvorb"}},"merged":false,"created_at":"2012-05-20T08:55:24Z","merged_by":null,"changed_files":1,"comments":0,"body":"Fix for issue #3543","title":"Remove re-declaration of font-fam, font-size, and line-height in p","diff_url":"https://github.com/twitter/bootstrap/pull/3545.diff","updated_at":"2012-05-20T08:55:24Z","additions":0,"_links":{"html":{"href":"https://github.com/twitter/bootstrap/pull/3545"},"self":{"href":"https://api.github.com/repos/twitter/bootstrap/pulls/3545"},"comments":{"href":"https://api.github.com/repos/twitter/bootstrap/issues/3545/comments"},"issue":{"href":"https://api.github.com/repos/twitter/bootstrap/issues/3545"},"review_comments":{"href":"https://api.github.com/repos/twitter/bootstrap/pulls/3545/comments"}},"url":"https://api.github.com/repos/twitter/bootstrap/pulls/3545","id":1388338,"patch_url":"https://github.com/twitter/bootstrap/pull/3545.patch","mergeable":null,"merged_at":null,"commits":1,"closed_at":null,"user":{"gravatar_id":"b30a7c139117a36a3f2cc2958942847e","avatar_url":"https://secure.gravatar.com/avatar/b30a7c139117a36a3f2cc2958942847e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/pvorb","id":183534,"login":"pvorb"},"deletions":3,"review_comments":0,"html_url":"https://github.com/twitter/bootstrap/pull/3545","state":"open","base":{"repo":{"name":"bootstrap","size":1244,"created_at":"2011-07-29T21:19:00Z","has_wiki":true,"clone_url":"https://github.com/twitter/bootstrap.git","private":false,"watchers":29097,"updated_at":"2012-05-20T08:48:41Z","ssh_url":"git@github.com:twitter/bootstrap.git","fork":false,"url":"https://api.github.com/repos/twitter/bootstrap","git_url":"git://github.com/twitter/bootstrap.git","language":"JavaScript","id":2126244,"pushed_at":"2012-05-18T05:00:54Z","svn_url":"https://github.com/twitter/bootstrap","has_downloads":true,"mirror_url":null,"open_issues":222,"has_issues":true,"homepage":"http://twitter.github.com/bootstrap","description":"HTML, CSS, and JS toolkit from Twitter","forks":5699,"html_url":"https://github.com/twitter/bootstrap","owner":{"gravatar_id":"74e977ae0a10f06057a119eef30c6660","avatar_url":"https://secure.gravatar.com/avatar/74e977ae0a10f06057a119eef30c6660?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","url":"https://api.github.com/users/twitter","id":50278,"login":"twitter"}},"label":"twitter:master","sha":"b261f9781bbf31f499cb55c49451dc0c0ad43062","ref":"master","user":{"gravatar_id":"74e977ae0a10f06057a119eef30c6660","avatar_url":"https://secure.gravatar.com/avatar/74e977ae0a10f06057a119eef30c6660?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","url":"https://api.github.com/users/twitter","id":50278,"login":"twitter"}}},"action":"opened"},"public":true,"org":{"avatar_url":"https://secure.gravatar.com/avatar/74e977ae0a10f06057a119eef30c6660?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"74e977ae0a10f06057a119eef30c6660","url":"https://api.github.com/orgs/twitter","id":50278,"login":"twitter"},"repo":{"url":"https://api.github.com/repos/twitter/bootstrap","id":2126244,"name":"twitter/bootstrap"},"created_at":"2012-05-20T08:55:26Z","id":"1553894547","actor":{"avatar_url":"https://secure.gravatar.com/avatar/b30a7c139117a36a3f2cc2958942847e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b30a7c139117a36a3f2cc2958942847e","url":"https://api.github.com/users/pvorb","id":183534,"login":"pvorb"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T08:33:02Z","body":"This should be removed. It's not necessary because of traversing.","updated_at":"2012-05-20T08:33:02Z","url":"https://api.github.com/repos/twitter/bootstrap/issues/comments/5807352","id":5807352,"user":{"avatar_url":"https://secure.gravatar.com/avatar/4c39d9893256e9da887449f1d90d9562?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"4c39d9893256e9da887449f1d90d9562","url":"https://api.github.com/users/macx","id":84112,"login":"macx"}},"action":"created","issue":{"number":3543,"created_at":"2012-05-19T08:23:49Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"comments":1,"body":"The attributes `font-family`, `font-size` and `line-height` are set identically for both `` and `

    `. What's the rationale for repeating the declaration in `

    `? Regards, Christian","title":"Font assignment overdone?","updated_at":"2012-05-20T08:33:02Z","url":"https://api.github.com/repos/twitter/bootstrap/issues/3543","id":4653303,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/twitter/bootstrap/issues/3543","user":{"avatar_url":"https://secure.gravatar.com/avatar/04d99189f86d1d269b04876e68092784?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04d99189f86d1d269b04876e68092784","url":"https://api.github.com/users/datenimperator","id":112130,"login":"datenimperator"},"labels":[],"state":"open"}},"public":true,"org":{"avatar_url":"https://secure.gravatar.com/avatar/74e977ae0a10f06057a119eef30c6660?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"74e977ae0a10f06057a119eef30c6660","url":"https://api.github.com/orgs/twitter","id":50278,"login":"twitter"},"repo":{"url":"https://api.github.com/repos/twitter/bootstrap","id":2126244,"name":"twitter/bootstrap"},"created_at":"2012-05-20T08:33:04Z","id":"1553892964","actor":{"avatar_url":"https://secure.gravatar.com/avatar/4c39d9893256e9da887449f1d90d9562?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"4c39d9893256e9da887449f1d90d9562","url":"https://api.github.com/users/macx","id":84112,"login":"macx"}},{"type":"PushEvent","payload":{"head":"4986f61c9ce00ce792683cce9e47ea1579631155","size":2,"push_id":79397931,"commits":[{"sha":"9c52a9b0ee98d1dce4a427e8a09307d399fe414d","author":{"name":"Bryan Donlan","email":"bdonlan@amazon.com"},"url":"https://api.github.com/repos/boto/boto/commits/9c52a9b0ee98d1dce4a427e8a09307d399fe414d","distinct":true,"message":"Fix infinite loop when listing a large (100+) number of tables in dynamodb"},{"sha":"4986f61c9ce00ce792683cce9e47ea1579631155","author":{"name":"Mitch Garnaat","email":"mitch@garnaat.com"},"url":"https://api.github.com/repos/boto/boto/commits/4986f61c9ce00ce792683cce9e47ea1579631155","distinct":true,"message":"Removing extraneous host param from Layer2 contructor."}],"ref":"refs/heads/develop"},"public":true,"org":{"avatar_url":"https://secure.gravatar.com/avatar/9062d6f913c867ce042928d6637abd05?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"9062d6f913c867ce042928d6637abd05","url":"https://api.github.com/orgs/boto","id":327752,"login":"boto"},"repo":{"url":"https://api.github.com/repos/boto/boto","id":771016,"name":"boto/boto"},"created_at":"2012-05-20T07:40:29Z","id":"1553889294","actor":{"avatar_url":"https://secure.gravatar.com/avatar/c3dc609a225fde3f6d0395ac59c576ce?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c3dc609a225fde3f6d0395ac59c576ce","url":"https://api.github.com/users/garnaat","id":2056,"login":"garnaat"}},{"type":"PullRequestEvent","payload":{"number":770,"pull_request":{"issue_url":"https://github.com/boto/boto/issues/770","head":{"repo":{"name":"boto","master_branch":"develop","created_at":"2012-05-19T23:11:59Z","size":120,"has_wiki":true,"clone_url":"https://github.com/bdonlan/boto.git","updated_at":"2012-05-19T23:13:56Z","private":false,"watchers":1,"language":"Python","git_url":"git://github.com/bdonlan/boto.git","ssh_url":"git@github.com:bdonlan/boto.git","fork":true,"url":"https://api.github.com/repos/bdonlan/boto","id":4381487,"pushed_at":"2012-05-19T23:13:56Z","svn_url":"https://github.com/bdonlan/boto","open_issues":0,"mirror_url":null,"has_downloads":true,"has_issues":false,"homepage":"http://boto.readthedocs.org/","forks":0,"description":"Python interface to Amazon Web Services","html_url":"https://github.com/bdonlan/boto","owner":{"avatar_url":"https://secure.gravatar.com/avatar/53e4dcccc5d1dbef4a3babf0cb6ba6fc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"53e4dcccc5d1dbef4a3babf0cb6ba6fc","url":"https://api.github.com/users/bdonlan","id":9473,"login":"bdonlan"}},"label":"bdonlan:develop","sha":"9c52a9b0ee98d1dce4a427e8a09307d399fe414d","ref":"develop","user":{"avatar_url":"https://secure.gravatar.com/avatar/53e4dcccc5d1dbef4a3babf0cb6ba6fc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"53e4dcccc5d1dbef4a3babf0cb6ba6fc","url":"https://api.github.com/users/bdonlan","id":9473,"login":"bdonlan"}},"number":770,"created_at":"2012-05-19T23:15:06Z","changed_files":1,"merged_by":{"avatar_url":"https://secure.gravatar.com/avatar/c3dc609a225fde3f6d0395ac59c576ce?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c3dc609a225fde3f6d0395ac59c576ce","url":"https://api.github.com/users/garnaat","id":2056,"login":"garnaat"},"merged":true,"body":"The current code loops when there are more tables, but continues requesting a list from the start, leading to an infinite loop.","comments":0,"title":"Fix infinite loop when listing a large (100+) number of tables in dynamodb","updated_at":"2012-05-20T07:40:29Z","additions":7,"diff_url":"https://github.com/boto/boto/pull/770.diff","_links":{"html":{"href":"https://github.com/boto/boto/pull/770"},"self":{"href":"https://api.github.com/repos/boto/boto/pulls/770"},"comments":{"href":"https://api.github.com/repos/boto/boto/issues/770/comments"},"issue":{"href":"https://api.github.com/repos/boto/boto/issues/770"},"review_comments":{"href":"https://api.github.com/repos/boto/boto/pulls/770/comments"}},"url":"https://api.github.com/repos/boto/boto/pulls/770","id":1387801,"patch_url":"https://github.com/boto/boto/pull/770.patch","mergeable":null,"merged_at":"2012-05-20T07:40:29Z","closed_at":"2012-05-20T07:40:29Z","commits":1,"html_url":"https://github.com/boto/boto/pull/770","user":{"avatar_url":"https://secure.gravatar.com/avatar/53e4dcccc5d1dbef4a3babf0cb6ba6fc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"53e4dcccc5d1dbef4a3babf0cb6ba6fc","url":"https://api.github.com/users/bdonlan","id":9473,"login":"bdonlan"},"review_comments":0,"deletions":2,"state":"closed","base":{"repo":{"name":"boto","master_branch":"develop","created_at":"2010-07-12T19:15:33Z","size":4183,"has_wiki":true,"clone_url":"https://github.com/boto/boto.git","updated_at":"2012-05-20T07:40:28Z","private":false,"watchers":1519,"language":"Python","git_url":"git://github.com/boto/boto.git","ssh_url":"git@github.com:boto/boto.git","fork":false,"url":"https://api.github.com/repos/boto/boto","id":771016,"pushed_at":"2012-05-20T07:40:27Z","svn_url":"https://github.com/boto/boto","open_issues":131,"mirror_url":null,"has_downloads":true,"has_issues":true,"homepage":"http://boto.readthedocs.org/","forks":395,"description":"Python interface to Amazon Web Services","html_url":"https://github.com/boto/boto","owner":{"avatar_url":"https://secure.gravatar.com/avatar/9062d6f913c867ce042928d6637abd05?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"9062d6f913c867ce042928d6637abd05","url":"https://api.github.com/users/boto","id":327752,"login":"boto"}},"label":"boto:develop","sha":"0bd4d8b270fd5796e2e8b570f8703410bdd02820","ref":"develop","user":{"avatar_url":"https://secure.gravatar.com/avatar/9062d6f913c867ce042928d6637abd05?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"9062d6f913c867ce042928d6637abd05","url":"https://api.github.com/users/boto","id":327752,"login":"boto"}}},"action":"closed"},"public":true,"org":{"avatar_url":"https://secure.gravatar.com/avatar/9062d6f913c867ce042928d6637abd05?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"9062d6f913c867ce042928d6637abd05","url":"https://api.github.com/orgs/boto","id":327752,"login":"boto"},"repo":{"url":"https://api.github.com/repos/boto/boto","id":771016,"name":"boto/boto"},"created_at":"2012-05-20T07:40:29Z","id":"1553889293","actor":{"avatar_url":"https://secure.gravatar.com/avatar/c3dc609a225fde3f6d0395ac59c576ce?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c3dc609a225fde3f6d0395ac59c576ce","url":"https://api.github.com/users/garnaat","id":2056,"login":"garnaat"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T07:39:27Z","body":"Good idea although I wonder if /Versions/1.8/ might be even better considering we die on our arse with 1.9.","updated_at":"2012-05-20T07:39:27Z","url":"https://api.github.com/repos/mxcl/homebrew/issues/comments/5807134","id":5807134,"user":{"avatar_url":"https://secure.gravatar.com/avatar/215e0166d4d8265395c5d9076da73c70?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"215e0166d4d8265395c5d9076da73c70","url":"https://api.github.com/users/mikemcquaid","id":125011,"login":"mikemcquaid"}},"action":"created","issue":{"number":12333,"created_at":"2012-05-20T01:39:12Z","pull_request":{"diff_url":"https://github.com/mxcl/homebrew/pull/12333.diff","patch_url":"https://github.com/mxcl/homebrew/pull/12333.patch","html_url":"https://github.com/mxcl/homebrew/pull/12333"},"body":"re: #12009, this commit replaces all usages of /usr/bin/ruby with the full Framework path, which is *hopefully* less likely to be altered.\n\nSince we're no longer dealing with a default ruby path which is a symlink, I simplified the `brew --config` checks for the system ruby.","title":"Replace /usr/bin/ruby with full Framework path","comments":2,"updated_at":"2012-05-20T07:39:27Z","url":"https://api.github.com/repos/mxcl/homebrew/issues/12333","id":4657778,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/mxcl/homebrew/issues/12333","user":{"avatar_url":"https://secure.gravatar.com/avatar/f5f2035f07c635d24c62cf211d37f3d4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"f5f2035f07c635d24c62cf211d37f3d4","url":"https://api.github.com/users/mistydemeo","id":780485,"login":"mistydemeo"},"labels":[],"state":"open"}},"public":true,"repo":{"url":"https://api.github.com/repos/mxcl/homebrew","id":206084,"name":"mxcl/homebrew"},"created_at":"2012-05-20T07:39:29Z","id":"1553889227","actor":{"avatar_url":"https://secure.gravatar.com/avatar/215e0166d4d8265395c5d9076da73c70?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"215e0166d4d8265395c5d9076da73c70","url":"https://api.github.com/users/mikemcquaid","id":125011,"login":"mikemcquaid"}},{"type":"PullRequestEvent","payload":{"number":648,"pull_request":{"issue_url":"https://github.com/mbostock/d3/issues/648","head":{"repo":{"name":"d3","created_at":"2012-05-20T05:25:26Z","size":208,"has_wiki":true,"clone_url":"https://github.com/eghm/d3.git","updated_at":"2012-05-20T05:44:03Z","private":false,"watchers":1,"git_url":"git://github.com/eghm/d3.git","ssh_url":"git@github.com:eghm/d3.git","fork":true,"language":"JavaScript","url":"https://api.github.com/repos/eghm/d3","id":4382862,"pushed_at":"2012-05-20T05:44:02Z","svn_url":"https://github.com/eghm/d3","open_issues":0,"mirror_url":null,"has_downloads":true,"has_issues":false,"homepage":"http://d3js.org","forks":0,"description":"A JavaScript visualization library for HTML and SVG.","html_url":"https://github.com/eghm/d3","owner":{"avatar_url":"https://secure.gravatar.com/avatar/102614634bcb88f28cc84b9c8d1a7e66?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"102614634bcb88f28cc84b9c8d1a7e66","url":"https://api.github.com/users/eghm","id":52850,"login":"eghm"}},"label":"eghm:master","sha":"4501a5e68ad31f3ea85983188f1a75906f3afd6d","ref":"master","user":{"avatar_url":"https://secure.gravatar.com/avatar/102614634bcb88f28cc84b9c8d1a7e66?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"102614634bcb88f28cc84b9c8d1a7e66","url":"https://api.github.com/users/eghm","id":52850,"login":"eghm"}},"number":648,"created_at":"2012-05-20T05:47:07Z","changed_files":1,"merged_by":null,"merged":false,"body":"An undefined import causes a fatal error in the bundle-radial demo. This commit avoids the error, the ui will go on to draw a line to a blank node. To recreate initial undefined error add a un-\"name\"ed node to one of the imports in examples/data/flare-imports.\n\nThanks for sharing such an awesome tool.\n","comments":0,"title":"add start and end parent != undefined in d3_layout_bundlePath while","updated_at":"2012-05-20T05:47:07Z","additions":2,"diff_url":"https://github.com/mbostock/d3/pull/648.diff","_links":{"html":{"href":"https://github.com/mbostock/d3/pull/648"},"self":{"href":"https://api.github.com/repos/mbostock/d3/pulls/648"},"comments":{"href":"https://api.github.com/repos/mbostock/d3/issues/648/comments"},"issue":{"href":"https://api.github.com/repos/mbostock/d3/issues/648"},"review_comments":{"href":"https://api.github.com/repos/mbostock/d3/pulls/648/comments"}},"url":"https://api.github.com/repos/mbostock/d3/pulls/648","id":1388185,"patch_url":"https://github.com/mbostock/d3/pull/648.patch","mergeable":null,"merged_at":null,"closed_at":null,"commits":1,"html_url":"https://github.com/mbostock/d3/pull/648","user":{"avatar_url":"https://secure.gravatar.com/avatar/102614634bcb88f28cc84b9c8d1a7e66?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"102614634bcb88f28cc84b9c8d1a7e66","url":"https://api.github.com/users/eghm","id":52850,"login":"eghm"},"review_comments":0,"deletions":2,"state":"open","base":{"repo":{"name":"d3","created_at":"2010-09-27T17:22:42Z","size":3268,"has_wiki":true,"clone_url":"https://github.com/mbostock/d3.git","updated_at":"2012-05-20T05:25:26Z","private":false,"watchers":5893,"git_url":"git://github.com/mbostock/d3.git","ssh_url":"git@github.com:mbostock/d3.git","fork":false,"language":"JavaScript","url":"https://api.github.com/repos/mbostock/d3","id":943149,"pushed_at":"2012-05-17T19:11:22Z","svn_url":"https://github.com/mbostock/d3","open_issues":110,"mirror_url":null,"has_downloads":true,"has_issues":true,"homepage":"http://d3js.org","forks":670,"description":"A JavaScript visualization library for HTML and SVG.","html_url":"https://github.com/mbostock/d3","owner":{"avatar_url":"https://secure.gravatar.com/avatar/005a27e09fe946ebef64bf4d134efc0a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"005a27e09fe946ebef64bf4d134efc0a","url":"https://api.github.com/users/mbostock","id":230541,"login":"mbostock"}},"label":"mbostock:master","sha":"dd2a424f2bdb8fae1dab5ac27168f5bba186a0c4","ref":"master","user":{"avatar_url":"https://secure.gravatar.com/avatar/005a27e09fe946ebef64bf4d134efc0a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"005a27e09fe946ebef64bf4d134efc0a","url":"https://api.github.com/users/mbostock","id":230541,"login":"mbostock"}}},"action":"opened"},"public":true,"repo":{"url":"https://api.github.com/repos/mbostock/d3","id":943149,"name":"mbostock/d3"},"created_at":"2012-05-20T05:47:09Z","id":"1553878057","actor":{"avatar_url":"https://secure.gravatar.com/avatar/102614634bcb88f28cc84b9c8d1a7e66?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"102614634bcb88f28cc84b9c8d1a7e66","url":"https://api.github.com/users/eghm","id":52850,"login":"eghm"}},{"type":"PushEvent","payload":{"head":"389347c92a590c6e6165a53ae054e48ca6a23db9","size":1,"push_id":79392783,"commits":[{"sha":"389347c92a590c6e6165a53ae054e48ca6a23db9","author":{"name":"Nick Stenning","email":"nick@whiteink.com"},"url":"https://api.github.com/repos/mxcl/homebrew/commits/389347c92a590c6e6165a53ae054e48ca6a23db9","distinct":true,"message":"mu: make emacs support optional\n\nCloses #12306.\n\nSigned-off-by: Jack Nagel "}],"ref":"refs/heads/master"},"public":true,"repo":{"url":"https://api.github.com/repos/mxcl/homebrew","id":206084,"name":"mxcl/homebrew"},"created_at":"2012-05-20T05:20:38Z","id":"1553874168","actor":{"avatar_url":"https://secure.gravatar.com/avatar/68602fa96bdda4c677ece48ab42b6eb2?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"68602fa96bdda4c677ece48ab42b6eb2","url":"https://api.github.com/users/jacknagel","id":568243,"login":"jacknagel"}},{"type":"PullRequestEvent","payload":{"number":12306,"pull_request":{"issue_url":"https://github.com/mxcl/homebrew/issues/12306","head":{"repo":{"name":"homebrew","master_branch":"master","created_at":"2011-10-03T12:09:31Z","size":188,"has_wiki":true,"clone_url":"https://github.com/nickstenning/homebrew.git","updated_at":"2012-05-19T21:24:29Z","private":false,"watchers":1,"git_url":"git://github.com/nickstenning/homebrew.git","ssh_url":"git@github.com:nickstenning/homebrew.git","fork":true,"url":"https://api.github.com/repos/nickstenning/homebrew","language":"Ruby","id":2504318,"pushed_at":"2012-05-19T21:24:29Z","svn_url":"https://github.com/nickstenning/homebrew","mirror_url":null,"open_issues":0,"has_downloads":false,"has_issues":false,"homepage":"http://mxcl.github.com/homebrew","forks":0,"description":"The missing package manager for OS X.","html_url":"https://github.com/nickstenning/homebrew","owner":{"avatar_url":"https://secure.gravatar.com/avatar/7c753fa710877b55f7596b47f5a554b1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"7c753fa710877b55f7596b47f5a554b1","url":"https://api.github.com/users/nickstenning","id":3602,"login":"nickstenning"}},"label":"nickstenning:fix-mu","sha":"1a4c4f1a3d3a87da4a49ae4209186edc695eb715","ref":"fix-mu","user":{"avatar_url":"https://secure.gravatar.com/avatar/7c753fa710877b55f7596b47f5a554b1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"7c753fa710877b55f7596b47f5a554b1","url":"https://api.github.com/users/nickstenning","id":3602,"login":"nickstenning"}},"number":12306,"created_at":"2012-05-18T10:18:22Z","changed_files":1,"merged_by":null,"merged":false,"body":"This patch removes a slightly insane dependency of `mu` on the `emacs` package.","comments":7,"title":"mu: don't depend on emacs","updated_at":"2012-05-20T05:19:00Z","additions":11,"diff_url":"https://github.com/mxcl/homebrew/pull/12306.diff","_links":{"html":{"href":"https://github.com/mxcl/homebrew/pull/12306"},"self":{"href":"https://api.github.com/repos/mxcl/homebrew/pulls/12306"},"comments":{"href":"https://api.github.com/repos/mxcl/homebrew/issues/12306/comments"},"issue":{"href":"https://api.github.com/repos/mxcl/homebrew/issues/12306"},"review_comments":{"href":"https://api.github.com/repos/mxcl/homebrew/pulls/12306/comments"}},"url":"https://api.github.com/repos/mxcl/homebrew/pulls/12306","id":1380202,"patch_url":"https://github.com/mxcl/homebrew/pull/12306.patch","mergeable":true,"merged_at":null,"closed_at":"2012-05-20T05:19:00Z","commits":3,"html_url":"https://github.com/mxcl/homebrew/pull/12306","user":{"avatar_url":"https://secure.gravatar.com/avatar/7c753fa710877b55f7596b47f5a554b1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"7c753fa710877b55f7596b47f5a554b1","url":"https://api.github.com/users/nickstenning","id":3602,"login":"nickstenning"},"review_comments":0,"deletions":1,"state":"closed","base":{"repo":{"name":"homebrew","master_branch":"master","created_at":"2009-05-20T19:38:37Z","size":4436,"has_wiki":true,"clone_url":"https://github.com/mxcl/homebrew.git","updated_at":"2012-05-20T05:18:59Z","private":false,"watchers":8673,"git_url":"git://github.com/mxcl/homebrew.git","ssh_url":"git@github.com:mxcl/homebrew.git","fork":false,"url":"https://api.github.com/repos/mxcl/homebrew","language":"Ruby","id":206084,"pushed_at":"2012-05-20T05:18:59Z","svn_url":"https://github.com/mxcl/homebrew","mirror_url":null,"open_issues":423,"has_downloads":false,"has_issues":true,"homepage":"http://mxcl.github.com/homebrew","forks":3960,"description":"The missing package manager for OS X.","html_url":"https://github.com/mxcl/homebrew","owner":{"avatar_url":"https://secure.gravatar.com/avatar/25ff3dfe48d3847ecf9971aab99589fb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"25ff3dfe48d3847ecf9971aab99589fb","url":"https://api.github.com/users/mxcl","id":58962,"login":"mxcl"}},"label":"mxcl:master","sha":"7ac1cbc996e0f18aaabad5ef327ff57161e0ae2e","ref":"master","user":{"avatar_url":"https://secure.gravatar.com/avatar/25ff3dfe48d3847ecf9971aab99589fb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"25ff3dfe48d3847ecf9971aab99589fb","url":"https://api.github.com/users/mxcl","id":58962,"login":"mxcl"}}},"action":"closed"},"public":true,"repo":{"url":"https://api.github.com/repos/mxcl/homebrew","id":206084,"name":"mxcl/homebrew"},"created_at":"2012-05-20T05:19:01Z","id":"1553873936","actor":{"avatar_url":"https://secure.gravatar.com/avatar/68602fa96bdda4c677ece48ab42b6eb2?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"68602fa96bdda4c677ece48ab42b6eb2","url":"https://api.github.com/users/jacknagel","id":568243,"login":"jacknagel"}}] + diff --git a/lib/github/tests/ReplayData/NamedUser.testGetReceivedEvents.txt b/lib/github/tests/ReplayData/NamedUser.testGetReceivedEvents.txt new file mode 100644 index 0000000000..af1f4d5775 --- /dev/null +++ b/lib/github/tests/ReplayData/NamedUser.testGetReceivedEvents.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/users/jacquev6/received_events +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4941'), ('content-length', '79562'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next"'), ('etag', '"1b20f7931fdd3cb9b6f13ed739116aad"'), ('date', 'Sun, 20 May 2012 12:31:01 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T12:29:17Z","body":"+1","updated_at":"2012-05-20T12:29:17Z","url":"https://api.github.com/repos/github/markup/issues/comments/5808535","id":5808535,"user":{"avatar_url":"https://secure.gravatar.com/avatar/b3cb2e7b64cad46d1cd6e5d3294c12cc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b3cb2e7b64cad46d1cd6e5d3294c12cc","url":"https://api.github.com/users/cherryboss","id":1078894,"login":"cherryboss"}},"action":"created","issue":{"number":34,"created_at":"2011-01-21T16:04:58Z","pull_request":{"diff_url":"https://github.com/github/markup/pull/34.diff","patch_url":"https://github.com/github/markup/pull/34.patch","html_url":"https://github.com/github/markup/pull/34"},"body":"Hello, I've created support for great Texy! text-to-HTML formatter and converter library (http://texy.info, http://github.com/dg/texy).\r\n\r\nHere's my implementation branch: https://github.com/smasty/markup/tree/texy","comments":23,"title":"[new markup] Texy! formatter support","updated_at":"2012-05-20T12:29:17Z","url":"https://api.github.com/repos/github/markup/issues/34","id":541804,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/github/markup/issues/34","user":{"avatar_url":"https://secure.gravatar.com/avatar/c27f2f0deb68f04a58db7b7254df893b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c27f2f0deb68f04a58db7b7254df893b","url":"https://api.github.com/users/smasty","id":218524,"login":"smasty"},"labels":[],"state":"open"}},"public":true,"org":{"gravatar_id":"61024896f291303615bcd4f7a0dcfb74","url":"https://api.github.com/orgs/github","id":9919,"avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"github"},"repo":{"url":"https://api.github.com/repos/github/markup","id":355893,"name":"github/markup"},"created_at":"2012-05-20T12:29:18Z","id":"1553916447","actor":{"gravatar_id":"b3cb2e7b64cad46d1cd6e5d3294c12cc","url":"https://api.github.com/users/cherryboss","id":1078894,"avatar_url":"https://secure.gravatar.com/avatar/b3cb2e7b64cad46d1cd6e5d3294c12cc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"cherryboss"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T12:25:03Z","body":"+1","updated_at":"2012-05-20T12:25:03Z","url":"https://api.github.com/repos/github/markup/issues/comments/5808513","id":5808513,"user":{"avatar_url":"https://secure.gravatar.com/avatar/1cf1c7870c060e3d6e9bba907869deac?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"1cf1c7870c060e3d6e9bba907869deac","url":"https://api.github.com/users/Aurielle","id":144428,"login":"Aurielle"}},"action":"created","issue":{"number":34,"created_at":"2011-01-21T16:04:58Z","pull_request":{"diff_url":"https://github.com/github/markup/pull/34.diff","patch_url":"https://github.com/github/markup/pull/34.patch","html_url":"https://github.com/github/markup/pull/34"},"comments":22,"title":"[new markup] Texy! formatter support","body":"Hello, I've created support for great Texy! text-to-HTML formatter and converter library (http://texy.info, http://github.com/dg/texy).\r\n\r\nHere's my implementation branch: https://github.com/smasty/markup/tree/texy","updated_at":"2012-05-20T12:25:03Z","url":"https://api.github.com/repos/github/markup/issues/34","id":541804,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/github/markup/issues/34","user":{"avatar_url":"https://secure.gravatar.com/avatar/c27f2f0deb68f04a58db7b7254df893b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c27f2f0deb68f04a58db7b7254df893b","url":"https://api.github.com/users/smasty","id":218524,"login":"smasty"},"labels":[],"state":"open"}},"public":true,"org":{"gravatar_id":"61024896f291303615bcd4f7a0dcfb74","url":"https://api.github.com/orgs/github","id":9919,"avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"github"},"repo":{"url":"https://api.github.com/repos/github/markup","id":355893,"name":"github/markup"},"created_at":"2012-05-20T12:25:06Z","id":"1553916062","actor":{"gravatar_id":"1cf1c7870c060e3d6e9bba907869deac","url":"https://api.github.com/users/Aurielle","id":144428,"avatar_url":"https://secure.gravatar.com/avatar/1cf1c7870c060e3d6e9bba907869deac?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"Aurielle"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T12:23:10Z","body":"+1","updated_at":"2012-05-20T12:23:10Z","url":"https://api.github.com/repos/github/markup/issues/comments/5808502","id":5808502,"user":{"avatar_url":"https://secure.gravatar.com/avatar/19a6b06bab555481b203b024e5761567?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"19a6b06bab555481b203b024e5761567","url":"https://api.github.com/users/janmarek","id":150257,"login":"janmarek"}},"action":"created","issue":{"number":34,"created_at":"2011-01-21T16:04:58Z","pull_request":{"diff_url":"https://github.com/github/markup/pull/34.diff","patch_url":"https://github.com/github/markup/pull/34.patch","html_url":"https://github.com/github/markup/pull/34"},"comments":21,"body":"Hello, I've created support for great Texy! text-to-HTML formatter and converter library (http://texy.info, http://github.com/dg/texy).\r\n\r\nHere's my implementation branch: https://github.com/smasty/markup/tree/texy","title":"[new markup] Texy! formatter support","updated_at":"2012-05-20T12:23:10Z","url":"https://api.github.com/repos/github/markup/issues/34","id":541804,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/github/markup/issues/34","user":{"avatar_url":"https://secure.gravatar.com/avatar/c27f2f0deb68f04a58db7b7254df893b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c27f2f0deb68f04a58db7b7254df893b","url":"https://api.github.com/users/smasty","id":218524,"login":"smasty"},"labels":[],"state":"open"}},"public":true,"org":{"gravatar_id":"61024896f291303615bcd4f7a0dcfb74","url":"https://api.github.com/orgs/github","id":9919,"avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"github"},"repo":{"url":"https://api.github.com/repos/github/markup","id":355893,"name":"github/markup"},"created_at":"2012-05-20T12:23:10Z","id":"1553915882","actor":{"gravatar_id":"19a6b06bab555481b203b024e5761567","url":"https://api.github.com/users/janmarek","id":150257,"avatar_url":"https://secure.gravatar.com/avatar/19a6b06bab555481b203b024e5761567?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"janmarek"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T12:22:47Z","body":"+1","updated_at":"2012-05-20T12:22:47Z","url":"https://api.github.com/repos/github/markup/issues/comments/5808501","id":5808501,"user":{"avatar_url":"https://secure.gravatar.com/avatar/e9de61b5196e93a3db50330622319687?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e9de61b5196e93a3db50330622319687","url":"https://api.github.com/users/Jirda","id":888765,"login":"Jirda"}},"action":"created","issue":{"number":34,"created_at":"2011-01-21T16:04:58Z","pull_request":{"diff_url":"https://github.com/github/markup/pull/34.diff","patch_url":"https://github.com/github/markup/pull/34.patch","html_url":"https://github.com/github/markup/pull/34"},"body":"Hello, I've created support for great Texy! text-to-HTML formatter and converter library (http://texy.info, http://github.com/dg/texy).\r\n\r\nHere's my implementation branch: https://github.com/smasty/markup/tree/texy","title":"[new markup] Texy! formatter support","comments":20,"updated_at":"2012-05-20T12:22:47Z","url":"https://api.github.com/repos/github/markup/issues/34","id":541804,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/github/markup/issues/34","user":{"avatar_url":"https://secure.gravatar.com/avatar/c27f2f0deb68f04a58db7b7254df893b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c27f2f0deb68f04a58db7b7254df893b","url":"https://api.github.com/users/smasty","id":218524,"login":"smasty"},"labels":[],"state":"open"}},"public":true,"org":{"gravatar_id":"61024896f291303615bcd4f7a0dcfb74","url":"https://api.github.com/orgs/github","id":9919,"avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"github"},"repo":{"url":"https://api.github.com/repos/github/markup","id":355893,"name":"github/markup"},"created_at":"2012-05-20T12:22:48Z","id":"1553915852","actor":{"gravatar_id":"e9de61b5196e93a3db50330622319687","url":"https://api.github.com/users/Jirda","id":888765,"avatar_url":"https://secure.gravatar.com/avatar/e9de61b5196e93a3db50330622319687?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"Jirda"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T12:22:42Z","body":"+1","updated_at":"2012-05-20T12:22:42Z","url":"https://api.github.com/repos/github/markup/issues/comments/5808500","id":5808500,"user":{"avatar_url":"https://secure.gravatar.com/avatar/73997373b9f2e330bc4ed2dff3ad8561?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"73997373b9f2e330bc4ed2dff3ad8561","url":"https://api.github.com/users/NeosinneR","id":470616,"login":"NeosinneR"}},"action":"created","issue":{"number":34,"created_at":"2011-01-21T16:04:58Z","pull_request":{"diff_url":"https://github.com/github/markup/pull/34.diff","patch_url":"https://github.com/github/markup/pull/34.patch","html_url":"https://github.com/github/markup/pull/34"},"body":"Hello, I've created support for great Texy! text-to-HTML formatter and converter library (http://texy.info, http://github.com/dg/texy).\r\n\r\nHere's my implementation branch: https://github.com/smasty/markup/tree/texy","title":"[new markup] Texy! formatter support","comments":19,"updated_at":"2012-05-20T12:22:42Z","url":"https://api.github.com/repos/github/markup/issues/34","id":541804,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/github/markup/issues/34","user":{"avatar_url":"https://secure.gravatar.com/avatar/c27f2f0deb68f04a58db7b7254df893b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c27f2f0deb68f04a58db7b7254df893b","url":"https://api.github.com/users/smasty","id":218524,"login":"smasty"},"labels":[],"state":"open"}},"public":true,"org":{"gravatar_id":"61024896f291303615bcd4f7a0dcfb74","url":"https://api.github.com/orgs/github","id":9919,"avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"github"},"repo":{"url":"https://api.github.com/repos/github/markup","id":355893,"name":"github/markup"},"created_at":"2012-05-20T12:22:43Z","id":"1553915842","actor":{"gravatar_id":"73997373b9f2e330bc4ed2dff3ad8561","url":"https://api.github.com/users/NeosinneR","id":470616,"avatar_url":"https://secure.gravatar.com/avatar/73997373b9f2e330bc4ed2dff3ad8561?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"NeosinneR"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T12:21:39Z","body":"+1","updated_at":"2012-05-20T12:21:39Z","url":"https://api.github.com/repos/github/markup/issues/comments/5808494","id":5808494,"user":{"avatar_url":"https://secure.gravatar.com/avatar/6f055df11c2384360588bff39eca3179?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"6f055df11c2384360588bff39eca3179","url":"https://api.github.com/users/Acnnair","id":198089,"login":"Acnnair"}},"action":"created","issue":{"number":34,"pull_request":{"diff_url":"https://github.com/github/markup/pull/34.diff","patch_url":"https://github.com/github/markup/pull/34.patch","html_url":"https://github.com/github/markup/pull/34"},"created_at":"2011-01-21T16:04:58Z","comments":18,"body":"Hello, I've created support for great Texy! text-to-HTML formatter and converter library (http://texy.info, http://github.com/dg/texy).\r\n\r\nHere's my implementation branch: https://github.com/smasty/markup/tree/texy","title":"[new markup] Texy! formatter support","updated_at":"2012-05-20T12:21:39Z","url":"https://api.github.com/repos/github/markup/issues/34","id":541804,"assignee":null,"milestone":null,"closed_at":null,"user":{"avatar_url":"https://secure.gravatar.com/avatar/c27f2f0deb68f04a58db7b7254df893b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c27f2f0deb68f04a58db7b7254df893b","url":"https://api.github.com/users/smasty","id":218524,"login":"smasty"},"html_url":"https://github.com/github/markup/issues/34","labels":[],"state":"open"}},"public":true,"org":{"gravatar_id":"61024896f291303615bcd4f7a0dcfb74","url":"https://api.github.com/orgs/github","id":9919,"avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"github"},"repo":{"url":"https://api.github.com/repos/github/markup","id":355893,"name":"github/markup"},"created_at":"2012-05-20T12:21:39Z","id":"1553915747","actor":{"gravatar_id":"6f055df11c2384360588bff39eca3179","url":"https://api.github.com/users/Acnnair","id":198089,"avatar_url":"https://secure.gravatar.com/avatar/6f055df11c2384360588bff39eca3179?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"Acnnair"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T12:21:18Z","body":"+ 01 :)","updated_at":"2012-05-20T12:21:18Z","url":"https://api.github.com/repos/github/markup/issues/comments/5808490","id":5808490,"user":{"avatar_url":"https://secure.gravatar.com/avatar/39e7b53a5166503123d4b99ad3b959b9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"39e7b53a5166503123d4b99ad3b959b9","url":"https://api.github.com/users/adamtomecek","id":157048,"login":"adamtomecek"}},"action":"created","issue":{"number":34,"created_at":"2011-01-21T16:04:58Z","pull_request":{"diff_url":"https://github.com/github/markup/pull/34.diff","patch_url":"https://github.com/github/markup/pull/34.patch","html_url":"https://github.com/github/markup/pull/34"},"comments":17,"title":"[new markup] Texy! formatter support","body":"Hello, I've created support for great Texy! text-to-HTML formatter and converter library (http://texy.info, http://github.com/dg/texy).\r\n\r\nHere's my implementation branch: https://github.com/smasty/markup/tree/texy","updated_at":"2012-05-20T12:21:18Z","url":"https://api.github.com/repos/github/markup/issues/34","id":541804,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/github/markup/issues/34","user":{"avatar_url":"https://secure.gravatar.com/avatar/c27f2f0deb68f04a58db7b7254df893b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c27f2f0deb68f04a58db7b7254df893b","url":"https://api.github.com/users/smasty","id":218524,"login":"smasty"},"labels":[],"state":"open"}},"public":true,"org":{"gravatar_id":"61024896f291303615bcd4f7a0dcfb74","url":"https://api.github.com/orgs/github","id":9919,"avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"github"},"repo":{"url":"https://api.github.com/repos/github/markup","id":355893,"name":"github/markup"},"created_at":"2012-05-20T12:21:18Z","id":"1553915704","actor":{"gravatar_id":"39e7b53a5166503123d4b99ad3b959b9","url":"https://api.github.com/users/adamtomecek","id":157048,"avatar_url":"https://secure.gravatar.com/avatar/39e7b53a5166503123d4b99ad3b959b9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"adamtomecek"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T12:20:43Z","body":"+1","updated_at":"2012-05-20T12:20:43Z","url":"https://api.github.com/repos/github/markup/issues/comments/5808487","id":5808487,"user":{"avatar_url":"https://secure.gravatar.com/avatar/d8fe8d5f9012e9e1d76f19e05eedcc73?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d8fe8d5f9012e9e1d76f19e05eedcc73","url":"https://api.github.com/users/Marax","id":402625,"login":"Marax"}},"action":"created","issue":{"number":34,"created_at":"2011-01-21T16:04:58Z","pull_request":{"diff_url":"https://github.com/github/markup/pull/34.diff","patch_url":"https://github.com/github/markup/pull/34.patch","html_url":"https://github.com/github/markup/pull/34"},"body":"Hello, I've created support for great Texy! text-to-HTML formatter and converter library (http://texy.info, http://github.com/dg/texy).\r\n\r\nHere's my implementation branch: https://github.com/smasty/markup/tree/texy","comments":16,"title":"[new markup] Texy! formatter support","updated_at":"2012-05-20T12:20:43Z","url":"https://api.github.com/repos/github/markup/issues/34","id":541804,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/github/markup/issues/34","user":{"avatar_url":"https://secure.gravatar.com/avatar/c27f2f0deb68f04a58db7b7254df893b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c27f2f0deb68f04a58db7b7254df893b","url":"https://api.github.com/users/smasty","id":218524,"login":"smasty"},"labels":[],"state":"open"}},"public":true,"org":{"gravatar_id":"61024896f291303615bcd4f7a0dcfb74","url":"https://api.github.com/orgs/github","id":9919,"avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"github"},"repo":{"url":"https://api.github.com/repos/github/markup","id":355893,"name":"github/markup"},"created_at":"2012-05-20T12:20:43Z","id":"1553915653","actor":{"gravatar_id":"d8fe8d5f9012e9e1d76f19e05eedcc73","url":"https://api.github.com/users/Marax","id":402625,"avatar_url":"https://secure.gravatar.com/avatar/d8fe8d5f9012e9e1d76f19e05eedcc73?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"Marax"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T12:15:29Z","body":"+1","updated_at":"2012-05-20T12:15:29Z","url":"https://api.github.com/repos/github/markup/issues/comments/5808456","id":5808456,"user":{"avatar_url":"https://secure.gravatar.com/avatar/c41460d1cfc23cbc64a2639f753d8b70?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c41460d1cfc23cbc64a2639f753d8b70","url":"https://api.github.com/users/MartinSadovy","id":179039,"login":"MartinSadovy"}},"action":"created","issue":{"number":34,"created_at":"2011-01-21T16:04:58Z","pull_request":{"diff_url":"https://github.com/github/markup/pull/34.diff","patch_url":"https://github.com/github/markup/pull/34.patch","html_url":"https://github.com/github/markup/pull/34"},"body":"Hello, I've created support for great Texy! text-to-HTML formatter and converter library (http://texy.info, http://github.com/dg/texy).\r\n\r\nHere's my implementation branch: https://github.com/smasty/markup/tree/texy","comments":15,"title":"[new markup] Texy! formatter support","updated_at":"2012-05-20T12:15:29Z","url":"https://api.github.com/repos/github/markup/issues/34","id":541804,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/github/markup/issues/34","user":{"avatar_url":"https://secure.gravatar.com/avatar/c27f2f0deb68f04a58db7b7254df893b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c27f2f0deb68f04a58db7b7254df893b","url":"https://api.github.com/users/smasty","id":218524,"login":"smasty"},"labels":[],"state":"open"}},"public":true,"org":{"gravatar_id":"61024896f291303615bcd4f7a0dcfb74","url":"https://api.github.com/orgs/github","id":9919,"avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"github"},"repo":{"url":"https://api.github.com/repos/github/markup","id":355893,"name":"github/markup"},"created_at":"2012-05-20T12:15:30Z","id":"1553915168","actor":{"gravatar_id":"c41460d1cfc23cbc64a2639f753d8b70","url":"https://api.github.com/users/MartinSadovy","id":179039,"avatar_url":"https://secure.gravatar.com/avatar/c41460d1cfc23cbc64a2639f753d8b70?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"MartinSadovy"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T12:13:14Z","body":"+1","updated_at":"2012-05-20T12:13:14Z","url":"https://api.github.com/repos/github/markup/issues/comments/5808447","id":5808447,"user":{"avatar_url":"https://secure.gravatar.com/avatar/6f4840694cd92f20ce0df5233bbc04b0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"6f4840694cd92f20ce0df5233bbc04b0","url":"https://api.github.com/users/HosipLan","id":158625,"login":"HosipLan"}},"action":"created","issue":{"number":34,"created_at":"2011-01-21T16:04:58Z","pull_request":{"diff_url":"https://github.com/github/markup/pull/34.diff","patch_url":"https://github.com/github/markup/pull/34.patch","html_url":"https://github.com/github/markup/pull/34"},"body":"Hello, I've created support for great Texy! text-to-HTML formatter and converter library (http://texy.info, http://github.com/dg/texy).\r\n\r\nHere's my implementation branch: https://github.com/smasty/markup/tree/texy","title":"[new markup] Texy! formatter support","comments":14,"updated_at":"2012-05-20T12:13:14Z","url":"https://api.github.com/repos/github/markup/issues/34","id":541804,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/github/markup/issues/34","user":{"avatar_url":"https://secure.gravatar.com/avatar/c27f2f0deb68f04a58db7b7254df893b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c27f2f0deb68f04a58db7b7254df893b","url":"https://api.github.com/users/smasty","id":218524,"login":"smasty"},"labels":[],"state":"open"}},"public":true,"org":{"gravatar_id":"61024896f291303615bcd4f7a0dcfb74","url":"https://api.github.com/orgs/github","id":9919,"avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"github"},"repo":{"url":"https://api.github.com/repos/github/markup","id":355893,"name":"github/markup"},"created_at":"2012-05-20T12:13:15Z","id":"1553914970","actor":{"gravatar_id":"6f4840694cd92f20ce0df5233bbc04b0","url":"https://api.github.com/users/HosipLan","id":158625,"avatar_url":"https://secure.gravatar.com/avatar/6f4840694cd92f20ce0df5233bbc04b0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"HosipLan"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T12:05:45Z","body":"+1","updated_at":"2012-05-20T12:05:45Z","url":"https://api.github.com/repos/github/markup/issues/comments/5808414","id":5808414,"user":{"avatar_url":"https://secure.gravatar.com/avatar/6ed2b9a3737b1c2ad7fcb1a82fd379bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"6ed2b9a3737b1c2ad7fcb1a82fd379bb","url":"https://api.github.com/users/Lopo","id":279973,"login":"Lopo"}},"action":"created","issue":{"number":34,"created_at":"2011-01-21T16:04:58Z","pull_request":{"diff_url":"https://github.com/github/markup/pull/34.diff","patch_url":"https://github.com/github/markup/pull/34.patch","html_url":"https://github.com/github/markup/pull/34"},"body":"Hello, I've created support for great Texy! text-to-HTML formatter and converter library (http://texy.info, http://github.com/dg/texy).\r\n\r\nHere's my implementation branch: https://github.com/smasty/markup/tree/texy","title":"[new markup] Texy! formatter support","comments":13,"updated_at":"2012-05-20T12:05:45Z","url":"https://api.github.com/repos/github/markup/issues/34","id":541804,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/github/markup/issues/34","user":{"avatar_url":"https://secure.gravatar.com/avatar/c27f2f0deb68f04a58db7b7254df893b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c27f2f0deb68f04a58db7b7254df893b","url":"https://api.github.com/users/smasty","id":218524,"login":"smasty"},"labels":[],"state":"open"}},"public":true,"org":{"gravatar_id":"61024896f291303615bcd4f7a0dcfb74","url":"https://api.github.com/orgs/github","id":9919,"avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"github"},"repo":{"url":"https://api.github.com/repos/github/markup","id":355893,"name":"github/markup"},"created_at":"2012-05-20T12:05:45Z","id":"1553914335","actor":{"gravatar_id":"6ed2b9a3737b1c2ad7fcb1a82fd379bb","url":"https://api.github.com/users/Lopo","id":279973,"avatar_url":"https://secure.gravatar.com/avatar/6ed2b9a3737b1c2ad7fcb1a82fd379bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"Lopo"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T11:59:10Z","body":"+1","updated_at":"2012-05-20T11:59:10Z","url":"https://api.github.com/repos/github/markup/issues/comments/5808385","id":5808385,"user":{"avatar_url":"https://secure.gravatar.com/avatar/df9a5876a05095a41d9762c60de90fc6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"df9a5876a05095a41d9762c60de90fc6","url":"https://api.github.com/users/Twista","id":1297511,"login":"Twista"}},"action":"created","issue":{"number":34,"created_at":"2011-01-21T16:04:58Z","pull_request":{"diff_url":"https://github.com/github/markup/pull/34.diff","patch_url":"https://github.com/github/markup/pull/34.patch","html_url":"https://github.com/github/markup/pull/34"},"body":"Hello, I've created support for great Texy! text-to-HTML formatter and converter library (http://texy.info, http://github.com/dg/texy).\r\n\r\nHere's my implementation branch: https://github.com/smasty/markup/tree/texy","title":"[new markup] Texy! formatter support","comments":12,"updated_at":"2012-05-20T11:59:10Z","url":"https://api.github.com/repos/github/markup/issues/34","id":541804,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/github/markup/issues/34","user":{"avatar_url":"https://secure.gravatar.com/avatar/c27f2f0deb68f04a58db7b7254df893b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c27f2f0deb68f04a58db7b7254df893b","url":"https://api.github.com/users/smasty","id":218524,"login":"smasty"},"labels":[],"state":"open"}},"public":true,"org":{"gravatar_id":"61024896f291303615bcd4f7a0dcfb74","url":"https://api.github.com/orgs/github","id":9919,"avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"github"},"repo":{"url":"https://api.github.com/repos/github/markup","id":355893,"name":"github/markup"},"created_at":"2012-05-20T11:59:11Z","id":"1553913765","actor":{"gravatar_id":"df9a5876a05095a41d9762c60de90fc6","url":"https://api.github.com/users/Twista","id":1297511,"avatar_url":"https://secure.gravatar.com/avatar/df9a5876a05095a41d9762c60de90fc6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"Twista"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T11:53:44Z","body":"+1","updated_at":"2012-05-20T11:53:44Z","url":"https://api.github.com/repos/github/markup/issues/comments/5808351","id":5808351,"user":{"avatar_url":"https://secure.gravatar.com/avatar/0b532998b3de0282ae25faec12409900?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"0b532998b3de0282ae25faec12409900","url":"https://api.github.com/users/f3l1x","id":538058,"login":"f3l1x"}},"action":"created","issue":{"number":34,"created_at":"2011-01-21T16:04:58Z","pull_request":{"diff_url":"https://github.com/github/markup/pull/34.diff","patch_url":"https://github.com/github/markup/pull/34.patch","html_url":"https://github.com/github/markup/pull/34"},"title":"[new markup] Texy! formatter support","body":"Hello, I've created support for great Texy! text-to-HTML formatter and converter library (http://texy.info, http://github.com/dg/texy).\r\n\r\nHere's my implementation branch: https://github.com/smasty/markup/tree/texy","comments":11,"updated_at":"2012-05-20T11:53:44Z","url":"https://api.github.com/repos/github/markup/issues/34","id":541804,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/github/markup/issues/34","user":{"avatar_url":"https://secure.gravatar.com/avatar/c27f2f0deb68f04a58db7b7254df893b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c27f2f0deb68f04a58db7b7254df893b","url":"https://api.github.com/users/smasty","id":218524,"login":"smasty"},"labels":[],"state":"open"}},"public":true,"org":{"gravatar_id":"61024896f291303615bcd4f7a0dcfb74","url":"https://api.github.com/orgs/github","id":9919,"avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"github"},"repo":{"url":"https://api.github.com/repos/github/markup","id":355893,"name":"github/markup"},"created_at":"2012-05-20T11:53:44Z","id":"1553913287","actor":{"gravatar_id":"0b532998b3de0282ae25faec12409900","url":"https://api.github.com/users/f3l1x","id":538058,"avatar_url":"https://secure.gravatar.com/avatar/0b532998b3de0282ae25faec12409900?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"f3l1x"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T11:52:32Z","body":"+1 :)","updated_at":"2012-05-20T11:52:32Z","url":"https://api.github.com/repos/github/markup/issues/comments/5808340","id":5808340,"user":{"avatar_url":"https://secure.gravatar.com/avatar/5632d1bf9598d8d03fa3da1c54f2118e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5632d1bf9598d8d03fa3da1c54f2118e","url":"https://api.github.com/users/enumag","id":539462,"login":"enumag"}},"action":"created","issue":{"number":34,"created_at":"2011-01-21T16:04:58Z","pull_request":{"diff_url":"https://github.com/github/markup/pull/34.diff","patch_url":"https://github.com/github/markup/pull/34.patch","html_url":"https://github.com/github/markup/pull/34"},"body":"Hello, I've created support for great Texy! text-to-HTML formatter and converter library (http://texy.info, http://github.com/dg/texy).\r\n\r\nHere's my implementation branch: https://github.com/smasty/markup/tree/texy","title":"[new markup] Texy! formatter support","comments":10,"updated_at":"2012-05-20T11:52:32Z","url":"https://api.github.com/repos/github/markup/issues/34","id":541804,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/github/markup/issues/34","user":{"avatar_url":"https://secure.gravatar.com/avatar/c27f2f0deb68f04a58db7b7254df893b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c27f2f0deb68f04a58db7b7254df893b","url":"https://api.github.com/users/smasty","id":218524,"login":"smasty"},"labels":[],"state":"open"}},"public":true,"org":{"gravatar_id":"61024896f291303615bcd4f7a0dcfb74","url":"https://api.github.com/orgs/github","id":9919,"avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"github"},"repo":{"url":"https://api.github.com/repos/github/markup","id":355893,"name":"github/markup"},"created_at":"2012-05-20T11:52:32Z","id":"1553913189","actor":{"gravatar_id":"5632d1bf9598d8d03fa3da1c54f2118e","url":"https://api.github.com/users/enumag","id":539462,"avatar_url":"https://secure.gravatar.com/avatar/5632d1bf9598d8d03fa3da1c54f2118e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"enumag"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T11:43:14Z","body":"Thanks! But in my case I have to wrap the the modal in a form...\n\nI'm thinking about something like this to fix it:\nI've to catch the enter key, when pressed and when a input is active.","updated_at":"2012-05-20T11:43:14Z","url":"https://api.github.com/repos/twitter/bootstrap/issues/comments/5808288","id":5808288,"user":{"avatar_url":"https://secure.gravatar.com/avatar/e491117553ef3b2399721b8916af9813?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e491117553ef3b2399721b8916af9813","url":"https://api.github.com/users/royduin","id":1703233,"login":"royduin"}},"action":"created","issue":{"number":3343,"created_at":"2012-05-03T17:25:01Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"I've got a modal with a form in it and a input field. In de footer of the modal a submit button. When clicking on the submit button the form will be submitted. When pressing enter, from the input field, the modal disappears. Simple example:\r\n\r\n```html\r\n

    \r\n\t
    \r\n\t\t
    \r\n\t\t\t

    Login

    \r\n\t\t
    \r\n\t\t
    \t\r\n\t\t\t\r\n\t\t
    \r\n\t\t
    \r\n\t\t\t\r\n\t\t
    \r\n\t
    \r\n
    \r\n```\r\n\r\nI hope it will be fixed soon!","comments":4,"title":"Modal disappears when press enter","updated_at":"2012-05-20T11:43:14Z","url":"https://api.github.com/repos/twitter/bootstrap/issues/3343","id":4409660,"assignee":null,"milestone":null,"closed_at":"2012-05-04T19:04:44Z","html_url":"https://github.com/twitter/bootstrap/issues/3343","user":{"avatar_url":"https://secure.gravatar.com/avatar/e491117553ef3b2399721b8916af9813?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e491117553ef3b2399721b8916af9813","url":"https://api.github.com/users/royduin","id":1703233,"login":"royduin"},"labels":[],"state":"closed"}},"public":true,"org":{"gravatar_id":"74e977ae0a10f06057a119eef30c6660","url":"https://api.github.com/orgs/twitter","id":50278,"avatar_url":"https://secure.gravatar.com/avatar/74e977ae0a10f06057a119eef30c6660?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"twitter"},"repo":{"url":"https://api.github.com/repos/twitter/bootstrap","id":2126244,"name":"twitter/bootstrap"},"created_at":"2012-05-20T11:43:16Z","id":"1553912424","actor":{"gravatar_id":"e491117553ef3b2399721b8916af9813","url":"https://api.github.com/users/royduin","id":1703233,"avatar_url":"https://secure.gravatar.com/avatar/e491117553ef3b2399721b8916af9813?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"royduin"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T11:23:11Z","body":"can you add one more image? There is sometimes a min. of 3 images required for the carousel to work.","updated_at":"2012-05-20T11:23:11Z","url":"https://api.github.com/repos/twitter/bootstrap/issues/comments/5808187","id":5808187,"user":{"avatar_url":"https://secure.gravatar.com/avatar/a4f984ab9880a062644a6f9c15ce79e0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"a4f984ab9880a062644a6f9c15ce79e0","url":"https://api.github.com/users/thaibluesky","id":1756528,"login":"thaibluesky"}},"action":"created","issue":{"number":3528,"created_at":"2012-05-18T19:22:21Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"Carousel does not start sliding to the next one after 5 seconds until after I click to the next slide. Only then does the timer start. What am I missing?","comments":8,"title":"Carousel does not start sliding","updated_at":"2012-05-20T11:23:11Z","url":"https://api.github.com/repos/twitter/bootstrap/issues/3528","id":4647904,"assignee":null,"milestone":null,"closed_at":null,"labels":[],"html_url":"https://github.com/twitter/bootstrap/issues/3528","user":{"avatar_url":"https://secure.gravatar.com/avatar/3fdf23df74c9d4897818887e74686e48?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3fdf23df74c9d4897818887e74686e48","url":"https://api.github.com/users/gigdates","id":1179255,"login":"gigdates"},"state":"open"}},"public":true,"org":{"gravatar_id":"74e977ae0a10f06057a119eef30c6660","url":"https://api.github.com/orgs/twitter","id":50278,"avatar_url":"https://secure.gravatar.com/avatar/74e977ae0a10f06057a119eef30c6660?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"twitter"},"repo":{"url":"https://api.github.com/repos/twitter/bootstrap","id":2126244,"name":"twitter/bootstrap"},"created_at":"2012-05-20T11:23:15Z","id":"1553910775","actor":{"gravatar_id":"a4f984ab9880a062644a6f9c15ce79e0","url":"https://api.github.com/users/thaibluesky","id":1756528,"avatar_url":"https://secure.gravatar.com/avatar/a4f984ab9880a062644a6f9c15ce79e0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"thaibluesky"}},{"type":"PushEvent","payload":{"head":"03f86a5adb930eac55dea1e903fb958c002d5bc4","size":1,"push_id":79407330,"commits":[{"sha":"03f86a5adb930eac55dea1e903fb958c002d5bc4","author":{"name":"Aymeric Augustin","email":"aymeric.augustin@m4x.org"},"url":"https://api.github.com/repos/django/django/commits/03f86a5adb930eac55dea1e903fb958c002d5bc4","distinct":true,"message":"Fixed #18354 -- Performance issue in CBV.\n\nPrevented repeating a query twice when the model isn't ordered by\n-date_field (in Meta), allow_empty is False and pagination isn't\nenabled."}],"ref":"refs/heads/master"},"public":true,"org":{"gravatar_id":"fd542381031aa84dca86628ece84fc07","url":"https://api.github.com/orgs/django","id":27804,"avatar_url":"https://secure.gravatar.com/avatar/fd542381031aa84dca86628ece84fc07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"django"},"repo":{"url":"https://api.github.com/repos/django/django","id":4164482,"name":"django/django"},"created_at":"2012-05-20T11:20:49Z","id":"1553910583","actor":{"gravatar_id":"ec12d7f60c595a45665f74b651aefabe","url":"https://api.github.com/users/aaugustin","id":788910,"avatar_url":"https://secure.gravatar.com/avatar/ec12d7f60c595a45665f74b651aefabe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"aaugustin"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T10:22:07Z","body":"Do you need any additional information from me?","updated_at":"2012-05-20T10:22:07Z","url":"https://api.github.com/repos/mxcl/homebrew/issues/comments/5807859","id":5807859,"user":{"avatar_url":"https://secure.gravatar.com/avatar/457f59eedabca29c1fa9cf798b5a11c4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"457f59eedabca29c1fa9cf798b5a11c4","url":"https://api.github.com/users/fceller","id":392005,"login":"fceller"}},"action":"created","issue":{"number":12215,"created_at":"2012-05-12T19:12:18Z","pull_request":{"diff_url":"https://github.com/mxcl/homebrew/pull/12215.diff","patch_url":"https://github.com/mxcl/homebrew/pull/12215.patch","html_url":"https://github.com/mxcl/homebrew/pull/12215"},"comments":2,"title":"Upgrade ArangoDB (formally known as AvocadoDB) to 0.5.0","body":"We had to rename AvocadoDB to ArangoDB due to legal issues.","updated_at":"2012-05-20T10:22:07Z","url":"https://api.github.com/repos/mxcl/homebrew/issues/12215","id":4548813,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/mxcl/homebrew/issues/12215","user":{"avatar_url":"https://secure.gravatar.com/avatar/457f59eedabca29c1fa9cf798b5a11c4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"457f59eedabca29c1fa9cf798b5a11c4","url":"https://api.github.com/users/fceller","id":392005,"login":"fceller"},"labels":[{"name":"renames","url":"https://api.github.com/repos/mxcl/homebrew/labels/renames","color":"e102d8"}],"state":"open"}},"public":true,"repo":{"url":"https://api.github.com/repos/mxcl/homebrew","id":206084,"name":"mxcl/homebrew"},"created_at":"2012-05-20T10:22:08Z","id":"1553905852","actor":{"gravatar_id":"457f59eedabca29c1fa9cf798b5a11c4","url":"https://api.github.com/users/fceller","id":392005,"avatar_url":"https://secure.gravatar.com/avatar/457f59eedabca29c1fa9cf798b5a11c4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"fceller"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T10:20:14Z","body":"Cfernandi, thanks, but that didn't help. The words aren't smushing together, it's just one of the words is too long and overflows the right of the screen. I guess I'll just have to get a shorter surname :P","updated_at":"2012-05-20T10:20:14Z","url":"https://api.github.com/repos/twitter/bootstrap/issues/comments/5807847","id":5807847,"user":{"avatar_url":"https://secure.gravatar.com/avatar/6eff6b838ee9a1b1d5defa126a714ffc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"6eff6b838ee9a1b1d5defa126a714ffc","url":"https://api.github.com/users/hughrawlinson","id":829836,"login":"hughrawlinson"}},"action":"created","issue":{"number":3230,"created_at":"2012-04-25T17:20:27Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"When you use a button to present a modal on mobile, the screen turns black, and only does the modal appear after some crafty scrolling and zooming. This is not apparent to a new user.\r\n\r\nAny fixes?\r\n\r\nMore discussion on the problem here: https://github.com/twitter/bootstrap/issues/1036","comments":16,"title":"Modals in 2.0 are broken on mobile.","updated_at":"2012-05-20T10:20:14Z","url":"https://api.github.com/repos/twitter/bootstrap/issues/3230","id":4285344,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/twitter/bootstrap/issues/3230","user":{"avatar_url":"https://secure.gravatar.com/avatar/c8112e74c84fea5e2faccbc7da3c2ba9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c8112e74c84fea5e2faccbc7da3c2ba9","url":"https://api.github.com/users/ATSiem","id":1068543,"login":"ATSiem"},"labels":[{"name":"css","url":"https://api.github.com/repos/twitter/bootstrap/labels/css","color":"7a43b6"},{"name":"responsive","url":"https://api.github.com/repos/twitter/bootstrap/labels/responsive","color":"ae8bd4"}],"state":"open"}},"public":true,"org":{"gravatar_id":"74e977ae0a10f06057a119eef30c6660","url":"https://api.github.com/orgs/twitter","id":50278,"avatar_url":"https://secure.gravatar.com/avatar/74e977ae0a10f06057a119eef30c6660?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"twitter"},"repo":{"url":"https://api.github.com/repos/twitter/bootstrap","id":2126244,"name":"twitter/bootstrap"},"created_at":"2012-05-20T10:20:18Z","id":"1553905709","actor":{"gravatar_id":"6eff6b838ee9a1b1d5defa126a714ffc","url":"https://api.github.com/users/hughrawlinson","id":829836,"avatar_url":"https://secure.gravatar.com/avatar/6eff6b838ee9a1b1d5defa126a714ffc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"hughrawlinson"}},{"type":"PushEvent","payload":{"head":"b0c1e5c081472436bf2300af3073cef1df1bd696","size":1,"push_id":79403570,"ref":"refs/heads/master","commits":[{"sha":"b0c1e5c081472436bf2300af3073cef1df1bd696","author":{"name":"Aymeric Augustin","email":"aymeric.augustin@m4x.org"},"url":"https://api.github.com/repos/django/django/commits/b0c1e5c081472436bf2300af3073cef1df1bd696","distinct":true,"message":"Documented next/previous_week. Refs #10890."}]},"public":true,"org":{"gravatar_id":"fd542381031aa84dca86628ece84fc07","url":"https://api.github.com/orgs/django","id":27804,"avatar_url":"https://secure.gravatar.com/avatar/fd542381031aa84dca86628ece84fc07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"django"},"repo":{"url":"https://api.github.com/repos/django/django","id":4164482,"name":"django/django"},"created_at":"2012-05-20T09:58:44Z","id":"1553903002","actor":{"gravatar_id":"ec12d7f60c595a45665f74b651aefabe","url":"https://api.github.com/users/aaugustin","id":788910,"avatar_url":"https://secure.gravatar.com/avatar/ec12d7f60c595a45665f74b651aefabe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"aaugustin"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T09:27:14Z","body":"Please excuse the crudity of this model... ;) I'm too exhausted to really pretty it up right now, but here's a new mock-up based on a combination of my old one and some of the others I've seen here: http://jsfiddle.net/VEW2K/\n\nA rundown:\n\n* No javascript.\n* No extra tags (just a checkbox and a label).\n* Should degrade gracefully.\n\nI have not tested it in IE or Firefox, and I was not able to get CSS transitions working on the :before and :after pseudo content, so maybe someone else will have better luck. But I think it's cleaner than my old test, and I prefer a non-JS solution personally.","updated_at":"2012-05-20T09:27:14Z","url":"https://api.github.com/repos/twitter/bootstrap/issues/comments/5807584","id":5807584,"user":{"avatar_url":"https://secure.gravatar.com/avatar/02688ffd42b4265a4fa2ca1683115e4e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"02688ffd42b4265a4fa2ca1683115e4e","url":"https://api.github.com/users/thomshouse","id":75411,"login":"thomshouse"}},"action":"created","issue":{"number":1935,"created_at":"2012-02-13T00:05:29Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"comments":39,"body":"Not sure if anyone has mentioned this or not, but it would be cool to have something like this:\r\n\r\nhttp://papermashup.com/demos/ajax-switch/","title":"Create ON/OFF Switch","updated_at":"2012-05-20T09:27:14Z","url":"https://api.github.com/repos/twitter/bootstrap/issues/1935","id":3194346,"assignee":null,"milestone":{"number":7,"created_at":"2012-01-09T17:18:56Z","due_on":null,"title":"v2.1.0","creator":{"avatar_url":"https://secure.gravatar.com/avatar/bc4ab438f7a4ce1c406aadc688427f2c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bc4ab438f7a4ce1c406aadc688427f2c","url":"https://api.github.com/users/markdotto","id":98681,"login":"markdotto"},"url":"https://api.github.com/repos/twitter/bootstrap/milestones/7","id":71627,"closed_issues":4,"open_issues":15,"description":"","state":"open"},"closed_at":null,"html_url":"https://github.com/twitter/bootstrap/issues/1935","user":{"avatar_url":"https://secure.gravatar.com/avatar/25fb0acc0fc379c2974004bb5d050bc2?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"25fb0acc0fc379c2974004bb5d050bc2","url":"https://api.github.com/users/adetwiler","id":1124801,"login":"adetwiler"},"labels":[{"name":"feature","url":"https://api.github.com/repos/twitter/bootstrap/labels/feature","color":"4bb14b"}],"state":"open"}},"public":true,"org":{"gravatar_id":"74e977ae0a10f06057a119eef30c6660","url":"https://api.github.com/orgs/twitter","id":50278,"avatar_url":"https://secure.gravatar.com/avatar/74e977ae0a10f06057a119eef30c6660?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"twitter"},"repo":{"url":"https://api.github.com/repos/twitter/bootstrap","id":2126244,"name":"twitter/bootstrap"},"created_at":"2012-05-20T09:27:16Z","id":"1553896923","actor":{"gravatar_id":"02688ffd42b4265a4fa2ca1683115e4e","url":"https://api.github.com/users/thomshouse","id":75411,"avatar_url":"https://secure.gravatar.com/avatar/02688ffd42b4265a4fa2ca1683115e4e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"thomshouse"}},{"type":"IssuesEvent","payload":{"action":"opened","issue":{"number":3546,"created_at":"2012-05-20T09:00:43Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"I have a problem when I integrate the content with jquery \".load\" (a form for example) in a modal window or a single page. All scripts tooltips, popover, datepicker no longer starts?\n\nBy cons scripts work fine in a normal page.\n\nIf I integrate content directly in the tags \"modal-body\" of the modal window, the scripts work perfectly\n\nThe objective is to integrate a form on the fly, in a single modal window, after the click of a button. But once the loaded content such as a datepicker does not work! or the tooltips on a label, ...\n\nhere a test : http://testcode.olvani.net/test2\n\nThank for reply\nOlivier","comments":0,"title":"Problem for load script (tooltips, popover,...) after use jquery .load dynamic content","updated_at":"2012-05-20T09:00:43Z","url":"https://api.github.com/repos/twitter/bootstrap/issues/3546","id":4658922,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/twitter/bootstrap/issues/3546","user":{"avatar_url":"https://secure.gravatar.com/avatar/36677d5ad489b685b3a437a247733339?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"36677d5ad489b685b3a437a247733339","url":"https://api.github.com/users/olvani","id":1643481,"login":"olvani"},"labels":[],"state":"open"}},"public":true,"org":{"gravatar_id":"74e977ae0a10f06057a119eef30c6660","url":"https://api.github.com/orgs/twitter","id":50278,"avatar_url":"https://secure.gravatar.com/avatar/74e977ae0a10f06057a119eef30c6660?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"twitter"},"repo":{"url":"https://api.github.com/repos/twitter/bootstrap","id":2126244,"name":"twitter/bootstrap"},"created_at":"2012-05-20T09:00:45Z","id":"1553894937","actor":{"gravatar_id":"36677d5ad489b685b3a437a247733339","url":"https://api.github.com/users/olvani","id":1643481,"avatar_url":"https://secure.gravatar.com/avatar/36677d5ad489b685b3a437a247733339?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"olvani"}},{"type":"PullRequestEvent","payload":{"number":3545,"pull_request":{"issue_url":"https://github.com/twitter/bootstrap/issues/3545","number":3545,"head":{"repo":{"name":"bootstrap","size":120,"created_at":"2012-05-20T08:48:41Z","has_wiki":true,"clone_url":"https://github.com/pvorb/bootstrap.git","private":false,"watchers":1,"updated_at":"2012-05-20T08:54:22Z","ssh_url":"git@github.com:pvorb/bootstrap.git","fork":true,"url":"https://api.github.com/repos/pvorb/bootstrap","git_url":"git://github.com/pvorb/bootstrap.git","language":"JavaScript","id":4383503,"pushed_at":"2012-05-20T08:54:22Z","svn_url":"https://github.com/pvorb/bootstrap","has_downloads":true,"mirror_url":null,"open_issues":0,"has_issues":false,"homepage":"http://twitter.github.com/bootstrap","description":"HTML, CSS, and JS toolkit from Twitter","forks":0,"html_url":"https://github.com/pvorb/bootstrap","owner":{"gravatar_id":"b30a7c139117a36a3f2cc2958942847e","avatar_url":"https://secure.gravatar.com/avatar/b30a7c139117a36a3f2cc2958942847e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/pvorb","id":183534,"login":"pvorb"}},"label":"pvorb:patch-1","sha":"faf2866f96513dc1c2775974518d979feb554dbd","ref":"patch-1","user":{"gravatar_id":"b30a7c139117a36a3f2cc2958942847e","avatar_url":"https://secure.gravatar.com/avatar/b30a7c139117a36a3f2cc2958942847e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/pvorb","id":183534,"login":"pvorb"}},"merged":false,"created_at":"2012-05-20T08:55:24Z","merged_by":null,"changed_files":1,"comments":0,"body":"Fix for issue #3543","title":"Remove re-declaration of font-fam, font-size, and line-height in p","diff_url":"https://github.com/twitter/bootstrap/pull/3545.diff","updated_at":"2012-05-20T08:55:24Z","additions":0,"_links":{"html":{"href":"https://github.com/twitter/bootstrap/pull/3545"},"self":{"href":"https://api.github.com/repos/twitter/bootstrap/pulls/3545"},"comments":{"href":"https://api.github.com/repos/twitter/bootstrap/issues/3545/comments"},"issue":{"href":"https://api.github.com/repos/twitter/bootstrap/issues/3545"},"review_comments":{"href":"https://api.github.com/repos/twitter/bootstrap/pulls/3545/comments"}},"url":"https://api.github.com/repos/twitter/bootstrap/pulls/3545","id":1388338,"patch_url":"https://github.com/twitter/bootstrap/pull/3545.patch","mergeable":null,"merged_at":null,"commits":1,"closed_at":null,"user":{"gravatar_id":"b30a7c139117a36a3f2cc2958942847e","avatar_url":"https://secure.gravatar.com/avatar/b30a7c139117a36a3f2cc2958942847e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/pvorb","id":183534,"login":"pvorb"},"deletions":3,"review_comments":0,"html_url":"https://github.com/twitter/bootstrap/pull/3545","state":"open","base":{"repo":{"name":"bootstrap","size":1244,"created_at":"2011-07-29T21:19:00Z","has_wiki":true,"clone_url":"https://github.com/twitter/bootstrap.git","private":false,"watchers":29097,"updated_at":"2012-05-20T08:48:41Z","ssh_url":"git@github.com:twitter/bootstrap.git","fork":false,"url":"https://api.github.com/repos/twitter/bootstrap","git_url":"git://github.com/twitter/bootstrap.git","language":"JavaScript","id":2126244,"pushed_at":"2012-05-18T05:00:54Z","svn_url":"https://github.com/twitter/bootstrap","has_downloads":true,"mirror_url":null,"open_issues":222,"has_issues":true,"homepage":"http://twitter.github.com/bootstrap","description":"HTML, CSS, and JS toolkit from Twitter","forks":5699,"html_url":"https://github.com/twitter/bootstrap","owner":{"gravatar_id":"74e977ae0a10f06057a119eef30c6660","avatar_url":"https://secure.gravatar.com/avatar/74e977ae0a10f06057a119eef30c6660?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","url":"https://api.github.com/users/twitter","id":50278,"login":"twitter"}},"label":"twitter:master","sha":"b261f9781bbf31f499cb55c49451dc0c0ad43062","ref":"master","user":{"gravatar_id":"74e977ae0a10f06057a119eef30c6660","avatar_url":"https://secure.gravatar.com/avatar/74e977ae0a10f06057a119eef30c6660?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","url":"https://api.github.com/users/twitter","id":50278,"login":"twitter"}}},"action":"opened"},"public":true,"org":{"gravatar_id":"74e977ae0a10f06057a119eef30c6660","url":"https://api.github.com/orgs/twitter","id":50278,"avatar_url":"https://secure.gravatar.com/avatar/74e977ae0a10f06057a119eef30c6660?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"twitter"},"repo":{"url":"https://api.github.com/repos/twitter/bootstrap","id":2126244,"name":"twitter/bootstrap"},"created_at":"2012-05-20T08:55:26Z","id":"1553894547","actor":{"gravatar_id":"b30a7c139117a36a3f2cc2958942847e","url":"https://api.github.com/users/pvorb","id":183534,"avatar_url":"https://secure.gravatar.com/avatar/b30a7c139117a36a3f2cc2958942847e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"pvorb"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T08:33:02Z","body":"This should be removed. It's not necessary because of traversing.","updated_at":"2012-05-20T08:33:02Z","url":"https://api.github.com/repos/twitter/bootstrap/issues/comments/5807352","id":5807352,"user":{"avatar_url":"https://secure.gravatar.com/avatar/4c39d9893256e9da887449f1d90d9562?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"4c39d9893256e9da887449f1d90d9562","url":"https://api.github.com/users/macx","id":84112,"login":"macx"}},"action":"created","issue":{"number":3543,"created_at":"2012-05-19T08:23:49Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"comments":1,"body":"The attributes `font-family`, `font-size` and `line-height` are set identically for both `` and `

    `. What's the rationale for repeating the declaration in `

    `? Regards, Christian","title":"Font assignment overdone?","updated_at":"2012-05-20T08:33:02Z","url":"https://api.github.com/repos/twitter/bootstrap/issues/3543","id":4653303,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/twitter/bootstrap/issues/3543","user":{"avatar_url":"https://secure.gravatar.com/avatar/04d99189f86d1d269b04876e68092784?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04d99189f86d1d269b04876e68092784","url":"https://api.github.com/users/datenimperator","id":112130,"login":"datenimperator"},"labels":[],"state":"open"}},"public":true,"org":{"gravatar_id":"74e977ae0a10f06057a119eef30c6660","url":"https://api.github.com/orgs/twitter","id":50278,"avatar_url":"https://secure.gravatar.com/avatar/74e977ae0a10f06057a119eef30c6660?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"twitter"},"repo":{"url":"https://api.github.com/repos/twitter/bootstrap","id":2126244,"name":"twitter/bootstrap"},"created_at":"2012-05-20T08:33:04Z","id":"1553892964","actor":{"gravatar_id":"4c39d9893256e9da887449f1d90d9562","url":"https://api.github.com/users/macx","id":84112,"avatar_url":"https://secure.gravatar.com/avatar/4c39d9893256e9da887449f1d90d9562?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"macx"}},{"type":"PushEvent","payload":{"head":"4986f61c9ce00ce792683cce9e47ea1579631155","size":2,"push_id":79397931,"commits":[{"sha":"9c52a9b0ee98d1dce4a427e8a09307d399fe414d","author":{"name":"Bryan Donlan","email":"bdonlan@amazon.com"},"url":"https://api.github.com/repos/boto/boto/commits/9c52a9b0ee98d1dce4a427e8a09307d399fe414d","distinct":true,"message":"Fix infinite loop when listing a large (100+) number of tables in dynamodb"},{"sha":"4986f61c9ce00ce792683cce9e47ea1579631155","author":{"name":"Mitch Garnaat","email":"mitch@garnaat.com"},"url":"https://api.github.com/repos/boto/boto/commits/4986f61c9ce00ce792683cce9e47ea1579631155","distinct":true,"message":"Removing extraneous host param from Layer2 contructor."}],"ref":"refs/heads/develop"},"public":true,"org":{"gravatar_id":"9062d6f913c867ce042928d6637abd05","url":"https://api.github.com/orgs/boto","id":327752,"avatar_url":"https://secure.gravatar.com/avatar/9062d6f913c867ce042928d6637abd05?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"boto"},"repo":{"url":"https://api.github.com/repos/boto/boto","id":771016,"name":"boto/boto"},"created_at":"2012-05-20T07:40:29Z","id":"1553889294","actor":{"gravatar_id":"c3dc609a225fde3f6d0395ac59c576ce","url":"https://api.github.com/users/garnaat","id":2056,"avatar_url":"https://secure.gravatar.com/avatar/c3dc609a225fde3f6d0395ac59c576ce?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"garnaat"}},{"type":"PullRequestEvent","payload":{"number":770,"pull_request":{"issue_url":"https://github.com/boto/boto/issues/770","head":{"repo":{"name":"boto","master_branch":"develop","created_at":"2012-05-19T23:11:59Z","size":120,"has_wiki":true,"clone_url":"https://github.com/bdonlan/boto.git","updated_at":"2012-05-19T23:13:56Z","private":false,"watchers":1,"language":"Python","git_url":"git://github.com/bdonlan/boto.git","ssh_url":"git@github.com:bdonlan/boto.git","fork":true,"url":"https://api.github.com/repos/bdonlan/boto","id":4381487,"pushed_at":"2012-05-19T23:13:56Z","svn_url":"https://github.com/bdonlan/boto","open_issues":0,"mirror_url":null,"has_downloads":true,"has_issues":false,"homepage":"http://boto.readthedocs.org/","forks":0,"description":"Python interface to Amazon Web Services","html_url":"https://github.com/bdonlan/boto","owner":{"avatar_url":"https://secure.gravatar.com/avatar/53e4dcccc5d1dbef4a3babf0cb6ba6fc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"53e4dcccc5d1dbef4a3babf0cb6ba6fc","url":"https://api.github.com/users/bdonlan","id":9473,"login":"bdonlan"}},"label":"bdonlan:develop","sha":"9c52a9b0ee98d1dce4a427e8a09307d399fe414d","ref":"develop","user":{"avatar_url":"https://secure.gravatar.com/avatar/53e4dcccc5d1dbef4a3babf0cb6ba6fc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"53e4dcccc5d1dbef4a3babf0cb6ba6fc","url":"https://api.github.com/users/bdonlan","id":9473,"login":"bdonlan"}},"number":770,"created_at":"2012-05-19T23:15:06Z","changed_files":1,"merged_by":{"avatar_url":"https://secure.gravatar.com/avatar/c3dc609a225fde3f6d0395ac59c576ce?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c3dc609a225fde3f6d0395ac59c576ce","url":"https://api.github.com/users/garnaat","id":2056,"login":"garnaat"},"merged":true,"body":"The current code loops when there are more tables, but continues requesting a list from the start, leading to an infinite loop.","comments":0,"title":"Fix infinite loop when listing a large (100+) number of tables in dynamodb","updated_at":"2012-05-20T07:40:29Z","additions":7,"diff_url":"https://github.com/boto/boto/pull/770.diff","_links":{"html":{"href":"https://github.com/boto/boto/pull/770"},"self":{"href":"https://api.github.com/repos/boto/boto/pulls/770"},"comments":{"href":"https://api.github.com/repos/boto/boto/issues/770/comments"},"issue":{"href":"https://api.github.com/repos/boto/boto/issues/770"},"review_comments":{"href":"https://api.github.com/repos/boto/boto/pulls/770/comments"}},"url":"https://api.github.com/repos/boto/boto/pulls/770","id":1387801,"patch_url":"https://github.com/boto/boto/pull/770.patch","mergeable":null,"merged_at":"2012-05-20T07:40:29Z","closed_at":"2012-05-20T07:40:29Z","commits":1,"html_url":"https://github.com/boto/boto/pull/770","user":{"avatar_url":"https://secure.gravatar.com/avatar/53e4dcccc5d1dbef4a3babf0cb6ba6fc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"53e4dcccc5d1dbef4a3babf0cb6ba6fc","url":"https://api.github.com/users/bdonlan","id":9473,"login":"bdonlan"},"review_comments":0,"deletions":2,"state":"closed","base":{"repo":{"name":"boto","master_branch":"develop","created_at":"2010-07-12T19:15:33Z","size":4183,"has_wiki":true,"clone_url":"https://github.com/boto/boto.git","updated_at":"2012-05-20T07:40:28Z","private":false,"watchers":1519,"language":"Python","git_url":"git://github.com/boto/boto.git","ssh_url":"git@github.com:boto/boto.git","fork":false,"url":"https://api.github.com/repos/boto/boto","id":771016,"pushed_at":"2012-05-20T07:40:27Z","svn_url":"https://github.com/boto/boto","open_issues":131,"mirror_url":null,"has_downloads":true,"has_issues":true,"homepage":"http://boto.readthedocs.org/","forks":395,"description":"Python interface to Amazon Web Services","html_url":"https://github.com/boto/boto","owner":{"avatar_url":"https://secure.gravatar.com/avatar/9062d6f913c867ce042928d6637abd05?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"9062d6f913c867ce042928d6637abd05","url":"https://api.github.com/users/boto","id":327752,"login":"boto"}},"label":"boto:develop","sha":"0bd4d8b270fd5796e2e8b570f8703410bdd02820","ref":"develop","user":{"avatar_url":"https://secure.gravatar.com/avatar/9062d6f913c867ce042928d6637abd05?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"9062d6f913c867ce042928d6637abd05","url":"https://api.github.com/users/boto","id":327752,"login":"boto"}}},"action":"closed"},"public":true,"org":{"gravatar_id":"9062d6f913c867ce042928d6637abd05","url":"https://api.github.com/orgs/boto","id":327752,"avatar_url":"https://secure.gravatar.com/avatar/9062d6f913c867ce042928d6637abd05?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"boto"},"repo":{"url":"https://api.github.com/repos/boto/boto","id":771016,"name":"boto/boto"},"created_at":"2012-05-20T07:40:29Z","id":"1553889293","actor":{"gravatar_id":"c3dc609a225fde3f6d0395ac59c576ce","url":"https://api.github.com/users/garnaat","id":2056,"avatar_url":"https://secure.gravatar.com/avatar/c3dc609a225fde3f6d0395ac59c576ce?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"garnaat"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-20T07:39:27Z","body":"Good idea although I wonder if /Versions/1.8/ might be even better considering we die on our arse with 1.9.","updated_at":"2012-05-20T07:39:27Z","url":"https://api.github.com/repos/mxcl/homebrew/issues/comments/5807134","id":5807134,"user":{"avatar_url":"https://secure.gravatar.com/avatar/215e0166d4d8265395c5d9076da73c70?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"215e0166d4d8265395c5d9076da73c70","url":"https://api.github.com/users/mikemcquaid","id":125011,"login":"mikemcquaid"}},"action":"created","issue":{"number":12333,"created_at":"2012-05-20T01:39:12Z","pull_request":{"diff_url":"https://github.com/mxcl/homebrew/pull/12333.diff","patch_url":"https://github.com/mxcl/homebrew/pull/12333.patch","html_url":"https://github.com/mxcl/homebrew/pull/12333"},"body":"re: #12009, this commit replaces all usages of /usr/bin/ruby with the full Framework path, which is *hopefully* less likely to be altered.\n\nSince we're no longer dealing with a default ruby path which is a symlink, I simplified the `brew --config` checks for the system ruby.","title":"Replace /usr/bin/ruby with full Framework path","comments":2,"updated_at":"2012-05-20T07:39:27Z","url":"https://api.github.com/repos/mxcl/homebrew/issues/12333","id":4657778,"assignee":null,"milestone":null,"closed_at":null,"html_url":"https://github.com/mxcl/homebrew/issues/12333","user":{"avatar_url":"https://secure.gravatar.com/avatar/f5f2035f07c635d24c62cf211d37f3d4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"f5f2035f07c635d24c62cf211d37f3d4","url":"https://api.github.com/users/mistydemeo","id":780485,"login":"mistydemeo"},"labels":[],"state":"open"}},"public":true,"repo":{"url":"https://api.github.com/repos/mxcl/homebrew","id":206084,"name":"mxcl/homebrew"},"created_at":"2012-05-20T07:39:29Z","id":"1553889227","actor":{"gravatar_id":"215e0166d4d8265395c5d9076da73c70","url":"https://api.github.com/users/mikemcquaid","id":125011,"avatar_url":"https://secure.gravatar.com/avatar/215e0166d4d8265395c5d9076da73c70?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"mikemcquaid"}},{"type":"PullRequestEvent","payload":{"number":648,"pull_request":{"issue_url":"https://github.com/mbostock/d3/issues/648","head":{"repo":{"name":"d3","created_at":"2012-05-20T05:25:26Z","size":208,"has_wiki":true,"clone_url":"https://github.com/eghm/d3.git","updated_at":"2012-05-20T05:44:03Z","private":false,"watchers":1,"git_url":"git://github.com/eghm/d3.git","ssh_url":"git@github.com:eghm/d3.git","fork":true,"language":"JavaScript","url":"https://api.github.com/repos/eghm/d3","id":4382862,"pushed_at":"2012-05-20T05:44:02Z","svn_url":"https://github.com/eghm/d3","open_issues":0,"mirror_url":null,"has_downloads":true,"has_issues":false,"homepage":"http://d3js.org","forks":0,"description":"A JavaScript visualization library for HTML and SVG.","html_url":"https://github.com/eghm/d3","owner":{"avatar_url":"https://secure.gravatar.com/avatar/102614634bcb88f28cc84b9c8d1a7e66?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"102614634bcb88f28cc84b9c8d1a7e66","url":"https://api.github.com/users/eghm","id":52850,"login":"eghm"}},"label":"eghm:master","sha":"4501a5e68ad31f3ea85983188f1a75906f3afd6d","ref":"master","user":{"avatar_url":"https://secure.gravatar.com/avatar/102614634bcb88f28cc84b9c8d1a7e66?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"102614634bcb88f28cc84b9c8d1a7e66","url":"https://api.github.com/users/eghm","id":52850,"login":"eghm"}},"number":648,"created_at":"2012-05-20T05:47:07Z","changed_files":1,"merged_by":null,"merged":false,"body":"An undefined import causes a fatal error in the bundle-radial demo. This commit avoids the error, the ui will go on to draw a line to a blank node. To recreate initial undefined error add a un-\"name\"ed node to one of the imports in examples/data/flare-imports.\n\nThanks for sharing such an awesome tool.\n","comments":0,"title":"add start and end parent != undefined in d3_layout_bundlePath while","updated_at":"2012-05-20T05:47:07Z","additions":2,"diff_url":"https://github.com/mbostock/d3/pull/648.diff","_links":{"html":{"href":"https://github.com/mbostock/d3/pull/648"},"self":{"href":"https://api.github.com/repos/mbostock/d3/pulls/648"},"comments":{"href":"https://api.github.com/repos/mbostock/d3/issues/648/comments"},"issue":{"href":"https://api.github.com/repos/mbostock/d3/issues/648"},"review_comments":{"href":"https://api.github.com/repos/mbostock/d3/pulls/648/comments"}},"url":"https://api.github.com/repos/mbostock/d3/pulls/648","id":1388185,"patch_url":"https://github.com/mbostock/d3/pull/648.patch","mergeable":null,"merged_at":null,"closed_at":null,"commits":1,"html_url":"https://github.com/mbostock/d3/pull/648","user":{"avatar_url":"https://secure.gravatar.com/avatar/102614634bcb88f28cc84b9c8d1a7e66?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"102614634bcb88f28cc84b9c8d1a7e66","url":"https://api.github.com/users/eghm","id":52850,"login":"eghm"},"review_comments":0,"deletions":2,"state":"open","base":{"repo":{"name":"d3","created_at":"2010-09-27T17:22:42Z","size":3268,"has_wiki":true,"clone_url":"https://github.com/mbostock/d3.git","updated_at":"2012-05-20T05:25:26Z","private":false,"watchers":5893,"git_url":"git://github.com/mbostock/d3.git","ssh_url":"git@github.com:mbostock/d3.git","fork":false,"language":"JavaScript","url":"https://api.github.com/repos/mbostock/d3","id":943149,"pushed_at":"2012-05-17T19:11:22Z","svn_url":"https://github.com/mbostock/d3","open_issues":110,"mirror_url":null,"has_downloads":true,"has_issues":true,"homepage":"http://d3js.org","forks":670,"description":"A JavaScript visualization library for HTML and SVG.","html_url":"https://github.com/mbostock/d3","owner":{"avatar_url":"https://secure.gravatar.com/avatar/005a27e09fe946ebef64bf4d134efc0a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"005a27e09fe946ebef64bf4d134efc0a","url":"https://api.github.com/users/mbostock","id":230541,"login":"mbostock"}},"label":"mbostock:master","sha":"dd2a424f2bdb8fae1dab5ac27168f5bba186a0c4","ref":"master","user":{"avatar_url":"https://secure.gravatar.com/avatar/005a27e09fe946ebef64bf4d134efc0a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"005a27e09fe946ebef64bf4d134efc0a","url":"https://api.github.com/users/mbostock","id":230541,"login":"mbostock"}}},"action":"opened"},"public":true,"repo":{"url":"https://api.github.com/repos/mbostock/d3","id":943149,"name":"mbostock/d3"},"created_at":"2012-05-20T05:47:09Z","id":"1553878057","actor":{"gravatar_id":"102614634bcb88f28cc84b9c8d1a7e66","url":"https://api.github.com/users/eghm","id":52850,"avatar_url":"https://secure.gravatar.com/avatar/102614634bcb88f28cc84b9c8d1a7e66?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"eghm"}},{"type":"PushEvent","payload":{"head":"389347c92a590c6e6165a53ae054e48ca6a23db9","size":1,"push_id":79392783,"commits":[{"sha":"389347c92a590c6e6165a53ae054e48ca6a23db9","author":{"name":"Nick Stenning","email":"nick@whiteink.com"},"url":"https://api.github.com/repos/mxcl/homebrew/commits/389347c92a590c6e6165a53ae054e48ca6a23db9","distinct":true,"message":"mu: make emacs support optional\n\nCloses #12306.\n\nSigned-off-by: Jack Nagel "}],"ref":"refs/heads/master"},"public":true,"repo":{"url":"https://api.github.com/repos/mxcl/homebrew","id":206084,"name":"mxcl/homebrew"},"created_at":"2012-05-20T05:20:38Z","id":"1553874168","actor":{"gravatar_id":"68602fa96bdda4c677ece48ab42b6eb2","url":"https://api.github.com/users/jacknagel","id":568243,"avatar_url":"https://secure.gravatar.com/avatar/68602fa96bdda4c677ece48ab42b6eb2?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacknagel"}},{"type":"PullRequestEvent","payload":{"number":12306,"pull_request":{"issue_url":"https://github.com/mxcl/homebrew/issues/12306","head":{"repo":{"name":"homebrew","master_branch":"master","created_at":"2011-10-03T12:09:31Z","size":188,"has_wiki":true,"clone_url":"https://github.com/nickstenning/homebrew.git","updated_at":"2012-05-19T21:24:29Z","private":false,"watchers":1,"git_url":"git://github.com/nickstenning/homebrew.git","ssh_url":"git@github.com:nickstenning/homebrew.git","fork":true,"url":"https://api.github.com/repos/nickstenning/homebrew","language":"Ruby","id":2504318,"pushed_at":"2012-05-19T21:24:29Z","svn_url":"https://github.com/nickstenning/homebrew","mirror_url":null,"open_issues":0,"has_downloads":false,"has_issues":false,"homepage":"http://mxcl.github.com/homebrew","forks":0,"description":"The missing package manager for OS X.","html_url":"https://github.com/nickstenning/homebrew","owner":{"avatar_url":"https://secure.gravatar.com/avatar/7c753fa710877b55f7596b47f5a554b1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"7c753fa710877b55f7596b47f5a554b1","url":"https://api.github.com/users/nickstenning","id":3602,"login":"nickstenning"}},"label":"nickstenning:fix-mu","sha":"1a4c4f1a3d3a87da4a49ae4209186edc695eb715","ref":"fix-mu","user":{"avatar_url":"https://secure.gravatar.com/avatar/7c753fa710877b55f7596b47f5a554b1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"7c753fa710877b55f7596b47f5a554b1","url":"https://api.github.com/users/nickstenning","id":3602,"login":"nickstenning"}},"number":12306,"created_at":"2012-05-18T10:18:22Z","changed_files":1,"merged_by":null,"merged":false,"body":"This patch removes a slightly insane dependency of `mu` on the `emacs` package.","comments":7,"title":"mu: don't depend on emacs","updated_at":"2012-05-20T05:19:00Z","additions":11,"diff_url":"https://github.com/mxcl/homebrew/pull/12306.diff","_links":{"html":{"href":"https://github.com/mxcl/homebrew/pull/12306"},"self":{"href":"https://api.github.com/repos/mxcl/homebrew/pulls/12306"},"comments":{"href":"https://api.github.com/repos/mxcl/homebrew/issues/12306/comments"},"issue":{"href":"https://api.github.com/repos/mxcl/homebrew/issues/12306"},"review_comments":{"href":"https://api.github.com/repos/mxcl/homebrew/pulls/12306/comments"}},"url":"https://api.github.com/repos/mxcl/homebrew/pulls/12306","id":1380202,"patch_url":"https://github.com/mxcl/homebrew/pull/12306.patch","mergeable":true,"merged_at":null,"closed_at":"2012-05-20T05:19:00Z","commits":3,"html_url":"https://github.com/mxcl/homebrew/pull/12306","user":{"avatar_url":"https://secure.gravatar.com/avatar/7c753fa710877b55f7596b47f5a554b1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"7c753fa710877b55f7596b47f5a554b1","url":"https://api.github.com/users/nickstenning","id":3602,"login":"nickstenning"},"review_comments":0,"deletions":1,"state":"closed","base":{"repo":{"name":"homebrew","master_branch":"master","created_at":"2009-05-20T19:38:37Z","size":4436,"has_wiki":true,"clone_url":"https://github.com/mxcl/homebrew.git","updated_at":"2012-05-20T05:18:59Z","private":false,"watchers":8673,"git_url":"git://github.com/mxcl/homebrew.git","ssh_url":"git@github.com:mxcl/homebrew.git","fork":false,"url":"https://api.github.com/repos/mxcl/homebrew","language":"Ruby","id":206084,"pushed_at":"2012-05-20T05:18:59Z","svn_url":"https://github.com/mxcl/homebrew","mirror_url":null,"open_issues":423,"has_downloads":false,"has_issues":true,"homepage":"http://mxcl.github.com/homebrew","forks":3960,"description":"The missing package manager for OS X.","html_url":"https://github.com/mxcl/homebrew","owner":{"avatar_url":"https://secure.gravatar.com/avatar/25ff3dfe48d3847ecf9971aab99589fb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"25ff3dfe48d3847ecf9971aab99589fb","url":"https://api.github.com/users/mxcl","id":58962,"login":"mxcl"}},"label":"mxcl:master","sha":"7ac1cbc996e0f18aaabad5ef327ff57161e0ae2e","ref":"master","user":{"avatar_url":"https://secure.gravatar.com/avatar/25ff3dfe48d3847ecf9971aab99589fb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"25ff3dfe48d3847ecf9971aab99589fb","url":"https://api.github.com/users/mxcl","id":58962,"login":"mxcl"}}},"action":"closed"},"public":true,"repo":{"url":"https://api.github.com/repos/mxcl/homebrew","id":206084,"name":"mxcl/homebrew"},"created_at":"2012-05-20T05:19:01Z","id":"1553873936","actor":{"gravatar_id":"68602fa96bdda4c677ece48ab42b6eb2","url":"https://api.github.com/users/jacknagel","id":568243,"avatar_url":"https://secure.gravatar.com/avatar/68602fa96bdda4c677ece48ab42b6eb2?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacknagel"}}] + diff --git a/lib/github/tests/ReplayData/NamedUser.testGetRepo.txt b/lib/github/tests/ReplayData/NamedUser.testGetRepo.txt new file mode 100644 index 0000000000..d0df7b4780 --- /dev/null +++ b/lib/github/tests/ReplayData/NamedUser.testGetRepo.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4939'), ('content-length', '1097'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"922c0519f2733063a899619ae95ce892"'), ('date', 'Sun, 20 May 2012 12:33:27 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"svn_url":"https://github.com/jacquev6/PyGithub","has_wiki":false,"has_issues":true,"updated_at":"2012-05-19T10:50:39Z","forks":2,"homepage":"http://vincent-jacques.net/PyGithub","git_url":"git://github.com/jacquev6/PyGithub.git","url":"https://api.github.com/repos/jacquev6/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","open_issues":18,"fork":false,"ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-19T10:50:39Z","size":304,"private":false,"has_downloads":true,"watchers":13,"html_url":"https://github.com/jacquev6/PyGithub","owner":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"PyGithub","permissions":{"pull":true,"admin":true,"push":true},"language":"Python","description":"Python library implementing the full Github API v3","created_at":"2012-02-25T12:53:47Z","id":3544490,"mirror_url":null} + diff --git a/lib/github/tests/ReplayData/NamedUser.testGetRepos.txt b/lib/github/tests/ReplayData/NamedUser.testGetRepos.txt new file mode 100644 index 0000000000..cc565200a8 --- /dev/null +++ b/lib/github/tests/ReplayData/NamedUser.testGetRepos.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/users/jacquev6/repos +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4965'), ('content-length', '12615'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"9389fb7704e9c5ed4c38f461a4c83fd7"'), ('date', 'Sat, 26 May 2012 10:11:31 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"clone_url":"https://github.com/jacquev6/TestPyGithub.git","has_downloads":false,"watchers":1,"updated_at":"2012-05-26T09:55:27Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://foobar.com","url":"https://api.github.com/repos/jacquev6/TestPyGithub","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":0,"git_url":"git://github.com/jacquev6/TestPyGithub.git","private":false,"open_issues":0,"mirror_url":null,"svn_url":"https://github.com/jacquev6/TestPyGithub","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"TestPyGithub","language":null,"description":"Repo created by PyGithub","ssh_url":"git@github.com:jacquev6/TestPyGithub.git","pushed_at":"2012-05-26T09:55:27Z","created_at":"2012-05-26T09:55:27Z","id":4454027,"html_url":"https://github.com/jacquev6/TestPyGithub","full_name":"jacquev6/TestPyGithub"},{"clone_url":"https://github.com/jacquev6/django.git","has_downloads":true,"watchers":1,"updated_at":"2012-04-28T11:06:20Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://www.djangoproject.com/","url":"https://api.github.com/repos/jacquev6/django","has_wiki":false,"has_issues":false,"fork":true,"forks":0,"size":48476,"git_url":"git://github.com/jacquev6/django.git","private":false,"open_issues":0,"mirror_url":null,"svn_url":"https://github.com/jacquev6/django","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"django","language":"Python","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","ssh_url":"git@github.com:jacquev6/django.git","pushed_at":"2012-04-28T04:05:15Z","created_at":"2012-04-28T11:06:20Z","id":4166730,"html_url":"https://github.com/jacquev6/django","full_name":"jacquev6/django"},{"clone_url":"https://github.com/jacquev6/PyGithub.git","has_downloads":true,"watchers":13,"updated_at":"2012-05-26T10:01:38Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","has_wiki":false,"has_issues":true,"fork":false,"forks":2,"size":412,"git_url":"git://github.com/jacquev6/PyGithub.git","private":false,"open_issues":16,"mirror_url":null,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-26T10:01:38Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"html_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub"},{"clone_url":"https://github.com/jacquev6/developer.github.com.git","has_downloads":false,"watchers":0,"updated_at":"2012-05-08T08:36:28Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/jacquev6/developer.github.com","has_wiki":false,"has_issues":false,"fork":true,"forks":0,"size":152,"git_url":"git://github.com/jacquev6/developer.github.com.git","private":false,"open_issues":0,"mirror_url":null,"svn_url":"https://github.com/jacquev6/developer.github.com","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"developer.github.com","language":"Ruby","description":"","ssh_url":"git@github.com:jacquev6/developer.github.com.git","pushed_at":"2012-05-08T08:36:28Z","created_at":"2012-02-05T18:22:26Z","id":3361136,"html_url":"https://github.com/jacquev6/developer.github.com","full_name":"jacquev6/developer.github.com"},{"clone_url":"https://github.com/jacquev6/acme-public-website.git","has_downloads":false,"watchers":0,"updated_at":"2012-05-22T18:24:49Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/jacquev6/acme-public-website","has_wiki":false,"has_issues":false,"fork":false,"forks":0,"size":120,"git_url":"git://github.com/jacquev6/acme-public-website.git","private":false,"open_issues":0,"mirror_url":null,"svn_url":"https://github.com/jacquev6/acme-public-website","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"acme-public-website","language":null,"description":"","ssh_url":"git@github.com:jacquev6/acme-public-website.git","pushed_at":"2011-12-07T20:11:17Z","created_at":"2011-12-07T20:00:40Z","id":2935252,"html_url":"https://github.com/jacquev6/acme-public-website","full_name":"jacquev6/acme-public-website"},{"clone_url":"https://github.com/jacquev6/C4Planner.git","has_downloads":true,"watchers":1,"updated_at":"2012-02-16T21:51:01Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/C4Planner","url":"https://api.github.com/repos/jacquev6/C4Planner","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":4716,"git_url":"git://github.com/jacquev6/C4Planner.git","private":false,"open_issues":0,"mirror_url":null,"svn_url":"https://github.com/jacquev6/C4Planner","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"C4Planner","language":"Python","description":"Caesar IV: anticipate your city","ssh_url":"git@github.com:jacquev6/C4Planner.git","pushed_at":"2011-11-27T20:51:06Z","created_at":"2011-08-24T08:30:55Z","id":2260441,"html_url":"https://github.com/jacquev6/C4Planner","full_name":"jacquev6/C4Planner"},{"clone_url":"https://github.com/jacquev6/DrawTurksHead.git","has_downloads":false,"watchers":0,"updated_at":"2012-04-16T18:38:55Z","permissions":{"pull":true,"admin":true,"push":true},"master_branch":"master","homepage":"http://vincent-jacques.net/DrawTurksHead/","url":"https://api.github.com/repos/jacquev6/DrawTurksHead","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":3232,"git_url":"git://github.com/jacquev6/DrawTurksHead.git","private":false,"open_issues":0,"mirror_url":null,"svn_url":"https://github.com/jacquev6/DrawTurksHead","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"DrawTurksHead","language":"C++","description":"A tool to draw Turk's Head Knots. Try it online","ssh_url":"git@github.com:jacquev6/DrawTurksHead.git","pushed_at":"2012-04-16T18:38:54Z","created_at":"2010-07-10T08:54:09Z","id":767403,"html_url":"https://github.com/jacquev6/DrawTurksHead","full_name":"jacquev6/DrawTurksHead"},{"clone_url":"https://github.com/jacquev6/DrawSyntax.git","has_downloads":false,"watchers":0,"updated_at":"2011-11-27T14:00:34Z","permissions":{"pull":true,"admin":true,"push":true},"master_branch":"master","homepage":"http://vincent-jacques.net/DrawSyntax/","url":"https://api.github.com/repos/jacquev6/DrawSyntax","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":1760,"git_url":"git://github.com/jacquev6/DrawSyntax.git","private":false,"open_issues":0,"mirror_url":null,"svn_url":"https://github.com/jacquev6/DrawSyntax","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"DrawSyntax","language":"C++","description":"Draw syntax diagrams from EBNF grammars. API in C++ and Python. Try it online.","ssh_url":"git@github.com:jacquev6/DrawSyntax.git","pushed_at":"2011-11-27T14:00:32Z","created_at":"2010-07-10T08:39:56Z","id":767392,"html_url":"https://github.com/jacquev6/DrawSyntax","full_name":"jacquev6/DrawSyntax"},{"clone_url":"https://github.com/jacquev6/QuadProgMm.git","has_downloads":false,"watchers":0,"updated_at":"2012-04-16T18:39:06Z","permissions":{"pull":true,"admin":true,"push":true},"master_branch":"master","homepage":"http://vincent-jacques.net/QuadProgMm","url":"https://api.github.com/repos/jacquev6/QuadProgMm","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":760,"git_url":"git://github.com/jacquev6/QuadProgMm.git","private":false,"open_issues":0,"mirror_url":null,"svn_url":"https://github.com/jacquev6/QuadProgMm","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"QuadProgMm","language":"C++","description":"A C++ interface to specify quadratic problems by C++ expressions of your variables. Try it online.","ssh_url":"git@github.com:jacquev6/QuadProgMm.git","pushed_at":"2012-04-16T18:39:05Z","created_at":"2010-07-10T08:36:57Z","id":767386,"html_url":"https://github.com/jacquev6/QuadProgMm","full_name":"jacquev6/QuadProgMm"},{"clone_url":"https://github.com/jacquev6/Boost.HierarchicalEnum.git","has_downloads":false,"watchers":2,"updated_at":"2012-02-20T12:43:24Z","permissions":{"pull":true,"admin":true,"push":true},"master_branch":"master","homepage":"","url":"https://api.github.com/repos/jacquev6/Boost.HierarchicalEnum","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":112,"git_url":"git://github.com/jacquev6/Boost.HierarchicalEnum.git","private":false,"open_issues":0,"mirror_url":null,"svn_url":"https://github.com/jacquev6/Boost.HierarchicalEnum","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"Boost.HierarchicalEnum","language":"C++","description":"","ssh_url":"git@github.com:jacquev6/Boost.HierarchicalEnum.git","pushed_at":"2011-11-27T14:00:23Z","created_at":"2010-07-10T08:32:12Z","id":767382,"html_url":"https://github.com/jacquev6/Boost.HierarchicalEnum","full_name":"jacquev6/Boost.HierarchicalEnum"},{"clone_url":"https://github.com/jacquev6/ViDE.git","has_downloads":false,"watchers":0,"updated_at":"2012-04-19T16:35:46Z","permissions":{"pull":true,"admin":true,"push":true},"master_branch":"master","homepage":"","url":"https://api.github.com/repos/jacquev6/ViDE","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":1488,"git_url":"git://github.com/jacquev6/ViDE.git","private":false,"open_issues":0,"mirror_url":null,"svn_url":"https://github.com/jacquev6/ViDE","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"ViDE","language":"Python","description":"Vincent's Development Environment","ssh_url":"git@github.com:jacquev6/ViDE.git","pushed_at":"2012-04-19T16:35:45Z","created_at":"2010-07-10T07:33:24Z","id":767343,"html_url":"https://github.com/jacquev6/ViDE","full_name":"jacquev6/ViDE"}] + diff --git a/lib/github/tests/ReplayData/NamedUser.testGetReposWithType.txt b/lib/github/tests/ReplayData/NamedUser.testGetReposWithType.txt new file mode 100644 index 0000000000..b42a3c317c --- /dev/null +++ b/lib/github/tests/ReplayData/NamedUser.testGetReposWithType.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/users/jacquev6/repos?type=owner +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4977'), ('content-length', '11503'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"9a00076b9af2cb64dc2bb51189ae6b9c"'), ('date', 'Tue, 29 May 2012 18:14:38 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"description":"The Web framework for perfectionists with deadlines. Now on GitHub.","html_url":"https://github.com/jacquev6/django","full_name":"jacquev6/django","has_wiki":false,"has_issues":false,"git_url":"git://github.com/jacquev6/django.git","updated_at":"2012-04-28T11:06:20Z","forks":0,"mirror_url":null,"homepage":"http://www.djangoproject.com/","ssh_url":"git@github.com:jacquev6/django.git","open_issues":0,"fork":true,"svn_url":"https://github.com/jacquev6/django","pushed_at":"2012-04-28T04:05:15Z","size":48476,"private":false,"url":"https://api.github.com/repos/jacquev6/django","clone_url":"https://github.com/jacquev6/django.git","owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"name":"django","has_downloads":true,"language":"Python","watchers":1,"id":4166730,"permissions":{"admin":true,"pull":true,"push":true},"created_at":"2012-04-28T11:06:20Z"},{"description":"Python library implementing the full Github API v3","html_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub","has_wiki":false,"has_issues":true,"git_url":"git://github.com/jacquev6/PyGithub.git","updated_at":"2012-05-29T18:07:54Z","forks":3,"mirror_url":null,"homepage":"http://vincent-jacques.net/PyGithub","ssh_url":"git@github.com:jacquev6/PyGithub.git","open_issues":14,"fork":false,"svn_url":"https://github.com/jacquev6/PyGithub","pushed_at":"2012-05-29T18:07:54Z","size":480,"private":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"name":"PyGithub","has_downloads":true,"language":"Python","watchers":17,"id":3544490,"permissions":{"admin":true,"pull":true,"push":true},"created_at":"2012-02-25T12:53:47Z"},{"description":"","html_url":"https://github.com/jacquev6/developer.github.com","full_name":"jacquev6/developer.github.com","has_wiki":false,"has_issues":false,"git_url":"git://github.com/jacquev6/developer.github.com.git","updated_at":"2012-05-08T08:36:28Z","forks":0,"mirror_url":null,"homepage":"","ssh_url":"git@github.com:jacquev6/developer.github.com.git","open_issues":0,"fork":true,"svn_url":"https://github.com/jacquev6/developer.github.com","pushed_at":"2012-05-08T08:36:28Z","size":152,"private":false,"url":"https://api.github.com/repos/jacquev6/developer.github.com","clone_url":"https://github.com/jacquev6/developer.github.com.git","owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"name":"developer.github.com","has_downloads":false,"language":"Ruby","watchers":0,"id":3361136,"permissions":{"admin":true,"pull":true,"push":true},"created_at":"2012-02-05T18:22:26Z"},{"description":"","html_url":"https://github.com/jacquev6/acme-public-website","full_name":"jacquev6/acme-public-website","has_wiki":false,"has_issues":false,"git_url":"git://github.com/jacquev6/acme-public-website.git","updated_at":"2012-05-22T18:24:49Z","forks":0,"mirror_url":null,"homepage":"","ssh_url":"git@github.com:jacquev6/acme-public-website.git","open_issues":0,"fork":false,"svn_url":"https://github.com/jacquev6/acme-public-website","pushed_at":"2011-12-07T20:11:17Z","size":120,"private":false,"url":"https://api.github.com/repos/jacquev6/acme-public-website","clone_url":"https://github.com/jacquev6/acme-public-website.git","owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"name":"acme-public-website","has_downloads":false,"language":null,"watchers":0,"id":2935252,"permissions":{"admin":true,"pull":true,"push":true},"created_at":"2011-12-07T20:00:40Z"},{"description":"Caesar IV: anticipate your city","html_url":"https://github.com/jacquev6/C4Planner","full_name":"jacquev6/C4Planner","has_wiki":false,"has_issues":false,"git_url":"git://github.com/jacquev6/C4Planner.git","updated_at":"2012-02-16T21:51:01Z","forks":1,"mirror_url":null,"homepage":"http://vincent-jacques.net/C4Planner","ssh_url":"git@github.com:jacquev6/C4Planner.git","open_issues":0,"fork":false,"svn_url":"https://github.com/jacquev6/C4Planner","pushed_at":"2011-11-27T20:51:06Z","size":4716,"private":false,"url":"https://api.github.com/repos/jacquev6/C4Planner","clone_url":"https://github.com/jacquev6/C4Planner.git","owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"name":"C4Planner","has_downloads":true,"language":"Python","watchers":1,"id":2260441,"permissions":{"admin":true,"pull":true,"push":true},"created_at":"2011-08-24T08:30:55Z"},{"description":"A tool to draw Turk's Head Knots. Try it online","html_url":"https://github.com/jacquev6/DrawTurksHead","full_name":"jacquev6/DrawTurksHead","has_wiki":false,"has_issues":false,"git_url":"git://github.com/jacquev6/DrawTurksHead.git","updated_at":"2012-04-16T18:38:55Z","forks":1,"mirror_url":null,"homepage":"http://vincent-jacques.net/DrawTurksHead/","ssh_url":"git@github.com:jacquev6/DrawTurksHead.git","open_issues":0,"fork":false,"svn_url":"https://github.com/jacquev6/DrawTurksHead","pushed_at":"2012-04-16T18:38:54Z","size":3232,"private":false,"url":"https://api.github.com/repos/jacquev6/DrawTurksHead","clone_url":"https://github.com/jacquev6/DrawTurksHead.git","owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"name":"DrawTurksHead","has_downloads":false,"language":"C++","watchers":0,"id":767403,"permissions":{"admin":true,"pull":true,"push":true},"master_branch":"master","created_at":"2010-07-10T08:54:09Z"},{"description":"Draw syntax diagrams from EBNF grammars. API in C++ and Python. Try it online.","html_url":"https://github.com/jacquev6/DrawSyntax","full_name":"jacquev6/DrawSyntax","has_wiki":false,"has_issues":false,"git_url":"git://github.com/jacquev6/DrawSyntax.git","updated_at":"2011-11-27T14:00:34Z","forks":1,"mirror_url":null,"homepage":"http://vincent-jacques.net/DrawSyntax/","ssh_url":"git@github.com:jacquev6/DrawSyntax.git","open_issues":0,"fork":false,"svn_url":"https://github.com/jacquev6/DrawSyntax","pushed_at":"2011-11-27T14:00:32Z","size":1760,"private":false,"url":"https://api.github.com/repos/jacquev6/DrawSyntax","clone_url":"https://github.com/jacquev6/DrawSyntax.git","owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"name":"DrawSyntax","has_downloads":false,"language":"C++","watchers":0,"id":767392,"permissions":{"admin":true,"pull":true,"push":true},"master_branch":"master","created_at":"2010-07-10T08:39:56Z"},{"description":"A C++ interface to specify quadratic problems by C++ expressions of your variables. Try it online.","html_url":"https://github.com/jacquev6/QuadProgMm","full_name":"jacquev6/QuadProgMm","has_wiki":false,"has_issues":false,"git_url":"git://github.com/jacquev6/QuadProgMm.git","updated_at":"2012-04-16T18:39:06Z","forks":1,"mirror_url":null,"homepage":"http://vincent-jacques.net/QuadProgMm","ssh_url":"git@github.com:jacquev6/QuadProgMm.git","open_issues":0,"fork":false,"svn_url":"https://github.com/jacquev6/QuadProgMm","pushed_at":"2012-04-16T18:39:05Z","size":760,"private":false,"url":"https://api.github.com/repos/jacquev6/QuadProgMm","clone_url":"https://github.com/jacquev6/QuadProgMm.git","owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"name":"QuadProgMm","has_downloads":false,"language":"C++","watchers":0,"id":767386,"permissions":{"admin":true,"pull":true,"push":true},"master_branch":"master","created_at":"2010-07-10T08:36:57Z"},{"description":"","html_url":"https://github.com/jacquev6/Boost.HierarchicalEnum","full_name":"jacquev6/Boost.HierarchicalEnum","has_wiki":false,"has_issues":false,"git_url":"git://github.com/jacquev6/Boost.HierarchicalEnum.git","updated_at":"2012-02-20T12:43:24Z","forks":1,"mirror_url":null,"homepage":"","ssh_url":"git@github.com:jacquev6/Boost.HierarchicalEnum.git","open_issues":0,"fork":false,"svn_url":"https://github.com/jacquev6/Boost.HierarchicalEnum","pushed_at":"2011-11-27T14:00:23Z","size":112,"private":false,"url":"https://api.github.com/repos/jacquev6/Boost.HierarchicalEnum","clone_url":"https://github.com/jacquev6/Boost.HierarchicalEnum.git","owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"name":"Boost.HierarchicalEnum","has_downloads":false,"language":"C++","watchers":2,"id":767382,"permissions":{"admin":true,"pull":true,"push":true},"master_branch":"master","created_at":"2010-07-10T08:32:12Z"},{"description":"Vincent's Development Environment","html_url":"https://github.com/jacquev6/ViDE","full_name":"jacquev6/ViDE","has_wiki":false,"has_issues":false,"git_url":"git://github.com/jacquev6/ViDE.git","updated_at":"2012-04-19T16:35:46Z","forks":1,"mirror_url":null,"homepage":"","ssh_url":"git@github.com:jacquev6/ViDE.git","open_issues":0,"fork":false,"svn_url":"https://github.com/jacquev6/ViDE","pushed_at":"2012-04-19T16:35:45Z","size":1488,"private":false,"url":"https://api.github.com/repos/jacquev6/ViDE","clone_url":"https://github.com/jacquev6/ViDE.git","owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"name":"ViDE","has_downloads":false,"language":"Python","watchers":0,"id":767343,"permissions":{"admin":true,"pull":true,"push":true},"master_branch":"master","created_at":"2010-07-10T07:33:24Z"}] + diff --git a/lib/github/tests/ReplayData/NamedUser.testGetStarred.txt b/lib/github/tests/ReplayData/NamedUser.testGetStarred.txt new file mode 100644 index 0000000000..b46c4ec7d2 --- /dev/null +++ b/lib/github/tests/ReplayData/NamedUser.testGetStarred.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/users/jacquev6/starred +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '35785'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4982'), ('server', 'nginx/1.0.13'), ('last-modified', 'Fri, 07 Sep 2012 23:17:13 GMT'), ('connection', 'keep-alive'), ('etag', '"82faf8e78544d72b3f535ac5197c5d62"'), ('link', '; rel="next", ; rel="last"'), ('cache-control', 'private, s-maxage=60, max-age=60'), ('date', 'Fri, 07 Sep 2012 23:29:27 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"open_issues":4,"has_issues":false,"ssh_url":"git@github.com:git/git.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/878a0ea898da1701df8573ed64a5cc9d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","gravatar_id":"878a0ea898da1701df8573ed64a5cc9d","url":"https://api.github.com/users/git","login":"git","id":18133},"language":"C","svn_url":"https://github.com/git/git","pushed_at":"2012-09-07T21:55:44Z","forks":772,"has_downloads":true,"updated_at":"2012-09-07T22:39:33Z","full_name":"git/git","git_url":"git://github.com/git/git.git","permissions":{"push":false,"pull":true,"admin":false},"mirror_url":null,"forks_count":772,"homepage":"This is a publish-only repository and all pull requests are ignored. Please follow Documentation/SubmittingPatches procedure for any of your improvements.","clone_url":"https://github.com/git/git.git","watchers_count":2886,"size":36484,"fork":false,"html_url":"https://github.com/git/git","has_wiki":false,"name":"git","url":"https://api.github.com/repos/git/git","watchers":2886,"open_issues_count":4,"description":"Git Source Code Mirror - This is a publish-only repository and all pull requests are ignored. Please follow Documentation/SubmittingPatches procedure for any of your improvements.","private":false,"id":36502,"created_at":"2008-07-23T14:21:26Z"},{"open_issues":1,"has_issues":true,"ssh_url":"git@github.com:moriyoshi/boost.php.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/0bafbcfcfb548a4ac20406692858f68b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"0bafbcfcfb548a4ac20406692858f68b","url":"https://api.github.com/users/moriyoshi","login":"moriyoshi","id":18755},"language":"C++","svn_url":"https://github.com/moriyoshi/boost.php","pushed_at":"2009-12-15T14:07:47Z","forks":3,"has_downloads":true,"updated_at":"2012-09-05T22:29:17Z","full_name":"moriyoshi/boost.php","git_url":"git://github.com/moriyoshi/boost.php.git","permissions":{"push":false,"pull":true,"admin":false},"mirror_url":null,"forks_count":3,"homepage":"","clone_url":"https://github.com/moriyoshi/boost.php.git","watchers_count":47,"size":1331,"fork":false,"html_url":"https://github.com/moriyoshi/boost.php","has_wiki":true,"name":"boost.php","url":"https://api.github.com/repos/moriyoshi/boost.php","watchers":47,"open_issues_count":1,"description":"Create your PHP extension in C++, in a minute.","private":false,"id":38097,"created_at":"2008-07-29T03:01:07Z"},{"open_issues":44,"has_issues":true,"ssh_url":"git@github.com:capistrano/capistrano.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/885e1c523b7975c4003de162d8ee8fee?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","gravatar_id":"885e1c523b7975c4003de162d8ee8fee","url":"https://api.github.com/users/capistrano","login":"capistrano","id":58257},"language":"Ruby","svn_url":"https://github.com/capistrano/capistrano","pushed_at":"2012-09-06T17:01:03Z","forks":296,"has_downloads":false,"updated_at":"2012-09-07T16:07:26Z","full_name":"capistrano/capistrano","git_url":"git://github.com/capistrano/capistrano.git","permissions":{"push":false,"pull":true,"admin":false},"mirror_url":null,"forks_count":296,"homepage":"http://capify.org","clone_url":"https://github.com/capistrano/capistrano.git","watchers_count":2638,"size":644,"fork":true,"html_url":"https://github.com/capistrano/capistrano","has_wiki":true,"name":"capistrano","url":"https://api.github.com/repos/capistrano/capistrano","watchers":2638,"open_issues_count":44,"description":"Remote multi-server automation tool","private":false,"id":138312,"created_at":"2009-02-26T16:14:04Z"},{"open_issues":0,"has_issues":true,"ssh_url":"git@github.com:moriyoshi/boost.perl.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/0bafbcfcfb548a4ac20406692858f68b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"0bafbcfcfb548a4ac20406692858f68b","url":"https://api.github.com/users/moriyoshi","login":"moriyoshi","id":18755},"language":"C++","svn_url":"https://github.com/moriyoshi/boost.perl","pushed_at":"2010-05-28T07:23:06Z","forks":0,"has_downloads":true,"updated_at":"2011-10-03T23:45:58Z","full_name":"moriyoshi/boost.perl","git_url":"git://github.com/moriyoshi/boost.perl.git","permissions":{"push":false,"pull":true,"admin":false},"mirror_url":null,"forks_count":0,"homepage":"","clone_url":"https://github.com/moriyoshi/boost.perl.git","watchers_count":8,"size":512,"fork":false,"html_url":"https://github.com/moriyoshi/boost.perl","has_wiki":true,"name":"boost.perl","url":"https://api.github.com/repos/moriyoshi/boost.perl","watchers":8,"open_issues_count":0,"description":"Still a proof of concept...","private":false,"id":163431,"created_at":"2009-03-30T21:09:12Z"},{"open_issues":11,"has_issues":false,"ssh_url":"git@github.com:apenwarr/git-subtree.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/918b627daf7d848cd40770ed6cd15233?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"918b627daf7d848cd40770ed6cd15233","url":"https://api.github.com/users/apenwarr","login":"apenwarr","id":20592},"language":"Shell","svn_url":"https://github.com/apenwarr/git-subtree","pushed_at":"2012-07-14T19:40:25Z","forks":72,"has_downloads":true,"updated_at":"2012-09-07T14:50:20Z","full_name":"apenwarr/git-subtree","git_url":"git://github.com/apenwarr/git-subtree.git","permissions":{"push":false,"pull":true,"admin":false},"mirror_url":null,"forks_count":72,"homepage":"","clone_url":"https://github.com/apenwarr/git-subtree.git","watchers_count":648,"size":232,"fork":false,"html_url":"https://github.com/apenwarr/git-subtree","has_wiki":false,"name":"git-subtree","url":"https://api.github.com/repos/apenwarr/git-subtree","watchers":648,"open_issues_count":11,"description":"An experimental alternative to the git-submodule command. Merges and splits subtrees from your project into subprojects and back.","private":false,"id":185096,"created_at":"2009-04-25T04:10:31Z"},{"open_issues":2,"has_issues":true,"ssh_url":"git@github.com:cosmin/git-hg.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/1b5633ca7f3390376c779e5f716a3ed0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"1b5633ca7f3390376c779e5f716a3ed0","url":"https://api.github.com/users/cosmin","login":"cosmin","id":1358},"language":"Shell","svn_url":"https://github.com/cosmin/git-hg","pushed_at":"2012-08-15T18:18:04Z","forks":29,"has_downloads":true,"updated_at":"2012-09-07T07:37:40Z","full_name":"cosmin/git-hg","git_url":"git://github.com/cosmin/git-hg.git","permissions":{"push":false,"pull":true,"admin":false},"mirror_url":null,"forks_count":29,"homepage":"http://offbytwo.github.com/git-hg","clone_url":"https://github.com/cosmin/git-hg.git","watchers_count":156,"size":200,"fork":false,"html_url":"https://github.com/cosmin/git-hg","has_wiki":true,"name":"git-hg","url":"https://api.github.com/repos/cosmin/git-hg","watchers":156,"open_issues_count":2,"description":"A git-hg utility for checking out and tracking a mercurial repo.","private":false,"id":201230,"created_at":"2009-05-14T20:23:01Z"},{"open_issues":326,"has_issues":true,"ssh_url":"git@github.com:mxcl/homebrew.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/1510549f9353c9859b7b3c81872df09c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"1510549f9353c9859b7b3c81872df09c","url":"https://api.github.com/users/mxcl","login":"mxcl","id":58962},"language":"Ruby","svn_url":"https://github.com/mxcl/homebrew","pushed_at":"2012-09-07T21:19:16Z","master_branch":"master","forks":4572,"has_downloads":false,"updated_at":"2012-09-07T22:40:37Z","full_name":"mxcl/homebrew","git_url":"git://github.com/mxcl/homebrew.git","permissions":{"push":false,"pull":true,"admin":false},"mirror_url":null,"forks_count":4572,"homepage":"http://mxcl.github.com/homebrew","clone_url":"https://github.com/mxcl/homebrew.git","watchers_count":9910,"size":7160,"fork":false,"html_url":"https://github.com/mxcl/homebrew","has_wiki":true,"name":"homebrew","url":"https://api.github.com/repos/mxcl/homebrew","watchers":9910,"open_issues_count":326,"description":"The missing package manager for OS X.","private":false,"id":206084,"created_at":"2009-05-20T19:38:37Z"},{"open_issues":0,"has_issues":true,"ssh_url":"git@github.com:jamis/celtic_knot.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/992fe8c19bbbc27f2b562a9f96efc03d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"992fe8c19bbbc27f2b562a9f96efc03d","url":"https://api.github.com/users/jamis","login":"jamis","id":1627},"language":"Ruby","svn_url":"https://github.com/jamis/celtic_knot","pushed_at":"2010-11-25T02:39:53Z","forks":1,"has_downloads":true,"updated_at":"2011-10-12T04:36:53Z","full_name":"jamis/celtic_knot","git_url":"git://github.com/jamis/celtic_knot.git","permissions":{"push":false,"pull":true,"admin":false},"mirror_url":null,"forks_count":1,"homepage":"","clone_url":"https://github.com/jamis/celtic_knot.git","watchers_count":4,"size":1272,"fork":false,"html_url":"https://github.com/jamis/celtic_knot","has_wiki":true,"name":"celtic_knot","url":"https://api.github.com/repos/jamis/celtic_knot","watchers":4,"open_issues_count":0,"description":"A library for generating Celtic Knotwork designs from graphs","private":false,"id":209230,"created_at":"2009-05-24T23:23:10Z"},{"open_issues":0,"has_issues":true,"ssh_url":"git@github.com:jdavisp3/twisted-intro.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/fcc237fd34a8e504f7224df0c58cc0b3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"fcc237fd34a8e504f7224df0c58cc0b3","url":"https://api.github.com/users/jdavisp3","login":"jdavisp3","id":43582},"language":"Python","svn_url":"https://github.com/jdavisp3/twisted-intro","pushed_at":"2012-06-24T03:44:38Z","forks":14,"has_downloads":true,"updated_at":"2012-09-03T08:56:13Z","full_name":"jdavisp3/twisted-intro","git_url":"git://github.com/jdavisp3/twisted-intro.git","permissions":{"push":false,"pull":true,"admin":false},"mirror_url":null,"forks_count":14,"homepage":"http://krondo.com/blog/?page_id=1327","clone_url":"https://github.com/jdavisp3/twisted-intro.git","watchers_count":67,"size":196,"fork":false,"html_url":"https://github.com/jdavisp3/twisted-intro","has_wiki":true,"name":"twisted-intro","url":"https://api.github.com/repos/jdavisp3/twisted-intro","watchers":67,"open_issues_count":0,"description":"Source files used for an introduction to Twisted","private":false,"id":273325,"created_at":"2009-08-09T17:54:00Z"},{"open_issues":79,"has_issues":true,"ssh_url":"git@github.com:github/markup.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","gravatar_id":"61024896f291303615bcd4f7a0dcfb74","url":"https://api.github.com/users/github","login":"github","id":9919},"language":"Python","svn_url":"https://github.com/github/markup","pushed_at":"2012-08-05T18:59:47Z","forks":577,"has_downloads":false,"updated_at":"2012-09-07T19:49:25Z","full_name":"github/markup","git_url":"git://github.com/github/markup.git","permissions":{"push":false,"pull":true,"admin":false},"mirror_url":null,"forks_count":577,"homepage":"","clone_url":"https://github.com/github/markup.git","watchers_count":1246,"size":312,"fork":false,"html_url":"https://github.com/github/markup","has_wiki":false,"name":"markup","url":"https://api.github.com/repos/github/markup","watchers":1246,"open_issues_count":79,"description":"The code we use to render README.your_favorite_markup","private":false,"id":355893,"created_at":"2009-10-31T01:02:46Z"},{"open_issues":19,"has_issues":true,"ssh_url":"git@github.com:defunkt/hub.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/b8dbb1987e8e5318584865f880036796?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b8dbb1987e8e5318584865f880036796","url":"https://api.github.com/users/defunkt","login":"defunkt","id":2},"language":"Ruby","svn_url":"https://github.com/defunkt/hub","pushed_at":"2012-07-24T11:24:47Z","forks":114,"has_downloads":false,"updated_at":"2012-09-06T21:08:04Z","full_name":"defunkt/hub","git_url":"git://github.com/defunkt/hub.git","permissions":{"push":false,"pull":true,"admin":false},"mirror_url":null,"forks_count":114,"homepage":"http://defunkt.io/hub/","clone_url":"https://github.com/defunkt/hub.git","watchers_count":1449,"size":280,"fork":false,"html_url":"https://github.com/defunkt/hub","has_wiki":false,"name":"hub","url":"https://api.github.com/repos/defunkt/hub","watchers":1449,"open_issues_count":19,"description":"hub introduces git to GitHub","private":false,"id":401025,"created_at":"2009-12-05T22:15:25Z"},{"open_issues":100,"has_issues":true,"ssh_url":"git@github.com:nvie/gitflow.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/466ef7561a0b100dc5a1021959962d28?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"466ef7561a0b100dc5a1021959962d28","url":"https://api.github.com/users/nvie","login":"nvie","id":83844},"language":"Shell","svn_url":"https://github.com/nvie/gitflow","pushed_at":"2012-07-10T09:18:03Z","master_branch":"develop","forks":429,"has_downloads":true,"updated_at":"2012-09-07T21:10:39Z","full_name":"nvie/gitflow","git_url":"git://github.com/nvie/gitflow.git","permissions":{"push":false,"pull":true,"admin":false},"mirror_url":null,"forks_count":429,"homepage":"http://nvie.com/posts/a-successful-git-branching-model/","clone_url":"https://github.com/nvie/gitflow.git","watchers_count":4650,"size":4430,"fork":false,"html_url":"https://github.com/nvie/gitflow","has_wiki":true,"name":"gitflow","url":"https://api.github.com/repos/nvie/gitflow","watchers":4650,"open_issues_count":100,"description":"Git extensions to provide high-level repository operations for Vincent Driessen's branching model.","private":false,"id":481366,"created_at":"2010-01-20T23:14:12Z"},{"open_issues":9,"has_issues":true,"ssh_url":"git@github.com:lg/murder.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/f2583cecbd75c5999bf65d9eeb6a84f2?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"f2583cecbd75c5999bf65d9eeb6a84f2","url":"https://api.github.com/users/lg","login":"lg","id":181018},"language":"Python","svn_url":"https://github.com/lg/murder","pushed_at":"2011-10-18T00:40:07Z","forks":59,"has_downloads":true,"updated_at":"2012-09-05T19:50:00Z","full_name":"lg/murder","git_url":"git://github.com/lg/murder.git","permissions":{"push":false,"pull":true,"admin":false},"mirror_url":null,"forks_count":59,"homepage":"http://twitter.com","clone_url":"https://github.com/lg/murder.git","watchers_count":1286,"size":1228,"fork":false,"html_url":"https://github.com/lg/murder","has_wiki":true,"name":"murder","url":"https://api.github.com/repos/lg/murder","watchers":1286,"open_issues_count":9,"description":"Large scale server deploys using BitTorrent and the BitTornado library","private":false,"id":481811,"created_at":"2010-01-21T07:05:36Z"},{"open_issues":177,"has_issues":true,"ssh_url":"git@github.com:boto/boto.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/9062d6f913c867ce042928d6637abd05?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","gravatar_id":"9062d6f913c867ce042928d6637abd05","url":"https://api.github.com/users/boto","login":"boto","id":327752},"language":"Python","svn_url":"https://github.com/boto/boto","pushed_at":"2012-09-06T22:09:52Z","master_branch":"develop","forks":512,"has_downloads":true,"updated_at":"2012-09-07T20:38:05Z","full_name":"boto/boto","git_url":"git://github.com/boto/boto.git","permissions":{"push":false,"pull":true,"admin":false},"mirror_url":null,"forks_count":512,"homepage":"http://docs.pythonboto.org/","clone_url":"https://github.com/boto/boto.git","watchers_count":1947,"size":5723,"fork":false,"html_url":"https://github.com/boto/boto","has_wiki":true,"name":"boto","url":"https://api.github.com/repos/boto/boto","watchers":1947,"open_issues_count":177,"description":"Python interface to Amazon Web Services","private":false,"id":771016,"created_at":"2010-07-12T19:15:33Z"},{"open_issues":35,"has_issues":true,"ssh_url":"git@github.com:rtyley/agit.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/1cdc781dd667a5d4b61340591bf1bef4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"1cdc781dd667a5d4b61340591bf1bef4","url":"https://api.github.com/users/rtyley","login":"rtyley","id":52038},"language":"Java","svn_url":"https://github.com/rtyley/agit","pushed_at":"2012-08-14T14:51:40Z","forks":49,"has_downloads":true,"updated_at":"2012-09-07T14:46:30Z","full_name":"rtyley/agit","git_url":"git://github.com/rtyley/agit.git","permissions":{"push":false,"pull":true,"admin":false},"mirror_url":null,"forks_count":49,"homepage":"https://market.android.com/details?id=com.madgag.agit","clone_url":"https://github.com/rtyley/agit.git","watchers_count":236,"size":1240,"fork":false,"html_url":"https://github.com/rtyley/agit","has_wiki":true,"name":"agit","url":"https://api.github.com/repos/rtyley/agit","watchers":236,"open_issues_count":35,"description":"Agit - Git client for Android","private":false,"id":870849,"created_at":"2010-08-29T21:45:54Z"},{"open_issues":123,"has_issues":true,"ssh_url":"git@github.com:mbostock/d3.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/005a27e09fe946ebef64bf4d134efc0a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"005a27e09fe946ebef64bf4d134efc0a","url":"https://api.github.com/users/mbostock","login":"mbostock","id":230541},"language":"JavaScript","svn_url":"https://github.com/mbostock/d3","pushed_at":"2012-09-04T02:21:17Z","forks":1137,"has_downloads":true,"updated_at":"2012-09-07T21:21:07Z","full_name":"mbostock/d3","git_url":"git://github.com/mbostock/d3.git","permissions":{"push":false,"pull":true,"admin":false},"mirror_url":null,"forks_count":1137,"homepage":"http://d3js.org","clone_url":"https://github.com/mbostock/d3.git","watchers_count":8352,"size":2928,"fork":false,"html_url":"https://github.com/mbostock/d3","has_wiki":true,"name":"d3","url":"https://api.github.com/repos/mbostock/d3","watchers":8352,"open_issues_count":123,"description":"A JavaScript visualization library for HTML and SVG.","private":false,"id":943149,"created_at":"2010-09-27T17:22:42Z"},{"open_issues":19,"has_issues":true,"ssh_url":"git@github.com:libgit2/pygit2.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/1c56acccc41c591705dc92da5f6ab603?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","gravatar_id":"1c56acccc41c591705dc92da5f6ab603","url":"https://api.github.com/users/libgit2","login":"libgit2","id":394745},"language":"C","svn_url":"https://github.com/libgit2/pygit2","pushed_at":"2012-08-28T08:34:33Z","forks":60,"has_downloads":true,"updated_at":"2012-09-04T23:59:16Z","full_name":"libgit2/pygit2","git_url":"git://github.com/libgit2/pygit2.git","permissions":{"push":false,"pull":true,"admin":false},"mirror_url":null,"forks_count":60,"homepage":"","clone_url":"https://github.com/libgit2/pygit2.git","watchers_count":265,"size":200,"fork":false,"html_url":"https://github.com/libgit2/pygit2","has_wiki":false,"name":"pygit2","url":"https://api.github.com/repos/libgit2/pygit2","watchers":265,"open_issues_count":19,"description":"Python bindings for libgit2","private":false,"id":1062237,"created_at":"2010-11-08T16:27:48Z"},{"open_issues":12,"has_issues":true,"ssh_url":"git@github.com:schacon/git-pulls.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/9375a9529679f1b42b567a640d775e7d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"9375a9529679f1b42b567a640d775e7d","url":"https://api.github.com/users/schacon","login":"schacon","id":70},"language":"Ruby","svn_url":"https://github.com/schacon/git-pulls","pushed_at":"2011-10-28T07:11:56Z","forks":23,"has_downloads":true,"updated_at":"2012-08-29T19:10:30Z","full_name":"schacon/git-pulls","git_url":"git://github.com/schacon/git-pulls.git","permissions":{"push":false,"pull":true,"admin":false},"mirror_url":null,"forks_count":23,"homepage":"","clone_url":"https://github.com/schacon/git-pulls.git","watchers_count":177,"size":1004,"fork":false,"html_url":"https://github.com/schacon/git-pulls","has_wiki":true,"name":"git-pulls","url":"https://api.github.com/repos/schacon/git-pulls","watchers":177,"open_issues_count":12,"description":"command line tool to facilitate github pull requests","private":false,"id":1201343,"created_at":"2010-12-27T20:39:24Z"},{"open_issues":0,"has_issues":true,"ssh_url":"git@github.com:emesik/django_mathlatex.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/0d0c6eda804f912d230df91577e29180?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"0d0c6eda804f912d230df91577e29180","url":"https://api.github.com/users/emesik","login":"emesik","id":407107},"language":"Python","svn_url":"https://github.com/emesik/django_mathlatex","pushed_at":"2011-04-01T11:33:23Z","forks":1,"has_downloads":true,"updated_at":"2012-08-05T04:16:25Z","full_name":"emesik/django_mathlatex","git_url":"git://github.com/emesik/django_mathlatex.git","permissions":{"push":false,"pull":true,"admin":false},"mirror_url":null,"forks_count":1,"homepage":"","clone_url":"https://github.com/emesik/django_mathlatex.git","watchers_count":4,"size":448,"fork":false,"html_url":"https://github.com/emesik/django_mathlatex","has_wiki":true,"name":"django_mathlatex","url":"https://api.github.com/repos/emesik/django_mathlatex","watchers":4,"open_issues_count":0,"description":"Django template tag for rendering math formulas","private":false,"id":1447846,"created_at":"2011-03-06T22:29:04Z"},{"open_issues":17,"has_issues":true,"ssh_url":"git@github.com:aliasaria/scrumblr.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/a08f4e2d6ccccab586b502992c31e2ce?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"a08f4e2d6ccccab586b502992c31e2ce","url":"https://api.github.com/users/aliasaria","login":"aliasaria","id":213343},"language":"JavaScript","svn_url":"https://github.com/aliasaria/scrumblr","pushed_at":"2012-08-30T20:29:00Z","forks":60,"has_downloads":true,"updated_at":"2012-09-04T09:24:36Z","full_name":"aliasaria/scrumblr","git_url":"git://github.com/aliasaria/scrumblr.git","permissions":{"push":false,"pull":true,"admin":false},"mirror_url":null,"forks_count":60,"homepage":"http://scrumblr.ca","clone_url":"https://github.com/aliasaria/scrumblr.git","watchers_count":505,"size":632,"fork":false,"html_url":"https://github.com/aliasaria/scrumblr","has_wiki":true,"name":"scrumblr","url":"https://api.github.com/repos/aliasaria/scrumblr","watchers":505,"open_issues_count":17,"description":"Collaborative Online Scrum Tool Using Websockets, Node.js, jQuery, and CSS3","private":false,"id":1461917,"created_at":"2011-03-10T02:29:38Z"},{"open_issues":0,"has_issues":false,"ssh_url":"git@github.com:github/developer.github.com.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","gravatar_id":"61024896f291303615bcd4f7a0dcfb74","url":"https://api.github.com/users/github","login":"github","id":9919},"language":"Ruby","svn_url":"https://github.com/github/developer.github.com","pushed_at":"2012-09-07T20:42:32Z","forks":174,"has_downloads":true,"updated_at":"2012-09-07T20:42:32Z","full_name":"github/developer.github.com","git_url":"git://github.com/github/developer.github.com.git","permissions":{"push":false,"pull":true,"admin":false},"mirror_url":null,"forks_count":174,"homepage":"http://developer.github.com","clone_url":"https://github.com/github/developer.github.com.git","watchers_count":343,"size":412,"fork":false,"html_url":"https://github.com/github/developer.github.com","has_wiki":false,"name":"developer.github.com","url":"https://api.github.com/repos/github/developer.github.com","watchers":343,"open_issues_count":0,"description":"GitHub API documentation","private":false,"id":1666784,"created_at":"2011-04-26T19:20:56Z"},{"open_issues":1,"has_issues":true,"ssh_url":"git@github.com:ChristopherMacGown/python-github3.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/4174216c1dc0f223ce608d5a3b66a585?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"4174216c1dc0f223ce608d5a3b66a585","url":"https://api.github.com/users/ChristopherMacGown","login":"ChristopherMacGown","id":43081},"language":"Python","svn_url":"https://github.com/ChristopherMacGown/python-github3","pushed_at":"2012-09-06T20:37:01Z","forks":13,"has_downloads":true,"updated_at":"2012-09-06T20:37:19Z","full_name":"ChristopherMacGown/python-github3","git_url":"git://github.com/ChristopherMacGown/python-github3.git","permissions":{"push":false,"pull":true,"admin":false},"mirror_url":null,"forks_count":13,"homepage":"","clone_url":"https://github.com/ChristopherMacGown/python-github3.git","watchers_count":21,"size":136,"fork":false,"html_url":"https://github.com/ChristopherMacGown/python-github3","has_wiki":true,"name":"python-github3","url":"https://api.github.com/repos/ChristopherMacGown/python-github3","watchers":21,"open_issues_count":1,"description":"Github API v3 library for Python.","private":false,"id":1676748,"created_at":"2011-04-28T17:07:29Z"},{"open_issues":0,"has_issues":true,"ssh_url":"git@github.com:pjkersten/PlantUML.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/6e33170f0701d1d1d8dd57c8f95368ef?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"6e33170f0701d1d1d8dd57c8f95368ef","url":"https://api.github.com/users/pjkersten","login":"pjkersten","id":771883},"language":"PHP","svn_url":"https://github.com/pjkersten/PlantUML","pushed_at":"2012-06-20T08:00:40Z","forks":3,"has_downloads":true,"updated_at":"2012-07-25T01:45:58Z","full_name":"pjkersten/PlantUML","git_url":"git://github.com/pjkersten/PlantUML.git","permissions":{"push":false,"pull":true,"admin":false},"mirror_url":null,"forks_count":3,"homepage":"","clone_url":"https://github.com/pjkersten/PlantUML.git","watchers_count":7,"size":132,"fork":false,"html_url":"https://github.com/pjkersten/PlantUML","has_wiki":true,"name":"PlantUML","url":"https://api.github.com/repos/pjkersten/PlantUML","watchers":7,"open_issues_count":0,"description":"PlantUML plugin for MediaWiki","private":false,"id":1710505,"created_at":"2011-05-06T09:33:38Z"},{"open_issues":144,"has_issues":true,"ssh_url":"git@github.com:twitter/bootstrap.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/2f4a8254d032a8ec5e4c48d461e54fcc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","gravatar_id":"2f4a8254d032a8ec5e4c48d461e54fcc","url":"https://api.github.com/users/twitter","login":"twitter","id":50278},"language":"JavaScript","svn_url":"https://github.com/twitter/bootstrap","pushed_at":"2012-09-07T18:42:29Z","forks":8262,"has_downloads":true,"updated_at":"2012-09-07T23:17:13Z","full_name":"twitter/bootstrap","git_url":"git://github.com/twitter/bootstrap.git","permissions":{"push":false,"pull":true,"admin":false},"mirror_url":null,"forks_count":8262,"homepage":"http://twitter.github.com/bootstrap","clone_url":"https://github.com/twitter/bootstrap.git","watchers_count":37009,"size":1384,"fork":false,"html_url":"https://github.com/twitter/bootstrap","has_wiki":true,"name":"bootstrap","url":"https://api.github.com/repos/twitter/bootstrap","watchers":37009,"open_issues_count":144,"description":"HTML, CSS, and JS toolkit from Twitter","private":false,"id":2126244,"created_at":"2011-07-29T21:19:00Z"},{"open_issues":0,"has_issues":true,"ssh_url":"git@github.com:stephenmcd/drawnby.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/ce5bfd8756e2fae0e800bbea413e86b3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"ce5bfd8756e2fae0e800bbea413e86b3","url":"https://api.github.com/users/stephenmcd","login":"stephenmcd","id":116385},"language":"JavaScript","svn_url":"https://github.com/stephenmcd/drawnby","pushed_at":"2012-07-30T13:36:35Z","forks":2,"has_downloads":true,"updated_at":"2012-09-06T12:27:16Z","full_name":"stephenmcd/drawnby","git_url":"git://github.com/stephenmcd/drawnby.git","permissions":{"push":false,"pull":true,"admin":false},"mirror_url":null,"forks_count":2,"homepage":"http://drawnby.jupo.org","clone_url":"https://github.com/stephenmcd/drawnby.git","watchers_count":12,"size":384,"fork":false,"html_url":"https://github.com/stephenmcd/drawnby","has_wiki":true,"name":"drawnby","url":"https://api.github.com/repos/stephenmcd/drawnby","watchers":12,"open_issues_count":0,"description":"Drawn By is a collaborative real-time sketching app built for the 2011 Django Dash.","private":false,"id":2136154,"created_at":"2011-08-01T10:25:31Z"},{"open_issues":6,"has_issues":true,"ssh_url":"git@github.com:stephenmcd/django-socketio.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/ce5bfd8756e2fae0e800bbea413e86b3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"ce5bfd8756e2fae0e800bbea413e86b3","url":"https://api.github.com/users/stephenmcd","login":"stephenmcd","id":116385},"language":"JavaScript","svn_url":"https://github.com/stephenmcd/django-socketio","pushed_at":"2012-08-29T20:29:10Z","forks":39,"has_downloads":true,"updated_at":"2012-09-06T13:47:36Z","full_name":"stephenmcd/django-socketio","git_url":"git://github.com/stephenmcd/django-socketio.git","permissions":{"push":false,"pull":true,"admin":false},"mirror_url":null,"forks_count":39,"homepage":"","clone_url":"https://github.com/stephenmcd/django-socketio.git","watchers_count":323,"size":180,"fork":false,"html_url":"https://github.com/stephenmcd/django-socketio","has_wiki":true,"name":"django-socketio","url":"https://api.github.com/repos/stephenmcd/django-socketio","watchers":323,"open_issues_count":6,"description":"A Django app providing the features required to use websockets with Django via Socket.IO","private":false,"id":2139136,"created_at":"2011-08-01T21:18:34Z"},{"open_issues":0,"has_issues":true,"ssh_url":"git@github.com:jstasiak/django-realtime.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/f69b46619a23b64a1184bd038bfa8de5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"f69b46619a23b64a1184bd038bfa8de5","url":"https://api.github.com/users/jstasiak","login":"jstasiak","id":36209},"language":"JavaScript","svn_url":"https://github.com/jstasiak/django-realtime","pushed_at":"2012-04-21T16:22:25Z","forks":4,"has_downloads":true,"updated_at":"2012-08-21T15:09:28Z","full_name":"jstasiak/django-realtime","git_url":"git://github.com/jstasiak/django-realtime.git","permissions":{"push":false,"pull":true,"admin":false},"mirror_url":null,"forks_count":4,"homepage":"","clone_url":"https://github.com/jstasiak/django-realtime.git","watchers_count":23,"size":132,"fork":false,"html_url":"https://github.com/jstasiak/django-realtime","has_wiki":true,"name":"django-realtime","url":"https://api.github.com/repos/jstasiak/django-realtime","watchers":23,"open_issues_count":0,"description":"Use this application to get Socket.IO support in your Django project and dive into real time web.","private":false,"id":2424738,"created_at":"2011-09-20T19:13:10Z"},{"open_issues":0,"has_issues":true,"ssh_url":"git@github.com:AcmeSystems/playground.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/af55714b265c4914c8bb8db49fc06da6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","gravatar_id":"af55714b265c4914c8bb8db49fc06da6","url":"https://api.github.com/users/AcmeSystems","login":"AcmeSystems","id":783524},"language":"Python","svn_url":"https://github.com/AcmeSystems/playground","pushed_at":"2012-09-06T16:51:16Z","forks":4,"has_downloads":true,"updated_at":"2012-09-06T16:51:18Z","full_name":"AcmeSystems/playground","git_url":"git://github.com/AcmeSystems/playground.git","permissions":{"push":false,"pull":true,"admin":false},"mirror_url":null,"forks_count":4,"homepage":"http://www.acmesystems.it","clone_url":"https://github.com/AcmeSystems/playground.git","watchers_count":7,"size":212,"fork":false,"html_url":"https://github.com/AcmeSystems/playground","has_wiki":true,"name":"playground","url":"https://api.github.com/repos/AcmeSystems/playground","watchers":7,"open_issues_count":0,"description":"Small programming examples for the FOX Board G20","private":false,"id":2593052,"created_at":"2011-10-17T16:16:10Z"},{"open_issues":8,"has_issues":true,"ssh_url":"git@github.com:juuso/BozoCrack.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/d3231546d42d67974fc51956a3b627f4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"d3231546d42d67974fc51956a3b627f4","url":"https://api.github.com/users/juuso","login":"juuso","id":614446},"language":"Ruby","svn_url":"https://github.com/juuso/BozoCrack","pushed_at":"2011-11-07T14:55:19Z","forks":36,"has_downloads":true,"updated_at":"2012-09-07T10:43:48Z","full_name":"juuso/BozoCrack","git_url":"git://github.com/juuso/BozoCrack.git","permissions":{"push":false,"pull":true,"admin":false},"mirror_url":null,"forks_count":36,"homepage":"","clone_url":"https://github.com/juuso/BozoCrack.git","watchers_count":375,"size":140,"fork":false,"html_url":"https://github.com/juuso/BozoCrack","has_wiki":true,"name":"BozoCrack","url":"https://api.github.com/repos/juuso/BozoCrack","watchers":375,"open_issues_count":8,"description":"A silly & effective MD5 cracker in Ruby","private":false,"id":2726128,"created_at":"2011-11-07T13:02:08Z"},{"open_issues":0,"has_issues":true,"ssh_url":"git@github.com:BeaverSoftware/FatherBeaver.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","url":"https://api.github.com/users/BeaverSoftware","login":"BeaverSoftware","id":1424031},"language":null,"svn_url":"https://github.com/BeaverSoftware/FatherBeaver","pushed_at":null,"forks":1,"has_downloads":true,"updated_at":"2012-02-16T21:51:15Z","full_name":"BeaverSoftware/FatherBeaver","git_url":"git://github.com/BeaverSoftware/FatherBeaver.git","permissions":{"push":true,"pull":true,"admin":true},"mirror_url":null,"forks_count":1,"homepage":"","clone_url":"https://github.com/BeaverSoftware/FatherBeaver.git","watchers_count":2,"size":0,"fork":false,"html_url":"https://github.com/BeaverSoftware/FatherBeaver","has_wiki":true,"name":"FatherBeaver","url":"https://api.github.com/repos/BeaverSoftware/FatherBeaver","watchers":2,"open_issues_count":0,"description":"","private":false,"id":3400397,"created_at":"2012-02-09T19:32:21Z"}] + +https +GET +api.github.com +None +/users/jacquev6/starred?page=2 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '5925'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4981'), ('server', 'nginx/1.0.13'), ('last-modified', 'Fri, 07 Sep 2012 23:24:22 GMT'), ('connection', 'keep-alive'), ('etag', '"94c163fa14b07651e050e97613c9aea5"'), ('link', '; rel="first", ; rel="prev"'), ('cache-control', 'private, s-maxage=60, max-age=60'), ('date', 'Fri, 07 Sep 2012 23:29:28 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"open_issues":0,"has_issues":true,"ssh_url":"git@github.com:joestein/amaunet.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/c5949edcf9e35a9aeb2584b6d4a58dcf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"c5949edcf9e35a9aeb2584b6d4a58dcf","url":"https://api.github.com/users/joestein","login":"joestein","id":115151},"language":null,"svn_url":"https://github.com/joestein/amaunet","pushed_at":"2012-03-09T02:20:37Z","forks":1,"has_downloads":true,"updated_at":"2012-07-23T00:48:19Z","full_name":"joestein/amaunet","git_url":"git://github.com/joestein/amaunet.git","permissions":{"push":false,"pull":true,"admin":false},"mirror_url":null,"forks_count":1,"homepage":"http://allthingshadoop.com/2010/12/16/simple-hadoop-streaming-tutorial-using-joins-and-keys-with-python/","clone_url":"https://github.com/joestein/amaunet.git","watchers_count":6,"size":84,"fork":false,"html_url":"https://github.com/joestein/amaunet","has_wiki":true,"name":"amaunet","url":"https://api.github.com/repos/joestein/amaunet","watchers":6,"open_issues_count":0,"description":"Python Streaming Example","private":false,"id":3666534,"created_at":"2012-03-09T02:03:25Z"},{"open_issues":94,"has_issues":false,"ssh_url":"git@github.com:django/django.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/fd542381031aa84dca86628ece84fc07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","gravatar_id":"fd542381031aa84dca86628ece84fc07","url":"https://api.github.com/users/django","login":"django","id":27804},"language":"Python","svn_url":"https://github.com/django/django","pushed_at":"2012-09-07T23:24:22Z","forks":840,"has_downloads":true,"updated_at":"2012-09-07T23:24:22Z","full_name":"django/django","git_url":"git://github.com/django/django.git","permissions":{"push":false,"pull":true,"admin":false},"mirror_url":null,"forks_count":840,"homepage":"http://www.djangoproject.com/","clone_url":"https://github.com/django/django.git","watchers_count":4040,"size":10896,"fork":false,"html_url":"https://github.com/django/django","has_wiki":false,"name":"django","url":"https://api.github.com/repos/django/django","watchers":4040,"open_issues_count":94,"description":"The Web framework for perfectionists with deadlines.","private":false,"id":4164482,"created_at":"2012-04-28T02:47:18Z"},{"open_issues":0,"has_issues":false,"ssh_url":"git@github.com:jacquev6/django.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"language":"Python","svn_url":"https://github.com/jacquev6/django","pushed_at":"2012-04-28T04:05:15Z","forks":0,"has_downloads":true,"updated_at":"2012-06-09T10:37:50Z","full_name":"jacquev6/django","git_url":"git://github.com/jacquev6/django.git","permissions":{"push":true,"pull":true,"admin":true},"mirror_url":null,"forks_count":0,"homepage":"http://www.djangoproject.com/","clone_url":"https://github.com/jacquev6/django.git","watchers_count":2,"size":48476,"fork":true,"html_url":"https://github.com/jacquev6/django","has_wiki":false,"name":"django","url":"https://api.github.com/repos/jacquev6/django","watchers":2,"open_issues_count":0,"description":"The Web framework for perfectionists with deadlines. Now on GitHub.","private":false,"id":4166730,"created_at":"2012-04-28T11:06:20Z"},{"open_issues":0,"has_issues":true,"ssh_url":"git@github.com:gturri/moviePlanning.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/ba064e32f068e12bfc87d178179878a5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"ba064e32f068e12bfc87d178179878a5","url":"https://api.github.com/users/gturri","login":"gturri","id":308601},"language":"Python","svn_url":"https://github.com/gturri/moviePlanning","pushed_at":"2012-06-28T08:29:46Z","forks":1,"has_downloads":true,"updated_at":"2012-06-28T08:29:47Z","full_name":"gturri/moviePlanning","git_url":"git://github.com/gturri/moviePlanning.git","permissions":{"push":false,"pull":true,"admin":false},"mirror_url":null,"forks_count":1,"homepage":null,"clone_url":"https://github.com/gturri/moviePlanning.git","watchers_count":2,"size":340,"fork":false,"html_url":"https://github.com/gturri/moviePlanning","has_wiki":true,"name":"moviePlanning","url":"https://api.github.com/repos/gturri/moviePlanning","watchers":2,"open_issues_count":0,"description":"","private":false,"id":4461403,"created_at":"2012-05-27T11:16:53Z"},{"open_issues":2,"has_issues":true,"ssh_url":"git@github.com:facebook/folly.git","owner":{"avatar_url":"https://secure.gravatar.com/avatar/193c1a93276f729041fc875cf2a20773?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","gravatar_id":"193c1a93276f729041fc875cf2a20773","url":"https://api.github.com/users/facebook","login":"facebook","id":69631},"language":"C++","svn_url":"https://github.com/facebook/folly","pushed_at":"2012-08-26T18:14:39Z","forks":370,"has_downloads":true,"updated_at":"2012-09-07T22:17:59Z","full_name":"facebook/folly","git_url":"git://github.com/facebook/folly.git","permissions":{"push":false,"pull":true,"admin":false},"mirror_url":null,"forks_count":370,"homepage":"https://groups.google.com/forum/?fromgroups#!forum/facebook-folly","clone_url":"https://github.com/facebook/folly.git","watchers_count":2419,"size":376,"fork":false,"html_url":"https://github.com/facebook/folly","has_wiki":true,"name":"folly","url":"https://api.github.com/repos/facebook/folly","watchers":2419,"open_issues_count":2,"description":"Folly is an open-source C++ library developed and used at Facebook.","private":false,"id":4524181,"created_at":"2012-06-01T20:49:04Z"}] + diff --git a/lib/github/tests/ReplayData/NamedUser.testGetSubscriptions.txt b/lib/github/tests/ReplayData/NamedUser.testGetSubscriptions.txt new file mode 100644 index 0000000000..ad03882e47 --- /dev/null +++ b/lib/github/tests/ReplayData/NamedUser.testGetSubscriptions.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/users/jacquev6/subscriptions +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4954'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '35676'), ('server', 'nginx/1.0.13'), ('last-modified', 'Fri, 07 Sep 2012 23:16:45 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"400673f9e225530be2f6795b43862773"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 07 Sep 2012 23:49:10 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"master_branch":"master","forks":1,"has_downloads":false,"owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/jacquev6","id":327146},"description":"Vincent's Development Environment","permissions":{"pull":true,"push":true,"admin":true},"forks_count":1,"clone_url":"https://github.com/jacquev6/ViDE.git","git_url":"git://github.com/jacquev6/ViDE.git","created_at":null,"has_wiki":false,"watchers_count":0,"watchers":0,"open_issues_count":0,"size":1496,"fork":false,"open_issues":0,"has_issues":false,"updated_at":"2012-06-08T11:05:51Z","full_name":"jacquev6/ViDE","name":"ViDE","url":"https://api.github.com/repos/jacquev6/ViDE","mirror_url":null,"ssh_url":"git@github.com:jacquev6/ViDE.git","html_url":"https://github.com/jacquev6/ViDE","private":false,"id":767343,"language":"Python","homepage":"","svn_url":"https://github.com/jacquev6/ViDE","pushed_at":"2012-06-08T11:05:51Z"},{"master_branch":"master","forks":1,"has_downloads":false,"owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/jacquev6","id":327146},"description":"","permissions":{"pull":true,"push":true,"admin":true},"forks_count":1,"clone_url":"https://github.com/jacquev6/Boost.HierarchicalEnum.git","git_url":"git://github.com/jacquev6/Boost.HierarchicalEnum.git","created_at":"2012-08-07T03:23:22Z","has_wiki":false,"watchers_count":1,"watchers":1,"open_issues_count":0,"size":112,"fork":false,"open_issues":0,"has_issues":false,"updated_at":"2012-07-27T02:32:15Z","full_name":"jacquev6/Boost.HierarchicalEnum","name":"Boost.HierarchicalEnum","url":"https://api.github.com/repos/jacquev6/Boost.HierarchicalEnum","mirror_url":null,"ssh_url":"git@github.com:jacquev6/Boost.HierarchicalEnum.git","html_url":"https://github.com/jacquev6/Boost.HierarchicalEnum","private":false,"id":767382,"language":"C++","homepage":"","svn_url":"https://github.com/jacquev6/Boost.HierarchicalEnum","pushed_at":"2011-11-27T14:00:23Z"},{"master_branch":"master","forks":1,"has_downloads":false,"owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/jacquev6","id":327146},"description":"A C++ interface to specify quadratic problems by C++ expressions of your variables. Try it online.","permissions":{"pull":true,"push":true,"admin":true},"forks_count":1,"clone_url":"https://github.com/jacquev6/QuadProgMm.git","git_url":"git://github.com/jacquev6/QuadProgMm.git","created_at":null,"has_wiki":false,"watchers_count":0,"watchers":0,"open_issues_count":0,"size":760,"fork":false,"open_issues":0,"has_issues":false,"updated_at":"2012-04-16T18:39:06Z","full_name":"jacquev6/QuadProgMm","name":"QuadProgMm","url":"https://api.github.com/repos/jacquev6/QuadProgMm","mirror_url":null,"ssh_url":"git@github.com:jacquev6/QuadProgMm.git","html_url":"https://github.com/jacquev6/QuadProgMm","private":false,"id":767386,"language":"C++","homepage":"http://vincent-jacques.net/QuadProgMm","svn_url":"https://github.com/jacquev6/QuadProgMm","pushed_at":"2012-04-16T18:39:05Z"},{"master_branch":"master","forks":1,"has_downloads":false,"owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/jacquev6","id":327146},"description":"Draw syntax diagrams from EBNF grammars. API in C++ and Python. Try it online.","permissions":{"pull":true,"push":true,"admin":true},"forks_count":1,"clone_url":"https://github.com/jacquev6/DrawSyntax.git","git_url":"git://github.com/jacquev6/DrawSyntax.git","created_at":"2012-08-07T03:23:17Z","has_wiki":false,"watchers_count":0,"watchers":0,"open_issues_count":0,"size":1760,"fork":false,"open_issues":0,"has_issues":false,"updated_at":"2012-08-11T03:53:58Z","full_name":"jacquev6/DrawSyntax","name":"DrawSyntax","url":"https://api.github.com/repos/jacquev6/DrawSyntax","mirror_url":null,"ssh_url":"git@github.com:jacquev6/DrawSyntax.git","html_url":"https://github.com/jacquev6/DrawSyntax","private":false,"id":767392,"language":"C++","homepage":"http://vincent-jacques.net/DrawSyntax/","svn_url":"https://github.com/jacquev6/DrawSyntax","pushed_at":"2011-11-27T14:00:32Z"},{"master_branch":"master","forks":1,"has_downloads":false,"owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/jacquev6","id":327146},"description":"A tool to draw Turk's Head Knots. Try it online","permissions":{"pull":true,"push":true,"admin":true},"forks_count":1,"clone_url":"https://github.com/jacquev6/DrawTurksHead.git","git_url":"git://github.com/jacquev6/DrawTurksHead.git","created_at":"2012-08-07T03:23:13Z","has_wiki":false,"watchers_count":0,"watchers":0,"open_issues_count":0,"size":3232,"fork":false,"open_issues":0,"has_issues":false,"updated_at":"2012-04-16T18:38:55Z","full_name":"jacquev6/DrawTurksHead","name":"DrawTurksHead","url":"https://api.github.com/repos/jacquev6/DrawTurksHead","mirror_url":null,"ssh_url":"git@github.com:jacquev6/DrawTurksHead.git","html_url":"https://github.com/jacquev6/DrawTurksHead","private":false,"id":767403,"language":"C++","homepage":"http://vincent-jacques.net/DrawTurksHead/","svn_url":"https://github.com/jacquev6/DrawTurksHead","pushed_at":"2012-04-16T18:38:54Z"},{"forks":0,"has_downloads":false,"owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/jacquev6","id":327146},"description":"","permissions":{"pull":true,"push":true,"admin":true},"forks_count":0,"clone_url":"https://github.com/jacquev6/PrivateStuff.git","git_url":"git://github.com/jacquev6/PrivateStuff.git","created_at":null,"has_wiki":false,"watchers_count":0,"watchers":0,"open_issues_count":0,"size":1252,"fork":false,"open_issues":0,"has_issues":false,"updated_at":"2012-09-07T19:22:17Z","full_name":"jacquev6/PrivateStuff","name":"PrivateStuff","url":"https://api.github.com/repos/jacquev6/PrivateStuff","mirror_url":null,"ssh_url":"git@github.com:jacquev6/PrivateStuff.git","html_url":"https://github.com/jacquev6/PrivateStuff","private":true,"id":1592290,"language":"Python","homepage":"","svn_url":"https://github.com/jacquev6/PrivateStuff","pushed_at":"2012-09-07T19:21:59Z"},{"forks":0,"has_downloads":false,"owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/jacquev6","id":327146},"description":"","permissions":{"pull":true,"push":true,"admin":true},"forks_count":0,"clone_url":"https://github.com/jacquev6/vincent-jacques.net.git","git_url":"git://github.com/jacquev6/vincent-jacques.net.git","created_at":null,"has_wiki":false,"watchers_count":0,"watchers":0,"open_issues_count":0,"size":164,"fork":false,"open_issues":0,"has_issues":false,"updated_at":"2012-06-30T09:29:07Z","full_name":"jacquev6/vincent-jacques.net","name":"vincent-jacques.net","url":"https://api.github.com/repos/jacquev6/vincent-jacques.net","mirror_url":null,"ssh_url":"git@github.com:jacquev6/vincent-jacques.net.git","html_url":"https://github.com/jacquev6/vincent-jacques.net","private":true,"id":1986874,"language":"Python","homepage":"vincent-jacques.net","svn_url":"https://github.com/jacquev6/vincent-jacques.net","pushed_at":"2012-06-30T09:29:07Z"},{"forks":0,"has_downloads":false,"owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/jacquev6","id":327146},"description":"","permissions":{"pull":true,"push":true,"admin":true},"forks_count":0,"clone_url":"https://github.com/jacquev6/Hacking.git","git_url":"git://github.com/jacquev6/Hacking.git","created_at":"2012-08-07T03:23:13Z","has_wiki":false,"watchers_count":0,"watchers":0,"open_issues_count":0,"size":148,"fork":false,"open_issues":0,"has_issues":false,"updated_at":"2012-09-07T20:42:54Z","full_name":"jacquev6/Hacking","name":"Hacking","url":"https://api.github.com/repos/jacquev6/Hacking","mirror_url":null,"ssh_url":"git@github.com:jacquev6/Hacking.git","html_url":"https://github.com/jacquev6/Hacking","private":true,"id":1988081,"language":"Python","homepage":"","svn_url":"https://github.com/jacquev6/Hacking","pushed_at":"2012-09-07T20:42:54Z"},{"forks":1,"has_downloads":true,"owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/jacquev6","id":327146},"description":"Caesar IV: anticipate your city","permissions":{"pull":true,"push":true,"admin":true},"forks_count":1,"clone_url":"https://github.com/jacquev6/C4Planner.git","git_url":"git://github.com/jacquev6/C4Planner.git","created_at":"2012-08-07T03:23:20Z","has_wiki":false,"watchers_count":0,"watchers":0,"open_issues_count":0,"size":4716,"fork":false,"open_issues":0,"has_issues":false,"updated_at":"2012-07-27T04:29:14Z","full_name":"jacquev6/C4Planner","name":"C4Planner","url":"https://api.github.com/repos/jacquev6/C4Planner","mirror_url":null,"ssh_url":"git@github.com:jacquev6/C4Planner.git","html_url":"https://github.com/jacquev6/C4Planner","private":false,"id":2260441,"language":"Python","homepage":"http://vincent-jacques.net/C4Planner","svn_url":"https://github.com/jacquev6/C4Planner","pushed_at":"2011-11-27T20:51:06Z"},{"forks":0,"has_downloads":false,"owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/jacquev6","id":327146},"description":"","permissions":{"pull":true,"push":true,"admin":true},"forks_count":0,"clone_url":"https://github.com/jacquev6/developer.github.com.git","git_url":"git://github.com/jacquev6/developer.github.com.git","created_at":null,"has_wiki":false,"watchers_count":0,"watchers":0,"open_issues_count":0,"size":184,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-06-05T11:35:40Z","full_name":"jacquev6/developer.github.com","name":"developer.github.com","url":"https://api.github.com/repos/jacquev6/developer.github.com","mirror_url":null,"ssh_url":"git@github.com:jacquev6/developer.github.com.git","html_url":"https://github.com/jacquev6/developer.github.com","private":false,"id":3361136,"language":"Ruby","homepage":"","svn_url":"https://github.com/jacquev6/developer.github.com","pushed_at":"2012-06-05T11:35:40Z"},{"forks":16,"has_downloads":true,"owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/jacquev6","id":327146},"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":true,"admin":true},"forks_count":16,"clone_url":"https://github.com/jacquev6/PyGithub.git","git_url":"git://github.com/jacquev6/PyGithub.git","created_at":null,"has_wiki":false,"watchers_count":67,"watchers":67,"open_issues_count":13,"size":228,"fork":false,"open_issues":13,"has_issues":true,"updated_at":"2012-09-07T23:16:45Z","full_name":"jacquev6/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","mirror_url":null,"ssh_url":"git@github.com:jacquev6/PyGithub.git","html_url":"https://github.com/jacquev6/PyGithub","private":false,"id":3544490,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/jacquev6/PyGithub","pushed_at":"2012-09-07T23:16:45Z"},{"forks":0,"has_downloads":true,"owner":{"gravatar_id":"b2e096f2c016d8dc168a3a5e6281b07a","login":"abersager","avatar_url":"https://secure.gravatar.com/avatar/b2e096f2c016d8dc168a3a5e6281b07a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/abersager","id":1328351},"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":false,"admin":false},"forks_count":0,"clone_url":"https://github.com/abersager/PyGithub.git","git_url":"git://github.com/abersager/PyGithub.git","created_at":"2012-08-07T03:21:09Z","has_wiki":false,"watchers_count":1,"watchers":1,"open_issues_count":0,"size":112,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-08-06T20:21:19Z","full_name":"abersager/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/abersager/PyGithub","mirror_url":null,"ssh_url":"git@github.com:abersager/PyGithub.git","html_url":"https://github.com/abersager/PyGithub","private":false,"id":3831162,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/abersager/PyGithub","pushed_at":"2012-03-26T10:05:31Z"},{"forks":0,"has_downloads":true,"owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/jacquev6","id":327146},"description":"The Web framework for perfectionists with deadlines. Now on GitHub.","permissions":{"pull":true,"push":true,"admin":true},"forks_count":0,"clone_url":"https://github.com/jacquev6/django.git","git_url":"git://github.com/jacquev6/django.git","created_at":null,"has_wiki":false,"watchers_count":2,"watchers":2,"open_issues_count":0,"size":48476,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-06-09T10:37:50Z","full_name":"jacquev6/django","name":"django","url":"https://api.github.com/repos/jacquev6/django","mirror_url":null,"ssh_url":"git@github.com:jacquev6/django.git","html_url":"https://github.com/jacquev6/django","private":false,"id":4166730,"language":"Python","homepage":"http://www.djangoproject.com/","svn_url":"https://github.com/jacquev6/django","pushed_at":"2012-04-28T04:05:15Z"},{"forks":1,"has_downloads":true,"owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/jacquev6","id":327146},"description":"Un outil pour ceux qui aiment voir plusieurs films le même jour","permissions":{"pull":true,"push":true,"admin":true},"forks_count":1,"clone_url":"https://github.com/jacquev6/CinePlanning.git","git_url":"git://github.com/jacquev6/CinePlanning.git","created_at":"2012-08-07T03:23:19Z","has_wiki":false,"watchers_count":1,"watchers":1,"open_issues_count":5,"size":240,"fork":false,"open_issues":5,"has_issues":true,"updated_at":"2012-06-17T05:55:59Z","full_name":"jacquev6/CinePlanning","name":"CinePlanning","url":"https://api.github.com/repos/jacquev6/CinePlanning","mirror_url":null,"ssh_url":"git@github.com:jacquev6/CinePlanning.git","html_url":"https://github.com/jacquev6/CinePlanning","private":false,"id":4627544,"language":"Python","homepage":"http://vincent-jacques.net/CinePlanning","svn_url":"https://github.com/jacquev6/CinePlanning","pushed_at":"2012-06-17T05:55:58Z"},{"forks":0,"has_downloads":true,"owner":{"gravatar_id":"3aa27c0add742f542848af3b8a9e980c","login":"pmuilu","avatar_url":"https://secure.gravatar.com/avatar/3aa27c0add742f542848af3b8a9e980c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/pmuilu","id":691799},"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":false,"admin":false},"forks_count":0,"clone_url":"https://github.com/pmuilu/PyGithub.git","git_url":"git://github.com/pmuilu/PyGithub.git","created_at":"2012-08-07T03:21:41Z","has_wiki":false,"watchers_count":1,"watchers":1,"open_issues_count":0,"size":112,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-08-06T20:21:44Z","full_name":"pmuilu/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/pmuilu/PyGithub","mirror_url":null,"ssh_url":"git@github.com:pmuilu/PyGithub.git","html_url":"https://github.com/pmuilu/PyGithub","private":false,"id":4716322,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/pmuilu/PyGithub","pushed_at":"2012-06-19T16:50:37Z"},{"forks":0,"has_downloads":true,"owner":{"gravatar_id":"85203b21c562062e5641f0b8d4b98d9b","login":"herlo","avatar_url":"https://secure.gravatar.com/avatar/85203b21c562062e5641f0b8d4b98d9b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/herlo","id":89334},"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":false,"admin":false},"forks_count":0,"clone_url":"https://github.com/herlo/PyGithub.git","git_url":"git://github.com/herlo/PyGithub.git","created_at":"2012-08-07T03:21:47Z","has_wiki":false,"watchers_count":1,"watchers":1,"open_issues_count":0,"size":164,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-08-06T20:21:47Z","full_name":"herlo/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/herlo/PyGithub","mirror_url":null,"ssh_url":"git@github.com:herlo/PyGithub.git","html_url":"https://github.com/herlo/PyGithub","private":false,"id":4720987,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/herlo/PyGithub","pushed_at":"2012-06-13T10:57:26Z"},{"forks":0,"has_downloads":true,"owner":{"gravatar_id":"3ceac58506711008b9e93ad31fcb0f45","login":"roverdotcom","avatar_url":"https://secure.gravatar.com/avatar/3ceac58506711008b9e93ad31fcb0f45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","url":"https://api.github.com/users/roverdotcom","id":1463288},"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":false,"admin":false},"forks_count":0,"clone_url":"https://github.com/roverdotcom/PyGithub.git","git_url":"git://github.com/roverdotcom/PyGithub.git","created_at":"2012-08-07T03:21:50Z","has_wiki":false,"watchers_count":1,"watchers":1,"open_issues_count":0,"size":116,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-08-06T20:21:51Z","full_name":"roverdotcom/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/roverdotcom/PyGithub","mirror_url":null,"ssh_url":"git@github.com:roverdotcom/PyGithub.git","html_url":"https://github.com/roverdotcom/PyGithub","private":false,"id":4785693,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/roverdotcom/PyGithub","pushed_at":"2012-06-25T18:44:19Z"},{"forks":0,"has_downloads":true,"owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/jacquev6","id":327146},"description":"HTML5 browsable IP map inspired by http://xkcd.com/195/","permissions":{"pull":true,"push":true,"admin":true},"forks_count":0,"clone_url":"https://github.com/jacquev6/IpMap.git","git_url":"git://github.com/jacquev6/IpMap.git","created_at":null,"has_wiki":false,"watchers_count":0,"watchers":0,"open_issues_count":2,"size":136,"fork":false,"open_issues":2,"has_issues":true,"updated_at":"2012-08-06T20:40:59Z","full_name":"jacquev6/IpMap","name":"IpMap","url":"https://api.github.com/repos/jacquev6/IpMap","mirror_url":null,"ssh_url":"git@github.com:jacquev6/IpMap.git","html_url":"https://github.com/jacquev6/IpMap","private":true,"id":4835930,"language":"JavaScript","homepage":"http://vincent-jacques.net/IpMap","svn_url":"https://github.com/jacquev6/IpMap","pushed_at":"2012-06-30T09:28:28Z"},{"forks":0,"has_downloads":true,"owner":{"gravatar_id":"433a7fa3917a38691aa9914b61444875","login":"thouis","avatar_url":"https://secure.gravatar.com/avatar/433a7fa3917a38691aa9914b61444875?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/thouis","id":473043},"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":false,"admin":false},"forks_count":0,"clone_url":"https://github.com/thouis/PyGithub.git","git_url":"git://github.com/thouis/PyGithub.git","created_at":"2012-08-07T03:21:53Z","has_wiki":false,"watchers_count":1,"watchers":1,"open_issues_count":0,"size":112,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-08-06T20:21:54Z","full_name":"thouis/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/thouis/PyGithub","mirror_url":null,"ssh_url":"git@github.com:thouis/PyGithub.git","html_url":"https://github.com/thouis/PyGithub","private":false,"id":4957672,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/thouis/PyGithub","pushed_at":"2012-07-09T12:42:19Z"},{"forks":0,"has_downloads":true,"owner":{"gravatar_id":"13a30f9924fa2bd918cbb8d06dd8b55a","login":"malexw","avatar_url":"https://secure.gravatar.com/avatar/13a30f9924fa2bd918cbb8d06dd8b55a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/malexw","id":577322},"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":false,"admin":false},"forks_count":0,"clone_url":"https://github.com/malexw/PyGithub.git","git_url":"git://github.com/malexw/PyGithub.git","created_at":"2012-08-07T03:21:56Z","has_wiki":false,"watchers_count":1,"watchers":1,"open_issues_count":0,"size":112,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-08-06T20:21:57Z","full_name":"malexw/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/malexw/PyGithub","mirror_url":null,"ssh_url":"git@github.com:malexw/PyGithub.git","html_url":"https://github.com/malexw/PyGithub","private":false,"id":4992915,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/malexw/PyGithub","pushed_at":"2012-07-11T18:11:24Z"},{"forks":0,"has_downloads":true,"owner":{"gravatar_id":"37a932b3abe212892173784736ed6b12","login":"engie","avatar_url":"https://secure.gravatar.com/avatar/37a932b3abe212892173784736ed6b12?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/engie","id":1247},"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":false,"admin":false},"forks_count":0,"clone_url":"https://github.com/engie/PyGithub.git","git_url":"git://github.com/engie/PyGithub.git","created_at":"2012-08-07T03:21:59Z","has_wiki":false,"watchers_count":1,"watchers":1,"open_issues_count":0,"size":136,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-08-06T20:22:00Z","full_name":"engie/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/engie/PyGithub","mirror_url":null,"ssh_url":"git@github.com:engie/PyGithub.git","html_url":"https://github.com/engie/PyGithub","private":false,"id":5153069,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/engie/PyGithub","pushed_at":"2012-07-23T16:42:58Z"},{"forks":0,"has_downloads":true,"owner":{"gravatar_id":"ffcbd195c843b902fcdaa9986a2a0116","login":"oangeor","avatar_url":"https://secure.gravatar.com/avatar/ffcbd195c843b902fcdaa9986a2a0116?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/oangeor","id":1707945},"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":false,"admin":false},"forks_count":0,"clone_url":"https://github.com/oangeor/PyGithub.git","git_url":"git://github.com/oangeor/PyGithub.git","created_at":"2012-08-07T03:22:03Z","has_wiki":false,"watchers_count":1,"watchers":1,"open_issues_count":0,"size":1292,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-08-06T20:22:04Z","full_name":"oangeor/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/oangeor/PyGithub","mirror_url":null,"ssh_url":"git@github.com:oangeor/PyGithub.git","html_url":"https://github.com/oangeor/PyGithub","private":false,"id":5190054,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/oangeor/PyGithub","pushed_at":"2012-07-24T16:19:13Z"},{"forks":0,"has_downloads":true,"owner":{"gravatar_id":"a62c07aeefe3d9cc2ba18861f7eeef7d","login":"alejo8591","avatar_url":"https://secure.gravatar.com/avatar/a62c07aeefe3d9cc2ba18861f7eeef7d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/alejo8591","id":1151850},"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":false,"admin":false},"forks_count":0,"clone_url":"https://github.com/alejo8591/PyGithub.git","git_url":"git://github.com/alejo8591/PyGithub.git","created_at":"2012-08-07T03:22:07Z","has_wiki":false,"watchers_count":1,"watchers":1,"open_issues_count":0,"size":216,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-08-04T07:01:31Z","full_name":"alejo8591/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/alejo8591/PyGithub","mirror_url":null,"ssh_url":"git@github.com:alejo8591/PyGithub.git","html_url":"https://github.com/alejo8591/PyGithub","private":false,"id":5293768,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/alejo8591/PyGithub","pushed_at":"2012-08-04T06:06:06Z"},{"forks":0,"has_downloads":true,"owner":{"gravatar_id":"92a24b96be9d9ce5e608751cc0c95823","login":"jagster02","avatar_url":"https://secure.gravatar.com/avatar/92a24b96be9d9ce5e608751cc0c95823?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/jagster02","id":1383412},"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":false,"admin":false},"forks_count":0,"clone_url":"https://github.com/jagster02/PyGithub.git","git_url":"git://github.com/jagster02/PyGithub.git","created_at":"2012-08-09T13:55:23Z","has_wiki":false,"watchers_count":0,"watchers":0,"open_issues_count":0,"size":216,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-08-07T23:29:19Z","full_name":"jagster02/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/jagster02/PyGithub","mirror_url":null,"ssh_url":"git@github.com:jagster02/PyGithub.git","html_url":"https://github.com/jagster02/PyGithub","private":false,"id":5334906,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/jagster02/PyGithub","pushed_at":"2012-08-04T06:06:06Z"},{"forks":0,"has_downloads":true,"owner":{"gravatar_id":"01f9109a647ef1dac0198da94d5dfc35","login":"cs2ctest","avatar_url":"https://secure.gravatar.com/avatar/01f9109a647ef1dac0198da94d5dfc35?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/cs2ctest","id":2108297},"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":false,"admin":false},"forks_count":0,"clone_url":"https://github.com/cs2ctest/PyGithub.git","git_url":"git://github.com/cs2ctest/PyGithub.git","created_at":"2012-08-09T19:56:03Z","has_wiki":false,"watchers_count":0,"watchers":0,"open_issues_count":0,"size":216,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-08-09T09:00:55Z","full_name":"cs2ctest/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/cs2ctest/PyGithub","mirror_url":null,"ssh_url":"git@github.com:cs2ctest/PyGithub.git","html_url":"https://github.com/cs2ctest/PyGithub","private":false,"id":5353371,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/cs2ctest/PyGithub","pushed_at":"2012-08-04T06:06:06Z"},{"forks":0,"has_downloads":true,"owner":{"gravatar_id":"83fdd59f80118ac8e56fd6f732239190","login":"feiying","avatar_url":"https://secure.gravatar.com/avatar/83fdd59f80118ac8e56fd6f732239190?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/feiying","id":1784180},"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":false,"admin":false},"forks_count":0,"clone_url":"https://github.com/feiying/PyGithub.git","git_url":"git://github.com/feiying/PyGithub.git","created_at":"2012-08-10T18:57:02Z","has_wiki":false,"watchers_count":0,"watchers":0,"open_issues_count":0,"size":216,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-08-10T04:51:27Z","full_name":"feiying/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/feiying/PyGithub","mirror_url":null,"ssh_url":"git@github.com:feiying/PyGithub.git","html_url":"https://github.com/feiying/PyGithub","private":false,"id":5365056,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/feiying/PyGithub","pushed_at":"2012-08-04T06:06:06Z"},{"forks":0,"has_downloads":true,"owner":{"gravatar_id":"13df3b204a5708ed557a07628ea00660","login":"tdcarrol","avatar_url":"https://secure.gravatar.com/avatar/13df3b204a5708ed557a07628ea00660?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/tdcarrol","id":435947},"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":false,"admin":false},"forks_count":0,"clone_url":"https://github.com/tdcarrol/PyGithub.git","git_url":"git://github.com/tdcarrol/PyGithub.git","created_at":"2012-08-22T05:17:05Z","has_wiki":false,"watchers_count":0,"watchers":0,"open_issues_count":0,"size":216,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-08-21T15:14:27Z","full_name":"tdcarrol/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/tdcarrol/PyGithub","mirror_url":null,"ssh_url":"git@github.com:tdcarrol/PyGithub.git","html_url":"https://github.com/tdcarrol/PyGithub","private":false,"id":5496795,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/tdcarrol/PyGithub","pushed_at":"2012-08-04T06:06:06Z"},{"forks":0,"has_downloads":true,"owner":{"gravatar_id":"ae8a2af3de601885a14bb71240e5d1a6","login":"xobb1t","avatar_url":"https://secure.gravatar.com/avatar/ae8a2af3de601885a14bb71240e5d1a6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/xobb1t","id":344095},"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":false,"admin":false},"forks_count":0,"clone_url":"https://github.com/xobb1t/PyGithub.git","git_url":"git://github.com/xobb1t/PyGithub.git","created_at":"2012-09-03T15:31:32Z","has_wiki":false,"watchers_count":0,"watchers":0,"open_issues_count":0,"size":108,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-08-25T19:40:53Z","full_name":"xobb1t/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/xobb1t/PyGithub","mirror_url":null,"ssh_url":"git@github.com:xobb1t/PyGithub.git","html_url":"https://github.com/xobb1t/PyGithub","private":false,"id":5554026,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/xobb1t/PyGithub","pushed_at":"2012-08-25T19:40:53Z"},{"forks":0,"has_downloads":true,"owner":{"gravatar_id":"ad620f78a113948d4ded151e3025a3b3","login":"braincorp","avatar_url":"https://secure.gravatar.com/avatar/ad620f78a113948d4ded151e3025a3b3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","url":"https://api.github.com/users/braincorp","id":2085477},"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":false,"admin":false},"forks_count":0,"clone_url":"https://github.com/braincorp/PyGithub.git","git_url":"git://github.com/braincorp/PyGithub.git","created_at":"2012-09-03T15:31:30Z","has_wiki":false,"watchers_count":0,"watchers":0,"open_issues_count":0,"size":240,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-08-30T06:54:52Z","full_name":"braincorp/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/braincorp/PyGithub","mirror_url":null,"ssh_url":"git@github.com:braincorp/PyGithub.git","html_url":"https://github.com/braincorp/PyGithub","private":false,"id":5611539,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/braincorp/PyGithub","pushed_at":"2012-08-23T07:38:20Z"},{"forks":0,"has_downloads":true,"owner":{"gravatar_id":"8707d63a44f6cc04e58a655f3df3105c","login":"gregwjacobs","avatar_url":"https://secure.gravatar.com/avatar/8707d63a44f6cc04e58a655f3df3105c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/gregwjacobs","id":1749292},"description":"Python library implementing the full Github API v3","permissions":{"pull":true,"push":false,"admin":false},"forks_count":0,"clone_url":"https://github.com/gregwjacobs/PyGithub.git","git_url":"git://github.com/gregwjacobs/PyGithub.git","created_at":"2012-09-03T15:31:27Z","has_wiki":false,"watchers_count":0,"watchers":0,"open_issues_count":0,"size":240,"fork":true,"open_issues":0,"has_issues":false,"updated_at":"2012-08-31T13:53:17Z","full_name":"gregwjacobs/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/gregwjacobs/PyGithub","mirror_url":null,"ssh_url":"git@github.com:gregwjacobs/PyGithub.git","html_url":"https://github.com/gregwjacobs/PyGithub","private":false,"id":5629305,"language":"Python","homepage":"http://vincent-jacques.net/PyGithub","svn_url":"https://github.com/gregwjacobs/PyGithub","pushed_at":"2012-08-23T07:38:20Z"}] + diff --git a/lib/github/tests/ReplayData/NamedUser.testGetWatched.txt b/lib/github/tests/ReplayData/NamedUser.testGetWatched.txt new file mode 100644 index 0000000000..02c8165486 --- /dev/null +++ b/lib/github/tests/ReplayData/NamedUser.testGetWatched.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/users/jacquev6/watched +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4987'), ('content-length', '33830'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last"'), ('etag', '"dc4214d5110d198c04e9d1f182a77211"'), ('date', 'Sat, 26 May 2012 10:36:29 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"description":"Git Source Code Mirror - This is a publish-only repository and all pull requests are ignored. Please follow Documentation/SubmittingPatches procedure for any of your improvements.","full_name":"git/git","has_wiki":false,"has_issues":false,"updated_at":"2012-05-26T09:50:39Z","forks":544,"mirror_url":null,"homepage":"This is a publish-only repository and all pull requests are ignored. Please follow Documentation/SubmittingPatches procedure for any of your improvements.","ssh_url":"git@github.com:git/git.git","open_issues":5,"fork":false,"svn_url":"https://github.com/git/git","pushed_at":"2012-05-25T20:50:10Z","size":33788,"html_url":"https://github.com/git/git","private":false,"url":"https://api.github.com/repos/git/git","clone_url":"https://github.com/git/git.git","owner":{"gravatar_id":"878a0ea898da1701df8573ed64a5cc9d","avatar_url":"https://secure.gravatar.com/avatar/878a0ea898da1701df8573ed64a5cc9d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","url":"https://api.github.com/users/git","login":"git","id":18133},"name":"git","has_downloads":true,"language":"C","watchers":2218,"git_url":"git://github.com/git/git.git","id":36502,"permissions":{"admin":false,"pull":true,"push":false},"created_at":"2008-07-23T14:21:26Z"},{"description":"Create your PHP extension in C++, in a minute.","full_name":"moriyoshi/boost.php","has_wiki":true,"has_issues":true,"updated_at":"2012-05-24T13:39:17Z","forks":4,"mirror_url":null,"homepage":"","ssh_url":"git@github.com:moriyoshi/boost.php.git","open_issues":1,"fork":false,"svn_url":"https://github.com/moriyoshi/boost.php","pushed_at":"2009-12-15T14:07:47Z","size":1331,"html_url":"https://github.com/moriyoshi/boost.php","private":false,"url":"https://api.github.com/repos/moriyoshi/boost.php","clone_url":"https://github.com/moriyoshi/boost.php.git","owner":{"gravatar_id":"0bafbcfcfb548a4ac20406692858f68b","avatar_url":"https://secure.gravatar.com/avatar/0bafbcfcfb548a4ac20406692858f68b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/moriyoshi","login":"moriyoshi","id":18755},"name":"boost.php","has_downloads":true,"language":"C++","watchers":47,"git_url":"git://github.com/moriyoshi/boost.php.git","id":38097,"permissions":{"admin":false,"pull":true,"push":false},"created_at":"2008-07-29T03:01:07Z"},{"description":"Remote multi-server automation tool","full_name":"capistrano/capistrano","has_wiki":true,"has_issues":true,"updated_at":"2012-05-26T10:18:16Z","forks":241,"mirror_url":null,"homepage":"http://capify.org","ssh_url":"git@github.com:capistrano/capistrano.git","open_issues":34,"fork":true,"svn_url":"https://github.com/capistrano/capistrano","pushed_at":"2012-05-10T15:17:56Z","size":236,"html_url":"https://github.com/capistrano/capistrano","private":false,"url":"https://api.github.com/repos/capistrano/capistrano","clone_url":"https://github.com/capistrano/capistrano.git","owner":{"gravatar_id":"885e1c523b7975c4003de162d8ee8fee","avatar_url":"https://secure.gravatar.com/avatar/885e1c523b7975c4003de162d8ee8fee?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","url":"https://api.github.com/users/capistrano","login":"capistrano","id":58257},"name":"capistrano","has_downloads":false,"language":"Ruby","watchers":2272,"git_url":"git://github.com/capistrano/capistrano.git","id":138312,"permissions":{"admin":false,"pull":true,"push":false},"created_at":"2009-02-26T16:14:04Z"},{"description":"Still a proof of concept...","full_name":"moriyoshi/boost.perl","has_wiki":true,"has_issues":true,"updated_at":"2011-10-03T23:45:58Z","forks":0,"mirror_url":null,"homepage":"","ssh_url":"git@github.com:moriyoshi/boost.perl.git","open_issues":0,"fork":false,"svn_url":"https://github.com/moriyoshi/boost.perl","pushed_at":"2010-05-28T07:23:06Z","size":512,"html_url":"https://github.com/moriyoshi/boost.perl","private":false,"url":"https://api.github.com/repos/moriyoshi/boost.perl","clone_url":"https://github.com/moriyoshi/boost.perl.git","owner":{"gravatar_id":"0bafbcfcfb548a4ac20406692858f68b","avatar_url":"https://secure.gravatar.com/avatar/0bafbcfcfb548a4ac20406692858f68b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/moriyoshi","login":"moriyoshi","id":18755},"name":"boost.perl","has_downloads":true,"language":"C++","watchers":8,"git_url":"git://github.com/moriyoshi/boost.perl.git","id":163431,"permissions":{"admin":false,"pull":true,"push":false},"created_at":"2009-03-30T21:09:12Z"},{"description":"An experimental alternative to the git-submodule command. Merges and splits subtrees from your project into subprojects and back.","full_name":"apenwarr/git-subtree","has_wiki":false,"has_issues":false,"updated_at":"2012-05-25T23:20:17Z","forks":68,"mirror_url":null,"homepage":"","ssh_url":"git@github.com:apenwarr/git-subtree.git","open_issues":11,"fork":false,"svn_url":"https://github.com/apenwarr/git-subtree","pushed_at":"2012-05-01T21:43:17Z","size":176,"html_url":"https://github.com/apenwarr/git-subtree","private":false,"url":"https://api.github.com/repos/apenwarr/git-subtree","clone_url":"https://github.com/apenwarr/git-subtree.git","owner":{"gravatar_id":"918b627daf7d848cd40770ed6cd15233","avatar_url":"https://secure.gravatar.com/avatar/918b627daf7d848cd40770ed6cd15233?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/apenwarr","login":"apenwarr","id":20592},"name":"git-subtree","has_downloads":true,"language":"Shell","watchers":604,"git_url":"git://github.com/apenwarr/git-subtree.git","id":185096,"permissions":{"admin":false,"pull":true,"push":false},"created_at":"2009-04-25T04:10:31Z"},{"description":"A git-hg utility for checking out and tracking a mercurial repo.","full_name":"cosmin/git-hg","has_wiki":true,"has_issues":true,"updated_at":"2012-05-25T18:28:12Z","forks":26,"mirror_url":null,"homepage":"http://offbytwo.github.com/git-hg","ssh_url":"git@github.com:cosmin/git-hg.git","open_issues":0,"fork":false,"svn_url":"https://github.com/cosmin/git-hg","pushed_at":"2012-04-15T18:55:55Z","size":224,"html_url":"https://github.com/cosmin/git-hg","private":false,"url":"https://api.github.com/repos/cosmin/git-hg","clone_url":"https://github.com/cosmin/git-hg.git","owner":{"gravatar_id":"a8d35490b4016275e5bc3cc6cce8f878","avatar_url":"https://secure.gravatar.com/avatar/a8d35490b4016275e5bc3cc6cce8f878?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/cosmin","login":"cosmin","id":1358},"name":"git-hg","has_downloads":true,"language":"Shell","watchers":152,"git_url":"git://github.com/cosmin/git-hg.git","id":201230,"permissions":{"admin":false,"pull":true,"push":false},"created_at":"2009-05-14T20:23:01Z"},{"description":"The missing package manager for OS X.","full_name":"mxcl/homebrew","has_wiki":true,"has_issues":true,"updated_at":"2012-05-26T09:05:57Z","forks":3990,"mirror_url":null,"homepage":"http://mxcl.github.com/homebrew","ssh_url":"git@github.com:mxcl/homebrew.git","open_issues":471,"fork":false,"svn_url":"https://github.com/mxcl/homebrew","pushed_at":"2012-05-26T04:25:41Z","size":4540,"html_url":"https://github.com/mxcl/homebrew","private":false,"url":"https://api.github.com/repos/mxcl/homebrew","clone_url":"https://github.com/mxcl/homebrew.git","owner":{"gravatar_id":"1510549f9353c9859b7b3c81872df09c","avatar_url":"https://secure.gravatar.com/avatar/1510549f9353c9859b7b3c81872df09c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/mxcl","login":"mxcl","id":58962},"name":"homebrew","has_downloads":false,"language":"Ruby","watchers":8726,"git_url":"git://github.com/mxcl/homebrew.git","id":206084,"permissions":{"admin":false,"pull":true,"push":false},"master_branch":"master","created_at":"2009-05-20T19:38:37Z"},{"description":"A library for generating Celtic Knotwork designs from graphs","full_name":"jamis/celtic_knot","has_wiki":true,"has_issues":true,"updated_at":"2011-10-12T04:36:53Z","forks":1,"mirror_url":null,"homepage":"","ssh_url":"git@github.com:jamis/celtic_knot.git","open_issues":0,"fork":false,"svn_url":"https://github.com/jamis/celtic_knot","pushed_at":"2010-11-25T02:39:53Z","size":1272,"html_url":"https://github.com/jamis/celtic_knot","private":false,"url":"https://api.github.com/repos/jamis/celtic_knot","clone_url":"https://github.com/jamis/celtic_knot.git","owner":{"gravatar_id":"992fe8c19bbbc27f2b562a9f96efc03d","avatar_url":"https://secure.gravatar.com/avatar/992fe8c19bbbc27f2b562a9f96efc03d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jamis","login":"jamis","id":1627},"name":"celtic_knot","has_downloads":true,"language":"Ruby","watchers":4,"git_url":"git://github.com/jamis/celtic_knot.git","id":209230,"permissions":{"admin":false,"pull":true,"push":false},"created_at":"2009-05-24T23:23:10Z"},{"description":"Source files used for an introduction to Twisted","full_name":"jdavisp3/twisted-intro","has_wiki":true,"has_issues":true,"updated_at":"2012-05-16T01:52:49Z","forks":11,"mirror_url":null,"homepage":"http://krondo.com/blog/?page_id=1327","ssh_url":"git@github.com:jdavisp3/twisted-intro.git","open_issues":0,"fork":false,"svn_url":"https://github.com/jdavisp3/twisted-intro","pushed_at":"2011-10-28T11:27:34Z","size":188,"html_url":"https://github.com/jdavisp3/twisted-intro","private":false,"url":"https://api.github.com/repos/jdavisp3/twisted-intro","clone_url":"https://github.com/jdavisp3/twisted-intro.git","owner":{"gravatar_id":"fcc237fd34a8e504f7224df0c58cc0b3","avatar_url":"https://secure.gravatar.com/avatar/fcc237fd34a8e504f7224df0c58cc0b3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jdavisp3","login":"jdavisp3","id":43582},"name":"twisted-intro","has_downloads":true,"language":"Python","watchers":56,"git_url":"git://github.com/jdavisp3/twisted-intro.git","id":273325,"permissions":{"admin":false,"pull":true,"push":false},"created_at":"2009-08-09T17:54:00Z"},{"description":"The code we use to render README.your_favorite_markup","full_name":"github/markup","has_wiki":false,"has_issues":true,"updated_at":"2012-05-26T09:25:29Z","forks":258,"mirror_url":null,"homepage":"","ssh_url":"git@github.com:github/markup.git","open_issues":84,"fork":false,"svn_url":"https://github.com/github/markup","pushed_at":"2012-04-05T21:13:31Z","size":356,"html_url":"https://github.com/github/markup","private":false,"url":"https://api.github.com/repos/github/markup","clone_url":"https://github.com/github/markup.git","owner":{"gravatar_id":"61024896f291303615bcd4f7a0dcfb74","avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","url":"https://api.github.com/users/github","login":"github","id":9919},"name":"markup","has_downloads":false,"language":"Ruby","watchers":832,"git_url":"git://github.com/github/markup.git","id":355893,"permissions":{"admin":false,"pull":true,"push":false},"created_at":"2009-10-31T01:02:46Z"},{"description":"hub introduces git to GitHub","full_name":"defunkt/hub","has_wiki":false,"has_issues":true,"updated_at":"2012-05-25T17:47:33Z","forks":91,"mirror_url":null,"homepage":"http://defunkt.io/hub/","ssh_url":"git@github.com:defunkt/hub.git","open_issues":13,"fork":false,"svn_url":"https://github.com/defunkt/hub","pushed_at":"2012-05-24T19:21:34Z","size":240,"html_url":"https://github.com/defunkt/hub","private":false,"url":"https://api.github.com/repos/defunkt/hub","clone_url":"https://github.com/defunkt/hub.git","owner":{"gravatar_id":"b8dbb1987e8e5318584865f880036796","avatar_url":"https://secure.gravatar.com/avatar/b8dbb1987e8e5318584865f880036796?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/defunkt","login":"defunkt","id":2},"name":"hub","has_downloads":false,"language":"Ruby","watchers":1183,"git_url":"git://github.com/defunkt/hub.git","id":401025,"permissions":{"admin":false,"pull":true,"push":false},"created_at":"2009-12-05T22:15:25Z"},{"description":"Git extensions to provide high-level repository operations for Vincent Driessen's branching model.","full_name":"nvie/gitflow","has_wiki":true,"has_issues":true,"updated_at":"2012-05-26T08:35:20Z","forks":329,"mirror_url":null,"homepage":"http://nvie.com/posts/a-successful-git-branching-model/","ssh_url":"git@github.com:nvie/gitflow.git","open_issues":92,"fork":false,"svn_url":"https://github.com/nvie/gitflow","pushed_at":"2012-02-14T13:11:04Z","size":4602,"html_url":"https://github.com/nvie/gitflow","private":false,"url":"https://api.github.com/repos/nvie/gitflow","clone_url":"https://github.com/nvie/gitflow.git","owner":{"gravatar_id":"c5a7f21b46df698f3db31c37ed0cf55a","avatar_url":"https://secure.gravatar.com/avatar/c5a7f21b46df698f3db31c37ed0cf55a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/nvie","login":"nvie","id":83844},"name":"gitflow","has_downloads":true,"language":"Shell","watchers":3973,"git_url":"git://github.com/nvie/gitflow.git","id":481366,"permissions":{"admin":false,"pull":true,"push":false},"master_branch":"develop","created_at":"2010-01-20T23:14:12Z"},{"description":"Large scale server deploys using BitTorrent and the BitTornado library","full_name":"lg/murder","has_wiki":true,"has_issues":true,"updated_at":"2012-05-26T08:40:06Z","forks":53,"mirror_url":null,"homepage":"http://twitter.com","ssh_url":"git@github.com:lg/murder.git","open_issues":8,"fork":false,"svn_url":"https://github.com/lg/murder","pushed_at":"2011-10-18T00:40:07Z","size":1228,"html_url":"https://github.com/lg/murder","private":false,"url":"https://api.github.com/repos/lg/murder","clone_url":"https://github.com/lg/murder.git","owner":{"gravatar_id":"f2583cecbd75c5999bf65d9eeb6a84f2","avatar_url":"https://secure.gravatar.com/avatar/f2583cecbd75c5999bf65d9eeb6a84f2?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/lg","login":"lg","id":181018},"name":"murder","has_downloads":true,"language":"Python","watchers":1229,"git_url":"git://github.com/lg/murder.git","id":481811,"permissions":{"admin":false,"pull":true,"push":false},"created_at":"2010-01-21T07:05:36Z"},{"description":"Python interface to Amazon Web Services","full_name":"boto/boto","has_wiki":true,"has_issues":true,"updated_at":"2012-05-26T09:26:37Z","forks":400,"mirror_url":null,"homepage":"http://docs.pythonboto.org/","ssh_url":"git@github.com:boto/boto.git","open_issues":144,"fork":false,"svn_url":"https://github.com/boto/boto","pushed_at":"2012-05-20T07:40:27Z","size":4183,"html_url":"https://github.com/boto/boto","private":false,"url":"https://api.github.com/repos/boto/boto","clone_url":"https://github.com/boto/boto.git","owner":{"gravatar_id":"9062d6f913c867ce042928d6637abd05","avatar_url":"https://secure.gravatar.com/avatar/9062d6f913c867ce042928d6637abd05?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","url":"https://api.github.com/users/boto","login":"boto","id":327752},"name":"boto","has_downloads":true,"language":"Python","watchers":1554,"git_url":"git://github.com/boto/boto.git","id":771016,"permissions":{"admin":false,"pull":true,"push":false},"master_branch":"develop","created_at":"2010-07-12T19:15:33Z"},{"description":"Agit - Git client for Android","full_name":"rtyley/agit","has_wiki":true,"has_issues":true,"updated_at":"2012-05-25T09:15:01Z","forks":41,"mirror_url":null,"homepage":"https://market.android.com/details?id=com.madgag.agit","ssh_url":"git@github.com:rtyley/agit.git","open_issues":34,"fork":false,"svn_url":"https://github.com/rtyley/agit","pushed_at":"2012-05-24T18:12:28Z","size":1200,"html_url":"https://github.com/rtyley/agit","private":false,"url":"https://api.github.com/repos/rtyley/agit","clone_url":"https://github.com/rtyley/agit.git","owner":{"gravatar_id":"1cdc781dd667a5d4b61340591bf1bef4","avatar_url":"https://secure.gravatar.com/avatar/1cdc781dd667a5d4b61340591bf1bef4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/rtyley","login":"rtyley","id":52038},"name":"agit","has_downloads":true,"language":"Java","watchers":207,"git_url":"git://github.com/rtyley/agit.git","id":870849,"permissions":{"admin":false,"pull":true,"push":false},"created_at":"2010-08-29T21:45:54Z"},{"description":"A JavaScript visualization library for HTML and SVG.","full_name":"mbostock/d3","has_wiki":true,"has_issues":true,"updated_at":"2012-05-26T08:34:46Z","forks":696,"mirror_url":null,"homepage":"http://d3js.org","ssh_url":"git@github.com:mbostock/d3.git","open_issues":111,"fork":false,"svn_url":"https://github.com/mbostock/d3","pushed_at":"2012-05-17T19:11:22Z","size":3268,"html_url":"https://github.com/mbostock/d3","private":false,"url":"https://api.github.com/repos/mbostock/d3","clone_url":"https://github.com/mbostock/d3.git","owner":{"gravatar_id":"005a27e09fe946ebef64bf4d134efc0a","avatar_url":"https://secure.gravatar.com/avatar/005a27e09fe946ebef64bf4d134efc0a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/mbostock","login":"mbostock","id":230541},"name":"d3","has_downloads":true,"language":"JavaScript","watchers":6028,"git_url":"git://github.com/mbostock/d3.git","id":943149,"permissions":{"admin":false,"pull":true,"push":false},"created_at":"2010-09-27T17:22:42Z"},{"description":"Python bindings for libgit2","full_name":"libgit2/pygit2","has_wiki":false,"has_issues":true,"updated_at":"2012-05-26T01:50:51Z","forks":43,"mirror_url":null,"homepage":"","ssh_url":"git@github.com:libgit2/pygit2.git","open_issues":10,"fork":false,"svn_url":"https://github.com/libgit2/pygit2","pushed_at":"2012-05-25T17:06:19Z","size":180,"html_url":"https://github.com/libgit2/pygit2","private":false,"url":"https://api.github.com/repos/libgit2/pygit2","clone_url":"https://github.com/libgit2/pygit2.git","owner":{"gravatar_id":"1c56acccc41c591705dc92da5f6ab603","avatar_url":"https://secure.gravatar.com/avatar/1c56acccc41c591705dc92da5f6ab603?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","url":"https://api.github.com/users/libgit2","login":"libgit2","id":394745},"name":"pygit2","has_downloads":true,"language":"C","watchers":208,"git_url":"git://github.com/libgit2/pygit2.git","id":1062237,"permissions":{"admin":false,"pull":true,"push":false},"created_at":"2010-11-08T16:27:48Z"},{"description":"command line tool to facilitate github pull requests","full_name":"schacon/git-pulls","has_wiki":true,"has_issues":true,"updated_at":"2012-05-25T19:44:05Z","forks":21,"mirror_url":null,"homepage":"","ssh_url":"git@github.com:schacon/git-pulls.git","open_issues":11,"fork":false,"svn_url":"https://github.com/schacon/git-pulls","pushed_at":"2011-10-28T07:11:56Z","size":1004,"html_url":"https://github.com/schacon/git-pulls","private":false,"url":"https://api.github.com/repos/schacon/git-pulls","clone_url":"https://github.com/schacon/git-pulls.git","owner":{"gravatar_id":"9375a9529679f1b42b567a640d775e7d","avatar_url":"https://secure.gravatar.com/avatar/9375a9529679f1b42b567a640d775e7d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/schacon","login":"schacon","id":70},"name":"git-pulls","has_downloads":true,"language":"Ruby","watchers":172,"git_url":"git://github.com/schacon/git-pulls.git","id":1201343,"permissions":{"admin":false,"pull":true,"push":false},"created_at":"2010-12-27T20:39:24Z"},{"description":"Django template tag for rendering math formulas","full_name":"emesik/django_mathlatex","has_wiki":true,"has_issues":true,"updated_at":"2011-11-03T17:46:24Z","forks":1,"mirror_url":null,"homepage":"","ssh_url":"git@github.com:emesik/django_mathlatex.git","open_issues":0,"fork":false,"svn_url":"https://github.com/emesik/django_mathlatex","pushed_at":"2011-04-01T11:33:23Z","size":448,"html_url":"https://github.com/emesik/django_mathlatex","private":false,"url":"https://api.github.com/repos/emesik/django_mathlatex","clone_url":"https://github.com/emesik/django_mathlatex.git","owner":{"gravatar_id":"0d0c6eda804f912d230df91577e29180","avatar_url":"https://secure.gravatar.com/avatar/0d0c6eda804f912d230df91577e29180?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/emesik","login":"emesik","id":407107},"name":"django_mathlatex","has_downloads":true,"language":"Python","watchers":3,"git_url":"git://github.com/emesik/django_mathlatex.git","id":1447846,"permissions":{"admin":false,"pull":true,"push":false},"created_at":"2011-03-06T22:29:04Z"},{"description":"Collaborative Online Scrum Tool Using Websockets, Node.js, jQuery, and CSS3","full_name":"aliasaria/scrumblr","has_wiki":true,"has_issues":true,"updated_at":"2012-05-25T17:36:00Z","forks":52,"mirror_url":null,"homepage":"http://scrumblr.ca","ssh_url":"git@github.com:aliasaria/scrumblr.git","open_issues":14,"fork":false,"svn_url":"https://github.com/aliasaria/scrumblr","pushed_at":"2012-02-08T00:38:52Z","size":132,"html_url":"https://github.com/aliasaria/scrumblr","private":false,"url":"https://api.github.com/repos/aliasaria/scrumblr","clone_url":"https://github.com/aliasaria/scrumblr.git","owner":{"gravatar_id":"a08f4e2d6ccccab586b502992c31e2ce","avatar_url":"https://secure.gravatar.com/avatar/a08f4e2d6ccccab586b502992c31e2ce?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/aliasaria","login":"aliasaria","id":213343},"name":"scrumblr","has_downloads":true,"language":"JavaScript","watchers":467,"git_url":"git://github.com/aliasaria/scrumblr.git","id":1461917,"permissions":{"admin":false,"pull":true,"push":false},"created_at":"2011-03-10T02:29:38Z"},{"description":"GitHub API documentation","full_name":"github/developer.github.com","has_wiki":false,"has_issues":false,"updated_at":"2012-05-25T19:27:37Z","forks":121,"mirror_url":null,"homepage":"http://developer.github.com","ssh_url":"git@github.com:github/developer.github.com.git","open_issues":0,"fork":false,"svn_url":"https://github.com/github/developer.github.com","pushed_at":"2012-05-25T18:02:37Z","size":200,"html_url":"https://github.com/github/developer.github.com","private":false,"url":"https://api.github.com/repos/github/developer.github.com","clone_url":"https://github.com/github/developer.github.com.git","owner":{"gravatar_id":"61024896f291303615bcd4f7a0dcfb74","avatar_url":"https://secure.gravatar.com/avatar/61024896f291303615bcd4f7a0dcfb74?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","url":"https://api.github.com/users/github","login":"github","id":9919},"name":"developer.github.com","has_downloads":true,"language":"Ruby","watchers":255,"git_url":"git://github.com/github/developer.github.com.git","id":1666784,"permissions":{"admin":false,"pull":true,"push":false},"created_at":"2011-04-26T19:20:56Z"},{"description":"Github API v3 library for Python.","full_name":"ChristopherMacGown/python-github3","has_wiki":true,"has_issues":true,"updated_at":"2012-03-08T13:38:12Z","forks":11,"mirror_url":null,"homepage":"","ssh_url":"git@github.com:ChristopherMacGown/python-github3.git","open_issues":1,"fork":false,"svn_url":"https://github.com/ChristopherMacGown/python-github3","pushed_at":"2011-11-22T18:10:52Z","size":236,"html_url":"https://github.com/ChristopherMacGown/python-github3","private":false,"url":"https://api.github.com/repos/ChristopherMacGown/python-github3","clone_url":"https://github.com/ChristopherMacGown/python-github3.git","owner":{"gravatar_id":"4174216c1dc0f223ce608d5a3b66a585","avatar_url":"https://secure.gravatar.com/avatar/4174216c1dc0f223ce608d5a3b66a585?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/ChristopherMacGown","login":"ChristopherMacGown","id":43081},"name":"python-github3","has_downloads":true,"language":"Python","watchers":20,"git_url":"git://github.com/ChristopherMacGown/python-github3.git","id":1676748,"permissions":{"admin":false,"pull":true,"push":false},"created_at":"2011-04-28T17:07:29Z"},{"description":"PlantUML plugin for MediaWiki","full_name":"pjkersten/PlantUML","has_wiki":true,"has_issues":true,"updated_at":"2012-02-06T15:26:40Z","forks":2,"mirror_url":null,"homepage":"","ssh_url":"git@github.com:pjkersten/PlantUML.git","open_issues":0,"fork":false,"svn_url":"https://github.com/pjkersten/PlantUML","pushed_at":"2012-02-02T09:38:42Z","size":124,"html_url":"https://github.com/pjkersten/PlantUML","private":false,"url":"https://api.github.com/repos/pjkersten/PlantUML","clone_url":"https://github.com/pjkersten/PlantUML.git","owner":{"gravatar_id":"6e33170f0701d1d1d8dd57c8f95368ef","avatar_url":"https://secure.gravatar.com/avatar/6e33170f0701d1d1d8dd57c8f95368ef?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/pjkersten","login":"pjkersten","id":771883},"name":"PlantUML","has_downloads":true,"language":"PHP","watchers":5,"git_url":"git://github.com/pjkersten/PlantUML.git","id":1710505,"permissions":{"admin":false,"pull":true,"push":false},"created_at":"2011-05-06T09:33:38Z"},{"description":"HTML, CSS, and JS toolkit from Twitter","full_name":"twitter/bootstrap","has_wiki":true,"has_issues":true,"updated_at":"2012-05-26T10:36:02Z","forks":5807,"mirror_url":null,"homepage":"http://twitter.github.com/bootstrap","ssh_url":"git@github.com:twitter/bootstrap.git","open_issues":225,"fork":false,"svn_url":"https://github.com/twitter/bootstrap","pushed_at":"2012-05-25T16:19:13Z","size":1176,"html_url":"https://github.com/twitter/bootstrap","private":false,"url":"https://api.github.com/repos/twitter/bootstrap","clone_url":"https://github.com/twitter/bootstrap.git","owner":{"gravatar_id":"74e977ae0a10f06057a119eef30c6660","avatar_url":"https://secure.gravatar.com/avatar/74e977ae0a10f06057a119eef30c6660?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","url":"https://api.github.com/users/twitter","login":"twitter","id":50278},"name":"bootstrap","has_downloads":true,"language":"JavaScript","watchers":29560,"git_url":"git://github.com/twitter/bootstrap.git","id":2126244,"permissions":{"admin":false,"pull":true,"push":false},"created_at":"2011-07-29T21:19:00Z"},{"description":"Drawn By is a collaborative real-time sketching app built for the 2011 Django Dash.","full_name":"stephenmcd/drawnby","has_wiki":true,"has_issues":true,"updated_at":"2012-04-30T11:48:56Z","forks":2,"mirror_url":null,"homepage":"http://drawnby.jupo.org","ssh_url":"git@github.com:stephenmcd/drawnby.git","open_issues":0,"fork":false,"svn_url":"https://github.com/stephenmcd/drawnby","pushed_at":"2011-08-01T10:26:00Z","size":672,"html_url":"https://github.com/stephenmcd/drawnby","private":false,"url":"https://api.github.com/repos/stephenmcd/drawnby","clone_url":"https://github.com/stephenmcd/drawnby.git","owner":{"gravatar_id":"ce5bfd8756e2fae0e800bbea413e86b3","avatar_url":"https://secure.gravatar.com/avatar/ce5bfd8756e2fae0e800bbea413e86b3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/stephenmcd","login":"stephenmcd","id":116385},"name":"drawnby","has_downloads":true,"language":"JavaScript","watchers":9,"git_url":"git://github.com/stephenmcd/drawnby.git","id":2136154,"permissions":{"admin":false,"pull":true,"push":false},"created_at":"2011-08-01T10:25:31Z"},{"description":"A Django app providing the features required to use websockets with Django via Socket.IO","full_name":"stephenmcd/django-socketio","has_wiki":true,"has_issues":true,"updated_at":"2012-05-25T18:54:30Z","forks":28,"mirror_url":null,"homepage":"","ssh_url":"git@github.com:stephenmcd/django-socketio.git","open_issues":6,"fork":false,"svn_url":"https://github.com/stephenmcd/django-socketio","pushed_at":"2012-04-20T00:24:31Z","size":160,"html_url":"https://github.com/stephenmcd/django-socketio","private":false,"url":"https://api.github.com/repos/stephenmcd/django-socketio","clone_url":"https://github.com/stephenmcd/django-socketio.git","owner":{"gravatar_id":"ce5bfd8756e2fae0e800bbea413e86b3","avatar_url":"https://secure.gravatar.com/avatar/ce5bfd8756e2fae0e800bbea413e86b3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/stephenmcd","login":"stephenmcd","id":116385},"name":"django-socketio","has_downloads":true,"language":"JavaScript","watchers":262,"git_url":"git://github.com/stephenmcd/django-socketio.git","id":2139136,"permissions":{"admin":false,"pull":true,"push":false},"created_at":"2011-08-01T21:18:34Z"},{"description":"Use this application to get Socket.IO support in your Django project and dive into real time web.","full_name":"jstasiak/django-realtime","has_wiki":true,"has_issues":true,"updated_at":"2012-05-08T07:18:20Z","forks":2,"mirror_url":null,"homepage":"","ssh_url":"git@github.com:jstasiak/django-realtime.git","open_issues":0,"fork":false,"svn_url":"https://github.com/jstasiak/django-realtime","pushed_at":"2012-04-21T16:22:25Z","size":132,"html_url":"https://github.com/jstasiak/django-realtime","private":false,"url":"https://api.github.com/repos/jstasiak/django-realtime","clone_url":"https://github.com/jstasiak/django-realtime.git","owner":{"gravatar_id":"93cdbd3d2a76da1adf727a6bc9fec1ed","avatar_url":"https://secure.gravatar.com/avatar/93cdbd3d2a76da1adf727a6bc9fec1ed?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jstasiak","login":"jstasiak","id":36209},"name":"django-realtime","has_downloads":true,"language":"JavaScript","watchers":15,"git_url":"git://github.com/jstasiak/django-realtime.git","id":2424738,"permissions":{"admin":false,"pull":true,"push":false},"created_at":"2011-09-20T19:13:10Z"},{"description":"Small programming examples for the FOX Board G20","full_name":"AcmeSystems/playground","has_wiki":true,"has_issues":true,"updated_at":"2012-05-21T16:12:27Z","forks":3,"mirror_url":null,"homepage":"http://www.acmesystems.it","ssh_url":"git@github.com:AcmeSystems/playground.git","open_issues":0,"fork":false,"svn_url":"https://github.com/AcmeSystems/playground","pushed_at":"2012-05-21T16:12:27Z","size":148,"html_url":"https://github.com/AcmeSystems/playground","private":false,"url":"https://api.github.com/repos/AcmeSystems/playground","clone_url":"https://github.com/AcmeSystems/playground.git","owner":{"gravatar_id":"af55714b265c4914c8bb8db49fc06da6","avatar_url":"https://secure.gravatar.com/avatar/af55714b265c4914c8bb8db49fc06da6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","url":"https://api.github.com/users/AcmeSystems","login":"AcmeSystems","id":783524},"name":"playground","has_downloads":true,"language":"Python","watchers":6,"git_url":"git://github.com/AcmeSystems/playground.git","id":2593052,"permissions":{"admin":false,"pull":true,"push":false},"created_at":"2011-10-17T16:16:10Z"},{"description":"A silly & effective MD5 cracker in Ruby","full_name":"juuso/BozoCrack","has_wiki":true,"has_issues":true,"updated_at":"2012-05-21T19:49:13Z","forks":39,"mirror_url":null,"homepage":"","ssh_url":"git@github.com:juuso/BozoCrack.git","open_issues":8,"fork":false,"svn_url":"https://github.com/juuso/BozoCrack","pushed_at":"2011-11-07T14:55:19Z","size":140,"html_url":"https://github.com/juuso/BozoCrack","private":false,"url":"https://api.github.com/repos/juuso/BozoCrack","clone_url":"https://github.com/juuso/BozoCrack.git","owner":{"gravatar_id":"d3231546d42d67974fc51956a3b627f4","avatar_url":"https://secure.gravatar.com/avatar/d3231546d42d67974fc51956a3b627f4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/juuso","login":"juuso","id":614446},"name":"BozoCrack","has_downloads":true,"language":"Ruby","watchers":376,"git_url":"git://github.com/juuso/BozoCrack.git","id":2726128,"permissions":{"admin":false,"pull":true,"push":false},"created_at":"2011-11-07T13:02:08Z"},{"description":"","full_name":"BeaverSoftware/FatherBeaver","has_wiki":true,"has_issues":true,"updated_at":"2012-02-16T21:51:15Z","forks":1,"mirror_url":null,"homepage":"","ssh_url":"git@github.com:BeaverSoftware/FatherBeaver.git","open_issues":0,"fork":false,"svn_url":"https://github.com/BeaverSoftware/FatherBeaver","pushed_at":null,"size":0,"html_url":"https://github.com/BeaverSoftware/FatherBeaver","private":false,"url":"https://api.github.com/repos/BeaverSoftware/FatherBeaver","clone_url":"https://github.com/BeaverSoftware/FatherBeaver.git","owner":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","url":"https://api.github.com/users/BeaverSoftware","login":"BeaverSoftware","id":1424031},"name":"FatherBeaver","has_downloads":true,"language":null,"watchers":2,"git_url":"git://github.com/BeaverSoftware/FatherBeaver.git","id":3400397,"permissions":{"admin":true,"pull":true,"push":true},"created_at":"2012-02-09T19:32:21Z"}] + +https +GET +api.github.com +None +/users/jacquev6/watched?page=2 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4986'), ('content-length', '4493'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="first", ; rel="prev"'), ('etag', '"5894e9073dc54de74c439e23fc738fe7"'), ('date', 'Sat, 26 May 2012 10:36:30 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"clone_url":"https://github.com/abersager/PyGithub.git","has_downloads":true,"watchers":2,"updated_at":"2012-03-28T10:37:22Z","permissions":{"pull":true,"admin":false,"push":false},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/abersager/PyGithub","has_wiki":false,"has_issues":false,"fork":true,"forks":0,"size":112,"private":false,"open_issues":0,"svn_url":"https://github.com/abersager/PyGithub","owner":{"url":"https://api.github.com/users/abersager","avatar_url":"https://secure.gravatar.com/avatar/b2e096f2c016d8dc168a3a5e6281b07a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b2e096f2c016d8dc168a3a5e6281b07a","login":"abersager","id":1328351},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:abersager/PyGithub.git","git_url":"git://github.com/abersager/PyGithub.git","pushed_at":"2012-03-26T10:05:31Z","created_at":"2012-03-26T09:12:45Z","id":3831162,"mirror_url":null,"html_url":"https://github.com/abersager/PyGithub","full_name":"abersager/PyGithub"},{"clone_url":"https://github.com/django/django.git","has_downloads":true,"watchers":2391,"updated_at":"2012-05-26T10:30:33Z","permissions":{"pull":true,"admin":false,"push":false},"homepage":"http://www.djangoproject.com/","url":"https://api.github.com/repos/django/django","has_wiki":false,"has_issues":false,"fork":false,"forks":263,"size":8408,"private":false,"open_issues":37,"svn_url":"https://github.com/django/django","owner":{"url":"https://api.github.com/users/django","avatar_url":"https://secure.gravatar.com/avatar/fd542381031aa84dca86628ece84fc07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"fd542381031aa84dca86628ece84fc07","login":"django","id":27804},"name":"django","language":"Python","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","ssh_url":"git@github.com:django/django.git","git_url":"git://github.com/django/django.git","pushed_at":"2012-05-26T09:54:24Z","created_at":"2012-04-28T02:47:18Z","id":4164482,"mirror_url":null,"html_url":"https://github.com/django/django","full_name":"django/django"},{"clone_url":"https://github.com/jacquev6/django.git","has_downloads":true,"watchers":1,"updated_at":"2012-04-28T11:06:20Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://www.djangoproject.com/","url":"https://api.github.com/repos/jacquev6/django","has_wiki":false,"has_issues":false,"fork":true,"forks":0,"size":48476,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/django","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"django","language":"Python","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","ssh_url":"git@github.com:jacquev6/django.git","git_url":"git://github.com/jacquev6/django.git","pushed_at":"2012-04-28T04:05:15Z","created_at":"2012-04-28T11:06:20Z","id":4166730,"mirror_url":null,"html_url":"https://github.com/jacquev6/django","full_name":"jacquev6/django"},{"clone_url":"https://github.com/jacquev6/TestPyGithub.git","has_downloads":false,"watchers":1,"updated_at":"2012-05-26T09:55:27Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://foobar.com","url":"https://api.github.com/repos/jacquev6/TestPyGithub","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":0,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/TestPyGithub","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"TestPyGithub","language":null,"description":"Repo created by PyGithub","ssh_url":"git@github.com:jacquev6/TestPyGithub.git","git_url":"git://github.com/jacquev6/TestPyGithub.git","pushed_at":"2012-05-26T09:55:27Z","created_at":"2012-05-26T09:55:27Z","id":4454027,"mirror_url":null,"html_url":"https://github.com/jacquev6/TestPyGithub","full_name":"jacquev6/TestPyGithub"}] + diff --git a/lib/github/tests/ReplayData/NamedUser.testHasInFollowing.txt b/lib/github/tests/ReplayData/NamedUser.testHasInFollowing.txt new file mode 100644 index 0000000000..08c61a84ee --- /dev/null +++ b/lib/github/tests/ReplayData/NamedUser.testHasInFollowing.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/users/nvie +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4996'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '1218'), ('server', 'GitHub.com'), ('last-modified', 'Wed, 21 Aug 2013 16:26:40 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"8e2b307f8fb4186bfb512febd7215fc8"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 21 Aug 2013 17:20:44 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1377108637')] +{"login":"nvie","id":83844,"avatar_url":"https://2.gravatar.com/avatar/466ef7561a0b100dc5a1021959962d28?d=https%3A%2F%2Fidenticons.github.com%2Fe6d0513ce49cc06cb956251623cb8fd9.png","gravatar_id":"466ef7561a0b100dc5a1021959962d28","url":"https://api.github.com/users/nvie","html_url":"https://github.com/nvie","followers_url":"https://api.github.com/users/nvie/followers","following_url":"https://api.github.com/users/nvie/following{/other_user}","gists_url":"https://api.github.com/users/nvie/gists{/gist_id}","starred_url":"https://api.github.com/users/nvie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nvie/subscriptions","organizations_url":"https://api.github.com/users/nvie/orgs","repos_url":"https://api.github.com/users/nvie/repos","events_url":"https://api.github.com/users/nvie/events{/privacy}","received_events_url":"https://api.github.com/users/nvie/received_events","type":"User","name":"Vincent Driessen","company":"3rd Cloud","blog":"http://nvie.com","location":"Netherlands","email":"vincent@3rdcloud.com","hireable":true,"bio":null,"public_repos":86,"followers":530,"following":45,"created_at":"2009-05-12T21:19:38Z","updated_at":"2013-08-21T16:26:40Z","public_gists":38} + +https +GET +api.github.com +None +/users/jacquev6/following/nvie +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4995'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('access-control-allow-credentials', 'true'), ('date', 'Wed, 21 Aug 2013 17:20:48 GMT'), ('access-control-allow-origin', '*'), ('x-ratelimit-reset', '1377108637')] + + diff --git a/lib/github/tests/ReplayData/Organization.setUp.txt b/lib/github/tests/ReplayData/Organization.setUp.txt new file mode 100644 index 0000000000..3a3e1f518a --- /dev/null +++ b/lib/github/tests/ReplayData/Organization.setUp.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/orgs/BeaverSoftware +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4997'), ('content-length', '716'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"bd349122929faf5f9be3e53d9ad41d08"'), ('date', 'Fri, 11 May 2012 09:07:56 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"Organization","url":"https://api.github.com/orgs/BeaverSoftware","billing_email":"BeaverSoftware@vincent-jacques.net","disk_usage":112,"plan":{"private_repos":0,"space":307200,"name":"free"},"html_url":"https://github.com/BeaverSoftware","blog":null,"login":"BeaverSoftware","public_gists":0,"email":null,"avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","total_private_repos":0,"private_gists":0,"collaborators":0,"created_at":"2012-02-09T19:20:12Z","company":null,"location":"Paris, France","followers":0,"following":0,"name":null,"owned_private_repos":0,"id":1424031,"public_repos":2} + diff --git a/lib/github/tests/ReplayData/Organization.testCreateFork.txt b/lib/github/tests/ReplayData/Organization.testCreateFork.txt new file mode 100644 index 0000000000..f73994eae1 --- /dev/null +++ b/lib/github/tests/ReplayData/Organization.testCreateFork.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/users/jacquev6 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4967'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"2adb260b00bbbb05d4db0423e8a284af"'), ('date', 'Sun, 27 May 2012 05:23:16 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"public_repos":11,"type":"User","hireable":false,"disk_usage":17016,"blog":"http://vincent-jacques.net","bio":"","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","total_private_repos":5,"plan":{"private_repos":5,"collaborators":1,"name":"micro","space":614400},"owned_private_repos":5,"company":"Criteo","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","collaborators":0,"public_gists":3,"email":"vincent@vincent-jacques.net","followers":13,"name":"Vincent Jacques","private_gists":5,"created_at":"2010-07-09T06:10:06Z","location":"Paris, France","id":327146,"following":24,"html_url":"https://github.com/jacquev6"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4966'), ('content-length', '1129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"b5c0c85b417ca8a66f4f3f3398e75532"'), ('date', 'Sun, 27 May 2012 05:23:17 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"clone_url":"https://github.com/jacquev6/PyGithub.git","mirror_url":null,"has_downloads":true,"watchers":14,"updated_at":"2012-05-26T20:54:15Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","has_wiki":false,"has_issues":true,"fork":false,"forks":2,"size":348,"private":false,"open_issues":15,"svn_url":"https://github.com/jacquev6/PyGithub","git_url":"git://github.com/jacquev6/PyGithub.git","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-26T20:54:13Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"html_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub"} + +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/forks?org=BeaverSoftware +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +202 +[('status', '202 Accepted'), ('x-ratelimit-remaining', '4965'), ('content-length', '3681'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"e4abc3ca2f8a9ccbe868ead57057a0e8"'), ('date', 'Sun, 27 May 2012 05:23:18 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"parent":{"clone_url":"https://github.com/jacquev6/PyGithub.git","has_downloads":true,"watchers":15,"updated_at":"2012-05-27T05:23:18Z","homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","mirror_url":null,"has_wiki":false,"has_issues":true,"fork":false,"forks":3,"git_url":"git://github.com/jacquev6/PyGithub.git","size":348,"private":false,"open_issues":15,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-26T20:54:13Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"html_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub"},"organization":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031},"clone_url":"https://github.com/BeaverSoftware/PyGithub.git","has_downloads":true,"watchers":1,"updated_at":"2012-05-27T05:23:18Z","source":{"clone_url":"https://github.com/jacquev6/PyGithub.git","has_downloads":true,"watchers":15,"updated_at":"2012-05-27T05:23:18Z","homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","mirror_url":null,"has_wiki":false,"has_issues":true,"fork":false,"forks":3,"git_url":"git://github.com/jacquev6/PyGithub.git","size":348,"private":false,"open_issues":15,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-26T20:54:13Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"html_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub"},"permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/BeaverSoftware/PyGithub","mirror_url":null,"has_wiki":false,"has_issues":false,"fork":true,"forks":0,"git_url":"git://github.com/BeaverSoftware/PyGithub.git","size":348,"private":false,"open_issues":0,"svn_url":"https://github.com/BeaverSoftware/PyGithub","owner":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:BeaverSoftware/PyGithub.git","pushed_at":"2012-05-26T20:54:13Z","created_at":"2012-05-27T05:23:17Z","id":4460027,"html_url":"https://github.com/BeaverSoftware/PyGithub","full_name":"BeaverSoftware/PyGithub"} + diff --git a/lib/github/tests/ReplayData/Organization.testCreateRepoWithAllArguments.txt b/lib/github/tests/ReplayData/Organization.testCreateRepoWithAllArguments.txt new file mode 100644 index 0000000000..ff2d1d4bcd --- /dev/null +++ b/lib/github/tests/ReplayData/Organization.testCreateRepoWithAllArguments.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/teams/141496 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4994'), ('x-ratelimit-limit', '5000'), ('content-length', '128'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('etag', '"b93241eaf4384574f38b352b25595e28"'), ('date', 'Fri, 01 Jun 2012 19:35:59 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"repos_count":1,"permission":"push","url":"https://api.github.com/teams/141496","name":"Members","id":141496,"members_count":1} + +https +POST +api.github.com +None +/orgs/BeaverSoftware/repos +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"has_wiki": false, "name": "TestPyGithub2", "has_downloads": false, "private": false, "team_id": 141496, "has_issues": false, "homepage": "http://foobar.com", "description": "Repo created by PyGithub"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4969'), ('content-length', '1501'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"feb513e01eaf8e89967068fe8ed44cc7"'), ('date', 'Sun, 27 May 2012 05:20:43 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/repos/BeaverSoftware/TestPyGithub2')] +{"organization":{"url":"https://api.github.com/users/BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"BeaverSoftware","id":1424031},"clone_url":"https://github.com/BeaverSoftware/TestPyGithub2.git","has_downloads":false,"watchers":1,"updated_at":"2012-05-27T05:20:42Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://foobar.com","url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub2","mirror_url":null,"has_wiki":false,"has_issues":false,"fork":false,"forks":1,"size":0,"private":false,"open_issues":0,"svn_url":"https://github.com/BeaverSoftware/TestPyGithub2","owner":{"url":"https://api.github.com/users/BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"BeaverSoftware","id":1424031},"name":"TestPyGithub2","language":null,"description":"Repo created by PyGithub","ssh_url":"git@github.com:BeaverSoftware/TestPyGithub2.git","pushed_at":"2012-05-27T05:20:42Z","created_at":"2012-05-27T05:20:42Z","id":4460019,"git_url":"git://github.com/BeaverSoftware/TestPyGithub2.git","html_url":"https://github.com/BeaverSoftware/TestPyGithub2","full_name":"BeaverSoftware/TestPyGithub2"} + diff --git a/lib/github/tests/ReplayData/Organization.testCreateRepoWithMinimalArguments.txt b/lib/github/tests/ReplayData/Organization.testCreateRepoWithMinimalArguments.txt new file mode 100644 index 0000000000..ba021a628c --- /dev/null +++ b/lib/github/tests/ReplayData/Organization.testCreateRepoWithMinimalArguments.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/orgs/BeaverSoftware/repos +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"name": "TestPyGithub"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4971'), ('content-length', '1453'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"074f73773c425ba61e6a7738dc89b6ed"'), ('date', 'Sun, 27 May 2012 05:20:24 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/repos/BeaverSoftware/TestPyGithub')] +{"organization":{"url":"https://api.github.com/users/BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"BeaverSoftware","id":1424031},"clone_url":"https://github.com/BeaverSoftware/TestPyGithub.git","has_downloads":true,"watchers":1,"updated_at":"2012-05-27T05:20:24Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":null,"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","mirror_url":null,"has_wiki":true,"has_issues":true,"fork":false,"forks":1,"size":0,"private":false,"open_issues":0,"svn_url":"https://github.com/BeaverSoftware/TestPyGithub","owner":{"url":"https://api.github.com/users/BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"BeaverSoftware","id":1424031},"name":"TestPyGithub","language":null,"description":null,"ssh_url":"git@github.com:BeaverSoftware/TestPyGithub.git","pushed_at":"2012-05-27T05:20:24Z","created_at":"2012-05-27T05:20:24Z","id":4460018,"git_url":"git://github.com/BeaverSoftware/TestPyGithub.git","html_url":"https://github.com/BeaverSoftware/TestPyGithub","full_name":"BeaverSoftware/TestPyGithub"} + diff --git a/lib/github/tests/ReplayData/Organization.testCreateRepositoryWithAutoInit.txt b/lib/github/tests/ReplayData/Organization.testCreateRepositoryWithAutoInit.txt new file mode 100644 index 0000000000..5b1d385384 --- /dev/null +++ b/lib/github/tests/ReplayData/Organization.testCreateRepositoryWithAutoInit.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/orgs/BeaverSoftware/repos +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"gitignore_template": "Python", "name": "TestPyGithub", "auto_init": true} +201 +[('status', '201 Created'), ('content-length', '1559'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('x-ratelimit-remaining', '4996'), ('server', 'nginx'), ('connection', 'keep-alive'), ('etag', '"2f35ceac1b69bbfc8c38907877514e9d"'), ('location', 'https://api.github.com/repos/BeaverSoftware/TestPyGithub'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Sat, 03 Nov 2012 09:03:49 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"watchers":0,"pushed_at":"2012-11-03T09:03:49Z","forks":0,"has_issues":true,"has_downloads":true,"open_issues_count":0,"description":null,"html_url":"https://github.com/BeaverSoftware/TestPyGithub","owner":{"avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","url":"https://api.github.com/users/BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031},"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","updated_at":"2012-11-03T09:03:49Z","organization":{"avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","url":"https://api.github.com/users/BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031},"permissions":{"push":true,"pull":true,"admin":true},"mirror_url":null,"clone_url":"https://github.com/BeaverSoftware/TestPyGithub.git","language":null,"has_wiki":true,"ssh_url":"git@github.com:BeaverSoftware/TestPyGithub.git","svn_url":"https://github.com/BeaverSoftware/TestPyGithub","size":0,"fork":false,"full_name":"BeaverSoftware/TestPyGithub","open_issues":0,"git_url":"git://github.com/BeaverSoftware/TestPyGithub.git","forks_count":0,"name":"TestPyGithub","created_at":"2012-11-03T09:03:49Z","homepage":null,"private":false,"id":6517856,"master_branch":"master","network_count":0,"watchers_count":0} + diff --git a/lib/github/tests/ReplayData/Organization.testCreateTeam.txt b/lib/github/tests/ReplayData/Organization.testCreateTeam.txt new file mode 100644 index 0000000000..7304a80c64 --- /dev/null +++ b/lib/github/tests/ReplayData/Organization.testCreateTeam.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/orgs/BeaverSoftware/teams +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"name": "Team created by PyGithub"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4988'), ('content-length', '145'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"189a318993cde3e040f2efb4f634f8a8"'), ('date', 'Sat, 26 May 2012 20:58:53 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/teams/189850')] +{"url":"https://api.github.com/teams/189850","members_count":0,"repos_count":0,"name":"Team created by PyGithub","permission":"pull","id":189850} + diff --git a/lib/github/tests/ReplayData/Organization.testCreateTeamWithAllArguments.txt b/lib/github/tests/ReplayData/Organization.testCreateTeamWithAllArguments.txt new file mode 100644 index 0000000000..0be0a1c395 --- /dev/null +++ b/lib/github/tests/ReplayData/Organization.testCreateTeamWithAllArguments.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/repos/BeaverSoftware/FatherBeaver +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4992'), ('content-length', '1431'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"4ecd2c151a469cfa6cd45e6beff1269b"'), ('date', 'Fri, 01 Jun 2012 19:40:56 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"has_downloads":true,"watchers":2,"mirror_url":null,"language":null,"description":"","ssh_url":"git@github.com:BeaverSoftware/FatherBeaver.git","created_at":"2012-02-09T19:32:21Z","url":"https://api.github.com/repos/BeaverSoftware/FatherBeaver","fork":false,"full_name":"BeaverSoftware/FatherBeaver","organization":{"avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","url":"https://api.github.com/users/BeaverSoftware","id":1424031},"permissions":{"admin":true,"pull":true,"push":true},"has_wiki":true,"has_issues":true,"forks":1,"size":0,"svn_url":"https://github.com/BeaverSoftware/FatherBeaver","git_url":"git://github.com/BeaverSoftware/FatherBeaver.git","private":false,"updated_at":"2012-02-16T21:51:15Z","homepage":"","owner":{"avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","url":"https://api.github.com/users/BeaverSoftware","id":1424031},"name":"FatherBeaver","open_issues":0,"html_url":"https://github.com/BeaverSoftware/FatherBeaver","id":3400397,"clone_url":"https://github.com/BeaverSoftware/FatherBeaver.git","pushed_at":null} + +https +POST +api.github.com +None +/orgs/BeaverSoftware/teams +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"repo_names": ["BeaverSoftware/FatherBeaver"], "name": "Team also created by PyGithub", "permission": "push"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4982'), ('content-length', '150'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"6e3fb00de6ca4c112feee3a1438d6f0e"'), ('date', 'Sat, 26 May 2012 21:00:26 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/teams/189852')] +{"repos_count":1,"url":"https://api.github.com/teams/189852","members_count":0,"name":"Team also created by PyGithub","permission":"push","id":189852} + diff --git a/lib/github/tests/ReplayData/Organization.testEditWithAllArguments.txt b/lib/github/tests/ReplayData/Organization.testEditWithAllArguments.txt new file mode 100644 index 0000000000..4919af1335 --- /dev/null +++ b/lib/github/tests/ReplayData/Organization.testEditWithAllArguments.txt @@ -0,0 +1,11 @@ +https +PATCH +api.github.com +None +/orgs/BeaverSoftware +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"name": "Name edited by PyGithub", "billing_email": "BeaverSoftware2@vincent-jacques.net", "company": "Company edited by PyGithub", "blog": "http://vincent-jacques.net", "location": "Location edited by PyGithub", "email": "BeaverSoftware2@vincent-jacques.net"} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4992'), ('content-length', '833'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"fe61098c87e054abfa5626e6a76bbcbd"'), ('date', 'Sat, 26 May 2012 20:50:35 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"public_gists":0,"type":"Organization","disk_usage":112,"private_gists":0,"public_repos":2,"url":"https://api.github.com/orgs/BeaverSoftware","total_private_repos":0,"plan":{"private_repos":0,"name":"free","space":307200},"blog":"http://vincent-jacques.net","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","owned_private_repos":0,"collaborators":0,"company":"Company edited by PyGithub","login":"BeaverSoftware","email":"BeaverSoftware2@vincent-jacques.net","followers":0,"name":"Name edited by PyGithub","created_at":"2012-02-09T19:20:12Z","location":"Location edited by PyGithub","id":1424031,"billing_email":"BeaverSoftware2@vincent-jacques.net","following":0,"html_url":"https://github.com/BeaverSoftware"} + diff --git a/lib/github/tests/ReplayData/Organization.testEditWithoutArguments.txt b/lib/github/tests/ReplayData/Organization.testEditWithoutArguments.txt new file mode 100644 index 0000000000..e57f145faa --- /dev/null +++ b/lib/github/tests/ReplayData/Organization.testEditWithoutArguments.txt @@ -0,0 +1,11 @@ +https +PATCH +api.github.com +None +/orgs/BeaverSoftware +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4996'), ('content-length', '716'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"a9ca2dd89f69da85bebd949477894af0"'), ('date', 'Fri, 11 May 2012 09:07:56 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"owned_private_repos":0,"private_gists":0,"type":"Organization","following":0,"company":null,"html_url":"https://github.com/BeaverSoftware","blog":null,"avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","followers":0,"url":"https://api.github.com/orgs/BeaverSoftware","public_repos":2,"login":"BeaverSoftware","collaborators":0,"email":null,"disk_usage":112,"plan":{"private_repos":0,"space":307200,"name":"free"},"created_at":"2012-02-09T19:20:12Z","name":null,"total_private_repos":0,"billing_email":"BeaverSoftware@vincent-jacques.net","public_gists":0,"id":1424031,"location":"Paris, France"} + diff --git a/lib/github/tests/ReplayData/Organization.testGetEvents.txt b/lib/github/tests/ReplayData/Organization.testGetEvents.txt new file mode 100644 index 0000000000..c84330eeb7 --- /dev/null +++ b/lib/github/tests/ReplayData/Organization.testGetEvents.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/orgs/BeaverSoftware/events +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '30164'), ('x-ratelimit-limit', '5000'), ('x-ratelimit-remaining', '4976'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('etag', '"50c3892fcab2acf668d9b89d97865983"'), ('link', '; rel="next"'), ('date', 'Sun, 27 May 2012 05:13:00 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"payload":{"ref":null,"master_branch":"master","ref_type":"repository","description":null},"type":"CreateEvent","org":{"url":"https://api.github.com/orgs/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"repo":{"url":"https://api.github.com/repos/BeaverSoftware/CreatedByPyGithub","name":"BeaverSoftware/CreatedByPyGithub","id":3616888},"created_at":"2012-03-04T08:17:15Z","public":true,"actor":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"id":"1526182616"},{"payload":{"ref":null,"master_branch":"master","ref_type":"repository","description":null},"type":"CreateEvent","org":{"url":"https://api.github.com/orgs/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"repo":{"url":"https://api.github.com/repos/BeaverSoftware/CreatedByPyGithub","name":"BeaverSoftware/CreatedByPyGithub","id":3610173},"created_at":"2012-03-03T11:16:34Z","public":true,"actor":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"id":"1526021988"},{"payload":{"push_id":65381113,"ref":"refs/heads/master","commits":[{"sha":"390bcc2b855d419e9fd6727049aa9217db56a06a","url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub/commits/390bcc2b855d419e9fd6727049aa9217db56a06a","author":{"name":"BeaverSoftware","email":"BeaverSoftware@vincent-jacques.net"},"message":"This commit was created by PyGithub","distinct":true}],"head":"390bcc2b855d419e9fd6727049aa9217db56a06a","size":1},"type":"PushEvent","org":{"url":"https://api.github.com/orgs/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","name":"BeaverSoftware/TestPyGithub","id":3609352},"created_at":"2012-03-03T08:57:40Z","public":true,"actor":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"id":"1526010140"},{"payload":{"push_id":65381112,"ref":"refs/heads/previous_master","commits":[{"sha":"998f4cd5ba9501a7ccff79b0011f4220f16b0271","url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub/commits/998f4cd5ba9501a7ccff79b0011f4220f16b0271","author":{"name":"BeaverSoftware","email":"BeaverSoftware@vincent-jacques.net"},"message":"This commit was created by PyGithub","distinct":false},{"sha":"1c29d761d3e929afcbf8c6cc44b8181068d2d974","url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub/commits/1c29d761d3e929afcbf8c6cc44b8181068d2d974","author":{"name":"BeaverSoftware","email":"BeaverSoftware@vincent-jacques.net"},"message":"This commit was created by PyGithub","distinct":false}],"head":"1c29d761d3e929afcbf8c6cc44b8181068d2d974","size":2},"type":"PushEvent","org":{"url":"https://api.github.com/orgs/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","name":"BeaverSoftware/TestPyGithub","id":3609352},"created_at":"2012-03-03T08:57:39Z","public":true,"actor":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"id":"1526010139"},{"payload":{"ref":"previous_master","ref_type":"branch"},"type":"DeleteEvent","org":{"url":"https://api.github.com/orgs/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","name":"BeaverSoftware/TestPyGithub","id":3609352},"created_at":"2012-03-03T08:56:56Z","public":true,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"id":"1526010100"},{"payload":{"ref":"tagCreatedByPyGithub","ref_type":"tag"},"type":"DeleteEvent","org":{"url":"https://api.github.com/orgs/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","name":"BeaverSoftware/TestPyGithub","id":3609352},"created_at":"2012-03-03T08:54:25Z","public":true,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"id":"1526009934"},{"payload":{"push_id":65380919,"ref":"refs/heads/master","commits":[{"sha":"1c29d761d3e929afcbf8c6cc44b8181068d2d974","url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub/commits/1c29d761d3e929afcbf8c6cc44b8181068d2d974","author":{"name":"BeaverSoftware","email":"BeaverSoftware@vincent-jacques.net"},"message":"This commit was created by PyGithub","distinct":true}],"head":"1c29d761d3e929afcbf8c6cc44b8181068d2d974","size":1},"type":"PushEvent","org":{"url":"https://api.github.com/orgs/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","name":"BeaverSoftware/TestPyGithub","id":3609352},"created_at":"2012-03-03T08:52:06Z","public":true,"actor":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"id":"1526009779"},{"payload":{"push_id":65380918,"ref":"refs/heads/previous_master","commits":[{"sha":"2f51005d80353b3b82cc23908ea4fc7a91230e2f","url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub/commits/2f51005d80353b3b82cc23908ea4fc7a91230e2f","author":{"name":"BeaverSoftware","email":"BeaverSoftware@vincent-jacques.net"},"message":"This commit was created by PyGithub","distinct":false},{"sha":"998f4cd5ba9501a7ccff79b0011f4220f16b0271","url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub/commits/998f4cd5ba9501a7ccff79b0011f4220f16b0271","author":{"name":"BeaverSoftware","email":"BeaverSoftware@vincent-jacques.net"},"message":"This commit was created by PyGithub","distinct":false}],"head":"998f4cd5ba9501a7ccff79b0011f4220f16b0271","size":2},"type":"PushEvent","org":{"url":"https://api.github.com/orgs/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","name":"BeaverSoftware/TestPyGithub","id":3609352},"created_at":"2012-03-03T08:52:04Z","public":true,"actor":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"id":"1526009777"},{"payload":{"ref":"tag_1330764175","ref_type":"tag"},"type":"DeleteEvent","org":{"url":"https://api.github.com/orgs/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","name":"BeaverSoftware/TestPyGithub","id":3609352},"created_at":"2012-03-03T08:47:21Z","public":true,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"id":"1526009425"},{"payload":{"ref":"a_tag","ref_type":"tag"},"type":"DeleteEvent","org":{"url":"https://api.github.com/orgs/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","name":"BeaverSoftware/TestPyGithub","id":3609352},"created_at":"2012-03-03T08:47:15Z","public":true,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"id":"1526009414"},{"payload":{"push_id":65380594,"ref":"refs/heads/master","commits":[{"sha":"998f4cd5ba9501a7ccff79b0011f4220f16b0271","url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub/commits/998f4cd5ba9501a7ccff79b0011f4220f16b0271","author":{"name":"BeaverSoftware","email":"BeaverSoftware@vincent-jacques.net"},"message":"This commit was created by PyGithub","distinct":true}],"head":"998f4cd5ba9501a7ccff79b0011f4220f16b0271","size":1},"type":"PushEvent","org":{"url":"https://api.github.com/orgs/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","name":"BeaverSoftware/TestPyGithub","id":3609352},"created_at":"2012-03-03T08:42:55Z","public":true,"actor":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"id":"1526009059"},{"payload":{"push_id":65379432,"ref":"refs/heads/master","commits":[{"sha":"2f51005d80353b3b82cc23908ea4fc7a91230e2f","url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub/commits/2f51005d80353b3b82cc23908ea4fc7a91230e2f","author":{"name":"BeaverSoftware","email":"BeaverSoftware@vincent-jacques.net"},"message":"This commit was created by PyGithub","distinct":true}],"head":"2f51005d80353b3b82cc23908ea4fc7a91230e2f","size":1},"type":"PushEvent","org":{"url":"https://api.github.com/orgs/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","name":"BeaverSoftware/TestPyGithub","id":3609352},"created_at":"2012-03-03T08:11:55Z","public":true,"actor":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"id":"1526006647"},{"payload":{"push_id":65379410,"ref":"refs/heads/master","commits":[{"sha":"e4e84560cb5e87f3c0e9f710dae1ddab0eef487b","url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub/commits/e4e84560cb5e87f3c0e9f710dae1ddab0eef487b","author":{"name":"BeaverSoftware","email":"BeaverSoftware@vincent-jacques.net"},"message":"This commit was created by PyGithub","distinct":true}],"head":"e4e84560cb5e87f3c0e9f710dae1ddab0eef487b","size":1},"type":"PushEvent","org":{"url":"https://api.github.com/orgs/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","name":"BeaverSoftware/TestPyGithub","id":3609352},"created_at":"2012-03-03T08:11:13Z","public":true,"actor":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"id":"1526006609"},{"payload":{"ref":null,"master_branch":"master","ref_type":"repository","description":null},"type":"CreateEvent","org":{"url":"https://api.github.com/orgs/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","name":"BeaverSoftware/TestPyGithub","id":3595643},"created_at":"2012-03-01T20:19:32Z","public":true,"actor":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"id":"1525404633"},{"payload":{"ref":null,"master_branch":"master","ref_type":"repository","description":null},"type":"CreateEvent","org":{"url":"https://api.github.com/orgs/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","name":"BeaverSoftware/TestPyGithub","id":3595636},"created_at":"2012-03-01T20:19:03Z","public":true,"actor":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"id":"1525404453"},{"payload":{"ref":null,"master_branch":"master","ref_type":"repository","description":null},"type":"CreateEvent","org":{"url":"https://api.github.com/orgs/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","name":"BeaverSoftware/TestPyGithub","id":3595613},"created_at":"2012-03-01T20:16:23Z","public":true,"actor":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"id":"1525403337"},{"payload":{"ref":null,"master_branch":"master","ref_type":"repository","description":null},"type":"CreateEvent","org":{"url":"https://api.github.com/orgs/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","name":"BeaverSoftware/TestPyGithub","id":3595586},"created_at":"2012-03-01T20:12:55Z","public":true,"actor":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"id":"1525402258"},{"payload":{"ref":null,"master_branch":"master","ref_type":"repository","description":null},"type":"CreateEvent","org":{"url":"https://api.github.com/orgs/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","name":"BeaverSoftware/TestPyGithub","id":3595253},"created_at":"2012-03-01T19:36:29Z","public":true,"actor":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"id":"1525387859"},{"payload":{"push_id":64666710,"ref":"refs/heads/master","commits":[{"sha":"9473baa2f243872c07c8f008e3d53aed6b5c9ac5","url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub/commits/9473baa2f243872c07c8f008e3d53aed6b5c9ac5","author":{"name":"BeaverSoftware","email":"BeaverSoftware@vincent-jacques.net"},"message":"This commit was ter created by PyGithub","distinct":true}],"head":"9473baa2f243872c07c8f008e3d53aed6b5c9ac5","size":1},"type":"PushEvent","org":{"url":"https://api.github.com/orgs/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","name":"BeaverSoftware/TestPyGithub","id":3575047},"created_at":"2012-02-28T20:11:58Z","public":true,"actor":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"id":"1524541002"},{"payload":{"push_id":64259989,"ref":"refs/heads/master","commits":[{"sha":"ff9cc7d9bcb62d9dbf0784994fe026e9060701ef","url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub/commits/ff9cc7d9bcb62d9dbf0784994fe026e9060701ef","author":{"name":"BeaverSoftware","email":"BeaverSoftware@vincent-jacques.net"},"message":"This commit was ter created by PyGithub"}],"head":"ff9cc7d9bcb62d9dbf0784994fe026e9060701ef","size":1},"type":"PushEvent","org":{"url":"https://api.github.com/orgs/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","name":"BeaverSoftware/TestPyGithub","id":3553496},"created_at":"2012-02-26T17:28:36Z","public":true,"actor":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"id":"1523710410"},{"payload":{"push_id":64257074,"ref":"refs/heads/master","commits":[{"sha":"23395b2fa62293196bd8a640b14447c7b552c301","url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub/commits/23395b2fa62293196bd8a640b14447c7b552c301","author":{"name":"BeaverSoftware","email":"BeaverSoftware@vincent-jacques.net"},"message":"This commit was ter created by PyGithub"}],"head":"23395b2fa62293196bd8a640b14447c7b552c301","size":1},"type":"PushEvent","org":{"url":"https://api.github.com/orgs/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","name":"BeaverSoftware/TestPyGithub","id":3553240},"created_at":"2012-02-26T16:46:35Z","public":true,"actor":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"id":"1523704553"},{"payload":{"push_id":64171897,"ref":"refs/heads/master","commits":[{"sha":"daded682d3a64f70df2e5561783e7282a5cd80a9","url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub/commits/daded682d3a64f70df2e5561783e7282a5cd80a9","author":{"name":"BeaverSoftware","email":"BeaverSoftware@vincent-jacques.net"},"message":"This commit was ter created by PyGithub"}],"head":"daded682d3a64f70df2e5561783e7282a5cd80a9","size":1},"type":"PushEvent","org":{"url":"https://api.github.com/orgs/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","name":"BeaverSoftware/TestPyGithub","id":3545577},"created_at":"2012-02-25T16:10:21Z","public":true,"actor":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"id":"1523516455"},{"payload":{"push_id":64169946,"ref":"refs/heads/master","commits":[{"sha":"73b34d944187f282fa6049cd05b02432488b357b","url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub/commits/73b34d944187f282fa6049cd05b02432488b357b","author":{"name":"BeaverSoftware","email":"BeaverSoftware@vincent-jacques.net"},"message":"This commit was ter created by PyGithub"}],"head":"73b34d944187f282fa6049cd05b02432488b357b","size":1},"type":"PushEvent","org":{"url":"https://api.github.com/orgs/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","name":"BeaverSoftware/TestPyGithub","id":3545372},"created_at":"2012-02-25T15:39:19Z","public":true,"actor":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"id":"1523512558"},{"payload":{"push_id":64169244,"ref":"refs/heads/master","commits":[{"sha":"9f2ec52ae9e166d6104834bd0a7f3f9550565100","url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub/commits/9f2ec52ae9e166d6104834bd0a7f3f9550565100","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"message":"foo"}],"head":"9f2ec52ae9e166d6104834bd0a7f3f9550565100","size":1},"type":"PushEvent","org":{"url":"https://api.github.com/orgs/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"repo":{"url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","name":"BeaverSoftware/TestPyGithub","id":3545295},"created_at":"2012-02-25T15:27:57Z","public":true,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"id":"1523511231"},{"payload":{"forkee":{"url":"https://api.github.com/repos/jacquev6/FatherBeaver","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"forks":0,"has_issues":false,"master_branch":null,"open_issues":0,"private":false,"name":"FatherBeaver","fork":true,"has_wiki":true,"mirror_url":null,"has_downloads":true,"ssh_url":"git@github.com:jacquev6/FatherBeaver.git","git_url":"git://github.com/jacquev6/FatherBeaver.git","html_url":"https://github.com/jacquev6/FatherBeaver","description":"","homepage":"","size":0,"watchers":1,"public":true,"svn_url":"https://github.com/jacquev6/FatherBeaver","language":null,"created_at":"2012-02-16T21:47:44Z","pushed_at":null,"id":3464364,"updated_at":"2012-02-16T21:47:44Z","clone_url":"https://github.com/jacquev6/FatherBeaver.git"}},"type":"ForkEvent","org":{"url":"https://api.github.com/orgs/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"repo":{"url":"https://api.github.com/repos/BeaverSoftware/FatherBeaver","name":"BeaverSoftware/FatherBeaver","id":3400397},"created_at":"2012-02-16T21:47:45Z","public":true,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"id":"1520524054"},{"payload":{"ref":null,"master_branch":"master","ref_type":"repository","description":""},"type":"CreateEvent","org":{"url":"https://api.github.com/orgs/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"repo":{"url":"https://api.github.com/repos/BeaverSoftware/FatherBeaver","name":"BeaverSoftware/FatherBeaver","id":3400397},"created_at":"2012-02-09T19:32:22Z","public":true,"actor":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","id":1424031},"id":"1518484373"}] + +https +GET +api.github.com +None +/orgs/BeaverSoftware/events?page=2 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4975'), ('content-length', '2'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="prev"'), ('etag', '"d751713988987e9331980363e24189ce"'), ('date', 'Sun, 27 May 2012 05:13:00 GMT'), ('content-type', 'application/json; charset=utf-8')] +[] + diff --git a/lib/github/tests/ReplayData/Organization.testGetIssues.txt b/lib/github/tests/ReplayData/Organization.testGetIssues.txt new file mode 100644 index 0000000000..f0ed937bf5 --- /dev/null +++ b/lib/github/tests/ReplayData/Organization.testGetIssues.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/orgs/BeaverSoftware/issues +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4981'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('cache-control', 'max-age=0, private, must-revalidate'), ('vary', 'Accept-Encoding'), ('content-length', '2'), ('server', 'GitHub.com'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d751713988987e9331980363e24189ce"'), ('access-control-allow-credentials', 'true'), ('date', 'Fri, 17 May 2013 11:50:06 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8')] +[] + diff --git a/lib/github/tests/ReplayData/Organization.testGetIssuesWithAllArguments.txt b/lib/github/tests/ReplayData/Organization.testGetIssuesWithAllArguments.txt new file mode 100644 index 0000000000..7f4a8e6e16 --- /dev/null +++ b/lib/github/tests/ReplayData/Organization.testGetIssuesWithAllArguments.txt @@ -0,0 +1,44 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4975'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '1496'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 17 May 2013 11:20:54 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"16804c53098398def5970814e79a2cf5"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 17 May 2013 11:50:33 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8')] +{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","name":"Vincent Jacques","company":"Criteo","blog":"http://vincent-jacques.net","location":"Paris, France","email":"vincent@vincent-jacques.net","hireable":false,"bio":"","public_repos":16,"followers":27,"following":39,"created_at":"2010-07-09T06:10:06Z","updated_at":"2013-05-17T11:20:54Z","public_gists":3,"total_private_repos":4,"owned_private_repos":4,"disk_usage":17188,"collaborators":1,"plan":{"name":"micro","space":614400,"collaborators":1,"private_repos":5},"private_gists":6,"site_admin":false} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4974'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '4663'), ('server', 'GitHub.com'), ('last-modified', 'Mon, 13 May 2013 21:44:12 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"2184e9e10f0a22eb0f1eceed39d728da"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 17 May 2013 11:50:34 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8')] +{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-05-13T21:44:12Z","pushed_at":"2013-04-25T18:26:07Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":516,"watchers_count":203,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":12,"forks":55,"open_issues":12,"watchers":203,"master_branch":"master","default_branch":"master","permissions":{"admin":true,"push":true,"pull":true},"network_count":55} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/labels/Requested%20by%20user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4973'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '125'), ('server', 'GitHub.com'), ('last-modified', 'Wed, 12 Sep 2012 18:38:55 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"4255e5086bc19b2096e05eb6dad041ee"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 17 May 2013 11:50:35 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Requested+by+user","name":"Requested by user","color":"e10c02"} + +https +GET +api.github.com +None +/orgs/BeaverSoftware/issues?sort=comments&direction=asc&since=2012-05-28T23%3A00%3A00Z&labels=Requested+by+user&filter=assigned&state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4972'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('cache-control', 'max-age=0, private, must-revalidate'), ('vary', 'Accept-Encoding'), ('content-length', '2'), ('server', 'GitHub.com'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d751713988987e9331980363e24189ce"'), ('access-control-allow-credentials', 'true'), ('date', 'Fri, 17 May 2013 11:50:36 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8')] +[] + diff --git a/lib/github/tests/ReplayData/Organization.testGetMembers.txt b/lib/github/tests/ReplayData/Organization.testGetMembers.txt new file mode 100644 index 0000000000..f080d302e0 --- /dev/null +++ b/lib/github/tests/ReplayData/Organization.testGetMembers.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/orgs/BeaverSoftware/members +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4985'), ('content-length', '886'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"f7f3d1eaa1c0d14d590b09dbb439db2e"'), ('date', 'Sun, 27 May 2012 05:08:20 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/users/cjuniet","avatar_url":"https://secure.gravatar.com/avatar/197eed5292fd11c0277335c3524ccfd5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"197eed5292fd11c0277335c3524ccfd5","login":"cjuniet","id":1233553},{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},{"url":"https://api.github.com/users/Lyloa","avatar_url":"https://secure.gravatar.com/avatar/1517ed584458ccf83e03f5d77d9699d7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"1517ed584458ccf83e03f5d77d9699d7","login":"Lyloa","id":1131432}] + diff --git a/lib/github/tests/ReplayData/Organization.testGetPublicMembers.txt b/lib/github/tests/ReplayData/Organization.testGetPublicMembers.txt new file mode 100644 index 0000000000..641413f6c8 --- /dev/null +++ b/lib/github/tests/ReplayData/Organization.testGetPublicMembers.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/orgs/BeaverSoftware/public_members +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4989'), ('content-length', '298'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"867ed1ef11213cc9045509b0fa544132"'), ('date', 'Sun, 27 May 2012 05:07:44 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}] + diff --git a/lib/github/tests/ReplayData/Organization.testGetRepos.txt b/lib/github/tests/ReplayData/Organization.testGetRepos.txt new file mode 100644 index 0000000000..9924214907 --- /dev/null +++ b/lib/github/tests/ReplayData/Organization.testGetRepos.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/orgs/BeaverSoftware/repos +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4978'), ('content-length', '2300'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"56a6b76672924aa7f1d6f1753388f04b"'), ('date', 'Sun, 27 May 2012 05:12:35 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"clone_url":"https://github.com/BeaverSoftware/FatherBeaver.git","has_downloads":true,"watchers":2,"git_url":"git://github.com/BeaverSoftware/FatherBeaver.git","updated_at":"2012-02-16T21:51:15Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/BeaverSoftware/FatherBeaver","has_wiki":true,"has_issues":true,"fork":false,"forks":1,"mirror_url":null,"size":0,"private":false,"open_issues":0,"svn_url":"https://github.com/BeaverSoftware/FatherBeaver","owner":{"url":"https://api.github.com/users/BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031,"avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"name":"FatherBeaver","language":null,"description":"","ssh_url":"git@github.com:BeaverSoftware/FatherBeaver.git","pushed_at":null,"created_at":"2012-02-09T19:32:21Z","id":3400397,"html_url":"https://github.com/BeaverSoftware/FatherBeaver","full_name":"BeaverSoftware/FatherBeaver"},{"clone_url":"https://github.com/BeaverSoftware/TestPyGithub.git","has_downloads":true,"watchers":1,"git_url":"git://github.com/BeaverSoftware/TestPyGithub.git","updated_at":"2012-04-25T06:51:38Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/BeaverSoftware/TestPyGithub","has_wiki":true,"has_issues":false,"fork":false,"forks":0,"mirror_url":null,"size":112,"private":false,"open_issues":0,"svn_url":"https://github.com/BeaverSoftware/TestPyGithub","owner":{"url":"https://api.github.com/users/BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031,"avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"name":"TestPyGithub","language":null,"description":"Guinea-pig for PyGithub testing","ssh_url":"git@github.com:BeaverSoftware/TestPyGithub.git","pushed_at":"2012-03-03T08:57:40Z","created_at":"2012-03-03T07:53:19Z","id":3609352,"html_url":"https://github.com/BeaverSoftware/TestPyGithub","full_name":"BeaverSoftware/TestPyGithub"}] + diff --git a/lib/github/tests/ReplayData/Organization.testGetReposWithType.txt b/lib/github/tests/ReplayData/Organization.testGetReposWithType.txt new file mode 100644 index 0000000000..9c60101748 --- /dev/null +++ b/lib/github/tests/ReplayData/Organization.testGetReposWithType.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/orgs/BeaverSoftware/repos?type=public +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4987'), ('content-length', '2291'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"4bcc5321db433ac18171c121303c77d2"'), ('date', 'Tue, 29 May 2012 18:11:16 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"mirror_url":null,"clone_url":"https://github.com/BeaverSoftware/FatherBeaver.git","has_downloads":true,"watchers":2,"updated_at":"2012-02-16T21:51:15Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/BeaverSoftware/FatherBeaver","html_url":"https://github.com/BeaverSoftware/FatherBeaver","has_wiki":true,"has_issues":true,"fork":false,"git_url":"git://github.com/BeaverSoftware/FatherBeaver.git","forks":1,"size":0,"private":false,"open_issues":0,"svn_url":"https://github.com/BeaverSoftware/FatherBeaver","owner":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031},"name":"FatherBeaver","language":null,"description":"","ssh_url":"git@github.com:BeaverSoftware/FatherBeaver.git","pushed_at":null,"created_at":"2012-02-09T19:32:21Z","id":3400397,"full_name":"BeaverSoftware/FatherBeaver"},{"mirror_url":null,"clone_url":"https://github.com/BeaverSoftware/PyGithub.git","has_downloads":true,"watchers":1,"updated_at":"2012-05-29T18:09:14Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/BeaverSoftware/PyGithub","html_url":"https://github.com/BeaverSoftware/PyGithub","has_wiki":false,"has_issues":false,"fork":true,"git_url":"git://github.com/BeaverSoftware/PyGithub.git","forks":0,"size":428,"private":false,"open_issues":0,"svn_url":"https://github.com/BeaverSoftware/PyGithub","owner":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:BeaverSoftware/PyGithub.git","pushed_at":"2012-05-29T18:05:10Z","created_at":"2012-05-29T18:03:19Z","id":4485562,"full_name":"BeaverSoftware/PyGithub"}] + diff --git a/lib/github/tests/ReplayData/Organization.testGetTeams.txt b/lib/github/tests/ReplayData/Organization.testGetTeams.txt new file mode 100644 index 0000000000..c758b905f5 --- /dev/null +++ b/lib/github/tests/ReplayData/Organization.testGetTeams.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/orgs/BeaverSoftware/teams +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4973'), ('content-length', '150'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"43d7c883d1cb7d50a08d2c189550023c"'), ('date', 'Sun, 27 May 2012 05:13:46 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/teams/141496","name":"Members","id":141496},{"url":"https://api.github.com/teams/141487","name":"Owners","id":141487}] + diff --git a/lib/github/tests/ReplayData/Organization.testMembers.txt b/lib/github/tests/ReplayData/Organization.testMembers.txt new file mode 100644 index 0000000000..873f800ea1 --- /dev/null +++ b/lib/github/tests/ReplayData/Organization.testMembers.txt @@ -0,0 +1,44 @@ +https +GET +api.github.com +None +/users/Lyloa +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4983'), ('content-length', '554'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"9fc4631ef7902f5de61ef421c7e4f9b7"'), ('date', 'Sun, 27 May 2012 05:09:23 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","public_gists":0,"bio":null,"blog":null,"url":"https://api.github.com/users/Lyloa","avatar_url":"https://secure.gravatar.com/avatar/1517ed584458ccf83e03f5d77d9699d7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","company":null,"gravatar_id":"1517ed584458ccf83e03f5d77d9699d7","login":"Lyloa","email":"nyu@lyloa.net","followers":1,"name":"Lyloa","public_repos":0,"created_at":"2011-10-16T14:36:46Z","location":"Paris","id":1131432,"following":0,"html_url":"https://github.com/Lyloa","hireable":false} + +https +GET +api.github.com +None +/orgs/BeaverSoftware/members/Lyloa +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4982'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sun, 27 May 2012 05:09:23 GMT')] + + +https +DELETE +api.github.com +None +/orgs/BeaverSoftware/members/Lyloa +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4981'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sun, 27 May 2012 05:09:24 GMT')] + + +https +GET +api.github.com +None +/orgs/BeaverSoftware/members/Lyloa +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +403 +[('status', '403 Forbidden'), ('x-ratelimit-remaining', '4980'), ('content-length', '37'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"ab43ecb6e2f75e3940aa869edc5ed691"'), ('date', 'Sun, 27 May 2012 05:09:24 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"message":"You need to be a member"} + diff --git a/lib/github/tests/ReplayData/Organization.testPublicMembers.txt b/lib/github/tests/ReplayData/Organization.testPublicMembers.txt new file mode 100644 index 0000000000..08226f9deb --- /dev/null +++ b/lib/github/tests/ReplayData/Organization.testPublicMembers.txt @@ -0,0 +1,66 @@ +https +GET +api.github.com +None +/users/Lyloa +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4996'), ('content-length', '554'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"5d4e2c6e9715d64a46d9ebe6d7d460eb"'), ('date', 'Sun, 27 May 2012 05:06:42 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","public_gists":0,"url":"https://api.github.com/users/Lyloa","avatar_url":"https://secure.gravatar.com/avatar/1517ed584458ccf83e03f5d77d9699d7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","public_repos":0,"hireable":false,"bio":null,"company":null,"blog":null,"gravatar_id":"1517ed584458ccf83e03f5d77d9699d7","login":"Lyloa","email":"nyu@lyloa.net","followers":1,"name":"Lyloa","created_at":"2011-10-16T14:36:46Z","location":"Paris","id":1131432,"following":0,"html_url":"https://github.com/Lyloa"} + +https +GET +api.github.com +None +/orgs/BeaverSoftware/public_members/Lyloa +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +404 +[('status', '404 Not Found'), ('x-ratelimit-remaining', '4995'), ('content-length', '23'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"e66a7a6c91e2c26803f3f49feb7a883f"'), ('date', 'Sun, 27 May 2012 05:06:43 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"message":"Not Found"} + +https +PUT +api.github.com +None +/orgs/BeaverSoftware/public_members/Lyloa +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4994'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sun, 27 May 2012 05:06:43 GMT')] + + +https +GET +api.github.com +None +/orgs/BeaverSoftware/public_members/Lyloa +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4993'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sun, 27 May 2012 05:06:44 GMT')] + + +https +DELETE +api.github.com +None +/orgs/BeaverSoftware/public_members/Lyloa +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4992'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sun, 27 May 2012 05:06:44 GMT')] + + +https +GET +api.github.com +None +/orgs/BeaverSoftware/public_members/Lyloa +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +404 +[('status', '404 Not Found'), ('x-ratelimit-remaining', '4991'), ('content-length', '23'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"e66a7a6c91e2c26803f3f49feb7a883f"'), ('date', 'Sun, 27 May 2012 05:06:45 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"message":"Not Found"} + diff --git a/lib/github/tests/ReplayData/PaginatedList.setUp.txt b/lib/github/tests/ReplayData/PaginatedList.setUp.txt new file mode 100644 index 0000000000..d2f26966de --- /dev/null +++ b/lib/github/tests/ReplayData/PaginatedList.setUp.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/users/openframeworks +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4929'), ('content-length', '564'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"cddd0710dc9490553aecd937e15d1136"'), ('date', 'Tue, 29 May 2012 19:36:56 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","hireable":false,"url":"https://api.github.com/users/openframeworks","html_url":"https://github.com/openframeworks","public_gists":0,"blog":null,"bio":null,"public_repos":12,"company":null,"gravatar_id":"a858611b044a8302ab14cfe752e17369","login":"openframeworks","email":"","followers":399,"name":null,"avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","created_at":"2009-10-21T21:54:37Z","location":null,"id":142866,"following":4} + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4928'), ('content-length', '1253'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"e7459f63683768d5b53fc4b246d13a10"'), ('date', 'Tue, 29 May 2012 19:36:56 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"clone_url":"https://github.com/openframeworks/openFrameworks.git","has_downloads":true,"watchers":1745,"updated_at":"2012-05-29T19:23:07Z","permissions":{"pull":true,"admin":false,"push":false},"homepage":"http://openframeworks.cc","url":"https://api.github.com/repos/openframeworks/openFrameworks","html_url":"https://github.com/openframeworks/openFrameworks","has_wiki":true,"has_issues":true,"fork":false,"forks":349,"size":4232,"git_url":"git://github.com/openframeworks/openFrameworks.git","private":false,"open_issues":333,"svn_url":"https://github.com/openframeworks/openFrameworks","owner":{"url":"https://api.github.com/users/openframeworks","gravatar_id":"a858611b044a8302ab14cfe752e17369","login":"openframeworks","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142866},"name":"openFrameworks","mirror_url":null,"language":"C","description":"OpenFrameworks is a cross platform open source toolkit for creative coding in C++.","ssh_url":"git@github.com:openframeworks/openFrameworks.git","pushed_at":"2012-05-29T19:23:07Z","created_at":"2009-10-21T21:55:54Z","id":345337,"full_name":"openframeworks/openFrameworks"} + diff --git a/lib/github/tests/ReplayData/PaginatedList.testCustomPerPage.txt b/lib/github/tests/ReplayData/PaginatedList.testCustomPerPage.txt new file mode 100644 index 0000000000..b47e69c6c8 --- /dev/null +++ b/lib/github/tests/ReplayData/PaginatedList.testCustomPerPage.txt @@ -0,0 +1,55 @@ +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?per_page=100 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4964'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '329982'), ('server', 'GitHub.com'), ('last-modified', 'Mon, 11 Mar 2013 10:11:56 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last"'), ('etag', '"9d1c9cd0db105699c994ba8b16296c1b"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 11 Mar 2013 10:12:43 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1928","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1928/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1928/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1928/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1928","id":11868429,"number":1928,"title":"ofVideoplayer getPosition getFrame","user":{"login":"robotfunk","id":1648376,"avatar_url":"https://secure.gravatar.com/avatar/5b24e2e8331f589c2b855ebbb407d82e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5b24e2e8331f589c2b855ebbb407d82e","url":"https://api.github.com/users/robotfunk","html_url":"https://github.com/robotfunk","followers_url":"https://api.github.com/users/robotfunk/followers","following_url":"https://api.github.com/users/robotfunk/following","gists_url":"https://api.github.com/users/robotfunk/gists{/gist_id}","starred_url":"https://api.github.com/users/robotfunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/robotfunk/subscriptions","organizations_url":"https://api.github.com/users/robotfunk/orgs","repos_url":"https://api.github.com/users/robotfunk/repos","events_url":"https://api.github.com/users/robotfunk/events{/privacy}","received_events_url":"https://api.github.com/users/robotfunk/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2013-03-11T09:08:35Z","updated_at":"2013-03-11T09:08:35Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I'm developing an app that syncs videos to an incoming timecode, and it appears that getPosition and getFrame returns the position where the video should be rather than where it actually is. As soon as you seek to a percentage or frame that frame is returned, regardless of the frame that is actually being displayed. \r\n\r\nThis happens with the built-in ofVideoPlayer and the QTKit based one.\r\nOSX, 0073"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1925","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1925/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1925/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1925/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1925","id":11844686,"number":1925,"title":"Fix for osx makefiles.","user":{"login":"bakercp","id":300484,"avatar_url":"https://secure.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","url":"https://api.github.com/users/bakercp","html_url":"https://github.com/bakercp","followers_url":"https://api.github.com/users/bakercp/followers","following_url":"https://api.github.com/users/bakercp/following","gists_url":"https://api.github.com/users/bakercp/gists{/gist_id}","starred_url":"https://api.github.com/users/bakercp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bakercp/subscriptions","organizations_url":"https://api.github.com/users/bakercp/orgs","repos_url":"https://api.github.com/users/bakercp/repos","events_url":"https://api.github.com/users/bakercp/events{/privacy}","received_events_url":"https://api.github.com/users/bakercp/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2013-03-09T21:49:42Z","updated_at":"2013-03-09T23:38:22Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1925","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1925.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1925.patch"},"body":"Added the exports/osx folder."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1924","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1924/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1924/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1924/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1924","id":11842835,"number":1924,"title":"Windows 8 fails to compile the core with ofParameter","user":{"login":"danthemellowman","id":719564,"avatar_url":"https://secure.gravatar.com/avatar/79621943dfc6272eae9697464ad33696?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"79621943dfc6272eae9697464ad33696","url":"https://api.github.com/users/danthemellowman","html_url":"https://github.com/danthemellowman","followers_url":"https://api.github.com/users/danthemellowman/followers","following_url":"https://api.github.com/users/danthemellowman/following","gists_url":"https://api.github.com/users/danthemellowman/gists{/gist_id}","starred_url":"https://api.github.com/users/danthemellowman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danthemellowman/subscriptions","organizations_url":"https://api.github.com/users/danthemellowman/orgs","repos_url":"https://api.github.com/users/danthemellowman/repos","events_url":"https://api.github.com/users/danthemellowman/events{/privacy}","received_events_url":"https://api.github.com/users/danthemellowman/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/critical","name":"critical","color":"ff0000"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":2,"created_at":"2013-03-09T19:28:58Z","updated_at":"2013-03-11T06:46:40Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I'm building using VS2010 and using the most current develop branch I see the attached gist when trying to compile any application. @arturoc any thoughts? \r\n\r\nhttps://gist.github.com/danthemellowman/5125331"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1923","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1923/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1923/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1923/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1923","id":11842450,"number":1923,"title":"Fixed sound not restarting after an interupttion (phone call or alarm clock)","user":{"login":"cerupcat","id":204151,"avatar_url":"https://secure.gravatar.com/avatar/91b3d4bfbbb99d840b096cde3af877bf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"91b3d4bfbbb99d840b096cde3af877bf","url":"https://api.github.com/users/cerupcat","html_url":"https://github.com/cerupcat","followers_url":"https://api.github.com/users/cerupcat/followers","following_url":"https://api.github.com/users/cerupcat/following","gists_url":"https://api.github.com/users/cerupcat/gists{/gist_id}","starred_url":"https://api.github.com/users/cerupcat/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cerupcat/subscriptions","organizations_url":"https://api.github.com/users/cerupcat/orgs","repos_url":"https://api.github.com/users/cerupcat/repos","events_url":"https://api.github.com/users/cerupcat/events{/privacy}","received_events_url":"https://api.github.com/users/cerupcat/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":6,"created_at":"2013-03-09T19:00:32Z","updated_at":"2013-03-09T23:13:41Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1923","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1923.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1923.patch"},"body":"Made the audioUnit static so it's more accessible and fixed audio not restarting after an iOS interruption.\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1922","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1922/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1922/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1922/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1922","id":11841064,"number":1922,"title":"Add ofThreadErrorHandler, support in ofThread and updated thread Example.","user":{"login":"bakercp","id":300484,"avatar_url":"https://secure.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","url":"https://api.github.com/users/bakercp","html_url":"https://github.com/bakercp","followers_url":"https://api.github.com/users/bakercp/followers","following_url":"https://api.github.com/users/bakercp/following","gists_url":"https://api.github.com/users/bakercp/gists{/gist_id}","starred_url":"https://api.github.com/users/bakercp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bakercp/subscriptions","organizations_url":"https://api.github.com/users/bakercp/orgs","repos_url":"https://api.github.com/users/bakercp/repos","events_url":"https://api.github.com/users/bakercp/events{/privacy}","received_events_url":"https://api.github.com/users/bakercp/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":6,"created_at":"2013-03-09T17:08:19Z","updated_at":"2013-03-10T11:19:44Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1922","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1922.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1922.patch"},"body":"Addresses issue #1813 \r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1919","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1919/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1919/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1919/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1919","id":11794846,"number":1919,"title":"please add ofGetGlutWindowID() ","user":{"login":"yty","id":841770,"avatar_url":"https://secure.gravatar.com/avatar/a8010f501bbf6646afd69a8c3afc773a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"a8010f501bbf6646afd69a8c3afc773a","url":"https://api.github.com/users/yty","html_url":"https://github.com/yty","followers_url":"https://api.github.com/users/yty/followers","following_url":"https://api.github.com/users/yty/following","gists_url":"https://api.github.com/users/yty/gists{/gist_id}","starred_url":"https://api.github.com/users/yty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yty/subscriptions","organizations_url":"https://api.github.com/users/yty/orgs","repos_url":"https://api.github.com/users/yty/repos","events_url":"https://api.github.com/users/yty/events{/privacy}","received_events_url":"https://api.github.com/users/yty/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-2D","name":"section-2D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2013-03-08T07:38:58Z","updated_at":"2013-03-08T07:39:39Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofAppGlutWindow.cpp\r\n/////////////////////////////////////////////\r\nvoid ofAppGlutWindow::setupOpenGL(int w, int h, int screenMode){\r\n if (windowMode != OF_GAME_MODE){\r\n\t\tglutInitWindowSize(w, h);\r\n\t\twindowId = glutCreateWindow(\"\"); \r\n }\r\n}\r\n\r\nint ofAppGlutWindow::getGlutWindowID(){\r\n\treturn windowId;\r\n}\r\n\r\nofAppRunner.cpp\r\n////////////////////////////////////////////\r\n\r\nint ofGetGlutWindowID(){\r\n\treturn window->getGlutWindowID();\r\n}\r\n\r\nofAppBaseWindow.h\r\n///////////////////////////////////////\r\nvirtual int getGlutWindowID(){}\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1917","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1917/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1917/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1917/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1917","id":11758613,"number":1917,"title":"ofxOpenCv Install.xml vs2010 settings out of date","user":{"login":"SoylentGraham","id":2184197,"avatar_url":"https://secure.gravatar.com/avatar/9c4381dbaf7664c1fd5b198e807bfa16?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"9c4381dbaf7664c1fd5b198e807bfa16","url":"https://api.github.com/users/SoylentGraham","html_url":"https://github.com/SoylentGraham","followers_url":"https://api.github.com/users/SoylentGraham/followers","following_url":"https://api.github.com/users/SoylentGraham/following","gists_url":"https://api.github.com/users/SoylentGraham/gists{/gist_id}","starred_url":"https://api.github.com/users/SoylentGraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/SoylentGraham/subscriptions","organizations_url":"https://api.github.com/users/SoylentGraham/orgs","repos_url":"https://api.github.com/users/SoylentGraham/repos","events_url":"https://api.github.com/users/SoylentGraham/events{/privacy}","received_events_url":"https://api.github.com/users/SoylentGraham/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":1,"created_at":"2013-03-07T13:09:43Z","updated_at":"2013-03-08T08:32:37Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I've just been adding ofxOpenCv to my (windows) project, and refered to the install.xml as a guide to what I need to include & link to. Includes are fine, but the lib references are out of date....\r\nhttps://github.com/openframeworks/openFrameworks/blob/develop/addons/ofxOpenCv/install.xml\r\n\r\n```xml\r\n../../../addons/ofxOpenCv/libs/opencv/lib/win32/cv110.lib\r\n../../../addons/ofxOpenCv/libs/opencv/lib/win32/cxcore110.lib\r\n```\r\n\r\nnow needs to reference \r\n../../../addons/ofxOpenCv/libs/opencv/lib/vs2010/opencv_core231d.lib\r\nand another 10 or so libs. (both debug and release)\r\n\r\nI went to fix the install.xml, but realised I can't find any info on how to specify different cases for debug and release configurations, and couldn't find a schema for the install.xml files... Can anyone point me in the right direction? (Or just fix the xml?)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1916","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1916/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1916/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1916/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1916","id":11730674,"number":1916,"title":"ofQTKitPlayer deadlock on delete","user":{"login":"kronick","id":186834,"avatar_url":"https://secure.gravatar.com/avatar/abd0ffdcfe5fea1b2319e61ded9452f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"abd0ffdcfe5fea1b2319e61ded9452f0","url":"https://api.github.com/users/kronick","html_url":"https://github.com/kronick","followers_url":"https://api.github.com/users/kronick/followers","following_url":"https://api.github.com/users/kronick/following","gists_url":"https://api.github.com/users/kronick/gists{/gist_id}","starred_url":"https://api.github.com/users/kronick/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kronick/subscriptions","organizations_url":"https://api.github.com/users/kronick/orgs","repos_url":"https://api.github.com/users/kronick/repos","events_url":"https://api.github.com/users/kronick/events{/privacy}","received_events_url":"https://api.github.com/users/kronick/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2013-03-06T20:17:49Z","updated_at":"2013-03-06T21:22:22Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"The following code causes a deadlock on the \"delete\" call (calling player->close() causes the same problem) while clearing a large video file (I'm using one that's ~2GB):\r\n```C\r\nofQTKitPlayer *player new ofQTKitPlayer();\r\nplayer->loadMovie(\"a_large_video.mov\", OF_QTKIT_DECODE_TEXTURE_ONLY);\r\n\r\ndelete player;\r\n```\r\n\r\nIt seems to work fine when using OF_QTKIT_DECODE_PIXELS_AND_TEXTURE.\r\n\r\nStack trace is below. The last non-assembly bits are in [QTKitMovieRenderer dealloc]. This is on a iMac i7 OSX 10.8.2.\r\n\r\n> When #0\t0x996e091a in __psynch_mutexwait ()\r\n> #1\t0x93b7c13b in pthread_mutex_lock ()\r\n> #2\t0x9a34e9ec in QTMLGrabMutex ()\r\n> #3\t0x9a38f51d in QTVisualGraphGrabConfiguringMutex ()\r\n> #4\t0x9858e31b in ___lldb_unnamed_function22307$$QuickTimeComponents ()\r\n> #5\t0x955c091f in callComponentStorage_444 ()\r\n> #6\t0x955b1abf in CallComponentFunctionCommonWithStorage(char**, ComponentParameters*, long (*)(), unsigned long) ()\r\n> #7\t0x955b1aff in CallComponentFunctionWithStorageProcInfo ()\r\n> #8\t0x9858ddf6 in BaseVC_ComponentDispatch ()\r\n> #9\t0x9552baee in CallComponent ()\r\n> #10\t0x9552bb65 in DelegateComponentCall ()\r\n> #11\t0x9858e592 in OpenGLTVC_ComponentDispatch ()\r\n> #12\t0x9552baee in CallComponent ()\r\n> #13\t0x9552bb48 in CallComponentDispatch ()\r\n> #14\t0x9a38f755 in QTVCSetImageAvailableCallback ()\r\n> #15\t0x9a38f716 in QTVisualContextSetImageAvailableCallback ()\r\n> #16\t0x00262a6b in -[QTKitMovieRenderer dealloc] at /path/to/project/openframeworks/libs/openFrameworksCompiled/project/osx/../../../openFrameworks/video/ofQTKitMovieRenderer.m:201\r\n> #17\t0x99cf28ff in -[NSObject release] ()\r\n> #18\t0x00260edc in ofQTKitPlayer::close() at /path/to/project/openframeworks/libs/openFrameworksCompiled/project/osx/../../../openFrameworks/video/ofQTKitPlayer.mm:102\r\n> #19\t0x002604b1 in ofQTKitPlayer::~ofQTKitPlayer() at /path/to/project/openframeworks/libs/openFrameworksCompiled/project/osx/../../../openFrameworks/video/ofQTKitPlayer.mm:22\r\n> #20\t0x00260421 in ofQTKitPlayer::~ofQTKitPlayer() at /path/to/project/openframeworks/libs/openFrameworksCompiled/project/osx/../../../openFrameworks/video/ofQTKitPlayer.mm:21"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1914","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1914/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1914/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1914/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1914","id":11629899,"number":1914,"title":"make ofEasyCam::reset() virtual, or allow non-default reset positions","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2013-03-04T17:50:32Z","updated_at":"2013-03-05T09:51:49Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"i want to have the double-click behavior return ofEasyCam to a nonstandard resting position. i thought i could do this by inheriting ofEasyCam and overriding reset(), but it's not a virtual method.\r\n\r\nin the meantime i've done something really terrible in my code. please forgive me.\r\n\r\n````c++\r\n\t\tofVec3f position = getPosition();\r\n\t\tofVec3f basePosition = ofVec3f(0, 0, getDistance());\r\n\t\tif(position == basePosition) {\r\n\t\t\t// reset to a better position\r\n\t\t}\r\n````\r\n\r\nif this function is called by update() or draw() it causes a one-frame flicker where the usual ofEasyCam default position appears for a moment, and then it flips it to the \"correct\" spot.\r\n\r\nin theory the user could move the camera to a spot that causes it to reset, but in practice i think it's very unlikely. regardless, the above solution is \"wrong\" and it would be better to have virtual method or reset position settings."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1913","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1913/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1913/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1913/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1913","id":11622759,"number":1913,"title":"feature: Pixel Buffer Object (PBO)","user":{"login":"tobiasebsen","id":1135364,"avatar_url":"https://secure.gravatar.com/avatar/0084a00a1e20e0607a9f67d2d9b992c0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"0084a00a1e20e0607a9f67d2d9b992c0","url":"https://api.github.com/users/tobiasebsen","html_url":"https://github.com/tobiasebsen","followers_url":"https://api.github.com/users/tobiasebsen/followers","following_url":"https://api.github.com/users/tobiasebsen/following","gists_url":"https://api.github.com/users/tobiasebsen/gists{/gist_id}","starred_url":"https://api.github.com/users/tobiasebsen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tobiasebsen/subscriptions","organizations_url":"https://api.github.com/users/tobiasebsen/orgs","repos_url":"https://api.github.com/users/tobiasebsen/repos","events_url":"https://api.github.com/users/tobiasebsen/events{/privacy}","received_events_url":"https://api.github.com/users/tobiasebsen/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-2D","name":"section-2D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2013-03-04T15:21:58Z","updated_at":"2013-03-04T16:37:34Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Just want to propose the idea of implementing a pixel buffer object in openFrameworks.\r\nThere are many uses for this - especially if you want to render pixels into vertices - say, using a fragment shader to create points or a mesh.\r\n\r\nThe PBO could be a new ofPbo class or just adding functionality to the existing ofVbo. The main changes would be:\r\n\r\n1. Creating non-initialized buffers (unlike setVertexData, that only allows buffers with copy-data), e.g. allocateVertexData(...), alloacteTexCoordData(...), etc.\r\n2. Reading pixels into the buffers (from framebuffers), e.g. readPixels(...);\r\n\r\nThis is a suggestion open for discussion."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1912","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1912/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1912/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1912/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1912","id":11611280,"number":1912,"title":"added ofPixels::setColor(ofColor) and ofImage::setColor(ofColor)","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2013-03-04T09:32:10Z","updated_at":"2013-03-04T10:21:51Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1912","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1912.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1912.patch"},"body":"example:\r\n\r\n````c++\r\n#include \"ofAppGlutWindow.h\"\r\n#include \"ofMain.h\"\r\n\r\nclass ofApp : public ofBaseApp {\r\npublic:\r\n\tofImage img;\r\n\t\r\n\tvoid setup() {\r\n\t\timg.allocate(ofGetWidth(), ofGetHeight(), OF_IMAGE_COLOR);\r\n\t\timg.update();\r\n\t}\r\n\t\r\n\tvoid update() {\r\n\t\timg.setColor(ofColor::fromHsb(mouseX % 256, mouseY % 256, 255));\r\n\t\timg.update();\r\n\t}\r\n\t\r\n\tvoid draw() {\r\n\t\timg.draw(0, 0);\r\n\t}\r\n};\r\n\r\nint main() {\r\n\tofAppGlutWindow window;\r\n\tofSetupOpenGL(&window, 1280, 720, OF_WINDOW);\r\n\tofRunApp(new ofApp());\r\n}\r\n````"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1911","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1911/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1911/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1911/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1911","id":11610983,"number":1911,"title":"Integrate new oscpack version","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"milestone":null,"comments":7,"created_at":"2013-03-04T09:22:16Z","updated_at":"2013-03-06T09:00:03Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"A new version of oscpack is coming soon (RC1.1 in a couple of days). Integrate it after the new makefile system has landed, it has some fixes relevant for us. See discussion in af9dedb122358b2f856893eee477350facec93c1.\r\n\r\nTODO:\r\n\r\n- [ ] Integrate new oscpack version\r\n- [ ] New API for `SetAllowReuse(true)` (mac only afaik) and `SetEnableBroadcast(true)` \r\n- [ ] Check if #701 is fixed/still occuring\r\n- [ ] Resolve/process/close #1839 \r\n- [ ] See if we can get away with not renaming `posix/UdpSocket.cpp`, `win32/UdpSocket.cpp`, would make future updates more streamlined.\r\n- [ ] might be good to also do #1804 (make bundles optional) while we're at it.\r\n\r\ncf @kylemcdonald @rbencina"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1910","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1910/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1910/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1910/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1910","id":11604963,"number":1910,"title":"feature ofImage::set","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":6,"created_at":"2013-03-04T04:37:24Z","updated_at":"2013-03-04T09:17:40Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"something like:\r\n\r\n````c++\r\nvoid ofImage::set(ofColor color) {\r\n\tfor(int y = 0; y < height; y++) {\r\n\t\tfor(int x = 0; x < width; x++) {\r\n\t\t\tsetColor(x, y, color);\r\n\t\t}\r\n\t}\r\n}\r\n````\r\n\r\nwith a default value of `color = ofColor(0)`.\r\n\r\nthoughts? i find i want to clear ofImages after allocation if i'm drawing into part of the image."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1909","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1909/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1909/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1909/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1909","id":11600513,"number":1909,"title":"Fix iOS antialiased screen grab (#822).","user":{"login":"mcforman","id":3732318,"avatar_url":"https://secure.gravatar.com/avatar/9e0cea385a73e6b61ac0abd388322a95?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"9e0cea385a73e6b61ac0abd388322a95","url":"https://api.github.com/users/mcforman","html_url":"https://github.com/mcforman","followers_url":"https://api.github.com/users/mcforman/followers","following_url":"https://api.github.com/users/mcforman/following","gists_url":"https://api.github.com/users/mcforman/gists{/gist_id}","starred_url":"https://api.github.com/users/mcforman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mcforman/subscriptions","organizations_url":"https://api.github.com/users/mcforman/orgs","repos_url":"https://api.github.com/users/mcforman/repos","events_url":"https://api.github.com/users/mcforman/events{/privacy}","received_events_url":"https://api.github.com/users/mcforman/received_events","type":"User"},"labels":[],"state":"open","assignee":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"milestone":null,"comments":5,"created_at":"2013-03-03T23:47:59Z","updated_at":"2013-03-09T22:06:27Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1909","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1909.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1909.patch"},"body":"Post-draw GL read-backs now work from antialiased framebuffer, to fix iOS screen grab issues such as with ofxiPhoneScreenGrab() and ofTexture::loadScreenData() (fix #822).\r\n\r\nDone by setting display-mapped 'resolve' buffer (defaultFramebuffer) as the current framebuffer after a draw, rather than the fsaa buffer. The fsaa buffer is set as current again before next draw.\r\n\r\nThis means that any direct GL drawing code executed between update()+draw() cycles won't work, as it'll end up in the wrong framebuffer. *However*, I understand nobody should be doing that - if I'm wrong, well, dump it all!\r\n\r\nTested via ofxiPhoneScreenGrab() on an iPad2 and iPod Touch."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1905","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1905/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1905/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1905/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1905","id":11566128,"number":1905,"title":"Added optional z param to ofVec3f( ofVec2f ) constructor, and swizzles","user":{"login":"SoylentGraham","id":2184197,"avatar_url":"https://secure.gravatar.com/avatar/9c4381dbaf7664c1fd5b198e807bfa16?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"9c4381dbaf7664c1fd5b198e807bfa16","url":"https://api.github.com/users/SoylentGraham","html_url":"https://github.com/SoylentGraham","followers_url":"https://api.github.com/users/SoylentGraham/followers","following_url":"https://api.github.com/users/SoylentGraham/following","gists_url":"https://api.github.com/users/SoylentGraham/gists{/gist_id}","starred_url":"https://api.github.com/users/SoylentGraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/SoylentGraham/subscriptions","organizations_url":"https://api.github.com/users/SoylentGraham/orgs","repos_url":"https://api.github.com/users/SoylentGraham/repos","events_url":"https://api.github.com/users/SoylentGraham/events{/privacy}","received_events_url":"https://api.github.com/users/SoylentGraham/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2013-03-01T22:57:48Z","updated_at":"2013-03-08T15:31:32Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1905","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1905.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1905.patch"},"body":"Useful accessors for 3D <-> 2D vector conversion.\r\nThe ofVec2f constructor for ofVec3f now takes a Z too so we can construct a little more simply\r\n ofVec3f World3( GetWorld2(), 100.f );\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1902","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1902/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1902/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1902/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1902","id":11522827,"number":1902,"title":"make install_dependencies.sh more flexible to avoid failing package installs (e.g. jack)","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":9,"created_at":"2013-02-28T22:32:49Z","updated_at":"2013-03-01T13:34:15Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I just had another user having a problem with jack not installing when executing `install_dependencies.sh` on ubuntu 12.04: http://forum.openframeworks.cc/index.php/topic,12136.msg53242.html#msg53242\r\n\r\nIt can easily be solved by a manual install: http://forum.openframeworks.cc/index.php/topic,11392.msg53064.html#msg53064\r\n\r\n@arturoc I'm wondering if there's a way to automate this in the apt-get command (something like \"if jack install fails, install `libjack-jackd2-dev`)?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1900","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1900/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1900/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1900/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1900","id":11505301,"number":1900,"title":"Test-PR - nothing to see here","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2013-02-28T15:36:16Z","updated_at":"2013-02-28T15:36:16Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1900","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1900.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1900.patch"},"body":"this is a test PR for the upcoming code checker. any activity can be ignored. thanks."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1899","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1899/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1899/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1899/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1899","id":11496228,"number":1899,"title":"Several problems with iOS and mp3s","user":{"login":"ronherrema","id":3489924,"avatar_url":"https://secure.gravatar.com/avatar/de90528d6d86a93fc6e657bce64e9370?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"de90528d6d86a93fc6e657bce64e9370","url":"https://api.github.com/users/ronherrema","html_url":"https://github.com/ronherrema","followers_url":"https://api.github.com/users/ronherrema/followers","following_url":"https://api.github.com/users/ronherrema/following","gists_url":"https://api.github.com/users/ronherrema/gists{/gist_id}","starred_url":"https://api.github.com/users/ronherrema/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ronherrema/subscriptions","organizations_url":"https://api.github.com/users/ronherrema/orgs","repos_url":"https://api.github.com/users/ronherrema/repos","events_url":"https://api.github.com/users/ronherrema/events{/privacy}","received_events_url":"https://api.github.com/users/ronherrema/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":11,"created_at":"2013-02-28T11:05:51Z","updated_at":"2013-03-08T15:58:12Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"When I unload one sound and attempt to load another, I get two error messages: first, 'Error enqueuing new buffer: -66632', and then 'more than one mp3 cannot be loaded at the same time'. The first sound stops but the second does not sound. I'm using Xcode 4.5.2 on Mac OS 10.7.5 and am developing for my iPod Touch using iOS 6.0. My code (which I've attempted to use both within the double-tap handler, and on a timed basis within update) looks like this:\r\n\r\nbgMusic.unloadSound(); \r\ngrab.loadSound(\"Grab.mp3\"); \r\ngrab.play(); \r\nofxiPhoneScreenGrab(NULL); \r\ngrab.unloadSound(); \r\nbgMusic.loadSound(\"Music.mp3\"); \r\nbgMusic.play(); "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1884","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1884/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1884/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1884/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1884","id":11324410,"number":1884,"title":"Fedora compile error (misses cairo-features.h)","user":{"login":"YottaSecond","id":2925265,"avatar_url":"https://secure.gravatar.com/avatar/40858a2bd29d3dac55087846ea5b6880?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"40858a2bd29d3dac55087846ea5b6880","url":"https://api.github.com/users/YottaSecond","html_url":"https://github.com/YottaSecond","followers_url":"https://api.github.com/users/YottaSecond/followers","following_url":"https://api.github.com/users/YottaSecond/following","gists_url":"https://api.github.com/users/YottaSecond/gists{/gist_id}","starred_url":"https://api.github.com/users/YottaSecond/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/YottaSecond/subscriptions","organizations_url":"https://api.github.com/users/YottaSecond/orgs","repos_url":"https://api.github.com/users/YottaSecond/repos","events_url":"https://api.github.com/users/YottaSecond/events{/privacy}","received_events_url":"https://api.github.com/users/YottaSecond/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2013-02-23T19:52:06Z","updated_at":"2013-02-23T21:30:41Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"The install_dependencies.sh script failed on me yesterday (I was trying to build openFrameworks in Fedora for the first time).\r\n\r\nThis doesn't seem to be a problem with the script itself; just a problem with the makefile include flags, which don't currently lead to the cairo development files.\r\n\r\nTo get this working, I simply added:\r\n\r\nINCLUDES_FLAGS += -I /usr/include/cairo\r\n\r\nafter line 108 in the openFrameworksCompiled/project/linux64 makefile.\r\n\r\nOthers have suggested changing the cairo includes in libs/openFrameworks/graphics/ofCairoRenderer.h from \"cairo-features.h\" to \"cairo/cairo-features.h\"\r\nI haven't tested that, but perhaps it could be a more elegant solution."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1876","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1876/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1876/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1876/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1876","id":11012527,"number":1876,"title":"Feature: Poco::DateTimeFormatter","user":{"login":"ascorbin","id":900709,"avatar_url":"https://secure.gravatar.com/avatar/9cff00ec4a5ef434ed3694c7f84b231b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"9cff00ec4a5ef434ed3694c7f84b231b","url":"https://api.github.com/users/ascorbin","html_url":"https://github.com/ascorbin","followers_url":"https://api.github.com/users/ascorbin/followers","following_url":"https://api.github.com/users/ascorbin/following","gists_url":"https://api.github.com/users/ascorbin/gists{/gist_id}","starred_url":"https://api.github.com/users/ascorbin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ascorbin/subscriptions","organizations_url":"https://api.github.com/users/ascorbin/orgs","repos_url":"https://api.github.com/users/ascorbin/repos","events_url":"https://api.github.com/users/ascorbin/events{/privacy}","received_events_url":"https://api.github.com/users/ascorbin/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2013-02-14T20:36:25Z","updated_at":"2013-03-11T08:03:28Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"for a racing game i needed time formats like 00:00:000 and found everything inside poco. would be nice to wrap this for of. \r\n\r\nexample:\r\n// get pointer to mov\r\n ofVideoPlayer* p = (ofVideoPlayer*) e->imgPtr;\r\n \r\n // get mov times\r\n Poco::DateTimeFormatter dateFormater;\r\n float total = p->getDuration();\r\n float current = p->getPosition();\r\n Poco::Timespan totalTime = total*1000*1000;\r\n Poco::Timespan currentTime = current*total*1000*1000;\r\n \r\n string currentTimeString = dateFormater.format(currentTime , \"%m:%S\");\r\n string totalTimeString = dateFormater.format(totalTime , \"%m:%S\");\r\n\r\ngreetings ascorbin"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1873","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1873/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1873/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1873/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1873","id":10897195,"number":1873,"title":"Sleep() and ofSetFrameRate accuracy","user":{"login":"kamend","id":462951,"avatar_url":"https://secure.gravatar.com/avatar/1b0002ee319a421a56ef94c199382fb7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"1b0002ee319a421a56ef94c199382fb7","url":"https://api.github.com/users/kamend","html_url":"https://github.com/kamend","followers_url":"https://api.github.com/users/kamend/followers","following_url":"https://api.github.com/users/kamend/following","gists_url":"https://api.github.com/users/kamend/gists{/gist_id}","starred_url":"https://api.github.com/users/kamend/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kamend/subscriptions","organizations_url":"https://api.github.com/users/kamend/orgs","repos_url":"https://api.github.com/users/kamend/repos","events_url":"https://api.github.com/users/kamend/events{/privacy}","received_events_url":"https://api.github.com/users/kamend/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2013-02-12T06:49:51Z","updated_at":"2013-02-12T11:27:50Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hi guys,\r\nHere is something strange I am fighting with the last few days. I have a PointGrey Flea3 cam, which could run at 120 fps. I am trying to run a basic application under Windows 7, using their FlyCapture SDK, although the problem I am having is also present, if I run just the basic empty example application.\r\n\r\nBasically I am doing this, at the setup() of my application, I would set:\r\n\r\nofSetFrameRate(120);\r\nofSetVerticalSync(false);\r\n\r\nand what I would get is Openframeworks running at no more then ~64 fps. The really weird thing is that sometimes after a while, the application will start running at my desired rate, but if I restart, I am back at the ~64 fps limit. \r\n\r\nSo, I dug deeper into the matter and I noticed the Sleep() method inside the ofAppGlutWindow idle_cb function. When I set the frame rate to 120 fps, the idle_cb function correctly calculates that it has too sleep for 8ms and waitMillis is indeed 8ms, but for some reason the Sleep function could not get lower then 16 ms sleep, which I measured using a suggested on the forums more accurate timer - QueryPerformanceCounter. So, I guess the problem here is the resolution of the Sleep method and the most weird thing is that sometimes it would work, sometimes it would not. I tested this on my MacBook Pro and on my Desktop machine, so I guess it's not hardware related.\r\n\r\nI did another test too, setting ofSetFrameRate(0), bypassing the Sleep function. But then I get a resolution problem with ofGetElapsedTimef(), I still could not get a difference between the frames lower then 16ms. So I did another test with QueryPerformanceCounter and measured it against the ofGetElapsedTimef() inside the \"update()\" function and what I noticed is that when I set the FlyCaptureSDK to 120 fps, the application was indeed running in 120 frames per second, but OF was showing ~64fps. Basically the difference between frames using QueryPerformanceCounter was 8ms, but the difference measured with ofGetElapsedTimef was 16ms. Once again I should mention, that sometimes after like 10 minutes, I would get the resolution and the application showing correct frame rate, but when I restart it will be back at the ~64 fps limit. \r\n\r\nDoes anybody actually have this problem, is this a known issue or am I doing something completely wrong here?\r\n\r\nHere is the QueryPerformanceCode, I am usuing for measurement:\r\n\r\n```c++\r\nclass Timer {\r\npublic:\r\n\tdouble PCFreq;\r\n\tunsigned long long CounterStart;\r\n\r\n\tvoid StartTimer() {\r\n\t\t LARGE_INTEGER li;\r\n\t\t if(!QueryPerformanceFrequency(&li))\r\n\t\t\tcout << \"QueryPerformanceFrequency failed!\\n\";\r\n\r\n\t\t PCFreq = double(li.QuadPart)/1000.0;\r\n\r\n\t\t QueryPerformanceCounter(&li);\r\n\t\t CounterStart = li.QuadPart;\r\n\t}\r\n\r\n\tdouble Timer::GetElapsedTime()\r\n\t{\r\n\t\tLARGE_INTEGER li;\r\n\t\tQueryPerformanceCounter(&li);\r\n\t\treturn double(li.QuadPart-CounterStart)/PCFreq;\r\n\t}\r\n\r\n};\r\n```\r\nKeep up the good work,\r\nKamen\r\n\r\n\r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1871","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1871/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1871/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1871/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1871","id":10867389,"number":1871,"title":"ofFbo modifications to ease the use of Multiple Rendering Targets","user":{"login":"tobiasebsen","id":1135364,"avatar_url":"https://secure.gravatar.com/avatar/0084a00a1e20e0607a9f67d2d9b992c0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"0084a00a1e20e0607a9f67d2d9b992c0","url":"https://api.github.com/users/tobiasebsen","html_url":"https://github.com/tobiasebsen","followers_url":"https://api.github.com/users/tobiasebsen/followers","following_url":"https://api.github.com/users/tobiasebsen/following","gists_url":"https://api.github.com/users/tobiasebsen/gists{/gist_id}","starred_url":"https://api.github.com/users/tobiasebsen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tobiasebsen/subscriptions","organizations_url":"https://api.github.com/users/tobiasebsen/orgs","repos_url":"https://api.github.com/users/tobiasebsen/repos","events_url":"https://api.github.com/users/tobiasebsen/events{/privacy}","received_events_url":"https://api.github.com/users/tobiasebsen/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":20,"created_at":"2013-02-11T14:18:28Z","updated_at":"2013-03-11T10:02:48Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1871","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1871.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1871.patch"},"body":"These are just some small modifications that allows attaching textures and render-buffers of a custom format. Very useful for Multiple Rendering Targets and deferred shading."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1864","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1864/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1864/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1864/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1864","id":10771082,"number":1864,"title":"Libc++ support (C++11)","user":{"login":"caseybasichis","id":1331371,"avatar_url":"https://secure.gravatar.com/avatar/ce22b4fea19712236dfc590819931cb5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"ce22b4fea19712236dfc590819931cb5","url":"https://api.github.com/users/caseybasichis","html_url":"https://github.com/caseybasichis","followers_url":"https://api.github.com/users/caseybasichis/followers","following_url":"https://api.github.com/users/caseybasichis/following","gists_url":"https://api.github.com/users/caseybasichis/gists{/gist_id}","starred_url":"https://api.github.com/users/caseybasichis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/caseybasichis/subscriptions","organizations_url":"https://api.github.com/users/caseybasichis/orgs","repos_url":"https://api.github.com/users/caseybasichis/repos","events_url":"https://api.github.com/users/caseybasichis/events{/privacy}","received_events_url":"https://api.github.com/users/caseybasichis/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2013-02-08T08:19:15Z","updated_at":"2013-02-08T15:41:28Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Has anyone done any work towards implementing Libc++ compatibility with OF?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1863","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1863/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1863/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1863/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1863","id":10735641,"number":1863,"title":"ofFbo needs better support for MRT","user":{"login":"tobiasebsen","id":1135364,"avatar_url":"https://secure.gravatar.com/avatar/0084a00a1e20e0607a9f67d2d9b992c0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"0084a00a1e20e0607a9f67d2d9b992c0","url":"https://api.github.com/users/tobiasebsen","html_url":"https://github.com/tobiasebsen","followers_url":"https://api.github.com/users/tobiasebsen/followers","following_url":"https://api.github.com/users/tobiasebsen/following","gists_url":"https://api.github.com/users/tobiasebsen/gists{/gist_id}","starred_url":"https://api.github.com/users/tobiasebsen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tobiasebsen/subscriptions","organizations_url":"https://api.github.com/users/tobiasebsen/orgs","repos_url":"https://api.github.com/users/tobiasebsen/repos","events_url":"https://api.github.com/users/tobiasebsen/events{/privacy}","received_events_url":"https://api.github.com/users/tobiasebsen/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2013-02-07T12:58:49Z","updated_at":"2013-02-07T12:58:49Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofFbo does support MRT, but it is not very flexible i regards to targets of various formats, nor is it possible to set the format and attachment of the render buffer.\r\n\r\nI suggest:\r\n\r\n1. createAndAttachTexture() and createAndAttachRenderbuffer() are made public.\r\n2. adding a function called attachTexture(const ofTexture& tex) that allows attaching various types of textures.\r\n3. making all private variables and functions \"protected\", so that it becomes easier to inherit from ofFbo."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1862","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1862/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1862/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1862/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1862","id":10707231,"number":1862,"title":"dragEvent not working (ubuntu 12.04)","user":{"login":"juji","id":493553,"avatar_url":"https://secure.gravatar.com/avatar/f6a77c3e62fbc564fc8d480b413ee27f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"f6a77c3e62fbc564fc8d480b413ee27f","url":"https://api.github.com/users/juji","html_url":"https://github.com/juji","followers_url":"https://api.github.com/users/juji/followers","following_url":"https://api.github.com/users/juji/following","gists_url":"https://api.github.com/users/juji/gists{/gist_id}","starred_url":"https://api.github.com/users/juji/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/juji/subscriptions","organizations_url":"https://api.github.com/users/juji/orgs","repos_url":"https://api.github.com/users/juji/repos","events_url":"https://api.github.com/users/juji/events{/privacy}","received_events_url":"https://api.github.com/users/juji/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"state":"open","assignee":{"login":"underdoeg","id":243820,"avatar_url":"https://secure.gravatar.com/avatar/6ff8fe2dd72480f1685ee15e374205b7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"6ff8fe2dd72480f1685ee15e374205b7","url":"https://api.github.com/users/underdoeg","html_url":"https://github.com/underdoeg","followers_url":"https://api.github.com/users/underdoeg/followers","following_url":"https://api.github.com/users/underdoeg/following","gists_url":"https://api.github.com/users/underdoeg/gists{/gist_id}","starred_url":"https://api.github.com/users/underdoeg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/underdoeg/subscriptions","organizations_url":"https://api.github.com/users/underdoeg/orgs","repos_url":"https://api.github.com/users/underdoeg/repos","events_url":"https://api.github.com/users/underdoeg/events{/privacy}","received_events_url":"https://api.github.com/users/underdoeg/received_events","type":"User"},"milestone":null,"comments":7,"created_at":"2013-02-06T19:18:40Z","updated_at":"2013-02-07T15:09:14Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"OpenFrameWorks 0073 on Ubuntu 12.04\r\n\r\nI tried to build eventsExample from the examples folder\r\n\r\nEverything runs smoothly, except for dragEvent. I tried dragging some files, but the app does nothing. It simply doesn't work.\r\n\r\nIs this a bug? Or am I doing something wrong?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1853","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1853/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1853/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1853/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1853","id":10618951,"number":1853,"title":"openFrameworksCompiled lib codeblocks project file is broken","user":{"login":"benben","id":124513,"avatar_url":"https://secure.gravatar.com/avatar/6aed6a0dfa09b46d6fbd5149eb56def8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"6aed6a0dfa09b46d6fbd5149eb56def8","url":"https://api.github.com/users/benben","html_url":"https://github.com/benben","followers_url":"https://api.github.com/users/benben/followers","following_url":"https://api.github.com/users/benben/following","gists_url":"https://api.github.com/users/benben/gists{/gist_id}","starred_url":"https://api.github.com/users/benben/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/benben/subscriptions","organizations_url":"https://api.github.com/users/benben/orgs","repos_url":"https://api.github.com/users/benben/repos","events_url":"https://api.github.com/users/benben/events{/privacy}","received_events_url":"https://api.github.com/users/benben/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2013-02-04T18:16:57Z","updated_at":"2013-02-19T09:47:12Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"while letting my test run, I noticed that we need to update\r\n`libs/openFrameworksCompiled/project/win_cb/openFrameworksLib.cbp`\r\n\r\nThe start of codeblocks fails with the following error: http://forums.codeblocks.org/index.php?topic=15643.0\r\nIt only affects this file, examples with recently generated cbp files still work fine.\r\nMaybe we can fix this together with #1765.\r\n\r\nWin7 64bit, Codeblocks 10.05"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1847","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1847/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1847/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1847/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1847","id":10521990,"number":1847,"title":"ofVec, double precision?","user":{"login":"armadillu","id":167057,"avatar_url":"https://secure.gravatar.com/avatar/b87a82d7c86161432ee6388c7cbd5e2c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b87a82d7c86161432ee6388c7cbd5e2c","url":"https://api.github.com/users/armadillu","html_url":"https://github.com/armadillu","followers_url":"https://api.github.com/users/armadillu/followers","following_url":"https://api.github.com/users/armadillu/following","gists_url":"https://api.github.com/users/armadillu/gists{/gist_id}","starred_url":"https://api.github.com/users/armadillu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/armadillu/subscriptions","organizations_url":"https://api.github.com/users/armadillu/orgs","repos_url":"https://api.github.com/users/armadillu/repos","events_url":"https://api.github.com/users/armadillu/events{/privacy}","received_events_url":"https://api.github.com/users/armadillu/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2013-01-31T23:15:30Z","updated_at":"2013-02-04T21:04:58Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I'm working on a project where I need double precision. \r\n\r\nI've had a look at ofVec2f, ofVec3f and ofVec4f, and I see they are independent classes. Obviously the easy route would be to make more custom classes (ofVec2d, ofVec3d and ofVec4d); but it feels kinda wrong. \r\n\r\nMaybe it would make sense to template ofVec \"à la\" ofImage? (although that would be much more work, and most likely slower execution).\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1844","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1844/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1844/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1844/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1844","id":10444481,"number":1844,"title":"HLS m3u8 HTTP live streaming video","user":{"login":"philworthy","id":184730,"avatar_url":"https://secure.gravatar.com/avatar/b9a622912fd001089ee575f1479c3a30?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b9a622912fd001089ee575f1479c3a30","url":"https://api.github.com/users/philworthy","html_url":"https://github.com/philworthy","followers_url":"https://api.github.com/users/philworthy/followers","following_url":"https://api.github.com/users/philworthy/following","gists_url":"https://api.github.com/users/philworthy/gists{/gist_id}","starred_url":"https://api.github.com/users/philworthy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/philworthy/subscriptions","organizations_url":"https://api.github.com/users/philworthy/orgs","repos_url":"https://api.github.com/users/philworthy/repos","events_url":"https://api.github.com/users/philworthy/events{/privacy}","received_events_url":"https://api.github.com/users/philworthy/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":14,"created_at":"2013-01-30T03:11:38Z","updated_at":"2013-01-30T15:30:13Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hi.\r\nDoes anyone know how to get an m3u8 (HLS) HTTP live stream working in OpenFrameworks?\r\n\r\nI've tried tweaking the 'videoPlayerExample' but I get:\r\n```\r\nvideoPlayerExampleDebug[13103:707] Error Loading Movie: Error Domain=NSOSStatusErrorDomain Code=-2149 \"Not enough movie data is available.\" (notEnoughDataErr) UserInfo=0x3348ce0 {NSLocalizedDescription=Not enough movie data is available.} [ofQTKitPlayer:error] Loading file \r\n```\r\n\r\nFrom what I can tell QTKit (which I'm assuming is the guts under the OF video player) supports m3u8 but there's not much out there in the way of help (I found this article, which is not promising: http://4pcbr.com/topic/a_story_about_hls_video_handling).\r\n\r\nThere's also an existing thread on this here:\r\nhttps://github.com/openframeworks/openFrameworks/issues/897\r\nBut it seems to have gone dead a long time ago so posting again incase anyone's listening...\r\n\r\nAny help much appreciated.\r\nThanks"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1840","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1840/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1840/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1840/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1840","id":10371336,"number":1840,"title":"ofSaveURLAsync crashes on non-url","user":{"login":"companje","id":156066,"avatar_url":"https://secure.gravatar.com/avatar/30a7e135fe77636519d74d129c60e156?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"30a7e135fe77636519d74d129c60e156","url":"https://api.github.com/users/companje","html_url":"https://github.com/companje","followers_url":"https://api.github.com/users/companje/followers","following_url":"https://api.github.com/users/companje/following","gists_url":"https://api.github.com/users/companje/gists{/gist_id}","starred_url":"https://api.github.com/users/companje/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/companje/subscriptions","organizations_url":"https://api.github.com/users/companje/orgs","repos_url":"https://api.github.com/users/companje/repos","events_url":"https://api.github.com/users/companje/events{/privacy}","received_events_url":"https://api.github.com/users/companje/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2013-01-28T10:58:23Z","updated_at":"2013-01-28T11:40:11Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"when calling ofSaveURLAsync(\"test\",\"test\") the program crashes (at least on Windows CodeBlocks). When calling ofSaveURLAsync(\"http://test\",\"test\") it doesn't."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1839","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1839/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1839/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1839/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1839","id":10345768,"number":1839,"title":"ofxOsc and binding multiple processes to the same ip and port. SO_REUSEPORT regarding issue #722","user":{"login":"dirtRAID","id":3393421,"avatar_url":"https://secure.gravatar.com/avatar/6e2246fd52538b4c37169696e4ae04b4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"6e2246fd52538b4c37169696e4ae04b4","url":"https://api.github.com/users/dirtRAID","html_url":"https://github.com/dirtRAID","followers_url":"https://api.github.com/users/dirtRAID/followers","following_url":"https://api.github.com/users/dirtRAID/following","gists_url":"https://api.github.com/users/dirtRAID/gists{/gist_id}","starred_url":"https://api.github.com/users/dirtRAID/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dirtRAID/subscriptions","organizations_url":"https://api.github.com/users/dirtRAID/orgs","repos_url":"https://api.github.com/users/dirtRAID/repos","events_url":"https://api.github.com/users/dirtRAID/events{/privacy}","received_events_url":"https://api.github.com/users/dirtRAID/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2013-01-27T00:57:59Z","updated_at":"2013-01-27T09:50:55Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I have run into issue #722 while using oF 0073 on Linux 3.5.0-17. The problem is when binding more than one server process on the same IP to the same UDP port. This issue was raised by kylemcdonald https://github.com/openframeworks/openFrameworks/issues/722 The solution as proposed by ofTheo was to add \r\n\r\n//#ifdef __APPLE__\r\n\t\t\t// needed also for OS X - enable multiple listeners for a single port on same network interface\r\n\t\t\tint reusePort = 1; // int on posix\r\n\t\t\tsetsockopt(socket_, SOL_SOCKET, SO_REUSEPORT, &reusePort, sizeof(reusePort));\r\n//#endif\r\n\r\nto oscpack/src/ip/posix/UdpSocket.cpp\r\n\r\nThis does work, as it defines the SO_REUSEPORT property of the POSIX SOCKET API.\r\nThis is exactly the case where it should be used though it should be noted that this should not be limited to OSX, but also be enabled for OpenBSD, FreeBSD, and NetBSD.\r\n\r\nbilderbuchi ran ofTheo's fix regarding SO_REUSEADDR on Linux. I believe what he was seeing was that when SO_REUSEADDR is added, it will keep a process from exiting with an error. What is clear now is that the code was not tested for actually receiving. To bring everyone up to speed, from my research and understanding SO_REUSEADDR allows a process to bind to an IP address before it is freed. Without SO_REUSEADDR the process will crash when it tries to bind to the same IP. I was curious and created a unicast client and a listener with pyOSC. I did this to figure if this was an oF issue or an issue with how Linux implements UDP socket connections. I found that launching more than one instance of an OSC listener bound to the same IP and port would cause the second listener to crash. When going into the pyOSC code, i found it was calling SocketServer.py. Upon inspecting this code, I found that class UDPServer has a variable for allow_reuse_address = False. When I changed this to True my pyOSC server aka the listeners displayed the same behavior as seen by bilderbuchi. I noticed however that only the first running instance was able to receive information. Upon termination of the first instance, the second instance would then receive information. I then inspected to see what the POSIX SOCKET API had to say about the issue. The answer is to use SO_REUSEPORT as discovered by ofTheo. However, there is nowhere to set this on Linux without patching the kernel. The kernel needs to be patched to add SO_REUSEPORT to UDP. This has been raised on the kernel mailing lists, and has met resistance and questioning as to why it is needed. A perfect example is testing OSC communication on a local machine! \r\n\r\nIn summery it turns out that ofTheo's fix applies to all BSD operating systems. It also should be noted for Linux users running into this issue that SO_REUSEADDR is not a complete solution and that there will be no code portable solution for Linux until SO_REUSEPORT is added to the mainline kernel. There is code existing to add SO_REUSEPORT if the user wishes to compile on their own. SO_REUSPORT works well for UDP and needs improvement (from what I have read from the lists) for TCP. I have also seen from the lists that SO_REUPSORT is an aid to system performance. Security issues are raised by some of those on the mailing lists, with talk of having SO_REUSPORT being allowed only for threads with the same PID. I believe their reasoning is for security, but that would not help solve this issue. It would only prevent multiple threads of a process from running into this issue. In fact the POSIX API is clear that a process will only be able to bind to the same ip/port as another processes if they are both using SO_REUSEPORT.\r\n\r\nI hope this post is informative and helpful and hopefully we can contribute as a community in getting the Linux maintainers to add SO_REUSEPORT by default. Having end users recompile kernels does not help with portable code. I know there are other programmers that are asking for the same thing RIGHT NOW as this is a current issue for many other users regarding multiple processes bindings to the same IP and port. This is also a perfect example of how BSD is Unix and that Linux is something a little different. \r\n\r\nMy current solution involves creating servers that listen on unique ports and having the client transmit to multiple ports."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1836","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1836/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1836/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1836/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1836","id":10256802,"number":1836,"title":"fixed ofEasyCam so it works correctly when calling it´s disableMouseInpu...","user":{"login":"roymacdonald","id":974878,"avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","url":"https://api.github.com/users/roymacdonald","html_url":"https://github.com/roymacdonald","followers_url":"https://api.github.com/users/roymacdonald/followers","following_url":"https://api.github.com/users/roymacdonald/following","gists_url":"https://api.github.com/users/roymacdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/roymacdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/roymacdonald/subscriptions","organizations_url":"https://api.github.com/users/roymacdonald/orgs","repos_url":"https://api.github.com/users/roymacdonald/repos","events_url":"https://api.github.com/users/roymacdonald/events{/privacy}","received_events_url":"https://api.github.com/users/roymacdonald/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2013-01-24T00:17:33Z","updated_at":"2013-02-10T02:00:59Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1836","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1836.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1836.patch"},"body":"...t function in testApp::setup()\r\nthis was being discussed here https://github.com/openframeworks/openFrameworks/pull/1834"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1829","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1829/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1829/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1829/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1829","id":10154793,"number":1829,"title":"Feature Request: Add this iOS native example with storyboards & arc","user":{"login":"rc1","id":166915,"avatar_url":"https://secure.gravatar.com/avatar/014e191932079a5a496436bcd0a5d6c6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"014e191932079a5a496436bcd0a5d6c6","url":"https://api.github.com/users/rc1","html_url":"https://github.com/rc1","followers_url":"https://api.github.com/users/rc1/followers","following_url":"https://api.github.com/users/rc1/following","gists_url":"https://api.github.com/users/rc1/gists{/gist_id}","starred_url":"https://api.github.com/users/rc1/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rc1/subscriptions","organizations_url":"https://api.github.com/users/rc1/orgs","repos_url":"https://api.github.com/users/rc1/repos","events_url":"https://api.github.com/users/rc1/events{/privacy}","received_events_url":"https://api.github.com/users/rc1/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2013-01-21T12:16:54Z","updated_at":"2013-02-11T13:31:50Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hello,\r\n\r\nI have created an example project for iOS which uses storyboards and uses ARC (not OF, just the example project). The project repo is here: https://github.com/rc1/iosNativeStoryboardArc\r\n\r\nWould this be useful to have included in openFrameworks? If so I will integrate it into the oF's repo and create a PR.\r\n\r\nSome notes:\r\n\r\n1. It is based on the iOSNative example the develop branch.\r\n2. `[ofxiPhoneAppDelegate applicationDidFinishLaunching:app]` is not called as it creates a UIWindow, and instead the project's AppDelegate ([source here](https://github.com/rc1/iosNativeStoryboardArc/blob/master/src/AppDelegate.mm)) sets the data path and signs up for the nessicary events. This could either be a) left as it is, b) ofxiPhoneAppDelegate's `applicationDidFinishLaunching:` could maybe do inline detection of the storyboard, c) I could add `applicationDidFinishLaunching:withStoryboard:` or `applicationDidFinishLaunching:createWindow:` to ofxiPhoneAppDelegate.\r\n\r\nStoryboards are fantastic, and I think this is quite a nice solution for having *light* implementation of OF in a more UIKit iOS app, something that is missing for the example apps imo.\r\n\r\nThanks,\r\nRoss"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1828","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1828/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1828/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1828/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1828","id":10138126,"number":1828,"title":"feature request: adding tangents and binormals to ofMesh and ofVbo","user":{"login":"kalwalt","id":1275858,"avatar_url":"https://secure.gravatar.com/avatar/4ec3f9bd7d21934ccfbcc5242b786cd0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"4ec3f9bd7d21934ccfbcc5242b786cd0","url":"https://api.github.com/users/kalwalt","html_url":"https://github.com/kalwalt","followers_url":"https://api.github.com/users/kalwalt/followers","following_url":"https://api.github.com/users/kalwalt/following","gists_url":"https://api.github.com/users/kalwalt/gists{/gist_id}","starred_url":"https://api.github.com/users/kalwalt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kalwalt/subscriptions","organizations_url":"https://api.github.com/users/kalwalt/orgs","repos_url":"https://api.github.com/users/kalwalt/repos","events_url":"https://api.github.com/users/kalwalt/events{/privacy}","received_events_url":"https://api.github.com/users/kalwalt/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2013-01-20T16:53:50Z","updated_at":"2013-01-20T16:54:18Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"i think it will be useful if you need to apply a normal map and to do parallax mapping of a model imported. I solved this in the past with a GLSL shader that compute them inside the vertex shader. but this require an extra computation to the video card. Better should send precomputed tangents and binormals to the shader. Also if you have a model mesh with normal map you can't import it now with the assimp addon . Correct me if i'm wrong.\r\n\r\nWalter"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1826","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1826/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1826/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1826/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1826","id":10128488,"number":1826,"title":"Renaming ofGraphics methods to reflect operations (e.g. ofRect => ofDrawRectangle)","user":{"login":"jvcleave","id":150037,"avatar_url":"https://secure.gravatar.com/avatar/9c0384a91739bea093f453cf40a59742?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"9c0384a91739bea093f453cf40a59742","url":"https://api.github.com/users/jvcleave","html_url":"https://github.com/jvcleave","followers_url":"https://api.github.com/users/jvcleave/followers","following_url":"https://api.github.com/users/jvcleave/following","gists_url":"https://api.github.com/users/jvcleave/gists{/gist_id}","starred_url":"https://api.github.com/users/jvcleave/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jvcleave/subscriptions","organizations_url":"https://api.github.com/users/jvcleave/orgs","repos_url":"https://api.github.com/users/jvcleave/repos","events_url":"https://api.github.com/users/jvcleave/events{/privacy}","received_events_url":"https://api.github.com/users/jvcleave/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2013-01-19T19:23:28Z","updated_at":"2013-01-19T19:23:28Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"The idea is to provide clarity by renaming the shape drawing methods from\r\n````\r\nofTriangle\r\nofCircle\r\nofEllipse\r\nofLine\r\nofRect\r\nofRectRounded\r\nofSphere\r\nofBox\r\nofCone\r\n````\r\nto\r\n\r\n````\r\nofDrawTriangle\r\nofDrawCircle\r\nofDrawEllipse\r\nofDrawLine\r\nofDrawRectangle\r\nofDrawRoundedRectangle\r\nofDrawSphere\r\nofDrawBox\r\nofDrawCone\r\n````\r\n\r\ndiscussion on the of-dev mailing list: \r\nhttp://dev.openframeworks.cc/pipermail/of-dev-openframeworks.cc/2013-January/006377.html\r\n\r\nThere is also a related idea of a new ofDraw(...) function but since the above would just be renaming and deprecating I think it may be best to do a separate issue \r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1821","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1821/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1821/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1821/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1821","id":10113108,"number":1821,"title":"Proposal: More strict use of ofPoint / ofVec*f.","user":{"login":"bakercp","id":300484,"avatar_url":"https://secure.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","url":"https://api.github.com/users/bakercp","html_url":"https://github.com/bakercp","followers_url":"https://api.github.com/users/bakercp/followers","following_url":"https://api.github.com/users/bakercp/following","gists_url":"https://api.github.com/users/bakercp/gists{/gist_id}","starred_url":"https://api.github.com/users/bakercp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bakercp/subscriptions","organizations_url":"https://api.github.com/users/bakercp/orgs","repos_url":"https://api.github.com/users/bakercp/repos","events_url":"https://api.github.com/users/bakercp/events{/privacy}","received_events_url":"https://api.github.com/users/bakercp/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-2D","name":"section-2D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":6,"created_at":"2013-01-18T20:59:37Z","updated_at":"2013-01-30T15:07:58Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"With this great PR, #1819 it seems every more important to be a little more strict about our use of `ofPoint`. 90% of the time in the API (not a scientific estimate) we use `ofPoint/ofVec3f` when we mean `ofVec2f`. Since the `ofVec*f` notation can be a little confusing, I'd propose a ofPoint2D typedef of ofVec2f. Most 2D primitives (such as `ofRectangle`, the current version of `ofPolyline` are 2D in their current form.\r\n\r\nOut of curiosity, are people using the `.z` in ofPoint when using `ofRectangle`, etc? I can see how it might be more convenient. But `ofPoint` implies things that `ofRectangle` can't deliver (think `ofLineSegmentIntersection` etc).\r\n\r\nAlternatively, perhaps we should go the route of others (like cinder, toxiclibs, etc) and create a templated point / primitive, setup? From a data and drawing standpoint 2d is no different from 3d, but when we start doing functions like `inside()` or `intersects()` then we could subclass.\r\n\r\nAnyway, just throwing this out there for discussion -- perhaps this is part of the larger API discussion that @ofZach and others have in mind."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1816","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1816/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1816/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1816/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1816","id":10022540,"number":1816,"title":"bug in ofMesh removeIndex(), removeTexCoord(), removeColor();","user":{"login":"ascorbin","id":900709,"avatar_url":"https://secure.gravatar.com/avatar/9cff00ec4a5ef434ed3694c7f84b231b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"9cff00ec4a5ef434ed3694c7f84b231b","url":"https://api.github.com/users/ascorbin","html_url":"https://github.com/ascorbin","followers_url":"https://api.github.com/users/ascorbin/followers","following_url":"https://api.github.com/users/ascorbin/following","gists_url":"https://api.github.com/users/ascorbin/gists{/gist_id}","starred_url":"https://api.github.com/users/ascorbin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ascorbin/subscriptions","organizations_url":"https://api.github.com/users/ascorbin/orgs","repos_url":"https://api.github.com/users/ascorbin/repos","events_url":"https://api.github.com/users/ascorbin/events{/privacy}","received_events_url":"https://api.github.com/users/ascorbin/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2013-01-16T15:43:19Z","updated_at":"2013-01-17T23:20:28Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"its possible to have more indicies than vertices, so...\r\n\r\nin removeIndex(ofIndexType index)\r\n\r\nit must be\r\n\r\n//--------------------------------------------------------------\r\nvoid ofMesh::removeIndex(ofIndexType index){\r\n if(index >= indices.size()){\r\n ofLog(OF_LOG_ERROR,\"Trying to remove index out of range of this mesh. Taking no action.\");\r\n }else{\r\n indices.erase(indices.begin() + index);\r\n bIndicesChanged = true;\r\n }\r\n}\r\n\r\ninstead of \r\n\r\n//--------------------------------------------------------------\r\nvoid ofMesh::removeIndex(ofIndexType index){\r\n if(index >= vertices.size()){\r\n ofLog(OF_LOG_ERROR,\"Trying to remove index out of range of this mesh. Taking no action.\");\r\n }else{\r\n indices.erase(indices.begin() + index);\r\n bIndicesChanged = true;\r\n }\r\n}"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1815","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1815/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1815/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1815/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1815","id":9927313,"number":1815,"title":"android build error on develop","user":{"login":"danthemellowman","id":719564,"avatar_url":"https://secure.gravatar.com/avatar/79621943dfc6272eae9697464ad33696?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"79621943dfc6272eae9697464ad33696","url":"https://api.github.com/users/danthemellowman","html_url":"https://github.com/danthemellowman","followers_url":"https://api.github.com/users/danthemellowman/followers","following_url":"https://api.github.com/users/danthemellowman/following","gists_url":"https://api.github.com/users/danthemellowman/gists{/gist_id}","starred_url":"https://api.github.com/users/danthemellowman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danthemellowman/subscriptions","organizations_url":"https://api.github.com/users/danthemellowman/orgs","repos_url":"https://api.github.com/users/danthemellowman/repos","events_url":"https://api.github.com/users/danthemellowman/events{/privacy}","received_events_url":"https://api.github.com/users/danthemellowman/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/android","name":"android","color":"2bc4ad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":10,"created_at":"2013-01-13T22:10:27Z","updated_at":"2013-02-19T16:57:48Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I'm getting a build error when trying to compile the core for android. The compiler complains of \r\n\r\n #ifdef TARGET_ANDROID\r\n\t#include \r\n\r\nin `ofConstansh.h` line `169`\r\n\r\n@arturoc any ideas? \r\n\r\nhttps://gist.github.com/4526448\r\n\r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1813","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1813/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1813/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1813/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1813","id":9919536,"number":1813,"title":"Add Poco::ErrorHandler support to ofThread to catch uncaught in-thread exceptions.","user":{"login":"bakercp","id":300484,"avatar_url":"https://secure.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","url":"https://api.github.com/users/bakercp","html_url":"https://github.com/bakercp","followers_url":"https://api.github.com/users/bakercp/followers","following_url":"https://api.github.com/users/bakercp/following","gists_url":"https://api.github.com/users/bakercp/gists{/gist_id}","starred_url":"https://api.github.com/users/bakercp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bakercp/subscriptions","organizations_url":"https://api.github.com/users/bakercp/orgs","repos_url":"https://api.github.com/users/bakercp/repos","events_url":"https://api.github.com/users/bakercp/events{/privacy}","received_events_url":"https://api.github.com/users/bakercp/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2013-01-13T07:50:03Z","updated_at":"2013-03-09T16:39:38Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"This would be very helpful for debugging threads, as it seems that there are a few mysterious `ofThread`-related bugs around and they often have to do with uncaught exceptions.\r\n\r\nAn example of how it could be used / implemented / integrated is here: https://gist.github.com/4522874\r\n\r\nMore info here on Poco's ErrorHandler base class is here.\r\nhttp://pocoproject.org/slides/130-Threads.pdf\r\nhttp://www.appinf.com/docs/poco/Poco.ErrorHandler.html"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1810","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1810/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1810/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1810/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1810","id":9897631,"number":1810,"title":"update osx scripts to work with 071 folder structure","user":{"login":"thiagohersan","id":850815,"avatar_url":"https://secure.gravatar.com/avatar/b3d17564d4e5a5b5925aab9c8af761cf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b3d17564d4e5a5b5925aab9c8af761cf","url":"https://api.github.com/users/thiagohersan","html_url":"https://github.com/thiagohersan","followers_url":"https://api.github.com/users/thiagohersan/followers","following_url":"https://api.github.com/users/thiagohersan/following","gists_url":"https://api.github.com/users/thiagohersan/gists{/gist_id}","starred_url":"https://api.github.com/users/thiagohersan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/thiagohersan/subscriptions","organizations_url":"https://api.github.com/users/thiagohersan/orgs","repos_url":"https://api.github.com/users/thiagohersan/repos","events_url":"https://api.github.com/users/thiagohersan/events{/privacy}","received_events_url":"https://api.github.com/users/thiagohersan/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":8,"created_at":"2013-01-11T22:50:13Z","updated_at":"2013-01-16T18:34:18Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1810","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1810.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1810.patch"},"body":"and mimic the linux scripts.\r\n\r\ntested on os x 10.8.2.\r\n\r\ncloses #1693.\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1805","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1805/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1805/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1805/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1805","id":9811909,"number":1805,"title":"Moving binaries out of the repo","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/automation","name":"automation","color":"5d5d5d"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2013-01-09T16:56:10Z","updated_at":"2013-01-09T16:59:23Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Binaries bloat the repo cause they can't be diffed by git, so everytime you update a binary, you increase size by that file's size - text files just store the diff. The repo gets larger and slower and on a checkout users also have to pull all those old binary files down, too (primary problem according to TAZ).\r\n\r\nThis is a pretty big, difficult and long-term issue, so I collected my findings so far in a Wiki page: https://github.com/openframeworks/openFrameworks/wiki/Moving-binaries-out-of-the-repo (feel free to add your wisdom!), but I thought an issue would be more efficient for discussion."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1804","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1804/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1804/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1804/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1804","id":9798156,"number":1804,"title":"ofxOSC: Make bundles optional","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2013-01-09T09:31:05Z","updated_at":"2013-01-13T20:31:31Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Apparently, some libraries (e.g. Arduino's OSC library) can't deal with OSc bundles. while it would be more appropriate that those libraries are fixed (bundles are part of the official [spec](http://opensoundcontrol.org/spec-1_0)), we could in the meantime work around this limitation by introducing an option to skip wrapping bundles around every sent message [here](https://github.com/openframeworks/openFrameworks/blob/master/addons/ofxOsc/src/ofxOscSender.cpp#L83-L85)\r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,6563.msg42814.html#msg42814\r\nhttp://forum.openframeworks.cc/index.php/topic,11693.msg51583\r\n\r\nseems like an easy fix, could probably be implemented with an additional default argument `bool wrapInBundle = true` in `ofxOscSender::sendMessage` to not affect existing code."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1802","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1802/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1802/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1802/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1802","id":9779503,"number":1802,"title":"arm-linux (aka Raspberry Pi / e-nix / etc) branch tracking issue.","user":{"login":"bakercp","id":300484,"avatar_url":"https://secure.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","url":"https://api.github.com/users/bakercp","html_url":"https://github.com/bakercp","followers_url":"https://api.github.com/users/bakercp/followers","following_url":"https://api.github.com/users/bakercp/following","gists_url":"https://api.github.com/users/bakercp/gists{/gist_id}","starred_url":"https://api.github.com/users/bakercp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bakercp/subscriptions","organizations_url":"https://api.github.com/users/bakercp/orgs","repos_url":"https://api.github.com/users/bakercp/repos","events_url":"https://api.github.com/users/bakercp/events{/privacy}","received_events_url":"https://api.github.com/users/bakercp/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":2,"created_at":"2013-01-08T19:18:04Z","updated_at":"2013-02-19T16:57:16Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"This issue is here as a cross reference to the embedded / arm-linux branch here:\r\n\r\nhttps://github.com/openFrameworks-RaspberryPi/openFrameworks develop-raspberrypi branch\r\n\r\nWhen \"core\" issues are addressed / fixed, etc in that branch, we will list them here. When we merge the develop-raspberrypi branch into the core in the coming weeks / month it will make closing core easier.\r\n\r\nping @arturoc @jvcleave @danthemellowman @kawalt @bilderbuchi (and anyone else I've missed!)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1797","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1797/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1797/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1797/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1797","id":9716863,"number":1797,"title":"feature ofFog","user":{"login":"kalwalt","id":1275858,"avatar_url":"https://secure.gravatar.com/avatar/4ec3f9bd7d21934ccfbcc5242b786cd0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"4ec3f9bd7d21934ccfbcc5242b786cd0","url":"https://api.github.com/users/kalwalt","html_url":"https://github.com/kalwalt","followers_url":"https://api.github.com/users/kalwalt/followers","following_url":"https://api.github.com/users/kalwalt/following","gists_url":"https://api.github.com/users/kalwalt/gists{/gist_id}","starred_url":"https://api.github.com/users/kalwalt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kalwalt/subscriptions","organizations_url":"https://api.github.com/users/kalwalt/orgs","repos_url":"https://api.github.com/users/kalwalt/repos","events_url":"https://api.github.com/users/kalwalt/events{/privacy}","received_events_url":"https://api.github.com/users/kalwalt/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":6,"created_at":"2013-01-06T14:56:29Z","updated_at":"2013-01-15T13:47:52Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"i made this littlle addition to the core you can find here https://github.com/kalwalt/openFrameworks/tree/feature-kalwalt-ofFog\r\n , previuosly was an addon\r\n https://github.com/kalwalt/ofxFog\r\n\r\ni think there are some improvements to do. but i want to know if make sense to add it to the core lib or not.\r\nThe example itself i think could be improved adding others simple meshes to render in a better way the fog effect.\r\nlet me know what you think. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1796","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1796/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1796/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1796/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1796","id":9710132,"number":1796,"title":"drawEllipse mini bug","user":{"login":"roymacdonald","id":974878,"avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","url":"https://api.github.com/users/roymacdonald","html_url":"https://github.com/roymacdonald","followers_url":"https://api.github.com/users/roymacdonald/followers","following_url":"https://api.github.com/users/roymacdonald/following","gists_url":"https://api.github.com/users/roymacdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/roymacdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/roymacdonald/subscriptions","organizations_url":"https://api.github.com/users/roymacdonald/orgs","repos_url":"https://api.github.com/users/roymacdonald/repos","events_url":"https://api.github.com/users/roymacdonald/events{/privacy}","received_events_url":"https://api.github.com/users/roymacdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2013-01-05T21:50:42Z","updated_at":"2013-01-06T14:49:52Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I found this inside void ofGLRenderer::drawEllipse(float x, float y, float z, float width, float height)\r\n\r\n\t`vector & circleCache = circlePolyline.getVertices();\r\n\tfor(int i=0;i<(int)circleCache.size();i++){\r\n\t\tcirclePoints[i].set(radiusX*circlePolyline[i].x+x,radiusY*circlePolyline[i].y+y,z);\r\n\t}`\r\n\r\nIt makes no sense having circleCache as it is not being used besides getting it's size. Shouldn't this get removed or instead use inside the for loop the circleCache intead of circlePolyline to retrieve the vertices?\r\n draw circle actually uses the circle cache.\r\n`ofGLRenderer::drawCircle(float x, float y, float z, float radius){\r\n\tvector & circleCache = circlePolyline.getVertices();\r\n\tfor(int i=0;i<(int)circleCache.size();i++){\r\n\t\tcirclePoints[i].set(radius*circleCache[i].x+x,radius*circleCache[i].y+y,z);\r\n\t}`\r\n\r\nwouldn't it be better that draw circle calls drawEllipse and passes the radius as the height and width?\r\ndoes the 2 extra multiplications involved make it not so optimal?\r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1795","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1795/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1795/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1795/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1795","id":9707648,"number":1795,"title":"Feature shader include","user":{"login":"chparsons","id":298082,"avatar_url":"https://secure.gravatar.com/avatar/b320a570028e58a10abedd141ee63668?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b320a570028e58a10abedd141ee63668","url":"https://api.github.com/users/chparsons","html_url":"https://github.com/chparsons","followers_url":"https://api.github.com/users/chparsons/followers","following_url":"https://api.github.com/users/chparsons/following","gists_url":"https://api.github.com/users/chparsons/gists{/gist_id}","starred_url":"https://api.github.com/users/chparsons/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chparsons/subscriptions","organizations_url":"https://api.github.com/users/chparsons/orgs","repos_url":"https://api.github.com/users/chparsons/repos","events_url":"https://api.github.com/users/chparsons/events{/privacy}","received_events_url":"https://api.github.com/users/chparsons/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":5,"created_at":"2013-01-05T17:18:44Z","updated_at":"2013-03-11T07:55:48Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1795","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1795.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1795.patch"},"body":"see https://github.com/openframeworks/openFrameworks/issues/1731#issuecomment-11916584\r\n\r\nofShader support for #pragma includes, currenlty working only with shaders loading from files, includes from inside shaders keep the same path logic as ofShader::load and ofShader::setupShaderFromFile, i.e. it uses the OF data path.."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1793","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1793/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1793/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1793/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1793","id":9696212,"number":1793,"title":"Feature save load camera","user":{"login":"roymacdonald","id":974878,"avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","url":"https://api.github.com/users/roymacdonald","html_url":"https://github.com/roymacdonald","followers_url":"https://api.github.com/users/roymacdonald/followers","following_url":"https://api.github.com/users/roymacdonald/following","gists_url":"https://api.github.com/users/roymacdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/roymacdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/roymacdonald/subscriptions","organizations_url":"https://api.github.com/users/roymacdonald/orgs","repos_url":"https://api.github.com/users/roymacdonald/repos","events_url":"https://api.github.com/users/roymacdonald/events{/privacy}","received_events_url":"https://api.github.com/users/roymacdonald/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2013-01-04T22:01:03Z","updated_at":"2013-01-04T22:01:03Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1793","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1793.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1793.patch"},"body":"save and load methods for ofCamera and ofEasyCam.\r\nofEasyCam inherits from ofCamera and and also saves several other parameters.\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1790","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1790/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1790/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1790/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1790","id":9682798,"number":1790,"title":"ofImage::draw doesn't work on windows XP","user":{"login":"jsheperd","id":2662055,"avatar_url":"https://secure.gravatar.com/avatar/10a544e0d54efdf22dc0f055ca488bd0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"10a544e0d54efdf22dc0f055ca488bd0","url":"https://api.github.com/users/jsheperd","html_url":"https://github.com/jsheperd","followers_url":"https://api.github.com/users/jsheperd/followers","following_url":"https://api.github.com/users/jsheperd/following","gists_url":"https://api.github.com/users/jsheperd/gists{/gist_id}","starred_url":"https://api.github.com/users/jsheperd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jsheperd/subscriptions","organizations_url":"https://api.github.com/users/jsheperd/orgs","repos_url":"https://api.github.com/users/jsheperd/repos","events_url":"https://api.github.com/users/jsheperd/events{/privacy}","received_events_url":"https://api.github.com/users/jsheperd/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":13,"created_at":"2013-01-04T15:15:11Z","updated_at":"2013-01-08T10:41:46Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"\r\nexamples/graphics/blendingExample shows only an empty squere at the cursor position on XP (win32).\r\nI have moved the /bin distro folder to another XP, and I have seen the same result.\r\n\r\nI have checked with v0072 and v0073 on my XP and on my Win7 too.\r\n\r\nSo the next thing works on windows7, but not on XP:\r\n\r\nvoid testApp::draw(){\r\n ofImage test;\r\n test.loadImage(\"rainbow.jpg\");\r\n test.draw(mouseX, mouseY, 100, 100);\r\n}\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1780","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1780/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1780/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1780/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1780","id":9590453,"number":1780,"title":"setText bug in ofxiPhoneKeyboard ","user":{"login":"jvcleave","id":150037,"avatar_url":"https://secure.gravatar.com/avatar/9c0384a91739bea093f453cf40a59742?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"9c0384a91739bea093f453cf40a59742","url":"https://api.github.com/users/jvcleave","html_url":"https://github.com/jvcleave","followers_url":"https://api.github.com/users/jvcleave/followers","following_url":"https://api.github.com/users/jvcleave/following","gists_url":"https://api.github.com/users/jvcleave/gists{/gist_id}","starred_url":"https://api.github.com/users/jvcleave/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jvcleave/subscriptions","organizations_url":"https://api.github.com/users/jvcleave/orgs","repos_url":"https://api.github.com/users/jvcleave/repos","events_url":"https://api.github.com/users/jvcleave/events{/privacy}","received_events_url":"https://api.github.com/users/jvcleave/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-12-31T09:34:59Z","updated_at":"2012-12-31T09:34:59Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"just copying this from the forum - my searches didn't turn up anything\r\n\r\nfrom\r\nhttp://forum.openframeworks.cc/index.php/topic,11561.0/topicseen.html\r\n\r\nHi folks,\r\n\r\nFound a bug in setting the text in textfields, in OF0073.\r\n\r\nIf you just use the normal setText method it just displays it temporarily (as if you're still editing) and doesn't save it.\r\nYou can check this by trying a getText immediately after the setText and you'll see the getText returns null. getLabelText returns the setText value, but as soon as you close the textfield, that value is gone.\r\n\r\nSo, if you want your setText to store the value immediately upon setting, you need to do this:\r\n\r\nIn ofxiPhoneKeyboard.mm:\r\n\r\n```\r\n- (void) setText: (NSString *)text \r\n{ \r\n [_textField setText:text]; \r\n \r\n} \r\n```\r\nNew code:\r\n```\r\n- (void) setText: (NSString *)text \r\n{ \r\n [_textField setText:text]; \r\n [self textFieldDidEndEditing:_textField]; \r\n \r\n} \r\n```\r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1779","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1779/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1779/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1779/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1779","id":9578914,"number":1779,"title":"add an example of a single-file project","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":7,"created_at":"2012-12-30T01:00:34Z","updated_at":"2012-12-30T12:21:53Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"my current starting point for prototyping new ideas with OF looks like this:\r\n\r\n````c++\r\n#include \"ofAppGlutWindow.h\"\r\n#include \"ofMain.h\"\r\n\r\nclass ofApp : public ofBaseApp {\r\npublic:\r\n\tvoid setup() {\r\n\t}\r\n\tvoid update() {\r\n\t}\r\n\tvoid draw() {\r\n\t}\r\n};\r\n\r\nint main() {\r\n\tofAppGlutWindow window;\r\n\tofSetupOpenGL(&window, 1280, 720, OF_WINDOW);\r\n\tofRunApp(new ofApp());\r\n}\r\n````\r\n\r\nthat's a single-file project contained entirely in a `main.cpp`. i like it because it means i don't have to answer questions like \"should this go in the header or not\" when i'm only prototyping a small idea.\r\n\r\n@bilderbuchi just suggested that it might be helpful to have a minimal example like this in the `examples` folder to show people how they might construct a single-file example for reporting bugs or suggesting features (for example like https://github.com/openframeworks/openFrameworks/issues/1674#issuecomment-11756116). i think that could be really cool, and i'd be glad to add this if other people are also interested. so this issue is more to gauge interest.\r\n\r\np.s.: as an aside, it would be cool if we had a macro like this:\r\n\r\n````c++\r\n#define ofStart(appName, width, height, windowMode) \\\r\nint main() {\\\r\n\tofAppGlutWindow window;\\\r\n\tofSetupOpenGL(&window, width, height, windowMode);\\\r\n\tofRunApp(new appName());\\\r\n}\r\n````\r\n\r\nand `ofMain.h` included `ofAppGlutWindow.h`, then a minimal single-file example would look like:\r\n\r\n````c++\r\n#include \"ofMain.h\"\r\nclass ofApp : public ofBaseApp {\r\npublic:\r\n\tvoid setup() {}\r\n\tvoid update() {}\r\n\tvoid draw() {}\r\n};\r\nofStart(ofApp, 1280, 720, OF_WINDOW);\r\n````\r\n\r\nthis idea is from cinder, which uses:\r\n\r\n````c++\r\n#if defined( CINDER_MAC )\r\n\t#define CINDER_APP_BASIC( APP, RENDERER )\t\t\t\t\t\t\t\t\\\r\n\tint main( int argc, char * const argv[] ) {\t\t\t\t\t\t\t\t\\\r\n\t\tcinder::app::AppBasic::prepareLaunch();\t\t\t\t\t\t\t\t\\\r\n\t\tcinder::app::AppBasic *app = new APP;\t\t\t\t\t\t\t\t\\\r\n\t\tcinder::app::Renderer *ren = new RENDERER;\t\t\t\t\t\t\t\\\r\n\t\tcinder::app::AppBasic::executeLaunch( app, ren, #APP, argc, argv );\t\\\r\n\t\tcinder::app::AppBasic::cleanupLaunch();\t\t\t\t\t\t\t\t\\\r\n\t\treturn 0;\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\\\r\n\t}\r\n...\r\n````"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1778","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1778/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1778/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1778/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1778","id":9578598,"number":1778,"title":"ofQTKitPlayer crash with ofxCocoaWindow","user":{"login":"ascorbin","id":900709,"avatar_url":"https://secure.gravatar.com/avatar/9cff00ec4a5ef434ed3694c7f84b231b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"9cff00ec4a5ef434ed3694c7f84b231b","url":"https://api.github.com/users/ascorbin","html_url":"https://github.com/ascorbin","followers_url":"https://api.github.com/users/ascorbin/followers","following_url":"https://api.github.com/users/ascorbin/following","gists_url":"https://api.github.com/users/ascorbin/gists{/gist_id}","starred_url":"https://api.github.com/users/ascorbin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ascorbin/subscriptions","organizations_url":"https://api.github.com/users/ascorbin/orgs","repos_url":"https://api.github.com/users/ascorbin/repos","events_url":"https://api.github.com/users/ascorbin/events{/privacy}","received_events_url":"https://api.github.com/users/ascorbin/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":7,"created_at":"2012-12-29T23:54:21Z","updated_at":"2013-01-01T00:33:33Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"always after a while this crashes:\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::setup() {\r\n\r\nmov.loadMovie(\"movies/#4.6.mov\", OF_QTKIT_DECODE_TEXTURE_ONLY);\r\nmov.play();\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::update() {\r\n\r\nmov.update();\r\n\r\nmov.setPosition(ofRandom(1.0));\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::draw() {\r\n\r\nmov.draw(20, 20, 320, 160);\r\n}\r\n\r\na multithread/openGL problem?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1772","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1772/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1772/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1772/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1772","id":9525221,"number":1772,"title":"ios main.mm examples are a bit inconsistant (examples vs template, etc)","user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2012-12-26T18:55:19Z","updated_at":"2012-12-27T17:12:22Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"\r\nthe template for IOS and the main.mm for some of the examples are not the same, so it's hard to tell what the best main.mm is... I am making new projects with the project generator and they have the thin main.mm below (no window generation / window options)....\r\n\r\nthere are currently two, which seem to be iphone / ipad specific: \r\n\r\n #include \"ofMain.h\"\r\n #include \"testApp.h\"\r\n\r\n int main(){\r\n ofAppiPhoneWindow * iOSWindow = new ofAppiPhoneWindow();\r\n \r\n iOSWindow->enableAntiAliasing(4);\r\n \r\n iOSWindow->enableRetinaSupport();\r\n \r\n ofSetupOpenGL(iOSWindow, 480, 320, OF_FULLSCREEN);\r\n ofRunApp(new testApp);\r\n }\r\n\r\nvs\r\n\r\n #include \"ofMain.h\"\r\n #include \"testApp.h\"\r\n\r\n int main(){\r\n ofSetupOpenGL(1024,768, OF_FULLSCREEN);\t\t\t// <-------- setup the GL context\r\n\r\n ofRunApp(new testApp);\r\n }\r\n\r\nI wonder if it would help things to standardize the main.mm and just have some #define for ipad vs iphone target or some commented out section explaining what to use when. \r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1771","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1771/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1771/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1771/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1771","id":9520595,"number":1771,"title":"ofxCvImage::erode(int value) support","user":{"login":"yty","id":841770,"avatar_url":"https://secure.gravatar.com/avatar/a8010f501bbf6646afd69a8c3afc773a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"a8010f501bbf6646afd69a8c3afc773a","url":"https://api.github.com/users/yty","html_url":"https://github.com/yty","followers_url":"https://api.github.com/users/yty/followers","following_url":"https://api.github.com/users/yty/following","gists_url":"https://api.github.com/users/yty/gists{/gist_id}","starred_url":"https://api.github.com/users/yty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yty/subscriptions","organizations_url":"https://api.github.com/users/yty/orgs","repos_url":"https://api.github.com/users/yty/repos","events_url":"https://api.github.com/users/yty/events{/privacy}","received_events_url":"https://api.github.com/users/yty/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2012-12-26T12:58:23Z","updated_at":"2012-12-28T22:48:23Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I hope everyone agrees dilate and erode setting values...\r\n\r\nvoid ofxCvImage::erode(int value) {\r\n\tif( !bAllocated ){\r\n\t\tofLog(OF_LOG_ERROR, \"in erode, need to allocate image first\");\r\n\t\treturn;\t\t\r\n\t}\r\n\tcvErode( cvImage, cvImageTemp, 0, value );\r\n\tswapTemp();\r\n flagImageChanged();\r\n}\r\nvoid ofxCvImage::dilate(int value) {\r\n\tif( !bAllocated ){\r\n\t\tofLog(OF_LOG_ERROR, \"in dilate, need to allocate image first\");\r\n\t\treturn;\t\t\r\n\t}\r\n\tcvDilate( cvImage, cvImageTemp, 0, value );\r\n\tswapTemp();\r\n flagImageChanged();\r\n}\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1766","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1766/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1766/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1766/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1766","id":9476871,"number":1766,"title":"ofMesh draw wireframe with indices on IOS","user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2012-12-21T21:56:10Z","updated_at":"2012-12-22T00:43:30Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"test code: \r\n\r\n ofEnableAlphaBlending();\r\n \r\n ofMesh temp;\r\n temp.setMode(OF_PRIMITIVE_TRIANGLES);\r\n \r\n temp.addVertex( ofPoint(200,500));\r\n temp.addVertex( ofPoint(300,500));\r\n temp.addVertex( ofPoint(250,550));\r\n temp.addVertex( ofPoint(300,550));\r\n temp.addVertex( ofPoint(250,600));\r\n \r\n temp.addIndex(0);\r\n temp.addIndex(1);\r\n temp.addIndex(2);\r\n \r\n temp.addIndex(1);\r\n temp.addIndex(2);\r\n temp.addIndex(3);\r\n \r\n temp.addIndex(2);\r\n temp.addIndex(3);\r\n temp.addIndex(4);\r\n \r\n ofSetColor(255,255,255, 60);\r\n \r\n temp.draw();\r\n \r\n ofSetColor(255,0,0);\r\n \r\n temp.drawWireframe();\r\n\r\nproduces odd output on IOS\r\n\r\n![Screen Shot 2012-12-21 at 4 52 23 PM](https://f.cloud.github.com/assets/142897/27977/0d410a5a-4bb9-11e2-904e-15467311fd05.png)\r\n\r\nvs desktop\r\n\r\n![Screen Shot 2012-12-21 at 4 52 39 PM](https://f.cloud.github.com/assets/142897/27978/17d47902-4bb9-11e2-9951-7b3b9a2ad68f.png)\r\n\r\nI've seen glitchier things w/ mesh.drawWireframe() on ios when the mesh has indices, this is just a simple test to show that something's not totally right. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1760","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1760/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1760/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1760/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1760","id":9381371,"number":1760,"title":"Include xcode project for building .framework on os x. ","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"state":"open","assignee":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":1,"created_at":"2012-12-18T20:51:06Z","updated_at":"2013-02-11T12:12:38Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Would be useful for other projects which might use OF internally. \r\nWe would ship an xcode project which would compile and build a .framework. \r\n\r\nWhen we add 64 bit support we could have a 32bit and 64bit target . "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1759","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1759/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1759/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1759/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1759","id":9357318,"number":1759,"title":"glPushAttrib causing slow rendering of ofMesh","user":{"login":"NickHardeman","id":142694,"avatar_url":"https://secure.gravatar.com/avatar/4fc88ba881fee72fc4c5de473dc2ebbf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"4fc88ba881fee72fc4c5de473dc2ebbf","url":"https://api.github.com/users/NickHardeman","html_url":"https://github.com/NickHardeman","followers_url":"https://api.github.com/users/NickHardeman/followers","following_url":"https://api.github.com/users/NickHardeman/following","gists_url":"https://api.github.com/users/NickHardeman/gists{/gist_id}","starred_url":"https://api.github.com/users/NickHardeman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/NickHardeman/subscriptions","organizations_url":"https://api.github.com/users/NickHardeman/orgs","repos_url":"https://api.github.com/users/NickHardeman/repos","events_url":"https://api.github.com/users/NickHardeman/events{/privacy}","received_events_url":"https://api.github.com/users/NickHardeman/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2012-12-18T04:39:24Z","updated_at":"2012-12-18T08:55:18Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"glPushAttrib appears to be slowing down rendering quite a bit.\r\nI have a considerable amount of box meshes that I am rendering perfectly fine at 60fps. I switched over to rendering a single ofMesh many times that only has 6 verts and it drops the frame rate in half.\r\n\r\nI am using OF 0073 official release, non-git version.\r\n\r\nWhen I comment out glPushAttrib in ofGLRenderer, it jumps back up to 60fps\r\n\r\nhttps://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/gl/ofGLRenderer.cpp#L71-L76\r\n\r\nThoughts on addressing this issue?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1758","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1758/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1758/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1758/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1758","id":9325250,"number":1758,"title":"Xcode MacOSX - iOS use \"rysnc\" rather than \"cp\" when copying \"bin/data\" files","user":{"login":"danoli3","id":830748,"avatar_url":"https://secure.gravatar.com/avatar/b644be9646f09db836ef8e1339a7ed4e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b644be9646f09db836ef8e1339a7ed4e","url":"https://api.github.com/users/danoli3","html_url":"https://github.com/danoli3","followers_url":"https://api.github.com/users/danoli3/followers","following_url":"https://api.github.com/users/danoli3/following","gists_url":"https://api.github.com/users/danoli3/gists{/gist_id}","starred_url":"https://api.github.com/users/danoli3/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danoli3/subscriptions","organizations_url":"https://api.github.com/users/danoli3/orgs","repos_url":"https://api.github.com/users/danoli3/repos","events_url":"https://api.github.com/users/danoli3/events{/privacy}","received_events_url":"https://api.github.com/users/danoli3/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"state":"open","assignee":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":3,"created_at":"2012-12-17T06:46:19Z","updated_at":"2013-02-28T07:11:23Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Rsync offers faster speed overall in build times when copying files over to the device or to the target.\r\nIt uses compressed transfers, checksum comparisons (so not re-copying the same unchanged files over and over again) and is even used by Xcode when transferring files linked in projects structure\r\n\r\nProposed change to Run Script:\r\nrsync -avz --exclude='.DS_Store' \"${SRCROOT}/bin/data/\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}\"\r\n\r\nManual page for Rsync:\r\nhttp://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPages/man1/rsync.1.html\r\n\r\nThe current run script is:\r\ncp -rf bin/data/ \"$TARGET_BUILD_DIR/$PRODUCT_NAME.app\"\r\n\r\nManual page for cp:\r\nhttp://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPages/man1/cp.1.html\r\n\r\n\r\nThis system still has the same problem as the \"cp\" command by not removing files in the target location that have been removed from the source directory. (Which can only currently be resolved by cleaning the project, or manually deleting the files in the app structure).\r\n\r\nRysnc does allow for you though to delete everything within the destination folder / app other than certain files and folders, so this could be adapted to not delete Xcode objects / folders however I think the clean method is okay for now.\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1756","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1756/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1756/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1756/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1756","id":9296156,"number":1756,"title":"ofTexture needs massive cleanup.","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/code-review","name":"code-review","color":"d7e102"}],"state":"open","assignee":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":0,"created_at":"2012-12-14T20:14:04Z","updated_at":"2013-02-11T12:12:37Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofTexture is still very arbitrary, messy and inconsistent. \r\n\r\nThere are some very strange things like:\r\n- isAllocate() and bAllocated()\r\n- ofSetMinMagFilters() which is immediate and doesn't actually write to variables\r\n- same with the global clamping methods. \r\n- a ton of static functions at the top of the cpp\r\n- too many #ifdef OPENGLES \r\n- duplicated allocate code \r\n- mipmaps only if texture compression is set ( should be sep ) \r\n- also no mipmaps for ES \r\n- supports arbitrary GL formats. we need a better way of handling a large number of formats. \r\n\r\nOutstanding ofTexture issues ( note this list doesn't mean we should implement all suggestions )\r\n#1696\r\n#228 \r\n#810\r\n#454\r\n#292\r\n#1175\r\n\r\nI'm going to take a stab at doing a major cleanup.\r\nWill add it as a PR once there is some stuff to review. \r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1753","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1753/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1753/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1753/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1753","id":9242589,"number":1753,"title":"ofMatrix4x4 getScale - possible bug","user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2012-12-13T05:00:09Z","updated_at":"2012-12-14T09:03:21Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"hey, noticed some strange behaviour in ofMatrix4x4 when retrieving the matrix scale via getScale.\r\n\r\nso i have two matrices which im tweening/interpolating between.\r\non the two tween keyframes the matrices are correct... i know this because im rendering a sprite on each keyframe and the sprite is scaled correctly like im expecting it be.\r\n\r\nproblem occurs when im interpolating between the two keyframes.\r\ni get the scale for the keyframe matrices, interpolate the scale and then create another matrix with the interpolated scale... and things are looking dodgy. so it has to be something going wrong with either setting the scale on a matrix or getting the scale from the matrix.\r\n\r\ncurrently getScale is looking like this,\r\n\r\n`inline ofVec3f ofMatrix4x4::getScale() const {`\r\n`\tofVec3f x_vec(_mat[0][0], _mat[1][0], _mat[2][0]);`\r\n`\tofVec3f y_vec(_mat[0][1], _mat[1][1], _mat[2][1]);`\r\n`\tofVec3f z_vec(_mat[0][2], _mat[1][2], _mat[2][2]);`\r\n`\treturn ofVec3f(x_vec.length(), y_vec.length(), z_vec.length());`\r\n`}`\r\n\r\nbut when changing to this, im getting the expected result\r\n\r\n`inline ofVec3f ofMatrix4x4::getScale() const {`\r\n`\tofVec3f x_vec(_mat[0][0], _mat[0][1], _mat[0][2]);`\r\n`\tofVec3f y_vec(_mat[1][0], _mat[1][1], _mat[1][2]);`\r\n`\tofVec3f z_vec(_mat[2][0], _mat[2][1], _mat[2][2]);`\r\n`\treturn ofVec3f(x_vec.length(), y_vec.length(), z_vec.length());`\r\n`}`\r\n\r\nbug?\r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1748","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1748/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1748/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1748/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1748","id":9176471,"number":1748,"title":"the deprecation macros break the documentation","user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2012-12-11T11:28:19Z","updated_at":"2012-12-12T11:12:29Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"doxygen can't parse that kind of macro correctly so those functions break the docs.\r\n\r\nby now i've just removed everything deprecated "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1746","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1746/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1746/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1746/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1746","id":9174429,"number":1746,"title":"New Android Application: cp: cannot stat `bin/OFActivity-debug.apk': No such file or directory","user":{"login":"MinaSamy","id":1730084,"avatar_url":"https://secure.gravatar.com/avatar/b1e6404b0066c34f91df1c5a0c4b140d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b1e6404b0066c34f91df1c5a0c4b140d","url":"https://api.github.com/users/MinaSamy","html_url":"https://github.com/MinaSamy","followers_url":"https://api.github.com/users/MinaSamy/followers","following_url":"https://api.github.com/users/MinaSamy/following","gists_url":"https://api.github.com/users/MinaSamy/gists{/gist_id}","starred_url":"https://api.github.com/users/MinaSamy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MinaSamy/subscriptions","organizations_url":"https://api.github.com/users/MinaSamy/orgs","repos_url":"https://api.github.com/users/MinaSamy/repos","events_url":"https://api.github.com/users/MinaSamy/events{/privacy}","received_events_url":"https://api.github.com/users/MinaSamy/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/android","name":"android","color":"2bc4ad"}],"state":"open","assignee":null,"milestone":null,"comments":14,"created_at":"2012-12-11T10:04:14Z","updated_at":"2013-01-03T19:08:19Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I receive an error when I create a new android project then try to run it.\r\nthe steps I followed are:\r\n\r\n1-Creat: a new Android application by copying an existing project from the examples.\r\n2-Change the default package name to: cc.openframeworks.[your app name]\r\n3-Rename the package from eclipse.\r\n4-run android.bat update command to update the build.xml and local.properties\r\n4-The application is built successfully and libraries are generated in the libs folder.\r\n\r\nWhen I run using AndroidInstall I receive the following error:\r\nBUILD SUCCESSFUL\r\nTotal time: 13 seconds\r\ncp bin/OFActivity-debug.apk bin/androidTest.apk\r\ncp: cannot stat `bin/OFActivity-debug.apk': No such file or directory\r\nmake: *** [AndroidInstall] Error 1\r\n\r\nwhat can be wrong here ?\r\n\r\nUPDATE:\r\nafter investigating the make files, I believe it has something to do with the Makefile.android in the libs/openFrameworksCompiled/projet/makefileCommmon directory\r\nstarting from line 162:\r\n\r\nif [ -f obj/$(BIN_NAME) ]; then rm obj/$(BIN_NAME); fi\r\n\t#touch AndroidManifest.xml\r\n\tif [ \"$(shell uname)\" = \"MINGW32_NT-6.1\" ]; then \\\r\n\tcmd //c $(SDK_ROOT)/tools/android.bat update project --target $(NDK_PLATFORM) --path $(PROJECT_PATH); \\\r\n\telse \\\r\n\t$(SDK_ROOT)/tools/android update project --target $(NDK_PLATFORM) --path $(PROJECT_PATH); \\\r\n\tfi\r\n\tif [ -d bin/classes ]; then rm -r bin/classes; fi\r\n\tif [ -d bin/res ]; then rm -r bin/res; fi\r\n\tif [ -f bin/classes.dex ]; then rm bin/classes.dex; fi\r\n\tif [ -f bin/classes.dex.d ]; then rm bin/classes.dex.d; fi\r\n\tif [ -f bin/OFActivity.ap_ ]; then rm bin/OFActivity.ap_; fi\r\n\tif [ -f bin/OFActivity.ap_.d ]; then rm bin/OFActivity.ap_.d; fi\r\n\tif [ -f bin/OFActivity-debug.apk ]; then rm bin/OFActivity-debug.apk; fi\r\n\tif [ -f bin/OFActivity-debug-unaligned.apk ]; then rm bin/OFActivity-debug-unaligned.apk; fi\r\n\tif [ -f bin/OFActivity-debug-unaligned.apk.d ]; then rm bin/OFActivity-debug-unaligned.apk.d; fi\r\n\tif [ -f bin/$(APPNAME).apk ]; then rm bin/$(APPNAME).apk; fi\r\n\tif [ -f bin/build.prop ]; then rm bin/build.prop; fi\r\n\tif [ -f bin/jarlist.cache ]; then rm bin/jarlist.cache; fi\r\n\tif [ \"$(shell uname)\" = \"MINGW32_NT-6.1\" ]; then \\\r\n\t$(ANT_BIN)/ant debug; \\"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1744","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1744/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1744/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1744/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1744","id":9173651,"number":1744,"title":"ofMesh drawWireframe","user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2012-12-11T09:27:24Z","updated_at":"2012-12-11T16:46:04Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"i came across an issue today when trying to draw a ofMesh wireframe.\r\nwhen the wireframe is drawn inside ofGLRenderer, the draw mode is always set to GL_LINES.\r\nbut the result was an incomplete wireframe.\r\nwhen i set the draw mode to GL_LINE_STRIP it was rendering correctly.\r\n\r\nhttps://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/gl/ofGLRenderer.cpp#L101\r\n\r\ni think when choosing between GL_LINES and GL_LINE_STRIP to draw wireframes,\r\nit depends on the way the triangle vertices are stores,\r\nOF_PRIMITIVE_TRIANGLES, OF_PRIMITIVE_TRIANGLE_STRIP etc...\r\nbut this is a bit of a guess atm... \r\nhas anyone else come across this?\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1743","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1743/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1743/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1743/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1743","id":9171240,"number":1743,"title":"ofDirectory.listDir() Does not support wide string (vs2010)","user":{"login":"yty","id":841770,"avatar_url":"https://secure.gravatar.com/avatar/a8010f501bbf6646afd69a8c3afc773a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"a8010f501bbf6646afd69a8c3afc773a","url":"https://api.github.com/users/yty","html_url":"https://github.com/yty","followers_url":"https://api.github.com/users/yty/followers","following_url":"https://api.github.com/users/yty/following","gists_url":"https://api.github.com/users/yty/gists{/gist_id}","starred_url":"https://api.github.com/users/yty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yty/subscriptions","organizations_url":"https://api.github.com/users/yty/orgs","repos_url":"https://api.github.com/users/yty/repos","events_url":"https://api.github.com/users/yty/events{/privacy}","received_events_url":"https://api.github.com/users/yty/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-12-11T07:35:07Z","updated_at":"2012-12-11T07:45:25Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"of 0.73+vs2010.....ofDirectory Can not get wide-string file name correctly..\r\n\r\nFor example:\r\n中文.jpg   (Chinese)\r\n日本語.jpg (Japanese)\r\n한국의.jpg (Korean)\r\n\r\nBut codeblock10.05 but no problem ..\r\n\r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1742","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1742/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1742/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1742/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1742","id":9166709,"number":1742,"title":"Need stack based handling of FBO bindings?","user":{"login":"timscaffidi","id":177125,"avatar_url":"https://secure.gravatar.com/avatar/2ad43b65cb02eca2b722133681647492?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2ad43b65cb02eca2b722133681647492","url":"https://api.github.com/users/timscaffidi","html_url":"https://github.com/timscaffidi","followers_url":"https://api.github.com/users/timscaffidi/followers","following_url":"https://api.github.com/users/timscaffidi/following","gists_url":"https://api.github.com/users/timscaffidi/gists{/gist_id}","starred_url":"https://api.github.com/users/timscaffidi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timscaffidi/subscriptions","organizations_url":"https://api.github.com/users/timscaffidi/orgs","repos_url":"https://api.github.com/users/timscaffidi/repos","events_url":"https://api.github.com/users/timscaffidi/events{/privacy}","received_events_url":"https://api.github.com/users/timscaffidi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-12-11T02:08:37Z","updated_at":"2012-12-11T02:08:37Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I ran into the inverted bitmap string issue (#1474) again when I was drawing to an FBO which was itself drawn inside another FBO. The \"nested\" FBO was actually an internal FBO used by an addon's draw method, neatly hidden away from view.\r\n\r\nexample:\r\n\r\n```c++\r\nvoid testApp::draw(){\r\n fbo1.begin();\r\n addon.draw(); // binds draws then releases an internal FBO\r\n\r\n ofDrawBitmapString(...);\r\n fbo1.end();\r\n\r\n fbo1.draw(); // inverted text\r\n}\r\n```\r\nThe outer FBO remains bound after the internal one releases, so openGl must be using a stack like mechanism. I can tell because the FBO contains the text, it is just inverted. The OF gl renderer only has support for one FBO, so once the internal one gets released, it thinks no FBO is bound, and won't re-invert the bitmap strings.\r\n\r\nI fixed the issue by calling `fbo1.end(); fbo1.begin();` prior to drawing the bitmap string, but a proper fix would be using a stack to keep track of bound FBOs. This will also affect anything else using the `currentFbo` variable of `ofGLRenderer`.\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1741","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1741/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1741/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1741/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1741","id":9163635,"number":1741,"title":"look into adding video streaming support to AVFoundationPlayer","user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":2,"created_at":"2012-12-10T23:36:29Z","updated_at":"2013-02-11T12:12:37Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"the initial forum topic is here,\r\nhttp://forum.openframeworks.cc/index.php/topic,11497"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1740","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1740/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1740/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1740/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1740","id":9162545,"number":1740,"title":"add gryoscope support to ofxiOS","user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":2,"created_at":"2012-12-10T22:58:52Z","updated_at":"2013-02-11T12:12:37Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"the gyro example should be merged with the accelerometer example.\r\n\r\nrequested in #1733"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1739","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1739/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1739/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1739/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1739","id":9162485,"number":1739,"title":"integrate twitter and facebook support into ofxiOS","user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":0,"created_at":"2012-12-10T22:57:08Z","updated_at":"2013-02-11T12:12:37Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"requested in #1733"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1737","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1737/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1737/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1737/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1737","id":9162344,"number":1737,"title":"ios main.h should show how to enable retina, depth, anti-aliasing etc...","user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":0,"created_at":"2012-12-10T22:53:20Z","updated_at":"2013-02-11T12:12:37Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"the below should be included in all ios examples so users know the options are there and can use them when needed.\n\n`ofAppiPhoneWindow *window = new ofAppiPhoneWindow();`\n`window->enableDepthBuffer();`\n`window->enableRetinaSupport();`\n`window->enableAntiAliasing(4);`\n\nrequested in #1733"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1736","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1736/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1736/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1736/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1736","id":9162199,"number":1736,"title":"ofxiPhoneImagePicker should be able to load images from image library","user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":1,"created_at":"2012-12-10T22:49:07Z","updated_at":"2013-02-11T12:12:37Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"requested in #1733"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1735","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1735/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1735/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1735/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1735","id":9143466,"number":1735,"title":"ofxiPhone needs an ofImage->UIImage function","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":1,"created_at":"2012-12-10T15:02:44Z","updated_at":"2013-02-11T12:12:37Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"sort of the reverse of: ofxiPhoneUIImageToOFImage\nSome reference code here: http://iphonedevsdk.com/forum/iphone-sdk-development/23525-cgimagecreate-alpha.html"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1733","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1733/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1733/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1733/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1733","id":9123036,"number":1733,"title":"Request more iOS examples !","user":{"login":"dorald","id":472782,"avatar_url":"https://secure.gravatar.com/avatar/d0d9cf298af15f5198ab8ab5c68a0670?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"d0d9cf298af15f5198ab8ab5c68a0670","url":"https://api.github.com/users/dorald","html_url":"https://github.com/dorald","followers_url":"https://api.github.com/users/dorald/followers","following_url":"https://api.github.com/users/dorald/following","gists_url":"https://api.github.com/users/dorald/gists{/gist_id}","starred_url":"https://api.github.com/users/dorald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dorald/subscriptions","organizations_url":"https://api.github.com/users/dorald/orgs","repos_url":"https://api.github.com/users/dorald/repos","events_url":"https://api.github.com/users/dorald/events{/privacy}","received_events_url":"https://api.github.com/users/dorald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":5,"created_at":"2012-12-09T19:01:11Z","updated_at":"2013-01-11T16:16:53Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hi OF folks !\r\nI like to see more iOS examples and i believe it will be very helpful for beginners like me and for many others probably.\r\n\r\n1- ofxiPhoneImagePicker -> Load and write photo to the PhotoLibrary. For iPhone and iPad\r\n\r\n2- Retina -> detect retina devices and enable or disable retina.\r\n\r\n3- Auto Rotate -> an example how to enable or disable autorotate.\r\n\r\n4- Social networking (addons maybe)-> an example how to integrate facebook,twitter etc.. and how to share photos.\r\n\r\nThanks.\r\nDorald"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1731","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1731/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1731/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1731/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1731","id":9121020,"number":1731,"title":"Feature Discussion - Shader Common Includes","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":34,"created_at":"2012-12-09T15:26:27Z","updated_at":"2013-01-06T20:41:29Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I often find myself pasting the same shader functions at the of my project shaders.\ni.e. the Photoshop math ones: http://mouaif.wordpress.com/2009/01/05/photoshop-math-with-glsl-shaders/\n\nSomething that I thought could really be useful for people working a lot with shaders, is a common shader library for OF. \n\nWe would have a folder OF/libs/openFrameworks called shaders/ \nwhere we could then have shader code grouped by functionality. \n\n\n shaders/\n imageProcessing.frag\n blending.frag ( ie photoshop blend modes ) \n lighting.frag \n math.frag ( shader perlin noise etc )\n computerVision.frag\n dof.frag \n projectionBlending.frag\n camera.vert\n projectionMapping.frag \n\n\nThen to use you would just do:\n\n myShader.include(\"blending.frag\"); \n myShader.include(\"math.frag\"); \n myShader.load(\"myShader.frag\");\n\nAnything that was in blending.frag could then be used by myShader.frag \n\n\n\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1730","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1730/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1730/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1730/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1730","id":9120597,"number":1730,"title":"ofxiPhoneImagePicker has a deallocation bug/crash - also needs some cleanup","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/critical","name":"critical","color":"ff0000"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":7,"created_at":"2012-12-09T14:27:35Z","updated_at":"2013-02-11T12:16:06Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"To stop it from crashing on exit I had to comment out this line in ofxiPhoneImagePicker.mm:\n\n\n //--------------------------------------------------------------\n - (void)dealloc { \n\n _imagePicker.delegate = nil;\n //_imagePicker.cameraOverlayView = nil;\n [_imagePicker.view removeFromSuperview];\n [_imagePicker release];\n\n\nOther issues:\n\n* The class is quite clunky to use, where you are using bool variables to see if the image has changed and there isn't an easy way to reset the picker. \n* Needs cleanup and changes to make it be a bit more OF / friendly. ( why can't it return an ofImage or at least ofPixels ? )\n* The current example could use some love and it uses a pointer instead of an object for some reason.\n* Would be good to also have an example for image picking from library vs image picking from camera. \n\nCross-referencing #1717 \n\nAlso See http://forum.openframeworks.cc/index.php/topic,11230.msg50737.html#msg50737\n\n\n\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1729","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1729/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1729/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1729/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1729","id":9119531,"number":1729,"title":"Android on Windows install/run process problems","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/android","name":"android","color":"2bc4ad"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2012-12-09T11:30:02Z","updated_at":"2012-12-11T13:54:20Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Some users are having a pretty bad time setting up OF on windows. apparently there are several issues which rear their ugly heads, see http://forum.openframeworks.cc/index.php/topic,8855.0.html\n\nspecifically, our platform recognition fails because of a new mingw release: Details and a proposed fix are [here](http://forum.openframeworks.cc/index.php/topic,8855.msg50683.html#msg50683).\n\nfurthermore, there are problems with windows Find, pkg-config, paths,...\n\n@arturoc can you please take a look at this, and also help out in the forum thread if you know what's going on?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1728","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1728/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1728/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1728/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1728","id":9079206,"number":1728,"title":"prefix header conflicts on osx. can't have a function called \"check()\" etc. ","user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2012-12-07T05:08:10Z","updated_at":"2012-12-07T10:33:34Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"\nso I was working with armadillo: \n\nhttp://arma.sourceforge.net/\n\nwhich is a part of this addon: \n\nhttps://github.com/nkint/ofxSequence\n\nand I noticed an odd compile problem when I included it in OF projects, vs when it was included in a non OF project (such as a console application from xcode). basically it chokes on the code where it defines a function called check(). \n\nthis is easy to test in any osx project: \n\n\tvoid check(){\n\t printf(\"hello world \\n\");\n\t}\n\n\tvoid testApp::setup(){\n\t check();\n\t}\n\nyou can also, even just add a new .cpp file, no includes, and add the check function. ie: \n\nhttp://imgur.com/4Y1vw\n\nIf you trace this -- jump to definition -- this is because of AssertMacros.h check definition, so a quick fix is: \n\n#undef check\n\nbut it seems slight problematic that an empty file in an OF project, with **no includes**, is getting that stuff defined already. It might be worthwhile to take a look at the project setup to try to make sure empty files, and external libraries don't have things like carbon headers being thrown at them. \n\nit looks like the offense is the use of the carbon prefix header: \n\nhttp://i.imgur.com/qnE3O.png\nhttp://en.wikipedia.org/wiki/Prefix_header\n\nI'm wondering, why do we need this, and if it's not maybe a good idea to avoid this so that external files that don't have anything to do with carbon (and don't want to!) can avoid conflicts like this. \n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1726","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1726/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1726/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1726/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1726","id":9040570,"number":1726,"title":"ofVideoGrabber::listDevices() not returning any devices","user":{"login":"JesseScott","id":669104,"avatar_url":"https://secure.gravatar.com/avatar/2f74379dd421ca9719cd6e58a3fcd8e5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2f74379dd421ca9719cd6e58a3fcd8e5","url":"https://api.github.com/users/JesseScott","html_url":"https://github.com/JesseScott","followers_url":"https://api.github.com/users/JesseScott/followers","following_url":"https://api.github.com/users/JesseScott/following","gists_url":"https://api.github.com/users/JesseScott/gists{/gist_id}","starred_url":"https://api.github.com/users/JesseScott/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/JesseScott/subscriptions","organizations_url":"https://api.github.com/users/JesseScott/orgs","repos_url":"https://api.github.com/users/JesseScott/repos","events_url":"https://api.github.com/users/JesseScott/events{/privacy}","received_events_url":"https://api.github.com/users/JesseScott/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":6,"created_at":"2012-12-06T01:25:10Z","updated_at":"2012-12-06T02:34:31Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":" The code \n\nvidGrabber.setVerbose(true);\nvidGrabber.listDevices();\nvidGrabber.initGrabber(camWidth,camHeight);\n\nis not returning / printing anything to the console on my system (0072 and 0073) under the videoGrabberExample or any other project (however, the OSX Recorder Example does, when it uses QTKit) ... \n\nOSX | 10.8"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1723","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1723/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1723/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1723/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1723","id":9002126,"number":1723,"title":"bug with ofxAssimpModelLoader / ofVboMesh / ofMesh on iOS ","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":5,"created_at":"2012-12-04T22:57:59Z","updated_at":"2012-12-10T23:08:51Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":" ![buggy assimp](http://theo.tw/OF/iOSAssimpBug.png)\n\nin the attached image you can see a model ( http://theo.tw/OF/http://theo.tw/OF/Island_001.dae ) \n\nbeing rendered in the same release of OF with the desktop OF version on the left and the iOS version on the right. \n\nIn the iOS version you should be able to see weird visual glitches in the mesh. \nthe desktop version loads fine however. \n\nnote: this is true for both the simulator and an iOS device. \n\nI've tried newer versions of assimp and this doesn't fix it. \n\nI suspect it might not actually be an assimp issue but an ofMesh / ofVboMesh one as I have had issues drawing meshes on iOS that rendered fine in OS X ( GL_TRIANGLES MESHES ). \n\nTo reproduce try loading the .dae file linked above into the iOS assimp example. \n\n\n\n\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1721","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1721/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1721/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1721/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1721","id":8951736,"number":1721,"title":"ofEasyCam upgrade? ","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2012-12-03T14:57:38Z","updated_at":"2012-12-03T23:18:45Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"When using ofEasyCam extensively for a project I noticed that the rotation behavior starts to get funky as you translate the camera away from its origin. \n\nie: If you have a really long line extending out from (0,0,0) and then you translate to the end of the line ( using the alt key modifier ) when you rotate (using left click mouse drag) the rotation is still happening around the origin, vs around the center of the camera view ( which is closer to what I was expecting ).\n\nIt seems: \nhttps://github.com/elliotwoods/ofxGrabCam\n\nhas the expected behavior - is this something we would want to bring into ofEasyCam? \n\n@elliotwoods @roymacdonald"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1719","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1719/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1719/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1719/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1719","id":8938890,"number":1719,"title":"Please add ofvideoGrabber ::GetDeviceNumber(),IsDeviceSetup()GetDeviceName()...","user":{"login":"yty","id":841770,"avatar_url":"https://secure.gravatar.com/avatar/a8010f501bbf6646afd69a8c3afc773a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"a8010f501bbf6646afd69a8c3afc773a","url":"https://api.github.com/users/yty","html_url":"https://github.com/yty","followers_url":"https://api.github.com/users/yty/followers","following_url":"https://api.github.com/users/yty/following","gists_url":"https://api.github.com/users/yty/gists{/gist_id}","starred_url":"https://api.github.com/users/yty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yty/subscriptions","organizations_url":"https://api.github.com/users/yty/orgs","repos_url":"https://api.github.com/users/yty/repos","events_url":"https://api.github.com/users/yty/events{/privacy}","received_events_url":"https://api.github.com/users/yty/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2012-12-03T06:51:41Z","updated_at":"2012-12-03T14:08:03Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"For example, these features are commonly used ...\n\nint ofVideoGrabber::GetDeviceNumber()\n{\n\treturn VI.listDevices();\n\n}\nbool ofVideoGrabber::IsDeviceSetup(int id)\n{\n\treturn\tVI.isDeviceSetup(id);\n}\n\nchar * ofVideoGrabber::GetDeviceName(int deviceID)\n{\n\treturn VI.getDeviceName(deviceID);\n}"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1717","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1717/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1717/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1717/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1717","id":8889134,"number":1717,"title":"ofxiPhoneUIImageToOFImage is returning weird image dimension / orientation","user":{"login":"nardove","id":277690,"avatar_url":"https://secure.gravatar.com/avatar/8022cb5f529975afbc64cc9312008d8c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8022cb5f529975afbc64cc9312008d8c","url":"https://api.github.com/users/nardove","html_url":"https://github.com/nardove","followers_url":"https://api.github.com/users/nardove/followers","following_url":"https://api.github.com/users/nardove/following","gists_url":"https://api.github.com/users/nardove/gists{/gist_id}","starred_url":"https://api.github.com/users/nardove/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nardove/subscriptions","organizations_url":"https://api.github.com/users/nardove/orgs","repos_url":"https://api.github.com/users/nardove/repos","events_url":"https://api.github.com/users/nardove/events{/privacy}","received_events_url":"https://api.github.com/users/nardove/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"milestone":null,"comments":2,"created_at":"2012-12-01T08:50:13Z","updated_at":"2012-12-04T06:52:38Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"First I will give you my setup:\nDevice iPhone4S\nOF v0073\nRetina enabled\n\nWhen I use the **ofxiPhoneUIImageToOFImage** method on a portrait UIImage from the camera roll I get the image rotated by 90 degrees and stretched vertically, if I get a landscape UIImage I get the image with no rotation but stretched vertically as well, any ideas how to fix this?\n\nI look in side the method but is way beyond my knowledge :(\n\nhere is my code:\n```c++\nvoid testApp::setMyImage( UIImage *image ) {\t\n\tofxiPhoneUIImageToOFImage( image, myImage, ofGetWidth(), ofGetHeight() );\n\t\n\tofLog( OF_LOG_VERBOSE, \"myImage size: \" + ofToString( myImage.width ) + \", \" + ofToString( myImage.height ) );\n}\n```"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1714","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1714/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1714/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1714/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1714","id":8628643,"number":1714,"title":"Android SoundPlayer: setSpeed(), getPosition()","user":{"login":"thiagohersan","id":850815,"avatar_url":"https://secure.gravatar.com/avatar/b3d17564d4e5a5b5925aab9c8af761cf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b3d17564d4e5a5b5925aab9c8af761cf","url":"https://api.github.com/users/thiagohersan","html_url":"https://github.com/thiagohersan","followers_url":"https://api.github.com/users/thiagohersan/followers","following_url":"https://api.github.com/users/thiagohersan/following","gists_url":"https://api.github.com/users/thiagohersan/gists{/gist_id}","starred_url":"https://api.github.com/users/thiagohersan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/thiagohersan/subscriptions","organizations_url":"https://api.github.com/users/thiagohersan/orgs","repos_url":"https://api.github.com/users/thiagohersan/repos","events_url":"https://api.github.com/users/thiagohersan/events{/privacy}","received_events_url":"https://api.github.com/users/thiagohersan/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/android","name":"android","color":"2bc4ad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2012-11-24T12:48:12Z","updated_at":"2012-11-24T14:31:00Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"This is what I found while running the androidSoundPlayerExample: for each of the 3 audio players, at any given time, either ```setSpeed( )``` works, or ```getPosition( )``` works, but never both.\n\nI think it has to do with the ```stream``` variable and multiplay functionality. And whether the sound is beng played with the ```MediaPlayer``` object, or the ```SoundPool```.\n\nLooking at [getPosition()](https://github.com/openframeworks/openFrameworks/blob/develop/addons/ofxAndroid/ofAndroidLib/src/cc/openframeworks/OFAndroidSoundPlayer.java#L156-L160) you can see that if ```stream``` is not true, and we're using a ```SoundPool```, it always returns zero for the position.\n\nAnd in [setSpeed(...)](https://github.com/openframeworks/openFrameworks/blob/develop/addons/ofxAndroid/ofAndroidLib/src/cc/openframeworks/OFAndroidSoundPlayer.java#L156-L160), if ```stream``` is true, and we're using a ```MediaPlayer```, it doesn't really use the ```speed``` variable anywhere.\n\nIs this some limitation of Android? [MediaPlayer](http://developer.android.com/reference/android/media/MediaPlayer.html) doesn't seem to have a setSpeed method, and [SoundPool](http://developer.android.com/reference/android/media/SoundPool.html) doesn't have a getPosition... \n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1707","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1707/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1707/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1707/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1707","id":8497996,"number":1707,"title":"Remove bleeding-edge code::blocks installation from setup scripts","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":2,"created_at":"2012-11-20T09:34:23Z","updated_at":"2013-02-11T12:12:37Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"It shouldn't be necessary anymore to look for the latest C::B version anymore. I think this is just a leftover from when codeblocks 9 or 10 was out, but the linux distributions still shipped 8, and we needed some features/fixes from 9. \r\nthis would fix [some issues](http://videosynthesis.net/oftesting/testruns/20121119_172737-standard_run/vagrant-debian6.0.5-gnome-32bit/tests/install_codeblocks.sh/) in the debian install script on the build server.\r\n@arturoc confirms this.\r\n\r\nsolution: remove the nightly installation code from the various linux install scripts. \r\n\r\n@arturoc I've assigned you, is that OK?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1705","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1705/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1705/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1705/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1705","id":8461663,"number":1705,"title":"Bugfix: fixed compiling bug when using rtAudio on Release mode","user":{"login":"eranws","id":770012,"avatar_url":"https://secure.gravatar.com/avatar/5a5ee3be893f4aba3ee3fc694050524a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5a5ee3be893f4aba3ee3fc694050524a","url":"https://api.github.com/users/eranws","html_url":"https://github.com/eranws","followers_url":"https://api.github.com/users/eranws/followers","following_url":"https://api.github.com/users/eranws/following","gists_url":"https://api.github.com/users/eranws/gists{/gist_id}","starred_url":"https://api.github.com/users/eranws/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/eranws/subscriptions","organizations_url":"https://api.github.com/users/eranws/orgs","repos_url":"https://api.github.com/users/eranws/repos","events_url":"https://api.github.com/users/eranws/events{/privacy}","received_events_url":"https://api.github.com/users/eranws/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":5,"created_at":"2012-11-19T08:20:40Z","updated_at":"2013-03-09T14:47:54Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1705","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1705.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1705.patch"},"body":"updated libs/openFrameworksCompiled/project/vs2010/openFrameworksRelease.props"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1696","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1696/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1696/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1696/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1696","id":8313536,"number":1696,"title":"Add missing OpenGL texture format GL_RG","user":{"login":"timscaffidi","id":177125,"avatar_url":"https://secure.gravatar.com/avatar/2ad43b65cb02eca2b722133681647492?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2ad43b65cb02eca2b722133681647492","url":"https://api.github.com/users/timscaffidi","html_url":"https://github.com/timscaffidi","followers_url":"https://api.github.com/users/timscaffidi/followers","following_url":"https://api.github.com/users/timscaffidi/following","gists_url":"https://api.github.com/users/timscaffidi/gists{/gist_id}","starred_url":"https://api.github.com/users/timscaffidi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timscaffidi/subscriptions","organizations_url":"https://api.github.com/users/timscaffidi/orgs","repos_url":"https://api.github.com/users/timscaffidi/repos","events_url":"https://api.github.com/users/timscaffidi/events{/privacy}","received_events_url":"https://api.github.com/users/timscaffidi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2012-11-13T06:15:45Z","updated_at":"2012-11-13T18:23:59Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"GL_RG... formats are not recognized in the ofGetGlFormatAndType() function. These formats could be useful for general purpose processing on the GPU, specifically GL_RG32F. Unless there is some specific reason not to add support for these formats, I'd be glad to submit a PR to add them."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1691","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1691/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1691/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1691/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1691","id":8253466,"number":1691,"title":"ofImage seems redundant (long term)","user":{"login":"timscaffidi","id":177125,"avatar_url":"https://secure.gravatar.com/avatar/2ad43b65cb02eca2b722133681647492?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2ad43b65cb02eca2b722133681647492","url":"https://api.github.com/users/timscaffidi","html_url":"https://github.com/timscaffidi","followers_url":"https://api.github.com/users/timscaffidi/followers","following_url":"https://api.github.com/users/timscaffidi/following","gists_url":"https://api.github.com/users/timscaffidi/gists{/gist_id}","starred_url":"https://api.github.com/users/timscaffidi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timscaffidi/subscriptions","organizations_url":"https://api.github.com/users/timscaffidi/orgs","repos_url":"https://api.github.com/users/timscaffidi/repos","events_url":"https://api.github.com/users/timscaffidi/events{/privacy}","received_events_url":"https://api.github.com/users/timscaffidi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2012-11-09T22:04:22Z","updated_at":"2012-11-16T23:06:17Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"While writing issue #1690, I started questioning why ofImage exists as a class that can be instantiated.\r\n\r\nIn my mind it seems that ofImage is really a container of ofTexture and ofPixels with load/save routines.\r\n\r\n* With ofLoadImage() we can already directly load to ofPixels and ofTexture.\r\n* It almost never makes sense to use a bunch of ofImages over a combination of ofTexture/ofPixels other than to (maybe) save a few lines of code.\r\n\r\nofImage seems to me like a shortcut for very simple tasks, like loading and displaying one image really easily. Beyond that, for more advanced tasks, I think it can get a bit confusing to use, and actually less useful once you have to start using setUseTexture(false), for example.\r\n\r\nI'm sure there are a lot of valuable use cases for ofImage that make it convenient for beginners to learn oF, but I also think it makes things more confusing later down the line to have to learn about the difference between main memory and GFX memory. In an OpenGL focused graphics library, this concept is very important."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1690","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1690/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1690/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1690/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1690","id":8252679,"number":1690,"title":"imageSequenceExample should use a vector of ofPixels not ofImages","user":{"login":"timscaffidi","id":177125,"avatar_url":"https://secure.gravatar.com/avatar/2ad43b65cb02eca2b722133681647492?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2ad43b65cb02eca2b722133681647492","url":"https://api.github.com/users/timscaffidi","html_url":"https://github.com/timscaffidi","followers_url":"https://api.github.com/users/timscaffidi/followers","following_url":"https://api.github.com/users/timscaffidi/following","gists_url":"https://api.github.com/users/timscaffidi/gists{/gist_id}","starred_url":"https://api.github.com/users/timscaffidi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timscaffidi/subscriptions","organizations_url":"https://api.github.com/users/timscaffidi/orgs","repos_url":"https://api.github.com/users/timscaffidi/repos","events_url":"https://api.github.com/users/timscaffidi/events{/privacy}","received_events_url":"https://api.github.com/users/timscaffidi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":5,"created_at":"2012-11-09T21:32:21Z","updated_at":"2012-11-10T15:07:27Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"[imageSequenceExample](https://github.com/openframeworks/openFrameworks/blob/master/examples/graphics/imageSequenceExample/src/testApp.cpp)\r\nBeginners trying to build off of this example will run into problems because each frame will have its own texture reference and will rapidly eat gfx memory.\r\nSee [this thread](http://forum.openframeworks.cc/index.php?topic=11051.new;topicseen#new) for an example of someone trying to extend it and getting stuck.\r\n\r\nThe imageSequenceExample should use a vector of ofPixels objects and an ofTexture to display the pixels when they are needed.\r\n\r\nofImage should only be used for loading in this case. actually ofLoadImage() can load directly into an ofPixels object so ofImage really isn't needed at all."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1689","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1689/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1689/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1689/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1689","id":8232698,"number":1689,"title":"Cannot set numColorBuffers to zero in ofFbo","user":{"login":"neilmendoza","id":818571,"avatar_url":"https://secure.gravatar.com/avatar/3e46b12547e7bac19eb982bc512b19c4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3e46b12547e7bac19eb982bc512b19c4","url":"https://api.github.com/users/neilmendoza","html_url":"https://github.com/neilmendoza","followers_url":"https://api.github.com/users/neilmendoza/followers","following_url":"https://api.github.com/users/neilmendoza/following","gists_url":"https://api.github.com/users/neilmendoza/gists{/gist_id}","starred_url":"https://api.github.com/users/neilmendoza/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/neilmendoza/subscriptions","organizations_url":"https://api.github.com/users/neilmendoza/orgs","repos_url":"https://api.github.com/users/neilmendoza/repos","events_url":"https://api.github.com/users/neilmendoza/events{/privacy}","received_events_url":"https://api.github.com/users/neilmendoza/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2012-11-09T10:25:29Z","updated_at":"2012-11-13T20:26:38Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"If I try to set an FBO up exclusively for rendering depth information like this...\r\n\r\n```cpp\r\n ofFbo::Settings s;\r\n s.depthStencilAsTexture = true;\r\n s.depthStencilInternalFormat = GL_DEPTH_COMPONENT24;\r\n s.useDepth = true;\r\n s.numColorbuffers = 0;\r\n s.width = 1024;\r\n s.height = 1024;\r\n fbo.allocate(s);\r\n```\r\n...I get the following error when I call fbo.getDepthTexture().draw()...\r\n\r\n[ofFbo:error] FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1684","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1684/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1684/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1684/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1684","id":8145509,"number":1684,"title":"popView: couldn't pop projection matrix, stack empty. probably wrong anidated push/popView","user":{"login":"khlrqa","id":53301,"avatar_url":"https://secure.gravatar.com/avatar/dfa7e4582a04e784d50c750ae51d894f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"dfa7e4582a04e784d50c750ae51d894f","url":"https://api.github.com/users/khlrqa","html_url":"https://github.com/khlrqa","followers_url":"https://api.github.com/users/khlrqa/followers","following_url":"https://api.github.com/users/khlrqa/following","gists_url":"https://api.github.com/users/khlrqa/gists{/gist_id}","starred_url":"https://api.github.com/users/khlrqa/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/khlrqa/subscriptions","organizations_url":"https://api.github.com/users/khlrqa/orgs","repos_url":"https://api.github.com/users/khlrqa/repos","events_url":"https://api.github.com/users/khlrqa/events{/privacy}","received_events_url":"https://api.github.com/users/khlrqa/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/regression","name":"regression","color":"e10c02"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":4,"created_at":"2012-11-06T17:08:45Z","updated_at":"2013-02-11T12:16:06Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hi!\r\nAfter porting my iOS app from 007 to 0072 I am getting these two errors every frame:\r\n\r\n```c++\r\npopView: couldn't pop projection matrix, stack empty. probably wrong anidated push/popView\r\npopView: couldn't pop modelView matrix, stack empty. probably wrong anidated push/popView\r\n```\r\n\r\nI commented the two lines ofLogError() out in ofGLRenderer.cpp to not affect performance, everything still works fine, what could be the problem? (I am using ofFbo in the project btw)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1683","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1683/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1683/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1683/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1683","id":8106839,"number":1683,"title":"ofCamera / ofEasyCam - add easy way to save/load settings.","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":15,"created_at":"2012-11-05T14:54:56Z","updated_at":"2013-01-31T13:48:16Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I spent a few hours trying to find which data within ofEasyCam needed to be load / saved to disk to save and restore a view. \r\n\r\nI found it pretty unclear ( due to the multiple levels of inheritance ), where this core data lies. \r\n\r\nIn the end I resorted to memcpy-ing the entire object to a buffer and writing it to disk as a binary file. \r\nThis works well for my needs - but maybe we could make it a little easier? :)\r\n\r\nThis could relate to ofParameter and ofParamList->serialize() or something like that. \r\n\r\n@elliotwoods @arturoc "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1678","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1678/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1678/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1678/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1678","id":8072517,"number":1678,"title":"Project Generator | OfxOpenNI","user":{"login":"FdeFabricio","id":1853854,"avatar_url":"https://secure.gravatar.com/avatar/2c4b4343e8077aac897a31e501937410?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2c4b4343e8077aac897a31e501937410","url":"https://api.github.com/users/FdeFabricio","html_url":"https://github.com/FdeFabricio","followers_url":"https://api.github.com/users/FdeFabricio/followers","following_url":"https://api.github.com/users/FdeFabricio/following","gists_url":"https://api.github.com/users/FdeFabricio/gists{/gist_id}","starred_url":"https://api.github.com/users/FdeFabricio/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/FdeFabricio/subscriptions","organizations_url":"https://api.github.com/users/FdeFabricio/orgs","repos_url":"https://api.github.com/users/FdeFabricio/repos","events_url":"https://api.github.com/users/FdeFabricio/events{/privacy}","received_events_url":"https://api.github.com/users/FdeFabricio/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project-generator","name":"project-generator","color":"444444"}],"state":"open","assignee":null,"milestone":null,"comments":6,"created_at":"2012-11-02T21:48:16Z","updated_at":"2012-11-03T16:08:11Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"The projects with OpenNI's addon generated by the Project Generator are not linked with the files at /addons/ofxOpenNI/src\r\n\r\nI'm doing it directly at the CodeBlocks, but I'm just saying... there's an error at the generator"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1674","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1674/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1674/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1674/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1674","id":7984399,"number":1674,"title":"ofFbo readToPixels() causing crashes or garbled images","user":{"login":"jasonlevine","id":2553924,"avatar_url":"https://secure.gravatar.com/avatar/0996b4753ac25ee6e531b560ff612b81?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"0996b4753ac25ee6e531b560ff612b81","url":"https://api.github.com/users/jasonlevine","html_url":"https://github.com/jasonlevine","followers_url":"https://api.github.com/users/jasonlevine/followers","following_url":"https://api.github.com/users/jasonlevine/following","gists_url":"https://api.github.com/users/jasonlevine/gists{/gist_id}","starred_url":"https://api.github.com/users/jasonlevine/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jasonlevine/subscriptions","organizations_url":"https://api.github.com/users/jasonlevine/orgs","repos_url":"https://api.github.com/users/jasonlevine/repos","events_url":"https://api.github.com/users/jasonlevine/events{/privacy}","received_events_url":"https://api.github.com/users/jasonlevine/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-2D","name":"section-2D","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/regression","name":"regression","color":"e10c02"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":11,"created_at":"2012-10-30T22:58:39Z","updated_at":"2013-02-11T12:16:06Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hi,\r\n I recently moved some of my 0071 source files into 0072 projects. For the most part everything works great but a major glitch has appeared in one of my projects. When the running app attempts to read and ofFbo into an ofPixels object, either the app crashes or else the ofPixels contains a heavily garbled version of the image.\r\n\r\nHere is my code:\r\n```c++\r\nvoid testApp::exportHiRes(){\r\nhiResFbo.begin();\r\n ofClear(0);\r\n if (imageAlpha != 0) {\r\n ofSetColor(imageAlpha);\r\n if (imageLoaded == true) image.draw(0, 0, image.width, image.height);\r\n if (videoLoaded == true) video.draw(0, 0, video.getWidth(), video.getHeight());\r\n }\r\n hiResFbo.end();\r\n \r\n ofPixels hiResPixels;\r\n hiResFbo.readToPixels(hiResPixels);\r\n ofFileDialogResult dialog_result = ofSystemSaveDialog(\"hi-res export\", \"export\");\r\n string filename = dialog_result.getPath() + \".png\";\r\n ofSaveImage(hiResPixels, filename);\r\n}\r\n```\r\n\r\nthe hiResFbo is allocated when the image or video is loaded just like this:\r\n```c++\r\nhiResFbo.allocate(image.width, image.height);\r\n```\r\nor\r\n```c++\r\nhiResFbo.allocate(video.getWidth(), video.getHeight());\r\n```\r\n-\r\n-\r\n-\r\nWhen the running app crashes, I get a EXC_BAD_ACCESS at his point\r\n```c++\r\nglGetTexImage(texData.textureTarget,0,texData.glType,GL_UNSIGNED_BYTE, pixels.getPixels());\r\n```\r\nin void ofTexture::readToPixels(ofPixels & pixels), which is called from \r\n```c++\r\ngetTextureReference(attachmentPoint).readToPixels(pixels);\r\n```\r\nin void ofFbo::readToPixels(ofPixels & pixels, int attachmentPoint) which is called by this line in my code:\r\n\r\n```c++\r\nhiResFbo.readToPixels(hiResPixels);\r\n```\r\n\r\nThe code is identical to the code in my 0071 project(where there is no prob).\r\n\r\nAny ideas?\r\nAnyone else have similar problems?\r\n\r\nThanks,\r\nJason"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1669","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1669/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1669/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1669/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1669","id":7947487,"number":1669,"title":"ofDirectory missing method implementations","user":{"login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","html_url":"https://github.com/danomatika","followers_url":"https://api.github.com/users/danomatika/followers","following_url":"https://api.github.com/users/danomatika/following","gists_url":"https://api.github.com/users/danomatika/gists{/gist_id}","starred_url":"https://api.github.com/users/danomatika/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danomatika/subscriptions","organizations_url":"https://api.github.com/users/danomatika/orgs","repos_url":"https://api.github.com/users/danomatika/repos","events_url":"https://api.github.com/users/danomatika/events{/privacy}","received_events_url":"https://api.github.com/users/danomatika/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-10-29T18:53:49Z","updated_at":"2012-10-29T18:54:01Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofDirectory is missing implementations for canRead, canWrite, and canExecute. I haven't checked further, but there might be others missing as well ... worth double checking."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1668","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1668/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1668/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1668/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1668","id":7918919,"number":1668,"title":"ios-feature-es2","user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":42,"created_at":"2012-10-28T12:29:31Z","updated_at":"2013-01-08T08:13:16Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1668","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1668.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1668.patch"},"body":"ES2 for iOS can now be enabled in main.h,\r\n\r\n`ofAppiPhoneWindow * window;`\r\n`window = new ofAppiPhoneWindow();`\r\n`window->enableES2Renderer();`\r\n\r\nofGLES2Renderer has been added.\r\nits still very bare bones but has enough features to run and test a simple ES2 example.\r\n- it loads a simple shader with position, color and modelViewProjection matrix.\r\n- screen perspective setup is working.\r\n- can draw OF shape primitives like ofRect, ofCircle etc...\r\n\r\nall the shader code inside ofGLES2Renderer should eventually be done using ofShader,\r\nbut atm ofShader doesn't support ES1/ES2.... once it does, it will be easy to swap out.\r\n\r\ntheres an iosES2RendererExample in devApps that tests the ES2 code.\r\n\r\nin response to issue #1178"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1664","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1664/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1664/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1664/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1664","id":7788068,"number":1664,"title":"ofPolyline - extra point added when using addVertex and bezierTo","user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-2D","name":"section-2D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":8,"created_at":"2012-10-23T05:36:16Z","updated_at":"2012-10-23T20:53:14Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"when creating a bezier curve,\r\nbezierTo() function requires that at least one point is added to ofPolyline before it can be used.\r\n\r\nso to kick things off, i add my first point\r\n`polyline.addVertex(0, 0);`\r\n\r\ni then add my bezier curve,\r\n`polyline.bezierTo(cx1, cy1, cx2, cy2, px2, py2);`\r\n\r\nwhen inspecting the resulting ofPolyline im seeing the first two points as identical - both (0, 0)\r\n\r\nthe second point is a duplicate.\r\nso the first bezier point should be ignored as it has already been added as a vertex."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1663","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1663/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1663/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1663/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1663","id":7787832,"number":1663,"title":"ofImages loaded via ofLoadImage don't draw","user":{"login":"jvcleave","id":150037,"avatar_url":"https://secure.gravatar.com/avatar/9c0384a91739bea093f453cf40a59742?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"9c0384a91739bea093f453cf40a59742","url":"https://api.github.com/users/jvcleave","html_url":"https://github.com/jvcleave","followers_url":"https://api.github.com/users/jvcleave/followers","following_url":"https://api.github.com/users/jvcleave/following","gists_url":"https://api.github.com/users/jvcleave/gists{/gist_id}","starred_url":"https://api.github.com/users/jvcleave/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jvcleave/subscriptions","organizations_url":"https://api.github.com/users/jvcleave/orgs","repos_url":"https://api.github.com/users/jvcleave/repos","events_url":"https://api.github.com/users/jvcleave/events{/privacy}","received_events_url":"https://api.github.com/users/jvcleave/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-2D","name":"section-2D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2012-10-23T05:13:20Z","updated_at":"2012-11-10T04:47:09Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"0072 Develop, OS X 10.8\r\n\r\nwhich is different than image.loadImage behavior\r\n\r\nTest case\r\n\r\n```\r\nofImage loadImage;\r\nofImage image;\r\n//--------------------------------------------------------------\r\nvoid testApp::setup(){\r\n\tstring imagePath = \"imageTest.jpg\";\r\n\t\r\n\tofLoadImage(loadImage, imagePath);\r\n\timage.loadImage(imagePath);\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::update(){\r\n\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::draw(){\r\n\tloadImage.draw(0, 0);//[warning] ofGLRenderer::draw(): texture is not allocated\r\n\timage.draw(0, 0);//draws\r\n}\r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1660","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1660/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1660/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1660/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1660","id":7617524,"number":1660,"title":"ofxSVG transform attribute not read","user":{"login":"borg","id":203895,"avatar_url":"https://secure.gravatar.com/avatar/46312137eb0583790943eb4c17ea04cc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"46312137eb0583790943eb4c17ea04cc","url":"https://api.github.com/users/borg","html_url":"https://github.com/borg","followers_url":"https://api.github.com/users/borg/followers","following_url":"https://api.github.com/users/borg/following","gists_url":"https://api.github.com/users/borg/gists{/gist_id}","starred_url":"https://api.github.com/users/borg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/borg/subscriptions","organizations_url":"https://api.github.com/users/borg/orgs","repos_url":"https://api.github.com/users/borg/repos","events_url":"https://api.github.com/users/borg/events{/privacy}","received_events_url":"https://api.github.com/users/borg/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":{"login":"joshuajnoble","id":237423,"avatar_url":"https://secure.gravatar.com/avatar/10960ba0f305803a1cdc7cd6188d643b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"10960ba0f305803a1cdc7cd6188d643b","url":"https://api.github.com/users/joshuajnoble","html_url":"https://github.com/joshuajnoble","followers_url":"https://api.github.com/users/joshuajnoble/followers","following_url":"https://api.github.com/users/joshuajnoble/following","gists_url":"https://api.github.com/users/joshuajnoble/gists{/gist_id}","starred_url":"https://api.github.com/users/joshuajnoble/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/joshuajnoble/subscriptions","organizations_url":"https://api.github.com/users/joshuajnoble/orgs","repos_url":"https://api.github.com/users/joshuajnoble/repos","events_url":"https://api.github.com/users/joshuajnoble/events{/privacy}","received_events_url":"https://api.github.com/users/joshuajnoble/received_events","type":"User"},"milestone":null,"comments":1,"created_at":"2012-10-16T08:48:13Z","updated_at":"2012-10-21T16:01:32Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"https://github.com/openframeworks/openFrameworks/blob/develop/addons/ofxSvg/libs/svgTiny/src/svgtiny.cpp\r\n\r\nofxSVG nodes tranforms are not read or parsed because the svgtiny_parse_transform_attributes function is looking for a child element instead of node attribute\r\n\r\nLine 1180\r\ntransform = (char *) node->getChildElement(\"transform\");\r\n\r\n\r\n\r\nFix: Change to transform = (char *) node->getAttribute(\"transform\").c_str();\r\n\r\nvoid svgtiny_parse_transform_attributes(Poco::XML::Element *node,\r\n\t\tstruct svgtiny_parse_state *state)\r\n{\r\n\tchar *transform;\r\n\r\n\t/* parse transform */\r\n transform = (char *) node->getAttribute(\"transform\").c_str();\r\n\r\n\tif (transform) {\r\n\t\tsvgtiny_parse_transform(transform, &state->ctm.a, &state->ctm.b,\r\n\t\t\t\t&state->ctm.c, &state->ctm.d,\r\n\t\t\t\t&state->ctm.e, &state->ctm.f);\r\n\t\t//xmlFree(transform);\r\n //free(transform);//this caused a crash now...not sure what's correct\r\n\t}\r\n}"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1659","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1659/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1659/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1659/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1659","id":7609860,"number":1659,"title":"ios videoGrabberExample should build on simulator","user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":0,"created_at":"2012-10-15T23:56:28Z","updated_at":"2013-02-11T12:12:37Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"currently videoGrabberExample has compiler errors when run on the simulator.\r\nbe good if it could build on the simulator and just display a message that the example only runs on the device."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1653","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1653/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1653/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1653/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1653","id":7445554,"number":1653,"title":"make iOS examples universal","user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":4,"created_at":"2012-10-09T12:15:14Z","updated_at":"2013-02-11T12:12:37Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"all the iOS examples should work on both the iPhone and iPad."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1652","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1652/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1652/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1652/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1652","id":7436354,"number":1652,"title":"ofDirectory::isDirectory() throws exception for nonexistent dir","user":{"login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","html_url":"https://github.com/danomatika","followers_url":"https://api.github.com/users/danomatika/followers","following_url":"https://api.github.com/users/danomatika/following","gists_url":"https://api.github.com/users/danomatika/gists{/gist_id}","starred_url":"https://api.github.com/users/danomatika/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danomatika/subscriptions","organizations_url":"https://api.github.com/users/danomatika/orgs","repos_url":"https://api.github.com/users/danomatika/repos","events_url":"https://api.github.com/users/danomatika/events{/privacy}","received_events_url":"https://api.github.com/users/danomatika/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":5,"created_at":"2012-10-09T01:47:55Z","updated_at":"2012-10-09T02:34:45Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"It looks like ofDirectory throws a Poco exception if you give it a path to a nonexistent dir in its constructor. The same might be true for ofFile ..."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1651","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1651/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1651/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1651/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1651","id":7430340,"number":1651,"title":"Visual Studio 2012 support","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":7,"created_at":"2012-10-08T20:22:26Z","updated_at":"2013-02-11T12:16:06Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Make sure OF supports VS2012. @ofZach would like to see this in 0073.\r\nRelevant issue: #1544"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1648","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1648/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1648/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1648/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1648","id":7406719,"number":1648,"title":"Remove functions deprecated in 0073","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":0,"created_at":"2012-10-07T17:49:57Z","updated_at":"2013-02-11T12:12:37Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"(Copied over from #1428) \r\nSome functions/classes/etc have been deprecated in 0073. It's time to remove them at some point. I have tentatively scheduled this point to be 0075 (i.e. 2 releases after deprecation). ~ half a year (including inevitable delays) should allow plenty of time for people to notice the warnings.\r\n\r\nList of deprecations:\r\n`bla`, \r\n`blubb` (group by file or something)"}] + +https +GET +api.github.com +None +/repositories/345337/issues?page=2&per_page=100 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4963'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '322304'), ('server', 'GitHub.com'), ('last-modified', 'Mon, 11 Mar 2013 10:11:56 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"9d1c9cd0db105699c994ba8b16296c1b"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 11 Mar 2013 10:12:55 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1647","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1647/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1647/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1647/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1647","id":7406372,"number":1647,"title":"QTKitGrabber capture dimensions can change without warning.","user":{"login":"bakercp","id":300484,"avatar_url":"https://secure.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","url":"https://api.github.com/users/bakercp","html_url":"https://github.com/bakercp","followers_url":"https://api.github.com/users/bakercp/followers","following_url":"https://api.github.com/users/bakercp/following","gists_url":"https://api.github.com/users/bakercp/gists{/gist_id}","starred_url":"https://api.github.com/users/bakercp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bakercp/subscriptions","organizations_url":"https://api.github.com/users/bakercp/orgs","repos_url":"https://api.github.com/users/bakercp/repos","events_url":"https://api.github.com/users/bakercp/events{/privacy}","received_events_url":"https://api.github.com/users/bakercp/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"state":"open","assignee":{"login":"obviousjim","id":321434,"avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","url":"https://api.github.com/users/obviousjim","html_url":"https://github.com/obviousjim","followers_url":"https://api.github.com/users/obviousjim/followers","following_url":"https://api.github.com/users/obviousjim/following","gists_url":"https://api.github.com/users/obviousjim/gists{/gist_id}","starred_url":"https://api.github.com/users/obviousjim/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/obviousjim/subscriptions","organizations_url":"https://api.github.com/users/obviousjim/orgs","repos_url":"https://api.github.com/users/obviousjim/repos","events_url":"https://api.github.com/users/obviousjim/events{/privacy}","received_events_url":"https://api.github.com/users/obviousjim/received_events","type":"User"},"milestone":null,"comments":1,"created_at":"2012-10-07T17:05:01Z","updated_at":"2012-10-27T16:41:19Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"@obviousjim \r\n\r\nWith the fancy new QTKitGrabber -- multiple programs can access the camera device at the same time, but either program can set the current capture dimensions, and that capture dimension is applied to all using the camera.\r\n\r\nThis becomes evident if one runs the `osxVideoRecorderExample` example (which runs at native 1280x720 on my mac), and THEN open the standard `videoGrabberExample` which is capturing at 320x240. It will change the current capture size _back_ in `osxVideoRecorderExample`, but `osxVideoRecorderExample` won't know about the change.\r\n\r\nAnother fun trick is to open PhotoBooth (which must use QTKit). If you open the standard `videoGrabberExample`, it will resize photobooth's stream.\r\n\r\nThis does not apply when a legacy capture is happening. For instance, if you open up [jit.qt.grab] in max5, the device will appear \"in use\" to all QtKit renderers.\r\n\r\nAnyway, device sharing seems like a great new feature, but if other capture devices don't know about the changes to capture dimension, it could be a problem. \r\n\r\nPerhaps a warning should be thrown if the device is already open? Perhaps there is an internal capture size callback / event in the QTKitGrabber?\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1642","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1642/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1642/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1642/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1642","id":7396649,"number":1642,"title":"capitalize compile targets on windows","user":{"login":"benben","id":124513,"avatar_url":"https://secure.gravatar.com/avatar/6aed6a0dfa09b46d6fbd5149eb56def8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"6aed6a0dfa09b46d6fbd5149eb56def8","url":"https://api.github.com/users/benben","html_url":"https://github.com/benben","followers_url":"https://api.github.com/users/benben/followers","following_url":"https://api.github.com/users/benben/following","gists_url":"https://api.github.com/users/benben/gists{/gist_id}","starred_url":"https://api.github.com/users/benben/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/benben/subscriptions","organizations_url":"https://api.github.com/users/benben/orgs","repos_url":"https://api.github.com/users/benben/repos","events_url":"https://api.github.com/users/benben/events{/privacy}","received_events_url":"https://api.github.com/users/benben/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-10-06T12:31:11Z","updated_at":"2012-10-06T12:31:11Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"It would be cool to rename the targets for codeblocks on win with capital letters.\r\nOn Mac & Linux its \"Release\" and \"Debug\".\r\nOn Windows Codeblocks its \"release\" and \"debug\".\r\n \r\nIs this possible for codeblocks?\r\n\r\nDon't know whats going on with VC, though."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1639","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1639/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1639/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1639/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1639","id":7378577,"number":1639,"title":"Feature: Icons added for Debug and Release for OS X - option to modify icons for specific projects","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":23,"created_at":"2012-10-05T13:47:23Z","updated_at":"2013-02-11T12:12:36Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1639","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1639.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1639.patch"},"body":"\r\nThanks to @NickHardeman for getting this working - I just had to modify it a bit to work with the project generator. \r\n\r\n- Seperate icons for Debug and Release\r\n- For a project that needs a specific icon you can place the files in the data folder and change one line in Project.xconfig to have it use the different icons. \r\n- Default icons are stores in the openFrameworksCompiled/project/osx/ folder with the other xcode specific files. \r\n\r\nThis relates to: but does not close - #1039"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1631","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1631/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1631/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1631/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1631","id":7291405,"number":1631,"title":"ofPASoundStream and ofxiPhoneSoundStream ignore nBuffers parameter","user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-10-02T12:32:31Z","updated_at":"2012-10-02T12:32:31Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"this can cause clicks in audio under heavy CPU usage.\r\n\r\nsolution: implement our own non-blocking FIFO to allow nBuffers to work"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1626","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1626/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1626/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1626/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1626","id":7260825,"number":1626,"title":"feature: sound system refactoring","user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":7,"created_at":"2012-10-01T13:13:57Z","updated_at":"2012-10-06T13:18:39Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1626","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1626.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1626.patch"},"body":"Don't merge yet!\r\n\r\nThis PR+the branch on @damiannz's repo are the working place for the refactoring of the sound system. \r\n\r\nFeatures at the moment: \r\n\r\n* ofSoundBuffer a class to store sound buffers equivalent to ofPixels. might need a setFromExternalBuffer and be implemented with float array instead of vector so it can be used to pass the native buffer around without need for copies\r\n\r\n* ofSoundFile: allows to read from sound files to sound buffers, would be good to add writting too, probably should inherit from ofFile\r\n\r\n* ofBasicSoundPlayer: a sound player that can be used on any platform that supports ofSoundStream. it uses ofSoundFile to read sound files and outputs through any ofSoundStream\r\n\r\n* ofSoundMixer: a simple sound mixer\r\n\r\n* ofSoundUtils: a utility file for sound, like commonly used sound interpolations, panning algorithm...* ofSoundBuffer\r\n\r\nSend a pull request to the __feature-ofSoundRefactoring__ branch on @damiannz's fork of oF to add things here.\r\n\r\nDev notes are [here](https://github.com/openframeworks/openFrameworks/wiki/Sound-programming-notes)."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1623","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1623/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1623/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1623/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1623","id":7223029,"number":1623,"title":"Font color cast at border due to alpha blending (TTF, AA, no border)","user":{"login":"bogru","id":2446615,"avatar_url":"https://secure.gravatar.com/avatar/7e807135e99bd8e39eecd9bb4e739b0b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"7e807135e99bd8e39eecd9bb4e739b0b","url":"https://api.github.com/users/bogru","html_url":"https://github.com/bogru","followers_url":"https://api.github.com/users/bogru/followers","following_url":"https://api.github.com/users/bogru/following","gists_url":"https://api.github.com/users/bogru/gists{/gist_id}","starred_url":"https://api.github.com/users/bogru/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bogru/subscriptions","organizations_url":"https://api.github.com/users/bogru/orgs","repos_url":"https://api.github.com/users/bogru/repos","events_url":"https://api.github.com/users/bogru/events{/privacy}","received_events_url":"https://api.github.com/users/bogru/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":12,"created_at":"2012-09-28T17:07:43Z","updated_at":"2012-10-10T07:25:18Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"\nofDisableAlphaBlending() does not have effect on font.drawString(..)\nWhen AA is enabled, the font has a smooth border, and it is blended with the background. At the border of the font, some color from the background is mixed with font color.\nThe problem appears when we do not want to get color from the background mixed with font color, as the text image will be further blended with other images. Alpha blending should be disabled when the font is drawn. But the font edge looks the same, with a color cast from background at the border, regardless if alpha blending is enabled or not.\nSetup:\nloadFont is called with default params except for font path and size. (border is false)\nImage has 4 channels. Background can be set to black (0,0,0,0). Disable alpha blending. font color is (255, 127, 0, 255)\nIn this case, the issue is that a blackish border appear around the font. (colors like (100, 50, 0, 40) I would expect that at border, font color is maintained, only alpha is changed. (255, 127, 0, 40) or similar.\nTo reproduce it, just save the image as png, and open it with an image viewer that has a different background than the one set in the OF before drawing the font. Maybe try several color for bgnd in OF, so that the color cast is obvious."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1617","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1617/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1617/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1617/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1617","id":7155627,"number":1617,"title":"update assimp to 3.0 ","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":0,"created_at":"2012-09-26T16:56:44Z","updated_at":"2013-02-11T12:12:36Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Assimp 3.0 was released July 2012 - might be worth looking into. \n\nhttp://assimp.sourceforge.net/index.html\n\nOne thing I read stated that the 3.0 version breaks from the 2.0 api - so it might not be a straight swap.\n\nEdit: here is the changelog \n\n\n3.0 (2012-07-07)\n\nFEATURES:\n - new export interface similar to the import API. \n - Supported export formats: Collada, OBJ, PLY and STL\n - added new import formats: XGL/ZGL, M3 (experimental)\n - new postprocessing steps: Debone\n - vastly improved IFC (Industry Foundation Classes) support\n - introduced API to query importer meta information (such as supported\n format versions, full name, maintainer info).\n - reworked Ogre XML import\n - C-API now supports per-import properties\n\nFIXES/HOUSEKEEPING:\n\n - hundreds of bugfixes in all parts of the library\n - unified naming and cleanup of public headers\n - improved CMake build system\n - templatized math library\n - reduce dependency on boost.thread, only remaining spot\n is synchronization for the C logging API \n\nAPI COMPATIBILITY:\n - renamed headers, export interface, C API properties and meta data\n prevent compatibility with code written for 2.0, but in \n most cases these can be easily resolved\n - Note: 3.0 is not binary compatible with 2.0\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1615","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1615/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1615/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1615/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1615","id":7138350,"number":1615,"title":"ios6 armv7s","user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"}],"state":"open","assignee":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":11,"created_at":"2012-09-26T00:26:54Z","updated_at":"2013-02-11T12:16:06Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"latest xcode 4.5 builds with the new armv7s architecture by default which is causing errors since not all OF libs have been compiled for armv7s.\n\nthink the issue is only with freeimage,\n\"file is universal (2 slices) but does not contain a(n) armv7s slice: ../../../libs/FreeImage/lib/ios/freeimage.a for architecture armv7s\"\n\nwe can recompile freeimage.a with armv7s\nor as temporary solution, remove armv7s from VALID_ARCHS\n\nremoving armv7s from VALID_ARCHS will mean that the ios xcode template project will have to be updated so that projectGenerator can make ios xcode projects without armv7s."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1605","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1605/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1605/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1605/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1605","id":6987537,"number":1605,"title":"ofMaterial invalid GL_ENUM","user":{"login":"jacres","id":1250485,"avatar_url":"https://secure.gravatar.com/avatar/7ab62068850807cd51b05c82cab45075?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"7ab62068850807cd51b05c82cab45075","url":"https://api.github.com/users/jacres","html_url":"https://github.com/jacres","followers_url":"https://api.github.com/users/jacres/followers","following_url":"https://api.github.com/users/jacres/following","gists_url":"https://api.github.com/users/jacres/gists{/gist_id}","starred_url":"https://api.github.com/users/jacres/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacres/subscriptions","organizations_url":"https://api.github.com/users/jacres/orgs","repos_url":"https://api.github.com/users/jacres/repos","events_url":"https://api.github.com/users/jacres/events{/privacy}","received_events_url":"https://api.github.com/users/jacres/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":5,"created_at":"2012-09-19T17:02:03Z","updated_at":"2013-02-11T12:16:06Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Looks like ofMaterial uses GL_FRONT_AND_BACK for glGetMaterialfv().\n\nApparently GL_FRONT_AND_BACK is not a valid enum to be used with glGetMaterialfv():\nhttp://www.opengl.org/sdk/docs/man/xhtml/glGetMaterial.xml\n\nOnly GL_FRONT and GL_BACK are listed as valid ones. This was the cause of some very ambiguous errors for me. Future OpenGL calls would sometimes fail - like loading a shader that was otherwise fine, etc. since the ofShader would check for glGetError() and think there was an error related to it when the problem was in the ofMaterial class."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1599","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1599/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1599/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1599/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1599","id":6919682,"number":1599,"title":"get the path to an addon data folder","user":{"login":"underdoeg","id":243820,"avatar_url":"https://secure.gravatar.com/avatar/6ff8fe2dd72480f1685ee15e374205b7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"6ff8fe2dd72480f1685ee15e374205b7","url":"https://api.github.com/users/underdoeg","html_url":"https://github.com/underdoeg","followers_url":"https://api.github.com/users/underdoeg/followers","following_url":"https://api.github.com/users/underdoeg/following","gists_url":"https://api.github.com/users/underdoeg/gists{/gist_id}","starred_url":"https://api.github.com/users/underdoeg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/underdoeg/subscriptions","organizations_url":"https://api.github.com/users/underdoeg/orgs","repos_url":"https://api.github.com/users/underdoeg/repos","events_url":"https://api.github.com/users/underdoeg/events{/privacy}","received_events_url":"https://api.github.com/users/underdoeg/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":6,"created_at":"2012-09-17T13:55:51Z","updated_at":"2013-01-07T00:19:06Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I wonder if there is a way to get the data path of a specific addon. It would be great to have the possibility to store addon related data within a folder so it wouldn't have to be added to the bin/data folder of each project.\n\nsomething like ofToAddonsDataPath(string addonName, string path);\n\nIs there a way to retrieve the of location with code. Because we can't guarantee anymore that the addons path is simply \"../../addons\""},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1598","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1598/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1598/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1598/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1598","id":6918106,"number":1598,"title":"refactor ofFile and ofDirectory Poco::File into ofFilePath","user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2012-09-17T12:56:14Z","updated_at":"2013-03-05T00:04:41Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1598","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1598.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1598.patch"},"body":"the Poco::File in ofFile and ofDirectory have been refactored into ofFilePath and those classes inherit now from ofFilePath. ofFilePath can be used to compare and join paths using the overloaded operators:\n\nofFilePath(\"images\") == ofFilePath(\"../data/images/\")\n\nreturns true\n\nofFlePath(\"images) + ofFilePath(\"img.jpg\")\n\nreturns \"images/img.jpg\" no matter the trailing slash\n\nofToDataPath has been refactored to use ofFilePath instead of string comparison\n\nstill needs some more testing"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1594","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1594/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1594/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1594/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1594","id":6893622,"number":1594,"title":"Graphics Updates / Fixes (see notes)","user":{"login":"bakercp","id":300484,"avatar_url":"https://secure.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","url":"https://api.github.com/users/bakercp","html_url":"https://github.com/bakercp","followers_url":"https://api.github.com/users/bakercp/followers","following_url":"https://api.github.com/users/bakercp/following","gists_url":"https://api.github.com/users/bakercp/gists{/gist_id}","starred_url":"https://api.github.com/users/bakercp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bakercp/subscriptions","organizations_url":"https://api.github.com/users/bakercp/orgs","repos_url":"https://api.github.com/users/bakercp/repos","events_url":"https://api.github.com/users/bakercp/events{/privacy}","received_events_url":"https://api.github.com/users/bakercp/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":18,"created_at":"2012-09-15T07:54:17Z","updated_at":"2013-03-09T15:30:10Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1594","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1594.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1594.patch"},"body":"* Made default circle and curve resolutions match across `ofStyle` and `ofPath`.\n* Deprecated `arcResolution` in favor of `circleResolution`.\n* Require polyline curves in `ofPath` to respect the `ofPath`'s `curveResolution` and `circleResolution`.\n* Require global curve functions such as `ofCurve` to respect current `ofStyle`s `curveResolution`.\n* Updated `ofRectRounded`\n * Added support for multiple corner radii.\n * Use arcs rather than bezier curves.\n * Respect z.\n * Respect circleResolution.\n* Updated `ofPolyline` get bounding box to use `ofRectangle`'s new `growToInclude` method.\n* Added const correctness in several places."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1593","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1593/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1593/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1593/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1593","id":6892507,"number":1593,"title":"ios-bugfix-rename-step-1","user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"labels":[],"state":"open","assignee":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":8,"created_at":"2012-09-15T04:28:44Z","updated_at":"2013-02-11T12:16:06Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1593","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1593.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1593.patch"},"body":"this is the first PR (1/3) for renaming ofxiPhone to ofxiOS - issue #1382\n\nthis first step is concerned with updating the ios xcode projects to use ofxiOS naming.\nfull list of changes are below,\n\n- ofxiPhone folder has been renamed to ofxiOS\n- adjusted CoreOF.xcconfig - now uses HEADER_OFXIOS with new path to ofxiOS folder.\n- renamed product of the static lib to begin with ofxiOS\n- renamed ofxiphone-Info.plist to ofxiOS-Info.plist\n- renamed iPhone_Prefix.pch to iOS_Prefix.pch\n- adjusted projectGenerator and ios xcode template project to account for the above changes.\n- gitignore files have been adjusted to ignore the new names.\n\nhave tested rebuilding all the ios examples using the projectGenerator and all working well.\nbut if someone else can give this a test, that would be great!"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1592","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1592/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1592/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1592/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1592","id":6861347,"number":1592,"title":"ofToString() does not report all digits of precision","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2012-09-13T21:32:45Z","updated_at":"2012-09-14T07:59:51Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"`ofToString()` should always return as many digits of precision as are available from the floating point value. it looks like right now, at least 2 or 3 digits of precision are being ignored. this was not a problem with `sprintf()`, but is a problem with `stringstream`. this problem first became clear with issue #1516 and a temporary fix was made to ofxXmlSettings, but a deeper fix to `ofToString()` still needs to be made."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1587","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1587/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1587/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1587/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1587","id":6800579,"number":1587,"title":"Patched openFrameworks 0071 for the QNX platform (BlackBerry PlayBook & BB10)","user":{"login":"falcon4ever","id":480019,"avatar_url":"https://secure.gravatar.com/avatar/4a503abeaa3d803e55e99093fbf1505d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"4a503abeaa3d803e55e99093fbf1505d","url":"https://api.github.com/users/falcon4ever","html_url":"https://github.com/falcon4ever","followers_url":"https://api.github.com/users/falcon4ever/followers","following_url":"https://api.github.com/users/falcon4ever/following","gists_url":"https://api.github.com/users/falcon4ever/gists{/gist_id}","starred_url":"https://api.github.com/users/falcon4ever/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/falcon4ever/subscriptions","organizations_url":"https://api.github.com/users/falcon4ever/orgs","repos_url":"https://api.github.com/users/falcon4ever/repos","events_url":"https://api.github.com/users/falcon4ever/events{/privacy}","received_events_url":"https://api.github.com/users/falcon4ever/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-09-11T20:14:50Z","updated_at":"2012-09-12T00:14:31Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1587","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1587.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1587.patch"},"body":"This patch adds support for the QNX platforms (BlackBerry PlayBook & BB10) to openFrameworks.\n\nThe code is based of the developPlayBook branch (https://github.com/falcon4ever/openFrameworks/tree/developPlayBook) that has been used for the NodeBeat project (http://nodebeat.com/). However, I have updated the code for compatibility with openFrameworks 0071 (develop branch)\n\nThe current code has been tested using the following SDKs\n- BlackBerry PlayBook Native SDK 2.1.0 beta 1\n- BlackBerry 10 Native SDK 10.0.06 beta 2\n\nTo develop for QNX or run the examples, you will need to download the ofxQNX add-on and place it in the addon folder of openFrameworks.\n- ofxQNX is available on github: https://github.com/falcon4ever/ofxQNX\n\n\nFor now, ofxQNX resides in a different repository for the following reasons:\n- Because I include pre-compiled libraries, the current size of the repository is about 100 MB.\n- Pre-compiled libraries are used because of the complexity involved with building them from scratch. Most of them need to be patched for the QNX compiler and Poco for QNX can't be build on Windows platforms.\n- Another reason for the size (mostly due Poco) is because it supports multiple QNX architectures and build modes. The devices all use an ARMv7 cpu, the simulator uses x86.\n- > PlayBook device (ARMv7) - Release\n- > PlayBook device (ARMv7) - Debug\n- > PlayBook simulator (X86) - Debug\n- > BB10 device (ARMv7) - Release\n- > BB10 device (ARMv7) - Debug\n- > BB10 simulator (X86) - Debug\n\nAdditional info on ofxQNX:\n- https://github.com/falcon4ever/ofxQNX/blob/develop/README.md\n\n\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1586","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1586/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1586/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1586/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1586","id":6766233,"number":1586,"title":"ios-bugfix-orientation","user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":7,"created_at":"2012-09-10T16:29:26Z","updated_at":"2013-03-11T02:30:20Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1586","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1586.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1586.patch"},"body":"ive closed the previous ios orientation PR as it had too many small commits which were going back and forth.\n\nthis PR is the final solution to ios orientation and is good to merge.\n\nios orientation changes are now natively animated by the view controller.\niosOrientationExample demonstrates all the new functionality."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1585","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1585/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1585/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1585/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1585","id":6730865,"number":1585,"title":"ofAppGlutWindow: fix fps calculation and makes setFramerate more accurate","user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-09-08T12:21:50Z","updated_at":"2012-09-08T12:21:50Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1585","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1585.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1585.patch"},"body":"ofGetFrameRate was returning strange values when the gl load was high. Sometimes when the gl task is to gpu intensive it seems to skip a frame draw which gives really short times for one frame. since the fps calculation was accumulating old values this makes the fps go higher. in general this makes the fps go up to about 70-80fps while the total frames in one second is really about 60fps even when this happens. In some systems i've seen it go to even 300-400fps when the real framerate was 60\n\nThis commit fixes that problem + makes ofSetFrameRate more accurate by using microseconds where available (osx and linux) I've tested this reading the max and min times per frame setting the framerate and in an empty application the difference between the min and max times per frame are of about 0.1ms\n\nwould be good to test in other systems to check that it doesn't break, mostly on windows where sleep only works with milliseconds so the calculations are different and i might have introduced an error\n\nif this works properly it would be good to move this calculation to ofNotifyUpdate so different windowing systems don't need to replicate this code\n\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1582","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1582/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1582/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1582/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1582","id":6699645,"number":1582,"title":"ofOpenALSoundPlayer inconsistent checks for multiplay vs loop","user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/code-review","name":"code-review","color":"d7e102"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2012-09-06T21:05:30Z","updated_at":"2012-09-07T01:04:44Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"`ofOpenALSoundPlayer::setLoop` checks for multiplay and aborts of multiplay is true, but `setMultiplay` doesn't check for loop and abort if looping is set. \n\nthis check is perhaps better performed on the ofSoundPlayer before passing on the actual player instance."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1581","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1581/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1581/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1581/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1581","id":6699417,"number":1581,"title":"should the current ofStyle be global or local for each renderer?","user":{"login":"underdoeg","id":243820,"avatar_url":"https://secure.gravatar.com/avatar/6ff8fe2dd72480f1685ee15e374205b7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"6ff8fe2dd72480f1685ee15e374205b7","url":"https://api.github.com/users/underdoeg","html_url":"https://github.com/underdoeg","followers_url":"https://api.github.com/users/underdoeg/followers","following_url":"https://api.github.com/users/underdoeg/following","gists_url":"https://api.github.com/users/underdoeg/gists{/gist_id}","starred_url":"https://api.github.com/users/underdoeg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/underdoeg/subscriptions","organizations_url":"https://api.github.com/users/underdoeg/orgs","repos_url":"https://api.github.com/users/underdoeg/repos","events_url":"https://api.github.com/users/underdoeg/events{/privacy}","received_events_url":"https://api.github.com/users/underdoeg/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/code-review","name":"code-review","color":"d7e102"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2012-09-06T20:57:50Z","updated_at":"2012-09-06T21:34:36Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofStyle is (mostly?) global within ofGraphics.cpp. We were talking about whether ofStyle should belong to the current render or if a global ofStyle makes more sense. I think having it globally can produce some unexpected behaviour when switching the renderer or when using using a renderer in a thread. I guess nobody is doing this currently but it might come up at some point.\n\n\n\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1580","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1580/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1580/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1580/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1580","id":6699268,"number":1580,"title":"ofOpenALSoundPlayer::loadSound calls stream() twice","user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/code-review","name":"code-review","color":"d7e102"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-09-06T20:51:57Z","updated_at":"2012-09-06T20:51:57Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/sound/ofOpenALSoundPlayer.cpp#L365\n\nand again at \nhttps://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/sound/ofOpenALSoundPlayer.cpp#L395"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1579","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1579/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1579/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1579/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1579","id":6699239,"number":1579,"title":"ofOpenALSoundPlayer::loadSound leaks memory on error conditions","user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/code-review","name":"code-review","color":"d7e102"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-09-06T20:50:58Z","updated_at":"2012-09-06T20:50:58Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"in the `if (err != AL_NO_ERROR)` blocks, no close/unstream/alDeleteSources calls are made."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1578","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1578/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1578/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1578/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1578","id":6699228,"number":1578,"title":"setting custom viewport in cairo renderer does not work","user":{"login":"underdoeg","id":243820,"avatar_url":"https://secure.gravatar.com/avatar/6ff8fe2dd72480f1685ee15e374205b7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"6ff8fe2dd72480f1685ee15e374205b7","url":"https://api.github.com/users/underdoeg","html_url":"https://github.com/underdoeg","followers_url":"https://api.github.com/users/underdoeg/followers","following_url":"https://api.github.com/users/underdoeg/following","gists_url":"https://api.github.com/users/underdoeg/gists{/gist_id}","starred_url":"https://api.github.com/users/underdoeg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/underdoeg/subscriptions","organizations_url":"https://api.github.com/users/underdoeg/orgs","repos_url":"https://api.github.com/users/underdoeg/repos","events_url":"https://api.github.com/users/underdoeg/events{/privacy}","received_events_url":"https://api.github.com/users/underdoeg/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-09-06T20:50:33Z","updated_at":"2012-09-06T20:52:33Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"the following code creates a blank pdf\n```\n ofBeginSaveScreenAsPDF(\"test.pdf\", true, true, ofRectangle(0, 0, 100, 300));\n\tofSetColor(0);\n\tofCircle(0,0,100,100);\n\tofEndSaveScreenAsPDF();\n```\n\nWhile this code places a circle in the upper left corner as expected:\n```\n ofBeginSaveScreenAsPDF(\"test.pdf\");\n\tofSetColor(0);\n\tofCircle(0,0,100,100);\n\tofEndSaveScreenAsPDF();\n```\n\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1577","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1577/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1577/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1577/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1577","id":6699106,"number":1577,"title":"ofOpenALSoundPlayer sfReadFile, mpg123ReadFile and mpg123Stream error conditions can leak memory","user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/code-review","name":"code-review","color":"d7e102"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-09-06T20:45:49Z","updated_at":"2012-09-06T20:46:42Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"should call `sf_close` before `return false`, or `mpg123_delete` and `mpg123_close`"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1576","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1576/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1576/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1576/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1576","id":6699082,"number":1576,"title":"ofOpenALSoundPlayer::initialize doesn't check for error conditions","user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/code-review","name":"code-review","color":"d7e102"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-09-06T20:44:45Z","updated_at":"2012-09-06T20:44:45Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":""},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1575","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1575/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1575/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1575/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1575","id":6698700,"number":1575,"title":"ofPath isn't able to switch drawing modes","user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-2D","name":"section-2D","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/code-review","name":"code-review","color":"d7e102"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2012-09-06T20:30:09Z","updated_at":"2012-10-01T19:37:09Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"as per email discussion beginning http://dev.openframeworks.cc/htdig.cgi/of-dev-openframeworks.cc/2012-April/004332.html\n\ni'd like to propose a couple of changes to the way ofPath works around handling Catmull-Rom and Bezier segments. \n\ni'm calling this code:\n\n\tofPath path;\n\tpath.moveTo( 100, 100 );\n\tpath.lineTo( 150, 100 );\n\tpath.curveTo( 200, 150 );\n\tpath.lineTo( 200, 200 );\n\tpath.draw();\n\nwhen i read this i'm visualizing a horizontal line segment and a vertical line segment with a curve smoothly connecting them, something like this (no.1):\n![no.1](http://i47.tinypic.com/uowfd.jpg) \n\n\nor at least (though less desirable), this (no.2):\n![no.2](http://i47.tinypic.com/11tu1cz.jpg)\n\n\nwhat i actually get is this (no.3)\n![no.3](http://i46.tinypic.com/2isglsx.jpg)\n\n\n\nwhether it's a bug or not, i think no.3 is wrong. i asked for a curve! where's my curve? also why is my 3rd point being completely ignored? \n\npossible objections to this line of thinking (aka, what Arturo said): \n\n* 'but Catmull-Rom requires 4 points'\nanswer(a): but i *am* giving it four points: (100,100), (150,100), (200,150), (200,200) (image no.2)\nanswer(b): i'm a beginner and i haven't read the docs so i don't know that 'curveTo' means Catmull-Rom, nor that Catmull-Rom needs 4 points. where's my curve???\nanswer(c): ok, so i'm only giving the algorithm one point, which means i'm doing something wrong. but wait. if you look at my code above, based on the way the API is structured (move to here, straight line to here, curve to here, straight line to here), it doesn't *look* like i'm doing anything wrong. i expect it to work, and when it doesn't i become confused and angry.\n\n* 'why don't you use a bezier instead of a curve vertex?'\nanswer: why should i need to calculate the bezier handles myself? the code can and therefore should do this for me. intuitively, stright line followed by curve followed by straight line should automatically generate control points for a clean transition from the straight segment to curve segment without corners. we can add an explicit 'please make a corner here' bFlag to the curveTo function if we want a corner.\n\n(there's an analogous case here for bezierTo: if i'm coming out of or joining to a straight line segment or another curve i would like an option for my bezier handles to be calculated automatically; similarly it'd be nice to have an option to automatically mirror a previous bezier segment's handle for the first control point to bezierTo, in order to avoid making a corner.)\n\n* 'but this is how ofCurveVertex used to work'\nanswer: no it's not. if you switched vertex types in the middle of a pair of ofBeginShape/ofEndShape, your existing points get thrown away in some circumstances. basically ofBeginShape/endShape wasn't able to handle changing the vertex types mid-path, whereas according to its API, ofPath is.\n\n\nso, what is the correct behaviour with this code?\n\n\tpath.moveTo( 100, 100 );\n\tpath.lineTo( 150, 100 );\n\tpath.curveTo( 200, 150 );\n\tpath.lineTo( 200, 200 );\n\nto me, it's something like no.1, a horizontal line segment and a vertical line segment with a curve smoothly connecting them. \n\n\ndoes anyone else expect something different?\n\nif not, let's make ofPath work this way!\n\n\n\n\n\nnotes: \n\nsource to generate no.3:\n\n\tvector points;\n\tpoints.push_back( ofPoint( 100, 100 ) );\n\tpoints.push_back( ofPoint( 150, 100 ) );\n\tpoints.push_back( ofPoint( 200, 150 ) );\n\tpoints.push_back( ofPoint( 200, 200 ) );\n\n\tofNoFill();\n\tofSetColor( 128, 128, 128 );\n\tfor ( int i=0; i[1] line segment, and find the point along the ray at (say) 1/3 of the distance between [1] and [2]; this is your first control point. do something similar for the second control point.)\n\n\nimage no.2 is generated by\n\n\tpath.moveTo( points[0] );\n\tpath.lineTo( points[1] );\n\tpath.curveTo( points[0] );\n\tpath.curveTo( points[1] );\n\tpath.curveTo( points[2] );\n\tpath.curveTo( points[3] );\n\tpath.lineTo( points[3] );\n\nthis is pretty ugly code and unfortunately it creates corners at points[1] and points[2] which isn't correct in my opinion.\n\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1574","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1574/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1574/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1574/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1574","id":6698381,"number":1574,"title":"ofBitmapModes are not intutively named","user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/code-review","name":"code-review","color":"d7e102"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-09-06T20:16:06Z","updated_at":"2012-09-06T20:33:38Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"\nthese bitmap modes are not very intuitive: \n\n`OF_BITMAP_SIMPLE,\nOF_BITMAPMODE_SCREEN\nOF_BITMAPMODE_VIEWPORT\nOF_BITMAPMODE_MODEL\nOF_BITMAPMODE_MODEL_BILLBOARD`\n\nwondering if we can use better naming or alternatively add some parameters w/ drawing that will make more sense then having different modes (ie, useScreenCoordinates = true / false allows you to switch between viewport and screen). \n\n\n\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1573","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1573/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1573/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1573/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1573","id":6698261,"number":1573,"title":"code repetition about orientation in ofGLRenderer.cpp","user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/code-review","name":"code-review","color":"d7e102"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2012-09-06T20:10:39Z","updated_at":"2012-09-06T21:38:02Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"\n\nthis code for orientation seems to be included twice, it's a bit redundant to have it in both places and would be good to include it once so that if we need to fix it, we don't have it written multiple places: \n\nhttps://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/gl/ofGLRenderer.cpp#L370-420\nhttps://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/gl/ofGLRenderer.cpp#L458-507"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1572","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1572/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1572/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1572/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1572","id":6697968,"number":1572,"title":"ofOpenALSoundPlayer uses a thread internally does not appear thread-safe","user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/code-review","name":"code-review","color":"d7e102"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-09-06T19:58:00Z","updated_at":"2012-09-06T19:58:44Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofOpenALSoundPlayer looks like it ought to have locks around all of its functions. it's using a threadedFunction to handle updating/processing the sound playback streams in a background thread. \n\nalthough OpenAL is itself thread-safe, our code is not thread safe. for example unloadSound deletes channels and sources but if it does this while threadedFunction() is running so a channel might become invalid halfway through updating it on our side, leading to for example a bad buffer reference being passed to different functions.\n\nalso, handling of stream_end is broken. if in the main thread stream_end is assigned true while the threadedFunction is executing code between https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/sound/ofOpenALSoundPlayer.cpp#L505 and line 520, when line 521 executes the value of stream_end is assigned back to false and the stream will not end."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1571","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1571/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1571/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1571/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1571","id":6697860,"number":1571,"title":"Does ofPath support drawing both fill and stroke at the same time?","user":{"login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","html_url":"https://github.com/danomatika","followers_url":"https://api.github.com/users/danomatika/followers","following_url":"https://api.github.com/users/danomatika/following","gists_url":"https://api.github.com/users/danomatika/gists{/gist_id}","starred_url":"https://api.github.com/users/danomatika/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danomatika/subscriptions","organizations_url":"https://api.github.com/users/danomatika/orgs","repos_url":"https://api.github.com/users/danomatika/repos","events_url":"https://api.github.com/users/danomatika/events{/privacy}","received_events_url":"https://api.github.com/users/danomatika/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-2D","name":"section-2D","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/code-review","name":"code-review","color":"d7e102"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2012-09-06T19:52:39Z","updated_at":"2012-09-06T20:25:23Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I can't tell from the ofPath api if you can draw both fill and stroke simultaneously. Regular ofGrpahics calls do not support this ...\n\nAlso, what happens if you:\n\n```\npath.setFilled(false);\npath.setStrokeWidth(0);\n```\nIs nothing drawn? If the api supports drawing both fill and outline, then it would make sense that setting the stroke width to 0 here would automatically set fill to true ... so at least something is drawn. Same conversely ...\n\nEdit: In fact, having a stroke/fill approach does not match the ofGraphics api. Maybe it makes sense to just have setColor(), fill(), and nofill() so ofPath works the same way ..."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1570","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1570/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1570/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1570/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1570","id":6697605,"number":1570,"title":"retain / release & static map for opengl objects could be abstracted","user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/code-review","name":"code-review","color":"d7e102"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2012-09-06T19:41:40Z","updated_at":"2012-09-06T20:06:21Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"\nin reviewing the code, we've seen a bunch of chunks of code for each opengl based object that handles a static map between GLunits and int ids, and which has retain and release code that the objects (ofLight, ofTexture, ofFbo) use. It seems like this code could be written once (glManager?), and then used in multiple places, with some minor customization based on the object you're tracking. It would mean less repetition in the code, and if we want to expand on what this code does it will make it easier to have it only in one place. \n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1569","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1569/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1569/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1569/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1569","id":6695826,"number":1569,"title":"ofGraphics modes current settings getters","user":{"login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","html_url":"https://github.com/danomatika","followers_url":"https://api.github.com/users/danomatika/followers","following_url":"https://api.github.com/users/danomatika/following","gists_url":"https://api.github.com/users/danomatika/gists{/gist_id}","starred_url":"https://api.github.com/users/danomatika/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danomatika/subscriptions","organizations_url":"https://api.github.com/users/danomatika/orgs","repos_url":"https://api.github.com/users/danomatika/repos","events_url":"https://api.github.com/users/danomatika/events{/privacy}","received_events_url":"https://api.github.com/users/danomatika/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-2D","name":"section-2D","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/code-review","name":"code-review","color":"d7e102"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-09-06T18:30:11Z","updated_at":"2012-09-06T18:30:39Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"It'd be nice to be able to get the current value of some of the graphics modes, aka something like\n\n```\nbool ofIsBlendingEnabled();\nbool ofArePointSpritesEnabled();\nbool ofIsAlphaBlendingEnabled();\nbool ofIsSmoothingEnabled();\n```\n\nThere could also be a function to get the current color which pulls from the default style ...\n\n```\nofColor ofGetColor() {\n return ofGetStyle().getColor();\n}\n```"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1567","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1567/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1567/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1567/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1567","id":6692471,"number":1567,"title":"ofThread does not have a setVerbose method","user":{"login":"NickHardeman","id":142694,"avatar_url":"https://secure.gravatar.com/avatar/4fc88ba881fee72fc4c5de473dc2ebbf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"4fc88ba881fee72fc4c5de473dc2ebbf","url":"https://api.github.com/users/NickHardeman","html_url":"https://github.com/NickHardeman","followers_url":"https://api.github.com/users/NickHardeman/followers","following_url":"https://api.github.com/users/NickHardeman/following","gists_url":"https://api.github.com/users/NickHardeman/gists{/gist_id}","starred_url":"https://api.github.com/users/NickHardeman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/NickHardeman/subscriptions","organizations_url":"https://api.github.com/users/NickHardeman/orgs","repos_url":"https://api.github.com/users/NickHardeman/repos","events_url":"https://api.github.com/users/NickHardeman/events{/privacy}","received_events_url":"https://api.github.com/users/NickHardeman/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/code-review","name":"code-review","color":"d7e102"}],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2012-09-06T16:18:11Z","updated_at":"2012-09-06T20:11:24Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"It can only be set in the startThread method.\n\nshould have `setVerbose` and `isVerbose` methods.\n\nmaybe `isBlocking` and `setBlocking` methods?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1566","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1566/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1566/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1566/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1566","id":6691693,"number":1566,"title":"ofBaseSoundStream setDeviceId doesn't close/reopen the sound stream","user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/code-review","name":"code-review","color":"d7e102"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-09-06T15:50:26Z","updated_at":"2012-09-06T15:50:26Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"on ofBaseSoundStream::setup, setDeviceId can currently only be called before setup(). this should either close+reopen the stream or throw an error message."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1565","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1565/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1565/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1565/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1565","id":6691195,"number":1565,"title":"more primitives for OF - Cuboid, Cylinder, meshPlane etc and getters.","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/code-review","name":"code-review","color":"d7e102"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":2,"created_at":"2012-09-06T15:34:03Z","updated_at":"2013-02-11T12:12:36Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofGetSphere, ofGetBox, ofGetCuboid - returns an ofMesh object with the requested dimensions. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1564","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1564/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1564/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1564/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1564","id":6691170,"number":1564,"title":"ofPixels::copyFrom needs a re-write","user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/code-review","name":"code-review","color":"d7e102"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2012-09-06T15:33:33Z","updated_at":"2012-09-06T16:03:06Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"this function looks problematic -- there's a sizeof(float) which could be bad where `sizeof(int) == sizeof(float)`, and there's a potential to use memcpy elsewhere in the funciton. also some ternary operators that look odd. it also could be really commented fully. \n\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1563","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1563/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1563/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1563/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1563","id":6690881,"number":1563,"title":"ofRenderCollection seems redundant","user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/code-review","name":"code-review","color":"d7e102"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-09-06T15:24:10Z","updated_at":"2012-09-06T15:24:23Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"in the group review we started to discuss ofRenderCollection and if it was really necessary as a file -- it's alot of reimplementation of code and it means that as we make changes to the render pipeline, there's now three places we need to change it (in the ofCore, in the render and in the collection). \n\nalso, the name \"ofRenderCollection\" feels very java :)\n\nCould we move the logic of ofRenderCollection closer into OF, ie, ? At the moment, there's for sure something repetitive happening here, and if multiple renders is something we really care about and wish to support, we could switch all the calls that do: \n\n`renderer->`\n\nto \n\n`for (int i = 0; i < renders.size(); i++){\n}`\n\nand just remove this file?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1562","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1562/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1562/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1562/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1562","id":6690839,"number":1562,"title":"Constructors in openFrameworks","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/code-review","name":"code-review","color":"d7e102"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2012-09-06T15:22:43Z","updated_at":"2012-09-06T15:31:29Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"We need a standardized approach to constructors.\n\nThe hardline answer is that there are only two types of constructors:\n\n* default constructors\n* copy constructors\n\nThis means that `ofBuffer(const string)` shouldn't exist, only `ofBuffer::load(const string)`. That's kind of reasonable.\n\nBut it also means that `ofRectangle(x,y,w,h)` shouldn't exist, and that's unreasonable.\n\nI think a good guideline is that if anything would be called `load`, `init` or `setup`, then it should be in a method, not a constructor. If something would be called `set` (simple data container) then it's ok to have a constructor.\n\nWhat does everyone think? Should `ofFile(string filename)` exist? How about `ofFile(string filename, bool binary)`? How about `ofImage(string filename)`?\n\nCode is cheap, but having more alternatives can make things harder to explain and more difficult to maintain, even when they're simple wrappers."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1561","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1561/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1561/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1561/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1561","id":6690737,"number":1561,"title":"ofDirectory::removeDirectory","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/code-review","name":"code-review","color":"d7e102"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2012-09-06T15:19:20Z","updated_at":"2012-09-06T16:14:01Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"This is just an unfortunate arg ordering. \n\nAll other ofFile / ofDirectory methods have `bRelativeToData = true` as the second arg.\nwith `removeDirectory` the second arg is `deleteIfEmpty` - so it might be easy to be confused with the others and have people accidentally. \n\nhttps://github.com/openframeworks/openFrameworks/blob/develop/libs/openFrameworks/utils/ofFileUtils.h#L272\n\nps: not sure what the best fix is here. \nanything to do with deleting files should be handled with care."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1560","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1560/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1560/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1560/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1560","id":6690115,"number":1560,"title":"stop using strings for file path manipulation","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/code-review","name":"code-review","color":"d7e102"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":5,"created_at":"2012-09-06T14:57:29Z","updated_at":"2013-02-11T12:12:36Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"This is sort of a global issue and is being partly addressed by @elliotwoods 's PR for ofDataPath #1523\n\nWe should refrain from doing string manipulation on paths and use poco path for everything but actually passing the path to the loader/saver/manipulator .\n\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1559","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1559/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1559/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1559/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1559","id":6689861,"number":1559,"title":"deprecate ofBufferToFile() procedural style loaders and savers","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/code-review","name":"code-review","color":"d7e102"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":7,"created_at":"2012-09-06T14:50:26Z","updated_at":"2013-02-11T12:12:36Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofBufferToFile\nofBufferFromFile\nofLoadImage \nofSaveImage etc. \n\nhttps://github.com/openframeworks/openFrameworks/blob/develop/libs/openFrameworks/utils/ofFileUtils.h#L54\n\nLets discuss better options for loading and saving ofBuffer, ofTexture, ofImage, ofPixels. \nSuspect that the c-style methods are not being used / don't feel intuitive. \n\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1558","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1558/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1558/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1558/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1558","id":6689792,"number":1558,"title":"ofVec3f/ofVec4f operator== and operator!= rely on float==","user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/code-review","name":"code-review","color":"d7e102"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2012-09-06T14:47:54Z","updated_at":"2012-09-18T10:31:10Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"float== is unreliable. cf http://stackoverflow.com/questions/17333/most-effective-way-for-float-and-double-comparison \n\nhttp://stackoverflow.com/questions/6837007/comparing-float-double-values-using-operator suggests using `if (fabs((double)a/b - 1) < epsilon)` to avoid issues occuring when you don't know the ranges of a and b, this is for java but probably would work with c++ also."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1557","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1557/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1557/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1557/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1557","id":6689732,"number":1557,"title":"ofVec2f::perpendicular to return a choice of left or right perpendicular","user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-2D","name":"section-2D","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/code-review","name":"code-review","color":"d7e102"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-09-06T14:45:45Z","updated_at":"2012-09-06T14:45:45Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"`ofVec2f::perpendicular`\nshould be able to return a choice of the left or right perpendicular to the vector.\ncould either be done by passing a variable into the function\nor splitting the function into,\n`ofVec2f::perpendicularLeft`\n`ofVec2f::perpendicularRight`\n(perhaps)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1556","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1556/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1556/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1556/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1556","id":6689680,"number":1556,"title":"ofMesh has setName, but no getName()","user":{"login":"NickHardeman","id":142694,"avatar_url":"https://secure.gravatar.com/avatar/4fc88ba881fee72fc4c5de473dc2ebbf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"4fc88ba881fee72fc4c5de473dc2ebbf","url":"https://api.github.com/users/NickHardeman","html_url":"https://github.com/NickHardeman","followers_url":"https://api.github.com/users/NickHardeman/followers","following_url":"https://api.github.com/users/NickHardeman/following","gists_url":"https://api.github.com/users/NickHardeman/gists{/gist_id}","starred_url":"https://api.github.com/users/NickHardeman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/NickHardeman/subscriptions","organizations_url":"https://api.github.com/users/NickHardeman/orgs","repos_url":"https://api.github.com/users/NickHardeman/repos","events_url":"https://api.github.com/users/NickHardeman/events{/privacy}","received_events_url":"https://api.github.com/users/NickHardeman/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/code-review","name":"code-review","color":"d7e102"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-09-06T14:43:36Z","updated_at":"2012-09-06T14:43:36Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"There is a `setName()` function for ofMesh, but no `getName()` \nhttps://github.com/openframeworks/openFrameworks/blob/develop/libs/openFrameworks/3d/ofMesh.h#L104\n\nprobably should remove this in the future, but while there is a setName, there should be getName"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1555","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1555/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1555/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1555/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1555","id":6689403,"number":1555,"title":"ofVec2f::average not checking if one of the params is zero.","user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/code-review","name":"code-review","color":"d7e102"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-09-06T14:32:57Z","updated_at":"2012-09-06T14:32:57Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"inline ofVec2f& ofVec2f::average( const ofVec2f* points, int num )\n\nnum could come come in as zero.\nneed to check if zero and handle.\n\nhttps://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/math/ofVec2f.h#L609-619"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1554","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1554/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1554/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1554/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1554","id":6689115,"number":1554,"title":"Group: Cleanup","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/code-review","name":"code-review","color":"d7e102"}],"state":"open","assignee":null,"milestone":null,"comments":35,"created_at":"2012-09-06T14:22:20Z","updated_at":"2012-09-06T21:23:58Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Cleanup includes anything that needs to just be removed or rearranged/moved around without changing the syntax or semantics of openFrameworks. For example: comment removal, or moving definitions around.\n\nThis is a group of issues identified during Code Review 2012. Add any relevant issues to this group, and when they are all closed we will close this issue. If an issue fits this pattern, but is more significant or not a simple fix, please add it as a separate issue."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1552","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1552/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1552/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1552/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1552","id":6688624,"number":1552,"title":"Group: Needs Comments","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/code-review","name":"code-review","color":"d7e102"}],"state":"open","assignee":null,"milestone":null,"comments":37,"created_at":"2012-09-06T14:02:39Z","updated_at":"2012-09-06T21:20:19Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Some chunks of openFrameworks need comments to describe their input/output range or the units of their output. This should generally be covered by the documentation, but if a function/method is especially ambiguous then it should have a single line of documentation. If a section has been commented out, it should also be explained why.\n\nThis is a group of issues identified during Code Review 2012. Add any relevant issues to this group, and when they are all closed we will close this issue. If an issue fits this pattern, but is more significant or not a simple fix, please add it as a separate issue."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1550","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1550/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1550/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1550/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1550","id":6688604,"number":1550,"title":"Group: Deprecated Code","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/code-review","name":"code-review","color":"d7e102"}],"state":"open","assignee":null,"milestone":null,"comments":23,"created_at":"2012-09-06T14:02:05Z","updated_at":"2013-02-22T14:51:59Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Deprecated code includes anything that shouldn't exist in a perfect openFrameworks code base.\n\nThis is a group of issues identified during Code Review 2012. Add any relevant issues to this group, and when they are all closed we will close this issue. If an issue fits this pattern, but is more significant or not a simple fix, please add it as a separate issue."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1549","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1549/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1549/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1549/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1549","id":6688593,"number":1549,"title":"Group: Weird Globals","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/code-review","name":"code-review","color":"d7e102"}],"state":"open","assignee":null,"milestone":null,"comments":8,"created_at":"2012-09-06T14:01:45Z","updated_at":"2012-09-06T18:52:38Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Weird globals include anything that should be moved form a header to cpp file, or methods that are unnecessarily exposed, or functions that should be methods.\n\nThis is a group of issues identified during Code Review 2012. Add any relevant issues to this group, and when they are all closed we will close this issue. If an issue fits this pattern, but is more significant or not a simple fix, please add it as a separate issue."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1548","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1548/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1548/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1548/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1548","id":6688561,"number":1548,"title":"Group: Poor Abstraction Patterns","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/code-review","name":"code-review","color":"d7e102"}],"state":"open","assignee":null,"milestone":null,"comments":17,"created_at":"2012-09-06T14:01:02Z","updated_at":"2012-09-07T01:46:00Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"A poor abstraction is when a method or data belongs to one class, but should belong to a sub or super or adjacent class.\n\nThis is a group of issues identified during Code Review 2012. Add any relevant issues to this group, and when they are all closed we will close this issue. If an issue fits this pattern, but is more significant or not a simple fix, please add it as a separate issue."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1547","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1547/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1547/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1547/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1547","id":6688551,"number":1547,"title":"Group: Naming Inconsistencies","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/code-review","name":"code-review","color":"d7e102"}],"state":"open","assignee":null,"milestone":null,"comments":77,"created_at":"2012-09-06T14:00:45Z","updated_at":"2012-09-13T16:23:21Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Naming inconsistencies are: poorly named methods, functions, constants, classes, and arguments.\n\nThis is a group of issues identified during Code Review 2012. Add any relevant issues to this group, and when they are all closed we will close this issue. If an issue fits this pattern, but is more significant or not a simple fix, please add it as a separate issue."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1546","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1546/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1546/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1546/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1546","id":6684509,"number":1546,"title":"Smoothing and additive blending","user":{"login":"sebleedelisle","id":110866,"avatar_url":"https://secure.gravatar.com/avatar/4ced05c7d50bae1a413798f9041aaa90?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"4ced05c7d50bae1a413798f9041aaa90","url":"https://api.github.com/users/sebleedelisle","html_url":"https://github.com/sebleedelisle","followers_url":"https://api.github.com/users/sebleedelisle/followers","following_url":"https://api.github.com/users/sebleedelisle/following","gists_url":"https://api.github.com/users/sebleedelisle/gists{/gist_id}","starred_url":"https://api.github.com/users/sebleedelisle/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sebleedelisle/subscriptions","organizations_url":"https://api.github.com/users/sebleedelisle/orgs","repos_url":"https://api.github.com/users/sebleedelisle/repos","events_url":"https://api.github.com/users/sebleedelisle/events{/privacy}","received_events_url":"https://api.github.com/users/sebleedelisle/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2012-09-06T10:27:43Z","updated_at":"2012-11-14T23:45:17Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hi guys! \n\nI'm not sure why but as soon as you enable smoothing, additive blending is disabled. In fact I think someone on the team is also unsure - see the comment \"why do we need this?\" in libs/openFrameworks/gl/ofGLRenderer.cpp :) \n```c++\n//----------------------------------------------------------\nvoid ofGLRenderer::startSmoothing(){\n\t#ifndef TARGET_OPENGLES\n\t\tglPushAttrib(GL_COLOR_BUFFER_BIT | GL_ENABLE_BIT);\n\t#endif\n\n\tglHint(GL_LINE_SMOOTH_HINT, GL_NICEST);\n\tglEnable(GL_LINE_SMOOTH);\n\n\t//why do we need this?\n\tglEnable(GL_BLEND);\n\tglBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);\n}\n```\n\nI commented it out and it seemed to work OK, but I'm sure there are other repercussions. But it would be nice to have smoothing and blendmodes. \n\ncheers\nSeb\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1544","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1544/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1544/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1544/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1544","id":6645610,"number":1544,"title":"pointer troubles in vs2012","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":5,"created_at":"2012-09-04T20:40:11Z","updated_at":"2013-02-11T12:16:06Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I'm getting a whole zoo of pointer errors compilng oF with vs2012\nnasty stuff. you can use the vs2010 sdk (v100) with vs2012 (v120)\nbut the only advertised way of doing this is by installing vs2010\n\nerrors at\nhttps://gist.github.com/3626201\n\nnot sure what's going here but just flagging it to start with"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1541","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1541/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1541/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1541/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1541","id":6637558,"number":1541,"title":"fixes ofPtr","user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":3,"created_at":"2012-09-04T15:25:29Z","updated_at":"2013-03-11T07:50:07Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1541","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1541.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1541.patch"},"body":"adds non-explicit constructor from shared_ptr so it can be used as one + imports everything related to smart pointers from std::tr1 into std:: so the syntax is clearer"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1539","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1539/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1539/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1539/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1539","id":6621962,"number":1539,"title":"ofTrueTypeFont support for iso8859-1 on utf-8 encoded files","user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":9,"created_at":"2012-09-03T20:21:29Z","updated_at":"2013-01-26T14:59:43Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1539","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1539.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1539.patch"},"body":"ofTrueTypeFont as it is right now has support for all the characters in iso8859-1 if the flag bFullCharacterSet is set to true when loading, which can render all the extended characters in the latin alphabet like ñàäáâç... \n\nthe problem is that most IDEs use utf-8 encoding by default so when writing this characters in strings in the code or text files they fail to render because the encoding freetype is expecting is iso8859-1.\n\nthis converts utf-8 to iso8859-1 which solves the problem of rendering special characters for the latin alphabet. might be good to test in code from other ide's in case the default encoding is not utf-8"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1527","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1527/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1527/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1527/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1527","id":6581728,"number":1527,"title":"ofGetGLTypeFromPixelFormat error ? ","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":0,"created_at":"2012-08-31T15:26:32Z","updated_at":"2013-02-11T12:16:06Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"@arturoc is this an error? shouldn't it return GL_BGRA ? \n\n\tinline int ofGetGLTypeFromPixelFormat(ofPixelFormat pixelFormat){\n\t\tswitch(pixelFormat){\n\t\tcase OF_PIXELS_BGRA:\n\t\t\treturn GL_RGBA;\n\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1524","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1524/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1524/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1524/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1524","id":6559975,"number":1524,"title":"Adding support for ScaleGestureDetector on Android","user":{"login":"bostonbusmap","id":863262,"avatar_url":"https://secure.gravatar.com/avatar/433032cca043cedb67180dc5109062da?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"433032cca043cedb67180dc5109062da","url":"https://api.github.com/users/bostonbusmap","html_url":"https://github.com/bostonbusmap","followers_url":"https://api.github.com/users/bostonbusmap/followers","following_url":"https://api.github.com/users/bostonbusmap/following","gists_url":"https://api.github.com/users/bostonbusmap/gists{/gist_id}","starred_url":"https://api.github.com/users/bostonbusmap/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bostonbusmap/subscriptions","organizations_url":"https://api.github.com/users/bostonbusmap/orgs","repos_url":"https://api.github.com/users/bostonbusmap/repos","events_url":"https://api.github.com/users/bostonbusmap/events{/privacy}","received_events_url":"https://api.github.com/users/bostonbusmap/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/android","name":"android","color":"2bc4ad"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-08-30T17:43:54Z","updated_at":"2012-08-30T17:44:17Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"This would basically add support for pinch zoom, similar to the current support for swipes. I'm willing to add the support myself, but I wanted to submit an issue first to make sure it wasn't already done and that the functionality was wanted.\n\nIt would also require Android 2.2 or higher. I think that's what is recommended currently but I wanted to make sure that's an absolute requirement for ofxAndroid. Can anyone comment whether I should go forward with this?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1523","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1523/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1523/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1523/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1523","id":6558968,"number":1523,"title":"Bugfix ofToDataPath using Poco::Path","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":32,"created_at":"2012-08-30T17:05:10Z","updated_at":"2013-03-10T19:39:35Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1523","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1523.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1523.patch"},"body":"Replaces #1251\n\nCloses #1522, #1250, #819\n\nNeeds serious testing across all platforms.\nWorks fine here on osx first time (so i might have overlooked something)\n\nUsing Poco::Path we seriously clear up a bunch of folder functions.\n\nI've also introduced ofSetWorkingDirectoryToDefault() and moved the call for it to ofRunApp, which should resolve #1522\n\nAlso I'm starting to think that ofDirectory should be returning Poco::Path derivatives not Poco::File derivatives.\n\nI'm not sure here if windows system dialogs changing the cwd are fixed. Will look more now, but eyes on early!"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1522","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1522/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1522/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1522/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1522","id":6557319,"number":1522,"title":"ofSetDataPathRoot doing what it shouldn't","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2012-08-30T16:02:39Z","updated_at":"2012-08-30T16:07:23Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Currently `ofSetDataPathRoot` reads as:\n\n```c++\n//--------------------------------------------------\nvoid ofSetDataPathRoot(string newRoot){\n\tstring newPath = \"\";\n\n\t#ifdef TARGET_OSX\n\t\t#ifndef TARGET_OF_IPHONE\n\t\t\tchar path[MAXPATHLEN];\n\t\t\tuint32_t size = sizeof(path);\n\n\t\t\tif (_NSGetExecutablePath(path, &size) == 0){\n\t\t\t\t//printf(\"executable path is %s\\n\", path);\n\t\t\t\tstring pathStr = string(path);\n\n\t\t\t\t//theo: check this with having '/' as a character in a folder name - OSX treats the '/' as a ':'\n\t\t\t\t//checked with spaces too!\n\n\t\t\t\tvector < string> pathBrokenUp = ofSplitString( pathStr, \"/\");\n\n\t\t\t\tnewPath = \"\";\n\n\t\t\t\tfor(int i = 0; i < pathBrokenUp.size()-1; i++){\n\t\t\t\t\tnewPath += pathBrokenUp[i];\n\t\t\t\t\tnewPath += \"/\";\n\t\t\t\t}\n\n\t\t\t\t//cout << newPath << endl; // some sanity checks here\n\t\t\t\t//system( \"pwd\" );\n\n\t\t\t\tchdir ( newPath.c_str() );\n\t\t\t\t//system(\"pwd\");\n\t\t\t}else{\n\t\t\t\tofLog(OF_LOG_FATAL_ERROR, \"buffer too small; need size %u\\n\", size);\n\t\t\t}\n\t\t#endif\n\t#endif\n\t\n\tdataPathRoot() = newRoot;\n\tisDataPathSet() = true;\n}\n```\n\nAfter talking to @ofTheo , it's important to make sure that our working directory is set to our .app enclosing folder so our data folder keeps the same relative location.\n\nThis function is generally first made at the first call of ofToDataPath, meaning that ofToDataPath can change your working directory. Therefore I suggest we:\n\n1. Move this to `ofRunApp`\n2. Rewrite this using Poco::Path\n3. Implement this for Windows/VS also (to avoid $(TargetDir) issues)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1519","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1519/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1519/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1519/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1519","id":6518810,"number":1519,"title":"ofVboMesh::draw - normals update logic reversed?","user":{"login":"jvcleave","id":150037,"avatar_url":"https://secure.gravatar.com/avatar/9c0384a91739bea093f453cf40a59742?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"9c0384a91739bea093f453cf40a59742","url":"https://api.github.com/users/jvcleave","html_url":"https://github.com/jvcleave","followers_url":"https://api.github.com/users/jvcleave/followers","following_url":"https://api.github.com/users/jvcleave/following","gists_url":"https://api.github.com/users/jvcleave/gists{/gist_id}","starred_url":"https://api.github.com/users/jvcleave/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jvcleave/subscriptions","organizations_url":"https://api.github.com/users/jvcleave/orgs","repos_url":"https://api.github.com/users/jvcleave/repos","events_url":"https://api.github.com/users/jvcleave/events{/privacy}","received_events_url":"https://api.github.com/users/jvcleave/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-08-29T05:11:33Z","updated_at":"2012-08-29T05:11:33Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"from the forum:\nhttp://forum.openframeworks.cc/index.php/topic,10596.new.html\n\nIt looks like line 60 and 63 need swapped to be in line with the other properties? \n\nhttps://github.com/openframeworks/openFrameworks/blob/develop/libs/openFrameworks/gl/ofVboMesh.cpp#L60"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1517","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1517/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1517/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1517/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1517","id":6503331,"number":1517,"title":"ProjectGenerator does not compile with VS 2012","user":{"login":"JakeHendy","id":545914,"avatar_url":"https://secure.gravatar.com/avatar/1bae85527cf76c1d48d9111055eaf148?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"1bae85527cf76c1d48d9111055eaf148","url":"https://api.github.com/users/JakeHendy","html_url":"https://github.com/JakeHendy","followers_url":"https://api.github.com/users/JakeHendy/followers","following_url":"https://api.github.com/users/JakeHendy/following","gists_url":"https://api.github.com/users/JakeHendy/gists{/gist_id}","starred_url":"https://api.github.com/users/JakeHendy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/JakeHendy/subscriptions","organizations_url":"https://api.github.com/users/JakeHendy/orgs","repos_url":"https://api.github.com/users/JakeHendy/repos","events_url":"https://api.github.com/users/JakeHendy/events{/privacy}","received_events_url":"https://api.github.com/users/JakeHendy/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-08-28T16:18:55Z","updated_at":"2012-08-28T16:18:55Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I've tried the 0.71 release from the OpenFrameworks website and also cloning the repo and using the `develop` branch. \n\nAttempting to compile the ProjectGenerator using the repo yields different results depending on the solution configuration.\n\n[Release Error List](http://f.cl.ly/items/3a2P2A0y0S3x1K2u090i/OpenFrameworks%20GitHub%20Release%20Errors%2028-08-2012.txt)\n\n[Debug error List](http://f.cl.ly/items/462K3e0n2q0T0C1U3k3s/OpenFrameworks%20GitHub%20Debug%20Errors%2028-08-2012.txt)\n\nUnfortunately I'm a complete fool at C++, and I wanted to use OpenFrameworks to get into it. I haven't been able to get it to compile on OS X 10.8 or Windows 7 (using VS 2012 RC and the openframeworks.cc version) or Windows 8 (with VS 2012 RTM). \n\nAny ideas?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1515","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1515/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1515/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1515/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1515","id":6488541,"number":1515,"title":"Bug in ofShader setupShaderFromSource() - OpenGL error 1280","user":{"login":"digitologist","id":728401,"avatar_url":"https://secure.gravatar.com/avatar/6066657aec6e02f2529e7cc573a23227?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"6066657aec6e02f2529e7cc573a23227","url":"https://api.github.com/users/digitologist","html_url":"https://github.com/digitologist","followers_url":"https://api.github.com/users/digitologist/followers","following_url":"https://api.github.com/users/digitologist/following","gists_url":"https://api.github.com/users/digitologist/gists{/gist_id}","starred_url":"https://api.github.com/users/digitologist/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/digitologist/subscriptions","organizations_url":"https://api.github.com/users/digitologist/orgs","repos_url":"https://api.github.com/users/digitologist/repos","events_url":"https://api.github.com/users/digitologist/events{/privacy}","received_events_url":"https://api.github.com/users/digitologist/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":3,"created_at":"2012-08-28T00:44:40Z","updated_at":"2013-02-20T11:16:21Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Just upgraded my project to 0071, and got a new error in my console:\n> OF: OF_LOG_ERROR: OpenGL generated error 1280 trying to get the compile status for GL_FRAGMENT_SHADER shader. Does your video card support this?\n\nI tracked it down to the following lines:\n> // check compile status\n>\tGLint status = GL_FALSE;\n>\tglGetShaderiv(shader, GL_COMPILE_STATUS, &status);\n> GLuint err = glGetError();\n> if (err != GL_NO_ERROR){\n> ofLog( OF_LOG_ERROR, \"OpenGL generated error \" + ofToString(err) + \" trying to get the compile status for \" + nameForType(type) + \" shader. Does your video card support this?\" );\n> return false;\n> }\n\nDespite the status resolving to true, the glGetError() check was delivering an error 1280. I was able to fix the problem by adding another call to glGetError() earlier in the function body:\n\n>// create program if it doesn't exist already\n>\tcheckAndCreateProgram();\n>\t**GLuint clearErrors = glGetError();**\n>\t\n>\t// create shader\n>\tGLuint shader = glCreateShader(type);"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1514","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1514/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1514/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1514/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1514","id":6487194,"number":1514,"title":"ofDrawBitmapStringHighlight doesn't respect ofDrawBitmapMode ","user":{"login":"bakercp","id":300484,"avatar_url":"https://secure.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","url":"https://api.github.com/users/bakercp","html_url":"https://github.com/bakercp","followers_url":"https://api.github.com/users/bakercp/followers","following_url":"https://api.github.com/users/bakercp/following","gists_url":"https://api.github.com/users/bakercp/gists{/gist_id}","starred_url":"https://api.github.com/users/bakercp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bakercp/subscriptions","organizations_url":"https://api.github.com/users/bakercp/orgs","repos_url":"https://api.github.com/users/bakercp/repos","events_url":"https://api.github.com/users/bakercp/events{/privacy}","received_events_url":"https://api.github.com/users/bakercp/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2012-08-27T23:10:37Z","updated_at":"2012-08-28T19:30:07Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hey @kylemcdonald, this occurs when drawing inside of an fbo when using the default `OF_BITMAPMODE_MODEL_BILLBOARD`\n\n```c++\n ofDrawBitmapStringHighlight(s,p);\n```\n\nBasically, I think the ofRect [here](https://github.com/openframeworks/openFrameworks/blob/develop/libs/openFrameworks/graphics/ofGraphics.cpp#L1150) needs the same `ofDrawBitmapMode` dependent view treatment that the bitmap string gets [here](https://github.com/openframeworks/openFrameworks/blob/develop/libs/openFrameworks/gl/ofGLRenderer.cpp#L1061)."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1512","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1512/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1512/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1512/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1512","id":6475720,"number":1512,"title":"Error on addAttribute method on ofxXmlSettings","user":{"login":"camilosw","id":1142037,"avatar_url":"https://secure.gravatar.com/avatar/6af66148027bd6eb5b91165b1ee15b18?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"6af66148027bd6eb5b91165b1ee15b18","url":"https://api.github.com/users/camilosw","html_url":"https://github.com/camilosw","followers_url":"https://api.github.com/users/camilosw/followers","following_url":"https://api.github.com/users/camilosw/following","gists_url":"https://api.github.com/users/camilosw/gists{/gist_id}","starred_url":"https://api.github.com/users/camilosw/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/camilosw/subscriptions","organizations_url":"https://api.github.com/users/camilosw/orgs","repos_url":"https://api.github.com/users/camilosw/repos","events_url":"https://api.github.com/users/camilosw/events{/privacy}","received_events_url":"https://api.github.com/users/camilosw/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":2,"created_at":"2012-08-27T14:58:51Z","updated_at":"2013-02-11T12:16:05Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I got this error:\n\nerror: call of overloaded 'addAttribute(const char [6], const char [2], float)' is ambiguous\n\nThis hapened when I call addAttribute in this way:\n\n```c++\nsettings.addAttribute(\"point\", \"x\", value);\n```\n\nThere is a conflict between this addAttribute methods, because the compiler can't figure what of them call:\n\n```c++\nint addAttribute(const string& tag, const string& attribute, double value, int which = 0);\nint addAttribute(const string& tag, const string& attribute, double value);\n```\n\nI'm working in codeblocks on windows."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1511","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1511/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1511/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1511/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1511","id":6467460,"number":1511,"title":"feature : core add-on ofxAssets","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":14,"created_at":"2012-08-27T07:04:39Z","updated_at":"2012-12-21T14:57:01Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"hey all!\n\nin a few of my addons i build an asset register to handle:\n* images\n* shaders\n* fonts\n\nThe idea is common. That on program start (and whenever you call `ofxAssets::rescan()`), it scans the `data/` folder for assets and builds the dictionaries.\n\ne.g. if my folder structure is like\n\n```\ndata/landscape.png\ndata/phong.vert\ndata/phong.frag\ndata/blur.frag\ndata/verdana.ttf\n```\n\nor sometimes i do...\n\n```\ndata/images/landscape.png\ndata/shaders/phong.vert\ndata/shaders/phong.frag\ndata/shaders/blur.frag\ndata/fonts/verdana.ttf\n```\n\nI can then access these from anywhere in my app as long as i'm including the ofxAssets header:\n\n```c++\n#include \"ofxAssets.h\"\nusing namespace ofxAssets;\n\nvoid testApp::draw() {\n shader[\"blur\"].begin();\n image[\"landscape\"].draw(10,10);\n shader[\"blur\"].end();\n font[\"verdana\"].drawString(\"is this API correct?\", 10, 10);\n\n //or if i don't want to add the using namespace clause\n ofxAssets::shader[\"phong\"].setUniform3f(\"position\", myVec3);\n}\n```\n\nI'd like to see this as a core add-on as I think it's rather universally useful, the code is beginning to be duplicated in different addons and the API is simple enough to avoid much deliberation. (spoke to soon)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1510","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1510/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1510/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1510/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1510","id":6416697,"number":1510,"title":"ofxAndroidVideoGrabber improve","user":{"login":"inspirit","id":223020,"avatar_url":"https://secure.gravatar.com/avatar/a6a9307749588c6cc9887a9b473d55e9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"a6a9307749588c6cc9887a9b473d55e9","url":"https://api.github.com/users/inspirit","html_url":"https://github.com/inspirit","followers_url":"https://api.github.com/users/inspirit/followers","following_url":"https://api.github.com/users/inspirit/following","gists_url":"https://api.github.com/users/inspirit/gists{/gist_id}","starred_url":"https://api.github.com/users/inspirit/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/inspirit/subscriptions","organizations_url":"https://api.github.com/users/inspirit/orgs","repos_url":"https://api.github.com/users/inspirit/repos","events_url":"https://api.github.com/users/inspirit/events{/privacy}","received_events_url":"https://api.github.com/users/inspirit/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/android","name":"android","color":"2bc4ad"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-08-23T19:05:56Z","updated_at":"2012-08-23T19:05:56Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"on Android we get raw Camera stream in YUV format where first width*height values (Y plane) is grayscale representation of the frame. now the implementation doesnt allow to access this raw stream data it just converts it to the specified pixel output format (RGB by default) which u need for rendering.\n\ni think it not very efficient way of working with camera data. imagine we are doing some CV stuff in most cases such tasks require Grayscale representation of image and in our case we need to convert again (not fast on mobiles). probably it would be a nice addition to store Y plane of incoming YUV frame. and return it on request. it will save quite significant amount of computations in some scenarios. of course it is Android only feature but still reasonable one.\n\nlet me know what u think.\n\nalso i looked at YUV2RGB conversion routines and was wondering why not to implement NEON optimised one since u have an option to compile lib with neon support enabled. of course compiler will try to do it for u but in most cases manually done methods works way faster then auto generated by compiler. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1508","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1508/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1508/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1508/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1508","id":6415330,"number":1508,"title":"ofFbo::checkGLSupport() returns true but maxSamples = -1 so it crashes on windows","user":{"login":"jesusgollonet","id":31100,"avatar_url":"https://secure.gravatar.com/avatar/5008d5295e9bc2636313c7b50ed5981d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5008d5295e9bc2636313c7b50ed5981d","url":"https://api.github.com/users/jesusgollonet","html_url":"https://github.com/jesusgollonet","followers_url":"https://api.github.com/users/jesusgollonet/followers","following_url":"https://api.github.com/users/jesusgollonet/following","gists_url":"https://api.github.com/users/jesusgollonet/gists{/gist_id}","starred_url":"https://api.github.com/users/jesusgollonet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jesusgollonet/subscriptions","organizations_url":"https://api.github.com/users/jesusgollonet/orgs","repos_url":"https://api.github.com/users/jesusgollonet/repos","events_url":"https://api.github.com/users/jesusgollonet/events{/privacy}","received_events_url":"https://api.github.com/users/jesusgollonet/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-hardware","name":"section-hardware","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":10,"created_at":"2012-08-23T18:11:43Z","updated_at":"2012-08-24T15:17:23Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"using codeblocks/windows 7 and fresh pull from develop, \n\nwhen testing checkGLSupport I get\n\nOF: OF_VERBOSE: FBO supported\nOF: OF_LOG_NOTICE: ofFbo::checkGLSupport()\nmaxColorAttachments: 8\nmaxDrawBuffers: 8\nmaxSamples: -1\n\nand the app crashes on glGenFrameBuffers...\n\nas far as I can see, it's the same problem as here, \n\nhttp://forum.openframeworks.cc/index.php/topic,6824.0.html\n\nbut I haven't seen any references to GLEE (referenced in the last answer) so I haven't been able to solve it\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1502","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1502/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1502/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1502/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1502","id":6383194,"number":1502,"title":"Feature: ofCamera should be used for internal of view","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":5,"created_at":"2012-08-22T17:15:24Z","updated_at":"2012-12-29T23:36:06Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I thought I had posted this already.\nIt would be great if we could have ofCamera do the camera setup in a default OF app. \n\nRight now the code is duplicated. \n\nAlso it could allow the user could do something like: \n\nofCameraRef cam = ofGetCameraRef();\nref.dolly(-200, 0); \n\nIt would also allow for swapping out the current view with a different one. \n\nofSetCamera( newCam ); \n\nor\n\nofSetCamera( newEasyCam ); \n\nThis is actually not really the api I'm proposing. \nJust the overall change I think should be made. \n\nRelates issues:\n#410\n#765\n\n----------\nOne other thing that is more of a bigger question is can we make OF more object orientated? \n\nie instead of: \nofSetCamera( ofCamera cam ); \n\nofGetWindow(0).getContext().setCamera( cam ); \n\nAnyway I think that is for a separate GH issue - but I mention it as OF's global methods list is growing quite quickly and it might be time again to look at namespaces or moving some of the things in a more object orientated direction. \n\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1500","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1500/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1500/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1500/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1500","id":6368287,"number":1500,"title":"more vertex points than necessary for curves","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-2D","name":"section-2D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-08-22T03:04:22Z","updated_at":"2012-08-22T03:04:22Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"if you generate a curve like this:\n\n````c++\nvector control;\n...\nofPath path;\npath.curveTo(control.front());\nfor(int i = 0; i < control.size(); i++) {\n path.curveTo(control[i]);\n}\npath.curveTo(control.back());\nofPolyline polyline = path.getOutline()[0];\ncout << polyline.size() << endl;\n````\n\nthe number of points in the polyline are more than necessary. it looks like at each control point, vertices are doubled up -- except for the beginning, where there is only one vertex.\n\ni discovered this while trying to smoothly interpolate along a polyline, and found that the vertices weren't evenly spaced."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1497","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1497/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1497/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1497/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1497","id":6350830,"number":1497,"title":"Reorganize dev scripts","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":10,"created_at":"2012-08-21T13:55:30Z","updated_at":"2013-02-22T13:50:33Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1497","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1497.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1497.patch"},"body":"This one's for @arturoc: If it's ok, i put those files in `/scripts/dev` into subfolders, cause otherwise it's pretty easy to get confused what file is for what purpose, especially if we get more in the future.\nbtw, what is `android_configure_arm7.sh` for? This one has some paths specific to your machine, and wouldn't it fit better into a `/scripts/android` folder?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1495","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1495/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1495/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1495/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1495","id":6346091,"number":1495,"title":"ofxurlfileloader doesn't have a accept header","user":{"login":"ikillbombs","id":1842262,"avatar_url":"https://secure.gravatar.com/avatar/0e972803504e237e42c9a680885498c8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"0e972803504e237e42c9a680885498c8","url":"https://api.github.com/users/ikillbombs","html_url":"https://github.com/ikillbombs","followers_url":"https://api.github.com/users/ikillbombs/followers","following_url":"https://api.github.com/users/ikillbombs/following","gists_url":"https://api.github.com/users/ikillbombs/gists{/gist_id}","starred_url":"https://api.github.com/users/ikillbombs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ikillbombs/subscriptions","organizations_url":"https://api.github.com/users/ikillbombs/orgs","repos_url":"https://api.github.com/users/ikillbombs/repos","events_url":"https://api.github.com/users/ikillbombs/events{/privacy}","received_events_url":"https://api.github.com/users/ikillbombs/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"milestone":null,"comments":3,"created_at":"2012-08-21T09:30:13Z","updated_at":"2012-08-22T17:45:20Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"HI,\n\nI'm trying to parse a json database, but the developer said he doesn't receive an header in the request. Is it possible that there will be a header? Or a possibility to custom add an header. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1493","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1493/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1493/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1493/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1493","id":6314130,"number":1493,"title":"ofPush/Pop()","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2012-08-19T18:42:59Z","updated_at":"2012-08-21T12:40:39Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Cinder has `ci::gl::push/popModelView()` and `ci::gl::push/popProjection()` which are wrapped by `ci::gl::push/popMatrices`\n\nI think this kind of abstraction is great: starting by teaching people that they need to maintain camera states with `push/popMatrices`, then later showing them how to break that into parts (modelView, and projection).\n\nWhat if we took this a step further with OF, and used `ofPush/Pop()` to mean `ofPush/PopStyle()` + `ofPush/PopMatrix()`?\n\nRight now people wrap drawing code with one call or the other, but once they add an `ofSetColor()` or `ofTranslate()` they sometimes forget to add the other `push/pop`. We could encourage people to avoid this issue, and simplify code at the same time."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1485","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1485/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1485/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1485/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1485","id":6179119,"number":1485,"title":"Hue from ofColor should be 0..360, not 0.255","user":{"login":"liasomething","id":183150,"avatar_url":"https://secure.gravatar.com/avatar/248569b4b21882f854f3a0eee701cc37?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"248569b4b21882f854f3a0eee701cc37","url":"https://api.github.com/users/liasomething","html_url":"https://github.com/liasomething","followers_url":"https://api.github.com/users/liasomething/followers","following_url":"https://api.github.com/users/liasomething/following","gists_url":"https://api.github.com/users/liasomething/gists{/gist_id}","starred_url":"https://api.github.com/users/liasomething/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/liasomething/subscriptions","organizations_url":"https://api.github.com/users/liasomething/orgs","repos_url":"https://api.github.com/users/liasomething/repos","events_url":"https://api.github.com/users/liasomething/events{/privacy}","received_events_url":"https://api.github.com/users/liasomething/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":3,"created_at":"2012-08-12T18:57:47Z","updated_at":"2013-02-11T12:12:36Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Please can the Hue range be changed to 0 to 360 ?\nIt is really confusing to have the range 0 to 255 for the hue, because Photoshop and also Processing and anything else that i can think of uses 0 to 360."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1480","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1480/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1480/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1480/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1480","id":6173049,"number":1480,"title":"better .plist bundle identifier","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-08-11T21:40:24Z","updated_at":"2012-08-11T21:40:24Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"right now the bundle identifier is `com.yourcompany.openFrameworks`\n\nthis means that when people copy/paste error messages, you see a bunch of this. e.g.:\n\n````\n15 com.yourcompany.openFrameworks 0x000e293b testApp::keyPressed(int) + 185 (testApp.cpp:107)\n16 com.yourcompany.openFrameworks 0x00268047 ofNotifyKeyPressed(int) + 73\n17 com.yourcompany.openFrameworks 0x00265ff0 ofAppGlutWindow::special_key_cb(int, int, int) + 22\n18 com.apple.glut 0x00b006c8 -[GLUTView keyDown:] + 376\n19 com.apple.AppKit 0x99a4bce3 -[NSWindow sendEvent:] + 10891\n````\n\nwe should change it to just `com.openFrameworks` maybe"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1479","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1479/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1479/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1479/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1479","id":6147669,"number":1479,"title":"several 1d interpolation functions","user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":15,"created_at":"2012-08-10T10:12:58Z","updated_at":"2013-03-09T22:33:08Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1479","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1479.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1479.patch"},"body":"can be easily generalized for any dimension"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1477","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1477/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1477/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1477/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1477","id":6140942,"number":1477,"title":"fix iOS orientation","user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":11,"created_at":"2012-08-10T00:20:09Z","updated_at":"2013-02-11T12:16:05Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"currently when setting orientation on ios,\nthe glView remains in portrait mode but everything drawn in the glView is flipped or rotated depending on the specified orientation.\n\na more elegant method would be to rotate and resize the glView directly to a orientation.\nand as far as OF is concerned, its always in OF_ORIENTATION_DEFAULT mode but the glView is adjusted.\nthis way you never have to flip or rotate any coordinates.... which will cut out a lot of orientation bugs which currently exist."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1474","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1474/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1474/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1474/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1474","id":6134380,"number":1474,"title":"ofDrawBitmapString renders incorrectly in an ofFbo ","user":{"login":"bakercp","id":300484,"avatar_url":"https://secure.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","url":"https://api.github.com/users/bakercp","html_url":"https://github.com/bakercp","followers_url":"https://api.github.com/users/bakercp/followers","following_url":"https://api.github.com/users/bakercp/following","gists_url":"https://api.github.com/users/bakercp/gists{/gist_id}","starred_url":"https://api.github.com/users/bakercp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bakercp/subscriptions","organizations_url":"https://api.github.com/users/bakercp/orgs","repos_url":"https://api.github.com/users/bakercp/repos","events_url":"https://api.github.com/users/bakercp/events{/privacy}","received_events_url":"https://api.github.com/users/bakercp/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":7,"created_at":"2012-08-09T18:45:45Z","updated_at":"2012-09-06T06:58:00Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"On the current dev branch, ofDrawBitmapString works fine in a normal drawing context, but it seems to render upside-down when rendered to an ofFbo.\n\n```c++\nmyFbo.begin();\nofDrawBitmapString(\"Hello World!\", 100,100);\nmyFbo.end()\n...\nmyFbo.draw(); // Hello World! will be drawn upside-down.\n```\nwhile normal use works fine.\n\nA quick test is to drop the following into the `fboTrailsExample` in the `drawFboTest()` method:\n\n```c++\n//--------------------------------------------------------------\nvoid testApp::drawFboTest(){\n \n ofDrawBitmapString(\"Hello World!\", 100,100);\n \n\t//we clear the fbo if c is pressed. \n\t//this completely clears the buffer so you won't see any trails\n\tif( ofGetKeyPressed('c') ){\n\t\tofClear(255,255,255, 0);\n\t}\t\n...\n```\n\nLooks like it needs a little vertical flip."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1470","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1470/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1470/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1470/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1470","id":6100728,"number":1470,"title":"Multiwindow using glfw","user":{"login":"underdoeg","id":243820,"avatar_url":"https://secure.gravatar.com/avatar/6ff8fe2dd72480f1685ee15e374205b7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"6ff8fe2dd72480f1685ee15e374205b7","url":"https://api.github.com/users/underdoeg","html_url":"https://github.com/underdoeg","followers_url":"https://api.github.com/users/underdoeg/followers","following_url":"https://api.github.com/users/underdoeg/following","gists_url":"https://api.github.com/users/underdoeg/gists{/gist_id}","starred_url":"https://api.github.com/users/underdoeg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/underdoeg/subscriptions","organizations_url":"https://api.github.com/users/underdoeg/orgs","repos_url":"https://api.github.com/users/underdoeg/repos","events_url":"https://api.github.com/users/underdoeg/events{/privacy}","received_events_url":"https://api.github.com/users/underdoeg/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":36,"created_at":"2012-08-08T11:41:24Z","updated_at":"2013-03-07T16:33:52Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1470","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1470.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1470.patch"},"body":"This branch uses glfw as the window system and ditches glut. But ofAppGlutWindow can still be used by modifying main.cpp\n\nto use glfw:\n````c++\nofSetupOpenGL(ofGetWindowManager(), 640,480, OF_WINDOW);\t\n````\n\nto use glut:\n````c++\nofAppGlutWindow window;\nofSetupOpenGL(&window, 1024,768, OF_WINDOW);\n````\n\nI was using this branch for the last couple of weeks on ubuntu and think it is pretty stable. But it needs compiled libs for mac & windows. The glfw version I use is a fork of the official glfw repo https://github.com/underdoeg/glfw\n\nWe should not merge this before those compiled libs are in there.\n\nI send this pull request mainly to have a place to get a discussion going. It'd be great if someone could try this and test if it works for them too :)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1468","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1468/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1468/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1468/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1468","id":6072184,"number":1468,"title":"ofTrueTypeFont is unicode-unaware","user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2012-08-07T09:43:24Z","updated_at":"2012-08-07T13:21:51Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"It's the 21st century and oF is used all over the world (most notably in 日本国), and therefore ofTrueTypeFont should be able to draw UTF-8 strings. \n\nref: \"The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!)\" http://www.joelonsoftware.com/articles/Unicode.html \n\nThe most complex part of this will be to enable dynamic character loading and unloading, as there are >110,000 unicode characters. @gimlids and I worked in the Futurelab on a project that could do this -- it's not actually as difficult as it might seem."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1466","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1466/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1466/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1466/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1466","id":6058618,"number":1466,"title":"Reduce warnings count","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/android","name":"android","color":"2bc4ad"}],"state":"open","assignee":null,"milestone":null,"comments":20,"created_at":"2012-08-06T18:26:12Z","updated_at":"2013-01-26T22:43:00Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"To improve new processes like the deprecation warnings and the automated build server, it is imho important to reduce the number of warnings we get when compiling OF. Additional benefit: new users don't get scared by them.\nSince it's not always clear how to resolve certain warnings (e.g. is an unused variable a programming mistake or some leftover code cruft?), I intend this issue to be a discussion ground for advice on these matters. \nPRs are welcome (thanks @bostonbusmap for the most recent bout of fixes btw!)!\n\nUpdates: \nLinux OF compiles with 0 warnings. Other OSes, examples still TODO.\nMacOS has 24 warnings from the linker."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1462","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1462/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1462/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1462/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1462","id":6040930,"number":1462,"title":"ofSerial readByte and writeByte simplification","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":{"login":"joshuajnoble","id":237423,"avatar_url":"https://secure.gravatar.com/avatar/10960ba0f305803a1cdc7cd6188d643b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"10960ba0f305803a1cdc7cd6188d643b","url":"https://api.github.com/users/joshuajnoble","html_url":"https://github.com/joshuajnoble","followers_url":"https://api.github.com/users/joshuajnoble/followers","following_url":"https://api.github.com/users/joshuajnoble/following","gists_url":"https://api.github.com/users/joshuajnoble/gists{/gist_id}","starred_url":"https://api.github.com/users/joshuajnoble/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/joshuajnoble/subscriptions","organizations_url":"https://api.github.com/users/joshuajnoble/orgs","repos_url":"https://api.github.com/users/joshuajnoble/repos","events_url":"https://api.github.com/users/joshuajnoble/events{/privacy}","received_events_url":"https://api.github.com/users/joshuajnoble/received_events","type":"User"},"milestone":null,"comments":4,"created_at":"2012-08-06T00:06:56Z","updated_at":"2012-08-08T15:05:20Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"readByte and writeByte should just be wrappers for readBytes and writeBytes. having the code copied just increases the chance for errors and maintenance problems.\n\nthis isn't a bug necessarily, just a design suggestion."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1439","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1439/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1439/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1439/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1439","id":6013902,"number":1439,"title":"Feature cairo gl backend","user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2012-08-03T12:46:31Z","updated_at":"2012-08-04T10:13:53Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1439","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1439.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1439.patch"},"body":"Uses cairo to render shapes to a memory surface then shows them in openGL by uploading a texture. It's of course slower than directly render to openGL but you get awesome anti aliasing and properly capped lines\n\n![example](http://arturocastro.net/files/cairoBackend.png)\nleft is cairo, right is openGL"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1438","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1438/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1438/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1438/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1438","id":5995902,"number":1438,"title":"rewrite ofxXmlSettings with Poco::Xml, move to core as ofXml","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":{"login":"joshuajnoble","id":237423,"avatar_url":"https://secure.gravatar.com/avatar/10960ba0f305803a1cdc7cd6188d643b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"10960ba0f305803a1cdc7cd6188d643b","url":"https://api.github.com/users/joshuajnoble","html_url":"https://github.com/joshuajnoble","followers_url":"https://api.github.com/users/joshuajnoble/followers","following_url":"https://api.github.com/users/joshuajnoble/following","gists_url":"https://api.github.com/users/joshuajnoble/gists{/gist_id}","starred_url":"https://api.github.com/users/joshuajnoble/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/joshuajnoble/subscriptions","organizations_url":"https://api.github.com/users/joshuajnoble/orgs","repos_url":"https://api.github.com/users/joshuajnoble/repos","events_url":"https://api.github.com/users/joshuajnoble/events{/privacy}","received_events_url":"https://api.github.com/users/joshuajnoble/received_events","type":"User"},"milestone":null,"comments":25,"created_at":"2012-08-02T16:10:31Z","updated_at":"2012-08-24T22:04:54Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"i went through all the methods and organized them, thinking about what would be cleanest. here's what i imagine ofXml looking like:\n\n````c++\nclass ofXml {\npublic:\n\tbool load(const string& filename);\n\tbool load(const ofBuffer& buffer);\n\tbool save(const string& filename);\n\t\n\tstring toString() const;\n\t\n\tvoid clear();\n\tvoid pushTag(const string& tag, int which = 0);\n\tvoid popTag();\n\t\n\tbool tagExists(const string& tag, int which = 0) const;\n\tint getNumTags(const string& tag) const;\n\tvoid addTag(const string& tag);\n\tvoid removeTag(const string& tag);\n\tvoid addValue(const string& tag, int value);\n\tvoid addValue(const string& tag, double value);\n\tvoid addValue(const string& tag, const string& value);\n\tvoid setValue(const string& tag, int value, int which = 0);\n\tvoid setValue(const string& tag, double value, int which = 0);\n\tvoid setValue(const string& tag, const string& value, int which = 0);\n\tint getValue(const string& tag, int defaultValue, int which = 0) const;\n\tdouble getValue(const string& tag, double defaultValue, int which = 0) const;\n\tstring getValue(const string& tag, const string& defaultValue, int which = 0) const;\n\t\n\tbool attributeExists(const string& tag, const string& attribute, int which = 0) const;\n\tint getNumAttributes(const string& tag, int which = 0) const;\n\tvoid removeAttribute(const string& tag, const string& attribute);\n\tvoid addAttribute(const string& tag, const string& attribute, int value, int which = 0);\n\tvoid addAttribute(const string& tag, const string& attribute, double value, int which = 0);\n\tvoid addAttribute(const string& tag, const string& attribute, const string& value, int which = 0);\n\tvoid setAttribute(const string& tag, const string& attribute, int value, int which = 0);\n\tvoid setAttribute(const string& tag, const string& attribute, double value, int which = 0);\n\tvoid setAttribute(const string& tag, const string& attribute, const string& value, int which = 0);\n\tint getAttribute(const string& tag, const string& attribute, int defaultValue, int which = 0) const;\n\tdouble getAttribute(const string& tag, const string& attribute, double defaultValue, int which = 0) const;\n\tstring getAttribute(const string& tag, const string& attribute, const string& defaultValue, int which = 0) const;\n\tvector getAttributes(const string& tag, int which = 0) const;\n};\n````"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1437","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1437/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1437/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1437/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1437","id":5986855,"number":1437,"title":"throw error when using make files on non-supported platform","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":8,"created_at":"2012-08-02T08:04:37Z","updated_at":"2013-03-09T21:53:00Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Yet another user [assumed recently](http://forum.openframeworks.cc/index.php/topic,10401.msg47225/topicseen.html#new) that make files would work on OSX. This is not supported currently (#1393), but would probably be nice to have at some point. \n\nIn the meantime, it would be great if the makefile could throw an error if it is used on a non-supported platform, so people don't even try to get it to run. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1436","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1436/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1436/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1436/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1436","id":5969881,"number":1436,"title":"all loadX() methods should be load()","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":4,"created_at":"2012-08-01T14:55:41Z","updated_at":"2013-02-11T12:12:36Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"for example, `ofVideoPlayer::loadMovie()` and `ofImage::loadImage()` should just be `load()`.\n\nobviously a hard change would break every openFrameworks project ever, but we're already moving in this direction with the newest classes. so in the meantime we need to:\n\n1. change the name of `loadX()` to `load()`\n2. add a wrapper for `load()` called `loadX()`\n3. mark the wrapper deprecated\n4. change all the examples to use `load()` instead of `loadX()`\n\nthis issue makes issue #510 irrelevant, so i've closed it.\n\nalso, #463 is related: while we're changing `load()` we should make sure it's always testable.\n\nthis change may seem aesthetic at first, but it's following one of the important design guideline: \"openFrameworks is consistent and intuitive: it should operate on the principle of least surprise, so that what you learn about one part of openFrameworks can be applied to other parts of it.\"\n\ni think it's also essential to get it in sooner so that as people continue writing more about OF the writing can both be consistent and up-to-date."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1432","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1432/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1432/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1432/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1432","id":5927678,"number":1432,"title":"Does _WIN32_WINNT need to be defined?","user":{"login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","html_url":"https://github.com/danomatika","followers_url":"https://api.github.com/users/danomatika/followers","following_url":"https://api.github.com/users/danomatika/following","gists_url":"https://api.github.com/users/danomatika/gists{/gist_id}","starred_url":"https://api.github.com/users/danomatika/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danomatika/subscriptions","organizations_url":"https://api.github.com/users/danomatika/orgs","repos_url":"https://api.github.com/users/danomatika/repos","events_url":"https://api.github.com/users/danomatika/events{/privacy}","received_events_url":"https://api.github.com/users/danomatika/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"state":"open","assignee":null,"milestone":null,"comments":7,"created_at":"2012-07-30T19:56:34Z","updated_at":"2012-10-26T08:04:13Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I notice that in [ofConstants.h](https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/utils/ofConstants.h#L50), _WIN32_WINNT is defined even though the [reason (old ofThread code)](https://github.com/openframeworks/openFrameworks/commit/f28cb335da5f8b34b5781c7938a6d4fa0a5fdcd9) is long gone.\n\nThis is causing [an issue with ofxPd](https://github.com/danomatika/ofxPd/issues/21), since libpd defines it as well. There might be issues with other libraries as well."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1428","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1428/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1428/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1428/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1428","id":5893723,"number":1428,"title":"Remove functions deprecated in 0072","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":3,"created_at":"2012-07-28T15:14:38Z","updated_at":"2013-02-11T12:16:05Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Some functions have been deprecated in 0072 (#1427 et al.). It's time to remove them at some point. I have tentatively scheduled this point to be 0074 (i.e. 2 releases after deprecation). ~ half a year (including inevitable delays) should allow plenty of time for people to notice the warnings.\r\n\r\nList of deprecations: \r\n`ofVec*f::lengthSquared()`, `ofVideoGrabber::grabFrame()` and `ofVideoPlayer::idleMovie()`,\r\n`ofPolyline::addVertexes`, \r\n`ofGraphics: ofVertexes`, `ofGraphics: ofCurveVertexes`, \r\n`ofQTKitPlayer::bind()`, `ofQTKitPlayer::unbind()`,\r\n`ofAppiPhoneWindow::enableRetinaSupport()`, `ofAppiPhoneWindow::isRetinaSupported()`, `ofAppiPhoneWindow::isDepthEnabled()`,"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1426","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1426/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1426/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1426/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1426","id":5863670,"number":1426,"title":"feature : recode ofNode to use parameters","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":26,"created_at":"2012-07-26T20:43:28Z","updated_at":"2012-08-01T09:23:22Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hey all!\n\nI need a way of having the translate, rotate and scale of an ofNode (essentially all the acknowledged parameters) act as parameters.\n\nMy suggestion before was to make parameters able to use external values (e.g. you can make your own ofParameter-type class that doesn't internally store an ofVec3f, but instead gets and sets the position of an ofNode. with that class being able to sit within the inheritance tree of ofParameter, and therefore be tied to a slider, etc).\nThis suggestion didn't get positive response as it complicates ofParameter\n\nThe next suggestion is to recode ofNode to internally use 3 parameters:\n\n```c++\nofParameter translation;\nofParameter rotation;\nofParameter scale;\n```\n\nyou could then bind external sliders to these parameters\nwe keep the existing API\nthe biggest difference would be that you couldn't apply a projective transform to an ofNode (if you applied a matrix, we'd perform some decomposition to make it back into a Tra,Rot,Sca\n\nthe alternative so far has been to cache values somewhere, and have an update loop that checks for changes inside the ofNode\ni'd like to avoid this as it's very messy (e.g. who does this update, what is the epsilon value, etc)\n\nthis isn't an easy ask, but the type of control that it unlocks is really powerful\nso your consideration is appreciated"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1425","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1425/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1425/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1425/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1425","id":5853550,"number":1425,"title":"ofiPhoneVideoPlayer clash with ofSoundStream","user":{"login":"chrisoshea","id":104786,"avatar_url":"https://secure.gravatar.com/avatar/62d775b0fa28bcde2d9d29405d059be3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"62d775b0fa28bcde2d9d29405d059be3","url":"https://api.github.com/users/chrisoshea","html_url":"https://github.com/chrisoshea","followers_url":"https://api.github.com/users/chrisoshea/followers","following_url":"https://api.github.com/users/chrisoshea/following","gists_url":"https://api.github.com/users/chrisoshea/gists{/gist_id}","starred_url":"https://api.github.com/users/chrisoshea/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chrisoshea/subscriptions","organizations_url":"https://api.github.com/users/chrisoshea/orgs","repos_url":"https://api.github.com/users/chrisoshea/repos","events_url":"https://api.github.com/users/chrisoshea/events{/privacy}","received_events_url":"https://api.github.com/users/chrisoshea/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"state":"open","assignee":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":6,"created_at":"2012-07-26T13:28:07Z","updated_at":"2013-02-11T12:16:05Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"bug, iOS. tested on 5.0\n\nTake the audio input example & add an instance of ofVideoPlayer & just loadMovie in setup and do nothing else. The audio input doesn't work anymore.\n\nThe buffer size drops from 512 to 470. This only happens if you load a movie that has sound, a movie with no sound doesn't effect the ofSoundStream.\n\n(posted on the forum)\nhttp://forum.openframeworks.cc/index.php/topic,9558.msg47111.html#msg47111"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1416","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1416/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1416/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1416/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1416","id":5768792,"number":1416,"title":"ofAndroid lacks videoplayer","user":{"login":"hvfrancesco","id":614123,"avatar_url":"https://secure.gravatar.com/avatar/e02a8a3953de9d5d9ec1c7aa8d43eca4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e02a8a3953de9d5d9ec1c7aa8d43eca4","url":"https://api.github.com/users/hvfrancesco","html_url":"https://github.com/hvfrancesco","followers_url":"https://api.github.com/users/hvfrancesco/followers","following_url":"https://api.github.com/users/hvfrancesco/following","gists_url":"https://api.github.com/users/hvfrancesco/gists{/gist_id}","starred_url":"https://api.github.com/users/hvfrancesco/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hvfrancesco/subscriptions","organizations_url":"https://api.github.com/users/hvfrancesco/orgs","repos_url":"https://api.github.com/users/hvfrancesco/repos","events_url":"https://api.github.com/users/hvfrancesco/events{/privacy}","received_events_url":"https://api.github.com/users/hvfrancesco/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/android","name":"android","color":"2bc4ad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":9,"created_at":"2012-07-22T21:14:34Z","updated_at":"2012-07-30T06:48:21Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"this is a feature request.\nI'm rather confident Arturo has been already addressing the theme.\nI've been having a look at android docs and NDK, but couldn't get a clear view of the involved complexity and of real possibilities.\nShould be possible to pass a SurfaceTexture through JNI? can a SurfaceTexture be generated in the OF GLSurfaceView context and then set to be used as the sink for the video portion of the media?\nI'm a bit confused about it, sorry"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1415","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1415/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1415/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1415/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1415","id":5767180,"number":1415,"title":"buildAllExamples script should not error out on first failed compilation","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/automation","name":"automation","color":"5d5d5d"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-07-22T16:52:26Z","updated_at":"2012-07-22T16:52:26Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hi!\nThe buildAllExamples script should imo not exit when an example compilation fails, but store the example ID (and maybe error) and continue on, and at the end print a list of failed examples. \nThis would also be nifty w.r.t to automated testing - a CI server could directly call this script and all examples would be tested even if, e.g., the glnfoExample fails. Currently I run a modified version of this script while playing with Jenkins - just commented out the \"exit\".\nThoughts, @arturoc , @benben, @underdoeg?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1414","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1414/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1414/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1414/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1414","id":5767040,"number":1414,"title":"makefile cleanRelease target - Command not found","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/automation","name":"automation","color":"5d5d5d"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-07-22T16:26:45Z","updated_at":"2012-07-22T16:26:45Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"When executing the `cleanAllExamples` script (or just saying `make clean` in an example's folder), I get:\n\n\t\tcleaning + shaderExample\n\t\trm -rf obj/i686Release/\n\t\trm -f bin/shaderExample_debug bin/shaderExample\n\t\trm -rf bin/libs\n\t\tcleanRelease:\n\t\tmake: cleanRelease:: Command not found\n\t\tmake: *** [clean] Error 127\n\nAside from the slight output error of the superfluous `+` in the first line (trivially corrected), there's this error about `cleanRelease:: Command not found`. I tried to see how this could be corrected, but my make-fu is not strong enough. @arturoc, do you know how to correct this?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1413","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1413/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1413/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1413/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1413","id":5758354,"number":1413,"title":"ofiPhoneVideoGrabber additions from Oriol","user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":0,"created_at":"2012-07-22T05:54:34Z","updated_at":"2013-02-11T12:12:36Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Oriol made some nice additions to ofiPhoneVideoGrabber,\nadding support for focus / exposure / whiteBalance / torch.\nhttp://forum.openframeworks.cc/index.php/topic,10354.0.html\n\nneed to merge these into develop."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1412","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1412/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1412/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1412/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1412","id":5756495,"number":1412,"title":"OF_ROOT location should be able to be given to PG as an argument","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project-generator","name":"project-generator","color":"444444"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/automation","name":"automation","color":"5d5d5d"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2012-07-21T21:36:34Z","updated_at":"2012-08-30T17:00:34Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hi!\nThe config file which indicates OF_ROOT is currently in `~/.ofprojectgenerator/config`. This just became a problem when I was working on Jenkins CI builds:\nOn the one hand, the dialog that pops up that wants you to select the root folder doesn't find a display to open (of course, since this is basically headless for now, and this is the only thing in the whole chain which would necessitate a display I think).\nOn the other hand, the jenkins user which by default executes these tests doesn't have a home folder, so you can't even put the file there by hand. (This I can work around by creating a home folder for this user)\nBoth these problems would disappear if one could give the OF_ROOT location to the PG as a separate argument. I propose `--ofRoot `\n\n@arturoc @benben: opinions?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1409","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1409/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1409/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1409/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1409","id":5731901,"number":1409,"title":"ios project - upgrade to latest project format","user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":3,"created_at":"2012-07-20T07:51:50Z","updated_at":"2013-02-11T12:16:05Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"im running the XCode 4.3.2 and its constantly asking me to upgrade iOS projects.\nthis is the message...\n\n\"The project is currently archived in the Xcode 3.1-compatible format.\nThis will upgrade the project format to the latest format Xcode 3.2-compatible.\"\n\nXcode 3.1 is pretty old, so thinking its ok to upgrade to Xcode 3.2 and drop Xcode 3.1 support.\n\nimagine this would be the same for osx.\n\nhow does everyone feel about this?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1403","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1403/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1403/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1403/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1403","id":5638136,"number":1403,"title":"ofMatrix4x4 makelookat","user":{"login":"neuroprod","id":640585,"avatar_url":"https://secure.gravatar.com/avatar/3623ccdee8e3a141ff0e8d4e8447671d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3623ccdee8e3a141ff0e8d4e8447671d","url":"https://api.github.com/users/neuroprod","html_url":"https://github.com/neuroprod","followers_url":"https://api.github.com/users/neuroprod/followers","following_url":"https://api.github.com/users/neuroprod/following","gists_url":"https://api.github.com/users/neuroprod/gists{/gist_id}","starred_url":"https://api.github.com/users/neuroprod/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/neuroprod/subscriptions","organizations_url":"https://api.github.com/users/neuroprod/orgs","repos_url":"https://api.github.com/users/neuroprod/repos","events_url":"https://api.github.com/users/neuroprod/events{/privacy}","received_events_url":"https://api.github.com/users/neuroprod/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":7,"created_at":"2012-07-16T12:43:55Z","updated_at":"2012-07-16T21:33:11Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"line 922 ofmatrix4x4.cpp\n\n_mat[3] = eye;\n\nshould be: \n\n_mat[3] .set(eye.x,eye.y, eye.z, 1);\n\na vec3 to vec4 casts the w as 0 (which i find the real strange thing...)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1402","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1402/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1402/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1402/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1402","id":5636049,"number":1402,"title":"Project Generator GUI: can't see all addons when list is relatively big","user":{"login":"eelke","id":738902,"avatar_url":"https://secure.gravatar.com/avatar/67ec8bd4dafbc12cee712c95f510cdb4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"67ec8bd4dafbc12cee712c95f510cdb4","url":"https://api.github.com/users/eelke","html_url":"https://github.com/eelke","followers_url":"https://api.github.com/users/eelke/followers","following_url":"https://api.github.com/users/eelke/following","gists_url":"https://api.github.com/users/eelke/gists{/gist_id}","starred_url":"https://api.github.com/users/eelke/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/eelke/subscriptions","organizations_url":"https://api.github.com/users/eelke/orgs","repos_url":"https://api.github.com/users/eelke/repos","events_url":"https://api.github.com/users/eelke/events{/privacy}","received_events_url":"https://api.github.com/users/eelke/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project-generator","name":"project-generator","color":"444444"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-07-16T10:16:18Z","updated_at":"2012-07-16T10:17:53Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"When there are many addons in the directory, the list gets too big to display.\nThis makes it impossible to select the hidden addons. \n\n[Example](http://i.imgur.com/ONUBH.png)\n\n(Clearified this happens with the Project Generator)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1401","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1401/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1401/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1401/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1401","id":5628493,"number":1401,"title":"ofGetBackgroundColor: removed ofBgColorPtr added ofGetBackgroundColor","user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":6,"created_at":"2012-07-15T18:02:27Z","updated_at":"2013-03-09T22:31:50Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1401","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1401.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1401.patch"},"body":"removes ofBgColorPtr and adds ofGetBackgroundColor to fix redundancy in defaultStyle.bgColor and renderer.bgColor. Fixes a problem with ofSetBackgroundColor not setting the color.\n\nwarning! changes current api"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1400","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1400/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1400/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1400/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1400","id":5620920,"number":1400,"title":"ofSetBackgroundColor not working?","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":7,"created_at":"2012-07-14T15:24:18Z","updated_at":"2012-10-19T14:52:59Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"is it meant to change the background color in the same way ofBackground does? \nwhat is a simple use case for it? \n\nlooking at the code it sets a color, but I don't see that color being applied to the window. \n\n\t\t//----------------------------------------------------------\n\t\tvoid ofSetBackgroundColor(int r, int g, int b, int a){\n\t\t\tcurrentStyle.bgColor.set(r,g,b,a);\n\t\t}"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1396","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1396/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1396/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1396/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1396","id":5528308,"number":1396,"title":"feature: better shader examples","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":13,"created_at":"2012-07-10T17:01:46Z","updated_at":"2013-02-11T12:12:35Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hey all!\n\nI'd like to push for more shader examples.\nI'd even like to suggest we separate shader examples out into another folder (move out of 'gl' folder into 'shader' folder)\n\nhere's a first example: (watch out for the abrasive fan!)\nhttp://www.youtube.com/watch?v=crHWEJ-xq3s&feature=youtu.be"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1387","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1387/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1387/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1387/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1387","id":5460543,"number":1387,"title":"weird enableAlpha in ofTexture:draw","user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2012-07-06T08:10:38Z","updated_at":"2012-07-06T13:23:54Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/gl/ofTexture.cpp#L1057\n\ni guess this shouldn't be there, but just in case anyone knows why it's there before removing, it seems it comes from a commit from @rsodre: 032d31cda0a29324c42bfc651e52950b3fdc8db3"}] + +https +GET +api.github.com +None +/repositories/345337/issues?page=3&per_page=100 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4962'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '326617'), ('server', 'GitHub.com'), ('last-modified', 'Mon, 11 Mar 2013 10:11:56 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"9d1c9cd0db105699c994ba8b16296c1b"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 11 Mar 2013 10:13:05 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1385","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1385/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1385/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1385/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1385","id":5447789,"number":1385,"title":"ofOpenALSoundPlayer.cpp vs ofxOpenALSoundPlayer.cpp ?","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2012-07-05T16:29:56Z","updated_at":"2012-07-05T16:51:53Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Right now we have two OpenAL based sound players in OF. \nOne is part of ofxiPhone and one is part of the core.\n\nJust curious if the core ofOpenALSoundPlayer.cpp could be used by iOS and if we could drop/merge ofxOpenALSoundPlayer.cpp ? \nSeems weird to have both.\n\n@damiannz @julapy what do you think?\n\nTheo"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1382","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1382/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1382/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1382/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1382","id":5436804,"number":1382,"title":"rename ofxiPhone to ofxiOS","user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":25,"created_at":"2012-07-05T02:48:59Z","updated_at":"2013-02-11T12:12:35Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"think it might be time to rename ofxiPhone to ofxiOS.\nits one of those things that consistently bugs me every time i have to create a new class beginning with ofxiPhone.\niOS has moved beyond just the iPhone and i think the current naming convention can be confusing.\n\nthis will involve going through and renaming all ofxiPhone classes and adjusting all iOS examples.\n\nplease let me know if anyone has any objections to this."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1379","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1379/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1379/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1379/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1379","id":5425486,"number":1379,"title":"iOS: iPad retina ofGetWidth/Height are 2048x1536","user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":29,"created_at":"2012-07-04T10:27:33Z","updated_at":"2013-02-16T10:15:53Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"as per subject line. my suggestion/preference would be for retina to return 1024x768, same as on iOS, to be consistent with the paradigm that iOS uses normally, allowing retina and non-retina code to be identical in the testApp.\n\ni don't know how this is on iphone/ipod touch though."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1365","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1365/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1365/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1365/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1365","id":5367217,"number":1365,"title":"projectGenerator doesn't create complete iOS moviePlayerExample project","user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project-generator","name":"project-generator","color":"444444"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-06-30T12:25:54Z","updated_at":"2012-06-30T12:25:54Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"as per title, running projectGenerator on the moviePlayerExample folder skips a number of files necessary (VideoPlayerControls.* and VideoPlayerControlsDelegateForOF.*). as a result the example won't compile."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1364","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1364/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1364/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1364/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1364","id":5365386,"number":1364,"title":"ofDirectShowGrabber glitches on non-native sizes","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-06-30T03:41:12Z","updated_at":"2012-06-30T03:42:23Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"for example, when you ask for 1281x721 it will just display a black image. the pixels are definitely there, but there's some kind of texture bug. videoInput is reporting correctly that the width/height are different than the requested width/height, but ofDirectShowGrabber is not handling that correctly.\n\nalso, we should be using the built in resizing features in other parts of OF now if we can, instead of duplicating the resizing code :)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1362","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1362/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1362/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1362/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1362","id":5357380,"number":1362,"title":"simple text file loading and saving","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":10,"created_at":"2012-06-29T16:46:03Z","updated_at":"2012-11-20T00:36:55Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"i think this is the simplest way to save a string to a text file right now:\n\n````cpp\nstring str = \"hello\";\nofBuffer msg(str.c_str(), str.length());\nofBufferToFile(\"out.txt\", msg);\n````\n\nthere should be a one-line (one-function, ideally) equivalent similar to http://processing.org/reference/loadStrings_.html and http://processing.org/reference/saveStrings_.html\n\nif we made a constructor for ofBuffer that accepts a string, then it could just be:\n\n````cpp\nofBufferToFile(\"out.txt\", \"hello\");\n````\n\nand a cast operator for ofBuffer to string:\n\n\n````cpp\nstring str;\nofBufferFromFile(\"out.txt\", str);\n````\n\ni'd be ok with that, even though the naming would be a bit obscure."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1361","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1361/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1361/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1361/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1361","id":5318139,"number":1361,"title":"ofSoundPlayer::getIsPlaying() does not work with mp3","user":{"login":"prossel","id":541021,"avatar_url":"https://secure.gravatar.com/avatar/47edf7d39b59dd6fc4cb15775b8b7d5f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"47edf7d39b59dd6fc4cb15775b8b7d5f","url":"https://api.github.com/users/prossel","html_url":"https://github.com/prossel","followers_url":"https://api.github.com/users/prossel/followers","following_url":"https://api.github.com/users/prossel/following","gists_url":"https://api.github.com/users/prossel/gists{/gist_id}","starred_url":"https://api.github.com/users/prossel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/prossel/subscriptions","organizations_url":"https://api.github.com/users/prossel/orgs","repos_url":"https://api.github.com/users/prossel/repos","events_url":"https://api.github.com/users/prossel/events{/privacy}","received_events_url":"https://api.github.com/users/prossel/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"state":"open","assignee":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"milestone":null,"comments":2,"created_at":"2012-06-28T08:55:15Z","updated_at":"2012-07-04T08:17:07Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Looks like getIsPlaying is always returning false if the sound is a .mp3 file. Tested with OF71 on iOS.\n\nTo reproduce:\n\n1. use the soundPlayerExample\n1. drop a .mp3 file in the sounds folder\n1. change the filename in testApp.mm: `synth.loadSound(\"sounds/part1.mp3\");`\n1. run the app\n1. click to start playing sounds\n\nWhen the last two sounds are playing, their title turns red.\n\nThe first sound (mp3) does not turn red because getIsPlaying() returns false."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1359","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1359/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1359/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1359/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1359","id":5302782,"number":1359,"title":"ofFbo bind() and unbind() is confusing","user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":8,"created_at":"2012-06-27T17:50:20Z","updated_at":"2012-06-29T09:17:25Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"fbo.bind() should bind the FBO's texture, ie behave the same way as ofTexture.bind(). At the moment it actually binds the FBO's framebuffer. this is confusing, and the documentation is inaccurate on this point (http://www.openframeworks.cc/documentation/gl/ofFbo.html#bind).\n\ni would suggest making bind() call getTextureReference().bind(), and adding a new function bindFrameBuffer to do what bind() currently does. comments?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1358","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1358/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1358/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1358/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1358","id":5297227,"number":1358,"title":"ofxAssimpModelLoader aiMatrix4x4ToOfMatrix4x4","user":{"login":"neuroprod","id":640585,"avatar_url":"https://secure.gravatar.com/avatar/3623ccdee8e3a141ff0e8d4e8447671d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3623ccdee8e3a141ff0e8d4e8447671d","url":"https://api.github.com/users/neuroprod","html_url":"https://github.com/neuroprod","followers_url":"https://api.github.com/users/neuroprod/followers","following_url":"https://api.github.com/users/neuroprod/following","gists_url":"https://api.github.com/users/neuroprod/gists{/gist_id}","starred_url":"https://api.github.com/users/neuroprod/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/neuroprod/subscriptions","organizations_url":"https://api.github.com/users/neuroprod/orgs","repos_url":"https://api.github.com/users/neuroprod/repos","events_url":"https://api.github.com/users/neuroprod/events{/privacy}","received_events_url":"https://api.github.com/users/neuroprod/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2012-06-27T13:45:13Z","updated_at":"2012-06-27T17:56:45Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"\nline nr 86 this:\n```cpp\nfloat m[16] = { aim.a1,aim.a2,aim.a3,aim.a4,\n\t\t\t\t\taim.b1,aim.b2,aim.b3,aim.b4,\n\t\t\t\t\taim.c1,aim.c2,aim.c3,aim.c4,\n\t\t\t\t\taim.d1,aim.d2,aim.d3,aim.d4 };\n```\nshould be this\n```cpp\nfloat m[16] = { aim.a1,aim.b1,aim.c1,aim.d1,\n\t\t\t\t\taim.a2,aim.b2,aim.c2,aim.d2,\n\t\t\t\t\taim.a3,aim.b3,aim.c3,aim.d3,\n\t\t\t\t\taim.a4,aim.b4,aim.c4,aim.d4 };\n```\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1356","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1356/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1356/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1356/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1356","id":5291942,"number":1356,"title":"ofMesh statics","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2012-06-27T08:56:51Z","updated_at":"2012-06-27T15:13:32Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"hey all!\n\ni'm going back through issues this week to clean out and work on functionality.\n\nwe talked before @ofTheo and maybe marek? (iirc) about ofMesh statics\n\nMy proposal is something like 'ofMeshLibrary' which has lots of standard meshes that you can pull out or draw directly, e.g.:\n* Grid (quad, plane, etc)\n* Box\n* Sphere\n* Icosphere\n* Cylinder\n* Tube\n* Arrow\netc...\n\nfor each you could do like\n\n```c++\nofMesh myMesh;\n\nofMeshLibrary::sphere::draw(); // draw with default resolution\n\n//ofMeshLibrary::sphere::init() is called the first time you either copy or draw the mesh\nmyMesh = ofMeshLibrary::sphere; // create a local instance of sphere with default resolution\n\nofMeshLibrary::sphere::setResolution(5); // change the resolution of the static sphere\n\nmyMesh = ofMeshLibrary::sphere; // create a local instance of sphere with low resolution\n\nofMeshLibrary::sphere::draw(); // draw with reduced resolution\n```\n\nAnybody see any issues with this being in the core?\nIf not I'll start on this. We discussed it before on irc and it was mostly positive."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1354","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1354/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1354/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1354/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1354","id":5280751,"number":1354,"title":"feature suggestion: ofCamera::getXYZat(const ofVec2f & screenCoordinate)","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2012-06-26T18:43:23Z","updated_at":"2012-08-04T21:47:31Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"This would use the same method as ofxGrabCam (pull a pixel from the depth buffer and unproject)\nAnybody have any qualms about including this in ofCamera directly?\n\nalso i suggest we add:\n```glEnable(GL_DEPTH_FUNC);``` to ```ofCamera::begin(...)```"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1348","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1348/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1348/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1348/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1348","id":5235369,"number":1348,"title":"Android example doesn't run on emulator, but runs on device","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/android","name":"android","color":"2bc4ad"}],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2012-06-24T12:09:38Z","updated_at":"2012-08-05T21:31:04Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hi!\n\nI've just followed the setup guide for Android/Eclipse/Linux. Everything works using AndroidEmptyExample, when using a real device, but if I use a freshly generated ICS emulator, it does not run successfully. \nLog:\n\n\t\tBUILD SUCCESSFUL\n\t\tTotal time: 15 seconds\n\t\tcp bin/OFActivity-debug.apk bin/androidEmptyExample.apk\n\t\t#if [ \"device\" = \"device\" ]; then\n\t\t/media/windata/Visuals/Coding/android-sdk-linux_x86/platform-tools/adb uninstall cc.openframeworks.androidEmptyExample\n\t\tFailure\n\t\t/media/windata/Visuals/Coding/android-sdk-linux_x86/platform-tools/adb install -r bin/androidEmptyExample.apk;\n\t\t2560 KB/s (8222503 bytes in 3.136s)\n\t\t\tpkg: /data/local/tmp/androidEmptyExample.apk\n\t\tFailure [INSTALL_FAILED_CONTAINER_ERROR]\n\t\t#fi\n\t\t/media/windata/Visuals/Coding/android-sdk-linux_x86/platform-tools/adb shell am start -a android.intent.action.MAIN -n cc.openframeworks.androidEmptyExample/cc.openframeworks.androidEmptyExample.OFActivity\n\t\tStarting: Intent { act=android.intent.action.MAIN cmp=cc.openframeworks.androidEmptyExample/.OFActivity }\n\t\tError type 3\n\t\tError: Activity class {cc.openframeworks.androidEmptyExample/cc.openframeworks.androidEmptyExample.OFActivity} does not exist.\n\nThe activity class looks alright (and works with a device, anyway). Any ideas what's wrong here, @arturoc ? Is this even fixable on our side?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1347","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1347/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1347/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1347/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1347","id":5216147,"number":1347,"title":"rename ofImage.grabScreen","user":{"login":"benben","id":124513,"avatar_url":"https://secure.gravatar.com/avatar/6aed6a0dfa09b46d6fbd5149eb56def8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"6aed6a0dfa09b46d6fbd5149eb56def8","url":"https://api.github.com/users/benben","html_url":"https://github.com/benben","followers_url":"https://api.github.com/users/benben/followers","following_url":"https://api.github.com/users/benben/following","gists_url":"https://api.github.com/users/benben/gists{/gist_id}","starred_url":"https://api.github.com/users/benben/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/benben/subscriptions","organizations_url":"https://api.github.com/users/benben/orgs","repos_url":"https://api.github.com/users/benben/repos","events_url":"https://api.github.com/users/benben/events{/privacy}","received_events_url":"https://api.github.com/users/benben/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2012-06-22T14:24:37Z","updated_at":"2012-06-23T16:21:52Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"First: Is this method supposed to be in the public API of OF? Becaue it is missing in the reference on the website.\n\nI think we should discuss the naming of this function. OF has methods like `ofGetHeight()` for getting the height of the app and `ofGetScreenHeight()` for getting the height of the screen. Instead `ofImage_::grabScreen`[1] does not grab the screen. I tested this on arch/ubuntu/win7 and it only grabs the app (everything else is black). Maybe it should be renamed to only `ofImage_::grab`. What do you think?\n\n[1] https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/graphics/ofImage.cpp#L907"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1344","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1344/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1344/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1344/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1344","id":5163949,"number":1344,"title":"ofLoadURLAsync crash when no network is available","user":{"login":"gorkacortazar","id":608719,"avatar_url":"https://secure.gravatar.com/avatar/6730aa74ae4edfa08a88f98e1364f5ec?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"6730aa74ae4edfa08a88f98e1364f5ec","url":"https://api.github.com/users/gorkacortazar","html_url":"https://github.com/gorkacortazar","followers_url":"https://api.github.com/users/gorkacortazar/followers","following_url":"https://api.github.com/users/gorkacortazar/following","gists_url":"https://api.github.com/users/gorkacortazar/gists{/gist_id}","starred_url":"https://api.github.com/users/gorkacortazar/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gorkacortazar/subscriptions","organizations_url":"https://api.github.com/users/gorkacortazar/orgs","repos_url":"https://api.github.com/users/gorkacortazar/repos","events_url":"https://api.github.com/users/gorkacortazar/events{/privacy}","received_events_url":"https://api.github.com/users/gorkacortazar/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/critical","name":"critical","color":"ff0000"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":8,"created_at":"2012-06-20T07:09:34Z","updated_at":"2012-09-26T10:46:06Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofLoadURLAsync crashes when no network is connected, on windows (codeblocks and vidual studio). Seeing the debugger, crashes when the poco::dnserror is being called.\n\nMy current workaround is to use ofLoadURL(...) in a threaded class, that work as expected (catches the error and logs the network error in the ofx console)."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1343","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1343/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1343/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1343/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1343","id":5134626,"number":1343,"title":"ofVec2f could be more dry?","user":{"login":"jvcleave","id":150037,"avatar_url":"https://secure.gravatar.com/avatar/9c0384a91739bea093f453cf40a59742?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"9c0384a91739bea093f453cf40a59742","url":"https://api.github.com/users/jvcleave","html_url":"https://github.com/jvcleave","followers_url":"https://api.github.com/users/jvcleave/followers","following_url":"https://api.github.com/users/jvcleave/following","gists_url":"https://api.github.com/users/jvcleave/gists{/gist_id}","starred_url":"https://api.github.com/users/jvcleave/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jvcleave/subscriptions","organizations_url":"https://api.github.com/users/jvcleave/orgs","repos_url":"https://api.github.com/users/jvcleave/repos","events_url":"https://api.github.com/users/jvcleave/events{/privacy}","received_events_url":"https://api.github.com/users/jvcleave/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":5,"created_at":"2012-06-18T21:48:19Z","updated_at":"2012-08-01T11:47:08Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Can you do inline functions inside inline functions? this seems to indicate so\nhttps://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/math/ofVec2f.h#L706\n\nIf so, in ofVec2f::getPerpendicular, ofVec2f::perpendicular and there are a few calls to \nfloat length = (float)sqrt( x*x + y*y ); \n\nthese can be covered by the ofVec2f::length() function\n\nAlso, do we need both lengthSquared() and squareLength()?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1336","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1336/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1336/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1336/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1336","id":5108991,"number":1336,"title":"ofSoundStream doesn't compile in VS2010 (Release Mode) ","user":{"login":"sloopidoopi","id":248498,"avatar_url":"https://secure.gravatar.com/avatar/69d034865cb1f775bb1e0b47ff0580b2?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"69d034865cb1f775bb1e0b47ff0580b2","url":"https://api.github.com/users/sloopidoopi","html_url":"https://github.com/sloopidoopi","followers_url":"https://api.github.com/users/sloopidoopi/followers","following_url":"https://api.github.com/users/sloopidoopi/following","gists_url":"https://api.github.com/users/sloopidoopi/gists{/gist_id}","starred_url":"https://api.github.com/users/sloopidoopi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sloopidoopi/subscriptions","organizations_url":"https://api.github.com/users/sloopidoopi/orgs","repos_url":"https://api.github.com/users/sloopidoopi/repos","events_url":"https://api.github.com/users/sloopidoopi/events{/privacy}","received_events_url":"https://api.github.com/users/sloopidoopi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"milestone":null,"comments":3,"created_at":"2012-06-16T21:56:42Z","updated_at":"2012-06-18T07:02:10Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I get an \terror LNK2038: Konflikt ermittelt für \"_ITERATOR_DEBUG_LEVEL\": Der Wert \"2\" stimmt nicht mit dem Wert \"0\" in main.obj überein.\t\n\nIn the Linker settings i see that the rtAudioD.lib is used . \nThis is an inherited value.( I don't know where this value is set and how I can change this )\nI'll guess it should be rtAudio.lib instead.\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1334","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1334/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1334/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1334/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1334","id":5105884,"number":1334,"title":"video playback in windows is slow for some users","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":2,"created_at":"2012-06-16T12:17:23Z","updated_at":"2013-02-11T12:16:05Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"http://forum.openframeworks.cc/index.php/topic,10053.0\n\nwould be good to investigate this @gameoverhack \n "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1329","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1329/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1329/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1329/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1329","id":5086630,"number":1329,"title":"command-line projectGenerator needs to be able to reconfigure OF-root path","user":{"login":"pierrep","id":392160,"avatar_url":"https://secure.gravatar.com/avatar/be11c9de8242e7aef0446eceaa289e01?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"be11c9de8242e7aef0446eceaa289e01","url":"https://api.github.com/users/pierrep","html_url":"https://github.com/pierrep","followers_url":"https://api.github.com/users/pierrep/followers","following_url":"https://api.github.com/users/pierrep/following","gists_url":"https://api.github.com/users/pierrep/gists{/gist_id}","starred_url":"https://api.github.com/users/pierrep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pierrep/subscriptions","organizations_url":"https://api.github.com/users/pierrep/orgs","repos_url":"https://api.github.com/users/pierrep/repos","events_url":"https://api.github.com/users/pierrep/events{/privacy}","received_events_url":"https://api.github.com/users/pierrep/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project-generator","name":"project-generator","color":"444444"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":1,"created_at":"2012-06-15T05:41:09Z","updated_at":"2013-02-11T12:12:35Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I accidentally set the wrong OF root path, and ended up having to dig in the source code and then the config files to figure out how to reset it. Would be good for the command-line version to have an option to reset the root path. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1328","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1328/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1328/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1328/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1328","id":5075658,"number":1328,"title":"xcode 4 doesn't put obj files near the xcode project","user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-06-14T17:41:40Z","updated_at":"2012-06-14T17:41:40Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"there seems to be conflicting settings for \"per configuration intermediate build files\", and so therefore, there's no \"build\" folder with obj files near the project. This is an issue on some systems which require admin access to the dev folder, where those objs are winding up. it's also just harder to track build / obj files with this newer default approach of apple. \n\nwe should get xcode 4 to operate more like xcode 3 if we can. \n\nI believe it's it's related to this forum post: \n\nhttp://forum.openframeworks.cc/index.php?topic=10064.new;topicseen#new"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1326","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1326/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1326/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1326/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1326","id":5054867,"number":1326,"title":"project makefiles should trigger OF lib rebuild if necessary.","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"milestone":null,"comments":0,"created_at":"2012-06-13T19:10:28Z","updated_at":"2012-06-13T19:10:28Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"It would be great if the makefiles of projects would trigger a (re)build of the OF library if it is necessary (changed files, no library, etc).\nThis would also solve issues like in [this forum thread](http://forum.openframeworks.cc/index.php/topic,9962). It would also save having to manually rebuild the library if you just use plain make files without an IDE/project, for quick tests etc.\n\nIs this technically feasible, @arturoc ?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1322","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1322/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1322/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1322/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1322","id":5010394,"number":1322,"title":"ofxOpenALSoundPlayer ReferenceDistance and MaxDistance not behaving as expected","user":{"login":"armadillu","id":167057,"avatar_url":"https://secure.gravatar.com/avatar/b87a82d7c86161432ee6388c7cbd5e2c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b87a82d7c86161432ee6388c7cbd5e2c","url":"https://api.github.com/users/armadillu","html_url":"https://github.com/armadillu","followers_url":"https://api.github.com/users/armadillu/followers","following_url":"https://api.github.com/users/armadillu/following","gists_url":"https://api.github.com/users/armadillu/gists{/gist_id}","starred_url":"https://api.github.com/users/armadillu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/armadillu/subscriptions","organizations_url":"https://api.github.com/users/armadillu/orgs","repos_url":"https://api.github.com/users/armadillu/repos","events_url":"https://api.github.com/users/armadillu/events{/privacy}","received_events_url":"https://api.github.com/users/armadillu/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":1,"created_at":"2012-06-11T19:41:06Z","updated_at":"2013-02-11T12:16:04Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofxALSoundSetReferenceDistance() and ofxALSoundSetMaxDistance() don't seem to behave as expected. \n\nOne would expect sounds not to be heard at all when the sound source is beyond the MaxDistance, but this is not the case on the default setup. I think it is because of the sound model openAL comes set with.\n\nI found the ofxALSoundSetReferenceDistance() and ofxALSoundSetMaxDistance() to make perfect sense when setting the linear sound model by calling this:\n\nalDistanceModel(AL_LINEAR_DISTANCE_CLAMPED); \n\nI feel this sound model should be set by default, or at least give the API a method hinting that different sound models exist.\n\nI made a video demonstrating the issue here: http://www.youtube.com/watch?v=7Gz2x8R01jE"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1319","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1319/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1319/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1319/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1319","id":4985616,"number":1319,"title":"oF in HTML5","user":{"login":"gimlids","id":186277,"avatar_url":"https://secure.gravatar.com/avatar/cc4cace34c61103f0624002a692820f7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"cc4cace34c61103f0624002a692820f7","url":"https://api.github.com/users/gimlids","html_url":"https://github.com/gimlids","followers_url":"https://api.github.com/users/gimlids/followers","following_url":"https://api.github.com/users/gimlids/following","gists_url":"https://api.github.com/users/gimlids/gists{/gist_id}","starred_url":"https://api.github.com/users/gimlids/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gimlids/subscriptions","organizations_url":"https://api.github.com/users/gimlids/orgs","repos_url":"https://api.github.com/users/gimlids/repos","events_url":"https://api.github.com/users/gimlids/events{/privacy}","received_events_url":"https://api.github.com/users/gimlids/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":8,"created_at":"2012-06-09T15:58:45Z","updated_at":"2012-06-10T13:55:35Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Issue: openFrameworks does not run in the web browser.\n\nSolution: the emscripten backend for the LLVM compiler generates JavaScript, many C++ OpenGL projects have been demonstrated running in the browser with WebGL.\n\nIs anyone interested in this?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1314","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1314/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1314/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1314/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1314","id":4954019,"number":1314,"title":"PG overwrites .cbp's of different platforms","user":{"login":"sphaero","id":832465,"avatar_url":"https://secure.gravatar.com/avatar/f17e8b6636b46f5bfacbda5854842eb9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"f17e8b6636b46f5bfacbda5854842eb9","url":"https://api.github.com/users/sphaero","html_url":"https://github.com/sphaero","followers_url":"https://api.github.com/users/sphaero/followers","following_url":"https://api.github.com/users/sphaero/following","gists_url":"https://api.github.com/users/sphaero/gists{/gist_id}","starred_url":"https://api.github.com/users/sphaero/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sphaero/subscriptions","organizations_url":"https://api.github.com/users/sphaero/orgs","repos_url":"https://api.github.com/users/sphaero/repos","events_url":"https://api.github.com/users/sphaero/events{/privacy}","received_events_url":"https://api.github.com/users/sphaero/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project-generator","name":"project-generator","color":"444444"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-06-07T16:44:27Z","updated_at":"2012-06-07T16:44:27Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"If I create a simple test project including a linux64 and win CB projects I end up with only one test.cbp. It seems it overwrites itself since all platforms share the same name...\n\nsuggestion... use names like _ i.e. testApp_linux.cbp, testApp_linux64.cbp, test_win.cbp etc\n\nIf that's not already on the roadmap....\n\nI tested with the develop branch"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1312","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1312/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1312/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1312/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1312","id":4948268,"number":1312,"title":"ofURLFileLoader doesn't timeout or handle exceptions","user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2012-06-07T11:18:27Z","updated_at":"2012-09-13T20:56:07Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"If you issue a URL to ofURLFileLoader and the http subsystem triggers an exception (no route to host is the easiest to test -- just unplug your network), then the URL request will sit in the request queue forever. Turn on OF_LOG_VERBOSE and watch the console output.\n\nThere should be better exception handling, and/or there should be a timeout of some kind."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1306","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1306/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1306/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1306/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1306","id":4924361,"number":1306,"title":"projectGenerator fails when run from command line with target folder","user":{"login":"tarcoles","id":1822092,"avatar_url":"https://secure.gravatar.com/avatar/2399652e50fade7a5d8404203b31a61f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2399652e50fade7a5d8404203b31a61f","url":"https://api.github.com/users/tarcoles","html_url":"https://github.com/tarcoles","followers_url":"https://api.github.com/users/tarcoles/followers","following_url":"https://api.github.com/users/tarcoles/following","gists_url":"https://api.github.com/users/tarcoles/gists{/gist_id}","starred_url":"https://api.github.com/users/tarcoles/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tarcoles/subscriptions","organizations_url":"https://api.github.com/users/tarcoles/orgs","repos_url":"https://api.github.com/users/tarcoles/repos","events_url":"https://api.github.com/users/tarcoles/events{/privacy}","received_events_url":"https://api.github.com/users/tarcoles/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project-generator","name":"project-generator","color":"444444"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":8,"created_at":"2012-06-06T07:50:15Z","updated_at":"2013-02-11T12:16:04Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"If I run the projectGenerator without arguments and use the provided GUI, I can create a new project.\n\nBut if I try to run it as a command line tool it fails halfway through. I would guess a step to make the source folders is missing:\n\n mkdir ~/Public/carne\n\n ./projectGenerator --linux64 ~/Public/carne\n OF: OF_LOG_ERROR: Error: Missing GL version\n\n OF: OF_LOG_ERROR: ofDirectoryLister::listDirectory() error opening directory /home/gabriel/Public/carne/src/\n\n tree ~/Public/carne\n /home/gabriel/Public/carne\n |-- carne.cbp\n |-- carne.workspace\n |-- config.make\n `-- Makefile\n\n 0 directories, 4 files\n\nThis has been reproduced on Debian GNU/Linux wheezy/sid 64bit and Ubuntu 32bit"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1299","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1299/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1299/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1299/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1299","id":4861832,"number":1299,"title":"projectGenerator VS2010 release mode : no AdditionalIncludeDirectories","user":{"login":"sloopidoopi","id":248498,"avatar_url":"https://secure.gravatar.com/avatar/69d034865cb1f775bb1e0b47ff0580b2?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"69d034865cb1f775bb1e0b47ff0580b2","url":"https://api.github.com/users/sloopidoopi","html_url":"https://github.com/sloopidoopi","followers_url":"https://api.github.com/users/sloopidoopi/followers","following_url":"https://api.github.com/users/sloopidoopi/following","gists_url":"https://api.github.com/users/sloopidoopi/gists{/gist_id}","starred_url":"https://api.github.com/users/sloopidoopi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sloopidoopi/subscriptions","organizations_url":"https://api.github.com/users/sloopidoopi/orgs","repos_url":"https://api.github.com/users/sloopidoopi/repos","events_url":"https://api.github.com/users/sloopidoopi/events{/privacy}","received_events_url":"https://api.github.com/users/sloopidoopi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project-generator","name":"project-generator","color":"444444"}],"state":"open","assignee":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":1,"created_at":"2012-06-01T17:50:14Z","updated_at":"2013-02-11T12:16:04Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"In the projectGenerator.vcxproj the AdditionalIncludeDirectories for the release mode are missing. (I copied the entries from the debug mode for testing and compilaton worked)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1292","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1292/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1292/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1292/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1292","id":4840460,"number":1292,"title":"ofSetVerticalSync(false) no effect, other framerate issues","user":{"login":"ChristophPacher","id":463776,"avatar_url":"https://secure.gravatar.com/avatar/1c1ed6a26b6cb2351d65b3b02677b8d7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"1c1ed6a26b6cb2351d65b3b02677b8d7","url":"https://api.github.com/users/ChristophPacher","html_url":"https://github.com/ChristophPacher","followers_url":"https://api.github.com/users/ChristophPacher/followers","following_url":"https://api.github.com/users/ChristophPacher/following","gists_url":"https://api.github.com/users/ChristophPacher/gists{/gist_id}","starred_url":"https://api.github.com/users/ChristophPacher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ChristophPacher/subscriptions","organizations_url":"https://api.github.com/users/ChristophPacher/orgs","repos_url":"https://api.github.com/users/ChristophPacher/repos","events_url":"https://api.github.com/users/ChristophPacher/events{/privacy}","received_events_url":"https://api.github.com/users/ChristophPacher/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2012-05-31T16:24:30Z","updated_at":"2012-05-31T17:02:22Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hi,\n\nI am on a Windows 7 x64 Laptop (NV 420m GPU), using VS2010, latest OF trunk, lastest experimental ofxOpenNI trunk, latest OpenNI/nite binaries, OpenCV trunk from March, CUDA 4.1.\n\nWhen running my kinect app i have a hard time to control the FPS aswell as Vsync. Sometimes the app shows 300+ FPS sometimes +60 sometimes 30 when setting ofSetVerticalSync(true) and ofSetFramerate(60) (or using none of the settings), and I experience some slowdowns in the ofxOpenNI thread to 20 FPS when playing an .oni file, that recover back to normal 30 FPS. Sometimes the app runs perfectly with no slow downs but it is pretty much randomly changeing even with just an app restart or system restart. No changes in the Nvidia driver settings seem to directly and repeatetly control the FPS. The ofxOpenCV example is controlable and behaves as one would expect, but its not threaded.\n\nI am puzzeld and I do not know what could be the root of the problem. Any ideas where I could look next? Are there any instructions or patterns i should avoid when interacting with my OpenNI thread that could influence the Opengl thread?\n\nAnyone wanting to test this can reproduce this with running the sample project of gameovers ofxOpenNI called src-ONIRecording-Simple. \n\nThanks\n\nChris"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1279","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1279/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1279/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1279/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1279","id":4767675,"number":1279,"title":"ofShader example with HD Graphics 3000 issue","user":{"login":"subtiv","id":1012684,"avatar_url":"https://secure.gravatar.com/avatar/837cfe96365c031130a46311eb11d86a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"837cfe96365c031130a46311eb11d86a","url":"https://api.github.com/users/subtiv","html_url":"https://github.com/subtiv","followers_url":"https://api.github.com/users/subtiv/followers","following_url":"https://api.github.com/users/subtiv/following","gists_url":"https://api.github.com/users/subtiv/gists{/gist_id}","starred_url":"https://api.github.com/users/subtiv/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/subtiv/subscriptions","organizations_url":"https://api.github.com/users/subtiv/orgs","repos_url":"https://api.github.com/users/subtiv/repos","events_url":"https://api.github.com/users/subtiv/events{/privacy}","received_events_url":"https://api.github.com/users/subtiv/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2012-05-26T19:27:56Z","updated_at":"2012-05-28T08:08:24Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"There occurs a weir glitch when compiling the ofShader example with my HD Graphics 3000 (288 Mb) (Mac osx 10.7.4 - Mac Mini - i5 - 2.3Ghz)\n\nI was able to get rid of the glitch by replacing \"gl_FragColor = gl_Color;\" with \"gl_FragColor = 255.0;\" or any other number.\nAnybody knows a reason for the glitch / proper solution?\n\nScreenshot: http://goo.gl/Xdf74\nOpenGL capacities on different graphic cards on apple machines: http://goo.gl/FGQ2N"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1256","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1256/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1256/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1256/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1256","id":4554058,"number":1256,"title":"Feature ofPushMatrix(const ofMatrix4x4 &)","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":5,"created_at":"2012-05-13T18:20:29Z","updated_at":"2012-05-17T21:42:08Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"if i'm not mistaken, the correct way of using ofMatrix4x4 in oF is `glMultMatrixf(myMatrix.getPtr())` or `glLoadMatrixf`.\nThis seems a bit uncomfortable for me.\n\nsome candidates are:\n\n```c++\nofPushMatrix(const ofMatrix4x4 &); //needs alternatives as you might not want to push at the time\nofLoadMatrix(const ofMatrix4x4 &);\nofMultMatrix(const ofMatrix4x4 &);\n\nofMatrix4x4::apply();\nofMatrix4x4::glLoadMatrix(matrixMode = OF_MATRIX_MODE_CURRENT);\n```\n\n\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1252","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1252/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1252/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1252/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1252","id":4539985,"number":1252,"title":"0071 ply (mesh.save()) Point export is broken","user":{"login":"laserpilot","id":1041023,"avatar_url":"https://secure.gravatar.com/avatar/07001341fe6c156dddd5b9d06d828cba?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"07001341fe6c156dddd5b9d06d828cba","url":"https://api.github.com/users/laserpilot","html_url":"https://github.com/laserpilot","followers_url":"https://api.github.com/users/laserpilot/followers","following_url":"https://api.github.com/users/laserpilot/following","gists_url":"https://api.github.com/users/laserpilot/gists{/gist_id}","starred_url":"https://api.github.com/users/laserpilot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/laserpilot/subscriptions","organizations_url":"https://api.github.com/users/laserpilot/orgs","repos_url":"https://api.github.com/users/laserpilot/repos","events_url":"https://api.github.com/users/laserpilot/events{/privacy}","received_events_url":"https://api.github.com/users/laserpilot/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":6,"created_at":"2012-05-11T19:45:53Z","updated_at":"2013-02-11T12:12:35Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"\tunsigned char faceSize = 3;\n\tif(data.getNumIndices()){\n\t\tos << \"element face \" << data.getNumIndices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t} else if(data.getMode() == OF_PRIMITIVE_TRIANGLES) {\n\t\tos << \"element face \" << data.getNumVertices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t}\n\nThe facesize is being set as static as 3, but this results in strange exports...things open OK in Meshlab, but exporting to other programs with no faces seems like it won't work"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1250","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1250/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1250/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1250/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1250","id":4507492,"number":1250,"title":"bug: ofToDataPath broken again","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":9,"created_at":"2012-05-10T06:35:24Z","updated_at":"2013-02-11T12:16:04Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":":(\r\n\r\nIt seems i'm getting double 'data/' in my paths\r\nafter a little tracking down, i found this is because ofSystemLoadDialog changes the current working directory\r\n\r\nso we could try and either fix that by popping the folder after the dialog, \r\nof for windows using something like ```GetModuleFileName``` to get the path of the current exe rather than using the current working directory\r\n\r\nI can't seem to run GetModuleFileName from ofUtils.cpp even though windows.h is included in ofConstants.h (included in ofUtils.h)\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1239","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1239/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1239/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1239/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1239","id":4406584,"number":1239,"title":"Fix ofThread destructor behaviour","user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":31,"created_at":"2012-05-03T14:54:46Z","updated_at":"2013-02-11T12:16:04Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1239","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1239.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1239.patch"},"body":"The way ofThread's destructor worked was causing cleanup code at the end of threadedFunction to be skipped, sometimes leaving shared resources in an unusable state. This patch makes sure that the ofThread destructor waits until the thread has properly exited. \r\n\r\nIMO this patch is critical, but it should be treated with caution, as this has the possibility to cause deadlocks in code with multiple threads where the cleanup order is not clearly defined."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1236","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1236/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1236/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1236/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1236","id":4384548,"number":1236,"title":"init openframeworks before constructor of testapp is called?","user":{"login":"peteruithoven","id":523210,"avatar_url":"https://secure.gravatar.com/avatar/f39b1485b28be1dc2b98f269235218bc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"f39b1485b28be1dc2b98f269235218bc","url":"https://api.github.com/users/peteruithoven","html_url":"https://github.com/peteruithoven","followers_url":"https://api.github.com/users/peteruithoven/followers","following_url":"https://api.github.com/users/peteruithoven/following","gists_url":"https://api.github.com/users/peteruithoven/gists{/gist_id}","starred_url":"https://api.github.com/users/peteruithoven/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/peteruithoven/subscriptions","organizations_url":"https://api.github.com/users/peteruithoven/orgs","repos_url":"https://api.github.com/users/peteruithoven/repos","events_url":"https://api.github.com/users/peteruithoven/events{/privacy}","received_events_url":"https://api.github.com/users/peteruithoven/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"milestone":null,"comments":3,"created_at":"2012-05-02T13:24:49Z","updated_at":"2012-05-16T09:42:24Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I was trying to load a file in a subclass. I'm used to doing that in a constructor, but after an hour of debugging I found out that I can only do this if I make some kind of setup function. Because otherwise it's called before openframeworks is initialized. \r\n\r\nWhy not initialize openframeworks before ofRunApp or in the constructor ofBaseApp? \r\n\r\nTo reproduce put the following code in a constructor of a class and in a setup function that you call from the testapp setup. \r\nofFile f(\"DroidSans.ttf\");\r\ncout << f.getAbsolutePath() << endl;\r\n\r\nDifference is that when you load a file from the constructor the absolute url becomes:\r\n/Developer/openFrameworks/007/apps/data/DroidSans.ttf\r\nFrom a setup function that I call in the setup function of TestApp:\r\n/Developer/openFrameworks/007/apps/experiments/FindingFont2/bin/data/DroidSans.ttf"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1235","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1235/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1235/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1235/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1235","id":4383465,"number":1235,"title":"no get methods for ofSoundPlayer","user":{"login":"chrisoshea","id":104786,"avatar_url":"https://secure.gravatar.com/avatar/62d775b0fa28bcde2d9d29405d059be3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"62d775b0fa28bcde2d9d29405d059be3","url":"https://api.github.com/users/chrisoshea","html_url":"https://github.com/chrisoshea","followers_url":"https://api.github.com/users/chrisoshea/followers","following_url":"https://api.github.com/users/chrisoshea/following","gists_url":"https://api.github.com/users/chrisoshea/gists{/gist_id}","starred_url":"https://api.github.com/users/chrisoshea/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chrisoshea/subscriptions","organizations_url":"https://api.github.com/users/chrisoshea/orgs","repos_url":"https://api.github.com/users/chrisoshea/repos","events_url":"https://api.github.com/users/chrisoshea/events{/privacy}","received_events_url":"https://api.github.com/users/chrisoshea/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2012-05-02T12:06:15Z","updated_at":"2012-05-02T12:51:38Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Right now (007), how do you get a volume of a sample? a float sample.volume?\r\n\r\nhttp://www.openframeworks.cc/documentation/sound/ofSoundPlayer.html#volume\r\n\r\nBut if you look at ofSoundPlayer or ofBaseSoundPlayer there is no variable volume, or length, or pan, or speed. This brings up a compile error in Xcode saying:\r\n\r\nNo member named 'volume' in 'ofSoundPlayer'\r\n\r\nSo here are the variables:\r\n\r\nbool bLoop\r\nbool bLoadedOk\r\nbool bPaused\r\nfloat pan\r\nfloat volume\r\nfloat speed\r\nunsigned int length\r\n\r\nHere are the set methods:\r\n\r\nsetVolume(...)\r\nsetPan(...)\r\nsetSpeed(...)\r\nsetPaused(...)\r\nsetLoop(...)\r\nsetMultiPlay(...)\r\nsetPosition(...)\r\n\r\nHere are the gets:\r\n\r\ngetPosition()\r\ngetIsPlaying()\r\ngetSpeed()\r\ngetPan()\r\nsetPlayer(...)\r\ngetPlayer()\r\nsetPositionMS(...)\r\ngetPositionMS()\r\n\r\nWhat is missing?\r\n\r\ngetVolume()\r\ngetPaused()\r\ngetLoop()\r\n\r\nOr has this already been fixed?\r\n\r\nCheers\r\n\r\n\r\n\r\n\r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1234","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1234/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1234/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1234/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1234","id":4373361,"number":1234,"title":"PG should generate example projects in non-core addons","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project-generator","name":"project-generator","color":"444444"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":5,"created_at":"2012-05-01T20:24:05Z","updated_at":"2013-02-11T12:12:35Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"It would be great if the PG could get an option to generate the examples of non-core addons which the user has downloaded and placed in `OF/addons/`. This would really be useful to quickly look at/work with an addon.\r\n\r\nThe PG already knows about these addons. It would scan for folders in am addon's root directory with `example` in the name somewhere, and probably check the requisite structure (`src` folder, `addons.make` in place, etc), then generate the project file just the way it would if the example were in `OF/examples/addons/someExample`. Folder depth is the same, so I hope this is just a matter of adjusting the root folder for the example generation process - `addons` instead of `examples`.\r\n\r\nThoughts? Feedback?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1233","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1233/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1233/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1233/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1233","id":4373201,"number":1233,"title":"PG should offer addons download","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project-generator","name":"project-generator","color":"444444"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/automation","name":"automation","color":"5d5d5d"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2012-05-01T20:15:17Z","updated_at":"2012-05-04T03:31:24Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"This idea I had came up during the latest devmeet: \r\n\r\n*Proposal*\r\n\r\nI think it would be great if the PG would in the future offer automated downloading of addons. This would lower the barrier for people getting addons they want/need. Additionally, it would take away/reduce the need/desire to include popular addons in the OF core repo and/or release download, if addons are so easy to get, as part of a workflow we already envision the users to follow in the future (i.e. the PG)\r\n\r\n*Behaviour as it is now/soon:*\r\n\r\nAlice has an idea for a new project. She needs a couple addons for realising her project, and knows which ones. \r\nShe opens a browser to go to ofxaddons.com and/or github to download the addons if she doesn't have them yet and places them into `OF/addons/`. Alice starts the PG. The PG knows about the addons, and allows her to select them for inclusion. She creates a project and starts coding.\r\n\r\n*Desired/envisioned behaviour:*\r\n\r\nBob has an idea for a new project. He needs a couple addons for realising his project, and knows which ones. \r\nBob uses the new version of the PG to create a project. Beside the list of installed addons, the PG offers a dropdown list to select addons to download and place into the proper place. It lets Bob select if he prefers a plain download (to just use the addon), or a cloned git repo (to stay up-to-date and/or propose improvements to the addon author). Bob selects the desired addons to download, waits a while until PG reports that they're in place, and chooses all needed addons from the newly expanded list. He creates a project, and start coding the Next Big Thing, without even needing the browser! Awesome, right?\r\n\r\n*Analysis:*\r\n\r\nAlthough I realize that this is no trivial feature, I think much of what we need is already in place. \r\nPG knows about the repo structure, which addons are already there, etc., and has most of the file-manipulation logic already I think. \r\nofxaddons.com maintains a list of available addons and their locations, so I hope it's rather easy to present this in some machine-readable way for PG consumption (@obviousjim, thoughts?). \r\nWget/curl/git could take care of the download. \r\nofxGUI would have to be extended with a dropdown list, or some other way of (space)efficiently presenting the huge list of addons available.\r\n\r\nPossible issues: \r\nCross-platform way of downloading/git cloning without pulling to many dependencies (Elliot brought this up I think). Maybe have a fallback chain of mechanisms?\r\nAddon structure may not comply to what is expected (for old addons e.g.), so the project wouldn't work in the beginning. The same issue would appear on manual download, though.\r\n\r\n\r\nThoughts and Feedback, please. :-)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1232","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1232/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1232/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1232/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1232","id":4370619,"number":1232,"title":"bug/feature in ofColor::setSaturation ","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":14,"created_at":"2012-05-01T17:40:08Z","updated_at":"2013-02-11T12:12:35Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"should result in a gray circle, instead its white \r\n\r\n\tofColor c(255, 0, 0);\r\n\tc.setSaturation(0);\t\r\n\tofSetColor(c);\r\n\tofFill();\t\r\n\tofCircle(100,400,50);\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1229","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1229/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1229/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1229/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1229","id":4356530,"number":1229,"title":"pass matrices as uniforms with ofShader ","user":{"login":"Larsberg","id":346072,"avatar_url":"https://secure.gravatar.com/avatar/bb9a4f7c510339e9d7a447347dc263ba?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bb9a4f7c510339e9d7a447347dc263ba","url":"https://api.github.com/users/Larsberg","html_url":"https://github.com/Larsberg","followers_url":"https://api.github.com/users/Larsberg/followers","following_url":"https://api.github.com/users/Larsberg/following","gists_url":"https://api.github.com/users/Larsberg/gists{/gist_id}","starred_url":"https://api.github.com/users/Larsberg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Larsberg/subscriptions","organizations_url":"https://api.github.com/users/Larsberg/orgs","repos_url":"https://api.github.com/users/Larsberg/repos","events_url":"https://api.github.com/users/Larsberg/events{/privacy}","received_events_url":"https://api.github.com/users/Larsberg/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2012-04-30T19:49:38Z","updated_at":"2012-05-01T06:35:54Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"How do you feel about passing matrices to ofShader as a uniform?\r\n\r\nsomething like:\r\n\r\n\tvoid ofShader::setUniformMatrix4fv(const char* name, ofMatrix& matrix ) {\r\n\t\tif(bLoaded)\r\n\t\t\tglUniformMatrix4fv(getUniformLocation(name), 1, GL_FALSE, matrix.getPtr());\r\n\t}"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1217","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1217/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1217/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1217/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1217","id":4269431,"number":1217,"title":"projectGenerator update doesn't respect existing project settings","user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project-generator","name":"project-generator","color":"444444"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":5,"created_at":"2012-04-24T21:03:44Z","updated_at":"2013-02-11T12:13:03Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"On 'update', PG should respect existing custom include paths, source files, linker flags and project options (such as optimization settings).\r\n\r\nOR\r\n\r\nXcode project should read and respect `OTHER_LDFLAGS` and `HEADER_SEARCH_PATHS`, and add `OTHER_CFLAGS` from Project.xcconfig; projectGenerator should leave these settings alone unless it figures out they need to be adjusted (this is probably going to be difficult)."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1215","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1215/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1215/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1215/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1215","id":4269359,"number":1215,"title":"projectGenerator sets incorrect path in Project.xcconfig","user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project-generator","name":"project-generator","color":"444444"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":2,"created_at":"2012-04-24T20:59:57Z","updated_at":"2013-02-11T12:16:04Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"When using PG's 'update' functionality on apps are in paths with non-standard depths (in my case, `oF/apps/dir/subdir/subsubdir`) the OF_PATH and #include directives in the resulting Project.xcconfig don't match, which means oF projects won't compile:\r\n\r\n~~~~\r\n//THE PATH TO THE ROOT OF OUR OF PATH RELATIVE TO THIS PROJECT.\r\n//THIS NEEDS TO BE DEFINED BEFORE CoreOF.xcconfig IS INCLUDED\r\nOF_PATH = ../../../..\r\n\r\n//THIS HAS ALL THE HEADER AND LIBS FOR OF CORE\r\n#include \"../../../../../libs/openFrameworksCompiled/project/osx/CoreOF.xcconfig\"\r\n~~~~\r\n\r\nNote extra `../` in the `#include` path."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1202","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1202/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1202/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1202/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1202","id":4231092,"number":1202,"title":"ofVideoPlayer etc needs ofColor access","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2012-04-22T18:42:58Z","updated_at":"2012-04-22T23:56:33Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"i'm teaching a workshop right now and i feel like it's ridiculous that i need to explain pointers just to access video :)\r\n\r\nlet's add this!"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1190","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1190/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1190/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1190/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1190","id":4207350,"number":1190,"title":"Bezier Shaders & Vector openGL rendering","user":{"login":"microbians","id":1662136,"avatar_url":"https://secure.gravatar.com/avatar/98c91e60903b83c0a022ee70cca9ca21?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"98c91e60903b83c0a022ee70cca9ca21","url":"https://api.github.com/users/microbians","html_url":"https://github.com/microbians","followers_url":"https://api.github.com/users/microbians/followers","following_url":"https://api.github.com/users/microbians/following","gists_url":"https://api.github.com/users/microbians/gists{/gist_id}","starred_url":"https://api.github.com/users/microbians/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/microbians/subscriptions","organizations_url":"https://api.github.com/users/microbians/orgs","repos_url":"https://api.github.com/users/microbians/repos","events_url":"https://api.github.com/users/microbians/events{/privacy}","received_events_url":"https://api.github.com/users/microbians/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-2D","name":"section-2D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":10,"created_at":"2012-04-20T09:23:00Z","updated_at":"2013-02-04T20:49:50Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I'm investigating the way to draw bezier curves / nurbs etc. with shaders, here is a list a links and information I found that can improve render times with OF. Any way I must admit I'm new to openGL & shaders so maybe someone can take this to implement maybe an add-on or maybe to added to the core.\r\n\r\n**Resolution Independent Curve Rendering using Programmable Graphics Hardware**\r\nhttp://research.microsoft.com/en-us/um/people/cloop/loopblinn05.pdf\r\n\r\n**Resolution independent GPU accelerated Curve & Font rendering**\r\n**GPU based Resolution Independent Font & Curve Rendering – initial Release**\r\nhttp://jausoft.com/blog/2011/04/01/resolution-independent-gpu-accelerated-curve-font-rendering/\r\nhttp://ramisantina.com/blog/?p=73\r\nhttp://vimeo.com/21810192\r\nhttp://jogamp.org/doc/gpunurbs2011/p70-santina.pdf\r\n\r\n**Curvy blues**\r\nhttp://www.mdk.org.pl/2007/10/27/curvy-blues\r\n\r\n**Vector drawing: OpenGL shaders and cairo & vector hardware tessellation**\r\nhttp://www.mdk.org.pl/2007/8/6/vector-drawing-opengl-shaders-and-cairo\r\n\r\n**ShivaVG & Random Access Rendering of Animated Vector Graphics**\r\nhttp://ivanleben.blogspot.com.es/2007/07/shivavg-open-source-ansi-c-openvg.html\r\nhttp://www.youtube.com/watch?v=mD8X-e5-sY4\r\nhttp://www.youtube.com/watch?v=U4USCfwORUg\r\nhttp://andrejas-atelier.com/ivan/IvanLebenHonsThesis.pdf\r\n\r\n**RAVG**\r\nhttp://research.microsoft.com/en-us/um/people/hoppe/proj/ravg/\r\n\r\n**NV Path Rendering Videos (seams only with nvidia)**\r\nhttp://developer.nvidia.com/nv-path-rendering-videos\r\n\r\n**Vector drawing: OpenGL polygon tessellation**\r\nhttp://www.mdk.org.pl/2007/8/16/vector-drawing-opengl-polygon-tessellation\r\nhttp://zrusin.blogspot.com.es/2006/07/hardware-accelerated-polygon-rendering.html\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1189","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1189/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1189/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1189/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1189","id":4206982,"number":1189,"title":"ofSetCurveResolution + ofBezierVertex bug","user":{"login":"microbians","id":1662136,"avatar_url":"https://secure.gravatar.com/avatar/98c91e60903b83c0a022ee70cca9ca21?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"98c91e60903b83c0a022ee70cca9ca21","url":"https://api.github.com/users/microbians","html_url":"https://github.com/microbians","followers_url":"https://api.github.com/users/microbians/followers","following_url":"https://api.github.com/users/microbians/following","gists_url":"https://api.github.com/users/microbians/gists{/gist_id}","starred_url":"https://api.github.com/users/microbians/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/microbians/subscriptions","organizations_url":"https://api.github.com/users/microbians/orgs","repos_url":"https://api.github.com/users/microbians/repos","events_url":"https://api.github.com/users/microbians/events{/privacy}","received_events_url":"https://api.github.com/users/microbians/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":0,"created_at":"2012-04-20T08:51:51Z","updated_at":"2013-02-11T12:16:04Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofSetCurveResolution is not changing the resolution using ofBezier nor ofBezierVertex (tested with ofScale is more easy to see the bug)\r\n\r\n ofFill();\r\n ofSetHexColor(0xFF9933);\r\n ofBeginShape();\r\n ofVertex(x0,y0);\r\n ofBezierVertex(x1,y1,x2,y2,x3,y3);\r\n ofEndShape();\r\n\r\nall works fine when using ofPath directly:\r\n\r\n ofPath curve;\r\n curve.setFillHexColor(0xFF000);\r\n curve.setCurveResolution(120);\r\n curve.moveTo(x0, y0);\r\n curve.bezierTo(x1,y1,x2,y2,x3,y3);\r\n curve.draw();\r\n\r\nmore: http://forum.openframeworks.cc/index.php/topic,9596.0.html"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1186","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1186/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1186/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1186/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1186","id":4174070,"number":1186,"title":"ofFbo depthBufferTex can be inconsistent with colour texture","user":{"login":"neilmendoza","id":818571,"avatar_url":"https://secure.gravatar.com/avatar/3e46b12547e7bac19eb982bc512b19c4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3e46b12547e7bac19eb982bc512b19c4","url":"https://api.github.com/users/neilmendoza","html_url":"https://github.com/neilmendoza","followers_url":"https://api.github.com/users/neilmendoza/followers","following_url":"https://api.github.com/users/neilmendoza/following","gists_url":"https://api.github.com/users/neilmendoza/gists{/gist_id}","starred_url":"https://api.github.com/users/neilmendoza/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/neilmendoza/subscriptions","organizations_url":"https://api.github.com/users/neilmendoza/orgs","repos_url":"https://api.github.com/users/neilmendoza/repos","events_url":"https://api.github.com/users/neilmendoza/events{/privacy}","received_events_url":"https://api.github.com/users/neilmendoza/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2012-04-18T15:08:32Z","updated_at":"2012-05-01T04:10:23Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"If you set up an ofFbo as follows...\r\n\r\n```cpp\r\n ofFbo::Settings s;\r\n s.width = 400;\r\n s.height = 400;\r\n s.textureTarget = GL_TEXTURE_2D;\r\n s.useDepth = true;\r\n s.depthAsTexture = true;\r\n s.dethInternalFormat = GL_DEPTH_COMPONENT24;\r\n```\r\n\r\n...then the colour texture's dimensions are set to be the next POTs up but the depth texture's dimensions don't seem to be. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1178","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1178/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1178/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1178/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1178","id":4132608,"number":1178,"title":"OpenGLES2 not working","user":{"login":"erinnovations","id":253455,"avatar_url":"https://secure.gravatar.com/avatar/29639bbeb3afdde8fb3c7e273e5e43c6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"29639bbeb3afdde8fb3c7e273e5e43c6","url":"https://api.github.com/users/erinnovations","html_url":"https://github.com/erinnovations","followers_url":"https://api.github.com/users/erinnovations/followers","following_url":"https://api.github.com/users/erinnovations/following","gists_url":"https://api.github.com/users/erinnovations/gists{/gist_id}","starred_url":"https://api.github.com/users/erinnovations/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/erinnovations/subscriptions","organizations_url":"https://api.github.com/users/erinnovations/orgs","repos_url":"https://api.github.com/users/erinnovations/repos","events_url":"https://api.github.com/users/erinnovations/events{/privacy}","received_events_url":"https://api.github.com/users/erinnovations/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":26,"created_at":"2012-04-16T11:19:36Z","updated_at":"2013-02-11T12:16:04Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"As mentioned here: http://forum.openframeworks.cc/index.php?topic=9107.0\r\nOpenGLES2 not working. It is always falls back to ES1. I tested it only on iPad2 with iOS 5.0.1."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1175","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1175/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1175/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1175/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1175","id":4117762,"number":1175,"title":"GL_UNPACK_ALIGNMENT 1 in ofTexture","user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-04-14T13:45:42Z","updated_at":"2012-04-14T13:45:55Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"in ofTexture::loadData we are doing:\r\n\r\n\r\n\t//------------------------ likely, we are uploading continuous data\r\n\tGLint prevAlignment;\r\n\tglGetIntegerv(GL_UNPACK_ALIGNMENT, &prevAlignment);\r\n\tglPixelStorei(GL_UNPACK_ALIGNMENT, 1);\r\n\r\nany reason for this? leaving the default works too. i've been working with a huge video and the transfer rates on some cards were super slow with ofTexture::loadData. even glDrawPixels was faster, i've finally used pbo's but later looking at ofTexture discovered this lines and i suspect that it could be the reason for loadData being slower, haven't tested it yet though."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1171","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1171/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1171/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1171/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1171","id":4081188,"number":1171,"title":"ofBeginSaveScreenAsPDF ignores 3d transformations","user":{"login":"jesusgollonet","id":31100,"avatar_url":"https://secure.gravatar.com/avatar/5008d5295e9bc2636313c7b50ed5981d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5008d5295e9bc2636313c7b50ed5981d","url":"https://api.github.com/users/jesusgollonet","html_url":"https://github.com/jesusgollonet","followers_url":"https://api.github.com/users/jesusgollonet/followers","following_url":"https://api.github.com/users/jesusgollonet/following","gists_url":"https://api.github.com/users/jesusgollonet/gists{/gist_id}","starred_url":"https://api.github.com/users/jesusgollonet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jesusgollonet/subscriptions","organizations_url":"https://api.github.com/users/jesusgollonet/orgs","repos_url":"https://api.github.com/users/jesusgollonet/repos","events_url":"https://api.github.com/users/jesusgollonet/events{/privacy}","received_events_url":"https://api.github.com/users/jesusgollonet/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-04-12T10:09:42Z","updated_at":"2012-04-12T10:09:42Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"if I call ofBeginSaveScreenAsPDF using ofEasyCam or the ofCamera, the pdf doesn't have the perspective of the camera. There's a parameter b3d to ofBeginSaveScreenAsPDF which I interpret to be \"render taking into account 3d transforms\", but it doesn't seem to have any effect.\r\n\r\nmore on the forum\r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,9542.0.html"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1165","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1165/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1165/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1165/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1165","id":4063366,"number":1165,"title":"ofLogError, ofLogWarning lack format, ... args","user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":6,"created_at":"2012-04-11T11:56:33Z","updated_at":"2012-04-21T15:41:01Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"It's currently not possible to write `ofLogError( \"serial\", \"error %i connecting to serial\", serialError )`. \r\n\r\nThere should be `ofLogError( string module, string format, ... )` methods as with normal ofLog."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1152","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1152/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1152/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1152/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1152","id":4032047,"number":1152,"title":"grabScreen in ofImage fails on Android","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":7,"created_at":"2012-04-09T17:15:21Z","updated_at":"2012-07-13T19:01:54Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"change `allocate(_w, _h, OF_IMAGE_COLOR);` to `allocate(_w, _h, OF_IMAGE_COLOR_ALPHA);` (via reza on irc)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1146","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1146/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1146/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1146/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1146","id":4015514,"number":1146,"title":"Document Project Generator / clean out old tools","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-04-07T14:43:53Z","updated_at":"2012-04-07T15:00:32Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hey all\r\n\r\nA few sections of the repo need some love to put them in line with the project generator:\r\n\r\n1. Readme's\r\n2. Rogue old project generators\r\n3. Document complementing tools\r\n\r\n# Readme\r\n\r\nThe readme's in the root of the repo need some love\r\nnone of them mention project generator \r\n\r\ni feel like each should be a description of how to get to a working project generator on each of the respective platforms\r\n\r\nalso note:\r\n* .vs2010 is missing\r\n* readme.txt repeats information from the other readme's (i.e. it's a list of platform specific instructions)\r\ni think this should be perhaps a little description of oF and a few tips on how to get started\r\n\r\n# Rogue old 'project generators' / documenting complementary tools for project generator\r\n\r\nHere's things I can find in the repo which don't make sense to me at the moment:\r\n\r\n* `openFrameworks\\scripts\\????\\compileAllExamples.bat`\r\n** is this supposed to be run (optionally) after the project generator?\r\n** why is the project template within this folder?\r\n* `openFrameworks\\scripts\\????\\createProjects.py` \r\n** if this isn't supposed to be used anymore, lets delete it immediately (we can always recover in emergencies)\r\n\r\nand the 'other' folder in the root.. perhaps never took off?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1145","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1145/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1145/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1145/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1145","id":4010494,"number":1145,"title":"ofCairoRenderer ofMesh doesn't render properly to PDF","user":{"login":"rezaali","id":555207,"avatar_url":"https://secure.gravatar.com/avatar/548374013b9c6e50ebbd2294e12d4f31?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"548374013b9c6e50ebbd2294e12d4f31","url":"https://api.github.com/users/rezaali","html_url":"https://github.com/rezaali","followers_url":"https://api.github.com/users/rezaali/followers","following_url":"https://api.github.com/users/rezaali/following","gists_url":"https://api.github.com/users/rezaali/gists{/gist_id}","starred_url":"https://api.github.com/users/rezaali/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rezaali/subscriptions","organizations_url":"https://api.github.com/users/rezaali/orgs","repos_url":"https://api.github.com/users/rezaali/repos","events_url":"https://api.github.com/users/rezaali/events{/privacy}","received_events_url":"https://api.github.com/users/rezaali/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2012-04-06T22:02:01Z","updated_at":"2012-04-07T19:49:31Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"When attempting to render a mesh to a PDF the ofCairoRender does not output a filled mesh, thus the PDF output looks empty. \r\n\r\nIf you open the file in illustrator you'll see the paths, there but with no stroke or fill. \r\n\r\nWhen I dug into the issue a bit further I realized that Cairo isn't capable of rendering shapes with per vertex colors easily...\r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1144","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1144/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1144/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1144/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1144","id":4001148,"number":1144,"title":"ofColor subtraction and negative values","user":{"login":"jembezmamy","id":720354,"avatar_url":"https://secure.gravatar.com/avatar/69a23dc9914cb6bc3202c50e15eabba0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"69a23dc9914cb6bc3202c50e15eabba0","url":"https://api.github.com/users/jembezmamy","html_url":"https://github.com/jembezmamy","followers_url":"https://api.github.com/users/jembezmamy/followers","following_url":"https://api.github.com/users/jembezmamy/following","gists_url":"https://api.github.com/users/jembezmamy/gists{/gist_id}","starred_url":"https://api.github.com/users/jembezmamy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jembezmamy/subscriptions","organizations_url":"https://api.github.com/users/jembezmamy/orgs","repos_url":"https://api.github.com/users/jembezmamy/repos","events_url":"https://api.github.com/users/jembezmamy/events{/privacy}","received_events_url":"https://api.github.com/users/jembezmamy/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":9,"created_at":"2012-04-06T07:56:44Z","updated_at":"2013-02-11T12:17:22Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"When using the ofColor subtraction operator, negative results are clamped to positive values instead of 0. Values are circulating between 0 and 255, which could be useful for hue in HSV but in most cases (R, G, B..) is not what I would expect.\r\n\r\n ofColor a(10, 40, 80);\r\n ofColor b(20, 5, 30);\r\n ofColor c = (a-b); // I get: (246, 45, 50), I would expect: (0, 45, 50)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1134","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1134/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1134/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1134/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1134","id":3917377,"number":1134,"title":"multidimensional noise output","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2012-04-01T16:44:55Z","updated_at":"2012-04-03T17:37:10Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"theo's #1133 made me think about ways that i use noise regularly that might also be abstracted.\r\n\r\ni would also like to see versions of noise that return multidimensional results. normally i do something like:\r\n\r\n\tofVec2 a(ofSignedNoise(t, 0), ofSignedNoise(0, t)); // 1D -> 2D\r\n\tofVec2 b(ofSignedNoise(x, 0), ofSignedNoise(0, y)); // 2D -> 2D\r\n\tofVec3 c(ofSignedNoise(t, 0, 0), ofSignedNoise(0, t, 0), ofSignedNoise(0, 0, t)); // 1D -> 3D\r\n\tofVec3 d(ofSignedNoise(x, 0, 0), ofSignedNoise(0, y, 0), ofSignedNoise(0, 0, (x + y) / 2)); // 2D -> 3D\r\n\r\nand it would be good to spend some time making sure these are really good ways of doing it, then implement them inside some functions like `ofSignedNoise2()` and `ofSignedNoise3()` (for example)."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1133","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1133/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1133/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1133/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1133","id":3917018,"number":1133,"title":"ofNoise and ofSignedNoise with 2nd order control for rate.","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-04-01T15:45:11Z","updated_at":"2012-04-01T17:48:12Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ie: the equivalent of doing \r\n\r\nfloat rate = 0.02 + ofNoise(ofGetElapsedTimeF() * 0.02, 100.0) * 0.015;\r\nfloat value = ofSignedNoise( rate, x, y ); \r\n\r\nas one function. \r\n\r\nalso see kyle's #1134 for other noise utils. \r\n\r\nI find myself needing this quite often for more natural random motion where the rate of change is variable. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1132","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1132/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1132/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1132/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1132","id":3911629,"number":1132,"title":"ofStringUtils:: feature discussion","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":8,"created_at":"2012-03-31T17:52:48Z","updated_at":"2012-08-27T23:35:02Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"This is a feature discussion issue for what string features we should add to of.\r\nofZach mentioned some regexp ones from P5 match matchAll\r\nWould be great to get some eyes on this.\r\n\r\nOne approach would be a static class or namespace.\r\nThe idea would be we could include a variety of handy functions that would be useful for people not wanting to get into regexp\r\n\r\n\tofString::contains(str, \"apple\") //returns bool\r\n\tofString::starts(str, \"The\") //returns bool\r\n\tofString::ends(str, \".\") //returns bool\r\n\tofString::count(str, \"apples\") //count how many times apples appears in the \r\n\tofString::join(myVectorStr, \", \"); //this is currently ofJoinString\r\n\tofString::split(someText, \".\"); //this is currently ofSplitString\r\n\tofString::split(someHtml, \"<\", \">\"); //this is the same but returns a vector of things between the start and end delims\r\n\tofString::limit(someText, 200); //limit the text to 200 characters. optional arg to add ... to the end.\r\n\r\nQuestions:\r\n- Should we mirror P5 with match and matchAll or should we indicate that regexp is required? ie regexMatch regexMatchAll ?\r\n- Other string utils we could add?\r\n- Should it be ofStringUtils:: or ofString:: ?\r\n- Something to do a split and then return a vector of float int etc?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1131","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1131/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1131/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1131/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1131","id":3911537,"number":1131,"title":"ofTTF feature discussion","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":25,"created_at":"2012-03-31T17:36:25Z","updated_at":"2012-05-27T17:40:30Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"This is a feature discussion issue for what should be added / changed to ofTTF.\r\nWould be great to get some eyes on this from @vtron @ofzach @arturoc and anyone with thoughts on the matter.\r\n\r\nTextAreas:\r\n- Fit text to a box\r\n- Handle overflow ( ie either truncate or resize box height )\r\n- non ragged options\r\n- could textAreas work with both ofTTF and ofDrawBitmapString ? abstract text formatting?\r\n\r\nAlignment:\r\n- Left align a string\r\n- Right align\r\n- Center\r\n- Top align \r\n- Base align \r\n\r\nSpacing:\r\n- Kerning\r\n- Leading / line height\r\n\r\nLoading:\r\n- Allow for loading a font up to a max size for drawing at different sizes. \r\n- Allow for selection and loading of specific sizes within one object. ie: myFont.setCurrentSize(12); \r\n- Font family's / sets ? Bold, Italic etc? \r\n\r\nDrawing:\r\n- Allow for drawing font at different sizes. Scale font as needed. \r\n\r\nFormatting:\r\n- Could we somehow allow a string to have different colors, sizes. Right now it is a pain to change colors or sizes. \r\n- would this be replicating basic html or another approach? maybe better as an addon?\r\n\r\nInfo:\r\n- Ability to get the x and y position of the nth character in the string? useful maybe for cursor or selection?\r\n\r\n**Update:**\r\n-Underline\r\n-Render rect behind text ( a la what @kylemcdonald added to ofDrawBitmapString)\r\n-Scale type to fit a rect + keep aspect ratio\r\n-Crazy: text along a path :) "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1130","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1130/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1130/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1130/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1130","id":3910580,"number":1130,"title":"Define standard header for examples.","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":1,"created_at":"2012-03-31T14:44:01Z","updated_at":"2013-02-11T12:13:03Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Agree on a common format for a header in the contributed example files."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1128","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1128/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1128/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1128/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1128","id":3910549,"number":1128,"title":"upgrade scripts","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2012-03-31T14:38:19Z","updated_at":"2012-03-31T16:32:04Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"When deprecating api's (e.g. ofEvents, ofVertexes), perhaps we could help automate the changes through simple scripts to update api\r\nSuggest sticking to something close to how uncrustify scripts are run (and perhaps there are tools like uncrustify but specifically for this task)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1126","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1126/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1126/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1126/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1126","id":3897090,"number":1126,"title":"PG Feature request: Clean examples folder","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project-generator","name":"project-generator","color":"444444"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":1,"created_at":"2012-03-30T12:51:30Z","updated_at":"2013-02-11T12:13:03Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"It would be nice (and useful for testing the PG) if the PG would get an option to clean the examples folders of all generated files. \r\n\r\nCurrently, the quickest option is to delete the examples folder on disk, and do `git reset --hard HEAD`.\r\n\r\nAs before, milestoned for 0071, but feel free to push back."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1124","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1124/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1124/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1124/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1124","id":3883598,"number":1124,"title":"void dragEvent(ofDragInfo dragInfo) limited to 100 files in osx lion","user":{"login":"jesusgollonet","id":31100,"avatar_url":"https://secure.gravatar.com/avatar/5008d5295e9bc2636313c7b50ed5981d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5008d5295e9bc2636313c7b50ed5981d","url":"https://api.github.com/users/jesusgollonet","html_url":"https://github.com/jesusgollonet","followers_url":"https://api.github.com/users/jesusgollonet/followers","following_url":"https://api.github.com/users/jesusgollonet/following","gists_url":"https://api.github.com/users/jesusgollonet/gists{/gist_id}","starred_url":"https://api.github.com/users/jesusgollonet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jesusgollonet/subscriptions","organizations_url":"https://api.github.com/users/jesusgollonet/orgs","repos_url":"https://api.github.com/users/jesusgollonet/repos","events_url":"https://api.github.com/users/jesusgollonet/events{/privacy}","received_events_url":"https://api.github.com/users/jesusgollonet/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2012-03-29T16:47:29Z","updated_at":"2012-06-07T12:06:49Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"there is a hard limit of 100 files when using drag & drop into an of app. not sure if it's an of issue, but am curious if it comes from the hacked glutDragEventFunc "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1120","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1120/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1120/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1120/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1120","id":3856005,"number":1120,"title":"isFileChanged() for ofImage, ofVideoPlayer, ofSoundPlayer and ofFile","user":{"login":"imanhp","id":1216228,"avatar_url":"https://secure.gravatar.com/avatar/7398ab0bbd07832d0289f26773e65077?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"7398ab0bbd07832d0289f26773e65077","url":"https://api.github.com/users/imanhp","html_url":"https://github.com/imanhp","followers_url":"https://api.github.com/users/imanhp/followers","following_url":"https://api.github.com/users/imanhp/following","gists_url":"https://api.github.com/users/imanhp/gists{/gist_id}","starred_url":"https://api.github.com/users/imanhp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/imanhp/subscriptions","organizations_url":"https://api.github.com/users/imanhp/orgs","repos_url":"https://api.github.com/users/imanhp/repos","events_url":"https://api.github.com/users/imanhp/events{/privacy}","received_events_url":"https://api.github.com/users/imanhp/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2012-03-28T16:21:45Z","updated_at":"2012-03-29T13:05:25Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"When loading a file with ofImage, ofSoundPlayer , ofVideoPlayer-file or any ofFile it would be nice to be able to know if the file changed since it was loaded.\r\n\r\nIts very simple to implement with Poco::File->getLastModified() and it would be very nice if this would be built into the above classes."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1117","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1117/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1117/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1117/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1117","id":3825582,"number":1117,"title":"Can't retrieve desired frame rate once set","user":{"login":"armadillu","id":167057,"avatar_url":"https://secure.gravatar.com/avatar/b87a82d7c86161432ee6388c7cbd5e2c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b87a82d7c86161432ee6388c7cbd5e2c","url":"https://api.github.com/users/armadillu","html_url":"https://github.com/armadillu","followers_url":"https://api.github.com/users/armadillu/followers","following_url":"https://api.github.com/users/armadillu/following","gists_url":"https://api.github.com/users/armadillu/gists{/gist_id}","starred_url":"https://api.github.com/users/armadillu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/armadillu/subscriptions","organizations_url":"https://api.github.com/users/armadillu/orgs","repos_url":"https://api.github.com/users/armadillu/repos","events_url":"https://api.github.com/users/armadillu/events{/privacy}","received_events_url":"https://api.github.com/users/armadillu/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-03-27T11:48:00Z","updated_at":"2012-04-18T17:13:36Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Once ofSetFrameRate() is called, I can't find a way to retrieve it. I think implementing a ofGetDesiredFrameRate() in ofAppRunner would make sense, also adding getDesiredFrameRate() to ofAppBaseWindow and all subclasses, where the actual value is stored. \r\n\r\nThis can be useful to compare the desired frame rate with actual frame rate and react accordingly if required."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1116","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1116/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1116/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1116/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1116","id":3813852,"number":1116,"title":"ofVBO updateIndexData incorrect buffer type.","user":{"login":"vade","id":65011,"avatar_url":"https://secure.gravatar.com/avatar/37aca214d4875cd90af9d67072c82642?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"37aca214d4875cd90af9d67072c82642","url":"https://api.github.com/users/vade","html_url":"https://github.com/vade","followers_url":"https://api.github.com/users/vade/followers","following_url":"https://api.github.com/users/vade/following","gists_url":"https://api.github.com/users/vade/gists{/gist_id}","starred_url":"https://api.github.com/users/vade/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vade/subscriptions","organizations_url":"https://api.github.com/users/vade/orgs","repos_url":"https://api.github.com/users/vade/repos","events_url":"https://api.github.com/users/vade/events{/privacy}","received_events_url":"https://api.github.com/users/vade/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":5,"created_at":"2012-03-26T18:26:05Z","updated_at":"2012-03-26T22:27:14Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/gl/ofVbo.cpp#L343\r\n\r\nIndices should be specified as GL_ELEMENT_ARRAY_BUFFER unless I am mistaken."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1115","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1115/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1115/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1115/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1115","id":3812318,"number":1115,"title":"optimization level in xcode projects","user":{"login":"colormotor","id":1239872,"avatar_url":"https://secure.gravatar.com/avatar/2548dbd6a86902ed5260b5f76710b83c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2548dbd6a86902ed5260b5f76710b83c","url":"https://api.github.com/users/colormotor","html_url":"https://github.com/colormotor","followers_url":"https://api.github.com/users/colormotor/followers","following_url":"https://api.github.com/users/colormotor/following","gists_url":"https://api.github.com/users/colormotor/gists{/gist_id}","starred_url":"https://api.github.com/users/colormotor/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/colormotor/subscriptions","organizations_url":"https://api.github.com/users/colormotor/orgs","repos_url":"https://api.github.com/users/colormotor/repos","events_url":"https://api.github.com/users/colormotor/events{/privacy}","received_events_url":"https://api.github.com/users/colormotor/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2012-03-26T17:05:14Z","updated_at":"2012-03-26T18:45:51Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"The default optimization settings for debug builds in example XCode projects is set to Fastest,Smallest thus making debugging very difficult, is there a specific reason for this?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1114","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1114/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1114/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1114/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1114","id":3812275,"number":1114,"title":"macros in ofArduino","user":{"login":"colormotor","id":1239872,"avatar_url":"https://secure.gravatar.com/avatar/2548dbd6a86902ed5260b5f76710b83c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2548dbd6a86902ed5260b5f76710b83c","url":"https://api.github.com/users/colormotor","html_url":"https://github.com/colormotor","followers_url":"https://api.github.com/users/colormotor/followers","following_url":"https://api.github.com/users/colormotor/following","gists_url":"https://api.github.com/users/colormotor/gists{/gist_id}","starred_url":"https://api.github.com/users/colormotor/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/colormotor/subscriptions","organizations_url":"https://api.github.com/users/colormotor/orgs","repos_url":"https://api.github.com/users/colormotor/repos","events_url":"https://api.github.com/users/colormotor/events{/privacy}","received_events_url":"https://api.github.com/users/colormotor/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":{"login":"joshuajnoble","id":237423,"avatar_url":"https://secure.gravatar.com/avatar/10960ba0f305803a1cdc7cd6188d643b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"10960ba0f305803a1cdc7cd6188d643b","url":"https://api.github.com/users/joshuajnoble","html_url":"https://github.com/joshuajnoble","followers_url":"https://api.github.com/users/joshuajnoble/followers","following_url":"https://api.github.com/users/joshuajnoble/following","gists_url":"https://api.github.com/users/joshuajnoble/gists{/gist_id}","starred_url":"https://api.github.com/users/joshuajnoble/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/joshuajnoble/subscriptions","organizations_url":"https://api.github.com/users/joshuajnoble/orgs","repos_url":"https://api.github.com/users/joshuajnoble/repos","events_url":"https://api.github.com/users/joshuajnoble/events{/privacy}","received_events_url":"https://api.github.com/users/joshuajnoble/received_events","type":"User"},"milestone":null,"comments":2,"created_at":"2012-03-26T17:02:21Z","updated_at":"2012-08-02T10:10:07Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I had some problems because of macro definitions in ofArduino.h overriding an enum in a a class of my codebase ( SHIFT )\r\nIt's not exactly a bug! but I would suggest using enums or const int instead of the macros to avoid any conflicts\r\nI solved the problem by modifying \r\n#define SHIFT 0x05 \r\ninto \r\nconst int SHIFT = 0x05;\r\n\r\nanother solution could be using enumerations as \r\nenum\r\n{\r\n ...\r\n SHIFT = 0x05,\r\n etc...\r\n};\r\n\r\nI believe this would not break any of the existing code\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1110","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1110/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1110/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1110/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1110","id":3799872,"number":1110,"title":"add a simple regex function like ofSplitString()","user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2012-03-25T18:56:37Z","updated_at":"2012-03-25T20:07:16Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Todd's example has this code a few times in it by hand, but I'm thinking it's so simple it could be added along side ofSplitString() and would be really useful ? for sure, more string utility functions are helpful, and for basic text parsing, this is great. Poco gives us this for free, so it doesn't seem like a huge stretch to think of something like this, plus find and replace, etc. Would make the regex example much shorter. \r\n\r\np5 has something similar, if that's a helpful argument: \r\n\r\nhttp://processing.org/reference/matchAll_.html\r\n\r\n\r\n\tvector < string > ofxRegex::getMatchedStrings (string contents, string regex );\r\n\tvector < string > ofxRegex::getMatchedStrings (string contents, string regex ){\r\n \r\n\t vector < string > results;\r\n\t RegularExpression regEx(regex);\r\n\t RegularExpression::Match match;\r\n \r\n\t while(regEx.match(contents, match) != 0) {\r\n \r\n\t // we get the sub string from the content\r\n\t // and then trim the content so that we\r\n\t // can continue to search \r\n\t string foundStr = contents.substr(match.offset, match.length);\r\n\t contents = contents.substr(match.offset + match.length);\r\n \r\n\t results.push_back(foundStr);\r\n \r\n\t }\r\n\t return results;\r\n\t}"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1109","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1109/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1109/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1109/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1109","id":3799653,"number":1109,"title":"mac paths don't seem right until you call \"ofToDataPath()\"","user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2012-03-25T18:18:28Z","updated_at":"2012-03-25T18:50:13Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"code to recreate: \r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::setup(){\r\n system(\"pwd;\");\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::update(){\r\n system(\"pwd;\");\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::draw(){\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::keyPressed(int key){\r\n cout << ofToDataPath(\"temp\") << endl;\r\n}\r\n\r\nproduces: \r\n\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n../../../data/temp\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin/emptyExampleDebug.app/Contents/MacOS\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin/emptyExampleDebug.app/Contents/MacOS\r\n\r\nthis is because the code that fixes OSX paths isn't called until you call ofToDataPath(). a good fix I think would be to set ofDataPathRoot (which happens in ofToDataPath) somewhere early in ofRunApp(). Or should it happen even earlier?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1103","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1103/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1103/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1103/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1103","id":3754055,"number":1103,"title":"PG feature request: Generate makefile-only projects","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project-generator","name":"project-generator","color":"444444"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":5,"created_at":"2012-03-21T21:43:34Z","updated_at":"2013-02-11T12:13:03Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"It would be great if the PG could also generate projects/examples for usage with Eclipse, i.e. just the makefile related files, no CB or other project files."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1099","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1099/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1099/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1099/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1099","id":3710691,"number":1099,"title":"issue with projectGenerator and XIB files.","user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project-generator","name":"project-generator","color":"444444"}],"state":"open","assignee":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":9,"created_at":"2012-03-19T14:27:25Z","updated_at":"2013-02-11T12:16:29Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"iPhoneGuiExample created by the projectGenerator seems to have an issue with XIB files.\r\nthe XIB is included in the project but can not be viewed inside the xcode project.\r\nin another instance, it was causing the app to crash.\r\n\r\nwhen removing the XIB and adding it back to the project manually, it start working again.\r\nwhich makes me believe its got something to do with the way projectGenerator is adding the XIB to the project.\r\n\r\nive compared the before and after (adding the XIB back manually) and here are the differences in the xcode projects.\r\nnote, the top line is the before and the bottom is the after.\r\n\r\n/* MyGuiView.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; name = MyGuiView.xib; path = gui/MyGuiView.xib; sourceTree = \"\"; };\r\n/* MyGuiView.xib */ = {isa = PBXFileReference; explicitFileType = file; fileEncoding = 30; name = MyGuiView.xib; path = src/gui/MyGuiView.xib; sourceTree = SOURCE_ROOT; };\r\n\r\n/* MyGuiView.xib in Resources */\r\n/* MyGuiView.xib in Sources */"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1098","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1098/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1098/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1098/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1098","id":3710293,"number":1098,"title":"feature / bug - #pragma omp critical(ofLog)","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/critical","name":"critical","color":"ff0000"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":11,"created_at":"2012-03-19T14:04:51Z","updated_at":"2013-02-11T12:13:03Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"whenever i call ofLog beneath openmp i have to wrap it in ```#pragma omp critical (ofLog)``` otherwise i get a crash\r\ni found adding the line above \r\nhttps://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/utils/ofLog.cpp#L84\r\nworks pretty well\r\n\r\nany objections to having it in there?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1075","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1075/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1075/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1075/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1075","id":3662214,"number":1075,"title":"bug ofDirectory::open(string path) actually loads the entire dir into memory?","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"milestone":null,"comments":2,"created_at":"2012-03-15T07:54:55Z","updated_at":"2012-03-15T20:34:17Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I'm finding that `ofDirector::listDir, open` are extremely slow\r\nit seems that it's actually loading the entire dir contents into memory\r\n\r\nit's possible to then do something like\r\n```\r\nofLoadImage(myPixels, dir.getFile(i));\r\n```\r\nand you can quickly load that image from memory. which is faster than\r\n```\r\nofLoadImage(myPixels, dir.getFile(i).getAbsolutePath());\r\n```\r\n\r\nBut this doesn't seem to work consistently (even though the slow listing is consistent)\r\nand surely isn't what we want."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1070","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1070/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1070/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1070/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1070","id":3647640,"number":1070,"title":"Alpha movies in GStreamer","user":{"login":"emmanuelgeoffray","id":808090,"avatar_url":"https://secure.gravatar.com/avatar/c1ec5161b69b4a990436deafb1170d64?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"c1ec5161b69b4a990436deafb1170d64","url":"https://api.github.com/users/emmanuelgeoffray","html_url":"https://github.com/emmanuelgeoffray","followers_url":"https://api.github.com/users/emmanuelgeoffray/followers","following_url":"https://api.github.com/users/emmanuelgeoffray/following","gists_url":"https://api.github.com/users/emmanuelgeoffray/gists{/gist_id}","starred_url":"https://api.github.com/users/emmanuelgeoffray/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/emmanuelgeoffray/subscriptions","organizations_url":"https://api.github.com/users/emmanuelgeoffray/orgs","repos_url":"https://api.github.com/users/emmanuelgeoffray/repos","events_url":"https://api.github.com/users/emmanuelgeoffray/events{/privacy}","received_events_url":"https://api.github.com/users/emmanuelgeoffray/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":9,"created_at":"2012-03-14T13:02:41Z","updated_at":"2013-01-15T11:28:36Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hello,\r\nI needed alpha channel in short length video for a recent project.\r\nIn the forum there is some old zip file for a ofxAlphaVideoPlayer that is still working, but that's OS X & windows only as it's based on QT.\r\nI'm working on linux, and I didn't find anything for GStreamer, so I modified the existing ofGstUtils and ofGstVideoPlayer.\r\nWould you mind if I do a pull request for this?\r\nI can also provide an example with a short length video using animation codec.\r\nWhat do you think?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1068","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1068/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1068/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1068/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1068","id":3631618,"number":1068,"title":"Continuous integration/testing","user":{"login":"gabrielstuff","id":285033,"avatar_url":"https://secure.gravatar.com/avatar/390ea42c23c2c383f973abdafa24bb07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"390ea42c23c2c383f973abdafa24bb07","url":"https://api.github.com/users/gabrielstuff","html_url":"https://github.com/gabrielstuff","followers_url":"https://api.github.com/users/gabrielstuff/followers","following_url":"https://api.github.com/users/gabrielstuff/following","gists_url":"https://api.github.com/users/gabrielstuff/gists{/gist_id}","starred_url":"https://api.github.com/users/gabrielstuff/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gabrielstuff/subscriptions","organizations_url":"https://api.github.com/users/gabrielstuff/orgs","repos_url":"https://api.github.com/users/gabrielstuff/repos","events_url":"https://api.github.com/users/gabrielstuff/events{/privacy}","received_events_url":"https://api.github.com/users/gabrielstuff/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/automation","name":"automation","color":"5d5d5d"}],"state":"open","assignee":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"milestone":null,"comments":27,"created_at":"2012-03-13T15:49:23Z","updated_at":"2013-02-15T15:07:44Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hey !\r\n\r\nMe again. Didn't find anywhere this infos. I'm currently testing the travis-ci.org service.\r\nAs many people are working on the project and as many many issue are raised, and fixed, I thought it could be great to add some test and thus the travis service.\r\n\r\nIt would avoid the problem met here :\r\nhttps://github.com/openframeworks/openFrameworks/commit/7ca7833ea1afb6bd5a6c54031e3fa688aa0c0ba8\r\nand the discussion here :\r\nhttps://github.com/openframeworks/openFrameworks/issues/804\r\nor there :\r\nhttps://github.com/openframeworks/openFrameworks/pull/921\r\n\r\nI read that :\r\n\r\n>feel free to make a unitTests folder at the root level of OF -\r\n> that is where all unitTests will go.\r\n\r\nBut didn't find them.\r\n\r\nThe travis service will permit to get the little badge we know well : \r\n[![Build Status](https://secure.travis-ci.org/soixantecircuits/openFrameworks.png?branch=master)](http://travis-ci.org/soixantecircuits/openFrameworks)\r\n\r\nAlso, why not adding some spec test, to ensure future development of features.\r\nI'm currently reading :\r\nhttp://www.squidoo.com/cplusplus-behaviour-driven-development-tools#module124841511\r\nhttp://sourceforge.net/apps/mediawiki/turtle/index.php?title=Turtle\r\n\r\nFor those who want some other nice reading :\r\n\r\nhttp://gamesfromwithin.com/exploring-the-c-unit-testing-framework-jungle\r\n\r\nThe travis test is here, currently it is a total fake, but I just proposed the idea of a test driven development\r\nhttp://travis-ci.org/#!/soixantecircuits/openFrameworks/builds/854259 "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1063","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1063/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1063/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1063/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1063","id":3627067,"number":1063,"title":"Automatic installer + dependencies handler","user":{"login":"gabrielstuff","id":285033,"avatar_url":"https://secure.gravatar.com/avatar/390ea42c23c2c383f973abdafa24bb07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"390ea42c23c2c383f973abdafa24bb07","url":"https://api.github.com/users/gabrielstuff","html_url":"https://github.com/gabrielstuff","followers_url":"https://api.github.com/users/gabrielstuff/followers","following_url":"https://api.github.com/users/gabrielstuff/following","gists_url":"https://api.github.com/users/gabrielstuff/gists{/gist_id}","starred_url":"https://api.github.com/users/gabrielstuff/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gabrielstuff/subscriptions","organizations_url":"https://api.github.com/users/gabrielstuff/orgs","repos_url":"https://api.github.com/users/gabrielstuff/repos","events_url":"https://api.github.com/users/gabrielstuff/events{/privacy}","received_events_url":"https://api.github.com/users/gabrielstuff/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project-generator","name":"project-generator","color":"444444"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/automation","name":"automation","color":"5d5d5d"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":8,"created_at":"2012-03-13T10:44:57Z","updated_at":"2013-02-11T12:13:03Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hi !\r\n\r\nRecently, I've been in lot of languages, from C++ to ruby, passing by the colosus of javascript and the sea of php. Dropping by various and strange framework such as the Cinder, the jQuery, the Rails, the Processing, etc ...\r\n\r\n## the situation \r\n\r\nWhat I have noticed is that a strong architecture and a really ease use of add-ons makes a framework get stronger. For instance, if we take a look at Ruby, we see that the use of gems give him a powerfull advance over his friend php. \r\n\r\n### the Rubyist\r\n\r\nThis way of thinking is getting even better with the http://gembundler.com/ [Bundler](http://gembundler.com/) friend. The gems have dependencies and a simple GemFile help to easily install all dependencies for one project.\r\n\r\n### the Cinderist\r\n\r\nFor Cinder, we get the block, as for OSX, it quiet easy and fast. Drag and drop and play/code.\r\n\r\n### the jQueryist\r\n\r\nWell, it is not frequent to have jQuery plugins depending on other jQuery plugins, but there are several way to handle dependencies on jQuery and JS.\r\n\r\n### the nodist\r\n\r\nThis lead us to http://npmjs.org/, which is really nice with dependencies.\r\nFor instance, if you tried cloud9ide, you know that you just have to make sure you get the proper package.json :\r\n\r\n```\r\n{\r\n \"name\": \"node-example\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": {\r\n \"express\": \"2.2.0\"\r\n }\r\n}\r\n```\r\n\r\nThis file ensure that everything before running the server will be installed via npm.\r\n\r\n### the ofist\r\n\r\nRight now, we just have the addons.make file, which is nice but does not do any lifting for us. We have to verify that the ofx addons has been downloaded and is installed in the right folder.\r\n\r\n- Why not creating a script that will allow to manage dependencies compilation ? \r\nI have this wonderful ofxJSONsettings, but he depends on [JSONCPP](http://jsoncpp.sourceforge.net/) and on boost, so here we will have :\r\n\r\npackage.json file in the ofxJSONsettings folder :\r\n\r\n```\r\n{\r\n \"name\": \"ofxJSONsettings\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": [{\r\n \"jsoncpp\": \"0.6.0-rc2\"\r\n \"url\":\"http://jsoncpp.svn.sourceforge.net/svnroot/jsoncpp/trunk/\"\r\n \"protocol\":\"svn\"\r\n }\r\n ]\r\n}\r\n```\r\n\r\nHum, then, we have our little bash script :\r\n\r\n`xadd -addon ofxJSONsettings`\r\n\r\nand for a project, we have to ensure that the make file run `xadd -addon ofxJSONsettings` if it does not find ofXJSONsettings.\r\n\r\nThis could lead to simplify and easify the use of plugin ! Hey, I want the new [mistubaRenderer](https://github.com/satoruhiga/ofxMitsubaRenderer) let's give a try :\r\n\r\n```\r\n{\r\n \"name\": \"ofxMitsubaRenderer\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": [{\r\n \"mitsuba\": \"0.1\"\r\n \"url\":\"https://www.mitsuba-renderer.org/hg/mitsuba-bidir\"\r\n \"protocol\":\"hg\"\r\n }\r\n ]\r\n}\r\n```\r\n\r\nWell, this would be simplify if everybody use some same pattern, and respect some convention.\r\n\r\nSo what do you guys think about that ?\r\n\r\n\r\nThank you !\r\n\r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1062","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1062/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1062/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1062/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1062","id":3614231,"number":1062,"title":"regularize code for math addons","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":5,"created_at":"2012-03-12T16:33:06Z","updated_at":"2013-02-11T12:13:03Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"right now there is a lot of duplicated code in the vector math classes. for example, normalize() and getNormalized() have separate implementations. if we follow the pattern of always implementing things in self-modifying methods, then providing copy-returning methods as alternatives, this will reduce the amount of code and make it harder to cause bugs or behavioral discrepancies.\r\n\r\n- implementations of an algorithm should always be self-modifying\r\n- copy-returning versions should be implemented using a differently named method, internally making a copy and calling the self-modifying version on the copy.\r\n\r\ne.g. something like (note, this isn't how it's implemented right now):\r\n\r\n\tinline ofVec2f& ofVec2f::normalize() {\r\n\t\tfloat length = (float)sqrt(x*x + y*y);\r\n\t\tif( length > 0 ) {\r\n\t\t\tx /= length;\r\n\t\t\ty /= length;\r\n\t\t}\r\n\t\treturn *this;\r\n\t}\r\n\r\n\tinline ofVec2f ofVec2f::getNormalized() const {\r\n\t\tofVec2f result = *this;\r\n\t\treturn result.normalize();\r\n\t}\r\n\r\ntaken from this post https://github.com/openframeworks/openFrameworks/pull/1061#issuecomment-4455601"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1052","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1052/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1052/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1052/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1052","id":3596240,"number":1052,"title":"ofShader should show an error when using an invalid name","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2012-03-10T17:52:58Z","updated_at":"2012-08-23T06:42:30Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"if you have:\r\n\r\n uniform float dog;\r\n float cat;\r\n\r\nand:\r\n\r\n shader.setUniform1f(\"dog\", ofGetElapsedTimef());\r\n shader.setUniform1f(\"cat\", ofGetElapsedTimef());\r\n\r\nthere is no currently no error printed to the console, and \"cat\" is mysteriously unchanging while \"dog\" is fine."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1047","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1047/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1047/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1047/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1047","id":3587808,"number":1047,"title":"opening video files with system dialog in osx prevents them to play correctly","user":{"login":"hvfrancesco","id":614123,"avatar_url":"https://secure.gravatar.com/avatar/e02a8a3953de9d5d9ec1c7aa8d43eca4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e02a8a3953de9d5d9ec1c7aa8d43eca4","url":"https://api.github.com/users/hvfrancesco","html_url":"https://github.com/hvfrancesco","followers_url":"https://api.github.com/users/hvfrancesco/followers","following_url":"https://api.github.com/users/hvfrancesco/following","gists_url":"https://api.github.com/users/hvfrancesco/gists{/gist_id}","starred_url":"https://api.github.com/users/hvfrancesco/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hvfrancesco/subscriptions","organizations_url":"https://api.github.com/users/hvfrancesco/orgs","repos_url":"https://api.github.com/users/hvfrancesco/repos","events_url":"https://api.github.com/users/hvfrancesco/events{/privacy}","received_events_url":"https://api.github.com/users/hvfrancesco/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":8,"created_at":"2012-03-09T18:54:28Z","updated_at":"2012-03-12T15:31:12Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"whenever I try to open a file using system dialog from OF utils or ofxFileDIalogOSX, the video is loaded correctly but it get stuck and doesn't play at all. see:\r\nhttp://forum.openframeworks.cc/index.php/topic,5233.0.html\r\nhttp://forum.openframeworks.cc/index.php/topic,6515.0.html\r\n\r\nquite a big issue IMHO"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1039","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1039/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1039/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1039/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1039","id":3528378,"number":1039,"title":"make icons for OF apps","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":12,"created_at":"2012-03-06T17:56:58Z","updated_at":"2012-03-20T16:11:54Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"just a small one but would be great. \r\nmaybe even different icon for debug and release? "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1037","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1037/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1037/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1037/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1037","id":3510933,"number":1037,"title":"ofxGui, ofxButton should look visually different to toggle","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2012-03-05T18:06:03Z","updated_at":"2012-03-06T15:32:44Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"right now it is not clear from a visual perspective what is a button / trigger and what is a toggle. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1036","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1036/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1036/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1036/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1036","id":3509628,"number":1036,"title":"ofxGui -> ofGui - how/should we bring into core?","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":11,"created_at":"2012-03-05T16:56:26Z","updated_at":"2012-07-27T05:34:51Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"xml is one of the reasons this is currently an addon. \r\nthe original idea was to have something simple and minimal that could be in the core. \r\nalso something which could be built off of for larger gui addons ( hence ofParameter ) \r\n\r\nI see a couple of options going forward.\r\n\r\n1) swtich from xml to newline separated text files and move ofGui into core\r\nthis would be quite simple as ofParameter already has a name, value structure \r\n\r\n2) same as 1) but keep ofxGui as an addon - making it a bit simpler to add to a project \r\n2b) add ofParameter to core as it is more general purpose\r\n\r\n3) bring ofxXmlSettings into the core and bring ofGui into core.\r\n\r\n\r\nanyway I thought it would be good to get some discussion going about this.\r\nI'm especially interested in setting up ofParam and ofBaseGui in a way to make things modular and extendable. \r\n\r\nalso could be interesting to look at a way to represent a collection/group of ofParameters\r\nsome of this might be similar to some of the stuff @memo was doing with his plist style system. \r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1034","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1034/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1034/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1034/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1034","id":3495602,"number":1034,"title":"projectGenerator ignores shader .vert and .frag files","user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project-generator","name":"project-generator","color":"444444"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2012-03-04T11:19:04Z","updated_at":"2012-03-12T12:39:10Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"If it finds .vert, .frag (and .geom?) files in the data/ folder, the project generator should make a new folder, in the project file, next to (or inside) src called data/ and add the files to it. (data/ so that beginners can find the files in Finder)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1033","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1033/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1033/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1033/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1033","id":3495503,"number":1033,"title":"ofSetLogLevel(module, level) adds to map but dosen't remove","user":{"login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","html_url":"https://github.com/danomatika","followers_url":"https://api.github.com/users/danomatika/followers","following_url":"https://api.github.com/users/danomatika/following","gists_url":"https://api.github.com/users/danomatika/gists{/gist_id}","starred_url":"https://api.github.com/users/danomatika/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danomatika/subscriptions","organizations_url":"https://api.github.com/users/danomatika/orgs","repos_url":"https://api.github.com/users/danomatika/repos","events_url":"https://api.github.com/users/danomatika/events{/privacy}","received_events_url":"https://api.github.com/users/danomatika/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":11,"created_at":"2012-03-04T10:54:12Z","updated_at":"2012-03-06T15:06:00Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I talked to Arturo about this, but I want to make sure it's known. When you call ofLogSetLogLevel with a module string, that string is added to a map used to check the module's log level ... but right now that string is never removed.\r\n\r\nIf someone creates a large amount module names the map could grow arbitrarily large over time. The thought so far is that no one would make enough module names for it to be a problem.\r\n\r\nFor instance, using the [proposed ofThread rewrite](https://github.com/openframeworks/openFrameworks/pull/1031), each thread creates a new module name when it sets itself to verbose and, in the case of spawning lots of verbose worker threads, the map will grow.\r\n\r\nMy proposed solution would be to remove the module name from the map when the level for that module is set back to OF_LOG_NOTICE and/or to the current log level."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1022","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1022/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1022/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1022/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1022","id":3476540,"number":1022,"title":"Optimisation consistency","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":12,"created_at":"2012-03-02T13:25:15Z","updated_at":"2012-03-30T16:34:06Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Continuation of http://forum.openframeworks.cc/index.php/topic,9095.msg42378.html#new\r\n\r\nNOTE: Things may have changed as the projects I'm using are all created using the older creation tools.\r\nCan somebody up to date please check?\r\n\r\nCurrently XCode's default project setting is /O2 for debug projects\r\nwhilst Visual Studio's is /O0\r\n\r\n/O0 generally makes the most sense for debug mode as it allows for effective program flow and variable tracking (because with /O2, lines of code and variables are commonly optimised away).\r\n\r\nIf we are worried that this will leave default users in a default 'slower state' then perhaps we could make release the default? Then people could be aware that they are selecting debug when they want to actually do some debugging?\r\nBut this may have other issues (such as some libraries might not perform as many checks as otherwise?)\r\n\r\nit might be worth making users more aware of the 2 options anyway, and then start using them consistently"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1019","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1019/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1019/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1019/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1019","id":3462226,"number":1019,"title":"ofFbo needs consideration as far as MRT + MSAA","user":{"login":"kpasko","id":167271,"avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","url":"https://api.github.com/users/kpasko","html_url":"https://github.com/kpasko","followers_url":"https://api.github.com/users/kpasko/followers","following_url":"https://api.github.com/users/kpasko/following","gists_url":"https://api.github.com/users/kpasko/gists{/gist_id}","starred_url":"https://api.github.com/users/kpasko/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kpasko/subscriptions","organizations_url":"https://api.github.com/users/kpasko/orgs","repos_url":"https://api.github.com/users/kpasko/repos","events_url":"https://api.github.com/users/kpasko/events{/privacy}","received_events_url":"https://api.github.com/users/kpasko/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-03-01T19:42:09Z","updated_at":"2012-03-01T19:42:09Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"currently if MSAA is enabled, COLOR_ATTACHMENT[ 0 -> nSamples]_EXT are bound for MS blitting, which could overwrite your texture color attachments without notifying you [ i.e. setSamples(4); setNumTextures(4) ]. There may be some solution where numSamples*numTextures = maxAttachments, allowing for multisampled internal textures, but at the very least we should warn/notify that samples and textures won't play so nicely together, or try to allocate samples/textures in the remaining attachments and notify on overflow."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1007","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1007/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1007/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1007/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1007","id":3438233,"number":1007,"title":"bug #defines in ofConstants conflict with other libraries","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":10,"created_at":"2012-02-29T15:31:18Z","updated_at":"2012-03-01T04:33:36Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"there's a block in ofConstants which reads like:\r\n\r\n```c++\r\n#ifndef PI\r\n\t#define PI 3.14159265358979323846\r\n#endif\r\n\r\n#ifndef TWO_PI\r\n\t#define TWO_PI 6.28318530717958647693\r\n#endif\r\n\r\n#ifndef M_TWO_PI\r\n\t#define M_TWO_PI 6.28318530717958647693\r\n#endif\r\n\r\n#ifndef FOUR_PI\r\n\t#define FOUR_PI 12.56637061435917295385\r\n#endif\r\n\r\n#ifndef HALF_PI\r\n\t#define HALF_PI 1.57079632679489661923\r\n#endif\r\n\r\n#ifndef DEG_TO_RAD\r\n\t#define DEG_TO_RAD (PI/180.0)\r\n#endif\r\n\r\n#ifndef RAD_TO_DEG\r\n\t#define RAD_TO_DEG (180.0/PI)\r\n#endif\r\n\r\n#ifndef MIN\r\n\t#define MIN(x,y) (((x) < (y)) ? (x) : (y))\r\n#endif\r\n\r\n#ifndef MAX\r\n\t#define MAX(x,y) (((x) > (y)) ? (x) : (y))\r\n#endif\r\n\r\n#ifndef CLAMP\r\n\t#define CLAMP(val,min,max) (MAX(MIN(val,max),min))\r\n#endif\r\n\r\n#ifndef ABS\r\n\t#define ABS(x) (((x) < 0) ? -(x) : (x))\r\n#endif\r\n```\r\n\r\nthe problem is i've got this in another header file:\r\n\r\n```c++\r\n// macro-like inline functions\r\n\r\ntemplate\r\ninline T SQR(const T a) {return a*a;}\r\n\r\ntemplate\r\ninline const T &MAX(const T &a, const T &b)\r\n {return b > a ? (b) : (a);}\r\n\r\ninline float MAX(const double &a, const float &b)\r\n {return b > a ? (b) : float(a);}\r\n\r\ninline float MAX(const float &a, const double &b)\r\n {return b > a ? float(b) : (a);}\r\n\r\ntemplate\r\ninline const T &MIN(const T &a, const T &b)\r\n {return b < a ? (b) : (a);}\r\n\r\ninline float MIN(const double &a, const float &b)\r\n {return b < a ? (b) : float(a);}\r\n\r\ninline float MIN(const float &a, const double &b)\r\n {return b < a ? float(b) : (a);}\r\n\r\ntemplate\r\ninline T SIGN(const T &a, const T &b)\r\n\t{return b >= 0 ? (a >= 0 ? a : -a) : (a >= 0 ? -a : a);}\r\n\r\ninline float SIGN(const float &a, const double &b)\r\n\t{return b >= 0 ? (a >= 0 ? a : -a) : (a >= 0 ? -a : a);}\r\n\r\ninline float SIGN(const double &a, const float &b)\r\n\t{return (float)(b >= 0 ? (a >= 0 ? a : -a) : (a >= 0 ? -a : a));}\r\n```\r\n\r\nAnd ofConstants is included in almost every oF file\r\n\r\ni'd suggest moving to inline functions and presume that compiler optimisations makes these 2 options equivalent in terms of performance, but that inline wins out for compatability"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1005","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1005/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1005/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1005/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1005","id":3432042,"number":1005,"title":"feature ofRandom(ofVec3f) ","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":12,"created_at":"2012-02-29T06:32:03Z","updated_at":"2012-03-01T13:02:37Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Propose the following functions:\r\n\r\n```c++\r\nofVec2f ofRandom(const ofVec2f&);\r\nofVec3f ofRandom(const ofVec3f&);\r\nofVec2f ofRandom(const ofVec2f& range1, const ofVec2f& range2);\r\nofVec3f ofRandom(const ofVec3f& range1, const ofVec3f& range2);\r\n```\r\n\r\nalso lots of other candidates for this, e.g. `ofClamp`, `ofMap`, etc\r\nsome clever templating possible?\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1001","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1001/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1001/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1001/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1001","id":3401755,"number":1001,"title":"OF app sound out not available from Jack","user":{"login":"enrike","id":710785,"avatar_url":"https://secure.gravatar.com/avatar/719e9e7ca6d6d88f3b8da82832cc94c7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"719e9e7ca6d6d88f3b8da82832cc94c7","url":"https://api.github.com/users/enrike","html_url":"https://github.com/enrike","followers_url":"https://api.github.com/users/enrike/followers","following_url":"https://api.github.com/users/enrike/following","gists_url":"https://api.github.com/users/enrike/gists{/gist_id}","starred_url":"https://api.github.com/users/enrike/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/enrike/subscriptions","organizations_url":"https://api.github.com/users/enrike/orgs","repos_url":"https://api.github.com/users/enrike/repos","events_url":"https://api.github.com/users/enrike/events{/privacy}","received_events_url":"https://api.github.com/users/enrike/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"state":"open","assignee":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"milestone":null,"comments":2,"created_at":"2012-02-27T14:59:34Z","updated_at":"2012-05-18T08:47:08Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I have a simple app that plays video files. I try to route (under windows) its output using Jack and Vitual Audio Cable but none can access it. I am just using the basic functionality of ofVideoPlayer, this is the class that deals with the video playing\r\n\r\n\r\n\t#include \"oscVPlayer.h\"\r\n\t#include \"ofMain.h\"\r\n\r\n\r\n\r\n\toscVPlayer::oscVPlayer()\r\n\t{\r\n\t\t\treset();\r\n\t}\r\n\r\n\tvoid oscVPlayer::reset()\r\n\t{ //defaults to fullscreen\r\n\t\t\tw = NULL;\r\n\t\t\th = NULL;\r\n\t\t\tx = 0;\r\n\t\t\ty = 0;\r\n\t\t\tdonereported = false;\r\n\t\t\tloopflag = OF_LOOP_NONE;\r\n\t\t\t\r\n\t\t\tcol.r = 0;\r\n\t\t\tcol.g = 0;\r\n\t\t\tcol.b = 0;\r\n\t\t\tcol.a = 255;\r\n\r\n\t\t\tif (isLoaded())\r\n\t\t{\r\n\t\t\t\t\tsetFrame(0);\r\n\t\t\t\t\tsetUseTexture(1);\r\n\t\t\t\t\tsetPaused(0);\r\n\t\t\t\t\tsetLoopState(OF_LOOP_NORMAL);\r\n\t\t\t\t\tsetSpeed(1);\r\n\t\t\t\t\tsetVolume(255);\r\n\t\t\t\t\tstop();\r\n\t\t}\r\n\t}\r\n\r\n\r\n\tvoid oscVPlayer::setUpVideo(string movie)\r\n\t{\r\n\t\t\tif (movie != \"none\")\r\n\t\t\t{\r\n\t\t\t\t\tif ( loadMovie(movie) )\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\t\tprintf(\"movie loaded\\n\");\r\n\t\t\t\t\t\t\tofVideoPlayer::update();\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\t\tprintf(\"CANNOT load movie\\n\");\r\n\t\t\t\t\t}\r\n\t\t\t}\r\n\t\t\telse\r\n\t\t\t{\r\n\t\t\t\t\tprintf(\"movie parameter is none, cannot load it\\n\");\r\n\t\t\t}\r\n\t}\r\n\r\n\r\n\r\n\r\n\tvoid oscVPlayer::setLoop()\r\n\t{\r\n\t\t\tsetLoopState(loopflag); // go back to your state. otherwise play resets it to loop ON\r\n\t}\r\n\r\n\r\n\r\n\r\n\tvoid oscVPlayer::resetSize()\r\n\t{\r\n\t\t\tw = NULL;\r\n\t\t\th = NULL;\r\n\t}\r\n\r\n\r\n\tvoid oscVPlayer::draw()\r\n\t{\r\n\t\tif (isLoaded())\r\n\t\t{\r\n\t\t\t if (col.a < 255) ofEnableAlphaBlending();\r\n\t\t\t\tofSetColor(col.r,col.g,col.b, col.a);\r\n\t\t\t\tofVideoPlayer::update();\r\n\t\t\t\tif (w==NULL && h==NULL)\r\n\t\t\t\t{\r\n\t\t\t\t\t\tofVideoPlayer::draw(x, y);\r\n\t\t\t\t}\r\n\t\t\t\telse\r\n\t\t\t\t{\r\n\t\t\t\t\t\t\tofVideoPlayer::draw(x, y, w, h);\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (col.a < 255) ofDisableAlphaBlending(); \r\n\t\t}\r\n\t}\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/987","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/987/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/987/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/987/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/987","id":3387163,"number":987,"title":"GL_CULL_FACE breaks ofDrawBitmapString()","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-02-25T20:25:00Z","updated_at":"2012-02-25T20:25:00Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"i think this is because ofDrawBitmapString draws the quads in the wrong orientation. but i'm guessing it works in FBOs... so if we switch the order it will stop working in FBOs."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/985","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/985/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/985/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/985/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/985","id":3386914,"number":985,"title":"Make logging messages more informative","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":33,"created_at":"2012-02-25T19:41:58Z","updated_at":"2013-02-11T12:16:29Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Some logging messages don't really tell where they were triggered. Someone needs to go through them and add information as to what module triggered the message. \r\n@danomatika has already volunteered to do this some time."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/984","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/984/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/984/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/984/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/984","id":3386889,"number":984,"title":"Replace printf() occurences by ofLog() in the core addons","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"}],"state":"open","assignee":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"milestone":null,"comments":5,"created_at":"2012-02-25T19:36:51Z","updated_at":"2013-02-22T17:59:36Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"There's a lot of logging printfs in the core addons. These should be replaced by appropriate ofLog calls."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/976","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/976/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/976/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/976/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/976","id":3382990,"number":976,"title":"ofVec2f::average has unexpected/clumsy behaviour","user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2012-02-25T03:45:02Z","updated_at":"2012-02-27T13:35:34Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"`ofVec2f` has a function called `average` which takes an array of `ofVec2f` and calculates the centroid. it is not static, rather it overwrites its own `x` and `y` with the average. \r\n\r\nthis is a little weird. `average` should be static, or at least be *returning* the average rather than assigning to self."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/955","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/955/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/955/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/955/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/955","id":3367910,"number":955,"title":"ofBackgroundGradient needs to be billboarded","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2012-02-24T04:31:01Z","updated_at":"2012-12-28T11:32:24Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"right now if you try and scale/rotate/etc before calling ofBackgroundGradient, it will fail.\r\n\r\npeople generally call ofBackground at the top of draw() so it shouldn't be a huge issue... but it does make it a little 'fragile'."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/933","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/933/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/933/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/933/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/933","id":3357855,"number":933,"title":"Problem with moviePlayerExample under linux64","user":{"login":"agrosjea","id":1466085,"avatar_url":"https://secure.gravatar.com/avatar/e52c167621119d58d03c586bb053a633?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e52c167621119d58d03c586bb053a633","url":"https://api.github.com/users/agrosjea","html_url":"https://github.com/agrosjea","followers_url":"https://api.github.com/users/agrosjea/followers","following_url":"https://api.github.com/users/agrosjea/following","gists_url":"https://api.github.com/users/agrosjea/gists{/gist_id}","starred_url":"https://api.github.com/users/agrosjea/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/agrosjea/subscriptions","organizations_url":"https://api.github.com/users/agrosjea/orgs","repos_url":"https://api.github.com/users/agrosjea/repos","events_url":"https://api.github.com/users/agrosjea/events{/privacy}","received_events_url":"https://api.github.com/users/agrosjea/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2012-02-23T15:46:06Z","updated_at":"2012-02-23T19:12:08Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hello, I get a weird error trying to compile the movieplayerexample under linux64 :\r\n\r\n> `.text._ZN11ofBaseVideoD2Ev' referenced in section `.text._ZN11ofBaseVideoD1Ev[non-virtual thunk to ofBaseVideo::~ofBaseVideo()]' of ../../../libs/openFrameworksCompiled/lib/linux64/libopenFrameworks.a(ofBaseTypes.o): defined in discarded section `.text._ZN11ofBaseVideoD2Ev[_ZN11ofBaseVideoD5Ev]' of ../../../libs/openFrameworksCompiled/lib/linux64/libopenFrameworks.a(ofBaseTypes.o)\r\n\r\nMy version of OF is 007, it used to work under 0062...\r\n\r\nWhat should I do ?\r\n\r\nThanks"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/931","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/931/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/931/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/931/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/931","id":3351646,"number":931,"title":"ofCamera is not aware of ofOrientation","user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/critical","name":"critical","color":"ff0000"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":30,"created_at":"2012-02-23T05:13:24Z","updated_at":"2013-02-11T12:16:29Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":""},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/930","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/930/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/930/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/930/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/930","id":3351643,"number":930,"title":"ofSetupPerspective ofOrientation","user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-02-23T05:12:47Z","updated_at":"2012-02-23T05:12:47Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"do we need the ofOrientation parameter in ofSetupPerspective?\r\n\r\nit applies the rotation but if ofSetOrientation hasn't been called before passing the same orientation the results are not the expected.\r\n\r\nto test it:\r\n\r\nofSetOrientation(OF_ORIENTATION_90_LEFT);\r\nofSetPerspective(ofGetWidth(), ofGetHeight(),OF_ORIENTATION_90_LEFT)\r\n\r\nworks as expected but calling only \r\n\r\nofSetPerspective(ofGetWidth(), ofGetHeight(),OF_ORIENTATION_90_LEFT)\r\n\r\napplies a weird rotation cause the values of ofGetWidth(), ofGetHeight() are still the default ones\r\n\r\nis there any case where it's useful to call setupPerspective with a different orientation that the window has?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/929","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/929/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/929/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/929/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/929","id":3351374,"number":929,"title":"ofGetLogLevel should also accept modules","user":{"login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","html_url":"https://github.com/danomatika","followers_url":"https://api.github.com/users/danomatika/followers","following_url":"https://api.github.com/users/danomatika/following","gists_url":"https://api.github.com/users/danomatika/gists{/gist_id}","starred_url":"https://api.github.com/users/danomatika/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danomatika/subscriptions","organizations_url":"https://api.github.com/users/danomatika/orgs","repos_url":"https://api.github.com/users/danomatika/repos","events_url":"https://api.github.com/users/danomatika/events{/privacy}","received_events_url":"https://api.github.com/users/danomatika/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-02-23T04:19:48Z","updated_at":"2012-02-23T04:19:48Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Currently ofGetLogLevel returns the global log level aka for the \"OF\" module. It would be nice to be able to get the log level for user modules via:\r\n\r\n ofLogLevel level = ofGetLogLevel(\"myLogModule\");\r\n\r\nIt would as simple as adding the module as a string variable with a default of \"OF\".\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/928","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/928/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/928/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/928/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/928","id":3351170,"number":928,"title":"no ofGetBackground()","user":{"login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","html_url":"https://github.com/danomatika","followers_url":"https://api.github.com/users/danomatika/followers","following_url":"https://api.github.com/users/danomatika/following","gists_url":"https://api.github.com/users/danomatika/gists{/gist_id}","starred_url":"https://api.github.com/users/danomatika/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danomatika/subscriptions","organizations_url":"https://api.github.com/users/danomatika/orgs","repos_url":"https://api.github.com/users/danomatika/repos","events_url":"https://api.github.com/users/danomatika/events{/privacy}","received_events_url":"https://api.github.com/users/danomatika/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-02-23T03:46:32Z","updated_at":"2012-02-23T03:46:32Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Currently there is a ofBgColorPtr(), but maybe it's nice to have a ofGetBackground() that returns an ofColor object or a reference to one."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/926","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/926/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/926/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/926/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/926","id":3341020,"number":926,"title":"ofGetViewportWidth/Height returns 0 at startup","user":{"login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","html_url":"https://github.com/danomatika","followers_url":"https://api.github.com/users/danomatika/followers","following_url":"https://api.github.com/users/danomatika/following","gists_url":"https://api.github.com/users/danomatika/gists{/gist_id}","starred_url":"https://api.github.com/users/danomatika/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danomatika/subscriptions","organizations_url":"https://api.github.com/users/danomatika/orgs","repos_url":"https://api.github.com/users/danomatika/repos","events_url":"https://api.github.com/users/danomatika/events{/privacy}","received_events_url":"https://api.github.com/users/danomatika/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-02-22T19:12:56Z","updated_at":"2012-02-22T19:12:56Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofGetViewportWidth/Height returns 0 is called in an object destructor, while ofGetWidth/Height do not. Could the ofGetViewport size be set to the ofGetWidth/Height size instead of 0 be default?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/925","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/925/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/925/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/925/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/925","id":3324501,"number":925,"title":"ofImage has type as int, public vars, & missing getBPP, etc","user":{"login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","html_url":"https://github.com/danomatika","followers_url":"https://api.github.com/users/danomatika/followers","following_url":"https://api.github.com/users/danomatika/following","gists_url":"https://api.github.com/users/danomatika/gists{/gist_id}","starred_url":"https://api.github.com/users/danomatika/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danomatika/subscriptions","organizations_url":"https://api.github.com/users/danomatika/orgs","repos_url":"https://api.github.com/users/danomatika/repos","events_url":"https://api.github.com/users/danomatika/events{/privacy}","received_events_url":"https://api.github.com/users/danomatika/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-02-22T00:28:08Z","updated_at":"2012-02-22T00:28:08Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I noticed a few things when working with ofImage:\r\n\r\n* ofImage has a type variable for the image type but this is an int, as opposed to the ofImageType enum, so it's annoying to force convert ...\r\n* the width, height, & bpp variables are public, they should be protected with getters/setters\r\n* there isn't a getBytesPerPixel, you have to get the pixel reference then call getBytesPerPixel ..."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/920","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/920/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/920/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/920/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/920","id":3248309,"number":920,"title":"Transform stack","user":{"login":"AugusteBonnin","id":1442658,"avatar_url":"https://secure.gravatar.com/avatar/cbf7aa7c655d3652170984c9aa497a4c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"cbf7aa7c655d3652170984c9aa497a4c","url":"https://api.github.com/users/AugusteBonnin","html_url":"https://github.com/AugusteBonnin","followers_url":"https://api.github.com/users/AugusteBonnin/followers","following_url":"https://api.github.com/users/AugusteBonnin/following","gists_url":"https://api.github.com/users/AugusteBonnin/gists{/gist_id}","starred_url":"https://api.github.com/users/AugusteBonnin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/AugusteBonnin/subscriptions","organizations_url":"https://api.github.com/users/AugusteBonnin/orgs","repos_url":"https://api.github.com/users/AugusteBonnin/repos","events_url":"https://api.github.com/users/AugusteBonnin/events{/privacy}","received_events_url":"https://api.github.com/users/AugusteBonnin/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-02-16T09:39:46Z","updated_at":"2012-02-16T09:39:46Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"What about having our own transform stack , in order to:\r\n-avoid to recompute globalTransformMatrix in each ofNode\r\n-could use it when rendering with OpenGL ES 2.0 shaders , which do not support predefined matrix values as world (modelview), worldProjection , or world inverseTranspose (for normals)"}] + +https +GET +api.github.com +None +/repositories/345337/issues?page=4&per_page=100 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4961'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '283646'), ('server', 'GitHub.com'), ('last-modified', 'Mon, 11 Mar 2013 10:11:56 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"9d1c9cd0db105699c994ba8b16296c1b"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 11 Mar 2013 10:13:16 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/919","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/919/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/919/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/919/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/919","id":3248230,"number":919,"title":"Error in ofNode::transformGL","user":{"login":"AugusteBonnin","id":1442658,"avatar_url":"https://secure.gravatar.com/avatar/cbf7aa7c655d3652170984c9aa497a4c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"cbf7aa7c655d3652170984c9aa497a4c","url":"https://api.github.com/users/AugusteBonnin","html_url":"https://github.com/AugusteBonnin","followers_url":"https://api.github.com/users/AugusteBonnin/followers","following_url":"https://api.github.com/users/AugusteBonnin/following","gists_url":"https://api.github.com/users/AugusteBonnin/gists{/gist_id}","starred_url":"https://api.github.com/users/AugusteBonnin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/AugusteBonnin/subscriptions","organizations_url":"https://api.github.com/users/AugusteBonnin/orgs","repos_url":"https://api.github.com/users/AugusteBonnin/repos","events_url":"https://api.github.com/users/AugusteBonnin/events{/privacy}","received_events_url":"https://api.github.com/users/AugusteBonnin/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-02-16T09:31:24Z","updated_at":"2012-02-16T09:31:24Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"There is an easy-to-correct error in ofNode::transformGL:\r\nIt should call loadMatrix with globalTransformMatrix as parameter (with a void restoreGL), or pushMatrix then multMatrix with localTransformMatrix (with a restoreGL that pops the previously pushed matrix),\r\nNOT push then mult with global. The bug appears as soon as you have got more than one level of depth in your node tree. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/916","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/916/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/916/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/916/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/916","id":3214174,"number":916,"title":"ofGetMouseX() and ofGetMouseY() should return float","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2012-02-14T05:17:47Z","updated_at":"2012-03-12T14:55:20Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"to match ofGetWidth(), ofGetHeight()\r\n\r\ni.e. for ofGetMouseX() / ofGetWidth()"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/914","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/914/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/914/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/914/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/914","id":3189189,"number":914,"title":"Add ofGetDataPathRoot","user":{"login":"pierrep","id":392160,"avatar_url":"https://secure.gravatar.com/avatar/be11c9de8242e7aef0446eceaa289e01?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"be11c9de8242e7aef0446eceaa289e01","url":"https://api.github.com/users/pierrep","html_url":"https://github.com/pierrep","followers_url":"https://api.github.com/users/pierrep/followers","following_url":"https://api.github.com/users/pierrep/following","gists_url":"https://api.github.com/users/pierrep/gists{/gist_id}","starred_url":"https://api.github.com/users/pierrep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pierrep/subscriptions","organizations_url":"https://api.github.com/users/pierrep/orgs","repos_url":"https://api.github.com/users/pierrep/repos","events_url":"https://api.github.com/users/pierrep/events{/privacy}","received_events_url":"https://api.github.com/users/pierrep/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-02-12T04:41:26Z","updated_at":"2012-02-12T04:41:26Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"We have ofSetDataPathRoot() .... it makes sense to have a Getter as well. Basically I wanted the absolute path to the root data folder.\r\n\r\nI managed to fake this by calling ofToDataPath(\".\",true) but this seems a little counter-intuitive."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/909","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/909/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/909/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/909/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/909","id":3166745,"number":909,"title":"shapes with texCoords","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2012-02-10T01:42:42Z","updated_at":"2012-03-12T14:56:56Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"it would be amazing if ofBeginShape()/ofEndShape() and ofPath supported tex coords (maybe ofTexCoord() and addTexCoord()).\r\n\r\nthis would allow for drawing arbitrary subsections of an image, or for creating an ofMesh that is texture mapped by an image.\r\n\r\nprocessing handles this with extra arguments to vertex() http://processing.org/reference/texture_.html"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/902","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/902/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/902/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/902/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/902","id":3152323,"number":902,"title":"Xcode templates should be fixed or removed","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2012-02-09T04:30:13Z","updated_at":"2012-02-09T08:16:47Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"a student just showed me how you can use the xcode templates for pocode to create a new project wherever you want on the disk. i know we used to have xcode templates for this, but i just tried them and it seems to be hilariously broken.\r\n\r\ni'm not sure if the new project creator stuff covers this idea or not, but it would be great to have a similar ability with OF somehow."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/901","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/901/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/901/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/901/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/901","id":3148441,"number":901,"title":"easier filled ofPolyline, or easy ofPolyline->ofPath conversion","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2012-02-08T21:50:23Z","updated_at":"2012-10-19T05:29:16Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"to draw a filled ofPolyline right now, you need to use beginshape/endshape. but i think a way of adding ofPolylines to an ofPath would be really good -- even a conversion from ofPolyline to ofPath might make sense. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/896","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/896/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/896/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/896/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/896","id":3099567,"number":896,"title":"Makefile and ofxaddons.com guide don't agree regarding file structure","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"state":"open","assignee":null,"milestone":null,"comments":6,"created_at":"2012-02-05T15:20:42Z","updated_at":"2012-02-05T17:11:59Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"This concerns libraries included in addons in source form. According to [this issue](https://github.com/chrisoshea/ofxMidi/issues/8) reported by @danomatika, the makefile can only compile libraries' source code if they are in an addon's `/src` folder. This is in contradiction with @obviousjim's guide to addons' folder structure at http://ofxaddons.com/howto."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/880","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/880/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/880/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/880/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/880","id":2967700,"number":880,"title":"test ofMesh::load/save rigorously","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":7,"created_at":"2012-01-25T16:55:09Z","updated_at":"2013-02-11T12:13:02Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"it needs to handle all these things:\r\n\r\n- meshes vs point clouds\r\n- different types of meshes (depending on the triangles)\r\n- indexed vs non-indexed geometry\r\n- colors, normals, texcoords\r\n- ascii vs binary\r\n- loading from externally created/defined ply files"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/878","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/878/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/878/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/878/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/878","id":2952993,"number":878,"title":"add a switch to the iphone soundstream to support ambient","user":{"login":"jonbro","id":1597,"avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"893ec14dc008e3774afe5841115920d6","url":"https://api.github.com/users/jonbro","html_url":"https://github.com/jonbro","followers_url":"https://api.github.com/users/jonbro/followers","following_url":"https://api.github.com/users/jonbro/following","gists_url":"https://api.github.com/users/jonbro/gists{/gist_id}","starred_url":"https://api.github.com/users/jonbro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jonbro/subscriptions","organizations_url":"https://api.github.com/users/jonbro/orgs","repos_url":"https://api.github.com/users/jonbro/repos","events_url":"https://api.github.com/users/jonbro/events{/privacy}","received_events_url":"https://api.github.com/users/jonbro/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"state":"open","assignee":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"milestone":null,"comments":0,"created_at":"2012-01-24T16:41:17Z","updated_at":"2012-03-03T19:40:34Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"If you set the proper switches on the iphone sound stream you can get it to play over whatever is playing on the users ipod without muting it. There are a bunch of switches for this behavior detailed in kAudioSessionProperty_Mode.\r\n\r\nThese would need to be set before initing the audio session. The other issue is that there are like 15-20 flags you can set. Maybe just a slightly higher level setting on the stream so that these behaivors could be set in the users testapp.mm"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/872","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/872/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/872/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/872/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/872","id":2875276,"number":872,"title":"saveImage crashes in iOS Simulator","user":{"login":"khlrqa","id":53301,"avatar_url":"https://secure.gravatar.com/avatar/dfa7e4582a04e784d50c750ae51d894f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"dfa7e4582a04e784d50c750ae51d894f","url":"https://api.github.com/users/khlrqa","html_url":"https://github.com/khlrqa","followers_url":"https://api.github.com/users/khlrqa/followers","following_url":"https://api.github.com/users/khlrqa/following","gists_url":"https://api.github.com/users/khlrqa/gists{/gist_id}","starred_url":"https://api.github.com/users/khlrqa/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/khlrqa/subscriptions","organizations_url":"https://api.github.com/users/khlrqa/orgs","repos_url":"https://api.github.com/users/khlrqa/repos","events_url":"https://api.github.com/users/khlrqa/events{/privacy}","received_events_url":"https://api.github.com/users/khlrqa/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"milestone":null,"comments":1,"created_at":"2012-01-17T21:51:17Z","updated_at":"2012-03-10T05:09:49Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":" testImg.saveImage(ofxiPhoneGetDocumentsDirectory() + \"test.png\");\r\ncrashes the App and results in this error:\r\n\r\nProgram received signal: \"SIGARBT\".\r\n\r\nerror thrown in this line:\r\n\r\n FreeImage_Save(fif, bmp, fileName.c_str());"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/866","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/866/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/866/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/866/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/866","id":2756440,"number":866,"title":"Multicast & UDP: Local IP required when dealing with multiple network interfaces","user":{"login":"urshofer","id":116976,"avatar_url":"https://secure.gravatar.com/avatar/0424af1c917883090f0edddf55a8f21b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"0424af1c917883090f0edddf55a8f21b","url":"https://api.github.com/users/urshofer","html_url":"https://github.com/urshofer","followers_url":"https://api.github.com/users/urshofer/followers","following_url":"https://api.github.com/users/urshofer/following","gists_url":"https://api.github.com/users/urshofer/gists{/gist_id}","starred_url":"https://api.github.com/users/urshofer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/urshofer/subscriptions","organizations_url":"https://api.github.com/users/urshofer/orgs","repos_url":"https://api.github.com/users/urshofer/repos","events_url":"https://api.github.com/users/urshofer/events{/privacy}","received_events_url":"https://api.github.com/users/urshofer/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-01-07T15:38:14Z","updated_at":"2012-01-07T15:38:14Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hi -\r\n\r\nwhen it comes down to multicast communication over udp, it's is important that the correct ip address of the local interface is set. Most computers nowadays have several interfaces (wired and wireless). Whereas ofxUDPManager::BindMcast uses INADDR_ANY as the local address, this might be wrong if you are not using the default interface. In my case, I connect the computers in a local wlan. The wlan device is not the primary device on my machine.\r\n\r\nTherefore I rewrote the BindMcast function adding a third argument pLocal, the local Ip address of the network interface.\r\n\r\n```c++\r\nbool ofxUDPManager::BindMcast(char *pMcast, unsigned short usPort, char *pLocal)\r\n```\r\nchanging the line: \r\n\r\n```c++\r\nmreq.imr_interface.s_addr = pLocal == \"\" ? INADDR_ANY: inet_addr(pLocal);\r\n```\r\n\r\nwhich makes a different header file as well:\r\n\r\n```c++\r\nbool BindMcast(char *pMcast, unsigned short usPort, char *pLocal = \"\");\r\n```\r\n\r\nAs you can see, the pLocal Adress is optional, if omitted, INADDR_ANY is used (backwards compatibility).\r\n\r\n\r\nNOTE:\r\n\r\nI've added the function:\r\n\r\n```c++\r\nchar* GetInterfaceAddr(const char* interface); //returns the IP of a specified interface\r\n```\r\n\r\nto the ofxUDPManager as well. This function returns the IP adress of an interface (e.g. en1 on a mac for the airport device). This is useful in dhcp networks, where your own address always changes. The function itself looks like:\r\n\r\n```c++\r\n//--------------------------------------------------------------------------------\r\nchar* ofxUDPManager::GetInterfaceAddr(const char* interface)\r\n{\r\n\tint fd;\r\n\tstruct ifreq ifr;\r\n\tfd = socket(AF_INET, SOCK_DGRAM, 0);\r\n\tifr.ifr_addr.sa_family = AF_INET;\r\n\tstrncpy(ifr.ifr_name, interface, IFNAMSIZ-1);\r\n\tioctl(fd, SIOCGIFADDR, &ifr);\r\n\tclose(fd);\r\n\treturn(inet_ntoa(((struct sockaddr_in *)&ifr.ifr_addr)->sin_addr));\r\n}\r\n```\r\n\r\nPlease not that for this function, additional headers have to be included in ofxUDPManager.h:\r\n\r\n```c++\r\n#include \r\n```\r\n\r\nIf you consider the changes useful, theres a copy of the two files downloadable here:\r\nhttp://dl.dropbox.com/u/394122/ofxUDPManager_uh_07012012.zip\r\n\r\nregards,\r\nUrs Hofer"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/861","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/861/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/861/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/861/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/861","id":2700549,"number":861,"title":"ofxSynth semantic issue","user":{"login":"viniciolindo","id":1298679,"avatar_url":"https://secure.gravatar.com/avatar/7aa1a7f9bf0b838c0d99886c3682ac5d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"7aa1a7f9bf0b838c0d99886c3682ac5d","url":"https://api.github.com/users/viniciolindo","html_url":"https://github.com/viniciolindo","followers_url":"https://api.github.com/users/viniciolindo/followers","following_url":"https://api.github.com/users/viniciolindo/following","gists_url":"https://api.github.com/users/viniciolindo/gists{/gist_id}","starred_url":"https://api.github.com/users/viniciolindo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/viniciolindo/subscriptions","organizations_url":"https://api.github.com/users/viniciolindo/orgs","repos_url":"https://api.github.com/users/viniciolindo/repos","events_url":"https://api.github.com/users/viniciolindo/events{/privacy}","received_events_url":"https://api.github.com/users/viniciolindo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"state":"open","assignee":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"milestone":null,"comments":10,"created_at":"2012-01-02T11:14:47Z","updated_at":"2012-03-03T19:38:16Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofxsynth doesn't wont to compile because this line:\r\nsource->audioOut( working, numFrames, numChannels, tickCount ) in ofxSoundUnit.cpp is wrong.\r\nthe canddates are:\r\n\r\nvirtual void audioOut( float * output, int bufferSize, int nChannels, int deviceID, long unsigned long tickCount )\r\nvirtual void audioOut( float * output, int bufferSize, int nChannels)\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/856","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/856/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/856/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/856/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/856","id":2685556,"number":856,"title":"we need ofSoundBuffer, like ofPixels","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"state":"open","assignee":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"milestone":null,"comments":2,"created_at":"2011-12-30T02:33:19Z","updated_at":"2012-06-13T11:54:06Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofPixels has getPixels(), but OF has no equivalent getSamples() for sound.\n\nright now the best solution seems to be using libsndfile with OF http://forum.openframeworks.cc/index.php/topic,3502.0.html\n\nbut i would love to see the audio architecture for OF mirror the visual architecture better. this means ofSoundPlayer acts like ofVideoPlayer, and we need to add an ofSound object that mirrors ofPixels. ofSound should always store samples in memory, while ofSoundPlayer can stream audio from disk like ofVideoPlayer.\n\n[@damiannz edited title]"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/855","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/855/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/855/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/855/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/855","id":2677212,"number":855,"title":"video Grabber crashes with Flip4Mac","user":{"login":"roymacdonald","id":974878,"avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","url":"https://api.github.com/users/roymacdonald","html_url":"https://github.com/roymacdonald","followers_url":"https://api.github.com/users/roymacdonald/followers","following_url":"https://api.github.com/users/roymacdonald/following","gists_url":"https://api.github.com/users/roymacdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/roymacdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/roymacdonald/subscriptions","organizations_url":"https://api.github.com/users/roymacdonald/orgs","repos_url":"https://api.github.com/users/roymacdonald/repos","events_url":"https://api.github.com/users/roymacdonald/events{/privacy}","received_events_url":"https://api.github.com/users/roymacdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-12-29T04:43:24Z","updated_at":"2011-12-29T04:43:24Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Today I came across this strange bug.\r\nAny OF app that needed to use the quicktime video grabber crashed at startup when the this was launched from xcode (eg. using build and run) yet it worked correctly when I opened the compiled app by doubleclicking it.\r\n\r\nThe error thrown was a EXCBADACCESS.\r\nthe function that threw this was ACWma1DecoderEntry\r\n\r\nJust some googling and I found that it had to do with Flip4Mac quicktime component.\r\nI uninstalled it and problem gone.\r\n\r\nThe strange thing is that I've had installed Flip4Mac since long ago, yet I updated iTunes a few days ago, that might have done this problem to arise.\r\n\r\nI don't know if this is actually an OF bug from its Quicktime implementation or what ever but it was really annoying getting across with it. Hope this helps others.\r\n\r\nCheers!"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/851","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/851/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/851/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/851/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/851","id":2647508,"number":851,"title":"ofNode::resetTransform does not reset scale","user":{"login":"companje","id":156066,"avatar_url":"https://secure.gravatar.com/avatar/30a7e135fe77636519d74d129c60e156?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"30a7e135fe77636519d74d129c60e156","url":"https://api.github.com/users/companje","html_url":"https://github.com/companje","followers_url":"https://api.github.com/users/companje/followers","following_url":"https://api.github.com/users/companje/following","gists_url":"https://api.github.com/users/companje/gists{/gist_id}","starred_url":"https://api.github.com/users/companje/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/companje/subscriptions","organizations_url":"https://api.github.com/users/companje/orgs","repos_url":"https://api.github.com/users/companje/repos","events_url":"https://api.github.com/users/companje/events{/privacy}","received_events_url":"https://api.github.com/users/companje/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-12-23T14:13:39Z","updated_at":"2011-12-23T14:13:39Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofNode::resetTransform only resets orientation and position.\r\n\r\nI think setScale(1,1,1); needs to be called too in ofNode::resetTransform \r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/849","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/849/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/849/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/849/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/849","id":2637694,"number":849,"title":"skip files in an addon with Makefile","user":{"login":"benben","id":124513,"avatar_url":"https://secure.gravatar.com/avatar/6aed6a0dfa09b46d6fbd5149eb56def8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"6aed6a0dfa09b46d6fbd5149eb56def8","url":"https://api.github.com/users/benben","html_url":"https://github.com/benben","followers_url":"https://api.github.com/users/benben/followers","following_url":"https://api.github.com/users/benben/following","gists_url":"https://api.github.com/users/benben/gists{/gist_id}","starred_url":"https://api.github.com/users/benben/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/benben/subscriptions","organizations_url":"https://api.github.com/users/benben/orgs","repos_url":"https://api.github.com/users/benben/repos","events_url":"https://api.github.com/users/benben/events{/privacy}","received_events_url":"https://api.github.com/users/benben/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-12-22T14:31:37Z","updated_at":"2011-12-22T14:31:37Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"if I add an external lib to my addon, I should provide headers for all platforms to be cross-platfomr like OF but the Makefile doesn't have any switch to ignore certain files which are not needed on linux.\r\n\r\nthe problem is that the OF Makefile compiles everythin under libs/mylib/include\r\n\r\nsee here for more: http://forum.openframeworks.cc/index.php?topic=6486.new;topicseen#new"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/846","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/846/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/846/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/846/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/846","id":2546302,"number":846,"title":"ofCircle(float, float) should not work","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":10,"created_at":"2011-12-14T00:42:31Z","updated_at":"2011-12-19T22:35:27Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"But it does!\r\n\r\nSomehow it's casting from float to ofPoint, maybe using the ofVec3f( float _x=0.f, float _y=0.f, float _z=0.f ) constructor."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/843","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/843/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/843/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/843/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/843","id":2512838,"number":843,"title":"Add return-type warning for XCode project files ","user":{"login":"roxlu","id":358809,"avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","url":"https://api.github.com/users/roxlu","html_url":"https://github.com/roxlu","followers_url":"https://api.github.com/users/roxlu/followers","following_url":"https://api.github.com/users/roxlu/following","gists_url":"https://api.github.com/users/roxlu/gists{/gist_id}","starred_url":"https://api.github.com/users/roxlu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/roxlu/subscriptions","organizations_url":"https://api.github.com/users/roxlu/orgs","repos_url":"https://api.github.com/users/roxlu/repos","events_url":"https://api.github.com/users/roxlu/events{/privacy}","received_events_url":"https://api.github.com/users/roxlu/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-12-10T21:25:49Z","updated_at":"2011-12-10T21:25:49Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Please add \"-Wreturn-type\" to the XCode project. I've noticed that it's a common mistake to add a return type but nothing is returned. Adding this option will at least show an error. I think Visual Studio shows an error already by default. You can add it like this in the project settings: http://img805.imageshack.us/img805/8745/screenshot20111210at102.png \r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/838","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/838/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/838/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/838/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/838","id":2476561,"number":838,"title":"ofPixels has no setImageType","user":{"login":"obviousjim","id":321434,"avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","url":"https://api.github.com/users/obviousjim","html_url":"https://github.com/obviousjim","followers_url":"https://api.github.com/users/obviousjim/followers","following_url":"https://api.github.com/users/obviousjim/following","gists_url":"https://api.github.com/users/obviousjim/gists{/gist_id}","starred_url":"https://api.github.com/users/obviousjim/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/obviousjim/subscriptions","organizations_url":"https://api.github.com/users/obviousjim/orgs","repos_url":"https://api.github.com/users/obviousjim/repos","events_url":"https://api.github.com/users/obviousjim/events{/privacy}","received_events_url":"https://api.github.com/users/obviousjim/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":{"login":"obviousjim","id":321434,"avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","url":"https://api.github.com/users/obviousjim","html_url":"https://github.com/obviousjim","followers_url":"https://api.github.com/users/obviousjim/followers","following_url":"https://api.github.com/users/obviousjim/following","gists_url":"https://api.github.com/users/obviousjim/gists{/gist_id}","starred_url":"https://api.github.com/users/obviousjim/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/obviousjim/subscriptions","organizations_url":"https://api.github.com/users/obviousjim/orgs","repos_url":"https://api.github.com/users/obviousjim/repos","events_url":"https://api.github.com/users/obviousjim/events{/privacy}","received_events_url":"https://api.github.com/users/obviousjim/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":2,"created_at":"2011-12-07T16:30:59Z","updated_at":"2013-02-11T12:13:02Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"right now the only way to change the type of pixels is to go through ofImage and set image type there.\r\n\r\nseems like this should be moved into ofPixels.\r\n\r\nthoughts?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/837","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/837/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/837/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/837/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/837","id":2455011,"number":837,"title":"ofURLFileLoader dosen't set HTTP User-Agent string and there is no way to set it","user":{"login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","html_url":"https://github.com/danomatika","followers_url":"https://api.github.com/users/danomatika/followers","following_url":"https://api.github.com/users/danomatika/following","gists_url":"https://api.github.com/users/danomatika/gists{/gist_id}","starred_url":"https://api.github.com/users/danomatika/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danomatika/subscriptions","organizations_url":"https://api.github.com/users/danomatika/orgs","repos_url":"https://api.github.com/users/danomatika/repos","events_url":"https://api.github.com/users/danomatika/events{/privacy}","received_events_url":"https://api.github.com/users/danomatika/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-12-05T21:44:08Z","updated_at":"2011-12-05T21:44:08Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I made a small example which uses the Wikipedia xml api to make queries which are then parsed by an ofXmlSettings object. The problem is Wikipedia complains there is no User-Agent string and dosen't return any data, while threatening to block by IP.\r\n\r\nThe fix was as simple as adding this to ofURLFileLoader.cpp line 144:\r\n

    \r\n\t\tHTTPRequest req(HTTPRequest::HTTP_GET, path, HTTPMessage::HTTP_1_1);\r\n        \treq.add(\"User-Agent\", \"Mozilla/5.0 (iPad; U; CPU OS 3_2_1 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Mobile/7B405\");\r\n
    \r\n\r\nIt uses the iOS safari user agent string. I think the best fix is to expose the HTTPRequest and HTTPResponse Poco objects so that, like in the ofxHttpUtils, you could add manually the string/value to the request before sending it. I don't think it should be set ti a default within the class. Also, it would be awesome to be able to add data into and pull data out of the requests. This is a great wrapper, especially the threading, I'd just like to have the full req/response control ... perhaps provide a method to add Poco::HttpRequests and recieve Poco::HttpResponses which could be set as references inside the ofxHttpRequest/ofxHttpResponse objects?\r\n\r\nOn another note, ofURLFileLoader seems like a rather specific name for a regular HTTP action. What's wrong with ofHttpSession etc since I've found it useful for more then just"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/831","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/831/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/831/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/831/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/831","id":2436532,"number":831,"title":"dragEvent() in new class not working in win7","user":{"login":"decolector","id":390056,"avatar_url":"https://secure.gravatar.com/avatar/7165a50ea8df968de57ffb5a27ba6ebc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"7165a50ea8df968de57ffb5a27ba6ebc","url":"https://api.github.com/users/decolector","html_url":"https://github.com/decolector","followers_url":"https://api.github.com/users/decolector/followers","following_url":"https://api.github.com/users/decolector/following","gists_url":"https://api.github.com/users/decolector/gists{/gist_id}","starred_url":"https://api.github.com/users/decolector/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/decolector/subscriptions","organizations_url":"https://api.github.com/users/decolector/orgs","repos_url":"https://api.github.com/users/decolector/repos","events_url":"https://api.github.com/users/decolector/events{/privacy}","received_events_url":"https://api.github.com/users/decolector/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-12-03T08:51:42Z","updated_at":"2011-12-03T09:03:22Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Not sure if is an issue or im doing wrong.\r\n\r\nIm trying to implement dragEvent() in an external class in windoes 7. I'm getting neither an error nor a response nor result. While debugging dragEvent is not called at all. The same code works perfectly on osx. \r\n\r\nhere's some:\r\n\r\ndummy.h\r\n\r\n\t#include \"ofMain.h\"\r\n\r\n\tclass dummy\r\n\t{\r\n\t\tpublic:\r\n\t\t\tdummy();\r\n\t\t\t~dummy();\r\n\t\t\t\t\t\r\n\t\t\tvoid config();\r\n\t\t\tvoid dragEvent(ofDragInfo &info);\r\n\t\t\t\r\n\t\tprivate:\r\n\t\tprotected:\r\n\t\t\r\n\t};\r\n\r\ndummy.cpp\r\n\r\n\t#include \"dummy.h\"\r\n\r\n\tdummy::dummy(){}\r\n\r\n\tdummy::~dummy(){}\r\n\r\n\tvoid dummy::config(){\r\n\t\tofAddListener(ofEvents.fileDragEvent, this, &dummy::dragEvent);\r\n\t}\r\n\r\n\tvoid dummy::dragEvent(ofDragInfo &info){\r\n\t\tfor( int i = 0; i < info.files.size() ; i++){\r\n\t\t\tcout << \"path: \" << info.files[i] << endl;\r\n\t\t}\r\n\t}\r\n\r\n\r\ntesApp.h\r\n\r\n\t#include \"ofMain.h\"\r\n\t#include \"dummy.h\"\r\n\r\n\r\n\tclass testApp : public ofBaseApp{\r\n\r\n\t\tpublic:\r\n\t\t\tvoid setup();\r\n\t\t\tvoid update();\r\n\t\t\tvoid draw();\r\n\r\n\t\t\tvoid keyPressed (int key);\r\n\t\t\tvoid keyReleased(int key);\r\n\t\t\tvoid mouseMoved(int x, int y );\r\n\t\t\tvoid mouseDragged(int x, int y, int button);\r\n\t\t\tvoid mousePressed(int x, int y, int button);\r\n\t\t\tvoid mouseReleased(int x, int y, int button);\r\n\t\t\tvoid windowResized(int w, int h);\r\n\t\t\tvoid dragEvent(ofDragInfo dragInfo);\r\n\t\t\tvoid gotMessage(ofMessage msg);\r\n\t\t\t\r\n\t\t\tdummy d;\r\n\r\ntestApp.cpp\r\n\r\n\t#include \"testApp.h\"\r\n\r\n\tvoid testApp::setup(){\r\n\t\td.config();\r\n\r\n\t}"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/825","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/825/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/825/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/825/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/825","id":2380571,"number":825,"title":"small font sizes yield oversimplified glyph shapes","user":{"login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","html_url":"https://github.com/danomatika","followers_url":"https://api.github.com/users/danomatika/followers","following_url":"https://api.github.com/users/danomatika/following","gists_url":"https://api.github.com/users/danomatika/gists{/gist_id}","starred_url":"https://api.github.com/users/danomatika/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danomatika/subscriptions","organizations_url":"https://api.github.com/users/danomatika/orgs","repos_url":"https://api.github.com/users/danomatika/repos","events_url":"https://api.github.com/users/danomatika/events{/privacy}","received_events_url":"https://api.github.com/users/danomatika/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2011-11-29T08:26:16Z","updated_at":"2011-11-29T17:54:48Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Loading Futura at font size 10 and simplify=0 yields oversimplified chars in a pdf render. I'm not sure if there's a way to fix this if the fonts are small.\r\n\r\nA workaround is to load the font at a larger size, say 40, then scale down by 0.25 when drawing. \r\n\r\nThe font below is a zoom of the pdf export using font size 10. The font above is Futura at font size 144 by comparison.\r\n\r\n![oversimplified fonts](http://farm8.staticflickr.com/7161/6423768819_9129b6d608_o.jpg)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/822","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/822/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/822/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/822/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/822","id":2364541,"number":822,"title":"iOS - ofTexture.loadScreenData issue when antiAliasing is on","user":{"login":"momo-the-monster","id":737888,"avatar_url":"https://secure.gravatar.com/avatar/31f8a3ef87e828b70d2a441c8dae97d8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"31f8a3ef87e828b70d2a441c8dae97d8","url":"https://api.github.com/users/momo-the-monster","html_url":"https://github.com/momo-the-monster","followers_url":"https://api.github.com/users/momo-the-monster/followers","following_url":"https://api.github.com/users/momo-the-monster/following","gists_url":"https://api.github.com/users/momo-the-monster/gists{/gist_id}","starred_url":"https://api.github.com/users/momo-the-monster/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/momo-the-monster/subscriptions","organizations_url":"https://api.github.com/users/momo-the-monster/orgs","repos_url":"https://api.github.com/users/momo-the-monster/repos","events_url":"https://api.github.com/users/momo-the-monster/events{/privacy}","received_events_url":"https://api.github.com/users/momo-the-monster/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"milestone":null,"comments":8,"created_at":"2011-11-28T06:48:27Z","updated_at":"2013-03-03T23:58:11Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"If I use loadScreenData with anti-Aliasing turned on in the program's startup like this:\r\n\r\nofAppiPhoneWindow * iOSWindow = new ofAppiPhoneWindow();\r\niOSWindow->enableAntiAliasing(4);\r\n\r\nthen the texture will load in nothing but solid black. If I bypass this anti-aliasing, it works fine. I also cannot properly populate a texture using loadScreenData in a landscape orientation. Changing to Portrait orientation in the update loop, and then back to landscape after the grab fixes it."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/819","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/819/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/819/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/819/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/819","id":2316595,"number":819,"title":"datapath messed in windows after using file open dialog","user":{"login":"hvfrancesco","id":614123,"avatar_url":"https://secure.gravatar.com/avatar/e02a8a3953de9d5d9ec1c7aa8d43eca4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e02a8a3953de9d5d9ec1c7aa8d43eca4","url":"https://api.github.com/users/hvfrancesco","html_url":"https://github.com/hvfrancesco","followers_url":"https://api.github.com/users/hvfrancesco/followers","following_url":"https://api.github.com/users/hvfrancesco/following","gists_url":"https://api.github.com/users/hvfrancesco/gists{/gist_id}","starred_url":"https://api.github.com/users/hvfrancesco/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hvfrancesco/subscriptions","organizations_url":"https://api.github.com/users/hvfrancesco/orgs","repos_url":"https://api.github.com/users/hvfrancesco/repos","events_url":"https://api.github.com/users/hvfrancesco/events{/privacy}","received_events_url":"https://api.github.com/users/hvfrancesco/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":4,"created_at":"2011-11-22T10:50:13Z","updated_at":"2013-03-09T15:19:22Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"i'm experiencing troubles in windows when i use a system file-opening dialog from openframeworks. after using it Data root path seems to get pointing to a wrong location, causing troubles e.g. true type fonts not loading.\r\nif I use the open-file dialog once again to open a file in root folder of the application, then the data path is reset correctly.\r\nusing ofSetDataPathRoot() doens't seem to fix the issue, or maybe I'm not using it correctly."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/818","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/818/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/818/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/818/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/818","id":2306518,"number":818,"title":"#defines for modules ","user":{"login":"vanderlin","id":149997,"avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","url":"https://api.github.com/users/vanderlin","html_url":"https://github.com/vanderlin","followers_url":"https://api.github.com/users/vanderlin/followers","following_url":"https://api.github.com/users/vanderlin/following","gists_url":"https://api.github.com/users/vanderlin/gists{/gist_id}","starred_url":"https://api.github.com/users/vanderlin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vanderlin/subscriptions","organizations_url":"https://api.github.com/users/vanderlin/orgs","repos_url":"https://api.github.com/users/vanderlin/repos","events_url":"https://api.github.com/users/vanderlin/events{/privacy}","received_events_url":"https://api.github.com/users/vanderlin/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2011-11-21T16:45:51Z","updated_at":"2012-03-02T15:19:58Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Had a talk with Theo about this. I think that it would be really nice if it were possible to #define/ pre-process macro if you want to exclude modules like ofVideoPlayer/ofSoundplayer in your app. \r\n\r\nThis would be super helpful for a couple of reasons.\r\n\r\nplugins that are not able to use the modules can exclude them without hacking the core.\r\nif you want to reduce the final size of you app and its not using something like ofVideoPlayer you dont need to add it.\r\n\r\nwhat do you think..."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/815","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/815/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/815/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/815/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/815","id":2268829,"number":815,"title":"Examples in devApps folder do not compile. Missing glew.h","user":{"login":"iani","id":181956,"avatar_url":"https://secure.gravatar.com/avatar/8200f2533f23c9daaff63c4dba6f4819?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8200f2533f23c9daaff63c4dba6f4819","url":"https://api.github.com/users/iani","html_url":"https://github.com/iani","followers_url":"https://api.github.com/users/iani/followers","following_url":"https://api.github.com/users/iani/following","gists_url":"https://api.github.com/users/iani/gists{/gist_id}","starred_url":"https://api.github.com/users/iani/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/iani/subscriptions","organizations_url":"https://api.github.com/users/iani/orgs","repos_url":"https://api.github.com/users/iani/repos","events_url":"https://api.github.com/users/iani/events{/privacy}","received_events_url":"https://api.github.com/users/iani/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2011-11-17T13:45:47Z","updated_at":"2011-11-17T15:17:10Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hello, \r\nRunning on MacOS 10.7 with XCode 4.1 I could not compile any of the examples in devApps, except for _DeployExamples. \r\nThe first error always encountered is: \r\n\r\n../../../libs/openFrameworks/utils/ofConstants.h:101:22: error: GL/glew.h: No such file or directory\r\n\r\nI tried both changing the paths of the include part in the code and dragging the GL folder that contains glew.h separately in the project, but neither worked. \r\n\r\nHelp please... \r\n\r\nThanks, \r\n\r\nIannis Zannos"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/814","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/814/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/814/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/814/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/814","id":2267854,"number":814,"title":"Suggest adding some info about Lion to readme.txt","user":{"login":"iani","id":181956,"avatar_url":"https://secure.gravatar.com/avatar/8200f2533f23c9daaff63c4dba6f4819?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8200f2533f23c9daaff63c4dba6f4819","url":"https://api.github.com/users/iani","html_url":"https://github.com/iani","followers_url":"https://api.github.com/users/iani/followers","following_url":"https://api.github.com/users/iani/following","gists_url":"https://api.github.com/users/iani/gists{/gist_id}","starred_url":"https://api.github.com/users/iani/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/iani/subscriptions","organizations_url":"https://api.github.com/users/iani/orgs","repos_url":"https://api.github.com/users/iani/repos","events_url":"https://api.github.com/users/iani/events{/privacy}","received_events_url":"https://api.github.com/users/iani/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2011-11-17T11:48:32Z","updated_at":"2013-01-13T20:36:34Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hello, \r\nIt took me more than 4 hours to get openFrameworks to compile deployExamples on MacOS X 10.7.2 with XCode 4.1, because of having to figure out two things; \r\n\r\n1. Need to change SDK for the deployExamples project definitions to 10.6\r\n2. Need to choose deployExamples in the build menu on the toolbar of the project window. \r\n\r\nPerhaps this info should be added to the readme.txt file of the present master branch in order to spare other people the hassle? \r\n\r\nI suggest the following addition: \r\n=====\r\nTo deploy openFrameworks examples from the files cloned via the present github repository, you should build and run the project: \r\napps/devApps/_DeployExamples/deployExamples.xcodeproj\r\n\r\nTo successfully compile in Lion (MacOS X 10.7) in XCode you should select in the project file list of XCode both the target deployExamples from the top level of the file hierarchy and the project openFrameworksLib.xcodeproj from inside the openFrameworks folder, then find the project definition, and change the SDK to MacOS X 10.6. You should do the same for the targets of those two items. \r\n\r\nImportant: Before clicking the Build and Go, or the Run button, make sure that you choose the deployExamples project in the menu on the toolbar of the project window. (Otherwise if you leave openFrameworks as selected project and push Run or Build and Run, no application will be created or run). \r\n\r\n\r\n=====\r\nHopefully this helps. \r\nCheers, \r\nIannis Zannos"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/811","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/811/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/811/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/811/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/811","id":2223158,"number":811,"title":"ofFBO causes segfault on Linux Ubuntu Lucid with i945 GPU","user":{"login":"hvfrancesco","id":614123,"avatar_url":"https://secure.gravatar.com/avatar/e02a8a3953de9d5d9ec1c7aa8d43eca4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e02a8a3953de9d5d9ec1c7aa8d43eca4","url":"https://api.github.com/users/hvfrancesco","html_url":"https://github.com/hvfrancesco","followers_url":"https://api.github.com/users/hvfrancesco/followers","following_url":"https://api.github.com/users/hvfrancesco/following","gists_url":"https://api.github.com/users/hvfrancesco/gists{/gist_id}","starred_url":"https://api.github.com/users/hvfrancesco/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hvfrancesco/subscriptions","organizations_url":"https://api.github.com/users/hvfrancesco/orgs","repos_url":"https://api.github.com/users/hvfrancesco/repos","events_url":"https://api.github.com/users/hvfrancesco/events{/privacy}","received_events_url":"https://api.github.com/users/hvfrancesco/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2011-11-13T20:49:26Z","updated_at":"2011-11-16T04:46:48Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I'm trying this simple ofFbo example on OF 007, the system is Ubuntu Lucid, with an Intel 945 GPU.\r\n\r\n]//--------------------------------------------------------------\r\nvoid testApp::setup(){\r\n fbo.allocate(500, 500, GL_RGBA);\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::update(){\r\n\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::draw(){\r\n\r\n fbo.begin();\r\n ofClear(255, 255, 255, 255);\r\n ofSetColor(255, 0, 0);\r\n ofCircle(mouseX, mouseY, 100);\r\n fbo.end();\r\n\r\n ofSetColor(255);\r\n fbo.draw(0, 0);\r\n}\r\n\r\nI got a segfault in i915 dri, and any test using ofFbo leads to same results.\r\n\r\n\r\n#0 0x1bd3c36 _mesa_FramebufferRenderbufferEXT() (/usr/lib/dri/i915_dri.so:??)\r\n#1 0x80cc56a ofFbo::createAndAttachRenderbuffer(this=0x85b28e8, internalFormat=34041, attachmentPoint=33306) (../../../openFrameworks/gl/ofFbo.cpp:489)\r\n#2 0x80cc352 ofFbo::allocate(this=0x85b28e8, _settings=...) (../../../openFrameworks/gl/ofFbo.cpp:388)\r\n#3 0x80cc269 ofFbo::allocate(this=0x85b28e8, width=500, height=500, internalformat=6408, numSamples=0) (../../../openFrameworks/gl/ofFbo.cpp:363)\r\n#4 0x80562ec testApp::setup(this=0x85b28d8) (src/testApp.cpp:5)\r\n#5 0x8059ca6 ofNotifySetup() (../../../openFrameworks/events/ofEvents.cpp:73)\r\n#6 0x8056a23 ofAppGlutWindow::runAppViaInfiniteLoop(this=0xbffff2f8, appPtr=0x85b28d8) (../../../openFrameworks/app/ofAppGlutWindow.cpp:317)\r\n#7 0x80584cc ofRunApp(OFSA=0x85b28d8) (../../../openFrameworks/app/ofAppRunner.cpp:82)\r\n#8 0x8055bfc main() (src/main.cpp:14)\r\n\r\nany idea about what I should try or where the problem could be? has anyone experienced similar problems?\r\n\r\nthanks in advance to all"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/810","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/810/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/810/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/810/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/810","id":2206980,"number":810,"title":"Add flag for mipmapping in ofTexture/ofFbo","user":{"login":"joshuajnoble","id":237423,"avatar_url":"https://secure.gravatar.com/avatar/10960ba0f305803a1cdc7cd6188d643b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"10960ba0f305803a1cdc7cd6188d643b","url":"https://api.github.com/users/joshuajnoble","html_url":"https://github.com/joshuajnoble","followers_url":"https://api.github.com/users/joshuajnoble/followers","following_url":"https://api.github.com/users/joshuajnoble/following","gists_url":"https://api.github.com/users/joshuajnoble/gists{/gist_id}","starred_url":"https://api.github.com/users/joshuajnoble/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/joshuajnoble/subscriptions","organizations_url":"https://api.github.com/users/joshuajnoble/orgs","repos_url":"https://api.github.com/users/joshuajnoble/repos","events_url":"https://api.github.com/users/joshuajnoble/events{/privacy}","received_events_url":"https://api.github.com/users/joshuajnoble/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2011-11-11T07:34:53Z","updated_at":"2012-03-09T18:51:38Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Julapy and I were discussing how to do this on the forum http://forum.openframeworks.cc/index.php?topic=7852 and I think adding a flag to allocate for mipmaps to ofTexture and ofFbo would come in handy for some people.\r\n\r\n```c\r\nvoid ofTexture::allocate(int w, int h, int internalGlDataType, bool bUseARBExtention, bool generateMipmaps = false) \r\n{\r\n if( generateMipmaps )\r\n {\r\n glTexParameterf( texData.textureTarget, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_NEAREST );\r\n glTexParameterf( texData.textureTarget, GL_TEXTURE_MAG_FILTER, GL_LINEAR );\r\n glTexParameterf( texData.textureTarget, GL_GENERATE_MIPMAP, GL_TRUE );\r\n }\r\n```\r\n\r\nand in ofFbo\r\n\r\n```c\r\nstruct Settings {\r\n bool generateMipMaps; // or int\r\n}\r\n```\r\n\r\nI'd be happy to do this & submit a pull request too."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/800","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/800/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/800/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/800/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/800","id":2089523,"number":800,"title":"ofInsidePoly should be a static method of ofPolyline","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2011-10-30T04:16:14Z","updated_at":"2011-12-03T23:58:48Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"right now it's inside ofMath.h"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/798","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/798/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/798/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/798/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/798","id":2086039,"number":798,"title":"ofRect isn't quite rectangular","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2011-10-29T06:38:43Z","updated_at":"2011-12-05T21:31:07Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofRect very commonly has a little chunk missing from one corner.\r\n\r\nthere is also a discrepancy between the filled and outline rectangles. it's not clear whether the outline rect should be within the bounds of the filled rect, or enclosing the filled rect, and in practice it can be a little of both."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/797","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/797/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/797/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/797/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/797","id":2085543,"number":797,"title":"procedural posing of bones in ofxAssimpModelLoader","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-10-29T02:37:28Z","updated_at":"2011-10-29T02:37:28Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"we're working on some ideas regarding procedural animation and posing:\r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,7714.new.html#new\r\n\r\nwhich should be more powerful than playing back manual animations.\r\n\r\nintegrating it into the core would be ideal, but we're still trying to understand how it works."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/793","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/793/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/793/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/793/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/793","id":2051692,"number":793,"title":"easyCam -- ability to disable doubleClick reset","user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2011-10-25T23:36:40Z","updated_at":"2011-10-25T23:39:09Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"\r\nThis should be user adjustable / on / off. it's sort of a drag to be using easy cam and trigger double clicks are you are interacting with a gui, etc.... \r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/787","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/787/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/787/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/787/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/787","id":1999520,"number":787,"title":"half edge mesh structure extension of ofMesh","user":{"login":"kpasko","id":167271,"avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","url":"https://api.github.com/users/kpasko","html_url":"https://github.com/kpasko","followers_url":"https://api.github.com/users/kpasko/followers","following_url":"https://api.github.com/users/kpasko/following","gists_url":"https://api.github.com/users/kpasko/gists{/gist_id}","starred_url":"https://api.github.com/users/kpasko/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kpasko/subscriptions","organizations_url":"https://api.github.com/users/kpasko/orgs","repos_url":"https://api.github.com/users/kpasko/repos","events_url":"https://api.github.com/users/kpasko/events{/privacy}","received_events_url":"https://api.github.com/users/kpasko/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2011-10-19T22:39:37Z","updated_at":"2012-10-23T21:12:06Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"would be useful as well. Perhaps an ofxMeshUtils would be in order for upcoming versions..."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/786","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/786/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/786/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/786/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/786","id":1999513,"number":786,"title":"axis aligned bounding box tree for ofMesh","user":{"login":"kpasko","id":167271,"avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","url":"https://api.github.com/users/kpasko","html_url":"https://github.com/kpasko","followers_url":"https://api.github.com/users/kpasko/followers","following_url":"https://api.github.com/users/kpasko/following","gists_url":"https://api.github.com/users/kpasko/gists{/gist_id}","starred_url":"https://api.github.com/users/kpasko/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kpasko/subscriptions","organizations_url":"https://api.github.com/users/kpasko/orgs","repos_url":"https://api.github.com/users/kpasko/repos","events_url":"https://api.github.com/users/kpasko/events{/privacy}","received_events_url":"https://api.github.com/users/kpasko/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2011-10-19T22:38:35Z","updated_at":"2011-11-04T21:59:22Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"would be quite useful"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/785","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/785/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/785/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/785/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/785","id":1992818,"number":785,"title":"ofCamera setOrientation gives odd results","user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2011-10-19T11:16:42Z","updated_at":"2011-12-27T17:58:58Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I am loading in boujou camera data (translation and euler rotation), and I get really fine results when I do: \r\n\r\nglTranslatef(tx,ty,tz);\r\nglRotatef(rx, 1,0,0);\r\nglRotatef(ry, 0,1,0);\r\nglRotatef(rz, 0,0,1);\r\n\r\nbut when I create an ofCamera, and do: \r\n\r\nsetPosition(ofPoint(tx, ty, tz));\r\nsetOrientation(ofPoint(rx, ry, rz));\r\n\r\nI get strange results. I am wondering about ofNodes \"setOrientation\" and if it's really right in that the order is switched:\r\n\r\nsetOrientation(ofQuaternion(eulerAngles.y, ofVec3f(0, 1, 0), eulerAngles.x, ofVec3f(1, 0, 0), eulerAngles.z, ofVec3f(0, 0, 1)));\r\n\r\nalso, maybe I am mis interpreting what \"set orientation\" does. But I can't seem to get similar results with ofCam, even if I do, for example, \r\n\r\ncam.setPosition( tx,ty,tz);\r\ncam.rotate( rx, 1,0,0);\r\ncam.rotate( ry, 0,1,0);\r\ncam.rotate( rz, 0,0,1);\r\n\r\nI still don't get the same results as when I do it via opengl. This seems like a bug maybe with how ofNode handles rotation?\r\n\r\n(note , I am calling resetTranform() on the camera, so it's not an accumulation of rotations.... it's just that I can't seem to find a way to get ofCam to rotate in the same way as opengl commands). \r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/774","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/774/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/774/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/774/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/774","id":1922704,"number":774,"title":"ofCamera draw() should be more indicative of where the camera is facing. ","user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2011-10-16T18:30:08Z","updated_at":"2012-06-26T14:12:16Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"\r\nat the moment, the ofCamera draw calls ofNode, which does't really give you a clear indication of which way the camera is looking. even that is weird, because a camera looks on -z, and the node draw draws a line on positive z. \r\n\r\nI suggest we add something that draws a bit of a frustum (ie, fov, etc) and gives you a feeling about orientation. \r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/772","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/772/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/772/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/772/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/772","id":1888302,"number":772,"title":"ofBaseDraws draw(x, y) default","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-10-12T15:08:55Z","updated_at":"2011-10-12T15:09:29Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Currently we have:\r\n\tvirtual void draw(float x,float y)=0;\r\n\tvirtual void draw(float x,float y,float w, float h)=0;\r\n\r\n\tvirtual float getHeight()=0;\r\n\tvirtual float getWidth()=0;\r\n\r\nSince we're insisting that the user define a getWidth and getHeight, can I ask why we don't set the default of draw(x,y) to be\r\n virtual void draw(float x,float y) {draw(x, y, getWidth(), getHeight()) };\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/767","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/767/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/767/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/767/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/767","id":1854874,"number":767,"title":"#include instead of #include ","user":{"login":"gimlids","id":186277,"avatar_url":"https://secure.gravatar.com/avatar/cc4cace34c61103f0624002a692820f7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"cc4cace34c61103f0624002a692820f7","url":"https://api.github.com/users/gimlids","html_url":"https://github.com/gimlids","followers_url":"https://api.github.com/users/gimlids/followers","following_url":"https://api.github.com/users/gimlids/following","gists_url":"https://api.github.com/users/gimlids/gists{/gist_id}","starred_url":"https://api.github.com/users/gimlids/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gimlids/subscriptions","organizations_url":"https://api.github.com/users/gimlids/orgs","repos_url":"https://api.github.com/users/gimlids/repos","events_url":"https://api.github.com/users/gimlids/events{/privacy}","received_events_url":"https://api.github.com/users/gimlids/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2011-10-09T03:58:30Z","updated_at":"2011-10-24T15:27:29Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"When integrating openFrameworks into existing build systems, it would make things easier if this common include convention was followed.\r\n\r\ni.e. to include openFrameworks headers in my own build, because all the includes look like:\r\n\r\n#include \"ofMesh.h\"\r\n#include \"ofAppGlutWindow.h\"\r\n#include \"ofSerial.h\"\r\n\r\nI have to add all these paths to my include paths:\r\n\r\n\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/app\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/3d\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/communication\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/gl\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/graphics\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/utils\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/types\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/math\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/events\r\n\r\n\r\n\r\nIt is common to instead structure files like (in the case of openFrameworks):\r\n\r\noF/include/oF\r\noF/include/oF/app\r\noF/include/oF/3d\r\noF/include/oF/communication\r\noF/include/oF/gl\r\noF/include/oF/graphics\r\n...etc...\r\n\r\nand just write:\r\n\r\n#include \r\n#include \r\n\r\netc.\r\n\r\nI'm not sure if there is an argument to leave it like it is because it's easier for oF's demographic? But I would say teaching the some_lib/include/some_lib/ convention would help people use more C++."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/766","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/766/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/766/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/766/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/766","id":1851779,"number":766,"title":"ofNode should have a draw(float size) option","user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2011-10-08T09:38:46Z","updated_at":"2011-10-12T13:12:02Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"\r\nat the moment, ofNode has a draw function that has awkwardly hard coded sizes: \r\n\r\nvirtual void customDraw() {\r\n\t\tofBox(10);\r\n\t\tofDrawAxis(20);\r\n\t}\r\n\r\nI'd like a draw(size) option. obviously I can extend ofNode and create my own functions, but if I just draw a node, I might want to adjust the size internally, as the \"10\" and \"20\" might not make any sense based on where I am drawing, for example here: \r\n\r\nhttp://imgur.com/idWPp\r\n\r\nlooks quite weird, but at 1/10th the size would look ok. \r\n\r\nas most other OF objects have draw(size) options, I think ofNodeShould have this too. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/765","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/765/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/765/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/765/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/765","id":1841802,"number":765,"title":"remove gluProject and gluUnProject, add screenToWorld, worldToScreen","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":10,"created_at":"2011-10-07T09:46:06Z","updated_at":"2013-01-04T06:56:07Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"edit: originally this issue was about adding glu functions. now i realize any remaining ones need to be removed. but it's still relevant to have an ofScreenToWorld and ofWorldToScreen. \r\n\r\nthis would be really awesome. there is already some code in ofDrawBitmapString that's using gluProject, it would be good to clean it up.\r\n\r\nthe main issue is that glu is not on iOS, so we'd need to find/write our own implementation.\r\n\r\nhere's a first pass:\r\n\r\n\tGLdouble modelviewMatrix[16], projectionMatrix[16];\r\n\tGLint viewport[4];\r\n\tvoid updateProjectionState() {\r\n\t\tglGetDoublev(GL_MODELVIEW_MATRIX, modelviewMatrix);\r\n\t\tglGetDoublev(GL_PROJECTION_MATRIX, projectionMatrix);\r\n\t\tglGetIntegerv(GL_VIEWPORT, viewport);\r\n\t}\r\n\r\n\tofVec3f ofWorldToScreen(ofVec3f world) {\r\n\t\tupdateProjectionState();\r\n\t\tGLdouble x, y, z;\r\n\t\tgluProject(world.x, world.y, world.z, modelviewMatrix, projectionMatrix, viewport, &x, &y, &z);\r\n\t\tofVec3f screen(x, y, z);\r\n\t\tscreen.y = ofGetHeight() - screen.y;\r\n\t\treturn screen;\r\n\t}\r\n\r\n\tofVec3f ofScreenToWorld(ofVec3f screen) {\r\n\t\tupdateProjectionState();\r\n\t\tGLdouble x, y, z;\r\n\t\tscreen.y = ofGetHeight() - screen.y;\r\n\t\tgluUnProject(screen.x, screen.y, screen.z, modelviewMatrix, projectionMatrix, viewport, &x, &y, &z);\r\n\t\tofVec3f world(x, y, z);\r\n\t\treturn world;\r\n\t}"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/760","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/760/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/760/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/760/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/760","id":1758237,"number":760,"title":"ofxXmlSettings does not print any useful error messages","user":{"login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","html_url":"https://github.com/danomatika","followers_url":"https://api.github.com/users/danomatika/followers","following_url":"https://api.github.com/users/danomatika/following","gists_url":"https://api.github.com/users/danomatika/gists{/gist_id}","starred_url":"https://api.github.com/users/danomatika/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danomatika/subscriptions","organizations_url":"https://api.github.com/users/danomatika/orgs","repos_url":"https://api.github.com/users/danomatika/repos","events_url":"https://api.github.com/users/danomatika/events{/privacy}","received_events_url":"https://api.github.com/users/danomatika/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2011-09-28T00:53:09Z","updated_at":"2011-09-28T01:00:34Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofxXmlXettings uses TinyXML which gives you lots of useful error info like what line the error is on as well as what it has trouble reading. This is super awesome and useful to people like me who always mistype xml here and there.\r\n\r\nCurrently ofxXmlSettings::loadFile only returns a bool and you're left to figure out if it's a path issue, bad xml formatting, etc. At the least, we should be able to grab an error string.\r\n\r\nHere's how to do it:\r\n
    \r\nstd::string Xml::getErrorString(const TiXmlDocument* xmlDoc)\r\n{\r\n    if(xmlDoc == NULL)\r\n        return \"\";\r\n\r\n    std::stringstream error;\r\n    error << \"line \" <<  xmlDoc->ErrorRow() << \", \" << (std::string) xmlDoc->ErrorDesc();\r\n    return error.str();\r\n}\r\n
    "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/758","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/758/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/758/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/758/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/758","id":1738864,"number":758,"title":"non ofxXmlSettings object read and write value","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":0,"created_at":"2011-09-26T11:54:06Z","updated_at":"2013-02-11T12:13:02Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"This would be the best thing ever. \r\n\r\nstring ipAddr = ofxXmlSettings::readValueFromFile(\"data.xml\", \"ip\", \"127.0.0.1\"); \r\n\r\nofxXmlSettings::saveValueToFile(\"data.xml\", \"ip\", ipAddr); "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/757","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/757/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/757/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/757/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/757","id":1733504,"number":757,"title":"ofPixels::allocate should init new memory","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-09-25T13:22:59Z","updated_at":"2011-09-25T13:22:59Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"in my opinion, it would make sense for ofPixels::allocate to initialize the new memory to 0. even for large images, i don't think this is such an expensive operation.\r\n\r\ni discovered that it is not initialized to 0 when i had a really weird bug -- some code that gave me different results depending on whether i loaded another image before allocating or not. i was expecting OF to act like opencv, which also sets new memory to 0. this would be in line with ofVec*, ofColor, and a few other things, which are all allocated to 0."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/754","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/754/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/754/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/754/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/754","id":1708332,"number":754,"title":"nested fbo causing currentFBO lost","user":{"login":"liquidzym","id":51957,"avatar_url":"https://secure.gravatar.com/avatar/166640c513e589c86d2de49c52258eb4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"166640c513e589c86d2de49c52258eb4","url":"https://api.github.com/users/liquidzym","html_url":"https://github.com/liquidzym","followers_url":"https://api.github.com/users/liquidzym/followers","following_url":"https://api.github.com/users/liquidzym/following","gists_url":"https://api.github.com/users/liquidzym/gists{/gist_id}","starred_url":"https://api.github.com/users/liquidzym/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/liquidzym/subscriptions","organizations_url":"https://api.github.com/users/liquidzym/orgs","repos_url":"https://api.github.com/users/liquidzym/repos","events_url":"https://api.github.com/users/liquidzym/events{/privacy}","received_events_url":"https://api.github.com/users/liquidzym/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-09-22T08:20:27Z","updated_at":"2011-09-22T08:20:27Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"void ofFbo::end() {\r\n\tunbind();\r\n\tif(ofGetGLRenderer()){\r\n\t\tofGetGLRenderer()->setCurrentFBO(NULL);\r\n\t}\r\n\tofPopView();\r\n}\r\n\r\nthis will go wrong if nested fbo as following\r\n\r\nfbo1.begin();\r\n...\r\n fbo2.begin();\r\n ...\r\n fbo2.end();\r\n...\r\nfbo1.end();\r\n\r\nso probably the current fbo must not be set NULL\r\n\r\nerror show's in\r\nvoid ofGLRenderer::viewport(float x, float y, float width, float height, bool invertY) {\r\n\tif(width == 0) width = ofGetWindowWidth();\r\n\tif(height == 0) height = ofGetWindowHeight();\r\n\r\n\tif (invertY){\r\n\t\tif(currentFbo){\r\n\t\t\ty = currentFbo->getHeight() - (y + height);\r\n\t\t}else{\r\n\t\t\ty = ofGetWindowHeight() - (y + height);\r\n\t\t}\r\n\t}\r\n\tglViewport(x, y, width, height);\t\r\n}\r\nthe 'y' will computing wrong when current height is wrong\r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/753","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/753/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/753/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/753/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/753","id":1704855,"number":753,"title":"ofFbo readToPixels() in iOS","user":{"login":"stephen-baker","id":1047836,"avatar_url":"https://secure.gravatar.com/avatar/96e9ae469240e57fc3ebeed6769c7016?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"96e9ae469240e57fc3ebeed6769c7016","url":"https://api.github.com/users/stephen-baker","html_url":"https://github.com/stephen-baker","followers_url":"https://api.github.com/users/stephen-baker/followers","following_url":"https://api.github.com/users/stephen-baker/following","gists_url":"https://api.github.com/users/stephen-baker/gists{/gist_id}","starred_url":"https://api.github.com/users/stephen-baker/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stephen-baker/subscriptions","organizations_url":"https://api.github.com/users/stephen-baker/orgs","repos_url":"https://api.github.com/users/stephen-baker/repos","events_url":"https://api.github.com/users/stephen-baker/events{/privacy}","received_events_url":"https://api.github.com/users/stephen-baker/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"milestone":null,"comments":1,"created_at":"2011-09-21T20:50:33Z","updated_at":"2012-03-10T04:38:03Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I found an issue with readToPixels() on iOS that works as expected when compiled for OSX. \r\n\r\nInitialize an FBO:\r\n\r\n   ofFbo::Settings settings;\r\n    settings.width = 1024;\r\n    settings.height = 1024;\r\n    settings.internalformat = GL_RGB;\r\n    settings.numSamples = 0;\r\n    settings.useDepth = false;\r\n    settings.useStencil = false;\r\n    screenFBO.allocate(settings);\r\n\r\nthen draw into the FBO and attempt to retrieve the pixels:\r\n\r\n ofPixels pixels; \r\n screenFBO.readToPixels(pixels); \r\n\r\nThis gives me the ofPixels I'm expecting in OSX, in iOS the pixels aren't populated. I can draw the FBO and see it on screen, I just can't get the pixels out of the texture in iOS.\r\n\r\nThis seems to be related to this portion of readToPixels() from ofFbo.cpp:\r\n\r\n bind(); \r\n int format,type; \r\n ofGetGlFormatAndType(settings.internalformat,format,type); \r\n glReadPixels(0,0,settings.width, settings.height, format, GL_UNSIGNED_BYTE, pixels.getPixels()); \r\n unbind(); \r\n\r\nHas anyone experienced this issue – any fixes?\r\n\r\nThanks,\r\nSteve"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/752","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/752/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/752/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/752/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/752","id":1691874,"number":752,"title":"ofFbo (problems with certain image dimensions)","user":{"login":"ammalgamma","id":517000,"avatar_url":"https://secure.gravatar.com/avatar/96b69749f518cf6a2964b999bf29ee8e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"96b69749f518cf6a2964b999bf29ee8e","url":"https://api.github.com/users/ammalgamma","html_url":"https://github.com/ammalgamma","followers_url":"https://api.github.com/users/ammalgamma/followers","following_url":"https://api.github.com/users/ammalgamma/following","gists_url":"https://api.github.com/users/ammalgamma/gists{/gist_id}","starred_url":"https://api.github.com/users/ammalgamma/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ammalgamma/subscriptions","organizations_url":"https://api.github.com/users/ammalgamma/orgs","repos_url":"https://api.github.com/users/ammalgamma/repos","events_url":"https://api.github.com/users/ammalgamma/events{/privacy}","received_events_url":"https://api.github.com/users/ammalgamma/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2011-09-20T21:16:24Z","updated_at":"2011-09-21T10:37:20Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I'm having a problem with creating an image out of ofFbo pixels with some image and fbo sizes\r\n\r\n```c++\r\nvoid testApp::setup(){\r\n\r\n ofSetLogLevel(OF_LOG_VERBOSE);\r\n\tofSetVerticalSync(false);\r\n ofBackground(34, 34, 34);\r\n\tofEnableAlphaBlending();\r\n\r\n ofSetWindowShape(1024, ofGetScreenHeight()-70);\r\n ofSetFrameRate(60);\r\n\r\n frame.loadImage(\"lay.png\");\r\n \r\n imageHeight = 1172;\r\n imageWidth = 1182;\r\n\r\n mergeFbo.allocate(imageWidth, imageHeight, GL_RGB);\r\n\r\n final.setImageType(OF_IMAGE_COLOR);\r\n\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::draw(){\r\n\r\n ofEnableAlphaBlending();\r\n\r\n mergeFbo.begin();\r\n\r\n ofClear(0, 0, 0, 1);\r\n\r\n frame.draw(0, 0);\r\n\r\n mergeFbo.end();\r\n\r\n\r\n mergeFbo.draw(200, 100, 100, 200);\r\n \r\n \r\n mergeFbo.readToPixels(pixels);\r\n final.setFromPixels(pixels);\r\n\r\n final.draw(0, 0);\r\n\r\n}\r\n```"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/748","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/748/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/748/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/748/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/748","id":1668066,"number":748,"title":"more generic ofJoin","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2011-09-17T07:26:18Z","updated_at":"2011-09-19T09:04:12Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"feature request for a more generic ofJoin() function that accepts vectors of all kinds of objects (float, int, ofVec2f, etc) rather than just string. anything that implements operator<<\r\n\r\nhere's an example using stl:\r\n\r\n\t#include \r\n\ttemplate \r\n\tstring ofJoin(vector& elements, string delimiter) {\r\n\t\tstringstream result;\r\n\t\tcopy(elements.begin(), elements.end(), ostream_iterator(result, delimiter.c_str()));\r\n\t\treturn result.str();\r\n\t}"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/745","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/745/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/745/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/745/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/745","id":1643672,"number":745,"title":"Polygon winding","user":{"login":"andreasmuller","id":791114,"avatar_url":"https://secure.gravatar.com/avatar/210831a04d36f1aa26413ecbdbd4b07c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"210831a04d36f1aa26413ecbdbd4b07c","url":"https://api.github.com/users/andreasmuller","html_url":"https://github.com/andreasmuller","followers_url":"https://api.github.com/users/andreasmuller/followers","following_url":"https://api.github.com/users/andreasmuller/following","gists_url":"https://api.github.com/users/andreasmuller/gists{/gist_id}","starred_url":"https://api.github.com/users/andreasmuller/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/andreasmuller/subscriptions","organizations_url":"https://api.github.com/users/andreasmuller/orgs","repos_url":"https://api.github.com/users/andreasmuller/repos","events_url":"https://api.github.com/users/andreasmuller/events{/privacy}","received_events_url":"https://api.github.com/users/andreasmuller/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2011-09-14T13:50:48Z","updated_at":"2011-09-21T17:22:14Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"\r\nI'm looking into creating some new primitives for OF [1] and the polygon winding has me a bit confused.\r\n\r\nIf you take for instance \"graphicsExample\" an you add:\r\n\r\n```glEnable( GL_CULL_FACE );```\r\n\r\nSomewhere you will no longer see much drawn to screen.\r\n\r\nGL_CCW is the default FrontFace for OpenGL, but OF seems to be the opposite.\r\nhttp://www.khronos.org/opengles/sdk/docs/man/xhtml/glFrontFace.xml\r\n\r\nWhich is coolio of course, as long as we are consistent.\r\n\r\nOur options are either to throw a ```glFrontFace( GL_CW );``` in there somewhere OR re-write all the drawing to be consistent with OpenGL default, not sure what is the best in the long run.\r\n\r\nWhat say you all?\r\n\r\n/A\r\n\r\n\r\n[1] https://github.com/andreasmuller/openFrameworks/blob/develop-opengles2/libs/openFrameworks/3d/of3dPrimitives.h"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/744","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/744/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/744/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/744/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/744","id":1641198,"number":744,"title":"rename testApp to ofApp","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":10,"created_at":"2011-09-14T07:02:36Z","updated_at":"2012-03-17T16:52:58Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"i think it would be wonderful if every OF example was named ofApp instead of testApp. especially because:\r\n\r\n\tclass ofApp : public ofBaseApp {\r\n\r\nis more natural than:\r\n\r\n\tclass testApp : public ofBaseApp {\r\n\r\ngiven the rest of OF naming conventions. and it would increase consistency with things like:\r\n\r\n\tofGetAppPtr();\r\n\tofAppBaseWindow\r\n\tofAppGlutWindow\r\n\r\nthis is a massive refactor that shouldn't be difficult, but should be done at the same time as something like a code formatting cleanup."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/743","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/743/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/743/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/743/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/743","id":1639020,"number":743,"title":"seg fault on ofEnableAlphaBlending() -> glBlendEquation()","user":{"login":"jtnimoy","id":183796,"avatar_url":"https://secure.gravatar.com/avatar/153ba4a8df491692b717daad7a6030be?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"153ba4a8df491692b717daad7a6030be","url":"https://api.github.com/users/jtnimoy","html_url":"https://github.com/jtnimoy","followers_url":"https://api.github.com/users/jtnimoy/followers","following_url":"https://api.github.com/users/jtnimoy/following","gists_url":"https://api.github.com/users/jtnimoy/gists{/gist_id}","starred_url":"https://api.github.com/users/jtnimoy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jtnimoy/subscriptions","organizations_url":"https://api.github.com/users/jtnimoy/orgs","repos_url":"https://api.github.com/users/jtnimoy/repos","events_url":"https://api.github.com/users/jtnimoy/events{/privacy}","received_events_url":"https://api.github.com/users/jtnimoy/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2011-09-13T22:53:55Z","updated_at":"2011-09-26T11:56:48Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"calling ofEnableAlphaBlending() crashes my app on a machine with opengl version 1.1.0, because glBlendEquation(), introduced at opengl 1.3, needs to gracefully degrade. Here is the solution:\r\n\r\n
    \r\nvoid ofEnableAlphaBlending_slightlySafer(void){\r\n\tconst GLubyte * version = glGetString(GL_VERSION);\r\n\tint major, minor;\r\n\tsscanf((const char*)version, \"%i.%i\",&major, &minor);\r\n\r\n\tif(major > 1 || (major==1 && minor>=3)){\r\n\t\tofEnableAlphaBlending();\r\n\t}\t\r\n}\r\n
    "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/730","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/730/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/730/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/730/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/730","id":1586262,"number":730,"title":"nicer stroke mitering/joining and end caps","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":7,"created_at":"2011-09-07T03:27:13Z","updated_at":"2013-01-15T16:13:10Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"it would be awesome to have lines drawn nicer when they are 1 thick and 2 make sharp edges. processing has some functions strokeCap() and strokeJoin() for setting this behavior, but it doesn't work with OPENGL mode. we could probably adapt a geometry shader to do some smart mitering for us on the GPU.\r\n\r\nprompted by the discussion here: http://forum.openframeworks.cc/index.php/topic,7278.0/topicseen.html"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/728","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/728/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/728/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/728/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/728","id":1569364,"number":728,"title":"ofColor and clamping","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2011-09-05T14:41:50Z","updated_at":"2011-09-05T15:39:58Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofColor_:operator+= currently calls clamp() when it's done doing the +=\r\n\r\ni imagined one of the applications of ofFloatColor would be for averaging or summing ofColor, which normally requires non-saturation semantics for +=. i could also do a / or * every += operation to avoid overflow. this doesn't have to be a bug, but it should at least be documented clearly when we discuss ofColor."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/727","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/727/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/727/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/727/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/727","id":1566286,"number":727,"title":"OSX 10.7 Gamma Problem","user":{"login":"Tommato","id":1027082,"avatar_url":"https://secure.gravatar.com/avatar/95bbfbd39116dffe06be4d816f322bf0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"95bbfbd39116dffe06be4d816f322bf0","url":"https://api.github.com/users/Tommato","html_url":"https://github.com/Tommato","followers_url":"https://api.github.com/users/Tommato/followers","following_url":"https://api.github.com/users/Tommato/following","gists_url":"https://api.github.com/users/Tommato/gists{/gist_id}","starred_url":"https://api.github.com/users/Tommato/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Tommato/subscriptions","organizations_url":"https://api.github.com/users/Tommato/orgs","repos_url":"https://api.github.com/users/Tommato/repos","events_url":"https://api.github.com/users/Tommato/events{/privacy}","received_events_url":"https://api.github.com/users/Tommato/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-09-05T10:17:48Z","updated_at":"2011-09-05T10:17:48Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hello\r\n\r\nI had a problem with gamma for my Carbon app in OSX 10.6, UI looked \"blotched\" with Pappis' help it was solved, here are details:\r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,6404.msg30519.html#msg30519\r\n\r\nHowever, the trick with HIWindowSetColorSpace does not work in OSX 10.7 Lion\r\nLooking for solutions again\r\n\r\nThanks\r\nTom\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/721","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/721/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/721/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/721/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/721","id":1497330,"number":721,"title":"ofxiPhone - Move openGL to its own thread","user":{"login":"cerupcat","id":204151,"avatar_url":"https://secure.gravatar.com/avatar/91b3d4bfbbb99d840b096cde3af877bf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"91b3d4bfbbb99d840b096cde3af877bf","url":"https://api.github.com/users/cerupcat","html_url":"https://github.com/cerupcat","followers_url":"https://api.github.com/users/cerupcat/followers","following_url":"https://api.github.com/users/cerupcat/following","gists_url":"https://api.github.com/users/cerupcat/gists{/gist_id}","starred_url":"https://api.github.com/users/cerupcat/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cerupcat/subscriptions","organizations_url":"https://api.github.com/users/cerupcat/orgs","repos_url":"https://api.github.com/users/cerupcat/repos","events_url":"https://api.github.com/users/cerupcat/events{/privacy}","received_events_url":"https://api.github.com/users/cerupcat/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-08-26T18:43:09Z","updated_at":"2011-08-26T18:44:30Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Related forum post: http://forum.openframeworks.cc/index.php/topic,7053.0.html\r\n\r\nFrom what I understand, it's best to leave the mainThread for UIKit elements and move openGL and other things to another thread. Currently, if there's a lot of drawing then the UIKit elements are delayed and can even pause the update/draw methods entirely. Moving the drawing to it's own thread should help with this.\r\n\r\nI'm still testing, but this looks like it could be a good candidate for core integration. It has examples of threaded, single (what we currently use), and GCD (which I think is iOS 4.0 only) openGL implementation: https://github.com/Volcore/LimbicGL In my early tests, it does fix any pausing of the update/draw with the threaded example (haven't tried the others). I could use some help though trying to integrate this into OF properly.\r\n\r\nThe main example classes are here: https://github.com/Volcore/LimbicGL/tree/master/limbicgl/drivers\r\n\r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/719","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/719/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/719/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/719/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/719","id":1459353,"number":719,"title":"optimize ofEndShape() to deal with simple shapes","user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2011-08-22T16:56:27Z","updated_at":"2011-08-22T17:38:49Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"\r\nbased on this comment, \r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,5319.msg33381.html#msg33381\r\n\r\nI wonder if we can be smarter in endShape() / ofPath::tessellate() and look for simple usage (3 or 4 points, etc) before tessellating, or if the slow down is just based on the use of the ofPath object. \r\n\r\n\r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/717","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/717/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/717/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/717/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/717","id":1458979,"number":717,"title":"suggest new calc clip planes routine","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-08-22T16:02:30Z","updated_at":"2011-08-22T16:02:30Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"change\r\n\r\nfloat ofCamera::getImagePlaneDistance(ofRectangle viewport) const {\r\n\treturn getPosition().length(); //viewport.height / (2.0f * tanf(PI * fov / 360.0f));\r\n}\r\n\r\nold in comment\r\n\r\ncurrent system is abitrary\r\nsuggest new system is more sensible\r\n(i'm always working in normalised coords)\r\npls check in your life before changing :)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/716","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/716/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/716/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/716/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/716","id":1458044,"number":716,"title":"problems with stop/play in quicktime videoPlayer","user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-08-22T14:11:34Z","updated_at":"2011-08-22T14:11:34Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"http://forum.openframeworks.cc/index.php/topic,5222.msg33366.html#msg33366\r\n\r\nthere also seem to be a memory leak, when deleting a ofQuicktimeVideoPlayer"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/711","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/711/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/711/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/711/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/711","id":1414013,"number":711,"title":"Problem with ofFbo. Crashes on allocate.There were the same issue","user":{"login":"IonRod","id":886012,"avatar_url":"https://secure.gravatar.com/avatar/cf3cb346817dd8a9f8327d1af13c3d46?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"cf3cb346817dd8a9f8327d1af13c3d46","url":"https://api.github.com/users/IonRod","html_url":"https://github.com/IonRod","followers_url":"https://api.github.com/users/IonRod/followers","following_url":"https://api.github.com/users/IonRod/following","gists_url":"https://api.github.com/users/IonRod/gists{/gist_id}","starred_url":"https://api.github.com/users/IonRod/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/IonRod/subscriptions","organizations_url":"https://api.github.com/users/IonRod/orgs","repos_url":"https://api.github.com/users/IonRod/repos","events_url":"https://api.github.com/users/IonRod/events{/privacy}","received_events_url":"https://api.github.com/users/IonRod/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"state":"open","assignee":null,"milestone":null,"comments":5,"created_at":"2011-08-16T10:21:29Z","updated_at":"2011-08-16T13:39:49Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Here\r\nhttps://github.com/openframeworks/openFrameworks/issues/653\r\nI downloaded latest version but in still crashes on my old video card Nvidia GeForce Go 7200.\r\nAny idea why?\r\nofxFBOTexture works, but i got some trobles in pixel format there. \r\nofxFBOTexture uses function with postfix EXT sometimes? ofFbo without it."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/702","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/702/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/702/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/702/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/702","id":1359729,"number":702,"title":"cross platform video saving (ofVideoSaver?)","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2011-08-07T03:23:38Z","updated_at":"2011-08-07T12:19:07Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"in the past there has been ofxQtVideoSaver and a few others. i think this is a really hard problem because it basically needs to be written for each platform, but something that should eventually be solved.\r\n\r\ntwo major use cases i know are:\r\n\r\n- capturing and saving simultaneously, for long streams\r\n- capturing a quick burst of video then saving it to disk\r\n\r\nwhich would might be handled a little differently."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/701","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/701/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/701/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/701/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/701","id":1358688,"number":701,"title":"ofxOsc does not seem to work on 64bit Ubuntu","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"state":"open","assignee":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"milestone":null,"comments":6,"created_at":"2011-08-06T19:14:37Z","updated_at":"2013-03-04T12:22:29Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hi!\r\n\r\nI have problems even getting the ofxOsc Send/Receive examples talking on Ubuntu 11.04 64bit. \r\nThey compile without problems, but sometimes when I run them, communication fails somewhere along the road - input events are not shown in the receiver app. Sometimes it does not work at all.\r\n\r\nThis works all flawlessly on 32bit Ubuntu 11.04. See http://forum.openframeworks.cc/index.php/topic,6918.0.html for more details.\r\n\r\nCan anyone reproduce these problems? Any tips? How could I debug this?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/700","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/700/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/700/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/700/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/700","id":1349012,"number":700,"title":"ofBuffer with overloaded = operator","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-08-05T03:06:25Z","updated_at":"2011-08-05T03:06:25Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"very simple but helpful feature request. e.g.,\r\n\r\nofBuffer::operator=(const ofBuffer& mom) {\r\n set(mom.getBinaryBuffer(), mom.size());\r\n}\r\n\r\nthis goes along with the general \"what does the equal operator mean\" debate/discussion :)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/699","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/699/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/699/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/699/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/699","id":1343463,"number":699,"title":"loadData() does not allocate as necessary","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":1,"created_at":"2011-08-04T10:29:57Z","updated_at":"2013-02-11T12:16:29Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"this seems like an api inconsistency to me: i feel like ofTexture::loadData() is similar to ofImage::setFromPixels(), but setFromPixels() will allocate space if necessary while loadData() just prints an error if the data is larger than the allocated space.\r\n\r\ni think auto-allocation would be nice, but i might just be misunderstanding/making a false comparison here."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/697","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/697/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/697/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/697/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/697","id":1334657,"number":697,"title":"videoinput lib global statics","user":{"login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","html_url":"https://github.com/danomatika","followers_url":"https://api.github.com/users/danomatika/followers","following_url":"https://api.github.com/users/danomatika/following","gists_url":"https://api.github.com/users/danomatika/gists{/gist_id}","starred_url":"https://api.github.com/users/danomatika/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danomatika/subscriptions","organizations_url":"https://api.github.com/users/danomatika/orgs","repos_url":"https://api.github.com/users/danomatika/repos","events_url":"https://api.github.com/users/danomatika/events{/privacy}","received_events_url":"https://api.github.com/users/danomatika/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":9,"created_at":"2011-08-03T02:27:52Z","updated_at":"2013-02-11T12:16:29Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I'm trying to build ofxPd in Visual Studio and running into multiple define issues related to the videoinput lib, namely static `verbose`: https://github.com/openframeworks/openFrameworks/blob/master/libs/videoInput/include/videoInput.h#L115\r\n\r\nCouldn't this variable as well as `comInitCount` be moved to the implementation files? or at least in a header hidden from the global namespace? At the least, `verbose` could be renamed to something not so common ..."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/684","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/684/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/684/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/684/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/684","id":1302375,"number":684,"title":"ofxiPhoneKeyboard should have disable/enable methods for auto correction","user":{"login":"mcanet","id":308759,"avatar_url":"https://secure.gravatar.com/avatar/e4d2b0151a843dde7b815b848170d6e9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e4d2b0151a843dde7b815b848170d6e9","url":"https://api.github.com/users/mcanet","html_url":"https://github.com/mcanet","followers_url":"https://api.github.com/users/mcanet/followers","following_url":"https://api.github.com/users/mcanet/following","gists_url":"https://api.github.com/users/mcanet/gists{/gist_id}","starred_url":"https://api.github.com/users/mcanet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mcanet/subscriptions","organizations_url":"https://api.github.com/users/mcanet/orgs","repos_url":"https://api.github.com/users/mcanet/repos","events_url":"https://api.github.com/users/mcanet/events{/privacy}","received_events_url":"https://api.github.com/users/mcanet/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"milestone":null,"comments":0,"created_at":"2011-07-28T12:12:52Z","updated_at":"2012-03-10T04:40:42Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"It is very annoying if you can not disable autocorrections in ofxiPhoneKeyboard. Specially for creative uses of this class. I add code how to add this feature.\r\n\r\n[CODE] Add to ofxiPhoneKeyboard class:\r\n\r\n- (void)disableAutoCorrection;\r\n- (void)enableAutoCorrection;\r\n\r\n//--------------------------------------------------------------\r\nvoid ofxiPhoneKeyboard::disableAutoCorrection()\r\n{\r\n [keyboard disableAutoCorrection];\r\n}\r\n//--------------------------------------------------------------\r\nvoid ofxiPhoneKeyboard::enableAutoCorrection()\r\n{\r\n [keyboard enableAutoCorrection];\r\n}\r\n\r\n- (void)disableAutoCorrection\r\n{\r\n _textField.autocorrectionType = UITextAutocorrectionTypeNo;\r\n}\r\n\r\n- (void)enableAutoCorrection\r\n{\r\n _textField.autocorrectionType = UITextAutocorrectionTypeYes;\r\n}"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/679","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/679/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/679/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/679/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/679","id":1278252,"number":679,"title":"possible bug in getEuler / getOrientation / getRoll","user":{"login":"companje","id":156066,"avatar_url":"https://secure.gravatar.com/avatar/30a7e135fe77636519d74d129c60e156?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"30a7e135fe77636519d74d129c60e156","url":"https://api.github.com/users/companje","html_url":"https://github.com/companje","followers_url":"https://api.github.com/users/companje/followers","following_url":"https://api.github.com/users/companje/following","gists_url":"https://api.github.com/users/companje/gists{/gist_id}","starred_url":"https://api.github.com/users/companje/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/companje/subscriptions","organizations_url":"https://api.github.com/users/companje/orgs","repos_url":"https://api.github.com/users/companje/repos","events_url":"https://api.github.com/users/companje/events{/privacy}","received_events_url":"https://api.github.com/users/companje/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-07-24T18:26:54Z","updated_at":"2011-07-24T18:26:54Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I think there's a bug in ofQuaternion in of007. When i use ofNode's setOrientation() or ofNode setRoll I can rotate my ofNode object around the Z axis. However when I try to obtain the current rotation around the Z axis it will always give a value like -180, 0 or 180.\r\n\r\nRick"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/671","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/671/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/671/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/671/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/671","id":1262459,"number":671,"title":"isFile() segfaults on win7","user":{"login":"benben","id":124513,"avatar_url":"https://secure.gravatar.com/avatar/6aed6a0dfa09b46d6fbd5149eb56def8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"6aed6a0dfa09b46d6fbd5149eb56def8","url":"https://api.github.com/users/benben","html_url":"https://github.com/benben","followers_url":"https://api.github.com/users/benben/followers","following_url":"https://api.github.com/users/benben/following","gists_url":"https://api.github.com/users/benben/gists{/gist_id}","starred_url":"https://api.github.com/users/benben/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/benben/subscriptions","organizations_url":"https://api.github.com/users/benben/orgs","repos_url":"https://api.github.com/users/benben/repos","events_url":"https://api.github.com/users/benben/events{/privacy}","received_events_url":"https://api.github.com/users/benben/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-07-21T11:27:16Z","updated_at":"2011-07-21T11:29:24Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"changed this in dirListExample\r\n\r\n ofFile testfile;\r\n\t// you can now iterate through the files and load them into the ofImage vector\r\n\tfor(int i = 0; i < (int)dir.size(); i++){\r\n\t\timages[i].loadImage(dir.getPath(i));\r\n\t\ttestfile.open(dir.getPath(i));\r\n\t\tcout << testfile.isFile() << endl; //THIS LINE SEGFAULTS ON WIN7\r\n testfile.close();\r\n\t}"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/670","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/670/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/670/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/670/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/670","id":1261982,"number":670,"title":"mouseReleased fires mouseMoved too (win7)","user":{"login":"benben","id":124513,"avatar_url":"https://secure.gravatar.com/avatar/6aed6a0dfa09b46d6fbd5149eb56def8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"6aed6a0dfa09b46d6fbd5149eb56def8","url":"https://api.github.com/users/benben","html_url":"https://github.com/benben","followers_url":"https://api.github.com/users/benben/followers","following_url":"https://api.github.com/users/benben/following","gists_url":"https://api.github.com/users/benben/gists{/gist_id}","starred_url":"https://api.github.com/users/benben/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/benben/subscriptions","organizations_url":"https://api.github.com/users/benben/orgs","repos_url":"https://api.github.com/users/benben/repos","events_url":"https://api.github.com/users/benben/events{/privacy}","received_events_url":"https://api.github.com/users/benben/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2011-07-21T09:34:52Z","updated_at":"2011-07-21T10:39:29Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"just added output to all events in an emptyExample on windows7 64bit.\r\n\r\nif im clicking, the following output occurs even if the mouse is not moved\r\n\r\n mousePressed\r\n mouseReleased\r\n mouseMoved"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/652","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/652/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/652/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/652/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/652","id":1231959,"number":652,"title":"ofAppGlutWindow/ofEvents: pressedKeys accumulate in special cases","user":{"login":"bakercp","id":300484,"avatar_url":"https://secure.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","url":"https://api.github.com/users/bakercp","html_url":"https://github.com/bakercp","followers_url":"https://api.github.com/users/bakercp/followers","following_url":"https://api.github.com/users/bakercp/following","gists_url":"https://api.github.com/users/bakercp/gists{/gist_id}","starred_url":"https://api.github.com/users/bakercp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bakercp/subscriptions","organizations_url":"https://api.github.com/users/bakercp/orgs","repos_url":"https://api.github.com/users/bakercp/repos","events_url":"https://api.github.com/users/bakercp/events{/privacy}","received_events_url":"https://api.github.com/users/bakercp/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":5,"created_at":"2011-07-15T18:49:46Z","updated_at":"2012-01-08T04:45:01Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"In some cases, when modifier keys are used, the pressedKeys set will accumulate keys.\r\n\r\nThis happens because \"modifier-up\" messages are not sent in the same way as normal and special keys.\r\n\r\nTo test, watch the size of the pressedKeys:\r\n\r\n cout << pressedKeys.size() << \" num pressed keys \" << endl;\r\n\r\nPress a modifier key and a normal key -- say ctrl-a. If the 'a' is lifted first, then the modified-a key int is removed from the pressedKeys set. If CTRL is released before the 'a', then the non-modified-a key-up int is sent, and it is not erased from the pressedKeys set. If this is repeated with different modifier+key downs / ups the accumulation occurs.\r\n\r\nUltimately, there needs to be better handling of modifier keys. Perhaps there is a way to use the modifier masks keep track of modifier keys with a call to glutGetModifiers() in the keyboard_cb and keyboard_up_cb static methods?\r\n\r\nIt looks like progress has been made toward this in ofConstants.h\r\n\r\n\t#define OF_KEY_CTRL\t\t\t0x0200\r\n\t#define OF_KEY_ALT\t\t\t0x0300\r\n\t#define OF_KEY_SHIFT\t\t0x0400\r\n\r\nBut it seems to have stopped there.\r\n\r\nI'm happy to work on this -- any suggestions on a strategy? Perhaps this is already being addressed of 007?\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/651","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/651/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/651/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/651/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/651","id":1230184,"number":651,"title":"ofFBO + ofCamera = unwanted offset","user":{"login":"toxin20","id":123776,"avatar_url":"https://secure.gravatar.com/avatar/05af9e4d2d68692f010edaaa9e0e178d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"05af9e4d2d68692f010edaaa9e0e178d","url":"https://api.github.com/users/toxin20","html_url":"https://github.com/toxin20","followers_url":"https://api.github.com/users/toxin20/followers","following_url":"https://api.github.com/users/toxin20/following","gists_url":"https://api.github.com/users/toxin20/gists{/gist_id}","starred_url":"https://api.github.com/users/toxin20/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/toxin20/subscriptions","organizations_url":"https://api.github.com/users/toxin20/orgs","repos_url":"https://api.github.com/users/toxin20/repos","events_url":"https://api.github.com/users/toxin20/events{/privacy}","received_events_url":"https://api.github.com/users/toxin20/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2011-07-15T13:21:44Z","updated_at":"2011-07-20T19:04:31Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"If you use those these two together the 3d objects get an unwanted offset\r\n\r\ncode:\r\n\r\n```c++\r\nvoid testApp::draw()\r\n{\r\n \r\n cam.begin();\r\n ofPushMatrix();\r\n ofSetColor(255,255,255);\r\n ofBox(200);\r\n ofPopMatrix();\r\n cam.end();\r\n \r\n \r\n fbo.begin();\r\n cam.begin();\r\n \r\n ofClear(0);\r\n ofPushMatrix();\r\n ofSetColor(0,0,0);\r\n ofBox(200);\r\n ofPopMatrix();\r\n \r\n cam.end();\r\n fbo.end();\r\n \r\n \r\n glPushMatrix();\r\n //ofTranslate(0,6,0); <--- now i'm using something like this to \"repair\" it\r\n ofSetColor(255,255,255,255);\r\n glScalef(1,-1,1);\r\n fbo.draw(0,- ofGetHeight());\r\n glPopMatrix();\r\n \r\n \r\n \r\n}\r\n```\r\n\r\nNormally the two boxes should overlap completely, instead it looks like this:\r\n\r\n![screen1](http://i51.tinypic.com/11cfi1l.png)\r\n![screen2](http://i55.tinypic.com/2ewnv5i.png)\r\n\r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/646","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/646/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/646/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/646/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/646","id":1216274,"number":646,"title":"ofQuaternion::makeRotate takes degrees, used to take radians, documentation says radians","user":{"login":"andreasmuller","id":791114,"avatar_url":"https://secure.gravatar.com/avatar/210831a04d36f1aa26413ecbdbd4b07c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"210831a04d36f1aa26413ecbdbd4b07c","url":"https://api.github.com/users/andreasmuller","html_url":"https://github.com/andreasmuller","followers_url":"https://api.github.com/users/andreasmuller/followers","following_url":"https://api.github.com/users/andreasmuller/following","gists_url":"https://api.github.com/users/andreasmuller/gists{/gist_id}","starred_url":"https://api.github.com/users/andreasmuller/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/andreasmuller/subscriptions","organizations_url":"https://api.github.com/users/andreasmuller/orgs","repos_url":"https://api.github.com/users/andreasmuller/repos","events_url":"https://api.github.com/users/andreasmuller/events{/privacy}","received_events_url":"https://api.github.com/users/andreasmuller/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2011-07-13T15:18:04Z","updated_at":"2011-07-19T00:31:38Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"\r\nA tiny issue I spotted:\r\n\r\nofQuaternion.cpp, line 14:\r\n\r\n```C++\r\n/// Set the elements of the Quat to represent a rotation of angle\r\n/// (radians) around the axis (x,y,z)\r\nvoid ofQuaternion::makeRotate( float angle, float x, float y, float z ) {\r\n\tangle = ofDegToRad(angle);\r\n```\r\n\r\nof**X**Quaternion::makeRotate used to take radians, only noticed as I was moving some old code over, otherwise I would have just looked at the code in ofQuaternion.cpp to see the angle type. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/645","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/645/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/645/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/645/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/645","id":1209436,"number":645,"title":"ofVideoGrabber::listDevices() does not list devices when initGrabber not called","user":{"login":"roxlu","id":358809,"avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","url":"https://api.github.com/users/roxlu","html_url":"https://github.com/roxlu","followers_url":"https://api.github.com/users/roxlu/followers","following_url":"https://api.github.com/users/roxlu/following","gists_url":"https://api.github.com/users/roxlu/gists{/gist_id}","starred_url":"https://api.github.com/users/roxlu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/roxlu/subscriptions","organizations_url":"https://api.github.com/users/roxlu/orgs","repos_url":"https://api.github.com/users/roxlu/repos","events_url":"https://api.github.com/users/roxlu/events{/privacy}","received_events_url":"https://api.github.com/users/roxlu/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":{"login":"obviousjim","id":321434,"avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","url":"https://api.github.com/users/obviousjim","html_url":"https://github.com/obviousjim","followers_url":"https://api.github.com/users/obviousjim/followers","following_url":"https://api.github.com/users/obviousjim/following","gists_url":"https://api.github.com/users/obviousjim/gists{/gist_id}","starred_url":"https://api.github.com/users/obviousjim/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/obviousjim/subscriptions","organizations_url":"https://api.github.com/users/obviousjim/orgs","repos_url":"https://api.github.com/users/obviousjim/repos","events_url":"https://api.github.com/users/obviousjim/events{/privacy}","received_events_url":"https://api.github.com/users/obviousjim/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":0,"created_at":"2011-07-12T16:05:23Z","updated_at":"2013-02-11T12:16:29Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"^^^^\r\nTried on Mac:\r\nhttps://gist.github.com/1078282"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/643","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/643/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/643/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/643/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/643","id":1208289,"number":643,"title":"8 BPP (grayscale) ofImage saves blank on Windows, fine on os x","user":{"login":"obviousjim","id":321434,"avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","url":"https://api.github.com/users/obviousjim","html_url":"https://github.com/obviousjim","followers_url":"https://api.github.com/users/obviousjim/followers","following_url":"https://api.github.com/users/obviousjim/following","gists_url":"https://api.github.com/users/obviousjim/gists{/gist_id}","starred_url":"https://api.github.com/users/obviousjim/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/obviousjim/subscriptions","organizations_url":"https://api.github.com/users/obviousjim/orgs","repos_url":"https://api.github.com/users/obviousjim/repos","events_url":"https://api.github.com/users/obviousjim/events{/privacy}","received_events_url":"https://api.github.com/users/obviousjim/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2011-07-12T13:05:25Z","updated_at":"2012-03-16T04:21:18Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"https://gist.github.com/1077933\r\n\r\nsaving images converted to 8PP using ofImage::setImageType(OF_IMAGE_GRAYSCALE) and then calling saveImage() save blank on windows, but works on OS X\r\n\r\ntraced the issue down to the call to FreeImage_Save(), both seem to be the same. not sure what the problem is\r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/642","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/642/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/642/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/642/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/642","id":1205789,"number":642,"title":"ofxiPhone: Possible delayed input/touch event issue ","user":{"login":"cerupcat","id":204151,"avatar_url":"https://secure.gravatar.com/avatar/91b3d4bfbbb99d840b096cde3af877bf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"91b3d4bfbbb99d840b096cde3af877bf","url":"https://api.github.com/users/cerupcat","html_url":"https://github.com/cerupcat","followers_url":"https://api.github.com/users/cerupcat/followers","following_url":"https://api.github.com/users/cerupcat/following","gists_url":"https://api.github.com/users/cerupcat/gists{/gist_id}","starred_url":"https://api.github.com/users/cerupcat/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cerupcat/subscriptions","organizations_url":"https://api.github.com/users/cerupcat/orgs","repos_url":"https://api.github.com/users/cerupcat/repos","events_url":"https://api.github.com/users/cerupcat/events{/privacy}","received_events_url":"https://api.github.com/users/cerupcat/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"milestone":null,"comments":1,"created_at":"2011-07-12T02:46:23Z","updated_at":"2012-08-12T12:19:07Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Forum issue: http://forum.openframeworks.cc/index.php/topic,6316.new.html#new\r\n\r\nThis may be related to using CADisplayLink. When openGL seems to be pushed a bit, touch events seem to drop or are delayed. When using NSTimer in ofxiPhoneAppDelegate instead of CADisplayLink this does not occur.\r\n\r\nIt may be beneficial for developers to set whether they'd like to use CADisplayLink (if available) vs NSTimer for rendering or not."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/631","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/631/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/631/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/631/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/631","id":1185346,"number":631,"title":"ofImage::saveImage() - saving from png to gif creates grayscale image","user":{"login":"roxlu","id":358809,"avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","url":"https://api.github.com/users/roxlu","html_url":"https://github.com/roxlu","followers_url":"https://api.github.com/users/roxlu/followers","following_url":"https://api.github.com/users/roxlu/following","gists_url":"https://api.github.com/users/roxlu/gists{/gist_id}","starred_url":"https://api.github.com/users/roxlu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/roxlu/subscriptions","organizations_url":"https://api.github.com/users/roxlu/orgs","repos_url":"https://api.github.com/users/roxlu/repos","events_url":"https://api.github.com/users/roxlu/events{/privacy}","received_events_url":"https://api.github.com/users/roxlu/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2011-07-07T21:37:47Z","updated_at":"2011-07-12T13:03:00Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"See title and test code:\r\nhttps://gist.github.com/952bd35591dc0cb23f61"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/618","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/618/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/618/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/618/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/618","id":1169032,"number":618,"title":"call ofEasyCam::setPosition in testApp::setup() is forgotten","user":{"login":"roxlu","id":358809,"avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","url":"https://api.github.com/users/roxlu","html_url":"https://github.com/roxlu","followers_url":"https://api.github.com/users/roxlu/followers","following_url":"https://api.github.com/users/roxlu/following","gists_url":"https://api.github.com/users/roxlu/gists{/gist_id}","starred_url":"https://api.github.com/users/roxlu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/roxlu/subscriptions","organizations_url":"https://api.github.com/users/roxlu/orgs","repos_url":"https://api.github.com/users/roxlu/repos","events_url":"https://api.github.com/users/roxlu/events{/privacy}","received_events_url":"https://api.github.com/users/roxlu/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-07-05T18:23:34Z","updated_at":"2011-07-06T18:09:03Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Setting the position of an ofEasyCam instance in ofSetup() does not work. What does work in testApp::setup() is calling ofEasyCam::setDistance(). When calling ofEasyCam::setPosition() in for example testApp::draw() does work.\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/612","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/612/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/612/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/612/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/612","id":1124068,"number":612,"title":"need conversion ofMatrix3x3<->ofMatrix4x4","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-06-27T18:30:26Z","updated_at":"2011-06-27T18:30:26Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Currently there doesn't appear to be any way to do this other than by hand\r\nAlso it would be highly useful ofMatrix3x3 in general had equivalent accessors to ofMatrix4x4"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/605","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/605/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/605/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/605/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/605","id":1067300,"number":605,"title":"function wrapping glMultMatrixf in ofMatrix4x4","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2011-06-16T13:13:35Z","updated_at":"2011-10-04T10:10:06Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Need some way of applying current ofMatrix4x4 to the scene without going down to gl calls"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/591","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/591/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/591/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/591/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/591","id":984564,"number":591,"title":"problem with ofImage resize","user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-06-01T13:56:17Z","updated_at":"2011-06-01T13:56:17Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"http://forum.openframeworks.cc/index.php/topic,6370.0.html\r\n\r\nwhen they are not power of 2 perhaps?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/590","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/590/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/590/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/590/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/590","id":978212,"number":590,"title":"ofxTCPManager.receive() - EWOULDBLOCK on Windows","user":{"login":"cristobal","id":155505,"avatar_url":"https://secure.gravatar.com/avatar/c7f941e0c10696b758ae8792714a6744?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"c7f941e0c10696b758ae8792714a6744","url":"https://api.github.com/users/cristobal","html_url":"https://github.com/cristobal","followers_url":"https://api.github.com/users/cristobal/followers","following_url":"https://api.github.com/users/cristobal/following","gists_url":"https://api.github.com/users/cristobal/gists{/gist_id}","starred_url":"https://api.github.com/users/cristobal/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cristobal/subscriptions","organizations_url":"https://api.github.com/users/cristobal/orgs","repos_url":"https://api.github.com/users/cristobal/repos","events_url":"https://api.github.com/users/cristobal/events{/privacy}","received_events_url":"https://api.github.com/users/cristobal/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-05-31T11:31:08Z","updated_at":"2011-05-31T12:33:31Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"### ofxNetworkUtils.h - issue 1\n\nThe default message should print out `err` instead of `errno`\n\n```\n\tdefault:\n\t\tofLog(OF_LOG_ERROR,\"ofxNetwork:\"+file+\": \" +line+\" unknown error: \" + ofToString(errno) + \" see errno.h for description of the error\");\n\t\tbreak;\n```\n\nto:\n\n```\n\tdefault:\n\t\tofLog(OF_LOG_ERROR,\"ofxNetwork:\"+file+\": \" +line+\" unknown error: \" + ofToString(err) + \" see errno.h for description of the error\");\n\t\tbreak;\n```\n\nSince errno would not be set on windows machines.\n\n\n\n\n### ofxTCPManager.cpp - issue 2\n\nIn the `Receive` method of the `ofxTCPManager` the function will always return -1 when checking for data and there is no new data and the TCPServer has been set to non-blocking.\n\nAfter changing the code in issue 1 mentioned above i got:\n\n`ofxNetwork:addons\\ofxNetwork\\src\\ofxTCPManager.cpp: 304 unknown error: 10035 see errno.h for description of the error`\n\ninstead of `error: 0` when `errno`was used.\n\nWhich on windows is the [`WSAEWOULDBLOCK`](http://msdn.microsoft.com/en-us/library/ms740668.aspx) or `EWOULDBLOCK` as defined in `ofxNetworkUtils`\n\nSo someplace in the code there should be a mechanism to check if the code is client is non-blocking and ignore the error.\nThis is `windows` only but still could be as an additional parameter to the `Receive` method. Or add it as an `switch case` for the `EWOULDBLOCK` in the `ofxNetworkUtils` and ignore the ouput and comment it.\n\nI just noticed this above when i started usin an application that i was developing on my mac an using it on windows machines this code would appear too often.\n\nSo as stated above my solution is that i added:\n\n```\n #ifdef TARGET_WIN32 // otherwise EAGAIN & EWOULDBLOCK will create a \"duplicate case value\" on Non windows\n\tcase EWOULDBLOCK: \n\t\t// \tofLog(OF_LOG_VERBOSE,\"ofxNetwork:\"+file+\": \" +line+\" EWOULDBLOCK: perhaps non-blocking\");\n\t\tbreak;\n #endif\n```\ncode and ignoring the output.\n\n\n\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/589","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/589/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/589/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/589/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/589","id":976610,"number":589,"title":"setFromPixels vs setFromExternalPixels","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-05-31T02:06:22Z","updated_at":"2011-05-31T02:06:22Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"setFromPixels has two forms: one that takes an int channels, another that takes ofImageType.\r\n\r\nsetFromExternalPixels only has one form: it takes an int channels.\r\n\r\nin my opinion, it makes sense to change them both to ofImageType only, because the int channels is susceptible to accidentally passing an ofImageType to it."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/582","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/582/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/582/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/582/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/582","id":942647,"number":582,"title":"templated code needs to be more readable","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":5,"created_at":"2011-05-23T17:46:28Z","updated_at":"2011-12-03T21:54:02Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofImage_ should be ofBaseImage, likewise with ofPixels_\n\nin general, X_ style classes should be BaseX\n\ntemplated functions that are just sitting around should also have descriptive template names.\n\nit's important for this to happen before 007, otherwise code will be written against ofImage\\_<T> etc."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/572","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/572/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/572/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/572/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/572","id":895515,"number":572,"title":"ofToggleFullscreen doesn't set width and height correctly","user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-05-13T15:28:46Z","updated_at":"2011-05-13T15:28:46Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"http://forum.openframeworks.cc/index.php?topic=6201.0"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/565","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/565/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/565/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/565/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/565","id":853551,"number":565,"title":"Textfield in ofxiPhoneKeyboard upside down in landscape","user":{"login":"labatrockwell","id":313943,"avatar_url":"https://secure.gravatar.com/avatar/e6d243a56cd069a225f56f4a388e8838?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","gravatar_id":"e6d243a56cd069a225f56f4a388e8838","url":"https://api.github.com/users/labatrockwell","html_url":"https://github.com/labatrockwell","followers_url":"https://api.github.com/users/labatrockwell/followers","following_url":"https://api.github.com/users/labatrockwell/following","gists_url":"https://api.github.com/users/labatrockwell/gists{/gist_id}","starred_url":"https://api.github.com/users/labatrockwell/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/labatrockwell/subscriptions","organizations_url":"https://api.github.com/users/labatrockwell/orgs","repos_url":"https://api.github.com/users/labatrockwell/repos","events_url":"https://api.github.com/users/labatrockwell/events{/privacy}","received_events_url":"https://api.github.com/users/labatrockwell/received_events","type":"Organization"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"milestone":null,"comments":1,"created_at":"2011-05-05T14:20:42Z","updated_at":"2012-03-10T04:48:58Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I'm fixing it using \r\n_textField.transform = CGAffineTransformMakeRotation(M_PI*1.5f);\r\nin - (void) setFrame: (CGRect) rect\r\nto fix it now."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/564","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/564/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/564/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/564/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/564","id":850096,"number":564,"title":"ofxShader for iOS","user":{"login":"chrisirhc","id":132584,"avatar_url":"https://secure.gravatar.com/avatar/22d0038769b1786fcdc0983bdb2e4033?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"22d0038769b1786fcdc0983bdb2e4033","url":"https://api.github.com/users/chrisirhc","html_url":"https://github.com/chrisirhc","followers_url":"https://api.github.com/users/chrisirhc/followers","following_url":"https://api.github.com/users/chrisirhc/following","gists_url":"https://api.github.com/users/chrisirhc/gists{/gist_id}","starred_url":"https://api.github.com/users/chrisirhc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chrisirhc/subscriptions","organizations_url":"https://api.github.com/users/chrisirhc/orgs","repos_url":"https://api.github.com/users/chrisirhc/repos","events_url":"https://api.github.com/users/chrisirhc/events{/privacy}","received_events_url":"https://api.github.com/users/chrisirhc/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2011-05-04T18:35:58Z","updated_at":"2011-12-03T21:20:01Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Does anybody know the status of this?\r\nI would like to help but I'm not sure where to start. Is the `iphone-dev-0061` the branch to work on this?\r\nI just want to know what's been done or whether there are plans in the works.\r\n\r\nI have posted this in the forum but have not received any response.\r\nhttp://forum.openframeworks.cc/index.php/topic,4089.msg29156.html#msg29156"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/555","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/555/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/555/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/555/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/555","id":812623,"number":555,"title":"ofxOpenCv -- ofxCvHaarFinder should have a draw function","user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-04-26T00:36:47Z","updated_at":"2011-04-26T00:37:56Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"nothing fancy, but I have an implementation of ofxCvHaarFinder that draws, and it's useful for debugging. something like:\n\n``` c++\n void ofxCvHaarFinder::draw( float x, float y ) {\n\t\t// ofPushStyle(); ?\n\t\tofEnableAlphaBlending();\n\t\tofSetColor( 255,0,200,100 );\n\t\tglPushMatrix();\n\t\t\n\t\tglTranslatef( x, y, 0.0 );\n\t\t\n\t\tofNoFill();\n\t\tfor( int i=0; i; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"9d1c9cd0db105699c994ba8b16296c1b"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 11 Mar 2013 10:13:24 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/502","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/502/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/502/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/502/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/502","id":684091,"number":502,"title":"ofSetOrientation doesn't work for cairo","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":3,"created_at":"2011-03-18T09:17:36Z","updated_at":"2013-02-11T12:16:29Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"you need to use bUse3D flag but even then graphics aren't saved to pdf as they look on screen. \r\ntry the OF_ORIENTATION_90_LEFT or 90_RIGHT to reproduce. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/500","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/500/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/500/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/500/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/500","id":672608,"number":500,"title":"missing const version of getPixelsRef()","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2011-03-14T19:14:21Z","updated_at":"2011-12-03T10:41:35Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"right now ofImage::getPixelsRef() is always non-const, as well as ofImage::getPixels()"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/495","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/495/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/495/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/495/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/495","id":659446,"number":495,"title":"osx movieplayer problem on reloading","user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-03-09T16:17:56Z","updated_at":"2011-03-09T16:17:56Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"http://www.openframeworks.cc/forum/viewtopic.php?f=7&t=5729&view=unread#unread"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/491","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/491/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/491/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/491/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/491","id":646846,"number":491,"title":"GLUT 007 hack","user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-03-04T14:44:53Z","updated_at":"2011-03-04T14:44:53Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"it seems that some commented defines are still being preprocessed and making gdb behave weird:\r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=4&t=5602&view=unread#unread"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/490","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/490/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/490/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/490/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/490","id":643861,"number":490,"title":"close corners on basic shapes?","user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-03-03T16:35:17Z","updated_at":"2011-03-03T16:35:17Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"http://www.openframeworks.cc/forum/viewtopic.php?f=8&t=5678&view=unread#unread\r\n\r\nperhaps use style.linewith? won't work if you use glLineWidth though"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/463","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/463/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/463/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/463/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/463","id":581395,"number":463,"title":"object init/load state is not consistently testable","user":{"login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","html_url":"https://github.com/danomatika","followers_url":"https://api.github.com/users/danomatika/followers","following_url":"https://api.github.com/users/danomatika/following","gists_url":"https://api.github.com/users/danomatika/gists{/gist_id}","starred_url":"https://api.github.com/users/danomatika/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danomatika/subscriptions","organizations_url":"https://api.github.com/users/danomatika/orgs","repos_url":"https://api.github.com/users/danomatika/repos","events_url":"https://api.github.com/users/danomatika/events{/privacy}","received_events_url":"https://api.github.com/users/danomatika/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":0,"created_at":"2011-02-07T19:58:23Z","updated_at":"2013-02-11T12:16:29Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I like to be able to know when an object has successfully initialized or loaded and OF provides for this, for the most part, but in an inconsistent manner ie\r\n\r\nofVideoGrabber::initGrabber() returns a bool, but ofVideoGrabber:bInitialized is protected and therefore not accessible\r\n\r\nwhile\r\n\r\nofTrueTypeFont::bLoadedOk is public, but ofTrueTypeFont::loadFont() returns void\r\n\r\nand\r\n\r\nofImage::loadImage() returns a bool and ofLoadImage::bAllocated() returns a bool, yet ofImage::setFromPixels() returns void\r\n\r\nI propose all loadable/initable objects have loading functions which always return a bool and a testable function (isInited(), isLoaded(), etc) for use after loading. Ideally, the testable functions would always be named the same ie myImage.isLoaded(), myVideoGrabber().isLoaded(), myFont.isLoaded() but of course a general name may not apply to all situations (myVideoGrabber.isInited() probably makes more sense).\r\n\r\nHell, all the load functions could be overloaded ie ofImage::load(string filename), ofImage::load(ofPixels pixels), ofImage::load(unsigned char* pixels) across different objects, ofTrueTypeFont::load(string filename), ofVideoGrabber::load(int w, int h, int deviceID). This consistency looks nice to anal me. but might be confusing to newbies and of course would break old code (unless wrapped for legacy compatibility). It seems a little annoying that every objects seems to have it's own way of checking this and that ..."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/462","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/462/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/462/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/462/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/462","id":580717,"number":462,"title":"OpenCV cvSobel() not working with latest master branch","user":{"login":"nardove","id":277690,"avatar_url":"https://secure.gravatar.com/avatar/8022cb5f529975afbc64cc9312008d8c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8022cb5f529975afbc64cc9312008d8c","url":"https://api.github.com/users/nardove","html_url":"https://github.com/nardove","followers_url":"https://api.github.com/users/nardove/followers","following_url":"https://api.github.com/users/nardove/following","gists_url":"https://api.github.com/users/nardove/gists{/gist_id}","starred_url":"https://api.github.com/users/nardove/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nardove/subscriptions","organizations_url":"https://api.github.com/users/nardove/orgs","repos_url":"https://api.github.com/users/nardove/repos","events_url":"https://api.github.com/users/nardove/events{/privacy}","received_events_url":"https://api.github.com/users/nardove/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-02-07T15:58:19Z","updated_at":"2012-12-04T10:17:24Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hi,\n\nI get the following error:\n\n**OF_WARNING: ofBaseVideoPlayer::setPixelFormat not implemented\nOpenCV Error: Assertion failed (src.size() == dst.size() && src.channels() == dst.channels() && ((src.depth() == CV_8U && (dst.depth() == CV_16S || dst.depth() == CV_32F)) || (src.depth() == CV_32F && dst.depth() == CV_32F))) in cvSobel, file /Users/theo/Documents/CODE/__OPENFRAMEWORKS/gitOF/__BuildAllLibs/OpenCV-2.2.0/modules/imgproc/src/deriv.cpp, line 347\nterminate called after throwing an instance of 'cv::Exception'\n what(): /Users/theo/Documents/CODE/__OPENFRAMEWORKS/gitOF/__BuildAllLibs/OpenCV-2.2.0/modules/imgproc/src/deriv.cpp:347: error: (-215) src.size() == dst.size() && src.channels() == dst.channels() && ((src.depth() == CV_8U && (dst.depth() == CV_16S || dst.depth() == CV_32F)) || (src.depth() == CV_32F && dst.depth() == CV_32F)) in function cvSobel**\n\nWhen I try to call the cvSobel method like this:\ncvSobel( grayImage.getCvImage(), grayImage.getCvImage(), 0, 1, 3 );\n\nThis works fine in 0062.\n\nCheers\n- rS"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/460","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/460/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/460/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/460/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/460","id":579790,"number":460,"title":"saveImage() and other save operations should create missing directories","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"milestone":null,"comments":8,"created_at":"2011-02-07T07:52:25Z","updated_at":"2012-03-08T15:56:48Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"i feel like it happens relatively often where i try to save an image (for example) and the parent directories don't exist, so it just fails without really saying anything.\r\n\r\nit would be nice if the dir(s) were just created automatically for you."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/454","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/454/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/454/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/454/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/454","id":578069,"number":454,"title":"ofTexture::allocate not checking for unnecessary reallocation","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-02-06T04:26:44Z","updated_at":"2011-02-06T04:26:44Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofPixels::allocate is smart in that it doesn't reallocate if you ask for the same size as what's already there. ofTexture should work the same way to avoid unnecessary overhead."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/449","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/449/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/449/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/449/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/449","id":568540,"number":449,"title":"ofViewport doesn't work with ofSetOrientation","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-02-02T00:03:09Z","updated_at":"2011-02-02T00:03:09Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"maybe a generic 'transformer' function would handle both this and mouse coordinates, and anything else? ofPoint ofGetAsbolutePosition(x,y)?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/446","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/446/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/446/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/446/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/446","id":565122,"number":446,"title":"no way to get imageType of ofVideoGrabber","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-01-31T19:26:41Z","updated_at":"2011-01-31T19:26:41Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofVideoGrabber has getOFPixels in the .h, but it isn't implemented in the .cpp.\r\n\r\nmaybe this is just a signal that ofPixels stuff needs to be resolved soon... :) i'd be glad to help with this if possible."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/424","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/424/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/424/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/424/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/424","id":556923,"number":424,"title":"Check ofShader Texture Wrap Parameters","user":{"login":"NickHardeman","id":142694,"avatar_url":"https://secure.gravatar.com/avatar/4fc88ba881fee72fc4c5de473dc2ebbf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"4fc88ba881fee72fc4c5de473dc2ebbf","url":"https://api.github.com/users/NickHardeman","html_url":"https://github.com/NickHardeman","followers_url":"https://api.github.com/users/NickHardeman/followers","following_url":"https://api.github.com/users/NickHardeman/following","gists_url":"https://api.github.com/users/NickHardeman/gists{/gist_id}","starred_url":"https://api.github.com/users/NickHardeman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/NickHardeman/subscriptions","organizations_url":"https://api.github.com/users/NickHardeman/orgs","repos_url":"https://api.github.com/users/NickHardeman/repos","events_url":"https://api.github.com/users/NickHardeman/events{/privacy}","received_events_url":"https://api.github.com/users/NickHardeman/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2011-01-27T19:43:31Z","updated_at":"2011-12-02T21:05:54Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I thought checking for custom texture wrapping in ofShader might be useful. Not sure how to add a label to this :/\n\n#include ofGraphics.h\n\nvoid setUniformTexture(const char* name, ofBaseHasTexture& img, int textureLocation=-1);\nvoid setUniformTexture(const char* name, ofTexture& img, int textureLocation=-1);\n\nvoid ofShader::setUniformTexture(const char* name, ofTexture& tex, int textureLocation) {\n\tif(bLoaded) {\n\t\t\n\t\tGLfloat wrapS = -1;\n\t\tGLfloat wrapT = -1;\n\t\t\n\t\tif (ofGetUsingCustomTextureWrap()) {\n\t\t\tglGetTexParameterfv(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, &wrapS);\n\t\t\tglGetTexParameterfv(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, &wrapT);\n\t\t}\n\t\t\n\t\tofTextureData texData = tex.getTextureData();\n\t\tif (textureLocation < 0) textureLocation = texData.textureID;\n\t\tglActiveTexture(GL_TEXTURE0 + textureLocation);\n\t\tglEnable(texData.textureTarget);\n\t\t\n\t\tif(wrapS > 0) glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, wrapS);\n\t\tif(wrapT > 0) glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, wrapT);\n\t\t\n\t\tglBindTexture(texData.textureTarget, texData.textureID);\n\t\tglDisable(texData.textureTarget);\n\t\tsetUniform1i(name, texData.textureID);\n\t\tglActiveTexture(GL_TEXTURE0);\n\t}\n}"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/418","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/418/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/418/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/418/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/418","id":543729,"number":418,"title":"something to wrap glMultMatrixf","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-01-22T15:57:37Z","updated_at":"2011-01-22T15:57:37Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"suggestions:\r\n\r\n ofPopMatrix(ofMatrix4x4 m)\r\n\r\n ofMultMatrix(ofMatrix4x4 m)\r\n\r\n ofMatrix4x4::apply();\r\n ofMatrix4x4::push();"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/417","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/417/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/417/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/417/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/417","id":543694,"number":417,"title":"3D isn't scale invariant in certain parts","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-01-22T15:24:07Z","updated_at":"2011-01-22T15:24:07Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"e.g.\r\n\r\n void ofEasyCam::reset() {\r\n\ttarget.resetTransform();\r\n\tdistance = 100;\r\n }\r\n\r\nofNode's\r\n\tvirtual void customDraw() {\r\n\t\tofBox(10);\r\n\t\tofDrawAxis(20);\r\n\t}\r\n\r\nsuggestions:\r\n\r\nglobal variable called something like 'base3DScaleFactor = 10.0f' which will affect all of these current constant scale factors"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/412","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/412/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/412/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/412/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/412","id":539845,"number":412,"title":"add setMultisampling method to glutWindow","user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-01-20T19:33:30Z","updated_at":"2011-01-20T19:33:30Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"multisampling is now working in linux through the display string option. perhaps we could add a method to easily set it if it also works on win/osx"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/410","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/410/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/410/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/410/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/410","id":539744,"number":410,"title":"ofCamera / ofEasyCamera does not work correctly for iPhone / iPad","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":11,"created_at":"2011-01-20T18:59:10Z","updated_at":"2013-02-11T12:16:29Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Needs to take into account the rotation and the flipping happening in ofAppiPhoneWindow::timerLoop() \n\nAlso the internal call to ofViewport causes clipping in horizontal mode. \n\nIts currently very difficult to setup the camera correctly for iPad / iPhone - would be great if the default for ofCamera would be to start with the typical OF camera view. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/406","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/406/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/406/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/406/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/406","id":537416,"number":406,"title":"ofEnableLighting","user":{"login":"vanderlin","id":149997,"avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","url":"https://api.github.com/users/vanderlin","html_url":"https://github.com/vanderlin","followers_url":"https://api.github.com/users/vanderlin/followers","following_url":"https://api.github.com/users/vanderlin/following","gists_url":"https://api.github.com/users/vanderlin/gists{/gist_id}","starred_url":"https://api.github.com/users/vanderlin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vanderlin/subscriptions","organizations_url":"https://api.github.com/users/vanderlin/orgs","repos_url":"https://api.github.com/users/vanderlin/repos","events_url":"https://api.github.com/users/vanderlin/events{/privacy}","received_events_url":"https://api.github.com/users/vanderlin/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-01-19T19:39:36Z","updated_at":"2011-01-19T19:39:37Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofLight bug not sure what the ios equivalent is..\r\n\r\nglColorMaterial(GL_FRONT_AND_BACK, GL_AMBIENT_AND_DIFFUSE); is not supported in IOS"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/405","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/405/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/405/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/405/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/405","id":536614,"number":405,"title":"ofViewport doesn't match rest of openFrameworks coordinates","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-01-19T13:24:53Z","updated_at":"2011-01-19T13:24:54Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Suggest change line 126 of ofGraphics.h to\r\n\tglViewport(x, ofGetHeight() - y - height, width, height);\r\n\r\nto be in line with rest of openFrameworks coordinate system\r\ne.g. ofRect(myRect) matches ofViewport(myRect)\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/403","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/403/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/403/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/403/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/403","id":532954,"number":403,"title":"setPixelFormat shouldn't be stored in videoGrabber/Player","user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2011-01-17T23:39:31Z","updated_at":"2012-06-18T07:28:14Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"it should be only in the implementations and queried by the grabber/player in case an implementation doesn't support a format if not the app can crash or have really weird results"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/400","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/400/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/400/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/400/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/400","id":532096,"number":400,"title":"ofTTF should have setAnchorPercent so you can draw strings centered, right aligned etc","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-01-17T16:37:42Z","updated_at":"2011-01-17T16:37:42Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":""},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/391","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/391/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/391/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/391/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/391","id":529705,"number":391,"title":"ofGetPreviousMouseX/Y() does not update per frame","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2011-01-16T07:21:15Z","updated_at":"2011-03-20T17:33:14Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"every frame, it should update the pmouse value. so if you don't move the mouse, the pmouse value is equal to the current value."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/389","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/389/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/389/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/389/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/389","id":529700,"number":389,"title":"mouse position doesn't update until mouse is moved","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2011-01-16T07:11:53Z","updated_at":"2011-03-20T17:32:59Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"this is a limitation to glut, but it might be hackable on each system separately."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/387","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/387/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/387/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/387/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/387","id":529646,"number":387,"title":"Linker error when loading image (Poco::Net related?)","user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2011-01-16T05:57:51Z","updated_at":"2011-03-13T21:10:48Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"following error appears when i try to load an image; commenting out the call to loadImage(\"...\") makes the error go away.\n\n Undefined symbols:\n \"std::basic_ostream >& std::__ostream_insert >(std::basic_ostream >&, char const*, int)\", \n referenced from:\n Poco::Net::HTTPClientSession::proxyAuthenticateImpl(Poco::Net::HTTPRequest&)in PocoNet.a(HTTPClientSession.o)\n Poco::Net::HTTPClientSession::proxyAuthenticateImpl(Poco::Net::HTTPRequest&)in PocoNet.a(HTTPClientSession.o)\n Poco::Net::HTTPRequest::write(std::basic_ostream >&) constin PocoNet.a(HTTPRequest.o)\n Poco::Net::HTTPRequest::write(std::basic_ostream >&) constin PocoNet.a(HTTPRequest.o)\n Poco::Net::HTTPRequest::write(std::basic_ostream >&) constin PocoNet.a(HTTPRequest.o)\n Poco::Net::MessageHeader::write(std::basic_ostream >&) constin PocoNet.a(MessageHeader.o)\n Poco::Net::MessageHeader::write(std::basic_ostream >&) constin PocoNet.a(MessageHeader.o)\n Poco::Net::HTTPResponse::write(std::basic_ostream >&) constin PocoNet.a(HTTPResponse.o)\n Poco::Net::HTTPResponse::write(std::basic_ostream >&) constin PocoNet.a(HTTPResponse.o)\n\nld: symbol(s) not found\n\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/357","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/357/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/357/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/357/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/357","id":527591,"number":357,"title":"glDrawBitmapString vs GL_LIGHTING","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-01-14T19:30:31Z","updated_at":"2011-01-14T19:30:31Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"glDrawBitmapString doesn't work when GL_LIGHTING is enabled.\r\n\r\nwell, it works... but it is black because it isn't reflecting any light. regardless of the ofSetColor."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/347","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/347/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/347/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/347/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/347","id":526094,"number":347,"title":"none of the core functions report how many dimensions they work for","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-01-14T01:33:38Z","updated_at":"2011-01-14T01:33:38Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"some of the core functions only work with 2d points, others only with 3d points, some work with both. but they all take ofPoints.\r\n\r\nit's good for teaching purposes to have ofPoints because you don't have to explain what a 'vector' is, but it's unclear for advanced users whether the functions take 2d or 3d points..."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/340","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/340/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/340/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/340/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/340","id":524875,"number":340,"title":"OF wrapper for basic gl functions that aren't intuitive to newbies","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-01-13T16:16:40Z","updated_at":"2011-01-13T16:16:40Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"e.g., GL_DEPTH_TEST.\r\n\r\none of the reasons for this is that it's not obvious to newbies what common features are available.\r\n\r\nanother is that i've seen lots of people write GL_DEPTH instead, which obviously doesn't work.\r\n\r\nthere might be some others too, see processing's hint():\r\n\r\nhttp://processing.org/reference/hint_.html"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/337","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/337/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/337/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/337/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/337","id":523837,"number":337,"title":"ofFileDialog allow folder selection ( works on os x ) needs code for win and linux","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":7,"created_at":"2011-01-13T05:21:53Z","updated_at":"2013-02-11T12:13:02Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":""},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/324","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/324/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/324/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/324/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/324","id":522231,"number":324,"title":"ofPushView/ofPopView appear before ofPushMatrix/ofPopMatrix","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-01-12T15:34:48Z","updated_at":"2011-01-12T15:34:48Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ordering for code completion is a little weird."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/311","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/311/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/311/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/311/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/311","id":518434,"number":311,"title":"openFrameworksLib has ofQtUtils included twice","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-01-10T22:30:48Z","updated_at":"2011-01-10T22:30:48Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"under the /video directory"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/305","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/305/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/305/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/305/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/305","id":516844,"number":305,"title":"no implementation in ofBaseTypes","user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-01-10T06:36:27Z","updated_at":"2011-01-10T06:36:27Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"better to use aggregation (helper classes/functions) if necessary for common functionality that have implementation in those classes. making them pure abstract classes will avoid problems with multiple inheritance and easier to extend in case of different behaviour"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/302","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/302/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/302/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/302/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/302","id":516565,"number":302,"title":"Remove Poco CppUnit from all projects ( done on os x )","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":3,"created_at":"2011-01-10T02:39:28Z","updated_at":"2013-02-11T12:13:02Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":""},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/298","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/298/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/298/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/298/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/298","id":516559,"number":298,"title":"Update Freetype to latest versions. ","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"state":"open","assignee":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":4,"created_at":"2011-01-10T02:37:49Z","updated_at":"2013-02-11T12:13:02Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":""},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/292","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/292/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/292/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/292/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/292","id":516071,"number":292,"title":"ofTexture should be more flexible","user":{"login":"I33N","id":520375,"avatar_url":"https://secure.gravatar.com/avatar/ba8d7c3b4532d3747c30b9be91dc20d5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"ba8d7c3b4532d3747c30b9be91dc20d5","url":"https://api.github.com/users/I33N","html_url":"https://github.com/I33N","followers_url":"https://api.github.com/users/I33N/followers","following_url":"https://api.github.com/users/I33N/following","gists_url":"https://api.github.com/users/I33N/gists{/gist_id}","starred_url":"https://api.github.com/users/I33N/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/I33N/subscriptions","organizations_url":"https://api.github.com/users/I33N/orgs","repos_url":"https://api.github.com/users/I33N/repos","events_url":"https://api.github.com/users/I33N/events{/privacy}","received_events_url":"https://api.github.com/users/I33N/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-01-09T20:46:43Z","updated_at":"2011-01-09T20:46:43Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I think the pixeltype, the gltypeinternal and the gltype should be accessible to the user as well as the loadData(void * data, int w, int h, int glDataType) which is actually protected.\r\n\r\nActual implementation is only limited to a few choice of internalFormat which lead to choice of pixeltype and gltype. It thus doesn't allow from user specific type."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/288","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/288/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/288/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/288/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/288","id":513779,"number":288,"title":"const correctness - add const to getWidth/getHeight","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":6,"created_at":"2011-01-08T02:14:03Z","updated_at":"2011-12-03T10:49:15Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofImage::getWidth()/getHeight() are just getters that do absolutely nothing but return a copy of the width and height. these methods should be marked const.\r\n\r\n[added]: there are hacks inside ofxCv that i've had to make because getWidth/getHeight are not const correct. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/275","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/275/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/275/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/275/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/275","id":445829,"number":275,"title":"atexit(ofExitCallback);","user":{"login":"vanderlin","id":149997,"avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","url":"https://api.github.com/users/vanderlin","html_url":"https://github.com/vanderlin","followers_url":"https://api.github.com/users/vanderlin/followers","following_url":"https://api.github.com/users/vanderlin/following","gists_url":"https://api.github.com/users/vanderlin/gists{/gist_id}","starred_url":"https://api.github.com/users/vanderlin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vanderlin/subscriptions","organizations_url":"https://api.github.com/users/vanderlin/orgs","repos_url":"https://api.github.com/users/vanderlin/repos","events_url":"https://api.github.com/users/vanderlin/events{/privacy}","received_events_url":"https://api.github.com/users/vanderlin/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2010-11-30T05:13:10Z","updated_at":"2010-11-30T05:13:10Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"This is giving me some crashes. There needs to be a way to disable this when making custom windows. I have tried to do atexit(NULL); but the callback in ofRunApp(ofBaseApp * OFSA) is still being called. \r\n\r\nmaybe something like:\r\n\r\nvoid ofRunApp(ofBaseApp * OFSA, bool useExitCallback);\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/271","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/271/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/271/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/271/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/271","id":433297,"number":271,"title":"ofDrawBitmapString draws from bottom left","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":7,"created_at":"2010-11-22T21:30:40Z","updated_at":"2011-03-17T02:02:25Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"bottom left corner is inconsistent with every other drawing command in OF, should be top left instead."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/264","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/264/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/264/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/264/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/264","id":425675,"number":264,"title":"ofClear uses inconsistent arguments","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":5,"created_at":"2010-11-18T06:15:47Z","updated_at":"2011-09-19T22:47:21Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofClear(r,g,b) is inconsistent with ofBackground(r,g,b) because the alpha is 0 by default -- meaning you always have to explicitly declare the alpha to clear the background.\r\n\r\nfurthermore, because all the arguments have default values there is not/cannot exist an ofClear(gray, alpha) to match ofSetColor style"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/255","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/255/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/255/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/255/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/255","id":413771,"number":255,"title":"COMPILE SPEED UP - cleanup internal includes to avoid ofMain.h and ofConstants.h","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":4,"created_at":"2010-11-11T21:14:05Z","updated_at":"2013-02-11T12:13:02Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"A lot of OF files are including ofMain / ofConstants.h - this makes compiles super slow. Try to have files only include what they need. Or find a way to break things up into the most often used ( windows.h etc ) and less used. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/249","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/249/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/249/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/249/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/249","id":399214,"number":249,"title":"normalize option nomenclature (hide/enable/set/etc.)","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2010-11-03T22:52:08Z","updated_at":"2011-12-02T20:11:33Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofHideCursor()/ofShowCursor()\r\n\r\nofEnableArbTex()\r\nofEnableSetupScreen()\r\nofEnableDataPath()\r\nofEnableAlphaBlending()\r\nofEnableSmoothing()\r\n\r\nofSetFullscreen() + ofToggleFullscreen()\r\nofSetVerticalSync()\r\n\r\netc."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/245","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/245/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/245/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/245/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/245","id":360885,"number":245,"title":"gstreamer problems with streaming of microsoft video","user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"state":"open","assignee":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":2,"created_at":"2010-10-13T16:33:06Z","updated_at":"2013-02-11T12:16:29Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"some video to test:\r\n\r\nmmsh://live.camstreams.com/cscamglobal16?MSWMExt=.asf\r\n\r\nit works ok with totem so it should be a problem in ofGstUtils"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/228","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/228/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/228/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/228/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/228","id":309191,"number":228,"title":"remove bAllocated in ofTexture?","user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2010-09-09T14:20:55Z","updated_at":"2011-04-19T00:32:33Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"related to #221: texData.bAllocated is only used in the isAllocated method which can be changed from:\r\n\r\n bool ofTexture::bAllocated(){\r\n return texData.bAllocated;\r\n }\r\n\r\nto\r\n\r\n bool ofTexture::bAllocated(){\r\n return texData.textureID!=0;\r\n }\r\n\r\navoiding problems like #221 since we don't have two flags for the same thing"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/225","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/225/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/225/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/225/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/225","id":295913,"number":225,"title":"ofxVectorMath constants","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2010-08-31T10:54:19Z","updated_at":"2010-08-31T10:54:19Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"It would be nice to have:\r\n\r\n\tconst ofxVec2f xunit2f(1, 0), yunit2f(0, 1);\r\n\tconst ofxVec3f xunit3f(1, 0, 0), yunit3f(0, 1, 0), zunit3f(0, 0, 1);\r\n\r\nOr something similar that allows for more elegant notation when you're multiplying or adding by an axis."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/224","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/224/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/224/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/224/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/224","id":290973,"number":224,"title":"gaussian noise","user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"}],"state":"open","assignee":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"milestone":null,"comments":11,"created_at":"2010-08-26T10:21:24Z","updated_at":"2012-07-17T07:40:58Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"can this be useful?\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=25&t=4500\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/214","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/214/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/214/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/214/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/214","id":268332,"number":214,"title":"ofxOsc memory access violation. namespace issue?","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2010-08-04T05:59:22Z","updated_at":"2011-10-17T13:58:53Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofxOsc causes a memory access violation in VS2008, when you use sendMessage(ofxOscMessage) from within a class.\r\nNo error when you run that from main ofApp"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/181","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/181/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/181/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/181/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/181","id":171615,"number":181,"title":"ofxCvBlobs","user":{"login":"vanderlin","id":149997,"avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","url":"https://api.github.com/users/vanderlin","html_url":"https://github.com/vanderlin","followers_url":"https://api.github.com/users/vanderlin/followers","following_url":"https://api.github.com/users/vanderlin/following","gists_url":"https://api.github.com/users/vanderlin/gists{/gist_id}","starred_url":"https://api.github.com/users/vanderlin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vanderlin/subscriptions","organizations_url":"https://api.github.com/users/vanderlin/orgs","repos_url":"https://api.github.com/users/vanderlin/repos","events_url":"https://api.github.com/users/vanderlin/events{/privacy}","received_events_url":"https://api.github.com/users/vanderlin/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2010-04-14T15:42:22Z","updated_at":"2010-04-14T15:48:19Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"can we add moments to the blob. \n\nadd CvMoments moments to blob class\n\nand in ofxCvContourFinder.cpp line 119\n\n\t blobs[i].moments.m00 = myMoments->m00;\n\t\tblobs[i].moments.m10 = myMoments->m10;\n\t\tblobs[i].moments.m01 = myMoments->m01;\n\t\tblobs[i].moments.m20 = myMoments->m20;\n\t\tblobs[i].moments.m11 = myMoments->m11;\n\t\tblobs[i].moments.m02 = myMoments->m02;\n\t\tblobs[i].moments.m30 = myMoments->m30;\n\t\tblobs[i].moments.m21 = myMoments->m21;\n\t\tblobs[i].moments.m12 = myMoments->m12;\n\t\tblobs[i].moments.m03 = myMoments->m03;\n\t\t\n\t\tblobs[i].moments.mu20 = myMoments->mu20;\n\t\tblobs[i].moments.mu11 = myMoments->mu11;\n\t\tblobs[i].moments.mu02 = myMoments->mu02;\n\t\tblobs[i].moments.mu30 = myMoments->mu30;\n\t\tblobs[i].moments.mu21 = myMoments->mu21;\n\t\tblobs[i].moments.mu12 = myMoments->mu12;\n\t\tblobs[i].moments.mu03 = myMoments->mu03;\n\n\nthis is good for finding the angle and other info about the contour.\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/174","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/174/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/174/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/174/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/174","id":166212,"number":174,"title":"vertical sync on for mac by default","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":1,"created_at":"2010-04-06T19:43:21Z","updated_at":"2013-02-11T12:16:28Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":""},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/173","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/173/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/173/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/173/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/173","id":166211,"number":173,"title":"ofAlphaBlending default on","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":3,"created_at":"2010-04-06T19:42:34Z","updated_at":"2013-02-11T12:13:02Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":""},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/172","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/172/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/172/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/172/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/172","id":166209,"number":172,"title":"rgb + alpha -> blit to texture","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":2,"created_at":"2010-04-06T19:40:28Z","updated_at":"2013-02-11T12:13:02Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":" the idea is to be able to easily combine a rgb and alpha image into a rgba texture or ofImage. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/167","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/167/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/167/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/167/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/167","id":165898,"number":167,"title":"replace fmod","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"state":"open","assignee":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":5,"created_at":"2010-04-06T12:13:31Z","updated_at":"2012-03-03T19:40:33Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"can we do it?\r\nwe need cross platform:\r\nplayback \r\nstreaming\r\npitch\r\npan \r\nmultiplay \r\n\r\nfor us to be compatible with what exists. \r\nOpenAL seems like the best choice.\r\nWhat other options are there?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/140","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/140/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/140/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/140/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/140","id":163959,"number":140,"title":"texture compression and mipmaps for of texture","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":4,"created_at":"2010-04-02T19:43:00Z","updated_at":"2013-02-11T12:13:02Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"check out - http://www.openframeworks.cc/forum/viewtopic.php?p=19169#p19169\r\npossible integration into core. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/128","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/128/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/128/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/128/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/128","id":132671,"number":128,"title":"ofxTCPServer doesn't manage connected clients correcly","user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2010-02-14T09:40:13Z","updated_at":"2012-03-12T16:15:52Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"http://www.openframeworks.cc/forum/viewtopic.php?f=10&t=3319"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/126","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/126/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/126/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/126/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/126","id":132377,"number":126,"title":"ofATan2GL / ofVecToGL ?","user":{"login":"openframeworks","id":142866,"avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"a858611b044a8302ab14cfe752e17369","url":"https://api.github.com/users/openframeworks","html_url":"https://github.com/openframeworks","followers_url":"https://api.github.com/users/openframeworks/followers","following_url":"https://api.github.com/users/openframeworks/following","gists_url":"https://api.github.com/users/openframeworks/gists{/gist_id}","starred_url":"https://api.github.com/users/openframeworks/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/openframeworks/subscriptions","organizations_url":"https://api.github.com/users/openframeworks/orgs","repos_url":"https://api.github.com/users/openframeworks/repos","events_url":"https://api.github.com/users/openframeworks/events{/privacy}","received_events_url":"https://api.github.com/users/openframeworks/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":5,"created_at":"2010-02-13T14:22:51Z","updated_at":"2013-02-11T12:13:02Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Something that easily converts vector direction to openGL degrees?\r\nI find myself constantly trying to guess 270 - atan2(y, x)*RAD_TO_DEG ..... etc\r\nTo rotate something along a vector. \r\n\r\nMight be good to have it be aware of the GL world orientation - or have it so you pass in the up \r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/124","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/124/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/124/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/124/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/124","id":132373,"number":124,"title":"TTF type rendering in OF - fix fuzziness ","user":{"login":"openframeworks","id":142866,"avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"a858611b044a8302ab14cfe752e17369","url":"https://api.github.com/users/openframeworks","html_url":"https://github.com/openframeworks","followers_url":"https://api.github.com/users/openframeworks/followers","following_url":"https://api.github.com/users/openframeworks/following","gists_url":"https://api.github.com/users/openframeworks/gists{/gist_id}","starred_url":"https://api.github.com/users/openframeworks/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/openframeworks/subscriptions","organizations_url":"https://api.github.com/users/openframeworks/orgs","repos_url":"https://api.github.com/users/openframeworks/repos","events_url":"https://api.github.com/users/openframeworks/events{/privacy}","received_events_url":"https://api.github.com/users/openframeworks/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography","color":"DDDDDD"}],"state":"open","assignee":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":7,"created_at":"2010-02-13T14:15:25Z","updated_at":"2013-02-11T12:13:01Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"http://www.openframeworks.cc/forum/viewtopic.php?f=7&t=3299&p=17852#p17852"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/115","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/115/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/115/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/115/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/115","id":111018,"number":115,"title":"opengl stress test example","user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2010-01-12T02:56:21Z","updated_at":"2012-02-27T12:30:49Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"it would make sense to have an opengl stress test app, that can test some basic about wether or not someone has ARB support, how fast their systems are, etc. I can imagine that for 0.07, we'll be helping people debug shaders and FBOs, having some way to gauge what kind of system they are on and what it can take, will be helpful. \r\n\r\nHere's a simple test app from the Lua-AV folks that looks like a reasonable system: \r\n\r\nhttp://img191.imageshack.us/img191/1659/picture3po.png"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/107","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/107/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/107/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/107/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/107","id":104702,"number":107,"title":"should we start all OF apps with a frame rate set?","user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":8,"created_at":"2009-12-31T15:10:45Z","updated_at":"2012-02-28T14:02:04Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"at the moment, we've got it like:\r\n\r\nofAppGlutWindow::ofAppGlutWindow(){\r\n\tfps\t\t\t\t= 60.0; //give a realistic starting value - win32 issues\r\n\tbFrameRateSet\t\t= false;\r\n}\r\n\r\nbut I personally prefer all apps to start with some kind of similar frame rate (ie, examples running really fast on mac, etc). see for example: \r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?p=16520&#p16520\r\n\r\nthis kind of thing leads to less \"cross-platform-ness\" and more confusion from beginners, no? \r\n\r\n- z\r\n\r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/91","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/91/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/91/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/91/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/91","id":94898,"number":91,"title":"listDevices should return a list of strings","user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":{"login":"obviousjim","id":321434,"avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","url":"https://api.github.com/users/obviousjim","html_url":"https://github.com/obviousjim","followers_url":"https://api.github.com/users/obviousjim/followers","following_url":"https://api.github.com/users/obviousjim/following","gists_url":"https://api.github.com/users/obviousjim/gists{/gist_id}","starred_url":"https://api.github.com/users/obviousjim/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/obviousjim/subscriptions","organizations_url":"https://api.github.com/users/obviousjim/orgs","repos_url":"https://api.github.com/users/obviousjim/repos","events_url":"https://api.github.com/users/obviousjim/events{/privacy}","received_events_url":"https://api.github.com/users/obviousjim/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":13,"created_at":"2009-12-09T17:11:40Z","updated_at":"2013-02-11T12:13:01Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"videoGrabber and serial listDevices should return a vector of strings apart from printing to console"}] + diff --git a/lib/github/tests/ReplayData/PaginatedList.testCustomPerPageWithGetPage.txt b/lib/github/tests/ReplayData/PaginatedList.testCustomPerPageWithGetPage.txt new file mode 100644 index 0000000000..de424dac79 --- /dev/null +++ b/lib/github/tests/ReplayData/PaginatedList.testCustomPerPageWithGetPage.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?per_page=100&page=3 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4990'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '326617'), ('server', 'GitHub.com'), ('last-modified', 'Mon, 11 Mar 2013 11:03:21 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"e04ce5dc75d825e86180fb3da5e1f5b1"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 11 Mar 2013 11:04:36 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1385","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1385/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1385/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1385/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1385","id":5447789,"number":1385,"title":"ofOpenALSoundPlayer.cpp vs ofxOpenALSoundPlayer.cpp ?","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2012-07-05T16:29:56Z","updated_at":"2012-07-05T16:51:53Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Right now we have two OpenAL based sound players in OF. \nOne is part of ofxiPhone and one is part of the core.\n\nJust curious if the core ofOpenALSoundPlayer.cpp could be used by iOS and if we could drop/merge ofxOpenALSoundPlayer.cpp ? \nSeems weird to have both.\n\n@damiannz @julapy what do you think?\n\nTheo"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1382","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1382/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1382/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1382/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1382","id":5436804,"number":1382,"title":"rename ofxiPhone to ofxiOS","user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":25,"created_at":"2012-07-05T02:48:59Z","updated_at":"2013-02-11T12:12:35Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"think it might be time to rename ofxiPhone to ofxiOS.\nits one of those things that consistently bugs me every time i have to create a new class beginning with ofxiPhone.\niOS has moved beyond just the iPhone and i think the current naming convention can be confusing.\n\nthis will involve going through and renaming all ofxiPhone classes and adjusting all iOS examples.\n\nplease let me know if anyone has any objections to this."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1379","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1379/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1379/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1379/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1379","id":5425486,"number":1379,"title":"iOS: iPad retina ofGetWidth/Height are 2048x1536","user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":29,"created_at":"2012-07-04T10:27:33Z","updated_at":"2013-02-16T10:15:53Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"as per subject line. my suggestion/preference would be for retina to return 1024x768, same as on iOS, to be consistent with the paradigm that iOS uses normally, allowing retina and non-retina code to be identical in the testApp.\n\ni don't know how this is on iphone/ipod touch though."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1365","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1365/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1365/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1365/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1365","id":5367217,"number":1365,"title":"projectGenerator doesn't create complete iOS moviePlayerExample project","user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project-generator","name":"project-generator","color":"444444"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-06-30T12:25:54Z","updated_at":"2012-06-30T12:25:54Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"as per title, running projectGenerator on the moviePlayerExample folder skips a number of files necessary (VideoPlayerControls.* and VideoPlayerControlsDelegateForOF.*). as a result the example won't compile."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1364","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1364/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1364/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1364/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1364","id":5365386,"number":1364,"title":"ofDirectShowGrabber glitches on non-native sizes","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-06-30T03:41:12Z","updated_at":"2012-06-30T03:42:23Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"for example, when you ask for 1281x721 it will just display a black image. the pixels are definitely there, but there's some kind of texture bug. videoInput is reporting correctly that the width/height are different than the requested width/height, but ofDirectShowGrabber is not handling that correctly.\n\nalso, we should be using the built in resizing features in other parts of OF now if we can, instead of duplicating the resizing code :)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1362","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1362/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1362/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1362/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1362","id":5357380,"number":1362,"title":"simple text file loading and saving","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":10,"created_at":"2012-06-29T16:46:03Z","updated_at":"2012-11-20T00:36:55Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"i think this is the simplest way to save a string to a text file right now:\n\n````cpp\nstring str = \"hello\";\nofBuffer msg(str.c_str(), str.length());\nofBufferToFile(\"out.txt\", msg);\n````\n\nthere should be a one-line (one-function, ideally) equivalent similar to http://processing.org/reference/loadStrings_.html and http://processing.org/reference/saveStrings_.html\n\nif we made a constructor for ofBuffer that accepts a string, then it could just be:\n\n````cpp\nofBufferToFile(\"out.txt\", \"hello\");\n````\n\nand a cast operator for ofBuffer to string:\n\n\n````cpp\nstring str;\nofBufferFromFile(\"out.txt\", str);\n````\n\ni'd be ok with that, even though the naming would be a bit obscure."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1361","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1361/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1361/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1361/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1361","id":5318139,"number":1361,"title":"ofSoundPlayer::getIsPlaying() does not work with mp3","user":{"login":"prossel","id":541021,"avatar_url":"https://secure.gravatar.com/avatar/47edf7d39b59dd6fc4cb15775b8b7d5f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"47edf7d39b59dd6fc4cb15775b8b7d5f","url":"https://api.github.com/users/prossel","html_url":"https://github.com/prossel","followers_url":"https://api.github.com/users/prossel/followers","following_url":"https://api.github.com/users/prossel/following","gists_url":"https://api.github.com/users/prossel/gists{/gist_id}","starred_url":"https://api.github.com/users/prossel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/prossel/subscriptions","organizations_url":"https://api.github.com/users/prossel/orgs","repos_url":"https://api.github.com/users/prossel/repos","events_url":"https://api.github.com/users/prossel/events{/privacy}","received_events_url":"https://api.github.com/users/prossel/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"state":"open","assignee":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"milestone":null,"comments":2,"created_at":"2012-06-28T08:55:15Z","updated_at":"2012-07-04T08:17:07Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Looks like getIsPlaying is always returning false if the sound is a .mp3 file. Tested with OF71 on iOS.\n\nTo reproduce:\n\n1. use the soundPlayerExample\n1. drop a .mp3 file in the sounds folder\n1. change the filename in testApp.mm: `synth.loadSound(\"sounds/part1.mp3\");`\n1. run the app\n1. click to start playing sounds\n\nWhen the last two sounds are playing, their title turns red.\n\nThe first sound (mp3) does not turn red because getIsPlaying() returns false."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1359","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1359/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1359/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1359/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1359","id":5302782,"number":1359,"title":"ofFbo bind() and unbind() is confusing","user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":8,"created_at":"2012-06-27T17:50:20Z","updated_at":"2012-06-29T09:17:25Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"fbo.bind() should bind the FBO's texture, ie behave the same way as ofTexture.bind(). At the moment it actually binds the FBO's framebuffer. this is confusing, and the documentation is inaccurate on this point (http://www.openframeworks.cc/documentation/gl/ofFbo.html#bind).\n\ni would suggest making bind() call getTextureReference().bind(), and adding a new function bindFrameBuffer to do what bind() currently does. comments?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1358","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1358/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1358/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1358/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1358","id":5297227,"number":1358,"title":"ofxAssimpModelLoader aiMatrix4x4ToOfMatrix4x4","user":{"login":"neuroprod","id":640585,"avatar_url":"https://secure.gravatar.com/avatar/3623ccdee8e3a141ff0e8d4e8447671d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3623ccdee8e3a141ff0e8d4e8447671d","url":"https://api.github.com/users/neuroprod","html_url":"https://github.com/neuroprod","followers_url":"https://api.github.com/users/neuroprod/followers","following_url":"https://api.github.com/users/neuroprod/following","gists_url":"https://api.github.com/users/neuroprod/gists{/gist_id}","starred_url":"https://api.github.com/users/neuroprod/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/neuroprod/subscriptions","organizations_url":"https://api.github.com/users/neuroprod/orgs","repos_url":"https://api.github.com/users/neuroprod/repos","events_url":"https://api.github.com/users/neuroprod/events{/privacy}","received_events_url":"https://api.github.com/users/neuroprod/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2012-06-27T13:45:13Z","updated_at":"2012-06-27T17:56:45Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"\nline nr 86 this:\n```cpp\nfloat m[16] = { aim.a1,aim.a2,aim.a3,aim.a4,\n\t\t\t\t\taim.b1,aim.b2,aim.b3,aim.b4,\n\t\t\t\t\taim.c1,aim.c2,aim.c3,aim.c4,\n\t\t\t\t\taim.d1,aim.d2,aim.d3,aim.d4 };\n```\nshould be this\n```cpp\nfloat m[16] = { aim.a1,aim.b1,aim.c1,aim.d1,\n\t\t\t\t\taim.a2,aim.b2,aim.c2,aim.d2,\n\t\t\t\t\taim.a3,aim.b3,aim.c3,aim.d3,\n\t\t\t\t\taim.a4,aim.b4,aim.c4,aim.d4 };\n```\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1356","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1356/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1356/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1356/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1356","id":5291942,"number":1356,"title":"ofMesh statics","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2012-06-27T08:56:51Z","updated_at":"2012-06-27T15:13:32Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"hey all!\n\ni'm going back through issues this week to clean out and work on functionality.\n\nwe talked before @ofTheo and maybe marek? (iirc) about ofMesh statics\n\nMy proposal is something like 'ofMeshLibrary' which has lots of standard meshes that you can pull out or draw directly, e.g.:\n* Grid (quad, plane, etc)\n* Box\n* Sphere\n* Icosphere\n* Cylinder\n* Tube\n* Arrow\netc...\n\nfor each you could do like\n\n```c++\nofMesh myMesh;\n\nofMeshLibrary::sphere::draw(); // draw with default resolution\n\n//ofMeshLibrary::sphere::init() is called the first time you either copy or draw the mesh\nmyMesh = ofMeshLibrary::sphere; // create a local instance of sphere with default resolution\n\nofMeshLibrary::sphere::setResolution(5); // change the resolution of the static sphere\n\nmyMesh = ofMeshLibrary::sphere; // create a local instance of sphere with low resolution\n\nofMeshLibrary::sphere::draw(); // draw with reduced resolution\n```\n\nAnybody see any issues with this being in the core?\nIf not I'll start on this. We discussed it before on irc and it was mostly positive."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1354","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1354/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1354/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1354/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1354","id":5280751,"number":1354,"title":"feature suggestion: ofCamera::getXYZat(const ofVec2f & screenCoordinate)","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2012-06-26T18:43:23Z","updated_at":"2012-08-04T21:47:31Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"This would use the same method as ofxGrabCam (pull a pixel from the depth buffer and unproject)\nAnybody have any qualms about including this in ofCamera directly?\n\nalso i suggest we add:\n```glEnable(GL_DEPTH_FUNC);``` to ```ofCamera::begin(...)```"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1348","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1348/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1348/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1348/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1348","id":5235369,"number":1348,"title":"Android example doesn't run on emulator, but runs on device","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/android","name":"android","color":"2bc4ad"}],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2012-06-24T12:09:38Z","updated_at":"2012-08-05T21:31:04Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hi!\n\nI've just followed the setup guide for Android/Eclipse/Linux. Everything works using AndroidEmptyExample, when using a real device, but if I use a freshly generated ICS emulator, it does not run successfully. \nLog:\n\n\t\tBUILD SUCCESSFUL\n\t\tTotal time: 15 seconds\n\t\tcp bin/OFActivity-debug.apk bin/androidEmptyExample.apk\n\t\t#if [ \"device\" = \"device\" ]; then\n\t\t/media/windata/Visuals/Coding/android-sdk-linux_x86/platform-tools/adb uninstall cc.openframeworks.androidEmptyExample\n\t\tFailure\n\t\t/media/windata/Visuals/Coding/android-sdk-linux_x86/platform-tools/adb install -r bin/androidEmptyExample.apk;\n\t\t2560 KB/s (8222503 bytes in 3.136s)\n\t\t\tpkg: /data/local/tmp/androidEmptyExample.apk\n\t\tFailure [INSTALL_FAILED_CONTAINER_ERROR]\n\t\t#fi\n\t\t/media/windata/Visuals/Coding/android-sdk-linux_x86/platform-tools/adb shell am start -a android.intent.action.MAIN -n cc.openframeworks.androidEmptyExample/cc.openframeworks.androidEmptyExample.OFActivity\n\t\tStarting: Intent { act=android.intent.action.MAIN cmp=cc.openframeworks.androidEmptyExample/.OFActivity }\n\t\tError type 3\n\t\tError: Activity class {cc.openframeworks.androidEmptyExample/cc.openframeworks.androidEmptyExample.OFActivity} does not exist.\n\nThe activity class looks alright (and works with a device, anyway). Any ideas what's wrong here, @arturoc ? Is this even fixable on our side?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1347","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1347/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1347/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1347/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1347","id":5216147,"number":1347,"title":"rename ofImage.grabScreen","user":{"login":"benben","id":124513,"avatar_url":"https://secure.gravatar.com/avatar/6aed6a0dfa09b46d6fbd5149eb56def8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"6aed6a0dfa09b46d6fbd5149eb56def8","url":"https://api.github.com/users/benben","html_url":"https://github.com/benben","followers_url":"https://api.github.com/users/benben/followers","following_url":"https://api.github.com/users/benben/following","gists_url":"https://api.github.com/users/benben/gists{/gist_id}","starred_url":"https://api.github.com/users/benben/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/benben/subscriptions","organizations_url":"https://api.github.com/users/benben/orgs","repos_url":"https://api.github.com/users/benben/repos","events_url":"https://api.github.com/users/benben/events{/privacy}","received_events_url":"https://api.github.com/users/benben/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2012-06-22T14:24:37Z","updated_at":"2012-06-23T16:21:52Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"First: Is this method supposed to be in the public API of OF? Becaue it is missing in the reference on the website.\n\nI think we should discuss the naming of this function. OF has methods like `ofGetHeight()` for getting the height of the app and `ofGetScreenHeight()` for getting the height of the screen. Instead `ofImage_::grabScreen`[1] does not grab the screen. I tested this on arch/ubuntu/win7 and it only grabs the app (everything else is black). Maybe it should be renamed to only `ofImage_::grab`. What do you think?\n\n[1] https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/graphics/ofImage.cpp#L907"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1344","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1344/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1344/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1344/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1344","id":5163949,"number":1344,"title":"ofLoadURLAsync crash when no network is available","user":{"login":"gorkacortazar","id":608719,"avatar_url":"https://secure.gravatar.com/avatar/6730aa74ae4edfa08a88f98e1364f5ec?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"6730aa74ae4edfa08a88f98e1364f5ec","url":"https://api.github.com/users/gorkacortazar","html_url":"https://github.com/gorkacortazar","followers_url":"https://api.github.com/users/gorkacortazar/followers","following_url":"https://api.github.com/users/gorkacortazar/following","gists_url":"https://api.github.com/users/gorkacortazar/gists{/gist_id}","starred_url":"https://api.github.com/users/gorkacortazar/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gorkacortazar/subscriptions","organizations_url":"https://api.github.com/users/gorkacortazar/orgs","repos_url":"https://api.github.com/users/gorkacortazar/repos","events_url":"https://api.github.com/users/gorkacortazar/events{/privacy}","received_events_url":"https://api.github.com/users/gorkacortazar/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/critical","name":"critical","color":"ff0000"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":8,"created_at":"2012-06-20T07:09:34Z","updated_at":"2012-09-26T10:46:06Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofLoadURLAsync crashes when no network is connected, on windows (codeblocks and vidual studio). Seeing the debugger, crashes when the poco::dnserror is being called.\n\nMy current workaround is to use ofLoadURL(...) in a threaded class, that work as expected (catches the error and logs the network error in the ofx console)."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1343","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1343/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1343/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1343/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1343","id":5134626,"number":1343,"title":"ofVec2f could be more dry?","user":{"login":"jvcleave","id":150037,"avatar_url":"https://secure.gravatar.com/avatar/9c0384a91739bea093f453cf40a59742?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"9c0384a91739bea093f453cf40a59742","url":"https://api.github.com/users/jvcleave","html_url":"https://github.com/jvcleave","followers_url":"https://api.github.com/users/jvcleave/followers","following_url":"https://api.github.com/users/jvcleave/following","gists_url":"https://api.github.com/users/jvcleave/gists{/gist_id}","starred_url":"https://api.github.com/users/jvcleave/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jvcleave/subscriptions","organizations_url":"https://api.github.com/users/jvcleave/orgs","repos_url":"https://api.github.com/users/jvcleave/repos","events_url":"https://api.github.com/users/jvcleave/events{/privacy}","received_events_url":"https://api.github.com/users/jvcleave/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":5,"created_at":"2012-06-18T21:48:19Z","updated_at":"2012-08-01T11:47:08Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Can you do inline functions inside inline functions? this seems to indicate so\nhttps://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/math/ofVec2f.h#L706\n\nIf so, in ofVec2f::getPerpendicular, ofVec2f::perpendicular and there are a few calls to \nfloat length = (float)sqrt( x*x + y*y ); \n\nthese can be covered by the ofVec2f::length() function\n\nAlso, do we need both lengthSquared() and squareLength()?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1336","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1336/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1336/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1336/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1336","id":5108991,"number":1336,"title":"ofSoundStream doesn't compile in VS2010 (Release Mode) ","user":{"login":"sloopidoopi","id":248498,"avatar_url":"https://secure.gravatar.com/avatar/69d034865cb1f775bb1e0b47ff0580b2?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"69d034865cb1f775bb1e0b47ff0580b2","url":"https://api.github.com/users/sloopidoopi","html_url":"https://github.com/sloopidoopi","followers_url":"https://api.github.com/users/sloopidoopi/followers","following_url":"https://api.github.com/users/sloopidoopi/following","gists_url":"https://api.github.com/users/sloopidoopi/gists{/gist_id}","starred_url":"https://api.github.com/users/sloopidoopi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sloopidoopi/subscriptions","organizations_url":"https://api.github.com/users/sloopidoopi/orgs","repos_url":"https://api.github.com/users/sloopidoopi/repos","events_url":"https://api.github.com/users/sloopidoopi/events{/privacy}","received_events_url":"https://api.github.com/users/sloopidoopi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"milestone":null,"comments":3,"created_at":"2012-06-16T21:56:42Z","updated_at":"2012-06-18T07:02:10Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I get an \terror LNK2038: Konflikt ermittelt für \"_ITERATOR_DEBUG_LEVEL\": Der Wert \"2\" stimmt nicht mit dem Wert \"0\" in main.obj überein.\t\n\nIn the Linker settings i see that the rtAudioD.lib is used . \nThis is an inherited value.( I don't know where this value is set and how I can change this )\nI'll guess it should be rtAudio.lib instead.\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1334","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1334/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1334/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1334/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1334","id":5105884,"number":1334,"title":"video playback in windows is slow for some users","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":2,"created_at":"2012-06-16T12:17:23Z","updated_at":"2013-02-11T12:16:05Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"http://forum.openframeworks.cc/index.php/topic,10053.0\n\nwould be good to investigate this @gameoverhack \n "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1329","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1329/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1329/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1329/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1329","id":5086630,"number":1329,"title":"command-line projectGenerator needs to be able to reconfigure OF-root path","user":{"login":"pierrep","id":392160,"avatar_url":"https://secure.gravatar.com/avatar/be11c9de8242e7aef0446eceaa289e01?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"be11c9de8242e7aef0446eceaa289e01","url":"https://api.github.com/users/pierrep","html_url":"https://github.com/pierrep","followers_url":"https://api.github.com/users/pierrep/followers","following_url":"https://api.github.com/users/pierrep/following","gists_url":"https://api.github.com/users/pierrep/gists{/gist_id}","starred_url":"https://api.github.com/users/pierrep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pierrep/subscriptions","organizations_url":"https://api.github.com/users/pierrep/orgs","repos_url":"https://api.github.com/users/pierrep/repos","events_url":"https://api.github.com/users/pierrep/events{/privacy}","received_events_url":"https://api.github.com/users/pierrep/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project-generator","name":"project-generator","color":"444444"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":1,"created_at":"2012-06-15T05:41:09Z","updated_at":"2013-02-11T12:12:35Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I accidentally set the wrong OF root path, and ended up having to dig in the source code and then the config files to figure out how to reset it. Would be good for the command-line version to have an option to reset the root path. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1328","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1328/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1328/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1328/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1328","id":5075658,"number":1328,"title":"xcode 4 doesn't put obj files near the xcode project","user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-06-14T17:41:40Z","updated_at":"2012-06-14T17:41:40Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"there seems to be conflicting settings for \"per configuration intermediate build files\", and so therefore, there's no \"build\" folder with obj files near the project. This is an issue on some systems which require admin access to the dev folder, where those objs are winding up. it's also just harder to track build / obj files with this newer default approach of apple. \n\nwe should get xcode 4 to operate more like xcode 3 if we can. \n\nI believe it's it's related to this forum post: \n\nhttp://forum.openframeworks.cc/index.php?topic=10064.new;topicseen#new"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1326","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1326/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1326/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1326/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1326","id":5054867,"number":1326,"title":"project makefiles should trigger OF lib rebuild if necessary.","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"milestone":null,"comments":0,"created_at":"2012-06-13T19:10:28Z","updated_at":"2012-06-13T19:10:28Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"It would be great if the makefiles of projects would trigger a (re)build of the OF library if it is necessary (changed files, no library, etc).\nThis would also solve issues like in [this forum thread](http://forum.openframeworks.cc/index.php/topic,9962). It would also save having to manually rebuild the library if you just use plain make files without an IDE/project, for quick tests etc.\n\nIs this technically feasible, @arturoc ?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1322","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1322/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1322/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1322/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1322","id":5010394,"number":1322,"title":"ofxOpenALSoundPlayer ReferenceDistance and MaxDistance not behaving as expected","user":{"login":"armadillu","id":167057,"avatar_url":"https://secure.gravatar.com/avatar/b87a82d7c86161432ee6388c7cbd5e2c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b87a82d7c86161432ee6388c7cbd5e2c","url":"https://api.github.com/users/armadillu","html_url":"https://github.com/armadillu","followers_url":"https://api.github.com/users/armadillu/followers","following_url":"https://api.github.com/users/armadillu/following","gists_url":"https://api.github.com/users/armadillu/gists{/gist_id}","starred_url":"https://api.github.com/users/armadillu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/armadillu/subscriptions","organizations_url":"https://api.github.com/users/armadillu/orgs","repos_url":"https://api.github.com/users/armadillu/repos","events_url":"https://api.github.com/users/armadillu/events{/privacy}","received_events_url":"https://api.github.com/users/armadillu/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":1,"created_at":"2012-06-11T19:41:06Z","updated_at":"2013-02-11T12:16:04Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofxALSoundSetReferenceDistance() and ofxALSoundSetMaxDistance() don't seem to behave as expected. \n\nOne would expect sounds not to be heard at all when the sound source is beyond the MaxDistance, but this is not the case on the default setup. I think it is because of the sound model openAL comes set with.\n\nI found the ofxALSoundSetReferenceDistance() and ofxALSoundSetMaxDistance() to make perfect sense when setting the linear sound model by calling this:\n\nalDistanceModel(AL_LINEAR_DISTANCE_CLAMPED); \n\nI feel this sound model should be set by default, or at least give the API a method hinting that different sound models exist.\n\nI made a video demonstrating the issue here: http://www.youtube.com/watch?v=7Gz2x8R01jE"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1319","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1319/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1319/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1319/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1319","id":4985616,"number":1319,"title":"oF in HTML5","user":{"login":"gimlids","id":186277,"avatar_url":"https://secure.gravatar.com/avatar/cc4cace34c61103f0624002a692820f7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"cc4cace34c61103f0624002a692820f7","url":"https://api.github.com/users/gimlids","html_url":"https://github.com/gimlids","followers_url":"https://api.github.com/users/gimlids/followers","following_url":"https://api.github.com/users/gimlids/following","gists_url":"https://api.github.com/users/gimlids/gists{/gist_id}","starred_url":"https://api.github.com/users/gimlids/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gimlids/subscriptions","organizations_url":"https://api.github.com/users/gimlids/orgs","repos_url":"https://api.github.com/users/gimlids/repos","events_url":"https://api.github.com/users/gimlids/events{/privacy}","received_events_url":"https://api.github.com/users/gimlids/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":8,"created_at":"2012-06-09T15:58:45Z","updated_at":"2012-06-10T13:55:35Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Issue: openFrameworks does not run in the web browser.\n\nSolution: the emscripten backend for the LLVM compiler generates JavaScript, many C++ OpenGL projects have been demonstrated running in the browser with WebGL.\n\nIs anyone interested in this?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1314","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1314/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1314/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1314/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1314","id":4954019,"number":1314,"title":"PG overwrites .cbp's of different platforms","user":{"login":"sphaero","id":832465,"avatar_url":"https://secure.gravatar.com/avatar/f17e8b6636b46f5bfacbda5854842eb9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"f17e8b6636b46f5bfacbda5854842eb9","url":"https://api.github.com/users/sphaero","html_url":"https://github.com/sphaero","followers_url":"https://api.github.com/users/sphaero/followers","following_url":"https://api.github.com/users/sphaero/following","gists_url":"https://api.github.com/users/sphaero/gists{/gist_id}","starred_url":"https://api.github.com/users/sphaero/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sphaero/subscriptions","organizations_url":"https://api.github.com/users/sphaero/orgs","repos_url":"https://api.github.com/users/sphaero/repos","events_url":"https://api.github.com/users/sphaero/events{/privacy}","received_events_url":"https://api.github.com/users/sphaero/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project-generator","name":"project-generator","color":"444444"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-06-07T16:44:27Z","updated_at":"2012-06-07T16:44:27Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"If I create a simple test project including a linux64 and win CB projects I end up with only one test.cbp. It seems it overwrites itself since all platforms share the same name...\n\nsuggestion... use names like _ i.e. testApp_linux.cbp, testApp_linux64.cbp, test_win.cbp etc\n\nIf that's not already on the roadmap....\n\nI tested with the develop branch"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1312","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1312/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1312/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1312/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1312","id":4948268,"number":1312,"title":"ofURLFileLoader doesn't timeout or handle exceptions","user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2012-06-07T11:18:27Z","updated_at":"2012-09-13T20:56:07Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"If you issue a URL to ofURLFileLoader and the http subsystem triggers an exception (no route to host is the easiest to test -- just unplug your network), then the URL request will sit in the request queue forever. Turn on OF_LOG_VERBOSE and watch the console output.\n\nThere should be better exception handling, and/or there should be a timeout of some kind."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1306","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1306/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1306/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1306/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1306","id":4924361,"number":1306,"title":"projectGenerator fails when run from command line with target folder","user":{"login":"tarcoles","id":1822092,"avatar_url":"https://secure.gravatar.com/avatar/2399652e50fade7a5d8404203b31a61f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2399652e50fade7a5d8404203b31a61f","url":"https://api.github.com/users/tarcoles","html_url":"https://github.com/tarcoles","followers_url":"https://api.github.com/users/tarcoles/followers","following_url":"https://api.github.com/users/tarcoles/following","gists_url":"https://api.github.com/users/tarcoles/gists{/gist_id}","starred_url":"https://api.github.com/users/tarcoles/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tarcoles/subscriptions","organizations_url":"https://api.github.com/users/tarcoles/orgs","repos_url":"https://api.github.com/users/tarcoles/repos","events_url":"https://api.github.com/users/tarcoles/events{/privacy}","received_events_url":"https://api.github.com/users/tarcoles/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project-generator","name":"project-generator","color":"444444"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":8,"created_at":"2012-06-06T07:50:15Z","updated_at":"2013-02-11T12:16:04Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"If I run the projectGenerator without arguments and use the provided GUI, I can create a new project.\n\nBut if I try to run it as a command line tool it fails halfway through. I would guess a step to make the source folders is missing:\n\n mkdir ~/Public/carne\n\n ./projectGenerator --linux64 ~/Public/carne\n OF: OF_LOG_ERROR: Error: Missing GL version\n\n OF: OF_LOG_ERROR: ofDirectoryLister::listDirectory() error opening directory /home/gabriel/Public/carne/src/\n\n tree ~/Public/carne\n /home/gabriel/Public/carne\n |-- carne.cbp\n |-- carne.workspace\n |-- config.make\n `-- Makefile\n\n 0 directories, 4 files\n\nThis has been reproduced on Debian GNU/Linux wheezy/sid 64bit and Ubuntu 32bit"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1299","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1299/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1299/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1299/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1299","id":4861832,"number":1299,"title":"projectGenerator VS2010 release mode : no AdditionalIncludeDirectories","user":{"login":"sloopidoopi","id":248498,"avatar_url":"https://secure.gravatar.com/avatar/69d034865cb1f775bb1e0b47ff0580b2?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"69d034865cb1f775bb1e0b47ff0580b2","url":"https://api.github.com/users/sloopidoopi","html_url":"https://github.com/sloopidoopi","followers_url":"https://api.github.com/users/sloopidoopi/followers","following_url":"https://api.github.com/users/sloopidoopi/following","gists_url":"https://api.github.com/users/sloopidoopi/gists{/gist_id}","starred_url":"https://api.github.com/users/sloopidoopi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sloopidoopi/subscriptions","organizations_url":"https://api.github.com/users/sloopidoopi/orgs","repos_url":"https://api.github.com/users/sloopidoopi/repos","events_url":"https://api.github.com/users/sloopidoopi/events{/privacy}","received_events_url":"https://api.github.com/users/sloopidoopi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project-generator","name":"project-generator","color":"444444"}],"state":"open","assignee":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":1,"created_at":"2012-06-01T17:50:14Z","updated_at":"2013-02-11T12:16:04Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"In the projectGenerator.vcxproj the AdditionalIncludeDirectories for the release mode are missing. (I copied the entries from the debug mode for testing and compilaton worked)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1292","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1292/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1292/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1292/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1292","id":4840460,"number":1292,"title":"ofSetVerticalSync(false) no effect, other framerate issues","user":{"login":"ChristophPacher","id":463776,"avatar_url":"https://secure.gravatar.com/avatar/1c1ed6a26b6cb2351d65b3b02677b8d7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"1c1ed6a26b6cb2351d65b3b02677b8d7","url":"https://api.github.com/users/ChristophPacher","html_url":"https://github.com/ChristophPacher","followers_url":"https://api.github.com/users/ChristophPacher/followers","following_url":"https://api.github.com/users/ChristophPacher/following","gists_url":"https://api.github.com/users/ChristophPacher/gists{/gist_id}","starred_url":"https://api.github.com/users/ChristophPacher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ChristophPacher/subscriptions","organizations_url":"https://api.github.com/users/ChristophPacher/orgs","repos_url":"https://api.github.com/users/ChristophPacher/repos","events_url":"https://api.github.com/users/ChristophPacher/events{/privacy}","received_events_url":"https://api.github.com/users/ChristophPacher/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2012-05-31T16:24:30Z","updated_at":"2012-05-31T17:02:22Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hi,\n\nI am on a Windows 7 x64 Laptop (NV 420m GPU), using VS2010, latest OF trunk, lastest experimental ofxOpenNI trunk, latest OpenNI/nite binaries, OpenCV trunk from March, CUDA 4.1.\n\nWhen running my kinect app i have a hard time to control the FPS aswell as Vsync. Sometimes the app shows 300+ FPS sometimes +60 sometimes 30 when setting ofSetVerticalSync(true) and ofSetFramerate(60) (or using none of the settings), and I experience some slowdowns in the ofxOpenNI thread to 20 FPS when playing an .oni file, that recover back to normal 30 FPS. Sometimes the app runs perfectly with no slow downs but it is pretty much randomly changeing even with just an app restart or system restart. No changes in the Nvidia driver settings seem to directly and repeatetly control the FPS. The ofxOpenCV example is controlable and behaves as one would expect, but its not threaded.\n\nI am puzzeld and I do not know what could be the root of the problem. Any ideas where I could look next? Are there any instructions or patterns i should avoid when interacting with my OpenNI thread that could influence the Opengl thread?\n\nAnyone wanting to test this can reproduce this with running the sample project of gameovers ofxOpenNI called src-ONIRecording-Simple. \n\nThanks\n\nChris"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1279","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1279/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1279/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1279/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1279","id":4767675,"number":1279,"title":"ofShader example with HD Graphics 3000 issue","user":{"login":"subtiv","id":1012684,"avatar_url":"https://secure.gravatar.com/avatar/837cfe96365c031130a46311eb11d86a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"837cfe96365c031130a46311eb11d86a","url":"https://api.github.com/users/subtiv","html_url":"https://github.com/subtiv","followers_url":"https://api.github.com/users/subtiv/followers","following_url":"https://api.github.com/users/subtiv/following","gists_url":"https://api.github.com/users/subtiv/gists{/gist_id}","starred_url":"https://api.github.com/users/subtiv/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/subtiv/subscriptions","organizations_url":"https://api.github.com/users/subtiv/orgs","repos_url":"https://api.github.com/users/subtiv/repos","events_url":"https://api.github.com/users/subtiv/events{/privacy}","received_events_url":"https://api.github.com/users/subtiv/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2012-05-26T19:27:56Z","updated_at":"2012-05-28T08:08:24Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"There occurs a weir glitch when compiling the ofShader example with my HD Graphics 3000 (288 Mb) (Mac osx 10.7.4 - Mac Mini - i5 - 2.3Ghz)\n\nI was able to get rid of the glitch by replacing \"gl_FragColor = gl_Color;\" with \"gl_FragColor = 255.0;\" or any other number.\nAnybody knows a reason for the glitch / proper solution?\n\nScreenshot: http://goo.gl/Xdf74\nOpenGL capacities on different graphic cards on apple machines: http://goo.gl/FGQ2N"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1256","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1256/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1256/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1256/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1256","id":4554058,"number":1256,"title":"Feature ofPushMatrix(const ofMatrix4x4 &)","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":5,"created_at":"2012-05-13T18:20:29Z","updated_at":"2012-05-17T21:42:08Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"if i'm not mistaken, the correct way of using ofMatrix4x4 in oF is `glMultMatrixf(myMatrix.getPtr())` or `glLoadMatrixf`.\nThis seems a bit uncomfortable for me.\n\nsome candidates are:\n\n```c++\nofPushMatrix(const ofMatrix4x4 &); //needs alternatives as you might not want to push at the time\nofLoadMatrix(const ofMatrix4x4 &);\nofMultMatrix(const ofMatrix4x4 &);\n\nofMatrix4x4::apply();\nofMatrix4x4::glLoadMatrix(matrixMode = OF_MATRIX_MODE_CURRENT);\n```\n\n\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1252","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1252/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1252/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1252/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1252","id":4539985,"number":1252,"title":"0071 ply (mesh.save()) Point export is broken","user":{"login":"laserpilot","id":1041023,"avatar_url":"https://secure.gravatar.com/avatar/07001341fe6c156dddd5b9d06d828cba?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"07001341fe6c156dddd5b9d06d828cba","url":"https://api.github.com/users/laserpilot","html_url":"https://github.com/laserpilot","followers_url":"https://api.github.com/users/laserpilot/followers","following_url":"https://api.github.com/users/laserpilot/following","gists_url":"https://api.github.com/users/laserpilot/gists{/gist_id}","starred_url":"https://api.github.com/users/laserpilot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/laserpilot/subscriptions","organizations_url":"https://api.github.com/users/laserpilot/orgs","repos_url":"https://api.github.com/users/laserpilot/repos","events_url":"https://api.github.com/users/laserpilot/events{/privacy}","received_events_url":"https://api.github.com/users/laserpilot/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":6,"created_at":"2012-05-11T19:45:53Z","updated_at":"2013-02-11T12:12:35Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"\tunsigned char faceSize = 3;\n\tif(data.getNumIndices()){\n\t\tos << \"element face \" << data.getNumIndices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t} else if(data.getMode() == OF_PRIMITIVE_TRIANGLES) {\n\t\tos << \"element face \" << data.getNumVertices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t}\n\nThe facesize is being set as static as 3, but this results in strange exports...things open OK in Meshlab, but exporting to other programs with no faces seems like it won't work"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1250","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1250/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1250/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1250/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1250","id":4507492,"number":1250,"title":"bug: ofToDataPath broken again","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":9,"created_at":"2012-05-10T06:35:24Z","updated_at":"2013-02-11T12:16:04Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":":(\r\n\r\nIt seems i'm getting double 'data/' in my paths\r\nafter a little tracking down, i found this is because ofSystemLoadDialog changes the current working directory\r\n\r\nso we could try and either fix that by popping the folder after the dialog, \r\nof for windows using something like ```GetModuleFileName``` to get the path of the current exe rather than using the current working directory\r\n\r\nI can't seem to run GetModuleFileName from ofUtils.cpp even though windows.h is included in ofConstants.h (included in ofUtils.h)\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1239","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1239/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1239/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1239/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1239","id":4406584,"number":1239,"title":"Fix ofThread destructor behaviour","user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":31,"created_at":"2012-05-03T14:54:46Z","updated_at":"2013-02-11T12:16:04Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1239","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1239.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1239.patch"},"body":"The way ofThread's destructor worked was causing cleanup code at the end of threadedFunction to be skipped, sometimes leaving shared resources in an unusable state. This patch makes sure that the ofThread destructor waits until the thread has properly exited. \r\n\r\nIMO this patch is critical, but it should be treated with caution, as this has the possibility to cause deadlocks in code with multiple threads where the cleanup order is not clearly defined."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1236","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1236/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1236/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1236/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1236","id":4384548,"number":1236,"title":"init openframeworks before constructor of testapp is called?","user":{"login":"peteruithoven","id":523210,"avatar_url":"https://secure.gravatar.com/avatar/f39b1485b28be1dc2b98f269235218bc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"f39b1485b28be1dc2b98f269235218bc","url":"https://api.github.com/users/peteruithoven","html_url":"https://github.com/peteruithoven","followers_url":"https://api.github.com/users/peteruithoven/followers","following_url":"https://api.github.com/users/peteruithoven/following","gists_url":"https://api.github.com/users/peteruithoven/gists{/gist_id}","starred_url":"https://api.github.com/users/peteruithoven/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/peteruithoven/subscriptions","organizations_url":"https://api.github.com/users/peteruithoven/orgs","repos_url":"https://api.github.com/users/peteruithoven/repos","events_url":"https://api.github.com/users/peteruithoven/events{/privacy}","received_events_url":"https://api.github.com/users/peteruithoven/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"milestone":null,"comments":3,"created_at":"2012-05-02T13:24:49Z","updated_at":"2012-05-16T09:42:24Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I was trying to load a file in a subclass. I'm used to doing that in a constructor, but after an hour of debugging I found out that I can only do this if I make some kind of setup function. Because otherwise it's called before openframeworks is initialized. \r\n\r\nWhy not initialize openframeworks before ofRunApp or in the constructor ofBaseApp? \r\n\r\nTo reproduce put the following code in a constructor of a class and in a setup function that you call from the testapp setup. \r\nofFile f(\"DroidSans.ttf\");\r\ncout << f.getAbsolutePath() << endl;\r\n\r\nDifference is that when you load a file from the constructor the absolute url becomes:\r\n/Developer/openFrameworks/007/apps/data/DroidSans.ttf\r\nFrom a setup function that I call in the setup function of TestApp:\r\n/Developer/openFrameworks/007/apps/experiments/FindingFont2/bin/data/DroidSans.ttf"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1235","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1235/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1235/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1235/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1235","id":4383465,"number":1235,"title":"no get methods for ofSoundPlayer","user":{"login":"chrisoshea","id":104786,"avatar_url":"https://secure.gravatar.com/avatar/62d775b0fa28bcde2d9d29405d059be3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"62d775b0fa28bcde2d9d29405d059be3","url":"https://api.github.com/users/chrisoshea","html_url":"https://github.com/chrisoshea","followers_url":"https://api.github.com/users/chrisoshea/followers","following_url":"https://api.github.com/users/chrisoshea/following","gists_url":"https://api.github.com/users/chrisoshea/gists{/gist_id}","starred_url":"https://api.github.com/users/chrisoshea/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chrisoshea/subscriptions","organizations_url":"https://api.github.com/users/chrisoshea/orgs","repos_url":"https://api.github.com/users/chrisoshea/repos","events_url":"https://api.github.com/users/chrisoshea/events{/privacy}","received_events_url":"https://api.github.com/users/chrisoshea/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2012-05-02T12:06:15Z","updated_at":"2012-05-02T12:51:38Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Right now (007), how do you get a volume of a sample? a float sample.volume?\r\n\r\nhttp://www.openframeworks.cc/documentation/sound/ofSoundPlayer.html#volume\r\n\r\nBut if you look at ofSoundPlayer or ofBaseSoundPlayer there is no variable volume, or length, or pan, or speed. This brings up a compile error in Xcode saying:\r\n\r\nNo member named 'volume' in 'ofSoundPlayer'\r\n\r\nSo here are the variables:\r\n\r\nbool bLoop\r\nbool bLoadedOk\r\nbool bPaused\r\nfloat pan\r\nfloat volume\r\nfloat speed\r\nunsigned int length\r\n\r\nHere are the set methods:\r\n\r\nsetVolume(...)\r\nsetPan(...)\r\nsetSpeed(...)\r\nsetPaused(...)\r\nsetLoop(...)\r\nsetMultiPlay(...)\r\nsetPosition(...)\r\n\r\nHere are the gets:\r\n\r\ngetPosition()\r\ngetIsPlaying()\r\ngetSpeed()\r\ngetPan()\r\nsetPlayer(...)\r\ngetPlayer()\r\nsetPositionMS(...)\r\ngetPositionMS()\r\n\r\nWhat is missing?\r\n\r\ngetVolume()\r\ngetPaused()\r\ngetLoop()\r\n\r\nOr has this already been fixed?\r\n\r\nCheers\r\n\r\n\r\n\r\n\r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1234","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1234/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1234/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1234/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1234","id":4373361,"number":1234,"title":"PG should generate example projects in non-core addons","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project-generator","name":"project-generator","color":"444444"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":5,"created_at":"2012-05-01T20:24:05Z","updated_at":"2013-02-11T12:12:35Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"It would be great if the PG could get an option to generate the examples of non-core addons which the user has downloaded and placed in `OF/addons/`. This would really be useful to quickly look at/work with an addon.\r\n\r\nThe PG already knows about these addons. It would scan for folders in am addon's root directory with `example` in the name somewhere, and probably check the requisite structure (`src` folder, `addons.make` in place, etc), then generate the project file just the way it would if the example were in `OF/examples/addons/someExample`. Folder depth is the same, so I hope this is just a matter of adjusting the root folder for the example generation process - `addons` instead of `examples`.\r\n\r\nThoughts? Feedback?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1233","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1233/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1233/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1233/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1233","id":4373201,"number":1233,"title":"PG should offer addons download","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project-generator","name":"project-generator","color":"444444"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/automation","name":"automation","color":"5d5d5d"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2012-05-01T20:15:17Z","updated_at":"2012-05-04T03:31:24Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"This idea I had came up during the latest devmeet: \r\n\r\n*Proposal*\r\n\r\nI think it would be great if the PG would in the future offer automated downloading of addons. This would lower the barrier for people getting addons they want/need. Additionally, it would take away/reduce the need/desire to include popular addons in the OF core repo and/or release download, if addons are so easy to get, as part of a workflow we already envision the users to follow in the future (i.e. the PG)\r\n\r\n*Behaviour as it is now/soon:*\r\n\r\nAlice has an idea for a new project. She needs a couple addons for realising her project, and knows which ones. \r\nShe opens a browser to go to ofxaddons.com and/or github to download the addons if she doesn't have them yet and places them into `OF/addons/`. Alice starts the PG. The PG knows about the addons, and allows her to select them for inclusion. She creates a project and starts coding.\r\n\r\n*Desired/envisioned behaviour:*\r\n\r\nBob has an idea for a new project. He needs a couple addons for realising his project, and knows which ones. \r\nBob uses the new version of the PG to create a project. Beside the list of installed addons, the PG offers a dropdown list to select addons to download and place into the proper place. It lets Bob select if he prefers a plain download (to just use the addon), or a cloned git repo (to stay up-to-date and/or propose improvements to the addon author). Bob selects the desired addons to download, waits a while until PG reports that they're in place, and chooses all needed addons from the newly expanded list. He creates a project, and start coding the Next Big Thing, without even needing the browser! Awesome, right?\r\n\r\n*Analysis:*\r\n\r\nAlthough I realize that this is no trivial feature, I think much of what we need is already in place. \r\nPG knows about the repo structure, which addons are already there, etc., and has most of the file-manipulation logic already I think. \r\nofxaddons.com maintains a list of available addons and their locations, so I hope it's rather easy to present this in some machine-readable way for PG consumption (@obviousjim, thoughts?). \r\nWget/curl/git could take care of the download. \r\nofxGUI would have to be extended with a dropdown list, or some other way of (space)efficiently presenting the huge list of addons available.\r\n\r\nPossible issues: \r\nCross-platform way of downloading/git cloning without pulling to many dependencies (Elliot brought this up I think). Maybe have a fallback chain of mechanisms?\r\nAddon structure may not comply to what is expected (for old addons e.g.), so the project wouldn't work in the beginning. The same issue would appear on manual download, though.\r\n\r\n\r\nThoughts and Feedback, please. :-)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1232","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1232/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1232/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1232/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1232","id":4370619,"number":1232,"title":"bug/feature in ofColor::setSaturation ","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":14,"created_at":"2012-05-01T17:40:08Z","updated_at":"2013-02-11T12:12:35Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"should result in a gray circle, instead its white \r\n\r\n\tofColor c(255, 0, 0);\r\n\tc.setSaturation(0);\t\r\n\tofSetColor(c);\r\n\tofFill();\t\r\n\tofCircle(100,400,50);\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1229","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1229/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1229/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1229/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1229","id":4356530,"number":1229,"title":"pass matrices as uniforms with ofShader ","user":{"login":"Larsberg","id":346072,"avatar_url":"https://secure.gravatar.com/avatar/bb9a4f7c510339e9d7a447347dc263ba?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bb9a4f7c510339e9d7a447347dc263ba","url":"https://api.github.com/users/Larsberg","html_url":"https://github.com/Larsberg","followers_url":"https://api.github.com/users/Larsberg/followers","following_url":"https://api.github.com/users/Larsberg/following","gists_url":"https://api.github.com/users/Larsberg/gists{/gist_id}","starred_url":"https://api.github.com/users/Larsberg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Larsberg/subscriptions","organizations_url":"https://api.github.com/users/Larsberg/orgs","repos_url":"https://api.github.com/users/Larsberg/repos","events_url":"https://api.github.com/users/Larsberg/events{/privacy}","received_events_url":"https://api.github.com/users/Larsberg/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2012-04-30T19:49:38Z","updated_at":"2012-05-01T06:35:54Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"How do you feel about passing matrices to ofShader as a uniform?\r\n\r\nsomething like:\r\n\r\n\tvoid ofShader::setUniformMatrix4fv(const char* name, ofMatrix& matrix ) {\r\n\t\tif(bLoaded)\r\n\t\t\tglUniformMatrix4fv(getUniformLocation(name), 1, GL_FALSE, matrix.getPtr());\r\n\t}"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1217","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1217/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1217/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1217/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1217","id":4269431,"number":1217,"title":"projectGenerator update doesn't respect existing project settings","user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project-generator","name":"project-generator","color":"444444"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":5,"created_at":"2012-04-24T21:03:44Z","updated_at":"2013-02-11T12:13:03Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"On 'update', PG should respect existing custom include paths, source files, linker flags and project options (such as optimization settings).\r\n\r\nOR\r\n\r\nXcode project should read and respect `OTHER_LDFLAGS` and `HEADER_SEARCH_PATHS`, and add `OTHER_CFLAGS` from Project.xcconfig; projectGenerator should leave these settings alone unless it figures out they need to be adjusted (this is probably going to be difficult)."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1215","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1215/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1215/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1215/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1215","id":4269359,"number":1215,"title":"projectGenerator sets incorrect path in Project.xcconfig","user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project-generator","name":"project-generator","color":"444444"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":2,"created_at":"2012-04-24T20:59:57Z","updated_at":"2013-02-11T12:16:04Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"When using PG's 'update' functionality on apps are in paths with non-standard depths (in my case, `oF/apps/dir/subdir/subsubdir`) the OF_PATH and #include directives in the resulting Project.xcconfig don't match, which means oF projects won't compile:\r\n\r\n~~~~\r\n//THE PATH TO THE ROOT OF OUR OF PATH RELATIVE TO THIS PROJECT.\r\n//THIS NEEDS TO BE DEFINED BEFORE CoreOF.xcconfig IS INCLUDED\r\nOF_PATH = ../../../..\r\n\r\n//THIS HAS ALL THE HEADER AND LIBS FOR OF CORE\r\n#include \"../../../../../libs/openFrameworksCompiled/project/osx/CoreOF.xcconfig\"\r\n~~~~\r\n\r\nNote extra `../` in the `#include` path."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1202","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1202/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1202/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1202/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1202","id":4231092,"number":1202,"title":"ofVideoPlayer etc needs ofColor access","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2012-04-22T18:42:58Z","updated_at":"2012-04-22T23:56:33Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"i'm teaching a workshop right now and i feel like it's ridiculous that i need to explain pointers just to access video :)\r\n\r\nlet's add this!"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1190","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1190/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1190/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1190/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1190","id":4207350,"number":1190,"title":"Bezier Shaders & Vector openGL rendering","user":{"login":"microbians","id":1662136,"avatar_url":"https://secure.gravatar.com/avatar/98c91e60903b83c0a022ee70cca9ca21?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"98c91e60903b83c0a022ee70cca9ca21","url":"https://api.github.com/users/microbians","html_url":"https://github.com/microbians","followers_url":"https://api.github.com/users/microbians/followers","following_url":"https://api.github.com/users/microbians/following","gists_url":"https://api.github.com/users/microbians/gists{/gist_id}","starred_url":"https://api.github.com/users/microbians/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/microbians/subscriptions","organizations_url":"https://api.github.com/users/microbians/orgs","repos_url":"https://api.github.com/users/microbians/repos","events_url":"https://api.github.com/users/microbians/events{/privacy}","received_events_url":"https://api.github.com/users/microbians/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-2D","name":"section-2D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":10,"created_at":"2012-04-20T09:23:00Z","updated_at":"2013-02-04T20:49:50Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I'm investigating the way to draw bezier curves / nurbs etc. with shaders, here is a list a links and information I found that can improve render times with OF. Any way I must admit I'm new to openGL & shaders so maybe someone can take this to implement maybe an add-on or maybe to added to the core.\r\n\r\n**Resolution Independent Curve Rendering using Programmable Graphics Hardware**\r\nhttp://research.microsoft.com/en-us/um/people/cloop/loopblinn05.pdf\r\n\r\n**Resolution independent GPU accelerated Curve & Font rendering**\r\n**GPU based Resolution Independent Font & Curve Rendering – initial Release**\r\nhttp://jausoft.com/blog/2011/04/01/resolution-independent-gpu-accelerated-curve-font-rendering/\r\nhttp://ramisantina.com/blog/?p=73\r\nhttp://vimeo.com/21810192\r\nhttp://jogamp.org/doc/gpunurbs2011/p70-santina.pdf\r\n\r\n**Curvy blues**\r\nhttp://www.mdk.org.pl/2007/10/27/curvy-blues\r\n\r\n**Vector drawing: OpenGL shaders and cairo & vector hardware tessellation**\r\nhttp://www.mdk.org.pl/2007/8/6/vector-drawing-opengl-shaders-and-cairo\r\n\r\n**ShivaVG & Random Access Rendering of Animated Vector Graphics**\r\nhttp://ivanleben.blogspot.com.es/2007/07/shivavg-open-source-ansi-c-openvg.html\r\nhttp://www.youtube.com/watch?v=mD8X-e5-sY4\r\nhttp://www.youtube.com/watch?v=U4USCfwORUg\r\nhttp://andrejas-atelier.com/ivan/IvanLebenHonsThesis.pdf\r\n\r\n**RAVG**\r\nhttp://research.microsoft.com/en-us/um/people/hoppe/proj/ravg/\r\n\r\n**NV Path Rendering Videos (seams only with nvidia)**\r\nhttp://developer.nvidia.com/nv-path-rendering-videos\r\n\r\n**Vector drawing: OpenGL polygon tessellation**\r\nhttp://www.mdk.org.pl/2007/8/16/vector-drawing-opengl-polygon-tessellation\r\nhttp://zrusin.blogspot.com.es/2006/07/hardware-accelerated-polygon-rendering.html\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1189","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1189/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1189/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1189/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1189","id":4206982,"number":1189,"title":"ofSetCurveResolution + ofBezierVertex bug","user":{"login":"microbians","id":1662136,"avatar_url":"https://secure.gravatar.com/avatar/98c91e60903b83c0a022ee70cca9ca21?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"98c91e60903b83c0a022ee70cca9ca21","url":"https://api.github.com/users/microbians","html_url":"https://github.com/microbians","followers_url":"https://api.github.com/users/microbians/followers","following_url":"https://api.github.com/users/microbians/following","gists_url":"https://api.github.com/users/microbians/gists{/gist_id}","starred_url":"https://api.github.com/users/microbians/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/microbians/subscriptions","organizations_url":"https://api.github.com/users/microbians/orgs","repos_url":"https://api.github.com/users/microbians/repos","events_url":"https://api.github.com/users/microbians/events{/privacy}","received_events_url":"https://api.github.com/users/microbians/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":0,"created_at":"2012-04-20T08:51:51Z","updated_at":"2013-02-11T12:16:04Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofSetCurveResolution is not changing the resolution using ofBezier nor ofBezierVertex (tested with ofScale is more easy to see the bug)\r\n\r\n ofFill();\r\n ofSetHexColor(0xFF9933);\r\n ofBeginShape();\r\n ofVertex(x0,y0);\r\n ofBezierVertex(x1,y1,x2,y2,x3,y3);\r\n ofEndShape();\r\n\r\nall works fine when using ofPath directly:\r\n\r\n ofPath curve;\r\n curve.setFillHexColor(0xFF000);\r\n curve.setCurveResolution(120);\r\n curve.moveTo(x0, y0);\r\n curve.bezierTo(x1,y1,x2,y2,x3,y3);\r\n curve.draw();\r\n\r\nmore: http://forum.openframeworks.cc/index.php/topic,9596.0.html"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1186","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1186/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1186/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1186/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1186","id":4174070,"number":1186,"title":"ofFbo depthBufferTex can be inconsistent with colour texture","user":{"login":"neilmendoza","id":818571,"avatar_url":"https://secure.gravatar.com/avatar/3e46b12547e7bac19eb982bc512b19c4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3e46b12547e7bac19eb982bc512b19c4","url":"https://api.github.com/users/neilmendoza","html_url":"https://github.com/neilmendoza","followers_url":"https://api.github.com/users/neilmendoza/followers","following_url":"https://api.github.com/users/neilmendoza/following","gists_url":"https://api.github.com/users/neilmendoza/gists{/gist_id}","starred_url":"https://api.github.com/users/neilmendoza/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/neilmendoza/subscriptions","organizations_url":"https://api.github.com/users/neilmendoza/orgs","repos_url":"https://api.github.com/users/neilmendoza/repos","events_url":"https://api.github.com/users/neilmendoza/events{/privacy}","received_events_url":"https://api.github.com/users/neilmendoza/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2012-04-18T15:08:32Z","updated_at":"2012-05-01T04:10:23Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"If you set up an ofFbo as follows...\r\n\r\n```cpp\r\n ofFbo::Settings s;\r\n s.width = 400;\r\n s.height = 400;\r\n s.textureTarget = GL_TEXTURE_2D;\r\n s.useDepth = true;\r\n s.depthAsTexture = true;\r\n s.dethInternalFormat = GL_DEPTH_COMPONENT24;\r\n```\r\n\r\n...then the colour texture's dimensions are set to be the next POTs up but the depth texture's dimensions don't seem to be. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1178","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1178/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1178/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1178/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1178","id":4132608,"number":1178,"title":"OpenGLES2 not working","user":{"login":"erinnovations","id":253455,"avatar_url":"https://secure.gravatar.com/avatar/29639bbeb3afdde8fb3c7e273e5e43c6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"29639bbeb3afdde8fb3c7e273e5e43c6","url":"https://api.github.com/users/erinnovations","html_url":"https://github.com/erinnovations","followers_url":"https://api.github.com/users/erinnovations/followers","following_url":"https://api.github.com/users/erinnovations/following","gists_url":"https://api.github.com/users/erinnovations/gists{/gist_id}","starred_url":"https://api.github.com/users/erinnovations/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/erinnovations/subscriptions","organizations_url":"https://api.github.com/users/erinnovations/orgs","repos_url":"https://api.github.com/users/erinnovations/repos","events_url":"https://api.github.com/users/erinnovations/events{/privacy}","received_events_url":"https://api.github.com/users/erinnovations/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":26,"created_at":"2012-04-16T11:19:36Z","updated_at":"2013-02-11T12:16:04Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"As mentioned here: http://forum.openframeworks.cc/index.php?topic=9107.0\r\nOpenGLES2 not working. It is always falls back to ES1. I tested it only on iPad2 with iOS 5.0.1."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1175","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1175/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1175/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1175/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1175","id":4117762,"number":1175,"title":"GL_UNPACK_ALIGNMENT 1 in ofTexture","user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-04-14T13:45:42Z","updated_at":"2012-04-14T13:45:55Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"in ofTexture::loadData we are doing:\r\n\r\n\r\n\t//------------------------ likely, we are uploading continuous data\r\n\tGLint prevAlignment;\r\n\tglGetIntegerv(GL_UNPACK_ALIGNMENT, &prevAlignment);\r\n\tglPixelStorei(GL_UNPACK_ALIGNMENT, 1);\r\n\r\nany reason for this? leaving the default works too. i've been working with a huge video and the transfer rates on some cards were super slow with ofTexture::loadData. even glDrawPixels was faster, i've finally used pbo's but later looking at ofTexture discovered this lines and i suspect that it could be the reason for loadData being slower, haven't tested it yet though."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1171","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1171/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1171/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1171/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1171","id":4081188,"number":1171,"title":"ofBeginSaveScreenAsPDF ignores 3d transformations","user":{"login":"jesusgollonet","id":31100,"avatar_url":"https://secure.gravatar.com/avatar/5008d5295e9bc2636313c7b50ed5981d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5008d5295e9bc2636313c7b50ed5981d","url":"https://api.github.com/users/jesusgollonet","html_url":"https://github.com/jesusgollonet","followers_url":"https://api.github.com/users/jesusgollonet/followers","following_url":"https://api.github.com/users/jesusgollonet/following","gists_url":"https://api.github.com/users/jesusgollonet/gists{/gist_id}","starred_url":"https://api.github.com/users/jesusgollonet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jesusgollonet/subscriptions","organizations_url":"https://api.github.com/users/jesusgollonet/orgs","repos_url":"https://api.github.com/users/jesusgollonet/repos","events_url":"https://api.github.com/users/jesusgollonet/events{/privacy}","received_events_url":"https://api.github.com/users/jesusgollonet/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-04-12T10:09:42Z","updated_at":"2012-04-12T10:09:42Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"if I call ofBeginSaveScreenAsPDF using ofEasyCam or the ofCamera, the pdf doesn't have the perspective of the camera. There's a parameter b3d to ofBeginSaveScreenAsPDF which I interpret to be \"render taking into account 3d transforms\", but it doesn't seem to have any effect.\r\n\r\nmore on the forum\r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,9542.0.html"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1165","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1165/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1165/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1165/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1165","id":4063366,"number":1165,"title":"ofLogError, ofLogWarning lack format, ... args","user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":6,"created_at":"2012-04-11T11:56:33Z","updated_at":"2012-04-21T15:41:01Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"It's currently not possible to write `ofLogError( \"serial\", \"error %i connecting to serial\", serialError )`. \r\n\r\nThere should be `ofLogError( string module, string format, ... )` methods as with normal ofLog."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1152","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1152/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1152/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1152/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1152","id":4032047,"number":1152,"title":"grabScreen in ofImage fails on Android","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":7,"created_at":"2012-04-09T17:15:21Z","updated_at":"2012-07-13T19:01:54Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"change `allocate(_w, _h, OF_IMAGE_COLOR);` to `allocate(_w, _h, OF_IMAGE_COLOR_ALPHA);` (via reza on irc)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1146","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1146/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1146/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1146/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1146","id":4015514,"number":1146,"title":"Document Project Generator / clean out old tools","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-04-07T14:43:53Z","updated_at":"2012-04-07T15:00:32Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hey all\r\n\r\nA few sections of the repo need some love to put them in line with the project generator:\r\n\r\n1. Readme's\r\n2. Rogue old project generators\r\n3. Document complementing tools\r\n\r\n# Readme\r\n\r\nThe readme's in the root of the repo need some love\r\nnone of them mention project generator \r\n\r\ni feel like each should be a description of how to get to a working project generator on each of the respective platforms\r\n\r\nalso note:\r\n* .vs2010 is missing\r\n* readme.txt repeats information from the other readme's (i.e. it's a list of platform specific instructions)\r\ni think this should be perhaps a little description of oF and a few tips on how to get started\r\n\r\n# Rogue old 'project generators' / documenting complementary tools for project generator\r\n\r\nHere's things I can find in the repo which don't make sense to me at the moment:\r\n\r\n* `openFrameworks\\scripts\\????\\compileAllExamples.bat`\r\n** is this supposed to be run (optionally) after the project generator?\r\n** why is the project template within this folder?\r\n* `openFrameworks\\scripts\\????\\createProjects.py` \r\n** if this isn't supposed to be used anymore, lets delete it immediately (we can always recover in emergencies)\r\n\r\nand the 'other' folder in the root.. perhaps never took off?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1145","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1145/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1145/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1145/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1145","id":4010494,"number":1145,"title":"ofCairoRenderer ofMesh doesn't render properly to PDF","user":{"login":"rezaali","id":555207,"avatar_url":"https://secure.gravatar.com/avatar/548374013b9c6e50ebbd2294e12d4f31?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"548374013b9c6e50ebbd2294e12d4f31","url":"https://api.github.com/users/rezaali","html_url":"https://github.com/rezaali","followers_url":"https://api.github.com/users/rezaali/followers","following_url":"https://api.github.com/users/rezaali/following","gists_url":"https://api.github.com/users/rezaali/gists{/gist_id}","starred_url":"https://api.github.com/users/rezaali/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rezaali/subscriptions","organizations_url":"https://api.github.com/users/rezaali/orgs","repos_url":"https://api.github.com/users/rezaali/repos","events_url":"https://api.github.com/users/rezaali/events{/privacy}","received_events_url":"https://api.github.com/users/rezaali/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2012-04-06T22:02:01Z","updated_at":"2012-04-07T19:49:31Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"When attempting to render a mesh to a PDF the ofCairoRender does not output a filled mesh, thus the PDF output looks empty. \r\n\r\nIf you open the file in illustrator you'll see the paths, there but with no stroke or fill. \r\n\r\nWhen I dug into the issue a bit further I realized that Cairo isn't capable of rendering shapes with per vertex colors easily...\r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1144","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1144/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1144/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1144/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1144","id":4001148,"number":1144,"title":"ofColor subtraction and negative values","user":{"login":"jembezmamy","id":720354,"avatar_url":"https://secure.gravatar.com/avatar/69a23dc9914cb6bc3202c50e15eabba0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"69a23dc9914cb6bc3202c50e15eabba0","url":"https://api.github.com/users/jembezmamy","html_url":"https://github.com/jembezmamy","followers_url":"https://api.github.com/users/jembezmamy/followers","following_url":"https://api.github.com/users/jembezmamy/following","gists_url":"https://api.github.com/users/jembezmamy/gists{/gist_id}","starred_url":"https://api.github.com/users/jembezmamy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jembezmamy/subscriptions","organizations_url":"https://api.github.com/users/jembezmamy/orgs","repos_url":"https://api.github.com/users/jembezmamy/repos","events_url":"https://api.github.com/users/jembezmamy/events{/privacy}","received_events_url":"https://api.github.com/users/jembezmamy/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":9,"created_at":"2012-04-06T07:56:44Z","updated_at":"2013-02-11T12:17:22Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"When using the ofColor subtraction operator, negative results are clamped to positive values instead of 0. Values are circulating between 0 and 255, which could be useful for hue in HSV but in most cases (R, G, B..) is not what I would expect.\r\n\r\n ofColor a(10, 40, 80);\r\n ofColor b(20, 5, 30);\r\n ofColor c = (a-b); // I get: (246, 45, 50), I would expect: (0, 45, 50)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1134","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1134/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1134/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1134/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1134","id":3917377,"number":1134,"title":"multidimensional noise output","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2012-04-01T16:44:55Z","updated_at":"2012-04-03T17:37:10Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"theo's #1133 made me think about ways that i use noise regularly that might also be abstracted.\r\n\r\ni would also like to see versions of noise that return multidimensional results. normally i do something like:\r\n\r\n\tofVec2 a(ofSignedNoise(t, 0), ofSignedNoise(0, t)); // 1D -> 2D\r\n\tofVec2 b(ofSignedNoise(x, 0), ofSignedNoise(0, y)); // 2D -> 2D\r\n\tofVec3 c(ofSignedNoise(t, 0, 0), ofSignedNoise(0, t, 0), ofSignedNoise(0, 0, t)); // 1D -> 3D\r\n\tofVec3 d(ofSignedNoise(x, 0, 0), ofSignedNoise(0, y, 0), ofSignedNoise(0, 0, (x + y) / 2)); // 2D -> 3D\r\n\r\nand it would be good to spend some time making sure these are really good ways of doing it, then implement them inside some functions like `ofSignedNoise2()` and `ofSignedNoise3()` (for example)."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1133","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1133/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1133/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1133/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1133","id":3917018,"number":1133,"title":"ofNoise and ofSignedNoise with 2nd order control for rate.","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-04-01T15:45:11Z","updated_at":"2012-04-01T17:48:12Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ie: the equivalent of doing \r\n\r\nfloat rate = 0.02 + ofNoise(ofGetElapsedTimeF() * 0.02, 100.0) * 0.015;\r\nfloat value = ofSignedNoise( rate, x, y ); \r\n\r\nas one function. \r\n\r\nalso see kyle's #1134 for other noise utils. \r\n\r\nI find myself needing this quite often for more natural random motion where the rate of change is variable. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1132","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1132/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1132/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1132/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1132","id":3911629,"number":1132,"title":"ofStringUtils:: feature discussion","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":8,"created_at":"2012-03-31T17:52:48Z","updated_at":"2012-08-27T23:35:02Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"This is a feature discussion issue for what string features we should add to of.\r\nofZach mentioned some regexp ones from P5 match matchAll\r\nWould be great to get some eyes on this.\r\n\r\nOne approach would be a static class or namespace.\r\nThe idea would be we could include a variety of handy functions that would be useful for people not wanting to get into regexp\r\n\r\n\tofString::contains(str, \"apple\") //returns bool\r\n\tofString::starts(str, \"The\") //returns bool\r\n\tofString::ends(str, \".\") //returns bool\r\n\tofString::count(str, \"apples\") //count how many times apples appears in the \r\n\tofString::join(myVectorStr, \", \"); //this is currently ofJoinString\r\n\tofString::split(someText, \".\"); //this is currently ofSplitString\r\n\tofString::split(someHtml, \"<\", \">\"); //this is the same but returns a vector of things between the start and end delims\r\n\tofString::limit(someText, 200); //limit the text to 200 characters. optional arg to add ... to the end.\r\n\r\nQuestions:\r\n- Should we mirror P5 with match and matchAll or should we indicate that regexp is required? ie regexMatch regexMatchAll ?\r\n- Other string utils we could add?\r\n- Should it be ofStringUtils:: or ofString:: ?\r\n- Something to do a split and then return a vector of float int etc?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1131","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1131/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1131/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1131/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1131","id":3911537,"number":1131,"title":"ofTTF feature discussion","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":25,"created_at":"2012-03-31T17:36:25Z","updated_at":"2012-05-27T17:40:30Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"This is a feature discussion issue for what should be added / changed to ofTTF.\r\nWould be great to get some eyes on this from @vtron @ofzach @arturoc and anyone with thoughts on the matter.\r\n\r\nTextAreas:\r\n- Fit text to a box\r\n- Handle overflow ( ie either truncate or resize box height )\r\n- non ragged options\r\n- could textAreas work with both ofTTF and ofDrawBitmapString ? abstract text formatting?\r\n\r\nAlignment:\r\n- Left align a string\r\n- Right align\r\n- Center\r\n- Top align \r\n- Base align \r\n\r\nSpacing:\r\n- Kerning\r\n- Leading / line height\r\n\r\nLoading:\r\n- Allow for loading a font up to a max size for drawing at different sizes. \r\n- Allow for selection and loading of specific sizes within one object. ie: myFont.setCurrentSize(12); \r\n- Font family's / sets ? Bold, Italic etc? \r\n\r\nDrawing:\r\n- Allow for drawing font at different sizes. Scale font as needed. \r\n\r\nFormatting:\r\n- Could we somehow allow a string to have different colors, sizes. Right now it is a pain to change colors or sizes. \r\n- would this be replicating basic html or another approach? maybe better as an addon?\r\n\r\nInfo:\r\n- Ability to get the x and y position of the nth character in the string? useful maybe for cursor or selection?\r\n\r\n**Update:**\r\n-Underline\r\n-Render rect behind text ( a la what @kylemcdonald added to ofDrawBitmapString)\r\n-Scale type to fit a rect + keep aspect ratio\r\n-Crazy: text along a path :) "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1130","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1130/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1130/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1130/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1130","id":3910580,"number":1130,"title":"Define standard header for examples.","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":1,"created_at":"2012-03-31T14:44:01Z","updated_at":"2013-02-11T12:13:03Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Agree on a common format for a header in the contributed example files."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1128","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1128/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1128/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1128/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1128","id":3910549,"number":1128,"title":"upgrade scripts","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2012-03-31T14:38:19Z","updated_at":"2012-03-31T16:32:04Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"When deprecating api's (e.g. ofEvents, ofVertexes), perhaps we could help automate the changes through simple scripts to update api\r\nSuggest sticking to something close to how uncrustify scripts are run (and perhaps there are tools like uncrustify but specifically for this task)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1126","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1126/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1126/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1126/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1126","id":3897090,"number":1126,"title":"PG Feature request: Clean examples folder","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project-generator","name":"project-generator","color":"444444"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":1,"created_at":"2012-03-30T12:51:30Z","updated_at":"2013-02-11T12:13:03Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"It would be nice (and useful for testing the PG) if the PG would get an option to clean the examples folders of all generated files. \r\n\r\nCurrently, the quickest option is to delete the examples folder on disk, and do `git reset --hard HEAD`.\r\n\r\nAs before, milestoned for 0071, but feel free to push back."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1124","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1124/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1124/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1124/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1124","id":3883598,"number":1124,"title":"void dragEvent(ofDragInfo dragInfo) limited to 100 files in osx lion","user":{"login":"jesusgollonet","id":31100,"avatar_url":"https://secure.gravatar.com/avatar/5008d5295e9bc2636313c7b50ed5981d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5008d5295e9bc2636313c7b50ed5981d","url":"https://api.github.com/users/jesusgollonet","html_url":"https://github.com/jesusgollonet","followers_url":"https://api.github.com/users/jesusgollonet/followers","following_url":"https://api.github.com/users/jesusgollonet/following","gists_url":"https://api.github.com/users/jesusgollonet/gists{/gist_id}","starred_url":"https://api.github.com/users/jesusgollonet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jesusgollonet/subscriptions","organizations_url":"https://api.github.com/users/jesusgollonet/orgs","repos_url":"https://api.github.com/users/jesusgollonet/repos","events_url":"https://api.github.com/users/jesusgollonet/events{/privacy}","received_events_url":"https://api.github.com/users/jesusgollonet/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2012-03-29T16:47:29Z","updated_at":"2012-06-07T12:06:49Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"there is a hard limit of 100 files when using drag & drop into an of app. not sure if it's an of issue, but am curious if it comes from the hacked glutDragEventFunc "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1120","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1120/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1120/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1120/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1120","id":3856005,"number":1120,"title":"isFileChanged() for ofImage, ofVideoPlayer, ofSoundPlayer and ofFile","user":{"login":"imanhp","id":1216228,"avatar_url":"https://secure.gravatar.com/avatar/7398ab0bbd07832d0289f26773e65077?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"7398ab0bbd07832d0289f26773e65077","url":"https://api.github.com/users/imanhp","html_url":"https://github.com/imanhp","followers_url":"https://api.github.com/users/imanhp/followers","following_url":"https://api.github.com/users/imanhp/following","gists_url":"https://api.github.com/users/imanhp/gists{/gist_id}","starred_url":"https://api.github.com/users/imanhp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/imanhp/subscriptions","organizations_url":"https://api.github.com/users/imanhp/orgs","repos_url":"https://api.github.com/users/imanhp/repos","events_url":"https://api.github.com/users/imanhp/events{/privacy}","received_events_url":"https://api.github.com/users/imanhp/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2012-03-28T16:21:45Z","updated_at":"2012-03-29T13:05:25Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"When loading a file with ofImage, ofSoundPlayer , ofVideoPlayer-file or any ofFile it would be nice to be able to know if the file changed since it was loaded.\r\n\r\nIts very simple to implement with Poco::File->getLastModified() and it would be very nice if this would be built into the above classes."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1117","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1117/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1117/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1117/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1117","id":3825582,"number":1117,"title":"Can't retrieve desired frame rate once set","user":{"login":"armadillu","id":167057,"avatar_url":"https://secure.gravatar.com/avatar/b87a82d7c86161432ee6388c7cbd5e2c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b87a82d7c86161432ee6388c7cbd5e2c","url":"https://api.github.com/users/armadillu","html_url":"https://github.com/armadillu","followers_url":"https://api.github.com/users/armadillu/followers","following_url":"https://api.github.com/users/armadillu/following","gists_url":"https://api.github.com/users/armadillu/gists{/gist_id}","starred_url":"https://api.github.com/users/armadillu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/armadillu/subscriptions","organizations_url":"https://api.github.com/users/armadillu/orgs","repos_url":"https://api.github.com/users/armadillu/repos","events_url":"https://api.github.com/users/armadillu/events{/privacy}","received_events_url":"https://api.github.com/users/armadillu/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-03-27T11:48:00Z","updated_at":"2012-04-18T17:13:36Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Once ofSetFrameRate() is called, I can't find a way to retrieve it. I think implementing a ofGetDesiredFrameRate() in ofAppRunner would make sense, also adding getDesiredFrameRate() to ofAppBaseWindow and all subclasses, where the actual value is stored. \r\n\r\nThis can be useful to compare the desired frame rate with actual frame rate and react accordingly if required."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1116","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1116/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1116/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1116/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1116","id":3813852,"number":1116,"title":"ofVBO updateIndexData incorrect buffer type.","user":{"login":"vade","id":65011,"avatar_url":"https://secure.gravatar.com/avatar/37aca214d4875cd90af9d67072c82642?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"37aca214d4875cd90af9d67072c82642","url":"https://api.github.com/users/vade","html_url":"https://github.com/vade","followers_url":"https://api.github.com/users/vade/followers","following_url":"https://api.github.com/users/vade/following","gists_url":"https://api.github.com/users/vade/gists{/gist_id}","starred_url":"https://api.github.com/users/vade/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vade/subscriptions","organizations_url":"https://api.github.com/users/vade/orgs","repos_url":"https://api.github.com/users/vade/repos","events_url":"https://api.github.com/users/vade/events{/privacy}","received_events_url":"https://api.github.com/users/vade/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":5,"created_at":"2012-03-26T18:26:05Z","updated_at":"2012-03-26T22:27:14Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/gl/ofVbo.cpp#L343\r\n\r\nIndices should be specified as GL_ELEMENT_ARRAY_BUFFER unless I am mistaken."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1115","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1115/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1115/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1115/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1115","id":3812318,"number":1115,"title":"optimization level in xcode projects","user":{"login":"colormotor","id":1239872,"avatar_url":"https://secure.gravatar.com/avatar/2548dbd6a86902ed5260b5f76710b83c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2548dbd6a86902ed5260b5f76710b83c","url":"https://api.github.com/users/colormotor","html_url":"https://github.com/colormotor","followers_url":"https://api.github.com/users/colormotor/followers","following_url":"https://api.github.com/users/colormotor/following","gists_url":"https://api.github.com/users/colormotor/gists{/gist_id}","starred_url":"https://api.github.com/users/colormotor/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/colormotor/subscriptions","organizations_url":"https://api.github.com/users/colormotor/orgs","repos_url":"https://api.github.com/users/colormotor/repos","events_url":"https://api.github.com/users/colormotor/events{/privacy}","received_events_url":"https://api.github.com/users/colormotor/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2012-03-26T17:05:14Z","updated_at":"2012-03-26T18:45:51Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"The default optimization settings for debug builds in example XCode projects is set to Fastest,Smallest thus making debugging very difficult, is there a specific reason for this?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1114","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1114/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1114/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1114/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1114","id":3812275,"number":1114,"title":"macros in ofArduino","user":{"login":"colormotor","id":1239872,"avatar_url":"https://secure.gravatar.com/avatar/2548dbd6a86902ed5260b5f76710b83c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2548dbd6a86902ed5260b5f76710b83c","url":"https://api.github.com/users/colormotor","html_url":"https://github.com/colormotor","followers_url":"https://api.github.com/users/colormotor/followers","following_url":"https://api.github.com/users/colormotor/following","gists_url":"https://api.github.com/users/colormotor/gists{/gist_id}","starred_url":"https://api.github.com/users/colormotor/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/colormotor/subscriptions","organizations_url":"https://api.github.com/users/colormotor/orgs","repos_url":"https://api.github.com/users/colormotor/repos","events_url":"https://api.github.com/users/colormotor/events{/privacy}","received_events_url":"https://api.github.com/users/colormotor/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":{"login":"joshuajnoble","id":237423,"avatar_url":"https://secure.gravatar.com/avatar/10960ba0f305803a1cdc7cd6188d643b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"10960ba0f305803a1cdc7cd6188d643b","url":"https://api.github.com/users/joshuajnoble","html_url":"https://github.com/joshuajnoble","followers_url":"https://api.github.com/users/joshuajnoble/followers","following_url":"https://api.github.com/users/joshuajnoble/following","gists_url":"https://api.github.com/users/joshuajnoble/gists{/gist_id}","starred_url":"https://api.github.com/users/joshuajnoble/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/joshuajnoble/subscriptions","organizations_url":"https://api.github.com/users/joshuajnoble/orgs","repos_url":"https://api.github.com/users/joshuajnoble/repos","events_url":"https://api.github.com/users/joshuajnoble/events{/privacy}","received_events_url":"https://api.github.com/users/joshuajnoble/received_events","type":"User"},"milestone":null,"comments":2,"created_at":"2012-03-26T17:02:21Z","updated_at":"2012-08-02T10:10:07Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I had some problems because of macro definitions in ofArduino.h overriding an enum in a a class of my codebase ( SHIFT )\r\nIt's not exactly a bug! but I would suggest using enums or const int instead of the macros to avoid any conflicts\r\nI solved the problem by modifying \r\n#define SHIFT 0x05 \r\ninto \r\nconst int SHIFT = 0x05;\r\n\r\nanother solution could be using enumerations as \r\nenum\r\n{\r\n ...\r\n SHIFT = 0x05,\r\n etc...\r\n};\r\n\r\nI believe this would not break any of the existing code\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1110","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1110/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1110/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1110/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1110","id":3799872,"number":1110,"title":"add a simple regex function like ofSplitString()","user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2012-03-25T18:56:37Z","updated_at":"2012-03-25T20:07:16Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Todd's example has this code a few times in it by hand, but I'm thinking it's so simple it could be added along side ofSplitString() and would be really useful ? for sure, more string utility functions are helpful, and for basic text parsing, this is great. Poco gives us this for free, so it doesn't seem like a huge stretch to think of something like this, plus find and replace, etc. Would make the regex example much shorter. \r\n\r\np5 has something similar, if that's a helpful argument: \r\n\r\nhttp://processing.org/reference/matchAll_.html\r\n\r\n\r\n\tvector < string > ofxRegex::getMatchedStrings (string contents, string regex );\r\n\tvector < string > ofxRegex::getMatchedStrings (string contents, string regex ){\r\n \r\n\t vector < string > results;\r\n\t RegularExpression regEx(regex);\r\n\t RegularExpression::Match match;\r\n \r\n\t while(regEx.match(contents, match) != 0) {\r\n \r\n\t // we get the sub string from the content\r\n\t // and then trim the content so that we\r\n\t // can continue to search \r\n\t string foundStr = contents.substr(match.offset, match.length);\r\n\t contents = contents.substr(match.offset + match.length);\r\n \r\n\t results.push_back(foundStr);\r\n \r\n\t }\r\n\t return results;\r\n\t}"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1109","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1109/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1109/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1109/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1109","id":3799653,"number":1109,"title":"mac paths don't seem right until you call \"ofToDataPath()\"","user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2012-03-25T18:18:28Z","updated_at":"2012-03-25T18:50:13Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"code to recreate: \r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::setup(){\r\n system(\"pwd;\");\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::update(){\r\n system(\"pwd;\");\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::draw(){\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::keyPressed(int key){\r\n cout << ofToDataPath(\"temp\") << endl;\r\n}\r\n\r\nproduces: \r\n\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n../../../data/temp\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin/emptyExampleDebug.app/Contents/MacOS\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin/emptyExampleDebug.app/Contents/MacOS\r\n\r\nthis is because the code that fixes OSX paths isn't called until you call ofToDataPath(). a good fix I think would be to set ofDataPathRoot (which happens in ofToDataPath) somewhere early in ofRunApp(). Or should it happen even earlier?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1103","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1103/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1103/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1103/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1103","id":3754055,"number":1103,"title":"PG feature request: Generate makefile-only projects","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project-generator","name":"project-generator","color":"444444"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":5,"created_at":"2012-03-21T21:43:34Z","updated_at":"2013-02-11T12:13:03Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"It would be great if the PG could also generate projects/examples for usage with Eclipse, i.e. just the makefile related files, no CB or other project files."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1099","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1099/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1099/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1099/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1099","id":3710691,"number":1099,"title":"issue with projectGenerator and XIB files.","user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project-generator","name":"project-generator","color":"444444"}],"state":"open","assignee":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":9,"created_at":"2012-03-19T14:27:25Z","updated_at":"2013-02-11T12:16:29Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"iPhoneGuiExample created by the projectGenerator seems to have an issue with XIB files.\r\nthe XIB is included in the project but can not be viewed inside the xcode project.\r\nin another instance, it was causing the app to crash.\r\n\r\nwhen removing the XIB and adding it back to the project manually, it start working again.\r\nwhich makes me believe its got something to do with the way projectGenerator is adding the XIB to the project.\r\n\r\nive compared the before and after (adding the XIB back manually) and here are the differences in the xcode projects.\r\nnote, the top line is the before and the bottom is the after.\r\n\r\n/* MyGuiView.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; name = MyGuiView.xib; path = gui/MyGuiView.xib; sourceTree = \"\"; };\r\n/* MyGuiView.xib */ = {isa = PBXFileReference; explicitFileType = file; fileEncoding = 30; name = MyGuiView.xib; path = src/gui/MyGuiView.xib; sourceTree = SOURCE_ROOT; };\r\n\r\n/* MyGuiView.xib in Resources */\r\n/* MyGuiView.xib in Sources */"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1098","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1098/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1098/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1098/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1098","id":3710293,"number":1098,"title":"feature / bug - #pragma omp critical(ofLog)","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/critical","name":"critical","color":"ff0000"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":11,"created_at":"2012-03-19T14:04:51Z","updated_at":"2013-02-11T12:13:03Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"whenever i call ofLog beneath openmp i have to wrap it in ```#pragma omp critical (ofLog)``` otherwise i get a crash\r\ni found adding the line above \r\nhttps://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/utils/ofLog.cpp#L84\r\nworks pretty well\r\n\r\nany objections to having it in there?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1075","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1075/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1075/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1075/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1075","id":3662214,"number":1075,"title":"bug ofDirectory::open(string path) actually loads the entire dir into memory?","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"milestone":null,"comments":2,"created_at":"2012-03-15T07:54:55Z","updated_at":"2012-03-15T20:34:17Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I'm finding that `ofDirector::listDir, open` are extremely slow\r\nit seems that it's actually loading the entire dir contents into memory\r\n\r\nit's possible to then do something like\r\n```\r\nofLoadImage(myPixels, dir.getFile(i));\r\n```\r\nand you can quickly load that image from memory. which is faster than\r\n```\r\nofLoadImage(myPixels, dir.getFile(i).getAbsolutePath());\r\n```\r\n\r\nBut this doesn't seem to work consistently (even though the slow listing is consistent)\r\nand surely isn't what we want."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1070","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1070/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1070/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1070/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1070","id":3647640,"number":1070,"title":"Alpha movies in GStreamer","user":{"login":"emmanuelgeoffray","id":808090,"avatar_url":"https://secure.gravatar.com/avatar/c1ec5161b69b4a990436deafb1170d64?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"c1ec5161b69b4a990436deafb1170d64","url":"https://api.github.com/users/emmanuelgeoffray","html_url":"https://github.com/emmanuelgeoffray","followers_url":"https://api.github.com/users/emmanuelgeoffray/followers","following_url":"https://api.github.com/users/emmanuelgeoffray/following","gists_url":"https://api.github.com/users/emmanuelgeoffray/gists{/gist_id}","starred_url":"https://api.github.com/users/emmanuelgeoffray/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/emmanuelgeoffray/subscriptions","organizations_url":"https://api.github.com/users/emmanuelgeoffray/orgs","repos_url":"https://api.github.com/users/emmanuelgeoffray/repos","events_url":"https://api.github.com/users/emmanuelgeoffray/events{/privacy}","received_events_url":"https://api.github.com/users/emmanuelgeoffray/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":9,"created_at":"2012-03-14T13:02:41Z","updated_at":"2013-01-15T11:28:36Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hello,\r\nI needed alpha channel in short length video for a recent project.\r\nIn the forum there is some old zip file for a ofxAlphaVideoPlayer that is still working, but that's OS X & windows only as it's based on QT.\r\nI'm working on linux, and I didn't find anything for GStreamer, so I modified the existing ofGstUtils and ofGstVideoPlayer.\r\nWould you mind if I do a pull request for this?\r\nI can also provide an example with a short length video using animation codec.\r\nWhat do you think?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1068","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1068/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1068/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1068/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1068","id":3631618,"number":1068,"title":"Continuous integration/testing","user":{"login":"gabrielstuff","id":285033,"avatar_url":"https://secure.gravatar.com/avatar/390ea42c23c2c383f973abdafa24bb07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"390ea42c23c2c383f973abdafa24bb07","url":"https://api.github.com/users/gabrielstuff","html_url":"https://github.com/gabrielstuff","followers_url":"https://api.github.com/users/gabrielstuff/followers","following_url":"https://api.github.com/users/gabrielstuff/following","gists_url":"https://api.github.com/users/gabrielstuff/gists{/gist_id}","starred_url":"https://api.github.com/users/gabrielstuff/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gabrielstuff/subscriptions","organizations_url":"https://api.github.com/users/gabrielstuff/orgs","repos_url":"https://api.github.com/users/gabrielstuff/repos","events_url":"https://api.github.com/users/gabrielstuff/events{/privacy}","received_events_url":"https://api.github.com/users/gabrielstuff/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/automation","name":"automation","color":"5d5d5d"}],"state":"open","assignee":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"milestone":null,"comments":27,"created_at":"2012-03-13T15:49:23Z","updated_at":"2013-02-15T15:07:44Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hey !\r\n\r\nMe again. Didn't find anywhere this infos. I'm currently testing the travis-ci.org service.\r\nAs many people are working on the project and as many many issue are raised, and fixed, I thought it could be great to add some test and thus the travis service.\r\n\r\nIt would avoid the problem met here :\r\nhttps://github.com/openframeworks/openFrameworks/commit/7ca7833ea1afb6bd5a6c54031e3fa688aa0c0ba8\r\nand the discussion here :\r\nhttps://github.com/openframeworks/openFrameworks/issues/804\r\nor there :\r\nhttps://github.com/openframeworks/openFrameworks/pull/921\r\n\r\nI read that :\r\n\r\n>feel free to make a unitTests folder at the root level of OF -\r\n> that is where all unitTests will go.\r\n\r\nBut didn't find them.\r\n\r\nThe travis service will permit to get the little badge we know well : \r\n[![Build Status](https://secure.travis-ci.org/soixantecircuits/openFrameworks.png?branch=master)](http://travis-ci.org/soixantecircuits/openFrameworks)\r\n\r\nAlso, why not adding some spec test, to ensure future development of features.\r\nI'm currently reading :\r\nhttp://www.squidoo.com/cplusplus-behaviour-driven-development-tools#module124841511\r\nhttp://sourceforge.net/apps/mediawiki/turtle/index.php?title=Turtle\r\n\r\nFor those who want some other nice reading :\r\n\r\nhttp://gamesfromwithin.com/exploring-the-c-unit-testing-framework-jungle\r\n\r\nThe travis test is here, currently it is a total fake, but I just proposed the idea of a test driven development\r\nhttp://travis-ci.org/#!/soixantecircuits/openFrameworks/builds/854259 "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1063","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1063/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1063/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1063/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1063","id":3627067,"number":1063,"title":"Automatic installer + dependencies handler","user":{"login":"gabrielstuff","id":285033,"avatar_url":"https://secure.gravatar.com/avatar/390ea42c23c2c383f973abdafa24bb07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"390ea42c23c2c383f973abdafa24bb07","url":"https://api.github.com/users/gabrielstuff","html_url":"https://github.com/gabrielstuff","followers_url":"https://api.github.com/users/gabrielstuff/followers","following_url":"https://api.github.com/users/gabrielstuff/following","gists_url":"https://api.github.com/users/gabrielstuff/gists{/gist_id}","starred_url":"https://api.github.com/users/gabrielstuff/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gabrielstuff/subscriptions","organizations_url":"https://api.github.com/users/gabrielstuff/orgs","repos_url":"https://api.github.com/users/gabrielstuff/repos","events_url":"https://api.github.com/users/gabrielstuff/events{/privacy}","received_events_url":"https://api.github.com/users/gabrielstuff/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project-generator","name":"project-generator","color":"444444"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/automation","name":"automation","color":"5d5d5d"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":8,"created_at":"2012-03-13T10:44:57Z","updated_at":"2013-02-11T12:13:03Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hi !\r\n\r\nRecently, I've been in lot of languages, from C++ to ruby, passing by the colosus of javascript and the sea of php. Dropping by various and strange framework such as the Cinder, the jQuery, the Rails, the Processing, etc ...\r\n\r\n## the situation \r\n\r\nWhat I have noticed is that a strong architecture and a really ease use of add-ons makes a framework get stronger. For instance, if we take a look at Ruby, we see that the use of gems give him a powerfull advance over his friend php. \r\n\r\n### the Rubyist\r\n\r\nThis way of thinking is getting even better with the http://gembundler.com/ [Bundler](http://gembundler.com/) friend. The gems have dependencies and a simple GemFile help to easily install all dependencies for one project.\r\n\r\n### the Cinderist\r\n\r\nFor Cinder, we get the block, as for OSX, it quiet easy and fast. Drag and drop and play/code.\r\n\r\n### the jQueryist\r\n\r\nWell, it is not frequent to have jQuery plugins depending on other jQuery plugins, but there are several way to handle dependencies on jQuery and JS.\r\n\r\n### the nodist\r\n\r\nThis lead us to http://npmjs.org/, which is really nice with dependencies.\r\nFor instance, if you tried cloud9ide, you know that you just have to make sure you get the proper package.json :\r\n\r\n```\r\n{\r\n \"name\": \"node-example\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": {\r\n \"express\": \"2.2.0\"\r\n }\r\n}\r\n```\r\n\r\nThis file ensure that everything before running the server will be installed via npm.\r\n\r\n### the ofist\r\n\r\nRight now, we just have the addons.make file, which is nice but does not do any lifting for us. We have to verify that the ofx addons has been downloaded and is installed in the right folder.\r\n\r\n- Why not creating a script that will allow to manage dependencies compilation ? \r\nI have this wonderful ofxJSONsettings, but he depends on [JSONCPP](http://jsoncpp.sourceforge.net/) and on boost, so here we will have :\r\n\r\npackage.json file in the ofxJSONsettings folder :\r\n\r\n```\r\n{\r\n \"name\": \"ofxJSONsettings\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": [{\r\n \"jsoncpp\": \"0.6.0-rc2\"\r\n \"url\":\"http://jsoncpp.svn.sourceforge.net/svnroot/jsoncpp/trunk/\"\r\n \"protocol\":\"svn\"\r\n }\r\n ]\r\n}\r\n```\r\n\r\nHum, then, we have our little bash script :\r\n\r\n`xadd -addon ofxJSONsettings`\r\n\r\nand for a project, we have to ensure that the make file run `xadd -addon ofxJSONsettings` if it does not find ofXJSONsettings.\r\n\r\nThis could lead to simplify and easify the use of plugin ! Hey, I want the new [mistubaRenderer](https://github.com/satoruhiga/ofxMitsubaRenderer) let's give a try :\r\n\r\n```\r\n{\r\n \"name\": \"ofxMitsubaRenderer\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": [{\r\n \"mitsuba\": \"0.1\"\r\n \"url\":\"https://www.mitsuba-renderer.org/hg/mitsuba-bidir\"\r\n \"protocol\":\"hg\"\r\n }\r\n ]\r\n}\r\n```\r\n\r\nWell, this would be simplify if everybody use some same pattern, and respect some convention.\r\n\r\nSo what do you guys think about that ?\r\n\r\n\r\nThank you !\r\n\r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1062","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1062/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1062/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1062/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1062","id":3614231,"number":1062,"title":"regularize code for math addons","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0 Release","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":51,"closed_issues":4,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-03-06T10:40:23Z","due_on":"2013-06-02T07:00:00Z"},"comments":5,"created_at":"2012-03-12T16:33:06Z","updated_at":"2013-02-11T12:13:03Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"right now there is a lot of duplicated code in the vector math classes. for example, normalize() and getNormalized() have separate implementations. if we follow the pattern of always implementing things in self-modifying methods, then providing copy-returning methods as alternatives, this will reduce the amount of code and make it harder to cause bugs or behavioral discrepancies.\r\n\r\n- implementations of an algorithm should always be self-modifying\r\n- copy-returning versions should be implemented using a differently named method, internally making a copy and calling the self-modifying version on the copy.\r\n\r\ne.g. something like (note, this isn't how it's implemented right now):\r\n\r\n\tinline ofVec2f& ofVec2f::normalize() {\r\n\t\tfloat length = (float)sqrt(x*x + y*y);\r\n\t\tif( length > 0 ) {\r\n\t\t\tx /= length;\r\n\t\t\ty /= length;\r\n\t\t}\r\n\t\treturn *this;\r\n\t}\r\n\r\n\tinline ofVec2f ofVec2f::getNormalized() const {\r\n\t\tofVec2f result = *this;\r\n\t\treturn result.normalize();\r\n\t}\r\n\r\ntaken from this post https://github.com/openframeworks/openFrameworks/pull/1061#issuecomment-4455601"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1052","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1052/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1052/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1052/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1052","id":3596240,"number":1052,"title":"ofShader should show an error when using an invalid name","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2012-03-10T17:52:58Z","updated_at":"2012-08-23T06:42:30Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"if you have:\r\n\r\n uniform float dog;\r\n float cat;\r\n\r\nand:\r\n\r\n shader.setUniform1f(\"dog\", ofGetElapsedTimef());\r\n shader.setUniform1f(\"cat\", ofGetElapsedTimef());\r\n\r\nthere is no currently no error printed to the console, and \"cat\" is mysteriously unchanging while \"dog\" is fine."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1047","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1047/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1047/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1047/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1047","id":3587808,"number":1047,"title":"opening video files with system dialog in osx prevents them to play correctly","user":{"login":"hvfrancesco","id":614123,"avatar_url":"https://secure.gravatar.com/avatar/e02a8a3953de9d5d9ec1c7aa8d43eca4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e02a8a3953de9d5d9ec1c7aa8d43eca4","url":"https://api.github.com/users/hvfrancesco","html_url":"https://github.com/hvfrancesco","followers_url":"https://api.github.com/users/hvfrancesco/followers","following_url":"https://api.github.com/users/hvfrancesco/following","gists_url":"https://api.github.com/users/hvfrancesco/gists{/gist_id}","starred_url":"https://api.github.com/users/hvfrancesco/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hvfrancesco/subscriptions","organizations_url":"https://api.github.com/users/hvfrancesco/orgs","repos_url":"https://api.github.com/users/hvfrancesco/repos","events_url":"https://api.github.com/users/hvfrancesco/events{/privacy}","received_events_url":"https://api.github.com/users/hvfrancesco/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":8,"created_at":"2012-03-09T18:54:28Z","updated_at":"2012-03-12T15:31:12Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"whenever I try to open a file using system dialog from OF utils or ofxFileDIalogOSX, the video is loaded correctly but it get stuck and doesn't play at all. see:\r\nhttp://forum.openframeworks.cc/index.php/topic,5233.0.html\r\nhttp://forum.openframeworks.cc/index.php/topic,6515.0.html\r\n\r\nquite a big issue IMHO"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1039","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1039/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1039/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1039/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1039","id":3528378,"number":1039,"title":"make icons for OF apps","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":12,"created_at":"2012-03-06T17:56:58Z","updated_at":"2012-03-20T16:11:54Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"just a small one but would be great. \r\nmaybe even different icon for debug and release? "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1037","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1037/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1037/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1037/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1037","id":3510933,"number":1037,"title":"ofxGui, ofxButton should look visually different to toggle","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2012-03-05T18:06:03Z","updated_at":"2012-03-06T15:32:44Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"right now it is not clear from a visual perspective what is a button / trigger and what is a toggle. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1036","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1036/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1036/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1036/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1036","id":3509628,"number":1036,"title":"ofxGui -> ofGui - how/should we bring into core?","user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":11,"created_at":"2012-03-05T16:56:26Z","updated_at":"2012-07-27T05:34:51Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"xml is one of the reasons this is currently an addon. \r\nthe original idea was to have something simple and minimal that could be in the core. \r\nalso something which could be built off of for larger gui addons ( hence ofParameter ) \r\n\r\nI see a couple of options going forward.\r\n\r\n1) swtich from xml to newline separated text files and move ofGui into core\r\nthis would be quite simple as ofParameter already has a name, value structure \r\n\r\n2) same as 1) but keep ofxGui as an addon - making it a bit simpler to add to a project \r\n2b) add ofParameter to core as it is more general purpose\r\n\r\n3) bring ofxXmlSettings into the core and bring ofGui into core.\r\n\r\n\r\nanyway I thought it would be good to get some discussion going about this.\r\nI'm especially interested in setting up ofParam and ofBaseGui in a way to make things modular and extendable. \r\n\r\nalso could be interesting to look at a way to represent a collection/group of ofParameters\r\nsome of this might be similar to some of the stuff @memo was doing with his plist style system. \r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1034","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1034/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1034/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1034/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1034","id":3495602,"number":1034,"title":"projectGenerator ignores shader .vert and .frag files","user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project-generator","name":"project-generator","color":"444444"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2012-03-04T11:19:04Z","updated_at":"2012-03-12T12:39:10Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"If it finds .vert, .frag (and .geom?) files in the data/ folder, the project generator should make a new folder, in the project file, next to (or inside) src called data/ and add the files to it. (data/ so that beginners can find the files in Finder)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1033","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1033/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1033/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1033/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1033","id":3495503,"number":1033,"title":"ofSetLogLevel(module, level) adds to map but dosen't remove","user":{"login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","html_url":"https://github.com/danomatika","followers_url":"https://api.github.com/users/danomatika/followers","following_url":"https://api.github.com/users/danomatika/following","gists_url":"https://api.github.com/users/danomatika/gists{/gist_id}","starred_url":"https://api.github.com/users/danomatika/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danomatika/subscriptions","organizations_url":"https://api.github.com/users/danomatika/orgs","repos_url":"https://api.github.com/users/danomatika/repos","events_url":"https://api.github.com/users/danomatika/events{/privacy}","received_events_url":"https://api.github.com/users/danomatika/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":11,"created_at":"2012-03-04T10:54:12Z","updated_at":"2012-03-06T15:06:00Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I talked to Arturo about this, but I want to make sure it's known. When you call ofLogSetLogLevel with a module string, that string is added to a map used to check the module's log level ... but right now that string is never removed.\r\n\r\nIf someone creates a large amount module names the map could grow arbitrarily large over time. The thought so far is that no one would make enough module names for it to be a problem.\r\n\r\nFor instance, using the [proposed ofThread rewrite](https://github.com/openframeworks/openFrameworks/pull/1031), each thread creates a new module name when it sets itself to verbose and, in the case of spawning lots of verbose worker threads, the map will grow.\r\n\r\nMy proposed solution would be to remove the module name from the map when the level for that module is set back to OF_LOG_NOTICE and/or to the current log level."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1022","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1022/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1022/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1022/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1022","id":3476540,"number":1022,"title":"Optimisation consistency","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":12,"created_at":"2012-03-02T13:25:15Z","updated_at":"2012-03-30T16:34:06Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Continuation of http://forum.openframeworks.cc/index.php/topic,9095.msg42378.html#new\r\n\r\nNOTE: Things may have changed as the projects I'm using are all created using the older creation tools.\r\nCan somebody up to date please check?\r\n\r\nCurrently XCode's default project setting is /O2 for debug projects\r\nwhilst Visual Studio's is /O0\r\n\r\n/O0 generally makes the most sense for debug mode as it allows for effective program flow and variable tracking (because with /O2, lines of code and variables are commonly optimised away).\r\n\r\nIf we are worried that this will leave default users in a default 'slower state' then perhaps we could make release the default? Then people could be aware that they are selecting debug when they want to actually do some debugging?\r\nBut this may have other issues (such as some libraries might not perform as many checks as otherwise?)\r\n\r\nit might be worth making users more aware of the 2 options anyway, and then start using them consistently"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1019","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1019/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1019/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1019/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1019","id":3462226,"number":1019,"title":"ofFbo needs consideration as far as MRT + MSAA","user":{"login":"kpasko","id":167271,"avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","url":"https://api.github.com/users/kpasko","html_url":"https://github.com/kpasko","followers_url":"https://api.github.com/users/kpasko/followers","following_url":"https://api.github.com/users/kpasko/following","gists_url":"https://api.github.com/users/kpasko/gists{/gist_id}","starred_url":"https://api.github.com/users/kpasko/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kpasko/subscriptions","organizations_url":"https://api.github.com/users/kpasko/orgs","repos_url":"https://api.github.com/users/kpasko/repos","events_url":"https://api.github.com/users/kpasko/events{/privacy}","received_events_url":"https://api.github.com/users/kpasko/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-03-01T19:42:09Z","updated_at":"2012-03-01T19:42:09Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"currently if MSAA is enabled, COLOR_ATTACHMENT[ 0 -> nSamples]_EXT are bound for MS blitting, which could overwrite your texture color attachments without notifying you [ i.e. setSamples(4); setNumTextures(4) ]. There may be some solution where numSamples*numTextures = maxAttachments, allowing for multisampled internal textures, but at the very least we should warn/notify that samples and textures won't play so nicely together, or try to allocate samples/textures in the remaining attachments and notify on overflow."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1007","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1007/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1007/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1007/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1007","id":3438233,"number":1007,"title":"bug #defines in ofConstants conflict with other libraries","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":10,"created_at":"2012-02-29T15:31:18Z","updated_at":"2012-03-01T04:33:36Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"there's a block in ofConstants which reads like:\r\n\r\n```c++\r\n#ifndef PI\r\n\t#define PI 3.14159265358979323846\r\n#endif\r\n\r\n#ifndef TWO_PI\r\n\t#define TWO_PI 6.28318530717958647693\r\n#endif\r\n\r\n#ifndef M_TWO_PI\r\n\t#define M_TWO_PI 6.28318530717958647693\r\n#endif\r\n\r\n#ifndef FOUR_PI\r\n\t#define FOUR_PI 12.56637061435917295385\r\n#endif\r\n\r\n#ifndef HALF_PI\r\n\t#define HALF_PI 1.57079632679489661923\r\n#endif\r\n\r\n#ifndef DEG_TO_RAD\r\n\t#define DEG_TO_RAD (PI/180.0)\r\n#endif\r\n\r\n#ifndef RAD_TO_DEG\r\n\t#define RAD_TO_DEG (180.0/PI)\r\n#endif\r\n\r\n#ifndef MIN\r\n\t#define MIN(x,y) (((x) < (y)) ? (x) : (y))\r\n#endif\r\n\r\n#ifndef MAX\r\n\t#define MAX(x,y) (((x) > (y)) ? (x) : (y))\r\n#endif\r\n\r\n#ifndef CLAMP\r\n\t#define CLAMP(val,min,max) (MAX(MIN(val,max),min))\r\n#endif\r\n\r\n#ifndef ABS\r\n\t#define ABS(x) (((x) < 0) ? -(x) : (x))\r\n#endif\r\n```\r\n\r\nthe problem is i've got this in another header file:\r\n\r\n```c++\r\n// macro-like inline functions\r\n\r\ntemplate\r\ninline T SQR(const T a) {return a*a;}\r\n\r\ntemplate\r\ninline const T &MAX(const T &a, const T &b)\r\n {return b > a ? (b) : (a);}\r\n\r\ninline float MAX(const double &a, const float &b)\r\n {return b > a ? (b) : float(a);}\r\n\r\ninline float MAX(const float &a, const double &b)\r\n {return b > a ? float(b) : (a);}\r\n\r\ntemplate\r\ninline const T &MIN(const T &a, const T &b)\r\n {return b < a ? (b) : (a);}\r\n\r\ninline float MIN(const double &a, const float &b)\r\n {return b < a ? (b) : float(a);}\r\n\r\ninline float MIN(const float &a, const double &b)\r\n {return b < a ? float(b) : (a);}\r\n\r\ntemplate\r\ninline T SIGN(const T &a, const T &b)\r\n\t{return b >= 0 ? (a >= 0 ? a : -a) : (a >= 0 ? -a : a);}\r\n\r\ninline float SIGN(const float &a, const double &b)\r\n\t{return b >= 0 ? (a >= 0 ? a : -a) : (a >= 0 ? -a : a);}\r\n\r\ninline float SIGN(const double &a, const float &b)\r\n\t{return (float)(b >= 0 ? (a >= 0 ? a : -a) : (a >= 0 ? -a : a));}\r\n```\r\n\r\nAnd ofConstants is included in almost every oF file\r\n\r\ni'd suggest moving to inline functions and presume that compiler optimisations makes these 2 options equivalent in terms of performance, but that inline wins out for compatability"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1005","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1005/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1005/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1005/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1005","id":3432042,"number":1005,"title":"feature ofRandom(ofVec3f) ","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":12,"created_at":"2012-02-29T06:32:03Z","updated_at":"2012-03-01T13:02:37Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Propose the following functions:\r\n\r\n```c++\r\nofVec2f ofRandom(const ofVec2f&);\r\nofVec3f ofRandom(const ofVec3f&);\r\nofVec2f ofRandom(const ofVec2f& range1, const ofVec2f& range2);\r\nofVec3f ofRandom(const ofVec3f& range1, const ofVec3f& range2);\r\n```\r\n\r\nalso lots of other candidates for this, e.g. `ofClamp`, `ofMap`, etc\r\nsome clever templating possible?\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1001","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1001/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1001/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1001/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/1001","id":3401755,"number":1001,"title":"OF app sound out not available from Jack","user":{"login":"enrike","id":710785,"avatar_url":"https://secure.gravatar.com/avatar/719e9e7ca6d6d88f3b8da82832cc94c7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"719e9e7ca6d6d88f3b8da82832cc94c7","url":"https://api.github.com/users/enrike","html_url":"https://github.com/enrike","followers_url":"https://api.github.com/users/enrike/followers","following_url":"https://api.github.com/users/enrike/following","gists_url":"https://api.github.com/users/enrike/gists{/gist_id}","starred_url":"https://api.github.com/users/enrike/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/enrike/subscriptions","organizations_url":"https://api.github.com/users/enrike/orgs","repos_url":"https://api.github.com/users/enrike/repos","events_url":"https://api.github.com/users/enrike/events{/privacy}","received_events_url":"https://api.github.com/users/enrike/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"state":"open","assignee":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"milestone":null,"comments":2,"created_at":"2012-02-27T14:59:34Z","updated_at":"2012-05-18T08:47:08Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I have a simple app that plays video files. I try to route (under windows) its output using Jack and Vitual Audio Cable but none can access it. I am just using the basic functionality of ofVideoPlayer, this is the class that deals with the video playing\r\n\r\n\r\n\t#include \"oscVPlayer.h\"\r\n\t#include \"ofMain.h\"\r\n\r\n\r\n\r\n\toscVPlayer::oscVPlayer()\r\n\t{\r\n\t\t\treset();\r\n\t}\r\n\r\n\tvoid oscVPlayer::reset()\r\n\t{ //defaults to fullscreen\r\n\t\t\tw = NULL;\r\n\t\t\th = NULL;\r\n\t\t\tx = 0;\r\n\t\t\ty = 0;\r\n\t\t\tdonereported = false;\r\n\t\t\tloopflag = OF_LOOP_NONE;\r\n\t\t\t\r\n\t\t\tcol.r = 0;\r\n\t\t\tcol.g = 0;\r\n\t\t\tcol.b = 0;\r\n\t\t\tcol.a = 255;\r\n\r\n\t\t\tif (isLoaded())\r\n\t\t{\r\n\t\t\t\t\tsetFrame(0);\r\n\t\t\t\t\tsetUseTexture(1);\r\n\t\t\t\t\tsetPaused(0);\r\n\t\t\t\t\tsetLoopState(OF_LOOP_NORMAL);\r\n\t\t\t\t\tsetSpeed(1);\r\n\t\t\t\t\tsetVolume(255);\r\n\t\t\t\t\tstop();\r\n\t\t}\r\n\t}\r\n\r\n\r\n\tvoid oscVPlayer::setUpVideo(string movie)\r\n\t{\r\n\t\t\tif (movie != \"none\")\r\n\t\t\t{\r\n\t\t\t\t\tif ( loadMovie(movie) )\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\t\tprintf(\"movie loaded\\n\");\r\n\t\t\t\t\t\t\tofVideoPlayer::update();\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\t\tprintf(\"CANNOT load movie\\n\");\r\n\t\t\t\t\t}\r\n\t\t\t}\r\n\t\t\telse\r\n\t\t\t{\r\n\t\t\t\t\tprintf(\"movie parameter is none, cannot load it\\n\");\r\n\t\t\t}\r\n\t}\r\n\r\n\r\n\r\n\r\n\tvoid oscVPlayer::setLoop()\r\n\t{\r\n\t\t\tsetLoopState(loopflag); // go back to your state. otherwise play resets it to loop ON\r\n\t}\r\n\r\n\r\n\r\n\r\n\tvoid oscVPlayer::resetSize()\r\n\t{\r\n\t\t\tw = NULL;\r\n\t\t\th = NULL;\r\n\t}\r\n\r\n\r\n\tvoid oscVPlayer::draw()\r\n\t{\r\n\t\tif (isLoaded())\r\n\t\t{\r\n\t\t\t if (col.a < 255) ofEnableAlphaBlending();\r\n\t\t\t\tofSetColor(col.r,col.g,col.b, col.a);\r\n\t\t\t\tofVideoPlayer::update();\r\n\t\t\t\tif (w==NULL && h==NULL)\r\n\t\t\t\t{\r\n\t\t\t\t\t\tofVideoPlayer::draw(x, y);\r\n\t\t\t\t}\r\n\t\t\t\telse\r\n\t\t\t\t{\r\n\t\t\t\t\t\t\tofVideoPlayer::draw(x, y, w, h);\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (col.a < 255) ofDisableAlphaBlending(); \r\n\t\t}\r\n\t}\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/987","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/987/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/987/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/987/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/987","id":3387163,"number":987,"title":"GL_CULL_FACE breaks ofDrawBitmapString()","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-02-25T20:25:00Z","updated_at":"2012-02-25T20:25:00Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"i think this is because ofDrawBitmapString draws the quads in the wrong orientation. but i'm guessing it works in FBOs... so if we switch the order it will stop working in FBOs."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/985","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/985/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/985/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/985/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/985","id":3386914,"number":985,"title":"Make logging messages more informative","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":33,"created_at":"2012-02-25T19:41:58Z","updated_at":"2013-02-11T12:16:29Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Some logging messages don't really tell where they were triggered. Someone needs to go through them and add information as to what module triggered the message. \r\n@danomatika has already volunteered to do this some time."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/984","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/984/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/984/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/984/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/984","id":3386889,"number":984,"title":"Replace printf() occurences by ofLog() in the core addons","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"}],"state":"open","assignee":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"milestone":null,"comments":5,"created_at":"2012-02-25T19:36:51Z","updated_at":"2013-02-22T17:59:36Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"There's a lot of logging printfs in the core addons. These should be replaced by appropriate ofLog calls."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/976","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/976/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/976/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/976/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/976","id":3382990,"number":976,"title":"ofVec2f::average has unexpected/clumsy behaviour","user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2012-02-25T03:45:02Z","updated_at":"2012-02-27T13:35:34Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"`ofVec2f` has a function called `average` which takes an array of `ofVec2f` and calculates the centroid. it is not static, rather it overwrites its own `x` and `y` with the average. \r\n\r\nthis is a little weird. `average` should be static, or at least be *returning* the average rather than assigning to self."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/955","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/955/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/955/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/955/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/955","id":3367910,"number":955,"title":"ofBackgroundGradient needs to be billboarded","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2012-02-24T04:31:01Z","updated_at":"2012-12-28T11:32:24Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"right now if you try and scale/rotate/etc before calling ofBackgroundGradient, it will fail.\r\n\r\npeople generally call ofBackground at the top of draw() so it shouldn't be a huge issue... but it does make it a little 'fragile'."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/933","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/933/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/933/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/933/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/933","id":3357855,"number":933,"title":"Problem with moviePlayerExample under linux64","user":{"login":"agrosjea","id":1466085,"avatar_url":"https://secure.gravatar.com/avatar/e52c167621119d58d03c586bb053a633?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e52c167621119d58d03c586bb053a633","url":"https://api.github.com/users/agrosjea","html_url":"https://github.com/agrosjea","followers_url":"https://api.github.com/users/agrosjea/followers","following_url":"https://api.github.com/users/agrosjea/following","gists_url":"https://api.github.com/users/agrosjea/gists{/gist_id}","starred_url":"https://api.github.com/users/agrosjea/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/agrosjea/subscriptions","organizations_url":"https://api.github.com/users/agrosjea/orgs","repos_url":"https://api.github.com/users/agrosjea/repos","events_url":"https://api.github.com/users/agrosjea/events{/privacy}","received_events_url":"https://api.github.com/users/agrosjea/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2012-02-23T15:46:06Z","updated_at":"2012-02-23T19:12:08Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hello, I get a weird error trying to compile the movieplayerexample under linux64 :\r\n\r\n> `.text._ZN11ofBaseVideoD2Ev' referenced in section `.text._ZN11ofBaseVideoD1Ev[non-virtual thunk to ofBaseVideo::~ofBaseVideo()]' of ../../../libs/openFrameworksCompiled/lib/linux64/libopenFrameworks.a(ofBaseTypes.o): defined in discarded section `.text._ZN11ofBaseVideoD2Ev[_ZN11ofBaseVideoD5Ev]' of ../../../libs/openFrameworksCompiled/lib/linux64/libopenFrameworks.a(ofBaseTypes.o)\r\n\r\nMy version of OF is 007, it used to work under 0062...\r\n\r\nWhat should I do ?\r\n\r\nThanks"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/931","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/931/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/931/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/931/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/931","id":3351646,"number":931,"title":"ofCamera is not aware of ofOrientation","user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/critical","name":"critical","color":"ff0000"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/11/labels","id":264333,"number":11,"title":"0.8.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":49,"closed_issues":5,"state":"open","created_at":"2013-02-11T12:15:03Z","updated_at":"2013-03-10T12:09:16Z","due_on":"2013-04-21T07:00:00Z"},"comments":30,"created_at":"2012-02-23T05:13:24Z","updated_at":"2013-02-11T12:16:29Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":""},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/930","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/930/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/930/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/930/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/930","id":3351643,"number":930,"title":"ofSetupPerspective ofOrientation","user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-02-23T05:12:47Z","updated_at":"2012-02-23T05:12:47Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"do we need the ofOrientation parameter in ofSetupPerspective?\r\n\r\nit applies the rotation but if ofSetOrientation hasn't been called before passing the same orientation the results are not the expected.\r\n\r\nto test it:\r\n\r\nofSetOrientation(OF_ORIENTATION_90_LEFT);\r\nofSetPerspective(ofGetWidth(), ofGetHeight(),OF_ORIENTATION_90_LEFT)\r\n\r\nworks as expected but calling only \r\n\r\nofSetPerspective(ofGetWidth(), ofGetHeight(),OF_ORIENTATION_90_LEFT)\r\n\r\napplies a weird rotation cause the values of ofGetWidth(), ofGetHeight() are still the default ones\r\n\r\nis there any case where it's useful to call setupPerspective with a different orientation that the window has?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/929","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/929/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/929/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/929/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/929","id":3351374,"number":929,"title":"ofGetLogLevel should also accept modules","user":{"login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","html_url":"https://github.com/danomatika","followers_url":"https://api.github.com/users/danomatika/followers","following_url":"https://api.github.com/users/danomatika/following","gists_url":"https://api.github.com/users/danomatika/gists{/gist_id}","starred_url":"https://api.github.com/users/danomatika/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danomatika/subscriptions","organizations_url":"https://api.github.com/users/danomatika/orgs","repos_url":"https://api.github.com/users/danomatika/repos","events_url":"https://api.github.com/users/danomatika/events{/privacy}","received_events_url":"https://api.github.com/users/danomatika/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-02-23T04:19:48Z","updated_at":"2012-02-23T04:19:48Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Currently ofGetLogLevel returns the global log level aka for the \"OF\" module. It would be nice to be able to get the log level for user modules via:\r\n\r\n ofLogLevel level = ofGetLogLevel(\"myLogModule\");\r\n\r\nIt would as simple as adding the module as a string variable with a default of \"OF\".\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/928","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/928/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/928/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/928/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/928","id":3351170,"number":928,"title":"no ofGetBackground()","user":{"login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","html_url":"https://github.com/danomatika","followers_url":"https://api.github.com/users/danomatika/followers","following_url":"https://api.github.com/users/danomatika/following","gists_url":"https://api.github.com/users/danomatika/gists{/gist_id}","starred_url":"https://api.github.com/users/danomatika/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danomatika/subscriptions","organizations_url":"https://api.github.com/users/danomatika/orgs","repos_url":"https://api.github.com/users/danomatika/repos","events_url":"https://api.github.com/users/danomatika/events{/privacy}","received_events_url":"https://api.github.com/users/danomatika/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-02-23T03:46:32Z","updated_at":"2012-02-23T03:46:32Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Currently there is a ofBgColorPtr(), but maybe it's nice to have a ofGetBackground() that returns an ofColor object or a reference to one."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/926","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/926/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/926/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/926/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/926","id":3341020,"number":926,"title":"ofGetViewportWidth/Height returns 0 at startup","user":{"login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","html_url":"https://github.com/danomatika","followers_url":"https://api.github.com/users/danomatika/followers","following_url":"https://api.github.com/users/danomatika/following","gists_url":"https://api.github.com/users/danomatika/gists{/gist_id}","starred_url":"https://api.github.com/users/danomatika/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danomatika/subscriptions","organizations_url":"https://api.github.com/users/danomatika/orgs","repos_url":"https://api.github.com/users/danomatika/repos","events_url":"https://api.github.com/users/danomatika/events{/privacy}","received_events_url":"https://api.github.com/users/danomatika/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-02-22T19:12:56Z","updated_at":"2012-02-22T19:12:56Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofGetViewportWidth/Height returns 0 is called in an object destructor, while ofGetWidth/Height do not. Could the ofGetViewport size be set to the ofGetWidth/Height size instead of 0 be default?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/925","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/925/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/925/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/925/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/925","id":3324501,"number":925,"title":"ofImage has type as int, public vars, & missing getBPP, etc","user":{"login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","html_url":"https://github.com/danomatika","followers_url":"https://api.github.com/users/danomatika/followers","following_url":"https://api.github.com/users/danomatika/following","gists_url":"https://api.github.com/users/danomatika/gists{/gist_id}","starred_url":"https://api.github.com/users/danomatika/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danomatika/subscriptions","organizations_url":"https://api.github.com/users/danomatika/orgs","repos_url":"https://api.github.com/users/danomatika/repos","events_url":"https://api.github.com/users/danomatika/events{/privacy}","received_events_url":"https://api.github.com/users/danomatika/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-02-22T00:28:08Z","updated_at":"2012-02-22T00:28:08Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I noticed a few things when working with ofImage:\r\n\r\n* ofImage has a type variable for the image type but this is an int, as opposed to the ofImageType enum, so it's annoying to force convert ...\r\n* the width, height, & bpp variables are public, they should be protected with getters/setters\r\n* there isn't a getBytesPerPixel, you have to get the pixel reference then call getBytesPerPixel ..."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/920","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/920/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/920/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/920/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/920","id":3248309,"number":920,"title":"Transform stack","user":{"login":"AugusteBonnin","id":1442658,"avatar_url":"https://secure.gravatar.com/avatar/cbf7aa7c655d3652170984c9aa497a4c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"cbf7aa7c655d3652170984c9aa497a4c","url":"https://api.github.com/users/AugusteBonnin","html_url":"https://github.com/AugusteBonnin","followers_url":"https://api.github.com/users/AugusteBonnin/followers","following_url":"https://api.github.com/users/AugusteBonnin/following","gists_url":"https://api.github.com/users/AugusteBonnin/gists{/gist_id}","starred_url":"https://api.github.com/users/AugusteBonnin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/AugusteBonnin/subscriptions","organizations_url":"https://api.github.com/users/AugusteBonnin/orgs","repos_url":"https://api.github.com/users/AugusteBonnin/repos","events_url":"https://api.github.com/users/AugusteBonnin/events{/privacy}","received_events_url":"https://api.github.com/users/AugusteBonnin/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2012-02-16T09:39:46Z","updated_at":"2012-02-16T09:39:46Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"What about having our own transform stack , in order to:\r\n-avoid to recompute globalTransformMatrix in each ofNode\r\n-could use it when rendering with OpenGL ES 2.0 shaders , which do not support predefined matrix values as world (modelview), worldProjection , or world inverseTranspose (for normals)"}] + diff --git a/lib/github/tests/ReplayData/PaginatedList.testCustomPerPageWithNoUrlParams2.txt b/lib/github/tests/ReplayData/PaginatedList.testCustomPerPageWithNoUrlParams2.txt new file mode 100644 index 0000000000..d1d60eff37 --- /dev/null +++ b/lib/github/tests/ReplayData/PaginatedList.testCustomPerPageWithNoUrlParams2.txt @@ -0,0 +1,44 @@ +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/comments?per_page=100 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4876'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '164025'), ('server', 'GitHub.com'), ('last-modified', 'Wed, 19 Jun 2013 10:28:42 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last"'), ('etag', '"a3e035a1aeb9a4a31629a5537db4a857"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 19 Jun 2013 10:31:29 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/191434","html_url":"https://github.com/openframeworks/openFrameworks/commit/1fa80a4bc3a5e84e86d3447e64378fd7fd11b30f#commitcomment-191434","id":191434,"user":{"login":"hogiedoo","id":149423,"avatar_url":"https://secure.gravatar.com/avatar/636297ac6a7643e5dbe90804b6668722?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"636297ac6a7643e5dbe90804b6668722","url":"https://api.github.com/users/hogiedoo","html_url":"https://github.com/hogiedoo","followers_url":"https://api.github.com/users/hogiedoo/followers","following_url":"https://api.github.com/users/hogiedoo/following{/other_user}","gists_url":"https://api.github.com/users/hogiedoo/gists{/gist_id}","starred_url":"https://api.github.com/users/hogiedoo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hogiedoo/subscriptions","organizations_url":"https://api.github.com/users/hogiedoo/orgs","repos_url":"https://api.github.com/users/hogiedoo/repos","events_url":"https://api.github.com/users/hogiedoo/events{/privacy}","received_events_url":"https://api.github.com/users/hogiedoo/received_events","type":"User"},"position":106,"line":539,"path":"libs/openFrameworks/app/ofAppGlutWindow.cpp","commit_id":"1fa80a4bc3a5e84e86d3447e64378fd7fd11b30f","created_at":"2010-11-11T16:21:10Z","updated_at":"2010-11-11T16:21:10Z","body":"Why is mouseDragged no longer being called, and mouseReleased is being called instead? This commit breaks previous behavior."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/195170","html_url":"https://github.com/openframeworks/openFrameworks/commit/4d4a707a64e52d2fa57428f85c1a3fb0dcc09dc1#commitcomment-195170","id":195170,"user":{"login":"cyphunk","id":119662,"avatar_url":"https://secure.gravatar.com/avatar/4f9899a028a87ab8991049808f91a717?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"4f9899a028a87ab8991049808f91a717","url":"https://api.github.com/users/cyphunk","html_url":"https://github.com/cyphunk","followers_url":"https://api.github.com/users/cyphunk/followers","following_url":"https://api.github.com/users/cyphunk/following{/other_user}","gists_url":"https://api.github.com/users/cyphunk/gists{/gist_id}","starred_url":"https://api.github.com/users/cyphunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cyphunk/subscriptions","organizations_url":"https://api.github.com/users/cyphunk/orgs","repos_url":"https://api.github.com/users/cyphunk/repos","events_url":"https://api.github.com/users/cyphunk/events{/privacy}","received_events_url":"https://api.github.com/users/cyphunk/received_events","type":"User"},"position":13,"line":674,"path":"libs/openFrameworks/graphics/ofGraphics.cpp","commit_id":"4d4a707a64e52d2fa57428f85c1a3fb0dcc09dc1","created_at":"2010-11-16T18:02:21Z","updated_at":"2010-11-16T18:20:46Z","body":"this will break various external libs, and their examples, and prior code. it is easy to fix but I hope that we wont see a slew of such name changes. Even the change is questionable. why is ofSetColor for grayscale? Perhaps in the future the linguistic gods will determine that we must call that ofSetGrayColor?? A lot of name esthetic modifications like this should be lumped into a major release. Which perhaps this is? A major release should include a lot of collaboration from those that make external libs and be released with a warning \"this might mindlessly break your code\". Or maybe i am missing something and SetColor() is commonly used for gray scale in most other image processing libs, or?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/195310","html_url":"https://github.com/openframeworks/openFrameworks/commit/4d4a707a64e52d2fa57428f85c1a3fb0dcc09dc1#commitcomment-195310","id":195310,"user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"position":13,"line":674,"path":"libs/openFrameworks/graphics/ofGraphics.cpp","commit_id":"4d4a707a64e52d2fa57428f85c1a3fb0dcc09dc1","created_at":"2010-11-16T20:37:18Z","updated_at":"2010-11-16T20:37:18Z","body":"Hi - Yes - in processing ( a very similar library ) setColor(int gray) is used quite heavily. We felt that hex is rarely used and we wanted more parity with the Processing syntax. We didn't take this decision lightly and there won't be a ton of other name changes like this. Also this is meant for the 007 release so we will make sure to point it out and have all the examples and docs updated. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/201576","html_url":"https://github.com/openframeworks/openFrameworks/commit/4d4a707a64e52d2fa57428f85c1a3fb0dcc09dc1#commitcomment-201576","id":201576,"user":{"login":"cyphunk","id":119662,"avatar_url":"https://secure.gravatar.com/avatar/4f9899a028a87ab8991049808f91a717?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"4f9899a028a87ab8991049808f91a717","url":"https://api.github.com/users/cyphunk","html_url":"https://github.com/cyphunk","followers_url":"https://api.github.com/users/cyphunk/followers","following_url":"https://api.github.com/users/cyphunk/following{/other_user}","gists_url":"https://api.github.com/users/cyphunk/gists{/gist_id}","starred_url":"https://api.github.com/users/cyphunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cyphunk/subscriptions","organizations_url":"https://api.github.com/users/cyphunk/orgs","repos_url":"https://api.github.com/users/cyphunk/repos","events_url":"https://api.github.com/users/cyphunk/events{/privacy}","received_events_url":"https://api.github.com/users/cyphunk/received_events","type":"User"},"position":13,"line":674,"path":"libs/openFrameworks/graphics/ofGraphics.cpp","commit_id":"4d4a707a64e52d2fa57428f85c1a3fb0dcc09dc1","created_at":"2010-11-24T00:27:04Z","updated_at":"2010-11-24T00:27:04Z","body":"Thanks for the response. Yes I guess the choice makes sense. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/245603","html_url":"https://github.com/openframeworks/openFrameworks/commit/3fd6f5ede33c896dcff458b3325b44dd160f9101#commitcomment-245603","id":245603,"user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"position":null,"line":null,"path":"","commit_id":"3fd6f5ede33c896dcff458b3325b44dd160f9101","created_at":"2011-01-19T23:07:02Z","updated_at":"2011-01-19T23:07:02Z","body":"hmm maybe we should also check if last byte is null before adding?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/245609","html_url":"https://github.com/openframeworks/openFrameworks/commit/3fd6f5ede33c896dcff458b3325b44dd160f9101#commitcomment-245609","id":245609,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":null,"line":null,"path":"","commit_id":"3fd6f5ede33c896dcff458b3325b44dd160f9101","created_at":"2011-01-19T23:09:38Z","updated_at":"2011-01-19T23:09:38Z","body":"yes haven't commited this yet, cause that will affect binaries. i was thinking something like:\r\n\r\nstring getText()\r\n\r\nor having a binary/text flag for the buffer"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/245614","html_url":"https://github.com/openframeworks/openFrameworks/commit/3fd6f5ede33c896dcff458b3325b44dd160f9101#commitcomment-245614","id":245614,"user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"position":null,"line":null,"path":"","commit_id":"3fd6f5ede33c896dcff458b3325b44dd160f9101","created_at":"2011-01-19T23:14:18Z","updated_at":"2011-01-19T23:14:18Z","body":"ahh - I made an issue to keep track of this:\r\nhttps://github.com/openframeworks/openFrameworks/issues/issue/409"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/245619","html_url":"https://github.com/openframeworks/openFrameworks/commit/3fd6f5ede33c896dcff458b3325b44dd160f9101#commitcomment-245619","id":245619,"user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"position":null,"line":null,"path":"","commit_id":"3fd6f5ede33c896dcff458b3325b44dd160f9101","created_at":"2011-01-19T23:16:29Z","updated_at":"2011-01-19T23:16:29Z","body":"maybe we could fix the geometry shader to be able to load from ofBuffer checking the number of bytes instead of just using .getBuffer() \r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/245623","html_url":"https://github.com/openframeworks/openFrameworks/commit/3fd6f5ede33c896dcff458b3325b44dd160f9101#commitcomment-245623","id":245623,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":null,"line":null,"path":"","commit_id":"3fd6f5ede33c896dcff458b3325b44dd160f9101","created_at":"2011-01-19T23:19:28Z","updated_at":"2011-01-19T23:19:28Z","body":"i was going to fix this:\r\n\r\nstring getText\r\nchar * getBinaryBuffer\r\n\r\nwe always add a 0 at the end but the size is:\r\n\r\nreturn buffer.size()-1\r\n\r\nthat way both of them are correct"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/246362","html_url":"https://github.com/openframeworks/openFrameworks/commit/1ccc0de6f74c1a6cb51eed38b761de88a39b5595#commitcomment-246362","id":246362,"user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"1ccc0de6f74c1a6cb51eed38b761de88a39b5595","created_at":"2011-01-20T17:48:38Z","updated_at":"2011-01-20T17:48:53Z","body":" buffer.resize(size+n+1,0);\n\n memcpy(&(buffer[0])+size,aux_buffer,n);\n\nis this right? \nits doing +1 in the while loop - shouldn't this just happen at the end?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/246371","html_url":"https://github.com/openframeworks/openFrameworks/commit/1ccc0de6f74c1a6cb51eed38b761de88a39b5595#commitcomment-246371","id":246371,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"1ccc0de6f74c1a6cb51eed38b761de88a39b5595","created_at":"2011-01-20T17:52:23Z","updated_at":"2011-01-20T17:52:23Z","body":"Yes the result is the same and that way it avoids 1 resizing at the end and a possible reallocation"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/255446","html_url":"https://github.com/openframeworks/openFrameworks/commit/2fba18d74da032d820eaf030486a1dafeb5aaa7a#commitcomment-255446","id":255446,"user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"2fba18d74da032d820eaf030486a1dafeb5aaa7a","created_at":"2011-01-30T02:48:36Z","updated_at":"2011-01-30T02:48:36Z","body":"note - I put the assimp stuff into the core. we need to compile it for linux and win"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/262764","html_url":"https://github.com/openframeworks/openFrameworks/commit/d0281913dbdc227faeba2fe989ce124ad65dda10#commitcomment-262764","id":262764,"user":{"login":"YeongJoo-Kim","id":604111,"avatar_url":"https://secure.gravatar.com/avatar/e3805241b205e8ed57f8c83ea850e6e3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e3805241b205e8ed57f8c83ea850e6e3","url":"https://api.github.com/users/YeongJoo-Kim","html_url":"https://github.com/YeongJoo-Kim","followers_url":"https://api.github.com/users/YeongJoo-Kim/followers","following_url":"https://api.github.com/users/YeongJoo-Kim/following{/other_user}","gists_url":"https://api.github.com/users/YeongJoo-Kim/gists{/gist_id}","starred_url":"https://api.github.com/users/YeongJoo-Kim/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/YeongJoo-Kim/subscriptions","organizations_url":"https://api.github.com/users/YeongJoo-Kim/orgs","repos_url":"https://api.github.com/users/YeongJoo-Kim/repos","events_url":"https://api.github.com/users/YeongJoo-Kim/events{/privacy}","received_events_url":"https://api.github.com/users/YeongJoo-Kim/received_events","type":"User"},"position":5,"line":82,"path":"libs/openFrameworks/sound/ofSoundEffect.h","commit_id":"d0281913dbdc227faeba2fe989ce124ad65dda10","created_at":"2011-02-07T05:31:05Z","updated_at":"2011-02-07T05:31:05Z","body":"isfinite()/finite() is can not compile at vs2010"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/273184","html_url":"https://github.com/openframeworks/openFrameworks/commit/b9197b811f16cf0ee1c1f7ffe0eff3938a834dea#commitcomment-273184","id":273184,"user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following{/other_user}","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"b9197b811f16cf0ee1c1f7ffe0eff3938a834dea","created_at":"2011-02-16T11:22:56Z","updated_at":"2011-02-16T11:22:56Z","body":"Can we possibly rename ofRandomize, ofShuffle or ofRandomizeOrder ? I think it would be good to be more accurate in terms of what it's doing -- rearranging order. random makes me think it's picking random values. \r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/273308","html_url":"https://github.com/openframeworks/openFrameworks/commit/b9197b811f16cf0ee1c1f7ffe0eff3938a834dea#commitcomment-273308","id":273308,"user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"b9197b811f16cf0ee1c1f7ffe0eff3938a834dea","created_at":"2011-02-16T14:03:48Z","updated_at":"2011-02-16T14:03:48Z","body":"ofRandomShuffle :) ?\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/286104","html_url":"https://github.com/openframeworks/openFrameworks/commit/7b8cf57e2486eea6c2763e6e109132398fc41cbe#commitcomment-286104","id":286104,"user":{"login":"jonbro","id":1597,"avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"893ec14dc008e3774afe5841115920d6","url":"https://api.github.com/users/jonbro","html_url":"https://github.com/jonbro","followers_url":"https://api.github.com/users/jonbro/followers","following_url":"https://api.github.com/users/jonbro/following{/other_user}","gists_url":"https://api.github.com/users/jonbro/gists{/gist_id}","starred_url":"https://api.github.com/users/jonbro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jonbro/subscriptions","organizations_url":"https://api.github.com/users/jonbro/orgs","repos_url":"https://api.github.com/users/jonbro/repos","events_url":"https://api.github.com/users/jonbro/events{/privacy}","received_events_url":"https://api.github.com/users/jonbro/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"7b8cf57e2486eea6c2763e6e109132398fc41cbe","created_at":"2011-02-28T17:38:35Z","updated_at":"2011-02-28T17:38:35Z","body":"is the ofxDsp stuff going to end up being an add on? that is fine with me, just as long as the core is compatible with it."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/304581","html_url":"https://github.com/openframeworks/openFrameworks/commit/4019a90e403a2e30c1a2acde9d2177f9f065c8ae#commitcomment-304581","id":304581,"user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following{/other_user}","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"4019a90e403a2e30c1a2acde9d2177f9f065c8ae","created_at":"2011-03-16T21:04:35Z","updated_at":"2011-03-16T21:04:35Z","body":"I had to do a silly change to poco h file (removing volatile keyword). We should check this is ok. \r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/331452","html_url":"https://github.com/openframeworks/openFrameworks/commit/fb8fad30736df4c62e64f9547a1121351d801d1a#commitcomment-331452","id":331452,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":8,"line":8,"path":"readme.android","commit_id":"fb8fad30736df4c62e64f9547a1121351d801d1a","created_at":"2011-04-06T15:15:33Z","updated_at":"2011-04-06T15:15:33Z","body":"is this recommendation based on (feature) prerequisites of oF, or on the \"use current software\" adage? the version in the repo is one major release behind currently"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/331458","html_url":"https://github.com/openframeworks/openFrameworks/commit/fb8fad30736df4c62e64f9547a1121351d801d1a#commitcomment-331458","id":331458,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":8,"line":8,"path":"readme.android","commit_id":"fb8fad30736df4c62e64f9547a1121351d801d1a","created_at":"2011-04-06T15:20:45Z","updated_at":"2011-04-06T15:20:45Z","body":"this is for the version in the repo, the android versions that i've been publishing are outdated now and the way of setting everything up has changed quite a bit"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/331487","html_url":"https://github.com/openframeworks/openFrameworks/commit/fb8fad30736df4c62e64f9547a1121351d801d1a#commitcomment-331487","id":331487,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":8,"line":8,"path":"readme.android","commit_id":"fb8fad30736df4c62e64f9547a1121351d801d1a","created_at":"2011-04-06T15:33:44Z","updated_at":"2011-04-06T15:33:44Z","body":"clarification: with \"repo\" i meant the ubuntu repo (e.g. maverick-updates is at 3.5.2) \nsorry"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/331517","html_url":"https://github.com/openframeworks/openFrameworks/commit/fb8fad30736df4c62e64f9547a1121351d801d1a#commitcomment-331517","id":331517,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":8,"line":8,"path":"readme.android","commit_id":"fb8fad30736df4c62e64f9547a1121351d801d1a","created_at":"2011-04-06T15:55:01Z","updated_at":"2011-04-06T15:55:01Z","body":"yes, the repository version is usually outdated and even if it's not right now it will install some plugins at the system level which from my experience can be problematic"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/331555","html_url":"https://github.com/openframeworks/openFrameworks/commit/fb8fad30736df4c62e64f9547a1121351d801d1a#commitcomment-331555","id":331555,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":8,"line":8,"path":"readme.android","commit_id":"fb8fad30736df4c62e64f9547a1121351d801d1a","created_at":"2011-04-06T16:22:03Z","updated_at":"2011-04-06T16:22:03Z","body":"I see. btw, will there be eclipse projects for non-android oF examples/apps in 007?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/331855","html_url":"https://github.com/openframeworks/openFrameworks/commit/fb8fad30736df4c62e64f9547a1121351d801d1a#commitcomment-331855","id":331855,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":8,"line":8,"path":"readme.android","commit_id":"fb8fad30736df4c62e64f9547a1121351d801d1a","created_at":"2011-04-06T20:28:06Z","updated_at":"2011-04-06T20:28:06Z","body":"theres a linux version of the project for the OF library which is already in the repo and it's really easy to import the examples using makefile projects but i don't plan to support it officially for 007"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/332436","html_url":"https://github.com/openframeworks/openFrameworks/commit/fb8fad30736df4c62e64f9547a1121351d801d1a#commitcomment-332436","id":332436,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":8,"line":8,"path":"readme.android","commit_id":"fb8fad30736df4c62e64f9547a1121351d801d1a","created_at":"2011-04-07T07:21:10Z","updated_at":"2011-04-07T07:21:10Z","body":"thanks for the info. i'll shut up now :-)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/358681","html_url":"https://github.com/openframeworks/openFrameworks/commit/8ccde5885f1c5359e9db69786a955d530f5d5aee#commitcomment-358681","id":358681,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"8ccde5885f1c5359e9db69786a955d530f5d5aee","created_at":"2011-04-27T07:16:26Z","updated_at":"2011-04-27T07:16:26Z","body":"github needs a \"like\" button for stuff like this. :-)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/394955","html_url":"https://github.com/openframeworks/openFrameworks/commit/0d2a1b1621b03519f52000b37d2cb515901d1fce#commitcomment-394955","id":394955,"user":{"login":"vanderlin","id":149997,"avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","url":"https://api.github.com/users/vanderlin","html_url":"https://github.com/vanderlin","followers_url":"https://api.github.com/users/vanderlin/followers","following_url":"https://api.github.com/users/vanderlin/following{/other_user}","gists_url":"https://api.github.com/users/vanderlin/gists{/gist_id}","starred_url":"https://api.github.com/users/vanderlin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vanderlin/subscriptions","organizations_url":"https://api.github.com/users/vanderlin/orgs","repos_url":"https://api.github.com/users/vanderlin/repos","events_url":"https://api.github.com/users/vanderlin/events{/privacy}","received_events_url":"https://api.github.com/users/vanderlin/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"0d2a1b1621b03519f52000b37d2cb515901d1fce","created_at":"2011-05-23T13:08:24Z","updated_at":"2011-05-23T13:08:24Z","body":"think this is still a bug in iPhone+OF Lib.xcodeproj - still getting tesselator.h: No such file or directory..."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/394969","html_url":"https://github.com/openframeworks/openFrameworks/commit/0d2a1b1621b03519f52000b37d2cb515901d1fce#commitcomment-394969","id":394969,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"0d2a1b1621b03519f52000b37d2cb515901d1fce","created_at":"2011-05-23T13:24:24Z","updated_at":"2011-05-23T13:24:24Z","body":"mmh, yeah sure, i just updated the examples, will change it later\n\nOn 05/23/2011 03:08 PM, vanderlin wrote:\n> think this is still a bug in iPhone+OF Lib.xcodeproj - still getting tesselator.h: No such file or directory...\n>"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/443200","html_url":"https://github.com/openframeworks/openFrameworks/commit/51d5e7f8d87b9d6f3e918d28267cb5428139bde1#commitcomment-443200","id":443200,"user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following{/other_user}","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"51d5e7f8d87b9d6f3e918d28267cb5428139bde1","created_at":"2011-06-22T15:27:30Z","updated_at":"2011-06-22T15:27:30Z","body":"i'm crying. this is awful\r\nplease, please undo :'(!!!!\r\nit was lovely to control before, now it's like trying to control a balloon with a fan\r\nsome of us need to aim the camera quickly and accurately!"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/443205","html_url":"https://github.com/openframeworks/openFrameworks/commit/51d5e7f8d87b9d6f3e918d28267cb5428139bde1#commitcomment-443205","id":443205,"user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following{/other_user}","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"51d5e7f8d87b9d6f3e918d28267cb5428139bde1","created_at":"2011-06-22T15:29:15Z","updated_at":"2011-06-22T15:29:15Z","body":"\"Everything should be made as simple as possible, but not simpler.\" :)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/443232","html_url":"https://github.com/openframeworks/openFrameworks/commit/51d5e7f8d87b9d6f3e918d28267cb5428139bde1#commitcomment-443232","id":443232,"user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following{/other_user}","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"51d5e7f8d87b9d6f3e918d28267cb5428139bde1","created_at":"2011-06-22T15:41:20Z","updated_at":"2011-06-22T15:41:20Z","body":"if i remember correctly, when i made this change it did not change the behavior of ofEasyCam for me. i mean, it didn't feel any different.\r\n\r\nmaybe i wasn't testing in enough cases though?\r\n\r\nmy reference is still the easyCamExample. i wrote that to be as similar as possible to the PeasyCam demo. do you feel a difference between them?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/443267","html_url":"https://github.com/openframeworks/openFrameworks/commit/51d5e7f8d87b9d6f3e918d28267cb5428139bde1#commitcomment-443267","id":443267,"user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following{/other_user}","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"51d5e7f8d87b9d6f3e918d28267cb5428139bde1","created_at":"2011-06-22T15:49:15Z","updated_at":"2011-06-22T15:49:15Z","body":"in terms of designing a tool, i think this fails in current state\r\ni haven't used PeasyCam much so i'm not coming to the table expecting something, which most likely explains why we're tying to get different things out of this cam\r\n\r\ni'm generally setting drag to quite low and thrust quite high (as default values).\r\nso you get a 'pick up' whenever you start doing something\r\nalso the 'grab' dynamic is gone (where everything decellerates if you've got your mouse button pressed so you can stop it when it's in the right place)\r\n\r\ni think the 2 ideals are:\r\ncamera on the end of a damped spring (what i'm thinking of)\r\nballoon controlled with a fan (what it feels like now)\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/443273","html_url":"https://github.com/openframeworks/openFrameworks/commit/51d5e7f8d87b9d6f3e918d28267cb5428139bde1#commitcomment-443273","id":443273,"user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following{/other_user}","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"51d5e7f8d87b9d6f3e918d28267cb5428139bde1","created_at":"2011-06-22T15:50:50Z","updated_at":"2011-06-22T15:50:50Z","body":"can we add it back in as an option? clearly it's a matter of personal preference... the code as it is now seems \"as simple as possible\" to me, but clearly for you it's missing some necessary functionality :)\r\n\r\nthe most helpful thing would be the addition of some kind of framerate independence, since that's the main bug people run into. (see // TODO: add dt)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/443275","html_url":"https://github.com/openframeworks/openFrameworks/commit/51d5e7f8d87b9d6f3e918d28267cb5428139bde1#commitcomment-443275","id":443275,"user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following{/other_user}","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"51d5e7f8d87b9d6f3e918d28267cb5428139bde1","created_at":"2011-06-22T15:51:02Z","updated_at":"2011-06-22T15:56:21Z","body":"anyway. perhaps i should spend more time with it.\r\nit's mentally annoying for me to use it in its current state, which explains my writing style :)\r\n(i.e. apologies for being so sharp!)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/443292","html_url":"https://github.com/openframeworks/openFrameworks/commit/51d5e7f8d87b9d6f3e918d28267cb5428139bde1#commitcomment-443292","id":443292,"user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following{/other_user}","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"51d5e7f8d87b9d6f3e918d28267cb5428139bde1","created_at":"2011-06-22T16:01:37Z","updated_at":"2011-06-22T16:01:37Z","body":"yep!\r\n\r\nhow're pull requests at the moment?\r\nif i make the changes, will the admins be too busy?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/443293","html_url":"https://github.com/openframeworks/openFrameworks/commit/51d5e7f8d87b9d6f3e918d28267cb5428139bde1#commitcomment-443293","id":443293,"user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following{/other_user}","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"51d5e7f8d87b9d6f3e918d28267cb5428139bde1","created_at":"2011-06-22T16:02:52Z","updated_at":"2011-06-22T16:02:52Z","body":"the best thing to do is to look at the pull requests in the queue and see how old they are. i think the focus is on making a release right now over features, but i can't speak for them :)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/443310","html_url":"https://github.com/openframeworks/openFrameworks/commit/51d5e7f8d87b9d6f3e918d28267cb5428139bde1#commitcomment-443310","id":443310,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"51d5e7f8d87b9d6f3e918d28267cb5428139bde1","created_at":"2011-06-22T16:10:50Z","updated_at":"2011-06-22T16:10:50Z","body":"I guess we can pull it if it comes soon. my idea is to take a look at vs \n+ creating the packages during the weekend\n\nOn 06/22/2011 06:02 PM, kylemcdonald wrote:\n> the best thing to do is to look at the pull requests in the queue and see how old they are. i think the focus is on making a release right now over features, but i can't speak for them :)\n>"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/443347","html_url":"https://github.com/openframeworks/openFrameworks/commit/51d5e7f8d87b9d6f3e918d28267cb5428139bde1#commitcomment-443347","id":443347,"user":{"login":"nardove","id":277690,"avatar_url":"https://secure.gravatar.com/avatar/8022cb5f529975afbc64cc9312008d8c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8022cb5f529975afbc64cc9312008d8c","url":"https://api.github.com/users/nardove","html_url":"https://github.com/nardove","followers_url":"https://api.github.com/users/nardove/followers","following_url":"https://api.github.com/users/nardove/following{/other_user}","gists_url":"https://api.github.com/users/nardove/gists{/gist_id}","starred_url":"https://api.github.com/users/nardove/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nardove/subscriptions","organizations_url":"https://api.github.com/users/nardove/orgs","repos_url":"https://api.github.com/users/nardove/repos","events_url":"https://api.github.com/users/nardove/events{/privacy}","received_events_url":"https://api.github.com/users/nardove/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"51d5e7f8d87b9d6f3e918d28267cb5428139bde1","created_at":"2011-06-22T16:25:18Z","updated_at":"2011-06-22T16:25:18Z","body":"Hope this is the right place this comment\r\n\r\nI use the ofEasyCam in an iOS project and the rotations didnt work properly I comment about this here https://github.com/openframeworks/openFrameworks/issues/410 is there any chance to get the same behavior in iOS?\r\n\r\nCheers"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/455803","html_url":"https://github.com/openframeworks/openFrameworks/commit/ad9d79bc34c54b96b7072d9dc1b01819f6960ffd#commitcomment-455803","id":455803,"user":{"login":"benben","id":124513,"avatar_url":"https://secure.gravatar.com/avatar/6aed6a0dfa09b46d6fbd5149eb56def8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"6aed6a0dfa09b46d6fbd5149eb56def8","url":"https://api.github.com/users/benben","html_url":"https://github.com/benben","followers_url":"https://api.github.com/users/benben/followers","following_url":"https://api.github.com/users/benben/following{/other_user}","gists_url":"https://api.github.com/users/benben/gists{/gist_id}","starred_url":"https://api.github.com/users/benben/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/benben/subscriptions","organizations_url":"https://api.github.com/users/benben/orgs","repos_url":"https://api.github.com/users/benben/repos","events_url":"https://api.github.com/users/benben/events{/privacy}","received_events_url":"https://api.github.com/users/benben/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"ad9d79bc34c54b96b7072d9dc1b01819f6960ffd","created_at":"2011-06-30T17:22:25Z","updated_at":"2011-06-30T17:22:25Z","body":"just in time! will try it soon! thanks! started to mess around with the old ofxControlPanel from your repo :("},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/457880","html_url":"https://github.com/openframeworks/openFrameworks/commit/8400e72bbd6aad6d57e9d536a176c044e0861575#commitcomment-457880","id":457880,"user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"8400e72bbd6aad6d57e9d536a176c044e0861575","created_at":"2011-07-01T22:05:15Z","updated_at":"2011-07-01T22:06:00Z","body":"arturo I think the changes to orientation broke things on iphone. \r\nas we go back and forth between the of and the iphone orientation types. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/459788","html_url":"https://github.com/openframeworks/openFrameworks/commit/aa80c9fa4aa74105fc49011bf9555fbd6fad3149#commitcomment-459788","id":459788,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":15,"line":7,"path":"apps/examples/fontsExample/src/testApp.cpp","commit_id":"aa80c9fa4aa74105fc49011bf9555fbd6fad3149","created_at":"2011-07-04T07:25:40Z","updated_at":"2011-07-04T07:25:40Z","body":"This should actually be different on Windows and MacOS machines. Windows default ppi is 96, MacOS is 72, so maybe that's the difference you see. \nImo, this should be set to the real monitor ppi (bigger than either) anyways for faithful representation (i.e. a 12pt font on screen is as big as a 12pt font on paper), but UI design nowadays tends to disagree (except for painting and DTP programs).\nI'd think the more sane option would be to leave it at 96, because it's nearer to the \"true\" ppi of the monitor.\nFurther info on this whole mess: http://en.wikipedia.org/wiki/Dots_per_inch#Computer_monitor_DPI_standards"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/484619","html_url":"https://github.com/openframeworks/openFrameworks/commit/596524722f3924d5fc87a3af5672e6d6ae19a4b8#commitcomment-484619","id":484619,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":5,"line":30,"path":"libs/openFrameworks/.cproject","commit_id":"596524722f3924d5fc87a3af5672e6d6ae19a4b8","created_at":"2011-07-19T11:04:30Z","updated_at":"2011-07-19T11:04:30Z","body":"Is this that specific by design? this looks only valid for linux, and 64bit. what about other OSes/platforms?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/484623","html_url":"https://github.com/openframeworks/openFrameworks/commit/596524722f3924d5fc87a3af5672e6d6ae19a4b8#commitcomment-484623","id":484623,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":5,"line":30,"path":"libs/openFrameworks/.cproject","commit_id":"596524722f3924d5fc87a3af5672e6d6ae19a4b8","created_at":"2011-07-19T11:07:28Z","updated_at":"2011-07-19T11:07:28Z","body":"yes, there's only linux targets by now, creating a new project should set the default paths and since it's using makefiles it's fairly easy.\n\njust updated it so it doesn't complain about so many errors in the latest version"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/484626","html_url":"https://github.com/openframeworks/openFrameworks/commit/596524722f3924d5fc87a3af5672e6d6ae19a4b8#commitcomment-484626","id":484626,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":5,"line":30,"path":"libs/openFrameworks/.cproject","commit_id":"596524722f3924d5fc87a3af5672e6d6ae19a4b8","created_at":"2011-07-19T11:11:27Z","updated_at":"2011-07-19T11:11:27Z","body":"Ah ic. And for 32bit systems (see line 32)? - i don't have an `x86_64-linux-gnu` directory in `/usr/include/c++/4.5/` on my 32bit ubuntu (of course)."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/484629","html_url":"https://github.com/openframeworks/openFrameworks/commit/596524722f3924d5fc87a3af5672e6d6ae19a4b8#commitcomment-484629","id":484629,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":5,"line":30,"path":"libs/openFrameworks/.cproject","commit_id":"596524722f3924d5fc87a3af5672e6d6ae19a4b8","created_at":"2011-07-19T11:13:02Z","updated_at":"2011-07-19T11:13:02Z","body":"Is this because of this? http://forum.openframeworks.cc/index.php/topic,5921.msg31741.html#msg31741\nBecause if yes, see the next post, the toolchain got not selected, which could maybe be fixed more elegantly?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/484631","html_url":"https://github.com/openframeworks/openFrameworks/commit/596524722f3924d5fc87a3af5672e6d6ae19a4b8#commitcomment-484631","id":484631,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":5,"line":30,"path":"libs/openFrameworks/.cproject","commit_id":"596524722f3924d5fc87a3af5672e6d6ae19a4b8","created_at":"2011-07-19T11:14:18Z","updated_at":"2011-07-19T11:14:18Z","body":"mmh, sure can you check if you have something like x86-linux-gnu or i386-linux-gnu and try to add it in the search paths in the project properties? then rebuild the index and check if that fixes the online error detection, if it does send a pull request and i'll merge it"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/484633","html_url":"https://github.com/openframeworks/openFrameworks/commit/596524722f3924d5fc87a3af5672e6d6ae19a4b8#commitcomment-484633","id":484633,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":5,"line":30,"path":"libs/openFrameworks/.cproject","commit_id":"596524722f3924d5fc87a3af5672e6d6ae19a4b8","created_at":"2011-07-19T11:15:05Z","updated_at":"2011-07-19T11:15:05Z","body":"ah, ok yeah that makes much more sense, going to check"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/484960","html_url":"https://github.com/openframeworks/openFrameworks/commit/596524722f3924d5fc87a3af5672e6d6ae19a4b8#commitcomment-484960","id":484960,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":5,"line":30,"path":"libs/openFrameworks/.cproject","commit_id":"596524722f3924d5fc87a3af5672e6d6ae19a4b8","created_at":"2011-07-19T14:26:44Z","updated_at":"2011-07-19T14:26:44Z","body":"thanks for the fix. lines 31-33 still have to go, see https://github.com/openframeworks/openFrameworks/pull/661"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/485008","html_url":"https://github.com/openframeworks/openFrameworks/commit/043b1099aa1db9706b2bca0d90b24a8ce4ea9ec0#commitcomment-485008","id":485008,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"043b1099aa1db9706b2bca0d90b24a8ce4ea9ec0","created_at":"2011-07-19T14:51:32Z","updated_at":"2011-07-19T14:51:32Z","body":"I think that jack should now also be included in the install_dependencies.sh script, cause otherwise it does not get installed.\r\n\r\nInterestingly, even after manual install (`sudo apt-get install jack`), I get on building the empty_example: `Package jack was not found in the pkg-config search path. Perhaps you should add the directory containing `jack.pc'`"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/485066","html_url":"https://github.com/openframeworks/openFrameworks/commit/043b1099aa1db9706b2bca0d90b24a8ce4ea9ec0#commitcomment-485066","id":485066,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"043b1099aa1db9706b2bca0d90b24a8ce4ea9ec0","created_at":"2011-07-19T15:16:45Z","updated_at":"2011-07-19T15:16:45Z","body":"it's added now, the right package is actually libjack-dev that's why you get the errors. btw are you in linux32? can you test if the audioInput/Output examples are working for you?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/485106","html_url":"https://github.com/openframeworks/openFrameworks/commit/043b1099aa1db9706b2bca0d90b24a8ce4ea9ec0#commitcomment-485106","id":485106,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"043b1099aa1db9706b2bca0d90b24a8ce4ea9ec0","created_at":"2011-07-19T15:34:55Z","updated_at":"2011-07-19T15:34:55Z","body":"OK i see. \r\nYeah i got a linux32 at work, and 64bit at home. \r\nQuick test on 32bit. \r\naudioinput does not compile:\r\nhttp://pastebin.com/LnVbA8Nf\r\naudioOutput, the same: http://pastebin.com/KrL6xgvp\r\ncould be something with my setup though, not sure yet if eclipse works correctly out of the box - got some some strange errors/warnings in the code analysis. more on that later."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/485122","html_url":"https://github.com/openframeworks/openFrameworks/commit/043b1099aa1db9706b2bca0d90b24a8ce4ea9ec0#commitcomment-485122","id":485122,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"043b1099aa1db9706b2bca0d90b24a8ce4ea9ec0","created_at":"2011-07-19T15:40:08Z","updated_at":"2011-07-19T15:40:08Z","body":"thanks\r\n\r\ndoes the last commit solve it?\r\n\r\nEl mar, 19-07-2011 a las 08:34 -0700, bilderbuchi escribió: \r\n> OK i see. \r\n> Yeah i got a linux32 at work, and 64bit at home. \r\n> Quick test on 32bit. \r\n> audioinput does not compile:\r\n> http://pastebin.com/LnVbA8Nf\r\n> audioOutput, the same: http://pastebin.com/KrL6xgvp\r\n> could be something with my setup though, not sure yet if eclipse works correctly out of the box - got some some strange errors/warnings in the code analysis. more on that later.\r\n> "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/485288","html_url":"https://github.com/openframeworks/openFrameworks/commit/043b1099aa1db9706b2bca0d90b24a8ce4ea9ec0#commitcomment-485288","id":485288,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"043b1099aa1db9706b2bca0d90b24a8ce4ea9ec0","created_at":"2011-07-19T16:38:58Z","updated_at":"2011-07-19T16:38:58Z","body":"sorry, i'm not at work anymore. can check 32bit earliest tomorrow. :-/"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/486670","html_url":"https://github.com/openframeworks/openFrameworks/commit/99caa1fa2c67709fd9be4497585873ccf69ff7da#commitcomment-486670","id":486670,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"99caa1fa2c67709fd9be4497585873ccf69ff7da","created_at":"2011-07-20T07:40:46Z","updated_at":"2011-07-20T07:40:46Z","body":"does that make sense? declarations in an implementation file? I'd find it more confusing now... ;-)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/486708","html_url":"https://github.com/openframeworks/openFrameworks/commit/043b1099aa1db9706b2bca0d90b24a8ce4ea9ec0#commitcomment-486708","id":486708,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"043b1099aa1db9706b2bca0d90b24a8ce4ea9ec0","created_at":"2011-07-20T08:06:08Z","updated_at":"2011-07-20T08:06:08Z","body":"OK, so I tested: \r\nOutputexample: compiles, runs, but does not synthesize anything. no activity. get errors in the console: \r\n`OF: OF_LOG_ERROR: PortAudio error: Invalid device`\r\n`OF: OF_LOG_ERROR: PortAudio error: Invalid stream pointer`\r\nInputexample: Same behaviour.\r\n\r\n`lspci | grep Audio`\r\n`00:05.0 Audio device: nVidia Corporation MCP61 High Definition Audio (rev a2)`"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/487223","html_url":"https://github.com/openframeworks/openFrameworks/commit/99caa1fa2c67709fd9be4497585873ccf69ff7da#commitcomment-487223","id":487223,"user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following{/other_user}","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"99caa1fa2c67709fd9be4497585873ccf69ff7da","created_at":"2011-07-20T15:17:03Z","updated_at":"2011-07-20T15:17:03Z","body":"in general it's a good idea to keep the declaration in the\nimplementation file if it's something that you only need in that file.\n\nin the future if we find it's important to use it outside of\nofTexture.cpp we could move it back out though.\n\nOn Wed, Jul 20, 2011 at 3:40 AM, bilderbuchi\n\nwrote:\n> does that make sense? declarations in an implementation file? I'd find it more confusing now... ;-)\n>\n> --\n> Reply to this email directly or view it on GitHub:\n> https://github.com/openframeworks/openFrameworks/commit/99caa1fa2c67709fd9be4497585873ccf69ff7da#commitcomment-486670\n>"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/487351","html_url":"https://github.com/openframeworks/openFrameworks/commit/99caa1fa2c67709fd9be4497585873ccf69ff7da#commitcomment-487351","id":487351,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"99caa1fa2c67709fd9be4497585873ccf69ff7da","created_at":"2011-07-20T16:28:58Z","updated_at":"2011-07-20T16:28:58Z","body":"ah ic, thanks."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/487773","html_url":"https://github.com/openframeworks/openFrameworks/commit/5837026ae8abea30cc9f70954fd24aa947e8f6b1#commitcomment-487773","id":487773,"user":{"login":"underdoeg","id":243820,"avatar_url":"https://secure.gravatar.com/avatar/6ff8fe2dd72480f1685ee15e374205b7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"6ff8fe2dd72480f1685ee15e374205b7","url":"https://api.github.com/users/underdoeg","html_url":"https://github.com/underdoeg","followers_url":"https://api.github.com/users/underdoeg/followers","following_url":"https://api.github.com/users/underdoeg/following{/other_user}","gists_url":"https://api.github.com/users/underdoeg/gists{/gist_id}","starred_url":"https://api.github.com/users/underdoeg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/underdoeg/subscriptions","organizations_url":"https://api.github.com/users/underdoeg/orgs","repos_url":"https://api.github.com/users/underdoeg/repos","events_url":"https://api.github.com/users/underdoeg/events{/privacy}","received_events_url":"https://api.github.com/users/underdoeg/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"5837026ae8abea30cc9f70954fd24aa947e8f6b1","created_at":"2011-07-20T19:52:53Z","updated_at":"2011-07-20T19:52:53Z","body":"Default is OpenAL now? That's great. Thanks!"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/487778","html_url":"https://github.com/openframeworks/openFrameworks/commit/5837026ae8abea30cc9f70954fd24aa947e8f6b1#commitcomment-487778","id":487778,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"5837026ae8abea30cc9f70954fd24aa947e8f6b1","created_at":"2011-07-20T19:55:51Z","updated_at":"2011-07-20T19:55:51Z","body":": ) yeah it's been for a while, just left the libs for bw compatibility\r\nand in case someone wants to use it. only linux by now though\r\n\r\nEl mié, 20-07-2011 a las 12:52 -0700, underdoeg escribió: \r\n> Default is OpenAL now? That's great. Thanks!\r\n> "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/487796","html_url":"https://github.com/openframeworks/openFrameworks/commit/5837026ae8abea30cc9f70954fd24aa947e8f6b1#commitcomment-487796","id":487796,"user":{"login":"benben","id":124513,"avatar_url":"https://secure.gravatar.com/avatar/6aed6a0dfa09b46d6fbd5149eb56def8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"6aed6a0dfa09b46d6fbd5149eb56def8","url":"https://api.github.com/users/benben","html_url":"https://github.com/benben","followers_url":"https://api.github.com/users/benben/followers","following_url":"https://api.github.com/users/benben/following{/other_user}","gists_url":"https://api.github.com/users/benben/gists{/gist_id}","starred_url":"https://api.github.com/users/benben/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/benben/subscriptions","organizations_url":"https://api.github.com/users/benben/orgs","repos_url":"https://api.github.com/users/benben/repos","events_url":"https://api.github.com/users/benben/events{/privacy}","received_events_url":"https://api.github.com/users/benben/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"5837026ae8abea30cc9f70954fd24aa947e8f6b1","created_at":"2011-07-20T20:14:05Z","updated_at":"2011-07-20T20:14:05Z","body":"wooohhhoooo!!!"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/488382","html_url":"https://github.com/openframeworks/openFrameworks/commit/e2474a27e15592dfcae2cea6ffe805b76672a5e8#commitcomment-488382","id":488382,"user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following{/other_user}","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"e2474a27e15592dfcae2cea6ffe805b76672a5e8","created_at":"2011-07-21T03:34:20Z","updated_at":"2011-07-21T03:34:44Z","body":"awesome, thanks for the corrections and clarifications. if the newlines didn't make sense, it was because the -----s made me assume things were formatted to wrap at 80 chars.\r\n\r\nediting this made me realize:\r\n\r\n1 there is a lot of stuff that is cross platform advice that doesn't really \"live\" anywhere (e.g., \"release/debug\" explanation should live in an faq.txt)\r\n2 the OF documentation is kind of poorly organized :( do you read the readme? or do you go to the website? or the forums? how much detail should be in the readme? etc.\r\n\r\ni'd love to help start answering these questions with the next few releases, aimed more at cleaning up, explaining + demoing/making examples of what exists."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/488386","html_url":"https://github.com/openframeworks/openFrameworks/commit/e2474a27e15592dfcae2cea6ffe805b76672a5e8#commitcomment-488386","id":488386,"user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"e2474a27e15592dfcae2cea6ffe805b76672a5e8","created_at":"2011-07-21T03:44:07Z","updated_at":"2011-07-21T03:44:07Z","body":"good points! \r\na readme.txt with ( or combined with ) a readme.platform file would be good. \r\n\r\nmost important we need new examples - we have the 1990s of examples at the moment :) "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/488580","html_url":"https://github.com/openframeworks/openFrameworks/commit/e2474a27e15592dfcae2cea6ffe805b76672a5e8#commitcomment-488580","id":488580,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"e2474a27e15592dfcae2cea6ffe805b76672a5e8","created_at":"2011-07-21T07:36:24Z","updated_at":"2011-07-21T07:36:24Z","body":"maybe a folder \"documentation\" in OF_ROOT would make sense to collect the info which is sprinkled everywhere?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/488736","html_url":"https://github.com/openframeworks/openFrameworks/commit/e2474a27e15592dfcae2cea6ffe805b76672a5e8#commitcomment-488736","id":488736,"user":{"login":"gwydionapdafydd","id":649628,"avatar_url":"https://secure.gravatar.com/avatar/72620270b0d72c728e6948bb3c783774?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"72620270b0d72c728e6948bb3c783774","url":"https://api.github.com/users/gwydionapdafydd","html_url":"https://github.com/gwydionapdafydd","followers_url":"https://api.github.com/users/gwydionapdafydd/followers","following_url":"https://api.github.com/users/gwydionapdafydd/following{/other_user}","gists_url":"https://api.github.com/users/gwydionapdafydd/gists{/gist_id}","starred_url":"https://api.github.com/users/gwydionapdafydd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gwydionapdafydd/subscriptions","organizations_url":"https://api.github.com/users/gwydionapdafydd/orgs","repos_url":"https://api.github.com/users/gwydionapdafydd/repos","events_url":"https://api.github.com/users/gwydionapdafydd/events{/privacy}","received_events_url":"https://api.github.com/users/gwydionapdafydd/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"e2474a27e15592dfcae2cea6ffe805b76672a5e8","created_at":"2011-07-21T09:42:38Z","updated_at":"2011-07-21T09:42:38Z","body":"1. Out of the box, with OF projects in Xcode the base SDK setting is missing - worth brief explanation in this readme?\r\n2. Worth pointing to the latest info on autogenerated project files?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/543263","html_url":"https://github.com/openframeworks/openFrameworks/commit/a6d738aeb54b7d0b27351ba578f0e22a0f8d50bd#commitcomment-543263","id":543263,"user":{"login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","html_url":"https://github.com/danomatika","followers_url":"https://api.github.com/users/danomatika/followers","following_url":"https://api.github.com/users/danomatika/following{/other_user}","gists_url":"https://api.github.com/users/danomatika/gists{/gist_id}","starred_url":"https://api.github.com/users/danomatika/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danomatika/subscriptions","organizations_url":"https://api.github.com/users/danomatika/orgs","repos_url":"https://api.github.com/users/danomatika/repos","events_url":"https://api.github.com/users/danomatika/events{/privacy}","received_events_url":"https://api.github.com/users/danomatika/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"a6d738aeb54b7d0b27351ba578f0e22a0f8d50bd","created_at":"2011-08-21T21:31:18Z","updated_at":"2011-08-21T21:31:18Z","body":"Thank you!"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/615902","html_url":"https://github.com/openframeworks/openFrameworks/commit/b9100146effba1ea53f8e6a8119ca6491d8d9e13#commitcomment-615902","id":615902,"user":{"login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","html_url":"https://github.com/danomatika","followers_url":"https://api.github.com/users/danomatika/followers","following_url":"https://api.github.com/users/danomatika/following{/other_user}","gists_url":"https://api.github.com/users/danomatika/gists{/gist_id}","starred_url":"https://api.github.com/users/danomatika/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danomatika/subscriptions","organizations_url":"https://api.github.com/users/danomatika/orgs","repos_url":"https://api.github.com/users/danomatika/repos","events_url":"https://api.github.com/users/danomatika/events{/privacy}","received_events_url":"https://api.github.com/users/danomatika/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"b9100146effba1ea53f8e6a8119ca6491d8d9e13","created_at":"2011-09-28T01:19:06Z","updated_at":"2011-09-28T01:19:06Z","body":"There should not be an automatic space on the ofLog ostream operator! This is against the cout/cerr convention that ofLog is modeled after."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/688194","html_url":"https://github.com/openframeworks/openFrameworks/commit/6b28853d93c805459d94fee4d341b66d2832586b#commitcomment-688194","id":688194,"user":{"login":"atduskgreg","id":165,"avatar_url":"https://secure.gravatar.com/avatar/2f4faa539dc6a0ae688e58d6a329fce9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2f4faa539dc6a0ae688e58d6a329fce9","url":"https://api.github.com/users/atduskgreg","html_url":"https://github.com/atduskgreg","followers_url":"https://api.github.com/users/atduskgreg/followers","following_url":"https://api.github.com/users/atduskgreg/following{/other_user}","gists_url":"https://api.github.com/users/atduskgreg/gists{/gist_id}","starred_url":"https://api.github.com/users/atduskgreg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/atduskgreg/subscriptions","organizations_url":"https://api.github.com/users/atduskgreg/orgs","repos_url":"https://api.github.com/users/atduskgreg/repos","events_url":"https://api.github.com/users/atduskgreg/events{/privacy}","received_events_url":"https://api.github.com/users/atduskgreg/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"6b28853d93c805459d94fee4d341b66d2832586b","created_at":"2011-11-01T17:24:01Z","updated_at":"2011-11-01T17:24:01Z","body":"Yay! It's merged. Thanks, Theo. Talking to James about it, he suggested adding another version of the static function on ofPolyline that would take a vector of ofPoints just like ofInsidePoly(). I'll add that and send it your way."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/726315","html_url":"https://github.com/openframeworks/openFrameworks/commit/a3fdd1623b015cc333d0ab774bee52ce05922da2#commitcomment-726315","id":726315,"user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"a3fdd1623b015cc333d0ab774bee52ce05922da2","created_at":"2011-11-17T00:18:15Z","updated_at":"2011-11-17T00:18:15Z","body":"@ arturoc I think your missing the i + 0 and i + 2 in this commit . \r\nseems to be causing color issues: https://github.com/openframeworks/openFrameworks/issues/812"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/726556","html_url":"https://github.com/openframeworks/openFrameworks/commit/a3fdd1623b015cc333d0ab774bee52ce05922da2#commitcomment-726556","id":726556,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"a3fdd1623b015cc333d0ab774bee52ce05922da2","created_at":"2011-11-17T03:26:59Z","updated_at":"2011-11-17T03:26:59Z","body":"oops, thanks, fixed\n\nOn 17/11/11 01:18, Theodore Watson wrote:\n> @ arturoc I think your missing the i + 0 and i + 2 in this commit .\n> seems to be causing color issues: https://github.com/openframeworks/openFrameworks/issues/812\n>\n> ---\n> Reply to this email directly or view it on GitHub:\n> https://github.com/openframeworks/openFrameworks/commit/a3fdd1623b015cc333d0ab774bee52ce05922da2#commitcomment-726315"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/868508","html_url":"https://github.com/openframeworks/openFrameworks/commit/bec6dd7149c0fe515fba0e8ccd3a7e3d69c5e267#commitcomment-868508","id":868508,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":4,"line":2,"path":"libs/openFrameworksCompiled/project/android/paths.make","commit_id":"bec6dd7149c0fe515fba0e8ccd3a7e3d69c5e267","created_at":"2012-01-15T12:35:35Z","updated_at":"2012-01-15T12:35:35Z","body":"hm, @arturoc, you sure it's correct to have paths from your machine in the make file?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/868662","html_url":"https://github.com/openframeworks/openFrameworks/commit/bec6dd7149c0fe515fba0e8ccd3a7e3d69c5e267#commitcomment-868662","id":868662,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":4,"line":2,"path":"libs/openFrameworksCompiled/project/android/paths.make","commit_id":"bec6dd7149c0fe515fba0e8ccd3a7e3d69c5e267","created_at":"2012-01-15T14:42:34Z","updated_at":"2012-01-15T14:42:34Z","body":"sure not : ) but i always commit that file by accident, it's ok cause you need to edit it when installing android anyway but it would be better with something generic."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/932623","html_url":"https://github.com/openframeworks/openFrameworks/commit/1859bee20ca281f2f9f111e46c14a0b30e7096b9#commitcomment-932623","id":932623,"user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following{/other_user}","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"position":38,"line":38,"path":"libs/openFrameworks/math/ofTween.h","commit_id":"1859bee20ca281f2f9f111e46c14a0b30e7096b9","created_at":"2012-02-04T05:01:47Z","updated_at":"2012-02-04T05:01:47Z","body":"what does this line mean exactly?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/932624","html_url":"https://github.com/openframeworks/openFrameworks/commit/1859bee20ca281f2f9f111e46c14a0b30e7096b9#commitcomment-932624","id":932624,"user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following{/other_user}","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"position":44,"line":44,"path":"libs/openFrameworks/math/ofTween.h","commit_id":"1859bee20ca281f2f9f111e46c14a0b30e7096b9","created_at":"2012-02-04T05:02:19Z","updated_at":"2012-02-04T05:02:19Z","body":"all these static methods is a good argument for migrating big chunks of OF to namespaces."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/932853","html_url":"https://github.com/openframeworks/openFrameworks/commit/1859bee20ca281f2f9f111e46c14a0b30e7096b9#commitcomment-932853","id":932853,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":38,"line":38,"path":"libs/openFrameworks/math/ofTween.h","commit_id":"1859bee20ca281f2f9f111e46c14a0b30e7096b9","created_at":"2012-02-04T10:39:05Z","updated_at":"2012-02-04T10:39:05Z","body":"it's a typedef to the function pointer so later in ofMap the argument type can be specified as ofEasingFunction instead of the whole function pointer. also it'll make cleaner the autocomplete"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/932871","html_url":"https://github.com/openframeworks/openFrameworks/commit/1859bee20ca281f2f9f111e46c14a0b30e7096b9#commitcomment-932871","id":932871,"user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following{/other_user}","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"1859bee20ca281f2f9f111e46c14a0b30e7096b9","created_at":"2012-02-04T11:00:07Z","updated_at":"2012-02-04T11:00:47Z","body":"are we really sure we want tweening in the core of OF ?\r\n\r\nI know there's been 6 addons, but I think this speaks to how common the tween code is, how easy it is to write something like this, and how before ofxAddons we didn't have great ways of seeing what other had done. \r\n\r\nIt doesn't really feel to me like an essential part of the core (extremely useful functions or elements that can be extended on to make other things) and seems potentially more suited for a core addon?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/933124","html_url":"https://github.com/openframeworks/openFrameworks/commit/1859bee20ca281f2f9f111e46c14a0b30e7096b9#commitcomment-933124","id":933124,"user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"1859bee20ca281f2f9f111e46c14a0b30e7096b9","created_at":"2012-02-04T15:44:32Z","updated_at":"2012-02-04T15:44:32Z","body":"I think more of an issue is why are we adding this to the core without it being discussed? \r\nI see one issue posted by kyle https://github.com/openframeworks/openFrameworks/issues/882 \r\nBut this is not something that was part of a roadmap or in anyway signed off by all of us. \r\n\r\nIn general we shouldn't be adding big parts to the core API without a proper discussion first. \r\nThis is how the core gets bloated fast and also how the roadmap of OF starts to take quite a random path. \r\n\r\nBug fixes are one thing but adding something which exists as an addon as part of the core should be signed off by the core team and not just one of us. \r\n\r\n//--end rant \r\n\r\nThat said, I don't think I am 100% against tweening in the core. \r\nI would like to see a good example app showing ALL of the ofTween api as a requirement to properly evaluate it ( as it wasn't written by the core team ). \r\n\r\n "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/933234","html_url":"https://github.com/openframeworks/openFrameworks/commit/1859bee20ca281f2f9f111e46c14a0b30e7096b9#commitcomment-933234","id":933234,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"1859bee20ca281f2f9f111e46c14a0b30e7096b9","created_at":"2012-02-04T17:15:42Z","updated_at":"2012-02-04T17:15:42Z","body":"Yeah, sorry, should have sent a pull request.\r\n\r\nthe only api to the current ofTween is just:\r\n\r\nofMap(value, minIn, maxIn, minOut, maxOut, easingFunction, clamp);\r\n\r\nbut anyway, will remove it later and send it as a pull request so we can \r\ndiscuss the api or if we want it at all\r\n\r\nEl 04/02/12 16:44, Theodore Watson escribió:\r\n> I think more of an issue is why are we adding this to the core without it being discussed?\r\n> I see one issue posted by kyle https://github.com/openframeworks/openFrameworks/issues/882\r\n> But this is not something that was part of a roadmap or in anyway signed off by all of us.\r\n>\r\n> In general we shouldn't be adding big parts to the core API without a proper discussion first.\r\n> This is how the core gets bloated fast and also how the roadmap of OF starts to take quite a random path.\r\n>\r\n> Bug fixes are one thing but adding something which exists as an addon as part of the core should be signed off by the core team and not just one of us.\r\n>\r\n> //--end rant\r\n>\r\n> That said, I don't think I am 100% against tweening in the core.\r\n> I would like to see a good example app showing ALL of the ofTween api as a requirement to properly evaluate it ( as it wasn't written by the core team ).\r\n>\r\n> ---\r\n> Reply to this email directly or view it on GitHub:\r\n> https://github.com/openframeworks/openFrameworks/commit/1859bee20ca281f2f9f111e46c14a0b30e7096b9#commitcomment-933124"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/933254","html_url":"https://github.com/openframeworks/openFrameworks/commit/1859bee20ca281f2f9f111e46c14a0b30e7096b9#commitcomment-933254","id":933254,"user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following{/other_user}","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"1859bee20ca281f2f9f111e46c14a0b30e7096b9","created_at":"2012-02-04T17:28:08Z","updated_at":"2012-02-04T17:28:08Z","body":"yeah, the wording in my issue should have been \"we need it in a core addon\". i see the general path as: contributed addon -> core addon -> core.\r\n\r\nthough i think there are arguments for having tweening in the core. there are definitely addons that would use it (e.g., ofxTimeline). it could also make our examples look more awesome."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/933314","html_url":"https://github.com/openframeworks/openFrameworks/commit/1859bee20ca281f2f9f111e46c14a0b30e7096b9#commitcomment-933314","id":933314,"user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"1859bee20ca281f2f9f111e46c14a0b30e7096b9","created_at":"2012-02-04T18:08:15Z","updated_at":"2012-02-04T18:08:15Z","body":"yeah - for sure. I think it could be great to have at the core level. \r\nespecially if it is as simple as just using ofMap - would be good to take a closer look at it. \r\ncurious what @ofZach thinks :) "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/941566","html_url":"https://github.com/openframeworks/openFrameworks/commit/ffa58485f2364b8e09b648a4117c41be192cd394#commitcomment-941566","id":941566,"user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following{/other_user}","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"ffa58485f2364b8e09b648a4117c41be192cd394","created_at":"2012-02-07T16:07:35Z","updated_at":"2012-02-07T16:07:35Z","body":"but ofTween is still included though elsewhere, and therefore oF doesn't build"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/941612","html_url":"https://github.com/openframeworks/openFrameworks/commit/ffa58485f2364b8e09b648a4117c41be192cd394#commitcomment-941612","id":941612,"user":{"login":"expokorea","id":1415701,"avatar_url":"https://secure.gravatar.com/avatar/f891165d0d09753cb53f7d85e7e97572?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"f891165d0d09753cb53f7d85e7e97572","url":"https://api.github.com/users/expokorea","html_url":"https://github.com/expokorea","followers_url":"https://api.github.com/users/expokorea/followers","following_url":"https://api.github.com/users/expokorea/following{/other_user}","gists_url":"https://api.github.com/users/expokorea/gists{/gist_id}","starred_url":"https://api.github.com/users/expokorea/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/expokorea/subscriptions","organizations_url":"https://api.github.com/users/expokorea/orgs","repos_url":"https://api.github.com/users/expokorea/repos","events_url":"https://api.github.com/users/expokorea/events{/privacy}","received_events_url":"https://api.github.com/users/expokorea/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"ffa58485f2364b8e09b648a4117c41be192cd394","created_at":"2012-02-07T16:19:09Z","updated_at":"2012-02-07T16:19:09Z","body":"crap, sorry, it's fixed now"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/952041","html_url":"https://github.com/openframeworks/openFrameworks/commit/399ab3c39b6f97b85500fe5aeee4bf2a28943530#commitcomment-952041","id":952041,"user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following{/other_user}","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"399ab3c39b6f97b85500fe5aeee4bf2a28943530","created_at":"2012-02-10T02:22:32Z","updated_at":"2012-02-10T02:22:32Z","body":"this causes build errors because you can't add const char* together. this is why ofLogNotice() with the stream operator is preferred. i'll send a fix."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/952647","html_url":"https://github.com/openframeworks/openFrameworks/commit/399ab3c39b6f97b85500fe5aeee4bf2a28943530#commitcomment-952647","id":952647,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"399ab3c39b6f97b85500fe5aeee4bf2a28943530","created_at":"2012-02-10T08:37:47Z","updated_at":"2012-02-10T08:41:47Z","body":"Interesting. I'm pretty sure that I tested/compiled on my Ubuntu, and I didn't get any build errors. \r\nWhere exactly did you get them? All those four occurences you changed in PR 911? Cause this line doesn't even add char*, so I don't see how this could lead to a problem, right?\r\n`ofLog(OF_LOG_NOTICE, \"[%i] = %s\", devices[k].getDeviceID(), devices[k].getDeviceName().c_str());`\r\n\r\nBut yeah, those things are why I asked people for testing in the original PR... :-) thanks for catching this!\r\n\r\nI got to admit, my favourite is the \"(f)printf-style\" of constructing the string, gives nice control over the printout, precision, etc.\r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/952655","html_url":"https://github.com/openframeworks/openFrameworks/commit/399ab3c39b6f97b85500fe5aeee4bf2a28943530#commitcomment-952655","id":952655,"user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following{/other_user}","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"399ab3c39b6f97b85500fe5aeee4bf2a28943530","created_at":"2012-02-10T08:43:08Z","updated_at":"2012-02-10T08:43:08Z","body":"the one you point out didn't have an error, that was just for the sake of consistency :)\r\n\r\nthis was definitely an error:\r\n\r\nofLog(OF_LOG_NOTICE, \"device[\" + deviceCount + \"] \" + p2cstr(pascalName) + \" - \" + p2cstr(pascalNameInput))\r\n\r\nyou probably didn't see it cause it's surrounded in a big #ifdef OF_VIDEO_CAPTURE_QUICKTIME"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/952686","html_url":"https://github.com/openframeworks/openFrameworks/commit/399ab3c39b6f97b85500fe5aeee4bf2a28943530#commitcomment-952686","id":952686,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"399ab3c39b6f97b85500fe5aeee4bf2a28943530","created_at":"2012-02-10T08:58:41Z","updated_at":"2012-02-10T08:59:56Z","body":"Ah OK, that makes more sense. Just to be clear, that way of calling ofLog doesn't have any pitfalls (except preference), right?\r\n\r\nAlso, the ifdefs, figured that out a minute after posting. :-P\r\n\r\nWhile we're at it, could you maybe take a look at issue #294 again? I can't cause that part is definitely MacOS-only, and it would close issue #833, too.\r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/960117","html_url":"https://github.com/openframeworks/openFrameworks/commit/8bfde75beefc27e53c6cfb503db0035b0f828dfd#commitcomment-960117","id":960117,"user":{"login":"falcon4ever","id":480019,"avatar_url":"https://secure.gravatar.com/avatar/4a503abeaa3d803e55e99093fbf1505d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"4a503abeaa3d803e55e99093fbf1505d","url":"https://api.github.com/users/falcon4ever","html_url":"https://github.com/falcon4ever","followers_url":"https://api.github.com/users/falcon4ever/followers","following_url":"https://api.github.com/users/falcon4ever/following{/other_user}","gists_url":"https://api.github.com/users/falcon4ever/gists{/gist_id}","starred_url":"https://api.github.com/users/falcon4ever/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/falcon4ever/subscriptions","organizations_url":"https://api.github.com/users/falcon4ever/orgs","repos_url":"https://api.github.com/users/falcon4ever/repos","events_url":"https://api.github.com/users/falcon4ever/events{/privacy}","received_events_url":"https://api.github.com/users/falcon4ever/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"8bfde75beefc27e53c6cfb503db0035b0f828dfd","created_at":"2012-02-13T13:15:21Z","updated_at":"2012-02-13T13:15:21Z","body":"Just FYI, this patch breaks the Android build, there is no GL_DEPTH_COMPONENT32 in this target."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/960144","html_url":"https://github.com/openframeworks/openFrameworks/commit/8bfde75beefc27e53c6cfb503db0035b0f828dfd#commitcomment-960144","id":960144,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"8bfde75beefc27e53c6cfb503db0035b0f828dfd","created_at":"2012-02-13T13:25:29Z","updated_at":"2012-02-13T13:25:29Z","body":"thanks, it's fixed now"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/972117","html_url":"https://github.com/openframeworks/openFrameworks/commit/8bfde75beefc27e53c6cfb503db0035b0f828dfd#commitcomment-972117","id":972117,"user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following{/other_user}","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"8bfde75beefc27e53c6cfb503db0035b0f828dfd","created_at":"2012-02-16T01:06:22Z","updated_at":"2012-02-16T01:06:22Z","body":"hi, this is still broken for iphone.\r\nalso no GL_DEPTH_COMPONENT32"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/973164","html_url":"https://github.com/openframeworks/openFrameworks/commit/8bfde75beefc27e53c6cfb503db0035b0f828dfd#commitcomment-973164","id":973164,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"8bfde75beefc27e53c6cfb503db0035b0f828dfd","created_at":"2012-02-16T10:05:11Z","updated_at":"2012-02-16T10:05:11Z","body":"yes, sorry the ifdef is incorrect, it's fixed now"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/973373","html_url":"https://github.com/openframeworks/openFrameworks/commit/8bfde75beefc27e53c6cfb503db0035b0f828dfd#commitcomment-973373","id":973373,"user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following{/other_user}","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"8bfde75beefc27e53c6cfb503db0035b0f828dfd","created_at":"2012-02-16T11:11:50Z","updated_at":"2012-02-16T11:11:50Z","body":"hi arturo,\r\ncan't see this fix in the develop branch yet?\r\nis it going to come through as a new commit?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/973415","html_url":"https://github.com/openframeworks/openFrameworks/commit/8bfde75beefc27e53c6cfb503db0035b0f828dfd#commitcomment-973415","id":973415,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"8bfde75beefc27e53c6cfb503db0035b0f828dfd","created_at":"2012-02-16T11:29:10Z","updated_at":"2012-02-16T11:29:10Z","body":"there it is, i uploaded it to my fork instead of the main repo before.\r\n\r\nEl 16/02/12 12:11, lukasz karluk escribió:\r\n> hi arturo,\r\n> can't see this fix in the develop branch yet?\r\n> is it going to come through as a new commit?\r\n>\r\n> ---\r\n> Reply to this email directly or view it on GitHub:\r\n> https://github.com/openframeworks/openFrameworks/commit/8bfde75beefc27e53c6cfb503db0035b0f828dfd#commitcomment-973373"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/973426","html_url":"https://github.com/openframeworks/openFrameworks/commit/8bfde75beefc27e53c6cfb503db0035b0f828dfd#commitcomment-973426","id":973426,"user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following{/other_user}","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"8bfde75beefc27e53c6cfb503db0035b0f828dfd","created_at":"2012-02-16T11:33:41Z","updated_at":"2012-02-16T11:33:41Z","body":"awesome, thx."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/973455","html_url":"https://github.com/openframeworks/openFrameworks/commit/5b1f22a80109b1d3abb339cc2fc15ac3f8798849#commitcomment-973455","id":973455,"user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following{/other_user}","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"position":12,"line":449,"path":"libs/openFrameworks/gl/ofFbo.cpp","commit_id":"5b1f22a80109b1d3abb339cc2fc15ac3f8798849","created_at":"2012-02-16T11:43:48Z","updated_at":"2012-02-16T11:43:48Z","body":"this line is throwing an error on iphone, GL_UNSIGNED_INT is undeclared."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/973460","html_url":"https://github.com/openframeworks/openFrameworks/commit/5b1f22a80109b1d3abb339cc2fc15ac3f8798849#commitcomment-973460","id":973460,"user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following{/other_user}","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"position":14,"line":451,"path":"libs/openFrameworks/gl/ofFbo.cpp","commit_id":"5b1f22a80109b1d3abb339cc2fc15ac3f8798849","created_at":"2012-02-16T11:44:11Z","updated_at":"2012-02-16T11:44:11Z","body":"this line is also throwing an error on iphone, GL_UNSIGNED_INT is undeclared."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/973481","html_url":"https://github.com/openframeworks/openFrameworks/commit/5b1f22a80109b1d3abb339cc2fc15ac3f8798849#commitcomment-973481","id":973481,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":14,"line":451,"path":"libs/openFrameworks/gl/ofFbo.cpp","commit_id":"5b1f22a80109b1d3abb339cc2fc15ac3f8798849","created_at":"2012-02-16T11:50:54Z","updated_at":"2012-02-16T11:50:54Z","body":"mm, weird that seems to work in android, let me take a look\r\n\r\nEl 16/02/12 12:44, lukasz karluk escribió:\r\n> this line is also throwing an error on iphone, GL_UNSIGNED_INT is undeclared.\r\n>\r\n> ---\r\n> Reply to this email directly or view it on GitHub:\r\n> https://github.com/openframeworks/openFrameworks/commit/5b1f22a80109b1d3abb339cc2fc15ac3f8798849#commitcomment-973460"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/976339","html_url":"https://github.com/openframeworks/openFrameworks/commit/5b1f22a80109b1d3abb339cc2fc15ac3f8798849#commitcomment-976339","id":976339,"user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following{/other_user}","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"position":14,"line":451,"path":"libs/openFrameworks/gl/ofFbo.cpp","commit_id":"5b1f22a80109b1d3abb339cc2fc15ac3f8798849","created_at":"2012-02-17T02:04:22Z","updated_at":"2012-02-17T02:04:22Z","body":"changing GL_UNSIGNED_INT to GL_UNSIGNED_BYTE compiles ok\nbut not sure how that would effect what you're trying to do..."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/986195","html_url":"https://github.com/openframeworks/openFrameworks/commit/7ca7833ea1afb6bd5a6c54031e3fa688aa0c0ba8#commitcomment-986195","id":986195,"user":{"login":"gabrielstuff","id":285033,"avatar_url":"https://secure.gravatar.com/avatar/390ea42c23c2c383f973abdafa24bb07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"390ea42c23c2c383f973abdafa24bb07","url":"https://api.github.com/users/gabrielstuff","html_url":"https://github.com/gabrielstuff","followers_url":"https://api.github.com/users/gabrielstuff/followers","following_url":"https://api.github.com/users/gabrielstuff/following{/other_user}","gists_url":"https://api.github.com/users/gabrielstuff/gists{/gist_id}","starred_url":"https://api.github.com/users/gabrielstuff/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gabrielstuff/subscriptions","organizations_url":"https://api.github.com/users/gabrielstuff/orgs","repos_url":"https://api.github.com/users/gabrielstuff/repos","events_url":"https://api.github.com/users/gabrielstuff/events{/privacy}","received_events_url":"https://api.github.com/users/gabrielstuff/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"7ca7833ea1afb6bd5a6c54031e3fa688aa0c0ba8","created_at":"2012-02-20T16:06:26Z","updated_at":"2012-02-20T16:06:26Z","body":"Sorry to bump here, but isn't here an issue with the call to ```ofDrawGridPlane( scale, ticks, labels)```, but there is just ```drawGridPlane(float scale, float ticks, bool labels)``` that is defined ?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/986201","html_url":"https://github.com/openframeworks/openFrameworks/commit/7ca7833ea1afb6bd5a6c54031e3fa688aa0c0ba8#commitcomment-986201","id":986201,"user":{"login":"emmanuelgeoffray","id":808090,"avatar_url":"https://secure.gravatar.com/avatar/c1ec5161b69b4a990436deafb1170d64?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"c1ec5161b69b4a990436deafb1170d64","url":"https://api.github.com/users/emmanuelgeoffray","html_url":"https://github.com/emmanuelgeoffray","followers_url":"https://api.github.com/users/emmanuelgeoffray/followers","following_url":"https://api.github.com/users/emmanuelgeoffray/following{/other_user}","gists_url":"https://api.github.com/users/emmanuelgeoffray/gists{/gist_id}","starred_url":"https://api.github.com/users/emmanuelgeoffray/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/emmanuelgeoffray/subscriptions","organizations_url":"https://api.github.com/users/emmanuelgeoffray/orgs","repos_url":"https://api.github.com/users/emmanuelgeoffray/repos","events_url":"https://api.github.com/users/emmanuelgeoffray/events{/privacy}","received_events_url":"https://api.github.com/users/emmanuelgeoffray/received_events","type":"User"},"position":39,"line":57,"path":"libs/openFrameworks/3d/of3dUtils.cpp","commit_id":"7ca7833ea1afb6bd5a6c54031e3fa688aa0c0ba8","created_at":"2012-02-20T16:06:47Z","updated_at":"2012-02-20T16:06:47Z","body":"It should be ofDrawGridPlane?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1003359","html_url":"https://github.com/openframeworks/openFrameworks/commit/91d76830cf705026afe09fc6fbf8e5a347e900ca#commitcomment-1003359","id":1003359,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"91d76830cf705026afe09fc6fbf8e5a347e900ca","created_at":"2012-02-23T17:07:03Z","updated_at":"2012-02-23T17:07:03Z","body":"I guess you skip updating the createProjects scripts until the project generator is finished? Because right now, it's broken because of the move."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1003442","html_url":"https://github.com/openframeworks/openFrameworks/commit/91d76830cf705026afe09fc6fbf8e5a347e900ca#commitcomment-1003442","id":1003442,"user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following{/other_user}","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"91d76830cf705026afe09fc6fbf8e5a347e900ca","created_at":"2012-02-23T17:22:04Z","updated_at":"2012-02-23T17:22:04Z","body":"the project creator is working against the new paths in develop but deploy examples will be broken... I need to fix one issue with osx recursive folders but besides that, it's almost there. will check it in shortly in dev apps.... "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1010469","html_url":"https://github.com/openframeworks/openFrameworks/commit/7ca7833ea1afb6bd5a6c54031e3fa688aa0c0ba8#commitcomment-1010469","id":1010469,"user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following{/other_user}","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"7ca7833ea1afb6bd5a6c54031e3fa688aa0c0ba8","created_at":"2012-02-25T08:16:08Z","updated_at":"2012-02-25T08:16:08Z","body":"hey!\r\ni've mentioned this elsewhere but this pull was stale, and should have been going into develop\r\nand as others have noted `drawGridPlane` should be `ofDrawGridPlane` in the cpp.\r\n"}] + +https +GET +api.github.com +None +/repositories/345337/comments?per_page=100&page=2 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4875'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '163112'), ('server', 'GitHub.com'), ('last-modified', 'Wed, 19 Jun 2013 10:28:42 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"a3e035a1aeb9a4a31629a5537db4a857"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 19 Jun 2013 10:31:31 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1033394","html_url":"https://github.com/openframeworks/openFrameworks/commit/eb7e594fffabb3ff825b67aaf0b1bca4e0b17aa0#commitcomment-1033394","id":1033394,"user":{"login":"vanderlin","id":149997,"avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","url":"https://api.github.com/users/vanderlin","html_url":"https://github.com/vanderlin","followers_url":"https://api.github.com/users/vanderlin/followers","following_url":"https://api.github.com/users/vanderlin/following{/other_user}","gists_url":"https://api.github.com/users/vanderlin/gists{/gist_id}","starred_url":"https://api.github.com/users/vanderlin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vanderlin/subscriptions","organizations_url":"https://api.github.com/users/vanderlin/orgs","repos_url":"https://api.github.com/users/vanderlin/repos","events_url":"https://api.github.com/users/vanderlin/events{/privacy}","received_events_url":"https://api.github.com/users/vanderlin/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"eb7e594fffabb3ff825b67aaf0b1bca4e0b17aa0","created_at":"2012-03-01T23:04:43Z","updated_at":"2012-03-01T23:04:43Z","body":"I think that this push broke IOS"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1033425","html_url":"https://github.com/openframeworks/openFrameworks/commit/eb7e594fffabb3ff825b67aaf0b1bca4e0b17aa0#commitcomment-1033425","id":1033425,"user":{"login":"kpasko","id":167271,"avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","url":"https://api.github.com/users/kpasko","html_url":"https://github.com/kpasko","followers_url":"https://api.github.com/users/kpasko/followers","following_url":"https://api.github.com/users/kpasko/following{/other_user}","gists_url":"https://api.github.com/users/kpasko/gists{/gist_id}","starred_url":"https://api.github.com/users/kpasko/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kpasko/subscriptions","organizations_url":"https://api.github.com/users/kpasko/orgs","repos_url":"https://api.github.com/users/kpasko/repos","events_url":"https://api.github.com/users/kpasko/events{/privacy}","received_events_url":"https://api.github.com/users/kpasko/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"eb7e594fffabb3ff825b67aaf0b1bca4e0b17aa0","created_at":"2012-03-01T23:12:25Z","updated_at":"2012-03-01T23:12:25Z","body":"oh right - it was in gles1.0, but i think they removed it in 2.0 (i should really get an iphone...); can easily wrap into an ifdef tonight"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1035900","html_url":"https://github.com/openframeworks/openFrameworks/commit/eb7e594fffabb3ff825b67aaf0b1bca4e0b17aa0#commitcomment-1035900","id":1035900,"user":{"login":"vanderlin","id":149997,"avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","url":"https://api.github.com/users/vanderlin","html_url":"https://github.com/vanderlin","followers_url":"https://api.github.com/users/vanderlin/followers","following_url":"https://api.github.com/users/vanderlin/following{/other_user}","gists_url":"https://api.github.com/users/vanderlin/gists{/gist_id}","starred_url":"https://api.github.com/users/vanderlin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vanderlin/subscriptions","organizations_url":"https://api.github.com/users/vanderlin/orgs","repos_url":"https://api.github.com/users/vanderlin/repos","events_url":"https://api.github.com/users/vanderlin/events{/privacy}","received_events_url":"https://api.github.com/users/vanderlin/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"eb7e594fffabb3ff825b67aaf0b1bca4e0b17aa0","created_at":"2012-03-02T15:28:12Z","updated_at":"2012-03-02T15:28:12Z","body":"I'm not sure how much to #ifndef but looks like glES 2 goes not support\r\n\r\n\r\nGL_COLOR_ATTACHMENT0_EXT\r\nglDrawBuffers\r\n\r\nI have a fix should I push?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1036430","html_url":"https://github.com/openframeworks/openFrameworks/commit/eb7e594fffabb3ff825b67aaf0b1bca4e0b17aa0#commitcomment-1036430","id":1036430,"user":{"login":"kpasko","id":167271,"avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","url":"https://api.github.com/users/kpasko","html_url":"https://github.com/kpasko","followers_url":"https://api.github.com/users/kpasko/followers","following_url":"https://api.github.com/users/kpasko/following{/other_user}","gists_url":"https://api.github.com/users/kpasko/gists{/gist_id}","starred_url":"https://api.github.com/users/kpasko/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kpasko/subscriptions","organizations_url":"https://api.github.com/users/kpasko/orgs","repos_url":"https://api.github.com/users/kpasko/repos","events_url":"https://api.github.com/users/kpasko/events{/privacy}","received_events_url":"https://api.github.com/users/kpasko/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"eb7e594fffabb3ff825b67aaf0b1bca4e0b17aa0","created_at":"2012-03-02T16:20:50Z","updated_at":"2012-03-02T16:20:50Z","body":"I think GL_COLOR_ATTACHMENT0_EXT is GL_COLOR_ATTACHMENT0_OES... If you just put GL_COLOR_ATTACHMENT0, the defines at the top of ofFbo.cpp will handle it for you, but only for attachment 0. I suppose the proper solution is to add more defines at the top and take off EXT. \r\n\r\nglDrawBuffers I don't think work. \r\n\r\nIf you push your change I can modify the defines and so forth accordingly, or you can test using GL_COLOR_ATTACHMENT#_OES before pushing, whither way."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1036541","html_url":"https://github.com/openframeworks/openFrameworks/commit/eb7e594fffabb3ff825b67aaf0b1bca4e0b17aa0#commitcomment-1036541","id":1036541,"user":{"login":"vanderlin","id":149997,"avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","url":"https://api.github.com/users/vanderlin","html_url":"https://github.com/vanderlin","followers_url":"https://api.github.com/users/vanderlin/followers","following_url":"https://api.github.com/users/vanderlin/following{/other_user}","gists_url":"https://api.github.com/users/vanderlin/gists{/gist_id}","starred_url":"https://api.github.com/users/vanderlin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vanderlin/subscriptions","organizations_url":"https://api.github.com/users/vanderlin/orgs","repos_url":"https://api.github.com/users/vanderlin/repos","events_url":"https://api.github.com/users/vanderlin/events{/privacy}","received_events_url":"https://api.github.com/users/vanderlin/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"eb7e594fffabb3ff825b67aaf0b1bca4e0b17aa0","created_at":"2012-03-02T16:49:39Z","updated_at":"2012-03-02T16:49:39Z","body":"made a pull request its a hack but at least fixes it on IOS"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1039137","html_url":"https://github.com/openframeworks/openFrameworks/commit/c50648e29199a3f61eae05f6ceb350a97ab275d7#commitcomment-1039137","id":1039137,"user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following{/other_user}","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"c50648e29199a3f61eae05f6ceb350a97ab275d7","created_at":"2012-03-03T19:02:18Z","updated_at":"2012-03-03T19:02:18Z","body":"the loadData() methods added here broke 32-bit and 16-bit image display in the AdvancedImageLoading example. i'm not completely sure why. maybe the ofPixels were being converted before?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1095371","html_url":"https://github.com/openframeworks/openFrameworks/commit/918818c864c663938377ff48b72f512ae06ec51e#commitcomment-1095371","id":1095371,"user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"position":50,"line":314,"path":"apps/devApps/projectGenerator/src/utils/Utils.cpp","commit_id":"918818c864c663938377ff48b72f512ae06ec51e","created_at":"2012-03-16T17:52:11Z","updated_at":"2012-03-16T17:52:11Z","body":"@ofZach curious why you changed this. \nI tried re-adding this and I get a ../../../addons path ( now I am getting ../../addons )\n\nwhat is weird is that the addons examples end up with ../../../../ - so I imagine this is what you were trying to fix?\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1095499","html_url":"https://github.com/openframeworks/openFrameworks/commit/918818c864c663938377ff48b72f512ae06ec51e#commitcomment-1095499","id":1095499,"user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following{/other_user}","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"918818c864c663938377ff48b72f512ae06ec51e","created_at":"2012-03-16T18:15:58Z","updated_at":"2012-03-16T18:15:58Z","body":"sorry ! I was trying to fix an error with seeing ../../../../, but it looks like I introduced another problem. will take a look at it later today. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1097032","html_url":"https://github.com/openframeworks/openFrameworks/commit/14f5496a27eb7ad7db492397db3879a2e21392cb#commitcomment-1097032","id":1097032,"user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"14f5496a27eb7ad7db492397db3879a2e21392cb","created_at":"2012-03-17T02:27:11Z","updated_at":"2012-03-17T02:27:11Z","body":"hey @kylemcdonald - I would expect this to come in as PR \r\nits a little hard to see whats new this way"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1097055","html_url":"https://github.com/openframeworks/openFrameworks/commit/9f360dafd8c45dbbef2c59c68ae8c5a531e6c8f8#commitcomment-1097055","id":1097055,"user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"9f360dafd8c45dbbef2c59c68ae8c5a531e6c8f8","created_at":"2012-03-17T02:38:11Z","updated_at":"2012-03-17T02:38:11Z","body":"the non used methods should have an extra return between { and } \r\nexactly how it is in empty example :) \r\n\r\nalso please do this as a PR and not directly into origin ( that is reserved for zach, arturo and I ) "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1097067","html_url":"https://github.com/openframeworks/openFrameworks/commit/5f6e1e794f52e55251f4c9479c52c19b65ae91b2#commitcomment-1097067","id":1097067,"user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"5f6e1e794f52e55251f4c9479c52c19b65ae91b2","created_at":"2012-03-17T02:48:37Z","updated_at":"2012-03-17T02:48:37Z","body":"also please indent the public: private etc as according to of code style:\r\nhttps://github.com/openframeworks/openFrameworks/wiki/oF-code-style\r\n\r\ntrying to sneak it in :) "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1097198","html_url":"https://github.com/openframeworks/openFrameworks/commit/14f5496a27eb7ad7db492397db3879a2e21392cb#commitcomment-1097198","id":1097198,"user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following{/other_user}","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"14f5496a27eb7ad7db492397db3879a2e21392cb","created_at":"2012-03-17T05:12:07Z","updated_at":"2012-03-17T05:12:07Z","body":"@ofTheo sorry! i can do all changes as pull requests. i understand that it's easier to review it in a pr."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1097202","html_url":"https://github.com/openframeworks/openFrameworks/commit/5f6e1e794f52e55251f4c9479c52c19b65ae91b2#commitcomment-1097202","id":1097202,"user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following{/other_user}","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"5f6e1e794f52e55251f4c9479c52c19b65ae91b2","created_at":"2012-03-17T05:14:11Z","updated_at":"2012-03-17T05:14:11Z","body":"ahhhh yes. xcode's ctrl+i getting in the way. i'll re-indent them all now."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1097203","html_url":"https://github.com/openframeworks/openFrameworks/commit/9f360dafd8c45dbbef2c59c68ae8c5a531e6c8f8#commitcomment-1097203","id":1097203,"user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following{/other_user}","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"9f360dafd8c45dbbef2c59c68ae8c5a531e6c8f8","created_at":"2012-03-17T05:15:02Z","updated_at":"2012-03-17T05:15:02Z","body":"yeah this was pasted from another example instead of the emptyExample. my bad."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1098207","html_url":"https://github.com/openframeworks/openFrameworks/commit/e9366f9efe3bbf39a169b1ea6b67af12b982054b#commitcomment-1098207","id":1098207,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"e9366f9efe3bbf39a169b1ea6b67af12b982054b","created_at":"2012-03-17T17:28:12Z","updated_at":"2012-03-17T17:28:12Z","body":"Is there something funky going on with the branches? This commit looks strange - do we have two develop branches??\r\n`Merge branch 'develop' of github.com:openframeworks/openFrameworks into develop`\r\nNetwork view looks a bit strange, and the github news feed insists you just merged 150 commits..."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1098209","html_url":"https://github.com/openframeworks/openFrameworks/commit/e9366f9efe3bbf39a169b1ea6b67af12b982054b#commitcomment-1098209","id":1098209,"user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"e9366f9efe3bbf39a169b1ea6b67af12b982054b","created_at":"2012-03-17T17:31:29Z","updated_at":"2012-03-17T17:31:29Z","body":"yeah it does seem a bit weird but I think it is @ofZach 's develop branch and he is merging in OFs develop branch. so you see all the commits a second time. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1098245","html_url":"https://github.com/openframeworks/openFrameworks/commit/e9366f9efe3bbf39a169b1ea6b67af12b982054b#commitcomment-1098245","id":1098245,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"e9366f9efe3bbf39a169b1ea6b67af12b982054b","created_at":"2012-03-17T17:46:29Z","updated_at":"2012-03-17T17:46:29Z","body":"hm, strange. i pulled and checked with gitg, history looks ok. probably just a github parsing error or whatever."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1098249","html_url":"https://github.com/openframeworks/openFrameworks/commit/e9366f9efe3bbf39a169b1ea6b67af12b982054b#commitcomment-1098249","id":1098249,"user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following{/other_user}","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"e9366f9efe3bbf39a169b1ea6b67af12b982054b","created_at":"2012-03-17T17:48:36Z","updated_at":"2012-03-20T22:12:00Z","body":"i think this might have something to do with someone using the eyewriter account.\r\n\r\ni'm getting errors pushing anything to github right now ever since this commit 4a136cc45b89fbeec99fc1020716de705490d3d3\r\n\r\n\terror: object 4a136cc45b89fbeec99fc1020716de705490d3d3:invalid author/committer line - bad email\r\n\tfatal: Error in object\r\n\terror: unpack failed: index-pack abnormal exit\r\n\tTo git@github.com:kylemcdonald/openFrameworks.git\r\n\t ! [remote rejected] develop -> develop (n/a (unpacker error))\r\n\terror: failed to push some refs to 'git@github.com:kylemcdonald/openFrameworks.git'\r\n\r\nhopping in IRC now..."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1098361","html_url":"https://github.com/openframeworks/openFrameworks/commit/e9366f9efe3bbf39a169b1ea6b67af12b982054b#commitcomment-1098361","id":1098361,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"e9366f9efe3bbf39a169b1ea6b67af12b982054b","created_at":"2012-03-17T19:02:34Z","updated_at":"2012-03-17T19:02:51Z","body":"The problem is solved now. If anybody finds his way here because you have problems with the repo, pushing problems, or something, contact @ofTheo or @bilderbuchi to get help in fixing it.\r\nTo summarize, this commit introduced some strange errors, so basically we had to delete it from the repo. If you had pulled this commit in the time it was online, you also have the bad commit in your local repo. To remedy this, you have to reset back to before this was committed, and pull again. So something like \r\n \r\n git checkout develop\r\n git reset --hard 581ec0a7a2bc5d6fb9fe03d1a3e77f1661dddc7e //This will erase anything coming after that, so make sure your work is safe!\r\n git pull origin develop\r\n git pull upstream develop\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1098377","html_url":"https://github.com/openframeworks/openFrameworks/commit/e9366f9efe3bbf39a169b1ea6b67af12b982054b#commitcomment-1098377","id":1098377,"user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"e9366f9efe3bbf39a169b1ea6b67af12b982054b","created_at":"2012-03-17T19:07:35Z","updated_at":"2012-03-17T19:07:56Z","body":"ps: back up any un committed code before resetting!"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1098757","html_url":"https://github.com/openframeworks/openFrameworks/commit/e9366f9efe3bbf39a169b1ea6b67af12b982054b#commitcomment-1098757","id":1098757,"user":{"login":"benben","id":124513,"avatar_url":"https://secure.gravatar.com/avatar/6aed6a0dfa09b46d6fbd5149eb56def8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"6aed6a0dfa09b46d6fbd5149eb56def8","url":"https://api.github.com/users/benben","html_url":"https://github.com/benben","followers_url":"https://api.github.com/users/benben/followers","following_url":"https://api.github.com/users/benben/following{/other_user}","gists_url":"https://api.github.com/users/benben/gists{/gist_id}","starred_url":"https://api.github.com/users/benben/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/benben/subscriptions","organizations_url":"https://api.github.com/users/benben/orgs","repos_url":"https://api.github.com/users/benben/repos","events_url":"https://api.github.com/users/benben/events{/privacy}","received_events_url":"https://api.github.com/users/benben/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"e9366f9efe3bbf39a169b1ea6b67af12b982054b","created_at":"2012-03-17T22:36:31Z","updated_at":"2012-03-17T22:36:31Z","body":"what the problem could be (but I'm not sure what happened exactly):\r\nif you commit locally to develop branch, someone updates the remote branch, and then your `git pull` creates a new branch with the same name in your history and merges this two branches together because you are virtually on a new local branch with your local commit.\r\n\r\nmy suggestion is to push in the following way (replace origin with your remote repo):\r\n\r\n git pull --rebase && git push origin develop\r\n\r\nor only\r\n\r\n git pull --rebase\r\n\r\nif you only want to get the newest remote head, but there are also unpushed commits in your local history.\r\n\r\nmaybe this helps avoid such problems next time."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1123793","html_url":"https://github.com/openframeworks/openFrameworks/commit/f99748e9f503530bf9bce6f094b793fdae04f353#commitcomment-1123793","id":1123793,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":7,"line":23,"path":"examples/.gitignore","commit_id":"f99748e9f503530bf9bce6f094b793fdae04f353","created_at":"2012-03-23T13:00:33Z","updated_at":"2012-03-23T13:00:33Z","body":"I'm not sure you need all those combinations. I'll look how I did it..."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1123831","html_url":"https://github.com/openframeworks/openFrameworks/commit/f99748e9f503530bf9bce6f094b793fdae04f353#commitcomment-1123831","id":1123831,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":7,"line":23,"path":"examples/.gitignore","commit_id":"f99748e9f503530bf9bce6f094b793fdae04f353","created_at":"2012-03-23T13:09:52Z","updated_at":"2012-03-23T13:10:40Z","body":"Yes. I found that \r\n `examples/*/*/bin/*`\r\n `!examples/*/*/bin/data/`\r\nin the root gitignore should be enough.\r\n`**` is not official gitignore syntax, btw, and relies on having a shell with some expansion capabilities (basically, POSIX systems) - not 100% sure this works on windows in every case."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1123846","html_url":"https://github.com/openframeworks/openFrameworks/commit/f99748e9f503530bf9bce6f094b793fdae04f353#commitcomment-1123846","id":1123846,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":7,"line":23,"path":"examples/.gitignore","commit_id":"f99748e9f503530bf9bce6f094b793fdae04f353","created_at":"2012-03-23T13:14:39Z","updated_at":"2012-03-23T13:15:58Z","body":"btw, `!*/*/bin/data` falsely un-ignores/matches a file called `dataexample`, too."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1123998","html_url":"https://github.com/openframeworks/openFrameworks/commit/f99748e9f503530bf9bce6f094b793fdae04f353#commitcomment-1123998","id":1123998,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"f99748e9f503530bf9bce6f094b793fdae04f353","created_at":"2012-03-23T14:04:18Z","updated_at":"2012-03-23T14:04:18Z","body":"yes that seems ok, have you tried with nested folders inside data? although i think it will work. can you send a PR with that changes?\r\n\r\nthanks!\r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1124001","html_url":"https://github.com/openframeworks/openFrameworks/commit/f99748e9f503530bf9bce6f094b793fdae04f353#commitcomment-1124001","id":1124001,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"f99748e9f503530bf9bce6f094b793fdae04f353","created_at":"2012-03-23T14:05:47Z","updated_at":"2012-03-23T14:05:47Z","body":"but also perhaps better to have everything related to the examples in examples/.gitignore the root .gitignore is a mess, we'll need to clean it at some point but by now i think i'll be clearer to separate this rules in the specific file for the examples"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1124159","html_url":"https://github.com/openframeworks/openFrameworks/commit/f99748e9f503530bf9bce6f094b793fdae04f353#commitcomment-1124159","id":1124159,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"f99748e9f503530bf9bce6f094b793fdae04f353","created_at":"2012-03-23T14:39:23Z","updated_at":"2012-03-23T14:40:17Z","body":"Yes I have tried with nested folders. \r\nYes I also think stuff like this should be in subfolder-gitignores. I will do either that, or make it global for both examples/ and apps/, I will see which is cleaner.\r\nI am in the process of cleaning up, please take a look at #1081, it's all there. (also, some feedback is needed). \r\nYes I will send a PR as soon as it's finished (this might take a while). Please fix this thing yourself in the meantime. I'll push my topic branch this weekend when I've done more work on that."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1189725","html_url":"https://github.com/openframeworks/openFrameworks/commit/d1a1ee1eace4152eb67fdb4e86a8b0efb3e5163b#commitcomment-1189725","id":1189725,"user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"position":704,"line":596,"path":"libs/openFrameworks/utils/ofFileUtils.cpp","commit_id":"d1a1ee1eace4152eb67fdb4e86a8b0efb3e5163b","created_at":"2012-04-09T21:05:37Z","updated_at":"2012-04-09T21:05:37Z","body":"apologies for polluting this commit with formatting - this is the crux of it right here. no need to return false as the try catch will handle the error and if the dst is a folder poco will handle placing it into the folder instead of overwriting it. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1189738","html_url":"https://github.com/openframeworks/openFrameworks/commit/d1a1ee1eace4152eb67fdb4e86a8b0efb3e5163b#commitcomment-1189738","id":1189738,"user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following{/other_user}","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"position":1041,"line":952,"path":"libs/openFrameworks/utils/ofFileUtils.cpp","commit_id":"d1a1ee1eace4152eb67fdb4e86a8b0efb3e5163b","created_at":"2012-04-09T21:07:46Z","updated_at":"2012-04-09T21:07:46Z","body":"hmm this is weird, is this the autoformatter?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1189746","html_url":"https://github.com/openframeworks/openFrameworks/commit/d1a1ee1eace4152eb67fdb4e86a8b0efb3e5163b#commitcomment-1189746","id":1189746,"user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following{/other_user}","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"position":1081,"line":1012,"path":"libs/openFrameworks/utils/ofFileUtils.cpp","commit_id":"d1a1ee1eace4152eb67fdb4e86a8b0efb3e5163b","created_at":"2012-04-09T21:08:36Z","updated_at":"2012-04-09T21:08:36Z","body":"same thing again, removing the space after a template parameter. maybe this was meant for classes with templates, to try and keep the { next to the > ?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1189848","html_url":"https://github.com/openframeworks/openFrameworks/commit/d1a1ee1eace4152eb67fdb4e86a8b0efb3e5163b#commitcomment-1189848","id":1189848,"user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"position":1081,"line":1012,"path":"libs/openFrameworks/utils/ofFileUtils.cpp","commit_id":"d1a1ee1eace4152eb67fdb4e86a8b0efb3e5163b","created_at":"2012-04-09T21:33:01Z","updated_at":"2012-04-09T21:33:01Z","body":"ugg yeah - I forgot I ran the formatter - I hate when others do that and I just did it :) \n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1191761","html_url":"https://github.com/openframeworks/openFrameworks/commit/d1a1ee1eace4152eb67fdb4e86a8b0efb3e5163b#commitcomment-1191761","id":1191761,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":1081,"line":1012,"path":"libs/openFrameworks/utils/ofFileUtils.cpp","commit_id":"d1a1ee1eace4152eb67fdb4e86a8b0efb3e5163b","created_at":"2012-04-10T09:07:44Z","updated_at":"2012-04-10T09:07:44Z","body":"This is strange. This particular bug was supposed to be fixed in #1111. Well, I guess it's yet another edge-case. \nIf you find bugs in the formatting, re-open #1072, it's the issue to go to for those things."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1191769","html_url":"https://github.com/openframeworks/openFrameworks/commit/d1a1ee1eace4152eb67fdb4e86a8b0efb3e5163b#commitcomment-1191769","id":1191769,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":1081,"line":1012,"path":"libs/openFrameworks/utils/ofFileUtils.cpp","commit_id":"d1a1ee1eace4152eb67fdb4e86a8b0efb3e5163b","created_at":"2012-04-10T09:08:27Z","updated_at":"2012-04-10T09:08:27Z","body":"probably because it's a function definition, not a word. doesn't explain the other case you point out kyle. curious."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1191779","html_url":"https://github.com/openframeworks/openFrameworks/commit/d1a1ee1eace4152eb67fdb4e86a8b0efb3e5163b#commitcomment-1191779","id":1191779,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":1041,"line":952,"path":"libs/openFrameworks/utils/ofFileUtils.cpp","commit_id":"d1a1ee1eace4152eb67fdb4e86a8b0efb3e5163b","created_at":"2012-04-10T09:09:24Z","updated_at":"2012-04-10T09:09:24Z","body":"This is really strange, this one was definitely supposed to be fixed in #1111, with setting `sp_angle_word=add`. Will investigate."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1192339","html_url":"https://github.com/openframeworks/openFrameworks/commit/d1a1ee1eace4152eb67fdb4e86a8b0efb3e5163b#commitcomment-1192339","id":1192339,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":1081,"line":1012,"path":"libs/openFrameworks/utils/ofFileUtils.cpp","commit_id":"d1a1ee1eace4152eb67fdb4e86a8b0efb3e5163b","created_at":"2012-04-10T11:59:52Z","updated_at":"2012-04-10T11:59:52Z","body":"@ofTheo, @kylemcdonald: Hm, I can't reproduce either of those formatting errors with the current develop version of the code formatter. Could you comment in #1072 how you exactly used the formatter?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1192391","html_url":"https://github.com/openframeworks/openFrameworks/commit/1a48b5afdf82361b040b02b1999be1703accb958#commitcomment-1192391","id":1192391,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"1a48b5afdf82361b040b02b1999be1703accb958","created_at":"2012-04-10T12:11:23Z","updated_at":"2012-04-10T12:13:24Z","body":"@ofZach: you used the eyebeam account again on this and the preceding commit. Also, the two following commits (by you presumably) have the strange author entry \"=\"... Could you confirm that the repo is not broken/polluted again? (e.g. tryto push, and do `git fsck --full`. `contains zero-padded file modes` and `dangling blob` warnings are OK)\r\n\r\n(sorry for the false notification, other Zach :-P)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1192448","html_url":"https://github.com/openframeworks/openFrameworks/commit/1a48b5afdf82361b040b02b1999be1703accb958#commitcomment-1192448","id":1192448,"user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following{/other_user}","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"1a48b5afdf82361b040b02b1999be1703accb958","created_at":"2012-04-10T12:28:01Z","updated_at":"2012-04-10T12:28:01Z","body":"sorry -- I have been moving around machines and checked in code from windows machines, etc. \r\n\r\nthis is fsck -- full: \r\n\r\nnew-host-3:openFrameworks$ git fsck --full\r\nerror in commit 4a136cc45b89fbeec99fc1020716de705490d3d3: invalid author/committer line - bad email\r\nwarning in tree bb1f763543cc01b7f5904fcfb636888c3ad73def: contains zero-padded file modes\r\ndangling blob ba210ec823ab12aec5021ad2a854887600265424\r\ndangling blob c681661242b9e03d67e615db7cb15af1facb7ecb\r\ndangling blob 8ba0068d4b09045a4dc4e4374e1946d04f419b79\r\ndangling blob fddc7a236690849d6ff3e5cbb06dc3b5739acaa4\r\ndangling blob 1b31874dc3db746d1ccb09227fd9f41ea043f8f7\r\ndangling blob 228cc52655c9b3dfbfadc1aa44ca13742fbb1869\r\ndangling blob 348d89cffb1a286f2ad57b884815dddaeedfc07a\r\ndangling blob d9a5cd54f0365cc1ede624d32fe4e73aef8b798e"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1192547","html_url":"https://github.com/openframeworks/openFrameworks/commit/1a48b5afdf82361b040b02b1999be1703accb958#commitcomment-1192547","id":1192547,"user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"1a48b5afdf82361b040b02b1999be1703accb958","created_at":"2012-04-10T12:53:47Z","updated_at":"2012-04-10T12:53:47Z","body":"is it broken?\r\nthe commit history looks quite weird."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1192574","html_url":"https://github.com/openframeworks/openFrameworks/commit/1a48b5afdf82361b040b02b1999be1703accb958#commitcomment-1192574","id":1192574,"user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following{/other_user}","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"1a48b5afdf82361b040b02b1999be1703accb958","created_at":"2012-04-10T13:02:38Z","updated_at":"2012-04-10T13:02:38Z","body":"those commits were made on various windows machines, but I had setup my ssh key properly -- maybe my user config was wrong. I'm happy if we want to drop those commits and I can remake them, they are very trivial changes. my zach@eyebeam.org email is associated with the ofZach account and the ssh keys are ok, so I'm not sure what github is getting wrong here. \r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1192588","html_url":"https://github.com/openframeworks/openFrameworks/commit/1a48b5afdf82361b040b02b1999be1703accb958#commitcomment-1192588","id":1192588,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"1a48b5afdf82361b040b02b1999be1703accb958","created_at":"2012-04-10T13:06:24Z","updated_at":"2012-04-10T13:06:31Z","body":"> is it broken?\r\n\r\nThis `error in commit 4a136cc: invalid author/committer line - bad email` would indicate it - it is the same error msg we got last time we had those problems. I haven't confirmed this personally, though, I haven't pulled those commits in yet (and I'm hesitant to do so)."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1192597","html_url":"https://github.com/openframeworks/openFrameworks/commit/1a48b5afdf82361b040b02b1999be1703accb958#commitcomment-1192597","id":1192597,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"1a48b5afdf82361b040b02b1999be1703accb958","created_at":"2012-04-10T13:08:02Z","updated_at":"2012-04-10T13:08:02Z","body":"@Zach: maybe a `\\n` in the email, or something? *justguessing*\r\nI'd think ssh key must be ok, otherwise you wouldn't be allowed to push onto the repo.\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1192605","html_url":"https://github.com/openframeworks/openFrameworks/commit/1a48b5afdf82361b040b02b1999be1703accb958#commitcomment-1192605","id":1192605,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"1a48b5afdf82361b040b02b1999be1703accb958","created_at":"2012-04-10T13:10:03Z","updated_at":"2012-04-10T13:10:03Z","body":"darn, no I only noticed: 4a136cc is the SHA of the commit we had trouble with last time - this shouldn't be in the repo anymore... maybe one of those machines you used still had the polluted repo on it?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1192607","html_url":"https://github.com/openframeworks/openFrameworks/commit/1a48b5afdf82361b040b02b1999be1703accb958#commitcomment-1192607","id":1192607,"user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following{/other_user}","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"1a48b5afdf82361b040b02b1999be1703accb958","created_at":"2012-04-10T13:10:43Z","updated_at":"2012-04-10T13:11:00Z","body":"could be -- also it looks like the clock was ahead (it was on a windows 7 laptop I rarely use) so that's why these commits come out for today, but I think they were made a while back. The important stuff is done after those weird commits, in these commits: f57915351475d50377e1299e81678541f2aa2d7e, c93c448e37fd716aa3c1cfa916d50c4ccba7a288, 67d1d8c769a1979b8a0cc71436083d10a83bee47\r\n\r\nwhat's a good way to fix this? \r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1192617","html_url":"https://github.com/openframeworks/openFrameworks/commit/1a48b5afdf82361b040b02b1999be1703accb958#commitcomment-1192617","id":1192617,"user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following{/other_user}","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"1a48b5afdf82361b040b02b1999be1703accb958","created_at":"2012-04-10T13:12:15Z","updated_at":"2012-04-10T13:12:15Z","body":"@bilderbuchi -- sorry, might be. I have been moving around among different machines to test windows pg, so maybe the bad commit was there? "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1192628","html_url":"https://github.com/openframeworks/openFrameworks/commit/1a48b5afdf82361b040b02b1999be1703accb958#commitcomment-1192628","id":1192628,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"1a48b5afdf82361b040b02b1999be1703accb958","created_at":"2012-04-10T13:14:34Z","updated_at":"2012-04-10T13:16:51Z","body":"Also, another thing: It's my fault and I confused your eyeBEAM account with the eyeWRITER account which originally made the troubles (i.e. 4a136cc), so maybe there's no cause for alarm after all. sorry for that.\r\n\r\nYou shouldn't have that error message, though, I wonder why you even can push from that repo.\r\n\r\nFixing: cloning a fresh copy of the repo would be the easiest way (if you got the bandwidth) to find out if it's polluted on GH or if it's just your machine. If the new one is clean, replace the old one with it.\r\nI'm currently trying this on my side, I'm on a university pipe so hopefully it's quick. :D"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1192662","html_url":"https://github.com/openframeworks/openFrameworks/commit/1a48b5afdf82361b040b02b1999be1703accb958#commitcomment-1192662","id":1192662,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"1a48b5afdf82361b040b02b1999be1703accb958","created_at":"2012-04-10T13:19:08Z","updated_at":"2012-04-10T13:25:38Z","body":"I agree with Theo, though - the commit history looks strange. ~~Also, those last commits are missing from the network view (could be a buffering issue or something, though)~~ scratch that, I found them a bit farther back from the tip"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1192679","html_url":"https://github.com/openframeworks/openFrameworks/commit/1a48b5afdf82361b040b02b1999be1703accb958#commitcomment-1192679","id":1192679,"user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following{/other_user}","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"1a48b5afdf82361b040b02b1999be1703accb958","created_at":"2012-04-10T13:22:46Z","updated_at":"2012-04-10T13:22:46Z","body":"one thing I think is the timing -- these commits were made on a machine where the time was not set right, so they are appearing as the last 4 commits -- that's not true. If you click the parents you can see where they fit, and they are there on the network chart: \r\nhttp://imgur.com/aFyoC\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1192699","html_url":"https://github.com/openframeworks/openFrameworks/commit/1a48b5afdf82361b040b02b1999be1703accb958#commitcomment-1192699","id":1192699,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"1a48b5afdf82361b040b02b1999be1703accb958","created_at":"2012-04-10T13:27:19Z","updated_at":"2012-04-10T13:27:19Z","body":"OK, I just pulled a fresh copy of the repo, and it comes away clean:\r\n\r\n\tcbuchner@kestrel:~/Desktop/openFrameworks$ git fsck --full\r\n\twarning in tree bb1f763543cc01b7f5904fcfb636888c3ad73def: contains zero-padded file modes\r\n\r\nso at least the GH repo seems unaffected. history is probably just wonky because of the wrong system clock?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1192707","html_url":"https://github.com/openframeworks/openFrameworks/commit/1a48b5afdf82361b040b02b1999be1703accb958#commitcomment-1192707","id":1192707,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"1a48b5afdf82361b040b02b1999be1703accb958","created_at":"2012-04-10T13:29:35Z","updated_at":"2012-04-10T13:33:22Z","body":"If you replace your existing repo (which gives the git-fsck error) with a fresh pull you should be good Zach. \r\nAlso, might be a good idea to find out what went wrong with the author info with those two \"=\" commits. git log looks like this:\r\n\r\n\tcommit 04de656fed0794e407dca86162ca2e306169390b\r\n\tAuthor: = <=>\r\n\tDate: Tue Apr 10 02:26:31 2012 -0700\r\n\r\n\t\tok, that didn't work so well... reverting back to the older style\r\n\r\nand the zach@eyebeam like this: `Author: zach@eyebeam.org `\r\n\r\nSorry for the false alarm/confusion, guys."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1192752","html_url":"https://github.com/openframeworks/openFrameworks/commit/1a48b5afdf82361b040b02b1999be1703accb958#commitcomment-1192752","id":1192752,"user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following{/other_user}","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"1a48b5afdf82361b040b02b1999be1703accb958","created_at":"2012-04-10T13:38:34Z","updated_at":"2012-04-10T13:38:34Z","body":"ok -- I pulled clean and git-fsck is fine. I'll take a look at seeing if I can fix those commit's author info so it's cleaner, not sure about being able to revise the time but I'll look into that also (so the commit history will look more legit)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1196834","html_url":"https://github.com/openframeworks/openFrameworks/commit/967997d28b877a4bcc2c8e4972f10b9b9d179562#commitcomment-1196834","id":1196834,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":78,"line":86,"path":"apps/devApps/projectGenerator/src/projects/baseProject.cpp","commit_id":"967997d28b877a4bcc2c8e4972f10b9b9d179562","created_at":"2012-04-11T10:06:11Z","updated_at":"2012-04-11T10:06:11Z","body":"hm, here you compare a set::iterator with a vector::iterator - does that really work? I'm asking because I just tried to compile it, and the compiler balks here with `no match for ‘operator!=’ in ‘it != ((baseProject*)this)->baseProject::addons.std::vector<_Tp, _Alloc>::end [with _Tp = ofAddon, _Alloc = std::allocator, std::vector<_Tp, _Alloc>::iterator = __gnu_cxx::__normal_iterator >, typename std::_Vector_base<_Tp, _Alloc>::_Tp_alloc_type::pointer = ofAddon*]()’\tbaseProject.cpp\t/projectGenerator/src/projects\tline 97\tC/C++ Problem`\n\nnot sure if something's wrong with my setup at this machine - I'm still investigating."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1197069","html_url":"https://github.com/openframeworks/openFrameworks/commit/967997d28b877a4bcc2c8e4972f10b9b9d179562#commitcomment-1197069","id":1197069,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":78,"line":86,"path":"apps/devApps/projectGenerator/src/projects/baseProject.cpp","commit_id":"967997d28b877a4bcc2c8e4972f10b9b9d179562","created_at":"2012-04-11T11:27:12Z","updated_at":"2012-04-11T11:27:12Z","body":"that was a set before, i guess someone changed it to a vector which will probably break all the addons logic in linux since it was using the set to avoid duplicateds"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1197109","html_url":"https://github.com/openframeworks/openFrameworks/commit/967997d28b877a4bcc2c8e4972f10b9b9d179562#commitcomment-1197109","id":1197109,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":78,"line":86,"path":"apps/devApps/projectGenerator/src/projects/baseProject.cpp","commit_id":"967997d28b877a4bcc2c8e4972f10b9b9d179562","created_at":"2012-04-11T11:40:17Z","updated_at":"2012-04-11T11:40:17Z","body":"yes, it was done in 085089b3fe7fb9b8652162. @gameoverhack, could you shed some light why you changed `set addons` into a vector?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1200078","html_url":"https://github.com/openframeworks/openFrameworks/commit/c5d72b53cfdb19befc5d791aeee3e91c15f1239d#commitcomment-1200078","id":1200078,"user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following{/other_user}","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"c5d72b53cfdb19befc5d791aeee3e91c15f1239d","created_at":"2012-04-12T00:11:11Z","updated_at":"2012-04-12T00:11:11Z","body":"note this order change: \r\n\r\nlibopencv_calib3d231.a\t\r\nlibopencv_features2d231.a\r\n\r\nthere were linking orders with the older order. \r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1214956","html_url":"https://github.com/openframeworks/openFrameworks/commit/ae666c3a442a3a73057edc93467f673ba8dab6c1#commitcomment-1214956","id":1214956,"user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following{/other_user}","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"ae666c3a442a3a73057edc93467f673ba8dab6c1","created_at":"2012-04-16T12:15:37Z","updated_at":"2012-04-16T12:15:37Z","body":"cool -- fyi, I think this is specifically about intel graphics cards more then CB (I have this issue on macbook air osx as well as windows). "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1219571","html_url":"https://github.com/openframeworks/openFrameworks/commit/967997d28b877a4bcc2c8e4972f10b9b9d179562#commitcomment-1219571","id":1219571,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":78,"line":86,"path":"apps/devApps/projectGenerator/src/projects/baseProject.cpp","commit_id":"967997d28b877a4bcc2c8e4972f10b9b9d179562","created_at":"2012-04-17T07:15:09Z","updated_at":"2012-04-17T07:15:09Z","body":"btw, could set/vector mixup also be the reason behind #1135? And how do we best fix this? Currently, PG doesn't even compile for me."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1230344","html_url":"https://github.com/openframeworks/openFrameworks/commit/967997d28b877a4bcc2c8e4972f10b9b9d179562#commitcomment-1230344","id":1230344,"user":{"login":"gameoverhack","id":331599,"avatar_url":"https://secure.gravatar.com/avatar/397ac2141aace0681a354185e7efb0f1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"397ac2141aace0681a354185e7efb0f1","url":"https://api.github.com/users/gameoverhack","html_url":"https://github.com/gameoverhack","followers_url":"https://api.github.com/users/gameoverhack/followers","following_url":"https://api.github.com/users/gameoverhack/following{/other_user}","gists_url":"https://api.github.com/users/gameoverhack/gists{/gist_id}","starred_url":"https://api.github.com/users/gameoverhack/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gameoverhack/subscriptions","organizations_url":"https://api.github.com/users/gameoverhack/orgs","repos_url":"https://api.github.com/users/gameoverhack/repos","events_url":"https://api.github.com/users/gameoverhack/events{/privacy}","received_events_url":"https://api.github.com/users/gameoverhack/received_events","type":"User"},"position":78,"line":86,"path":"apps/devApps/projectGenerator/src/projects/baseProject.cpp","commit_id":"967997d28b877a4bcc2c8e4972f10b9b9d179562","created_at":"2012-04-19T07:40:43Z","updated_at":"2012-04-19T07:40:43Z","body":"I think this should be fixed by this https://github.com/openframeworks/openFrameworks/issues/1184#issuecomment-5216458"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1239876","html_url":"https://github.com/openframeworks/openFrameworks/commit/73e9705e0b505b2e150c8d110aec181093ee1f0f#commitcomment-1239876","id":1239876,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"73e9705e0b505b2e150c8d110aec181093ee1f0f","created_at":"2012-04-21T23:12:36Z","updated_at":"2012-04-21T23:12:36Z","body":"mmh, there's no include directory anymore, probably you have it because of some ignore rule but it's not on the repo. can i revert the commit?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1239935","html_url":"https://github.com/openframeworks/openFrameworks/commit/73e9705e0b505b2e150c8d110aec181093ee1f0f#commitcomment-1239935","id":1239935,"user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"73e9705e0b505b2e150c8d110aec181093ee1f0f","created_at":"2012-04-22T00:25:20Z","updated_at":"2012-04-22T00:25:20Z","body":"oh damn - yeah please do. \r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1239940","html_url":"https://github.com/openframeworks/openFrameworks/commit/73e9705e0b505b2e150c8d110aec181093ee1f0f#commitcomment-1239940","id":1239940,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"73e9705e0b505b2e150c8d110aec181093ee1f0f","created_at":"2012-04-22T00:31:55Z","updated_at":"2012-04-22T00:31:55Z","body":"done :)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1240967","html_url":"https://github.com/openframeworks/openFrameworks/commit/021b51b4a394f745adfc119e7f0b66073046550c#commitcomment-1240967","id":1240967,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":17,"line":85,"path":"libs/openFrameworks/.project","commit_id":"021b51b4a394f745adfc119e7f0b66073046550c","created_at":"2012-04-22T16:54:47Z","updated_at":"2012-04-22T16:54:47Z","body":"user-specific path in here - is that right?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1240997","html_url":"https://github.com/openframeworks/openFrameworks/commit/021b51b4a394f745adfc119e7f0b66073046550c#commitcomment-1240997","id":1240997,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":17,"line":85,"path":"libs/openFrameworks/.project","commit_id":"021b51b4a394f745adfc119e7f0b66073046550c","created_at":"2012-04-22T17:14:27Z","updated_at":"2012-04-22T17:14:27Z","body":"not very much :) but it shouldn't hurt, eclipse will just ignore it. it's just a linked folder to the project files so i can edit the makefiles from eclipse, for most people is not necesary and it's very useful for me. will change it if i find a way of using relative paths or variables but eclipse is pretty bad at that"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1241059","html_url":"https://github.com/openframeworks/openFrameworks/commit/021b51b4a394f745adfc119e7f0b66073046550c#commitcomment-1241059","id":1241059,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":17,"line":85,"path":"libs/openFrameworks/.project","commit_id":"021b51b4a394f745adfc119e7f0b66073046550c","created_at":"2012-04-22T17:57:03Z","updated_at":"2012-04-22T17:57:03Z","body":"i see :-)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1241136","html_url":"https://github.com/openframeworks/openFrameworks/commit/34877438b4d3bd13073ad3007a71c2af7070541f#commitcomment-1241136","id":1241136,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"34877438b4d3bd13073ad3007a71c2af7070541f","created_at":"2012-04-22T18:57:20Z","updated_at":"2012-04-22T18:57:38Z","body":"@arturoc: hm, I can't find an Int64 type in the OSC specification, how did this come about?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1241170","html_url":"https://github.com/openframeworks/openFrameworks/commit/0d85b22003e96111a0bdd5e53a901b018174b231#commitcomment-1241170","id":1241170,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"0d85b22003e96111a0bdd5e53a901b018174b231","created_at":"2012-04-22T19:20:17Z","updated_at":"2012-04-22T19:20:17Z","body":"@arturoc: Why did you update the config.make and Makefile only for the EmptyExample and not the others? Also, shouldn't those both be generated by the PG, and not even be in the example folder/repo? I'm asking to understand this better, cause I have to adapt the gitignore structure to this."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1241182","html_url":"https://github.com/openframeworks/openFrameworks/commit/021b51b4a394f745adfc119e7f0b66073046550c#commitcomment-1241182","id":1241182,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":5,"line":28,"path":"libs/openFrameworks/.project","commit_id":"021b51b4a394f745adfc119e7f0b66073046550c","created_at":"2012-04-22T19:29:48Z","updated_at":"2012-04-22T19:29:48Z","body":"@arturoc: ah nice, I noticed this recently. is the correct handling of this on 32bit systems managed in the Makefile?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1251213","html_url":"https://github.com/openframeworks/openFrameworks/commit/0d85b22003e96111a0bdd5e53a901b018174b231#commitcomment-1251213","id":1251213,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"0d85b22003e96111a0bdd5e53a901b018174b231","created_at":"2012-04-24T17:10:22Z","updated_at":"2012-04-24T17:10:22Z","body":"this is not ready yet, i'm still working on android, i fixed emptyExample but everything else is still not updated to ndk r7\r\n\r\nthe PG doesn't work for android yet, apart from the makefiles there's lots of other project files that i need to put in a template, so i think by now i'll leave it like it is and just update all the examples manually"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1251324","html_url":"https://github.com/openframeworks/openFrameworks/commit/0d85b22003e96111a0bdd5e53a901b018174b231#commitcomment-1251324","id":1251324,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"0d85b22003e96111a0bdd5e53a901b018174b231","created_at":"2012-04-24T17:37:43Z","updated_at":"2012-04-24T17:37:51Z","body":"OK, then I'll leave the config.make and Makefile in the android examples in for now, and we can adapt the gitignore rules later when this is finished, right?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1251367","html_url":"https://github.com/openframeworks/openFrameworks/commit/c0fb5ffc958e1be1bfdfc775c753c1d3cd8f9200#commitcomment-1251367","id":1251367,"user":{"login":"shotgunninja","id":1672033,"avatar_url":"https://secure.gravatar.com/avatar/af5f0b031000821a8c179733db0a2f9e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"af5f0b031000821a8c179733db0a2f9e","url":"https://api.github.com/users/shotgunninja","html_url":"https://github.com/shotgunninja","followers_url":"https://api.github.com/users/shotgunninja/followers","following_url":"https://api.github.com/users/shotgunninja/following{/other_user}","gists_url":"https://api.github.com/users/shotgunninja/gists{/gist_id}","starred_url":"https://api.github.com/users/shotgunninja/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shotgunninja/subscriptions","organizations_url":"https://api.github.com/users/shotgunninja/orgs","repos_url":"https://api.github.com/users/shotgunninja/repos","events_url":"https://api.github.com/users/shotgunninja/events{/privacy}","received_events_url":"https://api.github.com/users/shotgunninja/received_events","type":"User"},"position":686,"line":626,"path":"addons/ofxXmlSettings/src/ofxXmlSettings.cpp","commit_id":"c0fb5ffc958e1be1bfdfc775c753c1d3cd8f9200","created_at":"2012-04-24T17:52:21Z","updated_at":"2012-04-24T17:52:21Z","body":"I was in high school when I wrote this function... wow."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1283131","html_url":"https://github.com/openframeworks/openFrameworks/commit/740c6822395f8bdfa86edf8a42e659e0f33604d3#commitcomment-1283131","id":1283131,"user":{"login":"nardove","id":277690,"avatar_url":"https://secure.gravatar.com/avatar/8022cb5f529975afbc64cc9312008d8c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8022cb5f529975afbc64cc9312008d8c","url":"https://api.github.com/users/nardove","html_url":"https://github.com/nardove","followers_url":"https://api.github.com/users/nardove/followers","following_url":"https://api.github.com/users/nardove/following{/other_user}","gists_url":"https://api.github.com/users/nardove/gists{/gist_id}","starred_url":"https://api.github.com/users/nardove/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nardove/subscriptions","organizations_url":"https://api.github.com/users/nardove/orgs","repos_url":"https://api.github.com/users/nardove/repos","events_url":"https://api.github.com/users/nardove/events{/privacy}","received_events_url":"https://api.github.com/users/nardove/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"740c6822395f8bdfa86edf8a42e659e0f33604d3","created_at":"2012-05-02T15:43:18Z","updated_at":"2012-05-02T15:43:18Z","body":"Another interesting update to this method in the same threat http://forum.openframeworks.cc/index.php/topic,6092.15.html"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1289220","html_url":"https://github.com/openframeworks/openFrameworks/commit/fcdb399dd681ebd3d702143da27eb2dd6e72132b#commitcomment-1289220","id":1289220,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":27,"line":33,"path":"scripts/dev/create_package.sh","commit_id":"fcdb399dd681ebd3d702143da27eb2dd6e72132b","created_at":"2012-05-03T19:27:19Z","updated_at":"2012-05-03T19:27:19Z","body":"those changes can't be right..."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1346329","html_url":"https://github.com/openframeworks/openFrameworks/commit/1d9edca442a3ca4778ede911d59fa78158c105da#commitcomment-1346329","id":1346329,"user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following{/other_user}","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"1d9edca442a3ca4778ede911d59fa78158c105da","created_at":"2012-05-18T03:39:52Z","updated_at":"2012-05-18T03:39:52Z","body":"@ofTheo \nwow, its amazing that you worked this out.\ni was banging my head against the wall with this issue at one point.\nhow did you know where to start?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1346338","html_url":"https://github.com/openframeworks/openFrameworks/commit/591c052a7c4583d8ea86c691074997bdfb944bb3#commitcomment-1346338","id":1346338,"user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following{/other_user}","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"591c052a7c4583d8ea86c691074997bdfb944bb3","created_at":"2012-05-18T03:47:30Z","updated_at":"2012-05-18T03:47:30Z","body":"nice, this solved all iOS Default.png and Icon.png gitignore issues."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1346980","html_url":"https://github.com/openframeworks/openFrameworks/commit/591c052a7c4583d8ea86c691074997bdfb944bb3#commitcomment-1346980","id":1346980,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"591c052a7c4583d8ea86c691074997bdfb944bb3","created_at":"2012-05-18T08:30:34Z","updated_at":"2012-05-18T08:30:34Z","body":"thanks. yeah, that was the idea."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1352895","html_url":"https://github.com/openframeworks/openFrameworks/commit/1d9edca442a3ca4778ede911d59fa78158c105da#commitcomment-1352895","id":1352895,"user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"1d9edca442a3ca4778ede911d59fa78158c105da","created_at":"2012-05-20T20:34:18Z","updated_at":"2012-05-20T20:34:18Z","body":"oh well that header file just looked really weird with the extern c and the strange #defines\r\nI figured since llvm is quite a new compiler maybe it was choking on some of that weirdness :) \r\n\r\nit was a lucky guess! "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1353632","html_url":"https://github.com/openframeworks/openFrameworks/commit/1d9edca442a3ca4778ede911d59fa78158c105da#commitcomment-1353632","id":1353632,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"1d9edca442a3ca4778ede911d59fa78158c105da","created_at":"2012-05-21T06:55:20Z","updated_at":"2012-05-21T06:55:20Z","body":"Did you send a bug report/comment upstream or something? Cause otherwise, we are gonna have to fix this again with the next version of assimp."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1381478","html_url":"https://github.com/openframeworks/openFrameworks/commit/dd4ba068dcf1c7ab7ae904e33f85faa44ccc5e7c#commitcomment-1381478","id":1381478,"user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"dd4ba068dcf1c7ab7ae904e33f85faa44ccc5e7c","created_at":"2012-05-27T14:24:02Z","updated_at":"2012-05-27T14:24:02Z","body":"hey arturo I already fixed this two commits before ;) \nI think my fix for the #define might be a bit better as it defines it if its not currently defined"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1381483","html_url":"https://github.com/openframeworks/openFrameworks/commit/dd4ba068dcf1c7ab7ae904e33f85faa44ccc5e7c#commitcomment-1381483","id":1381483,"user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"dd4ba068dcf1c7ab7ae904e33f85faa44ccc5e7c","created_at":"2012-05-27T14:24:28Z","updated_at":"2012-05-27T14:24:28Z","body":"https://github.com/openframeworks/openFrameworks/commit/522a74993a264f8e42c54884dccd6901d36e0b34"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1381506","html_url":"https://github.com/openframeworks/openFrameworks/commit/b950e7a0efcaf4f715095685b79129ee63af557f#commitcomment-1381506","id":1381506,"user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"b950e7a0efcaf4f715095685b79129ee63af557f","created_at":"2012-05-27T14:28:50Z","updated_at":"2012-05-27T14:28:50Z","body":"oh nevermind :) \nI see you merged it in. I was wondering how that would work. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1384843","html_url":"https://github.com/openframeworks/openFrameworks/commit/b950e7a0efcaf4f715095685b79129ee63af557f#commitcomment-1384843","id":1384843,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"b950e7a0efcaf4f715095685b79129ee63af557f","created_at":"2012-05-28T19:22:26Z","updated_at":"2012-05-28T19:22:26Z","body":"yes i fixed it but only realized after trying to push the change, so i \r\njust merged it :)\r\n\r\nEl 27/05/12 16:28, Theodore Watson escribió:\r\n> oh nevermind :)\r\n> I see you merged it in. I was wondering how that would work.\r\n>\r\n> ---\r\n> Reply to this email directly or view it on GitHub:\r\n> https://github.com/openframeworks/openFrameworks/commit/b950e7a0efcaf4f715095685b79129ee63af557f#commitcomment-1381506"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1384863","html_url":"https://github.com/openframeworks/openFrameworks/commit/f975207d1fdc8faa3b06e877e4a39e5b48651c41#commitcomment-1384863","id":1384863,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"f975207d1fdc8faa3b06e877e4a39e5b48651c41","created_at":"2012-05-28T19:26:40Z","updated_at":"2012-05-28T19:26:40Z","body":"I don't know what's going on here, but this had already been fixed by Theo in e381df2bceef9556499fcdd3d039e16513199c26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1419303","html_url":"https://github.com/openframeworks/openFrameworks/commit/751c209f25d70a81567f5d0746f3d893de8882ea#commitcomment-1419303","id":1419303,"user":{"login":"sloopidoopi","id":248498,"avatar_url":"https://secure.gravatar.com/avatar/69d034865cb1f775bb1e0b47ff0580b2?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"69d034865cb1f775bb1e0b47ff0580b2","url":"https://api.github.com/users/sloopidoopi","html_url":"https://github.com/sloopidoopi","followers_url":"https://api.github.com/users/sloopidoopi/followers","following_url":"https://api.github.com/users/sloopidoopi/following{/other_user}","gists_url":"https://api.github.com/users/sloopidoopi/gists{/gist_id}","starred_url":"https://api.github.com/users/sloopidoopi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sloopidoopi/subscriptions","organizations_url":"https://api.github.com/users/sloopidoopi/orgs","repos_url":"https://api.github.com/users/sloopidoopi/repos","events_url":"https://api.github.com/users/sloopidoopi/events{/privacy}","received_events_url":"https://api.github.com/users/sloopidoopi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"751c209f25d70a81567f5d0746f3d893de8882ea","created_at":"2012-06-05T20:12:27Z","updated_at":"2012-06-05T20:12:27Z","body":"The commit seems to be not in the master/develop branch of 0071."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1421151","html_url":"https://github.com/openframeworks/openFrameworks/commit/751c209f25d70a81567f5d0746f3d893de8882ea#commitcomment-1421151","id":1421151,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"751c209f25d70a81567f5d0746f3d893de8882ea","created_at":"2012-06-06T05:30:44Z","updated_at":"2012-06-06T05:30:44Z","body":"yes it is, in both. you can check this with `git branch --contains `."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1421159","html_url":"https://github.com/openframeworks/openFrameworks/commit/7709a23aef3bea47da65aa661b157f414522b4dc#commitcomment-1421159","id":1421159,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"7709a23aef3bea47da65aa661b157f414522b4dc","created_at":"2012-06-06T05:35:04Z","updated_at":"2012-06-06T05:35:04Z","body":"hi! what was the reason why you reverted the fix in ce9b22e038ca16b581a16722436327bef206cbdf with this commit, @gameoverhack? See also #559"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1421163","html_url":"https://github.com/openframeworks/openFrameworks/commit/751c209f25d70a81567f5d0746f3d893de8882ea#commitcomment-1421163","id":1421163,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"751c209f25d70a81567f5d0746f3d893de8882ea","created_at":"2012-06-06T05:36:32Z","updated_at":"2012-06-06T05:36:32Z","body":"It only was reverted later down the line, in 7709a23aef3bea47da65aa661b157f414522b4dc. Are you experiencing problems? If yes, please submit a bug report with all the necessary info, it's easier to track than a commit comment. :-)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1421230","html_url":"https://github.com/openframeworks/openFrameworks/commit/7709a23aef3bea47da65aa661b157f414522b4dc#commitcomment-1421230","id":1421230,"user":{"login":"gameoverhack","id":331599,"avatar_url":"https://secure.gravatar.com/avatar/397ac2141aace0681a354185e7efb0f1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"397ac2141aace0681a354185e7efb0f1","url":"https://api.github.com/users/gameoverhack","html_url":"https://github.com/gameoverhack","followers_url":"https://api.github.com/users/gameoverhack/followers","following_url":"https://api.github.com/users/gameoverhack/following{/other_user}","gists_url":"https://api.github.com/users/gameoverhack/gists{/gist_id}","starred_url":"https://api.github.com/users/gameoverhack/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gameoverhack/subscriptions","organizations_url":"https://api.github.com/users/gameoverhack/orgs","repos_url":"https://api.github.com/users/gameoverhack/repos","events_url":"https://api.github.com/users/gameoverhack/events{/privacy}","received_events_url":"https://api.github.com/users/gameoverhack/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"7709a23aef3bea47da65aa661b157f414522b4dc","created_at":"2012-06-06T06:11:41Z","updated_at":"2012-06-06T06:11:41Z","body":"Because it was actually breaking compile in either CB or VS (I forget which, but I assume VS) -> did it while trying to get all examples to compile on Windows when we started on the windows PG...I don't remember now which it was, but VS 2010 was choking on a redef or wasn't defined...\n\nWhy is there a problem with it now?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1421353","html_url":"https://github.com/openframeworks/openFrameworks/commit/7709a23aef3bea47da65aa661b157f414522b4dc#commitcomment-1421353","id":1421353,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"7709a23aef3bea47da65aa661b157f414522b4dc","created_at":"2012-06-06T07:18:37Z","updated_at":"2012-06-06T07:19:34Z","body":"strange, cause the way it was designed in the first place should have made VS2010 work (fixing a redef problem in VS2010).\nDon't know yet if there's a problem, but I assume so, cause someone asked in the commit introducing this change why it's not in master/develop: 751c209f25d70a81567f5d0746f3d893de8882"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1450592","html_url":"https://github.com/openframeworks/openFrameworks/commit/d6148a48f16f25fa2a346ba7b9d36d8b422a41e0#commitcomment-1450592","id":1450592,"user":{"login":"swarooppal1088","id":1404897,"avatar_url":"https://secure.gravatar.com/avatar/7e80cd711da671dd88b3a49507275866?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"7e80cd711da671dd88b3a49507275866","url":"https://api.github.com/users/swarooppal1088","html_url":"https://github.com/swarooppal1088","followers_url":"https://api.github.com/users/swarooppal1088/followers","following_url":"https://api.github.com/users/swarooppal1088/following{/other_user}","gists_url":"https://api.github.com/users/swarooppal1088/gists{/gist_id}","starred_url":"https://api.github.com/users/swarooppal1088/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/swarooppal1088/subscriptions","organizations_url":"https://api.github.com/users/swarooppal1088/orgs","repos_url":"https://api.github.com/users/swarooppal1088/repos","events_url":"https://api.github.com/users/swarooppal1088/events{/privacy}","received_events_url":"https://api.github.com/users/swarooppal1088/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"d6148a48f16f25fa2a346ba7b9d36d8b422a41e0","created_at":"2012-06-13T02:58:13Z","updated_at":"2012-06-13T02:58:13Z","body":"hey i cloned OF using git clone https://github.com/openframeworks/openFrameworks.git the root is missing the projectgenerator as mentioned in the readme's how do i build all the projects and dere are no makefiles in the examples"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1451083","html_url":"https://github.com/openframeworks/openFrameworks/commit/d6148a48f16f25fa2a346ba7b9d36d8b422a41e0#commitcomment-1451083","id":1451083,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"d6148a48f16f25fa2a346ba7b9d36d8b422a41e0","created_at":"2012-06-13T07:00:40Z","updated_at":"2012-06-13T07:00:40Z","body":"hey! please take such questions to the forums, it is a more appropriate place. To answer a bit, though: the project generator is in /apps/devApps/projectGenerator. you generate the example project files and make files by using the project generator. With the rest I can't help you without knowing your IDE and OS. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1542133","html_url":"https://github.com/openframeworks/openFrameworks/commit/354570bd8d6dd96562fa24bbe85aab913372130e#commitcomment-1542133","id":1542133,"user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following{/other_user}","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"position":7,"line":26,"path":"libs/openFrameworks/3d/of3dUtils.cpp","commit_id":"354570bd8d6dd96562fa24bbe85aab913372130e","created_at":"2012-07-05T14:40:57Z","updated_at":"2012-07-05T14:40:57Z","body":"@ofTheo :(\nreally?\nthis removes the feature of being able to change the style of the grid (e.g. before you could make a white grid if you liked, or change the S,B values of the colour yourself, with this change, it's now completely fixed."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1580965","html_url":"https://github.com/openframeworks/openFrameworks/commit/5ada18cb213ef9f876ddb143b2e4bd0cc9318e1c#commitcomment-1580965","id":1580965,"user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following{/other_user}","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"5ada18cb213ef9f876ddb143b2e4bd0cc9318e1c","created_at":"2012-07-14T09:12:04Z","updated_at":"2012-07-14T09:12:04Z","body":"Oh great, thanks! I ran into an issue yesterday where passing the name of a button as a string& got me in trouble as I was modifying the vale of the argument in the callback, took me forever to fix."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1580967","html_url":"https://github.com/openframeworks/openFrameworks/commit/5ada18cb213ef9f876ddb143b2e4bd0cc9318e1c#commitcomment-1580967","id":1580967,"user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following{/other_user}","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"5ada18cb213ef9f876ddb143b2e4bd0cc9318e1c","created_at":"2012-07-14T09:13:12Z","updated_at":"2012-07-14T09:13:12Z","body":"s/vale/value s/'forever to fix\"/\"forever to debug\"/"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1623259","html_url":"https://github.com/openframeworks/openFrameworks/commit/c6a00e66e69ed6af630bac98108cd020cf3030d6#commitcomment-1623259","id":1623259,"user":{"login":"jvcleave","id":150037,"avatar_url":"https://secure.gravatar.com/avatar/9c0384a91739bea093f453cf40a59742?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"9c0384a91739bea093f453cf40a59742","url":"https://api.github.com/users/jvcleave","html_url":"https://github.com/jvcleave","followers_url":"https://api.github.com/users/jvcleave/followers","following_url":"https://api.github.com/users/jvcleave/following{/other_user}","gists_url":"https://api.github.com/users/jvcleave/gists{/gist_id}","starred_url":"https://api.github.com/users/jvcleave/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jvcleave/subscriptions","organizations_url":"https://api.github.com/users/jvcleave/orgs","repos_url":"https://api.github.com/users/jvcleave/repos","events_url":"https://api.github.com/users/jvcleave/events{/privacy}","received_events_url":"https://api.github.com/users/jvcleave/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"c6a00e66e69ed6af630bac98108cd020cf3030d6","created_at":"2012-07-24T18:35:01Z","updated_at":"2012-07-24T18:35:01Z","body":"just so you are aware - the commented documentation just above waitForThread references the old stopThread(bool) method"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1648277","html_url":"https://github.com/openframeworks/openFrameworks/commit/7709a23aef3bea47da65aa661b157f414522b4dc#commitcomment-1648277","id":1648277,"user":{"login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","html_url":"https://github.com/danomatika","followers_url":"https://api.github.com/users/danomatika/followers","following_url":"https://api.github.com/users/danomatika/following{/other_user}","gists_url":"https://api.github.com/users/danomatika/gists{/gist_id}","starred_url":"https://api.github.com/users/danomatika/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danomatika/subscriptions","organizations_url":"https://api.github.com/users/danomatika/orgs","repos_url":"https://api.github.com/users/danomatika/repos","events_url":"https://api.github.com/users/danomatika/events{/privacy}","received_events_url":"https://api.github.com/users/danomatika/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"7709a23aef3bea47da65aa661b157f414522b4dc","created_at":"2012-07-30T18:31:16Z","updated_at":"2012-07-30T18:31:16Z","body":"This is strange also since it was working fine with VS and CB when I made the change. :P"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1648418","html_url":"https://github.com/openframeworks/openFrameworks/commit/7709a23aef3bea47da65aa661b157f414522b4dc#commitcomment-1648418","id":1648418,"user":{"login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","html_url":"https://github.com/danomatika","followers_url":"https://api.github.com/users/danomatika/followers","following_url":"https://api.github.com/users/danomatika/following{/other_user}","gists_url":"https://api.github.com/users/danomatika/gists{/gist_id}","starred_url":"https://api.github.com/users/danomatika/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danomatika/subscriptions","organizations_url":"https://api.github.com/users/danomatika/orgs","repos_url":"https://api.github.com/users/danomatika/repos","events_url":"https://api.github.com/users/danomatika/events{/privacy}","received_events_url":"https://api.github.com/users/danomatika/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"7709a23aef3bea47da65aa661b157f414522b4dc","created_at":"2012-07-30T18:55:30Z","updated_at":"2012-07-30T18:55:30Z","body":".. but now testing this version, it works fine for me in both VS2010 and Win CB ... weird."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1648465","html_url":"https://github.com/openframeworks/openFrameworks/commit/7709a23aef3bea47da65aa661b157f414522b4dc#commitcomment-1648465","id":1648465,"user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following{/other_user}","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"7709a23aef3bea47da65aa661b157f414522b4dc","created_at":"2012-07-30T19:06:14Z","updated_at":"2012-07-30T19:06:14Z","body":"in vs2010 you should use stdint, not a typedef for int32_t, etc"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1648472","html_url":"https://github.com/openframeworks/openFrameworks/commit/7709a23aef3bea47da65aa661b157f414522b4dc#commitcomment-1648472","id":1648472,"user":{"login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","html_url":"https://github.com/danomatika","followers_url":"https://api.github.com/users/danomatika/followers","following_url":"https://api.github.com/users/danomatika/following{/other_user}","gists_url":"https://api.github.com/users/danomatika/gists{/gist_id}","starred_url":"https://api.github.com/users/danomatika/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danomatika/subscriptions","organizations_url":"https://api.github.com/users/danomatika/orgs","repos_url":"https://api.github.com/users/danomatika/repos","events_url":"https://api.github.com/users/danomatika/events{/privacy}","received_events_url":"https://api.github.com/users/danomatika/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"7709a23aef3bea47da65aa661b157f414522b4dc","created_at":"2012-07-30T19:07:22Z","updated_at":"2012-07-30T19:07:22Z","body":"stdint wasn't available before vs2010."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1648522","html_url":"https://github.com/openframeworks/openFrameworks/commit/7709a23aef3bea47da65aa661b157f414522b4dc#commitcomment-1648522","id":1648522,"user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following{/other_user}","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"7709a23aef3bea47da65aa661b157f414522b4dc","created_at":"2012-07-30T19:20:15Z","updated_at":"2012-07-30T19:20:15Z","body":"exactly! :)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1672820","html_url":"https://github.com/openframeworks/openFrameworks/commit/6ac467ad637f79140bb7692d5c2a559771da2049#commitcomment-1672820","id":1672820,"user":{"login":"gameoverhack","id":331599,"avatar_url":"https://secure.gravatar.com/avatar/397ac2141aace0681a354185e7efb0f1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"397ac2141aace0681a354185e7efb0f1","url":"https://api.github.com/users/gameoverhack","html_url":"https://github.com/gameoverhack","followers_url":"https://api.github.com/users/gameoverhack/followers","following_url":"https://api.github.com/users/gameoverhack/following{/other_user}","gists_url":"https://api.github.com/users/gameoverhack/gists{/gist_id}","starred_url":"https://api.github.com/users/gameoverhack/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gameoverhack/subscriptions","organizations_url":"https://api.github.com/users/gameoverhack/orgs","repos_url":"https://api.github.com/users/gameoverhack/repos","events_url":"https://api.github.com/users/gameoverhack/events{/privacy}","received_events_url":"https://api.github.com/users/gameoverhack/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"6ac467ad637f79140bb7692d5c2a559771da2049","created_at":"2012-08-05T17:28:31Z","updated_at":"2012-08-05T17:28:31Z","body":"on windows we need to #include for FLT_EPSILON to be defined"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1672829","html_url":"https://github.com/openframeworks/openFrameworks/commit/6ac467ad637f79140bb7692d5c2a559771da2049#commitcomment-1672829","id":1672829,"user":{"login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following{/other_user}","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"6ac467ad637f79140bb7692d5c2a559771da2049","created_at":"2012-08-05T17:30:11Z","updated_at":"2012-08-05T17:30:11Z","body":"actually we should `#include ` but yes."}] + +https +GET +api.github.com +None +/repositories/345337/comments?per_page=100&page=3 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4874'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '160904'), ('server', 'GitHub.com'), ('last-modified', 'Wed, 19 Jun 2013 10:28:42 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"a3e035a1aeb9a4a31629a5537db4a857"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 19 Jun 2013 10:31:33 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1672832","html_url":"https://github.com/openframeworks/openFrameworks/commit/6ac467ad637f79140bb7692d5c2a559771da2049#commitcomment-1672832","id":1672832,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"6ac467ad637f79140bb7692d5c2a559771da2049","created_at":"2012-08-05T17:31:46Z","updated_at":"2012-08-05T17:31:46Z","body":"do you wanna fix that immediately or open an issue?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1673022","html_url":"https://github.com/openframeworks/openFrameworks/commit/6ac467ad637f79140bb7692d5c2a559771da2049#commitcomment-1673022","id":1673022,"user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"6ac467ad637f79140bb7692d5c2a559771da2049","created_at":"2012-08-05T19:29:14Z","updated_at":"2012-08-05T19:29:14Z","body":"@bilderbuchi already fixed with: https://github.com/openframeworks/openFrameworks/commit/0a8815e65a5c1c27be956286730f5e8b8fa21689"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1673051","html_url":"https://github.com/openframeworks/openFrameworks/commit/cde2170b9424b62d31e2bb1b9968241698875441#commitcomment-1673051","id":1673051,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"cde2170b9424b62d31e2bb1b9968241698875441","created_at":"2012-08-05T19:48:37Z","updated_at":"2012-08-05T19:48:37Z","body":"@benben will be happy to see this! thanks :-)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1673101","html_url":"https://github.com/openframeworks/openFrameworks/commit/0a8815e65a5c1c27be956286730f5e8b8fa21689#commitcomment-1673101","id":1673101,"user":{"login":"bakercp","id":300484,"avatar_url":"https://secure.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","url":"https://api.github.com/users/bakercp","html_url":"https://github.com/bakercp","followers_url":"https://api.github.com/users/bakercp/followers","following_url":"https://api.github.com/users/bakercp/following{/other_user}","gists_url":"https://api.github.com/users/bakercp/gists{/gist_id}","starred_url":"https://api.github.com/users/bakercp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bakercp/subscriptions","organizations_url":"https://api.github.com/users/bakercp/orgs","repos_url":"https://api.github.com/users/bakercp/repos","events_url":"https://api.github.com/users/bakercp/events{/privacy}","received_events_url":"https://api.github.com/users/bakercp/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"0a8815e65a5c1c27be956286730f5e8b8fa21689","created_at":"2012-08-05T20:20:10Z","updated_at":"2012-08-05T20:20:10Z","body":"Nice. Thanks."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1673122","html_url":"https://github.com/openframeworks/openFrameworks/commit/0a8815e65a5c1c27be956286730f5e8b8fa21689#commitcomment-1673122","id":1673122,"user":{"login":"bakercp","id":300484,"avatar_url":"https://secure.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","url":"https://api.github.com/users/bakercp","html_url":"https://github.com/bakercp","followers_url":"https://api.github.com/users/bakercp/followers","following_url":"https://api.github.com/users/bakercp/following{/other_user}","gists_url":"https://api.github.com/users/bakercp/gists{/gist_id}","starred_url":"https://api.github.com/users/bakercp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bakercp/subscriptions","organizations_url":"https://api.github.com/users/bakercp/orgs","repos_url":"https://api.github.com/users/bakercp/repos","events_url":"https://api.github.com/users/bakercp/events{/privacy}","received_events_url":"https://api.github.com/users/bakercp/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"0a8815e65a5c1c27be956286730f5e8b8fa21689","created_at":"2012-08-05T20:28:04Z","updated_at":"2012-08-05T20:28:04Z","body":"Out of curiosity -- would this affect ofMap with ios? It too uses the same epsilon value and only includes \"float.h\" in the implementation file."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1675259","html_url":"https://github.com/openframeworks/openFrameworks/commit/918b8b9a9e27fe1289d5ccd8162094eec41e468f#commitcomment-1675259","id":1675259,"user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following{/other_user}","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"position":24,"line":404,"path":"libs/openFrameworks/graphics/ofPolyline.cpp","commit_id":"918b8b9a9e27fe1289d5ccd8162094eec41e468f","created_at":"2012-08-06T13:13:15Z","updated_at":"2012-08-06T13:13:15Z","body":"hi @kylemcdonald,\nthis line is causing issues with my existing code.\njust wondering why the function has changed to const?\ncan't seem to find an easy way of getting the bounding box without getting compiler errors..."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1675305","html_url":"https://github.com/openframeworks/openFrameworks/commit/918b8b9a9e27fe1289d5ccd8162094eec41e468f#commitcomment-1675305","id":1675305,"user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following{/other_user}","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"position":24,"line":404,"path":"libs/openFrameworks/graphics/ofPolyline.cpp","commit_id":"918b8b9a9e27fe1289d5ccd8162094eec41e468f","created_at":"2012-08-06T13:22:47Z","updated_at":"2012-08-06T13:22:47Z","body":"sorry, please ignore this comment.\ncompiler was stuck... rebuilding OF fixed it."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1686925","html_url":"https://github.com/openframeworks/openFrameworks/commit/3c31bbf76f40213e7bbad8b1c42a2d2e07f8eac5#commitcomment-1686925","id":1686925,"user":{"login":"gameoverhack","id":331599,"avatar_url":"https://secure.gravatar.com/avatar/397ac2141aace0681a354185e7efb0f1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"397ac2141aace0681a354185e7efb0f1","url":"https://api.github.com/users/gameoverhack","html_url":"https://github.com/gameoverhack","followers_url":"https://api.github.com/users/gameoverhack/followers","following_url":"https://api.github.com/users/gameoverhack/following{/other_user}","gists_url":"https://api.github.com/users/gameoverhack/gists{/gist_id}","starred_url":"https://api.github.com/users/gameoverhack/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gameoverhack/subscriptions","organizations_url":"https://api.github.com/users/gameoverhack/orgs","repos_url":"https://api.github.com/users/gameoverhack/repos","events_url":"https://api.github.com/users/gameoverhack/events{/privacy}","received_events_url":"https://api.github.com/users/gameoverhack/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"3c31bbf76f40213e7bbad8b1c42a2d2e07f8eac5","created_at":"2012-08-08T14:02:09Z","updated_at":"2012-08-08T14:02:09Z","body":"@arturoc ofBuffer & operator=(const string & text); needs to return an ofBuffer"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1686959","html_url":"https://github.com/openframeworks/openFrameworks/commit/3c31bbf76f40213e7bbad8b1c42a2d2e07f8eac5#commitcomment-1686959","id":1686959,"user":{"login":"gameoverhack","id":331599,"avatar_url":"https://secure.gravatar.com/avatar/397ac2141aace0681a354185e7efb0f1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"397ac2141aace0681a354185e7efb0f1","url":"https://api.github.com/users/gameoverhack","html_url":"https://github.com/gameoverhack","followers_url":"https://api.github.com/users/gameoverhack/followers","following_url":"https://api.github.com/users/gameoverhack/following{/other_user}","gists_url":"https://api.github.com/users/gameoverhack/gists{/gist_id}","starred_url":"https://api.github.com/users/gameoverhack/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gameoverhack/subscriptions","organizations_url":"https://api.github.com/users/gameoverhack/orgs","repos_url":"https://api.github.com/users/gameoverhack/repos","events_url":"https://api.github.com/users/gameoverhack/events{/privacy}","received_events_url":"https://api.github.com/users/gameoverhack/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"3c31bbf76f40213e7bbad8b1c42a2d2e07f8eac5","created_at":"2012-08-08T14:08:30Z","updated_at":"2012-08-08T14:08:30Z","body":"is it ok for me to just fix these little bugs directly and make a commit on develop?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1686998","html_url":"https://github.com/openframeworks/openFrameworks/commit/3c31bbf76f40213e7bbad8b1c42a2d2e07f8eac5#commitcomment-1686998","id":1686998,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"3c31bbf76f40213e7bbad8b1c42a2d2e07f8eac5","created_at":"2012-08-08T14:16:13Z","updated_at":"2012-08-08T14:16:13Z","body":"thanks, it's fixed now. i think as long as it is something so obvious/small as this it is ok, in case of doubt better to ask in a comment like this"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1794298","html_url":"https://github.com/openframeworks/openFrameworks/commit/a0fb4ac19525659f7ea41af0d3ab5dcb088c0e21#commitcomment-1794298","id":1794298,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":56,"line":109,"path":"libs/openFrameworks/video/ofVideoGrabber.cpp","commit_id":"a0fb4ac19525659f7ea41af0d3ab5dcb088c0e21","created_at":"2012-08-31T15:55:57Z","updated_at":"2012-08-31T15:55:57Z","body":"isn't the logic wonky here? `if grabber==NULL then return true` shouldn't that return false?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1794380","html_url":"https://github.com/openframeworks/openFrameworks/commit/a0fb4ac19525659f7ea41af0d3ab5dcb088c0e21#commitcomment-1794380","id":1794380,"user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"position":56,"line":109,"path":"libs/openFrameworks/video/ofVideoGrabber.cpp","commit_id":"a0fb4ac19525659f7ea41af0d3ab5dcb088c0e21","created_at":"2012-08-31T16:15:22Z","updated_at":"2012-08-31T16:15:22Z","body":"You can set the pixelFormat before the grabber exists, so setting the format was successful. \nHowever it might be that when the grabber is set it doesn't support that format, but that should be handled later. \n\nI see what you mean - it does seem wonky but it is intentional. \nI'll double check it though! "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1794515","html_url":"https://github.com/openframeworks/openFrameworks/commit/a0fb4ac19525659f7ea41af0d3ab5dcb088c0e21#commitcomment-1794515","id":1794515,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":56,"line":109,"path":"libs/openFrameworks/video/ofVideoGrabber.cpp","commit_id":"a0fb4ac19525659f7ea41af0d3ab5dcb088c0e21","created_at":"2012-08-31T16:40:31Z","updated_at":"2012-08-31T16:41:01Z","body":"OK, thanks. :-)\nI guess I just prefer putting everything into the if/else cases instead of relying on tricky fall-throughs or ifs without elses - I think it makes the logic structure clearer. E.g. (if I understand the desired result correctly) I would put L96 into an else of the `if(grabber!=NULL)` statement. Then you'll probably need L96 once more (and a return true) in an else of `if(!grabber->setPixelFormat()`, but the logical tree would be more clear imo. As a benefit, you wouldn't set `internalPixelFormat` twice (I know that op is probably not very expensive, but still...)."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1794625","html_url":"https://github.com/openframeworks/openFrameworks/commit/f24a98175c0a5814383c11686a5143a310089ab0#commitcomment-1794625","id":1794625,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":4,"line":68,"path":"libs/openFrameworks/gl/ofTexture.h","commit_id":"f24a98175c0a5814383c11686a5143a310089ab0","created_at":"2012-08-31T17:05:13Z","updated_at":"2012-08-31T17:06:30Z","body":"@ofTheo isn't `bExternalTextureID` a strange name? I would expect this to contain a Texture ID, not a boolean (if not for the `b` prefix). Maybe `bUseExternalTextureID` would be better?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1864693","html_url":"https://github.com/openframeworks/openFrameworks/commit/7318035cf93447fd09e19fe92baac744dd3e048d#commitcomment-1864693","id":1864693,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"7318035cf93447fd09e19fe92baac744dd3e048d","created_at":"2012-09-17T16:15:36Z","updated_at":"2012-09-17T16:15:47Z","body":"@arturoc: If you multiply-include `gst.h`, wouldn't it be good to add some include guards, so that we don't include it several times, driving up compilation/linking times?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1904469","html_url":"https://github.com/openframeworks/openFrameworks/commit/33933ef7705f6fdbda602176209498e91b7a7eb5#commitcomment-1904469","id":1904469,"user":{"login":"roymacdonald","id":974878,"avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","url":"https://api.github.com/users/roymacdonald","html_url":"https://github.com/roymacdonald","followers_url":"https://api.github.com/users/roymacdonald/followers","following_url":"https://api.github.com/users/roymacdonald/following{/other_user}","gists_url":"https://api.github.com/users/roymacdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/roymacdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/roymacdonald/subscriptions","organizations_url":"https://api.github.com/users/roymacdonald/orgs","repos_url":"https://api.github.com/users/roymacdonald/repos","events_url":"https://api.github.com/users/roymacdonald/events{/privacy}","received_events_url":"https://api.github.com/users/roymacdonald/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"33933ef7705f6fdbda602176209498e91b7a7eb5","created_at":"2012-09-25T21:21:40Z","updated_at":"2012-09-25T21:21:40Z","body":"this commit is causing trouble with iOS. \nI get error \"use of undeclared identifier\" for GL_DEPTH_COMPONENT32, GL_DEPTH_COMPONENT16, GL_DEPTH_COMPONENT24, GL_DEPTH_COMPONENT\n\nI just commented this lines to make it compile. I'm not sure what would be the correct way to fix this.\n\n\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1904841","html_url":"https://github.com/openframeworks/openFrameworks/commit/33933ef7705f6fdbda602176209498e91b7a7eb5#commitcomment-1904841","id":1904841,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"33933ef7705f6fdbda602176209498e91b7a7eb5","created_at":"2012-09-25T22:52:56Z","updated_at":"2012-09-25T22:52:56Z","body":"sorry, it's fixed now"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1905260","html_url":"https://github.com/openframeworks/openFrameworks/commit/fecd4402a5b6641c0f34dd3c0f1a8af6f78a4db5#commitcomment-1905260","id":1905260,"user":{"login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following{/other_user}","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"fecd4402a5b6641c0f34dd3c0f1a8af6f78a4db5","created_at":"2012-09-26T01:00:45Z","updated_at":"2012-09-26T01:00:45Z","body":"my previous commit, from windows, seemed to have bad endings, so I'm fixing here. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1952334","html_url":"https://github.com/openframeworks/openFrameworks/commit/ab0c6cdb8abdf54363145dd7210fb7c75675de0b#commitcomment-1952334","id":1952334,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"ab0c6cdb8abdf54363145dd7210fb7c75675de0b","created_at":"2012-10-05T12:33:53Z","updated_at":"2012-10-05T12:33:53Z","body":"nice catch. never realized/noticed those were there, otherwise I'd have removed them already."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1956940","html_url":"https://github.com/openframeworks/openFrameworks/commit/f85516ba601e7c48e87b81f85bc70259c8e3a05f#commitcomment-1956940","id":1956940,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"f85516ba601e7c48e87b81f85bc70259c8e3a05f","created_at":"2012-10-06T15:54:00Z","updated_at":"2012-10-06T15:55:04Z","body":"@ofTheo was there a mistake? why do we now have `/apps/devApps/projectGenerator` **and** `/apps/projectGenerator/projectGeneratorsSimple`? That looks fishy to me.\r\nShouldn't this be in `/apps/devApps/projectGeneratorSimple`, beside the regular PG?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1959962","html_url":"https://github.com/openframeworks/openFrameworks/commit/6ccf10c80ee5ad6fc90d4f115a3895bd2ae4313f#commitcomment-1959962","id":1959962,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"6ccf10c80ee5ad6fc90d4f115a3895bd2ae4313f","created_at":"2012-10-08T07:34:11Z","updated_at":"2012-10-08T07:34:11Z","body":"Awesome work everyone, it's beautiful!"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1959978","html_url":"https://github.com/openframeworks/openFrameworks/commit/6ccf10c80ee5ad6fc90d4f115a3895bd2ae4313f#commitcomment-1959978","id":1959978,"user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following{/other_user}","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"6ccf10c80ee5ad6fc90d4f115a3895bd2ae4313f","created_at":"2012-10-08T07:39:50Z","updated_at":"2012-10-08T07:39:50Z","body":"very nice!"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1960788","html_url":"https://github.com/openframeworks/openFrameworks/commit/6ccf10c80ee5ad6fc90d4f115a3895bd2ae4313f#commitcomment-1960788","id":1960788,"user":{"login":"mactkg","id":178418,"avatar_url":"https://secure.gravatar.com/avatar/53cf99572b928b1d780d1d816d758710?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"53cf99572b928b1d780d1d816d758710","url":"https://api.github.com/users/mactkg","html_url":"https://github.com/mactkg","followers_url":"https://api.github.com/users/mactkg/followers","following_url":"https://api.github.com/users/mactkg/following{/other_user}","gists_url":"https://api.github.com/users/mactkg/gists{/gist_id}","starred_url":"https://api.github.com/users/mactkg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mactkg/subscriptions","organizations_url":"https://api.github.com/users/mactkg/orgs","repos_url":"https://api.github.com/users/mactkg/repos","events_url":"https://api.github.com/users/mactkg/events{/privacy}","received_events_url":"https://api.github.com/users/mactkg/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"6ccf10c80ee5ad6fc90d4f115a3895bd2ae4313f","created_at":"2012-10-08T10:30:49Z","updated_at":"2012-10-08T10:30:49Z","body":":heart:"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1962717","html_url":"https://github.com/openframeworks/openFrameworks/commit/6ccf10c80ee5ad6fc90d4f115a3895bd2ae4313f#commitcomment-1962717","id":1962717,"user":{"login":"grayfuse","id":115113,"avatar_url":"https://secure.gravatar.com/avatar/ce105802feaa5e39e55a643a259e0070?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"ce105802feaa5e39e55a643a259e0070","url":"https://api.github.com/users/grayfuse","html_url":"https://github.com/grayfuse","followers_url":"https://api.github.com/users/grayfuse/followers","following_url":"https://api.github.com/users/grayfuse/following{/other_user}","gists_url":"https://api.github.com/users/grayfuse/gists{/gist_id}","starred_url":"https://api.github.com/users/grayfuse/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/grayfuse/subscriptions","organizations_url":"https://api.github.com/users/grayfuse/orgs","repos_url":"https://api.github.com/users/grayfuse/repos","events_url":"https://api.github.com/users/grayfuse/events{/privacy}","received_events_url":"https://api.github.com/users/grayfuse/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"6ccf10c80ee5ad6fc90d4f115a3895bd2ae4313f","created_at":"2012-10-08T16:27:35Z","updated_at":"2012-10-08T16:27:35Z","body":"Looking very nice indeed!"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1965887","html_url":"https://github.com/openframeworks/openFrameworks/commit/6ccf10c80ee5ad6fc90d4f115a3895bd2ae4313f#commitcomment-1965887","id":1965887,"user":{"login":"borg","id":203895,"avatar_url":"https://secure.gravatar.com/avatar/46312137eb0583790943eb4c17ea04cc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"46312137eb0583790943eb4c17ea04cc","url":"https://api.github.com/users/borg","html_url":"https://github.com/borg","followers_url":"https://api.github.com/users/borg/followers","following_url":"https://api.github.com/users/borg/following{/other_user}","gists_url":"https://api.github.com/users/borg/gists{/gist_id}","starred_url":"https://api.github.com/users/borg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/borg/subscriptions","organizations_url":"https://api.github.com/users/borg/orgs","repos_url":"https://api.github.com/users/borg/repos","events_url":"https://api.github.com/users/borg/events{/privacy}","received_events_url":"https://api.github.com/users/borg/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"6ccf10c80ee5ad6fc90d4f115a3895bd2ae4313f","created_at":"2012-10-09T06:50:01Z","updated_at":"2012-10-09T06:50:01Z","body":"Early xmas!"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1973901","html_url":"https://github.com/openframeworks/openFrameworks/commit/a9018697bbc35a8fafa8a36ee0a0f36861f87a99#commitcomment-1973901","id":1973901,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":15,"line":67,"path":"scripts/dev/create_package.sh","commit_id":"a9018697bbc35a8fafa8a36ee0a0f36861f87a99","created_at":"2012-10-10T13:11:34Z","updated_at":"2012-10-10T13:11:42Z","body":"@arturoc I think you should `git checkout master` before this line. otherwise, if the user had checked out a different branch, master would be merged into that one."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1973970","html_url":"https://github.com/openframeworks/openFrameworks/commit/a9018697bbc35a8fafa8a36ee0a0f36861f87a99#commitcomment-1973970","id":1973970,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":15,"line":67,"path":"scripts/dev/create_package.sh","commit_id":"a9018697bbc35a8fafa8a36ee0a0f36861f87a99","created_at":"2012-10-10T13:20:23Z","updated_at":"2012-10-10T13:20:23Z","body":"oh, yes thanks"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1975124","html_url":"https://github.com/openframeworks/openFrameworks/commit/05aa5663ef581d449a6b7de986aebde671d1a927#commitcomment-1975124","id":1975124,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"05aa5663ef581d449a6b7de986aebde671d1a927","created_at":"2012-10-10T15:54:59Z","updated_at":"2012-10-10T15:54:59Z","body":"you should not have to do that - this is a read-only link, if you only want to pull you shouldn't need a key!"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1975138","html_url":"https://github.com/openframeworks/openFrameworks/commit/ba732ccd2c7d0a287ef90539b4f6374c5b49e642#commitcomment-1975138","id":1975138,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":5,"line":8,"path":"scripts/dev/create_package.sh","commit_id":"ba732ccd2c7d0a287ef90539b4f6374c5b49e642","created_at":"2012-10-10T15:57:27Z","updated_at":"2012-10-10T16:00:22Z","body":"no .git suffix needed here? cf. the PG-S link 5 lines down."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1975144","html_url":"https://github.com/openframeworks/openFrameworks/commit/05aa5663ef581d449a6b7de986aebde671d1a927#commitcomment-1975144","id":1975144,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"05aa5663ef581d449a6b7de986aebde671d1a927","created_at":"2012-10-10T15:58:21Z","updated_at":"2012-10-10T15:58:21Z","body":"where do you have problems with that link?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1975199","html_url":"https://github.com/openframeworks/openFrameworks/commit/05aa5663ef581d449a6b7de986aebde671d1a927#commitcomment-1975199","id":1975199,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"05aa5663ef581d449a6b7de986aebde671d1a927","created_at":"2012-10-10T16:08:39Z","updated_at":"2012-10-10T16:08:39Z","body":"yes, but if there's a key the server keeps asking for the key password whenever i run the release script so i can't fully automate it unless i switch to https"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1975235","html_url":"https://github.com/openframeworks/openFrameworks/commit/05aa5663ef581d449a6b7de986aebde671d1a927#commitcomment-1975235","id":1975235,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"05aa5663ef581d449a6b7de986aebde671d1a927","created_at":"2012-10-10T16:15:32Z","updated_at":"2012-10-10T16:15:32Z","body":"On my phone currently but apparently ssh-agent is the solution: http://stackoverflow.com/questions/6265595/how-can-i-peform-a-git-pull-without-re-entering-my-ssh-password"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1975241","html_url":"https://github.com/openframeworks/openFrameworks/commit/05aa5663ef581d449a6b7de986aebde671d1a927#commitcomment-1975241","id":1975241,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"05aa5663ef581d449a6b7de986aebde671d1a927","created_at":"2012-10-10T16:17:05Z","updated_at":"2012-10-10T16:17:05Z","body":"Will check later if there's a git way to do that."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1975247","html_url":"https://github.com/openframeworks/openFrameworks/commit/05aa5663ef581d449a6b7de986aebde671d1a927#commitcomment-1975247","id":1975247,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"05aa5663ef581d449a6b7de986aebde671d1a927","created_at":"2012-10-10T16:18:50Z","updated_at":"2012-10-10T16:18:50Z","body":"yes there is but i don't want to enter the password even once since this is going to be run through a cron task"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1975681","html_url":"https://github.com/openframeworks/openFrameworks/commit/05aa5663ef581d449a6b7de986aebde671d1a927#commitcomment-1975681","id":1975681,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"05aa5663ef581d449a6b7de986aebde671d1a927","created_at":"2012-10-10T17:16:55Z","updated_at":"2012-10-10T17:16:55Z","body":"I understand. The only way I found is using an empty passphrase for the key (and then probably it's wisest to use a separate key for the packaging server). I guess it's just less complicated to use https"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1975700","html_url":"https://github.com/openframeworks/openFrameworks/commit/05aa5663ef581d449a6b7de986aebde671d1a927#commitcomment-1975700","id":1975700,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"05aa5663ef581d449a6b7de986aebde671d1a927","created_at":"2012-10-10T17:20:10Z","updated_at":"2012-10-10T17:20:10Z","body":"yes, i actually have a different key for the server but i don't really want to have an empty passphrase and setting it to https shouldn't be any problem for everybody else since that address is only used to update the submodule"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1989081","html_url":"https://github.com/openframeworks/openFrameworks/commit/7709a23aef3bea47da65aa661b157f414522b4dc#commitcomment-1989081","id":1989081,"user":{"login":"jvcleave","id":150037,"avatar_url":"https://secure.gravatar.com/avatar/9c0384a91739bea093f453cf40a59742?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"9c0384a91739bea093f453cf40a59742","url":"https://api.github.com/users/jvcleave","html_url":"https://github.com/jvcleave","followers_url":"https://api.github.com/users/jvcleave/followers","following_url":"https://api.github.com/users/jvcleave/following{/other_user}","gists_url":"https://api.github.com/users/jvcleave/gists{/gist_id}","starred_url":"https://api.github.com/users/jvcleave/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jvcleave/subscriptions","organizations_url":"https://api.github.com/users/jvcleave/orgs","repos_url":"https://api.github.com/users/jvcleave/repos","events_url":"https://api.github.com/users/jvcleave/events{/privacy}","received_events_url":"https://api.github.com/users/jvcleave/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"7709a23aef3bea47da65aa661b157f414522b4dc","created_at":"2012-10-12T19:25:41Z","updated_at":"2012-10-12T19:27:28Z","body":"I am not able to compile the oscSenderExample under Windows 7/VS2010 unless I comment out the line `typedef long int32_t;` in OF/Dev 6f9c02fef3a6d201acb1b0a61e2fc343a376d1c2"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/1989108","html_url":"https://github.com/openframeworks/openFrameworks/commit/7709a23aef3bea47da65aa661b157f414522b4dc#commitcomment-1989108","id":1989108,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"7709a23aef3bea47da65aa661b157f414522b4dc","created_at":"2012-10-12T19:34:47Z","updated_at":"2012-10-12T19:34:47Z","body":"hm this confirms my fears from my second comment. @gameoverhack could you take a look at this?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2028377","html_url":"https://github.com/openframeworks/openFrameworks/commit/c97249ed24126ae9998710940bcf30d1f6673eec#commitcomment-2028377","id":2028377,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":19,"line":13,"path":"scripts/linux/ubuntu/install_dependencies.sh","commit_id":"c97249ed24126ae9998710940bcf30d1f6673eec","created_at":"2012-10-21T08:13:23Z","updated_at":"2012-10-21T08:13:23Z","body":"@arturoc I'm curious, why did you replace `libjack0 libjack-dev` by `libjack-jackd2-dev`?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2028429","html_url":"https://github.com/openframeworks/openFrameworks/commit/c97249ed24126ae9998710940bcf30d1f6673eec#commitcomment-2028429","id":2028429,"user":{"login":"benben","id":124513,"avatar_url":"https://secure.gravatar.com/avatar/6aed6a0dfa09b46d6fbd5149eb56def8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"6aed6a0dfa09b46d6fbd5149eb56def8","url":"https://api.github.com/users/benben","html_url":"https://github.com/benben","followers_url":"https://api.github.com/users/benben/followers","following_url":"https://api.github.com/users/benben/following{/other_user}","gists_url":"https://api.github.com/users/benben/gists{/gist_id}","starred_url":"https://api.github.com/users/benben/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/benben/subscriptions","organizations_url":"https://api.github.com/users/benben/orgs","repos_url":"https://api.github.com/users/benben/repos","events_url":"https://api.github.com/users/benben/events{/privacy}","received_events_url":"https://api.github.com/users/benben/received_events","type":"User"},"position":19,"line":13,"path":"scripts/linux/ubuntu/install_dependencies.sh","commit_id":"c97249ed24126ae9998710940bcf30d1f6673eec","created_at":"2012-10-21T08:57:12Z","updated_at":"2012-10-21T08:57:12Z","body":"I think its #1352"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2028455","html_url":"https://github.com/openframeworks/openFrameworks/commit/c97249ed24126ae9998710940bcf30d1f6673eec#commitcomment-2028455","id":2028455,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":19,"line":13,"path":"scripts/linux/ubuntu/install_dependencies.sh","commit_id":"c97249ed24126ae9998710940bcf30d1f6673eec","created_at":"2012-10-21T09:27:05Z","updated_at":"2012-10-21T09:27:05Z","body":"hm, could be the new portaudio version? But then, why does, e.g., the debian script continue to install `libjack-dev` (not changed in this commit)?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2028642","html_url":"https://github.com/openframeworks/openFrameworks/commit/c97249ed24126ae9998710940bcf30d1f6673eec#commitcomment-2028642","id":2028642,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":19,"line":13,"path":"scripts/linux/ubuntu/install_dependencies.sh","commit_id":"c97249ed24126ae9998710940bcf30d1f6673eec","created_at":"2012-10-21T12:19:23Z","updated_at":"2012-10-21T12:19:23Z","body":"yes, this solves #1352, i forgot to change it in debian and probably other distributions scripts need to be updated too"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2029239","html_url":"https://github.com/openframeworks/openFrameworks/commit/c97249ed24126ae9998710940bcf30d1f6673eec#commitcomment-2029239","id":2029239,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":19,"line":13,"path":"scripts/linux/ubuntu/install_dependencies.sh","commit_id":"c97249ed24126ae9998710940bcf30d1f6673eec","created_at":"2012-10-21T19:35:14Z","updated_at":"2012-10-21T19:35:23Z","body":"will you do this in the near-future, or should we open an issue for that, so that we don't forget?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2074861","html_url":"https://github.com/openframeworks/openFrameworks/commit/87cbf1b3992950cce1e29d70f3e84bf823cbf5ce#commitcomment-2074861","id":2074861,"user":{"login":"Maigre","id":702145,"avatar_url":"https://secure.gravatar.com/avatar/af64661376fe5d326a307ce9dbe3562d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"af64661376fe5d326a307ce9dbe3562d","url":"https://api.github.com/users/Maigre","html_url":"https://github.com/Maigre","followers_url":"https://api.github.com/users/Maigre/followers","following_url":"https://api.github.com/users/Maigre/following{/other_user}","gists_url":"https://api.github.com/users/Maigre/gists{/gist_id}","starred_url":"https://api.github.com/users/Maigre/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Maigre/subscriptions","organizations_url":"https://api.github.com/users/Maigre/orgs","repos_url":"https://api.github.com/users/Maigre/repos","events_url":"https://api.github.com/users/Maigre/events{/privacy}","received_events_url":"https://api.github.com/users/Maigre/received_events","type":"User"},"position":23,"line":520,"path":"addons/ofxAndroid/ofAndroidLib/src/cc/openframeworks/OFAndroid.java","commit_id":"87cbf1b3992950cce1e29d70f3e84bf823cbf5ce","created_at":"2012-10-30T16:59:27Z","updated_at":"2012-10-30T16:59:27Z","body":"replace with \r\nOFAndroid.orientation = orientation;\r\n?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2074868","html_url":"https://github.com/openframeworks/openFrameworks/commit/87cbf1b3992950cce1e29d70f3e84bf823cbf5ce#commitcomment-2074868","id":2074868,"user":{"login":"Maigre","id":702145,"avatar_url":"https://secure.gravatar.com/avatar/af64661376fe5d326a307ce9dbe3562d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"af64661376fe5d326a307ce9dbe3562d","url":"https://api.github.com/users/Maigre","html_url":"https://github.com/Maigre","followers_url":"https://api.github.com/users/Maigre/followers","following_url":"https://api.github.com/users/Maigre/following{/other_user}","gists_url":"https://api.github.com/users/Maigre/gists{/gist_id}","starred_url":"https://api.github.com/users/Maigre/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Maigre/subscriptions","organizations_url":"https://api.github.com/users/Maigre/orgs","repos_url":"https://api.github.com/users/Maigre/repos","events_url":"https://api.github.com/users/Maigre/events{/privacy}","received_events_url":"https://api.github.com/users/Maigre/received_events","type":"User"},"position":12,"line":256,"path":"addons/ofxAndroid/ofAndroidLib/src/cc/openframeworks/OFAndroid.java","commit_id":"87cbf1b3992950cce1e29d70f3e84bf823cbf5ce","created_at":"2012-10-30T17:00:08Z","updated_at":"2012-10-30T17:00:08Z","body":"replace with \r\nif(OFAndroid.orientation != -1) OFAndroid.setScreenOrientation(OFAndroid.orientation);\r\n?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2080254","html_url":"https://github.com/openframeworks/openFrameworks/commit/09f01def0611efcd53e486888be74673ab265d57#commitcomment-2080254","id":2080254,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"09f01def0611efcd53e486888be74673ab265d57","created_at":"2012-10-31T12:53:03Z","updated_at":"2012-10-31T12:56:55Z","body":"May I inquire who moved the 0072 tag to this commit? I'd appreciate if people a) would announce this somewhere, so other people can update their repo, and more importantly b) make sure that a **release tag** actually points to a commit on the **master branch**, i.e. at least merge the relevant commit into master. :angry: \r\n\r\nAside of that, we should really not be moving tags so often after release, also because tag updates are not fetched by default in git, and confusion can arise from people having tags point to two different commits, and from having to explain to people that current master, last-release tag, and OF.cc download are actually three different things now. makes for some fun trying to debug things like [this](https://github.com/openframeworks/openFrameworks/issues/1670#issuecomment-9942863) - Not?\r\n\r\n\r\n@arturoc was that you?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2093951","html_url":"https://github.com/openframeworks/openFrameworks/commit/9bbdf2149b9c3885e7e44f82e164341654536f3e#commitcomment-2093951","id":2093951,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":5,"line":100,"path":"libs/openFrameworksCompiled/project/android/makefile","commit_id":"9bbdf2149b9c3885e7e44f82e164341654536f3e","created_at":"2012-11-02T15:11:31Z","updated_at":"2012-11-02T15:11:31Z","body":"curious, why the `\"` for some files, but not all - does it make an actual difference?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2093959","html_url":"https://github.com/openframeworks/openFrameworks/commit/15ba0e02eaa2568edd7aa6f42ccdb73058743c36#commitcomment-2093959","id":2093959,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"15ba0e02eaa2568edd7aa6f42ccdb73058743c36","created_at":"2012-11-02T15:13:22Z","updated_at":"2012-11-02T15:13:22Z","body":"is this a fix against #1662? if yes, can we close that issue now?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2097653","html_url":"https://github.com/openframeworks/openFrameworks/commit/cef7ff35149a9c7deccce36c0df4a760674fa9de#commitcomment-2097653","id":2097653,"user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following{/other_user}","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"cef7ff35149a9c7deccce36c0df4a760674fa9de","created_at":"2012-11-03T16:52:06Z","updated_at":"2012-11-03T16:52:06Z","body":"for me, on 10.6.8 this causes the error \"there is no sdk 'macosx'\"\r\n\r\ni opened the openFrameworks project properties and changed the sdk to \"current os\", and now the pbxproj says `SDKROOT = \"\"` and it works.\r\n\r\ni must have not needed to recompile OF since you made this change? not sure how i didn't see it before."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2098207","html_url":"https://github.com/openframeworks/openFrameworks/commit/cef7ff35149a9c7deccce36c0df4a760674fa9de#commitcomment-2098207","id":2098207,"user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"cef7ff35149a9c7deccce36c0df4a760674fa9de","created_at":"2012-11-03T23:23:49Z","updated_at":"2012-11-03T23:23:49Z","body":"huh - weird.\nwhich version of xcode? \n\non my Xcode ( 3.2.6 ) the example compiles file with SDKROOT = \"macosx\""},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2098321","html_url":"https://github.com/openframeworks/openFrameworks/commit/cef7ff35149a9c7deccce36c0df4a760674fa9de#commitcomment-2098321","id":2098321,"user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following{/other_user}","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"cef7ff35149a9c7deccce36c0df4a760674fa9de","created_at":"2012-11-04T00:54:55Z","updated_at":"2012-11-04T00:54:55Z","body":"3.2.2. could you also check if your works with `\"\"` or only with `macosx` (which i'm pretty sure is the current format, not `\"macosx\"` with quotes as you wrote)."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2098359","html_url":"https://github.com/openframeworks/openFrameworks/commit/cef7ff35149a9c7deccce36c0df4a760674fa9de#commitcomment-2098359","id":2098359,"user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"cef7ff35149a9c7deccce36c0df4a760674fa9de","created_at":"2012-11-04T01:32:51Z","updated_at":"2012-11-04T01:32:51Z","body":"Just checked.\r\nSeems to work fine for me with either. \r\n\r\nSo maybe SDKROOT = \"\" ( ignore quotes ) is the way to go for better backwards compatibility?\r\n\r\nJust as a quick sanity check can you try the 0072 release from: http://www.openframeworks.cc/versions/v0072/of_v0072_osx_release.zip\r\n\r\nAll the examples have the SDKROOT=macosx - so if those run fine for you it could be an issue with the repo. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2098365","html_url":"https://github.com/openframeworks/openFrameworks/commit/cef7ff35149a9c7deccce36c0df4a760674fa9de#commitcomment-2098365","id":2098365,"user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following{/other_user}","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"cef7ff35149a9c7deccce36c0df4a760674fa9de","created_at":"2012-11-04T01:34:33Z","updated_at":"2012-11-04T01:34:33Z","body":"yeah i'll give 0072 another check to make sure it's not just something weird on my end, or with the repo."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2098370","html_url":"https://github.com/openframeworks/openFrameworks/commit/cef7ff35149a9c7deccce36c0df4a760674fa9de#commitcomment-2098370","id":2098370,"user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following{/other_user}","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"cef7ff35149a9c7deccce36c0df4a760674fa9de","created_at":"2012-11-04T01:42:34Z","updated_at":"2012-11-04T01:42:34Z","body":"nope, when i run 0072 it also gives the error: `error: There is no SDK with the name or path 'macosx'` :(\r\n\r\ni hope it's just 3.2.2 (which probably is a very small minority of people) but if `\"\"` works everywhere then we should definitely switch to that in the next release. i'll add an issue."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2161129","html_url":"https://github.com/openframeworks/openFrameworks/commit/81f3dd8493afe728f7736b81afbc223c4fc447dd#commitcomment-2161129","id":2161129,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"81f3dd8493afe728f7736b81afbc223c4fc447dd","created_at":"2012-11-15T20:40:03Z","updated_at":"2012-11-15T20:40:03Z","body":"@ofTheo this should have been pushed via a PR (even a dummy one), not directly, to make changelog generation easier, as we already decided at the devmeet before last."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2161183","html_url":"https://github.com/openframeworks/openFrameworks/commit/81f3dd8493afe728f7736b81afbc223c4fc447dd#commitcomment-2161183","id":2161183,"user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"81f3dd8493afe728f7736b81afbc223c4fc447dd","created_at":"2012-11-15T20:47:14Z","updated_at":"2012-11-15T20:47:14Z","body":"yup - sorry, forgot! =)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2491342","html_url":"https://github.com/openframeworks/openFrameworks/commit/1d1ed0f306dfb68d28575bad6de0741350034fd5#commitcomment-2491342","id":2491342,"user":{"login":"rbencina","id":3253274,"avatar_url":"https://secure.gravatar.com/avatar/666a95f5725d92e6bf6ccc0c2c60db59?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"666a95f5725d92e6bf6ccc0c2c60db59","url":"https://api.github.com/users/rbencina","html_url":"https://github.com/rbencina","followers_url":"https://api.github.com/users/rbencina/followers","following_url":"https://api.github.com/users/rbencina/following{/other_user}","gists_url":"https://api.github.com/users/rbencina/gists{/gist_id}","starred_url":"https://api.github.com/users/rbencina/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rbencina/subscriptions","organizations_url":"https://api.github.com/users/rbencina/orgs","repos_url":"https://api.github.com/users/rbencina/repos","events_url":"https://api.github.com/users/rbencina/events{/privacy}","received_events_url":"https://api.github.com/users/rbencina/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"1d1ed0f306dfb68d28575bad6de0741350034fd5","created_at":"2013-01-24T08:59:23Z","updated_at":"2013-01-24T08:59:23Z","body":"slightly different fix now in oscpack master: https://code.google.com/p/oscpack/source/detail?r=73#"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2491385","html_url":"https://github.com/openframeworks/openFrameworks/commit/1d1ed0f306dfb68d28575bad6de0741350034fd5#commitcomment-2491385","id":2491385,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"1d1ed0f306dfb68d28575bad6de0741350034fd5","created_at":"2013-01-24T09:09:26Z","updated_at":"2013-01-24T09:09:26Z","body":"thanks Ross, since it seems like you are doing some more changes, we'll probably wait till you have a new version or at least add all the changes and then go back to the official version."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2493956","html_url":"https://github.com/openframeworks/openFrameworks/commit/f2d660e61ff065ca7c08d8f5e4160a212247784f#commitcomment-2493956","id":2493956,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":35,"line":35,"path":"libs/openFrameworks/utils/ofFileUtils.h","commit_id":"f2d660e61ff065ca7c08d8f5e4160a212247784f","created_at":"2013-01-24T16:16:52Z","updated_at":"2013-01-24T16:16:52Z","body":"@arturoc @roxlu this just tripped me up nicely during a hunt for warnings - why does this not return an `unsigned` type, as many (all?) other `.size()` methods?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2569672","html_url":"https://github.com/openframeworks/openFrameworks/commit/19b5a6015375669b8f26bbed1792affe13533f08#commitcomment-2569672","id":2569672,"user":{"login":"bakercp","id":300484,"avatar_url":"https://secure.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","url":"https://api.github.com/users/bakercp","html_url":"https://github.com/bakercp","followers_url":"https://api.github.com/users/bakercp/followers","following_url":"https://api.github.com/users/bakercp/following{/other_user}","gists_url":"https://api.github.com/users/bakercp/gists{/gist_id}","starred_url":"https://api.github.com/users/bakercp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bakercp/subscriptions","organizations_url":"https://api.github.com/users/bakercp/orgs","repos_url":"https://api.github.com/users/bakercp/repos","events_url":"https://api.github.com/users/bakercp/events{/privacy}","received_events_url":"https://api.github.com/users/bakercp/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"19b5a6015375669b8f26bbed1792affe13533f08","created_at":"2013-02-06T12:40:26Z","updated_at":"2013-02-06T12:40:26Z","body":"This is also in https://github.com/openframeworks/openFrameworks/pull/1594/"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2599405","html_url":"https://github.com/openframeworks/openFrameworks/commit/56caffc011ac2d8ed8c7b30d628aaf0429d704c3#commitcomment-2599405","id":2599405,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"56caffc011ac2d8ed8c7b30d628aaf0429d704c3","created_at":"2013-02-11T16:20:19Z","updated_at":"2013-02-11T16:20:19Z","body":"@benben might be useful to have this in archlinux, not super urgent, we can do it for next release but i think archlinux already packages gstreamer-1.0 as default"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2599436","html_url":"https://github.com/openframeworks/openFrameworks/commit/56caffc011ac2d8ed8c7b30d628aaf0429d704c3#commitcomment-2599436","id":2599436,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":15,"line":14,"path":"scripts/linux/ubuntu/install_codecs.sh","commit_id":"56caffc011ac2d8ed8c7b30d628aaf0429d704c3","created_at":"2013-02-11T16:25:10Z","updated_at":"2013-02-11T16:25:10Z","body":"shouldn't that say `libgstreamer1.0-dev`, @arturoc ?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2599466","html_url":"https://github.com/openframeworks/openFrameworks/commit/56caffc011ac2d8ed8c7b30d628aaf0429d704c3#commitcomment-2599466","id":2599466,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":15,"line":14,"path":"scripts/linux/ubuntu/install_codecs.sh","commit_id":"56caffc011ac2d8ed8c7b30d628aaf0429d704c3","created_at":"2013-02-11T16:29:19Z","updated_at":"2013-02-11T16:29:19Z","body":"yep, thanks!"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2599495","html_url":"https://github.com/openframeworks/openFrameworks/commit/56caffc011ac2d8ed8c7b30d628aaf0429d704c3#commitcomment-2599495","id":2599495,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"56caffc011ac2d8ed8c7b30d628aaf0429d704c3","created_at":"2013-02-11T16:33:09Z","updated_at":"2013-02-11T16:37:31Z","body":"@arturoc I don't get the logic here? are you just trying to select the gstreamer version which is already installed? or are you trying to see if a package is available in the package sources (as the commit message seems to say).\r\n\r\non my ubuntu32, with 0.10 installed, `dpkg-query -l libgstreamer0.10-dev` return status is 0 (it's installed), `dpkg-query -l libgstreamer1.0-dev` return status is 1, it's not installed, but available: \r\n```\r\napt-cache policy libgstreamer1.0-dev \r\nlibgstreamer1.0-dev:\r\n Installed: (none)\r\n Candidate: 1.0.1-1\r\n```"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2599658","html_url":"https://github.com/openframeworks/openFrameworks/commit/56caffc011ac2d8ed8c7b30d628aaf0429d704c3#commitcomment-2599658","id":2599658,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"56caffc011ac2d8ed8c7b30d628aaf0429d704c3","created_at":"2013-02-11T16:51:28Z","updated_at":"2013-02-11T16:51:28Z","body":"err, thanks :) i had those packages installed and thought it was detecting available packages. it should be fixed now but if you can double check"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2599733","html_url":"https://github.com/openframeworks/openFrameworks/commit/191731ef6ca2de4495f6fd7ed7b28569a351d779#commitcomment-2599733","id":2599733,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"191731ef6ca2de4495f6fd7ed7b28569a351d779","created_at":"2013-02-11T17:01:44Z","updated_at":"2013-02-11T17:01:44Z","body":"@arturoc Apparently, a good way to check this is: `apt-cache show -n libgstreamer1.0-dev` (returns 0). `apt-cache show -n libgstreamer2.0-dev` (i.e. does not exist) returns 100. \r\nOr you could do `apt-cache search -n libgstreamer1.0-dev` which returns nothing if package isn't found. return value is always 0, though. \r\nbtw, those experiments so shortly before a release are probably better done via PRs? ;-)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2599806","html_url":"https://github.com/openframeworks/openFrameworks/commit/191731ef6ca2de4495f6fd7ed7b28569a351d779#commitcomment-2599806","id":2599806,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"191731ef6ca2de4495f6fd7ed7b28569a351d779","created_at":"2013-02-11T17:11:17Z","updated_at":"2013-02-11T17:11:17Z","body":"sure but thought it was an easy one :)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2599841","html_url":"https://github.com/openframeworks/openFrameworks/commit/191731ef6ca2de4495f6fd7ed7b28569a351d779#commitcomment-2599841","id":2599841,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"191731ef6ca2de4495f6fd7ed7b28569a351d779","created_at":"2013-02-11T17:15:50Z","updated_at":"2013-02-11T17:15:50Z","body":"have changed to your method the last one would have probably failed with non-english locales"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2599926","html_url":"https://github.com/openframeworks/openFrameworks/commit/c54f74918b3532cecc943bc6270dd8a185d65b53#commitcomment-2599926","id":2599926,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":5,"line":14,"path":"scripts/linux/debian/install_codecs.sh","commit_id":"c54f74918b3532cecc943bc6270dd8a185d65b53","created_at":"2013-02-11T17:26:49Z","updated_at":"2013-02-11T17:26:49Z","body":"i really hate to be nagging, but you're still Grepping here (and in the ubuntu codecs file)..."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2599956","html_url":"https://github.com/openframeworks/openFrameworks/commit/c54f74918b3532cecc943bc6270dd8a185d65b53#commitcomment-2599956","id":2599956,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":5,"line":14,"path":"scripts/linux/debian/install_codecs.sh","commit_id":"c54f74918b3532cecc943bc6270dd8a185d65b53","created_at":"2013-02-11T17:30:24Z","updated_at":"2013-02-11T17:30:24Z","body":"arghgg. thanks"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2600058","html_url":"https://github.com/openframeworks/openFrameworks/commit/0fd99ca732b827a80322449990f93b12a4a6304e#commitcomment-2600058","id":2600058,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":5,"line":14,"path":"scripts/linux/debian/install_codecs.sh","commit_id":"0fd99ca732b827a80322449990f93b12a4a6304e","created_at":"2013-02-11T17:41:20Z","updated_at":"2013-02-11T17:41:20Z","body":"feels like there's no end to this today, but have you tried this with a non-existing package? the output goes to `stderr` so it's not suppressed by plain `>`. you have to modify the redirect. it could be `2>` or `2>&1` or somesuch, i can't test unfortunately, I gotta run now."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2627278","html_url":"https://github.com/openframeworks/openFrameworks/commit/56caffc011ac2d8ed8c7b30d628aaf0429d704c3#commitcomment-2627278","id":2627278,"user":{"login":"benben","id":124513,"avatar_url":"https://secure.gravatar.com/avatar/6aed6a0dfa09b46d6fbd5149eb56def8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"6aed6a0dfa09b46d6fbd5149eb56def8","url":"https://api.github.com/users/benben","html_url":"https://github.com/benben","followers_url":"https://api.github.com/users/benben/followers","following_url":"https://api.github.com/users/benben/following{/other_user}","gists_url":"https://api.github.com/users/benben/gists{/gist_id}","starred_url":"https://api.github.com/users/benben/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/benben/subscriptions","organizations_url":"https://api.github.com/users/benben/orgs","repos_url":"https://api.github.com/users/benben/repos","events_url":"https://api.github.com/users/benben/events{/privacy}","received_events_url":"https://api.github.com/users/benben/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"56caffc011ac2d8ed8c7b30d628aaf0429d704c3","created_at":"2013-02-15T00:15:51Z","updated_at":"2013-02-15T00:15:51Z","body":"Archlinux comes with 1.0 by default, but still has the 0.10 ones in its official repositories. (https://www.archlinux.org/packages/?q=gstreamer)\r\n\r\nI've send a PR here: #1877 "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2629149","html_url":"https://github.com/openframeworks/openFrameworks/commit/dbdbd9197b4497ae7d1e9c4a3951f4b8170b2e32#commitcomment-2629149","id":2629149,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"dbdbd9197b4497ae7d1e9c4a3951f4b8170b2e32","created_at":"2013-02-15T09:30:31Z","updated_at":"2013-02-15T09:30:50Z","body":"@arturoc, did you check if the video examples compile with the gstreamer stuff changed?\r\nThe latest build fails many of the video-related examples (I can reproduce this on my machine with a fres pull from develop). the error is typically the same as [here](http://videosynthesis.net/oftesting/testruns/20130214_164427-v0.7.4/vagrant-ubuntu-12.10-64bit/tests/videoPlayerExample/) - undefined references to gst-* functions.\r\ncc @benben "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2671353","html_url":"https://github.com/openframeworks/openFrameworks/commit/619d8a84525f62592a326d04e10a2750916d6ab3#commitcomment-2671353","id":2671353,"user":{"login":"thiagohersan","id":850815,"avatar_url":"https://secure.gravatar.com/avatar/b3d17564d4e5a5b5925aab9c8af761cf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b3d17564d4e5a5b5925aab9c8af761cf","url":"https://api.github.com/users/thiagohersan","html_url":"https://github.com/thiagohersan","followers_url":"https://api.github.com/users/thiagohersan/followers","following_url":"https://api.github.com/users/thiagohersan/following{/other_user}","gists_url":"https://api.github.com/users/thiagohersan/gists{/gist_id}","starred_url":"https://api.github.com/users/thiagohersan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/thiagohersan/subscriptions","organizations_url":"https://api.github.com/users/thiagohersan/orgs","repos_url":"https://api.github.com/users/thiagohersan/repos","events_url":"https://api.github.com/users/thiagohersan/events{/privacy}","received_events_url":"https://api.github.com/users/thiagohersan/received_events","type":"User"},"position":5,"line":12,"path":"examples/android/androidImageExample/AndroidManifest.xml","commit_id":"619d8a84525f62592a326d04e10a2750916d6ab3","created_at":"2013-02-22T01:24:14Z","updated_at":"2013-02-22T01:24:14Z","body":"don't we need this in order to copy the stuff from bin/data into the right directory?\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2674156","html_url":"https://github.com/openframeworks/openFrameworks/commit/619d8a84525f62592a326d04e10a2750916d6ab3#commitcomment-2674156","id":2674156,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":5,"line":12,"path":"examples/android/androidImageExample/AndroidManifest.xml","commit_id":"619d8a84525f62592a326d04e10a2750916d6ab3","created_at":"2013-02-22T12:50:17Z","updated_at":"2013-02-22T12:50:17Z","body":"not anymore since now data is in /sdcard/Android/data/pkgname which is considered the app data folder so the app has permissions to write there"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2679326","html_url":"https://github.com/openframeworks/openFrameworks/commit/619d8a84525f62592a326d04e10a2750916d6ab3#commitcomment-2679326","id":2679326,"user":{"login":"thiagohersan","id":850815,"avatar_url":"https://secure.gravatar.com/avatar/b3d17564d4e5a5b5925aab9c8af761cf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b3d17564d4e5a5b5925aab9c8af761cf","url":"https://api.github.com/users/thiagohersan","html_url":"https://github.com/thiagohersan","followers_url":"https://api.github.com/users/thiagohersan/followers","following_url":"https://api.github.com/users/thiagohersan/following{/other_user}","gists_url":"https://api.github.com/users/thiagohersan/gists{/gist_id}","starred_url":"https://api.github.com/users/thiagohersan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/thiagohersan/subscriptions","organizations_url":"https://api.github.com/users/thiagohersan/orgs","repos_url":"https://api.github.com/users/thiagohersan/repos","events_url":"https://api.github.com/users/thiagohersan/events{/privacy}","received_events_url":"https://api.github.com/users/thiagohersan/received_events","type":"User"},"position":5,"line":12,"path":"examples/android/androidImageExample/AndroidManifest.xml","commit_id":"619d8a84525f62592a326d04e10a2750916d6ab3","created_at":"2013-02-23T03:59:08Z","updated_at":"2013-02-23T03:59:08Z","body":"I thought getFilesDir( ) was the internal app data folder. We're still using getExternalStorageDirectory( ) and those hardcoded paths to get to /sdcard/Android/data/pkgname, which I think is external ... I'm gonna open an Issue and we can continue there.... : ) "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2698856","html_url":"https://github.com/openframeworks/openFrameworks/commit/2670d6a86526f66e6e4ac88ad35635581bcf27aa#commitcomment-2698856","id":2698856,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":4,"line":13,"path":"scripts/linux/ubuntu/install_dependencies.sh","commit_id":"2670d6a86526f66e6e4ac88ad35635581bcf27aa","created_at":"2013-02-26T20:26:13Z","updated_at":"2013-02-26T20:27:01Z","body":"@arturoc you removed the `libjack-jackd2-dev` installation here (and in debian) - why?\r\na user currently (on IRC) has problems running 0.7.4 (the cameraRibbonExample) - it wants jack: https://gist.github.com/joar/11c78c23b52a7f3633f1 what's up with that?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2702813","html_url":"https://github.com/openframeworks/openFrameworks/commit/2670d6a86526f66e6e4ac88ad35635581bcf27aa#commitcomment-2702813","id":2702813,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":4,"line":13,"path":"scripts/linux/ubuntu/install_dependencies.sh","commit_id":"2670d6a86526f66e6e4ac88ad35635581bcf27aa","created_at":"2013-02-27T08:59:19Z","updated_at":"2013-02-27T08:59:19Z","body":"the problem is not here but in the makefile, i removed jack because portaudio which was the library that needed jack is installed now through apt-get so it should handle the dependencies itself in case it needs jack but it doesn't. the makefile still tries to link against jack so pkg-config fails\r\n\r\ni'm removing it from the new makefiles"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2702921","html_url":"https://github.com/openframeworks/openFrameworks/commit/2670d6a86526f66e6e4ac88ad35635581bcf27aa#commitcomment-2702921","id":2702921,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":4,"line":13,"path":"scripts/linux/ubuntu/install_dependencies.sh","commit_id":"2670d6a86526f66e6e4ac88ad35635581bcf27aa","created_at":"2013-02-27T09:14:22Z","updated_at":"2013-02-27T09:14:22Z","body":"Ah I see, thanks. \r\nAlso, in that gist, that guy had problems with Cairo, but he showed that cairo was installed - he had to add something to the makefile manually. I guess that is irrelevant anyway in the new makefile system? Sorry, that was on IRC, I don't have the log anymore."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2702959","html_url":"https://github.com/openframeworks/openFrameworks/commit/2670d6a86526f66e6e4ac88ad35635581bcf27aa#commitcomment-2702959","id":2702959,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":4,"line":13,"path":"scripts/linux/ubuntu/install_dependencies.sh","commit_id":"2670d6a86526f66e6e4ac88ad35635581bcf27aa","created_at":"2013-02-27T09:19:13Z","updated_at":"2013-02-27T09:19:13Z","body":"yes the problem is that if any of the libraries in the pkg-config call fails everything else will fail, most libraries don't need special includes but cairo does, and it set it up through pkg-config so it's probably also failing because of jack not being present. all should be fixed in the new makefiles"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2703004","html_url":"https://github.com/openframeworks/openFrameworks/commit/2670d6a86526f66e6e4ac88ad35635581bcf27aa#commitcomment-2703004","id":2703004,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":4,"line":13,"path":"scripts/linux/ubuntu/install_dependencies.sh","commit_id":"2670d6a86526f66e6e4ac88ad35635581bcf27aa","created_at":"2013-02-27T09:25:37Z","updated_at":"2013-02-27T09:25:37Z","body":"great, thanks. :-)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2721497","html_url":"https://github.com/openframeworks/openFrameworks/commit/f85ba9b28faeb75ddb649bd45758166d707c6c56#commitcomment-2721497","id":2721497,"user":{"login":"SoylentGraham","id":2184197,"avatar_url":"https://secure.gravatar.com/avatar/9c4381dbaf7664c1fd5b198e807bfa16?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"9c4381dbaf7664c1fd5b198e807bfa16","url":"https://api.github.com/users/SoylentGraham","html_url":"https://github.com/SoylentGraham","followers_url":"https://api.github.com/users/SoylentGraham/followers","following_url":"https://api.github.com/users/SoylentGraham/following{/other_user}","gists_url":"https://api.github.com/users/SoylentGraham/gists{/gist_id}","starred_url":"https://api.github.com/users/SoylentGraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/SoylentGraham/subscriptions","organizations_url":"https://api.github.com/users/SoylentGraham/orgs","repos_url":"https://api.github.com/users/SoylentGraham/repos","events_url":"https://api.github.com/users/SoylentGraham/events{/privacy}","received_events_url":"https://api.github.com/users/SoylentGraham/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"f85ba9b28faeb75ddb649bd45758166d707c6c56","created_at":"2013-03-01T12:45:52Z","updated_at":"2013-03-01T12:45:52Z","body":"ofLogError() << \"init windows\";\r\n\r\nCan we change this to something more appropriate? \"Init windows\" isn't really an error message...\r\n\r\nperhaps\r\nofLogVerbose() << \"ofTrueTypeFont::initWindows()\" if it really needs some logging..."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2721703","html_url":"https://github.com/openframeworks/openFrameworks/commit/f85ba9b28faeb75ddb649bd45758166d707c6c56#commitcomment-2721703","id":2721703,"user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following{/other_user}","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"f85ba9b28faeb75ddb649bd45758166d707c6c56","created_at":"2013-03-01T13:28:05Z","updated_at":"2013-03-01T13:28:05Z","body":"that sounds totally reasonable, if you could submit a pull request for that change we can merge it."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2722019","html_url":"https://github.com/openframeworks/openFrameworks/commit/f85ba9b28faeb75ddb649bd45758166d707c6c56#commitcomment-2722019","id":2722019,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"f85ba9b28faeb75ddb649bd45758166d707c6c56","created_at":"2013-03-01T14:18:09Z","updated_at":"2013-03-01T14:18:09Z","body":"actually you can remove that line, i used it for testing while developing and then forgot to remove it"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2722088","html_url":"https://github.com/openframeworks/openFrameworks/commit/f85ba9b28faeb75ddb649bd45758166d707c6c56#commitcomment-2722088","id":2722088,"user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following{/other_user}","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"f85ba9b28faeb75ddb649bd45758166d707c6c56","created_at":"2013-03-01T14:32:21Z","updated_at":"2013-03-01T14:32:21Z","body":"ah, even better :)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2731538","html_url":"https://github.com/openframeworks/openFrameworks/commit/af9dedb122358b2f856893eee477350facec93c1#commitcomment-2731538","id":2731538,"user":{"login":"rbencina","id":3253274,"avatar_url":"https://secure.gravatar.com/avatar/666a95f5725d92e6bf6ccc0c2c60db59?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"666a95f5725d92e6bf6ccc0c2c60db59","url":"https://api.github.com/users/rbencina","html_url":"https://github.com/rbencina","followers_url":"https://api.github.com/users/rbencina/followers","following_url":"https://api.github.com/users/rbencina/following{/other_user}","gists_url":"https://api.github.com/users/rbencina/gists{/gist_id}","starred_url":"https://api.github.com/users/rbencina/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rbencina/subscriptions","organizations_url":"https://api.github.com/users/rbencina/orgs","repos_url":"https://api.github.com/users/rbencina/repos","events_url":"https://api.github.com/users/rbencina/events{/privacy}","received_events_url":"https://api.github.com/users/rbencina/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"af9dedb122358b2f856893eee477350facec93c1","created_at":"2013-03-04T06:18:17Z","updated_at":"2013-03-04T06:18:17Z","body":"Now in oscpack repo revision-86. Note client must call SetAllowReuse(true) and SetEnableBroadcast(true) explicitly -- maybe you guys want to call those in the ctor. See:\r\nhttps://code.google.com/p/oscpack/source/detail?r=86"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2731544","html_url":"https://github.com/openframeworks/openFrameworks/commit/af9dedb122358b2f856893eee477350facec93c1#commitcomment-2731544","id":2731544,"user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following{/other_user}","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"af9dedb122358b2f856893eee477350facec93c1","created_at":"2013-03-04T06:21:51Z","updated_at":"2013-03-04T06:21:51Z","body":"awesome, thanks ross! @bilderbuchi do you think you could check + integrate these changes to oscpack?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2731585","html_url":"https://github.com/openframeworks/openFrameworks/commit/af9dedb122358b2f856893eee477350facec93c1#commitcomment-2731585","id":2731585,"user":{"login":"rbencina","id":3253274,"avatar_url":"https://secure.gravatar.com/avatar/666a95f5725d92e6bf6ccc0c2c60db59?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"666a95f5725d92e6bf6ccc0c2c60db59","url":"https://api.github.com/users/rbencina","html_url":"https://github.com/rbencina","followers_url":"https://api.github.com/users/rbencina/followers","following_url":"https://api.github.com/users/rbencina/following{/other_user}","gists_url":"https://api.github.com/users/rbencina/gists{/gist_id}","starred_url":"https://api.github.com/users/rbencina/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rbencina/subscriptions","organizations_url":"https://api.github.com/users/rbencina/orgs","repos_url":"https://api.github.com/users/rbencina/repos","events_url":"https://api.github.com/users/rbencina/events{/privacy}","received_events_url":"https://api.github.com/users/rbencina/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"af9dedb122358b2f856893eee477350facec93c1","created_at":"2013-03-04T06:40:23Z","updated_at":"2013-03-04T06:40:23Z","body":"@kylemcdonald @bilderbuchi note that integrating is going to be a bit fun due to many recent changes. things are still in flux today. i'm going to try to push out a 1.1RC1 in the next few days. If someone wants to act as the contact point send me an email and I can keep you updated about progress. i'd prefer to coordinate with a single contact, and via email, if that's doable. cheers."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2732035","html_url":"https://github.com/openframeworks/openFrameworks/commit/af9dedb122358b2f856893eee477350facec93c1#commitcomment-2732035","id":2732035,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"af9dedb122358b2f856893eee477350facec93c1","created_at":"2013-03-04T09:04:01Z","updated_at":"2013-03-04T09:04:55Z","body":"@kylemcdonald sorry, I'm a bit swamped with a couple other projects, so it will be some time until I can look at this more closely. I think I could start ~after Resonate or so.\r\nWaiting for the RC (or release) will not be a problem, @rbencina. \r\n@kylemcdonald I think it makes most sense to wait with integration until the new makefile system lands in OF-develop (which will happen soon). maybe we can then avoid renaming the `posix/UdpSocket.cpp`, `win32/UdpSocket.cpp` to resolve the ambiguous filenames, cause the new makefile system allows for finer-grained control of source inclusions. I don't know if the IDE-based projects (xcode, VS, C::B) will play ball, though - thoughts?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2732043","html_url":"https://github.com/openframeworks/openFrameworks/commit/af9dedb122358b2f856893eee477350facec93c1#commitcomment-2732043","id":2732043,"user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following{/other_user}","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"af9dedb122358b2f856893eee477350facec93c1","created_at":"2013-03-04T09:05:14Z","updated_at":"2013-03-04T09:05:14Z","body":"that's totally reasonable, let's wait for the new makefiles to avoid duplication of effort. right now the fix exists in OF, we just need to integrate from the official oscpack codebase -- so it's not urgent."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2732082","html_url":"https://github.com/openframeworks/openFrameworks/commit/af9dedb122358b2f856893eee477350facec93c1#commitcomment-2732082","id":2732082,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"af9dedb122358b2f856893eee477350facec93c1","created_at":"2013-03-04T09:13:28Z","updated_at":"2013-03-04T09:13:28Z","body":"alright. I'm already curious if #701 is fixed with the new oscpack version. will have to try that again and see if it still occurs."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2732125","html_url":"https://github.com/openframeworks/openFrameworks/commit/af9dedb122358b2f856893eee477350facec93c1#commitcomment-2732125","id":2732125,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"af9dedb122358b2f856893eee477350facec93c1","created_at":"2013-03-04T09:23:21Z","updated_at":"2013-03-04T09:23:31Z","body":"OK I opened #1911 for further discussion/planning, please continue there - any wisdom is bound to get lost in those discussions in commit comments."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2732132","html_url":"https://github.com/openframeworks/openFrameworks/commit/af9dedb122358b2f856893eee477350facec93c1#commitcomment-2732132","id":2732132,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"af9dedb122358b2f856893eee477350facec93c1","created_at":"2013-03-04T09:24:35Z","updated_at":"2013-03-04T09:24:35Z","body":"@rbencina let me know: arturo at openframeworks cc i think those changes it's all we need. as soon as you have a stable version we'll remove our custom version and move to the official again. thanks!"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2773971","html_url":"https://github.com/openframeworks/openFrameworks/commit/3a76bf10bc8d19a6a6a7d061c13cda77f4fb6421#commitcomment-2773971","id":2773971,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"3a76bf10bc8d19a6a6a7d061c13cda77f4fb6421","created_at":"2013-03-10T12:05:02Z","updated_at":"2013-03-10T12:05:02Z","body":"so @ofTheo why was this done this way, again, as opposed to #1889? was this based on some discussion not on github? also, was changing the other types really necessary, wasn't only `BOOL` the offending type?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2774119","html_url":"https://github.com/openframeworks/openFrameworks/commit/3a76bf10bc8d19a6a6a7d061c13cda77f4fb6421#commitcomment-2774119","id":2774119,"user":{"login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"3a76bf10bc8d19a6a6a7d061c13cda77f4fb6421","created_at":"2013-03-10T13:59:55Z","updated_at":"2013-03-10T13:59:55Z","body":"Hi @bilderbuchi \r\nthe fix didn't seem to work for vs2010 ( maybe cb too )\r\n\r\nalso I think the person submitting only had an issue with the BOOL typedef - but I believe I had issues with the the others ( maybe on windows ) at some point. \r\n\r\nanyway I think this approach is cleaner as it doesn't change the functions names at all. \r\nand we know it works at least as we've been doing it this way for loads of releases. :) \r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/2774179","html_url":"https://github.com/openframeworks/openFrameworks/commit/3a76bf10bc8d19a6a6a7d061c13cda77f4fb6421#commitcomment-2774179","id":2774179,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"3a76bf10bc8d19a6a6a7d061c13cda77f4fb6421","created_at":"2013-03-10T14:22:02Z","updated_at":"2013-03-10T14:24:10Z","body":"> the fix didn't seem to work for vs2010 ( maybe cb too )\r\n\r\ndid @danthemellowman ever nail his problems down to this PR? did your revert fix his problems?\r\n\r\n> but I *believe* I had issues with the the others ( *maybe* on windows ) *at some point*. \r\n\r\nWell, that sounds like some baggage (in the shape of downstream patches) we have to maintain which is potentially unnecessarily dragged along, but I have of course no way to falsify that. \r\nalso, not only the submitter of our PR, but also the submitter of the bug against freeimage only had issues with BOOL, that's why I asked for clarification, to confirm if multiple types are affected.\r\n\r\n> it doesn't change the functions names\r\n\r\nthe function *names* were not changed with the PR's approach, either - only the signatures were, and not even those I think because of the typedefs (but I have not verified that).\r\n\r\ncleaner - I still think this way could leak wrong preprocessor defines into code outside freeimage, which doesn't look cleaner to me, but I made that point in the PR discussion already. ;-)\r\n\r\nanyway, let's leave it like it is and hope no other problems will crop up..."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/3007948","html_url":"https://github.com/openframeworks/openFrameworks/commit/f85ba9b28faeb75ddb649bd45758166d707c6c56#commitcomment-3007948","id":3007948,"user":{"login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following{/other_user}","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"f85ba9b28faeb75ddb649bd45758166d707c6c56","created_at":"2013-04-14T12:58:57Z","updated_at":"2013-04-14T12:58:57Z","body":"Looks great!\r\nlove `OF_TTF_MONO`, etc"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/3007979","html_url":"https://github.com/openframeworks/openFrameworks/commit/f85ba9b28faeb75ddb649bd45758166d707c6c56#commitcomment-3007979","id":3007979,"user":{"login":"LeoColomb","id":846943,"avatar_url":"https://secure.gravatar.com/avatar/d38889330c0d923ab07c3566f0c02c14?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"d38889330c0d923ab07c3566f0c02c14","url":"https://api.github.com/users/LeoColomb","html_url":"https://github.com/LeoColomb","followers_url":"https://api.github.com/users/LeoColomb/followers","following_url":"https://api.github.com/users/LeoColomb/following{/other_user}","gists_url":"https://api.github.com/users/LeoColomb/gists{/gist_id}","starred_url":"https://api.github.com/users/LeoColomb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/LeoColomb/subscriptions","organizations_url":"https://api.github.com/users/LeoColomb/orgs","repos_url":"https://api.github.com/users/LeoColomb/repos","events_url":"https://api.github.com/users/LeoColomb/events{/privacy}","received_events_url":"https://api.github.com/users/LeoColomb/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"f85ba9b28faeb75ddb649bd45758166d707c6c56","created_at":"2013-04-14T13:21:49Z","updated_at":"2013-04-14T13:23:19Z","body":"Yes, it's amazing!\r\nBut I have a question: at the line [251 in ofTrueTypeFont.cpp](https://github.com/openframeworks/openFrameworks/commit/f85ba9b28faeb75ddb649bd45758166d707c6c56#L0R251) we have `ofLogError() << \"init windows\";`.\r\nSo is that normal the initialization for Windows is said/printed as an error?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/3008039","html_url":"https://github.com/openframeworks/openFrameworks/commit/f85ba9b28faeb75ddb649bd45758166d707c6c56#commitcomment-3008039","id":3008039,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"f85ba9b28faeb75ddb649bd45758166d707c6c56","created_at":"2013-04-14T14:06:04Z","updated_at":"2013-04-14T14:06:04Z","body":"@LeoColomb: look a couple comments above yours ;-)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/3008044","html_url":"https://github.com/openframeworks/openFrameworks/commit/f85ba9b28faeb75ddb649bd45758166d707c6c56#commitcomment-3008044","id":3008044,"user":{"login":"LeoColomb","id":846943,"avatar_url":"https://secure.gravatar.com/avatar/d38889330c0d923ab07c3566f0c02c14?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"d38889330c0d923ab07c3566f0c02c14","url":"https://api.github.com/users/LeoColomb","html_url":"https://github.com/LeoColomb","followers_url":"https://api.github.com/users/LeoColomb/followers","following_url":"https://api.github.com/users/LeoColomb/following{/other_user}","gists_url":"https://api.github.com/users/LeoColomb/gists{/gist_id}","starred_url":"https://api.github.com/users/LeoColomb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/LeoColomb/subscriptions","organizations_url":"https://api.github.com/users/LeoColomb/orgs","repos_url":"https://api.github.com/users/LeoColomb/repos","events_url":"https://api.github.com/users/LeoColomb/events{/privacy}","received_events_url":"https://api.github.com/users/LeoColomb/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"f85ba9b28faeb75ddb649bd45758166d707c6c56","created_at":"2013-04-14T14:12:33Z","updated_at":"2013-04-14T14:12:33Z","body":"lol, ok, sorry for laziness (is that the good word?). And thanks :-)"}] + +https +GET +api.github.com +None +/repositories/345337/comments?per_page=100&page=4 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4873'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '41072'), ('server', 'GitHub.com'), ('last-modified', 'Wed, 19 Jun 2013 09:59:24 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="first", ; rel="prev"'), ('etag', '"0f8eacc05056152f14ecb311a50a7081"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 19 Jun 2013 10:31:36 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/3008052","html_url":"https://github.com/openframeworks/openFrameworks/commit/f85ba9b28faeb75ddb649bd45758166d707c6c56#commitcomment-3008052","id":3008052,"user":{"login":"LeoColomb","id":846943,"avatar_url":"https://secure.gravatar.com/avatar/d38889330c0d923ab07c3566f0c02c14?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"d38889330c0d923ab07c3566f0c02c14","url":"https://api.github.com/users/LeoColomb","html_url":"https://github.com/LeoColomb","followers_url":"https://api.github.com/users/LeoColomb/followers","following_url":"https://api.github.com/users/LeoColomb/following{/other_user}","gists_url":"https://api.github.com/users/LeoColomb/gists{/gist_id}","starred_url":"https://api.github.com/users/LeoColomb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/LeoColomb/subscriptions","organizations_url":"https://api.github.com/users/LeoColomb/orgs","repos_url":"https://api.github.com/users/LeoColomb/repos","events_url":"https://api.github.com/users/LeoColomb/events{/privacy}","received_events_url":"https://api.github.com/users/LeoColomb/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"f85ba9b28faeb75ddb649bd45758166d707c6c56","created_at":"2013-04-14T14:19:35Z","updated_at":"2013-04-14T14:19:35Z","body":"So I remove it in 45cea8a ."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/3093644","html_url":"https://github.com/openframeworks/openFrameworks/commit/09d269e069dc8d9240a868e8247f416ce4607bbc#commitcomment-3093644","id":3093644,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"09d269e069dc8d9240a868e8247f416ce4607bbc","created_at":"2013-04-26T09:34:28Z","updated_at":"2013-04-26T09:34:28Z","body":"@arturoc what problem does this fix? I'm asking because there is a rising amount of thread about CB problems on the forum, I wonder if some of those would be fixed with this. \r\nAlso, `execution_dir` has a user-specific path (`/home/arturo/...`), is that correct?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/3093671","html_url":"https://github.com/openframeworks/openFrameworks/commit/09d269e069dc8d9240a868e8247f416ce4607bbc#commitcomment-3093671","id":3093671,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"09d269e069dc8d9240a868e8247f416ce4607bbc","created_at":"2013-04-26T09:40:08Z","updated_at":"2013-04-26T09:40:08Z","body":"no it'2 not correct, thanks. this fixes the new location of makefiles where the cbp and the makefile are not in the same directory anymore"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/3216263","html_url":"https://github.com/openframeworks/openFrameworks/commit/5564ad9b3f7efa00c8939409f2b3653d82e9e34e#commitcomment-3216263","id":3216263,"user":{"login":"LeoColomb","id":846943,"avatar_url":"https://secure.gravatar.com/avatar/d38889330c0d923ab07c3566f0c02c14?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"d38889330c0d923ab07c3566f0c02c14","url":"https://api.github.com/users/LeoColomb","html_url":"https://github.com/LeoColomb","followers_url":"https://api.github.com/users/LeoColomb/followers","following_url":"https://api.github.com/users/LeoColomb/following{/other_user}","gists_url":"https://api.github.com/users/LeoColomb/gists{/gist_id}","starred_url":"https://api.github.com/users/LeoColomb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/LeoColomb/subscriptions","organizations_url":"https://api.github.com/users/LeoColomb/orgs","repos_url":"https://api.github.com/users/LeoColomb/repos","events_url":"https://api.github.com/users/LeoColomb/events{/privacy}","received_events_url":"https://api.github.com/users/LeoColomb/received_events","type":"User"},"position":9,"line":10,"path":"scripts/dev/create_package.sh","commit_id":"5564ad9b3f7efa00c8939409f2b3653d82e9e34e","created_at":"2013-05-15T10:30:18Z","updated_at":"2013-05-15T10:30:18Z","body":"I'm not sure, but is it not supposed to compile develop branch from `openframeworks/openFrameworks`? "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/3431119","html_url":"https://github.com/openframeworks/openFrameworks/commit/39ca3785538ed4a027ea3ac7db23d92dbed4231c#commitcomment-3431119","id":3431119,"user":{"login":"diasbruno","id":362368,"avatar_url":"https://secure.gravatar.com/avatar/2d1142788375ac52dde09815838a0710?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2d1142788375ac52dde09815838a0710","url":"https://api.github.com/users/diasbruno","html_url":"https://github.com/diasbruno","followers_url":"https://api.github.com/users/diasbruno/followers","following_url":"https://api.github.com/users/diasbruno/following{/other_user}","gists_url":"https://api.github.com/users/diasbruno/gists{/gist_id}","starred_url":"https://api.github.com/users/diasbruno/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/diasbruno/subscriptions","organizations_url":"https://api.github.com/users/diasbruno/orgs","repos_url":"https://api.github.com/users/diasbruno/repos","events_url":"https://api.github.com/users/diasbruno/events{/privacy}","received_events_url":"https://api.github.com/users/diasbruno/received_events","type":"User"},"position":5,"line":41,"path":"libs/openFrameworks/utils/ofUtils.h","commit_id":"39ca3785538ed4a027ea3ac7db23d92dbed4231c","created_at":"2013-06-15T10:55:42Z","updated_at":"2013-06-15T10:55:42Z","body":"hey @bakercp, should ofLaunchBrowser return bool?\r\n\r\n```\r\nif (ofLaunchBrowser(url)) {...}\r\nelse { /* failed to launch the browser. */ }\r\n```\r\n\r\nunfortunately, i lost this patch when i clean up my oF repo. sorry..."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/3431260","html_url":"https://github.com/openframeworks/openFrameworks/commit/39ca3785538ed4a027ea3ac7db23d92dbed4231c#commitcomment-3431260","id":3431260,"user":{"login":"bakercp","id":300484,"avatar_url":"https://secure.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","url":"https://api.github.com/users/bakercp","html_url":"https://github.com/bakercp","followers_url":"https://api.github.com/users/bakercp/followers","following_url":"https://api.github.com/users/bakercp/following{/other_user}","gists_url":"https://api.github.com/users/bakercp/gists{/gist_id}","starred_url":"https://api.github.com/users/bakercp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bakercp/subscriptions","organizations_url":"https://api.github.com/users/bakercp/orgs","repos_url":"https://api.github.com/users/bakercp/repos","events_url":"https://api.github.com/users/bakercp/events{/privacy}","received_events_url":"https://api.github.com/users/bakercp/received_events","type":"User"},"position":5,"line":41,"path":"libs/openFrameworks/utils/ofUtils.h","commit_id":"39ca3785538ed4a027ea3ac7db23d92dbed4231c","created_at":"2013-06-15T12:19:54Z","updated_at":"2013-06-15T12:19:54Z","body":"It seems like a good idea to me if you can figure out a good way to consistently return success across platforms. Perhaps POCO's processes wrappers could help http://pocoproject.org/slides/150-Processes.pdf."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/3431267","html_url":"https://github.com/openframeworks/openFrameworks/commit/39ca3785538ed4a027ea3ac7db23d92dbed4231c#commitcomment-3431267","id":3431267,"user":{"login":"diasbruno","id":362368,"avatar_url":"https://secure.gravatar.com/avatar/2d1142788375ac52dde09815838a0710?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2d1142788375ac52dde09815838a0710","url":"https://api.github.com/users/diasbruno","html_url":"https://github.com/diasbruno","followers_url":"https://api.github.com/users/diasbruno/followers","following_url":"https://api.github.com/users/diasbruno/following{/other_user}","gists_url":"https://api.github.com/users/diasbruno/gists{/gist_id}","starred_url":"https://api.github.com/users/diasbruno/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/diasbruno/subscriptions","organizations_url":"https://api.github.com/users/diasbruno/orgs","repos_url":"https://api.github.com/users/diasbruno/repos","events_url":"https://api.github.com/users/diasbruno/events{/privacy}","received_events_url":"https://api.github.com/users/diasbruno/received_events","type":"User"},"position":5,"line":41,"path":"libs/openFrameworks/utils/ofUtils.h","commit_id":"39ca3785538ed4a027ea3ac7db23d92dbed4231c","created_at":"2013-06-15T12:26:51Z","updated_at":"2013-06-15T12:26:51Z","body":"sure. thanks for the link."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/3432153","html_url":"https://github.com/openframeworks/openFrameworks/commit/0361224e24657a33eea1e10481c73f21347bd733#commitcomment-3432153","id":3432153,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":5,"line":889,"path":"libs/openFrameworks/graphics/ofGraphics.cpp","commit_id":"0361224e24657a33eea1e10481c73f21347bd733","created_at":"2013-06-15T21:10:42Z","updated_at":"2013-06-15T21:10:42Z","body":"we should check the examples, there's probably some example still using this version"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/3432204","html_url":"https://github.com/openframeworks/openFrameworks/commit/6d9c4cdb031c0a3b9b53689b331164488a55b4bf#commitcomment-3432204","id":3432204,"user":{"login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"position":23,"line":672,"path":"libs/openFrameworks/gl/ofTexture.cpp","commit_id":"6d9c4cdb031c0a3b9b53689b331164488a55b4bf","created_at":"2013-06-15T21:43:42Z","updated_at":"2013-06-15T21:43:42Z","body":"this will be a problem with openGL ES and textures that are non power of 2 since tex_w/h is different than width/height always so it'll reallocate every frame\r\n\r\nalso you can upload data to a texture that is bigger to what you are uploading\r\n\r\nperhaps w(path)\r\n\r\nwe could add a default value like we had in ofxXmlSettings\r\n\r\n getValue(path,default)\r\n\r\nor even specialize the function for the most common types:\r\n\r\n string getStringValue(string path)\r\n int getIntValue(string path)\r\n ....\r\n\r\nwhich internally call the templated version, i think this last one is the best, it's what we are using in ofParameter already and makes it less ambiguous than a default parameter for things like float..."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/3436737","html_url":"https://github.com/openframeworks/openFrameworks/commit/381fd1e7a5772b55f1991a8e3508c549f0d4d3d3#commitcomment-3436737","id":3436737,"user":{"login":"thiagohersan","id":850815,"avatar_url":"https://secure.gravatar.com/avatar/b3d17564d4e5a5b5925aab9c8af761cf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b3d17564d4e5a5b5925aab9c8af761cf","url":"https://api.github.com/users/thiagohersan","html_url":"https://github.com/thiagohersan","followers_url":"https://api.github.com/users/thiagohersan/followers","following_url":"https://api.github.com/users/thiagohersan/following{/other_user}","gists_url":"https://api.github.com/users/thiagohersan/gists{/gist_id}","starred_url":"https://api.github.com/users/thiagohersan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/thiagohersan/subscriptions","organizations_url":"https://api.github.com/users/thiagohersan/orgs","repos_url":"https://api.github.com/users/thiagohersan/repos","events_url":"https://api.github.com/users/thiagohersan/events{/privacy}","received_events_url":"https://api.github.com/users/thiagohersan/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"381fd1e7a5772b55f1991a8e3508c549f0d4d3d3","created_at":"2013-06-17T10:14:10Z","updated_at":"2013-06-17T10:23:14Z","body":"yeah... default and/or specialized functions.\r\n\r\nbecause right now [this](https://github.com/openframeworks/openFrameworks/blob/381fd1e7a5772b55f1991a8e3508c549f0d4d3d3/libs/openFrameworks/types/ofXml.h#L206) makes it so that the only valid return type for getValue is string... : ) \r\n\r\nI can take a stab at this after work today.\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/3436861","html_url":"https://github.com/openframeworks/openFrameworks/commit/381fd1e7a5772b55f1991a8e3508c549f0d4d3d3#commitcomment-3436861","id":3436861,"user":{"login":"thiagohersan","id":850815,"avatar_url":"https://secure.gravatar.com/avatar/b3d17564d4e5a5b5925aab9c8af761cf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b3d17564d4e5a5b5925aab9c8af761cf","url":"https://api.github.com/users/thiagohersan","html_url":"https://github.com/thiagohersan","followers_url":"https://api.github.com/users/thiagohersan/followers","following_url":"https://api.github.com/users/thiagohersan/following{/other_user}","gists_url":"https://api.github.com/users/thiagohersan/gists{/gist_id}","starred_url":"https://api.github.com/users/thiagohersan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/thiagohersan/subscriptions","organizations_url":"https://api.github.com/users/thiagohersan/orgs","repos_url":"https://api.github.com/users/thiagohersan/repos","events_url":"https://api.github.com/users/thiagohersan/events{/privacy}","received_events_url":"https://api.github.com/users/thiagohersan/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"381fd1e7a5772b55f1991a8e3508c549f0d4d3d3","created_at":"2013-06-17T10:37:31Z","updated_at":"2013-06-17T10:37:31Z","body":"one more thing: addValue( ) is declared void, but it tries to return true/false in a couple of places:\r\n[L152](https://github.com/openframeworks/openFrameworks/blob/381fd1e7a5772b55f1991a8e3508c549f0d4d3d3/libs/openFrameworks/types/ofXml.h#L152)\r\n[L161](https://github.com/openframeworks/openFrameworks/blob/381fd1e7a5772b55f1991a8e3508c549f0d4d3d3/libs/openFrameworks/types/ofXml.h#L161)\r\n..."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/3437167","html_url":"https://github.com/openframeworks/openFrameworks/commit/381fd1e7a5772b55f1991a8e3508c549f0d4d3d3#commitcomment-3437167","id":3437167,"user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"381fd1e7a5772b55f1991a8e3508c549f0d4d3d3","created_at":"2013-06-17T11:21:58Z","updated_at":"2013-06-17T11:21:58Z","body":"interestingly, my compilation (gcc/Eclipse) doesn't even pick that up... there's a load of other warnings, though."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/3438912","html_url":"https://github.com/openframeworks/openFrameworks/commit/381fd1e7a5772b55f1991a8e3508c549f0d4d3d3#commitcomment-3438912","id":3438912,"user":{"login":"joshuajnoble","id":237423,"avatar_url":"https://secure.gravatar.com/avatar/10960ba0f305803a1cdc7cd6188d643b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"10960ba0f305803a1cdc7cd6188d643b","url":"https://api.github.com/users/joshuajnoble","html_url":"https://github.com/joshuajnoble","followers_url":"https://api.github.com/users/joshuajnoble/followers","following_url":"https://api.github.com/users/joshuajnoble/following{/other_user}","gists_url":"https://api.github.com/users/joshuajnoble/gists{/gist_id}","starred_url":"https://api.github.com/users/joshuajnoble/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/joshuajnoble/subscriptions","organizations_url":"https://api.github.com/users/joshuajnoble/orgs","repos_url":"https://api.github.com/users/joshuajnoble/repos","events_url":"https://api.github.com/users/joshuajnoble/events{/privacy}","received_events_url":"https://api.github.com/users/joshuajnoble/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"381fd1e7a5772b55f1991a8e3508c549f0d4d3d3","created_at":"2013-06-17T15:11:16Z","updated_at":"2013-06-17T15:13:48Z","body":"Hmm, this is why I kind of didn't want to do those templates in the first place :/ \r\n\r\nMy thought is \"XML is strings, it should only work with strings because that's all it is inside\". I also purposely didn't do getAsString, getAsInt, getAsFloat, getAsLong because it should be just \"get the value\" I think to keep it simple and clean: get the value, which is a string, and do something with it. A template seems like a nice compromise, but if supporting C++11 and 98 means there's no way to do it without `getValue()` then I guess it doesn't fit with the rest of core very well.\r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/3453546","html_url":"https://github.com/openframeworks/openFrameworks/commit/17ecca4d264194652ade119b491c65920a239fc6#commitcomment-3453546","id":3453546,"user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following{/other_user}","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"17ecca4d264194652ade119b491c65920a239fc6","created_at":"2013-06-18T23:46:04Z","updated_at":"2013-06-18T23:46:04Z","body":"hey this PR removed,\r\n`ofBaseSoundPlayer.cpp`\r\n`ofBaseSoundStream.cpp`\r\n`ofPoint.cpp`\r\n\r\nxcode is complaining not being able to find those files.\r\njust want to double check that this is correct before i update the xcode project."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/3453566","html_url":"https://github.com/openframeworks/openFrameworks/commit/17ecca4d264194652ade119b491c65920a239fc6#commitcomment-3453566","id":3453566,"user":{"login":"thiagohersan","id":850815,"avatar_url":"https://secure.gravatar.com/avatar/b3d17564d4e5a5b5925aab9c8af761cf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b3d17564d4e5a5b5925aab9c8af761cf","url":"https://api.github.com/users/thiagohersan","html_url":"https://github.com/thiagohersan","followers_url":"https://api.github.com/users/thiagohersan/followers","following_url":"https://api.github.com/users/thiagohersan/following{/other_user}","gists_url":"https://api.github.com/users/thiagohersan/gists{/gist_id}","starred_url":"https://api.github.com/users/thiagohersan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/thiagohersan/subscriptions","organizations_url":"https://api.github.com/users/thiagohersan/orgs","repos_url":"https://api.github.com/users/thiagohersan/repos","events_url":"https://api.github.com/users/thiagohersan/events{/privacy}","received_events_url":"https://api.github.com/users/thiagohersan/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"17ecca4d264194652ade119b491c65920a239fc6","created_at":"2013-06-18T23:48:55Z","updated_at":"2013-06-18T23:48:55Z","body":"#2129 should fix this."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/3453625","html_url":"https://github.com/openframeworks/openFrameworks/commit/17ecca4d264194652ade119b491c65920a239fc6#commitcomment-3453625","id":3453625,"user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following{/other_user}","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"17ecca4d264194652ade119b491c65920a239fc6","created_at":"2013-06-18T23:58:46Z","updated_at":"2013-06-18T23:58:46Z","body":"ok, ill put together another PR like that one for iOS."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/comments/3454214","html_url":"https://github.com/openframeworks/openFrameworks/commit/17ecca4d264194652ade119b491c65920a239fc6#commitcomment-3454214","id":3454214,"user":{"login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","html_url":"https://github.com/julapy","followers_url":"https://api.github.com/users/julapy/followers","following_url":"https://api.github.com/users/julapy/following{/other_user}","gists_url":"https://api.github.com/users/julapy/gists{/gist_id}","starred_url":"https://api.github.com/users/julapy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julapy/subscriptions","organizations_url":"https://api.github.com/users/julapy/orgs","repos_url":"https://api.github.com/users/julapy/repos","events_url":"https://api.github.com/users/julapy/events{/privacy}","received_events_url":"https://api.github.com/users/julapy/received_events","type":"User"},"position":null,"line":null,"path":null,"commit_id":"17ecca4d264194652ade119b491c65920a239fc6","created_at":"2013-06-19T01:47:33Z","updated_at":"2013-06-19T01:47:33Z","body":"ive fixed this issue on ios here #2131 "}] + diff --git a/lib/github/tests/ReplayData/PaginatedList.testGetFirstPage.txt b/lib/github/tests/ReplayData/PaginatedList.testGetFirstPage.txt new file mode 100644 index 0000000000..483013e613 --- /dev/null +++ b/lib/github/tests/ReplayData/PaginatedList.testGetFirstPage.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4927'), ('content-length', '52085'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last"'), ('etag', '"5e8867ffb4e7630e852b2b231f3b9cdb"'), ('date', 'Tue, 29 May 2012 19:36:57 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-27T18:11:17Z","body":"Since more and more of the OF Core now relies on Poco (ie ofThread, etc) does OF_USING_POCO make sense anymore?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1280","comments":0,"milestone":null,"number":1280,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1280","assignee":null,"title":"deprecate OF_USING_POCO?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-27T18:03:23Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"danomatika","id":480637},"id":4772349,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-28T08:08:24Z","body":"There occurs a weir glitch when compiling the ofShader example with my HD Graphics 3000 (288 Mb) (Mac osx 10.7.4 - Mac Mini - i5 - 2.3Ghz)\n\nI was able to get rid of the glitch by replacing \"gl_FragColor = gl_Color;\" with \"gl_FragColor = 255.0;\" or any other number.\nAnybody knows a reason for the glitch / proper solution?\n\nScreenshot: http://goo.gl/Xdf74\nOpenGL capacities on different graphic cards on apple machines: http://goo.gl/FGQ2N","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1279","comments":2,"milestone":null,"number":1279,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1279","assignee":null,"title":"ofShader example with HD Graphics 3000 issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-26T19:27:56Z","state":"open","user":{"url":"https://api.github.com/users/subtiv","gravatar_id":"837cfe96365c031130a46311eb11d86a","avatar_url":"https://secure.gravatar.com/avatar/837cfe96365c031130a46311eb11d86a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"subtiv","id":1012684},"id":4767675,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-25T18:39:02Z","body":"produces an error on app exit or tex destruction.\n\n OF: OF_LOG_ERROR: trying to delete a non indexed texture, something weird is happening. Deleting anyway\n\nThis is because retain(int id) is a static function in ofTexture.cpp. So we can't retain the depthStencilTexture.\n\nThis suggest we should move the texture allocation of the depth / stencil texture to ofTexture - something which is not possible at the moment. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1277","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1277,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1277","assignee":null,"title":"ofFbo can't retain depthStencil Texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-05-25T18:37:46Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":4758608,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-22T21:26:57Z","body":"\nthe offending line is: \n\nif( speed.getValue() != preSpeed ){\n\nwhich is evaluating as true even through the slider is not touched (float equality test, etc). \n\nif we alter it to something like: \n\nif( fabs(speed.getValue() - preSpeed) > 0.0001 ){\n\nthe code runs fine. probably nicer to add a \"value changed()\" functionality to the slider object though or use EPSILON, etc. \n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1271","comments":0,"milestone":null,"number":1271,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1271","assignee":null,"title":"periodic signal example doesn't run well on windows / cb (float equality error)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-05-22T21:26:57Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":4700182,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-22T16:41:21Z","body":"There's some error that appears on linux systems running the project generator to make VS examples, where the debug and release libs for opencv get added badly to the vs project: \n\n\t%(AdditionalDependencies);opencv_highgui231d.lib;opencv_calib3d231.lib;opencv_imgproc231d.lib;opencv_haartraining_engined.lib;opencv_gpu231d.lib;opencv_flann231.lib;opencv_contrib231d.lib;opencv_video231d.lib;opencv_objdetect231d.lib;zlib.lib;opencv_core231d.lib;opencv_contrib231.lib;opencv_ml231d.lib;opencv_features2d231.lib;opencv_core231.lib;opencv_gpu231.lib;opencv_legacy231d.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_ml231.lib;opencv_imgproc231.lib;opencv_objdetect231.lib;opencv_legacy231.lib;opencv_video231.lib\n\t\t\t\t%(AdditionalLibraryDirectories);..\\..\\..\\addons\\ofxOpenCv\\libs\\opencv\\lib\\vs2010\n\nthis doesn't seem to be the case on osx or windows, which produces correct results: \n\n\t%(AdditionalDependencies);opencv_calib3d231.lib;opencv_contrib231.lib;opencv_core231.lib;opencv_features2d231.lib;opencv_flann231.lib;opencv_gpu231.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_imgproc231.lib;opencv_legacy231.lib;opencv_ml231.lib;opencv_objdetect231.lib;opencv_video231.lib;zlib.lib\n\nwould be good to look at the logic of \"visualStudioProject::addAddon()\" and see if we can fix this.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1268","comments":9,"milestone":null,"number":1268,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1268","assignee":null,"title":"project generator - bad libs for VS / opencv examples","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-05-20T21:50:24Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":4662873,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T00:43:37Z","body":"I woud love some eyes on ofFbo would be great to get it cleaned up and standardized for 0072. \nRight now there are a ton of #ifdefs and some very hard to follow logic, which makes bug fixing quite difficult especially on OPENGL_ES\n\nsee: https://gist.github.com/2711815\n\n@elliotwoods @arturoc @memotv @damiannz @ofZach @kylemcdonald \n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1263","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1263,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1263","assignee":null,"title":"ofFbo.cpp is a huge mess! ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-16T16:27:30Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":4608132,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T14:29:02Z","body":"I added a .mailmap file to the repo to correctly collate all the contributors in spite of changing nick names/email addresses. This is useful when trying to identify contributors for a changelog or similar, or when using the git logging functions like shortlog.\n\nSee the before/after situation here: https://gist.github.com/2710366\n\nI have respected privacy and only used those real names that people have already given in a git ID in the repo. Mainly this addition only associates the different email addresses to one user. @arturoc wins the prize of most used emails! :-)\nThe list is pretty complete, I only had difficulties to associate some IDs to the correct Zachs, since it was not clear for some if @ofZach or @stfj (Zach Gage) was the contributor. Those were left as-is.\n\nIf anybody has objections to their various email being united under their name, please say so and I will correct/remove the relevant entries.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1262","comments":2,"milestone":null,"number":1262,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1262","assignee":null,"title":"Add .mailmap for contributor collation","labels":[],"closed_at":null,"created_at":"2012-05-16T13:44:32Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"id":4604661,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1262.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1262","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1262.patch"}},{"updated_at":"2012-05-16T09:35:31Z","body":"Address #375.\n\nAdd setVolumef(float). Also more clearly define volume ranges (int is 0..255, float is 0..1) and more robust clamping of volume argument.\n\nThis has not been tested on Linux or Windows.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1260","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1260,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1260","assignee":null,"title":"allow float volume on ofVideoPlayer","labels":[],"closed_at":null,"created_at":"2012-05-15T17:50:22Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"damiannz","id":144366},"id":4588997,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1260.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1260","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1260.patch"}},{"updated_at":"2012-05-21T07:31:47Z","body":"This was originally posted @\"biginners\".\n\nhttp://forum.openframeworks.cc/index.php/topic,9527.msg44049.html#msg44049\n\nJoshua noble suggested me to file it as a bug on jithub\n\n\n/////////////////original messages\n\nHello.\n\nI have question about ofShortPixels and ofShortColor.\n\nIf you execute the code below , it'll draw at half way screen height even though I did set aDot at (0. screen height / 4)\n\nAnd another weird thing is it draws 20 pixels instead of 10 pixels which I set for loop for 10 times.\n\nIt only draws correctly with ofPixels and ofColor.\n\nIt doesn't work with ofFloatPixels and ofFloatColor.\n\nPlease help me out.\n\nI need to have RGB value over 255 so I can check if those values are over 255.\n\nThanks in advanced\n\nJin\n\n\n.h file\nCode:\nview plaincopy to clipboardprint?\n\n #pragma once \n #include \"ofMain.h\" \n \n class Dot { \n public: \n ofVec2f location; \n \n Dot(){ \n location.set(0,0); \n } \n \n ~Dot(){} \n }; \n \n class testApp : public ofBaseApp{ \n public: \n void setup(); \n void update(); \n void draw(); \n \n int w,h; \n \n ofTexture particleTexture; \n ofShortPixels * rgbPixels; \n \n ofShortColor& paint(ofShortColor &); \n \n Dot aDot; \n \n \n }; \n\n\n.cpp file\nCode:\nview plaincopy to clipboardprint?\n\n #include \"testApp.h\" \n //-------------------------------------------------------------- \n void testApp::setup(){ \n ofSetFrameRate(30); \n ofSetBackgroundAuto(TRUE); \n ofBackground(0, 0, 0); \n w = ofGetWidth(); \n h = ofGetHeight(); \n \n particleTexture.allocate(w,h,GL_RGB); \n rgbPixels = new ofShortPixels; \n rgbPixels->allocate(w, h, 3); \n aDot.location.set(0, h/4); \n } \n \n //-------------------------------------------------------------- \n void testApp::update(){ \n ofShortColor pixelColor; \n ofShortColor newPixelColor; \n for(int i = 0; i<10; i++){ \n pixelColor = rgbPixels->getColor(aDot.location.x+i, aDot.location.y); \n \n newPixelColor = paint(pixelColor); \n \n rgbPixels->setColor(aDot.location.x+i, aDot.location.y,newPixelColor); \n \n } \n particleTexture.loadData(* rgbPixels); \n } \n \n //-------------------------------------------------------------- \n void testApp::draw(){ \n particleTexture.draw(0, 0, w, h); \n } \n \n ofShortColor & testApp::paint(ofShortColor & _c){ \n \n _c.r += 10; \n _c.g += 2; \n _c.b += 3; \n \n _c.set(_c.r, _c.g, _c.b); \n _c.clamp(); \n \n return _c; \n } ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1257","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1257,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1257","assignee":null,"title":"ofShortPixels doesn't draw pixels correctly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-14T05:46:14Z","state":"open","user":{"url":"https://api.github.com/users/gazaebal","gravatar_id":"f9d7811bb6318fedf7e9f2fe8bfece32","avatar_url":"https://secure.gravatar.com/avatar/f9d7811bb6318fedf7e9f2fe8bfece32?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"gazaebal","id":1736190},"id":4557803,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T21:42:08Z","body":"if i'm not mistaken, the correct way of using ofMatrix4x4 in oF is `glMultMatrixf(myMatrix.getPtr())` or `glLoadMatrixf`.\nThis seems a bit uncomfortable for me.\n\nsome candidates are:\n\n```c++\nofPushMatrix(const ofMatrix4x4 &); //needs alternatives as you might not want to push at the time\nofLoadMatrix(const ofMatrix4x4 &);\nofMultMatrix(const ofMatrix4x4 &);\n\nofMatrix4x4::apply();\nofMatrix4x4::glLoadMatrix(matrixMode = OF_MATRIX_MODE_CURRENT);\n```\n\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1256","comments":5,"milestone":null,"number":1256,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1256","assignee":null,"title":"Feature ofPushMatrix(const ofMatrix4x4 &)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-13T18:20:29Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4554058,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-11T21:24:20Z","body":"\tunsigned char faceSize = 3;\n\tif(data.getNumIndices()){\n\t\tos << \"element face \" << data.getNumIndices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t} else if(data.getMode() == OF_PRIMITIVE_TRIANGLES) {\n\t\tos << \"element face \" << data.getNumVertices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t}\n\nThe facesize is being set as static as 3, but this results in strange exports...things open OK in Meshlab, but exporting to other programs with no faces seems like it won't work","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1252","comments":6,"milestone":null,"number":1252,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1252","assignee":null,"title":"0071 ply (mesh.save()) Point export is broken","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-11T19:45:53Z","state":"open","user":{"url":"https://api.github.com/users/laserpilot","gravatar_id":"07001341fe6c156dddd5b9d06d828cba","avatar_url":"https://secure.gravatar.com/avatar/07001341fe6c156dddd5b9d06d828cba?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"laserpilot","id":1041023},"id":4539985,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:33:31Z","body":"couple of minor bugfixes (absolute path wasn't being detected on second if [absolute] for windows paths)\r\nfixes unixy paths no matter what on windows","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1251","comments":8,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1251,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1251","assignee":null,"title":"Bugfix of to data path","labels":[],"closed_at":null,"created_at":"2012-05-10T06:44:20Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4507572,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1251.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1251","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1251.patch"}},{"updated_at":"2012-05-16T09:43:23Z","body":":(\r\n\r\nIt seems i'm getting double 'data/' in my paths\r\nafter a little tracking down, i found this is because ofSystemLoadDialog changes the current working directory\r\n\r\nso we could try and either fix that by popping the folder after the dialog, \r\nof for windows using something like ```GetModuleFileName``` to get the path of the current exe rather than using the current working directory\r\n\r\nI can't seem to run GetModuleFileName from ofUtils.cpp even though windows.h is included in ofConstants.h (included in ofUtils.h)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1250","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1250,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1250","assignee":null,"title":"bug: ofToDataPath broken again","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-05-10T06:35:24Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4507492,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:42:44Z","body":"'ofx TCPClient :: receiveRaw' was found in the proble.\n\nOriginal :\n\n\tint ofxTCPClient::receiveRawBytes(char * receiveBuffer, int numBytes){\n\t\t\t messageSize = TCPClient.Receive(receiveBuffer, numBytes);\t\n\t\t\t if(messageSize==0){\t\t\n\t\t\t\t\t\tclose();\t\n\t\t\t }\t\n\t\t\t return messageSize;\n\t}\n\nBut 'TCPClient.Receive (receiveBuffer, numBytes)' from '-1' may return\n\nI was modified\n\n\tstring ofxTCPClient::receiveRaw(){\n\t\t\t messageSize = TCPClient.Receive(tmpBuff, TCP_MAX_MSG_SIZE);\n\t\t\t if(messageSize==0){\n\t\t\t\t\t\tclose();\n\t\t\t }\n\t\t\t //TCPClient.Receive is return -1....\n\t\t\t else if(messageSize < 0){ \n\t\t\t\t\t\ttmpBuff[0] = 0;\n\t\t\t }\n\t\t\t else if(messageSize; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"b3b3a8bd17d4ed7557040a218c1db573"'), ('date', 'Tue, 29 May 2012 19:36:59 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"milestone":null,"state":"open","user":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofStringUtils:: feature discussion","html_url":"https://github.com/openframeworks/openFrameworks/issues/1132","comments":6,"assignee":null,"updated_at":"2012-04-02T02:05:52Z","body":"This is a feature discussion issue for what string features we should add to of.\r\nofZach mentioned some regexp ones from P5 match matchAll\r\nWould be great to get some eyes on this.\r\n\r\nOne approach would be a static class or namespace.\r\nThe idea would be we could include a variety of handy functions that would be useful for people not wanting to get into regexp\r\n\r\n\tofString::contains(str, \"apple\") //returns bool\r\n\tofString::starts(str, \"The\") //returns bool\r\n\tofString::ends(str, \".\") //returns bool\r\n\tofString::count(str, \"apples\") //count how many times apples appears in the \r\n\tofString::join(myVectorStr, \", \"); //this is currently ofJoinString\r\n\tofString::split(someText, \".\"); //this is currently ofSplitString\r\n\tofString::split(someHtml, \"<\", \">\"); //this is the same but returns a vector of things between the start and end delims\r\n\tofString::limit(someText, 200); //limit the text to 200 characters. optional arg to add ... to the end.\r\n\r\nQuestions:\r\n- Should we mirror P5 with match and matchAll or should we indicate that regexp is required? ie regexMatch regexMatchAll ?\r\n- Other string utils we could add?\r\n- Should it be ofStringUtils:: or ofString:: ?\r\n- Something to do a split and then return a vector of float int etc?","number":1132,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1132","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":3911629,"closed_at":null,"created_at":"2012-03-31T17:52:48Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofTTF feature discussion","html_url":"https://github.com/openframeworks/openFrameworks/issues/1131","comments":25,"assignee":null,"updated_at":"2012-05-27T17:40:30Z","body":"This is a feature discussion issue for what should be added / changed to ofTTF.\r\nWould be great to get some eyes on this from @vtron @ofzach @arturoc and anyone with thoughts on the matter.\r\n\r\nTextAreas:\r\n- Fit text to a box\r\n- Handle overflow ( ie either truncate or resize box height )\r\n- non ragged options\r\n- could textAreas work with both ofTTF and ofDrawBitmapString ? abstract text formatting?\r\n\r\nAlignment:\r\n- Left align a string\r\n- Right align\r\n- Center\r\n- Top align \r\n- Base align \r\n\r\nSpacing:\r\n- Kerning\r\n- Leading / line height\r\n\r\nLoading:\r\n- Allow for loading a font up to a max size for drawing at different sizes. \r\n- Allow for selection and loading of specific sizes within one object. ie: myFont.setCurrentSize(12); \r\n- Font family's / sets ? Bold, Italic etc? \r\n\r\nDrawing:\r\n- Allow for drawing font at different sizes. Scale font as needed. \r\n\r\nFormatting:\r\n- Could we somehow allow a string to have different colors, sizes. Right now it is a pain to change colors or sizes. \r\n- would this be replicating basic html or another approach? maybe better as an addon?\r\n\r\nInfo:\r\n- Ability to get the x and y position of the nth character in the string? useful maybe for cursor or selection?\r\n\r\n**Update:**\r\n-Underline\r\n-Render rect behind text ( a la what @kylemcdonald added to ofDrawBitmapString)\r\n-Scale type to fit a rect + keep aspect ratio\r\n-Crazy: text along a path :) ","number":1131,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1131","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"DDDDDD","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography"}],"id":3911537,"closed_at":null,"created_at":"2012-03-31T17:36:25Z"},{"milestone":{"state":"open","description":"","title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"number":5,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61810,"created_at":"2011-12-02T15:29:48Z"},"state":"open","user":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Define standard header for examples.","html_url":"https://github.com/openframeworks/openFrameworks/issues/1130","comments":0,"assignee":null,"updated_at":"2012-03-31T14:44:01Z","body":"Agree on a common format for a header in the contributed example files.","number":1130,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1130","labels":[{"color":"d1af26","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"cccc29","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation"},{"color":"37c200","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy"}],"id":3910580,"closed_at":null,"created_at":"2012-03-31T14:44:01Z"},{"milestone":{"state":"open","description":"","title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"number":5,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61810,"created_at":"2011-12-02T15:29:48Z"},"state":"open","user":{"gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"xcode 4 issues: scheme, auto-generation of schemes, rebuilding OF, sdk, etc","html_url":"https://github.com/openframeworks/openFrameworks/issues/1129","comments":5,"assignee":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-04-24T02:12:05Z","body":"\r\n\r\nXcode 4 mangles OF projects pretty badly in the following ways: \r\n\r\na) it autogenerates schemes, and \"openframeworks\" appears as the chosen scheme\r\nb) it sometimes chooses the wrong SDK for OF -- is there a way to set that?\r\nc) debug and release are not really clear, part of this is a shift in xcode -- but it's much harder to see how things are compiled and to set release or debug\r\nd) I still had issues with OF needing to be recompiled all the time. I tried to fix this, but we should make sure it's done right. the of lib was appearing red even though it had been built, etc. \r\n\r\nI've tried to fix some of this in detroit with the PG, but I don't think it's the right way to do it. Overall, it would be great to have projects work smoothly on xcode 4...\r\n","number":1129,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1129","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"993e7a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"444444","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator"}],"id":3910555,"closed_at":null,"created_at":"2012-03-31T14:39:04Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"upgrade scripts","html_url":"https://github.com/openframeworks/openFrameworks/issues/1128","comments":1,"assignee":null,"updated_at":"2012-03-31T16:32:04Z","body":"When deprecating api's (e.g. ofEvents, ofVertexes), perhaps we could help automate the changes through simple scripts to update api\r\nSuggest sticking to something close to how uncrustify scripts are run (and perhaps there are tools like uncrustify but specifically for this task)","number":1128,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1128","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"37c200","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy"},{"color":"DDDDDD","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals"}],"id":3910549,"closed_at":null,"created_at":"2012-03-31T14:38:19Z"},{"milestone":{"state":"open","description":"","title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"number":5,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61810,"created_at":"2011-12-02T15:29:48Z"},"state":"open","user":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"PG Feature request: Clean examples folder","html_url":"https://github.com/openframeworks/openFrameworks/issues/1126","comments":0,"assignee":null,"updated_at":"2012-04-09T16:47:04Z","body":"It would be nice (and useful for testing the PG) if the PG would get an option to clean the examples folders of all generated files. \r\n\r\nCurrently, the quickest option is to delete the examples folder on disk, and do `git reset --hard HEAD`.\r\n\r\nAs before, milestoned for 0071, but feel free to push back.","number":1126,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1126","labels":[{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"444444","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator"}],"id":3897090,"closed_at":null,"created_at":"2012-03-30T12:51:30Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"5008d5295e9bc2636313c7b50ed5981d","url":"https://api.github.com/users/jesusgollonet","login":"jesusgollonet","id":31100,"avatar_url":"https://secure.gravatar.com/avatar/5008d5295e9bc2636313c7b50ed5981d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"void dragEvent(ofDragInfo dragInfo) limited to 100 files in osx lion","html_url":"https://github.com/openframeworks/openFrameworks/issues/1124","comments":0,"assignee":null,"updated_at":"2012-03-29T16:47:29Z","body":"there is a hard limit of 100 files when using drag & drop into an of app. not sure if it's an of issue, but am curious if it comes from the hacked glutDragEventFunc ","number":1124,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1124","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"DDDDDD","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals"}],"id":3883598,"closed_at":null,"created_at":"2012-03-29T16:47:29Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"7398ab0bbd07832d0289f26773e65077","url":"https://api.github.com/users/imanhp","login":"imanhp","id":1216228,"avatar_url":"https://secure.gravatar.com/avatar/7398ab0bbd07832d0289f26773e65077?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"isFileChanged() for ofImage, ofVideoPlayer, ofSoundPlayer and ofFile","html_url":"https://github.com/openframeworks/openFrameworks/issues/1120","comments":2,"assignee":null,"updated_at":"2012-03-29T13:05:25Z","body":"When loading a file with ofImage, ofSoundPlayer , ofVideoPlayer-file or any ofFile it would be nice to be able to know if the file changed since it was loaded.\r\n\r\nIts very simple to implement with Poco::File->getLastModified() and it would be very nice if this would be built into the above classes.","number":1120,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1120","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":3856005,"closed_at":null,"created_at":"2012-03-28T16:21:45Z"},{"milestone":{"state":"open","description":"","title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"number":5,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61810,"created_at":"2011-12-02T15:29:48Z"},"state":"open","user":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Default paths.make for Android","html_url":"https://github.com/openframeworks/openFrameworks/issues/1118","comments":0,"assignee":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-30T12:19:59Z","body":"paths.make should be in the repo as an example on how to set it up correctly, but changes (i.e. paths unique to every user) to it should be ignored cause everyone will have a different version in their computers so we don't want personal changes to appear in git status.\r\n\r\nI think the best way to solve this is to rename it to paths.make.default, keep this in the repo, maybe with `` instead of your path, and have people make their own paths.make from that one. We track changes to paths.make.default and ignore paths.make. \r\n\r\nThis will probably also need a mechanism in the makefile to fail gracefully and remind the user, if his customized paths.make is missing.","number":1118,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1118","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"2bc4ad","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/android","name":"android"}],"id":3850655,"closed_at":null,"created_at":"2012-03-28T12:19:39Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"b87a82d7c86161432ee6388c7cbd5e2c","url":"https://api.github.com/users/armadillu","login":"armadillu","id":167057,"avatar_url":"https://secure.gravatar.com/avatar/b87a82d7c86161432ee6388c7cbd5e2c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Can't retrieve desired frame rate once set","html_url":"https://github.com/openframeworks/openFrameworks/issues/1117","comments":0,"assignee":null,"updated_at":"2012-04-18T17:13:36Z","body":"Once ofSetFrameRate() is called, I can't find a way to retrieve it. I think implementing a ofGetDesiredFrameRate() in ofAppRunner would make sense, also adding getDesiredFrameRate() to ofAppBaseWindow and all subclasses, where the actual value is stored. \r\n\r\nThis can be useful to compare the desired frame rate with actual frame rate and react accordingly if required.","number":1117,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1117","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":3825582,"closed_at":null,"created_at":"2012-03-27T11:48:00Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"37aca214d4875cd90af9d67072c82642","url":"https://api.github.com/users/vade","login":"vade","id":65011,"avatar_url":"https://secure.gravatar.com/avatar/37aca214d4875cd90af9d67072c82642?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofVBO updateIndexData incorrect buffer type.","html_url":"https://github.com/openframeworks/openFrameworks/issues/1116","comments":5,"assignee":null,"updated_at":"2012-03-26T22:27:14Z","body":"https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/gl/ofVbo.cpp#L343\r\n\r\nIndices should be specified as GL_ELEMENT_ARRAY_BUFFER unless I am mistaken.","number":1116,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1116","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"31e03a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed"},{"color":"DDDDDD","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D"}],"id":3813852,"closed_at":null,"created_at":"2012-03-26T18:26:05Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"2548dbd6a86902ed5260b5f76710b83c","url":"https://api.github.com/users/colormotor","login":"colormotor","id":1239872,"avatar_url":"https://secure.gravatar.com/avatar/2548dbd6a86902ed5260b5f76710b83c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"optimization level in xcode projects","html_url":"https://github.com/openframeworks/openFrameworks/issues/1115","comments":3,"assignee":null,"updated_at":"2012-03-26T18:45:51Z","body":"The default optimization settings for debug builds in example XCode projects is set to Fastest,Smallest thus making debugging very difficult, is there a specific reason for this?","number":1115,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1115","labels":[{"color":"993e7a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode"}],"id":3812318,"closed_at":null,"created_at":"2012-03-26T17:05:14Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"2548dbd6a86902ed5260b5f76710b83c","url":"https://api.github.com/users/colormotor","login":"colormotor","id":1239872,"avatar_url":"https://secure.gravatar.com/avatar/2548dbd6a86902ed5260b5f76710b83c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"macros in ofArduino","html_url":"https://github.com/openframeworks/openFrameworks/issues/1114","comments":1,"assignee":{"gravatar_id":"10960ba0f305803a1cdc7cd6188d643b","url":"https://api.github.com/users/joshuajnoble","login":"joshuajnoble","id":237423,"avatar_url":"https://secure.gravatar.com/avatar/10960ba0f305803a1cdc7cd6188d643b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-31T15:31:31Z","body":"I had some problems because of macro definitions in ofArduino.h overriding an enum in a a class of my codebase ( SHIFT )\r\nIt's not exactly a bug! but I would suggest using enums or const int instead of the macros to avoid any conflicts\r\nI solved the problem by modifying \r\n#define SHIFT 0x05 \r\ninto \r\nconst int SHIFT = 0x05;\r\n\r\nanother solution could be using enumerations as \r\nenum\r\n{\r\n ...\r\n SHIFT = 0x05,\r\n etc...\r\n};\r\n\r\nI believe this would not break any of the existing code\r\n","number":1114,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1114","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":3812275,"closed_at":null,"created_at":"2012-03-26T17:02:21Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"aa6e2a475cab75513c9cc435b28eef31","url":"https://api.github.com/users/OlexandrStepanov","login":"OlexandrStepanov","id":971079,"avatar_url":"https://secure.gravatar.com/avatar/aa6e2a475cab75513c9cc435b28eef31?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Issue with QtKitMovieGrabberExample in apps/devapps","html_url":"https://github.com/openframeworks/openFrameworks/issues/1112","comments":9,"assignee":null,"updated_at":"2012-03-27T14:56:56Z","body":"Hello.\r\n\r\nI'm trying to run camera frame grabing in OSX Lion.\r\nSimple ofVideoGrabber doesn't work - even if I link it with 10.6 SDK (and 10.6 is deployment target) I receive crash in initialization of ofVideoGrabber. Details are the same as in http://forum.openframeworks.cc/index.php/topic,6776.0.html\r\n\r\nI tryed QtKitMovieGrabberExample. It had some problems in compilation - texture property was not synthesized, I wrote this property and compilation run well.\r\nBut linking is fault. All I receive form linker is:\r\n\r\n*Ld bin/movieGrabberExampleDebug.app/Contents/MacOS/movieGrabberExampleDebug normal i386\r\n cd /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample\r\n setenv MACOSX_DEPLOYMENT_TARGET 10.6\r\n /Developer/usr/bin/clang++ -arch i386 -isysroot /Developer/SDKs/MacOSX10.6.sdk -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freeimage/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/GLee/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/rtAudio/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/fmodex/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freetype/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx -F/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin -F/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/glut/lib/osx -filelist /Users/yltastep/Library/Developer/Xcode/DerivedData/movieGrabberExample-aftkspwrgtotrteyzaplfbqzeasd/Build/Intermediates/movieGrabberExample.build/Debug/movieGrabberExample.build/Objects-normal/i386/movieGrabberExampleDebug.LinkFileList -mmacosx-version-min=10.6 -dead_strip ../../../libs/poco/lib/osx/PocoFoundation.a ../../../libs/poco/lib/osx/PocoNet.a ../../../libs/poco/lib/osx/PocoXML.a ../../../libs/poco/lib/osx/PocoUtil.a ../../../libs/tess2/lib/osx/tess2.a ../../../libs/glew/lib/osx/glew.a ../../../libs/cairo/lib/osx/cairo-script-interpreter.a ../../../libs/cairo/lib/osx/cairo.a ../../../libs/cairo/lib/osx/pixman-1.a ../../../libs/fmodex/lib/osx/libfmodex.dylib ../../../libs/rtAudio/lib/osx/rtAudio.a /Users/yltastep/Documents/XCode/openframeworks/libs/openFrameworksCompiled/lib/osx/openFrameworksDebug.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/GLee/lib/osx/GLee.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/rtAudio/lib/osx/rtAudio.a -framework AGL -framework ApplicationServices -framework AudioToolbox -framework Carbon -framework CoreAudio -framework CoreFoundation -framework CoreServices -framework OpenGL -framework QuickTime -framework AppKit -framework Cocoa -framework IOKit -framework GLUT /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoFoundation.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoNet.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoUtil.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoXML.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freetype/lib/osx/freetype.a -lfmodex /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx/freeimage.a -framework QTKit -framework Quartz -framework QuartzCore -o /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin/movieGrabberExampleDebug.app/Contents/MacOS/movieGrabberExampleDebug*\r\n\r\n**Command /Developer/usr/bin/clang++ failed with exit code 1**\r\n\r\nSo no explanation of problem.\r\n\r\nIs somebody ran this example successfully ?\r\nAnd what I'm doing wrong ?\r\n\r\nThanks in advance !\r\n\r\nWith regards.","number":1112,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1112","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"2a8296","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS"}],"id":3807459,"closed_at":null,"created_at":"2012-03-26T12:11:44Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"add a simple regex function like ofSplitString()","html_url":"https://github.com/openframeworks/openFrameworks/issues/1110","comments":1,"assignee":null,"updated_at":"2012-03-25T20:07:16Z","body":"Todd's example has this code a few times in it by hand, but I'm thinking it's so simple it could be added along side ofSplitString() and would be really useful ? for sure, more string utility functions are helpful, and for basic text parsing, this is great. Poco gives us this for free, so it doesn't seem like a huge stretch to think of something like this, plus find and replace, etc. Would make the regex example much shorter. \r\n\r\np5 has something similar, if that's a helpful argument: \r\n\r\nhttp://processing.org/reference/matchAll_.html\r\n\r\n\r\n\tvector < string > ofxRegex::getMatchedStrings (string contents, string regex );\r\n\tvector < string > ofxRegex::getMatchedStrings (string contents, string regex ){\r\n \r\n\t vector < string > results;\r\n\t RegularExpression regEx(regex);\r\n\t RegularExpression::Match match;\r\n \r\n\t while(regEx.match(contents, match) != 0) {\r\n \r\n\t // we get the sub string from the content\r\n\t // and then trim the content so that we\r\n\t // can continue to search \r\n\t string foundStr = contents.substr(match.offset, match.length);\r\n\t contents = contents.substr(match.offset + match.length);\r\n \r\n\t results.push_back(foundStr);\r\n \r\n\t }\r\n\t return results;\r\n\t}","number":1110,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1110","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"31e03a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed"}],"id":3799872,"closed_at":null,"created_at":"2012-03-25T18:56:37Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"mac paths don't seem right until you call \"ofToDataPath()\"","html_url":"https://github.com/openframeworks/openFrameworks/issues/1109","comments":3,"assignee":null,"updated_at":"2012-03-25T18:50:13Z","body":"code to recreate: \r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::setup(){\r\n system(\"pwd;\");\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::update(){\r\n system(\"pwd;\");\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::draw(){\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::keyPressed(int key){\r\n cout << ofToDataPath(\"temp\") << endl;\r\n}\r\n\r\nproduces: \r\n\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n../../../data/temp\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin/emptyExampleDebug.app/Contents/MacOS\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin/emptyExampleDebug.app/Contents/MacOS\r\n\r\nthis is because the code that fixes OSX paths isn't called until you call ofToDataPath(). a good fix I think would be to set ofDataPathRoot (which happens in ofToDataPath) somewhere early in ofRunApp(). Or should it happen even earlier?","number":1109,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1109","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"993e7a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"65a300","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize"},{"color":"2a8296","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS"}],"id":3799653,"closed_at":null,"created_at":"2012-03-25T18:18:28Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","url":"https://api.github.com/users/roymacdonald","login":"roymacdonald","id":974878,"avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"easyCam weird behavior when target changed","html_url":"https://github.com/openframeworks/openFrameworks/issues/1108","comments":7,"assignee":{"gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-04-09T13:06:18Z","body":"easycam behaves as expected when inited but as soon as I change it's target it begins to behave strangely.\r\nthere's this imaginary sphere that we are rotating (it's diameter is min (viewport.width, vieport.height)), when the mouse is dragged from inside to outside of it the rotation just jumps to a \"random\" rotation. \r\nas well when you have a the camera rotated more than 180º in some axis the \"trackball\" doesn't behave as expected. yet this behavior is not seen when the target hasn't been changed.\r\n\r\nDoes any one know what's going on?\r\n\r\nI just came across this but I haven't gone deeply into how easycam handles the mouse to rotate. \r\nI'll do so ASAP. If someone can give me any clues I'll really apreciate it.\r\n\r\nregards!","number":1108,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1108","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"DDDDDD","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D"}],"id":3795495,"closed_at":null,"created_at":"2012-03-25T00:01:54Z"},{"milestone":{"state":"open","description":"","title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"number":5,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61810,"created_at":"2011-12-02T15:29:48Z"},"state":"open","user":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"PG feature request: Generate makefile-only projects","html_url":"https://github.com/openframeworks/openFrameworks/issues/1103","comments":1,"assignee":null,"updated_at":"2012-04-09T16:47:18Z","body":"It would be great if the PG could also generate projects/examples for usage with Eclipse, i.e. just the makefile related files, no CB or other project files.","number":1103,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1103","labels":[{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"444444","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator"}],"id":3754055,"closed_at":null,"created_at":"2012-03-21T21:43:34Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"feature / bug - #pragma omp critical(ofLog)","html_url":"https://github.com/openframeworks/openFrameworks/issues/1098","comments":3,"assignee":null,"updated_at":"2012-03-19T16:18:43Z","body":"whenever i call ofLog beneath openmp i have to wrap it in ```#pragma omp critical (ofLog)``` otherwise i get a crash\r\ni found adding the line above \r\nhttps://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/utils/ofLog.cpp#L84\r\nworks pretty well\r\n\r\nany objections to having it in there?","number":1098,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1098","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"DDDDDD","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals"}],"id":3710293,"closed_at":null,"created_at":"2012-03-19T14:04:51Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"bug ofDirectory::open(string path) actually loads the entire dir into memory?","html_url":"https://github.com/openframeworks/openFrameworks/issues/1075","comments":2,"assignee":{"gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-15T20:34:17Z","body":"I'm finding that `ofDirector::listDir, open` are extremely slow\r\nit seems that it's actually loading the entire dir contents into memory\r\n\r\nit's possible to then do something like\r\n```\r\nofLoadImage(myPixels, dir.getFile(i));\r\n```\r\nand you can quickly load that image from memory. which is faster than\r\n```\r\nofLoadImage(myPixels, dir.getFile(i).getAbsolutePath());\r\n```\r\n\r\nBut this doesn't seem to work consistently (even though the slow listing is consistent)\r\nand surely isn't what we want.","number":1075,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1075","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"DDDDDD","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals"}],"id":3662214,"closed_at":null,"created_at":"2012-03-15T07:54:55Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"c1ec5161b69b4a990436deafb1170d64","url":"https://api.github.com/users/manuelgeoffray","login":"manuelgeoffray","id":808090,"avatar_url":"https://secure.gravatar.com/avatar/c1ec5161b69b4a990436deafb1170d64?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Alpha movies in GStreamer","html_url":"https://github.com/openframeworks/openFrameworks/issues/1070","comments":6,"assignee":null,"updated_at":"2012-03-14T16:03:06Z","body":"Hello,\r\nI needed alpha channel in short length video for a recent project.\r\nIn the forum there is some old zip file for a ofxAlphaVideoPlayer that is still working, but that's OS X & windows only as it's based on QT.\r\nI'm working on linux, and I didn't find anything for GStreamer, so I modified the existing ofGstUtils and ofGstVideoPlayer.\r\nWould you mind if I do a pull request for this?\r\nI can also provide an example with a short length video using animation codec.\r\nWhat do you think?","number":1070,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1070","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":3647640,"closed_at":null,"created_at":"2012-03-14T13:02:41Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"390ea42c23c2c383f973abdafa24bb07","url":"https://api.github.com/users/gabrielstuff","login":"gabrielstuff","id":285033,"avatar_url":"https://secure.gravatar.com/avatar/390ea42c23c2c383f973abdafa24bb07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Continuous integration","html_url":"https://github.com/openframeworks/openFrameworks/issues/1068","comments":10,"assignee":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-17T19:26:40Z","body":"Hey !\r\n\r\nMe again. Didn't find anywhere this infos. I'm currently testing the travis-ci.org service.\r\nAs many people are working on the project and as many many issue are raised, and fixed, I thought it could be great to add some test and thus the travis service.\r\n\r\nIt would avoid the problem met here :\r\nhttps://github.com/openframeworks/openFrameworks/commit/7ca7833ea1afb6bd5a6c54031e3fa688aa0c0ba8\r\nand the discussion here :\r\nhttps://github.com/openframeworks/openFrameworks/issues/804\r\nor there :\r\nhttps://github.com/openframeworks/openFrameworks/pull/921\r\n\r\nI read that :\r\n\r\n>feel free to make a unitTests folder at the root level of OF -\r\n> that is where all unitTests will go.\r\n\r\nBut didn't find them.\r\n\r\nThe travis service will permit to get the little badge we know well : \r\n[![Build Status](https://secure.travis-ci.org/soixantecircuits/openFrameworks.png?branch=master)](http://travis-ci.org/soixantecircuits/openFrameworks)\r\n\r\nAlso, why not adding some spec test, to ensure future development of features.\r\nI'm currently reading :\r\nhttp://www.squidoo.com/cplusplus-behaviour-driven-development-tools#module124841511\r\nhttp://sourceforge.net/apps/mediawiki/turtle/index.php?title=Turtle\r\n\r\nFor those who want some other nice reading :\r\n\r\nhttp://gamesfromwithin.com/exploring-the-c-unit-testing-framework-jungle\r\n\r\nThe travis test is here, currently it is a total fake, but I just proposed the idea of a test driven development\r\nhttp://travis-ci.org/#!/soixantecircuits/openFrameworks/builds/854259 ","number":1068,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1068","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"37c200","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy"}],"id":3631618,"closed_at":null,"created_at":"2012-03-13T15:49:23Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"390ea42c23c2c383f973abdafa24bb07","url":"https://api.github.com/users/gabrielstuff","login":"gabrielstuff","id":285033,"avatar_url":"https://secure.gravatar.com/avatar/390ea42c23c2c383f973abdafa24bb07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Automatic installer + dependencies handler","html_url":"https://github.com/openframeworks/openFrameworks/issues/1063","comments":7,"assignee":null,"updated_at":"2012-03-13T15:21:30Z","body":"Hi !\r\n\r\nRecently, I've been in lot of languages, from C++ to ruby, passing by the colosus of javascript and the sea of php. Dropping by various and strange framework such as the Cinder, the jQuery, the Rails, the Processing, etc ...\r\n\r\n## the situation \r\n\r\nWhat I have noticed is that a strong architecture and a really ease use of add-ons makes a framework get stronger. For instance, if we take a look at Ruby, we see that the use of gems give him a powerfull advance over his friend php. \r\n\r\n### the Rubyist\r\n\r\nThis way of thinking is getting even better with the http://gembundler.com/ [Bundler](http://gembundler.com/) friend. The gems have dependencies and a simple GemFile help to easily install all dependencies for one project.\r\n\r\n### the Cinderist\r\n\r\nFor Cinder, we get the block, as for OSX, it quiet easy and fast. Drag and drop and play/code.\r\n\r\n### the jQueryist\r\n\r\nWell, it is not frequent to have jQuery plugins depending on other jQuery plugins, but there are several way to handle dependencies on jQuery and JS.\r\n\r\n### the nodist\r\n\r\nThis lead us to http://npmjs.org/, which is really nice with dependencies.\r\nFor instance, if you tried cloud9ide, you know that you just have to make sure you get the proper package.json :\r\n\r\n```\r\n{\r\n \"name\": \"node-example\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": {\r\n \"express\": \"2.2.0\"\r\n }\r\n}\r\n```\r\n\r\nThis file ensure that everything before running the server will be installed via npm.\r\n\r\n### the ofist\r\n\r\nRight now, we just have the addons.make file, which is nice but does not do any lifting for us. We have to verify that the ofx addons has been downloaded and is installed in the right folder.\r\n\r\n- Why not creating a script that will allow to manage dependencies compilation ? \r\nI have this wonderful ofxJSONsettings, but he depends on [JSONCPP](http://jsoncpp.sourceforge.net/) and on boost, so here we will have :\r\n\r\npackage.json file in the ofxJSONsettings folder :\r\n\r\n```\r\n{\r\n \"name\": \"ofxJSONsettings\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": [{\r\n \"jsoncpp\": \"0.6.0-rc2\"\r\n \"url\":\"http://jsoncpp.svn.sourceforge.net/svnroot/jsoncpp/trunk/\"\r\n \"protocol\":\"svn\"\r\n }\r\n ]\r\n}\r\n```\r\n\r\nHum, then, we have our little bash script :\r\n\r\n`xadd -addon ofxJSONsettings`\r\n\r\nand for a project, we have to ensure that the make file run `xadd -addon ofxJSONsettings` if it does not find ofXJSONsettings.\r\n\r\nThis could lead to simplify and easify the use of plugin ! Hey, I want the new [mistubaRenderer](https://github.com/satoruhiga/ofxMitsubaRenderer) let's give a try :\r\n\r\n```\r\n{\r\n \"name\": \"ofxMitsubaRenderer\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": [{\r\n \"mitsuba\": \"0.1\"\r\n \"url\":\"https://www.mitsuba-renderer.org/hg/mitsuba-bidir\"\r\n \"protocol\":\"hg\"\r\n }\r\n ]\r\n}\r\n```\r\n\r\nWell, this would be simplify if everybody use some same pattern, and respect some convention.\r\n\r\nSo what do you guys think about that ?\r\n\r\n\r\nThank you !\r\n\r\n\r\n","number":1063,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1063","labels":[{"color":"d68e22","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"37c200","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy"}],"id":3627067,"closed_at":null,"created_at":"2012-03-13T10:44:57Z"},{"milestone":{"state":"open","description":"","title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"number":5,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61810,"created_at":"2011-12-02T15:29:48Z"},"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"regularize code for math addons","html_url":"https://github.com/openframeworks/openFrameworks/issues/1062","comments":4,"assignee":null,"updated_at":"2012-03-12T17:58:20Z","body":"right now there is a lot of duplicated code in the vector math classes. for example, normalize() and getNormalized() have separate implementations. if we follow the pattern of always implementing things in self-modifying methods, then providing copy-returning methods as alternatives, this will reduce the amount of code and make it harder to cause bugs or behavioral discrepancies.\r\n\r\n- implementations of an algorithm should always be self-modifying\r\n- copy-returning versions should be implemented using a differently named method, internally making a copy and calling the self-modifying version on the copy.\r\n\r\ne.g. something like (note, this isn't how it's implemented right now):\r\n\r\n\tinline ofVec2f& ofVec2f::normalize() {\r\n\t\tfloat length = (float)sqrt(x*x + y*y);\r\n\t\tif( length > 0 ) {\r\n\t\t\tx /= length;\r\n\t\t\ty /= length;\r\n\t\t}\r\n\t\treturn *this;\r\n\t}\r\n\r\n\tinline ofVec2f ofVec2f::getNormalized() const {\r\n\t\tofVec2f result = *this;\r\n\t\treturn result.normalize();\r\n\t}\r\n\r\ntaken from this post https://github.com/openframeworks/openFrameworks/pull/1061#issuecomment-4455601","number":1062,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1062","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"37c200","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy"}],"id":3614231,"closed_at":null,"created_at":"2012-03-12T16:33:06Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofVertexes?? ofCurveVertexes","html_url":"https://github.com/openframeworks/openFrameworks/issues/1055","comments":18,"assignee":null,"updated_at":"2012-03-13T13:07:11Z","body":"Just saw this is the documentation.\r\nVertexes is incorrect (wrong plural)\r\nVertices","number":1055,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1055","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"31e03a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed"}],"id":3605277,"closed_at":null,"created_at":"2012-03-12T01:50:19Z"}] + diff --git a/lib/github/tests/ReplayData/PaginatedList.testGettingTheReversedListDoesNotModifyTheOriginalList.txt b/lib/github/tests/ReplayData/PaginatedList.testGettingTheReversedListDoesNotModifyTheOriginalList.txt new file mode 100644 index 0000000000..b9195736f5 --- /dev/null +++ b/lib/github/tests/ReplayData/PaginatedList.testGettingTheReversedListDoesNotModifyTheOriginalList.txt @@ -0,0 +1,55 @@ +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4983'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '100300'), ('server', 'GitHub.com'), ('last-modified', 'Wed, 21 Aug 2013 10:42:46 GMT'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last"'), ('etag', '"ff413c4ac1c8950a3c117d577119cd9e"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 21 Aug 2013 10:54:13 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1377085393')] +[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2496","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2496/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2496/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2496/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2496","id":18345408,"number":2496,"title":"ofColor == and != operators ignore alpha","user":{"login":"rbeitra","id":78566,"avatar_url":"https://1.gravatar.com/avatar/e70c7c24ab262f6f057820f2f35edab7?d=https%3A%2F%2Fidenticons.github.com%2Fa32bc8141e168ff20fdfe3f0fbc72155.png","gravatar_id":"e70c7c24ab262f6f057820f2f35edab7","url":"https://api.github.com/users/rbeitra","html_url":"https://github.com/rbeitra","followers_url":"https://api.github.com/users/rbeitra/followers","following_url":"https://api.github.com/users/rbeitra/following{/other_user}","gists_url":"https://api.github.com/users/rbeitra/gists{/gist_id}","starred_url":"https://api.github.com/users/rbeitra/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rbeitra/subscriptions","organizations_url":"https://api.github.com/users/rbeitra/orgs","repos_url":"https://api.github.com/users/rbeitra/repos","events_url":"https://api.github.com/users/rbeitra/events{/privacy}","received_events_url":"https://api.github.com/users/rbeitra/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2013-08-21T10:02:25Z","updated_at":"2013-08-21T10:02:25Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Currently the == and != operators for ofColor only compare rgb, the alpha value is ignored. Is there a good reason why this is happening? Are many users expecting alpha to be ignored?\r\n\r\nI can think of 2 solutions here. Ideally:\r\n- fix these operator functions to also compare alpha\r\n\r\nOr if that will break things for people then at least:\r\n- add a new function (ofColor::equalsRGBA()?) which does it\r\n\r\n\r\nhttps://github.com/openframeworks/openFrameworks/blob/57f7670e594758ef36d75cf896da003f6081bd75/libs/openFrameworks/types/ofColor.cpp#L545\r\nhttps://github.com/openframeworks/openFrameworks/blob/57f7670e594758ef36d75cf896da003f6081bd75/libs/openFrameworks/types/ofColor.cpp#L551"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2495","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2495/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2495/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2495/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2495","id":18340779,"number":2495,"title":"ofHideCursor() not working on OSX 10.8 (v0.8.0)","user":{"login":"comoc","id":843396,"avatar_url":"https://1.gravatar.com/avatar/c5d3d0065be3563bd1361cca886b80d9?d=https%3A%2F%2Fidenticons.github.com%2F9bd74aa54d59a3ddcfc282a365dbe453.png","gravatar_id":"c5d3d0065be3563bd1361cca886b80d9","url":"https://api.github.com/users/comoc","html_url":"https://github.com/comoc","followers_url":"https://api.github.com/users/comoc/followers","following_url":"https://api.github.com/users/comoc/following{/other_user}","gists_url":"https://api.github.com/users/comoc/gists{/gist_id}","starred_url":"https://api.github.com/users/comoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/comoc/subscriptions","organizations_url":"https://api.github.com/users/comoc/orgs","repos_url":"https://api.github.com/users/comoc/repos","events_url":"https://api.github.com/users/comoc/events{/privacy}","received_events_url":"https://api.github.com/users/comoc/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2013-08-21T08:04:26Z","updated_at":"2013-08-21T08:21:10Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofHideCursor() seems not working on Mac OS X 10.8 with of_v0.8.0_osx_release.\r\n```c++\r\nvoid testApp::setup(){\r\n ofHideCursor(); // <- The cursor is still shown.\r\n}\r\n```\r\nFor reference, I tried following code, then works fine.\r\n```c++\r\nvoid testApp::setup(){\r\nifdef __APPLE__\r\n CGDisplayHideCursor(NULL); // <- OK\r\n#endif\r\n}\r\n```\r\nCompiled with Xcode 4.6.2."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2494","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2494/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2494/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2494/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2494","id":18335634,"number":2494,"title":"targetconditionals.h not found error in XCode with openframeworks 0.8","user":{"login":"Jiffer","id":2372348,"avatar_url":"https://1.gravatar.com/avatar/1a4365e1a5be1e4b894f60f2add73c6f?d=https%3A%2F%2Fidenticons.github.com%2F294f1d758201292712cfef7db1f9aa7c.png","gravatar_id":"1a4365e1a5be1e4b894f60f2add73c6f","url":"https://api.github.com/users/Jiffer","html_url":"https://github.com/Jiffer","followers_url":"https://api.github.com/users/Jiffer/followers","following_url":"https://api.github.com/users/Jiffer/following{/other_user}","gists_url":"https://api.github.com/users/Jiffer/gists{/gist_id}","starred_url":"https://api.github.com/users/Jiffer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Jiffer/subscriptions","organizations_url":"https://api.github.com/users/Jiffer/orgs","repos_url":"https://api.github.com/users/Jiffer/repos","events_url":"https://api.github.com/users/Jiffer/events{/privacy}","received_events_url":"https://api.github.com/users/Jiffer/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13/labels","id":375917,"number":13,"title":"0.8.1","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://2.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":34,"closed_issues":9,"state":"open","created_at":"2013-07-11T13:25:32Z","updated_at":"2013-08-21T08:18:48Z","due_on":"2013-09-08T07:00:00Z"},"comments":0,"created_at":"2013-08-21T04:30:04Z","updated_at":"2013-08-21T08:18:48Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I was getting this error out of the box with osx 10.8.1 and xcode 4.6.3. I had to install the command line tools and that resolved it for me.\r\n\r\nGo to Xcode > Preferences > Downloads and click on \"install\" for the command line tools \r\n\r\ndid some digging and didn't see this addressed for the most (as of now) recent versions of things but I did find many other things to try that didn't work before stumbling on this."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2493","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2493/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2493/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2493/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2493","id":18322687,"number":2493,"title":"const-corrections","user":{"login":"bakercp","id":300484,"avatar_url":"https://2.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https%3A%2F%2Fidenticons.github.com%2F4aaaf6f29fe96098740aa5f98b6c8b12.png","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","url":"https://api.github.com/users/bakercp","html_url":"https://github.com/bakercp","followers_url":"https://api.github.com/users/bakercp/followers","following_url":"https://api.github.com/users/bakercp/following{/other_user}","gists_url":"https://api.github.com/users/bakercp/gists{/gist_id}","starred_url":"https://api.github.com/users/bakercp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bakercp/subscriptions","organizations_url":"https://api.github.com/users/bakercp/orgs","repos_url":"https://api.github.com/users/bakercp/repos","events_url":"https://api.github.com/users/bakercp/events{/privacy}","received_events_url":"https://api.github.com/users/bakercp/received_events","type":"User"},"labels":[],"state":"open","assignee":{"login":"bakercp","id":300484,"avatar_url":"https://2.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https%3A%2F%2Fidenticons.github.com%2F4aaaf6f29fe96098740aa5f98b6c8b12.png","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","url":"https://api.github.com/users/bakercp","html_url":"https://github.com/bakercp","followers_url":"https://api.github.com/users/bakercp/followers","following_url":"https://api.github.com/users/bakercp/following{/other_user}","gists_url":"https://api.github.com/users/bakercp/gists{/gist_id}","starred_url":"https://api.github.com/users/bakercp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bakercp/subscriptions","organizations_url":"https://api.github.com/users/bakercp/orgs","repos_url":"https://api.github.com/users/bakercp/repos","events_url":"https://api.github.com/users/bakercp/events{/privacy}","received_events_url":"https://api.github.com/users/bakercp/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://2.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":53,"closed_issues":8,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-08-21T01:16:45Z","due_on":"2013-10-31T07:00:00Z"},"comments":0,"created_at":"2013-08-20T21:30:09Z","updated_at":"2013-08-21T03:02:16Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/2493","diff_url":"https://github.com/openframeworks/openFrameworks/pull/2493.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/2493.patch"},"body":"~~Both `enableTextureTarget()` and `disableTextureTarget()` might raise some questions about their `const`-ness, but those member functions (which conditionally access an outside global state) are kind of awkwardly situated to begin with.\r\n\r\nThis is API changing and will likely break any addons that extend the various interfaces and helper classes (such as `ofVideoPlayer`).~~\r\n\r\n... in the meantime, this evolved into a little bigger (but still important project). I would propose that we not try to fix every little const problem in one PR, but this one can focus on video and images/pixels/textures, which are tightly coupled."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2492","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2492/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2492/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2492/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2492","id":18313623,"number":2492,"title":"add install scripts for openSUSE in scripts/linux/opensuse","user":{"login":"prusnak","id":42201,"avatar_url":"https://0.gravatar.com/avatar/b54b0eb056f30cc9c4daf193cf8eabae?d=https%3A%2F%2Fidenticons.github.com%2Ffca7ac68a9bcfe7ec3a017257471f198.png","gravatar_id":"b54b0eb056f30cc9c4daf193cf8eabae","url":"https://api.github.com/users/prusnak","html_url":"https://github.com/prusnak","followers_url":"https://api.github.com/users/prusnak/followers","following_url":"https://api.github.com/users/prusnak/following{/other_user}","gists_url":"https://api.github.com/users/prusnak/gists{/gist_id}","starred_url":"https://api.github.com/users/prusnak/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/prusnak/subscriptions","organizations_url":"https://api.github.com/users/prusnak/orgs","repos_url":"https://api.github.com/users/prusnak/repos","events_url":"https://api.github.com/users/prusnak/events{/privacy}","received_events_url":"https://api.github.com/users/prusnak/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2013-08-20T18:46:26Z","updated_at":"2013-08-20T19:04:01Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/2492","diff_url":"https://github.com/openframeworks/openFrameworks/pull/2492.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/2492.patch"},"body":"I created install scripts for openSUSE distribution by modifying the ones for Fedora."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2491","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2491/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2491/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2491/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2491","id":18283673,"number":2491,"title":"ofxOscReceiver crashes if space in the name","user":{"login":"jvcleave","id":150037,"avatar_url":"https://2.gravatar.com/avatar/9c0384a91739bea093f453cf40a59742?d=https%3A%2F%2Fidenticons.github.com%2F5ed96817efb118a36c00303b90e4b003.png","gravatar_id":"9c0384a91739bea093f453cf40a59742","url":"https://api.github.com/users/jvcleave","html_url":"https://github.com/jvcleave","followers_url":"https://api.github.com/users/jvcleave/followers","following_url":"https://api.github.com/users/jvcleave/following{/other_user}","gists_url":"https://api.github.com/users/jvcleave/gists{/gist_id}","starred_url":"https://api.github.com/users/jvcleave/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jvcleave/subscriptions","organizations_url":"https://api.github.com/users/jvcleave/orgs","repos_url":"https://api.github.com/users/jvcleave/repos","events_url":"https://api.github.com/users/jvcleave/events{/privacy}","received_events_url":"https://api.github.com/users/jvcleave/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2013-08-20T08:36:18Z","updated_at":"2013-08-20T10:02:41Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"to replicate change \"check\" to \"check me\" in oscParametersReceiver and oscParametersSender\r\n\r\nbacktrace\r\n````\r\n#0 0x00026bf4 in ofxOscReceiver::getParameter (this=0x13dec14, parameter=@0x13ded9c) at ofxOscReceiver.cpp:235\r\n#1 0x00024d9d in ofxOscParameterSync::update (this=0x13dec10) at ofxOscParameterSync.cpp:31\r\n#2 0x00017c6c in ofApp::update (this=0x13dec00) at ofApp.cpp:27\r\n#3 0x0001613d in ofBaseApp::update (this=0x13dec00, args=@0x6acb35) at ofBaseApp.h:44\r\n#4 0x0031d3dc in Poco::PriorityDelegate::notify (this=, sender=0x0, arguments=) at PriorityDelegate.h:168\r\n#5 0x00321e0a in Poco::PriorityStrategy >::notify () at /Volumes/WORK_IN_PROGRESS/OPENFRAMEWORKS/openFrameworks/libs/poco/include/Poco/PriorityStrategy.h:81\r\n#6 0x00321e0a in Poco::AbstractEvent >, Poco::AbstractPriorityDelegate, Poco::FastMutex>::notify (this=, pSender=0x0, args=@0x6acb35) at PriorityStrategy.h:241\r\n#7 0x00320673 in ofNotifyEvent, ofEventArgs> (event=@0x13df450, args=@0x6acb35) at ofEventUtils.h:172\r\n#8 0x0031ffc0 in ofNotifyUpdate () at ofEvents.cpp:165\r\n#9 0x00363c89 in ofAppGLFWWindow::runAppViaInfiniteLoop (this=0xd3ca30, appPtr=0x13dec00) at ofAppGLFWWindow.cpp:286\r\n#10 0x00319feb in ofRunApp (OFSA=0x13dec00) at ofAppRunner.cpp:137\r\n#11 0x00002e6a in main () at main.cpp:11\r\n````\r\n![screen shot 2013-08-20 at 4 27 39 am](https://f.cloud.github.com/assets/150037/991978/7ca33fa8-0973-11e3-9dc4-299ff86d19a1.png)\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2490","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2490/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2490/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2490/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2490","id":18257205,"number":2490,"title":"OF_RECTMODE_CENTER not playing nice with textures (0.8.0)","user":{"login":"prisonerjohn","id":119702,"avatar_url":"https://1.gravatar.com/avatar/b52cabeecffe4497699db813a715456f?d=https%3A%2F%2Fidenticons.github.com%2F00cfaa1a8406a24a7a9f07482e2b1938.png","gravatar_id":"b52cabeecffe4497699db813a715456f","url":"https://api.github.com/users/prisonerjohn","html_url":"https://github.com/prisonerjohn","followers_url":"https://api.github.com/users/prisonerjohn/followers","following_url":"https://api.github.com/users/prisonerjohn/following{/other_user}","gists_url":"https://api.github.com/users/prisonerjohn/gists{/gist_id}","starred_url":"https://api.github.com/users/prisonerjohn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/prisonerjohn/subscriptions","organizations_url":"https://api.github.com/users/prisonerjohn/orgs","repos_url":"https://api.github.com/users/prisonerjohn/repos","events_url":"https://api.github.com/users/prisonerjohn/events{/privacy}","received_events_url":"https://api.github.com/users/prisonerjohn/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-2D","name":"section-2D","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/regression","name":"regression","color":"e10c02"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13/labels","id":375917,"number":13,"title":"0.8.1","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://2.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":34,"closed_issues":9,"state":"open","created_at":"2013-07-11T13:25:32Z","updated_at":"2013-08-21T08:18:48Z","due_on":"2013-09-08T07:00:00Z"},"comments":2,"created_at":"2013-08-19T19:01:24Z","updated_at":"2013-08-20T09:55:46Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"If I set `ofSetRectMode(OF_RECTMODE_CENTER);` textures are stuck to the top-left of the window, no matter what (x, y) params I give to `draw(x, y, w, h)`.\r\n\r\nHere is an example ofApp.h\r\n```cpp\r\n#pragma once\r\n\r\n#include \"ofMain.h\"\r\n\r\nclass ofApp : public ofBaseApp{\r\n\r\n\tpublic:\r\n\t\tvoid setup();\r\n\t\tvoid update();\r\n\t\tvoid draw();\r\n\r\n\t\tofImage image;\r\n};\r\n```\r\n\r\nAnd the matching ofApp.cpp\r\n```cpp\r\n#include \"ofApp.h\"\r\n\r\n//--------------------------------------------------------------\r\nvoid ofApp::setup(){\r\n ofSetRectMode(OF_RECTMODE_CENTER);\r\n \r\n image.loadImage(\"tdf_1972_poster.jpg\");\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid ofApp::update(){\r\n\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid ofApp::draw(){\r\n image.draw(mouseX, mouseY, 320, 240);\r\n ofRect(mouseX, mouseY, image.getWidth(), image.getHeight());\r\n}\r\n```\r\n\r\nHaving the same issue on tag `0.8.0` and `master`, with `ofImage` and `ofVideoPlayer`. It works as expected if I take out the call to `ofSetRectMode();`.\r\n\r\n![screen shot 2013-08-19 at 3 00 32 pm](https://f.cloud.github.com/assets/119702/988426/aea3da5c-0901-11e3-85e0-e03a44e6105a.png)\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2489","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2489/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2489/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2489/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2489","id":18249318,"number":2489,"title":"ofQTKitGrabber logs at verbose level, but ignores setVerbose","user":{"login":"admsyn","id":609318,"avatar_url":"https://1.gravatar.com/avatar/9bfde17cfd50ff8f12cae51ab1079d72?d=https%3A%2F%2Fidenticons.github.com%2Fd3361161dca2fbe24ffea23b9a2d233b.png","gravatar_id":"9bfde17cfd50ff8f12cae51ab1079d72","url":"https://api.github.com/users/admsyn","html_url":"https://github.com/admsyn","followers_url":"https://api.github.com/users/admsyn/followers","following_url":"https://api.github.com/users/admsyn/following{/other_user}","gists_url":"https://api.github.com/users/admsyn/gists{/gist_id}","starred_url":"https://api.github.com/users/admsyn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/admsyn/subscriptions","organizations_url":"https://api.github.com/users/admsyn/orgs","repos_url":"https://api.github.com/users/admsyn/repos","events_url":"https://api.github.com/users/admsyn/events{/privacy}","received_events_url":"https://api.github.com/users/admsyn/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2013-08-19T16:30:42Z","updated_at":"2013-08-20T09:47:57Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"In `listDevices` ofQTKitGrabber [logs devices at verbose level](https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/video/ofQTKitGrabber.mm#L144). However, it also [ignores setVerbose](https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/video/ofQTKitGrabber.mm#L923).\r\n\r\nThis means that seemingly correct code like:\r\n\r\n```\r\nvidGrabber.setVerbose(true);\r\nvidGrabber.listDevices();\r\n```\r\n\r\nprints nothing.\r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2488","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2488/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2488/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2488/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2488","id":18213515,"number":2488,"title":"DONTMERGEYET - Feature updates HTTP Requests","user":{"login":"danthemellowman","id":719564,"avatar_url":"https://1.gravatar.com/avatar/79621943dfc6272eae9697464ad33696?d=https%3A%2F%2Fidenticons.github.com%2Fb03d3f3b4371f2676213314af7fe19d8.png","gravatar_id":"79621943dfc6272eae9697464ad33696","url":"https://api.github.com/users/danthemellowman","html_url":"https://github.com/danthemellowman","followers_url":"https://api.github.com/users/danthemellowman/followers","following_url":"https://api.github.com/users/danthemellowman/following{/other_user}","gists_url":"https://api.github.com/users/danthemellowman/gists{/gist_id}","starred_url":"https://api.github.com/users/danthemellowman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danthemellowman/subscriptions","organizations_url":"https://api.github.com/users/danthemellowman/orgs","repos_url":"https://api.github.com/users/danthemellowman/repos","events_url":"https://api.github.com/users/danthemellowman/events{/privacy}","received_events_url":"https://api.github.com/users/danthemellowman/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":6,"created_at":"2013-08-18T20:44:29Z","updated_at":"2013-08-20T18:33:35Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/2488","diff_url":"https://github.com/openframeworks/openFrameworks/pull/2488.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/2488.patch"},"body":"Let me know what I should change. You can test the app I added to devApps, httpRequests, to see how it all works. Use the 1-7 keys to change between the different requests to HTTPBin. \r\n\r\n(I know I need to fix my computers' GIT accounts/setup they suffer from multiple personalities) "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2487","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2487/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2487/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2487/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2487","id":18203928,"number":2487,"title":"ofFBO::numColorbuffers BUG! . (of0.8.0)","user":{"login":"yty","id":841770,"avatar_url":"https://2.gravatar.com/avatar/a8010f501bbf6646afd69a8c3afc773a?d=https%3A%2F%2Fidenticons.github.com%2Ffd07b54170df1ee5062afa89905d7511.png","gravatar_id":"a8010f501bbf6646afd69a8c3afc773a","url":"https://api.github.com/users/yty","html_url":"https://github.com/yty","followers_url":"https://api.github.com/users/yty/followers","following_url":"https://api.github.com/users/yty/following{/other_user}","gists_url":"https://api.github.com/users/yty/gists{/gist_id}","starred_url":"https://api.github.com/users/yty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yty/subscriptions","organizations_url":"https://api.github.com/users/yty/orgs","repos_url":"https://api.github.com/users/yty/repos","events_url":"https://api.github.com/users/yty/events{/privacy}","received_events_url":"https://api.github.com/users/yty/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/regression","name":"regression","color":"e10c02"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13/labels","id":375917,"number":13,"title":"0.8.1","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://2.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":34,"closed_issues":9,"state":"open","created_at":"2013-07-11T13:25:32Z","updated_at":"2013-08-21T08:18:48Z","due_on":"2013-09-08T07:00:00Z"},"comments":3,"created_at":"2013-08-18T06:39:24Z","updated_at":"2013-08-20T09:31:40Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"vs2012+win7+of0.80\r\n\r\nnumColorbuffers set anything, textureNum Always 1.\r\n\r\n...\r\n ofFbo\t\t\tbaseMaskFbo;\r\n ofFbo\t\t\tanalyzeFbo;\r\n\tofFbo::Settings s;\r\n\ts.width\t\t\t=1024;\r\n\ts.height\t\t\t= 768;\r\n\ts.internalformat = GL_LUMINANCE;\r\n\ts.numSamples\t\t= 0;\r\n\ts.numColorbuffers\t= 7; \r\n\tbaseMaskFbo.allocate(s);\r\n...\r\n\r\nof0.80:\r\n\tcout << baseMaskFbo.getNumTextures() << endl; ===> 1 BUG!!!\r\nof0.74:\r\n cout << baseMaskFbo.getNumTextures() << endl; ===> 7 OK!!!"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2485","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2485/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2485/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2485/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2485","id":18191632,"number":2485,"title":"The ofPixels OF0.74 and OF0.80 What is the difference?","user":{"login":"yty","id":841770,"avatar_url":"https://2.gravatar.com/avatar/a8010f501bbf6646afd69a8c3afc773a?d=https%3A%2F%2Fidenticons.github.com%2Ffd07b54170df1ee5062afa89905d7511.png","gravatar_id":"a8010f501bbf6646afd69a8c3afc773a","url":"https://api.github.com/users/yty","html_url":"https://github.com/yty","followers_url":"https://api.github.com/users/yty/followers","following_url":"https://api.github.com/users/yty/following{/other_user}","gists_url":"https://api.github.com/users/yty/gists{/gist_id}","starred_url":"https://api.github.com/users/yty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yty/subscriptions","organizations_url":"https://api.github.com/users/yty/orgs","repos_url":"https://api.github.com/users/yty/repos","events_url":"https://api.github.com/users/yty/events{/privacy}","received_events_url":"https://api.github.com/users/yty/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-2D","name":"section-2D","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/regression","name":"regression","color":"e10c02"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13/labels","id":375917,"number":13,"title":"0.8.1","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://2.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":34,"closed_issues":9,"state":"open","created_at":"2013-07-11T13:25:32Z","updated_at":"2013-08-21T08:18:48Z","due_on":"2013-09-08T07:00:00Z"},"comments":2,"created_at":"2013-08-17T09:15:04Z","updated_at":"2013-08-20T09:28:32Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"```\r\nofPixels pixels;\r\nofImage img;\r\n\r\nofSetDataPathRoot(\"E:/Program Files/of_v0.8.0_vs_release/examples/graphics/imageLoaderExample/bin/data/images/\");\r\nimg.loadImage(\"transparency.png\");\r\nimg.getTextureReference().readToPixels(pixels);\r\n```\r\n\r\n0.74 => ok\r\n\r\n0.80 => error\r\n\r\n[ofPixels: error ] allocate(): unknown image type, not allocating\r\n[ofGLUtils: error ] ofGetGlFormatAndType(): internal format not recognized, returning GL_RGBA\r\n\r\nIf you add “pixels.allocate(img.getWidth(),img.getHeight(),OF_IMAGE_COLOR_ALPHA);”\r\n0.80=>error\r\n[ofPixels: error ] allocate(): unknown image type, not allocating"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2484","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2484/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2484/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2484/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2484","id":18191355,"number":2484,"title":"serialExample Exit exception . (of0.8.0)","user":{"login":"yty","id":841770,"avatar_url":"https://2.gravatar.com/avatar/a8010f501bbf6646afd69a8c3afc773a?d=https%3A%2F%2Fidenticons.github.com%2Ffd07b54170df1ee5062afa89905d7511.png","gravatar_id":"a8010f501bbf6646afd69a8c3afc773a","url":"https://api.github.com/users/yty","html_url":"https://github.com/yty","followers_url":"https://api.github.com/users/yty/followers","following_url":"https://api.github.com/users/yty/following{/other_user}","gists_url":"https://api.github.com/users/yty/gists{/gist_id}","starred_url":"https://api.github.com/users/yty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yty/subscriptions","organizations_url":"https://api.github.com/users/yty/orgs","repos_url":"https://api.github.com/users/yty/repos","events_url":"https://api.github.com/users/yty/events{/privacy}","received_events_url":"https://api.github.com/users/yty/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2013-08-17T08:38:59Z","updated_at":"2013-08-17T08:38:59Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"vs2012 +win7sp1+of0.8.0\r\n\r\nrelease and debug..compiler ===> pressed Esc \r\n\r\nrelease : ==> free.c \r\nvoid __cdecl _free_base (void * pBlock)\r\n{\r\n\r\n int retval = 0;\r\n\r\n\r\n if (pBlock == NULL)\r\n return;\r\n\r\n RTCCALLBACK(_RTC_Free_hook, (pBlock, 0));\r\n\r\n retval = HeapFree(_crtheap, 0, pBlock);\r\n if (retval == 0) ===========================>> Exception \r\n {\r\n errno = _get_errno_from_oserr(GetLastError());\r\n }\r\n}\r\n\r\ndebug: ===>xtree\r\n\r\nPairii _Eqrange(const key_type& _Keyval)\r\n\t\t{\t// find leftmost node not less than _Keyval\r\n\t\t_Nodeptr _Pnode = _Root();\r\n\t\t_Nodeptr _Lonode = this->_Myhead;\t// end() if search fails\r\n\t\t_Nodeptr _Hinode = this->_Myhead;\t// end() if search fails\r\n\r\n\t\twhile (!this->_Isnil(_Pnode)) ================>> Exception \r\n ........\r\n}\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2481","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2481/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2481/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2481/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2481","id":18182396,"number":2481,"title":"ofRectRounded does not respond to ofSetCircleResolution or ofSetCurveResolution","user":{"login":"rezaali","id":555207,"avatar_url":"https://2.gravatar.com/avatar/548374013b9c6e50ebbd2294e12d4f31?d=https%3A%2F%2Fidenticons.github.com%2F3a40e945e1f4b9b9b7a99b8d18c2c8c1.png","gravatar_id":"548374013b9c6e50ebbd2294e12d4f31","url":"https://api.github.com/users/rezaali","html_url":"https://github.com/rezaali","followers_url":"https://api.github.com/users/rezaali/followers","following_url":"https://api.github.com/users/rezaali/following{/other_user}","gists_url":"https://api.github.com/users/rezaali/gists{/gist_id}","starred_url":"https://api.github.com/users/rezaali/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rezaali/subscriptions","organizations_url":"https://api.github.com/users/rezaali/orgs","repos_url":"https://api.github.com/users/rezaali/repos","events_url":"https://api.github.com/users/rezaali/events{/privacy}","received_events_url":"https://api.github.com/users/rezaali/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-2D","name":"section-2D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2013-08-16T22:37:49Z","updated_at":"2013-08-20T09:22:39Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":""},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2479","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2479/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2479/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2479/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2479","id":18151262,"number":2479,"title":"add read-only access to programmable GL matrix stack","user":{"login":"tgfrerer","id":423509,"avatar_url":"https://1.gravatar.com/avatar/b37673dd0fb953e948cfd5475d49de9f?d=https%3A%2F%2Fidenticons.github.com%2F88b2d0ec0c458a087a93354fbcd730e6.png","gravatar_id":"b37673dd0fb953e948cfd5475d49de9f","url":"https://api.github.com/users/tgfrerer","html_url":"https://github.com/tgfrerer","followers_url":"https://api.github.com/users/tgfrerer/followers","following_url":"https://api.github.com/users/tgfrerer/following{/other_user}","gists_url":"https://api.github.com/users/tgfrerer/gists{/gist_id}","starred_url":"https://api.github.com/users/tgfrerer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tgfrerer/subscriptions","organizations_url":"https://api.github.com/users/tgfrerer/orgs","repos_url":"https://api.github.com/users/tgfrerer/repos","events_url":"https://api.github.com/users/tgfrerer/events{/privacy}","received_events_url":"https://api.github.com/users/tgfrerer/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2013-08-16T10:58:22Z","updated_at":"2013-08-19T15:48:30Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/2479","diff_url":"https://github.com/openframeworks/openFrameworks/pull/2479.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/2479.patch"},"body":"in 'classic' OpenGL 2.0, you could call:\r\n\r\n````glGetFloatv(GL_MODELVIEW_MATRIX, matrixPtr);````\r\n\r\nTo read back the current matrix state from the GPU.\r\n\r\nThis is not possible with modern OpenGL, since the matrix stack is now client-side.\r\n\r\nWith this PR, we get this functionality back into the programmable GL renderer pipeline. Query the current matrix state as in:\r\n\r\n````ofMatrix4x4 currentModelViewMatrix = ofGetGLProgrammableRenderer()->getModelViewMatrix();````\r\n\r\nSince these are read-only methods, they are marked ````const````\r\n\r\nSigned-off-by: tgfrerer "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2478","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2478/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2478/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2478/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2478","id":18150369,"number":2478,"title":"Replacing GLSurfaceView with TextureView","user":{"login":"ikillbombs","id":1842262,"avatar_url":"https://1.gravatar.com/avatar/0e972803504e237e42c9a680885498c8?d=https%3A%2F%2Fidenticons.github.com%2F24e60592283a8e112c32915b7846022d.png","gravatar_id":"0e972803504e237e42c9a680885498c8","url":"https://api.github.com/users/ikillbombs","html_url":"https://github.com/ikillbombs","followers_url":"https://api.github.com/users/ikillbombs/followers","following_url":"https://api.github.com/users/ikillbombs/following{/other_user}","gists_url":"https://api.github.com/users/ikillbombs/gists{/gist_id}","starred_url":"https://api.github.com/users/ikillbombs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ikillbombs/subscriptions","organizations_url":"https://api.github.com/users/ikillbombs/orgs","repos_url":"https://api.github.com/users/ikillbombs/repos","events_url":"https://api.github.com/users/ikillbombs/events{/privacy}","received_events_url":"https://api.github.com/users/ikillbombs/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/android","name":"android","color":"2bc4ad"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2013-08-16T10:30:22Z","updated_at":"2013-08-20T09:48:45Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hi everyone,\r\n\r\nI was wondering if it's a good idea to replace Android GLSurfaceView with GLTextureView. The advantages of replacing this is that multiple views can be combined. after this modification we can create a mapKit for Android and combine it with a native GUI.\r\n\r\nHere's an example link:\r\nhttps://github.com/eaglesakura/gltextureview/tree/issue/1/master"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2477","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2477/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2477/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2477/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2477","id":18146713,"number":2477,"title":"ofxgui setUseTTF bug! (of0.8.0)","user":{"login":"yty","id":841770,"avatar_url":"https://2.gravatar.com/avatar/a8010f501bbf6646afd69a8c3afc773a?d=https%3A%2F%2Fidenticons.github.com%2Ffd07b54170df1ee5062afa89905d7511.png","gravatar_id":"a8010f501bbf6646afd69a8c3afc773a","url":"https://api.github.com/users/yty","html_url":"https://github.com/yty","followers_url":"https://api.github.com/users/yty/followers","following_url":"https://api.github.com/users/yty/following{/other_user}","gists_url":"https://api.github.com/users/yty/gists{/gist_id}","starred_url":"https://api.github.com/users/yty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yty/subscriptions","organizations_url":"https://api.github.com/users/yty/orgs","repos_url":"https://api.github.com/users/yty/repos","events_url":"https://api.github.com/users/yty/events{/privacy}","received_events_url":"https://api.github.com/users/yty/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2013-08-16T08:38:14Z","updated_at":"2013-08-20T09:19:09Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"...\r\ngui.add(twoCircles.setup(\"two circles\"));\r\ngui.add(ringButton.setup(\"ring\"));\r\ngui.add(screenSize.setup(\"screen size\", \"\"));\r\nguiExample =>gui.setUseTTF(true);\r\n...\r\n\r\nText display error....\r\n\r\n![guibug](https://f.cloud.github.com/assets/841770/974290/01366e98-064f-11e3-8e69-146ec8c3a74f.jpg)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2476","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2476/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2476/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2476/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2476","id":18144117,"number":2476,"title":"parameterGroupExample error! (of0.8.0)","user":{"login":"yty","id":841770,"avatar_url":"https://2.gravatar.com/avatar/a8010f501bbf6646afd69a8c3afc773a?d=https%3A%2F%2Fidenticons.github.com%2Ffd07b54170df1ee5062afa89905d7511.png","gravatar_id":"a8010f501bbf6646afd69a8c3afc773a","url":"https://api.github.com/users/yty","html_url":"https://github.com/yty","followers_url":"https://api.github.com/users/yty/followers","following_url":"https://api.github.com/users/yty/following{/other_user}","gists_url":"https://api.github.com/users/yty/gists{/gist_id}","starred_url":"https://api.github.com/users/yty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yty/subscriptions","organizations_url":"https://api.github.com/users/yty/orgs","repos_url":"https://api.github.com/users/yty/repos","events_url":"https://api.github.com/users/yty/events{/privacy}","received_events_url":"https://api.github.com/users/yty/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13/labels","id":375917,"number":13,"title":"0.8.1","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://2.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":34,"closed_issues":9,"state":"open","created_at":"2013-07-11T13:25:32Z","updated_at":"2013-08-21T08:18:48Z","due_on":"2013-09-08T07:00:00Z"},"comments":6,"created_at":"2013-08-16T07:07:57Z","updated_at":"2013-08-20T09:25:21Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"E:\\Program Files\\of_v0.8.0_vs_release\\examples\\gui\\parameterGroupExample\r\nvs2012+win7...\r\n\r\nofxGuiGroup.cpp\r\n\r\n 77 line \tofLogError() << \"ofxBaseGroup; can't add control of type \" << type;\r\n\r\n[ error ] ofxBaseGroup; can't add control of type class ofReadOnlyParameter\r\n[ error ] ofxBaseGroup; can't add control of type class ofReadOnlyParameter\r\n[ error ] ofXml: loadFromBuffer(): DOM ERROR\r\n[warning] ofXml: setTo(): empty document\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2475","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2475/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2475/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2475/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2475","id":18143895,"number":2475,"title":"0.8.0 Light and Material problem","user":{"login":"Geistyp","id":1510109,"avatar_url":"https://0.gravatar.com/avatar/6b42478d52d104580a1ae20f973975c2?d=https%3A%2F%2Fidenticons.github.com%2F45d69e69ac304ad6dc2269ebba53ba69.png","gravatar_id":"6b42478d52d104580a1ae20f973975c2","url":"https://api.github.com/users/Geistyp","html_url":"https://github.com/Geistyp","followers_url":"https://api.github.com/users/Geistyp/followers","following_url":"https://api.github.com/users/Geistyp/following{/other_user}","gists_url":"https://api.github.com/users/Geistyp/gists{/gist_id}","starred_url":"https://api.github.com/users/Geistyp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Geistyp/subscriptions","organizations_url":"https://api.github.com/users/Geistyp/orgs","repos_url":"https://api.github.com/users/Geistyp/repos","events_url":"https://api.github.com/users/Geistyp/events{/privacy}","received_events_url":"https://api.github.com/users/Geistyp/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":14,"created_at":"2013-08-16T06:58:32Z","updated_at":"2013-08-20T11:21:00Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"http://imgur.com/GiiGBx3\r\nLeft is 0.7.4 , right is 0.8.0.\r\n\r\nsame code\r\n```c++\r\nfloat no_mat[] = {0.0f, 0.0f, 0.0f, 1.0f};\r\nfloat mat_ambient[] = {0.0215, 0.1745, 0.0215, 1.0};\r\nfloat mat_diffuse[] = {0.07568, 0.61424, 0.07568, 1.0};\r\nfloat mat_specular[] = {0.633, 0.727811, 0.633, 1.0};\r\nfloat low_shininess = 15.0f;\r\n\r\n//light properties\r\nfloat ambient[] = {0.5f, 0.5f, 0.5f, 1.0f};\r\nfloat diffuse[] = {1.0f, 1.0f, 1.0f, 1.0f};\r\nfloat specular[] = {1.0f, 1.0f, 1.0f, 1.0f};\r\nfloat position[] = {100.0f, 100.0f, 100.0f, 0.0f};\r\n\r\nvoid ofApp::setup(){\r\n\r\n\tglLightfv(GL_LIGHT0, GL_AMBIENT, ambient);\r\n\tglLightfv(GL_LIGHT0, GL_DIFFUSE, diffuse);\r\n\tglLightfv(GL_LIGHT0, GL_POSITION, position);\r\n\r\n\tglEnable(GL_LIGHT0);\r\n\tglEnable(GL_LIGHTING);\r\n\r\n\tglEnable(GL_DEPTH_TEST);\r\n\tglShadeModel(GL_SMOOTH); \r\n}\r\n\r\nvoid ofApp::draw(){\r\n\r\n\tcam.begin();\r\n\r\n\tofPushMatrix();\r\n\tofTranslate(0, 0);\r\n\r\n\tglMaterialfv(GL_FRONT, GL_AMBIENT, mat_ambient);\r\n\tglMaterialfv(GL_FRONT, GL_DIFFUSE, mat_diffuse);\r\n\tglMaterialfv(GL_FRONT, GL_SPECULAR, mat_specular);\r\n\tglMaterialf(GL_FRONT, GL_SHININESS, low_shininess);\r\n\tglMaterialfv(GL_FRONT, GL_EMISSION, no_mat);\r\n\tofSphere(0, 0, 50);\r\n\r\n\tofPopMatrix();\r\n\r\n\r\n\tcam.end();\r\n}\r\n```\r\n\r\nofMaterial not work? I try to load a model with material, material data loaded, but show nothing.\r\nhttp://imgur.com/yMZda6w\r\n\r\n```c++\r\nofxAssimpModelLoader loader;\r\nofxAssimpMeshHelper mesh;\r\n\r\nofLight light;\r\n\r\nvoid ofApp::setup(){\r\n\r\n\tofDisableArbTex(); \r\n\tloader.loadModel(\"mini.dae\");\r\n\r\n\tofEnableSeparateSpecularLight();\r\n\tofEnableDepthTest();\r\n\tglShadeModel(GL_SMOOTH); \r\n\t\r\n\tlight.enable();\r\n\t\r\n\tmesh= loader.getMeshHelper(0);\r\n}\r\n\r\nvoid ofApp::draw(){\r\n\r\n \tcam.begin();\r\n\tofPushMatrix();\r\n\tofTranslate(0, 0);\r\n\r\n\t//loader.draw(OF_MESH_FILL);\r\n\r\n // (mesh.material).diffuse = {r=0.752941191 g=0.517647088 b=0.372548997 a=1.000000}\r\n // (mesh.material).ambient = {r=0.100000001 g=0.100000001 b=0.100000001 a=1.000000}\r\n // (mesh.material).specular = {r=0.400000006 g=0.400000006 b=0.400000006 a=1.000000}\r\n // (mesh.material).emissive = {r=0.000000000 g=0.000000000 b=0.000000000 a=1.000000}\r\n // (mesh.material).shininess = 10.000000\r\n\tmesh.material.begin();\r\n\tofSphere(0, 0, 50);\r\n\tmesh.material.end();\r\n\r\n\tofPopMatrix();\r\n\tcam.end();\r\n}\r\n```"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2473","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2473/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2473/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2473/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2473","id":18116496,"number":2473,"title":"Fixed bug in ofCairoRenderer where moveTo commands are interpreted wrong","user":{"login":"bgstaal","id":165258,"avatar_url":"https://0.gravatar.com/avatar/4fcf8b28dcc18014970d4930d0a00e72?d=https%3A%2F%2Fidenticons.github.com%2Fc78b173dd2f89f95c1414e53b78123fe.png","gravatar_id":"4fcf8b28dcc18014970d4930d0a00e72","url":"https://api.github.com/users/bgstaal","html_url":"https://github.com/bgstaal","followers_url":"https://api.github.com/users/bgstaal/followers","following_url":"https://api.github.com/users/bgstaal/following{/other_user}","gists_url":"https://api.github.com/users/bgstaal/gists{/gist_id}","starred_url":"https://api.github.com/users/bgstaal/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bgstaal/subscriptions","organizations_url":"https://api.github.com/users/bgstaal/orgs","repos_url":"https://api.github.com/users/bgstaal/repos","events_url":"https://api.github.com/users/bgstaal/events{/privacy}","received_events_url":"https://api.github.com/users/bgstaal/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2013-08-15T17:35:55Z","updated_at":"2013-08-15T17:36:34Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/2473","diff_url":"https://github.com/openframeworks/openFrameworks/pull/2473.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/2473.patch"},"body":"This results in cairo sub paths not starting from the supplied point of the moveTo command. Adding one lien of code fixes this."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2472","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2472/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2472/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2472/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2472","id":18107084,"number":2472,"title":"Break Points at Setup (of0.8.0)","user":{"login":"Vamoss","id":245841,"avatar_url":"https://0.gravatar.com/avatar/80c722474d39c07271917a466f4e26dd?d=https%3A%2F%2Fidenticons.github.com%2F406e8d2580cf39474c77a170d51800e3.png","gravatar_id":"80c722474d39c07271917a466f4e26dd","url":"https://api.github.com/users/Vamoss","html_url":"https://github.com/Vamoss","followers_url":"https://api.github.com/users/Vamoss/followers","following_url":"https://api.github.com/users/Vamoss/following{/other_user}","gists_url":"https://api.github.com/users/Vamoss/gists{/gist_id}","starred_url":"https://api.github.com/users/Vamoss/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Vamoss/subscriptions","organizations_url":"https://api.github.com/users/Vamoss/orgs","repos_url":"https://api.github.com/users/Vamoss/repos","events_url":"https://api.github.com/users/Vamoss/events{/privacy}","received_events_url":"https://api.github.com/users/Vamoss/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2013-08-15T14:05:20Z","updated_at":"2013-08-15T15:14:28Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hi,\r\n\r\nI dont know exactly what is happening, but the setup accuses a break point in two cases, one at ofLogToFile(\"myFile.log\", true);\r\n\r\nAnd another in the end of testApp::setup(){}.\r\nIn this case the stack is not readable, but in the ofLogToFile Call Stack is:\r\nmsvcr110d.dll!_unlock(int locknum) Line 366\tC\r\nmsvcr110d.dll!operator delete(void * pUserData) Line 57\tC++\r\nmsvcr110d.dll!operator delete(void * pUserData) Line 56\tC++\r\n 03a31748()\tUnknown\r\nmsvcr110d.dll!_heap_alloc_base(unsigned int size) Line 57\tC\r\nmsvcr110d.dll!_heap_alloc_dbg_impl(unsigned int nSize, int nBlockUse, const char * szFileName, int nLine, int * errno_tmp) Line 431\tC++\r\nmsvcr110d.dll!_nh_malloc_dbg_impl(unsigned int nSize, int nhFlag, int nBlockUse, const char * szFileName, int nLine, int * errno_tmp) Line 239\tC++\r\nmsvcr110d.dll!_nh_malloc_dbg(unsigned int nSize, int nhFlag, int nBlockUse, const char * szFileName, int nLine) Line 302\tC++\r\nmsvcr110d.dll!malloc(unsigned int nSize) Line 56\tC++\r\nmsvcr110d.dll!operator new(unsigned int size) Line 59\tC++\r\nRender_debug.exe!std::_Allocate(unsigned int _Count, std::_Container_proxy * __formal) Line 28\tC++\r\nRender_debug.exe!std::allocator::allocate(unsigned int _Count) Line 591\tC++\r\nRender_debug.exe!std::_String_alloc<0,std::_String_base_types > >::_Alloc_proxy() Line 671\tC++ \tRender_debug.exe!std::_String_alloc<0,std::_String_base_types > >::_String_alloc<0,std::_String_base_types > >(const std::allocator & __formal) Line 651\tC++\r\nRender_debug.exe!std::basic_string,std::allocator >::basic_string,std::allocator >() Line 749\tC++\r\nRender_debug.exe!Poco::FileImpl::FileImpl(void)\tUnknown\r\nRender_debug.exe!Poco::File::File(void)\tUnknown\r\nRender_debug.exe!ofFile::ofFile() Line 260\tC++\r\nRender_debug.exe!ofFileLoggerChannel::ofFileLoggerChannel(const std::basic_string,std::allocator > & path, bool append) Line 288\tC++\r\nRender_debug.exe!ofLogToFile(const std::basic_string,std::allocator > & path, bool append) Line 41\tC++\r\nRender_debug.exe!SuperLog::setup(std::basic_string,std::allocator > filename) Line 17\tC++\r\nRender_debug.exe!testApp::setup() Line 14\tC++\r\nRender_debug.exe!ofBaseApp::setup(ofEventArgs & args) Line 41\tC++\r\nRender_debug.exe!Poco::PriorityDelegate::notify(const void * sender, ofEventArgs & arguments) Line 168\tC++\r\nRender_debug.exe!Poco::PriorityStrategy >::notify(const void * sender, ofEventArgs & arguments) Line 81\tC++\r\nRender_debug.exe!Poco::AbstractEvent >,Poco::AbstractPriorityDelegate,Poco::FastMutex>::notify(const void * pSender, ofEventArgs & args) Line 242\tC++\r\nRender_debug.exe!ofNotifyEvent,ofEventArgs>(ofEvent & event, ofEventArgs & args) Line 172\tC++\r\nRender_debug.exe!ofNotifySetup() Line 120\tC++\r\n\r\nI am at a Windows 7, Visual Studio 2012 Express with OpenFrameworks 0.8.0.\r\n\r\nThanks,\r\nCarlos"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2469","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2469/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2469/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2469/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2469","id":18048273,"number":2469,"title":"enums and #defines for ofxiOS have weird case and don't deprecate old enums","user":{"login":"ofTheo","id":144000,"avatar_url":"https://0.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https%3A%2F%2Fidenticons.github.com%2F4927fe2904a479337f27af83d0ab970f.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":{"login":"ofTheo","id":144000,"avatar_url":"https://0.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https%3A%2F%2Fidenticons.github.com%2F4927fe2904a479337f27af83d0ab970f.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13/labels","id":375917,"number":13,"title":"0.8.1","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://2.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":34,"closed_issues":9,"state":"open","created_at":"2013-07-11T13:25:32Z","updated_at":"2013-08-21T08:18:48Z","due_on":"2013-09-08T07:00:00Z"},"comments":3,"created_at":"2013-08-14T11:58:58Z","updated_at":"2013-08-20T12:43:20Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ie:\r\n\r\n```\r\n#define ofxiOS_DEVICE_IPHONE_2G\t\t\"iPhone1,1\"\r\n#define ofxiOS_DEVICE_IPHONE_3G\t\t\"iPhone1,2\"\r\n#define ofxiOS_DEVICE_IPHONE_3GS\t\"iPhone2,1\"\r\n#define ofxiOS_DEVICE_IPHONE_4\t\t\"iPhone3,1\"\r\n\r\n#define ofxiOS_DEVICE_IPOD_1STGEN\t\"iPod1,1\"\r\n#define ofxiOS_DEVICE_IPOD_2NDGEN\t\"iPod2,1\"\r\n#define ofxiOS_DEVICE_IPOD_3RDGEN\t\"iPod3,1\"\r\n#define ofxiOS_DEVICE_IPOD_4THGEN\t\"iPod4,1\"\r\n```\r\n\r\naccording to the old approach it should be: \r\n\r\n```\r\n#define OFXIOS_DEVICE_IPHONE_2G\t\"iPhone1,1\"\r\n#define OFXIOS_DEVICE_IPHONE_3G\t\"iPhone1,2\"\r\n#define OFXIOS_DEVICE_IPHONE_3GS\t\"iPhone2,1\"\r\n#define OFXIOS_DEVICE_IPHONE_4\t\t\"iPhone3,1\"\r\n\r\n#define OFXIOS_DEVICE_IPOD_1STGEN\t\"iPod1,1\"\r\n#define OFXIOS_DEVICE_IPOD_2NDGEN\t\"iPod2,1\"\r\n#define OFXIOS_DEVICE_IPOD_3RDGEN\t\"iPod3,1\"\r\n#define OFXIOS_DEVICE_IPOD_4THGEN\t\"iPod4,1\"\r\n```\r\n\r\nwith #define for old ofxiPhone names:\r\n\r\nie: \r\n`#define OFXIPHONE_DEVICE_IPHONE_2G OFXIOS_DEVICE_IPHONE_2G`\r\n\r\nI wonder if we should change \r\nofxiOS_ -> OFXIOS \r\n\r\nwe would then need to do two levels of #defines one for the 0.8.0 release and one for pre 0.8.0 \r\n\r\nie: \r\n\r\n`#define OFXIPHONE_DEVICE_IPHONE_2G OFXIOS_DEVICE_IPHONE_2G`\r\n`#define ofxiOS_DEVICE_IPHONE_2G OFXIOS_DEVICE_IPHONE_2G`\r\n\r\nNote: there are more examples of these #defines and enums, I'm just using this set as an example. \r\n\r\n\r\nALSO fix this: OFXIPHONE_MAPKIT_HYRBID -> OFXIPHONE_MAPKIT_HYBRID\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2468","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2468/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2468/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2468/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2468","id":18046461,"number":2468,"title":"ofAppGLFWWindow Verbose Messages","user":{"login":"kamend","id":462951,"avatar_url":"https://0.gravatar.com/avatar/1b0002ee319a421a56ef94c199382fb7?d=https%3A%2F%2Fidenticons.github.com%2F855526feec5d5e0ffaf4ea2115979d44.png","gravatar_id":"1b0002ee319a421a56ef94c199382fb7","url":"https://api.github.com/users/kamend","html_url":"https://github.com/kamend","followers_url":"https://api.github.com/users/kamend/followers","following_url":"https://api.github.com/users/kamend/following{/other_user}","gists_url":"https://api.github.com/users/kamend/gists{/gist_id}","starred_url":"https://api.github.com/users/kamend/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kamend/subscriptions","organizations_url":"https://api.github.com/users/kamend/orgs","repos_url":"https://api.github.com/users/kamend/repos","events_url":"https://api.github.com/users/kamend/events{/privacy}","received_events_url":"https://api.github.com/users/kamend/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2013-08-14T11:08:04Z","updated_at":"2013-08-20T09:15:05Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hey guys,\r\nI am playing around with OF 0.8 and I noticed that ofAppGLFWWindow has some verbose messages, when pressing mouse buttons and keys, is this intentional or you just forgot to remove the messages?\r\n\r\n[verbose] ofAppGLFWWindow: mouse button: 0\r\n[verbose] ofAppGLFWWindow: mouse button: 0\r\n[verbose] ofAppGLFWWindow: mouse button: 0\r\n[verbose] ofAppGLFWWindow: mouse button: 0\r\n[verbose] ofAppGLFWWindow: key: 343 state: 1\r\n[verbose] ofAppGLFWWindow: key: 343 state: 0\r\n[verbose] ofAppGLFWWindow: key: 343 state: 1\r\n\r\nGreat work btw!"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2464","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2464/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2464/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2464/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2464","id":18038636,"number":2464,"title":"Can I use ofGstVideoPlayer in Windows? (of0.8.0)","user":{"login":"yty","id":841770,"avatar_url":"https://2.gravatar.com/avatar/a8010f501bbf6646afd69a8c3afc773a?d=https%3A%2F%2Fidenticons.github.com%2Ffd07b54170df1ee5062afa89905d7511.png","gravatar_id":"a8010f501bbf6646afd69a8c3afc773a","url":"https://api.github.com/users/yty","html_url":"https://github.com/yty","followers_url":"https://api.github.com/users/yty/followers","following_url":"https://api.github.com/users/yty/following{/other_user}","gists_url":"https://api.github.com/users/yty/gists{/gist_id}","starred_url":"https://api.github.com/users/yty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yty/subscriptions","organizations_url":"https://api.github.com/users/yty/orgs","repos_url":"https://api.github.com/users/yty/repos","events_url":"https://api.github.com/users/yty/events{/privacy}","received_events_url":"https://api.github.com/users/yty/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2013-08-14T07:28:45Z","updated_at":"2013-08-17T03:57:32Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Because ofQuickTimePlayer only play *.mov, would like to use gst ..."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2460","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2460/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2460/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2460/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2460","id":18003137,"number":2460,"title":"ofxAndroidVideoPlayer working on emulator not on device (iStick A200)","user":{"login":"I33N","id":520375,"avatar_url":"https://0.gravatar.com/avatar/ba8d7c3b4532d3747c30b9be91dc20d5?d=https%3A%2F%2Fidenticons.github.com%2F029dd6120545e3ca65422e4479af8e99.png","gravatar_id":"ba8d7c3b4532d3747c30b9be91dc20d5","url":"https://api.github.com/users/I33N","html_url":"https://github.com/I33N","followers_url":"https://api.github.com/users/I33N/followers","following_url":"https://api.github.com/users/I33N/following{/other_user}","gists_url":"https://api.github.com/users/I33N/gists{/gist_id}","starred_url":"https://api.github.com/users/I33N/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/I33N/subscriptions","organizations_url":"https://api.github.com/users/I33N/orgs","repos_url":"https://api.github.com/users/I33N/repos","events_url":"https://api.github.com/users/I33N/events{/privacy}","received_events_url":"https://api.github.com/users/I33N/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2013-08-13T15:34:27Z","updated_at":"2013-08-13T17:21:44Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I am working with the iStick A200 (PQLabs ANdroid stick) and wanted to test the video player example. It worked great on the emulator (using auto instead of external in the manifest) but when I launch it on the device I can only see 1 line of pixel flickering.\r\n\r\nThe movie is loaded without problem, I can even see the resolution is OK and I have no problem reading it with the basic videoplayer.\r\n\r\nAs the iStick is not supported on OSX I can't monitor it with logcat and I have to copy the .apk on the device to test. So I can't copy the log. But it looks just fine.\r\n\r\nAny idea? Did you have more luck on another device?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2457","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2457/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2457/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2457/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2457","id":17992953,"number":2457,"title":"vboDrawInstancedExample hardware check not accurate. ","user":{"login":"ofTheo","id":144000,"avatar_url":"https://0.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https%3A%2F%2Fidenticons.github.com%2F4927fe2904a479337f27af83d0ab970f.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13/labels","id":375917,"number":13,"title":"0.8.1","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://2.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":34,"closed_issues":9,"state":"open","created_at":"2013-07-11T13:25:32Z","updated_at":"2013-08-21T08:18:48Z","due_on":"2013-09-08T07:00:00Z"},"comments":2,"created_at":"2013-08-13T12:09:51Z","updated_at":"2013-08-14T10:21:22Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"vboDrawInstancedExample seems to work fine for some people even if the check for glDrawElementsInstanced returns 0. \r\n\r\nMaybe there is a better way to test that doesn't get some false negatives.\r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,13049.msg56329.html#msg56329\r\n\r\nrelates to #2433 "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2456","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2456/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2456/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2456/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2456","id":17986223,"number":2456,"title":"Window not being redrawn while resizing","user":{"login":"bgstaal","id":165258,"avatar_url":"https://0.gravatar.com/avatar/4fcf8b28dcc18014970d4930d0a00e72?d=https%3A%2F%2Fidenticons.github.com%2Fc78b173dd2f89f95c1414e53b78123fe.png","gravatar_id":"4fcf8b28dcc18014970d4930d0a00e72","url":"https://api.github.com/users/bgstaal","html_url":"https://github.com/bgstaal","followers_url":"https://api.github.com/users/bgstaal/followers","following_url":"https://api.github.com/users/bgstaal/following{/other_user}","gists_url":"https://api.github.com/users/bgstaal/gists{/gist_id}","starred_url":"https://api.github.com/users/bgstaal/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bgstaal/subscriptions","organizations_url":"https://api.github.com/users/bgstaal/orgs","repos_url":"https://api.github.com/users/bgstaal/repos","events_url":"https://api.github.com/users/bgstaal/events{/privacy}","received_events_url":"https://api.github.com/users/bgstaal/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/regression","name":"regression","color":"e10c02"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13/labels","id":375917,"number":13,"title":"0.8.1","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://2.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":34,"closed_issues":9,"state":"open","created_at":"2013-07-11T13:25:32Z","updated_at":"2013-08-21T08:18:48Z","due_on":"2013-09-08T07:00:00Z"},"comments":1,"created_at":"2013-08-13T09:07:23Z","updated_at":"2013-08-13T11:33:26Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Since the switch to GLFW for windowing the window is not redrawn while being resized. See this screenshot from the advanced 3d example (Taken while resizing the window):\r\n\r\n![redraw-error](https://f.cloud.github.com/assets/165258/953491/6db5463e-03f7-11e3-840e-961a49fc8516.png)\r\n\r\nI tried switching to ofAppGlutWindow in main.c and then everything works fine.\r\n\r\nI've only tested this on Mac OS 10.7\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2455","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2455/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2455/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2455/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2455","id":17984675,"number":2455,"title":"borderless windows?","user":{"login":"mazbox","id":194121,"avatar_url":"https://2.gravatar.com/avatar/3cfb19dbce7926933555ac9755a86ca8?d=https%3A%2F%2Fidenticons.github.com%2F1a833e8b88a3cb77651448055b3e93e9.png","gravatar_id":"3cfb19dbce7926933555ac9755a86ca8","url":"https://api.github.com/users/mazbox","html_url":"https://github.com/mazbox","followers_url":"https://api.github.com/users/mazbox/followers","following_url":"https://api.github.com/users/mazbox/following{/other_user}","gists_url":"https://api.github.com/users/mazbox/gists{/gist_id}","starred_url":"https://api.github.com/users/mazbox/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mazbox/subscriptions","organizations_url":"https://api.github.com/users/mazbox/orgs","repos_url":"https://api.github.com/users/mazbox/repos","events_url":"https://api.github.com/users/mazbox/events{/privacy}","received_events_url":"https://api.github.com/users/mazbox/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-2D","name":"section-2D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2013-08-13T08:26:09Z","updated_at":"2013-08-20T09:26:46Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Now we're on GLFW, could we have the option to have borderless windows? This is really easy in ofAppGLFWWindow.cpp, just need this:\r\n\r\nglfwWindowHint(GLFW_DECORATED, GL_FALSE);\r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2449","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2449/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2449/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2449/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2449","id":17928213,"number":2449,"title":"ofxiOSKeyboard need fix y poision?","user":{"login":"azuremous","id":319589,"avatar_url":"https://2.gravatar.com/avatar/c3d1cd991fa2f486a4d2a387531de77e?d=https%3A%2F%2Fidenticons.github.com%2Fbb2af607d543b861335f5fe253300975.png","gravatar_id":"c3d1cd991fa2f486a4d2a387531de77e","url":"https://api.github.com/users/azuremous","html_url":"https://github.com/azuremous","followers_url":"https://api.github.com/users/azuremous/followers","following_url":"https://api.github.com/users/azuremous/following{/other_user}","gists_url":"https://api.github.com/users/azuremous/gists{/gist_id}","starred_url":"https://api.github.com/users/azuremous/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/azuremous/subscriptions","organizations_url":"https://api.github.com/users/azuremous/orgs","repos_url":"https://api.github.com/users/azuremous/repos","events_url":"https://api.github.com/users/azuremous/events{/privacy}","received_events_url":"https://api.github.com/users/azuremous/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13/labels","id":375917,"number":13,"title":"0.8.1","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://2.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":34,"closed_issues":9,"state":"open","created_at":"2013-07-11T13:25:32Z","updated_at":"2013-08-21T08:18:48Z","due_on":"2013-09-08T07:00:00Z"},"comments":1,"created_at":"2013-08-12T07:54:05Z","updated_at":"2013-08-20T08:44:09Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofxiOSKeyboard.mm\r\n\r\ninside init() and updateOrientation() there is _y = _h need to fix to _y = _yOriginal ?\r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2447","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2447/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2447/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2447/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2447","id":17925468,"number":2447,"title":"Feature Request: ofXml saving with XML declaration","user":{"login":"Geistyp","id":1510109,"avatar_url":"https://0.gravatar.com/avatar/6b42478d52d104580a1ae20f973975c2?d=https%3A%2F%2Fidenticons.github.com%2F45d69e69ac304ad6dc2269ebba53ba69.png","gravatar_id":"6b42478d52d104580a1ae20f973975c2","url":"https://api.github.com/users/Geistyp","html_url":"https://github.com/Geistyp","followers_url":"https://api.github.com/users/Geistyp/followers","following_url":"https://api.github.com/users/Geistyp/following{/other_user}","gists_url":"https://api.github.com/users/Geistyp/gists{/gist_id}","starred_url":"https://api.github.com/users/Geistyp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Geistyp/subscriptions","organizations_url":"https://api.github.com/users/Geistyp/orgs","repos_url":"https://api.github.com/users/Geistyp/repos","events_url":"https://api.github.com/users/Geistyp/events{/privacy}","received_events_url":"https://api.github.com/users/Geistyp/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":{"login":"joshuajnoble","id":237423,"avatar_url":"https://0.gravatar.com/avatar/10960ba0f305803a1cdc7cd6188d643b?d=https%3A%2F%2Fidenticons.github.com%2Fb2018d244935ce2c5e98c5834187e538.png","gravatar_id":"10960ba0f305803a1cdc7cd6188d643b","url":"https://api.github.com/users/joshuajnoble","html_url":"https://github.com/joshuajnoble","followers_url":"https://api.github.com/users/joshuajnoble/followers","following_url":"https://api.github.com/users/joshuajnoble/following{/other_user}","gists_url":"https://api.github.com/users/joshuajnoble/gists{/gist_id}","starred_url":"https://api.github.com/users/joshuajnoble/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/joshuajnoble/subscriptions","organizations_url":"https://api.github.com/users/joshuajnoble/orgs","repos_url":"https://api.github.com/users/joshuajnoble/repos","events_url":"https://api.github.com/users/joshuajnoble/events{/privacy}","received_events_url":"https://api.github.com/users/joshuajnoble/received_events","type":"User"},"milestone":null,"comments":2,"created_at":"2013-08-12T06:09:43Z","updated_at":"2013-08-20T14:31:27Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"- Sometimes we need when save wide-char string. ( Save as ascii will get a lot of messy code )\r\n\r\n```c++\r\nbool ofXml::save(const string & path, bool saveWithDeclaration/*=false*/){\r\n ofBuffer buffer(saveWithDeclaration?\r\n\t\t\t\t\"\\n\"\r\n\t\t\t\t:\"\"\r\n\t\t\t\t+toString());\r\n ofFile file(path, ofFile::WriteOnly);\r\n return file.writeFromBuffer(buffer);\r\n}\r\n```\r\n\r\n- Or ofFile/ofBuffer add utf-8 save mode.\r\n\r\n```c++\r\nstd::ofstream fs;\r\nfs.open(filepath, std::ios::out|std::ios::binary);\r\n\r\nunsigned char smarker[3];\r\nsmarker[0] = 0xEF;\r\nsmarker[1] = 0xBB;\r\nsmarker[2] = 0xBF;\r\n\r\nfs << smarker;\r\nfs.close();\r\n\r\n//Then open the file as UTF and write your content there:\r\n\r\nstd::wofstream fs;\r\nfs.open(filepath, std::ios::out|std::ios::app);\r\n\r\nstd::locale utf8_locale(std::locale(), new utf8cvt);\r\nfs.imbue(utf8_locale); \r\n\r\nfs << .. // Write anything you want...\r\n```"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2445","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2445/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2445/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2445/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2445","id":17924672,"number":2445,"title":"UTF-8 String Clipboard Support","user":{"login":"bakercp","id":300484,"avatar_url":"https://2.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https%3A%2F%2Fidenticons.github.com%2F4aaaf6f29fe96098740aa5f98b6c8b12.png","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","url":"https://api.github.com/users/bakercp","html_url":"https://github.com/bakercp","followers_url":"https://api.github.com/users/bakercp/followers","following_url":"https://api.github.com/users/bakercp/following{/other_user}","gists_url":"https://api.github.com/users/bakercp/gists{/gist_id}","starred_url":"https://api.github.com/users/bakercp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bakercp/subscriptions","organizations_url":"https://api.github.com/users/bakercp/orgs","repos_url":"https://api.github.com/users/bakercp/repos","events_url":"https://api.github.com/users/bakercp/events{/privacy}","received_events_url":"https://api.github.com/users/bakercp/received_events","type":"User"},"labels":[],"state":"open","assignee":{"login":"bakercp","id":300484,"avatar_url":"https://2.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https%3A%2F%2Fidenticons.github.com%2F4aaaf6f29fe96098740aa5f98b6c8b12.png","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","url":"https://api.github.com/users/bakercp","html_url":"https://github.com/bakercp","followers_url":"https://api.github.com/users/bakercp/followers","following_url":"https://api.github.com/users/bakercp/following{/other_user}","gists_url":"https://api.github.com/users/bakercp/gists{/gist_id}","starred_url":"https://api.github.com/users/bakercp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bakercp/subscriptions","organizations_url":"https://api.github.com/users/bakercp/orgs","repos_url":"https://api.github.com/users/bakercp/repos","events_url":"https://api.github.com/users/bakercp/events{/privacy}","received_events_url":"https://api.github.com/users/bakercp/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13/labels","id":375917,"number":13,"title":"0.8.1","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://2.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":34,"closed_issues":9,"state":"open","created_at":"2013-07-11T13:25:32Z","updated_at":"2013-08-21T08:18:48Z","due_on":"2013-09-08T07:00:00Z"},"comments":2,"created_at":"2013-08-12T05:22:23Z","updated_at":"2013-08-14T11:03:50Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/2445","diff_url":"https://github.com/openframeworks/openFrameworks/pull/2445.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/2445.patch"},"body":"Perhaps the window interface could also be implemented in mobile platforms.\r\n\r\n- [x] Add support to `ofAppiOSWindow` (go @julapy ! 0c6db8934f3eff84dca3af5939891d9883910b8d) \r\n- [ ] Add support to `ofAppAndroidWindow` (@arturoc can you take this one?)\r\n- [x] Add support to `ofAppEGLWindow` (will not be implemented as GLFW is now used on all known x11 accelerated)\r\n- [x] Add support to `ofAppNoWindow` (?)\r\n- [x] Add support to `ofAppGlutWindow` (just kidding)"}] + +https +GET +api.github.com +None +/repositories/345337/issues?page=2 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4982'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '90328'), ('server', 'GitHub.com'), ('last-modified', 'Wed, 21 Aug 2013 10:42:46 GMT'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"ff413c4ac1c8950a3c117d577119cd9e"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 21 Aug 2013 10:54:14 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1377085393')] +[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2441","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2441/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2441/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2441/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2441","id":17916118,"number":2441,"title":"Examples needed to be ported to ARM (Master List)","user":{"login":"jvcleave","id":150037,"avatar_url":"https://1.gravatar.com/avatar/9c0384a91739bea093f453cf40a59742?d=https%3A%2F%2Fidenticons.github.com%2F5ed96817efb118a36c00303b90e4b003.png","gravatar_id":"9c0384a91739bea093f453cf40a59742","url":"https://api.github.com/users/jvcleave","html_url":"https://github.com/jvcleave","followers_url":"https://api.github.com/users/jvcleave/followers","following_url":"https://api.github.com/users/jvcleave/following{/other_user}","gists_url":"https://api.github.com/users/jvcleave/gists{/gist_id}","starred_url":"https://api.github.com/users/jvcleave/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jvcleave/subscriptions","organizations_url":"https://api.github.com/users/jvcleave/orgs","repos_url":"https://api.github.com/users/jvcleave/repos","events_url":"https://api.github.com/users/jvcleave/events{/privacy}","received_events_url":"https://api.github.com/users/jvcleave/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13/labels","id":375917,"number":13,"title":"0.8.1","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://1.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":34,"closed_issues":9,"state":"open","created_at":"2013-07-11T13:25:32Z","updated_at":"2013-08-21T08:18:48Z","due_on":"2013-09-08T07:00:00Z"},"comments":0,"created_at":"2013-08-11T18:43:29Z","updated_at":"2013-08-20T08:42:08Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"A master list/issue of the examples excluded from 0.8.0 that need some work to make compatible with the ARM platform/OpenGL ES 2. I figured a master list would be nice to have and something to reference if sub-issues arise.\r\n\r\n- [ ] addons/3DModelLoaderExample\r\n- [ ] addons/allAddonsExample\r\n- [ ] addons/assimpExample\r\n- [ ] addons/kinectExample\r\n- [ ] addons/vectorGraphicsExample \r\n- [ ] gl/glInfoExample\r\n- [ ] gl/alphaMaskingShaderExample\r\n- [ ] gl/billboardExample\r\n- [ ] gl/billboardRotationExample\r\n- [ ] gl/multiLightExample\r\n- [ ] gl/multiTextureShaderExample\r\n- [ ] gl/pointsAsTextures\r\n- [ ] gl/gpuParticleSystemExample\r\n- [ ] gl/vboMeshDrawInstancedExample \r\n- [ ] 3d/modelNoiseExample\r\n\r\nI have some of these started so I think 0.8.1 is a reasonable goal"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2438","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2438/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2438/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2438/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2438","id":17892610,"number":2438,"title":"Feature allow OSC message sends without bundle wrapper","user":{"login":"pizthewiz","id":648369,"avatar_url":"https://2.gravatar.com/avatar/9005281d142d2e0b17b966c51f5f6818?d=https%3A%2F%2Fidenticons.github.com%2Fffb1e9421b8787aaa8d5bf1f5325e676.png","gravatar_id":"9005281d142d2e0b17b966c51f5f6818","url":"https://api.github.com/users/pizthewiz","html_url":"https://github.com/pizthewiz","followers_url":"https://api.github.com/users/pizthewiz/followers","following_url":"https://api.github.com/users/pizthewiz/following{/other_user}","gists_url":"https://api.github.com/users/pizthewiz/gists{/gist_id}","starred_url":"https://api.github.com/users/pizthewiz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pizthewiz/subscriptions","organizations_url":"https://api.github.com/users/pizthewiz/orgs","repos_url":"https://api.github.com/users/pizthewiz/repos","events_url":"https://api.github.com/users/pizthewiz/events{/privacy}","received_events_url":"https://api.github.com/users/pizthewiz/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2013-08-10T01:42:19Z","updated_at":"2013-08-18T19:28:56Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/2438","diff_url":"https://github.com/openframeworks/openFrameworks/pull/2438.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/2438.patch"},"body":"This adds an additional argument with a default value consistent with the previous behavior to the normal ```ofxOscSender::sendMessage``` to allow one to skip the (likely superfluous) bundle wrapper:\r\n```C++\r\n void sendMessage( ofxOscMessage& message, bool wrapInBundle = true );\r\n```\r\nFixes #1804."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2435","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2435/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2435/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2435/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2435","id":17845091,"number":2435,"title":"alphaMaskingShaderExample for armv6 not working","user":{"login":"jvcleave","id":150037,"avatar_url":"https://1.gravatar.com/avatar/9c0384a91739bea093f453cf40a59742?d=https%3A%2F%2Fidenticons.github.com%2F5ed96817efb118a36c00303b90e4b003.png","gravatar_id":"9c0384a91739bea093f453cf40a59742","url":"https://api.github.com/users/jvcleave","html_url":"https://github.com/jvcleave","followers_url":"https://api.github.com/users/jvcleave/followers","following_url":"https://api.github.com/users/jvcleave/following{/other_user}","gists_url":"https://api.github.com/users/jvcleave/gists{/gist_id}","starred_url":"https://api.github.com/users/jvcleave/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jvcleave/subscriptions","organizations_url":"https://api.github.com/users/jvcleave/orgs","repos_url":"https://api.github.com/users/jvcleave/repos","events_url":"https://api.github.com/users/jvcleave/events{/privacy}","received_events_url":"https://api.github.com/users/jvcleave/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2013-08-09T03:07:35Z","updated_at":"2013-08-09T03:12:55Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"main.cpp needs to be modified to enable shaders to be loaded\r\nsimilar to \r\nhttps://github.com/openframeworks/openFrameworks/blob/develop/examples/gl/shaderExample/src/main.cpp\r\n\r\nThis enables the shader to load but the shaders in shaders_gles are no longer working. I believe these are derived from what I modified to work for the workshop - those still work with the former GLES2Renderer \r\n\r\nhttps://github.com/andreasmuller/RaspberryPiWorkshop/tree/master/ShaderExample_AlphaMasking/bin/data\r\n\r\n@tgfrerer - any clues?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2432","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2432/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2432/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2432/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2432","id":17821294,"number":2432,"title":"ofxAssimpModelLoader compile error for armv6","user":{"login":"jvcleave","id":150037,"avatar_url":"https://1.gravatar.com/avatar/9c0384a91739bea093f453cf40a59742?d=https%3A%2F%2Fidenticons.github.com%2F5ed96817efb118a36c00303b90e4b003.png","gravatar_id":"9c0384a91739bea093f453cf40a59742","url":"https://api.github.com/users/jvcleave","html_url":"https://github.com/jvcleave","followers_url":"https://api.github.com/users/jvcleave/followers","following_url":"https://api.github.com/users/jvcleave/following{/other_user}","gists_url":"https://api.github.com/users/jvcleave/gists{/gist_id}","starred_url":"https://api.github.com/users/jvcleave/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jvcleave/subscriptions","organizations_url":"https://api.github.com/users/jvcleave/orgs","repos_url":"https://api.github.com/users/jvcleave/repos","events_url":"https://api.github.com/users/jvcleave/events{/privacy}","received_events_url":"https://api.github.com/users/jvcleave/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13/labels","id":375917,"number":13,"title":"0.8.1","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://1.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":34,"closed_issues":9,"state":"open","created_at":"2013-07-11T13:25:32Z","updated_at":"2013-08-21T08:18:48Z","due_on":"2013-09-08T07:00:00Z"},"comments":7,"created_at":"2013-08-08T18:10:23Z","updated_at":"2013-08-09T03:49:34Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"This line \r\nhttps://github.com/openframeworks/openFrameworks/blob/develop/addons/ofxAssimpModelLoader/addon_config.mk#L66\r\nis causing anything using ofxAssimpModelLoader to have the compile error\r\n\r\n`../../../addons/ofxAssimpModelLoader/src/ofxAssimpMeshHelper.h:9:20: fatal error: assimp.h: No such file or directory`\r\n\r\nCommenting out the line enables examples like `addons/assimpExample` and `3d/modelNoiseExample` to compile however they are both segfaulting on the RPi\r\n\r\n\r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2424","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2424/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2424/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2424/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2424","id":17791689,"number":2424,"title":"Feature Request: verbose¬ice&warning&error&fatalError ---addColor..","user":{"login":"yty","id":841770,"avatar_url":"https://2.gravatar.com/avatar/a8010f501bbf6646afd69a8c3afc773a?d=https%3A%2F%2Fidenticons.github.com%2Ffd07b54170df1ee5062afa89905d7511.png","gravatar_id":"a8010f501bbf6646afd69a8c3afc773a","url":"https://api.github.com/users/yty","html_url":"https://github.com/yty","followers_url":"https://api.github.com/users/yty/followers","following_url":"https://api.github.com/users/yty/following{/other_user}","gists_url":"https://api.github.com/users/yty/gists{/gist_id}","starred_url":"https://api.github.com/users/yty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yty/subscriptions","organizations_url":"https://api.github.com/users/yty/orgs","repos_url":"https://api.github.com/users/yty/repos","events_url":"https://api.github.com/users/yty/events{/privacy}","received_events_url":"https://api.github.com/users/yty/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2013-08-08T07:08:07Z","updated_at":"2013-08-20T09:00:45Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I think it should be better to differentiate log files.\r\nHow do you think about it?\r\n\r\nverbose->blur\r\nnotice->green \r\nwarning->Orange\r\nerror ->darkred \r\nfatalError ->red \r\n\r\n```cpp\r\nstring ofGetLogLevelName(ofLogLevel level){\r\n\tHANDLE hCout = GetStdHandle(STD_OUTPUT_HANDLE); \r\n\r\n\tswitch(level){\r\n\t\tcase OF_LOG_VERBOSE:\r\n\t\t\tSetConsoleTextAttribute(hCout,FOREGROUND_BLUE );\r\n\t\t\treturn \"verbose\";\r\n\t\t\tbreak;\r\n\t\tcase OF_LOG_NOTICE:\r\n\t\t\tSetConsoleTextAttribute(hCout,FOREGROUND_GREEN );\r\n\t\t\treturn \"notice\";\r\n\t\t\tbreak;\r\n\t\tcase OF_LOG_WARNING:\r\n\t\t\tSetConsoleTextAttribute(hCout,FOREGROUND_RED|FOREGROUND_GREEN );\r\n\t\t\treturn \"warning\";\r\n\t\t\tbreak;\r\n\t\tcase OF_LOG_ERROR:\r\n\t\t\tSetConsoleTextAttribute(hCout,FOREGROUND_RED );\r\n\t\t\treturn \"error\";\r\n\t\t\tbreak;\r\n\t\tcase OF_LOG_FATAL_ERROR:\r\n\t\t\tSetConsoleTextAttribute(hCout,FOREGROUND_RED|FOREGROUND_INTENSITY );\r\n\t\t\treturn \"fatal error\";\r\n\t\t\tbreak;\r\n\t\tcase OF_LOG_SILENT:\r\n\t\t\treturn \"silent\";\r\n\t\t\tbreak;\r\n\t\tdefault:\r\n\t\t\treturn \"\";\r\n\t}\r\n}\r\n\r\nvoid ofConsoleLoggerChannel::log(ofLogLevel level, const string & module, const string & message){\r\n\t// print to cerr for OF_LOG_ERROR and OF_LOG_FATAL_ERROR, everything else to cout \r\n\tostream& out = level < OF_LOG_ERROR ? cout : cerr;\r\n\tout << \"[\";\r\n\t// only print the module name if it's not \"OF\"\r\n\tif(module != \"OF\") {\r\n\t\tout << module << \":\";\r\n\t}\r\n\tHANDLE hCout = GetStdHandle(STD_OUTPUT_HANDLE); \r\n\r\n\tout << ofGetLogLevelName(level);\r\n\tSetConsoleTextAttribute(hCout,FOREGROUND_RED|FOREGROUND_GREEN|FOREGROUND_BLUE );\r\n\tout<< \"] \"<< message << endl;\r\n}\t"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2422","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2422/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2422/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2422/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2422","id":17734450,"number":2422,"title":"Remove functions deprecated in 0.8","user":{"login":"bilderbuchi","id":327442,"avatar_url":"https://1.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/12","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/12/labels","id":264335,"number":12,"title":"0.10.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://1.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":1,"closed_issues":1,"state":"open","created_at":"2013-02-11T12:18:09Z","updated_at":"2013-08-07T08:01:40Z","due_on":null},"comments":0,"created_at":"2013-08-07T07:58:47Z","updated_at":"2013-08-07T07:58:58Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Some functions/classes/etc have been deprecated in 0.8. It's time to remove them at some point. I have tentatively scheduled this point to be 0.10 (i.e. 2 releases after deprecation). \r\n\r\n```\r\n/ ofBox, ofCone, ofSphere deprecated in favour of ofDrawBox and ofDrawSphere\r\n/ ofxiPhoneSetOrientation and ofxiPhoneGetOrientation -> ofSet/GetOrientation\r\n/ ofxOpenALSoundPlayer\r\n/ ofSetupScreenPerspective(), ofSetupScreenOrtho() don't accept orientation and vflip parameters anymore, use ofSetOrientation() to specify them\r\n/ ofPath::set/getArcResolution -> set/getCircleResolution\r\n```"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2420","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2420/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2420/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2420/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2420","id":17684283,"number":2420,"title":"cross platform documents directory","user":{"login":"jonbro","id":1597,"avatar_url":"https://0.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https%3A%2F%2Fidenticons.github.com%2F87ec2f451208df97228105657edb717f.png","gravatar_id":"893ec14dc008e3774afe5841115920d6","url":"https://api.github.com/users/jonbro","html_url":"https://github.com/jonbro","followers_url":"https://api.github.com/users/jonbro/followers","following_url":"https://api.github.com/users/jonbro/following{/other_user}","gists_url":"https://api.github.com/users/jonbro/gists{/gist_id}","starred_url":"https://api.github.com/users/jonbro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jonbro/subscriptions","organizations_url":"https://api.github.com/users/jonbro/orgs","repos_url":"https://api.github.com/users/jonbro/repos","events_url":"https://api.github.com/users/jonbro/events{/privacy}","received_events_url":"https://api.github.com/users/jonbro/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2013-08-06T11:08:35Z","updated_at":"2013-08-08T09:31:49Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Currently OF supports ofxiPhoneGetDocumentsDirectory which returns the correct documents directory on iOS. However, there is no way to get to Application Support or My Documents without doing platform specific code. This is necessary for deploying either on steam or mac app store.\r\n\r\nThe code for getting to application support on osx is the same as the iOS code. On windows, it appears that this code works: http://stackoverflow.com/questions/2414828/get-path-to-my-documents (although I haven't tried it)."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2418","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2418/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2418/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2418/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2418","id":17666643,"number":2418,"title":" Android keyPressed for volume buttons always sets key = 0","user":{"login":"nneonneo","id":75449,"avatar_url":"https://2.gravatar.com/avatar/5ca341b160687d99b1317859f91054ee?d=https%3A%2F%2Fidenticons.github.com%2F21354e8024a4260d693a0c258fb366d8.png","gravatar_id":"5ca341b160687d99b1317859f91054ee","url":"https://api.github.com/users/nneonneo","html_url":"https://github.com/nneonneo","followers_url":"https://api.github.com/users/nneonneo/followers","following_url":"https://api.github.com/users/nneonneo/following{/other_user}","gists_url":"https://api.github.com/users/nneonneo/gists{/gist_id}","starred_url":"https://api.github.com/users/nneonneo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nneonneo/subscriptions","organizations_url":"https://api.github.com/users/nneonneo/orgs","repos_url":"https://api.github.com/users/nneonneo/repos","events_url":"https://api.github.com/users/nneonneo/events{/privacy}","received_events_url":"https://api.github.com/users/nneonneo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/android","name":"android","color":"2bc4ad"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2013-08-06T00:04:12Z","updated_at":"2013-08-06T07:56:57Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"When a keyPressed event is received for pressing a menu button, the key passed in is always 0. This is because event.getUnicodeChar() returns 0 for keys that are not used to type characters, which includes most of the physical keys on a typical touchscreen-based Android phone.\r\n\r\nOne solution would be to have the Android wrapper define some \"special\" keys (negative numbers to avoid conflicting with Unicode codepoints? numbers with a high-ish bit, like bit 28, set?), and pass those in when the key is special (volume, home, menu, etc)."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2417","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2417/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2417/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2417/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2417","id":17629859,"number":2417,"title":"threaded applications hang on exit","user":{"login":"arturoc","id":48240,"avatar_url":"https://1.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https%3A%2F%2Fidenticons.github.com%2Fd6a785f81d36e5ce6bd64105058af796.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2013-08-05T11:17:16Z","updated_at":"2013-08-06T07:08:20Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"the waitThread call on the destructor makes applications with more complex threading (threads waiting on conditions...) hang on exit for 10 seconds.\r\n\r\nIf i don't need to free any resources is totally safe to close the application without stopping the threads so having this in the destructor is really annoying.\r\n\r\nif someone has any complex destruction where they need to close any resources or for other some reason wait for the thread it should be done by the application not obligatorily by the thread destructor (that's how poco threads or stl threads work for example)\r\n\r\nat least there should be a way to disable it."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2412","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2412/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2412/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2412/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2412","id":17579294,"number":2412,"title":"devApps/projectGenerator doesn't add .mm files in libs folders","user":{"login":"danomatika","id":480637,"avatar_url":"https://2.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https%3A%2F%2Fidenticons.github.com%2Fc08a17ef2f16970cd18f487915737897.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","html_url":"https://github.com/danomatika","followers_url":"https://api.github.com/users/danomatika/followers","following_url":"https://api.github.com/users/danomatika/following{/other_user}","gists_url":"https://api.github.com/users/danomatika/gists{/gist_id}","starred_url":"https://api.github.com/users/danomatika/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danomatika/subscriptions","organizations_url":"https://api.github.com/users/danomatika/orgs","repos_url":"https://api.github.com/users/danomatika/repos","events_url":"https://api.github.com/users/danomatika/events{/privacy}","received_events_url":"https://api.github.com/users/danomatika/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project-generator","name":"project-generator","color":"444444"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13/labels","id":375917,"number":13,"title":"0.8.1","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://1.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":34,"closed_issues":9,"state":"open","created_at":"2013-07-11T13:25:32Z","updated_at":"2013-08-21T08:18:48Z","due_on":"2013-09-08T07:00:00Z"},"comments":9,"created_at":"2013-08-02T20:19:38Z","updated_at":"2013-08-05T11:34:56Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I'm updating ofxMidi and have an iOS library, PGMidi, in `libs/pgmidi`. The projectGenerator doesn't add the .mm files to my project so the app can't build.\r\n\r\nI have a similar setup with RtMidi: `libs/rtmidi`. The .cpp files are added correctly when generating an osx xcode project.\r\n\r\nNeither library have the headers and sources in \"include\" or \"src\" subfolders."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2411","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2411/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2411/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2411/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2411","id":17578556,"number":2411,"title":"addons_config.mk ADDON_FRAMEWORKS dosen't seem to work","user":{"login":"danomatika","id":480637,"avatar_url":"https://2.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https%3A%2F%2Fidenticons.github.com%2Fc08a17ef2f16970cd18f487915737897.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","html_url":"https://github.com/danomatika","followers_url":"https://api.github.com/users/danomatika/followers","following_url":"https://api.github.com/users/danomatika/following{/other_user}","gists_url":"https://api.github.com/users/danomatika/gists{/gist_id}","starred_url":"https://api.github.com/users/danomatika/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danomatika/subscriptions","organizations_url":"https://api.github.com/users/danomatika/orgs","repos_url":"https://api.github.com/users/danomatika/repos","events_url":"https://api.github.com/users/danomatika/events{/privacy}","received_events_url":"https://api.github.com/users/danomatika/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project-generator","name":"project-generator","color":"444444"}],"state":"open","assignee":{"login":"bakercp","id":300484,"avatar_url":"https://2.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https%3A%2F%2Fidenticons.github.com%2F4aaaf6f29fe96098740aa5f98b6c8b12.png","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","url":"https://api.github.com/users/bakercp","html_url":"https://github.com/bakercp","followers_url":"https://api.github.com/users/bakercp/followers","following_url":"https://api.github.com/users/bakercp/following{/other_user}","gists_url":"https://api.github.com/users/bakercp/gists{/gist_id}","starred_url":"https://api.github.com/users/bakercp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bakercp/subscriptions","organizations_url":"https://api.github.com/users/bakercp/orgs","repos_url":"https://api.github.com/users/bakercp/repos","events_url":"https://api.github.com/users/bakercp/events{/privacy}","received_events_url":"https://api.github.com/users/bakercp/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13/labels","id":375917,"number":13,"title":"0.8.1","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://1.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":34,"closed_issues":9,"state":"open","created_at":"2013-07-11T13:25:32Z","updated_at":"2013-08-21T08:18:48Z","due_on":"2013-09-08T07:00:00Z"},"comments":13,"created_at":"2013-08-02T19:59:16Z","updated_at":"2013-08-04T04:54:30Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I'm settings ADDON_FRAMEWORKS for ofxMidi on ios:\r\n\r\n ios:\r\n # osx/iOS only, any framework that should be included in the project\r\n ADDON_FRAMEWORKS = CoreMIDI.framework\r\n\r\nBut this dosen't seem to have an effect. I've tried both \"CoreMIDI\" and \"CoreMIDI.framework\"."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2405","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2405/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2405/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2405/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2405","id":17569838,"number":2405,"title":"Add debug libs in addon_config.mk","user":{"login":"LeoColomb","id":846943,"avatar_url":"https://2.gravatar.com/avatar/d38889330c0d923ab07c3566f0c02c14?d=https%3A%2F%2Fidenticons.github.com%2F9b0717bb9dfcf59d8595ea9f529a3769.png","gravatar_id":"d38889330c0d923ab07c3566f0c02c14","url":"https://api.github.com/users/LeoColomb","html_url":"https://github.com/LeoColomb","followers_url":"https://api.github.com/users/LeoColomb/followers","following_url":"https://api.github.com/users/LeoColomb/following{/other_user}","gists_url":"https://api.github.com/users/LeoColomb/gists{/gist_id}","starred_url":"https://api.github.com/users/LeoColomb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/LeoColomb/subscriptions","organizations_url":"https://api.github.com/users/LeoColomb/orgs","repos_url":"https://api.github.com/users/LeoColomb/repos","events_url":"https://api.github.com/users/LeoColomb/events{/privacy}","received_events_url":"https://api.github.com/users/LeoColomb/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project-generator","name":"project-generator","color":"444444"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13/labels","id":375917,"number":13,"title":"0.8.1","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://1.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":34,"closed_issues":9,"state":"open","created_at":"2013-07-11T13:25:32Z","updated_at":"2013-08-21T08:18:48Z","due_on":"2013-09-08T07:00:00Z"},"comments":4,"created_at":"2013-08-02T16:44:20Z","updated_at":"2013-08-03T11:56:48Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"`addon_config.mk` is cool, but with VS for example, we can't add debug libs, or declare any variable which says \"debug lib are here and have to be include in debug mode\"."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2404","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2404/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2404/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2404/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2404","id":17569755,"number":2404,"title":"devApps/projectGenerator isn't setting ADDON_CFLAGS","user":{"login":"danomatika","id":480637,"avatar_url":"https://2.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https%3A%2F%2Fidenticons.github.com%2Fc08a17ef2f16970cd18f487915737897.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","html_url":"https://github.com/danomatika","followers_url":"https://api.github.com/users/danomatika/followers","following_url":"https://api.github.com/users/danomatika/following{/other_user}","gists_url":"https://api.github.com/users/danomatika/gists{/gist_id}","starred_url":"https://api.github.com/users/danomatika/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danomatika/subscriptions","organizations_url":"https://api.github.com/users/danomatika/orgs","repos_url":"https://api.github.com/users/danomatika/repos","events_url":"https://api.github.com/users/danomatika/events{/privacy}","received_events_url":"https://api.github.com/users/danomatika/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2013-08-02T16:42:18Z","updated_at":"2013-08-05T11:16:17Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I'm using the current develop to update the ofxPd examples. I created an addons_config.mk and specified the ADDON_CFLAGS needed by libpd. I generated 2 projects, 1 for OSX and 1 for iOS, and neither have the custom CFLAGS form the addons_config.mk set. This means they can't build and beginners will go running to the hills."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2398","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2398/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2398/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2398/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2398","id":17561806,"number":2398,"title":"Added setUseShapeColor & getUseShapeColor to ofxSVG","user":{"login":"bgstaal","id":165258,"avatar_url":"https://2.gravatar.com/avatar/4fcf8b28dcc18014970d4930d0a00e72?d=https%3A%2F%2Fidenticons.github.com%2Fc78b173dd2f89f95c1414e53b78123fe.png","gravatar_id":"4fcf8b28dcc18014970d4930d0a00e72","url":"https://api.github.com/users/bgstaal","html_url":"https://github.com/bgstaal","followers_url":"https://api.github.com/users/bgstaal/followers","following_url":"https://api.github.com/users/bgstaal/following{/other_user}","gists_url":"https://api.github.com/users/bgstaal/gists{/gist_id}","starred_url":"https://api.github.com/users/bgstaal/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bgstaal/subscriptions","organizations_url":"https://api.github.com/users/bgstaal/orgs","repos_url":"https://api.github.com/users/bgstaal/repos","events_url":"https://api.github.com/users/bgstaal/events{/privacy}","received_events_url":"https://api.github.com/users/bgstaal/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":6,"created_at":"2013-08-02T14:06:22Z","updated_at":"2013-08-20T08:51:53Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/2398","diff_url":"https://github.com/openframeworks/openFrameworks/pull/2398.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/2398.patch"},"body":"Today the only way of overriding the color of an SVG is by looping over the internal ofShapes and calling setUseShapeColor on them from the outside. This seems a bit hacky & requires some knowledge about ofxSVG internals. I think it is better if this functionality is exposed through a pair of public methods.\r\n\r\nTested on Mac OS 10.7"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2397","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2397/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2397/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2397/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2397","id":17554753,"number":2397,"title":"Improve projectGenerator","user":{"login":"LeoColomb","id":846943,"avatar_url":"https://2.gravatar.com/avatar/d38889330c0d923ab07c3566f0c02c14?d=https%3A%2F%2Fidenticons.github.com%2F9b0717bb9dfcf59d8595ea9f529a3769.png","gravatar_id":"d38889330c0d923ab07c3566f0c02c14","url":"https://api.github.com/users/LeoColomb","html_url":"https://github.com/LeoColomb","followers_url":"https://api.github.com/users/LeoColomb/followers","following_url":"https://api.github.com/users/LeoColomb/following{/other_user}","gists_url":"https://api.github.com/users/LeoColomb/gists{/gist_id}","starred_url":"https://api.github.com/users/LeoColomb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/LeoColomb/subscriptions","organizations_url":"https://api.github.com/users/LeoColomb/orgs","repos_url":"https://api.github.com/users/LeoColomb/repos","events_url":"https://api.github.com/users/LeoColomb/events{/privacy}","received_events_url":"https://api.github.com/users/LeoColomb/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2013-08-02T10:57:35Z","updated_at":"2013-08-03T15:35:16Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/2397","diff_url":"https://github.com/openframeworks/openFrameworks/pull/2397.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/2397.patch"},"body":"* Fix parsing `addons.make` (error about inclusion in projects)\r\n* Improve UI"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2395","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2395/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2395/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2395/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2395","id":17545822,"number":2395,"title":"OF7.4 ofVideoPlayer::nextFrame() Bug...","user":{"login":"yty","id":841770,"avatar_url":"https://2.gravatar.com/avatar/a8010f501bbf6646afd69a8c3afc773a?d=https%3A%2F%2Fidenticons.github.com%2Ffd07b54170df1ee5062afa89905d7511.png","gravatar_id":"a8010f501bbf6646afd69a8c3afc773a","url":"https://api.github.com/users/yty","html_url":"https://github.com/yty","followers_url":"https://api.github.com/users/yty/followers","following_url":"https://api.github.com/users/yty/following{/other_user}","gists_url":"https://api.github.com/users/yty/gists{/gist_id}","starred_url":"https://api.github.com/users/yty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yty/subscriptions","organizations_url":"https://api.github.com/users/yty/orgs","repos_url":"https://api.github.com/users/yty/repos","events_url":"https://api.github.com/users/yty/events{/privacy}","received_events_url":"https://api.github.com/users/yty/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13/labels","id":375917,"number":13,"title":"0.8.1","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://1.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":34,"closed_issues":9,"state":"open","created_at":"2013-07-11T13:25:32Z","updated_at":"2013-08-21T08:18:48Z","due_on":"2013-09-08T07:00:00Z"},"comments":7,"created_at":"2013-08-02T06:06:21Z","updated_at":"2013-08-17T03:57:44Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"this method can work correctly only when the frame rate of mov file is 30.1.\r\nIf the frame rate is 30.0, the nextFrame method will stop update when it accumulate up to 30.\r\n\r\nDevelopment environment: vs2010 ,win7...."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2381","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2381/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2381/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2381/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2381","id":17464883,"number":2381,"title":"error with fontExample on iOS","user":{"login":"ofTheo","id":144000,"avatar_url":"https://1.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https%3A%2F%2Fidenticons.github.com%2F4927fe2904a479337f27af83d0ab970f.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13/labels","id":375917,"number":13,"title":"0.8.1","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://1.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":34,"closed_issues":9,"state":"open","created_at":"2013-07-11T13:25:32Z","updated_at":"2013-08-21T08:18:48Z","due_on":"2013-09-08T07:00:00Z"},"comments":3,"created_at":"2013-07-31T17:26:49Z","updated_at":"2013-08-11T18:32:24Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"the example runs fine but this is printed out for each TTF font loaded. \r\n\r\n[ error ] ofTrueTypeFont: loadFontFace(): couldn't create new face for \"\": FT_Error 2 unknown freetype\r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2372","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2372/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2372/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2372/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2372","id":17443641,"number":2372,"title":"ofImage.draw() lost 1 pixel in IOS retina device","user":{"login":"Geistyp","id":1510109,"avatar_url":"https://1.gravatar.com/avatar/6b42478d52d104580a1ae20f973975c2?d=https%3A%2F%2Fidenticons.github.com%2F45d69e69ac304ad6dc2269ebba53ba69.png","gravatar_id":"6b42478d52d104580a1ae20f973975c2","url":"https://api.github.com/users/Geistyp","html_url":"https://github.com/Geistyp","followers_url":"https://api.github.com/users/Geistyp/followers","following_url":"https://api.github.com/users/Geistyp/following{/other_user}","gists_url":"https://api.github.com/users/Geistyp/gists{/gist_id}","starred_url":"https://api.github.com/users/Geistyp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Geistyp/subscriptions","organizations_url":"https://api.github.com/users/Geistyp/orgs","repos_url":"https://api.github.com/users/Geistyp/repos","events_url":"https://api.github.com/users/Geistyp/events{/privacy}","received_events_url":"https://api.github.com/users/Geistyp/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13/labels","id":375917,"number":13,"title":"0.8.1","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://1.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":34,"closed_issues":9,"state":"open","created_at":"2013-07-11T13:25:32Z","updated_at":"2013-08-21T08:18:48Z","due_on":"2013-09-08T07:00:00Z"},"comments":7,"created_at":"2013-07-31T10:03:10Z","updated_at":"2013-08-01T03:45:21Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"http://imgur.com/HMQfoJ3\r\n\r\n```c++\r\nvoid testApp::draw(){\r\n ofBackground(255, 0, 0);\r\n\tif ( photo.isAllocated() ){\r\n photo.draw(0, 0, ofGetWidth(), ofGetHeight());\r\n }\r\n}\r\n```\r\nthis should be fullscreen, but result lost 1 pixel in width.\r\n\r\nI test this in iTouch5 - iOS 6.1.3"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2366","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2366/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2366/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2366/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2366","id":17391327,"number":2366,"title":"feature suggestions : lambdas for threads and events","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://1.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https%3A%2F%2Fidenticons.github.com%2Fd5f2a0f6c7205cf195a62516b19b4f2c.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following{/other_user}","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":11,"created_at":"2013-07-30T11:41:41Z","updated_at":"2013-08-19T15:05:22Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"suggestions:\r\n\r\n```c++\r\nofEvent::addListener(std::function); // add a lambda listener to an ofEvent. Need to consider how we could remove the listener later\r\nofThread::setThreadedFunction(std::function); // override a thread to use a lambda instead of needing to extend the class\r\n```"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2361","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2361/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2361/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2361/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2361","id":17341704,"number":2361,"title":"bug: bool binary has no effect with ofFile on Windows","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://1.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https%3A%2F%2Fidenticons.github.com%2Fd5f2a0f6c7205cf195a62516b19b4f2c.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following{/other_user}","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2013-07-29T14:21:04Z","updated_at":"2013-07-29T15:14:11Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"To reproduce:\r\n\r\n```\r\n\t\tofFile save(\"somethingToWrite.txt\", ofFile::WriteOnly, true);\r\n\t\tsave << 256;\r\n\t\tsave.close();\r\n```\r\n\r\nthis will create a text file with the contents \"256\" in ASCII.\r\n\r\nI'm not 100% sure this is the correct usage pattern for the `binary` argument."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2356","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2356/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2356/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2356/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2356","id":17317196,"number":2356,"title":"GLUT warning when debugging on OSX","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://1.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https%3A%2F%2Fidenticons.github.com%2F415d63db900c8f799d40632b6eed98dc.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following{/other_user}","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"}],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2013-07-28T21:01:13Z","updated_at":"2013-07-29T18:11:29Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"when i create a breakpoint and debug in OSX using a minimal example i get a warning from xcode in the console:\r\n\r\n```\r\nwarning: Could not find object file \"/openFrameworks/GLUT/OF_CUSTOM_GLUT/libForeground.a(macx_foreground.o)\" - no debug information available for \"/Users/mcast/Code/GLUT-ToPost/macx_foreground.m\".\r\n```\r\n\r\n```c++\r\n#include \"ofMain.h\"\r\nclass ofApp : public ofBaseApp {\r\npublic:\r\n\tvoid setup() {\r\n\t// breakpoint here\r\n\t}\r\n};\r\nint main( ){\r\n\tofSetupOpenGL(1280, 720, OF_WINDOW);\r\n\tofRunApp(new ofApp());\r\n}\r\n```\r\n\r\nthis is on xcode 4.2, osx 10.6.8"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2335","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2335/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2335/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2335/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2335","id":17162874,"number":2335,"title":"bugfix : c++11 on xcode","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://1.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https%3A%2F%2Fidenticons.github.com%2Fd5f2a0f6c7205cf195a62516b19b4f2c.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following{/other_user}","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"state":"open","assignee":null,"milestone":null,"comments":40,"created_at":"2013-07-24T15:18:50Z","updated_at":"2013-08-20T09:42:56Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hey all!\r\n\r\n[EDIT]\r\nIt seems that we don't have c++11 support right now with on osx.\r\nThe issue primarily is that we have to use libc++ with c++11, which does not support legacy tr1 namespace symbols. To fix this bug we need to write a c++11 version which does not use tr1 namespace.\r\n\r\nThis could either involve:\r\n1. Writing a win/linux/mac C++11 implementation without tr1\r\n2. Writing a special implementation for libc++ without tr1 for osx\r\n\r\nI think the only difference between 1 and 2 is more testing is required for 1. (i.e. the code should look identical).\r\n\r\n[/EDIT]\r\n\r\nIn ofTypes I edited:\r\n```\r\n#if (_MSC_VER)\r\n#include \r\n#else\r\n#include \r\n// import smart pointers utils into std\r\nnamespace std {\r\n\tusing std::tr1::shared_ptr;\r\n\tusing std::tr1::weak_ptr;\r\n\tusing std::tr1::static_pointer_cast;\r\n\tusing std::tr1::dynamic_pointer_cast;\r\n\tusing std::tr1::const_pointer_cast;\r\n\tusing std::tr1::enable_shared_from_this;\r\n\tusing std::tr1::__dynamic_cast_tag;\r\n}\r\n#endif\r\n```\r\n\r\nto:\r\n```\r\n#if (_MSC_VER || true) // <----basically hacked here\r\n#include \r\nusing std::shared_ptr;\r\n#else\r\n#include \r\n// import smart pointers utils into std\r\nnamespace std {\r\n\tusing std::tr1::shared_ptr;\r\n\tusing std::tr1::weak_ptr;\r\n\tusing std::tr1::static_pointer_cast;\r\n\tusing std::tr1::dynamic_pointer_cast;\r\n\tusing std::tr1::const_pointer_cast;\r\n\tusing std::tr1::enable_shared_from_this;\r\n\tusing std::tr1::__dynamic_cast_tag;\r\n}\r\n#endif\r\n```\r\n\r\nnow i get complaints on `__dynamic_cast_tag`. And ran out of google results. ideas?\r\n\r\n```\r\n/Volumes/SHARED/openFrameworks/libs/openFrameworks/types/ofTypes.h:169:36: No type named '__dynamic_cast_tag' in namespace 'std'\r\n```"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2321","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2321/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2321/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2321/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2321","id":17045573,"number":2321,"title":"ofImage grabScreen doesn't take into account screen orientation on desktop","user":{"login":"arturoc","id":48240,"avatar_url":"https://1.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https%3A%2F%2Fidenticons.github.com%2Fd6a785f81d36e5ce6bd64105058af796.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13/labels","id":375917,"number":13,"title":"0.8.1","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://1.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":34,"closed_issues":9,"state":"open","created_at":"2013-07-11T13:25:32Z","updated_at":"2013-08-21T08:18:48Z","due_on":"2013-09-08T07:00:00Z"},"comments":0,"created_at":"2013-07-22T13:13:09Z","updated_at":"2013-07-22T13:13:09Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":""},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2299","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2299/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2299/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2299/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2299","id":16977756,"number":2299,"title":"remove deprecated ofxCvMain.h","user":{"login":"danomatika","id":480637,"avatar_url":"https://2.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https%3A%2F%2Fidenticons.github.com%2Fc08a17ef2f16970cd18f487915737897.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","html_url":"https://github.com/danomatika","followers_url":"https://api.github.com/users/danomatika/followers","following_url":"https://api.github.com/users/danomatika/following{/other_user}","gists_url":"https://api.github.com/users/danomatika/gists{/gist_id}","starred_url":"https://api.github.com/users/danomatika/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danomatika/subscriptions","organizations_url":"https://api.github.com/users/danomatika/orgs","repos_url":"https://api.github.com/users/danomatika/repos","events_url":"https://api.github.com/users/danomatika/events{/privacy}","received_events_url":"https://api.github.com/users/danomatika/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13/labels","id":375917,"number":13,"title":"0.8.1","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://1.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":34,"closed_issues":9,"state":"open","created_at":"2013-07-11T13:25:32Z","updated_at":"2013-08-21T08:18:48Z","due_on":"2013-09-08T07:00:00Z"},"comments":3,"created_at":"2013-07-19T15:45:44Z","updated_at":"2013-07-19T17:15:11Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"This has been marked deprecated for a while and anyone still including it will have to update other aspects of their project anyway."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2283","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2283/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2283/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2283/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2283","id":16865521,"number":2283,"title":"deprecate/remove ofxQuickTimeGrabber/Player classes","user":{"login":"danomatika","id":480637,"avatar_url":"https://2.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https%3A%2F%2Fidenticons.github.com%2Fc08a17ef2f16970cd18f487915737897.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","html_url":"https://github.com/danomatika","followers_url":"https://api.github.com/users/danomatika/followers","following_url":"https://api.github.com/users/danomatika/following{/other_user}","gists_url":"https://api.github.com/users/danomatika/gists{/gist_id}","starred_url":"https://api.github.com/users/danomatika/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danomatika/subscriptions","organizations_url":"https://api.github.com/users/danomatika/orgs","repos_url":"https://api.github.com/users/danomatika/repos","events_url":"https://api.github.com/users/danomatika/events{/privacy}","received_events_url":"https://api.github.com/users/danomatika/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":5,"created_at":"2013-07-17T13:55:11Z","updated_at":"2013-07-17T17:32:41Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"These don't compile with newer OSX sdks without Carbon right? "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2282","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2282/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2282/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2282/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2282","id":16865466,"number":2282,"title":"ofGLUtils function naming inconsistencies: \"Gl\" versus \"GL\"","user":{"login":"danomatika","id":480637,"avatar_url":"https://2.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https%3A%2F%2Fidenticons.github.com%2Fc08a17ef2f16970cd18f487915737897.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","html_url":"https://github.com/danomatika","followers_url":"https://api.github.com/users/danomatika/followers","following_url":"https://api.github.com/users/danomatika/following{/other_user}","gists_url":"https://api.github.com/users/danomatika/gists{/gist_id}","starred_url":"https://api.github.com/users/danomatika/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danomatika/subscriptions","organizations_url":"https://api.github.com/users/danomatika/orgs","repos_url":"https://api.github.com/users/danomatika/repos","events_url":"https://api.github.com/users/danomatika/events{/privacy}","received_events_url":"https://api.github.com/users/danomatika/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2013-07-17T13:54:12Z","updated_at":"2013-07-17T13:54:12Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Maybe this is something we missed in Maine, but there are two OpenGL camel case abbreviations in the functions in ofGLUtils.h. AFAICT all the newer stuff uses \"GL\", while these use \"Gl\":\r\n\r\n int ofGetGlInternalFormat(const ofPixels& pix);\r\n int ofGetGlInternalFormat(const ofShortPixels& pix);\r\n int ofGetGlInternalFormat(const ofFloatPixels& pix);\r\n\r\n string ofGetGlInternalFormatName(int glInternalFormat);\r\n int ofGetGLFormatFromInternal(int glInternalFormat); \r\n int ofGetGlType(const ofPixels & pixels);\r\n int ofGetGlType(const ofShortPixels & pixels);\r\n int ofGetGlType(const ofFloatPixels & pixels);\r\n\r\nIf we've made the other api-breaking changes already, these should be updated before the 0.8.0 release IMO."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2279","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2279/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2279/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2279/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2279","id":16854399,"number":2279,"title":"Feature Request: projectGenerator Post-Build Event","user":{"login":"yty","id":841770,"avatar_url":"https://2.gravatar.com/avatar/a8010f501bbf6646afd69a8c3afc773a?d=https%3A%2F%2Fidenticons.github.com%2Ffd07b54170df1ee5062afa89905d7511.png","gravatar_id":"a8010f501bbf6646afd69a8c3afc773a","url":"https://api.github.com/users/yty","html_url":"https://github.com/yty","followers_url":"https://api.github.com/users/yty/followers","following_url":"https://api.github.com/users/yty/following{/other_user}","gists_url":"https://api.github.com/users/yty/gists{/gist_id}","starred_url":"https://api.github.com/users/yty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yty/subscriptions","organizations_url":"https://api.github.com/users/yty/orgs","repos_url":"https://api.github.com/users/yty/repos","events_url":"https://api.github.com/users/yty/events{/privacy}","received_events_url":"https://api.github.com/users/yty/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2013-07-17T09:02:03Z","updated_at":"2013-07-17T09:02:03Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"for example:\r\n\r\nif I check \"ofxxxx\" to create a project, the program should add\r\n\r\n \"xcopy /e /i /y \"$(ProjectDir)..\\..\\..\\addons\\ofxxxx\\vs2010\\*.dll\" \"$(ProjectDir)bin\" \r\n\r\nto Property->Build Events->Post-Build Event->Command Line automaticlly\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2275","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2275/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2275/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2275/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2275","id":16836283,"number":2275,"title":"ofxAndroidMagneticField proposal [Do not Merge]","user":{"login":"onelittleweb","id":1971236,"avatar_url":"https://2.gravatar.com/avatar/18210b55555e6c85623bf09a41f0d782?d=https%3A%2F%2Fidenticons.github.com%2F4154dd7e468496840b44a9ad69938046.png","gravatar_id":"18210b55555e6c85623bf09a41f0d782","url":"https://api.github.com/users/onelittleweb","html_url":"https://github.com/onelittleweb","followers_url":"https://api.github.com/users/onelittleweb/followers","following_url":"https://api.github.com/users/onelittleweb/following{/other_user}","gists_url":"https://api.github.com/users/onelittleweb/gists{/gist_id}","starred_url":"https://api.github.com/users/onelittleweb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/onelittleweb/subscriptions","organizations_url":"https://api.github.com/users/onelittleweb/orgs","repos_url":"https://api.github.com/users/onelittleweb/repos","events_url":"https://api.github.com/users/onelittleweb/events{/privacy}","received_events_url":"https://api.github.com/users/onelittleweb/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2013-07-16T21:54:43Z","updated_at":"2013-08-01T11:58:28Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/2275","diff_url":"https://github.com/openframeworks/openFrameworks/pull/2275.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/2275.patch"},"body":"First implementation of the MagneticField Sensor in Android. Needs testing and feedback from Android tablets and phones. \r\n\r\nThe compass uses accelerometer to improve sensor feedback trying to avoid 2.3 API and gyroscope / gravity hardware so maybe it´s not the most accurate way.\r\n \r\nMagnetic field is implemented in a different JAVA class, not sure if it should share class with other Android sensors similar to iOS CoreLocation.\r\n\r\nAn example is included for testing.\r\n\r\nBest,\r\n\r\nP."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2274","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2274/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2274/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2274/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2274","id":16836158,"number":2274,"title":"boring examples","user":{"login":"danomatika","id":480637,"avatar_url":"https://2.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https%3A%2F%2Fidenticons.github.com%2Fc08a17ef2f16970cd18f487915737897.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","html_url":"https://github.com/danomatika","followers_url":"https://api.github.com/users/danomatika/followers","following_url":"https://api.github.com/users/danomatika/following{/other_user}","gists_url":"https://api.github.com/users/danomatika/gists{/gist_id}","starred_url":"https://api.github.com/users/danomatika/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danomatika/subscriptions","organizations_url":"https://api.github.com/users/danomatika/orgs","repos_url":"https://api.github.com/users/danomatika/repos","events_url":"https://api.github.com/users/danomatika/events{/privacy}","received_events_url":"https://api.github.com/users/danomatika/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13/labels","id":375917,"number":13,"title":"0.8.1","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://1.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":34,"closed_issues":9,"state":"open","created_at":"2013-07-11T13:25:32Z","updated_at":"2013-08-21T08:18:48Z","due_on":"2013-09-08T07:00:00Z"},"comments":6,"created_at":"2013-07-16T21:51:45Z","updated_at":"2013-07-31T18:10:37Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"In writing my mondo-all-examples app, I noticed there are a few examples that are just boring/non-sexy compared to the rest:\r\n\r\n* threadExample\r\n* eventsExample\r\n* conversionExample\r\n* advancedExample\r\n* advancedGlExample\r\n\r\nPerhaps they could be updated to both more instructive *and* fun to play with."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2273","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2273/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2273/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2273/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2273","id":16830044,"number":2273,"title":"ProjectGenerator issues ","user":{"login":"danomatika","id":480637,"avatar_url":"https://2.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https%3A%2F%2Fidenticons.github.com%2Fc08a17ef2f16970cd18f487915737897.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","html_url":"https://github.com/danomatika","followers_url":"https://api.github.com/users/danomatika/followers","following_url":"https://api.github.com/users/danomatika/following{/other_user}","gists_url":"https://api.github.com/users/danomatika/gists{/gist_id}","starred_url":"https://api.github.com/users/danomatika/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danomatika/subscriptions","organizations_url":"https://api.github.com/users/danomatika/orgs","repos_url":"https://api.github.com/users/danomatika/repos","events_url":"https://api.github.com/users/danomatika/events{/privacy}","received_events_url":"https://api.github.com/users/danomatika/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project-generator","name":"project-generator","color":"444444"}],"state":"open","assignee":null,"milestone":null,"comments":14,"created_at":"2013-07-16T19:55:49Z","updated_at":"2013-07-17T05:38:25Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I'm noticing a number of issues with the \"old\" PG in `apps/devApps/projectGenerator`:\r\n\r\n* seems to not use addons_config.mk ADDONS_INCLUDES_EXCLUDE\r\n* if you generate/update projects for multiple CodeBlocks platforms(win, linux), the files are overwritten (I assume this is by design since a suffix in the name wouldn't be needed in the platform zip download)\r\n* the win codeblocks project I generated fails to link with the following error:\r\n\r\n cannot find -lstrmbase\r\n cannot find -lz"}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4981'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '100300'), ('server', 'GitHub.com'), ('last-modified', 'Wed, 21 Aug 2013 10:42:46 GMT'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last"'), ('etag', '"ff413c4ac1c8950a3c117d577119cd9e"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 21 Aug 2013 10:54:16 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1377085393')] +[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2496","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2496/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2496/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2496/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2496","id":18345408,"number":2496,"title":"ofColor == and != operators ignore alpha","user":{"login":"rbeitra","id":78566,"avatar_url":"https://0.gravatar.com/avatar/e70c7c24ab262f6f057820f2f35edab7?d=https%3A%2F%2Fidenticons.github.com%2Fa32bc8141e168ff20fdfe3f0fbc72155.png","gravatar_id":"e70c7c24ab262f6f057820f2f35edab7","url":"https://api.github.com/users/rbeitra","html_url":"https://github.com/rbeitra","followers_url":"https://api.github.com/users/rbeitra/followers","following_url":"https://api.github.com/users/rbeitra/following{/other_user}","gists_url":"https://api.github.com/users/rbeitra/gists{/gist_id}","starred_url":"https://api.github.com/users/rbeitra/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rbeitra/subscriptions","organizations_url":"https://api.github.com/users/rbeitra/orgs","repos_url":"https://api.github.com/users/rbeitra/repos","events_url":"https://api.github.com/users/rbeitra/events{/privacy}","received_events_url":"https://api.github.com/users/rbeitra/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2013-08-21T10:02:25Z","updated_at":"2013-08-21T10:02:25Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Currently the == and != operators for ofColor only compare rgb, the alpha value is ignored. Is there a good reason why this is happening? Are many users expecting alpha to be ignored?\r\n\r\nI can think of 2 solutions here. Ideally:\r\n- fix these operator functions to also compare alpha\r\n\r\nOr if that will break things for people then at least:\r\n- add a new function (ofColor::equalsRGBA()?) which does it\r\n\r\n\r\nhttps://github.com/openframeworks/openFrameworks/blob/57f7670e594758ef36d75cf896da003f6081bd75/libs/openFrameworks/types/ofColor.cpp#L545\r\nhttps://github.com/openframeworks/openFrameworks/blob/57f7670e594758ef36d75cf896da003f6081bd75/libs/openFrameworks/types/ofColor.cpp#L551"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2495","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2495/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2495/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2495/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2495","id":18340779,"number":2495,"title":"ofHideCursor() not working on OSX 10.8 (v0.8.0)","user":{"login":"comoc","id":843396,"avatar_url":"https://0.gravatar.com/avatar/c5d3d0065be3563bd1361cca886b80d9?d=https%3A%2F%2Fidenticons.github.com%2F9bd74aa54d59a3ddcfc282a365dbe453.png","gravatar_id":"c5d3d0065be3563bd1361cca886b80d9","url":"https://api.github.com/users/comoc","html_url":"https://github.com/comoc","followers_url":"https://api.github.com/users/comoc/followers","following_url":"https://api.github.com/users/comoc/following{/other_user}","gists_url":"https://api.github.com/users/comoc/gists{/gist_id}","starred_url":"https://api.github.com/users/comoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/comoc/subscriptions","organizations_url":"https://api.github.com/users/comoc/orgs","repos_url":"https://api.github.com/users/comoc/repos","events_url":"https://api.github.com/users/comoc/events{/privacy}","received_events_url":"https://api.github.com/users/comoc/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2013-08-21T08:04:26Z","updated_at":"2013-08-21T08:21:10Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofHideCursor() seems not working on Mac OS X 10.8 with of_v0.8.0_osx_release.\r\n```c++\r\nvoid testApp::setup(){\r\n ofHideCursor(); // <- The cursor is still shown.\r\n}\r\n```\r\nFor reference, I tried following code, then works fine.\r\n```c++\r\nvoid testApp::setup(){\r\nifdef __APPLE__\r\n CGDisplayHideCursor(NULL); // <- OK\r\n#endif\r\n}\r\n```\r\nCompiled with Xcode 4.6.2."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2494","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2494/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2494/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2494/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2494","id":18335634,"number":2494,"title":"targetconditionals.h not found error in XCode with openframeworks 0.8","user":{"login":"Jiffer","id":2372348,"avatar_url":"https://2.gravatar.com/avatar/1a4365e1a5be1e4b894f60f2add73c6f?d=https%3A%2F%2Fidenticons.github.com%2F294f1d758201292712cfef7db1f9aa7c.png","gravatar_id":"1a4365e1a5be1e4b894f60f2add73c6f","url":"https://api.github.com/users/Jiffer","html_url":"https://github.com/Jiffer","followers_url":"https://api.github.com/users/Jiffer/followers","following_url":"https://api.github.com/users/Jiffer/following{/other_user}","gists_url":"https://api.github.com/users/Jiffer/gists{/gist_id}","starred_url":"https://api.github.com/users/Jiffer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Jiffer/subscriptions","organizations_url":"https://api.github.com/users/Jiffer/orgs","repos_url":"https://api.github.com/users/Jiffer/repos","events_url":"https://api.github.com/users/Jiffer/events{/privacy}","received_events_url":"https://api.github.com/users/Jiffer/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13/labels","id":375917,"number":13,"title":"0.8.1","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://2.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":34,"closed_issues":9,"state":"open","created_at":"2013-07-11T13:25:32Z","updated_at":"2013-08-21T08:18:48Z","due_on":"2013-09-08T07:00:00Z"},"comments":0,"created_at":"2013-08-21T04:30:04Z","updated_at":"2013-08-21T08:18:48Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I was getting this error out of the box with osx 10.8.1 and xcode 4.6.3. I had to install the command line tools and that resolved it for me.\r\n\r\nGo to Xcode > Preferences > Downloads and click on \"install\" for the command line tools \r\n\r\ndid some digging and didn't see this addressed for the most (as of now) recent versions of things but I did find many other things to try that didn't work before stumbling on this."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2493","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2493/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2493/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2493/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2493","id":18322687,"number":2493,"title":"const-corrections","user":{"login":"bakercp","id":300484,"avatar_url":"https://1.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https%3A%2F%2Fidenticons.github.com%2F4aaaf6f29fe96098740aa5f98b6c8b12.png","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","url":"https://api.github.com/users/bakercp","html_url":"https://github.com/bakercp","followers_url":"https://api.github.com/users/bakercp/followers","following_url":"https://api.github.com/users/bakercp/following{/other_user}","gists_url":"https://api.github.com/users/bakercp/gists{/gist_id}","starred_url":"https://api.github.com/users/bakercp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bakercp/subscriptions","organizations_url":"https://api.github.com/users/bakercp/orgs","repos_url":"https://api.github.com/users/bakercp/repos","events_url":"https://api.github.com/users/bakercp/events{/privacy}","received_events_url":"https://api.github.com/users/bakercp/received_events","type":"User"},"labels":[],"state":"open","assignee":{"login":"bakercp","id":300484,"avatar_url":"https://1.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https%3A%2F%2Fidenticons.github.com%2F4aaaf6f29fe96098740aa5f98b6c8b12.png","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","url":"https://api.github.com/users/bakercp","html_url":"https://github.com/bakercp","followers_url":"https://api.github.com/users/bakercp/followers","following_url":"https://api.github.com/users/bakercp/following{/other_user}","gists_url":"https://api.github.com/users/bakercp/gists{/gist_id}","starred_url":"https://api.github.com/users/bakercp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bakercp/subscriptions","organizations_url":"https://api.github.com/users/bakercp/orgs","repos_url":"https://api.github.com/users/bakercp/repos","events_url":"https://api.github.com/users/bakercp/events{/privacy}","received_events_url":"https://api.github.com/users/bakercp/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://2.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":53,"closed_issues":8,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-08-21T01:16:45Z","due_on":"2013-10-31T07:00:00Z"},"comments":0,"created_at":"2013-08-20T21:30:09Z","updated_at":"2013-08-21T03:02:16Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/2493","diff_url":"https://github.com/openframeworks/openFrameworks/pull/2493.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/2493.patch"},"body":"~~Both `enableTextureTarget()` and `disableTextureTarget()` might raise some questions about their `const`-ness, but those member functions (which conditionally access an outside global state) are kind of awkwardly situated to begin with.\r\n\r\nThis is API changing and will likely break any addons that extend the various interfaces and helper classes (such as `ofVideoPlayer`).~~\r\n\r\n... in the meantime, this evolved into a little bigger (but still important project). I would propose that we not try to fix every little const problem in one PR, but this one can focus on video and images/pixels/textures, which are tightly coupled."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2492","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2492/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2492/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2492/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2492","id":18313623,"number":2492,"title":"add install scripts for openSUSE in scripts/linux/opensuse","user":{"login":"prusnak","id":42201,"avatar_url":"https://2.gravatar.com/avatar/b54b0eb056f30cc9c4daf193cf8eabae?d=https%3A%2F%2Fidenticons.github.com%2Ffca7ac68a9bcfe7ec3a017257471f198.png","gravatar_id":"b54b0eb056f30cc9c4daf193cf8eabae","url":"https://api.github.com/users/prusnak","html_url":"https://github.com/prusnak","followers_url":"https://api.github.com/users/prusnak/followers","following_url":"https://api.github.com/users/prusnak/following{/other_user}","gists_url":"https://api.github.com/users/prusnak/gists{/gist_id}","starred_url":"https://api.github.com/users/prusnak/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/prusnak/subscriptions","organizations_url":"https://api.github.com/users/prusnak/orgs","repos_url":"https://api.github.com/users/prusnak/repos","events_url":"https://api.github.com/users/prusnak/events{/privacy}","received_events_url":"https://api.github.com/users/prusnak/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2013-08-20T18:46:26Z","updated_at":"2013-08-20T19:04:01Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/2492","diff_url":"https://github.com/openframeworks/openFrameworks/pull/2492.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/2492.patch"},"body":"I created install scripts for openSUSE distribution by modifying the ones for Fedora."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2491","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2491/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2491/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2491/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2491","id":18283673,"number":2491,"title":"ofxOscReceiver crashes if space in the name","user":{"login":"jvcleave","id":150037,"avatar_url":"https://0.gravatar.com/avatar/9c0384a91739bea093f453cf40a59742?d=https%3A%2F%2Fidenticons.github.com%2F5ed96817efb118a36c00303b90e4b003.png","gravatar_id":"9c0384a91739bea093f453cf40a59742","url":"https://api.github.com/users/jvcleave","html_url":"https://github.com/jvcleave","followers_url":"https://api.github.com/users/jvcleave/followers","following_url":"https://api.github.com/users/jvcleave/following{/other_user}","gists_url":"https://api.github.com/users/jvcleave/gists{/gist_id}","starred_url":"https://api.github.com/users/jvcleave/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jvcleave/subscriptions","organizations_url":"https://api.github.com/users/jvcleave/orgs","repos_url":"https://api.github.com/users/jvcleave/repos","events_url":"https://api.github.com/users/jvcleave/events{/privacy}","received_events_url":"https://api.github.com/users/jvcleave/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2013-08-20T08:36:18Z","updated_at":"2013-08-20T10:02:41Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"to replicate change \"check\" to \"check me\" in oscParametersReceiver and oscParametersSender\r\n\r\nbacktrace\r\n````\r\n#0 0x00026bf4 in ofxOscReceiver::getParameter (this=0x13dec14, parameter=@0x13ded9c) at ofxOscReceiver.cpp:235\r\n#1 0x00024d9d in ofxOscParameterSync::update (this=0x13dec10) at ofxOscParameterSync.cpp:31\r\n#2 0x00017c6c in ofApp::update (this=0x13dec00) at ofApp.cpp:27\r\n#3 0x0001613d in ofBaseApp::update (this=0x13dec00, args=@0x6acb35) at ofBaseApp.h:44\r\n#4 0x0031d3dc in Poco::PriorityDelegate::notify (this=, sender=0x0, arguments=) at PriorityDelegate.h:168\r\n#5 0x00321e0a in Poco::PriorityStrategy >::notify () at /Volumes/WORK_IN_PROGRESS/OPENFRAMEWORKS/openFrameworks/libs/poco/include/Poco/PriorityStrategy.h:81\r\n#6 0x00321e0a in Poco::AbstractEvent >, Poco::AbstractPriorityDelegate, Poco::FastMutex>::notify (this=, pSender=0x0, args=@0x6acb35) at PriorityStrategy.h:241\r\n#7 0x00320673 in ofNotifyEvent, ofEventArgs> (event=@0x13df450, args=@0x6acb35) at ofEventUtils.h:172\r\n#8 0x0031ffc0 in ofNotifyUpdate () at ofEvents.cpp:165\r\n#9 0x00363c89 in ofAppGLFWWindow::runAppViaInfiniteLoop (this=0xd3ca30, appPtr=0x13dec00) at ofAppGLFWWindow.cpp:286\r\n#10 0x00319feb in ofRunApp (OFSA=0x13dec00) at ofAppRunner.cpp:137\r\n#11 0x00002e6a in main () at main.cpp:11\r\n````\r\n![screen shot 2013-08-20 at 4 27 39 am](https://f.cloud.github.com/assets/150037/991978/7ca33fa8-0973-11e3-9dc4-299ff86d19a1.png)\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2490","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2490/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2490/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2490/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2490","id":18257205,"number":2490,"title":"OF_RECTMODE_CENTER not playing nice with textures (0.8.0)","user":{"login":"prisonerjohn","id":119702,"avatar_url":"https://0.gravatar.com/avatar/b52cabeecffe4497699db813a715456f?d=https%3A%2F%2Fidenticons.github.com%2F00cfaa1a8406a24a7a9f07482e2b1938.png","gravatar_id":"b52cabeecffe4497699db813a715456f","url":"https://api.github.com/users/prisonerjohn","html_url":"https://github.com/prisonerjohn","followers_url":"https://api.github.com/users/prisonerjohn/followers","following_url":"https://api.github.com/users/prisonerjohn/following{/other_user}","gists_url":"https://api.github.com/users/prisonerjohn/gists{/gist_id}","starred_url":"https://api.github.com/users/prisonerjohn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/prisonerjohn/subscriptions","organizations_url":"https://api.github.com/users/prisonerjohn/orgs","repos_url":"https://api.github.com/users/prisonerjohn/repos","events_url":"https://api.github.com/users/prisonerjohn/events{/privacy}","received_events_url":"https://api.github.com/users/prisonerjohn/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-2D","name":"section-2D","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/regression","name":"regression","color":"e10c02"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13/labels","id":375917,"number":13,"title":"0.8.1","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://2.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":34,"closed_issues":9,"state":"open","created_at":"2013-07-11T13:25:32Z","updated_at":"2013-08-21T08:18:48Z","due_on":"2013-09-08T07:00:00Z"},"comments":2,"created_at":"2013-08-19T19:01:24Z","updated_at":"2013-08-20T09:55:46Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"If I set `ofSetRectMode(OF_RECTMODE_CENTER);` textures are stuck to the top-left of the window, no matter what (x, y) params I give to `draw(x, y, w, h)`.\r\n\r\nHere is an example ofApp.h\r\n```cpp\r\n#pragma once\r\n\r\n#include \"ofMain.h\"\r\n\r\nclass ofApp : public ofBaseApp{\r\n\r\n\tpublic:\r\n\t\tvoid setup();\r\n\t\tvoid update();\r\n\t\tvoid draw();\r\n\r\n\t\tofImage image;\r\n};\r\n```\r\n\r\nAnd the matching ofApp.cpp\r\n```cpp\r\n#include \"ofApp.h\"\r\n\r\n//--------------------------------------------------------------\r\nvoid ofApp::setup(){\r\n ofSetRectMode(OF_RECTMODE_CENTER);\r\n \r\n image.loadImage(\"tdf_1972_poster.jpg\");\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid ofApp::update(){\r\n\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid ofApp::draw(){\r\n image.draw(mouseX, mouseY, 320, 240);\r\n ofRect(mouseX, mouseY, image.getWidth(), image.getHeight());\r\n}\r\n```\r\n\r\nHaving the same issue on tag `0.8.0` and `master`, with `ofImage` and `ofVideoPlayer`. It works as expected if I take out the call to `ofSetRectMode();`.\r\n\r\n![screen shot 2013-08-19 at 3 00 32 pm](https://f.cloud.github.com/assets/119702/988426/aea3da5c-0901-11e3-85e0-e03a44e6105a.png)\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2489","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2489/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2489/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2489/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2489","id":18249318,"number":2489,"title":"ofQTKitGrabber logs at verbose level, but ignores setVerbose","user":{"login":"admsyn","id":609318,"avatar_url":"https://1.gravatar.com/avatar/9bfde17cfd50ff8f12cae51ab1079d72?d=https%3A%2F%2Fidenticons.github.com%2Fd3361161dca2fbe24ffea23b9a2d233b.png","gravatar_id":"9bfde17cfd50ff8f12cae51ab1079d72","url":"https://api.github.com/users/admsyn","html_url":"https://github.com/admsyn","followers_url":"https://api.github.com/users/admsyn/followers","following_url":"https://api.github.com/users/admsyn/following{/other_user}","gists_url":"https://api.github.com/users/admsyn/gists{/gist_id}","starred_url":"https://api.github.com/users/admsyn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/admsyn/subscriptions","organizations_url":"https://api.github.com/users/admsyn/orgs","repos_url":"https://api.github.com/users/admsyn/repos","events_url":"https://api.github.com/users/admsyn/events{/privacy}","received_events_url":"https://api.github.com/users/admsyn/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2013-08-19T16:30:42Z","updated_at":"2013-08-20T09:47:57Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"In `listDevices` ofQTKitGrabber [logs devices at verbose level](https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/video/ofQTKitGrabber.mm#L144). However, it also [ignores setVerbose](https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/video/ofQTKitGrabber.mm#L923).\r\n\r\nThis means that seemingly correct code like:\r\n\r\n```\r\nvidGrabber.setVerbose(true);\r\nvidGrabber.listDevices();\r\n```\r\n\r\nprints nothing.\r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2488","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2488/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2488/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2488/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2488","id":18213515,"number":2488,"title":"DONTMERGEYET - Feature updates HTTP Requests","user":{"login":"danthemellowman","id":719564,"avatar_url":"https://0.gravatar.com/avatar/79621943dfc6272eae9697464ad33696?d=https%3A%2F%2Fidenticons.github.com%2Fb03d3f3b4371f2676213314af7fe19d8.png","gravatar_id":"79621943dfc6272eae9697464ad33696","url":"https://api.github.com/users/danthemellowman","html_url":"https://github.com/danthemellowman","followers_url":"https://api.github.com/users/danthemellowman/followers","following_url":"https://api.github.com/users/danthemellowman/following{/other_user}","gists_url":"https://api.github.com/users/danthemellowman/gists{/gist_id}","starred_url":"https://api.github.com/users/danthemellowman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danthemellowman/subscriptions","organizations_url":"https://api.github.com/users/danthemellowman/orgs","repos_url":"https://api.github.com/users/danthemellowman/repos","events_url":"https://api.github.com/users/danthemellowman/events{/privacy}","received_events_url":"https://api.github.com/users/danthemellowman/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":6,"created_at":"2013-08-18T20:44:29Z","updated_at":"2013-08-20T18:33:35Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/2488","diff_url":"https://github.com/openframeworks/openFrameworks/pull/2488.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/2488.patch"},"body":"Let me know what I should change. You can test the app I added to devApps, httpRequests, to see how it all works. Use the 1-7 keys to change between the different requests to HTTPBin. \r\n\r\n(I know I need to fix my computers' GIT accounts/setup they suffer from multiple personalities) "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2487","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2487/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2487/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2487/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2487","id":18203928,"number":2487,"title":"ofFBO::numColorbuffers BUG! . (of0.8.0)","user":{"login":"yty","id":841770,"avatar_url":"https://0.gravatar.com/avatar/a8010f501bbf6646afd69a8c3afc773a?d=https%3A%2F%2Fidenticons.github.com%2Ffd07b54170df1ee5062afa89905d7511.png","gravatar_id":"a8010f501bbf6646afd69a8c3afc773a","url":"https://api.github.com/users/yty","html_url":"https://github.com/yty","followers_url":"https://api.github.com/users/yty/followers","following_url":"https://api.github.com/users/yty/following{/other_user}","gists_url":"https://api.github.com/users/yty/gists{/gist_id}","starred_url":"https://api.github.com/users/yty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yty/subscriptions","organizations_url":"https://api.github.com/users/yty/orgs","repos_url":"https://api.github.com/users/yty/repos","events_url":"https://api.github.com/users/yty/events{/privacy}","received_events_url":"https://api.github.com/users/yty/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/regression","name":"regression","color":"e10c02"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13/labels","id":375917,"number":13,"title":"0.8.1","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://2.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":34,"closed_issues":9,"state":"open","created_at":"2013-07-11T13:25:32Z","updated_at":"2013-08-21T08:18:48Z","due_on":"2013-09-08T07:00:00Z"},"comments":3,"created_at":"2013-08-18T06:39:24Z","updated_at":"2013-08-20T09:31:40Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"vs2012+win7+of0.80\r\n\r\nnumColorbuffers set anything, textureNum Always 1.\r\n\r\n...\r\n ofFbo\t\t\tbaseMaskFbo;\r\n ofFbo\t\t\tanalyzeFbo;\r\n\tofFbo::Settings s;\r\n\ts.width\t\t\t=1024;\r\n\ts.height\t\t\t= 768;\r\n\ts.internalformat = GL_LUMINANCE;\r\n\ts.numSamples\t\t= 0;\r\n\ts.numColorbuffers\t= 7; \r\n\tbaseMaskFbo.allocate(s);\r\n...\r\n\r\nof0.80:\r\n\tcout << baseMaskFbo.getNumTextures() << endl; ===> 1 BUG!!!\r\nof0.74:\r\n cout << baseMaskFbo.getNumTextures() << endl; ===> 7 OK!!!"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2485","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2485/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2485/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2485/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2485","id":18191632,"number":2485,"title":"The ofPixels OF0.74 and OF0.80 What is the difference?","user":{"login":"yty","id":841770,"avatar_url":"https://0.gravatar.com/avatar/a8010f501bbf6646afd69a8c3afc773a?d=https%3A%2F%2Fidenticons.github.com%2Ffd07b54170df1ee5062afa89905d7511.png","gravatar_id":"a8010f501bbf6646afd69a8c3afc773a","url":"https://api.github.com/users/yty","html_url":"https://github.com/yty","followers_url":"https://api.github.com/users/yty/followers","following_url":"https://api.github.com/users/yty/following{/other_user}","gists_url":"https://api.github.com/users/yty/gists{/gist_id}","starred_url":"https://api.github.com/users/yty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yty/subscriptions","organizations_url":"https://api.github.com/users/yty/orgs","repos_url":"https://api.github.com/users/yty/repos","events_url":"https://api.github.com/users/yty/events{/privacy}","received_events_url":"https://api.github.com/users/yty/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-2D","name":"section-2D","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/regression","name":"regression","color":"e10c02"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13/labels","id":375917,"number":13,"title":"0.8.1","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://2.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":34,"closed_issues":9,"state":"open","created_at":"2013-07-11T13:25:32Z","updated_at":"2013-08-21T08:18:48Z","due_on":"2013-09-08T07:00:00Z"},"comments":2,"created_at":"2013-08-17T09:15:04Z","updated_at":"2013-08-20T09:28:32Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"```\r\nofPixels pixels;\r\nofImage img;\r\n\r\nofSetDataPathRoot(\"E:/Program Files/of_v0.8.0_vs_release/examples/graphics/imageLoaderExample/bin/data/images/\");\r\nimg.loadImage(\"transparency.png\");\r\nimg.getTextureReference().readToPixels(pixels);\r\n```\r\n\r\n0.74 => ok\r\n\r\n0.80 => error\r\n\r\n[ofPixels: error ] allocate(): unknown image type, not allocating\r\n[ofGLUtils: error ] ofGetGlFormatAndType(): internal format not recognized, returning GL_RGBA\r\n\r\nIf you add “pixels.allocate(img.getWidth(),img.getHeight(),OF_IMAGE_COLOR_ALPHA);”\r\n0.80=>error\r\n[ofPixels: error ] allocate(): unknown image type, not allocating"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2484","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2484/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2484/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2484/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2484","id":18191355,"number":2484,"title":"serialExample Exit exception . (of0.8.0)","user":{"login":"yty","id":841770,"avatar_url":"https://0.gravatar.com/avatar/a8010f501bbf6646afd69a8c3afc773a?d=https%3A%2F%2Fidenticons.github.com%2Ffd07b54170df1ee5062afa89905d7511.png","gravatar_id":"a8010f501bbf6646afd69a8c3afc773a","url":"https://api.github.com/users/yty","html_url":"https://github.com/yty","followers_url":"https://api.github.com/users/yty/followers","following_url":"https://api.github.com/users/yty/following{/other_user}","gists_url":"https://api.github.com/users/yty/gists{/gist_id}","starred_url":"https://api.github.com/users/yty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yty/subscriptions","organizations_url":"https://api.github.com/users/yty/orgs","repos_url":"https://api.github.com/users/yty/repos","events_url":"https://api.github.com/users/yty/events{/privacy}","received_events_url":"https://api.github.com/users/yty/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2013-08-17T08:38:59Z","updated_at":"2013-08-17T08:38:59Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"vs2012 +win7sp1+of0.8.0\r\n\r\nrelease and debug..compiler ===> pressed Esc \r\n\r\nrelease : ==> free.c \r\nvoid __cdecl _free_base (void * pBlock)\r\n{\r\n\r\n int retval = 0;\r\n\r\n\r\n if (pBlock == NULL)\r\n return;\r\n\r\n RTCCALLBACK(_RTC_Free_hook, (pBlock, 0));\r\n\r\n retval = HeapFree(_crtheap, 0, pBlock);\r\n if (retval == 0) ===========================>> Exception \r\n {\r\n errno = _get_errno_from_oserr(GetLastError());\r\n }\r\n}\r\n\r\ndebug: ===>xtree\r\n\r\nPairii _Eqrange(const key_type& _Keyval)\r\n\t\t{\t// find leftmost node not less than _Keyval\r\n\t\t_Nodeptr _Pnode = _Root();\r\n\t\t_Nodeptr _Lonode = this->_Myhead;\t// end() if search fails\r\n\t\t_Nodeptr _Hinode = this->_Myhead;\t// end() if search fails\r\n\r\n\t\twhile (!this->_Isnil(_Pnode)) ================>> Exception \r\n ........\r\n}\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2481","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2481/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2481/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2481/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2481","id":18182396,"number":2481,"title":"ofRectRounded does not respond to ofSetCircleResolution or ofSetCurveResolution","user":{"login":"rezaali","id":555207,"avatar_url":"https://2.gravatar.com/avatar/548374013b9c6e50ebbd2294e12d4f31?d=https%3A%2F%2Fidenticons.github.com%2F3a40e945e1f4b9b9b7a99b8d18c2c8c1.png","gravatar_id":"548374013b9c6e50ebbd2294e12d4f31","url":"https://api.github.com/users/rezaali","html_url":"https://github.com/rezaali","followers_url":"https://api.github.com/users/rezaali/followers","following_url":"https://api.github.com/users/rezaali/following{/other_user}","gists_url":"https://api.github.com/users/rezaali/gists{/gist_id}","starred_url":"https://api.github.com/users/rezaali/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rezaali/subscriptions","organizations_url":"https://api.github.com/users/rezaali/orgs","repos_url":"https://api.github.com/users/rezaali/repos","events_url":"https://api.github.com/users/rezaali/events{/privacy}","received_events_url":"https://api.github.com/users/rezaali/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-2D","name":"section-2D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2013-08-16T22:37:49Z","updated_at":"2013-08-20T09:22:39Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":""},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2479","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2479/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2479/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2479/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2479","id":18151262,"number":2479,"title":"add read-only access to programmable GL matrix stack","user":{"login":"tgfrerer","id":423509,"avatar_url":"https://2.gravatar.com/avatar/b37673dd0fb953e948cfd5475d49de9f?d=https%3A%2F%2Fidenticons.github.com%2F88b2d0ec0c458a087a93354fbcd730e6.png","gravatar_id":"b37673dd0fb953e948cfd5475d49de9f","url":"https://api.github.com/users/tgfrerer","html_url":"https://github.com/tgfrerer","followers_url":"https://api.github.com/users/tgfrerer/followers","following_url":"https://api.github.com/users/tgfrerer/following{/other_user}","gists_url":"https://api.github.com/users/tgfrerer/gists{/gist_id}","starred_url":"https://api.github.com/users/tgfrerer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tgfrerer/subscriptions","organizations_url":"https://api.github.com/users/tgfrerer/orgs","repos_url":"https://api.github.com/users/tgfrerer/repos","events_url":"https://api.github.com/users/tgfrerer/events{/privacy}","received_events_url":"https://api.github.com/users/tgfrerer/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2013-08-16T10:58:22Z","updated_at":"2013-08-19T15:48:30Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/2479","diff_url":"https://github.com/openframeworks/openFrameworks/pull/2479.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/2479.patch"},"body":"in 'classic' OpenGL 2.0, you could call:\r\n\r\n````glGetFloatv(GL_MODELVIEW_MATRIX, matrixPtr);````\r\n\r\nTo read back the current matrix state from the GPU.\r\n\r\nThis is not possible with modern OpenGL, since the matrix stack is now client-side.\r\n\r\nWith this PR, we get this functionality back into the programmable GL renderer pipeline. Query the current matrix state as in:\r\n\r\n````ofMatrix4x4 currentModelViewMatrix = ofGetGLProgrammableRenderer()->getModelViewMatrix();````\r\n\r\nSince these are read-only methods, they are marked ````const````\r\n\r\nSigned-off-by: tgfrerer "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2478","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2478/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2478/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2478/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2478","id":18150369,"number":2478,"title":"Replacing GLSurfaceView with TextureView","user":{"login":"ikillbombs","id":1842262,"avatar_url":"https://0.gravatar.com/avatar/0e972803504e237e42c9a680885498c8?d=https%3A%2F%2Fidenticons.github.com%2F24e60592283a8e112c32915b7846022d.png","gravatar_id":"0e972803504e237e42c9a680885498c8","url":"https://api.github.com/users/ikillbombs","html_url":"https://github.com/ikillbombs","followers_url":"https://api.github.com/users/ikillbombs/followers","following_url":"https://api.github.com/users/ikillbombs/following{/other_user}","gists_url":"https://api.github.com/users/ikillbombs/gists{/gist_id}","starred_url":"https://api.github.com/users/ikillbombs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ikillbombs/subscriptions","organizations_url":"https://api.github.com/users/ikillbombs/orgs","repos_url":"https://api.github.com/users/ikillbombs/repos","events_url":"https://api.github.com/users/ikillbombs/events{/privacy}","received_events_url":"https://api.github.com/users/ikillbombs/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/android","name":"android","color":"2bc4ad"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2013-08-16T10:30:22Z","updated_at":"2013-08-20T09:48:45Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hi everyone,\r\n\r\nI was wondering if it's a good idea to replace Android GLSurfaceView with GLTextureView. The advantages of replacing this is that multiple views can be combined. after this modification we can create a mapKit for Android and combine it with a native GUI.\r\n\r\nHere's an example link:\r\nhttps://github.com/eaglesakura/gltextureview/tree/issue/1/master"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2477","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2477/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2477/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2477/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2477","id":18146713,"number":2477,"title":"ofxgui setUseTTF bug! (of0.8.0)","user":{"login":"yty","id":841770,"avatar_url":"https://0.gravatar.com/avatar/a8010f501bbf6646afd69a8c3afc773a?d=https%3A%2F%2Fidenticons.github.com%2Ffd07b54170df1ee5062afa89905d7511.png","gravatar_id":"a8010f501bbf6646afd69a8c3afc773a","url":"https://api.github.com/users/yty","html_url":"https://github.com/yty","followers_url":"https://api.github.com/users/yty/followers","following_url":"https://api.github.com/users/yty/following{/other_user}","gists_url":"https://api.github.com/users/yty/gists{/gist_id}","starred_url":"https://api.github.com/users/yty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yty/subscriptions","organizations_url":"https://api.github.com/users/yty/orgs","repos_url":"https://api.github.com/users/yty/repos","events_url":"https://api.github.com/users/yty/events{/privacy}","received_events_url":"https://api.github.com/users/yty/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2013-08-16T08:38:14Z","updated_at":"2013-08-20T09:19:09Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"...\r\ngui.add(twoCircles.setup(\"two circles\"));\r\ngui.add(ringButton.setup(\"ring\"));\r\ngui.add(screenSize.setup(\"screen size\", \"\"));\r\nguiExample =>gui.setUseTTF(true);\r\n...\r\n\r\nText display error....\r\n\r\n![guibug](https://f.cloud.github.com/assets/841770/974290/01366e98-064f-11e3-8e69-146ec8c3a74f.jpg)"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2476","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2476/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2476/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2476/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2476","id":18144117,"number":2476,"title":"parameterGroupExample error! (of0.8.0)","user":{"login":"yty","id":841770,"avatar_url":"https://0.gravatar.com/avatar/a8010f501bbf6646afd69a8c3afc773a?d=https%3A%2F%2Fidenticons.github.com%2Ffd07b54170df1ee5062afa89905d7511.png","gravatar_id":"a8010f501bbf6646afd69a8c3afc773a","url":"https://api.github.com/users/yty","html_url":"https://github.com/yty","followers_url":"https://api.github.com/users/yty/followers","following_url":"https://api.github.com/users/yty/following{/other_user}","gists_url":"https://api.github.com/users/yty/gists{/gist_id}","starred_url":"https://api.github.com/users/yty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yty/subscriptions","organizations_url":"https://api.github.com/users/yty/orgs","repos_url":"https://api.github.com/users/yty/repos","events_url":"https://api.github.com/users/yty/events{/privacy}","received_events_url":"https://api.github.com/users/yty/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13/labels","id":375917,"number":13,"title":"0.8.1","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://2.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":34,"closed_issues":9,"state":"open","created_at":"2013-07-11T13:25:32Z","updated_at":"2013-08-21T08:18:48Z","due_on":"2013-09-08T07:00:00Z"},"comments":6,"created_at":"2013-08-16T07:07:57Z","updated_at":"2013-08-20T09:25:21Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"E:\\Program Files\\of_v0.8.0_vs_release\\examples\\gui\\parameterGroupExample\r\nvs2012+win7...\r\n\r\nofxGuiGroup.cpp\r\n\r\n 77 line \tofLogError() << \"ofxBaseGroup; can't add control of type \" << type;\r\n\r\n[ error ] ofxBaseGroup; can't add control of type class ofReadOnlyParameter\r\n[ error ] ofxBaseGroup; can't add control of type class ofReadOnlyParameter\r\n[ error ] ofXml: loadFromBuffer(): DOM ERROR\r\n[warning] ofXml: setTo(): empty document\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2475","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2475/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2475/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2475/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2475","id":18143895,"number":2475,"title":"0.8.0 Light and Material problem","user":{"login":"Geistyp","id":1510109,"avatar_url":"https://2.gravatar.com/avatar/6b42478d52d104580a1ae20f973975c2?d=https%3A%2F%2Fidenticons.github.com%2F45d69e69ac304ad6dc2269ebba53ba69.png","gravatar_id":"6b42478d52d104580a1ae20f973975c2","url":"https://api.github.com/users/Geistyp","html_url":"https://github.com/Geistyp","followers_url":"https://api.github.com/users/Geistyp/followers","following_url":"https://api.github.com/users/Geistyp/following{/other_user}","gists_url":"https://api.github.com/users/Geistyp/gists{/gist_id}","starred_url":"https://api.github.com/users/Geistyp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Geistyp/subscriptions","organizations_url":"https://api.github.com/users/Geistyp/orgs","repos_url":"https://api.github.com/users/Geistyp/repos","events_url":"https://api.github.com/users/Geistyp/events{/privacy}","received_events_url":"https://api.github.com/users/Geistyp/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":14,"created_at":"2013-08-16T06:58:32Z","updated_at":"2013-08-20T11:21:00Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"http://imgur.com/GiiGBx3\r\nLeft is 0.7.4 , right is 0.8.0.\r\n\r\nsame code\r\n```c++\r\nfloat no_mat[] = {0.0f, 0.0f, 0.0f, 1.0f};\r\nfloat mat_ambient[] = {0.0215, 0.1745, 0.0215, 1.0};\r\nfloat mat_diffuse[] = {0.07568, 0.61424, 0.07568, 1.0};\r\nfloat mat_specular[] = {0.633, 0.727811, 0.633, 1.0};\r\nfloat low_shininess = 15.0f;\r\n\r\n//light properties\r\nfloat ambient[] = {0.5f, 0.5f, 0.5f, 1.0f};\r\nfloat diffuse[] = {1.0f, 1.0f, 1.0f, 1.0f};\r\nfloat specular[] = {1.0f, 1.0f, 1.0f, 1.0f};\r\nfloat position[] = {100.0f, 100.0f, 100.0f, 0.0f};\r\n\r\nvoid ofApp::setup(){\r\n\r\n\tglLightfv(GL_LIGHT0, GL_AMBIENT, ambient);\r\n\tglLightfv(GL_LIGHT0, GL_DIFFUSE, diffuse);\r\n\tglLightfv(GL_LIGHT0, GL_POSITION, position);\r\n\r\n\tglEnable(GL_LIGHT0);\r\n\tglEnable(GL_LIGHTING);\r\n\r\n\tglEnable(GL_DEPTH_TEST);\r\n\tglShadeModel(GL_SMOOTH); \r\n}\r\n\r\nvoid ofApp::draw(){\r\n\r\n\tcam.begin();\r\n\r\n\tofPushMatrix();\r\n\tofTranslate(0, 0);\r\n\r\n\tglMaterialfv(GL_FRONT, GL_AMBIENT, mat_ambient);\r\n\tglMaterialfv(GL_FRONT, GL_DIFFUSE, mat_diffuse);\r\n\tglMaterialfv(GL_FRONT, GL_SPECULAR, mat_specular);\r\n\tglMaterialf(GL_FRONT, GL_SHININESS, low_shininess);\r\n\tglMaterialfv(GL_FRONT, GL_EMISSION, no_mat);\r\n\tofSphere(0, 0, 50);\r\n\r\n\tofPopMatrix();\r\n\r\n\r\n\tcam.end();\r\n}\r\n```\r\n\r\nofMaterial not work? I try to load a model with material, material data loaded, but show nothing.\r\nhttp://imgur.com/yMZda6w\r\n\r\n```c++\r\nofxAssimpModelLoader loader;\r\nofxAssimpMeshHelper mesh;\r\n\r\nofLight light;\r\n\r\nvoid ofApp::setup(){\r\n\r\n\tofDisableArbTex(); \r\n\tloader.loadModel(\"mini.dae\");\r\n\r\n\tofEnableSeparateSpecularLight();\r\n\tofEnableDepthTest();\r\n\tglShadeModel(GL_SMOOTH); \r\n\t\r\n\tlight.enable();\r\n\t\r\n\tmesh= loader.getMeshHelper(0);\r\n}\r\n\r\nvoid ofApp::draw(){\r\n\r\n \tcam.begin();\r\n\tofPushMatrix();\r\n\tofTranslate(0, 0);\r\n\r\n\t//loader.draw(OF_MESH_FILL);\r\n\r\n // (mesh.material).diffuse = {r=0.752941191 g=0.517647088 b=0.372548997 a=1.000000}\r\n // (mesh.material).ambient = {r=0.100000001 g=0.100000001 b=0.100000001 a=1.000000}\r\n // (mesh.material).specular = {r=0.400000006 g=0.400000006 b=0.400000006 a=1.000000}\r\n // (mesh.material).emissive = {r=0.000000000 g=0.000000000 b=0.000000000 a=1.000000}\r\n // (mesh.material).shininess = 10.000000\r\n\tmesh.material.begin();\r\n\tofSphere(0, 0, 50);\r\n\tmesh.material.end();\r\n\r\n\tofPopMatrix();\r\n\tcam.end();\r\n}\r\n```"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2473","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2473/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2473/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2473/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2473","id":18116496,"number":2473,"title":"Fixed bug in ofCairoRenderer where moveTo commands are interpreted wrong","user":{"login":"bgstaal","id":165258,"avatar_url":"https://0.gravatar.com/avatar/4fcf8b28dcc18014970d4930d0a00e72?d=https%3A%2F%2Fidenticons.github.com%2Fc78b173dd2f89f95c1414e53b78123fe.png","gravatar_id":"4fcf8b28dcc18014970d4930d0a00e72","url":"https://api.github.com/users/bgstaal","html_url":"https://github.com/bgstaal","followers_url":"https://api.github.com/users/bgstaal/followers","following_url":"https://api.github.com/users/bgstaal/following{/other_user}","gists_url":"https://api.github.com/users/bgstaal/gists{/gist_id}","starred_url":"https://api.github.com/users/bgstaal/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bgstaal/subscriptions","organizations_url":"https://api.github.com/users/bgstaal/orgs","repos_url":"https://api.github.com/users/bgstaal/repos","events_url":"https://api.github.com/users/bgstaal/events{/privacy}","received_events_url":"https://api.github.com/users/bgstaal/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2013-08-15T17:35:55Z","updated_at":"2013-08-15T17:36:34Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/2473","diff_url":"https://github.com/openframeworks/openFrameworks/pull/2473.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/2473.patch"},"body":"This results in cairo sub paths not starting from the supplied point of the moveTo command. Adding one lien of code fixes this."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2472","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2472/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2472/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2472/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2472","id":18107084,"number":2472,"title":"Break Points at Setup (of0.8.0)","user":{"login":"Vamoss","id":245841,"avatar_url":"https://0.gravatar.com/avatar/80c722474d39c07271917a466f4e26dd?d=https%3A%2F%2Fidenticons.github.com%2F406e8d2580cf39474c77a170d51800e3.png","gravatar_id":"80c722474d39c07271917a466f4e26dd","url":"https://api.github.com/users/Vamoss","html_url":"https://github.com/Vamoss","followers_url":"https://api.github.com/users/Vamoss/followers","following_url":"https://api.github.com/users/Vamoss/following{/other_user}","gists_url":"https://api.github.com/users/Vamoss/gists{/gist_id}","starred_url":"https://api.github.com/users/Vamoss/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Vamoss/subscriptions","organizations_url":"https://api.github.com/users/Vamoss/orgs","repos_url":"https://api.github.com/users/Vamoss/repos","events_url":"https://api.github.com/users/Vamoss/events{/privacy}","received_events_url":"https://api.github.com/users/Vamoss/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2013-08-15T14:05:20Z","updated_at":"2013-08-15T15:14:28Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hi,\r\n\r\nI dont know exactly what is happening, but the setup accuses a break point in two cases, one at ofLogToFile(\"myFile.log\", true);\r\n\r\nAnd another in the end of testApp::setup(){}.\r\nIn this case the stack is not readable, but in the ofLogToFile Call Stack is:\r\nmsvcr110d.dll!_unlock(int locknum) Line 366\tC\r\nmsvcr110d.dll!operator delete(void * pUserData) Line 57\tC++\r\nmsvcr110d.dll!operator delete(void * pUserData) Line 56\tC++\r\n 03a31748()\tUnknown\r\nmsvcr110d.dll!_heap_alloc_base(unsigned int size) Line 57\tC\r\nmsvcr110d.dll!_heap_alloc_dbg_impl(unsigned int nSize, int nBlockUse, const char * szFileName, int nLine, int * errno_tmp) Line 431\tC++\r\nmsvcr110d.dll!_nh_malloc_dbg_impl(unsigned int nSize, int nhFlag, int nBlockUse, const char * szFileName, int nLine, int * errno_tmp) Line 239\tC++\r\nmsvcr110d.dll!_nh_malloc_dbg(unsigned int nSize, int nhFlag, int nBlockUse, const char * szFileName, int nLine) Line 302\tC++\r\nmsvcr110d.dll!malloc(unsigned int nSize) Line 56\tC++\r\nmsvcr110d.dll!operator new(unsigned int size) Line 59\tC++\r\nRender_debug.exe!std::_Allocate(unsigned int _Count, std::_Container_proxy * __formal) Line 28\tC++\r\nRender_debug.exe!std::allocator::allocate(unsigned int _Count) Line 591\tC++\r\nRender_debug.exe!std::_String_alloc<0,std::_String_base_types > >::_Alloc_proxy() Line 671\tC++ \tRender_debug.exe!std::_String_alloc<0,std::_String_base_types > >::_String_alloc<0,std::_String_base_types > >(const std::allocator & __formal) Line 651\tC++\r\nRender_debug.exe!std::basic_string,std::allocator >::basic_string,std::allocator >() Line 749\tC++\r\nRender_debug.exe!Poco::FileImpl::FileImpl(void)\tUnknown\r\nRender_debug.exe!Poco::File::File(void)\tUnknown\r\nRender_debug.exe!ofFile::ofFile() Line 260\tC++\r\nRender_debug.exe!ofFileLoggerChannel::ofFileLoggerChannel(const std::basic_string,std::allocator > & path, bool append) Line 288\tC++\r\nRender_debug.exe!ofLogToFile(const std::basic_string,std::allocator > & path, bool append) Line 41\tC++\r\nRender_debug.exe!SuperLog::setup(std::basic_string,std::allocator > filename) Line 17\tC++\r\nRender_debug.exe!testApp::setup() Line 14\tC++\r\nRender_debug.exe!ofBaseApp::setup(ofEventArgs & args) Line 41\tC++\r\nRender_debug.exe!Poco::PriorityDelegate::notify(const void * sender, ofEventArgs & arguments) Line 168\tC++\r\nRender_debug.exe!Poco::PriorityStrategy >::notify(const void * sender, ofEventArgs & arguments) Line 81\tC++\r\nRender_debug.exe!Poco::AbstractEvent >,Poco::AbstractPriorityDelegate,Poco::FastMutex>::notify(const void * pSender, ofEventArgs & args) Line 242\tC++\r\nRender_debug.exe!ofNotifyEvent,ofEventArgs>(ofEvent & event, ofEventArgs & args) Line 172\tC++\r\nRender_debug.exe!ofNotifySetup() Line 120\tC++\r\n\r\nI am at a Windows 7, Visual Studio 2012 Express with OpenFrameworks 0.8.0.\r\n\r\nThanks,\r\nCarlos"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2469","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2469/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2469/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2469/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2469","id":18048273,"number":2469,"title":"enums and #defines for ofxiOS have weird case and don't deprecate old enums","user":{"login":"ofTheo","id":144000,"avatar_url":"https://0.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https%3A%2F%2Fidenticons.github.com%2F4927fe2904a479337f27af83d0ab970f.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":{"login":"ofTheo","id":144000,"avatar_url":"https://0.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https%3A%2F%2Fidenticons.github.com%2F4927fe2904a479337f27af83d0ab970f.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13/labels","id":375917,"number":13,"title":"0.8.1","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://2.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":34,"closed_issues":9,"state":"open","created_at":"2013-07-11T13:25:32Z","updated_at":"2013-08-21T08:18:48Z","due_on":"2013-09-08T07:00:00Z"},"comments":3,"created_at":"2013-08-14T11:58:58Z","updated_at":"2013-08-20T12:43:20Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ie:\r\n\r\n```\r\n#define ofxiOS_DEVICE_IPHONE_2G\t\t\"iPhone1,1\"\r\n#define ofxiOS_DEVICE_IPHONE_3G\t\t\"iPhone1,2\"\r\n#define ofxiOS_DEVICE_IPHONE_3GS\t\"iPhone2,1\"\r\n#define ofxiOS_DEVICE_IPHONE_4\t\t\"iPhone3,1\"\r\n\r\n#define ofxiOS_DEVICE_IPOD_1STGEN\t\"iPod1,1\"\r\n#define ofxiOS_DEVICE_IPOD_2NDGEN\t\"iPod2,1\"\r\n#define ofxiOS_DEVICE_IPOD_3RDGEN\t\"iPod3,1\"\r\n#define ofxiOS_DEVICE_IPOD_4THGEN\t\"iPod4,1\"\r\n```\r\n\r\naccording to the old approach it should be: \r\n\r\n```\r\n#define OFXIOS_DEVICE_IPHONE_2G\t\"iPhone1,1\"\r\n#define OFXIOS_DEVICE_IPHONE_3G\t\"iPhone1,2\"\r\n#define OFXIOS_DEVICE_IPHONE_3GS\t\"iPhone2,1\"\r\n#define OFXIOS_DEVICE_IPHONE_4\t\t\"iPhone3,1\"\r\n\r\n#define OFXIOS_DEVICE_IPOD_1STGEN\t\"iPod1,1\"\r\n#define OFXIOS_DEVICE_IPOD_2NDGEN\t\"iPod2,1\"\r\n#define OFXIOS_DEVICE_IPOD_3RDGEN\t\"iPod3,1\"\r\n#define OFXIOS_DEVICE_IPOD_4THGEN\t\"iPod4,1\"\r\n```\r\n\r\nwith #define for old ofxiPhone names:\r\n\r\nie: \r\n`#define OFXIPHONE_DEVICE_IPHONE_2G OFXIOS_DEVICE_IPHONE_2G`\r\n\r\nI wonder if we should change \r\nofxiOS_ -> OFXIOS \r\n\r\nwe would then need to do two levels of #defines one for the 0.8.0 release and one for pre 0.8.0 \r\n\r\nie: \r\n\r\n`#define OFXIPHONE_DEVICE_IPHONE_2G OFXIOS_DEVICE_IPHONE_2G`\r\n`#define ofxiOS_DEVICE_IPHONE_2G OFXIOS_DEVICE_IPHONE_2G`\r\n\r\nNote: there are more examples of these #defines and enums, I'm just using this set as an example. \r\n\r\n\r\nALSO fix this: OFXIPHONE_MAPKIT_HYRBID -> OFXIPHONE_MAPKIT_HYBRID\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2468","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2468/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2468/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2468/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2468","id":18046461,"number":2468,"title":"ofAppGLFWWindow Verbose Messages","user":{"login":"kamend","id":462951,"avatar_url":"https://0.gravatar.com/avatar/1b0002ee319a421a56ef94c199382fb7?d=https%3A%2F%2Fidenticons.github.com%2F855526feec5d5e0ffaf4ea2115979d44.png","gravatar_id":"1b0002ee319a421a56ef94c199382fb7","url":"https://api.github.com/users/kamend","html_url":"https://github.com/kamend","followers_url":"https://api.github.com/users/kamend/followers","following_url":"https://api.github.com/users/kamend/following{/other_user}","gists_url":"https://api.github.com/users/kamend/gists{/gist_id}","starred_url":"https://api.github.com/users/kamend/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kamend/subscriptions","organizations_url":"https://api.github.com/users/kamend/orgs","repos_url":"https://api.github.com/users/kamend/repos","events_url":"https://api.github.com/users/kamend/events{/privacy}","received_events_url":"https://api.github.com/users/kamend/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2013-08-14T11:08:04Z","updated_at":"2013-08-20T09:15:05Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Hey guys,\r\nI am playing around with OF 0.8 and I noticed that ofAppGLFWWindow has some verbose messages, when pressing mouse buttons and keys, is this intentional or you just forgot to remove the messages?\r\n\r\n[verbose] ofAppGLFWWindow: mouse button: 0\r\n[verbose] ofAppGLFWWindow: mouse button: 0\r\n[verbose] ofAppGLFWWindow: mouse button: 0\r\n[verbose] ofAppGLFWWindow: mouse button: 0\r\n[verbose] ofAppGLFWWindow: key: 343 state: 1\r\n[verbose] ofAppGLFWWindow: key: 343 state: 0\r\n[verbose] ofAppGLFWWindow: key: 343 state: 1\r\n\r\nGreat work btw!"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2464","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2464/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2464/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2464/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2464","id":18038636,"number":2464,"title":"Can I use ofGstVideoPlayer in Windows? (of0.8.0)","user":{"login":"yty","id":841770,"avatar_url":"https://0.gravatar.com/avatar/a8010f501bbf6646afd69a8c3afc773a?d=https%3A%2F%2Fidenticons.github.com%2Ffd07b54170df1ee5062afa89905d7511.png","gravatar_id":"a8010f501bbf6646afd69a8c3afc773a","url":"https://api.github.com/users/yty","html_url":"https://github.com/yty","followers_url":"https://api.github.com/users/yty/followers","following_url":"https://api.github.com/users/yty/following{/other_user}","gists_url":"https://api.github.com/users/yty/gists{/gist_id}","starred_url":"https://api.github.com/users/yty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yty/subscriptions","organizations_url":"https://api.github.com/users/yty/orgs","repos_url":"https://api.github.com/users/yty/repos","events_url":"https://api.github.com/users/yty/events{/privacy}","received_events_url":"https://api.github.com/users/yty/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2013-08-14T07:28:45Z","updated_at":"2013-08-17T03:57:32Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Because ofQuickTimePlayer only play *.mov, would like to use gst ..."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2460","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2460/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2460/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2460/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2460","id":18003137,"number":2460,"title":"ofxAndroidVideoPlayer working on emulator not on device (iStick A200)","user":{"login":"I33N","id":520375,"avatar_url":"https://1.gravatar.com/avatar/ba8d7c3b4532d3747c30b9be91dc20d5?d=https%3A%2F%2Fidenticons.github.com%2F029dd6120545e3ca65422e4479af8e99.png","gravatar_id":"ba8d7c3b4532d3747c30b9be91dc20d5","url":"https://api.github.com/users/I33N","html_url":"https://github.com/I33N","followers_url":"https://api.github.com/users/I33N/followers","following_url":"https://api.github.com/users/I33N/following{/other_user}","gists_url":"https://api.github.com/users/I33N/gists{/gist_id}","starred_url":"https://api.github.com/users/I33N/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/I33N/subscriptions","organizations_url":"https://api.github.com/users/I33N/orgs","repos_url":"https://api.github.com/users/I33N/repos","events_url":"https://api.github.com/users/I33N/events{/privacy}","received_events_url":"https://api.github.com/users/I33N/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2013-08-13T15:34:27Z","updated_at":"2013-08-13T17:21:44Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I am working with the iStick A200 (PQLabs ANdroid stick) and wanted to test the video player example. It worked great on the emulator (using auto instead of external in the manifest) but when I launch it on the device I can only see 1 line of pixel flickering.\r\n\r\nThe movie is loaded without problem, I can even see the resolution is OK and I have no problem reading it with the basic videoplayer.\r\n\r\nAs the iStick is not supported on OSX I can't monitor it with logcat and I have to copy the .apk on the device to test. So I can't copy the log. But it looks just fine.\r\n\r\nAny idea? Did you have more luck on another device?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2457","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2457/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2457/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2457/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2457","id":17992953,"number":2457,"title":"vboDrawInstancedExample hardware check not accurate. ","user":{"login":"ofTheo","id":144000,"avatar_url":"https://0.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https%3A%2F%2Fidenticons.github.com%2F4927fe2904a479337f27af83d0ab970f.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13/labels","id":375917,"number":13,"title":"0.8.1","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://2.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":34,"closed_issues":9,"state":"open","created_at":"2013-07-11T13:25:32Z","updated_at":"2013-08-21T08:18:48Z","due_on":"2013-09-08T07:00:00Z"},"comments":2,"created_at":"2013-08-13T12:09:51Z","updated_at":"2013-08-14T10:21:22Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"vboDrawInstancedExample seems to work fine for some people even if the check for glDrawElementsInstanced returns 0. \r\n\r\nMaybe there is a better way to test that doesn't get some false negatives.\r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,13049.msg56329.html#msg56329\r\n\r\nrelates to #2433 "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2456","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2456/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2456/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2456/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2456","id":17986223,"number":2456,"title":"Window not being redrawn while resizing","user":{"login":"bgstaal","id":165258,"avatar_url":"https://0.gravatar.com/avatar/4fcf8b28dcc18014970d4930d0a00e72?d=https%3A%2F%2Fidenticons.github.com%2Fc78b173dd2f89f95c1414e53b78123fe.png","gravatar_id":"4fcf8b28dcc18014970d4930d0a00e72","url":"https://api.github.com/users/bgstaal","html_url":"https://github.com/bgstaal","followers_url":"https://api.github.com/users/bgstaal/followers","following_url":"https://api.github.com/users/bgstaal/following{/other_user}","gists_url":"https://api.github.com/users/bgstaal/gists{/gist_id}","starred_url":"https://api.github.com/users/bgstaal/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bgstaal/subscriptions","organizations_url":"https://api.github.com/users/bgstaal/orgs","repos_url":"https://api.github.com/users/bgstaal/repos","events_url":"https://api.github.com/users/bgstaal/events{/privacy}","received_events_url":"https://api.github.com/users/bgstaal/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/regression","name":"regression","color":"e10c02"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13/labels","id":375917,"number":13,"title":"0.8.1","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://2.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":34,"closed_issues":9,"state":"open","created_at":"2013-07-11T13:25:32Z","updated_at":"2013-08-21T08:18:48Z","due_on":"2013-09-08T07:00:00Z"},"comments":1,"created_at":"2013-08-13T09:07:23Z","updated_at":"2013-08-13T11:33:26Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Since the switch to GLFW for windowing the window is not redrawn while being resized. See this screenshot from the advanced 3d example (Taken while resizing the window):\r\n\r\n![redraw-error](https://f.cloud.github.com/assets/165258/953491/6db5463e-03f7-11e3-840e-961a49fc8516.png)\r\n\r\nI tried switching to ofAppGlutWindow in main.c and then everything works fine.\r\n\r\nI've only tested this on Mac OS 10.7\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2455","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2455/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2455/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2455/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2455","id":17984675,"number":2455,"title":"borderless windows?","user":{"login":"mazbox","id":194121,"avatar_url":"https://2.gravatar.com/avatar/3cfb19dbce7926933555ac9755a86ca8?d=https%3A%2F%2Fidenticons.github.com%2F1a833e8b88a3cb77651448055b3e93e9.png","gravatar_id":"3cfb19dbce7926933555ac9755a86ca8","url":"https://api.github.com/users/mazbox","html_url":"https://github.com/mazbox","followers_url":"https://api.github.com/users/mazbox/followers","following_url":"https://api.github.com/users/mazbox/following{/other_user}","gists_url":"https://api.github.com/users/mazbox/gists{/gist_id}","starred_url":"https://api.github.com/users/mazbox/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mazbox/subscriptions","organizations_url":"https://api.github.com/users/mazbox/orgs","repos_url":"https://api.github.com/users/mazbox/repos","events_url":"https://api.github.com/users/mazbox/events{/privacy}","received_events_url":"https://api.github.com/users/mazbox/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-2D","name":"section-2D","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2013-08-13T08:26:09Z","updated_at":"2013-08-20T09:26:46Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Now we're on GLFW, could we have the option to have borderless windows? This is really easy in ofAppGLFWWindow.cpp, just need this:\r\n\r\nglfwWindowHint(GLFW_DECORATED, GL_FALSE);\r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2449","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2449/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2449/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2449/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2449","id":17928213,"number":2449,"title":"ofxiOSKeyboard need fix y poision?","user":{"login":"azuremous","id":319589,"avatar_url":"https://0.gravatar.com/avatar/c3d1cd991fa2f486a4d2a387531de77e?d=https%3A%2F%2Fidenticons.github.com%2Fbb2af607d543b861335f5fe253300975.png","gravatar_id":"c3d1cd991fa2f486a4d2a387531de77e","url":"https://api.github.com/users/azuremous","html_url":"https://github.com/azuremous","followers_url":"https://api.github.com/users/azuremous/followers","following_url":"https://api.github.com/users/azuremous/following{/other_user}","gists_url":"https://api.github.com/users/azuremous/gists{/gist_id}","starred_url":"https://api.github.com/users/azuremous/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/azuremous/subscriptions","organizations_url":"https://api.github.com/users/azuremous/orgs","repos_url":"https://api.github.com/users/azuremous/repos","events_url":"https://api.github.com/users/azuremous/events{/privacy}","received_events_url":"https://api.github.com/users/azuremous/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13/labels","id":375917,"number":13,"title":"0.8.1","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://2.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":34,"closed_issues":9,"state":"open","created_at":"2013-07-11T13:25:32Z","updated_at":"2013-08-21T08:18:48Z","due_on":"2013-09-08T07:00:00Z"},"comments":1,"created_at":"2013-08-12T07:54:05Z","updated_at":"2013-08-20T08:44:09Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofxiOSKeyboard.mm\r\n\r\ninside init() and updateOrientation() there is _y = _h need to fix to _y = _yOriginal ?\r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2447","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2447/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2447/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2447/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2447","id":17925468,"number":2447,"title":"Feature Request: ofXml saving with XML declaration","user":{"login":"Geistyp","id":1510109,"avatar_url":"https://2.gravatar.com/avatar/6b42478d52d104580a1ae20f973975c2?d=https%3A%2F%2Fidenticons.github.com%2F45d69e69ac304ad6dc2269ebba53ba69.png","gravatar_id":"6b42478d52d104580a1ae20f973975c2","url":"https://api.github.com/users/Geistyp","html_url":"https://github.com/Geistyp","followers_url":"https://api.github.com/users/Geistyp/followers","following_url":"https://api.github.com/users/Geistyp/following{/other_user}","gists_url":"https://api.github.com/users/Geistyp/gists{/gist_id}","starred_url":"https://api.github.com/users/Geistyp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Geistyp/subscriptions","organizations_url":"https://api.github.com/users/Geistyp/orgs","repos_url":"https://api.github.com/users/Geistyp/repos","events_url":"https://api.github.com/users/Geistyp/events{/privacy}","received_events_url":"https://api.github.com/users/Geistyp/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"state":"open","assignee":{"login":"joshuajnoble","id":237423,"avatar_url":"https://1.gravatar.com/avatar/10960ba0f305803a1cdc7cd6188d643b?d=https%3A%2F%2Fidenticons.github.com%2Fb2018d244935ce2c5e98c5834187e538.png","gravatar_id":"10960ba0f305803a1cdc7cd6188d643b","url":"https://api.github.com/users/joshuajnoble","html_url":"https://github.com/joshuajnoble","followers_url":"https://api.github.com/users/joshuajnoble/followers","following_url":"https://api.github.com/users/joshuajnoble/following{/other_user}","gists_url":"https://api.github.com/users/joshuajnoble/gists{/gist_id}","starred_url":"https://api.github.com/users/joshuajnoble/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/joshuajnoble/subscriptions","organizations_url":"https://api.github.com/users/joshuajnoble/orgs","repos_url":"https://api.github.com/users/joshuajnoble/repos","events_url":"https://api.github.com/users/joshuajnoble/events{/privacy}","received_events_url":"https://api.github.com/users/joshuajnoble/received_events","type":"User"},"milestone":null,"comments":2,"created_at":"2013-08-12T06:09:43Z","updated_at":"2013-08-20T14:31:27Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"- Sometimes we need when save wide-char string. ( Save as ascii will get a lot of messy code )\r\n\r\n```c++\r\nbool ofXml::save(const string & path, bool saveWithDeclaration/*=false*/){\r\n ofBuffer buffer(saveWithDeclaration?\r\n\t\t\t\t\"\\n\"\r\n\t\t\t\t:\"\"\r\n\t\t\t\t+toString());\r\n ofFile file(path, ofFile::WriteOnly);\r\n return file.writeFromBuffer(buffer);\r\n}\r\n```\r\n\r\n- Or ofFile/ofBuffer add utf-8 save mode.\r\n\r\n```c++\r\nstd::ofstream fs;\r\nfs.open(filepath, std::ios::out|std::ios::binary);\r\n\r\nunsigned char smarker[3];\r\nsmarker[0] = 0xEF;\r\nsmarker[1] = 0xBB;\r\nsmarker[2] = 0xBF;\r\n\r\nfs << smarker;\r\nfs.close();\r\n\r\n//Then open the file as UTF and write your content there:\r\n\r\nstd::wofstream fs;\r\nfs.open(filepath, std::ios::out|std::ios::app);\r\n\r\nstd::locale utf8_locale(std::locale(), new utf8cvt);\r\nfs.imbue(utf8_locale); \r\n\r\nfs << .. // Write anything you want...\r\n```"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2445","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2445/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2445/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/2445/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/2445","id":17924672,"number":2445,"title":"UTF-8 String Clipboard Support","user":{"login":"bakercp","id":300484,"avatar_url":"https://1.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https%3A%2F%2Fidenticons.github.com%2F4aaaf6f29fe96098740aa5f98b6c8b12.png","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","url":"https://api.github.com/users/bakercp","html_url":"https://github.com/bakercp","followers_url":"https://api.github.com/users/bakercp/followers","following_url":"https://api.github.com/users/bakercp/following{/other_user}","gists_url":"https://api.github.com/users/bakercp/gists{/gist_id}","starred_url":"https://api.github.com/users/bakercp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bakercp/subscriptions","organizations_url":"https://api.github.com/users/bakercp/orgs","repos_url":"https://api.github.com/users/bakercp/repos","events_url":"https://api.github.com/users/bakercp/events{/privacy}","received_events_url":"https://api.github.com/users/bakercp/received_events","type":"User"},"labels":[],"state":"open","assignee":{"login":"bakercp","id":300484,"avatar_url":"https://1.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https%3A%2F%2Fidenticons.github.com%2F4aaaf6f29fe96098740aa5f98b6c8b12.png","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","url":"https://api.github.com/users/bakercp","html_url":"https://github.com/bakercp","followers_url":"https://api.github.com/users/bakercp/followers","following_url":"https://api.github.com/users/bakercp/following{/other_user}","gists_url":"https://api.github.com/users/bakercp/gists{/gist_id}","starred_url":"https://api.github.com/users/bakercp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bakercp/subscriptions","organizations_url":"https://api.github.com/users/bakercp/orgs","repos_url":"https://api.github.com/users/bakercp/repos","events_url":"https://api.github.com/users/bakercp/events{/privacy}","received_events_url":"https://api.github.com/users/bakercp/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/13/labels","id":375917,"number":13,"title":"0.8.1","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://2.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":34,"closed_issues":9,"state":"open","created_at":"2013-07-11T13:25:32Z","updated_at":"2013-08-21T08:18:48Z","due_on":"2013-09-08T07:00:00Z"},"comments":2,"created_at":"2013-08-12T05:22:23Z","updated_at":"2013-08-14T11:03:50Z","closed_at":null,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/2445","diff_url":"https://github.com/openframeworks/openFrameworks/pull/2445.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/2445.patch"},"body":"Perhaps the window interface could also be implemented in mobile platforms.\r\n\r\n- [x] Add support to `ofAppiOSWindow` (go @julapy ! 0c6db8934f3eff84dca3af5939891d9883910b8d) \r\n- [ ] Add support to `ofAppAndroidWindow` (@arturoc can you take this one?)\r\n- [x] Add support to `ofAppEGLWindow` (will not be implemented as GLFW is now used on all known x11 accelerated)\r\n- [x] Add support to `ofAppNoWindow` (?)\r\n- [x] Add support to `ofAppGlutWindow` (just kidding)"}] + +https +GET +api.github.com +None +/repositories/345337/issues?page=17 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4980'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '77244'), ('server', 'GitHub.com'), ('last-modified', 'Wed, 21 Aug 2013 10:42:46 GMT'), ('x-ratelimit-limit', '5000'), ('link', '; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"ff413c4ac1c8950a3c117d577119cd9e"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 21 Aug 2013 10:54:17 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1377085393')] +[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/387","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/387/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/387/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/387/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/387","id":529646,"number":387,"title":"Linker error when loading image (Poco::Net related?)","user":{"login":"damiannz","id":144366,"avatar_url":"https://1.gravatar.com/avatar/3ac59f1faa71f3b69fb9ceb83e50062c?d=https%3A%2F%2Fidenticons.github.com%2Fc307eaf05d81de0eecbee81d97709991.png","gravatar_id":"3ac59f1faa71f3b69fb9ceb83e50062c","url":"https://api.github.com/users/damiannz","html_url":"https://github.com/damiannz","followers_url":"https://api.github.com/users/damiannz/followers","following_url":"https://api.github.com/users/damiannz/following{/other_user}","gists_url":"https://api.github.com/users/damiannz/gists{/gist_id}","starred_url":"https://api.github.com/users/damiannz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damiannz/subscriptions","organizations_url":"https://api.github.com/users/damiannz/orgs","repos_url":"https://api.github.com/users/damiannz/repos","events_url":"https://api.github.com/users/damiannz/events{/privacy}","received_events_url":"https://api.github.com/users/damiannz/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2011-01-16T05:57:51Z","updated_at":"2011-03-13T21:10:48Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"following error appears when i try to load an image; commenting out the call to loadImage(\"...\") makes the error go away.\n\n Undefined symbols:\n \"std::basic_ostream >& std::__ostream_insert >(std::basic_ostream >&, char const*, int)\", \n referenced from:\n Poco::Net::HTTPClientSession::proxyAuthenticateImpl(Poco::Net::HTTPRequest&)in PocoNet.a(HTTPClientSession.o)\n Poco::Net::HTTPClientSession::proxyAuthenticateImpl(Poco::Net::HTTPRequest&)in PocoNet.a(HTTPClientSession.o)\n Poco::Net::HTTPRequest::write(std::basic_ostream >&) constin PocoNet.a(HTTPRequest.o)\n Poco::Net::HTTPRequest::write(std::basic_ostream >&) constin PocoNet.a(HTTPRequest.o)\n Poco::Net::HTTPRequest::write(std::basic_ostream >&) constin PocoNet.a(HTTPRequest.o)\n Poco::Net::MessageHeader::write(std::basic_ostream >&) constin PocoNet.a(MessageHeader.o)\n Poco::Net::MessageHeader::write(std::basic_ostream >&) constin PocoNet.a(MessageHeader.o)\n Poco::Net::HTTPResponse::write(std::basic_ostream >&) constin PocoNet.a(HTTPResponse.o)\n Poco::Net::HTTPResponse::write(std::basic_ostream >&) constin PocoNet.a(HTTPResponse.o)\n\nld: symbol(s) not found\n\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/357","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/357/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/357/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/357/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/357","id":527591,"number":357,"title":"ofDrawBitmapString vs GL_LIGHTING","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://1.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https%3A%2F%2Fidenticons.github.com%2F415d63db900c8f799d40632b6eed98dc.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following{/other_user}","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-01-14T19:30:31Z","updated_at":"2013-07-28T18:47:34Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofDrawBitmapString doesn't work when GL_LIGHTING is enabled.\r\n\r\nwell, it works... but it is black because it isn't reflecting any light. regardless of the ofSetColor."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/347","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/347/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/347/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/347/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/347","id":526094,"number":347,"title":"none of the core functions report how many dimensions they work for","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://1.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https%3A%2F%2Fidenticons.github.com%2F415d63db900c8f799d40632b6eed98dc.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following{/other_user}","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-01-14T01:33:38Z","updated_at":"2011-01-14T01:33:38Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"some of the core functions only work with 2d points, others only with 3d points, some work with both. but they all take ofPoints.\r\n\r\nit's good for teaching purposes to have ofPoints because you don't have to explain what a 'vector' is, but it's unclear for advanced users whether the functions take 2d or 3d points..."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/337","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/337/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/337/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/337/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/337","id":523837,"number":337,"title":"ofFileDialog allow folder selection ( works on os x ) needs code for win and linux","user":{"login":"ofTheo","id":144000,"avatar_url":"https://0.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https%3A%2F%2Fidenticons.github.com%2F4927fe2904a479337f27af83d0ab970f.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":{"login":"arturoc","id":48240,"avatar_url":"https://1.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https%3A%2F%2Fidenticons.github.com%2Fd6a785f81d36e5ce6bd64105058af796.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://2.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":53,"closed_issues":8,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-08-21T01:16:45Z","due_on":"2013-10-31T07:00:00Z"},"comments":7,"created_at":"2011-01-13T05:21:53Z","updated_at":"2013-02-11T12:13:02Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":""},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/305","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/305/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/305/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/305/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/305","id":516844,"number":305,"title":"no implementation in ofBaseTypes","user":{"login":"arturoc","id":48240,"avatar_url":"https://1.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https%3A%2F%2Fidenticons.github.com%2Fd6a785f81d36e5ce6bd64105058af796.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-01-10T06:36:27Z","updated_at":"2011-01-10T06:36:27Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"better to use aggregation (helper classes/functions) if necessary for common functionality that have implementation in those classes. making them pure abstract classes will avoid problems with multiple inheritance and easier to extend in case of different behaviour"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/302","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/302/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/302/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/302/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/302","id":516565,"number":302,"title":"Remove Poco CppUnit from all projects ( done on os x )","user":{"login":"ofTheo","id":144000,"avatar_url":"https://0.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https%3A%2F%2Fidenticons.github.com%2F4927fe2904a479337f27af83d0ab970f.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":{"login":"arturoc","id":48240,"avatar_url":"https://1.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https%3A%2F%2Fidenticons.github.com%2Fd6a785f81d36e5ce6bd64105058af796.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://2.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":53,"closed_issues":8,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-08-21T01:16:45Z","due_on":"2013-10-31T07:00:00Z"},"comments":3,"created_at":"2011-01-10T02:39:28Z","updated_at":"2013-02-11T12:13:02Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":""},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/298","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/298/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/298/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/298/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/298","id":516559,"number":298,"title":"Update Freetype to latest versions. ","user":{"login":"ofTheo","id":144000,"avatar_url":"https://0.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https%3A%2F%2Fidenticons.github.com%2F4927fe2904a479337f27af83d0ab970f.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"state":"open","assignee":{"login":"arturoc","id":48240,"avatar_url":"https://1.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https%3A%2F%2Fidenticons.github.com%2Fd6a785f81d36e5ce6bd64105058af796.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://2.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":53,"closed_issues":8,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-08-21T01:16:45Z","due_on":"2013-10-31T07:00:00Z"},"comments":6,"created_at":"2011-01-10T02:37:49Z","updated_at":"2013-07-22T16:14:50Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":""},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/292","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/292/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/292/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/292/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/292","id":516071,"number":292,"title":"ofTexture should be more flexible","user":{"login":"I33N","id":520375,"avatar_url":"https://1.gravatar.com/avatar/ba8d7c3b4532d3747c30b9be91dc20d5?d=https%3A%2F%2Fidenticons.github.com%2F029dd6120545e3ca65422e4479af8e99.png","gravatar_id":"ba8d7c3b4532d3747c30b9be91dc20d5","url":"https://api.github.com/users/I33N","html_url":"https://github.com/I33N","followers_url":"https://api.github.com/users/I33N/followers","following_url":"https://api.github.com/users/I33N/following{/other_user}","gists_url":"https://api.github.com/users/I33N/gists{/gist_id}","starred_url":"https://api.github.com/users/I33N/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/I33N/subscriptions","organizations_url":"https://api.github.com/users/I33N/orgs","repos_url":"https://api.github.com/users/I33N/repos","events_url":"https://api.github.com/users/I33N/events{/privacy}","received_events_url":"https://api.github.com/users/I33N/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-01-09T20:46:43Z","updated_at":"2011-01-09T20:46:43Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I think the pixeltype, the gltypeinternal and the gltype should be accessible to the user as well as the loadData(void * data, int w, int h, int glDataType) which is actually protected.\r\n\r\nActual implementation is only limited to a few choice of internalFormat which lead to choice of pixeltype and gltype. It thus doesn't allow from user specific type."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/275","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/275/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/275/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/275/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/275","id":445829,"number":275,"title":"atexit(ofExitCallback);","user":{"login":"vanderlin","id":149997,"avatar_url":"https://0.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https%3A%2F%2Fidenticons.github.com%2F9e9c49562cad72e3a40a0e2078c45a2b.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","url":"https://api.github.com/users/vanderlin","html_url":"https://github.com/vanderlin","followers_url":"https://api.github.com/users/vanderlin/followers","following_url":"https://api.github.com/users/vanderlin/following{/other_user}","gists_url":"https://api.github.com/users/vanderlin/gists{/gist_id}","starred_url":"https://api.github.com/users/vanderlin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vanderlin/subscriptions","organizations_url":"https://api.github.com/users/vanderlin/orgs","repos_url":"https://api.github.com/users/vanderlin/repos","events_url":"https://api.github.com/users/vanderlin/events{/privacy}","received_events_url":"https://api.github.com/users/vanderlin/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2010-11-30T05:13:10Z","updated_at":"2013-03-26T06:42:32Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"This is giving me some crashes. There needs to be a way to disable this when making custom windows. I have tried to do atexit(NULL); but the callback in ofRunApp(ofBaseApp * OFSA) is still being called. \r\n\r\nmaybe something like:\r\n\r\nvoid ofRunApp(ofBaseApp * OFSA, bool useExitCallback);\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/271","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/271/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/271/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/271/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/271","id":433297,"number":271,"title":"ofDrawBitmapString draws from bottom left","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://1.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https%3A%2F%2Fidenticons.github.com%2F415d63db900c8f799d40632b6eed98dc.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following{/other_user}","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":7,"created_at":"2010-11-22T21:30:40Z","updated_at":"2011-03-17T02:02:25Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"bottom left corner is inconsistent with every other drawing command in OF, should be top left instead."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/264","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/264/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/264/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/264/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/264","id":425675,"number":264,"title":"ofClear uses inconsistent arguments","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://1.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https%3A%2F%2Fidenticons.github.com%2F415d63db900c8f799d40632b6eed98dc.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following{/other_user}","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":5,"created_at":"2010-11-18T06:15:47Z","updated_at":"2013-06-14T22:15:12Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofClear(r,g,b) is inconsistent with ofBackground(r,g,b) because the alpha is 0 by default -- meaning you always have to explicitly declare the alpha to clear the background.\r\n\r\nfurthermore, because all the arguments have default values there is not/cannot exist an ofClear(gray, alpha) to match ofSetColor style"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/255","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/255/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/255/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/255/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/255","id":413771,"number":255,"title":"COMPILE SPEED UP - cleanup internal includes to avoid ofMain.h and ofConstants.h","user":{"login":"ofTheo","id":144000,"avatar_url":"https://0.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https%3A%2F%2Fidenticons.github.com%2F4927fe2904a479337f27af83d0ab970f.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":{"login":"ofTheo","id":144000,"avatar_url":"https://0.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https%3A%2F%2Fidenticons.github.com%2F4927fe2904a479337f27af83d0ab970f.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://2.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":53,"closed_issues":8,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-08-21T01:16:45Z","due_on":"2013-10-31T07:00:00Z"},"comments":6,"created_at":"2010-11-11T21:14:05Z","updated_at":"2013-06-27T14:50:24Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"A lot of OF files are including ofMain / ofConstants.h - this makes compiles super slow. Try to have files only include what they need. Or find a way to break things up into the most often used ( windows.h etc ) and less used. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/249","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/249/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/249/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/249/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/249","id":399214,"number":249,"title":"normalize option nomenclature (hide/enable/set/etc.)","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://1.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https%3A%2F%2Fidenticons.github.com%2F415d63db900c8f799d40632b6eed98dc.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following{/other_user}","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2010-11-03T22:52:08Z","updated_at":"2011-12-02T20:11:33Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofHideCursor()/ofShowCursor()\r\n\r\nofEnableArbTex()\r\nofEnableSetupScreen()\r\nofEnableDataPath()\r\nofEnableAlphaBlending()\r\nofEnableSmoothing()\r\n\r\nofSetFullscreen() + ofToggleFullscreen()\r\nofSetVerticalSync()\r\n\r\netc."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/245","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/245/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/245/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/245/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/245","id":360885,"number":245,"title":"gstreamer problems with streaming of microsoft video","user":{"login":"arturoc","id":48240,"avatar_url":"https://1.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https%3A%2F%2Fidenticons.github.com%2Fd6a785f81d36e5ce6bd64105058af796.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"state":"open","assignee":{"login":"arturoc","id":48240,"avatar_url":"https://1.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https%3A%2F%2Fidenticons.github.com%2Fd6a785f81d36e5ce6bd64105058af796.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://2.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":53,"closed_issues":8,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-08-21T01:16:45Z","due_on":"2013-10-31T07:00:00Z"},"comments":2,"created_at":"2010-10-13T16:33:06Z","updated_at":"2013-07-07T17:40:50Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"some video to test:\r\n\r\nmmsh://live.camstreams.com/cscamglobal16?MSWMExt=.asf\r\n\r\nit works ok with totem so it should be a problem in ofGstUtils"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/228","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/228/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/228/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/228/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/228","id":309191,"number":228,"title":"remove bAllocated in ofTexture?","user":{"login":"arturoc","id":48240,"avatar_url":"https://1.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https%3A%2F%2Fidenticons.github.com%2Fd6a785f81d36e5ce6bd64105058af796.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"state":"open","assignee":null,"milestone":null,"comments":4,"created_at":"2010-09-09T14:20:55Z","updated_at":"2011-04-19T00:32:33Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"related to #221: texData.bAllocated is only used in the isAllocated method which can be changed from:\r\n\r\n bool ofTexture::bAllocated(){\r\n return texData.bAllocated;\r\n }\r\n\r\nto\r\n\r\n bool ofTexture::bAllocated(){\r\n return texData.textureID!=0;\r\n }\r\n\r\navoiding problems like #221 since we don't have two flags for the same thing"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/225","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/225/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/225/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/225/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/225","id":295913,"number":225,"title":"ofxVectorMath constants","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://1.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https%3A%2F%2Fidenticons.github.com%2F415d63db900c8f799d40632b6eed98dc.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following{/other_user}","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2010-08-31T10:54:19Z","updated_at":"2010-08-31T10:54:19Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"It would be nice to have:\r\n\r\n\tconst ofxVec2f xunit2f(1, 0), yunit2f(0, 1);\r\n\tconst ofxVec3f xunit3f(1, 0, 0), yunit3f(0, 1, 0), zunit3f(0, 0, 1);\r\n\r\nOr something similar that allows for more elegant notation when you're multiplying or adding by an axis."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/224","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/224/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/224/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/224/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/224","id":290973,"number":224,"title":"gaussian noise","user":{"login":"arturoc","id":48240,"avatar_url":"https://1.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https%3A%2F%2Fidenticons.github.com%2Fd6a785f81d36e5ce6bd64105058af796.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://2.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":53,"closed_issues":8,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-08-21T01:16:45Z","due_on":"2013-10-31T07:00:00Z"},"comments":11,"created_at":"2010-08-26T10:21:24Z","updated_at":"2013-07-01T18:48:12Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"can this be useful?\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=25&t=4500\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/181","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/181/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/181/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/181/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/181","id":171615,"number":181,"title":"ofxCvBlobs","user":{"login":"vanderlin","id":149997,"avatar_url":"https://0.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https%3A%2F%2Fidenticons.github.com%2F9e9c49562cad72e3a40a0e2078c45a2b.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","url":"https://api.github.com/users/vanderlin","html_url":"https://github.com/vanderlin","followers_url":"https://api.github.com/users/vanderlin/followers","following_url":"https://api.github.com/users/vanderlin/following{/other_user}","gists_url":"https://api.github.com/users/vanderlin/gists{/gist_id}","starred_url":"https://api.github.com/users/vanderlin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vanderlin/subscriptions","organizations_url":"https://api.github.com/users/vanderlin/orgs","repos_url":"https://api.github.com/users/vanderlin/repos","events_url":"https://api.github.com/users/vanderlin/events{/privacy}","received_events_url":"https://api.github.com/users/vanderlin/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2010-04-14T15:42:22Z","updated_at":"2010-04-14T15:48:19Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"can we add moments to the blob. \n\nadd CvMoments moments to blob class\n\nand in ofxCvContourFinder.cpp line 119\n\n\t blobs[i].moments.m00 = myMoments->m00;\n\t\tblobs[i].moments.m10 = myMoments->m10;\n\t\tblobs[i].moments.m01 = myMoments->m01;\n\t\tblobs[i].moments.m20 = myMoments->m20;\n\t\tblobs[i].moments.m11 = myMoments->m11;\n\t\tblobs[i].moments.m02 = myMoments->m02;\n\t\tblobs[i].moments.m30 = myMoments->m30;\n\t\tblobs[i].moments.m21 = myMoments->m21;\n\t\tblobs[i].moments.m12 = myMoments->m12;\n\t\tblobs[i].moments.m03 = myMoments->m03;\n\t\t\n\t\tblobs[i].moments.mu20 = myMoments->mu20;\n\t\tblobs[i].moments.mu11 = myMoments->mu11;\n\t\tblobs[i].moments.mu02 = myMoments->mu02;\n\t\tblobs[i].moments.mu30 = myMoments->mu30;\n\t\tblobs[i].moments.mu21 = myMoments->mu21;\n\t\tblobs[i].moments.mu12 = myMoments->mu12;\n\t\tblobs[i].moments.mu03 = myMoments->mu03;\n\n\nthis is good for finding the angle and other info about the contour.\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/172","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/172/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/172/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/172/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/172","id":166209,"number":172,"title":"rgb + alpha -> blit to texture","user":{"login":"ofTheo","id":144000,"avatar_url":"https://0.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https%3A%2F%2Fidenticons.github.com%2F4927fe2904a479337f27af83d0ab970f.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":{"login":"ofTheo","id":144000,"avatar_url":"https://0.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https%3A%2F%2Fidenticons.github.com%2F4927fe2904a479337f27af83d0ab970f.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://2.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":53,"closed_issues":8,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-08-21T01:16:45Z","due_on":"2013-10-31T07:00:00Z"},"comments":3,"created_at":"2010-04-06T19:40:28Z","updated_at":"2013-06-15T20:23:15Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":" the idea is to be able to easily combine a rgb and alpha image into a rgba texture or ofImage. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/167","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/167/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/167/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/167/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/167","id":165898,"number":167,"title":"replace fmod","user":{"login":"ofTheo","id":144000,"avatar_url":"https://0.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https%3A%2F%2Fidenticons.github.com%2F4927fe2904a479337f27af83d0ab970f.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://2.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":53,"closed_issues":8,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-08-21T01:16:45Z","due_on":"2013-10-31T07:00:00Z"},"comments":5,"created_at":"2010-04-06T12:13:31Z","updated_at":"2013-05-24T22:53:42Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"can we do it?\r\nwe need cross platform:\r\nplayback \r\nstreaming\r\npitch\r\npan \r\nmultiplay \r\n\r\nfor us to be compatible with what exists. \r\nOpenAL seems like the best choice.\r\nWhat other options are there?"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/140","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/140/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/140/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/140/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/140","id":163959,"number":140,"title":"texture compression and mipmaps for of texture","user":{"login":"ofTheo","id":144000,"avatar_url":"https://0.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https%3A%2F%2Fidenticons.github.com%2F4927fe2904a479337f27af83d0ab970f.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://2.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":53,"closed_issues":8,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-08-21T01:16:45Z","due_on":"2013-10-31T07:00:00Z"},"comments":4,"created_at":"2010-04-02T19:43:00Z","updated_at":"2013-07-11T15:07:53Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"check out - http://www.openframeworks.cc/forum/viewtopic.php?p=19169#p19169\r\npossible integration into core. "},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/126","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/126/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/126/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/126/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/126","id":132377,"number":126,"title":"ofATan2GL / ofVecToGL ?","user":{"login":"openframeworks","id":142866,"avatar_url":"https://1.gravatar.com/avatar/1061569f505705f6ba1f485673c5cc3b?d=https%3A%2F%2Fidenticons.github.com%2Fa539871f08dd8f7c88f24bb7e1c1ed79.png","gravatar_id":"1061569f505705f6ba1f485673c5cc3b","url":"https://api.github.com/users/openframeworks","html_url":"https://github.com/openframeworks","followers_url":"https://api.github.com/users/openframeworks/followers","following_url":"https://api.github.com/users/openframeworks/following{/other_user}","gists_url":"https://api.github.com/users/openframeworks/gists{/gist_id}","starred_url":"https://api.github.com/users/openframeworks/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/openframeworks/subscriptions","organizations_url":"https://api.github.com/users/openframeworks/orgs","repos_url":"https://api.github.com/users/openframeworks/repos","events_url":"https://api.github.com/users/openframeworks/events{/privacy}","received_events_url":"https://api.github.com/users/openframeworks/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":{"login":"ofTheo","id":144000,"avatar_url":"https://0.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https%3A%2F%2Fidenticons.github.com%2F4927fe2904a479337f27af83d0ab970f.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://2.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":53,"closed_issues":8,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-08-21T01:16:45Z","due_on":"2013-10-31T07:00:00Z"},"comments":5,"created_at":"2010-02-13T14:22:51Z","updated_at":"2013-02-11T12:13:02Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Something that easily converts vector direction to openGL degrees?\r\nI find myself constantly trying to guess 270 - atan2(y, x)*RAD_TO_DEG ..... etc\r\nTo rotate something along a vector. \r\n\r\nMight be good to have it be aware of the GL world orientation - or have it so you pass in the up \r\n\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/124","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/124/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/124/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/124/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/124","id":132373,"number":124,"title":"TTF type rendering in OF - fix fuzziness ","user":{"login":"openframeworks","id":142866,"avatar_url":"https://1.gravatar.com/avatar/1061569f505705f6ba1f485673c5cc3b?d=https%3A%2F%2Fidenticons.github.com%2Fa539871f08dd8f7c88f24bb7e1c1ed79.png","gravatar_id":"1061569f505705f6ba1f485673c5cc3b","url":"https://api.github.com/users/openframeworks","html_url":"https://github.com/openframeworks","followers_url":"https://api.github.com/users/openframeworks/followers","following_url":"https://api.github.com/users/openframeworks/following{/other_user}","gists_url":"https://api.github.com/users/openframeworks/gists{/gist_id}","starred_url":"https://api.github.com/users/openframeworks/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/openframeworks/subscriptions","organizations_url":"https://api.github.com/users/openframeworks/orgs","repos_url":"https://api.github.com/users/openframeworks/repos","events_url":"https://api.github.com/users/openframeworks/events{/privacy}","received_events_url":"https://api.github.com/users/openframeworks/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography","color":"DDDDDD"}],"state":"open","assignee":{"login":"ofZach","id":142897,"avatar_url":"https://2.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https%3A%2F%2Fidenticons.github.com%2F6e272aa1d97fe0fbc4dd57f465b1c639.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following{/other_user}","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8/labels","id":88731,"number":8,"title":"0.9.0","description":"","creator":{"login":"bilderbuchi","id":327442,"avatar_url":"https://2.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https%3A%2F%2Fidenticons.github.com%2Ffdc2f086849a4bfc788364d9226a1e1e.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","html_url":"https://github.com/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following{/other_user}","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","repos_url":"https://api.github.com/users/bilderbuchi/repos","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","type":"User"},"open_issues":53,"closed_issues":8,"state":"open","created_at":"2012-02-25T01:34:28Z","updated_at":"2013-08-21T01:16:45Z","due_on":"2013-10-31T07:00:00Z"},"comments":9,"created_at":"2010-02-13T14:15:25Z","updated_at":"2013-07-19T14:03:09Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"http://www.openframeworks.cc/forum/viewtopic.php?f=7&t=3299&p=17852#p17852"}] + +https +GET +api.github.com +None +/repositories/345337/issues?page=16 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4979'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '74557'), ('server', 'GitHub.com'), ('last-modified', 'Wed, 21 Aug 2013 10:42:46 GMT'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"ff413c4ac1c8950a3c117d577119cd9e"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 21 Aug 2013 10:54:19 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1377085393')] +[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/555","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/555/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/555/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/555/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/555","id":812623,"number":555,"title":"ofxOpenCv -- ofxCvHaarFinder should have a draw function","user":{"login":"ofZach","id":142897,"avatar_url":"https://2.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https%3A%2F%2Fidenticons.github.com%2F6e272aa1d97fe0fbc4dd57f465b1c639.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","html_url":"https://github.com/ofZach","followers_url":"https://api.github.com/users/ofZach/followers","following_url":"https://api.github.com/users/ofZach/following{/other_user}","gists_url":"https://api.github.com/users/ofZach/gists{/gist_id}","starred_url":"https://api.github.com/users/ofZach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofZach/subscriptions","organizations_url":"https://api.github.com/users/ofZach/orgs","repos_url":"https://api.github.com/users/ofZach/repos","events_url":"https://api.github.com/users/ofZach/events{/privacy}","received_events_url":"https://api.github.com/users/ofZach/received_events","type":"User"},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-04-26T00:36:47Z","updated_at":"2011-04-26T00:37:56Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"nothing fancy, but I have an implementation of ofxCvHaarFinder that draws, and it's useful for debugging. something like:\n\n``` c++\n void ofxCvHaarFinder::draw( float x, float y ) {\n\t\t// ofPushStyle(); ?\n\t\tofEnableAlphaBlending();\n\t\tofSetColor( 255,0,200,100 );\n\t\tglPushMatrix();\n\t\t\n\t\tglTranslatef( x, y, 0.0 );\n\t\t\n\t\tofNoFill();\n\t\tfor( int i=0; i 0) glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, wrapS);\n\t\tif(wrapT > 0) glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, wrapT);\n\t\t\n\t\tglBindTexture(texData.textureTarget, texData.textureID);\n\t\tglDisable(texData.textureTarget);\n\t\tsetUniform1i(name, texData.textureID);\n\t\tglActiveTexture(GL_TEXTURE0);\n\t}\n}"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/418","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/418/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/418/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/418/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/418","id":543729,"number":418,"title":"something to wrap glMultMatrixf","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://2.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https%3A%2F%2Fidenticons.github.com%2Fd5f2a0f6c7205cf195a62516b19b4f2c.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following{/other_user}","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-01-22T15:57:37Z","updated_at":"2011-01-22T15:57:37Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"suggestions:\r\n\r\n ofPopMatrix(ofMatrix4x4 m)\r\n\r\n ofMultMatrix(ofMatrix4x4 m)\r\n\r\n ofMatrix4x4::apply();\r\n ofMatrix4x4::push();"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/417","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/417/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/417/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/417/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/417","id":543694,"number":417,"title":"3D isn't scale invariant in certain parts","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://2.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https%3A%2F%2Fidenticons.github.com%2Fd5f2a0f6c7205cf195a62516b19b4f2c.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following{/other_user}","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-01-22T15:24:07Z","updated_at":"2011-01-22T15:24:07Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"e.g.\r\n\r\n void ofEasyCam::reset() {\r\n\ttarget.resetTransform();\r\n\tdistance = 100;\r\n }\r\n\r\nofNode's\r\n\tvirtual void customDraw() {\r\n\t\tofBox(10);\r\n\t\tofDrawAxis(20);\r\n\t}\r\n\r\nsuggestions:\r\n\r\nglobal variable called something like 'base3DScaleFactor = 10.0f' which will affect all of these current constant scale factors"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/412","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/412/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/412/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/412/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/412","id":539845,"number":412,"title":"add setMultisampling method to glutWindow","user":{"login":"arturoc","id":48240,"avatar_url":"https://1.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https%3A%2F%2Fidenticons.github.com%2Fd6a785f81d36e5ce6bd64105058af796.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2011-01-20T19:33:30Z","updated_at":"2013-07-05T19:59:30Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"multisampling is now working in linux through the display string option. perhaps we could add a method to easily set it if it also works on win/osx"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/406","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/406/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/406/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/406/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/406","id":537416,"number":406,"title":"ofEnableLighting","user":{"login":"vanderlin","id":149997,"avatar_url":"https://0.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https%3A%2F%2Fidenticons.github.com%2F9e9c49562cad72e3a40a0e2078c45a2b.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","url":"https://api.github.com/users/vanderlin","html_url":"https://github.com/vanderlin","followers_url":"https://api.github.com/users/vanderlin/followers","following_url":"https://api.github.com/users/vanderlin/following{/other_user}","gists_url":"https://api.github.com/users/vanderlin/gists{/gist_id}","starred_url":"https://api.github.com/users/vanderlin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vanderlin/subscriptions","organizations_url":"https://api.github.com/users/vanderlin/orgs","repos_url":"https://api.github.com/users/vanderlin/repos","events_url":"https://api.github.com/users/vanderlin/events{/privacy}","received_events_url":"https://api.github.com/users/vanderlin/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-01-19T19:39:36Z","updated_at":"2011-01-19T19:39:37Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"ofLight bug not sure what the ios equivalent is..\r\n\r\nglColorMaterial(GL_FRONT_AND_BACK, GL_AMBIENT_AND_DIFFUSE); is not supported in IOS"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/405","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/405/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/405/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/405/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/405","id":536614,"number":405,"title":"ofViewport doesn't match rest of openFrameworks coordinates","user":{"login":"elliotwoods","id":328294,"avatar_url":"https://2.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https%3A%2F%2Fidenticons.github.com%2Fd5f2a0f6c7205cf195a62516b19b4f2c.png","gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","html_url":"https://github.com/elliotwoods","followers_url":"https://api.github.com/users/elliotwoods/followers","following_url":"https://api.github.com/users/elliotwoods/following{/other_user}","gists_url":"https://api.github.com/users/elliotwoods/gists{/gist_id}","starred_url":"https://api.github.com/users/elliotwoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elliotwoods/subscriptions","organizations_url":"https://api.github.com/users/elliotwoods/orgs","repos_url":"https://api.github.com/users/elliotwoods/repos","events_url":"https://api.github.com/users/elliotwoods/events{/privacy}","received_events_url":"https://api.github.com/users/elliotwoods/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-01-19T13:24:53Z","updated_at":"2011-01-19T13:24:54Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Suggest change line 126 of ofGraphics.h to\r\n\tglViewport(x, ofGetHeight() - y - height, width, height);\r\n\r\nto be in line with rest of openFrameworks coordinate system\r\ne.g. ofRect(myRect) matches ofViewport(myRect)\r\n"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/403","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/403/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/403/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/403/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/403","id":532954,"number":403,"title":"setPixelFormat shouldn't be stored in videoGrabber/Player","user":{"login":"arturoc","id":48240,"avatar_url":"https://1.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https%3A%2F%2Fidenticons.github.com%2Fd6a785f81d36e5ce6bd64105058af796.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","html_url":"https://github.com/arturoc","followers_url":"https://api.github.com/users/arturoc/followers","following_url":"https://api.github.com/users/arturoc/following{/other_user}","gists_url":"https://api.github.com/users/arturoc/gists{/gist_id}","starred_url":"https://api.github.com/users/arturoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arturoc/subscriptions","organizations_url":"https://api.github.com/users/arturoc/orgs","repos_url":"https://api.github.com/users/arturoc/repos","events_url":"https://api.github.com/users/arturoc/events{/privacy}","received_events_url":"https://api.github.com/users/arturoc/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2011-01-17T23:39:31Z","updated_at":"2012-06-18T07:28:14Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"it should be only in the implementations and queried by the grabber/player in case an implementation doesn't support a format if not the app can crash or have really weird results"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/400","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/400/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/400/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/400/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/400","id":532096,"number":400,"title":"ofTTF should have setAnchorPercent so you can draw strings centered, right aligned etc","user":{"login":"ofTheo","id":144000,"avatar_url":"https://0.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https%3A%2F%2Fidenticons.github.com%2F4927fe2904a479337f27af83d0ab970f.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","html_url":"https://github.com/ofTheo","followers_url":"https://api.github.com/users/ofTheo/followers","following_url":"https://api.github.com/users/ofTheo/following{/other_user}","gists_url":"https://api.github.com/users/ofTheo/gists{/gist_id}","starred_url":"https://api.github.com/users/ofTheo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofTheo/subscriptions","organizations_url":"https://api.github.com/users/ofTheo/orgs","repos_url":"https://api.github.com/users/ofTheo/repos","events_url":"https://api.github.com/users/ofTheo/events{/privacy}","received_events_url":"https://api.github.com/users/ofTheo/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography","color":"DDDDDD"}],"state":"open","assignee":null,"milestone":null,"comments":0,"created_at":"2011-01-17T16:37:42Z","updated_at":"2011-01-17T16:37:42Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":""},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/391","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/391/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/391/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/391/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/391","id":529705,"number":391,"title":"ofGetPreviousMouseX/Y() does not update per frame","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://1.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https%3A%2F%2Fidenticons.github.com%2F415d63db900c8f799d40632b6eed98dc.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following{/other_user}","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2011-01-16T07:21:15Z","updated_at":"2013-08-20T08:44:39Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"every frame, it should update the pmouse value. so if you don't move the mouse, the pmouse value is equal to the current value."},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/389","labels_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/389/labels{/name}","comments_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/389/comments","events_url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/389/events","html_url":"https://github.com/openframeworks/openFrameworks/issues/389","id":529700,"number":389,"title":"mouse position doesn't update until mouse is moved","user":{"login":"kylemcdonald","id":157106,"avatar_url":"https://1.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https%3A%2F%2Fidenticons.github.com%2F415d63db900c8f799d40632b6eed98dc.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","html_url":"https://github.com/kylemcdonald","followers_url":"https://api.github.com/users/kylemcdonald/followers","following_url":"https://api.github.com/users/kylemcdonald/following{/other_user}","gists_url":"https://api.github.com/users/kylemcdonald/gists{/gist_id}","starred_url":"https://api.github.com/users/kylemcdonald/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kylemcdonald/subscriptions","organizations_url":"https://api.github.com/users/kylemcdonald/orgs","repos_url":"https://api.github.com/users/kylemcdonald/repos","events_url":"https://api.github.com/users/kylemcdonald/events{/privacy}","received_events_url":"https://api.github.com/users/kylemcdonald/received_events","type":"User"},"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2011-01-16T07:11:53Z","updated_at":"2013-07-28T18:49:59Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"this is a limitation to glut, but it might be hackable on each system separately."}] + diff --git a/lib/github/tests/ReplayData/PaginatedList.testIntIndexingAfterIteration.txt b/lib/github/tests/ReplayData/PaginatedList.testIntIndexingAfterIteration.txt new file mode 100644 index 0000000000..5426b4d6a3 --- /dev/null +++ b/lib/github/tests/ReplayData/PaginatedList.testIntIndexingAfterIteration.txt @@ -0,0 +1,154 @@ +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4927'), ('content-length', '52085'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last"'), ('etag', '"5e8867ffb4e7630e852b2b231f3b9cdb"'), ('date', 'Tue, 29 May 2012 19:36:57 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-27T18:11:17Z","body":"Since more and more of the OF Core now relies on Poco (ie ofThread, etc) does OF_USING_POCO make sense anymore?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1280","comments":0,"milestone":null,"number":1280,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1280","assignee":null,"title":"deprecate OF_USING_POCO?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-27T18:03:23Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"danomatika","id":480637},"id":4772349,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-28T08:08:24Z","body":"There occurs a weir glitch when compiling the ofShader example with my HD Graphics 3000 (288 Mb) (Mac osx 10.7.4 - Mac Mini - i5 - 2.3Ghz)\n\nI was able to get rid of the glitch by replacing \"gl_FragColor = gl_Color;\" with \"gl_FragColor = 255.0;\" or any other number.\nAnybody knows a reason for the glitch / proper solution?\n\nScreenshot: http://goo.gl/Xdf74\nOpenGL capacities on different graphic cards on apple machines: http://goo.gl/FGQ2N","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1279","comments":2,"milestone":null,"number":1279,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1279","assignee":null,"title":"ofShader example with HD Graphics 3000 issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-26T19:27:56Z","state":"open","user":{"url":"https://api.github.com/users/subtiv","gravatar_id":"837cfe96365c031130a46311eb11d86a","avatar_url":"https://secure.gravatar.com/avatar/837cfe96365c031130a46311eb11d86a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"subtiv","id":1012684},"id":4767675,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-25T18:39:02Z","body":"produces an error on app exit or tex destruction.\n\n OF: OF_LOG_ERROR: trying to delete a non indexed texture, something weird is happening. Deleting anyway\n\nThis is because retain(int id) is a static function in ofTexture.cpp. So we can't retain the depthStencilTexture.\n\nThis suggest we should move the texture allocation of the depth / stencil texture to ofTexture - something which is not possible at the moment. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1277","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1277,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1277","assignee":null,"title":"ofFbo can't retain depthStencil Texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-05-25T18:37:46Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":4758608,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-22T21:26:57Z","body":"\nthe offending line is: \n\nif( speed.getValue() != preSpeed ){\n\nwhich is evaluating as true even through the slider is not touched (float equality test, etc). \n\nif we alter it to something like: \n\nif( fabs(speed.getValue() - preSpeed) > 0.0001 ){\n\nthe code runs fine. probably nicer to add a \"value changed()\" functionality to the slider object though or use EPSILON, etc. \n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1271","comments":0,"milestone":null,"number":1271,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1271","assignee":null,"title":"periodic signal example doesn't run well on windows / cb (float equality error)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-05-22T21:26:57Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":4700182,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-22T16:41:21Z","body":"There's some error that appears on linux systems running the project generator to make VS examples, where the debug and release libs for opencv get added badly to the vs project: \n\n\t%(AdditionalDependencies);opencv_highgui231d.lib;opencv_calib3d231.lib;opencv_imgproc231d.lib;opencv_haartraining_engined.lib;opencv_gpu231d.lib;opencv_flann231.lib;opencv_contrib231d.lib;opencv_video231d.lib;opencv_objdetect231d.lib;zlib.lib;opencv_core231d.lib;opencv_contrib231.lib;opencv_ml231d.lib;opencv_features2d231.lib;opencv_core231.lib;opencv_gpu231.lib;opencv_legacy231d.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_ml231.lib;opencv_imgproc231.lib;opencv_objdetect231.lib;opencv_legacy231.lib;opencv_video231.lib\n\t\t\t\t%(AdditionalLibraryDirectories);..\\..\\..\\addons\\ofxOpenCv\\libs\\opencv\\lib\\vs2010\n\nthis doesn't seem to be the case on osx or windows, which produces correct results: \n\n\t%(AdditionalDependencies);opencv_calib3d231.lib;opencv_contrib231.lib;opencv_core231.lib;opencv_features2d231.lib;opencv_flann231.lib;opencv_gpu231.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_imgproc231.lib;opencv_legacy231.lib;opencv_ml231.lib;opencv_objdetect231.lib;opencv_video231.lib;zlib.lib\n\nwould be good to look at the logic of \"visualStudioProject::addAddon()\" and see if we can fix this.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1268","comments":9,"milestone":null,"number":1268,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1268","assignee":null,"title":"project generator - bad libs for VS / opencv examples","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-05-20T21:50:24Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":4662873,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T00:43:37Z","body":"I woud love some eyes on ofFbo would be great to get it cleaned up and standardized for 0072. \nRight now there are a ton of #ifdefs and some very hard to follow logic, which makes bug fixing quite difficult especially on OPENGL_ES\n\nsee: https://gist.github.com/2711815\n\n@elliotwoods @arturoc @memotv @damiannz @ofZach @kylemcdonald \n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1263","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1263,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1263","assignee":null,"title":"ofFbo.cpp is a huge mess! ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-16T16:27:30Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":4608132,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T14:29:02Z","body":"I added a .mailmap file to the repo to correctly collate all the contributors in spite of changing nick names/email addresses. This is useful when trying to identify contributors for a changelog or similar, or when using the git logging functions like shortlog.\n\nSee the before/after situation here: https://gist.github.com/2710366\n\nI have respected privacy and only used those real names that people have already given in a git ID in the repo. Mainly this addition only associates the different email addresses to one user. @arturoc wins the prize of most used emails! :-)\nThe list is pretty complete, I only had difficulties to associate some IDs to the correct Zachs, since it was not clear for some if @ofZach or @stfj (Zach Gage) was the contributor. Those were left as-is.\n\nIf anybody has objections to their various email being united under their name, please say so and I will correct/remove the relevant entries.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1262","comments":2,"milestone":null,"number":1262,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1262","assignee":null,"title":"Add .mailmap for contributor collation","labels":[],"closed_at":null,"created_at":"2012-05-16T13:44:32Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"id":4604661,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1262.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1262","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1262.patch"}},{"updated_at":"2012-05-16T09:35:31Z","body":"Address #375.\n\nAdd setVolumef(float). Also more clearly define volume ranges (int is 0..255, float is 0..1) and more robust clamping of volume argument.\n\nThis has not been tested on Linux or Windows.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1260","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1260,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1260","assignee":null,"title":"allow float volume on ofVideoPlayer","labels":[],"closed_at":null,"created_at":"2012-05-15T17:50:22Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"damiannz","id":144366},"id":4588997,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1260.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1260","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1260.patch"}},{"updated_at":"2012-05-21T07:31:47Z","body":"This was originally posted @\"biginners\".\n\nhttp://forum.openframeworks.cc/index.php/topic,9527.msg44049.html#msg44049\n\nJoshua noble suggested me to file it as a bug on jithub\n\n\n/////////////////original messages\n\nHello.\n\nI have question about ofShortPixels and ofShortColor.\n\nIf you execute the code below , it'll draw at half way screen height even though I did set aDot at (0. screen height / 4)\n\nAnd another weird thing is it draws 20 pixels instead of 10 pixels which I set for loop for 10 times.\n\nIt only draws correctly with ofPixels and ofColor.\n\nIt doesn't work with ofFloatPixels and ofFloatColor.\n\nPlease help me out.\n\nI need to have RGB value over 255 so I can check if those values are over 255.\n\nThanks in advanced\n\nJin\n\n\n.h file\nCode:\nview plaincopy to clipboardprint?\n\n #pragma once \n #include \"ofMain.h\" \n \n class Dot { \n public: \n ofVec2f location; \n \n Dot(){ \n location.set(0,0); \n } \n \n ~Dot(){} \n }; \n \n class testApp : public ofBaseApp{ \n public: \n void setup(); \n void update(); \n void draw(); \n \n int w,h; \n \n ofTexture particleTexture; \n ofShortPixels * rgbPixels; \n \n ofShortColor& paint(ofShortColor &); \n \n Dot aDot; \n \n \n }; \n\n\n.cpp file\nCode:\nview plaincopy to clipboardprint?\n\n #include \"testApp.h\" \n //-------------------------------------------------------------- \n void testApp::setup(){ \n ofSetFrameRate(30); \n ofSetBackgroundAuto(TRUE); \n ofBackground(0, 0, 0); \n w = ofGetWidth(); \n h = ofGetHeight(); \n \n particleTexture.allocate(w,h,GL_RGB); \n rgbPixels = new ofShortPixels; \n rgbPixels->allocate(w, h, 3); \n aDot.location.set(0, h/4); \n } \n \n //-------------------------------------------------------------- \n void testApp::update(){ \n ofShortColor pixelColor; \n ofShortColor newPixelColor; \n for(int i = 0; i<10; i++){ \n pixelColor = rgbPixels->getColor(aDot.location.x+i, aDot.location.y); \n \n newPixelColor = paint(pixelColor); \n \n rgbPixels->setColor(aDot.location.x+i, aDot.location.y,newPixelColor); \n \n } \n particleTexture.loadData(* rgbPixels); \n } \n \n //-------------------------------------------------------------- \n void testApp::draw(){ \n particleTexture.draw(0, 0, w, h); \n } \n \n ofShortColor & testApp::paint(ofShortColor & _c){ \n \n _c.r += 10; \n _c.g += 2; \n _c.b += 3; \n \n _c.set(_c.r, _c.g, _c.b); \n _c.clamp(); \n \n return _c; \n } ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1257","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1257,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1257","assignee":null,"title":"ofShortPixels doesn't draw pixels correctly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-14T05:46:14Z","state":"open","user":{"url":"https://api.github.com/users/gazaebal","gravatar_id":"f9d7811bb6318fedf7e9f2fe8bfece32","avatar_url":"https://secure.gravatar.com/avatar/f9d7811bb6318fedf7e9f2fe8bfece32?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"gazaebal","id":1736190},"id":4557803,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T21:42:08Z","body":"if i'm not mistaken, the correct way of using ofMatrix4x4 in oF is `glMultMatrixf(myMatrix.getPtr())` or `glLoadMatrixf`.\nThis seems a bit uncomfortable for me.\n\nsome candidates are:\n\n```c++\nofPushMatrix(const ofMatrix4x4 &); //needs alternatives as you might not want to push at the time\nofLoadMatrix(const ofMatrix4x4 &);\nofMultMatrix(const ofMatrix4x4 &);\n\nofMatrix4x4::apply();\nofMatrix4x4::glLoadMatrix(matrixMode = OF_MATRIX_MODE_CURRENT);\n```\n\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1256","comments":5,"milestone":null,"number":1256,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1256","assignee":null,"title":"Feature ofPushMatrix(const ofMatrix4x4 &)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-13T18:20:29Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4554058,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-11T21:24:20Z","body":"\tunsigned char faceSize = 3;\n\tif(data.getNumIndices()){\n\t\tos << \"element face \" << data.getNumIndices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t} else if(data.getMode() == OF_PRIMITIVE_TRIANGLES) {\n\t\tos << \"element face \" << data.getNumVertices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t}\n\nThe facesize is being set as static as 3, but this results in strange exports...things open OK in Meshlab, but exporting to other programs with no faces seems like it won't work","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1252","comments":6,"milestone":null,"number":1252,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1252","assignee":null,"title":"0071 ply (mesh.save()) Point export is broken","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-11T19:45:53Z","state":"open","user":{"url":"https://api.github.com/users/laserpilot","gravatar_id":"07001341fe6c156dddd5b9d06d828cba","avatar_url":"https://secure.gravatar.com/avatar/07001341fe6c156dddd5b9d06d828cba?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"laserpilot","id":1041023},"id":4539985,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:33:31Z","body":"couple of minor bugfixes (absolute path wasn't being detected on second if [absolute] for windows paths)\r\nfixes unixy paths no matter what on windows","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1251","comments":8,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1251,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1251","assignee":null,"title":"Bugfix of to data path","labels":[],"closed_at":null,"created_at":"2012-05-10T06:44:20Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4507572,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1251.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1251","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1251.patch"}},{"updated_at":"2012-05-16T09:43:23Z","body":":(\r\n\r\nIt seems i'm getting double 'data/' in my paths\r\nafter a little tracking down, i found this is because ofSystemLoadDialog changes the current working directory\r\n\r\nso we could try and either fix that by popping the folder after the dialog, \r\nof for windows using something like ```GetModuleFileName``` to get the path of the current exe rather than using the current working directory\r\n\r\nI can't seem to run GetModuleFileName from ofUtils.cpp even though windows.h is included in ofConstants.h (included in ofUtils.h)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1250","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1250,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1250","assignee":null,"title":"bug: ofToDataPath broken again","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-05-10T06:35:24Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4507492,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:42:44Z","body":"'ofx TCPClient :: receiveRaw' was found in the proble.\n\nOriginal :\n\n\tint ofxTCPClient::receiveRawBytes(char * receiveBuffer, int numBytes){\n\t\t\t messageSize = TCPClient.Receive(receiveBuffer, numBytes);\t\n\t\t\t if(messageSize==0){\t\t\n\t\t\t\t\t\tclose();\t\n\t\t\t }\t\n\t\t\t return messageSize;\n\t}\n\nBut 'TCPClient.Receive (receiveBuffer, numBytes)' from '-1' may return\n\nI was modified\n\n\tstring ofxTCPClient::receiveRaw(){\n\t\t\t messageSize = TCPClient.Receive(tmpBuff, TCP_MAX_MSG_SIZE);\n\t\t\t if(messageSize==0){\n\t\t\t\t\t\tclose();\n\t\t\t }\n\t\t\t //TCPClient.Receive is return -1....\n\t\t\t else if(messageSize < 0){ \n\t\t\t\t\t\ttmpBuff[0] = 0;\n\t\t\t }\n\t\t\t else if(messageSize; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"cf9ec647fbc78faae05cb2d11598f79c"'), ('date', 'Tue, 29 May 2012 19:27:10 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-04-30T19:43:55Z","body":"On 'update', PG should respect existing custom include paths, source files, linker flags and project options (such as optimization settings).\r\n\r\nOR\r\n\r\nXcode project should read and respect `OTHER_LDFLAGS` and `HEADER_SEARCH_PATHS`, and add `OTHER_CFLAGS` from Project.xcconfig; projectGenerator should leave these settings alone unless it figures out they need to be adjusted (this is probably going to be difficult).","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1217","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1217,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1217","assignee":null,"title":"projectGenerator update doesn't respect existing project settings","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-04-24T21:03:44Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4269431,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-02T10:19:07Z","body":"Since I don't want to derail #484 further, this issue deals with the implementation of a deprecation mechanism.\r\nBased on [this](http://stackoverflow.com/questions/295120/c-mark-as-deprecated), I made an OFDEPRECATED preproc macro.\r\n\r\nQUESTION: How do I correctly #ifdef for MacOS/XCode4/llvm?\r\n\r\nCould people test this on different platforms? On linux this works. \r\n\r\n\t\ttestApp.h:\r\n\r\n\t\t#pragma once\r\n\r\n\t\t#ifdef __GNUC__\r\n\t\t// maybe __clang__ for checking against llvm/xcode4?\r\n\t\t#define OFDEPRECATED(message, func) func __attribute__ ((deprecated(message)))\r\n\t\t#elif defined(_MSC_VER)\r\n\t\t#define OFDEPRECATED(message, func) __declspec(deprecated(message)) func\r\n\t\t#else\r\n\t\t#pragma message(\"WARNING: You need to implement DEPRECATED for this compiler\")\r\n\t\t#define OFDEPRECATED(message, func) func\r\n\t\t#endif\r\n\r\n\t\tand \r\n\r\n\t\t\t\tvoid dragEvent(ofDragInfo dragInfo);\r\n\t\t\t\tvoid gotMessage(ofMessage msg);\r\n\t\t\r\n\t\t\t\tOFDEPRECATED(\"This is an old function, don't use!\", void deprecatedFunction(void));\r\n\t\t\t\tOFDEPRECATED(\"Obsolete type, use T2!\", typedef int T1);\r\n\t\t\t\ttypedef int T2;\r\n\t\t\t\tOFDEPRECATED(\"This is an old variable, don't use!\", int oldvar3);\r\n\t\t\t\t//This breaks a bit cause it's used in the constructor of testApp, so always triggers.\r\n\r\n\t\t};\r\n\t\tOFDEPRECATED(\"old class!\", class oldClass {\r\n\t\t\tpublic:\r\n\t\t\t\toldClass();\r\n\t\t\t\tvirtual ~oldClass();\r\n\t\t});\r\n\r\n\t\ttestApp.cpp:\r\n\r\n\t\tvoid testApp::setup(){\r\n\t\t\tOFDEPRECATED(\"old string. Don't use\", string oldstring);\r\n\t\t\t// Uncomment these to trigger deprecation warnings\r\n\t\t//\tdeprecatedFunction();\r\n\t\t//\tT1 t1object = 5;\r\n\t\t//\toldstring = \"bla\";\r\n\t\t//\toldvar3=5;\r\n\t\t//\toldClass bla;\r\n\t\t}\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1216","comments":11,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1216,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1216","assignee":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Implement deprecation mechanism","labels":[],"closed_at":null,"created_at":"2012-04-24T21:03:39Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4269429,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-30T19:43:14Z","body":"When using PG's 'update' functionality on apps are in paths with non-standard depths (in my case, `oF/apps/dir/subdir/subsubdir`) the OF_PATH and #include directives in the resulting Project.xcconfig don't match, which means oF projects won't compile:\r\n\r\n~~~~\r\n//THE PATH TO THE ROOT OF OUR OF PATH RELATIVE TO THIS PROJECT.\r\n//THIS NEEDS TO BE DEFINED BEFORE CoreOF.xcconfig IS INCLUDED\r\nOF_PATH = ../../../..\r\n\r\n//THIS HAS ALL THE HEADER AND LIBS FOR OF CORE\r\n#include \"../../../../../libs/openFrameworksCompiled/project/osx/CoreOF.xcconfig\"\r\n~~~~\r\n\r\nNote extra `../` in the `#include` path.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1215","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1215,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1215","assignee":null,"title":"projectGenerator sets incorrect path in Project.xcconfig","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-04-24T20:59:57Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4269359,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-22T23:56:33Z","body":"i'm teaching a workshop right now and i feel like it's ridiculous that i need to explain pointers just to access video :)\r\n\r\nlet's add this!","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1202","comments":3,"milestone":null,"number":1202,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1202","assignee":null,"title":"ofVideoPlayer etc needs ofColor access","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-22T18:42:58Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4231092,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-29T17:34:24Z","body":"DO NOT PULL YET!\r\n\r\nHey all\r\n\r\nHere's the 'off-axis camera' setup we worked on at ScreenLab last weekend.\r\nIt allows you to:\r\n\r\n* Set lens offset on a camera\r\n* Calculate the camera parameters based on a 'view portal' defined by 3 points (top left, bottom left, bottom right)\r\n\r\nCurrently the changes involve editing ofBaseRenderer (and therefore all other renderers) to support lensOffset parameter (default 0,0). We could remove this since ofCamera doesn't actually use ofSetupScreenPerspective\r\n\r\nSo let's have a quick chat about what needs chaning to make this core friendly and then probably pull after 0071 release?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1201","comments":9,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1201,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1201","assignee":null,"title":"Feature provocation pull request: ofCamera lens offset","labels":[],"closed_at":null,"created_at":"2012-04-22T15:55:29Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4230131,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1201.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1201","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1201.patch"}},{"updated_at":"2012-05-14T01:22:17Z","body":"I'm investigating the way to draw bezier curves / nurbs etc. with shaders, here is a list a links and information I found that can improve render times with OF. Any way I must admit I'm new to openGL & shaders so maybe someone can take this to implement maybe an add-on or maybe to added to the core.\r\n\r\n**Resolution Independent Curve Rendering using Programmable Graphics Hardware**\r\nhttp://research.microsoft.com/en-us/um/people/cloop/loopblinn05.pdf\r\n\r\n**Resolution independent GPU accelerated Curve & Font rendering**\r\n**GPU based Resolution Independent Font & Curve Rendering – initial Release**\r\nhttp://jausoft.com/blog/2011/04/01/resolution-independent-gpu-accelerated-curve-font-rendering/\r\nhttp://ramisantina.com/blog/?p=73\r\nhttp://vimeo.com/21810192\r\nhttp://jogamp.org/doc/gpunurbs2011/p70-santina.pdf\r\n\r\n**Curvy blues**\r\nhttp://www.mdk.org.pl/2007/10/27/curvy-blues\r\n\r\n**Vector drawing: OpenGL shaders and cairo & vector hardware tessellation**\r\nhttp://www.mdk.org.pl/2007/8/6/vector-drawing-opengl-shaders-and-cairo\r\n\r\n**ShivaVG & Random Access Rendering of Animated Vector Graphics**\r\nhttp://ivanleben.blogspot.com.es/2007/07/shivavg-open-source-ansi-c-openvg.html\r\nhttp://www.youtube.com/watch?v=mD8X-e5-sY4\r\nhttp://www.youtube.com/watch?v=U4USCfwORUg\r\nhttp://andrejas-atelier.com/ivan/IvanLebenHonsThesis.pdf\r\n\r\n**RAVG**\r\nhttp://research.microsoft.com/en-us/um/people/hoppe/proj/ravg/\r\n\r\n**NV Path Rendering Videos (seams only with nvidia)**\r\nhttp://developer.nvidia.com/nv-path-rendering-videos\r\n\r\n**Vector drawing: OpenGL polygon tessellation**\r\nhttp://www.mdk.org.pl/2007/8/16/vector-drawing-opengl-polygon-tessellation\r\nhttp://zrusin.blogspot.com.es/2006/07/hardware-accelerated-polygon-rendering.html\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1190","comments":8,"milestone":null,"number":1190,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1190","assignee":null,"title":"Bezier Shaders & Vector openGL rendering","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-2D","name":"section-2D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-20T09:23:00Z","state":"open","user":{"url":"https://api.github.com/users/microbians","gravatar_id":"98c91e60903b83c0a022ee70cca9ca21","login":"microbians","id":1662136,"avatar_url":"https://secure.gravatar.com/avatar/98c91e60903b83c0a022ee70cca9ca21?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4207350,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:41:20Z","body":"ofSetCurveResolution is not changing the resolution using ofBezier nor ofBezierVertex (tested with ofScale is more easy to see the bug)\r\n\r\n ofFill();\r\n ofSetHexColor(0xFF9933);\r\n ofBeginShape();\r\n ofVertex(x0,y0);\r\n ofBezierVertex(x1,y1,x2,y2,x3,y3);\r\n ofEndShape();\r\n\r\nall works fine when using ofPath directly:\r\n\r\n ofPath curve;\r\n curve.setFillHexColor(0xFF000);\r\n curve.setCurveResolution(120);\r\n curve.moveTo(x0, y0);\r\n curve.bezierTo(x1,y1,x2,y2,x3,y3);\r\n curve.draw();\r\n\r\nmore: http://forum.openframeworks.cc/index.php/topic,9596.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1189","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1189,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1189","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofSetCurveResolution + ofBezierVertex bug","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-04-20T08:51:51Z","state":"open","user":{"url":"https://api.github.com/users/microbians","gravatar_id":"98c91e60903b83c0a022ee70cca9ca21","login":"microbians","id":1662136,"avatar_url":"https://secure.gravatar.com/avatar/98c91e60903b83c0a022ee70cca9ca21?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4206982,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-01T04:10:23Z","body":"If you set up an ofFbo as follows...\r\n\r\n```cpp\r\n ofFbo::Settings s;\r\n s.width = 400;\r\n s.height = 400;\r\n s.textureTarget = GL_TEXTURE_2D;\r\n s.useDepth = true;\r\n s.depthAsTexture = true;\r\n s.dethInternalFormat = GL_DEPTH_COMPONENT24;\r\n```\r\n\r\n...then the colour texture's dimensions are set to be the next POTs up but the depth texture's dimensions don't seem to be. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1186","comments":2,"milestone":null,"number":1186,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1186","assignee":null,"title":"ofFbo depthBufferTex can be inconsistent with colour texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-18T15:08:32Z","state":"open","user":{"url":"https://api.github.com/users/neilmendoza","gravatar_id":"3e46b12547e7bac19eb982bc512b19c4","login":"neilmendoza","id":818571,"avatar_url":"https://secure.gravatar.com/avatar/3e46b12547e7bac19eb982bc512b19c4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4174070,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:44:27Z","body":"As mentioned here: http://forum.openframeworks.cc/index.php?topic=9107.0\r\nOpenGLES2 not working. It is always falls back to ES1. I tested it only on iPad2 with iOS 5.0.1.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1178","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1178,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1178","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"OpenGLES2 not working","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-04-16T11:19:36Z","state":"open","user":{"url":"https://api.github.com/users/erinnovations","gravatar_id":"29639bbeb3afdde8fb3c7e273e5e43c6","login":"erinnovations","id":253455,"avatar_url":"https://secure.gravatar.com/avatar/29639bbeb3afdde8fb3c7e273e5e43c6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4132608,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-14T13:45:55Z","body":"in ofTexture::loadData we are doing:\r\n\r\n\r\n\t//------------------------ likely, we are uploading continuous data\r\n\tGLint prevAlignment;\r\n\tglGetIntegerv(GL_UNPACK_ALIGNMENT, &prevAlignment);\r\n\tglPixelStorei(GL_UNPACK_ALIGNMENT, 1);\r\n\r\nany reason for this? leaving the default works too. i've been working with a huge video and the transfer rates on some cards were super slow with ofTexture::loadData. even glDrawPixels was faster, i've finally used pbo's but later looking at ofTexture discovered this lines and i suspect that it could be the reason for loadData being slower, haven't tested it yet though.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1175","comments":0,"milestone":null,"number":1175,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1175","assignee":null,"title":"GL_UNPACK_ALIGNMENT 1 in ofTexture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-14T13:45:42Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4117762,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:39:22Z","body":"one returns the result (dot) the other performs in place (cross), i.e. overrides the contents\r\nThe two definitions are inconsistent\r\npropose rename `ofVec3f::dot` to become `ofVec3f::getDotted` in line with `ofVec3f::getCrossed`","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1174","comments":9,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1174,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1174","assignee":null,"title":"bug : inconsistent API for ofVec3f::dot and ofVec3f::cross","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-13T17:09:38Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4108582,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-14T04:20:36Z","body":"If you pass a string containing non-ascii characters to ofToHex(), the non-ascii characters (with character codes above 127) will be output as ffffxxxx (it depends on the exact character value and the size of the int type on the platform you are compiling for).\r\nThe problem is due to an incorrect cast in the ostringstream operation inside the loop.\r\nInstead of directly casting the (signed) char from the input character to an unsigned int, the input character must first be cast to an unsigned char.\r\nIn other words, instead of:\r\n``` out << setfill('0') << setw(2) << hex << (unsigned int) value[i];```\r\nit should be:\r\n``` out << setfill('0') << setw(2) << hex << (unsigned int) ((unsigned char)value[i]);```\r\nor maybe even:\r\n``` out << setfill('0') << setw(2) << hex << static_cast(static_cast(value[i]));```\r\nif you prefer C++ style casts over C style casts. :)\r\n\r\nHTH\r\n/Jesper","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1173","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1173,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1173","assignee":null,"title":"ofToHex(string) is wrong for non-ascii input","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-13T14:42:30Z","state":"open","user":{"url":"https://api.github.com/users/pappis","gravatar_id":"fbf3d56c96cf5b891056530066549692","login":"pappis","id":1640543,"avatar_url":"https://secure.gravatar.com/avatar/fbf3d56c96cf5b891056530066549692?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4104336,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-12T10:09:42Z","body":"if I call ofBeginSaveScreenAsPDF using ofEasyCam or the ofCamera, the pdf doesn't have the perspective of the camera. There's a parameter b3d to ofBeginSaveScreenAsPDF which I interpret to be \"render taking into account 3d transforms\", but it doesn't seem to have any effect.\r\n\r\nmore on the forum\r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,9542.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1171","comments":0,"milestone":null,"number":1171,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1171","assignee":null,"title":"ofBeginSaveScreenAsPDF ignores 3d transformations","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-12T10:09:42Z","state":"open","user":{"url":"https://api.github.com/users/jesusgollonet","gravatar_id":"5008d5295e9bc2636313c7b50ed5981d","login":"jesusgollonet","id":31100,"avatar_url":"https://secure.gravatar.com/avatar/5008d5295e9bc2636313c7b50ed5981d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4081188,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-13T14:54:18Z","body":"if I have `ofEvent boolEvent` and i try to call `ofNotifyEvent( boolEvent, true )` i get a `no matching function` error as the compiler cannot coerce `true` to a `bool &`.\r\n\r\nto solve this, instead of this:\r\n\r\n~~~~\r\nofEvent boolEvent;\r\n...\r\nofNotifyEvent( boolEvent, true );\r\n~~~~\r\n\r\ni need to write this:\r\n\r\n~~~~\r\nofEvent boolEvent;\r\n...\r\nbool myBool = true;\r\nofNotifyEvent( boolEvent, myBool );\r\n~~~~\r\n\r\nthis is kind of annoying.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1167","comments":2,"milestone":null,"number":1167,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1167","assignee":null,"title":"ofNotifyEvent( boolEvent, true ) fails to compile","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-04-11T12:03:34Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4063456,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-11T13:21:33Z","body":"It's currently not possible to have an event without arguments\r\n\r\n`ofEvent testEvent;` -- fails to compile\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1166","comments":2,"milestone":null,"number":1166,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1166","assignee":null,"title":"ofEvent lacks simple, argument-free use case","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-04-11T12:00:19Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4063417,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-21T15:41:01Z","body":"It's currently not possible to write `ofLogError( \"serial\", \"error %i connecting to serial\", serialError )`. \r\n\r\nThere should be `ofLogError( string module, string format, ... )` methods as with normal ofLog.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1165","comments":6,"milestone":null,"number":1165,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1165","assignee":null,"title":"ofLogError, ofLogWarning lack format, ... args","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-04-11T11:56:33Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4063366,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-10T16:47:19Z","body":"change `allocate(_w, _h, OF_IMAGE_COLOR);` to `allocate(_w, _h, OF_IMAGE_COLOR_ALPHA);` (via reza on irc)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1152","comments":4,"milestone":null,"number":1152,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1152","assignee":null,"title":"grabScreen in ofImage fails on Android","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-04-09T17:15:21Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4032047,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-29T14:46:40Z","body":"the module name is no longer printed if it's coming from OF itself.\r\n\r\ninstead of the constant name, a human-readable string is printed.\r\n\r\nexample output from project generator: http://pastebin.com/raw.php?i=0dp938Jx","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1151","comments":6,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1151,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1151","assignee":null,"title":"shorten + simplify ofLog output","labels":[],"closed_at":null,"created_at":"2012-04-08T21:13:14Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4023525,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1151.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1151","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1151.patch"}},{"updated_at":"2012-04-17T14:47:36Z","body":"\r\nWorking on the project generator, which has a fair amount of logging, I'm concerned about how much space we loose on each line: \r\n\r\n OF: OF_LOG_NOTICE:\r\n\r\nit's about 15-20 characters or so, pretty significant where each line is 80, so alot more wrapping happens then I'd like, making the results less cleaner or organized. \r\n\r\nI propose we alter \r\n\r\n string ofGetLogLevelName(ofLogLevel level){\r\n switch(level){\r\n case OF_LOG_VERBOSE:\r\n return \"OF_LOG_VERBOSE\";\r\n break;\r\n case OF_LOG_NOTICE:\r\n return \"OF_LOG_NOTICE\";\r\n break;\r\n case OF_LOG_WARNING:\r\n return \"OF_LOG_WARNING\";\r\n break;\r\n case OF_LOG_ERROR:\r\n return \"OF_LOG_ERROR\";\r\n break;\r\n case OF_LOG_FATAL_ERROR:\r\n return \"OF_LOG_FATAL_ERROR\";\r\n break;\r\n case OF_LOG_SILENT:\r\n return \"OF_LOG_SILENT\";\r\n break;\r\n default:\r\n return \"\";\r\n }\r\n }\r\n\r\nso that we can have something like : \r\n\r\n (of:notice) \r\n (of:verbose) \r\n (of:error) \r\n\r\nor something smaller and if we loose the all caps, maybe less threatening :)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1150","comments":4,"milestone":null,"number":1150,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1150","assignee":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"propose shortening ofLog console message length","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-04-08T20:32:49Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4023305,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-07T15:00:32Z","body":"Hey all\r\n\r\nA few sections of the repo need some love to put them in line with the project generator:\r\n\r\n1. Readme's\r\n2. Rogue old project generators\r\n3. Document complementing tools\r\n\r\n# Readme\r\n\r\nThe readme's in the root of the repo need some love\r\nnone of them mention project generator \r\n\r\ni feel like each should be a description of how to get to a working project generator on each of the respective platforms\r\n\r\nalso note:\r\n* .vs2010 is missing\r\n* readme.txt repeats information from the other readme's (i.e. it's a list of platform specific instructions)\r\ni think this should be perhaps a little description of oF and a few tips on how to get started\r\n\r\n# Rogue old 'project generators' / documenting complementary tools for project generator\r\n\r\nHere's things I can find in the repo which don't make sense to me at the moment:\r\n\r\n* `openFrameworks\\scripts\\????\\compileAllExamples.bat`\r\n** is this supposed to be run (optionally) after the project generator?\r\n** why is the project template within this folder?\r\n* `openFrameworks\\scripts\\????\\createProjects.py` \r\n** if this isn't supposed to be used anymore, lets delete it immediately (we can always recover in emergencies)\r\n\r\nand the 'other' folder in the root.. perhaps never took off?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1146","comments":0,"milestone":null,"number":1146,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1146","assignee":null,"title":"Document Project Generator / clean out old tools","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"closed_at":null,"created_at":"2012-04-07T14:43:53Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4015514,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-07T19:49:31Z","body":"When attempting to render a mesh to a PDF the ofCairoRender does not output a filled mesh, thus the PDF output looks empty. \r\n\r\nIf you open the file in illustrator you'll see the paths, there but with no stroke or fill. \r\n\r\nWhen I dug into the issue a bit further I realized that Cairo isn't capable of rendering shapes with per vertex colors easily...\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1145","comments":3,"milestone":null,"number":1145,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1145","assignee":null,"title":"ofCairoRenderer ofMesh doesn't render properly to PDF","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-04-06T22:02:01Z","state":"open","user":{"url":"https://api.github.com/users/rezaali","gravatar_id":"548374013b9c6e50ebbd2294e12d4f31","login":"rezaali","id":555207,"avatar_url":"https://secure.gravatar.com/avatar/548374013b9c6e50ebbd2294e12d4f31?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4010494,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-01T04:21:01Z","body":"When using the ofColor subtraction operator, negative results are clamped to positive values instead of 0. Values are circulating between 0 and 255, which could be useful for hue in HSV but in most cases (R, G, B..) is not what I would expect.\r\n\r\n ofColor a(10, 40, 80);\r\n ofColor b(20, 5, 30);\r\n ofColor c = (a-b); // I get: (246, 45, 50), I would expect: (0, 45, 50)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1144","comments":9,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1144,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1144","assignee":null,"title":"ofColor subtraction and negative values","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-04-06T07:56:44Z","state":"open","user":{"url":"https://api.github.com/users/jembezmamy","gravatar_id":"69a23dc9914cb6bc3202c50e15eabba0","login":"jembezmamy","id":720354,"avatar_url":"https://secure.gravatar.com/avatar/69a23dc9914cb6bc3202c50e15eabba0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4001148,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-04T12:07:24Z","body":"When using the dragEvent ofDragInfo I always get the following error message:\r\n\r\nwarning: Could not find object file \"/Users/theo/Documents/CODE/__OPENFRAMEWORKS/gitOF/openFrameworks/apps/devApps/macDragDropExample/buildGlutFrameworkHackedWindowLevel10.4/libForeground.a(macx_foreground.o)\" - no debug information available for \"/Users/mcast/Code/GLUT-ToPost/macx_foreground.m\".\r\n\r\nIt doesn't seem to hurt my code but is a bit annoying, especially early on when I wasn't sure if it had anything to do with compile failings. Not a big issue obviously, but it might confuse some other newbie's also.\r\n\r\n(OF 0.07 - Xcode 4.2.1 - OS X 10.7.3 - macbook pro) ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1138","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1138,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1138","assignee":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"benign error message","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2012-04-04T11:05:57Z","state":"open","user":{"url":"https://api.github.com/users/davideo71","gravatar_id":"42c3c1acbdb4a998d8096b49745219cd","login":"davideo71","id":1611385,"avatar_url":"https://secure.gravatar.com/avatar/42c3c1acbdb4a998d8096b49745219cd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3968742,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-03T17:37:10Z","body":"theo's #1133 made me think about ways that i use noise regularly that might also be abstracted.\r\n\r\ni would also like to see versions of noise that return multidimensional results. normally i do something like:\r\n\r\n\tofVec2 a(ofSignedNoise(t, 0), ofSignedNoise(0, t)); // 1D -> 2D\r\n\tofVec2 b(ofSignedNoise(x, 0), ofSignedNoise(0, y)); // 2D -> 2D\r\n\tofVec3 c(ofSignedNoise(t, 0, 0), ofSignedNoise(0, t, 0), ofSignedNoise(0, 0, t)); // 1D -> 3D\r\n\tofVec3 d(ofSignedNoise(x, 0, 0), ofSignedNoise(0, y, 0), ofSignedNoise(0, 0, (x + y) / 2)); // 2D -> 3D\r\n\r\nand it would be good to spend some time making sure these are really good ways of doing it, then implement them inside some functions like `ofSignedNoise2()` and `ofSignedNoise3()` (for example).","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1134","comments":2,"milestone":null,"number":1134,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1134","assignee":null,"title":"multidimensional noise output","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-04-01T16:44:55Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3917377,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-01T17:48:12Z","body":"ie: the equivalent of doing \r\n\r\nfloat rate = 0.02 + ofNoise(ofGetElapsedTimeF() * 0.02, 100.0) * 0.015;\r\nfloat value = ofSignedNoise( rate, x, y ); \r\n\r\nas one function. \r\n\r\nalso see kyle's #1134 for other noise utils. \r\n\r\nI find myself needing this quite often for more natural random motion where the rate of change is variable. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1133","comments":0,"milestone":null,"number":1133,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1133","assignee":null,"title":"ofNoise and ofSignedNoise with 2nd order control for rate.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-04-01T15:45:11Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3917018,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=3 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4941'), ('content-length', '55518'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"414a5c156bbe219ad21d164052b40f6c"'), ('date', 'Tue, 29 May 2012 19:27:11 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-04-02T02:05:52Z","body":"This is a feature discussion issue for what string features we should add to of.\r\nofZach mentioned some regexp ones from P5 match matchAll\r\nWould be great to get some eyes on this.\r\n\r\nOne approach would be a static class or namespace.\r\nThe idea would be we could include a variety of handy functions that would be useful for people not wanting to get into regexp\r\n\r\n\tofString::contains(str, \"apple\") //returns bool\r\n\tofString::starts(str, \"The\") //returns bool\r\n\tofString::ends(str, \".\") //returns bool\r\n\tofString::count(str, \"apples\") //count how many times apples appears in the \r\n\tofString::join(myVectorStr, \", \"); //this is currently ofJoinString\r\n\tofString::split(someText, \".\"); //this is currently ofSplitString\r\n\tofString::split(someHtml, \"<\", \">\"); //this is the same but returns a vector of things between the start and end delims\r\n\tofString::limit(someText, 200); //limit the text to 200 characters. optional arg to add ... to the end.\r\n\r\nQuestions:\r\n- Should we mirror P5 with match and matchAll or should we indicate that regexp is required? ie regexMatch regexMatchAll ?\r\n- Other string utils we could add?\r\n- Should it be ofStringUtils:: or ofString:: ?\r\n- Something to do a split and then return a vector of float int etc?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1132","comments":6,"milestone":null,"number":1132,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1132","assignee":null,"title":"ofStringUtils:: feature discussion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-31T17:52:48Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":3911629,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-05-27T17:40:30Z","body":"This is a feature discussion issue for what should be added / changed to ofTTF.\r\nWould be great to get some eyes on this from @vtron @ofzach @arturoc and anyone with thoughts on the matter.\r\n\r\nTextAreas:\r\n- Fit text to a box\r\n- Handle overflow ( ie either truncate or resize box height )\r\n- non ragged options\r\n- could textAreas work with both ofTTF and ofDrawBitmapString ? abstract text formatting?\r\n\r\nAlignment:\r\n- Left align a string\r\n- Right align\r\n- Center\r\n- Top align \r\n- Base align \r\n\r\nSpacing:\r\n- Kerning\r\n- Leading / line height\r\n\r\nLoading:\r\n- Allow for loading a font up to a max size for drawing at different sizes. \r\n- Allow for selection and loading of specific sizes within one object. ie: myFont.setCurrentSize(12); \r\n- Font family's / sets ? Bold, Italic etc? \r\n\r\nDrawing:\r\n- Allow for drawing font at different sizes. Scale font as needed. \r\n\r\nFormatting:\r\n- Could we somehow allow a string to have different colors, sizes. Right now it is a pain to change colors or sizes. \r\n- would this be replicating basic html or another approach? maybe better as an addon?\r\n\r\nInfo:\r\n- Ability to get the x and y position of the nth character in the string? useful maybe for cursor or selection?\r\n\r\n**Update:**\r\n-Underline\r\n-Render rect behind text ( a la what @kylemcdonald added to ofDrawBitmapString)\r\n-Scale type to fit a rect + keep aspect ratio\r\n-Crazy: text along a path :) ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1131","comments":25,"milestone":null,"number":1131,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1131","assignee":null,"title":"ofTTF feature discussion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-31T17:36:25Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":3911537,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-31T14:44:01Z","body":"Agree on a common format for a header in the contributed example files.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1130","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1130,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1130","assignee":null,"title":"Define standard header for examples.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-31T14:44:01Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":3910580,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-04-24T02:12:05Z","body":"\r\n\r\nXcode 4 mangles OF projects pretty badly in the following ways: \r\n\r\na) it autogenerates schemes, and \"openframeworks\" appears as the chosen scheme\r\nb) it sometimes chooses the wrong SDK for OF -- is there a way to set that?\r\nc) debug and release are not really clear, part of this is a shift in xcode -- but it's much harder to see how things are compiled and to set release or debug\r\nd) I still had issues with OF needing to be recompiled all the time. I tried to fix this, but we should make sure it's done right. the of lib was appearing red even though it had been built, etc. \r\n\r\nI've tried to fix some of this in detroit with the PG, but I don't think it's the right way to do it. Overall, it would be great to have projects work smoothly on xcode 4...\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1129","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1129,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1129","assignee":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"title":"xcode 4 issues: scheme, auto-generation of schemes, rebuilding OF, sdk, etc","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-03-31T14:39:04Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":3910555,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-31T16:32:04Z","body":"When deprecating api's (e.g. ofEvents, ofVertexes), perhaps we could help automate the changes through simple scripts to update api\r\nSuggest sticking to something close to how uncrustify scripts are run (and perhaps there are tools like uncrustify but specifically for this task)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1128","comments":1,"milestone":null,"number":1128,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1128","assignee":null,"title":"upgrade scripts","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-31T14:38:19Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":3910549,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-04-09T16:47:04Z","body":"It would be nice (and useful for testing the PG) if the PG would get an option to clean the examples folders of all generated files. \r\n\r\nCurrently, the quickest option is to delete the examples folder on disk, and do `git reset --hard HEAD`.\r\n\r\nAs before, milestoned for 0071, but feel free to push back.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1126","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1126,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1126","assignee":null,"title":"PG Feature request: Clean examples folder","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-03-30T12:51:30Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":3897090,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-29T16:47:29Z","body":"there is a hard limit of 100 files when using drag & drop into an of app. not sure if it's an of issue, but am curious if it comes from the hacked glutDragEventFunc ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1124","comments":0,"milestone":null,"number":1124,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1124","assignee":null,"title":"void dragEvent(ofDragInfo dragInfo) limited to 100 files in osx lion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-29T16:47:29Z","state":"open","user":{"url":"https://api.github.com/users/jesusgollonet","gravatar_id":"5008d5295e9bc2636313c7b50ed5981d","login":"jesusgollonet","avatar_url":"https://secure.gravatar.com/avatar/5008d5295e9bc2636313c7b50ed5981d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":31100},"id":3883598,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-29T13:05:25Z","body":"When loading a file with ofImage, ofSoundPlayer , ofVideoPlayer-file or any ofFile it would be nice to be able to know if the file changed since it was loaded.\r\n\r\nIts very simple to implement with Poco::File->getLastModified() and it would be very nice if this would be built into the above classes.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1120","comments":2,"milestone":null,"number":1120,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1120","assignee":null,"title":"isFileChanged() for ofImage, ofVideoPlayer, ofSoundPlayer and ofFile","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-28T16:21:45Z","state":"open","user":{"url":"https://api.github.com/users/imanhp","gravatar_id":"7398ab0bbd07832d0289f26773e65077","login":"imanhp","avatar_url":"https://secure.gravatar.com/avatar/7398ab0bbd07832d0289f26773e65077?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1216228},"id":3856005,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-30T12:19:59Z","body":"paths.make should be in the repo as an example on how to set it up correctly, but changes (i.e. paths unique to every user) to it should be ignored cause everyone will have a different version in their computers so we don't want personal changes to appear in git status.\r\n\r\nI think the best way to solve this is to rename it to paths.make.default, keep this in the repo, maybe with `` instead of your path, and have people make their own paths.make from that one. We track changes to paths.make.default and ignore paths.make. \r\n\r\nThis will probably also need a mechanism in the makefile to fail gracefully and remind the user, if his customized paths.make is missing.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1118","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1118,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1118","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"Default paths.make for Android","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/android","name":"android","color":"2bc4ad"}],"closed_at":null,"created_at":"2012-03-28T12:19:39Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":3850655,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-04-18T17:13:36Z","body":"Once ofSetFrameRate() is called, I can't find a way to retrieve it. I think implementing a ofGetDesiredFrameRate() in ofAppRunner would make sense, also adding getDesiredFrameRate() to ofAppBaseWindow and all subclasses, where the actual value is stored. \r\n\r\nThis can be useful to compare the desired frame rate with actual frame rate and react accordingly if required.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1117","comments":0,"milestone":null,"number":1117,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1117","assignee":null,"title":"Can't retrieve desired frame rate once set","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-27T11:48:00Z","state":"open","user":{"url":"https://api.github.com/users/armadillu","gravatar_id":"b87a82d7c86161432ee6388c7cbd5e2c","login":"armadillu","avatar_url":"https://secure.gravatar.com/avatar/b87a82d7c86161432ee6388c7cbd5e2c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":167057},"id":3825582,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-26T22:27:14Z","body":"https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/gl/ofVbo.cpp#L343\r\n\r\nIndices should be specified as GL_ELEMENT_ARRAY_BUFFER unless I am mistaken.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1116","comments":5,"milestone":null,"number":1116,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1116","assignee":null,"title":"ofVBO updateIndexData incorrect buffer type.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-26T18:26:05Z","state":"open","user":{"url":"https://api.github.com/users/vade","gravatar_id":"37aca214d4875cd90af9d67072c82642","login":"vade","avatar_url":"https://secure.gravatar.com/avatar/37aca214d4875cd90af9d67072c82642?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":65011},"id":3813852,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-26T18:45:51Z","body":"The default optimization settings for debug builds in example XCode projects is set to Fastest,Smallest thus making debugging very difficult, is there a specific reason for this?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1115","comments":3,"milestone":null,"number":1115,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1115","assignee":null,"title":"optimization level in xcode projects","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"}],"closed_at":null,"created_at":"2012-03-26T17:05:14Z","state":"open","user":{"url":"https://api.github.com/users/colormotor","gravatar_id":"2548dbd6a86902ed5260b5f76710b83c","login":"colormotor","avatar_url":"https://secure.gravatar.com/avatar/2548dbd6a86902ed5260b5f76710b83c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1239872},"id":3812318,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-31T15:31:31Z","body":"I had some problems because of macro definitions in ofArduino.h overriding an enum in a a class of my codebase ( SHIFT )\r\nIt's not exactly a bug! but I would suggest using enums or const int instead of the macros to avoid any conflicts\r\nI solved the problem by modifying \r\n#define SHIFT 0x05 \r\ninto \r\nconst int SHIFT = 0x05;\r\n\r\nanother solution could be using enumerations as \r\nenum\r\n{\r\n ...\r\n SHIFT = 0x05,\r\n etc...\r\n};\r\n\r\nI believe this would not break any of the existing code\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1114","comments":1,"milestone":null,"number":1114,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1114","assignee":{"url":"https://api.github.com/users/joshuajnoble","gravatar_id":"10960ba0f305803a1cdc7cd6188d643b","login":"joshuajnoble","avatar_url":"https://secure.gravatar.com/avatar/10960ba0f305803a1cdc7cd6188d643b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":237423},"title":"macros in ofArduino","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-03-26T17:02:21Z","state":"open","user":{"url":"https://api.github.com/users/colormotor","gravatar_id":"2548dbd6a86902ed5260b5f76710b83c","login":"colormotor","avatar_url":"https://secure.gravatar.com/avatar/2548dbd6a86902ed5260b5f76710b83c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1239872},"id":3812275,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-27T14:56:56Z","body":"Hello.\r\n\r\nI'm trying to run camera frame grabing in OSX Lion.\r\nSimple ofVideoGrabber doesn't work - even if I link it with 10.6 SDK (and 10.6 is deployment target) I receive crash in initialization of ofVideoGrabber. Details are the same as in http://forum.openframeworks.cc/index.php/topic,6776.0.html\r\n\r\nI tryed QtKitMovieGrabberExample. It had some problems in compilation - texture property was not synthesized, I wrote this property and compilation run well.\r\nBut linking is fault. All I receive form linker is:\r\n\r\n*Ld bin/movieGrabberExampleDebug.app/Contents/MacOS/movieGrabberExampleDebug normal i386\r\n cd /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample\r\n setenv MACOSX_DEPLOYMENT_TARGET 10.6\r\n /Developer/usr/bin/clang++ -arch i386 -isysroot /Developer/SDKs/MacOSX10.6.sdk -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freeimage/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/GLee/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/rtAudio/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/fmodex/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freetype/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx -F/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin -F/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/glut/lib/osx -filelist /Users/yltastep/Library/Developer/Xcode/DerivedData/movieGrabberExample-aftkspwrgtotrteyzaplfbqzeasd/Build/Intermediates/movieGrabberExample.build/Debug/movieGrabberExample.build/Objects-normal/i386/movieGrabberExampleDebug.LinkFileList -mmacosx-version-min=10.6 -dead_strip ../../../libs/poco/lib/osx/PocoFoundation.a ../../../libs/poco/lib/osx/PocoNet.a ../../../libs/poco/lib/osx/PocoXML.a ../../../libs/poco/lib/osx/PocoUtil.a ../../../libs/tess2/lib/osx/tess2.a ../../../libs/glew/lib/osx/glew.a ../../../libs/cairo/lib/osx/cairo-script-interpreter.a ../../../libs/cairo/lib/osx/cairo.a ../../../libs/cairo/lib/osx/pixman-1.a ../../../libs/fmodex/lib/osx/libfmodex.dylib ../../../libs/rtAudio/lib/osx/rtAudio.a /Users/yltastep/Documents/XCode/openframeworks/libs/openFrameworksCompiled/lib/osx/openFrameworksDebug.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/GLee/lib/osx/GLee.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/rtAudio/lib/osx/rtAudio.a -framework AGL -framework ApplicationServices -framework AudioToolbox -framework Carbon -framework CoreAudio -framework CoreFoundation -framework CoreServices -framework OpenGL -framework QuickTime -framework AppKit -framework Cocoa -framework IOKit -framework GLUT /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoFoundation.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoNet.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoUtil.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoXML.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freetype/lib/osx/freetype.a -lfmodex /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx/freeimage.a -framework QTKit -framework Quartz -framework QuartzCore -o /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin/movieGrabberExampleDebug.app/Contents/MacOS/movieGrabberExampleDebug*\r\n\r\n**Command /Developer/usr/bin/clang++ failed with exit code 1**\r\n\r\nSo no explanation of problem.\r\n\r\nIs somebody ran this example successfully ?\r\nAnd what I'm doing wrong ?\r\n\r\nThanks in advance !\r\n\r\nWith regards.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1112","comments":9,"milestone":null,"number":1112,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1112","assignee":null,"title":"Issue with QtKitMovieGrabberExample in apps/devapps","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2012-03-26T12:11:44Z","state":"open","user":{"url":"https://api.github.com/users/OlexandrStepanov","gravatar_id":"aa6e2a475cab75513c9cc435b28eef31","login":"OlexandrStepanov","avatar_url":"https://secure.gravatar.com/avatar/aa6e2a475cab75513c9cc435b28eef31?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":971079},"id":3807459,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-25T20:07:16Z","body":"Todd's example has this code a few times in it by hand, but I'm thinking it's so simple it could be added along side ofSplitString() and would be really useful ? for sure, more string utility functions are helpful, and for basic text parsing, this is great. Poco gives us this for free, so it doesn't seem like a huge stretch to think of something like this, plus find and replace, etc. Would make the regex example much shorter. \r\n\r\np5 has something similar, if that's a helpful argument: \r\n\r\nhttp://processing.org/reference/matchAll_.html\r\n\r\n\r\n\tvector < string > ofxRegex::getMatchedStrings (string contents, string regex );\r\n\tvector < string > ofxRegex::getMatchedStrings (string contents, string regex ){\r\n \r\n\t vector < string > results;\r\n\t RegularExpression regEx(regex);\r\n\t RegularExpression::Match match;\r\n \r\n\t while(regEx.match(contents, match) != 0) {\r\n \r\n\t // we get the sub string from the content\r\n\t // and then trim the content so that we\r\n\t // can continue to search \r\n\t string foundStr = contents.substr(match.offset, match.length);\r\n\t contents = contents.substr(match.offset + match.length);\r\n \r\n\t results.push_back(foundStr);\r\n \r\n\t }\r\n\t return results;\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1110","comments":1,"milestone":null,"number":1110,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1110","assignee":null,"title":"add a simple regex function like ofSplitString()","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-03-25T18:56:37Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":3799872,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-25T18:50:13Z","body":"code to recreate: \r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::setup(){\r\n system(\"pwd;\");\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::update(){\r\n system(\"pwd;\");\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::draw(){\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::keyPressed(int key){\r\n cout << ofToDataPath(\"temp\") << endl;\r\n}\r\n\r\nproduces: \r\n\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n../../../data/temp\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin/emptyExampleDebug.app/Contents/MacOS\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin/emptyExampleDebug.app/Contents/MacOS\r\n\r\nthis is because the code that fixes OSX paths isn't called until you call ofToDataPath(). a good fix I think would be to set ofDataPathRoot (which happens in ofToDataPath) somewhere early in ofRunApp(). Or should it happen even earlier?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1109","comments":3,"milestone":null,"number":1109,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1109","assignee":null,"title":"mac paths don't seem right until you call \"ofToDataPath()\"","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2012-03-25T18:18:28Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":3799653,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-04-09T13:06:18Z","body":"easycam behaves as expected when inited but as soon as I change it's target it begins to behave strangely.\r\nthere's this imaginary sphere that we are rotating (it's diameter is min (viewport.width, vieport.height)), when the mouse is dragged from inside to outside of it the rotation just jumps to a \"random\" rotation. \r\nas well when you have a the camera rotated more than 180º in some axis the \"trackball\" doesn't behave as expected. yet this behavior is not seen when the target hasn't been changed.\r\n\r\nDoes any one know what's going on?\r\n\r\nI just came across this but I haven't gone deeply into how easycam handles the mouse to rotate. \r\nI'll do so ASAP. If someone can give me any clues I'll really apreciate it.\r\n\r\nregards!","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1108","comments":7,"milestone":null,"number":1108,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1108","assignee":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"title":"easyCam weird behavior when target changed","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-25T00:01:54Z","state":"open","user":{"url":"https://api.github.com/users/roymacdonald","gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","login":"roymacdonald","avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":974878},"id":3795495,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-04-09T16:47:18Z","body":"It would be great if the PG could also generate projects/examples for usage with Eclipse, i.e. just the makefile related files, no CB or other project files.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1103","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1103,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1103","assignee":null,"title":"PG feature request: Generate makefile-only projects","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-03-21T21:43:34Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":3754055,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-19T16:18:43Z","body":"whenever i call ofLog beneath openmp i have to wrap it in ```#pragma omp critical (ofLog)``` otherwise i get a crash\r\ni found adding the line above \r\nhttps://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/utils/ofLog.cpp#L84\r\nworks pretty well\r\n\r\nany objections to having it in there?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1098","comments":3,"milestone":null,"number":1098,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1098","assignee":null,"title":"feature / bug - #pragma omp critical(ofLog)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-19T14:04:51Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":3710293,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-15T20:34:17Z","body":"I'm finding that `ofDirector::listDir, open` are extremely slow\r\nit seems that it's actually loading the entire dir contents into memory\r\n\r\nit's possible to then do something like\r\n```\r\nofLoadImage(myPixels, dir.getFile(i));\r\n```\r\nand you can quickly load that image from memory. which is faster than\r\n```\r\nofLoadImage(myPixels, dir.getFile(i).getAbsolutePath());\r\n```\r\n\r\nBut this doesn't seem to work consistently (even though the slow listing is consistent)\r\nand surely isn't what we want.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1075","comments":2,"milestone":null,"number":1075,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1075","assignee":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"title":"bug ofDirectory::open(string path) actually loads the entire dir into memory?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-15T07:54:55Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":3662214,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-14T16:03:06Z","body":"Hello,\r\nI needed alpha channel in short length video for a recent project.\r\nIn the forum there is some old zip file for a ofxAlphaVideoPlayer that is still working, but that's OS X & windows only as it's based on QT.\r\nI'm working on linux, and I didn't find anything for GStreamer, so I modified the existing ofGstUtils and ofGstVideoPlayer.\r\nWould you mind if I do a pull request for this?\r\nI can also provide an example with a short length video using animation codec.\r\nWhat do you think?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1070","comments":6,"milestone":null,"number":1070,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1070","assignee":null,"title":"Alpha movies in GStreamer","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-14T13:02:41Z","state":"open","user":{"url":"https://api.github.com/users/manuelgeoffray","gravatar_id":"c1ec5161b69b4a990436deafb1170d64","login":"manuelgeoffray","avatar_url":"https://secure.gravatar.com/avatar/c1ec5161b69b4a990436deafb1170d64?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":808090},"id":3647640,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-17T19:26:40Z","body":"Hey !\r\n\r\nMe again. Didn't find anywhere this infos. I'm currently testing the travis-ci.org service.\r\nAs many people are working on the project and as many many issue are raised, and fixed, I thought it could be great to add some test and thus the travis service.\r\n\r\nIt would avoid the problem met here :\r\nhttps://github.com/openframeworks/openFrameworks/commit/7ca7833ea1afb6bd5a6c54031e3fa688aa0c0ba8\r\nand the discussion here :\r\nhttps://github.com/openframeworks/openFrameworks/issues/804\r\nor there :\r\nhttps://github.com/openframeworks/openFrameworks/pull/921\r\n\r\nI read that :\r\n\r\n>feel free to make a unitTests folder at the root level of OF -\r\n> that is where all unitTests will go.\r\n\r\nBut didn't find them.\r\n\r\nThe travis service will permit to get the little badge we know well : \r\n[![Build Status](https://secure.travis-ci.org/soixantecircuits/openFrameworks.png?branch=master)](http://travis-ci.org/soixantecircuits/openFrameworks)\r\n\r\nAlso, why not adding some spec test, to ensure future development of features.\r\nI'm currently reading :\r\nhttp://www.squidoo.com/cplusplus-behaviour-driven-development-tools#module124841511\r\nhttp://sourceforge.net/apps/mediawiki/turtle/index.php?title=Turtle\r\n\r\nFor those who want some other nice reading :\r\n\r\nhttp://gamesfromwithin.com/exploring-the-c-unit-testing-framework-jungle\r\n\r\nThe travis test is here, currently it is a total fake, but I just proposed the idea of a test driven development\r\nhttp://travis-ci.org/#!/soixantecircuits/openFrameworks/builds/854259 ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1068","comments":10,"milestone":null,"number":1068,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1068","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"Continuous integration","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-13T15:49:23Z","state":"open","user":{"url":"https://api.github.com/users/gabrielstuff","gravatar_id":"390ea42c23c2c383f973abdafa24bb07","login":"gabrielstuff","avatar_url":"https://secure.gravatar.com/avatar/390ea42c23c2c383f973abdafa24bb07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":285033},"id":3631618,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-13T15:21:30Z","body":"Hi !\r\n\r\nRecently, I've been in lot of languages, from C++ to ruby, passing by the colosus of javascript and the sea of php. Dropping by various and strange framework such as the Cinder, the jQuery, the Rails, the Processing, etc ...\r\n\r\n## the situation \r\n\r\nWhat I have noticed is that a strong architecture and a really ease use of add-ons makes a framework get stronger. For instance, if we take a look at Ruby, we see that the use of gems give him a powerfull advance over his friend php. \r\n\r\n### the Rubyist\r\n\r\nThis way of thinking is getting even better with the http://gembundler.com/ [Bundler](http://gembundler.com/) friend. The gems have dependencies and a simple GemFile help to easily install all dependencies for one project.\r\n\r\n### the Cinderist\r\n\r\nFor Cinder, we get the block, as for OSX, it quiet easy and fast. Drag and drop and play/code.\r\n\r\n### the jQueryist\r\n\r\nWell, it is not frequent to have jQuery plugins depending on other jQuery plugins, but there are several way to handle dependencies on jQuery and JS.\r\n\r\n### the nodist\r\n\r\nThis lead us to http://npmjs.org/, which is really nice with dependencies.\r\nFor instance, if you tried cloud9ide, you know that you just have to make sure you get the proper package.json :\r\n\r\n```\r\n{\r\n \"name\": \"node-example\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": {\r\n \"express\": \"2.2.0\"\r\n }\r\n}\r\n```\r\n\r\nThis file ensure that everything before running the server will be installed via npm.\r\n\r\n### the ofist\r\n\r\nRight now, we just have the addons.make file, which is nice but does not do any lifting for us. We have to verify that the ofx addons has been downloaded and is installed in the right folder.\r\n\r\n- Why not creating a script that will allow to manage dependencies compilation ? \r\nI have this wonderful ofxJSONsettings, but he depends on [JSONCPP](http://jsoncpp.sourceforge.net/) and on boost, so here we will have :\r\n\r\npackage.json file in the ofxJSONsettings folder :\r\n\r\n```\r\n{\r\n \"name\": \"ofxJSONsettings\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": [{\r\n \"jsoncpp\": \"0.6.0-rc2\"\r\n \"url\":\"http://jsoncpp.svn.sourceforge.net/svnroot/jsoncpp/trunk/\"\r\n \"protocol\":\"svn\"\r\n }\r\n ]\r\n}\r\n```\r\n\r\nHum, then, we have our little bash script :\r\n\r\n`xadd -addon ofxJSONsettings`\r\n\r\nand for a project, we have to ensure that the make file run `xadd -addon ofxJSONsettings` if it does not find ofXJSONsettings.\r\n\r\nThis could lead to simplify and easify the use of plugin ! Hey, I want the new [mistubaRenderer](https://github.com/satoruhiga/ofxMitsubaRenderer) let's give a try :\r\n\r\n```\r\n{\r\n \"name\": \"ofxMitsubaRenderer\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": [{\r\n \"mitsuba\": \"0.1\"\r\n \"url\":\"https://www.mitsuba-renderer.org/hg/mitsuba-bidir\"\r\n \"protocol\":\"hg\"\r\n }\r\n ]\r\n}\r\n```\r\n\r\nWell, this would be simplify if everybody use some same pattern, and respect some convention.\r\n\r\nSo what do you guys think about that ?\r\n\r\n\r\nThank you !\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1063","comments":7,"milestone":null,"number":1063,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1063","assignee":null,"title":"Automatic installer + dependencies handler","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-13T10:44:57Z","state":"open","user":{"url":"https://api.github.com/users/gabrielstuff","gravatar_id":"390ea42c23c2c383f973abdafa24bb07","login":"gabrielstuff","avatar_url":"https://secure.gravatar.com/avatar/390ea42c23c2c383f973abdafa24bb07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":285033},"id":3627067,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-12T17:58:20Z","body":"right now there is a lot of duplicated code in the vector math classes. for example, normalize() and getNormalized() have separate implementations. if we follow the pattern of always implementing things in self-modifying methods, then providing copy-returning methods as alternatives, this will reduce the amount of code and make it harder to cause bugs or behavioral discrepancies.\r\n\r\n- implementations of an algorithm should always be self-modifying\r\n- copy-returning versions should be implemented using a differently named method, internally making a copy and calling the self-modifying version on the copy.\r\n\r\ne.g. something like (note, this isn't how it's implemented right now):\r\n\r\n\tinline ofVec2f& ofVec2f::normalize() {\r\n\t\tfloat length = (float)sqrt(x*x + y*y);\r\n\t\tif( length > 0 ) {\r\n\t\t\tx /= length;\r\n\t\t\ty /= length;\r\n\t\t}\r\n\t\treturn *this;\r\n\t}\r\n\r\n\tinline ofVec2f ofVec2f::getNormalized() const {\r\n\t\tofVec2f result = *this;\r\n\t\treturn result.normalize();\r\n\t}\r\n\r\ntaken from this post https://github.com/openframeworks/openFrameworks/pull/1061#issuecomment-4455601","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1062","comments":4,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1062,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1062","assignee":null,"title":"regularize code for math addons","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-12T16:33:06Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":3614231,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-13T13:07:11Z","body":"Just saw this is the documentation.\r\nVertexes is incorrect (wrong plural)\r\nVertices","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1055","comments":18,"milestone":null,"number":1055,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1055","assignee":null,"title":"ofVertexes?? ofCurveVertexes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-03-12T01:50:19Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":3605277,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=4 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4940'), ('content-length', '44623'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"7a7b635a35e21a9f69de7a09b9040837"'), ('date', 'Tue, 29 May 2012 19:27:12 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-03-10T17:52:58Z","body":"if you have:\r\n\r\n uniform float dog;\r\n float cat;\r\n\r\nand:\r\n\r\n shader.setUniform1f(\"dog\", ofGetElapsedTimef());\r\n shader.setUniform1f(\"cat\", ofGetElapsedTimef());\r\n\r\nthere is no currently no error printed to the console, and \"cat\" is mysteriously unchanging while \"dog\" is fine.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1052","comments":0,"milestone":null,"number":1052,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1052","assignee":null,"title":"ofShader should show an error when using an invalid name","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-03-10T17:52:58Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3596240,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-14T15:11:08Z","body":"ofxiPhoneScreenGrab saves with compression artifacts.\r\nfix for saving a lossless image in the below post,\r\nhttp://forum.openframeworks.cc/index.php/topic,4737.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1051","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1051,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1051","assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"title":"ofxiPhoneScreenGrab saves with compression artifacts.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-03-10T12:15:33Z","state":"open","user":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"id":3594731,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-14T15:09:09Z","body":"just wanted to kick off a discussion about cleaning up ofxiPhone folder structure.\r\nhave this up on the forum, http://forum.openframeworks.cc/index.php/topic,8955.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1050","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1050,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1050","assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"title":"clean up ofxiPhone folder structure.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-10T06:32:12Z","state":"open","user":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"id":3593619,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-29T14:55:24Z","body":"This an implementation of ofxiPhoneScreenGrab for Android","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1048","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1048,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1048","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"Adding Android screenshot feature, example to demonstrate it","labels":[],"closed_at":null,"created_at":"2012-03-10T05:31:45Z","state":"open","user":{"url":"https://api.github.com/users/bostonbusmap","avatar_url":"https://secure.gravatar.com/avatar/433032cca043cedb67180dc5109062da?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"433032cca043cedb67180dc5109062da","login":"bostonbusmap","id":863262},"id":3593430,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1048","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1048.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1048.diff"}},{"updated_at":"2012-03-12T15:31:12Z","body":"whenever I try to open a file using system dialog from OF utils or ofxFileDIalogOSX, the video is loaded correctly but it get stuck and doesn't play at all. see:\r\nhttp://forum.openframeworks.cc/index.php/topic,5233.0.html\r\nhttp://forum.openframeworks.cc/index.php/topic,6515.0.html\r\n\r\nquite a big issue IMHO","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1047","comments":8,"milestone":null,"number":1047,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1047","assignee":null,"title":"opening video files with system dialog in osx prevents them to play correctly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-09T18:54:28Z","state":"open","user":{"url":"https://api.github.com/users/hvfrancesco","avatar_url":"https://secure.gravatar.com/avatar/e02a8a3953de9d5d9ec1c7aa8d43eca4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e02a8a3953de9d5d9ec1c7aa8d43eca4","login":"hvfrancesco","id":614123},"id":3587808,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-20T16:11:54Z","body":"just a small one but would be great. \r\nmaybe even different icon for debug and release? ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1039","comments":12,"milestone":null,"number":1039,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1039","assignee":null,"title":"make icons for OF apps","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-06T17:56:58Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":3528378,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-06T15:32:44Z","body":"right now it is not clear from a visual perspective what is a button / trigger and what is a toggle. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1037","comments":1,"milestone":null,"number":1037,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1037","assignee":null,"title":"ofxGui, ofxButton should look visually different to toggle","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-05T18:06:03Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":3510933,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-10T19:29:53Z","body":"xml is one of the reasons this is currently an addon. \r\nthe original idea was to have something simple and minimal that could be in the core. \r\nalso something which could be built off of for larger gui addons ( hence ofParameter ) \r\n\r\nI see a couple of options going forward.\r\n\r\n1) swtich from xml to newline separated text files and move ofGui into core\r\nthis would be quite simple as ofParameter already has a name, value structure \r\n\r\n2) same as 1) but keep ofxGui as an addon - making it a bit simpler to add to a project \r\n2b) add ofParameter to core as it is more general purpose\r\n\r\n3) bring ofxXmlSettings into the core and bring ofGui into core.\r\n\r\n\r\nanyway I thought it would be good to get some discussion going about this.\r\nI'm especially interested in setting up ofParam and ofBaseGui in a way to make things modular and extendable. \r\n\r\nalso could be interesting to look at a way to represent a collection/group of ofParameters\r\nsome of this might be similar to some of the stuff @memo was doing with his plist style system. \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1036","comments":10,"milestone":null,"number":1036,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1036","assignee":null,"title":"ofxGui -> ofGui - how/should we bring into core?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-05T16:56:26Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":3509628,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-12T12:39:10Z","body":"If it finds .vert, .frag (and .geom?) files in the data/ folder, the project generator should make a new folder, in the project file, next to (or inside) src called data/ and add the files to it. (data/ so that beginners can find the files in Finder)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1034","comments":3,"milestone":null,"number":1034,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1034","assignee":null,"title":"projectGenerator ignores shader .vert and .frag files","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-03-04T11:19:04Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":3495602,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-06T15:06:00Z","body":"I talked to Arturo about this, but I want to make sure it's known. When you call ofLogSetLogLevel with a module string, that string is added to a map used to check the module's log level ... but right now that string is never removed.\r\n\r\nIf someone creates a large amount module names the map could grow arbitrarily large over time. The thought so far is that no one would make enough module names for it to be a problem.\r\n\r\nFor instance, using the [proposed ofThread rewrite](https://github.com/openframeworks/openFrameworks/pull/1031), each thread creates a new module name when it sets itself to verbose and, in the case of spawning lots of verbose worker threads, the map will grow.\r\n\r\nMy proposed solution would be to remove the module name from the map when the level for that module is set back to OF_LOG_NOTICE and/or to the current log level.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1033","comments":11,"milestone":null,"number":1033,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1033","assignee":null,"title":"ofSetLogLevel(module, level) adds to map but dosen't remove","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-04T10:54:12Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3495503,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-14T15:11:08Z","body":"this change c50648e29199a3f61eae05f6ceb350a97ab275d7 caused the problem. i'm not sure why adding explicit cases for handling loadData for ofShortPixels and ofFloatPixels would do this. to see the proof, run devApps/AdvancedImageLoading","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1029","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1029,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1029","assignee":null,"title":"display of short + float textures are broken","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-03-03T19:04:59Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3491627,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-10T06:54:25Z","body":"I've just encountered a real 'wall meets head' bug, aka 'why is my camera image black??'\r\n\r\nwell it turns out that actually, ofSaveImage doesn't save mono images\r\nit just saves out black pixels\r\n\r\ntesting on Windows, VS2010.\r\nAnybody else getting this?\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1028","comments":5,"milestone":null,"number":1028,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1028","assignee":null,"title":"ofSaveImage / ofImage::saveImage() problem with OF_IMAGE_GRAYSCALE / OF_PIXELS_MONO","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-03-03T12:23:06Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3489266,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-16T09:25:13Z","body":"The Android example is basically a copy of the existing 3dModelBuilder example with some code changes to work with OpenGL ES","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1024","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1024,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1024","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"Fixing 3DModelBuilder to work with OpenGL ES, added Android example for it","labels":[],"closed_at":null,"created_at":"2012-03-02T16:55:29Z","state":"open","user":{"url":"https://api.github.com/users/bostonbusmap","avatar_url":"https://secure.gravatar.com/avatar/433032cca043cedb67180dc5109062da?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"433032cca043cedb67180dc5109062da","login":"bostonbusmap","id":863262},"id":3479768,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1024","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1024.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1024.diff"}},{"updated_at":"2012-03-30T16:34:06Z","body":"Continuation of http://forum.openframeworks.cc/index.php/topic,9095.msg42378.html#new\r\n\r\nNOTE: Things may have changed as the projects I'm using are all created using the older creation tools.\r\nCan somebody up to date please check?\r\n\r\nCurrently XCode's default project setting is /O2 for debug projects\r\nwhilst Visual Studio's is /O0\r\n\r\n/O0 generally makes the most sense for debug mode as it allows for effective program flow and variable tracking (because with /O2, lines of code and variables are commonly optimised away).\r\n\r\nIf we are worried that this will leave default users in a default 'slower state' then perhaps we could make release the default? Then people could be aware that they are selecting debug when they want to actually do some debugging?\r\nBut this may have other issues (such as some libraries might not perform as many checks as otherwise?)\r\n\r\nit might be worth making users more aware of the 2 options anyway, and then start using them consistently","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1022","comments":12,"milestone":null,"number":1022,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1022","assignee":null,"title":"Optimisation consistency","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-02T13:25:15Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3476540,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-01T19:42:09Z","body":"currently if MSAA is enabled, COLOR_ATTACHMENT[ 0 -> nSamples]_EXT are bound for MS blitting, which could overwrite your texture color attachments without notifying you [ i.e. setSamples(4); setNumTextures(4) ]. There may be some solution where numSamples*numTextures = maxAttachments, allowing for multisampled internal textures, but at the very least we should warn/notify that samples and textures won't play so nicely together, or try to allocate samples/textures in the remaining attachments and notify on overflow.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1019","comments":0,"milestone":null,"number":1019,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1019","assignee":null,"title":"ofFbo needs consideration as far as MRT + MSAA","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-01T19:42:09Z","state":"open","user":{"url":"https://api.github.com/users/kpasko","avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","login":"kpasko","id":167271},"id":3462226,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-01T04:33:36Z","body":"there's a block in ofConstants which reads like:\r\n\r\n```c++\r\n#ifndef PI\r\n\t#define PI 3.14159265358979323846\r\n#endif\r\n\r\n#ifndef TWO_PI\r\n\t#define TWO_PI 6.28318530717958647693\r\n#endif\r\n\r\n#ifndef M_TWO_PI\r\n\t#define M_TWO_PI 6.28318530717958647693\r\n#endif\r\n\r\n#ifndef FOUR_PI\r\n\t#define FOUR_PI 12.56637061435917295385\r\n#endif\r\n\r\n#ifndef HALF_PI\r\n\t#define HALF_PI 1.57079632679489661923\r\n#endif\r\n\r\n#ifndef DEG_TO_RAD\r\n\t#define DEG_TO_RAD (PI/180.0)\r\n#endif\r\n\r\n#ifndef RAD_TO_DEG\r\n\t#define RAD_TO_DEG (180.0/PI)\r\n#endif\r\n\r\n#ifndef MIN\r\n\t#define MIN(x,y) (((x) < (y)) ? (x) : (y))\r\n#endif\r\n\r\n#ifndef MAX\r\n\t#define MAX(x,y) (((x) > (y)) ? (x) : (y))\r\n#endif\r\n\r\n#ifndef CLAMP\r\n\t#define CLAMP(val,min,max) (MAX(MIN(val,max),min))\r\n#endif\r\n\r\n#ifndef ABS\r\n\t#define ABS(x) (((x) < 0) ? -(x) : (x))\r\n#endif\r\n```\r\n\r\nthe problem is i've got this in another header file:\r\n\r\n```c++\r\n// macro-like inline functions\r\n\r\ntemplate\r\ninline T SQR(const T a) {return a*a;}\r\n\r\ntemplate\r\ninline const T &MAX(const T &a, const T &b)\r\n {return b > a ? (b) : (a);}\r\n\r\ninline float MAX(const double &a, const float &b)\r\n {return b > a ? (b) : float(a);}\r\n\r\ninline float MAX(const float &a, const double &b)\r\n {return b > a ? float(b) : (a);}\r\n\r\ntemplate\r\ninline const T &MIN(const T &a, const T &b)\r\n {return b < a ? (b) : (a);}\r\n\r\ninline float MIN(const double &a, const float &b)\r\n {return b < a ? (b) : float(a);}\r\n\r\ninline float MIN(const float &a, const double &b)\r\n {return b < a ? float(b) : (a);}\r\n\r\ntemplate\r\ninline T SIGN(const T &a, const T &b)\r\n\t{return b >= 0 ? (a >= 0 ? a : -a) : (a >= 0 ? -a : a);}\r\n\r\ninline float SIGN(const float &a, const double &b)\r\n\t{return b >= 0 ? (a >= 0 ? a : -a) : (a >= 0 ? -a : a);}\r\n\r\ninline float SIGN(const double &a, const float &b)\r\n\t{return (float)(b >= 0 ? (a >= 0 ? a : -a) : (a >= 0 ? -a : a));}\r\n```\r\n\r\nAnd ofConstants is included in almost every oF file\r\n\r\ni'd suggest moving to inline functions and presume that compiler optimisations makes these 2 options equivalent in terms of performance, but that inline wins out for compatability","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1007","comments":10,"milestone":null,"number":1007,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1007","assignee":null,"title":"bug #defines in ofConstants conflict with other libraries","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-29T15:31:18Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3438233,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-01T13:02:37Z","body":"Propose the following functions:\r\n\r\n```c++\r\nofVec2f ofRandom(const ofVec2f&);\r\nofVec3f ofRandom(const ofVec3f&);\r\nofVec2f ofRandom(const ofVec2f& range1, const ofVec2f& range2);\r\nofVec3f ofRandom(const ofVec3f& range1, const ofVec3f& range2);\r\n```\r\n\r\nalso lots of other candidates for this, e.g. `ofClamp`, `ofMap`, etc\r\nsome clever templating possible?\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1005","comments":12,"milestone":null,"number":1005,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1005","assignee":null,"title":"feature ofRandom(ofVec3f) ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-29T06:32:03Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3432042,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-18T08:47:08Z","body":"I have a simple app that plays video files. I try to route (under windows) its output using Jack and Vitual Audio Cable but none can access it. I am just using the basic functionality of ofVideoPlayer, this is the class that deals with the video playing\r\n\r\n\r\n\t#include \"oscVPlayer.h\"\r\n\t#include \"ofMain.h\"\r\n\r\n\r\n\r\n\toscVPlayer::oscVPlayer()\r\n\t{\r\n\t\t\treset();\r\n\t}\r\n\r\n\tvoid oscVPlayer::reset()\r\n\t{ //defaults to fullscreen\r\n\t\t\tw = NULL;\r\n\t\t\th = NULL;\r\n\t\t\tx = 0;\r\n\t\t\ty = 0;\r\n\t\t\tdonereported = false;\r\n\t\t\tloopflag = OF_LOOP_NONE;\r\n\t\t\t\r\n\t\t\tcol.r = 0;\r\n\t\t\tcol.g = 0;\r\n\t\t\tcol.b = 0;\r\n\t\t\tcol.a = 255;\r\n\r\n\t\t\tif (isLoaded())\r\n\t\t{\r\n\t\t\t\t\tsetFrame(0);\r\n\t\t\t\t\tsetUseTexture(1);\r\n\t\t\t\t\tsetPaused(0);\r\n\t\t\t\t\tsetLoopState(OF_LOOP_NORMAL);\r\n\t\t\t\t\tsetSpeed(1);\r\n\t\t\t\t\tsetVolume(255);\r\n\t\t\t\t\tstop();\r\n\t\t}\r\n\t}\r\n\r\n\r\n\tvoid oscVPlayer::setUpVideo(string movie)\r\n\t{\r\n\t\t\tif (movie != \"none\")\r\n\t\t\t{\r\n\t\t\t\t\tif ( loadMovie(movie) )\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\t\tprintf(\"movie loaded\\n\");\r\n\t\t\t\t\t\t\tofVideoPlayer::update();\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\t\tprintf(\"CANNOT load movie\\n\");\r\n\t\t\t\t\t}\r\n\t\t\t}\r\n\t\t\telse\r\n\t\t\t{\r\n\t\t\t\t\tprintf(\"movie parameter is none, cannot load it\\n\");\r\n\t\t\t}\r\n\t}\r\n\r\n\r\n\r\n\r\n\tvoid oscVPlayer::setLoop()\r\n\t{\r\n\t\t\tsetLoopState(loopflag); // go back to your state. otherwise play resets it to loop ON\r\n\t}\r\n\r\n\r\n\r\n\r\n\tvoid oscVPlayer::resetSize()\r\n\t{\r\n\t\t\tw = NULL;\r\n\t\t\th = NULL;\r\n\t}\r\n\r\n\r\n\tvoid oscVPlayer::draw()\r\n\t{\r\n\t\tif (isLoaded())\r\n\t\t{\r\n\t\t\t if (col.a < 255) ofEnableAlphaBlending();\r\n\t\t\t\tofSetColor(col.r,col.g,col.b, col.a);\r\n\t\t\t\tofVideoPlayer::update();\r\n\t\t\t\tif (w==NULL && h==NULL)\r\n\t\t\t\t{\r\n\t\t\t\t\t\tofVideoPlayer::draw(x, y);\r\n\t\t\t\t}\r\n\t\t\t\telse\r\n\t\t\t\t{\r\n\t\t\t\t\t\t\tofVideoPlayer::draw(x, y, w, h);\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (col.a < 255) ofDisableAlphaBlending(); \r\n\t\t}\r\n\t}\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1001","comments":2,"milestone":null,"number":1001,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1001","assignee":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"title":"OF app sound out not available from Jack","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-02-27T14:59:34Z","state":"open","user":{"url":"https://api.github.com/users/enrike","avatar_url":"https://secure.gravatar.com/avatar/cc2adbc6d91bf2288f34f60a547a82cd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"cc2adbc6d91bf2288f34f60a547a82cd","login":"enrike","id":710785},"id":3401755,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-29T14:42:36Z","body":"// scissor\r\nvoid ofBeginScissor(ofRectangle &r);\r\nvoid ofBeginScissor(ofPoint &p, float w, float h);\r\nvoid ofBeginScissor(float x, float y, float w, float h);\r\nvoid ofEndScissor();\r\n\r\n\r\nthere is a problem with ofFBO due to the flip. I do not think that there is a way around it sooo just scale -1\r\n\r\nalso: \r\nextra ; removed \r\nlibs/openFrameworks/utils/ofUtils.cpp","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/993","comments":11,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":993,"html_url":"https://github.com/openframeworks/openFrameworks/issues/993","assignee":null,"title":"Of scissors","labels":[],"closed_at":null,"created_at":"2012-02-26T21:35:55Z","state":"open","user":{"url":"https://api.github.com/users/vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","id":149997},"id":3393466,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/993","patch_url":"https://github.com/openframeworks/openFrameworks/pull/993.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/993.diff"}},{"updated_at":"2012-02-25T20:25:00Z","body":"i think this is because ofDrawBitmapString draws the quads in the wrong orientation. but i'm guessing it works in FBOs... so if we switch the order it will stop working in FBOs.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/987","comments":0,"milestone":null,"number":987,"html_url":"https://github.com/openframeworks/openFrameworks/issues/987","assignee":null,"title":"GL_CULL_FACE breaks ofDrawBitmapString()","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-02-25T20:25:00Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3387163,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-22T23:34:17Z","body":"Some logging messages don't really tell where they were triggered. Someone needs to go through them and add information as to what module triggered the message. \r\n@danomatika has already volunteered to do this some time.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/985","comments":16,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":985,"html_url":"https://github.com/openframeworks/openFrameworks/issues/985","assignee":null,"title":"Make logging messages more informative","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-02-25T19:41:58Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3386914,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-11T18:31:55Z","body":"There's a lot of logging printfs in the core addons. These should be replaced by appropriate ofLog calls.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/984","comments":5,"milestone":null,"number":984,"html_url":"https://github.com/openframeworks/openFrameworks/issues/984","assignee":null,"title":"Replace printf() occurences by ofLog() in the core addons","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-02-25T19:36:51Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3386889,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-02-27T13:35:34Z","body":"`ofVec2f` has a function called `average` which takes an array of `ofVec2f` and calculates the centroid. it is not static, rather it overwrites its own `x` and `y` with the average. \r\n\r\nthis is a little weird. `average` should be static, or at least be *returning* the average rather than assigning to self.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/976","comments":4,"milestone":null,"number":976,"html_url":"https://github.com/openframeworks/openFrameworks/issues/976","assignee":null,"title":"ofVec2f::average has unexpected/clumsy behaviour","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-25T03:45:02Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":3382990,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-02-25T02:47:26Z","body":"Dummy issue to ensure that the 0076 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/972","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/10","number":10,"title":"0076 Release","due_on":"2012-10-29T07:00:00Z","closed_issues":0,"open_issues":1,"created_at":"2012-02-25T02:46:26Z","state":"open","description":"","id":88838},"number":972,"html_url":"https://github.com/openframeworks/openFrameworks/issues/972","assignee":null,"title":"0076 Release tracking issue","labels":[],"closed_at":null,"created_at":"2012-02-25T02:47:26Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3382766,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-02-25T02:47:37Z","body":"Dummy issue to ensure that the 0075 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/971","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/9","number":9,"title":"0075 Release","due_on":"2012-09-24T07:00:00Z","closed_issues":0,"open_issues":1,"created_at":"2012-02-25T02:46:15Z","state":"open","description":"","id":88837},"number":971,"html_url":"https://github.com/openframeworks/openFrameworks/issues/971","assignee":null,"title":"0075 Release tracking issue","labels":[],"closed_at":null,"created_at":"2012-02-25T02:47:05Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3382764,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=5 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4939'), ('content-length', '39838'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"a7bfe812cbaa85fbb708d70f4d883fac"'), ('date', 'Tue, 29 May 2012 19:27:13 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-02-25T01:36:58Z","body":"Dummy issue to ensure that the 0080 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/970","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","number":8,"closed_issues":0,"title":"0080 Release","due_on":"2013-01-01T08:00:00Z","open_issues":3,"created_at":"2012-02-25T01:34:28Z","state":"open","description":"","id":88731},"number":970,"html_url":"https://github.com/openframeworks/openFrameworks/issues/970","assignee":null,"title":"0080 Release tracking issue","labels":[],"closed_at":null,"created_at":"2012-02-25T01:36:54Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3381982,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T01:36:37Z","body":"Dummy issue to ensure that the 0074 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/969","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/7","number":7,"closed_issues":0,"title":"0074 Release","due_on":"2012-08-27T07:00:00Z","open_issues":1,"created_at":"2012-02-25T00:41:17Z","state":"open","description":"","id":88728},"number":969,"html_url":"https://github.com/openframeworks/openFrameworks/issues/969","assignee":null,"title":"0074 Release tracking issue","labels":[],"closed_at":null,"created_at":"2012-02-25T01:36:37Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3381977,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-24T04:31:01Z","body":"right now if you try and scale/rotate/etc before calling ofBackgroundGradient, it will fail.\r\n\r\npeople generally call ofBackground at the top of draw() so it shouldn't be a huge issue... but it does make it a little 'fragile'.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/955","comments":0,"milestone":null,"number":955,"html_url":"https://github.com/openframeworks/openFrameworks/issues/955","assignee":null,"title":"ofBackgroundGradient needs to be billboarded","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-02-24T04:31:01Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3367910,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-23T19:12:08Z","body":"Hello, I get a weird error trying to compile the movieplayerexample under linux64 :\r\n\r\n> `.text._ZN11ofBaseVideoD2Ev' referenced in section `.text._ZN11ofBaseVideoD1Ev[non-virtual thunk to ofBaseVideo::~ofBaseVideo()]' of ../../../libs/openFrameworksCompiled/lib/linux64/libopenFrameworks.a(ofBaseTypes.o): defined in discarded section `.text._ZN11ofBaseVideoD2Ev[_ZN11ofBaseVideoD5Ev]' of ../../../libs/openFrameworksCompiled/lib/linux64/libopenFrameworks.a(ofBaseTypes.o)\r\n\r\nMy version of OF is 007, it used to work under 0062...\r\n\r\nWhat should I do ?\r\n\r\nThanks","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/933","comments":4,"milestone":null,"number":933,"html_url":"https://github.com/openframeworks/openFrameworks/issues/933","assignee":null,"title":"Problem with moviePlayerExample under linux64","labels":[],"closed_at":null,"created_at":"2012-02-23T15:46:06Z","state":"open","user":{"url":"https://api.github.com/users/agrosjea","avatar_url":"https://secure.gravatar.com/avatar/e52c167621119d58d03c586bb053a633?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e52c167621119d58d03c586bb053a633","login":"agrosjea","id":1466085},"id":3357855,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-23T05:13:24Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/931","comments":0,"milestone":null,"number":931,"html_url":"https://github.com/openframeworks/openFrameworks/issues/931","assignee":null,"title":"ofCamera is not aware of ofOrientation","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-02-23T05:13:24Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":3351646,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-23T05:12:47Z","body":"do we need the ofOrientation parameter in ofSetupPerspective?\r\n\r\nit applies the rotation but if ofSetOrientation hasn't been called before passing the same orientation the results are not the expected.\r\n\r\nto test it:\r\n\r\nofSetOrientation(OF_ORIENTATION_90_LEFT);\r\nofSetPerspective(ofGetWidth(), ofGetHeight(),OF_ORIENTATION_90_LEFT)\r\n\r\nworks as expected but calling only \r\n\r\nofSetPerspective(ofGetWidth(), ofGetHeight(),OF_ORIENTATION_90_LEFT)\r\n\r\napplies a weird rotation cause the values of ofGetWidth(), ofGetHeight() are still the default ones\r\n\r\nis there any case where it's useful to call setupPerspective with a different orientation that the window has?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/930","comments":0,"milestone":null,"number":930,"html_url":"https://github.com/openframeworks/openFrameworks/issues/930","assignee":null,"title":"ofSetupPerspective ofOrientation","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-23T05:12:47Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":3351643,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-23T04:19:48Z","body":"Currently ofGetLogLevel returns the global log level aka for the \"OF\" module. It would be nice to be able to get the log level for user modules via:\r\n\r\n ofLogLevel level = ofGetLogLevel(\"myLogModule\");\r\n\r\nIt would as simple as adding the module as a string variable with a default of \"OF\".\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/929","comments":0,"milestone":null,"number":929,"html_url":"https://github.com/openframeworks/openFrameworks/issues/929","assignee":null,"title":"ofGetLogLevel should also accept modules","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-02-23T04:19:48Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3351374,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-23T03:46:32Z","body":"Currently there is a ofBgColorPtr(), but maybe it's nice to have a ofGetBackground() that returns an ofColor object or a reference to one.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/928","comments":0,"milestone":null,"number":928,"html_url":"https://github.com/openframeworks/openFrameworks/issues/928","assignee":null,"title":"no ofGetBackground()","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-23T03:46:32Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3351170,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-22T19:12:56Z","body":"ofGetViewportWidth/Height returns 0 is called in an object destructor, while ofGetWidth/Height do not. Could the ofGetViewport size be set to the ofGetWidth/Height size instead of 0 be default?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/926","comments":0,"milestone":null,"number":926,"html_url":"https://github.com/openframeworks/openFrameworks/issues/926","assignee":null,"title":"ofGetViewportWidth/Height returns 0 at startup","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-22T19:12:56Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3341020,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-22T00:28:08Z","body":"I noticed a few things when working with ofImage:\r\n\r\n* ofImage has a type variable for the image type but this is an int, as opposed to the ofImageType enum, so it's annoying to force convert ...\r\n* the width, height, & bpp variables are public, they should be protected with getters/setters\r\n* there isn't a getBytesPerPixel, you have to get the pixel reference then call getBytesPerPixel ...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/925","comments":0,"milestone":null,"number":925,"html_url":"https://github.com/openframeworks/openFrameworks/issues/925","assignee":null,"title":"ofImage has type as int, public vars, & missing getBPP, etc","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-22T00:28:08Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3324501,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-29T14:41:17Z","body":"As requested in https://github.com/openframeworks/openFrameworks/pull/794 I've branched openframeworks:develop into my own branch and applied the fixes required to build openFrameworks for Android with MinGW on the windows platform.\r\n\r\nThe instructions on how to compile are still valid (except for the part of patching):\r\nhttp://www.multigesture.net/articles/how-to-setup-openframeworks-for-android-on-windows/\r\n\r\nNote 1: You will need to run:\r\nandroid.bat update project --target android-8 --path C:\\openFrameworks\\addons\\ofxAndroid\\ofAndroidLib\r\n\r\nThis updates the project files for ofAndroidLib project. I didn't included those because those are user specific (they contain the path to the sdk)\r\n\r\nNote 2: d3ddf8e1 \r\nI only added this commit in order to make the examples build properly. Someone still needs to fix the proper implementation.\r\n\r\nNote 3: 7a9cf0ba\r\nWhile working on NodeBeat, we found out that not all devices are using /mnt/sdcard as their external storage location. In some cases the sdcard is located somewhere else (\"Environment.getExternalStorageDirectory()\" doesnt always return the correct location). This commit fixes this problem by checking several locations as reported on multiple Stackoverflow threads. More info about this issue can be found in the commit description.\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/922","comments":13,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":922,"html_url":"https://github.com/openframeworks/openFrameworks/issues/922","assignee":null,"title":"Windows compatibility patches and External storage location fixes.","labels":[],"closed_at":null,"created_at":"2012-02-19T23:30:24Z","state":"open","user":{"url":"https://api.github.com/users/falcon4ever","avatar_url":"https://secure.gravatar.com/avatar/4a503abeaa3d803e55e99093fbf1505d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"4a503abeaa3d803e55e99093fbf1505d","login":"falcon4ever","id":480019},"id":3288053,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/922.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/922","patch_url":"https://github.com/openframeworks/openFrameworks/pull/922.patch"}},{"updated_at":"2012-02-16T09:39:46Z","body":"What about having our own transform stack , in order to:\r\n-avoid to recompute globalTransformMatrix in each ofNode\r\n-could use it when rendering with OpenGL ES 2.0 shaders , which do not support predefined matrix values as world (modelview), worldProjection , or world inverseTranspose (for normals)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/920","comments":0,"milestone":null,"number":920,"html_url":"https://github.com/openframeworks/openFrameworks/issues/920","assignee":null,"title":"Transform stack","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-16T09:39:46Z","state":"open","user":{"url":"https://api.github.com/users/AugusteBonnin","avatar_url":"https://secure.gravatar.com/avatar/cbf7aa7c655d3652170984c9aa497a4c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"cbf7aa7c655d3652170984c9aa497a4c","login":"AugusteBonnin","id":1442658},"id":3248309,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-16T09:31:24Z","body":"There is an easy-to-correct error in ofNode::transformGL:\r\nIt should call loadMatrix with globalTransformMatrix as parameter (with a void restoreGL), or pushMatrix then multMatrix with localTransformMatrix (with a restoreGL that pops the previously pushed matrix),\r\nNOT push then mult with global. The bug appears as soon as you have got more than one level of depth in your node tree. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/919","comments":0,"milestone":null,"number":919,"html_url":"https://github.com/openframeworks/openFrameworks/issues/919","assignee":null,"title":"Error in ofNode::transformGL","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-02-16T09:31:24Z","state":"open","user":{"url":"https://api.github.com/users/AugusteBonnin","avatar_url":"https://secure.gravatar.com/avatar/cbf7aa7c655d3652170984c9aa497a4c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"cbf7aa7c655d3652170984c9aa497a4c","login":"AugusteBonnin","id":1442658},"id":3248230,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-08T10:15:31Z","body":"vs2010 does not include stdint.h support:\r\n\r\nhttp://stackoverflow.com/questions/126279/c99-stdint-h-header-and-ms-visual-studio\r\n\r\nwhich causes addon bugs like this:\r\n\r\nhttps://github.com/openframeworks/openFrameworks/issues/559\r\nhttps://github.com/kylemcdonald/ofxCv/issues/28\r\n\r\neven though these bugs aren't in the core, i think OF is designed to make it easy for people to write cross-platform, cross-compiler code. so i propose that we add an explicit declaration of the missing types for vs2010.\r\n\r\nthis isn't really something i'm worried about directly since i don't use vs2010, but i know people like elliot do. and it would be cleaner to add it once to the core than to add it once for every addon that is broken.\r\n\r\nthe solution would probably look like: take dan's code from the above issue, and move it from ofxOsc into the core.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/917","comments":5,"milestone":null,"number":917,"html_url":"https://github.com/openframeworks/openFrameworks/issues/917","assignee":null,"title":"add global stdint.h support?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"}],"closed_at":null,"created_at":"2012-02-15T02:38:17Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3229504,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-12T14:55:20Z","body":"to match ofGetWidth(), ofGetHeight()\r\n\r\ni.e. for ofGetMouseX() / ofGetWidth()","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/916","comments":1,"milestone":null,"number":916,"html_url":"https://github.com/openframeworks/openFrameworks/issues/916","assignee":null,"title":"ofGetMouseX() and ofGetMouseY() should return float","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-14T05:17:47Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3214174,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-13T08:16:08Z","body":"I had downloaded the 007 version, when I run of_preRelease_v007_linux/scripts/linux/debian/install_codeblocks.sh it install codeblocks without error, but when I run preRelease_v007_linux/scripts/linux/debian/install_dependencies.sh I get this error\r\n\r\ncompiling object for ../../../openFrameworks/graphics/ofGraphics.cpp\r\nmkdir -p obj/Debug/openFrameworks/graphics\r\ng++ -g3 -Wall -fexceptions -I../../../FreeImage/include -I../../../assimp/include -I../../../assimp/include/Compiler -I../../../cairo/include -I../../../cairo/include/cairo -I../../../cairo/include/pixman-1 -I../../../cairo/include/libpng15 -I../../../fmodex/include -I../../../freetype/include -I../../../freetype/include/freetype2 -I../../../freetype/include/freetype2/freetype -I../../../freetype/include/freetype2/freetype/config -I../../../freetype/include/freetype2/freetype/internal -I../../../freetype/include/freetype2/freetype/internal/services -I../../../glew/include -I../../../glew/include/GL -I../../../kiss/include -I../../../portaudio/include -I../../../rtAudio/include -I../../../tess2/include -I../../../poco/include -I../../../glu/include -I../../../openFrameworks/ -I../../../openFrameworks/3d -I../../../openFrameworks/math -I../../../openFrameworks/types -I../../../openFrameworks/graphics -I../../../openFrameworks/utils -I../../../openFrameworks/app -I../../../openFrameworks/video -I../../../openFrameworks/events -I../../../openFrameworks/communication -I../../../openFrameworks/gl -I../../../openFrameworks/sound -pthread -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -DOF_USING_GTK -MMD -MP -MFobj/Debug/openFrameworks/graphics/ofGraphics.d -MTobj/Debug/openFrameworks/graphics/ofGraphics.d -o obj/Debug/openFrameworks/graphics/ofGraphics.o -c ../../../openFrameworks/graphics/ofGraphics.cpp\r\n../../../openFrameworks/graphics/ofGraphics.cpp:37:22: warning: GL/glut.h: No such file or directory\r\n../../../openFrameworks/graphics/ofGraphics.cpp: In function ‘void ofSphere(float)’:\r\n../../../openFrameworks/graphics/ofGraphics.cpp:889: error: ‘glutSolidSphere’ was not declared in this scope\r\n../../../openFrameworks/graphics/ofGraphics.cpp:891: error: ‘glutWireSphere’ was not declared in this scope\r\nmake: *** [obj/Debug/openFrameworks/graphics/ofGraphics.o] Error 1\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/915","comments":2,"milestone":null,"number":915,"html_url":"https://github.com/openframeworks/openFrameworks/issues/915","assignee":null,"title":"problems installing dependencies in debian 6.0.4","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2012-02-13T05:45:01Z","state":"open","user":{"url":"https://api.github.com/users/atomsfat","avatar_url":"https://secure.gravatar.com/avatar/f732e5a8b77f8e4ed8fadc2c71916236?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"f732e5a8b77f8e4ed8fadc2c71916236","login":"atomsfat","id":140008},"id":3196145,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-12T04:41:26Z","body":"We have ofSetDataPathRoot() .... it makes sense to have a Getter as well. Basically I wanted the absolute path to the root data folder.\r\n\r\nI managed to fake this by calling ofToDataPath(\".\",true) but this seems a little counter-intuitive.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/914","comments":0,"milestone":null,"number":914,"html_url":"https://github.com/openframeworks/openFrameworks/issues/914","assignee":null,"title":"Add ofGetDataPathRoot","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-12T04:41:26Z","state":"open","user":{"url":"https://api.github.com/users/pierrep","avatar_url":"https://secure.gravatar.com/avatar/be11c9de8242e7aef0446eceaa289e01?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"be11c9de8242e7aef0446eceaa289e01","login":"pierrep","id":392160},"id":3189189,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-12T14:56:56Z","body":"it would be amazing if ofBeginShape()/ofEndShape() and ofPath supported tex coords (maybe ofTexCoord() and addTexCoord()).\r\n\r\nthis would allow for drawing arbitrary subsections of an image, or for creating an ofMesh that is texture mapped by an image.\r\n\r\nprocessing handles this with extra arguments to vertex() http://processing.org/reference/texture_.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/909","comments":3,"milestone":null,"number":909,"html_url":"https://github.com/openframeworks/openFrameworks/issues/909","assignee":null,"title":"shapes with texCoords","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-02-10T01:42:42Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3166745,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-09T08:16:47Z","body":"a student just showed me how you can use the xcode templates for pocode to create a new project wherever you want on the disk. i know we used to have xcode templates for this, but i just tried them and it seems to be hilariously broken.\r\n\r\ni'm not sure if the new project creator stuff covers this idea or not, but it would be great to have a similar ability with OF somehow.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/902","comments":2,"milestone":null,"number":902,"html_url":"https://github.com/openframeworks/openFrameworks/issues/902","assignee":null,"title":"Xcode templates should be fixed or removed","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-09T04:30:13Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3152323,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-08T21:50:23Z","body":"to draw a filled ofPolyline right now, you need to use beginshape/endshape. but i think a way of adding ofPolylines to an ofPath would be really good -- even a conversion from ofPolyline to ofPath might make sense. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/901","comments":0,"milestone":null,"number":901,"html_url":"https://github.com/openframeworks/openFrameworks/issues/901","assignee":null,"title":"easier filled ofPolyline, or easy ofPolyline->ofPath conversion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-08T21:50:23Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3148441,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-09T14:46:48Z","body":"Hi.\r\n\r\nI've been trying to load stream video ( mpeg2 .ts and hls .m3u8 ) using OF on MacOS 10.7.2.\r\n\r\nBoth cases causes error -2048 in the line below: ( l:89, ofQuickTimePlayer.cpp )\r\n\r\n```c++\r\nerr = NewMovieFromDataRef(&movie, newMovieAsyncOK,nil, urlDataRef, URLDataHandlerSubType);\r\n```\r\n\r\nLoading remote .mp4 works perect. Loading same streams in QuickTime player(v10.1) works without any troubles.\r\n\r\nSo, it seems the trouble happens just when no videofile size info returned from server.\r\n\r\nIs it a bug? Or I've missed smthng?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/897","comments":4,"milestone":null,"number":897,"html_url":"https://github.com/openframeworks/openFrameworks/issues/897","assignee":null,"title":"ofQuickTimePlayer.createMovieFromURL fails on streaming video","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-02-06T11:42:08Z","state":"open","user":{"url":"https://api.github.com/users/4pcbr","avatar_url":"https://secure.gravatar.com/avatar/52e8e29748826594f27b5c6c20a353e0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"52e8e29748826594f27b5c6c20a353e0","login":"4pcbr","id":247109},"id":3106705,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-05T17:11:59Z","body":"This concerns libraries included in addons in source form. According to [this issue](https://github.com/chrisoshea/ofxMidi/issues/8) reported by @danomatika, the makefile can only compile libraries' source code if they are in an addon's `/src` folder. This is in contradiction with @obviousjim's guide to addons' folder structure at http://ofxaddons.com/howto.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/896","comments":6,"milestone":null,"number":896,"html_url":"https://github.com/openframeworks/openFrameworks/issues/896","assignee":null,"title":"Makefile and ofxaddons.com guide don't agree regarding file structure","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"closed_at":null,"created_at":"2012-02-05T15:20:42Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3099567,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-10T02:47:13Z","body":"it needs to handle all these things:\r\n\r\n- meshes vs point clouds\r\n- different types of meshes (depending on the triangles)\r\n- indexed vs non-indexed geometry\r\n- colors, normals, texcoords\r\n- ascii vs binary\r\n- loading from externally created/defined ply files","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/880","comments":1,"milestone":null,"number":880,"html_url":"https://github.com/openframeworks/openFrameworks/issues/880","assignee":null,"title":"test ofMesh::load/save rigorously","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-01-25T16:55:09Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":2967700,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-03T19:40:34Z","body":"If you set the proper switches on the iphone sound stream you can get it to play over whatever is playing on the users ipod without muting it. There are a bunch of switches for this behavior detailed in kAudioSessionProperty_Mode.\r\n\r\nThese would need to be set before initing the audio session. The other issue is that there are like 15-20 flags you can set. Maybe just a slightly higher level setting on the stream so that these behaivors could be set in the users testapp.mm","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/878","comments":0,"milestone":null,"number":878,"html_url":"https://github.com/openframeworks/openFrameworks/issues/878","assignee":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"title":"add a switch to the iphone soundstream to support ambient","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-01-24T16:41:17Z","state":"open","user":{"url":"https://api.github.com/users/jonbro","avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"893ec14dc008e3774afe5841115920d6","login":"jonbro","id":1597},"id":2952993,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-15T18:33:39Z","body":"change pan range to -1..1, right now is 0..1","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/875","comments":2,"milestone":null,"number":875,"html_url":"https://github.com/openframeworks/openFrameworks/issues/875","assignee":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"title":"ofOpenALSoundPlayer pan -1..1","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-01-21T00:01:45Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":2918619,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=6 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4938'), ('content-length', '49322'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"93bd237d518e2c23c29e5e7b340262a8"'), ('date', 'Tue, 29 May 2012 19:27:14 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-03-10T05:09:49Z","body":" testImg.saveImage(ofxiPhoneGetDocumentsDirectory() + \"test.png\");\r\ncrashes the App and results in this error:\r\n\r\nProgram received signal: \"SIGARBT\".\r\n\r\nerror thrown in this line:\r\n\r\n FreeImage_Save(fif, bmp, fileName.c_str());","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/872","comments":1,"milestone":null,"number":872,"html_url":"https://github.com/openframeworks/openFrameworks/issues/872","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"saveImage crashes in iOS Simulator","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-01-17T21:51:17Z","state":"open","user":{"url":"https://api.github.com/users/khlrqa","gravatar_id":"dfa7e4582a04e784d50c750ae51d894f","login":"khlrqa","avatar_url":"https://secure.gravatar.com/avatar/dfa7e4582a04e784d50c750ae51d894f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":53301},"id":2875276,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-01-07T15:38:14Z","body":"Hi -\r\n\r\nwhen it comes down to multicast communication over udp, it's is important that the correct ip address of the local interface is set. Most computers nowadays have several interfaces (wired and wireless). Whereas ofxUDPManager::BindMcast uses INADDR_ANY as the local address, this might be wrong if you are not using the default interface. In my case, I connect the computers in a local wlan. The wlan device is not the primary device on my machine.\r\n\r\nTherefore I rewrote the BindMcast function adding a third argument pLocal, the local Ip address of the network interface.\r\n\r\n```c++\r\nbool ofxUDPManager::BindMcast(char *pMcast, unsigned short usPort, char *pLocal)\r\n```\r\nchanging the line: \r\n\r\n```c++\r\nmreq.imr_interface.s_addr = pLocal == \"\" ? INADDR_ANY: inet_addr(pLocal);\r\n```\r\n\r\nwhich makes a different header file as well:\r\n\r\n```c++\r\nbool BindMcast(char *pMcast, unsigned short usPort, char *pLocal = \"\");\r\n```\r\n\r\nAs you can see, the pLocal Adress is optional, if omitted, INADDR_ANY is used (backwards compatibility).\r\n\r\n\r\nNOTE:\r\n\r\nI've added the function:\r\n\r\n```c++\r\nchar* GetInterfaceAddr(const char* interface); //returns the IP of a specified interface\r\n```\r\n\r\nto the ofxUDPManager as well. This function returns the IP adress of an interface (e.g. en1 on a mac for the airport device). This is useful in dhcp networks, where your own address always changes. The function itself looks like:\r\n\r\n```c++\r\n//--------------------------------------------------------------------------------\r\nchar* ofxUDPManager::GetInterfaceAddr(const char* interface)\r\n{\r\n\tint fd;\r\n\tstruct ifreq ifr;\r\n\tfd = socket(AF_INET, SOCK_DGRAM, 0);\r\n\tifr.ifr_addr.sa_family = AF_INET;\r\n\tstrncpy(ifr.ifr_name, interface, IFNAMSIZ-1);\r\n\tioctl(fd, SIOCGIFADDR, &ifr);\r\n\tclose(fd);\r\n\treturn(inet_ntoa(((struct sockaddr_in *)&ifr.ifr_addr)->sin_addr));\r\n}\r\n```\r\n\r\nPlease not that for this function, additional headers have to be included in ofxUDPManager.h:\r\n\r\n```c++\r\n#include \r\n```\r\n\r\nIf you consider the changes useful, theres a copy of the two files downloadable here:\r\nhttp://dl.dropbox.com/u/394122/ofxUDPManager_uh_07012012.zip\r\n\r\nregards,\r\nUrs Hofer","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/866","comments":0,"milestone":null,"number":866,"html_url":"https://github.com/openframeworks/openFrameworks/issues/866","assignee":null,"title":"Multicast & UDP: Local IP required when dealing with multiple network interfaces","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-01-07T15:38:14Z","state":"open","user":{"url":"https://api.github.com/users/urshofer","gravatar_id":"0424af1c917883090f0edddf55a8f21b","login":"urshofer","avatar_url":"https://secure.gravatar.com/avatar/0424af1c917883090f0edddf55a8f21b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":116976},"id":2756440,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-03T19:40:34Z","body":"I've posted here\r\nhttp://forum.openframeworks.cc/index.php/topic,8467.new.html\r\n\r\nAt the moment when you do sample.unloadSound() on iOS the app crashes with\r\n\r\n[Switching to thread 13059]\r\n[Switching to thread 13059]\r\nProgram received signal: “EXC_BAD_ACCESS”.\r\nwarning: Unable to read symbols for /Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.2.1 (8C148)/Symbols/Developer/usr/lib/libXcodeDebuggerSupport.dylib (file not found).\r\n\r\n\r\nThis has been tested on the soundPlayerExample.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/863","comments":1,"milestone":null,"number":863,"html_url":"https://github.com/openframeworks/openFrameworks/issues/863","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"unloadSound on iOS crashes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-01-03T12:48:09Z","state":"open","user":{"url":"https://api.github.com/users/chrisoshea","gravatar_id":"62d775b0fa28bcde2d9d29405d059be3","login":"chrisoshea","avatar_url":"https://secure.gravatar.com/avatar/62d775b0fa28bcde2d9d29405d059be3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":104786},"id":2710048,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-03T19:38:16Z","body":"ofxsynth doesn't wont to compile because this line:\r\nsource->audioOut( working, numFrames, numChannels, tickCount ) in ofxSoundUnit.cpp is wrong.\r\nthe canddates are:\r\n\r\nvirtual void audioOut( float * output, int bufferSize, int nChannels, int deviceID, long unsigned long tickCount )\r\nvirtual void audioOut( float * output, int bufferSize, int nChannels)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/861","comments":10,"milestone":null,"number":861,"html_url":"https://github.com/openframeworks/openFrameworks/issues/861","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"ofxSynth semantic issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-01-02T11:14:47Z","state":"open","user":{"url":"https://api.github.com/users/viniciolindo","gravatar_id":"7aa1a7f9bf0b838c0d99886c3682ac5d","login":"viniciolindo","avatar_url":"https://secure.gravatar.com/avatar/7aa1a7f9bf0b838c0d99886c3682ac5d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1298679},"id":2700549,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-03T19:40:34Z","body":"ofPixels has getPixels(), but OF has no equivalent getSamples() for sound.\r\n\r\nright now the best solution seems to be using libsndfile with OF http://forum.openframeworks.cc/index.php/topic,3502.0.html\r\n\r\nbut i would love to see the audio architecture for OF mirror the visual architecture better. this means ofSoundPlayer acts like ofVideoPlayer, and we need to add an ofSound object that mirrors ofPixels. ofSound should always store samples in memory, while ofSoundPlayer can stream audio from disk like ofVideoPlayer.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/856","comments":1,"milestone":null,"number":856,"html_url":"https://github.com/openframeworks/openFrameworks/issues/856","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"allow access to individual sound samples","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2011-12-30T02:33:19Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2685556,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-29T04:43:24Z","body":"Today I came across this strange bug.\r\nAny OF app that needed to use the quicktime video grabber crashed at startup when the this was launched from xcode (eg. using build and run) yet it worked correctly when I opened the compiled app by doubleclicking it.\r\n\r\nThe error thrown was a EXCBADACCESS.\r\nthe function that threw this was ACWma1DecoderEntry\r\n\r\nJust some googling and I found that it had to do with Flip4Mac quicktime component.\r\nI uninstalled it and problem gone.\r\n\r\nThe strange thing is that I've had installed Flip4Mac since long ago, yet I updated iTunes a few days ago, that might have done this problem to arise.\r\n\r\nI don't know if this is actually an OF bug from its Quicktime implementation or what ever but it was really annoying getting across with it. Hope this helps others.\r\n\r\nCheers!","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/855","comments":0,"milestone":null,"number":855,"html_url":"https://github.com/openframeworks/openFrameworks/issues/855","assignee":null,"title":"video Grabber crashes with Flip4Mac","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-12-29T04:43:24Z","state":"open","user":{"url":"https://api.github.com/users/roymacdonald","gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","login":"roymacdonald","avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":974878},"id":2677212,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-23T14:13:39Z","body":"ofNode::resetTransform only resets orientation and position.\r\n\r\nI think setScale(1,1,1); needs to be called too in ofNode::resetTransform \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/851","comments":0,"milestone":null,"number":851,"html_url":"https://github.com/openframeworks/openFrameworks/issues/851","assignee":null,"title":"ofNode::resetTransform does not reset scale","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-12-23T14:13:39Z","state":"open","user":{"url":"https://api.github.com/users/companje","gravatar_id":"30a7e135fe77636519d74d129c60e156","login":"companje","avatar_url":"https://secure.gravatar.com/avatar/30a7e135fe77636519d74d129c60e156?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":156066},"id":2647508,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-22T14:31:37Z","body":"if I add an external lib to my addon, I should provide headers for all platforms to be cross-platfomr like OF but the Makefile doesn't have any switch to ignore certain files which are not needed on linux.\r\n\r\nthe problem is that the OF Makefile compiles everythin under libs/mylib/include\r\n\r\nsee here for more: http://forum.openframeworks.cc/index.php?topic=6486.new;topicseen#new","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/849","comments":0,"milestone":null,"number":849,"html_url":"https://github.com/openframeworks/openFrameworks/issues/849","assignee":null,"title":"skip files in an addon with Makefile","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-12-22T14:31:37Z","state":"open","user":{"url":"https://api.github.com/users/benben","gravatar_id":"614a4e493d7c353296519bba720e77c5","login":"benben","avatar_url":"https://secure.gravatar.com/avatar/614a4e493d7c353296519bba720e77c5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":124513},"id":2637694,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-19T22:35:27Z","body":"But it does!\r\n\r\nSomehow it's casting from float to ofPoint, maybe using the ofVec3f( float _x=0.f, float _y=0.f, float _z=0.f ) constructor.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/846","comments":10,"milestone":null,"number":846,"html_url":"https://github.com/openframeworks/openFrameworks/issues/846","assignee":null,"title":"ofCircle(float, float) should not work","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-12-14T00:42:31Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2546302,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-10T21:25:49Z","body":"Please add \"-Wreturn-type\" to the XCode project. I've noticed that it's a common mistake to add a return type but nothing is returned. Adding this option will at least show an error. I think Visual Studio shows an error already by default. You can add it like this in the project settings: http://img805.imageshack.us/img805/8745/screenshot20111210at102.png \r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/843","comments":0,"milestone":null,"number":843,"html_url":"https://github.com/openframeworks/openFrameworks/issues/843","assignee":null,"title":"Add return-type warning for XCode project files ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-12-10T21:25:49Z","state":"open","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":358809},"id":2512838,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-31T19:36:40Z","body":"Playing a movie crashes on exit on linux. Fedora 16 32-bit, latest git.\r\n\r\noutput:\r\n./moviePlayerExample\r\ndeleting video player\r\nterminate called after throwing an instance of 'Poco::SystemException'\r\n what(): System exception\r\nAborted (core dumped)\r\n\r\nbacktrace:\r\n#0 0x00110416 in __kernel_vsyscall ()\r\n#1 0x4623998f in raise () from /lib/libc.so.6\r\n#2 0x4623b2d5 in abort () from /lib/libc.so.6\r\n#3 0x46a9b74d in __gnu_cxx::__verbose_terminate_handler() ()\r\n from /usr/lib/libstdc++.so.6\r\n#4 0x46a994c4 in ?? () from /usr/lib/libstdc++.so.6\r\n#5 0x46a99500 in std::terminate() () from /usr/lib/libstdc++.so.6\r\n#6 0x46a9964f in __cxa_throw () from /usr/lib/libstdc++.so.6\r\n#7 0x08098bef in Poco::MutexImpl::lockImpl (this=0x814eb48)\r\n at /usr/include/Poco/Mutex_POSIX.h:82\r\n#8 0x08098d07 in Poco::FastMutex::lock (this=0x814eb48)\r\n at /usr/include/Poco/Mutex.h:257\r\n#9 0x0809907d in Poco::ScopedLock::ScopedLock (this=\r\n 0xbfffeabc, mutex=...) at /usr/include/Poco/ScopedLock.h:59\r\n#10 0x0809a340 in Poco::AbstractEvent, Poco::p_less > >, Poco::AbstractDelegate, Poco::FastMutex>::operator-=\r\n (this=0x814eb10, aDelegate=...) at /usr/include/Poco/AbstractEvent.h:195\r\n#11 0x080d40c5 in ofRemoveListener, ofEventArgs, ofGstUtils> (event=..., listener=0x82698e0, listenerMethod=\r\n (void (ofGstUtils::*)(ofGstUtils * const, ofEventArgs &)) 0x80d27b4 ) at ../../../openFrameworks/events/ofEventUtils.h:87\r\n#12 0x080d25be in ofGstUtils::close (this=0x82698e0)\r\nat ../../../openFrameworks/video/ofGstUtils.cpp:353\r\n#13 0x080d175e in ofGstUtils::~ofGstUtils (this=0x82698e0, \r\n __in_chrg=)\r\n at ../../../openFrameworks/video/ofGstUtils.cpp:85\r\n#14 0x080d32c4 in ofGstVideoUtils::~ofGstVideoUtils (this=0x82698d8, \r\n __in_chrg=)\r\n at ../../../openFrameworks/video/ofGstUtils.cpp:536\r\n#15 0x080d06ff in ofGstVideoPlayer::~ofGstVideoPlayer (this=0x82698b8, \r\n __in_chrg=, __vtt_parm=)\r\n at ../../../openFrameworks/video/ofGstVideoPlayer.cpp:19\r\n#16 0x080d07d9 in ofGstVideoPlayer::~ofGstVideoPlayer (this=0x82698b8, \r\n __in_chrg=, __vtt_parm=)\r\n at ../../../openFrameworks/video/ofGstVideoPlayer.cpp:21\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/840","comments":3,"milestone":null,"number":840,"html_url":"https://github.com/openframeworks/openFrameworks/issues/840","assignee":null,"title":"ofGstVideoPlayer crash on exit","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2011-12-08T11:53:55Z","state":"open","user":{"url":"https://api.github.com/users/gaborpapp","gravatar_id":"9cb0f8a67c238d2aa91d9a7957b9ef4b","login":"gaborpapp","avatar_url":"https://secure.gravatar.com/avatar/9cb0f8a67c238d2aa91d9a7957b9ef4b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":203532},"id":2486705,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-12T12:30:53Z","body":"right now the only way to change the type of pixels is to go through ofImage and set image type there.\r\n\r\nseems like this should be moved into ofPixels.\r\n\r\nthoughts?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/838","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":838,"html_url":"https://github.com/openframeworks/openFrameworks/issues/838","assignee":{"url":"https://api.github.com/users/obviousjim","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","login":"obviousjim","avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":321434},"title":"ofPixels has no setImageType","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-12-07T16:30:59Z","state":"open","user":{"url":"https://api.github.com/users/obviousjim","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","login":"obviousjim","avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":321434},"id":2476561,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-05T21:44:08Z","body":"I made a small example which uses the Wikipedia xml api to make queries which are then parsed by an ofXmlSettings object. The problem is Wikipedia complains there is no User-Agent string and dosen't return any data, while threatening to block by IP.\r\n\r\nThe fix was as simple as adding this to ofURLFileLoader.cpp line 144:\r\n
    \r\n\t\tHTTPRequest req(HTTPRequest::HTTP_GET, path, HTTPMessage::HTTP_1_1);\r\n        \treq.add(\"User-Agent\", \"Mozilla/5.0 (iPad; U; CPU OS 3_2_1 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Mobile/7B405\");\r\n
    \r\n\r\nIt uses the iOS safari user agent string. I think the best fix is to expose the HTTPRequest and HTTPResponse Poco objects so that, like in the ofxHttpUtils, you could add manually the string/value to the request before sending it. I don't think it should be set ti a default within the class. Also, it would be awesome to be able to add data into and pull data out of the requests. This is a great wrapper, especially the threading, I'd just like to have the full req/response control ... perhaps provide a method to add Poco::HttpRequests and recieve Poco::HttpResponses which could be set as references inside the ofxHttpRequest/ofxHttpResponse objects?\r\n\r\nOn another note, ofURLFileLoader seems like a rather specific name for a regular HTTP action. What's wrong with ofHttpSession etc since I've found it useful for more then just","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/837","comments":0,"milestone":null,"number":837,"html_url":"https://github.com/openframeworks/openFrameworks/issues/837","assignee":null,"title":"ofURLFileLoader dosen't set HTTP User-Agent string and there is no way to set it","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-12-05T21:44:08Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":2455011,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-04T00:08:35Z","body":"Dummy issue to ensure that the 0073 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/836","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","closed_issues":0,"number":6,"title":"0073 Release","due_on":"2012-07-30T07:00:00Z","open_issues":5,"created_at":"2011-12-03T15:37:49Z","state":"open","description":"","id":62090},"number":836,"html_url":"https://github.com/openframeworks/openFrameworks/issues/836","assignee":null,"title":"0073 Release tracking issue","labels":[],"closed_at":null,"created_at":"2011-12-04T00:08:35Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":2439965,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T09:03:22Z","body":"Not sure if is an issue or im doing wrong.\r\n\r\nIm trying to implement dragEvent() in an external class in windoes 7. I'm getting neither an error nor a response nor result. While debugging dragEvent is not called at all. The same code works perfectly on osx. \r\n\r\nhere's some:\r\n\r\ndummy.h\r\n\r\n\t#include \"ofMain.h\"\r\n\r\n\tclass dummy\r\n\t{\r\n\t\tpublic:\r\n\t\t\tdummy();\r\n\t\t\t~dummy();\r\n\t\t\t\t\t\r\n\t\t\tvoid config();\r\n\t\t\tvoid dragEvent(ofDragInfo &info);\r\n\t\t\t\r\n\t\tprivate:\r\n\t\tprotected:\r\n\t\t\r\n\t};\r\n\r\ndummy.cpp\r\n\r\n\t#include \"dummy.h\"\r\n\r\n\tdummy::dummy(){}\r\n\r\n\tdummy::~dummy(){}\r\n\r\n\tvoid dummy::config(){\r\n\t\tofAddListener(ofEvents.fileDragEvent, this, &dummy::dragEvent);\r\n\t}\r\n\r\n\tvoid dummy::dragEvent(ofDragInfo &info){\r\n\t\tfor( int i = 0; i < info.files.size() ; i++){\r\n\t\t\tcout << \"path: \" << info.files[i] << endl;\r\n\t\t}\r\n\t}\r\n\r\n\r\ntesApp.h\r\n\r\n\t#include \"ofMain.h\"\r\n\t#include \"dummy.h\"\r\n\r\n\r\n\tclass testApp : public ofBaseApp{\r\n\r\n\t\tpublic:\r\n\t\t\tvoid setup();\r\n\t\t\tvoid update();\r\n\t\t\tvoid draw();\r\n\r\n\t\t\tvoid keyPressed (int key);\r\n\t\t\tvoid keyReleased(int key);\r\n\t\t\tvoid mouseMoved(int x, int y );\r\n\t\t\tvoid mouseDragged(int x, int y, int button);\r\n\t\t\tvoid mousePressed(int x, int y, int button);\r\n\t\t\tvoid mouseReleased(int x, int y, int button);\r\n\t\t\tvoid windowResized(int w, int h);\r\n\t\t\tvoid dragEvent(ofDragInfo dragInfo);\r\n\t\t\tvoid gotMessage(ofMessage msg);\r\n\t\t\t\r\n\t\t\tdummy d;\r\n\r\ntestApp.cpp\r\n\r\n\t#include \"testApp.h\"\r\n\r\n\tvoid testApp::setup(){\r\n\t\td.config();\r\n\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/831","comments":0,"milestone":null,"number":831,"html_url":"https://github.com/openframeworks/openFrameworks/issues/831","assignee":null,"title":"dragEvent() in new class not working in win7","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-12-03T08:51:42Z","state":"open","user":{"url":"https://api.github.com/users/decolector","gravatar_id":"7165a50ea8df968de57ffb5a27ba6ebc","login":"decolector","avatar_url":"https://secure.gravatar.com/avatar/7165a50ea8df968de57ffb5a27ba6ebc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":390056},"id":2436532,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-02T16:28:49Z","body":"Dummy issue to ensure that the 0072 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/829","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":829,"html_url":"https://github.com/openframeworks/openFrameworks/issues/829","assignee":null,"title":"0072 Release tracking issue","labels":[],"closed_at":null,"created_at":"2011-12-02T16:28:49Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":2429871,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-11-29T17:54:48Z","body":"Loading Futura at font size 10 and simplify=0 yields oversimplified chars in a pdf render. I'm not sure if there's a way to fix this if the fonts are small.\r\n\r\nA workaround is to load the font at a larger size, say 40, then scale down by 0.25 when drawing. \r\n\r\nThe font below is a zoom of the pdf export using font size 10. The font above is Futura at font size 144 by comparison.\r\n\r\n![oversimplified fonts](http://farm8.staticflickr.com/7161/6423768819_9129b6d608_o.jpg)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/825","comments":2,"milestone":null,"number":825,"html_url":"https://github.com/openframeworks/openFrameworks/issues/825","assignee":null,"title":"small font sizes yield oversimplified glyph shapes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-11-29T08:26:16Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":2380571,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-19T07:01:47Z","body":"If I use loadScreenData with anti-Aliasing turned on in the program's startup like this:\r\n\r\nofAppiPhoneWindow * iOSWindow = new ofAppiPhoneWindow();\r\niOSWindow->enableAntiAliasing(4);\r\n\r\nthen the texture will load in nothing but solid black. If I bypass this anti-aliasing, it works fine. I also cannot properly populate a texture using loadScreenData in a landscape orientation. Changing to Portrait orientation in the update loop, and then back to landscape after the grab fixes it.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/822","comments":5,"milestone":null,"number":822,"html_url":"https://github.com/openframeworks/openFrameworks/issues/822","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"iOS - ofTexture.loadScreenData issue when antiAliasing is on","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-11-28T06:48:27Z","state":"open","user":{"url":"https://api.github.com/users/momo-the-monster","gravatar_id":"31f8a3ef87e828b70d2a441c8dae97d8","login":"momo-the-monster","avatar_url":"https://secure.gravatar.com/avatar/31f8a3ef87e828b70d2a441c8dae97d8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":737888},"id":2364541,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-11-28T18:48:58Z","body":"It'd be nice if ofRectangle used a ofVec2f or ofVec3f internally so you could do the something like:\r\n\r\n
    \r\nofRectangle myRect;\r\nofVec2f vel(-1, 2);\r\nmyRect.pos += vel;\r\n
    \r\n\r\nNow I'm not saying drop the x and y member vars, but link them to the ofVec internals thorugh either a union or reference. A reference would be easy through the constructor:\r\n\r\n
    \r\nclass ofRectangle {\r\n\r\n   public:\r\n\r\n     float &x, &y;\r\n     ofVec2f pos;\r\n     ....\r\n\r\n\r\nofRectangle::ofRectangle() : x(pos.x), y(pos.y) {\r\n\r\n...\r\n
    \r\n\r\nThis way we get the best of both worlds without broken code ...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/821","comments":3,"milestone":null,"number":821,"html_url":"https://github.com/openframeworks/openFrameworks/issues/821","assignee":null,"title":"suggest: ofRectangle internal ofVec","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-11-26T20:19:31Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":2356801,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-01T18:13:35Z","body":"i'm experiencing troubles in windows when i use a system file-opening dialog from openframeworks. after using it Data root path seems to get pointing to a wrong location, causing troubles e.g. true type fonts not loading.\r\nif I use the open-file dialog once again to open a file in root folder of the application, then the data path is reset correctly.\r\nusing ofSetDataPathRoot() doens't seem to fix the issue, or maybe I'm not using it correctly.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/819","comments":2,"milestone":null,"number":819,"html_url":"https://github.com/openframeworks/openFrameworks/issues/819","assignee":null,"title":"datapath messed in windows after using file open dialog","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-11-22T10:50:13Z","state":"open","user":{"url":"https://api.github.com/users/hvfrancesco","gravatar_id":"e02a8a3953de9d5d9ec1c7aa8d43eca4","login":"hvfrancesco","avatar_url":"https://secure.gravatar.com/avatar/e02a8a3953de9d5d9ec1c7aa8d43eca4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":614123},"id":2316595,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-02T15:19:58Z","body":"Had a talk with Theo about this. I think that it would be really nice if it were possible to #define/ pre-process macro if you want to exclude modules like ofVideoPlayer/ofSoundplayer in your app. \r\n\r\nThis would be super helpful for a couple of reasons.\r\n\r\nplugins that are not able to use the modules can exclude them without hacking the core.\r\nif you want to reduce the final size of you app and its not using something like ofVideoPlayer you dont need to add it.\r\n\r\nwhat do you think...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/818","comments":1,"milestone":null,"number":818,"html_url":"https://github.com/openframeworks/openFrameworks/issues/818","assignee":null,"title":"#defines for modules ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-11-21T16:45:51Z","state":"open","user":{"url":"https://api.github.com/users/vanderlin","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":149997},"id":2306518,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-11-17T15:17:10Z","body":"Hello, \r\nRunning on MacOS 10.7 with XCode 4.1 I could not compile any of the examples in devApps, except for _DeployExamples. \r\nThe first error always encountered is: \r\n\r\n../../../libs/openFrameworks/utils/ofConstants.h:101:22: error: GL/glew.h: No such file or directory\r\n\r\nI tried both changing the paths of the include part in the code and dragging the GL folder that contains glew.h separately in the project, but neither worked. \r\n\r\nHelp please... \r\n\r\nThanks, \r\n\r\nIannis Zannos","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/815","comments":3,"milestone":null,"number":815,"html_url":"https://github.com/openframeworks/openFrameworks/issues/815","assignee":null,"title":"Examples in devApps folder do not compile. Missing glew.h","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-11-17T13:45:47Z","state":"open","user":{"url":"https://api.github.com/users/iani","gravatar_id":"8200f2533f23c9daaff63c4dba6f4819","login":"iani","avatar_url":"https://secure.gravatar.com/avatar/8200f2533f23c9daaff63c4dba6f4819?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":181956},"id":2268829,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T16:30:18Z","body":"Hello, \r\nIt took me more than 4 hours to get openFrameworks to compile deployExamples on MacOS X 10.7.2 with XCode 4.1, because of having to figure out two things; \r\n\r\n1. Need to change SDK for the deployExamples project definitions to 10.6\r\n2. Need to choose deployExamples in the build menu on the toolbar of the project window. \r\n\r\nPerhaps this info should be added to the readme.txt file of the present master branch in order to spare other people the hassle? \r\n\r\nI suggest the following addition: \r\n=====\r\nTo deploy openFrameworks examples from the files cloned via the present github repository, you should build and run the project: \r\napps/devApps/_DeployExamples/deployExamples.xcodeproj\r\n\r\nTo successfully compile in Lion (MacOS X 10.7) in XCode you should select in the project file list of XCode both the target deployExamples from the top level of the file hierarchy and the project openFrameworksLib.xcodeproj from inside the openFrameworks folder, then find the project definition, and change the SDK to MacOS X 10.6. You should do the same for the targets of those two items. \r\n\r\nImportant: Before clicking the Build and Go, or the Run button, make sure that you choose the deployExamples project in the menu on the toolbar of the project window. (Otherwise if you leave openFrameworks as selected project and push Run or Build and Run, no application will be created or run). \r\n\r\n\r\n=====\r\nHopefully this helps. \r\nCheers, \r\nIannis Zannos","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/814","comments":2,"milestone":null,"number":814,"html_url":"https://github.com/openframeworks/openFrameworks/issues/814","assignee":null,"title":"Suggest adding some info about Lion to readme.txt","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-11-17T11:48:32Z","state":"open","user":{"url":"https://api.github.com/users/iani","gravatar_id":"8200f2533f23c9daaff63c4dba6f4819","login":"iani","avatar_url":"https://secure.gravatar.com/avatar/8200f2533f23c9daaff63c4dba6f4819?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":181956},"id":2267854,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-11-16T04:46:48Z","body":"I'm trying this simple ofFbo example on OF 007, the system is Ubuntu Lucid, with an Intel 945 GPU.\r\n\r\n]//--------------------------------------------------------------\r\nvoid testApp::setup(){\r\n fbo.allocate(500, 500, GL_RGBA);\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::update(){\r\n\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::draw(){\r\n\r\n fbo.begin();\r\n ofClear(255, 255, 255, 255);\r\n ofSetColor(255, 0, 0);\r\n ofCircle(mouseX, mouseY, 100);\r\n fbo.end();\r\n\r\n ofSetColor(255);\r\n fbo.draw(0, 0);\r\n}\r\n\r\nI got a segfault in i915 dri, and any test using ofFbo leads to same results.\r\n\r\n\r\n#0 0x1bd3c36 _mesa_FramebufferRenderbufferEXT() (/usr/lib/dri/i915_dri.so:??)\r\n#1 0x80cc56a ofFbo::createAndAttachRenderbuffer(this=0x85b28e8, internalFormat=34041, attachmentPoint=33306) (../../../openFrameworks/gl/ofFbo.cpp:489)\r\n#2 0x80cc352 ofFbo::allocate(this=0x85b28e8, _settings=...) (../../../openFrameworks/gl/ofFbo.cpp:388)\r\n#3 0x80cc269 ofFbo::allocate(this=0x85b28e8, width=500, height=500, internalformat=6408, numSamples=0) (../../../openFrameworks/gl/ofFbo.cpp:363)\r\n#4 0x80562ec testApp::setup(this=0x85b28d8) (src/testApp.cpp:5)\r\n#5 0x8059ca6 ofNotifySetup() (../../../openFrameworks/events/ofEvents.cpp:73)\r\n#6 0x8056a23 ofAppGlutWindow::runAppViaInfiniteLoop(this=0xbffff2f8, appPtr=0x85b28d8) (../../../openFrameworks/app/ofAppGlutWindow.cpp:317)\r\n#7 0x80584cc ofRunApp(OFSA=0x85b28d8) (../../../openFrameworks/app/ofAppRunner.cpp:82)\r\n#8 0x8055bfc main() (src/main.cpp:14)\r\n\r\nany idea about what I should try or where the problem could be? has anyone experienced similar problems?\r\n\r\nthanks in advance to all","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/811","comments":1,"milestone":null,"number":811,"html_url":"https://github.com/openframeworks/openFrameworks/issues/811","assignee":null,"title":"ofFBO causes segfault on Linux Ubuntu Lucid with i945 GPU","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-11-13T20:49:26Z","state":"open","user":{"url":"https://api.github.com/users/hvfrancesco","gravatar_id":"e02a8a3953de9d5d9ec1c7aa8d43eca4","login":"hvfrancesco","avatar_url":"https://secure.gravatar.com/avatar/e02a8a3953de9d5d9ec1c7aa8d43eca4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":614123},"id":2223158,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-09T18:51:38Z","body":"Julapy and I were discussing how to do this on the forum http://forum.openframeworks.cc/index.php?topic=7852 and I think adding a flag to allocate for mipmaps to ofTexture and ofFbo would come in handy for some people.\r\n\r\n```c\r\nvoid ofTexture::allocate(int w, int h, int internalGlDataType, bool bUseARBExtention, bool generateMipmaps = false) \r\n{\r\n if( generateMipmaps )\r\n {\r\n glTexParameterf( texData.textureTarget, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_NEAREST );\r\n glTexParameterf( texData.textureTarget, GL_TEXTURE_MAG_FILTER, GL_LINEAR );\r\n glTexParameterf( texData.textureTarget, GL_GENERATE_MIPMAP, GL_TRUE );\r\n }\r\n```\r\n\r\nand in ofFbo\r\n\r\n```c\r\nstruct Settings {\r\n bool generateMipMaps; // or int\r\n}\r\n```\r\n\r\nI'd be happy to do this & submit a pull request too.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/810","comments":2,"milestone":null,"number":810,"html_url":"https://github.com/openframeworks/openFrameworks/issues/810","assignee":null,"title":"Add flag for mipmapping in ofTexture/ofFbo","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-11-11T07:34:53Z","state":"open","user":{"url":"https://api.github.com/users/joshuajnoble","gravatar_id":"10960ba0f305803a1cdc7cd6188d643b","login":"joshuajnoble","avatar_url":"https://secure.gravatar.com/avatar/10960ba0f305803a1cdc7cd6188d643b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":237423},"id":2206980,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=7 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4937'), ('content-length', '49276'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"362300e7c4c0fc8f170b2c345084dfad"'), ('date', 'Tue, 29 May 2012 19:27:16 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-12-03T23:58:48Z","body":"right now it's inside ofMath.h","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/800","comments":3,"milestone":null,"number":800,"html_url":"https://github.com/openframeworks/openFrameworks/issues/800","assignee":null,"title":"ofInsidePoly should be a static method of ofPolyline","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-30T04:16:14Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2089523,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-05T21:31:07Z","body":"ofRect very commonly has a little chunk missing from one corner.\r\n\r\nthere is also a discrepancy between the filled and outline rectangles. it's not clear whether the outline rect should be within the bounds of the filled rect, or enclosing the filled rect, and in practice it can be a little of both.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/798","comments":2,"milestone":null,"number":798,"html_url":"https://github.com/openframeworks/openFrameworks/issues/798","assignee":null,"title":"ofRect isn't quite rectangular","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-10-29T06:38:43Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2086039,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-29T02:37:28Z","body":"we're working on some ideas regarding procedural animation and posing:\r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,7714.new.html#new\r\n\r\nwhich should be more powerful than playing back manual animations.\r\n\r\nintegrating it into the core would be ideal, but we're still trying to understand how it works.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/797","comments":0,"milestone":null,"number":797,"html_url":"https://github.com/openframeworks/openFrameworks/issues/797","assignee":null,"title":"procedural posing of bones in ofxAssimpModelLoader","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-29T02:37:28Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2085543,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T03:48:47Z","body":"this fails to display any text:\r\n\r\n\tofBackground(0);\r\n\tofSetColor(255, 254);\r\n\tofDrawBitmapString(\"this text is not displayed\", 10, 20);\r\n\r\nthis is because line 448 of ofBitmapFont.h reads:\r\n\r\n\tglAlphaFunc(GL_EQUAL, 1.0f);\r\n\r\nwhich should be changed to:\r\n\r\n\tglAlphaFunc(GL_GREATER, 0);","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/795","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":795,"html_url":"https://github.com/openframeworks/openFrameworks/issues/795","assignee":null,"title":"ofDrawBitmapString does not work with alpha","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-27T09:50:07Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2066090,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-25T23:39:09Z","body":"\r\nThis should be user adjustable / on / off. it's sort of a drag to be using easy cam and trigger double clicks are you are interacting with a gui, etc.... \r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/793","comments":1,"milestone":null,"number":793,"html_url":"https://github.com/openframeworks/openFrameworks/issues/793","assignee":null,"title":"easyCam -- ability to disable doubleClick reset","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-25T23:36:40Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":2051692,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T23:53:12Z","body":"when drawing certain shapes i get crashes, debugger claims a tessellator issue pointing to \r\n\"if (!tessTesselate(cacheTess, polyWindingMode, TESS_POLYGONS, 3, 3, 0)){\" in \"performTessellation\" function in file ofTessellator.cpp ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/789","comments":1,"milestone":null,"number":789,"html_url":"https://github.com/openframeworks/openFrameworks/issues/789","assignee":null,"title":"crashes with tessellator","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-10-21T14:49:12Z","state":"open","user":{"url":"https://api.github.com/users/ruim","gravatar_id":"18875575931764c674b5fc64ae8b7274","login":"ruim","avatar_url":"https://secure.gravatar.com/avatar/18875575931764c674b5fc64ae8b7274?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480525},"id":2016194,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-19T22:39:37Z","body":"would be useful as well. Perhaps an ofxMeshUtils would be in order for upcoming versions...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/787","comments":0,"milestone":null,"number":787,"html_url":"https://github.com/openframeworks/openFrameworks/issues/787","assignee":null,"title":"half edge mesh structure extension of ofMesh","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-19T22:39:37Z","state":"open","user":{"url":"https://api.github.com/users/kpasko","gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","login":"kpasko","avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":167271},"id":1999520,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-11-04T21:59:22Z","body":"would be quite useful","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/786","comments":1,"milestone":null,"number":786,"html_url":"https://github.com/openframeworks/openFrameworks/issues/786","assignee":null,"title":"axis aligned bounding box tree for ofMesh","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-19T22:38:35Z","state":"open","user":{"url":"https://api.github.com/users/kpasko","gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","login":"kpasko","avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":167271},"id":1999513,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-27T17:58:58Z","body":"I am loading in boujou camera data (translation and euler rotation), and I get really fine results when I do: \r\n\r\nglTranslatef(tx,ty,tz);\r\nglRotatef(rx, 1,0,0);\r\nglRotatef(ry, 0,1,0);\r\nglRotatef(rz, 0,0,1);\r\n\r\nbut when I create an ofCamera, and do: \r\n\r\nsetPosition(ofPoint(tx, ty, tz));\r\nsetOrientation(ofPoint(rx, ry, rz));\r\n\r\nI get strange results. I am wondering about ofNodes \"setOrientation\" and if it's really right in that the order is switched:\r\n\r\nsetOrientation(ofQuaternion(eulerAngles.y, ofVec3f(0, 1, 0), eulerAngles.x, ofVec3f(1, 0, 0), eulerAngles.z, ofVec3f(0, 0, 1)));\r\n\r\nalso, maybe I am mis interpreting what \"set orientation\" does. But I can't seem to get similar results with ofCam, even if I do, for example, \r\n\r\ncam.setPosition( tx,ty,tz);\r\ncam.rotate( rx, 1,0,0);\r\ncam.rotate( ry, 0,1,0);\r\ncam.rotate( rz, 0,0,1);\r\n\r\nI still don't get the same results as when I do it via opengl. This seems like a bug maybe with how ofNode handles rotation?\r\n\r\n(note , I am calling resetTranform() on the camera, so it's not an accumulation of rotations.... it's just that I can't seem to find a way to get ofCam to rotate in the same way as opengl commands). \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/785","comments":2,"milestone":null,"number":785,"html_url":"https://github.com/openframeworks/openFrameworks/issues/785","assignee":null,"title":"ofCamera setOrientation gives odd results","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-10-19T11:16:42Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":1992818,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-09T11:46:35Z","body":"It seems to be happening pretty far in, if you put debug statements in touchesMoved in EAGL view, you will see that y is set to the x value of the touch.\r\n\r\nThis does not occur in debug mode, or in the simulator, and it has to be done with xcode4. I am running the newest ios5 beta as well.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/778","comments":2,"milestone":null,"number":778,"html_url":"https://github.com/openframeworks/openFrameworks/issues/778","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"running an iphone retina app in release mode causes touch.x == touch.y","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-10-18T11:26:26Z","state":"open","user":{"url":"https://api.github.com/users/jonbro","gravatar_id":"893ec14dc008e3774afe5841115920d6","login":"jonbro","avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1597},"id":1938472,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-16T18:30:08Z","body":"\r\nat the moment, the ofCamera draw calls ofNode, which does't really give you a clear indication of which way the camera is looking. even that is weird, because a camera looks on -z, and the node draw draws a line on positive z. \r\n\r\nI suggest we add something that draws a bit of a frustum (ie, fov, etc) and gives you a feeling about orientation. \r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/774","comments":0,"milestone":null,"number":774,"html_url":"https://github.com/openframeworks/openFrameworks/issues/774","assignee":null,"title":"ofCamera draw() should be more indicative of where the camera is facing. ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-16T18:30:08Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":1922704,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-12T15:09:29Z","body":"Currently we have:\r\n\tvirtual void draw(float x,float y)=0;\r\n\tvirtual void draw(float x,float y,float w, float h)=0;\r\n\r\n\tvirtual float getHeight()=0;\r\n\tvirtual float getWidth()=0;\r\n\r\nSince we're insisting that the user define a getWidth and getHeight, can I ask why we don't set the default of draw(x,y) to be\r\n virtual void draw(float x,float y) {draw(x, y, getWidth(), getHeight()) };\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/772","comments":0,"milestone":null,"number":772,"html_url":"https://github.com/openframeworks/openFrameworks/issues/772","assignee":null,"title":"ofBaseDraws draw(x, y) default","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-10-12T15:08:55Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":1888302,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T15:11:08Z","body":"Greetings,\r\n\r\nI downloaded OF v.007 on my laptop running Vista SP2. I compiled and ran some of the example apps like imageLoader example using VS2010. \r\n\r\nTextures seem to be broken. Images appear as white slabs.\r\n\r\nI tracked it down and found that disabling ArbTex, with ofDisableArbTex(), will get the textures working again. \r\n\r\nUsing ArbTex worked fine in OF v0.62 on the same machine.\r\n\r\nLaptop:\r\nHP Pavilion dv600 Notebook PC\r\nManufacturer: Hewlett-Packard\r\nOperating System: Windows Vista Home Premium, Service Pack 2 (6.0.6002)\r\nPhysical Memory:\t 2037 MB\r\nProcessor: Intel Core2 Duo PU T5250 @ 1.5 GHz, 1.5 GHz\r\n\r\nCompiler:\r\nMicrosoft Visual Studio 2010\r\nInstalled Version: Professional\r\nMicrosoft Visual C++ 2010\r\n\r\nGraphics:\r\nGraphics: Intel Graphics Media Accelerator Driver for Mobile\r\nGraphics: Driver Version: 7.14.10.1244\r\nDirectX Version:\t10.0\r\nOpenGL Version 1.5\r\n\r\nHere's a full report of OpenGL info from GLview:\r\n\r\n\r\nRenderer: Intel 965/963 Graphics Media Accelerator\r\nVendor: Intel\r\nMemory: 448 MB\r\nVersion: 1.5.0 - Build 7.14.10.1244\r\nShading language version: N/A\r\n\r\n\r\nMax texture size: 2048 x 2048\r\nMax texture coordinates: 8\r\nMax vertex texture image units: 0\r\nMax texture image units: 16\r\nMax geometry texture units: 0\r\nMax anisotropic filtering value: 2\r\nMax number of light sources: 16\r\nMax viewport size: 2048 x 2048\r\nMax uniform vertex components: 0\r\nMax uniform fragment components: 0\r\nMax geometry uniform components: 0\r\nMax varying floats: 0\r\nMax samples: 0\r\nMax draw buffers: 0\r\n\r\n\r\nExtensions: 56\r\n\r\nGL_3DFX_texture_compression_FXT1\r\nGL_ARB_depth_texture\r\nGL_ARB_fragment_program\r\nGL_ARB_multitexture\r\nGL_ARB_occlusion_query\r\nGL_ARB_point_parameters\r\nGL_ARB_shadow\r\nGL_ARB_texture_border_clamp\r\nGL_ARB_texture_compression\r\nGL_ARB_texture_cube_map\r\nGL_ARB_texture_env_add\r\nGL_ARB_texture_env_combine\r\nGL_ARB_texture_env_crossbar\r\nGL_ARB_texture_env_dot3\r\nGL_ARB_transpose_matrix\r\nGL_ARB_vertex_buffer_object\r\nGL_ARB_vertex_program\r\nGL_ARB_window_pos\r\nGL_EXT_abgr\r\nGL_EXT_bgra\r\nGL_EXT_blend_color\r\nGL_EXT_blend_func_separate\r\nGL_EXT_blend_minmax\r\nGL_EXT_blend_subtract\r\nGL_EXT_clip_volume_hint\r\nGL_EXT_compiled_vertex_array\r\nGL_EXT_draw_range_elements\r\nGL_EXT_fog_coord\r\nGL_EXT_multi_draw_arrays\r\nGL_EXT_packed_pixels\r\nGL_EXT_rescale_normal\r\nGL_EXT_secondary_color\r\nGL_EXT_separate_specular_color\r\nGL_EXT_shadow_funcs\r\nGL_EXT_stencil_two_side\r\nGL_EXT_stencil_wrap\r\nGL_EXT_texture3D\r\nGL_EXT_texture_compression_s3tc\r\nGL_EXT_texture_env_add\r\nGL_EXT_texture_env_combine\r\nGL_EXT_texture_filter_anisotropic\r\nGL_EXT_texture_lod_bias\r\nGL_IBM_texture_mirrored_repeat\r\nGL_NV_blend_square\r\nGL_NV_texgen_reflection\r\nGL_SGIS_generate_mipmap\r\nGL_SGIS_texture_edge_clamp\r\nGL_SGIS_texture_lod\r\nGL_WIN_swap_hint\r\nWGL_ARB_buffer_region\r\nWGL_ARB_extensions_string\r\nWGL_ARB_make_current_read\r\nWGL_ARB_pbuffer\r\nWGL_ARB_pixel_format\r\nWGL_EXT_extensions_string\r\nWGL_EXT_swap_control\r\n\r\nCore features\r\nv1.1 (100 % - 7/7)\r\nv1.2 (100 % - 8/8)\r\nv1.3 (100 % - 9/9)\r\nv1.4 (100 % - 15/15)\r\nv1.5 (100 % - 3/3)\r\nv2.0 (10 % - 1/10)\r\nv2.1 (0 % - 0/3)\r\nv3.0 (0 % - 0/23)\r\nv3.1 (0 % - 0/8)\r\nv3.2 (0 % - 0/10)\r\nv3.3 (0 % - 0/10)\r\nv4.0 (0 % - 0/14)\r\nv4.1 (0 % - 0/7)\r\nv4.2 (0 % - 0/12)\r\n\r\nOpenGL driver version check (Current: 1.5.0 - Build 7.14.10.1244, Latest known: ):\r\nLatest version of display drivers found\r\nAccording the database, you are running the latest display drivers for your video card.\r\n\r\nNo ICD registry entry\r\nThe current OpenGL driver doesn't expose the SOFTWARE/Microsoft/Windows (NT)/CurrentVersion/OpenGLDrivers registry entry. Unable to detect the driver version, driver revision name and filename.\r\n\r\nCompiled vertex array support\r\nThis feature improves OpenGL performance by using video memory to cache transformed vertices.\r\n\r\nMultitexture support\r\nThis feature accelerates complex rendering such as lightmaps or environment mapping.\r\n\r\nSecondary color support\r\nThis feature provides an alternate method of coloring specular highlights on polygons.\r\n\r\nS3TC compression support\r\nThis feature improves texture mapping performance in some applications by using lossy compression.\r\n\r\nTexture edge clamp support\r\nThis feature improves texturing quality by adding clamping control to edge texel filtering.\r\n\r\nVertex program support\r\nThis feature enables a wide variety of effects via flexible vertex programming (equivalent to DX8 Vertex Shader.)\r\n\r\nFragment program support\r\nThis feature enables a wide variety of effects via per pixel programming (equivalent to DX9 Pixel Shader.)\r\n\r\nTexture anisotropic filtering support\r\nThis feature improves the quality of texture mapping on oblique surfaces.\r\n\r\nOcclusion test support\r\nThis feature provides hardware accelerated culling for objects.\r\n\r\nNo OpenGL Shading Language support\r\nThis may break compatibility for applications using per pixel shading.\r\n\r\nNo Frame buffer object support\r\nThis may break compatibility for applications using render to texture functions.\r\n\r\nDisabling ArbTex will work for me, but I thought others might have the same problem with 007.\r\n\r\n- Rob","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/771","comments":3,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":771,"html_url":"https://github.com/openframeworks/openFrameworks/issues/771","assignee":null,"title":"Textures Didn't Work in 007 on my Laptop, Had to Disable ArbTex","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2011-10-11T13:02:28Z","state":"open","user":{"url":"https://api.github.com/users/robgonsalves","gravatar_id":"7c2e18ac17a0b907dbac36aaa6a9ec0f","login":"robgonsalves","avatar_url":"https://secure.gravatar.com/avatar/7c2e18ac17a0b907dbac36aaa6a9ec0f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1119357},"id":1874373,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-24T15:27:29Z","body":"When integrating openFrameworks into existing build systems, it would make things easier if this common include convention was followed.\r\n\r\ni.e. to include openFrameworks headers in my own build, because all the includes look like:\r\n\r\n#include \"ofMesh.h\"\r\n#include \"ofAppGlutWindow.h\"\r\n#include \"ofSerial.h\"\r\n\r\nI have to add all these paths to my include paths:\r\n\r\n\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/app\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/3d\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/communication\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/gl\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/graphics\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/utils\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/types\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/math\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/events\r\n\r\n\r\n\r\nIt is common to instead structure files like (in the case of openFrameworks):\r\n\r\noF/include/oF\r\noF/include/oF/app\r\noF/include/oF/3d\r\noF/include/oF/communication\r\noF/include/oF/gl\r\noF/include/oF/graphics\r\n...etc...\r\n\r\nand just write:\r\n\r\n#include \r\n#include \r\n\r\netc.\r\n\r\nI'm not sure if there is an argument to leave it like it is because it's easier for oF's demographic? But I would say teaching the some_lib/include/some_lib/ convention would help people use more C++.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/767","comments":2,"milestone":null,"number":767,"html_url":"https://github.com/openframeworks/openFrameworks/issues/767","assignee":null,"title":"#include instead of #include ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-10-09T03:58:30Z","state":"open","user":{"url":"https://api.github.com/users/gimlids","gravatar_id":"cc4cace34c61103f0624002a692820f7","login":"gimlids","avatar_url":"https://secure.gravatar.com/avatar/cc4cace34c61103f0624002a692820f7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":186277},"id":1854874,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-12T13:12:02Z","body":"\r\nat the moment, ofNode has a draw function that has awkwardly hard coded sizes: \r\n\r\nvirtual void customDraw() {\r\n\t\tofBox(10);\r\n\t\tofDrawAxis(20);\r\n\t}\r\n\r\nI'd like a draw(size) option. obviously I can extend ofNode and create my own functions, but if I just draw a node, I might want to adjust the size internally, as the \"10\" and \"20\" might not make any sense based on where I am drawing, for example here: \r\n\r\nhttp://imgur.com/idWPp\r\n\r\nlooks quite weird, but at 1/10th the size would look ok. \r\n\r\nas most other OF objects have draw(size) options, I think ofNodeShould have this too. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/766","comments":4,"milestone":null,"number":766,"html_url":"https://github.com/openframeworks/openFrameworks/issues/766","assignee":null,"title":"ofNode should have a draw(float size) option","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-08T09:38:46Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":1851779,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T23:51:04Z","body":"edit: originally this issue was about adding glu functions. now i realize any remaining ones need to be removed. but it's still relevant to have an ofScreenToWorld and ofWorldToScreen. \r\n\r\nthis would be really awesome. there is already some code in ofDrawBitmapString that's using gluProject, it would be good to clean it up.\r\n\r\nthe main issue is that glu is not on iOS, so we'd need to find/write our own implementation.\r\n\r\nhere's a first pass:\r\n\r\n\tGLdouble modelviewMatrix[16], projectionMatrix[16];\r\n\tGLint viewport[4];\r\n\tvoid updateProjectionState() {\r\n\t\tglGetDoublev(GL_MODELVIEW_MATRIX, modelviewMatrix);\r\n\t\tglGetDoublev(GL_PROJECTION_MATRIX, projectionMatrix);\r\n\t\tglGetIntegerv(GL_VIEWPORT, viewport);\r\n\t}\r\n\r\n\tofVec3f ofWorldToScreen(ofVec3f world) {\r\n\t\tupdateProjectionState();\r\n\t\tGLdouble x, y, z;\r\n\t\tgluProject(world.x, world.y, world.z, modelviewMatrix, projectionMatrix, viewport, &x, &y, &z);\r\n\t\tofVec3f screen(x, y, z);\r\n\t\tscreen.y = ofGetHeight() - screen.y;\r\n\t\treturn screen;\r\n\t}\r\n\r\n\tofVec3f ofScreenToWorld(ofVec3f screen) {\r\n\t\tupdateProjectionState();\r\n\t\tGLdouble x, y, z;\r\n\t\tscreen.y = ofGetHeight() - screen.y;\r\n\t\tgluUnProject(screen.x, screen.y, screen.z, modelviewMatrix, projectionMatrix, viewport, &x, &y, &z);\r\n\t\tofVec3f world(x, y, z);\r\n\t\treturn world;\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/765","comments":4,"milestone":null,"number":765,"html_url":"https://github.com/openframeworks/openFrameworks/issues/765","assignee":null,"title":"remove gluProject and gluUnProject, add screenToWorld, worldToScreen","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-07T09:46:06Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1841802,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T06:02:37Z","body":"I made an app using the preRelease version 007, I have a gui view with a bunch of buttons and sliders this view is 1/3 of the screen size and sits at the bottom, it is an Universal app that allows any orientation on the iPad and supports Portrait only for the iPhone / iPod Touch, here is my problem I need to allow touches to pass through the gui view for this I use **[ofxiPhoneGetGLView() addSubview:guiViewController.view];** the problem this method is that the gui view does not call the **willAnimateRotationToInterfaceOrientation()** at launch, and I get the following message in the console\r\n_**Action connections from <UIView: 0x5b88d0; frame = (20 0; 280 320); autoresize = LM+RM+H; layer = <CALayer: 0x5b7d30>> are not supported.**_\r\n\r\n if I use **[ofxiPhoneGetUIWindow() addSubview:guiViewController.view];** the **willAnimateRotationToInterfaceOrientation()** method works at launch as expected and the gui view adjust itself to the correct position and size\r\n\r\nAny help will be much appreciated","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/764","comments":1,"milestone":null,"number":764,"html_url":"https://github.com/openframeworks/openFrameworks/issues/764","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"Autoresize problem in iOS","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-10-05T20:35:04Z","state":"open","user":{"url":"https://api.github.com/users/nardove","gravatar_id":"8022cb5f529975afbc64cc9312008d8c","login":"nardove","avatar_url":"https://secure.gravatar.com/avatar/8022cb5f529975afbc64cc9312008d8c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":277690},"id":1827792,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-28T01:00:34Z","body":"ofxXmlXettings uses TinyXML which gives you lots of useful error info like what line the error is on as well as what it has trouble reading. This is super awesome and useful to people like me who always mistype xml here and there.\r\n\r\nCurrently ofxXmlSettings::loadFile only returns a bool and you're left to figure out if it's a path issue, bad xml formatting, etc. At the least, we should be able to grab an error string.\r\n\r\nHere's how to do it:\r\n
    \r\nstd::string Xml::getErrorString(const TiXmlDocument* xmlDoc)\r\n{\r\n    if(xmlDoc == NULL)\r\n        return \"\";\r\n\r\n    std::stringstream error;\r\n    error << \"line \" <<  xmlDoc->ErrorRow() << \", \" << (std::string) xmlDoc->ErrorDesc();\r\n    return error.str();\r\n}\r\n
    ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/760","comments":1,"milestone":null,"number":760,"html_url":"https://github.com/openframeworks/openFrameworks/issues/760","assignee":null,"title":"ofxXmlSettings does not print any useful error messages","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-09-28T00:53:09Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":1758237,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T03:48:47Z","body":"This would be the best thing ever. \r\n\r\nstring ipAddr = ofxXmlSettings::readValueFromFile(\"data.xml\", \"ip\", \"127.0.0.1\"); \r\n\r\nofxXmlSettings::saveValueToFile(\"data.xml\", \"ip\", ipAddr); ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/758","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":758,"html_url":"https://github.com/openframeworks/openFrameworks/issues/758","assignee":null,"title":"non ofxXmlSettings object read and write value","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-09-26T11:54:06Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":1738864,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-25T13:22:59Z","body":"in my opinion, it would make sense for ofPixels::allocate to initialize the new memory to 0. even for large images, i don't think this is such an expensive operation.\r\n\r\ni discovered that it is not initialized to 0 when i had a really weird bug -- some code that gave me different results depending on whether i loaded another image before allocating or not. i was expecting OF to act like opencv, which also sets new memory to 0. this would be in line with ofVec*, ofColor, and a few other things, which are all allocated to 0.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/757","comments":0,"milestone":null,"number":757,"html_url":"https://github.com/openframeworks/openFrameworks/issues/757","assignee":null,"title":"ofPixels::allocate should init new memory","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-09-25T13:22:59Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1733504,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-22T08:20:27Z","body":"void ofFbo::end() {\r\n\tunbind();\r\n\tif(ofGetGLRenderer()){\r\n\t\tofGetGLRenderer()->setCurrentFBO(NULL);\r\n\t}\r\n\tofPopView();\r\n}\r\n\r\nthis will go wrong if nested fbo as following\r\n\r\nfbo1.begin();\r\n...\r\n fbo2.begin();\r\n ...\r\n fbo2.end();\r\n...\r\nfbo1.end();\r\n\r\nso probably the current fbo must not be set NULL\r\n\r\nerror show's in\r\nvoid ofGLRenderer::viewport(float x, float y, float width, float height, bool invertY) {\r\n\tif(width == 0) width = ofGetWindowWidth();\r\n\tif(height == 0) height = ofGetWindowHeight();\r\n\r\n\tif (invertY){\r\n\t\tif(currentFbo){\r\n\t\t\ty = currentFbo->getHeight() - (y + height);\r\n\t\t}else{\r\n\t\t\ty = ofGetWindowHeight() - (y + height);\r\n\t\t}\r\n\t}\r\n\tglViewport(x, y, width, height);\t\r\n}\r\nthe 'y' will computing wrong when current height is wrong\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/754","comments":0,"milestone":null,"number":754,"html_url":"https://github.com/openframeworks/openFrameworks/issues/754","assignee":null,"title":"nested fbo causing currentFBO lost","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-09-22T08:20:27Z","state":"open","user":{"url":"https://api.github.com/users/liquidzym","gravatar_id":"166640c513e589c86d2de49c52258eb4","login":"liquidzym","avatar_url":"https://secure.gravatar.com/avatar/166640c513e589c86d2de49c52258eb4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":51957},"id":1708332,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:38:03Z","body":"I found an issue with readToPixels() on iOS that works as expected when compiled for OSX. \r\n\r\nInitialize an FBO:\r\n\r\n   ofFbo::Settings settings;\r\n    settings.width = 1024;\r\n    settings.height = 1024;\r\n    settings.internalformat = GL_RGB;\r\n    settings.numSamples = 0;\r\n    settings.useDepth = false;\r\n    settings.useStencil = false;\r\n    screenFBO.allocate(settings);\r\n\r\nthen draw into the FBO and attempt to retrieve the pixels:\r\n\r\n ofPixels pixels; \r\n screenFBO.readToPixels(pixels); \r\n\r\nThis gives me the ofPixels I'm expecting in OSX, in iOS the pixels aren't populated. I can draw the FBO and see it on screen, I just can't get the pixels out of the texture in iOS.\r\n\r\nThis seems to be related to this portion of readToPixels() from ofFbo.cpp:\r\n\r\n bind(); \r\n int format,type; \r\n ofGetGlFormatAndType(settings.internalformat,format,type); \r\n glReadPixels(0,0,settings.width, settings.height, format, GL_UNSIGNED_BYTE, pixels.getPixels()); \r\n unbind(); \r\n\r\nHas anyone experienced this issue – any fixes?\r\n\r\nThanks,\r\nSteve","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/753","comments":1,"milestone":null,"number":753,"html_url":"https://github.com/openframeworks/openFrameworks/issues/753","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"ofFbo readToPixels() in iOS","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-09-21T20:50:33Z","state":"open","user":{"url":"https://api.github.com/users/stephen-baker","gravatar_id":"96e9ae469240e57fc3ebeed6769c7016","login":"stephen-baker","avatar_url":"https://secure.gravatar.com/avatar/96e9ae469240e57fc3ebeed6769c7016?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1047836},"id":1704855,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-21T10:37:20Z","body":"I'm having a problem with creating an image out of ofFbo pixels with some image and fbo sizes\r\n\r\n```c++\r\nvoid testApp::setup(){\r\n\r\n ofSetLogLevel(OF_LOG_VERBOSE);\r\n\tofSetVerticalSync(false);\r\n ofBackground(34, 34, 34);\r\n\tofEnableAlphaBlending();\r\n\r\n ofSetWindowShape(1024, ofGetScreenHeight()-70);\r\n ofSetFrameRate(60);\r\n\r\n frame.loadImage(\"lay.png\");\r\n \r\n imageHeight = 1172;\r\n imageWidth = 1182;\r\n\r\n mergeFbo.allocate(imageWidth, imageHeight, GL_RGB);\r\n\r\n final.setImageType(OF_IMAGE_COLOR);\r\n\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::draw(){\r\n\r\n ofEnableAlphaBlending();\r\n\r\n mergeFbo.begin();\r\n\r\n ofClear(0, 0, 0, 1);\r\n\r\n frame.draw(0, 0);\r\n\r\n mergeFbo.end();\r\n\r\n\r\n mergeFbo.draw(200, 100, 100, 200);\r\n \r\n \r\n mergeFbo.readToPixels(pixels);\r\n final.setFromPixels(pixels);\r\n\r\n final.draw(0, 0);\r\n\r\n}\r\n```","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/752","comments":1,"milestone":null,"number":752,"html_url":"https://github.com/openframeworks/openFrameworks/issues/752","assignee":null,"title":"ofFbo (problems with certain image dimensions)","labels":[],"closed_at":null,"created_at":"2011-09-20T21:16:24Z","state":"open","user":{"url":"https://api.github.com/users/ammalgamma","gravatar_id":"96b69749f518cf6a2964b999bf29ee8e","login":"ammalgamma","avatar_url":"https://secure.gravatar.com/avatar/96b69749f518cf6a2964b999bf29ee8e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":517000},"id":1691874,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-19T09:04:12Z","body":"feature request for a more generic ofJoin() function that accepts vectors of all kinds of objects (float, int, ofVec2f, etc) rather than just string. anything that implements operator<<\r\n\r\nhere's an example using stl:\r\n\r\n\t#include \r\n\ttemplate \r\n\tstring ofJoin(vector& elements, string delimiter) {\r\n\t\tstringstream result;\r\n\t\tcopy(elements.begin(), elements.end(), ostream_iterator(result, delimiter.c_str()));\r\n\t\treturn result.str();\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/748","comments":3,"milestone":null,"number":748,"html_url":"https://github.com/openframeworks/openFrameworks/issues/748","assignee":null,"title":"more generic ofJoin","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-09-17T07:26:18Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1668066,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-21T17:22:14Z","body":"\r\nI'm looking into creating some new primitives for OF [1] and the polygon winding has me a bit confused.\r\n\r\nIf you take for instance \"graphicsExample\" an you add:\r\n\r\n```glEnable( GL_CULL_FACE );```\r\n\r\nSomewhere you will no longer see much drawn to screen.\r\n\r\nGL_CCW is the default FrontFace for OpenGL, but OF seems to be the opposite.\r\nhttp://www.khronos.org/opengles/sdk/docs/man/xhtml/glFrontFace.xml\r\n\r\nWhich is coolio of course, as long as we are consistent.\r\n\r\nOur options are either to throw a ```glFrontFace( GL_CW );``` in there somewhere OR re-write all the drawing to be consistent with OpenGL default, not sure what is the best in the long run.\r\n\r\nWhat say you all?\r\n\r\n/A\r\n\r\n\r\n[1] https://github.com/andreasmuller/openFrameworks/blob/develop-opengles2/libs/openFrameworks/3d/of3dPrimitives.h","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/745","comments":2,"milestone":null,"number":745,"html_url":"https://github.com/openframeworks/openFrameworks/issues/745","assignee":null,"title":"Polygon winding","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-09-14T13:50:48Z","state":"open","user":{"url":"https://api.github.com/users/andreasmuller","gravatar_id":"210831a04d36f1aa26413ecbdbd4b07c","login":"andreasmuller","avatar_url":"https://secure.gravatar.com/avatar/210831a04d36f1aa26413ecbdbd4b07c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":791114},"id":1643672,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=8 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4936'), ('content-length', '42586'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"1f6749765d79f3319834dfda4c27cd5e"'), ('date', 'Tue, 29 May 2012 19:27:17 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-03-17T16:52:58Z","body":"i think it would be wonderful if every OF example was named ofApp instead of testApp. especially because:\r\n\r\n\tclass ofApp : public ofBaseApp {\r\n\r\nis more natural than:\r\n\r\n\tclass testApp : public ofBaseApp {\r\n\r\ngiven the rest of OF naming conventions. and it would increase consistency with things like:\r\n\r\n\tofGetAppPtr();\r\n\tofAppBaseWindow\r\n\tofAppGlutWindow\r\n\r\nthis is a massive refactor that shouldn't be difficult, but should be done at the same time as something like a code formatting cleanup.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/744","comments":10,"milestone":null,"number":744,"html_url":"https://github.com/openframeworks/openFrameworks/issues/744","assignee":null,"title":"rename testApp to ofApp","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-09-14T07:02:36Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1641198,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-26T11:56:48Z","body":"calling ofEnableAlphaBlending() crashes my app on a machine with opengl version 1.1.0, because glBlendEquation(), introduced at opengl 1.3, needs to gracefully degrade. Here is the solution:\r\n\r\n
    \r\nvoid ofEnableAlphaBlending_slightlySafer(void){\r\n\tconst GLubyte * version = glGetString(GL_VERSION);\r\n\tint major, minor;\r\n\tsscanf((const char*)version, \"%i.%i\",&major, &minor);\r\n\r\n\tif(major > 1 || (major==1 && minor>=3)){\r\n\t\tofEnableAlphaBlending();\r\n\t}\t\r\n}\r\n
    ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/743","comments":1,"milestone":null,"number":743,"html_url":"https://github.com/openframeworks/openFrameworks/issues/743","assignee":null,"title":"seg fault on ofEnableAlphaBlending() -> glBlendEquation()","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-09-13T22:53:55Z","state":"open","user":{"url":"https://api.github.com/users/jtnimoy","gravatar_id":"153ba4a8df491692b717daad7a6030be","login":"jtnimoy","avatar_url":"https://secure.gravatar.com/avatar/153ba4a8df491692b717daad7a6030be?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":183796},"id":1639020,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:39:00Z","body":"In ofxiPhoneAppDelegate.mm in the setAnimationFrameInterval method should be changed from\r\n\r\n\r\nif (animating){\r\n [self stopAnimation];\r\n [self startAnimation];\r\n}\r\n\r\nto\r\n\r\nif (animating){\r\n [self stopAnimation];\r\n}\r\n [self startAnimation];\r\n\r\nThis will allow it start again if it's stopped.\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/738","comments":0,"milestone":null,"number":738,"html_url":"https://github.com/openframeworks/openFrameworks/issues/738","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"ofxiPhone - setting ofSetFrameRate(0) and then back to > 0 doesn't start again","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-09-12T21:23:04Z","state":"open","user":{"url":"https://api.github.com/users/cerupcat","gravatar_id":"91b3d4bfbbb99d840b096cde3af877bf","login":"cerupcat","avatar_url":"https://secure.gravatar.com/avatar/91b3d4bfbbb99d840b096cde3af877bf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":204151},"id":1628082,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T22:55:09Z","body":"it would be awesome to have lines drawn nicer when they are 1 thick and 2 make sharp edges. processing has some functions strokeCap() and strokeJoin() for setting this behavior, but it doesn't work with OPENGL mode. we could probably adapt a geometry shader to do some smart mitering for us on the GPU.\r\n\r\nprompted by the discussion here: http://forum.openframeworks.cc/index.php/topic,7278.0/topicseen.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/730","comments":1,"milestone":null,"number":730,"html_url":"https://github.com/openframeworks/openFrameworks/issues/730","assignee":null,"title":"nicer stroke mitering/joining and end caps","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-09-07T03:27:13Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1586262,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-05T15:39:58Z","body":"ofColor_:operator+= currently calls clamp() when it's done doing the +=\r\n\r\ni imagined one of the applications of ofFloatColor would be for averaging or summing ofColor, which normally requires non-saturation semantics for +=. i could also do a / or * every += operation to avoid overflow. this doesn't have to be a bug, but it should at least be documented clearly when we discuss ofColor.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/728","comments":1,"milestone":null,"number":728,"html_url":"https://github.com/openframeworks/openFrameworks/issues/728","assignee":null,"title":"ofColor and clamping","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-09-05T14:41:50Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1569364,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-05T10:17:48Z","body":"Hello\r\n\r\nI had a problem with gamma for my Carbon app in OSX 10.6, UI looked \"blotched\" with Pappis' help it was solved, here are details:\r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,6404.msg30519.html#msg30519\r\n\r\nHowever, the trick with HIWindowSetColorSpace does not work in OSX 10.7 Lion\r\nLooking for solutions again\r\n\r\nThanks\r\nTom\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/727","comments":0,"milestone":null,"number":727,"html_url":"https://github.com/openframeworks/openFrameworks/issues/727","assignee":null,"title":"OSX 10.7 Gamma Problem","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2011-09-05T10:17:48Z","state":"open","user":{"url":"https://api.github.com/users/Tommato","gravatar_id":"95bbfbd39116dffe06be4d816f322bf0","login":"Tommato","avatar_url":"https://secure.gravatar.com/avatar/95bbfbd39116dffe06be4d816f322bf0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1027082},"id":1566286,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-26T18:44:30Z","body":"Related forum post: http://forum.openframeworks.cc/index.php/topic,7053.0.html\r\n\r\nFrom what I understand, it's best to leave the mainThread for UIKit elements and move openGL and other things to another thread. Currently, if there's a lot of drawing then the UIKit elements are delayed and can even pause the update/draw methods entirely. Moving the drawing to it's own thread should help with this.\r\n\r\nI'm still testing, but this looks like it could be a good candidate for core integration. It has examples of threaded, single (what we currently use), and GCD (which I think is iOS 4.0 only) openGL implementation: https://github.com/Volcore/LimbicGL In my early tests, it does fix any pausing of the update/draw with the threaded example (haven't tried the others). I could use some help though trying to integrate this into OF properly.\r\n\r\nThe main example classes are here: https://github.com/Volcore/LimbicGL/tree/master/limbicgl/drivers\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/721","comments":0,"milestone":null,"number":721,"html_url":"https://github.com/openframeworks/openFrameworks/issues/721","assignee":null,"title":"ofxiPhone - Move openGL to its own thread","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-08-26T18:43:09Z","state":"open","user":{"url":"https://api.github.com/users/cerupcat","gravatar_id":"91b3d4bfbbb99d840b096cde3af877bf","login":"cerupcat","avatar_url":"https://secure.gravatar.com/avatar/91b3d4bfbbb99d840b096cde3af877bf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":204151},"id":1497330,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:39:39Z","body":"The libraries linked in 007 as well as the new AVFoundationVideoPlayer is not compatible with 3.x devices and won't build.\r\n\r\nAfter further exploring, I believe these are the steps to get things running on 3.x devices.\r\n\r\n1) In Xcode, Click on target -> application name\r\n2) In the File Name window, set AVFoundation, CoreMedia, and CoreVideo from role \"required\" to \"weak\". They need to be weak linked since they're only available in iOS 4+.\r\n3) In ofxiPhone src folder, AVFoundationVideoPlayer.mm uses CMBlockBufferRef and that is only available in iOS4. This means, this function should be commented out (sorry - avfoundationvideoplayer won't run on iOS4 unless the blocker is changed). Either that or you can comment ouf AVFoundationVideoPlayer from being included in OF.\r\n4) Clean all targets and rebuild","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/720","comments":0,"milestone":null,"number":720,"html_url":"https://github.com/openframeworks/openFrameworks/issues/720","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"007 ofxiPhone not compatible with 3.x devices ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-08-26T18:38:38Z","state":"open","user":{"url":"https://api.github.com/users/cerupcat","gravatar_id":"91b3d4bfbbb99d840b096cde3af877bf","login":"cerupcat","avatar_url":"https://secure.gravatar.com/avatar/91b3d4bfbbb99d840b096cde3af877bf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":204151},"id":1497291,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-22T17:38:49Z","body":"\r\nbased on this comment, \r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,5319.msg33381.html#msg33381\r\n\r\nI wonder if we can be smarter in endShape() / ofPath::tessellate() and look for simple usage (3 or 4 points, etc) before tessellating, or if the slow down is just based on the use of the ofPath object. \r\n\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/719","comments":1,"milestone":null,"number":719,"html_url":"https://github.com/openframeworks/openFrameworks/issues/719","assignee":null,"title":"optimize ofEndShape() to deal with simple shapes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-08-22T16:56:27Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":1459353,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-22T16:02:30Z","body":"change\r\n\r\nfloat ofCamera::getImagePlaneDistance(ofRectangle viewport) const {\r\n\treturn getPosition().length(); //viewport.height / (2.0f * tanf(PI * fov / 360.0f));\r\n}\r\n\r\nold in comment\r\n\r\ncurrent system is abitrary\r\nsuggest new system is more sensible\r\n(i'm always working in normalised coords)\r\npls check in your life before changing :)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/717","comments":0,"milestone":null,"number":717,"html_url":"https://github.com/openframeworks/openFrameworks/issues/717","assignee":null,"title":"suggest new calc clip planes routine","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-08-22T16:02:30Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":1458979,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-22T14:11:34Z","body":"http://forum.openframeworks.cc/index.php/topic,5222.msg33366.html#msg33366\r\n\r\nthere also seem to be a memory leak, when deleting a ofQuicktimeVideoPlayer","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/716","comments":0,"milestone":null,"number":716,"html_url":"https://github.com/openframeworks/openFrameworks/issues/716","assignee":null,"title":"problems with stop/play in quicktime videoPlayer","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-08-22T14:11:34Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":1458044,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-16T13:39:49Z","body":"Here\r\nhttps://github.com/openframeworks/openFrameworks/issues/653\r\nI downloaded latest version but in still crashes on my old video card Nvidia GeForce Go 7200.\r\nAny idea why?\r\nofxFBOTexture works, but i got some trobles in pixel format there. \r\nofxFBOTexture uses function with postfix EXT sometimes? ofFbo without it.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/711","comments":5,"milestone":null,"number":711,"html_url":"https://github.com/openframeworks/openFrameworks/issues/711","assignee":null,"title":"Problem with ofFbo. Crashes on allocate.There were the same issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-08-16T10:21:29Z","state":"open","user":{"url":"https://api.github.com/users/IonRod","gravatar_id":"cf3cb346817dd8a9f8327d1af13c3d46","login":"IonRod","avatar_url":"https://secure.gravatar.com/avatar/cf3cb346817dd8a9f8327d1af13c3d46?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":886012},"id":1414013,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-15T14:23:47Z","body":"i'm noticing this on osx 10.6. all 8-bit images are correct, but somehow i didn't notice about unsigned short and float until now!\r\n\r\ni'm super busy atm, but i've kind of been maintaining the unsigned short/float loading so i'll look into this if someone else doesn't get to it first.\r\n\r\nmeanwhile it would be good to see if it's the same on windows or not. for anyone interested in testing, please check devApps/AdvancedImageLoading and compare the results of the app to the .exr opened in photoshop.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/710","comments":0,"milestone":null,"number":710,"html_url":"https://github.com/openframeworks/openFrameworks/issues/710","assignee":null,"title":"16-bit and 32-bit images are red/blue swapped","labels":[],"closed_at":null,"created_at":"2011-08-15T14:23:47Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1407813,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-07T12:19:07Z","body":"in the past there has been ofxQtVideoSaver and a few others. i think this is a really hard problem because it basically needs to be written for each platform, but something that should eventually be solved.\r\n\r\ntwo major use cases i know are:\r\n\r\n- capturing and saving simultaneously, for long streams\r\n- capturing a quick burst of video then saving it to disk\r\n\r\nwhich would might be handled a little differently.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/702","comments":1,"milestone":null,"number":702,"html_url":"https://github.com/openframeworks/openFrameworks/issues/702","assignee":null,"title":"cross platform video saving (ofVideoSaver?)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-08-07T03:23:38Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1359729,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-06T20:20:03Z","body":"Hi!\r\n\r\nI have problems even getting the ofxOsc Send/Receive examples talking on Ubuntu 11.04 64bit. \r\nThey compile without problems, but sometimes when I run them, communication fails somewhere along the road - input events are not shown in the receiver app. Sometimes it does not work at all.\r\n\r\nThis works all flawlessly on 32bit Ubuntu 11.04. See http://forum.openframeworks.cc/index.php/topic,6918.0.html for more details.\r\n\r\nCan anyone reproduce these problems? Any tips? How could I debug this?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/701","comments":3,"milestone":null,"number":701,"html_url":"https://github.com/openframeworks/openFrameworks/issues/701","assignee":null,"title":"ofxOsc does not seem to work on 64bit Ubuntu","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2011-08-06T19:14:37Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":1358688,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-05T03:06:25Z","body":"very simple but helpful feature request. e.g.,\r\n\r\nofBuffer::operator=(const ofBuffer& mom) {\r\n set(mom.getBinaryBuffer(), mom.size());\r\n}\r\n\r\nthis goes along with the general \"what does the equal operator mean\" debate/discussion :)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/700","comments":0,"milestone":null,"number":700,"html_url":"https://github.com/openframeworks/openFrameworks/issues/700","assignee":null,"title":"ofBuffer with overloaded = operator","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-08-05T03:06:25Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1349012,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T15:11:28Z","body":"this seems like an api inconsistency to me: i feel like ofTexture::loadData() is similar to ofImage::setFromPixels(), but setFromPixels() will allocate space if necessary while loadData() just prints an error if the data is larger than the allocated space.\r\n\r\ni think auto-allocation would be nice, but i might just be misunderstanding/making a false comparison here.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/699","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":699,"html_url":"https://github.com/openframeworks/openFrameworks/issues/699","assignee":null,"title":"loadData() does not allocate as necessary","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-08-04T10:29:57Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1343463,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T15:12:03Z","body":"from: http://forum.openframeworks.cc/index.php/topic,6952.msg32509.html\r\n\r\n\r\n\r\ngetBmpFromPixels() crashed repeatedly when I tried to rescale grayscale Images of size 3026*2048.\r\n\r\nIt's because memcpy overshoots the src pixel array because dstStride can be larger than srcStride.\r\n\r\nIn ofImage.cpp \r\n\r\ngetBmpFromPixels()\r\n\r\naround line 119, I believe, it should read:\r\n\r\nCode:\r\nview plaincopy to clipboardprint?\r\n... \r\n int srcStride = width * pix.getBytesPerPixel(); \r\n int dstStride = FreeImage_GetPitch(bmp); \r\n unsigned char* src = (unsigned char*) pixels; \r\n unsigned char* dst = bmpBits; \r\n for(int i = 0; i < (int)height; i++) { \r\n // memcpy(dst, src, dstStride); \r\n memcpy(dst, src, srcStride); // did overshoot with e.g. grayscale img of size 3026*2048 \r\n src += srcStride; \r\n dst += dstStride; \r\n } \r\n... \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/698","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":698,"html_url":"https://github.com/openframeworks/openFrameworks/issues/698","assignee":null,"title":"getBmpFromPixels memcpy issue / ofImage::resize issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-08-03T18:15:55Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":1339116,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-21T15:34:07Z","body":"I'm trying to build ofxPd in Visual Studio and running into multiple define issues related to the videoinput lib, namely static `verbose`: https://github.com/openframeworks/openFrameworks/blob/master/libs/videoInput/include/videoInput.h#L115\r\n\r\nCouldn't this variable as well as `comInitCount` be moved to the implementation files? or at least in a header hidden from the global namespace? At the least, `verbose` could be renamed to something not so common ...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/697","comments":1,"milestone":null,"number":697,"html_url":"https://github.com/openframeworks/openFrameworks/issues/697","assignee":null,"title":"videoinput lib global statics","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-08-03T02:27:52Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":1334657,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T00:53:30Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/685","comments":3,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":685,"html_url":"https://github.com/openframeworks/openFrameworks/issues/685","assignee":null,"title":"update shader example to work on ati.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-07-28T15:57:58Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":1303812,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:40:42Z","body":"It is very annoying if you can not disable autocorrections in ofxiPhoneKeyboard. Specially for creative uses of this class. I add code how to add this feature.\r\n\r\n[CODE] Add to ofxiPhoneKeyboard class:\r\n\r\n- (void)disableAutoCorrection;\r\n- (void)enableAutoCorrection;\r\n\r\n//--------------------------------------------------------------\r\nvoid ofxiPhoneKeyboard::disableAutoCorrection()\r\n{\r\n [keyboard disableAutoCorrection];\r\n}\r\n//--------------------------------------------------------------\r\nvoid ofxiPhoneKeyboard::enableAutoCorrection()\r\n{\r\n [keyboard enableAutoCorrection];\r\n}\r\n\r\n- (void)disableAutoCorrection\r\n{\r\n _textField.autocorrectionType = UITextAutocorrectionTypeNo;\r\n}\r\n\r\n- (void)enableAutoCorrection\r\n{\r\n _textField.autocorrectionType = UITextAutocorrectionTypeYes;\r\n}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/684","comments":0,"milestone":null,"number":684,"html_url":"https://github.com/openframeworks/openFrameworks/issues/684","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"ofxiPhoneKeyboard should have disable/enable methods for auto correction","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-07-28T12:12:52Z","state":"open","user":{"url":"https://api.github.com/users/mcanet","gravatar_id":"e4d2b0151a843dde7b815b848170d6e9","login":"mcanet","avatar_url":"https://secure.gravatar.com/avatar/e4d2b0151a843dde7b815b848170d6e9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":308759},"id":1302375,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-24T18:26:54Z","body":"I think there's a bug in ofQuaternion in of007. When i use ofNode's setOrientation() or ofNode setRoll I can rotate my ofNode object around the Z axis. However when I try to obtain the current rotation around the Z axis it will always give a value like -180, 0 or 180.\r\n\r\nRick","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/679","comments":0,"milestone":null,"number":679,"html_url":"https://github.com/openframeworks/openFrameworks/issues/679","assignee":null,"title":"possible bug in getEuler / getOrientation / getRoll","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-24T18:26:54Z","state":"open","user":{"url":"https://api.github.com/users/companje","gravatar_id":"30a7e135fe77636519d74d129c60e156","login":"companje","avatar_url":"https://secure.gravatar.com/avatar/30a7e135fe77636519d74d129c60e156?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":156066},"id":1278252,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T22:13:24Z","body":"I know that with the 007 release ofxDirList addon is deprecated and instead we are encouraged to use ofDirectory to achiece the same kind of functionality. In fact the are so similar that is possible to use them interchangeably. To do that transparently you changed the ofxDirList.h so that it made a typedef to point to ofDirectory (and will probably remove it completely someday).\r\n\r\nThe contents of ofxDirList.h are the following:\r\n---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------\r\n#pragma once\r\n\r\n#include \"ofFileUtils.h\"\r\n\r\n#warning ofxDirList has been deprecated. \r\n#warning Remove all references to ofxDirList.h and use ofDirectory instead.\r\ntypedef ofDirectory ofxDirList;\r\n---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------\r\nSo far so good. The problem is that you use the #warning preprocessing directive is non-standard and unsupported on Visual C++ compiler. In fact it gives me an error while building a project that I ported from 0062 version that used ofxDirList. To make it work I had to comment the two #warning lines. \r\n\r\nI suggest that you remove the #warning directives and replace it with something else that works across all compilers. I know that the #warning directive works on GCC and MinGW but not on VC++ so if you are going to support all those compilers (like you do) you better have all of your code working across all of them.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/676","comments":2,"milestone":null,"number":676,"html_url":"https://github.com/openframeworks/openFrameworks/issues/676","assignee":null,"title":"ofxDirList deprecated #warning directive preprocessor Visual Studio 2010","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-23T01:19:54Z","state":"open","user":{"url":"https://api.github.com/users/petersaints","gravatar_id":"03848790c2ebb8e5edbe130e8ce76f1d","login":"petersaints","avatar_url":"https://secure.gravatar.com/avatar/03848790c2ebb8e5edbe130e8ce76f1d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157810},"id":1273716,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-21T11:29:24Z","body":"changed this in dirListExample\r\n\r\n ofFile testfile;\r\n\t// you can now iterate through the files and load them into the ofImage vector\r\n\tfor(int i = 0; i < (int)dir.size(); i++){\r\n\t\timages[i].loadImage(dir.getPath(i));\r\n\t\ttestfile.open(dir.getPath(i));\r\n\t\tcout << testfile.isFile() << endl; //THIS LINE SEGFAULTS ON WIN7\r\n testfile.close();\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/671","comments":0,"milestone":null,"number":671,"html_url":"https://github.com/openframeworks/openFrameworks/issues/671","assignee":null,"title":"isFile() segfaults on win7","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-07-21T11:27:16Z","state":"open","user":{"url":"https://api.github.com/users/benben","gravatar_id":"614a4e493d7c353296519bba720e77c5","login":"benben","avatar_url":"https://secure.gravatar.com/avatar/614a4e493d7c353296519bba720e77c5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":124513},"id":1262459,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-21T10:39:29Z","body":"just added output to all events in an emptyExample on windows7 64bit.\r\n\r\nif im clicking, the following output occurs even if the mouse is not moved\r\n\r\n mousePressed\r\n mouseReleased\r\n mouseMoved","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/670","comments":2,"milestone":null,"number":670,"html_url":"https://github.com/openframeworks/openFrameworks/issues/670","assignee":null,"title":"mouseReleased fires mouseMoved too (win7)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-07-21T09:34:52Z","state":"open","user":{"url":"https://api.github.com/users/benben","gravatar_id":"614a4e493d7c353296519bba720e77c5","login":"benben","avatar_url":"https://secure.gravatar.com/avatar/614a4e493d7c353296519bba720e77c5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":124513},"id":1261982,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=9 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4935'), ('content-length', '45016'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"c403779e3346f56dddb655b8bb57d5ae"'), ('date', 'Tue, 29 May 2012 19:27:18 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-03-09T06:11:12Z","body":"I'm curious why the movieplayer uses AvAsset instead of AvPlayer which seems better suited for OF needs ( seeking / looping etc ) \r\n\r\nhttp://developer.apple.com/library/ios/#documentation/AVFoundation/Reference/AVPlayer_Class/Reference/Reference.html\r\n\r\nhttp://stackoverflow.com/questions/5361145/looping-a-video-with-avfoundation-avplayer\r\n\r\n\r\nI think you can get init a player with an AVAsset:\r\nhttp://developer.apple.com/library/ios/#documentation/AVFoundation/Reference/AVPlayer_Class/Reference/Reference.html%23//apple_ref/occ/instm/AVPlayer/initWithPlayerItem:\r\nhttp://developer.apple.com/library/ios/documentation/AVFoundation/Reference/AVPlayerItem_Class/Reference/Reference.html#//apple_ref/occ/instm/AVPlayerItem/initWithAsset:\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/666","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":666,"html_url":"https://github.com/openframeworks/openFrameworks/issues/666","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"iphone video player should use AVPlayer ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-07-20T20:01:04Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":1258863,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-01-08T04:45:01Z","body":"In some cases, when modifier keys are used, the pressedKeys set will accumulate keys.\r\n\r\nThis happens because \"modifier-up\" messages are not sent in the same way as normal and special keys.\r\n\r\nTo test, watch the size of the pressedKeys:\r\n\r\n cout << pressedKeys.size() << \" num pressed keys \" << endl;\r\n\r\nPress a modifier key and a normal key -- say ctrl-a. If the 'a' is lifted first, then the modified-a key int is removed from the pressedKeys set. If CTRL is released before the 'a', then the non-modified-a key-up int is sent, and it is not erased from the pressedKeys set. If this is repeated with different modifier+key downs / ups the accumulation occurs.\r\n\r\nUltimately, there needs to be better handling of modifier keys. Perhaps there is a way to use the modifier masks keep track of modifier keys with a call to glutGetModifiers() in the keyboard_cb and keyboard_up_cb static methods?\r\n\r\nIt looks like progress has been made toward this in ofConstants.h\r\n\r\n\t#define OF_KEY_CTRL\t\t\t0x0200\r\n\t#define OF_KEY_ALT\t\t\t0x0300\r\n\t#define OF_KEY_SHIFT\t\t0x0400\r\n\r\nBut it seems to have stopped there.\r\n\r\nI'm happy to work on this -- any suggestions on a strategy? Perhaps this is already being addressed of 007?\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/652","comments":5,"milestone":null,"number":652,"html_url":"https://github.com/openframeworks/openFrameworks/issues/652","assignee":null,"title":"ofAppGlutWindow/ofEvents: pressedKeys accumulate in special cases","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-15T18:49:46Z","state":"open","user":{"url":"https://api.github.com/users/bakercp","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","login":"bakercp","avatar_url":"https://secure.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":300484},"id":1231959,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-20T19:04:31Z","body":"If you use those these two together the 3d objects get an unwanted offset\r\n\r\ncode:\r\n\r\n```c++\r\nvoid testApp::draw()\r\n{\r\n \r\n cam.begin();\r\n ofPushMatrix();\r\n ofSetColor(255,255,255);\r\n ofBox(200);\r\n ofPopMatrix();\r\n cam.end();\r\n \r\n \r\n fbo.begin();\r\n cam.begin();\r\n \r\n ofClear(0);\r\n ofPushMatrix();\r\n ofSetColor(0,0,0);\r\n ofBox(200);\r\n ofPopMatrix();\r\n \r\n cam.end();\r\n fbo.end();\r\n \r\n \r\n glPushMatrix();\r\n //ofTranslate(0,6,0); <--- now i'm using something like this to \"repair\" it\r\n ofSetColor(255,255,255,255);\r\n glScalef(1,-1,1);\r\n fbo.draw(0,- ofGetHeight());\r\n glPopMatrix();\r\n \r\n \r\n \r\n}\r\n```\r\n\r\nNormally the two boxes should overlap completely, instead it looks like this:\r\n\r\n![screen1](http://i51.tinypic.com/11cfi1l.png)\r\n![screen2](http://i55.tinypic.com/2ewnv5i.png)\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/651","comments":4,"milestone":null,"number":651,"html_url":"https://github.com/openframeworks/openFrameworks/issues/651","assignee":null,"title":"ofFBO + ofCamera = unwanted offset","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2011-07-15T13:21:44Z","state":"open","user":{"url":"https://api.github.com/users/toxin20","gravatar_id":"29a3b85e704ec06a72df8897a726920e","login":"toxin20","avatar_url":"https://secure.gravatar.com/avatar/29a3b85e704ec06a72df8897a726920e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":123776},"id":1230184,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-19T00:31:38Z","body":"\r\nA tiny issue I spotted:\r\n\r\nofQuaternion.cpp, line 14:\r\n\r\n```C++\r\n/// Set the elements of the Quat to represent a rotation of angle\r\n/// (radians) around the axis (x,y,z)\r\nvoid ofQuaternion::makeRotate( float angle, float x, float y, float z ) {\r\n\tangle = ofDegToRad(angle);\r\n```\r\n\r\nof**X**Quaternion::makeRotate used to take radians, only noticed as I was moving some old code over, otherwise I would have just looked at the code in ofQuaternion.cpp to see the angle type. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/646","comments":1,"milestone":null,"number":646,"html_url":"https://github.com/openframeworks/openFrameworks/issues/646","assignee":null,"title":"ofQuaternion::makeRotate takes degrees, used to take radians, documentation says radians","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"closed_at":null,"created_at":"2011-07-13T15:18:04Z","state":"open","user":{"url":"https://api.github.com/users/andreasmuller","gravatar_id":"210831a04d36f1aa26413ecbdbd4b07c","login":"andreasmuller","avatar_url":"https://secure.gravatar.com/avatar/210831a04d36f1aa26413ecbdbd4b07c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":791114},"id":1216274,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-12T16:05:23Z","body":"^^^^\r\nTried on Mac:\r\nhttps://gist.github.com/1078282","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/645","comments":0,"milestone":null,"number":645,"html_url":"https://github.com/openframeworks/openFrameworks/issues/645","assignee":null,"title":"ofVideoGrabber::listDevices() does not list devices when initGrabber not called","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-12T16:05:23Z","state":"open","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":358809},"id":1209436,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-16T04:21:18Z","body":"https://gist.github.com/1077933\r\n\r\nsaving images converted to 8PP using ofImage::setImageType(OF_IMAGE_GRAYSCALE) and then calling saveImage() save blank on windows, but works on OS X\r\n\r\ntraced the issue down to the call to FreeImage_Save(), both seem to be the same. not sure what the problem is\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/643","comments":1,"milestone":null,"number":643,"html_url":"https://github.com/openframeworks/openFrameworks/issues/643","assignee":null,"title":"8 BPP (grayscale) ofImage saves blank on Windows, fine on os x","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-07-12T13:05:25Z","state":"open","user":{"url":"https://api.github.com/users/obviousjim","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","login":"obviousjim","avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":321434},"id":1208289,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:42:09Z","body":"Forum issue: http://forum.openframeworks.cc/index.php/topic,6316.new.html#new\r\n\r\nThis may be related to using CADisplayLink. When openGL seems to be pushed a bit, touch events seem to drop or are delayed. When using NSTimer in ofxiPhoneAppDelegate instead of CADisplayLink this does not occur.\r\n\r\nIt may be beneficial for developers to set whether they'd like to use CADisplayLink (if available) vs NSTimer for rendering or not.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/642","comments":0,"milestone":null,"number":642,"html_url":"https://github.com/openframeworks/openFrameworks/issues/642","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"ofxiPhone: Possible delayed input/touch event issue ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-12T02:46:23Z","state":"open","user":{"url":"https://api.github.com/users/cerupcat","gravatar_id":"91b3d4bfbbb99d840b096cde3af877bf","login":"cerupcat","avatar_url":"https://secure.gravatar.com/avatar/91b3d4bfbbb99d840b096cde3af877bf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":204151},"id":1205789,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-12T13:03:00Z","body":"See title and test code:\r\nhttps://gist.github.com/952bd35591dc0cb23f61","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/631","comments":1,"milestone":null,"number":631,"html_url":"https://github.com/openframeworks/openFrameworks/issues/631","assignee":null,"title":"ofImage::saveImage() - saving from png to gif creates grayscale image","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-07T21:37:47Z","state":"open","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":358809},"id":1185346,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T03:48:47Z","body":"Tried to load a text file over https but I got this message:\r\n\r\n``400 The plain HTTP request was sent to HTTPS port\r\n

    400 Bad Request

    The plain HTTP request was sent to HTTPS port

    nginx/1.0.4
    ``\r\n\r\n\r\n\r\nUsing this code\r\n``ofHttpResponse resp = ofLoadURL(\"https://raw.github.com/openframeworks/openFrameworks/6af1dc980f6d93d84b3bf8fdc1b6435697be9ed9/readme.txt\");``\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/623","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":623,"html_url":"https://github.com/openframeworks/openFrameworks/issues/623","assignee":null,"title":"ofLoadURL() does not work with httpS","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-06T18:12:06Z","state":"open","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":358809},"id":1175654,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-06T18:09:03Z","body":"Setting the position of an ofEasyCam instance in ofSetup() does not work. What does work in testApp::setup() is calling ofEasyCam::setDistance(). When calling ofEasyCam::setPosition() in for example testApp::draw() does work.\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/618","comments":0,"milestone":null,"number":618,"html_url":"https://github.com/openframeworks/openFrameworks/issues/618","assignee":null,"title":"call ofEasyCam::setPosition in testApp::setup() is forgotten","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-05T18:23:34Z","state":"open","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":358809},"id":1169032,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-06-27T18:30:26Z","body":"Currently there doesn't appear to be any way to do this other than by hand\r\nAlso it would be highly useful ofMatrix3x3 in general had equivalent accessors to ofMatrix4x4","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/612","comments":0,"milestone":null,"number":612,"html_url":"https://github.com/openframeworks/openFrameworks/issues/612","assignee":null,"title":"need conversion ofMatrix3x3<->ofMatrix4x4","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-06-27T18:30:26Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":1124068,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-04T10:10:06Z","body":"Need some way of applying current ofMatrix4x4 to the scene without going down to gl calls","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/605","comments":4,"milestone":null,"number":605,"html_url":"https://github.com/openframeworks/openFrameworks/issues/605","assignee":null,"title":"function wrapping glMultMatrixf in ofMatrix4x4","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-06-16T13:13:35Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":1067300,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:42:59Z","body":"Here's a function that will do it...\r\n\r\nvoid ofxiPhoneLaunchBrowser(string url) {\r\n\t[[UIApplication sharedApplication] openURL:[NSURL URLWithString:ofxStringToNSString(url)]];\r\n}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/603","comments":0,"milestone":null,"number":603,"html_url":"https://github.com/openframeworks/openFrameworks/issues/603","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"ofLaunchBrowser() for iPhone not implemented","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-06-13T13:03:15Z","state":"open","user":{"url":"https://api.github.com/users/mazbox","gravatar_id":"3cfb19dbce7926933555ac9755a86ca8","login":"mazbox","avatar_url":"https://secure.gravatar.com/avatar/3cfb19dbce7926933555ac9755a86ca8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":194121},"id":1048971,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T21:38:43Z","body":"OF: OF_LOG_ERROR: ofxNetwork:/addons/ofxNetwork/src/ofxTCPManager.cpp: 157 ECONNREFUSED: the server has actively refused to establish the connection\r\n\r\nThis error happens in every use of ofxTCPClient.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/599","comments":1,"milestone":null,"number":599,"html_url":"https://github.com/openframeworks/openFrameworks/issues/599","assignee":null,"title":"TCPManager Consistent Error","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-06-08T23:02:28Z","state":"open","user":{"url":"https://api.github.com/users/tomorrowevening","gravatar_id":"f92a8e912b59171abde0354e2f212c12","login":"tomorrowevening","avatar_url":"https://secure.gravatar.com/avatar/f92a8e912b59171abde0354e2f212c12?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":626143},"id":1027184,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-06-01T13:56:17Z","body":"http://forum.openframeworks.cc/index.php/topic,6370.0.html\r\n\r\nwhen they are not power of 2 perhaps?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/591","comments":0,"milestone":null,"number":591,"html_url":"https://github.com/openframeworks/openFrameworks/issues/591","assignee":null,"title":"problem with ofImage resize","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-06-01T13:56:17Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":984564,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-05-31T12:33:31Z","body":"### ofxNetworkUtils.h - issue 1\n\nThe default message should print out `err` instead of `errno`\n\n```\n\tdefault:\n\t\tofLog(OF_LOG_ERROR,\"ofxNetwork:\"+file+\": \" +line+\" unknown error: \" + ofToString(errno) + \" see errno.h for description of the error\");\n\t\tbreak;\n```\n\nto:\n\n```\n\tdefault:\n\t\tofLog(OF_LOG_ERROR,\"ofxNetwork:\"+file+\": \" +line+\" unknown error: \" + ofToString(err) + \" see errno.h for description of the error\");\n\t\tbreak;\n```\n\nSince errno would not be set on windows machines.\n\n\n\n\n### ofxTCPManager.cpp - issue 2\n\nIn the `Receive` method of the `ofxTCPManager` the function will always return -1 when checking for data and there is no new data and the TCPServer has been set to non-blocking.\n\nAfter changing the code in issue 1 mentioned above i got:\n\n`ofxNetwork:addons\\ofxNetwork\\src\\ofxTCPManager.cpp: 304 unknown error: 10035 see errno.h for description of the error`\n\ninstead of `error: 0` when `errno`was used.\n\nWhich on windows is the [`WSAEWOULDBLOCK`](http://msdn.microsoft.com/en-us/library/ms740668.aspx) or `EWOULDBLOCK` as defined in `ofxNetworkUtils`\n\nSo someplace in the code there should be a mechanism to check if the code is client is non-blocking and ignore the error.\nThis is `windows` only but still could be as an additional parameter to the `Receive` method. Or add it as an `switch case` for the `EWOULDBLOCK` in the `ofxNetworkUtils` and ignore the ouput and comment it.\n\nI just noticed this above when i started usin an application that i was developing on my mac an using it on windows machines this code would appear too often.\n\nSo as stated above my solution is that i added:\n\n```\n #ifdef TARGET_WIN32 // otherwise EAGAIN & EWOULDBLOCK will create a \"duplicate case value\" on Non windows\n\tcase EWOULDBLOCK: \n\t\t// \tofLog(OF_LOG_VERBOSE,\"ofxNetwork:\"+file+\": \" +line+\" EWOULDBLOCK: perhaps non-blocking\");\n\t\tbreak;\n #endif\n```\ncode and ignoring the output.\n\n\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/590","comments":0,"milestone":null,"number":590,"html_url":"https://github.com/openframeworks/openFrameworks/issues/590","assignee":null,"title":"ofxTCPManager.receive() - EWOULDBLOCK on Windows","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-05-31T11:31:08Z","state":"open","user":{"url":"https://api.github.com/users/cristobal","gravatar_id":"c7f941e0c10696b758ae8792714a6744","login":"cristobal","avatar_url":"https://secure.gravatar.com/avatar/c7f941e0c10696b758ae8792714a6744?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":155505},"id":978212,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-05-31T02:06:22Z","body":"setFromPixels has two forms: one that takes an int channels, another that takes ofImageType.\r\n\r\nsetFromExternalPixels only has one form: it takes an int channels.\r\n\r\nin my opinion, it makes sense to change them both to ofImageType only, because the int channels is susceptible to accidentally passing an ofImageType to it.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/589","comments":0,"milestone":null,"number":589,"html_url":"https://github.com/openframeworks/openFrameworks/issues/589","assignee":null,"title":"setFromPixels vs setFromExternalPixels","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-05-31T02:06:22Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":976610,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T21:54:02Z","body":"ofImage_ should be ofBaseImage, likewise with ofPixels_\n\nin general, X_ style classes should be BaseX\n\ntemplated functions that are just sitting around should also have descriptive template names.\n\nit's important for this to happen before 007, otherwise code will be written against ofImage\\_<T> etc.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/582","comments":5,"milestone":null,"number":582,"html_url":"https://github.com/openframeworks/openFrameworks/issues/582","assignee":null,"title":"templated code needs to be more readable","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-05-23T17:46:28Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":942647,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-31T13:42:28Z","body":"just need to add the line\r\n\r\n\t\t\tcase 230400: cfsetispeed(&options,B230400);\r\n\t\t\t\tcfsetospeed(&options,B230400);\r\n\t\t\t\tbreak;\r\n\r\nin the setup function after\r\ncase 115200: cfsetispeed(&options,B115200);\r\n\t\t\t\t\t\tcfsetospeed(&options,B115200);\r\n\t\t\t\tbreak;\r\n\r\ntested with our device that runs at that baud rate, seems to work a-OK so far.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/577","comments":2,"milestone":null,"number":577,"html_url":"https://github.com/openframeworks/openFrameworks/issues/577","assignee":null,"title":"ofSerial: add 230400 speed","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-05-20T16:16:52Z","state":"open","user":{"url":"https://api.github.com/users/labatrockwell","gravatar_id":"e6d243a56cd069a225f56f4a388e8838","login":"labatrockwell","avatar_url":"https://secure.gravatar.com/avatar/e6d243a56cd069a225f56f4a388e8838?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","id":313943},"id":932655,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T19:59:00Z","body":"This is a generic Linux build of oF for ARM Cortex A8/9 devices (Beagleboard, Pandaboard, Gumstix, Tegra 250, IGEPv2, ...) with built-in NEON optimizations in the included libs and makefiles (via gcc -O3 -march=armv7-a -mtune=cortex-a8 -mfpu=neon -ftree-vectorize -mfloat-abi=softfp)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/576","comments":17,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","closed_issues":0,"number":8,"title":"0080 Release","due_on":"2013-01-01T08:00:00Z","open_issues":3,"created_at":"2012-02-25T01:34:28Z","state":"open","description":"","id":88731},"number":576,"html_url":"https://github.com/openframeworks/openFrameworks/issues/576","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"Generic armv7l Linux build for Beagleboard &co. ","labels":[],"closed_at":null,"created_at":"2011-05-19T14:49:57Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"id":927378,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/576.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/576","patch_url":"https://github.com/openframeworks/openFrameworks/pull/576.patch"}},{"updated_at":"2011-05-13T15:28:46Z","body":"http://forum.openframeworks.cc/index.php?topic=6201.0","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/572","comments":0,"milestone":null,"number":572,"html_url":"https://github.com/openframeworks/openFrameworks/issues/572","assignee":null,"title":"ofToggleFullscreen doesn't set width and height correctly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2011-05-13T15:28:46Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":895515,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-02T15:47:14Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/569","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":569,"html_url":"https://github.com/openframeworks/openFrameworks/issues/569","assignee":null,"title":"saving an image with the image quality flag set to high or best causes empty jpegs. ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-05-11T13:53:42Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":883385,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T03:48:47Z","body":"Currently using an FBO with an ofCamera is really tricky, as both setup their own viewing matrix and viewport. \r\n\r\nDoes it make sense to have ofFbo use an ofCamera internally?\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/568","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":568,"html_url":"https://github.com/openframeworks/openFrameworks/issues/568","assignee":null,"title":"ofFbo and ofCamera do not play well together.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-05-11T13:52:46Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":883380,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-15T18:31:30Z","body":"Greetings,\r\n\r\nI have downloaded the latest master of Openframeworks b4397c1 and I have tried to compile the AllAddons example (just to check if everything was well installed).\r\n\r\nThe ofxSynth library just won't compile (using either GCC or LLVM, Xcode 3 or Xcode4), be it in the allAddons or in it's own examples, here is the error log :\r\n\r\nUndefined symbols for architecture i386:\r\n \"typeinfo for ofxSoundEffect\", referenced from:\r\n typeinfo for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"non-virtual thunk to ofxSoundEffect::setSampleRate(int)\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundBuffer::ofxSoundBuffer()\", referenced from:\r\n ofxSoundSink::ofxSoundSink()in ofxSynth.o\r\n \"vtable for ofxSoundEffect\", referenced from:\r\n ofxSoundEffect::~ofxSoundEffect()in ofxSynthDelayLine.o\r\n ofxSoundEffect::~ofxSoundEffect()in ofxSynthDelayLine.o\r\n \"vtable for ofxSoundSink\", referenced from:\r\n ofxSoundSink::~ofxSoundSink()in ofxSynthDelayLine.o\r\n ofxSoundSink::~ofxSoundSink()in ofxSynthDelayLine.o\r\n \"virtual thunk to ofxSoundSink::getInputs()\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"typeinfo for ofxSoundSink\", referenced from:\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundSink::setSampleRate(int)\", referenced from:\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundSink::getInputs()\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundSink::addInputFrom(ofxSoundSource*)\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"VTT for ofxSoundEffect\", referenced from:\r\n ofxSoundEffect::~ofxSoundEffect()in ofxSynthDelayLine.o\r\n ofxSoundEffect::~ofxSoundEffect()in ofxSynthDelayLine.o\r\n \"ofxSoundEffect::setSampleRate(int)\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundSink::audioIn(float*, int, int, unsigned long long)\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundEffect::audioOut(float*, int, int, unsigned long long)\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundBuffer::~ofxSoundBuffer()\", referenced from:\r\n ofxSoundSink::~ofxSoundSink()in main.o\r\n ofxSoundSink::~ofxSoundSink()in ofxSynthDelayLine.o\r\n ofxSoundSink::~ofxSoundSink()in ofxSynthDelayLine.o\r\nld: symbol(s) not found for architecture i386\r\ncollect2: ld returned 1 exit status\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/566","comments":3,"milestone":null,"number":566,"html_url":"https://github.com/openframeworks/openFrameworks/issues/566","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"ofxSynth won't compile","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2011-05-07T12:25:01Z","state":"open","user":{"url":"https://api.github.com/users/benoitespinola","gravatar_id":"d08687285addcdde144d4eceb4cfa78e","login":"benoitespinola","avatar_url":"https://secure.gravatar.com/avatar/d08687285addcdde144d4eceb4cfa78e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":720460},"id":862321,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:48:58Z","body":"I'm fixing it using \r\n_textField.transform = CGAffineTransformMakeRotation(M_PI*1.5f);\r\nin - (void) setFrame: (CGRect) rect\r\nto fix it now.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/565","comments":1,"milestone":null,"number":565,"html_url":"https://github.com/openframeworks/openFrameworks/issues/565","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"Textfield in ofxiPhoneKeyboard upside down in landscape","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-05-05T14:20:42Z","state":"open","user":{"url":"https://api.github.com/users/labatrockwell","gravatar_id":"e6d243a56cd069a225f56f4a388e8838","login":"labatrockwell","avatar_url":"https://secure.gravatar.com/avatar/e6d243a56cd069a225f56f4a388e8838?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","id":313943},"id":853551,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=10 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4934'), ('content-length', '43807'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"78e9c565cba926f6a72fa2b7dd021b78"'), ('date', 'Tue, 29 May 2012 19:27:19 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-12-03T21:20:01Z","body":"Does anybody know the status of this?\r\nI would like to help but I'm not sure where to start. Is the `iphone-dev-0061` the branch to work on this?\r\nI just want to know what's been done or whether there are plans in the works.\r\n\r\nI have posted this in the forum but have not received any response.\r\nhttp://forum.openframeworks.cc/index.php/topic,4089.msg29156.html#msg29156","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/564","comments":1,"milestone":null,"number":564,"html_url":"https://github.com/openframeworks/openFrameworks/issues/564","assignee":null,"title":"ofxShader for iOS","labels":[],"closed_at":null,"created_at":"2011-05-04T18:35:58Z","state":"open","user":{"url":"https://api.github.com/users/chrisirhc","gravatar_id":"22d0038769b1786fcdc0983bdb2e4033","login":"chrisirhc","avatar_url":"https://secure.gravatar.com/avatar/22d0038769b1786fcdc0983bdb2e4033?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":132584},"id":850096,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-12T08:58:12Z","body":"it's compiling now but doesn't work in openGL ES.\r\n\r\nalso take a look at setupShadow generating depthBuffer as texture, when it's released as a renderbuffer","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/560","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":560,"html_url":"https://github.com/openframeworks/openFrameworks/issues/560","assignee":null,"title":"fix ofFbo for openGL ES","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/android","name":"android","color":"2bc4ad"}],"closed_at":null,"created_at":"2011-04-30T17:21:39Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":833772,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-04-26T00:37:56Z","body":"nothing fancy, but I have an implementation of ofxCvHaarFinder that draws, and it's useful for debugging. something like:\n\n``` c++\n void ofxCvHaarFinder::draw( float x, float y ) {\n\t\t// ofPushStyle(); ?\n\t\tofEnableAlphaBlending();\n\t\tofSetColor( 255,0,200,100 );\n\t\tglPushMatrix();\n\t\t\n\t\tglTranslatef( x, y, 0.0 );\n\t\t\n\t\tofNoFill();\n\t\tfor( int i=0; i007 than <007. this can be changed in the ofStyle() constructor.\r\n\r\nalso, @elliotwoods it would be great to have a comment next to each of the constants in enum ofDrawBitmapMode explaining what they do.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/520","comments":1,"milestone":null,"number":520,"html_url":"https://github.com/openframeworks/openFrameworks/issues/520","assignee":null,"title":"ofDrawBitmapString default behavior has changed","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-04-01T06:37:16Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":723496,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-31T17:49:33Z","body":"it's obvious if you've used opengl directly before, but i would expect something more like:\r\n\r\n\tvoid ofSetTextureInterpolation(ofInterpolationType downscale, ofInterpolationType upscale)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/519","comments":0,"milestone":null,"number":519,"html_url":"https://github.com/openframeworks/openFrameworks/issues/519","assignee":null,"title":"ofSetMinMagFilters() is confusingly named","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-03-31T17:49:33Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":721833,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-17T00:51:48Z","body":"movieGrabberExample => videoGrabberExample\r\nmoviePlayerExample => videoPlayerExample\r\n\r\nthere are probably other examples of this, but this one strikes me as particularly odd. there's probably some historical reason... :)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/510","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":510,"html_url":"https://github.com/openframeworks/openFrameworks/issues/510","assignee":null,"title":"movieGrabber/PlayerExamples are poorly named","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-03-22T06:47:02Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":693126,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-21T01:01:25Z","body":"i accidentally initialized my ofFbo with setupShadow() instead of setup(), and when i said draw() it caused EXC_BAD_ACCESS. draw() calls getTexture(), so maybe the best way to handle this is to put a check inside getTexture() like this:\r\n\r\n\tif(textures.size() == 0) {\r\n\t\tofLog(OF_LOG_ERROR, \"You must call ofFbo::setup() before you can use an FBO\");\r\n\t}\r\n\treturn textures[attachmentPoint];","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/507","comments":0,"milestone":null,"number":507,"html_url":"https://github.com/openframeworks/openFrameworks/issues/507","assignee":null,"title":"ofFbo::draw() causes EXC_BAD_ACCESS when setup() isn't called","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-03-21T01:01:25Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":689769,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-20T17:35:05Z","body":"i know the reason for this is because the mappings are OS and mouse dependent, and that it's GLUT slowing us down here, but i think we could at least add a guess like OF_MOUSE_LEFT = 0, OF_MOUSE_MIDDLE= 1, OF_MOUSE_RIGHT = 2, etc.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/503","comments":0,"milestone":null,"number":503,"html_url":"https://github.com/openframeworks/openFrameworks/issues/503","assignee":null,"title":"no OF_MOUSE_LEFT or OF_MOUSE_RIGHT","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-03-20T17:35:05Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":688955,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T15:48:41Z","body":"you need to use bUse3D flag but even then graphics aren't saved to pdf as they look on screen. \r\ntry the OF_ORIENTATION_90_LEFT or 90_RIGHT to reproduce. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/502","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":502,"html_url":"https://github.com/openframeworks/openFrameworks/issues/502","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"ofSetOrientation doesn't work for cairo","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-03-18T09:17:36Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":684091,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-18T03:56:02Z","body":"it looks like ofGLRenderer::drawString is currently overriding whatever the current blend mode is:\n\n\tglEnable(GL_BLEND);\n\tglBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);\n\nand then setting it back later.\n\ni'm guessing this is so the empty/alpha part of the bitmap font is drawn.\n\ninstead of using glBlendFunc i would suggest glAlphaFunc... but it looks like as of OpenGL ES 2.0 glAlphaFunc doesn't exist anymore :(\n\nnot sure what to do, but it's really weird to have ofSetColor(255) work, but not ofSetColor(255, 254). e.g.:\n\n\tofBackground(128);\n\tofEnableAlphaBlending();\n\tofSetColor(255, 254);\n\tofDrawBitmapString(\"255, 254\", 10, 20);\n\tofSetColor(255, 255);\n\tofDrawBitmapString(\"255, 255\", 10, 40);\n\tofDisableAlphaBlending();","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/501","comments":0,"milestone":null,"number":501,"html_url":"https://github.com/openframeworks/openFrameworks/issues/501","assignee":null,"title":"ofDrawBitmapString / ofGLRenderer::drawString doesn't work with alpha","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-03-18T03:54:34Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":683732,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-03T10:41:35Z","body":"right now ofImage::getPixelsRef() is always non-const, as well as ofImage::getPixels()","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/500","comments":4,"milestone":null,"number":500,"html_url":"https://github.com/openframeworks/openFrameworks/issues/500","assignee":null,"title":"missing const version of getPixelsRef()","labels":[],"closed_at":null,"created_at":"2011-03-14T19:14:21Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":672608,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=11 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4933'), ('content-length', '40272'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"b87c61471553096d60e5ff8b292ff704"'), ('date', 'Tue, 29 May 2012 19:27:20 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"milestone":null,"state":"open","user":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"osx movieplayer problem on reloading","html_url":"https://github.com/openframeworks/openFrameworks/issues/495","comments":0,"assignee":null,"updated_at":"2011-03-09T16:17:56Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=7&t=5729&view=unread#unread","number":495,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/495","labels":[{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":659446,"closed_at":null,"created_at":"2011-03-09T16:17:56Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"GLUT 007 hack","html_url":"https://github.com/openframeworks/openFrameworks/issues/491","comments":0,"assignee":null,"updated_at":"2011-03-04T14:44:53Z","body":"it seems that some commented defines are still being preprocessed and making gdb behave weird:\r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=4&t=5602&view=unread#unread","number":491,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/491","labels":[{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":646846,"closed_at":null,"created_at":"2011-03-04T14:44:53Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"close corners on basic shapes?","html_url":"https://github.com/openframeworks/openFrameworks/issues/490","comments":0,"assignee":null,"updated_at":"2011-03-03T16:35:17Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=8&t=5678&view=unread#unread\r\n\r\nperhaps use style.linewith? won't work if you use glLineWidth though","number":490,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/490","labels":[{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":643861,"closed_at":null,"created_at":"2011-03-03T16:35:17Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"893ec14dc008e3774afe5841115920d6","url":"https://api.github.com/users/jonbro","login":"jonbro","id":1597,"avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofOrientation incompatible with iOS addon","html_url":"https://github.com/openframeworks/openFrameworks/issues/486","comments":0,"assignee":{"gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-10T04:50:03Z","body":"the existing iOS orientation methods are not compatible with the virtual functions that they inherit from. The new virtuals use a ofOrientation enum, and the old functions use ints.\r\n\r\nThis issue was introduced in https://github.com/openframeworks/openFrameworks/commit/38011d54","number":486,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/486","labels":[{"color":"2babad","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":635112,"closed_at":null,"created_at":"2011-02-28T18:14:04Z"},{"milestone":{"state":"open","description":"","title":"0073 Release","due_on":"2012-07-30T07:00:00Z","closed_issues":0,"open_issues":5,"number":6,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":62090,"created_at":"2011-12-03T15:37:49Z"},"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"grabFrame/idleFrame deprecation","html_url":"https://github.com/openframeworks/openFrameworks/issues/484","comments":12,"assignee":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-04-24T21:04:32Z","body":"it would be nice to start deprecating grabFrame() and idleFrame() (but maybe wait a couple years to actually remove them) , and change the examples to only use update() and isFrameNew().","number":484,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/484","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"37c200","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy"}],"id":613171,"closed_at":null,"created_at":"2011-02-20T17:56:02Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"ace632f74988653fdbde09225134bfdd","url":"https://api.github.com/users/nemik","login":"nemik","id":62301,"avatar_url":"https://secure.gravatar.com/avatar/ace632f74988653fdbde09225134bfdd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofVideoPlayer bug when loading subsequent movies after the first one","html_url":"https://github.com/openframeworks/openFrameworks/issues/475","comments":0,"assignee":null,"updated_at":"2011-02-14T17:11:08Z","body":"Within 0062, inside libs/openFrameworks/video/ofVideoPlayer.cpp on line 314 there is a check for height and width not being 0, then \"bDoWeAlreadyHaveAGworld = true;\" is set. However, this prevents other movies after the first from being loaded into that instance of ofVideoPlayer. \r\nI have posted about this in the forum with a fix (to just remove that check) here: http://www.openframeworks.cc/forum/viewtopic.php?f=8&t=5222\r\n\r\nInside the latest code, it is within ofQuickTimePlayer.cpp https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/video/ofQuickTimePlayer.cpp#L281.","number":475,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/475","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":598097,"closed_at":null,"created_at":"2011-02-14T17:11:08Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"object init/load state is not consistently testable","html_url":"https://github.com/openframeworks/openFrameworks/issues/463","comments":0,"assignee":null,"updated_at":"2011-02-07T19:58:23Z","body":"I like to be able to know when an object has successfully initialized or loaded and OF provides for this, for the most part, but in an inconsistent manner ie\r\n\r\nofVideoGrabber::initGrabber() returns a bool, but ofVideoGrabber:bInitialized is protected and therefore not accessible\r\n\r\nwhile\r\n\r\nofTrueTypeFont::bLoadedOk is public, but ofTrueTypeFont::loadFont() returns void\r\n\r\nand\r\n\r\nofImage::loadImage() returns a bool and ofLoadImage::bAllocated() returns a bool, yet ofImage::setFromPixels() returns void\r\n\r\nI propose all loadable/initable objects have loading functions which always return a bool and a testable function (isInited(), isLoaded(), etc) for use after loading. Ideally, the testable functions would always be named the same ie myImage.isLoaded(), myVideoGrabber().isLoaded(), myFont.isLoaded() but of course a general name may not apply to all situations (myVideoGrabber.isInited() probably makes more sense).\r\n\r\nHell, all the load functions could be overloaded ie ofImage::load(string filename), ofImage::load(ofPixels pixels), ofImage::load(unsigned char* pixels) across different objects, ofTrueTypeFont::load(string filename), ofVideoGrabber::load(int w, int h, int deviceID). This consistency looks nice to anal me. but might be confusing to newbies and of course would break old code (unless wrapped for legacy compatibility). It seems a little annoying that every objects seems to have it's own way of checking this and that ...","number":463,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/463","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"37c200","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy"}],"id":581395,"closed_at":null,"created_at":"2011-02-07T19:58:23Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"8022cb5f529975afbc64cc9312008d8c","url":"https://api.github.com/users/nardove","login":"nardove","id":277690,"avatar_url":"https://secure.gravatar.com/avatar/8022cb5f529975afbc64cc9312008d8c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"OpenCV cvSobel() not working with latest master branch","html_url":"https://github.com/openframeworks/openFrameworks/issues/462","comments":0,"assignee":null,"updated_at":"2011-02-07T15:58:19Z","body":"Hi,\r\n\r\nI get the following error:\r\n// INIT OF ERROR\r\nOF_WARNING: ofBaseVideoPlayer::setPixelFormat not implemented\r\nOpenCV Error: Assertion failed (src.size() == dst.size() && src.channels() == dst.channels() && ((src.depth() == CV_8U && (dst.depth() == CV_16S || dst.depth() == CV_32F)) || (src.depth() == CV_32F && dst.depth() == CV_32F))) in cvSobel, file /Users/theo/Documents/CODE/__OPENFRAMEWORKS/gitOF/__BuildAllLibs/OpenCV-2.2.0/modules/imgproc/src/deriv.cpp, line 347\r\nterminate called after throwing an instance of 'cv::Exception'\r\n what(): /Users/theo/Documents/CODE/__OPENFRAMEWORKS/gitOF/__BuildAllLibs/OpenCV-2.2.0/modules/imgproc/src/deriv.cpp:347: error: (-215) src.size() == dst.size() && src.channels() == dst.channels() && ((src.depth() == CV_8U && (dst.depth() == CV_16S || dst.depth() == CV_32F)) || (src.depth() == CV_32F && dst.depth() == CV_32F)) in function cvSobel\r\n// END OF ERROR\r\n\r\nWhen I try to call the cvSobel method like this:\r\ncvSobel( grayImage.getCvImage(), grayImage.getCvImage(), 0, 1, 3 );\r\n\r\nThis works fine in 0062.\r\n\r\nCheers\r\n- rS","number":462,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/462","labels":[{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":580717,"closed_at":null,"created_at":"2011-02-07T15:58:19Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"get number of input devices and device IDs from ofVideoGrabber","html_url":"https://github.com/openframeworks/openFrameworks/issues/461","comments":0,"assignee":null,"updated_at":"2011-02-07T19:38:51Z","body":"Currently, the ofVideoGrabber can list devices to stdout, but does not return the number of available devices. I propose that either listDevices() return an int or a new function be added, something like getNumDevices() or a getDeviceNums() which returns a vector of valid device ids. This could be related to Arturo's Issue where the devices could be retrieved as strings. I think it makes sense to have these as static functions so that you could open all available cameras into an Array of ofVideoGrabbers by retrieving the number of devices and their ids to open them.","number":461,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/461","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":580556,"closed_at":null,"created_at":"2011-02-07T15:24:21Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"saveImage() and other save operations should create missing directories","html_url":"https://github.com/openframeworks/openFrameworks/issues/460","comments":8,"assignee":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-08T15:56:48Z","body":"i feel like it happens relatively often where i try to save an image (for example) and the parent directories don't exist, so it just fails without really saying anything.\r\n\r\nit would be nice if the dir(s) were just created automatically for you.","number":460,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/460","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":579790,"closed_at":null,"created_at":"2011-02-07T07:52:25Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofTexture::allocate not checking for unnecessary reallocation","html_url":"https://github.com/openframeworks/openFrameworks/issues/454","comments":0,"assignee":null,"updated_at":"2011-02-06T04:26:44Z","body":"ofPixels::allocate is smart in that it doesn't reallocate if you ask for the same size as what's already there. ofTexture should work the same way to avoid unnecessary overhead.","number":454,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/454","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":578069,"closed_at":null,"created_at":"2011-02-06T04:26:44Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofViewport doesn't work with ofSetOrientation","html_url":"https://github.com/openframeworks/openFrameworks/issues/449","comments":0,"assignee":null,"updated_at":"2011-02-02T00:03:09Z","body":"maybe a generic 'transformer' function would handle both this and mouse coordinates, and anything else? ofPoint ofGetAsbolutePosition(x,y)?","number":449,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/449","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":568540,"closed_at":null,"created_at":"2011-02-02T00:03:09Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"no way to get imageType of ofVideoGrabber","html_url":"https://github.com/openframeworks/openFrameworks/issues/446","comments":0,"assignee":null,"updated_at":"2011-01-31T19:26:41Z","body":"ofVideoGrabber has getOFPixels in the .h, but it isn't implemented in the .cpp.\r\n\r\nmaybe this is just a signal that ofPixels stuff needs to be resolved soon... :) i'd be glad to help with this if possible.","number":446,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/446","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":565122,"closed_at":null,"created_at":"2011-01-31T19:26:41Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofGetElapsedTimeMillis returns an int instead of unsigned long","html_url":"https://github.com/openframeworks/openFrameworks/issues/428","comments":0,"assignee":null,"updated_at":"2011-01-28T06:28:01Z","body":"the start time is stored internally as an unsigned long, but ofGetElapsedTimeMillis returns it as an int. ofGetElapsedTimef also does calculations using time as an int. this means time wraps around every (2^31 - 1) milliseconds in days = 24.8 days.\r\n\r\nas an unsigned long it would be (2^64 - 1) milliseconds in years = 584 million years :)","number":428,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/428","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"65a300","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize"}],"id":558215,"closed_at":null,"created_at":"2011-01-28T06:28:01Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"4fc88ba881fee72fc4c5de473dc2ebbf","url":"https://api.github.com/users/NickHardeman","login":"NickHardeman","id":142694,"avatar_url":"https://secure.gravatar.com/avatar/4fc88ba881fee72fc4c5de473dc2ebbf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Check ofShader Texture Wrap Parameters","html_url":"https://github.com/openframeworks/openFrameworks/issues/424","comments":1,"assignee":null,"updated_at":"2011-12-02T21:05:54Z","body":"I thought checking for custom texture wrapping in ofShader might be useful. Not sure how to add a label to this :/\n\n#include ofGraphics.h\n\nvoid setUniformTexture(const char* name, ofBaseHasTexture& img, int textureLocation=-1);\nvoid setUniformTexture(const char* name, ofTexture& img, int textureLocation=-1);\n\nvoid ofShader::setUniformTexture(const char* name, ofTexture& tex, int textureLocation) {\n\tif(bLoaded) {\n\t\t\n\t\tGLfloat wrapS = -1;\n\t\tGLfloat wrapT = -1;\n\t\t\n\t\tif (ofGetUsingCustomTextureWrap()) {\n\t\t\tglGetTexParameterfv(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, &wrapS);\n\t\t\tglGetTexParameterfv(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, &wrapT);\n\t\t}\n\t\t\n\t\tofTextureData texData = tex.getTextureData();\n\t\tif (textureLocation < 0) textureLocation = texData.textureID;\n\t\tglActiveTexture(GL_TEXTURE0 + textureLocation);\n\t\tglEnable(texData.textureTarget);\n\t\t\n\t\tif(wrapS > 0) glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, wrapS);\n\t\tif(wrapT > 0) glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, wrapT);\n\t\t\n\t\tglBindTexture(texData.textureTarget, texData.textureID);\n\t\tglDisable(texData.textureTarget);\n\t\tsetUniform1i(name, texData.textureID);\n\t\tglActiveTexture(GL_TEXTURE0);\n\t}\n}","number":424,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/424","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":556923,"closed_at":null,"created_at":"2011-01-27T19:43:31Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"problem with reloading movies in osx","html_url":"https://github.com/openframeworks/openFrameworks/issues/423","comments":0,"assignee":null,"updated_at":"2011-01-24T22:34:29Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=8&t=5222","number":423,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/423","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"2a8296","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS"}],"id":548302,"closed_at":null,"created_at":"2011-01-24T22:34:29Z"},{"milestone":{"state":"open","description":"","title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"number":5,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61810,"created_at":"2011-12-02T15:29:48Z"},"state":"open","user":{"gravatar_id":"117a7eecfee7c7f7e954623fd96e1b6e","url":"https://api.github.com/users/snibbe","login":"snibbe","id":581517,"avatar_url":"https://secure.gravatar.com/avatar/117a7eecfee7c7f7e954623fd96e1b6e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Retina display support **that doesn't crash devices!** with backward compatibility to OS 3.0","html_url":"https://github.com/openframeworks/openFrameworks/issues/421","comments":2,"assignee":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2011-12-05T22:03:15Z","body":"Hi guys,\r\n\r\nI posted to the OF forum a solution back in August to support retina display with backward compatibility to pre-OS 4.0 devices:\r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=25&t=4185&start=15\r\n\r\nIf it's still outstanding, here's the solution!\r\n\r\nEAGLView.mm, initWithFrame, after the eaglLayer.drawableProperties assignment, add:\r\n\r\n if ([[UIScreen mainScreen] respondsToSelector:@selector(scale)]) {\r\n if ([[UIScreen mainScreen] scale] > 1) {\r\n // code below doesn't work on iPad 3.2 OS and below, but doesn't need to because scale is 1\r\n [self setContentScaleFactor:[[UIScreen mainScreen] scale]];\r\n }\r\n }\r\n\r\nofAppiPhoneWindow.mm, timerLoop, after [ofxiPhoneGetGLView() startRender]; add:\r\n\r\n int ofwidth = ofGetWidth();\r\n int ofheight = ofGetHeight();\r\n \r\n if ([[UIScreen mainScreen] respondsToSelector:@selector(scale)]) {\r\n ofwidth *= [[UIScreen mainScreen] scale];\r\n ofheight *= [[UIScreen mainScreen] scale];\r\n }\r\n\r\nthen change the glViewport calls:\r\n\r\n\t// this could be taken out and included in ofAppBaseWIndow\r\n\tif(orientation == OFXIPHONE_ORIENTATION_PORTRAIT || orientation == OFXIPHONE_ORIENTATION_UPSIDEDOWN)\r\n\t\tglViewport( 0, 0, ofwidth, ofheight );\r\n\telse\r\n\t\tglViewport( 0, 0, ofheight, ofwidth );","number":421,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/421","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"2a8296","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS"}],"id":548070,"closed_at":null,"created_at":"2011-01-24T20:52:18Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"something to wrap glMultMatrixf","html_url":"https://github.com/openframeworks/openFrameworks/issues/418","comments":0,"assignee":null,"updated_at":"2011-01-22T15:57:37Z","body":"suggestions:\r\n\r\n ofPopMatrix(ofMatrix4x4 m)\r\n\r\n ofMultMatrix(ofMatrix4x4 m)\r\n\r\n ofMatrix4x4::apply();\r\n ofMatrix4x4::push();","number":418,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/418","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":543729,"closed_at":null,"created_at":"2011-01-22T15:57:37Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"3D isn't scale invariant in certain parts","html_url":"https://github.com/openframeworks/openFrameworks/issues/417","comments":0,"assignee":null,"updated_at":"2011-01-22T15:24:07Z","body":"e.g.\r\n\r\n void ofEasyCam::reset() {\r\n\ttarget.resetTransform();\r\n\tdistance = 100;\r\n }\r\n\r\nofNode's\r\n\tvirtual void customDraw() {\r\n\t\tofBox(10);\r\n\t\tofDrawAxis(20);\r\n\t}\r\n\r\nsuggestions:\r\n\r\nglobal variable called something like 'base3DScaleFactor = 10.0f' which will affect all of these current constant scale factors","number":417,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/417","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":543694,"closed_at":null,"created_at":"2011-01-22T15:24:07Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","url":"https://api.github.com/users/vanderlin","login":"vanderlin","id":149997,"avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Simulator not working with any examples ","html_url":"https://github.com/openframeworks/openFrameworks/issues/414","comments":3,"assignee":{"gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-10T05:00:35Z","body":"Getting this error after the app launches in simulator mode \r\n\r\nDetected an attempt to call a symbol in system libraries that is not present on the iPhone:\r\n\r\n","number":414,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/414","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"2babad","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":539979,"closed_at":null,"created_at":"2011-01-20T20:17:35Z"},{"milestone":{"state":"open","description":"","title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"number":5,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61810,"created_at":"2011-12-02T15:29:48Z"},"state":"open","user":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofCamera::setPan is broken","html_url":"https://github.com/openframeworks/openFrameworks/issues/413","comments":1,"assignee":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-14T15:11:06Z","body":"","number":413,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/413","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"31e03a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed"}],"id":539915,"closed_at":null,"created_at":"2011-01-20T20:01:00Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"add setMultisampling method to glutWindow","html_url":"https://github.com/openframeworks/openFrameworks/issues/412","comments":0,"assignee":null,"updated_at":"2011-01-20T19:33:30Z","body":"multisampling is now working in linux through the display string option. perhaps we could add a method to easily set it if it also works on win/osx","number":412,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/412","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"244569","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows"}],"id":539845,"closed_at":null,"created_at":"2011-01-20T19:33:30Z"},{"milestone":{"state":"open","description":"","title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"number":5,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61810,"created_at":"2011-12-02T15:29:48Z"},"state":"open","user":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofCamera / ofEasyCamera does not work correctly for iPhone / iPad","html_url":"https://github.com/openframeworks/openFrameworks/issues/410","comments":2,"assignee":{"gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-14T15:11:06Z","body":"Needs to take into account the rotation and the flipping happening in ofAppiPhoneWindow::timerLoop() \n\nAlso the internal call to ofViewport causes clipping in horizontal mode. \n\nIts currently very difficult to setup the camera correctly for iPad / iPhone - would be great if the default for ofCamera would be to start with the typical OF camera view. ","number":410,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/410","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"2babad","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"31e03a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed"}],"id":539744,"closed_at":null,"created_at":"2011-01-20T18:59:10Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","url":"https://api.github.com/users/vanderlin","login":"vanderlin","id":149997,"avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofEnableLighting","html_url":"https://github.com/openframeworks/openFrameworks/issues/406","comments":0,"assignee":null,"updated_at":"2011-01-19T19:39:37Z","body":"ofLight bug not sure what the ios equivalent is..\r\n\r\nglColorMaterial(GL_FRONT_AND_BACK, GL_AMBIENT_AND_DIFFUSE); is not supported in IOS","number":406,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/406","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":537416,"closed_at":null,"created_at":"2011-01-19T19:39:36Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofViewport doesn't match rest of openFrameworks coordinates","html_url":"https://github.com/openframeworks/openFrameworks/issues/405","comments":0,"assignee":null,"updated_at":"2011-01-19T13:24:54Z","body":"Suggest change line 126 of ofGraphics.h to\r\n\tglViewport(x, ofGetHeight() - y - height, width, height);\r\n\r\nto be in line with rest of openFrameworks coordinate system\r\ne.g. ofRect(myRect) matches ofViewport(myRect)\r\n","number":405,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/405","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"31e03a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed"}],"id":536614,"closed_at":null,"created_at":"2011-01-19T13:24:53Z"}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=12 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4932'), ('content-length', '38352'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"679d499a026b6f6d6a1e20857a7392dc"'), ('date', 'Tue, 29 May 2012 19:27:21 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-01-17T23:39:31Z","body":"it should be only in the implementations and queried by the grabber/player in case an implementation doesn't support a format if not the app can crash or have really weird results","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/403","comments":0,"milestone":null,"number":403,"html_url":"https://github.com/openframeworks/openFrameworks/issues/403","assignee":null,"title":"setPixelFormat shouldn't be stored in videoGrabber/Player","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-17T23:39:31Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":532954,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-17T16:37:42Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/400","comments":0,"milestone":null,"number":400,"html_url":"https://github.com/openframeworks/openFrameworks/issues/400","assignee":null,"title":"ofTTF should have setAnchorPercent so you can draw strings centered, right aligned etc","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography","color":"DDDDDD"}],"closed_at":null,"created_at":"2011-01-17T16:37:42Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":532096,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-03-20T17:33:14Z","body":"every frame, it should update the pmouse value. so if you don't move the mouse, the pmouse value is equal to the current value.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/391","comments":1,"milestone":null,"number":391,"html_url":"https://github.com/openframeworks/openFrameworks/issues/391","assignee":null,"title":"ofGetPreviousMouseX/Y() does not update per frame","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-16T07:21:15Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":529705,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-03-20T17:32:59Z","body":"this is a limitation to glut, but it might be hackable on each system separately.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/389","comments":1,"milestone":null,"number":389,"html_url":"https://github.com/openframeworks/openFrameworks/issues/389","assignee":null,"title":"mouse position doesn't update until mouse is moved","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-16T07:11:53Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":529700,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-03-13T21:10:48Z","body":"following error appears when i try to load an image; commenting out the call to loadImage(\"...\") makes the error go away.\n\n Undefined symbols:\n \"std::basic_ostream >& std::__ostream_insert >(std::basic_ostream >&, char const*, int)\", \n referenced from:\n Poco::Net::HTTPClientSession::proxyAuthenticateImpl(Poco::Net::HTTPRequest&)in PocoNet.a(HTTPClientSession.o)\n Poco::Net::HTTPClientSession::proxyAuthenticateImpl(Poco::Net::HTTPRequest&)in PocoNet.a(HTTPClientSession.o)\n Poco::Net::HTTPRequest::write(std::basic_ostream >&) constin PocoNet.a(HTTPRequest.o)\n Poco::Net::HTTPRequest::write(std::basic_ostream >&) constin PocoNet.a(HTTPRequest.o)\n Poco::Net::HTTPRequest::write(std::basic_ostream >&) constin PocoNet.a(HTTPRequest.o)\n Poco::Net::MessageHeader::write(std::basic_ostream >&) constin PocoNet.a(MessageHeader.o)\n Poco::Net::MessageHeader::write(std::basic_ostream >&) constin PocoNet.a(MessageHeader.o)\n Poco::Net::HTTPResponse::write(std::basic_ostream >&) constin PocoNet.a(HTTPResponse.o)\n Poco::Net::HTTPResponse::write(std::basic_ostream >&) constin PocoNet.a(HTTPResponse.o)\n\nld: symbol(s) not found\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/387","comments":1,"milestone":null,"number":387,"html_url":"https://github.com/openframeworks/openFrameworks/issues/387","assignee":null,"title":"Linker error when loading image (Poco::Net related?)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-16T05:57:51Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"id":529646,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-15T17:01:08Z","body":"would be nice if it was a float (0-1) and not an int(0-100) for standardization with every other audio thing in the universe aside from quicktime","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/375","comments":2,"milestone":null,"number":375,"html_url":"https://github.com/openframeworks/openFrameworks/issues/375","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"ofVideoPlayer setVolume uses an int","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"closed_at":null,"created_at":"2011-01-15T23:03:57Z","state":"open","user":{"url":"https://api.github.com/users/stfj","gravatar_id":"b089227a1748a2d70cdfc4ef00b325ad","login":"stfj","avatar_url":"https://secure.gravatar.com/avatar/b089227a1748a2d70cdfc4ef00b325ad?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":177578},"id":529268,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-14T19:30:31Z","body":"glDrawBitmapString doesn't work when GL_LIGHTING is enabled.\r\n\r\nwell, it works... but it is black because it isn't reflecting any light. regardless of the ofSetColor.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/357","comments":0,"milestone":null,"number":357,"html_url":"https://github.com/openframeworks/openFrameworks/issues/357","assignee":null,"title":"glDrawBitmapString vs GL_LIGHTING","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-14T19:30:31Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":527591,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-14T01:33:38Z","body":"some of the core functions only work with 2d points, others only with 3d points, some work with both. but they all take ofPoints.\r\n\r\nit's good for teaching purposes to have ofPoints because you don't have to explain what a 'vector' is, but it's unclear for advanced users whether the functions take 2d or 3d points...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/347","comments":0,"milestone":null,"number":347,"html_url":"https://github.com/openframeworks/openFrameworks/issues/347","assignee":null,"title":"none of the core functions report how many dimensions they work for","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-01-14T01:33:38Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":526094,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-13T16:16:40Z","body":"e.g., GL_DEPTH_TEST.\r\n\r\none of the reasons for this is that it's not obvious to newbies what common features are available.\r\n\r\nanother is that i've seen lots of people write GL_DEPTH instead, which obviously doesn't work.\r\n\r\nthere might be some others too, see processing's hint():\r\n\r\nhttp://processing.org/reference/hint_.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/340","comments":0,"milestone":null,"number":340,"html_url":"https://github.com/openframeworks/openFrameworks/issues/340","assignee":null,"title":"OF wrapper for basic gl functions that aren't intuitive to newbies","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"closed_at":null,"created_at":"2011-01-13T16:16:40Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":524875,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-27T13:35:42Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/337","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":337,"html_url":"https://github.com/openframeworks/openFrameworks/issues/337","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"ofFileDialog allow folder selection ( works on os x ) needs code for win and linux","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-01-13T05:21:53Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":523837,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T15:11:06Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/330","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":330,"html_url":"https://github.com/openframeworks/openFrameworks/issues/330","assignee":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"title":"OpenCv 2.2 for Win ( CB and VS )","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"}],"closed_at":null,"created_at":"2011-01-12T19:09:37Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":522789,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-04T14:06:34Z","body":"currentStyle stores everything about the current style, so it can be used rather than things like drawMode for tracking how things should currently be draw.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/325","comments":1,"milestone":null,"number":325,"html_url":"https://github.com/openframeworks/openFrameworks/issues/325","assignee":null,"title":"drawMode can be deprecated, currentStyle.bFill should be used instead","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-12T15:41:11Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":522255,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-12T15:34:48Z","body":"ordering for code completion is a little weird.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/324","comments":0,"milestone":null,"number":324,"html_url":"https://github.com/openframeworks/openFrameworks/issues/324","assignee":null,"title":"ofPushView/ofPopView appear before ofPushMatrix/ofPopMatrix","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"}],"closed_at":null,"created_at":"2011-01-12T15:34:48Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":522231,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-10T22:30:48Z","body":"under the /video directory","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/311","comments":0,"milestone":null,"number":311,"html_url":"https://github.com/openframeworks/openFrameworks/issues/311","assignee":null,"title":"openFrameworksLib has ofQtUtils included twice","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-10T22:30:48Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":518434,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-10T06:36:27Z","body":"better to use aggregation (helper classes/functions) if necessary for common functionality that have implementation in those classes. making them pure abstract classes will avoid problems with multiple inheritance and easier to extend in case of different behaviour","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/305","comments":0,"milestone":null,"number":305,"html_url":"https://github.com/openframeworks/openFrameworks/issues/305","assignee":null,"title":"no implementation in ofBaseTypes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-10T06:36:27Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":516844,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-05T21:59:59Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/302","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":302,"html_url":"https://github.com/openframeworks/openFrameworks/issues/302","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"Remove Poco CppUnit from all projects ( done on os x )","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-01-10T02:39:28Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":516565,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T01:06:09Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/299","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","closed_issues":0,"number":6,"title":"0073 Release","due_on":"2012-07-30T07:00:00Z","open_issues":5,"created_at":"2011-12-03T15:37:49Z","state":"open","description":"","id":62090},"number":299,"html_url":"https://github.com/openframeworks/openFrameworks/issues/299","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"freetype-2.4.4 for linux","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-01-10T02:38:08Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":516560,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T01:06:08Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/298","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","closed_issues":0,"number":6,"title":"0073 Release","due_on":"2012-07-30T07:00:00Z","open_issues":5,"created_at":"2011-12-03T15:37:49Z","state":"open","description":"","id":62090},"number":298,"html_url":"https://github.com/openframeworks/openFrameworks/issues/298","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"freetype-2.4.4 for windows","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-01-10T02:37:49Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":516559,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-05T21:59:27Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/296","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":296,"html_url":"https://github.com/openframeworks/openFrameworks/issues/296","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"FreeImage 3141 build for windows","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-01-10T02:36:58Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":516556,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-09T20:46:43Z","body":"I think the pixeltype, the gltypeinternal and the gltype should be accessible to the user as well as the loadData(void * data, int w, int h, int glDataType) which is actually protected.\r\n\r\nActual implementation is only limited to a few choice of internalFormat which lead to choice of pixeltype and gltype. It thus doesn't allow from user specific type.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/292","comments":0,"milestone":null,"number":292,"html_url":"https://github.com/openframeworks/openFrameworks/issues/292","assignee":null,"title":"ofTexture should be more flexible","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-01-09T20:46:43Z","state":"open","user":{"url":"https://api.github.com/users/I33N","gravatar_id":"ba8d7c3b4532d3747c30b9be91dc20d5","login":"I33N","avatar_url":"https://secure.gravatar.com/avatar/ba8d7c3b4532d3747c30b9be91dc20d5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":520375},"id":516071,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T10:49:15Z","body":"ofImage::getWidth()/getHeight() are just getters that do absolutely nothing but return a copy of the width and height. these methods should be marked const.\r\n\r\n[added]: there are hacks inside ofxCv that i've had to make because getWidth/getHeight are not const correct. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/288","comments":6,"milestone":null,"number":288,"html_url":"https://github.com/openframeworks/openFrameworks/issues/288","assignee":null,"title":"const correctness - add const to getWidth/getHeight","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-08T02:14:03Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":513779,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2010-11-30T05:13:10Z","body":"This is giving me some crashes. There needs to be a way to disable this when making custom windows. I have tried to do atexit(NULL); but the callback in ofRunApp(ofBaseApp * OFSA) is still being called. \r\n\r\nmaybe something like:\r\n\r\nvoid ofRunApp(ofBaseApp * OFSA, bool useExitCallback);\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/275","comments":0,"milestone":null,"number":275,"html_url":"https://github.com/openframeworks/openFrameworks/issues/275","assignee":null,"title":"atexit(ofExitCallback);","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-11-30T05:13:10Z","state":"open","user":{"url":"https://api.github.com/users/vanderlin","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":149997},"id":445829,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-03-17T02:02:25Z","body":"bottom left corner is inconsistent with every other drawing command in OF, should be top left instead.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/271","comments":7,"milestone":null,"number":271,"html_url":"https://github.com/openframeworks/openFrameworks/issues/271","assignee":null,"title":"ofDrawBitmapString draws from bottom left","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-11-22T21:30:40Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":433297,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-06-03T19:04:08Z","body":"test if this is really useful:\r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=7&t=4889&view=unread#unread\r\n\r\nhe adds a queue just before the color conversion","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/265","comments":0,"milestone":null,"number":265,"html_url":"https://github.com/openframeworks/openFrameworks/issues/265","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"linux videograbber stopping after some time","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2010-11-18T12:07:46Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":426050,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-19T22:47:21Z","body":"ofClear(r,g,b) is inconsistent with ofBackground(r,g,b) because the alpha is 0 by default -- meaning you always have to explicitly declare the alpha to clear the background.\r\n\r\nfurthermore, because all the arguments have default values there is not/cannot exist an ofClear(gray, alpha) to match ofSetColor style","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/264","comments":5,"milestone":null,"number":264,"html_url":"https://github.com/openframeworks/openFrameworks/issues/264","assignee":null,"title":"ofClear uses inconsistent arguments","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2010-11-18T06:15:47Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":425675,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=13 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4931'), ('content-length', '46291'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"bf7e6718fe6b733d04e77e00e220150f"'), ('date', 'Tue, 29 May 2012 19:27:22 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-12-05T21:58:33Z","body":"A lot of OF files are including ofMain / ofConstants.h - this makes compiles super slow. Try to have files only include what they need. Or find a way to break things up into the most often used ( windows.h etc ) and less used. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/255","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":255,"html_url":"https://github.com/openframeworks/openFrameworks/issues/255","assignee":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"title":"COMPILE SPEED UP - cleanup internal includes to avoid ofMain.h and ofConstants.h","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2010-11-11T21:14:05Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":413771,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T20:11:33Z","body":"ofHideCursor()/ofShowCursor()\r\n\r\nofEnableArbTex()\r\nofEnableSetupScreen()\r\nofEnableDataPath()\r\nofEnableAlphaBlending()\r\nofEnableSmoothing()\r\n\r\nofSetFullscreen() + ofToggleFullscreen()\r\nofSetVerticalSync()\r\n\r\netc.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/249","comments":1,"milestone":null,"number":249,"html_url":"https://github.com/openframeworks/openFrameworks/issues/249","assignee":null,"title":"normalize option nomenclature (hide/enable/set/etc.)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2010-11-03T22:52:08Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":399214,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T22:03:41Z","body":"some video to test:\r\n\r\nmmsh://live.camstreams.com/cscamglobal16?MSWMExt=.asf\r\n\r\nit works ok with totem so it should be a problem in ofGstUtils","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/245","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":245,"html_url":"https://github.com/openframeworks/openFrameworks/issues/245","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"gstreamer problems with streaming of microsoft video","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2010-10-13T16:33:06Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":360885,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-13T20:13:07Z","body":"I found an annoying bug in ofVideoPlayer.\nThis module do not like to be dynamically created or destroyed.\nCheck this little example :\n\nhttp://knu.free.fr/bug_ofVideoPlayer.zip\n\nLeft-click to create an object playing video.\nRight-click to suppress the last video.\n\nhere are the phenomenons I am facing on my Win7 machine :\n\n- \nIf you create an object, and then you suppress it, and then try to create an object again, the app will crash.\n\n- \nIf you create some objects (lets say 8), and then you suppress all of them, the app will crash before the last one (not always, but most of the time).\n\n\n\nNow in OF source tree, try replacing ofVideoPlayer.cpp with FIX_ofVideoPlayer.cpp (at the root of the zip)\nRebuild the project.\nNow everything should be working as expected.\n\n\nThe modifications I made in the source are marked by : //###############\n\nI do not have time to fully read and understand the quicktime API, so there are chances this workaround is fucking dirty.\nBut at least it seems to work.\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/244","comments":1,"milestone":null,"number":244,"html_url":"https://github.com/openframeworks/openFrameworks/issues/244","assignee":null,"title":"bug in ofVideoPlayer","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2010-10-11T19:56:46Z","state":"open","user":{"url":"https://api.github.com/users/fmauclere","avatar_url":"https://secure.gravatar.com/avatar/1c7dcbab3712f1a4d90bd2c3aa9a3e3d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"1c7dcbab3712f1a4d90bd2c3aa9a3e3d","login":"fmauclere","id":435720},"id":357395,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-10T05:06:06Z","body":"Check out this code - also check if latest ffmpeg is better optimized for iphone.\r\nhttp://github.com/jgh-/FFmpeg-for-iOS","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/240","comments":0,"milestone":null,"number":240,"html_url":"https://github.com/openframeworks/openFrameworks/issues/240","assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"title":"iphone video player - ffmpeg and audioqueues","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-10-06T17:19:57Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":349886,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-10T05:08:56Z","body":"XCode: 3.2.4\nOF: github master @24 Sep 2010\nCompiled as: device base SDK 4.1 release arm7 deployment target 3.2\n\nWeird error: Build ofAudioOutputExample. Add a void testApp::exit() to see if it is called. Run app on ipod touch 2010 version with 4.1 installed.\n\nApp runs OK yet pressing the exit button on front of device quits the app, but xcode keeps running. Digging in a bit it appears not only testApp::exit, but ofExitCallback is not getting called.\n\nSwitch to iPad (no other settings changed) and app runs fine, and exits properly.\n\nSwitch to BaseSDK 3.2 and example runs fine and exits fine on both iPad and iPod.\n\nIdeas? Is this just me? I'm fairly new to OF, XCode and iPhone\n\n[edit]\nOK I worked out that pressing the \"close\" button in 4.1 calls applicationWillResignActive in ofxiPhoneAppDelegate.mm. As a hacky workaround as my app just needs to exit, not sit in background, I added exit(0); to the end of applicationWillResignActive and it seems to work.\n\nWould like to know how to do this properly though.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/236","comments":1,"milestone":null,"number":236,"html_url":"https://github.com/openframeworks/openFrameworks/issues/236","assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"title":"ofExitCallback not being called on iphone4.1?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-09-25T01:55:49Z","state":"open","user":{"url":"https://api.github.com/users/DavidDC","avatar_url":"https://secure.gravatar.com/avatar/a6fdad0c31fcd273a1ba89434fec0419?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"a6fdad0c31fcd273a1ba89434fec0419","login":"DavidDC","id":415101},"id":332379,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-04-19T00:32:33Z","body":"related to #221: texData.bAllocated is only used in the isAllocated method which can be changed from:\r\n\r\n bool ofTexture::bAllocated(){\r\n return texData.bAllocated;\r\n }\r\n\r\nto\r\n\r\n bool ofTexture::bAllocated(){\r\n return texData.textureID!=0;\r\n }\r\n\r\navoiding problems like #221 since we don't have two flags for the same thing","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/228","comments":4,"milestone":null,"number":228,"html_url":"https://github.com/openframeworks/openFrameworks/issues/228","assignee":null,"title":"remove bAllocated in ofTexture?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2010-09-09T14:20:55Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":309191,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T15:45:27Z","body":"Segfault when playing .ogv files on 64 bit linux.\nSee forum post - http://www.openframeworks.cc/forum/viewtopic.php?f=7&t=4582","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/227","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":227,"html_url":"https://github.com/openframeworks/openFrameworks/issues/227","assignee":null,"title":"Ubuntu 64-bit conflict with FMOD when playing ogg theora files","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2010-09-08T14:54:33Z","state":"open","user":{"url":"https://api.github.com/users/pierrep","avatar_url":"https://secure.gravatar.com/avatar/be11c9de8242e7aef0446eceaa289e01?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"be11c9de8242e7aef0446eceaa289e01","login":"pierrep","id":392160},"id":307684,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-08-31T10:54:19Z","body":"It would be nice to have:\r\n\r\n\tconst ofxVec2f xunit2f(1, 0), yunit2f(0, 1);\r\n\tconst ofxVec3f xunit3f(1, 0, 0), yunit3f(0, 1, 0), zunit3f(0, 0, 1);\r\n\r\nOr something similar that allows for more elegant notation when you're multiplying or adding by an axis.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/225","comments":0,"milestone":null,"number":225,"html_url":"https://github.com/openframeworks/openFrameworks/issues/225","assignee":null,"title":"ofxVectorMath constants","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-08-31T10:54:19Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":295913,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-26T18:37:47Z","body":"can this be useful?\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=25&t=4500\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/224","comments":1,"milestone":null,"number":224,"html_url":"https://github.com/openframeworks/openFrameworks/issues/224","assignee":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"title":"gaussian noise","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"}],"closed_at":null,"created_at":"2010-08-26T10:21:24Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":290973,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-10-17T13:58:53Z","body":"ofxOsc causes a memory access violation in VS2008, when you use sendMessage(ofxOscMessage) from within a class.\r\nNo error when you run that from main ofApp","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/214","comments":1,"milestone":null,"number":214,"html_url":"https://github.com/openframeworks/openFrameworks/issues/214","assignee":null,"title":"ofxOsc memory access violation. namespace issue?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-08-04T05:59:22Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":268332,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-14T15:12:26Z","body":"e) get arturo's script to work, or rewrite a new one to just clobber a given directory (and not pull from git, etc as it's doing now). \r\n\r\ntheo - might be good to have two scripts?\r\n1) to pull from git \r\n2) to remove everything not related to a platform - or maybe better just copies the files into a folder for that platform. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/199","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":199,"html_url":"https://github.com/openframeworks/openFrameworks/issues/199","assignee":null,"title":"script that doesn't pull everything from git","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-06-01T13:28:54Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":211418,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-05-25T14:54:52Z","body":"\r\nas per: \r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=8&t=3962&p=20661#p20661\r\n\r\nwe should explain how to use it properly. \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/194","comments":0,"milestone":null,"number":194,"html_url":"https://github.com/openframeworks/openFrameworks/issues/194","assignee":null,"title":"ofGetAppPtr documentation is wrong ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"closed_at":null,"created_at":"2010-05-25T14:54:52Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":205935,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:58:22Z","body":"http://www.glfw.org/release-2.6.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/193","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":193,"html_url":"https://github.com/openframeworks/openFrameworks/issues/193","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"look at glfw - just got updated","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-05-23T21:04:25Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":204247,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T19:20:16Z","body":"I had the L.A.S.E.R. tag software up and running great on my new MacBook Pro but recently my computer did a software update and now something is wrong and I can't properly use the program. I have snow leopard 10.6.3 OS. I'm not totally sure if it was the auto update that caused the issue but it seems like it stopped working after the update. Below I listed the suspected updates. Seems weird to me 2 digital camera RAW updates.\r\n\r\n3/27/10 Digital Camera RAW update 2.7\r\n3/27/10 Safari 4.0.5\r\n3/27/10 Digital Camera RAW update 3.1\r\n3/27/10 iMovie update 8.0.6\r\n\r\n0 com.apple.QuickTime \t0x9408e179 QTMLGrabMutex + 18\r\n1 com.apple.QuickTime \t0x9421b6a3 QTWorkContextCopyForMediaContextID + 28\r\n2 ...uickTimeStreaming.component\t0x14f77c15 HTTPDhlr_CheckForFatalError + 254\r\n3 ...uickTimeStreaming.component\t0x14f77cc6 HTTPDhlr_ReadSYNC + 165\r\n4 ...uickTimeStreaming.component\t0x14f7ab01 HTTPDataHandler_ScheduleData64 + 452\r\n5 ...ple.CoreServices.CarbonCore\t0x949a2d05 callComponentStorage_4444444 + 63\r\n6 ...ple.CoreServices.CarbonCore\t0x949976f0 CallComponentFunctionCommonWithStorage(char**, ComponentParameters*, long (*)(), unsigned long) + 54\r\n7 ...uickTimeStreaming.component\t0x14f784c7 HTTPDataHandler_ComponentDispatch + 110\r\n8 ...ple.CoreServices.CarbonCore\t0x9498fd87 CallComponentDispatch + 29\r\n9 com.apple.QuickTime \t0x94093540 DataHScheduleData64 + 73\r\n10 com.apple.QuickTime \t0x940b5704 NewMovieFromDataRefPriv_priv + 8296\r\n11 com.apple.QuickTime \t0x9419e613 NewMovieFromDataRef_priv + 54\r\n12 com.apple.QuickTime \t0x942fb95e NewMovieFromDataRef + 52\r\n13 com.yourcompany.openFrameworks\t0x0000aa2a createMovieFromURL(std::string, MovieType**&) + 112\r\n14 com.yourcompany.openFrameworks\t0x0000abe2 ofVideoPlayer::loadMovie(std::string) + 182\r\n15 com.yourcompany.openFrameworks\t0x0002fe03 appController::setup() + 2169\r\n16 com.yourcompany.openFrameworks\t0x00002864 ofRunApp(ofSimpleApp*) + 170\r\n17 com.yourcompany.openFrameworks\t0x0003dc06 main + 90\r\n18 com.yourcompany.openFrameworks\t0x00001da2 _start + 216\r\n19 com.yourcompany.openFrameworks\t0x00001cc9 start + 41","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/182","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":182,"html_url":"https://github.com/openframeworks/openFrameworks/issues/182","assignee":null,"title":"ofVideoPlayer - createMovieFromURL broken in 10.6.3 with specific updates?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-04-15T16:20:25Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":172424,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-04-14T15:48:19Z","body":"can we add moments to the blob. \n\nadd CvMoments moments to blob class\n\nand in ofxCvContourFinder.cpp line 119\n\n\t blobs[i].moments.m00 = myMoments->m00;\n\t\tblobs[i].moments.m10 = myMoments->m10;\n\t\tblobs[i].moments.m01 = myMoments->m01;\n\t\tblobs[i].moments.m20 = myMoments->m20;\n\t\tblobs[i].moments.m11 = myMoments->m11;\n\t\tblobs[i].moments.m02 = myMoments->m02;\n\t\tblobs[i].moments.m30 = myMoments->m30;\n\t\tblobs[i].moments.m21 = myMoments->m21;\n\t\tblobs[i].moments.m12 = myMoments->m12;\n\t\tblobs[i].moments.m03 = myMoments->m03;\n\t\t\n\t\tblobs[i].moments.mu20 = myMoments->mu20;\n\t\tblobs[i].moments.mu11 = myMoments->mu11;\n\t\tblobs[i].moments.mu02 = myMoments->mu02;\n\t\tblobs[i].moments.mu30 = myMoments->mu30;\n\t\tblobs[i].moments.mu21 = myMoments->mu21;\n\t\tblobs[i].moments.mu12 = myMoments->mu12;\n\t\tblobs[i].moments.mu03 = myMoments->mu03;\n\n\nthis is good for finding the angle and other info about the contour.\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/181","comments":2,"milestone":null,"number":181,"html_url":"https://github.com/openframeworks/openFrameworks/issues/181","assignee":null,"title":"ofxCvBlobs","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2010-04-14T15:42:22Z","state":"open","user":{"url":"https://api.github.com/users/vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","id":149997},"id":171615,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-29T15:04:04Z","body":"Buffer is 512 but should be 276 ( or something )\r\nSetting it to 256 says the buffer size should be 176 ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/178","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":178,"html_url":"https://github.com/openframeworks/openFrameworks/issues/178","assignee":null,"title":"iPhone sound bug with 1st gen ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-04-11T10:18:58Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":169176,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T19:18:14Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/175","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":175,"html_url":"https://github.com/openframeworks/openFrameworks/issues/175","assignee":null,"title":"bring examples up to date - make sexy","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"}],"closed_at":null,"created_at":"2010-04-06T19:44:04Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166214,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T19:14:03Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/174","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":174,"html_url":"https://github.com/openframeworks/openFrameworks/issues/174","assignee":null,"title":"vertical sync on for mac by default","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-04-06T19:43:21Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166212,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:58:10Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/173","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":173,"html_url":"https://github.com/openframeworks/openFrameworks/issues/173","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"ofAlphaBlending default on","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2010-04-06T19:42:34Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166211,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:57:50Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/172","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":172,"html_url":"https://github.com/openframeworks/openFrameworks/issues/172","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"rgb + alpha -> blit to texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-04-06T19:40:28Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166209,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:57:36Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/171","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":171,"html_url":"https://github.com/openframeworks/openFrameworks/issues/171","assignee":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"title":"sexy shader example","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"}],"closed_at":null,"created_at":"2010-04-06T19:38:51Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166208,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-03T19:40:33Z","body":"can we do it?\r\nwe need cross platform:\r\nplayback \r\nstreaming\r\npitch\r\npan \r\nmultiplay \r\n\r\nfor us to be compatible with what exists. \r\nOpenAL seems like the best choice.\r\nWhat other options are there?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/167","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","number":8,"title":"0080 Release","due_on":"2013-01-01T08:00:00Z","closed_issues":0,"open_issues":3,"created_at":"2012-02-25T01:34:28Z","state":"open","description":"","id":88731},"number":167,"html_url":"https://github.com/openframeworks/openFrameworks/issues/167","assignee":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"title":"replace fmod","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2010-04-06T12:13:31Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":165898,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:56:41Z","body":"i have this working for 3d with selection buffer although it's meant to be slow i haven't had any problems","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/160","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":160,"html_url":"https://github.com/openframeworks/openFrameworks/issues/160","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"ofIsUnderMouse?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2010-04-05T21:39:19Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":165537,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:54:57Z","body":"Theo: I have this code uses the selection buffer. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/153","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":153,"html_url":"https://github.com/openframeworks/openFrameworks/issues/153","assignee":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"title":"ofIsOnScreen - ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2010-04-05T18:49:10Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":165409,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=14 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4930'), ('content-length', '13008'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"a63cf45ee23c003caf863065072ec4bb"'), ('date', 'Tue, 29 May 2012 19:27:23 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-02-29T11:13:10Z","body":"check out - http://www.openframeworks.cc/forum/viewtopic.php?p=19169#p19169\r\npossible integration into core. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/140","comments":4,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":140,"html_url":"https://github.com/openframeworks/openFrameworks/issues/140","assignee":null,"title":"texture compression and mipmaps for of texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-04-02T19:43:00Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":163959,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-12T16:15:52Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=10&t=3319","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/128","comments":4,"milestone":null,"number":128,"html_url":"https://github.com/openframeworks/openFrameworks/issues/128","assignee":null,"title":"ofxTCPServer doesn't manage connected clients correcly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-02-14T09:40:13Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"arturoc","id":48240},"id":132671,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T12:31:57Z","body":"Something that easily converts vector direction to openGL degrees?\r\nI find myself constantly trying to guess 270 - atan2(y, x)*RAD_TO_DEG ..... etc\r\nTo rotate something along a vector. \r\n\r\nMight be good to have it be aware of the GL world orientation - or have it so you pass in the up \r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/126","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":126,"html_url":"https://github.com/openframeworks/openFrameworks/issues/126","assignee":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"title":"ofATan2GL / ofVecToGL ?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-02-13T14:22:51Z","state":"open","user":{"url":"https://api.github.com/users/openframeworks","gravatar_id":"a858611b044a8302ab14cfe752e17369","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"openframeworks","id":142866},"id":132377,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-22T15:51:57Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=7&t=3299&p=17852#p17852","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/124","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","number":6,"title":"0073 Release","closed_issues":0,"due_on":"2012-07-30T07:00:00Z","open_issues":5,"created_at":"2011-12-03T15:37:49Z","state":"open","description":"","id":62090},"number":124,"html_url":"https://github.com/openframeworks/openFrameworks/issues/124","assignee":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"title":"TTF type rendering in OF - fix fuzziness ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography","color":"DDDDDD"}],"closed_at":null,"created_at":"2010-02-13T14:15:25Z","state":"open","user":{"url":"https://api.github.com/users/openframeworks","gravatar_id":"a858611b044a8302ab14cfe752e17369","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"openframeworks","id":142866},"id":132373,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T12:30:14Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=8&t=1374","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/121","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":121,"html_url":"https://github.com/openframeworks/openFrameworks/issues/121","assignee":null,"title":"video: loop is not working unless you call play first","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"closed_at":null,"created_at":"2010-02-10T23:16:23Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"arturoc","id":48240},"id":130269,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T12:30:49Z","body":"it would make sense to have an opengl stress test app, that can test some basic about wether or not someone has ARB support, how fast their systems are, etc. I can imagine that for 0.07, we'll be helping people debug shaders and FBOs, having some way to gauge what kind of system they are on and what it can take, will be helpful. \r\n\r\nHere's a simple test app from the Lua-AV folks that looks like a reasonable system: \r\n\r\nhttp://img191.imageshack.us/img191/1659/picture3po.png","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/115","comments":0,"milestone":null,"number":115,"html_url":"https://github.com/openframeworks/openFrameworks/issues/115","assignee":null,"title":"opengl stress test example","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-01-12T02:56:21Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":111018,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-28T14:02:04Z","body":"at the moment, we've got it like:\r\n\r\nofAppGlutWindow::ofAppGlutWindow(){\r\n\tfps\t\t\t\t= 60.0; //give a realistic starting value - win32 issues\r\n\tbFrameRateSet\t\t= false;\r\n}\r\n\r\nbut I personally prefer all apps to start with some kind of similar frame rate (ie, examples running really fast on mac, etc). see for example: \r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?p=16520&#p16520\r\n\r\nthis kind of thing leads to less \"cross-platform-ness\" and more confusion from beginners, no? \r\n\r\n- z\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/107","comments":8,"milestone":null,"number":107,"html_url":"https://github.com/openframeworks/openFrameworks/issues/107","assignee":null,"title":"should we start all OF apps with a frame rate set?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2009-12-31T15:10:45Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":104702,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-27T15:47:45Z","body":"videoGrabber and serial listDevices should return a vector of strings apart from printing to console","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/91","comments":4,"milestone":null,"number":91,"html_url":"https://github.com/openframeworks/openFrameworks/issues/91","assignee":null,"title":"listDevices should return a list of strings","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2009-12-09T17:11:40Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"arturoc","id":48240},"id":94898,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + diff --git a/lib/github/tests/ReplayData/PaginatedList.testIntIndexingInFirstPage.txt b/lib/github/tests/ReplayData/PaginatedList.testIntIndexingInFirstPage.txt new file mode 100644 index 0000000000..483013e613 --- /dev/null +++ b/lib/github/tests/ReplayData/PaginatedList.testIntIndexingInFirstPage.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4927'), ('content-length', '52085'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last"'), ('etag', '"5e8867ffb4e7630e852b2b231f3b9cdb"'), ('date', 'Tue, 29 May 2012 19:36:57 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-27T18:11:17Z","body":"Since more and more of the OF Core now relies on Poco (ie ofThread, etc) does OF_USING_POCO make sense anymore?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1280","comments":0,"milestone":null,"number":1280,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1280","assignee":null,"title":"deprecate OF_USING_POCO?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-27T18:03:23Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"danomatika","id":480637},"id":4772349,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-28T08:08:24Z","body":"There occurs a weir glitch when compiling the ofShader example with my HD Graphics 3000 (288 Mb) (Mac osx 10.7.4 - Mac Mini - i5 - 2.3Ghz)\n\nI was able to get rid of the glitch by replacing \"gl_FragColor = gl_Color;\" with \"gl_FragColor = 255.0;\" or any other number.\nAnybody knows a reason for the glitch / proper solution?\n\nScreenshot: http://goo.gl/Xdf74\nOpenGL capacities on different graphic cards on apple machines: http://goo.gl/FGQ2N","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1279","comments":2,"milestone":null,"number":1279,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1279","assignee":null,"title":"ofShader example with HD Graphics 3000 issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-26T19:27:56Z","state":"open","user":{"url":"https://api.github.com/users/subtiv","gravatar_id":"837cfe96365c031130a46311eb11d86a","avatar_url":"https://secure.gravatar.com/avatar/837cfe96365c031130a46311eb11d86a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"subtiv","id":1012684},"id":4767675,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-25T18:39:02Z","body":"produces an error on app exit or tex destruction.\n\n OF: OF_LOG_ERROR: trying to delete a non indexed texture, something weird is happening. Deleting anyway\n\nThis is because retain(int id) is a static function in ofTexture.cpp. So we can't retain the depthStencilTexture.\n\nThis suggest we should move the texture allocation of the depth / stencil texture to ofTexture - something which is not possible at the moment. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1277","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1277,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1277","assignee":null,"title":"ofFbo can't retain depthStencil Texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-05-25T18:37:46Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":4758608,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-22T21:26:57Z","body":"\nthe offending line is: \n\nif( speed.getValue() != preSpeed ){\n\nwhich is evaluating as true even through the slider is not touched (float equality test, etc). \n\nif we alter it to something like: \n\nif( fabs(speed.getValue() - preSpeed) > 0.0001 ){\n\nthe code runs fine. probably nicer to add a \"value changed()\" functionality to the slider object though or use EPSILON, etc. \n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1271","comments":0,"milestone":null,"number":1271,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1271","assignee":null,"title":"periodic signal example doesn't run well on windows / cb (float equality error)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-05-22T21:26:57Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":4700182,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-22T16:41:21Z","body":"There's some error that appears on linux systems running the project generator to make VS examples, where the debug and release libs for opencv get added badly to the vs project: \n\n\t%(AdditionalDependencies);opencv_highgui231d.lib;opencv_calib3d231.lib;opencv_imgproc231d.lib;opencv_haartraining_engined.lib;opencv_gpu231d.lib;opencv_flann231.lib;opencv_contrib231d.lib;opencv_video231d.lib;opencv_objdetect231d.lib;zlib.lib;opencv_core231d.lib;opencv_contrib231.lib;opencv_ml231d.lib;opencv_features2d231.lib;opencv_core231.lib;opencv_gpu231.lib;opencv_legacy231d.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_ml231.lib;opencv_imgproc231.lib;opencv_objdetect231.lib;opencv_legacy231.lib;opencv_video231.lib\n\t\t\t\t%(AdditionalLibraryDirectories);..\\..\\..\\addons\\ofxOpenCv\\libs\\opencv\\lib\\vs2010\n\nthis doesn't seem to be the case on osx or windows, which produces correct results: \n\n\t%(AdditionalDependencies);opencv_calib3d231.lib;opencv_contrib231.lib;opencv_core231.lib;opencv_features2d231.lib;opencv_flann231.lib;opencv_gpu231.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_imgproc231.lib;opencv_legacy231.lib;opencv_ml231.lib;opencv_objdetect231.lib;opencv_video231.lib;zlib.lib\n\nwould be good to look at the logic of \"visualStudioProject::addAddon()\" and see if we can fix this.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1268","comments":9,"milestone":null,"number":1268,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1268","assignee":null,"title":"project generator - bad libs for VS / opencv examples","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-05-20T21:50:24Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":4662873,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T00:43:37Z","body":"I woud love some eyes on ofFbo would be great to get it cleaned up and standardized for 0072. \nRight now there are a ton of #ifdefs and some very hard to follow logic, which makes bug fixing quite difficult especially on OPENGL_ES\n\nsee: https://gist.github.com/2711815\n\n@elliotwoods @arturoc @memotv @damiannz @ofZach @kylemcdonald \n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1263","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1263,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1263","assignee":null,"title":"ofFbo.cpp is a huge mess! ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-16T16:27:30Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":4608132,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T14:29:02Z","body":"I added a .mailmap file to the repo to correctly collate all the contributors in spite of changing nick names/email addresses. This is useful when trying to identify contributors for a changelog or similar, or when using the git logging functions like shortlog.\n\nSee the before/after situation here: https://gist.github.com/2710366\n\nI have respected privacy and only used those real names that people have already given in a git ID in the repo. Mainly this addition only associates the different email addresses to one user. @arturoc wins the prize of most used emails! :-)\nThe list is pretty complete, I only had difficulties to associate some IDs to the correct Zachs, since it was not clear for some if @ofZach or @stfj (Zach Gage) was the contributor. Those were left as-is.\n\nIf anybody has objections to their various email being united under their name, please say so and I will correct/remove the relevant entries.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1262","comments":2,"milestone":null,"number":1262,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1262","assignee":null,"title":"Add .mailmap for contributor collation","labels":[],"closed_at":null,"created_at":"2012-05-16T13:44:32Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"id":4604661,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1262.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1262","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1262.patch"}},{"updated_at":"2012-05-16T09:35:31Z","body":"Address #375.\n\nAdd setVolumef(float). Also more clearly define volume ranges (int is 0..255, float is 0..1) and more robust clamping of volume argument.\n\nThis has not been tested on Linux or Windows.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1260","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1260,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1260","assignee":null,"title":"allow float volume on ofVideoPlayer","labels":[],"closed_at":null,"created_at":"2012-05-15T17:50:22Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"damiannz","id":144366},"id":4588997,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1260.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1260","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1260.patch"}},{"updated_at":"2012-05-21T07:31:47Z","body":"This was originally posted @\"biginners\".\n\nhttp://forum.openframeworks.cc/index.php/topic,9527.msg44049.html#msg44049\n\nJoshua noble suggested me to file it as a bug on jithub\n\n\n/////////////////original messages\n\nHello.\n\nI have question about ofShortPixels and ofShortColor.\n\nIf you execute the code below , it'll draw at half way screen height even though I did set aDot at (0. screen height / 4)\n\nAnd another weird thing is it draws 20 pixels instead of 10 pixels which I set for loop for 10 times.\n\nIt only draws correctly with ofPixels and ofColor.\n\nIt doesn't work with ofFloatPixels and ofFloatColor.\n\nPlease help me out.\n\nI need to have RGB value over 255 so I can check if those values are over 255.\n\nThanks in advanced\n\nJin\n\n\n.h file\nCode:\nview plaincopy to clipboardprint?\n\n #pragma once \n #include \"ofMain.h\" \n \n class Dot { \n public: \n ofVec2f location; \n \n Dot(){ \n location.set(0,0); \n } \n \n ~Dot(){} \n }; \n \n class testApp : public ofBaseApp{ \n public: \n void setup(); \n void update(); \n void draw(); \n \n int w,h; \n \n ofTexture particleTexture; \n ofShortPixels * rgbPixels; \n \n ofShortColor& paint(ofShortColor &); \n \n Dot aDot; \n \n \n }; \n\n\n.cpp file\nCode:\nview plaincopy to clipboardprint?\n\n #include \"testApp.h\" \n //-------------------------------------------------------------- \n void testApp::setup(){ \n ofSetFrameRate(30); \n ofSetBackgroundAuto(TRUE); \n ofBackground(0, 0, 0); \n w = ofGetWidth(); \n h = ofGetHeight(); \n \n particleTexture.allocate(w,h,GL_RGB); \n rgbPixels = new ofShortPixels; \n rgbPixels->allocate(w, h, 3); \n aDot.location.set(0, h/4); \n } \n \n //-------------------------------------------------------------- \n void testApp::update(){ \n ofShortColor pixelColor; \n ofShortColor newPixelColor; \n for(int i = 0; i<10; i++){ \n pixelColor = rgbPixels->getColor(aDot.location.x+i, aDot.location.y); \n \n newPixelColor = paint(pixelColor); \n \n rgbPixels->setColor(aDot.location.x+i, aDot.location.y,newPixelColor); \n \n } \n particleTexture.loadData(* rgbPixels); \n } \n \n //-------------------------------------------------------------- \n void testApp::draw(){ \n particleTexture.draw(0, 0, w, h); \n } \n \n ofShortColor & testApp::paint(ofShortColor & _c){ \n \n _c.r += 10; \n _c.g += 2; \n _c.b += 3; \n \n _c.set(_c.r, _c.g, _c.b); \n _c.clamp(); \n \n return _c; \n } ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1257","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1257,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1257","assignee":null,"title":"ofShortPixels doesn't draw pixels correctly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-14T05:46:14Z","state":"open","user":{"url":"https://api.github.com/users/gazaebal","gravatar_id":"f9d7811bb6318fedf7e9f2fe8bfece32","avatar_url":"https://secure.gravatar.com/avatar/f9d7811bb6318fedf7e9f2fe8bfece32?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"gazaebal","id":1736190},"id":4557803,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T21:42:08Z","body":"if i'm not mistaken, the correct way of using ofMatrix4x4 in oF is `glMultMatrixf(myMatrix.getPtr())` or `glLoadMatrixf`.\nThis seems a bit uncomfortable for me.\n\nsome candidates are:\n\n```c++\nofPushMatrix(const ofMatrix4x4 &); //needs alternatives as you might not want to push at the time\nofLoadMatrix(const ofMatrix4x4 &);\nofMultMatrix(const ofMatrix4x4 &);\n\nofMatrix4x4::apply();\nofMatrix4x4::glLoadMatrix(matrixMode = OF_MATRIX_MODE_CURRENT);\n```\n\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1256","comments":5,"milestone":null,"number":1256,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1256","assignee":null,"title":"Feature ofPushMatrix(const ofMatrix4x4 &)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-13T18:20:29Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4554058,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-11T21:24:20Z","body":"\tunsigned char faceSize = 3;\n\tif(data.getNumIndices()){\n\t\tos << \"element face \" << data.getNumIndices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t} else if(data.getMode() == OF_PRIMITIVE_TRIANGLES) {\n\t\tos << \"element face \" << data.getNumVertices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t}\n\nThe facesize is being set as static as 3, but this results in strange exports...things open OK in Meshlab, but exporting to other programs with no faces seems like it won't work","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1252","comments":6,"milestone":null,"number":1252,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1252","assignee":null,"title":"0071 ply (mesh.save()) Point export is broken","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-11T19:45:53Z","state":"open","user":{"url":"https://api.github.com/users/laserpilot","gravatar_id":"07001341fe6c156dddd5b9d06d828cba","avatar_url":"https://secure.gravatar.com/avatar/07001341fe6c156dddd5b9d06d828cba?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"laserpilot","id":1041023},"id":4539985,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:33:31Z","body":"couple of minor bugfixes (absolute path wasn't being detected on second if [absolute] for windows paths)\r\nfixes unixy paths no matter what on windows","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1251","comments":8,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1251,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1251","assignee":null,"title":"Bugfix of to data path","labels":[],"closed_at":null,"created_at":"2012-05-10T06:44:20Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4507572,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1251.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1251","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1251.patch"}},{"updated_at":"2012-05-16T09:43:23Z","body":":(\r\n\r\nIt seems i'm getting double 'data/' in my paths\r\nafter a little tracking down, i found this is because ofSystemLoadDialog changes the current working directory\r\n\r\nso we could try and either fix that by popping the folder after the dialog, \r\nof for windows using something like ```GetModuleFileName``` to get the path of the current exe rather than using the current working directory\r\n\r\nI can't seem to run GetModuleFileName from ofUtils.cpp even though windows.h is included in ofConstants.h (included in ofUtils.h)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1250","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1250,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1250","assignee":null,"title":"bug: ofToDataPath broken again","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-05-10T06:35:24Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4507492,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:42:44Z","body":"'ofx TCPClient :: receiveRaw' was found in the proble.\n\nOriginal :\n\n\tint ofxTCPClient::receiveRawBytes(char * receiveBuffer, int numBytes){\n\t\t\t messageSize = TCPClient.Receive(receiveBuffer, numBytes);\t\n\t\t\t if(messageSize==0){\t\t\n\t\t\t\t\t\tclose();\t\n\t\t\t }\t\n\t\t\t return messageSize;\n\t}\n\nBut 'TCPClient.Receive (receiveBuffer, numBytes)' from '-1' may return\n\nI was modified\n\n\tstring ofxTCPClient::receiveRaw(){\n\t\t\t messageSize = TCPClient.Receive(tmpBuff, TCP_MAX_MSG_SIZE);\n\t\t\t if(messageSize==0){\n\t\t\t\t\t\tclose();\n\t\t\t }\n\t\t\t //TCPClient.Receive is return -1....\n\t\t\t else if(messageSize < 0){ \n\t\t\t\t\t\ttmpBuff[0] = 0;\n\t\t\t }\n\t\t\t else if(messageSize; rel="next", ; rel="last"'), ('etag', '"5e8867ffb4e7630e852b2b231f3b9cdb"'), ('date', 'Tue, 29 May 2012 19:36:57 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-27T18:11:17Z","body":"Since more and more of the OF Core now relies on Poco (ie ofThread, etc) does OF_USING_POCO make sense anymore?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1280","comments":0,"milestone":null,"number":1280,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1280","assignee":null,"title":"deprecate OF_USING_POCO?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-27T18:03:23Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"danomatika","id":480637},"id":4772349,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-28T08:08:24Z","body":"There occurs a weir glitch when compiling the ofShader example with my HD Graphics 3000 (288 Mb) (Mac osx 10.7.4 - Mac Mini - i5 - 2.3Ghz)\n\nI was able to get rid of the glitch by replacing \"gl_FragColor = gl_Color;\" with \"gl_FragColor = 255.0;\" or any other number.\nAnybody knows a reason for the glitch / proper solution?\n\nScreenshot: http://goo.gl/Xdf74\nOpenGL capacities on different graphic cards on apple machines: http://goo.gl/FGQ2N","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1279","comments":2,"milestone":null,"number":1279,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1279","assignee":null,"title":"ofShader example with HD Graphics 3000 issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-26T19:27:56Z","state":"open","user":{"url":"https://api.github.com/users/subtiv","gravatar_id":"837cfe96365c031130a46311eb11d86a","avatar_url":"https://secure.gravatar.com/avatar/837cfe96365c031130a46311eb11d86a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"subtiv","id":1012684},"id":4767675,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-25T18:39:02Z","body":"produces an error on app exit or tex destruction.\n\n OF: OF_LOG_ERROR: trying to delete a non indexed texture, something weird is happening. Deleting anyway\n\nThis is because retain(int id) is a static function in ofTexture.cpp. So we can't retain the depthStencilTexture.\n\nThis suggest we should move the texture allocation of the depth / stencil texture to ofTexture - something which is not possible at the moment. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1277","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1277,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1277","assignee":null,"title":"ofFbo can't retain depthStencil Texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-05-25T18:37:46Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":4758608,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-22T21:26:57Z","body":"\nthe offending line is: \n\nif( speed.getValue() != preSpeed ){\n\nwhich is evaluating as true even through the slider is not touched (float equality test, etc). \n\nif we alter it to something like: \n\nif( fabs(speed.getValue() - preSpeed) > 0.0001 ){\n\nthe code runs fine. probably nicer to add a \"value changed()\" functionality to the slider object though or use EPSILON, etc. \n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1271","comments":0,"milestone":null,"number":1271,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1271","assignee":null,"title":"periodic signal example doesn't run well on windows / cb (float equality error)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-05-22T21:26:57Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":4700182,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-22T16:41:21Z","body":"There's some error that appears on linux systems running the project generator to make VS examples, where the debug and release libs for opencv get added badly to the vs project: \n\n\t%(AdditionalDependencies);opencv_highgui231d.lib;opencv_calib3d231.lib;opencv_imgproc231d.lib;opencv_haartraining_engined.lib;opencv_gpu231d.lib;opencv_flann231.lib;opencv_contrib231d.lib;opencv_video231d.lib;opencv_objdetect231d.lib;zlib.lib;opencv_core231d.lib;opencv_contrib231.lib;opencv_ml231d.lib;opencv_features2d231.lib;opencv_core231.lib;opencv_gpu231.lib;opencv_legacy231d.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_ml231.lib;opencv_imgproc231.lib;opencv_objdetect231.lib;opencv_legacy231.lib;opencv_video231.lib\n\t\t\t\t%(AdditionalLibraryDirectories);..\\..\\..\\addons\\ofxOpenCv\\libs\\opencv\\lib\\vs2010\n\nthis doesn't seem to be the case on osx or windows, which produces correct results: \n\n\t%(AdditionalDependencies);opencv_calib3d231.lib;opencv_contrib231.lib;opencv_core231.lib;opencv_features2d231.lib;opencv_flann231.lib;opencv_gpu231.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_imgproc231.lib;opencv_legacy231.lib;opencv_ml231.lib;opencv_objdetect231.lib;opencv_video231.lib;zlib.lib\n\nwould be good to look at the logic of \"visualStudioProject::addAddon()\" and see if we can fix this.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1268","comments":9,"milestone":null,"number":1268,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1268","assignee":null,"title":"project generator - bad libs for VS / opencv examples","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-05-20T21:50:24Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":4662873,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T00:43:37Z","body":"I woud love some eyes on ofFbo would be great to get it cleaned up and standardized for 0072. \nRight now there are a ton of #ifdefs and some very hard to follow logic, which makes bug fixing quite difficult especially on OPENGL_ES\n\nsee: https://gist.github.com/2711815\n\n@elliotwoods @arturoc @memotv @damiannz @ofZach @kylemcdonald \n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1263","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1263,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1263","assignee":null,"title":"ofFbo.cpp is a huge mess! ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-16T16:27:30Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":4608132,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T14:29:02Z","body":"I added a .mailmap file to the repo to correctly collate all the contributors in spite of changing nick names/email addresses. This is useful when trying to identify contributors for a changelog or similar, or when using the git logging functions like shortlog.\n\nSee the before/after situation here: https://gist.github.com/2710366\n\nI have respected privacy and only used those real names that people have already given in a git ID in the repo. Mainly this addition only associates the different email addresses to one user. @arturoc wins the prize of most used emails! :-)\nThe list is pretty complete, I only had difficulties to associate some IDs to the correct Zachs, since it was not clear for some if @ofZach or @stfj (Zach Gage) was the contributor. Those were left as-is.\n\nIf anybody has objections to their various email being united under their name, please say so and I will correct/remove the relevant entries.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1262","comments":2,"milestone":null,"number":1262,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1262","assignee":null,"title":"Add .mailmap for contributor collation","labels":[],"closed_at":null,"created_at":"2012-05-16T13:44:32Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"id":4604661,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1262.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1262","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1262.patch"}},{"updated_at":"2012-05-16T09:35:31Z","body":"Address #375.\n\nAdd setVolumef(float). Also more clearly define volume ranges (int is 0..255, float is 0..1) and more robust clamping of volume argument.\n\nThis has not been tested on Linux or Windows.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1260","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1260,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1260","assignee":null,"title":"allow float volume on ofVideoPlayer","labels":[],"closed_at":null,"created_at":"2012-05-15T17:50:22Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"damiannz","id":144366},"id":4588997,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1260.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1260","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1260.patch"}},{"updated_at":"2012-05-21T07:31:47Z","body":"This was originally posted @\"biginners\".\n\nhttp://forum.openframeworks.cc/index.php/topic,9527.msg44049.html#msg44049\n\nJoshua noble suggested me to file it as a bug on jithub\n\n\n/////////////////original messages\n\nHello.\n\nI have question about ofShortPixels and ofShortColor.\n\nIf you execute the code below , it'll draw at half way screen height even though I did set aDot at (0. screen height / 4)\n\nAnd another weird thing is it draws 20 pixels instead of 10 pixels which I set for loop for 10 times.\n\nIt only draws correctly with ofPixels and ofColor.\n\nIt doesn't work with ofFloatPixels and ofFloatColor.\n\nPlease help me out.\n\nI need to have RGB value over 255 so I can check if those values are over 255.\n\nThanks in advanced\n\nJin\n\n\n.h file\nCode:\nview plaincopy to clipboardprint?\n\n #pragma once \n #include \"ofMain.h\" \n \n class Dot { \n public: \n ofVec2f location; \n \n Dot(){ \n location.set(0,0); \n } \n \n ~Dot(){} \n }; \n \n class testApp : public ofBaseApp{ \n public: \n void setup(); \n void update(); \n void draw(); \n \n int w,h; \n \n ofTexture particleTexture; \n ofShortPixels * rgbPixels; \n \n ofShortColor& paint(ofShortColor &); \n \n Dot aDot; \n \n \n }; \n\n\n.cpp file\nCode:\nview plaincopy to clipboardprint?\n\n #include \"testApp.h\" \n //-------------------------------------------------------------- \n void testApp::setup(){ \n ofSetFrameRate(30); \n ofSetBackgroundAuto(TRUE); \n ofBackground(0, 0, 0); \n w = ofGetWidth(); \n h = ofGetHeight(); \n \n particleTexture.allocate(w,h,GL_RGB); \n rgbPixels = new ofShortPixels; \n rgbPixels->allocate(w, h, 3); \n aDot.location.set(0, h/4); \n } \n \n //-------------------------------------------------------------- \n void testApp::update(){ \n ofShortColor pixelColor; \n ofShortColor newPixelColor; \n for(int i = 0; i<10; i++){ \n pixelColor = rgbPixels->getColor(aDot.location.x+i, aDot.location.y); \n \n newPixelColor = paint(pixelColor); \n \n rgbPixels->setColor(aDot.location.x+i, aDot.location.y,newPixelColor); \n \n } \n particleTexture.loadData(* rgbPixels); \n } \n \n //-------------------------------------------------------------- \n void testApp::draw(){ \n particleTexture.draw(0, 0, w, h); \n } \n \n ofShortColor & testApp::paint(ofShortColor & _c){ \n \n _c.r += 10; \n _c.g += 2; \n _c.b += 3; \n \n _c.set(_c.r, _c.g, _c.b); \n _c.clamp(); \n \n return _c; \n } ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1257","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1257,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1257","assignee":null,"title":"ofShortPixels doesn't draw pixels correctly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-14T05:46:14Z","state":"open","user":{"url":"https://api.github.com/users/gazaebal","gravatar_id":"f9d7811bb6318fedf7e9f2fe8bfece32","avatar_url":"https://secure.gravatar.com/avatar/f9d7811bb6318fedf7e9f2fe8bfece32?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"gazaebal","id":1736190},"id":4557803,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T21:42:08Z","body":"if i'm not mistaken, the correct way of using ofMatrix4x4 in oF is `glMultMatrixf(myMatrix.getPtr())` or `glLoadMatrixf`.\nThis seems a bit uncomfortable for me.\n\nsome candidates are:\n\n```c++\nofPushMatrix(const ofMatrix4x4 &); //needs alternatives as you might not want to push at the time\nofLoadMatrix(const ofMatrix4x4 &);\nofMultMatrix(const ofMatrix4x4 &);\n\nofMatrix4x4::apply();\nofMatrix4x4::glLoadMatrix(matrixMode = OF_MATRIX_MODE_CURRENT);\n```\n\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1256","comments":5,"milestone":null,"number":1256,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1256","assignee":null,"title":"Feature ofPushMatrix(const ofMatrix4x4 &)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-13T18:20:29Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4554058,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-11T21:24:20Z","body":"\tunsigned char faceSize = 3;\n\tif(data.getNumIndices()){\n\t\tos << \"element face \" << data.getNumIndices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t} else if(data.getMode() == OF_PRIMITIVE_TRIANGLES) {\n\t\tos << \"element face \" << data.getNumVertices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t}\n\nThe facesize is being set as static as 3, but this results in strange exports...things open OK in Meshlab, but exporting to other programs with no faces seems like it won't work","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1252","comments":6,"milestone":null,"number":1252,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1252","assignee":null,"title":"0071 ply (mesh.save()) Point export is broken","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-11T19:45:53Z","state":"open","user":{"url":"https://api.github.com/users/laserpilot","gravatar_id":"07001341fe6c156dddd5b9d06d828cba","avatar_url":"https://secure.gravatar.com/avatar/07001341fe6c156dddd5b9d06d828cba?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"laserpilot","id":1041023},"id":4539985,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:33:31Z","body":"couple of minor bugfixes (absolute path wasn't being detected on second if [absolute] for windows paths)\r\nfixes unixy paths no matter what on windows","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1251","comments":8,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1251,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1251","assignee":null,"title":"Bugfix of to data path","labels":[],"closed_at":null,"created_at":"2012-05-10T06:44:20Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4507572,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1251.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1251","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1251.patch"}},{"updated_at":"2012-05-16T09:43:23Z","body":":(\r\n\r\nIt seems i'm getting double 'data/' in my paths\r\nafter a little tracking down, i found this is because ofSystemLoadDialog changes the current working directory\r\n\r\nso we could try and either fix that by popping the folder after the dialog, \r\nof for windows using something like ```GetModuleFileName``` to get the path of the current exe rather than using the current working directory\r\n\r\nI can't seem to run GetModuleFileName from ofUtils.cpp even though windows.h is included in ofConstants.h (included in ofUtils.h)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1250","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1250,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1250","assignee":null,"title":"bug: ofToDataPath broken again","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-05-10T06:35:24Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4507492,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:42:44Z","body":"'ofx TCPClient :: receiveRaw' was found in the proble.\n\nOriginal :\n\n\tint ofxTCPClient::receiveRawBytes(char * receiveBuffer, int numBytes){\n\t\t\t messageSize = TCPClient.Receive(receiveBuffer, numBytes);\t\n\t\t\t if(messageSize==0){\t\t\n\t\t\t\t\t\tclose();\t\n\t\t\t }\t\n\t\t\t return messageSize;\n\t}\n\nBut 'TCPClient.Receive (receiveBuffer, numBytes)' from '-1' may return\n\nI was modified\n\n\tstring ofxTCPClient::receiveRaw(){\n\t\t\t messageSize = TCPClient.Receive(tmpBuff, TCP_MAX_MSG_SIZE);\n\t\t\t if(messageSize==0){\n\t\t\t\t\t\tclose();\n\t\t\t }\n\t\t\t //TCPClient.Receive is return -1....\n\t\t\t else if(messageSize < 0){ \n\t\t\t\t\t\ttmpBuff[0] = 0;\n\t\t\t }\n\t\t\t else if(messageSize; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"8c30dcf27290220465cd1ecce8fa943a"'), ('date', 'Tue, 29 May 2012 19:36:58 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-04-30T19:43:55Z","body":"On 'update', PG should respect existing custom include paths, source files, linker flags and project options (such as optimization settings).\r\n\r\nOR\r\n\r\nXcode project should read and respect `OTHER_LDFLAGS` and `HEADER_SEARCH_PATHS`, and add `OTHER_CFLAGS` from Project.xcconfig; projectGenerator should leave these settings alone unless it figures out they need to be adjusted (this is probably going to be difficult).","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1217","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1217,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1217","assignee":null,"title":"projectGenerator update doesn't respect existing project settings","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-04-24T21:03:44Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":4269431,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-02T10:19:07Z","body":"Since I don't want to derail #484 further, this issue deals with the implementation of a deprecation mechanism.\r\nBased on [this](http://stackoverflow.com/questions/295120/c-mark-as-deprecated), I made an OFDEPRECATED preproc macro.\r\n\r\nQUESTION: How do I correctly #ifdef for MacOS/XCode4/llvm?\r\n\r\nCould people test this on different platforms? On linux this works. \r\n\r\n\t\ttestApp.h:\r\n\r\n\t\t#pragma once\r\n\r\n\t\t#ifdef __GNUC__\r\n\t\t// maybe __clang__ for checking against llvm/xcode4?\r\n\t\t#define OFDEPRECATED(message, func) func __attribute__ ((deprecated(message)))\r\n\t\t#elif defined(_MSC_VER)\r\n\t\t#define OFDEPRECATED(message, func) __declspec(deprecated(message)) func\r\n\t\t#else\r\n\t\t#pragma message(\"WARNING: You need to implement DEPRECATED for this compiler\")\r\n\t\t#define OFDEPRECATED(message, func) func\r\n\t\t#endif\r\n\r\n\t\tand \r\n\r\n\t\t\t\tvoid dragEvent(ofDragInfo dragInfo);\r\n\t\t\t\tvoid gotMessage(ofMessage msg);\r\n\t\t\r\n\t\t\t\tOFDEPRECATED(\"This is an old function, don't use!\", void deprecatedFunction(void));\r\n\t\t\t\tOFDEPRECATED(\"Obsolete type, use T2!\", typedef int T1);\r\n\t\t\t\ttypedef int T2;\r\n\t\t\t\tOFDEPRECATED(\"This is an old variable, don't use!\", int oldvar3);\r\n\t\t\t\t//This breaks a bit cause it's used in the constructor of testApp, so always triggers.\r\n\r\n\t\t};\r\n\t\tOFDEPRECATED(\"old class!\", class oldClass {\r\n\t\t\tpublic:\r\n\t\t\t\toldClass();\r\n\t\t\t\tvirtual ~oldClass();\r\n\t\t});\r\n\r\n\t\ttestApp.cpp:\r\n\r\n\t\tvoid testApp::setup(){\r\n\t\t\tOFDEPRECATED(\"old string. Don't use\", string oldstring);\r\n\t\t\t// Uncomment these to trigger deprecation warnings\r\n\t\t//\tdeprecatedFunction();\r\n\t\t//\tT1 t1object = 5;\r\n\t\t//\toldstring = \"bla\";\r\n\t\t//\toldvar3=5;\r\n\t\t//\toldClass bla;\r\n\t\t}\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1216","comments":11,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1216,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1216","assignee":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"title":"Implement deprecation mechanism","labels":[],"closed_at":null,"created_at":"2012-04-24T21:03:39Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":4269429,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-30T19:43:14Z","body":"When using PG's 'update' functionality on apps are in paths with non-standard depths (in my case, `oF/apps/dir/subdir/subsubdir`) the OF_PATH and #include directives in the resulting Project.xcconfig don't match, which means oF projects won't compile:\r\n\r\n~~~~\r\n//THE PATH TO THE ROOT OF OUR OF PATH RELATIVE TO THIS PROJECT.\r\n//THIS NEEDS TO BE DEFINED BEFORE CoreOF.xcconfig IS INCLUDED\r\nOF_PATH = ../../../..\r\n\r\n//THIS HAS ALL THE HEADER AND LIBS FOR OF CORE\r\n#include \"../../../../../libs/openFrameworksCompiled/project/osx/CoreOF.xcconfig\"\r\n~~~~\r\n\r\nNote extra `../` in the `#include` path.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1215","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1215,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1215","assignee":null,"title":"projectGenerator sets incorrect path in Project.xcconfig","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-04-24T20:59:57Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":4269359,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-22T23:56:33Z","body":"i'm teaching a workshop right now and i feel like it's ridiculous that i need to explain pointers just to access video :)\r\n\r\nlet's add this!","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1202","comments":3,"milestone":null,"number":1202,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1202","assignee":null,"title":"ofVideoPlayer etc needs ofColor access","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-22T18:42:58Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":4231092,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-29T17:34:24Z","body":"DO NOT PULL YET!\r\n\r\nHey all\r\n\r\nHere's the 'off-axis camera' setup we worked on at ScreenLab last weekend.\r\nIt allows you to:\r\n\r\n* Set lens offset on a camera\r\n* Calculate the camera parameters based on a 'view portal' defined by 3 points (top left, bottom left, bottom right)\r\n\r\nCurrently the changes involve editing ofBaseRenderer (and therefore all other renderers) to support lensOffset parameter (default 0,0). We could remove this since ofCamera doesn't actually use ofSetupScreenPerspective\r\n\r\nSo let's have a quick chat about what needs chaning to make this core friendly and then probably pull after 0071 release?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1201","comments":9,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1201,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1201","assignee":null,"title":"Feature provocation pull request: ofCamera lens offset","labels":[],"closed_at":null,"created_at":"2012-04-22T15:55:29Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":4230131,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1201","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1201.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1201.diff"}},{"updated_at":"2012-05-14T01:22:17Z","body":"I'm investigating the way to draw bezier curves / nurbs etc. with shaders, here is a list a links and information I found that can improve render times with OF. Any way I must admit I'm new to openGL & shaders so maybe someone can take this to implement maybe an add-on or maybe to added to the core.\r\n\r\n**Resolution Independent Curve Rendering using Programmable Graphics Hardware**\r\nhttp://research.microsoft.com/en-us/um/people/cloop/loopblinn05.pdf\r\n\r\n**Resolution independent GPU accelerated Curve & Font rendering**\r\n**GPU based Resolution Independent Font & Curve Rendering – initial Release**\r\nhttp://jausoft.com/blog/2011/04/01/resolution-independent-gpu-accelerated-curve-font-rendering/\r\nhttp://ramisantina.com/blog/?p=73\r\nhttp://vimeo.com/21810192\r\nhttp://jogamp.org/doc/gpunurbs2011/p70-santina.pdf\r\n\r\n**Curvy blues**\r\nhttp://www.mdk.org.pl/2007/10/27/curvy-blues\r\n\r\n**Vector drawing: OpenGL shaders and cairo & vector hardware tessellation**\r\nhttp://www.mdk.org.pl/2007/8/6/vector-drawing-opengl-shaders-and-cairo\r\n\r\n**ShivaVG & Random Access Rendering of Animated Vector Graphics**\r\nhttp://ivanleben.blogspot.com.es/2007/07/shivavg-open-source-ansi-c-openvg.html\r\nhttp://www.youtube.com/watch?v=mD8X-e5-sY4\r\nhttp://www.youtube.com/watch?v=U4USCfwORUg\r\nhttp://andrejas-atelier.com/ivan/IvanLebenHonsThesis.pdf\r\n\r\n**RAVG**\r\nhttp://research.microsoft.com/en-us/um/people/hoppe/proj/ravg/\r\n\r\n**NV Path Rendering Videos (seams only with nvidia)**\r\nhttp://developer.nvidia.com/nv-path-rendering-videos\r\n\r\n**Vector drawing: OpenGL polygon tessellation**\r\nhttp://www.mdk.org.pl/2007/8/16/vector-drawing-opengl-polygon-tessellation\r\nhttp://zrusin.blogspot.com.es/2006/07/hardware-accelerated-polygon-rendering.html\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1190","comments":8,"milestone":null,"number":1190,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1190","assignee":null,"title":"Bezier Shaders & Vector openGL rendering","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-2D","name":"section-2D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-20T09:23:00Z","state":"open","user":{"url":"https://api.github.com/users/microbians","avatar_url":"https://secure.gravatar.com/avatar/98c91e60903b83c0a022ee70cca9ca21?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"98c91e60903b83c0a022ee70cca9ca21","login":"microbians","id":1662136},"id":4207350,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-16T09:41:20Z","body":"ofSetCurveResolution is not changing the resolution using ofBezier nor ofBezierVertex (tested with ofScale is more easy to see the bug)\r\n\r\n ofFill();\r\n ofSetHexColor(0xFF9933);\r\n ofBeginShape();\r\n ofVertex(x0,y0);\r\n ofBezierVertex(x1,y1,x2,y2,x3,y3);\r\n ofEndShape();\r\n\r\nall works fine when using ofPath directly:\r\n\r\n ofPath curve;\r\n curve.setFillHexColor(0xFF000);\r\n curve.setCurveResolution(120);\r\n curve.moveTo(x0, y0);\r\n curve.bezierTo(x1,y1,x2,y2,x3,y3);\r\n curve.draw();\r\n\r\nmore: http://forum.openframeworks.cc/index.php/topic,9596.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1189","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1189,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1189","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"ofSetCurveResolution + ofBezierVertex bug","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-04-20T08:51:51Z","state":"open","user":{"url":"https://api.github.com/users/microbians","avatar_url":"https://secure.gravatar.com/avatar/98c91e60903b83c0a022ee70cca9ca21?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"98c91e60903b83c0a022ee70cca9ca21","login":"microbians","id":1662136},"id":4206982,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-01T04:10:23Z","body":"If you set up an ofFbo as follows...\r\n\r\n```cpp\r\n ofFbo::Settings s;\r\n s.width = 400;\r\n s.height = 400;\r\n s.textureTarget = GL_TEXTURE_2D;\r\n s.useDepth = true;\r\n s.depthAsTexture = true;\r\n s.dethInternalFormat = GL_DEPTH_COMPONENT24;\r\n```\r\n\r\n...then the colour texture's dimensions are set to be the next POTs up but the depth texture's dimensions don't seem to be. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1186","comments":2,"milestone":null,"number":1186,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1186","assignee":null,"title":"ofFbo depthBufferTex can be inconsistent with colour texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-18T15:08:32Z","state":"open","user":{"url":"https://api.github.com/users/neilmendoza","avatar_url":"https://secure.gravatar.com/avatar/3e46b12547e7bac19eb982bc512b19c4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3e46b12547e7bac19eb982bc512b19c4","login":"neilmendoza","id":818571},"id":4174070,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-16T09:44:27Z","body":"As mentioned here: http://forum.openframeworks.cc/index.php?topic=9107.0\r\nOpenGLES2 not working. It is always falls back to ES1. I tested it only on iPad2 with iOS 5.0.1.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1178","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1178,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1178","assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"title":"OpenGLES2 not working","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-04-16T11:19:36Z","state":"open","user":{"url":"https://api.github.com/users/erinnovations","avatar_url":"https://secure.gravatar.com/avatar/29639bbeb3afdde8fb3c7e273e5e43c6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"29639bbeb3afdde8fb3c7e273e5e43c6","login":"erinnovations","id":253455},"id":4132608,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-14T13:45:55Z","body":"in ofTexture::loadData we are doing:\r\n\r\n\r\n\t//------------------------ likely, we are uploading continuous data\r\n\tGLint prevAlignment;\r\n\tglGetIntegerv(GL_UNPACK_ALIGNMENT, &prevAlignment);\r\n\tglPixelStorei(GL_UNPACK_ALIGNMENT, 1);\r\n\r\nany reason for this? leaving the default works too. i've been working with a huge video and the transfer rates on some cards were super slow with ofTexture::loadData. even glDrawPixels was faster, i've finally used pbo's but later looking at ofTexture discovered this lines and i suspect that it could be the reason for loadData being slower, haven't tested it yet though.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1175","comments":0,"milestone":null,"number":1175,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1175","assignee":null,"title":"GL_UNPACK_ALIGNMENT 1 in ofTexture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-14T13:45:42Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":4117762,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-16T09:39:22Z","body":"one returns the result (dot) the other performs in place (cross), i.e. overrides the contents\r\nThe two definitions are inconsistent\r\npropose rename `ofVec3f::dot` to become `ofVec3f::getDotted` in line with `ofVec3f::getCrossed`","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1174","comments":9,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1174,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1174","assignee":null,"title":"bug : inconsistent API for ofVec3f::dot and ofVec3f::cross","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-13T17:09:38Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":4108582,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-14T04:20:36Z","body":"If you pass a string containing non-ascii characters to ofToHex(), the non-ascii characters (with character codes above 127) will be output as ffffxxxx (it depends on the exact character value and the size of the int type on the platform you are compiling for).\r\nThe problem is due to an incorrect cast in the ostringstream operation inside the loop.\r\nInstead of directly casting the (signed) char from the input character to an unsigned int, the input character must first be cast to an unsigned char.\r\nIn other words, instead of:\r\n``` out << setfill('0') << setw(2) << hex << (unsigned int) value[i];```\r\nit should be:\r\n``` out << setfill('0') << setw(2) << hex << (unsigned int) ((unsigned char)value[i]);```\r\nor maybe even:\r\n``` out << setfill('0') << setw(2) << hex << static_cast(static_cast(value[i]));```\r\nif you prefer C++ style casts over C style casts. :)\r\n\r\nHTH\r\n/Jesper","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1173","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1173,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1173","assignee":null,"title":"ofToHex(string) is wrong for non-ascii input","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-13T14:42:30Z","state":"open","user":{"url":"https://api.github.com/users/pappis","avatar_url":"https://secure.gravatar.com/avatar/fbf3d56c96cf5b891056530066549692?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"fbf3d56c96cf5b891056530066549692","login":"pappis","id":1640543},"id":4104336,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-12T10:09:42Z","body":"if I call ofBeginSaveScreenAsPDF using ofEasyCam or the ofCamera, the pdf doesn't have the perspective of the camera. There's a parameter b3d to ofBeginSaveScreenAsPDF which I interpret to be \"render taking into account 3d transforms\", but it doesn't seem to have any effect.\r\n\r\nmore on the forum\r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,9542.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1171","comments":0,"milestone":null,"number":1171,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1171","assignee":null,"title":"ofBeginSaveScreenAsPDF ignores 3d transformations","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-12T10:09:42Z","state":"open","user":{"url":"https://api.github.com/users/jesusgollonet","avatar_url":"https://secure.gravatar.com/avatar/5008d5295e9bc2636313c7b50ed5981d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5008d5295e9bc2636313c7b50ed5981d","login":"jesusgollonet","id":31100},"id":4081188,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-13T14:54:18Z","body":"if I have `ofEvent boolEvent` and i try to call `ofNotifyEvent( boolEvent, true )` i get a `no matching function` error as the compiler cannot coerce `true` to a `bool &`.\r\n\r\nto solve this, instead of this:\r\n\r\n~~~~\r\nofEvent boolEvent;\r\n...\r\nofNotifyEvent( boolEvent, true );\r\n~~~~\r\n\r\ni need to write this:\r\n\r\n~~~~\r\nofEvent boolEvent;\r\n...\r\nbool myBool = true;\r\nofNotifyEvent( boolEvent, myBool );\r\n~~~~\r\n\r\nthis is kind of annoying.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1167","comments":2,"milestone":null,"number":1167,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1167","assignee":null,"title":"ofNotifyEvent( boolEvent, true ) fails to compile","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-04-11T12:03:34Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":4063456,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-11T13:21:33Z","body":"It's currently not possible to have an event without arguments\r\n\r\n`ofEvent testEvent;` -- fails to compile\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1166","comments":2,"milestone":null,"number":1166,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1166","assignee":null,"title":"ofEvent lacks simple, argument-free use case","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-04-11T12:00:19Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":4063417,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-21T15:41:01Z","body":"It's currently not possible to write `ofLogError( \"serial\", \"error %i connecting to serial\", serialError )`. \r\n\r\nThere should be `ofLogError( string module, string format, ... )` methods as with normal ofLog.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1165","comments":6,"milestone":null,"number":1165,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1165","assignee":null,"title":"ofLogError, ofLogWarning lack format, ... args","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-04-11T11:56:33Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":4063366,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-10T16:47:19Z","body":"change `allocate(_w, _h, OF_IMAGE_COLOR);` to `allocate(_w, _h, OF_IMAGE_COLOR_ALPHA);` (via reza on irc)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1152","comments":4,"milestone":null,"number":1152,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1152","assignee":null,"title":"grabScreen in ofImage fails on Android","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-04-09T17:15:21Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":4032047,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-29T14:46:40Z","body":"the module name is no longer printed if it's coming from OF itself.\r\n\r\ninstead of the constant name, a human-readable string is printed.\r\n\r\nexample output from project generator: http://pastebin.com/raw.php?i=0dp938Jx","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1151","comments":6,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1151,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1151","assignee":null,"title":"shorten + simplify ofLog output","labels":[],"closed_at":null,"created_at":"2012-04-08T21:13:14Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":4023525,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1151","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1151.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1151.diff"}},{"updated_at":"2012-04-17T14:47:36Z","body":"\r\nWorking on the project generator, which has a fair amount of logging, I'm concerned about how much space we loose on each line: \r\n\r\n OF: OF_LOG_NOTICE:\r\n\r\nit's about 15-20 characters or so, pretty significant where each line is 80, so alot more wrapping happens then I'd like, making the results less cleaner or organized. \r\n\r\nI propose we alter \r\n\r\n string ofGetLogLevelName(ofLogLevel level){\r\n switch(level){\r\n case OF_LOG_VERBOSE:\r\n return \"OF_LOG_VERBOSE\";\r\n break;\r\n case OF_LOG_NOTICE:\r\n return \"OF_LOG_NOTICE\";\r\n break;\r\n case OF_LOG_WARNING:\r\n return \"OF_LOG_WARNING\";\r\n break;\r\n case OF_LOG_ERROR:\r\n return \"OF_LOG_ERROR\";\r\n break;\r\n case OF_LOG_FATAL_ERROR:\r\n return \"OF_LOG_FATAL_ERROR\";\r\n break;\r\n case OF_LOG_SILENT:\r\n return \"OF_LOG_SILENT\";\r\n break;\r\n default:\r\n return \"\";\r\n }\r\n }\r\n\r\nso that we can have something like : \r\n\r\n (of:notice) \r\n (of:verbose) \r\n (of:error) \r\n\r\nor something smaller and if we loose the all caps, maybe less threatening :)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1150","comments":4,"milestone":null,"number":1150,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1150","assignee":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"title":"propose shortening ofLog console message length","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-04-08T20:32:49Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":4023305,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-07T15:00:32Z","body":"Hey all\r\n\r\nA few sections of the repo need some love to put them in line with the project generator:\r\n\r\n1. Readme's\r\n2. Rogue old project generators\r\n3. Document complementing tools\r\n\r\n# Readme\r\n\r\nThe readme's in the root of the repo need some love\r\nnone of them mention project generator \r\n\r\ni feel like each should be a description of how to get to a working project generator on each of the respective platforms\r\n\r\nalso note:\r\n* .vs2010 is missing\r\n* readme.txt repeats information from the other readme's (i.e. it's a list of platform specific instructions)\r\ni think this should be perhaps a little description of oF and a few tips on how to get started\r\n\r\n# Rogue old 'project generators' / documenting complementary tools for project generator\r\n\r\nHere's things I can find in the repo which don't make sense to me at the moment:\r\n\r\n* `openFrameworks\\scripts\\????\\compileAllExamples.bat`\r\n** is this supposed to be run (optionally) after the project generator?\r\n** why is the project template within this folder?\r\n* `openFrameworks\\scripts\\????\\createProjects.py` \r\n** if this isn't supposed to be used anymore, lets delete it immediately (we can always recover in emergencies)\r\n\r\nand the 'other' folder in the root.. perhaps never took off?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1146","comments":0,"milestone":null,"number":1146,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1146","assignee":null,"title":"Document Project Generator / clean out old tools","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"closed_at":null,"created_at":"2012-04-07T14:43:53Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":4015514,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-07T19:49:31Z","body":"When attempting to render a mesh to a PDF the ofCairoRender does not output a filled mesh, thus the PDF output looks empty. \r\n\r\nIf you open the file in illustrator you'll see the paths, there but with no stroke or fill. \r\n\r\nWhen I dug into the issue a bit further I realized that Cairo isn't capable of rendering shapes with per vertex colors easily...\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1145","comments":3,"milestone":null,"number":1145,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1145","assignee":null,"title":"ofCairoRenderer ofMesh doesn't render properly to PDF","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-04-06T22:02:01Z","state":"open","user":{"url":"https://api.github.com/users/rezaali","avatar_url":"https://secure.gravatar.com/avatar/548374013b9c6e50ebbd2294e12d4f31?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"548374013b9c6e50ebbd2294e12d4f31","login":"rezaali","id":555207},"id":4010494,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-01T04:21:01Z","body":"When using the ofColor subtraction operator, negative results are clamped to positive values instead of 0. Values are circulating between 0 and 255, which could be useful for hue in HSV but in most cases (R, G, B..) is not what I would expect.\r\n\r\n ofColor a(10, 40, 80);\r\n ofColor b(20, 5, 30);\r\n ofColor c = (a-b); // I get: (246, 45, 50), I would expect: (0, 45, 50)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1144","comments":9,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1144,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1144","assignee":null,"title":"ofColor subtraction and negative values","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-04-06T07:56:44Z","state":"open","user":{"url":"https://api.github.com/users/jembezmamy","avatar_url":"https://secure.gravatar.com/avatar/69a23dc9914cb6bc3202c50e15eabba0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"69a23dc9914cb6bc3202c50e15eabba0","login":"jembezmamy","id":720354},"id":4001148,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-04T12:07:24Z","body":"When using the dragEvent ofDragInfo I always get the following error message:\r\n\r\nwarning: Could not find object file \"/Users/theo/Documents/CODE/__OPENFRAMEWORKS/gitOF/openFrameworks/apps/devApps/macDragDropExample/buildGlutFrameworkHackedWindowLevel10.4/libForeground.a(macx_foreground.o)\" - no debug information available for \"/Users/mcast/Code/GLUT-ToPost/macx_foreground.m\".\r\n\r\nIt doesn't seem to hurt my code but is a bit annoying, especially early on when I wasn't sure if it had anything to do with compile failings. Not a big issue obviously, but it might confuse some other newbie's also.\r\n\r\n(OF 0.07 - Xcode 4.2.1 - OS X 10.7.3 - macbook pro) ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1138","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1138,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1138","assignee":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"title":"benign error message","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2012-04-04T11:05:57Z","state":"open","user":{"url":"https://api.github.com/users/davideo71","avatar_url":"https://secure.gravatar.com/avatar/42c3c1acbdb4a998d8096b49745219cd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"42c3c1acbdb4a998d8096b49745219cd","login":"davideo71","id":1611385},"id":3968742,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-03T17:37:10Z","body":"theo's #1133 made me think about ways that i use noise regularly that might also be abstracted.\r\n\r\ni would also like to see versions of noise that return multidimensional results. normally i do something like:\r\n\r\n\tofVec2 a(ofSignedNoise(t, 0), ofSignedNoise(0, t)); // 1D -> 2D\r\n\tofVec2 b(ofSignedNoise(x, 0), ofSignedNoise(0, y)); // 2D -> 2D\r\n\tofVec3 c(ofSignedNoise(t, 0, 0), ofSignedNoise(0, t, 0), ofSignedNoise(0, 0, t)); // 1D -> 3D\r\n\tofVec3 d(ofSignedNoise(x, 0, 0), ofSignedNoise(0, y, 0), ofSignedNoise(0, 0, (x + y) / 2)); // 2D -> 3D\r\n\r\nand it would be good to spend some time making sure these are really good ways of doing it, then implement them inside some functions like `ofSignedNoise2()` and `ofSignedNoise3()` (for example).","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1134","comments":2,"milestone":null,"number":1134,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1134","assignee":null,"title":"multidimensional noise output","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-04-01T16:44:55Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3917377,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-01T17:48:12Z","body":"ie: the equivalent of doing \r\n\r\nfloat rate = 0.02 + ofNoise(ofGetElapsedTimeF() * 0.02, 100.0) * 0.015;\r\nfloat value = ofSignedNoise( rate, x, y ); \r\n\r\nas one function. \r\n\r\nalso see kyle's #1134 for other noise utils. \r\n\r\nI find myself needing this quite often for more natural random motion where the rate of change is variable. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1133","comments":0,"milestone":null,"number":1133,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1133","assignee":null,"title":"ofNoise and ofSignedNoise with 2nd order control for rate.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-04-01T15:45:11Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":3917018,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=3 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4925'), ('content-length', '55518'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"b3b3a8bd17d4ed7557040a218c1db573"'), ('date', 'Tue, 29 May 2012 19:36:59 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"milestone":null,"state":"open","user":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofStringUtils:: feature discussion","html_url":"https://github.com/openframeworks/openFrameworks/issues/1132","comments":6,"assignee":null,"updated_at":"2012-04-02T02:05:52Z","body":"This is a feature discussion issue for what string features we should add to of.\r\nofZach mentioned some regexp ones from P5 match matchAll\r\nWould be great to get some eyes on this.\r\n\r\nOne approach would be a static class or namespace.\r\nThe idea would be we could include a variety of handy functions that would be useful for people not wanting to get into regexp\r\n\r\n\tofString::contains(str, \"apple\") //returns bool\r\n\tofString::starts(str, \"The\") //returns bool\r\n\tofString::ends(str, \".\") //returns bool\r\n\tofString::count(str, \"apples\") //count how many times apples appears in the \r\n\tofString::join(myVectorStr, \", \"); //this is currently ofJoinString\r\n\tofString::split(someText, \".\"); //this is currently ofSplitString\r\n\tofString::split(someHtml, \"<\", \">\"); //this is the same but returns a vector of things between the start and end delims\r\n\tofString::limit(someText, 200); //limit the text to 200 characters. optional arg to add ... to the end.\r\n\r\nQuestions:\r\n- Should we mirror P5 with match and matchAll or should we indicate that regexp is required? ie regexMatch regexMatchAll ?\r\n- Other string utils we could add?\r\n- Should it be ofStringUtils:: or ofString:: ?\r\n- Something to do a split and then return a vector of float int etc?","number":1132,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1132","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":3911629,"closed_at":null,"created_at":"2012-03-31T17:52:48Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofTTF feature discussion","html_url":"https://github.com/openframeworks/openFrameworks/issues/1131","comments":25,"assignee":null,"updated_at":"2012-05-27T17:40:30Z","body":"This is a feature discussion issue for what should be added / changed to ofTTF.\r\nWould be great to get some eyes on this from @vtron @ofzach @arturoc and anyone with thoughts on the matter.\r\n\r\nTextAreas:\r\n- Fit text to a box\r\n- Handle overflow ( ie either truncate or resize box height )\r\n- non ragged options\r\n- could textAreas work with both ofTTF and ofDrawBitmapString ? abstract text formatting?\r\n\r\nAlignment:\r\n- Left align a string\r\n- Right align\r\n- Center\r\n- Top align \r\n- Base align \r\n\r\nSpacing:\r\n- Kerning\r\n- Leading / line height\r\n\r\nLoading:\r\n- Allow for loading a font up to a max size for drawing at different sizes. \r\n- Allow for selection and loading of specific sizes within one object. ie: myFont.setCurrentSize(12); \r\n- Font family's / sets ? Bold, Italic etc? \r\n\r\nDrawing:\r\n- Allow for drawing font at different sizes. Scale font as needed. \r\n\r\nFormatting:\r\n- Could we somehow allow a string to have different colors, sizes. Right now it is a pain to change colors or sizes. \r\n- would this be replicating basic html or another approach? maybe better as an addon?\r\n\r\nInfo:\r\n- Ability to get the x and y position of the nth character in the string? useful maybe for cursor or selection?\r\n\r\n**Update:**\r\n-Underline\r\n-Render rect behind text ( a la what @kylemcdonald added to ofDrawBitmapString)\r\n-Scale type to fit a rect + keep aspect ratio\r\n-Crazy: text along a path :) ","number":1131,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1131","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"DDDDDD","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography"}],"id":3911537,"closed_at":null,"created_at":"2012-03-31T17:36:25Z"},{"milestone":{"state":"open","description":"","title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"number":5,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61810,"created_at":"2011-12-02T15:29:48Z"},"state":"open","user":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Define standard header for examples.","html_url":"https://github.com/openframeworks/openFrameworks/issues/1130","comments":0,"assignee":null,"updated_at":"2012-03-31T14:44:01Z","body":"Agree on a common format for a header in the contributed example files.","number":1130,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1130","labels":[{"color":"d1af26","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"cccc29","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation"},{"color":"37c200","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy"}],"id":3910580,"closed_at":null,"created_at":"2012-03-31T14:44:01Z"},{"milestone":{"state":"open","description":"","title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"number":5,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61810,"created_at":"2011-12-02T15:29:48Z"},"state":"open","user":{"gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"xcode 4 issues: scheme, auto-generation of schemes, rebuilding OF, sdk, etc","html_url":"https://github.com/openframeworks/openFrameworks/issues/1129","comments":5,"assignee":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-04-24T02:12:05Z","body":"\r\n\r\nXcode 4 mangles OF projects pretty badly in the following ways: \r\n\r\na) it autogenerates schemes, and \"openframeworks\" appears as the chosen scheme\r\nb) it sometimes chooses the wrong SDK for OF -- is there a way to set that?\r\nc) debug and release are not really clear, part of this is a shift in xcode -- but it's much harder to see how things are compiled and to set release or debug\r\nd) I still had issues with OF needing to be recompiled all the time. I tried to fix this, but we should make sure it's done right. the of lib was appearing red even though it had been built, etc. \r\n\r\nI've tried to fix some of this in detroit with the PG, but I don't think it's the right way to do it. Overall, it would be great to have projects work smoothly on xcode 4...\r\n","number":1129,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1129","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"993e7a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"444444","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator"}],"id":3910555,"closed_at":null,"created_at":"2012-03-31T14:39:04Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"upgrade scripts","html_url":"https://github.com/openframeworks/openFrameworks/issues/1128","comments":1,"assignee":null,"updated_at":"2012-03-31T16:32:04Z","body":"When deprecating api's (e.g. ofEvents, ofVertexes), perhaps we could help automate the changes through simple scripts to update api\r\nSuggest sticking to something close to how uncrustify scripts are run (and perhaps there are tools like uncrustify but specifically for this task)","number":1128,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1128","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"37c200","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy"},{"color":"DDDDDD","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals"}],"id":3910549,"closed_at":null,"created_at":"2012-03-31T14:38:19Z"},{"milestone":{"state":"open","description":"","title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"number":5,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61810,"created_at":"2011-12-02T15:29:48Z"},"state":"open","user":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"PG Feature request: Clean examples folder","html_url":"https://github.com/openframeworks/openFrameworks/issues/1126","comments":0,"assignee":null,"updated_at":"2012-04-09T16:47:04Z","body":"It would be nice (and useful for testing the PG) if the PG would get an option to clean the examples folders of all generated files. \r\n\r\nCurrently, the quickest option is to delete the examples folder on disk, and do `git reset --hard HEAD`.\r\n\r\nAs before, milestoned for 0071, but feel free to push back.","number":1126,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1126","labels":[{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"444444","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator"}],"id":3897090,"closed_at":null,"created_at":"2012-03-30T12:51:30Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"5008d5295e9bc2636313c7b50ed5981d","url":"https://api.github.com/users/jesusgollonet","login":"jesusgollonet","id":31100,"avatar_url":"https://secure.gravatar.com/avatar/5008d5295e9bc2636313c7b50ed5981d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"void dragEvent(ofDragInfo dragInfo) limited to 100 files in osx lion","html_url":"https://github.com/openframeworks/openFrameworks/issues/1124","comments":0,"assignee":null,"updated_at":"2012-03-29T16:47:29Z","body":"there is a hard limit of 100 files when using drag & drop into an of app. not sure if it's an of issue, but am curious if it comes from the hacked glutDragEventFunc ","number":1124,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1124","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"DDDDDD","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals"}],"id":3883598,"closed_at":null,"created_at":"2012-03-29T16:47:29Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"7398ab0bbd07832d0289f26773e65077","url":"https://api.github.com/users/imanhp","login":"imanhp","id":1216228,"avatar_url":"https://secure.gravatar.com/avatar/7398ab0bbd07832d0289f26773e65077?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"isFileChanged() for ofImage, ofVideoPlayer, ofSoundPlayer and ofFile","html_url":"https://github.com/openframeworks/openFrameworks/issues/1120","comments":2,"assignee":null,"updated_at":"2012-03-29T13:05:25Z","body":"When loading a file with ofImage, ofSoundPlayer , ofVideoPlayer-file or any ofFile it would be nice to be able to know if the file changed since it was loaded.\r\n\r\nIts very simple to implement with Poco::File->getLastModified() and it would be very nice if this would be built into the above classes.","number":1120,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1120","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":3856005,"closed_at":null,"created_at":"2012-03-28T16:21:45Z"},{"milestone":{"state":"open","description":"","title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"number":5,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61810,"created_at":"2011-12-02T15:29:48Z"},"state":"open","user":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Default paths.make for Android","html_url":"https://github.com/openframeworks/openFrameworks/issues/1118","comments":0,"assignee":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-30T12:19:59Z","body":"paths.make should be in the repo as an example on how to set it up correctly, but changes (i.e. paths unique to every user) to it should be ignored cause everyone will have a different version in their computers so we don't want personal changes to appear in git status.\r\n\r\nI think the best way to solve this is to rename it to paths.make.default, keep this in the repo, maybe with `` instead of your path, and have people make their own paths.make from that one. We track changes to paths.make.default and ignore paths.make. \r\n\r\nThis will probably also need a mechanism in the makefile to fail gracefully and remind the user, if his customized paths.make is missing.","number":1118,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1118","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"2bc4ad","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/android","name":"android"}],"id":3850655,"closed_at":null,"created_at":"2012-03-28T12:19:39Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"b87a82d7c86161432ee6388c7cbd5e2c","url":"https://api.github.com/users/armadillu","login":"armadillu","id":167057,"avatar_url":"https://secure.gravatar.com/avatar/b87a82d7c86161432ee6388c7cbd5e2c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Can't retrieve desired frame rate once set","html_url":"https://github.com/openframeworks/openFrameworks/issues/1117","comments":0,"assignee":null,"updated_at":"2012-04-18T17:13:36Z","body":"Once ofSetFrameRate() is called, I can't find a way to retrieve it. I think implementing a ofGetDesiredFrameRate() in ofAppRunner would make sense, also adding getDesiredFrameRate() to ofAppBaseWindow and all subclasses, where the actual value is stored. \r\n\r\nThis can be useful to compare the desired frame rate with actual frame rate and react accordingly if required.","number":1117,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1117","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":3825582,"closed_at":null,"created_at":"2012-03-27T11:48:00Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"37aca214d4875cd90af9d67072c82642","url":"https://api.github.com/users/vade","login":"vade","id":65011,"avatar_url":"https://secure.gravatar.com/avatar/37aca214d4875cd90af9d67072c82642?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofVBO updateIndexData incorrect buffer type.","html_url":"https://github.com/openframeworks/openFrameworks/issues/1116","comments":5,"assignee":null,"updated_at":"2012-03-26T22:27:14Z","body":"https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/gl/ofVbo.cpp#L343\r\n\r\nIndices should be specified as GL_ELEMENT_ARRAY_BUFFER unless I am mistaken.","number":1116,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1116","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"31e03a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed"},{"color":"DDDDDD","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D"}],"id":3813852,"closed_at":null,"created_at":"2012-03-26T18:26:05Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"2548dbd6a86902ed5260b5f76710b83c","url":"https://api.github.com/users/colormotor","login":"colormotor","id":1239872,"avatar_url":"https://secure.gravatar.com/avatar/2548dbd6a86902ed5260b5f76710b83c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"optimization level in xcode projects","html_url":"https://github.com/openframeworks/openFrameworks/issues/1115","comments":3,"assignee":null,"updated_at":"2012-03-26T18:45:51Z","body":"The default optimization settings for debug builds in example XCode projects is set to Fastest,Smallest thus making debugging very difficult, is there a specific reason for this?","number":1115,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1115","labels":[{"color":"993e7a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode"}],"id":3812318,"closed_at":null,"created_at":"2012-03-26T17:05:14Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"2548dbd6a86902ed5260b5f76710b83c","url":"https://api.github.com/users/colormotor","login":"colormotor","id":1239872,"avatar_url":"https://secure.gravatar.com/avatar/2548dbd6a86902ed5260b5f76710b83c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"macros in ofArduino","html_url":"https://github.com/openframeworks/openFrameworks/issues/1114","comments":1,"assignee":{"gravatar_id":"10960ba0f305803a1cdc7cd6188d643b","url":"https://api.github.com/users/joshuajnoble","login":"joshuajnoble","id":237423,"avatar_url":"https://secure.gravatar.com/avatar/10960ba0f305803a1cdc7cd6188d643b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-31T15:31:31Z","body":"I had some problems because of macro definitions in ofArduino.h overriding an enum in a a class of my codebase ( SHIFT )\r\nIt's not exactly a bug! but I would suggest using enums or const int instead of the macros to avoid any conflicts\r\nI solved the problem by modifying \r\n#define SHIFT 0x05 \r\ninto \r\nconst int SHIFT = 0x05;\r\n\r\nanother solution could be using enumerations as \r\nenum\r\n{\r\n ...\r\n SHIFT = 0x05,\r\n etc...\r\n};\r\n\r\nI believe this would not break any of the existing code\r\n","number":1114,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1114","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":3812275,"closed_at":null,"created_at":"2012-03-26T17:02:21Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"aa6e2a475cab75513c9cc435b28eef31","url":"https://api.github.com/users/OlexandrStepanov","login":"OlexandrStepanov","id":971079,"avatar_url":"https://secure.gravatar.com/avatar/aa6e2a475cab75513c9cc435b28eef31?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Issue with QtKitMovieGrabberExample in apps/devapps","html_url":"https://github.com/openframeworks/openFrameworks/issues/1112","comments":9,"assignee":null,"updated_at":"2012-03-27T14:56:56Z","body":"Hello.\r\n\r\nI'm trying to run camera frame grabing in OSX Lion.\r\nSimple ofVideoGrabber doesn't work - even if I link it with 10.6 SDK (and 10.6 is deployment target) I receive crash in initialization of ofVideoGrabber. Details are the same as in http://forum.openframeworks.cc/index.php/topic,6776.0.html\r\n\r\nI tryed QtKitMovieGrabberExample. It had some problems in compilation - texture property was not synthesized, I wrote this property and compilation run well.\r\nBut linking is fault. All I receive form linker is:\r\n\r\n*Ld bin/movieGrabberExampleDebug.app/Contents/MacOS/movieGrabberExampleDebug normal i386\r\n cd /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample\r\n setenv MACOSX_DEPLOYMENT_TARGET 10.6\r\n /Developer/usr/bin/clang++ -arch i386 -isysroot /Developer/SDKs/MacOSX10.6.sdk -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freeimage/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/GLee/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/rtAudio/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/fmodex/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freetype/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx -F/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin -F/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/glut/lib/osx -filelist /Users/yltastep/Library/Developer/Xcode/DerivedData/movieGrabberExample-aftkspwrgtotrteyzaplfbqzeasd/Build/Intermediates/movieGrabberExample.build/Debug/movieGrabberExample.build/Objects-normal/i386/movieGrabberExampleDebug.LinkFileList -mmacosx-version-min=10.6 -dead_strip ../../../libs/poco/lib/osx/PocoFoundation.a ../../../libs/poco/lib/osx/PocoNet.a ../../../libs/poco/lib/osx/PocoXML.a ../../../libs/poco/lib/osx/PocoUtil.a ../../../libs/tess2/lib/osx/tess2.a ../../../libs/glew/lib/osx/glew.a ../../../libs/cairo/lib/osx/cairo-script-interpreter.a ../../../libs/cairo/lib/osx/cairo.a ../../../libs/cairo/lib/osx/pixman-1.a ../../../libs/fmodex/lib/osx/libfmodex.dylib ../../../libs/rtAudio/lib/osx/rtAudio.a /Users/yltastep/Documents/XCode/openframeworks/libs/openFrameworksCompiled/lib/osx/openFrameworksDebug.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/GLee/lib/osx/GLee.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/rtAudio/lib/osx/rtAudio.a -framework AGL -framework ApplicationServices -framework AudioToolbox -framework Carbon -framework CoreAudio -framework CoreFoundation -framework CoreServices -framework OpenGL -framework QuickTime -framework AppKit -framework Cocoa -framework IOKit -framework GLUT /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoFoundation.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoNet.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoUtil.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoXML.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freetype/lib/osx/freetype.a -lfmodex /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx/freeimage.a -framework QTKit -framework Quartz -framework QuartzCore -o /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin/movieGrabberExampleDebug.app/Contents/MacOS/movieGrabberExampleDebug*\r\n\r\n**Command /Developer/usr/bin/clang++ failed with exit code 1**\r\n\r\nSo no explanation of problem.\r\n\r\nIs somebody ran this example successfully ?\r\nAnd what I'm doing wrong ?\r\n\r\nThanks in advance !\r\n\r\nWith regards.","number":1112,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1112","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"2a8296","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS"}],"id":3807459,"closed_at":null,"created_at":"2012-03-26T12:11:44Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"add a simple regex function like ofSplitString()","html_url":"https://github.com/openframeworks/openFrameworks/issues/1110","comments":1,"assignee":null,"updated_at":"2012-03-25T20:07:16Z","body":"Todd's example has this code a few times in it by hand, but I'm thinking it's so simple it could be added along side ofSplitString() and would be really useful ? for sure, more string utility functions are helpful, and for basic text parsing, this is great. Poco gives us this for free, so it doesn't seem like a huge stretch to think of something like this, plus find and replace, etc. Would make the regex example much shorter. \r\n\r\np5 has something similar, if that's a helpful argument: \r\n\r\nhttp://processing.org/reference/matchAll_.html\r\n\r\n\r\n\tvector < string > ofxRegex::getMatchedStrings (string contents, string regex );\r\n\tvector < string > ofxRegex::getMatchedStrings (string contents, string regex ){\r\n \r\n\t vector < string > results;\r\n\t RegularExpression regEx(regex);\r\n\t RegularExpression::Match match;\r\n \r\n\t while(regEx.match(contents, match) != 0) {\r\n \r\n\t // we get the sub string from the content\r\n\t // and then trim the content so that we\r\n\t // can continue to search \r\n\t string foundStr = contents.substr(match.offset, match.length);\r\n\t contents = contents.substr(match.offset + match.length);\r\n \r\n\t results.push_back(foundStr);\r\n \r\n\t }\r\n\t return results;\r\n\t}","number":1110,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1110","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"31e03a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed"}],"id":3799872,"closed_at":null,"created_at":"2012-03-25T18:56:37Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","url":"https://api.github.com/users/ofZach","login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"mac paths don't seem right until you call \"ofToDataPath()\"","html_url":"https://github.com/openframeworks/openFrameworks/issues/1109","comments":3,"assignee":null,"updated_at":"2012-03-25T18:50:13Z","body":"code to recreate: \r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::setup(){\r\n system(\"pwd;\");\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::update(){\r\n system(\"pwd;\");\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::draw(){\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::keyPressed(int key){\r\n cout << ofToDataPath(\"temp\") << endl;\r\n}\r\n\r\nproduces: \r\n\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n../../../data/temp\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin/emptyExampleDebug.app/Contents/MacOS\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin/emptyExampleDebug.app/Contents/MacOS\r\n\r\nthis is because the code that fixes OSX paths isn't called until you call ofToDataPath(). a good fix I think would be to set ofDataPathRoot (which happens in ofToDataPath) somewhere early in ofRunApp(). Or should it happen even earlier?","number":1109,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1109","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"993e7a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"65a300","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize"},{"color":"2a8296","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS"}],"id":3799653,"closed_at":null,"created_at":"2012-03-25T18:18:28Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","url":"https://api.github.com/users/roymacdonald","login":"roymacdonald","id":974878,"avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"easyCam weird behavior when target changed","html_url":"https://github.com/openframeworks/openFrameworks/issues/1108","comments":7,"assignee":{"gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-04-09T13:06:18Z","body":"easycam behaves as expected when inited but as soon as I change it's target it begins to behave strangely.\r\nthere's this imaginary sphere that we are rotating (it's diameter is min (viewport.width, vieport.height)), when the mouse is dragged from inside to outside of it the rotation just jumps to a \"random\" rotation. \r\nas well when you have a the camera rotated more than 180º in some axis the \"trackball\" doesn't behave as expected. yet this behavior is not seen when the target hasn't been changed.\r\n\r\nDoes any one know what's going on?\r\n\r\nI just came across this but I haven't gone deeply into how easycam handles the mouse to rotate. \r\nI'll do so ASAP. If someone can give me any clues I'll really apreciate it.\r\n\r\nregards!","number":1108,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1108","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"DDDDDD","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D"}],"id":3795495,"closed_at":null,"created_at":"2012-03-25T00:01:54Z"},{"milestone":{"state":"open","description":"","title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"number":5,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61810,"created_at":"2011-12-02T15:29:48Z"},"state":"open","user":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"PG feature request: Generate makefile-only projects","html_url":"https://github.com/openframeworks/openFrameworks/issues/1103","comments":1,"assignee":null,"updated_at":"2012-04-09T16:47:18Z","body":"It would be great if the PG could also generate projects/examples for usage with Eclipse, i.e. just the makefile related files, no CB or other project files.","number":1103,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1103","labels":[{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"444444","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator"}],"id":3754055,"closed_at":null,"created_at":"2012-03-21T21:43:34Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"feature / bug - #pragma omp critical(ofLog)","html_url":"https://github.com/openframeworks/openFrameworks/issues/1098","comments":3,"assignee":null,"updated_at":"2012-03-19T16:18:43Z","body":"whenever i call ofLog beneath openmp i have to wrap it in ```#pragma omp critical (ofLog)``` otherwise i get a crash\r\ni found adding the line above \r\nhttps://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/utils/ofLog.cpp#L84\r\nworks pretty well\r\n\r\nany objections to having it in there?","number":1098,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1098","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"DDDDDD","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals"}],"id":3710293,"closed_at":null,"created_at":"2012-03-19T14:04:51Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"bug ofDirectory::open(string path) actually loads the entire dir into memory?","html_url":"https://github.com/openframeworks/openFrameworks/issues/1075","comments":2,"assignee":{"gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-15T20:34:17Z","body":"I'm finding that `ofDirector::listDir, open` are extremely slow\r\nit seems that it's actually loading the entire dir contents into memory\r\n\r\nit's possible to then do something like\r\n```\r\nofLoadImage(myPixels, dir.getFile(i));\r\n```\r\nand you can quickly load that image from memory. which is faster than\r\n```\r\nofLoadImage(myPixels, dir.getFile(i).getAbsolutePath());\r\n```\r\n\r\nBut this doesn't seem to work consistently (even though the slow listing is consistent)\r\nand surely isn't what we want.","number":1075,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1075","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"DDDDDD","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals"}],"id":3662214,"closed_at":null,"created_at":"2012-03-15T07:54:55Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"c1ec5161b69b4a990436deafb1170d64","url":"https://api.github.com/users/manuelgeoffray","login":"manuelgeoffray","id":808090,"avatar_url":"https://secure.gravatar.com/avatar/c1ec5161b69b4a990436deafb1170d64?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Alpha movies in GStreamer","html_url":"https://github.com/openframeworks/openFrameworks/issues/1070","comments":6,"assignee":null,"updated_at":"2012-03-14T16:03:06Z","body":"Hello,\r\nI needed alpha channel in short length video for a recent project.\r\nIn the forum there is some old zip file for a ofxAlphaVideoPlayer that is still working, but that's OS X & windows only as it's based on QT.\r\nI'm working on linux, and I didn't find anything for GStreamer, so I modified the existing ofGstUtils and ofGstVideoPlayer.\r\nWould you mind if I do a pull request for this?\r\nI can also provide an example with a short length video using animation codec.\r\nWhat do you think?","number":1070,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1070","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":3647640,"closed_at":null,"created_at":"2012-03-14T13:02:41Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"390ea42c23c2c383f973abdafa24bb07","url":"https://api.github.com/users/gabrielstuff","login":"gabrielstuff","id":285033,"avatar_url":"https://secure.gravatar.com/avatar/390ea42c23c2c383f973abdafa24bb07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Continuous integration","html_url":"https://github.com/openframeworks/openFrameworks/issues/1068","comments":10,"assignee":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-17T19:26:40Z","body":"Hey !\r\n\r\nMe again. Didn't find anywhere this infos. I'm currently testing the travis-ci.org service.\r\nAs many people are working on the project and as many many issue are raised, and fixed, I thought it could be great to add some test and thus the travis service.\r\n\r\nIt would avoid the problem met here :\r\nhttps://github.com/openframeworks/openFrameworks/commit/7ca7833ea1afb6bd5a6c54031e3fa688aa0c0ba8\r\nand the discussion here :\r\nhttps://github.com/openframeworks/openFrameworks/issues/804\r\nor there :\r\nhttps://github.com/openframeworks/openFrameworks/pull/921\r\n\r\nI read that :\r\n\r\n>feel free to make a unitTests folder at the root level of OF -\r\n> that is where all unitTests will go.\r\n\r\nBut didn't find them.\r\n\r\nThe travis service will permit to get the little badge we know well : \r\n[![Build Status](https://secure.travis-ci.org/soixantecircuits/openFrameworks.png?branch=master)](http://travis-ci.org/soixantecircuits/openFrameworks)\r\n\r\nAlso, why not adding some spec test, to ensure future development of features.\r\nI'm currently reading :\r\nhttp://www.squidoo.com/cplusplus-behaviour-driven-development-tools#module124841511\r\nhttp://sourceforge.net/apps/mediawiki/turtle/index.php?title=Turtle\r\n\r\nFor those who want some other nice reading :\r\n\r\nhttp://gamesfromwithin.com/exploring-the-c-unit-testing-framework-jungle\r\n\r\nThe travis test is here, currently it is a total fake, but I just proposed the idea of a test driven development\r\nhttp://travis-ci.org/#!/soixantecircuits/openFrameworks/builds/854259 ","number":1068,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1068","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"37c200","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy"}],"id":3631618,"closed_at":null,"created_at":"2012-03-13T15:49:23Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"390ea42c23c2c383f973abdafa24bb07","url":"https://api.github.com/users/gabrielstuff","login":"gabrielstuff","id":285033,"avatar_url":"https://secure.gravatar.com/avatar/390ea42c23c2c383f973abdafa24bb07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Automatic installer + dependencies handler","html_url":"https://github.com/openframeworks/openFrameworks/issues/1063","comments":7,"assignee":null,"updated_at":"2012-03-13T15:21:30Z","body":"Hi !\r\n\r\nRecently, I've been in lot of languages, from C++ to ruby, passing by the colosus of javascript and the sea of php. Dropping by various and strange framework such as the Cinder, the jQuery, the Rails, the Processing, etc ...\r\n\r\n## the situation \r\n\r\nWhat I have noticed is that a strong architecture and a really ease use of add-ons makes a framework get stronger. For instance, if we take a look at Ruby, we see that the use of gems give him a powerfull advance over his friend php. \r\n\r\n### the Rubyist\r\n\r\nThis way of thinking is getting even better with the http://gembundler.com/ [Bundler](http://gembundler.com/) friend. The gems have dependencies and a simple GemFile help to easily install all dependencies for one project.\r\n\r\n### the Cinderist\r\n\r\nFor Cinder, we get the block, as for OSX, it quiet easy and fast. Drag and drop and play/code.\r\n\r\n### the jQueryist\r\n\r\nWell, it is not frequent to have jQuery plugins depending on other jQuery plugins, but there are several way to handle dependencies on jQuery and JS.\r\n\r\n### the nodist\r\n\r\nThis lead us to http://npmjs.org/, which is really nice with dependencies.\r\nFor instance, if you tried cloud9ide, you know that you just have to make sure you get the proper package.json :\r\n\r\n```\r\n{\r\n \"name\": \"node-example\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": {\r\n \"express\": \"2.2.0\"\r\n }\r\n}\r\n```\r\n\r\nThis file ensure that everything before running the server will be installed via npm.\r\n\r\n### the ofist\r\n\r\nRight now, we just have the addons.make file, which is nice but does not do any lifting for us. We have to verify that the ofx addons has been downloaded and is installed in the right folder.\r\n\r\n- Why not creating a script that will allow to manage dependencies compilation ? \r\nI have this wonderful ofxJSONsettings, but he depends on [JSONCPP](http://jsoncpp.sourceforge.net/) and on boost, so here we will have :\r\n\r\npackage.json file in the ofxJSONsettings folder :\r\n\r\n```\r\n{\r\n \"name\": \"ofxJSONsettings\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": [{\r\n \"jsoncpp\": \"0.6.0-rc2\"\r\n \"url\":\"http://jsoncpp.svn.sourceforge.net/svnroot/jsoncpp/trunk/\"\r\n \"protocol\":\"svn\"\r\n }\r\n ]\r\n}\r\n```\r\n\r\nHum, then, we have our little bash script :\r\n\r\n`xadd -addon ofxJSONsettings`\r\n\r\nand for a project, we have to ensure that the make file run `xadd -addon ofxJSONsettings` if it does not find ofXJSONsettings.\r\n\r\nThis could lead to simplify and easify the use of plugin ! Hey, I want the new [mistubaRenderer](https://github.com/satoruhiga/ofxMitsubaRenderer) let's give a try :\r\n\r\n```\r\n{\r\n \"name\": \"ofxMitsubaRenderer\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": [{\r\n \"mitsuba\": \"0.1\"\r\n \"url\":\"https://www.mitsuba-renderer.org/hg/mitsuba-bidir\"\r\n \"protocol\":\"hg\"\r\n }\r\n ]\r\n}\r\n```\r\n\r\nWell, this would be simplify if everybody use some same pattern, and respect some convention.\r\n\r\nSo what do you guys think about that ?\r\n\r\n\r\nThank you !\r\n\r\n\r\n","number":1063,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1063","labels":[{"color":"d68e22","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"37c200","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy"}],"id":3627067,"closed_at":null,"created_at":"2012-03-13T10:44:57Z"},{"milestone":{"state":"open","description":"","title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"number":5,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61810,"created_at":"2011-12-02T15:29:48Z"},"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"regularize code for math addons","html_url":"https://github.com/openframeworks/openFrameworks/issues/1062","comments":4,"assignee":null,"updated_at":"2012-03-12T17:58:20Z","body":"right now there is a lot of duplicated code in the vector math classes. for example, normalize() and getNormalized() have separate implementations. if we follow the pattern of always implementing things in self-modifying methods, then providing copy-returning methods as alternatives, this will reduce the amount of code and make it harder to cause bugs or behavioral discrepancies.\r\n\r\n- implementations of an algorithm should always be self-modifying\r\n- copy-returning versions should be implemented using a differently named method, internally making a copy and calling the self-modifying version on the copy.\r\n\r\ne.g. something like (note, this isn't how it's implemented right now):\r\n\r\n\tinline ofVec2f& ofVec2f::normalize() {\r\n\t\tfloat length = (float)sqrt(x*x + y*y);\r\n\t\tif( length > 0 ) {\r\n\t\t\tx /= length;\r\n\t\t\ty /= length;\r\n\t\t}\r\n\t\treturn *this;\r\n\t}\r\n\r\n\tinline ofVec2f ofVec2f::getNormalized() const {\r\n\t\tofVec2f result = *this;\r\n\t\treturn result.normalize();\r\n\t}\r\n\r\ntaken from this post https://github.com/openframeworks/openFrameworks/pull/1061#issuecomment-4455601","number":1062,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1062","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"37c200","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy"}],"id":3614231,"closed_at":null,"created_at":"2012-03-12T16:33:06Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofVertexes?? ofCurveVertexes","html_url":"https://github.com/openframeworks/openFrameworks/issues/1055","comments":18,"assignee":null,"updated_at":"2012-03-13T13:07:11Z","body":"Just saw this is the documentation.\r\nVertexes is incorrect (wrong plural)\r\nVertices","number":1055,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1055","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"31e03a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed"}],"id":3605277,"closed_at":null,"created_at":"2012-03-12T01:50:19Z"}] + diff --git a/lib/github/tests/ReplayData/PaginatedList.testInterruptedIteration.txt b/lib/github/tests/ReplayData/PaginatedList.testInterruptedIteration.txt new file mode 100644 index 0000000000..c4e977c06f --- /dev/null +++ b/lib/github/tests/ReplayData/PaginatedList.testInterruptedIteration.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4927'), ('content-length', '52085'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last"'), ('etag', '"5e8867ffb4e7630e852b2b231f3b9cdb"'), ('date', 'Tue, 29 May 2012 19:36:57 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-27T18:11:17Z","body":"Since more and more of the OF Core now relies on Poco (ie ofThread, etc) does OF_USING_POCO make sense anymore?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1280","comments":0,"milestone":null,"number":1280,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1280","assignee":null,"title":"deprecate OF_USING_POCO?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-27T18:03:23Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"danomatika","id":480637},"id":4772349,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-28T08:08:24Z","body":"There occurs a weir glitch when compiling the ofShader example with my HD Graphics 3000 (288 Mb) (Mac osx 10.7.4 - Mac Mini - i5 - 2.3Ghz)\n\nI was able to get rid of the glitch by replacing \"gl_FragColor = gl_Color;\" with \"gl_FragColor = 255.0;\" or any other number.\nAnybody knows a reason for the glitch / proper solution?\n\nScreenshot: http://goo.gl/Xdf74\nOpenGL capacities on different graphic cards on apple machines: http://goo.gl/FGQ2N","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1279","comments":2,"milestone":null,"number":1279,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1279","assignee":null,"title":"ofShader example with HD Graphics 3000 issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-26T19:27:56Z","state":"open","user":{"url":"https://api.github.com/users/subtiv","gravatar_id":"837cfe96365c031130a46311eb11d86a","avatar_url":"https://secure.gravatar.com/avatar/837cfe96365c031130a46311eb11d86a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"subtiv","id":1012684},"id":4767675,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-25T18:39:02Z","body":"produces an error on app exit or tex destruction.\n\n OF: OF_LOG_ERROR: trying to delete a non indexed texture, something weird is happening. Deleting anyway\n\nThis is because retain(int id) is a static function in ofTexture.cpp. So we can't retain the depthStencilTexture.\n\nThis suggest we should move the texture allocation of the depth / stencil texture to ofTexture - something which is not possible at the moment. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1277","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1277,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1277","assignee":null,"title":"ofFbo can't retain depthStencil Texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-05-25T18:37:46Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":4758608,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-22T21:26:57Z","body":"\nthe offending line is: \n\nif( speed.getValue() != preSpeed ){\n\nwhich is evaluating as true even through the slider is not touched (float equality test, etc). \n\nif we alter it to something like: \n\nif( fabs(speed.getValue() - preSpeed) > 0.0001 ){\n\nthe code runs fine. probably nicer to add a \"value changed()\" functionality to the slider object though or use EPSILON, etc. \n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1271","comments":0,"milestone":null,"number":1271,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1271","assignee":null,"title":"periodic signal example doesn't run well on windows / cb (float equality error)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-05-22T21:26:57Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":4700182,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-22T16:41:21Z","body":"There's some error that appears on linux systems running the project generator to make VS examples, where the debug and release libs for opencv get added badly to the vs project: \n\n\t%(AdditionalDependencies);opencv_highgui231d.lib;opencv_calib3d231.lib;opencv_imgproc231d.lib;opencv_haartraining_engined.lib;opencv_gpu231d.lib;opencv_flann231.lib;opencv_contrib231d.lib;opencv_video231d.lib;opencv_objdetect231d.lib;zlib.lib;opencv_core231d.lib;opencv_contrib231.lib;opencv_ml231d.lib;opencv_features2d231.lib;opencv_core231.lib;opencv_gpu231.lib;opencv_legacy231d.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_ml231.lib;opencv_imgproc231.lib;opencv_objdetect231.lib;opencv_legacy231.lib;opencv_video231.lib\n\t\t\t\t%(AdditionalLibraryDirectories);..\\..\\..\\addons\\ofxOpenCv\\libs\\opencv\\lib\\vs2010\n\nthis doesn't seem to be the case on osx or windows, which produces correct results: \n\n\t%(AdditionalDependencies);opencv_calib3d231.lib;opencv_contrib231.lib;opencv_core231.lib;opencv_features2d231.lib;opencv_flann231.lib;opencv_gpu231.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_imgproc231.lib;opencv_legacy231.lib;opencv_ml231.lib;opencv_objdetect231.lib;opencv_video231.lib;zlib.lib\n\nwould be good to look at the logic of \"visualStudioProject::addAddon()\" and see if we can fix this.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1268","comments":9,"milestone":null,"number":1268,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1268","assignee":null,"title":"project generator - bad libs for VS / opencv examples","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-05-20T21:50:24Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":4662873,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T00:43:37Z","body":"I woud love some eyes on ofFbo would be great to get it cleaned up and standardized for 0072. \nRight now there are a ton of #ifdefs and some very hard to follow logic, which makes bug fixing quite difficult especially on OPENGL_ES\n\nsee: https://gist.github.com/2711815\n\n@elliotwoods @arturoc @memotv @damiannz @ofZach @kylemcdonald \n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1263","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1263,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1263","assignee":null,"title":"ofFbo.cpp is a huge mess! ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-16T16:27:30Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":4608132,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T14:29:02Z","body":"I added a .mailmap file to the repo to correctly collate all the contributors in spite of changing nick names/email addresses. This is useful when trying to identify contributors for a changelog or similar, or when using the git logging functions like shortlog.\n\nSee the before/after situation here: https://gist.github.com/2710366\n\nI have respected privacy and only used those real names that people have already given in a git ID in the repo. Mainly this addition only associates the different email addresses to one user. @arturoc wins the prize of most used emails! :-)\nThe list is pretty complete, I only had difficulties to associate some IDs to the correct Zachs, since it was not clear for some if @ofZach or @stfj (Zach Gage) was the contributor. Those were left as-is.\n\nIf anybody has objections to their various email being united under their name, please say so and I will correct/remove the relevant entries.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1262","comments":2,"milestone":null,"number":1262,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1262","assignee":null,"title":"Add .mailmap for contributor collation","labels":[],"closed_at":null,"created_at":"2012-05-16T13:44:32Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"id":4604661,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1262.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1262","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1262.patch"}},{"updated_at":"2012-05-16T09:35:31Z","body":"Address #375.\n\nAdd setVolumef(float). Also more clearly define volume ranges (int is 0..255, float is 0..1) and more robust clamping of volume argument.\n\nThis has not been tested on Linux or Windows.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1260","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1260,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1260","assignee":null,"title":"allow float volume on ofVideoPlayer","labels":[],"closed_at":null,"created_at":"2012-05-15T17:50:22Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"damiannz","id":144366},"id":4588997,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1260.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1260","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1260.patch"}},{"updated_at":"2012-05-21T07:31:47Z","body":"This was originally posted @\"biginners\".\n\nhttp://forum.openframeworks.cc/index.php/topic,9527.msg44049.html#msg44049\n\nJoshua noble suggested me to file it as a bug on jithub\n\n\n/////////////////original messages\n\nHello.\n\nI have question about ofShortPixels and ofShortColor.\n\nIf you execute the code below , it'll draw at half way screen height even though I did set aDot at (0. screen height / 4)\n\nAnd another weird thing is it draws 20 pixels instead of 10 pixels which I set for loop for 10 times.\n\nIt only draws correctly with ofPixels and ofColor.\n\nIt doesn't work with ofFloatPixels and ofFloatColor.\n\nPlease help me out.\n\nI need to have RGB value over 255 so I can check if those values are over 255.\n\nThanks in advanced\n\nJin\n\n\n.h file\nCode:\nview plaincopy to clipboardprint?\n\n #pragma once \n #include \"ofMain.h\" \n \n class Dot { \n public: \n ofVec2f location; \n \n Dot(){ \n location.set(0,0); \n } \n \n ~Dot(){} \n }; \n \n class testApp : public ofBaseApp{ \n public: \n void setup(); \n void update(); \n void draw(); \n \n int w,h; \n \n ofTexture particleTexture; \n ofShortPixels * rgbPixels; \n \n ofShortColor& paint(ofShortColor &); \n \n Dot aDot; \n \n \n }; \n\n\n.cpp file\nCode:\nview plaincopy to clipboardprint?\n\n #include \"testApp.h\" \n //-------------------------------------------------------------- \n void testApp::setup(){ \n ofSetFrameRate(30); \n ofSetBackgroundAuto(TRUE); \n ofBackground(0, 0, 0); \n w = ofGetWidth(); \n h = ofGetHeight(); \n \n particleTexture.allocate(w,h,GL_RGB); \n rgbPixels = new ofShortPixels; \n rgbPixels->allocate(w, h, 3); \n aDot.location.set(0, h/4); \n } \n \n //-------------------------------------------------------------- \n void testApp::update(){ \n ofShortColor pixelColor; \n ofShortColor newPixelColor; \n for(int i = 0; i<10; i++){ \n pixelColor = rgbPixels->getColor(aDot.location.x+i, aDot.location.y); \n \n newPixelColor = paint(pixelColor); \n \n rgbPixels->setColor(aDot.location.x+i, aDot.location.y,newPixelColor); \n \n } \n particleTexture.loadData(* rgbPixels); \n } \n \n //-------------------------------------------------------------- \n void testApp::draw(){ \n particleTexture.draw(0, 0, w, h); \n } \n \n ofShortColor & testApp::paint(ofShortColor & _c){ \n \n _c.r += 10; \n _c.g += 2; \n _c.b += 3; \n \n _c.set(_c.r, _c.g, _c.b); \n _c.clamp(); \n \n return _c; \n } ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1257","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1257,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1257","assignee":null,"title":"ofShortPixels doesn't draw pixels correctly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-14T05:46:14Z","state":"open","user":{"url":"https://api.github.com/users/gazaebal","gravatar_id":"f9d7811bb6318fedf7e9f2fe8bfece32","avatar_url":"https://secure.gravatar.com/avatar/f9d7811bb6318fedf7e9f2fe8bfece32?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"gazaebal","id":1736190},"id":4557803,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T21:42:08Z","body":"if i'm not mistaken, the correct way of using ofMatrix4x4 in oF is `glMultMatrixf(myMatrix.getPtr())` or `glLoadMatrixf`.\nThis seems a bit uncomfortable for me.\n\nsome candidates are:\n\n```c++\nofPushMatrix(const ofMatrix4x4 &); //needs alternatives as you might not want to push at the time\nofLoadMatrix(const ofMatrix4x4 &);\nofMultMatrix(const ofMatrix4x4 &);\n\nofMatrix4x4::apply();\nofMatrix4x4::glLoadMatrix(matrixMode = OF_MATRIX_MODE_CURRENT);\n```\n\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1256","comments":5,"milestone":null,"number":1256,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1256","assignee":null,"title":"Feature ofPushMatrix(const ofMatrix4x4 &)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-13T18:20:29Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4554058,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-11T21:24:20Z","body":"\tunsigned char faceSize = 3;\n\tif(data.getNumIndices()){\n\t\tos << \"element face \" << data.getNumIndices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t} else if(data.getMode() == OF_PRIMITIVE_TRIANGLES) {\n\t\tos << \"element face \" << data.getNumVertices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t}\n\nThe facesize is being set as static as 3, but this results in strange exports...things open OK in Meshlab, but exporting to other programs with no faces seems like it won't work","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1252","comments":6,"milestone":null,"number":1252,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1252","assignee":null,"title":"0071 ply (mesh.save()) Point export is broken","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-11T19:45:53Z","state":"open","user":{"url":"https://api.github.com/users/laserpilot","gravatar_id":"07001341fe6c156dddd5b9d06d828cba","avatar_url":"https://secure.gravatar.com/avatar/07001341fe6c156dddd5b9d06d828cba?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"laserpilot","id":1041023},"id":4539985,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:33:31Z","body":"couple of minor bugfixes (absolute path wasn't being detected on second if [absolute] for windows paths)\r\nfixes unixy paths no matter what on windows","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1251","comments":8,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1251,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1251","assignee":null,"title":"Bugfix of to data path","labels":[],"closed_at":null,"created_at":"2012-05-10T06:44:20Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4507572,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1251.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1251","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1251.patch"}},{"updated_at":"2012-05-16T09:43:23Z","body":":(\r\n\r\nIt seems i'm getting double 'data/' in my paths\r\nafter a little tracking down, i found this is because ofSystemLoadDialog changes the current working directory\r\n\r\nso we could try and either fix that by popping the folder after the dialog, \r\nof for windows using something like ```GetModuleFileName``` to get the path of the current exe rather than using the current working directory\r\n\r\nI can't seem to run GetModuleFileName from ofUtils.cpp even though windows.h is included in ofConstants.h (included in ofUtils.h)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1250","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1250,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1250","assignee":null,"title":"bug: ofToDataPath broken again","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-05-10T06:35:24Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4507492,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:42:44Z","body":"'ofx TCPClient :: receiveRaw' was found in the proble.\n\nOriginal :\n\n\tint ofxTCPClient::receiveRawBytes(char * receiveBuffer, int numBytes){\n\t\t\t messageSize = TCPClient.Receive(receiveBuffer, numBytes);\t\n\t\t\t if(messageSize==0){\t\t\n\t\t\t\t\t\tclose();\t\n\t\t\t }\t\n\t\t\t return messageSize;\n\t}\n\nBut 'TCPClient.Receive (receiveBuffer, numBytes)' from '-1' may return\n\nI was modified\n\n\tstring ofxTCPClient::receiveRaw(){\n\t\t\t messageSize = TCPClient.Receive(tmpBuff, TCP_MAX_MSG_SIZE);\n\t\t\t if(messageSize==0){\n\t\t\t\t\t\tclose();\n\t\t\t }\n\t\t\t //TCPClient.Receive is return -1....\n\t\t\t else if(messageSize < 0){ \n\t\t\t\t\t\ttmpBuff[0] = 0;\n\t\t\t }\n\t\t\t else if(messageSize; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"3b0c90696d51253d280f98b01e8e9fae"'), ('date', 'Tue, 29 May 2012 20:18:26 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1218","html_url":"https://github.com/openframeworks/openFrameworks/issues/1218","body":"Updated ofQuickTimePlayer to properly handle videos with an alpha channel. This uses the setPixelFormat() method, so all you need to do is:\r\n```\r\nmyVideoPlayer.setPixelFormat(OF_PIXELS_RGBA);\r\nmyVideoPlayer.loadMovie(\"path/to/movie.mov\");\t\r\nmyVideoPlayer.play();\r\n```","closed_at":null,"labels":[],"title":"ofQuickTimePlayer with alpha","pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/1218.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/1218","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1218.diff"},"created_at":"2012-04-25T18:48:41Z","updated_at":"2012-05-16T09:27:12Z","comments":2,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","due_on":"2012-06-25T07:00:00Z","open_issues":81,"title":"0072 Release","created_at":"2011-12-02T15:29:48Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":5,"id":61810,"state":"open","closed_issues":21},"number":1218,"id":4286936,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/prisonerjohn","gravatar_id":"b52cabeecffe4497699db813a715456f","login":"prisonerjohn","avatar_url":"https://secure.gravatar.com/avatar/b52cabeecffe4497699db813a715456f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":119702}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1217","html_url":"https://github.com/openframeworks/openFrameworks/issues/1217","body":"On 'update', PG should respect existing custom include paths, source files, linker flags and project options (such as optimization settings).\r\n\r\nOR\r\n\r\nXcode project should read and respect `OTHER_LDFLAGS` and `HEADER_SEARCH_PATHS`, and add `OTHER_CFLAGS` from Project.xcconfig; projectGenerator should leave these settings alone unless it figures out they need to be adjusted (this is probably going to be difficult).","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","color":"622425","name":"feature"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","color":"444444","name":"project generator"}],"title":"projectGenerator update doesn't respect existing project settings","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-24T21:03:44Z","updated_at":"2012-04-30T19:43:55Z","comments":0,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","due_on":"2012-06-25T07:00:00Z","open_issues":81,"title":"0072 Release","created_at":"2011-12-02T15:29:48Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":5,"id":61810,"state":"open","closed_issues":21},"number":1217,"id":4269431,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1216","html_url":"https://github.com/openframeworks/openFrameworks/issues/1216","body":"Since I don't want to derail #484 further, this issue deals with the implementation of a deprecation mechanism.\r\nBased on [this](http://stackoverflow.com/questions/295120/c-mark-as-deprecated), I made an OFDEPRECATED preproc macro.\r\n\r\nQUESTION: How do I correctly #ifdef for MacOS/XCode4/llvm?\r\n\r\nCould people test this on different platforms? On linux this works. \r\n\r\n\t\ttestApp.h:\r\n\r\n\t\t#pragma once\r\n\r\n\t\t#ifdef __GNUC__\r\n\t\t// maybe __clang__ for checking against llvm/xcode4?\r\n\t\t#define OFDEPRECATED(message, func) func __attribute__ ((deprecated(message)))\r\n\t\t#elif defined(_MSC_VER)\r\n\t\t#define OFDEPRECATED(message, func) __declspec(deprecated(message)) func\r\n\t\t#else\r\n\t\t#pragma message(\"WARNING: You need to implement DEPRECATED for this compiler\")\r\n\t\t#define OFDEPRECATED(message, func) func\r\n\t\t#endif\r\n\r\n\t\tand \r\n\r\n\t\t\t\tvoid dragEvent(ofDragInfo dragInfo);\r\n\t\t\t\tvoid gotMessage(ofMessage msg);\r\n\t\t\r\n\t\t\t\tOFDEPRECATED(\"This is an old function, don't use!\", void deprecatedFunction(void));\r\n\t\t\t\tOFDEPRECATED(\"Obsolete type, use T2!\", typedef int T1);\r\n\t\t\t\ttypedef int T2;\r\n\t\t\t\tOFDEPRECATED(\"This is an old variable, don't use!\", int oldvar3);\r\n\t\t\t\t//This breaks a bit cause it's used in the constructor of testApp, so always triggers.\r\n\r\n\t\t};\r\n\t\tOFDEPRECATED(\"old class!\", class oldClass {\r\n\t\t\tpublic:\r\n\t\t\t\toldClass();\r\n\t\t\t\tvirtual ~oldClass();\r\n\t\t});\r\n\r\n\t\ttestApp.cpp:\r\n\r\n\t\tvoid testApp::setup(){\r\n\t\t\tOFDEPRECATED(\"old string. Don't use\", string oldstring);\r\n\t\t\t// Uncomment these to trigger deprecation warnings\r\n\t\t//\tdeprecatedFunction();\r\n\t\t//\tT1 t1object = 5;\r\n\t\t//\toldstring = \"bla\";\r\n\t\t//\toldvar3=5;\r\n\t\t//\toldClass bla;\r\n\t\t}\r\n","closed_at":null,"labels":[],"title":"Implement deprecation mechanism","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-24T21:03:39Z","updated_at":"2012-05-02T10:19:07Z","comments":11,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","due_on":"2012-06-25T07:00:00Z","open_issues":81,"title":"0072 Release","created_at":"2011-12-02T15:29:48Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":5,"id":61810,"state":"open","closed_issues":21},"number":1216,"id":4269429,"assignee":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1215","html_url":"https://github.com/openframeworks/openFrameworks/issues/1215","body":"When using PG's 'update' functionality on apps are in paths with non-standard depths (in my case, `oF/apps/dir/subdir/subsubdir`) the OF_PATH and #include directives in the resulting Project.xcconfig don't match, which means oF projects won't compile:\r\n\r\n~~~~\r\n//THE PATH TO THE ROOT OF OUR OF PATH RELATIVE TO THIS PROJECT.\r\n//THIS NEEDS TO BE DEFINED BEFORE CoreOF.xcconfig IS INCLUDED\r\nOF_PATH = ../../../..\r\n\r\n//THIS HAS ALL THE HEADER AND LIBS FOR OF CORE\r\n#include \"../../../../../libs/openFrameworksCompiled/project/osx/CoreOF.xcconfig\"\r\n~~~~\r\n\r\nNote extra `../` in the `#include` path.","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","color":"444444","name":"project generator"}],"title":"projectGenerator sets incorrect path in Project.xcconfig","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-24T20:59:57Z","updated_at":"2012-04-30T19:43:14Z","comments":1,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","due_on":"2012-06-25T07:00:00Z","open_issues":81,"title":"0072 Release","created_at":"2011-12-02T15:29:48Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":5,"id":61810,"state":"open","closed_issues":21},"number":1215,"id":4269359,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1202","html_url":"https://github.com/openframeworks/openFrameworks/issues/1202","body":"i'm teaching a workshop right now and i feel like it's ridiculous that i need to explain pointers just to access video :)\r\n\r\nlet's add this!","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","color":"622425","name":"feature"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","color":"DDDDDD","name":"section-video"}],"title":"ofVideoPlayer etc needs ofColor access","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-22T18:42:58Z","updated_at":"2012-04-22T23:56:33Z","comments":3,"milestone":null,"number":1202,"id":4231092,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1201","html_url":"https://github.com/openframeworks/openFrameworks/issues/1201","body":"DO NOT PULL YET!\r\n\r\nHey all\r\n\r\nHere's the 'off-axis camera' setup we worked on at ScreenLab last weekend.\r\nIt allows you to:\r\n\r\n* Set lens offset on a camera\r\n* Calculate the camera parameters based on a 'view portal' defined by 3 points (top left, bottom left, bottom right)\r\n\r\nCurrently the changes involve editing ofBaseRenderer (and therefore all other renderers) to support lensOffset parameter (default 0,0). We could remove this since ofCamera doesn't actually use ofSetupScreenPerspective\r\n\r\nSo let's have a quick chat about what needs chaning to make this core friendly and then probably pull after 0071 release?","closed_at":null,"labels":[],"title":"Feature provocation pull request: ofCamera lens offset","pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/1201.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/1201","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1201.diff"},"created_at":"2012-04-22T15:55:29Z","updated_at":"2012-05-29T17:34:24Z","comments":9,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","due_on":"2012-06-25T07:00:00Z","open_issues":81,"title":"0072 Release","created_at":"2011-12-02T15:29:48Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":5,"id":61810,"state":"open","closed_issues":21},"number":1201,"id":4230131,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1190","html_url":"https://github.com/openframeworks/openFrameworks/issues/1190","body":"I'm investigating the way to draw bezier curves / nurbs etc. with shaders, here is a list a links and information I found that can improve render times with OF. Any way I must admit I'm new to openGL & shaders so maybe someone can take this to implement maybe an add-on or maybe to added to the core.\r\n\r\n**Resolution Independent Curve Rendering using Programmable Graphics Hardware**\r\nhttp://research.microsoft.com/en-us/um/people/cloop/loopblinn05.pdf\r\n\r\n**Resolution independent GPU accelerated Curve & Font rendering**\r\n**GPU based Resolution Independent Font & Curve Rendering – initial Release**\r\nhttp://jausoft.com/blog/2011/04/01/resolution-independent-gpu-accelerated-curve-font-rendering/\r\nhttp://ramisantina.com/blog/?p=73\r\nhttp://vimeo.com/21810192\r\nhttp://jogamp.org/doc/gpunurbs2011/p70-santina.pdf\r\n\r\n**Curvy blues**\r\nhttp://www.mdk.org.pl/2007/10/27/curvy-blues\r\n\r\n**Vector drawing: OpenGL shaders and cairo & vector hardware tessellation**\r\nhttp://www.mdk.org.pl/2007/8/6/vector-drawing-opengl-shaders-and-cairo\r\n\r\n**ShivaVG & Random Access Rendering of Animated Vector Graphics**\r\nhttp://ivanleben.blogspot.com.es/2007/07/shivavg-open-source-ansi-c-openvg.html\r\nhttp://www.youtube.com/watch?v=mD8X-e5-sY4\r\nhttp://www.youtube.com/watch?v=U4USCfwORUg\r\nhttp://andrejas-atelier.com/ivan/IvanLebenHonsThesis.pdf\r\n\r\n**RAVG**\r\nhttp://research.microsoft.com/en-us/um/people/hoppe/proj/ravg/\r\n\r\n**NV Path Rendering Videos (seams only with nvidia)**\r\nhttp://developer.nvidia.com/nv-path-rendering-videos\r\n\r\n**Vector drawing: OpenGL polygon tessellation**\r\nhttp://www.mdk.org.pl/2007/8/16/vector-drawing-opengl-polygon-tessellation\r\nhttp://zrusin.blogspot.com.es/2006/07/hardware-accelerated-polygon-rendering.html\r\n","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","color":"622425","name":"feature"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-2D","color":"DDDDDD","name":"section-2D"}],"title":"Bezier Shaders & Vector openGL rendering","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-20T09:23:00Z","updated_at":"2012-05-14T01:22:17Z","comments":8,"milestone":null,"number":1190,"id":4207350,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/microbians","gravatar_id":"98c91e60903b83c0a022ee70cca9ca21","login":"microbians","avatar_url":"https://secure.gravatar.com/avatar/98c91e60903b83c0a022ee70cca9ca21?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1662136}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1189","html_url":"https://github.com/openframeworks/openFrameworks/issues/1189","body":"ofSetCurveResolution is not changing the resolution using ofBezier nor ofBezierVertex (tested with ofScale is more easy to see the bug)\r\n\r\n ofFill();\r\n ofSetHexColor(0xFF9933);\r\n ofBeginShape();\r\n ofVertex(x0,y0);\r\n ofBezierVertex(x1,y1,x2,y2,x3,y3);\r\n ofEndShape();\r\n\r\nall works fine when using ofPath directly:\r\n\r\n ofPath curve;\r\n curve.setFillHexColor(0xFF000);\r\n curve.setCurveResolution(120);\r\n curve.moveTo(x0, y0);\r\n curve.bezierTo(x1,y1,x2,y2,x3,y3);\r\n curve.draw();\r\n\r\nmore: http://forum.openframeworks.cc/index.php/topic,9596.0.html","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"}],"title":"ofSetCurveResolution + ofBezierVertex bug","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-20T08:51:51Z","updated_at":"2012-05-16T09:41:20Z","comments":0,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","due_on":"2012-06-25T07:00:00Z","open_issues":81,"title":"0072 Release","created_at":"2011-12-02T15:29:48Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":5,"id":61810,"state":"open","closed_issues":21},"number":1189,"id":4206982,"assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"state":"open","user":{"url":"https://api.github.com/users/microbians","gravatar_id":"98c91e60903b83c0a022ee70cca9ca21","login":"microbians","avatar_url":"https://secure.gravatar.com/avatar/98c91e60903b83c0a022ee70cca9ca21?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1662136}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1186","html_url":"https://github.com/openframeworks/openFrameworks/issues/1186","body":"If you set up an ofFbo as follows...\r\n\r\n```cpp\r\n ofFbo::Settings s;\r\n s.width = 400;\r\n s.height = 400;\r\n s.textureTarget = GL_TEXTURE_2D;\r\n s.useDepth = true;\r\n s.depthAsTexture = true;\r\n s.dethInternalFormat = GL_DEPTH_COMPONENT24;\r\n```\r\n\r\n...then the colour texture's dimensions are set to be the next POTs up but the depth texture's dimensions don't seem to be. ","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","color":"DDDDDD","name":"section-3D"}],"title":"ofFbo depthBufferTex can be inconsistent with colour texture","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-18T15:08:32Z","updated_at":"2012-05-01T04:10:23Z","comments":2,"milestone":null,"number":1186,"id":4174070,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/neilmendoza","gravatar_id":"3e46b12547e7bac19eb982bc512b19c4","login":"neilmendoza","avatar_url":"https://secure.gravatar.com/avatar/3e46b12547e7bac19eb982bc512b19c4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":818571}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1178","html_url":"https://github.com/openframeworks/openFrameworks/issues/1178","body":"As mentioned here: http://forum.openframeworks.cc/index.php?topic=9107.0\r\nOpenGLES2 not working. It is always falls back to ES1. I tested it only on iPad2 with iOS 5.0.1.","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","color":"2babad","name":"iOS"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"}],"title":"OpenGLES2 not working","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-16T11:19:36Z","updated_at":"2012-05-16T09:44:27Z","comments":0,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","due_on":"2012-06-25T07:00:00Z","open_issues":81,"title":"0072 Release","created_at":"2011-12-02T15:29:48Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":5,"id":61810,"state":"open","closed_issues":21},"number":1178,"id":4132608,"assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"state":"open","user":{"url":"https://api.github.com/users/erinnovations","gravatar_id":"29639bbeb3afdde8fb3c7e273e5e43c6","login":"erinnovations","avatar_url":"https://secure.gravatar.com/avatar/29639bbeb3afdde8fb3c7e273e5e43c6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":253455}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1175","html_url":"https://github.com/openframeworks/openFrameworks/issues/1175","body":"in ofTexture::loadData we are doing:\r\n\r\n\r\n\t//------------------------ likely, we are uploading continuous data\r\n\tGLint prevAlignment;\r\n\tglGetIntegerv(GL_UNPACK_ALIGNMENT, &prevAlignment);\r\n\tglPixelStorei(GL_UNPACK_ALIGNMENT, 1);\r\n\r\nany reason for this? leaving the default works too. i've been working with a huge video and the transfer rates on some cards were super slow with ofTexture::loadData. even glDrawPixels was faster, i've finally used pbo's but later looking at ofTexture discovered this lines and i suspect that it could be the reason for loadData being slower, haven't tested it yet though.","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","color":"DDDDDD","name":"section-3D"}],"title":"GL_UNPACK_ALIGNMENT 1 in ofTexture","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-14T13:45:42Z","updated_at":"2012-04-14T13:45:55Z","comments":0,"milestone":null,"number":1175,"id":4117762,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1174","html_url":"https://github.com/openframeworks/openFrameworks/issues/1174","body":"one returns the result (dot) the other performs in place (cross), i.e. overrides the contents\r\nThe two definitions are inconsistent\r\npropose rename `ofVec3f::dot` to become `ofVec3f::getDotted` in line with `ofVec3f::getCrossed`","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","color":"31e03a","name":"fix-proposed"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","color":"DDDDDD","name":"section-internals"}],"title":"bug : inconsistent API for ofVec3f::dot and ofVec3f::cross","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-13T17:09:38Z","updated_at":"2012-05-16T09:39:22Z","comments":9,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","due_on":"2012-06-25T07:00:00Z","open_issues":81,"title":"0072 Release","created_at":"2011-12-02T15:29:48Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":5,"id":61810,"state":"open","closed_issues":21},"number":1174,"id":4108582,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1173","html_url":"https://github.com/openframeworks/openFrameworks/issues/1173","body":"If you pass a string containing non-ascii characters to ofToHex(), the non-ascii characters (with character codes above 127) will be output as ffffxxxx (it depends on the exact character value and the size of the int type on the platform you are compiling for).\r\nThe problem is due to an incorrect cast in the ostringstream operation inside the loop.\r\nInstead of directly casting the (signed) char from the input character to an unsigned int, the input character must first be cast to an unsigned char.\r\nIn other words, instead of:\r\n``` out << setfill('0') << setw(2) << hex << (unsigned int) value[i];```\r\nit should be:\r\n``` out << setfill('0') << setw(2) << hex << (unsigned int) ((unsigned char)value[i]);```\r\nor maybe even:\r\n``` out << setfill('0') << setw(2) << hex << static_cast(static_cast(value[i]));```\r\nif you prefer C++ style casts over C style casts. :)\r\n\r\nHTH\r\n/Jesper","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","color":"65a300","name":"bitesize"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","color":"31e03a","name":"fix-proposed"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","color":"DDDDDD","name":"section-internals"}],"title":"ofToHex(string) is wrong for non-ascii input","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-13T14:42:30Z","updated_at":"2012-04-14T04:20:36Z","comments":1,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","due_on":"2012-06-25T07:00:00Z","open_issues":81,"title":"0072 Release","created_at":"2011-12-02T15:29:48Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":5,"id":61810,"state":"open","closed_issues":21},"number":1173,"id":4104336,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/pappis","gravatar_id":"fbf3d56c96cf5b891056530066549692","login":"pappis","avatar_url":"https://secure.gravatar.com/avatar/fbf3d56c96cf5b891056530066549692?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1640543}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1171","html_url":"https://github.com/openframeworks/openFrameworks/issues/1171","body":"if I call ofBeginSaveScreenAsPDF using ofEasyCam or the ofCamera, the pdf doesn't have the perspective of the camera. There's a parameter b3d to ofBeginSaveScreenAsPDF which I interpret to be \"render taking into account 3d transforms\", but it doesn't seem to have any effect.\r\n\r\nmore on the forum\r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,9542.0.html","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","color":"DDDDDD","name":"section-3D"}],"title":"ofBeginSaveScreenAsPDF ignores 3d transformations","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-12T10:09:42Z","updated_at":"2012-04-12T10:09:42Z","comments":0,"milestone":null,"number":1171,"id":4081188,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/jesusgollonet","gravatar_id":"5008d5295e9bc2636313c7b50ed5981d","login":"jesusgollonet","avatar_url":"https://secure.gravatar.com/avatar/5008d5295e9bc2636313c7b50ed5981d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":31100}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1167","html_url":"https://github.com/openframeworks/openFrameworks/issues/1167","body":"if I have `ofEvent boolEvent` and i try to call `ofNotifyEvent( boolEvent, true )` i get a `no matching function` error as the compiler cannot coerce `true` to a `bool &`.\r\n\r\nto solve this, instead of this:\r\n\r\n~~~~\r\nofEvent boolEvent;\r\n...\r\nofNotifyEvent( boolEvent, true );\r\n~~~~\r\n\r\ni need to write this:\r\n\r\n~~~~\r\nofEvent boolEvent;\r\n...\r\nbool myBool = true;\r\nofNotifyEvent( boolEvent, myBool );\r\n~~~~\r\n\r\nthis is kind of annoying.","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"}],"title":"ofNotifyEvent( boolEvent, true ) fails to compile","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-11T12:03:34Z","updated_at":"2012-04-13T14:54:18Z","comments":2,"milestone":null,"number":1167,"id":4063456,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1166","html_url":"https://github.com/openframeworks/openFrameworks/issues/1166","body":"It's currently not possible to have an event without arguments\r\n\r\n`ofEvent testEvent;` -- fails to compile\r\n","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","color":"622425","name":"feature"}],"title":"ofEvent lacks simple, argument-free use case","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-11T12:00:19Z","updated_at":"2012-04-11T13:21:33Z","comments":2,"milestone":null,"number":1166,"id":4063417,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1165","html_url":"https://github.com/openframeworks/openFrameworks/issues/1165","body":"It's currently not possible to write `ofLogError( \"serial\", \"error %i connecting to serial\", serialError )`. \r\n\r\nThere should be `ofLogError( string module, string format, ... )` methods as with normal ofLog.","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","color":"622425","name":"feature"}],"title":"ofLogError, ofLogWarning lack format, ... args","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-11T11:56:33Z","updated_at":"2012-04-21T15:41:01Z","comments":6,"milestone":null,"number":1165,"id":4063366,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1152","html_url":"https://github.com/openframeworks/openFrameworks/issues/1152","body":"change `allocate(_w, _h, OF_IMAGE_COLOR);` to `allocate(_w, _h, OF_IMAGE_COLOR_ALPHA);` (via reza on irc)","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","color":"31e03a","name":"fix-proposed"}],"title":"grabScreen in ofImage fails on Android","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-09T17:15:21Z","updated_at":"2012-04-10T16:47:19Z","comments":4,"milestone":null,"number":1152,"id":4032047,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1151","html_url":"https://github.com/openframeworks/openFrameworks/issues/1151","body":"the module name is no longer printed if it's coming from OF itself.\r\n\r\ninstead of the constant name, a human-readable string is printed.\r\n\r\nexample output from project generator: http://pastebin.com/raw.php?i=0dp938Jx","closed_at":null,"labels":[],"title":"shorten + simplify ofLog output","pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/1151.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/1151","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1151.diff"},"created_at":"2012-04-08T21:13:14Z","updated_at":"2012-05-29T14:46:40Z","comments":6,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","due_on":"2012-06-25T07:00:00Z","open_issues":81,"title":"0072 Release","created_at":"2011-12-02T15:29:48Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":5,"id":61810,"state":"open","closed_issues":21},"number":1151,"id":4023525,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1150","html_url":"https://github.com/openframeworks/openFrameworks/issues/1150","body":"\r\nWorking on the project generator, which has a fair amount of logging, I'm concerned about how much space we loose on each line: \r\n\r\n OF: OF_LOG_NOTICE:\r\n\r\nit's about 15-20 characters or so, pretty significant where each line is 80, so alot more wrapping happens then I'd like, making the results less cleaner or organized. \r\n\r\nI propose we alter \r\n\r\n string ofGetLogLevelName(ofLogLevel level){\r\n switch(level){\r\n case OF_LOG_VERBOSE:\r\n return \"OF_LOG_VERBOSE\";\r\n break;\r\n case OF_LOG_NOTICE:\r\n return \"OF_LOG_NOTICE\";\r\n break;\r\n case OF_LOG_WARNING:\r\n return \"OF_LOG_WARNING\";\r\n break;\r\n case OF_LOG_ERROR:\r\n return \"OF_LOG_ERROR\";\r\n break;\r\n case OF_LOG_FATAL_ERROR:\r\n return \"OF_LOG_FATAL_ERROR\";\r\n break;\r\n case OF_LOG_SILENT:\r\n return \"OF_LOG_SILENT\";\r\n break;\r\n default:\r\n return \"\";\r\n }\r\n }\r\n\r\nso that we can have something like : \r\n\r\n (of:notice) \r\n (of:verbose) \r\n (of:error) \r\n\r\nor something smaller and if we loose the all caps, maybe less threatening :)\r\n","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","color":"65a300","name":"bitesize"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","color":"31e03a","name":"fix-proposed"}],"title":"propose shortening ofLog console message length","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-08T20:32:49Z","updated_at":"2012-04-17T14:47:36Z","comments":4,"milestone":null,"number":1150,"id":4023305,"assignee":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1146","html_url":"https://github.com/openframeworks/openFrameworks/issues/1146","body":"Hey all\r\n\r\nA few sections of the repo need some love to put them in line with the project generator:\r\n\r\n1. Readme's\r\n2. Rogue old project generators\r\n3. Document complementing tools\r\n\r\n# Readme\r\n\r\nThe readme's in the root of the repo need some love\r\nnone of them mention project generator \r\n\r\ni feel like each should be a description of how to get to a working project generator on each of the respective platforms\r\n\r\nalso note:\r\n* .vs2010 is missing\r\n* readme.txt repeats information from the other readme's (i.e. it's a list of platform specific instructions)\r\ni think this should be perhaps a little description of oF and a few tips on how to get started\r\n\r\n# Rogue old 'project generators' / documenting complementary tools for project generator\r\n\r\nHere's things I can find in the repo which don't make sense to me at the moment:\r\n\r\n* `openFrameworks\\scripts\\????\\compileAllExamples.bat`\r\n** is this supposed to be run (optionally) after the project generator?\r\n** why is the project template within this folder?\r\n* `openFrameworks\\scripts\\????\\createProjects.py` \r\n** if this isn't supposed to be used anymore, lets delete it immediately (we can always recover in emergencies)\r\n\r\nand the 'other' folder in the root.. perhaps never took off?","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","color":"cccc29","name":"documentation"}],"title":"Document Project Generator / clean out old tools","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-07T14:43:53Z","updated_at":"2012-04-07T15:00:32Z","comments":0,"milestone":null,"number":1146,"id":4015514,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1145","html_url":"https://github.com/openframeworks/openFrameworks/issues/1145","body":"When attempting to render a mesh to a PDF the ofCairoRender does not output a filled mesh, thus the PDF output looks empty. \r\n\r\nIf you open the file in illustrator you'll see the paths, there but with no stroke or fill. \r\n\r\nWhen I dug into the issue a bit further I realized that Cairo isn't capable of rendering shapes with per vertex colors easily...\r\n\r\n","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","color":"31e03a","name":"fix-proposed"}],"title":"ofCairoRenderer ofMesh doesn't render properly to PDF","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-06T22:02:01Z","updated_at":"2012-04-07T19:49:31Z","comments":3,"milestone":null,"number":1145,"id":4010494,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/rezaali","gravatar_id":"548374013b9c6e50ebbd2294e12d4f31","login":"rezaali","avatar_url":"https://secure.gravatar.com/avatar/548374013b9c6e50ebbd2294e12d4f31?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":555207}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1144","html_url":"https://github.com/openframeworks/openFrameworks/issues/1144","body":"When using the ofColor subtraction operator, negative results are clamped to positive values instead of 0. Values are circulating between 0 and 255, which could be useful for hue in HSV but in most cases (R, G, B..) is not what I would expect.\r\n\r\n ofColor a(10, 40, 80);\r\n ofColor b(20, 5, 30);\r\n ofColor c = (a-b); // I get: (246, 45, 50), I would expect: (0, 45, 50)","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"}],"title":"ofColor subtraction and negative values","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-06T07:56:44Z","updated_at":"2012-05-01T04:21:01Z","comments":9,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","due_on":"2012-06-25T07:00:00Z","open_issues":81,"title":"0072 Release","created_at":"2011-12-02T15:29:48Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":5,"id":61810,"state":"open","closed_issues":21},"number":1144,"id":4001148,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/jembezmamy","gravatar_id":"69a23dc9914cb6bc3202c50e15eabba0","login":"jembezmamy","avatar_url":"https://secure.gravatar.com/avatar/69a23dc9914cb6bc3202c50e15eabba0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":720354}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1138","html_url":"https://github.com/openframeworks/openFrameworks/issues/1138","body":"When using the dragEvent ofDragInfo I always get the following error message:\r\n\r\nwarning: Could not find object file \"/Users/theo/Documents/CODE/__OPENFRAMEWORKS/gitOF/openFrameworks/apps/devApps/macDragDropExample/buildGlutFrameworkHackedWindowLevel10.4/libForeground.a(macx_foreground.o)\" - no debug information available for \"/Users/mcast/Code/GLUT-ToPost/macx_foreground.m\".\r\n\r\nIt doesn't seem to hurt my code but is a bit annoying, especially early on when I wasn't sure if it had anything to do with compile failings. Not a big issue obviously, but it might confuse some other newbie's also.\r\n\r\n(OF 0.07 - Xcode 4.2.1 - OS X 10.7.3 - macbook pro) ","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","color":"2a8296","name":"macOS"}],"title":"benign error message","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-04T11:05:57Z","updated_at":"2012-04-04T12:07:24Z","comments":1,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","due_on":"2012-06-25T07:00:00Z","open_issues":81,"title":"0072 Release","created_at":"2011-12-02T15:29:48Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":5,"id":61810,"state":"open","closed_issues":21},"number":1138,"id":3968742,"assignee":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"state":"open","user":{"url":"https://api.github.com/users/davideo71","gravatar_id":"42c3c1acbdb4a998d8096b49745219cd","login":"davideo71","avatar_url":"https://secure.gravatar.com/avatar/42c3c1acbdb4a998d8096b49745219cd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1611385}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1134","html_url":"https://github.com/openframeworks/openFrameworks/issues/1134","body":"theo's #1133 made me think about ways that i use noise regularly that might also be abstracted.\r\n\r\ni would also like to see versions of noise that return multidimensional results. normally i do something like:\r\n\r\n\tofVec2 a(ofSignedNoise(t, 0), ofSignedNoise(0, t)); // 1D -> 2D\r\n\tofVec2 b(ofSignedNoise(x, 0), ofSignedNoise(0, y)); // 2D -> 2D\r\n\tofVec3 c(ofSignedNoise(t, 0, 0), ofSignedNoise(0, t, 0), ofSignedNoise(0, 0, t)); // 1D -> 3D\r\n\tofVec3 d(ofSignedNoise(x, 0, 0), ofSignedNoise(0, y, 0), ofSignedNoise(0, 0, (x + y) / 2)); // 2D -> 3D\r\n\r\nand it would be good to spend some time making sure these are really good ways of doing it, then implement them inside some functions like `ofSignedNoise2()` and `ofSignedNoise3()` (for example).","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","color":"622425","name":"feature"}],"title":"multidimensional noise output","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-01T16:44:55Z","updated_at":"2012-04-03T17:37:10Z","comments":2,"milestone":null,"number":1134,"id":3917377,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=3 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4973'), ('content-length', '55788'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"866bf23c3eacebec1bf87ae32d99f1d0"'), ('date', 'Tue, 29 May 2012 20:18:27 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-04-01T17:48:12Z","body":"ie: the equivalent of doing \r\n\r\nfloat rate = 0.02 + ofNoise(ofGetElapsedTimeF() * 0.02, 100.0) * 0.015;\r\nfloat value = ofSignedNoise( rate, x, y ); \r\n\r\nas one function. \r\n\r\nalso see kyle's #1134 for other noise utils. \r\n\r\nI find myself needing this quite often for more natural random motion where the rate of change is variable. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1133","comments":0,"milestone":null,"number":1133,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1133","assignee":null,"title":"ofNoise and ofSignedNoise with 2nd order control for rate.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-04-01T15:45:11Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3917018,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-02T02:05:52Z","body":"This is a feature discussion issue for what string features we should add to of.\r\nofZach mentioned some regexp ones from P5 match matchAll\r\nWould be great to get some eyes on this.\r\n\r\nOne approach would be a static class or namespace.\r\nThe idea would be we could include a variety of handy functions that would be useful for people not wanting to get into regexp\r\n\r\n\tofString::contains(str, \"apple\") //returns bool\r\n\tofString::starts(str, \"The\") //returns bool\r\n\tofString::ends(str, \".\") //returns bool\r\n\tofString::count(str, \"apples\") //count how many times apples appears in the \r\n\tofString::join(myVectorStr, \", \"); //this is currently ofJoinString\r\n\tofString::split(someText, \".\"); //this is currently ofSplitString\r\n\tofString::split(someHtml, \"<\", \">\"); //this is the same but returns a vector of things between the start and end delims\r\n\tofString::limit(someText, 200); //limit the text to 200 characters. optional arg to add ... to the end.\r\n\r\nQuestions:\r\n- Should we mirror P5 with match and matchAll or should we indicate that regexp is required? ie regexMatch regexMatchAll ?\r\n- Other string utils we could add?\r\n- Should it be ofStringUtils:: or ofString:: ?\r\n- Something to do a split and then return a vector of float int etc?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1132","comments":6,"milestone":null,"number":1132,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1132","assignee":null,"title":"ofStringUtils:: feature discussion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-31T17:52:48Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3911629,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-27T17:40:30Z","body":"This is a feature discussion issue for what should be added / changed to ofTTF.\r\nWould be great to get some eyes on this from @vtron @ofzach @arturoc and anyone with thoughts on the matter.\r\n\r\nTextAreas:\r\n- Fit text to a box\r\n- Handle overflow ( ie either truncate or resize box height )\r\n- non ragged options\r\n- could textAreas work with both ofTTF and ofDrawBitmapString ? abstract text formatting?\r\n\r\nAlignment:\r\n- Left align a string\r\n- Right align\r\n- Center\r\n- Top align \r\n- Base align \r\n\r\nSpacing:\r\n- Kerning\r\n- Leading / line height\r\n\r\nLoading:\r\n- Allow for loading a font up to a max size for drawing at different sizes. \r\n- Allow for selection and loading of specific sizes within one object. ie: myFont.setCurrentSize(12); \r\n- Font family's / sets ? Bold, Italic etc? \r\n\r\nDrawing:\r\n- Allow for drawing font at different sizes. Scale font as needed. \r\n\r\nFormatting:\r\n- Could we somehow allow a string to have different colors, sizes. Right now it is a pain to change colors or sizes. \r\n- would this be replicating basic html or another approach? maybe better as an addon?\r\n\r\nInfo:\r\n- Ability to get the x and y position of the nth character in the string? useful maybe for cursor or selection?\r\n\r\n**Update:**\r\n-Underline\r\n-Render rect behind text ( a la what @kylemcdonald added to ofDrawBitmapString)\r\n-Scale type to fit a rect + keep aspect ratio\r\n-Crazy: text along a path :) ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1131","comments":25,"milestone":null,"number":1131,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1131","assignee":null,"title":"ofTTF feature discussion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-31T17:36:25Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3911537,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-31T14:44:01Z","body":"Agree on a common format for a header in the contributed example files.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1130","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1130,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1130","assignee":null,"title":"Define standard header for examples.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-31T14:44:01Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3910580,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-24T02:12:05Z","body":"\r\n\r\nXcode 4 mangles OF projects pretty badly in the following ways: \r\n\r\na) it autogenerates schemes, and \"openframeworks\" appears as the chosen scheme\r\nb) it sometimes chooses the wrong SDK for OF -- is there a way to set that?\r\nc) debug and release are not really clear, part of this is a shift in xcode -- but it's much harder to see how things are compiled and to set release or debug\r\nd) I still had issues with OF needing to be recompiled all the time. I tried to fix this, but we should make sure it's done right. the of lib was appearing red even though it had been built, etc. \r\n\r\nI've tried to fix some of this in detroit with the PG, but I don't think it's the right way to do it. Overall, it would be great to have projects work smoothly on xcode 4...\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1129","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1129,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1129","assignee":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"xcode 4 issues: scheme, auto-generation of schemes, rebuilding OF, sdk, etc","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-03-31T14:39:04Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3910555,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-31T16:32:04Z","body":"When deprecating api's (e.g. ofEvents, ofVertexes), perhaps we could help automate the changes through simple scripts to update api\r\nSuggest sticking to something close to how uncrustify scripts are run (and perhaps there are tools like uncrustify but specifically for this task)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1128","comments":1,"milestone":null,"number":1128,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1128","assignee":null,"title":"upgrade scripts","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-31T14:38:19Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3910549,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-09T16:47:04Z","body":"It would be nice (and useful for testing the PG) if the PG would get an option to clean the examples folders of all generated files. \r\n\r\nCurrently, the quickest option is to delete the examples folder on disk, and do `git reset --hard HEAD`.\r\n\r\nAs before, milestoned for 0071, but feel free to push back.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1126","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1126,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1126","assignee":null,"title":"PG Feature request: Clean examples folder","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-03-30T12:51:30Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3897090,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-29T16:47:29Z","body":"there is a hard limit of 100 files when using drag & drop into an of app. not sure if it's an of issue, but am curious if it comes from the hacked glutDragEventFunc ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1124","comments":0,"milestone":null,"number":1124,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1124","assignee":null,"title":"void dragEvent(ofDragInfo dragInfo) limited to 100 files in osx lion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-29T16:47:29Z","state":"open","user":{"url":"https://api.github.com/users/jesusgollonet","gravatar_id":"5008d5295e9bc2636313c7b50ed5981d","login":"jesusgollonet","id":31100,"avatar_url":"https://secure.gravatar.com/avatar/5008d5295e9bc2636313c7b50ed5981d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3883598,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-29T13:05:25Z","body":"When loading a file with ofImage, ofSoundPlayer , ofVideoPlayer-file or any ofFile it would be nice to be able to know if the file changed since it was loaded.\r\n\r\nIts very simple to implement with Poco::File->getLastModified() and it would be very nice if this would be built into the above classes.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1120","comments":2,"milestone":null,"number":1120,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1120","assignee":null,"title":"isFileChanged() for ofImage, ofVideoPlayer, ofSoundPlayer and ofFile","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-28T16:21:45Z","state":"open","user":{"url":"https://api.github.com/users/imanhp","gravatar_id":"7398ab0bbd07832d0289f26773e65077","login":"imanhp","id":1216228,"avatar_url":"https://secure.gravatar.com/avatar/7398ab0bbd07832d0289f26773e65077?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3856005,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-30T12:19:59Z","body":"paths.make should be in the repo as an example on how to set it up correctly, but changes (i.e. paths unique to every user) to it should be ignored cause everyone will have a different version in their computers so we don't want personal changes to appear in git status.\r\n\r\nI think the best way to solve this is to rename it to paths.make.default, keep this in the repo, maybe with `` instead of your path, and have people make their own paths.make from that one. We track changes to paths.make.default and ignore paths.make. \r\n\r\nThis will probably also need a mechanism in the makefile to fail gracefully and remind the user, if his customized paths.make is missing.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1118","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1118,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1118","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Default paths.make for Android","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/android","name":"android","color":"2bc4ad"}],"closed_at":null,"created_at":"2012-03-28T12:19:39Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3850655,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-18T17:13:36Z","body":"Once ofSetFrameRate() is called, I can't find a way to retrieve it. I think implementing a ofGetDesiredFrameRate() in ofAppRunner would make sense, also adding getDesiredFrameRate() to ofAppBaseWindow and all subclasses, where the actual value is stored. \r\n\r\nThis can be useful to compare the desired frame rate with actual frame rate and react accordingly if required.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1117","comments":0,"milestone":null,"number":1117,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1117","assignee":null,"title":"Can't retrieve desired frame rate once set","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-27T11:48:00Z","state":"open","user":{"url":"https://api.github.com/users/armadillu","gravatar_id":"b87a82d7c86161432ee6388c7cbd5e2c","login":"armadillu","id":167057,"avatar_url":"https://secure.gravatar.com/avatar/b87a82d7c86161432ee6388c7cbd5e2c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3825582,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-26T22:27:14Z","body":"https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/gl/ofVbo.cpp#L343\r\n\r\nIndices should be specified as GL_ELEMENT_ARRAY_BUFFER unless I am mistaken.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1116","comments":5,"milestone":null,"number":1116,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1116","assignee":null,"title":"ofVBO updateIndexData incorrect buffer type.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-26T18:26:05Z","state":"open","user":{"url":"https://api.github.com/users/vade","gravatar_id":"37aca214d4875cd90af9d67072c82642","login":"vade","id":65011,"avatar_url":"https://secure.gravatar.com/avatar/37aca214d4875cd90af9d67072c82642?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3813852,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-26T18:45:51Z","body":"The default optimization settings for debug builds in example XCode projects is set to Fastest,Smallest thus making debugging very difficult, is there a specific reason for this?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1115","comments":3,"milestone":null,"number":1115,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1115","assignee":null,"title":"optimization level in xcode projects","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"}],"closed_at":null,"created_at":"2012-03-26T17:05:14Z","state":"open","user":{"url":"https://api.github.com/users/colormotor","gravatar_id":"2548dbd6a86902ed5260b5f76710b83c","login":"colormotor","id":1239872,"avatar_url":"https://secure.gravatar.com/avatar/2548dbd6a86902ed5260b5f76710b83c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3812318,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-31T15:31:31Z","body":"I had some problems because of macro definitions in ofArduino.h overriding an enum in a a class of my codebase ( SHIFT )\r\nIt's not exactly a bug! but I would suggest using enums or const int instead of the macros to avoid any conflicts\r\nI solved the problem by modifying \r\n#define SHIFT 0x05 \r\ninto \r\nconst int SHIFT = 0x05;\r\n\r\nanother solution could be using enumerations as \r\nenum\r\n{\r\n ...\r\n SHIFT = 0x05,\r\n etc...\r\n};\r\n\r\nI believe this would not break any of the existing code\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1114","comments":1,"milestone":null,"number":1114,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1114","assignee":{"url":"https://api.github.com/users/joshuajnoble","gravatar_id":"10960ba0f305803a1cdc7cd6188d643b","login":"joshuajnoble","id":237423,"avatar_url":"https://secure.gravatar.com/avatar/10960ba0f305803a1cdc7cd6188d643b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"macros in ofArduino","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-03-26T17:02:21Z","state":"open","user":{"url":"https://api.github.com/users/colormotor","gravatar_id":"2548dbd6a86902ed5260b5f76710b83c","login":"colormotor","id":1239872,"avatar_url":"https://secure.gravatar.com/avatar/2548dbd6a86902ed5260b5f76710b83c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3812275,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-27T14:56:56Z","body":"Hello.\r\n\r\nI'm trying to run camera frame grabing in OSX Lion.\r\nSimple ofVideoGrabber doesn't work - even if I link it with 10.6 SDK (and 10.6 is deployment target) I receive crash in initialization of ofVideoGrabber. Details are the same as in http://forum.openframeworks.cc/index.php/topic,6776.0.html\r\n\r\nI tryed QtKitMovieGrabberExample. It had some problems in compilation - texture property was not synthesized, I wrote this property and compilation run well.\r\nBut linking is fault. All I receive form linker is:\r\n\r\n*Ld bin/movieGrabberExampleDebug.app/Contents/MacOS/movieGrabberExampleDebug normal i386\r\n cd /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample\r\n setenv MACOSX_DEPLOYMENT_TARGET 10.6\r\n /Developer/usr/bin/clang++ -arch i386 -isysroot /Developer/SDKs/MacOSX10.6.sdk -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freeimage/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/GLee/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/rtAudio/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/fmodex/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freetype/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx -F/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin -F/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/glut/lib/osx -filelist /Users/yltastep/Library/Developer/Xcode/DerivedData/movieGrabberExample-aftkspwrgtotrteyzaplfbqzeasd/Build/Intermediates/movieGrabberExample.build/Debug/movieGrabberExample.build/Objects-normal/i386/movieGrabberExampleDebug.LinkFileList -mmacosx-version-min=10.6 -dead_strip ../../../libs/poco/lib/osx/PocoFoundation.a ../../../libs/poco/lib/osx/PocoNet.a ../../../libs/poco/lib/osx/PocoXML.a ../../../libs/poco/lib/osx/PocoUtil.a ../../../libs/tess2/lib/osx/tess2.a ../../../libs/glew/lib/osx/glew.a ../../../libs/cairo/lib/osx/cairo-script-interpreter.a ../../../libs/cairo/lib/osx/cairo.a ../../../libs/cairo/lib/osx/pixman-1.a ../../../libs/fmodex/lib/osx/libfmodex.dylib ../../../libs/rtAudio/lib/osx/rtAudio.a /Users/yltastep/Documents/XCode/openframeworks/libs/openFrameworksCompiled/lib/osx/openFrameworksDebug.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/GLee/lib/osx/GLee.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/rtAudio/lib/osx/rtAudio.a -framework AGL -framework ApplicationServices -framework AudioToolbox -framework Carbon -framework CoreAudio -framework CoreFoundation -framework CoreServices -framework OpenGL -framework QuickTime -framework AppKit -framework Cocoa -framework IOKit -framework GLUT /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoFoundation.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoNet.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoUtil.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoXML.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freetype/lib/osx/freetype.a -lfmodex /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx/freeimage.a -framework QTKit -framework Quartz -framework QuartzCore -o /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin/movieGrabberExampleDebug.app/Contents/MacOS/movieGrabberExampleDebug*\r\n\r\n**Command /Developer/usr/bin/clang++ failed with exit code 1**\r\n\r\nSo no explanation of problem.\r\n\r\nIs somebody ran this example successfully ?\r\nAnd what I'm doing wrong ?\r\n\r\nThanks in advance !\r\n\r\nWith regards.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1112","comments":9,"milestone":null,"number":1112,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1112","assignee":null,"title":"Issue with QtKitMovieGrabberExample in apps/devapps","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2012-03-26T12:11:44Z","state":"open","user":{"url":"https://api.github.com/users/OlexandrStepanov","gravatar_id":"aa6e2a475cab75513c9cc435b28eef31","login":"OlexandrStepanov","id":971079,"avatar_url":"https://secure.gravatar.com/avatar/aa6e2a475cab75513c9cc435b28eef31?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3807459,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-25T20:07:16Z","body":"Todd's example has this code a few times in it by hand, but I'm thinking it's so simple it could be added along side ofSplitString() and would be really useful ? for sure, more string utility functions are helpful, and for basic text parsing, this is great. Poco gives us this for free, so it doesn't seem like a huge stretch to think of something like this, plus find and replace, etc. Would make the regex example much shorter. \r\n\r\np5 has something similar, if that's a helpful argument: \r\n\r\nhttp://processing.org/reference/matchAll_.html\r\n\r\n\r\n\tvector < string > ofxRegex::getMatchedStrings (string contents, string regex );\r\n\tvector < string > ofxRegex::getMatchedStrings (string contents, string regex ){\r\n \r\n\t vector < string > results;\r\n\t RegularExpression regEx(regex);\r\n\t RegularExpression::Match match;\r\n \r\n\t while(regEx.match(contents, match) != 0) {\r\n \r\n\t // we get the sub string from the content\r\n\t // and then trim the content so that we\r\n\t // can continue to search \r\n\t string foundStr = contents.substr(match.offset, match.length);\r\n\t contents = contents.substr(match.offset + match.length);\r\n \r\n\t results.push_back(foundStr);\r\n \r\n\t }\r\n\t return results;\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1110","comments":1,"milestone":null,"number":1110,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1110","assignee":null,"title":"add a simple regex function like ofSplitString()","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-03-25T18:56:37Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3799872,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-25T18:50:13Z","body":"code to recreate: \r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::setup(){\r\n system(\"pwd;\");\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::update(){\r\n system(\"pwd;\");\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::draw(){\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::keyPressed(int key){\r\n cout << ofToDataPath(\"temp\") << endl;\r\n}\r\n\r\nproduces: \r\n\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n../../../data/temp\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin/emptyExampleDebug.app/Contents/MacOS\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin/emptyExampleDebug.app/Contents/MacOS\r\n\r\nthis is because the code that fixes OSX paths isn't called until you call ofToDataPath(). a good fix I think would be to set ofDataPathRoot (which happens in ofToDataPath) somewhere early in ofRunApp(). Or should it happen even earlier?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1109","comments":3,"milestone":null,"number":1109,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1109","assignee":null,"title":"mac paths don't seem right until you call \"ofToDataPath()\"","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2012-03-25T18:18:28Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3799653,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-09T13:06:18Z","body":"easycam behaves as expected when inited but as soon as I change it's target it begins to behave strangely.\r\nthere's this imaginary sphere that we are rotating (it's diameter is min (viewport.width, vieport.height)), when the mouse is dragged from inside to outside of it the rotation just jumps to a \"random\" rotation. \r\nas well when you have a the camera rotated more than 180º in some axis the \"trackball\" doesn't behave as expected. yet this behavior is not seen when the target hasn't been changed.\r\n\r\nDoes any one know what's going on?\r\n\r\nI just came across this but I haven't gone deeply into how easycam handles the mouse to rotate. \r\nI'll do so ASAP. If someone can give me any clues I'll really apreciate it.\r\n\r\nregards!","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1108","comments":7,"milestone":null,"number":1108,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1108","assignee":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"easyCam weird behavior when target changed","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-25T00:01:54Z","state":"open","user":{"url":"https://api.github.com/users/roymacdonald","gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","login":"roymacdonald","id":974878,"avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3795495,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-09T16:47:18Z","body":"It would be great if the PG could also generate projects/examples for usage with Eclipse, i.e. just the makefile related files, no CB or other project files.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1103","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1103,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1103","assignee":null,"title":"PG feature request: Generate makefile-only projects","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-03-21T21:43:34Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3754055,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-19T16:18:43Z","body":"whenever i call ofLog beneath openmp i have to wrap it in ```#pragma omp critical (ofLog)``` otherwise i get a crash\r\ni found adding the line above \r\nhttps://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/utils/ofLog.cpp#L84\r\nworks pretty well\r\n\r\nany objections to having it in there?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1098","comments":3,"milestone":null,"number":1098,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1098","assignee":null,"title":"feature / bug - #pragma omp critical(ofLog)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-19T14:04:51Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3710293,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-15T20:34:17Z","body":"I'm finding that `ofDirector::listDir, open` are extremely slow\r\nit seems that it's actually loading the entire dir contents into memory\r\n\r\nit's possible to then do something like\r\n```\r\nofLoadImage(myPixels, dir.getFile(i));\r\n```\r\nand you can quickly load that image from memory. which is faster than\r\n```\r\nofLoadImage(myPixels, dir.getFile(i).getAbsolutePath());\r\n```\r\n\r\nBut this doesn't seem to work consistently (even though the slow listing is consistent)\r\nand surely isn't what we want.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1075","comments":2,"milestone":null,"number":1075,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1075","assignee":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"bug ofDirectory::open(string path) actually loads the entire dir into memory?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-15T07:54:55Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3662214,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T16:03:06Z","body":"Hello,\r\nI needed alpha channel in short length video for a recent project.\r\nIn the forum there is some old zip file for a ofxAlphaVideoPlayer that is still working, but that's OS X & windows only as it's based on QT.\r\nI'm working on linux, and I didn't find anything for GStreamer, so I modified the existing ofGstUtils and ofGstVideoPlayer.\r\nWould you mind if I do a pull request for this?\r\nI can also provide an example with a short length video using animation codec.\r\nWhat do you think?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1070","comments":6,"milestone":null,"number":1070,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1070","assignee":null,"title":"Alpha movies in GStreamer","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-14T13:02:41Z","state":"open","user":{"url":"https://api.github.com/users/manuelgeoffray","gravatar_id":"c1ec5161b69b4a990436deafb1170d64","login":"manuelgeoffray","id":808090,"avatar_url":"https://secure.gravatar.com/avatar/c1ec5161b69b4a990436deafb1170d64?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3647640,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-17T19:26:40Z","body":"Hey !\r\n\r\nMe again. Didn't find anywhere this infos. I'm currently testing the travis-ci.org service.\r\nAs many people are working on the project and as many many issue are raised, and fixed, I thought it could be great to add some test and thus the travis service.\r\n\r\nIt would avoid the problem met here :\r\nhttps://github.com/openframeworks/openFrameworks/commit/7ca7833ea1afb6bd5a6c54031e3fa688aa0c0ba8\r\nand the discussion here :\r\nhttps://github.com/openframeworks/openFrameworks/issues/804\r\nor there :\r\nhttps://github.com/openframeworks/openFrameworks/pull/921\r\n\r\nI read that :\r\n\r\n>feel free to make a unitTests folder at the root level of OF -\r\n> that is where all unitTests will go.\r\n\r\nBut didn't find them.\r\n\r\nThe travis service will permit to get the little badge we know well : \r\n[![Build Status](https://secure.travis-ci.org/soixantecircuits/openFrameworks.png?branch=master)](http://travis-ci.org/soixantecircuits/openFrameworks)\r\n\r\nAlso, why not adding some spec test, to ensure future development of features.\r\nI'm currently reading :\r\nhttp://www.squidoo.com/cplusplus-behaviour-driven-development-tools#module124841511\r\nhttp://sourceforge.net/apps/mediawiki/turtle/index.php?title=Turtle\r\n\r\nFor those who want some other nice reading :\r\n\r\nhttp://gamesfromwithin.com/exploring-the-c-unit-testing-framework-jungle\r\n\r\nThe travis test is here, currently it is a total fake, but I just proposed the idea of a test driven development\r\nhttp://travis-ci.org/#!/soixantecircuits/openFrameworks/builds/854259 ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1068","comments":10,"milestone":null,"number":1068,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1068","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Continuous integration","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-13T15:49:23Z","state":"open","user":{"url":"https://api.github.com/users/gabrielstuff","gravatar_id":"390ea42c23c2c383f973abdafa24bb07","login":"gabrielstuff","id":285033,"avatar_url":"https://secure.gravatar.com/avatar/390ea42c23c2c383f973abdafa24bb07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3631618,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-13T15:21:30Z","body":"Hi !\r\n\r\nRecently, I've been in lot of languages, from C++ to ruby, passing by the colosus of javascript and the sea of php. Dropping by various and strange framework such as the Cinder, the jQuery, the Rails, the Processing, etc ...\r\n\r\n## the situation \r\n\r\nWhat I have noticed is that a strong architecture and a really ease use of add-ons makes a framework get stronger. For instance, if we take a look at Ruby, we see that the use of gems give him a powerfull advance over his friend php. \r\n\r\n### the Rubyist\r\n\r\nThis way of thinking is getting even better with the http://gembundler.com/ [Bundler](http://gembundler.com/) friend. The gems have dependencies and a simple GemFile help to easily install all dependencies for one project.\r\n\r\n### the Cinderist\r\n\r\nFor Cinder, we get the block, as for OSX, it quiet easy and fast. Drag and drop and play/code.\r\n\r\n### the jQueryist\r\n\r\nWell, it is not frequent to have jQuery plugins depending on other jQuery plugins, but there are several way to handle dependencies on jQuery and JS.\r\n\r\n### the nodist\r\n\r\nThis lead us to http://npmjs.org/, which is really nice with dependencies.\r\nFor instance, if you tried cloud9ide, you know that you just have to make sure you get the proper package.json :\r\n\r\n```\r\n{\r\n \"name\": \"node-example\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": {\r\n \"express\": \"2.2.0\"\r\n }\r\n}\r\n```\r\n\r\nThis file ensure that everything before running the server will be installed via npm.\r\n\r\n### the ofist\r\n\r\nRight now, we just have the addons.make file, which is nice but does not do any lifting for us. We have to verify that the ofx addons has been downloaded and is installed in the right folder.\r\n\r\n- Why not creating a script that will allow to manage dependencies compilation ? \r\nI have this wonderful ofxJSONsettings, but he depends on [JSONCPP](http://jsoncpp.sourceforge.net/) and on boost, so here we will have :\r\n\r\npackage.json file in the ofxJSONsettings folder :\r\n\r\n```\r\n{\r\n \"name\": \"ofxJSONsettings\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": [{\r\n \"jsoncpp\": \"0.6.0-rc2\"\r\n \"url\":\"http://jsoncpp.svn.sourceforge.net/svnroot/jsoncpp/trunk/\"\r\n \"protocol\":\"svn\"\r\n }\r\n ]\r\n}\r\n```\r\n\r\nHum, then, we have our little bash script :\r\n\r\n`xadd -addon ofxJSONsettings`\r\n\r\nand for a project, we have to ensure that the make file run `xadd -addon ofxJSONsettings` if it does not find ofXJSONsettings.\r\n\r\nThis could lead to simplify and easify the use of plugin ! Hey, I want the new [mistubaRenderer](https://github.com/satoruhiga/ofxMitsubaRenderer) let's give a try :\r\n\r\n```\r\n{\r\n \"name\": \"ofxMitsubaRenderer\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": [{\r\n \"mitsuba\": \"0.1\"\r\n \"url\":\"https://www.mitsuba-renderer.org/hg/mitsuba-bidir\"\r\n \"protocol\":\"hg\"\r\n }\r\n ]\r\n}\r\n```\r\n\r\nWell, this would be simplify if everybody use some same pattern, and respect some convention.\r\n\r\nSo what do you guys think about that ?\r\n\r\n\r\nThank you !\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1063","comments":7,"milestone":null,"number":1063,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1063","assignee":null,"title":"Automatic installer + dependencies handler","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-13T10:44:57Z","state":"open","user":{"url":"https://api.github.com/users/gabrielstuff","gravatar_id":"390ea42c23c2c383f973abdafa24bb07","login":"gabrielstuff","id":285033,"avatar_url":"https://secure.gravatar.com/avatar/390ea42c23c2c383f973abdafa24bb07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3627067,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-12T17:58:20Z","body":"right now there is a lot of duplicated code in the vector math classes. for example, normalize() and getNormalized() have separate implementations. if we follow the pattern of always implementing things in self-modifying methods, then providing copy-returning methods as alternatives, this will reduce the amount of code and make it harder to cause bugs or behavioral discrepancies.\r\n\r\n- implementations of an algorithm should always be self-modifying\r\n- copy-returning versions should be implemented using a differently named method, internally making a copy and calling the self-modifying version on the copy.\r\n\r\ne.g. something like (note, this isn't how it's implemented right now):\r\n\r\n\tinline ofVec2f& ofVec2f::normalize() {\r\n\t\tfloat length = (float)sqrt(x*x + y*y);\r\n\t\tif( length > 0 ) {\r\n\t\t\tx /= length;\r\n\t\t\ty /= length;\r\n\t\t}\r\n\t\treturn *this;\r\n\t}\r\n\r\n\tinline ofVec2f ofVec2f::getNormalized() const {\r\n\t\tofVec2f result = *this;\r\n\t\treturn result.normalize();\r\n\t}\r\n\r\ntaken from this post https://github.com/openframeworks/openFrameworks/pull/1061#issuecomment-4455601","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1062","comments":4,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1062,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1062","assignee":null,"title":"regularize code for math addons","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-12T16:33:06Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3614231,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + diff --git a/lib/github/tests/ReplayData/PaginatedList.testInterruptedIterationInSlice.txt b/lib/github/tests/ReplayData/PaginatedList.testInterruptedIterationInSlice.txt new file mode 100644 index 0000000000..c4e977c06f --- /dev/null +++ b/lib/github/tests/ReplayData/PaginatedList.testInterruptedIterationInSlice.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4927'), ('content-length', '52085'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last"'), ('etag', '"5e8867ffb4e7630e852b2b231f3b9cdb"'), ('date', 'Tue, 29 May 2012 19:36:57 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-27T18:11:17Z","body":"Since more and more of the OF Core now relies on Poco (ie ofThread, etc) does OF_USING_POCO make sense anymore?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1280","comments":0,"milestone":null,"number":1280,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1280","assignee":null,"title":"deprecate OF_USING_POCO?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-27T18:03:23Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"danomatika","id":480637},"id":4772349,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-28T08:08:24Z","body":"There occurs a weir glitch when compiling the ofShader example with my HD Graphics 3000 (288 Mb) (Mac osx 10.7.4 - Mac Mini - i5 - 2.3Ghz)\n\nI was able to get rid of the glitch by replacing \"gl_FragColor = gl_Color;\" with \"gl_FragColor = 255.0;\" or any other number.\nAnybody knows a reason for the glitch / proper solution?\n\nScreenshot: http://goo.gl/Xdf74\nOpenGL capacities on different graphic cards on apple machines: http://goo.gl/FGQ2N","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1279","comments":2,"milestone":null,"number":1279,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1279","assignee":null,"title":"ofShader example with HD Graphics 3000 issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-26T19:27:56Z","state":"open","user":{"url":"https://api.github.com/users/subtiv","gravatar_id":"837cfe96365c031130a46311eb11d86a","avatar_url":"https://secure.gravatar.com/avatar/837cfe96365c031130a46311eb11d86a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"subtiv","id":1012684},"id":4767675,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-25T18:39:02Z","body":"produces an error on app exit or tex destruction.\n\n OF: OF_LOG_ERROR: trying to delete a non indexed texture, something weird is happening. Deleting anyway\n\nThis is because retain(int id) is a static function in ofTexture.cpp. So we can't retain the depthStencilTexture.\n\nThis suggest we should move the texture allocation of the depth / stencil texture to ofTexture - something which is not possible at the moment. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1277","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1277,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1277","assignee":null,"title":"ofFbo can't retain depthStencil Texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-05-25T18:37:46Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":4758608,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-22T21:26:57Z","body":"\nthe offending line is: \n\nif( speed.getValue() != preSpeed ){\n\nwhich is evaluating as true even through the slider is not touched (float equality test, etc). \n\nif we alter it to something like: \n\nif( fabs(speed.getValue() - preSpeed) > 0.0001 ){\n\nthe code runs fine. probably nicer to add a \"value changed()\" functionality to the slider object though or use EPSILON, etc. \n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1271","comments":0,"milestone":null,"number":1271,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1271","assignee":null,"title":"periodic signal example doesn't run well on windows / cb (float equality error)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-05-22T21:26:57Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":4700182,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-22T16:41:21Z","body":"There's some error that appears on linux systems running the project generator to make VS examples, where the debug and release libs for opencv get added badly to the vs project: \n\n\t%(AdditionalDependencies);opencv_highgui231d.lib;opencv_calib3d231.lib;opencv_imgproc231d.lib;opencv_haartraining_engined.lib;opencv_gpu231d.lib;opencv_flann231.lib;opencv_contrib231d.lib;opencv_video231d.lib;opencv_objdetect231d.lib;zlib.lib;opencv_core231d.lib;opencv_contrib231.lib;opencv_ml231d.lib;opencv_features2d231.lib;opencv_core231.lib;opencv_gpu231.lib;opencv_legacy231d.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_ml231.lib;opencv_imgproc231.lib;opencv_objdetect231.lib;opencv_legacy231.lib;opencv_video231.lib\n\t\t\t\t%(AdditionalLibraryDirectories);..\\..\\..\\addons\\ofxOpenCv\\libs\\opencv\\lib\\vs2010\n\nthis doesn't seem to be the case on osx or windows, which produces correct results: \n\n\t%(AdditionalDependencies);opencv_calib3d231.lib;opencv_contrib231.lib;opencv_core231.lib;opencv_features2d231.lib;opencv_flann231.lib;opencv_gpu231.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_imgproc231.lib;opencv_legacy231.lib;opencv_ml231.lib;opencv_objdetect231.lib;opencv_video231.lib;zlib.lib\n\nwould be good to look at the logic of \"visualStudioProject::addAddon()\" and see if we can fix this.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1268","comments":9,"milestone":null,"number":1268,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1268","assignee":null,"title":"project generator - bad libs for VS / opencv examples","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-05-20T21:50:24Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":4662873,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T00:43:37Z","body":"I woud love some eyes on ofFbo would be great to get it cleaned up and standardized for 0072. \nRight now there are a ton of #ifdefs and some very hard to follow logic, which makes bug fixing quite difficult especially on OPENGL_ES\n\nsee: https://gist.github.com/2711815\n\n@elliotwoods @arturoc @memotv @damiannz @ofZach @kylemcdonald \n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1263","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1263,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1263","assignee":null,"title":"ofFbo.cpp is a huge mess! ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-16T16:27:30Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":4608132,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T14:29:02Z","body":"I added a .mailmap file to the repo to correctly collate all the contributors in spite of changing nick names/email addresses. This is useful when trying to identify contributors for a changelog or similar, or when using the git logging functions like shortlog.\n\nSee the before/after situation here: https://gist.github.com/2710366\n\nI have respected privacy and only used those real names that people have already given in a git ID in the repo. Mainly this addition only associates the different email addresses to one user. @arturoc wins the prize of most used emails! :-)\nThe list is pretty complete, I only had difficulties to associate some IDs to the correct Zachs, since it was not clear for some if @ofZach or @stfj (Zach Gage) was the contributor. Those were left as-is.\n\nIf anybody has objections to their various email being united under their name, please say so and I will correct/remove the relevant entries.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1262","comments":2,"milestone":null,"number":1262,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1262","assignee":null,"title":"Add .mailmap for contributor collation","labels":[],"closed_at":null,"created_at":"2012-05-16T13:44:32Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"id":4604661,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1262.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1262","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1262.patch"}},{"updated_at":"2012-05-16T09:35:31Z","body":"Address #375.\n\nAdd setVolumef(float). Also more clearly define volume ranges (int is 0..255, float is 0..1) and more robust clamping of volume argument.\n\nThis has not been tested on Linux or Windows.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1260","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1260,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1260","assignee":null,"title":"allow float volume on ofVideoPlayer","labels":[],"closed_at":null,"created_at":"2012-05-15T17:50:22Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"damiannz","id":144366},"id":4588997,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1260.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1260","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1260.patch"}},{"updated_at":"2012-05-21T07:31:47Z","body":"This was originally posted @\"biginners\".\n\nhttp://forum.openframeworks.cc/index.php/topic,9527.msg44049.html#msg44049\n\nJoshua noble suggested me to file it as a bug on jithub\n\n\n/////////////////original messages\n\nHello.\n\nI have question about ofShortPixels and ofShortColor.\n\nIf you execute the code below , it'll draw at half way screen height even though I did set aDot at (0. screen height / 4)\n\nAnd another weird thing is it draws 20 pixels instead of 10 pixels which I set for loop for 10 times.\n\nIt only draws correctly with ofPixels and ofColor.\n\nIt doesn't work with ofFloatPixels and ofFloatColor.\n\nPlease help me out.\n\nI need to have RGB value over 255 so I can check if those values are over 255.\n\nThanks in advanced\n\nJin\n\n\n.h file\nCode:\nview plaincopy to clipboardprint?\n\n #pragma once \n #include \"ofMain.h\" \n \n class Dot { \n public: \n ofVec2f location; \n \n Dot(){ \n location.set(0,0); \n } \n \n ~Dot(){} \n }; \n \n class testApp : public ofBaseApp{ \n public: \n void setup(); \n void update(); \n void draw(); \n \n int w,h; \n \n ofTexture particleTexture; \n ofShortPixels * rgbPixels; \n \n ofShortColor& paint(ofShortColor &); \n \n Dot aDot; \n \n \n }; \n\n\n.cpp file\nCode:\nview plaincopy to clipboardprint?\n\n #include \"testApp.h\" \n //-------------------------------------------------------------- \n void testApp::setup(){ \n ofSetFrameRate(30); \n ofSetBackgroundAuto(TRUE); \n ofBackground(0, 0, 0); \n w = ofGetWidth(); \n h = ofGetHeight(); \n \n particleTexture.allocate(w,h,GL_RGB); \n rgbPixels = new ofShortPixels; \n rgbPixels->allocate(w, h, 3); \n aDot.location.set(0, h/4); \n } \n \n //-------------------------------------------------------------- \n void testApp::update(){ \n ofShortColor pixelColor; \n ofShortColor newPixelColor; \n for(int i = 0; i<10; i++){ \n pixelColor = rgbPixels->getColor(aDot.location.x+i, aDot.location.y); \n \n newPixelColor = paint(pixelColor); \n \n rgbPixels->setColor(aDot.location.x+i, aDot.location.y,newPixelColor); \n \n } \n particleTexture.loadData(* rgbPixels); \n } \n \n //-------------------------------------------------------------- \n void testApp::draw(){ \n particleTexture.draw(0, 0, w, h); \n } \n \n ofShortColor & testApp::paint(ofShortColor & _c){ \n \n _c.r += 10; \n _c.g += 2; \n _c.b += 3; \n \n _c.set(_c.r, _c.g, _c.b); \n _c.clamp(); \n \n return _c; \n } ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1257","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1257,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1257","assignee":null,"title":"ofShortPixels doesn't draw pixels correctly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-14T05:46:14Z","state":"open","user":{"url":"https://api.github.com/users/gazaebal","gravatar_id":"f9d7811bb6318fedf7e9f2fe8bfece32","avatar_url":"https://secure.gravatar.com/avatar/f9d7811bb6318fedf7e9f2fe8bfece32?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"gazaebal","id":1736190},"id":4557803,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T21:42:08Z","body":"if i'm not mistaken, the correct way of using ofMatrix4x4 in oF is `glMultMatrixf(myMatrix.getPtr())` or `glLoadMatrixf`.\nThis seems a bit uncomfortable for me.\n\nsome candidates are:\n\n```c++\nofPushMatrix(const ofMatrix4x4 &); //needs alternatives as you might not want to push at the time\nofLoadMatrix(const ofMatrix4x4 &);\nofMultMatrix(const ofMatrix4x4 &);\n\nofMatrix4x4::apply();\nofMatrix4x4::glLoadMatrix(matrixMode = OF_MATRIX_MODE_CURRENT);\n```\n\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1256","comments":5,"milestone":null,"number":1256,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1256","assignee":null,"title":"Feature ofPushMatrix(const ofMatrix4x4 &)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-13T18:20:29Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4554058,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-11T21:24:20Z","body":"\tunsigned char faceSize = 3;\n\tif(data.getNumIndices()){\n\t\tos << \"element face \" << data.getNumIndices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t} else if(data.getMode() == OF_PRIMITIVE_TRIANGLES) {\n\t\tos << \"element face \" << data.getNumVertices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t}\n\nThe facesize is being set as static as 3, but this results in strange exports...things open OK in Meshlab, but exporting to other programs with no faces seems like it won't work","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1252","comments":6,"milestone":null,"number":1252,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1252","assignee":null,"title":"0071 ply (mesh.save()) Point export is broken","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-11T19:45:53Z","state":"open","user":{"url":"https://api.github.com/users/laserpilot","gravatar_id":"07001341fe6c156dddd5b9d06d828cba","avatar_url":"https://secure.gravatar.com/avatar/07001341fe6c156dddd5b9d06d828cba?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"laserpilot","id":1041023},"id":4539985,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:33:31Z","body":"couple of minor bugfixes (absolute path wasn't being detected on second if [absolute] for windows paths)\r\nfixes unixy paths no matter what on windows","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1251","comments":8,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1251,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1251","assignee":null,"title":"Bugfix of to data path","labels":[],"closed_at":null,"created_at":"2012-05-10T06:44:20Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4507572,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1251.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1251","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1251.patch"}},{"updated_at":"2012-05-16T09:43:23Z","body":":(\r\n\r\nIt seems i'm getting double 'data/' in my paths\r\nafter a little tracking down, i found this is because ofSystemLoadDialog changes the current working directory\r\n\r\nso we could try and either fix that by popping the folder after the dialog, \r\nof for windows using something like ```GetModuleFileName``` to get the path of the current exe rather than using the current working directory\r\n\r\nI can't seem to run GetModuleFileName from ofUtils.cpp even though windows.h is included in ofConstants.h (included in ofUtils.h)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1250","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1250,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1250","assignee":null,"title":"bug: ofToDataPath broken again","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-05-10T06:35:24Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4507492,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:42:44Z","body":"'ofx TCPClient :: receiveRaw' was found in the proble.\n\nOriginal :\n\n\tint ofxTCPClient::receiveRawBytes(char * receiveBuffer, int numBytes){\n\t\t\t messageSize = TCPClient.Receive(receiveBuffer, numBytes);\t\n\t\t\t if(messageSize==0){\t\t\n\t\t\t\t\t\tclose();\t\n\t\t\t }\t\n\t\t\t return messageSize;\n\t}\n\nBut 'TCPClient.Receive (receiveBuffer, numBytes)' from '-1' may return\n\nI was modified\n\n\tstring ofxTCPClient::receiveRaw(){\n\t\t\t messageSize = TCPClient.Receive(tmpBuff, TCP_MAX_MSG_SIZE);\n\t\t\t if(messageSize==0){\n\t\t\t\t\t\tclose();\n\t\t\t }\n\t\t\t //TCPClient.Receive is return -1....\n\t\t\t else if(messageSize < 0){ \n\t\t\t\t\t\ttmpBuff[0] = 0;\n\t\t\t }\n\t\t\t else if(messageSize; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"3b0c90696d51253d280f98b01e8e9fae"'), ('date', 'Tue, 29 May 2012 20:18:26 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1218","html_url":"https://github.com/openframeworks/openFrameworks/issues/1218","body":"Updated ofQuickTimePlayer to properly handle videos with an alpha channel. This uses the setPixelFormat() method, so all you need to do is:\r\n```\r\nmyVideoPlayer.setPixelFormat(OF_PIXELS_RGBA);\r\nmyVideoPlayer.loadMovie(\"path/to/movie.mov\");\t\r\nmyVideoPlayer.play();\r\n```","closed_at":null,"labels":[],"title":"ofQuickTimePlayer with alpha","pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/1218.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/1218","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1218.diff"},"created_at":"2012-04-25T18:48:41Z","updated_at":"2012-05-16T09:27:12Z","comments":2,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","due_on":"2012-06-25T07:00:00Z","open_issues":81,"title":"0072 Release","created_at":"2011-12-02T15:29:48Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":5,"id":61810,"state":"open","closed_issues":21},"number":1218,"id":4286936,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/prisonerjohn","gravatar_id":"b52cabeecffe4497699db813a715456f","login":"prisonerjohn","avatar_url":"https://secure.gravatar.com/avatar/b52cabeecffe4497699db813a715456f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":119702}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1217","html_url":"https://github.com/openframeworks/openFrameworks/issues/1217","body":"On 'update', PG should respect existing custom include paths, source files, linker flags and project options (such as optimization settings).\r\n\r\nOR\r\n\r\nXcode project should read and respect `OTHER_LDFLAGS` and `HEADER_SEARCH_PATHS`, and add `OTHER_CFLAGS` from Project.xcconfig; projectGenerator should leave these settings alone unless it figures out they need to be adjusted (this is probably going to be difficult).","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","color":"622425","name":"feature"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","color":"444444","name":"project generator"}],"title":"projectGenerator update doesn't respect existing project settings","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-24T21:03:44Z","updated_at":"2012-04-30T19:43:55Z","comments":0,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","due_on":"2012-06-25T07:00:00Z","open_issues":81,"title":"0072 Release","created_at":"2011-12-02T15:29:48Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":5,"id":61810,"state":"open","closed_issues":21},"number":1217,"id":4269431,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1216","html_url":"https://github.com/openframeworks/openFrameworks/issues/1216","body":"Since I don't want to derail #484 further, this issue deals with the implementation of a deprecation mechanism.\r\nBased on [this](http://stackoverflow.com/questions/295120/c-mark-as-deprecated), I made an OFDEPRECATED preproc macro.\r\n\r\nQUESTION: How do I correctly #ifdef for MacOS/XCode4/llvm?\r\n\r\nCould people test this on different platforms? On linux this works. \r\n\r\n\t\ttestApp.h:\r\n\r\n\t\t#pragma once\r\n\r\n\t\t#ifdef __GNUC__\r\n\t\t// maybe __clang__ for checking against llvm/xcode4?\r\n\t\t#define OFDEPRECATED(message, func) func __attribute__ ((deprecated(message)))\r\n\t\t#elif defined(_MSC_VER)\r\n\t\t#define OFDEPRECATED(message, func) __declspec(deprecated(message)) func\r\n\t\t#else\r\n\t\t#pragma message(\"WARNING: You need to implement DEPRECATED for this compiler\")\r\n\t\t#define OFDEPRECATED(message, func) func\r\n\t\t#endif\r\n\r\n\t\tand \r\n\r\n\t\t\t\tvoid dragEvent(ofDragInfo dragInfo);\r\n\t\t\t\tvoid gotMessage(ofMessage msg);\r\n\t\t\r\n\t\t\t\tOFDEPRECATED(\"This is an old function, don't use!\", void deprecatedFunction(void));\r\n\t\t\t\tOFDEPRECATED(\"Obsolete type, use T2!\", typedef int T1);\r\n\t\t\t\ttypedef int T2;\r\n\t\t\t\tOFDEPRECATED(\"This is an old variable, don't use!\", int oldvar3);\r\n\t\t\t\t//This breaks a bit cause it's used in the constructor of testApp, so always triggers.\r\n\r\n\t\t};\r\n\t\tOFDEPRECATED(\"old class!\", class oldClass {\r\n\t\t\tpublic:\r\n\t\t\t\toldClass();\r\n\t\t\t\tvirtual ~oldClass();\r\n\t\t});\r\n\r\n\t\ttestApp.cpp:\r\n\r\n\t\tvoid testApp::setup(){\r\n\t\t\tOFDEPRECATED(\"old string. Don't use\", string oldstring);\r\n\t\t\t// Uncomment these to trigger deprecation warnings\r\n\t\t//\tdeprecatedFunction();\r\n\t\t//\tT1 t1object = 5;\r\n\t\t//\toldstring = \"bla\";\r\n\t\t//\toldvar3=5;\r\n\t\t//\toldClass bla;\r\n\t\t}\r\n","closed_at":null,"labels":[],"title":"Implement deprecation mechanism","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-24T21:03:39Z","updated_at":"2012-05-02T10:19:07Z","comments":11,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","due_on":"2012-06-25T07:00:00Z","open_issues":81,"title":"0072 Release","created_at":"2011-12-02T15:29:48Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":5,"id":61810,"state":"open","closed_issues":21},"number":1216,"id":4269429,"assignee":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1215","html_url":"https://github.com/openframeworks/openFrameworks/issues/1215","body":"When using PG's 'update' functionality on apps are in paths with non-standard depths (in my case, `oF/apps/dir/subdir/subsubdir`) the OF_PATH and #include directives in the resulting Project.xcconfig don't match, which means oF projects won't compile:\r\n\r\n~~~~\r\n//THE PATH TO THE ROOT OF OUR OF PATH RELATIVE TO THIS PROJECT.\r\n//THIS NEEDS TO BE DEFINED BEFORE CoreOF.xcconfig IS INCLUDED\r\nOF_PATH = ../../../..\r\n\r\n//THIS HAS ALL THE HEADER AND LIBS FOR OF CORE\r\n#include \"../../../../../libs/openFrameworksCompiled/project/osx/CoreOF.xcconfig\"\r\n~~~~\r\n\r\nNote extra `../` in the `#include` path.","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","color":"444444","name":"project generator"}],"title":"projectGenerator sets incorrect path in Project.xcconfig","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-24T20:59:57Z","updated_at":"2012-04-30T19:43:14Z","comments":1,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","due_on":"2012-06-25T07:00:00Z","open_issues":81,"title":"0072 Release","created_at":"2011-12-02T15:29:48Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":5,"id":61810,"state":"open","closed_issues":21},"number":1215,"id":4269359,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1202","html_url":"https://github.com/openframeworks/openFrameworks/issues/1202","body":"i'm teaching a workshop right now and i feel like it's ridiculous that i need to explain pointers just to access video :)\r\n\r\nlet's add this!","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","color":"622425","name":"feature"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","color":"DDDDDD","name":"section-video"}],"title":"ofVideoPlayer etc needs ofColor access","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-22T18:42:58Z","updated_at":"2012-04-22T23:56:33Z","comments":3,"milestone":null,"number":1202,"id":4231092,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1201","html_url":"https://github.com/openframeworks/openFrameworks/issues/1201","body":"DO NOT PULL YET!\r\n\r\nHey all\r\n\r\nHere's the 'off-axis camera' setup we worked on at ScreenLab last weekend.\r\nIt allows you to:\r\n\r\n* Set lens offset on a camera\r\n* Calculate the camera parameters based on a 'view portal' defined by 3 points (top left, bottom left, bottom right)\r\n\r\nCurrently the changes involve editing ofBaseRenderer (and therefore all other renderers) to support lensOffset parameter (default 0,0). We could remove this since ofCamera doesn't actually use ofSetupScreenPerspective\r\n\r\nSo let's have a quick chat about what needs chaning to make this core friendly and then probably pull after 0071 release?","closed_at":null,"labels":[],"title":"Feature provocation pull request: ofCamera lens offset","pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/1201.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/1201","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1201.diff"},"created_at":"2012-04-22T15:55:29Z","updated_at":"2012-05-29T17:34:24Z","comments":9,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","due_on":"2012-06-25T07:00:00Z","open_issues":81,"title":"0072 Release","created_at":"2011-12-02T15:29:48Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":5,"id":61810,"state":"open","closed_issues":21},"number":1201,"id":4230131,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1190","html_url":"https://github.com/openframeworks/openFrameworks/issues/1190","body":"I'm investigating the way to draw bezier curves / nurbs etc. with shaders, here is a list a links and information I found that can improve render times with OF. Any way I must admit I'm new to openGL & shaders so maybe someone can take this to implement maybe an add-on or maybe to added to the core.\r\n\r\n**Resolution Independent Curve Rendering using Programmable Graphics Hardware**\r\nhttp://research.microsoft.com/en-us/um/people/cloop/loopblinn05.pdf\r\n\r\n**Resolution independent GPU accelerated Curve & Font rendering**\r\n**GPU based Resolution Independent Font & Curve Rendering – initial Release**\r\nhttp://jausoft.com/blog/2011/04/01/resolution-independent-gpu-accelerated-curve-font-rendering/\r\nhttp://ramisantina.com/blog/?p=73\r\nhttp://vimeo.com/21810192\r\nhttp://jogamp.org/doc/gpunurbs2011/p70-santina.pdf\r\n\r\n**Curvy blues**\r\nhttp://www.mdk.org.pl/2007/10/27/curvy-blues\r\n\r\n**Vector drawing: OpenGL shaders and cairo & vector hardware tessellation**\r\nhttp://www.mdk.org.pl/2007/8/6/vector-drawing-opengl-shaders-and-cairo\r\n\r\n**ShivaVG & Random Access Rendering of Animated Vector Graphics**\r\nhttp://ivanleben.blogspot.com.es/2007/07/shivavg-open-source-ansi-c-openvg.html\r\nhttp://www.youtube.com/watch?v=mD8X-e5-sY4\r\nhttp://www.youtube.com/watch?v=U4USCfwORUg\r\nhttp://andrejas-atelier.com/ivan/IvanLebenHonsThesis.pdf\r\n\r\n**RAVG**\r\nhttp://research.microsoft.com/en-us/um/people/hoppe/proj/ravg/\r\n\r\n**NV Path Rendering Videos (seams only with nvidia)**\r\nhttp://developer.nvidia.com/nv-path-rendering-videos\r\n\r\n**Vector drawing: OpenGL polygon tessellation**\r\nhttp://www.mdk.org.pl/2007/8/16/vector-drawing-opengl-polygon-tessellation\r\nhttp://zrusin.blogspot.com.es/2006/07/hardware-accelerated-polygon-rendering.html\r\n","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","color":"622425","name":"feature"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-2D","color":"DDDDDD","name":"section-2D"}],"title":"Bezier Shaders & Vector openGL rendering","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-20T09:23:00Z","updated_at":"2012-05-14T01:22:17Z","comments":8,"milestone":null,"number":1190,"id":4207350,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/microbians","gravatar_id":"98c91e60903b83c0a022ee70cca9ca21","login":"microbians","avatar_url":"https://secure.gravatar.com/avatar/98c91e60903b83c0a022ee70cca9ca21?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1662136}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1189","html_url":"https://github.com/openframeworks/openFrameworks/issues/1189","body":"ofSetCurveResolution is not changing the resolution using ofBezier nor ofBezierVertex (tested with ofScale is more easy to see the bug)\r\n\r\n ofFill();\r\n ofSetHexColor(0xFF9933);\r\n ofBeginShape();\r\n ofVertex(x0,y0);\r\n ofBezierVertex(x1,y1,x2,y2,x3,y3);\r\n ofEndShape();\r\n\r\nall works fine when using ofPath directly:\r\n\r\n ofPath curve;\r\n curve.setFillHexColor(0xFF000);\r\n curve.setCurveResolution(120);\r\n curve.moveTo(x0, y0);\r\n curve.bezierTo(x1,y1,x2,y2,x3,y3);\r\n curve.draw();\r\n\r\nmore: http://forum.openframeworks.cc/index.php/topic,9596.0.html","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"}],"title":"ofSetCurveResolution + ofBezierVertex bug","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-20T08:51:51Z","updated_at":"2012-05-16T09:41:20Z","comments":0,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","due_on":"2012-06-25T07:00:00Z","open_issues":81,"title":"0072 Release","created_at":"2011-12-02T15:29:48Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":5,"id":61810,"state":"open","closed_issues":21},"number":1189,"id":4206982,"assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"state":"open","user":{"url":"https://api.github.com/users/microbians","gravatar_id":"98c91e60903b83c0a022ee70cca9ca21","login":"microbians","avatar_url":"https://secure.gravatar.com/avatar/98c91e60903b83c0a022ee70cca9ca21?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1662136}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1186","html_url":"https://github.com/openframeworks/openFrameworks/issues/1186","body":"If you set up an ofFbo as follows...\r\n\r\n```cpp\r\n ofFbo::Settings s;\r\n s.width = 400;\r\n s.height = 400;\r\n s.textureTarget = GL_TEXTURE_2D;\r\n s.useDepth = true;\r\n s.depthAsTexture = true;\r\n s.dethInternalFormat = GL_DEPTH_COMPONENT24;\r\n```\r\n\r\n...then the colour texture's dimensions are set to be the next POTs up but the depth texture's dimensions don't seem to be. ","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","color":"DDDDDD","name":"section-3D"}],"title":"ofFbo depthBufferTex can be inconsistent with colour texture","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-18T15:08:32Z","updated_at":"2012-05-01T04:10:23Z","comments":2,"milestone":null,"number":1186,"id":4174070,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/neilmendoza","gravatar_id":"3e46b12547e7bac19eb982bc512b19c4","login":"neilmendoza","avatar_url":"https://secure.gravatar.com/avatar/3e46b12547e7bac19eb982bc512b19c4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":818571}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1178","html_url":"https://github.com/openframeworks/openFrameworks/issues/1178","body":"As mentioned here: http://forum.openframeworks.cc/index.php?topic=9107.0\r\nOpenGLES2 not working. It is always falls back to ES1. I tested it only on iPad2 with iOS 5.0.1.","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","color":"2babad","name":"iOS"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"}],"title":"OpenGLES2 not working","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-16T11:19:36Z","updated_at":"2012-05-16T09:44:27Z","comments":0,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","due_on":"2012-06-25T07:00:00Z","open_issues":81,"title":"0072 Release","created_at":"2011-12-02T15:29:48Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":5,"id":61810,"state":"open","closed_issues":21},"number":1178,"id":4132608,"assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"state":"open","user":{"url":"https://api.github.com/users/erinnovations","gravatar_id":"29639bbeb3afdde8fb3c7e273e5e43c6","login":"erinnovations","avatar_url":"https://secure.gravatar.com/avatar/29639bbeb3afdde8fb3c7e273e5e43c6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":253455}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1175","html_url":"https://github.com/openframeworks/openFrameworks/issues/1175","body":"in ofTexture::loadData we are doing:\r\n\r\n\r\n\t//------------------------ likely, we are uploading continuous data\r\n\tGLint prevAlignment;\r\n\tglGetIntegerv(GL_UNPACK_ALIGNMENT, &prevAlignment);\r\n\tglPixelStorei(GL_UNPACK_ALIGNMENT, 1);\r\n\r\nany reason for this? leaving the default works too. i've been working with a huge video and the transfer rates on some cards were super slow with ofTexture::loadData. even glDrawPixels was faster, i've finally used pbo's but later looking at ofTexture discovered this lines and i suspect that it could be the reason for loadData being slower, haven't tested it yet though.","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","color":"DDDDDD","name":"section-3D"}],"title":"GL_UNPACK_ALIGNMENT 1 in ofTexture","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-14T13:45:42Z","updated_at":"2012-04-14T13:45:55Z","comments":0,"milestone":null,"number":1175,"id":4117762,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1174","html_url":"https://github.com/openframeworks/openFrameworks/issues/1174","body":"one returns the result (dot) the other performs in place (cross), i.e. overrides the contents\r\nThe two definitions are inconsistent\r\npropose rename `ofVec3f::dot` to become `ofVec3f::getDotted` in line with `ofVec3f::getCrossed`","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","color":"31e03a","name":"fix-proposed"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","color":"DDDDDD","name":"section-internals"}],"title":"bug : inconsistent API for ofVec3f::dot and ofVec3f::cross","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-13T17:09:38Z","updated_at":"2012-05-16T09:39:22Z","comments":9,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","due_on":"2012-06-25T07:00:00Z","open_issues":81,"title":"0072 Release","created_at":"2011-12-02T15:29:48Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":5,"id":61810,"state":"open","closed_issues":21},"number":1174,"id":4108582,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1173","html_url":"https://github.com/openframeworks/openFrameworks/issues/1173","body":"If you pass a string containing non-ascii characters to ofToHex(), the non-ascii characters (with character codes above 127) will be output as ffffxxxx (it depends on the exact character value and the size of the int type on the platform you are compiling for).\r\nThe problem is due to an incorrect cast in the ostringstream operation inside the loop.\r\nInstead of directly casting the (signed) char from the input character to an unsigned int, the input character must first be cast to an unsigned char.\r\nIn other words, instead of:\r\n``` out << setfill('0') << setw(2) << hex << (unsigned int) value[i];```\r\nit should be:\r\n``` out << setfill('0') << setw(2) << hex << (unsigned int) ((unsigned char)value[i]);```\r\nor maybe even:\r\n``` out << setfill('0') << setw(2) << hex << static_cast(static_cast(value[i]));```\r\nif you prefer C++ style casts over C style casts. :)\r\n\r\nHTH\r\n/Jesper","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","color":"65a300","name":"bitesize"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","color":"31e03a","name":"fix-proposed"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","color":"DDDDDD","name":"section-internals"}],"title":"ofToHex(string) is wrong for non-ascii input","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-13T14:42:30Z","updated_at":"2012-04-14T04:20:36Z","comments":1,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","due_on":"2012-06-25T07:00:00Z","open_issues":81,"title":"0072 Release","created_at":"2011-12-02T15:29:48Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":5,"id":61810,"state":"open","closed_issues":21},"number":1173,"id":4104336,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/pappis","gravatar_id":"fbf3d56c96cf5b891056530066549692","login":"pappis","avatar_url":"https://secure.gravatar.com/avatar/fbf3d56c96cf5b891056530066549692?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1640543}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1171","html_url":"https://github.com/openframeworks/openFrameworks/issues/1171","body":"if I call ofBeginSaveScreenAsPDF using ofEasyCam or the ofCamera, the pdf doesn't have the perspective of the camera. There's a parameter b3d to ofBeginSaveScreenAsPDF which I interpret to be \"render taking into account 3d transforms\", but it doesn't seem to have any effect.\r\n\r\nmore on the forum\r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,9542.0.html","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","color":"DDDDDD","name":"section-3D"}],"title":"ofBeginSaveScreenAsPDF ignores 3d transformations","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-12T10:09:42Z","updated_at":"2012-04-12T10:09:42Z","comments":0,"milestone":null,"number":1171,"id":4081188,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/jesusgollonet","gravatar_id":"5008d5295e9bc2636313c7b50ed5981d","login":"jesusgollonet","avatar_url":"https://secure.gravatar.com/avatar/5008d5295e9bc2636313c7b50ed5981d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":31100}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1167","html_url":"https://github.com/openframeworks/openFrameworks/issues/1167","body":"if I have `ofEvent boolEvent` and i try to call `ofNotifyEvent( boolEvent, true )` i get a `no matching function` error as the compiler cannot coerce `true` to a `bool &`.\r\n\r\nto solve this, instead of this:\r\n\r\n~~~~\r\nofEvent boolEvent;\r\n...\r\nofNotifyEvent( boolEvent, true );\r\n~~~~\r\n\r\ni need to write this:\r\n\r\n~~~~\r\nofEvent boolEvent;\r\n...\r\nbool myBool = true;\r\nofNotifyEvent( boolEvent, myBool );\r\n~~~~\r\n\r\nthis is kind of annoying.","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"}],"title":"ofNotifyEvent( boolEvent, true ) fails to compile","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-11T12:03:34Z","updated_at":"2012-04-13T14:54:18Z","comments":2,"milestone":null,"number":1167,"id":4063456,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1166","html_url":"https://github.com/openframeworks/openFrameworks/issues/1166","body":"It's currently not possible to have an event without arguments\r\n\r\n`ofEvent testEvent;` -- fails to compile\r\n","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","color":"622425","name":"feature"}],"title":"ofEvent lacks simple, argument-free use case","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-11T12:00:19Z","updated_at":"2012-04-11T13:21:33Z","comments":2,"milestone":null,"number":1166,"id":4063417,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1165","html_url":"https://github.com/openframeworks/openFrameworks/issues/1165","body":"It's currently not possible to write `ofLogError( \"serial\", \"error %i connecting to serial\", serialError )`. \r\n\r\nThere should be `ofLogError( string module, string format, ... )` methods as with normal ofLog.","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","color":"622425","name":"feature"}],"title":"ofLogError, ofLogWarning lack format, ... args","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-11T11:56:33Z","updated_at":"2012-04-21T15:41:01Z","comments":6,"milestone":null,"number":1165,"id":4063366,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1152","html_url":"https://github.com/openframeworks/openFrameworks/issues/1152","body":"change `allocate(_w, _h, OF_IMAGE_COLOR);` to `allocate(_w, _h, OF_IMAGE_COLOR_ALPHA);` (via reza on irc)","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","color":"31e03a","name":"fix-proposed"}],"title":"grabScreen in ofImage fails on Android","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-09T17:15:21Z","updated_at":"2012-04-10T16:47:19Z","comments":4,"milestone":null,"number":1152,"id":4032047,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1151","html_url":"https://github.com/openframeworks/openFrameworks/issues/1151","body":"the module name is no longer printed if it's coming from OF itself.\r\n\r\ninstead of the constant name, a human-readable string is printed.\r\n\r\nexample output from project generator: http://pastebin.com/raw.php?i=0dp938Jx","closed_at":null,"labels":[],"title":"shorten + simplify ofLog output","pull_request":{"patch_url":"https://github.com/openframeworks/openFrameworks/pull/1151.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/1151","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1151.diff"},"created_at":"2012-04-08T21:13:14Z","updated_at":"2012-05-29T14:46:40Z","comments":6,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","due_on":"2012-06-25T07:00:00Z","open_issues":81,"title":"0072 Release","created_at":"2011-12-02T15:29:48Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":5,"id":61810,"state":"open","closed_issues":21},"number":1151,"id":4023525,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1150","html_url":"https://github.com/openframeworks/openFrameworks/issues/1150","body":"\r\nWorking on the project generator, which has a fair amount of logging, I'm concerned about how much space we loose on each line: \r\n\r\n OF: OF_LOG_NOTICE:\r\n\r\nit's about 15-20 characters or so, pretty significant where each line is 80, so alot more wrapping happens then I'd like, making the results less cleaner or organized. \r\n\r\nI propose we alter \r\n\r\n string ofGetLogLevelName(ofLogLevel level){\r\n switch(level){\r\n case OF_LOG_VERBOSE:\r\n return \"OF_LOG_VERBOSE\";\r\n break;\r\n case OF_LOG_NOTICE:\r\n return \"OF_LOG_NOTICE\";\r\n break;\r\n case OF_LOG_WARNING:\r\n return \"OF_LOG_WARNING\";\r\n break;\r\n case OF_LOG_ERROR:\r\n return \"OF_LOG_ERROR\";\r\n break;\r\n case OF_LOG_FATAL_ERROR:\r\n return \"OF_LOG_FATAL_ERROR\";\r\n break;\r\n case OF_LOG_SILENT:\r\n return \"OF_LOG_SILENT\";\r\n break;\r\n default:\r\n return \"\";\r\n }\r\n }\r\n\r\nso that we can have something like : \r\n\r\n (of:notice) \r\n (of:verbose) \r\n (of:error) \r\n\r\nor something smaller and if we loose the all caps, maybe less threatening :)\r\n","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","color":"65a300","name":"bitesize"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","color":"31e03a","name":"fix-proposed"}],"title":"propose shortening ofLog console message length","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-08T20:32:49Z","updated_at":"2012-04-17T14:47:36Z","comments":4,"milestone":null,"number":1150,"id":4023305,"assignee":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1146","html_url":"https://github.com/openframeworks/openFrameworks/issues/1146","body":"Hey all\r\n\r\nA few sections of the repo need some love to put them in line with the project generator:\r\n\r\n1. Readme's\r\n2. Rogue old project generators\r\n3. Document complementing tools\r\n\r\n# Readme\r\n\r\nThe readme's in the root of the repo need some love\r\nnone of them mention project generator \r\n\r\ni feel like each should be a description of how to get to a working project generator on each of the respective platforms\r\n\r\nalso note:\r\n* .vs2010 is missing\r\n* readme.txt repeats information from the other readme's (i.e. it's a list of platform specific instructions)\r\ni think this should be perhaps a little description of oF and a few tips on how to get started\r\n\r\n# Rogue old 'project generators' / documenting complementary tools for project generator\r\n\r\nHere's things I can find in the repo which don't make sense to me at the moment:\r\n\r\n* `openFrameworks\\scripts\\????\\compileAllExamples.bat`\r\n** is this supposed to be run (optionally) after the project generator?\r\n** why is the project template within this folder?\r\n* `openFrameworks\\scripts\\????\\createProjects.py` \r\n** if this isn't supposed to be used anymore, lets delete it immediately (we can always recover in emergencies)\r\n\r\nand the 'other' folder in the root.. perhaps never took off?","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","color":"cccc29","name":"documentation"}],"title":"Document Project Generator / clean out old tools","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-07T14:43:53Z","updated_at":"2012-04-07T15:00:32Z","comments":0,"milestone":null,"number":1146,"id":4015514,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1145","html_url":"https://github.com/openframeworks/openFrameworks/issues/1145","body":"When attempting to render a mesh to a PDF the ofCairoRender does not output a filled mesh, thus the PDF output looks empty. \r\n\r\nIf you open the file in illustrator you'll see the paths, there but with no stroke or fill. \r\n\r\nWhen I dug into the issue a bit further I realized that Cairo isn't capable of rendering shapes with per vertex colors easily...\r\n\r\n","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","color":"31e03a","name":"fix-proposed"}],"title":"ofCairoRenderer ofMesh doesn't render properly to PDF","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-06T22:02:01Z","updated_at":"2012-04-07T19:49:31Z","comments":3,"milestone":null,"number":1145,"id":4010494,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/rezaali","gravatar_id":"548374013b9c6e50ebbd2294e12d4f31","login":"rezaali","avatar_url":"https://secure.gravatar.com/avatar/548374013b9c6e50ebbd2294e12d4f31?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":555207}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1144","html_url":"https://github.com/openframeworks/openFrameworks/issues/1144","body":"When using the ofColor subtraction operator, negative results are clamped to positive values instead of 0. Values are circulating between 0 and 255, which could be useful for hue in HSV but in most cases (R, G, B..) is not what I would expect.\r\n\r\n ofColor a(10, 40, 80);\r\n ofColor b(20, 5, 30);\r\n ofColor c = (a-b); // I get: (246, 45, 50), I would expect: (0, 45, 50)","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","color":"b31d1d","name":"bug"}],"title":"ofColor subtraction and negative values","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-06T07:56:44Z","updated_at":"2012-05-01T04:21:01Z","comments":9,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","due_on":"2012-06-25T07:00:00Z","open_issues":81,"title":"0072 Release","created_at":"2011-12-02T15:29:48Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":5,"id":61810,"state":"open","closed_issues":21},"number":1144,"id":4001148,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/jembezmamy","gravatar_id":"69a23dc9914cb6bc3202c50e15eabba0","login":"jembezmamy","avatar_url":"https://secure.gravatar.com/avatar/69a23dc9914cb6bc3202c50e15eabba0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":720354}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1138","html_url":"https://github.com/openframeworks/openFrameworks/issues/1138","body":"When using the dragEvent ofDragInfo I always get the following error message:\r\n\r\nwarning: Could not find object file \"/Users/theo/Documents/CODE/__OPENFRAMEWORKS/gitOF/openFrameworks/apps/devApps/macDragDropExample/buildGlutFrameworkHackedWindowLevel10.4/libForeground.a(macx_foreground.o)\" - no debug information available for \"/Users/mcast/Code/GLUT-ToPost/macx_foreground.m\".\r\n\r\nIt doesn't seem to hurt my code but is a bit annoying, especially early on when I wasn't sure if it had anything to do with compile failings. Not a big issue obviously, but it might confuse some other newbie's also.\r\n\r\n(OF 0.07 - Xcode 4.2.1 - OS X 10.7.3 - macbook pro) ","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","color":"2a8296","name":"macOS"}],"title":"benign error message","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-04T11:05:57Z","updated_at":"2012-04-04T12:07:24Z","comments":1,"milestone":{"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","due_on":"2012-06-25T07:00:00Z","open_issues":81,"title":"0072 Release","created_at":"2011-12-02T15:29:48Z","creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"description":"","number":5,"id":61810,"state":"open","closed_issues":21},"number":1138,"id":3968742,"assignee":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"state":"open","user":{"url":"https://api.github.com/users/davideo71","gravatar_id":"42c3c1acbdb4a998d8096b49745219cd","login":"davideo71","avatar_url":"https://secure.gravatar.com/avatar/42c3c1acbdb4a998d8096b49745219cd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1611385}},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1134","html_url":"https://github.com/openframeworks/openFrameworks/issues/1134","body":"theo's #1133 made me think about ways that i use noise regularly that might also be abstracted.\r\n\r\ni would also like to see versions of noise that return multidimensional results. normally i do something like:\r\n\r\n\tofVec2 a(ofSignedNoise(t, 0), ofSignedNoise(0, t)); // 1D -> 2D\r\n\tofVec2 b(ofSignedNoise(x, 0), ofSignedNoise(0, y)); // 2D -> 2D\r\n\tofVec3 c(ofSignedNoise(t, 0, 0), ofSignedNoise(0, t, 0), ofSignedNoise(0, 0, t)); // 1D -> 3D\r\n\tofVec3 d(ofSignedNoise(x, 0, 0), ofSignedNoise(0, y, 0), ofSignedNoise(0, 0, (x + y) / 2)); // 2D -> 3D\r\n\r\nand it would be good to spend some time making sure these are really good ways of doing it, then implement them inside some functions like `ofSignedNoise2()` and `ofSignedNoise3()` (for example).","closed_at":null,"labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","color":"db6a1f","name":"core"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","color":"622425","name":"feature"}],"title":"multidimensional noise output","pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"created_at":"2012-04-01T16:44:55Z","updated_at":"2012-04-03T17:37:10Z","comments":2,"milestone":null,"number":1134,"id":3917377,"assignee":null,"state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=3 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4973'), ('content-length', '55788'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"866bf23c3eacebec1bf87ae32d99f1d0"'), ('date', 'Tue, 29 May 2012 20:18:27 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-04-01T17:48:12Z","body":"ie: the equivalent of doing \r\n\r\nfloat rate = 0.02 + ofNoise(ofGetElapsedTimeF() * 0.02, 100.0) * 0.015;\r\nfloat value = ofSignedNoise( rate, x, y ); \r\n\r\nas one function. \r\n\r\nalso see kyle's #1134 for other noise utils. \r\n\r\nI find myself needing this quite often for more natural random motion where the rate of change is variable. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1133","comments":0,"milestone":null,"number":1133,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1133","assignee":null,"title":"ofNoise and ofSignedNoise with 2nd order control for rate.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-04-01T15:45:11Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3917018,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-02T02:05:52Z","body":"This is a feature discussion issue for what string features we should add to of.\r\nofZach mentioned some regexp ones from P5 match matchAll\r\nWould be great to get some eyes on this.\r\n\r\nOne approach would be a static class or namespace.\r\nThe idea would be we could include a variety of handy functions that would be useful for people not wanting to get into regexp\r\n\r\n\tofString::contains(str, \"apple\") //returns bool\r\n\tofString::starts(str, \"The\") //returns bool\r\n\tofString::ends(str, \".\") //returns bool\r\n\tofString::count(str, \"apples\") //count how many times apples appears in the \r\n\tofString::join(myVectorStr, \", \"); //this is currently ofJoinString\r\n\tofString::split(someText, \".\"); //this is currently ofSplitString\r\n\tofString::split(someHtml, \"<\", \">\"); //this is the same but returns a vector of things between the start and end delims\r\n\tofString::limit(someText, 200); //limit the text to 200 characters. optional arg to add ... to the end.\r\n\r\nQuestions:\r\n- Should we mirror P5 with match and matchAll or should we indicate that regexp is required? ie regexMatch regexMatchAll ?\r\n- Other string utils we could add?\r\n- Should it be ofStringUtils:: or ofString:: ?\r\n- Something to do a split and then return a vector of float int etc?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1132","comments":6,"milestone":null,"number":1132,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1132","assignee":null,"title":"ofStringUtils:: feature discussion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-31T17:52:48Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3911629,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-27T17:40:30Z","body":"This is a feature discussion issue for what should be added / changed to ofTTF.\r\nWould be great to get some eyes on this from @vtron @ofzach @arturoc and anyone with thoughts on the matter.\r\n\r\nTextAreas:\r\n- Fit text to a box\r\n- Handle overflow ( ie either truncate or resize box height )\r\n- non ragged options\r\n- could textAreas work with both ofTTF and ofDrawBitmapString ? abstract text formatting?\r\n\r\nAlignment:\r\n- Left align a string\r\n- Right align\r\n- Center\r\n- Top align \r\n- Base align \r\n\r\nSpacing:\r\n- Kerning\r\n- Leading / line height\r\n\r\nLoading:\r\n- Allow for loading a font up to a max size for drawing at different sizes. \r\n- Allow for selection and loading of specific sizes within one object. ie: myFont.setCurrentSize(12); \r\n- Font family's / sets ? Bold, Italic etc? \r\n\r\nDrawing:\r\n- Allow for drawing font at different sizes. Scale font as needed. \r\n\r\nFormatting:\r\n- Could we somehow allow a string to have different colors, sizes. Right now it is a pain to change colors or sizes. \r\n- would this be replicating basic html or another approach? maybe better as an addon?\r\n\r\nInfo:\r\n- Ability to get the x and y position of the nth character in the string? useful maybe for cursor or selection?\r\n\r\n**Update:**\r\n-Underline\r\n-Render rect behind text ( a la what @kylemcdonald added to ofDrawBitmapString)\r\n-Scale type to fit a rect + keep aspect ratio\r\n-Crazy: text along a path :) ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1131","comments":25,"milestone":null,"number":1131,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1131","assignee":null,"title":"ofTTF feature discussion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-31T17:36:25Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3911537,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-31T14:44:01Z","body":"Agree on a common format for a header in the contributed example files.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1130","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1130,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1130","assignee":null,"title":"Define standard header for examples.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-31T14:44:01Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3910580,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-24T02:12:05Z","body":"\r\n\r\nXcode 4 mangles OF projects pretty badly in the following ways: \r\n\r\na) it autogenerates schemes, and \"openframeworks\" appears as the chosen scheme\r\nb) it sometimes chooses the wrong SDK for OF -- is there a way to set that?\r\nc) debug and release are not really clear, part of this is a shift in xcode -- but it's much harder to see how things are compiled and to set release or debug\r\nd) I still had issues with OF needing to be recompiled all the time. I tried to fix this, but we should make sure it's done right. the of lib was appearing red even though it had been built, etc. \r\n\r\nI've tried to fix some of this in detroit with the PG, but I don't think it's the right way to do it. Overall, it would be great to have projects work smoothly on xcode 4...\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1129","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1129,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1129","assignee":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"xcode 4 issues: scheme, auto-generation of schemes, rebuilding OF, sdk, etc","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-03-31T14:39:04Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3910555,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-31T16:32:04Z","body":"When deprecating api's (e.g. ofEvents, ofVertexes), perhaps we could help automate the changes through simple scripts to update api\r\nSuggest sticking to something close to how uncrustify scripts are run (and perhaps there are tools like uncrustify but specifically for this task)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1128","comments":1,"milestone":null,"number":1128,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1128","assignee":null,"title":"upgrade scripts","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-31T14:38:19Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3910549,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-09T16:47:04Z","body":"It would be nice (and useful for testing the PG) if the PG would get an option to clean the examples folders of all generated files. \r\n\r\nCurrently, the quickest option is to delete the examples folder on disk, and do `git reset --hard HEAD`.\r\n\r\nAs before, milestoned for 0071, but feel free to push back.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1126","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1126,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1126","assignee":null,"title":"PG Feature request: Clean examples folder","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-03-30T12:51:30Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3897090,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-29T16:47:29Z","body":"there is a hard limit of 100 files when using drag & drop into an of app. not sure if it's an of issue, but am curious if it comes from the hacked glutDragEventFunc ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1124","comments":0,"milestone":null,"number":1124,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1124","assignee":null,"title":"void dragEvent(ofDragInfo dragInfo) limited to 100 files in osx lion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-29T16:47:29Z","state":"open","user":{"url":"https://api.github.com/users/jesusgollonet","gravatar_id":"5008d5295e9bc2636313c7b50ed5981d","login":"jesusgollonet","id":31100,"avatar_url":"https://secure.gravatar.com/avatar/5008d5295e9bc2636313c7b50ed5981d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3883598,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-29T13:05:25Z","body":"When loading a file with ofImage, ofSoundPlayer , ofVideoPlayer-file or any ofFile it would be nice to be able to know if the file changed since it was loaded.\r\n\r\nIts very simple to implement with Poco::File->getLastModified() and it would be very nice if this would be built into the above classes.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1120","comments":2,"milestone":null,"number":1120,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1120","assignee":null,"title":"isFileChanged() for ofImage, ofVideoPlayer, ofSoundPlayer and ofFile","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-28T16:21:45Z","state":"open","user":{"url":"https://api.github.com/users/imanhp","gravatar_id":"7398ab0bbd07832d0289f26773e65077","login":"imanhp","id":1216228,"avatar_url":"https://secure.gravatar.com/avatar/7398ab0bbd07832d0289f26773e65077?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3856005,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-30T12:19:59Z","body":"paths.make should be in the repo as an example on how to set it up correctly, but changes (i.e. paths unique to every user) to it should be ignored cause everyone will have a different version in their computers so we don't want personal changes to appear in git status.\r\n\r\nI think the best way to solve this is to rename it to paths.make.default, keep this in the repo, maybe with `` instead of your path, and have people make their own paths.make from that one. We track changes to paths.make.default and ignore paths.make. \r\n\r\nThis will probably also need a mechanism in the makefile to fail gracefully and remind the user, if his customized paths.make is missing.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1118","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1118,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1118","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Default paths.make for Android","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/android","name":"android","color":"2bc4ad"}],"closed_at":null,"created_at":"2012-03-28T12:19:39Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3850655,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-18T17:13:36Z","body":"Once ofSetFrameRate() is called, I can't find a way to retrieve it. I think implementing a ofGetDesiredFrameRate() in ofAppRunner would make sense, also adding getDesiredFrameRate() to ofAppBaseWindow and all subclasses, where the actual value is stored. \r\n\r\nThis can be useful to compare the desired frame rate with actual frame rate and react accordingly if required.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1117","comments":0,"milestone":null,"number":1117,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1117","assignee":null,"title":"Can't retrieve desired frame rate once set","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-27T11:48:00Z","state":"open","user":{"url":"https://api.github.com/users/armadillu","gravatar_id":"b87a82d7c86161432ee6388c7cbd5e2c","login":"armadillu","id":167057,"avatar_url":"https://secure.gravatar.com/avatar/b87a82d7c86161432ee6388c7cbd5e2c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3825582,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-26T22:27:14Z","body":"https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/gl/ofVbo.cpp#L343\r\n\r\nIndices should be specified as GL_ELEMENT_ARRAY_BUFFER unless I am mistaken.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1116","comments":5,"milestone":null,"number":1116,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1116","assignee":null,"title":"ofVBO updateIndexData incorrect buffer type.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-26T18:26:05Z","state":"open","user":{"url":"https://api.github.com/users/vade","gravatar_id":"37aca214d4875cd90af9d67072c82642","login":"vade","id":65011,"avatar_url":"https://secure.gravatar.com/avatar/37aca214d4875cd90af9d67072c82642?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3813852,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-26T18:45:51Z","body":"The default optimization settings for debug builds in example XCode projects is set to Fastest,Smallest thus making debugging very difficult, is there a specific reason for this?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1115","comments":3,"milestone":null,"number":1115,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1115","assignee":null,"title":"optimization level in xcode projects","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"}],"closed_at":null,"created_at":"2012-03-26T17:05:14Z","state":"open","user":{"url":"https://api.github.com/users/colormotor","gravatar_id":"2548dbd6a86902ed5260b5f76710b83c","login":"colormotor","id":1239872,"avatar_url":"https://secure.gravatar.com/avatar/2548dbd6a86902ed5260b5f76710b83c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3812318,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-31T15:31:31Z","body":"I had some problems because of macro definitions in ofArduino.h overriding an enum in a a class of my codebase ( SHIFT )\r\nIt's not exactly a bug! but I would suggest using enums or const int instead of the macros to avoid any conflicts\r\nI solved the problem by modifying \r\n#define SHIFT 0x05 \r\ninto \r\nconst int SHIFT = 0x05;\r\n\r\nanother solution could be using enumerations as \r\nenum\r\n{\r\n ...\r\n SHIFT = 0x05,\r\n etc...\r\n};\r\n\r\nI believe this would not break any of the existing code\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1114","comments":1,"milestone":null,"number":1114,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1114","assignee":{"url":"https://api.github.com/users/joshuajnoble","gravatar_id":"10960ba0f305803a1cdc7cd6188d643b","login":"joshuajnoble","id":237423,"avatar_url":"https://secure.gravatar.com/avatar/10960ba0f305803a1cdc7cd6188d643b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"macros in ofArduino","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-03-26T17:02:21Z","state":"open","user":{"url":"https://api.github.com/users/colormotor","gravatar_id":"2548dbd6a86902ed5260b5f76710b83c","login":"colormotor","id":1239872,"avatar_url":"https://secure.gravatar.com/avatar/2548dbd6a86902ed5260b5f76710b83c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3812275,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-27T14:56:56Z","body":"Hello.\r\n\r\nI'm trying to run camera frame grabing in OSX Lion.\r\nSimple ofVideoGrabber doesn't work - even if I link it with 10.6 SDK (and 10.6 is deployment target) I receive crash in initialization of ofVideoGrabber. Details are the same as in http://forum.openframeworks.cc/index.php/topic,6776.0.html\r\n\r\nI tryed QtKitMovieGrabberExample. It had some problems in compilation - texture property was not synthesized, I wrote this property and compilation run well.\r\nBut linking is fault. All I receive form linker is:\r\n\r\n*Ld bin/movieGrabberExampleDebug.app/Contents/MacOS/movieGrabberExampleDebug normal i386\r\n cd /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample\r\n setenv MACOSX_DEPLOYMENT_TARGET 10.6\r\n /Developer/usr/bin/clang++ -arch i386 -isysroot /Developer/SDKs/MacOSX10.6.sdk -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freeimage/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/GLee/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/rtAudio/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/fmodex/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freetype/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx -F/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin -F/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/glut/lib/osx -filelist /Users/yltastep/Library/Developer/Xcode/DerivedData/movieGrabberExample-aftkspwrgtotrteyzaplfbqzeasd/Build/Intermediates/movieGrabberExample.build/Debug/movieGrabberExample.build/Objects-normal/i386/movieGrabberExampleDebug.LinkFileList -mmacosx-version-min=10.6 -dead_strip ../../../libs/poco/lib/osx/PocoFoundation.a ../../../libs/poco/lib/osx/PocoNet.a ../../../libs/poco/lib/osx/PocoXML.a ../../../libs/poco/lib/osx/PocoUtil.a ../../../libs/tess2/lib/osx/tess2.a ../../../libs/glew/lib/osx/glew.a ../../../libs/cairo/lib/osx/cairo-script-interpreter.a ../../../libs/cairo/lib/osx/cairo.a ../../../libs/cairo/lib/osx/pixman-1.a ../../../libs/fmodex/lib/osx/libfmodex.dylib ../../../libs/rtAudio/lib/osx/rtAudio.a /Users/yltastep/Documents/XCode/openframeworks/libs/openFrameworksCompiled/lib/osx/openFrameworksDebug.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/GLee/lib/osx/GLee.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/rtAudio/lib/osx/rtAudio.a -framework AGL -framework ApplicationServices -framework AudioToolbox -framework Carbon -framework CoreAudio -framework CoreFoundation -framework CoreServices -framework OpenGL -framework QuickTime -framework AppKit -framework Cocoa -framework IOKit -framework GLUT /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoFoundation.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoNet.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoUtil.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoXML.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freetype/lib/osx/freetype.a -lfmodex /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx/freeimage.a -framework QTKit -framework Quartz -framework QuartzCore -o /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin/movieGrabberExampleDebug.app/Contents/MacOS/movieGrabberExampleDebug*\r\n\r\n**Command /Developer/usr/bin/clang++ failed with exit code 1**\r\n\r\nSo no explanation of problem.\r\n\r\nIs somebody ran this example successfully ?\r\nAnd what I'm doing wrong ?\r\n\r\nThanks in advance !\r\n\r\nWith regards.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1112","comments":9,"milestone":null,"number":1112,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1112","assignee":null,"title":"Issue with QtKitMovieGrabberExample in apps/devapps","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2012-03-26T12:11:44Z","state":"open","user":{"url":"https://api.github.com/users/OlexandrStepanov","gravatar_id":"aa6e2a475cab75513c9cc435b28eef31","login":"OlexandrStepanov","id":971079,"avatar_url":"https://secure.gravatar.com/avatar/aa6e2a475cab75513c9cc435b28eef31?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3807459,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-25T20:07:16Z","body":"Todd's example has this code a few times in it by hand, but I'm thinking it's so simple it could be added along side ofSplitString() and would be really useful ? for sure, more string utility functions are helpful, and for basic text parsing, this is great. Poco gives us this for free, so it doesn't seem like a huge stretch to think of something like this, plus find and replace, etc. Would make the regex example much shorter. \r\n\r\np5 has something similar, if that's a helpful argument: \r\n\r\nhttp://processing.org/reference/matchAll_.html\r\n\r\n\r\n\tvector < string > ofxRegex::getMatchedStrings (string contents, string regex );\r\n\tvector < string > ofxRegex::getMatchedStrings (string contents, string regex ){\r\n \r\n\t vector < string > results;\r\n\t RegularExpression regEx(regex);\r\n\t RegularExpression::Match match;\r\n \r\n\t while(regEx.match(contents, match) != 0) {\r\n \r\n\t // we get the sub string from the content\r\n\t // and then trim the content so that we\r\n\t // can continue to search \r\n\t string foundStr = contents.substr(match.offset, match.length);\r\n\t contents = contents.substr(match.offset + match.length);\r\n \r\n\t results.push_back(foundStr);\r\n \r\n\t }\r\n\t return results;\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1110","comments":1,"milestone":null,"number":1110,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1110","assignee":null,"title":"add a simple regex function like ofSplitString()","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-03-25T18:56:37Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3799872,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-25T18:50:13Z","body":"code to recreate: \r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::setup(){\r\n system(\"pwd;\");\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::update(){\r\n system(\"pwd;\");\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::draw(){\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::keyPressed(int key){\r\n cout << ofToDataPath(\"temp\") << endl;\r\n}\r\n\r\nproduces: \r\n\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n../../../data/temp\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin/emptyExampleDebug.app/Contents/MacOS\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin/emptyExampleDebug.app/Contents/MacOS\r\n\r\nthis is because the code that fixes OSX paths isn't called until you call ofToDataPath(). a good fix I think would be to set ofDataPathRoot (which happens in ofToDataPath) somewhere early in ofRunApp(). Or should it happen even earlier?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1109","comments":3,"milestone":null,"number":1109,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1109","assignee":null,"title":"mac paths don't seem right until you call \"ofToDataPath()\"","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2012-03-25T18:18:28Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3799653,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-09T13:06:18Z","body":"easycam behaves as expected when inited but as soon as I change it's target it begins to behave strangely.\r\nthere's this imaginary sphere that we are rotating (it's diameter is min (viewport.width, vieport.height)), when the mouse is dragged from inside to outside of it the rotation just jumps to a \"random\" rotation. \r\nas well when you have a the camera rotated more than 180º in some axis the \"trackball\" doesn't behave as expected. yet this behavior is not seen when the target hasn't been changed.\r\n\r\nDoes any one know what's going on?\r\n\r\nI just came across this but I haven't gone deeply into how easycam handles the mouse to rotate. \r\nI'll do so ASAP. If someone can give me any clues I'll really apreciate it.\r\n\r\nregards!","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1108","comments":7,"milestone":null,"number":1108,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1108","assignee":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"easyCam weird behavior when target changed","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-25T00:01:54Z","state":"open","user":{"url":"https://api.github.com/users/roymacdonald","gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","login":"roymacdonald","id":974878,"avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3795495,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-09T16:47:18Z","body":"It would be great if the PG could also generate projects/examples for usage with Eclipse, i.e. just the makefile related files, no CB or other project files.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1103","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1103,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1103","assignee":null,"title":"PG feature request: Generate makefile-only projects","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-03-21T21:43:34Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3754055,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-19T16:18:43Z","body":"whenever i call ofLog beneath openmp i have to wrap it in ```#pragma omp critical (ofLog)``` otherwise i get a crash\r\ni found adding the line above \r\nhttps://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/utils/ofLog.cpp#L84\r\nworks pretty well\r\n\r\nany objections to having it in there?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1098","comments":3,"milestone":null,"number":1098,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1098","assignee":null,"title":"feature / bug - #pragma omp critical(ofLog)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-19T14:04:51Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3710293,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-15T20:34:17Z","body":"I'm finding that `ofDirector::listDir, open` are extremely slow\r\nit seems that it's actually loading the entire dir contents into memory\r\n\r\nit's possible to then do something like\r\n```\r\nofLoadImage(myPixels, dir.getFile(i));\r\n```\r\nand you can quickly load that image from memory. which is faster than\r\n```\r\nofLoadImage(myPixels, dir.getFile(i).getAbsolutePath());\r\n```\r\n\r\nBut this doesn't seem to work consistently (even though the slow listing is consistent)\r\nand surely isn't what we want.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1075","comments":2,"milestone":null,"number":1075,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1075","assignee":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"bug ofDirectory::open(string path) actually loads the entire dir into memory?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-15T07:54:55Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3662214,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T16:03:06Z","body":"Hello,\r\nI needed alpha channel in short length video for a recent project.\r\nIn the forum there is some old zip file for a ofxAlphaVideoPlayer that is still working, but that's OS X & windows only as it's based on QT.\r\nI'm working on linux, and I didn't find anything for GStreamer, so I modified the existing ofGstUtils and ofGstVideoPlayer.\r\nWould you mind if I do a pull request for this?\r\nI can also provide an example with a short length video using animation codec.\r\nWhat do you think?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1070","comments":6,"milestone":null,"number":1070,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1070","assignee":null,"title":"Alpha movies in GStreamer","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-14T13:02:41Z","state":"open","user":{"url":"https://api.github.com/users/manuelgeoffray","gravatar_id":"c1ec5161b69b4a990436deafb1170d64","login":"manuelgeoffray","id":808090,"avatar_url":"https://secure.gravatar.com/avatar/c1ec5161b69b4a990436deafb1170d64?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3647640,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-17T19:26:40Z","body":"Hey !\r\n\r\nMe again. Didn't find anywhere this infos. I'm currently testing the travis-ci.org service.\r\nAs many people are working on the project and as many many issue are raised, and fixed, I thought it could be great to add some test and thus the travis service.\r\n\r\nIt would avoid the problem met here :\r\nhttps://github.com/openframeworks/openFrameworks/commit/7ca7833ea1afb6bd5a6c54031e3fa688aa0c0ba8\r\nand the discussion here :\r\nhttps://github.com/openframeworks/openFrameworks/issues/804\r\nor there :\r\nhttps://github.com/openframeworks/openFrameworks/pull/921\r\n\r\nI read that :\r\n\r\n>feel free to make a unitTests folder at the root level of OF -\r\n> that is where all unitTests will go.\r\n\r\nBut didn't find them.\r\n\r\nThe travis service will permit to get the little badge we know well : \r\n[![Build Status](https://secure.travis-ci.org/soixantecircuits/openFrameworks.png?branch=master)](http://travis-ci.org/soixantecircuits/openFrameworks)\r\n\r\nAlso, why not adding some spec test, to ensure future development of features.\r\nI'm currently reading :\r\nhttp://www.squidoo.com/cplusplus-behaviour-driven-development-tools#module124841511\r\nhttp://sourceforge.net/apps/mediawiki/turtle/index.php?title=Turtle\r\n\r\nFor those who want some other nice reading :\r\n\r\nhttp://gamesfromwithin.com/exploring-the-c-unit-testing-framework-jungle\r\n\r\nThe travis test is here, currently it is a total fake, but I just proposed the idea of a test driven development\r\nhttp://travis-ci.org/#!/soixantecircuits/openFrameworks/builds/854259 ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1068","comments":10,"milestone":null,"number":1068,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1068","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Continuous integration","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-13T15:49:23Z","state":"open","user":{"url":"https://api.github.com/users/gabrielstuff","gravatar_id":"390ea42c23c2c383f973abdafa24bb07","login":"gabrielstuff","id":285033,"avatar_url":"https://secure.gravatar.com/avatar/390ea42c23c2c383f973abdafa24bb07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3631618,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-13T15:21:30Z","body":"Hi !\r\n\r\nRecently, I've been in lot of languages, from C++ to ruby, passing by the colosus of javascript and the sea of php. Dropping by various and strange framework such as the Cinder, the jQuery, the Rails, the Processing, etc ...\r\n\r\n## the situation \r\n\r\nWhat I have noticed is that a strong architecture and a really ease use of add-ons makes a framework get stronger. For instance, if we take a look at Ruby, we see that the use of gems give him a powerfull advance over his friend php. \r\n\r\n### the Rubyist\r\n\r\nThis way of thinking is getting even better with the http://gembundler.com/ [Bundler](http://gembundler.com/) friend. The gems have dependencies and a simple GemFile help to easily install all dependencies for one project.\r\n\r\n### the Cinderist\r\n\r\nFor Cinder, we get the block, as for OSX, it quiet easy and fast. Drag and drop and play/code.\r\n\r\n### the jQueryist\r\n\r\nWell, it is not frequent to have jQuery plugins depending on other jQuery plugins, but there are several way to handle dependencies on jQuery and JS.\r\n\r\n### the nodist\r\n\r\nThis lead us to http://npmjs.org/, which is really nice with dependencies.\r\nFor instance, if you tried cloud9ide, you know that you just have to make sure you get the proper package.json :\r\n\r\n```\r\n{\r\n \"name\": \"node-example\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": {\r\n \"express\": \"2.2.0\"\r\n }\r\n}\r\n```\r\n\r\nThis file ensure that everything before running the server will be installed via npm.\r\n\r\n### the ofist\r\n\r\nRight now, we just have the addons.make file, which is nice but does not do any lifting for us. We have to verify that the ofx addons has been downloaded and is installed in the right folder.\r\n\r\n- Why not creating a script that will allow to manage dependencies compilation ? \r\nI have this wonderful ofxJSONsettings, but he depends on [JSONCPP](http://jsoncpp.sourceforge.net/) and on boost, so here we will have :\r\n\r\npackage.json file in the ofxJSONsettings folder :\r\n\r\n```\r\n{\r\n \"name\": \"ofxJSONsettings\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": [{\r\n \"jsoncpp\": \"0.6.0-rc2\"\r\n \"url\":\"http://jsoncpp.svn.sourceforge.net/svnroot/jsoncpp/trunk/\"\r\n \"protocol\":\"svn\"\r\n }\r\n ]\r\n}\r\n```\r\n\r\nHum, then, we have our little bash script :\r\n\r\n`xadd -addon ofxJSONsettings`\r\n\r\nand for a project, we have to ensure that the make file run `xadd -addon ofxJSONsettings` if it does not find ofXJSONsettings.\r\n\r\nThis could lead to simplify and easify the use of plugin ! Hey, I want the new [mistubaRenderer](https://github.com/satoruhiga/ofxMitsubaRenderer) let's give a try :\r\n\r\n```\r\n{\r\n \"name\": \"ofxMitsubaRenderer\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": [{\r\n \"mitsuba\": \"0.1\"\r\n \"url\":\"https://www.mitsuba-renderer.org/hg/mitsuba-bidir\"\r\n \"protocol\":\"hg\"\r\n }\r\n ]\r\n}\r\n```\r\n\r\nWell, this would be simplify if everybody use some same pattern, and respect some convention.\r\n\r\nSo what do you guys think about that ?\r\n\r\n\r\nThank you !\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1063","comments":7,"milestone":null,"number":1063,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1063","assignee":null,"title":"Automatic installer + dependencies handler","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-13T10:44:57Z","state":"open","user":{"url":"https://api.github.com/users/gabrielstuff","gravatar_id":"390ea42c23c2c383f973abdafa24bb07","login":"gabrielstuff","id":285033,"avatar_url":"https://secure.gravatar.com/avatar/390ea42c23c2c383f973abdafa24bb07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3627067,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-12T17:58:20Z","body":"right now there is a lot of duplicated code in the vector math classes. for example, normalize() and getNormalized() have separate implementations. if we follow the pattern of always implementing things in self-modifying methods, then providing copy-returning methods as alternatives, this will reduce the amount of code and make it harder to cause bugs or behavioral discrepancies.\r\n\r\n- implementations of an algorithm should always be self-modifying\r\n- copy-returning versions should be implemented using a differently named method, internally making a copy and calling the self-modifying version on the copy.\r\n\r\ne.g. something like (note, this isn't how it's implemented right now):\r\n\r\n\tinline ofVec2f& ofVec2f::normalize() {\r\n\t\tfloat length = (float)sqrt(x*x + y*y);\r\n\t\tif( length > 0 ) {\r\n\t\t\tx /= length;\r\n\t\t\ty /= length;\r\n\t\t}\r\n\t\treturn *this;\r\n\t}\r\n\r\n\tinline ofVec2f ofVec2f::getNormalized() const {\r\n\t\tofVec2f result = *this;\r\n\t\treturn result.normalize();\r\n\t}\r\n\r\ntaken from this post https://github.com/openframeworks/openFrameworks/pull/1061#issuecomment-4455601","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1062","comments":4,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1062,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1062","assignee":null,"title":"regularize code for math addons","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-12T16:33:06Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3614231,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + diff --git a/lib/github/tests/ReplayData/PaginatedList.testIteration.txt b/lib/github/tests/ReplayData/PaginatedList.testIteration.txt new file mode 100644 index 0000000000..5426b4d6a3 --- /dev/null +++ b/lib/github/tests/ReplayData/PaginatedList.testIteration.txt @@ -0,0 +1,154 @@ +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4927'), ('content-length', '52085'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last"'), ('etag', '"5e8867ffb4e7630e852b2b231f3b9cdb"'), ('date', 'Tue, 29 May 2012 19:36:57 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-27T18:11:17Z","body":"Since more and more of the OF Core now relies on Poco (ie ofThread, etc) does OF_USING_POCO make sense anymore?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1280","comments":0,"milestone":null,"number":1280,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1280","assignee":null,"title":"deprecate OF_USING_POCO?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-27T18:03:23Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"danomatika","id":480637},"id":4772349,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-28T08:08:24Z","body":"There occurs a weir glitch when compiling the ofShader example with my HD Graphics 3000 (288 Mb) (Mac osx 10.7.4 - Mac Mini - i5 - 2.3Ghz)\n\nI was able to get rid of the glitch by replacing \"gl_FragColor = gl_Color;\" with \"gl_FragColor = 255.0;\" or any other number.\nAnybody knows a reason for the glitch / proper solution?\n\nScreenshot: http://goo.gl/Xdf74\nOpenGL capacities on different graphic cards on apple machines: http://goo.gl/FGQ2N","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1279","comments":2,"milestone":null,"number":1279,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1279","assignee":null,"title":"ofShader example with HD Graphics 3000 issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-26T19:27:56Z","state":"open","user":{"url":"https://api.github.com/users/subtiv","gravatar_id":"837cfe96365c031130a46311eb11d86a","avatar_url":"https://secure.gravatar.com/avatar/837cfe96365c031130a46311eb11d86a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"subtiv","id":1012684},"id":4767675,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-25T18:39:02Z","body":"produces an error on app exit or tex destruction.\n\n OF: OF_LOG_ERROR: trying to delete a non indexed texture, something weird is happening. Deleting anyway\n\nThis is because retain(int id) is a static function in ofTexture.cpp. So we can't retain the depthStencilTexture.\n\nThis suggest we should move the texture allocation of the depth / stencil texture to ofTexture - something which is not possible at the moment. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1277","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1277,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1277","assignee":null,"title":"ofFbo can't retain depthStencil Texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-05-25T18:37:46Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":4758608,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-22T21:26:57Z","body":"\nthe offending line is: \n\nif( speed.getValue() != preSpeed ){\n\nwhich is evaluating as true even through the slider is not touched (float equality test, etc). \n\nif we alter it to something like: \n\nif( fabs(speed.getValue() - preSpeed) > 0.0001 ){\n\nthe code runs fine. probably nicer to add a \"value changed()\" functionality to the slider object though or use EPSILON, etc. \n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1271","comments":0,"milestone":null,"number":1271,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1271","assignee":null,"title":"periodic signal example doesn't run well on windows / cb (float equality error)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-05-22T21:26:57Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":4700182,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-22T16:41:21Z","body":"There's some error that appears on linux systems running the project generator to make VS examples, where the debug and release libs for opencv get added badly to the vs project: \n\n\t%(AdditionalDependencies);opencv_highgui231d.lib;opencv_calib3d231.lib;opencv_imgproc231d.lib;opencv_haartraining_engined.lib;opencv_gpu231d.lib;opencv_flann231.lib;opencv_contrib231d.lib;opencv_video231d.lib;opencv_objdetect231d.lib;zlib.lib;opencv_core231d.lib;opencv_contrib231.lib;opencv_ml231d.lib;opencv_features2d231.lib;opencv_core231.lib;opencv_gpu231.lib;opencv_legacy231d.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_ml231.lib;opencv_imgproc231.lib;opencv_objdetect231.lib;opencv_legacy231.lib;opencv_video231.lib\n\t\t\t\t%(AdditionalLibraryDirectories);..\\..\\..\\addons\\ofxOpenCv\\libs\\opencv\\lib\\vs2010\n\nthis doesn't seem to be the case on osx or windows, which produces correct results: \n\n\t%(AdditionalDependencies);opencv_calib3d231.lib;opencv_contrib231.lib;opencv_core231.lib;opencv_features2d231.lib;opencv_flann231.lib;opencv_gpu231.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_imgproc231.lib;opencv_legacy231.lib;opencv_ml231.lib;opencv_objdetect231.lib;opencv_video231.lib;zlib.lib\n\nwould be good to look at the logic of \"visualStudioProject::addAddon()\" and see if we can fix this.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1268","comments":9,"milestone":null,"number":1268,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1268","assignee":null,"title":"project generator - bad libs for VS / opencv examples","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-05-20T21:50:24Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":4662873,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T00:43:37Z","body":"I woud love some eyes on ofFbo would be great to get it cleaned up and standardized for 0072. \nRight now there are a ton of #ifdefs and some very hard to follow logic, which makes bug fixing quite difficult especially on OPENGL_ES\n\nsee: https://gist.github.com/2711815\n\n@elliotwoods @arturoc @memotv @damiannz @ofZach @kylemcdonald \n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1263","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1263,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1263","assignee":null,"title":"ofFbo.cpp is a huge mess! ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-16T16:27:30Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":4608132,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T14:29:02Z","body":"I added a .mailmap file to the repo to correctly collate all the contributors in spite of changing nick names/email addresses. This is useful when trying to identify contributors for a changelog or similar, or when using the git logging functions like shortlog.\n\nSee the before/after situation here: https://gist.github.com/2710366\n\nI have respected privacy and only used those real names that people have already given in a git ID in the repo. Mainly this addition only associates the different email addresses to one user. @arturoc wins the prize of most used emails! :-)\nThe list is pretty complete, I only had difficulties to associate some IDs to the correct Zachs, since it was not clear for some if @ofZach or @stfj (Zach Gage) was the contributor. Those were left as-is.\n\nIf anybody has objections to their various email being united under their name, please say so and I will correct/remove the relevant entries.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1262","comments":2,"milestone":null,"number":1262,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1262","assignee":null,"title":"Add .mailmap for contributor collation","labels":[],"closed_at":null,"created_at":"2012-05-16T13:44:32Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"id":4604661,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1262.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1262","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1262.patch"}},{"updated_at":"2012-05-16T09:35:31Z","body":"Address #375.\n\nAdd setVolumef(float). Also more clearly define volume ranges (int is 0..255, float is 0..1) and more robust clamping of volume argument.\n\nThis has not been tested on Linux or Windows.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1260","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1260,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1260","assignee":null,"title":"allow float volume on ofVideoPlayer","labels":[],"closed_at":null,"created_at":"2012-05-15T17:50:22Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"damiannz","id":144366},"id":4588997,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1260.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1260","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1260.patch"}},{"updated_at":"2012-05-21T07:31:47Z","body":"This was originally posted @\"biginners\".\n\nhttp://forum.openframeworks.cc/index.php/topic,9527.msg44049.html#msg44049\n\nJoshua noble suggested me to file it as a bug on jithub\n\n\n/////////////////original messages\n\nHello.\n\nI have question about ofShortPixels and ofShortColor.\n\nIf you execute the code below , it'll draw at half way screen height even though I did set aDot at (0. screen height / 4)\n\nAnd another weird thing is it draws 20 pixels instead of 10 pixels which I set for loop for 10 times.\n\nIt only draws correctly with ofPixels and ofColor.\n\nIt doesn't work with ofFloatPixels and ofFloatColor.\n\nPlease help me out.\n\nI need to have RGB value over 255 so I can check if those values are over 255.\n\nThanks in advanced\n\nJin\n\n\n.h file\nCode:\nview plaincopy to clipboardprint?\n\n #pragma once \n #include \"ofMain.h\" \n \n class Dot { \n public: \n ofVec2f location; \n \n Dot(){ \n location.set(0,0); \n } \n \n ~Dot(){} \n }; \n \n class testApp : public ofBaseApp{ \n public: \n void setup(); \n void update(); \n void draw(); \n \n int w,h; \n \n ofTexture particleTexture; \n ofShortPixels * rgbPixels; \n \n ofShortColor& paint(ofShortColor &); \n \n Dot aDot; \n \n \n }; \n\n\n.cpp file\nCode:\nview plaincopy to clipboardprint?\n\n #include \"testApp.h\" \n //-------------------------------------------------------------- \n void testApp::setup(){ \n ofSetFrameRate(30); \n ofSetBackgroundAuto(TRUE); \n ofBackground(0, 0, 0); \n w = ofGetWidth(); \n h = ofGetHeight(); \n \n particleTexture.allocate(w,h,GL_RGB); \n rgbPixels = new ofShortPixels; \n rgbPixels->allocate(w, h, 3); \n aDot.location.set(0, h/4); \n } \n \n //-------------------------------------------------------------- \n void testApp::update(){ \n ofShortColor pixelColor; \n ofShortColor newPixelColor; \n for(int i = 0; i<10; i++){ \n pixelColor = rgbPixels->getColor(aDot.location.x+i, aDot.location.y); \n \n newPixelColor = paint(pixelColor); \n \n rgbPixels->setColor(aDot.location.x+i, aDot.location.y,newPixelColor); \n \n } \n particleTexture.loadData(* rgbPixels); \n } \n \n //-------------------------------------------------------------- \n void testApp::draw(){ \n particleTexture.draw(0, 0, w, h); \n } \n \n ofShortColor & testApp::paint(ofShortColor & _c){ \n \n _c.r += 10; \n _c.g += 2; \n _c.b += 3; \n \n _c.set(_c.r, _c.g, _c.b); \n _c.clamp(); \n \n return _c; \n } ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1257","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1257,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1257","assignee":null,"title":"ofShortPixels doesn't draw pixels correctly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-14T05:46:14Z","state":"open","user":{"url":"https://api.github.com/users/gazaebal","gravatar_id":"f9d7811bb6318fedf7e9f2fe8bfece32","avatar_url":"https://secure.gravatar.com/avatar/f9d7811bb6318fedf7e9f2fe8bfece32?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"gazaebal","id":1736190},"id":4557803,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T21:42:08Z","body":"if i'm not mistaken, the correct way of using ofMatrix4x4 in oF is `glMultMatrixf(myMatrix.getPtr())` or `glLoadMatrixf`.\nThis seems a bit uncomfortable for me.\n\nsome candidates are:\n\n```c++\nofPushMatrix(const ofMatrix4x4 &); //needs alternatives as you might not want to push at the time\nofLoadMatrix(const ofMatrix4x4 &);\nofMultMatrix(const ofMatrix4x4 &);\n\nofMatrix4x4::apply();\nofMatrix4x4::glLoadMatrix(matrixMode = OF_MATRIX_MODE_CURRENT);\n```\n\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1256","comments":5,"milestone":null,"number":1256,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1256","assignee":null,"title":"Feature ofPushMatrix(const ofMatrix4x4 &)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-13T18:20:29Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4554058,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-11T21:24:20Z","body":"\tunsigned char faceSize = 3;\n\tif(data.getNumIndices()){\n\t\tos << \"element face \" << data.getNumIndices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t} else if(data.getMode() == OF_PRIMITIVE_TRIANGLES) {\n\t\tos << \"element face \" << data.getNumVertices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t}\n\nThe facesize is being set as static as 3, but this results in strange exports...things open OK in Meshlab, but exporting to other programs with no faces seems like it won't work","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1252","comments":6,"milestone":null,"number":1252,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1252","assignee":null,"title":"0071 ply (mesh.save()) Point export is broken","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-11T19:45:53Z","state":"open","user":{"url":"https://api.github.com/users/laserpilot","gravatar_id":"07001341fe6c156dddd5b9d06d828cba","avatar_url":"https://secure.gravatar.com/avatar/07001341fe6c156dddd5b9d06d828cba?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"laserpilot","id":1041023},"id":4539985,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:33:31Z","body":"couple of minor bugfixes (absolute path wasn't being detected on second if [absolute] for windows paths)\r\nfixes unixy paths no matter what on windows","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1251","comments":8,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1251,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1251","assignee":null,"title":"Bugfix of to data path","labels":[],"closed_at":null,"created_at":"2012-05-10T06:44:20Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4507572,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1251.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1251","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1251.patch"}},{"updated_at":"2012-05-16T09:43:23Z","body":":(\r\n\r\nIt seems i'm getting double 'data/' in my paths\r\nafter a little tracking down, i found this is because ofSystemLoadDialog changes the current working directory\r\n\r\nso we could try and either fix that by popping the folder after the dialog, \r\nof for windows using something like ```GetModuleFileName``` to get the path of the current exe rather than using the current working directory\r\n\r\nI can't seem to run GetModuleFileName from ofUtils.cpp even though windows.h is included in ofConstants.h (included in ofUtils.h)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1250","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1250,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1250","assignee":null,"title":"bug: ofToDataPath broken again","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-05-10T06:35:24Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4507492,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:42:44Z","body":"'ofx TCPClient :: receiveRaw' was found in the proble.\n\nOriginal :\n\n\tint ofxTCPClient::receiveRawBytes(char * receiveBuffer, int numBytes){\n\t\t\t messageSize = TCPClient.Receive(receiveBuffer, numBytes);\t\n\t\t\t if(messageSize==0){\t\t\n\t\t\t\t\t\tclose();\t\n\t\t\t }\t\n\t\t\t return messageSize;\n\t}\n\nBut 'TCPClient.Receive (receiveBuffer, numBytes)' from '-1' may return\n\nI was modified\n\n\tstring ofxTCPClient::receiveRaw(){\n\t\t\t messageSize = TCPClient.Receive(tmpBuff, TCP_MAX_MSG_SIZE);\n\t\t\t if(messageSize==0){\n\t\t\t\t\t\tclose();\n\t\t\t }\n\t\t\t //TCPClient.Receive is return -1....\n\t\t\t else if(messageSize < 0){ \n\t\t\t\t\t\ttmpBuff[0] = 0;\n\t\t\t }\n\t\t\t else if(messageSize; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"cf9ec647fbc78faae05cb2d11598f79c"'), ('date', 'Tue, 29 May 2012 19:27:10 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-04-30T19:43:55Z","body":"On 'update', PG should respect existing custom include paths, source files, linker flags and project options (such as optimization settings).\r\n\r\nOR\r\n\r\nXcode project should read and respect `OTHER_LDFLAGS` and `HEADER_SEARCH_PATHS`, and add `OTHER_CFLAGS` from Project.xcconfig; projectGenerator should leave these settings alone unless it figures out they need to be adjusted (this is probably going to be difficult).","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1217","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1217,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1217","assignee":null,"title":"projectGenerator update doesn't respect existing project settings","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-04-24T21:03:44Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4269431,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-02T10:19:07Z","body":"Since I don't want to derail #484 further, this issue deals with the implementation of a deprecation mechanism.\r\nBased on [this](http://stackoverflow.com/questions/295120/c-mark-as-deprecated), I made an OFDEPRECATED preproc macro.\r\n\r\nQUESTION: How do I correctly #ifdef for MacOS/XCode4/llvm?\r\n\r\nCould people test this on different platforms? On linux this works. \r\n\r\n\t\ttestApp.h:\r\n\r\n\t\t#pragma once\r\n\r\n\t\t#ifdef __GNUC__\r\n\t\t// maybe __clang__ for checking against llvm/xcode4?\r\n\t\t#define OFDEPRECATED(message, func) func __attribute__ ((deprecated(message)))\r\n\t\t#elif defined(_MSC_VER)\r\n\t\t#define OFDEPRECATED(message, func) __declspec(deprecated(message)) func\r\n\t\t#else\r\n\t\t#pragma message(\"WARNING: You need to implement DEPRECATED for this compiler\")\r\n\t\t#define OFDEPRECATED(message, func) func\r\n\t\t#endif\r\n\r\n\t\tand \r\n\r\n\t\t\t\tvoid dragEvent(ofDragInfo dragInfo);\r\n\t\t\t\tvoid gotMessage(ofMessage msg);\r\n\t\t\r\n\t\t\t\tOFDEPRECATED(\"This is an old function, don't use!\", void deprecatedFunction(void));\r\n\t\t\t\tOFDEPRECATED(\"Obsolete type, use T2!\", typedef int T1);\r\n\t\t\t\ttypedef int T2;\r\n\t\t\t\tOFDEPRECATED(\"This is an old variable, don't use!\", int oldvar3);\r\n\t\t\t\t//This breaks a bit cause it's used in the constructor of testApp, so always triggers.\r\n\r\n\t\t};\r\n\t\tOFDEPRECATED(\"old class!\", class oldClass {\r\n\t\t\tpublic:\r\n\t\t\t\toldClass();\r\n\t\t\t\tvirtual ~oldClass();\r\n\t\t});\r\n\r\n\t\ttestApp.cpp:\r\n\r\n\t\tvoid testApp::setup(){\r\n\t\t\tOFDEPRECATED(\"old string. Don't use\", string oldstring);\r\n\t\t\t// Uncomment these to trigger deprecation warnings\r\n\t\t//\tdeprecatedFunction();\r\n\t\t//\tT1 t1object = 5;\r\n\t\t//\toldstring = \"bla\";\r\n\t\t//\toldvar3=5;\r\n\t\t//\toldClass bla;\r\n\t\t}\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1216","comments":11,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1216,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1216","assignee":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Implement deprecation mechanism","labels":[],"closed_at":null,"created_at":"2012-04-24T21:03:39Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4269429,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-30T19:43:14Z","body":"When using PG's 'update' functionality on apps are in paths with non-standard depths (in my case, `oF/apps/dir/subdir/subsubdir`) the OF_PATH and #include directives in the resulting Project.xcconfig don't match, which means oF projects won't compile:\r\n\r\n~~~~\r\n//THE PATH TO THE ROOT OF OUR OF PATH RELATIVE TO THIS PROJECT.\r\n//THIS NEEDS TO BE DEFINED BEFORE CoreOF.xcconfig IS INCLUDED\r\nOF_PATH = ../../../..\r\n\r\n//THIS HAS ALL THE HEADER AND LIBS FOR OF CORE\r\n#include \"../../../../../libs/openFrameworksCompiled/project/osx/CoreOF.xcconfig\"\r\n~~~~\r\n\r\nNote extra `../` in the `#include` path.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1215","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1215,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1215","assignee":null,"title":"projectGenerator sets incorrect path in Project.xcconfig","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-04-24T20:59:57Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4269359,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-22T23:56:33Z","body":"i'm teaching a workshop right now and i feel like it's ridiculous that i need to explain pointers just to access video :)\r\n\r\nlet's add this!","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1202","comments":3,"milestone":null,"number":1202,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1202","assignee":null,"title":"ofVideoPlayer etc needs ofColor access","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-22T18:42:58Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4231092,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-29T17:34:24Z","body":"DO NOT PULL YET!\r\n\r\nHey all\r\n\r\nHere's the 'off-axis camera' setup we worked on at ScreenLab last weekend.\r\nIt allows you to:\r\n\r\n* Set lens offset on a camera\r\n* Calculate the camera parameters based on a 'view portal' defined by 3 points (top left, bottom left, bottom right)\r\n\r\nCurrently the changes involve editing ofBaseRenderer (and therefore all other renderers) to support lensOffset parameter (default 0,0). We could remove this since ofCamera doesn't actually use ofSetupScreenPerspective\r\n\r\nSo let's have a quick chat about what needs chaning to make this core friendly and then probably pull after 0071 release?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1201","comments":9,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1201,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1201","assignee":null,"title":"Feature provocation pull request: ofCamera lens offset","labels":[],"closed_at":null,"created_at":"2012-04-22T15:55:29Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4230131,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1201.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1201","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1201.patch"}},{"updated_at":"2012-05-14T01:22:17Z","body":"I'm investigating the way to draw bezier curves / nurbs etc. with shaders, here is a list a links and information I found that can improve render times with OF. Any way I must admit I'm new to openGL & shaders so maybe someone can take this to implement maybe an add-on or maybe to added to the core.\r\n\r\n**Resolution Independent Curve Rendering using Programmable Graphics Hardware**\r\nhttp://research.microsoft.com/en-us/um/people/cloop/loopblinn05.pdf\r\n\r\n**Resolution independent GPU accelerated Curve & Font rendering**\r\n**GPU based Resolution Independent Font & Curve Rendering – initial Release**\r\nhttp://jausoft.com/blog/2011/04/01/resolution-independent-gpu-accelerated-curve-font-rendering/\r\nhttp://ramisantina.com/blog/?p=73\r\nhttp://vimeo.com/21810192\r\nhttp://jogamp.org/doc/gpunurbs2011/p70-santina.pdf\r\n\r\n**Curvy blues**\r\nhttp://www.mdk.org.pl/2007/10/27/curvy-blues\r\n\r\n**Vector drawing: OpenGL shaders and cairo & vector hardware tessellation**\r\nhttp://www.mdk.org.pl/2007/8/6/vector-drawing-opengl-shaders-and-cairo\r\n\r\n**ShivaVG & Random Access Rendering of Animated Vector Graphics**\r\nhttp://ivanleben.blogspot.com.es/2007/07/shivavg-open-source-ansi-c-openvg.html\r\nhttp://www.youtube.com/watch?v=mD8X-e5-sY4\r\nhttp://www.youtube.com/watch?v=U4USCfwORUg\r\nhttp://andrejas-atelier.com/ivan/IvanLebenHonsThesis.pdf\r\n\r\n**RAVG**\r\nhttp://research.microsoft.com/en-us/um/people/hoppe/proj/ravg/\r\n\r\n**NV Path Rendering Videos (seams only with nvidia)**\r\nhttp://developer.nvidia.com/nv-path-rendering-videos\r\n\r\n**Vector drawing: OpenGL polygon tessellation**\r\nhttp://www.mdk.org.pl/2007/8/16/vector-drawing-opengl-polygon-tessellation\r\nhttp://zrusin.blogspot.com.es/2006/07/hardware-accelerated-polygon-rendering.html\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1190","comments":8,"milestone":null,"number":1190,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1190","assignee":null,"title":"Bezier Shaders & Vector openGL rendering","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-2D","name":"section-2D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-20T09:23:00Z","state":"open","user":{"url":"https://api.github.com/users/microbians","gravatar_id":"98c91e60903b83c0a022ee70cca9ca21","login":"microbians","id":1662136,"avatar_url":"https://secure.gravatar.com/avatar/98c91e60903b83c0a022ee70cca9ca21?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4207350,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:41:20Z","body":"ofSetCurveResolution is not changing the resolution using ofBezier nor ofBezierVertex (tested with ofScale is more easy to see the bug)\r\n\r\n ofFill();\r\n ofSetHexColor(0xFF9933);\r\n ofBeginShape();\r\n ofVertex(x0,y0);\r\n ofBezierVertex(x1,y1,x2,y2,x3,y3);\r\n ofEndShape();\r\n\r\nall works fine when using ofPath directly:\r\n\r\n ofPath curve;\r\n curve.setFillHexColor(0xFF000);\r\n curve.setCurveResolution(120);\r\n curve.moveTo(x0, y0);\r\n curve.bezierTo(x1,y1,x2,y2,x3,y3);\r\n curve.draw();\r\n\r\nmore: http://forum.openframeworks.cc/index.php/topic,9596.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1189","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1189,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1189","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofSetCurveResolution + ofBezierVertex bug","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-04-20T08:51:51Z","state":"open","user":{"url":"https://api.github.com/users/microbians","gravatar_id":"98c91e60903b83c0a022ee70cca9ca21","login":"microbians","id":1662136,"avatar_url":"https://secure.gravatar.com/avatar/98c91e60903b83c0a022ee70cca9ca21?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4206982,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-01T04:10:23Z","body":"If you set up an ofFbo as follows...\r\n\r\n```cpp\r\n ofFbo::Settings s;\r\n s.width = 400;\r\n s.height = 400;\r\n s.textureTarget = GL_TEXTURE_2D;\r\n s.useDepth = true;\r\n s.depthAsTexture = true;\r\n s.dethInternalFormat = GL_DEPTH_COMPONENT24;\r\n```\r\n\r\n...then the colour texture's dimensions are set to be the next POTs up but the depth texture's dimensions don't seem to be. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1186","comments":2,"milestone":null,"number":1186,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1186","assignee":null,"title":"ofFbo depthBufferTex can be inconsistent with colour texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-18T15:08:32Z","state":"open","user":{"url":"https://api.github.com/users/neilmendoza","gravatar_id":"3e46b12547e7bac19eb982bc512b19c4","login":"neilmendoza","id":818571,"avatar_url":"https://secure.gravatar.com/avatar/3e46b12547e7bac19eb982bc512b19c4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4174070,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:44:27Z","body":"As mentioned here: http://forum.openframeworks.cc/index.php?topic=9107.0\r\nOpenGLES2 not working. It is always falls back to ES1. I tested it only on iPad2 with iOS 5.0.1.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1178","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1178,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1178","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"OpenGLES2 not working","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-04-16T11:19:36Z","state":"open","user":{"url":"https://api.github.com/users/erinnovations","gravatar_id":"29639bbeb3afdde8fb3c7e273e5e43c6","login":"erinnovations","id":253455,"avatar_url":"https://secure.gravatar.com/avatar/29639bbeb3afdde8fb3c7e273e5e43c6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4132608,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-14T13:45:55Z","body":"in ofTexture::loadData we are doing:\r\n\r\n\r\n\t//------------------------ likely, we are uploading continuous data\r\n\tGLint prevAlignment;\r\n\tglGetIntegerv(GL_UNPACK_ALIGNMENT, &prevAlignment);\r\n\tglPixelStorei(GL_UNPACK_ALIGNMENT, 1);\r\n\r\nany reason for this? leaving the default works too. i've been working with a huge video and the transfer rates on some cards were super slow with ofTexture::loadData. even glDrawPixels was faster, i've finally used pbo's but later looking at ofTexture discovered this lines and i suspect that it could be the reason for loadData being slower, haven't tested it yet though.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1175","comments":0,"milestone":null,"number":1175,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1175","assignee":null,"title":"GL_UNPACK_ALIGNMENT 1 in ofTexture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-14T13:45:42Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4117762,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:39:22Z","body":"one returns the result (dot) the other performs in place (cross), i.e. overrides the contents\r\nThe two definitions are inconsistent\r\npropose rename `ofVec3f::dot` to become `ofVec3f::getDotted` in line with `ofVec3f::getCrossed`","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1174","comments":9,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1174,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1174","assignee":null,"title":"bug : inconsistent API for ofVec3f::dot and ofVec3f::cross","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-13T17:09:38Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4108582,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-14T04:20:36Z","body":"If you pass a string containing non-ascii characters to ofToHex(), the non-ascii characters (with character codes above 127) will be output as ffffxxxx (it depends on the exact character value and the size of the int type on the platform you are compiling for).\r\nThe problem is due to an incorrect cast in the ostringstream operation inside the loop.\r\nInstead of directly casting the (signed) char from the input character to an unsigned int, the input character must first be cast to an unsigned char.\r\nIn other words, instead of:\r\n``` out << setfill('0') << setw(2) << hex << (unsigned int) value[i];```\r\nit should be:\r\n``` out << setfill('0') << setw(2) << hex << (unsigned int) ((unsigned char)value[i]);```\r\nor maybe even:\r\n``` out << setfill('0') << setw(2) << hex << static_cast(static_cast(value[i]));```\r\nif you prefer C++ style casts over C style casts. :)\r\n\r\nHTH\r\n/Jesper","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1173","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1173,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1173","assignee":null,"title":"ofToHex(string) is wrong for non-ascii input","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-13T14:42:30Z","state":"open","user":{"url":"https://api.github.com/users/pappis","gravatar_id":"fbf3d56c96cf5b891056530066549692","login":"pappis","id":1640543,"avatar_url":"https://secure.gravatar.com/avatar/fbf3d56c96cf5b891056530066549692?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4104336,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-12T10:09:42Z","body":"if I call ofBeginSaveScreenAsPDF using ofEasyCam or the ofCamera, the pdf doesn't have the perspective of the camera. There's a parameter b3d to ofBeginSaveScreenAsPDF which I interpret to be \"render taking into account 3d transforms\", but it doesn't seem to have any effect.\r\n\r\nmore on the forum\r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,9542.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1171","comments":0,"milestone":null,"number":1171,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1171","assignee":null,"title":"ofBeginSaveScreenAsPDF ignores 3d transformations","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-12T10:09:42Z","state":"open","user":{"url":"https://api.github.com/users/jesusgollonet","gravatar_id":"5008d5295e9bc2636313c7b50ed5981d","login":"jesusgollonet","id":31100,"avatar_url":"https://secure.gravatar.com/avatar/5008d5295e9bc2636313c7b50ed5981d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4081188,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-13T14:54:18Z","body":"if I have `ofEvent boolEvent` and i try to call `ofNotifyEvent( boolEvent, true )` i get a `no matching function` error as the compiler cannot coerce `true` to a `bool &`.\r\n\r\nto solve this, instead of this:\r\n\r\n~~~~\r\nofEvent boolEvent;\r\n...\r\nofNotifyEvent( boolEvent, true );\r\n~~~~\r\n\r\ni need to write this:\r\n\r\n~~~~\r\nofEvent boolEvent;\r\n...\r\nbool myBool = true;\r\nofNotifyEvent( boolEvent, myBool );\r\n~~~~\r\n\r\nthis is kind of annoying.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1167","comments":2,"milestone":null,"number":1167,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1167","assignee":null,"title":"ofNotifyEvent( boolEvent, true ) fails to compile","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-04-11T12:03:34Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4063456,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-11T13:21:33Z","body":"It's currently not possible to have an event without arguments\r\n\r\n`ofEvent testEvent;` -- fails to compile\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1166","comments":2,"milestone":null,"number":1166,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1166","assignee":null,"title":"ofEvent lacks simple, argument-free use case","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-04-11T12:00:19Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4063417,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-21T15:41:01Z","body":"It's currently not possible to write `ofLogError( \"serial\", \"error %i connecting to serial\", serialError )`. \r\n\r\nThere should be `ofLogError( string module, string format, ... )` methods as with normal ofLog.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1165","comments":6,"milestone":null,"number":1165,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1165","assignee":null,"title":"ofLogError, ofLogWarning lack format, ... args","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-04-11T11:56:33Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4063366,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-10T16:47:19Z","body":"change `allocate(_w, _h, OF_IMAGE_COLOR);` to `allocate(_w, _h, OF_IMAGE_COLOR_ALPHA);` (via reza on irc)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1152","comments":4,"milestone":null,"number":1152,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1152","assignee":null,"title":"grabScreen in ofImage fails on Android","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-04-09T17:15:21Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4032047,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-29T14:46:40Z","body":"the module name is no longer printed if it's coming from OF itself.\r\n\r\ninstead of the constant name, a human-readable string is printed.\r\n\r\nexample output from project generator: http://pastebin.com/raw.php?i=0dp938Jx","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1151","comments":6,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1151,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1151","assignee":null,"title":"shorten + simplify ofLog output","labels":[],"closed_at":null,"created_at":"2012-04-08T21:13:14Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4023525,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1151.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1151","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1151.patch"}},{"updated_at":"2012-04-17T14:47:36Z","body":"\r\nWorking on the project generator, which has a fair amount of logging, I'm concerned about how much space we loose on each line: \r\n\r\n OF: OF_LOG_NOTICE:\r\n\r\nit's about 15-20 characters or so, pretty significant where each line is 80, so alot more wrapping happens then I'd like, making the results less cleaner or organized. \r\n\r\nI propose we alter \r\n\r\n string ofGetLogLevelName(ofLogLevel level){\r\n switch(level){\r\n case OF_LOG_VERBOSE:\r\n return \"OF_LOG_VERBOSE\";\r\n break;\r\n case OF_LOG_NOTICE:\r\n return \"OF_LOG_NOTICE\";\r\n break;\r\n case OF_LOG_WARNING:\r\n return \"OF_LOG_WARNING\";\r\n break;\r\n case OF_LOG_ERROR:\r\n return \"OF_LOG_ERROR\";\r\n break;\r\n case OF_LOG_FATAL_ERROR:\r\n return \"OF_LOG_FATAL_ERROR\";\r\n break;\r\n case OF_LOG_SILENT:\r\n return \"OF_LOG_SILENT\";\r\n break;\r\n default:\r\n return \"\";\r\n }\r\n }\r\n\r\nso that we can have something like : \r\n\r\n (of:notice) \r\n (of:verbose) \r\n (of:error) \r\n\r\nor something smaller and if we loose the all caps, maybe less threatening :)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1150","comments":4,"milestone":null,"number":1150,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1150","assignee":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"propose shortening ofLog console message length","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-04-08T20:32:49Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4023305,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-07T15:00:32Z","body":"Hey all\r\n\r\nA few sections of the repo need some love to put them in line with the project generator:\r\n\r\n1. Readme's\r\n2. Rogue old project generators\r\n3. Document complementing tools\r\n\r\n# Readme\r\n\r\nThe readme's in the root of the repo need some love\r\nnone of them mention project generator \r\n\r\ni feel like each should be a description of how to get to a working project generator on each of the respective platforms\r\n\r\nalso note:\r\n* .vs2010 is missing\r\n* readme.txt repeats information from the other readme's (i.e. it's a list of platform specific instructions)\r\ni think this should be perhaps a little description of oF and a few tips on how to get started\r\n\r\n# Rogue old 'project generators' / documenting complementary tools for project generator\r\n\r\nHere's things I can find in the repo which don't make sense to me at the moment:\r\n\r\n* `openFrameworks\\scripts\\????\\compileAllExamples.bat`\r\n** is this supposed to be run (optionally) after the project generator?\r\n** why is the project template within this folder?\r\n* `openFrameworks\\scripts\\????\\createProjects.py` \r\n** if this isn't supposed to be used anymore, lets delete it immediately (we can always recover in emergencies)\r\n\r\nand the 'other' folder in the root.. perhaps never took off?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1146","comments":0,"milestone":null,"number":1146,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1146","assignee":null,"title":"Document Project Generator / clean out old tools","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"closed_at":null,"created_at":"2012-04-07T14:43:53Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4015514,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-07T19:49:31Z","body":"When attempting to render a mesh to a PDF the ofCairoRender does not output a filled mesh, thus the PDF output looks empty. \r\n\r\nIf you open the file in illustrator you'll see the paths, there but with no stroke or fill. \r\n\r\nWhen I dug into the issue a bit further I realized that Cairo isn't capable of rendering shapes with per vertex colors easily...\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1145","comments":3,"milestone":null,"number":1145,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1145","assignee":null,"title":"ofCairoRenderer ofMesh doesn't render properly to PDF","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-04-06T22:02:01Z","state":"open","user":{"url":"https://api.github.com/users/rezaali","gravatar_id":"548374013b9c6e50ebbd2294e12d4f31","login":"rezaali","id":555207,"avatar_url":"https://secure.gravatar.com/avatar/548374013b9c6e50ebbd2294e12d4f31?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4010494,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-01T04:21:01Z","body":"When using the ofColor subtraction operator, negative results are clamped to positive values instead of 0. Values are circulating between 0 and 255, which could be useful for hue in HSV but in most cases (R, G, B..) is not what I would expect.\r\n\r\n ofColor a(10, 40, 80);\r\n ofColor b(20, 5, 30);\r\n ofColor c = (a-b); // I get: (246, 45, 50), I would expect: (0, 45, 50)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1144","comments":9,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1144,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1144","assignee":null,"title":"ofColor subtraction and negative values","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-04-06T07:56:44Z","state":"open","user":{"url":"https://api.github.com/users/jembezmamy","gravatar_id":"69a23dc9914cb6bc3202c50e15eabba0","login":"jembezmamy","id":720354,"avatar_url":"https://secure.gravatar.com/avatar/69a23dc9914cb6bc3202c50e15eabba0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4001148,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-04T12:07:24Z","body":"When using the dragEvent ofDragInfo I always get the following error message:\r\n\r\nwarning: Could not find object file \"/Users/theo/Documents/CODE/__OPENFRAMEWORKS/gitOF/openFrameworks/apps/devApps/macDragDropExample/buildGlutFrameworkHackedWindowLevel10.4/libForeground.a(macx_foreground.o)\" - no debug information available for \"/Users/mcast/Code/GLUT-ToPost/macx_foreground.m\".\r\n\r\nIt doesn't seem to hurt my code but is a bit annoying, especially early on when I wasn't sure if it had anything to do with compile failings. Not a big issue obviously, but it might confuse some other newbie's also.\r\n\r\n(OF 0.07 - Xcode 4.2.1 - OS X 10.7.3 - macbook pro) ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1138","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1138,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1138","assignee":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"benign error message","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2012-04-04T11:05:57Z","state":"open","user":{"url":"https://api.github.com/users/davideo71","gravatar_id":"42c3c1acbdb4a998d8096b49745219cd","login":"davideo71","id":1611385,"avatar_url":"https://secure.gravatar.com/avatar/42c3c1acbdb4a998d8096b49745219cd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3968742,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-03T17:37:10Z","body":"theo's #1133 made me think about ways that i use noise regularly that might also be abstracted.\r\n\r\ni would also like to see versions of noise that return multidimensional results. normally i do something like:\r\n\r\n\tofVec2 a(ofSignedNoise(t, 0), ofSignedNoise(0, t)); // 1D -> 2D\r\n\tofVec2 b(ofSignedNoise(x, 0), ofSignedNoise(0, y)); // 2D -> 2D\r\n\tofVec3 c(ofSignedNoise(t, 0, 0), ofSignedNoise(0, t, 0), ofSignedNoise(0, 0, t)); // 1D -> 3D\r\n\tofVec3 d(ofSignedNoise(x, 0, 0), ofSignedNoise(0, y, 0), ofSignedNoise(0, 0, (x + y) / 2)); // 2D -> 3D\r\n\r\nand it would be good to spend some time making sure these are really good ways of doing it, then implement them inside some functions like `ofSignedNoise2()` and `ofSignedNoise3()` (for example).","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1134","comments":2,"milestone":null,"number":1134,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1134","assignee":null,"title":"multidimensional noise output","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-04-01T16:44:55Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3917377,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-01T17:48:12Z","body":"ie: the equivalent of doing \r\n\r\nfloat rate = 0.02 + ofNoise(ofGetElapsedTimeF() * 0.02, 100.0) * 0.015;\r\nfloat value = ofSignedNoise( rate, x, y ); \r\n\r\nas one function. \r\n\r\nalso see kyle's #1134 for other noise utils. \r\n\r\nI find myself needing this quite often for more natural random motion where the rate of change is variable. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1133","comments":0,"milestone":null,"number":1133,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1133","assignee":null,"title":"ofNoise and ofSignedNoise with 2nd order control for rate.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-04-01T15:45:11Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3917018,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=3 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4941'), ('content-length', '55518'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"414a5c156bbe219ad21d164052b40f6c"'), ('date', 'Tue, 29 May 2012 19:27:11 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-04-02T02:05:52Z","body":"This is a feature discussion issue for what string features we should add to of.\r\nofZach mentioned some regexp ones from P5 match matchAll\r\nWould be great to get some eyes on this.\r\n\r\nOne approach would be a static class or namespace.\r\nThe idea would be we could include a variety of handy functions that would be useful for people not wanting to get into regexp\r\n\r\n\tofString::contains(str, \"apple\") //returns bool\r\n\tofString::starts(str, \"The\") //returns bool\r\n\tofString::ends(str, \".\") //returns bool\r\n\tofString::count(str, \"apples\") //count how many times apples appears in the \r\n\tofString::join(myVectorStr, \", \"); //this is currently ofJoinString\r\n\tofString::split(someText, \".\"); //this is currently ofSplitString\r\n\tofString::split(someHtml, \"<\", \">\"); //this is the same but returns a vector of things between the start and end delims\r\n\tofString::limit(someText, 200); //limit the text to 200 characters. optional arg to add ... to the end.\r\n\r\nQuestions:\r\n- Should we mirror P5 with match and matchAll or should we indicate that regexp is required? ie regexMatch regexMatchAll ?\r\n- Other string utils we could add?\r\n- Should it be ofStringUtils:: or ofString:: ?\r\n- Something to do a split and then return a vector of float int etc?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1132","comments":6,"milestone":null,"number":1132,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1132","assignee":null,"title":"ofStringUtils:: feature discussion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-31T17:52:48Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":3911629,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-05-27T17:40:30Z","body":"This is a feature discussion issue for what should be added / changed to ofTTF.\r\nWould be great to get some eyes on this from @vtron @ofzach @arturoc and anyone with thoughts on the matter.\r\n\r\nTextAreas:\r\n- Fit text to a box\r\n- Handle overflow ( ie either truncate or resize box height )\r\n- non ragged options\r\n- could textAreas work with both ofTTF and ofDrawBitmapString ? abstract text formatting?\r\n\r\nAlignment:\r\n- Left align a string\r\n- Right align\r\n- Center\r\n- Top align \r\n- Base align \r\n\r\nSpacing:\r\n- Kerning\r\n- Leading / line height\r\n\r\nLoading:\r\n- Allow for loading a font up to a max size for drawing at different sizes. \r\n- Allow for selection and loading of specific sizes within one object. ie: myFont.setCurrentSize(12); \r\n- Font family's / sets ? Bold, Italic etc? \r\n\r\nDrawing:\r\n- Allow for drawing font at different sizes. Scale font as needed. \r\n\r\nFormatting:\r\n- Could we somehow allow a string to have different colors, sizes. Right now it is a pain to change colors or sizes. \r\n- would this be replicating basic html or another approach? maybe better as an addon?\r\n\r\nInfo:\r\n- Ability to get the x and y position of the nth character in the string? useful maybe for cursor or selection?\r\n\r\n**Update:**\r\n-Underline\r\n-Render rect behind text ( a la what @kylemcdonald added to ofDrawBitmapString)\r\n-Scale type to fit a rect + keep aspect ratio\r\n-Crazy: text along a path :) ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1131","comments":25,"milestone":null,"number":1131,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1131","assignee":null,"title":"ofTTF feature discussion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-31T17:36:25Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":3911537,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-31T14:44:01Z","body":"Agree on a common format for a header in the contributed example files.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1130","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1130,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1130","assignee":null,"title":"Define standard header for examples.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-31T14:44:01Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":3910580,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-04-24T02:12:05Z","body":"\r\n\r\nXcode 4 mangles OF projects pretty badly in the following ways: \r\n\r\na) it autogenerates schemes, and \"openframeworks\" appears as the chosen scheme\r\nb) it sometimes chooses the wrong SDK for OF -- is there a way to set that?\r\nc) debug and release are not really clear, part of this is a shift in xcode -- but it's much harder to see how things are compiled and to set release or debug\r\nd) I still had issues with OF needing to be recompiled all the time. I tried to fix this, but we should make sure it's done right. the of lib was appearing red even though it had been built, etc. \r\n\r\nI've tried to fix some of this in detroit with the PG, but I don't think it's the right way to do it. Overall, it would be great to have projects work smoothly on xcode 4...\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1129","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1129,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1129","assignee":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"title":"xcode 4 issues: scheme, auto-generation of schemes, rebuilding OF, sdk, etc","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-03-31T14:39:04Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":3910555,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-31T16:32:04Z","body":"When deprecating api's (e.g. ofEvents, ofVertexes), perhaps we could help automate the changes through simple scripts to update api\r\nSuggest sticking to something close to how uncrustify scripts are run (and perhaps there are tools like uncrustify but specifically for this task)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1128","comments":1,"milestone":null,"number":1128,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1128","assignee":null,"title":"upgrade scripts","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-31T14:38:19Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":3910549,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-04-09T16:47:04Z","body":"It would be nice (and useful for testing the PG) if the PG would get an option to clean the examples folders of all generated files. \r\n\r\nCurrently, the quickest option is to delete the examples folder on disk, and do `git reset --hard HEAD`.\r\n\r\nAs before, milestoned for 0071, but feel free to push back.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1126","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1126,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1126","assignee":null,"title":"PG Feature request: Clean examples folder","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-03-30T12:51:30Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":3897090,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-29T16:47:29Z","body":"there is a hard limit of 100 files when using drag & drop into an of app. not sure if it's an of issue, but am curious if it comes from the hacked glutDragEventFunc ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1124","comments":0,"milestone":null,"number":1124,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1124","assignee":null,"title":"void dragEvent(ofDragInfo dragInfo) limited to 100 files in osx lion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-29T16:47:29Z","state":"open","user":{"url":"https://api.github.com/users/jesusgollonet","gravatar_id":"5008d5295e9bc2636313c7b50ed5981d","login":"jesusgollonet","avatar_url":"https://secure.gravatar.com/avatar/5008d5295e9bc2636313c7b50ed5981d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":31100},"id":3883598,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-29T13:05:25Z","body":"When loading a file with ofImage, ofSoundPlayer , ofVideoPlayer-file or any ofFile it would be nice to be able to know if the file changed since it was loaded.\r\n\r\nIts very simple to implement with Poco::File->getLastModified() and it would be very nice if this would be built into the above classes.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1120","comments":2,"milestone":null,"number":1120,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1120","assignee":null,"title":"isFileChanged() for ofImage, ofVideoPlayer, ofSoundPlayer and ofFile","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-28T16:21:45Z","state":"open","user":{"url":"https://api.github.com/users/imanhp","gravatar_id":"7398ab0bbd07832d0289f26773e65077","login":"imanhp","avatar_url":"https://secure.gravatar.com/avatar/7398ab0bbd07832d0289f26773e65077?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1216228},"id":3856005,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-30T12:19:59Z","body":"paths.make should be in the repo as an example on how to set it up correctly, but changes (i.e. paths unique to every user) to it should be ignored cause everyone will have a different version in their computers so we don't want personal changes to appear in git status.\r\n\r\nI think the best way to solve this is to rename it to paths.make.default, keep this in the repo, maybe with `` instead of your path, and have people make their own paths.make from that one. We track changes to paths.make.default and ignore paths.make. \r\n\r\nThis will probably also need a mechanism in the makefile to fail gracefully and remind the user, if his customized paths.make is missing.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1118","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1118,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1118","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"Default paths.make for Android","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/android","name":"android","color":"2bc4ad"}],"closed_at":null,"created_at":"2012-03-28T12:19:39Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":3850655,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-04-18T17:13:36Z","body":"Once ofSetFrameRate() is called, I can't find a way to retrieve it. I think implementing a ofGetDesiredFrameRate() in ofAppRunner would make sense, also adding getDesiredFrameRate() to ofAppBaseWindow and all subclasses, where the actual value is stored. \r\n\r\nThis can be useful to compare the desired frame rate with actual frame rate and react accordingly if required.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1117","comments":0,"milestone":null,"number":1117,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1117","assignee":null,"title":"Can't retrieve desired frame rate once set","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-27T11:48:00Z","state":"open","user":{"url":"https://api.github.com/users/armadillu","gravatar_id":"b87a82d7c86161432ee6388c7cbd5e2c","login":"armadillu","avatar_url":"https://secure.gravatar.com/avatar/b87a82d7c86161432ee6388c7cbd5e2c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":167057},"id":3825582,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-26T22:27:14Z","body":"https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/gl/ofVbo.cpp#L343\r\n\r\nIndices should be specified as GL_ELEMENT_ARRAY_BUFFER unless I am mistaken.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1116","comments":5,"milestone":null,"number":1116,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1116","assignee":null,"title":"ofVBO updateIndexData incorrect buffer type.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-26T18:26:05Z","state":"open","user":{"url":"https://api.github.com/users/vade","gravatar_id":"37aca214d4875cd90af9d67072c82642","login":"vade","avatar_url":"https://secure.gravatar.com/avatar/37aca214d4875cd90af9d67072c82642?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":65011},"id":3813852,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-26T18:45:51Z","body":"The default optimization settings for debug builds in example XCode projects is set to Fastest,Smallest thus making debugging very difficult, is there a specific reason for this?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1115","comments":3,"milestone":null,"number":1115,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1115","assignee":null,"title":"optimization level in xcode projects","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"}],"closed_at":null,"created_at":"2012-03-26T17:05:14Z","state":"open","user":{"url":"https://api.github.com/users/colormotor","gravatar_id":"2548dbd6a86902ed5260b5f76710b83c","login":"colormotor","avatar_url":"https://secure.gravatar.com/avatar/2548dbd6a86902ed5260b5f76710b83c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1239872},"id":3812318,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-31T15:31:31Z","body":"I had some problems because of macro definitions in ofArduino.h overriding an enum in a a class of my codebase ( SHIFT )\r\nIt's not exactly a bug! but I would suggest using enums or const int instead of the macros to avoid any conflicts\r\nI solved the problem by modifying \r\n#define SHIFT 0x05 \r\ninto \r\nconst int SHIFT = 0x05;\r\n\r\nanother solution could be using enumerations as \r\nenum\r\n{\r\n ...\r\n SHIFT = 0x05,\r\n etc...\r\n};\r\n\r\nI believe this would not break any of the existing code\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1114","comments":1,"milestone":null,"number":1114,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1114","assignee":{"url":"https://api.github.com/users/joshuajnoble","gravatar_id":"10960ba0f305803a1cdc7cd6188d643b","login":"joshuajnoble","avatar_url":"https://secure.gravatar.com/avatar/10960ba0f305803a1cdc7cd6188d643b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":237423},"title":"macros in ofArduino","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-03-26T17:02:21Z","state":"open","user":{"url":"https://api.github.com/users/colormotor","gravatar_id":"2548dbd6a86902ed5260b5f76710b83c","login":"colormotor","avatar_url":"https://secure.gravatar.com/avatar/2548dbd6a86902ed5260b5f76710b83c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1239872},"id":3812275,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-27T14:56:56Z","body":"Hello.\r\n\r\nI'm trying to run camera frame grabing in OSX Lion.\r\nSimple ofVideoGrabber doesn't work - even if I link it with 10.6 SDK (and 10.6 is deployment target) I receive crash in initialization of ofVideoGrabber. Details are the same as in http://forum.openframeworks.cc/index.php/topic,6776.0.html\r\n\r\nI tryed QtKitMovieGrabberExample. It had some problems in compilation - texture property was not synthesized, I wrote this property and compilation run well.\r\nBut linking is fault. All I receive form linker is:\r\n\r\n*Ld bin/movieGrabberExampleDebug.app/Contents/MacOS/movieGrabberExampleDebug normal i386\r\n cd /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample\r\n setenv MACOSX_DEPLOYMENT_TARGET 10.6\r\n /Developer/usr/bin/clang++ -arch i386 -isysroot /Developer/SDKs/MacOSX10.6.sdk -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freeimage/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/GLee/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/rtAudio/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/fmodex/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freetype/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx -F/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin -F/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/glut/lib/osx -filelist /Users/yltastep/Library/Developer/Xcode/DerivedData/movieGrabberExample-aftkspwrgtotrteyzaplfbqzeasd/Build/Intermediates/movieGrabberExample.build/Debug/movieGrabberExample.build/Objects-normal/i386/movieGrabberExampleDebug.LinkFileList -mmacosx-version-min=10.6 -dead_strip ../../../libs/poco/lib/osx/PocoFoundation.a ../../../libs/poco/lib/osx/PocoNet.a ../../../libs/poco/lib/osx/PocoXML.a ../../../libs/poco/lib/osx/PocoUtil.a ../../../libs/tess2/lib/osx/tess2.a ../../../libs/glew/lib/osx/glew.a ../../../libs/cairo/lib/osx/cairo-script-interpreter.a ../../../libs/cairo/lib/osx/cairo.a ../../../libs/cairo/lib/osx/pixman-1.a ../../../libs/fmodex/lib/osx/libfmodex.dylib ../../../libs/rtAudio/lib/osx/rtAudio.a /Users/yltastep/Documents/XCode/openframeworks/libs/openFrameworksCompiled/lib/osx/openFrameworksDebug.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/GLee/lib/osx/GLee.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/rtAudio/lib/osx/rtAudio.a -framework AGL -framework ApplicationServices -framework AudioToolbox -framework Carbon -framework CoreAudio -framework CoreFoundation -framework CoreServices -framework OpenGL -framework QuickTime -framework AppKit -framework Cocoa -framework IOKit -framework GLUT /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoFoundation.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoNet.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoUtil.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoXML.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freetype/lib/osx/freetype.a -lfmodex /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx/freeimage.a -framework QTKit -framework Quartz -framework QuartzCore -o /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin/movieGrabberExampleDebug.app/Contents/MacOS/movieGrabberExampleDebug*\r\n\r\n**Command /Developer/usr/bin/clang++ failed with exit code 1**\r\n\r\nSo no explanation of problem.\r\n\r\nIs somebody ran this example successfully ?\r\nAnd what I'm doing wrong ?\r\n\r\nThanks in advance !\r\n\r\nWith regards.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1112","comments":9,"milestone":null,"number":1112,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1112","assignee":null,"title":"Issue with QtKitMovieGrabberExample in apps/devapps","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2012-03-26T12:11:44Z","state":"open","user":{"url":"https://api.github.com/users/OlexandrStepanov","gravatar_id":"aa6e2a475cab75513c9cc435b28eef31","login":"OlexandrStepanov","avatar_url":"https://secure.gravatar.com/avatar/aa6e2a475cab75513c9cc435b28eef31?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":971079},"id":3807459,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-25T20:07:16Z","body":"Todd's example has this code a few times in it by hand, but I'm thinking it's so simple it could be added along side ofSplitString() and would be really useful ? for sure, more string utility functions are helpful, and for basic text parsing, this is great. Poco gives us this for free, so it doesn't seem like a huge stretch to think of something like this, plus find and replace, etc. Would make the regex example much shorter. \r\n\r\np5 has something similar, if that's a helpful argument: \r\n\r\nhttp://processing.org/reference/matchAll_.html\r\n\r\n\r\n\tvector < string > ofxRegex::getMatchedStrings (string contents, string regex );\r\n\tvector < string > ofxRegex::getMatchedStrings (string contents, string regex ){\r\n \r\n\t vector < string > results;\r\n\t RegularExpression regEx(regex);\r\n\t RegularExpression::Match match;\r\n \r\n\t while(regEx.match(contents, match) != 0) {\r\n \r\n\t // we get the sub string from the content\r\n\t // and then trim the content so that we\r\n\t // can continue to search \r\n\t string foundStr = contents.substr(match.offset, match.length);\r\n\t contents = contents.substr(match.offset + match.length);\r\n \r\n\t results.push_back(foundStr);\r\n \r\n\t }\r\n\t return results;\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1110","comments":1,"milestone":null,"number":1110,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1110","assignee":null,"title":"add a simple regex function like ofSplitString()","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-03-25T18:56:37Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":3799872,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-25T18:50:13Z","body":"code to recreate: \r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::setup(){\r\n system(\"pwd;\");\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::update(){\r\n system(\"pwd;\");\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::draw(){\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::keyPressed(int key){\r\n cout << ofToDataPath(\"temp\") << endl;\r\n}\r\n\r\nproduces: \r\n\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n../../../data/temp\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin/emptyExampleDebug.app/Contents/MacOS\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin/emptyExampleDebug.app/Contents/MacOS\r\n\r\nthis is because the code that fixes OSX paths isn't called until you call ofToDataPath(). a good fix I think would be to set ofDataPathRoot (which happens in ofToDataPath) somewhere early in ofRunApp(). Or should it happen even earlier?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1109","comments":3,"milestone":null,"number":1109,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1109","assignee":null,"title":"mac paths don't seem right until you call \"ofToDataPath()\"","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2012-03-25T18:18:28Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":3799653,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-04-09T13:06:18Z","body":"easycam behaves as expected when inited but as soon as I change it's target it begins to behave strangely.\r\nthere's this imaginary sphere that we are rotating (it's diameter is min (viewport.width, vieport.height)), when the mouse is dragged from inside to outside of it the rotation just jumps to a \"random\" rotation. \r\nas well when you have a the camera rotated more than 180º in some axis the \"trackball\" doesn't behave as expected. yet this behavior is not seen when the target hasn't been changed.\r\n\r\nDoes any one know what's going on?\r\n\r\nI just came across this but I haven't gone deeply into how easycam handles the mouse to rotate. \r\nI'll do so ASAP. If someone can give me any clues I'll really apreciate it.\r\n\r\nregards!","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1108","comments":7,"milestone":null,"number":1108,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1108","assignee":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"title":"easyCam weird behavior when target changed","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-25T00:01:54Z","state":"open","user":{"url":"https://api.github.com/users/roymacdonald","gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","login":"roymacdonald","avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":974878},"id":3795495,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-04-09T16:47:18Z","body":"It would be great if the PG could also generate projects/examples for usage with Eclipse, i.e. just the makefile related files, no CB or other project files.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1103","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1103,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1103","assignee":null,"title":"PG feature request: Generate makefile-only projects","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-03-21T21:43:34Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":3754055,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-19T16:18:43Z","body":"whenever i call ofLog beneath openmp i have to wrap it in ```#pragma omp critical (ofLog)``` otherwise i get a crash\r\ni found adding the line above \r\nhttps://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/utils/ofLog.cpp#L84\r\nworks pretty well\r\n\r\nany objections to having it in there?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1098","comments":3,"milestone":null,"number":1098,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1098","assignee":null,"title":"feature / bug - #pragma omp critical(ofLog)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-19T14:04:51Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":3710293,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-15T20:34:17Z","body":"I'm finding that `ofDirector::listDir, open` are extremely slow\r\nit seems that it's actually loading the entire dir contents into memory\r\n\r\nit's possible to then do something like\r\n```\r\nofLoadImage(myPixels, dir.getFile(i));\r\n```\r\nand you can quickly load that image from memory. which is faster than\r\n```\r\nofLoadImage(myPixels, dir.getFile(i).getAbsolutePath());\r\n```\r\n\r\nBut this doesn't seem to work consistently (even though the slow listing is consistent)\r\nand surely isn't what we want.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1075","comments":2,"milestone":null,"number":1075,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1075","assignee":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"title":"bug ofDirectory::open(string path) actually loads the entire dir into memory?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-15T07:54:55Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":3662214,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-14T16:03:06Z","body":"Hello,\r\nI needed alpha channel in short length video for a recent project.\r\nIn the forum there is some old zip file for a ofxAlphaVideoPlayer that is still working, but that's OS X & windows only as it's based on QT.\r\nI'm working on linux, and I didn't find anything for GStreamer, so I modified the existing ofGstUtils and ofGstVideoPlayer.\r\nWould you mind if I do a pull request for this?\r\nI can also provide an example with a short length video using animation codec.\r\nWhat do you think?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1070","comments":6,"milestone":null,"number":1070,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1070","assignee":null,"title":"Alpha movies in GStreamer","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-14T13:02:41Z","state":"open","user":{"url":"https://api.github.com/users/manuelgeoffray","gravatar_id":"c1ec5161b69b4a990436deafb1170d64","login":"manuelgeoffray","avatar_url":"https://secure.gravatar.com/avatar/c1ec5161b69b4a990436deafb1170d64?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":808090},"id":3647640,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-17T19:26:40Z","body":"Hey !\r\n\r\nMe again. Didn't find anywhere this infos. I'm currently testing the travis-ci.org service.\r\nAs many people are working on the project and as many many issue are raised, and fixed, I thought it could be great to add some test and thus the travis service.\r\n\r\nIt would avoid the problem met here :\r\nhttps://github.com/openframeworks/openFrameworks/commit/7ca7833ea1afb6bd5a6c54031e3fa688aa0c0ba8\r\nand the discussion here :\r\nhttps://github.com/openframeworks/openFrameworks/issues/804\r\nor there :\r\nhttps://github.com/openframeworks/openFrameworks/pull/921\r\n\r\nI read that :\r\n\r\n>feel free to make a unitTests folder at the root level of OF -\r\n> that is where all unitTests will go.\r\n\r\nBut didn't find them.\r\n\r\nThe travis service will permit to get the little badge we know well : \r\n[![Build Status](https://secure.travis-ci.org/soixantecircuits/openFrameworks.png?branch=master)](http://travis-ci.org/soixantecircuits/openFrameworks)\r\n\r\nAlso, why not adding some spec test, to ensure future development of features.\r\nI'm currently reading :\r\nhttp://www.squidoo.com/cplusplus-behaviour-driven-development-tools#module124841511\r\nhttp://sourceforge.net/apps/mediawiki/turtle/index.php?title=Turtle\r\n\r\nFor those who want some other nice reading :\r\n\r\nhttp://gamesfromwithin.com/exploring-the-c-unit-testing-framework-jungle\r\n\r\nThe travis test is here, currently it is a total fake, but I just proposed the idea of a test driven development\r\nhttp://travis-ci.org/#!/soixantecircuits/openFrameworks/builds/854259 ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1068","comments":10,"milestone":null,"number":1068,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1068","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"Continuous integration","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-13T15:49:23Z","state":"open","user":{"url":"https://api.github.com/users/gabrielstuff","gravatar_id":"390ea42c23c2c383f973abdafa24bb07","login":"gabrielstuff","avatar_url":"https://secure.gravatar.com/avatar/390ea42c23c2c383f973abdafa24bb07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":285033},"id":3631618,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-13T15:21:30Z","body":"Hi !\r\n\r\nRecently, I've been in lot of languages, from C++ to ruby, passing by the colosus of javascript and the sea of php. Dropping by various and strange framework such as the Cinder, the jQuery, the Rails, the Processing, etc ...\r\n\r\n## the situation \r\n\r\nWhat I have noticed is that a strong architecture and a really ease use of add-ons makes a framework get stronger. For instance, if we take a look at Ruby, we see that the use of gems give him a powerfull advance over his friend php. \r\n\r\n### the Rubyist\r\n\r\nThis way of thinking is getting even better with the http://gembundler.com/ [Bundler](http://gembundler.com/) friend. The gems have dependencies and a simple GemFile help to easily install all dependencies for one project.\r\n\r\n### the Cinderist\r\n\r\nFor Cinder, we get the block, as for OSX, it quiet easy and fast. Drag and drop and play/code.\r\n\r\n### the jQueryist\r\n\r\nWell, it is not frequent to have jQuery plugins depending on other jQuery plugins, but there are several way to handle dependencies on jQuery and JS.\r\n\r\n### the nodist\r\n\r\nThis lead us to http://npmjs.org/, which is really nice with dependencies.\r\nFor instance, if you tried cloud9ide, you know that you just have to make sure you get the proper package.json :\r\n\r\n```\r\n{\r\n \"name\": \"node-example\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": {\r\n \"express\": \"2.2.0\"\r\n }\r\n}\r\n```\r\n\r\nThis file ensure that everything before running the server will be installed via npm.\r\n\r\n### the ofist\r\n\r\nRight now, we just have the addons.make file, which is nice but does not do any lifting for us. We have to verify that the ofx addons has been downloaded and is installed in the right folder.\r\n\r\n- Why not creating a script that will allow to manage dependencies compilation ? \r\nI have this wonderful ofxJSONsettings, but he depends on [JSONCPP](http://jsoncpp.sourceforge.net/) and on boost, so here we will have :\r\n\r\npackage.json file in the ofxJSONsettings folder :\r\n\r\n```\r\n{\r\n \"name\": \"ofxJSONsettings\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": [{\r\n \"jsoncpp\": \"0.6.0-rc2\"\r\n \"url\":\"http://jsoncpp.svn.sourceforge.net/svnroot/jsoncpp/trunk/\"\r\n \"protocol\":\"svn\"\r\n }\r\n ]\r\n}\r\n```\r\n\r\nHum, then, we have our little bash script :\r\n\r\n`xadd -addon ofxJSONsettings`\r\n\r\nand for a project, we have to ensure that the make file run `xadd -addon ofxJSONsettings` if it does not find ofXJSONsettings.\r\n\r\nThis could lead to simplify and easify the use of plugin ! Hey, I want the new [mistubaRenderer](https://github.com/satoruhiga/ofxMitsubaRenderer) let's give a try :\r\n\r\n```\r\n{\r\n \"name\": \"ofxMitsubaRenderer\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": [{\r\n \"mitsuba\": \"0.1\"\r\n \"url\":\"https://www.mitsuba-renderer.org/hg/mitsuba-bidir\"\r\n \"protocol\":\"hg\"\r\n }\r\n ]\r\n}\r\n```\r\n\r\nWell, this would be simplify if everybody use some same pattern, and respect some convention.\r\n\r\nSo what do you guys think about that ?\r\n\r\n\r\nThank you !\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1063","comments":7,"milestone":null,"number":1063,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1063","assignee":null,"title":"Automatic installer + dependencies handler","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-13T10:44:57Z","state":"open","user":{"url":"https://api.github.com/users/gabrielstuff","gravatar_id":"390ea42c23c2c383f973abdafa24bb07","login":"gabrielstuff","avatar_url":"https://secure.gravatar.com/avatar/390ea42c23c2c383f973abdafa24bb07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":285033},"id":3627067,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-12T17:58:20Z","body":"right now there is a lot of duplicated code in the vector math classes. for example, normalize() and getNormalized() have separate implementations. if we follow the pattern of always implementing things in self-modifying methods, then providing copy-returning methods as alternatives, this will reduce the amount of code and make it harder to cause bugs or behavioral discrepancies.\r\n\r\n- implementations of an algorithm should always be self-modifying\r\n- copy-returning versions should be implemented using a differently named method, internally making a copy and calling the self-modifying version on the copy.\r\n\r\ne.g. something like (note, this isn't how it's implemented right now):\r\n\r\n\tinline ofVec2f& ofVec2f::normalize() {\r\n\t\tfloat length = (float)sqrt(x*x + y*y);\r\n\t\tif( length > 0 ) {\r\n\t\t\tx /= length;\r\n\t\t\ty /= length;\r\n\t\t}\r\n\t\treturn *this;\r\n\t}\r\n\r\n\tinline ofVec2f ofVec2f::getNormalized() const {\r\n\t\tofVec2f result = *this;\r\n\t\treturn result.normalize();\r\n\t}\r\n\r\ntaken from this post https://github.com/openframeworks/openFrameworks/pull/1061#issuecomment-4455601","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1062","comments":4,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1062,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1062","assignee":null,"title":"regularize code for math addons","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-12T16:33:06Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":3614231,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-13T13:07:11Z","body":"Just saw this is the documentation.\r\nVertexes is incorrect (wrong plural)\r\nVertices","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1055","comments":18,"milestone":null,"number":1055,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1055","assignee":null,"title":"ofVertexes?? ofCurveVertexes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-03-12T01:50:19Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":3605277,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=4 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4940'), ('content-length', '44623'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"7a7b635a35e21a9f69de7a09b9040837"'), ('date', 'Tue, 29 May 2012 19:27:12 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-03-10T17:52:58Z","body":"if you have:\r\n\r\n uniform float dog;\r\n float cat;\r\n\r\nand:\r\n\r\n shader.setUniform1f(\"dog\", ofGetElapsedTimef());\r\n shader.setUniform1f(\"cat\", ofGetElapsedTimef());\r\n\r\nthere is no currently no error printed to the console, and \"cat\" is mysteriously unchanging while \"dog\" is fine.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1052","comments":0,"milestone":null,"number":1052,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1052","assignee":null,"title":"ofShader should show an error when using an invalid name","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-03-10T17:52:58Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3596240,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-14T15:11:08Z","body":"ofxiPhoneScreenGrab saves with compression artifacts.\r\nfix for saving a lossless image in the below post,\r\nhttp://forum.openframeworks.cc/index.php/topic,4737.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1051","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1051,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1051","assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"title":"ofxiPhoneScreenGrab saves with compression artifacts.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-03-10T12:15:33Z","state":"open","user":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"id":3594731,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-14T15:09:09Z","body":"just wanted to kick off a discussion about cleaning up ofxiPhone folder structure.\r\nhave this up on the forum, http://forum.openframeworks.cc/index.php/topic,8955.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1050","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1050,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1050","assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"title":"clean up ofxiPhone folder structure.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-10T06:32:12Z","state":"open","user":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"id":3593619,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-29T14:55:24Z","body":"This an implementation of ofxiPhoneScreenGrab for Android","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1048","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1048,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1048","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"Adding Android screenshot feature, example to demonstrate it","labels":[],"closed_at":null,"created_at":"2012-03-10T05:31:45Z","state":"open","user":{"url":"https://api.github.com/users/bostonbusmap","avatar_url":"https://secure.gravatar.com/avatar/433032cca043cedb67180dc5109062da?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"433032cca043cedb67180dc5109062da","login":"bostonbusmap","id":863262},"id":3593430,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1048","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1048.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1048.diff"}},{"updated_at":"2012-03-12T15:31:12Z","body":"whenever I try to open a file using system dialog from OF utils or ofxFileDIalogOSX, the video is loaded correctly but it get stuck and doesn't play at all. see:\r\nhttp://forum.openframeworks.cc/index.php/topic,5233.0.html\r\nhttp://forum.openframeworks.cc/index.php/topic,6515.0.html\r\n\r\nquite a big issue IMHO","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1047","comments":8,"milestone":null,"number":1047,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1047","assignee":null,"title":"opening video files with system dialog in osx prevents them to play correctly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-09T18:54:28Z","state":"open","user":{"url":"https://api.github.com/users/hvfrancesco","avatar_url":"https://secure.gravatar.com/avatar/e02a8a3953de9d5d9ec1c7aa8d43eca4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e02a8a3953de9d5d9ec1c7aa8d43eca4","login":"hvfrancesco","id":614123},"id":3587808,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-20T16:11:54Z","body":"just a small one but would be great. \r\nmaybe even different icon for debug and release? ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1039","comments":12,"milestone":null,"number":1039,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1039","assignee":null,"title":"make icons for OF apps","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-06T17:56:58Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":3528378,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-06T15:32:44Z","body":"right now it is not clear from a visual perspective what is a button / trigger and what is a toggle. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1037","comments":1,"milestone":null,"number":1037,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1037","assignee":null,"title":"ofxGui, ofxButton should look visually different to toggle","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-05T18:06:03Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":3510933,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-10T19:29:53Z","body":"xml is one of the reasons this is currently an addon. \r\nthe original idea was to have something simple and minimal that could be in the core. \r\nalso something which could be built off of for larger gui addons ( hence ofParameter ) \r\n\r\nI see a couple of options going forward.\r\n\r\n1) swtich from xml to newline separated text files and move ofGui into core\r\nthis would be quite simple as ofParameter already has a name, value structure \r\n\r\n2) same as 1) but keep ofxGui as an addon - making it a bit simpler to add to a project \r\n2b) add ofParameter to core as it is more general purpose\r\n\r\n3) bring ofxXmlSettings into the core and bring ofGui into core.\r\n\r\n\r\nanyway I thought it would be good to get some discussion going about this.\r\nI'm especially interested in setting up ofParam and ofBaseGui in a way to make things modular and extendable. \r\n\r\nalso could be interesting to look at a way to represent a collection/group of ofParameters\r\nsome of this might be similar to some of the stuff @memo was doing with his plist style system. \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1036","comments":10,"milestone":null,"number":1036,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1036","assignee":null,"title":"ofxGui -> ofGui - how/should we bring into core?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-05T16:56:26Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":3509628,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-12T12:39:10Z","body":"If it finds .vert, .frag (and .geom?) files in the data/ folder, the project generator should make a new folder, in the project file, next to (or inside) src called data/ and add the files to it. (data/ so that beginners can find the files in Finder)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1034","comments":3,"milestone":null,"number":1034,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1034","assignee":null,"title":"projectGenerator ignores shader .vert and .frag files","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-03-04T11:19:04Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":3495602,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-06T15:06:00Z","body":"I talked to Arturo about this, but I want to make sure it's known. When you call ofLogSetLogLevel with a module string, that string is added to a map used to check the module's log level ... but right now that string is never removed.\r\n\r\nIf someone creates a large amount module names the map could grow arbitrarily large over time. The thought so far is that no one would make enough module names for it to be a problem.\r\n\r\nFor instance, using the [proposed ofThread rewrite](https://github.com/openframeworks/openFrameworks/pull/1031), each thread creates a new module name when it sets itself to verbose and, in the case of spawning lots of verbose worker threads, the map will grow.\r\n\r\nMy proposed solution would be to remove the module name from the map when the level for that module is set back to OF_LOG_NOTICE and/or to the current log level.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1033","comments":11,"milestone":null,"number":1033,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1033","assignee":null,"title":"ofSetLogLevel(module, level) adds to map but dosen't remove","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-04T10:54:12Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3495503,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-14T15:11:08Z","body":"this change c50648e29199a3f61eae05f6ceb350a97ab275d7 caused the problem. i'm not sure why adding explicit cases for handling loadData for ofShortPixels and ofFloatPixels would do this. to see the proof, run devApps/AdvancedImageLoading","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1029","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1029,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1029","assignee":null,"title":"display of short + float textures are broken","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-03-03T19:04:59Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3491627,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-10T06:54:25Z","body":"I've just encountered a real 'wall meets head' bug, aka 'why is my camera image black??'\r\n\r\nwell it turns out that actually, ofSaveImage doesn't save mono images\r\nit just saves out black pixels\r\n\r\ntesting on Windows, VS2010.\r\nAnybody else getting this?\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1028","comments":5,"milestone":null,"number":1028,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1028","assignee":null,"title":"ofSaveImage / ofImage::saveImage() problem with OF_IMAGE_GRAYSCALE / OF_PIXELS_MONO","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-03-03T12:23:06Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3489266,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-16T09:25:13Z","body":"The Android example is basically a copy of the existing 3dModelBuilder example with some code changes to work with OpenGL ES","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1024","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1024,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1024","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"Fixing 3DModelBuilder to work with OpenGL ES, added Android example for it","labels":[],"closed_at":null,"created_at":"2012-03-02T16:55:29Z","state":"open","user":{"url":"https://api.github.com/users/bostonbusmap","avatar_url":"https://secure.gravatar.com/avatar/433032cca043cedb67180dc5109062da?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"433032cca043cedb67180dc5109062da","login":"bostonbusmap","id":863262},"id":3479768,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1024","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1024.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1024.diff"}},{"updated_at":"2012-03-30T16:34:06Z","body":"Continuation of http://forum.openframeworks.cc/index.php/topic,9095.msg42378.html#new\r\n\r\nNOTE: Things may have changed as the projects I'm using are all created using the older creation tools.\r\nCan somebody up to date please check?\r\n\r\nCurrently XCode's default project setting is /O2 for debug projects\r\nwhilst Visual Studio's is /O0\r\n\r\n/O0 generally makes the most sense for debug mode as it allows for effective program flow and variable tracking (because with /O2, lines of code and variables are commonly optimised away).\r\n\r\nIf we are worried that this will leave default users in a default 'slower state' then perhaps we could make release the default? Then people could be aware that they are selecting debug when they want to actually do some debugging?\r\nBut this may have other issues (such as some libraries might not perform as many checks as otherwise?)\r\n\r\nit might be worth making users more aware of the 2 options anyway, and then start using them consistently","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1022","comments":12,"milestone":null,"number":1022,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1022","assignee":null,"title":"Optimisation consistency","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-02T13:25:15Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3476540,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-01T19:42:09Z","body":"currently if MSAA is enabled, COLOR_ATTACHMENT[ 0 -> nSamples]_EXT are bound for MS blitting, which could overwrite your texture color attachments without notifying you [ i.e. setSamples(4); setNumTextures(4) ]. There may be some solution where numSamples*numTextures = maxAttachments, allowing for multisampled internal textures, but at the very least we should warn/notify that samples and textures won't play so nicely together, or try to allocate samples/textures in the remaining attachments and notify on overflow.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1019","comments":0,"milestone":null,"number":1019,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1019","assignee":null,"title":"ofFbo needs consideration as far as MRT + MSAA","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-01T19:42:09Z","state":"open","user":{"url":"https://api.github.com/users/kpasko","avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","login":"kpasko","id":167271},"id":3462226,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-01T04:33:36Z","body":"there's a block in ofConstants which reads like:\r\n\r\n```c++\r\n#ifndef PI\r\n\t#define PI 3.14159265358979323846\r\n#endif\r\n\r\n#ifndef TWO_PI\r\n\t#define TWO_PI 6.28318530717958647693\r\n#endif\r\n\r\n#ifndef M_TWO_PI\r\n\t#define M_TWO_PI 6.28318530717958647693\r\n#endif\r\n\r\n#ifndef FOUR_PI\r\n\t#define FOUR_PI 12.56637061435917295385\r\n#endif\r\n\r\n#ifndef HALF_PI\r\n\t#define HALF_PI 1.57079632679489661923\r\n#endif\r\n\r\n#ifndef DEG_TO_RAD\r\n\t#define DEG_TO_RAD (PI/180.0)\r\n#endif\r\n\r\n#ifndef RAD_TO_DEG\r\n\t#define RAD_TO_DEG (180.0/PI)\r\n#endif\r\n\r\n#ifndef MIN\r\n\t#define MIN(x,y) (((x) < (y)) ? (x) : (y))\r\n#endif\r\n\r\n#ifndef MAX\r\n\t#define MAX(x,y) (((x) > (y)) ? (x) : (y))\r\n#endif\r\n\r\n#ifndef CLAMP\r\n\t#define CLAMP(val,min,max) (MAX(MIN(val,max),min))\r\n#endif\r\n\r\n#ifndef ABS\r\n\t#define ABS(x) (((x) < 0) ? -(x) : (x))\r\n#endif\r\n```\r\n\r\nthe problem is i've got this in another header file:\r\n\r\n```c++\r\n// macro-like inline functions\r\n\r\ntemplate\r\ninline T SQR(const T a) {return a*a;}\r\n\r\ntemplate\r\ninline const T &MAX(const T &a, const T &b)\r\n {return b > a ? (b) : (a);}\r\n\r\ninline float MAX(const double &a, const float &b)\r\n {return b > a ? (b) : float(a);}\r\n\r\ninline float MAX(const float &a, const double &b)\r\n {return b > a ? float(b) : (a);}\r\n\r\ntemplate\r\ninline const T &MIN(const T &a, const T &b)\r\n {return b < a ? (b) : (a);}\r\n\r\ninline float MIN(const double &a, const float &b)\r\n {return b < a ? (b) : float(a);}\r\n\r\ninline float MIN(const float &a, const double &b)\r\n {return b < a ? float(b) : (a);}\r\n\r\ntemplate\r\ninline T SIGN(const T &a, const T &b)\r\n\t{return b >= 0 ? (a >= 0 ? a : -a) : (a >= 0 ? -a : a);}\r\n\r\ninline float SIGN(const float &a, const double &b)\r\n\t{return b >= 0 ? (a >= 0 ? a : -a) : (a >= 0 ? -a : a);}\r\n\r\ninline float SIGN(const double &a, const float &b)\r\n\t{return (float)(b >= 0 ? (a >= 0 ? a : -a) : (a >= 0 ? -a : a));}\r\n```\r\n\r\nAnd ofConstants is included in almost every oF file\r\n\r\ni'd suggest moving to inline functions and presume that compiler optimisations makes these 2 options equivalent in terms of performance, but that inline wins out for compatability","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1007","comments":10,"milestone":null,"number":1007,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1007","assignee":null,"title":"bug #defines in ofConstants conflict with other libraries","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-29T15:31:18Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3438233,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-01T13:02:37Z","body":"Propose the following functions:\r\n\r\n```c++\r\nofVec2f ofRandom(const ofVec2f&);\r\nofVec3f ofRandom(const ofVec3f&);\r\nofVec2f ofRandom(const ofVec2f& range1, const ofVec2f& range2);\r\nofVec3f ofRandom(const ofVec3f& range1, const ofVec3f& range2);\r\n```\r\n\r\nalso lots of other candidates for this, e.g. `ofClamp`, `ofMap`, etc\r\nsome clever templating possible?\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1005","comments":12,"milestone":null,"number":1005,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1005","assignee":null,"title":"feature ofRandom(ofVec3f) ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-29T06:32:03Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3432042,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-18T08:47:08Z","body":"I have a simple app that plays video files. I try to route (under windows) its output using Jack and Vitual Audio Cable but none can access it. I am just using the basic functionality of ofVideoPlayer, this is the class that deals with the video playing\r\n\r\n\r\n\t#include \"oscVPlayer.h\"\r\n\t#include \"ofMain.h\"\r\n\r\n\r\n\r\n\toscVPlayer::oscVPlayer()\r\n\t{\r\n\t\t\treset();\r\n\t}\r\n\r\n\tvoid oscVPlayer::reset()\r\n\t{ //defaults to fullscreen\r\n\t\t\tw = NULL;\r\n\t\t\th = NULL;\r\n\t\t\tx = 0;\r\n\t\t\ty = 0;\r\n\t\t\tdonereported = false;\r\n\t\t\tloopflag = OF_LOOP_NONE;\r\n\t\t\t\r\n\t\t\tcol.r = 0;\r\n\t\t\tcol.g = 0;\r\n\t\t\tcol.b = 0;\r\n\t\t\tcol.a = 255;\r\n\r\n\t\t\tif (isLoaded())\r\n\t\t{\r\n\t\t\t\t\tsetFrame(0);\r\n\t\t\t\t\tsetUseTexture(1);\r\n\t\t\t\t\tsetPaused(0);\r\n\t\t\t\t\tsetLoopState(OF_LOOP_NORMAL);\r\n\t\t\t\t\tsetSpeed(1);\r\n\t\t\t\t\tsetVolume(255);\r\n\t\t\t\t\tstop();\r\n\t\t}\r\n\t}\r\n\r\n\r\n\tvoid oscVPlayer::setUpVideo(string movie)\r\n\t{\r\n\t\t\tif (movie != \"none\")\r\n\t\t\t{\r\n\t\t\t\t\tif ( loadMovie(movie) )\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\t\tprintf(\"movie loaded\\n\");\r\n\t\t\t\t\t\t\tofVideoPlayer::update();\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\t\tprintf(\"CANNOT load movie\\n\");\r\n\t\t\t\t\t}\r\n\t\t\t}\r\n\t\t\telse\r\n\t\t\t{\r\n\t\t\t\t\tprintf(\"movie parameter is none, cannot load it\\n\");\r\n\t\t\t}\r\n\t}\r\n\r\n\r\n\r\n\r\n\tvoid oscVPlayer::setLoop()\r\n\t{\r\n\t\t\tsetLoopState(loopflag); // go back to your state. otherwise play resets it to loop ON\r\n\t}\r\n\r\n\r\n\r\n\r\n\tvoid oscVPlayer::resetSize()\r\n\t{\r\n\t\t\tw = NULL;\r\n\t\t\th = NULL;\r\n\t}\r\n\r\n\r\n\tvoid oscVPlayer::draw()\r\n\t{\r\n\t\tif (isLoaded())\r\n\t\t{\r\n\t\t\t if (col.a < 255) ofEnableAlphaBlending();\r\n\t\t\t\tofSetColor(col.r,col.g,col.b, col.a);\r\n\t\t\t\tofVideoPlayer::update();\r\n\t\t\t\tif (w==NULL && h==NULL)\r\n\t\t\t\t{\r\n\t\t\t\t\t\tofVideoPlayer::draw(x, y);\r\n\t\t\t\t}\r\n\t\t\t\telse\r\n\t\t\t\t{\r\n\t\t\t\t\t\t\tofVideoPlayer::draw(x, y, w, h);\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (col.a < 255) ofDisableAlphaBlending(); \r\n\t\t}\r\n\t}\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1001","comments":2,"milestone":null,"number":1001,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1001","assignee":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"title":"OF app sound out not available from Jack","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-02-27T14:59:34Z","state":"open","user":{"url":"https://api.github.com/users/enrike","avatar_url":"https://secure.gravatar.com/avatar/cc2adbc6d91bf2288f34f60a547a82cd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"cc2adbc6d91bf2288f34f60a547a82cd","login":"enrike","id":710785},"id":3401755,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-29T14:42:36Z","body":"// scissor\r\nvoid ofBeginScissor(ofRectangle &r);\r\nvoid ofBeginScissor(ofPoint &p, float w, float h);\r\nvoid ofBeginScissor(float x, float y, float w, float h);\r\nvoid ofEndScissor();\r\n\r\n\r\nthere is a problem with ofFBO due to the flip. I do not think that there is a way around it sooo just scale -1\r\n\r\nalso: \r\nextra ; removed \r\nlibs/openFrameworks/utils/ofUtils.cpp","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/993","comments":11,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":993,"html_url":"https://github.com/openframeworks/openFrameworks/issues/993","assignee":null,"title":"Of scissors","labels":[],"closed_at":null,"created_at":"2012-02-26T21:35:55Z","state":"open","user":{"url":"https://api.github.com/users/vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","id":149997},"id":3393466,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/993","patch_url":"https://github.com/openframeworks/openFrameworks/pull/993.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/993.diff"}},{"updated_at":"2012-02-25T20:25:00Z","body":"i think this is because ofDrawBitmapString draws the quads in the wrong orientation. but i'm guessing it works in FBOs... so if we switch the order it will stop working in FBOs.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/987","comments":0,"milestone":null,"number":987,"html_url":"https://github.com/openframeworks/openFrameworks/issues/987","assignee":null,"title":"GL_CULL_FACE breaks ofDrawBitmapString()","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-02-25T20:25:00Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3387163,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-22T23:34:17Z","body":"Some logging messages don't really tell where they were triggered. Someone needs to go through them and add information as to what module triggered the message. \r\n@danomatika has already volunteered to do this some time.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/985","comments":16,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":985,"html_url":"https://github.com/openframeworks/openFrameworks/issues/985","assignee":null,"title":"Make logging messages more informative","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-02-25T19:41:58Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3386914,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-11T18:31:55Z","body":"There's a lot of logging printfs in the core addons. These should be replaced by appropriate ofLog calls.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/984","comments":5,"milestone":null,"number":984,"html_url":"https://github.com/openframeworks/openFrameworks/issues/984","assignee":null,"title":"Replace printf() occurences by ofLog() in the core addons","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-02-25T19:36:51Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3386889,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-02-27T13:35:34Z","body":"`ofVec2f` has a function called `average` which takes an array of `ofVec2f` and calculates the centroid. it is not static, rather it overwrites its own `x` and `y` with the average. \r\n\r\nthis is a little weird. `average` should be static, or at least be *returning* the average rather than assigning to self.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/976","comments":4,"milestone":null,"number":976,"html_url":"https://github.com/openframeworks/openFrameworks/issues/976","assignee":null,"title":"ofVec2f::average has unexpected/clumsy behaviour","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-25T03:45:02Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":3382990,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-02-25T02:47:26Z","body":"Dummy issue to ensure that the 0076 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/972","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/10","number":10,"title":"0076 Release","due_on":"2012-10-29T07:00:00Z","closed_issues":0,"open_issues":1,"created_at":"2012-02-25T02:46:26Z","state":"open","description":"","id":88838},"number":972,"html_url":"https://github.com/openframeworks/openFrameworks/issues/972","assignee":null,"title":"0076 Release tracking issue","labels":[],"closed_at":null,"created_at":"2012-02-25T02:47:26Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3382766,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-02-25T02:47:37Z","body":"Dummy issue to ensure that the 0075 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/971","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/9","number":9,"title":"0075 Release","due_on":"2012-09-24T07:00:00Z","closed_issues":0,"open_issues":1,"created_at":"2012-02-25T02:46:15Z","state":"open","description":"","id":88837},"number":971,"html_url":"https://github.com/openframeworks/openFrameworks/issues/971","assignee":null,"title":"0075 Release tracking issue","labels":[],"closed_at":null,"created_at":"2012-02-25T02:47:05Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3382764,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=5 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4939'), ('content-length', '39838'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"a7bfe812cbaa85fbb708d70f4d883fac"'), ('date', 'Tue, 29 May 2012 19:27:13 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-02-25T01:36:58Z","body":"Dummy issue to ensure that the 0080 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/970","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","number":8,"closed_issues":0,"title":"0080 Release","due_on":"2013-01-01T08:00:00Z","open_issues":3,"created_at":"2012-02-25T01:34:28Z","state":"open","description":"","id":88731},"number":970,"html_url":"https://github.com/openframeworks/openFrameworks/issues/970","assignee":null,"title":"0080 Release tracking issue","labels":[],"closed_at":null,"created_at":"2012-02-25T01:36:54Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3381982,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T01:36:37Z","body":"Dummy issue to ensure that the 0074 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/969","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/7","number":7,"closed_issues":0,"title":"0074 Release","due_on":"2012-08-27T07:00:00Z","open_issues":1,"created_at":"2012-02-25T00:41:17Z","state":"open","description":"","id":88728},"number":969,"html_url":"https://github.com/openframeworks/openFrameworks/issues/969","assignee":null,"title":"0074 Release tracking issue","labels":[],"closed_at":null,"created_at":"2012-02-25T01:36:37Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3381977,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-24T04:31:01Z","body":"right now if you try and scale/rotate/etc before calling ofBackgroundGradient, it will fail.\r\n\r\npeople generally call ofBackground at the top of draw() so it shouldn't be a huge issue... but it does make it a little 'fragile'.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/955","comments":0,"milestone":null,"number":955,"html_url":"https://github.com/openframeworks/openFrameworks/issues/955","assignee":null,"title":"ofBackgroundGradient needs to be billboarded","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-02-24T04:31:01Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3367910,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-23T19:12:08Z","body":"Hello, I get a weird error trying to compile the movieplayerexample under linux64 :\r\n\r\n> `.text._ZN11ofBaseVideoD2Ev' referenced in section `.text._ZN11ofBaseVideoD1Ev[non-virtual thunk to ofBaseVideo::~ofBaseVideo()]' of ../../../libs/openFrameworksCompiled/lib/linux64/libopenFrameworks.a(ofBaseTypes.o): defined in discarded section `.text._ZN11ofBaseVideoD2Ev[_ZN11ofBaseVideoD5Ev]' of ../../../libs/openFrameworksCompiled/lib/linux64/libopenFrameworks.a(ofBaseTypes.o)\r\n\r\nMy version of OF is 007, it used to work under 0062...\r\n\r\nWhat should I do ?\r\n\r\nThanks","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/933","comments":4,"milestone":null,"number":933,"html_url":"https://github.com/openframeworks/openFrameworks/issues/933","assignee":null,"title":"Problem with moviePlayerExample under linux64","labels":[],"closed_at":null,"created_at":"2012-02-23T15:46:06Z","state":"open","user":{"url":"https://api.github.com/users/agrosjea","avatar_url":"https://secure.gravatar.com/avatar/e52c167621119d58d03c586bb053a633?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e52c167621119d58d03c586bb053a633","login":"agrosjea","id":1466085},"id":3357855,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-23T05:13:24Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/931","comments":0,"milestone":null,"number":931,"html_url":"https://github.com/openframeworks/openFrameworks/issues/931","assignee":null,"title":"ofCamera is not aware of ofOrientation","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-02-23T05:13:24Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":3351646,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-23T05:12:47Z","body":"do we need the ofOrientation parameter in ofSetupPerspective?\r\n\r\nit applies the rotation but if ofSetOrientation hasn't been called before passing the same orientation the results are not the expected.\r\n\r\nto test it:\r\n\r\nofSetOrientation(OF_ORIENTATION_90_LEFT);\r\nofSetPerspective(ofGetWidth(), ofGetHeight(),OF_ORIENTATION_90_LEFT)\r\n\r\nworks as expected but calling only \r\n\r\nofSetPerspective(ofGetWidth(), ofGetHeight(),OF_ORIENTATION_90_LEFT)\r\n\r\napplies a weird rotation cause the values of ofGetWidth(), ofGetHeight() are still the default ones\r\n\r\nis there any case where it's useful to call setupPerspective with a different orientation that the window has?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/930","comments":0,"milestone":null,"number":930,"html_url":"https://github.com/openframeworks/openFrameworks/issues/930","assignee":null,"title":"ofSetupPerspective ofOrientation","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-23T05:12:47Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":3351643,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-23T04:19:48Z","body":"Currently ofGetLogLevel returns the global log level aka for the \"OF\" module. It would be nice to be able to get the log level for user modules via:\r\n\r\n ofLogLevel level = ofGetLogLevel(\"myLogModule\");\r\n\r\nIt would as simple as adding the module as a string variable with a default of \"OF\".\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/929","comments":0,"milestone":null,"number":929,"html_url":"https://github.com/openframeworks/openFrameworks/issues/929","assignee":null,"title":"ofGetLogLevel should also accept modules","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-02-23T04:19:48Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3351374,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-23T03:46:32Z","body":"Currently there is a ofBgColorPtr(), but maybe it's nice to have a ofGetBackground() that returns an ofColor object or a reference to one.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/928","comments":0,"milestone":null,"number":928,"html_url":"https://github.com/openframeworks/openFrameworks/issues/928","assignee":null,"title":"no ofGetBackground()","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-23T03:46:32Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3351170,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-22T19:12:56Z","body":"ofGetViewportWidth/Height returns 0 is called in an object destructor, while ofGetWidth/Height do not. Could the ofGetViewport size be set to the ofGetWidth/Height size instead of 0 be default?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/926","comments":0,"milestone":null,"number":926,"html_url":"https://github.com/openframeworks/openFrameworks/issues/926","assignee":null,"title":"ofGetViewportWidth/Height returns 0 at startup","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-22T19:12:56Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3341020,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-22T00:28:08Z","body":"I noticed a few things when working with ofImage:\r\n\r\n* ofImage has a type variable for the image type but this is an int, as opposed to the ofImageType enum, so it's annoying to force convert ...\r\n* the width, height, & bpp variables are public, they should be protected with getters/setters\r\n* there isn't a getBytesPerPixel, you have to get the pixel reference then call getBytesPerPixel ...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/925","comments":0,"milestone":null,"number":925,"html_url":"https://github.com/openframeworks/openFrameworks/issues/925","assignee":null,"title":"ofImage has type as int, public vars, & missing getBPP, etc","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-22T00:28:08Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3324501,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-29T14:41:17Z","body":"As requested in https://github.com/openframeworks/openFrameworks/pull/794 I've branched openframeworks:develop into my own branch and applied the fixes required to build openFrameworks for Android with MinGW on the windows platform.\r\n\r\nThe instructions on how to compile are still valid (except for the part of patching):\r\nhttp://www.multigesture.net/articles/how-to-setup-openframeworks-for-android-on-windows/\r\n\r\nNote 1: You will need to run:\r\nandroid.bat update project --target android-8 --path C:\\openFrameworks\\addons\\ofxAndroid\\ofAndroidLib\r\n\r\nThis updates the project files for ofAndroidLib project. I didn't included those because those are user specific (they contain the path to the sdk)\r\n\r\nNote 2: d3ddf8e1 \r\nI only added this commit in order to make the examples build properly. Someone still needs to fix the proper implementation.\r\n\r\nNote 3: 7a9cf0ba\r\nWhile working on NodeBeat, we found out that not all devices are using /mnt/sdcard as their external storage location. In some cases the sdcard is located somewhere else (\"Environment.getExternalStorageDirectory()\" doesnt always return the correct location). This commit fixes this problem by checking several locations as reported on multiple Stackoverflow threads. More info about this issue can be found in the commit description.\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/922","comments":13,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":922,"html_url":"https://github.com/openframeworks/openFrameworks/issues/922","assignee":null,"title":"Windows compatibility patches and External storage location fixes.","labels":[],"closed_at":null,"created_at":"2012-02-19T23:30:24Z","state":"open","user":{"url":"https://api.github.com/users/falcon4ever","avatar_url":"https://secure.gravatar.com/avatar/4a503abeaa3d803e55e99093fbf1505d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"4a503abeaa3d803e55e99093fbf1505d","login":"falcon4ever","id":480019},"id":3288053,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/922.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/922","patch_url":"https://github.com/openframeworks/openFrameworks/pull/922.patch"}},{"updated_at":"2012-02-16T09:39:46Z","body":"What about having our own transform stack , in order to:\r\n-avoid to recompute globalTransformMatrix in each ofNode\r\n-could use it when rendering with OpenGL ES 2.0 shaders , which do not support predefined matrix values as world (modelview), worldProjection , or world inverseTranspose (for normals)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/920","comments":0,"milestone":null,"number":920,"html_url":"https://github.com/openframeworks/openFrameworks/issues/920","assignee":null,"title":"Transform stack","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-16T09:39:46Z","state":"open","user":{"url":"https://api.github.com/users/AugusteBonnin","avatar_url":"https://secure.gravatar.com/avatar/cbf7aa7c655d3652170984c9aa497a4c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"cbf7aa7c655d3652170984c9aa497a4c","login":"AugusteBonnin","id":1442658},"id":3248309,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-16T09:31:24Z","body":"There is an easy-to-correct error in ofNode::transformGL:\r\nIt should call loadMatrix with globalTransformMatrix as parameter (with a void restoreGL), or pushMatrix then multMatrix with localTransformMatrix (with a restoreGL that pops the previously pushed matrix),\r\nNOT push then mult with global. The bug appears as soon as you have got more than one level of depth in your node tree. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/919","comments":0,"milestone":null,"number":919,"html_url":"https://github.com/openframeworks/openFrameworks/issues/919","assignee":null,"title":"Error in ofNode::transformGL","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-02-16T09:31:24Z","state":"open","user":{"url":"https://api.github.com/users/AugusteBonnin","avatar_url":"https://secure.gravatar.com/avatar/cbf7aa7c655d3652170984c9aa497a4c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"cbf7aa7c655d3652170984c9aa497a4c","login":"AugusteBonnin","id":1442658},"id":3248230,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-08T10:15:31Z","body":"vs2010 does not include stdint.h support:\r\n\r\nhttp://stackoverflow.com/questions/126279/c99-stdint-h-header-and-ms-visual-studio\r\n\r\nwhich causes addon bugs like this:\r\n\r\nhttps://github.com/openframeworks/openFrameworks/issues/559\r\nhttps://github.com/kylemcdonald/ofxCv/issues/28\r\n\r\neven though these bugs aren't in the core, i think OF is designed to make it easy for people to write cross-platform, cross-compiler code. so i propose that we add an explicit declaration of the missing types for vs2010.\r\n\r\nthis isn't really something i'm worried about directly since i don't use vs2010, but i know people like elliot do. and it would be cleaner to add it once to the core than to add it once for every addon that is broken.\r\n\r\nthe solution would probably look like: take dan's code from the above issue, and move it from ofxOsc into the core.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/917","comments":5,"milestone":null,"number":917,"html_url":"https://github.com/openframeworks/openFrameworks/issues/917","assignee":null,"title":"add global stdint.h support?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"}],"closed_at":null,"created_at":"2012-02-15T02:38:17Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3229504,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-12T14:55:20Z","body":"to match ofGetWidth(), ofGetHeight()\r\n\r\ni.e. for ofGetMouseX() / ofGetWidth()","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/916","comments":1,"milestone":null,"number":916,"html_url":"https://github.com/openframeworks/openFrameworks/issues/916","assignee":null,"title":"ofGetMouseX() and ofGetMouseY() should return float","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-14T05:17:47Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3214174,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-13T08:16:08Z","body":"I had downloaded the 007 version, when I run of_preRelease_v007_linux/scripts/linux/debian/install_codeblocks.sh it install codeblocks without error, but when I run preRelease_v007_linux/scripts/linux/debian/install_dependencies.sh I get this error\r\n\r\ncompiling object for ../../../openFrameworks/graphics/ofGraphics.cpp\r\nmkdir -p obj/Debug/openFrameworks/graphics\r\ng++ -g3 -Wall -fexceptions -I../../../FreeImage/include -I../../../assimp/include -I../../../assimp/include/Compiler -I../../../cairo/include -I../../../cairo/include/cairo -I../../../cairo/include/pixman-1 -I../../../cairo/include/libpng15 -I../../../fmodex/include -I../../../freetype/include -I../../../freetype/include/freetype2 -I../../../freetype/include/freetype2/freetype -I../../../freetype/include/freetype2/freetype/config -I../../../freetype/include/freetype2/freetype/internal -I../../../freetype/include/freetype2/freetype/internal/services -I../../../glew/include -I../../../glew/include/GL -I../../../kiss/include -I../../../portaudio/include -I../../../rtAudio/include -I../../../tess2/include -I../../../poco/include -I../../../glu/include -I../../../openFrameworks/ -I../../../openFrameworks/3d -I../../../openFrameworks/math -I../../../openFrameworks/types -I../../../openFrameworks/graphics -I../../../openFrameworks/utils -I../../../openFrameworks/app -I../../../openFrameworks/video -I../../../openFrameworks/events -I../../../openFrameworks/communication -I../../../openFrameworks/gl -I../../../openFrameworks/sound -pthread -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -DOF_USING_GTK -MMD -MP -MFobj/Debug/openFrameworks/graphics/ofGraphics.d -MTobj/Debug/openFrameworks/graphics/ofGraphics.d -o obj/Debug/openFrameworks/graphics/ofGraphics.o -c ../../../openFrameworks/graphics/ofGraphics.cpp\r\n../../../openFrameworks/graphics/ofGraphics.cpp:37:22: warning: GL/glut.h: No such file or directory\r\n../../../openFrameworks/graphics/ofGraphics.cpp: In function ‘void ofSphere(float)’:\r\n../../../openFrameworks/graphics/ofGraphics.cpp:889: error: ‘glutSolidSphere’ was not declared in this scope\r\n../../../openFrameworks/graphics/ofGraphics.cpp:891: error: ‘glutWireSphere’ was not declared in this scope\r\nmake: *** [obj/Debug/openFrameworks/graphics/ofGraphics.o] Error 1\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/915","comments":2,"milestone":null,"number":915,"html_url":"https://github.com/openframeworks/openFrameworks/issues/915","assignee":null,"title":"problems installing dependencies in debian 6.0.4","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2012-02-13T05:45:01Z","state":"open","user":{"url":"https://api.github.com/users/atomsfat","avatar_url":"https://secure.gravatar.com/avatar/f732e5a8b77f8e4ed8fadc2c71916236?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"f732e5a8b77f8e4ed8fadc2c71916236","login":"atomsfat","id":140008},"id":3196145,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-12T04:41:26Z","body":"We have ofSetDataPathRoot() .... it makes sense to have a Getter as well. Basically I wanted the absolute path to the root data folder.\r\n\r\nI managed to fake this by calling ofToDataPath(\".\",true) but this seems a little counter-intuitive.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/914","comments":0,"milestone":null,"number":914,"html_url":"https://github.com/openframeworks/openFrameworks/issues/914","assignee":null,"title":"Add ofGetDataPathRoot","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-12T04:41:26Z","state":"open","user":{"url":"https://api.github.com/users/pierrep","avatar_url":"https://secure.gravatar.com/avatar/be11c9de8242e7aef0446eceaa289e01?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"be11c9de8242e7aef0446eceaa289e01","login":"pierrep","id":392160},"id":3189189,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-12T14:56:56Z","body":"it would be amazing if ofBeginShape()/ofEndShape() and ofPath supported tex coords (maybe ofTexCoord() and addTexCoord()).\r\n\r\nthis would allow for drawing arbitrary subsections of an image, or for creating an ofMesh that is texture mapped by an image.\r\n\r\nprocessing handles this with extra arguments to vertex() http://processing.org/reference/texture_.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/909","comments":3,"milestone":null,"number":909,"html_url":"https://github.com/openframeworks/openFrameworks/issues/909","assignee":null,"title":"shapes with texCoords","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-02-10T01:42:42Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3166745,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-09T08:16:47Z","body":"a student just showed me how you can use the xcode templates for pocode to create a new project wherever you want on the disk. i know we used to have xcode templates for this, but i just tried them and it seems to be hilariously broken.\r\n\r\ni'm not sure if the new project creator stuff covers this idea or not, but it would be great to have a similar ability with OF somehow.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/902","comments":2,"milestone":null,"number":902,"html_url":"https://github.com/openframeworks/openFrameworks/issues/902","assignee":null,"title":"Xcode templates should be fixed or removed","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-09T04:30:13Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3152323,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-08T21:50:23Z","body":"to draw a filled ofPolyline right now, you need to use beginshape/endshape. but i think a way of adding ofPolylines to an ofPath would be really good -- even a conversion from ofPolyline to ofPath might make sense. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/901","comments":0,"milestone":null,"number":901,"html_url":"https://github.com/openframeworks/openFrameworks/issues/901","assignee":null,"title":"easier filled ofPolyline, or easy ofPolyline->ofPath conversion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-08T21:50:23Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3148441,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-09T14:46:48Z","body":"Hi.\r\n\r\nI've been trying to load stream video ( mpeg2 .ts and hls .m3u8 ) using OF on MacOS 10.7.2.\r\n\r\nBoth cases causes error -2048 in the line below: ( l:89, ofQuickTimePlayer.cpp )\r\n\r\n```c++\r\nerr = NewMovieFromDataRef(&movie, newMovieAsyncOK,nil, urlDataRef, URLDataHandlerSubType);\r\n```\r\n\r\nLoading remote .mp4 works perect. Loading same streams in QuickTime player(v10.1) works without any troubles.\r\n\r\nSo, it seems the trouble happens just when no videofile size info returned from server.\r\n\r\nIs it a bug? Or I've missed smthng?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/897","comments":4,"milestone":null,"number":897,"html_url":"https://github.com/openframeworks/openFrameworks/issues/897","assignee":null,"title":"ofQuickTimePlayer.createMovieFromURL fails on streaming video","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-02-06T11:42:08Z","state":"open","user":{"url":"https://api.github.com/users/4pcbr","avatar_url":"https://secure.gravatar.com/avatar/52e8e29748826594f27b5c6c20a353e0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"52e8e29748826594f27b5c6c20a353e0","login":"4pcbr","id":247109},"id":3106705,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-05T17:11:59Z","body":"This concerns libraries included in addons in source form. According to [this issue](https://github.com/chrisoshea/ofxMidi/issues/8) reported by @danomatika, the makefile can only compile libraries' source code if they are in an addon's `/src` folder. This is in contradiction with @obviousjim's guide to addons' folder structure at http://ofxaddons.com/howto.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/896","comments":6,"milestone":null,"number":896,"html_url":"https://github.com/openframeworks/openFrameworks/issues/896","assignee":null,"title":"Makefile and ofxaddons.com guide don't agree regarding file structure","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"closed_at":null,"created_at":"2012-02-05T15:20:42Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3099567,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-10T02:47:13Z","body":"it needs to handle all these things:\r\n\r\n- meshes vs point clouds\r\n- different types of meshes (depending on the triangles)\r\n- indexed vs non-indexed geometry\r\n- colors, normals, texcoords\r\n- ascii vs binary\r\n- loading from externally created/defined ply files","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/880","comments":1,"milestone":null,"number":880,"html_url":"https://github.com/openframeworks/openFrameworks/issues/880","assignee":null,"title":"test ofMesh::load/save rigorously","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-01-25T16:55:09Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":2967700,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-03T19:40:34Z","body":"If you set the proper switches on the iphone sound stream you can get it to play over whatever is playing on the users ipod without muting it. There are a bunch of switches for this behavior detailed in kAudioSessionProperty_Mode.\r\n\r\nThese would need to be set before initing the audio session. The other issue is that there are like 15-20 flags you can set. Maybe just a slightly higher level setting on the stream so that these behaivors could be set in the users testapp.mm","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/878","comments":0,"milestone":null,"number":878,"html_url":"https://github.com/openframeworks/openFrameworks/issues/878","assignee":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"title":"add a switch to the iphone soundstream to support ambient","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-01-24T16:41:17Z","state":"open","user":{"url":"https://api.github.com/users/jonbro","avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"893ec14dc008e3774afe5841115920d6","login":"jonbro","id":1597},"id":2952993,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-15T18:33:39Z","body":"change pan range to -1..1, right now is 0..1","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/875","comments":2,"milestone":null,"number":875,"html_url":"https://github.com/openframeworks/openFrameworks/issues/875","assignee":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"title":"ofOpenALSoundPlayer pan -1..1","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-01-21T00:01:45Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":2918619,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=6 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4938'), ('content-length', '49322'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"93bd237d518e2c23c29e5e7b340262a8"'), ('date', 'Tue, 29 May 2012 19:27:14 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-03-10T05:09:49Z","body":" testImg.saveImage(ofxiPhoneGetDocumentsDirectory() + \"test.png\");\r\ncrashes the App and results in this error:\r\n\r\nProgram received signal: \"SIGARBT\".\r\n\r\nerror thrown in this line:\r\n\r\n FreeImage_Save(fif, bmp, fileName.c_str());","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/872","comments":1,"milestone":null,"number":872,"html_url":"https://github.com/openframeworks/openFrameworks/issues/872","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"saveImage crashes in iOS Simulator","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-01-17T21:51:17Z","state":"open","user":{"url":"https://api.github.com/users/khlrqa","gravatar_id":"dfa7e4582a04e784d50c750ae51d894f","login":"khlrqa","avatar_url":"https://secure.gravatar.com/avatar/dfa7e4582a04e784d50c750ae51d894f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":53301},"id":2875276,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-01-07T15:38:14Z","body":"Hi -\r\n\r\nwhen it comes down to multicast communication over udp, it's is important that the correct ip address of the local interface is set. Most computers nowadays have several interfaces (wired and wireless). Whereas ofxUDPManager::BindMcast uses INADDR_ANY as the local address, this might be wrong if you are not using the default interface. In my case, I connect the computers in a local wlan. The wlan device is not the primary device on my machine.\r\n\r\nTherefore I rewrote the BindMcast function adding a third argument pLocal, the local Ip address of the network interface.\r\n\r\n```c++\r\nbool ofxUDPManager::BindMcast(char *pMcast, unsigned short usPort, char *pLocal)\r\n```\r\nchanging the line: \r\n\r\n```c++\r\nmreq.imr_interface.s_addr = pLocal == \"\" ? INADDR_ANY: inet_addr(pLocal);\r\n```\r\n\r\nwhich makes a different header file as well:\r\n\r\n```c++\r\nbool BindMcast(char *pMcast, unsigned short usPort, char *pLocal = \"\");\r\n```\r\n\r\nAs you can see, the pLocal Adress is optional, if omitted, INADDR_ANY is used (backwards compatibility).\r\n\r\n\r\nNOTE:\r\n\r\nI've added the function:\r\n\r\n```c++\r\nchar* GetInterfaceAddr(const char* interface); //returns the IP of a specified interface\r\n```\r\n\r\nto the ofxUDPManager as well. This function returns the IP adress of an interface (e.g. en1 on a mac for the airport device). This is useful in dhcp networks, where your own address always changes. The function itself looks like:\r\n\r\n```c++\r\n//--------------------------------------------------------------------------------\r\nchar* ofxUDPManager::GetInterfaceAddr(const char* interface)\r\n{\r\n\tint fd;\r\n\tstruct ifreq ifr;\r\n\tfd = socket(AF_INET, SOCK_DGRAM, 0);\r\n\tifr.ifr_addr.sa_family = AF_INET;\r\n\tstrncpy(ifr.ifr_name, interface, IFNAMSIZ-1);\r\n\tioctl(fd, SIOCGIFADDR, &ifr);\r\n\tclose(fd);\r\n\treturn(inet_ntoa(((struct sockaddr_in *)&ifr.ifr_addr)->sin_addr));\r\n}\r\n```\r\n\r\nPlease not that for this function, additional headers have to be included in ofxUDPManager.h:\r\n\r\n```c++\r\n#include \r\n```\r\n\r\nIf you consider the changes useful, theres a copy of the two files downloadable here:\r\nhttp://dl.dropbox.com/u/394122/ofxUDPManager_uh_07012012.zip\r\n\r\nregards,\r\nUrs Hofer","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/866","comments":0,"milestone":null,"number":866,"html_url":"https://github.com/openframeworks/openFrameworks/issues/866","assignee":null,"title":"Multicast & UDP: Local IP required when dealing with multiple network interfaces","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-01-07T15:38:14Z","state":"open","user":{"url":"https://api.github.com/users/urshofer","gravatar_id":"0424af1c917883090f0edddf55a8f21b","login":"urshofer","avatar_url":"https://secure.gravatar.com/avatar/0424af1c917883090f0edddf55a8f21b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":116976},"id":2756440,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-03T19:40:34Z","body":"I've posted here\r\nhttp://forum.openframeworks.cc/index.php/topic,8467.new.html\r\n\r\nAt the moment when you do sample.unloadSound() on iOS the app crashes with\r\n\r\n[Switching to thread 13059]\r\n[Switching to thread 13059]\r\nProgram received signal: “EXC_BAD_ACCESS”.\r\nwarning: Unable to read symbols for /Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.2.1 (8C148)/Symbols/Developer/usr/lib/libXcodeDebuggerSupport.dylib (file not found).\r\n\r\n\r\nThis has been tested on the soundPlayerExample.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/863","comments":1,"milestone":null,"number":863,"html_url":"https://github.com/openframeworks/openFrameworks/issues/863","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"unloadSound on iOS crashes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-01-03T12:48:09Z","state":"open","user":{"url":"https://api.github.com/users/chrisoshea","gravatar_id":"62d775b0fa28bcde2d9d29405d059be3","login":"chrisoshea","avatar_url":"https://secure.gravatar.com/avatar/62d775b0fa28bcde2d9d29405d059be3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":104786},"id":2710048,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-03T19:38:16Z","body":"ofxsynth doesn't wont to compile because this line:\r\nsource->audioOut( working, numFrames, numChannels, tickCount ) in ofxSoundUnit.cpp is wrong.\r\nthe canddates are:\r\n\r\nvirtual void audioOut( float * output, int bufferSize, int nChannels, int deviceID, long unsigned long tickCount )\r\nvirtual void audioOut( float * output, int bufferSize, int nChannels)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/861","comments":10,"milestone":null,"number":861,"html_url":"https://github.com/openframeworks/openFrameworks/issues/861","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"ofxSynth semantic issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-01-02T11:14:47Z","state":"open","user":{"url":"https://api.github.com/users/viniciolindo","gravatar_id":"7aa1a7f9bf0b838c0d99886c3682ac5d","login":"viniciolindo","avatar_url":"https://secure.gravatar.com/avatar/7aa1a7f9bf0b838c0d99886c3682ac5d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1298679},"id":2700549,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-03T19:40:34Z","body":"ofPixels has getPixels(), but OF has no equivalent getSamples() for sound.\r\n\r\nright now the best solution seems to be using libsndfile with OF http://forum.openframeworks.cc/index.php/topic,3502.0.html\r\n\r\nbut i would love to see the audio architecture for OF mirror the visual architecture better. this means ofSoundPlayer acts like ofVideoPlayer, and we need to add an ofSound object that mirrors ofPixels. ofSound should always store samples in memory, while ofSoundPlayer can stream audio from disk like ofVideoPlayer.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/856","comments":1,"milestone":null,"number":856,"html_url":"https://github.com/openframeworks/openFrameworks/issues/856","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"allow access to individual sound samples","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2011-12-30T02:33:19Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2685556,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-29T04:43:24Z","body":"Today I came across this strange bug.\r\nAny OF app that needed to use the quicktime video grabber crashed at startup when the this was launched from xcode (eg. using build and run) yet it worked correctly when I opened the compiled app by doubleclicking it.\r\n\r\nThe error thrown was a EXCBADACCESS.\r\nthe function that threw this was ACWma1DecoderEntry\r\n\r\nJust some googling and I found that it had to do with Flip4Mac quicktime component.\r\nI uninstalled it and problem gone.\r\n\r\nThe strange thing is that I've had installed Flip4Mac since long ago, yet I updated iTunes a few days ago, that might have done this problem to arise.\r\n\r\nI don't know if this is actually an OF bug from its Quicktime implementation or what ever but it was really annoying getting across with it. Hope this helps others.\r\n\r\nCheers!","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/855","comments":0,"milestone":null,"number":855,"html_url":"https://github.com/openframeworks/openFrameworks/issues/855","assignee":null,"title":"video Grabber crashes with Flip4Mac","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-12-29T04:43:24Z","state":"open","user":{"url":"https://api.github.com/users/roymacdonald","gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","login":"roymacdonald","avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":974878},"id":2677212,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-23T14:13:39Z","body":"ofNode::resetTransform only resets orientation and position.\r\n\r\nI think setScale(1,1,1); needs to be called too in ofNode::resetTransform \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/851","comments":0,"milestone":null,"number":851,"html_url":"https://github.com/openframeworks/openFrameworks/issues/851","assignee":null,"title":"ofNode::resetTransform does not reset scale","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-12-23T14:13:39Z","state":"open","user":{"url":"https://api.github.com/users/companje","gravatar_id":"30a7e135fe77636519d74d129c60e156","login":"companje","avatar_url":"https://secure.gravatar.com/avatar/30a7e135fe77636519d74d129c60e156?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":156066},"id":2647508,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-22T14:31:37Z","body":"if I add an external lib to my addon, I should provide headers for all platforms to be cross-platfomr like OF but the Makefile doesn't have any switch to ignore certain files which are not needed on linux.\r\n\r\nthe problem is that the OF Makefile compiles everythin under libs/mylib/include\r\n\r\nsee here for more: http://forum.openframeworks.cc/index.php?topic=6486.new;topicseen#new","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/849","comments":0,"milestone":null,"number":849,"html_url":"https://github.com/openframeworks/openFrameworks/issues/849","assignee":null,"title":"skip files in an addon with Makefile","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-12-22T14:31:37Z","state":"open","user":{"url":"https://api.github.com/users/benben","gravatar_id":"614a4e493d7c353296519bba720e77c5","login":"benben","avatar_url":"https://secure.gravatar.com/avatar/614a4e493d7c353296519bba720e77c5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":124513},"id":2637694,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-19T22:35:27Z","body":"But it does!\r\n\r\nSomehow it's casting from float to ofPoint, maybe using the ofVec3f( float _x=0.f, float _y=0.f, float _z=0.f ) constructor.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/846","comments":10,"milestone":null,"number":846,"html_url":"https://github.com/openframeworks/openFrameworks/issues/846","assignee":null,"title":"ofCircle(float, float) should not work","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-12-14T00:42:31Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2546302,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-10T21:25:49Z","body":"Please add \"-Wreturn-type\" to the XCode project. I've noticed that it's a common mistake to add a return type but nothing is returned. Adding this option will at least show an error. I think Visual Studio shows an error already by default. You can add it like this in the project settings: http://img805.imageshack.us/img805/8745/screenshot20111210at102.png \r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/843","comments":0,"milestone":null,"number":843,"html_url":"https://github.com/openframeworks/openFrameworks/issues/843","assignee":null,"title":"Add return-type warning for XCode project files ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-12-10T21:25:49Z","state":"open","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":358809},"id":2512838,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-31T19:36:40Z","body":"Playing a movie crashes on exit on linux. Fedora 16 32-bit, latest git.\r\n\r\noutput:\r\n./moviePlayerExample\r\ndeleting video player\r\nterminate called after throwing an instance of 'Poco::SystemException'\r\n what(): System exception\r\nAborted (core dumped)\r\n\r\nbacktrace:\r\n#0 0x00110416 in __kernel_vsyscall ()\r\n#1 0x4623998f in raise () from /lib/libc.so.6\r\n#2 0x4623b2d5 in abort () from /lib/libc.so.6\r\n#3 0x46a9b74d in __gnu_cxx::__verbose_terminate_handler() ()\r\n from /usr/lib/libstdc++.so.6\r\n#4 0x46a994c4 in ?? () from /usr/lib/libstdc++.so.6\r\n#5 0x46a99500 in std::terminate() () from /usr/lib/libstdc++.so.6\r\n#6 0x46a9964f in __cxa_throw () from /usr/lib/libstdc++.so.6\r\n#7 0x08098bef in Poco::MutexImpl::lockImpl (this=0x814eb48)\r\n at /usr/include/Poco/Mutex_POSIX.h:82\r\n#8 0x08098d07 in Poco::FastMutex::lock (this=0x814eb48)\r\n at /usr/include/Poco/Mutex.h:257\r\n#9 0x0809907d in Poco::ScopedLock::ScopedLock (this=\r\n 0xbfffeabc, mutex=...) at /usr/include/Poco/ScopedLock.h:59\r\n#10 0x0809a340 in Poco::AbstractEvent, Poco::p_less > >, Poco::AbstractDelegate, Poco::FastMutex>::operator-=\r\n (this=0x814eb10, aDelegate=...) at /usr/include/Poco/AbstractEvent.h:195\r\n#11 0x080d40c5 in ofRemoveListener, ofEventArgs, ofGstUtils> (event=..., listener=0x82698e0, listenerMethod=\r\n (void (ofGstUtils::*)(ofGstUtils * const, ofEventArgs &)) 0x80d27b4 ) at ../../../openFrameworks/events/ofEventUtils.h:87\r\n#12 0x080d25be in ofGstUtils::close (this=0x82698e0)\r\nat ../../../openFrameworks/video/ofGstUtils.cpp:353\r\n#13 0x080d175e in ofGstUtils::~ofGstUtils (this=0x82698e0, \r\n __in_chrg=)\r\n at ../../../openFrameworks/video/ofGstUtils.cpp:85\r\n#14 0x080d32c4 in ofGstVideoUtils::~ofGstVideoUtils (this=0x82698d8, \r\n __in_chrg=)\r\n at ../../../openFrameworks/video/ofGstUtils.cpp:536\r\n#15 0x080d06ff in ofGstVideoPlayer::~ofGstVideoPlayer (this=0x82698b8, \r\n __in_chrg=, __vtt_parm=)\r\n at ../../../openFrameworks/video/ofGstVideoPlayer.cpp:19\r\n#16 0x080d07d9 in ofGstVideoPlayer::~ofGstVideoPlayer (this=0x82698b8, \r\n __in_chrg=, __vtt_parm=)\r\n at ../../../openFrameworks/video/ofGstVideoPlayer.cpp:21\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/840","comments":3,"milestone":null,"number":840,"html_url":"https://github.com/openframeworks/openFrameworks/issues/840","assignee":null,"title":"ofGstVideoPlayer crash on exit","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2011-12-08T11:53:55Z","state":"open","user":{"url":"https://api.github.com/users/gaborpapp","gravatar_id":"9cb0f8a67c238d2aa91d9a7957b9ef4b","login":"gaborpapp","avatar_url":"https://secure.gravatar.com/avatar/9cb0f8a67c238d2aa91d9a7957b9ef4b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":203532},"id":2486705,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-12T12:30:53Z","body":"right now the only way to change the type of pixels is to go through ofImage and set image type there.\r\n\r\nseems like this should be moved into ofPixels.\r\n\r\nthoughts?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/838","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":838,"html_url":"https://github.com/openframeworks/openFrameworks/issues/838","assignee":{"url":"https://api.github.com/users/obviousjim","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","login":"obviousjim","avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":321434},"title":"ofPixels has no setImageType","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-12-07T16:30:59Z","state":"open","user":{"url":"https://api.github.com/users/obviousjim","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","login":"obviousjim","avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":321434},"id":2476561,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-05T21:44:08Z","body":"I made a small example which uses the Wikipedia xml api to make queries which are then parsed by an ofXmlSettings object. The problem is Wikipedia complains there is no User-Agent string and dosen't return any data, while threatening to block by IP.\r\n\r\nThe fix was as simple as adding this to ofURLFileLoader.cpp line 144:\r\n
    \r\n\t\tHTTPRequest req(HTTPRequest::HTTP_GET, path, HTTPMessage::HTTP_1_1);\r\n        \treq.add(\"User-Agent\", \"Mozilla/5.0 (iPad; U; CPU OS 3_2_1 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Mobile/7B405\");\r\n
    \r\n\r\nIt uses the iOS safari user agent string. I think the best fix is to expose the HTTPRequest and HTTPResponse Poco objects so that, like in the ofxHttpUtils, you could add manually the string/value to the request before sending it. I don't think it should be set ti a default within the class. Also, it would be awesome to be able to add data into and pull data out of the requests. This is a great wrapper, especially the threading, I'd just like to have the full req/response control ... perhaps provide a method to add Poco::HttpRequests and recieve Poco::HttpResponses which could be set as references inside the ofxHttpRequest/ofxHttpResponse objects?\r\n\r\nOn another note, ofURLFileLoader seems like a rather specific name for a regular HTTP action. What's wrong with ofHttpSession etc since I've found it useful for more then just","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/837","comments":0,"milestone":null,"number":837,"html_url":"https://github.com/openframeworks/openFrameworks/issues/837","assignee":null,"title":"ofURLFileLoader dosen't set HTTP User-Agent string and there is no way to set it","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-12-05T21:44:08Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":2455011,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-04T00:08:35Z","body":"Dummy issue to ensure that the 0073 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/836","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","closed_issues":0,"number":6,"title":"0073 Release","due_on":"2012-07-30T07:00:00Z","open_issues":5,"created_at":"2011-12-03T15:37:49Z","state":"open","description":"","id":62090},"number":836,"html_url":"https://github.com/openframeworks/openFrameworks/issues/836","assignee":null,"title":"0073 Release tracking issue","labels":[],"closed_at":null,"created_at":"2011-12-04T00:08:35Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":2439965,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T09:03:22Z","body":"Not sure if is an issue or im doing wrong.\r\n\r\nIm trying to implement dragEvent() in an external class in windoes 7. I'm getting neither an error nor a response nor result. While debugging dragEvent is not called at all. The same code works perfectly on osx. \r\n\r\nhere's some:\r\n\r\ndummy.h\r\n\r\n\t#include \"ofMain.h\"\r\n\r\n\tclass dummy\r\n\t{\r\n\t\tpublic:\r\n\t\t\tdummy();\r\n\t\t\t~dummy();\r\n\t\t\t\t\t\r\n\t\t\tvoid config();\r\n\t\t\tvoid dragEvent(ofDragInfo &info);\r\n\t\t\t\r\n\t\tprivate:\r\n\t\tprotected:\r\n\t\t\r\n\t};\r\n\r\ndummy.cpp\r\n\r\n\t#include \"dummy.h\"\r\n\r\n\tdummy::dummy(){}\r\n\r\n\tdummy::~dummy(){}\r\n\r\n\tvoid dummy::config(){\r\n\t\tofAddListener(ofEvents.fileDragEvent, this, &dummy::dragEvent);\r\n\t}\r\n\r\n\tvoid dummy::dragEvent(ofDragInfo &info){\r\n\t\tfor( int i = 0; i < info.files.size() ; i++){\r\n\t\t\tcout << \"path: \" << info.files[i] << endl;\r\n\t\t}\r\n\t}\r\n\r\n\r\ntesApp.h\r\n\r\n\t#include \"ofMain.h\"\r\n\t#include \"dummy.h\"\r\n\r\n\r\n\tclass testApp : public ofBaseApp{\r\n\r\n\t\tpublic:\r\n\t\t\tvoid setup();\r\n\t\t\tvoid update();\r\n\t\t\tvoid draw();\r\n\r\n\t\t\tvoid keyPressed (int key);\r\n\t\t\tvoid keyReleased(int key);\r\n\t\t\tvoid mouseMoved(int x, int y );\r\n\t\t\tvoid mouseDragged(int x, int y, int button);\r\n\t\t\tvoid mousePressed(int x, int y, int button);\r\n\t\t\tvoid mouseReleased(int x, int y, int button);\r\n\t\t\tvoid windowResized(int w, int h);\r\n\t\t\tvoid dragEvent(ofDragInfo dragInfo);\r\n\t\t\tvoid gotMessage(ofMessage msg);\r\n\t\t\t\r\n\t\t\tdummy d;\r\n\r\ntestApp.cpp\r\n\r\n\t#include \"testApp.h\"\r\n\r\n\tvoid testApp::setup(){\r\n\t\td.config();\r\n\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/831","comments":0,"milestone":null,"number":831,"html_url":"https://github.com/openframeworks/openFrameworks/issues/831","assignee":null,"title":"dragEvent() in new class not working in win7","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-12-03T08:51:42Z","state":"open","user":{"url":"https://api.github.com/users/decolector","gravatar_id":"7165a50ea8df968de57ffb5a27ba6ebc","login":"decolector","avatar_url":"https://secure.gravatar.com/avatar/7165a50ea8df968de57ffb5a27ba6ebc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":390056},"id":2436532,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-02T16:28:49Z","body":"Dummy issue to ensure that the 0072 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/829","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":829,"html_url":"https://github.com/openframeworks/openFrameworks/issues/829","assignee":null,"title":"0072 Release tracking issue","labels":[],"closed_at":null,"created_at":"2011-12-02T16:28:49Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":2429871,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-11-29T17:54:48Z","body":"Loading Futura at font size 10 and simplify=0 yields oversimplified chars in a pdf render. I'm not sure if there's a way to fix this if the fonts are small.\r\n\r\nA workaround is to load the font at a larger size, say 40, then scale down by 0.25 when drawing. \r\n\r\nThe font below is a zoom of the pdf export using font size 10. The font above is Futura at font size 144 by comparison.\r\n\r\n![oversimplified fonts](http://farm8.staticflickr.com/7161/6423768819_9129b6d608_o.jpg)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/825","comments":2,"milestone":null,"number":825,"html_url":"https://github.com/openframeworks/openFrameworks/issues/825","assignee":null,"title":"small font sizes yield oversimplified glyph shapes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-11-29T08:26:16Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":2380571,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-19T07:01:47Z","body":"If I use loadScreenData with anti-Aliasing turned on in the program's startup like this:\r\n\r\nofAppiPhoneWindow * iOSWindow = new ofAppiPhoneWindow();\r\niOSWindow->enableAntiAliasing(4);\r\n\r\nthen the texture will load in nothing but solid black. If I bypass this anti-aliasing, it works fine. I also cannot properly populate a texture using loadScreenData in a landscape orientation. Changing to Portrait orientation in the update loop, and then back to landscape after the grab fixes it.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/822","comments":5,"milestone":null,"number":822,"html_url":"https://github.com/openframeworks/openFrameworks/issues/822","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"iOS - ofTexture.loadScreenData issue when antiAliasing is on","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-11-28T06:48:27Z","state":"open","user":{"url":"https://api.github.com/users/momo-the-monster","gravatar_id":"31f8a3ef87e828b70d2a441c8dae97d8","login":"momo-the-monster","avatar_url":"https://secure.gravatar.com/avatar/31f8a3ef87e828b70d2a441c8dae97d8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":737888},"id":2364541,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-11-28T18:48:58Z","body":"It'd be nice if ofRectangle used a ofVec2f or ofVec3f internally so you could do the something like:\r\n\r\n
    \r\nofRectangle myRect;\r\nofVec2f vel(-1, 2);\r\nmyRect.pos += vel;\r\n
    \r\n\r\nNow I'm not saying drop the x and y member vars, but link them to the ofVec internals thorugh either a union or reference. A reference would be easy through the constructor:\r\n\r\n
    \r\nclass ofRectangle {\r\n\r\n   public:\r\n\r\n     float &x, &y;\r\n     ofVec2f pos;\r\n     ....\r\n\r\n\r\nofRectangle::ofRectangle() : x(pos.x), y(pos.y) {\r\n\r\n...\r\n
    \r\n\r\nThis way we get the best of both worlds without broken code ...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/821","comments":3,"milestone":null,"number":821,"html_url":"https://github.com/openframeworks/openFrameworks/issues/821","assignee":null,"title":"suggest: ofRectangle internal ofVec","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-11-26T20:19:31Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":2356801,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-01T18:13:35Z","body":"i'm experiencing troubles in windows when i use a system file-opening dialog from openframeworks. after using it Data root path seems to get pointing to a wrong location, causing troubles e.g. true type fonts not loading.\r\nif I use the open-file dialog once again to open a file in root folder of the application, then the data path is reset correctly.\r\nusing ofSetDataPathRoot() doens't seem to fix the issue, or maybe I'm not using it correctly.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/819","comments":2,"milestone":null,"number":819,"html_url":"https://github.com/openframeworks/openFrameworks/issues/819","assignee":null,"title":"datapath messed in windows after using file open dialog","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-11-22T10:50:13Z","state":"open","user":{"url":"https://api.github.com/users/hvfrancesco","gravatar_id":"e02a8a3953de9d5d9ec1c7aa8d43eca4","login":"hvfrancesco","avatar_url":"https://secure.gravatar.com/avatar/e02a8a3953de9d5d9ec1c7aa8d43eca4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":614123},"id":2316595,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-02T15:19:58Z","body":"Had a talk with Theo about this. I think that it would be really nice if it were possible to #define/ pre-process macro if you want to exclude modules like ofVideoPlayer/ofSoundplayer in your app. \r\n\r\nThis would be super helpful for a couple of reasons.\r\n\r\nplugins that are not able to use the modules can exclude them without hacking the core.\r\nif you want to reduce the final size of you app and its not using something like ofVideoPlayer you dont need to add it.\r\n\r\nwhat do you think...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/818","comments":1,"milestone":null,"number":818,"html_url":"https://github.com/openframeworks/openFrameworks/issues/818","assignee":null,"title":"#defines for modules ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-11-21T16:45:51Z","state":"open","user":{"url":"https://api.github.com/users/vanderlin","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":149997},"id":2306518,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-11-17T15:17:10Z","body":"Hello, \r\nRunning on MacOS 10.7 with XCode 4.1 I could not compile any of the examples in devApps, except for _DeployExamples. \r\nThe first error always encountered is: \r\n\r\n../../../libs/openFrameworks/utils/ofConstants.h:101:22: error: GL/glew.h: No such file or directory\r\n\r\nI tried both changing the paths of the include part in the code and dragging the GL folder that contains glew.h separately in the project, but neither worked. \r\n\r\nHelp please... \r\n\r\nThanks, \r\n\r\nIannis Zannos","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/815","comments":3,"milestone":null,"number":815,"html_url":"https://github.com/openframeworks/openFrameworks/issues/815","assignee":null,"title":"Examples in devApps folder do not compile. Missing glew.h","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-11-17T13:45:47Z","state":"open","user":{"url":"https://api.github.com/users/iani","gravatar_id":"8200f2533f23c9daaff63c4dba6f4819","login":"iani","avatar_url":"https://secure.gravatar.com/avatar/8200f2533f23c9daaff63c4dba6f4819?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":181956},"id":2268829,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T16:30:18Z","body":"Hello, \r\nIt took me more than 4 hours to get openFrameworks to compile deployExamples on MacOS X 10.7.2 with XCode 4.1, because of having to figure out two things; \r\n\r\n1. Need to change SDK for the deployExamples project definitions to 10.6\r\n2. Need to choose deployExamples in the build menu on the toolbar of the project window. \r\n\r\nPerhaps this info should be added to the readme.txt file of the present master branch in order to spare other people the hassle? \r\n\r\nI suggest the following addition: \r\n=====\r\nTo deploy openFrameworks examples from the files cloned via the present github repository, you should build and run the project: \r\napps/devApps/_DeployExamples/deployExamples.xcodeproj\r\n\r\nTo successfully compile in Lion (MacOS X 10.7) in XCode you should select in the project file list of XCode both the target deployExamples from the top level of the file hierarchy and the project openFrameworksLib.xcodeproj from inside the openFrameworks folder, then find the project definition, and change the SDK to MacOS X 10.6. You should do the same for the targets of those two items. \r\n\r\nImportant: Before clicking the Build and Go, or the Run button, make sure that you choose the deployExamples project in the menu on the toolbar of the project window. (Otherwise if you leave openFrameworks as selected project and push Run or Build and Run, no application will be created or run). \r\n\r\n\r\n=====\r\nHopefully this helps. \r\nCheers, \r\nIannis Zannos","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/814","comments":2,"milestone":null,"number":814,"html_url":"https://github.com/openframeworks/openFrameworks/issues/814","assignee":null,"title":"Suggest adding some info about Lion to readme.txt","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-11-17T11:48:32Z","state":"open","user":{"url":"https://api.github.com/users/iani","gravatar_id":"8200f2533f23c9daaff63c4dba6f4819","login":"iani","avatar_url":"https://secure.gravatar.com/avatar/8200f2533f23c9daaff63c4dba6f4819?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":181956},"id":2267854,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-11-16T04:46:48Z","body":"I'm trying this simple ofFbo example on OF 007, the system is Ubuntu Lucid, with an Intel 945 GPU.\r\n\r\n]//--------------------------------------------------------------\r\nvoid testApp::setup(){\r\n fbo.allocate(500, 500, GL_RGBA);\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::update(){\r\n\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::draw(){\r\n\r\n fbo.begin();\r\n ofClear(255, 255, 255, 255);\r\n ofSetColor(255, 0, 0);\r\n ofCircle(mouseX, mouseY, 100);\r\n fbo.end();\r\n\r\n ofSetColor(255);\r\n fbo.draw(0, 0);\r\n}\r\n\r\nI got a segfault in i915 dri, and any test using ofFbo leads to same results.\r\n\r\n\r\n#0 0x1bd3c36 _mesa_FramebufferRenderbufferEXT() (/usr/lib/dri/i915_dri.so:??)\r\n#1 0x80cc56a ofFbo::createAndAttachRenderbuffer(this=0x85b28e8, internalFormat=34041, attachmentPoint=33306) (../../../openFrameworks/gl/ofFbo.cpp:489)\r\n#2 0x80cc352 ofFbo::allocate(this=0x85b28e8, _settings=...) (../../../openFrameworks/gl/ofFbo.cpp:388)\r\n#3 0x80cc269 ofFbo::allocate(this=0x85b28e8, width=500, height=500, internalformat=6408, numSamples=0) (../../../openFrameworks/gl/ofFbo.cpp:363)\r\n#4 0x80562ec testApp::setup(this=0x85b28d8) (src/testApp.cpp:5)\r\n#5 0x8059ca6 ofNotifySetup() (../../../openFrameworks/events/ofEvents.cpp:73)\r\n#6 0x8056a23 ofAppGlutWindow::runAppViaInfiniteLoop(this=0xbffff2f8, appPtr=0x85b28d8) (../../../openFrameworks/app/ofAppGlutWindow.cpp:317)\r\n#7 0x80584cc ofRunApp(OFSA=0x85b28d8) (../../../openFrameworks/app/ofAppRunner.cpp:82)\r\n#8 0x8055bfc main() (src/main.cpp:14)\r\n\r\nany idea about what I should try or where the problem could be? has anyone experienced similar problems?\r\n\r\nthanks in advance to all","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/811","comments":1,"milestone":null,"number":811,"html_url":"https://github.com/openframeworks/openFrameworks/issues/811","assignee":null,"title":"ofFBO causes segfault on Linux Ubuntu Lucid with i945 GPU","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-11-13T20:49:26Z","state":"open","user":{"url":"https://api.github.com/users/hvfrancesco","gravatar_id":"e02a8a3953de9d5d9ec1c7aa8d43eca4","login":"hvfrancesco","avatar_url":"https://secure.gravatar.com/avatar/e02a8a3953de9d5d9ec1c7aa8d43eca4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":614123},"id":2223158,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-09T18:51:38Z","body":"Julapy and I were discussing how to do this on the forum http://forum.openframeworks.cc/index.php?topic=7852 and I think adding a flag to allocate for mipmaps to ofTexture and ofFbo would come in handy for some people.\r\n\r\n```c\r\nvoid ofTexture::allocate(int w, int h, int internalGlDataType, bool bUseARBExtention, bool generateMipmaps = false) \r\n{\r\n if( generateMipmaps )\r\n {\r\n glTexParameterf( texData.textureTarget, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_NEAREST );\r\n glTexParameterf( texData.textureTarget, GL_TEXTURE_MAG_FILTER, GL_LINEAR );\r\n glTexParameterf( texData.textureTarget, GL_GENERATE_MIPMAP, GL_TRUE );\r\n }\r\n```\r\n\r\nand in ofFbo\r\n\r\n```c\r\nstruct Settings {\r\n bool generateMipMaps; // or int\r\n}\r\n```\r\n\r\nI'd be happy to do this & submit a pull request too.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/810","comments":2,"milestone":null,"number":810,"html_url":"https://github.com/openframeworks/openFrameworks/issues/810","assignee":null,"title":"Add flag for mipmapping in ofTexture/ofFbo","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-11-11T07:34:53Z","state":"open","user":{"url":"https://api.github.com/users/joshuajnoble","gravatar_id":"10960ba0f305803a1cdc7cd6188d643b","login":"joshuajnoble","avatar_url":"https://secure.gravatar.com/avatar/10960ba0f305803a1cdc7cd6188d643b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":237423},"id":2206980,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=7 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4937'), ('content-length', '49276'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"362300e7c4c0fc8f170b2c345084dfad"'), ('date', 'Tue, 29 May 2012 19:27:16 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-12-03T23:58:48Z","body":"right now it's inside ofMath.h","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/800","comments":3,"milestone":null,"number":800,"html_url":"https://github.com/openframeworks/openFrameworks/issues/800","assignee":null,"title":"ofInsidePoly should be a static method of ofPolyline","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-30T04:16:14Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2089523,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-05T21:31:07Z","body":"ofRect very commonly has a little chunk missing from one corner.\r\n\r\nthere is also a discrepancy between the filled and outline rectangles. it's not clear whether the outline rect should be within the bounds of the filled rect, or enclosing the filled rect, and in practice it can be a little of both.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/798","comments":2,"milestone":null,"number":798,"html_url":"https://github.com/openframeworks/openFrameworks/issues/798","assignee":null,"title":"ofRect isn't quite rectangular","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-10-29T06:38:43Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2086039,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-29T02:37:28Z","body":"we're working on some ideas regarding procedural animation and posing:\r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,7714.new.html#new\r\n\r\nwhich should be more powerful than playing back manual animations.\r\n\r\nintegrating it into the core would be ideal, but we're still trying to understand how it works.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/797","comments":0,"milestone":null,"number":797,"html_url":"https://github.com/openframeworks/openFrameworks/issues/797","assignee":null,"title":"procedural posing of bones in ofxAssimpModelLoader","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-29T02:37:28Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2085543,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T03:48:47Z","body":"this fails to display any text:\r\n\r\n\tofBackground(0);\r\n\tofSetColor(255, 254);\r\n\tofDrawBitmapString(\"this text is not displayed\", 10, 20);\r\n\r\nthis is because line 448 of ofBitmapFont.h reads:\r\n\r\n\tglAlphaFunc(GL_EQUAL, 1.0f);\r\n\r\nwhich should be changed to:\r\n\r\n\tglAlphaFunc(GL_GREATER, 0);","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/795","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":795,"html_url":"https://github.com/openframeworks/openFrameworks/issues/795","assignee":null,"title":"ofDrawBitmapString does not work with alpha","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-27T09:50:07Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2066090,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-25T23:39:09Z","body":"\r\nThis should be user adjustable / on / off. it's sort of a drag to be using easy cam and trigger double clicks are you are interacting with a gui, etc.... \r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/793","comments":1,"milestone":null,"number":793,"html_url":"https://github.com/openframeworks/openFrameworks/issues/793","assignee":null,"title":"easyCam -- ability to disable doubleClick reset","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-25T23:36:40Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":2051692,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T23:53:12Z","body":"when drawing certain shapes i get crashes, debugger claims a tessellator issue pointing to \r\n\"if (!tessTesselate(cacheTess, polyWindingMode, TESS_POLYGONS, 3, 3, 0)){\" in \"performTessellation\" function in file ofTessellator.cpp ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/789","comments":1,"milestone":null,"number":789,"html_url":"https://github.com/openframeworks/openFrameworks/issues/789","assignee":null,"title":"crashes with tessellator","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-10-21T14:49:12Z","state":"open","user":{"url":"https://api.github.com/users/ruim","gravatar_id":"18875575931764c674b5fc64ae8b7274","login":"ruim","avatar_url":"https://secure.gravatar.com/avatar/18875575931764c674b5fc64ae8b7274?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480525},"id":2016194,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-19T22:39:37Z","body":"would be useful as well. Perhaps an ofxMeshUtils would be in order for upcoming versions...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/787","comments":0,"milestone":null,"number":787,"html_url":"https://github.com/openframeworks/openFrameworks/issues/787","assignee":null,"title":"half edge mesh structure extension of ofMesh","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-19T22:39:37Z","state":"open","user":{"url":"https://api.github.com/users/kpasko","gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","login":"kpasko","avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":167271},"id":1999520,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-11-04T21:59:22Z","body":"would be quite useful","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/786","comments":1,"milestone":null,"number":786,"html_url":"https://github.com/openframeworks/openFrameworks/issues/786","assignee":null,"title":"axis aligned bounding box tree for ofMesh","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-19T22:38:35Z","state":"open","user":{"url":"https://api.github.com/users/kpasko","gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","login":"kpasko","avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":167271},"id":1999513,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-27T17:58:58Z","body":"I am loading in boujou camera data (translation and euler rotation), and I get really fine results when I do: \r\n\r\nglTranslatef(tx,ty,tz);\r\nglRotatef(rx, 1,0,0);\r\nglRotatef(ry, 0,1,0);\r\nglRotatef(rz, 0,0,1);\r\n\r\nbut when I create an ofCamera, and do: \r\n\r\nsetPosition(ofPoint(tx, ty, tz));\r\nsetOrientation(ofPoint(rx, ry, rz));\r\n\r\nI get strange results. I am wondering about ofNodes \"setOrientation\" and if it's really right in that the order is switched:\r\n\r\nsetOrientation(ofQuaternion(eulerAngles.y, ofVec3f(0, 1, 0), eulerAngles.x, ofVec3f(1, 0, 0), eulerAngles.z, ofVec3f(0, 0, 1)));\r\n\r\nalso, maybe I am mis interpreting what \"set orientation\" does. But I can't seem to get similar results with ofCam, even if I do, for example, \r\n\r\ncam.setPosition( tx,ty,tz);\r\ncam.rotate( rx, 1,0,0);\r\ncam.rotate( ry, 0,1,0);\r\ncam.rotate( rz, 0,0,1);\r\n\r\nI still don't get the same results as when I do it via opengl. This seems like a bug maybe with how ofNode handles rotation?\r\n\r\n(note , I am calling resetTranform() on the camera, so it's not an accumulation of rotations.... it's just that I can't seem to find a way to get ofCam to rotate in the same way as opengl commands). \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/785","comments":2,"milestone":null,"number":785,"html_url":"https://github.com/openframeworks/openFrameworks/issues/785","assignee":null,"title":"ofCamera setOrientation gives odd results","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-10-19T11:16:42Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":1992818,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-09T11:46:35Z","body":"It seems to be happening pretty far in, if you put debug statements in touchesMoved in EAGL view, you will see that y is set to the x value of the touch.\r\n\r\nThis does not occur in debug mode, or in the simulator, and it has to be done with xcode4. I am running the newest ios5 beta as well.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/778","comments":2,"milestone":null,"number":778,"html_url":"https://github.com/openframeworks/openFrameworks/issues/778","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"running an iphone retina app in release mode causes touch.x == touch.y","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-10-18T11:26:26Z","state":"open","user":{"url":"https://api.github.com/users/jonbro","gravatar_id":"893ec14dc008e3774afe5841115920d6","login":"jonbro","avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1597},"id":1938472,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-16T18:30:08Z","body":"\r\nat the moment, the ofCamera draw calls ofNode, which does't really give you a clear indication of which way the camera is looking. even that is weird, because a camera looks on -z, and the node draw draws a line on positive z. \r\n\r\nI suggest we add something that draws a bit of a frustum (ie, fov, etc) and gives you a feeling about orientation. \r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/774","comments":0,"milestone":null,"number":774,"html_url":"https://github.com/openframeworks/openFrameworks/issues/774","assignee":null,"title":"ofCamera draw() should be more indicative of where the camera is facing. ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-16T18:30:08Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":1922704,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-12T15:09:29Z","body":"Currently we have:\r\n\tvirtual void draw(float x,float y)=0;\r\n\tvirtual void draw(float x,float y,float w, float h)=0;\r\n\r\n\tvirtual float getHeight()=0;\r\n\tvirtual float getWidth()=0;\r\n\r\nSince we're insisting that the user define a getWidth and getHeight, can I ask why we don't set the default of draw(x,y) to be\r\n virtual void draw(float x,float y) {draw(x, y, getWidth(), getHeight()) };\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/772","comments":0,"milestone":null,"number":772,"html_url":"https://github.com/openframeworks/openFrameworks/issues/772","assignee":null,"title":"ofBaseDraws draw(x, y) default","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-10-12T15:08:55Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":1888302,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T15:11:08Z","body":"Greetings,\r\n\r\nI downloaded OF v.007 on my laptop running Vista SP2. I compiled and ran some of the example apps like imageLoader example using VS2010. \r\n\r\nTextures seem to be broken. Images appear as white slabs.\r\n\r\nI tracked it down and found that disabling ArbTex, with ofDisableArbTex(), will get the textures working again. \r\n\r\nUsing ArbTex worked fine in OF v0.62 on the same machine.\r\n\r\nLaptop:\r\nHP Pavilion dv600 Notebook PC\r\nManufacturer: Hewlett-Packard\r\nOperating System: Windows Vista Home Premium, Service Pack 2 (6.0.6002)\r\nPhysical Memory:\t 2037 MB\r\nProcessor: Intel Core2 Duo PU T5250 @ 1.5 GHz, 1.5 GHz\r\n\r\nCompiler:\r\nMicrosoft Visual Studio 2010\r\nInstalled Version: Professional\r\nMicrosoft Visual C++ 2010\r\n\r\nGraphics:\r\nGraphics: Intel Graphics Media Accelerator Driver for Mobile\r\nGraphics: Driver Version: 7.14.10.1244\r\nDirectX Version:\t10.0\r\nOpenGL Version 1.5\r\n\r\nHere's a full report of OpenGL info from GLview:\r\n\r\n\r\nRenderer: Intel 965/963 Graphics Media Accelerator\r\nVendor: Intel\r\nMemory: 448 MB\r\nVersion: 1.5.0 - Build 7.14.10.1244\r\nShading language version: N/A\r\n\r\n\r\nMax texture size: 2048 x 2048\r\nMax texture coordinates: 8\r\nMax vertex texture image units: 0\r\nMax texture image units: 16\r\nMax geometry texture units: 0\r\nMax anisotropic filtering value: 2\r\nMax number of light sources: 16\r\nMax viewport size: 2048 x 2048\r\nMax uniform vertex components: 0\r\nMax uniform fragment components: 0\r\nMax geometry uniform components: 0\r\nMax varying floats: 0\r\nMax samples: 0\r\nMax draw buffers: 0\r\n\r\n\r\nExtensions: 56\r\n\r\nGL_3DFX_texture_compression_FXT1\r\nGL_ARB_depth_texture\r\nGL_ARB_fragment_program\r\nGL_ARB_multitexture\r\nGL_ARB_occlusion_query\r\nGL_ARB_point_parameters\r\nGL_ARB_shadow\r\nGL_ARB_texture_border_clamp\r\nGL_ARB_texture_compression\r\nGL_ARB_texture_cube_map\r\nGL_ARB_texture_env_add\r\nGL_ARB_texture_env_combine\r\nGL_ARB_texture_env_crossbar\r\nGL_ARB_texture_env_dot3\r\nGL_ARB_transpose_matrix\r\nGL_ARB_vertex_buffer_object\r\nGL_ARB_vertex_program\r\nGL_ARB_window_pos\r\nGL_EXT_abgr\r\nGL_EXT_bgra\r\nGL_EXT_blend_color\r\nGL_EXT_blend_func_separate\r\nGL_EXT_blend_minmax\r\nGL_EXT_blend_subtract\r\nGL_EXT_clip_volume_hint\r\nGL_EXT_compiled_vertex_array\r\nGL_EXT_draw_range_elements\r\nGL_EXT_fog_coord\r\nGL_EXT_multi_draw_arrays\r\nGL_EXT_packed_pixels\r\nGL_EXT_rescale_normal\r\nGL_EXT_secondary_color\r\nGL_EXT_separate_specular_color\r\nGL_EXT_shadow_funcs\r\nGL_EXT_stencil_two_side\r\nGL_EXT_stencil_wrap\r\nGL_EXT_texture3D\r\nGL_EXT_texture_compression_s3tc\r\nGL_EXT_texture_env_add\r\nGL_EXT_texture_env_combine\r\nGL_EXT_texture_filter_anisotropic\r\nGL_EXT_texture_lod_bias\r\nGL_IBM_texture_mirrored_repeat\r\nGL_NV_blend_square\r\nGL_NV_texgen_reflection\r\nGL_SGIS_generate_mipmap\r\nGL_SGIS_texture_edge_clamp\r\nGL_SGIS_texture_lod\r\nGL_WIN_swap_hint\r\nWGL_ARB_buffer_region\r\nWGL_ARB_extensions_string\r\nWGL_ARB_make_current_read\r\nWGL_ARB_pbuffer\r\nWGL_ARB_pixel_format\r\nWGL_EXT_extensions_string\r\nWGL_EXT_swap_control\r\n\r\nCore features\r\nv1.1 (100 % - 7/7)\r\nv1.2 (100 % - 8/8)\r\nv1.3 (100 % - 9/9)\r\nv1.4 (100 % - 15/15)\r\nv1.5 (100 % - 3/3)\r\nv2.0 (10 % - 1/10)\r\nv2.1 (0 % - 0/3)\r\nv3.0 (0 % - 0/23)\r\nv3.1 (0 % - 0/8)\r\nv3.2 (0 % - 0/10)\r\nv3.3 (0 % - 0/10)\r\nv4.0 (0 % - 0/14)\r\nv4.1 (0 % - 0/7)\r\nv4.2 (0 % - 0/12)\r\n\r\nOpenGL driver version check (Current: 1.5.0 - Build 7.14.10.1244, Latest known: ):\r\nLatest version of display drivers found\r\nAccording the database, you are running the latest display drivers for your video card.\r\n\r\nNo ICD registry entry\r\nThe current OpenGL driver doesn't expose the SOFTWARE/Microsoft/Windows (NT)/CurrentVersion/OpenGLDrivers registry entry. Unable to detect the driver version, driver revision name and filename.\r\n\r\nCompiled vertex array support\r\nThis feature improves OpenGL performance by using video memory to cache transformed vertices.\r\n\r\nMultitexture support\r\nThis feature accelerates complex rendering such as lightmaps or environment mapping.\r\n\r\nSecondary color support\r\nThis feature provides an alternate method of coloring specular highlights on polygons.\r\n\r\nS3TC compression support\r\nThis feature improves texture mapping performance in some applications by using lossy compression.\r\n\r\nTexture edge clamp support\r\nThis feature improves texturing quality by adding clamping control to edge texel filtering.\r\n\r\nVertex program support\r\nThis feature enables a wide variety of effects via flexible vertex programming (equivalent to DX8 Vertex Shader.)\r\n\r\nFragment program support\r\nThis feature enables a wide variety of effects via per pixel programming (equivalent to DX9 Pixel Shader.)\r\n\r\nTexture anisotropic filtering support\r\nThis feature improves the quality of texture mapping on oblique surfaces.\r\n\r\nOcclusion test support\r\nThis feature provides hardware accelerated culling for objects.\r\n\r\nNo OpenGL Shading Language support\r\nThis may break compatibility for applications using per pixel shading.\r\n\r\nNo Frame buffer object support\r\nThis may break compatibility for applications using render to texture functions.\r\n\r\nDisabling ArbTex will work for me, but I thought others might have the same problem with 007.\r\n\r\n- Rob","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/771","comments":3,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":771,"html_url":"https://github.com/openframeworks/openFrameworks/issues/771","assignee":null,"title":"Textures Didn't Work in 007 on my Laptop, Had to Disable ArbTex","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2011-10-11T13:02:28Z","state":"open","user":{"url":"https://api.github.com/users/robgonsalves","gravatar_id":"7c2e18ac17a0b907dbac36aaa6a9ec0f","login":"robgonsalves","avatar_url":"https://secure.gravatar.com/avatar/7c2e18ac17a0b907dbac36aaa6a9ec0f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1119357},"id":1874373,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-24T15:27:29Z","body":"When integrating openFrameworks into existing build systems, it would make things easier if this common include convention was followed.\r\n\r\ni.e. to include openFrameworks headers in my own build, because all the includes look like:\r\n\r\n#include \"ofMesh.h\"\r\n#include \"ofAppGlutWindow.h\"\r\n#include \"ofSerial.h\"\r\n\r\nI have to add all these paths to my include paths:\r\n\r\n\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/app\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/3d\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/communication\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/gl\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/graphics\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/utils\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/types\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/math\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/events\r\n\r\n\r\n\r\nIt is common to instead structure files like (in the case of openFrameworks):\r\n\r\noF/include/oF\r\noF/include/oF/app\r\noF/include/oF/3d\r\noF/include/oF/communication\r\noF/include/oF/gl\r\noF/include/oF/graphics\r\n...etc...\r\n\r\nand just write:\r\n\r\n#include \r\n#include \r\n\r\netc.\r\n\r\nI'm not sure if there is an argument to leave it like it is because it's easier for oF's demographic? But I would say teaching the some_lib/include/some_lib/ convention would help people use more C++.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/767","comments":2,"milestone":null,"number":767,"html_url":"https://github.com/openframeworks/openFrameworks/issues/767","assignee":null,"title":"#include instead of #include ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-10-09T03:58:30Z","state":"open","user":{"url":"https://api.github.com/users/gimlids","gravatar_id":"cc4cace34c61103f0624002a692820f7","login":"gimlids","avatar_url":"https://secure.gravatar.com/avatar/cc4cace34c61103f0624002a692820f7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":186277},"id":1854874,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-12T13:12:02Z","body":"\r\nat the moment, ofNode has a draw function that has awkwardly hard coded sizes: \r\n\r\nvirtual void customDraw() {\r\n\t\tofBox(10);\r\n\t\tofDrawAxis(20);\r\n\t}\r\n\r\nI'd like a draw(size) option. obviously I can extend ofNode and create my own functions, but if I just draw a node, I might want to adjust the size internally, as the \"10\" and \"20\" might not make any sense based on where I am drawing, for example here: \r\n\r\nhttp://imgur.com/idWPp\r\n\r\nlooks quite weird, but at 1/10th the size would look ok. \r\n\r\nas most other OF objects have draw(size) options, I think ofNodeShould have this too. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/766","comments":4,"milestone":null,"number":766,"html_url":"https://github.com/openframeworks/openFrameworks/issues/766","assignee":null,"title":"ofNode should have a draw(float size) option","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-08T09:38:46Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":1851779,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T23:51:04Z","body":"edit: originally this issue was about adding glu functions. now i realize any remaining ones need to be removed. but it's still relevant to have an ofScreenToWorld and ofWorldToScreen. \r\n\r\nthis would be really awesome. there is already some code in ofDrawBitmapString that's using gluProject, it would be good to clean it up.\r\n\r\nthe main issue is that glu is not on iOS, so we'd need to find/write our own implementation.\r\n\r\nhere's a first pass:\r\n\r\n\tGLdouble modelviewMatrix[16], projectionMatrix[16];\r\n\tGLint viewport[4];\r\n\tvoid updateProjectionState() {\r\n\t\tglGetDoublev(GL_MODELVIEW_MATRIX, modelviewMatrix);\r\n\t\tglGetDoublev(GL_PROJECTION_MATRIX, projectionMatrix);\r\n\t\tglGetIntegerv(GL_VIEWPORT, viewport);\r\n\t}\r\n\r\n\tofVec3f ofWorldToScreen(ofVec3f world) {\r\n\t\tupdateProjectionState();\r\n\t\tGLdouble x, y, z;\r\n\t\tgluProject(world.x, world.y, world.z, modelviewMatrix, projectionMatrix, viewport, &x, &y, &z);\r\n\t\tofVec3f screen(x, y, z);\r\n\t\tscreen.y = ofGetHeight() - screen.y;\r\n\t\treturn screen;\r\n\t}\r\n\r\n\tofVec3f ofScreenToWorld(ofVec3f screen) {\r\n\t\tupdateProjectionState();\r\n\t\tGLdouble x, y, z;\r\n\t\tscreen.y = ofGetHeight() - screen.y;\r\n\t\tgluUnProject(screen.x, screen.y, screen.z, modelviewMatrix, projectionMatrix, viewport, &x, &y, &z);\r\n\t\tofVec3f world(x, y, z);\r\n\t\treturn world;\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/765","comments":4,"milestone":null,"number":765,"html_url":"https://github.com/openframeworks/openFrameworks/issues/765","assignee":null,"title":"remove gluProject and gluUnProject, add screenToWorld, worldToScreen","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-07T09:46:06Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1841802,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T06:02:37Z","body":"I made an app using the preRelease version 007, I have a gui view with a bunch of buttons and sliders this view is 1/3 of the screen size and sits at the bottom, it is an Universal app that allows any orientation on the iPad and supports Portrait only for the iPhone / iPod Touch, here is my problem I need to allow touches to pass through the gui view for this I use **[ofxiPhoneGetGLView() addSubview:guiViewController.view];** the problem this method is that the gui view does not call the **willAnimateRotationToInterfaceOrientation()** at launch, and I get the following message in the console\r\n_**Action connections from <UIView: 0x5b88d0; frame = (20 0; 280 320); autoresize = LM+RM+H; layer = <CALayer: 0x5b7d30>> are not supported.**_\r\n\r\n if I use **[ofxiPhoneGetUIWindow() addSubview:guiViewController.view];** the **willAnimateRotationToInterfaceOrientation()** method works at launch as expected and the gui view adjust itself to the correct position and size\r\n\r\nAny help will be much appreciated","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/764","comments":1,"milestone":null,"number":764,"html_url":"https://github.com/openframeworks/openFrameworks/issues/764","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"Autoresize problem in iOS","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-10-05T20:35:04Z","state":"open","user":{"url":"https://api.github.com/users/nardove","gravatar_id":"8022cb5f529975afbc64cc9312008d8c","login":"nardove","avatar_url":"https://secure.gravatar.com/avatar/8022cb5f529975afbc64cc9312008d8c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":277690},"id":1827792,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-28T01:00:34Z","body":"ofxXmlXettings uses TinyXML which gives you lots of useful error info like what line the error is on as well as what it has trouble reading. This is super awesome and useful to people like me who always mistype xml here and there.\r\n\r\nCurrently ofxXmlSettings::loadFile only returns a bool and you're left to figure out if it's a path issue, bad xml formatting, etc. At the least, we should be able to grab an error string.\r\n\r\nHere's how to do it:\r\n
    \r\nstd::string Xml::getErrorString(const TiXmlDocument* xmlDoc)\r\n{\r\n    if(xmlDoc == NULL)\r\n        return \"\";\r\n\r\n    std::stringstream error;\r\n    error << \"line \" <<  xmlDoc->ErrorRow() << \", \" << (std::string) xmlDoc->ErrorDesc();\r\n    return error.str();\r\n}\r\n
    ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/760","comments":1,"milestone":null,"number":760,"html_url":"https://github.com/openframeworks/openFrameworks/issues/760","assignee":null,"title":"ofxXmlSettings does not print any useful error messages","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-09-28T00:53:09Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":1758237,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T03:48:47Z","body":"This would be the best thing ever. \r\n\r\nstring ipAddr = ofxXmlSettings::readValueFromFile(\"data.xml\", \"ip\", \"127.0.0.1\"); \r\n\r\nofxXmlSettings::saveValueToFile(\"data.xml\", \"ip\", ipAddr); ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/758","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":758,"html_url":"https://github.com/openframeworks/openFrameworks/issues/758","assignee":null,"title":"non ofxXmlSettings object read and write value","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-09-26T11:54:06Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":1738864,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-25T13:22:59Z","body":"in my opinion, it would make sense for ofPixels::allocate to initialize the new memory to 0. even for large images, i don't think this is such an expensive operation.\r\n\r\ni discovered that it is not initialized to 0 when i had a really weird bug -- some code that gave me different results depending on whether i loaded another image before allocating or not. i was expecting OF to act like opencv, which also sets new memory to 0. this would be in line with ofVec*, ofColor, and a few other things, which are all allocated to 0.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/757","comments":0,"milestone":null,"number":757,"html_url":"https://github.com/openframeworks/openFrameworks/issues/757","assignee":null,"title":"ofPixels::allocate should init new memory","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-09-25T13:22:59Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1733504,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-22T08:20:27Z","body":"void ofFbo::end() {\r\n\tunbind();\r\n\tif(ofGetGLRenderer()){\r\n\t\tofGetGLRenderer()->setCurrentFBO(NULL);\r\n\t}\r\n\tofPopView();\r\n}\r\n\r\nthis will go wrong if nested fbo as following\r\n\r\nfbo1.begin();\r\n...\r\n fbo2.begin();\r\n ...\r\n fbo2.end();\r\n...\r\nfbo1.end();\r\n\r\nso probably the current fbo must not be set NULL\r\n\r\nerror show's in\r\nvoid ofGLRenderer::viewport(float x, float y, float width, float height, bool invertY) {\r\n\tif(width == 0) width = ofGetWindowWidth();\r\n\tif(height == 0) height = ofGetWindowHeight();\r\n\r\n\tif (invertY){\r\n\t\tif(currentFbo){\r\n\t\t\ty = currentFbo->getHeight() - (y + height);\r\n\t\t}else{\r\n\t\t\ty = ofGetWindowHeight() - (y + height);\r\n\t\t}\r\n\t}\r\n\tglViewport(x, y, width, height);\t\r\n}\r\nthe 'y' will computing wrong when current height is wrong\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/754","comments":0,"milestone":null,"number":754,"html_url":"https://github.com/openframeworks/openFrameworks/issues/754","assignee":null,"title":"nested fbo causing currentFBO lost","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-09-22T08:20:27Z","state":"open","user":{"url":"https://api.github.com/users/liquidzym","gravatar_id":"166640c513e589c86d2de49c52258eb4","login":"liquidzym","avatar_url":"https://secure.gravatar.com/avatar/166640c513e589c86d2de49c52258eb4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":51957},"id":1708332,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:38:03Z","body":"I found an issue with readToPixels() on iOS that works as expected when compiled for OSX. \r\n\r\nInitialize an FBO:\r\n\r\n   ofFbo::Settings settings;\r\n    settings.width = 1024;\r\n    settings.height = 1024;\r\n    settings.internalformat = GL_RGB;\r\n    settings.numSamples = 0;\r\n    settings.useDepth = false;\r\n    settings.useStencil = false;\r\n    screenFBO.allocate(settings);\r\n\r\nthen draw into the FBO and attempt to retrieve the pixels:\r\n\r\n ofPixels pixels; \r\n screenFBO.readToPixels(pixels); \r\n\r\nThis gives me the ofPixels I'm expecting in OSX, in iOS the pixels aren't populated. I can draw the FBO and see it on screen, I just can't get the pixels out of the texture in iOS.\r\n\r\nThis seems to be related to this portion of readToPixels() from ofFbo.cpp:\r\n\r\n bind(); \r\n int format,type; \r\n ofGetGlFormatAndType(settings.internalformat,format,type); \r\n glReadPixels(0,0,settings.width, settings.height, format, GL_UNSIGNED_BYTE, pixels.getPixels()); \r\n unbind(); \r\n\r\nHas anyone experienced this issue – any fixes?\r\n\r\nThanks,\r\nSteve","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/753","comments":1,"milestone":null,"number":753,"html_url":"https://github.com/openframeworks/openFrameworks/issues/753","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"ofFbo readToPixels() in iOS","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-09-21T20:50:33Z","state":"open","user":{"url":"https://api.github.com/users/stephen-baker","gravatar_id":"96e9ae469240e57fc3ebeed6769c7016","login":"stephen-baker","avatar_url":"https://secure.gravatar.com/avatar/96e9ae469240e57fc3ebeed6769c7016?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1047836},"id":1704855,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-21T10:37:20Z","body":"I'm having a problem with creating an image out of ofFbo pixels with some image and fbo sizes\r\n\r\n```c++\r\nvoid testApp::setup(){\r\n\r\n ofSetLogLevel(OF_LOG_VERBOSE);\r\n\tofSetVerticalSync(false);\r\n ofBackground(34, 34, 34);\r\n\tofEnableAlphaBlending();\r\n\r\n ofSetWindowShape(1024, ofGetScreenHeight()-70);\r\n ofSetFrameRate(60);\r\n\r\n frame.loadImage(\"lay.png\");\r\n \r\n imageHeight = 1172;\r\n imageWidth = 1182;\r\n\r\n mergeFbo.allocate(imageWidth, imageHeight, GL_RGB);\r\n\r\n final.setImageType(OF_IMAGE_COLOR);\r\n\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::draw(){\r\n\r\n ofEnableAlphaBlending();\r\n\r\n mergeFbo.begin();\r\n\r\n ofClear(0, 0, 0, 1);\r\n\r\n frame.draw(0, 0);\r\n\r\n mergeFbo.end();\r\n\r\n\r\n mergeFbo.draw(200, 100, 100, 200);\r\n \r\n \r\n mergeFbo.readToPixels(pixels);\r\n final.setFromPixels(pixels);\r\n\r\n final.draw(0, 0);\r\n\r\n}\r\n```","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/752","comments":1,"milestone":null,"number":752,"html_url":"https://github.com/openframeworks/openFrameworks/issues/752","assignee":null,"title":"ofFbo (problems with certain image dimensions)","labels":[],"closed_at":null,"created_at":"2011-09-20T21:16:24Z","state":"open","user":{"url":"https://api.github.com/users/ammalgamma","gravatar_id":"96b69749f518cf6a2964b999bf29ee8e","login":"ammalgamma","avatar_url":"https://secure.gravatar.com/avatar/96b69749f518cf6a2964b999bf29ee8e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":517000},"id":1691874,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-19T09:04:12Z","body":"feature request for a more generic ofJoin() function that accepts vectors of all kinds of objects (float, int, ofVec2f, etc) rather than just string. anything that implements operator<<\r\n\r\nhere's an example using stl:\r\n\r\n\t#include \r\n\ttemplate \r\n\tstring ofJoin(vector& elements, string delimiter) {\r\n\t\tstringstream result;\r\n\t\tcopy(elements.begin(), elements.end(), ostream_iterator(result, delimiter.c_str()));\r\n\t\treturn result.str();\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/748","comments":3,"milestone":null,"number":748,"html_url":"https://github.com/openframeworks/openFrameworks/issues/748","assignee":null,"title":"more generic ofJoin","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-09-17T07:26:18Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1668066,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-21T17:22:14Z","body":"\r\nI'm looking into creating some new primitives for OF [1] and the polygon winding has me a bit confused.\r\n\r\nIf you take for instance \"graphicsExample\" an you add:\r\n\r\n```glEnable( GL_CULL_FACE );```\r\n\r\nSomewhere you will no longer see much drawn to screen.\r\n\r\nGL_CCW is the default FrontFace for OpenGL, but OF seems to be the opposite.\r\nhttp://www.khronos.org/opengles/sdk/docs/man/xhtml/glFrontFace.xml\r\n\r\nWhich is coolio of course, as long as we are consistent.\r\n\r\nOur options are either to throw a ```glFrontFace( GL_CW );``` in there somewhere OR re-write all the drawing to be consistent with OpenGL default, not sure what is the best in the long run.\r\n\r\nWhat say you all?\r\n\r\n/A\r\n\r\n\r\n[1] https://github.com/andreasmuller/openFrameworks/blob/develop-opengles2/libs/openFrameworks/3d/of3dPrimitives.h","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/745","comments":2,"milestone":null,"number":745,"html_url":"https://github.com/openframeworks/openFrameworks/issues/745","assignee":null,"title":"Polygon winding","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-09-14T13:50:48Z","state":"open","user":{"url":"https://api.github.com/users/andreasmuller","gravatar_id":"210831a04d36f1aa26413ecbdbd4b07c","login":"andreasmuller","avatar_url":"https://secure.gravatar.com/avatar/210831a04d36f1aa26413ecbdbd4b07c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":791114},"id":1643672,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=8 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4936'), ('content-length', '42586'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"1f6749765d79f3319834dfda4c27cd5e"'), ('date', 'Tue, 29 May 2012 19:27:17 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-03-17T16:52:58Z","body":"i think it would be wonderful if every OF example was named ofApp instead of testApp. especially because:\r\n\r\n\tclass ofApp : public ofBaseApp {\r\n\r\nis more natural than:\r\n\r\n\tclass testApp : public ofBaseApp {\r\n\r\ngiven the rest of OF naming conventions. and it would increase consistency with things like:\r\n\r\n\tofGetAppPtr();\r\n\tofAppBaseWindow\r\n\tofAppGlutWindow\r\n\r\nthis is a massive refactor that shouldn't be difficult, but should be done at the same time as something like a code formatting cleanup.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/744","comments":10,"milestone":null,"number":744,"html_url":"https://github.com/openframeworks/openFrameworks/issues/744","assignee":null,"title":"rename testApp to ofApp","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-09-14T07:02:36Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1641198,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-26T11:56:48Z","body":"calling ofEnableAlphaBlending() crashes my app on a machine with opengl version 1.1.0, because glBlendEquation(), introduced at opengl 1.3, needs to gracefully degrade. Here is the solution:\r\n\r\n
    \r\nvoid ofEnableAlphaBlending_slightlySafer(void){\r\n\tconst GLubyte * version = glGetString(GL_VERSION);\r\n\tint major, minor;\r\n\tsscanf((const char*)version, \"%i.%i\",&major, &minor);\r\n\r\n\tif(major > 1 || (major==1 && minor>=3)){\r\n\t\tofEnableAlphaBlending();\r\n\t}\t\r\n}\r\n
    ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/743","comments":1,"milestone":null,"number":743,"html_url":"https://github.com/openframeworks/openFrameworks/issues/743","assignee":null,"title":"seg fault on ofEnableAlphaBlending() -> glBlendEquation()","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-09-13T22:53:55Z","state":"open","user":{"url":"https://api.github.com/users/jtnimoy","gravatar_id":"153ba4a8df491692b717daad7a6030be","login":"jtnimoy","avatar_url":"https://secure.gravatar.com/avatar/153ba4a8df491692b717daad7a6030be?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":183796},"id":1639020,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:39:00Z","body":"In ofxiPhoneAppDelegate.mm in the setAnimationFrameInterval method should be changed from\r\n\r\n\r\nif (animating){\r\n [self stopAnimation];\r\n [self startAnimation];\r\n}\r\n\r\nto\r\n\r\nif (animating){\r\n [self stopAnimation];\r\n}\r\n [self startAnimation];\r\n\r\nThis will allow it start again if it's stopped.\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/738","comments":0,"milestone":null,"number":738,"html_url":"https://github.com/openframeworks/openFrameworks/issues/738","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"ofxiPhone - setting ofSetFrameRate(0) and then back to > 0 doesn't start again","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-09-12T21:23:04Z","state":"open","user":{"url":"https://api.github.com/users/cerupcat","gravatar_id":"91b3d4bfbbb99d840b096cde3af877bf","login":"cerupcat","avatar_url":"https://secure.gravatar.com/avatar/91b3d4bfbbb99d840b096cde3af877bf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":204151},"id":1628082,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T22:55:09Z","body":"it would be awesome to have lines drawn nicer when they are 1 thick and 2 make sharp edges. processing has some functions strokeCap() and strokeJoin() for setting this behavior, but it doesn't work with OPENGL mode. we could probably adapt a geometry shader to do some smart mitering for us on the GPU.\r\n\r\nprompted by the discussion here: http://forum.openframeworks.cc/index.php/topic,7278.0/topicseen.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/730","comments":1,"milestone":null,"number":730,"html_url":"https://github.com/openframeworks/openFrameworks/issues/730","assignee":null,"title":"nicer stroke mitering/joining and end caps","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-09-07T03:27:13Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1586262,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-05T15:39:58Z","body":"ofColor_:operator+= currently calls clamp() when it's done doing the +=\r\n\r\ni imagined one of the applications of ofFloatColor would be for averaging or summing ofColor, which normally requires non-saturation semantics for +=. i could also do a / or * every += operation to avoid overflow. this doesn't have to be a bug, but it should at least be documented clearly when we discuss ofColor.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/728","comments":1,"milestone":null,"number":728,"html_url":"https://github.com/openframeworks/openFrameworks/issues/728","assignee":null,"title":"ofColor and clamping","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-09-05T14:41:50Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1569364,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-05T10:17:48Z","body":"Hello\r\n\r\nI had a problem with gamma for my Carbon app in OSX 10.6, UI looked \"blotched\" with Pappis' help it was solved, here are details:\r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,6404.msg30519.html#msg30519\r\n\r\nHowever, the trick with HIWindowSetColorSpace does not work in OSX 10.7 Lion\r\nLooking for solutions again\r\n\r\nThanks\r\nTom\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/727","comments":0,"milestone":null,"number":727,"html_url":"https://github.com/openframeworks/openFrameworks/issues/727","assignee":null,"title":"OSX 10.7 Gamma Problem","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2011-09-05T10:17:48Z","state":"open","user":{"url":"https://api.github.com/users/Tommato","gravatar_id":"95bbfbd39116dffe06be4d816f322bf0","login":"Tommato","avatar_url":"https://secure.gravatar.com/avatar/95bbfbd39116dffe06be4d816f322bf0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1027082},"id":1566286,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-26T18:44:30Z","body":"Related forum post: http://forum.openframeworks.cc/index.php/topic,7053.0.html\r\n\r\nFrom what I understand, it's best to leave the mainThread for UIKit elements and move openGL and other things to another thread. Currently, if there's a lot of drawing then the UIKit elements are delayed and can even pause the update/draw methods entirely. Moving the drawing to it's own thread should help with this.\r\n\r\nI'm still testing, but this looks like it could be a good candidate for core integration. It has examples of threaded, single (what we currently use), and GCD (which I think is iOS 4.0 only) openGL implementation: https://github.com/Volcore/LimbicGL In my early tests, it does fix any pausing of the update/draw with the threaded example (haven't tried the others). I could use some help though trying to integrate this into OF properly.\r\n\r\nThe main example classes are here: https://github.com/Volcore/LimbicGL/tree/master/limbicgl/drivers\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/721","comments":0,"milestone":null,"number":721,"html_url":"https://github.com/openframeworks/openFrameworks/issues/721","assignee":null,"title":"ofxiPhone - Move openGL to its own thread","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-08-26T18:43:09Z","state":"open","user":{"url":"https://api.github.com/users/cerupcat","gravatar_id":"91b3d4bfbbb99d840b096cde3af877bf","login":"cerupcat","avatar_url":"https://secure.gravatar.com/avatar/91b3d4bfbbb99d840b096cde3af877bf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":204151},"id":1497330,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:39:39Z","body":"The libraries linked in 007 as well as the new AVFoundationVideoPlayer is not compatible with 3.x devices and won't build.\r\n\r\nAfter further exploring, I believe these are the steps to get things running on 3.x devices.\r\n\r\n1) In Xcode, Click on target -> application name\r\n2) In the File Name window, set AVFoundation, CoreMedia, and CoreVideo from role \"required\" to \"weak\". They need to be weak linked since they're only available in iOS 4+.\r\n3) In ofxiPhone src folder, AVFoundationVideoPlayer.mm uses CMBlockBufferRef and that is only available in iOS4. This means, this function should be commented out (sorry - avfoundationvideoplayer won't run on iOS4 unless the blocker is changed). Either that or you can comment ouf AVFoundationVideoPlayer from being included in OF.\r\n4) Clean all targets and rebuild","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/720","comments":0,"milestone":null,"number":720,"html_url":"https://github.com/openframeworks/openFrameworks/issues/720","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"007 ofxiPhone not compatible with 3.x devices ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-08-26T18:38:38Z","state":"open","user":{"url":"https://api.github.com/users/cerupcat","gravatar_id":"91b3d4bfbbb99d840b096cde3af877bf","login":"cerupcat","avatar_url":"https://secure.gravatar.com/avatar/91b3d4bfbbb99d840b096cde3af877bf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":204151},"id":1497291,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-22T17:38:49Z","body":"\r\nbased on this comment, \r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,5319.msg33381.html#msg33381\r\n\r\nI wonder if we can be smarter in endShape() / ofPath::tessellate() and look for simple usage (3 or 4 points, etc) before tessellating, or if the slow down is just based on the use of the ofPath object. \r\n\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/719","comments":1,"milestone":null,"number":719,"html_url":"https://github.com/openframeworks/openFrameworks/issues/719","assignee":null,"title":"optimize ofEndShape() to deal with simple shapes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-08-22T16:56:27Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":1459353,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-22T16:02:30Z","body":"change\r\n\r\nfloat ofCamera::getImagePlaneDistance(ofRectangle viewport) const {\r\n\treturn getPosition().length(); //viewport.height / (2.0f * tanf(PI * fov / 360.0f));\r\n}\r\n\r\nold in comment\r\n\r\ncurrent system is abitrary\r\nsuggest new system is more sensible\r\n(i'm always working in normalised coords)\r\npls check in your life before changing :)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/717","comments":0,"milestone":null,"number":717,"html_url":"https://github.com/openframeworks/openFrameworks/issues/717","assignee":null,"title":"suggest new calc clip planes routine","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-08-22T16:02:30Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":1458979,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-22T14:11:34Z","body":"http://forum.openframeworks.cc/index.php/topic,5222.msg33366.html#msg33366\r\n\r\nthere also seem to be a memory leak, when deleting a ofQuicktimeVideoPlayer","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/716","comments":0,"milestone":null,"number":716,"html_url":"https://github.com/openframeworks/openFrameworks/issues/716","assignee":null,"title":"problems with stop/play in quicktime videoPlayer","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-08-22T14:11:34Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":1458044,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-16T13:39:49Z","body":"Here\r\nhttps://github.com/openframeworks/openFrameworks/issues/653\r\nI downloaded latest version but in still crashes on my old video card Nvidia GeForce Go 7200.\r\nAny idea why?\r\nofxFBOTexture works, but i got some trobles in pixel format there. \r\nofxFBOTexture uses function with postfix EXT sometimes? ofFbo without it.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/711","comments":5,"milestone":null,"number":711,"html_url":"https://github.com/openframeworks/openFrameworks/issues/711","assignee":null,"title":"Problem with ofFbo. Crashes on allocate.There were the same issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-08-16T10:21:29Z","state":"open","user":{"url":"https://api.github.com/users/IonRod","gravatar_id":"cf3cb346817dd8a9f8327d1af13c3d46","login":"IonRod","avatar_url":"https://secure.gravatar.com/avatar/cf3cb346817dd8a9f8327d1af13c3d46?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":886012},"id":1414013,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-15T14:23:47Z","body":"i'm noticing this on osx 10.6. all 8-bit images are correct, but somehow i didn't notice about unsigned short and float until now!\r\n\r\ni'm super busy atm, but i've kind of been maintaining the unsigned short/float loading so i'll look into this if someone else doesn't get to it first.\r\n\r\nmeanwhile it would be good to see if it's the same on windows or not. for anyone interested in testing, please check devApps/AdvancedImageLoading and compare the results of the app to the .exr opened in photoshop.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/710","comments":0,"milestone":null,"number":710,"html_url":"https://github.com/openframeworks/openFrameworks/issues/710","assignee":null,"title":"16-bit and 32-bit images are red/blue swapped","labels":[],"closed_at":null,"created_at":"2011-08-15T14:23:47Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1407813,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-07T12:19:07Z","body":"in the past there has been ofxQtVideoSaver and a few others. i think this is a really hard problem because it basically needs to be written for each platform, but something that should eventually be solved.\r\n\r\ntwo major use cases i know are:\r\n\r\n- capturing and saving simultaneously, for long streams\r\n- capturing a quick burst of video then saving it to disk\r\n\r\nwhich would might be handled a little differently.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/702","comments":1,"milestone":null,"number":702,"html_url":"https://github.com/openframeworks/openFrameworks/issues/702","assignee":null,"title":"cross platform video saving (ofVideoSaver?)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-08-07T03:23:38Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1359729,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-06T20:20:03Z","body":"Hi!\r\n\r\nI have problems even getting the ofxOsc Send/Receive examples talking on Ubuntu 11.04 64bit. \r\nThey compile without problems, but sometimes when I run them, communication fails somewhere along the road - input events are not shown in the receiver app. Sometimes it does not work at all.\r\n\r\nThis works all flawlessly on 32bit Ubuntu 11.04. See http://forum.openframeworks.cc/index.php/topic,6918.0.html for more details.\r\n\r\nCan anyone reproduce these problems? Any tips? How could I debug this?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/701","comments":3,"milestone":null,"number":701,"html_url":"https://github.com/openframeworks/openFrameworks/issues/701","assignee":null,"title":"ofxOsc does not seem to work on 64bit Ubuntu","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2011-08-06T19:14:37Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":1358688,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-05T03:06:25Z","body":"very simple but helpful feature request. e.g.,\r\n\r\nofBuffer::operator=(const ofBuffer& mom) {\r\n set(mom.getBinaryBuffer(), mom.size());\r\n}\r\n\r\nthis goes along with the general \"what does the equal operator mean\" debate/discussion :)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/700","comments":0,"milestone":null,"number":700,"html_url":"https://github.com/openframeworks/openFrameworks/issues/700","assignee":null,"title":"ofBuffer with overloaded = operator","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-08-05T03:06:25Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1349012,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T15:11:28Z","body":"this seems like an api inconsistency to me: i feel like ofTexture::loadData() is similar to ofImage::setFromPixels(), but setFromPixels() will allocate space if necessary while loadData() just prints an error if the data is larger than the allocated space.\r\n\r\ni think auto-allocation would be nice, but i might just be misunderstanding/making a false comparison here.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/699","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":699,"html_url":"https://github.com/openframeworks/openFrameworks/issues/699","assignee":null,"title":"loadData() does not allocate as necessary","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-08-04T10:29:57Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1343463,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T15:12:03Z","body":"from: http://forum.openframeworks.cc/index.php/topic,6952.msg32509.html\r\n\r\n\r\n\r\ngetBmpFromPixels() crashed repeatedly when I tried to rescale grayscale Images of size 3026*2048.\r\n\r\nIt's because memcpy overshoots the src pixel array because dstStride can be larger than srcStride.\r\n\r\nIn ofImage.cpp \r\n\r\ngetBmpFromPixels()\r\n\r\naround line 119, I believe, it should read:\r\n\r\nCode:\r\nview plaincopy to clipboardprint?\r\n... \r\n int srcStride = width * pix.getBytesPerPixel(); \r\n int dstStride = FreeImage_GetPitch(bmp); \r\n unsigned char* src = (unsigned char*) pixels; \r\n unsigned char* dst = bmpBits; \r\n for(int i = 0; i < (int)height; i++) { \r\n // memcpy(dst, src, dstStride); \r\n memcpy(dst, src, srcStride); // did overshoot with e.g. grayscale img of size 3026*2048 \r\n src += srcStride; \r\n dst += dstStride; \r\n } \r\n... \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/698","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":698,"html_url":"https://github.com/openframeworks/openFrameworks/issues/698","assignee":null,"title":"getBmpFromPixels memcpy issue / ofImage::resize issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-08-03T18:15:55Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":1339116,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-21T15:34:07Z","body":"I'm trying to build ofxPd in Visual Studio and running into multiple define issues related to the videoinput lib, namely static `verbose`: https://github.com/openframeworks/openFrameworks/blob/master/libs/videoInput/include/videoInput.h#L115\r\n\r\nCouldn't this variable as well as `comInitCount` be moved to the implementation files? or at least in a header hidden from the global namespace? At the least, `verbose` could be renamed to something not so common ...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/697","comments":1,"milestone":null,"number":697,"html_url":"https://github.com/openframeworks/openFrameworks/issues/697","assignee":null,"title":"videoinput lib global statics","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-08-03T02:27:52Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":1334657,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T00:53:30Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/685","comments":3,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":685,"html_url":"https://github.com/openframeworks/openFrameworks/issues/685","assignee":null,"title":"update shader example to work on ati.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-07-28T15:57:58Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":1303812,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:40:42Z","body":"It is very annoying if you can not disable autocorrections in ofxiPhoneKeyboard. Specially for creative uses of this class. I add code how to add this feature.\r\n\r\n[CODE] Add to ofxiPhoneKeyboard class:\r\n\r\n- (void)disableAutoCorrection;\r\n- (void)enableAutoCorrection;\r\n\r\n//--------------------------------------------------------------\r\nvoid ofxiPhoneKeyboard::disableAutoCorrection()\r\n{\r\n [keyboard disableAutoCorrection];\r\n}\r\n//--------------------------------------------------------------\r\nvoid ofxiPhoneKeyboard::enableAutoCorrection()\r\n{\r\n [keyboard enableAutoCorrection];\r\n}\r\n\r\n- (void)disableAutoCorrection\r\n{\r\n _textField.autocorrectionType = UITextAutocorrectionTypeNo;\r\n}\r\n\r\n- (void)enableAutoCorrection\r\n{\r\n _textField.autocorrectionType = UITextAutocorrectionTypeYes;\r\n}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/684","comments":0,"milestone":null,"number":684,"html_url":"https://github.com/openframeworks/openFrameworks/issues/684","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"ofxiPhoneKeyboard should have disable/enable methods for auto correction","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-07-28T12:12:52Z","state":"open","user":{"url":"https://api.github.com/users/mcanet","gravatar_id":"e4d2b0151a843dde7b815b848170d6e9","login":"mcanet","avatar_url":"https://secure.gravatar.com/avatar/e4d2b0151a843dde7b815b848170d6e9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":308759},"id":1302375,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-24T18:26:54Z","body":"I think there's a bug in ofQuaternion in of007. When i use ofNode's setOrientation() or ofNode setRoll I can rotate my ofNode object around the Z axis. However when I try to obtain the current rotation around the Z axis it will always give a value like -180, 0 or 180.\r\n\r\nRick","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/679","comments":0,"milestone":null,"number":679,"html_url":"https://github.com/openframeworks/openFrameworks/issues/679","assignee":null,"title":"possible bug in getEuler / getOrientation / getRoll","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-24T18:26:54Z","state":"open","user":{"url":"https://api.github.com/users/companje","gravatar_id":"30a7e135fe77636519d74d129c60e156","login":"companje","avatar_url":"https://secure.gravatar.com/avatar/30a7e135fe77636519d74d129c60e156?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":156066},"id":1278252,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T22:13:24Z","body":"I know that with the 007 release ofxDirList addon is deprecated and instead we are encouraged to use ofDirectory to achiece the same kind of functionality. In fact the are so similar that is possible to use them interchangeably. To do that transparently you changed the ofxDirList.h so that it made a typedef to point to ofDirectory (and will probably remove it completely someday).\r\n\r\nThe contents of ofxDirList.h are the following:\r\n---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------\r\n#pragma once\r\n\r\n#include \"ofFileUtils.h\"\r\n\r\n#warning ofxDirList has been deprecated. \r\n#warning Remove all references to ofxDirList.h and use ofDirectory instead.\r\ntypedef ofDirectory ofxDirList;\r\n---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------\r\nSo far so good. The problem is that you use the #warning preprocessing directive is non-standard and unsupported on Visual C++ compiler. In fact it gives me an error while building a project that I ported from 0062 version that used ofxDirList. To make it work I had to comment the two #warning lines. \r\n\r\nI suggest that you remove the #warning directives and replace it with something else that works across all compilers. I know that the #warning directive works on GCC and MinGW but not on VC++ so if you are going to support all those compilers (like you do) you better have all of your code working across all of them.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/676","comments":2,"milestone":null,"number":676,"html_url":"https://github.com/openframeworks/openFrameworks/issues/676","assignee":null,"title":"ofxDirList deprecated #warning directive preprocessor Visual Studio 2010","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-23T01:19:54Z","state":"open","user":{"url":"https://api.github.com/users/petersaints","gravatar_id":"03848790c2ebb8e5edbe130e8ce76f1d","login":"petersaints","avatar_url":"https://secure.gravatar.com/avatar/03848790c2ebb8e5edbe130e8ce76f1d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157810},"id":1273716,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-21T11:29:24Z","body":"changed this in dirListExample\r\n\r\n ofFile testfile;\r\n\t// you can now iterate through the files and load them into the ofImage vector\r\n\tfor(int i = 0; i < (int)dir.size(); i++){\r\n\t\timages[i].loadImage(dir.getPath(i));\r\n\t\ttestfile.open(dir.getPath(i));\r\n\t\tcout << testfile.isFile() << endl; //THIS LINE SEGFAULTS ON WIN7\r\n testfile.close();\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/671","comments":0,"milestone":null,"number":671,"html_url":"https://github.com/openframeworks/openFrameworks/issues/671","assignee":null,"title":"isFile() segfaults on win7","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-07-21T11:27:16Z","state":"open","user":{"url":"https://api.github.com/users/benben","gravatar_id":"614a4e493d7c353296519bba720e77c5","login":"benben","avatar_url":"https://secure.gravatar.com/avatar/614a4e493d7c353296519bba720e77c5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":124513},"id":1262459,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-21T10:39:29Z","body":"just added output to all events in an emptyExample on windows7 64bit.\r\n\r\nif im clicking, the following output occurs even if the mouse is not moved\r\n\r\n mousePressed\r\n mouseReleased\r\n mouseMoved","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/670","comments":2,"milestone":null,"number":670,"html_url":"https://github.com/openframeworks/openFrameworks/issues/670","assignee":null,"title":"mouseReleased fires mouseMoved too (win7)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-07-21T09:34:52Z","state":"open","user":{"url":"https://api.github.com/users/benben","gravatar_id":"614a4e493d7c353296519bba720e77c5","login":"benben","avatar_url":"https://secure.gravatar.com/avatar/614a4e493d7c353296519bba720e77c5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":124513},"id":1261982,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=9 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4935'), ('content-length', '45016'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"c403779e3346f56dddb655b8bb57d5ae"'), ('date', 'Tue, 29 May 2012 19:27:18 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-03-09T06:11:12Z","body":"I'm curious why the movieplayer uses AvAsset instead of AvPlayer which seems better suited for OF needs ( seeking / looping etc ) \r\n\r\nhttp://developer.apple.com/library/ios/#documentation/AVFoundation/Reference/AVPlayer_Class/Reference/Reference.html\r\n\r\nhttp://stackoverflow.com/questions/5361145/looping-a-video-with-avfoundation-avplayer\r\n\r\n\r\nI think you can get init a player with an AVAsset:\r\nhttp://developer.apple.com/library/ios/#documentation/AVFoundation/Reference/AVPlayer_Class/Reference/Reference.html%23//apple_ref/occ/instm/AVPlayer/initWithPlayerItem:\r\nhttp://developer.apple.com/library/ios/documentation/AVFoundation/Reference/AVPlayerItem_Class/Reference/Reference.html#//apple_ref/occ/instm/AVPlayerItem/initWithAsset:\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/666","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":666,"html_url":"https://github.com/openframeworks/openFrameworks/issues/666","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"iphone video player should use AVPlayer ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-07-20T20:01:04Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":1258863,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-01-08T04:45:01Z","body":"In some cases, when modifier keys are used, the pressedKeys set will accumulate keys.\r\n\r\nThis happens because \"modifier-up\" messages are not sent in the same way as normal and special keys.\r\n\r\nTo test, watch the size of the pressedKeys:\r\n\r\n cout << pressedKeys.size() << \" num pressed keys \" << endl;\r\n\r\nPress a modifier key and a normal key -- say ctrl-a. If the 'a' is lifted first, then the modified-a key int is removed from the pressedKeys set. If CTRL is released before the 'a', then the non-modified-a key-up int is sent, and it is not erased from the pressedKeys set. If this is repeated with different modifier+key downs / ups the accumulation occurs.\r\n\r\nUltimately, there needs to be better handling of modifier keys. Perhaps there is a way to use the modifier masks keep track of modifier keys with a call to glutGetModifiers() in the keyboard_cb and keyboard_up_cb static methods?\r\n\r\nIt looks like progress has been made toward this in ofConstants.h\r\n\r\n\t#define OF_KEY_CTRL\t\t\t0x0200\r\n\t#define OF_KEY_ALT\t\t\t0x0300\r\n\t#define OF_KEY_SHIFT\t\t0x0400\r\n\r\nBut it seems to have stopped there.\r\n\r\nI'm happy to work on this -- any suggestions on a strategy? Perhaps this is already being addressed of 007?\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/652","comments":5,"milestone":null,"number":652,"html_url":"https://github.com/openframeworks/openFrameworks/issues/652","assignee":null,"title":"ofAppGlutWindow/ofEvents: pressedKeys accumulate in special cases","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-15T18:49:46Z","state":"open","user":{"url":"https://api.github.com/users/bakercp","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","login":"bakercp","avatar_url":"https://secure.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":300484},"id":1231959,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-20T19:04:31Z","body":"If you use those these two together the 3d objects get an unwanted offset\r\n\r\ncode:\r\n\r\n```c++\r\nvoid testApp::draw()\r\n{\r\n \r\n cam.begin();\r\n ofPushMatrix();\r\n ofSetColor(255,255,255);\r\n ofBox(200);\r\n ofPopMatrix();\r\n cam.end();\r\n \r\n \r\n fbo.begin();\r\n cam.begin();\r\n \r\n ofClear(0);\r\n ofPushMatrix();\r\n ofSetColor(0,0,0);\r\n ofBox(200);\r\n ofPopMatrix();\r\n \r\n cam.end();\r\n fbo.end();\r\n \r\n \r\n glPushMatrix();\r\n //ofTranslate(0,6,0); <--- now i'm using something like this to \"repair\" it\r\n ofSetColor(255,255,255,255);\r\n glScalef(1,-1,1);\r\n fbo.draw(0,- ofGetHeight());\r\n glPopMatrix();\r\n \r\n \r\n \r\n}\r\n```\r\n\r\nNormally the two boxes should overlap completely, instead it looks like this:\r\n\r\n![screen1](http://i51.tinypic.com/11cfi1l.png)\r\n![screen2](http://i55.tinypic.com/2ewnv5i.png)\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/651","comments":4,"milestone":null,"number":651,"html_url":"https://github.com/openframeworks/openFrameworks/issues/651","assignee":null,"title":"ofFBO + ofCamera = unwanted offset","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2011-07-15T13:21:44Z","state":"open","user":{"url":"https://api.github.com/users/toxin20","gravatar_id":"29a3b85e704ec06a72df8897a726920e","login":"toxin20","avatar_url":"https://secure.gravatar.com/avatar/29a3b85e704ec06a72df8897a726920e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":123776},"id":1230184,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-19T00:31:38Z","body":"\r\nA tiny issue I spotted:\r\n\r\nofQuaternion.cpp, line 14:\r\n\r\n```C++\r\n/// Set the elements of the Quat to represent a rotation of angle\r\n/// (radians) around the axis (x,y,z)\r\nvoid ofQuaternion::makeRotate( float angle, float x, float y, float z ) {\r\n\tangle = ofDegToRad(angle);\r\n```\r\n\r\nof**X**Quaternion::makeRotate used to take radians, only noticed as I was moving some old code over, otherwise I would have just looked at the code in ofQuaternion.cpp to see the angle type. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/646","comments":1,"milestone":null,"number":646,"html_url":"https://github.com/openframeworks/openFrameworks/issues/646","assignee":null,"title":"ofQuaternion::makeRotate takes degrees, used to take radians, documentation says radians","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"closed_at":null,"created_at":"2011-07-13T15:18:04Z","state":"open","user":{"url":"https://api.github.com/users/andreasmuller","gravatar_id":"210831a04d36f1aa26413ecbdbd4b07c","login":"andreasmuller","avatar_url":"https://secure.gravatar.com/avatar/210831a04d36f1aa26413ecbdbd4b07c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":791114},"id":1216274,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-12T16:05:23Z","body":"^^^^\r\nTried on Mac:\r\nhttps://gist.github.com/1078282","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/645","comments":0,"milestone":null,"number":645,"html_url":"https://github.com/openframeworks/openFrameworks/issues/645","assignee":null,"title":"ofVideoGrabber::listDevices() does not list devices when initGrabber not called","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-12T16:05:23Z","state":"open","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":358809},"id":1209436,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-16T04:21:18Z","body":"https://gist.github.com/1077933\r\n\r\nsaving images converted to 8PP using ofImage::setImageType(OF_IMAGE_GRAYSCALE) and then calling saveImage() save blank on windows, but works on OS X\r\n\r\ntraced the issue down to the call to FreeImage_Save(), both seem to be the same. not sure what the problem is\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/643","comments":1,"milestone":null,"number":643,"html_url":"https://github.com/openframeworks/openFrameworks/issues/643","assignee":null,"title":"8 BPP (grayscale) ofImage saves blank on Windows, fine on os x","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-07-12T13:05:25Z","state":"open","user":{"url":"https://api.github.com/users/obviousjim","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","login":"obviousjim","avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":321434},"id":1208289,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:42:09Z","body":"Forum issue: http://forum.openframeworks.cc/index.php/topic,6316.new.html#new\r\n\r\nThis may be related to using CADisplayLink. When openGL seems to be pushed a bit, touch events seem to drop or are delayed. When using NSTimer in ofxiPhoneAppDelegate instead of CADisplayLink this does not occur.\r\n\r\nIt may be beneficial for developers to set whether they'd like to use CADisplayLink (if available) vs NSTimer for rendering or not.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/642","comments":0,"milestone":null,"number":642,"html_url":"https://github.com/openframeworks/openFrameworks/issues/642","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"ofxiPhone: Possible delayed input/touch event issue ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-12T02:46:23Z","state":"open","user":{"url":"https://api.github.com/users/cerupcat","gravatar_id":"91b3d4bfbbb99d840b096cde3af877bf","login":"cerupcat","avatar_url":"https://secure.gravatar.com/avatar/91b3d4bfbbb99d840b096cde3af877bf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":204151},"id":1205789,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-12T13:03:00Z","body":"See title and test code:\r\nhttps://gist.github.com/952bd35591dc0cb23f61","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/631","comments":1,"milestone":null,"number":631,"html_url":"https://github.com/openframeworks/openFrameworks/issues/631","assignee":null,"title":"ofImage::saveImage() - saving from png to gif creates grayscale image","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-07T21:37:47Z","state":"open","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":358809},"id":1185346,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T03:48:47Z","body":"Tried to load a text file over https but I got this message:\r\n\r\n``400 The plain HTTP request was sent to HTTPS port\r\n

    400 Bad Request

    The plain HTTP request was sent to HTTPS port

    nginx/1.0.4
    ``\r\n\r\n\r\n\r\nUsing this code\r\n``ofHttpResponse resp = ofLoadURL(\"https://raw.github.com/openframeworks/openFrameworks/6af1dc980f6d93d84b3bf8fdc1b6435697be9ed9/readme.txt\");``\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/623","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":623,"html_url":"https://github.com/openframeworks/openFrameworks/issues/623","assignee":null,"title":"ofLoadURL() does not work with httpS","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-06T18:12:06Z","state":"open","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":358809},"id":1175654,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-06T18:09:03Z","body":"Setting the position of an ofEasyCam instance in ofSetup() does not work. What does work in testApp::setup() is calling ofEasyCam::setDistance(). When calling ofEasyCam::setPosition() in for example testApp::draw() does work.\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/618","comments":0,"milestone":null,"number":618,"html_url":"https://github.com/openframeworks/openFrameworks/issues/618","assignee":null,"title":"call ofEasyCam::setPosition in testApp::setup() is forgotten","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-05T18:23:34Z","state":"open","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":358809},"id":1169032,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-06-27T18:30:26Z","body":"Currently there doesn't appear to be any way to do this other than by hand\r\nAlso it would be highly useful ofMatrix3x3 in general had equivalent accessors to ofMatrix4x4","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/612","comments":0,"milestone":null,"number":612,"html_url":"https://github.com/openframeworks/openFrameworks/issues/612","assignee":null,"title":"need conversion ofMatrix3x3<->ofMatrix4x4","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-06-27T18:30:26Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":1124068,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-04T10:10:06Z","body":"Need some way of applying current ofMatrix4x4 to the scene without going down to gl calls","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/605","comments":4,"milestone":null,"number":605,"html_url":"https://github.com/openframeworks/openFrameworks/issues/605","assignee":null,"title":"function wrapping glMultMatrixf in ofMatrix4x4","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-06-16T13:13:35Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":1067300,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:42:59Z","body":"Here's a function that will do it...\r\n\r\nvoid ofxiPhoneLaunchBrowser(string url) {\r\n\t[[UIApplication sharedApplication] openURL:[NSURL URLWithString:ofxStringToNSString(url)]];\r\n}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/603","comments":0,"milestone":null,"number":603,"html_url":"https://github.com/openframeworks/openFrameworks/issues/603","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"ofLaunchBrowser() for iPhone not implemented","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-06-13T13:03:15Z","state":"open","user":{"url":"https://api.github.com/users/mazbox","gravatar_id":"3cfb19dbce7926933555ac9755a86ca8","login":"mazbox","avatar_url":"https://secure.gravatar.com/avatar/3cfb19dbce7926933555ac9755a86ca8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":194121},"id":1048971,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T21:38:43Z","body":"OF: OF_LOG_ERROR: ofxNetwork:/addons/ofxNetwork/src/ofxTCPManager.cpp: 157 ECONNREFUSED: the server has actively refused to establish the connection\r\n\r\nThis error happens in every use of ofxTCPClient.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/599","comments":1,"milestone":null,"number":599,"html_url":"https://github.com/openframeworks/openFrameworks/issues/599","assignee":null,"title":"TCPManager Consistent Error","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-06-08T23:02:28Z","state":"open","user":{"url":"https://api.github.com/users/tomorrowevening","gravatar_id":"f92a8e912b59171abde0354e2f212c12","login":"tomorrowevening","avatar_url":"https://secure.gravatar.com/avatar/f92a8e912b59171abde0354e2f212c12?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":626143},"id":1027184,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-06-01T13:56:17Z","body":"http://forum.openframeworks.cc/index.php/topic,6370.0.html\r\n\r\nwhen they are not power of 2 perhaps?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/591","comments":0,"milestone":null,"number":591,"html_url":"https://github.com/openframeworks/openFrameworks/issues/591","assignee":null,"title":"problem with ofImage resize","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-06-01T13:56:17Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":984564,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-05-31T12:33:31Z","body":"### ofxNetworkUtils.h - issue 1\n\nThe default message should print out `err` instead of `errno`\n\n```\n\tdefault:\n\t\tofLog(OF_LOG_ERROR,\"ofxNetwork:\"+file+\": \" +line+\" unknown error: \" + ofToString(errno) + \" see errno.h for description of the error\");\n\t\tbreak;\n```\n\nto:\n\n```\n\tdefault:\n\t\tofLog(OF_LOG_ERROR,\"ofxNetwork:\"+file+\": \" +line+\" unknown error: \" + ofToString(err) + \" see errno.h for description of the error\");\n\t\tbreak;\n```\n\nSince errno would not be set on windows machines.\n\n\n\n\n### ofxTCPManager.cpp - issue 2\n\nIn the `Receive` method of the `ofxTCPManager` the function will always return -1 when checking for data and there is no new data and the TCPServer has been set to non-blocking.\n\nAfter changing the code in issue 1 mentioned above i got:\n\n`ofxNetwork:addons\\ofxNetwork\\src\\ofxTCPManager.cpp: 304 unknown error: 10035 see errno.h for description of the error`\n\ninstead of `error: 0` when `errno`was used.\n\nWhich on windows is the [`WSAEWOULDBLOCK`](http://msdn.microsoft.com/en-us/library/ms740668.aspx) or `EWOULDBLOCK` as defined in `ofxNetworkUtils`\n\nSo someplace in the code there should be a mechanism to check if the code is client is non-blocking and ignore the error.\nThis is `windows` only but still could be as an additional parameter to the `Receive` method. Or add it as an `switch case` for the `EWOULDBLOCK` in the `ofxNetworkUtils` and ignore the ouput and comment it.\n\nI just noticed this above when i started usin an application that i was developing on my mac an using it on windows machines this code would appear too often.\n\nSo as stated above my solution is that i added:\n\n```\n #ifdef TARGET_WIN32 // otherwise EAGAIN & EWOULDBLOCK will create a \"duplicate case value\" on Non windows\n\tcase EWOULDBLOCK: \n\t\t// \tofLog(OF_LOG_VERBOSE,\"ofxNetwork:\"+file+\": \" +line+\" EWOULDBLOCK: perhaps non-blocking\");\n\t\tbreak;\n #endif\n```\ncode and ignoring the output.\n\n\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/590","comments":0,"milestone":null,"number":590,"html_url":"https://github.com/openframeworks/openFrameworks/issues/590","assignee":null,"title":"ofxTCPManager.receive() - EWOULDBLOCK on Windows","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-05-31T11:31:08Z","state":"open","user":{"url":"https://api.github.com/users/cristobal","gravatar_id":"c7f941e0c10696b758ae8792714a6744","login":"cristobal","avatar_url":"https://secure.gravatar.com/avatar/c7f941e0c10696b758ae8792714a6744?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":155505},"id":978212,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-05-31T02:06:22Z","body":"setFromPixels has two forms: one that takes an int channels, another that takes ofImageType.\r\n\r\nsetFromExternalPixels only has one form: it takes an int channels.\r\n\r\nin my opinion, it makes sense to change them both to ofImageType only, because the int channels is susceptible to accidentally passing an ofImageType to it.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/589","comments":0,"milestone":null,"number":589,"html_url":"https://github.com/openframeworks/openFrameworks/issues/589","assignee":null,"title":"setFromPixels vs setFromExternalPixels","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-05-31T02:06:22Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":976610,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T21:54:02Z","body":"ofImage_ should be ofBaseImage, likewise with ofPixels_\n\nin general, X_ style classes should be BaseX\n\ntemplated functions that are just sitting around should also have descriptive template names.\n\nit's important for this to happen before 007, otherwise code will be written against ofImage\\_<T> etc.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/582","comments":5,"milestone":null,"number":582,"html_url":"https://github.com/openframeworks/openFrameworks/issues/582","assignee":null,"title":"templated code needs to be more readable","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-05-23T17:46:28Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":942647,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-31T13:42:28Z","body":"just need to add the line\r\n\r\n\t\t\tcase 230400: cfsetispeed(&options,B230400);\r\n\t\t\t\tcfsetospeed(&options,B230400);\r\n\t\t\t\tbreak;\r\n\r\nin the setup function after\r\ncase 115200: cfsetispeed(&options,B115200);\r\n\t\t\t\t\t\tcfsetospeed(&options,B115200);\r\n\t\t\t\tbreak;\r\n\r\ntested with our device that runs at that baud rate, seems to work a-OK so far.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/577","comments":2,"milestone":null,"number":577,"html_url":"https://github.com/openframeworks/openFrameworks/issues/577","assignee":null,"title":"ofSerial: add 230400 speed","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-05-20T16:16:52Z","state":"open","user":{"url":"https://api.github.com/users/labatrockwell","gravatar_id":"e6d243a56cd069a225f56f4a388e8838","login":"labatrockwell","avatar_url":"https://secure.gravatar.com/avatar/e6d243a56cd069a225f56f4a388e8838?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","id":313943},"id":932655,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T19:59:00Z","body":"This is a generic Linux build of oF for ARM Cortex A8/9 devices (Beagleboard, Pandaboard, Gumstix, Tegra 250, IGEPv2, ...) with built-in NEON optimizations in the included libs and makefiles (via gcc -O3 -march=armv7-a -mtune=cortex-a8 -mfpu=neon -ftree-vectorize -mfloat-abi=softfp)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/576","comments":17,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","closed_issues":0,"number":8,"title":"0080 Release","due_on":"2013-01-01T08:00:00Z","open_issues":3,"created_at":"2012-02-25T01:34:28Z","state":"open","description":"","id":88731},"number":576,"html_url":"https://github.com/openframeworks/openFrameworks/issues/576","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"Generic armv7l Linux build for Beagleboard &co. ","labels":[],"closed_at":null,"created_at":"2011-05-19T14:49:57Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"id":927378,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/576.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/576","patch_url":"https://github.com/openframeworks/openFrameworks/pull/576.patch"}},{"updated_at":"2011-05-13T15:28:46Z","body":"http://forum.openframeworks.cc/index.php?topic=6201.0","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/572","comments":0,"milestone":null,"number":572,"html_url":"https://github.com/openframeworks/openFrameworks/issues/572","assignee":null,"title":"ofToggleFullscreen doesn't set width and height correctly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2011-05-13T15:28:46Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":895515,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-02T15:47:14Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/569","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":569,"html_url":"https://github.com/openframeworks/openFrameworks/issues/569","assignee":null,"title":"saving an image with the image quality flag set to high or best causes empty jpegs. ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-05-11T13:53:42Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":883385,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T03:48:47Z","body":"Currently using an FBO with an ofCamera is really tricky, as both setup their own viewing matrix and viewport. \r\n\r\nDoes it make sense to have ofFbo use an ofCamera internally?\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/568","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":568,"html_url":"https://github.com/openframeworks/openFrameworks/issues/568","assignee":null,"title":"ofFbo and ofCamera do not play well together.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-05-11T13:52:46Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":883380,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-15T18:31:30Z","body":"Greetings,\r\n\r\nI have downloaded the latest master of Openframeworks b4397c1 and I have tried to compile the AllAddons example (just to check if everything was well installed).\r\n\r\nThe ofxSynth library just won't compile (using either GCC or LLVM, Xcode 3 or Xcode4), be it in the allAddons or in it's own examples, here is the error log :\r\n\r\nUndefined symbols for architecture i386:\r\n \"typeinfo for ofxSoundEffect\", referenced from:\r\n typeinfo for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"non-virtual thunk to ofxSoundEffect::setSampleRate(int)\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundBuffer::ofxSoundBuffer()\", referenced from:\r\n ofxSoundSink::ofxSoundSink()in ofxSynth.o\r\n \"vtable for ofxSoundEffect\", referenced from:\r\n ofxSoundEffect::~ofxSoundEffect()in ofxSynthDelayLine.o\r\n ofxSoundEffect::~ofxSoundEffect()in ofxSynthDelayLine.o\r\n \"vtable for ofxSoundSink\", referenced from:\r\n ofxSoundSink::~ofxSoundSink()in ofxSynthDelayLine.o\r\n ofxSoundSink::~ofxSoundSink()in ofxSynthDelayLine.o\r\n \"virtual thunk to ofxSoundSink::getInputs()\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"typeinfo for ofxSoundSink\", referenced from:\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundSink::setSampleRate(int)\", referenced from:\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundSink::getInputs()\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundSink::addInputFrom(ofxSoundSource*)\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"VTT for ofxSoundEffect\", referenced from:\r\n ofxSoundEffect::~ofxSoundEffect()in ofxSynthDelayLine.o\r\n ofxSoundEffect::~ofxSoundEffect()in ofxSynthDelayLine.o\r\n \"ofxSoundEffect::setSampleRate(int)\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundSink::audioIn(float*, int, int, unsigned long long)\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundEffect::audioOut(float*, int, int, unsigned long long)\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundBuffer::~ofxSoundBuffer()\", referenced from:\r\n ofxSoundSink::~ofxSoundSink()in main.o\r\n ofxSoundSink::~ofxSoundSink()in ofxSynthDelayLine.o\r\n ofxSoundSink::~ofxSoundSink()in ofxSynthDelayLine.o\r\nld: symbol(s) not found for architecture i386\r\ncollect2: ld returned 1 exit status\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/566","comments":3,"milestone":null,"number":566,"html_url":"https://github.com/openframeworks/openFrameworks/issues/566","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"ofxSynth won't compile","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2011-05-07T12:25:01Z","state":"open","user":{"url":"https://api.github.com/users/benoitespinola","gravatar_id":"d08687285addcdde144d4eceb4cfa78e","login":"benoitespinola","avatar_url":"https://secure.gravatar.com/avatar/d08687285addcdde144d4eceb4cfa78e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":720460},"id":862321,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:48:58Z","body":"I'm fixing it using \r\n_textField.transform = CGAffineTransformMakeRotation(M_PI*1.5f);\r\nin - (void) setFrame: (CGRect) rect\r\nto fix it now.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/565","comments":1,"milestone":null,"number":565,"html_url":"https://github.com/openframeworks/openFrameworks/issues/565","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"Textfield in ofxiPhoneKeyboard upside down in landscape","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-05-05T14:20:42Z","state":"open","user":{"url":"https://api.github.com/users/labatrockwell","gravatar_id":"e6d243a56cd069a225f56f4a388e8838","login":"labatrockwell","avatar_url":"https://secure.gravatar.com/avatar/e6d243a56cd069a225f56f4a388e8838?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","id":313943},"id":853551,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=10 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4934'), ('content-length', '43807'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"78e9c565cba926f6a72fa2b7dd021b78"'), ('date', 'Tue, 29 May 2012 19:27:19 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-12-03T21:20:01Z","body":"Does anybody know the status of this?\r\nI would like to help but I'm not sure where to start. Is the `iphone-dev-0061` the branch to work on this?\r\nI just want to know what's been done or whether there are plans in the works.\r\n\r\nI have posted this in the forum but have not received any response.\r\nhttp://forum.openframeworks.cc/index.php/topic,4089.msg29156.html#msg29156","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/564","comments":1,"milestone":null,"number":564,"html_url":"https://github.com/openframeworks/openFrameworks/issues/564","assignee":null,"title":"ofxShader for iOS","labels":[],"closed_at":null,"created_at":"2011-05-04T18:35:58Z","state":"open","user":{"url":"https://api.github.com/users/chrisirhc","gravatar_id":"22d0038769b1786fcdc0983bdb2e4033","login":"chrisirhc","avatar_url":"https://secure.gravatar.com/avatar/22d0038769b1786fcdc0983bdb2e4033?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":132584},"id":850096,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-12T08:58:12Z","body":"it's compiling now but doesn't work in openGL ES.\r\n\r\nalso take a look at setupShadow generating depthBuffer as texture, when it's released as a renderbuffer","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/560","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":560,"html_url":"https://github.com/openframeworks/openFrameworks/issues/560","assignee":null,"title":"fix ofFbo for openGL ES","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/android","name":"android","color":"2bc4ad"}],"closed_at":null,"created_at":"2011-04-30T17:21:39Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":833772,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-04-26T00:37:56Z","body":"nothing fancy, but I have an implementation of ofxCvHaarFinder that draws, and it's useful for debugging. something like:\n\n``` c++\n void ofxCvHaarFinder::draw( float x, float y ) {\n\t\t// ofPushStyle(); ?\n\t\tofEnableAlphaBlending();\n\t\tofSetColor( 255,0,200,100 );\n\t\tglPushMatrix();\n\t\t\n\t\tglTranslatef( x, y, 0.0 );\n\t\t\n\t\tofNoFill();\n\t\tfor( int i=0; i007 than <007. this can be changed in the ofStyle() constructor.\r\n\r\nalso, @elliotwoods it would be great to have a comment next to each of the constants in enum ofDrawBitmapMode explaining what they do.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/520","comments":1,"milestone":null,"number":520,"html_url":"https://github.com/openframeworks/openFrameworks/issues/520","assignee":null,"title":"ofDrawBitmapString default behavior has changed","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-04-01T06:37:16Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":723496,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-31T17:49:33Z","body":"it's obvious if you've used opengl directly before, but i would expect something more like:\r\n\r\n\tvoid ofSetTextureInterpolation(ofInterpolationType downscale, ofInterpolationType upscale)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/519","comments":0,"milestone":null,"number":519,"html_url":"https://github.com/openframeworks/openFrameworks/issues/519","assignee":null,"title":"ofSetMinMagFilters() is confusingly named","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-03-31T17:49:33Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":721833,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-17T00:51:48Z","body":"movieGrabberExample => videoGrabberExample\r\nmoviePlayerExample => videoPlayerExample\r\n\r\nthere are probably other examples of this, but this one strikes me as particularly odd. there's probably some historical reason... :)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/510","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":510,"html_url":"https://github.com/openframeworks/openFrameworks/issues/510","assignee":null,"title":"movieGrabber/PlayerExamples are poorly named","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-03-22T06:47:02Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":693126,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-21T01:01:25Z","body":"i accidentally initialized my ofFbo with setupShadow() instead of setup(), and when i said draw() it caused EXC_BAD_ACCESS. draw() calls getTexture(), so maybe the best way to handle this is to put a check inside getTexture() like this:\r\n\r\n\tif(textures.size() == 0) {\r\n\t\tofLog(OF_LOG_ERROR, \"You must call ofFbo::setup() before you can use an FBO\");\r\n\t}\r\n\treturn textures[attachmentPoint];","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/507","comments":0,"milestone":null,"number":507,"html_url":"https://github.com/openframeworks/openFrameworks/issues/507","assignee":null,"title":"ofFbo::draw() causes EXC_BAD_ACCESS when setup() isn't called","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-03-21T01:01:25Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":689769,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-20T17:35:05Z","body":"i know the reason for this is because the mappings are OS and mouse dependent, and that it's GLUT slowing us down here, but i think we could at least add a guess like OF_MOUSE_LEFT = 0, OF_MOUSE_MIDDLE= 1, OF_MOUSE_RIGHT = 2, etc.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/503","comments":0,"milestone":null,"number":503,"html_url":"https://github.com/openframeworks/openFrameworks/issues/503","assignee":null,"title":"no OF_MOUSE_LEFT or OF_MOUSE_RIGHT","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-03-20T17:35:05Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":688955,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T15:48:41Z","body":"you need to use bUse3D flag but even then graphics aren't saved to pdf as they look on screen. \r\ntry the OF_ORIENTATION_90_LEFT or 90_RIGHT to reproduce. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/502","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":502,"html_url":"https://github.com/openframeworks/openFrameworks/issues/502","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"ofSetOrientation doesn't work for cairo","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-03-18T09:17:36Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":684091,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-18T03:56:02Z","body":"it looks like ofGLRenderer::drawString is currently overriding whatever the current blend mode is:\n\n\tglEnable(GL_BLEND);\n\tglBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);\n\nand then setting it back later.\n\ni'm guessing this is so the empty/alpha part of the bitmap font is drawn.\n\ninstead of using glBlendFunc i would suggest glAlphaFunc... but it looks like as of OpenGL ES 2.0 glAlphaFunc doesn't exist anymore :(\n\nnot sure what to do, but it's really weird to have ofSetColor(255) work, but not ofSetColor(255, 254). e.g.:\n\n\tofBackground(128);\n\tofEnableAlphaBlending();\n\tofSetColor(255, 254);\n\tofDrawBitmapString(\"255, 254\", 10, 20);\n\tofSetColor(255, 255);\n\tofDrawBitmapString(\"255, 255\", 10, 40);\n\tofDisableAlphaBlending();","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/501","comments":0,"milestone":null,"number":501,"html_url":"https://github.com/openframeworks/openFrameworks/issues/501","assignee":null,"title":"ofDrawBitmapString / ofGLRenderer::drawString doesn't work with alpha","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-03-18T03:54:34Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":683732,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-03T10:41:35Z","body":"right now ofImage::getPixelsRef() is always non-const, as well as ofImage::getPixels()","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/500","comments":4,"milestone":null,"number":500,"html_url":"https://github.com/openframeworks/openFrameworks/issues/500","assignee":null,"title":"missing const version of getPixelsRef()","labels":[],"closed_at":null,"created_at":"2011-03-14T19:14:21Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":672608,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=11 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4933'), ('content-length', '40272'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"b87c61471553096d60e5ff8b292ff704"'), ('date', 'Tue, 29 May 2012 19:27:20 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"milestone":null,"state":"open","user":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"osx movieplayer problem on reloading","html_url":"https://github.com/openframeworks/openFrameworks/issues/495","comments":0,"assignee":null,"updated_at":"2011-03-09T16:17:56Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=7&t=5729&view=unread#unread","number":495,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/495","labels":[{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":659446,"closed_at":null,"created_at":"2011-03-09T16:17:56Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"GLUT 007 hack","html_url":"https://github.com/openframeworks/openFrameworks/issues/491","comments":0,"assignee":null,"updated_at":"2011-03-04T14:44:53Z","body":"it seems that some commented defines are still being preprocessed and making gdb behave weird:\r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=4&t=5602&view=unread#unread","number":491,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/491","labels":[{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":646846,"closed_at":null,"created_at":"2011-03-04T14:44:53Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"close corners on basic shapes?","html_url":"https://github.com/openframeworks/openFrameworks/issues/490","comments":0,"assignee":null,"updated_at":"2011-03-03T16:35:17Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=8&t=5678&view=unread#unread\r\n\r\nperhaps use style.linewith? won't work if you use glLineWidth though","number":490,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/490","labels":[{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":643861,"closed_at":null,"created_at":"2011-03-03T16:35:17Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"893ec14dc008e3774afe5841115920d6","url":"https://api.github.com/users/jonbro","login":"jonbro","id":1597,"avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofOrientation incompatible with iOS addon","html_url":"https://github.com/openframeworks/openFrameworks/issues/486","comments":0,"assignee":{"gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-10T04:50:03Z","body":"the existing iOS orientation methods are not compatible with the virtual functions that they inherit from. The new virtuals use a ofOrientation enum, and the old functions use ints.\r\n\r\nThis issue was introduced in https://github.com/openframeworks/openFrameworks/commit/38011d54","number":486,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/486","labels":[{"color":"2babad","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":635112,"closed_at":null,"created_at":"2011-02-28T18:14:04Z"},{"milestone":{"state":"open","description":"","title":"0073 Release","due_on":"2012-07-30T07:00:00Z","closed_issues":0,"open_issues":5,"number":6,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":62090,"created_at":"2011-12-03T15:37:49Z"},"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"grabFrame/idleFrame deprecation","html_url":"https://github.com/openframeworks/openFrameworks/issues/484","comments":12,"assignee":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-04-24T21:04:32Z","body":"it would be nice to start deprecating grabFrame() and idleFrame() (but maybe wait a couple years to actually remove them) , and change the examples to only use update() and isFrameNew().","number":484,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/484","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"37c200","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy"}],"id":613171,"closed_at":null,"created_at":"2011-02-20T17:56:02Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"ace632f74988653fdbde09225134bfdd","url":"https://api.github.com/users/nemik","login":"nemik","id":62301,"avatar_url":"https://secure.gravatar.com/avatar/ace632f74988653fdbde09225134bfdd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofVideoPlayer bug when loading subsequent movies after the first one","html_url":"https://github.com/openframeworks/openFrameworks/issues/475","comments":0,"assignee":null,"updated_at":"2011-02-14T17:11:08Z","body":"Within 0062, inside libs/openFrameworks/video/ofVideoPlayer.cpp on line 314 there is a check for height and width not being 0, then \"bDoWeAlreadyHaveAGworld = true;\" is set. However, this prevents other movies after the first from being loaded into that instance of ofVideoPlayer. \r\nI have posted about this in the forum with a fix (to just remove that check) here: http://www.openframeworks.cc/forum/viewtopic.php?f=8&t=5222\r\n\r\nInside the latest code, it is within ofQuickTimePlayer.cpp https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/video/ofQuickTimePlayer.cpp#L281.","number":475,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/475","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":598097,"closed_at":null,"created_at":"2011-02-14T17:11:08Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"object init/load state is not consistently testable","html_url":"https://github.com/openframeworks/openFrameworks/issues/463","comments":0,"assignee":null,"updated_at":"2011-02-07T19:58:23Z","body":"I like to be able to know when an object has successfully initialized or loaded and OF provides for this, for the most part, but in an inconsistent manner ie\r\n\r\nofVideoGrabber::initGrabber() returns a bool, but ofVideoGrabber:bInitialized is protected and therefore not accessible\r\n\r\nwhile\r\n\r\nofTrueTypeFont::bLoadedOk is public, but ofTrueTypeFont::loadFont() returns void\r\n\r\nand\r\n\r\nofImage::loadImage() returns a bool and ofLoadImage::bAllocated() returns a bool, yet ofImage::setFromPixels() returns void\r\n\r\nI propose all loadable/initable objects have loading functions which always return a bool and a testable function (isInited(), isLoaded(), etc) for use after loading. Ideally, the testable functions would always be named the same ie myImage.isLoaded(), myVideoGrabber().isLoaded(), myFont.isLoaded() but of course a general name may not apply to all situations (myVideoGrabber.isInited() probably makes more sense).\r\n\r\nHell, all the load functions could be overloaded ie ofImage::load(string filename), ofImage::load(ofPixels pixels), ofImage::load(unsigned char* pixels) across different objects, ofTrueTypeFont::load(string filename), ofVideoGrabber::load(int w, int h, int deviceID). This consistency looks nice to anal me. but might be confusing to newbies and of course would break old code (unless wrapped for legacy compatibility). It seems a little annoying that every objects seems to have it's own way of checking this and that ...","number":463,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/463","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"37c200","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy"}],"id":581395,"closed_at":null,"created_at":"2011-02-07T19:58:23Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"8022cb5f529975afbc64cc9312008d8c","url":"https://api.github.com/users/nardove","login":"nardove","id":277690,"avatar_url":"https://secure.gravatar.com/avatar/8022cb5f529975afbc64cc9312008d8c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"OpenCV cvSobel() not working with latest master branch","html_url":"https://github.com/openframeworks/openFrameworks/issues/462","comments":0,"assignee":null,"updated_at":"2011-02-07T15:58:19Z","body":"Hi,\r\n\r\nI get the following error:\r\n// INIT OF ERROR\r\nOF_WARNING: ofBaseVideoPlayer::setPixelFormat not implemented\r\nOpenCV Error: Assertion failed (src.size() == dst.size() && src.channels() == dst.channels() && ((src.depth() == CV_8U && (dst.depth() == CV_16S || dst.depth() == CV_32F)) || (src.depth() == CV_32F && dst.depth() == CV_32F))) in cvSobel, file /Users/theo/Documents/CODE/__OPENFRAMEWORKS/gitOF/__BuildAllLibs/OpenCV-2.2.0/modules/imgproc/src/deriv.cpp, line 347\r\nterminate called after throwing an instance of 'cv::Exception'\r\n what(): /Users/theo/Documents/CODE/__OPENFRAMEWORKS/gitOF/__BuildAllLibs/OpenCV-2.2.0/modules/imgproc/src/deriv.cpp:347: error: (-215) src.size() == dst.size() && src.channels() == dst.channels() && ((src.depth() == CV_8U && (dst.depth() == CV_16S || dst.depth() == CV_32F)) || (src.depth() == CV_32F && dst.depth() == CV_32F)) in function cvSobel\r\n// END OF ERROR\r\n\r\nWhen I try to call the cvSobel method like this:\r\ncvSobel( grayImage.getCvImage(), grayImage.getCvImage(), 0, 1, 3 );\r\n\r\nThis works fine in 0062.\r\n\r\nCheers\r\n- rS","number":462,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/462","labels":[{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":580717,"closed_at":null,"created_at":"2011-02-07T15:58:19Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"get number of input devices and device IDs from ofVideoGrabber","html_url":"https://github.com/openframeworks/openFrameworks/issues/461","comments":0,"assignee":null,"updated_at":"2011-02-07T19:38:51Z","body":"Currently, the ofVideoGrabber can list devices to stdout, but does not return the number of available devices. I propose that either listDevices() return an int or a new function be added, something like getNumDevices() or a getDeviceNums() which returns a vector of valid device ids. This could be related to Arturo's Issue where the devices could be retrieved as strings. I think it makes sense to have these as static functions so that you could open all available cameras into an Array of ofVideoGrabbers by retrieving the number of devices and their ids to open them.","number":461,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/461","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":580556,"closed_at":null,"created_at":"2011-02-07T15:24:21Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"saveImage() and other save operations should create missing directories","html_url":"https://github.com/openframeworks/openFrameworks/issues/460","comments":8,"assignee":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-08T15:56:48Z","body":"i feel like it happens relatively often where i try to save an image (for example) and the parent directories don't exist, so it just fails without really saying anything.\r\n\r\nit would be nice if the dir(s) were just created automatically for you.","number":460,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/460","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":579790,"closed_at":null,"created_at":"2011-02-07T07:52:25Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofTexture::allocate not checking for unnecessary reallocation","html_url":"https://github.com/openframeworks/openFrameworks/issues/454","comments":0,"assignee":null,"updated_at":"2011-02-06T04:26:44Z","body":"ofPixels::allocate is smart in that it doesn't reallocate if you ask for the same size as what's already there. ofTexture should work the same way to avoid unnecessary overhead.","number":454,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/454","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":578069,"closed_at":null,"created_at":"2011-02-06T04:26:44Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofViewport doesn't work with ofSetOrientation","html_url":"https://github.com/openframeworks/openFrameworks/issues/449","comments":0,"assignee":null,"updated_at":"2011-02-02T00:03:09Z","body":"maybe a generic 'transformer' function would handle both this and mouse coordinates, and anything else? ofPoint ofGetAsbolutePosition(x,y)?","number":449,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/449","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":568540,"closed_at":null,"created_at":"2011-02-02T00:03:09Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"no way to get imageType of ofVideoGrabber","html_url":"https://github.com/openframeworks/openFrameworks/issues/446","comments":0,"assignee":null,"updated_at":"2011-01-31T19:26:41Z","body":"ofVideoGrabber has getOFPixels in the .h, but it isn't implemented in the .cpp.\r\n\r\nmaybe this is just a signal that ofPixels stuff needs to be resolved soon... :) i'd be glad to help with this if possible.","number":446,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/446","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":565122,"closed_at":null,"created_at":"2011-01-31T19:26:41Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofGetElapsedTimeMillis returns an int instead of unsigned long","html_url":"https://github.com/openframeworks/openFrameworks/issues/428","comments":0,"assignee":null,"updated_at":"2011-01-28T06:28:01Z","body":"the start time is stored internally as an unsigned long, but ofGetElapsedTimeMillis returns it as an int. ofGetElapsedTimef also does calculations using time as an int. this means time wraps around every (2^31 - 1) milliseconds in days = 24.8 days.\r\n\r\nas an unsigned long it would be (2^64 - 1) milliseconds in years = 584 million years :)","number":428,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/428","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"65a300","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize"}],"id":558215,"closed_at":null,"created_at":"2011-01-28T06:28:01Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"4fc88ba881fee72fc4c5de473dc2ebbf","url":"https://api.github.com/users/NickHardeman","login":"NickHardeman","id":142694,"avatar_url":"https://secure.gravatar.com/avatar/4fc88ba881fee72fc4c5de473dc2ebbf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Check ofShader Texture Wrap Parameters","html_url":"https://github.com/openframeworks/openFrameworks/issues/424","comments":1,"assignee":null,"updated_at":"2011-12-02T21:05:54Z","body":"I thought checking for custom texture wrapping in ofShader might be useful. Not sure how to add a label to this :/\n\n#include ofGraphics.h\n\nvoid setUniformTexture(const char* name, ofBaseHasTexture& img, int textureLocation=-1);\nvoid setUniformTexture(const char* name, ofTexture& img, int textureLocation=-1);\n\nvoid ofShader::setUniformTexture(const char* name, ofTexture& tex, int textureLocation) {\n\tif(bLoaded) {\n\t\t\n\t\tGLfloat wrapS = -1;\n\t\tGLfloat wrapT = -1;\n\t\t\n\t\tif (ofGetUsingCustomTextureWrap()) {\n\t\t\tglGetTexParameterfv(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, &wrapS);\n\t\t\tglGetTexParameterfv(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, &wrapT);\n\t\t}\n\t\t\n\t\tofTextureData texData = tex.getTextureData();\n\t\tif (textureLocation < 0) textureLocation = texData.textureID;\n\t\tglActiveTexture(GL_TEXTURE0 + textureLocation);\n\t\tglEnable(texData.textureTarget);\n\t\t\n\t\tif(wrapS > 0) glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, wrapS);\n\t\tif(wrapT > 0) glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, wrapT);\n\t\t\n\t\tglBindTexture(texData.textureTarget, texData.textureID);\n\t\tglDisable(texData.textureTarget);\n\t\tsetUniform1i(name, texData.textureID);\n\t\tglActiveTexture(GL_TEXTURE0);\n\t}\n}","number":424,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/424","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":556923,"closed_at":null,"created_at":"2011-01-27T19:43:31Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"problem with reloading movies in osx","html_url":"https://github.com/openframeworks/openFrameworks/issues/423","comments":0,"assignee":null,"updated_at":"2011-01-24T22:34:29Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=8&t=5222","number":423,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/423","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"2a8296","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS"}],"id":548302,"closed_at":null,"created_at":"2011-01-24T22:34:29Z"},{"milestone":{"state":"open","description":"","title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"number":5,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61810,"created_at":"2011-12-02T15:29:48Z"},"state":"open","user":{"gravatar_id":"117a7eecfee7c7f7e954623fd96e1b6e","url":"https://api.github.com/users/snibbe","login":"snibbe","id":581517,"avatar_url":"https://secure.gravatar.com/avatar/117a7eecfee7c7f7e954623fd96e1b6e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Retina display support **that doesn't crash devices!** with backward compatibility to OS 3.0","html_url":"https://github.com/openframeworks/openFrameworks/issues/421","comments":2,"assignee":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2011-12-05T22:03:15Z","body":"Hi guys,\r\n\r\nI posted to the OF forum a solution back in August to support retina display with backward compatibility to pre-OS 4.0 devices:\r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=25&t=4185&start=15\r\n\r\nIf it's still outstanding, here's the solution!\r\n\r\nEAGLView.mm, initWithFrame, after the eaglLayer.drawableProperties assignment, add:\r\n\r\n if ([[UIScreen mainScreen] respondsToSelector:@selector(scale)]) {\r\n if ([[UIScreen mainScreen] scale] > 1) {\r\n // code below doesn't work on iPad 3.2 OS and below, but doesn't need to because scale is 1\r\n [self setContentScaleFactor:[[UIScreen mainScreen] scale]];\r\n }\r\n }\r\n\r\nofAppiPhoneWindow.mm, timerLoop, after [ofxiPhoneGetGLView() startRender]; add:\r\n\r\n int ofwidth = ofGetWidth();\r\n int ofheight = ofGetHeight();\r\n \r\n if ([[UIScreen mainScreen] respondsToSelector:@selector(scale)]) {\r\n ofwidth *= [[UIScreen mainScreen] scale];\r\n ofheight *= [[UIScreen mainScreen] scale];\r\n }\r\n\r\nthen change the glViewport calls:\r\n\r\n\t// this could be taken out and included in ofAppBaseWIndow\r\n\tif(orientation == OFXIPHONE_ORIENTATION_PORTRAIT || orientation == OFXIPHONE_ORIENTATION_UPSIDEDOWN)\r\n\t\tglViewport( 0, 0, ofwidth, ofheight );\r\n\telse\r\n\t\tglViewport( 0, 0, ofheight, ofwidth );","number":421,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/421","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"2a8296","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS"}],"id":548070,"closed_at":null,"created_at":"2011-01-24T20:52:18Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"something to wrap glMultMatrixf","html_url":"https://github.com/openframeworks/openFrameworks/issues/418","comments":0,"assignee":null,"updated_at":"2011-01-22T15:57:37Z","body":"suggestions:\r\n\r\n ofPopMatrix(ofMatrix4x4 m)\r\n\r\n ofMultMatrix(ofMatrix4x4 m)\r\n\r\n ofMatrix4x4::apply();\r\n ofMatrix4x4::push();","number":418,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/418","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":543729,"closed_at":null,"created_at":"2011-01-22T15:57:37Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"3D isn't scale invariant in certain parts","html_url":"https://github.com/openframeworks/openFrameworks/issues/417","comments":0,"assignee":null,"updated_at":"2011-01-22T15:24:07Z","body":"e.g.\r\n\r\n void ofEasyCam::reset() {\r\n\ttarget.resetTransform();\r\n\tdistance = 100;\r\n }\r\n\r\nofNode's\r\n\tvirtual void customDraw() {\r\n\t\tofBox(10);\r\n\t\tofDrawAxis(20);\r\n\t}\r\n\r\nsuggestions:\r\n\r\nglobal variable called something like 'base3DScaleFactor = 10.0f' which will affect all of these current constant scale factors","number":417,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/417","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":543694,"closed_at":null,"created_at":"2011-01-22T15:24:07Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","url":"https://api.github.com/users/vanderlin","login":"vanderlin","id":149997,"avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Simulator not working with any examples ","html_url":"https://github.com/openframeworks/openFrameworks/issues/414","comments":3,"assignee":{"gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-10T05:00:35Z","body":"Getting this error after the app launches in simulator mode \r\n\r\nDetected an attempt to call a symbol in system libraries that is not present on the iPhone:\r\n\r\n","number":414,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/414","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"2babad","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":539979,"closed_at":null,"created_at":"2011-01-20T20:17:35Z"},{"milestone":{"state":"open","description":"","title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"number":5,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61810,"created_at":"2011-12-02T15:29:48Z"},"state":"open","user":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofCamera::setPan is broken","html_url":"https://github.com/openframeworks/openFrameworks/issues/413","comments":1,"assignee":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-14T15:11:06Z","body":"","number":413,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/413","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"31e03a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed"}],"id":539915,"closed_at":null,"created_at":"2011-01-20T20:01:00Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"add setMultisampling method to glutWindow","html_url":"https://github.com/openframeworks/openFrameworks/issues/412","comments":0,"assignee":null,"updated_at":"2011-01-20T19:33:30Z","body":"multisampling is now working in linux through the display string option. perhaps we could add a method to easily set it if it also works on win/osx","number":412,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/412","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"244569","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows"}],"id":539845,"closed_at":null,"created_at":"2011-01-20T19:33:30Z"},{"milestone":{"state":"open","description":"","title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"number":5,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61810,"created_at":"2011-12-02T15:29:48Z"},"state":"open","user":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofCamera / ofEasyCamera does not work correctly for iPhone / iPad","html_url":"https://github.com/openframeworks/openFrameworks/issues/410","comments":2,"assignee":{"gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-14T15:11:06Z","body":"Needs to take into account the rotation and the flipping happening in ofAppiPhoneWindow::timerLoop() \n\nAlso the internal call to ofViewport causes clipping in horizontal mode. \n\nIts currently very difficult to setup the camera correctly for iPad / iPhone - would be great if the default for ofCamera would be to start with the typical OF camera view. ","number":410,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/410","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"2babad","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"31e03a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed"}],"id":539744,"closed_at":null,"created_at":"2011-01-20T18:59:10Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","url":"https://api.github.com/users/vanderlin","login":"vanderlin","id":149997,"avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofEnableLighting","html_url":"https://github.com/openframeworks/openFrameworks/issues/406","comments":0,"assignee":null,"updated_at":"2011-01-19T19:39:37Z","body":"ofLight bug not sure what the ios equivalent is..\r\n\r\nglColorMaterial(GL_FRONT_AND_BACK, GL_AMBIENT_AND_DIFFUSE); is not supported in IOS","number":406,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/406","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":537416,"closed_at":null,"created_at":"2011-01-19T19:39:36Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofViewport doesn't match rest of openFrameworks coordinates","html_url":"https://github.com/openframeworks/openFrameworks/issues/405","comments":0,"assignee":null,"updated_at":"2011-01-19T13:24:54Z","body":"Suggest change line 126 of ofGraphics.h to\r\n\tglViewport(x, ofGetHeight() - y - height, width, height);\r\n\r\nto be in line with rest of openFrameworks coordinate system\r\ne.g. ofRect(myRect) matches ofViewport(myRect)\r\n","number":405,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/405","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"31e03a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed"}],"id":536614,"closed_at":null,"created_at":"2011-01-19T13:24:53Z"}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=12 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4932'), ('content-length', '38352'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"679d499a026b6f6d6a1e20857a7392dc"'), ('date', 'Tue, 29 May 2012 19:27:21 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-01-17T23:39:31Z","body":"it should be only in the implementations and queried by the grabber/player in case an implementation doesn't support a format if not the app can crash or have really weird results","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/403","comments":0,"milestone":null,"number":403,"html_url":"https://github.com/openframeworks/openFrameworks/issues/403","assignee":null,"title":"setPixelFormat shouldn't be stored in videoGrabber/Player","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-17T23:39:31Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":532954,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-17T16:37:42Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/400","comments":0,"milestone":null,"number":400,"html_url":"https://github.com/openframeworks/openFrameworks/issues/400","assignee":null,"title":"ofTTF should have setAnchorPercent so you can draw strings centered, right aligned etc","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography","color":"DDDDDD"}],"closed_at":null,"created_at":"2011-01-17T16:37:42Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":532096,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-03-20T17:33:14Z","body":"every frame, it should update the pmouse value. so if you don't move the mouse, the pmouse value is equal to the current value.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/391","comments":1,"milestone":null,"number":391,"html_url":"https://github.com/openframeworks/openFrameworks/issues/391","assignee":null,"title":"ofGetPreviousMouseX/Y() does not update per frame","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-16T07:21:15Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":529705,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-03-20T17:32:59Z","body":"this is a limitation to glut, but it might be hackable on each system separately.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/389","comments":1,"milestone":null,"number":389,"html_url":"https://github.com/openframeworks/openFrameworks/issues/389","assignee":null,"title":"mouse position doesn't update until mouse is moved","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-16T07:11:53Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":529700,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-03-13T21:10:48Z","body":"following error appears when i try to load an image; commenting out the call to loadImage(\"...\") makes the error go away.\n\n Undefined symbols:\n \"std::basic_ostream >& std::__ostream_insert >(std::basic_ostream >&, char const*, int)\", \n referenced from:\n Poco::Net::HTTPClientSession::proxyAuthenticateImpl(Poco::Net::HTTPRequest&)in PocoNet.a(HTTPClientSession.o)\n Poco::Net::HTTPClientSession::proxyAuthenticateImpl(Poco::Net::HTTPRequest&)in PocoNet.a(HTTPClientSession.o)\n Poco::Net::HTTPRequest::write(std::basic_ostream >&) constin PocoNet.a(HTTPRequest.o)\n Poco::Net::HTTPRequest::write(std::basic_ostream >&) constin PocoNet.a(HTTPRequest.o)\n Poco::Net::HTTPRequest::write(std::basic_ostream >&) constin PocoNet.a(HTTPRequest.o)\n Poco::Net::MessageHeader::write(std::basic_ostream >&) constin PocoNet.a(MessageHeader.o)\n Poco::Net::MessageHeader::write(std::basic_ostream >&) constin PocoNet.a(MessageHeader.o)\n Poco::Net::HTTPResponse::write(std::basic_ostream >&) constin PocoNet.a(HTTPResponse.o)\n Poco::Net::HTTPResponse::write(std::basic_ostream >&) constin PocoNet.a(HTTPResponse.o)\n\nld: symbol(s) not found\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/387","comments":1,"milestone":null,"number":387,"html_url":"https://github.com/openframeworks/openFrameworks/issues/387","assignee":null,"title":"Linker error when loading image (Poco::Net related?)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-16T05:57:51Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"id":529646,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-15T17:01:08Z","body":"would be nice if it was a float (0-1) and not an int(0-100) for standardization with every other audio thing in the universe aside from quicktime","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/375","comments":2,"milestone":null,"number":375,"html_url":"https://github.com/openframeworks/openFrameworks/issues/375","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"ofVideoPlayer setVolume uses an int","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"closed_at":null,"created_at":"2011-01-15T23:03:57Z","state":"open","user":{"url":"https://api.github.com/users/stfj","gravatar_id":"b089227a1748a2d70cdfc4ef00b325ad","login":"stfj","avatar_url":"https://secure.gravatar.com/avatar/b089227a1748a2d70cdfc4ef00b325ad?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":177578},"id":529268,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-14T19:30:31Z","body":"glDrawBitmapString doesn't work when GL_LIGHTING is enabled.\r\n\r\nwell, it works... but it is black because it isn't reflecting any light. regardless of the ofSetColor.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/357","comments":0,"milestone":null,"number":357,"html_url":"https://github.com/openframeworks/openFrameworks/issues/357","assignee":null,"title":"glDrawBitmapString vs GL_LIGHTING","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-14T19:30:31Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":527591,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-14T01:33:38Z","body":"some of the core functions only work with 2d points, others only with 3d points, some work with both. but they all take ofPoints.\r\n\r\nit's good for teaching purposes to have ofPoints because you don't have to explain what a 'vector' is, but it's unclear for advanced users whether the functions take 2d or 3d points...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/347","comments":0,"milestone":null,"number":347,"html_url":"https://github.com/openframeworks/openFrameworks/issues/347","assignee":null,"title":"none of the core functions report how many dimensions they work for","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-01-14T01:33:38Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":526094,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-13T16:16:40Z","body":"e.g., GL_DEPTH_TEST.\r\n\r\none of the reasons for this is that it's not obvious to newbies what common features are available.\r\n\r\nanother is that i've seen lots of people write GL_DEPTH instead, which obviously doesn't work.\r\n\r\nthere might be some others too, see processing's hint():\r\n\r\nhttp://processing.org/reference/hint_.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/340","comments":0,"milestone":null,"number":340,"html_url":"https://github.com/openframeworks/openFrameworks/issues/340","assignee":null,"title":"OF wrapper for basic gl functions that aren't intuitive to newbies","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"closed_at":null,"created_at":"2011-01-13T16:16:40Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":524875,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-27T13:35:42Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/337","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":337,"html_url":"https://github.com/openframeworks/openFrameworks/issues/337","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"ofFileDialog allow folder selection ( works on os x ) needs code for win and linux","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-01-13T05:21:53Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":523837,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T15:11:06Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/330","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":330,"html_url":"https://github.com/openframeworks/openFrameworks/issues/330","assignee":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"title":"OpenCv 2.2 for Win ( CB and VS )","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"}],"closed_at":null,"created_at":"2011-01-12T19:09:37Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":522789,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-04T14:06:34Z","body":"currentStyle stores everything about the current style, so it can be used rather than things like drawMode for tracking how things should currently be draw.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/325","comments":1,"milestone":null,"number":325,"html_url":"https://github.com/openframeworks/openFrameworks/issues/325","assignee":null,"title":"drawMode can be deprecated, currentStyle.bFill should be used instead","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-12T15:41:11Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":522255,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-12T15:34:48Z","body":"ordering for code completion is a little weird.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/324","comments":0,"milestone":null,"number":324,"html_url":"https://github.com/openframeworks/openFrameworks/issues/324","assignee":null,"title":"ofPushView/ofPopView appear before ofPushMatrix/ofPopMatrix","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"}],"closed_at":null,"created_at":"2011-01-12T15:34:48Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":522231,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-10T22:30:48Z","body":"under the /video directory","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/311","comments":0,"milestone":null,"number":311,"html_url":"https://github.com/openframeworks/openFrameworks/issues/311","assignee":null,"title":"openFrameworksLib has ofQtUtils included twice","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-10T22:30:48Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":518434,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-10T06:36:27Z","body":"better to use aggregation (helper classes/functions) if necessary for common functionality that have implementation in those classes. making them pure abstract classes will avoid problems with multiple inheritance and easier to extend in case of different behaviour","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/305","comments":0,"milestone":null,"number":305,"html_url":"https://github.com/openframeworks/openFrameworks/issues/305","assignee":null,"title":"no implementation in ofBaseTypes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-10T06:36:27Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":516844,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-05T21:59:59Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/302","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":302,"html_url":"https://github.com/openframeworks/openFrameworks/issues/302","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"Remove Poco CppUnit from all projects ( done on os x )","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-01-10T02:39:28Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":516565,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T01:06:09Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/299","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","closed_issues":0,"number":6,"title":"0073 Release","due_on":"2012-07-30T07:00:00Z","open_issues":5,"created_at":"2011-12-03T15:37:49Z","state":"open","description":"","id":62090},"number":299,"html_url":"https://github.com/openframeworks/openFrameworks/issues/299","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"freetype-2.4.4 for linux","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-01-10T02:38:08Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":516560,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T01:06:08Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/298","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","closed_issues":0,"number":6,"title":"0073 Release","due_on":"2012-07-30T07:00:00Z","open_issues":5,"created_at":"2011-12-03T15:37:49Z","state":"open","description":"","id":62090},"number":298,"html_url":"https://github.com/openframeworks/openFrameworks/issues/298","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"freetype-2.4.4 for windows","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-01-10T02:37:49Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":516559,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-05T21:59:27Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/296","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":296,"html_url":"https://github.com/openframeworks/openFrameworks/issues/296","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"FreeImage 3141 build for windows","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-01-10T02:36:58Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":516556,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-09T20:46:43Z","body":"I think the pixeltype, the gltypeinternal and the gltype should be accessible to the user as well as the loadData(void * data, int w, int h, int glDataType) which is actually protected.\r\n\r\nActual implementation is only limited to a few choice of internalFormat which lead to choice of pixeltype and gltype. It thus doesn't allow from user specific type.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/292","comments":0,"milestone":null,"number":292,"html_url":"https://github.com/openframeworks/openFrameworks/issues/292","assignee":null,"title":"ofTexture should be more flexible","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-01-09T20:46:43Z","state":"open","user":{"url":"https://api.github.com/users/I33N","gravatar_id":"ba8d7c3b4532d3747c30b9be91dc20d5","login":"I33N","avatar_url":"https://secure.gravatar.com/avatar/ba8d7c3b4532d3747c30b9be91dc20d5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":520375},"id":516071,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T10:49:15Z","body":"ofImage::getWidth()/getHeight() are just getters that do absolutely nothing but return a copy of the width and height. these methods should be marked const.\r\n\r\n[added]: there are hacks inside ofxCv that i've had to make because getWidth/getHeight are not const correct. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/288","comments":6,"milestone":null,"number":288,"html_url":"https://github.com/openframeworks/openFrameworks/issues/288","assignee":null,"title":"const correctness - add const to getWidth/getHeight","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-08T02:14:03Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":513779,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2010-11-30T05:13:10Z","body":"This is giving me some crashes. There needs to be a way to disable this when making custom windows. I have tried to do atexit(NULL); but the callback in ofRunApp(ofBaseApp * OFSA) is still being called. \r\n\r\nmaybe something like:\r\n\r\nvoid ofRunApp(ofBaseApp * OFSA, bool useExitCallback);\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/275","comments":0,"milestone":null,"number":275,"html_url":"https://github.com/openframeworks/openFrameworks/issues/275","assignee":null,"title":"atexit(ofExitCallback);","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-11-30T05:13:10Z","state":"open","user":{"url":"https://api.github.com/users/vanderlin","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":149997},"id":445829,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-03-17T02:02:25Z","body":"bottom left corner is inconsistent with every other drawing command in OF, should be top left instead.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/271","comments":7,"milestone":null,"number":271,"html_url":"https://github.com/openframeworks/openFrameworks/issues/271","assignee":null,"title":"ofDrawBitmapString draws from bottom left","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-11-22T21:30:40Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":433297,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-06-03T19:04:08Z","body":"test if this is really useful:\r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=7&t=4889&view=unread#unread\r\n\r\nhe adds a queue just before the color conversion","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/265","comments":0,"milestone":null,"number":265,"html_url":"https://github.com/openframeworks/openFrameworks/issues/265","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"linux videograbber stopping after some time","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2010-11-18T12:07:46Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":426050,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-19T22:47:21Z","body":"ofClear(r,g,b) is inconsistent with ofBackground(r,g,b) because the alpha is 0 by default -- meaning you always have to explicitly declare the alpha to clear the background.\r\n\r\nfurthermore, because all the arguments have default values there is not/cannot exist an ofClear(gray, alpha) to match ofSetColor style","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/264","comments":5,"milestone":null,"number":264,"html_url":"https://github.com/openframeworks/openFrameworks/issues/264","assignee":null,"title":"ofClear uses inconsistent arguments","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2010-11-18T06:15:47Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":425675,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=13 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4931'), ('content-length', '46291'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"bf7e6718fe6b733d04e77e00e220150f"'), ('date', 'Tue, 29 May 2012 19:27:22 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-12-05T21:58:33Z","body":"A lot of OF files are including ofMain / ofConstants.h - this makes compiles super slow. Try to have files only include what they need. Or find a way to break things up into the most often used ( windows.h etc ) and less used. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/255","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":255,"html_url":"https://github.com/openframeworks/openFrameworks/issues/255","assignee":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"title":"COMPILE SPEED UP - cleanup internal includes to avoid ofMain.h and ofConstants.h","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2010-11-11T21:14:05Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":413771,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T20:11:33Z","body":"ofHideCursor()/ofShowCursor()\r\n\r\nofEnableArbTex()\r\nofEnableSetupScreen()\r\nofEnableDataPath()\r\nofEnableAlphaBlending()\r\nofEnableSmoothing()\r\n\r\nofSetFullscreen() + ofToggleFullscreen()\r\nofSetVerticalSync()\r\n\r\netc.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/249","comments":1,"milestone":null,"number":249,"html_url":"https://github.com/openframeworks/openFrameworks/issues/249","assignee":null,"title":"normalize option nomenclature (hide/enable/set/etc.)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2010-11-03T22:52:08Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":399214,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T22:03:41Z","body":"some video to test:\r\n\r\nmmsh://live.camstreams.com/cscamglobal16?MSWMExt=.asf\r\n\r\nit works ok with totem so it should be a problem in ofGstUtils","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/245","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":245,"html_url":"https://github.com/openframeworks/openFrameworks/issues/245","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"gstreamer problems with streaming of microsoft video","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2010-10-13T16:33:06Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":360885,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-13T20:13:07Z","body":"I found an annoying bug in ofVideoPlayer.\nThis module do not like to be dynamically created or destroyed.\nCheck this little example :\n\nhttp://knu.free.fr/bug_ofVideoPlayer.zip\n\nLeft-click to create an object playing video.\nRight-click to suppress the last video.\n\nhere are the phenomenons I am facing on my Win7 machine :\n\n- \nIf you create an object, and then you suppress it, and then try to create an object again, the app will crash.\n\n- \nIf you create some objects (lets say 8), and then you suppress all of them, the app will crash before the last one (not always, but most of the time).\n\n\n\nNow in OF source tree, try replacing ofVideoPlayer.cpp with FIX_ofVideoPlayer.cpp (at the root of the zip)\nRebuild the project.\nNow everything should be working as expected.\n\n\nThe modifications I made in the source are marked by : //###############\n\nI do not have time to fully read and understand the quicktime API, so there are chances this workaround is fucking dirty.\nBut at least it seems to work.\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/244","comments":1,"milestone":null,"number":244,"html_url":"https://github.com/openframeworks/openFrameworks/issues/244","assignee":null,"title":"bug in ofVideoPlayer","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2010-10-11T19:56:46Z","state":"open","user":{"url":"https://api.github.com/users/fmauclere","avatar_url":"https://secure.gravatar.com/avatar/1c7dcbab3712f1a4d90bd2c3aa9a3e3d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"1c7dcbab3712f1a4d90bd2c3aa9a3e3d","login":"fmauclere","id":435720},"id":357395,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-10T05:06:06Z","body":"Check out this code - also check if latest ffmpeg is better optimized for iphone.\r\nhttp://github.com/jgh-/FFmpeg-for-iOS","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/240","comments":0,"milestone":null,"number":240,"html_url":"https://github.com/openframeworks/openFrameworks/issues/240","assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"title":"iphone video player - ffmpeg and audioqueues","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-10-06T17:19:57Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":349886,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-10T05:08:56Z","body":"XCode: 3.2.4\nOF: github master @24 Sep 2010\nCompiled as: device base SDK 4.1 release arm7 deployment target 3.2\n\nWeird error: Build ofAudioOutputExample. Add a void testApp::exit() to see if it is called. Run app on ipod touch 2010 version with 4.1 installed.\n\nApp runs OK yet pressing the exit button on front of device quits the app, but xcode keeps running. Digging in a bit it appears not only testApp::exit, but ofExitCallback is not getting called.\n\nSwitch to iPad (no other settings changed) and app runs fine, and exits properly.\n\nSwitch to BaseSDK 3.2 and example runs fine and exits fine on both iPad and iPod.\n\nIdeas? Is this just me? I'm fairly new to OF, XCode and iPhone\n\n[edit]\nOK I worked out that pressing the \"close\" button in 4.1 calls applicationWillResignActive in ofxiPhoneAppDelegate.mm. As a hacky workaround as my app just needs to exit, not sit in background, I added exit(0); to the end of applicationWillResignActive and it seems to work.\n\nWould like to know how to do this properly though.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/236","comments":1,"milestone":null,"number":236,"html_url":"https://github.com/openframeworks/openFrameworks/issues/236","assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"title":"ofExitCallback not being called on iphone4.1?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-09-25T01:55:49Z","state":"open","user":{"url":"https://api.github.com/users/DavidDC","avatar_url":"https://secure.gravatar.com/avatar/a6fdad0c31fcd273a1ba89434fec0419?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"a6fdad0c31fcd273a1ba89434fec0419","login":"DavidDC","id":415101},"id":332379,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-04-19T00:32:33Z","body":"related to #221: texData.bAllocated is only used in the isAllocated method which can be changed from:\r\n\r\n bool ofTexture::bAllocated(){\r\n return texData.bAllocated;\r\n }\r\n\r\nto\r\n\r\n bool ofTexture::bAllocated(){\r\n return texData.textureID!=0;\r\n }\r\n\r\navoiding problems like #221 since we don't have two flags for the same thing","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/228","comments":4,"milestone":null,"number":228,"html_url":"https://github.com/openframeworks/openFrameworks/issues/228","assignee":null,"title":"remove bAllocated in ofTexture?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2010-09-09T14:20:55Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":309191,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T15:45:27Z","body":"Segfault when playing .ogv files on 64 bit linux.\nSee forum post - http://www.openframeworks.cc/forum/viewtopic.php?f=7&t=4582","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/227","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":227,"html_url":"https://github.com/openframeworks/openFrameworks/issues/227","assignee":null,"title":"Ubuntu 64-bit conflict with FMOD when playing ogg theora files","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2010-09-08T14:54:33Z","state":"open","user":{"url":"https://api.github.com/users/pierrep","avatar_url":"https://secure.gravatar.com/avatar/be11c9de8242e7aef0446eceaa289e01?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"be11c9de8242e7aef0446eceaa289e01","login":"pierrep","id":392160},"id":307684,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-08-31T10:54:19Z","body":"It would be nice to have:\r\n\r\n\tconst ofxVec2f xunit2f(1, 0), yunit2f(0, 1);\r\n\tconst ofxVec3f xunit3f(1, 0, 0), yunit3f(0, 1, 0), zunit3f(0, 0, 1);\r\n\r\nOr something similar that allows for more elegant notation when you're multiplying or adding by an axis.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/225","comments":0,"milestone":null,"number":225,"html_url":"https://github.com/openframeworks/openFrameworks/issues/225","assignee":null,"title":"ofxVectorMath constants","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-08-31T10:54:19Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":295913,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-26T18:37:47Z","body":"can this be useful?\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=25&t=4500\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/224","comments":1,"milestone":null,"number":224,"html_url":"https://github.com/openframeworks/openFrameworks/issues/224","assignee":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"title":"gaussian noise","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"}],"closed_at":null,"created_at":"2010-08-26T10:21:24Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":290973,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-10-17T13:58:53Z","body":"ofxOsc causes a memory access violation in VS2008, when you use sendMessage(ofxOscMessage) from within a class.\r\nNo error when you run that from main ofApp","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/214","comments":1,"milestone":null,"number":214,"html_url":"https://github.com/openframeworks/openFrameworks/issues/214","assignee":null,"title":"ofxOsc memory access violation. namespace issue?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-08-04T05:59:22Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":268332,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-14T15:12:26Z","body":"e) get arturo's script to work, or rewrite a new one to just clobber a given directory (and not pull from git, etc as it's doing now). \r\n\r\ntheo - might be good to have two scripts?\r\n1) to pull from git \r\n2) to remove everything not related to a platform - or maybe better just copies the files into a folder for that platform. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/199","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":199,"html_url":"https://github.com/openframeworks/openFrameworks/issues/199","assignee":null,"title":"script that doesn't pull everything from git","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-06-01T13:28:54Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":211418,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-05-25T14:54:52Z","body":"\r\nas per: \r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=8&t=3962&p=20661#p20661\r\n\r\nwe should explain how to use it properly. \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/194","comments":0,"milestone":null,"number":194,"html_url":"https://github.com/openframeworks/openFrameworks/issues/194","assignee":null,"title":"ofGetAppPtr documentation is wrong ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"closed_at":null,"created_at":"2010-05-25T14:54:52Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":205935,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:58:22Z","body":"http://www.glfw.org/release-2.6.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/193","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":193,"html_url":"https://github.com/openframeworks/openFrameworks/issues/193","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"look at glfw - just got updated","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-05-23T21:04:25Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":204247,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T19:20:16Z","body":"I had the L.A.S.E.R. tag software up and running great on my new MacBook Pro but recently my computer did a software update and now something is wrong and I can't properly use the program. I have snow leopard 10.6.3 OS. I'm not totally sure if it was the auto update that caused the issue but it seems like it stopped working after the update. Below I listed the suspected updates. Seems weird to me 2 digital camera RAW updates.\r\n\r\n3/27/10 Digital Camera RAW update 2.7\r\n3/27/10 Safari 4.0.5\r\n3/27/10 Digital Camera RAW update 3.1\r\n3/27/10 iMovie update 8.0.6\r\n\r\n0 com.apple.QuickTime \t0x9408e179 QTMLGrabMutex + 18\r\n1 com.apple.QuickTime \t0x9421b6a3 QTWorkContextCopyForMediaContextID + 28\r\n2 ...uickTimeStreaming.component\t0x14f77c15 HTTPDhlr_CheckForFatalError + 254\r\n3 ...uickTimeStreaming.component\t0x14f77cc6 HTTPDhlr_ReadSYNC + 165\r\n4 ...uickTimeStreaming.component\t0x14f7ab01 HTTPDataHandler_ScheduleData64 + 452\r\n5 ...ple.CoreServices.CarbonCore\t0x949a2d05 callComponentStorage_4444444 + 63\r\n6 ...ple.CoreServices.CarbonCore\t0x949976f0 CallComponentFunctionCommonWithStorage(char**, ComponentParameters*, long (*)(), unsigned long) + 54\r\n7 ...uickTimeStreaming.component\t0x14f784c7 HTTPDataHandler_ComponentDispatch + 110\r\n8 ...ple.CoreServices.CarbonCore\t0x9498fd87 CallComponentDispatch + 29\r\n9 com.apple.QuickTime \t0x94093540 DataHScheduleData64 + 73\r\n10 com.apple.QuickTime \t0x940b5704 NewMovieFromDataRefPriv_priv + 8296\r\n11 com.apple.QuickTime \t0x9419e613 NewMovieFromDataRef_priv + 54\r\n12 com.apple.QuickTime \t0x942fb95e NewMovieFromDataRef + 52\r\n13 com.yourcompany.openFrameworks\t0x0000aa2a createMovieFromURL(std::string, MovieType**&) + 112\r\n14 com.yourcompany.openFrameworks\t0x0000abe2 ofVideoPlayer::loadMovie(std::string) + 182\r\n15 com.yourcompany.openFrameworks\t0x0002fe03 appController::setup() + 2169\r\n16 com.yourcompany.openFrameworks\t0x00002864 ofRunApp(ofSimpleApp*) + 170\r\n17 com.yourcompany.openFrameworks\t0x0003dc06 main + 90\r\n18 com.yourcompany.openFrameworks\t0x00001da2 _start + 216\r\n19 com.yourcompany.openFrameworks\t0x00001cc9 start + 41","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/182","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":182,"html_url":"https://github.com/openframeworks/openFrameworks/issues/182","assignee":null,"title":"ofVideoPlayer - createMovieFromURL broken in 10.6.3 with specific updates?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-04-15T16:20:25Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":172424,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-04-14T15:48:19Z","body":"can we add moments to the blob. \n\nadd CvMoments moments to blob class\n\nand in ofxCvContourFinder.cpp line 119\n\n\t blobs[i].moments.m00 = myMoments->m00;\n\t\tblobs[i].moments.m10 = myMoments->m10;\n\t\tblobs[i].moments.m01 = myMoments->m01;\n\t\tblobs[i].moments.m20 = myMoments->m20;\n\t\tblobs[i].moments.m11 = myMoments->m11;\n\t\tblobs[i].moments.m02 = myMoments->m02;\n\t\tblobs[i].moments.m30 = myMoments->m30;\n\t\tblobs[i].moments.m21 = myMoments->m21;\n\t\tblobs[i].moments.m12 = myMoments->m12;\n\t\tblobs[i].moments.m03 = myMoments->m03;\n\t\t\n\t\tblobs[i].moments.mu20 = myMoments->mu20;\n\t\tblobs[i].moments.mu11 = myMoments->mu11;\n\t\tblobs[i].moments.mu02 = myMoments->mu02;\n\t\tblobs[i].moments.mu30 = myMoments->mu30;\n\t\tblobs[i].moments.mu21 = myMoments->mu21;\n\t\tblobs[i].moments.mu12 = myMoments->mu12;\n\t\tblobs[i].moments.mu03 = myMoments->mu03;\n\n\nthis is good for finding the angle and other info about the contour.\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/181","comments":2,"milestone":null,"number":181,"html_url":"https://github.com/openframeworks/openFrameworks/issues/181","assignee":null,"title":"ofxCvBlobs","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2010-04-14T15:42:22Z","state":"open","user":{"url":"https://api.github.com/users/vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","id":149997},"id":171615,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-29T15:04:04Z","body":"Buffer is 512 but should be 276 ( or something )\r\nSetting it to 256 says the buffer size should be 176 ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/178","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":178,"html_url":"https://github.com/openframeworks/openFrameworks/issues/178","assignee":null,"title":"iPhone sound bug with 1st gen ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-04-11T10:18:58Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":169176,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T19:18:14Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/175","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":175,"html_url":"https://github.com/openframeworks/openFrameworks/issues/175","assignee":null,"title":"bring examples up to date - make sexy","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"}],"closed_at":null,"created_at":"2010-04-06T19:44:04Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166214,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T19:14:03Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/174","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":174,"html_url":"https://github.com/openframeworks/openFrameworks/issues/174","assignee":null,"title":"vertical sync on for mac by default","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-04-06T19:43:21Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166212,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:58:10Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/173","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":173,"html_url":"https://github.com/openframeworks/openFrameworks/issues/173","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"ofAlphaBlending default on","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2010-04-06T19:42:34Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166211,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:57:50Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/172","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":172,"html_url":"https://github.com/openframeworks/openFrameworks/issues/172","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"rgb + alpha -> blit to texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-04-06T19:40:28Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166209,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:57:36Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/171","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":171,"html_url":"https://github.com/openframeworks/openFrameworks/issues/171","assignee":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"title":"sexy shader example","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"}],"closed_at":null,"created_at":"2010-04-06T19:38:51Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166208,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-03T19:40:33Z","body":"can we do it?\r\nwe need cross platform:\r\nplayback \r\nstreaming\r\npitch\r\npan \r\nmultiplay \r\n\r\nfor us to be compatible with what exists. \r\nOpenAL seems like the best choice.\r\nWhat other options are there?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/167","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","number":8,"title":"0080 Release","due_on":"2013-01-01T08:00:00Z","closed_issues":0,"open_issues":3,"created_at":"2012-02-25T01:34:28Z","state":"open","description":"","id":88731},"number":167,"html_url":"https://github.com/openframeworks/openFrameworks/issues/167","assignee":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"title":"replace fmod","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2010-04-06T12:13:31Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":165898,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:56:41Z","body":"i have this working for 3d with selection buffer although it's meant to be slow i haven't had any problems","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/160","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":160,"html_url":"https://github.com/openframeworks/openFrameworks/issues/160","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"ofIsUnderMouse?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2010-04-05T21:39:19Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":165537,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:54:57Z","body":"Theo: I have this code uses the selection buffer. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/153","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":153,"html_url":"https://github.com/openframeworks/openFrameworks/issues/153","assignee":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"title":"ofIsOnScreen - ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2010-04-05T18:49:10Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":165409,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=14 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4930'), ('content-length', '13008'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"a63cf45ee23c003caf863065072ec4bb"'), ('date', 'Tue, 29 May 2012 19:27:23 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-02-29T11:13:10Z","body":"check out - http://www.openframeworks.cc/forum/viewtopic.php?p=19169#p19169\r\npossible integration into core. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/140","comments":4,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":140,"html_url":"https://github.com/openframeworks/openFrameworks/issues/140","assignee":null,"title":"texture compression and mipmaps for of texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-04-02T19:43:00Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":163959,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-12T16:15:52Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=10&t=3319","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/128","comments":4,"milestone":null,"number":128,"html_url":"https://github.com/openframeworks/openFrameworks/issues/128","assignee":null,"title":"ofxTCPServer doesn't manage connected clients correcly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-02-14T09:40:13Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"arturoc","id":48240},"id":132671,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T12:31:57Z","body":"Something that easily converts vector direction to openGL degrees?\r\nI find myself constantly trying to guess 270 - atan2(y, x)*RAD_TO_DEG ..... etc\r\nTo rotate something along a vector. \r\n\r\nMight be good to have it be aware of the GL world orientation - or have it so you pass in the up \r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/126","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":126,"html_url":"https://github.com/openframeworks/openFrameworks/issues/126","assignee":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"title":"ofATan2GL / ofVecToGL ?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-02-13T14:22:51Z","state":"open","user":{"url":"https://api.github.com/users/openframeworks","gravatar_id":"a858611b044a8302ab14cfe752e17369","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"openframeworks","id":142866},"id":132377,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-22T15:51:57Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=7&t=3299&p=17852#p17852","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/124","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","number":6,"title":"0073 Release","closed_issues":0,"due_on":"2012-07-30T07:00:00Z","open_issues":5,"created_at":"2011-12-03T15:37:49Z","state":"open","description":"","id":62090},"number":124,"html_url":"https://github.com/openframeworks/openFrameworks/issues/124","assignee":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"title":"TTF type rendering in OF - fix fuzziness ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography","color":"DDDDDD"}],"closed_at":null,"created_at":"2010-02-13T14:15:25Z","state":"open","user":{"url":"https://api.github.com/users/openframeworks","gravatar_id":"a858611b044a8302ab14cfe752e17369","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"openframeworks","id":142866},"id":132373,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T12:30:14Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=8&t=1374","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/121","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":121,"html_url":"https://github.com/openframeworks/openFrameworks/issues/121","assignee":null,"title":"video: loop is not working unless you call play first","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"closed_at":null,"created_at":"2010-02-10T23:16:23Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"arturoc","id":48240},"id":130269,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T12:30:49Z","body":"it would make sense to have an opengl stress test app, that can test some basic about wether or not someone has ARB support, how fast their systems are, etc. I can imagine that for 0.07, we'll be helping people debug shaders and FBOs, having some way to gauge what kind of system they are on and what it can take, will be helpful. \r\n\r\nHere's a simple test app from the Lua-AV folks that looks like a reasonable system: \r\n\r\nhttp://img191.imageshack.us/img191/1659/picture3po.png","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/115","comments":0,"milestone":null,"number":115,"html_url":"https://github.com/openframeworks/openFrameworks/issues/115","assignee":null,"title":"opengl stress test example","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-01-12T02:56:21Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":111018,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-28T14:02:04Z","body":"at the moment, we've got it like:\r\n\r\nofAppGlutWindow::ofAppGlutWindow(){\r\n\tfps\t\t\t\t= 60.0; //give a realistic starting value - win32 issues\r\n\tbFrameRateSet\t\t= false;\r\n}\r\n\r\nbut I personally prefer all apps to start with some kind of similar frame rate (ie, examples running really fast on mac, etc). see for example: \r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?p=16520&#p16520\r\n\r\nthis kind of thing leads to less \"cross-platform-ness\" and more confusion from beginners, no? \r\n\r\n- z\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/107","comments":8,"milestone":null,"number":107,"html_url":"https://github.com/openframeworks/openFrameworks/issues/107","assignee":null,"title":"should we start all OF apps with a frame rate set?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2009-12-31T15:10:45Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":104702,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-27T15:47:45Z","body":"videoGrabber and serial listDevices should return a vector of strings apart from printing to console","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/91","comments":4,"milestone":null,"number":91,"html_url":"https://github.com/openframeworks/openFrameworks/issues/91","assignee":null,"title":"listDevices should return a list of strings","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2009-12-09T17:11:40Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"arturoc","id":48240},"id":94898,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + diff --git a/lib/github/tests/ReplayData/PaginatedList.testNoFirstPage.txt b/lib/github/tests/ReplayData/PaginatedList.testNoFirstPage.txt new file mode 100644 index 0000000000..a685e65e59 --- /dev/null +++ b/lib/github/tests/ReplayData/PaginatedList.testNoFirstPage.txt @@ -0,0 +1,9 @@ +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4927'), ('content-length', '52085'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"5e8867ffb4e7630e852b2b231f3b9cdb"'), ('date', 'Tue, 29 May 2012 19:36:57 GMT'), ('content-type', 'application/json; charset=utf-8')] diff --git a/lib/github/tests/ReplayData/PaginatedList.testReversedIterationSupportsIterator.txt b/lib/github/tests/ReplayData/PaginatedList.testReversedIterationSupportsIterator.txt new file mode 100644 index 0000000000..efcaa2c76c --- /dev/null +++ b/lib/github/tests/ReplayData/PaginatedList.testReversedIterationSupportsIterator.txt @@ -0,0 +1,21 @@ +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4927'), ('content-length', '52085'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"5e8867ffb4e7630e852b2b231f3b9cdb"'), ('date', 'Tue, 29 May 2012 19:36:57 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-27T18:11:17Z","body":"Since more and more of the OF Core now relies on Poco (ie ofThread, etc) does OF_USING_POCO make sense anymore?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1280","comments":0,"milestone":null,"number":1280,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1280","assignee":null,"title":"deprecate OF_USING_POCO?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-27T18:03:23Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"danomatika","id":480637},"id":4772349,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-28T08:08:24Z","body":"There occurs a weir glitch when compiling the ofShader example with my HD Graphics 3000 (288 Mb) (Mac osx 10.7.4 - Mac Mini - i5 - 2.3Ghz)\n\nI was able to get rid of the glitch by replacing \"gl_FragColor = gl_Color;\" with \"gl_FragColor = 255.0;\" or any other number.\nAnybody knows a reason for the glitch / proper solution?\n\nScreenshot: http://goo.gl/Xdf74\nOpenGL capacities on different graphic cards on apple machines: http://goo.gl/FGQ2N","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1279","comments":2,"milestone":null,"number":1279,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1279","assignee":null,"title":"ofShader example with HD Graphics 3000 issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-26T19:27:56Z","state":"open","user":{"url":"https://api.github.com/users/subtiv","gravatar_id":"837cfe96365c031130a46311eb11d86a","avatar_url":"https://secure.gravatar.com/avatar/837cfe96365c031130a46311eb11d86a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"subtiv","id":1012684},"id":4767675,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-25T18:39:02Z","body":"produces an error on app exit or tex destruction.\n\n OF: OF_LOG_ERROR: trying to delete a non indexed texture, something weird is happening. Deleting anyway\n\nThis is because retain(int id) is a static function in ofTexture.cpp. So we can't retain the depthStencilTexture.\n\nThis suggest we should move the texture allocation of the depth / stencil texture to ofTexture - something which is not possible at the moment. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1277","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1277,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1277","assignee":null,"title":"ofFbo can't retain depthStencil Texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-05-25T18:37:46Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":4758608,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-22T21:26:57Z","body":"\nthe offending line is: \n\nif( speed.getValue() != preSpeed ){\n\nwhich is evaluating as true even through the slider is not touched (float equality test, etc). \n\nif we alter it to something like: \n\nif( fabs(speed.getValue() - preSpeed) > 0.0001 ){\n\nthe code runs fine. probably nicer to add a \"value changed()\" functionality to the slider object though or use EPSILON, etc. \n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1271","comments":0,"milestone":null,"number":1271,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1271","assignee":null,"title":"periodic signal example doesn't run well on windows / cb (float equality error)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-05-22T21:26:57Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":4700182,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-22T16:41:21Z","body":"There's some error that appears on linux systems running the project generator to make VS examples, where the debug and release libs for opencv get added badly to the vs project: \n\n\t%(AdditionalDependencies);opencv_highgui231d.lib;opencv_calib3d231.lib;opencv_imgproc231d.lib;opencv_haartraining_engined.lib;opencv_gpu231d.lib;opencv_flann231.lib;opencv_contrib231d.lib;opencv_video231d.lib;opencv_objdetect231d.lib;zlib.lib;opencv_core231d.lib;opencv_contrib231.lib;opencv_ml231d.lib;opencv_features2d231.lib;opencv_core231.lib;opencv_gpu231.lib;opencv_legacy231d.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_ml231.lib;opencv_imgproc231.lib;opencv_objdetect231.lib;opencv_legacy231.lib;opencv_video231.lib\n\t\t\t\t%(AdditionalLibraryDirectories);..\\..\\..\\addons\\ofxOpenCv\\libs\\opencv\\lib\\vs2010\n\nthis doesn't seem to be the case on osx or windows, which produces correct results: \n\n\t%(AdditionalDependencies);opencv_calib3d231.lib;opencv_contrib231.lib;opencv_core231.lib;opencv_features2d231.lib;opencv_flann231.lib;opencv_gpu231.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_imgproc231.lib;opencv_legacy231.lib;opencv_ml231.lib;opencv_objdetect231.lib;opencv_video231.lib;zlib.lib\n\nwould be good to look at the logic of \"visualStudioProject::addAddon()\" and see if we can fix this.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1268","comments":9,"milestone":null,"number":1268,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1268","assignee":null,"title":"project generator - bad libs for VS / opencv examples","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-05-20T21:50:24Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":4662873,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T00:43:37Z","body":"I woud love some eyes on ofFbo would be great to get it cleaned up and standardized for 0072. \nRight now there are a ton of #ifdefs and some very hard to follow logic, which makes bug fixing quite difficult especially on OPENGL_ES\n\nsee: https://gist.github.com/2711815\n\n@elliotwoods @arturoc @memotv @damiannz @ofZach @kylemcdonald \n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1263","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1263,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1263","assignee":null,"title":"ofFbo.cpp is a huge mess! ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-16T16:27:30Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":4608132,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T14:29:02Z","body":"I added a .mailmap file to the repo to correctly collate all the contributors in spite of changing nick names/email addresses. This is useful when trying to identify contributors for a changelog or similar, or when using the git logging functions like shortlog.\n\nSee the before/after situation here: https://gist.github.com/2710366\n\nI have respected privacy and only used those real names that people have already given in a git ID in the repo. Mainly this addition only associates the different email addresses to one user. @arturoc wins the prize of most used emails! :-)\nThe list is pretty complete, I only had difficulties to associate some IDs to the correct Zachs, since it was not clear for some if @ofZach or @stfj (Zach Gage) was the contributor. Those were left as-is.\n\nIf anybody has objections to their various email being united under their name, please say so and I will correct/remove the relevant entries.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1262","comments":2,"milestone":null,"number":1262,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1262","assignee":null,"title":"Add .mailmap for contributor collation","labels":[],"closed_at":null,"created_at":"2012-05-16T13:44:32Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"id":4604661,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1262.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1262","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1262.patch"}},{"updated_at":"2012-05-16T09:35:31Z","body":"Address #375.\n\nAdd setVolumef(float). Also more clearly define volume ranges (int is 0..255, float is 0..1) and more robust clamping of volume argument.\n\nThis has not been tested on Linux or Windows.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1260","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1260,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1260","assignee":null,"title":"allow float volume on ofVideoPlayer","labels":[],"closed_at":null,"created_at":"2012-05-15T17:50:22Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"damiannz","id":144366},"id":4588997,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1260.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1260","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1260.patch"}},{"updated_at":"2012-05-21T07:31:47Z","body":"This was originally posted @\"biginners\".\n\nhttp://forum.openframeworks.cc/index.php/topic,9527.msg44049.html#msg44049\n\nJoshua noble suggested me to file it as a bug on jithub\n\n\n/////////////////original messages\n\nHello.\n\nI have question about ofShortPixels and ofShortColor.\n\nIf you execute the code below , it'll draw at half way screen height even though I did set aDot at (0. screen height / 4)\n\nAnd another weird thing is it draws 20 pixels instead of 10 pixels which I set for loop for 10 times.\n\nIt only draws correctly with ofPixels and ofColor.\n\nIt doesn't work with ofFloatPixels and ofFloatColor.\n\nPlease help me out.\n\nI need to have RGB value over 255 so I can check if those values are over 255.\n\nThanks in advanced\n\nJin\n\n\n.h file\nCode:\nview plaincopy to clipboardprint?\n\n #pragma once \n #include \"ofMain.h\" \n \n class Dot { \n public: \n ofVec2f location; \n \n Dot(){ \n location.set(0,0); \n } \n \n ~Dot(){} \n }; \n \n class testApp : public ofBaseApp{ \n public: \n void setup(); \n void update(); \n void draw(); \n \n int w,h; \n \n ofTexture particleTexture; \n ofShortPixels * rgbPixels; \n \n ofShortColor& paint(ofShortColor &); \n \n Dot aDot; \n \n \n }; \n\n\n.cpp file\nCode:\nview plaincopy to clipboardprint?\n\n #include \"testApp.h\" \n //-------------------------------------------------------------- \n void testApp::setup(){ \n ofSetFrameRate(30); \n ofSetBackgroundAuto(TRUE); \n ofBackground(0, 0, 0); \n w = ofGetWidth(); \n h = ofGetHeight(); \n \n particleTexture.allocate(w,h,GL_RGB); \n rgbPixels = new ofShortPixels; \n rgbPixels->allocate(w, h, 3); \n aDot.location.set(0, h/4); \n } \n \n //-------------------------------------------------------------- \n void testApp::update(){ \n ofShortColor pixelColor; \n ofShortColor newPixelColor; \n for(int i = 0; i<10; i++){ \n pixelColor = rgbPixels->getColor(aDot.location.x+i, aDot.location.y); \n \n newPixelColor = paint(pixelColor); \n \n rgbPixels->setColor(aDot.location.x+i, aDot.location.y,newPixelColor); \n \n } \n particleTexture.loadData(* rgbPixels); \n } \n \n //-------------------------------------------------------------- \n void testApp::draw(){ \n particleTexture.draw(0, 0, w, h); \n } \n \n ofShortColor & testApp::paint(ofShortColor & _c){ \n \n _c.r += 10; \n _c.g += 2; \n _c.b += 3; \n \n _c.set(_c.r, _c.g, _c.b); \n _c.clamp(); \n \n return _c; \n } ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1257","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1257,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1257","assignee":null,"title":"ofShortPixels doesn't draw pixels correctly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-14T05:46:14Z","state":"open","user":{"url":"https://api.github.com/users/gazaebal","gravatar_id":"f9d7811bb6318fedf7e9f2fe8bfece32","avatar_url":"https://secure.gravatar.com/avatar/f9d7811bb6318fedf7e9f2fe8bfece32?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"gazaebal","id":1736190},"id":4557803,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T21:42:08Z","body":"if i'm not mistaken, the correct way of using ofMatrix4x4 in oF is `glMultMatrixf(myMatrix.getPtr())` or `glLoadMatrixf`.\nThis seems a bit uncomfortable for me.\n\nsome candidates are:\n\n```c++\nofPushMatrix(const ofMatrix4x4 &); //needs alternatives as you might not want to push at the time\nofLoadMatrix(const ofMatrix4x4 &);\nofMultMatrix(const ofMatrix4x4 &);\n\nofMatrix4x4::apply();\nofMatrix4x4::glLoadMatrix(matrixMode = OF_MATRIX_MODE_CURRENT);\n```\n\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1256","comments":5,"milestone":null,"number":1256,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1256","assignee":null,"title":"Feature ofPushMatrix(const ofMatrix4x4 &)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-13T18:20:29Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4554058,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-11T21:24:20Z","body":"\tunsigned char faceSize = 3;\n\tif(data.getNumIndices()){\n\t\tos << \"element face \" << data.getNumIndices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t} else if(data.getMode() == OF_PRIMITIVE_TRIANGLES) {\n\t\tos << \"element face \" << data.getNumVertices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t}\n\nThe facesize is being set as static as 3, but this results in strange exports...things open OK in Meshlab, but exporting to other programs with no faces seems like it won't work","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1252","comments":6,"milestone":null,"number":1252,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1252","assignee":null,"title":"0071 ply (mesh.save()) Point export is broken","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-11T19:45:53Z","state":"open","user":{"url":"https://api.github.com/users/laserpilot","gravatar_id":"07001341fe6c156dddd5b9d06d828cba","avatar_url":"https://secure.gravatar.com/avatar/07001341fe6c156dddd5b9d06d828cba?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"laserpilot","id":1041023},"id":4539985,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:33:31Z","body":"couple of minor bugfixes (absolute path wasn't being detected on second if [absolute] for windows paths)\r\nfixes unixy paths no matter what on windows","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1251","comments":8,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1251,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1251","assignee":null,"title":"Bugfix of to data path","labels":[],"closed_at":null,"created_at":"2012-05-10T06:44:20Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4507572,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1251.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1251","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1251.patch"}},{"updated_at":"2012-05-16T09:43:23Z","body":":(\r\n\r\nIt seems i'm getting double 'data/' in my paths\r\nafter a little tracking down, i found this is because ofSystemLoadDialog changes the current working directory\r\n\r\nso we could try and either fix that by popping the folder after the dialog, \r\nof for windows using something like ```GetModuleFileName``` to get the path of the current exe rather than using the current working directory\r\n\r\nI can't seem to run GetModuleFileName from ofUtils.cpp even though windows.h is included in ofConstants.h (included in ofUtils.h)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1250","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1250,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1250","assignee":null,"title":"bug: ofToDataPath broken again","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-05-10T06:35:24Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4507492,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:42:44Z","body":"'ofx TCPClient :: receiveRaw' was found in the proble.\n\nOriginal :\n\n\tint ofxTCPClient::receiveRawBytes(char * receiveBuffer, int numBytes){\n\t\t\t messageSize = TCPClient.Receive(receiveBuffer, numBytes);\t\n\t\t\t if(messageSize==0){\t\t\n\t\t\t\t\t\tclose();\t\n\t\t\t }\t\n\t\t\t return messageSize;\n\t}\n\nBut 'TCPClient.Receive (receiveBuffer, numBytes)' from '-1' may return\n\nI was modified\n\n\tstring ofxTCPClient::receiveRaw(){\n\t\t\t messageSize = TCPClient.Receive(tmpBuff, TCP_MAX_MSG_SIZE);\n\t\t\t if(messageSize==0){\n\t\t\t\t\t\tclose();\n\t\t\t }\n\t\t\t //TCPClient.Receive is return -1....\n\t\t\t else if(messageSize < 0){ \n\t\t\t\t\t\ttmpBuff[0] = 0;\n\t\t\t }\n\t\t\t else if(messageSize 0.0001 ){\n\nthe code runs fine. probably nicer to add a \"value changed()\" functionality to the slider object though or use EPSILON, etc. \n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1271","comments":0,"milestone":null,"number":1271,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1271","assignee":null,"title":"periodic signal example doesn't run well on windows / cb (float equality error)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-05-22T21:26:57Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":4700182,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-22T16:41:21Z","body":"There's some error that appears on linux systems running the project generator to make VS examples, where the debug and release libs for opencv get added badly to the vs project: \n\n\t%(AdditionalDependencies);opencv_highgui231d.lib;opencv_calib3d231.lib;opencv_imgproc231d.lib;opencv_haartraining_engined.lib;opencv_gpu231d.lib;opencv_flann231.lib;opencv_contrib231d.lib;opencv_video231d.lib;opencv_objdetect231d.lib;zlib.lib;opencv_core231d.lib;opencv_contrib231.lib;opencv_ml231d.lib;opencv_features2d231.lib;opencv_core231.lib;opencv_gpu231.lib;opencv_legacy231d.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_ml231.lib;opencv_imgproc231.lib;opencv_objdetect231.lib;opencv_legacy231.lib;opencv_video231.lib\n\t\t\t\t%(AdditionalLibraryDirectories);..\\..\\..\\addons\\ofxOpenCv\\libs\\opencv\\lib\\vs2010\n\nthis doesn't seem to be the case on osx or windows, which produces correct results: \n\n\t%(AdditionalDependencies);opencv_calib3d231.lib;opencv_contrib231.lib;opencv_core231.lib;opencv_features2d231.lib;opencv_flann231.lib;opencv_gpu231.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_imgproc231.lib;opencv_legacy231.lib;opencv_ml231.lib;opencv_objdetect231.lib;opencv_video231.lib;zlib.lib\n\nwould be good to look at the logic of \"visualStudioProject::addAddon()\" and see if we can fix this.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1268","comments":9,"milestone":null,"number":1268,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1268","assignee":null,"title":"project generator - bad libs for VS / opencv examples","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-05-20T21:50:24Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":4662873,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T00:43:37Z","body":"I woud love some eyes on ofFbo would be great to get it cleaned up and standardized for 0072. \nRight now there are a ton of #ifdefs and some very hard to follow logic, which makes bug fixing quite difficult especially on OPENGL_ES\n\nsee: https://gist.github.com/2711815\n\n@elliotwoods @arturoc @memotv @damiannz @ofZach @kylemcdonald \n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1263","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1263,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1263","assignee":null,"title":"ofFbo.cpp is a huge mess! ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-16T16:27:30Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":4608132,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T14:29:02Z","body":"I added a .mailmap file to the repo to correctly collate all the contributors in spite of changing nick names/email addresses. This is useful when trying to identify contributors for a changelog or similar, or when using the git logging functions like shortlog.\n\nSee the before/after situation here: https://gist.github.com/2710366\n\nI have respected privacy and only used those real names that people have already given in a git ID in the repo. Mainly this addition only associates the different email addresses to one user. @arturoc wins the prize of most used emails! :-)\nThe list is pretty complete, I only had difficulties to associate some IDs to the correct Zachs, since it was not clear for some if @ofZach or @stfj (Zach Gage) was the contributor. Those were left as-is.\n\nIf anybody has objections to their various email being united under their name, please say so and I will correct/remove the relevant entries.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1262","comments":2,"milestone":null,"number":1262,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1262","assignee":null,"title":"Add .mailmap for contributor collation","labels":[],"closed_at":null,"created_at":"2012-05-16T13:44:32Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"id":4604661,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1262.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1262","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1262.patch"}},{"updated_at":"2012-05-16T09:35:31Z","body":"Address #375.\n\nAdd setVolumef(float). Also more clearly define volume ranges (int is 0..255, float is 0..1) and more robust clamping of volume argument.\n\nThis has not been tested on Linux or Windows.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1260","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1260,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1260","assignee":null,"title":"allow float volume on ofVideoPlayer","labels":[],"closed_at":null,"created_at":"2012-05-15T17:50:22Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"damiannz","id":144366},"id":4588997,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1260.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1260","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1260.patch"}},{"updated_at":"2012-05-21T07:31:47Z","body":"This was originally posted @\"biginners\".\n\nhttp://forum.openframeworks.cc/index.php/topic,9527.msg44049.html#msg44049\n\nJoshua noble suggested me to file it as a bug on jithub\n\n\n/////////////////original messages\n\nHello.\n\nI have question about ofShortPixels and ofShortColor.\n\nIf you execute the code below , it'll draw at half way screen height even though I did set aDot at (0. screen height / 4)\n\nAnd another weird thing is it draws 20 pixels instead of 10 pixels which I set for loop for 10 times.\n\nIt only draws correctly with ofPixels and ofColor.\n\nIt doesn't work with ofFloatPixels and ofFloatColor.\n\nPlease help me out.\n\nI need to have RGB value over 255 so I can check if those values are over 255.\n\nThanks in advanced\n\nJin\n\n\n.h file\nCode:\nview plaincopy to clipboardprint?\n\n #pragma once \n #include \"ofMain.h\" \n \n class Dot { \n public: \n ofVec2f location; \n \n Dot(){ \n location.set(0,0); \n } \n \n ~Dot(){} \n }; \n \n class testApp : public ofBaseApp{ \n public: \n void setup(); \n void update(); \n void draw(); \n \n int w,h; \n \n ofTexture particleTexture; \n ofShortPixels * rgbPixels; \n \n ofShortColor& paint(ofShortColor &); \n \n Dot aDot; \n \n \n }; \n\n\n.cpp file\nCode:\nview plaincopy to clipboardprint?\n\n #include \"testApp.h\" \n //-------------------------------------------------------------- \n void testApp::setup(){ \n ofSetFrameRate(30); \n ofSetBackgroundAuto(TRUE); \n ofBackground(0, 0, 0); \n w = ofGetWidth(); \n h = ofGetHeight(); \n \n particleTexture.allocate(w,h,GL_RGB); \n rgbPixels = new ofShortPixels; \n rgbPixels->allocate(w, h, 3); \n aDot.location.set(0, h/4); \n } \n \n //-------------------------------------------------------------- \n void testApp::update(){ \n ofShortColor pixelColor; \n ofShortColor newPixelColor; \n for(int i = 0; i<10; i++){ \n pixelColor = rgbPixels->getColor(aDot.location.x+i, aDot.location.y); \n \n newPixelColor = paint(pixelColor); \n \n rgbPixels->setColor(aDot.location.x+i, aDot.location.y,newPixelColor); \n \n } \n particleTexture.loadData(* rgbPixels); \n } \n \n //-------------------------------------------------------------- \n void testApp::draw(){ \n particleTexture.draw(0, 0, w, h); \n } \n \n ofShortColor & testApp::paint(ofShortColor & _c){ \n \n _c.r += 10; \n _c.g += 2; \n _c.b += 3; \n \n _c.set(_c.r, _c.g, _c.b); \n _c.clamp(); \n \n return _c; \n } ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1257","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1257,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1257","assignee":null,"title":"ofShortPixels doesn't draw pixels correctly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-14T05:46:14Z","state":"open","user":{"url":"https://api.github.com/users/gazaebal","gravatar_id":"f9d7811bb6318fedf7e9f2fe8bfece32","avatar_url":"https://secure.gravatar.com/avatar/f9d7811bb6318fedf7e9f2fe8bfece32?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"gazaebal","id":1736190},"id":4557803,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T21:42:08Z","body":"if i'm not mistaken, the correct way of using ofMatrix4x4 in oF is `glMultMatrixf(myMatrix.getPtr())` or `glLoadMatrixf`.\nThis seems a bit uncomfortable for me.\n\nsome candidates are:\n\n```c++\nofPushMatrix(const ofMatrix4x4 &); //needs alternatives as you might not want to push at the time\nofLoadMatrix(const ofMatrix4x4 &);\nofMultMatrix(const ofMatrix4x4 &);\n\nofMatrix4x4::apply();\nofMatrix4x4::glLoadMatrix(matrixMode = OF_MATRIX_MODE_CURRENT);\n```\n\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1256","comments":5,"milestone":null,"number":1256,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1256","assignee":null,"title":"Feature ofPushMatrix(const ofMatrix4x4 &)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-13T18:20:29Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4554058,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-11T21:24:20Z","body":"\tunsigned char faceSize = 3;\n\tif(data.getNumIndices()){\n\t\tos << \"element face \" << data.getNumIndices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t} else if(data.getMode() == OF_PRIMITIVE_TRIANGLES) {\n\t\tos << \"element face \" << data.getNumVertices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t}\n\nThe facesize is being set as static as 3, but this results in strange exports...things open OK in Meshlab, but exporting to other programs with no faces seems like it won't work","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1252","comments":6,"milestone":null,"number":1252,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1252","assignee":null,"title":"0071 ply (mesh.save()) Point export is broken","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-11T19:45:53Z","state":"open","user":{"url":"https://api.github.com/users/laserpilot","gravatar_id":"07001341fe6c156dddd5b9d06d828cba","avatar_url":"https://secure.gravatar.com/avatar/07001341fe6c156dddd5b9d06d828cba?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"laserpilot","id":1041023},"id":4539985,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:33:31Z","body":"couple of minor bugfixes (absolute path wasn't being detected on second if [absolute] for windows paths)\r\nfixes unixy paths no matter what on windows","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1251","comments":8,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1251,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1251","assignee":null,"title":"Bugfix of to data path","labels":[],"closed_at":null,"created_at":"2012-05-10T06:44:20Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4507572,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1251.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1251","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1251.patch"}},{"updated_at":"2012-05-16T09:43:23Z","body":":(\r\n\r\nIt seems i'm getting double 'data/' in my paths\r\nafter a little tracking down, i found this is because ofSystemLoadDialog changes the current working directory\r\n\r\nso we could try and either fix that by popping the folder after the dialog, \r\nof for windows using something like ```GetModuleFileName``` to get the path of the current exe rather than using the current working directory\r\n\r\nI can't seem to run GetModuleFileName from ofUtils.cpp even though windows.h is included in ofConstants.h (included in ofUtils.h)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1250","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1250,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1250","assignee":null,"title":"bug: ofToDataPath broken again","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-05-10T06:35:24Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4507492,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:42:44Z","body":"'ofx TCPClient :: receiveRaw' was found in the proble.\n\nOriginal :\n\n\tint ofxTCPClient::receiveRawBytes(char * receiveBuffer, int numBytes){\n\t\t\t messageSize = TCPClient.Receive(receiveBuffer, numBytes);\t\n\t\t\t if(messageSize==0){\t\t\n\t\t\t\t\t\tclose();\t\n\t\t\t }\t\n\t\t\t return messageSize;\n\t}\n\nBut 'TCPClient.Receive (receiveBuffer, numBytes)' from '-1' may return\n\nI was modified\n\n\tstring ofxTCPClient::receiveRaw(){\n\t\t\t messageSize = TCPClient.Receive(tmpBuff, TCP_MAX_MSG_SIZE);\n\t\t\t if(messageSize==0){\n\t\t\t\t\t\tclose();\n\t\t\t }\n\t\t\t //TCPClient.Receive is return -1....\n\t\t\t else if(messageSize < 0){ \n\t\t\t\t\t\ttmpBuff[0] = 0;\n\t\t\t }\n\t\t\t else if(messageSize; rel="next", ; rel="last"'), ('etag', '"c3111cf6eead96b7d0ea0d14f4a5e9eb"'), ('date', 'Tue, 29 May 2012 06:43:34 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-27T18:11:17Z","body":"Since more and more of the OF Core now relies on Poco (ie ofThread, etc) does OF_USING_POCO make sense anymore?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1280","comments":0,"milestone":null,"number":1280,"assignee":null,"closed_at":null,"title":"deprecate OF_USING_POCO?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"created_at":"2012-05-27T18:03:23Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":4772349,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1280"},{"updated_at":"2012-05-28T08:08:24Z","body":"There occurs a weir glitch when compiling the ofShader example with my HD Graphics 3000 (288 Mb) (Mac osx 10.7.4 - Mac Mini - i5 - 2.3Ghz)\n\nI was able to get rid of the glitch by replacing \"gl_FragColor = gl_Color;\" with \"gl_FragColor = 255.0;\" or any other number.\nAnybody knows a reason for the glitch / proper solution?\n\nScreenshot: http://goo.gl/Xdf74\nOpenGL capacities on different graphic cards on apple machines: http://goo.gl/FGQ2N","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1279","comments":2,"milestone":null,"number":1279,"assignee":null,"closed_at":null,"title":"ofShader example with HD Graphics 3000 issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"created_at":"2012-05-26T19:27:56Z","state":"open","user":{"url":"https://api.github.com/users/subtiv","avatar_url":"https://secure.gravatar.com/avatar/837cfe96365c031130a46311eb11d86a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"837cfe96365c031130a46311eb11d86a","login":"subtiv","id":1012684},"id":4767675,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1279"},{"updated_at":"2012-05-25T18:39:02Z","body":"produces an error on app exit or tex destruction.\n\n OF: OF_LOG_ERROR: trying to delete a non indexed texture, something weird is happening. Deleting anyway\n\nThis is because retain(int id) is a static function in ofTexture.cpp. So we can't retain the depthStencilTexture.\n\nThis suggest we should move the texture allocation of the depth / stencil texture to ofTexture - something which is not possible at the moment. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1277","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":16,"open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1277,"assignee":null,"closed_at":null,"title":"ofFbo can't retain depthStencil Texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2012-05-25T18:37:46Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":4758608,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1277"},{"updated_at":"2012-05-22T21:26:57Z","body":"\nthe offending line is: \n\nif( speed.getValue() != preSpeed ){\n\nwhich is evaluating as true even through the slider is not touched (float equality test, etc). \n\nif we alter it to something like: \n\nif( fabs(speed.getValue() - preSpeed) > 0.0001 ){\n\nthe code runs fine. probably nicer to add a \"value changed()\" functionality to the slider object though or use EPSILON, etc. \n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1271","comments":0,"milestone":null,"number":1271,"assignee":null,"closed_at":null,"title":"periodic signal example doesn't run well on windows / cb (float equality error)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2012-05-22T21:26:57Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":4700182,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1271"},{"updated_at":"2012-05-22T16:41:21Z","body":"There's some error that appears on linux systems running the project generator to make VS examples, where the debug and release libs for opencv get added badly to the vs project: \n\n\t%(AdditionalDependencies);opencv_highgui231d.lib;opencv_calib3d231.lib;opencv_imgproc231d.lib;opencv_haartraining_engined.lib;opencv_gpu231d.lib;opencv_flann231.lib;opencv_contrib231d.lib;opencv_video231d.lib;opencv_objdetect231d.lib;zlib.lib;opencv_core231d.lib;opencv_contrib231.lib;opencv_ml231d.lib;opencv_features2d231.lib;opencv_core231.lib;opencv_gpu231.lib;opencv_legacy231d.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_ml231.lib;opencv_imgproc231.lib;opencv_objdetect231.lib;opencv_legacy231.lib;opencv_video231.lib\n\t\t\t\t%(AdditionalLibraryDirectories);..\\..\\..\\addons\\ofxOpenCv\\libs\\opencv\\lib\\vs2010\n\nthis doesn't seem to be the case on osx or windows, which produces correct results: \n\n\t%(AdditionalDependencies);opencv_calib3d231.lib;opencv_contrib231.lib;opencv_core231.lib;opencv_features2d231.lib;opencv_flann231.lib;opencv_gpu231.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_imgproc231.lib;opencv_legacy231.lib;opencv_ml231.lib;opencv_objdetect231.lib;opencv_video231.lib;zlib.lib\n\nwould be good to look at the logic of \"visualStudioProject::addAddon()\" and see if we can fix this.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1268","comments":9,"milestone":null,"number":1268,"assignee":null,"closed_at":null,"title":"project generator - bad libs for VS / opencv examples","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"created_at":"2012-05-20T21:50:24Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":4662873,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1268"},{"updated_at":"2012-05-17T00:43:37Z","body":"I woud love some eyes on ofFbo would be great to get it cleaned up and standardized for 0072. \nRight now there are a ton of #ifdefs and some very hard to follow logic, which makes bug fixing quite difficult especially on OPENGL_ES\n\nsee: https://gist.github.com/2711815\n\n@elliotwoods @arturoc @memotv @damiannz @ofZach @kylemcdonald \n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1263","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":16,"open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1263,"assignee":null,"closed_at":null,"title":"ofFbo.cpp is a huge mess! ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"created_at":"2012-05-16T16:27:30Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":4608132,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1263"},{"updated_at":"2012-05-17T14:29:02Z","body":"I added a .mailmap file to the repo to correctly collate all the contributors in spite of changing nick names/email addresses. This is useful when trying to identify contributors for a changelog or similar, or when using the git logging functions like shortlog.\n\nSee the before/after situation here: https://gist.github.com/2710366\n\nI have respected privacy and only used those real names that people have already given in a git ID in the repo. Mainly this addition only associates the different email addresses to one user. @arturoc wins the prize of most used emails! :-)\nThe list is pretty complete, I only had difficulties to associate some IDs to the correct Zachs, since it was not clear for some if @ofZach or @stfj (Zach Gage) was the contributor. Those were left as-is.\n\nIf anybody has objections to their various email being united under their name, please say so and I will correct/remove the relevant entries.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1262","comments":2,"milestone":null,"number":1262,"assignee":null,"closed_at":null,"title":"Add .mailmap for contributor collation","labels":[],"created_at":"2012-05-16T13:44:32Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":4604661,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1262.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1262.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/1262"},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1262"},{"updated_at":"2012-05-16T09:35:31Z","body":"Address #375.\n\nAdd setVolumef(float). Also more clearly define volume ranges (int is 0..255, float is 0..1) and more robust clamping of volume argument.\n\nThis has not been tested on Linux or Windows.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1260","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":16,"open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1260,"assignee":null,"closed_at":null,"title":"allow float volume on ofVideoPlayer","labels":[],"created_at":"2012-05-15T17:50:22Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":4588997,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1260.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1260.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/1260"},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1260"},{"updated_at":"2012-05-21T07:31:47Z","body":"This was originally posted @\"biginners\".\n\nhttp://forum.openframeworks.cc/index.php/topic,9527.msg44049.html#msg44049\n\nJoshua noble suggested me to file it as a bug on jithub\n\n\n/////////////////original messages\n\nHello.\n\nI have question about ofShortPixels and ofShortColor.\n\nIf you execute the code below , it'll draw at half way screen height even though I did set aDot at (0. screen height / 4)\n\nAnd another weird thing is it draws 20 pixels instead of 10 pixels which I set for loop for 10 times.\n\nIt only draws correctly with ofPixels and ofColor.\n\nIt doesn't work with ofFloatPixels and ofFloatColor.\n\nPlease help me out.\n\nI need to have RGB value over 255 so I can check if those values are over 255.\n\nThanks in advanced\n\nJin\n\n\n.h file\nCode:\nview plaincopy to clipboardprint?\n\n #pragma once \n #include \"ofMain.h\" \n \n class Dot { \n public: \n ofVec2f location; \n \n Dot(){ \n location.set(0,0); \n } \n \n ~Dot(){} \n }; \n \n class testApp : public ofBaseApp{ \n public: \n void setup(); \n void update(); \n void draw(); \n \n int w,h; \n \n ofTexture particleTexture; \n ofShortPixels * rgbPixels; \n \n ofShortColor& paint(ofShortColor &); \n \n Dot aDot; \n \n \n }; \n\n\n.cpp file\nCode:\nview plaincopy to clipboardprint?\n\n #include \"testApp.h\" \n //-------------------------------------------------------------- \n void testApp::setup(){ \n ofSetFrameRate(30); \n ofSetBackgroundAuto(TRUE); \n ofBackground(0, 0, 0); \n w = ofGetWidth(); \n h = ofGetHeight(); \n \n particleTexture.allocate(w,h,GL_RGB); \n rgbPixels = new ofShortPixels; \n rgbPixels->allocate(w, h, 3); \n aDot.location.set(0, h/4); \n } \n \n //-------------------------------------------------------------- \n void testApp::update(){ \n ofShortColor pixelColor; \n ofShortColor newPixelColor; \n for(int i = 0; i<10; i++){ \n pixelColor = rgbPixels->getColor(aDot.location.x+i, aDot.location.y); \n \n newPixelColor = paint(pixelColor); \n \n rgbPixels->setColor(aDot.location.x+i, aDot.location.y,newPixelColor); \n \n } \n particleTexture.loadData(* rgbPixels); \n } \n \n //-------------------------------------------------------------- \n void testApp::draw(){ \n particleTexture.draw(0, 0, w, h); \n } \n \n ofShortColor & testApp::paint(ofShortColor & _c){ \n \n _c.r += 10; \n _c.g += 2; \n _c.b += 3; \n \n _c.set(_c.r, _c.g, _c.b); \n _c.clamp(); \n \n return _c; \n } ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1257","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":16,"open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1257,"assignee":null,"closed_at":null,"title":"ofShortPixels doesn't draw pixels correctly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"created_at":"2012-05-14T05:46:14Z","state":"open","user":{"url":"https://api.github.com/users/gazaebal","avatar_url":"https://secure.gravatar.com/avatar/f9d7811bb6318fedf7e9f2fe8bfece32?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"f9d7811bb6318fedf7e9f2fe8bfece32","login":"gazaebal","id":1736190},"id":4557803,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1257"},{"updated_at":"2012-05-17T21:42:08Z","body":"if i'm not mistaken, the correct way of using ofMatrix4x4 in oF is `glMultMatrixf(myMatrix.getPtr())` or `glLoadMatrixf`.\nThis seems a bit uncomfortable for me.\n\nsome candidates are:\n\n```c++\nofPushMatrix(const ofMatrix4x4 &); //needs alternatives as you might not want to push at the time\nofLoadMatrix(const ofMatrix4x4 &);\nofMultMatrix(const ofMatrix4x4 &);\n\nofMatrix4x4::apply();\nofMatrix4x4::glLoadMatrix(matrixMode = OF_MATRIX_MODE_CURRENT);\n```\n\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1256","comments":5,"milestone":null,"number":1256,"assignee":null,"closed_at":null,"title":"Feature ofPushMatrix(const ofMatrix4x4 &)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"created_at":"2012-05-13T18:20:29Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":4554058,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1256"},{"updated_at":"2012-05-16T09:35:07Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1254","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":16,"open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1254,"assignee":null,"closed_at":null,"title":"Adding ofClear(ofColor c) just a detail","labels":[],"created_at":"2012-05-12T19:15:59Z","state":"open","user":{"url":"https://api.github.com/users/patriciogonzalezvivo","avatar_url":"https://secure.gravatar.com/avatar/69406d376e65f8070acfbe220f246989?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"69406d376e65f8070acfbe220f246989","login":"patriciogonzalezvivo","id":346914},"id":4548835,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1254.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1254.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/1254"},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1254"},{"updated_at":"2012-05-11T21:24:20Z","body":"\tunsigned char faceSize = 3;\n\tif(data.getNumIndices()){\n\t\tos << \"element face \" << data.getNumIndices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t} else if(data.getMode() == OF_PRIMITIVE_TRIANGLES) {\n\t\tos << \"element face \" << data.getNumVertices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t}\n\nThe facesize is being set as static as 3, but this results in strange exports...things open OK in Meshlab, but exporting to other programs with no faces seems like it won't work","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1252","comments":6,"milestone":null,"number":1252,"assignee":null,"closed_at":null,"title":"0071 ply (mesh.save()) Point export is broken","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"created_at":"2012-05-11T19:45:53Z","state":"open","user":{"url":"https://api.github.com/users/laserpilot","avatar_url":"https://secure.gravatar.com/avatar/07001341fe6c156dddd5b9d06d828cba?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"07001341fe6c156dddd5b9d06d828cba","login":"laserpilot","id":1041023},"id":4539985,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1252"},{"updated_at":"2012-05-16T09:33:31Z","body":"couple of minor bugfixes (absolute path wasn't being detected on second if [absolute] for windows paths)\r\nfixes unixy paths no matter what on windows","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1251","comments":8,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":16,"open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1251,"assignee":null,"closed_at":null,"title":"Bugfix of to data path","labels":[],"created_at":"2012-05-10T06:44:20Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":4507572,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1251.diff","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1251.patch","html_url":"https://github.com/openframeworks/openFrameworks/pull/1251"},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1251"},{"updated_at":"2012-05-16T09:43:23Z","body":":(\r\n\r\nIt seems i'm getting double 'data/' in my paths\r\nafter a little tracking down, i found this is because ofSystemLoadDialog changes the current working directory\r\n\r\nso we could try and either fix that by popping the folder after the dialog, \r\nof for windows using something like ```GetModuleFileName``` to get the path of the current exe rather than using the current working directory\r\n\r\nI can't seem to run GetModuleFileName from ofUtils.cpp even though windows.h is included in ofConstants.h (included in ofUtils.h)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1250","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":16,"open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1250,"assignee":null,"closed_at":null,"title":"bug: ofToDataPath broken again","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2012-05-10T06:35:24Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":4507492,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/1250"},{"updated_at":"2012-05-16T09:42:44Z","body":"'ofx TCPClient :: receiveRaw' was found in the proble.\n\nOriginal :\n\n\tint ofxTCPClient::receiveRawBytes(char * receiveBuffer, int numBytes){\n\t\t\t messageSize = TCPClient.Receive(receiveBuffer, numBytes);\t\n\t\t\t if(messageSize==0){\t\t\n\t\t\t\t\t\tclose();\t\n\t\t\t }\t\n\t\t\t return messageSize;\n\t}\n\nBut 'TCPClient.Receive (receiveBuffer, numBytes)' from '-1' may return\n\nI was modified\n\n\tstring ofxTCPClient::receiveRaw(){\n\t\t\t messageSize = TCPClient.Receive(tmpBuff, TCP_MAX_MSG_SIZE);\n\t\t\t if(messageSize==0){\n\t\t\t\t\t\tclose();\n\t\t\t }\n\t\t\t //TCPClient.Receive is return -1....\n\t\t\t else if(messageSize < 0){ \n\t\t\t\t\t\ttmpBuff[0] = 0;\n\t\t\t }\n\t\t\t else if(messageSize; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"f317f6e26c56743bf8ac8b747a73d3af"'), ('date', 'Tue, 29 May 2012 06:43:45 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-12-05T21:57:50Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/172","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":172,"assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"arturoc","id":48240},"closed_at":null,"title":"rgb + alpha -> blit to texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2010-04-06T19:40:28Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":166209,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/172"},{"updated_at":"2011-12-05T21:57:36Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/171","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":171,"assignee":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"closed_at":null,"title":"sexy shader example","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"}],"created_at":"2010-04-06T19:38:51Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":166208,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/171"},{"updated_at":"2012-03-03T19:40:33Z","body":"can we do it?\r\nwe need cross platform:\r\nplayback \r\nstreaming\r\npitch\r\npan \r\nmultiplay \r\n\r\nfor us to be compatible with what exists. \r\nOpenAL seems like the best choice.\r\nWhat other options are there?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/167","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","number":8,"title":"0080 Release","due_on":"2013-01-01T08:00:00Z","open_issues":3,"created_at":"2012-02-25T01:34:28Z","state":"open","description":"","id":88731,"closed_issues":0},"number":167,"assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"damiannz","id":144366},"closed_at":null,"title":"replace fmod","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"created_at":"2010-04-06T12:13:31Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":165898,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/167"},{"updated_at":"2011-12-05T21:56:41Z","body":"i have this working for 3d with selection buffer although it's meant to be slow i haven't had any problems","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/160","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":160,"assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"arturoc","id":48240},"closed_at":null,"title":"ofIsUnderMouse?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2010-04-05T21:39:19Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"arturoc","id":48240},"id":165537,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/160"},{"updated_at":"2011-12-05T21:54:57Z","body":"Theo: I have this code uses the selection buffer. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/153","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":153,"assignee":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"closed_at":null,"title":"ofIsOnScreen - ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2010-04-05T18:49:10Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":165409,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/153"},{"updated_at":"2012-02-29T11:13:10Z","body":"check out - http://www.openframeworks.cc/forum/viewtopic.php?p=19169#p19169\r\npossible integration into core. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/140","comments":4,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":140,"assignee":null,"closed_at":null,"title":"texture compression and mipmaps for of texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2010-04-02T19:43:00Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":163959,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/140"},{"updated_at":"2012-03-12T16:15:52Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=10&t=3319","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/128","comments":4,"milestone":null,"number":128,"assignee":null,"closed_at":null,"title":"ofxTCPServer doesn't manage connected clients correcly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2010-02-14T09:40:13Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"arturoc","id":48240},"id":132671,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/128"},{"updated_at":"2012-02-27T12:31:57Z","body":"Something that easily converts vector direction to openGL degrees?\r\nI find myself constantly trying to guess 270 - atan2(y, x)*RAD_TO_DEG ..... etc\r\nTo rotate something along a vector. \r\n\r\nMight be good to have it be aware of the GL world orientation - or have it so you pass in the up \r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/126","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":126,"assignee":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"closed_at":null,"title":"ofATan2GL / ofVecToGL ?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2010-02-13T14:22:51Z","state":"open","user":{"url":"https://api.github.com/users/openframeworks","gravatar_id":"a858611b044a8302ab14cfe752e17369","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"openframeworks","id":142866},"id":132377,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/126"},{"updated_at":"2012-04-22T15:51:57Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=7&t=3299&p=17852#p17852","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/124","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","number":6,"title":"0073 Release","due_on":"2012-07-30T07:00:00Z","open_issues":5,"created_at":"2011-12-03T15:37:49Z","state":"open","description":"","id":62090,"closed_issues":0},"number":124,"assignee":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"closed_at":null,"title":"TTF type rendering in OF - fix fuzziness ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography","color":"DDDDDD"}],"created_at":"2010-02-13T14:15:25Z","state":"open","user":{"url":"https://api.github.com/users/openframeworks","gravatar_id":"a858611b044a8302ab14cfe752e17369","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"openframeworks","id":142866},"id":132373,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/124"},{"updated_at":"2012-02-27T12:30:14Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=8&t=1374","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/121","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810,"closed_issues":16},"number":121,"assignee":null,"closed_at":null,"title":"video: loop is not working unless you call play first","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"created_at":"2010-02-10T23:16:23Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"arturoc","id":48240},"id":130269,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/121"},{"updated_at":"2012-02-27T12:30:49Z","body":"it would make sense to have an opengl stress test app, that can test some basic about wether or not someone has ARB support, how fast their systems are, etc. I can imagine that for 0.07, we'll be helping people debug shaders and FBOs, having some way to gauge what kind of system they are on and what it can take, will be helpful. \r\n\r\nHere's a simple test app from the Lua-AV folks that looks like a reasonable system: \r\n\r\nhttp://img191.imageshack.us/img191/1659/picture3po.png","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/115","comments":0,"milestone":null,"number":115,"assignee":null,"closed_at":null,"title":"opengl stress test example","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2010-01-12T02:56:21Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":111018,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/115"},{"updated_at":"2012-02-28T14:02:04Z","body":"at the moment, we've got it like:\r\n\r\nofAppGlutWindow::ofAppGlutWindow(){\r\n\tfps\t\t\t\t= 60.0; //give a realistic starting value - win32 issues\r\n\tbFrameRateSet\t\t= false;\r\n}\r\n\r\nbut I personally prefer all apps to start with some kind of similar frame rate (ie, examples running really fast on mac, etc). see for example: \r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?p=16520&#p16520\r\n\r\nthis kind of thing leads to less \"cross-platform-ness\" and more confusion from beginners, no? \r\n\r\n- z\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/107","comments":8,"milestone":null,"number":107,"assignee":null,"closed_at":null,"title":"should we start all OF apps with a frame rate set?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2009-12-31T15:10:45Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":104702,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/107"},{"updated_at":"2011-09-27T15:47:45Z","body":"videoGrabber and serial listDevices should return a vector of strings apart from printing to console","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/91","comments":4,"milestone":null,"number":91,"assignee":null,"closed_at":null,"title":"listDevices should return a list of strings","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2009-12-09T17:11:40Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"arturoc","id":48240},"id":94898,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/91"}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=13 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4970'), ('content-length', '43018'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"caade974e6dd6e7ac7febf9cb0494e92"'), ('date', 'Tue, 29 May 2012 06:43:44 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-12-03T10:49:15Z","body":"ofImage::getWidth()/getHeight() are just getters that do absolutely nothing but return a copy of the width and height. these methods should be marked const.\r\n\r\n[added]: there are hacks inside ofxCv that i've had to make because getWidth/getHeight are not const correct. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/288","comments":6,"milestone":null,"number":288,"assignee":null,"closed_at":null,"title":"const correctness - add const to getWidth/getHeight","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2011-01-08T02:14:03Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":513779,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/288"},{"updated_at":"2010-11-30T05:13:10Z","body":"This is giving me some crashes. There needs to be a way to disable this when making custom windows. I have tried to do atexit(NULL); but the callback in ofRunApp(ofBaseApp * OFSA) is still being called. \r\n\r\nmaybe something like:\r\n\r\nvoid ofRunApp(ofBaseApp * OFSA, bool useExitCallback);\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/275","comments":0,"milestone":null,"number":275,"assignee":null,"closed_at":null,"title":"atexit(ofExitCallback);","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2010-11-30T05:13:10Z","state":"open","user":{"url":"https://api.github.com/users/vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","id":149997},"id":445829,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/275"},{"updated_at":"2011-03-17T02:02:25Z","body":"bottom left corner is inconsistent with every other drawing command in OF, should be top left instead.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/271","comments":7,"milestone":null,"number":271,"assignee":null,"closed_at":null,"title":"ofDrawBitmapString draws from bottom left","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2010-11-22T21:30:40Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":433297,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/271"},{"updated_at":"2011-06-03T19:04:08Z","body":"test if this is really useful:\r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=7&t=4889&view=unread#unread\r\n\r\nhe adds a queue just before the color conversion","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/265","comments":0,"milestone":null,"number":265,"assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"closed_at":null,"title":"linux videograbber stopping after some time","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"created_at":"2010-11-18T12:07:46Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":426050,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/265"},{"updated_at":"2011-09-19T22:47:21Z","body":"ofClear(r,g,b) is inconsistent with ofBackground(r,g,b) because the alpha is 0 by default -- meaning you always have to explicitly declare the alpha to clear the background.\r\n\r\nfurthermore, because all the arguments have default values there is not/cannot exist an ofClear(gray, alpha) to match ofSetColor style","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/264","comments":5,"milestone":null,"number":264,"assignee":null,"closed_at":null,"title":"ofClear uses inconsistent arguments","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2010-11-18T06:15:47Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":425675,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/264"},{"updated_at":"2011-12-05T21:58:33Z","body":"A lot of OF files are including ofMain / ofConstants.h - this makes compiles super slow. Try to have files only include what they need. Or find a way to break things up into the most often used ( windows.h etc ) and less used. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/255","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":16,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":255,"assignee":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"closed_at":null,"title":"COMPILE SPEED UP - cleanup internal includes to avoid ofMain.h and ofConstants.h","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2010-11-11T21:14:05Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":413771,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/255"},{"updated_at":"2011-12-02T20:11:33Z","body":"ofHideCursor()/ofShowCursor()\r\n\r\nofEnableArbTex()\r\nofEnableSetupScreen()\r\nofEnableDataPath()\r\nofEnableAlphaBlending()\r\nofEnableSmoothing()\r\n\r\nofSetFullscreen() + ofToggleFullscreen()\r\nofSetVerticalSync()\r\n\r\netc.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/249","comments":1,"milestone":null,"number":249,"assignee":null,"closed_at":null,"title":"normalize option nomenclature (hide/enable/set/etc.)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2010-11-03T22:52:08Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":399214,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/249"},{"updated_at":"2011-12-05T22:03:41Z","body":"some video to test:\r\n\r\nmmsh://live.camstreams.com/cscamglobal16?MSWMExt=.asf\r\n\r\nit works ok with totem so it should be a problem in ofGstUtils","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/245","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":16,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":245,"assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"closed_at":null,"title":"gstreamer problems with streaming of microsoft video","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"created_at":"2010-10-13T16:33:06Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":360885,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/245"},{"updated_at":"2011-03-13T20:13:07Z","body":"I found an annoying bug in ofVideoPlayer.\nThis module do not like to be dynamically created or destroyed.\nCheck this little example :\n\nhttp://knu.free.fr/bug_ofVideoPlayer.zip\n\nLeft-click to create an object playing video.\nRight-click to suppress the last video.\n\nhere are the phenomenons I am facing on my Win7 machine :\n\n- \nIf you create an object, and then you suppress it, and then try to create an object again, the app will crash.\n\n- \nIf you create some objects (lets say 8), and then you suppress all of them, the app will crash before the last one (not always, but most of the time).\n\n\n\nNow in OF source tree, try replacing ofVideoPlayer.cpp with FIX_ofVideoPlayer.cpp (at the root of the zip)\nRebuild the project.\nNow everything should be working as expected.\n\n\nThe modifications I made in the source are marked by : //###############\n\nI do not have time to fully read and understand the quicktime API, so there are chances this workaround is fucking dirty.\nBut at least it seems to work.\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/244","comments":1,"milestone":null,"number":244,"assignee":null,"closed_at":null,"title":"bug in ofVideoPlayer","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2010-10-11T19:56:46Z","state":"open","user":{"url":"https://api.github.com/users/fmauclere","avatar_url":"https://secure.gravatar.com/avatar/1c7dcbab3712f1a4d90bd2c3aa9a3e3d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"1c7dcbab3712f1a4d90bd2c3aa9a3e3d","login":"fmauclere","id":435720},"id":357395,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/244"},{"updated_at":"2012-03-10T05:06:06Z","body":"Check out this code - also check if latest ffmpeg is better optimized for iphone.\r\nhttp://github.com/jgh-/FFmpeg-for-iOS","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/240","comments":0,"milestone":null,"number":240,"assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"closed_at":null,"title":"iphone video player - ffmpeg and audioqueues","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2010-10-06T17:19:57Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":349886,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/240"},{"updated_at":"2012-03-10T05:08:56Z","body":"XCode: 3.2.4\nOF: github master @24 Sep 2010\nCompiled as: device base SDK 4.1 release arm7 deployment target 3.2\n\nWeird error: Build ofAudioOutputExample. Add a void testApp::exit() to see if it is called. Run app on ipod touch 2010 version with 4.1 installed.\n\nApp runs OK yet pressing the exit button on front of device quits the app, but xcode keeps running. Digging in a bit it appears not only testApp::exit, but ofExitCallback is not getting called.\n\nSwitch to iPad (no other settings changed) and app runs fine, and exits properly.\n\nSwitch to BaseSDK 3.2 and example runs fine and exits fine on both iPad and iPod.\n\nIdeas? Is this just me? I'm fairly new to OF, XCode and iPhone\n\n[edit]\nOK I worked out that pressing the \"close\" button in 4.1 calls applicationWillResignActive in ofxiPhoneAppDelegate.mm. As a hacky workaround as my app just needs to exit, not sit in background, I added exit(0); to the end of applicationWillResignActive and it seems to work.\n\nWould like to know how to do this properly though.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/236","comments":1,"milestone":null,"number":236,"assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"closed_at":null,"title":"ofExitCallback not being called on iphone4.1?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2010-09-25T01:55:49Z","state":"open","user":{"url":"https://api.github.com/users/DavidDC","avatar_url":"https://secure.gravatar.com/avatar/a6fdad0c31fcd273a1ba89434fec0419?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"a6fdad0c31fcd273a1ba89434fec0419","login":"DavidDC","id":415101},"id":332379,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/236"},{"updated_at":"2011-04-19T00:32:33Z","body":"related to #221: texData.bAllocated is only used in the isAllocated method which can be changed from:\r\n\r\n bool ofTexture::bAllocated(){\r\n return texData.bAllocated;\r\n }\r\n\r\nto\r\n\r\n bool ofTexture::bAllocated(){\r\n return texData.textureID!=0;\r\n }\r\n\r\navoiding problems like #221 since we don't have two flags for the same thing","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/228","comments":4,"milestone":null,"number":228,"assignee":null,"closed_at":null,"title":"remove bAllocated in ofTexture?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2010-09-09T14:20:55Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":309191,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/228"},{"updated_at":"2011-12-02T15:45:27Z","body":"Segfault when playing .ogv files on 64 bit linux.\nSee forum post - http://www.openframeworks.cc/forum/viewtopic.php?f=7&t=4582","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/227","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":16,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":227,"assignee":null,"closed_at":null,"title":"Ubuntu 64-bit conflict with FMOD when playing ogg theora files","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"created_at":"2010-09-08T14:54:33Z","state":"open","user":{"url":"https://api.github.com/users/pierrep","avatar_url":"https://secure.gravatar.com/avatar/be11c9de8242e7aef0446eceaa289e01?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"be11c9de8242e7aef0446eceaa289e01","login":"pierrep","id":392160},"id":307684,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/227"},{"updated_at":"2010-08-31T10:54:19Z","body":"It would be nice to have:\r\n\r\n\tconst ofxVec2f xunit2f(1, 0), yunit2f(0, 1);\r\n\tconst ofxVec3f xunit3f(1, 0, 0), yunit3f(0, 1, 0), zunit3f(0, 0, 1);\r\n\r\nOr something similar that allows for more elegant notation when you're multiplying or adding by an axis.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/225","comments":0,"milestone":null,"number":225,"assignee":null,"closed_at":null,"title":"ofxVectorMath constants","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2010-08-31T10:54:19Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":295913,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/225"},{"updated_at":"2012-03-26T18:37:47Z","body":"can this be useful?\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=25&t=4500\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/224","comments":1,"milestone":null,"number":224,"assignee":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_at":null,"title":"gaussian noise","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"}],"created_at":"2010-08-26T10:21:24Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":290973,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/224"},{"updated_at":"2011-10-17T13:58:53Z","body":"ofxOsc causes a memory access violation in VS2008, when you use sendMessage(ofxOscMessage) from within a class.\r\nNo error when you run that from main ofApp","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/214","comments":1,"milestone":null,"number":214,"assignee":null,"closed_at":null,"title":"ofxOsc memory access violation. namespace issue?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2010-08-04T05:59:22Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":268332,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/214"},{"updated_at":"2012-03-14T15:12:26Z","body":"e) get arturo's script to work, or rewrite a new one to just clobber a given directory (and not pull from git, etc as it's doing now). \r\n\r\ntheo - might be good to have two scripts?\r\n1) to pull from git \r\n2) to remove everything not related to a platform - or maybe better just copies the files into a folder for that platform. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/199","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":16,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":199,"assignee":null,"closed_at":null,"title":"script that doesn't pull everything from git","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2010-06-01T13:28:54Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":211418,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/199"},{"updated_at":"2010-05-25T14:54:52Z","body":"\r\nas per: \r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=8&t=3962&p=20661#p20661\r\n\r\nwe should explain how to use it properly. \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/194","comments":0,"milestone":null,"number":194,"assignee":null,"closed_at":null,"title":"ofGetAppPtr documentation is wrong ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"created_at":"2010-05-25T14:54:52Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":205935,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/194"},{"updated_at":"2011-12-05T21:58:22Z","body":"http://www.glfw.org/release-2.6.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/193","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":16,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":193,"assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"closed_at":null,"title":"look at glfw - just got updated","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"created_at":"2010-05-23T21:04:25Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":204247,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/193"},{"updated_at":"2011-12-02T19:20:16Z","body":"I had the L.A.S.E.R. tag software up and running great on my new MacBook Pro but recently my computer did a software update and now something is wrong and I can't properly use the program. I have snow leopard 10.6.3 OS. I'm not totally sure if it was the auto update that caused the issue but it seems like it stopped working after the update. Below I listed the suspected updates. Seems weird to me 2 digital camera RAW updates.\r\n\r\n3/27/10 Digital Camera RAW update 2.7\r\n3/27/10 Safari 4.0.5\r\n3/27/10 Digital Camera RAW update 3.1\r\n3/27/10 iMovie update 8.0.6\r\n\r\n0 com.apple.QuickTime \t0x9408e179 QTMLGrabMutex + 18\r\n1 com.apple.QuickTime \t0x9421b6a3 QTWorkContextCopyForMediaContextID + 28\r\n2 ...uickTimeStreaming.component\t0x14f77c15 HTTPDhlr_CheckForFatalError + 254\r\n3 ...uickTimeStreaming.component\t0x14f77cc6 HTTPDhlr_ReadSYNC + 165\r\n4 ...uickTimeStreaming.component\t0x14f7ab01 HTTPDataHandler_ScheduleData64 + 452\r\n5 ...ple.CoreServices.CarbonCore\t0x949a2d05 callComponentStorage_4444444 + 63\r\n6 ...ple.CoreServices.CarbonCore\t0x949976f0 CallComponentFunctionCommonWithStorage(char**, ComponentParameters*, long (*)(), unsigned long) + 54\r\n7 ...uickTimeStreaming.component\t0x14f784c7 HTTPDataHandler_ComponentDispatch + 110\r\n8 ...ple.CoreServices.CarbonCore\t0x9498fd87 CallComponentDispatch + 29\r\n9 com.apple.QuickTime \t0x94093540 DataHScheduleData64 + 73\r\n10 com.apple.QuickTime \t0x940b5704 NewMovieFromDataRefPriv_priv + 8296\r\n11 com.apple.QuickTime \t0x9419e613 NewMovieFromDataRef_priv + 54\r\n12 com.apple.QuickTime \t0x942fb95e NewMovieFromDataRef + 52\r\n13 com.yourcompany.openFrameworks\t0x0000aa2a createMovieFromURL(std::string, MovieType**&) + 112\r\n14 com.yourcompany.openFrameworks\t0x0000abe2 ofVideoPlayer::loadMovie(std::string) + 182\r\n15 com.yourcompany.openFrameworks\t0x0002fe03 appController::setup() + 2169\r\n16 com.yourcompany.openFrameworks\t0x00002864 ofRunApp(ofSimpleApp*) + 170\r\n17 com.yourcompany.openFrameworks\t0x0003dc06 main + 90\r\n18 com.yourcompany.openFrameworks\t0x00001da2 _start + 216\r\n19 com.yourcompany.openFrameworks\t0x00001cc9 start + 41","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/182","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":16,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":182,"assignee":null,"closed_at":null,"title":"ofVideoPlayer - createMovieFromURL broken in 10.6.3 with specific updates?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2010-04-15T16:20:25Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":172424,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/182"},{"updated_at":"2010-04-14T15:48:19Z","body":"can we add moments to the blob. \n\nadd CvMoments moments to blob class\n\nand in ofxCvContourFinder.cpp line 119\n\n\t blobs[i].moments.m00 = myMoments->m00;\n\t\tblobs[i].moments.m10 = myMoments->m10;\n\t\tblobs[i].moments.m01 = myMoments->m01;\n\t\tblobs[i].moments.m20 = myMoments->m20;\n\t\tblobs[i].moments.m11 = myMoments->m11;\n\t\tblobs[i].moments.m02 = myMoments->m02;\n\t\tblobs[i].moments.m30 = myMoments->m30;\n\t\tblobs[i].moments.m21 = myMoments->m21;\n\t\tblobs[i].moments.m12 = myMoments->m12;\n\t\tblobs[i].moments.m03 = myMoments->m03;\n\t\t\n\t\tblobs[i].moments.mu20 = myMoments->mu20;\n\t\tblobs[i].moments.mu11 = myMoments->mu11;\n\t\tblobs[i].moments.mu02 = myMoments->mu02;\n\t\tblobs[i].moments.mu30 = myMoments->mu30;\n\t\tblobs[i].moments.mu21 = myMoments->mu21;\n\t\tblobs[i].moments.mu12 = myMoments->mu12;\n\t\tblobs[i].moments.mu03 = myMoments->mu03;\n\n\nthis is good for finding the angle and other info about the contour.\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/181","comments":2,"milestone":null,"number":181,"assignee":null,"closed_at":null,"title":"ofxCvBlobs","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"created_at":"2010-04-14T15:42:22Z","state":"open","user":{"url":"https://api.github.com/users/vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","id":149997},"id":171615,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/181"},{"updated_at":"2011-12-02T15:44:06Z","body":"Buffer is 512 but should be 276 ( or something )\r\nSetting it to 256 says the buffer size should be 176 ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/178","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":16,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":178,"assignee":null,"closed_at":null,"title":"iPhone sound bug with 1st gen ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2010-04-11T10:18:58Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":169176,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/178"},{"updated_at":"2011-12-02T19:18:14Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/175","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":16,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":175,"assignee":null,"closed_at":null,"title":"bring examples up to date - make sexy","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"}],"created_at":"2010-04-06T19:44:04Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166214,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/175"},{"updated_at":"2011-12-02T19:14:03Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/174","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":16,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":174,"assignee":null,"closed_at":null,"title":"vertical sync on for mac by default","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"created_at":"2010-04-06T19:43:21Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166212,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/174"},{"updated_at":"2011-12-05T21:58:10Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/173","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"closed_issues":16,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":85,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":173,"assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"closed_at":null,"title":"ofAlphaBlending default on","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"created_at":"2010-04-06T19:42:34Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166211,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/openframeworks/openFrameworks/issues/173"}] diff --git a/lib/github/tests/ReplayData/PaginatedList.testReversedIterationWithSinglePage.txt b/lib/github/tests/ReplayData/PaginatedList.testReversedIterationWithSinglePage.txt new file mode 100644 index 0000000000..efcaa2c76c --- /dev/null +++ b/lib/github/tests/ReplayData/PaginatedList.testReversedIterationWithSinglePage.txt @@ -0,0 +1,21 @@ +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4927'), ('content-length', '52085'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"5e8867ffb4e7630e852b2b231f3b9cdb"'), ('date', 'Tue, 29 May 2012 19:36:57 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-27T18:11:17Z","body":"Since more and more of the OF Core now relies on Poco (ie ofThread, etc) does OF_USING_POCO make sense anymore?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1280","comments":0,"milestone":null,"number":1280,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1280","assignee":null,"title":"deprecate OF_USING_POCO?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-27T18:03:23Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"danomatika","id":480637},"id":4772349,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-28T08:08:24Z","body":"There occurs a weir glitch when compiling the ofShader example with my HD Graphics 3000 (288 Mb) (Mac osx 10.7.4 - Mac Mini - i5 - 2.3Ghz)\n\nI was able to get rid of the glitch by replacing \"gl_FragColor = gl_Color;\" with \"gl_FragColor = 255.0;\" or any other number.\nAnybody knows a reason for the glitch / proper solution?\n\nScreenshot: http://goo.gl/Xdf74\nOpenGL capacities on different graphic cards on apple machines: http://goo.gl/FGQ2N","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1279","comments":2,"milestone":null,"number":1279,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1279","assignee":null,"title":"ofShader example with HD Graphics 3000 issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-26T19:27:56Z","state":"open","user":{"url":"https://api.github.com/users/subtiv","gravatar_id":"837cfe96365c031130a46311eb11d86a","avatar_url":"https://secure.gravatar.com/avatar/837cfe96365c031130a46311eb11d86a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"subtiv","id":1012684},"id":4767675,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-25T18:39:02Z","body":"produces an error on app exit or tex destruction.\n\n OF: OF_LOG_ERROR: trying to delete a non indexed texture, something weird is happening. Deleting anyway\n\nThis is because retain(int id) is a static function in ofTexture.cpp. So we can't retain the depthStencilTexture.\n\nThis suggest we should move the texture allocation of the depth / stencil texture to ofTexture - something which is not possible at the moment. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1277","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1277,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1277","assignee":null,"title":"ofFbo can't retain depthStencil Texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-05-25T18:37:46Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":4758608,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-22T21:26:57Z","body":"\nthe offending line is: \n\nif( speed.getValue() != preSpeed ){\n\nwhich is evaluating as true even through the slider is not touched (float equality test, etc). \n\nif we alter it to something like: \n\nif( fabs(speed.getValue() - preSpeed) > 0.0001 ){\n\nthe code runs fine. probably nicer to add a \"value changed()\" functionality to the slider object though or use EPSILON, etc. \n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1271","comments":0,"milestone":null,"number":1271,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1271","assignee":null,"title":"periodic signal example doesn't run well on windows / cb (float equality error)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-05-22T21:26:57Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":4700182,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-22T16:41:21Z","body":"There's some error that appears on linux systems running the project generator to make VS examples, where the debug and release libs for opencv get added badly to the vs project: \n\n\t%(AdditionalDependencies);opencv_highgui231d.lib;opencv_calib3d231.lib;opencv_imgproc231d.lib;opencv_haartraining_engined.lib;opencv_gpu231d.lib;opencv_flann231.lib;opencv_contrib231d.lib;opencv_video231d.lib;opencv_objdetect231d.lib;zlib.lib;opencv_core231d.lib;opencv_contrib231.lib;opencv_ml231d.lib;opencv_features2d231.lib;opencv_core231.lib;opencv_gpu231.lib;opencv_legacy231d.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_ml231.lib;opencv_imgproc231.lib;opencv_objdetect231.lib;opencv_legacy231.lib;opencv_video231.lib\n\t\t\t\t%(AdditionalLibraryDirectories);..\\..\\..\\addons\\ofxOpenCv\\libs\\opencv\\lib\\vs2010\n\nthis doesn't seem to be the case on osx or windows, which produces correct results: \n\n\t%(AdditionalDependencies);opencv_calib3d231.lib;opencv_contrib231.lib;opencv_core231.lib;opencv_features2d231.lib;opencv_flann231.lib;opencv_gpu231.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_imgproc231.lib;opencv_legacy231.lib;opencv_ml231.lib;opencv_objdetect231.lib;opencv_video231.lib;zlib.lib\n\nwould be good to look at the logic of \"visualStudioProject::addAddon()\" and see if we can fix this.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1268","comments":9,"milestone":null,"number":1268,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1268","assignee":null,"title":"project generator - bad libs for VS / opencv examples","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-05-20T21:50:24Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":4662873,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T00:43:37Z","body":"I woud love some eyes on ofFbo would be great to get it cleaned up and standardized for 0072. \nRight now there are a ton of #ifdefs and some very hard to follow logic, which makes bug fixing quite difficult especially on OPENGL_ES\n\nsee: https://gist.github.com/2711815\n\n@elliotwoods @arturoc @memotv @damiannz @ofZach @kylemcdonald \n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1263","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1263,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1263","assignee":null,"title":"ofFbo.cpp is a huge mess! ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-16T16:27:30Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":4608132,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T14:29:02Z","body":"I added a .mailmap file to the repo to correctly collate all the contributors in spite of changing nick names/email addresses. This is useful when trying to identify contributors for a changelog or similar, or when using the git logging functions like shortlog.\n\nSee the before/after situation here: https://gist.github.com/2710366\n\nI have respected privacy and only used those real names that people have already given in a git ID in the repo. Mainly this addition only associates the different email addresses to one user. @arturoc wins the prize of most used emails! :-)\nThe list is pretty complete, I only had difficulties to associate some IDs to the correct Zachs, since it was not clear for some if @ofZach or @stfj (Zach Gage) was the contributor. Those were left as-is.\n\nIf anybody has objections to their various email being united under their name, please say so and I will correct/remove the relevant entries.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1262","comments":2,"milestone":null,"number":1262,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1262","assignee":null,"title":"Add .mailmap for contributor collation","labels":[],"closed_at":null,"created_at":"2012-05-16T13:44:32Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"id":4604661,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1262.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1262","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1262.patch"}},{"updated_at":"2012-05-16T09:35:31Z","body":"Address #375.\n\nAdd setVolumef(float). Also more clearly define volume ranges (int is 0..255, float is 0..1) and more robust clamping of volume argument.\n\nThis has not been tested on Linux or Windows.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1260","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1260,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1260","assignee":null,"title":"allow float volume on ofVideoPlayer","labels":[],"closed_at":null,"created_at":"2012-05-15T17:50:22Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"damiannz","id":144366},"id":4588997,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1260.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1260","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1260.patch"}},{"updated_at":"2012-05-21T07:31:47Z","body":"This was originally posted @\"biginners\".\n\nhttp://forum.openframeworks.cc/index.php/topic,9527.msg44049.html#msg44049\n\nJoshua noble suggested me to file it as a bug on jithub\n\n\n/////////////////original messages\n\nHello.\n\nI have question about ofShortPixels and ofShortColor.\n\nIf you execute the code below , it'll draw at half way screen height even though I did set aDot at (0. screen height / 4)\n\nAnd another weird thing is it draws 20 pixels instead of 10 pixels which I set for loop for 10 times.\n\nIt only draws correctly with ofPixels and ofColor.\n\nIt doesn't work with ofFloatPixels and ofFloatColor.\n\nPlease help me out.\n\nI need to have RGB value over 255 so I can check if those values are over 255.\n\nThanks in advanced\n\nJin\n\n\n.h file\nCode:\nview plaincopy to clipboardprint?\n\n #pragma once \n #include \"ofMain.h\" \n \n class Dot { \n public: \n ofVec2f location; \n \n Dot(){ \n location.set(0,0); \n } \n \n ~Dot(){} \n }; \n \n class testApp : public ofBaseApp{ \n public: \n void setup(); \n void update(); \n void draw(); \n \n int w,h; \n \n ofTexture particleTexture; \n ofShortPixels * rgbPixels; \n \n ofShortColor& paint(ofShortColor &); \n \n Dot aDot; \n \n \n }; \n\n\n.cpp file\nCode:\nview plaincopy to clipboardprint?\n\n #include \"testApp.h\" \n //-------------------------------------------------------------- \n void testApp::setup(){ \n ofSetFrameRate(30); \n ofSetBackgroundAuto(TRUE); \n ofBackground(0, 0, 0); \n w = ofGetWidth(); \n h = ofGetHeight(); \n \n particleTexture.allocate(w,h,GL_RGB); \n rgbPixels = new ofShortPixels; \n rgbPixels->allocate(w, h, 3); \n aDot.location.set(0, h/4); \n } \n \n //-------------------------------------------------------------- \n void testApp::update(){ \n ofShortColor pixelColor; \n ofShortColor newPixelColor; \n for(int i = 0; i<10; i++){ \n pixelColor = rgbPixels->getColor(aDot.location.x+i, aDot.location.y); \n \n newPixelColor = paint(pixelColor); \n \n rgbPixels->setColor(aDot.location.x+i, aDot.location.y,newPixelColor); \n \n } \n particleTexture.loadData(* rgbPixels); \n } \n \n //-------------------------------------------------------------- \n void testApp::draw(){ \n particleTexture.draw(0, 0, w, h); \n } \n \n ofShortColor & testApp::paint(ofShortColor & _c){ \n \n _c.r += 10; \n _c.g += 2; \n _c.b += 3; \n \n _c.set(_c.r, _c.g, _c.b); \n _c.clamp(); \n \n return _c; \n } ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1257","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1257,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1257","assignee":null,"title":"ofShortPixels doesn't draw pixels correctly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-14T05:46:14Z","state":"open","user":{"url":"https://api.github.com/users/gazaebal","gravatar_id":"f9d7811bb6318fedf7e9f2fe8bfece32","avatar_url":"https://secure.gravatar.com/avatar/f9d7811bb6318fedf7e9f2fe8bfece32?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"gazaebal","id":1736190},"id":4557803,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T21:42:08Z","body":"if i'm not mistaken, the correct way of using ofMatrix4x4 in oF is `glMultMatrixf(myMatrix.getPtr())` or `glLoadMatrixf`.\nThis seems a bit uncomfortable for me.\n\nsome candidates are:\n\n```c++\nofPushMatrix(const ofMatrix4x4 &); //needs alternatives as you might not want to push at the time\nofLoadMatrix(const ofMatrix4x4 &);\nofMultMatrix(const ofMatrix4x4 &);\n\nofMatrix4x4::apply();\nofMatrix4x4::glLoadMatrix(matrixMode = OF_MATRIX_MODE_CURRENT);\n```\n\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1256","comments":5,"milestone":null,"number":1256,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1256","assignee":null,"title":"Feature ofPushMatrix(const ofMatrix4x4 &)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-13T18:20:29Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4554058,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-11T21:24:20Z","body":"\tunsigned char faceSize = 3;\n\tif(data.getNumIndices()){\n\t\tos << \"element face \" << data.getNumIndices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t} else if(data.getMode() == OF_PRIMITIVE_TRIANGLES) {\n\t\tos << \"element face \" << data.getNumVertices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t}\n\nThe facesize is being set as static as 3, but this results in strange exports...things open OK in Meshlab, but exporting to other programs with no faces seems like it won't work","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1252","comments":6,"milestone":null,"number":1252,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1252","assignee":null,"title":"0071 ply (mesh.save()) Point export is broken","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-11T19:45:53Z","state":"open","user":{"url":"https://api.github.com/users/laserpilot","gravatar_id":"07001341fe6c156dddd5b9d06d828cba","avatar_url":"https://secure.gravatar.com/avatar/07001341fe6c156dddd5b9d06d828cba?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"laserpilot","id":1041023},"id":4539985,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:33:31Z","body":"couple of minor bugfixes (absolute path wasn't being detected on second if [absolute] for windows paths)\r\nfixes unixy paths no matter what on windows","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1251","comments":8,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1251,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1251","assignee":null,"title":"Bugfix of to data path","labels":[],"closed_at":null,"created_at":"2012-05-10T06:44:20Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4507572,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1251.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1251","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1251.patch"}},{"updated_at":"2012-05-16T09:43:23Z","body":":(\r\n\r\nIt seems i'm getting double 'data/' in my paths\r\nafter a little tracking down, i found this is because ofSystemLoadDialog changes the current working directory\r\n\r\nso we could try and either fix that by popping the folder after the dialog, \r\nof for windows using something like ```GetModuleFileName``` to get the path of the current exe rather than using the current working directory\r\n\r\nI can't seem to run GetModuleFileName from ofUtils.cpp even though windows.h is included in ofConstants.h (included in ofUtils.h)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1250","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1250,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1250","assignee":null,"title":"bug: ofToDataPath broken again","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-05-10T06:35:24Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4507492,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:42:44Z","body":"'ofx TCPClient :: receiveRaw' was found in the proble.\n\nOriginal :\n\n\tint ofxTCPClient::receiveRawBytes(char * receiveBuffer, int numBytes){\n\t\t\t messageSize = TCPClient.Receive(receiveBuffer, numBytes);\t\n\t\t\t if(messageSize==0){\t\t\n\t\t\t\t\t\tclose();\t\n\t\t\t }\t\n\t\t\t return messageSize;\n\t}\n\nBut 'TCPClient.Receive (receiveBuffer, numBytes)' from '-1' may return\n\nI was modified\n\n\tstring ofxTCPClient::receiveRaw(){\n\t\t\t messageSize = TCPClient.Receive(tmpBuff, TCP_MAX_MSG_SIZE);\n\t\t\t if(messageSize==0){\n\t\t\t\t\t\tclose();\n\t\t\t }\n\t\t\t //TCPClient.Receive is return -1....\n\t\t\t else if(messageSize < 0){ \n\t\t\t\t\t\ttmpBuff[0] = 0;\n\t\t\t }\n\t\t\t else if(messageSize 0.0001 ){\n\nthe code runs fine. probably nicer to add a \"value changed()\" functionality to the slider object though or use EPSILON, etc. \n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1271","comments":0,"milestone":null,"number":1271,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1271","assignee":null,"title":"periodic signal example doesn't run well on windows / cb (float equality error)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-05-22T21:26:57Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":4700182,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-22T16:41:21Z","body":"There's some error that appears on linux systems running the project generator to make VS examples, where the debug and release libs for opencv get added badly to the vs project: \n\n\t%(AdditionalDependencies);opencv_highgui231d.lib;opencv_calib3d231.lib;opencv_imgproc231d.lib;opencv_haartraining_engined.lib;opencv_gpu231d.lib;opencv_flann231.lib;opencv_contrib231d.lib;opencv_video231d.lib;opencv_objdetect231d.lib;zlib.lib;opencv_core231d.lib;opencv_contrib231.lib;opencv_ml231d.lib;opencv_features2d231.lib;opencv_core231.lib;opencv_gpu231.lib;opencv_legacy231d.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_ml231.lib;opencv_imgproc231.lib;opencv_objdetect231.lib;opencv_legacy231.lib;opencv_video231.lib\n\t\t\t\t%(AdditionalLibraryDirectories);..\\..\\..\\addons\\ofxOpenCv\\libs\\opencv\\lib\\vs2010\n\nthis doesn't seem to be the case on osx or windows, which produces correct results: \n\n\t%(AdditionalDependencies);opencv_calib3d231.lib;opencv_contrib231.lib;opencv_core231.lib;opencv_features2d231.lib;opencv_flann231.lib;opencv_gpu231.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_imgproc231.lib;opencv_legacy231.lib;opencv_ml231.lib;opencv_objdetect231.lib;opencv_video231.lib;zlib.lib\n\nwould be good to look at the logic of \"visualStudioProject::addAddon()\" and see if we can fix this.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1268","comments":9,"milestone":null,"number":1268,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1268","assignee":null,"title":"project generator - bad libs for VS / opencv examples","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-05-20T21:50:24Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":4662873,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T00:43:37Z","body":"I woud love some eyes on ofFbo would be great to get it cleaned up and standardized for 0072. \nRight now there are a ton of #ifdefs and some very hard to follow logic, which makes bug fixing quite difficult especially on OPENGL_ES\n\nsee: https://gist.github.com/2711815\n\n@elliotwoods @arturoc @memotv @damiannz @ofZach @kylemcdonald \n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1263","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1263,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1263","assignee":null,"title":"ofFbo.cpp is a huge mess! ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-16T16:27:30Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":4608132,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T14:29:02Z","body":"I added a .mailmap file to the repo to correctly collate all the contributors in spite of changing nick names/email addresses. This is useful when trying to identify contributors for a changelog or similar, or when using the git logging functions like shortlog.\n\nSee the before/after situation here: https://gist.github.com/2710366\n\nI have respected privacy and only used those real names that people have already given in a git ID in the repo. Mainly this addition only associates the different email addresses to one user. @arturoc wins the prize of most used emails! :-)\nThe list is pretty complete, I only had difficulties to associate some IDs to the correct Zachs, since it was not clear for some if @ofZach or @stfj (Zach Gage) was the contributor. Those were left as-is.\n\nIf anybody has objections to their various email being united under their name, please say so and I will correct/remove the relevant entries.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1262","comments":2,"milestone":null,"number":1262,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1262","assignee":null,"title":"Add .mailmap for contributor collation","labels":[],"closed_at":null,"created_at":"2012-05-16T13:44:32Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"id":4604661,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1262.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1262","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1262.patch"}},{"updated_at":"2012-05-16T09:35:31Z","body":"Address #375.\n\nAdd setVolumef(float). Also more clearly define volume ranges (int is 0..255, float is 0..1) and more robust clamping of volume argument.\n\nThis has not been tested on Linux or Windows.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1260","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1260,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1260","assignee":null,"title":"allow float volume on ofVideoPlayer","labels":[],"closed_at":null,"created_at":"2012-05-15T17:50:22Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"damiannz","id":144366},"id":4588997,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1260.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1260","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1260.patch"}},{"updated_at":"2012-05-21T07:31:47Z","body":"This was originally posted @\"biginners\".\n\nhttp://forum.openframeworks.cc/index.php/topic,9527.msg44049.html#msg44049\n\nJoshua noble suggested me to file it as a bug on jithub\n\n\n/////////////////original messages\n\nHello.\n\nI have question about ofShortPixels and ofShortColor.\n\nIf you execute the code below , it'll draw at half way screen height even though I did set aDot at (0. screen height / 4)\n\nAnd another weird thing is it draws 20 pixels instead of 10 pixels which I set for loop for 10 times.\n\nIt only draws correctly with ofPixels and ofColor.\n\nIt doesn't work with ofFloatPixels and ofFloatColor.\n\nPlease help me out.\n\nI need to have RGB value over 255 so I can check if those values are over 255.\n\nThanks in advanced\n\nJin\n\n\n.h file\nCode:\nview plaincopy to clipboardprint?\n\n #pragma once \n #include \"ofMain.h\" \n \n class Dot { \n public: \n ofVec2f location; \n \n Dot(){ \n location.set(0,0); \n } \n \n ~Dot(){} \n }; \n \n class testApp : public ofBaseApp{ \n public: \n void setup(); \n void update(); \n void draw(); \n \n int w,h; \n \n ofTexture particleTexture; \n ofShortPixels * rgbPixels; \n \n ofShortColor& paint(ofShortColor &); \n \n Dot aDot; \n \n \n }; \n\n\n.cpp file\nCode:\nview plaincopy to clipboardprint?\n\n #include \"testApp.h\" \n //-------------------------------------------------------------- \n void testApp::setup(){ \n ofSetFrameRate(30); \n ofSetBackgroundAuto(TRUE); \n ofBackground(0, 0, 0); \n w = ofGetWidth(); \n h = ofGetHeight(); \n \n particleTexture.allocate(w,h,GL_RGB); \n rgbPixels = new ofShortPixels; \n rgbPixels->allocate(w, h, 3); \n aDot.location.set(0, h/4); \n } \n \n //-------------------------------------------------------------- \n void testApp::update(){ \n ofShortColor pixelColor; \n ofShortColor newPixelColor; \n for(int i = 0; i<10; i++){ \n pixelColor = rgbPixels->getColor(aDot.location.x+i, aDot.location.y); \n \n newPixelColor = paint(pixelColor); \n \n rgbPixels->setColor(aDot.location.x+i, aDot.location.y,newPixelColor); \n \n } \n particleTexture.loadData(* rgbPixels); \n } \n \n //-------------------------------------------------------------- \n void testApp::draw(){ \n particleTexture.draw(0, 0, w, h); \n } \n \n ofShortColor & testApp::paint(ofShortColor & _c){ \n \n _c.r += 10; \n _c.g += 2; \n _c.b += 3; \n \n _c.set(_c.r, _c.g, _c.b); \n _c.clamp(); \n \n return _c; \n } ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1257","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1257,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1257","assignee":null,"title":"ofShortPixels doesn't draw pixels correctly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-14T05:46:14Z","state":"open","user":{"url":"https://api.github.com/users/gazaebal","gravatar_id":"f9d7811bb6318fedf7e9f2fe8bfece32","avatar_url":"https://secure.gravatar.com/avatar/f9d7811bb6318fedf7e9f2fe8bfece32?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"gazaebal","id":1736190},"id":4557803,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T21:42:08Z","body":"if i'm not mistaken, the correct way of using ofMatrix4x4 in oF is `glMultMatrixf(myMatrix.getPtr())` or `glLoadMatrixf`.\nThis seems a bit uncomfortable for me.\n\nsome candidates are:\n\n```c++\nofPushMatrix(const ofMatrix4x4 &); //needs alternatives as you might not want to push at the time\nofLoadMatrix(const ofMatrix4x4 &);\nofMultMatrix(const ofMatrix4x4 &);\n\nofMatrix4x4::apply();\nofMatrix4x4::glLoadMatrix(matrixMode = OF_MATRIX_MODE_CURRENT);\n```\n\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1256","comments":5,"milestone":null,"number":1256,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1256","assignee":null,"title":"Feature ofPushMatrix(const ofMatrix4x4 &)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-13T18:20:29Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4554058,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-11T21:24:20Z","body":"\tunsigned char faceSize = 3;\n\tif(data.getNumIndices()){\n\t\tos << \"element face \" << data.getNumIndices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t} else if(data.getMode() == OF_PRIMITIVE_TRIANGLES) {\n\t\tos << \"element face \" << data.getNumVertices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t}\n\nThe facesize is being set as static as 3, but this results in strange exports...things open OK in Meshlab, but exporting to other programs with no faces seems like it won't work","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1252","comments":6,"milestone":null,"number":1252,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1252","assignee":null,"title":"0071 ply (mesh.save()) Point export is broken","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-11T19:45:53Z","state":"open","user":{"url":"https://api.github.com/users/laserpilot","gravatar_id":"07001341fe6c156dddd5b9d06d828cba","avatar_url":"https://secure.gravatar.com/avatar/07001341fe6c156dddd5b9d06d828cba?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"laserpilot","id":1041023},"id":4539985,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:33:31Z","body":"couple of minor bugfixes (absolute path wasn't being detected on second if [absolute] for windows paths)\r\nfixes unixy paths no matter what on windows","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1251","comments":8,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1251,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1251","assignee":null,"title":"Bugfix of to data path","labels":[],"closed_at":null,"created_at":"2012-05-10T06:44:20Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4507572,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1251.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1251","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1251.patch"}},{"updated_at":"2012-05-16T09:43:23Z","body":":(\r\n\r\nIt seems i'm getting double 'data/' in my paths\r\nafter a little tracking down, i found this is because ofSystemLoadDialog changes the current working directory\r\n\r\nso we could try and either fix that by popping the folder after the dialog, \r\nof for windows using something like ```GetModuleFileName``` to get the path of the current exe rather than using the current working directory\r\n\r\nI can't seem to run GetModuleFileName from ofUtils.cpp even though windows.h is included in ofConstants.h (included in ofUtils.h)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1250","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1250,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1250","assignee":null,"title":"bug: ofToDataPath broken again","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-05-10T06:35:24Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4507492,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:42:44Z","body":"'ofx TCPClient :: receiveRaw' was found in the proble.\n\nOriginal :\n\n\tint ofxTCPClient::receiveRawBytes(char * receiveBuffer, int numBytes){\n\t\t\t messageSize = TCPClient.Receive(receiveBuffer, numBytes);\t\n\t\t\t if(messageSize==0){\t\t\n\t\t\t\t\t\tclose();\t\n\t\t\t }\t\n\t\t\t return messageSize;\n\t}\n\nBut 'TCPClient.Receive (receiveBuffer, numBytes)' from '-1' may return\n\nI was modified\n\n\tstring ofxTCPClient::receiveRaw(){\n\t\t\t messageSize = TCPClient.Receive(tmpBuff, TCP_MAX_MSG_SIZE);\n\t\t\t if(messageSize==0){\n\t\t\t\t\t\tclose();\n\t\t\t }\n\t\t\t //TCPClient.Receive is return -1....\n\t\t\t else if(messageSize < 0){ \n\t\t\t\t\t\ttmpBuff[0] = 0;\n\t\t\t }\n\t\t\t else if(messageSize; rel="next", ; rel="last"'), ('etag', '"5e8867ffb4e7630e852b2b231f3b9cdb"'), ('date', 'Tue, 29 May 2012 19:36:57 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-27T18:11:17Z","body":"Since more and more of the OF Core now relies on Poco (ie ofThread, etc) does OF_USING_POCO make sense anymore?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1280","comments":0,"milestone":null,"number":1280,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1280","assignee":null,"title":"deprecate OF_USING_POCO?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-27T18:03:23Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"danomatika","id":480637},"id":4772349,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-28T08:08:24Z","body":"There occurs a weir glitch when compiling the ofShader example with my HD Graphics 3000 (288 Mb) (Mac osx 10.7.4 - Mac Mini - i5 - 2.3Ghz)\n\nI was able to get rid of the glitch by replacing \"gl_FragColor = gl_Color;\" with \"gl_FragColor = 255.0;\" or any other number.\nAnybody knows a reason for the glitch / proper solution?\n\nScreenshot: http://goo.gl/Xdf74\nOpenGL capacities on different graphic cards on apple machines: http://goo.gl/FGQ2N","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1279","comments":2,"milestone":null,"number":1279,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1279","assignee":null,"title":"ofShader example with HD Graphics 3000 issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-26T19:27:56Z","state":"open","user":{"url":"https://api.github.com/users/subtiv","gravatar_id":"837cfe96365c031130a46311eb11d86a","avatar_url":"https://secure.gravatar.com/avatar/837cfe96365c031130a46311eb11d86a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"subtiv","id":1012684},"id":4767675,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-25T18:39:02Z","body":"produces an error on app exit or tex destruction.\n\n OF: OF_LOG_ERROR: trying to delete a non indexed texture, something weird is happening. Deleting anyway\n\nThis is because retain(int id) is a static function in ofTexture.cpp. So we can't retain the depthStencilTexture.\n\nThis suggest we should move the texture allocation of the depth / stencil texture to ofTexture - something which is not possible at the moment. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1277","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1277,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1277","assignee":null,"title":"ofFbo can't retain depthStencil Texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-05-25T18:37:46Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":4758608,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-22T21:26:57Z","body":"\nthe offending line is: \n\nif( speed.getValue() != preSpeed ){\n\nwhich is evaluating as true even through the slider is not touched (float equality test, etc). \n\nif we alter it to something like: \n\nif( fabs(speed.getValue() - preSpeed) > 0.0001 ){\n\nthe code runs fine. probably nicer to add a \"value changed()\" functionality to the slider object though or use EPSILON, etc. \n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1271","comments":0,"milestone":null,"number":1271,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1271","assignee":null,"title":"periodic signal example doesn't run well on windows / cb (float equality error)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-05-22T21:26:57Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":4700182,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-22T16:41:21Z","body":"There's some error that appears on linux systems running the project generator to make VS examples, where the debug and release libs for opencv get added badly to the vs project: \n\n\t%(AdditionalDependencies);opencv_highgui231d.lib;opencv_calib3d231.lib;opencv_imgproc231d.lib;opencv_haartraining_engined.lib;opencv_gpu231d.lib;opencv_flann231.lib;opencv_contrib231d.lib;opencv_video231d.lib;opencv_objdetect231d.lib;zlib.lib;opencv_core231d.lib;opencv_contrib231.lib;opencv_ml231d.lib;opencv_features2d231.lib;opencv_core231.lib;opencv_gpu231.lib;opencv_legacy231d.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_ml231.lib;opencv_imgproc231.lib;opencv_objdetect231.lib;opencv_legacy231.lib;opencv_video231.lib\n\t\t\t\t%(AdditionalLibraryDirectories);..\\..\\..\\addons\\ofxOpenCv\\libs\\opencv\\lib\\vs2010\n\nthis doesn't seem to be the case on osx or windows, which produces correct results: \n\n\t%(AdditionalDependencies);opencv_calib3d231.lib;opencv_contrib231.lib;opencv_core231.lib;opencv_features2d231.lib;opencv_flann231.lib;opencv_gpu231.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_imgproc231.lib;opencv_legacy231.lib;opencv_ml231.lib;opencv_objdetect231.lib;opencv_video231.lib;zlib.lib\n\nwould be good to look at the logic of \"visualStudioProject::addAddon()\" and see if we can fix this.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1268","comments":9,"milestone":null,"number":1268,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1268","assignee":null,"title":"project generator - bad libs for VS / opencv examples","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-05-20T21:50:24Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":4662873,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T00:43:37Z","body":"I woud love some eyes on ofFbo would be great to get it cleaned up and standardized for 0072. \nRight now there are a ton of #ifdefs and some very hard to follow logic, which makes bug fixing quite difficult especially on OPENGL_ES\n\nsee: https://gist.github.com/2711815\n\n@elliotwoods @arturoc @memotv @damiannz @ofZach @kylemcdonald \n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1263","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1263,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1263","assignee":null,"title":"ofFbo.cpp is a huge mess! ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-16T16:27:30Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":4608132,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T14:29:02Z","body":"I added a .mailmap file to the repo to correctly collate all the contributors in spite of changing nick names/email addresses. This is useful when trying to identify contributors for a changelog or similar, or when using the git logging functions like shortlog.\n\nSee the before/after situation here: https://gist.github.com/2710366\n\nI have respected privacy and only used those real names that people have already given in a git ID in the repo. Mainly this addition only associates the different email addresses to one user. @arturoc wins the prize of most used emails! :-)\nThe list is pretty complete, I only had difficulties to associate some IDs to the correct Zachs, since it was not clear for some if @ofZach or @stfj (Zach Gage) was the contributor. Those were left as-is.\n\nIf anybody has objections to their various email being united under their name, please say so and I will correct/remove the relevant entries.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1262","comments":2,"milestone":null,"number":1262,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1262","assignee":null,"title":"Add .mailmap for contributor collation","labels":[],"closed_at":null,"created_at":"2012-05-16T13:44:32Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"id":4604661,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1262.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1262","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1262.patch"}},{"updated_at":"2012-05-16T09:35:31Z","body":"Address #375.\n\nAdd setVolumef(float). Also more clearly define volume ranges (int is 0..255, float is 0..1) and more robust clamping of volume argument.\n\nThis has not been tested on Linux or Windows.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1260","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1260,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1260","assignee":null,"title":"allow float volume on ofVideoPlayer","labels":[],"closed_at":null,"created_at":"2012-05-15T17:50:22Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"damiannz","id":144366},"id":4588997,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1260.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1260","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1260.patch"}},{"updated_at":"2012-05-21T07:31:47Z","body":"This was originally posted @\"biginners\".\n\nhttp://forum.openframeworks.cc/index.php/topic,9527.msg44049.html#msg44049\n\nJoshua noble suggested me to file it as a bug on jithub\n\n\n/////////////////original messages\n\nHello.\n\nI have question about ofShortPixels and ofShortColor.\n\nIf you execute the code below , it'll draw at half way screen height even though I did set aDot at (0. screen height / 4)\n\nAnd another weird thing is it draws 20 pixels instead of 10 pixels which I set for loop for 10 times.\n\nIt only draws correctly with ofPixels and ofColor.\n\nIt doesn't work with ofFloatPixels and ofFloatColor.\n\nPlease help me out.\n\nI need to have RGB value over 255 so I can check if those values are over 255.\n\nThanks in advanced\n\nJin\n\n\n.h file\nCode:\nview plaincopy to clipboardprint?\n\n #pragma once \n #include \"ofMain.h\" \n \n class Dot { \n public: \n ofVec2f location; \n \n Dot(){ \n location.set(0,0); \n } \n \n ~Dot(){} \n }; \n \n class testApp : public ofBaseApp{ \n public: \n void setup(); \n void update(); \n void draw(); \n \n int w,h; \n \n ofTexture particleTexture; \n ofShortPixels * rgbPixels; \n \n ofShortColor& paint(ofShortColor &); \n \n Dot aDot; \n \n \n }; \n\n\n.cpp file\nCode:\nview plaincopy to clipboardprint?\n\n #include \"testApp.h\" \n //-------------------------------------------------------------- \n void testApp::setup(){ \n ofSetFrameRate(30); \n ofSetBackgroundAuto(TRUE); \n ofBackground(0, 0, 0); \n w = ofGetWidth(); \n h = ofGetHeight(); \n \n particleTexture.allocate(w,h,GL_RGB); \n rgbPixels = new ofShortPixels; \n rgbPixels->allocate(w, h, 3); \n aDot.location.set(0, h/4); \n } \n \n //-------------------------------------------------------------- \n void testApp::update(){ \n ofShortColor pixelColor; \n ofShortColor newPixelColor; \n for(int i = 0; i<10; i++){ \n pixelColor = rgbPixels->getColor(aDot.location.x+i, aDot.location.y); \n \n newPixelColor = paint(pixelColor); \n \n rgbPixels->setColor(aDot.location.x+i, aDot.location.y,newPixelColor); \n \n } \n particleTexture.loadData(* rgbPixels); \n } \n \n //-------------------------------------------------------------- \n void testApp::draw(){ \n particleTexture.draw(0, 0, w, h); \n } \n \n ofShortColor & testApp::paint(ofShortColor & _c){ \n \n _c.r += 10; \n _c.g += 2; \n _c.b += 3; \n \n _c.set(_c.r, _c.g, _c.b); \n _c.clamp(); \n \n return _c; \n } ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1257","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1257,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1257","assignee":null,"title":"ofShortPixels doesn't draw pixels correctly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-14T05:46:14Z","state":"open","user":{"url":"https://api.github.com/users/gazaebal","gravatar_id":"f9d7811bb6318fedf7e9f2fe8bfece32","avatar_url":"https://secure.gravatar.com/avatar/f9d7811bb6318fedf7e9f2fe8bfece32?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"gazaebal","id":1736190},"id":4557803,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T21:42:08Z","body":"if i'm not mistaken, the correct way of using ofMatrix4x4 in oF is `glMultMatrixf(myMatrix.getPtr())` or `glLoadMatrixf`.\nThis seems a bit uncomfortable for me.\n\nsome candidates are:\n\n```c++\nofPushMatrix(const ofMatrix4x4 &); //needs alternatives as you might not want to push at the time\nofLoadMatrix(const ofMatrix4x4 &);\nofMultMatrix(const ofMatrix4x4 &);\n\nofMatrix4x4::apply();\nofMatrix4x4::glLoadMatrix(matrixMode = OF_MATRIX_MODE_CURRENT);\n```\n\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1256","comments":5,"milestone":null,"number":1256,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1256","assignee":null,"title":"Feature ofPushMatrix(const ofMatrix4x4 &)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-13T18:20:29Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4554058,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-11T21:24:20Z","body":"\tunsigned char faceSize = 3;\n\tif(data.getNumIndices()){\n\t\tos << \"element face \" << data.getNumIndices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t} else if(data.getMode() == OF_PRIMITIVE_TRIANGLES) {\n\t\tos << \"element face \" << data.getNumVertices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t}\n\nThe facesize is being set as static as 3, but this results in strange exports...things open OK in Meshlab, but exporting to other programs with no faces seems like it won't work","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1252","comments":6,"milestone":null,"number":1252,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1252","assignee":null,"title":"0071 ply (mesh.save()) Point export is broken","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-11T19:45:53Z","state":"open","user":{"url":"https://api.github.com/users/laserpilot","gravatar_id":"07001341fe6c156dddd5b9d06d828cba","avatar_url":"https://secure.gravatar.com/avatar/07001341fe6c156dddd5b9d06d828cba?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"laserpilot","id":1041023},"id":4539985,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:33:31Z","body":"couple of minor bugfixes (absolute path wasn't being detected on second if [absolute] for windows paths)\r\nfixes unixy paths no matter what on windows","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1251","comments":8,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1251,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1251","assignee":null,"title":"Bugfix of to data path","labels":[],"closed_at":null,"created_at":"2012-05-10T06:44:20Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4507572,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1251.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1251","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1251.patch"}},{"updated_at":"2012-05-16T09:43:23Z","body":":(\r\n\r\nIt seems i'm getting double 'data/' in my paths\r\nafter a little tracking down, i found this is because ofSystemLoadDialog changes the current working directory\r\n\r\nso we could try and either fix that by popping the folder after the dialog, \r\nof for windows using something like ```GetModuleFileName``` to get the path of the current exe rather than using the current working directory\r\n\r\nI can't seem to run GetModuleFileName from ofUtils.cpp even though windows.h is included in ofConstants.h (included in ofUtils.h)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1250","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1250,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1250","assignee":null,"title":"bug: ofToDataPath broken again","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-05-10T06:35:24Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4507492,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:42:44Z","body":"'ofx TCPClient :: receiveRaw' was found in the proble.\n\nOriginal :\n\n\tint ofxTCPClient::receiveRawBytes(char * receiveBuffer, int numBytes){\n\t\t\t messageSize = TCPClient.Receive(receiveBuffer, numBytes);\t\n\t\t\t if(messageSize==0){\t\t\n\t\t\t\t\t\tclose();\t\n\t\t\t }\t\n\t\t\t return messageSize;\n\t}\n\nBut 'TCPClient.Receive (receiveBuffer, numBytes)' from '-1' may return\n\nI was modified\n\n\tstring ofxTCPClient::receiveRaw(){\n\t\t\t messageSize = TCPClient.Receive(tmpBuff, TCP_MAX_MSG_SIZE);\n\t\t\t if(messageSize==0){\n\t\t\t\t\t\tclose();\n\t\t\t }\n\t\t\t //TCPClient.Receive is return -1....\n\t\t\t else if(messageSize < 0){ \n\t\t\t\t\t\ttmpBuff[0] = 0;\n\t\t\t }\n\t\t\t else if(messageSize; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"cf9ec647fbc78faae05cb2d11598f79c"'), ('date', 'Tue, 29 May 2012 19:27:10 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-04-30T19:43:55Z","body":"On 'update', PG should respect existing custom include paths, source files, linker flags and project options (such as optimization settings).\r\n\r\nOR\r\n\r\nXcode project should read and respect `OTHER_LDFLAGS` and `HEADER_SEARCH_PATHS`, and add `OTHER_CFLAGS` from Project.xcconfig; projectGenerator should leave these settings alone unless it figures out they need to be adjusted (this is probably going to be difficult).","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1217","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1217,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1217","assignee":null,"title":"projectGenerator update doesn't respect existing project settings","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-04-24T21:03:44Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4269431,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-02T10:19:07Z","body":"Since I don't want to derail #484 further, this issue deals with the implementation of a deprecation mechanism.\r\nBased on [this](http://stackoverflow.com/questions/295120/c-mark-as-deprecated), I made an OFDEPRECATED preproc macro.\r\n\r\nQUESTION: How do I correctly #ifdef for MacOS/XCode4/llvm?\r\n\r\nCould people test this on different platforms? On linux this works. \r\n\r\n\t\ttestApp.h:\r\n\r\n\t\t#pragma once\r\n\r\n\t\t#ifdef __GNUC__\r\n\t\t// maybe __clang__ for checking against llvm/xcode4?\r\n\t\t#define OFDEPRECATED(message, func) func __attribute__ ((deprecated(message)))\r\n\t\t#elif defined(_MSC_VER)\r\n\t\t#define OFDEPRECATED(message, func) __declspec(deprecated(message)) func\r\n\t\t#else\r\n\t\t#pragma message(\"WARNING: You need to implement DEPRECATED for this compiler\")\r\n\t\t#define OFDEPRECATED(message, func) func\r\n\t\t#endif\r\n\r\n\t\tand \r\n\r\n\t\t\t\tvoid dragEvent(ofDragInfo dragInfo);\r\n\t\t\t\tvoid gotMessage(ofMessage msg);\r\n\t\t\r\n\t\t\t\tOFDEPRECATED(\"This is an old function, don't use!\", void deprecatedFunction(void));\r\n\t\t\t\tOFDEPRECATED(\"Obsolete type, use T2!\", typedef int T1);\r\n\t\t\t\ttypedef int T2;\r\n\t\t\t\tOFDEPRECATED(\"This is an old variable, don't use!\", int oldvar3);\r\n\t\t\t\t//This breaks a bit cause it's used in the constructor of testApp, so always triggers.\r\n\r\n\t\t};\r\n\t\tOFDEPRECATED(\"old class!\", class oldClass {\r\n\t\t\tpublic:\r\n\t\t\t\toldClass();\r\n\t\t\t\tvirtual ~oldClass();\r\n\t\t});\r\n\r\n\t\ttestApp.cpp:\r\n\r\n\t\tvoid testApp::setup(){\r\n\t\t\tOFDEPRECATED(\"old string. Don't use\", string oldstring);\r\n\t\t\t// Uncomment these to trigger deprecation warnings\r\n\t\t//\tdeprecatedFunction();\r\n\t\t//\tT1 t1object = 5;\r\n\t\t//\toldstring = \"bla\";\r\n\t\t//\toldvar3=5;\r\n\t\t//\toldClass bla;\r\n\t\t}\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1216","comments":11,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1216,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1216","assignee":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Implement deprecation mechanism","labels":[],"closed_at":null,"created_at":"2012-04-24T21:03:39Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4269429,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-30T19:43:14Z","body":"When using PG's 'update' functionality on apps are in paths with non-standard depths (in my case, `oF/apps/dir/subdir/subsubdir`) the OF_PATH and #include directives in the resulting Project.xcconfig don't match, which means oF projects won't compile:\r\n\r\n~~~~\r\n//THE PATH TO THE ROOT OF OUR OF PATH RELATIVE TO THIS PROJECT.\r\n//THIS NEEDS TO BE DEFINED BEFORE CoreOF.xcconfig IS INCLUDED\r\nOF_PATH = ../../../..\r\n\r\n//THIS HAS ALL THE HEADER AND LIBS FOR OF CORE\r\n#include \"../../../../../libs/openFrameworksCompiled/project/osx/CoreOF.xcconfig\"\r\n~~~~\r\n\r\nNote extra `../` in the `#include` path.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1215","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1215,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1215","assignee":null,"title":"projectGenerator sets incorrect path in Project.xcconfig","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-04-24T20:59:57Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4269359,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-22T23:56:33Z","body":"i'm teaching a workshop right now and i feel like it's ridiculous that i need to explain pointers just to access video :)\r\n\r\nlet's add this!","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1202","comments":3,"milestone":null,"number":1202,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1202","assignee":null,"title":"ofVideoPlayer etc needs ofColor access","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-22T18:42:58Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4231092,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-29T17:34:24Z","body":"DO NOT PULL YET!\r\n\r\nHey all\r\n\r\nHere's the 'off-axis camera' setup we worked on at ScreenLab last weekend.\r\nIt allows you to:\r\n\r\n* Set lens offset on a camera\r\n* Calculate the camera parameters based on a 'view portal' defined by 3 points (top left, bottom left, bottom right)\r\n\r\nCurrently the changes involve editing ofBaseRenderer (and therefore all other renderers) to support lensOffset parameter (default 0,0). We could remove this since ofCamera doesn't actually use ofSetupScreenPerspective\r\n\r\nSo let's have a quick chat about what needs chaning to make this core friendly and then probably pull after 0071 release?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1201","comments":9,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1201,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1201","assignee":null,"title":"Feature provocation pull request: ofCamera lens offset","labels":[],"closed_at":null,"created_at":"2012-04-22T15:55:29Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4230131,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1201.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1201","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1201.patch"}},{"updated_at":"2012-05-14T01:22:17Z","body":"I'm investigating the way to draw bezier curves / nurbs etc. with shaders, here is a list a links and information I found that can improve render times with OF. Any way I must admit I'm new to openGL & shaders so maybe someone can take this to implement maybe an add-on or maybe to added to the core.\r\n\r\n**Resolution Independent Curve Rendering using Programmable Graphics Hardware**\r\nhttp://research.microsoft.com/en-us/um/people/cloop/loopblinn05.pdf\r\n\r\n**Resolution independent GPU accelerated Curve & Font rendering**\r\n**GPU based Resolution Independent Font & Curve Rendering – initial Release**\r\nhttp://jausoft.com/blog/2011/04/01/resolution-independent-gpu-accelerated-curve-font-rendering/\r\nhttp://ramisantina.com/blog/?p=73\r\nhttp://vimeo.com/21810192\r\nhttp://jogamp.org/doc/gpunurbs2011/p70-santina.pdf\r\n\r\n**Curvy blues**\r\nhttp://www.mdk.org.pl/2007/10/27/curvy-blues\r\n\r\n**Vector drawing: OpenGL shaders and cairo & vector hardware tessellation**\r\nhttp://www.mdk.org.pl/2007/8/6/vector-drawing-opengl-shaders-and-cairo\r\n\r\n**ShivaVG & Random Access Rendering of Animated Vector Graphics**\r\nhttp://ivanleben.blogspot.com.es/2007/07/shivavg-open-source-ansi-c-openvg.html\r\nhttp://www.youtube.com/watch?v=mD8X-e5-sY4\r\nhttp://www.youtube.com/watch?v=U4USCfwORUg\r\nhttp://andrejas-atelier.com/ivan/IvanLebenHonsThesis.pdf\r\n\r\n**RAVG**\r\nhttp://research.microsoft.com/en-us/um/people/hoppe/proj/ravg/\r\n\r\n**NV Path Rendering Videos (seams only with nvidia)**\r\nhttp://developer.nvidia.com/nv-path-rendering-videos\r\n\r\n**Vector drawing: OpenGL polygon tessellation**\r\nhttp://www.mdk.org.pl/2007/8/16/vector-drawing-opengl-polygon-tessellation\r\nhttp://zrusin.blogspot.com.es/2006/07/hardware-accelerated-polygon-rendering.html\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1190","comments":8,"milestone":null,"number":1190,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1190","assignee":null,"title":"Bezier Shaders & Vector openGL rendering","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-2D","name":"section-2D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-20T09:23:00Z","state":"open","user":{"url":"https://api.github.com/users/microbians","gravatar_id":"98c91e60903b83c0a022ee70cca9ca21","login":"microbians","id":1662136,"avatar_url":"https://secure.gravatar.com/avatar/98c91e60903b83c0a022ee70cca9ca21?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4207350,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:41:20Z","body":"ofSetCurveResolution is not changing the resolution using ofBezier nor ofBezierVertex (tested with ofScale is more easy to see the bug)\r\n\r\n ofFill();\r\n ofSetHexColor(0xFF9933);\r\n ofBeginShape();\r\n ofVertex(x0,y0);\r\n ofBezierVertex(x1,y1,x2,y2,x3,y3);\r\n ofEndShape();\r\n\r\nall works fine when using ofPath directly:\r\n\r\n ofPath curve;\r\n curve.setFillHexColor(0xFF000);\r\n curve.setCurveResolution(120);\r\n curve.moveTo(x0, y0);\r\n curve.bezierTo(x1,y1,x2,y2,x3,y3);\r\n curve.draw();\r\n\r\nmore: http://forum.openframeworks.cc/index.php/topic,9596.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1189","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1189,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1189","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofSetCurveResolution + ofBezierVertex bug","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-04-20T08:51:51Z","state":"open","user":{"url":"https://api.github.com/users/microbians","gravatar_id":"98c91e60903b83c0a022ee70cca9ca21","login":"microbians","id":1662136,"avatar_url":"https://secure.gravatar.com/avatar/98c91e60903b83c0a022ee70cca9ca21?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4206982,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-01T04:10:23Z","body":"If you set up an ofFbo as follows...\r\n\r\n```cpp\r\n ofFbo::Settings s;\r\n s.width = 400;\r\n s.height = 400;\r\n s.textureTarget = GL_TEXTURE_2D;\r\n s.useDepth = true;\r\n s.depthAsTexture = true;\r\n s.dethInternalFormat = GL_DEPTH_COMPONENT24;\r\n```\r\n\r\n...then the colour texture's dimensions are set to be the next POTs up but the depth texture's dimensions don't seem to be. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1186","comments":2,"milestone":null,"number":1186,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1186","assignee":null,"title":"ofFbo depthBufferTex can be inconsistent with colour texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-18T15:08:32Z","state":"open","user":{"url":"https://api.github.com/users/neilmendoza","gravatar_id":"3e46b12547e7bac19eb982bc512b19c4","login":"neilmendoza","id":818571,"avatar_url":"https://secure.gravatar.com/avatar/3e46b12547e7bac19eb982bc512b19c4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4174070,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:44:27Z","body":"As mentioned here: http://forum.openframeworks.cc/index.php?topic=9107.0\r\nOpenGLES2 not working. It is always falls back to ES1. I tested it only on iPad2 with iOS 5.0.1.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1178","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1178,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1178","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"OpenGLES2 not working","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-04-16T11:19:36Z","state":"open","user":{"url":"https://api.github.com/users/erinnovations","gravatar_id":"29639bbeb3afdde8fb3c7e273e5e43c6","login":"erinnovations","id":253455,"avatar_url":"https://secure.gravatar.com/avatar/29639bbeb3afdde8fb3c7e273e5e43c6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4132608,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-14T13:45:55Z","body":"in ofTexture::loadData we are doing:\r\n\r\n\r\n\t//------------------------ likely, we are uploading continuous data\r\n\tGLint prevAlignment;\r\n\tglGetIntegerv(GL_UNPACK_ALIGNMENT, &prevAlignment);\r\n\tglPixelStorei(GL_UNPACK_ALIGNMENT, 1);\r\n\r\nany reason for this? leaving the default works too. i've been working with a huge video and the transfer rates on some cards were super slow with ofTexture::loadData. even glDrawPixels was faster, i've finally used pbo's but later looking at ofTexture discovered this lines and i suspect that it could be the reason for loadData being slower, haven't tested it yet though.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1175","comments":0,"milestone":null,"number":1175,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1175","assignee":null,"title":"GL_UNPACK_ALIGNMENT 1 in ofTexture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-14T13:45:42Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4117762,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:39:22Z","body":"one returns the result (dot) the other performs in place (cross), i.e. overrides the contents\r\nThe two definitions are inconsistent\r\npropose rename `ofVec3f::dot` to become `ofVec3f::getDotted` in line with `ofVec3f::getCrossed`","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1174","comments":9,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1174,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1174","assignee":null,"title":"bug : inconsistent API for ofVec3f::dot and ofVec3f::cross","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-13T17:09:38Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4108582,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-14T04:20:36Z","body":"If you pass a string containing non-ascii characters to ofToHex(), the non-ascii characters (with character codes above 127) will be output as ffffxxxx (it depends on the exact character value and the size of the int type on the platform you are compiling for).\r\nThe problem is due to an incorrect cast in the ostringstream operation inside the loop.\r\nInstead of directly casting the (signed) char from the input character to an unsigned int, the input character must first be cast to an unsigned char.\r\nIn other words, instead of:\r\n``` out << setfill('0') << setw(2) << hex << (unsigned int) value[i];```\r\nit should be:\r\n``` out << setfill('0') << setw(2) << hex << (unsigned int) ((unsigned char)value[i]);```\r\nor maybe even:\r\n``` out << setfill('0') << setw(2) << hex << static_cast(static_cast(value[i]));```\r\nif you prefer C++ style casts over C style casts. :)\r\n\r\nHTH\r\n/Jesper","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1173","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1173,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1173","assignee":null,"title":"ofToHex(string) is wrong for non-ascii input","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-13T14:42:30Z","state":"open","user":{"url":"https://api.github.com/users/pappis","gravatar_id":"fbf3d56c96cf5b891056530066549692","login":"pappis","id":1640543,"avatar_url":"https://secure.gravatar.com/avatar/fbf3d56c96cf5b891056530066549692?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4104336,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-12T10:09:42Z","body":"if I call ofBeginSaveScreenAsPDF using ofEasyCam or the ofCamera, the pdf doesn't have the perspective of the camera. There's a parameter b3d to ofBeginSaveScreenAsPDF which I interpret to be \"render taking into account 3d transforms\", but it doesn't seem to have any effect.\r\n\r\nmore on the forum\r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,9542.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1171","comments":0,"milestone":null,"number":1171,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1171","assignee":null,"title":"ofBeginSaveScreenAsPDF ignores 3d transformations","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-12T10:09:42Z","state":"open","user":{"url":"https://api.github.com/users/jesusgollonet","gravatar_id":"5008d5295e9bc2636313c7b50ed5981d","login":"jesusgollonet","id":31100,"avatar_url":"https://secure.gravatar.com/avatar/5008d5295e9bc2636313c7b50ed5981d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4081188,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-13T14:54:18Z","body":"if I have `ofEvent boolEvent` and i try to call `ofNotifyEvent( boolEvent, true )` i get a `no matching function` error as the compiler cannot coerce `true` to a `bool &`.\r\n\r\nto solve this, instead of this:\r\n\r\n~~~~\r\nofEvent boolEvent;\r\n...\r\nofNotifyEvent( boolEvent, true );\r\n~~~~\r\n\r\ni need to write this:\r\n\r\n~~~~\r\nofEvent boolEvent;\r\n...\r\nbool myBool = true;\r\nofNotifyEvent( boolEvent, myBool );\r\n~~~~\r\n\r\nthis is kind of annoying.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1167","comments":2,"milestone":null,"number":1167,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1167","assignee":null,"title":"ofNotifyEvent( boolEvent, true ) fails to compile","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-04-11T12:03:34Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4063456,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-11T13:21:33Z","body":"It's currently not possible to have an event without arguments\r\n\r\n`ofEvent testEvent;` -- fails to compile\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1166","comments":2,"milestone":null,"number":1166,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1166","assignee":null,"title":"ofEvent lacks simple, argument-free use case","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-04-11T12:00:19Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4063417,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-21T15:41:01Z","body":"It's currently not possible to write `ofLogError( \"serial\", \"error %i connecting to serial\", serialError )`. \r\n\r\nThere should be `ofLogError( string module, string format, ... )` methods as with normal ofLog.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1165","comments":6,"milestone":null,"number":1165,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1165","assignee":null,"title":"ofLogError, ofLogWarning lack format, ... args","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-04-11T11:56:33Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4063366,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-10T16:47:19Z","body":"change `allocate(_w, _h, OF_IMAGE_COLOR);` to `allocate(_w, _h, OF_IMAGE_COLOR_ALPHA);` (via reza on irc)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1152","comments":4,"milestone":null,"number":1152,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1152","assignee":null,"title":"grabScreen in ofImage fails on Android","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-04-09T17:15:21Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4032047,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-29T14:46:40Z","body":"the module name is no longer printed if it's coming from OF itself.\r\n\r\ninstead of the constant name, a human-readable string is printed.\r\n\r\nexample output from project generator: http://pastebin.com/raw.php?i=0dp938Jx","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1151","comments":6,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1151,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1151","assignee":null,"title":"shorten + simplify ofLog output","labels":[],"closed_at":null,"created_at":"2012-04-08T21:13:14Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4023525,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1151.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1151","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1151.patch"}},{"updated_at":"2012-04-17T14:47:36Z","body":"\r\nWorking on the project generator, which has a fair amount of logging, I'm concerned about how much space we loose on each line: \r\n\r\n OF: OF_LOG_NOTICE:\r\n\r\nit's about 15-20 characters or so, pretty significant where each line is 80, so alot more wrapping happens then I'd like, making the results less cleaner or organized. \r\n\r\nI propose we alter \r\n\r\n string ofGetLogLevelName(ofLogLevel level){\r\n switch(level){\r\n case OF_LOG_VERBOSE:\r\n return \"OF_LOG_VERBOSE\";\r\n break;\r\n case OF_LOG_NOTICE:\r\n return \"OF_LOG_NOTICE\";\r\n break;\r\n case OF_LOG_WARNING:\r\n return \"OF_LOG_WARNING\";\r\n break;\r\n case OF_LOG_ERROR:\r\n return \"OF_LOG_ERROR\";\r\n break;\r\n case OF_LOG_FATAL_ERROR:\r\n return \"OF_LOG_FATAL_ERROR\";\r\n break;\r\n case OF_LOG_SILENT:\r\n return \"OF_LOG_SILENT\";\r\n break;\r\n default:\r\n return \"\";\r\n }\r\n }\r\n\r\nso that we can have something like : \r\n\r\n (of:notice) \r\n (of:verbose) \r\n (of:error) \r\n\r\nor something smaller and if we loose the all caps, maybe less threatening :)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1150","comments":4,"milestone":null,"number":1150,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1150","assignee":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"propose shortening ofLog console message length","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-04-08T20:32:49Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4023305,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-07T15:00:32Z","body":"Hey all\r\n\r\nA few sections of the repo need some love to put them in line with the project generator:\r\n\r\n1. Readme's\r\n2. Rogue old project generators\r\n3. Document complementing tools\r\n\r\n# Readme\r\n\r\nThe readme's in the root of the repo need some love\r\nnone of them mention project generator \r\n\r\ni feel like each should be a description of how to get to a working project generator on each of the respective platforms\r\n\r\nalso note:\r\n* .vs2010 is missing\r\n* readme.txt repeats information from the other readme's (i.e. it's a list of platform specific instructions)\r\ni think this should be perhaps a little description of oF and a few tips on how to get started\r\n\r\n# Rogue old 'project generators' / documenting complementary tools for project generator\r\n\r\nHere's things I can find in the repo which don't make sense to me at the moment:\r\n\r\n* `openFrameworks\\scripts\\????\\compileAllExamples.bat`\r\n** is this supposed to be run (optionally) after the project generator?\r\n** why is the project template within this folder?\r\n* `openFrameworks\\scripts\\????\\createProjects.py` \r\n** if this isn't supposed to be used anymore, lets delete it immediately (we can always recover in emergencies)\r\n\r\nand the 'other' folder in the root.. perhaps never took off?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1146","comments":0,"milestone":null,"number":1146,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1146","assignee":null,"title":"Document Project Generator / clean out old tools","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"closed_at":null,"created_at":"2012-04-07T14:43:53Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4015514,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-07T19:49:31Z","body":"When attempting to render a mesh to a PDF the ofCairoRender does not output a filled mesh, thus the PDF output looks empty. \r\n\r\nIf you open the file in illustrator you'll see the paths, there but with no stroke or fill. \r\n\r\nWhen I dug into the issue a bit further I realized that Cairo isn't capable of rendering shapes with per vertex colors easily...\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1145","comments":3,"milestone":null,"number":1145,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1145","assignee":null,"title":"ofCairoRenderer ofMesh doesn't render properly to PDF","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-04-06T22:02:01Z","state":"open","user":{"url":"https://api.github.com/users/rezaali","gravatar_id":"548374013b9c6e50ebbd2294e12d4f31","login":"rezaali","id":555207,"avatar_url":"https://secure.gravatar.com/avatar/548374013b9c6e50ebbd2294e12d4f31?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4010494,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-01T04:21:01Z","body":"When using the ofColor subtraction operator, negative results are clamped to positive values instead of 0. Values are circulating between 0 and 255, which could be useful for hue in HSV but in most cases (R, G, B..) is not what I would expect.\r\n\r\n ofColor a(10, 40, 80);\r\n ofColor b(20, 5, 30);\r\n ofColor c = (a-b); // I get: (246, 45, 50), I would expect: (0, 45, 50)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1144","comments":9,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1144,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1144","assignee":null,"title":"ofColor subtraction and negative values","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-04-06T07:56:44Z","state":"open","user":{"url":"https://api.github.com/users/jembezmamy","gravatar_id":"69a23dc9914cb6bc3202c50e15eabba0","login":"jembezmamy","id":720354,"avatar_url":"https://secure.gravatar.com/avatar/69a23dc9914cb6bc3202c50e15eabba0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4001148,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-04T12:07:24Z","body":"When using the dragEvent ofDragInfo I always get the following error message:\r\n\r\nwarning: Could not find object file \"/Users/theo/Documents/CODE/__OPENFRAMEWORKS/gitOF/openFrameworks/apps/devApps/macDragDropExample/buildGlutFrameworkHackedWindowLevel10.4/libForeground.a(macx_foreground.o)\" - no debug information available for \"/Users/mcast/Code/GLUT-ToPost/macx_foreground.m\".\r\n\r\nIt doesn't seem to hurt my code but is a bit annoying, especially early on when I wasn't sure if it had anything to do with compile failings. Not a big issue obviously, but it might confuse some other newbie's also.\r\n\r\n(OF 0.07 - Xcode 4.2.1 - OS X 10.7.3 - macbook pro) ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1138","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1138,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1138","assignee":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"benign error message","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2012-04-04T11:05:57Z","state":"open","user":{"url":"https://api.github.com/users/davideo71","gravatar_id":"42c3c1acbdb4a998d8096b49745219cd","login":"davideo71","id":1611385,"avatar_url":"https://secure.gravatar.com/avatar/42c3c1acbdb4a998d8096b49745219cd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3968742,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-03T17:37:10Z","body":"theo's #1133 made me think about ways that i use noise regularly that might also be abstracted.\r\n\r\ni would also like to see versions of noise that return multidimensional results. normally i do something like:\r\n\r\n\tofVec2 a(ofSignedNoise(t, 0), ofSignedNoise(0, t)); // 1D -> 2D\r\n\tofVec2 b(ofSignedNoise(x, 0), ofSignedNoise(0, y)); // 2D -> 2D\r\n\tofVec3 c(ofSignedNoise(t, 0, 0), ofSignedNoise(0, t, 0), ofSignedNoise(0, 0, t)); // 1D -> 3D\r\n\tofVec3 d(ofSignedNoise(x, 0, 0), ofSignedNoise(0, y, 0), ofSignedNoise(0, 0, (x + y) / 2)); // 2D -> 3D\r\n\r\nand it would be good to spend some time making sure these are really good ways of doing it, then implement them inside some functions like `ofSignedNoise2()` and `ofSignedNoise3()` (for example).","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1134","comments":2,"milestone":null,"number":1134,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1134","assignee":null,"title":"multidimensional noise output","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-04-01T16:44:55Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3917377,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-01T17:48:12Z","body":"ie: the equivalent of doing \r\n\r\nfloat rate = 0.02 + ofNoise(ofGetElapsedTimeF() * 0.02, 100.0) * 0.015;\r\nfloat value = ofSignedNoise( rate, x, y ); \r\n\r\nas one function. \r\n\r\nalso see kyle's #1134 for other noise utils. \r\n\r\nI find myself needing this quite often for more natural random motion where the rate of change is variable. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1133","comments":0,"milestone":null,"number":1133,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1133","assignee":null,"title":"ofNoise and ofSignedNoise with 2nd order control for rate.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-04-01T15:45:11Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3917018,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=3 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4941'), ('content-length', '55518'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"414a5c156bbe219ad21d164052b40f6c"'), ('date', 'Tue, 29 May 2012 19:27:11 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-04-02T02:05:52Z","body":"This is a feature discussion issue for what string features we should add to of.\r\nofZach mentioned some regexp ones from P5 match matchAll\r\nWould be great to get some eyes on this.\r\n\r\nOne approach would be a static class or namespace.\r\nThe idea would be we could include a variety of handy functions that would be useful for people not wanting to get into regexp\r\n\r\n\tofString::contains(str, \"apple\") //returns bool\r\n\tofString::starts(str, \"The\") //returns bool\r\n\tofString::ends(str, \".\") //returns bool\r\n\tofString::count(str, \"apples\") //count how many times apples appears in the \r\n\tofString::join(myVectorStr, \", \"); //this is currently ofJoinString\r\n\tofString::split(someText, \".\"); //this is currently ofSplitString\r\n\tofString::split(someHtml, \"<\", \">\"); //this is the same but returns a vector of things between the start and end delims\r\n\tofString::limit(someText, 200); //limit the text to 200 characters. optional arg to add ... to the end.\r\n\r\nQuestions:\r\n- Should we mirror P5 with match and matchAll or should we indicate that regexp is required? ie regexMatch regexMatchAll ?\r\n- Other string utils we could add?\r\n- Should it be ofStringUtils:: or ofString:: ?\r\n- Something to do a split and then return a vector of float int etc?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1132","comments":6,"milestone":null,"number":1132,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1132","assignee":null,"title":"ofStringUtils:: feature discussion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-31T17:52:48Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":3911629,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-05-27T17:40:30Z","body":"This is a feature discussion issue for what should be added / changed to ofTTF.\r\nWould be great to get some eyes on this from @vtron @ofzach @arturoc and anyone with thoughts on the matter.\r\n\r\nTextAreas:\r\n- Fit text to a box\r\n- Handle overflow ( ie either truncate or resize box height )\r\n- non ragged options\r\n- could textAreas work with both ofTTF and ofDrawBitmapString ? abstract text formatting?\r\n\r\nAlignment:\r\n- Left align a string\r\n- Right align\r\n- Center\r\n- Top align \r\n- Base align \r\n\r\nSpacing:\r\n- Kerning\r\n- Leading / line height\r\n\r\nLoading:\r\n- Allow for loading a font up to a max size for drawing at different sizes. \r\n- Allow for selection and loading of specific sizes within one object. ie: myFont.setCurrentSize(12); \r\n- Font family's / sets ? Bold, Italic etc? \r\n\r\nDrawing:\r\n- Allow for drawing font at different sizes. Scale font as needed. \r\n\r\nFormatting:\r\n- Could we somehow allow a string to have different colors, sizes. Right now it is a pain to change colors or sizes. \r\n- would this be replicating basic html or another approach? maybe better as an addon?\r\n\r\nInfo:\r\n- Ability to get the x and y position of the nth character in the string? useful maybe for cursor or selection?\r\n\r\n**Update:**\r\n-Underline\r\n-Render rect behind text ( a la what @kylemcdonald added to ofDrawBitmapString)\r\n-Scale type to fit a rect + keep aspect ratio\r\n-Crazy: text along a path :) ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1131","comments":25,"milestone":null,"number":1131,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1131","assignee":null,"title":"ofTTF feature discussion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-31T17:36:25Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":3911537,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-31T14:44:01Z","body":"Agree on a common format for a header in the contributed example files.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1130","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1130,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1130","assignee":null,"title":"Define standard header for examples.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-31T14:44:01Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":3910580,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-04-24T02:12:05Z","body":"\r\n\r\nXcode 4 mangles OF projects pretty badly in the following ways: \r\n\r\na) it autogenerates schemes, and \"openframeworks\" appears as the chosen scheme\r\nb) it sometimes chooses the wrong SDK for OF -- is there a way to set that?\r\nc) debug and release are not really clear, part of this is a shift in xcode -- but it's much harder to see how things are compiled and to set release or debug\r\nd) I still had issues with OF needing to be recompiled all the time. I tried to fix this, but we should make sure it's done right. the of lib was appearing red even though it had been built, etc. \r\n\r\nI've tried to fix some of this in detroit with the PG, but I don't think it's the right way to do it. Overall, it would be great to have projects work smoothly on xcode 4...\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1129","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1129,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1129","assignee":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"title":"xcode 4 issues: scheme, auto-generation of schemes, rebuilding OF, sdk, etc","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-03-31T14:39:04Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":3910555,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-31T16:32:04Z","body":"When deprecating api's (e.g. ofEvents, ofVertexes), perhaps we could help automate the changes through simple scripts to update api\r\nSuggest sticking to something close to how uncrustify scripts are run (and perhaps there are tools like uncrustify but specifically for this task)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1128","comments":1,"milestone":null,"number":1128,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1128","assignee":null,"title":"upgrade scripts","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-31T14:38:19Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":3910549,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-04-09T16:47:04Z","body":"It would be nice (and useful for testing the PG) if the PG would get an option to clean the examples folders of all generated files. \r\n\r\nCurrently, the quickest option is to delete the examples folder on disk, and do `git reset --hard HEAD`.\r\n\r\nAs before, milestoned for 0071, but feel free to push back.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1126","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1126,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1126","assignee":null,"title":"PG Feature request: Clean examples folder","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-03-30T12:51:30Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":3897090,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-29T16:47:29Z","body":"there is a hard limit of 100 files when using drag & drop into an of app. not sure if it's an of issue, but am curious if it comes from the hacked glutDragEventFunc ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1124","comments":0,"milestone":null,"number":1124,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1124","assignee":null,"title":"void dragEvent(ofDragInfo dragInfo) limited to 100 files in osx lion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-29T16:47:29Z","state":"open","user":{"url":"https://api.github.com/users/jesusgollonet","gravatar_id":"5008d5295e9bc2636313c7b50ed5981d","login":"jesusgollonet","avatar_url":"https://secure.gravatar.com/avatar/5008d5295e9bc2636313c7b50ed5981d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":31100},"id":3883598,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-29T13:05:25Z","body":"When loading a file with ofImage, ofSoundPlayer , ofVideoPlayer-file or any ofFile it would be nice to be able to know if the file changed since it was loaded.\r\n\r\nIts very simple to implement with Poco::File->getLastModified() and it would be very nice if this would be built into the above classes.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1120","comments":2,"milestone":null,"number":1120,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1120","assignee":null,"title":"isFileChanged() for ofImage, ofVideoPlayer, ofSoundPlayer and ofFile","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-28T16:21:45Z","state":"open","user":{"url":"https://api.github.com/users/imanhp","gravatar_id":"7398ab0bbd07832d0289f26773e65077","login":"imanhp","avatar_url":"https://secure.gravatar.com/avatar/7398ab0bbd07832d0289f26773e65077?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1216228},"id":3856005,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-30T12:19:59Z","body":"paths.make should be in the repo as an example on how to set it up correctly, but changes (i.e. paths unique to every user) to it should be ignored cause everyone will have a different version in their computers so we don't want personal changes to appear in git status.\r\n\r\nI think the best way to solve this is to rename it to paths.make.default, keep this in the repo, maybe with `` instead of your path, and have people make their own paths.make from that one. We track changes to paths.make.default and ignore paths.make. \r\n\r\nThis will probably also need a mechanism in the makefile to fail gracefully and remind the user, if his customized paths.make is missing.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1118","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1118,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1118","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"Default paths.make for Android","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/android","name":"android","color":"2bc4ad"}],"closed_at":null,"created_at":"2012-03-28T12:19:39Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":3850655,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-04-18T17:13:36Z","body":"Once ofSetFrameRate() is called, I can't find a way to retrieve it. I think implementing a ofGetDesiredFrameRate() in ofAppRunner would make sense, also adding getDesiredFrameRate() to ofAppBaseWindow and all subclasses, where the actual value is stored. \r\n\r\nThis can be useful to compare the desired frame rate with actual frame rate and react accordingly if required.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1117","comments":0,"milestone":null,"number":1117,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1117","assignee":null,"title":"Can't retrieve desired frame rate once set","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-27T11:48:00Z","state":"open","user":{"url":"https://api.github.com/users/armadillu","gravatar_id":"b87a82d7c86161432ee6388c7cbd5e2c","login":"armadillu","avatar_url":"https://secure.gravatar.com/avatar/b87a82d7c86161432ee6388c7cbd5e2c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":167057},"id":3825582,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-26T22:27:14Z","body":"https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/gl/ofVbo.cpp#L343\r\n\r\nIndices should be specified as GL_ELEMENT_ARRAY_BUFFER unless I am mistaken.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1116","comments":5,"milestone":null,"number":1116,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1116","assignee":null,"title":"ofVBO updateIndexData incorrect buffer type.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-26T18:26:05Z","state":"open","user":{"url":"https://api.github.com/users/vade","gravatar_id":"37aca214d4875cd90af9d67072c82642","login":"vade","avatar_url":"https://secure.gravatar.com/avatar/37aca214d4875cd90af9d67072c82642?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":65011},"id":3813852,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-26T18:45:51Z","body":"The default optimization settings for debug builds in example XCode projects is set to Fastest,Smallest thus making debugging very difficult, is there a specific reason for this?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1115","comments":3,"milestone":null,"number":1115,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1115","assignee":null,"title":"optimization level in xcode projects","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"}],"closed_at":null,"created_at":"2012-03-26T17:05:14Z","state":"open","user":{"url":"https://api.github.com/users/colormotor","gravatar_id":"2548dbd6a86902ed5260b5f76710b83c","login":"colormotor","avatar_url":"https://secure.gravatar.com/avatar/2548dbd6a86902ed5260b5f76710b83c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1239872},"id":3812318,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-31T15:31:31Z","body":"I had some problems because of macro definitions in ofArduino.h overriding an enum in a a class of my codebase ( SHIFT )\r\nIt's not exactly a bug! but I would suggest using enums or const int instead of the macros to avoid any conflicts\r\nI solved the problem by modifying \r\n#define SHIFT 0x05 \r\ninto \r\nconst int SHIFT = 0x05;\r\n\r\nanother solution could be using enumerations as \r\nenum\r\n{\r\n ...\r\n SHIFT = 0x05,\r\n etc...\r\n};\r\n\r\nI believe this would not break any of the existing code\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1114","comments":1,"milestone":null,"number":1114,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1114","assignee":{"url":"https://api.github.com/users/joshuajnoble","gravatar_id":"10960ba0f305803a1cdc7cd6188d643b","login":"joshuajnoble","avatar_url":"https://secure.gravatar.com/avatar/10960ba0f305803a1cdc7cd6188d643b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":237423},"title":"macros in ofArduino","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-03-26T17:02:21Z","state":"open","user":{"url":"https://api.github.com/users/colormotor","gravatar_id":"2548dbd6a86902ed5260b5f76710b83c","login":"colormotor","avatar_url":"https://secure.gravatar.com/avatar/2548dbd6a86902ed5260b5f76710b83c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1239872},"id":3812275,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-27T14:56:56Z","body":"Hello.\r\n\r\nI'm trying to run camera frame grabing in OSX Lion.\r\nSimple ofVideoGrabber doesn't work - even if I link it with 10.6 SDK (and 10.6 is deployment target) I receive crash in initialization of ofVideoGrabber. Details are the same as in http://forum.openframeworks.cc/index.php/topic,6776.0.html\r\n\r\nI tryed QtKitMovieGrabberExample. It had some problems in compilation - texture property was not synthesized, I wrote this property and compilation run well.\r\nBut linking is fault. All I receive form linker is:\r\n\r\n*Ld bin/movieGrabberExampleDebug.app/Contents/MacOS/movieGrabberExampleDebug normal i386\r\n cd /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample\r\n setenv MACOSX_DEPLOYMENT_TARGET 10.6\r\n /Developer/usr/bin/clang++ -arch i386 -isysroot /Developer/SDKs/MacOSX10.6.sdk -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freeimage/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/GLee/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/rtAudio/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/fmodex/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freetype/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx -F/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin -F/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/glut/lib/osx -filelist /Users/yltastep/Library/Developer/Xcode/DerivedData/movieGrabberExample-aftkspwrgtotrteyzaplfbqzeasd/Build/Intermediates/movieGrabberExample.build/Debug/movieGrabberExample.build/Objects-normal/i386/movieGrabberExampleDebug.LinkFileList -mmacosx-version-min=10.6 -dead_strip ../../../libs/poco/lib/osx/PocoFoundation.a ../../../libs/poco/lib/osx/PocoNet.a ../../../libs/poco/lib/osx/PocoXML.a ../../../libs/poco/lib/osx/PocoUtil.a ../../../libs/tess2/lib/osx/tess2.a ../../../libs/glew/lib/osx/glew.a ../../../libs/cairo/lib/osx/cairo-script-interpreter.a ../../../libs/cairo/lib/osx/cairo.a ../../../libs/cairo/lib/osx/pixman-1.a ../../../libs/fmodex/lib/osx/libfmodex.dylib ../../../libs/rtAudio/lib/osx/rtAudio.a /Users/yltastep/Documents/XCode/openframeworks/libs/openFrameworksCompiled/lib/osx/openFrameworksDebug.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/GLee/lib/osx/GLee.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/rtAudio/lib/osx/rtAudio.a -framework AGL -framework ApplicationServices -framework AudioToolbox -framework Carbon -framework CoreAudio -framework CoreFoundation -framework CoreServices -framework OpenGL -framework QuickTime -framework AppKit -framework Cocoa -framework IOKit -framework GLUT /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoFoundation.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoNet.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoUtil.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoXML.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freetype/lib/osx/freetype.a -lfmodex /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx/freeimage.a -framework QTKit -framework Quartz -framework QuartzCore -o /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin/movieGrabberExampleDebug.app/Contents/MacOS/movieGrabberExampleDebug*\r\n\r\n**Command /Developer/usr/bin/clang++ failed with exit code 1**\r\n\r\nSo no explanation of problem.\r\n\r\nIs somebody ran this example successfully ?\r\nAnd what I'm doing wrong ?\r\n\r\nThanks in advance !\r\n\r\nWith regards.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1112","comments":9,"milestone":null,"number":1112,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1112","assignee":null,"title":"Issue with QtKitMovieGrabberExample in apps/devapps","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2012-03-26T12:11:44Z","state":"open","user":{"url":"https://api.github.com/users/OlexandrStepanov","gravatar_id":"aa6e2a475cab75513c9cc435b28eef31","login":"OlexandrStepanov","avatar_url":"https://secure.gravatar.com/avatar/aa6e2a475cab75513c9cc435b28eef31?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":971079},"id":3807459,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-25T20:07:16Z","body":"Todd's example has this code a few times in it by hand, but I'm thinking it's so simple it could be added along side ofSplitString() and would be really useful ? for sure, more string utility functions are helpful, and for basic text parsing, this is great. Poco gives us this for free, so it doesn't seem like a huge stretch to think of something like this, plus find and replace, etc. Would make the regex example much shorter. \r\n\r\np5 has something similar, if that's a helpful argument: \r\n\r\nhttp://processing.org/reference/matchAll_.html\r\n\r\n\r\n\tvector < string > ofxRegex::getMatchedStrings (string contents, string regex );\r\n\tvector < string > ofxRegex::getMatchedStrings (string contents, string regex ){\r\n \r\n\t vector < string > results;\r\n\t RegularExpression regEx(regex);\r\n\t RegularExpression::Match match;\r\n \r\n\t while(regEx.match(contents, match) != 0) {\r\n \r\n\t // we get the sub string from the content\r\n\t // and then trim the content so that we\r\n\t // can continue to search \r\n\t string foundStr = contents.substr(match.offset, match.length);\r\n\t contents = contents.substr(match.offset + match.length);\r\n \r\n\t results.push_back(foundStr);\r\n \r\n\t }\r\n\t return results;\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1110","comments":1,"milestone":null,"number":1110,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1110","assignee":null,"title":"add a simple regex function like ofSplitString()","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-03-25T18:56:37Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":3799872,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-25T18:50:13Z","body":"code to recreate: \r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::setup(){\r\n system(\"pwd;\");\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::update(){\r\n system(\"pwd;\");\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::draw(){\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::keyPressed(int key){\r\n cout << ofToDataPath(\"temp\") << endl;\r\n}\r\n\r\nproduces: \r\n\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n../../../data/temp\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin/emptyExampleDebug.app/Contents/MacOS\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin/emptyExampleDebug.app/Contents/MacOS\r\n\r\nthis is because the code that fixes OSX paths isn't called until you call ofToDataPath(). a good fix I think would be to set ofDataPathRoot (which happens in ofToDataPath) somewhere early in ofRunApp(). Or should it happen even earlier?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1109","comments":3,"milestone":null,"number":1109,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1109","assignee":null,"title":"mac paths don't seem right until you call \"ofToDataPath()\"","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2012-03-25T18:18:28Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":3799653,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-04-09T13:06:18Z","body":"easycam behaves as expected when inited but as soon as I change it's target it begins to behave strangely.\r\nthere's this imaginary sphere that we are rotating (it's diameter is min (viewport.width, vieport.height)), when the mouse is dragged from inside to outside of it the rotation just jumps to a \"random\" rotation. \r\nas well when you have a the camera rotated more than 180º in some axis the \"trackball\" doesn't behave as expected. yet this behavior is not seen when the target hasn't been changed.\r\n\r\nDoes any one know what's going on?\r\n\r\nI just came across this but I haven't gone deeply into how easycam handles the mouse to rotate. \r\nI'll do so ASAP. If someone can give me any clues I'll really apreciate it.\r\n\r\nregards!","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1108","comments":7,"milestone":null,"number":1108,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1108","assignee":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"title":"easyCam weird behavior when target changed","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-25T00:01:54Z","state":"open","user":{"url":"https://api.github.com/users/roymacdonald","gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","login":"roymacdonald","avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":974878},"id":3795495,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-04-09T16:47:18Z","body":"It would be great if the PG could also generate projects/examples for usage with Eclipse, i.e. just the makefile related files, no CB or other project files.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1103","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1103,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1103","assignee":null,"title":"PG feature request: Generate makefile-only projects","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-03-21T21:43:34Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":3754055,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-19T16:18:43Z","body":"whenever i call ofLog beneath openmp i have to wrap it in ```#pragma omp critical (ofLog)``` otherwise i get a crash\r\ni found adding the line above \r\nhttps://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/utils/ofLog.cpp#L84\r\nworks pretty well\r\n\r\nany objections to having it in there?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1098","comments":3,"milestone":null,"number":1098,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1098","assignee":null,"title":"feature / bug - #pragma omp critical(ofLog)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-19T14:04:51Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":3710293,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-15T20:34:17Z","body":"I'm finding that `ofDirector::listDir, open` are extremely slow\r\nit seems that it's actually loading the entire dir contents into memory\r\n\r\nit's possible to then do something like\r\n```\r\nofLoadImage(myPixels, dir.getFile(i));\r\n```\r\nand you can quickly load that image from memory. which is faster than\r\n```\r\nofLoadImage(myPixels, dir.getFile(i).getAbsolutePath());\r\n```\r\n\r\nBut this doesn't seem to work consistently (even though the slow listing is consistent)\r\nand surely isn't what we want.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1075","comments":2,"milestone":null,"number":1075,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1075","assignee":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"title":"bug ofDirectory::open(string path) actually loads the entire dir into memory?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-15T07:54:55Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":3662214,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-14T16:03:06Z","body":"Hello,\r\nI needed alpha channel in short length video for a recent project.\r\nIn the forum there is some old zip file for a ofxAlphaVideoPlayer that is still working, but that's OS X & windows only as it's based on QT.\r\nI'm working on linux, and I didn't find anything for GStreamer, so I modified the existing ofGstUtils and ofGstVideoPlayer.\r\nWould you mind if I do a pull request for this?\r\nI can also provide an example with a short length video using animation codec.\r\nWhat do you think?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1070","comments":6,"milestone":null,"number":1070,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1070","assignee":null,"title":"Alpha movies in GStreamer","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-14T13:02:41Z","state":"open","user":{"url":"https://api.github.com/users/manuelgeoffray","gravatar_id":"c1ec5161b69b4a990436deafb1170d64","login":"manuelgeoffray","avatar_url":"https://secure.gravatar.com/avatar/c1ec5161b69b4a990436deafb1170d64?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":808090},"id":3647640,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-17T19:26:40Z","body":"Hey !\r\n\r\nMe again. Didn't find anywhere this infos. I'm currently testing the travis-ci.org service.\r\nAs many people are working on the project and as many many issue are raised, and fixed, I thought it could be great to add some test and thus the travis service.\r\n\r\nIt would avoid the problem met here :\r\nhttps://github.com/openframeworks/openFrameworks/commit/7ca7833ea1afb6bd5a6c54031e3fa688aa0c0ba8\r\nand the discussion here :\r\nhttps://github.com/openframeworks/openFrameworks/issues/804\r\nor there :\r\nhttps://github.com/openframeworks/openFrameworks/pull/921\r\n\r\nI read that :\r\n\r\n>feel free to make a unitTests folder at the root level of OF -\r\n> that is where all unitTests will go.\r\n\r\nBut didn't find them.\r\n\r\nThe travis service will permit to get the little badge we know well : \r\n[![Build Status](https://secure.travis-ci.org/soixantecircuits/openFrameworks.png?branch=master)](http://travis-ci.org/soixantecircuits/openFrameworks)\r\n\r\nAlso, why not adding some spec test, to ensure future development of features.\r\nI'm currently reading :\r\nhttp://www.squidoo.com/cplusplus-behaviour-driven-development-tools#module124841511\r\nhttp://sourceforge.net/apps/mediawiki/turtle/index.php?title=Turtle\r\n\r\nFor those who want some other nice reading :\r\n\r\nhttp://gamesfromwithin.com/exploring-the-c-unit-testing-framework-jungle\r\n\r\nThe travis test is here, currently it is a total fake, but I just proposed the idea of a test driven development\r\nhttp://travis-ci.org/#!/soixantecircuits/openFrameworks/builds/854259 ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1068","comments":10,"milestone":null,"number":1068,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1068","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"Continuous integration","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-13T15:49:23Z","state":"open","user":{"url":"https://api.github.com/users/gabrielstuff","gravatar_id":"390ea42c23c2c383f973abdafa24bb07","login":"gabrielstuff","avatar_url":"https://secure.gravatar.com/avatar/390ea42c23c2c383f973abdafa24bb07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":285033},"id":3631618,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-13T15:21:30Z","body":"Hi !\r\n\r\nRecently, I've been in lot of languages, from C++ to ruby, passing by the colosus of javascript and the sea of php. Dropping by various and strange framework such as the Cinder, the jQuery, the Rails, the Processing, etc ...\r\n\r\n## the situation \r\n\r\nWhat I have noticed is that a strong architecture and a really ease use of add-ons makes a framework get stronger. For instance, if we take a look at Ruby, we see that the use of gems give him a powerfull advance over his friend php. \r\n\r\n### the Rubyist\r\n\r\nThis way of thinking is getting even better with the http://gembundler.com/ [Bundler](http://gembundler.com/) friend. The gems have dependencies and a simple GemFile help to easily install all dependencies for one project.\r\n\r\n### the Cinderist\r\n\r\nFor Cinder, we get the block, as for OSX, it quiet easy and fast. Drag and drop and play/code.\r\n\r\n### the jQueryist\r\n\r\nWell, it is not frequent to have jQuery plugins depending on other jQuery plugins, but there are several way to handle dependencies on jQuery and JS.\r\n\r\n### the nodist\r\n\r\nThis lead us to http://npmjs.org/, which is really nice with dependencies.\r\nFor instance, if you tried cloud9ide, you know that you just have to make sure you get the proper package.json :\r\n\r\n```\r\n{\r\n \"name\": \"node-example\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": {\r\n \"express\": \"2.2.0\"\r\n }\r\n}\r\n```\r\n\r\nThis file ensure that everything before running the server will be installed via npm.\r\n\r\n### the ofist\r\n\r\nRight now, we just have the addons.make file, which is nice but does not do any lifting for us. We have to verify that the ofx addons has been downloaded and is installed in the right folder.\r\n\r\n- Why not creating a script that will allow to manage dependencies compilation ? \r\nI have this wonderful ofxJSONsettings, but he depends on [JSONCPP](http://jsoncpp.sourceforge.net/) and on boost, so here we will have :\r\n\r\npackage.json file in the ofxJSONsettings folder :\r\n\r\n```\r\n{\r\n \"name\": \"ofxJSONsettings\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": [{\r\n \"jsoncpp\": \"0.6.0-rc2\"\r\n \"url\":\"http://jsoncpp.svn.sourceforge.net/svnroot/jsoncpp/trunk/\"\r\n \"protocol\":\"svn\"\r\n }\r\n ]\r\n}\r\n```\r\n\r\nHum, then, we have our little bash script :\r\n\r\n`xadd -addon ofxJSONsettings`\r\n\r\nand for a project, we have to ensure that the make file run `xadd -addon ofxJSONsettings` if it does not find ofXJSONsettings.\r\n\r\nThis could lead to simplify and easify the use of plugin ! Hey, I want the new [mistubaRenderer](https://github.com/satoruhiga/ofxMitsubaRenderer) let's give a try :\r\n\r\n```\r\n{\r\n \"name\": \"ofxMitsubaRenderer\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": [{\r\n \"mitsuba\": \"0.1\"\r\n \"url\":\"https://www.mitsuba-renderer.org/hg/mitsuba-bidir\"\r\n \"protocol\":\"hg\"\r\n }\r\n ]\r\n}\r\n```\r\n\r\nWell, this would be simplify if everybody use some same pattern, and respect some convention.\r\n\r\nSo what do you guys think about that ?\r\n\r\n\r\nThank you !\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1063","comments":7,"milestone":null,"number":1063,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1063","assignee":null,"title":"Automatic installer + dependencies handler","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-13T10:44:57Z","state":"open","user":{"url":"https://api.github.com/users/gabrielstuff","gravatar_id":"390ea42c23c2c383f973abdafa24bb07","login":"gabrielstuff","avatar_url":"https://secure.gravatar.com/avatar/390ea42c23c2c383f973abdafa24bb07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":285033},"id":3627067,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-12T17:58:20Z","body":"right now there is a lot of duplicated code in the vector math classes. for example, normalize() and getNormalized() have separate implementations. if we follow the pattern of always implementing things in self-modifying methods, then providing copy-returning methods as alternatives, this will reduce the amount of code and make it harder to cause bugs or behavioral discrepancies.\r\n\r\n- implementations of an algorithm should always be self-modifying\r\n- copy-returning versions should be implemented using a differently named method, internally making a copy and calling the self-modifying version on the copy.\r\n\r\ne.g. something like (note, this isn't how it's implemented right now):\r\n\r\n\tinline ofVec2f& ofVec2f::normalize() {\r\n\t\tfloat length = (float)sqrt(x*x + y*y);\r\n\t\tif( length > 0 ) {\r\n\t\t\tx /= length;\r\n\t\t\ty /= length;\r\n\t\t}\r\n\t\treturn *this;\r\n\t}\r\n\r\n\tinline ofVec2f ofVec2f::getNormalized() const {\r\n\t\tofVec2f result = *this;\r\n\t\treturn result.normalize();\r\n\t}\r\n\r\ntaken from this post https://github.com/openframeworks/openFrameworks/pull/1061#issuecomment-4455601","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1062","comments":4,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1062,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1062","assignee":null,"title":"regularize code for math addons","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-12T16:33:06Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":3614231,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-13T13:07:11Z","body":"Just saw this is the documentation.\r\nVertexes is incorrect (wrong plural)\r\nVertices","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1055","comments":18,"milestone":null,"number":1055,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1055","assignee":null,"title":"ofVertexes?? ofCurveVertexes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-03-12T01:50:19Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":3605277,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=4 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4940'), ('content-length', '44623'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"7a7b635a35e21a9f69de7a09b9040837"'), ('date', 'Tue, 29 May 2012 19:27:12 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-03-10T17:52:58Z","body":"if you have:\r\n\r\n uniform float dog;\r\n float cat;\r\n\r\nand:\r\n\r\n shader.setUniform1f(\"dog\", ofGetElapsedTimef());\r\n shader.setUniform1f(\"cat\", ofGetElapsedTimef());\r\n\r\nthere is no currently no error printed to the console, and \"cat\" is mysteriously unchanging while \"dog\" is fine.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1052","comments":0,"milestone":null,"number":1052,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1052","assignee":null,"title":"ofShader should show an error when using an invalid name","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-03-10T17:52:58Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3596240,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-14T15:11:08Z","body":"ofxiPhoneScreenGrab saves with compression artifacts.\r\nfix for saving a lossless image in the below post,\r\nhttp://forum.openframeworks.cc/index.php/topic,4737.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1051","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1051,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1051","assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"title":"ofxiPhoneScreenGrab saves with compression artifacts.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-03-10T12:15:33Z","state":"open","user":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"id":3594731,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-14T15:09:09Z","body":"just wanted to kick off a discussion about cleaning up ofxiPhone folder structure.\r\nhave this up on the forum, http://forum.openframeworks.cc/index.php/topic,8955.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1050","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1050,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1050","assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"title":"clean up ofxiPhone folder structure.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-10T06:32:12Z","state":"open","user":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"id":3593619,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-29T14:55:24Z","body":"This an implementation of ofxiPhoneScreenGrab for Android","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1048","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1048,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1048","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"Adding Android screenshot feature, example to demonstrate it","labels":[],"closed_at":null,"created_at":"2012-03-10T05:31:45Z","state":"open","user":{"url":"https://api.github.com/users/bostonbusmap","avatar_url":"https://secure.gravatar.com/avatar/433032cca043cedb67180dc5109062da?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"433032cca043cedb67180dc5109062da","login":"bostonbusmap","id":863262},"id":3593430,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1048","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1048.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1048.diff"}},{"updated_at":"2012-03-12T15:31:12Z","body":"whenever I try to open a file using system dialog from OF utils or ofxFileDIalogOSX, the video is loaded correctly but it get stuck and doesn't play at all. see:\r\nhttp://forum.openframeworks.cc/index.php/topic,5233.0.html\r\nhttp://forum.openframeworks.cc/index.php/topic,6515.0.html\r\n\r\nquite a big issue IMHO","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1047","comments":8,"milestone":null,"number":1047,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1047","assignee":null,"title":"opening video files with system dialog in osx prevents them to play correctly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-09T18:54:28Z","state":"open","user":{"url":"https://api.github.com/users/hvfrancesco","avatar_url":"https://secure.gravatar.com/avatar/e02a8a3953de9d5d9ec1c7aa8d43eca4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e02a8a3953de9d5d9ec1c7aa8d43eca4","login":"hvfrancesco","id":614123},"id":3587808,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-20T16:11:54Z","body":"just a small one but would be great. \r\nmaybe even different icon for debug and release? ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1039","comments":12,"milestone":null,"number":1039,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1039","assignee":null,"title":"make icons for OF apps","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-06T17:56:58Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":3528378,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-06T15:32:44Z","body":"right now it is not clear from a visual perspective what is a button / trigger and what is a toggle. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1037","comments":1,"milestone":null,"number":1037,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1037","assignee":null,"title":"ofxGui, ofxButton should look visually different to toggle","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-05T18:06:03Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":3510933,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-10T19:29:53Z","body":"xml is one of the reasons this is currently an addon. \r\nthe original idea was to have something simple and minimal that could be in the core. \r\nalso something which could be built off of for larger gui addons ( hence ofParameter ) \r\n\r\nI see a couple of options going forward.\r\n\r\n1) swtich from xml to newline separated text files and move ofGui into core\r\nthis would be quite simple as ofParameter already has a name, value structure \r\n\r\n2) same as 1) but keep ofxGui as an addon - making it a bit simpler to add to a project \r\n2b) add ofParameter to core as it is more general purpose\r\n\r\n3) bring ofxXmlSettings into the core and bring ofGui into core.\r\n\r\n\r\nanyway I thought it would be good to get some discussion going about this.\r\nI'm especially interested in setting up ofParam and ofBaseGui in a way to make things modular and extendable. \r\n\r\nalso could be interesting to look at a way to represent a collection/group of ofParameters\r\nsome of this might be similar to some of the stuff @memo was doing with his plist style system. \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1036","comments":10,"milestone":null,"number":1036,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1036","assignee":null,"title":"ofxGui -> ofGui - how/should we bring into core?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-05T16:56:26Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":3509628,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-12T12:39:10Z","body":"If it finds .vert, .frag (and .geom?) files in the data/ folder, the project generator should make a new folder, in the project file, next to (or inside) src called data/ and add the files to it. (data/ so that beginners can find the files in Finder)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1034","comments":3,"milestone":null,"number":1034,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1034","assignee":null,"title":"projectGenerator ignores shader .vert and .frag files","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-03-04T11:19:04Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":3495602,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-06T15:06:00Z","body":"I talked to Arturo about this, but I want to make sure it's known. When you call ofLogSetLogLevel with a module string, that string is added to a map used to check the module's log level ... but right now that string is never removed.\r\n\r\nIf someone creates a large amount module names the map could grow arbitrarily large over time. The thought so far is that no one would make enough module names for it to be a problem.\r\n\r\nFor instance, using the [proposed ofThread rewrite](https://github.com/openframeworks/openFrameworks/pull/1031), each thread creates a new module name when it sets itself to verbose and, in the case of spawning lots of verbose worker threads, the map will grow.\r\n\r\nMy proposed solution would be to remove the module name from the map when the level for that module is set back to OF_LOG_NOTICE and/or to the current log level.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1033","comments":11,"milestone":null,"number":1033,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1033","assignee":null,"title":"ofSetLogLevel(module, level) adds to map but dosen't remove","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-04T10:54:12Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3495503,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-14T15:11:08Z","body":"this change c50648e29199a3f61eae05f6ceb350a97ab275d7 caused the problem. i'm not sure why adding explicit cases for handling loadData for ofShortPixels and ofFloatPixels would do this. to see the proof, run devApps/AdvancedImageLoading","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1029","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1029,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1029","assignee":null,"title":"display of short + float textures are broken","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-03-03T19:04:59Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3491627,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-10T06:54:25Z","body":"I've just encountered a real 'wall meets head' bug, aka 'why is my camera image black??'\r\n\r\nwell it turns out that actually, ofSaveImage doesn't save mono images\r\nit just saves out black pixels\r\n\r\ntesting on Windows, VS2010.\r\nAnybody else getting this?\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1028","comments":5,"milestone":null,"number":1028,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1028","assignee":null,"title":"ofSaveImage / ofImage::saveImage() problem with OF_IMAGE_GRAYSCALE / OF_PIXELS_MONO","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-03-03T12:23:06Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3489266,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-16T09:25:13Z","body":"The Android example is basically a copy of the existing 3dModelBuilder example with some code changes to work with OpenGL ES","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1024","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1024,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1024","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"Fixing 3DModelBuilder to work with OpenGL ES, added Android example for it","labels":[],"closed_at":null,"created_at":"2012-03-02T16:55:29Z","state":"open","user":{"url":"https://api.github.com/users/bostonbusmap","avatar_url":"https://secure.gravatar.com/avatar/433032cca043cedb67180dc5109062da?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"433032cca043cedb67180dc5109062da","login":"bostonbusmap","id":863262},"id":3479768,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1024","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1024.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1024.diff"}},{"updated_at":"2012-03-30T16:34:06Z","body":"Continuation of http://forum.openframeworks.cc/index.php/topic,9095.msg42378.html#new\r\n\r\nNOTE: Things may have changed as the projects I'm using are all created using the older creation tools.\r\nCan somebody up to date please check?\r\n\r\nCurrently XCode's default project setting is /O2 for debug projects\r\nwhilst Visual Studio's is /O0\r\n\r\n/O0 generally makes the most sense for debug mode as it allows for effective program flow and variable tracking (because with /O2, lines of code and variables are commonly optimised away).\r\n\r\nIf we are worried that this will leave default users in a default 'slower state' then perhaps we could make release the default? Then people could be aware that they are selecting debug when they want to actually do some debugging?\r\nBut this may have other issues (such as some libraries might not perform as many checks as otherwise?)\r\n\r\nit might be worth making users more aware of the 2 options anyway, and then start using them consistently","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1022","comments":12,"milestone":null,"number":1022,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1022","assignee":null,"title":"Optimisation consistency","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-02T13:25:15Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3476540,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-01T19:42:09Z","body":"currently if MSAA is enabled, COLOR_ATTACHMENT[ 0 -> nSamples]_EXT are bound for MS blitting, which could overwrite your texture color attachments without notifying you [ i.e. setSamples(4); setNumTextures(4) ]. There may be some solution where numSamples*numTextures = maxAttachments, allowing for multisampled internal textures, but at the very least we should warn/notify that samples and textures won't play so nicely together, or try to allocate samples/textures in the remaining attachments and notify on overflow.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1019","comments":0,"milestone":null,"number":1019,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1019","assignee":null,"title":"ofFbo needs consideration as far as MRT + MSAA","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-01T19:42:09Z","state":"open","user":{"url":"https://api.github.com/users/kpasko","avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","login":"kpasko","id":167271},"id":3462226,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-01T04:33:36Z","body":"there's a block in ofConstants which reads like:\r\n\r\n```c++\r\n#ifndef PI\r\n\t#define PI 3.14159265358979323846\r\n#endif\r\n\r\n#ifndef TWO_PI\r\n\t#define TWO_PI 6.28318530717958647693\r\n#endif\r\n\r\n#ifndef M_TWO_PI\r\n\t#define M_TWO_PI 6.28318530717958647693\r\n#endif\r\n\r\n#ifndef FOUR_PI\r\n\t#define FOUR_PI 12.56637061435917295385\r\n#endif\r\n\r\n#ifndef HALF_PI\r\n\t#define HALF_PI 1.57079632679489661923\r\n#endif\r\n\r\n#ifndef DEG_TO_RAD\r\n\t#define DEG_TO_RAD (PI/180.0)\r\n#endif\r\n\r\n#ifndef RAD_TO_DEG\r\n\t#define RAD_TO_DEG (180.0/PI)\r\n#endif\r\n\r\n#ifndef MIN\r\n\t#define MIN(x,y) (((x) < (y)) ? (x) : (y))\r\n#endif\r\n\r\n#ifndef MAX\r\n\t#define MAX(x,y) (((x) > (y)) ? (x) : (y))\r\n#endif\r\n\r\n#ifndef CLAMP\r\n\t#define CLAMP(val,min,max) (MAX(MIN(val,max),min))\r\n#endif\r\n\r\n#ifndef ABS\r\n\t#define ABS(x) (((x) < 0) ? -(x) : (x))\r\n#endif\r\n```\r\n\r\nthe problem is i've got this in another header file:\r\n\r\n```c++\r\n// macro-like inline functions\r\n\r\ntemplate\r\ninline T SQR(const T a) {return a*a;}\r\n\r\ntemplate\r\ninline const T &MAX(const T &a, const T &b)\r\n {return b > a ? (b) : (a);}\r\n\r\ninline float MAX(const double &a, const float &b)\r\n {return b > a ? (b) : float(a);}\r\n\r\ninline float MAX(const float &a, const double &b)\r\n {return b > a ? float(b) : (a);}\r\n\r\ntemplate\r\ninline const T &MIN(const T &a, const T &b)\r\n {return b < a ? (b) : (a);}\r\n\r\ninline float MIN(const double &a, const float &b)\r\n {return b < a ? (b) : float(a);}\r\n\r\ninline float MIN(const float &a, const double &b)\r\n {return b < a ? float(b) : (a);}\r\n\r\ntemplate\r\ninline T SIGN(const T &a, const T &b)\r\n\t{return b >= 0 ? (a >= 0 ? a : -a) : (a >= 0 ? -a : a);}\r\n\r\ninline float SIGN(const float &a, const double &b)\r\n\t{return b >= 0 ? (a >= 0 ? a : -a) : (a >= 0 ? -a : a);}\r\n\r\ninline float SIGN(const double &a, const float &b)\r\n\t{return (float)(b >= 0 ? (a >= 0 ? a : -a) : (a >= 0 ? -a : a));}\r\n```\r\n\r\nAnd ofConstants is included in almost every oF file\r\n\r\ni'd suggest moving to inline functions and presume that compiler optimisations makes these 2 options equivalent in terms of performance, but that inline wins out for compatability","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1007","comments":10,"milestone":null,"number":1007,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1007","assignee":null,"title":"bug #defines in ofConstants conflict with other libraries","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-29T15:31:18Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3438233,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-01T13:02:37Z","body":"Propose the following functions:\r\n\r\n```c++\r\nofVec2f ofRandom(const ofVec2f&);\r\nofVec3f ofRandom(const ofVec3f&);\r\nofVec2f ofRandom(const ofVec2f& range1, const ofVec2f& range2);\r\nofVec3f ofRandom(const ofVec3f& range1, const ofVec3f& range2);\r\n```\r\n\r\nalso lots of other candidates for this, e.g. `ofClamp`, `ofMap`, etc\r\nsome clever templating possible?\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1005","comments":12,"milestone":null,"number":1005,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1005","assignee":null,"title":"feature ofRandom(ofVec3f) ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-29T06:32:03Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3432042,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-18T08:47:08Z","body":"I have a simple app that plays video files. I try to route (under windows) its output using Jack and Vitual Audio Cable but none can access it. I am just using the basic functionality of ofVideoPlayer, this is the class that deals with the video playing\r\n\r\n\r\n\t#include \"oscVPlayer.h\"\r\n\t#include \"ofMain.h\"\r\n\r\n\r\n\r\n\toscVPlayer::oscVPlayer()\r\n\t{\r\n\t\t\treset();\r\n\t}\r\n\r\n\tvoid oscVPlayer::reset()\r\n\t{ //defaults to fullscreen\r\n\t\t\tw = NULL;\r\n\t\t\th = NULL;\r\n\t\t\tx = 0;\r\n\t\t\ty = 0;\r\n\t\t\tdonereported = false;\r\n\t\t\tloopflag = OF_LOOP_NONE;\r\n\t\t\t\r\n\t\t\tcol.r = 0;\r\n\t\t\tcol.g = 0;\r\n\t\t\tcol.b = 0;\r\n\t\t\tcol.a = 255;\r\n\r\n\t\t\tif (isLoaded())\r\n\t\t{\r\n\t\t\t\t\tsetFrame(0);\r\n\t\t\t\t\tsetUseTexture(1);\r\n\t\t\t\t\tsetPaused(0);\r\n\t\t\t\t\tsetLoopState(OF_LOOP_NORMAL);\r\n\t\t\t\t\tsetSpeed(1);\r\n\t\t\t\t\tsetVolume(255);\r\n\t\t\t\t\tstop();\r\n\t\t}\r\n\t}\r\n\r\n\r\n\tvoid oscVPlayer::setUpVideo(string movie)\r\n\t{\r\n\t\t\tif (movie != \"none\")\r\n\t\t\t{\r\n\t\t\t\t\tif ( loadMovie(movie) )\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\t\tprintf(\"movie loaded\\n\");\r\n\t\t\t\t\t\t\tofVideoPlayer::update();\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\t\tprintf(\"CANNOT load movie\\n\");\r\n\t\t\t\t\t}\r\n\t\t\t}\r\n\t\t\telse\r\n\t\t\t{\r\n\t\t\t\t\tprintf(\"movie parameter is none, cannot load it\\n\");\r\n\t\t\t}\r\n\t}\r\n\r\n\r\n\r\n\r\n\tvoid oscVPlayer::setLoop()\r\n\t{\r\n\t\t\tsetLoopState(loopflag); // go back to your state. otherwise play resets it to loop ON\r\n\t}\r\n\r\n\r\n\r\n\r\n\tvoid oscVPlayer::resetSize()\r\n\t{\r\n\t\t\tw = NULL;\r\n\t\t\th = NULL;\r\n\t}\r\n\r\n\r\n\tvoid oscVPlayer::draw()\r\n\t{\r\n\t\tif (isLoaded())\r\n\t\t{\r\n\t\t\t if (col.a < 255) ofEnableAlphaBlending();\r\n\t\t\t\tofSetColor(col.r,col.g,col.b, col.a);\r\n\t\t\t\tofVideoPlayer::update();\r\n\t\t\t\tif (w==NULL && h==NULL)\r\n\t\t\t\t{\r\n\t\t\t\t\t\tofVideoPlayer::draw(x, y);\r\n\t\t\t\t}\r\n\t\t\t\telse\r\n\t\t\t\t{\r\n\t\t\t\t\t\t\tofVideoPlayer::draw(x, y, w, h);\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (col.a < 255) ofDisableAlphaBlending(); \r\n\t\t}\r\n\t}\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1001","comments":2,"milestone":null,"number":1001,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1001","assignee":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"title":"OF app sound out not available from Jack","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-02-27T14:59:34Z","state":"open","user":{"url":"https://api.github.com/users/enrike","avatar_url":"https://secure.gravatar.com/avatar/cc2adbc6d91bf2288f34f60a547a82cd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"cc2adbc6d91bf2288f34f60a547a82cd","login":"enrike","id":710785},"id":3401755,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-29T14:42:36Z","body":"// scissor\r\nvoid ofBeginScissor(ofRectangle &r);\r\nvoid ofBeginScissor(ofPoint &p, float w, float h);\r\nvoid ofBeginScissor(float x, float y, float w, float h);\r\nvoid ofEndScissor();\r\n\r\n\r\nthere is a problem with ofFBO due to the flip. I do not think that there is a way around it sooo just scale -1\r\n\r\nalso: \r\nextra ; removed \r\nlibs/openFrameworks/utils/ofUtils.cpp","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/993","comments":11,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":993,"html_url":"https://github.com/openframeworks/openFrameworks/issues/993","assignee":null,"title":"Of scissors","labels":[],"closed_at":null,"created_at":"2012-02-26T21:35:55Z","state":"open","user":{"url":"https://api.github.com/users/vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","id":149997},"id":3393466,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/993","patch_url":"https://github.com/openframeworks/openFrameworks/pull/993.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/993.diff"}},{"updated_at":"2012-02-25T20:25:00Z","body":"i think this is because ofDrawBitmapString draws the quads in the wrong orientation. but i'm guessing it works in FBOs... so if we switch the order it will stop working in FBOs.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/987","comments":0,"milestone":null,"number":987,"html_url":"https://github.com/openframeworks/openFrameworks/issues/987","assignee":null,"title":"GL_CULL_FACE breaks ofDrawBitmapString()","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-02-25T20:25:00Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3387163,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-22T23:34:17Z","body":"Some logging messages don't really tell where they were triggered. Someone needs to go through them and add information as to what module triggered the message. \r\n@danomatika has already volunteered to do this some time.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/985","comments":16,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":985,"html_url":"https://github.com/openframeworks/openFrameworks/issues/985","assignee":null,"title":"Make logging messages more informative","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-02-25T19:41:58Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3386914,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-11T18:31:55Z","body":"There's a lot of logging printfs in the core addons. These should be replaced by appropriate ofLog calls.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/984","comments":5,"milestone":null,"number":984,"html_url":"https://github.com/openframeworks/openFrameworks/issues/984","assignee":null,"title":"Replace printf() occurences by ofLog() in the core addons","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-02-25T19:36:51Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3386889,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-02-27T13:35:34Z","body":"`ofVec2f` has a function called `average` which takes an array of `ofVec2f` and calculates the centroid. it is not static, rather it overwrites its own `x` and `y` with the average. \r\n\r\nthis is a little weird. `average` should be static, or at least be *returning* the average rather than assigning to self.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/976","comments":4,"milestone":null,"number":976,"html_url":"https://github.com/openframeworks/openFrameworks/issues/976","assignee":null,"title":"ofVec2f::average has unexpected/clumsy behaviour","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-25T03:45:02Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":3382990,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-02-25T02:47:26Z","body":"Dummy issue to ensure that the 0076 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/972","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/10","number":10,"title":"0076 Release","due_on":"2012-10-29T07:00:00Z","closed_issues":0,"open_issues":1,"created_at":"2012-02-25T02:46:26Z","state":"open","description":"","id":88838},"number":972,"html_url":"https://github.com/openframeworks/openFrameworks/issues/972","assignee":null,"title":"0076 Release tracking issue","labels":[],"closed_at":null,"created_at":"2012-02-25T02:47:26Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3382766,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-02-25T02:47:37Z","body":"Dummy issue to ensure that the 0075 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/971","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/9","number":9,"title":"0075 Release","due_on":"2012-09-24T07:00:00Z","closed_issues":0,"open_issues":1,"created_at":"2012-02-25T02:46:15Z","state":"open","description":"","id":88837},"number":971,"html_url":"https://github.com/openframeworks/openFrameworks/issues/971","assignee":null,"title":"0075 Release tracking issue","labels":[],"closed_at":null,"created_at":"2012-02-25T02:47:05Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3382764,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=5 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4939'), ('content-length', '39838'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"a7bfe812cbaa85fbb708d70f4d883fac"'), ('date', 'Tue, 29 May 2012 19:27:13 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-02-25T01:36:58Z","body":"Dummy issue to ensure that the 0080 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/970","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","number":8,"closed_issues":0,"title":"0080 Release","due_on":"2013-01-01T08:00:00Z","open_issues":3,"created_at":"2012-02-25T01:34:28Z","state":"open","description":"","id":88731},"number":970,"html_url":"https://github.com/openframeworks/openFrameworks/issues/970","assignee":null,"title":"0080 Release tracking issue","labels":[],"closed_at":null,"created_at":"2012-02-25T01:36:54Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3381982,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T01:36:37Z","body":"Dummy issue to ensure that the 0074 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/969","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/7","number":7,"closed_issues":0,"title":"0074 Release","due_on":"2012-08-27T07:00:00Z","open_issues":1,"created_at":"2012-02-25T00:41:17Z","state":"open","description":"","id":88728},"number":969,"html_url":"https://github.com/openframeworks/openFrameworks/issues/969","assignee":null,"title":"0074 Release tracking issue","labels":[],"closed_at":null,"created_at":"2012-02-25T01:36:37Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3381977,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-24T04:31:01Z","body":"right now if you try and scale/rotate/etc before calling ofBackgroundGradient, it will fail.\r\n\r\npeople generally call ofBackground at the top of draw() so it shouldn't be a huge issue... but it does make it a little 'fragile'.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/955","comments":0,"milestone":null,"number":955,"html_url":"https://github.com/openframeworks/openFrameworks/issues/955","assignee":null,"title":"ofBackgroundGradient needs to be billboarded","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-02-24T04:31:01Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3367910,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-23T19:12:08Z","body":"Hello, I get a weird error trying to compile the movieplayerexample under linux64 :\r\n\r\n> `.text._ZN11ofBaseVideoD2Ev' referenced in section `.text._ZN11ofBaseVideoD1Ev[non-virtual thunk to ofBaseVideo::~ofBaseVideo()]' of ../../../libs/openFrameworksCompiled/lib/linux64/libopenFrameworks.a(ofBaseTypes.o): defined in discarded section `.text._ZN11ofBaseVideoD2Ev[_ZN11ofBaseVideoD5Ev]' of ../../../libs/openFrameworksCompiled/lib/linux64/libopenFrameworks.a(ofBaseTypes.o)\r\n\r\nMy version of OF is 007, it used to work under 0062...\r\n\r\nWhat should I do ?\r\n\r\nThanks","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/933","comments":4,"milestone":null,"number":933,"html_url":"https://github.com/openframeworks/openFrameworks/issues/933","assignee":null,"title":"Problem with moviePlayerExample under linux64","labels":[],"closed_at":null,"created_at":"2012-02-23T15:46:06Z","state":"open","user":{"url":"https://api.github.com/users/agrosjea","avatar_url":"https://secure.gravatar.com/avatar/e52c167621119d58d03c586bb053a633?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e52c167621119d58d03c586bb053a633","login":"agrosjea","id":1466085},"id":3357855,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-23T05:13:24Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/931","comments":0,"milestone":null,"number":931,"html_url":"https://github.com/openframeworks/openFrameworks/issues/931","assignee":null,"title":"ofCamera is not aware of ofOrientation","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-02-23T05:13:24Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":3351646,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-23T05:12:47Z","body":"do we need the ofOrientation parameter in ofSetupPerspective?\r\n\r\nit applies the rotation but if ofSetOrientation hasn't been called before passing the same orientation the results are not the expected.\r\n\r\nto test it:\r\n\r\nofSetOrientation(OF_ORIENTATION_90_LEFT);\r\nofSetPerspective(ofGetWidth(), ofGetHeight(),OF_ORIENTATION_90_LEFT)\r\n\r\nworks as expected but calling only \r\n\r\nofSetPerspective(ofGetWidth(), ofGetHeight(),OF_ORIENTATION_90_LEFT)\r\n\r\napplies a weird rotation cause the values of ofGetWidth(), ofGetHeight() are still the default ones\r\n\r\nis there any case where it's useful to call setupPerspective with a different orientation that the window has?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/930","comments":0,"milestone":null,"number":930,"html_url":"https://github.com/openframeworks/openFrameworks/issues/930","assignee":null,"title":"ofSetupPerspective ofOrientation","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-23T05:12:47Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":3351643,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-23T04:19:48Z","body":"Currently ofGetLogLevel returns the global log level aka for the \"OF\" module. It would be nice to be able to get the log level for user modules via:\r\n\r\n ofLogLevel level = ofGetLogLevel(\"myLogModule\");\r\n\r\nIt would as simple as adding the module as a string variable with a default of \"OF\".\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/929","comments":0,"milestone":null,"number":929,"html_url":"https://github.com/openframeworks/openFrameworks/issues/929","assignee":null,"title":"ofGetLogLevel should also accept modules","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-02-23T04:19:48Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3351374,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-23T03:46:32Z","body":"Currently there is a ofBgColorPtr(), but maybe it's nice to have a ofGetBackground() that returns an ofColor object or a reference to one.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/928","comments":0,"milestone":null,"number":928,"html_url":"https://github.com/openframeworks/openFrameworks/issues/928","assignee":null,"title":"no ofGetBackground()","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-23T03:46:32Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3351170,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-22T19:12:56Z","body":"ofGetViewportWidth/Height returns 0 is called in an object destructor, while ofGetWidth/Height do not. Could the ofGetViewport size be set to the ofGetWidth/Height size instead of 0 be default?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/926","comments":0,"milestone":null,"number":926,"html_url":"https://github.com/openframeworks/openFrameworks/issues/926","assignee":null,"title":"ofGetViewportWidth/Height returns 0 at startup","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-22T19:12:56Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3341020,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-22T00:28:08Z","body":"I noticed a few things when working with ofImage:\r\n\r\n* ofImage has a type variable for the image type but this is an int, as opposed to the ofImageType enum, so it's annoying to force convert ...\r\n* the width, height, & bpp variables are public, they should be protected with getters/setters\r\n* there isn't a getBytesPerPixel, you have to get the pixel reference then call getBytesPerPixel ...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/925","comments":0,"milestone":null,"number":925,"html_url":"https://github.com/openframeworks/openFrameworks/issues/925","assignee":null,"title":"ofImage has type as int, public vars, & missing getBPP, etc","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-22T00:28:08Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3324501,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-29T14:41:17Z","body":"As requested in https://github.com/openframeworks/openFrameworks/pull/794 I've branched openframeworks:develop into my own branch and applied the fixes required to build openFrameworks for Android with MinGW on the windows platform.\r\n\r\nThe instructions on how to compile are still valid (except for the part of patching):\r\nhttp://www.multigesture.net/articles/how-to-setup-openframeworks-for-android-on-windows/\r\n\r\nNote 1: You will need to run:\r\nandroid.bat update project --target android-8 --path C:\\openFrameworks\\addons\\ofxAndroid\\ofAndroidLib\r\n\r\nThis updates the project files for ofAndroidLib project. I didn't included those because those are user specific (they contain the path to the sdk)\r\n\r\nNote 2: d3ddf8e1 \r\nI only added this commit in order to make the examples build properly. Someone still needs to fix the proper implementation.\r\n\r\nNote 3: 7a9cf0ba\r\nWhile working on NodeBeat, we found out that not all devices are using /mnt/sdcard as their external storage location. In some cases the sdcard is located somewhere else (\"Environment.getExternalStorageDirectory()\" doesnt always return the correct location). This commit fixes this problem by checking several locations as reported on multiple Stackoverflow threads. More info about this issue can be found in the commit description.\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/922","comments":13,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":922,"html_url":"https://github.com/openframeworks/openFrameworks/issues/922","assignee":null,"title":"Windows compatibility patches and External storage location fixes.","labels":[],"closed_at":null,"created_at":"2012-02-19T23:30:24Z","state":"open","user":{"url":"https://api.github.com/users/falcon4ever","avatar_url":"https://secure.gravatar.com/avatar/4a503abeaa3d803e55e99093fbf1505d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"4a503abeaa3d803e55e99093fbf1505d","login":"falcon4ever","id":480019},"id":3288053,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/922.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/922","patch_url":"https://github.com/openframeworks/openFrameworks/pull/922.patch"}},{"updated_at":"2012-02-16T09:39:46Z","body":"What about having our own transform stack , in order to:\r\n-avoid to recompute globalTransformMatrix in each ofNode\r\n-could use it when rendering with OpenGL ES 2.0 shaders , which do not support predefined matrix values as world (modelview), worldProjection , or world inverseTranspose (for normals)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/920","comments":0,"milestone":null,"number":920,"html_url":"https://github.com/openframeworks/openFrameworks/issues/920","assignee":null,"title":"Transform stack","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-16T09:39:46Z","state":"open","user":{"url":"https://api.github.com/users/AugusteBonnin","avatar_url":"https://secure.gravatar.com/avatar/cbf7aa7c655d3652170984c9aa497a4c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"cbf7aa7c655d3652170984c9aa497a4c","login":"AugusteBonnin","id":1442658},"id":3248309,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-16T09:31:24Z","body":"There is an easy-to-correct error in ofNode::transformGL:\r\nIt should call loadMatrix with globalTransformMatrix as parameter (with a void restoreGL), or pushMatrix then multMatrix with localTransformMatrix (with a restoreGL that pops the previously pushed matrix),\r\nNOT push then mult with global. The bug appears as soon as you have got more than one level of depth in your node tree. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/919","comments":0,"milestone":null,"number":919,"html_url":"https://github.com/openframeworks/openFrameworks/issues/919","assignee":null,"title":"Error in ofNode::transformGL","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-02-16T09:31:24Z","state":"open","user":{"url":"https://api.github.com/users/AugusteBonnin","avatar_url":"https://secure.gravatar.com/avatar/cbf7aa7c655d3652170984c9aa497a4c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"cbf7aa7c655d3652170984c9aa497a4c","login":"AugusteBonnin","id":1442658},"id":3248230,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-08T10:15:31Z","body":"vs2010 does not include stdint.h support:\r\n\r\nhttp://stackoverflow.com/questions/126279/c99-stdint-h-header-and-ms-visual-studio\r\n\r\nwhich causes addon bugs like this:\r\n\r\nhttps://github.com/openframeworks/openFrameworks/issues/559\r\nhttps://github.com/kylemcdonald/ofxCv/issues/28\r\n\r\neven though these bugs aren't in the core, i think OF is designed to make it easy for people to write cross-platform, cross-compiler code. so i propose that we add an explicit declaration of the missing types for vs2010.\r\n\r\nthis isn't really something i'm worried about directly since i don't use vs2010, but i know people like elliot do. and it would be cleaner to add it once to the core than to add it once for every addon that is broken.\r\n\r\nthe solution would probably look like: take dan's code from the above issue, and move it from ofxOsc into the core.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/917","comments":5,"milestone":null,"number":917,"html_url":"https://github.com/openframeworks/openFrameworks/issues/917","assignee":null,"title":"add global stdint.h support?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"}],"closed_at":null,"created_at":"2012-02-15T02:38:17Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3229504,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-12T14:55:20Z","body":"to match ofGetWidth(), ofGetHeight()\r\n\r\ni.e. for ofGetMouseX() / ofGetWidth()","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/916","comments":1,"milestone":null,"number":916,"html_url":"https://github.com/openframeworks/openFrameworks/issues/916","assignee":null,"title":"ofGetMouseX() and ofGetMouseY() should return float","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-14T05:17:47Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3214174,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-13T08:16:08Z","body":"I had downloaded the 007 version, when I run of_preRelease_v007_linux/scripts/linux/debian/install_codeblocks.sh it install codeblocks without error, but when I run preRelease_v007_linux/scripts/linux/debian/install_dependencies.sh I get this error\r\n\r\ncompiling object for ../../../openFrameworks/graphics/ofGraphics.cpp\r\nmkdir -p obj/Debug/openFrameworks/graphics\r\ng++ -g3 -Wall -fexceptions -I../../../FreeImage/include -I../../../assimp/include -I../../../assimp/include/Compiler -I../../../cairo/include -I../../../cairo/include/cairo -I../../../cairo/include/pixman-1 -I../../../cairo/include/libpng15 -I../../../fmodex/include -I../../../freetype/include -I../../../freetype/include/freetype2 -I../../../freetype/include/freetype2/freetype -I../../../freetype/include/freetype2/freetype/config -I../../../freetype/include/freetype2/freetype/internal -I../../../freetype/include/freetype2/freetype/internal/services -I../../../glew/include -I../../../glew/include/GL -I../../../kiss/include -I../../../portaudio/include -I../../../rtAudio/include -I../../../tess2/include -I../../../poco/include -I../../../glu/include -I../../../openFrameworks/ -I../../../openFrameworks/3d -I../../../openFrameworks/math -I../../../openFrameworks/types -I../../../openFrameworks/graphics -I../../../openFrameworks/utils -I../../../openFrameworks/app -I../../../openFrameworks/video -I../../../openFrameworks/events -I../../../openFrameworks/communication -I../../../openFrameworks/gl -I../../../openFrameworks/sound -pthread -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -DOF_USING_GTK -MMD -MP -MFobj/Debug/openFrameworks/graphics/ofGraphics.d -MTobj/Debug/openFrameworks/graphics/ofGraphics.d -o obj/Debug/openFrameworks/graphics/ofGraphics.o -c ../../../openFrameworks/graphics/ofGraphics.cpp\r\n../../../openFrameworks/graphics/ofGraphics.cpp:37:22: warning: GL/glut.h: No such file or directory\r\n../../../openFrameworks/graphics/ofGraphics.cpp: In function ‘void ofSphere(float)’:\r\n../../../openFrameworks/graphics/ofGraphics.cpp:889: error: ‘glutSolidSphere’ was not declared in this scope\r\n../../../openFrameworks/graphics/ofGraphics.cpp:891: error: ‘glutWireSphere’ was not declared in this scope\r\nmake: *** [obj/Debug/openFrameworks/graphics/ofGraphics.o] Error 1\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/915","comments":2,"milestone":null,"number":915,"html_url":"https://github.com/openframeworks/openFrameworks/issues/915","assignee":null,"title":"problems installing dependencies in debian 6.0.4","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2012-02-13T05:45:01Z","state":"open","user":{"url":"https://api.github.com/users/atomsfat","avatar_url":"https://secure.gravatar.com/avatar/f732e5a8b77f8e4ed8fadc2c71916236?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"f732e5a8b77f8e4ed8fadc2c71916236","login":"atomsfat","id":140008},"id":3196145,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-12T04:41:26Z","body":"We have ofSetDataPathRoot() .... it makes sense to have a Getter as well. Basically I wanted the absolute path to the root data folder.\r\n\r\nI managed to fake this by calling ofToDataPath(\".\",true) but this seems a little counter-intuitive.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/914","comments":0,"milestone":null,"number":914,"html_url":"https://github.com/openframeworks/openFrameworks/issues/914","assignee":null,"title":"Add ofGetDataPathRoot","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-12T04:41:26Z","state":"open","user":{"url":"https://api.github.com/users/pierrep","avatar_url":"https://secure.gravatar.com/avatar/be11c9de8242e7aef0446eceaa289e01?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"be11c9de8242e7aef0446eceaa289e01","login":"pierrep","id":392160},"id":3189189,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-12T14:56:56Z","body":"it would be amazing if ofBeginShape()/ofEndShape() and ofPath supported tex coords (maybe ofTexCoord() and addTexCoord()).\r\n\r\nthis would allow for drawing arbitrary subsections of an image, or for creating an ofMesh that is texture mapped by an image.\r\n\r\nprocessing handles this with extra arguments to vertex() http://processing.org/reference/texture_.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/909","comments":3,"milestone":null,"number":909,"html_url":"https://github.com/openframeworks/openFrameworks/issues/909","assignee":null,"title":"shapes with texCoords","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-02-10T01:42:42Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3166745,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-09T08:16:47Z","body":"a student just showed me how you can use the xcode templates for pocode to create a new project wherever you want on the disk. i know we used to have xcode templates for this, but i just tried them and it seems to be hilariously broken.\r\n\r\ni'm not sure if the new project creator stuff covers this idea or not, but it would be great to have a similar ability with OF somehow.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/902","comments":2,"milestone":null,"number":902,"html_url":"https://github.com/openframeworks/openFrameworks/issues/902","assignee":null,"title":"Xcode templates should be fixed or removed","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-09T04:30:13Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3152323,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-08T21:50:23Z","body":"to draw a filled ofPolyline right now, you need to use beginshape/endshape. but i think a way of adding ofPolylines to an ofPath would be really good -- even a conversion from ofPolyline to ofPath might make sense. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/901","comments":0,"milestone":null,"number":901,"html_url":"https://github.com/openframeworks/openFrameworks/issues/901","assignee":null,"title":"easier filled ofPolyline, or easy ofPolyline->ofPath conversion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-08T21:50:23Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3148441,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-09T14:46:48Z","body":"Hi.\r\n\r\nI've been trying to load stream video ( mpeg2 .ts and hls .m3u8 ) using OF on MacOS 10.7.2.\r\n\r\nBoth cases causes error -2048 in the line below: ( l:89, ofQuickTimePlayer.cpp )\r\n\r\n```c++\r\nerr = NewMovieFromDataRef(&movie, newMovieAsyncOK,nil, urlDataRef, URLDataHandlerSubType);\r\n```\r\n\r\nLoading remote .mp4 works perect. Loading same streams in QuickTime player(v10.1) works without any troubles.\r\n\r\nSo, it seems the trouble happens just when no videofile size info returned from server.\r\n\r\nIs it a bug? Or I've missed smthng?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/897","comments":4,"milestone":null,"number":897,"html_url":"https://github.com/openframeworks/openFrameworks/issues/897","assignee":null,"title":"ofQuickTimePlayer.createMovieFromURL fails on streaming video","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-02-06T11:42:08Z","state":"open","user":{"url":"https://api.github.com/users/4pcbr","avatar_url":"https://secure.gravatar.com/avatar/52e8e29748826594f27b5c6c20a353e0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"52e8e29748826594f27b5c6c20a353e0","login":"4pcbr","id":247109},"id":3106705,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-05T17:11:59Z","body":"This concerns libraries included in addons in source form. According to [this issue](https://github.com/chrisoshea/ofxMidi/issues/8) reported by @danomatika, the makefile can only compile libraries' source code if they are in an addon's `/src` folder. This is in contradiction with @obviousjim's guide to addons' folder structure at http://ofxaddons.com/howto.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/896","comments":6,"milestone":null,"number":896,"html_url":"https://github.com/openframeworks/openFrameworks/issues/896","assignee":null,"title":"Makefile and ofxaddons.com guide don't agree regarding file structure","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"closed_at":null,"created_at":"2012-02-05T15:20:42Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3099567,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-10T02:47:13Z","body":"it needs to handle all these things:\r\n\r\n- meshes vs point clouds\r\n- different types of meshes (depending on the triangles)\r\n- indexed vs non-indexed geometry\r\n- colors, normals, texcoords\r\n- ascii vs binary\r\n- loading from externally created/defined ply files","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/880","comments":1,"milestone":null,"number":880,"html_url":"https://github.com/openframeworks/openFrameworks/issues/880","assignee":null,"title":"test ofMesh::load/save rigorously","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-01-25T16:55:09Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":2967700,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-03T19:40:34Z","body":"If you set the proper switches on the iphone sound stream you can get it to play over whatever is playing on the users ipod without muting it. There are a bunch of switches for this behavior detailed in kAudioSessionProperty_Mode.\r\n\r\nThese would need to be set before initing the audio session. The other issue is that there are like 15-20 flags you can set. Maybe just a slightly higher level setting on the stream so that these behaivors could be set in the users testapp.mm","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/878","comments":0,"milestone":null,"number":878,"html_url":"https://github.com/openframeworks/openFrameworks/issues/878","assignee":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"title":"add a switch to the iphone soundstream to support ambient","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-01-24T16:41:17Z","state":"open","user":{"url":"https://api.github.com/users/jonbro","avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"893ec14dc008e3774afe5841115920d6","login":"jonbro","id":1597},"id":2952993,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-15T18:33:39Z","body":"change pan range to -1..1, right now is 0..1","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/875","comments":2,"milestone":null,"number":875,"html_url":"https://github.com/openframeworks/openFrameworks/issues/875","assignee":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"title":"ofOpenALSoundPlayer pan -1..1","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-01-21T00:01:45Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":2918619,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=6 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4938'), ('content-length', '49322'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"93bd237d518e2c23c29e5e7b340262a8"'), ('date', 'Tue, 29 May 2012 19:27:14 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-03-10T05:09:49Z","body":" testImg.saveImage(ofxiPhoneGetDocumentsDirectory() + \"test.png\");\r\ncrashes the App and results in this error:\r\n\r\nProgram received signal: \"SIGARBT\".\r\n\r\nerror thrown in this line:\r\n\r\n FreeImage_Save(fif, bmp, fileName.c_str());","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/872","comments":1,"milestone":null,"number":872,"html_url":"https://github.com/openframeworks/openFrameworks/issues/872","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"saveImage crashes in iOS Simulator","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-01-17T21:51:17Z","state":"open","user":{"url":"https://api.github.com/users/khlrqa","gravatar_id":"dfa7e4582a04e784d50c750ae51d894f","login":"khlrqa","avatar_url":"https://secure.gravatar.com/avatar/dfa7e4582a04e784d50c750ae51d894f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":53301},"id":2875276,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-01-07T15:38:14Z","body":"Hi -\r\n\r\nwhen it comes down to multicast communication over udp, it's is important that the correct ip address of the local interface is set. Most computers nowadays have several interfaces (wired and wireless). Whereas ofxUDPManager::BindMcast uses INADDR_ANY as the local address, this might be wrong if you are not using the default interface. In my case, I connect the computers in a local wlan. The wlan device is not the primary device on my machine.\r\n\r\nTherefore I rewrote the BindMcast function adding a third argument pLocal, the local Ip address of the network interface.\r\n\r\n```c++\r\nbool ofxUDPManager::BindMcast(char *pMcast, unsigned short usPort, char *pLocal)\r\n```\r\nchanging the line: \r\n\r\n```c++\r\nmreq.imr_interface.s_addr = pLocal == \"\" ? INADDR_ANY: inet_addr(pLocal);\r\n```\r\n\r\nwhich makes a different header file as well:\r\n\r\n```c++\r\nbool BindMcast(char *pMcast, unsigned short usPort, char *pLocal = \"\");\r\n```\r\n\r\nAs you can see, the pLocal Adress is optional, if omitted, INADDR_ANY is used (backwards compatibility).\r\n\r\n\r\nNOTE:\r\n\r\nI've added the function:\r\n\r\n```c++\r\nchar* GetInterfaceAddr(const char* interface); //returns the IP of a specified interface\r\n```\r\n\r\nto the ofxUDPManager as well. This function returns the IP adress of an interface (e.g. en1 on a mac for the airport device). This is useful in dhcp networks, where your own address always changes. The function itself looks like:\r\n\r\n```c++\r\n//--------------------------------------------------------------------------------\r\nchar* ofxUDPManager::GetInterfaceAddr(const char* interface)\r\n{\r\n\tint fd;\r\n\tstruct ifreq ifr;\r\n\tfd = socket(AF_INET, SOCK_DGRAM, 0);\r\n\tifr.ifr_addr.sa_family = AF_INET;\r\n\tstrncpy(ifr.ifr_name, interface, IFNAMSIZ-1);\r\n\tioctl(fd, SIOCGIFADDR, &ifr);\r\n\tclose(fd);\r\n\treturn(inet_ntoa(((struct sockaddr_in *)&ifr.ifr_addr)->sin_addr));\r\n}\r\n```\r\n\r\nPlease not that for this function, additional headers have to be included in ofxUDPManager.h:\r\n\r\n```c++\r\n#include \r\n```\r\n\r\nIf you consider the changes useful, theres a copy of the two files downloadable here:\r\nhttp://dl.dropbox.com/u/394122/ofxUDPManager_uh_07012012.zip\r\n\r\nregards,\r\nUrs Hofer","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/866","comments":0,"milestone":null,"number":866,"html_url":"https://github.com/openframeworks/openFrameworks/issues/866","assignee":null,"title":"Multicast & UDP: Local IP required when dealing with multiple network interfaces","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-01-07T15:38:14Z","state":"open","user":{"url":"https://api.github.com/users/urshofer","gravatar_id":"0424af1c917883090f0edddf55a8f21b","login":"urshofer","avatar_url":"https://secure.gravatar.com/avatar/0424af1c917883090f0edddf55a8f21b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":116976},"id":2756440,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-03T19:40:34Z","body":"I've posted here\r\nhttp://forum.openframeworks.cc/index.php/topic,8467.new.html\r\n\r\nAt the moment when you do sample.unloadSound() on iOS the app crashes with\r\n\r\n[Switching to thread 13059]\r\n[Switching to thread 13059]\r\nProgram received signal: “EXC_BAD_ACCESS”.\r\nwarning: Unable to read symbols for /Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.2.1 (8C148)/Symbols/Developer/usr/lib/libXcodeDebuggerSupport.dylib (file not found).\r\n\r\n\r\nThis has been tested on the soundPlayerExample.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/863","comments":1,"milestone":null,"number":863,"html_url":"https://github.com/openframeworks/openFrameworks/issues/863","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"unloadSound on iOS crashes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-01-03T12:48:09Z","state":"open","user":{"url":"https://api.github.com/users/chrisoshea","gravatar_id":"62d775b0fa28bcde2d9d29405d059be3","login":"chrisoshea","avatar_url":"https://secure.gravatar.com/avatar/62d775b0fa28bcde2d9d29405d059be3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":104786},"id":2710048,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-03T19:38:16Z","body":"ofxsynth doesn't wont to compile because this line:\r\nsource->audioOut( working, numFrames, numChannels, tickCount ) in ofxSoundUnit.cpp is wrong.\r\nthe canddates are:\r\n\r\nvirtual void audioOut( float * output, int bufferSize, int nChannels, int deviceID, long unsigned long tickCount )\r\nvirtual void audioOut( float * output, int bufferSize, int nChannels)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/861","comments":10,"milestone":null,"number":861,"html_url":"https://github.com/openframeworks/openFrameworks/issues/861","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"ofxSynth semantic issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-01-02T11:14:47Z","state":"open","user":{"url":"https://api.github.com/users/viniciolindo","gravatar_id":"7aa1a7f9bf0b838c0d99886c3682ac5d","login":"viniciolindo","avatar_url":"https://secure.gravatar.com/avatar/7aa1a7f9bf0b838c0d99886c3682ac5d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1298679},"id":2700549,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-03T19:40:34Z","body":"ofPixels has getPixels(), but OF has no equivalent getSamples() for sound.\r\n\r\nright now the best solution seems to be using libsndfile with OF http://forum.openframeworks.cc/index.php/topic,3502.0.html\r\n\r\nbut i would love to see the audio architecture for OF mirror the visual architecture better. this means ofSoundPlayer acts like ofVideoPlayer, and we need to add an ofSound object that mirrors ofPixels. ofSound should always store samples in memory, while ofSoundPlayer can stream audio from disk like ofVideoPlayer.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/856","comments":1,"milestone":null,"number":856,"html_url":"https://github.com/openframeworks/openFrameworks/issues/856","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"allow access to individual sound samples","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2011-12-30T02:33:19Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2685556,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-29T04:43:24Z","body":"Today I came across this strange bug.\r\nAny OF app that needed to use the quicktime video grabber crashed at startup when the this was launched from xcode (eg. using build and run) yet it worked correctly when I opened the compiled app by doubleclicking it.\r\n\r\nThe error thrown was a EXCBADACCESS.\r\nthe function that threw this was ACWma1DecoderEntry\r\n\r\nJust some googling and I found that it had to do with Flip4Mac quicktime component.\r\nI uninstalled it and problem gone.\r\n\r\nThe strange thing is that I've had installed Flip4Mac since long ago, yet I updated iTunes a few days ago, that might have done this problem to arise.\r\n\r\nI don't know if this is actually an OF bug from its Quicktime implementation or what ever but it was really annoying getting across with it. Hope this helps others.\r\n\r\nCheers!","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/855","comments":0,"milestone":null,"number":855,"html_url":"https://github.com/openframeworks/openFrameworks/issues/855","assignee":null,"title":"video Grabber crashes with Flip4Mac","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-12-29T04:43:24Z","state":"open","user":{"url":"https://api.github.com/users/roymacdonald","gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","login":"roymacdonald","avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":974878},"id":2677212,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-23T14:13:39Z","body":"ofNode::resetTransform only resets orientation and position.\r\n\r\nI think setScale(1,1,1); needs to be called too in ofNode::resetTransform \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/851","comments":0,"milestone":null,"number":851,"html_url":"https://github.com/openframeworks/openFrameworks/issues/851","assignee":null,"title":"ofNode::resetTransform does not reset scale","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-12-23T14:13:39Z","state":"open","user":{"url":"https://api.github.com/users/companje","gravatar_id":"30a7e135fe77636519d74d129c60e156","login":"companje","avatar_url":"https://secure.gravatar.com/avatar/30a7e135fe77636519d74d129c60e156?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":156066},"id":2647508,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-22T14:31:37Z","body":"if I add an external lib to my addon, I should provide headers for all platforms to be cross-platfomr like OF but the Makefile doesn't have any switch to ignore certain files which are not needed on linux.\r\n\r\nthe problem is that the OF Makefile compiles everythin under libs/mylib/include\r\n\r\nsee here for more: http://forum.openframeworks.cc/index.php?topic=6486.new;topicseen#new","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/849","comments":0,"milestone":null,"number":849,"html_url":"https://github.com/openframeworks/openFrameworks/issues/849","assignee":null,"title":"skip files in an addon with Makefile","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-12-22T14:31:37Z","state":"open","user":{"url":"https://api.github.com/users/benben","gravatar_id":"614a4e493d7c353296519bba720e77c5","login":"benben","avatar_url":"https://secure.gravatar.com/avatar/614a4e493d7c353296519bba720e77c5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":124513},"id":2637694,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-19T22:35:27Z","body":"But it does!\r\n\r\nSomehow it's casting from float to ofPoint, maybe using the ofVec3f( float _x=0.f, float _y=0.f, float _z=0.f ) constructor.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/846","comments":10,"milestone":null,"number":846,"html_url":"https://github.com/openframeworks/openFrameworks/issues/846","assignee":null,"title":"ofCircle(float, float) should not work","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-12-14T00:42:31Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2546302,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-10T21:25:49Z","body":"Please add \"-Wreturn-type\" to the XCode project. I've noticed that it's a common mistake to add a return type but nothing is returned. Adding this option will at least show an error. I think Visual Studio shows an error already by default. You can add it like this in the project settings: http://img805.imageshack.us/img805/8745/screenshot20111210at102.png \r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/843","comments":0,"milestone":null,"number":843,"html_url":"https://github.com/openframeworks/openFrameworks/issues/843","assignee":null,"title":"Add return-type warning for XCode project files ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-12-10T21:25:49Z","state":"open","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":358809},"id":2512838,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-31T19:36:40Z","body":"Playing a movie crashes on exit on linux. Fedora 16 32-bit, latest git.\r\n\r\noutput:\r\n./moviePlayerExample\r\ndeleting video player\r\nterminate called after throwing an instance of 'Poco::SystemException'\r\n what(): System exception\r\nAborted (core dumped)\r\n\r\nbacktrace:\r\n#0 0x00110416 in __kernel_vsyscall ()\r\n#1 0x4623998f in raise () from /lib/libc.so.6\r\n#2 0x4623b2d5 in abort () from /lib/libc.so.6\r\n#3 0x46a9b74d in __gnu_cxx::__verbose_terminate_handler() ()\r\n from /usr/lib/libstdc++.so.6\r\n#4 0x46a994c4 in ?? () from /usr/lib/libstdc++.so.6\r\n#5 0x46a99500 in std::terminate() () from /usr/lib/libstdc++.so.6\r\n#6 0x46a9964f in __cxa_throw () from /usr/lib/libstdc++.so.6\r\n#7 0x08098bef in Poco::MutexImpl::lockImpl (this=0x814eb48)\r\n at /usr/include/Poco/Mutex_POSIX.h:82\r\n#8 0x08098d07 in Poco::FastMutex::lock (this=0x814eb48)\r\n at /usr/include/Poco/Mutex.h:257\r\n#9 0x0809907d in Poco::ScopedLock::ScopedLock (this=\r\n 0xbfffeabc, mutex=...) at /usr/include/Poco/ScopedLock.h:59\r\n#10 0x0809a340 in Poco::AbstractEvent, Poco::p_less > >, Poco::AbstractDelegate, Poco::FastMutex>::operator-=\r\n (this=0x814eb10, aDelegate=...) at /usr/include/Poco/AbstractEvent.h:195\r\n#11 0x080d40c5 in ofRemoveListener, ofEventArgs, ofGstUtils> (event=..., listener=0x82698e0, listenerMethod=\r\n (void (ofGstUtils::*)(ofGstUtils * const, ofEventArgs &)) 0x80d27b4 ) at ../../../openFrameworks/events/ofEventUtils.h:87\r\n#12 0x080d25be in ofGstUtils::close (this=0x82698e0)\r\nat ../../../openFrameworks/video/ofGstUtils.cpp:353\r\n#13 0x080d175e in ofGstUtils::~ofGstUtils (this=0x82698e0, \r\n __in_chrg=)\r\n at ../../../openFrameworks/video/ofGstUtils.cpp:85\r\n#14 0x080d32c4 in ofGstVideoUtils::~ofGstVideoUtils (this=0x82698d8, \r\n __in_chrg=)\r\n at ../../../openFrameworks/video/ofGstUtils.cpp:536\r\n#15 0x080d06ff in ofGstVideoPlayer::~ofGstVideoPlayer (this=0x82698b8, \r\n __in_chrg=, __vtt_parm=)\r\n at ../../../openFrameworks/video/ofGstVideoPlayer.cpp:19\r\n#16 0x080d07d9 in ofGstVideoPlayer::~ofGstVideoPlayer (this=0x82698b8, \r\n __in_chrg=, __vtt_parm=)\r\n at ../../../openFrameworks/video/ofGstVideoPlayer.cpp:21\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/840","comments":3,"milestone":null,"number":840,"html_url":"https://github.com/openframeworks/openFrameworks/issues/840","assignee":null,"title":"ofGstVideoPlayer crash on exit","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2011-12-08T11:53:55Z","state":"open","user":{"url":"https://api.github.com/users/gaborpapp","gravatar_id":"9cb0f8a67c238d2aa91d9a7957b9ef4b","login":"gaborpapp","avatar_url":"https://secure.gravatar.com/avatar/9cb0f8a67c238d2aa91d9a7957b9ef4b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":203532},"id":2486705,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-12T12:30:53Z","body":"right now the only way to change the type of pixels is to go through ofImage and set image type there.\r\n\r\nseems like this should be moved into ofPixels.\r\n\r\nthoughts?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/838","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":838,"html_url":"https://github.com/openframeworks/openFrameworks/issues/838","assignee":{"url":"https://api.github.com/users/obviousjim","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","login":"obviousjim","avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":321434},"title":"ofPixels has no setImageType","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-12-07T16:30:59Z","state":"open","user":{"url":"https://api.github.com/users/obviousjim","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","login":"obviousjim","avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":321434},"id":2476561,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-05T21:44:08Z","body":"I made a small example which uses the Wikipedia xml api to make queries which are then parsed by an ofXmlSettings object. The problem is Wikipedia complains there is no User-Agent string and dosen't return any data, while threatening to block by IP.\r\n\r\nThe fix was as simple as adding this to ofURLFileLoader.cpp line 144:\r\n
    \r\n\t\tHTTPRequest req(HTTPRequest::HTTP_GET, path, HTTPMessage::HTTP_1_1);\r\n        \treq.add(\"User-Agent\", \"Mozilla/5.0 (iPad; U; CPU OS 3_2_1 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Mobile/7B405\");\r\n
    \r\n\r\nIt uses the iOS safari user agent string. I think the best fix is to expose the HTTPRequest and HTTPResponse Poco objects so that, like in the ofxHttpUtils, you could add manually the string/value to the request before sending it. I don't think it should be set ti a default within the class. Also, it would be awesome to be able to add data into and pull data out of the requests. This is a great wrapper, especially the threading, I'd just like to have the full req/response control ... perhaps provide a method to add Poco::HttpRequests and recieve Poco::HttpResponses which could be set as references inside the ofxHttpRequest/ofxHttpResponse objects?\r\n\r\nOn another note, ofURLFileLoader seems like a rather specific name for a regular HTTP action. What's wrong with ofHttpSession etc since I've found it useful for more then just","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/837","comments":0,"milestone":null,"number":837,"html_url":"https://github.com/openframeworks/openFrameworks/issues/837","assignee":null,"title":"ofURLFileLoader dosen't set HTTP User-Agent string and there is no way to set it","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-12-05T21:44:08Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":2455011,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-04T00:08:35Z","body":"Dummy issue to ensure that the 0073 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/836","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","closed_issues":0,"number":6,"title":"0073 Release","due_on":"2012-07-30T07:00:00Z","open_issues":5,"created_at":"2011-12-03T15:37:49Z","state":"open","description":"","id":62090},"number":836,"html_url":"https://github.com/openframeworks/openFrameworks/issues/836","assignee":null,"title":"0073 Release tracking issue","labels":[],"closed_at":null,"created_at":"2011-12-04T00:08:35Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":2439965,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T09:03:22Z","body":"Not sure if is an issue or im doing wrong.\r\n\r\nIm trying to implement dragEvent() in an external class in windoes 7. I'm getting neither an error nor a response nor result. While debugging dragEvent is not called at all. The same code works perfectly on osx. \r\n\r\nhere's some:\r\n\r\ndummy.h\r\n\r\n\t#include \"ofMain.h\"\r\n\r\n\tclass dummy\r\n\t{\r\n\t\tpublic:\r\n\t\t\tdummy();\r\n\t\t\t~dummy();\r\n\t\t\t\t\t\r\n\t\t\tvoid config();\r\n\t\t\tvoid dragEvent(ofDragInfo &info);\r\n\t\t\t\r\n\t\tprivate:\r\n\t\tprotected:\r\n\t\t\r\n\t};\r\n\r\ndummy.cpp\r\n\r\n\t#include \"dummy.h\"\r\n\r\n\tdummy::dummy(){}\r\n\r\n\tdummy::~dummy(){}\r\n\r\n\tvoid dummy::config(){\r\n\t\tofAddListener(ofEvents.fileDragEvent, this, &dummy::dragEvent);\r\n\t}\r\n\r\n\tvoid dummy::dragEvent(ofDragInfo &info){\r\n\t\tfor( int i = 0; i < info.files.size() ; i++){\r\n\t\t\tcout << \"path: \" << info.files[i] << endl;\r\n\t\t}\r\n\t}\r\n\r\n\r\ntesApp.h\r\n\r\n\t#include \"ofMain.h\"\r\n\t#include \"dummy.h\"\r\n\r\n\r\n\tclass testApp : public ofBaseApp{\r\n\r\n\t\tpublic:\r\n\t\t\tvoid setup();\r\n\t\t\tvoid update();\r\n\t\t\tvoid draw();\r\n\r\n\t\t\tvoid keyPressed (int key);\r\n\t\t\tvoid keyReleased(int key);\r\n\t\t\tvoid mouseMoved(int x, int y );\r\n\t\t\tvoid mouseDragged(int x, int y, int button);\r\n\t\t\tvoid mousePressed(int x, int y, int button);\r\n\t\t\tvoid mouseReleased(int x, int y, int button);\r\n\t\t\tvoid windowResized(int w, int h);\r\n\t\t\tvoid dragEvent(ofDragInfo dragInfo);\r\n\t\t\tvoid gotMessage(ofMessage msg);\r\n\t\t\t\r\n\t\t\tdummy d;\r\n\r\ntestApp.cpp\r\n\r\n\t#include \"testApp.h\"\r\n\r\n\tvoid testApp::setup(){\r\n\t\td.config();\r\n\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/831","comments":0,"milestone":null,"number":831,"html_url":"https://github.com/openframeworks/openFrameworks/issues/831","assignee":null,"title":"dragEvent() in new class not working in win7","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-12-03T08:51:42Z","state":"open","user":{"url":"https://api.github.com/users/decolector","gravatar_id":"7165a50ea8df968de57ffb5a27ba6ebc","login":"decolector","avatar_url":"https://secure.gravatar.com/avatar/7165a50ea8df968de57ffb5a27ba6ebc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":390056},"id":2436532,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-02T16:28:49Z","body":"Dummy issue to ensure that the 0072 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/829","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":829,"html_url":"https://github.com/openframeworks/openFrameworks/issues/829","assignee":null,"title":"0072 Release tracking issue","labels":[],"closed_at":null,"created_at":"2011-12-02T16:28:49Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":2429871,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-11-29T17:54:48Z","body":"Loading Futura at font size 10 and simplify=0 yields oversimplified chars in a pdf render. I'm not sure if there's a way to fix this if the fonts are small.\r\n\r\nA workaround is to load the font at a larger size, say 40, then scale down by 0.25 when drawing. \r\n\r\nThe font below is a zoom of the pdf export using font size 10. The font above is Futura at font size 144 by comparison.\r\n\r\n![oversimplified fonts](http://farm8.staticflickr.com/7161/6423768819_9129b6d608_o.jpg)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/825","comments":2,"milestone":null,"number":825,"html_url":"https://github.com/openframeworks/openFrameworks/issues/825","assignee":null,"title":"small font sizes yield oversimplified glyph shapes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-11-29T08:26:16Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":2380571,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-19T07:01:47Z","body":"If I use loadScreenData with anti-Aliasing turned on in the program's startup like this:\r\n\r\nofAppiPhoneWindow * iOSWindow = new ofAppiPhoneWindow();\r\niOSWindow->enableAntiAliasing(4);\r\n\r\nthen the texture will load in nothing but solid black. If I bypass this anti-aliasing, it works fine. I also cannot properly populate a texture using loadScreenData in a landscape orientation. Changing to Portrait orientation in the update loop, and then back to landscape after the grab fixes it.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/822","comments":5,"milestone":null,"number":822,"html_url":"https://github.com/openframeworks/openFrameworks/issues/822","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"iOS - ofTexture.loadScreenData issue when antiAliasing is on","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-11-28T06:48:27Z","state":"open","user":{"url":"https://api.github.com/users/momo-the-monster","gravatar_id":"31f8a3ef87e828b70d2a441c8dae97d8","login":"momo-the-monster","avatar_url":"https://secure.gravatar.com/avatar/31f8a3ef87e828b70d2a441c8dae97d8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":737888},"id":2364541,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-11-28T18:48:58Z","body":"It'd be nice if ofRectangle used a ofVec2f or ofVec3f internally so you could do the something like:\r\n\r\n
    \r\nofRectangle myRect;\r\nofVec2f vel(-1, 2);\r\nmyRect.pos += vel;\r\n
    \r\n\r\nNow I'm not saying drop the x and y member vars, but link them to the ofVec internals thorugh either a union or reference. A reference would be easy through the constructor:\r\n\r\n
    \r\nclass ofRectangle {\r\n\r\n   public:\r\n\r\n     float &x, &y;\r\n     ofVec2f pos;\r\n     ....\r\n\r\n\r\nofRectangle::ofRectangle() : x(pos.x), y(pos.y) {\r\n\r\n...\r\n
    \r\n\r\nThis way we get the best of both worlds without broken code ...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/821","comments":3,"milestone":null,"number":821,"html_url":"https://github.com/openframeworks/openFrameworks/issues/821","assignee":null,"title":"suggest: ofRectangle internal ofVec","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-11-26T20:19:31Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":2356801,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-01T18:13:35Z","body":"i'm experiencing troubles in windows when i use a system file-opening dialog from openframeworks. after using it Data root path seems to get pointing to a wrong location, causing troubles e.g. true type fonts not loading.\r\nif I use the open-file dialog once again to open a file in root folder of the application, then the data path is reset correctly.\r\nusing ofSetDataPathRoot() doens't seem to fix the issue, or maybe I'm not using it correctly.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/819","comments":2,"milestone":null,"number":819,"html_url":"https://github.com/openframeworks/openFrameworks/issues/819","assignee":null,"title":"datapath messed in windows after using file open dialog","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-11-22T10:50:13Z","state":"open","user":{"url":"https://api.github.com/users/hvfrancesco","gravatar_id":"e02a8a3953de9d5d9ec1c7aa8d43eca4","login":"hvfrancesco","avatar_url":"https://secure.gravatar.com/avatar/e02a8a3953de9d5d9ec1c7aa8d43eca4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":614123},"id":2316595,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-02T15:19:58Z","body":"Had a talk with Theo about this. I think that it would be really nice if it were possible to #define/ pre-process macro if you want to exclude modules like ofVideoPlayer/ofSoundplayer in your app. \r\n\r\nThis would be super helpful for a couple of reasons.\r\n\r\nplugins that are not able to use the modules can exclude them without hacking the core.\r\nif you want to reduce the final size of you app and its not using something like ofVideoPlayer you dont need to add it.\r\n\r\nwhat do you think...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/818","comments":1,"milestone":null,"number":818,"html_url":"https://github.com/openframeworks/openFrameworks/issues/818","assignee":null,"title":"#defines for modules ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-11-21T16:45:51Z","state":"open","user":{"url":"https://api.github.com/users/vanderlin","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":149997},"id":2306518,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-11-17T15:17:10Z","body":"Hello, \r\nRunning on MacOS 10.7 with XCode 4.1 I could not compile any of the examples in devApps, except for _DeployExamples. \r\nThe first error always encountered is: \r\n\r\n../../../libs/openFrameworks/utils/ofConstants.h:101:22: error: GL/glew.h: No such file or directory\r\n\r\nI tried both changing the paths of the include part in the code and dragging the GL folder that contains glew.h separately in the project, but neither worked. \r\n\r\nHelp please... \r\n\r\nThanks, \r\n\r\nIannis Zannos","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/815","comments":3,"milestone":null,"number":815,"html_url":"https://github.com/openframeworks/openFrameworks/issues/815","assignee":null,"title":"Examples in devApps folder do not compile. Missing glew.h","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-11-17T13:45:47Z","state":"open","user":{"url":"https://api.github.com/users/iani","gravatar_id":"8200f2533f23c9daaff63c4dba6f4819","login":"iani","avatar_url":"https://secure.gravatar.com/avatar/8200f2533f23c9daaff63c4dba6f4819?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":181956},"id":2268829,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T16:30:18Z","body":"Hello, \r\nIt took me more than 4 hours to get openFrameworks to compile deployExamples on MacOS X 10.7.2 with XCode 4.1, because of having to figure out two things; \r\n\r\n1. Need to change SDK for the deployExamples project definitions to 10.6\r\n2. Need to choose deployExamples in the build menu on the toolbar of the project window. \r\n\r\nPerhaps this info should be added to the readme.txt file of the present master branch in order to spare other people the hassle? \r\n\r\nI suggest the following addition: \r\n=====\r\nTo deploy openFrameworks examples from the files cloned via the present github repository, you should build and run the project: \r\napps/devApps/_DeployExamples/deployExamples.xcodeproj\r\n\r\nTo successfully compile in Lion (MacOS X 10.7) in XCode you should select in the project file list of XCode both the target deployExamples from the top level of the file hierarchy and the project openFrameworksLib.xcodeproj from inside the openFrameworks folder, then find the project definition, and change the SDK to MacOS X 10.6. You should do the same for the targets of those two items. \r\n\r\nImportant: Before clicking the Build and Go, or the Run button, make sure that you choose the deployExamples project in the menu on the toolbar of the project window. (Otherwise if you leave openFrameworks as selected project and push Run or Build and Run, no application will be created or run). \r\n\r\n\r\n=====\r\nHopefully this helps. \r\nCheers, \r\nIannis Zannos","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/814","comments":2,"milestone":null,"number":814,"html_url":"https://github.com/openframeworks/openFrameworks/issues/814","assignee":null,"title":"Suggest adding some info about Lion to readme.txt","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-11-17T11:48:32Z","state":"open","user":{"url":"https://api.github.com/users/iani","gravatar_id":"8200f2533f23c9daaff63c4dba6f4819","login":"iani","avatar_url":"https://secure.gravatar.com/avatar/8200f2533f23c9daaff63c4dba6f4819?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":181956},"id":2267854,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-11-16T04:46:48Z","body":"I'm trying this simple ofFbo example on OF 007, the system is Ubuntu Lucid, with an Intel 945 GPU.\r\n\r\n]//--------------------------------------------------------------\r\nvoid testApp::setup(){\r\n fbo.allocate(500, 500, GL_RGBA);\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::update(){\r\n\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::draw(){\r\n\r\n fbo.begin();\r\n ofClear(255, 255, 255, 255);\r\n ofSetColor(255, 0, 0);\r\n ofCircle(mouseX, mouseY, 100);\r\n fbo.end();\r\n\r\n ofSetColor(255);\r\n fbo.draw(0, 0);\r\n}\r\n\r\nI got a segfault in i915 dri, and any test using ofFbo leads to same results.\r\n\r\n\r\n#0 0x1bd3c36 _mesa_FramebufferRenderbufferEXT() (/usr/lib/dri/i915_dri.so:??)\r\n#1 0x80cc56a ofFbo::createAndAttachRenderbuffer(this=0x85b28e8, internalFormat=34041, attachmentPoint=33306) (../../../openFrameworks/gl/ofFbo.cpp:489)\r\n#2 0x80cc352 ofFbo::allocate(this=0x85b28e8, _settings=...) (../../../openFrameworks/gl/ofFbo.cpp:388)\r\n#3 0x80cc269 ofFbo::allocate(this=0x85b28e8, width=500, height=500, internalformat=6408, numSamples=0) (../../../openFrameworks/gl/ofFbo.cpp:363)\r\n#4 0x80562ec testApp::setup(this=0x85b28d8) (src/testApp.cpp:5)\r\n#5 0x8059ca6 ofNotifySetup() (../../../openFrameworks/events/ofEvents.cpp:73)\r\n#6 0x8056a23 ofAppGlutWindow::runAppViaInfiniteLoop(this=0xbffff2f8, appPtr=0x85b28d8) (../../../openFrameworks/app/ofAppGlutWindow.cpp:317)\r\n#7 0x80584cc ofRunApp(OFSA=0x85b28d8) (../../../openFrameworks/app/ofAppRunner.cpp:82)\r\n#8 0x8055bfc main() (src/main.cpp:14)\r\n\r\nany idea about what I should try or where the problem could be? has anyone experienced similar problems?\r\n\r\nthanks in advance to all","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/811","comments":1,"milestone":null,"number":811,"html_url":"https://github.com/openframeworks/openFrameworks/issues/811","assignee":null,"title":"ofFBO causes segfault on Linux Ubuntu Lucid with i945 GPU","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-11-13T20:49:26Z","state":"open","user":{"url":"https://api.github.com/users/hvfrancesco","gravatar_id":"e02a8a3953de9d5d9ec1c7aa8d43eca4","login":"hvfrancesco","avatar_url":"https://secure.gravatar.com/avatar/e02a8a3953de9d5d9ec1c7aa8d43eca4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":614123},"id":2223158,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-09T18:51:38Z","body":"Julapy and I were discussing how to do this on the forum http://forum.openframeworks.cc/index.php?topic=7852 and I think adding a flag to allocate for mipmaps to ofTexture and ofFbo would come in handy for some people.\r\n\r\n```c\r\nvoid ofTexture::allocate(int w, int h, int internalGlDataType, bool bUseARBExtention, bool generateMipmaps = false) \r\n{\r\n if( generateMipmaps )\r\n {\r\n glTexParameterf( texData.textureTarget, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_NEAREST );\r\n glTexParameterf( texData.textureTarget, GL_TEXTURE_MAG_FILTER, GL_LINEAR );\r\n glTexParameterf( texData.textureTarget, GL_GENERATE_MIPMAP, GL_TRUE );\r\n }\r\n```\r\n\r\nand in ofFbo\r\n\r\n```c\r\nstruct Settings {\r\n bool generateMipMaps; // or int\r\n}\r\n```\r\n\r\nI'd be happy to do this & submit a pull request too.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/810","comments":2,"milestone":null,"number":810,"html_url":"https://github.com/openframeworks/openFrameworks/issues/810","assignee":null,"title":"Add flag for mipmapping in ofTexture/ofFbo","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-11-11T07:34:53Z","state":"open","user":{"url":"https://api.github.com/users/joshuajnoble","gravatar_id":"10960ba0f305803a1cdc7cd6188d643b","login":"joshuajnoble","avatar_url":"https://secure.gravatar.com/avatar/10960ba0f305803a1cdc7cd6188d643b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":237423},"id":2206980,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=7 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4937'), ('content-length', '49276'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"362300e7c4c0fc8f170b2c345084dfad"'), ('date', 'Tue, 29 May 2012 19:27:16 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-12-03T23:58:48Z","body":"right now it's inside ofMath.h","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/800","comments":3,"milestone":null,"number":800,"html_url":"https://github.com/openframeworks/openFrameworks/issues/800","assignee":null,"title":"ofInsidePoly should be a static method of ofPolyline","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-30T04:16:14Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2089523,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-05T21:31:07Z","body":"ofRect very commonly has a little chunk missing from one corner.\r\n\r\nthere is also a discrepancy between the filled and outline rectangles. it's not clear whether the outline rect should be within the bounds of the filled rect, or enclosing the filled rect, and in practice it can be a little of both.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/798","comments":2,"milestone":null,"number":798,"html_url":"https://github.com/openframeworks/openFrameworks/issues/798","assignee":null,"title":"ofRect isn't quite rectangular","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-10-29T06:38:43Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2086039,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-29T02:37:28Z","body":"we're working on some ideas regarding procedural animation and posing:\r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,7714.new.html#new\r\n\r\nwhich should be more powerful than playing back manual animations.\r\n\r\nintegrating it into the core would be ideal, but we're still trying to understand how it works.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/797","comments":0,"milestone":null,"number":797,"html_url":"https://github.com/openframeworks/openFrameworks/issues/797","assignee":null,"title":"procedural posing of bones in ofxAssimpModelLoader","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-29T02:37:28Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2085543,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T03:48:47Z","body":"this fails to display any text:\r\n\r\n\tofBackground(0);\r\n\tofSetColor(255, 254);\r\n\tofDrawBitmapString(\"this text is not displayed\", 10, 20);\r\n\r\nthis is because line 448 of ofBitmapFont.h reads:\r\n\r\n\tglAlphaFunc(GL_EQUAL, 1.0f);\r\n\r\nwhich should be changed to:\r\n\r\n\tglAlphaFunc(GL_GREATER, 0);","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/795","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":795,"html_url":"https://github.com/openframeworks/openFrameworks/issues/795","assignee":null,"title":"ofDrawBitmapString does not work with alpha","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-27T09:50:07Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2066090,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-25T23:39:09Z","body":"\r\nThis should be user adjustable / on / off. it's sort of a drag to be using easy cam and trigger double clicks are you are interacting with a gui, etc.... \r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/793","comments":1,"milestone":null,"number":793,"html_url":"https://github.com/openframeworks/openFrameworks/issues/793","assignee":null,"title":"easyCam -- ability to disable doubleClick reset","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-25T23:36:40Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":2051692,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T23:53:12Z","body":"when drawing certain shapes i get crashes, debugger claims a tessellator issue pointing to \r\n\"if (!tessTesselate(cacheTess, polyWindingMode, TESS_POLYGONS, 3, 3, 0)){\" in \"performTessellation\" function in file ofTessellator.cpp ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/789","comments":1,"milestone":null,"number":789,"html_url":"https://github.com/openframeworks/openFrameworks/issues/789","assignee":null,"title":"crashes with tessellator","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-10-21T14:49:12Z","state":"open","user":{"url":"https://api.github.com/users/ruim","gravatar_id":"18875575931764c674b5fc64ae8b7274","login":"ruim","avatar_url":"https://secure.gravatar.com/avatar/18875575931764c674b5fc64ae8b7274?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480525},"id":2016194,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-19T22:39:37Z","body":"would be useful as well. Perhaps an ofxMeshUtils would be in order for upcoming versions...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/787","comments":0,"milestone":null,"number":787,"html_url":"https://github.com/openframeworks/openFrameworks/issues/787","assignee":null,"title":"half edge mesh structure extension of ofMesh","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-19T22:39:37Z","state":"open","user":{"url":"https://api.github.com/users/kpasko","gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","login":"kpasko","avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":167271},"id":1999520,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-11-04T21:59:22Z","body":"would be quite useful","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/786","comments":1,"milestone":null,"number":786,"html_url":"https://github.com/openframeworks/openFrameworks/issues/786","assignee":null,"title":"axis aligned bounding box tree for ofMesh","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-19T22:38:35Z","state":"open","user":{"url":"https://api.github.com/users/kpasko","gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","login":"kpasko","avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":167271},"id":1999513,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-27T17:58:58Z","body":"I am loading in boujou camera data (translation and euler rotation), and I get really fine results when I do: \r\n\r\nglTranslatef(tx,ty,tz);\r\nglRotatef(rx, 1,0,0);\r\nglRotatef(ry, 0,1,0);\r\nglRotatef(rz, 0,0,1);\r\n\r\nbut when I create an ofCamera, and do: \r\n\r\nsetPosition(ofPoint(tx, ty, tz));\r\nsetOrientation(ofPoint(rx, ry, rz));\r\n\r\nI get strange results. I am wondering about ofNodes \"setOrientation\" and if it's really right in that the order is switched:\r\n\r\nsetOrientation(ofQuaternion(eulerAngles.y, ofVec3f(0, 1, 0), eulerAngles.x, ofVec3f(1, 0, 0), eulerAngles.z, ofVec3f(0, 0, 1)));\r\n\r\nalso, maybe I am mis interpreting what \"set orientation\" does. But I can't seem to get similar results with ofCam, even if I do, for example, \r\n\r\ncam.setPosition( tx,ty,tz);\r\ncam.rotate( rx, 1,0,0);\r\ncam.rotate( ry, 0,1,0);\r\ncam.rotate( rz, 0,0,1);\r\n\r\nI still don't get the same results as when I do it via opengl. This seems like a bug maybe with how ofNode handles rotation?\r\n\r\n(note , I am calling resetTranform() on the camera, so it's not an accumulation of rotations.... it's just that I can't seem to find a way to get ofCam to rotate in the same way as opengl commands). \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/785","comments":2,"milestone":null,"number":785,"html_url":"https://github.com/openframeworks/openFrameworks/issues/785","assignee":null,"title":"ofCamera setOrientation gives odd results","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-10-19T11:16:42Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":1992818,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-09T11:46:35Z","body":"It seems to be happening pretty far in, if you put debug statements in touchesMoved in EAGL view, you will see that y is set to the x value of the touch.\r\n\r\nThis does not occur in debug mode, or in the simulator, and it has to be done with xcode4. I am running the newest ios5 beta as well.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/778","comments":2,"milestone":null,"number":778,"html_url":"https://github.com/openframeworks/openFrameworks/issues/778","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"running an iphone retina app in release mode causes touch.x == touch.y","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-10-18T11:26:26Z","state":"open","user":{"url":"https://api.github.com/users/jonbro","gravatar_id":"893ec14dc008e3774afe5841115920d6","login":"jonbro","avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1597},"id":1938472,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-16T18:30:08Z","body":"\r\nat the moment, the ofCamera draw calls ofNode, which does't really give you a clear indication of which way the camera is looking. even that is weird, because a camera looks on -z, and the node draw draws a line on positive z. \r\n\r\nI suggest we add something that draws a bit of a frustum (ie, fov, etc) and gives you a feeling about orientation. \r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/774","comments":0,"milestone":null,"number":774,"html_url":"https://github.com/openframeworks/openFrameworks/issues/774","assignee":null,"title":"ofCamera draw() should be more indicative of where the camera is facing. ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-16T18:30:08Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":1922704,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-12T15:09:29Z","body":"Currently we have:\r\n\tvirtual void draw(float x,float y)=0;\r\n\tvirtual void draw(float x,float y,float w, float h)=0;\r\n\r\n\tvirtual float getHeight()=0;\r\n\tvirtual float getWidth()=0;\r\n\r\nSince we're insisting that the user define a getWidth and getHeight, can I ask why we don't set the default of draw(x,y) to be\r\n virtual void draw(float x,float y) {draw(x, y, getWidth(), getHeight()) };\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/772","comments":0,"milestone":null,"number":772,"html_url":"https://github.com/openframeworks/openFrameworks/issues/772","assignee":null,"title":"ofBaseDraws draw(x, y) default","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-10-12T15:08:55Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":1888302,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T15:11:08Z","body":"Greetings,\r\n\r\nI downloaded OF v.007 on my laptop running Vista SP2. I compiled and ran some of the example apps like imageLoader example using VS2010. \r\n\r\nTextures seem to be broken. Images appear as white slabs.\r\n\r\nI tracked it down and found that disabling ArbTex, with ofDisableArbTex(), will get the textures working again. \r\n\r\nUsing ArbTex worked fine in OF v0.62 on the same machine.\r\n\r\nLaptop:\r\nHP Pavilion dv600 Notebook PC\r\nManufacturer: Hewlett-Packard\r\nOperating System: Windows Vista Home Premium, Service Pack 2 (6.0.6002)\r\nPhysical Memory:\t 2037 MB\r\nProcessor: Intel Core2 Duo PU T5250 @ 1.5 GHz, 1.5 GHz\r\n\r\nCompiler:\r\nMicrosoft Visual Studio 2010\r\nInstalled Version: Professional\r\nMicrosoft Visual C++ 2010\r\n\r\nGraphics:\r\nGraphics: Intel Graphics Media Accelerator Driver for Mobile\r\nGraphics: Driver Version: 7.14.10.1244\r\nDirectX Version:\t10.0\r\nOpenGL Version 1.5\r\n\r\nHere's a full report of OpenGL info from GLview:\r\n\r\n\r\nRenderer: Intel 965/963 Graphics Media Accelerator\r\nVendor: Intel\r\nMemory: 448 MB\r\nVersion: 1.5.0 - Build 7.14.10.1244\r\nShading language version: N/A\r\n\r\n\r\nMax texture size: 2048 x 2048\r\nMax texture coordinates: 8\r\nMax vertex texture image units: 0\r\nMax texture image units: 16\r\nMax geometry texture units: 0\r\nMax anisotropic filtering value: 2\r\nMax number of light sources: 16\r\nMax viewport size: 2048 x 2048\r\nMax uniform vertex components: 0\r\nMax uniform fragment components: 0\r\nMax geometry uniform components: 0\r\nMax varying floats: 0\r\nMax samples: 0\r\nMax draw buffers: 0\r\n\r\n\r\nExtensions: 56\r\n\r\nGL_3DFX_texture_compression_FXT1\r\nGL_ARB_depth_texture\r\nGL_ARB_fragment_program\r\nGL_ARB_multitexture\r\nGL_ARB_occlusion_query\r\nGL_ARB_point_parameters\r\nGL_ARB_shadow\r\nGL_ARB_texture_border_clamp\r\nGL_ARB_texture_compression\r\nGL_ARB_texture_cube_map\r\nGL_ARB_texture_env_add\r\nGL_ARB_texture_env_combine\r\nGL_ARB_texture_env_crossbar\r\nGL_ARB_texture_env_dot3\r\nGL_ARB_transpose_matrix\r\nGL_ARB_vertex_buffer_object\r\nGL_ARB_vertex_program\r\nGL_ARB_window_pos\r\nGL_EXT_abgr\r\nGL_EXT_bgra\r\nGL_EXT_blend_color\r\nGL_EXT_blend_func_separate\r\nGL_EXT_blend_minmax\r\nGL_EXT_blend_subtract\r\nGL_EXT_clip_volume_hint\r\nGL_EXT_compiled_vertex_array\r\nGL_EXT_draw_range_elements\r\nGL_EXT_fog_coord\r\nGL_EXT_multi_draw_arrays\r\nGL_EXT_packed_pixels\r\nGL_EXT_rescale_normal\r\nGL_EXT_secondary_color\r\nGL_EXT_separate_specular_color\r\nGL_EXT_shadow_funcs\r\nGL_EXT_stencil_two_side\r\nGL_EXT_stencil_wrap\r\nGL_EXT_texture3D\r\nGL_EXT_texture_compression_s3tc\r\nGL_EXT_texture_env_add\r\nGL_EXT_texture_env_combine\r\nGL_EXT_texture_filter_anisotropic\r\nGL_EXT_texture_lod_bias\r\nGL_IBM_texture_mirrored_repeat\r\nGL_NV_blend_square\r\nGL_NV_texgen_reflection\r\nGL_SGIS_generate_mipmap\r\nGL_SGIS_texture_edge_clamp\r\nGL_SGIS_texture_lod\r\nGL_WIN_swap_hint\r\nWGL_ARB_buffer_region\r\nWGL_ARB_extensions_string\r\nWGL_ARB_make_current_read\r\nWGL_ARB_pbuffer\r\nWGL_ARB_pixel_format\r\nWGL_EXT_extensions_string\r\nWGL_EXT_swap_control\r\n\r\nCore features\r\nv1.1 (100 % - 7/7)\r\nv1.2 (100 % - 8/8)\r\nv1.3 (100 % - 9/9)\r\nv1.4 (100 % - 15/15)\r\nv1.5 (100 % - 3/3)\r\nv2.0 (10 % - 1/10)\r\nv2.1 (0 % - 0/3)\r\nv3.0 (0 % - 0/23)\r\nv3.1 (0 % - 0/8)\r\nv3.2 (0 % - 0/10)\r\nv3.3 (0 % - 0/10)\r\nv4.0 (0 % - 0/14)\r\nv4.1 (0 % - 0/7)\r\nv4.2 (0 % - 0/12)\r\n\r\nOpenGL driver version check (Current: 1.5.0 - Build 7.14.10.1244, Latest known: ):\r\nLatest version of display drivers found\r\nAccording the database, you are running the latest display drivers for your video card.\r\n\r\nNo ICD registry entry\r\nThe current OpenGL driver doesn't expose the SOFTWARE/Microsoft/Windows (NT)/CurrentVersion/OpenGLDrivers registry entry. Unable to detect the driver version, driver revision name and filename.\r\n\r\nCompiled vertex array support\r\nThis feature improves OpenGL performance by using video memory to cache transformed vertices.\r\n\r\nMultitexture support\r\nThis feature accelerates complex rendering such as lightmaps or environment mapping.\r\n\r\nSecondary color support\r\nThis feature provides an alternate method of coloring specular highlights on polygons.\r\n\r\nS3TC compression support\r\nThis feature improves texture mapping performance in some applications by using lossy compression.\r\n\r\nTexture edge clamp support\r\nThis feature improves texturing quality by adding clamping control to edge texel filtering.\r\n\r\nVertex program support\r\nThis feature enables a wide variety of effects via flexible vertex programming (equivalent to DX8 Vertex Shader.)\r\n\r\nFragment program support\r\nThis feature enables a wide variety of effects via per pixel programming (equivalent to DX9 Pixel Shader.)\r\n\r\nTexture anisotropic filtering support\r\nThis feature improves the quality of texture mapping on oblique surfaces.\r\n\r\nOcclusion test support\r\nThis feature provides hardware accelerated culling for objects.\r\n\r\nNo OpenGL Shading Language support\r\nThis may break compatibility for applications using per pixel shading.\r\n\r\nNo Frame buffer object support\r\nThis may break compatibility for applications using render to texture functions.\r\n\r\nDisabling ArbTex will work for me, but I thought others might have the same problem with 007.\r\n\r\n- Rob","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/771","comments":3,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":771,"html_url":"https://github.com/openframeworks/openFrameworks/issues/771","assignee":null,"title":"Textures Didn't Work in 007 on my Laptop, Had to Disable ArbTex","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2011-10-11T13:02:28Z","state":"open","user":{"url":"https://api.github.com/users/robgonsalves","gravatar_id":"7c2e18ac17a0b907dbac36aaa6a9ec0f","login":"robgonsalves","avatar_url":"https://secure.gravatar.com/avatar/7c2e18ac17a0b907dbac36aaa6a9ec0f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1119357},"id":1874373,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-24T15:27:29Z","body":"When integrating openFrameworks into existing build systems, it would make things easier if this common include convention was followed.\r\n\r\ni.e. to include openFrameworks headers in my own build, because all the includes look like:\r\n\r\n#include \"ofMesh.h\"\r\n#include \"ofAppGlutWindow.h\"\r\n#include \"ofSerial.h\"\r\n\r\nI have to add all these paths to my include paths:\r\n\r\n\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/app\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/3d\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/communication\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/gl\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/graphics\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/utils\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/types\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/math\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/events\r\n\r\n\r\n\r\nIt is common to instead structure files like (in the case of openFrameworks):\r\n\r\noF/include/oF\r\noF/include/oF/app\r\noF/include/oF/3d\r\noF/include/oF/communication\r\noF/include/oF/gl\r\noF/include/oF/graphics\r\n...etc...\r\n\r\nand just write:\r\n\r\n#include \r\n#include \r\n\r\netc.\r\n\r\nI'm not sure if there is an argument to leave it like it is because it's easier for oF's demographic? But I would say teaching the some_lib/include/some_lib/ convention would help people use more C++.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/767","comments":2,"milestone":null,"number":767,"html_url":"https://github.com/openframeworks/openFrameworks/issues/767","assignee":null,"title":"#include instead of #include ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-10-09T03:58:30Z","state":"open","user":{"url":"https://api.github.com/users/gimlids","gravatar_id":"cc4cace34c61103f0624002a692820f7","login":"gimlids","avatar_url":"https://secure.gravatar.com/avatar/cc4cace34c61103f0624002a692820f7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":186277},"id":1854874,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-12T13:12:02Z","body":"\r\nat the moment, ofNode has a draw function that has awkwardly hard coded sizes: \r\n\r\nvirtual void customDraw() {\r\n\t\tofBox(10);\r\n\t\tofDrawAxis(20);\r\n\t}\r\n\r\nI'd like a draw(size) option. obviously I can extend ofNode and create my own functions, but if I just draw a node, I might want to adjust the size internally, as the \"10\" and \"20\" might not make any sense based on where I am drawing, for example here: \r\n\r\nhttp://imgur.com/idWPp\r\n\r\nlooks quite weird, but at 1/10th the size would look ok. \r\n\r\nas most other OF objects have draw(size) options, I think ofNodeShould have this too. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/766","comments":4,"milestone":null,"number":766,"html_url":"https://github.com/openframeworks/openFrameworks/issues/766","assignee":null,"title":"ofNode should have a draw(float size) option","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-08T09:38:46Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":1851779,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T23:51:04Z","body":"edit: originally this issue was about adding glu functions. now i realize any remaining ones need to be removed. but it's still relevant to have an ofScreenToWorld and ofWorldToScreen. \r\n\r\nthis would be really awesome. there is already some code in ofDrawBitmapString that's using gluProject, it would be good to clean it up.\r\n\r\nthe main issue is that glu is not on iOS, so we'd need to find/write our own implementation.\r\n\r\nhere's a first pass:\r\n\r\n\tGLdouble modelviewMatrix[16], projectionMatrix[16];\r\n\tGLint viewport[4];\r\n\tvoid updateProjectionState() {\r\n\t\tglGetDoublev(GL_MODELVIEW_MATRIX, modelviewMatrix);\r\n\t\tglGetDoublev(GL_PROJECTION_MATRIX, projectionMatrix);\r\n\t\tglGetIntegerv(GL_VIEWPORT, viewport);\r\n\t}\r\n\r\n\tofVec3f ofWorldToScreen(ofVec3f world) {\r\n\t\tupdateProjectionState();\r\n\t\tGLdouble x, y, z;\r\n\t\tgluProject(world.x, world.y, world.z, modelviewMatrix, projectionMatrix, viewport, &x, &y, &z);\r\n\t\tofVec3f screen(x, y, z);\r\n\t\tscreen.y = ofGetHeight() - screen.y;\r\n\t\treturn screen;\r\n\t}\r\n\r\n\tofVec3f ofScreenToWorld(ofVec3f screen) {\r\n\t\tupdateProjectionState();\r\n\t\tGLdouble x, y, z;\r\n\t\tscreen.y = ofGetHeight() - screen.y;\r\n\t\tgluUnProject(screen.x, screen.y, screen.z, modelviewMatrix, projectionMatrix, viewport, &x, &y, &z);\r\n\t\tofVec3f world(x, y, z);\r\n\t\treturn world;\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/765","comments":4,"milestone":null,"number":765,"html_url":"https://github.com/openframeworks/openFrameworks/issues/765","assignee":null,"title":"remove gluProject and gluUnProject, add screenToWorld, worldToScreen","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-07T09:46:06Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1841802,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T06:02:37Z","body":"I made an app using the preRelease version 007, I have a gui view with a bunch of buttons and sliders this view is 1/3 of the screen size and sits at the bottom, it is an Universal app that allows any orientation on the iPad and supports Portrait only for the iPhone / iPod Touch, here is my problem I need to allow touches to pass through the gui view for this I use **[ofxiPhoneGetGLView() addSubview:guiViewController.view];** the problem this method is that the gui view does not call the **willAnimateRotationToInterfaceOrientation()** at launch, and I get the following message in the console\r\n_**Action connections from <UIView: 0x5b88d0; frame = (20 0; 280 320); autoresize = LM+RM+H; layer = <CALayer: 0x5b7d30>> are not supported.**_\r\n\r\n if I use **[ofxiPhoneGetUIWindow() addSubview:guiViewController.view];** the **willAnimateRotationToInterfaceOrientation()** method works at launch as expected and the gui view adjust itself to the correct position and size\r\n\r\nAny help will be much appreciated","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/764","comments":1,"milestone":null,"number":764,"html_url":"https://github.com/openframeworks/openFrameworks/issues/764","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"Autoresize problem in iOS","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-10-05T20:35:04Z","state":"open","user":{"url":"https://api.github.com/users/nardove","gravatar_id":"8022cb5f529975afbc64cc9312008d8c","login":"nardove","avatar_url":"https://secure.gravatar.com/avatar/8022cb5f529975afbc64cc9312008d8c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":277690},"id":1827792,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-28T01:00:34Z","body":"ofxXmlXettings uses TinyXML which gives you lots of useful error info like what line the error is on as well as what it has trouble reading. This is super awesome and useful to people like me who always mistype xml here and there.\r\n\r\nCurrently ofxXmlSettings::loadFile only returns a bool and you're left to figure out if it's a path issue, bad xml formatting, etc. At the least, we should be able to grab an error string.\r\n\r\nHere's how to do it:\r\n
    \r\nstd::string Xml::getErrorString(const TiXmlDocument* xmlDoc)\r\n{\r\n    if(xmlDoc == NULL)\r\n        return \"\";\r\n\r\n    std::stringstream error;\r\n    error << \"line \" <<  xmlDoc->ErrorRow() << \", \" << (std::string) xmlDoc->ErrorDesc();\r\n    return error.str();\r\n}\r\n
    ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/760","comments":1,"milestone":null,"number":760,"html_url":"https://github.com/openframeworks/openFrameworks/issues/760","assignee":null,"title":"ofxXmlSettings does not print any useful error messages","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-09-28T00:53:09Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":1758237,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T03:48:47Z","body":"This would be the best thing ever. \r\n\r\nstring ipAddr = ofxXmlSettings::readValueFromFile(\"data.xml\", \"ip\", \"127.0.0.1\"); \r\n\r\nofxXmlSettings::saveValueToFile(\"data.xml\", \"ip\", ipAddr); ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/758","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":758,"html_url":"https://github.com/openframeworks/openFrameworks/issues/758","assignee":null,"title":"non ofxXmlSettings object read and write value","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-09-26T11:54:06Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":1738864,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-25T13:22:59Z","body":"in my opinion, it would make sense for ofPixels::allocate to initialize the new memory to 0. even for large images, i don't think this is such an expensive operation.\r\n\r\ni discovered that it is not initialized to 0 when i had a really weird bug -- some code that gave me different results depending on whether i loaded another image before allocating or not. i was expecting OF to act like opencv, which also sets new memory to 0. this would be in line with ofVec*, ofColor, and a few other things, which are all allocated to 0.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/757","comments":0,"milestone":null,"number":757,"html_url":"https://github.com/openframeworks/openFrameworks/issues/757","assignee":null,"title":"ofPixels::allocate should init new memory","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-09-25T13:22:59Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1733504,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-22T08:20:27Z","body":"void ofFbo::end() {\r\n\tunbind();\r\n\tif(ofGetGLRenderer()){\r\n\t\tofGetGLRenderer()->setCurrentFBO(NULL);\r\n\t}\r\n\tofPopView();\r\n}\r\n\r\nthis will go wrong if nested fbo as following\r\n\r\nfbo1.begin();\r\n...\r\n fbo2.begin();\r\n ...\r\n fbo2.end();\r\n...\r\nfbo1.end();\r\n\r\nso probably the current fbo must not be set NULL\r\n\r\nerror show's in\r\nvoid ofGLRenderer::viewport(float x, float y, float width, float height, bool invertY) {\r\n\tif(width == 0) width = ofGetWindowWidth();\r\n\tif(height == 0) height = ofGetWindowHeight();\r\n\r\n\tif (invertY){\r\n\t\tif(currentFbo){\r\n\t\t\ty = currentFbo->getHeight() - (y + height);\r\n\t\t}else{\r\n\t\t\ty = ofGetWindowHeight() - (y + height);\r\n\t\t}\r\n\t}\r\n\tglViewport(x, y, width, height);\t\r\n}\r\nthe 'y' will computing wrong when current height is wrong\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/754","comments":0,"milestone":null,"number":754,"html_url":"https://github.com/openframeworks/openFrameworks/issues/754","assignee":null,"title":"nested fbo causing currentFBO lost","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-09-22T08:20:27Z","state":"open","user":{"url":"https://api.github.com/users/liquidzym","gravatar_id":"166640c513e589c86d2de49c52258eb4","login":"liquidzym","avatar_url":"https://secure.gravatar.com/avatar/166640c513e589c86d2de49c52258eb4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":51957},"id":1708332,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:38:03Z","body":"I found an issue with readToPixels() on iOS that works as expected when compiled for OSX. \r\n\r\nInitialize an FBO:\r\n\r\n   ofFbo::Settings settings;\r\n    settings.width = 1024;\r\n    settings.height = 1024;\r\n    settings.internalformat = GL_RGB;\r\n    settings.numSamples = 0;\r\n    settings.useDepth = false;\r\n    settings.useStencil = false;\r\n    screenFBO.allocate(settings);\r\n\r\nthen draw into the FBO and attempt to retrieve the pixels:\r\n\r\n ofPixels pixels; \r\n screenFBO.readToPixels(pixels); \r\n\r\nThis gives me the ofPixels I'm expecting in OSX, in iOS the pixels aren't populated. I can draw the FBO and see it on screen, I just can't get the pixels out of the texture in iOS.\r\n\r\nThis seems to be related to this portion of readToPixels() from ofFbo.cpp:\r\n\r\n bind(); \r\n int format,type; \r\n ofGetGlFormatAndType(settings.internalformat,format,type); \r\n glReadPixels(0,0,settings.width, settings.height, format, GL_UNSIGNED_BYTE, pixels.getPixels()); \r\n unbind(); \r\n\r\nHas anyone experienced this issue – any fixes?\r\n\r\nThanks,\r\nSteve","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/753","comments":1,"milestone":null,"number":753,"html_url":"https://github.com/openframeworks/openFrameworks/issues/753","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"ofFbo readToPixels() in iOS","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-09-21T20:50:33Z","state":"open","user":{"url":"https://api.github.com/users/stephen-baker","gravatar_id":"96e9ae469240e57fc3ebeed6769c7016","login":"stephen-baker","avatar_url":"https://secure.gravatar.com/avatar/96e9ae469240e57fc3ebeed6769c7016?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1047836},"id":1704855,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-21T10:37:20Z","body":"I'm having a problem with creating an image out of ofFbo pixels with some image and fbo sizes\r\n\r\n```c++\r\nvoid testApp::setup(){\r\n\r\n ofSetLogLevel(OF_LOG_VERBOSE);\r\n\tofSetVerticalSync(false);\r\n ofBackground(34, 34, 34);\r\n\tofEnableAlphaBlending();\r\n\r\n ofSetWindowShape(1024, ofGetScreenHeight()-70);\r\n ofSetFrameRate(60);\r\n\r\n frame.loadImage(\"lay.png\");\r\n \r\n imageHeight = 1172;\r\n imageWidth = 1182;\r\n\r\n mergeFbo.allocate(imageWidth, imageHeight, GL_RGB);\r\n\r\n final.setImageType(OF_IMAGE_COLOR);\r\n\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::draw(){\r\n\r\n ofEnableAlphaBlending();\r\n\r\n mergeFbo.begin();\r\n\r\n ofClear(0, 0, 0, 1);\r\n\r\n frame.draw(0, 0);\r\n\r\n mergeFbo.end();\r\n\r\n\r\n mergeFbo.draw(200, 100, 100, 200);\r\n \r\n \r\n mergeFbo.readToPixels(pixels);\r\n final.setFromPixels(pixels);\r\n\r\n final.draw(0, 0);\r\n\r\n}\r\n```","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/752","comments":1,"milestone":null,"number":752,"html_url":"https://github.com/openframeworks/openFrameworks/issues/752","assignee":null,"title":"ofFbo (problems with certain image dimensions)","labels":[],"closed_at":null,"created_at":"2011-09-20T21:16:24Z","state":"open","user":{"url":"https://api.github.com/users/ammalgamma","gravatar_id":"96b69749f518cf6a2964b999bf29ee8e","login":"ammalgamma","avatar_url":"https://secure.gravatar.com/avatar/96b69749f518cf6a2964b999bf29ee8e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":517000},"id":1691874,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-19T09:04:12Z","body":"feature request for a more generic ofJoin() function that accepts vectors of all kinds of objects (float, int, ofVec2f, etc) rather than just string. anything that implements operator<<\r\n\r\nhere's an example using stl:\r\n\r\n\t#include \r\n\ttemplate \r\n\tstring ofJoin(vector& elements, string delimiter) {\r\n\t\tstringstream result;\r\n\t\tcopy(elements.begin(), elements.end(), ostream_iterator(result, delimiter.c_str()));\r\n\t\treturn result.str();\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/748","comments":3,"milestone":null,"number":748,"html_url":"https://github.com/openframeworks/openFrameworks/issues/748","assignee":null,"title":"more generic ofJoin","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-09-17T07:26:18Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1668066,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-21T17:22:14Z","body":"\r\nI'm looking into creating some new primitives for OF [1] and the polygon winding has me a bit confused.\r\n\r\nIf you take for instance \"graphicsExample\" an you add:\r\n\r\n```glEnable( GL_CULL_FACE );```\r\n\r\nSomewhere you will no longer see much drawn to screen.\r\n\r\nGL_CCW is the default FrontFace for OpenGL, but OF seems to be the opposite.\r\nhttp://www.khronos.org/opengles/sdk/docs/man/xhtml/glFrontFace.xml\r\n\r\nWhich is coolio of course, as long as we are consistent.\r\n\r\nOur options are either to throw a ```glFrontFace( GL_CW );``` in there somewhere OR re-write all the drawing to be consistent with OpenGL default, not sure what is the best in the long run.\r\n\r\nWhat say you all?\r\n\r\n/A\r\n\r\n\r\n[1] https://github.com/andreasmuller/openFrameworks/blob/develop-opengles2/libs/openFrameworks/3d/of3dPrimitives.h","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/745","comments":2,"milestone":null,"number":745,"html_url":"https://github.com/openframeworks/openFrameworks/issues/745","assignee":null,"title":"Polygon winding","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-09-14T13:50:48Z","state":"open","user":{"url":"https://api.github.com/users/andreasmuller","gravatar_id":"210831a04d36f1aa26413ecbdbd4b07c","login":"andreasmuller","avatar_url":"https://secure.gravatar.com/avatar/210831a04d36f1aa26413ecbdbd4b07c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":791114},"id":1643672,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=8 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4936'), ('content-length', '42586'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"1f6749765d79f3319834dfda4c27cd5e"'), ('date', 'Tue, 29 May 2012 19:27:17 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-03-17T16:52:58Z","body":"i think it would be wonderful if every OF example was named ofApp instead of testApp. especially because:\r\n\r\n\tclass ofApp : public ofBaseApp {\r\n\r\nis more natural than:\r\n\r\n\tclass testApp : public ofBaseApp {\r\n\r\ngiven the rest of OF naming conventions. and it would increase consistency with things like:\r\n\r\n\tofGetAppPtr();\r\n\tofAppBaseWindow\r\n\tofAppGlutWindow\r\n\r\nthis is a massive refactor that shouldn't be difficult, but should be done at the same time as something like a code formatting cleanup.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/744","comments":10,"milestone":null,"number":744,"html_url":"https://github.com/openframeworks/openFrameworks/issues/744","assignee":null,"title":"rename testApp to ofApp","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-09-14T07:02:36Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1641198,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-26T11:56:48Z","body":"calling ofEnableAlphaBlending() crashes my app on a machine with opengl version 1.1.0, because glBlendEquation(), introduced at opengl 1.3, needs to gracefully degrade. Here is the solution:\r\n\r\n
    \r\nvoid ofEnableAlphaBlending_slightlySafer(void){\r\n\tconst GLubyte * version = glGetString(GL_VERSION);\r\n\tint major, minor;\r\n\tsscanf((const char*)version, \"%i.%i\",&major, &minor);\r\n\r\n\tif(major > 1 || (major==1 && minor>=3)){\r\n\t\tofEnableAlphaBlending();\r\n\t}\t\r\n}\r\n
    ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/743","comments":1,"milestone":null,"number":743,"html_url":"https://github.com/openframeworks/openFrameworks/issues/743","assignee":null,"title":"seg fault on ofEnableAlphaBlending() -> glBlendEquation()","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-09-13T22:53:55Z","state":"open","user":{"url":"https://api.github.com/users/jtnimoy","gravatar_id":"153ba4a8df491692b717daad7a6030be","login":"jtnimoy","avatar_url":"https://secure.gravatar.com/avatar/153ba4a8df491692b717daad7a6030be?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":183796},"id":1639020,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:39:00Z","body":"In ofxiPhoneAppDelegate.mm in the setAnimationFrameInterval method should be changed from\r\n\r\n\r\nif (animating){\r\n [self stopAnimation];\r\n [self startAnimation];\r\n}\r\n\r\nto\r\n\r\nif (animating){\r\n [self stopAnimation];\r\n}\r\n [self startAnimation];\r\n\r\nThis will allow it start again if it's stopped.\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/738","comments":0,"milestone":null,"number":738,"html_url":"https://github.com/openframeworks/openFrameworks/issues/738","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"ofxiPhone - setting ofSetFrameRate(0) and then back to > 0 doesn't start again","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-09-12T21:23:04Z","state":"open","user":{"url":"https://api.github.com/users/cerupcat","gravatar_id":"91b3d4bfbbb99d840b096cde3af877bf","login":"cerupcat","avatar_url":"https://secure.gravatar.com/avatar/91b3d4bfbbb99d840b096cde3af877bf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":204151},"id":1628082,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T22:55:09Z","body":"it would be awesome to have lines drawn nicer when they are 1 thick and 2 make sharp edges. processing has some functions strokeCap() and strokeJoin() for setting this behavior, but it doesn't work with OPENGL mode. we could probably adapt a geometry shader to do some smart mitering for us on the GPU.\r\n\r\nprompted by the discussion here: http://forum.openframeworks.cc/index.php/topic,7278.0/topicseen.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/730","comments":1,"milestone":null,"number":730,"html_url":"https://github.com/openframeworks/openFrameworks/issues/730","assignee":null,"title":"nicer stroke mitering/joining and end caps","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-09-07T03:27:13Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1586262,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-05T15:39:58Z","body":"ofColor_:operator+= currently calls clamp() when it's done doing the +=\r\n\r\ni imagined one of the applications of ofFloatColor would be for averaging or summing ofColor, which normally requires non-saturation semantics for +=. i could also do a / or * every += operation to avoid overflow. this doesn't have to be a bug, but it should at least be documented clearly when we discuss ofColor.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/728","comments":1,"milestone":null,"number":728,"html_url":"https://github.com/openframeworks/openFrameworks/issues/728","assignee":null,"title":"ofColor and clamping","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-09-05T14:41:50Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1569364,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-05T10:17:48Z","body":"Hello\r\n\r\nI had a problem with gamma for my Carbon app in OSX 10.6, UI looked \"blotched\" with Pappis' help it was solved, here are details:\r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,6404.msg30519.html#msg30519\r\n\r\nHowever, the trick with HIWindowSetColorSpace does not work in OSX 10.7 Lion\r\nLooking for solutions again\r\n\r\nThanks\r\nTom\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/727","comments":0,"milestone":null,"number":727,"html_url":"https://github.com/openframeworks/openFrameworks/issues/727","assignee":null,"title":"OSX 10.7 Gamma Problem","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2011-09-05T10:17:48Z","state":"open","user":{"url":"https://api.github.com/users/Tommato","gravatar_id":"95bbfbd39116dffe06be4d816f322bf0","login":"Tommato","avatar_url":"https://secure.gravatar.com/avatar/95bbfbd39116dffe06be4d816f322bf0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1027082},"id":1566286,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-26T18:44:30Z","body":"Related forum post: http://forum.openframeworks.cc/index.php/topic,7053.0.html\r\n\r\nFrom what I understand, it's best to leave the mainThread for UIKit elements and move openGL and other things to another thread. Currently, if there's a lot of drawing then the UIKit elements are delayed and can even pause the update/draw methods entirely. Moving the drawing to it's own thread should help with this.\r\n\r\nI'm still testing, but this looks like it could be a good candidate for core integration. It has examples of threaded, single (what we currently use), and GCD (which I think is iOS 4.0 only) openGL implementation: https://github.com/Volcore/LimbicGL In my early tests, it does fix any pausing of the update/draw with the threaded example (haven't tried the others). I could use some help though trying to integrate this into OF properly.\r\n\r\nThe main example classes are here: https://github.com/Volcore/LimbicGL/tree/master/limbicgl/drivers\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/721","comments":0,"milestone":null,"number":721,"html_url":"https://github.com/openframeworks/openFrameworks/issues/721","assignee":null,"title":"ofxiPhone - Move openGL to its own thread","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-08-26T18:43:09Z","state":"open","user":{"url":"https://api.github.com/users/cerupcat","gravatar_id":"91b3d4bfbbb99d840b096cde3af877bf","login":"cerupcat","avatar_url":"https://secure.gravatar.com/avatar/91b3d4bfbbb99d840b096cde3af877bf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":204151},"id":1497330,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:39:39Z","body":"The libraries linked in 007 as well as the new AVFoundationVideoPlayer is not compatible with 3.x devices and won't build.\r\n\r\nAfter further exploring, I believe these are the steps to get things running on 3.x devices.\r\n\r\n1) In Xcode, Click on target -> application name\r\n2) In the File Name window, set AVFoundation, CoreMedia, and CoreVideo from role \"required\" to \"weak\". They need to be weak linked since they're only available in iOS 4+.\r\n3) In ofxiPhone src folder, AVFoundationVideoPlayer.mm uses CMBlockBufferRef and that is only available in iOS4. This means, this function should be commented out (sorry - avfoundationvideoplayer won't run on iOS4 unless the blocker is changed). Either that or you can comment ouf AVFoundationVideoPlayer from being included in OF.\r\n4) Clean all targets and rebuild","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/720","comments":0,"milestone":null,"number":720,"html_url":"https://github.com/openframeworks/openFrameworks/issues/720","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"007 ofxiPhone not compatible with 3.x devices ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-08-26T18:38:38Z","state":"open","user":{"url":"https://api.github.com/users/cerupcat","gravatar_id":"91b3d4bfbbb99d840b096cde3af877bf","login":"cerupcat","avatar_url":"https://secure.gravatar.com/avatar/91b3d4bfbbb99d840b096cde3af877bf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":204151},"id":1497291,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-22T17:38:49Z","body":"\r\nbased on this comment, \r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,5319.msg33381.html#msg33381\r\n\r\nI wonder if we can be smarter in endShape() / ofPath::tessellate() and look for simple usage (3 or 4 points, etc) before tessellating, or if the slow down is just based on the use of the ofPath object. \r\n\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/719","comments":1,"milestone":null,"number":719,"html_url":"https://github.com/openframeworks/openFrameworks/issues/719","assignee":null,"title":"optimize ofEndShape() to deal with simple shapes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-08-22T16:56:27Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":1459353,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-22T16:02:30Z","body":"change\r\n\r\nfloat ofCamera::getImagePlaneDistance(ofRectangle viewport) const {\r\n\treturn getPosition().length(); //viewport.height / (2.0f * tanf(PI * fov / 360.0f));\r\n}\r\n\r\nold in comment\r\n\r\ncurrent system is abitrary\r\nsuggest new system is more sensible\r\n(i'm always working in normalised coords)\r\npls check in your life before changing :)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/717","comments":0,"milestone":null,"number":717,"html_url":"https://github.com/openframeworks/openFrameworks/issues/717","assignee":null,"title":"suggest new calc clip planes routine","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-08-22T16:02:30Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":1458979,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-22T14:11:34Z","body":"http://forum.openframeworks.cc/index.php/topic,5222.msg33366.html#msg33366\r\n\r\nthere also seem to be a memory leak, when deleting a ofQuicktimeVideoPlayer","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/716","comments":0,"milestone":null,"number":716,"html_url":"https://github.com/openframeworks/openFrameworks/issues/716","assignee":null,"title":"problems with stop/play in quicktime videoPlayer","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-08-22T14:11:34Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":1458044,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-16T13:39:49Z","body":"Here\r\nhttps://github.com/openframeworks/openFrameworks/issues/653\r\nI downloaded latest version but in still crashes on my old video card Nvidia GeForce Go 7200.\r\nAny idea why?\r\nofxFBOTexture works, but i got some trobles in pixel format there. \r\nofxFBOTexture uses function with postfix EXT sometimes? ofFbo without it.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/711","comments":5,"milestone":null,"number":711,"html_url":"https://github.com/openframeworks/openFrameworks/issues/711","assignee":null,"title":"Problem with ofFbo. Crashes on allocate.There were the same issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-08-16T10:21:29Z","state":"open","user":{"url":"https://api.github.com/users/IonRod","gravatar_id":"cf3cb346817dd8a9f8327d1af13c3d46","login":"IonRod","avatar_url":"https://secure.gravatar.com/avatar/cf3cb346817dd8a9f8327d1af13c3d46?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":886012},"id":1414013,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-15T14:23:47Z","body":"i'm noticing this on osx 10.6. all 8-bit images are correct, but somehow i didn't notice about unsigned short and float until now!\r\n\r\ni'm super busy atm, but i've kind of been maintaining the unsigned short/float loading so i'll look into this if someone else doesn't get to it first.\r\n\r\nmeanwhile it would be good to see if it's the same on windows or not. for anyone interested in testing, please check devApps/AdvancedImageLoading and compare the results of the app to the .exr opened in photoshop.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/710","comments":0,"milestone":null,"number":710,"html_url":"https://github.com/openframeworks/openFrameworks/issues/710","assignee":null,"title":"16-bit and 32-bit images are red/blue swapped","labels":[],"closed_at":null,"created_at":"2011-08-15T14:23:47Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1407813,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-07T12:19:07Z","body":"in the past there has been ofxQtVideoSaver and a few others. i think this is a really hard problem because it basically needs to be written for each platform, but something that should eventually be solved.\r\n\r\ntwo major use cases i know are:\r\n\r\n- capturing and saving simultaneously, for long streams\r\n- capturing a quick burst of video then saving it to disk\r\n\r\nwhich would might be handled a little differently.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/702","comments":1,"milestone":null,"number":702,"html_url":"https://github.com/openframeworks/openFrameworks/issues/702","assignee":null,"title":"cross platform video saving (ofVideoSaver?)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-08-07T03:23:38Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1359729,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-06T20:20:03Z","body":"Hi!\r\n\r\nI have problems even getting the ofxOsc Send/Receive examples talking on Ubuntu 11.04 64bit. \r\nThey compile without problems, but sometimes when I run them, communication fails somewhere along the road - input events are not shown in the receiver app. Sometimes it does not work at all.\r\n\r\nThis works all flawlessly on 32bit Ubuntu 11.04. See http://forum.openframeworks.cc/index.php/topic,6918.0.html for more details.\r\n\r\nCan anyone reproduce these problems? Any tips? How could I debug this?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/701","comments":3,"milestone":null,"number":701,"html_url":"https://github.com/openframeworks/openFrameworks/issues/701","assignee":null,"title":"ofxOsc does not seem to work on 64bit Ubuntu","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2011-08-06T19:14:37Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":1358688,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-05T03:06:25Z","body":"very simple but helpful feature request. e.g.,\r\n\r\nofBuffer::operator=(const ofBuffer& mom) {\r\n set(mom.getBinaryBuffer(), mom.size());\r\n}\r\n\r\nthis goes along with the general \"what does the equal operator mean\" debate/discussion :)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/700","comments":0,"milestone":null,"number":700,"html_url":"https://github.com/openframeworks/openFrameworks/issues/700","assignee":null,"title":"ofBuffer with overloaded = operator","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-08-05T03:06:25Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1349012,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T15:11:28Z","body":"this seems like an api inconsistency to me: i feel like ofTexture::loadData() is similar to ofImage::setFromPixels(), but setFromPixels() will allocate space if necessary while loadData() just prints an error if the data is larger than the allocated space.\r\n\r\ni think auto-allocation would be nice, but i might just be misunderstanding/making a false comparison here.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/699","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":699,"html_url":"https://github.com/openframeworks/openFrameworks/issues/699","assignee":null,"title":"loadData() does not allocate as necessary","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-08-04T10:29:57Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1343463,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T15:12:03Z","body":"from: http://forum.openframeworks.cc/index.php/topic,6952.msg32509.html\r\n\r\n\r\n\r\ngetBmpFromPixels() crashed repeatedly when I tried to rescale grayscale Images of size 3026*2048.\r\n\r\nIt's because memcpy overshoots the src pixel array because dstStride can be larger than srcStride.\r\n\r\nIn ofImage.cpp \r\n\r\ngetBmpFromPixels()\r\n\r\naround line 119, I believe, it should read:\r\n\r\nCode:\r\nview plaincopy to clipboardprint?\r\n... \r\n int srcStride = width * pix.getBytesPerPixel(); \r\n int dstStride = FreeImage_GetPitch(bmp); \r\n unsigned char* src = (unsigned char*) pixels; \r\n unsigned char* dst = bmpBits; \r\n for(int i = 0; i < (int)height; i++) { \r\n // memcpy(dst, src, dstStride); \r\n memcpy(dst, src, srcStride); // did overshoot with e.g. grayscale img of size 3026*2048 \r\n src += srcStride; \r\n dst += dstStride; \r\n } \r\n... \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/698","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":698,"html_url":"https://github.com/openframeworks/openFrameworks/issues/698","assignee":null,"title":"getBmpFromPixels memcpy issue / ofImage::resize issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-08-03T18:15:55Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":1339116,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-21T15:34:07Z","body":"I'm trying to build ofxPd in Visual Studio and running into multiple define issues related to the videoinput lib, namely static `verbose`: https://github.com/openframeworks/openFrameworks/blob/master/libs/videoInput/include/videoInput.h#L115\r\n\r\nCouldn't this variable as well as `comInitCount` be moved to the implementation files? or at least in a header hidden from the global namespace? At the least, `verbose` could be renamed to something not so common ...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/697","comments":1,"milestone":null,"number":697,"html_url":"https://github.com/openframeworks/openFrameworks/issues/697","assignee":null,"title":"videoinput lib global statics","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-08-03T02:27:52Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":1334657,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T00:53:30Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/685","comments":3,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":685,"html_url":"https://github.com/openframeworks/openFrameworks/issues/685","assignee":null,"title":"update shader example to work on ati.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-07-28T15:57:58Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":1303812,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:40:42Z","body":"It is very annoying if you can not disable autocorrections in ofxiPhoneKeyboard. Specially for creative uses of this class. I add code how to add this feature.\r\n\r\n[CODE] Add to ofxiPhoneKeyboard class:\r\n\r\n- (void)disableAutoCorrection;\r\n- (void)enableAutoCorrection;\r\n\r\n//--------------------------------------------------------------\r\nvoid ofxiPhoneKeyboard::disableAutoCorrection()\r\n{\r\n [keyboard disableAutoCorrection];\r\n}\r\n//--------------------------------------------------------------\r\nvoid ofxiPhoneKeyboard::enableAutoCorrection()\r\n{\r\n [keyboard enableAutoCorrection];\r\n}\r\n\r\n- (void)disableAutoCorrection\r\n{\r\n _textField.autocorrectionType = UITextAutocorrectionTypeNo;\r\n}\r\n\r\n- (void)enableAutoCorrection\r\n{\r\n _textField.autocorrectionType = UITextAutocorrectionTypeYes;\r\n}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/684","comments":0,"milestone":null,"number":684,"html_url":"https://github.com/openframeworks/openFrameworks/issues/684","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"ofxiPhoneKeyboard should have disable/enable methods for auto correction","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-07-28T12:12:52Z","state":"open","user":{"url":"https://api.github.com/users/mcanet","gravatar_id":"e4d2b0151a843dde7b815b848170d6e9","login":"mcanet","avatar_url":"https://secure.gravatar.com/avatar/e4d2b0151a843dde7b815b848170d6e9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":308759},"id":1302375,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-24T18:26:54Z","body":"I think there's a bug in ofQuaternion in of007. When i use ofNode's setOrientation() or ofNode setRoll I can rotate my ofNode object around the Z axis. However when I try to obtain the current rotation around the Z axis it will always give a value like -180, 0 or 180.\r\n\r\nRick","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/679","comments":0,"milestone":null,"number":679,"html_url":"https://github.com/openframeworks/openFrameworks/issues/679","assignee":null,"title":"possible bug in getEuler / getOrientation / getRoll","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-24T18:26:54Z","state":"open","user":{"url":"https://api.github.com/users/companje","gravatar_id":"30a7e135fe77636519d74d129c60e156","login":"companje","avatar_url":"https://secure.gravatar.com/avatar/30a7e135fe77636519d74d129c60e156?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":156066},"id":1278252,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T22:13:24Z","body":"I know that with the 007 release ofxDirList addon is deprecated and instead we are encouraged to use ofDirectory to achiece the same kind of functionality. In fact the are so similar that is possible to use them interchangeably. To do that transparently you changed the ofxDirList.h so that it made a typedef to point to ofDirectory (and will probably remove it completely someday).\r\n\r\nThe contents of ofxDirList.h are the following:\r\n---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------\r\n#pragma once\r\n\r\n#include \"ofFileUtils.h\"\r\n\r\n#warning ofxDirList has been deprecated. \r\n#warning Remove all references to ofxDirList.h and use ofDirectory instead.\r\ntypedef ofDirectory ofxDirList;\r\n---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------\r\nSo far so good. The problem is that you use the #warning preprocessing directive is non-standard and unsupported on Visual C++ compiler. In fact it gives me an error while building a project that I ported from 0062 version that used ofxDirList. To make it work I had to comment the two #warning lines. \r\n\r\nI suggest that you remove the #warning directives and replace it with something else that works across all compilers. I know that the #warning directive works on GCC and MinGW but not on VC++ so if you are going to support all those compilers (like you do) you better have all of your code working across all of them.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/676","comments":2,"milestone":null,"number":676,"html_url":"https://github.com/openframeworks/openFrameworks/issues/676","assignee":null,"title":"ofxDirList deprecated #warning directive preprocessor Visual Studio 2010","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-23T01:19:54Z","state":"open","user":{"url":"https://api.github.com/users/petersaints","gravatar_id":"03848790c2ebb8e5edbe130e8ce76f1d","login":"petersaints","avatar_url":"https://secure.gravatar.com/avatar/03848790c2ebb8e5edbe130e8ce76f1d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157810},"id":1273716,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-21T11:29:24Z","body":"changed this in dirListExample\r\n\r\n ofFile testfile;\r\n\t// you can now iterate through the files and load them into the ofImage vector\r\n\tfor(int i = 0; i < (int)dir.size(); i++){\r\n\t\timages[i].loadImage(dir.getPath(i));\r\n\t\ttestfile.open(dir.getPath(i));\r\n\t\tcout << testfile.isFile() << endl; //THIS LINE SEGFAULTS ON WIN7\r\n testfile.close();\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/671","comments":0,"milestone":null,"number":671,"html_url":"https://github.com/openframeworks/openFrameworks/issues/671","assignee":null,"title":"isFile() segfaults on win7","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-07-21T11:27:16Z","state":"open","user":{"url":"https://api.github.com/users/benben","gravatar_id":"614a4e493d7c353296519bba720e77c5","login":"benben","avatar_url":"https://secure.gravatar.com/avatar/614a4e493d7c353296519bba720e77c5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":124513},"id":1262459,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-21T10:39:29Z","body":"just added output to all events in an emptyExample on windows7 64bit.\r\n\r\nif im clicking, the following output occurs even if the mouse is not moved\r\n\r\n mousePressed\r\n mouseReleased\r\n mouseMoved","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/670","comments":2,"milestone":null,"number":670,"html_url":"https://github.com/openframeworks/openFrameworks/issues/670","assignee":null,"title":"mouseReleased fires mouseMoved too (win7)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-07-21T09:34:52Z","state":"open","user":{"url":"https://api.github.com/users/benben","gravatar_id":"614a4e493d7c353296519bba720e77c5","login":"benben","avatar_url":"https://secure.gravatar.com/avatar/614a4e493d7c353296519bba720e77c5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":124513},"id":1261982,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=9 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4935'), ('content-length', '45016'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"c403779e3346f56dddb655b8bb57d5ae"'), ('date', 'Tue, 29 May 2012 19:27:18 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-03-09T06:11:12Z","body":"I'm curious why the movieplayer uses AvAsset instead of AvPlayer which seems better suited for OF needs ( seeking / looping etc ) \r\n\r\nhttp://developer.apple.com/library/ios/#documentation/AVFoundation/Reference/AVPlayer_Class/Reference/Reference.html\r\n\r\nhttp://stackoverflow.com/questions/5361145/looping-a-video-with-avfoundation-avplayer\r\n\r\n\r\nI think you can get init a player with an AVAsset:\r\nhttp://developer.apple.com/library/ios/#documentation/AVFoundation/Reference/AVPlayer_Class/Reference/Reference.html%23//apple_ref/occ/instm/AVPlayer/initWithPlayerItem:\r\nhttp://developer.apple.com/library/ios/documentation/AVFoundation/Reference/AVPlayerItem_Class/Reference/Reference.html#//apple_ref/occ/instm/AVPlayerItem/initWithAsset:\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/666","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":666,"html_url":"https://github.com/openframeworks/openFrameworks/issues/666","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"iphone video player should use AVPlayer ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-07-20T20:01:04Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":1258863,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-01-08T04:45:01Z","body":"In some cases, when modifier keys are used, the pressedKeys set will accumulate keys.\r\n\r\nThis happens because \"modifier-up\" messages are not sent in the same way as normal and special keys.\r\n\r\nTo test, watch the size of the pressedKeys:\r\n\r\n cout << pressedKeys.size() << \" num pressed keys \" << endl;\r\n\r\nPress a modifier key and a normal key -- say ctrl-a. If the 'a' is lifted first, then the modified-a key int is removed from the pressedKeys set. If CTRL is released before the 'a', then the non-modified-a key-up int is sent, and it is not erased from the pressedKeys set. If this is repeated with different modifier+key downs / ups the accumulation occurs.\r\n\r\nUltimately, there needs to be better handling of modifier keys. Perhaps there is a way to use the modifier masks keep track of modifier keys with a call to glutGetModifiers() in the keyboard_cb and keyboard_up_cb static methods?\r\n\r\nIt looks like progress has been made toward this in ofConstants.h\r\n\r\n\t#define OF_KEY_CTRL\t\t\t0x0200\r\n\t#define OF_KEY_ALT\t\t\t0x0300\r\n\t#define OF_KEY_SHIFT\t\t0x0400\r\n\r\nBut it seems to have stopped there.\r\n\r\nI'm happy to work on this -- any suggestions on a strategy? Perhaps this is already being addressed of 007?\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/652","comments":5,"milestone":null,"number":652,"html_url":"https://github.com/openframeworks/openFrameworks/issues/652","assignee":null,"title":"ofAppGlutWindow/ofEvents: pressedKeys accumulate in special cases","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-15T18:49:46Z","state":"open","user":{"url":"https://api.github.com/users/bakercp","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","login":"bakercp","avatar_url":"https://secure.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":300484},"id":1231959,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-20T19:04:31Z","body":"If you use those these two together the 3d objects get an unwanted offset\r\n\r\ncode:\r\n\r\n```c++\r\nvoid testApp::draw()\r\n{\r\n \r\n cam.begin();\r\n ofPushMatrix();\r\n ofSetColor(255,255,255);\r\n ofBox(200);\r\n ofPopMatrix();\r\n cam.end();\r\n \r\n \r\n fbo.begin();\r\n cam.begin();\r\n \r\n ofClear(0);\r\n ofPushMatrix();\r\n ofSetColor(0,0,0);\r\n ofBox(200);\r\n ofPopMatrix();\r\n \r\n cam.end();\r\n fbo.end();\r\n \r\n \r\n glPushMatrix();\r\n //ofTranslate(0,6,0); <--- now i'm using something like this to \"repair\" it\r\n ofSetColor(255,255,255,255);\r\n glScalef(1,-1,1);\r\n fbo.draw(0,- ofGetHeight());\r\n glPopMatrix();\r\n \r\n \r\n \r\n}\r\n```\r\n\r\nNormally the two boxes should overlap completely, instead it looks like this:\r\n\r\n![screen1](http://i51.tinypic.com/11cfi1l.png)\r\n![screen2](http://i55.tinypic.com/2ewnv5i.png)\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/651","comments":4,"milestone":null,"number":651,"html_url":"https://github.com/openframeworks/openFrameworks/issues/651","assignee":null,"title":"ofFBO + ofCamera = unwanted offset","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2011-07-15T13:21:44Z","state":"open","user":{"url":"https://api.github.com/users/toxin20","gravatar_id":"29a3b85e704ec06a72df8897a726920e","login":"toxin20","avatar_url":"https://secure.gravatar.com/avatar/29a3b85e704ec06a72df8897a726920e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":123776},"id":1230184,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-19T00:31:38Z","body":"\r\nA tiny issue I spotted:\r\n\r\nofQuaternion.cpp, line 14:\r\n\r\n```C++\r\n/// Set the elements of the Quat to represent a rotation of angle\r\n/// (radians) around the axis (x,y,z)\r\nvoid ofQuaternion::makeRotate( float angle, float x, float y, float z ) {\r\n\tangle = ofDegToRad(angle);\r\n```\r\n\r\nof**X**Quaternion::makeRotate used to take radians, only noticed as I was moving some old code over, otherwise I would have just looked at the code in ofQuaternion.cpp to see the angle type. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/646","comments":1,"milestone":null,"number":646,"html_url":"https://github.com/openframeworks/openFrameworks/issues/646","assignee":null,"title":"ofQuaternion::makeRotate takes degrees, used to take radians, documentation says radians","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"closed_at":null,"created_at":"2011-07-13T15:18:04Z","state":"open","user":{"url":"https://api.github.com/users/andreasmuller","gravatar_id":"210831a04d36f1aa26413ecbdbd4b07c","login":"andreasmuller","avatar_url":"https://secure.gravatar.com/avatar/210831a04d36f1aa26413ecbdbd4b07c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":791114},"id":1216274,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-12T16:05:23Z","body":"^^^^\r\nTried on Mac:\r\nhttps://gist.github.com/1078282","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/645","comments":0,"milestone":null,"number":645,"html_url":"https://github.com/openframeworks/openFrameworks/issues/645","assignee":null,"title":"ofVideoGrabber::listDevices() does not list devices when initGrabber not called","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-12T16:05:23Z","state":"open","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":358809},"id":1209436,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-16T04:21:18Z","body":"https://gist.github.com/1077933\r\n\r\nsaving images converted to 8PP using ofImage::setImageType(OF_IMAGE_GRAYSCALE) and then calling saveImage() save blank on windows, but works on OS X\r\n\r\ntraced the issue down to the call to FreeImage_Save(), both seem to be the same. not sure what the problem is\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/643","comments":1,"milestone":null,"number":643,"html_url":"https://github.com/openframeworks/openFrameworks/issues/643","assignee":null,"title":"8 BPP (grayscale) ofImage saves blank on Windows, fine on os x","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-07-12T13:05:25Z","state":"open","user":{"url":"https://api.github.com/users/obviousjim","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","login":"obviousjim","avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":321434},"id":1208289,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:42:09Z","body":"Forum issue: http://forum.openframeworks.cc/index.php/topic,6316.new.html#new\r\n\r\nThis may be related to using CADisplayLink. When openGL seems to be pushed a bit, touch events seem to drop or are delayed. When using NSTimer in ofxiPhoneAppDelegate instead of CADisplayLink this does not occur.\r\n\r\nIt may be beneficial for developers to set whether they'd like to use CADisplayLink (if available) vs NSTimer for rendering or not.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/642","comments":0,"milestone":null,"number":642,"html_url":"https://github.com/openframeworks/openFrameworks/issues/642","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"ofxiPhone: Possible delayed input/touch event issue ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-12T02:46:23Z","state":"open","user":{"url":"https://api.github.com/users/cerupcat","gravatar_id":"91b3d4bfbbb99d840b096cde3af877bf","login":"cerupcat","avatar_url":"https://secure.gravatar.com/avatar/91b3d4bfbbb99d840b096cde3af877bf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":204151},"id":1205789,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-12T13:03:00Z","body":"See title and test code:\r\nhttps://gist.github.com/952bd35591dc0cb23f61","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/631","comments":1,"milestone":null,"number":631,"html_url":"https://github.com/openframeworks/openFrameworks/issues/631","assignee":null,"title":"ofImage::saveImage() - saving from png to gif creates grayscale image","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-07T21:37:47Z","state":"open","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":358809},"id":1185346,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T03:48:47Z","body":"Tried to load a text file over https but I got this message:\r\n\r\n``400 The plain HTTP request was sent to HTTPS port\r\n

    400 Bad Request

    The plain HTTP request was sent to HTTPS port

    nginx/1.0.4
    ``\r\n\r\n\r\n\r\nUsing this code\r\n``ofHttpResponse resp = ofLoadURL(\"https://raw.github.com/openframeworks/openFrameworks/6af1dc980f6d93d84b3bf8fdc1b6435697be9ed9/readme.txt\");``\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/623","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":623,"html_url":"https://github.com/openframeworks/openFrameworks/issues/623","assignee":null,"title":"ofLoadURL() does not work with httpS","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-06T18:12:06Z","state":"open","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":358809},"id":1175654,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-06T18:09:03Z","body":"Setting the position of an ofEasyCam instance in ofSetup() does not work. What does work in testApp::setup() is calling ofEasyCam::setDistance(). When calling ofEasyCam::setPosition() in for example testApp::draw() does work.\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/618","comments":0,"milestone":null,"number":618,"html_url":"https://github.com/openframeworks/openFrameworks/issues/618","assignee":null,"title":"call ofEasyCam::setPosition in testApp::setup() is forgotten","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-05T18:23:34Z","state":"open","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":358809},"id":1169032,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-06-27T18:30:26Z","body":"Currently there doesn't appear to be any way to do this other than by hand\r\nAlso it would be highly useful ofMatrix3x3 in general had equivalent accessors to ofMatrix4x4","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/612","comments":0,"milestone":null,"number":612,"html_url":"https://github.com/openframeworks/openFrameworks/issues/612","assignee":null,"title":"need conversion ofMatrix3x3<->ofMatrix4x4","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-06-27T18:30:26Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":1124068,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-04T10:10:06Z","body":"Need some way of applying current ofMatrix4x4 to the scene without going down to gl calls","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/605","comments":4,"milestone":null,"number":605,"html_url":"https://github.com/openframeworks/openFrameworks/issues/605","assignee":null,"title":"function wrapping glMultMatrixf in ofMatrix4x4","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-06-16T13:13:35Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":1067300,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:42:59Z","body":"Here's a function that will do it...\r\n\r\nvoid ofxiPhoneLaunchBrowser(string url) {\r\n\t[[UIApplication sharedApplication] openURL:[NSURL URLWithString:ofxStringToNSString(url)]];\r\n}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/603","comments":0,"milestone":null,"number":603,"html_url":"https://github.com/openframeworks/openFrameworks/issues/603","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"ofLaunchBrowser() for iPhone not implemented","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-06-13T13:03:15Z","state":"open","user":{"url":"https://api.github.com/users/mazbox","gravatar_id":"3cfb19dbce7926933555ac9755a86ca8","login":"mazbox","avatar_url":"https://secure.gravatar.com/avatar/3cfb19dbce7926933555ac9755a86ca8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":194121},"id":1048971,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T21:38:43Z","body":"OF: OF_LOG_ERROR: ofxNetwork:/addons/ofxNetwork/src/ofxTCPManager.cpp: 157 ECONNREFUSED: the server has actively refused to establish the connection\r\n\r\nThis error happens in every use of ofxTCPClient.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/599","comments":1,"milestone":null,"number":599,"html_url":"https://github.com/openframeworks/openFrameworks/issues/599","assignee":null,"title":"TCPManager Consistent Error","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-06-08T23:02:28Z","state":"open","user":{"url":"https://api.github.com/users/tomorrowevening","gravatar_id":"f92a8e912b59171abde0354e2f212c12","login":"tomorrowevening","avatar_url":"https://secure.gravatar.com/avatar/f92a8e912b59171abde0354e2f212c12?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":626143},"id":1027184,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-06-01T13:56:17Z","body":"http://forum.openframeworks.cc/index.php/topic,6370.0.html\r\n\r\nwhen they are not power of 2 perhaps?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/591","comments":0,"milestone":null,"number":591,"html_url":"https://github.com/openframeworks/openFrameworks/issues/591","assignee":null,"title":"problem with ofImage resize","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-06-01T13:56:17Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":984564,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-05-31T12:33:31Z","body":"### ofxNetworkUtils.h - issue 1\n\nThe default message should print out `err` instead of `errno`\n\n```\n\tdefault:\n\t\tofLog(OF_LOG_ERROR,\"ofxNetwork:\"+file+\": \" +line+\" unknown error: \" + ofToString(errno) + \" see errno.h for description of the error\");\n\t\tbreak;\n```\n\nto:\n\n```\n\tdefault:\n\t\tofLog(OF_LOG_ERROR,\"ofxNetwork:\"+file+\": \" +line+\" unknown error: \" + ofToString(err) + \" see errno.h for description of the error\");\n\t\tbreak;\n```\n\nSince errno would not be set on windows machines.\n\n\n\n\n### ofxTCPManager.cpp - issue 2\n\nIn the `Receive` method of the `ofxTCPManager` the function will always return -1 when checking for data and there is no new data and the TCPServer has been set to non-blocking.\n\nAfter changing the code in issue 1 mentioned above i got:\n\n`ofxNetwork:addons\\ofxNetwork\\src\\ofxTCPManager.cpp: 304 unknown error: 10035 see errno.h for description of the error`\n\ninstead of `error: 0` when `errno`was used.\n\nWhich on windows is the [`WSAEWOULDBLOCK`](http://msdn.microsoft.com/en-us/library/ms740668.aspx) or `EWOULDBLOCK` as defined in `ofxNetworkUtils`\n\nSo someplace in the code there should be a mechanism to check if the code is client is non-blocking and ignore the error.\nThis is `windows` only but still could be as an additional parameter to the `Receive` method. Or add it as an `switch case` for the `EWOULDBLOCK` in the `ofxNetworkUtils` and ignore the ouput and comment it.\n\nI just noticed this above when i started usin an application that i was developing on my mac an using it on windows machines this code would appear too often.\n\nSo as stated above my solution is that i added:\n\n```\n #ifdef TARGET_WIN32 // otherwise EAGAIN & EWOULDBLOCK will create a \"duplicate case value\" on Non windows\n\tcase EWOULDBLOCK: \n\t\t// \tofLog(OF_LOG_VERBOSE,\"ofxNetwork:\"+file+\": \" +line+\" EWOULDBLOCK: perhaps non-blocking\");\n\t\tbreak;\n #endif\n```\ncode and ignoring the output.\n\n\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/590","comments":0,"milestone":null,"number":590,"html_url":"https://github.com/openframeworks/openFrameworks/issues/590","assignee":null,"title":"ofxTCPManager.receive() - EWOULDBLOCK on Windows","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-05-31T11:31:08Z","state":"open","user":{"url":"https://api.github.com/users/cristobal","gravatar_id":"c7f941e0c10696b758ae8792714a6744","login":"cristobal","avatar_url":"https://secure.gravatar.com/avatar/c7f941e0c10696b758ae8792714a6744?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":155505},"id":978212,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-05-31T02:06:22Z","body":"setFromPixels has two forms: one that takes an int channels, another that takes ofImageType.\r\n\r\nsetFromExternalPixels only has one form: it takes an int channels.\r\n\r\nin my opinion, it makes sense to change them both to ofImageType only, because the int channels is susceptible to accidentally passing an ofImageType to it.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/589","comments":0,"milestone":null,"number":589,"html_url":"https://github.com/openframeworks/openFrameworks/issues/589","assignee":null,"title":"setFromPixels vs setFromExternalPixels","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-05-31T02:06:22Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":976610,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T21:54:02Z","body":"ofImage_ should be ofBaseImage, likewise with ofPixels_\n\nin general, X_ style classes should be BaseX\n\ntemplated functions that are just sitting around should also have descriptive template names.\n\nit's important for this to happen before 007, otherwise code will be written against ofImage\\_<T> etc.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/582","comments":5,"milestone":null,"number":582,"html_url":"https://github.com/openframeworks/openFrameworks/issues/582","assignee":null,"title":"templated code needs to be more readable","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-05-23T17:46:28Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":942647,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-31T13:42:28Z","body":"just need to add the line\r\n\r\n\t\t\tcase 230400: cfsetispeed(&options,B230400);\r\n\t\t\t\tcfsetospeed(&options,B230400);\r\n\t\t\t\tbreak;\r\n\r\nin the setup function after\r\ncase 115200: cfsetispeed(&options,B115200);\r\n\t\t\t\t\t\tcfsetospeed(&options,B115200);\r\n\t\t\t\tbreak;\r\n\r\ntested with our device that runs at that baud rate, seems to work a-OK so far.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/577","comments":2,"milestone":null,"number":577,"html_url":"https://github.com/openframeworks/openFrameworks/issues/577","assignee":null,"title":"ofSerial: add 230400 speed","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-05-20T16:16:52Z","state":"open","user":{"url":"https://api.github.com/users/labatrockwell","gravatar_id":"e6d243a56cd069a225f56f4a388e8838","login":"labatrockwell","avatar_url":"https://secure.gravatar.com/avatar/e6d243a56cd069a225f56f4a388e8838?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","id":313943},"id":932655,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T19:59:00Z","body":"This is a generic Linux build of oF for ARM Cortex A8/9 devices (Beagleboard, Pandaboard, Gumstix, Tegra 250, IGEPv2, ...) with built-in NEON optimizations in the included libs and makefiles (via gcc -O3 -march=armv7-a -mtune=cortex-a8 -mfpu=neon -ftree-vectorize -mfloat-abi=softfp)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/576","comments":17,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","closed_issues":0,"number":8,"title":"0080 Release","due_on":"2013-01-01T08:00:00Z","open_issues":3,"created_at":"2012-02-25T01:34:28Z","state":"open","description":"","id":88731},"number":576,"html_url":"https://github.com/openframeworks/openFrameworks/issues/576","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"Generic armv7l Linux build for Beagleboard &co. ","labels":[],"closed_at":null,"created_at":"2011-05-19T14:49:57Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"id":927378,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/576.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/576","patch_url":"https://github.com/openframeworks/openFrameworks/pull/576.patch"}},{"updated_at":"2011-05-13T15:28:46Z","body":"http://forum.openframeworks.cc/index.php?topic=6201.0","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/572","comments":0,"milestone":null,"number":572,"html_url":"https://github.com/openframeworks/openFrameworks/issues/572","assignee":null,"title":"ofToggleFullscreen doesn't set width and height correctly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2011-05-13T15:28:46Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":895515,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-02T15:47:14Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/569","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":569,"html_url":"https://github.com/openframeworks/openFrameworks/issues/569","assignee":null,"title":"saving an image with the image quality flag set to high or best causes empty jpegs. ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-05-11T13:53:42Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":883385,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T03:48:47Z","body":"Currently using an FBO with an ofCamera is really tricky, as both setup their own viewing matrix and viewport. \r\n\r\nDoes it make sense to have ofFbo use an ofCamera internally?\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/568","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":568,"html_url":"https://github.com/openframeworks/openFrameworks/issues/568","assignee":null,"title":"ofFbo and ofCamera do not play well together.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-05-11T13:52:46Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":883380,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-15T18:31:30Z","body":"Greetings,\r\n\r\nI have downloaded the latest master of Openframeworks b4397c1 and I have tried to compile the AllAddons example (just to check if everything was well installed).\r\n\r\nThe ofxSynth library just won't compile (using either GCC or LLVM, Xcode 3 or Xcode4), be it in the allAddons or in it's own examples, here is the error log :\r\n\r\nUndefined symbols for architecture i386:\r\n \"typeinfo for ofxSoundEffect\", referenced from:\r\n typeinfo for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"non-virtual thunk to ofxSoundEffect::setSampleRate(int)\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundBuffer::ofxSoundBuffer()\", referenced from:\r\n ofxSoundSink::ofxSoundSink()in ofxSynth.o\r\n \"vtable for ofxSoundEffect\", referenced from:\r\n ofxSoundEffect::~ofxSoundEffect()in ofxSynthDelayLine.o\r\n ofxSoundEffect::~ofxSoundEffect()in ofxSynthDelayLine.o\r\n \"vtable for ofxSoundSink\", referenced from:\r\n ofxSoundSink::~ofxSoundSink()in ofxSynthDelayLine.o\r\n ofxSoundSink::~ofxSoundSink()in ofxSynthDelayLine.o\r\n \"virtual thunk to ofxSoundSink::getInputs()\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"typeinfo for ofxSoundSink\", referenced from:\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundSink::setSampleRate(int)\", referenced from:\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundSink::getInputs()\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundSink::addInputFrom(ofxSoundSource*)\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"VTT for ofxSoundEffect\", referenced from:\r\n ofxSoundEffect::~ofxSoundEffect()in ofxSynthDelayLine.o\r\n ofxSoundEffect::~ofxSoundEffect()in ofxSynthDelayLine.o\r\n \"ofxSoundEffect::setSampleRate(int)\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundSink::audioIn(float*, int, int, unsigned long long)\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundEffect::audioOut(float*, int, int, unsigned long long)\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundBuffer::~ofxSoundBuffer()\", referenced from:\r\n ofxSoundSink::~ofxSoundSink()in main.o\r\n ofxSoundSink::~ofxSoundSink()in ofxSynthDelayLine.o\r\n ofxSoundSink::~ofxSoundSink()in ofxSynthDelayLine.o\r\nld: symbol(s) not found for architecture i386\r\ncollect2: ld returned 1 exit status\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/566","comments":3,"milestone":null,"number":566,"html_url":"https://github.com/openframeworks/openFrameworks/issues/566","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"ofxSynth won't compile","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2011-05-07T12:25:01Z","state":"open","user":{"url":"https://api.github.com/users/benoitespinola","gravatar_id":"d08687285addcdde144d4eceb4cfa78e","login":"benoitespinola","avatar_url":"https://secure.gravatar.com/avatar/d08687285addcdde144d4eceb4cfa78e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":720460},"id":862321,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:48:58Z","body":"I'm fixing it using \r\n_textField.transform = CGAffineTransformMakeRotation(M_PI*1.5f);\r\nin - (void) setFrame: (CGRect) rect\r\nto fix it now.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/565","comments":1,"milestone":null,"number":565,"html_url":"https://github.com/openframeworks/openFrameworks/issues/565","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"Textfield in ofxiPhoneKeyboard upside down in landscape","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-05-05T14:20:42Z","state":"open","user":{"url":"https://api.github.com/users/labatrockwell","gravatar_id":"e6d243a56cd069a225f56f4a388e8838","login":"labatrockwell","avatar_url":"https://secure.gravatar.com/avatar/e6d243a56cd069a225f56f4a388e8838?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","id":313943},"id":853551,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=10 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4934'), ('content-length', '43807'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"78e9c565cba926f6a72fa2b7dd021b78"'), ('date', 'Tue, 29 May 2012 19:27:19 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-12-03T21:20:01Z","body":"Does anybody know the status of this?\r\nI would like to help but I'm not sure where to start. Is the `iphone-dev-0061` the branch to work on this?\r\nI just want to know what's been done or whether there are plans in the works.\r\n\r\nI have posted this in the forum but have not received any response.\r\nhttp://forum.openframeworks.cc/index.php/topic,4089.msg29156.html#msg29156","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/564","comments":1,"milestone":null,"number":564,"html_url":"https://github.com/openframeworks/openFrameworks/issues/564","assignee":null,"title":"ofxShader for iOS","labels":[],"closed_at":null,"created_at":"2011-05-04T18:35:58Z","state":"open","user":{"url":"https://api.github.com/users/chrisirhc","gravatar_id":"22d0038769b1786fcdc0983bdb2e4033","login":"chrisirhc","avatar_url":"https://secure.gravatar.com/avatar/22d0038769b1786fcdc0983bdb2e4033?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":132584},"id":850096,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-12T08:58:12Z","body":"it's compiling now but doesn't work in openGL ES.\r\n\r\nalso take a look at setupShadow generating depthBuffer as texture, when it's released as a renderbuffer","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/560","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":560,"html_url":"https://github.com/openframeworks/openFrameworks/issues/560","assignee":null,"title":"fix ofFbo for openGL ES","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/android","name":"android","color":"2bc4ad"}],"closed_at":null,"created_at":"2011-04-30T17:21:39Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":833772,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-04-26T00:37:56Z","body":"nothing fancy, but I have an implementation of ofxCvHaarFinder that draws, and it's useful for debugging. something like:\n\n``` c++\n void ofxCvHaarFinder::draw( float x, float y ) {\n\t\t// ofPushStyle(); ?\n\t\tofEnableAlphaBlending();\n\t\tofSetColor( 255,0,200,100 );\n\t\tglPushMatrix();\n\t\t\n\t\tglTranslatef( x, y, 0.0 );\n\t\t\n\t\tofNoFill();\n\t\tfor( int i=0; i007 than <007. this can be changed in the ofStyle() constructor.\r\n\r\nalso, @elliotwoods it would be great to have a comment next to each of the constants in enum ofDrawBitmapMode explaining what they do.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/520","comments":1,"milestone":null,"number":520,"html_url":"https://github.com/openframeworks/openFrameworks/issues/520","assignee":null,"title":"ofDrawBitmapString default behavior has changed","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-04-01T06:37:16Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":723496,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-31T17:49:33Z","body":"it's obvious if you've used opengl directly before, but i would expect something more like:\r\n\r\n\tvoid ofSetTextureInterpolation(ofInterpolationType downscale, ofInterpolationType upscale)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/519","comments":0,"milestone":null,"number":519,"html_url":"https://github.com/openframeworks/openFrameworks/issues/519","assignee":null,"title":"ofSetMinMagFilters() is confusingly named","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-03-31T17:49:33Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":721833,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-17T00:51:48Z","body":"movieGrabberExample => videoGrabberExample\r\nmoviePlayerExample => videoPlayerExample\r\n\r\nthere are probably other examples of this, but this one strikes me as particularly odd. there's probably some historical reason... :)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/510","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":510,"html_url":"https://github.com/openframeworks/openFrameworks/issues/510","assignee":null,"title":"movieGrabber/PlayerExamples are poorly named","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-03-22T06:47:02Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":693126,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-21T01:01:25Z","body":"i accidentally initialized my ofFbo with setupShadow() instead of setup(), and when i said draw() it caused EXC_BAD_ACCESS. draw() calls getTexture(), so maybe the best way to handle this is to put a check inside getTexture() like this:\r\n\r\n\tif(textures.size() == 0) {\r\n\t\tofLog(OF_LOG_ERROR, \"You must call ofFbo::setup() before you can use an FBO\");\r\n\t}\r\n\treturn textures[attachmentPoint];","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/507","comments":0,"milestone":null,"number":507,"html_url":"https://github.com/openframeworks/openFrameworks/issues/507","assignee":null,"title":"ofFbo::draw() causes EXC_BAD_ACCESS when setup() isn't called","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-03-21T01:01:25Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":689769,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-20T17:35:05Z","body":"i know the reason for this is because the mappings are OS and mouse dependent, and that it's GLUT slowing us down here, but i think we could at least add a guess like OF_MOUSE_LEFT = 0, OF_MOUSE_MIDDLE= 1, OF_MOUSE_RIGHT = 2, etc.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/503","comments":0,"milestone":null,"number":503,"html_url":"https://github.com/openframeworks/openFrameworks/issues/503","assignee":null,"title":"no OF_MOUSE_LEFT or OF_MOUSE_RIGHT","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-03-20T17:35:05Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":688955,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T15:48:41Z","body":"you need to use bUse3D flag but even then graphics aren't saved to pdf as they look on screen. \r\ntry the OF_ORIENTATION_90_LEFT or 90_RIGHT to reproduce. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/502","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":502,"html_url":"https://github.com/openframeworks/openFrameworks/issues/502","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"ofSetOrientation doesn't work for cairo","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-03-18T09:17:36Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":684091,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-18T03:56:02Z","body":"it looks like ofGLRenderer::drawString is currently overriding whatever the current blend mode is:\n\n\tglEnable(GL_BLEND);\n\tglBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);\n\nand then setting it back later.\n\ni'm guessing this is so the empty/alpha part of the bitmap font is drawn.\n\ninstead of using glBlendFunc i would suggest glAlphaFunc... but it looks like as of OpenGL ES 2.0 glAlphaFunc doesn't exist anymore :(\n\nnot sure what to do, but it's really weird to have ofSetColor(255) work, but not ofSetColor(255, 254). e.g.:\n\n\tofBackground(128);\n\tofEnableAlphaBlending();\n\tofSetColor(255, 254);\n\tofDrawBitmapString(\"255, 254\", 10, 20);\n\tofSetColor(255, 255);\n\tofDrawBitmapString(\"255, 255\", 10, 40);\n\tofDisableAlphaBlending();","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/501","comments":0,"milestone":null,"number":501,"html_url":"https://github.com/openframeworks/openFrameworks/issues/501","assignee":null,"title":"ofDrawBitmapString / ofGLRenderer::drawString doesn't work with alpha","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-03-18T03:54:34Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":683732,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-03T10:41:35Z","body":"right now ofImage::getPixelsRef() is always non-const, as well as ofImage::getPixels()","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/500","comments":4,"milestone":null,"number":500,"html_url":"https://github.com/openframeworks/openFrameworks/issues/500","assignee":null,"title":"missing const version of getPixelsRef()","labels":[],"closed_at":null,"created_at":"2011-03-14T19:14:21Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":672608,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=11 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4933'), ('content-length', '40272'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"b87c61471553096d60e5ff8b292ff704"'), ('date', 'Tue, 29 May 2012 19:27:20 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"milestone":null,"state":"open","user":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"osx movieplayer problem on reloading","html_url":"https://github.com/openframeworks/openFrameworks/issues/495","comments":0,"assignee":null,"updated_at":"2011-03-09T16:17:56Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=7&t=5729&view=unread#unread","number":495,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/495","labels":[{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":659446,"closed_at":null,"created_at":"2011-03-09T16:17:56Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"GLUT 007 hack","html_url":"https://github.com/openframeworks/openFrameworks/issues/491","comments":0,"assignee":null,"updated_at":"2011-03-04T14:44:53Z","body":"it seems that some commented defines are still being preprocessed and making gdb behave weird:\r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=4&t=5602&view=unread#unread","number":491,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/491","labels":[{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":646846,"closed_at":null,"created_at":"2011-03-04T14:44:53Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"close corners on basic shapes?","html_url":"https://github.com/openframeworks/openFrameworks/issues/490","comments":0,"assignee":null,"updated_at":"2011-03-03T16:35:17Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=8&t=5678&view=unread#unread\r\n\r\nperhaps use style.linewith? won't work if you use glLineWidth though","number":490,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/490","labels":[{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":643861,"closed_at":null,"created_at":"2011-03-03T16:35:17Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"893ec14dc008e3774afe5841115920d6","url":"https://api.github.com/users/jonbro","login":"jonbro","id":1597,"avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofOrientation incompatible with iOS addon","html_url":"https://github.com/openframeworks/openFrameworks/issues/486","comments":0,"assignee":{"gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-10T04:50:03Z","body":"the existing iOS orientation methods are not compatible with the virtual functions that they inherit from. The new virtuals use a ofOrientation enum, and the old functions use ints.\r\n\r\nThis issue was introduced in https://github.com/openframeworks/openFrameworks/commit/38011d54","number":486,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/486","labels":[{"color":"2babad","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":635112,"closed_at":null,"created_at":"2011-02-28T18:14:04Z"},{"milestone":{"state":"open","description":"","title":"0073 Release","due_on":"2012-07-30T07:00:00Z","closed_issues":0,"open_issues":5,"number":6,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":62090,"created_at":"2011-12-03T15:37:49Z"},"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"grabFrame/idleFrame deprecation","html_url":"https://github.com/openframeworks/openFrameworks/issues/484","comments":12,"assignee":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-04-24T21:04:32Z","body":"it would be nice to start deprecating grabFrame() and idleFrame() (but maybe wait a couple years to actually remove them) , and change the examples to only use update() and isFrameNew().","number":484,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/484","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"37c200","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy"}],"id":613171,"closed_at":null,"created_at":"2011-02-20T17:56:02Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"ace632f74988653fdbde09225134bfdd","url":"https://api.github.com/users/nemik","login":"nemik","id":62301,"avatar_url":"https://secure.gravatar.com/avatar/ace632f74988653fdbde09225134bfdd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofVideoPlayer bug when loading subsequent movies after the first one","html_url":"https://github.com/openframeworks/openFrameworks/issues/475","comments":0,"assignee":null,"updated_at":"2011-02-14T17:11:08Z","body":"Within 0062, inside libs/openFrameworks/video/ofVideoPlayer.cpp on line 314 there is a check for height and width not being 0, then \"bDoWeAlreadyHaveAGworld = true;\" is set. However, this prevents other movies after the first from being loaded into that instance of ofVideoPlayer. \r\nI have posted about this in the forum with a fix (to just remove that check) here: http://www.openframeworks.cc/forum/viewtopic.php?f=8&t=5222\r\n\r\nInside the latest code, it is within ofQuickTimePlayer.cpp https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/video/ofQuickTimePlayer.cpp#L281.","number":475,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/475","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":598097,"closed_at":null,"created_at":"2011-02-14T17:11:08Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"object init/load state is not consistently testable","html_url":"https://github.com/openframeworks/openFrameworks/issues/463","comments":0,"assignee":null,"updated_at":"2011-02-07T19:58:23Z","body":"I like to be able to know when an object has successfully initialized or loaded and OF provides for this, for the most part, but in an inconsistent manner ie\r\n\r\nofVideoGrabber::initGrabber() returns a bool, but ofVideoGrabber:bInitialized is protected and therefore not accessible\r\n\r\nwhile\r\n\r\nofTrueTypeFont::bLoadedOk is public, but ofTrueTypeFont::loadFont() returns void\r\n\r\nand\r\n\r\nofImage::loadImage() returns a bool and ofLoadImage::bAllocated() returns a bool, yet ofImage::setFromPixels() returns void\r\n\r\nI propose all loadable/initable objects have loading functions which always return a bool and a testable function (isInited(), isLoaded(), etc) for use after loading. Ideally, the testable functions would always be named the same ie myImage.isLoaded(), myVideoGrabber().isLoaded(), myFont.isLoaded() but of course a general name may not apply to all situations (myVideoGrabber.isInited() probably makes more sense).\r\n\r\nHell, all the load functions could be overloaded ie ofImage::load(string filename), ofImage::load(ofPixels pixels), ofImage::load(unsigned char* pixels) across different objects, ofTrueTypeFont::load(string filename), ofVideoGrabber::load(int w, int h, int deviceID). This consistency looks nice to anal me. but might be confusing to newbies and of course would break old code (unless wrapped for legacy compatibility). It seems a little annoying that every objects seems to have it's own way of checking this and that ...","number":463,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/463","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"37c200","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy"}],"id":581395,"closed_at":null,"created_at":"2011-02-07T19:58:23Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"8022cb5f529975afbc64cc9312008d8c","url":"https://api.github.com/users/nardove","login":"nardove","id":277690,"avatar_url":"https://secure.gravatar.com/avatar/8022cb5f529975afbc64cc9312008d8c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"OpenCV cvSobel() not working with latest master branch","html_url":"https://github.com/openframeworks/openFrameworks/issues/462","comments":0,"assignee":null,"updated_at":"2011-02-07T15:58:19Z","body":"Hi,\r\n\r\nI get the following error:\r\n// INIT OF ERROR\r\nOF_WARNING: ofBaseVideoPlayer::setPixelFormat not implemented\r\nOpenCV Error: Assertion failed (src.size() == dst.size() && src.channels() == dst.channels() && ((src.depth() == CV_8U && (dst.depth() == CV_16S || dst.depth() == CV_32F)) || (src.depth() == CV_32F && dst.depth() == CV_32F))) in cvSobel, file /Users/theo/Documents/CODE/__OPENFRAMEWORKS/gitOF/__BuildAllLibs/OpenCV-2.2.0/modules/imgproc/src/deriv.cpp, line 347\r\nterminate called after throwing an instance of 'cv::Exception'\r\n what(): /Users/theo/Documents/CODE/__OPENFRAMEWORKS/gitOF/__BuildAllLibs/OpenCV-2.2.0/modules/imgproc/src/deriv.cpp:347: error: (-215) src.size() == dst.size() && src.channels() == dst.channels() && ((src.depth() == CV_8U && (dst.depth() == CV_16S || dst.depth() == CV_32F)) || (src.depth() == CV_32F && dst.depth() == CV_32F)) in function cvSobel\r\n// END OF ERROR\r\n\r\nWhen I try to call the cvSobel method like this:\r\ncvSobel( grayImage.getCvImage(), grayImage.getCvImage(), 0, 1, 3 );\r\n\r\nThis works fine in 0062.\r\n\r\nCheers\r\n- rS","number":462,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/462","labels":[{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":580717,"closed_at":null,"created_at":"2011-02-07T15:58:19Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"get number of input devices and device IDs from ofVideoGrabber","html_url":"https://github.com/openframeworks/openFrameworks/issues/461","comments":0,"assignee":null,"updated_at":"2011-02-07T19:38:51Z","body":"Currently, the ofVideoGrabber can list devices to stdout, but does not return the number of available devices. I propose that either listDevices() return an int or a new function be added, something like getNumDevices() or a getDeviceNums() which returns a vector of valid device ids. This could be related to Arturo's Issue where the devices could be retrieved as strings. I think it makes sense to have these as static functions so that you could open all available cameras into an Array of ofVideoGrabbers by retrieving the number of devices and their ids to open them.","number":461,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/461","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":580556,"closed_at":null,"created_at":"2011-02-07T15:24:21Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"saveImage() and other save operations should create missing directories","html_url":"https://github.com/openframeworks/openFrameworks/issues/460","comments":8,"assignee":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-08T15:56:48Z","body":"i feel like it happens relatively often where i try to save an image (for example) and the parent directories don't exist, so it just fails without really saying anything.\r\n\r\nit would be nice if the dir(s) were just created automatically for you.","number":460,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/460","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":579790,"closed_at":null,"created_at":"2011-02-07T07:52:25Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofTexture::allocate not checking for unnecessary reallocation","html_url":"https://github.com/openframeworks/openFrameworks/issues/454","comments":0,"assignee":null,"updated_at":"2011-02-06T04:26:44Z","body":"ofPixels::allocate is smart in that it doesn't reallocate if you ask for the same size as what's already there. ofTexture should work the same way to avoid unnecessary overhead.","number":454,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/454","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":578069,"closed_at":null,"created_at":"2011-02-06T04:26:44Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofViewport doesn't work with ofSetOrientation","html_url":"https://github.com/openframeworks/openFrameworks/issues/449","comments":0,"assignee":null,"updated_at":"2011-02-02T00:03:09Z","body":"maybe a generic 'transformer' function would handle both this and mouse coordinates, and anything else? ofPoint ofGetAsbolutePosition(x,y)?","number":449,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/449","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":568540,"closed_at":null,"created_at":"2011-02-02T00:03:09Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"no way to get imageType of ofVideoGrabber","html_url":"https://github.com/openframeworks/openFrameworks/issues/446","comments":0,"assignee":null,"updated_at":"2011-01-31T19:26:41Z","body":"ofVideoGrabber has getOFPixels in the .h, but it isn't implemented in the .cpp.\r\n\r\nmaybe this is just a signal that ofPixels stuff needs to be resolved soon... :) i'd be glad to help with this if possible.","number":446,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/446","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":565122,"closed_at":null,"created_at":"2011-01-31T19:26:41Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofGetElapsedTimeMillis returns an int instead of unsigned long","html_url":"https://github.com/openframeworks/openFrameworks/issues/428","comments":0,"assignee":null,"updated_at":"2011-01-28T06:28:01Z","body":"the start time is stored internally as an unsigned long, but ofGetElapsedTimeMillis returns it as an int. ofGetElapsedTimef also does calculations using time as an int. this means time wraps around every (2^31 - 1) milliseconds in days = 24.8 days.\r\n\r\nas an unsigned long it would be (2^64 - 1) milliseconds in years = 584 million years :)","number":428,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/428","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"65a300","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize"}],"id":558215,"closed_at":null,"created_at":"2011-01-28T06:28:01Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"4fc88ba881fee72fc4c5de473dc2ebbf","url":"https://api.github.com/users/NickHardeman","login":"NickHardeman","id":142694,"avatar_url":"https://secure.gravatar.com/avatar/4fc88ba881fee72fc4c5de473dc2ebbf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Check ofShader Texture Wrap Parameters","html_url":"https://github.com/openframeworks/openFrameworks/issues/424","comments":1,"assignee":null,"updated_at":"2011-12-02T21:05:54Z","body":"I thought checking for custom texture wrapping in ofShader might be useful. Not sure how to add a label to this :/\n\n#include ofGraphics.h\n\nvoid setUniformTexture(const char* name, ofBaseHasTexture& img, int textureLocation=-1);\nvoid setUniformTexture(const char* name, ofTexture& img, int textureLocation=-1);\n\nvoid ofShader::setUniformTexture(const char* name, ofTexture& tex, int textureLocation) {\n\tif(bLoaded) {\n\t\t\n\t\tGLfloat wrapS = -1;\n\t\tGLfloat wrapT = -1;\n\t\t\n\t\tif (ofGetUsingCustomTextureWrap()) {\n\t\t\tglGetTexParameterfv(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, &wrapS);\n\t\t\tglGetTexParameterfv(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, &wrapT);\n\t\t}\n\t\t\n\t\tofTextureData texData = tex.getTextureData();\n\t\tif (textureLocation < 0) textureLocation = texData.textureID;\n\t\tglActiveTexture(GL_TEXTURE0 + textureLocation);\n\t\tglEnable(texData.textureTarget);\n\t\t\n\t\tif(wrapS > 0) glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, wrapS);\n\t\tif(wrapT > 0) glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, wrapT);\n\t\t\n\t\tglBindTexture(texData.textureTarget, texData.textureID);\n\t\tglDisable(texData.textureTarget);\n\t\tsetUniform1i(name, texData.textureID);\n\t\tglActiveTexture(GL_TEXTURE0);\n\t}\n}","number":424,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/424","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":556923,"closed_at":null,"created_at":"2011-01-27T19:43:31Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"problem with reloading movies in osx","html_url":"https://github.com/openframeworks/openFrameworks/issues/423","comments":0,"assignee":null,"updated_at":"2011-01-24T22:34:29Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=8&t=5222","number":423,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/423","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"2a8296","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS"}],"id":548302,"closed_at":null,"created_at":"2011-01-24T22:34:29Z"},{"milestone":{"state":"open","description":"","title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"number":5,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61810,"created_at":"2011-12-02T15:29:48Z"},"state":"open","user":{"gravatar_id":"117a7eecfee7c7f7e954623fd96e1b6e","url":"https://api.github.com/users/snibbe","login":"snibbe","id":581517,"avatar_url":"https://secure.gravatar.com/avatar/117a7eecfee7c7f7e954623fd96e1b6e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Retina display support **that doesn't crash devices!** with backward compatibility to OS 3.0","html_url":"https://github.com/openframeworks/openFrameworks/issues/421","comments":2,"assignee":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2011-12-05T22:03:15Z","body":"Hi guys,\r\n\r\nI posted to the OF forum a solution back in August to support retina display with backward compatibility to pre-OS 4.0 devices:\r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=25&t=4185&start=15\r\n\r\nIf it's still outstanding, here's the solution!\r\n\r\nEAGLView.mm, initWithFrame, after the eaglLayer.drawableProperties assignment, add:\r\n\r\n if ([[UIScreen mainScreen] respondsToSelector:@selector(scale)]) {\r\n if ([[UIScreen mainScreen] scale] > 1) {\r\n // code below doesn't work on iPad 3.2 OS and below, but doesn't need to because scale is 1\r\n [self setContentScaleFactor:[[UIScreen mainScreen] scale]];\r\n }\r\n }\r\n\r\nofAppiPhoneWindow.mm, timerLoop, after [ofxiPhoneGetGLView() startRender]; add:\r\n\r\n int ofwidth = ofGetWidth();\r\n int ofheight = ofGetHeight();\r\n \r\n if ([[UIScreen mainScreen] respondsToSelector:@selector(scale)]) {\r\n ofwidth *= [[UIScreen mainScreen] scale];\r\n ofheight *= [[UIScreen mainScreen] scale];\r\n }\r\n\r\nthen change the glViewport calls:\r\n\r\n\t// this could be taken out and included in ofAppBaseWIndow\r\n\tif(orientation == OFXIPHONE_ORIENTATION_PORTRAIT || orientation == OFXIPHONE_ORIENTATION_UPSIDEDOWN)\r\n\t\tglViewport( 0, 0, ofwidth, ofheight );\r\n\telse\r\n\t\tglViewport( 0, 0, ofheight, ofwidth );","number":421,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/421","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"2a8296","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS"}],"id":548070,"closed_at":null,"created_at":"2011-01-24T20:52:18Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"something to wrap glMultMatrixf","html_url":"https://github.com/openframeworks/openFrameworks/issues/418","comments":0,"assignee":null,"updated_at":"2011-01-22T15:57:37Z","body":"suggestions:\r\n\r\n ofPopMatrix(ofMatrix4x4 m)\r\n\r\n ofMultMatrix(ofMatrix4x4 m)\r\n\r\n ofMatrix4x4::apply();\r\n ofMatrix4x4::push();","number":418,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/418","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":543729,"closed_at":null,"created_at":"2011-01-22T15:57:37Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"3D isn't scale invariant in certain parts","html_url":"https://github.com/openframeworks/openFrameworks/issues/417","comments":0,"assignee":null,"updated_at":"2011-01-22T15:24:07Z","body":"e.g.\r\n\r\n void ofEasyCam::reset() {\r\n\ttarget.resetTransform();\r\n\tdistance = 100;\r\n }\r\n\r\nofNode's\r\n\tvirtual void customDraw() {\r\n\t\tofBox(10);\r\n\t\tofDrawAxis(20);\r\n\t}\r\n\r\nsuggestions:\r\n\r\nglobal variable called something like 'base3DScaleFactor = 10.0f' which will affect all of these current constant scale factors","number":417,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/417","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":543694,"closed_at":null,"created_at":"2011-01-22T15:24:07Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","url":"https://api.github.com/users/vanderlin","login":"vanderlin","id":149997,"avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Simulator not working with any examples ","html_url":"https://github.com/openframeworks/openFrameworks/issues/414","comments":3,"assignee":{"gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-10T05:00:35Z","body":"Getting this error after the app launches in simulator mode \r\n\r\nDetected an attempt to call a symbol in system libraries that is not present on the iPhone:\r\n\r\n","number":414,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/414","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"2babad","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":539979,"closed_at":null,"created_at":"2011-01-20T20:17:35Z"},{"milestone":{"state":"open","description":"","title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"number":5,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61810,"created_at":"2011-12-02T15:29:48Z"},"state":"open","user":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofCamera::setPan is broken","html_url":"https://github.com/openframeworks/openFrameworks/issues/413","comments":1,"assignee":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-14T15:11:06Z","body":"","number":413,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/413","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"31e03a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed"}],"id":539915,"closed_at":null,"created_at":"2011-01-20T20:01:00Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"add setMultisampling method to glutWindow","html_url":"https://github.com/openframeworks/openFrameworks/issues/412","comments":0,"assignee":null,"updated_at":"2011-01-20T19:33:30Z","body":"multisampling is now working in linux through the display string option. perhaps we could add a method to easily set it if it also works on win/osx","number":412,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/412","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"244569","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows"}],"id":539845,"closed_at":null,"created_at":"2011-01-20T19:33:30Z"},{"milestone":{"state":"open","description":"","title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"number":5,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61810,"created_at":"2011-12-02T15:29:48Z"},"state":"open","user":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofCamera / ofEasyCamera does not work correctly for iPhone / iPad","html_url":"https://github.com/openframeworks/openFrameworks/issues/410","comments":2,"assignee":{"gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-14T15:11:06Z","body":"Needs to take into account the rotation and the flipping happening in ofAppiPhoneWindow::timerLoop() \n\nAlso the internal call to ofViewport causes clipping in horizontal mode. \n\nIts currently very difficult to setup the camera correctly for iPad / iPhone - would be great if the default for ofCamera would be to start with the typical OF camera view. ","number":410,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/410","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"2babad","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"31e03a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed"}],"id":539744,"closed_at":null,"created_at":"2011-01-20T18:59:10Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","url":"https://api.github.com/users/vanderlin","login":"vanderlin","id":149997,"avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofEnableLighting","html_url":"https://github.com/openframeworks/openFrameworks/issues/406","comments":0,"assignee":null,"updated_at":"2011-01-19T19:39:37Z","body":"ofLight bug not sure what the ios equivalent is..\r\n\r\nglColorMaterial(GL_FRONT_AND_BACK, GL_AMBIENT_AND_DIFFUSE); is not supported in IOS","number":406,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/406","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":537416,"closed_at":null,"created_at":"2011-01-19T19:39:36Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofViewport doesn't match rest of openFrameworks coordinates","html_url":"https://github.com/openframeworks/openFrameworks/issues/405","comments":0,"assignee":null,"updated_at":"2011-01-19T13:24:54Z","body":"Suggest change line 126 of ofGraphics.h to\r\n\tglViewport(x, ofGetHeight() - y - height, width, height);\r\n\r\nto be in line with rest of openFrameworks coordinate system\r\ne.g. ofRect(myRect) matches ofViewport(myRect)\r\n","number":405,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/405","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"31e03a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed"}],"id":536614,"closed_at":null,"created_at":"2011-01-19T13:24:53Z"}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=12 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4932'), ('content-length', '38352'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"679d499a026b6f6d6a1e20857a7392dc"'), ('date', 'Tue, 29 May 2012 19:27:21 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-01-17T23:39:31Z","body":"it should be only in the implementations and queried by the grabber/player in case an implementation doesn't support a format if not the app can crash or have really weird results","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/403","comments":0,"milestone":null,"number":403,"html_url":"https://github.com/openframeworks/openFrameworks/issues/403","assignee":null,"title":"setPixelFormat shouldn't be stored in videoGrabber/Player","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-17T23:39:31Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":532954,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-17T16:37:42Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/400","comments":0,"milestone":null,"number":400,"html_url":"https://github.com/openframeworks/openFrameworks/issues/400","assignee":null,"title":"ofTTF should have setAnchorPercent so you can draw strings centered, right aligned etc","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography","color":"DDDDDD"}],"closed_at":null,"created_at":"2011-01-17T16:37:42Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":532096,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-03-20T17:33:14Z","body":"every frame, it should update the pmouse value. so if you don't move the mouse, the pmouse value is equal to the current value.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/391","comments":1,"milestone":null,"number":391,"html_url":"https://github.com/openframeworks/openFrameworks/issues/391","assignee":null,"title":"ofGetPreviousMouseX/Y() does not update per frame","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-16T07:21:15Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":529705,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-03-20T17:32:59Z","body":"this is a limitation to glut, but it might be hackable on each system separately.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/389","comments":1,"milestone":null,"number":389,"html_url":"https://github.com/openframeworks/openFrameworks/issues/389","assignee":null,"title":"mouse position doesn't update until mouse is moved","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-16T07:11:53Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":529700,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-03-13T21:10:48Z","body":"following error appears when i try to load an image; commenting out the call to loadImage(\"...\") makes the error go away.\n\n Undefined symbols:\n \"std::basic_ostream >& std::__ostream_insert >(std::basic_ostream >&, char const*, int)\", \n referenced from:\n Poco::Net::HTTPClientSession::proxyAuthenticateImpl(Poco::Net::HTTPRequest&)in PocoNet.a(HTTPClientSession.o)\n Poco::Net::HTTPClientSession::proxyAuthenticateImpl(Poco::Net::HTTPRequest&)in PocoNet.a(HTTPClientSession.o)\n Poco::Net::HTTPRequest::write(std::basic_ostream >&) constin PocoNet.a(HTTPRequest.o)\n Poco::Net::HTTPRequest::write(std::basic_ostream >&) constin PocoNet.a(HTTPRequest.o)\n Poco::Net::HTTPRequest::write(std::basic_ostream >&) constin PocoNet.a(HTTPRequest.o)\n Poco::Net::MessageHeader::write(std::basic_ostream >&) constin PocoNet.a(MessageHeader.o)\n Poco::Net::MessageHeader::write(std::basic_ostream >&) constin PocoNet.a(MessageHeader.o)\n Poco::Net::HTTPResponse::write(std::basic_ostream >&) constin PocoNet.a(HTTPResponse.o)\n Poco::Net::HTTPResponse::write(std::basic_ostream >&) constin PocoNet.a(HTTPResponse.o)\n\nld: symbol(s) not found\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/387","comments":1,"milestone":null,"number":387,"html_url":"https://github.com/openframeworks/openFrameworks/issues/387","assignee":null,"title":"Linker error when loading image (Poco::Net related?)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-16T05:57:51Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"id":529646,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-15T17:01:08Z","body":"would be nice if it was a float (0-1) and not an int(0-100) for standardization with every other audio thing in the universe aside from quicktime","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/375","comments":2,"milestone":null,"number":375,"html_url":"https://github.com/openframeworks/openFrameworks/issues/375","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"ofVideoPlayer setVolume uses an int","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"closed_at":null,"created_at":"2011-01-15T23:03:57Z","state":"open","user":{"url":"https://api.github.com/users/stfj","gravatar_id":"b089227a1748a2d70cdfc4ef00b325ad","login":"stfj","avatar_url":"https://secure.gravatar.com/avatar/b089227a1748a2d70cdfc4ef00b325ad?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":177578},"id":529268,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-14T19:30:31Z","body":"glDrawBitmapString doesn't work when GL_LIGHTING is enabled.\r\n\r\nwell, it works... but it is black because it isn't reflecting any light. regardless of the ofSetColor.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/357","comments":0,"milestone":null,"number":357,"html_url":"https://github.com/openframeworks/openFrameworks/issues/357","assignee":null,"title":"glDrawBitmapString vs GL_LIGHTING","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-14T19:30:31Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":527591,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-14T01:33:38Z","body":"some of the core functions only work with 2d points, others only with 3d points, some work with both. but they all take ofPoints.\r\n\r\nit's good for teaching purposes to have ofPoints because you don't have to explain what a 'vector' is, but it's unclear for advanced users whether the functions take 2d or 3d points...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/347","comments":0,"milestone":null,"number":347,"html_url":"https://github.com/openframeworks/openFrameworks/issues/347","assignee":null,"title":"none of the core functions report how many dimensions they work for","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-01-14T01:33:38Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":526094,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-13T16:16:40Z","body":"e.g., GL_DEPTH_TEST.\r\n\r\none of the reasons for this is that it's not obvious to newbies what common features are available.\r\n\r\nanother is that i've seen lots of people write GL_DEPTH instead, which obviously doesn't work.\r\n\r\nthere might be some others too, see processing's hint():\r\n\r\nhttp://processing.org/reference/hint_.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/340","comments":0,"milestone":null,"number":340,"html_url":"https://github.com/openframeworks/openFrameworks/issues/340","assignee":null,"title":"OF wrapper for basic gl functions that aren't intuitive to newbies","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"closed_at":null,"created_at":"2011-01-13T16:16:40Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":524875,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-27T13:35:42Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/337","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":337,"html_url":"https://github.com/openframeworks/openFrameworks/issues/337","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"ofFileDialog allow folder selection ( works on os x ) needs code for win and linux","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-01-13T05:21:53Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":523837,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T15:11:06Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/330","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":330,"html_url":"https://github.com/openframeworks/openFrameworks/issues/330","assignee":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"title":"OpenCv 2.2 for Win ( CB and VS )","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"}],"closed_at":null,"created_at":"2011-01-12T19:09:37Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":522789,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-04T14:06:34Z","body":"currentStyle stores everything about the current style, so it can be used rather than things like drawMode for tracking how things should currently be draw.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/325","comments":1,"milestone":null,"number":325,"html_url":"https://github.com/openframeworks/openFrameworks/issues/325","assignee":null,"title":"drawMode can be deprecated, currentStyle.bFill should be used instead","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-12T15:41:11Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":522255,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-12T15:34:48Z","body":"ordering for code completion is a little weird.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/324","comments":0,"milestone":null,"number":324,"html_url":"https://github.com/openframeworks/openFrameworks/issues/324","assignee":null,"title":"ofPushView/ofPopView appear before ofPushMatrix/ofPopMatrix","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"}],"closed_at":null,"created_at":"2011-01-12T15:34:48Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":522231,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-10T22:30:48Z","body":"under the /video directory","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/311","comments":0,"milestone":null,"number":311,"html_url":"https://github.com/openframeworks/openFrameworks/issues/311","assignee":null,"title":"openFrameworksLib has ofQtUtils included twice","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-10T22:30:48Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":518434,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-10T06:36:27Z","body":"better to use aggregation (helper classes/functions) if necessary for common functionality that have implementation in those classes. making them pure abstract classes will avoid problems with multiple inheritance and easier to extend in case of different behaviour","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/305","comments":0,"milestone":null,"number":305,"html_url":"https://github.com/openframeworks/openFrameworks/issues/305","assignee":null,"title":"no implementation in ofBaseTypes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-10T06:36:27Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":516844,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-05T21:59:59Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/302","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":302,"html_url":"https://github.com/openframeworks/openFrameworks/issues/302","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"Remove Poco CppUnit from all projects ( done on os x )","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-01-10T02:39:28Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":516565,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T01:06:09Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/299","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","closed_issues":0,"number":6,"title":"0073 Release","due_on":"2012-07-30T07:00:00Z","open_issues":5,"created_at":"2011-12-03T15:37:49Z","state":"open","description":"","id":62090},"number":299,"html_url":"https://github.com/openframeworks/openFrameworks/issues/299","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"freetype-2.4.4 for linux","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-01-10T02:38:08Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":516560,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T01:06:08Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/298","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","closed_issues":0,"number":6,"title":"0073 Release","due_on":"2012-07-30T07:00:00Z","open_issues":5,"created_at":"2011-12-03T15:37:49Z","state":"open","description":"","id":62090},"number":298,"html_url":"https://github.com/openframeworks/openFrameworks/issues/298","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"freetype-2.4.4 for windows","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-01-10T02:37:49Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":516559,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-05T21:59:27Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/296","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":296,"html_url":"https://github.com/openframeworks/openFrameworks/issues/296","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"FreeImage 3141 build for windows","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-01-10T02:36:58Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":516556,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-09T20:46:43Z","body":"I think the pixeltype, the gltypeinternal and the gltype should be accessible to the user as well as the loadData(void * data, int w, int h, int glDataType) which is actually protected.\r\n\r\nActual implementation is only limited to a few choice of internalFormat which lead to choice of pixeltype and gltype. It thus doesn't allow from user specific type.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/292","comments":0,"milestone":null,"number":292,"html_url":"https://github.com/openframeworks/openFrameworks/issues/292","assignee":null,"title":"ofTexture should be more flexible","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-01-09T20:46:43Z","state":"open","user":{"url":"https://api.github.com/users/I33N","gravatar_id":"ba8d7c3b4532d3747c30b9be91dc20d5","login":"I33N","avatar_url":"https://secure.gravatar.com/avatar/ba8d7c3b4532d3747c30b9be91dc20d5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":520375},"id":516071,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T10:49:15Z","body":"ofImage::getWidth()/getHeight() are just getters that do absolutely nothing but return a copy of the width and height. these methods should be marked const.\r\n\r\n[added]: there are hacks inside ofxCv that i've had to make because getWidth/getHeight are not const correct. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/288","comments":6,"milestone":null,"number":288,"html_url":"https://github.com/openframeworks/openFrameworks/issues/288","assignee":null,"title":"const correctness - add const to getWidth/getHeight","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-08T02:14:03Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":513779,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2010-11-30T05:13:10Z","body":"This is giving me some crashes. There needs to be a way to disable this when making custom windows. I have tried to do atexit(NULL); but the callback in ofRunApp(ofBaseApp * OFSA) is still being called. \r\n\r\nmaybe something like:\r\n\r\nvoid ofRunApp(ofBaseApp * OFSA, bool useExitCallback);\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/275","comments":0,"milestone":null,"number":275,"html_url":"https://github.com/openframeworks/openFrameworks/issues/275","assignee":null,"title":"atexit(ofExitCallback);","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-11-30T05:13:10Z","state":"open","user":{"url":"https://api.github.com/users/vanderlin","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":149997},"id":445829,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-03-17T02:02:25Z","body":"bottom left corner is inconsistent with every other drawing command in OF, should be top left instead.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/271","comments":7,"milestone":null,"number":271,"html_url":"https://github.com/openframeworks/openFrameworks/issues/271","assignee":null,"title":"ofDrawBitmapString draws from bottom left","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-11-22T21:30:40Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":433297,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-06-03T19:04:08Z","body":"test if this is really useful:\r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=7&t=4889&view=unread#unread\r\n\r\nhe adds a queue just before the color conversion","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/265","comments":0,"milestone":null,"number":265,"html_url":"https://github.com/openframeworks/openFrameworks/issues/265","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"linux videograbber stopping after some time","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2010-11-18T12:07:46Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":426050,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-19T22:47:21Z","body":"ofClear(r,g,b) is inconsistent with ofBackground(r,g,b) because the alpha is 0 by default -- meaning you always have to explicitly declare the alpha to clear the background.\r\n\r\nfurthermore, because all the arguments have default values there is not/cannot exist an ofClear(gray, alpha) to match ofSetColor style","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/264","comments":5,"milestone":null,"number":264,"html_url":"https://github.com/openframeworks/openFrameworks/issues/264","assignee":null,"title":"ofClear uses inconsistent arguments","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2010-11-18T06:15:47Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":425675,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=13 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4931'), ('content-length', '46291'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"bf7e6718fe6b733d04e77e00e220150f"'), ('date', 'Tue, 29 May 2012 19:27:22 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-12-05T21:58:33Z","body":"A lot of OF files are including ofMain / ofConstants.h - this makes compiles super slow. Try to have files only include what they need. Or find a way to break things up into the most often used ( windows.h etc ) and less used. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/255","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":255,"html_url":"https://github.com/openframeworks/openFrameworks/issues/255","assignee":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"title":"COMPILE SPEED UP - cleanup internal includes to avoid ofMain.h and ofConstants.h","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2010-11-11T21:14:05Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":413771,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T20:11:33Z","body":"ofHideCursor()/ofShowCursor()\r\n\r\nofEnableArbTex()\r\nofEnableSetupScreen()\r\nofEnableDataPath()\r\nofEnableAlphaBlending()\r\nofEnableSmoothing()\r\n\r\nofSetFullscreen() + ofToggleFullscreen()\r\nofSetVerticalSync()\r\n\r\netc.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/249","comments":1,"milestone":null,"number":249,"html_url":"https://github.com/openframeworks/openFrameworks/issues/249","assignee":null,"title":"normalize option nomenclature (hide/enable/set/etc.)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2010-11-03T22:52:08Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":399214,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T22:03:41Z","body":"some video to test:\r\n\r\nmmsh://live.camstreams.com/cscamglobal16?MSWMExt=.asf\r\n\r\nit works ok with totem so it should be a problem in ofGstUtils","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/245","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":245,"html_url":"https://github.com/openframeworks/openFrameworks/issues/245","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"gstreamer problems with streaming of microsoft video","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2010-10-13T16:33:06Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":360885,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-13T20:13:07Z","body":"I found an annoying bug in ofVideoPlayer.\nThis module do not like to be dynamically created or destroyed.\nCheck this little example :\n\nhttp://knu.free.fr/bug_ofVideoPlayer.zip\n\nLeft-click to create an object playing video.\nRight-click to suppress the last video.\n\nhere are the phenomenons I am facing on my Win7 machine :\n\n- \nIf you create an object, and then you suppress it, and then try to create an object again, the app will crash.\n\n- \nIf you create some objects (lets say 8), and then you suppress all of them, the app will crash before the last one (not always, but most of the time).\n\n\n\nNow in OF source tree, try replacing ofVideoPlayer.cpp with FIX_ofVideoPlayer.cpp (at the root of the zip)\nRebuild the project.\nNow everything should be working as expected.\n\n\nThe modifications I made in the source are marked by : //###############\n\nI do not have time to fully read and understand the quicktime API, so there are chances this workaround is fucking dirty.\nBut at least it seems to work.\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/244","comments":1,"milestone":null,"number":244,"html_url":"https://github.com/openframeworks/openFrameworks/issues/244","assignee":null,"title":"bug in ofVideoPlayer","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2010-10-11T19:56:46Z","state":"open","user":{"url":"https://api.github.com/users/fmauclere","avatar_url":"https://secure.gravatar.com/avatar/1c7dcbab3712f1a4d90bd2c3aa9a3e3d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"1c7dcbab3712f1a4d90bd2c3aa9a3e3d","login":"fmauclere","id":435720},"id":357395,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-10T05:06:06Z","body":"Check out this code - also check if latest ffmpeg is better optimized for iphone.\r\nhttp://github.com/jgh-/FFmpeg-for-iOS","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/240","comments":0,"milestone":null,"number":240,"html_url":"https://github.com/openframeworks/openFrameworks/issues/240","assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"title":"iphone video player - ffmpeg and audioqueues","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-10-06T17:19:57Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":349886,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-10T05:08:56Z","body":"XCode: 3.2.4\nOF: github master @24 Sep 2010\nCompiled as: device base SDK 4.1 release arm7 deployment target 3.2\n\nWeird error: Build ofAudioOutputExample. Add a void testApp::exit() to see if it is called. Run app on ipod touch 2010 version with 4.1 installed.\n\nApp runs OK yet pressing the exit button on front of device quits the app, but xcode keeps running. Digging in a bit it appears not only testApp::exit, but ofExitCallback is not getting called.\n\nSwitch to iPad (no other settings changed) and app runs fine, and exits properly.\n\nSwitch to BaseSDK 3.2 and example runs fine and exits fine on both iPad and iPod.\n\nIdeas? Is this just me? I'm fairly new to OF, XCode and iPhone\n\n[edit]\nOK I worked out that pressing the \"close\" button in 4.1 calls applicationWillResignActive in ofxiPhoneAppDelegate.mm. As a hacky workaround as my app just needs to exit, not sit in background, I added exit(0); to the end of applicationWillResignActive and it seems to work.\n\nWould like to know how to do this properly though.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/236","comments":1,"milestone":null,"number":236,"html_url":"https://github.com/openframeworks/openFrameworks/issues/236","assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"title":"ofExitCallback not being called on iphone4.1?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-09-25T01:55:49Z","state":"open","user":{"url":"https://api.github.com/users/DavidDC","avatar_url":"https://secure.gravatar.com/avatar/a6fdad0c31fcd273a1ba89434fec0419?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"a6fdad0c31fcd273a1ba89434fec0419","login":"DavidDC","id":415101},"id":332379,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-04-19T00:32:33Z","body":"related to #221: texData.bAllocated is only used in the isAllocated method which can be changed from:\r\n\r\n bool ofTexture::bAllocated(){\r\n return texData.bAllocated;\r\n }\r\n\r\nto\r\n\r\n bool ofTexture::bAllocated(){\r\n return texData.textureID!=0;\r\n }\r\n\r\navoiding problems like #221 since we don't have two flags for the same thing","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/228","comments":4,"milestone":null,"number":228,"html_url":"https://github.com/openframeworks/openFrameworks/issues/228","assignee":null,"title":"remove bAllocated in ofTexture?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2010-09-09T14:20:55Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":309191,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T15:45:27Z","body":"Segfault when playing .ogv files on 64 bit linux.\nSee forum post - http://www.openframeworks.cc/forum/viewtopic.php?f=7&t=4582","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/227","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":227,"html_url":"https://github.com/openframeworks/openFrameworks/issues/227","assignee":null,"title":"Ubuntu 64-bit conflict with FMOD when playing ogg theora files","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2010-09-08T14:54:33Z","state":"open","user":{"url":"https://api.github.com/users/pierrep","avatar_url":"https://secure.gravatar.com/avatar/be11c9de8242e7aef0446eceaa289e01?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"be11c9de8242e7aef0446eceaa289e01","login":"pierrep","id":392160},"id":307684,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-08-31T10:54:19Z","body":"It would be nice to have:\r\n\r\n\tconst ofxVec2f xunit2f(1, 0), yunit2f(0, 1);\r\n\tconst ofxVec3f xunit3f(1, 0, 0), yunit3f(0, 1, 0), zunit3f(0, 0, 1);\r\n\r\nOr something similar that allows for more elegant notation when you're multiplying or adding by an axis.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/225","comments":0,"milestone":null,"number":225,"html_url":"https://github.com/openframeworks/openFrameworks/issues/225","assignee":null,"title":"ofxVectorMath constants","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-08-31T10:54:19Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":295913,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-26T18:37:47Z","body":"can this be useful?\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=25&t=4500\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/224","comments":1,"milestone":null,"number":224,"html_url":"https://github.com/openframeworks/openFrameworks/issues/224","assignee":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"title":"gaussian noise","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"}],"closed_at":null,"created_at":"2010-08-26T10:21:24Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":290973,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-10-17T13:58:53Z","body":"ofxOsc causes a memory access violation in VS2008, when you use sendMessage(ofxOscMessage) from within a class.\r\nNo error when you run that from main ofApp","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/214","comments":1,"milestone":null,"number":214,"html_url":"https://github.com/openframeworks/openFrameworks/issues/214","assignee":null,"title":"ofxOsc memory access violation. namespace issue?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-08-04T05:59:22Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":268332,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-14T15:12:26Z","body":"e) get arturo's script to work, or rewrite a new one to just clobber a given directory (and not pull from git, etc as it's doing now). \r\n\r\ntheo - might be good to have two scripts?\r\n1) to pull from git \r\n2) to remove everything not related to a platform - or maybe better just copies the files into a folder for that platform. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/199","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":199,"html_url":"https://github.com/openframeworks/openFrameworks/issues/199","assignee":null,"title":"script that doesn't pull everything from git","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-06-01T13:28:54Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":211418,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-05-25T14:54:52Z","body":"\r\nas per: \r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=8&t=3962&p=20661#p20661\r\n\r\nwe should explain how to use it properly. \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/194","comments":0,"milestone":null,"number":194,"html_url":"https://github.com/openframeworks/openFrameworks/issues/194","assignee":null,"title":"ofGetAppPtr documentation is wrong ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"closed_at":null,"created_at":"2010-05-25T14:54:52Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":205935,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:58:22Z","body":"http://www.glfw.org/release-2.6.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/193","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":193,"html_url":"https://github.com/openframeworks/openFrameworks/issues/193","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"look at glfw - just got updated","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-05-23T21:04:25Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":204247,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T19:20:16Z","body":"I had the L.A.S.E.R. tag software up and running great on my new MacBook Pro but recently my computer did a software update and now something is wrong and I can't properly use the program. I have snow leopard 10.6.3 OS. I'm not totally sure if it was the auto update that caused the issue but it seems like it stopped working after the update. Below I listed the suspected updates. Seems weird to me 2 digital camera RAW updates.\r\n\r\n3/27/10 Digital Camera RAW update 2.7\r\n3/27/10 Safari 4.0.5\r\n3/27/10 Digital Camera RAW update 3.1\r\n3/27/10 iMovie update 8.0.6\r\n\r\n0 com.apple.QuickTime \t0x9408e179 QTMLGrabMutex + 18\r\n1 com.apple.QuickTime \t0x9421b6a3 QTWorkContextCopyForMediaContextID + 28\r\n2 ...uickTimeStreaming.component\t0x14f77c15 HTTPDhlr_CheckForFatalError + 254\r\n3 ...uickTimeStreaming.component\t0x14f77cc6 HTTPDhlr_ReadSYNC + 165\r\n4 ...uickTimeStreaming.component\t0x14f7ab01 HTTPDataHandler_ScheduleData64 + 452\r\n5 ...ple.CoreServices.CarbonCore\t0x949a2d05 callComponentStorage_4444444 + 63\r\n6 ...ple.CoreServices.CarbonCore\t0x949976f0 CallComponentFunctionCommonWithStorage(char**, ComponentParameters*, long (*)(), unsigned long) + 54\r\n7 ...uickTimeStreaming.component\t0x14f784c7 HTTPDataHandler_ComponentDispatch + 110\r\n8 ...ple.CoreServices.CarbonCore\t0x9498fd87 CallComponentDispatch + 29\r\n9 com.apple.QuickTime \t0x94093540 DataHScheduleData64 + 73\r\n10 com.apple.QuickTime \t0x940b5704 NewMovieFromDataRefPriv_priv + 8296\r\n11 com.apple.QuickTime \t0x9419e613 NewMovieFromDataRef_priv + 54\r\n12 com.apple.QuickTime \t0x942fb95e NewMovieFromDataRef + 52\r\n13 com.yourcompany.openFrameworks\t0x0000aa2a createMovieFromURL(std::string, MovieType**&) + 112\r\n14 com.yourcompany.openFrameworks\t0x0000abe2 ofVideoPlayer::loadMovie(std::string) + 182\r\n15 com.yourcompany.openFrameworks\t0x0002fe03 appController::setup() + 2169\r\n16 com.yourcompany.openFrameworks\t0x00002864 ofRunApp(ofSimpleApp*) + 170\r\n17 com.yourcompany.openFrameworks\t0x0003dc06 main + 90\r\n18 com.yourcompany.openFrameworks\t0x00001da2 _start + 216\r\n19 com.yourcompany.openFrameworks\t0x00001cc9 start + 41","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/182","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":182,"html_url":"https://github.com/openframeworks/openFrameworks/issues/182","assignee":null,"title":"ofVideoPlayer - createMovieFromURL broken in 10.6.3 with specific updates?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-04-15T16:20:25Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":172424,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-04-14T15:48:19Z","body":"can we add moments to the blob. \n\nadd CvMoments moments to blob class\n\nand in ofxCvContourFinder.cpp line 119\n\n\t blobs[i].moments.m00 = myMoments->m00;\n\t\tblobs[i].moments.m10 = myMoments->m10;\n\t\tblobs[i].moments.m01 = myMoments->m01;\n\t\tblobs[i].moments.m20 = myMoments->m20;\n\t\tblobs[i].moments.m11 = myMoments->m11;\n\t\tblobs[i].moments.m02 = myMoments->m02;\n\t\tblobs[i].moments.m30 = myMoments->m30;\n\t\tblobs[i].moments.m21 = myMoments->m21;\n\t\tblobs[i].moments.m12 = myMoments->m12;\n\t\tblobs[i].moments.m03 = myMoments->m03;\n\t\t\n\t\tblobs[i].moments.mu20 = myMoments->mu20;\n\t\tblobs[i].moments.mu11 = myMoments->mu11;\n\t\tblobs[i].moments.mu02 = myMoments->mu02;\n\t\tblobs[i].moments.mu30 = myMoments->mu30;\n\t\tblobs[i].moments.mu21 = myMoments->mu21;\n\t\tblobs[i].moments.mu12 = myMoments->mu12;\n\t\tblobs[i].moments.mu03 = myMoments->mu03;\n\n\nthis is good for finding the angle and other info about the contour.\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/181","comments":2,"milestone":null,"number":181,"html_url":"https://github.com/openframeworks/openFrameworks/issues/181","assignee":null,"title":"ofxCvBlobs","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2010-04-14T15:42:22Z","state":"open","user":{"url":"https://api.github.com/users/vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","id":149997},"id":171615,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-29T15:04:04Z","body":"Buffer is 512 but should be 276 ( or something )\r\nSetting it to 256 says the buffer size should be 176 ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/178","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":178,"html_url":"https://github.com/openframeworks/openFrameworks/issues/178","assignee":null,"title":"iPhone sound bug with 1st gen ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-04-11T10:18:58Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":169176,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T19:18:14Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/175","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":175,"html_url":"https://github.com/openframeworks/openFrameworks/issues/175","assignee":null,"title":"bring examples up to date - make sexy","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"}],"closed_at":null,"created_at":"2010-04-06T19:44:04Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166214,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T19:14:03Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/174","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":174,"html_url":"https://github.com/openframeworks/openFrameworks/issues/174","assignee":null,"title":"vertical sync on for mac by default","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-04-06T19:43:21Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166212,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:58:10Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/173","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":173,"html_url":"https://github.com/openframeworks/openFrameworks/issues/173","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"ofAlphaBlending default on","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2010-04-06T19:42:34Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166211,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:57:50Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/172","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":172,"html_url":"https://github.com/openframeworks/openFrameworks/issues/172","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"rgb + alpha -> blit to texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-04-06T19:40:28Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166209,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:57:36Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/171","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":171,"html_url":"https://github.com/openframeworks/openFrameworks/issues/171","assignee":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"title":"sexy shader example","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"}],"closed_at":null,"created_at":"2010-04-06T19:38:51Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166208,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-03T19:40:33Z","body":"can we do it?\r\nwe need cross platform:\r\nplayback \r\nstreaming\r\npitch\r\npan \r\nmultiplay \r\n\r\nfor us to be compatible with what exists. \r\nOpenAL seems like the best choice.\r\nWhat other options are there?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/167","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","number":8,"title":"0080 Release","due_on":"2013-01-01T08:00:00Z","closed_issues":0,"open_issues":3,"created_at":"2012-02-25T01:34:28Z","state":"open","description":"","id":88731},"number":167,"html_url":"https://github.com/openframeworks/openFrameworks/issues/167","assignee":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"title":"replace fmod","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2010-04-06T12:13:31Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":165898,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:56:41Z","body":"i have this working for 3d with selection buffer although it's meant to be slow i haven't had any problems","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/160","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":160,"html_url":"https://github.com/openframeworks/openFrameworks/issues/160","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"ofIsUnderMouse?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2010-04-05T21:39:19Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":165537,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:54:57Z","body":"Theo: I have this code uses the selection buffer. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/153","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":153,"html_url":"https://github.com/openframeworks/openFrameworks/issues/153","assignee":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"title":"ofIsOnScreen - ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2010-04-05T18:49:10Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":165409,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=14 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4930'), ('content-length', '13008'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"a63cf45ee23c003caf863065072ec4bb"'), ('date', 'Tue, 29 May 2012 19:27:23 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-02-29T11:13:10Z","body":"check out - http://www.openframeworks.cc/forum/viewtopic.php?p=19169#p19169\r\npossible integration into core. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/140","comments":4,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":140,"html_url":"https://github.com/openframeworks/openFrameworks/issues/140","assignee":null,"title":"texture compression and mipmaps for of texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-04-02T19:43:00Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":163959,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-12T16:15:52Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=10&t=3319","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/128","comments":4,"milestone":null,"number":128,"html_url":"https://github.com/openframeworks/openFrameworks/issues/128","assignee":null,"title":"ofxTCPServer doesn't manage connected clients correcly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-02-14T09:40:13Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"arturoc","id":48240},"id":132671,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T12:31:57Z","body":"Something that easily converts vector direction to openGL degrees?\r\nI find myself constantly trying to guess 270 - atan2(y, x)*RAD_TO_DEG ..... etc\r\nTo rotate something along a vector. \r\n\r\nMight be good to have it be aware of the GL world orientation - or have it so you pass in the up \r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/126","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":126,"html_url":"https://github.com/openframeworks/openFrameworks/issues/126","assignee":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"title":"ofATan2GL / ofVecToGL ?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-02-13T14:22:51Z","state":"open","user":{"url":"https://api.github.com/users/openframeworks","gravatar_id":"a858611b044a8302ab14cfe752e17369","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"openframeworks","id":142866},"id":132377,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-22T15:51:57Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=7&t=3299&p=17852#p17852","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/124","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","number":6,"title":"0073 Release","closed_issues":0,"due_on":"2012-07-30T07:00:00Z","open_issues":5,"created_at":"2011-12-03T15:37:49Z","state":"open","description":"","id":62090},"number":124,"html_url":"https://github.com/openframeworks/openFrameworks/issues/124","assignee":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"title":"TTF type rendering in OF - fix fuzziness ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography","color":"DDDDDD"}],"closed_at":null,"created_at":"2010-02-13T14:15:25Z","state":"open","user":{"url":"https://api.github.com/users/openframeworks","gravatar_id":"a858611b044a8302ab14cfe752e17369","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"openframeworks","id":142866},"id":132373,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T12:30:14Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=8&t=1374","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/121","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":121,"html_url":"https://github.com/openframeworks/openFrameworks/issues/121","assignee":null,"title":"video: loop is not working unless you call play first","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"closed_at":null,"created_at":"2010-02-10T23:16:23Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"arturoc","id":48240},"id":130269,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T12:30:49Z","body":"it would make sense to have an opengl stress test app, that can test some basic about wether or not someone has ARB support, how fast their systems are, etc. I can imagine that for 0.07, we'll be helping people debug shaders and FBOs, having some way to gauge what kind of system they are on and what it can take, will be helpful. \r\n\r\nHere's a simple test app from the Lua-AV folks that looks like a reasonable system: \r\n\r\nhttp://img191.imageshack.us/img191/1659/picture3po.png","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/115","comments":0,"milestone":null,"number":115,"html_url":"https://github.com/openframeworks/openFrameworks/issues/115","assignee":null,"title":"opengl stress test example","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-01-12T02:56:21Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":111018,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-28T14:02:04Z","body":"at the moment, we've got it like:\r\n\r\nofAppGlutWindow::ofAppGlutWindow(){\r\n\tfps\t\t\t\t= 60.0; //give a realistic starting value - win32 issues\r\n\tbFrameRateSet\t\t= false;\r\n}\r\n\r\nbut I personally prefer all apps to start with some kind of similar frame rate (ie, examples running really fast on mac, etc). see for example: \r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?p=16520&#p16520\r\n\r\nthis kind of thing leads to less \"cross-platform-ness\" and more confusion from beginners, no? \r\n\r\n- z\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/107","comments":8,"milestone":null,"number":107,"html_url":"https://github.com/openframeworks/openFrameworks/issues/107","assignee":null,"title":"should we start all OF apps with a frame rate set?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2009-12-31T15:10:45Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":104702,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-27T15:47:45Z","body":"videoGrabber and serial listDevices should return a vector of strings apart from printing to console","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/91","comments":4,"milestone":null,"number":91,"html_url":"https://github.com/openframeworks/openFrameworks/issues/91","assignee":null,"title":"listDevices should return a list of strings","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2009-12-09T17:11:40Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"arturoc","id":48240},"id":94898,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + diff --git a/lib/github/tests/ReplayData/PaginatedList.testSliceIndexingInFirstPage.txt b/lib/github/tests/ReplayData/PaginatedList.testSliceIndexingInFirstPage.txt new file mode 100644 index 0000000000..483013e613 --- /dev/null +++ b/lib/github/tests/ReplayData/PaginatedList.testSliceIndexingInFirstPage.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4927'), ('content-length', '52085'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last"'), ('etag', '"5e8867ffb4e7630e852b2b231f3b9cdb"'), ('date', 'Tue, 29 May 2012 19:36:57 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-27T18:11:17Z","body":"Since more and more of the OF Core now relies on Poco (ie ofThread, etc) does OF_USING_POCO make sense anymore?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1280","comments":0,"milestone":null,"number":1280,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1280","assignee":null,"title":"deprecate OF_USING_POCO?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-27T18:03:23Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"danomatika","id":480637},"id":4772349,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-28T08:08:24Z","body":"There occurs a weir glitch when compiling the ofShader example with my HD Graphics 3000 (288 Mb) (Mac osx 10.7.4 - Mac Mini - i5 - 2.3Ghz)\n\nI was able to get rid of the glitch by replacing \"gl_FragColor = gl_Color;\" with \"gl_FragColor = 255.0;\" or any other number.\nAnybody knows a reason for the glitch / proper solution?\n\nScreenshot: http://goo.gl/Xdf74\nOpenGL capacities on different graphic cards on apple machines: http://goo.gl/FGQ2N","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1279","comments":2,"milestone":null,"number":1279,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1279","assignee":null,"title":"ofShader example with HD Graphics 3000 issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-26T19:27:56Z","state":"open","user":{"url":"https://api.github.com/users/subtiv","gravatar_id":"837cfe96365c031130a46311eb11d86a","avatar_url":"https://secure.gravatar.com/avatar/837cfe96365c031130a46311eb11d86a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"subtiv","id":1012684},"id":4767675,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-25T18:39:02Z","body":"produces an error on app exit or tex destruction.\n\n OF: OF_LOG_ERROR: trying to delete a non indexed texture, something weird is happening. Deleting anyway\n\nThis is because retain(int id) is a static function in ofTexture.cpp. So we can't retain the depthStencilTexture.\n\nThis suggest we should move the texture allocation of the depth / stencil texture to ofTexture - something which is not possible at the moment. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1277","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1277,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1277","assignee":null,"title":"ofFbo can't retain depthStencil Texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-05-25T18:37:46Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":4758608,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-22T21:26:57Z","body":"\nthe offending line is: \n\nif( speed.getValue() != preSpeed ){\n\nwhich is evaluating as true even through the slider is not touched (float equality test, etc). \n\nif we alter it to something like: \n\nif( fabs(speed.getValue() - preSpeed) > 0.0001 ){\n\nthe code runs fine. probably nicer to add a \"value changed()\" functionality to the slider object though or use EPSILON, etc. \n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1271","comments":0,"milestone":null,"number":1271,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1271","assignee":null,"title":"periodic signal example doesn't run well on windows / cb (float equality error)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-05-22T21:26:57Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":4700182,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-22T16:41:21Z","body":"There's some error that appears on linux systems running the project generator to make VS examples, where the debug and release libs for opencv get added badly to the vs project: \n\n\t%(AdditionalDependencies);opencv_highgui231d.lib;opencv_calib3d231.lib;opencv_imgproc231d.lib;opencv_haartraining_engined.lib;opencv_gpu231d.lib;opencv_flann231.lib;opencv_contrib231d.lib;opencv_video231d.lib;opencv_objdetect231d.lib;zlib.lib;opencv_core231d.lib;opencv_contrib231.lib;opencv_ml231d.lib;opencv_features2d231.lib;opencv_core231.lib;opencv_gpu231.lib;opencv_legacy231d.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_ml231.lib;opencv_imgproc231.lib;opencv_objdetect231.lib;opencv_legacy231.lib;opencv_video231.lib\n\t\t\t\t%(AdditionalLibraryDirectories);..\\..\\..\\addons\\ofxOpenCv\\libs\\opencv\\lib\\vs2010\n\nthis doesn't seem to be the case on osx or windows, which produces correct results: \n\n\t%(AdditionalDependencies);opencv_calib3d231.lib;opencv_contrib231.lib;opencv_core231.lib;opencv_features2d231.lib;opencv_flann231.lib;opencv_gpu231.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_imgproc231.lib;opencv_legacy231.lib;opencv_ml231.lib;opencv_objdetect231.lib;opencv_video231.lib;zlib.lib\n\nwould be good to look at the logic of \"visualStudioProject::addAddon()\" and see if we can fix this.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1268","comments":9,"milestone":null,"number":1268,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1268","assignee":null,"title":"project generator - bad libs for VS / opencv examples","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-05-20T21:50:24Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":4662873,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T00:43:37Z","body":"I woud love some eyes on ofFbo would be great to get it cleaned up and standardized for 0072. \nRight now there are a ton of #ifdefs and some very hard to follow logic, which makes bug fixing quite difficult especially on OPENGL_ES\n\nsee: https://gist.github.com/2711815\n\n@elliotwoods @arturoc @memotv @damiannz @ofZach @kylemcdonald \n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1263","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1263,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1263","assignee":null,"title":"ofFbo.cpp is a huge mess! ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-16T16:27:30Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":4608132,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T14:29:02Z","body":"I added a .mailmap file to the repo to correctly collate all the contributors in spite of changing nick names/email addresses. This is useful when trying to identify contributors for a changelog or similar, or when using the git logging functions like shortlog.\n\nSee the before/after situation here: https://gist.github.com/2710366\n\nI have respected privacy and only used those real names that people have already given in a git ID in the repo. Mainly this addition only associates the different email addresses to one user. @arturoc wins the prize of most used emails! :-)\nThe list is pretty complete, I only had difficulties to associate some IDs to the correct Zachs, since it was not clear for some if @ofZach or @stfj (Zach Gage) was the contributor. Those were left as-is.\n\nIf anybody has objections to their various email being united under their name, please say so and I will correct/remove the relevant entries.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1262","comments":2,"milestone":null,"number":1262,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1262","assignee":null,"title":"Add .mailmap for contributor collation","labels":[],"closed_at":null,"created_at":"2012-05-16T13:44:32Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"id":4604661,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1262.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1262","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1262.patch"}},{"updated_at":"2012-05-16T09:35:31Z","body":"Address #375.\n\nAdd setVolumef(float). Also more clearly define volume ranges (int is 0..255, float is 0..1) and more robust clamping of volume argument.\n\nThis has not been tested on Linux or Windows.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1260","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1260,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1260","assignee":null,"title":"allow float volume on ofVideoPlayer","labels":[],"closed_at":null,"created_at":"2012-05-15T17:50:22Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"damiannz","id":144366},"id":4588997,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1260.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1260","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1260.patch"}},{"updated_at":"2012-05-21T07:31:47Z","body":"This was originally posted @\"biginners\".\n\nhttp://forum.openframeworks.cc/index.php/topic,9527.msg44049.html#msg44049\n\nJoshua noble suggested me to file it as a bug on jithub\n\n\n/////////////////original messages\n\nHello.\n\nI have question about ofShortPixels and ofShortColor.\n\nIf you execute the code below , it'll draw at half way screen height even though I did set aDot at (0. screen height / 4)\n\nAnd another weird thing is it draws 20 pixels instead of 10 pixels which I set for loop for 10 times.\n\nIt only draws correctly with ofPixels and ofColor.\n\nIt doesn't work with ofFloatPixels and ofFloatColor.\n\nPlease help me out.\n\nI need to have RGB value over 255 so I can check if those values are over 255.\n\nThanks in advanced\n\nJin\n\n\n.h file\nCode:\nview plaincopy to clipboardprint?\n\n #pragma once \n #include \"ofMain.h\" \n \n class Dot { \n public: \n ofVec2f location; \n \n Dot(){ \n location.set(0,0); \n } \n \n ~Dot(){} \n }; \n \n class testApp : public ofBaseApp{ \n public: \n void setup(); \n void update(); \n void draw(); \n \n int w,h; \n \n ofTexture particleTexture; \n ofShortPixels * rgbPixels; \n \n ofShortColor& paint(ofShortColor &); \n \n Dot aDot; \n \n \n }; \n\n\n.cpp file\nCode:\nview plaincopy to clipboardprint?\n\n #include \"testApp.h\" \n //-------------------------------------------------------------- \n void testApp::setup(){ \n ofSetFrameRate(30); \n ofSetBackgroundAuto(TRUE); \n ofBackground(0, 0, 0); \n w = ofGetWidth(); \n h = ofGetHeight(); \n \n particleTexture.allocate(w,h,GL_RGB); \n rgbPixels = new ofShortPixels; \n rgbPixels->allocate(w, h, 3); \n aDot.location.set(0, h/4); \n } \n \n //-------------------------------------------------------------- \n void testApp::update(){ \n ofShortColor pixelColor; \n ofShortColor newPixelColor; \n for(int i = 0; i<10; i++){ \n pixelColor = rgbPixels->getColor(aDot.location.x+i, aDot.location.y); \n \n newPixelColor = paint(pixelColor); \n \n rgbPixels->setColor(aDot.location.x+i, aDot.location.y,newPixelColor); \n \n } \n particleTexture.loadData(* rgbPixels); \n } \n \n //-------------------------------------------------------------- \n void testApp::draw(){ \n particleTexture.draw(0, 0, w, h); \n } \n \n ofShortColor & testApp::paint(ofShortColor & _c){ \n \n _c.r += 10; \n _c.g += 2; \n _c.b += 3; \n \n _c.set(_c.r, _c.g, _c.b); \n _c.clamp(); \n \n return _c; \n } ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1257","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1257,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1257","assignee":null,"title":"ofShortPixels doesn't draw pixels correctly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-14T05:46:14Z","state":"open","user":{"url":"https://api.github.com/users/gazaebal","gravatar_id":"f9d7811bb6318fedf7e9f2fe8bfece32","avatar_url":"https://secure.gravatar.com/avatar/f9d7811bb6318fedf7e9f2fe8bfece32?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"gazaebal","id":1736190},"id":4557803,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T21:42:08Z","body":"if i'm not mistaken, the correct way of using ofMatrix4x4 in oF is `glMultMatrixf(myMatrix.getPtr())` or `glLoadMatrixf`.\nThis seems a bit uncomfortable for me.\n\nsome candidates are:\n\n```c++\nofPushMatrix(const ofMatrix4x4 &); //needs alternatives as you might not want to push at the time\nofLoadMatrix(const ofMatrix4x4 &);\nofMultMatrix(const ofMatrix4x4 &);\n\nofMatrix4x4::apply();\nofMatrix4x4::glLoadMatrix(matrixMode = OF_MATRIX_MODE_CURRENT);\n```\n\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1256","comments":5,"milestone":null,"number":1256,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1256","assignee":null,"title":"Feature ofPushMatrix(const ofMatrix4x4 &)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-13T18:20:29Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4554058,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-11T21:24:20Z","body":"\tunsigned char faceSize = 3;\n\tif(data.getNumIndices()){\n\t\tos << \"element face \" << data.getNumIndices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t} else if(data.getMode() == OF_PRIMITIVE_TRIANGLES) {\n\t\tos << \"element face \" << data.getNumVertices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t}\n\nThe facesize is being set as static as 3, but this results in strange exports...things open OK in Meshlab, but exporting to other programs with no faces seems like it won't work","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1252","comments":6,"milestone":null,"number":1252,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1252","assignee":null,"title":"0071 ply (mesh.save()) Point export is broken","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-11T19:45:53Z","state":"open","user":{"url":"https://api.github.com/users/laserpilot","gravatar_id":"07001341fe6c156dddd5b9d06d828cba","avatar_url":"https://secure.gravatar.com/avatar/07001341fe6c156dddd5b9d06d828cba?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"laserpilot","id":1041023},"id":4539985,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:33:31Z","body":"couple of minor bugfixes (absolute path wasn't being detected on second if [absolute] for windows paths)\r\nfixes unixy paths no matter what on windows","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1251","comments":8,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1251,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1251","assignee":null,"title":"Bugfix of to data path","labels":[],"closed_at":null,"created_at":"2012-05-10T06:44:20Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4507572,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1251.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1251","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1251.patch"}},{"updated_at":"2012-05-16T09:43:23Z","body":":(\r\n\r\nIt seems i'm getting double 'data/' in my paths\r\nafter a little tracking down, i found this is because ofSystemLoadDialog changes the current working directory\r\n\r\nso we could try and either fix that by popping the folder after the dialog, \r\nof for windows using something like ```GetModuleFileName``` to get the path of the current exe rather than using the current working directory\r\n\r\nI can't seem to run GetModuleFileName from ofUtils.cpp even though windows.h is included in ofConstants.h (included in ofUtils.h)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1250","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1250,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1250","assignee":null,"title":"bug: ofToDataPath broken again","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-05-10T06:35:24Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4507492,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:42:44Z","body":"'ofx TCPClient :: receiveRaw' was found in the proble.\n\nOriginal :\n\n\tint ofxTCPClient::receiveRawBytes(char * receiveBuffer, int numBytes){\n\t\t\t messageSize = TCPClient.Receive(receiveBuffer, numBytes);\t\n\t\t\t if(messageSize==0){\t\t\n\t\t\t\t\t\tclose();\t\n\t\t\t }\t\n\t\t\t return messageSize;\n\t}\n\nBut 'TCPClient.Receive (receiveBuffer, numBytes)' from '-1' may return\n\nI was modified\n\n\tstring ofxTCPClient::receiveRaw(){\n\t\t\t messageSize = TCPClient.Receive(tmpBuff, TCP_MAX_MSG_SIZE);\n\t\t\t if(messageSize==0){\n\t\t\t\t\t\tclose();\n\t\t\t }\n\t\t\t //TCPClient.Receive is return -1....\n\t\t\t else if(messageSize < 0){ \n\t\t\t\t\t\ttmpBuff[0] = 0;\n\t\t\t }\n\t\t\t else if(messageSize; rel="next", ; rel="last"'), ('etag', '"5e8867ffb4e7630e852b2b231f3b9cdb"'), ('date', 'Tue, 29 May 2012 19:36:57 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-27T18:11:17Z","body":"Since more and more of the OF Core now relies on Poco (ie ofThread, etc) does OF_USING_POCO make sense anymore?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1280","comments":0,"milestone":null,"number":1280,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1280","assignee":null,"title":"deprecate OF_USING_POCO?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-27T18:03:23Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"danomatika","id":480637},"id":4772349,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-28T08:08:24Z","body":"There occurs a weir glitch when compiling the ofShader example with my HD Graphics 3000 (288 Mb) (Mac osx 10.7.4 - Mac Mini - i5 - 2.3Ghz)\n\nI was able to get rid of the glitch by replacing \"gl_FragColor = gl_Color;\" with \"gl_FragColor = 255.0;\" or any other number.\nAnybody knows a reason for the glitch / proper solution?\n\nScreenshot: http://goo.gl/Xdf74\nOpenGL capacities on different graphic cards on apple machines: http://goo.gl/FGQ2N","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1279","comments":2,"milestone":null,"number":1279,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1279","assignee":null,"title":"ofShader example with HD Graphics 3000 issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-26T19:27:56Z","state":"open","user":{"url":"https://api.github.com/users/subtiv","gravatar_id":"837cfe96365c031130a46311eb11d86a","avatar_url":"https://secure.gravatar.com/avatar/837cfe96365c031130a46311eb11d86a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"subtiv","id":1012684},"id":4767675,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-25T18:39:02Z","body":"produces an error on app exit or tex destruction.\n\n OF: OF_LOG_ERROR: trying to delete a non indexed texture, something weird is happening. Deleting anyway\n\nThis is because retain(int id) is a static function in ofTexture.cpp. So we can't retain the depthStencilTexture.\n\nThis suggest we should move the texture allocation of the depth / stencil texture to ofTexture - something which is not possible at the moment. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1277","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1277,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1277","assignee":null,"title":"ofFbo can't retain depthStencil Texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-05-25T18:37:46Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":4758608,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-22T21:26:57Z","body":"\nthe offending line is: \n\nif( speed.getValue() != preSpeed ){\n\nwhich is evaluating as true even through the slider is not touched (float equality test, etc). \n\nif we alter it to something like: \n\nif( fabs(speed.getValue() - preSpeed) > 0.0001 ){\n\nthe code runs fine. probably nicer to add a \"value changed()\" functionality to the slider object though or use EPSILON, etc. \n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1271","comments":0,"milestone":null,"number":1271,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1271","assignee":null,"title":"periodic signal example doesn't run well on windows / cb (float equality error)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-05-22T21:26:57Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":4700182,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-22T16:41:21Z","body":"There's some error that appears on linux systems running the project generator to make VS examples, where the debug and release libs for opencv get added badly to the vs project: \n\n\t%(AdditionalDependencies);opencv_highgui231d.lib;opencv_calib3d231.lib;opencv_imgproc231d.lib;opencv_haartraining_engined.lib;opencv_gpu231d.lib;opencv_flann231.lib;opencv_contrib231d.lib;opencv_video231d.lib;opencv_objdetect231d.lib;zlib.lib;opencv_core231d.lib;opencv_contrib231.lib;opencv_ml231d.lib;opencv_features2d231.lib;opencv_core231.lib;opencv_gpu231.lib;opencv_legacy231d.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_ml231.lib;opencv_imgproc231.lib;opencv_objdetect231.lib;opencv_legacy231.lib;opencv_video231.lib\n\t\t\t\t%(AdditionalLibraryDirectories);..\\..\\..\\addons\\ofxOpenCv\\libs\\opencv\\lib\\vs2010\n\nthis doesn't seem to be the case on osx or windows, which produces correct results: \n\n\t%(AdditionalDependencies);opencv_calib3d231.lib;opencv_contrib231.lib;opencv_core231.lib;opencv_features2d231.lib;opencv_flann231.lib;opencv_gpu231.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_imgproc231.lib;opencv_legacy231.lib;opencv_ml231.lib;opencv_objdetect231.lib;opencv_video231.lib;zlib.lib\n\nwould be good to look at the logic of \"visualStudioProject::addAddon()\" and see if we can fix this.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1268","comments":9,"milestone":null,"number":1268,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1268","assignee":null,"title":"project generator - bad libs for VS / opencv examples","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-05-20T21:50:24Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":4662873,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T00:43:37Z","body":"I woud love some eyes on ofFbo would be great to get it cleaned up and standardized for 0072. \nRight now there are a ton of #ifdefs and some very hard to follow logic, which makes bug fixing quite difficult especially on OPENGL_ES\n\nsee: https://gist.github.com/2711815\n\n@elliotwoods @arturoc @memotv @damiannz @ofZach @kylemcdonald \n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1263","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1263,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1263","assignee":null,"title":"ofFbo.cpp is a huge mess! ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-16T16:27:30Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":4608132,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T14:29:02Z","body":"I added a .mailmap file to the repo to correctly collate all the contributors in spite of changing nick names/email addresses. This is useful when trying to identify contributors for a changelog or similar, or when using the git logging functions like shortlog.\n\nSee the before/after situation here: https://gist.github.com/2710366\n\nI have respected privacy and only used those real names that people have already given in a git ID in the repo. Mainly this addition only associates the different email addresses to one user. @arturoc wins the prize of most used emails! :-)\nThe list is pretty complete, I only had difficulties to associate some IDs to the correct Zachs, since it was not clear for some if @ofZach or @stfj (Zach Gage) was the contributor. Those were left as-is.\n\nIf anybody has objections to their various email being united under their name, please say so and I will correct/remove the relevant entries.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1262","comments":2,"milestone":null,"number":1262,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1262","assignee":null,"title":"Add .mailmap for contributor collation","labels":[],"closed_at":null,"created_at":"2012-05-16T13:44:32Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"id":4604661,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1262.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1262","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1262.patch"}},{"updated_at":"2012-05-16T09:35:31Z","body":"Address #375.\n\nAdd setVolumef(float). Also more clearly define volume ranges (int is 0..255, float is 0..1) and more robust clamping of volume argument.\n\nThis has not been tested on Linux or Windows.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1260","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1260,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1260","assignee":null,"title":"allow float volume on ofVideoPlayer","labels":[],"closed_at":null,"created_at":"2012-05-15T17:50:22Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"damiannz","id":144366},"id":4588997,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1260.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1260","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1260.patch"}},{"updated_at":"2012-05-21T07:31:47Z","body":"This was originally posted @\"biginners\".\n\nhttp://forum.openframeworks.cc/index.php/topic,9527.msg44049.html#msg44049\n\nJoshua noble suggested me to file it as a bug on jithub\n\n\n/////////////////original messages\n\nHello.\n\nI have question about ofShortPixels and ofShortColor.\n\nIf you execute the code below , it'll draw at half way screen height even though I did set aDot at (0. screen height / 4)\n\nAnd another weird thing is it draws 20 pixels instead of 10 pixels which I set for loop for 10 times.\n\nIt only draws correctly with ofPixels and ofColor.\n\nIt doesn't work with ofFloatPixels and ofFloatColor.\n\nPlease help me out.\n\nI need to have RGB value over 255 so I can check if those values are over 255.\n\nThanks in advanced\n\nJin\n\n\n.h file\nCode:\nview plaincopy to clipboardprint?\n\n #pragma once \n #include \"ofMain.h\" \n \n class Dot { \n public: \n ofVec2f location; \n \n Dot(){ \n location.set(0,0); \n } \n \n ~Dot(){} \n }; \n \n class testApp : public ofBaseApp{ \n public: \n void setup(); \n void update(); \n void draw(); \n \n int w,h; \n \n ofTexture particleTexture; \n ofShortPixels * rgbPixels; \n \n ofShortColor& paint(ofShortColor &); \n \n Dot aDot; \n \n \n }; \n\n\n.cpp file\nCode:\nview plaincopy to clipboardprint?\n\n #include \"testApp.h\" \n //-------------------------------------------------------------- \n void testApp::setup(){ \n ofSetFrameRate(30); \n ofSetBackgroundAuto(TRUE); \n ofBackground(0, 0, 0); \n w = ofGetWidth(); \n h = ofGetHeight(); \n \n particleTexture.allocate(w,h,GL_RGB); \n rgbPixels = new ofShortPixels; \n rgbPixels->allocate(w, h, 3); \n aDot.location.set(0, h/4); \n } \n \n //-------------------------------------------------------------- \n void testApp::update(){ \n ofShortColor pixelColor; \n ofShortColor newPixelColor; \n for(int i = 0; i<10; i++){ \n pixelColor = rgbPixels->getColor(aDot.location.x+i, aDot.location.y); \n \n newPixelColor = paint(pixelColor); \n \n rgbPixels->setColor(aDot.location.x+i, aDot.location.y,newPixelColor); \n \n } \n particleTexture.loadData(* rgbPixels); \n } \n \n //-------------------------------------------------------------- \n void testApp::draw(){ \n particleTexture.draw(0, 0, w, h); \n } \n \n ofShortColor & testApp::paint(ofShortColor & _c){ \n \n _c.r += 10; \n _c.g += 2; \n _c.b += 3; \n \n _c.set(_c.r, _c.g, _c.b); \n _c.clamp(); \n \n return _c; \n } ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1257","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1257,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1257","assignee":null,"title":"ofShortPixels doesn't draw pixels correctly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-14T05:46:14Z","state":"open","user":{"url":"https://api.github.com/users/gazaebal","gravatar_id":"f9d7811bb6318fedf7e9f2fe8bfece32","avatar_url":"https://secure.gravatar.com/avatar/f9d7811bb6318fedf7e9f2fe8bfece32?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"gazaebal","id":1736190},"id":4557803,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T21:42:08Z","body":"if i'm not mistaken, the correct way of using ofMatrix4x4 in oF is `glMultMatrixf(myMatrix.getPtr())` or `glLoadMatrixf`.\nThis seems a bit uncomfortable for me.\n\nsome candidates are:\n\n```c++\nofPushMatrix(const ofMatrix4x4 &); //needs alternatives as you might not want to push at the time\nofLoadMatrix(const ofMatrix4x4 &);\nofMultMatrix(const ofMatrix4x4 &);\n\nofMatrix4x4::apply();\nofMatrix4x4::glLoadMatrix(matrixMode = OF_MATRIX_MODE_CURRENT);\n```\n\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1256","comments":5,"milestone":null,"number":1256,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1256","assignee":null,"title":"Feature ofPushMatrix(const ofMatrix4x4 &)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-13T18:20:29Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4554058,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-11T21:24:20Z","body":"\tunsigned char faceSize = 3;\n\tif(data.getNumIndices()){\n\t\tos << \"element face \" << data.getNumIndices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t} else if(data.getMode() == OF_PRIMITIVE_TRIANGLES) {\n\t\tos << \"element face \" << data.getNumVertices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t}\n\nThe facesize is being set as static as 3, but this results in strange exports...things open OK in Meshlab, but exporting to other programs with no faces seems like it won't work","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1252","comments":6,"milestone":null,"number":1252,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1252","assignee":null,"title":"0071 ply (mesh.save()) Point export is broken","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-11T19:45:53Z","state":"open","user":{"url":"https://api.github.com/users/laserpilot","gravatar_id":"07001341fe6c156dddd5b9d06d828cba","avatar_url":"https://secure.gravatar.com/avatar/07001341fe6c156dddd5b9d06d828cba?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"laserpilot","id":1041023},"id":4539985,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:33:31Z","body":"couple of minor bugfixes (absolute path wasn't being detected on second if [absolute] for windows paths)\r\nfixes unixy paths no matter what on windows","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1251","comments":8,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1251,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1251","assignee":null,"title":"Bugfix of to data path","labels":[],"closed_at":null,"created_at":"2012-05-10T06:44:20Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4507572,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1251.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1251","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1251.patch"}},{"updated_at":"2012-05-16T09:43:23Z","body":":(\r\n\r\nIt seems i'm getting double 'data/' in my paths\r\nafter a little tracking down, i found this is because ofSystemLoadDialog changes the current working directory\r\n\r\nso we could try and either fix that by popping the folder after the dialog, \r\nof for windows using something like ```GetModuleFileName``` to get the path of the current exe rather than using the current working directory\r\n\r\nI can't seem to run GetModuleFileName from ofUtils.cpp even though windows.h is included in ofConstants.h (included in ofUtils.h)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1250","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1250,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1250","assignee":null,"title":"bug: ofToDataPath broken again","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-05-10T06:35:24Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4507492,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:42:44Z","body":"'ofx TCPClient :: receiveRaw' was found in the proble.\n\nOriginal :\n\n\tint ofxTCPClient::receiveRawBytes(char * receiveBuffer, int numBytes){\n\t\t\t messageSize = TCPClient.Receive(receiveBuffer, numBytes);\t\n\t\t\t if(messageSize==0){\t\t\n\t\t\t\t\t\tclose();\t\n\t\t\t }\t\n\t\t\t return messageSize;\n\t}\n\nBut 'TCPClient.Receive (receiveBuffer, numBytes)' from '-1' may return\n\nI was modified\n\n\tstring ofxTCPClient::receiveRaw(){\n\t\t\t messageSize = TCPClient.Receive(tmpBuff, TCP_MAX_MSG_SIZE);\n\t\t\t if(messageSize==0){\n\t\t\t\t\t\tclose();\n\t\t\t }\n\t\t\t //TCPClient.Receive is return -1....\n\t\t\t else if(messageSize < 0){ \n\t\t\t\t\t\ttmpBuff[0] = 0;\n\t\t\t }\n\t\t\t else if(messageSize; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"cf9ec647fbc78faae05cb2d11598f79c"'), ('date', 'Tue, 29 May 2012 19:27:10 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-04-30T19:43:55Z","body":"On 'update', PG should respect existing custom include paths, source files, linker flags and project options (such as optimization settings).\r\n\r\nOR\r\n\r\nXcode project should read and respect `OTHER_LDFLAGS` and `HEADER_SEARCH_PATHS`, and add `OTHER_CFLAGS` from Project.xcconfig; projectGenerator should leave these settings alone unless it figures out they need to be adjusted (this is probably going to be difficult).","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1217","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1217,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1217","assignee":null,"title":"projectGenerator update doesn't respect existing project settings","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-04-24T21:03:44Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4269431,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-02T10:19:07Z","body":"Since I don't want to derail #484 further, this issue deals with the implementation of a deprecation mechanism.\r\nBased on [this](http://stackoverflow.com/questions/295120/c-mark-as-deprecated), I made an OFDEPRECATED preproc macro.\r\n\r\nQUESTION: How do I correctly #ifdef for MacOS/XCode4/llvm?\r\n\r\nCould people test this on different platforms? On linux this works. \r\n\r\n\t\ttestApp.h:\r\n\r\n\t\t#pragma once\r\n\r\n\t\t#ifdef __GNUC__\r\n\t\t// maybe __clang__ for checking against llvm/xcode4?\r\n\t\t#define OFDEPRECATED(message, func) func __attribute__ ((deprecated(message)))\r\n\t\t#elif defined(_MSC_VER)\r\n\t\t#define OFDEPRECATED(message, func) __declspec(deprecated(message)) func\r\n\t\t#else\r\n\t\t#pragma message(\"WARNING: You need to implement DEPRECATED for this compiler\")\r\n\t\t#define OFDEPRECATED(message, func) func\r\n\t\t#endif\r\n\r\n\t\tand \r\n\r\n\t\t\t\tvoid dragEvent(ofDragInfo dragInfo);\r\n\t\t\t\tvoid gotMessage(ofMessage msg);\r\n\t\t\r\n\t\t\t\tOFDEPRECATED(\"This is an old function, don't use!\", void deprecatedFunction(void));\r\n\t\t\t\tOFDEPRECATED(\"Obsolete type, use T2!\", typedef int T1);\r\n\t\t\t\ttypedef int T2;\r\n\t\t\t\tOFDEPRECATED(\"This is an old variable, don't use!\", int oldvar3);\r\n\t\t\t\t//This breaks a bit cause it's used in the constructor of testApp, so always triggers.\r\n\r\n\t\t};\r\n\t\tOFDEPRECATED(\"old class!\", class oldClass {\r\n\t\t\tpublic:\r\n\t\t\t\toldClass();\r\n\t\t\t\tvirtual ~oldClass();\r\n\t\t});\r\n\r\n\t\ttestApp.cpp:\r\n\r\n\t\tvoid testApp::setup(){\r\n\t\t\tOFDEPRECATED(\"old string. Don't use\", string oldstring);\r\n\t\t\t// Uncomment these to trigger deprecation warnings\r\n\t\t//\tdeprecatedFunction();\r\n\t\t//\tT1 t1object = 5;\r\n\t\t//\toldstring = \"bla\";\r\n\t\t//\toldvar3=5;\r\n\t\t//\toldClass bla;\r\n\t\t}\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1216","comments":11,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1216,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1216","assignee":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Implement deprecation mechanism","labels":[],"closed_at":null,"created_at":"2012-04-24T21:03:39Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4269429,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-30T19:43:14Z","body":"When using PG's 'update' functionality on apps are in paths with non-standard depths (in my case, `oF/apps/dir/subdir/subsubdir`) the OF_PATH and #include directives in the resulting Project.xcconfig don't match, which means oF projects won't compile:\r\n\r\n~~~~\r\n//THE PATH TO THE ROOT OF OUR OF PATH RELATIVE TO THIS PROJECT.\r\n//THIS NEEDS TO BE DEFINED BEFORE CoreOF.xcconfig IS INCLUDED\r\nOF_PATH = ../../../..\r\n\r\n//THIS HAS ALL THE HEADER AND LIBS FOR OF CORE\r\n#include \"../../../../../libs/openFrameworksCompiled/project/osx/CoreOF.xcconfig\"\r\n~~~~\r\n\r\nNote extra `../` in the `#include` path.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1215","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1215,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1215","assignee":null,"title":"projectGenerator sets incorrect path in Project.xcconfig","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-04-24T20:59:57Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4269359,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-22T23:56:33Z","body":"i'm teaching a workshop right now and i feel like it's ridiculous that i need to explain pointers just to access video :)\r\n\r\nlet's add this!","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1202","comments":3,"milestone":null,"number":1202,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1202","assignee":null,"title":"ofVideoPlayer etc needs ofColor access","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-22T18:42:58Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4231092,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-29T17:34:24Z","body":"DO NOT PULL YET!\r\n\r\nHey all\r\n\r\nHere's the 'off-axis camera' setup we worked on at ScreenLab last weekend.\r\nIt allows you to:\r\n\r\n* Set lens offset on a camera\r\n* Calculate the camera parameters based on a 'view portal' defined by 3 points (top left, bottom left, bottom right)\r\n\r\nCurrently the changes involve editing ofBaseRenderer (and therefore all other renderers) to support lensOffset parameter (default 0,0). We could remove this since ofCamera doesn't actually use ofSetupScreenPerspective\r\n\r\nSo let's have a quick chat about what needs chaning to make this core friendly and then probably pull after 0071 release?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1201","comments":9,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1201,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1201","assignee":null,"title":"Feature provocation pull request: ofCamera lens offset","labels":[],"closed_at":null,"created_at":"2012-04-22T15:55:29Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4230131,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1201.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1201","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1201.patch"}},{"updated_at":"2012-05-14T01:22:17Z","body":"I'm investigating the way to draw bezier curves / nurbs etc. with shaders, here is a list a links and information I found that can improve render times with OF. Any way I must admit I'm new to openGL & shaders so maybe someone can take this to implement maybe an add-on or maybe to added to the core.\r\n\r\n**Resolution Independent Curve Rendering using Programmable Graphics Hardware**\r\nhttp://research.microsoft.com/en-us/um/people/cloop/loopblinn05.pdf\r\n\r\n**Resolution independent GPU accelerated Curve & Font rendering**\r\n**GPU based Resolution Independent Font & Curve Rendering – initial Release**\r\nhttp://jausoft.com/blog/2011/04/01/resolution-independent-gpu-accelerated-curve-font-rendering/\r\nhttp://ramisantina.com/blog/?p=73\r\nhttp://vimeo.com/21810192\r\nhttp://jogamp.org/doc/gpunurbs2011/p70-santina.pdf\r\n\r\n**Curvy blues**\r\nhttp://www.mdk.org.pl/2007/10/27/curvy-blues\r\n\r\n**Vector drawing: OpenGL shaders and cairo & vector hardware tessellation**\r\nhttp://www.mdk.org.pl/2007/8/6/vector-drawing-opengl-shaders-and-cairo\r\n\r\n**ShivaVG & Random Access Rendering of Animated Vector Graphics**\r\nhttp://ivanleben.blogspot.com.es/2007/07/shivavg-open-source-ansi-c-openvg.html\r\nhttp://www.youtube.com/watch?v=mD8X-e5-sY4\r\nhttp://www.youtube.com/watch?v=U4USCfwORUg\r\nhttp://andrejas-atelier.com/ivan/IvanLebenHonsThesis.pdf\r\n\r\n**RAVG**\r\nhttp://research.microsoft.com/en-us/um/people/hoppe/proj/ravg/\r\n\r\n**NV Path Rendering Videos (seams only with nvidia)**\r\nhttp://developer.nvidia.com/nv-path-rendering-videos\r\n\r\n**Vector drawing: OpenGL polygon tessellation**\r\nhttp://www.mdk.org.pl/2007/8/16/vector-drawing-opengl-polygon-tessellation\r\nhttp://zrusin.blogspot.com.es/2006/07/hardware-accelerated-polygon-rendering.html\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1190","comments":8,"milestone":null,"number":1190,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1190","assignee":null,"title":"Bezier Shaders & Vector openGL rendering","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-2D","name":"section-2D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-20T09:23:00Z","state":"open","user":{"url":"https://api.github.com/users/microbians","gravatar_id":"98c91e60903b83c0a022ee70cca9ca21","login":"microbians","id":1662136,"avatar_url":"https://secure.gravatar.com/avatar/98c91e60903b83c0a022ee70cca9ca21?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4207350,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:41:20Z","body":"ofSetCurveResolution is not changing the resolution using ofBezier nor ofBezierVertex (tested with ofScale is more easy to see the bug)\r\n\r\n ofFill();\r\n ofSetHexColor(0xFF9933);\r\n ofBeginShape();\r\n ofVertex(x0,y0);\r\n ofBezierVertex(x1,y1,x2,y2,x3,y3);\r\n ofEndShape();\r\n\r\nall works fine when using ofPath directly:\r\n\r\n ofPath curve;\r\n curve.setFillHexColor(0xFF000);\r\n curve.setCurveResolution(120);\r\n curve.moveTo(x0, y0);\r\n curve.bezierTo(x1,y1,x2,y2,x3,y3);\r\n curve.draw();\r\n\r\nmore: http://forum.openframeworks.cc/index.php/topic,9596.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1189","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1189,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1189","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofSetCurveResolution + ofBezierVertex bug","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-04-20T08:51:51Z","state":"open","user":{"url":"https://api.github.com/users/microbians","gravatar_id":"98c91e60903b83c0a022ee70cca9ca21","login":"microbians","id":1662136,"avatar_url":"https://secure.gravatar.com/avatar/98c91e60903b83c0a022ee70cca9ca21?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4206982,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-01T04:10:23Z","body":"If you set up an ofFbo as follows...\r\n\r\n```cpp\r\n ofFbo::Settings s;\r\n s.width = 400;\r\n s.height = 400;\r\n s.textureTarget = GL_TEXTURE_2D;\r\n s.useDepth = true;\r\n s.depthAsTexture = true;\r\n s.dethInternalFormat = GL_DEPTH_COMPONENT24;\r\n```\r\n\r\n...then the colour texture's dimensions are set to be the next POTs up but the depth texture's dimensions don't seem to be. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1186","comments":2,"milestone":null,"number":1186,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1186","assignee":null,"title":"ofFbo depthBufferTex can be inconsistent with colour texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-18T15:08:32Z","state":"open","user":{"url":"https://api.github.com/users/neilmendoza","gravatar_id":"3e46b12547e7bac19eb982bc512b19c4","login":"neilmendoza","id":818571,"avatar_url":"https://secure.gravatar.com/avatar/3e46b12547e7bac19eb982bc512b19c4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4174070,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:44:27Z","body":"As mentioned here: http://forum.openframeworks.cc/index.php?topic=9107.0\r\nOpenGLES2 not working. It is always falls back to ES1. I tested it only on iPad2 with iOS 5.0.1.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1178","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1178,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1178","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"OpenGLES2 not working","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-04-16T11:19:36Z","state":"open","user":{"url":"https://api.github.com/users/erinnovations","gravatar_id":"29639bbeb3afdde8fb3c7e273e5e43c6","login":"erinnovations","id":253455,"avatar_url":"https://secure.gravatar.com/avatar/29639bbeb3afdde8fb3c7e273e5e43c6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4132608,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-14T13:45:55Z","body":"in ofTexture::loadData we are doing:\r\n\r\n\r\n\t//------------------------ likely, we are uploading continuous data\r\n\tGLint prevAlignment;\r\n\tglGetIntegerv(GL_UNPACK_ALIGNMENT, &prevAlignment);\r\n\tglPixelStorei(GL_UNPACK_ALIGNMENT, 1);\r\n\r\nany reason for this? leaving the default works too. i've been working with a huge video and the transfer rates on some cards were super slow with ofTexture::loadData. even glDrawPixels was faster, i've finally used pbo's but later looking at ofTexture discovered this lines and i suspect that it could be the reason for loadData being slower, haven't tested it yet though.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1175","comments":0,"milestone":null,"number":1175,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1175","assignee":null,"title":"GL_UNPACK_ALIGNMENT 1 in ofTexture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-14T13:45:42Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4117762,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:39:22Z","body":"one returns the result (dot) the other performs in place (cross), i.e. overrides the contents\r\nThe two definitions are inconsistent\r\npropose rename `ofVec3f::dot` to become `ofVec3f::getDotted` in line with `ofVec3f::getCrossed`","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1174","comments":9,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1174,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1174","assignee":null,"title":"bug : inconsistent API for ofVec3f::dot and ofVec3f::cross","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-13T17:09:38Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4108582,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-14T04:20:36Z","body":"If you pass a string containing non-ascii characters to ofToHex(), the non-ascii characters (with character codes above 127) will be output as ffffxxxx (it depends on the exact character value and the size of the int type on the platform you are compiling for).\r\nThe problem is due to an incorrect cast in the ostringstream operation inside the loop.\r\nInstead of directly casting the (signed) char from the input character to an unsigned int, the input character must first be cast to an unsigned char.\r\nIn other words, instead of:\r\n``` out << setfill('0') << setw(2) << hex << (unsigned int) value[i];```\r\nit should be:\r\n``` out << setfill('0') << setw(2) << hex << (unsigned int) ((unsigned char)value[i]);```\r\nor maybe even:\r\n``` out << setfill('0') << setw(2) << hex << static_cast(static_cast(value[i]));```\r\nif you prefer C++ style casts over C style casts. :)\r\n\r\nHTH\r\n/Jesper","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1173","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1173,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1173","assignee":null,"title":"ofToHex(string) is wrong for non-ascii input","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-13T14:42:30Z","state":"open","user":{"url":"https://api.github.com/users/pappis","gravatar_id":"fbf3d56c96cf5b891056530066549692","login":"pappis","id":1640543,"avatar_url":"https://secure.gravatar.com/avatar/fbf3d56c96cf5b891056530066549692?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4104336,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-12T10:09:42Z","body":"if I call ofBeginSaveScreenAsPDF using ofEasyCam or the ofCamera, the pdf doesn't have the perspective of the camera. There's a parameter b3d to ofBeginSaveScreenAsPDF which I interpret to be \"render taking into account 3d transforms\", but it doesn't seem to have any effect.\r\n\r\nmore on the forum\r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,9542.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1171","comments":0,"milestone":null,"number":1171,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1171","assignee":null,"title":"ofBeginSaveScreenAsPDF ignores 3d transformations","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-12T10:09:42Z","state":"open","user":{"url":"https://api.github.com/users/jesusgollonet","gravatar_id":"5008d5295e9bc2636313c7b50ed5981d","login":"jesusgollonet","id":31100,"avatar_url":"https://secure.gravatar.com/avatar/5008d5295e9bc2636313c7b50ed5981d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4081188,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-13T14:54:18Z","body":"if I have `ofEvent boolEvent` and i try to call `ofNotifyEvent( boolEvent, true )` i get a `no matching function` error as the compiler cannot coerce `true` to a `bool &`.\r\n\r\nto solve this, instead of this:\r\n\r\n~~~~\r\nofEvent boolEvent;\r\n...\r\nofNotifyEvent( boolEvent, true );\r\n~~~~\r\n\r\ni need to write this:\r\n\r\n~~~~\r\nofEvent boolEvent;\r\n...\r\nbool myBool = true;\r\nofNotifyEvent( boolEvent, myBool );\r\n~~~~\r\n\r\nthis is kind of annoying.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1167","comments":2,"milestone":null,"number":1167,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1167","assignee":null,"title":"ofNotifyEvent( boolEvent, true ) fails to compile","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-04-11T12:03:34Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4063456,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-11T13:21:33Z","body":"It's currently not possible to have an event without arguments\r\n\r\n`ofEvent testEvent;` -- fails to compile\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1166","comments":2,"milestone":null,"number":1166,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1166","assignee":null,"title":"ofEvent lacks simple, argument-free use case","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-04-11T12:00:19Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4063417,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-21T15:41:01Z","body":"It's currently not possible to write `ofLogError( \"serial\", \"error %i connecting to serial\", serialError )`. \r\n\r\nThere should be `ofLogError( string module, string format, ... )` methods as with normal ofLog.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1165","comments":6,"milestone":null,"number":1165,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1165","assignee":null,"title":"ofLogError, ofLogWarning lack format, ... args","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-04-11T11:56:33Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4063366,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-10T16:47:19Z","body":"change `allocate(_w, _h, OF_IMAGE_COLOR);` to `allocate(_w, _h, OF_IMAGE_COLOR_ALPHA);` (via reza on irc)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1152","comments":4,"milestone":null,"number":1152,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1152","assignee":null,"title":"grabScreen in ofImage fails on Android","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-04-09T17:15:21Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4032047,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-29T14:46:40Z","body":"the module name is no longer printed if it's coming from OF itself.\r\n\r\ninstead of the constant name, a human-readable string is printed.\r\n\r\nexample output from project generator: http://pastebin.com/raw.php?i=0dp938Jx","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1151","comments":6,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1151,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1151","assignee":null,"title":"shorten + simplify ofLog output","labels":[],"closed_at":null,"created_at":"2012-04-08T21:13:14Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4023525,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1151.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1151","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1151.patch"}},{"updated_at":"2012-04-17T14:47:36Z","body":"\r\nWorking on the project generator, which has a fair amount of logging, I'm concerned about how much space we loose on each line: \r\n\r\n OF: OF_LOG_NOTICE:\r\n\r\nit's about 15-20 characters or so, pretty significant where each line is 80, so alot more wrapping happens then I'd like, making the results less cleaner or organized. \r\n\r\nI propose we alter \r\n\r\n string ofGetLogLevelName(ofLogLevel level){\r\n switch(level){\r\n case OF_LOG_VERBOSE:\r\n return \"OF_LOG_VERBOSE\";\r\n break;\r\n case OF_LOG_NOTICE:\r\n return \"OF_LOG_NOTICE\";\r\n break;\r\n case OF_LOG_WARNING:\r\n return \"OF_LOG_WARNING\";\r\n break;\r\n case OF_LOG_ERROR:\r\n return \"OF_LOG_ERROR\";\r\n break;\r\n case OF_LOG_FATAL_ERROR:\r\n return \"OF_LOG_FATAL_ERROR\";\r\n break;\r\n case OF_LOG_SILENT:\r\n return \"OF_LOG_SILENT\";\r\n break;\r\n default:\r\n return \"\";\r\n }\r\n }\r\n\r\nso that we can have something like : \r\n\r\n (of:notice) \r\n (of:verbose) \r\n (of:error) \r\n\r\nor something smaller and if we loose the all caps, maybe less threatening :)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1150","comments":4,"milestone":null,"number":1150,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1150","assignee":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"propose shortening ofLog console message length","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-04-08T20:32:49Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4023305,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-07T15:00:32Z","body":"Hey all\r\n\r\nA few sections of the repo need some love to put them in line with the project generator:\r\n\r\n1. Readme's\r\n2. Rogue old project generators\r\n3. Document complementing tools\r\n\r\n# Readme\r\n\r\nThe readme's in the root of the repo need some love\r\nnone of them mention project generator \r\n\r\ni feel like each should be a description of how to get to a working project generator on each of the respective platforms\r\n\r\nalso note:\r\n* .vs2010 is missing\r\n* readme.txt repeats information from the other readme's (i.e. it's a list of platform specific instructions)\r\ni think this should be perhaps a little description of oF and a few tips on how to get started\r\n\r\n# Rogue old 'project generators' / documenting complementary tools for project generator\r\n\r\nHere's things I can find in the repo which don't make sense to me at the moment:\r\n\r\n* `openFrameworks\\scripts\\????\\compileAllExamples.bat`\r\n** is this supposed to be run (optionally) after the project generator?\r\n** why is the project template within this folder?\r\n* `openFrameworks\\scripts\\????\\createProjects.py` \r\n** if this isn't supposed to be used anymore, lets delete it immediately (we can always recover in emergencies)\r\n\r\nand the 'other' folder in the root.. perhaps never took off?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1146","comments":0,"milestone":null,"number":1146,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1146","assignee":null,"title":"Document Project Generator / clean out old tools","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"closed_at":null,"created_at":"2012-04-07T14:43:53Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4015514,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-07T19:49:31Z","body":"When attempting to render a mesh to a PDF the ofCairoRender does not output a filled mesh, thus the PDF output looks empty. \r\n\r\nIf you open the file in illustrator you'll see the paths, there but with no stroke or fill. \r\n\r\nWhen I dug into the issue a bit further I realized that Cairo isn't capable of rendering shapes with per vertex colors easily...\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1145","comments":3,"milestone":null,"number":1145,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1145","assignee":null,"title":"ofCairoRenderer ofMesh doesn't render properly to PDF","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-04-06T22:02:01Z","state":"open","user":{"url":"https://api.github.com/users/rezaali","gravatar_id":"548374013b9c6e50ebbd2294e12d4f31","login":"rezaali","id":555207,"avatar_url":"https://secure.gravatar.com/avatar/548374013b9c6e50ebbd2294e12d4f31?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4010494,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-01T04:21:01Z","body":"When using the ofColor subtraction operator, negative results are clamped to positive values instead of 0. Values are circulating between 0 and 255, which could be useful for hue in HSV but in most cases (R, G, B..) is not what I would expect.\r\n\r\n ofColor a(10, 40, 80);\r\n ofColor b(20, 5, 30);\r\n ofColor c = (a-b); // I get: (246, 45, 50), I would expect: (0, 45, 50)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1144","comments":9,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1144,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1144","assignee":null,"title":"ofColor subtraction and negative values","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-04-06T07:56:44Z","state":"open","user":{"url":"https://api.github.com/users/jembezmamy","gravatar_id":"69a23dc9914cb6bc3202c50e15eabba0","login":"jembezmamy","id":720354,"avatar_url":"https://secure.gravatar.com/avatar/69a23dc9914cb6bc3202c50e15eabba0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4001148,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-04T12:07:24Z","body":"When using the dragEvent ofDragInfo I always get the following error message:\r\n\r\nwarning: Could not find object file \"/Users/theo/Documents/CODE/__OPENFRAMEWORKS/gitOF/openFrameworks/apps/devApps/macDragDropExample/buildGlutFrameworkHackedWindowLevel10.4/libForeground.a(macx_foreground.o)\" - no debug information available for \"/Users/mcast/Code/GLUT-ToPost/macx_foreground.m\".\r\n\r\nIt doesn't seem to hurt my code but is a bit annoying, especially early on when I wasn't sure if it had anything to do with compile failings. Not a big issue obviously, but it might confuse some other newbie's also.\r\n\r\n(OF 0.07 - Xcode 4.2.1 - OS X 10.7.3 - macbook pro) ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1138","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1138,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1138","assignee":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"benign error message","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2012-04-04T11:05:57Z","state":"open","user":{"url":"https://api.github.com/users/davideo71","gravatar_id":"42c3c1acbdb4a998d8096b49745219cd","login":"davideo71","id":1611385,"avatar_url":"https://secure.gravatar.com/avatar/42c3c1acbdb4a998d8096b49745219cd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3968742,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-03T17:37:10Z","body":"theo's #1133 made me think about ways that i use noise regularly that might also be abstracted.\r\n\r\ni would also like to see versions of noise that return multidimensional results. normally i do something like:\r\n\r\n\tofVec2 a(ofSignedNoise(t, 0), ofSignedNoise(0, t)); // 1D -> 2D\r\n\tofVec2 b(ofSignedNoise(x, 0), ofSignedNoise(0, y)); // 2D -> 2D\r\n\tofVec3 c(ofSignedNoise(t, 0, 0), ofSignedNoise(0, t, 0), ofSignedNoise(0, 0, t)); // 1D -> 3D\r\n\tofVec3 d(ofSignedNoise(x, 0, 0), ofSignedNoise(0, y, 0), ofSignedNoise(0, 0, (x + y) / 2)); // 2D -> 3D\r\n\r\nand it would be good to spend some time making sure these are really good ways of doing it, then implement them inside some functions like `ofSignedNoise2()` and `ofSignedNoise3()` (for example).","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1134","comments":2,"milestone":null,"number":1134,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1134","assignee":null,"title":"multidimensional noise output","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-04-01T16:44:55Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3917377,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-01T17:48:12Z","body":"ie: the equivalent of doing \r\n\r\nfloat rate = 0.02 + ofNoise(ofGetElapsedTimeF() * 0.02, 100.0) * 0.015;\r\nfloat value = ofSignedNoise( rate, x, y ); \r\n\r\nas one function. \r\n\r\nalso see kyle's #1134 for other noise utils. \r\n\r\nI find myself needing this quite often for more natural random motion where the rate of change is variable. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1133","comments":0,"milestone":null,"number":1133,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1133","assignee":null,"title":"ofNoise and ofSignedNoise with 2nd order control for rate.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-04-01T15:45:11Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3917018,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=3 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4941'), ('content-length', '55518'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"414a5c156bbe219ad21d164052b40f6c"'), ('date', 'Tue, 29 May 2012 19:27:11 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-04-02T02:05:52Z","body":"This is a feature discussion issue for what string features we should add to of.\r\nofZach mentioned some regexp ones from P5 match matchAll\r\nWould be great to get some eyes on this.\r\n\r\nOne approach would be a static class or namespace.\r\nThe idea would be we could include a variety of handy functions that would be useful for people not wanting to get into regexp\r\n\r\n\tofString::contains(str, \"apple\") //returns bool\r\n\tofString::starts(str, \"The\") //returns bool\r\n\tofString::ends(str, \".\") //returns bool\r\n\tofString::count(str, \"apples\") //count how many times apples appears in the \r\n\tofString::join(myVectorStr, \", \"); //this is currently ofJoinString\r\n\tofString::split(someText, \".\"); //this is currently ofSplitString\r\n\tofString::split(someHtml, \"<\", \">\"); //this is the same but returns a vector of things between the start and end delims\r\n\tofString::limit(someText, 200); //limit the text to 200 characters. optional arg to add ... to the end.\r\n\r\nQuestions:\r\n- Should we mirror P5 with match and matchAll or should we indicate that regexp is required? ie regexMatch regexMatchAll ?\r\n- Other string utils we could add?\r\n- Should it be ofStringUtils:: or ofString:: ?\r\n- Something to do a split and then return a vector of float int etc?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1132","comments":6,"milestone":null,"number":1132,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1132","assignee":null,"title":"ofStringUtils:: feature discussion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-31T17:52:48Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":3911629,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-05-27T17:40:30Z","body":"This is a feature discussion issue for what should be added / changed to ofTTF.\r\nWould be great to get some eyes on this from @vtron @ofzach @arturoc and anyone with thoughts on the matter.\r\n\r\nTextAreas:\r\n- Fit text to a box\r\n- Handle overflow ( ie either truncate or resize box height )\r\n- non ragged options\r\n- could textAreas work with both ofTTF and ofDrawBitmapString ? abstract text formatting?\r\n\r\nAlignment:\r\n- Left align a string\r\n- Right align\r\n- Center\r\n- Top align \r\n- Base align \r\n\r\nSpacing:\r\n- Kerning\r\n- Leading / line height\r\n\r\nLoading:\r\n- Allow for loading a font up to a max size for drawing at different sizes. \r\n- Allow for selection and loading of specific sizes within one object. ie: myFont.setCurrentSize(12); \r\n- Font family's / sets ? Bold, Italic etc? \r\n\r\nDrawing:\r\n- Allow for drawing font at different sizes. Scale font as needed. \r\n\r\nFormatting:\r\n- Could we somehow allow a string to have different colors, sizes. Right now it is a pain to change colors or sizes. \r\n- would this be replicating basic html or another approach? maybe better as an addon?\r\n\r\nInfo:\r\n- Ability to get the x and y position of the nth character in the string? useful maybe for cursor or selection?\r\n\r\n**Update:**\r\n-Underline\r\n-Render rect behind text ( a la what @kylemcdonald added to ofDrawBitmapString)\r\n-Scale type to fit a rect + keep aspect ratio\r\n-Crazy: text along a path :) ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1131","comments":25,"milestone":null,"number":1131,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1131","assignee":null,"title":"ofTTF feature discussion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-31T17:36:25Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":3911537,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-31T14:44:01Z","body":"Agree on a common format for a header in the contributed example files.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1130","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1130,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1130","assignee":null,"title":"Define standard header for examples.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-31T14:44:01Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":3910580,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-04-24T02:12:05Z","body":"\r\n\r\nXcode 4 mangles OF projects pretty badly in the following ways: \r\n\r\na) it autogenerates schemes, and \"openframeworks\" appears as the chosen scheme\r\nb) it sometimes chooses the wrong SDK for OF -- is there a way to set that?\r\nc) debug and release are not really clear, part of this is a shift in xcode -- but it's much harder to see how things are compiled and to set release or debug\r\nd) I still had issues with OF needing to be recompiled all the time. I tried to fix this, but we should make sure it's done right. the of lib was appearing red even though it had been built, etc. \r\n\r\nI've tried to fix some of this in detroit with the PG, but I don't think it's the right way to do it. Overall, it would be great to have projects work smoothly on xcode 4...\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1129","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1129,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1129","assignee":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"title":"xcode 4 issues: scheme, auto-generation of schemes, rebuilding OF, sdk, etc","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-03-31T14:39:04Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":3910555,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-31T16:32:04Z","body":"When deprecating api's (e.g. ofEvents, ofVertexes), perhaps we could help automate the changes through simple scripts to update api\r\nSuggest sticking to something close to how uncrustify scripts are run (and perhaps there are tools like uncrustify but specifically for this task)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1128","comments":1,"milestone":null,"number":1128,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1128","assignee":null,"title":"upgrade scripts","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-31T14:38:19Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":3910549,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-04-09T16:47:04Z","body":"It would be nice (and useful for testing the PG) if the PG would get an option to clean the examples folders of all generated files. \r\n\r\nCurrently, the quickest option is to delete the examples folder on disk, and do `git reset --hard HEAD`.\r\n\r\nAs before, milestoned for 0071, but feel free to push back.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1126","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1126,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1126","assignee":null,"title":"PG Feature request: Clean examples folder","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-03-30T12:51:30Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":3897090,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-29T16:47:29Z","body":"there is a hard limit of 100 files when using drag & drop into an of app. not sure if it's an of issue, but am curious if it comes from the hacked glutDragEventFunc ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1124","comments":0,"milestone":null,"number":1124,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1124","assignee":null,"title":"void dragEvent(ofDragInfo dragInfo) limited to 100 files in osx lion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-29T16:47:29Z","state":"open","user":{"url":"https://api.github.com/users/jesusgollonet","gravatar_id":"5008d5295e9bc2636313c7b50ed5981d","login":"jesusgollonet","avatar_url":"https://secure.gravatar.com/avatar/5008d5295e9bc2636313c7b50ed5981d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":31100},"id":3883598,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-29T13:05:25Z","body":"When loading a file with ofImage, ofSoundPlayer , ofVideoPlayer-file or any ofFile it would be nice to be able to know if the file changed since it was loaded.\r\n\r\nIts very simple to implement with Poco::File->getLastModified() and it would be very nice if this would be built into the above classes.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1120","comments":2,"milestone":null,"number":1120,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1120","assignee":null,"title":"isFileChanged() for ofImage, ofVideoPlayer, ofSoundPlayer and ofFile","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-28T16:21:45Z","state":"open","user":{"url":"https://api.github.com/users/imanhp","gravatar_id":"7398ab0bbd07832d0289f26773e65077","login":"imanhp","avatar_url":"https://secure.gravatar.com/avatar/7398ab0bbd07832d0289f26773e65077?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1216228},"id":3856005,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-30T12:19:59Z","body":"paths.make should be in the repo as an example on how to set it up correctly, but changes (i.e. paths unique to every user) to it should be ignored cause everyone will have a different version in their computers so we don't want personal changes to appear in git status.\r\n\r\nI think the best way to solve this is to rename it to paths.make.default, keep this in the repo, maybe with `` instead of your path, and have people make their own paths.make from that one. We track changes to paths.make.default and ignore paths.make. \r\n\r\nThis will probably also need a mechanism in the makefile to fail gracefully and remind the user, if his customized paths.make is missing.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1118","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1118,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1118","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"Default paths.make for Android","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/android","name":"android","color":"2bc4ad"}],"closed_at":null,"created_at":"2012-03-28T12:19:39Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":3850655,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-04-18T17:13:36Z","body":"Once ofSetFrameRate() is called, I can't find a way to retrieve it. I think implementing a ofGetDesiredFrameRate() in ofAppRunner would make sense, also adding getDesiredFrameRate() to ofAppBaseWindow and all subclasses, where the actual value is stored. \r\n\r\nThis can be useful to compare the desired frame rate with actual frame rate and react accordingly if required.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1117","comments":0,"milestone":null,"number":1117,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1117","assignee":null,"title":"Can't retrieve desired frame rate once set","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-27T11:48:00Z","state":"open","user":{"url":"https://api.github.com/users/armadillu","gravatar_id":"b87a82d7c86161432ee6388c7cbd5e2c","login":"armadillu","avatar_url":"https://secure.gravatar.com/avatar/b87a82d7c86161432ee6388c7cbd5e2c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":167057},"id":3825582,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-26T22:27:14Z","body":"https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/gl/ofVbo.cpp#L343\r\n\r\nIndices should be specified as GL_ELEMENT_ARRAY_BUFFER unless I am mistaken.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1116","comments":5,"milestone":null,"number":1116,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1116","assignee":null,"title":"ofVBO updateIndexData incorrect buffer type.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-26T18:26:05Z","state":"open","user":{"url":"https://api.github.com/users/vade","gravatar_id":"37aca214d4875cd90af9d67072c82642","login":"vade","avatar_url":"https://secure.gravatar.com/avatar/37aca214d4875cd90af9d67072c82642?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":65011},"id":3813852,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-26T18:45:51Z","body":"The default optimization settings for debug builds in example XCode projects is set to Fastest,Smallest thus making debugging very difficult, is there a specific reason for this?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1115","comments":3,"milestone":null,"number":1115,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1115","assignee":null,"title":"optimization level in xcode projects","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"}],"closed_at":null,"created_at":"2012-03-26T17:05:14Z","state":"open","user":{"url":"https://api.github.com/users/colormotor","gravatar_id":"2548dbd6a86902ed5260b5f76710b83c","login":"colormotor","avatar_url":"https://secure.gravatar.com/avatar/2548dbd6a86902ed5260b5f76710b83c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1239872},"id":3812318,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-31T15:31:31Z","body":"I had some problems because of macro definitions in ofArduino.h overriding an enum in a a class of my codebase ( SHIFT )\r\nIt's not exactly a bug! but I would suggest using enums or const int instead of the macros to avoid any conflicts\r\nI solved the problem by modifying \r\n#define SHIFT 0x05 \r\ninto \r\nconst int SHIFT = 0x05;\r\n\r\nanother solution could be using enumerations as \r\nenum\r\n{\r\n ...\r\n SHIFT = 0x05,\r\n etc...\r\n};\r\n\r\nI believe this would not break any of the existing code\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1114","comments":1,"milestone":null,"number":1114,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1114","assignee":{"url":"https://api.github.com/users/joshuajnoble","gravatar_id":"10960ba0f305803a1cdc7cd6188d643b","login":"joshuajnoble","avatar_url":"https://secure.gravatar.com/avatar/10960ba0f305803a1cdc7cd6188d643b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":237423},"title":"macros in ofArduino","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-03-26T17:02:21Z","state":"open","user":{"url":"https://api.github.com/users/colormotor","gravatar_id":"2548dbd6a86902ed5260b5f76710b83c","login":"colormotor","avatar_url":"https://secure.gravatar.com/avatar/2548dbd6a86902ed5260b5f76710b83c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1239872},"id":3812275,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-27T14:56:56Z","body":"Hello.\r\n\r\nI'm trying to run camera frame grabing in OSX Lion.\r\nSimple ofVideoGrabber doesn't work - even if I link it with 10.6 SDK (and 10.6 is deployment target) I receive crash in initialization of ofVideoGrabber. Details are the same as in http://forum.openframeworks.cc/index.php/topic,6776.0.html\r\n\r\nI tryed QtKitMovieGrabberExample. It had some problems in compilation - texture property was not synthesized, I wrote this property and compilation run well.\r\nBut linking is fault. All I receive form linker is:\r\n\r\n*Ld bin/movieGrabberExampleDebug.app/Contents/MacOS/movieGrabberExampleDebug normal i386\r\n cd /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample\r\n setenv MACOSX_DEPLOYMENT_TARGET 10.6\r\n /Developer/usr/bin/clang++ -arch i386 -isysroot /Developer/SDKs/MacOSX10.6.sdk -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freeimage/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/GLee/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/rtAudio/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/fmodex/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freetype/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx -F/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin -F/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/glut/lib/osx -filelist /Users/yltastep/Library/Developer/Xcode/DerivedData/movieGrabberExample-aftkspwrgtotrteyzaplfbqzeasd/Build/Intermediates/movieGrabberExample.build/Debug/movieGrabberExample.build/Objects-normal/i386/movieGrabberExampleDebug.LinkFileList -mmacosx-version-min=10.6 -dead_strip ../../../libs/poco/lib/osx/PocoFoundation.a ../../../libs/poco/lib/osx/PocoNet.a ../../../libs/poco/lib/osx/PocoXML.a ../../../libs/poco/lib/osx/PocoUtil.a ../../../libs/tess2/lib/osx/tess2.a ../../../libs/glew/lib/osx/glew.a ../../../libs/cairo/lib/osx/cairo-script-interpreter.a ../../../libs/cairo/lib/osx/cairo.a ../../../libs/cairo/lib/osx/pixman-1.a ../../../libs/fmodex/lib/osx/libfmodex.dylib ../../../libs/rtAudio/lib/osx/rtAudio.a /Users/yltastep/Documents/XCode/openframeworks/libs/openFrameworksCompiled/lib/osx/openFrameworksDebug.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/GLee/lib/osx/GLee.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/rtAudio/lib/osx/rtAudio.a -framework AGL -framework ApplicationServices -framework AudioToolbox -framework Carbon -framework CoreAudio -framework CoreFoundation -framework CoreServices -framework OpenGL -framework QuickTime -framework AppKit -framework Cocoa -framework IOKit -framework GLUT /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoFoundation.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoNet.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoUtil.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoXML.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freetype/lib/osx/freetype.a -lfmodex /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx/freeimage.a -framework QTKit -framework Quartz -framework QuartzCore -o /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin/movieGrabberExampleDebug.app/Contents/MacOS/movieGrabberExampleDebug*\r\n\r\n**Command /Developer/usr/bin/clang++ failed with exit code 1**\r\n\r\nSo no explanation of problem.\r\n\r\nIs somebody ran this example successfully ?\r\nAnd what I'm doing wrong ?\r\n\r\nThanks in advance !\r\n\r\nWith regards.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1112","comments":9,"milestone":null,"number":1112,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1112","assignee":null,"title":"Issue with QtKitMovieGrabberExample in apps/devapps","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2012-03-26T12:11:44Z","state":"open","user":{"url":"https://api.github.com/users/OlexandrStepanov","gravatar_id":"aa6e2a475cab75513c9cc435b28eef31","login":"OlexandrStepanov","avatar_url":"https://secure.gravatar.com/avatar/aa6e2a475cab75513c9cc435b28eef31?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":971079},"id":3807459,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-25T20:07:16Z","body":"Todd's example has this code a few times in it by hand, but I'm thinking it's so simple it could be added along side ofSplitString() and would be really useful ? for sure, more string utility functions are helpful, and for basic text parsing, this is great. Poco gives us this for free, so it doesn't seem like a huge stretch to think of something like this, plus find and replace, etc. Would make the regex example much shorter. \r\n\r\np5 has something similar, if that's a helpful argument: \r\n\r\nhttp://processing.org/reference/matchAll_.html\r\n\r\n\r\n\tvector < string > ofxRegex::getMatchedStrings (string contents, string regex );\r\n\tvector < string > ofxRegex::getMatchedStrings (string contents, string regex ){\r\n \r\n\t vector < string > results;\r\n\t RegularExpression regEx(regex);\r\n\t RegularExpression::Match match;\r\n \r\n\t while(regEx.match(contents, match) != 0) {\r\n \r\n\t // we get the sub string from the content\r\n\t // and then trim the content so that we\r\n\t // can continue to search \r\n\t string foundStr = contents.substr(match.offset, match.length);\r\n\t contents = contents.substr(match.offset + match.length);\r\n \r\n\t results.push_back(foundStr);\r\n \r\n\t }\r\n\t return results;\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1110","comments":1,"milestone":null,"number":1110,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1110","assignee":null,"title":"add a simple regex function like ofSplitString()","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-03-25T18:56:37Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":3799872,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-25T18:50:13Z","body":"code to recreate: \r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::setup(){\r\n system(\"pwd;\");\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::update(){\r\n system(\"pwd;\");\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::draw(){\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::keyPressed(int key){\r\n cout << ofToDataPath(\"temp\") << endl;\r\n}\r\n\r\nproduces: \r\n\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n../../../data/temp\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin/emptyExampleDebug.app/Contents/MacOS\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin/emptyExampleDebug.app/Contents/MacOS\r\n\r\nthis is because the code that fixes OSX paths isn't called until you call ofToDataPath(). a good fix I think would be to set ofDataPathRoot (which happens in ofToDataPath) somewhere early in ofRunApp(). Or should it happen even earlier?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1109","comments":3,"milestone":null,"number":1109,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1109","assignee":null,"title":"mac paths don't seem right until you call \"ofToDataPath()\"","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2012-03-25T18:18:28Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":3799653,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-04-09T13:06:18Z","body":"easycam behaves as expected when inited but as soon as I change it's target it begins to behave strangely.\r\nthere's this imaginary sphere that we are rotating (it's diameter is min (viewport.width, vieport.height)), when the mouse is dragged from inside to outside of it the rotation just jumps to a \"random\" rotation. \r\nas well when you have a the camera rotated more than 180º in some axis the \"trackball\" doesn't behave as expected. yet this behavior is not seen when the target hasn't been changed.\r\n\r\nDoes any one know what's going on?\r\n\r\nI just came across this but I haven't gone deeply into how easycam handles the mouse to rotate. \r\nI'll do so ASAP. If someone can give me any clues I'll really apreciate it.\r\n\r\nregards!","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1108","comments":7,"milestone":null,"number":1108,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1108","assignee":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"title":"easyCam weird behavior when target changed","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-25T00:01:54Z","state":"open","user":{"url":"https://api.github.com/users/roymacdonald","gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","login":"roymacdonald","avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":974878},"id":3795495,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-04-09T16:47:18Z","body":"It would be great if the PG could also generate projects/examples for usage with Eclipse, i.e. just the makefile related files, no CB or other project files.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1103","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1103,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1103","assignee":null,"title":"PG feature request: Generate makefile-only projects","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-03-21T21:43:34Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":3754055,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-19T16:18:43Z","body":"whenever i call ofLog beneath openmp i have to wrap it in ```#pragma omp critical (ofLog)``` otherwise i get a crash\r\ni found adding the line above \r\nhttps://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/utils/ofLog.cpp#L84\r\nworks pretty well\r\n\r\nany objections to having it in there?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1098","comments":3,"milestone":null,"number":1098,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1098","assignee":null,"title":"feature / bug - #pragma omp critical(ofLog)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-19T14:04:51Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":3710293,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-15T20:34:17Z","body":"I'm finding that `ofDirector::listDir, open` are extremely slow\r\nit seems that it's actually loading the entire dir contents into memory\r\n\r\nit's possible to then do something like\r\n```\r\nofLoadImage(myPixels, dir.getFile(i));\r\n```\r\nand you can quickly load that image from memory. which is faster than\r\n```\r\nofLoadImage(myPixels, dir.getFile(i).getAbsolutePath());\r\n```\r\n\r\nBut this doesn't seem to work consistently (even though the slow listing is consistent)\r\nand surely isn't what we want.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1075","comments":2,"milestone":null,"number":1075,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1075","assignee":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"title":"bug ofDirectory::open(string path) actually loads the entire dir into memory?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-15T07:54:55Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":3662214,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-14T16:03:06Z","body":"Hello,\r\nI needed alpha channel in short length video for a recent project.\r\nIn the forum there is some old zip file for a ofxAlphaVideoPlayer that is still working, but that's OS X & windows only as it's based on QT.\r\nI'm working on linux, and I didn't find anything for GStreamer, so I modified the existing ofGstUtils and ofGstVideoPlayer.\r\nWould you mind if I do a pull request for this?\r\nI can also provide an example with a short length video using animation codec.\r\nWhat do you think?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1070","comments":6,"milestone":null,"number":1070,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1070","assignee":null,"title":"Alpha movies in GStreamer","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-14T13:02:41Z","state":"open","user":{"url":"https://api.github.com/users/manuelgeoffray","gravatar_id":"c1ec5161b69b4a990436deafb1170d64","login":"manuelgeoffray","avatar_url":"https://secure.gravatar.com/avatar/c1ec5161b69b4a990436deafb1170d64?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":808090},"id":3647640,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-17T19:26:40Z","body":"Hey !\r\n\r\nMe again. Didn't find anywhere this infos. I'm currently testing the travis-ci.org service.\r\nAs many people are working on the project and as many many issue are raised, and fixed, I thought it could be great to add some test and thus the travis service.\r\n\r\nIt would avoid the problem met here :\r\nhttps://github.com/openframeworks/openFrameworks/commit/7ca7833ea1afb6bd5a6c54031e3fa688aa0c0ba8\r\nand the discussion here :\r\nhttps://github.com/openframeworks/openFrameworks/issues/804\r\nor there :\r\nhttps://github.com/openframeworks/openFrameworks/pull/921\r\n\r\nI read that :\r\n\r\n>feel free to make a unitTests folder at the root level of OF -\r\n> that is where all unitTests will go.\r\n\r\nBut didn't find them.\r\n\r\nThe travis service will permit to get the little badge we know well : \r\n[![Build Status](https://secure.travis-ci.org/soixantecircuits/openFrameworks.png?branch=master)](http://travis-ci.org/soixantecircuits/openFrameworks)\r\n\r\nAlso, why not adding some spec test, to ensure future development of features.\r\nI'm currently reading :\r\nhttp://www.squidoo.com/cplusplus-behaviour-driven-development-tools#module124841511\r\nhttp://sourceforge.net/apps/mediawiki/turtle/index.php?title=Turtle\r\n\r\nFor those who want some other nice reading :\r\n\r\nhttp://gamesfromwithin.com/exploring-the-c-unit-testing-framework-jungle\r\n\r\nThe travis test is here, currently it is a total fake, but I just proposed the idea of a test driven development\r\nhttp://travis-ci.org/#!/soixantecircuits/openFrameworks/builds/854259 ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1068","comments":10,"milestone":null,"number":1068,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1068","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"Continuous integration","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-13T15:49:23Z","state":"open","user":{"url":"https://api.github.com/users/gabrielstuff","gravatar_id":"390ea42c23c2c383f973abdafa24bb07","login":"gabrielstuff","avatar_url":"https://secure.gravatar.com/avatar/390ea42c23c2c383f973abdafa24bb07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":285033},"id":3631618,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-13T15:21:30Z","body":"Hi !\r\n\r\nRecently, I've been in lot of languages, from C++ to ruby, passing by the colosus of javascript and the sea of php. Dropping by various and strange framework such as the Cinder, the jQuery, the Rails, the Processing, etc ...\r\n\r\n## the situation \r\n\r\nWhat I have noticed is that a strong architecture and a really ease use of add-ons makes a framework get stronger. For instance, if we take a look at Ruby, we see that the use of gems give him a powerfull advance over his friend php. \r\n\r\n### the Rubyist\r\n\r\nThis way of thinking is getting even better with the http://gembundler.com/ [Bundler](http://gembundler.com/) friend. The gems have dependencies and a simple GemFile help to easily install all dependencies for one project.\r\n\r\n### the Cinderist\r\n\r\nFor Cinder, we get the block, as for OSX, it quiet easy and fast. Drag and drop and play/code.\r\n\r\n### the jQueryist\r\n\r\nWell, it is not frequent to have jQuery plugins depending on other jQuery plugins, but there are several way to handle dependencies on jQuery and JS.\r\n\r\n### the nodist\r\n\r\nThis lead us to http://npmjs.org/, which is really nice with dependencies.\r\nFor instance, if you tried cloud9ide, you know that you just have to make sure you get the proper package.json :\r\n\r\n```\r\n{\r\n \"name\": \"node-example\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": {\r\n \"express\": \"2.2.0\"\r\n }\r\n}\r\n```\r\n\r\nThis file ensure that everything before running the server will be installed via npm.\r\n\r\n### the ofist\r\n\r\nRight now, we just have the addons.make file, which is nice but does not do any lifting for us. We have to verify that the ofx addons has been downloaded and is installed in the right folder.\r\n\r\n- Why not creating a script that will allow to manage dependencies compilation ? \r\nI have this wonderful ofxJSONsettings, but he depends on [JSONCPP](http://jsoncpp.sourceforge.net/) and on boost, so here we will have :\r\n\r\npackage.json file in the ofxJSONsettings folder :\r\n\r\n```\r\n{\r\n \"name\": \"ofxJSONsettings\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": [{\r\n \"jsoncpp\": \"0.6.0-rc2\"\r\n \"url\":\"http://jsoncpp.svn.sourceforge.net/svnroot/jsoncpp/trunk/\"\r\n \"protocol\":\"svn\"\r\n }\r\n ]\r\n}\r\n```\r\n\r\nHum, then, we have our little bash script :\r\n\r\n`xadd -addon ofxJSONsettings`\r\n\r\nand for a project, we have to ensure that the make file run `xadd -addon ofxJSONsettings` if it does not find ofXJSONsettings.\r\n\r\nThis could lead to simplify and easify the use of plugin ! Hey, I want the new [mistubaRenderer](https://github.com/satoruhiga/ofxMitsubaRenderer) let's give a try :\r\n\r\n```\r\n{\r\n \"name\": \"ofxMitsubaRenderer\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": [{\r\n \"mitsuba\": \"0.1\"\r\n \"url\":\"https://www.mitsuba-renderer.org/hg/mitsuba-bidir\"\r\n \"protocol\":\"hg\"\r\n }\r\n ]\r\n}\r\n```\r\n\r\nWell, this would be simplify if everybody use some same pattern, and respect some convention.\r\n\r\nSo what do you guys think about that ?\r\n\r\n\r\nThank you !\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1063","comments":7,"milestone":null,"number":1063,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1063","assignee":null,"title":"Automatic installer + dependencies handler","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-13T10:44:57Z","state":"open","user":{"url":"https://api.github.com/users/gabrielstuff","gravatar_id":"390ea42c23c2c383f973abdafa24bb07","login":"gabrielstuff","avatar_url":"https://secure.gravatar.com/avatar/390ea42c23c2c383f973abdafa24bb07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":285033},"id":3627067,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-12T17:58:20Z","body":"right now there is a lot of duplicated code in the vector math classes. for example, normalize() and getNormalized() have separate implementations. if we follow the pattern of always implementing things in self-modifying methods, then providing copy-returning methods as alternatives, this will reduce the amount of code and make it harder to cause bugs or behavioral discrepancies.\r\n\r\n- implementations of an algorithm should always be self-modifying\r\n- copy-returning versions should be implemented using a differently named method, internally making a copy and calling the self-modifying version on the copy.\r\n\r\ne.g. something like (note, this isn't how it's implemented right now):\r\n\r\n\tinline ofVec2f& ofVec2f::normalize() {\r\n\t\tfloat length = (float)sqrt(x*x + y*y);\r\n\t\tif( length > 0 ) {\r\n\t\t\tx /= length;\r\n\t\t\ty /= length;\r\n\t\t}\r\n\t\treturn *this;\r\n\t}\r\n\r\n\tinline ofVec2f ofVec2f::getNormalized() const {\r\n\t\tofVec2f result = *this;\r\n\t\treturn result.normalize();\r\n\t}\r\n\r\ntaken from this post https://github.com/openframeworks/openFrameworks/pull/1061#issuecomment-4455601","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1062","comments":4,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"closed_issues":21,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1062,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1062","assignee":null,"title":"regularize code for math addons","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-12T16:33:06Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":3614231,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}},{"updated_at":"2012-03-13T13:07:11Z","body":"Just saw this is the documentation.\r\nVertexes is incorrect (wrong plural)\r\nVertices","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1055","comments":18,"milestone":null,"number":1055,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1055","assignee":null,"title":"ofVertexes?? ofCurveVertexes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-03-12T01:50:19Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":3605277,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=4 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4940'), ('content-length', '44623'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"7a7b635a35e21a9f69de7a09b9040837"'), ('date', 'Tue, 29 May 2012 19:27:12 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-03-10T17:52:58Z","body":"if you have:\r\n\r\n uniform float dog;\r\n float cat;\r\n\r\nand:\r\n\r\n shader.setUniform1f(\"dog\", ofGetElapsedTimef());\r\n shader.setUniform1f(\"cat\", ofGetElapsedTimef());\r\n\r\nthere is no currently no error printed to the console, and \"cat\" is mysteriously unchanging while \"dog\" is fine.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1052","comments":0,"milestone":null,"number":1052,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1052","assignee":null,"title":"ofShader should show an error when using an invalid name","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-03-10T17:52:58Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3596240,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-14T15:11:08Z","body":"ofxiPhoneScreenGrab saves with compression artifacts.\r\nfix for saving a lossless image in the below post,\r\nhttp://forum.openframeworks.cc/index.php/topic,4737.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1051","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1051,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1051","assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"title":"ofxiPhoneScreenGrab saves with compression artifacts.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-03-10T12:15:33Z","state":"open","user":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"id":3594731,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-14T15:09:09Z","body":"just wanted to kick off a discussion about cleaning up ofxiPhone folder structure.\r\nhave this up on the forum, http://forum.openframeworks.cc/index.php/topic,8955.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1050","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1050,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1050","assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"title":"clean up ofxiPhone folder structure.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-10T06:32:12Z","state":"open","user":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"id":3593619,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-29T14:55:24Z","body":"This an implementation of ofxiPhoneScreenGrab for Android","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1048","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1048,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1048","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"Adding Android screenshot feature, example to demonstrate it","labels":[],"closed_at":null,"created_at":"2012-03-10T05:31:45Z","state":"open","user":{"url":"https://api.github.com/users/bostonbusmap","avatar_url":"https://secure.gravatar.com/avatar/433032cca043cedb67180dc5109062da?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"433032cca043cedb67180dc5109062da","login":"bostonbusmap","id":863262},"id":3593430,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1048","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1048.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1048.diff"}},{"updated_at":"2012-03-12T15:31:12Z","body":"whenever I try to open a file using system dialog from OF utils or ofxFileDIalogOSX, the video is loaded correctly but it get stuck and doesn't play at all. see:\r\nhttp://forum.openframeworks.cc/index.php/topic,5233.0.html\r\nhttp://forum.openframeworks.cc/index.php/topic,6515.0.html\r\n\r\nquite a big issue IMHO","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1047","comments":8,"milestone":null,"number":1047,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1047","assignee":null,"title":"opening video files with system dialog in osx prevents them to play correctly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-09T18:54:28Z","state":"open","user":{"url":"https://api.github.com/users/hvfrancesco","avatar_url":"https://secure.gravatar.com/avatar/e02a8a3953de9d5d9ec1c7aa8d43eca4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e02a8a3953de9d5d9ec1c7aa8d43eca4","login":"hvfrancesco","id":614123},"id":3587808,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-20T16:11:54Z","body":"just a small one but would be great. \r\nmaybe even different icon for debug and release? ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1039","comments":12,"milestone":null,"number":1039,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1039","assignee":null,"title":"make icons for OF apps","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-06T17:56:58Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":3528378,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-06T15:32:44Z","body":"right now it is not clear from a visual perspective what is a button / trigger and what is a toggle. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1037","comments":1,"milestone":null,"number":1037,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1037","assignee":null,"title":"ofxGui, ofxButton should look visually different to toggle","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-05T18:06:03Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":3510933,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-04-10T19:29:53Z","body":"xml is one of the reasons this is currently an addon. \r\nthe original idea was to have something simple and minimal that could be in the core. \r\nalso something which could be built off of for larger gui addons ( hence ofParameter ) \r\n\r\nI see a couple of options going forward.\r\n\r\n1) swtich from xml to newline separated text files and move ofGui into core\r\nthis would be quite simple as ofParameter already has a name, value structure \r\n\r\n2) same as 1) but keep ofxGui as an addon - making it a bit simpler to add to a project \r\n2b) add ofParameter to core as it is more general purpose\r\n\r\n3) bring ofxXmlSettings into the core and bring ofGui into core.\r\n\r\n\r\nanyway I thought it would be good to get some discussion going about this.\r\nI'm especially interested in setting up ofParam and ofBaseGui in a way to make things modular and extendable. \r\n\r\nalso could be interesting to look at a way to represent a collection/group of ofParameters\r\nsome of this might be similar to some of the stuff @memo was doing with his plist style system. \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1036","comments":10,"milestone":null,"number":1036,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1036","assignee":null,"title":"ofxGui -> ofGui - how/should we bring into core?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-05T16:56:26Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":3509628,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-12T12:39:10Z","body":"If it finds .vert, .frag (and .geom?) files in the data/ folder, the project generator should make a new folder, in the project file, next to (or inside) src called data/ and add the files to it. (data/ so that beginners can find the files in Finder)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1034","comments":3,"milestone":null,"number":1034,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1034","assignee":null,"title":"projectGenerator ignores shader .vert and .frag files","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-03-04T11:19:04Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":3495602,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-06T15:06:00Z","body":"I talked to Arturo about this, but I want to make sure it's known. When you call ofLogSetLogLevel with a module string, that string is added to a map used to check the module's log level ... but right now that string is never removed.\r\n\r\nIf someone creates a large amount module names the map could grow arbitrarily large over time. The thought so far is that no one would make enough module names for it to be a problem.\r\n\r\nFor instance, using the [proposed ofThread rewrite](https://github.com/openframeworks/openFrameworks/pull/1031), each thread creates a new module name when it sets itself to verbose and, in the case of spawning lots of verbose worker threads, the map will grow.\r\n\r\nMy proposed solution would be to remove the module name from the map when the level for that module is set back to OF_LOG_NOTICE and/or to the current log level.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1033","comments":11,"milestone":null,"number":1033,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1033","assignee":null,"title":"ofSetLogLevel(module, level) adds to map but dosen't remove","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-04T10:54:12Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3495503,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-14T15:11:08Z","body":"this change c50648e29199a3f61eae05f6ceb350a97ab275d7 caused the problem. i'm not sure why adding explicit cases for handling loadData for ofShortPixels and ofFloatPixels would do this. to see the proof, run devApps/AdvancedImageLoading","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1029","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1029,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1029","assignee":null,"title":"display of short + float textures are broken","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-03-03T19:04:59Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3491627,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-10T06:54:25Z","body":"I've just encountered a real 'wall meets head' bug, aka 'why is my camera image black??'\r\n\r\nwell it turns out that actually, ofSaveImage doesn't save mono images\r\nit just saves out black pixels\r\n\r\ntesting on Windows, VS2010.\r\nAnybody else getting this?\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1028","comments":5,"milestone":null,"number":1028,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1028","assignee":null,"title":"ofSaveImage / ofImage::saveImage() problem with OF_IMAGE_GRAYSCALE / OF_PIXELS_MONO","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-03-03T12:23:06Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3489266,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-16T09:25:13Z","body":"The Android example is basically a copy of the existing 3dModelBuilder example with some code changes to work with OpenGL ES","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1024","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1024,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1024","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"Fixing 3DModelBuilder to work with OpenGL ES, added Android example for it","labels":[],"closed_at":null,"created_at":"2012-03-02T16:55:29Z","state":"open","user":{"url":"https://api.github.com/users/bostonbusmap","avatar_url":"https://secure.gravatar.com/avatar/433032cca043cedb67180dc5109062da?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"433032cca043cedb67180dc5109062da","login":"bostonbusmap","id":863262},"id":3479768,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/1024","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1024.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/1024.diff"}},{"updated_at":"2012-03-30T16:34:06Z","body":"Continuation of http://forum.openframeworks.cc/index.php/topic,9095.msg42378.html#new\r\n\r\nNOTE: Things may have changed as the projects I'm using are all created using the older creation tools.\r\nCan somebody up to date please check?\r\n\r\nCurrently XCode's default project setting is /O2 for debug projects\r\nwhilst Visual Studio's is /O0\r\n\r\n/O0 generally makes the most sense for debug mode as it allows for effective program flow and variable tracking (because with /O2, lines of code and variables are commonly optimised away).\r\n\r\nIf we are worried that this will leave default users in a default 'slower state' then perhaps we could make release the default? Then people could be aware that they are selecting debug when they want to actually do some debugging?\r\nBut this may have other issues (such as some libraries might not perform as many checks as otherwise?)\r\n\r\nit might be worth making users more aware of the 2 options anyway, and then start using them consistently","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1022","comments":12,"milestone":null,"number":1022,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1022","assignee":null,"title":"Optimisation consistency","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-02T13:25:15Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3476540,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-01T19:42:09Z","body":"currently if MSAA is enabled, COLOR_ATTACHMENT[ 0 -> nSamples]_EXT are bound for MS blitting, which could overwrite your texture color attachments without notifying you [ i.e. setSamples(4); setNumTextures(4) ]. There may be some solution where numSamples*numTextures = maxAttachments, allowing for multisampled internal textures, but at the very least we should warn/notify that samples and textures won't play so nicely together, or try to allocate samples/textures in the remaining attachments and notify on overflow.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1019","comments":0,"milestone":null,"number":1019,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1019","assignee":null,"title":"ofFbo needs consideration as far as MRT + MSAA","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-01T19:42:09Z","state":"open","user":{"url":"https://api.github.com/users/kpasko","avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","login":"kpasko","id":167271},"id":3462226,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-01T04:33:36Z","body":"there's a block in ofConstants which reads like:\r\n\r\n```c++\r\n#ifndef PI\r\n\t#define PI 3.14159265358979323846\r\n#endif\r\n\r\n#ifndef TWO_PI\r\n\t#define TWO_PI 6.28318530717958647693\r\n#endif\r\n\r\n#ifndef M_TWO_PI\r\n\t#define M_TWO_PI 6.28318530717958647693\r\n#endif\r\n\r\n#ifndef FOUR_PI\r\n\t#define FOUR_PI 12.56637061435917295385\r\n#endif\r\n\r\n#ifndef HALF_PI\r\n\t#define HALF_PI 1.57079632679489661923\r\n#endif\r\n\r\n#ifndef DEG_TO_RAD\r\n\t#define DEG_TO_RAD (PI/180.0)\r\n#endif\r\n\r\n#ifndef RAD_TO_DEG\r\n\t#define RAD_TO_DEG (180.0/PI)\r\n#endif\r\n\r\n#ifndef MIN\r\n\t#define MIN(x,y) (((x) < (y)) ? (x) : (y))\r\n#endif\r\n\r\n#ifndef MAX\r\n\t#define MAX(x,y) (((x) > (y)) ? (x) : (y))\r\n#endif\r\n\r\n#ifndef CLAMP\r\n\t#define CLAMP(val,min,max) (MAX(MIN(val,max),min))\r\n#endif\r\n\r\n#ifndef ABS\r\n\t#define ABS(x) (((x) < 0) ? -(x) : (x))\r\n#endif\r\n```\r\n\r\nthe problem is i've got this in another header file:\r\n\r\n```c++\r\n// macro-like inline functions\r\n\r\ntemplate\r\ninline T SQR(const T a) {return a*a;}\r\n\r\ntemplate\r\ninline const T &MAX(const T &a, const T &b)\r\n {return b > a ? (b) : (a);}\r\n\r\ninline float MAX(const double &a, const float &b)\r\n {return b > a ? (b) : float(a);}\r\n\r\ninline float MAX(const float &a, const double &b)\r\n {return b > a ? float(b) : (a);}\r\n\r\ntemplate\r\ninline const T &MIN(const T &a, const T &b)\r\n {return b < a ? (b) : (a);}\r\n\r\ninline float MIN(const double &a, const float &b)\r\n {return b < a ? (b) : float(a);}\r\n\r\ninline float MIN(const float &a, const double &b)\r\n {return b < a ? float(b) : (a);}\r\n\r\ntemplate\r\ninline T SIGN(const T &a, const T &b)\r\n\t{return b >= 0 ? (a >= 0 ? a : -a) : (a >= 0 ? -a : a);}\r\n\r\ninline float SIGN(const float &a, const double &b)\r\n\t{return b >= 0 ? (a >= 0 ? a : -a) : (a >= 0 ? -a : a);}\r\n\r\ninline float SIGN(const double &a, const float &b)\r\n\t{return (float)(b >= 0 ? (a >= 0 ? a : -a) : (a >= 0 ? -a : a));}\r\n```\r\n\r\nAnd ofConstants is included in almost every oF file\r\n\r\ni'd suggest moving to inline functions and presume that compiler optimisations makes these 2 options equivalent in terms of performance, but that inline wins out for compatability","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1007","comments":10,"milestone":null,"number":1007,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1007","assignee":null,"title":"bug #defines in ofConstants conflict with other libraries","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-29T15:31:18Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3438233,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-01T13:02:37Z","body":"Propose the following functions:\r\n\r\n```c++\r\nofVec2f ofRandom(const ofVec2f&);\r\nofVec3f ofRandom(const ofVec3f&);\r\nofVec2f ofRandom(const ofVec2f& range1, const ofVec2f& range2);\r\nofVec3f ofRandom(const ofVec3f& range1, const ofVec3f& range2);\r\n```\r\n\r\nalso lots of other candidates for this, e.g. `ofClamp`, `ofMap`, etc\r\nsome clever templating possible?\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1005","comments":12,"milestone":null,"number":1005,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1005","assignee":null,"title":"feature ofRandom(ofVec3f) ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-29T06:32:03Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3432042,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-18T08:47:08Z","body":"I have a simple app that plays video files. I try to route (under windows) its output using Jack and Vitual Audio Cable but none can access it. I am just using the basic functionality of ofVideoPlayer, this is the class that deals with the video playing\r\n\r\n\r\n\t#include \"oscVPlayer.h\"\r\n\t#include \"ofMain.h\"\r\n\r\n\r\n\r\n\toscVPlayer::oscVPlayer()\r\n\t{\r\n\t\t\treset();\r\n\t}\r\n\r\n\tvoid oscVPlayer::reset()\r\n\t{ //defaults to fullscreen\r\n\t\t\tw = NULL;\r\n\t\t\th = NULL;\r\n\t\t\tx = 0;\r\n\t\t\ty = 0;\r\n\t\t\tdonereported = false;\r\n\t\t\tloopflag = OF_LOOP_NONE;\r\n\t\t\t\r\n\t\t\tcol.r = 0;\r\n\t\t\tcol.g = 0;\r\n\t\t\tcol.b = 0;\r\n\t\t\tcol.a = 255;\r\n\r\n\t\t\tif (isLoaded())\r\n\t\t{\r\n\t\t\t\t\tsetFrame(0);\r\n\t\t\t\t\tsetUseTexture(1);\r\n\t\t\t\t\tsetPaused(0);\r\n\t\t\t\t\tsetLoopState(OF_LOOP_NORMAL);\r\n\t\t\t\t\tsetSpeed(1);\r\n\t\t\t\t\tsetVolume(255);\r\n\t\t\t\t\tstop();\r\n\t\t}\r\n\t}\r\n\r\n\r\n\tvoid oscVPlayer::setUpVideo(string movie)\r\n\t{\r\n\t\t\tif (movie != \"none\")\r\n\t\t\t{\r\n\t\t\t\t\tif ( loadMovie(movie) )\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\t\tprintf(\"movie loaded\\n\");\r\n\t\t\t\t\t\t\tofVideoPlayer::update();\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\t\tprintf(\"CANNOT load movie\\n\");\r\n\t\t\t\t\t}\r\n\t\t\t}\r\n\t\t\telse\r\n\t\t\t{\r\n\t\t\t\t\tprintf(\"movie parameter is none, cannot load it\\n\");\r\n\t\t\t}\r\n\t}\r\n\r\n\r\n\r\n\r\n\tvoid oscVPlayer::setLoop()\r\n\t{\r\n\t\t\tsetLoopState(loopflag); // go back to your state. otherwise play resets it to loop ON\r\n\t}\r\n\r\n\r\n\r\n\r\n\tvoid oscVPlayer::resetSize()\r\n\t{\r\n\t\t\tw = NULL;\r\n\t\t\th = NULL;\r\n\t}\r\n\r\n\r\n\tvoid oscVPlayer::draw()\r\n\t{\r\n\t\tif (isLoaded())\r\n\t\t{\r\n\t\t\t if (col.a < 255) ofEnableAlphaBlending();\r\n\t\t\t\tofSetColor(col.r,col.g,col.b, col.a);\r\n\t\t\t\tofVideoPlayer::update();\r\n\t\t\t\tif (w==NULL && h==NULL)\r\n\t\t\t\t{\r\n\t\t\t\t\t\tofVideoPlayer::draw(x, y);\r\n\t\t\t\t}\r\n\t\t\t\telse\r\n\t\t\t\t{\r\n\t\t\t\t\t\t\tofVideoPlayer::draw(x, y, w, h);\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (col.a < 255) ofDisableAlphaBlending(); \r\n\t\t}\r\n\t}\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1001","comments":2,"milestone":null,"number":1001,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1001","assignee":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"title":"OF app sound out not available from Jack","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-02-27T14:59:34Z","state":"open","user":{"url":"https://api.github.com/users/enrike","avatar_url":"https://secure.gravatar.com/avatar/cc2adbc6d91bf2288f34f60a547a82cd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"cc2adbc6d91bf2288f34f60a547a82cd","login":"enrike","id":710785},"id":3401755,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-29T14:42:36Z","body":"// scissor\r\nvoid ofBeginScissor(ofRectangle &r);\r\nvoid ofBeginScissor(ofPoint &p, float w, float h);\r\nvoid ofBeginScissor(float x, float y, float w, float h);\r\nvoid ofEndScissor();\r\n\r\n\r\nthere is a problem with ofFBO due to the flip. I do not think that there is a way around it sooo just scale -1\r\n\r\nalso: \r\nextra ; removed \r\nlibs/openFrameworks/utils/ofUtils.cpp","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/993","comments":11,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":993,"html_url":"https://github.com/openframeworks/openFrameworks/issues/993","assignee":null,"title":"Of scissors","labels":[],"closed_at":null,"created_at":"2012-02-26T21:35:55Z","state":"open","user":{"url":"https://api.github.com/users/vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","id":149997},"id":3393466,"pull_request":{"html_url":"https://github.com/openframeworks/openFrameworks/pull/993","patch_url":"https://github.com/openframeworks/openFrameworks/pull/993.patch","diff_url":"https://github.com/openframeworks/openFrameworks/pull/993.diff"}},{"updated_at":"2012-02-25T20:25:00Z","body":"i think this is because ofDrawBitmapString draws the quads in the wrong orientation. but i'm guessing it works in FBOs... so if we switch the order it will stop working in FBOs.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/987","comments":0,"milestone":null,"number":987,"html_url":"https://github.com/openframeworks/openFrameworks/issues/987","assignee":null,"title":"GL_CULL_FACE breaks ofDrawBitmapString()","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-02-25T20:25:00Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3387163,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-22T23:34:17Z","body":"Some logging messages don't really tell where they were triggered. Someone needs to go through them and add information as to what module triggered the message. \r\n@danomatika has already volunteered to do this some time.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/985","comments":16,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":985,"html_url":"https://github.com/openframeworks/openFrameworks/issues/985","assignee":null,"title":"Make logging messages more informative","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-02-25T19:41:58Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3386914,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-11T18:31:55Z","body":"There's a lot of logging printfs in the core addons. These should be replaced by appropriate ofLog calls.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/984","comments":5,"milestone":null,"number":984,"html_url":"https://github.com/openframeworks/openFrameworks/issues/984","assignee":null,"title":"Replace printf() occurences by ofLog() in the core addons","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-02-25T19:36:51Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3386889,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-02-27T13:35:34Z","body":"`ofVec2f` has a function called `average` which takes an array of `ofVec2f` and calculates the centroid. it is not static, rather it overwrites its own `x` and `y` with the average. \r\n\r\nthis is a little weird. `average` should be static, or at least be *returning* the average rather than assigning to self.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/976","comments":4,"milestone":null,"number":976,"html_url":"https://github.com/openframeworks/openFrameworks/issues/976","assignee":null,"title":"ofVec2f::average has unexpected/clumsy behaviour","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-25T03:45:02Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":3382990,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-02-25T02:47:26Z","body":"Dummy issue to ensure that the 0076 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/972","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/10","number":10,"title":"0076 Release","due_on":"2012-10-29T07:00:00Z","closed_issues":0,"open_issues":1,"created_at":"2012-02-25T02:46:26Z","state":"open","description":"","id":88838},"number":972,"html_url":"https://github.com/openframeworks/openFrameworks/issues/972","assignee":null,"title":"0076 Release tracking issue","labels":[],"closed_at":null,"created_at":"2012-02-25T02:47:26Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3382766,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-02-25T02:47:37Z","body":"Dummy issue to ensure that the 0075 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/971","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/9","number":9,"title":"0075 Release","due_on":"2012-09-24T07:00:00Z","closed_issues":0,"open_issues":1,"created_at":"2012-02-25T02:46:15Z","state":"open","description":"","id":88837},"number":971,"html_url":"https://github.com/openframeworks/openFrameworks/issues/971","assignee":null,"title":"0075 Release tracking issue","labels":[],"closed_at":null,"created_at":"2012-02-25T02:47:05Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3382764,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=5 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4939'), ('content-length', '39838'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"a7bfe812cbaa85fbb708d70f4d883fac"'), ('date', 'Tue, 29 May 2012 19:27:13 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-02-25T01:36:58Z","body":"Dummy issue to ensure that the 0080 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/970","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","number":8,"closed_issues":0,"title":"0080 Release","due_on":"2013-01-01T08:00:00Z","open_issues":3,"created_at":"2012-02-25T01:34:28Z","state":"open","description":"","id":88731},"number":970,"html_url":"https://github.com/openframeworks/openFrameworks/issues/970","assignee":null,"title":"0080 Release tracking issue","labels":[],"closed_at":null,"created_at":"2012-02-25T01:36:54Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3381982,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T01:36:37Z","body":"Dummy issue to ensure that the 0074 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/969","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/7","number":7,"closed_issues":0,"title":"0074 Release","due_on":"2012-08-27T07:00:00Z","open_issues":1,"created_at":"2012-02-25T00:41:17Z","state":"open","description":"","id":88728},"number":969,"html_url":"https://github.com/openframeworks/openFrameworks/issues/969","assignee":null,"title":"0074 Release tracking issue","labels":[],"closed_at":null,"created_at":"2012-02-25T01:36:37Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3381977,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-24T04:31:01Z","body":"right now if you try and scale/rotate/etc before calling ofBackgroundGradient, it will fail.\r\n\r\npeople generally call ofBackground at the top of draw() so it shouldn't be a huge issue... but it does make it a little 'fragile'.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/955","comments":0,"milestone":null,"number":955,"html_url":"https://github.com/openframeworks/openFrameworks/issues/955","assignee":null,"title":"ofBackgroundGradient needs to be billboarded","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-02-24T04:31:01Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3367910,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-23T19:12:08Z","body":"Hello, I get a weird error trying to compile the movieplayerexample under linux64 :\r\n\r\n> `.text._ZN11ofBaseVideoD2Ev' referenced in section `.text._ZN11ofBaseVideoD1Ev[non-virtual thunk to ofBaseVideo::~ofBaseVideo()]' of ../../../libs/openFrameworksCompiled/lib/linux64/libopenFrameworks.a(ofBaseTypes.o): defined in discarded section `.text._ZN11ofBaseVideoD2Ev[_ZN11ofBaseVideoD5Ev]' of ../../../libs/openFrameworksCompiled/lib/linux64/libopenFrameworks.a(ofBaseTypes.o)\r\n\r\nMy version of OF is 007, it used to work under 0062...\r\n\r\nWhat should I do ?\r\n\r\nThanks","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/933","comments":4,"milestone":null,"number":933,"html_url":"https://github.com/openframeworks/openFrameworks/issues/933","assignee":null,"title":"Problem with moviePlayerExample under linux64","labels":[],"closed_at":null,"created_at":"2012-02-23T15:46:06Z","state":"open","user":{"url":"https://api.github.com/users/agrosjea","avatar_url":"https://secure.gravatar.com/avatar/e52c167621119d58d03c586bb053a633?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e52c167621119d58d03c586bb053a633","login":"agrosjea","id":1466085},"id":3357855,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-23T05:13:24Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/931","comments":0,"milestone":null,"number":931,"html_url":"https://github.com/openframeworks/openFrameworks/issues/931","assignee":null,"title":"ofCamera is not aware of ofOrientation","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-02-23T05:13:24Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":3351646,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-23T05:12:47Z","body":"do we need the ofOrientation parameter in ofSetupPerspective?\r\n\r\nit applies the rotation but if ofSetOrientation hasn't been called before passing the same orientation the results are not the expected.\r\n\r\nto test it:\r\n\r\nofSetOrientation(OF_ORIENTATION_90_LEFT);\r\nofSetPerspective(ofGetWidth(), ofGetHeight(),OF_ORIENTATION_90_LEFT)\r\n\r\nworks as expected but calling only \r\n\r\nofSetPerspective(ofGetWidth(), ofGetHeight(),OF_ORIENTATION_90_LEFT)\r\n\r\napplies a weird rotation cause the values of ofGetWidth(), ofGetHeight() are still the default ones\r\n\r\nis there any case where it's useful to call setupPerspective with a different orientation that the window has?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/930","comments":0,"milestone":null,"number":930,"html_url":"https://github.com/openframeworks/openFrameworks/issues/930","assignee":null,"title":"ofSetupPerspective ofOrientation","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-23T05:12:47Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":3351643,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-23T04:19:48Z","body":"Currently ofGetLogLevel returns the global log level aka for the \"OF\" module. It would be nice to be able to get the log level for user modules via:\r\n\r\n ofLogLevel level = ofGetLogLevel(\"myLogModule\");\r\n\r\nIt would as simple as adding the module as a string variable with a default of \"OF\".\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/929","comments":0,"milestone":null,"number":929,"html_url":"https://github.com/openframeworks/openFrameworks/issues/929","assignee":null,"title":"ofGetLogLevel should also accept modules","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-02-23T04:19:48Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3351374,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-23T03:46:32Z","body":"Currently there is a ofBgColorPtr(), but maybe it's nice to have a ofGetBackground() that returns an ofColor object or a reference to one.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/928","comments":0,"milestone":null,"number":928,"html_url":"https://github.com/openframeworks/openFrameworks/issues/928","assignee":null,"title":"no ofGetBackground()","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-23T03:46:32Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3351170,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-22T19:12:56Z","body":"ofGetViewportWidth/Height returns 0 is called in an object destructor, while ofGetWidth/Height do not. Could the ofGetViewport size be set to the ofGetWidth/Height size instead of 0 be default?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/926","comments":0,"milestone":null,"number":926,"html_url":"https://github.com/openframeworks/openFrameworks/issues/926","assignee":null,"title":"ofGetViewportWidth/Height returns 0 at startup","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-22T19:12:56Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3341020,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-22T00:28:08Z","body":"I noticed a few things when working with ofImage:\r\n\r\n* ofImage has a type variable for the image type but this is an int, as opposed to the ofImageType enum, so it's annoying to force convert ...\r\n* the width, height, & bpp variables are public, they should be protected with getters/setters\r\n* there isn't a getBytesPerPixel, you have to get the pixel reference then call getBytesPerPixel ...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/925","comments":0,"milestone":null,"number":925,"html_url":"https://github.com/openframeworks/openFrameworks/issues/925","assignee":null,"title":"ofImage has type as int, public vars, & missing getBPP, etc","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-22T00:28:08Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3324501,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-29T14:41:17Z","body":"As requested in https://github.com/openframeworks/openFrameworks/pull/794 I've branched openframeworks:develop into my own branch and applied the fixes required to build openFrameworks for Android with MinGW on the windows platform.\r\n\r\nThe instructions on how to compile are still valid (except for the part of patching):\r\nhttp://www.multigesture.net/articles/how-to-setup-openframeworks-for-android-on-windows/\r\n\r\nNote 1: You will need to run:\r\nandroid.bat update project --target android-8 --path C:\\openFrameworks\\addons\\ofxAndroid\\ofAndroidLib\r\n\r\nThis updates the project files for ofAndroidLib project. I didn't included those because those are user specific (they contain the path to the sdk)\r\n\r\nNote 2: d3ddf8e1 \r\nI only added this commit in order to make the examples build properly. Someone still needs to fix the proper implementation.\r\n\r\nNote 3: 7a9cf0ba\r\nWhile working on NodeBeat, we found out that not all devices are using /mnt/sdcard as their external storage location. In some cases the sdcard is located somewhere else (\"Environment.getExternalStorageDirectory()\" doesnt always return the correct location). This commit fixes this problem by checking several locations as reported on multiple Stackoverflow threads. More info about this issue can be found in the commit description.\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/922","comments":13,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":922,"html_url":"https://github.com/openframeworks/openFrameworks/issues/922","assignee":null,"title":"Windows compatibility patches and External storage location fixes.","labels":[],"closed_at":null,"created_at":"2012-02-19T23:30:24Z","state":"open","user":{"url":"https://api.github.com/users/falcon4ever","avatar_url":"https://secure.gravatar.com/avatar/4a503abeaa3d803e55e99093fbf1505d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"4a503abeaa3d803e55e99093fbf1505d","login":"falcon4ever","id":480019},"id":3288053,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/922.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/922","patch_url":"https://github.com/openframeworks/openFrameworks/pull/922.patch"}},{"updated_at":"2012-02-16T09:39:46Z","body":"What about having our own transform stack , in order to:\r\n-avoid to recompute globalTransformMatrix in each ofNode\r\n-could use it when rendering with OpenGL ES 2.0 shaders , which do not support predefined matrix values as world (modelview), worldProjection , or world inverseTranspose (for normals)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/920","comments":0,"milestone":null,"number":920,"html_url":"https://github.com/openframeworks/openFrameworks/issues/920","assignee":null,"title":"Transform stack","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-16T09:39:46Z","state":"open","user":{"url":"https://api.github.com/users/AugusteBonnin","avatar_url":"https://secure.gravatar.com/avatar/cbf7aa7c655d3652170984c9aa497a4c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"cbf7aa7c655d3652170984c9aa497a4c","login":"AugusteBonnin","id":1442658},"id":3248309,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-16T09:31:24Z","body":"There is an easy-to-correct error in ofNode::transformGL:\r\nIt should call loadMatrix with globalTransformMatrix as parameter (with a void restoreGL), or pushMatrix then multMatrix with localTransformMatrix (with a restoreGL that pops the previously pushed matrix),\r\nNOT push then mult with global. The bug appears as soon as you have got more than one level of depth in your node tree. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/919","comments":0,"milestone":null,"number":919,"html_url":"https://github.com/openframeworks/openFrameworks/issues/919","assignee":null,"title":"Error in ofNode::transformGL","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-02-16T09:31:24Z","state":"open","user":{"url":"https://api.github.com/users/AugusteBonnin","avatar_url":"https://secure.gravatar.com/avatar/cbf7aa7c655d3652170984c9aa497a4c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"cbf7aa7c655d3652170984c9aa497a4c","login":"AugusteBonnin","id":1442658},"id":3248230,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-08T10:15:31Z","body":"vs2010 does not include stdint.h support:\r\n\r\nhttp://stackoverflow.com/questions/126279/c99-stdint-h-header-and-ms-visual-studio\r\n\r\nwhich causes addon bugs like this:\r\n\r\nhttps://github.com/openframeworks/openFrameworks/issues/559\r\nhttps://github.com/kylemcdonald/ofxCv/issues/28\r\n\r\neven though these bugs aren't in the core, i think OF is designed to make it easy for people to write cross-platform, cross-compiler code. so i propose that we add an explicit declaration of the missing types for vs2010.\r\n\r\nthis isn't really something i'm worried about directly since i don't use vs2010, but i know people like elliot do. and it would be cleaner to add it once to the core than to add it once for every addon that is broken.\r\n\r\nthe solution would probably look like: take dan's code from the above issue, and move it from ofxOsc into the core.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/917","comments":5,"milestone":null,"number":917,"html_url":"https://github.com/openframeworks/openFrameworks/issues/917","assignee":null,"title":"add global stdint.h support?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"}],"closed_at":null,"created_at":"2012-02-15T02:38:17Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3229504,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-12T14:55:20Z","body":"to match ofGetWidth(), ofGetHeight()\r\n\r\ni.e. for ofGetMouseX() / ofGetWidth()","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/916","comments":1,"milestone":null,"number":916,"html_url":"https://github.com/openframeworks/openFrameworks/issues/916","assignee":null,"title":"ofGetMouseX() and ofGetMouseY() should return float","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-14T05:17:47Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3214174,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-13T08:16:08Z","body":"I had downloaded the 007 version, when I run of_preRelease_v007_linux/scripts/linux/debian/install_codeblocks.sh it install codeblocks without error, but when I run preRelease_v007_linux/scripts/linux/debian/install_dependencies.sh I get this error\r\n\r\ncompiling object for ../../../openFrameworks/graphics/ofGraphics.cpp\r\nmkdir -p obj/Debug/openFrameworks/graphics\r\ng++ -g3 -Wall -fexceptions -I../../../FreeImage/include -I../../../assimp/include -I../../../assimp/include/Compiler -I../../../cairo/include -I../../../cairo/include/cairo -I../../../cairo/include/pixman-1 -I../../../cairo/include/libpng15 -I../../../fmodex/include -I../../../freetype/include -I../../../freetype/include/freetype2 -I../../../freetype/include/freetype2/freetype -I../../../freetype/include/freetype2/freetype/config -I../../../freetype/include/freetype2/freetype/internal -I../../../freetype/include/freetype2/freetype/internal/services -I../../../glew/include -I../../../glew/include/GL -I../../../kiss/include -I../../../portaudio/include -I../../../rtAudio/include -I../../../tess2/include -I../../../poco/include -I../../../glu/include -I../../../openFrameworks/ -I../../../openFrameworks/3d -I../../../openFrameworks/math -I../../../openFrameworks/types -I../../../openFrameworks/graphics -I../../../openFrameworks/utils -I../../../openFrameworks/app -I../../../openFrameworks/video -I../../../openFrameworks/events -I../../../openFrameworks/communication -I../../../openFrameworks/gl -I../../../openFrameworks/sound -pthread -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -DOF_USING_GTK -MMD -MP -MFobj/Debug/openFrameworks/graphics/ofGraphics.d -MTobj/Debug/openFrameworks/graphics/ofGraphics.d -o obj/Debug/openFrameworks/graphics/ofGraphics.o -c ../../../openFrameworks/graphics/ofGraphics.cpp\r\n../../../openFrameworks/graphics/ofGraphics.cpp:37:22: warning: GL/glut.h: No such file or directory\r\n../../../openFrameworks/graphics/ofGraphics.cpp: In function ‘void ofSphere(float)’:\r\n../../../openFrameworks/graphics/ofGraphics.cpp:889: error: ‘glutSolidSphere’ was not declared in this scope\r\n../../../openFrameworks/graphics/ofGraphics.cpp:891: error: ‘glutWireSphere’ was not declared in this scope\r\nmake: *** [obj/Debug/openFrameworks/graphics/ofGraphics.o] Error 1\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/915","comments":2,"milestone":null,"number":915,"html_url":"https://github.com/openframeworks/openFrameworks/issues/915","assignee":null,"title":"problems installing dependencies in debian 6.0.4","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2012-02-13T05:45:01Z","state":"open","user":{"url":"https://api.github.com/users/atomsfat","avatar_url":"https://secure.gravatar.com/avatar/f732e5a8b77f8e4ed8fadc2c71916236?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"f732e5a8b77f8e4ed8fadc2c71916236","login":"atomsfat","id":140008},"id":3196145,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-12T04:41:26Z","body":"We have ofSetDataPathRoot() .... it makes sense to have a Getter as well. Basically I wanted the absolute path to the root data folder.\r\n\r\nI managed to fake this by calling ofToDataPath(\".\",true) but this seems a little counter-intuitive.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/914","comments":0,"milestone":null,"number":914,"html_url":"https://github.com/openframeworks/openFrameworks/issues/914","assignee":null,"title":"Add ofGetDataPathRoot","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-12T04:41:26Z","state":"open","user":{"url":"https://api.github.com/users/pierrep","avatar_url":"https://secure.gravatar.com/avatar/be11c9de8242e7aef0446eceaa289e01?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"be11c9de8242e7aef0446eceaa289e01","login":"pierrep","id":392160},"id":3189189,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-12T14:56:56Z","body":"it would be amazing if ofBeginShape()/ofEndShape() and ofPath supported tex coords (maybe ofTexCoord() and addTexCoord()).\r\n\r\nthis would allow for drawing arbitrary subsections of an image, or for creating an ofMesh that is texture mapped by an image.\r\n\r\nprocessing handles this with extra arguments to vertex() http://processing.org/reference/texture_.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/909","comments":3,"milestone":null,"number":909,"html_url":"https://github.com/openframeworks/openFrameworks/issues/909","assignee":null,"title":"shapes with texCoords","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-02-10T01:42:42Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3166745,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-09T08:16:47Z","body":"a student just showed me how you can use the xcode templates for pocode to create a new project wherever you want on the disk. i know we used to have xcode templates for this, but i just tried them and it seems to be hilariously broken.\r\n\r\ni'm not sure if the new project creator stuff covers this idea or not, but it would be great to have a similar ability with OF somehow.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/902","comments":2,"milestone":null,"number":902,"html_url":"https://github.com/openframeworks/openFrameworks/issues/902","assignee":null,"title":"Xcode templates should be fixed or removed","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-09T04:30:13Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3152323,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-08T21:50:23Z","body":"to draw a filled ofPolyline right now, you need to use beginshape/endshape. but i think a way of adding ofPolylines to an ofPath would be really good -- even a conversion from ofPolyline to ofPath might make sense. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/901","comments":0,"milestone":null,"number":901,"html_url":"https://github.com/openframeworks/openFrameworks/issues/901","assignee":null,"title":"easier filled ofPolyline, or easy ofPolyline->ofPath conversion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-08T21:50:23Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3148441,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-09T14:46:48Z","body":"Hi.\r\n\r\nI've been trying to load stream video ( mpeg2 .ts and hls .m3u8 ) using OF on MacOS 10.7.2.\r\n\r\nBoth cases causes error -2048 in the line below: ( l:89, ofQuickTimePlayer.cpp )\r\n\r\n```c++\r\nerr = NewMovieFromDataRef(&movie, newMovieAsyncOK,nil, urlDataRef, URLDataHandlerSubType);\r\n```\r\n\r\nLoading remote .mp4 works perect. Loading same streams in QuickTime player(v10.1) works without any troubles.\r\n\r\nSo, it seems the trouble happens just when no videofile size info returned from server.\r\n\r\nIs it a bug? Or I've missed smthng?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/897","comments":4,"milestone":null,"number":897,"html_url":"https://github.com/openframeworks/openFrameworks/issues/897","assignee":null,"title":"ofQuickTimePlayer.createMovieFromURL fails on streaming video","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-02-06T11:42:08Z","state":"open","user":{"url":"https://api.github.com/users/4pcbr","avatar_url":"https://secure.gravatar.com/avatar/52e8e29748826594f27b5c6c20a353e0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"52e8e29748826594f27b5c6c20a353e0","login":"4pcbr","id":247109},"id":3106705,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-05T17:11:59Z","body":"This concerns libraries included in addons in source form. According to [this issue](https://github.com/chrisoshea/ofxMidi/issues/8) reported by @danomatika, the makefile can only compile libraries' source code if they are in an addon's `/src` folder. This is in contradiction with @obviousjim's guide to addons' folder structure at http://ofxaddons.com/howto.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/896","comments":6,"milestone":null,"number":896,"html_url":"https://github.com/openframeworks/openFrameworks/issues/896","assignee":null,"title":"Makefile and ofxaddons.com guide don't agree regarding file structure","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"closed_at":null,"created_at":"2012-02-05T15:20:42Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3099567,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-10T02:47:13Z","body":"it needs to handle all these things:\r\n\r\n- meshes vs point clouds\r\n- different types of meshes (depending on the triangles)\r\n- indexed vs non-indexed geometry\r\n- colors, normals, texcoords\r\n- ascii vs binary\r\n- loading from externally created/defined ply files","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/880","comments":1,"milestone":null,"number":880,"html_url":"https://github.com/openframeworks/openFrameworks/issues/880","assignee":null,"title":"test ofMesh::load/save rigorously","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-01-25T16:55:09Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":2967700,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-03T19:40:34Z","body":"If you set the proper switches on the iphone sound stream you can get it to play over whatever is playing on the users ipod without muting it. There are a bunch of switches for this behavior detailed in kAudioSessionProperty_Mode.\r\n\r\nThese would need to be set before initing the audio session. The other issue is that there are like 15-20 flags you can set. Maybe just a slightly higher level setting on the stream so that these behaivors could be set in the users testapp.mm","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/878","comments":0,"milestone":null,"number":878,"html_url":"https://github.com/openframeworks/openFrameworks/issues/878","assignee":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"title":"add a switch to the iphone soundstream to support ambient","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-01-24T16:41:17Z","state":"open","user":{"url":"https://api.github.com/users/jonbro","avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"893ec14dc008e3774afe5841115920d6","login":"jonbro","id":1597},"id":2952993,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-15T18:33:39Z","body":"change pan range to -1..1, right now is 0..1","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/875","comments":2,"milestone":null,"number":875,"html_url":"https://github.com/openframeworks/openFrameworks/issues/875","assignee":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"title":"ofOpenALSoundPlayer pan -1..1","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-01-21T00:01:45Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":2918619,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=6 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4938'), ('content-length', '49322'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"93bd237d518e2c23c29e5e7b340262a8"'), ('date', 'Tue, 29 May 2012 19:27:14 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-03-10T05:09:49Z","body":" testImg.saveImage(ofxiPhoneGetDocumentsDirectory() + \"test.png\");\r\ncrashes the App and results in this error:\r\n\r\nProgram received signal: \"SIGARBT\".\r\n\r\nerror thrown in this line:\r\n\r\n FreeImage_Save(fif, bmp, fileName.c_str());","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/872","comments":1,"milestone":null,"number":872,"html_url":"https://github.com/openframeworks/openFrameworks/issues/872","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"saveImage crashes in iOS Simulator","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-01-17T21:51:17Z","state":"open","user":{"url":"https://api.github.com/users/khlrqa","gravatar_id":"dfa7e4582a04e784d50c750ae51d894f","login":"khlrqa","avatar_url":"https://secure.gravatar.com/avatar/dfa7e4582a04e784d50c750ae51d894f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":53301},"id":2875276,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-01-07T15:38:14Z","body":"Hi -\r\n\r\nwhen it comes down to multicast communication over udp, it's is important that the correct ip address of the local interface is set. Most computers nowadays have several interfaces (wired and wireless). Whereas ofxUDPManager::BindMcast uses INADDR_ANY as the local address, this might be wrong if you are not using the default interface. In my case, I connect the computers in a local wlan. The wlan device is not the primary device on my machine.\r\n\r\nTherefore I rewrote the BindMcast function adding a third argument pLocal, the local Ip address of the network interface.\r\n\r\n```c++\r\nbool ofxUDPManager::BindMcast(char *pMcast, unsigned short usPort, char *pLocal)\r\n```\r\nchanging the line: \r\n\r\n```c++\r\nmreq.imr_interface.s_addr = pLocal == \"\" ? INADDR_ANY: inet_addr(pLocal);\r\n```\r\n\r\nwhich makes a different header file as well:\r\n\r\n```c++\r\nbool BindMcast(char *pMcast, unsigned short usPort, char *pLocal = \"\");\r\n```\r\n\r\nAs you can see, the pLocal Adress is optional, if omitted, INADDR_ANY is used (backwards compatibility).\r\n\r\n\r\nNOTE:\r\n\r\nI've added the function:\r\n\r\n```c++\r\nchar* GetInterfaceAddr(const char* interface); //returns the IP of a specified interface\r\n```\r\n\r\nto the ofxUDPManager as well. This function returns the IP adress of an interface (e.g. en1 on a mac for the airport device). This is useful in dhcp networks, where your own address always changes. The function itself looks like:\r\n\r\n```c++\r\n//--------------------------------------------------------------------------------\r\nchar* ofxUDPManager::GetInterfaceAddr(const char* interface)\r\n{\r\n\tint fd;\r\n\tstruct ifreq ifr;\r\n\tfd = socket(AF_INET, SOCK_DGRAM, 0);\r\n\tifr.ifr_addr.sa_family = AF_INET;\r\n\tstrncpy(ifr.ifr_name, interface, IFNAMSIZ-1);\r\n\tioctl(fd, SIOCGIFADDR, &ifr);\r\n\tclose(fd);\r\n\treturn(inet_ntoa(((struct sockaddr_in *)&ifr.ifr_addr)->sin_addr));\r\n}\r\n```\r\n\r\nPlease not that for this function, additional headers have to be included in ofxUDPManager.h:\r\n\r\n```c++\r\n#include \r\n```\r\n\r\nIf you consider the changes useful, theres a copy of the two files downloadable here:\r\nhttp://dl.dropbox.com/u/394122/ofxUDPManager_uh_07012012.zip\r\n\r\nregards,\r\nUrs Hofer","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/866","comments":0,"milestone":null,"number":866,"html_url":"https://github.com/openframeworks/openFrameworks/issues/866","assignee":null,"title":"Multicast & UDP: Local IP required when dealing with multiple network interfaces","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-01-07T15:38:14Z","state":"open","user":{"url":"https://api.github.com/users/urshofer","gravatar_id":"0424af1c917883090f0edddf55a8f21b","login":"urshofer","avatar_url":"https://secure.gravatar.com/avatar/0424af1c917883090f0edddf55a8f21b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":116976},"id":2756440,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-03T19:40:34Z","body":"I've posted here\r\nhttp://forum.openframeworks.cc/index.php/topic,8467.new.html\r\n\r\nAt the moment when you do sample.unloadSound() on iOS the app crashes with\r\n\r\n[Switching to thread 13059]\r\n[Switching to thread 13059]\r\nProgram received signal: “EXC_BAD_ACCESS”.\r\nwarning: Unable to read symbols for /Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.2.1 (8C148)/Symbols/Developer/usr/lib/libXcodeDebuggerSupport.dylib (file not found).\r\n\r\n\r\nThis has been tested on the soundPlayerExample.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/863","comments":1,"milestone":null,"number":863,"html_url":"https://github.com/openframeworks/openFrameworks/issues/863","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"unloadSound on iOS crashes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-01-03T12:48:09Z","state":"open","user":{"url":"https://api.github.com/users/chrisoshea","gravatar_id":"62d775b0fa28bcde2d9d29405d059be3","login":"chrisoshea","avatar_url":"https://secure.gravatar.com/avatar/62d775b0fa28bcde2d9d29405d059be3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":104786},"id":2710048,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-03T19:38:16Z","body":"ofxsynth doesn't wont to compile because this line:\r\nsource->audioOut( working, numFrames, numChannels, tickCount ) in ofxSoundUnit.cpp is wrong.\r\nthe canddates are:\r\n\r\nvirtual void audioOut( float * output, int bufferSize, int nChannels, int deviceID, long unsigned long tickCount )\r\nvirtual void audioOut( float * output, int bufferSize, int nChannels)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/861","comments":10,"milestone":null,"number":861,"html_url":"https://github.com/openframeworks/openFrameworks/issues/861","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"ofxSynth semantic issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-01-02T11:14:47Z","state":"open","user":{"url":"https://api.github.com/users/viniciolindo","gravatar_id":"7aa1a7f9bf0b838c0d99886c3682ac5d","login":"viniciolindo","avatar_url":"https://secure.gravatar.com/avatar/7aa1a7f9bf0b838c0d99886c3682ac5d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1298679},"id":2700549,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-03T19:40:34Z","body":"ofPixels has getPixels(), but OF has no equivalent getSamples() for sound.\r\n\r\nright now the best solution seems to be using libsndfile with OF http://forum.openframeworks.cc/index.php/topic,3502.0.html\r\n\r\nbut i would love to see the audio architecture for OF mirror the visual architecture better. this means ofSoundPlayer acts like ofVideoPlayer, and we need to add an ofSound object that mirrors ofPixels. ofSound should always store samples in memory, while ofSoundPlayer can stream audio from disk like ofVideoPlayer.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/856","comments":1,"milestone":null,"number":856,"html_url":"https://github.com/openframeworks/openFrameworks/issues/856","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"allow access to individual sound samples","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2011-12-30T02:33:19Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2685556,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-29T04:43:24Z","body":"Today I came across this strange bug.\r\nAny OF app that needed to use the quicktime video grabber crashed at startup when the this was launched from xcode (eg. using build and run) yet it worked correctly when I opened the compiled app by doubleclicking it.\r\n\r\nThe error thrown was a EXCBADACCESS.\r\nthe function that threw this was ACWma1DecoderEntry\r\n\r\nJust some googling and I found that it had to do with Flip4Mac quicktime component.\r\nI uninstalled it and problem gone.\r\n\r\nThe strange thing is that I've had installed Flip4Mac since long ago, yet I updated iTunes a few days ago, that might have done this problem to arise.\r\n\r\nI don't know if this is actually an OF bug from its Quicktime implementation or what ever but it was really annoying getting across with it. Hope this helps others.\r\n\r\nCheers!","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/855","comments":0,"milestone":null,"number":855,"html_url":"https://github.com/openframeworks/openFrameworks/issues/855","assignee":null,"title":"video Grabber crashes with Flip4Mac","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-12-29T04:43:24Z","state":"open","user":{"url":"https://api.github.com/users/roymacdonald","gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","login":"roymacdonald","avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":974878},"id":2677212,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-23T14:13:39Z","body":"ofNode::resetTransform only resets orientation and position.\r\n\r\nI think setScale(1,1,1); needs to be called too in ofNode::resetTransform \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/851","comments":0,"milestone":null,"number":851,"html_url":"https://github.com/openframeworks/openFrameworks/issues/851","assignee":null,"title":"ofNode::resetTransform does not reset scale","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-12-23T14:13:39Z","state":"open","user":{"url":"https://api.github.com/users/companje","gravatar_id":"30a7e135fe77636519d74d129c60e156","login":"companje","avatar_url":"https://secure.gravatar.com/avatar/30a7e135fe77636519d74d129c60e156?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":156066},"id":2647508,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-22T14:31:37Z","body":"if I add an external lib to my addon, I should provide headers for all platforms to be cross-platfomr like OF but the Makefile doesn't have any switch to ignore certain files which are not needed on linux.\r\n\r\nthe problem is that the OF Makefile compiles everythin under libs/mylib/include\r\n\r\nsee here for more: http://forum.openframeworks.cc/index.php?topic=6486.new;topicseen#new","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/849","comments":0,"milestone":null,"number":849,"html_url":"https://github.com/openframeworks/openFrameworks/issues/849","assignee":null,"title":"skip files in an addon with Makefile","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-12-22T14:31:37Z","state":"open","user":{"url":"https://api.github.com/users/benben","gravatar_id":"614a4e493d7c353296519bba720e77c5","login":"benben","avatar_url":"https://secure.gravatar.com/avatar/614a4e493d7c353296519bba720e77c5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":124513},"id":2637694,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-19T22:35:27Z","body":"But it does!\r\n\r\nSomehow it's casting from float to ofPoint, maybe using the ofVec3f( float _x=0.f, float _y=0.f, float _z=0.f ) constructor.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/846","comments":10,"milestone":null,"number":846,"html_url":"https://github.com/openframeworks/openFrameworks/issues/846","assignee":null,"title":"ofCircle(float, float) should not work","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-12-14T00:42:31Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2546302,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-10T21:25:49Z","body":"Please add \"-Wreturn-type\" to the XCode project. I've noticed that it's a common mistake to add a return type but nothing is returned. Adding this option will at least show an error. I think Visual Studio shows an error already by default. You can add it like this in the project settings: http://img805.imageshack.us/img805/8745/screenshot20111210at102.png \r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/843","comments":0,"milestone":null,"number":843,"html_url":"https://github.com/openframeworks/openFrameworks/issues/843","assignee":null,"title":"Add return-type warning for XCode project files ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-12-10T21:25:49Z","state":"open","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":358809},"id":2512838,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-31T19:36:40Z","body":"Playing a movie crashes on exit on linux. Fedora 16 32-bit, latest git.\r\n\r\noutput:\r\n./moviePlayerExample\r\ndeleting video player\r\nterminate called after throwing an instance of 'Poco::SystemException'\r\n what(): System exception\r\nAborted (core dumped)\r\n\r\nbacktrace:\r\n#0 0x00110416 in __kernel_vsyscall ()\r\n#1 0x4623998f in raise () from /lib/libc.so.6\r\n#2 0x4623b2d5 in abort () from /lib/libc.so.6\r\n#3 0x46a9b74d in __gnu_cxx::__verbose_terminate_handler() ()\r\n from /usr/lib/libstdc++.so.6\r\n#4 0x46a994c4 in ?? () from /usr/lib/libstdc++.so.6\r\n#5 0x46a99500 in std::terminate() () from /usr/lib/libstdc++.so.6\r\n#6 0x46a9964f in __cxa_throw () from /usr/lib/libstdc++.so.6\r\n#7 0x08098bef in Poco::MutexImpl::lockImpl (this=0x814eb48)\r\n at /usr/include/Poco/Mutex_POSIX.h:82\r\n#8 0x08098d07 in Poco::FastMutex::lock (this=0x814eb48)\r\n at /usr/include/Poco/Mutex.h:257\r\n#9 0x0809907d in Poco::ScopedLock::ScopedLock (this=\r\n 0xbfffeabc, mutex=...) at /usr/include/Poco/ScopedLock.h:59\r\n#10 0x0809a340 in Poco::AbstractEvent, Poco::p_less > >, Poco::AbstractDelegate, Poco::FastMutex>::operator-=\r\n (this=0x814eb10, aDelegate=...) at /usr/include/Poco/AbstractEvent.h:195\r\n#11 0x080d40c5 in ofRemoveListener, ofEventArgs, ofGstUtils> (event=..., listener=0x82698e0, listenerMethod=\r\n (void (ofGstUtils::*)(ofGstUtils * const, ofEventArgs &)) 0x80d27b4 ) at ../../../openFrameworks/events/ofEventUtils.h:87\r\n#12 0x080d25be in ofGstUtils::close (this=0x82698e0)\r\nat ../../../openFrameworks/video/ofGstUtils.cpp:353\r\n#13 0x080d175e in ofGstUtils::~ofGstUtils (this=0x82698e0, \r\n __in_chrg=)\r\n at ../../../openFrameworks/video/ofGstUtils.cpp:85\r\n#14 0x080d32c4 in ofGstVideoUtils::~ofGstVideoUtils (this=0x82698d8, \r\n __in_chrg=)\r\n at ../../../openFrameworks/video/ofGstUtils.cpp:536\r\n#15 0x080d06ff in ofGstVideoPlayer::~ofGstVideoPlayer (this=0x82698b8, \r\n __in_chrg=, __vtt_parm=)\r\n at ../../../openFrameworks/video/ofGstVideoPlayer.cpp:19\r\n#16 0x080d07d9 in ofGstVideoPlayer::~ofGstVideoPlayer (this=0x82698b8, \r\n __in_chrg=, __vtt_parm=)\r\n at ../../../openFrameworks/video/ofGstVideoPlayer.cpp:21\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/840","comments":3,"milestone":null,"number":840,"html_url":"https://github.com/openframeworks/openFrameworks/issues/840","assignee":null,"title":"ofGstVideoPlayer crash on exit","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2011-12-08T11:53:55Z","state":"open","user":{"url":"https://api.github.com/users/gaborpapp","gravatar_id":"9cb0f8a67c238d2aa91d9a7957b9ef4b","login":"gaborpapp","avatar_url":"https://secure.gravatar.com/avatar/9cb0f8a67c238d2aa91d9a7957b9ef4b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":203532},"id":2486705,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-12T12:30:53Z","body":"right now the only way to change the type of pixels is to go through ofImage and set image type there.\r\n\r\nseems like this should be moved into ofPixels.\r\n\r\nthoughts?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/838","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":838,"html_url":"https://github.com/openframeworks/openFrameworks/issues/838","assignee":{"url":"https://api.github.com/users/obviousjim","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","login":"obviousjim","avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":321434},"title":"ofPixels has no setImageType","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-12-07T16:30:59Z","state":"open","user":{"url":"https://api.github.com/users/obviousjim","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","login":"obviousjim","avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":321434},"id":2476561,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-05T21:44:08Z","body":"I made a small example which uses the Wikipedia xml api to make queries which are then parsed by an ofXmlSettings object. The problem is Wikipedia complains there is no User-Agent string and dosen't return any data, while threatening to block by IP.\r\n\r\nThe fix was as simple as adding this to ofURLFileLoader.cpp line 144:\r\n
    \r\n\t\tHTTPRequest req(HTTPRequest::HTTP_GET, path, HTTPMessage::HTTP_1_1);\r\n        \treq.add(\"User-Agent\", \"Mozilla/5.0 (iPad; U; CPU OS 3_2_1 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Mobile/7B405\");\r\n
    \r\n\r\nIt uses the iOS safari user agent string. I think the best fix is to expose the HTTPRequest and HTTPResponse Poco objects so that, like in the ofxHttpUtils, you could add manually the string/value to the request before sending it. I don't think it should be set ti a default within the class. Also, it would be awesome to be able to add data into and pull data out of the requests. This is a great wrapper, especially the threading, I'd just like to have the full req/response control ... perhaps provide a method to add Poco::HttpRequests and recieve Poco::HttpResponses which could be set as references inside the ofxHttpRequest/ofxHttpResponse objects?\r\n\r\nOn another note, ofURLFileLoader seems like a rather specific name for a regular HTTP action. What's wrong with ofHttpSession etc since I've found it useful for more then just","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/837","comments":0,"milestone":null,"number":837,"html_url":"https://github.com/openframeworks/openFrameworks/issues/837","assignee":null,"title":"ofURLFileLoader dosen't set HTTP User-Agent string and there is no way to set it","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-12-05T21:44:08Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":2455011,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-04T00:08:35Z","body":"Dummy issue to ensure that the 0073 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/836","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","closed_issues":0,"number":6,"title":"0073 Release","due_on":"2012-07-30T07:00:00Z","open_issues":5,"created_at":"2011-12-03T15:37:49Z","state":"open","description":"","id":62090},"number":836,"html_url":"https://github.com/openframeworks/openFrameworks/issues/836","assignee":null,"title":"0073 Release tracking issue","labels":[],"closed_at":null,"created_at":"2011-12-04T00:08:35Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":2439965,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T09:03:22Z","body":"Not sure if is an issue or im doing wrong.\r\n\r\nIm trying to implement dragEvent() in an external class in windoes 7. I'm getting neither an error nor a response nor result. While debugging dragEvent is not called at all. The same code works perfectly on osx. \r\n\r\nhere's some:\r\n\r\ndummy.h\r\n\r\n\t#include \"ofMain.h\"\r\n\r\n\tclass dummy\r\n\t{\r\n\t\tpublic:\r\n\t\t\tdummy();\r\n\t\t\t~dummy();\r\n\t\t\t\t\t\r\n\t\t\tvoid config();\r\n\t\t\tvoid dragEvent(ofDragInfo &info);\r\n\t\t\t\r\n\t\tprivate:\r\n\t\tprotected:\r\n\t\t\r\n\t};\r\n\r\ndummy.cpp\r\n\r\n\t#include \"dummy.h\"\r\n\r\n\tdummy::dummy(){}\r\n\r\n\tdummy::~dummy(){}\r\n\r\n\tvoid dummy::config(){\r\n\t\tofAddListener(ofEvents.fileDragEvent, this, &dummy::dragEvent);\r\n\t}\r\n\r\n\tvoid dummy::dragEvent(ofDragInfo &info){\r\n\t\tfor( int i = 0; i < info.files.size() ; i++){\r\n\t\t\tcout << \"path: \" << info.files[i] << endl;\r\n\t\t}\r\n\t}\r\n\r\n\r\ntesApp.h\r\n\r\n\t#include \"ofMain.h\"\r\n\t#include \"dummy.h\"\r\n\r\n\r\n\tclass testApp : public ofBaseApp{\r\n\r\n\t\tpublic:\r\n\t\t\tvoid setup();\r\n\t\t\tvoid update();\r\n\t\t\tvoid draw();\r\n\r\n\t\t\tvoid keyPressed (int key);\r\n\t\t\tvoid keyReleased(int key);\r\n\t\t\tvoid mouseMoved(int x, int y );\r\n\t\t\tvoid mouseDragged(int x, int y, int button);\r\n\t\t\tvoid mousePressed(int x, int y, int button);\r\n\t\t\tvoid mouseReleased(int x, int y, int button);\r\n\t\t\tvoid windowResized(int w, int h);\r\n\t\t\tvoid dragEvent(ofDragInfo dragInfo);\r\n\t\t\tvoid gotMessage(ofMessage msg);\r\n\t\t\t\r\n\t\t\tdummy d;\r\n\r\ntestApp.cpp\r\n\r\n\t#include \"testApp.h\"\r\n\r\n\tvoid testApp::setup(){\r\n\t\td.config();\r\n\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/831","comments":0,"milestone":null,"number":831,"html_url":"https://github.com/openframeworks/openFrameworks/issues/831","assignee":null,"title":"dragEvent() in new class not working in win7","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-12-03T08:51:42Z","state":"open","user":{"url":"https://api.github.com/users/decolector","gravatar_id":"7165a50ea8df968de57ffb5a27ba6ebc","login":"decolector","avatar_url":"https://secure.gravatar.com/avatar/7165a50ea8df968de57ffb5a27ba6ebc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":390056},"id":2436532,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-02T16:28:49Z","body":"Dummy issue to ensure that the 0072 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/829","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":829,"html_url":"https://github.com/openframeworks/openFrameworks/issues/829","assignee":null,"title":"0072 Release tracking issue","labels":[],"closed_at":null,"created_at":"2011-12-02T16:28:49Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":2429871,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-11-29T17:54:48Z","body":"Loading Futura at font size 10 and simplify=0 yields oversimplified chars in a pdf render. I'm not sure if there's a way to fix this if the fonts are small.\r\n\r\nA workaround is to load the font at a larger size, say 40, then scale down by 0.25 when drawing. \r\n\r\nThe font below is a zoom of the pdf export using font size 10. The font above is Futura at font size 144 by comparison.\r\n\r\n![oversimplified fonts](http://farm8.staticflickr.com/7161/6423768819_9129b6d608_o.jpg)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/825","comments":2,"milestone":null,"number":825,"html_url":"https://github.com/openframeworks/openFrameworks/issues/825","assignee":null,"title":"small font sizes yield oversimplified glyph shapes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-11-29T08:26:16Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":2380571,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-19T07:01:47Z","body":"If I use loadScreenData with anti-Aliasing turned on in the program's startup like this:\r\n\r\nofAppiPhoneWindow * iOSWindow = new ofAppiPhoneWindow();\r\niOSWindow->enableAntiAliasing(4);\r\n\r\nthen the texture will load in nothing but solid black. If I bypass this anti-aliasing, it works fine. I also cannot properly populate a texture using loadScreenData in a landscape orientation. Changing to Portrait orientation in the update loop, and then back to landscape after the grab fixes it.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/822","comments":5,"milestone":null,"number":822,"html_url":"https://github.com/openframeworks/openFrameworks/issues/822","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"iOS - ofTexture.loadScreenData issue when antiAliasing is on","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-11-28T06:48:27Z","state":"open","user":{"url":"https://api.github.com/users/momo-the-monster","gravatar_id":"31f8a3ef87e828b70d2a441c8dae97d8","login":"momo-the-monster","avatar_url":"https://secure.gravatar.com/avatar/31f8a3ef87e828b70d2a441c8dae97d8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":737888},"id":2364541,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-11-28T18:48:58Z","body":"It'd be nice if ofRectangle used a ofVec2f or ofVec3f internally so you could do the something like:\r\n\r\n
    \r\nofRectangle myRect;\r\nofVec2f vel(-1, 2);\r\nmyRect.pos += vel;\r\n
    \r\n\r\nNow I'm not saying drop the x and y member vars, but link them to the ofVec internals thorugh either a union or reference. A reference would be easy through the constructor:\r\n\r\n
    \r\nclass ofRectangle {\r\n\r\n   public:\r\n\r\n     float &x, &y;\r\n     ofVec2f pos;\r\n     ....\r\n\r\n\r\nofRectangle::ofRectangle() : x(pos.x), y(pos.y) {\r\n\r\n...\r\n
    \r\n\r\nThis way we get the best of both worlds without broken code ...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/821","comments":3,"milestone":null,"number":821,"html_url":"https://github.com/openframeworks/openFrameworks/issues/821","assignee":null,"title":"suggest: ofRectangle internal ofVec","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-11-26T20:19:31Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":2356801,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-01T18:13:35Z","body":"i'm experiencing troubles in windows when i use a system file-opening dialog from openframeworks. after using it Data root path seems to get pointing to a wrong location, causing troubles e.g. true type fonts not loading.\r\nif I use the open-file dialog once again to open a file in root folder of the application, then the data path is reset correctly.\r\nusing ofSetDataPathRoot() doens't seem to fix the issue, or maybe I'm not using it correctly.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/819","comments":2,"milestone":null,"number":819,"html_url":"https://github.com/openframeworks/openFrameworks/issues/819","assignee":null,"title":"datapath messed in windows after using file open dialog","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-11-22T10:50:13Z","state":"open","user":{"url":"https://api.github.com/users/hvfrancesco","gravatar_id":"e02a8a3953de9d5d9ec1c7aa8d43eca4","login":"hvfrancesco","avatar_url":"https://secure.gravatar.com/avatar/e02a8a3953de9d5d9ec1c7aa8d43eca4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":614123},"id":2316595,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-02T15:19:58Z","body":"Had a talk with Theo about this. I think that it would be really nice if it were possible to #define/ pre-process macro if you want to exclude modules like ofVideoPlayer/ofSoundplayer in your app. \r\n\r\nThis would be super helpful for a couple of reasons.\r\n\r\nplugins that are not able to use the modules can exclude them without hacking the core.\r\nif you want to reduce the final size of you app and its not using something like ofVideoPlayer you dont need to add it.\r\n\r\nwhat do you think...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/818","comments":1,"milestone":null,"number":818,"html_url":"https://github.com/openframeworks/openFrameworks/issues/818","assignee":null,"title":"#defines for modules ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-11-21T16:45:51Z","state":"open","user":{"url":"https://api.github.com/users/vanderlin","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":149997},"id":2306518,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-11-17T15:17:10Z","body":"Hello, \r\nRunning on MacOS 10.7 with XCode 4.1 I could not compile any of the examples in devApps, except for _DeployExamples. \r\nThe first error always encountered is: \r\n\r\n../../../libs/openFrameworks/utils/ofConstants.h:101:22: error: GL/glew.h: No such file or directory\r\n\r\nI tried both changing the paths of the include part in the code and dragging the GL folder that contains glew.h separately in the project, but neither worked. \r\n\r\nHelp please... \r\n\r\nThanks, \r\n\r\nIannis Zannos","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/815","comments":3,"milestone":null,"number":815,"html_url":"https://github.com/openframeworks/openFrameworks/issues/815","assignee":null,"title":"Examples in devApps folder do not compile. Missing glew.h","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-11-17T13:45:47Z","state":"open","user":{"url":"https://api.github.com/users/iani","gravatar_id":"8200f2533f23c9daaff63c4dba6f4819","login":"iani","avatar_url":"https://secure.gravatar.com/avatar/8200f2533f23c9daaff63c4dba6f4819?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":181956},"id":2268829,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T16:30:18Z","body":"Hello, \r\nIt took me more than 4 hours to get openFrameworks to compile deployExamples on MacOS X 10.7.2 with XCode 4.1, because of having to figure out two things; \r\n\r\n1. Need to change SDK for the deployExamples project definitions to 10.6\r\n2. Need to choose deployExamples in the build menu on the toolbar of the project window. \r\n\r\nPerhaps this info should be added to the readme.txt file of the present master branch in order to spare other people the hassle? \r\n\r\nI suggest the following addition: \r\n=====\r\nTo deploy openFrameworks examples from the files cloned via the present github repository, you should build and run the project: \r\napps/devApps/_DeployExamples/deployExamples.xcodeproj\r\n\r\nTo successfully compile in Lion (MacOS X 10.7) in XCode you should select in the project file list of XCode both the target deployExamples from the top level of the file hierarchy and the project openFrameworksLib.xcodeproj from inside the openFrameworks folder, then find the project definition, and change the SDK to MacOS X 10.6. You should do the same for the targets of those two items. \r\n\r\nImportant: Before clicking the Build and Go, or the Run button, make sure that you choose the deployExamples project in the menu on the toolbar of the project window. (Otherwise if you leave openFrameworks as selected project and push Run or Build and Run, no application will be created or run). \r\n\r\n\r\n=====\r\nHopefully this helps. \r\nCheers, \r\nIannis Zannos","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/814","comments":2,"milestone":null,"number":814,"html_url":"https://github.com/openframeworks/openFrameworks/issues/814","assignee":null,"title":"Suggest adding some info about Lion to readme.txt","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-11-17T11:48:32Z","state":"open","user":{"url":"https://api.github.com/users/iani","gravatar_id":"8200f2533f23c9daaff63c4dba6f4819","login":"iani","avatar_url":"https://secure.gravatar.com/avatar/8200f2533f23c9daaff63c4dba6f4819?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":181956},"id":2267854,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-11-16T04:46:48Z","body":"I'm trying this simple ofFbo example on OF 007, the system is Ubuntu Lucid, with an Intel 945 GPU.\r\n\r\n]//--------------------------------------------------------------\r\nvoid testApp::setup(){\r\n fbo.allocate(500, 500, GL_RGBA);\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::update(){\r\n\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::draw(){\r\n\r\n fbo.begin();\r\n ofClear(255, 255, 255, 255);\r\n ofSetColor(255, 0, 0);\r\n ofCircle(mouseX, mouseY, 100);\r\n fbo.end();\r\n\r\n ofSetColor(255);\r\n fbo.draw(0, 0);\r\n}\r\n\r\nI got a segfault in i915 dri, and any test using ofFbo leads to same results.\r\n\r\n\r\n#0 0x1bd3c36 _mesa_FramebufferRenderbufferEXT() (/usr/lib/dri/i915_dri.so:??)\r\n#1 0x80cc56a ofFbo::createAndAttachRenderbuffer(this=0x85b28e8, internalFormat=34041, attachmentPoint=33306) (../../../openFrameworks/gl/ofFbo.cpp:489)\r\n#2 0x80cc352 ofFbo::allocate(this=0x85b28e8, _settings=...) (../../../openFrameworks/gl/ofFbo.cpp:388)\r\n#3 0x80cc269 ofFbo::allocate(this=0x85b28e8, width=500, height=500, internalformat=6408, numSamples=0) (../../../openFrameworks/gl/ofFbo.cpp:363)\r\n#4 0x80562ec testApp::setup(this=0x85b28d8) (src/testApp.cpp:5)\r\n#5 0x8059ca6 ofNotifySetup() (../../../openFrameworks/events/ofEvents.cpp:73)\r\n#6 0x8056a23 ofAppGlutWindow::runAppViaInfiniteLoop(this=0xbffff2f8, appPtr=0x85b28d8) (../../../openFrameworks/app/ofAppGlutWindow.cpp:317)\r\n#7 0x80584cc ofRunApp(OFSA=0x85b28d8) (../../../openFrameworks/app/ofAppRunner.cpp:82)\r\n#8 0x8055bfc main() (src/main.cpp:14)\r\n\r\nany idea about what I should try or where the problem could be? has anyone experienced similar problems?\r\n\r\nthanks in advance to all","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/811","comments":1,"milestone":null,"number":811,"html_url":"https://github.com/openframeworks/openFrameworks/issues/811","assignee":null,"title":"ofFBO causes segfault on Linux Ubuntu Lucid with i945 GPU","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-11-13T20:49:26Z","state":"open","user":{"url":"https://api.github.com/users/hvfrancesco","gravatar_id":"e02a8a3953de9d5d9ec1c7aa8d43eca4","login":"hvfrancesco","avatar_url":"https://secure.gravatar.com/avatar/e02a8a3953de9d5d9ec1c7aa8d43eca4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":614123},"id":2223158,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-09T18:51:38Z","body":"Julapy and I were discussing how to do this on the forum http://forum.openframeworks.cc/index.php?topic=7852 and I think adding a flag to allocate for mipmaps to ofTexture and ofFbo would come in handy for some people.\r\n\r\n```c\r\nvoid ofTexture::allocate(int w, int h, int internalGlDataType, bool bUseARBExtention, bool generateMipmaps = false) \r\n{\r\n if( generateMipmaps )\r\n {\r\n glTexParameterf( texData.textureTarget, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_NEAREST );\r\n glTexParameterf( texData.textureTarget, GL_TEXTURE_MAG_FILTER, GL_LINEAR );\r\n glTexParameterf( texData.textureTarget, GL_GENERATE_MIPMAP, GL_TRUE );\r\n }\r\n```\r\n\r\nand in ofFbo\r\n\r\n```c\r\nstruct Settings {\r\n bool generateMipMaps; // or int\r\n}\r\n```\r\n\r\nI'd be happy to do this & submit a pull request too.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/810","comments":2,"milestone":null,"number":810,"html_url":"https://github.com/openframeworks/openFrameworks/issues/810","assignee":null,"title":"Add flag for mipmapping in ofTexture/ofFbo","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-11-11T07:34:53Z","state":"open","user":{"url":"https://api.github.com/users/joshuajnoble","gravatar_id":"10960ba0f305803a1cdc7cd6188d643b","login":"joshuajnoble","avatar_url":"https://secure.gravatar.com/avatar/10960ba0f305803a1cdc7cd6188d643b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":237423},"id":2206980,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=7 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4937'), ('content-length', '49276'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"362300e7c4c0fc8f170b2c345084dfad"'), ('date', 'Tue, 29 May 2012 19:27:16 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-12-03T23:58:48Z","body":"right now it's inside ofMath.h","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/800","comments":3,"milestone":null,"number":800,"html_url":"https://github.com/openframeworks/openFrameworks/issues/800","assignee":null,"title":"ofInsidePoly should be a static method of ofPolyline","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-30T04:16:14Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2089523,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-05T21:31:07Z","body":"ofRect very commonly has a little chunk missing from one corner.\r\n\r\nthere is also a discrepancy between the filled and outline rectangles. it's not clear whether the outline rect should be within the bounds of the filled rect, or enclosing the filled rect, and in practice it can be a little of both.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/798","comments":2,"milestone":null,"number":798,"html_url":"https://github.com/openframeworks/openFrameworks/issues/798","assignee":null,"title":"ofRect isn't quite rectangular","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-10-29T06:38:43Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2086039,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-29T02:37:28Z","body":"we're working on some ideas regarding procedural animation and posing:\r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,7714.new.html#new\r\n\r\nwhich should be more powerful than playing back manual animations.\r\n\r\nintegrating it into the core would be ideal, but we're still trying to understand how it works.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/797","comments":0,"milestone":null,"number":797,"html_url":"https://github.com/openframeworks/openFrameworks/issues/797","assignee":null,"title":"procedural posing of bones in ofxAssimpModelLoader","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-29T02:37:28Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2085543,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T03:48:47Z","body":"this fails to display any text:\r\n\r\n\tofBackground(0);\r\n\tofSetColor(255, 254);\r\n\tofDrawBitmapString(\"this text is not displayed\", 10, 20);\r\n\r\nthis is because line 448 of ofBitmapFont.h reads:\r\n\r\n\tglAlphaFunc(GL_EQUAL, 1.0f);\r\n\r\nwhich should be changed to:\r\n\r\n\tglAlphaFunc(GL_GREATER, 0);","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/795","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":795,"html_url":"https://github.com/openframeworks/openFrameworks/issues/795","assignee":null,"title":"ofDrawBitmapString does not work with alpha","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-27T09:50:07Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":2066090,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-25T23:39:09Z","body":"\r\nThis should be user adjustable / on / off. it's sort of a drag to be using easy cam and trigger double clicks are you are interacting with a gui, etc.... \r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/793","comments":1,"milestone":null,"number":793,"html_url":"https://github.com/openframeworks/openFrameworks/issues/793","assignee":null,"title":"easyCam -- ability to disable doubleClick reset","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-25T23:36:40Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":2051692,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T23:53:12Z","body":"when drawing certain shapes i get crashes, debugger claims a tessellator issue pointing to \r\n\"if (!tessTesselate(cacheTess, polyWindingMode, TESS_POLYGONS, 3, 3, 0)){\" in \"performTessellation\" function in file ofTessellator.cpp ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/789","comments":1,"milestone":null,"number":789,"html_url":"https://github.com/openframeworks/openFrameworks/issues/789","assignee":null,"title":"crashes with tessellator","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-10-21T14:49:12Z","state":"open","user":{"url":"https://api.github.com/users/ruim","gravatar_id":"18875575931764c674b5fc64ae8b7274","login":"ruim","avatar_url":"https://secure.gravatar.com/avatar/18875575931764c674b5fc64ae8b7274?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480525},"id":2016194,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-19T22:39:37Z","body":"would be useful as well. Perhaps an ofxMeshUtils would be in order for upcoming versions...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/787","comments":0,"milestone":null,"number":787,"html_url":"https://github.com/openframeworks/openFrameworks/issues/787","assignee":null,"title":"half edge mesh structure extension of ofMesh","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-19T22:39:37Z","state":"open","user":{"url":"https://api.github.com/users/kpasko","gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","login":"kpasko","avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":167271},"id":1999520,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-11-04T21:59:22Z","body":"would be quite useful","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/786","comments":1,"milestone":null,"number":786,"html_url":"https://github.com/openframeworks/openFrameworks/issues/786","assignee":null,"title":"axis aligned bounding box tree for ofMesh","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-19T22:38:35Z","state":"open","user":{"url":"https://api.github.com/users/kpasko","gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","login":"kpasko","avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":167271},"id":1999513,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-27T17:58:58Z","body":"I am loading in boujou camera data (translation and euler rotation), and I get really fine results when I do: \r\n\r\nglTranslatef(tx,ty,tz);\r\nglRotatef(rx, 1,0,0);\r\nglRotatef(ry, 0,1,0);\r\nglRotatef(rz, 0,0,1);\r\n\r\nbut when I create an ofCamera, and do: \r\n\r\nsetPosition(ofPoint(tx, ty, tz));\r\nsetOrientation(ofPoint(rx, ry, rz));\r\n\r\nI get strange results. I am wondering about ofNodes \"setOrientation\" and if it's really right in that the order is switched:\r\n\r\nsetOrientation(ofQuaternion(eulerAngles.y, ofVec3f(0, 1, 0), eulerAngles.x, ofVec3f(1, 0, 0), eulerAngles.z, ofVec3f(0, 0, 1)));\r\n\r\nalso, maybe I am mis interpreting what \"set orientation\" does. But I can't seem to get similar results with ofCam, even if I do, for example, \r\n\r\ncam.setPosition( tx,ty,tz);\r\ncam.rotate( rx, 1,0,0);\r\ncam.rotate( ry, 0,1,0);\r\ncam.rotate( rz, 0,0,1);\r\n\r\nI still don't get the same results as when I do it via opengl. This seems like a bug maybe with how ofNode handles rotation?\r\n\r\n(note , I am calling resetTranform() on the camera, so it's not an accumulation of rotations.... it's just that I can't seem to find a way to get ofCam to rotate in the same way as opengl commands). \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/785","comments":2,"milestone":null,"number":785,"html_url":"https://github.com/openframeworks/openFrameworks/issues/785","assignee":null,"title":"ofCamera setOrientation gives odd results","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-10-19T11:16:42Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":1992818,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-09T11:46:35Z","body":"It seems to be happening pretty far in, if you put debug statements in touchesMoved in EAGL view, you will see that y is set to the x value of the touch.\r\n\r\nThis does not occur in debug mode, or in the simulator, and it has to be done with xcode4. I am running the newest ios5 beta as well.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/778","comments":2,"milestone":null,"number":778,"html_url":"https://github.com/openframeworks/openFrameworks/issues/778","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"running an iphone retina app in release mode causes touch.x == touch.y","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-10-18T11:26:26Z","state":"open","user":{"url":"https://api.github.com/users/jonbro","gravatar_id":"893ec14dc008e3774afe5841115920d6","login":"jonbro","avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1597},"id":1938472,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-16T18:30:08Z","body":"\r\nat the moment, the ofCamera draw calls ofNode, which does't really give you a clear indication of which way the camera is looking. even that is weird, because a camera looks on -z, and the node draw draws a line on positive z. \r\n\r\nI suggest we add something that draws a bit of a frustum (ie, fov, etc) and gives you a feeling about orientation. \r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/774","comments":0,"milestone":null,"number":774,"html_url":"https://github.com/openframeworks/openFrameworks/issues/774","assignee":null,"title":"ofCamera draw() should be more indicative of where the camera is facing. ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-16T18:30:08Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":1922704,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-12T15:09:29Z","body":"Currently we have:\r\n\tvirtual void draw(float x,float y)=0;\r\n\tvirtual void draw(float x,float y,float w, float h)=0;\r\n\r\n\tvirtual float getHeight()=0;\r\n\tvirtual float getWidth()=0;\r\n\r\nSince we're insisting that the user define a getWidth and getHeight, can I ask why we don't set the default of draw(x,y) to be\r\n virtual void draw(float x,float y) {draw(x, y, getWidth(), getHeight()) };\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/772","comments":0,"milestone":null,"number":772,"html_url":"https://github.com/openframeworks/openFrameworks/issues/772","assignee":null,"title":"ofBaseDraws draw(x, y) default","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-10-12T15:08:55Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":1888302,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T15:11:08Z","body":"Greetings,\r\n\r\nI downloaded OF v.007 on my laptop running Vista SP2. I compiled and ran some of the example apps like imageLoader example using VS2010. \r\n\r\nTextures seem to be broken. Images appear as white slabs.\r\n\r\nI tracked it down and found that disabling ArbTex, with ofDisableArbTex(), will get the textures working again. \r\n\r\nUsing ArbTex worked fine in OF v0.62 on the same machine.\r\n\r\nLaptop:\r\nHP Pavilion dv600 Notebook PC\r\nManufacturer: Hewlett-Packard\r\nOperating System: Windows Vista Home Premium, Service Pack 2 (6.0.6002)\r\nPhysical Memory:\t 2037 MB\r\nProcessor: Intel Core2 Duo PU T5250 @ 1.5 GHz, 1.5 GHz\r\n\r\nCompiler:\r\nMicrosoft Visual Studio 2010\r\nInstalled Version: Professional\r\nMicrosoft Visual C++ 2010\r\n\r\nGraphics:\r\nGraphics: Intel Graphics Media Accelerator Driver for Mobile\r\nGraphics: Driver Version: 7.14.10.1244\r\nDirectX Version:\t10.0\r\nOpenGL Version 1.5\r\n\r\nHere's a full report of OpenGL info from GLview:\r\n\r\n\r\nRenderer: Intel 965/963 Graphics Media Accelerator\r\nVendor: Intel\r\nMemory: 448 MB\r\nVersion: 1.5.0 - Build 7.14.10.1244\r\nShading language version: N/A\r\n\r\n\r\nMax texture size: 2048 x 2048\r\nMax texture coordinates: 8\r\nMax vertex texture image units: 0\r\nMax texture image units: 16\r\nMax geometry texture units: 0\r\nMax anisotropic filtering value: 2\r\nMax number of light sources: 16\r\nMax viewport size: 2048 x 2048\r\nMax uniform vertex components: 0\r\nMax uniform fragment components: 0\r\nMax geometry uniform components: 0\r\nMax varying floats: 0\r\nMax samples: 0\r\nMax draw buffers: 0\r\n\r\n\r\nExtensions: 56\r\n\r\nGL_3DFX_texture_compression_FXT1\r\nGL_ARB_depth_texture\r\nGL_ARB_fragment_program\r\nGL_ARB_multitexture\r\nGL_ARB_occlusion_query\r\nGL_ARB_point_parameters\r\nGL_ARB_shadow\r\nGL_ARB_texture_border_clamp\r\nGL_ARB_texture_compression\r\nGL_ARB_texture_cube_map\r\nGL_ARB_texture_env_add\r\nGL_ARB_texture_env_combine\r\nGL_ARB_texture_env_crossbar\r\nGL_ARB_texture_env_dot3\r\nGL_ARB_transpose_matrix\r\nGL_ARB_vertex_buffer_object\r\nGL_ARB_vertex_program\r\nGL_ARB_window_pos\r\nGL_EXT_abgr\r\nGL_EXT_bgra\r\nGL_EXT_blend_color\r\nGL_EXT_blend_func_separate\r\nGL_EXT_blend_minmax\r\nGL_EXT_blend_subtract\r\nGL_EXT_clip_volume_hint\r\nGL_EXT_compiled_vertex_array\r\nGL_EXT_draw_range_elements\r\nGL_EXT_fog_coord\r\nGL_EXT_multi_draw_arrays\r\nGL_EXT_packed_pixels\r\nGL_EXT_rescale_normal\r\nGL_EXT_secondary_color\r\nGL_EXT_separate_specular_color\r\nGL_EXT_shadow_funcs\r\nGL_EXT_stencil_two_side\r\nGL_EXT_stencil_wrap\r\nGL_EXT_texture3D\r\nGL_EXT_texture_compression_s3tc\r\nGL_EXT_texture_env_add\r\nGL_EXT_texture_env_combine\r\nGL_EXT_texture_filter_anisotropic\r\nGL_EXT_texture_lod_bias\r\nGL_IBM_texture_mirrored_repeat\r\nGL_NV_blend_square\r\nGL_NV_texgen_reflection\r\nGL_SGIS_generate_mipmap\r\nGL_SGIS_texture_edge_clamp\r\nGL_SGIS_texture_lod\r\nGL_WIN_swap_hint\r\nWGL_ARB_buffer_region\r\nWGL_ARB_extensions_string\r\nWGL_ARB_make_current_read\r\nWGL_ARB_pbuffer\r\nWGL_ARB_pixel_format\r\nWGL_EXT_extensions_string\r\nWGL_EXT_swap_control\r\n\r\nCore features\r\nv1.1 (100 % - 7/7)\r\nv1.2 (100 % - 8/8)\r\nv1.3 (100 % - 9/9)\r\nv1.4 (100 % - 15/15)\r\nv1.5 (100 % - 3/3)\r\nv2.0 (10 % - 1/10)\r\nv2.1 (0 % - 0/3)\r\nv3.0 (0 % - 0/23)\r\nv3.1 (0 % - 0/8)\r\nv3.2 (0 % - 0/10)\r\nv3.3 (0 % - 0/10)\r\nv4.0 (0 % - 0/14)\r\nv4.1 (0 % - 0/7)\r\nv4.2 (0 % - 0/12)\r\n\r\nOpenGL driver version check (Current: 1.5.0 - Build 7.14.10.1244, Latest known: ):\r\nLatest version of display drivers found\r\nAccording the database, you are running the latest display drivers for your video card.\r\n\r\nNo ICD registry entry\r\nThe current OpenGL driver doesn't expose the SOFTWARE/Microsoft/Windows (NT)/CurrentVersion/OpenGLDrivers registry entry. Unable to detect the driver version, driver revision name and filename.\r\n\r\nCompiled vertex array support\r\nThis feature improves OpenGL performance by using video memory to cache transformed vertices.\r\n\r\nMultitexture support\r\nThis feature accelerates complex rendering such as lightmaps or environment mapping.\r\n\r\nSecondary color support\r\nThis feature provides an alternate method of coloring specular highlights on polygons.\r\n\r\nS3TC compression support\r\nThis feature improves texture mapping performance in some applications by using lossy compression.\r\n\r\nTexture edge clamp support\r\nThis feature improves texturing quality by adding clamping control to edge texel filtering.\r\n\r\nVertex program support\r\nThis feature enables a wide variety of effects via flexible vertex programming (equivalent to DX8 Vertex Shader.)\r\n\r\nFragment program support\r\nThis feature enables a wide variety of effects via per pixel programming (equivalent to DX9 Pixel Shader.)\r\n\r\nTexture anisotropic filtering support\r\nThis feature improves the quality of texture mapping on oblique surfaces.\r\n\r\nOcclusion test support\r\nThis feature provides hardware accelerated culling for objects.\r\n\r\nNo OpenGL Shading Language support\r\nThis may break compatibility for applications using per pixel shading.\r\n\r\nNo Frame buffer object support\r\nThis may break compatibility for applications using render to texture functions.\r\n\r\nDisabling ArbTex will work for me, but I thought others might have the same problem with 007.\r\n\r\n- Rob","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/771","comments":3,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":771,"html_url":"https://github.com/openframeworks/openFrameworks/issues/771","assignee":null,"title":"Textures Didn't Work in 007 on my Laptop, Had to Disable ArbTex","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2011-10-11T13:02:28Z","state":"open","user":{"url":"https://api.github.com/users/robgonsalves","gravatar_id":"7c2e18ac17a0b907dbac36aaa6a9ec0f","login":"robgonsalves","avatar_url":"https://secure.gravatar.com/avatar/7c2e18ac17a0b907dbac36aaa6a9ec0f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1119357},"id":1874373,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-24T15:27:29Z","body":"When integrating openFrameworks into existing build systems, it would make things easier if this common include convention was followed.\r\n\r\ni.e. to include openFrameworks headers in my own build, because all the includes look like:\r\n\r\n#include \"ofMesh.h\"\r\n#include \"ofAppGlutWindow.h\"\r\n#include \"ofSerial.h\"\r\n\r\nI have to add all these paths to my include paths:\r\n\r\n\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/app\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/3d\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/communication\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/gl\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/graphics\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/utils\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/types\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/math\r\n ../Libraries/of_preRelease_v007_linux64/libs/openFrameworks/events\r\n\r\n\r\n\r\nIt is common to instead structure files like (in the case of openFrameworks):\r\n\r\noF/include/oF\r\noF/include/oF/app\r\noF/include/oF/3d\r\noF/include/oF/communication\r\noF/include/oF/gl\r\noF/include/oF/graphics\r\n...etc...\r\n\r\nand just write:\r\n\r\n#include \r\n#include \r\n\r\netc.\r\n\r\nI'm not sure if there is an argument to leave it like it is because it's easier for oF's demographic? But I would say teaching the some_lib/include/some_lib/ convention would help people use more C++.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/767","comments":2,"milestone":null,"number":767,"html_url":"https://github.com/openframeworks/openFrameworks/issues/767","assignee":null,"title":"#include instead of #include ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-10-09T03:58:30Z","state":"open","user":{"url":"https://api.github.com/users/gimlids","gravatar_id":"cc4cace34c61103f0624002a692820f7","login":"gimlids","avatar_url":"https://secure.gravatar.com/avatar/cc4cace34c61103f0624002a692820f7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":186277},"id":1854874,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-12T13:12:02Z","body":"\r\nat the moment, ofNode has a draw function that has awkwardly hard coded sizes: \r\n\r\nvirtual void customDraw() {\r\n\t\tofBox(10);\r\n\t\tofDrawAxis(20);\r\n\t}\r\n\r\nI'd like a draw(size) option. obviously I can extend ofNode and create my own functions, but if I just draw a node, I might want to adjust the size internally, as the \"10\" and \"20\" might not make any sense based on where I am drawing, for example here: \r\n\r\nhttp://imgur.com/idWPp\r\n\r\nlooks quite weird, but at 1/10th the size would look ok. \r\n\r\nas most other OF objects have draw(size) options, I think ofNodeShould have this too. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/766","comments":4,"milestone":null,"number":766,"html_url":"https://github.com/openframeworks/openFrameworks/issues/766","assignee":null,"title":"ofNode should have a draw(float size) option","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-08T09:38:46Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":1851779,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T23:51:04Z","body":"edit: originally this issue was about adding glu functions. now i realize any remaining ones need to be removed. but it's still relevant to have an ofScreenToWorld and ofWorldToScreen. \r\n\r\nthis would be really awesome. there is already some code in ofDrawBitmapString that's using gluProject, it would be good to clean it up.\r\n\r\nthe main issue is that glu is not on iOS, so we'd need to find/write our own implementation.\r\n\r\nhere's a first pass:\r\n\r\n\tGLdouble modelviewMatrix[16], projectionMatrix[16];\r\n\tGLint viewport[4];\r\n\tvoid updateProjectionState() {\r\n\t\tglGetDoublev(GL_MODELVIEW_MATRIX, modelviewMatrix);\r\n\t\tglGetDoublev(GL_PROJECTION_MATRIX, projectionMatrix);\r\n\t\tglGetIntegerv(GL_VIEWPORT, viewport);\r\n\t}\r\n\r\n\tofVec3f ofWorldToScreen(ofVec3f world) {\r\n\t\tupdateProjectionState();\r\n\t\tGLdouble x, y, z;\r\n\t\tgluProject(world.x, world.y, world.z, modelviewMatrix, projectionMatrix, viewport, &x, &y, &z);\r\n\t\tofVec3f screen(x, y, z);\r\n\t\tscreen.y = ofGetHeight() - screen.y;\r\n\t\treturn screen;\r\n\t}\r\n\r\n\tofVec3f ofScreenToWorld(ofVec3f screen) {\r\n\t\tupdateProjectionState();\r\n\t\tGLdouble x, y, z;\r\n\t\tscreen.y = ofGetHeight() - screen.y;\r\n\t\tgluUnProject(screen.x, screen.y, screen.z, modelviewMatrix, projectionMatrix, viewport, &x, &y, &z);\r\n\t\tofVec3f world(x, y, z);\r\n\t\treturn world;\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/765","comments":4,"milestone":null,"number":765,"html_url":"https://github.com/openframeworks/openFrameworks/issues/765","assignee":null,"title":"remove gluProject and gluUnProject, add screenToWorld, worldToScreen","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-10-07T09:46:06Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1841802,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T06:02:37Z","body":"I made an app using the preRelease version 007, I have a gui view with a bunch of buttons and sliders this view is 1/3 of the screen size and sits at the bottom, it is an Universal app that allows any orientation on the iPad and supports Portrait only for the iPhone / iPod Touch, here is my problem I need to allow touches to pass through the gui view for this I use **[ofxiPhoneGetGLView() addSubview:guiViewController.view];** the problem this method is that the gui view does not call the **willAnimateRotationToInterfaceOrientation()** at launch, and I get the following message in the console\r\n_**Action connections from <UIView: 0x5b88d0; frame = (20 0; 280 320); autoresize = LM+RM+H; layer = <CALayer: 0x5b7d30>> are not supported.**_\r\n\r\n if I use **[ofxiPhoneGetUIWindow() addSubview:guiViewController.view];** the **willAnimateRotationToInterfaceOrientation()** method works at launch as expected and the gui view adjust itself to the correct position and size\r\n\r\nAny help will be much appreciated","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/764","comments":1,"milestone":null,"number":764,"html_url":"https://github.com/openframeworks/openFrameworks/issues/764","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"Autoresize problem in iOS","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-10-05T20:35:04Z","state":"open","user":{"url":"https://api.github.com/users/nardove","gravatar_id":"8022cb5f529975afbc64cc9312008d8c","login":"nardove","avatar_url":"https://secure.gravatar.com/avatar/8022cb5f529975afbc64cc9312008d8c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":277690},"id":1827792,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-28T01:00:34Z","body":"ofxXmlXettings uses TinyXML which gives you lots of useful error info like what line the error is on as well as what it has trouble reading. This is super awesome and useful to people like me who always mistype xml here and there.\r\n\r\nCurrently ofxXmlSettings::loadFile only returns a bool and you're left to figure out if it's a path issue, bad xml formatting, etc. At the least, we should be able to grab an error string.\r\n\r\nHere's how to do it:\r\n
    \r\nstd::string Xml::getErrorString(const TiXmlDocument* xmlDoc)\r\n{\r\n    if(xmlDoc == NULL)\r\n        return \"\";\r\n\r\n    std::stringstream error;\r\n    error << \"line \" <<  xmlDoc->ErrorRow() << \", \" << (std::string) xmlDoc->ErrorDesc();\r\n    return error.str();\r\n}\r\n
    ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/760","comments":1,"milestone":null,"number":760,"html_url":"https://github.com/openframeworks/openFrameworks/issues/760","assignee":null,"title":"ofxXmlSettings does not print any useful error messages","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-09-28T00:53:09Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":1758237,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T03:48:47Z","body":"This would be the best thing ever. \r\n\r\nstring ipAddr = ofxXmlSettings::readValueFromFile(\"data.xml\", \"ip\", \"127.0.0.1\"); \r\n\r\nofxXmlSettings::saveValueToFile(\"data.xml\", \"ip\", ipAddr); ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/758","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":758,"html_url":"https://github.com/openframeworks/openFrameworks/issues/758","assignee":null,"title":"non ofxXmlSettings object read and write value","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-09-26T11:54:06Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":1738864,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-25T13:22:59Z","body":"in my opinion, it would make sense for ofPixels::allocate to initialize the new memory to 0. even for large images, i don't think this is such an expensive operation.\r\n\r\ni discovered that it is not initialized to 0 when i had a really weird bug -- some code that gave me different results depending on whether i loaded another image before allocating or not. i was expecting OF to act like opencv, which also sets new memory to 0. this would be in line with ofVec*, ofColor, and a few other things, which are all allocated to 0.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/757","comments":0,"milestone":null,"number":757,"html_url":"https://github.com/openframeworks/openFrameworks/issues/757","assignee":null,"title":"ofPixels::allocate should init new memory","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-09-25T13:22:59Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1733504,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-22T08:20:27Z","body":"void ofFbo::end() {\r\n\tunbind();\r\n\tif(ofGetGLRenderer()){\r\n\t\tofGetGLRenderer()->setCurrentFBO(NULL);\r\n\t}\r\n\tofPopView();\r\n}\r\n\r\nthis will go wrong if nested fbo as following\r\n\r\nfbo1.begin();\r\n...\r\n fbo2.begin();\r\n ...\r\n fbo2.end();\r\n...\r\nfbo1.end();\r\n\r\nso probably the current fbo must not be set NULL\r\n\r\nerror show's in\r\nvoid ofGLRenderer::viewport(float x, float y, float width, float height, bool invertY) {\r\n\tif(width == 0) width = ofGetWindowWidth();\r\n\tif(height == 0) height = ofGetWindowHeight();\r\n\r\n\tif (invertY){\r\n\t\tif(currentFbo){\r\n\t\t\ty = currentFbo->getHeight() - (y + height);\r\n\t\t}else{\r\n\t\t\ty = ofGetWindowHeight() - (y + height);\r\n\t\t}\r\n\t}\r\n\tglViewport(x, y, width, height);\t\r\n}\r\nthe 'y' will computing wrong when current height is wrong\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/754","comments":0,"milestone":null,"number":754,"html_url":"https://github.com/openframeworks/openFrameworks/issues/754","assignee":null,"title":"nested fbo causing currentFBO lost","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-09-22T08:20:27Z","state":"open","user":{"url":"https://api.github.com/users/liquidzym","gravatar_id":"166640c513e589c86d2de49c52258eb4","login":"liquidzym","avatar_url":"https://secure.gravatar.com/avatar/166640c513e589c86d2de49c52258eb4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":51957},"id":1708332,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:38:03Z","body":"I found an issue with readToPixels() on iOS that works as expected when compiled for OSX. \r\n\r\nInitialize an FBO:\r\n\r\n   ofFbo::Settings settings;\r\n    settings.width = 1024;\r\n    settings.height = 1024;\r\n    settings.internalformat = GL_RGB;\r\n    settings.numSamples = 0;\r\n    settings.useDepth = false;\r\n    settings.useStencil = false;\r\n    screenFBO.allocate(settings);\r\n\r\nthen draw into the FBO and attempt to retrieve the pixels:\r\n\r\n ofPixels pixels; \r\n screenFBO.readToPixels(pixels); \r\n\r\nThis gives me the ofPixels I'm expecting in OSX, in iOS the pixels aren't populated. I can draw the FBO and see it on screen, I just can't get the pixels out of the texture in iOS.\r\n\r\nThis seems to be related to this portion of readToPixels() from ofFbo.cpp:\r\n\r\n bind(); \r\n int format,type; \r\n ofGetGlFormatAndType(settings.internalformat,format,type); \r\n glReadPixels(0,0,settings.width, settings.height, format, GL_UNSIGNED_BYTE, pixels.getPixels()); \r\n unbind(); \r\n\r\nHas anyone experienced this issue – any fixes?\r\n\r\nThanks,\r\nSteve","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/753","comments":1,"milestone":null,"number":753,"html_url":"https://github.com/openframeworks/openFrameworks/issues/753","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"ofFbo readToPixels() in iOS","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-09-21T20:50:33Z","state":"open","user":{"url":"https://api.github.com/users/stephen-baker","gravatar_id":"96e9ae469240e57fc3ebeed6769c7016","login":"stephen-baker","avatar_url":"https://secure.gravatar.com/avatar/96e9ae469240e57fc3ebeed6769c7016?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1047836},"id":1704855,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-21T10:37:20Z","body":"I'm having a problem with creating an image out of ofFbo pixels with some image and fbo sizes\r\n\r\n```c++\r\nvoid testApp::setup(){\r\n\r\n ofSetLogLevel(OF_LOG_VERBOSE);\r\n\tofSetVerticalSync(false);\r\n ofBackground(34, 34, 34);\r\n\tofEnableAlphaBlending();\r\n\r\n ofSetWindowShape(1024, ofGetScreenHeight()-70);\r\n ofSetFrameRate(60);\r\n\r\n frame.loadImage(\"lay.png\");\r\n \r\n imageHeight = 1172;\r\n imageWidth = 1182;\r\n\r\n mergeFbo.allocate(imageWidth, imageHeight, GL_RGB);\r\n\r\n final.setImageType(OF_IMAGE_COLOR);\r\n\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::draw(){\r\n\r\n ofEnableAlphaBlending();\r\n\r\n mergeFbo.begin();\r\n\r\n ofClear(0, 0, 0, 1);\r\n\r\n frame.draw(0, 0);\r\n\r\n mergeFbo.end();\r\n\r\n\r\n mergeFbo.draw(200, 100, 100, 200);\r\n \r\n \r\n mergeFbo.readToPixels(pixels);\r\n final.setFromPixels(pixels);\r\n\r\n final.draw(0, 0);\r\n\r\n}\r\n```","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/752","comments":1,"milestone":null,"number":752,"html_url":"https://github.com/openframeworks/openFrameworks/issues/752","assignee":null,"title":"ofFbo (problems with certain image dimensions)","labels":[],"closed_at":null,"created_at":"2011-09-20T21:16:24Z","state":"open","user":{"url":"https://api.github.com/users/ammalgamma","gravatar_id":"96b69749f518cf6a2964b999bf29ee8e","login":"ammalgamma","avatar_url":"https://secure.gravatar.com/avatar/96b69749f518cf6a2964b999bf29ee8e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":517000},"id":1691874,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-19T09:04:12Z","body":"feature request for a more generic ofJoin() function that accepts vectors of all kinds of objects (float, int, ofVec2f, etc) rather than just string. anything that implements operator<<\r\n\r\nhere's an example using stl:\r\n\r\n\t#include \r\n\ttemplate \r\n\tstring ofJoin(vector& elements, string delimiter) {\r\n\t\tstringstream result;\r\n\t\tcopy(elements.begin(), elements.end(), ostream_iterator(result, delimiter.c_str()));\r\n\t\treturn result.str();\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/748","comments":3,"milestone":null,"number":748,"html_url":"https://github.com/openframeworks/openFrameworks/issues/748","assignee":null,"title":"more generic ofJoin","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-09-17T07:26:18Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1668066,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-21T17:22:14Z","body":"\r\nI'm looking into creating some new primitives for OF [1] and the polygon winding has me a bit confused.\r\n\r\nIf you take for instance \"graphicsExample\" an you add:\r\n\r\n```glEnable( GL_CULL_FACE );```\r\n\r\nSomewhere you will no longer see much drawn to screen.\r\n\r\nGL_CCW is the default FrontFace for OpenGL, but OF seems to be the opposite.\r\nhttp://www.khronos.org/opengles/sdk/docs/man/xhtml/glFrontFace.xml\r\n\r\nWhich is coolio of course, as long as we are consistent.\r\n\r\nOur options are either to throw a ```glFrontFace( GL_CW );``` in there somewhere OR re-write all the drawing to be consistent with OpenGL default, not sure what is the best in the long run.\r\n\r\nWhat say you all?\r\n\r\n/A\r\n\r\n\r\n[1] https://github.com/andreasmuller/openFrameworks/blob/develop-opengles2/libs/openFrameworks/3d/of3dPrimitives.h","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/745","comments":2,"milestone":null,"number":745,"html_url":"https://github.com/openframeworks/openFrameworks/issues/745","assignee":null,"title":"Polygon winding","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-09-14T13:50:48Z","state":"open","user":{"url":"https://api.github.com/users/andreasmuller","gravatar_id":"210831a04d36f1aa26413ecbdbd4b07c","login":"andreasmuller","avatar_url":"https://secure.gravatar.com/avatar/210831a04d36f1aa26413ecbdbd4b07c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":791114},"id":1643672,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=8 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4936'), ('content-length', '42586'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"1f6749765d79f3319834dfda4c27cd5e"'), ('date', 'Tue, 29 May 2012 19:27:17 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-03-17T16:52:58Z","body":"i think it would be wonderful if every OF example was named ofApp instead of testApp. especially because:\r\n\r\n\tclass ofApp : public ofBaseApp {\r\n\r\nis more natural than:\r\n\r\n\tclass testApp : public ofBaseApp {\r\n\r\ngiven the rest of OF naming conventions. and it would increase consistency with things like:\r\n\r\n\tofGetAppPtr();\r\n\tofAppBaseWindow\r\n\tofAppGlutWindow\r\n\r\nthis is a massive refactor that shouldn't be difficult, but should be done at the same time as something like a code formatting cleanup.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/744","comments":10,"milestone":null,"number":744,"html_url":"https://github.com/openframeworks/openFrameworks/issues/744","assignee":null,"title":"rename testApp to ofApp","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-09-14T07:02:36Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1641198,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-26T11:56:48Z","body":"calling ofEnableAlphaBlending() crashes my app on a machine with opengl version 1.1.0, because glBlendEquation(), introduced at opengl 1.3, needs to gracefully degrade. Here is the solution:\r\n\r\n
    \r\nvoid ofEnableAlphaBlending_slightlySafer(void){\r\n\tconst GLubyte * version = glGetString(GL_VERSION);\r\n\tint major, minor;\r\n\tsscanf((const char*)version, \"%i.%i\",&major, &minor);\r\n\r\n\tif(major > 1 || (major==1 && minor>=3)){\r\n\t\tofEnableAlphaBlending();\r\n\t}\t\r\n}\r\n
    ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/743","comments":1,"milestone":null,"number":743,"html_url":"https://github.com/openframeworks/openFrameworks/issues/743","assignee":null,"title":"seg fault on ofEnableAlphaBlending() -> glBlendEquation()","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-09-13T22:53:55Z","state":"open","user":{"url":"https://api.github.com/users/jtnimoy","gravatar_id":"153ba4a8df491692b717daad7a6030be","login":"jtnimoy","avatar_url":"https://secure.gravatar.com/avatar/153ba4a8df491692b717daad7a6030be?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":183796},"id":1639020,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:39:00Z","body":"In ofxiPhoneAppDelegate.mm in the setAnimationFrameInterval method should be changed from\r\n\r\n\r\nif (animating){\r\n [self stopAnimation];\r\n [self startAnimation];\r\n}\r\n\r\nto\r\n\r\nif (animating){\r\n [self stopAnimation];\r\n}\r\n [self startAnimation];\r\n\r\nThis will allow it start again if it's stopped.\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/738","comments":0,"milestone":null,"number":738,"html_url":"https://github.com/openframeworks/openFrameworks/issues/738","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"ofxiPhone - setting ofSetFrameRate(0) and then back to > 0 doesn't start again","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-09-12T21:23:04Z","state":"open","user":{"url":"https://api.github.com/users/cerupcat","gravatar_id":"91b3d4bfbbb99d840b096cde3af877bf","login":"cerupcat","avatar_url":"https://secure.gravatar.com/avatar/91b3d4bfbbb99d840b096cde3af877bf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":204151},"id":1628082,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T22:55:09Z","body":"it would be awesome to have lines drawn nicer when they are 1 thick and 2 make sharp edges. processing has some functions strokeCap() and strokeJoin() for setting this behavior, but it doesn't work with OPENGL mode. we could probably adapt a geometry shader to do some smart mitering for us on the GPU.\r\n\r\nprompted by the discussion here: http://forum.openframeworks.cc/index.php/topic,7278.0/topicseen.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/730","comments":1,"milestone":null,"number":730,"html_url":"https://github.com/openframeworks/openFrameworks/issues/730","assignee":null,"title":"nicer stroke mitering/joining and end caps","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-09-07T03:27:13Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1586262,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-05T15:39:58Z","body":"ofColor_:operator+= currently calls clamp() when it's done doing the +=\r\n\r\ni imagined one of the applications of ofFloatColor would be for averaging or summing ofColor, which normally requires non-saturation semantics for +=. i could also do a / or * every += operation to avoid overflow. this doesn't have to be a bug, but it should at least be documented clearly when we discuss ofColor.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/728","comments":1,"milestone":null,"number":728,"html_url":"https://github.com/openframeworks/openFrameworks/issues/728","assignee":null,"title":"ofColor and clamping","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-09-05T14:41:50Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1569364,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-05T10:17:48Z","body":"Hello\r\n\r\nI had a problem with gamma for my Carbon app in OSX 10.6, UI looked \"blotched\" with Pappis' help it was solved, here are details:\r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,6404.msg30519.html#msg30519\r\n\r\nHowever, the trick with HIWindowSetColorSpace does not work in OSX 10.7 Lion\r\nLooking for solutions again\r\n\r\nThanks\r\nTom\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/727","comments":0,"milestone":null,"number":727,"html_url":"https://github.com/openframeworks/openFrameworks/issues/727","assignee":null,"title":"OSX 10.7 Gamma Problem","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2011-09-05T10:17:48Z","state":"open","user":{"url":"https://api.github.com/users/Tommato","gravatar_id":"95bbfbd39116dffe06be4d816f322bf0","login":"Tommato","avatar_url":"https://secure.gravatar.com/avatar/95bbfbd39116dffe06be4d816f322bf0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1027082},"id":1566286,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-26T18:44:30Z","body":"Related forum post: http://forum.openframeworks.cc/index.php/topic,7053.0.html\r\n\r\nFrom what I understand, it's best to leave the mainThread for UIKit elements and move openGL and other things to another thread. Currently, if there's a lot of drawing then the UIKit elements are delayed and can even pause the update/draw methods entirely. Moving the drawing to it's own thread should help with this.\r\n\r\nI'm still testing, but this looks like it could be a good candidate for core integration. It has examples of threaded, single (what we currently use), and GCD (which I think is iOS 4.0 only) openGL implementation: https://github.com/Volcore/LimbicGL In my early tests, it does fix any pausing of the update/draw with the threaded example (haven't tried the others). I could use some help though trying to integrate this into OF properly.\r\n\r\nThe main example classes are here: https://github.com/Volcore/LimbicGL/tree/master/limbicgl/drivers\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/721","comments":0,"milestone":null,"number":721,"html_url":"https://github.com/openframeworks/openFrameworks/issues/721","assignee":null,"title":"ofxiPhone - Move openGL to its own thread","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-08-26T18:43:09Z","state":"open","user":{"url":"https://api.github.com/users/cerupcat","gravatar_id":"91b3d4bfbbb99d840b096cde3af877bf","login":"cerupcat","avatar_url":"https://secure.gravatar.com/avatar/91b3d4bfbbb99d840b096cde3af877bf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":204151},"id":1497330,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:39:39Z","body":"The libraries linked in 007 as well as the new AVFoundationVideoPlayer is not compatible with 3.x devices and won't build.\r\n\r\nAfter further exploring, I believe these are the steps to get things running on 3.x devices.\r\n\r\n1) In Xcode, Click on target -> application name\r\n2) In the File Name window, set AVFoundation, CoreMedia, and CoreVideo from role \"required\" to \"weak\". They need to be weak linked since they're only available in iOS 4+.\r\n3) In ofxiPhone src folder, AVFoundationVideoPlayer.mm uses CMBlockBufferRef and that is only available in iOS4. This means, this function should be commented out (sorry - avfoundationvideoplayer won't run on iOS4 unless the blocker is changed). Either that or you can comment ouf AVFoundationVideoPlayer from being included in OF.\r\n4) Clean all targets and rebuild","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/720","comments":0,"milestone":null,"number":720,"html_url":"https://github.com/openframeworks/openFrameworks/issues/720","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"007 ofxiPhone not compatible with 3.x devices ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-08-26T18:38:38Z","state":"open","user":{"url":"https://api.github.com/users/cerupcat","gravatar_id":"91b3d4bfbbb99d840b096cde3af877bf","login":"cerupcat","avatar_url":"https://secure.gravatar.com/avatar/91b3d4bfbbb99d840b096cde3af877bf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":204151},"id":1497291,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-22T17:38:49Z","body":"\r\nbased on this comment, \r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,5319.msg33381.html#msg33381\r\n\r\nI wonder if we can be smarter in endShape() / ofPath::tessellate() and look for simple usage (3 or 4 points, etc) before tessellating, or if the slow down is just based on the use of the ofPath object. \r\n\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/719","comments":1,"milestone":null,"number":719,"html_url":"https://github.com/openframeworks/openFrameworks/issues/719","assignee":null,"title":"optimize ofEndShape() to deal with simple shapes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-08-22T16:56:27Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":142897},"id":1459353,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-22T16:02:30Z","body":"change\r\n\r\nfloat ofCamera::getImagePlaneDistance(ofRectangle viewport) const {\r\n\treturn getPosition().length(); //viewport.height / (2.0f * tanf(PI * fov / 360.0f));\r\n}\r\n\r\nold in comment\r\n\r\ncurrent system is abitrary\r\nsuggest new system is more sensible\r\n(i'm always working in normalised coords)\r\npls check in your life before changing :)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/717","comments":0,"milestone":null,"number":717,"html_url":"https://github.com/openframeworks/openFrameworks/issues/717","assignee":null,"title":"suggest new calc clip planes routine","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-08-22T16:02:30Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":1458979,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-22T14:11:34Z","body":"http://forum.openframeworks.cc/index.php/topic,5222.msg33366.html#msg33366\r\n\r\nthere also seem to be a memory leak, when deleting a ofQuicktimeVideoPlayer","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/716","comments":0,"milestone":null,"number":716,"html_url":"https://github.com/openframeworks/openFrameworks/issues/716","assignee":null,"title":"problems with stop/play in quicktime videoPlayer","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-08-22T14:11:34Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":1458044,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-16T13:39:49Z","body":"Here\r\nhttps://github.com/openframeworks/openFrameworks/issues/653\r\nI downloaded latest version but in still crashes on my old video card Nvidia GeForce Go 7200.\r\nAny idea why?\r\nofxFBOTexture works, but i got some trobles in pixel format there. \r\nofxFBOTexture uses function with postfix EXT sometimes? ofFbo without it.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/711","comments":5,"milestone":null,"number":711,"html_url":"https://github.com/openframeworks/openFrameworks/issues/711","assignee":null,"title":"Problem with ofFbo. Crashes on allocate.There were the same issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-08-16T10:21:29Z","state":"open","user":{"url":"https://api.github.com/users/IonRod","gravatar_id":"cf3cb346817dd8a9f8327d1af13c3d46","login":"IonRod","avatar_url":"https://secure.gravatar.com/avatar/cf3cb346817dd8a9f8327d1af13c3d46?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":886012},"id":1414013,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-15T14:23:47Z","body":"i'm noticing this on osx 10.6. all 8-bit images are correct, but somehow i didn't notice about unsigned short and float until now!\r\n\r\ni'm super busy atm, but i've kind of been maintaining the unsigned short/float loading so i'll look into this if someone else doesn't get to it first.\r\n\r\nmeanwhile it would be good to see if it's the same on windows or not. for anyone interested in testing, please check devApps/AdvancedImageLoading and compare the results of the app to the .exr opened in photoshop.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/710","comments":0,"milestone":null,"number":710,"html_url":"https://github.com/openframeworks/openFrameworks/issues/710","assignee":null,"title":"16-bit and 32-bit images are red/blue swapped","labels":[],"closed_at":null,"created_at":"2011-08-15T14:23:47Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1407813,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-07T12:19:07Z","body":"in the past there has been ofxQtVideoSaver and a few others. i think this is a really hard problem because it basically needs to be written for each platform, but something that should eventually be solved.\r\n\r\ntwo major use cases i know are:\r\n\r\n- capturing and saving simultaneously, for long streams\r\n- capturing a quick burst of video then saving it to disk\r\n\r\nwhich would might be handled a little differently.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/702","comments":1,"milestone":null,"number":702,"html_url":"https://github.com/openframeworks/openFrameworks/issues/702","assignee":null,"title":"cross platform video saving (ofVideoSaver?)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-08-07T03:23:38Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1359729,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-06T20:20:03Z","body":"Hi!\r\n\r\nI have problems even getting the ofxOsc Send/Receive examples talking on Ubuntu 11.04 64bit. \r\nThey compile without problems, but sometimes when I run them, communication fails somewhere along the road - input events are not shown in the receiver app. Sometimes it does not work at all.\r\n\r\nThis works all flawlessly on 32bit Ubuntu 11.04. See http://forum.openframeworks.cc/index.php/topic,6918.0.html for more details.\r\n\r\nCan anyone reproduce these problems? Any tips? How could I debug this?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/701","comments":3,"milestone":null,"number":701,"html_url":"https://github.com/openframeworks/openFrameworks/issues/701","assignee":null,"title":"ofxOsc does not seem to work on 64bit Ubuntu","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2011-08-06T19:14:37Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":1358688,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-08-05T03:06:25Z","body":"very simple but helpful feature request. e.g.,\r\n\r\nofBuffer::operator=(const ofBuffer& mom) {\r\n set(mom.getBinaryBuffer(), mom.size());\r\n}\r\n\r\nthis goes along with the general \"what does the equal operator mean\" debate/discussion :)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/700","comments":0,"milestone":null,"number":700,"html_url":"https://github.com/openframeworks/openFrameworks/issues/700","assignee":null,"title":"ofBuffer with overloaded = operator","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-08-05T03:06:25Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1349012,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T15:11:28Z","body":"this seems like an api inconsistency to me: i feel like ofTexture::loadData() is similar to ofImage::setFromPixels(), but setFromPixels() will allocate space if necessary while loadData() just prints an error if the data is larger than the allocated space.\r\n\r\ni think auto-allocation would be nice, but i might just be misunderstanding/making a false comparison here.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/699","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":699,"html_url":"https://github.com/openframeworks/openFrameworks/issues/699","assignee":null,"title":"loadData() does not allocate as necessary","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-08-04T10:29:57Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":1343463,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T15:12:03Z","body":"from: http://forum.openframeworks.cc/index.php/topic,6952.msg32509.html\r\n\r\n\r\n\r\ngetBmpFromPixels() crashed repeatedly when I tried to rescale grayscale Images of size 3026*2048.\r\n\r\nIt's because memcpy overshoots the src pixel array because dstStride can be larger than srcStride.\r\n\r\nIn ofImage.cpp \r\n\r\ngetBmpFromPixels()\r\n\r\naround line 119, I believe, it should read:\r\n\r\nCode:\r\nview plaincopy to clipboardprint?\r\n... \r\n int srcStride = width * pix.getBytesPerPixel(); \r\n int dstStride = FreeImage_GetPitch(bmp); \r\n unsigned char* src = (unsigned char*) pixels; \r\n unsigned char* dst = bmpBits; \r\n for(int i = 0; i < (int)height; i++) { \r\n // memcpy(dst, src, dstStride); \r\n memcpy(dst, src, srcStride); // did overshoot with e.g. grayscale img of size 3026*2048 \r\n src += srcStride; \r\n dst += dstStride; \r\n } \r\n... \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/698","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":698,"html_url":"https://github.com/openframeworks/openFrameworks/issues/698","assignee":null,"title":"getBmpFromPixels memcpy issue / ofImage::resize issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-08-03T18:15:55Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":1339116,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-21T15:34:07Z","body":"I'm trying to build ofxPd in Visual Studio and running into multiple define issues related to the videoinput lib, namely static `verbose`: https://github.com/openframeworks/openFrameworks/blob/master/libs/videoInput/include/videoInput.h#L115\r\n\r\nCouldn't this variable as well as `comInitCount` be moved to the implementation files? or at least in a header hidden from the global namespace? At the least, `verbose` could be renamed to something not so common ...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/697","comments":1,"milestone":null,"number":697,"html_url":"https://github.com/openframeworks/openFrameworks/issues/697","assignee":null,"title":"videoinput lib global statics","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-08-03T02:27:52Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":480637},"id":1334657,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T00:53:30Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/685","comments":3,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":685,"html_url":"https://github.com/openframeworks/openFrameworks/issues/685","assignee":null,"title":"update shader example to work on ati.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-07-28T15:57:58Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":1303812,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:40:42Z","body":"It is very annoying if you can not disable autocorrections in ofxiPhoneKeyboard. Specially for creative uses of this class. I add code how to add this feature.\r\n\r\n[CODE] Add to ofxiPhoneKeyboard class:\r\n\r\n- (void)disableAutoCorrection;\r\n- (void)enableAutoCorrection;\r\n\r\n//--------------------------------------------------------------\r\nvoid ofxiPhoneKeyboard::disableAutoCorrection()\r\n{\r\n [keyboard disableAutoCorrection];\r\n}\r\n//--------------------------------------------------------------\r\nvoid ofxiPhoneKeyboard::enableAutoCorrection()\r\n{\r\n [keyboard enableAutoCorrection];\r\n}\r\n\r\n- (void)disableAutoCorrection\r\n{\r\n _textField.autocorrectionType = UITextAutocorrectionTypeNo;\r\n}\r\n\r\n- (void)enableAutoCorrection\r\n{\r\n _textField.autocorrectionType = UITextAutocorrectionTypeYes;\r\n}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/684","comments":0,"milestone":null,"number":684,"html_url":"https://github.com/openframeworks/openFrameworks/issues/684","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"ofxiPhoneKeyboard should have disable/enable methods for auto correction","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-07-28T12:12:52Z","state":"open","user":{"url":"https://api.github.com/users/mcanet","gravatar_id":"e4d2b0151a843dde7b815b848170d6e9","login":"mcanet","avatar_url":"https://secure.gravatar.com/avatar/e4d2b0151a843dde7b815b848170d6e9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":308759},"id":1302375,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-24T18:26:54Z","body":"I think there's a bug in ofQuaternion in of007. When i use ofNode's setOrientation() or ofNode setRoll I can rotate my ofNode object around the Z axis. However when I try to obtain the current rotation around the Z axis it will always give a value like -180, 0 or 180.\r\n\r\nRick","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/679","comments":0,"milestone":null,"number":679,"html_url":"https://github.com/openframeworks/openFrameworks/issues/679","assignee":null,"title":"possible bug in getEuler / getOrientation / getRoll","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-24T18:26:54Z","state":"open","user":{"url":"https://api.github.com/users/companje","gravatar_id":"30a7e135fe77636519d74d129c60e156","login":"companje","avatar_url":"https://secure.gravatar.com/avatar/30a7e135fe77636519d74d129c60e156?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":156066},"id":1278252,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T22:13:24Z","body":"I know that with the 007 release ofxDirList addon is deprecated and instead we are encouraged to use ofDirectory to achiece the same kind of functionality. In fact the are so similar that is possible to use them interchangeably. To do that transparently you changed the ofxDirList.h so that it made a typedef to point to ofDirectory (and will probably remove it completely someday).\r\n\r\nThe contents of ofxDirList.h are the following:\r\n---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------\r\n#pragma once\r\n\r\n#include \"ofFileUtils.h\"\r\n\r\n#warning ofxDirList has been deprecated. \r\n#warning Remove all references to ofxDirList.h and use ofDirectory instead.\r\ntypedef ofDirectory ofxDirList;\r\n---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------\r\nSo far so good. The problem is that you use the #warning preprocessing directive is non-standard and unsupported on Visual C++ compiler. In fact it gives me an error while building a project that I ported from 0062 version that used ofxDirList. To make it work I had to comment the two #warning lines. \r\n\r\nI suggest that you remove the #warning directives and replace it with something else that works across all compilers. I know that the #warning directive works on GCC and MinGW but not on VC++ so if you are going to support all those compilers (like you do) you better have all of your code working across all of them.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/676","comments":2,"milestone":null,"number":676,"html_url":"https://github.com/openframeworks/openFrameworks/issues/676","assignee":null,"title":"ofxDirList deprecated #warning directive preprocessor Visual Studio 2010","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-23T01:19:54Z","state":"open","user":{"url":"https://api.github.com/users/petersaints","gravatar_id":"03848790c2ebb8e5edbe130e8ce76f1d","login":"petersaints","avatar_url":"https://secure.gravatar.com/avatar/03848790c2ebb8e5edbe130e8ce76f1d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157810},"id":1273716,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-21T11:29:24Z","body":"changed this in dirListExample\r\n\r\n ofFile testfile;\r\n\t// you can now iterate through the files and load them into the ofImage vector\r\n\tfor(int i = 0; i < (int)dir.size(); i++){\r\n\t\timages[i].loadImage(dir.getPath(i));\r\n\t\ttestfile.open(dir.getPath(i));\r\n\t\tcout << testfile.isFile() << endl; //THIS LINE SEGFAULTS ON WIN7\r\n testfile.close();\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/671","comments":0,"milestone":null,"number":671,"html_url":"https://github.com/openframeworks/openFrameworks/issues/671","assignee":null,"title":"isFile() segfaults on win7","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-07-21T11:27:16Z","state":"open","user":{"url":"https://api.github.com/users/benben","gravatar_id":"614a4e493d7c353296519bba720e77c5","login":"benben","avatar_url":"https://secure.gravatar.com/avatar/614a4e493d7c353296519bba720e77c5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":124513},"id":1262459,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-21T10:39:29Z","body":"just added output to all events in an emptyExample on windows7 64bit.\r\n\r\nif im clicking, the following output occurs even if the mouse is not moved\r\n\r\n mousePressed\r\n mouseReleased\r\n mouseMoved","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/670","comments":2,"milestone":null,"number":670,"html_url":"https://github.com/openframeworks/openFrameworks/issues/670","assignee":null,"title":"mouseReleased fires mouseMoved too (win7)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-07-21T09:34:52Z","state":"open","user":{"url":"https://api.github.com/users/benben","gravatar_id":"614a4e493d7c353296519bba720e77c5","login":"benben","avatar_url":"https://secure.gravatar.com/avatar/614a4e493d7c353296519bba720e77c5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":124513},"id":1261982,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=9 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4935'), ('content-length', '45016'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"c403779e3346f56dddb655b8bb57d5ae"'), ('date', 'Tue, 29 May 2012 19:27:18 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-03-09T06:11:12Z","body":"I'm curious why the movieplayer uses AvAsset instead of AvPlayer which seems better suited for OF needs ( seeking / looping etc ) \r\n\r\nhttp://developer.apple.com/library/ios/#documentation/AVFoundation/Reference/AVPlayer_Class/Reference/Reference.html\r\n\r\nhttp://stackoverflow.com/questions/5361145/looping-a-video-with-avfoundation-avplayer\r\n\r\n\r\nI think you can get init a player with an AVAsset:\r\nhttp://developer.apple.com/library/ios/#documentation/AVFoundation/Reference/AVPlayer_Class/Reference/Reference.html%23//apple_ref/occ/instm/AVPlayer/initWithPlayerItem:\r\nhttp://developer.apple.com/library/ios/documentation/AVFoundation/Reference/AVPlayerItem_Class/Reference/Reference.html#//apple_ref/occ/instm/AVPlayerItem/initWithAsset:\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/666","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":666,"html_url":"https://github.com/openframeworks/openFrameworks/issues/666","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"iphone video player should use AVPlayer ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-07-20T20:01:04Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":1258863,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-01-08T04:45:01Z","body":"In some cases, when modifier keys are used, the pressedKeys set will accumulate keys.\r\n\r\nThis happens because \"modifier-up\" messages are not sent in the same way as normal and special keys.\r\n\r\nTo test, watch the size of the pressedKeys:\r\n\r\n cout << pressedKeys.size() << \" num pressed keys \" << endl;\r\n\r\nPress a modifier key and a normal key -- say ctrl-a. If the 'a' is lifted first, then the modified-a key int is removed from the pressedKeys set. If CTRL is released before the 'a', then the non-modified-a key-up int is sent, and it is not erased from the pressedKeys set. If this is repeated with different modifier+key downs / ups the accumulation occurs.\r\n\r\nUltimately, there needs to be better handling of modifier keys. Perhaps there is a way to use the modifier masks keep track of modifier keys with a call to glutGetModifiers() in the keyboard_cb and keyboard_up_cb static methods?\r\n\r\nIt looks like progress has been made toward this in ofConstants.h\r\n\r\n\t#define OF_KEY_CTRL\t\t\t0x0200\r\n\t#define OF_KEY_ALT\t\t\t0x0300\r\n\t#define OF_KEY_SHIFT\t\t0x0400\r\n\r\nBut it seems to have stopped there.\r\n\r\nI'm happy to work on this -- any suggestions on a strategy? Perhaps this is already being addressed of 007?\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/652","comments":5,"milestone":null,"number":652,"html_url":"https://github.com/openframeworks/openFrameworks/issues/652","assignee":null,"title":"ofAppGlutWindow/ofEvents: pressedKeys accumulate in special cases","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-15T18:49:46Z","state":"open","user":{"url":"https://api.github.com/users/bakercp","gravatar_id":"8f6ac7bc0f5c26b87269d442d5339206","login":"bakercp","avatar_url":"https://secure.gravatar.com/avatar/8f6ac7bc0f5c26b87269d442d5339206?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":300484},"id":1231959,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-20T19:04:31Z","body":"If you use those these two together the 3d objects get an unwanted offset\r\n\r\ncode:\r\n\r\n```c++\r\nvoid testApp::draw()\r\n{\r\n \r\n cam.begin();\r\n ofPushMatrix();\r\n ofSetColor(255,255,255);\r\n ofBox(200);\r\n ofPopMatrix();\r\n cam.end();\r\n \r\n \r\n fbo.begin();\r\n cam.begin();\r\n \r\n ofClear(0);\r\n ofPushMatrix();\r\n ofSetColor(0,0,0);\r\n ofBox(200);\r\n ofPopMatrix();\r\n \r\n cam.end();\r\n fbo.end();\r\n \r\n \r\n glPushMatrix();\r\n //ofTranslate(0,6,0); <--- now i'm using something like this to \"repair\" it\r\n ofSetColor(255,255,255,255);\r\n glScalef(1,-1,1);\r\n fbo.draw(0,- ofGetHeight());\r\n glPopMatrix();\r\n \r\n \r\n \r\n}\r\n```\r\n\r\nNormally the two boxes should overlap completely, instead it looks like this:\r\n\r\n![screen1](http://i51.tinypic.com/11cfi1l.png)\r\n![screen2](http://i55.tinypic.com/2ewnv5i.png)\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/651","comments":4,"milestone":null,"number":651,"html_url":"https://github.com/openframeworks/openFrameworks/issues/651","assignee":null,"title":"ofFBO + ofCamera = unwanted offset","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2011-07-15T13:21:44Z","state":"open","user":{"url":"https://api.github.com/users/toxin20","gravatar_id":"29a3b85e704ec06a72df8897a726920e","login":"toxin20","avatar_url":"https://secure.gravatar.com/avatar/29a3b85e704ec06a72df8897a726920e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":123776},"id":1230184,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-19T00:31:38Z","body":"\r\nA tiny issue I spotted:\r\n\r\nofQuaternion.cpp, line 14:\r\n\r\n```C++\r\n/// Set the elements of the Quat to represent a rotation of angle\r\n/// (radians) around the axis (x,y,z)\r\nvoid ofQuaternion::makeRotate( float angle, float x, float y, float z ) {\r\n\tangle = ofDegToRad(angle);\r\n```\r\n\r\nof**X**Quaternion::makeRotate used to take radians, only noticed as I was moving some old code over, otherwise I would have just looked at the code in ofQuaternion.cpp to see the angle type. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/646","comments":1,"milestone":null,"number":646,"html_url":"https://github.com/openframeworks/openFrameworks/issues/646","assignee":null,"title":"ofQuaternion::makeRotate takes degrees, used to take radians, documentation says radians","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"closed_at":null,"created_at":"2011-07-13T15:18:04Z","state":"open","user":{"url":"https://api.github.com/users/andreasmuller","gravatar_id":"210831a04d36f1aa26413ecbdbd4b07c","login":"andreasmuller","avatar_url":"https://secure.gravatar.com/avatar/210831a04d36f1aa26413ecbdbd4b07c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":791114},"id":1216274,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-12T16:05:23Z","body":"^^^^\r\nTried on Mac:\r\nhttps://gist.github.com/1078282","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/645","comments":0,"milestone":null,"number":645,"html_url":"https://github.com/openframeworks/openFrameworks/issues/645","assignee":null,"title":"ofVideoGrabber::listDevices() does not list devices when initGrabber not called","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-12T16:05:23Z","state":"open","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":358809},"id":1209436,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-16T04:21:18Z","body":"https://gist.github.com/1077933\r\n\r\nsaving images converted to 8PP using ofImage::setImageType(OF_IMAGE_GRAYSCALE) and then calling saveImage() save blank on windows, but works on OS X\r\n\r\ntraced the issue down to the call to FreeImage_Save(), both seem to be the same. not sure what the problem is\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/643","comments":1,"milestone":null,"number":643,"html_url":"https://github.com/openframeworks/openFrameworks/issues/643","assignee":null,"title":"8 BPP (grayscale) ofImage saves blank on Windows, fine on os x","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-07-12T13:05:25Z","state":"open","user":{"url":"https://api.github.com/users/obviousjim","gravatar_id":"3bcf955bca297a223e9daa1f997bfad5","login":"obviousjim","avatar_url":"https://secure.gravatar.com/avatar/3bcf955bca297a223e9daa1f997bfad5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":321434},"id":1208289,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:42:09Z","body":"Forum issue: http://forum.openframeworks.cc/index.php/topic,6316.new.html#new\r\n\r\nThis may be related to using CADisplayLink. When openGL seems to be pushed a bit, touch events seem to drop or are delayed. When using NSTimer in ofxiPhoneAppDelegate instead of CADisplayLink this does not occur.\r\n\r\nIt may be beneficial for developers to set whether they'd like to use CADisplayLink (if available) vs NSTimer for rendering or not.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/642","comments":0,"milestone":null,"number":642,"html_url":"https://github.com/openframeworks/openFrameworks/issues/642","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"ofxiPhone: Possible delayed input/touch event issue ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-12T02:46:23Z","state":"open","user":{"url":"https://api.github.com/users/cerupcat","gravatar_id":"91b3d4bfbbb99d840b096cde3af877bf","login":"cerupcat","avatar_url":"https://secure.gravatar.com/avatar/91b3d4bfbbb99d840b096cde3af877bf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":204151},"id":1205789,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-12T13:03:00Z","body":"See title and test code:\r\nhttps://gist.github.com/952bd35591dc0cb23f61","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/631","comments":1,"milestone":null,"number":631,"html_url":"https://github.com/openframeworks/openFrameworks/issues/631","assignee":null,"title":"ofImage::saveImage() - saving from png to gif creates grayscale image","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-07T21:37:47Z","state":"open","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":358809},"id":1185346,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T03:48:47Z","body":"Tried to load a text file over https but I got this message:\r\n\r\n``400 The plain HTTP request was sent to HTTPS port\r\n

    400 Bad Request

    The plain HTTP request was sent to HTTPS port

    nginx/1.0.4
    ``\r\n\r\n\r\n\r\nUsing this code\r\n``ofHttpResponse resp = ofLoadURL(\"https://raw.github.com/openframeworks/openFrameworks/6af1dc980f6d93d84b3bf8fdc1b6435697be9ed9/readme.txt\");``\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/623","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":623,"html_url":"https://github.com/openframeworks/openFrameworks/issues/623","assignee":null,"title":"ofLoadURL() does not work with httpS","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-06T18:12:06Z","state":"open","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":358809},"id":1175654,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-07-06T18:09:03Z","body":"Setting the position of an ofEasyCam instance in ofSetup() does not work. What does work in testApp::setup() is calling ofEasyCam::setDistance(). When calling ofEasyCam::setPosition() in for example testApp::draw() does work.\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/618","comments":0,"milestone":null,"number":618,"html_url":"https://github.com/openframeworks/openFrameworks/issues/618","assignee":null,"title":"call ofEasyCam::setPosition in testApp::setup() is forgotten","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-07-05T18:23:34Z","state":"open","user":{"url":"https://api.github.com/users/roxlu","gravatar_id":"a3e45d93c2d24b6ae8bbef0453065e45","login":"roxlu","avatar_url":"https://secure.gravatar.com/avatar/a3e45d93c2d24b6ae8bbef0453065e45?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":358809},"id":1169032,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-06-27T18:30:26Z","body":"Currently there doesn't appear to be any way to do this other than by hand\r\nAlso it would be highly useful ofMatrix3x3 in general had equivalent accessors to ofMatrix4x4","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/612","comments":0,"milestone":null,"number":612,"html_url":"https://github.com/openframeworks/openFrameworks/issues/612","assignee":null,"title":"need conversion ofMatrix3x3<->ofMatrix4x4","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-06-27T18:30:26Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":1124068,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-10-04T10:10:06Z","body":"Need some way of applying current ofMatrix4x4 to the scene without going down to gl calls","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/605","comments":4,"milestone":null,"number":605,"html_url":"https://github.com/openframeworks/openFrameworks/issues/605","assignee":null,"title":"function wrapping glMultMatrixf in ofMatrix4x4","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-06-16T13:13:35Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328294},"id":1067300,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:42:59Z","body":"Here's a function that will do it...\r\n\r\nvoid ofxiPhoneLaunchBrowser(string url) {\r\n\t[[UIApplication sharedApplication] openURL:[NSURL URLWithString:ofxStringToNSString(url)]];\r\n}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/603","comments":0,"milestone":null,"number":603,"html_url":"https://github.com/openframeworks/openFrameworks/issues/603","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"ofLaunchBrowser() for iPhone not implemented","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-06-13T13:03:15Z","state":"open","user":{"url":"https://api.github.com/users/mazbox","gravatar_id":"3cfb19dbce7926933555ac9755a86ca8","login":"mazbox","avatar_url":"https://secure.gravatar.com/avatar/3cfb19dbce7926933555ac9755a86ca8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":194121},"id":1048971,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T21:38:43Z","body":"OF: OF_LOG_ERROR: ofxNetwork:/addons/ofxNetwork/src/ofxTCPManager.cpp: 157 ECONNREFUSED: the server has actively refused to establish the connection\r\n\r\nThis error happens in every use of ofxTCPClient.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/599","comments":1,"milestone":null,"number":599,"html_url":"https://github.com/openframeworks/openFrameworks/issues/599","assignee":null,"title":"TCPManager Consistent Error","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-06-08T23:02:28Z","state":"open","user":{"url":"https://api.github.com/users/tomorrowevening","gravatar_id":"f92a8e912b59171abde0354e2f212c12","login":"tomorrowevening","avatar_url":"https://secure.gravatar.com/avatar/f92a8e912b59171abde0354e2f212c12?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":626143},"id":1027184,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-06-01T13:56:17Z","body":"http://forum.openframeworks.cc/index.php/topic,6370.0.html\r\n\r\nwhen they are not power of 2 perhaps?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/591","comments":0,"milestone":null,"number":591,"html_url":"https://github.com/openframeworks/openFrameworks/issues/591","assignee":null,"title":"problem with ofImage resize","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-06-01T13:56:17Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":984564,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-05-31T12:33:31Z","body":"### ofxNetworkUtils.h - issue 1\n\nThe default message should print out `err` instead of `errno`\n\n```\n\tdefault:\n\t\tofLog(OF_LOG_ERROR,\"ofxNetwork:\"+file+\": \" +line+\" unknown error: \" + ofToString(errno) + \" see errno.h for description of the error\");\n\t\tbreak;\n```\n\nto:\n\n```\n\tdefault:\n\t\tofLog(OF_LOG_ERROR,\"ofxNetwork:\"+file+\": \" +line+\" unknown error: \" + ofToString(err) + \" see errno.h for description of the error\");\n\t\tbreak;\n```\n\nSince errno would not be set on windows machines.\n\n\n\n\n### ofxTCPManager.cpp - issue 2\n\nIn the `Receive` method of the `ofxTCPManager` the function will always return -1 when checking for data and there is no new data and the TCPServer has been set to non-blocking.\n\nAfter changing the code in issue 1 mentioned above i got:\n\n`ofxNetwork:addons\\ofxNetwork\\src\\ofxTCPManager.cpp: 304 unknown error: 10035 see errno.h for description of the error`\n\ninstead of `error: 0` when `errno`was used.\n\nWhich on windows is the [`WSAEWOULDBLOCK`](http://msdn.microsoft.com/en-us/library/ms740668.aspx) or `EWOULDBLOCK` as defined in `ofxNetworkUtils`\n\nSo someplace in the code there should be a mechanism to check if the code is client is non-blocking and ignore the error.\nThis is `windows` only but still could be as an additional parameter to the `Receive` method. Or add it as an `switch case` for the `EWOULDBLOCK` in the `ofxNetworkUtils` and ignore the ouput and comment it.\n\nI just noticed this above when i started usin an application that i was developing on my mac an using it on windows machines this code would appear too often.\n\nSo as stated above my solution is that i added:\n\n```\n #ifdef TARGET_WIN32 // otherwise EAGAIN & EWOULDBLOCK will create a \"duplicate case value\" on Non windows\n\tcase EWOULDBLOCK: \n\t\t// \tofLog(OF_LOG_VERBOSE,\"ofxNetwork:\"+file+\": \" +line+\" EWOULDBLOCK: perhaps non-blocking\");\n\t\tbreak;\n #endif\n```\ncode and ignoring the output.\n\n\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/590","comments":0,"milestone":null,"number":590,"html_url":"https://github.com/openframeworks/openFrameworks/issues/590","assignee":null,"title":"ofxTCPManager.receive() - EWOULDBLOCK on Windows","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-05-31T11:31:08Z","state":"open","user":{"url":"https://api.github.com/users/cristobal","gravatar_id":"c7f941e0c10696b758ae8792714a6744","login":"cristobal","avatar_url":"https://secure.gravatar.com/avatar/c7f941e0c10696b758ae8792714a6744?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":155505},"id":978212,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-05-31T02:06:22Z","body":"setFromPixels has two forms: one that takes an int channels, another that takes ofImageType.\r\n\r\nsetFromExternalPixels only has one form: it takes an int channels.\r\n\r\nin my opinion, it makes sense to change them both to ofImageType only, because the int channels is susceptible to accidentally passing an ofImageType to it.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/589","comments":0,"milestone":null,"number":589,"html_url":"https://github.com/openframeworks/openFrameworks/issues/589","assignee":null,"title":"setFromPixels vs setFromExternalPixels","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-05-31T02:06:22Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":976610,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T21:54:02Z","body":"ofImage_ should be ofBaseImage, likewise with ofPixels_\n\nin general, X_ style classes should be BaseX\n\ntemplated functions that are just sitting around should also have descriptive template names.\n\nit's important for this to happen before 007, otherwise code will be written against ofImage\\_<T> etc.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/582","comments":5,"milestone":null,"number":582,"html_url":"https://github.com/openframeworks/openFrameworks/issues/582","assignee":null,"title":"templated code needs to be more readable","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-05-23T17:46:28Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":942647,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-31T13:42:28Z","body":"just need to add the line\r\n\r\n\t\t\tcase 230400: cfsetispeed(&options,B230400);\r\n\t\t\t\tcfsetospeed(&options,B230400);\r\n\t\t\t\tbreak;\r\n\r\nin the setup function after\r\ncase 115200: cfsetispeed(&options,B115200);\r\n\t\t\t\t\t\tcfsetospeed(&options,B115200);\r\n\t\t\t\tbreak;\r\n\r\ntested with our device that runs at that baud rate, seems to work a-OK so far.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/577","comments":2,"milestone":null,"number":577,"html_url":"https://github.com/openframeworks/openFrameworks/issues/577","assignee":null,"title":"ofSerial: add 230400 speed","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-05-20T16:16:52Z","state":"open","user":{"url":"https://api.github.com/users/labatrockwell","gravatar_id":"e6d243a56cd069a225f56f4a388e8838","login":"labatrockwell","avatar_url":"https://secure.gravatar.com/avatar/e6d243a56cd069a225f56f4a388e8838?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","id":313943},"id":932655,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T19:59:00Z","body":"This is a generic Linux build of oF for ARM Cortex A8/9 devices (Beagleboard, Pandaboard, Gumstix, Tegra 250, IGEPv2, ...) with built-in NEON optimizations in the included libs and makefiles (via gcc -O3 -march=armv7-a -mtune=cortex-a8 -mfpu=neon -ftree-vectorize -mfloat-abi=softfp)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/576","comments":17,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","closed_issues":0,"number":8,"title":"0080 Release","due_on":"2013-01-01T08:00:00Z","open_issues":3,"created_at":"2012-02-25T01:34:28Z","state":"open","description":"","id":88731},"number":576,"html_url":"https://github.com/openframeworks/openFrameworks/issues/576","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"Generic armv7l Linux build for Beagleboard &co. ","labels":[],"closed_at":null,"created_at":"2011-05-19T14:49:57Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"id":927378,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/576.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/576","patch_url":"https://github.com/openframeworks/openFrameworks/pull/576.patch"}},{"updated_at":"2011-05-13T15:28:46Z","body":"http://forum.openframeworks.cc/index.php?topic=6201.0","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/572","comments":0,"milestone":null,"number":572,"html_url":"https://github.com/openframeworks/openFrameworks/issues/572","assignee":null,"title":"ofToggleFullscreen doesn't set width and height correctly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2011-05-13T15:28:46Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":895515,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-02T15:47:14Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/569","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":569,"html_url":"https://github.com/openframeworks/openFrameworks/issues/569","assignee":null,"title":"saving an image with the image quality flag set to high or best causes empty jpegs. ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-05-11T13:53:42Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":883385,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T03:48:47Z","body":"Currently using an FBO with an ofCamera is really tricky, as both setup their own viewing matrix and viewport. \r\n\r\nDoes it make sense to have ofFbo use an ofCamera internally?\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/568","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":568,"html_url":"https://github.com/openframeworks/openFrameworks/issues/568","assignee":null,"title":"ofFbo and ofCamera do not play well together.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-05-11T13:52:46Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":883380,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-15T18:31:30Z","body":"Greetings,\r\n\r\nI have downloaded the latest master of Openframeworks b4397c1 and I have tried to compile the AllAddons example (just to check if everything was well installed).\r\n\r\nThe ofxSynth library just won't compile (using either GCC or LLVM, Xcode 3 or Xcode4), be it in the allAddons or in it's own examples, here is the error log :\r\n\r\nUndefined symbols for architecture i386:\r\n \"typeinfo for ofxSoundEffect\", referenced from:\r\n typeinfo for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"non-virtual thunk to ofxSoundEffect::setSampleRate(int)\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundBuffer::ofxSoundBuffer()\", referenced from:\r\n ofxSoundSink::ofxSoundSink()in ofxSynth.o\r\n \"vtable for ofxSoundEffect\", referenced from:\r\n ofxSoundEffect::~ofxSoundEffect()in ofxSynthDelayLine.o\r\n ofxSoundEffect::~ofxSoundEffect()in ofxSynthDelayLine.o\r\n \"vtable for ofxSoundSink\", referenced from:\r\n ofxSoundSink::~ofxSoundSink()in ofxSynthDelayLine.o\r\n ofxSoundSink::~ofxSoundSink()in ofxSynthDelayLine.o\r\n \"virtual thunk to ofxSoundSink::getInputs()\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"typeinfo for ofxSoundSink\", referenced from:\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundSink::setSampleRate(int)\", referenced from:\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundSink::getInputs()\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundSink::addInputFrom(ofxSoundSource*)\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"VTT for ofxSoundEffect\", referenced from:\r\n ofxSoundEffect::~ofxSoundEffect()in ofxSynthDelayLine.o\r\n ofxSoundEffect::~ofxSoundEffect()in ofxSynthDelayLine.o\r\n \"ofxSoundEffect::setSampleRate(int)\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundSink::audioIn(float*, int, int, unsigned long long)\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundSink-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundEffect::audioOut(float*, int, int, unsigned long long)\", referenced from:\r\n vtable for ofxSynthFilterin ofxSynthFilter.o\r\n construction vtable for ofxSoundEffect-in-ofxSynthFilterin ofxSynthFilter.o\r\n \"ofxSoundBuffer::~ofxSoundBuffer()\", referenced from:\r\n ofxSoundSink::~ofxSoundSink()in main.o\r\n ofxSoundSink::~ofxSoundSink()in ofxSynthDelayLine.o\r\n ofxSoundSink::~ofxSoundSink()in ofxSynthDelayLine.o\r\nld: symbol(s) not found for architecture i386\r\ncollect2: ld returned 1 exit status\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/566","comments":3,"milestone":null,"number":566,"html_url":"https://github.com/openframeworks/openFrameworks/issues/566","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"ofxSynth won't compile","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2011-05-07T12:25:01Z","state":"open","user":{"url":"https://api.github.com/users/benoitespinola","gravatar_id":"d08687285addcdde144d4eceb4cfa78e","login":"benoitespinola","avatar_url":"https://secure.gravatar.com/avatar/d08687285addcdde144d4eceb4cfa78e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":720460},"id":862321,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-10T04:48:58Z","body":"I'm fixing it using \r\n_textField.transform = CGAffineTransformMakeRotation(M_PI*1.5f);\r\nin - (void) setFrame: (CGRect) rect\r\nto fix it now.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/565","comments":1,"milestone":null,"number":565,"html_url":"https://github.com/openframeworks/openFrameworks/issues/565","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":331382},"title":"Textfield in ofxiPhoneKeyboard upside down in landscape","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-05-05T14:20:42Z","state":"open","user":{"url":"https://api.github.com/users/labatrockwell","gravatar_id":"e6d243a56cd069a225f56f4a388e8838","login":"labatrockwell","avatar_url":"https://secure.gravatar.com/avatar/e6d243a56cd069a225f56f4a388e8838?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","id":313943},"id":853551,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=10 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4934'), ('content-length', '43807'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"78e9c565cba926f6a72fa2b7dd021b78"'), ('date', 'Tue, 29 May 2012 19:27:19 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-12-03T21:20:01Z","body":"Does anybody know the status of this?\r\nI would like to help but I'm not sure where to start. Is the `iphone-dev-0061` the branch to work on this?\r\nI just want to know what's been done or whether there are plans in the works.\r\n\r\nI have posted this in the forum but have not received any response.\r\nhttp://forum.openframeworks.cc/index.php/topic,4089.msg29156.html#msg29156","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/564","comments":1,"milestone":null,"number":564,"html_url":"https://github.com/openframeworks/openFrameworks/issues/564","assignee":null,"title":"ofxShader for iOS","labels":[],"closed_at":null,"created_at":"2011-05-04T18:35:58Z","state":"open","user":{"url":"https://api.github.com/users/chrisirhc","gravatar_id":"22d0038769b1786fcdc0983bdb2e4033","login":"chrisirhc","avatar_url":"https://secure.gravatar.com/avatar/22d0038769b1786fcdc0983bdb2e4033?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":132584},"id":850096,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-12T08:58:12Z","body":"it's compiling now but doesn't work in openGL ES.\r\n\r\nalso take a look at setupShadow generating depthBuffer as texture, when it's released as a renderbuffer","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/560","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":560,"html_url":"https://github.com/openframeworks/openFrameworks/issues/560","assignee":null,"title":"fix ofFbo for openGL ES","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/android","name":"android","color":"2bc4ad"}],"closed_at":null,"created_at":"2011-04-30T17:21:39Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":833772,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-04-26T00:37:56Z","body":"nothing fancy, but I have an implementation of ofxCvHaarFinder that draws, and it's useful for debugging. something like:\n\n``` c++\n void ofxCvHaarFinder::draw( float x, float y ) {\n\t\t// ofPushStyle(); ?\n\t\tofEnableAlphaBlending();\n\t\tofSetColor( 255,0,200,100 );\n\t\tglPushMatrix();\n\t\t\n\t\tglTranslatef( x, y, 0.0 );\n\t\t\n\t\tofNoFill();\n\t\tfor( int i=0; i007 than <007. this can be changed in the ofStyle() constructor.\r\n\r\nalso, @elliotwoods it would be great to have a comment next to each of the constants in enum ofDrawBitmapMode explaining what they do.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/520","comments":1,"milestone":null,"number":520,"html_url":"https://github.com/openframeworks/openFrameworks/issues/520","assignee":null,"title":"ofDrawBitmapString default behavior has changed","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-04-01T06:37:16Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":723496,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-31T17:49:33Z","body":"it's obvious if you've used opengl directly before, but i would expect something more like:\r\n\r\n\tvoid ofSetTextureInterpolation(ofInterpolationType downscale, ofInterpolationType upscale)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/519","comments":0,"milestone":null,"number":519,"html_url":"https://github.com/openframeworks/openFrameworks/issues/519","assignee":null,"title":"ofSetMinMagFilters() is confusingly named","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-03-31T17:49:33Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":721833,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-17T00:51:48Z","body":"movieGrabberExample => videoGrabberExample\r\nmoviePlayerExample => videoPlayerExample\r\n\r\nthere are probably other examples of this, but this one strikes me as particularly odd. there's probably some historical reason... :)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/510","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":510,"html_url":"https://github.com/openframeworks/openFrameworks/issues/510","assignee":null,"title":"movieGrabber/PlayerExamples are poorly named","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-03-22T06:47:02Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":693126,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-21T01:01:25Z","body":"i accidentally initialized my ofFbo with setupShadow() instead of setup(), and when i said draw() it caused EXC_BAD_ACCESS. draw() calls getTexture(), so maybe the best way to handle this is to put a check inside getTexture() like this:\r\n\r\n\tif(textures.size() == 0) {\r\n\t\tofLog(OF_LOG_ERROR, \"You must call ofFbo::setup() before you can use an FBO\");\r\n\t}\r\n\treturn textures[attachmentPoint];","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/507","comments":0,"milestone":null,"number":507,"html_url":"https://github.com/openframeworks/openFrameworks/issues/507","assignee":null,"title":"ofFbo::draw() causes EXC_BAD_ACCESS when setup() isn't called","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-03-21T01:01:25Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":689769,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-20T17:35:05Z","body":"i know the reason for this is because the mappings are OS and mouse dependent, and that it's GLUT slowing us down here, but i think we could at least add a guess like OF_MOUSE_LEFT = 0, OF_MOUSE_MIDDLE= 1, OF_MOUSE_RIGHT = 2, etc.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/503","comments":0,"milestone":null,"number":503,"html_url":"https://github.com/openframeworks/openFrameworks/issues/503","assignee":null,"title":"no OF_MOUSE_LEFT or OF_MOUSE_RIGHT","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-03-20T17:35:05Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":688955,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T15:48:41Z","body":"you need to use bUse3D flag but even then graphics aren't saved to pdf as they look on screen. \r\ntry the OF_ORIENTATION_90_LEFT or 90_RIGHT to reproduce. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/502","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":502,"html_url":"https://github.com/openframeworks/openFrameworks/issues/502","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"ofSetOrientation doesn't work for cairo","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-03-18T09:17:36Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":684091,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-18T03:56:02Z","body":"it looks like ofGLRenderer::drawString is currently overriding whatever the current blend mode is:\n\n\tglEnable(GL_BLEND);\n\tglBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);\n\nand then setting it back later.\n\ni'm guessing this is so the empty/alpha part of the bitmap font is drawn.\n\ninstead of using glBlendFunc i would suggest glAlphaFunc... but it looks like as of OpenGL ES 2.0 glAlphaFunc doesn't exist anymore :(\n\nnot sure what to do, but it's really weird to have ofSetColor(255) work, but not ofSetColor(255, 254). e.g.:\n\n\tofBackground(128);\n\tofEnableAlphaBlending();\n\tofSetColor(255, 254);\n\tofDrawBitmapString(\"255, 254\", 10, 20);\n\tofSetColor(255, 255);\n\tofDrawBitmapString(\"255, 255\", 10, 40);\n\tofDisableAlphaBlending();","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/501","comments":0,"milestone":null,"number":501,"html_url":"https://github.com/openframeworks/openFrameworks/issues/501","assignee":null,"title":"ofDrawBitmapString / ofGLRenderer::drawString doesn't work with alpha","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-03-18T03:54:34Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":683732,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-03T10:41:35Z","body":"right now ofImage::getPixelsRef() is always non-const, as well as ofImage::getPixels()","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/500","comments":4,"milestone":null,"number":500,"html_url":"https://github.com/openframeworks/openFrameworks/issues/500","assignee":null,"title":"missing const version of getPixelsRef()","labels":[],"closed_at":null,"created_at":"2011-03-14T19:14:21Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":672608,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=11 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4933'), ('content-length', '40272'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"b87c61471553096d60e5ff8b292ff704"'), ('date', 'Tue, 29 May 2012 19:27:20 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"milestone":null,"state":"open","user":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"osx movieplayer problem on reloading","html_url":"https://github.com/openframeworks/openFrameworks/issues/495","comments":0,"assignee":null,"updated_at":"2011-03-09T16:17:56Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=7&t=5729&view=unread#unread","number":495,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/495","labels":[{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":659446,"closed_at":null,"created_at":"2011-03-09T16:17:56Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"GLUT 007 hack","html_url":"https://github.com/openframeworks/openFrameworks/issues/491","comments":0,"assignee":null,"updated_at":"2011-03-04T14:44:53Z","body":"it seems that some commented defines are still being preprocessed and making gdb behave weird:\r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=4&t=5602&view=unread#unread","number":491,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/491","labels":[{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":646846,"closed_at":null,"created_at":"2011-03-04T14:44:53Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"close corners on basic shapes?","html_url":"https://github.com/openframeworks/openFrameworks/issues/490","comments":0,"assignee":null,"updated_at":"2011-03-03T16:35:17Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=8&t=5678&view=unread#unread\r\n\r\nperhaps use style.linewith? won't work if you use glLineWidth though","number":490,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/490","labels":[{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":643861,"closed_at":null,"created_at":"2011-03-03T16:35:17Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"893ec14dc008e3774afe5841115920d6","url":"https://api.github.com/users/jonbro","login":"jonbro","id":1597,"avatar_url":"https://secure.gravatar.com/avatar/893ec14dc008e3774afe5841115920d6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofOrientation incompatible with iOS addon","html_url":"https://github.com/openframeworks/openFrameworks/issues/486","comments":0,"assignee":{"gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-10T04:50:03Z","body":"the existing iOS orientation methods are not compatible with the virtual functions that they inherit from. The new virtuals use a ofOrientation enum, and the old functions use ints.\r\n\r\nThis issue was introduced in https://github.com/openframeworks/openFrameworks/commit/38011d54","number":486,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/486","labels":[{"color":"2babad","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":635112,"closed_at":null,"created_at":"2011-02-28T18:14:04Z"},{"milestone":{"state":"open","description":"","title":"0073 Release","due_on":"2012-07-30T07:00:00Z","closed_issues":0,"open_issues":5,"number":6,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":62090,"created_at":"2011-12-03T15:37:49Z"},"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"grabFrame/idleFrame deprecation","html_url":"https://github.com/openframeworks/openFrameworks/issues/484","comments":12,"assignee":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-04-24T21:04:32Z","body":"it would be nice to start deprecating grabFrame() and idleFrame() (but maybe wait a couple years to actually remove them) , and change the examples to only use update() and isFrameNew().","number":484,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/484","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"37c200","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy"}],"id":613171,"closed_at":null,"created_at":"2011-02-20T17:56:02Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"ace632f74988653fdbde09225134bfdd","url":"https://api.github.com/users/nemik","login":"nemik","id":62301,"avatar_url":"https://secure.gravatar.com/avatar/ace632f74988653fdbde09225134bfdd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofVideoPlayer bug when loading subsequent movies after the first one","html_url":"https://github.com/openframeworks/openFrameworks/issues/475","comments":0,"assignee":null,"updated_at":"2011-02-14T17:11:08Z","body":"Within 0062, inside libs/openFrameworks/video/ofVideoPlayer.cpp on line 314 there is a check for height and width not being 0, then \"bDoWeAlreadyHaveAGworld = true;\" is set. However, this prevents other movies after the first from being loaded into that instance of ofVideoPlayer. \r\nI have posted about this in the forum with a fix (to just remove that check) here: http://www.openframeworks.cc/forum/viewtopic.php?f=8&t=5222\r\n\r\nInside the latest code, it is within ofQuickTimePlayer.cpp https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/video/ofQuickTimePlayer.cpp#L281.","number":475,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/475","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":598097,"closed_at":null,"created_at":"2011-02-14T17:11:08Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"object init/load state is not consistently testable","html_url":"https://github.com/openframeworks/openFrameworks/issues/463","comments":0,"assignee":null,"updated_at":"2011-02-07T19:58:23Z","body":"I like to be able to know when an object has successfully initialized or loaded and OF provides for this, for the most part, but in an inconsistent manner ie\r\n\r\nofVideoGrabber::initGrabber() returns a bool, but ofVideoGrabber:bInitialized is protected and therefore not accessible\r\n\r\nwhile\r\n\r\nofTrueTypeFont::bLoadedOk is public, but ofTrueTypeFont::loadFont() returns void\r\n\r\nand\r\n\r\nofImage::loadImage() returns a bool and ofLoadImage::bAllocated() returns a bool, yet ofImage::setFromPixels() returns void\r\n\r\nI propose all loadable/initable objects have loading functions which always return a bool and a testable function (isInited(), isLoaded(), etc) for use after loading. Ideally, the testable functions would always be named the same ie myImage.isLoaded(), myVideoGrabber().isLoaded(), myFont.isLoaded() but of course a general name may not apply to all situations (myVideoGrabber.isInited() probably makes more sense).\r\n\r\nHell, all the load functions could be overloaded ie ofImage::load(string filename), ofImage::load(ofPixels pixels), ofImage::load(unsigned char* pixels) across different objects, ofTrueTypeFont::load(string filename), ofVideoGrabber::load(int w, int h, int deviceID). This consistency looks nice to anal me. but might be confusing to newbies and of course would break old code (unless wrapped for legacy compatibility). It seems a little annoying that every objects seems to have it's own way of checking this and that ...","number":463,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/463","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"37c200","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy"}],"id":581395,"closed_at":null,"created_at":"2011-02-07T19:58:23Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"8022cb5f529975afbc64cc9312008d8c","url":"https://api.github.com/users/nardove","login":"nardove","id":277690,"avatar_url":"https://secure.gravatar.com/avatar/8022cb5f529975afbc64cc9312008d8c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"OpenCV cvSobel() not working with latest master branch","html_url":"https://github.com/openframeworks/openFrameworks/issues/462","comments":0,"assignee":null,"updated_at":"2011-02-07T15:58:19Z","body":"Hi,\r\n\r\nI get the following error:\r\n// INIT OF ERROR\r\nOF_WARNING: ofBaseVideoPlayer::setPixelFormat not implemented\r\nOpenCV Error: Assertion failed (src.size() == dst.size() && src.channels() == dst.channels() && ((src.depth() == CV_8U && (dst.depth() == CV_16S || dst.depth() == CV_32F)) || (src.depth() == CV_32F && dst.depth() == CV_32F))) in cvSobel, file /Users/theo/Documents/CODE/__OPENFRAMEWORKS/gitOF/__BuildAllLibs/OpenCV-2.2.0/modules/imgproc/src/deriv.cpp, line 347\r\nterminate called after throwing an instance of 'cv::Exception'\r\n what(): /Users/theo/Documents/CODE/__OPENFRAMEWORKS/gitOF/__BuildAllLibs/OpenCV-2.2.0/modules/imgproc/src/deriv.cpp:347: error: (-215) src.size() == dst.size() && src.channels() == dst.channels() && ((src.depth() == CV_8U && (dst.depth() == CV_16S || dst.depth() == CV_32F)) || (src.depth() == CV_32F && dst.depth() == CV_32F)) in function cvSobel\r\n// END OF ERROR\r\n\r\nWhen I try to call the cvSobel method like this:\r\ncvSobel( grayImage.getCvImage(), grayImage.getCvImage(), 0, 1, 3 );\r\n\r\nThis works fine in 0062.\r\n\r\nCheers\r\n- rS","number":462,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/462","labels":[{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":580717,"closed_at":null,"created_at":"2011-02-07T15:58:19Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","url":"https://api.github.com/users/danomatika","login":"danomatika","id":480637,"avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"get number of input devices and device IDs from ofVideoGrabber","html_url":"https://github.com/openframeworks/openFrameworks/issues/461","comments":0,"assignee":null,"updated_at":"2011-02-07T19:38:51Z","body":"Currently, the ofVideoGrabber can list devices to stdout, but does not return the number of available devices. I propose that either listDevices() return an int or a new function be added, something like getNumDevices() or a getDeviceNums() which returns a vector of valid device ids. This could be related to Arturo's Issue where the devices could be retrieved as strings. I think it makes sense to have these as static functions so that you could open all available cameras into an Array of ofVideoGrabbers by retrieving the number of devices and their ids to open them.","number":461,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/461","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":580556,"closed_at":null,"created_at":"2011-02-07T15:24:21Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"saveImage() and other save operations should create missing directories","html_url":"https://github.com/openframeworks/openFrameworks/issues/460","comments":8,"assignee":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-08T15:56:48Z","body":"i feel like it happens relatively often where i try to save an image (for example) and the parent directories don't exist, so it just fails without really saying anything.\r\n\r\nit would be nice if the dir(s) were just created automatically for you.","number":460,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/460","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":579790,"closed_at":null,"created_at":"2011-02-07T07:52:25Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofTexture::allocate not checking for unnecessary reallocation","html_url":"https://github.com/openframeworks/openFrameworks/issues/454","comments":0,"assignee":null,"updated_at":"2011-02-06T04:26:44Z","body":"ofPixels::allocate is smart in that it doesn't reallocate if you ask for the same size as what's already there. ofTexture should work the same way to avoid unnecessary overhead.","number":454,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/454","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":578069,"closed_at":null,"created_at":"2011-02-06T04:26:44Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofViewport doesn't work with ofSetOrientation","html_url":"https://github.com/openframeworks/openFrameworks/issues/449","comments":0,"assignee":null,"updated_at":"2011-02-02T00:03:09Z","body":"maybe a generic 'transformer' function would handle both this and mouse coordinates, and anything else? ofPoint ofGetAsbolutePosition(x,y)?","number":449,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/449","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":568540,"closed_at":null,"created_at":"2011-02-02T00:03:09Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"no way to get imageType of ofVideoGrabber","html_url":"https://github.com/openframeworks/openFrameworks/issues/446","comments":0,"assignee":null,"updated_at":"2011-01-31T19:26:41Z","body":"ofVideoGrabber has getOFPixels in the .h, but it isn't implemented in the .cpp.\r\n\r\nmaybe this is just a signal that ofPixels stuff needs to be resolved soon... :) i'd be glad to help with this if possible.","number":446,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/446","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":565122,"closed_at":null,"created_at":"2011-01-31T19:26:41Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"e5d92e48e175112e9df112e2418bd528","url":"https://api.github.com/users/kylemcdonald","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofGetElapsedTimeMillis returns an int instead of unsigned long","html_url":"https://github.com/openframeworks/openFrameworks/issues/428","comments":0,"assignee":null,"updated_at":"2011-01-28T06:28:01Z","body":"the start time is stored internally as an unsigned long, but ofGetElapsedTimeMillis returns it as an int. ofGetElapsedTimef also does calculations using time as an int. this means time wraps around every (2^31 - 1) milliseconds in days = 24.8 days.\r\n\r\nas an unsigned long it would be (2^64 - 1) milliseconds in years = 584 million years :)","number":428,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/428","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"65a300","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize"}],"id":558215,"closed_at":null,"created_at":"2011-01-28T06:28:01Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"4fc88ba881fee72fc4c5de473dc2ebbf","url":"https://api.github.com/users/NickHardeman","login":"NickHardeman","id":142694,"avatar_url":"https://secure.gravatar.com/avatar/4fc88ba881fee72fc4c5de473dc2ebbf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Check ofShader Texture Wrap Parameters","html_url":"https://github.com/openframeworks/openFrameworks/issues/424","comments":1,"assignee":null,"updated_at":"2011-12-02T21:05:54Z","body":"I thought checking for custom texture wrapping in ofShader might be useful. Not sure how to add a label to this :/\n\n#include ofGraphics.h\n\nvoid setUniformTexture(const char* name, ofBaseHasTexture& img, int textureLocation=-1);\nvoid setUniformTexture(const char* name, ofTexture& img, int textureLocation=-1);\n\nvoid ofShader::setUniformTexture(const char* name, ofTexture& tex, int textureLocation) {\n\tif(bLoaded) {\n\t\t\n\t\tGLfloat wrapS = -1;\n\t\tGLfloat wrapT = -1;\n\t\t\n\t\tif (ofGetUsingCustomTextureWrap()) {\n\t\t\tglGetTexParameterfv(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, &wrapS);\n\t\t\tglGetTexParameterfv(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, &wrapT);\n\t\t}\n\t\t\n\t\tofTextureData texData = tex.getTextureData();\n\t\tif (textureLocation < 0) textureLocation = texData.textureID;\n\t\tglActiveTexture(GL_TEXTURE0 + textureLocation);\n\t\tglEnable(texData.textureTarget);\n\t\t\n\t\tif(wrapS > 0) glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, wrapS);\n\t\tif(wrapT > 0) glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, wrapT);\n\t\t\n\t\tglBindTexture(texData.textureTarget, texData.textureID);\n\t\tglDisable(texData.textureTarget);\n\t\tsetUniform1i(name, texData.textureID);\n\t\tglActiveTexture(GL_TEXTURE0);\n\t}\n}","number":424,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/424","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":556923,"closed_at":null,"created_at":"2011-01-27T19:43:31Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"problem with reloading movies in osx","html_url":"https://github.com/openframeworks/openFrameworks/issues/423","comments":0,"assignee":null,"updated_at":"2011-01-24T22:34:29Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=8&t=5222","number":423,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/423","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"2a8296","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS"}],"id":548302,"closed_at":null,"created_at":"2011-01-24T22:34:29Z"},{"milestone":{"state":"open","description":"","title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"number":5,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61810,"created_at":"2011-12-02T15:29:48Z"},"state":"open","user":{"gravatar_id":"117a7eecfee7c7f7e954623fd96e1b6e","url":"https://api.github.com/users/snibbe","login":"snibbe","id":581517,"avatar_url":"https://secure.gravatar.com/avatar/117a7eecfee7c7f7e954623fd96e1b6e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Retina display support **that doesn't crash devices!** with backward compatibility to OS 3.0","html_url":"https://github.com/openframeworks/openFrameworks/issues/421","comments":2,"assignee":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2011-12-05T22:03:15Z","body":"Hi guys,\r\n\r\nI posted to the OF forum a solution back in August to support retina display with backward compatibility to pre-OS 4.0 devices:\r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=25&t=4185&start=15\r\n\r\nIf it's still outstanding, here's the solution!\r\n\r\nEAGLView.mm, initWithFrame, after the eaglLayer.drawableProperties assignment, add:\r\n\r\n if ([[UIScreen mainScreen] respondsToSelector:@selector(scale)]) {\r\n if ([[UIScreen mainScreen] scale] > 1) {\r\n // code below doesn't work on iPad 3.2 OS and below, but doesn't need to because scale is 1\r\n [self setContentScaleFactor:[[UIScreen mainScreen] scale]];\r\n }\r\n }\r\n\r\nofAppiPhoneWindow.mm, timerLoop, after [ofxiPhoneGetGLView() startRender]; add:\r\n\r\n int ofwidth = ofGetWidth();\r\n int ofheight = ofGetHeight();\r\n \r\n if ([[UIScreen mainScreen] respondsToSelector:@selector(scale)]) {\r\n ofwidth *= [[UIScreen mainScreen] scale];\r\n ofheight *= [[UIScreen mainScreen] scale];\r\n }\r\n\r\nthen change the glViewport calls:\r\n\r\n\t// this could be taken out and included in ofAppBaseWIndow\r\n\tif(orientation == OFXIPHONE_ORIENTATION_PORTRAIT || orientation == OFXIPHONE_ORIENTATION_UPSIDEDOWN)\r\n\t\tglViewport( 0, 0, ofwidth, ofheight );\r\n\telse\r\n\t\tglViewport( 0, 0, ofheight, ofwidth );","number":421,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/421","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"2a8296","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS"}],"id":548070,"closed_at":null,"created_at":"2011-01-24T20:52:18Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"something to wrap glMultMatrixf","html_url":"https://github.com/openframeworks/openFrameworks/issues/418","comments":0,"assignee":null,"updated_at":"2011-01-22T15:57:37Z","body":"suggestions:\r\n\r\n ofPopMatrix(ofMatrix4x4 m)\r\n\r\n ofMultMatrix(ofMatrix4x4 m)\r\n\r\n ofMatrix4x4::apply();\r\n ofMatrix4x4::push();","number":418,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/418","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":543729,"closed_at":null,"created_at":"2011-01-22T15:57:37Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"3D isn't scale invariant in certain parts","html_url":"https://github.com/openframeworks/openFrameworks/issues/417","comments":0,"assignee":null,"updated_at":"2011-01-22T15:24:07Z","body":"e.g.\r\n\r\n void ofEasyCam::reset() {\r\n\ttarget.resetTransform();\r\n\tdistance = 100;\r\n }\r\n\r\nofNode's\r\n\tvirtual void customDraw() {\r\n\t\tofBox(10);\r\n\t\tofDrawAxis(20);\r\n\t}\r\n\r\nsuggestions:\r\n\r\nglobal variable called something like 'base3DScaleFactor = 10.0f' which will affect all of these current constant scale factors","number":417,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/417","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"}],"id":543694,"closed_at":null,"created_at":"2011-01-22T15:24:07Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","url":"https://api.github.com/users/vanderlin","login":"vanderlin","id":149997,"avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Simulator not working with any examples ","html_url":"https://github.com/openframeworks/openFrameworks/issues/414","comments":3,"assignee":{"gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-10T05:00:35Z","body":"Getting this error after the app launches in simulator mode \r\n\r\nDetected an attempt to call a symbol in system libraries that is not present on the iPhone:\r\n\r\n","number":414,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/414","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"2babad","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":539979,"closed_at":null,"created_at":"2011-01-20T20:17:35Z"},{"milestone":{"state":"open","description":"","title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"number":5,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61810,"created_at":"2011-12-02T15:29:48Z"},"state":"open","user":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofCamera::setPan is broken","html_url":"https://github.com/openframeworks/openFrameworks/issues/413","comments":1,"assignee":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-14T15:11:06Z","body":"","number":413,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/413","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"31e03a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed"}],"id":539915,"closed_at":null,"created_at":"2011-01-20T20:01:00Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"84c985e7168027f833fd837f3afd9f3e","url":"https://api.github.com/users/arturoc","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"add setMultisampling method to glutWindow","html_url":"https://github.com/openframeworks/openFrameworks/issues/412","comments":0,"assignee":null,"updated_at":"2011-01-20T19:33:30Z","body":"multisampling is now working in linux through the display string option. perhaps we could add a method to easily set it if it also works on win/osx","number":412,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/412","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"622425","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature"},{"color":"244569","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows"}],"id":539845,"closed_at":null,"created_at":"2011-01-20T19:33:30Z"},{"milestone":{"state":"open","description":"","title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"number":5,"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","creator":{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","url":"https://api.github.com/users/bilderbuchi","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":61810,"created_at":"2011-12-02T15:29:48Z"},"state":"open","user":{"gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","url":"https://api.github.com/users/ofTheo","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofCamera / ofEasyCamera does not work correctly for iPhone / iPad","html_url":"https://github.com/openframeworks/openFrameworks/issues/410","comments":2,"assignee":{"gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","url":"https://api.github.com/users/julapy","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"updated_at":"2012-03-14T15:11:06Z","body":"Needs to take into account the rotation and the flipping happening in ofAppiPhoneWindow::timerLoop() \n\nAlso the internal call to ofViewport causes clipping in horizontal mode. \n\nIts currently very difficult to setup the camera correctly for iPad / iPhone - would be great if the default for ofCamera would be to start with the typical OF camera view. ","number":410,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/410","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"2babad","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"31e03a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed"}],"id":539744,"closed_at":null,"created_at":"2011-01-20T18:59:10Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","url":"https://api.github.com/users/vanderlin","login":"vanderlin","id":149997,"avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofEnableLighting","html_url":"https://github.com/openframeworks/openFrameworks/issues/406","comments":0,"assignee":null,"updated_at":"2011-01-19T19:39:37Z","body":"ofLight bug not sure what the ios equivalent is..\r\n\r\nglColorMaterial(GL_FRONT_AND_BACK, GL_AMBIENT_AND_DIFFUSE); is not supported in IOS","number":406,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/406","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"}],"id":537416,"closed_at":null,"created_at":"2011-01-19T19:39:36Z"},{"milestone":null,"state":"open","user":{"gravatar_id":"bea30676dca310e7f38269f245214944","url":"https://api.github.com/users/elliotwoods","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofViewport doesn't match rest of openFrameworks coordinates","html_url":"https://github.com/openframeworks/openFrameworks/issues/405","comments":0,"assignee":null,"updated_at":"2011-01-19T13:24:54Z","body":"Suggest change line 126 of ofGraphics.h to\r\n\tglViewport(x, ofGetHeight() - y - height, width, height);\r\n\r\nto be in line with rest of openFrameworks coordinate system\r\ne.g. ofRect(myRect) matches ofViewport(myRect)\r\n","number":405,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/405","labels":[{"color":"db6a1f","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core"},{"color":"b31d1d","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug"},{"color":"31e03a","url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed"}],"id":536614,"closed_at":null,"created_at":"2011-01-19T13:24:53Z"}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=12 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4932'), ('content-length', '38352'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"679d499a026b6f6d6a1e20857a7392dc"'), ('date', 'Tue, 29 May 2012 19:27:21 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-01-17T23:39:31Z","body":"it should be only in the implementations and queried by the grabber/player in case an implementation doesn't support a format if not the app can crash or have really weird results","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/403","comments":0,"milestone":null,"number":403,"html_url":"https://github.com/openframeworks/openFrameworks/issues/403","assignee":null,"title":"setPixelFormat shouldn't be stored in videoGrabber/Player","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-17T23:39:31Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":532954,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-17T16:37:42Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/400","comments":0,"milestone":null,"number":400,"html_url":"https://github.com/openframeworks/openFrameworks/issues/400","assignee":null,"title":"ofTTF should have setAnchorPercent so you can draw strings centered, right aligned etc","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography","color":"DDDDDD"}],"closed_at":null,"created_at":"2011-01-17T16:37:42Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":532096,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-03-20T17:33:14Z","body":"every frame, it should update the pmouse value. so if you don't move the mouse, the pmouse value is equal to the current value.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/391","comments":1,"milestone":null,"number":391,"html_url":"https://github.com/openframeworks/openFrameworks/issues/391","assignee":null,"title":"ofGetPreviousMouseX/Y() does not update per frame","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-16T07:21:15Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":529705,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-03-20T17:32:59Z","body":"this is a limitation to glut, but it might be hackable on each system separately.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/389","comments":1,"milestone":null,"number":389,"html_url":"https://github.com/openframeworks/openFrameworks/issues/389","assignee":null,"title":"mouse position doesn't update until mouse is moved","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-16T07:11:53Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":529700,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-03-13T21:10:48Z","body":"following error appears when i try to load an image; commenting out the call to loadImage(\"...\") makes the error go away.\n\n Undefined symbols:\n \"std::basic_ostream >& std::__ostream_insert >(std::basic_ostream >&, char const*, int)\", \n referenced from:\n Poco::Net::HTTPClientSession::proxyAuthenticateImpl(Poco::Net::HTTPRequest&)in PocoNet.a(HTTPClientSession.o)\n Poco::Net::HTTPClientSession::proxyAuthenticateImpl(Poco::Net::HTTPRequest&)in PocoNet.a(HTTPClientSession.o)\n Poco::Net::HTTPRequest::write(std::basic_ostream >&) constin PocoNet.a(HTTPRequest.o)\n Poco::Net::HTTPRequest::write(std::basic_ostream >&) constin PocoNet.a(HTTPRequest.o)\n Poco::Net::HTTPRequest::write(std::basic_ostream >&) constin PocoNet.a(HTTPRequest.o)\n Poco::Net::MessageHeader::write(std::basic_ostream >&) constin PocoNet.a(MessageHeader.o)\n Poco::Net::MessageHeader::write(std::basic_ostream >&) constin PocoNet.a(MessageHeader.o)\n Poco::Net::HTTPResponse::write(std::basic_ostream >&) constin PocoNet.a(HTTPResponse.o)\n Poco::Net::HTTPResponse::write(std::basic_ostream >&) constin PocoNet.a(HTTPResponse.o)\n\nld: symbol(s) not found\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/387","comments":1,"milestone":null,"number":387,"html_url":"https://github.com/openframeworks/openFrameworks/issues/387","assignee":null,"title":"Linker error when loading image (Poco::Net related?)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-16T05:57:51Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"id":529646,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-15T17:01:08Z","body":"would be nice if it was a float (0-1) and not an int(0-100) for standardization with every other audio thing in the universe aside from quicktime","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/375","comments":2,"milestone":null,"number":375,"html_url":"https://github.com/openframeworks/openFrameworks/issues/375","assignee":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144366},"title":"ofVideoPlayer setVolume uses an int","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"closed_at":null,"created_at":"2011-01-15T23:03:57Z","state":"open","user":{"url":"https://api.github.com/users/stfj","gravatar_id":"b089227a1748a2d70cdfc4ef00b325ad","login":"stfj","avatar_url":"https://secure.gravatar.com/avatar/b089227a1748a2d70cdfc4ef00b325ad?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":177578},"id":529268,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-14T19:30:31Z","body":"glDrawBitmapString doesn't work when GL_LIGHTING is enabled.\r\n\r\nwell, it works... but it is black because it isn't reflecting any light. regardless of the ofSetColor.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/357","comments":0,"milestone":null,"number":357,"html_url":"https://github.com/openframeworks/openFrameworks/issues/357","assignee":null,"title":"glDrawBitmapString vs GL_LIGHTING","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-14T19:30:31Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":527591,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-14T01:33:38Z","body":"some of the core functions only work with 2d points, others only with 3d points, some work with both. but they all take ofPoints.\r\n\r\nit's good for teaching purposes to have ofPoints because you don't have to explain what a 'vector' is, but it's unclear for advanced users whether the functions take 2d or 3d points...","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/347","comments":0,"milestone":null,"number":347,"html_url":"https://github.com/openframeworks/openFrameworks/issues/347","assignee":null,"title":"none of the core functions report how many dimensions they work for","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2011-01-14T01:33:38Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":526094,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-13T16:16:40Z","body":"e.g., GL_DEPTH_TEST.\r\n\r\none of the reasons for this is that it's not obvious to newbies what common features are available.\r\n\r\nanother is that i've seen lots of people write GL_DEPTH instead, which obviously doesn't work.\r\n\r\nthere might be some others too, see processing's hint():\r\n\r\nhttp://processing.org/reference/hint_.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/340","comments":0,"milestone":null,"number":340,"html_url":"https://github.com/openframeworks/openFrameworks/issues/340","assignee":null,"title":"OF wrapper for basic gl functions that aren't intuitive to newbies","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"closed_at":null,"created_at":"2011-01-13T16:16:40Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":524875,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-27T13:35:42Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/337","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":337,"html_url":"https://github.com/openframeworks/openFrameworks/issues/337","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"ofFileDialog allow folder selection ( works on os x ) needs code for win and linux","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-01-13T05:21:53Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":523837,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T15:11:06Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/330","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":330,"html_url":"https://github.com/openframeworks/openFrameworks/issues/330","assignee":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"title":"OpenCv 2.2 for Win ( CB and VS )","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/codeblocks+","name":"codeblocks ","color":"cb6efa"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"}],"closed_at":null,"created_at":"2011-01-12T19:09:37Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":522789,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-04T14:06:34Z","body":"currentStyle stores everything about the current style, so it can be used rather than things like drawMode for tracking how things should currently be draw.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/325","comments":1,"milestone":null,"number":325,"html_url":"https://github.com/openframeworks/openFrameworks/issues/325","assignee":null,"title":"drawMode can be deprecated, currentStyle.bFill should be used instead","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-12T15:41:11Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":522255,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-12T15:34:48Z","body":"ordering for code completion is a little weird.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/324","comments":0,"milestone":null,"number":324,"html_url":"https://github.com/openframeworks/openFrameworks/issues/324","assignee":null,"title":"ofPushView/ofPopView appear before ofPushMatrix/ofPopMatrix","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"}],"closed_at":null,"created_at":"2011-01-12T15:34:48Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":522231,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-10T22:30:48Z","body":"under the /video directory","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/311","comments":0,"milestone":null,"number":311,"html_url":"https://github.com/openframeworks/openFrameworks/issues/311","assignee":null,"title":"openFrameworksLib has ofQtUtils included twice","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-10T22:30:48Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":518434,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-10T06:36:27Z","body":"better to use aggregation (helper classes/functions) if necessary for common functionality that have implementation in those classes. making them pure abstract classes will avoid problems with multiple inheritance and easier to extend in case of different behaviour","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/305","comments":0,"milestone":null,"number":305,"html_url":"https://github.com/openframeworks/openFrameworks/issues/305","assignee":null,"title":"no implementation in ofBaseTypes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-10T06:36:27Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":516844,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-05T21:59:59Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/302","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":302,"html_url":"https://github.com/openframeworks/openFrameworks/issues/302","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"Remove Poco CppUnit from all projects ( done on os x )","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-01-10T02:39:28Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":516565,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T01:06:09Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/299","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","closed_issues":0,"number":6,"title":"0073 Release","due_on":"2012-07-30T07:00:00Z","open_issues":5,"created_at":"2011-12-03T15:37:49Z","state":"open","description":"","id":62090},"number":299,"html_url":"https://github.com/openframeworks/openFrameworks/issues/299","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"freetype-2.4.4 for linux","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2011-01-10T02:38:08Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":516560,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T01:06:08Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/298","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","closed_issues":0,"number":6,"title":"0073 Release","due_on":"2012-07-30T07:00:00Z","open_issues":5,"created_at":"2011-12-03T15:37:49Z","state":"open","description":"","id":62090},"number":298,"html_url":"https://github.com/openframeworks/openFrameworks/issues/298","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"freetype-2.4.4 for windows","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-01-10T02:37:49Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":516559,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-05T21:59:27Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/296","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","closed_issues":21,"number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":296,"html_url":"https://github.com/openframeworks/openFrameworks/issues/296","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"FreeImage 3141 build for windows","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"}],"closed_at":null,"created_at":"2011-01-10T02:36:58Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":144000},"id":516556,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-01-09T20:46:43Z","body":"I think the pixeltype, the gltypeinternal and the gltype should be accessible to the user as well as the loadData(void * data, int w, int h, int glDataType) which is actually protected.\r\n\r\nActual implementation is only limited to a few choice of internalFormat which lead to choice of pixeltype and gltype. It thus doesn't allow from user specific type.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/292","comments":0,"milestone":null,"number":292,"html_url":"https://github.com/openframeworks/openFrameworks/issues/292","assignee":null,"title":"ofTexture should be more flexible","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2011-01-09T20:46:43Z","state":"open","user":{"url":"https://api.github.com/users/I33N","gravatar_id":"ba8d7c3b4532d3747c30b9be91dc20d5","login":"I33N","avatar_url":"https://secure.gravatar.com/avatar/ba8d7c3b4532d3747c30b9be91dc20d5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":520375},"id":516071,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-12-03T10:49:15Z","body":"ofImage::getWidth()/getHeight() are just getters that do absolutely nothing but return a copy of the width and height. these methods should be marked const.\r\n\r\n[added]: there are hacks inside ofxCv that i've had to make because getWidth/getHeight are not const correct. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/288","comments":6,"milestone":null,"number":288,"html_url":"https://github.com/openframeworks/openFrameworks/issues/288","assignee":null,"title":"const correctness - add const to getWidth/getHeight","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2011-01-08T02:14:03Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":513779,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2010-11-30T05:13:10Z","body":"This is giving me some crashes. There needs to be a way to disable this when making custom windows. I have tried to do atexit(NULL); but the callback in ofRunApp(ofBaseApp * OFSA) is still being called. \r\n\r\nmaybe something like:\r\n\r\nvoid ofRunApp(ofBaseApp * OFSA, bool useExitCallback);\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/275","comments":0,"milestone":null,"number":275,"html_url":"https://github.com/openframeworks/openFrameworks/issues/275","assignee":null,"title":"atexit(ofExitCallback);","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-11-30T05:13:10Z","state":"open","user":{"url":"https://api.github.com/users/vanderlin","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":149997},"id":445829,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-03-17T02:02:25Z","body":"bottom left corner is inconsistent with every other drawing command in OF, should be top left instead.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/271","comments":7,"milestone":null,"number":271,"html_url":"https://github.com/openframeworks/openFrameworks/issues/271","assignee":null,"title":"ofDrawBitmapString draws from bottom left","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-11-22T21:30:40Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":433297,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-06-03T19:04:08Z","body":"test if this is really useful:\r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=7&t=4889&view=unread#unread\r\n\r\nhe adds a queue just before the color conversion","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/265","comments":0,"milestone":null,"number":265,"html_url":"https://github.com/openframeworks/openFrameworks/issues/265","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"title":"linux videograbber stopping after some time","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2010-11-18T12:07:46Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":48240},"id":426050,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-19T22:47:21Z","body":"ofClear(r,g,b) is inconsistent with ofBackground(r,g,b) because the alpha is 0 by default -- meaning you always have to explicitly declare the alpha to clear the background.\r\n\r\nfurthermore, because all the arguments have default values there is not/cannot exist an ofClear(gray, alpha) to match ofSetColor style","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/264","comments":5,"milestone":null,"number":264,"html_url":"https://github.com/openframeworks/openFrameworks/issues/264","assignee":null,"title":"ofClear uses inconsistent arguments","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2010-11-18T06:15:47Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":157106},"id":425675,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=13 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4931'), ('content-length', '46291'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"bf7e6718fe6b733d04e77e00e220150f"'), ('date', 'Tue, 29 May 2012 19:27:22 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2011-12-05T21:58:33Z","body":"A lot of OF files are including ofMain / ofConstants.h - this makes compiles super slow. Try to have files only include what they need. Or find a way to break things up into the most often used ( windows.h etc ) and less used. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/255","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":255,"html_url":"https://github.com/openframeworks/openFrameworks/issues/255","assignee":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"title":"COMPILE SPEED UP - cleanup internal includes to avoid ofMain.h and ofConstants.h","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2010-11-11T21:14:05Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":413771,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T20:11:33Z","body":"ofHideCursor()/ofShowCursor()\r\n\r\nofEnableArbTex()\r\nofEnableSetupScreen()\r\nofEnableDataPath()\r\nofEnableAlphaBlending()\r\nofEnableSmoothing()\r\n\r\nofSetFullscreen() + ofToggleFullscreen()\r\nofSetVerticalSync()\r\n\r\netc.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/249","comments":1,"milestone":null,"number":249,"html_url":"https://github.com/openframeworks/openFrameworks/issues/249","assignee":null,"title":"normalize option nomenclature (hide/enable/set/etc.)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2010-11-03T22:52:08Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":399214,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T22:03:41Z","body":"some video to test:\r\n\r\nmmsh://live.camstreams.com/cscamglobal16?MSWMExt=.asf\r\n\r\nit works ok with totem so it should be a problem in ofGstUtils","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/245","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":245,"html_url":"https://github.com/openframeworks/openFrameworks/issues/245","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"gstreamer problems with streaming of microsoft video","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2010-10-13T16:33:06Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":360885,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-03-13T20:13:07Z","body":"I found an annoying bug in ofVideoPlayer.\nThis module do not like to be dynamically created or destroyed.\nCheck this little example :\n\nhttp://knu.free.fr/bug_ofVideoPlayer.zip\n\nLeft-click to create an object playing video.\nRight-click to suppress the last video.\n\nhere are the phenomenons I am facing on my Win7 machine :\n\n- \nIf you create an object, and then you suppress it, and then try to create an object again, the app will crash.\n\n- \nIf you create some objects (lets say 8), and then you suppress all of them, the app will crash before the last one (not always, but most of the time).\n\n\n\nNow in OF source tree, try replacing ofVideoPlayer.cpp with FIX_ofVideoPlayer.cpp (at the root of the zip)\nRebuild the project.\nNow everything should be working as expected.\n\n\nThe modifications I made in the source are marked by : //###############\n\nI do not have time to fully read and understand the quicktime API, so there are chances this workaround is fucking dirty.\nBut at least it seems to work.\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/244","comments":1,"milestone":null,"number":244,"html_url":"https://github.com/openframeworks/openFrameworks/issues/244","assignee":null,"title":"bug in ofVideoPlayer","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2010-10-11T19:56:46Z","state":"open","user":{"url":"https://api.github.com/users/fmauclere","avatar_url":"https://secure.gravatar.com/avatar/1c7dcbab3712f1a4d90bd2c3aa9a3e3d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"1c7dcbab3712f1a4d90bd2c3aa9a3e3d","login":"fmauclere","id":435720},"id":357395,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-10T05:06:06Z","body":"Check out this code - also check if latest ffmpeg is better optimized for iphone.\r\nhttp://github.com/jgh-/FFmpeg-for-iOS","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/240","comments":0,"milestone":null,"number":240,"html_url":"https://github.com/openframeworks/openFrameworks/issues/240","assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"title":"iphone video player - ffmpeg and audioqueues","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-10-06T17:19:57Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":349886,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-10T05:08:56Z","body":"XCode: 3.2.4\nOF: github master @24 Sep 2010\nCompiled as: device base SDK 4.1 release arm7 deployment target 3.2\n\nWeird error: Build ofAudioOutputExample. Add a void testApp::exit() to see if it is called. Run app on ipod touch 2010 version with 4.1 installed.\n\nApp runs OK yet pressing the exit button on front of device quits the app, but xcode keeps running. Digging in a bit it appears not only testApp::exit, but ofExitCallback is not getting called.\n\nSwitch to iPad (no other settings changed) and app runs fine, and exits properly.\n\nSwitch to BaseSDK 3.2 and example runs fine and exits fine on both iPad and iPod.\n\nIdeas? Is this just me? I'm fairly new to OF, XCode and iPhone\n\n[edit]\nOK I worked out that pressing the \"close\" button in 4.1 calls applicationWillResignActive in ofxiPhoneAppDelegate.mm. As a hacky workaround as my app just needs to exit, not sit in background, I added exit(0); to the end of applicationWillResignActive and it seems to work.\n\nWould like to know how to do this properly though.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/236","comments":1,"milestone":null,"number":236,"html_url":"https://github.com/openframeworks/openFrameworks/issues/236","assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"title":"ofExitCallback not being called on iphone4.1?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-09-25T01:55:49Z","state":"open","user":{"url":"https://api.github.com/users/DavidDC","avatar_url":"https://secure.gravatar.com/avatar/a6fdad0c31fcd273a1ba89434fec0419?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"a6fdad0c31fcd273a1ba89434fec0419","login":"DavidDC","id":415101},"id":332379,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-04-19T00:32:33Z","body":"related to #221: texData.bAllocated is only used in the isAllocated method which can be changed from:\r\n\r\n bool ofTexture::bAllocated(){\r\n return texData.bAllocated;\r\n }\r\n\r\nto\r\n\r\n bool ofTexture::bAllocated(){\r\n return texData.textureID!=0;\r\n }\r\n\r\navoiding problems like #221 since we don't have two flags for the same thing","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/228","comments":4,"milestone":null,"number":228,"html_url":"https://github.com/openframeworks/openFrameworks/issues/228","assignee":null,"title":"remove bAllocated in ofTexture?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2010-09-09T14:20:55Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":309191,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T15:45:27Z","body":"Segfault when playing .ogv files on 64 bit linux.\nSee forum post - http://www.openframeworks.cc/forum/viewtopic.php?f=7&t=4582","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/227","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":227,"html_url":"https://github.com/openframeworks/openFrameworks/issues/227","assignee":null,"title":"Ubuntu 64-bit conflict with FMOD when playing ogg theora files","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"}],"closed_at":null,"created_at":"2010-09-08T14:54:33Z","state":"open","user":{"url":"https://api.github.com/users/pierrep","avatar_url":"https://secure.gravatar.com/avatar/be11c9de8242e7aef0446eceaa289e01?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"be11c9de8242e7aef0446eceaa289e01","login":"pierrep","id":392160},"id":307684,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-08-31T10:54:19Z","body":"It would be nice to have:\r\n\r\n\tconst ofxVec2f xunit2f(1, 0), yunit2f(0, 1);\r\n\tconst ofxVec3f xunit3f(1, 0, 0), yunit3f(0, 1, 0), zunit3f(0, 0, 1);\r\n\r\nOr something similar that allows for more elegant notation when you're multiplying or adding by an axis.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/225","comments":0,"milestone":null,"number":225,"html_url":"https://github.com/openframeworks/openFrameworks/issues/225","assignee":null,"title":"ofxVectorMath constants","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-08-31T10:54:19Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":295913,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-26T18:37:47Z","body":"can this be useful?\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=25&t=4500\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/224","comments":1,"milestone":null,"number":224,"html_url":"https://github.com/openframeworks/openFrameworks/issues/224","assignee":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"title":"gaussian noise","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"}],"closed_at":null,"created_at":"2010-08-26T10:21:24Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":290973,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-10-17T13:58:53Z","body":"ofxOsc causes a memory access violation in VS2008, when you use sendMessage(ofxOscMessage) from within a class.\r\nNo error when you run that from main ofApp","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/214","comments":1,"milestone":null,"number":214,"html_url":"https://github.com/openframeworks/openFrameworks/issues/214","assignee":null,"title":"ofxOsc memory access violation. namespace issue?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-08-04T05:59:22Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":268332,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-14T15:12:26Z","body":"e) get arturo's script to work, or rewrite a new one to just clobber a given directory (and not pull from git, etc as it's doing now). \r\n\r\ntheo - might be good to have two scripts?\r\n1) to pull from git \r\n2) to remove everything not related to a platform - or maybe better just copies the files into a folder for that platform. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/199","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":199,"html_url":"https://github.com/openframeworks/openFrameworks/issues/199","assignee":null,"title":"script that doesn't pull everything from git","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-06-01T13:28:54Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":211418,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-05-25T14:54:52Z","body":"\r\nas per: \r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?f=8&t=3962&p=20661#p20661\r\n\r\nwe should explain how to use it properly. \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/194","comments":0,"milestone":null,"number":194,"html_url":"https://github.com/openframeworks/openFrameworks/issues/194","assignee":null,"title":"ofGetAppPtr documentation is wrong ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"closed_at":null,"created_at":"2010-05-25T14:54:52Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":205935,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:58:22Z","body":"http://www.glfw.org/release-2.6.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/193","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":193,"html_url":"https://github.com/openframeworks/openFrameworks/issues/193","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"look at glfw - just got updated","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-05-23T21:04:25Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":204247,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T19:20:16Z","body":"I had the L.A.S.E.R. tag software up and running great on my new MacBook Pro but recently my computer did a software update and now something is wrong and I can't properly use the program. I have snow leopard 10.6.3 OS. I'm not totally sure if it was the auto update that caused the issue but it seems like it stopped working after the update. Below I listed the suspected updates. Seems weird to me 2 digital camera RAW updates.\r\n\r\n3/27/10 Digital Camera RAW update 2.7\r\n3/27/10 Safari 4.0.5\r\n3/27/10 Digital Camera RAW update 3.1\r\n3/27/10 iMovie update 8.0.6\r\n\r\n0 com.apple.QuickTime \t0x9408e179 QTMLGrabMutex + 18\r\n1 com.apple.QuickTime \t0x9421b6a3 QTWorkContextCopyForMediaContextID + 28\r\n2 ...uickTimeStreaming.component\t0x14f77c15 HTTPDhlr_CheckForFatalError + 254\r\n3 ...uickTimeStreaming.component\t0x14f77cc6 HTTPDhlr_ReadSYNC + 165\r\n4 ...uickTimeStreaming.component\t0x14f7ab01 HTTPDataHandler_ScheduleData64 + 452\r\n5 ...ple.CoreServices.CarbonCore\t0x949a2d05 callComponentStorage_4444444 + 63\r\n6 ...ple.CoreServices.CarbonCore\t0x949976f0 CallComponentFunctionCommonWithStorage(char**, ComponentParameters*, long (*)(), unsigned long) + 54\r\n7 ...uickTimeStreaming.component\t0x14f784c7 HTTPDataHandler_ComponentDispatch + 110\r\n8 ...ple.CoreServices.CarbonCore\t0x9498fd87 CallComponentDispatch + 29\r\n9 com.apple.QuickTime \t0x94093540 DataHScheduleData64 + 73\r\n10 com.apple.QuickTime \t0x940b5704 NewMovieFromDataRefPriv_priv + 8296\r\n11 com.apple.QuickTime \t0x9419e613 NewMovieFromDataRef_priv + 54\r\n12 com.apple.QuickTime \t0x942fb95e NewMovieFromDataRef + 52\r\n13 com.yourcompany.openFrameworks\t0x0000aa2a createMovieFromURL(std::string, MovieType**&) + 112\r\n14 com.yourcompany.openFrameworks\t0x0000abe2 ofVideoPlayer::loadMovie(std::string) + 182\r\n15 com.yourcompany.openFrameworks\t0x0002fe03 appController::setup() + 2169\r\n16 com.yourcompany.openFrameworks\t0x00002864 ofRunApp(ofSimpleApp*) + 170\r\n17 com.yourcompany.openFrameworks\t0x0003dc06 main + 90\r\n18 com.yourcompany.openFrameworks\t0x00001da2 _start + 216\r\n19 com.yourcompany.openFrameworks\t0x00001cc9 start + 41","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/182","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":182,"html_url":"https://github.com/openframeworks/openFrameworks/issues/182","assignee":null,"title":"ofVideoPlayer - createMovieFromURL broken in 10.6.3 with specific updates?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-04-15T16:20:25Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":172424,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2010-04-14T15:48:19Z","body":"can we add moments to the blob. \n\nadd CvMoments moments to blob class\n\nand in ofxCvContourFinder.cpp line 119\n\n\t blobs[i].moments.m00 = myMoments->m00;\n\t\tblobs[i].moments.m10 = myMoments->m10;\n\t\tblobs[i].moments.m01 = myMoments->m01;\n\t\tblobs[i].moments.m20 = myMoments->m20;\n\t\tblobs[i].moments.m11 = myMoments->m11;\n\t\tblobs[i].moments.m02 = myMoments->m02;\n\t\tblobs[i].moments.m30 = myMoments->m30;\n\t\tblobs[i].moments.m21 = myMoments->m21;\n\t\tblobs[i].moments.m12 = myMoments->m12;\n\t\tblobs[i].moments.m03 = myMoments->m03;\n\t\t\n\t\tblobs[i].moments.mu20 = myMoments->mu20;\n\t\tblobs[i].moments.mu11 = myMoments->mu11;\n\t\tblobs[i].moments.mu02 = myMoments->mu02;\n\t\tblobs[i].moments.mu30 = myMoments->mu30;\n\t\tblobs[i].moments.mu21 = myMoments->mu21;\n\t\tblobs[i].moments.mu12 = myMoments->mu12;\n\t\tblobs[i].moments.mu03 = myMoments->mu03;\n\n\nthis is good for finding the angle and other info about the contour.\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/181","comments":2,"milestone":null,"number":181,"html_url":"https://github.com/openframeworks/openFrameworks/issues/181","assignee":null,"title":"ofxCvBlobs","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2010-04-14T15:42:22Z","state":"open","user":{"url":"https://api.github.com/users/vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","id":149997},"id":171615,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-29T15:04:04Z","body":"Buffer is 512 but should be 276 ( or something )\r\nSetting it to 256 says the buffer size should be 176 ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/178","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":178,"html_url":"https://github.com/openframeworks/openFrameworks/issues/178","assignee":null,"title":"iPhone sound bug with 1st gen ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-04-11T10:18:58Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":169176,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T19:18:14Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/175","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":175,"html_url":"https://github.com/openframeworks/openFrameworks/issues/175","assignee":null,"title":"bring examples up to date - make sexy","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"}],"closed_at":null,"created_at":"2010-04-06T19:44:04Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166214,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-02T19:14:03Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/174","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":174,"html_url":"https://github.com/openframeworks/openFrameworks/issues/174","assignee":null,"title":"vertical sync on for mac by default","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-04-06T19:43:21Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166212,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:58:10Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/173","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":173,"html_url":"https://github.com/openframeworks/openFrameworks/issues/173","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"ofAlphaBlending default on","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2010-04-06T19:42:34Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166211,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:57:50Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/172","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":172,"html_url":"https://github.com/openframeworks/openFrameworks/issues/172","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"rgb + alpha -> blit to texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-04-06T19:40:28Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166209,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:57:36Z","body":"","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/171","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":171,"html_url":"https://github.com/openframeworks/openFrameworks/issues/171","assignee":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"title":"sexy shader example","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"}],"closed_at":null,"created_at":"2010-04-06T19:38:51Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":166208,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-03-03T19:40:33Z","body":"can we do it?\r\nwe need cross platform:\r\nplayback \r\nstreaming\r\npitch\r\npan \r\nmultiplay \r\n\r\nfor us to be compatible with what exists. \r\nOpenAL seems like the best choice.\r\nWhat other options are there?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/167","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/8","number":8,"title":"0080 Release","due_on":"2013-01-01T08:00:00Z","closed_issues":0,"open_issues":3,"created_at":"2012-02-25T01:34:28Z","state":"open","description":"","id":88731},"number":167,"html_url":"https://github.com/openframeworks/openFrameworks/issues/167","assignee":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"title":"replace fmod","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2010-04-06T12:13:31Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":165898,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:56:41Z","body":"i have this working for 3d with selection buffer although it's meant to be slow i haven't had any problems","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/160","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":160,"html_url":"https://github.com/openframeworks/openFrameworks/issues/160","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"ofIsUnderMouse?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2010-04-05T21:39:19Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"id":165537,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2011-12-05T21:54:57Z","body":"Theo: I have this code uses the selection buffer. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/153","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","closed_issues":21,"open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":153,"html_url":"https://github.com/openframeworks/openFrameworks/issues/153","assignee":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"title":"ofIsOnScreen - ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2010-04-05T18:49:10Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":165409,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=14 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4930'), ('content-length', '13008'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"a63cf45ee23c003caf863065072ec4bb"'), ('date', 'Tue, 29 May 2012 19:27:23 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-02-29T11:13:10Z","body":"check out - http://www.openframeworks.cc/forum/viewtopic.php?p=19169#p19169\r\npossible integration into core. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/140","comments":4,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":140,"html_url":"https://github.com/openframeworks/openFrameworks/issues/140","assignee":null,"title":"texture compression and mipmaps for of texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-04-02T19:43:00Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":163959,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-12T16:15:52Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=10&t=3319","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/128","comments":4,"milestone":null,"number":128,"html_url":"https://github.com/openframeworks/openFrameworks/issues/128","assignee":null,"title":"ofxTCPServer doesn't manage connected clients correcly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2010-02-14T09:40:13Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"arturoc","id":48240},"id":132671,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T12:31:57Z","body":"Something that easily converts vector direction to openGL degrees?\r\nI find myself constantly trying to guess 270 - atan2(y, x)*RAD_TO_DEG ..... etc\r\nTo rotate something along a vector. \r\n\r\nMight be good to have it be aware of the GL world orientation - or have it so you pass in the up \r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/126","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":126,"html_url":"https://github.com/openframeworks/openFrameworks/issues/126","assignee":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"title":"ofATan2GL / ofVecToGL ?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-02-13T14:22:51Z","state":"open","user":{"url":"https://api.github.com/users/openframeworks","gravatar_id":"a858611b044a8302ab14cfe752e17369","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"openframeworks","id":142866},"id":132377,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-22T15:51:57Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=7&t=3299&p=17852#p17852","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/124","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/6","number":6,"title":"0073 Release","closed_issues":0,"due_on":"2012-07-30T07:00:00Z","open_issues":5,"created_at":"2011-12-03T15:37:49Z","state":"open","description":"","id":62090},"number":124,"html_url":"https://github.com/openframeworks/openFrameworks/issues/124","assignee":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"title":"TTF type rendering in OF - fix fuzziness ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography","color":"DDDDDD"}],"closed_at":null,"created_at":"2010-02-13T14:15:25Z","state":"open","user":{"url":"https://api.github.com/users/openframeworks","gravatar_id":"a858611b044a8302ab14cfe752e17369","avatar_url":"https://secure.gravatar.com/avatar/a858611b044a8302ab14cfe752e17369?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"openframeworks","id":142866},"id":132373,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T12:30:14Z","body":"http://www.openframeworks.cc/forum/viewtopic.php?f=8&t=1374","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/121","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":121,"html_url":"https://github.com/openframeworks/openFrameworks/issues/121","assignee":null,"title":"video: loop is not working unless you call play first","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"closed_at":null,"created_at":"2010-02-10T23:16:23Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"arturoc","id":48240},"id":130269,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T12:30:49Z","body":"it would make sense to have an opengl stress test app, that can test some basic about wether or not someone has ARB support, how fast their systems are, etc. I can imagine that for 0.07, we'll be helping people debug shaders and FBOs, having some way to gauge what kind of system they are on and what it can take, will be helpful. \r\n\r\nHere's a simple test app from the Lua-AV folks that looks like a reasonable system: \r\n\r\nhttp://img191.imageshack.us/img191/1659/picture3po.png","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/115","comments":0,"milestone":null,"number":115,"html_url":"https://github.com/openframeworks/openFrameworks/issues/115","assignee":null,"title":"opengl stress test example","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2010-01-12T02:56:21Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":111018,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-28T14:02:04Z","body":"at the moment, we've got it like:\r\n\r\nofAppGlutWindow::ofAppGlutWindow(){\r\n\tfps\t\t\t\t= 60.0; //give a realistic starting value - win32 issues\r\n\tbFrameRateSet\t\t= false;\r\n}\r\n\r\nbut I personally prefer all apps to start with some kind of similar frame rate (ie, examples running really fast on mac, etc). see for example: \r\n\r\nhttp://www.openframeworks.cc/forum/viewtopic.php?p=16520&#p16520\r\n\r\nthis kind of thing leads to less \"cross-platform-ness\" and more confusion from beginners, no? \r\n\r\n- z\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/107","comments":8,"milestone":null,"number":107,"html_url":"https://github.com/openframeworks/openFrameworks/issues/107","assignee":null,"title":"should we start all OF apps with a frame rate set?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2009-12-31T15:10:45Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":104702,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2011-09-27T15:47:45Z","body":"videoGrabber and serial listDevices should return a vector of strings apart from printing to console","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/91","comments":4,"milestone":null,"number":91,"html_url":"https://github.com/openframeworks/openFrameworks/issues/91","assignee":null,"title":"listDevices should return a list of strings","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2009-12-09T17:11:40Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"arturoc","id":48240},"id":94898,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + diff --git a/lib/github/tests/ReplayData/PaginatedList.testSliceIndexingUntilFourthPage.txt b/lib/github/tests/ReplayData/PaginatedList.testSliceIndexingUntilFourthPage.txt new file mode 100644 index 0000000000..46829dfdc0 --- /dev/null +++ b/lib/github/tests/ReplayData/PaginatedList.testSliceIndexingUntilFourthPage.txt @@ -0,0 +1,44 @@ +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4927'), ('content-length', '52085'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last"'), ('etag', '"5e8867ffb4e7630e852b2b231f3b9cdb"'), ('date', 'Tue, 29 May 2012 19:36:57 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-27T18:11:17Z","body":"Since more and more of the OF Core now relies on Poco (ie ofThread, etc) does OF_USING_POCO make sense anymore?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1280","comments":0,"milestone":null,"number":1280,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1280","assignee":null,"title":"deprecate OF_USING_POCO?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-27T18:03:23Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"danomatika","id":480637},"id":4772349,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-28T08:08:24Z","body":"There occurs a weir glitch when compiling the ofShader example with my HD Graphics 3000 (288 Mb) (Mac osx 10.7.4 - Mac Mini - i5 - 2.3Ghz)\n\nI was able to get rid of the glitch by replacing \"gl_FragColor = gl_Color;\" with \"gl_FragColor = 255.0;\" or any other number.\nAnybody knows a reason for the glitch / proper solution?\n\nScreenshot: http://goo.gl/Xdf74\nOpenGL capacities on different graphic cards on apple machines: http://goo.gl/FGQ2N","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1279","comments":2,"milestone":null,"number":1279,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1279","assignee":null,"title":"ofShader example with HD Graphics 3000 issue","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-26T19:27:56Z","state":"open","user":{"url":"https://api.github.com/users/subtiv","gravatar_id":"837cfe96365c031130a46311eb11d86a","avatar_url":"https://secure.gravatar.com/avatar/837cfe96365c031130a46311eb11d86a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"subtiv","id":1012684},"id":4767675,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-25T18:39:02Z","body":"produces an error on app exit or tex destruction.\n\n OF: OF_LOG_ERROR: trying to delete a non indexed texture, something weird is happening. Deleting anyway\n\nThis is because retain(int id) is a static function in ofTexture.cpp. So we can't retain the depthStencilTexture.\n\nThis suggest we should move the texture allocation of the depth / stencil texture to ofTexture - something which is not possible at the moment. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1277","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1277,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1277","assignee":null,"title":"ofFbo can't retain depthStencil Texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-05-25T18:37:46Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":4758608,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-22T21:26:57Z","body":"\nthe offending line is: \n\nif( speed.getValue() != preSpeed ){\n\nwhich is evaluating as true even through the slider is not touched (float equality test, etc). \n\nif we alter it to something like: \n\nif( fabs(speed.getValue() - preSpeed) > 0.0001 ){\n\nthe code runs fine. probably nicer to add a \"value changed()\" functionality to the slider object though or use EPSILON, etc. \n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1271","comments":0,"milestone":null,"number":1271,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1271","assignee":null,"title":"periodic signal example doesn't run well on windows / cb (float equality error)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-05-22T21:26:57Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":4700182,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-22T16:41:21Z","body":"There's some error that appears on linux systems running the project generator to make VS examples, where the debug and release libs for opencv get added badly to the vs project: \n\n\t%(AdditionalDependencies);opencv_highgui231d.lib;opencv_calib3d231.lib;opencv_imgproc231d.lib;opencv_haartraining_engined.lib;opencv_gpu231d.lib;opencv_flann231.lib;opencv_contrib231d.lib;opencv_video231d.lib;opencv_objdetect231d.lib;zlib.lib;opencv_core231d.lib;opencv_contrib231.lib;opencv_ml231d.lib;opencv_features2d231.lib;opencv_core231.lib;opencv_gpu231.lib;opencv_legacy231d.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_ml231.lib;opencv_imgproc231.lib;opencv_objdetect231.lib;opencv_legacy231.lib;opencv_video231.lib\n\t\t\t\t%(AdditionalLibraryDirectories);..\\..\\..\\addons\\ofxOpenCv\\libs\\opencv\\lib\\vs2010\n\nthis doesn't seem to be the case on osx or windows, which produces correct results: \n\n\t%(AdditionalDependencies);opencv_calib3d231.lib;opencv_contrib231.lib;opencv_core231.lib;opencv_features2d231.lib;opencv_flann231.lib;opencv_gpu231.lib;opencv_haartraining_engine.lib;opencv_highgui231.lib;opencv_imgproc231.lib;opencv_legacy231.lib;opencv_ml231.lib;opencv_objdetect231.lib;opencv_video231.lib;zlib.lib\n\nwould be good to look at the logic of \"visualStudioProject::addAddon()\" and see if we can fix this.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1268","comments":9,"milestone":null,"number":1268,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1268","assignee":null,"title":"project generator - bad libs for VS / opencv examples","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/visual+studio","name":"visual studio","color":"ba4eba"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/linux","name":"linux","color":"27607f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-05-20T21:50:24Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofZach","id":142897},"id":4662873,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T00:43:37Z","body":"I woud love some eyes on ofFbo would be great to get it cleaned up and standardized for 0072. \nRight now there are a ton of #ifdefs and some very hard to follow logic, which makes bug fixing quite difficult especially on OPENGL_ES\n\nsee: https://gist.github.com/2711815\n\n@elliotwoods @arturoc @memotv @damiannz @ofZach @kylemcdonald \n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1263","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1263,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1263","assignee":null,"title":"ofFbo.cpp is a huge mess! ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-16T16:27:30Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ofTheo","id":144000},"id":4608132,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T14:29:02Z","body":"I added a .mailmap file to the repo to correctly collate all the contributors in spite of changing nick names/email addresses. This is useful when trying to identify contributors for a changelog or similar, or when using the git logging functions like shortlog.\n\nSee the before/after situation here: https://gist.github.com/2710366\n\nI have respected privacy and only used those real names that people have already given in a git ID in the repo. Mainly this addition only associates the different email addresses to one user. @arturoc wins the prize of most used emails! :-)\nThe list is pretty complete, I only had difficulties to associate some IDs to the correct Zachs, since it was not clear for some if @ofZach or @stfj (Zach Gage) was the contributor. Those were left as-is.\n\nIf anybody has objections to their various email being united under their name, please say so and I will correct/remove the relevant entries.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1262","comments":2,"milestone":null,"number":1262,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1262","assignee":null,"title":"Add .mailmap for contributor collation","labels":[],"closed_at":null,"created_at":"2012-05-16T13:44:32Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"id":4604661,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1262.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1262","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1262.patch"}},{"updated_at":"2012-05-16T09:35:31Z","body":"Address #375.\n\nAdd setVolumef(float). Also more clearly define volume ranges (int is 0..255, float is 0..1) and more robust clamping of volume argument.\n\nThis has not been tested on Linux or Windows.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1260","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1260,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1260","assignee":null,"title":"allow float volume on ofVideoPlayer","labels":[],"closed_at":null,"created_at":"2012-05-15T17:50:22Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"damiannz","id":144366},"id":4588997,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1260.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1260","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1260.patch"}},{"updated_at":"2012-05-21T07:31:47Z","body":"This was originally posted @\"biginners\".\n\nhttp://forum.openframeworks.cc/index.php/topic,9527.msg44049.html#msg44049\n\nJoshua noble suggested me to file it as a bug on jithub\n\n\n/////////////////original messages\n\nHello.\n\nI have question about ofShortPixels and ofShortColor.\n\nIf you execute the code below , it'll draw at half way screen height even though I did set aDot at (0. screen height / 4)\n\nAnd another weird thing is it draws 20 pixels instead of 10 pixels which I set for loop for 10 times.\n\nIt only draws correctly with ofPixels and ofColor.\n\nIt doesn't work with ofFloatPixels and ofFloatColor.\n\nPlease help me out.\n\nI need to have RGB value over 255 so I can check if those values are over 255.\n\nThanks in advanced\n\nJin\n\n\n.h file\nCode:\nview plaincopy to clipboardprint?\n\n #pragma once \n #include \"ofMain.h\" \n \n class Dot { \n public: \n ofVec2f location; \n \n Dot(){ \n location.set(0,0); \n } \n \n ~Dot(){} \n }; \n \n class testApp : public ofBaseApp{ \n public: \n void setup(); \n void update(); \n void draw(); \n \n int w,h; \n \n ofTexture particleTexture; \n ofShortPixels * rgbPixels; \n \n ofShortColor& paint(ofShortColor &); \n \n Dot aDot; \n \n \n }; \n\n\n.cpp file\nCode:\nview plaincopy to clipboardprint?\n\n #include \"testApp.h\" \n //-------------------------------------------------------------- \n void testApp::setup(){ \n ofSetFrameRate(30); \n ofSetBackgroundAuto(TRUE); \n ofBackground(0, 0, 0); \n w = ofGetWidth(); \n h = ofGetHeight(); \n \n particleTexture.allocate(w,h,GL_RGB); \n rgbPixels = new ofShortPixels; \n rgbPixels->allocate(w, h, 3); \n aDot.location.set(0, h/4); \n } \n \n //-------------------------------------------------------------- \n void testApp::update(){ \n ofShortColor pixelColor; \n ofShortColor newPixelColor; \n for(int i = 0; i<10; i++){ \n pixelColor = rgbPixels->getColor(aDot.location.x+i, aDot.location.y); \n \n newPixelColor = paint(pixelColor); \n \n rgbPixels->setColor(aDot.location.x+i, aDot.location.y,newPixelColor); \n \n } \n particleTexture.loadData(* rgbPixels); \n } \n \n //-------------------------------------------------------------- \n void testApp::draw(){ \n particleTexture.draw(0, 0, w, h); \n } \n \n ofShortColor & testApp::paint(ofShortColor & _c){ \n \n _c.r += 10; \n _c.g += 2; \n _c.b += 3; \n \n _c.set(_c.r, _c.g, _c.b); \n _c.clamp(); \n \n return _c; \n } ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1257","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1257,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1257","assignee":null,"title":"ofShortPixels doesn't draw pixels correctly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-14T05:46:14Z","state":"open","user":{"url":"https://api.github.com/users/gazaebal","gravatar_id":"f9d7811bb6318fedf7e9f2fe8bfece32","avatar_url":"https://secure.gravatar.com/avatar/f9d7811bb6318fedf7e9f2fe8bfece32?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"gazaebal","id":1736190},"id":4557803,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-17T21:42:08Z","body":"if i'm not mistaken, the correct way of using ofMatrix4x4 in oF is `glMultMatrixf(myMatrix.getPtr())` or `glLoadMatrixf`.\nThis seems a bit uncomfortable for me.\n\nsome candidates are:\n\n```c++\nofPushMatrix(const ofMatrix4x4 &); //needs alternatives as you might not want to push at the time\nofLoadMatrix(const ofMatrix4x4 &);\nofMultMatrix(const ofMatrix4x4 &);\n\nofMatrix4x4::apply();\nofMatrix4x4::glLoadMatrix(matrixMode = OF_MATRIX_MODE_CURRENT);\n```\n\n\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1256","comments":5,"milestone":null,"number":1256,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1256","assignee":null,"title":"Feature ofPushMatrix(const ofMatrix4x4 &)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-13T18:20:29Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4554058,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-11T21:24:20Z","body":"\tunsigned char faceSize = 3;\n\tif(data.getNumIndices()){\n\t\tos << \"element face \" << data.getNumIndices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t} else if(data.getMode() == OF_PRIMITIVE_TRIANGLES) {\n\t\tos << \"element face \" << data.getNumVertices() / faceSize << endl;\n\t\tos << \"property list uchar int vertex_indices\" << endl;\n\t}\n\nThe facesize is being set as static as 3, but this results in strange exports...things open OK in Meshlab, but exporting to other programs with no faces seems like it won't work","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1252","comments":6,"milestone":null,"number":1252,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1252","assignee":null,"title":"0071 ply (mesh.save()) Point export is broken","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-05-11T19:45:53Z","state":"open","user":{"url":"https://api.github.com/users/laserpilot","gravatar_id":"07001341fe6c156dddd5b9d06d828cba","avatar_url":"https://secure.gravatar.com/avatar/07001341fe6c156dddd5b9d06d828cba?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"laserpilot","id":1041023},"id":4539985,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:33:31Z","body":"couple of minor bugfixes (absolute path wasn't being detected on second if [absolute] for windows paths)\r\nfixes unixy paths no matter what on windows","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1251","comments":8,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1251,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1251","assignee":null,"title":"Bugfix of to data path","labels":[],"closed_at":null,"created_at":"2012-05-10T06:44:20Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4507572,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1251.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1251","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1251.patch"}},{"updated_at":"2012-05-16T09:43:23Z","body":":(\r\n\r\nIt seems i'm getting double 'data/' in my paths\r\nafter a little tracking down, i found this is because ofSystemLoadDialog changes the current working directory\r\n\r\nso we could try and either fix that by popping the folder after the dialog, \r\nof for windows using something like ```GetModuleFileName``` to get the path of the current exe rather than using the current working directory\r\n\r\nI can't seem to run GetModuleFileName from ofUtils.cpp even though windows.h is included in ofConstants.h (included in ofUtils.h)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1250","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"title":"0072 Release","closed_issues":21,"due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1250,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1250","assignee":null,"title":"bug: ofToDataPath broken again","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-05-10T06:35:24Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"elliotwoods","id":328294},"id":4507492,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:42:44Z","body":"'ofx TCPClient :: receiveRaw' was found in the proble.\n\nOriginal :\n\n\tint ofxTCPClient::receiveRawBytes(char * receiveBuffer, int numBytes){\n\t\t\t messageSize = TCPClient.Receive(receiveBuffer, numBytes);\t\n\t\t\t if(messageSize==0){\t\t\n\t\t\t\t\t\tclose();\t\n\t\t\t }\t\n\t\t\t return messageSize;\n\t}\n\nBut 'TCPClient.Receive (receiveBuffer, numBytes)' from '-1' may return\n\nI was modified\n\n\tstring ofxTCPClient::receiveRaw(){\n\t\t\t messageSize = TCPClient.Receive(tmpBuff, TCP_MAX_MSG_SIZE);\n\t\t\t if(messageSize==0){\n\t\t\t\t\t\tclose();\n\t\t\t }\n\t\t\t //TCPClient.Receive is return -1....\n\t\t\t else if(messageSize < 0){ \n\t\t\t\t\t\ttmpBuff[0] = 0;\n\t\t\t }\n\t\t\t else if(messageSize; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"cf9ec647fbc78faae05cb2d11598f79c"'), ('date', 'Tue, 29 May 2012 20:01:47 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-04-30T19:43:55Z","body":"On 'update', PG should respect existing custom include paths, source files, linker flags and project options (such as optimization settings).\r\n\r\nOR\r\n\r\nXcode project should read and respect `OTHER_LDFLAGS` and `HEADER_SEARCH_PATHS`, and add `OTHER_CFLAGS` from Project.xcconfig; projectGenerator should leave these settings alone unless it figures out they need to be adjusted (this is probably going to be difficult).","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1217","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1217,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1217","assignee":null,"title":"projectGenerator update doesn't respect existing project settings","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-04-24T21:03:44Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4269431,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-02T10:19:07Z","body":"Since I don't want to derail #484 further, this issue deals with the implementation of a deprecation mechanism.\r\nBased on [this](http://stackoverflow.com/questions/295120/c-mark-as-deprecated), I made an OFDEPRECATED preproc macro.\r\n\r\nQUESTION: How do I correctly #ifdef for MacOS/XCode4/llvm?\r\n\r\nCould people test this on different platforms? On linux this works. \r\n\r\n\t\ttestApp.h:\r\n\r\n\t\t#pragma once\r\n\r\n\t\t#ifdef __GNUC__\r\n\t\t// maybe __clang__ for checking against llvm/xcode4?\r\n\t\t#define OFDEPRECATED(message, func) func __attribute__ ((deprecated(message)))\r\n\t\t#elif defined(_MSC_VER)\r\n\t\t#define OFDEPRECATED(message, func) __declspec(deprecated(message)) func\r\n\t\t#else\r\n\t\t#pragma message(\"WARNING: You need to implement DEPRECATED for this compiler\")\r\n\t\t#define OFDEPRECATED(message, func) func\r\n\t\t#endif\r\n\r\n\t\tand \r\n\r\n\t\t\t\tvoid dragEvent(ofDragInfo dragInfo);\r\n\t\t\t\tvoid gotMessage(ofMessage msg);\r\n\t\t\r\n\t\t\t\tOFDEPRECATED(\"This is an old function, don't use!\", void deprecatedFunction(void));\r\n\t\t\t\tOFDEPRECATED(\"Obsolete type, use T2!\", typedef int T1);\r\n\t\t\t\ttypedef int T2;\r\n\t\t\t\tOFDEPRECATED(\"This is an old variable, don't use!\", int oldvar3);\r\n\t\t\t\t//This breaks a bit cause it's used in the constructor of testApp, so always triggers.\r\n\r\n\t\t};\r\n\t\tOFDEPRECATED(\"old class!\", class oldClass {\r\n\t\t\tpublic:\r\n\t\t\t\toldClass();\r\n\t\t\t\tvirtual ~oldClass();\r\n\t\t});\r\n\r\n\t\ttestApp.cpp:\r\n\r\n\t\tvoid testApp::setup(){\r\n\t\t\tOFDEPRECATED(\"old string. Don't use\", string oldstring);\r\n\t\t\t// Uncomment these to trigger deprecation warnings\r\n\t\t//\tdeprecatedFunction();\r\n\t\t//\tT1 t1object = 5;\r\n\t\t//\toldstring = \"bla\";\r\n\t\t//\toldvar3=5;\r\n\t\t//\toldClass bla;\r\n\t\t}\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1216","comments":11,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1216,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1216","assignee":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"Implement deprecation mechanism","labels":[],"closed_at":null,"created_at":"2012-04-24T21:03:39Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4269429,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-30T19:43:14Z","body":"When using PG's 'update' functionality on apps are in paths with non-standard depths (in my case, `oF/apps/dir/subdir/subsubdir`) the OF_PATH and #include directives in the resulting Project.xcconfig don't match, which means oF projects won't compile:\r\n\r\n~~~~\r\n//THE PATH TO THE ROOT OF OUR OF PATH RELATIVE TO THIS PROJECT.\r\n//THIS NEEDS TO BE DEFINED BEFORE CoreOF.xcconfig IS INCLUDED\r\nOF_PATH = ../../../..\r\n\r\n//THIS HAS ALL THE HEADER AND LIBS FOR OF CORE\r\n#include \"../../../../../libs/openFrameworksCompiled/project/osx/CoreOF.xcconfig\"\r\n~~~~\r\n\r\nNote extra `../` in the `#include` path.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1215","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1215,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1215","assignee":null,"title":"projectGenerator sets incorrect path in Project.xcconfig","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-04-24T20:59:57Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4269359,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-22T23:56:33Z","body":"i'm teaching a workshop right now and i feel like it's ridiculous that i need to explain pointers just to access video :)\r\n\r\nlet's add this!","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1202","comments":3,"milestone":null,"number":1202,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1202","assignee":null,"title":"ofVideoPlayer etc needs ofColor access","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-22T18:42:58Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4231092,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-29T17:34:24Z","body":"DO NOT PULL YET!\r\n\r\nHey all\r\n\r\nHere's the 'off-axis camera' setup we worked on at ScreenLab last weekend.\r\nIt allows you to:\r\n\r\n* Set lens offset on a camera\r\n* Calculate the camera parameters based on a 'view portal' defined by 3 points (top left, bottom left, bottom right)\r\n\r\nCurrently the changes involve editing ofBaseRenderer (and therefore all other renderers) to support lensOffset parameter (default 0,0). We could remove this since ofCamera doesn't actually use ofSetupScreenPerspective\r\n\r\nSo let's have a quick chat about what needs chaning to make this core friendly and then probably pull after 0071 release?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1201","comments":9,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1201,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1201","assignee":null,"title":"Feature provocation pull request: ofCamera lens offset","labels":[],"closed_at":null,"created_at":"2012-04-22T15:55:29Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4230131,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1201.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1201","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1201.patch"}},{"updated_at":"2012-05-14T01:22:17Z","body":"I'm investigating the way to draw bezier curves / nurbs etc. with shaders, here is a list a links and information I found that can improve render times with OF. Any way I must admit I'm new to openGL & shaders so maybe someone can take this to implement maybe an add-on or maybe to added to the core.\r\n\r\n**Resolution Independent Curve Rendering using Programmable Graphics Hardware**\r\nhttp://research.microsoft.com/en-us/um/people/cloop/loopblinn05.pdf\r\n\r\n**Resolution independent GPU accelerated Curve & Font rendering**\r\n**GPU based Resolution Independent Font & Curve Rendering – initial Release**\r\nhttp://jausoft.com/blog/2011/04/01/resolution-independent-gpu-accelerated-curve-font-rendering/\r\nhttp://ramisantina.com/blog/?p=73\r\nhttp://vimeo.com/21810192\r\nhttp://jogamp.org/doc/gpunurbs2011/p70-santina.pdf\r\n\r\n**Curvy blues**\r\nhttp://www.mdk.org.pl/2007/10/27/curvy-blues\r\n\r\n**Vector drawing: OpenGL shaders and cairo & vector hardware tessellation**\r\nhttp://www.mdk.org.pl/2007/8/6/vector-drawing-opengl-shaders-and-cairo\r\n\r\n**ShivaVG & Random Access Rendering of Animated Vector Graphics**\r\nhttp://ivanleben.blogspot.com.es/2007/07/shivavg-open-source-ansi-c-openvg.html\r\nhttp://www.youtube.com/watch?v=mD8X-e5-sY4\r\nhttp://www.youtube.com/watch?v=U4USCfwORUg\r\nhttp://andrejas-atelier.com/ivan/IvanLebenHonsThesis.pdf\r\n\r\n**RAVG**\r\nhttp://research.microsoft.com/en-us/um/people/hoppe/proj/ravg/\r\n\r\n**NV Path Rendering Videos (seams only with nvidia)**\r\nhttp://developer.nvidia.com/nv-path-rendering-videos\r\n\r\n**Vector drawing: OpenGL polygon tessellation**\r\nhttp://www.mdk.org.pl/2007/8/16/vector-drawing-opengl-polygon-tessellation\r\nhttp://zrusin.blogspot.com.es/2006/07/hardware-accelerated-polygon-rendering.html\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1190","comments":8,"milestone":null,"number":1190,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1190","assignee":null,"title":"Bezier Shaders & Vector openGL rendering","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-2D","name":"section-2D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-20T09:23:00Z","state":"open","user":{"url":"https://api.github.com/users/microbians","gravatar_id":"98c91e60903b83c0a022ee70cca9ca21","login":"microbians","id":1662136,"avatar_url":"https://secure.gravatar.com/avatar/98c91e60903b83c0a022ee70cca9ca21?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4207350,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:41:20Z","body":"ofSetCurveResolution is not changing the resolution using ofBezier nor ofBezierVertex (tested with ofScale is more easy to see the bug)\r\n\r\n ofFill();\r\n ofSetHexColor(0xFF9933);\r\n ofBeginShape();\r\n ofVertex(x0,y0);\r\n ofBezierVertex(x1,y1,x2,y2,x3,y3);\r\n ofEndShape();\r\n\r\nall works fine when using ofPath directly:\r\n\r\n ofPath curve;\r\n curve.setFillHexColor(0xFF000);\r\n curve.setCurveResolution(120);\r\n curve.moveTo(x0, y0);\r\n curve.bezierTo(x1,y1,x2,y2,x3,y3);\r\n curve.draw();\r\n\r\nmore: http://forum.openframeworks.cc/index.php/topic,9596.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1189","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1189,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1189","assignee":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"ofSetCurveResolution + ofBezierVertex bug","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-04-20T08:51:51Z","state":"open","user":{"url":"https://api.github.com/users/microbians","gravatar_id":"98c91e60903b83c0a022ee70cca9ca21","login":"microbians","id":1662136,"avatar_url":"https://secure.gravatar.com/avatar/98c91e60903b83c0a022ee70cca9ca21?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4206982,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-01T04:10:23Z","body":"If you set up an ofFbo as follows...\r\n\r\n```cpp\r\n ofFbo::Settings s;\r\n s.width = 400;\r\n s.height = 400;\r\n s.textureTarget = GL_TEXTURE_2D;\r\n s.useDepth = true;\r\n s.depthAsTexture = true;\r\n s.dethInternalFormat = GL_DEPTH_COMPONENT24;\r\n```\r\n\r\n...then the colour texture's dimensions are set to be the next POTs up but the depth texture's dimensions don't seem to be. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1186","comments":2,"milestone":null,"number":1186,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1186","assignee":null,"title":"ofFbo depthBufferTex can be inconsistent with colour texture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-18T15:08:32Z","state":"open","user":{"url":"https://api.github.com/users/neilmendoza","gravatar_id":"3e46b12547e7bac19eb982bc512b19c4","login":"neilmendoza","id":818571,"avatar_url":"https://secure.gravatar.com/avatar/3e46b12547e7bac19eb982bc512b19c4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4174070,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:44:27Z","body":"As mentioned here: http://forum.openframeworks.cc/index.php?topic=9107.0\r\nOpenGLES2 not working. It is always falls back to ES1. I tested it only on iPad2 with iOS 5.0.1.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1178","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1178,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1178","assignee":{"url":"https://api.github.com/users/julapy","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382,"avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"OpenGLES2 not working","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/iOS","name":"iOS","color":"2babad"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-04-16T11:19:36Z","state":"open","user":{"url":"https://api.github.com/users/erinnovations","gravatar_id":"29639bbeb3afdde8fb3c7e273e5e43c6","login":"erinnovations","id":253455,"avatar_url":"https://secure.gravatar.com/avatar/29639bbeb3afdde8fb3c7e273e5e43c6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4132608,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-14T13:45:55Z","body":"in ofTexture::loadData we are doing:\r\n\r\n\r\n\t//------------------------ likely, we are uploading continuous data\r\n\tGLint prevAlignment;\r\n\tglGetIntegerv(GL_UNPACK_ALIGNMENT, &prevAlignment);\r\n\tglPixelStorei(GL_UNPACK_ALIGNMENT, 1);\r\n\r\nany reason for this? leaving the default works too. i've been working with a huge video and the transfer rates on some cards were super slow with ofTexture::loadData. even glDrawPixels was faster, i've finally used pbo's but later looking at ofTexture discovered this lines and i suspect that it could be the reason for loadData being slower, haven't tested it yet though.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1175","comments":0,"milestone":null,"number":1175,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1175","assignee":null,"title":"GL_UNPACK_ALIGNMENT 1 in ofTexture","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-14T13:45:42Z","state":"open","user":{"url":"https://api.github.com/users/arturoc","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240,"avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4117762,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:39:22Z","body":"one returns the result (dot) the other performs in place (cross), i.e. overrides the contents\r\nThe two definitions are inconsistent\r\npropose rename `ofVec3f::dot` to become `ofVec3f::getDotted` in line with `ofVec3f::getCrossed`","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1174","comments":9,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1174,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1174","assignee":null,"title":"bug : inconsistent API for ofVec3f::dot and ofVec3f::cross","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-13T17:09:38Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4108582,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-14T04:20:36Z","body":"If you pass a string containing non-ascii characters to ofToHex(), the non-ascii characters (with character codes above 127) will be output as ffffxxxx (it depends on the exact character value and the size of the int type on the platform you are compiling for).\r\nThe problem is due to an incorrect cast in the ostringstream operation inside the loop.\r\nInstead of directly casting the (signed) char from the input character to an unsigned int, the input character must first be cast to an unsigned char.\r\nIn other words, instead of:\r\n``` out << setfill('0') << setw(2) << hex << (unsigned int) value[i];```\r\nit should be:\r\n``` out << setfill('0') << setw(2) << hex << (unsigned int) ((unsigned char)value[i]);```\r\nor maybe even:\r\n``` out << setfill('0') << setw(2) << hex << static_cast(static_cast(value[i]));```\r\nif you prefer C++ style casts over C style casts. :)\r\n\r\nHTH\r\n/Jesper","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1173","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1173,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1173","assignee":null,"title":"ofToHex(string) is wrong for non-ascii input","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-13T14:42:30Z","state":"open","user":{"url":"https://api.github.com/users/pappis","gravatar_id":"fbf3d56c96cf5b891056530066549692","login":"pappis","id":1640543,"avatar_url":"https://secure.gravatar.com/avatar/fbf3d56c96cf5b891056530066549692?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4104336,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-12T10:09:42Z","body":"if I call ofBeginSaveScreenAsPDF using ofEasyCam or the ofCamera, the pdf doesn't have the perspective of the camera. There's a parameter b3d to ofBeginSaveScreenAsPDF which I interpret to be \"render taking into account 3d transforms\", but it doesn't seem to have any effect.\r\n\r\nmore on the forum\r\n\r\nhttp://forum.openframeworks.cc/index.php/topic,9542.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1171","comments":0,"milestone":null,"number":1171,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1171","assignee":null,"title":"ofBeginSaveScreenAsPDF ignores 3d transformations","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-04-12T10:09:42Z","state":"open","user":{"url":"https://api.github.com/users/jesusgollonet","gravatar_id":"5008d5295e9bc2636313c7b50ed5981d","login":"jesusgollonet","id":31100,"avatar_url":"https://secure.gravatar.com/avatar/5008d5295e9bc2636313c7b50ed5981d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4081188,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-13T14:54:18Z","body":"if I have `ofEvent boolEvent` and i try to call `ofNotifyEvent( boolEvent, true )` i get a `no matching function` error as the compiler cannot coerce `true` to a `bool &`.\r\n\r\nto solve this, instead of this:\r\n\r\n~~~~\r\nofEvent boolEvent;\r\n...\r\nofNotifyEvent( boolEvent, true );\r\n~~~~\r\n\r\ni need to write this:\r\n\r\n~~~~\r\nofEvent boolEvent;\r\n...\r\nbool myBool = true;\r\nofNotifyEvent( boolEvent, myBool );\r\n~~~~\r\n\r\nthis is kind of annoying.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1167","comments":2,"milestone":null,"number":1167,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1167","assignee":null,"title":"ofNotifyEvent( boolEvent, true ) fails to compile","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-04-11T12:03:34Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4063456,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-11T13:21:33Z","body":"It's currently not possible to have an event without arguments\r\n\r\n`ofEvent testEvent;` -- fails to compile\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1166","comments":2,"milestone":null,"number":1166,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1166","assignee":null,"title":"ofEvent lacks simple, argument-free use case","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-04-11T12:00:19Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4063417,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-21T15:41:01Z","body":"It's currently not possible to write `ofLogError( \"serial\", \"error %i connecting to serial\", serialError )`. \r\n\r\nThere should be `ofLogError( string module, string format, ... )` methods as with normal ofLog.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1165","comments":6,"milestone":null,"number":1165,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1165","assignee":null,"title":"ofLogError, ofLogWarning lack format, ... args","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-04-11T11:56:33Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366,"avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4063366,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-10T16:47:19Z","body":"change `allocate(_w, _h, OF_IMAGE_COLOR);` to `allocate(_w, _h, OF_IMAGE_COLOR_ALPHA);` (via reza on irc)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1152","comments":4,"milestone":null,"number":1152,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1152","assignee":null,"title":"grabScreen in ofImage fails on Android","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-04-09T17:15:21Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4032047,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-29T14:46:40Z","body":"the module name is no longer printed if it's coming from OF itself.\r\n\r\ninstead of the constant name, a human-readable string is printed.\r\n\r\nexample output from project generator: http://pastebin.com/raw.php?i=0dp938Jx","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1151","comments":6,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1151,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1151","assignee":null,"title":"shorten + simplify ofLog output","labels":[],"closed_at":null,"created_at":"2012-04-08T21:13:14Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4023525,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1151.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1151","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1151.patch"}},{"updated_at":"2012-04-17T14:47:36Z","body":"\r\nWorking on the project generator, which has a fair amount of logging, I'm concerned about how much space we loose on each line: \r\n\r\n OF: OF_LOG_NOTICE:\r\n\r\nit's about 15-20 characters or so, pretty significant where each line is 80, so alot more wrapping happens then I'd like, making the results less cleaner or organized. \r\n\r\nI propose we alter \r\n\r\n string ofGetLogLevelName(ofLogLevel level){\r\n switch(level){\r\n case OF_LOG_VERBOSE:\r\n return \"OF_LOG_VERBOSE\";\r\n break;\r\n case OF_LOG_NOTICE:\r\n return \"OF_LOG_NOTICE\";\r\n break;\r\n case OF_LOG_WARNING:\r\n return \"OF_LOG_WARNING\";\r\n break;\r\n case OF_LOG_ERROR:\r\n return \"OF_LOG_ERROR\";\r\n break;\r\n case OF_LOG_FATAL_ERROR:\r\n return \"OF_LOG_FATAL_ERROR\";\r\n break;\r\n case OF_LOG_SILENT:\r\n return \"OF_LOG_SILENT\";\r\n break;\r\n default:\r\n return \"\";\r\n }\r\n }\r\n\r\nso that we can have something like : \r\n\r\n (of:notice) \r\n (of:verbose) \r\n (of:error) \r\n\r\nor something smaller and if we loose the all caps, maybe less threatening :)\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1150","comments":4,"milestone":null,"number":1150,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1150","assignee":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"propose shortening ofLog console message length","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-04-08T20:32:49Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897,"avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4023305,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-07T15:00:32Z","body":"Hey all\r\n\r\nA few sections of the repo need some love to put them in line with the project generator:\r\n\r\n1. Readme's\r\n2. Rogue old project generators\r\n3. Document complementing tools\r\n\r\n# Readme\r\n\r\nThe readme's in the root of the repo need some love\r\nnone of them mention project generator \r\n\r\ni feel like each should be a description of how to get to a working project generator on each of the respective platforms\r\n\r\nalso note:\r\n* .vs2010 is missing\r\n* readme.txt repeats information from the other readme's (i.e. it's a list of platform specific instructions)\r\ni think this should be perhaps a little description of oF and a few tips on how to get started\r\n\r\n# Rogue old 'project generators' / documenting complementary tools for project generator\r\n\r\nHere's things I can find in the repo which don't make sense to me at the moment:\r\n\r\n* `openFrameworks\\scripts\\????\\compileAllExamples.bat`\r\n** is this supposed to be run (optionally) after the project generator?\r\n** why is the project template within this folder?\r\n* `openFrameworks\\scripts\\????\\createProjects.py` \r\n** if this isn't supposed to be used anymore, lets delete it immediately (we can always recover in emergencies)\r\n\r\nand the 'other' folder in the root.. perhaps never took off?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1146","comments":0,"milestone":null,"number":1146,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1146","assignee":null,"title":"Document Project Generator / clean out old tools","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"}],"closed_at":null,"created_at":"2012-04-07T14:43:53Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294,"avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4015514,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-07T19:49:31Z","body":"When attempting to render a mesh to a PDF the ofCairoRender does not output a filled mesh, thus the PDF output looks empty. \r\n\r\nIf you open the file in illustrator you'll see the paths, there but with no stroke or fill. \r\n\r\nWhen I dug into the issue a bit further I realized that Cairo isn't capable of rendering shapes with per vertex colors easily...\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1145","comments":3,"milestone":null,"number":1145,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1145","assignee":null,"title":"ofCairoRenderer ofMesh doesn't render properly to PDF","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-04-06T22:02:01Z","state":"open","user":{"url":"https://api.github.com/users/rezaali","gravatar_id":"548374013b9c6e50ebbd2294e12d4f31","login":"rezaali","id":555207,"avatar_url":"https://secure.gravatar.com/avatar/548374013b9c6e50ebbd2294e12d4f31?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4010494,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-01T04:21:01Z","body":"When using the ofColor subtraction operator, negative results are clamped to positive values instead of 0. Values are circulating between 0 and 255, which could be useful for hue in HSV but in most cases (R, G, B..) is not what I would expect.\r\n\r\n ofColor a(10, 40, 80);\r\n ofColor b(20, 5, 30);\r\n ofColor c = (a-b); // I get: (246, 45, 50), I would expect: (0, 45, 50)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1144","comments":9,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1144,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1144","assignee":null,"title":"ofColor subtraction and negative values","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-04-06T07:56:44Z","state":"open","user":{"url":"https://api.github.com/users/jembezmamy","gravatar_id":"69a23dc9914cb6bc3202c50e15eabba0","login":"jembezmamy","id":720354,"avatar_url":"https://secure.gravatar.com/avatar/69a23dc9914cb6bc3202c50e15eabba0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4001148,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-04T12:07:24Z","body":"When using the dragEvent ofDragInfo I always get the following error message:\r\n\r\nwarning: Could not find object file \"/Users/theo/Documents/CODE/__OPENFRAMEWORKS/gitOF/openFrameworks/apps/devApps/macDragDropExample/buildGlutFrameworkHackedWindowLevel10.4/libForeground.a(macx_foreground.o)\" - no debug information available for \"/Users/mcast/Code/GLUT-ToPost/macx_foreground.m\".\r\n\r\nIt doesn't seem to hurt my code but is a bit annoying, especially early on when I wasn't sure if it had anything to do with compile failings. Not a big issue obviously, but it might confuse some other newbie's also.\r\n\r\n(OF 0.07 - Xcode 4.2.1 - OS X 10.7.3 - macbook pro) ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1138","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442,"avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1138,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1138","assignee":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"title":"benign error message","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2012-04-04T11:05:57Z","state":"open","user":{"url":"https://api.github.com/users/davideo71","gravatar_id":"42c3c1acbdb4a998d8096b49745219cd","login":"davideo71","id":1611385,"avatar_url":"https://secure.gravatar.com/avatar/42c3c1acbdb4a998d8096b49745219cd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3968742,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-03T17:37:10Z","body":"theo's #1133 made me think about ways that i use noise regularly that might also be abstracted.\r\n\r\ni would also like to see versions of noise that return multidimensional results. normally i do something like:\r\n\r\n\tofVec2 a(ofSignedNoise(t, 0), ofSignedNoise(0, t)); // 1D -> 2D\r\n\tofVec2 b(ofSignedNoise(x, 0), ofSignedNoise(0, y)); // 2D -> 2D\r\n\tofVec3 c(ofSignedNoise(t, 0, 0), ofSignedNoise(0, t, 0), ofSignedNoise(0, 0, t)); // 1D -> 3D\r\n\tofVec3 d(ofSignedNoise(x, 0, 0), ofSignedNoise(0, y, 0), ofSignedNoise(0, 0, (x + y) / 2)); // 2D -> 3D\r\n\r\nand it would be good to spend some time making sure these are really good ways of doing it, then implement them inside some functions like `ofSignedNoise2()` and `ofSignedNoise3()` (for example).","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1134","comments":2,"milestone":null,"number":1134,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1134","assignee":null,"title":"multidimensional noise output","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-04-01T16:44:55Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106,"avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3917377,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-01T17:48:12Z","body":"ie: the equivalent of doing \r\n\r\nfloat rate = 0.02 + ofNoise(ofGetElapsedTimeF() * 0.02, 100.0) * 0.015;\r\nfloat value = ofSignedNoise( rate, x, y ); \r\n\r\nas one function. \r\n\r\nalso see kyle's #1134 for other noise utils. \r\n\r\nI find myself needing this quite often for more natural random motion where the rate of change is variable. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1133","comments":0,"milestone":null,"number":1133,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1133","assignee":null,"title":"ofNoise and ofSignedNoise with 2nd order control for rate.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-04-01T15:45:11Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000,"avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":3917018,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=3 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4995'), ('content-length', '55518'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"99258d32bcb6ade5b1153c8155fc2466"'), ('date', 'Tue, 29 May 2012 20:01:48 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-04-02T02:05:52Z","body":"This is a feature discussion issue for what string features we should add to of.\r\nofZach mentioned some regexp ones from P5 match matchAll\r\nWould be great to get some eyes on this.\r\n\r\nOne approach would be a static class or namespace.\r\nThe idea would be we could include a variety of handy functions that would be useful for people not wanting to get into regexp\r\n\r\n\tofString::contains(str, \"apple\") //returns bool\r\n\tofString::starts(str, \"The\") //returns bool\r\n\tofString::ends(str, \".\") //returns bool\r\n\tofString::count(str, \"apples\") //count how many times apples appears in the \r\n\tofString::join(myVectorStr, \", \"); //this is currently ofJoinString\r\n\tofString::split(someText, \".\"); //this is currently ofSplitString\r\n\tofString::split(someHtml, \"<\", \">\"); //this is the same but returns a vector of things between the start and end delims\r\n\tofString::limit(someText, 200); //limit the text to 200 characters. optional arg to add ... to the end.\r\n\r\nQuestions:\r\n- Should we mirror P5 with match and matchAll or should we indicate that regexp is required? ie regexMatch regexMatchAll ?\r\n- Other string utils we could add?\r\n- Should it be ofStringUtils:: or ofString:: ?\r\n- Something to do a split and then return a vector of float int etc?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1132","comments":6,"milestone":null,"number":1132,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1132","assignee":null,"title":"ofStringUtils:: feature discussion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-31T17:52:48Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":3911629,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-27T17:40:30Z","body":"This is a feature discussion issue for what should be added / changed to ofTTF.\r\nWould be great to get some eyes on this from @vtron @ofzach @arturoc and anyone with thoughts on the matter.\r\n\r\nTextAreas:\r\n- Fit text to a box\r\n- Handle overflow ( ie either truncate or resize box height )\r\n- non ragged options\r\n- could textAreas work with both ofTTF and ofDrawBitmapString ? abstract text formatting?\r\n\r\nAlignment:\r\n- Left align a string\r\n- Right align\r\n- Center\r\n- Top align \r\n- Base align \r\n\r\nSpacing:\r\n- Kerning\r\n- Leading / line height\r\n\r\nLoading:\r\n- Allow for loading a font up to a max size for drawing at different sizes. \r\n- Allow for selection and loading of specific sizes within one object. ie: myFont.setCurrentSize(12); \r\n- Font family's / sets ? Bold, Italic etc? \r\n\r\nDrawing:\r\n- Allow for drawing font at different sizes. Scale font as needed. \r\n\r\nFormatting:\r\n- Could we somehow allow a string to have different colors, sizes. Right now it is a pain to change colors or sizes. \r\n- would this be replicating basic html or another approach? maybe better as an addon?\r\n\r\nInfo:\r\n- Ability to get the x and y position of the nth character in the string? useful maybe for cursor or selection?\r\n\r\n**Update:**\r\n-Underline\r\n-Render rect behind text ( a la what @kylemcdonald added to ofDrawBitmapString)\r\n-Scale type to fit a rect + keep aspect ratio\r\n-Crazy: text along a path :) ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1131","comments":25,"milestone":null,"number":1131,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1131","assignee":null,"title":"ofTTF feature discussion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-typography","name":"section-typography","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-31T17:36:25Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":3911537,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-31T14:44:01Z","body":"Agree on a common format for a header in the contributed example files.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1130","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1130,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1130","assignee":null,"title":"Define standard header for examples.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/example","name":"example","color":"d1af26"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/documentation","name":"documentation","color":"cccc29"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-31T14:44:01Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3910580,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-24T02:12:05Z","body":"\r\n\r\nXcode 4 mangles OF projects pretty badly in the following ways: \r\n\r\na) it autogenerates schemes, and \"openframeworks\" appears as the chosen scheme\r\nb) it sometimes chooses the wrong SDK for OF -- is there a way to set that?\r\nc) debug and release are not really clear, part of this is a shift in xcode -- but it's much harder to see how things are compiled and to set release or debug\r\nd) I still had issues with OF needing to be recompiled all the time. I tried to fix this, but we should make sure it's done right. the of lib was appearing red even though it had been built, etc. \r\n\r\nI've tried to fix some of this in detroit with the PG, but I don't think it's the right way to do it. Overall, it would be great to have projects work smoothly on xcode 4...\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1129","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1129,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1129","assignee":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"title":"xcode 4 issues: scheme, auto-generation of schemes, rebuilding OF, sdk, etc","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-03-31T14:39:04Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":3910555,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-31T16:32:04Z","body":"When deprecating api's (e.g. ofEvents, ofVertexes), perhaps we could help automate the changes through simple scripts to update api\r\nSuggest sticking to something close to how uncrustify scripts are run (and perhaps there are tools like uncrustify but specifically for this task)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1128","comments":1,"milestone":null,"number":1128,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1128","assignee":null,"title":"upgrade scripts","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-31T14:38:19Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3910549,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-09T16:47:04Z","body":"It would be nice (and useful for testing the PG) if the PG would get an option to clean the examples folders of all generated files. \r\n\r\nCurrently, the quickest option is to delete the examples folder on disk, and do `git reset --hard HEAD`.\r\n\r\nAs before, milestoned for 0071, but feel free to push back.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1126","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1126,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1126","assignee":null,"title":"PG Feature request: Clean examples folder","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-03-30T12:51:30Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3897090,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-29T16:47:29Z","body":"there is a hard limit of 100 files when using drag & drop into an of app. not sure if it's an of issue, but am curious if it comes from the hacked glutDragEventFunc ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1124","comments":0,"milestone":null,"number":1124,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1124","assignee":null,"title":"void dragEvent(ofDragInfo dragInfo) limited to 100 files in osx lion","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-29T16:47:29Z","state":"open","user":{"url":"https://api.github.com/users/jesusgollonet","avatar_url":"https://secure.gravatar.com/avatar/5008d5295e9bc2636313c7b50ed5981d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5008d5295e9bc2636313c7b50ed5981d","login":"jesusgollonet","id":31100},"id":3883598,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-29T13:05:25Z","body":"When loading a file with ofImage, ofSoundPlayer , ofVideoPlayer-file or any ofFile it would be nice to be able to know if the file changed since it was loaded.\r\n\r\nIts very simple to implement with Poco::File->getLastModified() and it would be very nice if this would be built into the above classes.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1120","comments":2,"milestone":null,"number":1120,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1120","assignee":null,"title":"isFileChanged() for ofImage, ofVideoPlayer, ofSoundPlayer and ofFile","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-28T16:21:45Z","state":"open","user":{"url":"https://api.github.com/users/imanhp","avatar_url":"https://secure.gravatar.com/avatar/7398ab0bbd07832d0289f26773e65077?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"7398ab0bbd07832d0289f26773e65077","login":"imanhp","id":1216228},"id":3856005,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-30T12:19:59Z","body":"paths.make should be in the repo as an example on how to set it up correctly, but changes (i.e. paths unique to every user) to it should be ignored cause everyone will have a different version in their computers so we don't want personal changes to appear in git status.\r\n\r\nI think the best way to solve this is to rename it to paths.make.default, keep this in the repo, maybe with `` instead of your path, and have people make their own paths.make from that one. We track changes to paths.make.default and ignore paths.make. \r\n\r\nThis will probably also need a mechanism in the makefile to fail gracefully and remind the user, if his customized paths.make is missing.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1118","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1118,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1118","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"Default paths.make for Android","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/android","name":"android","color":"2bc4ad"}],"closed_at":null,"created_at":"2012-03-28T12:19:39Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3850655,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-18T17:13:36Z","body":"Once ofSetFrameRate() is called, I can't find a way to retrieve it. I think implementing a ofGetDesiredFrameRate() in ofAppRunner would make sense, also adding getDesiredFrameRate() to ofAppBaseWindow and all subclasses, where the actual value is stored. \r\n\r\nThis can be useful to compare the desired frame rate with actual frame rate and react accordingly if required.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1117","comments":0,"milestone":null,"number":1117,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1117","assignee":null,"title":"Can't retrieve desired frame rate once set","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-27T11:48:00Z","state":"open","user":{"url":"https://api.github.com/users/armadillu","avatar_url":"https://secure.gravatar.com/avatar/b87a82d7c86161432ee6388c7cbd5e2c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b87a82d7c86161432ee6388c7cbd5e2c","login":"armadillu","id":167057},"id":3825582,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-26T22:27:14Z","body":"https://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/gl/ofVbo.cpp#L343\r\n\r\nIndices should be specified as GL_ELEMENT_ARRAY_BUFFER unless I am mistaken.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1116","comments":5,"milestone":null,"number":1116,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1116","assignee":null,"title":"ofVBO updateIndexData incorrect buffer type.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-26T18:26:05Z","state":"open","user":{"url":"https://api.github.com/users/vade","avatar_url":"https://secure.gravatar.com/avatar/37aca214d4875cd90af9d67072c82642?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"37aca214d4875cd90af9d67072c82642","login":"vade","id":65011},"id":3813852,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-26T18:45:51Z","body":"The default optimization settings for debug builds in example XCode projects is set to Fastest,Smallest thus making debugging very difficult, is there a specific reason for this?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1115","comments":3,"milestone":null,"number":1115,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1115","assignee":null,"title":"optimization level in xcode projects","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"}],"closed_at":null,"created_at":"2012-03-26T17:05:14Z","state":"open","user":{"url":"https://api.github.com/users/colormotor","avatar_url":"https://secure.gravatar.com/avatar/2548dbd6a86902ed5260b5f76710b83c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2548dbd6a86902ed5260b5f76710b83c","login":"colormotor","id":1239872},"id":3812318,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-31T15:31:31Z","body":"I had some problems because of macro definitions in ofArduino.h overriding an enum in a a class of my codebase ( SHIFT )\r\nIt's not exactly a bug! but I would suggest using enums or const int instead of the macros to avoid any conflicts\r\nI solved the problem by modifying \r\n#define SHIFT 0x05 \r\ninto \r\nconst int SHIFT = 0x05;\r\n\r\nanother solution could be using enumerations as \r\nenum\r\n{\r\n ...\r\n SHIFT = 0x05,\r\n etc...\r\n};\r\n\r\nI believe this would not break any of the existing code\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1114","comments":1,"milestone":null,"number":1114,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1114","assignee":{"url":"https://api.github.com/users/joshuajnoble","avatar_url":"https://secure.gravatar.com/avatar/10960ba0f305803a1cdc7cd6188d643b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"10960ba0f305803a1cdc7cd6188d643b","login":"joshuajnoble","id":237423},"title":"macros in ofArduino","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-03-26T17:02:21Z","state":"open","user":{"url":"https://api.github.com/users/colormotor","avatar_url":"https://secure.gravatar.com/avatar/2548dbd6a86902ed5260b5f76710b83c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2548dbd6a86902ed5260b5f76710b83c","login":"colormotor","id":1239872},"id":3812275,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-27T14:56:56Z","body":"Hello.\r\n\r\nI'm trying to run camera frame grabing in OSX Lion.\r\nSimple ofVideoGrabber doesn't work - even if I link it with 10.6 SDK (and 10.6 is deployment target) I receive crash in initialization of ofVideoGrabber. Details are the same as in http://forum.openframeworks.cc/index.php/topic,6776.0.html\r\n\r\nI tryed QtKitMovieGrabberExample. It had some problems in compilation - texture property was not synthesized, I wrote this property and compilation run well.\r\nBut linking is fault. All I receive form linker is:\r\n\r\n*Ld bin/movieGrabberExampleDebug.app/Contents/MacOS/movieGrabberExampleDebug normal i386\r\n cd /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample\r\n setenv MACOSX_DEPLOYMENT_TARGET 10.6\r\n /Developer/usr/bin/clang++ -arch i386 -isysroot /Developer/SDKs/MacOSX10.6.sdk -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freeimage/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/GLee/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/rtAudio/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/fmodex/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freetype/lib/osx -L/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx -F/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin -F/Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/glut/lib/osx -filelist /Users/yltastep/Library/Developer/Xcode/DerivedData/movieGrabberExample-aftkspwrgtotrteyzaplfbqzeasd/Build/Intermediates/movieGrabberExample.build/Debug/movieGrabberExample.build/Objects-normal/i386/movieGrabberExampleDebug.LinkFileList -mmacosx-version-min=10.6 -dead_strip ../../../libs/poco/lib/osx/PocoFoundation.a ../../../libs/poco/lib/osx/PocoNet.a ../../../libs/poco/lib/osx/PocoXML.a ../../../libs/poco/lib/osx/PocoUtil.a ../../../libs/tess2/lib/osx/tess2.a ../../../libs/glew/lib/osx/glew.a ../../../libs/cairo/lib/osx/cairo-script-interpreter.a ../../../libs/cairo/lib/osx/cairo.a ../../../libs/cairo/lib/osx/pixman-1.a ../../../libs/fmodex/lib/osx/libfmodex.dylib ../../../libs/rtAudio/lib/osx/rtAudio.a /Users/yltastep/Documents/XCode/openframeworks/libs/openFrameworksCompiled/lib/osx/openFrameworksDebug.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/GLee/lib/osx/GLee.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/rtAudio/lib/osx/rtAudio.a -framework AGL -framework ApplicationServices -framework AudioToolbox -framework Carbon -framework CoreAudio -framework CoreFoundation -framework CoreServices -framework OpenGL -framework QuickTime -framework AppKit -framework Cocoa -framework IOKit -framework GLUT /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoFoundation.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoNet.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoUtil.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/poco/lib/osx/PocoXML.a /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/freetype/lib/osx/freetype.a -lfmodex /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/../../../libs/FreeImage/lib/osx/freeimage.a -framework QTKit -framework Quartz -framework QuartzCore -o /Users/yltastep/Documents/XCode/openframeworks/apps/devApps/QtKitMovieGrabberExample/bin/movieGrabberExampleDebug.app/Contents/MacOS/movieGrabberExampleDebug*\r\n\r\n**Command /Developer/usr/bin/clang++ failed with exit code 1**\r\n\r\nSo no explanation of problem.\r\n\r\nIs somebody ran this example successfully ?\r\nAnd what I'm doing wrong ?\r\n\r\nThanks in advance !\r\n\r\nWith regards.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1112","comments":9,"milestone":null,"number":1112,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1112","assignee":null,"title":"Issue with QtKitMovieGrabberExample in apps/devapps","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2012-03-26T12:11:44Z","state":"open","user":{"url":"https://api.github.com/users/OlexandrStepanov","avatar_url":"https://secure.gravatar.com/avatar/aa6e2a475cab75513c9cc435b28eef31?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"aa6e2a475cab75513c9cc435b28eef31","login":"OlexandrStepanov","id":971079},"id":3807459,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-25T20:07:16Z","body":"Todd's example has this code a few times in it by hand, but I'm thinking it's so simple it could be added along side ofSplitString() and would be really useful ? for sure, more string utility functions are helpful, and for basic text parsing, this is great. Poco gives us this for free, so it doesn't seem like a huge stretch to think of something like this, plus find and replace, etc. Would make the regex example much shorter. \r\n\r\np5 has something similar, if that's a helpful argument: \r\n\r\nhttp://processing.org/reference/matchAll_.html\r\n\r\n\r\n\tvector < string > ofxRegex::getMatchedStrings (string contents, string regex );\r\n\tvector < string > ofxRegex::getMatchedStrings (string contents, string regex ){\r\n \r\n\t vector < string > results;\r\n\t RegularExpression regEx(regex);\r\n\t RegularExpression::Match match;\r\n \r\n\t while(regEx.match(contents, match) != 0) {\r\n \r\n\t // we get the sub string from the content\r\n\t // and then trim the content so that we\r\n\t // can continue to search \r\n\t string foundStr = contents.substr(match.offset, match.length);\r\n\t contents = contents.substr(match.offset + match.length);\r\n \r\n\t results.push_back(foundStr);\r\n \r\n\t }\r\n\t return results;\r\n\t}","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1110","comments":1,"milestone":null,"number":1110,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1110","assignee":null,"title":"add a simple regex function like ofSplitString()","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-03-25T18:56:37Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":3799872,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-25T18:50:13Z","body":"code to recreate: \r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::setup(){\r\n system(\"pwd;\");\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::update(){\r\n system(\"pwd;\");\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::draw(){\r\n}\r\n\r\n//--------------------------------------------------------------\r\nvoid testApp::keyPressed(int key){\r\n cout << ofToDataPath(\"temp\") << endl;\r\n}\r\n\r\nproduces: \r\n\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin\r\n../../../data/temp\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin/emptyExampleDebug.app/Contents/MacOS\r\n/Users/zach/Desktop/openFrameworks__GIT/_myApps/test/emptyExample/bin/emptyExampleDebug.app/Contents/MacOS\r\n\r\nthis is because the code that fixes OSX paths isn't called until you call ofToDataPath(). a good fix I think would be to set ofDataPathRoot (which happens in ofToDataPath) somewhere early in ofRunApp(). Or should it happen even earlier?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1109","comments":3,"milestone":null,"number":1109,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1109","assignee":null,"title":"mac paths don't seem right until you call \"ofToDataPath()\"","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/xcode","name":"xcode","color":"993e7a"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bitesize","name":"bitesize","color":"65a300"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"}],"closed_at":null,"created_at":"2012-03-25T18:18:28Z","state":"open","user":{"url":"https://api.github.com/users/ofZach","avatar_url":"https://secure.gravatar.com/avatar/04ffd573ed878bc5b8c818c3aeaa2d71?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"04ffd573ed878bc5b8c818c3aeaa2d71","login":"ofZach","id":142897},"id":3799653,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-09T13:06:18Z","body":"easycam behaves as expected when inited but as soon as I change it's target it begins to behave strangely.\r\nthere's this imaginary sphere that we are rotating (it's diameter is min (viewport.width, vieport.height)), when the mouse is dragged from inside to outside of it the rotation just jumps to a \"random\" rotation. \r\nas well when you have a the camera rotated more than 180º in some axis the \"trackball\" doesn't behave as expected. yet this behavior is not seen when the target hasn't been changed.\r\n\r\nDoes any one know what's going on?\r\n\r\nI just came across this but I haven't gone deeply into how easycam handles the mouse to rotate. \r\nI'll do so ASAP. If someone can give me any clues I'll really apreciate it.\r\n\r\nregards!","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1108","comments":7,"milestone":null,"number":1108,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1108","assignee":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"title":"easyCam weird behavior when target changed","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-25T00:01:54Z","state":"open","user":{"url":"https://api.github.com/users/roymacdonald","avatar_url":"https://secure.gravatar.com/avatar/fe632ca3d0c42747cfef88a95d942c4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"fe632ca3d0c42747cfef88a95d942c4a","login":"roymacdonald","id":974878},"id":3795495,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-09T16:47:18Z","body":"It would be great if the PG could also generate projects/examples for usage with Eclipse, i.e. just the makefile related files, no CB or other project files.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1103","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1103,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1103","assignee":null,"title":"PG feature request: Generate makefile-only projects","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-03-21T21:43:34Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3754055,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-19T16:18:43Z","body":"whenever i call ofLog beneath openmp i have to wrap it in ```#pragma omp critical (ofLog)``` otherwise i get a crash\r\ni found adding the line above \r\nhttps://github.com/openframeworks/openFrameworks/blob/master/libs/openFrameworks/utils/ofLog.cpp#L84\r\nworks pretty well\r\n\r\nany objections to having it in there?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1098","comments":3,"milestone":null,"number":1098,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1098","assignee":null,"title":"feature / bug - #pragma omp critical(ofLog)","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-19T14:04:51Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3710293,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-15T20:34:17Z","body":"I'm finding that `ofDirector::listDir, open` are extremely slow\r\nit seems that it's actually loading the entire dir contents into memory\r\n\r\nit's possible to then do something like\r\n```\r\nofLoadImage(myPixels, dir.getFile(i));\r\n```\r\nand you can quickly load that image from memory. which is faster than\r\n```\r\nofLoadImage(myPixels, dir.getFile(i).getAbsolutePath());\r\n```\r\n\r\nBut this doesn't seem to work consistently (even though the slow listing is consistent)\r\nand surely isn't what we want.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1075","comments":2,"milestone":null,"number":1075,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1075","assignee":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"title":"bug ofDirectory::open(string path) actually loads the entire dir into memory?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-internals","name":"section-internals","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-15T07:54:55Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3662214,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T16:03:06Z","body":"Hello,\r\nI needed alpha channel in short length video for a recent project.\r\nIn the forum there is some old zip file for a ofxAlphaVideoPlayer that is still working, but that's OS X & windows only as it's based on QT.\r\nI'm working on linux, and I didn't find anything for GStreamer, so I modified the existing ofGstUtils and ofGstVideoPlayer.\r\nWould you mind if I do a pull request for this?\r\nI can also provide an example with a short length video using animation codec.\r\nWhat do you think?","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1070","comments":6,"milestone":null,"number":1070,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1070","assignee":null,"title":"Alpha movies in GStreamer","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-14T13:02:41Z","state":"open","user":{"url":"https://api.github.com/users/manuelgeoffray","avatar_url":"https://secure.gravatar.com/avatar/c1ec5161b69b4a990436deafb1170d64?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c1ec5161b69b4a990436deafb1170d64","login":"manuelgeoffray","id":808090},"id":3647640,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-17T19:26:40Z","body":"Hey !\r\n\r\nMe again. Didn't find anywhere this infos. I'm currently testing the travis-ci.org service.\r\nAs many people are working on the project and as many many issue are raised, and fixed, I thought it could be great to add some test and thus the travis service.\r\n\r\nIt would avoid the problem met here :\r\nhttps://github.com/openframeworks/openFrameworks/commit/7ca7833ea1afb6bd5a6c54031e3fa688aa0c0ba8\r\nand the discussion here :\r\nhttps://github.com/openframeworks/openFrameworks/issues/804\r\nor there :\r\nhttps://github.com/openframeworks/openFrameworks/pull/921\r\n\r\nI read that :\r\n\r\n>feel free to make a unitTests folder at the root level of OF -\r\n> that is where all unitTests will go.\r\n\r\nBut didn't find them.\r\n\r\nThe travis service will permit to get the little badge we know well : \r\n[![Build Status](https://secure.travis-ci.org/soixantecircuits/openFrameworks.png?branch=master)](http://travis-ci.org/soixantecircuits/openFrameworks)\r\n\r\nAlso, why not adding some spec test, to ensure future development of features.\r\nI'm currently reading :\r\nhttp://www.squidoo.com/cplusplus-behaviour-driven-development-tools#module124841511\r\nhttp://sourceforge.net/apps/mediawiki/turtle/index.php?title=Turtle\r\n\r\nFor those who want some other nice reading :\r\n\r\nhttp://gamesfromwithin.com/exploring-the-c-unit-testing-framework-jungle\r\n\r\nThe travis test is here, currently it is a total fake, but I just proposed the idea of a test driven development\r\nhttp://travis-ci.org/#!/soixantecircuits/openFrameworks/builds/854259 ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1068","comments":10,"milestone":null,"number":1068,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1068","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"Continuous integration","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-13T15:49:23Z","state":"open","user":{"url":"https://api.github.com/users/gabrielstuff","avatar_url":"https://secure.gravatar.com/avatar/390ea42c23c2c383f973abdafa24bb07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"390ea42c23c2c383f973abdafa24bb07","login":"gabrielstuff","id":285033},"id":3631618,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-13T15:21:30Z","body":"Hi !\r\n\r\nRecently, I've been in lot of languages, from C++ to ruby, passing by the colosus of javascript and the sea of php. Dropping by various and strange framework such as the Cinder, the jQuery, the Rails, the Processing, etc ...\r\n\r\n## the situation \r\n\r\nWhat I have noticed is that a strong architecture and a really ease use of add-ons makes a framework get stronger. For instance, if we take a look at Ruby, we see that the use of gems give him a powerfull advance over his friend php. \r\n\r\n### the Rubyist\r\n\r\nThis way of thinking is getting even better with the http://gembundler.com/ [Bundler](http://gembundler.com/) friend. The gems have dependencies and a simple GemFile help to easily install all dependencies for one project.\r\n\r\n### the Cinderist\r\n\r\nFor Cinder, we get the block, as for OSX, it quiet easy and fast. Drag and drop and play/code.\r\n\r\n### the jQueryist\r\n\r\nWell, it is not frequent to have jQuery plugins depending on other jQuery plugins, but there are several way to handle dependencies on jQuery and JS.\r\n\r\n### the nodist\r\n\r\nThis lead us to http://npmjs.org/, which is really nice with dependencies.\r\nFor instance, if you tried cloud9ide, you know that you just have to make sure you get the proper package.json :\r\n\r\n```\r\n{\r\n \"name\": \"node-example\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": {\r\n \"express\": \"2.2.0\"\r\n }\r\n}\r\n```\r\n\r\nThis file ensure that everything before running the server will be installed via npm.\r\n\r\n### the ofist\r\n\r\nRight now, we just have the addons.make file, which is nice but does not do any lifting for us. We have to verify that the ofx addons has been downloaded and is installed in the right folder.\r\n\r\n- Why not creating a script that will allow to manage dependencies compilation ? \r\nI have this wonderful ofxJSONsettings, but he depends on [JSONCPP](http://jsoncpp.sourceforge.net/) and on boost, so here we will have :\r\n\r\npackage.json file in the ofxJSONsettings folder :\r\n\r\n```\r\n{\r\n \"name\": \"ofxJSONsettings\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": [{\r\n \"jsoncpp\": \"0.6.0-rc2\"\r\n \"url\":\"http://jsoncpp.svn.sourceforge.net/svnroot/jsoncpp/trunk/\"\r\n \"protocol\":\"svn\"\r\n }\r\n ]\r\n}\r\n```\r\n\r\nHum, then, we have our little bash script :\r\n\r\n`xadd -addon ofxJSONsettings`\r\n\r\nand for a project, we have to ensure that the make file run `xadd -addon ofxJSONsettings` if it does not find ofXJSONsettings.\r\n\r\nThis could lead to simplify and easify the use of plugin ! Hey, I want the new [mistubaRenderer](https://github.com/satoruhiga/ofxMitsubaRenderer) let's give a try :\r\n\r\n```\r\n{\r\n \"name\": \"ofxMitsubaRenderer\",\r\n \"version\": \"0.0.1\",\r\n \"dependencies\": [{\r\n \"mitsuba\": \"0.1\"\r\n \"url\":\"https://www.mitsuba-renderer.org/hg/mitsuba-bidir\"\r\n \"protocol\":\"hg\"\r\n }\r\n ]\r\n}\r\n```\r\n\r\nWell, this would be simplify if everybody use some same pattern, and respect some convention.\r\n\r\nSo what do you guys think about that ?\r\n\r\n\r\nThank you !\r\n\r\n\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1063","comments":7,"milestone":null,"number":1063,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1063","assignee":null,"title":"Automatic installer + dependencies handler","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-13T10:44:57Z","state":"open","user":{"url":"https://api.github.com/users/gabrielstuff","avatar_url":"https://secure.gravatar.com/avatar/390ea42c23c2c383f973abdafa24bb07?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"390ea42c23c2c383f973abdafa24bb07","login":"gabrielstuff","id":285033},"id":3627067,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-12T17:58:20Z","body":"right now there is a lot of duplicated code in the vector math classes. for example, normalize() and getNormalized() have separate implementations. if we follow the pattern of always implementing things in self-modifying methods, then providing copy-returning methods as alternatives, this will reduce the amount of code and make it harder to cause bugs or behavioral discrepancies.\r\n\r\n- implementations of an algorithm should always be self-modifying\r\n- copy-returning versions should be implemented using a differently named method, internally making a copy and calling the self-modifying version on the copy.\r\n\r\ne.g. something like (note, this isn't how it's implemented right now):\r\n\r\n\tinline ofVec2f& ofVec2f::normalize() {\r\n\t\tfloat length = (float)sqrt(x*x + y*y);\r\n\t\tif( length > 0 ) {\r\n\t\t\tx /= length;\r\n\t\t\ty /= length;\r\n\t\t}\r\n\t\treturn *this;\r\n\t}\r\n\r\n\tinline ofVec2f ofVec2f::getNormalized() const {\r\n\t\tofVec2f result = *this;\r\n\t\treturn result.normalize();\r\n\t}\r\n\r\ntaken from this post https://github.com/openframeworks/openFrameworks/pull/1061#issuecomment-4455601","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1062","comments":4,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1062,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1062","assignee":null,"title":"regularize code for math addons","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-12T16:33:06Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3614231,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-13T13:07:11Z","body":"Just saw this is the documentation.\r\nVertexes is incorrect (wrong plural)\r\nVertices","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1055","comments":18,"milestone":null,"number":1055,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1055","assignee":null,"title":"ofVertexes?? ofCurveVertexes","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-03-12T01:50:19Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3605277,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/openframeworks/openFrameworks/issues?page=4 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4994'), ('content-length', '44623'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"503341a3315e7439ca42af2db36615d4"'), ('date', 'Tue, 29 May 2012 20:01:49 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-03-10T17:52:58Z","body":"if you have:\r\n\r\n uniform float dog;\r\n float cat;\r\n\r\nand:\r\n\r\n shader.setUniform1f(\"dog\", ofGetElapsedTimef());\r\n shader.setUniform1f(\"cat\", ofGetElapsedTimef());\r\n\r\nthere is no currently no error printed to the console, and \"cat\" is mysteriously unchanging while \"dog\" is fine.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1052","comments":0,"milestone":null,"number":1052,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1052","assignee":null,"title":"ofShader should show an error when using an invalid name","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-03-10T17:52:58Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3596240,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T15:11:08Z","body":"ofxiPhoneScreenGrab saves with compression artifacts.\r\nfix for saving a lossless image in the below post,\r\nhttp://forum.openframeworks.cc/index.php/topic,4737.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1051","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1051,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1051","assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"title":"ofxiPhoneScreenGrab saves with compression artifacts.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-03-10T12:15:33Z","state":"open","user":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"id":3594731,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T15:09:09Z","body":"just wanted to kick off a discussion about cleaning up ofxiPhone folder structure.\r\nhave this up on the forum, http://forum.openframeworks.cc/index.php/topic,8955.0.html","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1050","comments":5,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1050,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1050","assignee":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"title":"clean up ofxiPhone folder structure.","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-10T06:32:12Z","state":"open","user":{"url":"https://api.github.com/users/julapy","avatar_url":"https://secure.gravatar.com/avatar/8dca8d8de1b5950c895fb72e0527c6f0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"8dca8d8de1b5950c895fb72e0527c6f0","login":"julapy","id":331382},"id":3593619,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-29T14:55:24Z","body":"This an implementation of ofxiPhoneScreenGrab for Android","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1048","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1048,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1048","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"Adding Android screenshot feature, example to demonstrate it","labels":[],"closed_at":null,"created_at":"2012-03-10T05:31:45Z","state":"open","user":{"url":"https://api.github.com/users/bostonbusmap","avatar_url":"https://secure.gravatar.com/avatar/433032cca043cedb67180dc5109062da?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"433032cca043cedb67180dc5109062da","login":"bostonbusmap","id":863262},"id":3593430,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1048.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1048","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1048.patch"}},{"updated_at":"2012-03-12T15:31:12Z","body":"whenever I try to open a file using system dialog from OF utils or ofxFileDIalogOSX, the video is loaded correctly but it get stuck and doesn't play at all. see:\r\nhttp://forum.openframeworks.cc/index.php/topic,5233.0.html\r\nhttp://forum.openframeworks.cc/index.php/topic,6515.0.html\r\n\r\nquite a big issue IMHO","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1047","comments":8,"milestone":null,"number":1047,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1047","assignee":null,"title":"opening video files with system dialog in osx prevents them to play correctly","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/macOS","name":"macOS","color":"2a8296"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-video","name":"section-video","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-03-09T18:54:28Z","state":"open","user":{"url":"https://api.github.com/users/hvfrancesco","avatar_url":"https://secure.gravatar.com/avatar/e02a8a3953de9d5d9ec1c7aa8d43eca4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e02a8a3953de9d5d9ec1c7aa8d43eca4","login":"hvfrancesco","id":614123},"id":3587808,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-20T16:11:54Z","body":"just a small one but would be great. \r\nmaybe even different icon for debug and release? ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1039","comments":12,"milestone":null,"number":1039,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1039","assignee":null,"title":"make icons for OF apps","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-06T17:56:58Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":3528378,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-06T15:32:44Z","body":"right now it is not clear from a visual perspective what is a button / trigger and what is a toggle. ","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1037","comments":1,"milestone":null,"number":1037,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1037","assignee":null,"title":"ofxGui, ofxButton should look visually different to toggle","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-05T18:06:03Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":3510933,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-04-10T19:29:53Z","body":"xml is one of the reasons this is currently an addon. \r\nthe original idea was to have something simple and minimal that could be in the core. \r\nalso something which could be built off of for larger gui addons ( hence ofParameter ) \r\n\r\nI see a couple of options going forward.\r\n\r\n1) swtich from xml to newline separated text files and move ofGui into core\r\nthis would be quite simple as ofParameter already has a name, value structure \r\n\r\n2) same as 1) but keep ofxGui as an addon - making it a bit simpler to add to a project \r\n2b) add ofParameter to core as it is more general purpose\r\n\r\n3) bring ofxXmlSettings into the core and bring ofGui into core.\r\n\r\n\r\nanyway I thought it would be good to get some discussion going about this.\r\nI'm especially interested in setting up ofParam and ofBaseGui in a way to make things modular and extendable. \r\n\r\nalso could be interesting to look at a way to represent a collection/group of ofParameters\r\nsome of this might be similar to some of the stuff @memo was doing with his plist style system. \r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1036","comments":10,"milestone":null,"number":1036,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1036","assignee":null,"title":"ofxGui -> ofGui - how/should we bring into core?","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-05T16:56:26Z","state":"open","user":{"url":"https://api.github.com/users/ofTheo","avatar_url":"https://secure.gravatar.com/avatar/3b0860ec0180f7fb7ac4d2cd9252ec3f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"3b0860ec0180f7fb7ac4d2cd9252ec3f","login":"ofTheo","id":144000},"id":3509628,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-12T12:39:10Z","body":"If it finds .vert, .frag (and .geom?) files in the data/ folder, the project generator should make a new folder, in the project file, next to (or inside) src called data/ and add the files to it. (data/ so that beginners can find the files in Finder)","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1034","comments":3,"milestone":null,"number":1034,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1034","assignee":null,"title":"projectGenerator ignores shader .vert and .frag files","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/project+generator","name":"project generator","color":"444444"}],"closed_at":null,"created_at":"2012-03-04T11:19:04Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":3495602,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-06T15:06:00Z","body":"I talked to Arturo about this, but I want to make sure it's known. When you call ofLogSetLogLevel with a module string, that string is added to a map used to check the module's log level ... but right now that string is never removed.\r\n\r\nIf someone creates a large amount module names the map could grow arbitrarily large over time. The thought so far is that no one would make enough module names for it to be a problem.\r\n\r\nFor instance, using the [proposed ofThread rewrite](https://github.com/openframeworks/openFrameworks/pull/1031), each thread creates a new module name when it sets itself to verbose and, in the case of spawning lots of verbose worker threads, the map will grow.\r\n\r\nMy proposed solution would be to remove the module name from the map when the level for that module is set back to OF_LOG_NOTICE and/or to the current log level.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1033","comments":11,"milestone":null,"number":1033,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1033","assignee":null,"title":"ofSetLogLevel(module, level) adds to map but dosen't remove","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-03-04T10:54:12Z","state":"open","user":{"url":"https://api.github.com/users/danomatika","avatar_url":"https://secure.gravatar.com/avatar/5fa1d3aa502b308b8a3ae814fb88ac04?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5fa1d3aa502b308b8a3ae814fb88ac04","login":"danomatika","id":480637},"id":3495503,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T15:11:08Z","body":"this change c50648e29199a3f61eae05f6ceb350a97ab275d7 caused the problem. i'm not sure why adding explicit cases for handling loadData for ofShortPixels and ofFloatPixels would do this. to see the proof, run devApps/AdvancedImageLoading","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1029","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1029,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1029","assignee":null,"title":"display of short + float textures are broken","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-03-03T19:04:59Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3491627,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-10T06:54:25Z","body":"I've just encountered a real 'wall meets head' bug, aka 'why is my camera image black??'\r\n\r\nwell it turns out that actually, ofSaveImage doesn't save mono images\r\nit just saves out black pixels\r\n\r\ntesting on Windows, VS2010.\r\nAnybody else getting this?\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1028","comments":5,"milestone":null,"number":1028,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1028","assignee":null,"title":"ofSaveImage / ofImage::saveImage() problem with OF_IMAGE_GRAYSCALE / OF_PIXELS_MONO","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-03-03T12:23:06Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3489266,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-16T09:25:13Z","body":"The Android example is basically a copy of the existing 3dModelBuilder example with some code changes to work with OpenGL ES","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1024","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":1024,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1024","assignee":{"url":"https://api.github.com/users/arturoc","avatar_url":"https://secure.gravatar.com/avatar/84c985e7168027f833fd837f3afd9f3e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"84c985e7168027f833fd837f3afd9f3e","login":"arturoc","id":48240},"title":"Fixing 3DModelBuilder to work with OpenGL ES, added Android example for it","labels":[],"closed_at":null,"created_at":"2012-03-02T16:55:29Z","state":"open","user":{"url":"https://api.github.com/users/bostonbusmap","avatar_url":"https://secure.gravatar.com/avatar/433032cca043cedb67180dc5109062da?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"433032cca043cedb67180dc5109062da","login":"bostonbusmap","id":863262},"id":3479768,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/1024.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/1024","patch_url":"https://github.com/openframeworks/openFrameworks/pull/1024.patch"}},{"updated_at":"2012-03-30T16:34:06Z","body":"Continuation of http://forum.openframeworks.cc/index.php/topic,9095.msg42378.html#new\r\n\r\nNOTE: Things may have changed as the projects I'm using are all created using the older creation tools.\r\nCan somebody up to date please check?\r\n\r\nCurrently XCode's default project setting is /O2 for debug projects\r\nwhilst Visual Studio's is /O0\r\n\r\n/O0 generally makes the most sense for debug mode as it allows for effective program flow and variable tracking (because with /O2, lines of code and variables are commonly optimised away).\r\n\r\nIf we are worried that this will leave default users in a default 'slower state' then perhaps we could make release the default? Then people could be aware that they are selecting debug when they want to actually do some debugging?\r\nBut this may have other issues (such as some libraries might not perform as many checks as otherwise?)\r\n\r\nit might be worth making users more aware of the 2 options anyway, and then start using them consistently","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1022","comments":12,"milestone":null,"number":1022,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1022","assignee":null,"title":"Optimisation consistency","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-02T13:25:15Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3476540,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-01T19:42:09Z","body":"currently if MSAA is enabled, COLOR_ATTACHMENT[ 0 -> nSamples]_EXT are bound for MS blitting, which could overwrite your texture color attachments without notifying you [ i.e. setSamples(4); setNumTextures(4) ]. There may be some solution where numSamples*numTextures = maxAttachments, allowing for multisampled internal textures, but at the very least we should warn/notify that samples and textures won't play so nicely together, or try to allocate samples/textures in the remaining attachments and notify on overflow.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1019","comments":0,"milestone":null,"number":1019,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1019","assignee":null,"title":"ofFbo needs consideration as far as MRT + MSAA","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-03-01T19:42:09Z","state":"open","user":{"url":"https://api.github.com/users/kpasko","avatar_url":"https://secure.gravatar.com/avatar/b3685ad8a761582e5f1c3e151f9f854f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b3685ad8a761582e5f1c3e151f9f854f","login":"kpasko","id":167271},"id":3462226,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-01T04:33:36Z","body":"there's a block in ofConstants which reads like:\r\n\r\n```c++\r\n#ifndef PI\r\n\t#define PI 3.14159265358979323846\r\n#endif\r\n\r\n#ifndef TWO_PI\r\n\t#define TWO_PI 6.28318530717958647693\r\n#endif\r\n\r\n#ifndef M_TWO_PI\r\n\t#define M_TWO_PI 6.28318530717958647693\r\n#endif\r\n\r\n#ifndef FOUR_PI\r\n\t#define FOUR_PI 12.56637061435917295385\r\n#endif\r\n\r\n#ifndef HALF_PI\r\n\t#define HALF_PI 1.57079632679489661923\r\n#endif\r\n\r\n#ifndef DEG_TO_RAD\r\n\t#define DEG_TO_RAD (PI/180.0)\r\n#endif\r\n\r\n#ifndef RAD_TO_DEG\r\n\t#define RAD_TO_DEG (180.0/PI)\r\n#endif\r\n\r\n#ifndef MIN\r\n\t#define MIN(x,y) (((x) < (y)) ? (x) : (y))\r\n#endif\r\n\r\n#ifndef MAX\r\n\t#define MAX(x,y) (((x) > (y)) ? (x) : (y))\r\n#endif\r\n\r\n#ifndef CLAMP\r\n\t#define CLAMP(val,min,max) (MAX(MIN(val,max),min))\r\n#endif\r\n\r\n#ifndef ABS\r\n\t#define ABS(x) (((x) < 0) ? -(x) : (x))\r\n#endif\r\n```\r\n\r\nthe problem is i've got this in another header file:\r\n\r\n```c++\r\n// macro-like inline functions\r\n\r\ntemplate\r\ninline T SQR(const T a) {return a*a;}\r\n\r\ntemplate\r\ninline const T &MAX(const T &a, const T &b)\r\n {return b > a ? (b) : (a);}\r\n\r\ninline float MAX(const double &a, const float &b)\r\n {return b > a ? (b) : float(a);}\r\n\r\ninline float MAX(const float &a, const double &b)\r\n {return b > a ? float(b) : (a);}\r\n\r\ntemplate\r\ninline const T &MIN(const T &a, const T &b)\r\n {return b < a ? (b) : (a);}\r\n\r\ninline float MIN(const double &a, const float &b)\r\n {return b < a ? (b) : float(a);}\r\n\r\ninline float MIN(const float &a, const double &b)\r\n {return b < a ? float(b) : (a);}\r\n\r\ntemplate\r\ninline T SIGN(const T &a, const T &b)\r\n\t{return b >= 0 ? (a >= 0 ? a : -a) : (a >= 0 ? -a : a);}\r\n\r\ninline float SIGN(const float &a, const double &b)\r\n\t{return b >= 0 ? (a >= 0 ? a : -a) : (a >= 0 ? -a : a);}\r\n\r\ninline float SIGN(const double &a, const float &b)\r\n\t{return (float)(b >= 0 ? (a >= 0 ? a : -a) : (a >= 0 ? -a : a));}\r\n```\r\n\r\nAnd ofConstants is included in almost every oF file\r\n\r\ni'd suggest moving to inline functions and presume that compiler optimisations makes these 2 options equivalent in terms of performance, but that inline wins out for compatability","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1007","comments":10,"milestone":null,"number":1007,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1007","assignee":null,"title":"bug #defines in ofConstants conflict with other libraries","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-29T15:31:18Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3438233,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-01T13:02:37Z","body":"Propose the following functions:\r\n\r\n```c++\r\nofVec2f ofRandom(const ofVec2f&);\r\nofVec3f ofRandom(const ofVec3f&);\r\nofVec2f ofRandom(const ofVec2f& range1, const ofVec2f& range2);\r\nofVec3f ofRandom(const ofVec3f& range1, const ofVec3f& range2);\r\n```\r\n\r\nalso lots of other candidates for this, e.g. `ofClamp`, `ofMap`, etc\r\nsome clever templating possible?\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1005","comments":12,"milestone":null,"number":1005,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1005","assignee":null,"title":"feature ofRandom(ofVec3f) ","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/feature","name":"feature","color":"622425"}],"closed_at":null,"created_at":"2012-02-29T06:32:03Z","state":"open","user":{"url":"https://api.github.com/users/elliotwoods","avatar_url":"https://secure.gravatar.com/avatar/bea30676dca310e7f38269f245214944?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"bea30676dca310e7f38269f245214944","login":"elliotwoods","id":328294},"id":3432042,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-18T08:47:08Z","body":"I have a simple app that plays video files. I try to route (under windows) its output using Jack and Vitual Audio Cable but none can access it. I am just using the basic functionality of ofVideoPlayer, this is the class that deals with the video playing\r\n\r\n\r\n\t#include \"oscVPlayer.h\"\r\n\t#include \"ofMain.h\"\r\n\r\n\r\n\r\n\toscVPlayer::oscVPlayer()\r\n\t{\r\n\t\t\treset();\r\n\t}\r\n\r\n\tvoid oscVPlayer::reset()\r\n\t{ //defaults to fullscreen\r\n\t\t\tw = NULL;\r\n\t\t\th = NULL;\r\n\t\t\tx = 0;\r\n\t\t\ty = 0;\r\n\t\t\tdonereported = false;\r\n\t\t\tloopflag = OF_LOOP_NONE;\r\n\t\t\t\r\n\t\t\tcol.r = 0;\r\n\t\t\tcol.g = 0;\r\n\t\t\tcol.b = 0;\r\n\t\t\tcol.a = 255;\r\n\r\n\t\t\tif (isLoaded())\r\n\t\t{\r\n\t\t\t\t\tsetFrame(0);\r\n\t\t\t\t\tsetUseTexture(1);\r\n\t\t\t\t\tsetPaused(0);\r\n\t\t\t\t\tsetLoopState(OF_LOOP_NORMAL);\r\n\t\t\t\t\tsetSpeed(1);\r\n\t\t\t\t\tsetVolume(255);\r\n\t\t\t\t\tstop();\r\n\t\t}\r\n\t}\r\n\r\n\r\n\tvoid oscVPlayer::setUpVideo(string movie)\r\n\t{\r\n\t\t\tif (movie != \"none\")\r\n\t\t\t{\r\n\t\t\t\t\tif ( loadMovie(movie) )\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\t\tprintf(\"movie loaded\\n\");\r\n\t\t\t\t\t\t\tofVideoPlayer::update();\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\t\tprintf(\"CANNOT load movie\\n\");\r\n\t\t\t\t\t}\r\n\t\t\t}\r\n\t\t\telse\r\n\t\t\t{\r\n\t\t\t\t\tprintf(\"movie parameter is none, cannot load it\\n\");\r\n\t\t\t}\r\n\t}\r\n\r\n\r\n\r\n\r\n\tvoid oscVPlayer::setLoop()\r\n\t{\r\n\t\t\tsetLoopState(loopflag); // go back to your state. otherwise play resets it to loop ON\r\n\t}\r\n\r\n\r\n\r\n\r\n\tvoid oscVPlayer::resetSize()\r\n\t{\r\n\t\t\tw = NULL;\r\n\t\t\th = NULL;\r\n\t}\r\n\r\n\r\n\tvoid oscVPlayer::draw()\r\n\t{\r\n\t\tif (isLoaded())\r\n\t\t{\r\n\t\t\t if (col.a < 255) ofEnableAlphaBlending();\r\n\t\t\t\tofSetColor(col.r,col.g,col.b, col.a);\r\n\t\t\t\tofVideoPlayer::update();\r\n\t\t\t\tif (w==NULL && h==NULL)\r\n\t\t\t\t{\r\n\t\t\t\t\t\tofVideoPlayer::draw(x, y);\r\n\t\t\t\t}\r\n\t\t\t\telse\r\n\t\t\t\t{\r\n\t\t\t\t\t\t\tofVideoPlayer::draw(x, y, w, h);\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (col.a < 255) ofDisableAlphaBlending(); \r\n\t\t}\r\n\t}\r\n","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/1001","comments":2,"milestone":null,"number":1001,"html_url":"https://github.com/openframeworks/openFrameworks/issues/1001","assignee":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"title":"OF app sound out not available from Jack","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/windows","name":"windows","color":"244569"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-sound","name":"section-sound","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-02-27T14:59:34Z","state":"open","user":{"url":"https://api.github.com/users/enrike","avatar_url":"https://secure.gravatar.com/avatar/cc2adbc6d91bf2288f34f60a547a82cd?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"cc2adbc6d91bf2288f34f60a547a82cd","login":"enrike","id":710785},"id":3401755,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-05-29T14:42:36Z","body":"// scissor\r\nvoid ofBeginScissor(ofRectangle &r);\r\nvoid ofBeginScissor(ofPoint &p, float w, float h);\r\nvoid ofBeginScissor(float x, float y, float w, float h);\r\nvoid ofEndScissor();\r\n\r\n\r\nthere is a problem with ofFBO due to the flip. I do not think that there is a way around it sooo just scale -1\r\n\r\nalso: \r\nextra ; removed \r\nlibs/openFrameworks/utils/ofUtils.cpp","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/993","comments":11,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":993,"html_url":"https://github.com/openframeworks/openFrameworks/issues/993","assignee":null,"title":"Of scissors","labels":[],"closed_at":null,"created_at":"2012-02-26T21:35:55Z","state":"open","user":{"url":"https://api.github.com/users/vanderlin","avatar_url":"https://secure.gravatar.com/avatar/96c91dba0113ea847ee43b0961d24b3a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"96c91dba0113ea847ee43b0961d24b3a","login":"vanderlin","id":149997},"id":3393466,"pull_request":{"diff_url":"https://github.com/openframeworks/openFrameworks/pull/993.diff","html_url":"https://github.com/openframeworks/openFrameworks/pull/993","patch_url":"https://github.com/openframeworks/openFrameworks/pull/993.patch"}},{"updated_at":"2012-02-25T20:25:00Z","body":"i think this is because ofDrawBitmapString draws the quads in the wrong orientation. but i'm guessing it works in FBOs... so if we switch the order it will stop working in FBOs.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/987","comments":0,"milestone":null,"number":987,"html_url":"https://github.com/openframeworks/openFrameworks/issues/987","assignee":null,"title":"GL_CULL_FACE breaks ofDrawBitmapString()","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/section-3D","name":"section-3D","color":"DDDDDD"}],"closed_at":null,"created_at":"2012-02-25T20:25:00Z","state":"open","user":{"url":"https://api.github.com/users/kylemcdonald","avatar_url":"https://secure.gravatar.com/avatar/e5d92e48e175112e9df112e2418bd528?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e5d92e48e175112e9df112e2418bd528","login":"kylemcdonald","id":157106},"id":3387163,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-22T23:34:17Z","body":"Some logging messages don't really tell where they were triggered. Someone needs to go through them and add information as to what module triggered the message. \r\n@danomatika has already volunteered to do this some time.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/985","comments":16,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/5","number":5,"closed_issues":21,"title":"0072 Release","due_on":"2012-06-25T07:00:00Z","open_issues":81,"created_at":"2011-12-02T15:29:48Z","state":"open","description":"","id":61810},"number":985,"html_url":"https://github.com/openframeworks/openFrameworks/issues/985","assignee":null,"title":"Make logging messages more informative","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/fix-proposed","name":"fix-proposed","color":"31e03a"}],"closed_at":null,"created_at":"2012-02-25T19:41:58Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3386914,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-11T18:31:55Z","body":"There's a lot of logging printfs in the core addons. These should be replaced by appropriate ofLog calls.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/984","comments":5,"milestone":null,"number":984,"html_url":"https://github.com/openframeworks/openFrameworks/issues/984","assignee":null,"title":"Replace printf() occurences by ofLog() in the core addons","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/addon","name":"addon","color":"d68e22"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"}],"closed_at":null,"created_at":"2012-02-25T19:36:51Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3386889,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-27T13:35:34Z","body":"`ofVec2f` has a function called `average` which takes an array of `ofVec2f` and calculates the centroid. it is not static, rather it overwrites its own `x` and `y` with the average. \r\n\r\nthis is a little weird. `average` should be static, or at least be *returning* the average rather than assigning to self.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/976","comments":4,"milestone":null,"number":976,"html_url":"https://github.com/openframeworks/openFrameworks/issues/976","assignee":null,"title":"ofVec2f::average has unexpected/clumsy behaviour","labels":[{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/core","name":"core","color":"db6a1f"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/bug","name":"bug","color":"b31d1d"},{"url":"https://api.github.com/repos/openframeworks/openFrameworks/labels/development-strategy","name":"development-strategy","color":"37c200"}],"closed_at":null,"created_at":"2012-02-25T03:45:02Z","state":"open","user":{"url":"https://api.github.com/users/damiannz","avatar_url":"https://secure.gravatar.com/avatar/d1e060fe75a68836bf8a3209a9066bbe?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"d1e060fe75a68836bf8a3209a9066bbe","login":"damiannz","id":144366},"id":3382990,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T02:47:26Z","body":"Dummy issue to ensure that the 0076 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/972","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/10","number":10,"closed_issues":0,"title":"0076 Release","due_on":"2012-10-29T07:00:00Z","open_issues":1,"created_at":"2012-02-25T02:46:26Z","state":"open","description":"","id":88838},"number":972,"html_url":"https://github.com/openframeworks/openFrameworks/issues/972","assignee":null,"title":"0076 Release tracking issue","labels":[],"closed_at":null,"created_at":"2012-02-25T02:47:26Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3382766,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-02-25T02:47:37Z","body":"Dummy issue to ensure that the 0075 milestone stays open. Only close immediately before release.","url":"https://api.github.com/repos/openframeworks/openFrameworks/issues/971","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"url":"https://api.github.com/repos/openframeworks/openFrameworks/milestones/9","number":9,"closed_issues":0,"title":"0075 Release","due_on":"2012-09-24T07:00:00Z","open_issues":1,"created_at":"2012-02-25T02:46:15Z","state":"open","description":"","id":88837},"number":971,"html_url":"https://github.com/openframeworks/openFrameworks/issues/971","assignee":null,"title":"0075 Release tracking issue","labels":[],"closed_at":null,"created_at":"2012-02-25T02:47:05Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":3382764,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + diff --git a/lib/github/tests/ReplayData/Persistence.setUp.txt b/lib/github/tests/ReplayData/Persistence.setUp.txt new file mode 100644 index 0000000000..dfc62ba258 --- /dev/null +++ b/lib/github/tests/ReplayData/Persistence.setUp.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/akfish/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4988'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '13698'), ('server', 'GitHub.com'), ('last-modified', 'Thu, 22 Aug 2013 02:09:11 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"8600bedcb7fed1d8065e1693e05529ce"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Thu, 22 Aug 2013 02:13:08 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1377140429')] +{"id":12156762,"name":"PyGithub","full_name":"akfish/PyGithub","owner":{"login":"akfish","id":922715,"avatar_url":"https://1.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"private":false,"html_url":"https://github.com/akfish/PyGithub","description":"Python library implementing the full Github API v3","fork":true,"url":"https://api.github.com/repos/akfish/PyGithub","forks_url":"https://api.github.com/repos/akfish/PyGithub/forks","keys_url":"https://api.github.com/repos/akfish/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/akfish/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/akfish/PyGithub/teams","hooks_url":"https://api.github.com/repos/akfish/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/akfish/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/akfish/PyGithub/events","assignees_url":"https://api.github.com/repos/akfish/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/akfish/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/akfish/PyGithub/tags","blobs_url":"https://api.github.com/repos/akfish/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/akfish/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/akfish/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/akfish/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/akfish/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/akfish/PyGithub/languages","stargazers_url":"https://api.github.com/repos/akfish/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/akfish/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/akfish/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/akfish/PyGithub/subscription","commits_url":"https://api.github.com/repos/akfish/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/akfish/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/akfish/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/akfish/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/akfish/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/akfish/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/akfish/PyGithub/merges","archive_url":"https://api.github.com/repos/akfish/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/akfish/PyGithub/downloads","issues_url":"https://api.github.com/repos/akfish/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/akfish/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/akfish/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/akfish/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/akfish/PyGithub/labels{/name}","created_at":"2013-08-16T10:56:11Z","updated_at":"2013-08-22T02:09:11Z","pushed_at":"2013-08-22T02:09:09Z","git_url":"git://github.com/akfish/PyGithub.git","ssh_url":"git@github.com:akfish/PyGithub.git","clone_url":"https://github.com/akfish/PyGithub.git","svn_url":"https://github.com/akfish/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":6736,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":true,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"master_branch":"master","default_branch":"master","permissions":{"admin":true,"push":true,"pull":true},"network_count":70,"parent":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-08-21T20:32:08Z","pushed_at":"2013-08-21T20:31:45Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":7437,"watchers_count":248,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":70,"mirror_url":null,"open_issues_count":17,"forks":70,"open_issues":17,"watchers":248,"master_branch":"master","default_branch":"master"},"source":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-08-21T20:32:08Z","pushed_at":"2013-08-21T20:31:45Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":7437,"watchers_count":248,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":70,"mirror_url":null,"open_issues_count":17,"forks":70,"open_issues":17,"watchers":248,"master_branch":"master","default_branch":"master"}} + diff --git a/lib/github/tests/ReplayData/Persistence.testLoadAndUpdate.txt b/lib/github/tests/ReplayData/Persistence.testLoadAndUpdate.txt new file mode 100644 index 0000000000..b6d8aeec9b --- /dev/null +++ b/lib/github/tests/ReplayData/Persistence.testLoadAndUpdate.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/akfish/PyGithub +{'If-None-Match': '"8600bedcb7fed1d8065e1693e05529ce"', 'User-Agent': 'PyGithub/Python', 'Authorization': 'Basic login_and_password_removed', 'If-Modified-Since': 'Thu, 22 Aug 2013 02:09:11 GMT'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4987'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '13712'), ('server', 'GitHub.com'), ('last-modified', 'Thu, 22 Aug 2013 02:14:54 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"ef281ef0e821c18f80da36902727160b"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Thu, 22 Aug 2013 02:15:01 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1377140429')] +{"id":12156762,"name":"PyGithub","full_name":"akfish/PyGithub","owner":{"login":"akfish","id":922715,"avatar_url":"https://0.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User"},"private":false,"html_url":"https://github.com/akfish/PyGithub","description":"Python library implementing the full Github API v3 - AKFish Fork","fork":true,"url":"https://api.github.com/repos/akfish/PyGithub","forks_url":"https://api.github.com/repos/akfish/PyGithub/forks","keys_url":"https://api.github.com/repos/akfish/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/akfish/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/akfish/PyGithub/teams","hooks_url":"https://api.github.com/repos/akfish/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/akfish/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/akfish/PyGithub/events","assignees_url":"https://api.github.com/repos/akfish/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/akfish/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/akfish/PyGithub/tags","blobs_url":"https://api.github.com/repos/akfish/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/akfish/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/akfish/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/akfish/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/akfish/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/akfish/PyGithub/languages","stargazers_url":"https://api.github.com/repos/akfish/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/akfish/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/akfish/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/akfish/PyGithub/subscription","commits_url":"https://api.github.com/repos/akfish/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/akfish/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/akfish/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/akfish/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/akfish/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/akfish/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/akfish/PyGithub/merges","archive_url":"https://api.github.com/repos/akfish/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/akfish/PyGithub/downloads","issues_url":"https://api.github.com/repos/akfish/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/akfish/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/akfish/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/akfish/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/akfish/PyGithub/labels{/name}","created_at":"2013-08-16T10:56:11Z","updated_at":"2013-08-22T02:14:54Z","pushed_at":"2013-08-22T02:09:09Z","git_url":"git://github.com/akfish/PyGithub.git","ssh_url":"git@github.com:akfish/PyGithub.git","clone_url":"https://github.com/akfish/PyGithub.git","svn_url":"https://github.com/akfish/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":6736,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":true,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"master_branch":"master","default_branch":"master","permissions":{"admin":true,"push":true,"pull":true},"network_count":70,"parent":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-08-21T20:32:08Z","pushed_at":"2013-08-21T20:31:45Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":7437,"watchers_count":248,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":70,"mirror_url":null,"open_issues_count":17,"forks":70,"open_issues":17,"watchers":248,"master_branch":"master","default_branch":"master"},"source":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-08-21T20:32:08Z","pushed_at":"2013-08-21T20:31:45Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":7437,"watchers_count":248,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":70,"mirror_url":null,"open_issues_count":17,"forks":70,"open_issues":17,"watchers":248,"master_branch":"master","default_branch":"master"}} + diff --git a/lib/github/tests/ReplayData/PullRequest.setUp.txt b/lib/github/tests/ReplayData/PullRequest.setUp.txt new file mode 100644 index 0000000000..53ebaac02c --- /dev/null +++ b/lib/github/tests/ReplayData/PullRequest.setUp.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4950'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"e3511a4776ec399b168eb5f96423f3c8"'), ('date', 'Sun, 27 May 2012 10:32:04 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"collaborators":0,"type":"User","disk_usage":16856,"bio":"","public_gists":3,"url":"https://api.github.com/users/jacquev6","private_gists":5,"plan":{"private_repos":5,"collaborators":1,"name":"micro","space":614400},"company":"Criteo","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","blog":"http://vincent-jacques.net","email":"vincent@vincent-jacques.net","total_private_repos":5,"followers":13,"name":"Vincent Jacques","public_repos":11,"created_at":"2010-07-09T06:10:06Z","location":"Paris, France","id":327146,"owned_private_repos":5,"following":24,"html_url":"https://github.com/jacquev6","hireable":false,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4949'), ('content-length', '1129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"65cfc4c324b5a85af62a0091f4d86503"'), ('date', 'Sun, 27 May 2012 10:32:05 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"clone_url":"https://github.com/jacquev6/PyGithub.git","has_downloads":true,"watchers":15,"git_url":"git://github.com/jacquev6/PyGithub.git","updated_at":"2012-05-27T10:29:10Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","mirror_url":null,"has_wiki":false,"has_issues":true,"fork":false,"forks":3,"size":188,"private":false,"open_issues":16,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-27T10:29:09Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"html_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/pulls/31 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4985'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '4182'), ('server', 'nginx'), ('last-modified', 'Sat, 03 Nov 2012 08:19:40 GMT'), ('connection', 'keep-alive'), ('etag', '"1ec7d9f2ebb27db7dc002f1382d23975"'), ('cache-control', 'private, s-maxage=60, max-age=60'), ('date', 'Sat, 03 Nov 2012 08:19:46 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"additions":511,"deletions":384,"merged_at":"2012-05-27T10:29:07Z","base":{"label":"jacquev6:topic/RewriteWithGeneratedCode","repo":{"watchers":97,"pushed_at":"2012-11-03T08:07:38Z","watchers_count":97,"forks":27,"open_issues":12,"mirror_url":null,"description":"Python library implementing the full Github API v3","owner":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"jacquev6","id":327146},"open_issues_count":12,"url":"https://api.github.com/repos/jacquev6/PyGithub","updated_at":"2012-11-03T08:07:40Z","html_url":"https://github.com/jacquev6/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","language":"Python","has_downloads":true,"ssh_url":"git@github.com:jacquev6/PyGithub.git","size":256,"forks_count":27,"fork":false,"full_name":"jacquev6/PyGithub","name":"PyGithub","created_at":"2012-02-25T12:53:47Z","git_url":"git://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://vincent-jacques.net/PyGithub","has_wiki":true,"private":false,"id":3544490,"has_issues":true},"sha":"ed866fc43833802ab553e5ff8581c81bb00dd433","ref":"topic/RewriteWithGeneratedCode","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"jacquev6","id":327146}},"review_comments":1,"changed_files":45,"merge_commit_sha":"28ae6dd10ebccd5eaf8db8dacb5b699ee7f4a663","closed_at":"2012-05-27T10:29:07Z","number":31,"issue_url":"https://github.com/jacquev6/PyGithub/issues/31","url":"https://api.github.com/repos/jacquev6/PyGithub/pulls/31","milestone":null,"updated_at":"2012-11-03T08:19:40Z","patch_url":"https://github.com/jacquev6/PyGithub/pull/31.patch","html_url":"https://github.com/jacquev6/PyGithub/pull/31","merged_by":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"jacquev6","id":327146},"commits":3,"state":"closed","mergeable":false,"_links":{"review_comments":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/31/comments"},"html":{"href":"https://github.com/jacquev6/PyGithub/pull/31"},"self":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/31"},"issue":{"href":"https://api.github.com/repos/jacquev6/PyGithub/issues/31"},"comments":{"href":"https://api.github.com/repos/jacquev6/PyGithub/issues/31/comments"}},"head":{"label":"BeaverSoftware:master","repo":null,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","ref":"master","user":{"url":"https://api.github.com/users/BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-org-420.png","login":"BeaverSoftware","id":1424031}},"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"jacquev6","id":327146},"diff_url":"https://github.com/jacquev6/PyGithub/pull/31.diff","comments":1,"created_at":"2012-05-27T09:25:36Z","id":1436215,"merged":true,"mergeable_state":"dirty","body":"Body edited by PyGithub","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"jacquev6","id":327146},"title":"Title edited by PyGithub"} + diff --git a/lib/github/tests/ReplayData/PullRequest.testCreateComment.txt b/lib/github/tests/ReplayData/PullRequest.testCreateComment.txt new file mode 100644 index 0000000000..d824a0dffe --- /dev/null +++ b/lib/github/tests/ReplayData/PullRequest.testCreateComment.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/commits/8a4f306d4b223682dd19410d4a9150636ebe4206 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4989'), ('content-length', '19468'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"54236e7f65246e5fdb1122bd461e4a5d"'), ('date', 'Fri, 01 Jun 2012 19:43:25 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","stats":{"additions":131,"total":135,"deletions":4},"files":[{"changes":17,"additions":14,"status":"modified","sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -110,7 +110,7 @@ def user( self ):\n return self.__user\n \n def add_to_labels( self, *labels ):\n- post_parameters = labels\n+ post_parameters = [ label.name for label in labels ]\n status, headers, data = self.__requester.request(\n \"POST\",\n str( self.url ) + \"/labels\",\n@@ -131,7 +131,12 @@ def create_comment( self, body ):\n return IssueComment.IssueComment( self.__requester, data, completion = NoCompletion )\n \n def delete_labels( self ):\n- pass\n+ status, headers, data = self.__requester.request(\n+ \"DELETE\",\n+ str( self.url ) + \"/labels\",\n+ None,\n+ None\n+ )\n \n def edit( self, title = DefaultValueForOptionalParameters, body = DefaultValueForOptionalParameters, assignee = DefaultValueForOptionalParameters, state = DefaultValueForOptionalParameters, milestone = DefaultValueForOptionalParameters, labels = DefaultValueForOptionalParameters ):\n post_parameters = {\n@@ -216,7 +221,13 @@ def remove_from_labels( self, label ):\n )\n \n def set_labels( self, *labels ):\n- pass\n+ post_parameters = [ label.name for label in labels ]\n+ status, headers, data = self.__requester.request(\n+ \"PUT\",\n+ str( self.url ) + \"/labels\",\n+ None,\n+ post_parameters\n+ )\n \n def __initAttributes( self ):\n self.__assignee = None","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Issue.py","filename":"src/github/Issue.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Issue.py","deletions":3},{"changes":7,"additions":7,"status":"modified","sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -1,6 +1,8 @@\n # WARNING: this file is generated automaticaly.\n # Do not modify it manually, your work would be lost.\n \n+import urllib\n+\n import PaginatedList\n from GithubObject import *\n \n@@ -43,6 +45,11 @@ def edit( self, name, color ):\n )\n self.__useAttributes( data )\n \n+ # @toto Remove '_identity' from the normalized json description\n+ @property\n+ def _identity( self ):\n+ return urllib.quote( self.name )\n+\n def __initAttributes( self ):\n self.__color = None\n self.__name = None","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Label.py","filename":"src/github/Label.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Label.py","deletions":0},{"changes":26,"additions":25,"status":"modified","sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -3,7 +3,8 @@\n class Issue( Framework.TestCase ):\r\n def setUp( self ):\r\n Framework.TestCase.setUp( self )\r\n- self.issue = self.g.get_user().get_repo( \"PyGithub\" ).get_issue( 28 )\r\n+ self.repo = self.g.get_user().get_repo( \"PyGithub\" )\r\n+ self.issue = self.repo.get_issue( 28 )\r\n \r\n def testAttributes( self ):\r\n self.assertEqual( self.issue.assignee.login, \"jacquev6\" )\r\n@@ -47,3 +48,26 @@ def testGetComments( self ):\n \r\n def testGetEvents( self ):\r\n self.assertListKeyEqual( self.issue.get_events(), lambda e: e.id, [ 15819975, 15820048 ] )\r\n+\r\n+ def testGetLabels( self ):\r\n+ self.assertListKeyEqual( self.issue.get_labels(), lambda l: l.name, [ \"Bug\", \"Project management\", \"Question\" ] )\r\n+\r\n+ def testAddAndRemoveLabels( self ):\r\n+ bug = self.repo.get_label( \"Bug\" )\r\n+ question = self.repo.get_label( \"Question\" )\r\n+ self.assertListKeyEqual( self.issue.get_labels(), lambda l: l.name, [ \"Bug\", \"Project management\", \"Question\" ] )\r\n+ self.issue.remove_from_labels( bug )\r\n+ self.assertListKeyEqual( self.issue.get_labels(), lambda l: l.name, [ \"Project management\", \"Question\" ] )\r\n+ self.issue.remove_from_labels( question )\r\n+ self.assertListKeyEqual( self.issue.get_labels(), lambda l: l.name, [ \"Project management\" ] )\r\n+ self.issue.add_to_labels( bug, question )\r\n+ self.assertListKeyEqual( self.issue.get_labels(), lambda l: l.name, [ \"Bug\", \"Project management\", \"Question\" ] )\r\n+\r\n+ def testDeleteAndSetLabels( self ):\r\n+ bug = self.repo.get_label( \"Bug\" )\r\n+ question = self.repo.get_label( \"Question\" )\r\n+ self.assertListKeyEqual( self.issue.get_labels(), lambda l: l.name, [ \"Bug\", \"Project management\", \"Question\" ] )\r\n+ self.issue.delete_labels()\r\n+ self.assertListKeyEqual( self.issue.get_labels(), lambda l: l.name, [] )\r\n+ self.issue.set_labels( bug, question )\r\n+ self.assertListKeyEqual( self.issue.get_labels(), lambda l: l.name, [ \"Bug\", \"Question\" ] )\r","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/test/Issue.py","filename":"test/Issue.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/test/Issue.py","deletions":1},{"changes":45,"additions":45,"status":"added","sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -0,0 +1,45 @@\n+GET /repos/jacquev6/PyGithub/labels/Bug {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4992'), ('content-length', '97'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"569c414d87e8ec43ec269a9e28bc2982\"'), ('date', 'Sun, 27 May 2012 09:04:01 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+{\"color\":\"e10c02\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\"}\n+\n+GET /repos/jacquev6/PyGithub/labels/Question {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4991'), ('content-length', '107'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"b659c8dcc1212c71f826547c3cc7ae99\"'), ('date', 'Sun, 27 May 2012 09:04:02 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}\n+\n+GET /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4990'), ('content-length', '335'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"c9f9beccb03030beaf7b80927da6fef6\"'), ('date', 'Sun, 27 May 2012 09:04:03 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\",\"color\":\"e10c02\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\",\"color\":\"444444\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}]\n+\n+DELETE /repos/jacquev6/PyGithub/issues/28/labels/Bug {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4989'), ('content-length', '237'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"46cc70bad88a09b559a5e67089005105\"'), ('date', 'Sun, 27 May 2012 09:04:03 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\",\"color\":\"444444\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}]\n+\n+GET /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4988'), ('content-length', '237'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"46cc70bad88a09b559a5e67089005105\"'), ('date', 'Sun, 27 May 2012 09:04:04 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\",\"color\":\"444444\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}]\n+\n+DELETE /repos/jacquev6/PyGithub/issues/28/labels/Question {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4987'), ('content-length', '129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"5352ae15c8a5a36c6cace63be9367332\"'), ('date', 'Sun, 27 May 2012 09:04:04 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\",\"color\":\"444444\"}]\n+\n+GET /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4986'), ('content-length', '129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"5352ae15c8a5a36c6cace63be9367332\"'), ('date', 'Sun, 27 May 2012 09:04:05 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\",\"color\":\"444444\"}]\n+\n+POST /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} [\"Bug\", \"Question\"]\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4985'), ('content-length', '335'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"d135d74d2ea2159d044676a220d41d3a\"'), ('date', 'Sun, 27 May 2012 09:04:06 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"color\":\"e10c02\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\"},{\"color\":\"444444\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\"},{\"color\":\"02e10c\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\"}]\n+\n+GET /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4984'), ('content-length', '335'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"c9f9beccb03030beaf7b80927da6fef6\"'), ('date', 'Sun, 27 May 2012 09:04:06 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\",\"color\":\"e10c02\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\",\"color\":\"444444\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}]\n+","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/test/ReplayData/Issue.testAddAndRemoveLabels.txt","filename":"test/ReplayData/Issue.testAddAndRemoveLabels.txt","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/test/ReplayData/Issue.testAddAndRemoveLabels.txt","deletions":0},{"changes":35,"additions":35,"status":"added","sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -0,0 +1,35 @@\n+GET /repos/jacquev6/PyGithub/labels/Bug {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4974'), ('content-length', '97'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"fe2e942523eecb156d100829a6347516\"'), ('date', 'Sun, 27 May 2012 09:06:37 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\",\"color\":\"e10c02\"}\n+\n+GET /repos/jacquev6/PyGithub/labels/Question {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4973'), ('content-length', '107'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"931e58d337b2290717303141eda89cd7\"'), ('date', 'Sun, 27 May 2012 09:06:38 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+{\"color\":\"02e10c\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\"}\n+\n+GET /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4972'), ('content-length', '335'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"d135d74d2ea2159d044676a220d41d3a\"'), ('date', 'Sun, 27 May 2012 09:06:39 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"color\":\"e10c02\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\"},{\"color\":\"444444\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\"},{\"color\":\"02e10c\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\"}]\n+\n+DELETE /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} null\n+204\n+[('status', '204 No Content'), ('x-ratelimit-remaining', '4971'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"d41d8cd98f00b204e9800998ecf8427e\"'), ('date', 'Sun, 27 May 2012 09:06:39 GMT')]\n+\n+\n+GET /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4970'), ('content-length', '2'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"d751713988987e9331980363e24189ce\"'), ('date', 'Sun, 27 May 2012 09:06:40 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[]\n+\n+PUT /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} [\"Bug\", \"Question\"]\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4969'), ('content-length', '207'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"1a56634d9c1050a88592ff55ed8adc62\"'), ('date', 'Sun, 27 May 2012 09:06:40 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\",\"color\":\"e10c02\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}]\n+\n+GET /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4968'), ('content-length', '207'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"1a56634d9c1050a88592ff55ed8adc62\"'), ('date', 'Sun, 27 May 2012 09:06:41 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\",\"color\":\"e10c02\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}]\n+","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/test/ReplayData/Issue.testDeleteAndSetLabels.txt","filename":"test/ReplayData/Issue.testDeleteAndSetLabels.txt","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/test/ReplayData/Issue.testDeleteAndSetLabels.txt","deletions":0},{"changes":5,"additions":5,"status":"added","sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","patch":"@@ -0,0 +1,5 @@\n+GET /repos/jacquev6/PyGithub/issues/28/labels {'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4996'), ('content-length', '335'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"c9f9beccb03030beaf7b80927da6fef6\"'), ('date', 'Sun, 27 May 2012 08:56:31 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\",\"color\":\"e10c02\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\",\"color\":\"444444\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}]\n+","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/test/ReplayData/Issue.testGetLabels.txt","filename":"test/ReplayData/Issue.testGetLabels.txt","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/test/ReplayData/Issue.testGetLabels.txt","deletions":0}],"parents":[{"sha":"93dcae5cf207de376c91d0599226e7c7563e1d16","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/93dcae5cf207de376c91d0599226e7c7563e1d16"}],"commit":{"tree":{"sha":"fa0251344d6b0b9f69f33c1faf6e3323001b309d","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/fa0251344d6b0b9f69f33c1faf6e3323001b309d"},"message":"Test (and implement) Issue.*_label*\n\nAnd this commit will be used to test PullRequests","url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/8a4f306d4b223682dd19410d4a9150636ebe4206","author":{"email":"vincent@vincent-jacques.net","date":"2012-05-27T02:07:47-07:00","name":"Vincent Jacques"},"committer":{"email":"vincent@vincent-jacques.net","date":"2012-05-27T02:07:47-07:00","name":"Vincent Jacques"}},"author":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/8a4f306d4b223682dd19410d4a9150636ebe4206","committer":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146}} + +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/pulls/31/comments +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"body": "Comment created by PyGithub", "commit_id": "8a4f306d4b223682dd19410d4a9150636ebe4206", "position": 5, "path": "src/github/Issue.py"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4953'), ('content-length', '937'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"7ca841d45253326d61bee20c809872dc"'), ('date', 'Sun, 27 May 2012 09:40:12 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/pulls/comments/886298')] +{"updated_at":"2012-05-27T09:40:12Z","position":5,"original_position":5,"body":"Comment created by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/pulls/comments/886298","commit_id":"8a4f306d4b223682dd19410d4a9150636ebe4206","created_at":"2012-05-27T09:40:12Z","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"original_commit_id":"8a4f306d4b223682dd19410d4a9150636ebe4206","path":"src/github/Issue.py","id":886298,"_links":{"self":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/comments/886298"},"html":{"href":"https://github.com/jacquev6/PyGithub/pull/31#r886298"},"pull_request":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/31"}}} + diff --git a/lib/github/tests/ReplayData/PullRequest.testCreateIssueComment.txt b/lib/github/tests/ReplayData/PullRequest.testCreateIssueComment.txt new file mode 100644 index 0000000000..16c8a47c15 --- /dev/null +++ b/lib/github/tests/ReplayData/PullRequest.testCreateIssueComment.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/issues/31/comments +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"body": "Issue comment created by PyGithub"} +201 +[('status', '201 Created'), ('content-length', '517'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-remaining', '4976'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/issues/comments/8387331'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Sat, 08 Sep 2012 12:57:51 GMT'), ('etag', '"6d189ee4b6415276097b091d11a77ce0"'), ('content-type', 'application/json; charset=utf-8')] +{"body":"Issue comment created by PyGithub","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/jacquev6","id":327146},"created_at":"2012-09-08T12:57:51Z","updated_at":"2012-09-08T12:57:51Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/8387331","id":8387331} + diff --git a/lib/github/tests/ReplayData/PullRequest.testEditWithAllArguments.txt b/lib/github/tests/ReplayData/PullRequest.testEditWithAllArguments.txt new file mode 100644 index 0000000000..4294575281 --- /dev/null +++ b/lib/github/tests/ReplayData/PullRequest.testEditWithAllArguments.txt @@ -0,0 +1,11 @@ +https +PATCH +api.github.com +None +/repos/jacquev6/PyGithub/pulls/31 +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"body": "Body edited by PyGithub", "state": "open", "title": "Title edited by PyGithub"} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4979'), ('content-length', '4477'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"892e1599c76b5b026bc67423b4a69c26"'), ('date', 'Sun, 27 May 2012 10:18:08 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"merged_by":null,"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"title":"Title edited by PyGithub","state":"open","comments":0,"merged_at":null,"updated_at":"2012-05-27T10:18:08Z","deletions":384,"head":{"user":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","url":"https://api.github.com/users/BeaverSoftware","login":"BeaverSoftware","id":1424031},"repo":{"description":"Python library implementing the full Github API v3","full_name":"BeaverSoftware/PyGithub","has_wiki":false,"has_issues":false,"updated_at":"2012-05-27T09:09:17Z","forks":0,"mirror_url":null,"homepage":"http://vincent-jacques.net/PyGithub","ssh_url":"git@github.com:BeaverSoftware/PyGithub.git","open_issues":0,"fork":true,"svn_url":"https://github.com/BeaverSoftware/PyGithub","pushed_at":"2012-05-27T09:09:17Z","size":176,"html_url":"https://github.com/BeaverSoftware/PyGithub","private":false,"url":"https://api.github.com/repos/BeaverSoftware/PyGithub","clone_url":"https://github.com/BeaverSoftware/PyGithub.git","owner":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","url":"https://api.github.com/users/BeaverSoftware","login":"BeaverSoftware","id":1424031},"name":"PyGithub","has_downloads":true,"language":"Python","watchers":1,"git_url":"git://github.com/BeaverSoftware/PyGithub.git","id":4460787,"created_at":"2012-05-27T08:50:04Z"},"label":"BeaverSoftware:master","sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","ref":"master"},"body":"Body edited by PyGithub","merged":false,"additions":511,"number":31,"_links":{"comments":{"href":"https://api.github.com/repos/jacquev6/PyGithub/issues/31/comments"},"issue":{"href":"https://api.github.com/repos/jacquev6/PyGithub/issues/31"},"self":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/31"},"review_comments":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/31/comments"},"html":{"href":"https://github.com/jacquev6/PyGithub/pull/31"}},"closed_at":null,"diff_url":"https://github.com/jacquev6/PyGithub/pull/31.diff","mergeable":true,"commits":3,"changed_files":45,"html_url":"https://github.com/jacquev6/PyGithub/pull/31","url":"https://api.github.com/repos/jacquev6/PyGithub/pulls/31","review_comments":1,"issue_url":"https://github.com/jacquev6/PyGithub/issues/31","id":1436215,"base":{"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"repo":{"description":"Python library implementing the full Github API v3","full_name":"jacquev6/PyGithub","has_wiki":false,"has_issues":true,"updated_at":"2012-05-27T08:50:04Z","forks":3,"mirror_url":null,"homepage":"http://vincent-jacques.net/PyGithub","ssh_url":"git@github.com:jacquev6/PyGithub.git","open_issues":17,"fork":false,"svn_url":"https://github.com/jacquev6/PyGithub","pushed_at":"2012-05-27T07:29:24Z","size":308,"html_url":"https://github.com/jacquev6/PyGithub","private":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"name":"PyGithub","has_downloads":true,"language":"Python","watchers":15,"git_url":"git://github.com/jacquev6/PyGithub.git","id":3544490,"created_at":"2012-02-25T12:53:47Z"},"label":"jacquev6:topic/RewriteWithGeneratedCode","sha":"ed866fc43833802ab553e5ff8581c81bb00dd433","ref":"topic/RewriteWithGeneratedCode"},"created_at":"2012-05-27T09:25:36Z","patch_url":"https://github.com/jacquev6/PyGithub/pull/31.patch"} + diff --git a/lib/github/tests/ReplayData/PullRequest.testEditWithoutArguments.txt b/lib/github/tests/ReplayData/PullRequest.testEditWithoutArguments.txt new file mode 100644 index 0000000000..2dad8140e6 --- /dev/null +++ b/lib/github/tests/ReplayData/PullRequest.testEditWithoutArguments.txt @@ -0,0 +1,11 @@ +https +PATCH +api.github.com +None +/repos/jacquev6/PyGithub/pulls/31 +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4983'), ('content-length', '4486'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"f64654209621a4117940acf5b8ac7918"'), ('date', 'Sun, 27 May 2012 10:16:02 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"merged":false,"mergeable":true,"head":{"ref":"master","label":"BeaverSoftware:master","repo":{"clone_url":"https://github.com/BeaverSoftware/PyGithub.git","has_downloads":true,"watchers":1,"git_url":"git://github.com/BeaverSoftware/PyGithub.git","updated_at":"2012-05-27T09:09:17Z","homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/BeaverSoftware/PyGithub","mirror_url":null,"has_wiki":false,"has_issues":false,"fork":true,"forks":0,"size":176,"private":false,"open_issues":0,"svn_url":"https://github.com/BeaverSoftware/PyGithub","owner":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:BeaverSoftware/PyGithub.git","pushed_at":"2012-05-27T09:09:17Z","created_at":"2012-05-27T08:50:04Z","id":4460787,"html_url":"https://github.com/BeaverSoftware/PyGithub","full_name":"BeaverSoftware/PyGithub"},"user":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031},"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},"updated_at":"2012-05-27T10:16:02Z","issue_url":"https://github.com/jacquev6/PyGithub/issues/31","body":"Body of the pull request","patch_url":"https://github.com/jacquev6/PyGithub/pull/31.patch","diff_url":"https://github.com/jacquev6/PyGithub/pull/31.diff","url":"https://api.github.com/repos/jacquev6/PyGithub/pulls/31","comments":0,"base":{"ref":"topic/RewriteWithGeneratedCode","label":"jacquev6:topic/RewriteWithGeneratedCode","repo":{"clone_url":"https://github.com/jacquev6/PyGithub.git","has_downloads":true,"watchers":15,"git_url":"git://github.com/jacquev6/PyGithub.git","updated_at":"2012-05-27T08:50:04Z","homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","mirror_url":null,"has_wiki":false,"has_issues":true,"fork":false,"forks":3,"size":308,"private":false,"open_issues":17,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-27T07:29:24Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"html_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub"},"user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"sha":"ed866fc43833802ab553e5ff8581c81bb00dd433"},"number":31,"merged_by":null,"closed_at":null,"title":"Pull request created by PyGithub","deletions":384,"merged_at":null,"_links":{"self":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/31"},"comments":{"href":"https://api.github.com/repos/jacquev6/PyGithub/issues/31/comments"},"issue":{"href":"https://api.github.com/repos/jacquev6/PyGithub/issues/31"},"html":{"href":"https://github.com/jacquev6/PyGithub/pull/31"},"review_comments":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/31/comments"}},"changed_files":45,"additions":511,"created_at":"2012-05-27T09:25:36Z","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"state":"open","id":1436215,"review_comments":1,"commits":3,"html_url":"https://github.com/jacquev6/PyGithub/pull/31"} + diff --git a/lib/github/tests/ReplayData/PullRequest.testGetComments.txt b/lib/github/tests/ReplayData/PullRequest.testGetComments.txt new file mode 100644 index 0000000000..cf5d1609ee --- /dev/null +++ b/lib/github/tests/ReplayData/PullRequest.testGetComments.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/pulls/31/comments +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4987'), ('content-length', '938'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"90a75b1552a6732d4b7440fc1a3e3f74"'), ('date', 'Sun, 27 May 2012 10:10:55 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-27T10:09:07Z","position":5,"original_position":5,"body":"Comment edited by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/pulls/comments/886298","commit_id":"8a4f306d4b223682dd19410d4a9150636ebe4206","_links":{"self":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/comments/886298"},"html":{"href":"https://github.com/jacquev6/PyGithub/pull/31#r886298"},"pull_request":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/31"}},"created_at":"2012-05-27T09:40:12Z","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"original_commit_id":"8a4f306d4b223682dd19410d4a9150636ebe4206","path":"src/github/Issue.py","id":886298}] + diff --git a/lib/github/tests/ReplayData/PullRequest.testGetCommits.txt b/lib/github/tests/ReplayData/PullRequest.testGetCommits.txt new file mode 100644 index 0000000000..7b090ace9c --- /dev/null +++ b/lib/github/tests/ReplayData/PullRequest.testGetCommits.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/pulls/31/commits +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4975'), ('content-length', '4531'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"b4ea459213c1dd415628476619cbbc25"'), ('date', 'Sun, 27 May 2012 10:20:23 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"author":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4aadfff21cdd2d2566b0e4bd7309c233b5f4ae23","committer":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"sha":"4aadfff21cdd2d2566b0e4bd7309c233b5f4ae23","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ed866fc43833802ab553e5ff8581c81bb00dd433","sha":"ed866fc43833802ab553e5ff8581c81bb00dd433"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-27T00:33:23-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/4aadfff21cdd2d2566b0e4bd7309c233b5f4ae23","message":"Improve test coverage","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-27T00:33:23-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/3447efc7d0f2e0197a722c55c13cde7417d1f2d3","sha":"3447efc7d0f2e0197a722c55c13cde7417d1f2d3"}}},{"author":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/93dcae5cf207de376c91d0599226e7c7563e1d16","committer":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"sha":"93dcae5cf207de376c91d0599226e7c7563e1d16","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4aadfff21cdd2d2566b0e4bd7309c233b5f4ae23","sha":"4aadfff21cdd2d2566b0e4bd7309c233b5f4ae23"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-27T00:37:17-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/93dcae5cf207de376c91d0599226e7c7563e1d16","message":"Remove branch coverage for optional attributes (temporary?)","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-27T00:37:17-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/d925a951cd6a5442e91dcfded3171520e9cca5de","sha":"d925a951cd6a5442e91dcfded3171520e9cca5de"}}},{"author":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/8a4f306d4b223682dd19410d4a9150636ebe4206","committer":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/93dcae5cf207de376c91d0599226e7c7563e1d16","sha":"93dcae5cf207de376c91d0599226e7c7563e1d16"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-27T02:07:47-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/8a4f306d4b223682dd19410d4a9150636ebe4206","message":"Test (and implement) Issue.*_label*\n\nAnd this commit will be used to test PullRequests","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-27T02:07:47-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/fa0251344d6b0b9f69f33c1faf6e3323001b309d","sha":"fa0251344d6b0b9f69f33c1faf6e3323001b309d"}}}] + diff --git a/lib/github/tests/ReplayData/PullRequest.testGetFiles.txt b/lib/github/tests/ReplayData/PullRequest.testGetFiles.txt new file mode 100644 index 0000000000..97a6a8d14d --- /dev/null +++ b/lib/github/tests/ReplayData/PullRequest.testGetFiles.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/pulls/31/files +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4971'), ('content-length', '169480'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"a6f83dd38ea0a62d423fefb7b8353561"'), ('date', 'Sun, 27 May 2012 10:21:15 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"patch":"@@ -70,7 +70,7 @@ def __useAttributes( self, attributes ):\n \n # @toto No need to check if attribute is in attributes when attribute is mandatory\n {% for attribute in class.attributes|dictsort:\"name\" %}\n- if \"{{ attribute.name }}\" in attributes and attributes[ \"{{ attribute.name }}\" ] is not None:\n+ if \"{{ attribute.name }}\" in attributes and attributes[ \"{{ attribute.name }}\" ] is not None: # pragma no branch\n \n {% if attribute.type.cardinality == \"scalar\" %}\n {% if attribute.type.simple %}","status":"modified","deletions":1,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/codegen/templates/GithubObject.py","changes":2,"additions":1,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/codegen/templates/GithubObject.py","filename":"codegen/templates/GithubObject.py"},{"patch":"@@ -568,78 +568,78 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"avatar_url\", \"bio\", \"blog\", \"collaborators\", \"company\", \"created_at\", \"disk_usage\", \"email\", \"followers\", \"following\", \"gravatar_id\", \"hireable\", \"html_url\", \"id\", \"location\", \"login\", \"name\", \"owned_private_repos\", \"plan\", \"private_gists\", \"public_gists\", \"public_repos\", \"total_private_repos\", \"type\", \"url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"avatar_url\" in attributes and attributes[ \"avatar_url\" ] is not None:\n+ if \"avatar_url\" in attributes and attributes[ \"avatar_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"avatar_url\" ], ( str, unicode ) )\n self.__avatar_url = attributes[ \"avatar_url\" ]\n- if \"bio\" in attributes and attributes[ \"bio\" ] is not None:\n+ if \"bio\" in attributes and attributes[ \"bio\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"bio\" ], ( str, unicode ) )\n self.__bio = attributes[ \"bio\" ]\n- if \"blog\" in attributes and attributes[ \"blog\" ] is not None:\n+ if \"blog\" in attributes and attributes[ \"blog\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"blog\" ], ( str, unicode ) )\n self.__blog = attributes[ \"blog\" ]\n- if \"collaborators\" in attributes and attributes[ \"collaborators\" ] is not None:\n+ if \"collaborators\" in attributes and attributes[ \"collaborators\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"collaborators\" ], int )\n self.__collaborators = attributes[ \"collaborators\" ]\n- if \"company\" in attributes and attributes[ \"company\" ] is not None:\n+ if \"company\" in attributes and attributes[ \"company\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"company\" ], ( str, unicode ) )\n self.__company = attributes[ \"company\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"created_at\" ], ( str, unicode ) )\n self.__created_at = attributes[ \"created_at\" ]\n- if \"disk_usage\" in attributes and attributes[ \"disk_usage\" ] is not None:\n+ if \"disk_usage\" in attributes and attributes[ \"disk_usage\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"disk_usage\" ], int )\n self.__disk_usage = attributes[ \"disk_usage\" ]\n- if \"email\" in attributes and attributes[ \"email\" ] is not None:\n+ if \"email\" in attributes and attributes[ \"email\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"email\" ], ( str, unicode ) )\n self.__email = attributes[ \"email\" ]\n- if \"followers\" in attributes and attributes[ \"followers\" ] is not None:\n+ if \"followers\" in attributes and attributes[ \"followers\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"followers\" ], int )\n self.__followers = attributes[ \"followers\" ]\n- if \"following\" in attributes and attributes[ \"following\" ] is not None:\n+ if \"following\" in attributes and attributes[ \"following\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"following\" ], int )\n self.__following = attributes[ \"following\" ]\n- if \"gravatar_id\" in attributes and attributes[ \"gravatar_id\" ] is not None:\n+ if \"gravatar_id\" in attributes and attributes[ \"gravatar_id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"gravatar_id\" ], ( str, unicode ) )\n self.__gravatar_id = attributes[ \"gravatar_id\" ]\n- if \"hireable\" in attributes and attributes[ \"hireable\" ] is not None:\n+ if \"hireable\" in attributes and attributes[ \"hireable\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"hireable\" ], bool )\n self.__hireable = attributes[ \"hireable\" ]\n- if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None:\n+ if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"html_url\" ], ( str, unicode ) )\n self.__html_url = attributes[ \"html_url\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"id\" ], int )\n self.__id = attributes[ \"id\" ]\n- if \"location\" in attributes and attributes[ \"location\" ] is not None:\n+ if \"location\" in attributes and attributes[ \"location\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"location\" ], ( str, unicode ) )\n self.__location = attributes[ \"location\" ]\n- if \"login\" in attributes and attributes[ \"login\" ] is not None:\n+ if \"login\" in attributes and attributes[ \"login\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"login\" ], ( str, unicode ) )\n self.__login = attributes[ \"login\" ]\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"name\" ], ( str, unicode ) )\n self.__name = attributes[ \"name\" ]\n- if \"owned_private_repos\" in attributes and attributes[ \"owned_private_repos\" ] is not None:\n+ if \"owned_private_repos\" in attributes and attributes[ \"owned_private_repos\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"owned_private_repos\" ], int )\n self.__owned_private_repos = attributes[ \"owned_private_repos\" ]\n- if \"plan\" in attributes and attributes[ \"plan\" ] is not None:\n+ if \"plan\" in attributes and attributes[ \"plan\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"plan\" ], dict )\n self.__plan = Plan.Plan( self.__requester, attributes[ \"plan\" ], completion = LazyCompletion )\n- if \"private_gists\" in attributes and attributes[ \"private_gists\" ] is not None:\n+ if \"private_gists\" in attributes and attributes[ \"private_gists\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"private_gists\" ], int )\n self.__private_gists = attributes[ \"private_gists\" ]\n- if \"public_gists\" in attributes and attributes[ \"public_gists\" ] is not None:\n+ if \"public_gists\" in attributes and attributes[ \"public_gists\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"public_gists\" ], int )\n self.__public_gists = attributes[ \"public_gists\" ]\n- if \"public_repos\" in attributes and attributes[ \"public_repos\" ] is not None:\n+ if \"public_repos\" in attributes and attributes[ \"public_repos\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"public_repos\" ], int )\n self.__public_repos = attributes[ \"public_repos\" ]\n- if \"total_private_repos\" in attributes and attributes[ \"total_private_repos\" ] is not None:\n+ if \"total_private_repos\" in attributes and attributes[ \"total_private_repos\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"total_private_repos\" ], int )\n self.__total_private_repos = attributes[ \"total_private_repos\" ]\n- if \"type\" in attributes and attributes[ \"type\" ] is not None:\n+ if \"type\" in attributes and attributes[ \"type\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"type\" ], ( str, unicode ) )\n self.__type = attributes[ \"type\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]","status":"modified","deletions":25,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/AuthenticatedUser.py","changes":50,"additions":25,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/AuthenticatedUser.py","filename":"src/github/AuthenticatedUser.py"},{"patch":"@@ -117,21 +117,21 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"app\", \"created_at\", \"id\", \"note\", \"note_url\", \"scopes\", \"token\", \"updated_at\", \"url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"app\" in attributes and attributes[ \"app\" ] is not None:\n+ if \"app\" in attributes and attributes[ \"app\" ] is not None: # pragma no branch\n self.__app = attributes[ \"app\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n self.__created_at = attributes[ \"created_at\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n self.__id = attributes[ \"id\" ]\n- if \"note\" in attributes and attributes[ \"note\" ] is not None:\n+ if \"note\" in attributes and attributes[ \"note\" ] is not None: # pragma no branch\n self.__note = attributes[ \"note\" ]\n- if \"note_url\" in attributes and attributes[ \"note_url\" ] is not None:\n+ if \"note_url\" in attributes and attributes[ \"note_url\" ] is not None: # pragma no branch\n self.__note_url = attributes[ \"note_url\" ]\n- if \"scopes\" in attributes and attributes[ \"scopes\" ] is not None:\n+ if \"scopes\" in attributes and attributes[ \"scopes\" ] is not None: # pragma no branch\n self.__scopes = attributes[ \"scopes\" ]\n- if \"token\" in attributes and attributes[ \"token\" ] is not None:\n+ if \"token\" in attributes and attributes[ \"token\" ] is not None: # pragma no branch\n self.__token = attributes[ \"token\" ]\n- if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None:\n+ if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None: # pragma no branch\n self.__updated_at = attributes[ \"updated_at\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n self.__url = attributes[ \"url\" ]","status":"modified","deletions":9,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Authorization.py","changes":18,"additions":9,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Authorization.py","filename":"src/github/Authorization.py"},{"patch":"@@ -28,9 +28,9 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"commit\", \"name\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"commit\" in attributes and attributes[ \"commit\" ] is not None:\n+ if \"commit\" in attributes and attributes[ \"commit\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"commit\" ], dict )\n self.__commit = Commit.Commit( self.__requester, attributes[ \"commit\" ], completion = LazyCompletion )\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"name\" ], ( str, unicode ) )\n self.__name = attributes[ \"name\" ]","status":"modified","deletions":2,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Branch.py","changes":4,"additions":2,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Branch.py","filename":"src/github/Branch.py"},{"patch":"@@ -120,33 +120,33 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"author\", \"commit\", \"committer\", \"files\", \"parents\", \"sha\", \"stats\", \"url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"author\" in attributes and attributes[ \"author\" ] is not None:\n+ if \"author\" in attributes and attributes[ \"author\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"author\" ], dict )\n self.__author = NamedUser.NamedUser( self.__requester, attributes[ \"author\" ], completion = LazyCompletion )\n- if \"commit\" in attributes and attributes[ \"commit\" ] is not None:\n+ if \"commit\" in attributes and attributes[ \"commit\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"commit\" ], dict )\n self.__commit = GitCommit.GitCommit( self.__requester, attributes[ \"commit\" ], completion = LazyCompletion )\n- if \"committer\" in attributes and attributes[ \"committer\" ] is not None:\n+ if \"committer\" in attributes and attributes[ \"committer\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"committer\" ], dict )\n self.__committer = NamedUser.NamedUser( self.__requester, attributes[ \"committer\" ], completion = LazyCompletion )\n- if \"files\" in attributes and attributes[ \"files\" ] is not None:\n+ if \"files\" in attributes and attributes[ \"files\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"files\" ], list ) and ( len( attributes[ \"files\" ] ) == 0 or isinstance( attributes[ \"files\" ][ 0 ], dict ) )\n self.__files = [\n CommitFile.CommitFile( self.__requester, element, completion = LazyCompletion )\n for element in attributes[ \"files\" ]\n ]\n- if \"parents\" in attributes and attributes[ \"parents\" ] is not None:\n+ if \"parents\" in attributes and attributes[ \"parents\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"parents\" ], list ) and ( len( attributes[ \"parents\" ] ) == 0 or isinstance( attributes[ \"parents\" ][ 0 ], dict ) )\n self.__parents = [\n Commit( self.__requester, element, completion = LazyCompletion )\n for element in attributes[ \"parents\" ]\n ]\n- if \"sha\" in attributes and attributes[ \"sha\" ] is not None:\n+ if \"sha\" in attributes and attributes[ \"sha\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"sha\" ], ( str, unicode ) )\n self.__sha = attributes[ \"sha\" ]\n- if \"stats\" in attributes and attributes[ \"stats\" ] is not None:\n+ if \"stats\" in attributes and attributes[ \"stats\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"stats\" ], dict )\n self.__stats = CommitStats.CommitStats( self.__requester, attributes[ \"stats\" ], completion = LazyCompletion )\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]","status":"modified","deletions":8,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Commit.py","changes":16,"additions":8,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Commit.py","filename":"src/github/Commit.py"},{"patch":"@@ -121,36 +121,36 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"body\", \"commit_id\", \"created_at\", \"html_url\", \"id\", \"line\", \"path\", \"position\", \"updated_at\", \"url\", \"user\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"body\" in attributes and attributes[ \"body\" ] is not None:\n+ if \"body\" in attributes and attributes[ \"body\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"body\" ], ( str, unicode ) )\n self.__body = attributes[ \"body\" ]\n- if \"commit_id\" in attributes and attributes[ \"commit_id\" ] is not None:\n+ if \"commit_id\" in attributes and attributes[ \"commit_id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"commit_id\" ], ( str, unicode ) )\n self.__commit_id = attributes[ \"commit_id\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"created_at\" ], ( str, unicode ) )\n self.__created_at = attributes[ \"created_at\" ]\n- if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None:\n+ if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"html_url\" ], ( str, unicode ) )\n self.__html_url = attributes[ \"html_url\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"id\" ], int )\n self.__id = attributes[ \"id\" ]\n- if \"line\" in attributes and attributes[ \"line\" ] is not None:\n+ if \"line\" in attributes and attributes[ \"line\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"line\" ], int )\n self.__line = attributes[ \"line\" ]\n- if \"path\" in attributes and attributes[ \"path\" ] is not None:\n+ if \"path\" in attributes and attributes[ \"path\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"path\" ], ( str, unicode ) )\n self.__path = attributes[ \"path\" ]\n- if \"position\" in attributes and attributes[ \"position\" ] is not None:\n+ if \"position\" in attributes and attributes[ \"position\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"position\" ], int )\n self.__position = attributes[ \"position\" ]\n- if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None:\n+ if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"updated_at\" ], ( str, unicode ) )\n self.__updated_at = attributes[ \"updated_at\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]\n- if \"user\" in attributes and attributes[ \"user\" ] is not None:\n+ if \"user\" in attributes and attributes[ \"user\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"user\" ], dict )\n self.__user = NamedUser.NamedUser( self.__requester, attributes[ \"user\" ], completion = LazyCompletion )","status":"modified","deletions":11,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/CommitComment.py","changes":22,"additions":11,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/CommitComment.py","filename":"src/github/CommitComment.py"},{"patch":"@@ -62,21 +62,21 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"additions\", \"blob_url\", \"changes\", \"deletions\", \"filename\", \"patch\", \"raw_url\", \"sha\", \"status\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"additions\" in attributes and attributes[ \"additions\" ] is not None:\n+ if \"additions\" in attributes and attributes[ \"additions\" ] is not None: # pragma no branch\n self.__additions = attributes[ \"additions\" ]\n- if \"blob_url\" in attributes and attributes[ \"blob_url\" ] is not None:\n+ if \"blob_url\" in attributes and attributes[ \"blob_url\" ] is not None: # pragma no branch\n self.__blob_url = attributes[ \"blob_url\" ]\n- if \"changes\" in attributes and attributes[ \"changes\" ] is not None:\n+ if \"changes\" in attributes and attributes[ \"changes\" ] is not None: # pragma no branch\n self.__changes = attributes[ \"changes\" ]\n- if \"deletions\" in attributes and attributes[ \"deletions\" ] is not None:\n+ if \"deletions\" in attributes and attributes[ \"deletions\" ] is not None: # pragma no branch\n self.__deletions = attributes[ \"deletions\" ]\n- if \"filename\" in attributes and attributes[ \"filename\" ] is not None:\n+ if \"filename\" in attributes and attributes[ \"filename\" ] is not None: # pragma no branch\n self.__filename = attributes[ \"filename\" ]\n- if \"patch\" in attributes and attributes[ \"patch\" ] is not None:\n+ if \"patch\" in attributes and attributes[ \"patch\" ] is not None: # pragma no branch\n self.__patch = attributes[ \"patch\" ]\n- if \"raw_url\" in attributes and attributes[ \"raw_url\" ] is not None:\n+ if \"raw_url\" in attributes and attributes[ \"raw_url\" ] is not None: # pragma no branch\n self.__raw_url = attributes[ \"raw_url\" ]\n- if \"sha\" in attributes and attributes[ \"sha\" ] is not None:\n+ if \"sha\" in attributes and attributes[ \"sha\" ] is not None: # pragma no branch\n self.__sha = attributes[ \"sha\" ]\n- if \"status\" in attributes and attributes[ \"status\" ] is not None:\n+ if \"status\" in attributes and attributes[ \"status\" ] is not None: # pragma no branch\n self.__status = attributes[ \"status\" ]","status":"modified","deletions":9,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/CommitFile.py","changes":18,"additions":9,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/CommitFile.py","filename":"src/github/CommitFile.py"},{"patch":"@@ -32,12 +32,12 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"additions\", \"deletions\", \"total\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"additions\" in attributes and attributes[ \"additions\" ] is not None:\n+ if \"additions\" in attributes and attributes[ \"additions\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"additions\" ], int )\n self.__additions = attributes[ \"additions\" ]\n- if \"deletions\" in attributes and attributes[ \"deletions\" ] is not None:\n+ if \"deletions\" in attributes and attributes[ \"deletions\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"deletions\" ], int )\n self.__deletions = attributes[ \"deletions\" ]\n- if \"total\" in attributes and attributes[ \"total\" ] is not None:\n+ if \"total\" in attributes and attributes[ \"total\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"total\" ], int )\n self.__total = attributes[ \"total\" ]","status":"modified","deletions":3,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/CommitStats.py","changes":6,"additions":3,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/CommitStats.py","filename":"src/github/CommitStats.py"},{"patch":"@@ -162,43 +162,43 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"accesskeyid\", \"acl\", \"bucket\", \"content_type\", \"created_at\", \"description\", \"download_count\", \"expirationdate\", \"html_url\", \"id\", \"mime_type\", \"name\", \"path\", \"policy\", \"prefix\", \"redirect\", \"s3_url\", \"signature\", \"size\", \"url\", \"x-amz-meta-content-disposition\" ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"accesskeyid\" in attributes and attributes[ \"accesskeyid\" ] is not None:\n+ if \"accesskeyid\" in attributes and attributes[ \"accesskeyid\" ] is not None: # pragma no branch\n self.__accesskeyid = attributes[ \"accesskeyid\" ]\n- if \"acl\" in attributes and attributes[ \"acl\" ] is not None:\n+ if \"acl\" in attributes and attributes[ \"acl\" ] is not None: # pragma no branch\n self.__acl = attributes[ \"acl\" ]\n- if \"bucket\" in attributes and attributes[ \"bucket\" ] is not None:\n+ if \"bucket\" in attributes and attributes[ \"bucket\" ] is not None: # pragma no branch\n self.__bucket = attributes[ \"bucket\" ]\n- if \"content_type\" in attributes and attributes[ \"content_type\" ] is not None:\n+ if \"content_type\" in attributes and attributes[ \"content_type\" ] is not None: # pragma no branch\n self.__content_type = attributes[ \"content_type\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n self.__created_at = attributes[ \"created_at\" ]\n- if \"description\" in attributes and attributes[ \"description\" ] is not None:\n+ if \"description\" in attributes and attributes[ \"description\" ] is not None: # pragma no branch\n self.__description = attributes[ \"description\" ]\n- if \"download_count\" in attributes and attributes[ \"download_count\" ] is not None:\n+ if \"download_count\" in attributes and attributes[ \"download_count\" ] is not None: # pragma no branch\n self.__download_count = attributes[ \"download_count\" ]\n- if \"expirationdate\" in attributes and attributes[ \"expirationdate\" ] is not None:\n+ if \"expirationdate\" in attributes and attributes[ \"expirationdate\" ] is not None: # pragma no branch\n self.__expirationdate = attributes[ \"expirationdate\" ]\n- if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None:\n+ if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None: # pragma no branch\n self.__html_url = attributes[ \"html_url\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n self.__id = attributes[ \"id\" ]\n- if \"mime_type\" in attributes and attributes[ \"mime_type\" ] is not None:\n+ if \"mime_type\" in attributes and attributes[ \"mime_type\" ] is not None: # pragma no branch\n self.__mime_type = attributes[ \"mime_type\" ]\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n self.__name = attributes[ \"name\" ]\n- if \"path\" in attributes and attributes[ \"path\" ] is not None:\n+ if \"path\" in attributes and attributes[ \"path\" ] is not None: # pragma no branch\n self.__path = attributes[ \"path\" ]\n- if \"policy\" in attributes and attributes[ \"policy\" ] is not None:\n+ if \"policy\" in attributes and attributes[ \"policy\" ] is not None: # pragma no branch\n self.__policy = attributes[ \"policy\" ]\n- if \"prefix\" in attributes and attributes[ \"prefix\" ] is not None:\n+ if \"prefix\" in attributes and attributes[ \"prefix\" ] is not None: # pragma no branch\n self.__prefix = attributes[ \"prefix\" ]\n- if \"redirect\" in attributes and attributes[ \"redirect\" ] is not None:\n+ if \"redirect\" in attributes and attributes[ \"redirect\" ] is not None: # pragma no branch\n self.__redirect = attributes[ \"redirect\" ]\n- if \"s3_url\" in attributes and attributes[ \"s3_url\" ] is not None:\n+ if \"s3_url\" in attributes and attributes[ \"s3_url\" ] is not None: # pragma no branch\n self.__s3_url = attributes[ \"s3_url\" ]\n- if \"signature\" in attributes and attributes[ \"signature\" ] is not None:\n+ if \"signature\" in attributes and attributes[ \"signature\" ] is not None: # pragma no branch\n self.__signature = attributes[ \"signature\" ]\n- if \"size\" in attributes and attributes[ \"size\" ] is not None:\n+ if \"size\" in attributes and attributes[ \"size\" ] is not None: # pragma no branch\n self.__size = attributes[ \"size\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n self.__url = attributes[ \"url\" ]","status":"modified","deletions":20,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Download.py","changes":40,"additions":20,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Download.py","filename":"src/github/Download.py"},{"patch":"@@ -60,22 +60,22 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"actor\", \"created_at\", \"id\", \"org\", \"payload\", \"public\", \"repo\", \"type\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"actor\" in attributes and attributes[ \"actor\" ] is not None:\n+ if \"actor\" in attributes and attributes[ \"actor\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"actor\" ], dict )\n self.__actor = NamedUser.NamedUser( self.__requester, attributes[ \"actor\" ], completion = LazyCompletion )\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n self.__created_at = attributes[ \"created_at\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n self.__id = attributes[ \"id\" ]\n- if \"org\" in attributes and attributes[ \"org\" ] is not None:\n+ if \"org\" in attributes and attributes[ \"org\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"org\" ], dict )\n self.__org = Organization.Organization( self.__requester, attributes[ \"org\" ], completion = LazyCompletion )\n- if \"payload\" in attributes and attributes[ \"payload\" ] is not None:\n+ if \"payload\" in attributes and attributes[ \"payload\" ] is not None: # pragma no branch\n self.__payload = attributes[ \"payload\" ]\n- if \"public\" in attributes and attributes[ \"public\" ] is not None:\n+ if \"public\" in attributes and attributes[ \"public\" ] is not None: # pragma no branch\n self.__public = attributes[ \"public\" ]\n- if \"repo\" in attributes and attributes[ \"repo\" ] is not None:\n+ if \"repo\" in attributes and attributes[ \"repo\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"repo\" ], dict )\n self.__repo = Repository.Repository( self.__requester, attributes[ \"repo\" ], completion = LazyCompletion )\n- if \"type\" in attributes and attributes[ \"type\" ] is not None:\n+ if \"type\" in attributes and attributes[ \"type\" ] is not None: # pragma no branch\n self.__type = attributes[ \"type\" ]","status":"modified","deletions":8,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Event.py","changes":16,"additions":8,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Event.py","filename":"src/github/Event.py"},{"patch":"@@ -220,53 +220,53 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"comments\", \"created_at\", \"description\", \"files\", \"fork_of\", \"forks\", \"git_pull_url\", \"git_push_url\", \"history\", \"html_url\", \"id\", \"public\", \"updated_at\", \"url\", \"user\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"comments\" in attributes and attributes[ \"comments\" ] is not None:\n+ if \"comments\" in attributes and attributes[ \"comments\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"comments\" ], int )\n self.__comments = attributes[ \"comments\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"created_at\" ], ( str, unicode ) )\n self.__created_at = attributes[ \"created_at\" ]\n- if \"description\" in attributes and attributes[ \"description\" ] is not None:\n+ if \"description\" in attributes and attributes[ \"description\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"description\" ], ( str, unicode ) )\n self.__description = attributes[ \"description\" ]\n- if \"files\" in attributes and attributes[ \"files\" ] is not None:\n+ if \"files\" in attributes and attributes[ \"files\" ] is not None: # pragma no branch\n self.__files = attributes[ \"files\" ]\n- if \"fork_of\" in attributes and attributes[ \"fork_of\" ] is not None:\n+ if \"fork_of\" in attributes and attributes[ \"fork_of\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"fork_of\" ], dict )\n self.__fork_of = Gist( self.__requester, attributes[ \"fork_of\" ], completion = LazyCompletion )\n- if \"forks\" in attributes and attributes[ \"forks\" ] is not None:\n+ if \"forks\" in attributes and attributes[ \"forks\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"forks\" ], list ) and ( len( attributes[ \"forks\" ] ) == 0 or isinstance( attributes[ \"forks\" ][ 0 ], dict ) )\n self.__forks = [\n Gist( self.__requester, element, completion = LazyCompletion )\n for element in attributes[ \"forks\" ]\n ]\n- if \"git_pull_url\" in attributes and attributes[ \"git_pull_url\" ] is not None:\n+ if \"git_pull_url\" in attributes and attributes[ \"git_pull_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"git_pull_url\" ], ( str, unicode ) )\n self.__git_pull_url = attributes[ \"git_pull_url\" ]\n- if \"git_push_url\" in attributes and attributes[ \"git_push_url\" ] is not None:\n+ if \"git_push_url\" in attributes and attributes[ \"git_push_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"git_push_url\" ], ( str, unicode ) )\n self.__git_push_url = attributes[ \"git_push_url\" ]\n- if \"history\" in attributes and attributes[ \"history\" ] is not None:\n+ if \"history\" in attributes and attributes[ \"history\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"history\" ], list ) and ( len( attributes[ \"history\" ] ) == 0 or isinstance( attributes[ \"history\" ][ 0 ], dict ) )\n self.__history = [\n GistHistoryState.GistHistoryState( self.__requester, element, completion = LazyCompletion )\n for element in attributes[ \"history\" ]\n ]\n- if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None:\n+ if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"html_url\" ], ( str, unicode ) )\n self.__html_url = attributes[ \"html_url\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"id\" ], ( str, unicode ) )\n self.__id = attributes[ \"id\" ]\n- if \"public\" in attributes and attributes[ \"public\" ] is not None:\n+ if \"public\" in attributes and attributes[ \"public\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"public\" ], bool )\n self.__public = attributes[ \"public\" ]\n- if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None:\n+ if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"updated_at\" ], ( str, unicode ) )\n self.__updated_at = attributes[ \"updated_at\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]\n- if \"user\" in attributes and attributes[ \"user\" ] is not None:\n+ if \"user\" in attributes and attributes[ \"user\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"user\" ], dict )\n self.__user = NamedUser.NamedUser( self.__requester, attributes[ \"user\" ], completion = LazyCompletion )","status":"modified","deletions":15,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Gist.py","changes":30,"additions":15,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Gist.py","filename":"src/github/Gist.py"},{"patch":"@@ -68,16 +68,16 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"body\", \"created_at\", \"id\", \"updated_at\", \"url\", \"user\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"body\" in attributes and attributes[ \"body\" ] is not None:\n+ if \"body\" in attributes and attributes[ \"body\" ] is not None: # pragma no branch\n self.__body = attributes[ \"body\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n self.__created_at = attributes[ \"created_at\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n self.__id = attributes[ \"id\" ]\n- if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None:\n+ if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None: # pragma no branch\n self.__updated_at = attributes[ \"updated_at\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n self.__url = attributes[ \"url\" ]\n- if \"user\" in attributes and attributes[ \"user\" ] is not None:\n+ if \"user\" in attributes and attributes[ \"user\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"user\" ], dict )\n self.__user = NamedUser.NamedUser( self.__requester, attributes[ \"user\" ], completion = LazyCompletion )","status":"modified","deletions":6,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GistComment.py","changes":12,"additions":6,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GistComment.py","filename":"src/github/GistComment.py"},{"patch":"@@ -44,18 +44,18 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"change_status\", \"committed_at\", \"url\", \"user\", \"version\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"change_status\" in attributes and attributes[ \"change_status\" ] is not None:\n+ if \"change_status\" in attributes and attributes[ \"change_status\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"change_status\" ], dict )\n self.__change_status = CommitStats.CommitStats( self.__requester, attributes[ \"change_status\" ], completion = LazyCompletion )\n- if \"committed_at\" in attributes and attributes[ \"committed_at\" ] is not None:\n+ if \"committed_at\" in attributes and attributes[ \"committed_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"committed_at\" ], ( str, unicode ) )\n self.__committed_at = attributes[ \"committed_at\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]\n- if \"user\" in attributes and attributes[ \"user\" ] is not None:\n+ if \"user\" in attributes and attributes[ \"user\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"user\" ], dict )\n self.__user = NamedUser.NamedUser( self.__requester, attributes[ \"user\" ], completion = LazyCompletion )\n- if \"version\" in attributes and attributes[ \"version\" ] is not None:\n+ if \"version\" in attributes and attributes[ \"version\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"version\" ], ( str, unicode ) )\n self.__version = attributes[ \"version\" ]","status":"modified","deletions":5,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GistHistoryState.py","changes":10,"additions":5,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GistHistoryState.py","filename":"src/github/GistHistoryState.py"},{"patch":"@@ -32,12 +32,12 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"date\", \"email\", \"name\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"date\" in attributes and attributes[ \"date\" ] is not None:\n+ if \"date\" in attributes and attributes[ \"date\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"date\" ], ( str, unicode ) )\n self.__date = attributes[ \"date\" ]\n- if \"email\" in attributes and attributes[ \"email\" ] is not None:\n+ if \"email\" in attributes and attributes[ \"email\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"email\" ], ( str, unicode ) )\n self.__email = attributes[ \"email\" ]\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"name\" ], ( str, unicode ) )\n self.__name = attributes[ \"name\" ]","status":"modified","deletions":3,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitAuthor.py","changes":6,"additions":3,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitAuthor.py","filename":"src/github/GitAuthor.py"},{"patch":"@@ -42,18 +42,18 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"content\", \"encoding\", \"sha\", \"size\", \"url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"content\" in attributes and attributes[ \"content\" ] is not None:\n+ if \"content\" in attributes and attributes[ \"content\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"content\" ], ( str, unicode ) )\n self.__content = attributes[ \"content\" ]\n- if \"encoding\" in attributes and attributes[ \"encoding\" ] is not None:\n+ if \"encoding\" in attributes and attributes[ \"encoding\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"encoding\" ], ( str, unicode ) )\n self.__encoding = attributes[ \"encoding\" ]\n- if \"sha\" in attributes and attributes[ \"sha\" ] is not None:\n+ if \"sha\" in attributes and attributes[ \"sha\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"sha\" ], ( str, unicode ) )\n self.__sha = attributes[ \"sha\" ]\n- if \"size\" in attributes and attributes[ \"size\" ] is not None:\n+ if \"size\" in attributes and attributes[ \"size\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"size\" ], int )\n self.__size = attributes[ \"size\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]","status":"modified","deletions":5,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitBlob.py","changes":10,"additions":5,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitBlob.py","filename":"src/github/GitBlob.py"},{"patch":"@@ -55,27 +55,27 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"author\", \"committer\", \"message\", \"parents\", \"sha\", \"tree\", \"url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"author\" in attributes and attributes[ \"author\" ] is not None:\n+ if \"author\" in attributes and attributes[ \"author\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"author\" ], dict )\n self.__author = GitAuthor.GitAuthor( self.__requester, attributes[ \"author\" ], completion = LazyCompletion )\n- if \"committer\" in attributes and attributes[ \"committer\" ] is not None:\n+ if \"committer\" in attributes and attributes[ \"committer\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"committer\" ], dict )\n self.__committer = GitAuthor.GitAuthor( self.__requester, attributes[ \"committer\" ], completion = LazyCompletion )\n- if \"message\" in attributes and attributes[ \"message\" ] is not None:\n+ if \"message\" in attributes and attributes[ \"message\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"message\" ], ( str, unicode ) )\n self.__message = attributes[ \"message\" ]\n- if \"parents\" in attributes and attributes[ \"parents\" ] is not None:\n+ if \"parents\" in attributes and attributes[ \"parents\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"parents\" ], list ) and ( len( attributes[ \"parents\" ] ) == 0 or isinstance( attributes[ \"parents\" ][ 0 ], dict ) )\n self.__parents = [\n GitCommit( self.__requester, element, completion = LazyCompletion )\n for element in attributes[ \"parents\" ]\n ]\n- if \"sha\" in attributes and attributes[ \"sha\" ] is not None:\n+ if \"sha\" in attributes and attributes[ \"sha\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"sha\" ], ( str, unicode ) )\n self.__sha = attributes[ \"sha\" ]\n- if \"tree\" in attributes and attributes[ \"tree\" ] is not None:\n+ if \"tree\" in attributes and attributes[ \"tree\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"tree\" ], dict )\n self.__tree = GitTree.GitTree( self.__requester, attributes[ \"tree\" ], completion = LazyCompletion )\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]","status":"modified","deletions":7,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitCommit.py","changes":14,"additions":7,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitCommit.py","filename":"src/github/GitCommit.py"},{"patch":"@@ -32,12 +32,12 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"sha\", \"type\", \"url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"sha\" in attributes and attributes[ \"sha\" ] is not None:\n+ if \"sha\" in attributes and attributes[ \"sha\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"sha\" ], ( str, unicode ) )\n self.__sha = attributes[ \"sha\" ]\n- if \"type\" in attributes and attributes[ \"type\" ] is not None:\n+ if \"type\" in attributes and attributes[ \"type\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"type\" ], ( str, unicode ) )\n self.__type = attributes[ \"type\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]","status":"modified","deletions":3,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitObject.py","changes":6,"additions":3,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitObject.py","filename":"src/github/GitObject.py"},{"patch":"@@ -55,12 +55,12 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"object\", \"ref\", \"url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"object\" in attributes and attributes[ \"object\" ] is not None:\n+ if \"object\" in attributes and attributes[ \"object\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"object\" ], dict )\n self.__object = GitObject.GitObject( self.__requester, attributes[ \"object\" ], completion = LazyCompletion )\n- if \"ref\" in attributes and attributes[ \"ref\" ] is not None:\n+ if \"ref\" in attributes and attributes[ \"ref\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"ref\" ], ( str, unicode ) )\n self.__ref = attributes[ \"ref\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]","status":"modified","deletions":3,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitRef.py","changes":6,"additions":3,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitRef.py","filename":"src/github/GitRef.py"},{"patch":"@@ -49,21 +49,21 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"message\", \"object\", \"sha\", \"tag\", \"tagger\", \"url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"message\" in attributes and attributes[ \"message\" ] is not None:\n+ if \"message\" in attributes and attributes[ \"message\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"message\" ], ( str, unicode ) )\n self.__message = attributes[ \"message\" ]\n- if \"object\" in attributes and attributes[ \"object\" ] is not None:\n+ if \"object\" in attributes and attributes[ \"object\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"object\" ], dict )\n self.__object = GitObject.GitObject( self.__requester, attributes[ \"object\" ], completion = LazyCompletion )\n- if \"sha\" in attributes and attributes[ \"sha\" ] is not None:\n+ if \"sha\" in attributes and attributes[ \"sha\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"sha\" ], ( str, unicode ) )\n self.__sha = attributes[ \"sha\" ]\n- if \"tag\" in attributes and attributes[ \"tag\" ] is not None:\n+ if \"tag\" in attributes and attributes[ \"tag\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"tag\" ], ( str, unicode ) )\n self.__tag = attributes[ \"tag\" ]\n- if \"tagger\" in attributes and attributes[ \"tagger\" ] is not None:\n+ if \"tagger\" in attributes and attributes[ \"tagger\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"tagger\" ], dict )\n self.__tagger = GitAuthor.GitAuthor( self.__requester, attributes[ \"tagger\" ], completion = LazyCompletion )\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]","status":"modified","deletions":6,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitTag.py","changes":12,"additions":6,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitTag.py","filename":"src/github/GitTag.py"},{"patch":"@@ -33,15 +33,15 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"sha\", \"tree\", \"url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"sha\" in attributes and attributes[ \"sha\" ] is not None:\n+ if \"sha\" in attributes and attributes[ \"sha\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"sha\" ], ( str, unicode ) )\n self.__sha = attributes[ \"sha\" ]\n- if \"tree\" in attributes and attributes[ \"tree\" ] is not None:\n+ if \"tree\" in attributes and attributes[ \"tree\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"tree\" ], list ) and ( len( attributes[ \"tree\" ] ) == 0 or isinstance( attributes[ \"tree\" ][ 0 ], dict ) )\n self.__tree = [\n GitTreeElement.GitTreeElement( self.__requester, element, completion = LazyCompletion )\n for element in attributes[ \"tree\" ]\n ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]","status":"modified","deletions":3,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitTree.py","changes":6,"additions":3,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitTree.py","filename":"src/github/GitTree.py"},{"patch":"@@ -47,21 +47,21 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"mode\", \"path\", \"sha\", \"size\", \"type\", \"url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"mode\" in attributes and attributes[ \"mode\" ] is not None:\n+ if \"mode\" in attributes and attributes[ \"mode\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"mode\" ], ( str, unicode ) )\n self.__mode = attributes[ \"mode\" ]\n- if \"path\" in attributes and attributes[ \"path\" ] is not None:\n+ if \"path\" in attributes and attributes[ \"path\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"path\" ], ( str, unicode ) )\n self.__path = attributes[ \"path\" ]\n- if \"sha\" in attributes and attributes[ \"sha\" ] is not None:\n+ if \"sha\" in attributes and attributes[ \"sha\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"sha\" ], ( str, unicode ) )\n self.__sha = attributes[ \"sha\" ]\n- if \"size\" in attributes and attributes[ \"size\" ] is not None:\n+ if \"size\" in attributes and attributes[ \"size\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"size\" ], int )\n self.__size = attributes[ \"size\" ]\n- if \"type\" in attributes and attributes[ \"type\" ] is not None:\n+ if \"type\" in attributes and attributes[ \"type\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"type\" ], ( str, unicode ) )\n self.__type = attributes[ \"type\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]","status":"modified","deletions":6,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitTreeElement.py","changes":12,"additions":6,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitTreeElement.py","filename":"src/github/GitTreeElement.py"},{"patch":"@@ -99,21 +99,21 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"active\", \"config\", \"created_at\", \"events\", \"id\", \"last_response\", \"name\", \"updated_at\", \"url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"active\" in attributes and attributes[ \"active\" ] is not None:\n+ if \"active\" in attributes and attributes[ \"active\" ] is not None: # pragma no branch\n self.__active = attributes[ \"active\" ]\n- if \"config\" in attributes and attributes[ \"config\" ] is not None:\n+ if \"config\" in attributes and attributes[ \"config\" ] is not None: # pragma no branch\n self.__config = attributes[ \"config\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n self.__created_at = attributes[ \"created_at\" ]\n- if \"events\" in attributes and attributes[ \"events\" ] is not None:\n+ if \"events\" in attributes and attributes[ \"events\" ] is not None: # pragma no branch\n self.__events = attributes[ \"events\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n self.__id = attributes[ \"id\" ]\n- if \"last_response\" in attributes and attributes[ \"last_response\" ] is not None:\n+ if \"last_response\" in attributes and attributes[ \"last_response\" ] is not None: # pragma no branch\n self.__last_response = attributes[ \"last_response\" ]\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n self.__name = attributes[ \"name\" ]\n- if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None:\n+ if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None: # pragma no branch\n self.__updated_at = attributes[ \"updated_at\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n self.__url = attributes[ \"url\" ]","status":"modified","deletions":9,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Hook.py","changes":18,"additions":9,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Hook.py","filename":"src/github/Hook.py"},{"patch":"@@ -110,7 +110,7 @@ def user( self ):\n return self.__user\n \n def add_to_labels( self, *labels ):\n- post_parameters = labels\n+ post_parameters = [ label.name for label in labels ]\n status, headers, data = self.__requester.request(\n \"POST\",\n str( self.url ) + \"/labels\",\n@@ -131,7 +131,12 @@ def create_comment( self, body ):\n return IssueComment.IssueComment( self.__requester, data, completion = NoCompletion )\n \n def delete_labels( self ):\n- pass\n+ status, headers, data = self.__requester.request(\n+ \"DELETE\",\n+ str( self.url ) + \"/labels\",\n+ None,\n+ None\n+ )\n \n def edit( self, title = DefaultValueForOptionalParameters, body = DefaultValueForOptionalParameters, assignee = DefaultValueForOptionalParameters, state = DefaultValueForOptionalParameters, milestone = DefaultValueForOptionalParameters, labels = DefaultValueForOptionalParameters ):\n post_parameters = {\n@@ -216,7 +221,13 @@ def remove_from_labels( self, label ):\n )\n \n def set_labels( self, *labels ):\n- pass\n+ post_parameters = [ label.name for label in labels ]\n+ status, headers, data = self.__requester.request(\n+ \"PUT\",\n+ str( self.url ) + \"/labels\",\n+ None,\n+ post_parameters\n+ )\n \n def __initAttributes( self ):\n self.__assignee = None\n@@ -257,59 +268,59 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"assignee\", \"body\", \"closed_at\", \"closed_by\", \"comments\", \"created_at\", \"html_url\", \"id\", \"labels\", \"milestone\", \"number\", \"pull_request\", \"repository\", \"state\", \"title\", \"updated_at\", \"url\", \"user\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"assignee\" in attributes and attributes[ \"assignee\" ] is not None:\n+ if \"assignee\" in attributes and attributes[ \"assignee\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"assignee\" ], dict )\n self.__assignee = NamedUser.NamedUser( self.__requester, attributes[ \"assignee\" ], completion = LazyCompletion )\n- if \"body\" in attributes and attributes[ \"body\" ] is not None:\n+ if \"body\" in attributes and attributes[ \"body\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"body\" ], ( str, unicode ) )\n self.__body = attributes[ \"body\" ]\n- if \"closed_at\" in attributes and attributes[ \"closed_at\" ] is not None:\n+ if \"closed_at\" in attributes and attributes[ \"closed_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"closed_at\" ], ( str, unicode ) )\n self.__closed_at = attributes[ \"closed_at\" ]\n- if \"closed_by\" in attributes and attributes[ \"closed_by\" ] is not None:\n+ if \"closed_by\" in attributes and attributes[ \"closed_by\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"closed_by\" ], dict )\n self.__closed_by = NamedUser.NamedUser( self.__requester, attributes[ \"closed_by\" ], completion = LazyCompletion )\n- if \"comments\" in attributes and attributes[ \"comments\" ] is not None:\n+ if \"comments\" in attributes and attributes[ \"comments\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"comments\" ], int )\n self.__comments = attributes[ \"comments\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"created_at\" ], ( str, unicode ) )\n self.__created_at = attributes[ \"created_at\" ]\n- if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None:\n+ if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"html_url\" ], ( str, unicode ) )\n self.__html_url = attributes[ \"html_url\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"id\" ], int )\n self.__id = attributes[ \"id\" ]\n- if \"labels\" in attributes and attributes[ \"labels\" ] is not None:\n+ if \"labels\" in attributes and attributes[ \"labels\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"labels\" ], list ) and ( len( attributes[ \"labels\" ] ) == 0 or isinstance( attributes[ \"labels\" ][ 0 ], dict ) )\n self.__labels = [\n Label.Label( self.__requester, element, completion = LazyCompletion )\n for element in attributes[ \"labels\" ]\n ]\n- if \"milestone\" in attributes and attributes[ \"milestone\" ] is not None:\n+ if \"milestone\" in attributes and attributes[ \"milestone\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"milestone\" ], dict )\n self.__milestone = Milestone.Milestone( self.__requester, attributes[ \"milestone\" ], completion = LazyCompletion )\n- if \"number\" in attributes and attributes[ \"number\" ] is not None:\n+ if \"number\" in attributes and attributes[ \"number\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"number\" ], int )\n self.__number = attributes[ \"number\" ]\n- if \"pull_request\" in attributes and attributes[ \"pull_request\" ] is not None:\n+ if \"pull_request\" in attributes and attributes[ \"pull_request\" ] is not None: # pragma no branch\n self.__pull_request = attributes[ \"pull_request\" ]\n- if \"repository\" in attributes and attributes[ \"repository\" ] is not None:\n+ if \"repository\" in attributes and attributes[ \"repository\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"repository\" ], dict )\n self.__repository = Repository.Repository( self.__requester, attributes[ \"repository\" ], completion = LazyCompletion )\n- if \"state\" in attributes and attributes[ \"state\" ] is not None:\n+ if \"state\" in attributes and attributes[ \"state\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"state\" ], ( str, unicode ) )\n self.__state = attributes[ \"state\" ]\n- if \"title\" in attributes and attributes[ \"title\" ] is not None:\n+ if \"title\" in attributes and attributes[ \"title\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"title\" ], ( str, unicode ) )\n self.__title = attributes[ \"title\" ]\n- if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None:\n+ if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"updated_at\" ], ( str, unicode ) )\n self.__updated_at = attributes[ \"updated_at\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]\n- if \"user\" in attributes and attributes[ \"user\" ] is not None:\n+ if \"user\" in attributes and attributes[ \"user\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"user\" ], dict )\n self.__user = NamedUser.NamedUser( self.__requester, attributes[ \"user\" ], completion = LazyCompletion )","status":"modified","deletions":21,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Issue.py","changes":53,"additions":32,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Issue.py","filename":"src/github/Issue.py"},{"patch":"@@ -68,16 +68,16 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"body\", \"created_at\", \"id\", \"updated_at\", \"url\", \"user\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"body\" in attributes and attributes[ \"body\" ] is not None:\n+ if \"body\" in attributes and attributes[ \"body\" ] is not None: # pragma no branch\n self.__body = attributes[ \"body\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n self.__created_at = attributes[ \"created_at\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n self.__id = attributes[ \"id\" ]\n- if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None:\n+ if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None: # pragma no branch\n self.__updated_at = attributes[ \"updated_at\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n self.__url = attributes[ \"url\" ]\n- if \"user\" in attributes and attributes[ \"user\" ] is not None:\n+ if \"user\" in attributes and attributes[ \"user\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"user\" ], dict )\n self.__user = NamedUser.NamedUser( self.__requester, attributes[ \"user\" ], completion = LazyCompletion )","status":"modified","deletions":6,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/IssueComment.py","changes":12,"additions":6,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/IssueComment.py","filename":"src/github/IssueComment.py"},{"patch":"@@ -78,24 +78,24 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"actor\", \"commit_id\", \"created_at\", \"event\", \"id\", \"issue\", \"url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"actor\" in attributes and attributes[ \"actor\" ] is not None:\n+ if \"actor\" in attributes and attributes[ \"actor\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"actor\" ], dict )\n self.__actor = NamedUser.NamedUser( self.__requester, attributes[ \"actor\" ], completion = LazyCompletion )\n- if \"commit_id\" in attributes and attributes[ \"commit_id\" ] is not None:\n+ if \"commit_id\" in attributes and attributes[ \"commit_id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"commit_id\" ], ( str, unicode ) )\n self.__commit_id = attributes[ \"commit_id\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"created_at\" ], ( str, unicode ) )\n self.__created_at = attributes[ \"created_at\" ]\n- if \"event\" in attributes and attributes[ \"event\" ] is not None:\n+ if \"event\" in attributes and attributes[ \"event\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"event\" ], ( str, unicode ) )\n self.__event = attributes[ \"event\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"id\" ], int )\n self.__id = attributes[ \"id\" ]\n- if \"issue\" in attributes and attributes[ \"issue\" ] is not None:\n+ if \"issue\" in attributes and attributes[ \"issue\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"issue\" ], dict )\n self.__issue = Issue.Issue( self.__requester, attributes[ \"issue\" ], completion = LazyCompletion )\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]","status":"modified","deletions":7,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/IssueEvent.py","changes":14,"additions":7,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/IssueEvent.py","filename":"src/github/IssueEvent.py"},{"patch":"@@ -1,6 +1,8 @@\n # WARNING: this file is generated automaticaly.\n # Do not modify it manually, your work would be lost.\n \n+import urllib\n+\n import PaginatedList\n from GithubObject import *\n \n@@ -43,6 +45,11 @@ def edit( self, name, color ):\n )\n self.__useAttributes( data )\n \n+ # @toto Remove '_identity' from the normalized json description\n+ @property\n+ def _identity( self ):\n+ return urllib.quote( self.name )\n+\n def __initAttributes( self ):\n self.__color = None\n self.__name = None\n@@ -53,9 +60,9 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"color\", \"name\", \"url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"color\" in attributes and attributes[ \"color\" ] is not None:\n+ if \"color\" in attributes and attributes[ \"color\" ] is not None: # pragma no branch\n self.__color = attributes[ \"color\" ]\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n self.__name = attributes[ \"name\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n self.__url = attributes[ \"url\" ]","status":"modified","deletions":3,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Label.py","changes":13,"additions":10,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Label.py","filename":"src/github/Label.py"},{"patch":"@@ -114,36 +114,36 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"closed_issues\", \"created_at\", \"creator\", \"description\", \"due_on\", \"id\", \"number\", \"open_issues\", \"state\", \"title\", \"url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"closed_issues\" in attributes and attributes[ \"closed_issues\" ] is not None:\n+ if \"closed_issues\" in attributes and attributes[ \"closed_issues\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"closed_issues\" ], int )\n self.__closed_issues = attributes[ \"closed_issues\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"created_at\" ], ( str, unicode ) )\n self.__created_at = attributes[ \"created_at\" ]\n- if \"creator\" in attributes and attributes[ \"creator\" ] is not None:\n+ if \"creator\" in attributes and attributes[ \"creator\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"creator\" ], dict )\n self.__creator = NamedUser.NamedUser( self.__requester, attributes[ \"creator\" ], completion = LazyCompletion )\n- if \"description\" in attributes and attributes[ \"description\" ] is not None:\n+ if \"description\" in attributes and attributes[ \"description\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"description\" ], ( str, unicode ) )\n self.__description = attributes[ \"description\" ]\n- if \"due_on\" in attributes and attributes[ \"due_on\" ] is not None:\n+ if \"due_on\" in attributes and attributes[ \"due_on\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"due_on\" ], ( str, unicode ) )\n self.__due_on = attributes[ \"due_on\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"id\" ], int )\n self.__id = attributes[ \"id\" ]\n- if \"number\" in attributes and attributes[ \"number\" ] is not None:\n+ if \"number\" in attributes and attributes[ \"number\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"number\" ], int )\n self.__number = attributes[ \"number\" ]\n- if \"open_issues\" in attributes and attributes[ \"open_issues\" ] is not None:\n+ if \"open_issues\" in attributes and attributes[ \"open_issues\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"open_issues\" ], int )\n self.__open_issues = attributes[ \"open_issues\" ]\n- if \"state\" in attributes and attributes[ \"state\" ] is not None:\n+ if \"state\" in attributes and attributes[ \"state\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"state\" ], ( str, unicode ) )\n self.__state = attributes[ \"state\" ]\n- if \"title\" in attributes and attributes[ \"title\" ] is not None:\n+ if \"title\" in attributes and attributes[ \"title\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"title\" ], ( str, unicode ) )\n self.__title = attributes[ \"title\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]","status":"modified","deletions":11,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Milestone.py","changes":22,"additions":11,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Milestone.py","filename":"src/github/Milestone.py"},{"patch":"@@ -365,81 +365,81 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"avatar_url\", \"bio\", \"blog\", \"collaborators\", \"company\", \"contributions\", \"created_at\", \"disk_usage\", \"email\", \"followers\", \"following\", \"gravatar_id\", \"hireable\", \"html_url\", \"id\", \"location\", \"login\", \"name\", \"owned_private_repos\", \"plan\", \"private_gists\", \"public_gists\", \"public_repos\", \"total_private_repos\", \"type\", \"url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"avatar_url\" in attributes and attributes[ \"avatar_url\" ] is not None:\n+ if \"avatar_url\" in attributes and attributes[ \"avatar_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"avatar_url\" ], ( str, unicode ) )\n self.__avatar_url = attributes[ \"avatar_url\" ]\n- if \"bio\" in attributes and attributes[ \"bio\" ] is not None:\n+ if \"bio\" in attributes and attributes[ \"bio\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"bio\" ], ( str, unicode ) )\n self.__bio = attributes[ \"bio\" ]\n- if \"blog\" in attributes and attributes[ \"blog\" ] is not None:\n+ if \"blog\" in attributes and attributes[ \"blog\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"blog\" ], ( str, unicode ) )\n self.__blog = attributes[ \"blog\" ]\n- if \"collaborators\" in attributes and attributes[ \"collaborators\" ] is not None:\n+ if \"collaborators\" in attributes and attributes[ \"collaborators\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"collaborators\" ], int )\n self.__collaborators = attributes[ \"collaborators\" ]\n- if \"company\" in attributes and attributes[ \"company\" ] is not None:\n+ if \"company\" in attributes and attributes[ \"company\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"company\" ], ( str, unicode ) )\n self.__company = attributes[ \"company\" ]\n- if \"contributions\" in attributes and attributes[ \"contributions\" ] is not None:\n+ if \"contributions\" in attributes and attributes[ \"contributions\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"contributions\" ], int )\n self.__contributions = attributes[ \"contributions\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"created_at\" ], ( str, unicode ) )\n self.__created_at = attributes[ \"created_at\" ]\n- if \"disk_usage\" in attributes and attributes[ \"disk_usage\" ] is not None:\n+ if \"disk_usage\" in attributes and attributes[ \"disk_usage\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"disk_usage\" ], int )\n self.__disk_usage = attributes[ \"disk_usage\" ]\n- if \"email\" in attributes and attributes[ \"email\" ] is not None:\n+ if \"email\" in attributes and attributes[ \"email\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"email\" ], ( str, unicode ) )\n self.__email = attributes[ \"email\" ]\n- if \"followers\" in attributes and attributes[ \"followers\" ] is not None:\n+ if \"followers\" in attributes and attributes[ \"followers\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"followers\" ], int )\n self.__followers = attributes[ \"followers\" ]\n- if \"following\" in attributes and attributes[ \"following\" ] is not None:\n+ if \"following\" in attributes and attributes[ \"following\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"following\" ], int )\n self.__following = attributes[ \"following\" ]\n- if \"gravatar_id\" in attributes and attributes[ \"gravatar_id\" ] is not None:\n+ if \"gravatar_id\" in attributes and attributes[ \"gravatar_id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"gravatar_id\" ], ( str, unicode ) )\n self.__gravatar_id = attributes[ \"gravatar_id\" ]\n- if \"hireable\" in attributes and attributes[ \"hireable\" ] is not None:\n+ if \"hireable\" in attributes and attributes[ \"hireable\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"hireable\" ], bool )\n self.__hireable = attributes[ \"hireable\" ]\n- if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None:\n+ if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"html_url\" ], ( str, unicode ) )\n self.__html_url = attributes[ \"html_url\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"id\" ], int )\n self.__id = attributes[ \"id\" ]\n- if \"location\" in attributes and attributes[ \"location\" ] is not None:\n+ if \"location\" in attributes and attributes[ \"location\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"location\" ], ( str, unicode ) )\n self.__location = attributes[ \"location\" ]\n- if \"login\" in attributes and attributes[ \"login\" ] is not None:\n+ if \"login\" in attributes and attributes[ \"login\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"login\" ], ( str, unicode ) )\n self.__login = attributes[ \"login\" ]\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"name\" ], ( str, unicode ) )\n self.__name = attributes[ \"name\" ]\n- if \"owned_private_repos\" in attributes and attributes[ \"owned_private_repos\" ] is not None:\n+ if \"owned_private_repos\" in attributes and attributes[ \"owned_private_repos\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"owned_private_repos\" ], int )\n self.__owned_private_repos = attributes[ \"owned_private_repos\" ]\n- if \"plan\" in attributes and attributes[ \"plan\" ] is not None:\n+ if \"plan\" in attributes and attributes[ \"plan\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"plan\" ], dict )\n self.__plan = Plan.Plan( self.__requester, attributes[ \"plan\" ], completion = LazyCompletion )\n- if \"private_gists\" in attributes and attributes[ \"private_gists\" ] is not None:\n+ if \"private_gists\" in attributes and attributes[ \"private_gists\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"private_gists\" ], int )\n self.__private_gists = attributes[ \"private_gists\" ]\n- if \"public_gists\" in attributes and attributes[ \"public_gists\" ] is not None:\n+ if \"public_gists\" in attributes and attributes[ \"public_gists\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"public_gists\" ], int )\n self.__public_gists = attributes[ \"public_gists\" ]\n- if \"public_repos\" in attributes and attributes[ \"public_repos\" ] is not None:\n+ if \"public_repos\" in attributes and attributes[ \"public_repos\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"public_repos\" ], int )\n self.__public_repos = attributes[ \"public_repos\" ]\n- if \"total_private_repos\" in attributes and attributes[ \"total_private_repos\" ] is not None:\n+ if \"total_private_repos\" in attributes and attributes[ \"total_private_repos\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"total_private_repos\" ], int )\n self.__total_private_repos = attributes[ \"total_private_repos\" ]\n- if \"type\" in attributes and attributes[ \"type\" ] is not None:\n+ if \"type\" in attributes and attributes[ \"type\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"type\" ], ( str, unicode ) )\n self.__type = attributes[ \"type\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]","status":"modified","deletions":26,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/NamedUser.py","changes":52,"additions":26,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/NamedUser.py","filename":"src/github/NamedUser.py"},{"patch":"@@ -390,75 +390,75 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"avatar_url\", \"billing_email\", \"blog\", \"collaborators\", \"company\", \"created_at\", \"disk_usage\", \"email\", \"followers\", \"following\", \"gravatar_id\", \"html_url\", \"id\", \"location\", \"login\", \"name\", \"owned_private_repos\", \"plan\", \"private_gists\", \"public_gists\", \"public_repos\", \"total_private_repos\", \"type\", \"url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"avatar_url\" in attributes and attributes[ \"avatar_url\" ] is not None:\n+ if \"avatar_url\" in attributes and attributes[ \"avatar_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"avatar_url\" ], ( str, unicode ) )\n self.__avatar_url = attributes[ \"avatar_url\" ]\n- if \"billing_email\" in attributes and attributes[ \"billing_email\" ] is not None:\n+ if \"billing_email\" in attributes and attributes[ \"billing_email\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"billing_email\" ], ( str, unicode ) )\n self.__billing_email = attributes[ \"billing_email\" ]\n- if \"blog\" in attributes and attributes[ \"blog\" ] is not None:\n+ if \"blog\" in attributes and attributes[ \"blog\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"blog\" ], ( str, unicode ) )\n self.__blog = attributes[ \"blog\" ]\n- if \"collaborators\" in attributes and attributes[ \"collaborators\" ] is not None:\n+ if \"collaborators\" in attributes and attributes[ \"collaborators\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"collaborators\" ], int )\n self.__collaborators = attributes[ \"collaborators\" ]\n- if \"company\" in attributes and attributes[ \"company\" ] is not None:\n+ if \"company\" in attributes and attributes[ \"company\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"company\" ], ( str, unicode ) )\n self.__company = attributes[ \"company\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"created_at\" ], ( str, unicode ) )\n self.__created_at = attributes[ \"created_at\" ]\n- if \"disk_usage\" in attributes and attributes[ \"disk_usage\" ] is not None:\n+ if \"disk_usage\" in attributes and attributes[ \"disk_usage\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"disk_usage\" ], int )\n self.__disk_usage = attributes[ \"disk_usage\" ]\n- if \"email\" in attributes and attributes[ \"email\" ] is not None:\n+ if \"email\" in attributes and attributes[ \"email\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"email\" ], ( str, unicode ) )\n self.__email = attributes[ \"email\" ]\n- if \"followers\" in attributes and attributes[ \"followers\" ] is not None:\n+ if \"followers\" in attributes and attributes[ \"followers\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"followers\" ], int )\n self.__followers = attributes[ \"followers\" ]\n- if \"following\" in attributes and attributes[ \"following\" ] is not None:\n+ if \"following\" in attributes and attributes[ \"following\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"following\" ], int )\n self.__following = attributes[ \"following\" ]\n- if \"gravatar_id\" in attributes and attributes[ \"gravatar_id\" ] is not None:\n+ if \"gravatar_id\" in attributes and attributes[ \"gravatar_id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"gravatar_id\" ], ( str, unicode ) )\n self.__gravatar_id = attributes[ \"gravatar_id\" ]\n- if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None:\n+ if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"html_url\" ], ( str, unicode ) )\n self.__html_url = attributes[ \"html_url\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"id\" ], int )\n self.__id = attributes[ \"id\" ]\n- if \"location\" in attributes and attributes[ \"location\" ] is not None:\n+ if \"location\" in attributes and attributes[ \"location\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"location\" ], ( str, unicode ) )\n self.__location = attributes[ \"location\" ]\n- if \"login\" in attributes and attributes[ \"login\" ] is not None:\n+ if \"login\" in attributes and attributes[ \"login\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"login\" ], ( str, unicode ) )\n self.__login = attributes[ \"login\" ]\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"name\" ], ( str, unicode ) )\n self.__name = attributes[ \"name\" ]\n- if \"owned_private_repos\" in attributes and attributes[ \"owned_private_repos\" ] is not None:\n+ if \"owned_private_repos\" in attributes and attributes[ \"owned_private_repos\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"owned_private_repos\" ], int )\n self.__owned_private_repos = attributes[ \"owned_private_repos\" ]\n- if \"plan\" in attributes and attributes[ \"plan\" ] is not None:\n+ if \"plan\" in attributes and attributes[ \"plan\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"plan\" ], dict )\n self.__plan = Plan.Plan( self.__requester, attributes[ \"plan\" ], completion = LazyCompletion )\n- if \"private_gists\" in attributes and attributes[ \"private_gists\" ] is not None:\n+ if \"private_gists\" in attributes and attributes[ \"private_gists\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"private_gists\" ], int )\n self.__private_gists = attributes[ \"private_gists\" ]\n- if \"public_gists\" in attributes and attributes[ \"public_gists\" ] is not None:\n+ if \"public_gists\" in attributes and attributes[ \"public_gists\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"public_gists\" ], int )\n self.__public_gists = attributes[ \"public_gists\" ]\n- if \"public_repos\" in attributes and attributes[ \"public_repos\" ] is not None:\n+ if \"public_repos\" in attributes and attributes[ \"public_repos\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"public_repos\" ], int )\n self.__public_repos = attributes[ \"public_repos\" ]\n- if \"total_private_repos\" in attributes and attributes[ \"total_private_repos\" ] is not None:\n+ if \"total_private_repos\" in attributes and attributes[ \"total_private_repos\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"total_private_repos\" ], int )\n self.__total_private_repos = attributes[ \"total_private_repos\" ]\n- if \"type\" in attributes and attributes[ \"type\" ] is not None:\n+ if \"type\" in attributes and attributes[ \"type\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"type\" ], ( str, unicode ) )\n self.__type = attributes[ \"type\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]","status":"modified","deletions":24,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Organization.py","changes":48,"additions":24,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Organization.py","filename":"src/github/Organization.py"},{"patch":"@@ -32,12 +32,12 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"admin\", \"pull\", \"push\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"admin\" in attributes and attributes[ \"admin\" ] is not None:\n+ if \"admin\" in attributes and attributes[ \"admin\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"admin\" ], bool )\n self.__admin = attributes[ \"admin\" ]\n- if \"pull\" in attributes and attributes[ \"pull\" ] is not None:\n+ if \"pull\" in attributes and attributes[ \"pull\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"pull\" ], bool )\n self.__pull = attributes[ \"pull\" ]\n- if \"push\" in attributes and attributes[ \"push\" ] is not None:\n+ if \"push\" in attributes and attributes[ \"push\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"push\" ], bool )\n self.__push = attributes[ \"push\" ]","status":"modified","deletions":3,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Permissions.py","changes":6,"additions":3,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Permissions.py","filename":"src/github/Permissions.py"},{"patch":"@@ -37,15 +37,15 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"collaborators\", \"name\", \"private_repos\", \"space\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"collaborators\" in attributes and attributes[ \"collaborators\" ] is not None:\n+ if \"collaborators\" in attributes and attributes[ \"collaborators\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"collaborators\" ], int )\n self.__collaborators = attributes[ \"collaborators\" ]\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"name\" ], ( str, unicode ) )\n self.__name = attributes[ \"name\" ]\n- if \"private_repos\" in attributes and attributes[ \"private_repos\" ] is not None:\n+ if \"private_repos\" in attributes and attributes[ \"private_repos\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"private_repos\" ], int )\n self.__private_repos = attributes[ \"private_repos\" ]\n- if \"space\" in attributes and attributes[ \"space\" ] is not None:\n+ if \"space\" in attributes and attributes[ \"space\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"space\" ], int )\n self.__space = attributes[ \"space\" ]","status":"modified","deletions":4,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Plan.py","changes":8,"additions":4,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Plan.py","filename":"src/github/Plan.py"},{"patch":"@@ -279,56 +279,56 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"additions\", \"base\", \"body\", \"changed_files\", \"closed_at\", \"comments\", \"commits\", \"created_at\", \"deletions\", \"diff_url\", \"head\", \"html_url\", \"id\", \"issue_url\", \"mergeable\", \"merged\", \"merged_at\", \"merged_by\", \"number\", \"patch_url\", \"review_comments\", \"state\", \"title\", \"updated_at\", \"url\", \"user\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"additions\" in attributes and attributes[ \"additions\" ] is not None:\n+ if \"additions\" in attributes and attributes[ \"additions\" ] is not None: # pragma no branch\n self.__additions = attributes[ \"additions\" ]\n- if \"base\" in attributes and attributes[ \"base\" ] is not None:\n+ if \"base\" in attributes and attributes[ \"base\" ] is not None: # pragma no branch\n self.__base = attributes[ \"base\" ]\n- if \"body\" in attributes and attributes[ \"body\" ] is not None:\n+ if \"body\" in attributes and attributes[ \"body\" ] is not None: # pragma no branch\n self.__body = attributes[ \"body\" ]\n- if \"changed_files\" in attributes and attributes[ \"changed_files\" ] is not None:\n+ if \"changed_files\" in attributes and attributes[ \"changed_files\" ] is not None: # pragma no branch\n self.__changed_files = attributes[ \"changed_files\" ]\n- if \"closed_at\" in attributes and attributes[ \"closed_at\" ] is not None:\n+ if \"closed_at\" in attributes and attributes[ \"closed_at\" ] is not None: # pragma no branch\n self.__closed_at = attributes[ \"closed_at\" ]\n- if \"comments\" in attributes and attributes[ \"comments\" ] is not None:\n+ if \"comments\" in attributes and attributes[ \"comments\" ] is not None: # pragma no branch\n self.__comments = attributes[ \"comments\" ]\n- if \"commits\" in attributes and attributes[ \"commits\" ] is not None:\n+ if \"commits\" in attributes and attributes[ \"commits\" ] is not None: # pragma no branch\n self.__commits = attributes[ \"commits\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n self.__created_at = attributes[ \"created_at\" ]\n- if \"deletions\" in attributes and attributes[ \"deletions\" ] is not None:\n+ if \"deletions\" in attributes and attributes[ \"deletions\" ] is not None: # pragma no branch\n self.__deletions = attributes[ \"deletions\" ]\n- if \"diff_url\" in attributes and attributes[ \"diff_url\" ] is not None:\n+ if \"diff_url\" in attributes and attributes[ \"diff_url\" ] is not None: # pragma no branch\n self.__diff_url = attributes[ \"diff_url\" ]\n- if \"head\" in attributes and attributes[ \"head\" ] is not None:\n+ if \"head\" in attributes and attributes[ \"head\" ] is not None: # pragma no branch\n self.__head = attributes[ \"head\" ]\n- if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None:\n+ if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None: # pragma no branch\n self.__html_url = attributes[ \"html_url\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n self.__id = attributes[ \"id\" ]\n- if \"issue_url\" in attributes and attributes[ \"issue_url\" ] is not None:\n+ if \"issue_url\" in attributes and attributes[ \"issue_url\" ] is not None: # pragma no branch\n self.__issue_url = attributes[ \"issue_url\" ]\n- if \"mergeable\" in attributes and attributes[ \"mergeable\" ] is not None:\n+ if \"mergeable\" in attributes and attributes[ \"mergeable\" ] is not None: # pragma no branch\n self.__mergeable = attributes[ \"mergeable\" ]\n- if \"merged\" in attributes and attributes[ \"merged\" ] is not None:\n+ if \"merged\" in attributes and attributes[ \"merged\" ] is not None: # pragma no branch\n self.__merged = attributes[ \"merged\" ]\n- if \"merged_at\" in attributes and attributes[ \"merged_at\" ] is not None:\n+ if \"merged_at\" in attributes and attributes[ \"merged_at\" ] is not None: # pragma no branch\n self.__merged_at = attributes[ \"merged_at\" ]\n- if \"merged_by\" in attributes and attributes[ \"merged_by\" ] is not None:\n+ if \"merged_by\" in attributes and attributes[ \"merged_by\" ] is not None: # pragma no branch\n self.__merged_by = attributes[ \"merged_by\" ]\n- if \"number\" in attributes and attributes[ \"number\" ] is not None:\n+ if \"number\" in attributes and attributes[ \"number\" ] is not None: # pragma no branch\n self.__number = attributes[ \"number\" ]\n- if \"patch_url\" in attributes and attributes[ \"patch_url\" ] is not None:\n+ if \"patch_url\" in attributes and attributes[ \"patch_url\" ] is not None: # pragma no branch\n self.__patch_url = attributes[ \"patch_url\" ]\n- if \"review_comments\" in attributes and attributes[ \"review_comments\" ] is not None:\n+ if \"review_comments\" in attributes and attributes[ \"review_comments\" ] is not None: # pragma no branch\n self.__review_comments = attributes[ \"review_comments\" ]\n- if \"state\" in attributes and attributes[ \"state\" ] is not None:\n+ if \"state\" in attributes and attributes[ \"state\" ] is not None: # pragma no branch\n self.__state = attributes[ \"state\" ]\n- if \"title\" in attributes and attributes[ \"title\" ] is not None:\n+ if \"title\" in attributes and attributes[ \"title\" ] is not None: # pragma no branch\n self.__title = attributes[ \"title\" ]\n- if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None:\n+ if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None: # pragma no branch\n self.__updated_at = attributes[ \"updated_at\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n self.__url = attributes[ \"url\" ]\n- if \"user\" in attributes and attributes[ \"user\" ] is not None:\n+ if \"user\" in attributes and attributes[ \"user\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"user\" ], dict )\n self.__user = NamedUser.NamedUser( self.__requester, attributes[ \"user\" ], completion = LazyCompletion )","status":"modified","deletions":26,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/PullRequest.py","changes":52,"additions":26,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/PullRequest.py","filename":"src/github/PullRequest.py"},{"patch":"@@ -121,26 +121,26 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"body\", \"commit_id\", \"created_at\", \"html_url\", \"id\", \"line\", \"path\", \"position\", \"updated_at\", \"url\", \"user\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"body\" in attributes and attributes[ \"body\" ] is not None:\n+ if \"body\" in attributes and attributes[ \"body\" ] is not None: # pragma no branch\n self.__body = attributes[ \"body\" ]\n- if \"commit_id\" in attributes and attributes[ \"commit_id\" ] is not None:\n+ if \"commit_id\" in attributes and attributes[ \"commit_id\" ] is not None: # pragma no branch\n self.__commit_id = attributes[ \"commit_id\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n self.__created_at = attributes[ \"created_at\" ]\n- if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None:\n+ if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None: # pragma no branch\n self.__html_url = attributes[ \"html_url\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n self.__id = attributes[ \"id\" ]\n- if \"line\" in attributes and attributes[ \"line\" ] is not None:\n+ if \"line\" in attributes and attributes[ \"line\" ] is not None: # pragma no branch\n self.__line = attributes[ \"line\" ]\n- if \"path\" in attributes and attributes[ \"path\" ] is not None:\n+ if \"path\" in attributes and attributes[ \"path\" ] is not None: # pragma no branch\n self.__path = attributes[ \"path\" ]\n- if \"position\" in attributes and attributes[ \"position\" ] is not None:\n+ if \"position\" in attributes and attributes[ \"position\" ] is not None: # pragma no branch\n self.__position = attributes[ \"position\" ]\n- if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None:\n+ if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None: # pragma no branch\n self.__updated_at = attributes[ \"updated_at\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n self.__url = attributes[ \"url\" ]\n- if \"user\" in attributes and attributes[ \"user\" ] is not None:\n+ if \"user\" in attributes and attributes[ \"user\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"user\" ], dict )\n self.__user = NamedUser.NamedUser( self.__requester, attributes[ \"user\" ], completion = LazyCompletion )","status":"modified","deletions":11,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/PullRequestComment.py","changes":22,"additions":11,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/PullRequestComment.py","filename":"src/github/PullRequestComment.py"},{"patch":"@@ -62,21 +62,21 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"additions\", \"blob_url\", \"changes\", \"deletions\", \"filename\", \"patch\", \"raw_url\", \"sha\", \"status\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"additions\" in attributes and attributes[ \"additions\" ] is not None:\n+ if \"additions\" in attributes and attributes[ \"additions\" ] is not None: # pragma no branch\n self.__additions = attributes[ \"additions\" ]\n- if \"blob_url\" in attributes and attributes[ \"blob_url\" ] is not None:\n+ if \"blob_url\" in attributes and attributes[ \"blob_url\" ] is not None: # pragma no branch\n self.__blob_url = attributes[ \"blob_url\" ]\n- if \"changes\" in attributes and attributes[ \"changes\" ] is not None:\n+ if \"changes\" in attributes and attributes[ \"changes\" ] is not None: # pragma no branch\n self.__changes = attributes[ \"changes\" ]\n- if \"deletions\" in attributes and attributes[ \"deletions\" ] is not None:\n+ if \"deletions\" in attributes and attributes[ \"deletions\" ] is not None: # pragma no branch\n self.__deletions = attributes[ \"deletions\" ]\n- if \"filename\" in attributes and attributes[ \"filename\" ] is not None:\n+ if \"filename\" in attributes and attributes[ \"filename\" ] is not None: # pragma no branch\n self.__filename = attributes[ \"filename\" ]\n- if \"patch\" in attributes and attributes[ \"patch\" ] is not None:\n+ if \"patch\" in attributes and attributes[ \"patch\" ] is not None: # pragma no branch\n self.__patch = attributes[ \"patch\" ]\n- if \"raw_url\" in attributes and attributes[ \"raw_url\" ] is not None:\n+ if \"raw_url\" in attributes and attributes[ \"raw_url\" ] is not None: # pragma no branch\n self.__raw_url = attributes[ \"raw_url\" ]\n- if \"sha\" in attributes and attributes[ \"sha\" ] is not None:\n+ if \"sha\" in attributes and attributes[ \"sha\" ] is not None: # pragma no branch\n self.__sha = attributes[ \"sha\" ]\n- if \"status\" in attributes and attributes[ \"status\" ] is not None:\n+ if \"status\" in attributes and attributes[ \"status\" ] is not None: # pragma no branch\n self.__status = attributes[ \"status\" ]","status":"modified","deletions":9,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/PullRequestFile.py","changes":18,"additions":9,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/PullRequestFile.py","filename":"src/github/PullRequestFile.py"},{"patch":"@@ -905,96 +905,96 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"clone_url\", \"created_at\", \"description\", \"fork\", \"forks\", \"full_name\", \"git_url\", \"has_downloads\", \"has_issues\", \"has_wiki\", \"homepage\", \"html_url\", \"id\", \"language\", \"master_branch\", \"mirror_url\", \"name\", \"open_issues\", \"organization\", \"owner\", \"parent\", \"permissions\", \"private\", \"pushed_at\", \"size\", \"source\", \"ssh_url\", \"svn_url\", \"updated_at\", \"url\", \"watchers\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"clone_url\" in attributes and attributes[ \"clone_url\" ] is not None:\n+ if \"clone_url\" in attributes and attributes[ \"clone_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"clone_url\" ], ( str, unicode ) )\n self.__clone_url = attributes[ \"clone_url\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"created_at\" ], ( str, unicode ) )\n self.__created_at = attributes[ \"created_at\" ]\n- if \"description\" in attributes and attributes[ \"description\" ] is not None:\n+ if \"description\" in attributes and attributes[ \"description\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"description\" ], ( str, unicode ) )\n self.__description = attributes[ \"description\" ]\n- if \"fork\" in attributes and attributes[ \"fork\" ] is not None:\n+ if \"fork\" in attributes and attributes[ \"fork\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"fork\" ], bool )\n self.__fork = attributes[ \"fork\" ]\n- if \"forks\" in attributes and attributes[ \"forks\" ] is not None:\n+ if \"forks\" in attributes and attributes[ \"forks\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"forks\" ], int )\n self.__forks = attributes[ \"forks\" ]\n- if \"full_name\" in attributes and attributes[ \"full_name\" ] is not None:\n+ if \"full_name\" in attributes and attributes[ \"full_name\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"full_name\" ], ( str, unicode ) )\n self.__full_name = attributes[ \"full_name\" ]\n- if \"git_url\" in attributes and attributes[ \"git_url\" ] is not None:\n+ if \"git_url\" in attributes and attributes[ \"git_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"git_url\" ], ( str, unicode ) )\n self.__git_url = attributes[ \"git_url\" ]\n- if \"has_downloads\" in attributes and attributes[ \"has_downloads\" ] is not None:\n+ if \"has_downloads\" in attributes and attributes[ \"has_downloads\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"has_downloads\" ], bool )\n self.__has_downloads = attributes[ \"has_downloads\" ]\n- if \"has_issues\" in attributes and attributes[ \"has_issues\" ] is not None:\n+ if \"has_issues\" in attributes and attributes[ \"has_issues\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"has_issues\" ], bool )\n self.__has_issues = attributes[ \"has_issues\" ]\n- if \"has_wiki\" in attributes and attributes[ \"has_wiki\" ] is not None:\n+ if \"has_wiki\" in attributes and attributes[ \"has_wiki\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"has_wiki\" ], bool )\n self.__has_wiki = attributes[ \"has_wiki\" ]\n- if \"homepage\" in attributes and attributes[ \"homepage\" ] is not None:\n+ if \"homepage\" in attributes and attributes[ \"homepage\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"homepage\" ], ( str, unicode ) )\n self.__homepage = attributes[ \"homepage\" ]\n- if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None:\n+ if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"html_url\" ], ( str, unicode ) )\n self.__html_url = attributes[ \"html_url\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"id\" ], int )\n self.__id = attributes[ \"id\" ]\n- if \"language\" in attributes and attributes[ \"language\" ] is not None:\n+ if \"language\" in attributes and attributes[ \"language\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"language\" ], ( str, unicode ) )\n self.__language = attributes[ \"language\" ]\n- if \"master_branch\" in attributes and attributes[ \"master_branch\" ] is not None:\n+ if \"master_branch\" in attributes and attributes[ \"master_branch\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"master_branch\" ], ( str, unicode ) )\n self.__master_branch = attributes[ \"master_branch\" ]\n- if \"mirror_url\" in attributes and attributes[ \"mirror_url\" ] is not None:\n+ if \"mirror_url\" in attributes and attributes[ \"mirror_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"mirror_url\" ], ( str, unicode ) )\n self.__mirror_url = attributes[ \"mirror_url\" ]\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"name\" ], ( str, unicode ) )\n self.__name = attributes[ \"name\" ]\n- if \"open_issues\" in attributes and attributes[ \"open_issues\" ] is not None:\n+ if \"open_issues\" in attributes and attributes[ \"open_issues\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"open_issues\" ], int )\n self.__open_issues = attributes[ \"open_issues\" ]\n- if \"organization\" in attributes and attributes[ \"organization\" ] is not None:\n+ if \"organization\" in attributes and attributes[ \"organization\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"organization\" ], dict )\n self.__organization = Organization.Organization( self.__requester, attributes[ \"organization\" ], completion = LazyCompletion )\n- if \"owner\" in attributes and attributes[ \"owner\" ] is not None:\n+ if \"owner\" in attributes and attributes[ \"owner\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"owner\" ], dict )\n self.__owner = NamedUser.NamedUser( self.__requester, attributes[ \"owner\" ], completion = LazyCompletion )\n- if \"parent\" in attributes and attributes[ \"parent\" ] is not None:\n+ if \"parent\" in attributes and attributes[ \"parent\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"parent\" ], dict )\n self.__parent = Repository( self.__requester, attributes[ \"parent\" ], completion = LazyCompletion )\n- if \"permissions\" in attributes and attributes[ \"permissions\" ] is not None:\n+ if \"permissions\" in attributes and attributes[ \"permissions\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"permissions\" ], dict )\n self.__permissions = Permissions.Permissions( self.__requester, attributes[ \"permissions\" ], completion = LazyCompletion )\n- if \"private\" in attributes and attributes[ \"private\" ] is not None:\n+ if \"private\" in attributes and attributes[ \"private\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"private\" ], bool )\n self.__private = attributes[ \"private\" ]\n- if \"pushed_at\" in attributes and attributes[ \"pushed_at\" ] is not None:\n+ if \"pushed_at\" in attributes and attributes[ \"pushed_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"pushed_at\" ], ( str, unicode ) )\n self.__pushed_at = attributes[ \"pushed_at\" ]\n- if \"size\" in attributes and attributes[ \"size\" ] is not None:\n+ if \"size\" in attributes and attributes[ \"size\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"size\" ], int )\n self.__size = attributes[ \"size\" ]\n- if \"source\" in attributes and attributes[ \"source\" ] is not None:\n+ if \"source\" in attributes and attributes[ \"source\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"source\" ], dict )\n self.__source = Repository( self.__requester, attributes[ \"source\" ], completion = LazyCompletion )\n- if \"ssh_url\" in attributes and attributes[ \"ssh_url\" ] is not None:\n+ if \"ssh_url\" in attributes and attributes[ \"ssh_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"ssh_url\" ], ( str, unicode ) )\n self.__ssh_url = attributes[ \"ssh_url\" ]\n- if \"svn_url\" in attributes and attributes[ \"svn_url\" ] is not None:\n+ if \"svn_url\" in attributes and attributes[ \"svn_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"svn_url\" ], ( str, unicode ) )\n self.__svn_url = attributes[ \"svn_url\" ]\n- if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None:\n+ if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"updated_at\" ], ( str, unicode ) )\n self.__updated_at = attributes[ \"updated_at\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]\n- if \"watchers\" in attributes and attributes[ \"watchers\" ] is not None:\n+ if \"watchers\" in attributes and attributes[ \"watchers\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"watchers\" ], int )\n self.__watchers = attributes[ \"watchers\" ]","status":"modified","deletions":31,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Repository.py","changes":62,"additions":31,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Repository.py","filename":"src/github/Repository.py"},{"patch":"@@ -87,14 +87,14 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"id\", \"key\", \"title\", \"url\", \"verified\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n self.__id = attributes[ \"id\" ]\n- if \"key\" in attributes and attributes[ \"key\" ] is not None:\n+ if \"key\" in attributes and attributes[ \"key\" ] is not None: # pragma no branch\n self.__key = attributes[ \"key\" ]\n- if \"title\" in attributes and attributes[ \"title\" ] is not None:\n+ if \"title\" in attributes and attributes[ \"title\" ] is not None: # pragma no branch\n self.__title = attributes[ \"title\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n self.__url = attributes[ \"url\" ]\n- if \"verified\" in attributes and attributes[ \"verified\" ] is not None:\n+ if \"verified\" in attributes and attributes[ \"verified\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"verified\" ], bool )\n self.__verified = attributes[ \"verified\" ]","status":"modified","deletions":5,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/RepositoryKey.py","changes":10,"additions":5,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/RepositoryKey.py","filename":"src/github/RepositoryKey.py"},{"patch":"@@ -38,15 +38,15 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"commit\", \"name\", \"tarball_url\", \"zipball_url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"commit\" in attributes and attributes[ \"commit\" ] is not None:\n+ if \"commit\" in attributes and attributes[ \"commit\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"commit\" ], dict )\n self.__commit = Commit.Commit( self.__requester, attributes[ \"commit\" ], completion = LazyCompletion )\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"name\" ], ( str, unicode ) )\n self.__name = attributes[ \"name\" ]\n- if \"tarball_url\" in attributes and attributes[ \"tarball_url\" ] is not None:\n+ if \"tarball_url\" in attributes and attributes[ \"tarball_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"tarball_url\" ], ( str, unicode ) )\n self.__tarball_url = attributes[ \"tarball_url\" ]\n- if \"zipball_url\" in attributes and attributes[ \"zipball_url\" ] is not None:\n+ if \"zipball_url\" in attributes and attributes[ \"zipball_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"zipball_url\" ], ( str, unicode ) )\n self.__zipball_url = attributes[ \"zipball_url\" ]","status":"modified","deletions":4,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Tag.py","changes":8,"additions":4,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Tag.py","filename":"src/github/Tag.py"},{"patch":"@@ -172,15 +172,15 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"id\", \"members_count\", \"name\", \"permission\", \"repos_count\", \"url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n self.__id = attributes[ \"id\" ]\n- if \"members_count\" in attributes and attributes[ \"members_count\" ] is not None:\n+ if \"members_count\" in attributes and attributes[ \"members_count\" ] is not None: # pragma no branch\n self.__members_count = attributes[ \"members_count\" ]\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n self.__name = attributes[ \"name\" ]\n- if \"permission\" in attributes and attributes[ \"permission\" ] is not None:\n+ if \"permission\" in attributes and attributes[ \"permission\" ] is not None: # pragma no branch\n self.__permission = attributes[ \"permission\" ]\n- if \"repos_count\" in attributes and attributes[ \"repos_count\" ] is not None:\n+ if \"repos_count\" in attributes and attributes[ \"repos_count\" ] is not None: # pragma no branch\n self.__repos_count = attributes[ \"repos_count\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n self.__url = attributes[ \"url\" ]","status":"modified","deletions":6,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Team.py","changes":12,"additions":6,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Team.py","filename":"src/github/Team.py"},{"patch":"@@ -87,14 +87,14 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"id\", \"key\", \"title\", \"url\", \"verified\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n self.__id = attributes[ \"id\" ]\n- if \"key\" in attributes and attributes[ \"key\" ] is not None:\n+ if \"key\" in attributes and attributes[ \"key\" ] is not None: # pragma no branch\n self.__key = attributes[ \"key\" ]\n- if \"title\" in attributes and attributes[ \"title\" ] is not None:\n+ if \"title\" in attributes and attributes[ \"title\" ] is not None: # pragma no branch\n self.__title = attributes[ \"title\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n self.__url = attributes[ \"url\" ]\n- if \"verified\" in attributes and attributes[ \"verified\" ] is not None:\n+ if \"verified\" in attributes and attributes[ \"verified\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"verified\" ], bool )\n self.__verified = attributes[ \"verified\" ]","status":"modified","deletions":5,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/UserKey.py","changes":10,"additions":5,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/UserKey.py","filename":"src/github/UserKey.py"},{"patch":"@@ -3,7 +3,8 @@\n class Issue( Framework.TestCase ):\r\n def setUp( self ):\r\n Framework.TestCase.setUp( self )\r\n- self.issue = self.g.get_user().get_repo( \"PyGithub\" ).get_issue( 28 )\r\n+ self.repo = self.g.get_user().get_repo( \"PyGithub\" )\r\n+ self.issue = self.repo.get_issue( 28 )\r\n \r\n def testAttributes( self ):\r\n self.assertEqual( self.issue.assignee.login, \"jacquev6\" )\r\n@@ -47,3 +48,26 @@ def testGetComments( self ):\n \r\n def testGetEvents( self ):\r\n self.assertListKeyEqual( self.issue.get_events(), lambda e: e.id, [ 15819975, 15820048 ] )\r\n+\r\n+ def testGetLabels( self ):\r\n+ self.assertListKeyEqual( self.issue.get_labels(), lambda l: l.name, [ \"Bug\", \"Project management\", \"Question\" ] )\r\n+\r\n+ def testAddAndRemoveLabels( self ):\r\n+ bug = self.repo.get_label( \"Bug\" )\r\n+ question = self.repo.get_label( \"Question\" )\r\n+ self.assertListKeyEqual( self.issue.get_labels(), lambda l: l.name, [ \"Bug\", \"Project management\", \"Question\" ] )\r\n+ self.issue.remove_from_labels( bug )\r\n+ self.assertListKeyEqual( self.issue.get_labels(), lambda l: l.name, [ \"Project management\", \"Question\" ] )\r\n+ self.issue.remove_from_labels( question )\r\n+ self.assertListKeyEqual( self.issue.get_labels(), lambda l: l.name, [ \"Project management\" ] )\r\n+ self.issue.add_to_labels( bug, question )\r\n+ self.assertListKeyEqual( self.issue.get_labels(), lambda l: l.name, [ \"Bug\", \"Project management\", \"Question\" ] )\r\n+\r\n+ def testDeleteAndSetLabels( self ):\r\n+ bug = self.repo.get_label( \"Bug\" )\r\n+ question = self.repo.get_label( \"Question\" )\r\n+ self.assertListKeyEqual( self.issue.get_labels(), lambda l: l.name, [ \"Bug\", \"Project management\", \"Question\" ] )\r\n+ self.issue.delete_labels()\r\n+ self.assertListKeyEqual( self.issue.get_labels(), lambda l: l.name, [] )\r\n+ self.issue.set_labels( bug, question )\r\n+ self.assertListKeyEqual( self.issue.get_labels(), lambda l: l.name, [ \"Bug\", \"Question\" ] )\r","status":"modified","deletions":1,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/test/Issue.py","changes":26,"additions":25,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/test/Issue.py","filename":"test/Issue.py"},{"patch":"@@ -3,13 +3,13 @@\n class IssueEvent( Framework.TestCase ):\r\n def setUp( self ):\r\n Framework.TestCase.setUp( self )\r\n- self.event = self.g.get_user().get_repo( \"PyGithub\" ).get_issues_event( 15819975 )\r\n+ self.event = self.g.get_user().get_repo( \"PyGithub\" ).get_issues_event( 16348656 )\r\n \r\n def testAttributes( self ):\r\n self.assertEqual( self.event.actor.login, \"jacquev6\" )\r\n- self.assertEqual( self.event.commit_id, None )\r\n- self.assertEqual( self.event.created_at, \"2012-05-19T10:38:23Z\" )\r\n- self.assertEqual( self.event.event, \"subscribed\" )\r\n- self.assertEqual( self.event.id, 15819975 )\r\n- self.assertEqual( self.event.issue.number, 28 )\r\n- self.assertEqual( self.event.url, \"https://api.github.com/repos/jacquev6/PyGithub/issues/events/15819975\" )\r\n+ self.assertEqual( self.event.commit_id, \"ed866fc43833802ab553e5ff8581c81bb00dd433\" )\r\n+ self.assertEqual( self.event.created_at, \"2012-05-27T07:29:25Z\" )\r\n+ self.assertEqual( self.event.event, \"referenced\" )\r\n+ self.assertEqual( self.event.id, 16348656 )\r\n+ self.assertEqual( self.event.issue.number, 30 )\r\n+ self.assertEqual( self.event.url, \"https://api.github.com/repos/jacquev6/PyGithub/issues/events/16348656\" )\r","status":"modified","deletions":7,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/test/IssueEvent.py","changes":14,"additions":7,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/test/IssueEvent.py","filename":"test/IssueEvent.py"},{"patch":"@@ -0,0 +1,45 @@\n+GET /repos/jacquev6/PyGithub/labels/Bug {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4992'), ('content-length', '97'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"569c414d87e8ec43ec269a9e28bc2982\"'), ('date', 'Sun, 27 May 2012 09:04:01 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+{\"color\":\"e10c02\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\"}\n+\n+GET /repos/jacquev6/PyGithub/labels/Question {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4991'), ('content-length', '107'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"b659c8dcc1212c71f826547c3cc7ae99\"'), ('date', 'Sun, 27 May 2012 09:04:02 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}\n+\n+GET /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4990'), ('content-length', '335'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"c9f9beccb03030beaf7b80927da6fef6\"'), ('date', 'Sun, 27 May 2012 09:04:03 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\",\"color\":\"e10c02\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\",\"color\":\"444444\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}]\n+\n+DELETE /repos/jacquev6/PyGithub/issues/28/labels/Bug {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4989'), ('content-length', '237'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"46cc70bad88a09b559a5e67089005105\"'), ('date', 'Sun, 27 May 2012 09:04:03 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\",\"color\":\"444444\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}]\n+\n+GET /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4988'), ('content-length', '237'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"46cc70bad88a09b559a5e67089005105\"'), ('date', 'Sun, 27 May 2012 09:04:04 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\",\"color\":\"444444\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}]\n+\n+DELETE /repos/jacquev6/PyGithub/issues/28/labels/Question {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4987'), ('content-length', '129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"5352ae15c8a5a36c6cace63be9367332\"'), ('date', 'Sun, 27 May 2012 09:04:04 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\",\"color\":\"444444\"}]\n+\n+GET /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4986'), ('content-length', '129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"5352ae15c8a5a36c6cace63be9367332\"'), ('date', 'Sun, 27 May 2012 09:04:05 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\",\"color\":\"444444\"}]\n+\n+POST /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} [\"Bug\", \"Question\"]\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4985'), ('content-length', '335'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"d135d74d2ea2159d044676a220d41d3a\"'), ('date', 'Sun, 27 May 2012 09:04:06 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"color\":\"e10c02\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\"},{\"color\":\"444444\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\"},{\"color\":\"02e10c\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\"}]\n+\n+GET /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4984'), ('content-length', '335'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"c9f9beccb03030beaf7b80927da6fef6\"'), ('date', 'Sun, 27 May 2012 09:04:06 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\",\"color\":\"e10c02\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\",\"color\":\"444444\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}]\n+","status":"added","deletions":0,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/test/ReplayData/Issue.testAddAndRemoveLabels.txt","changes":45,"additions":45,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/test/ReplayData/Issue.testAddAndRemoveLabels.txt","filename":"test/ReplayData/Issue.testAddAndRemoveLabels.txt"},{"patch":"@@ -0,0 +1,35 @@\n+GET /repos/jacquev6/PyGithub/labels/Bug {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4974'), ('content-length', '97'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"fe2e942523eecb156d100829a6347516\"'), ('date', 'Sun, 27 May 2012 09:06:37 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\",\"color\":\"e10c02\"}\n+\n+GET /repos/jacquev6/PyGithub/labels/Question {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4973'), ('content-length', '107'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"931e58d337b2290717303141eda89cd7\"'), ('date', 'Sun, 27 May 2012 09:06:38 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+{\"color\":\"02e10c\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\"}\n+\n+GET /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4972'), ('content-length', '335'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"d135d74d2ea2159d044676a220d41d3a\"'), ('date', 'Sun, 27 May 2012 09:06:39 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"color\":\"e10c02\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\"},{\"color\":\"444444\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\"},{\"color\":\"02e10c\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\"}]\n+\n+DELETE /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} null\n+204\n+[('status', '204 No Content'), ('x-ratelimit-remaining', '4971'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"d41d8cd98f00b204e9800998ecf8427e\"'), ('date', 'Sun, 27 May 2012 09:06:39 GMT')]\n+\n+\n+GET /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4970'), ('content-length', '2'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"d751713988987e9331980363e24189ce\"'), ('date', 'Sun, 27 May 2012 09:06:40 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[]\n+\n+PUT /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} [\"Bug\", \"Question\"]\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4969'), ('content-length', '207'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"1a56634d9c1050a88592ff55ed8adc62\"'), ('date', 'Sun, 27 May 2012 09:06:40 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\",\"color\":\"e10c02\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}]\n+\n+GET /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4968'), ('content-length', '207'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"1a56634d9c1050a88592ff55ed8adc62\"'), ('date', 'Sun, 27 May 2012 09:06:41 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\",\"color\":\"e10c02\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}]\n+","status":"added","deletions":0,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/test/ReplayData/Issue.testDeleteAndSetLabels.txt","changes":35,"additions":35,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/test/ReplayData/Issue.testDeleteAndSetLabels.txt","filename":"test/ReplayData/Issue.testDeleteAndSetLabels.txt"},{"patch":"@@ -0,0 +1,5 @@\n+GET /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4996'), ('content-length', '335'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"c9f9beccb03030beaf7b80927da6fef6\"'), ('date', 'Sun, 27 May 2012 08:56:31 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\",\"color\":\"e10c02\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\",\"color\":\"444444\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}]\n+","status":"added","deletions":0,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/test/ReplayData/Issue.testGetLabels.txt","changes":5,"additions":5,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/test/ReplayData/Issue.testGetLabels.txt","filename":"test/ReplayData/Issue.testGetLabels.txt"},{"patch":"@@ -1,15 +1,15 @@\n GET /user {'Authorization': 'Basic login_and_password_removed'} null\n 200\n-[('status', '200 OK'), ('x-ratelimit-remaining', '4907'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"99c9bfb75395b749e9913a4729126fb5\"'), ('date', 'Sun, 27 May 2012 07:19:30 GMT'), ('content-type', 'application/json; charset=utf-8')]\n-{\"private_gists\":5,\"type\":\"User\",\"company\":\"Criteo\",\"location\":\"Paris, France\",\"hireable\":false,\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"bio\":\"\",\"following\":24,\"blog\":\"http://vincent-jacques.net\",\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\",\"total_private_repos\":5,\"followers\":13,\"owned_private_repos\":5,\"disk_usage\":16976,\"collaborators\":0,\"html_url\":\"https://github.com/jacquev6\",\"url\":\"https://api.github.com/users/jacquev6\",\"name\":\"Vincent Jacques\",\"login\":\"jacquev6\",\"public_repos\":11,\"public_gists\":3,\"email\":\"vincent@vincent-jacques.net\",\"id\":327146,\"plan\":{\"private_repos\":5,\"collaborators\":1,\"name\":\"micro\",\"space\":614400},\"created_at\":\"2010-07-09T06:10:06Z\"}\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4996'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"8974bb1628a3e3a6d3eb3b08c1b5a46b\"'), ('date', 'Sun, 27 May 2012 07:32:54 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+{\"type\":\"User\",\"bio\":\"\",\"disk_usage\":16976,\"total_private_repos\":5,\"url\":\"https://api.github.com/users/jacquev6\",\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\",\"owned_private_repos\":5,\"collaborators\":0,\"plan\":{\"collaborators\":1,\"private_repos\":5,\"name\":\"micro\",\"space\":614400},\"company\":\"Criteo\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"login\":\"jacquev6\",\"email\":\"vincent@vincent-jacques.net\",\"public_gists\":3,\"followers\":13,\"name\":\"Vincent Jacques\",\"created_at\":\"2010-07-09T06:10:06Z\",\"blog\":\"http://vincent-jacques.net\",\"location\":\"Paris, France\",\"hireable\":false,\"id\":327146,\"private_gists\":5,\"public_repos\":11,\"following\":24,\"html_url\":\"https://github.com/jacquev6\"}\n \n GET /repos/jacquev6/PyGithub {'Authorization': 'Basic login_and_password_removed'} null\n 200\n-[('status', '200 OK'), ('x-ratelimit-remaining', '4906'), ('content-length', '1129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"4c20acf0b23f75bbf25106b1a04f65a5\"'), ('date', 'Sun, 27 May 2012 07:19:31 GMT'), ('content-type', 'application/json; charset=utf-8')]\n-{\"description\":\"Python library implementing the full Github API v3\",\"full_name\":\"jacquev6/PyGithub\",\"has_wiki\":false,\"has_issues\":true,\"updated_at\":\"2012-05-27T06:55:28Z\",\"forks\":3,\"mirror_url\":null,\"homepage\":\"http://vincent-jacques.net/PyGithub\",\"ssh_url\":\"git@github.com:jacquev6/PyGithub.git\",\"open_issues\":16,\"fork\":false,\"svn_url\":\"https://github.com/jacquev6/PyGithub\",\"pushed_at\":\"2012-05-27T06:00:28Z\",\"size\":308,\"html_url\":\"https://github.com/jacquev6/PyGithub\",\"private\":false,\"url\":\"https://api.github.com/repos/jacquev6/PyGithub\",\"clone_url\":\"https://github.com/jacquev6/PyGithub.git\",\"owner\":{\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\",\"url\":\"https://api.github.com/users/jacquev6\",\"login\":\"jacquev6\",\"id\":327146},\"name\":\"PyGithub\",\"has_downloads\":true,\"language\":\"Python\",\"watchers\":15,\"git_url\":\"git://github.com/jacquev6/PyGithub.git\",\"id\":3544490,\"permissions\":{\"admin\":true,\"pull\":true,\"push\":true},\"created_at\":\"2012-02-25T12:53:47Z\"}\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4995'), ('content-length', '1129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"f1e4eb3993a364b66b68ec9db42405bd\"'), ('date', 'Sun, 27 May 2012 07:32:55 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+{\"clone_url\":\"https://github.com/jacquev6/PyGithub.git\",\"has_downloads\":true,\"watchers\":15,\"updated_at\":\"2012-05-27T07:29:24Z\",\"permissions\":{\"pull\":true,\"admin\":true,\"push\":true},\"homepage\":\"http://vincent-jacques.net/PyGithub\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub\",\"mirror_url\":null,\"has_wiki\":false,\"has_issues\":true,\"fork\":false,\"forks\":3,\"git_url\":\"git://github.com/jacquev6/PyGithub.git\",\"size\":308,\"private\":false,\"open_issues\":16,\"svn_url\":\"https://github.com/jacquev6/PyGithub\",\"owner\":{\"url\":\"https://api.github.com/users/jacquev6\",\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"login\":\"jacquev6\",\"id\":327146},\"name\":\"PyGithub\",\"language\":\"Python\",\"description\":\"Python library implementing the full Github API v3\",\"ssh_url\":\"git@github.com:jacquev6/PyGithub.git\",\"pushed_at\":\"2012-05-27T07:29:24Z\",\"created_at\":\"2012-02-25T12:53:47Z\",\"id\":3544490,\"html_url\":\"https://github.com/jacquev6/PyGithub\",\"full_name\":\"jacquev6/PyGithub\"}\n \n-GET /repos/jacquev6/PyGithub/issues/events/15819975 {'Authorization': 'Basic login_and_password_removed'} null\n+GET /repos/jacquev6/PyGithub/issues/events/16348656 {'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed'} null\n 200\n-[('status', '200 OK'), ('x-ratelimit-remaining', '4905'), ('content-length', '2430'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"a3d244842d23f92f69a23e21626fad11\"'), ('date', 'Sun, 27 May 2012 07:19:31 GMT'), ('content-type', 'application/json; charset=utf-8')]\n-{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues/events/15819975\",\"issue\":{\"updated_at\":\"2012-05-26T14:59:33Z\",\"body\":\"Body edited by PyGithub\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues/28\",\"comments\":0,\"milestone\":{\"creator\":{\"url\":\"https://api.github.com/users/jacquev6\",\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"login\":\"jacquev6\",\"id\":327146},\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/milestones/1\",\"number\":1,\"title\":\"Version 0.4\",\"due_on\":\"2012-03-13T07:00:00Z\",\"closed_issues\":3,\"open_issues\":0,\"created_at\":\"2012-03-08T12:22:10Z\",\"state\":\"closed\",\"description\":\"\",\"id\":93546},\"number\":28,\"assignee\":{\"url\":\"https://api.github.com/users/jacquev6\",\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"login\":\"jacquev6\",\"id\":327146},\"closed_at\":\"2012-05-26T14:59:33Z\",\"title\":\"Issue created by PyGithub\",\"labels\":[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\",\"color\":\"e10c02\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\",\"color\":\"444444\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}],\"created_at\":\"2012-05-19T10:38:23Z\",\"state\":\"closed\",\"user\":{\"url\":\"https://api.github.com/users/jacquev6\",\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"login\":\"jacquev6\",\"id\":327146},\"id\":4653757,\"pull_request\":{\"diff_url\":null,\"patch_url\":null,\"html_url\":null},\"html_url\":\"https://github.com/jacquev6/PyGithub/issues/28\"},\"commit_id\":null,\"created_at\":\"2012-05-19T10:38:23Z\",\"event\":\"subscribed\",\"id\":15819975,\"actor\":{\"url\":\"https://api.github.com/users/jacquev6\",\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"login\":\"jacquev6\",\"id\":327146}}\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4994'), ('content-length', '1384'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"fefecab09e7355d4ef9875677c2631da\"'), ('date', 'Sun, 27 May 2012 07:32:56 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues/events/16348656\",\"issue\":{\"updated_at\":\"2012-05-27T07:27:51Z\",\"body\":\"Body created by PyGithub\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues/30\",\"comments\":0,\"milestone\":null,\"number\":30,\"assignee\":null,\"closed_at\":null,\"title\":\"Issue also created by PyGithub\",\"labels\":[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}],\"created_at\":\"2012-05-27T05:40:15Z\",\"state\":\"open\",\"user\":{\"url\":\"https://api.github.com/users/jacquev6\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"login\":\"jacquev6\",\"id\":327146,\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\"},\"id\":4769659,\"pull_request\":{\"patch_url\":null,\"diff_url\":null,\"html_url\":null},\"html_url\":\"https://github.com/jacquev6/PyGithub/issues/30\"},\"commit_id\":\"ed866fc43833802ab553e5ff8581c81bb00dd433\",\"created_at\":\"2012-05-27T07:29:25Z\",\"event\":\"referenced\",\"id\":16348656,\"actor\":{\"url\":\"https://api.github.com/users/jacquev6\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"login\":\"jacquev6\",\"id\":327146,\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\"}}\n ","status":"modified","deletions":7,"blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/test/ReplayData/IssueEvent.setUp.txt","changes":14,"additions":7,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/test/ReplayData/IssueEvent.setUp.txt","filename":"test/ReplayData/IssueEvent.setUp.txt"}] + diff --git a/lib/github/tests/ReplayData/PullRequest.testGetIssueComment.txt b/lib/github/tests/ReplayData/PullRequest.testGetIssueComment.txt new file mode 100644 index 0000000000..6928047846 --- /dev/null +++ b/lib/github/tests/ReplayData/PullRequest.testGetIssueComment.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/comments/8387331 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '517'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4960'), ('server', 'nginx/1.0.13'), ('last-modified', 'Sat, 08 Sep 2012 12:57:51 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"5494519596414fbfe208a0b6d193e8f9"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Sat, 08 Sep 2012 13:03:46 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"body":"Issue comment created by PyGithub","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/jacquev6","id":327146},"created_at":"2012-09-08T12:57:51Z","updated_at":"2012-09-08T12:57:51Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/8387331","id":8387331} + diff --git a/lib/github/tests/ReplayData/PullRequest.testGetIssueComments.txt b/lib/github/tests/ReplayData/PullRequest.testGetIssueComments.txt new file mode 100644 index 0000000000..6b814efd39 --- /dev/null +++ b/lib/github/tests/ReplayData/PullRequest.testGetIssueComments.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/31/comments +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4968'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '519'), ('server', 'nginx/1.0.13'), ('last-modified', 'Sat, 08 Sep 2012 12:57:51 GMT'), ('connection', 'keep-alive'), ('etag', '"5494519596414fbfe208a0b6d193e8f9"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Sat, 08 Sep 2012 12:59:56 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"body":"Issue comment created by PyGithub","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"},"created_at":"2012-09-08T12:57:51Z","updated_at":"2012-09-08T12:57:51Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/8387331","id":8387331}] + diff --git a/lib/github/tests/ReplayData/PullRequest.testMerge.txt b/lib/github/tests/ReplayData/PullRequest.testMerge.txt new file mode 100644 index 0000000000..efd3c48d5b --- /dev/null +++ b/lib/github/tests/ReplayData/PullRequest.testMerge.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/pulls/31/merge +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +404 +[('status', '404 Not Found'), ('x-ratelimit-remaining', '4953'), ('content-length', '23'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"e66a7a6c91e2c26803f3f49feb7a883f"'), ('date', 'Sun, 27 May 2012 10:29:06 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"message":"Not Found"} + +https +PUT +api.github.com +None +/repos/jacquev6/PyGithub/pulls/31/merge +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4952'), ('content-length', '109'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"2cf4589169510ce73907214b7327fe5a"'), ('date', 'Sun, 27 May 2012 10:29:07 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"merged":true,"message":"Pull Request successfully merged","sha":"688208b1a5a074871d0e9376119556897439697d"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/pulls/31/merge +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4951'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sun, 27 May 2012 10:29:08 GMT')] + + diff --git a/lib/github/tests/ReplayData/PullRequest.testMergeWithCommitMessage.txt b/lib/github/tests/ReplayData/PullRequest.testMergeWithCommitMessage.txt new file mode 100644 index 0000000000..795d263af3 --- /dev/null +++ b/lib/github/tests/ReplayData/PullRequest.testMergeWithCommitMessage.txt @@ -0,0 +1,44 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4992'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"529c3e7540840a3720cfe5a3d7b83fa4"'), ('date', 'Tue, 29 May 2012 18:07:52 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"total_private_repos":5,"type":"User","disk_usage":17092,"collaborators":0,"owned_private_repos":5,"url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","plan":{"collaborators":1,"private_repos":5,"name":"micro","space":614400},"public_gists":3,"company":"Criteo","blog":"http://vincent-jacques.net","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","public_repos":10,"email":"vincent@vincent-jacques.net","hireable":false,"private_gists":5,"followers":13,"name":"Vincent Jacques","created_at":"2010-07-09T06:10:06Z","location":"Paris, France","bio":"","id":327146,"following":24} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4991'), ('content-length', '1129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"26bd79e0ccd81bb798c2959a498825c7"'), ('date', 'Tue, 29 May 2012 18:07:52 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"clone_url":"https://github.com/jacquev6/PyGithub.git","has_downloads":true,"watchers":17,"updated_at":"2012-05-29T18:04:08Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","git_url":"git://github.com/jacquev6/PyGithub.git","html_url":"https://github.com/jacquev6/PyGithub","has_wiki":false,"has_issues":true,"fork":false,"forks":3,"size":480,"private":false,"open_issues":15,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"name":"PyGithub","mirror_url":null,"language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-29T18:04:07Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"full_name":"jacquev6/PyGithub"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/pulls/39 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4990'), ('content-length', '4494'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"716935e701e066a56718d7a8b2f409f8"'), ('date', 'Tue, 29 May 2012 18:07:53 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"merged":false,"diff_url":"https://github.com/jacquev6/PyGithub/pull/39.diff","head":{"ref":"master","label":"BeaverSoftware:master","repo":{"clone_url":"https://github.com/BeaverSoftware/PyGithub.git","has_downloads":true,"watchers":1,"updated_at":"2012-05-29T18:05:10Z","homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/BeaverSoftware/PyGithub","git_url":"git://github.com/BeaverSoftware/PyGithub.git","html_url":"https://github.com/BeaverSoftware/PyGithub","has_wiki":false,"has_issues":false,"fork":true,"forks":0,"mirror_url":null,"size":428,"private":false,"open_issues":0,"svn_url":"https://github.com/BeaverSoftware/PyGithub","owner":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:BeaverSoftware/PyGithub.git","pushed_at":"2012-05-29T18:05:10Z","created_at":"2012-05-29T18:03:19Z","id":4485562,"full_name":"BeaverSoftware/PyGithub"},"user":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031},"sha":"ca6e7ef9ce22dc01290bb59507f24cc17f42daa4"},"updated_at":"2012-05-29T18:06:07Z","issue_url":"https://github.com/jacquev6/PyGithub/issues/39","_links":{"self":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/39"},"review_comments":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/39/comments"},"comments":{"href":"https://api.github.com/repos/jacquev6/PyGithub/issues/39/comments"},"issue":{"href":"https://api.github.com/repos/jacquev6/PyGithub/issues/39"},"html":{"href":"https://github.com/jacquev6/PyGithub/pull/39"}},"body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/pulls/39","comments":0,"review_comments":0,"changed_files":15,"base":{"ref":"topic/RewriteWithGeneratedCode","label":"jacquev6:topic/RewriteWithGeneratedCode","repo":{"clone_url":"https://github.com/jacquev6/PyGithub.git","has_downloads":true,"watchers":17,"updated_at":"2012-05-29T18:04:08Z","homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","git_url":"git://github.com/jacquev6/PyGithub.git","html_url":"https://github.com/jacquev6/PyGithub","has_wiki":false,"has_issues":true,"fork":false,"forks":3,"mirror_url":null,"size":480,"private":false,"open_issues":15,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-29T18:04:07Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"full_name":"jacquev6/PyGithub"},"user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"sha":"d57aea6a898050115a089e6f86c5314d7daf97e8"},"number":39,"html_url":"https://github.com/jacquev6/PyGithub/pull/39","patch_url":"https://github.com/jacquev6/PyGithub/pull/39.patch","mergeable":true,"title":"Pull request to be merged by PyGithub with a custom commit message","deletions":31,"merged_by":null,"additions":95,"closed_at":null,"created_at":"2012-05-29T18:06:07Z","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"state":"open","id":1448168,"commits":2,"merged_at":null} + +https +PUT +api.github.com +None +/repos/jacquev6/PyGithub/pulls/39/merge +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"commit_message": "Custom commit message created by PyGithub"} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4989'), ('content-length', '109'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"378c85a4f6b6694e0f7686effbc2c29f"'), ('date', 'Tue, 29 May 2012 18:07:54 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"merged":true,"message":"Pull Request successfully merged","sha":"2525d86ae3bf7d26003e2a6d5226a8d870499792"} + diff --git a/lib/github/tests/ReplayData/PullRequestComment.setUp.txt b/lib/github/tests/ReplayData/PullRequestComment.setUp.txt new file mode 100644 index 0000000000..874c817a15 --- /dev/null +++ b/lib/github/tests/ReplayData/PullRequestComment.setUp.txt @@ -0,0 +1,44 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4999'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"a0b159629429109dd7505d8e6cbac5a6"'), ('date', 'Sun, 27 May 2012 10:04:35 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","disk_usage":16976,"public_gists":3,"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","public_repos":11,"hireable":false,"private_gists":5,"plan":{"private_repos":5,"collaborators":1,"name":"micro","space":614400},"bio":"","company":"Criteo","blog":"http://vincent-jacques.net","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","total_private_repos":5,"email":"vincent@vincent-jacques.net","collaborators":0,"followers":13,"name":"Vincent Jacques","owned_private_repos":5,"created_at":"2010-07-09T06:10:06Z","location":"Paris, France","id":327146,"following":24,"html_url":"https://github.com/jacquev6"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4998'), ('content-length', '1129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"fdaf0d1e1356717e4a78f377e7b39115"'), ('date', 'Sun, 27 May 2012 10:04:35 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"clone_url":"https://github.com/jacquev6/PyGithub.git","has_downloads":true,"watchers":15,"updated_at":"2012-05-27T08:50:04Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","has_wiki":false,"has_issues":true,"fork":false,"forks":3,"size":308,"git_url":"git://github.com/jacquev6/PyGithub.git","private":false,"open_issues":17,"mirror_url":null,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-27T07:29:24Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"html_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/pulls/31 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4997'), ('content-length', '4486'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"8f57bc1a8842877715f836c1bfd943e5"'), ('date', 'Sun, 27 May 2012 10:04:36 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"merged":false,"changed_files":45,"mergeable":true,"head":{"ref":"master","label":"BeaverSoftware:master","repo":{"clone_url":"https://github.com/BeaverSoftware/PyGithub.git","git_url":"git://github.com/BeaverSoftware/PyGithub.git","has_downloads":true,"watchers":1,"updated_at":"2012-05-27T09:09:17Z","homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/BeaverSoftware/PyGithub","mirror_url":null,"has_wiki":false,"has_issues":false,"fork":true,"forks":0,"size":176,"private":false,"open_issues":0,"svn_url":"https://github.com/BeaverSoftware/PyGithub","owner":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:BeaverSoftware/PyGithub.git","pushed_at":"2012-05-27T09:09:17Z","created_at":"2012-05-27T08:50:04Z","id":4460787,"html_url":"https://github.com/BeaverSoftware/PyGithub","full_name":"BeaverSoftware/PyGithub"},"user":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031},"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},"updated_at":"2012-05-27T09:40:12Z","issue_url":"https://github.com/jacquev6/PyGithub/issues/31","patch_url":"https://github.com/jacquev6/PyGithub/pull/31.patch","body":"Body of the pull request","url":"https://api.github.com/repos/jacquev6/PyGithub/pulls/31","comments":0,"base":{"ref":"topic/RewriteWithGeneratedCode","label":"jacquev6:topic/RewriteWithGeneratedCode","repo":{"clone_url":"https://github.com/jacquev6/PyGithub.git","git_url":"git://github.com/jacquev6/PyGithub.git","has_downloads":true,"watchers":15,"updated_at":"2012-05-27T08:50:04Z","homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","mirror_url":null,"has_wiki":false,"has_issues":true,"fork":false,"forks":3,"size":308,"private":false,"open_issues":17,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-27T07:29:24Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"html_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub"},"user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"sha":"ed866fc43833802ab553e5ff8581c81bb00dd433"},"number":31,"merged_by":null,"closed_at":null,"title":"Pull request created by PyGithub","deletions":384,"merged_at":null,"diff_url":"https://github.com/jacquev6/PyGithub/pull/31.diff","additions":511,"created_at":"2012-05-27T09:25:36Z","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"state":"open","id":1436215,"review_comments":1,"commits":3,"_links":{"self":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/31"},"comments":{"href":"https://api.github.com/repos/jacquev6/PyGithub/issues/31/comments"},"issue":{"href":"https://api.github.com/repos/jacquev6/PyGithub/issues/31"},"html":{"href":"https://github.com/jacquev6/PyGithub/pull/31"},"review_comments":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/31/comments"}},"html_url":"https://github.com/jacquev6/PyGithub/pull/31"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/pulls/comments/886298 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4996'), ('content-length', '937'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"c05c16826ff8762adedb7757f916d5de"'), ('date', 'Sun, 27 May 2012 10:04:37 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"updated_at":"2012-05-27T09:40:12Z","position":5,"original_position":5,"body":"Comment created by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/pulls/comments/886298","commit_id":"8a4f306d4b223682dd19410d4a9150636ebe4206","_links":{"self":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/comments/886298"},"html":{"href":"https://github.com/jacquev6/PyGithub/pull/31#r886298"},"pull_request":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/31"}},"created_at":"2012-05-27T09:40:12Z","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"original_commit_id":"8a4f306d4b223682dd19410d4a9150636ebe4206","path":"src/github/Issue.py","id":886298,"html_url":"https://github.com/jacquev6/PyGithub/pull/170#issuecomment-18637907"} + diff --git a/lib/github/tests/ReplayData/PullRequestComment.testDelete.txt b/lib/github/tests/ReplayData/PullRequestComment.testDelete.txt new file mode 100644 index 0000000000..7e71face91 --- /dev/null +++ b/lib/github/tests/ReplayData/PullRequestComment.testDelete.txt @@ -0,0 +1,11 @@ +https +DELETE +api.github.com +None +/repos/jacquev6/PyGithub/pulls/comments/886298 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4936'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sun, 27 May 2012 10:49:27 GMT')] + + diff --git a/lib/github/tests/ReplayData/PullRequestComment.testEdit.txt b/lib/github/tests/ReplayData/PullRequestComment.testEdit.txt new file mode 100644 index 0000000000..acc1ab0be9 --- /dev/null +++ b/lib/github/tests/ReplayData/PullRequestComment.testEdit.txt @@ -0,0 +1,11 @@ +https +PATCH +api.github.com +None +/repos/jacquev6/PyGithub/pulls/comments/886298 +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"body": "Comment edited by PyGithub"} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4991'), ('content-length', '936'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"e8c290c08cd5ed76a92529759e9148bc"'), ('date', 'Sun, 27 May 2012 10:09:07 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"updated_at":"2012-05-27T10:09:07Z","position":5,"_links":{"self":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/comments/886298"},"html":{"href":"https://github.com/jacquev6/PyGithub/pull/31#r886298"},"pull_request":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/31"}},"original_position":5,"body":"Comment edited by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/pulls/comments/886298","commit_id":"8a4f306d4b223682dd19410d4a9150636ebe4206","created_at":"2012-05-27T09:40:12Z","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"original_commit_id":"8a4f306d4b223682dd19410d4a9150636ebe4206","path":"src/github/Issue.py","id":886298} + diff --git a/lib/github/tests/ReplayData/PullRequestFile.setUp.txt b/lib/github/tests/ReplayData/PullRequestFile.setUp.txt new file mode 100644 index 0000000000..ee7a1cc649 --- /dev/null +++ b/lib/github/tests/ReplayData/PullRequestFile.setUp.txt @@ -0,0 +1,44 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4944'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"bd2cf7798d42eb95b05522f2dcb89a33"'), ('date', 'Sun, 27 May 2012 10:47:14 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"private_gists":5,"collaborators":0,"type":"User","disk_usage":16856,"hireable":false,"url":"https://api.github.com/users/jacquev6","plan":{"collaborators":1,"name":"micro","private_repos":5,"space":614400},"public_repos":11,"bio":"","total_private_repos":5,"company":"Criteo","blog":"http://vincent-jacques.net","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","email":"vincent@vincent-jacques.net","owned_private_repos":5,"followers":13,"name":"Vincent Jacques","public_gists":3,"created_at":"2010-07-09T06:10:06Z","location":"Paris, France","id":327146,"following":24,"html_url":"https://github.com/jacquev6"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4943'), ('content-length', '1129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"9888bcfd5b8a8111f879b15668cd2794"'), ('date', 'Sun, 27 May 2012 10:47:15 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"clone_url":"https://github.com/jacquev6/PyGithub.git","git_url":"git://github.com/jacquev6/PyGithub.git","has_downloads":true,"watchers":15,"updated_at":"2012-05-27T10:29:10Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","mirror_url":null,"has_wiki":false,"has_issues":true,"fork":false,"forks":3,"size":188,"private":false,"open_issues":16,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-27T10:29:09Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"html_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/pulls/31 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4942'), ('content-length', '4806'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"2aaae2697fb8e4c261353aed1f375467"'), ('date', 'Sun, 27 May 2012 10:47:15 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"merged_by":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"title":"Title edited by PyGithub","state":"closed","comments":0,"merged_at":"2012-05-27T10:29:07Z","updated_at":"2012-05-27T10:29:07Z","deletions":384,"head":{"user":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","url":"https://api.github.com/users/BeaverSoftware","login":"BeaverSoftware","id":1424031},"repo":{"description":"Python library implementing the full Github API v3","full_name":"BeaverSoftware/PyGithub","has_wiki":false,"has_issues":false,"updated_at":"2012-05-27T09:09:17Z","forks":0,"mirror_url":null,"homepage":"http://vincent-jacques.net/PyGithub","ssh_url":"git@github.com:BeaverSoftware/PyGithub.git","open_issues":0,"fork":true,"svn_url":"https://github.com/BeaverSoftware/PyGithub","pushed_at":"2012-05-27T09:09:17Z","size":176,"html_url":"https://github.com/BeaverSoftware/PyGithub","private":false,"url":"https://api.github.com/repos/BeaverSoftware/PyGithub","clone_url":"https://github.com/BeaverSoftware/PyGithub.git","owner":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","url":"https://api.github.com/users/BeaverSoftware","login":"BeaverSoftware","id":1424031},"name":"PyGithub","has_downloads":true,"language":"Python","watchers":1,"git_url":"git://github.com/BeaverSoftware/PyGithub.git","id":4460787,"created_at":"2012-05-27T08:50:04Z"},"label":"BeaverSoftware:master","sha":"8a4f306d4b223682dd19410d4a9150636ebe4206","ref":"master"},"body":"Body edited by PyGithub","merged":true,"additions":511,"number":31,"_links":{"comments":{"href":"https://api.github.com/repos/jacquev6/PyGithub/issues/31/comments"},"issue":{"href":"https://api.github.com/repos/jacquev6/PyGithub/issues/31"},"self":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/31"},"review_comments":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/31/comments"},"html":{"href":"https://github.com/jacquev6/PyGithub/pull/31"}},"closed_at":"2012-05-27T10:29:07Z","diff_url":"https://github.com/jacquev6/PyGithub/pull/31.diff","mergeable":null,"commits":3,"changed_files":45,"html_url":"https://github.com/jacquev6/PyGithub/pull/31","url":"https://api.github.com/repos/jacquev6/PyGithub/pulls/31","review_comments":1,"issue_url":"https://github.com/jacquev6/PyGithub/issues/31","id":1436215,"base":{"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"repo":{"description":"Python library implementing the full Github API v3","full_name":"jacquev6/PyGithub","has_wiki":false,"has_issues":true,"updated_at":"2012-05-27T10:29:10Z","forks":3,"mirror_url":null,"homepage":"http://vincent-jacques.net/PyGithub","ssh_url":"git@github.com:jacquev6/PyGithub.git","open_issues":16,"fork":false,"svn_url":"https://github.com/jacquev6/PyGithub","pushed_at":"2012-05-27T10:29:09Z","size":188,"html_url":"https://github.com/jacquev6/PyGithub","private":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"name":"PyGithub","has_downloads":true,"language":"Python","watchers":15,"git_url":"git://github.com/jacquev6/PyGithub.git","id":3544490,"created_at":"2012-02-25T12:53:47Z"},"label":"jacquev6:topic/RewriteWithGeneratedCode","sha":"ed866fc43833802ab553e5ff8581c81bb00dd433","ref":"topic/RewriteWithGeneratedCode"},"created_at":"2012-05-27T09:25:36Z","patch_url":"https://github.com/jacquev6/PyGithub/pull/31.patch"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/pulls/31/files +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4941'), ('content-length', '169480'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"0eeb19c75ce5a922107d104ec2a5dd4e"'), ('date', 'Sun, 27 May 2012 10:47:16 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"status":"modified","changes":2,"deletions":1,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/codegen/templates/GithubObject.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/codegen/templates/GithubObject.py","filename":"codegen/templates/GithubObject.py","patch":"@@ -70,7 +70,7 @@ def __useAttributes( self, attributes ):\n \n # @toto No need to check if attribute is in attributes when attribute is mandatory\n {% for attribute in class.attributes|dictsort:\"name\" %}\n- if \"{{ attribute.name }}\" in attributes and attributes[ \"{{ attribute.name }}\" ] is not None:\n+ if \"{{ attribute.name }}\" in attributes and attributes[ \"{{ attribute.name }}\" ] is not None: # pragma no branch\n \n {% if attribute.type.cardinality == \"scalar\" %}\n {% if attribute.type.simple %}","additions":1,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":50,"deletions":25,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/AuthenticatedUser.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/AuthenticatedUser.py","filename":"src/github/AuthenticatedUser.py","patch":"@@ -568,78 +568,78 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"avatar_url\", \"bio\", \"blog\", \"collaborators\", \"company\", \"created_at\", \"disk_usage\", \"email\", \"followers\", \"following\", \"gravatar_id\", \"hireable\", \"html_url\", \"id\", \"location\", \"login\", \"name\", \"owned_private_repos\", \"plan\", \"private_gists\", \"public_gists\", \"public_repos\", \"total_private_repos\", \"type\", \"url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"avatar_url\" in attributes and attributes[ \"avatar_url\" ] is not None:\n+ if \"avatar_url\" in attributes and attributes[ \"avatar_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"avatar_url\" ], ( str, unicode ) )\n self.__avatar_url = attributes[ \"avatar_url\" ]\n- if \"bio\" in attributes and attributes[ \"bio\" ] is not None:\n+ if \"bio\" in attributes and attributes[ \"bio\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"bio\" ], ( str, unicode ) )\n self.__bio = attributes[ \"bio\" ]\n- if \"blog\" in attributes and attributes[ \"blog\" ] is not None:\n+ if \"blog\" in attributes and attributes[ \"blog\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"blog\" ], ( str, unicode ) )\n self.__blog = attributes[ \"blog\" ]\n- if \"collaborators\" in attributes and attributes[ \"collaborators\" ] is not None:\n+ if \"collaborators\" in attributes and attributes[ \"collaborators\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"collaborators\" ], int )\n self.__collaborators = attributes[ \"collaborators\" ]\n- if \"company\" in attributes and attributes[ \"company\" ] is not None:\n+ if \"company\" in attributes and attributes[ \"company\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"company\" ], ( str, unicode ) )\n self.__company = attributes[ \"company\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"created_at\" ], ( str, unicode ) )\n self.__created_at = attributes[ \"created_at\" ]\n- if \"disk_usage\" in attributes and attributes[ \"disk_usage\" ] is not None:\n+ if \"disk_usage\" in attributes and attributes[ \"disk_usage\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"disk_usage\" ], int )\n self.__disk_usage = attributes[ \"disk_usage\" ]\n- if \"email\" in attributes and attributes[ \"email\" ] is not None:\n+ if \"email\" in attributes and attributes[ \"email\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"email\" ], ( str, unicode ) )\n self.__email = attributes[ \"email\" ]\n- if \"followers\" in attributes and attributes[ \"followers\" ] is not None:\n+ if \"followers\" in attributes and attributes[ \"followers\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"followers\" ], int )\n self.__followers = attributes[ \"followers\" ]\n- if \"following\" in attributes and attributes[ \"following\" ] is not None:\n+ if \"following\" in attributes and attributes[ \"following\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"following\" ], int )\n self.__following = attributes[ \"following\" ]\n- if \"gravatar_id\" in attributes and attributes[ \"gravatar_id\" ] is not None:\n+ if \"gravatar_id\" in attributes and attributes[ \"gravatar_id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"gravatar_id\" ], ( str, unicode ) )\n self.__gravatar_id = attributes[ \"gravatar_id\" ]\n- if \"hireable\" in attributes and attributes[ \"hireable\" ] is not None:\n+ if \"hireable\" in attributes and attributes[ \"hireable\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"hireable\" ], bool )\n self.__hireable = attributes[ \"hireable\" ]\n- if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None:\n+ if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"html_url\" ], ( str, unicode ) )\n self.__html_url = attributes[ \"html_url\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"id\" ], int )\n self.__id = attributes[ \"id\" ]\n- if \"location\" in attributes and attributes[ \"location\" ] is not None:\n+ if \"location\" in attributes and attributes[ \"location\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"location\" ], ( str, unicode ) )\n self.__location = attributes[ \"location\" ]\n- if \"login\" in attributes and attributes[ \"login\" ] is not None:\n+ if \"login\" in attributes and attributes[ \"login\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"login\" ], ( str, unicode ) )\n self.__login = attributes[ \"login\" ]\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"name\" ], ( str, unicode ) )\n self.__name = attributes[ \"name\" ]\n- if \"owned_private_repos\" in attributes and attributes[ \"owned_private_repos\" ] is not None:\n+ if \"owned_private_repos\" in attributes and attributes[ \"owned_private_repos\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"owned_private_repos\" ], int )\n self.__owned_private_repos = attributes[ \"owned_private_repos\" ]\n- if \"plan\" in attributes and attributes[ \"plan\" ] is not None:\n+ if \"plan\" in attributes and attributes[ \"plan\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"plan\" ], dict )\n self.__plan = Plan.Plan( self.__requester, attributes[ \"plan\" ], completion = LazyCompletion )\n- if \"private_gists\" in attributes and attributes[ \"private_gists\" ] is not None:\n+ if \"private_gists\" in attributes and attributes[ \"private_gists\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"private_gists\" ], int )\n self.__private_gists = attributes[ \"private_gists\" ]\n- if \"public_gists\" in attributes and attributes[ \"public_gists\" ] is not None:\n+ if \"public_gists\" in attributes and attributes[ \"public_gists\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"public_gists\" ], int )\n self.__public_gists = attributes[ \"public_gists\" ]\n- if \"public_repos\" in attributes and attributes[ \"public_repos\" ] is not None:\n+ if \"public_repos\" in attributes and attributes[ \"public_repos\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"public_repos\" ], int )\n self.__public_repos = attributes[ \"public_repos\" ]\n- if \"total_private_repos\" in attributes and attributes[ \"total_private_repos\" ] is not None:\n+ if \"total_private_repos\" in attributes and attributes[ \"total_private_repos\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"total_private_repos\" ], int )\n self.__total_private_repos = attributes[ \"total_private_repos\" ]\n- if \"type\" in attributes and attributes[ \"type\" ] is not None:\n+ if \"type\" in attributes and attributes[ \"type\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"type\" ], ( str, unicode ) )\n self.__type = attributes[ \"type\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]","additions":25,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":18,"deletions":9,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Authorization.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Authorization.py","filename":"src/github/Authorization.py","patch":"@@ -117,21 +117,21 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"app\", \"created_at\", \"id\", \"note\", \"note_url\", \"scopes\", \"token\", \"updated_at\", \"url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"app\" in attributes and attributes[ \"app\" ] is not None:\n+ if \"app\" in attributes and attributes[ \"app\" ] is not None: # pragma no branch\n self.__app = attributes[ \"app\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n self.__created_at = attributes[ \"created_at\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n self.__id = attributes[ \"id\" ]\n- if \"note\" in attributes and attributes[ \"note\" ] is not None:\n+ if \"note\" in attributes and attributes[ \"note\" ] is not None: # pragma no branch\n self.__note = attributes[ \"note\" ]\n- if \"note_url\" in attributes and attributes[ \"note_url\" ] is not None:\n+ if \"note_url\" in attributes and attributes[ \"note_url\" ] is not None: # pragma no branch\n self.__note_url = attributes[ \"note_url\" ]\n- if \"scopes\" in attributes and attributes[ \"scopes\" ] is not None:\n+ if \"scopes\" in attributes and attributes[ \"scopes\" ] is not None: # pragma no branch\n self.__scopes = attributes[ \"scopes\" ]\n- if \"token\" in attributes and attributes[ \"token\" ] is not None:\n+ if \"token\" in attributes and attributes[ \"token\" ] is not None: # pragma no branch\n self.__token = attributes[ \"token\" ]\n- if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None:\n+ if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None: # pragma no branch\n self.__updated_at = attributes[ \"updated_at\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n self.__url = attributes[ \"url\" ]","additions":9,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":4,"deletions":2,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Branch.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Branch.py","filename":"src/github/Branch.py","patch":"@@ -28,9 +28,9 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"commit\", \"name\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"commit\" in attributes and attributes[ \"commit\" ] is not None:\n+ if \"commit\" in attributes and attributes[ \"commit\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"commit\" ], dict )\n self.__commit = Commit.Commit( self.__requester, attributes[ \"commit\" ], completion = LazyCompletion )\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"name\" ], ( str, unicode ) )\n self.__name = attributes[ \"name\" ]","additions":2,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":16,"deletions":8,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Commit.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Commit.py","filename":"src/github/Commit.py","patch":"@@ -120,33 +120,33 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"author\", \"commit\", \"committer\", \"files\", \"parents\", \"sha\", \"stats\", \"url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"author\" in attributes and attributes[ \"author\" ] is not None:\n+ if \"author\" in attributes and attributes[ \"author\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"author\" ], dict )\n self.__author = NamedUser.NamedUser( self.__requester, attributes[ \"author\" ], completion = LazyCompletion )\n- if \"commit\" in attributes and attributes[ \"commit\" ] is not None:\n+ if \"commit\" in attributes and attributes[ \"commit\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"commit\" ], dict )\n self.__commit = GitCommit.GitCommit( self.__requester, attributes[ \"commit\" ], completion = LazyCompletion )\n- if \"committer\" in attributes and attributes[ \"committer\" ] is not None:\n+ if \"committer\" in attributes and attributes[ \"committer\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"committer\" ], dict )\n self.__committer = NamedUser.NamedUser( self.__requester, attributes[ \"committer\" ], completion = LazyCompletion )\n- if \"files\" in attributes and attributes[ \"files\" ] is not None:\n+ if \"files\" in attributes and attributes[ \"files\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"files\" ], list ) and ( len( attributes[ \"files\" ] ) == 0 or isinstance( attributes[ \"files\" ][ 0 ], dict ) )\n self.__files = [\n CommitFile.CommitFile( self.__requester, element, completion = LazyCompletion )\n for element in attributes[ \"files\" ]\n ]\n- if \"parents\" in attributes and attributes[ \"parents\" ] is not None:\n+ if \"parents\" in attributes and attributes[ \"parents\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"parents\" ], list ) and ( len( attributes[ \"parents\" ] ) == 0 or isinstance( attributes[ \"parents\" ][ 0 ], dict ) )\n self.__parents = [\n Commit( self.__requester, element, completion = LazyCompletion )\n for element in attributes[ \"parents\" ]\n ]\n- if \"sha\" in attributes and attributes[ \"sha\" ] is not None:\n+ if \"sha\" in attributes and attributes[ \"sha\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"sha\" ], ( str, unicode ) )\n self.__sha = attributes[ \"sha\" ]\n- if \"stats\" in attributes and attributes[ \"stats\" ] is not None:\n+ if \"stats\" in attributes and attributes[ \"stats\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"stats\" ], dict )\n self.__stats = CommitStats.CommitStats( self.__requester, attributes[ \"stats\" ], completion = LazyCompletion )\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]","additions":8,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":22,"deletions":11,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/CommitComment.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/CommitComment.py","filename":"src/github/CommitComment.py","patch":"@@ -121,36 +121,36 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"body\", \"commit_id\", \"created_at\", \"html_url\", \"id\", \"line\", \"path\", \"position\", \"updated_at\", \"url\", \"user\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"body\" in attributes and attributes[ \"body\" ] is not None:\n+ if \"body\" in attributes and attributes[ \"body\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"body\" ], ( str, unicode ) )\n self.__body = attributes[ \"body\" ]\n- if \"commit_id\" in attributes and attributes[ \"commit_id\" ] is not None:\n+ if \"commit_id\" in attributes and attributes[ \"commit_id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"commit_id\" ], ( str, unicode ) )\n self.__commit_id = attributes[ \"commit_id\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"created_at\" ], ( str, unicode ) )\n self.__created_at = attributes[ \"created_at\" ]\n- if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None:\n+ if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"html_url\" ], ( str, unicode ) )\n self.__html_url = attributes[ \"html_url\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"id\" ], int )\n self.__id = attributes[ \"id\" ]\n- if \"line\" in attributes and attributes[ \"line\" ] is not None:\n+ if \"line\" in attributes and attributes[ \"line\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"line\" ], int )\n self.__line = attributes[ \"line\" ]\n- if \"path\" in attributes and attributes[ \"path\" ] is not None:\n+ if \"path\" in attributes and attributes[ \"path\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"path\" ], ( str, unicode ) )\n self.__path = attributes[ \"path\" ]\n- if \"position\" in attributes and attributes[ \"position\" ] is not None:\n+ if \"position\" in attributes and attributes[ \"position\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"position\" ], int )\n self.__position = attributes[ \"position\" ]\n- if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None:\n+ if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"updated_at\" ], ( str, unicode ) )\n self.__updated_at = attributes[ \"updated_at\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]\n- if \"user\" in attributes and attributes[ \"user\" ] is not None:\n+ if \"user\" in attributes and attributes[ \"user\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"user\" ], dict )\n self.__user = NamedUser.NamedUser( self.__requester, attributes[ \"user\" ], completion = LazyCompletion )","additions":11,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":18,"deletions":9,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/CommitFile.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/CommitFile.py","filename":"src/github/CommitFile.py","patch":"@@ -62,21 +62,21 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"additions\", \"blob_url\", \"changes\", \"deletions\", \"filename\", \"patch\", \"raw_url\", \"sha\", \"status\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"additions\" in attributes and attributes[ \"additions\" ] is not None:\n+ if \"additions\" in attributes and attributes[ \"additions\" ] is not None: # pragma no branch\n self.__additions = attributes[ \"additions\" ]\n- if \"blob_url\" in attributes and attributes[ \"blob_url\" ] is not None:\n+ if \"blob_url\" in attributes and attributes[ \"blob_url\" ] is not None: # pragma no branch\n self.__blob_url = attributes[ \"blob_url\" ]\n- if \"changes\" in attributes and attributes[ \"changes\" ] is not None:\n+ if \"changes\" in attributes and attributes[ \"changes\" ] is not None: # pragma no branch\n self.__changes = attributes[ \"changes\" ]\n- if \"deletions\" in attributes and attributes[ \"deletions\" ] is not None:\n+ if \"deletions\" in attributes and attributes[ \"deletions\" ] is not None: # pragma no branch\n self.__deletions = attributes[ \"deletions\" ]\n- if \"filename\" in attributes and attributes[ \"filename\" ] is not None:\n+ if \"filename\" in attributes and attributes[ \"filename\" ] is not None: # pragma no branch\n self.__filename = attributes[ \"filename\" ]\n- if \"patch\" in attributes and attributes[ \"patch\" ] is not None:\n+ if \"patch\" in attributes and attributes[ \"patch\" ] is not None: # pragma no branch\n self.__patch = attributes[ \"patch\" ]\n- if \"raw_url\" in attributes and attributes[ \"raw_url\" ] is not None:\n+ if \"raw_url\" in attributes and attributes[ \"raw_url\" ] is not None: # pragma no branch\n self.__raw_url = attributes[ \"raw_url\" ]\n- if \"sha\" in attributes and attributes[ \"sha\" ] is not None:\n+ if \"sha\" in attributes and attributes[ \"sha\" ] is not None: # pragma no branch\n self.__sha = attributes[ \"sha\" ]\n- if \"status\" in attributes and attributes[ \"status\" ] is not None:\n+ if \"status\" in attributes and attributes[ \"status\" ] is not None: # pragma no branch\n self.__status = attributes[ \"status\" ]","additions":9,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":6,"deletions":3,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/CommitStats.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/CommitStats.py","filename":"src/github/CommitStats.py","patch":"@@ -32,12 +32,12 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"additions\", \"deletions\", \"total\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"additions\" in attributes and attributes[ \"additions\" ] is not None:\n+ if \"additions\" in attributes and attributes[ \"additions\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"additions\" ], int )\n self.__additions = attributes[ \"additions\" ]\n- if \"deletions\" in attributes and attributes[ \"deletions\" ] is not None:\n+ if \"deletions\" in attributes and attributes[ \"deletions\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"deletions\" ], int )\n self.__deletions = attributes[ \"deletions\" ]\n- if \"total\" in attributes and attributes[ \"total\" ] is not None:\n+ if \"total\" in attributes and attributes[ \"total\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"total\" ], int )\n self.__total = attributes[ \"total\" ]","additions":3,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":40,"deletions":20,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Download.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Download.py","filename":"src/github/Download.py","patch":"@@ -162,43 +162,43 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"accesskeyid\", \"acl\", \"bucket\", \"content_type\", \"created_at\", \"description\", \"download_count\", \"expirationdate\", \"html_url\", \"id\", \"mime_type\", \"name\", \"path\", \"policy\", \"prefix\", \"redirect\", \"s3_url\", \"signature\", \"size\", \"url\", \"x-amz-meta-content-disposition\" ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"accesskeyid\" in attributes and attributes[ \"accesskeyid\" ] is not None:\n+ if \"accesskeyid\" in attributes and attributes[ \"accesskeyid\" ] is not None: # pragma no branch\n self.__accesskeyid = attributes[ \"accesskeyid\" ]\n- if \"acl\" in attributes and attributes[ \"acl\" ] is not None:\n+ if \"acl\" in attributes and attributes[ \"acl\" ] is not None: # pragma no branch\n self.__acl = attributes[ \"acl\" ]\n- if \"bucket\" in attributes and attributes[ \"bucket\" ] is not None:\n+ if \"bucket\" in attributes and attributes[ \"bucket\" ] is not None: # pragma no branch\n self.__bucket = attributes[ \"bucket\" ]\n- if \"content_type\" in attributes and attributes[ \"content_type\" ] is not None:\n+ if \"content_type\" in attributes and attributes[ \"content_type\" ] is not None: # pragma no branch\n self.__content_type = attributes[ \"content_type\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n self.__created_at = attributes[ \"created_at\" ]\n- if \"description\" in attributes and attributes[ \"description\" ] is not None:\n+ if \"description\" in attributes and attributes[ \"description\" ] is not None: # pragma no branch\n self.__description = attributes[ \"description\" ]\n- if \"download_count\" in attributes and attributes[ \"download_count\" ] is not None:\n+ if \"download_count\" in attributes and attributes[ \"download_count\" ] is not None: # pragma no branch\n self.__download_count = attributes[ \"download_count\" ]\n- if \"expirationdate\" in attributes and attributes[ \"expirationdate\" ] is not None:\n+ if \"expirationdate\" in attributes and attributes[ \"expirationdate\" ] is not None: # pragma no branch\n self.__expirationdate = attributes[ \"expirationdate\" ]\n- if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None:\n+ if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None: # pragma no branch\n self.__html_url = attributes[ \"html_url\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n self.__id = attributes[ \"id\" ]\n- if \"mime_type\" in attributes and attributes[ \"mime_type\" ] is not None:\n+ if \"mime_type\" in attributes and attributes[ \"mime_type\" ] is not None: # pragma no branch\n self.__mime_type = attributes[ \"mime_type\" ]\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n self.__name = attributes[ \"name\" ]\n- if \"path\" in attributes and attributes[ \"path\" ] is not None:\n+ if \"path\" in attributes and attributes[ \"path\" ] is not None: # pragma no branch\n self.__path = attributes[ \"path\" ]\n- if \"policy\" in attributes and attributes[ \"policy\" ] is not None:\n+ if \"policy\" in attributes and attributes[ \"policy\" ] is not None: # pragma no branch\n self.__policy = attributes[ \"policy\" ]\n- if \"prefix\" in attributes and attributes[ \"prefix\" ] is not None:\n+ if \"prefix\" in attributes and attributes[ \"prefix\" ] is not None: # pragma no branch\n self.__prefix = attributes[ \"prefix\" ]\n- if \"redirect\" in attributes and attributes[ \"redirect\" ] is not None:\n+ if \"redirect\" in attributes and attributes[ \"redirect\" ] is not None: # pragma no branch\n self.__redirect = attributes[ \"redirect\" ]\n- if \"s3_url\" in attributes and attributes[ \"s3_url\" ] is not None:\n+ if \"s3_url\" in attributes and attributes[ \"s3_url\" ] is not None: # pragma no branch\n self.__s3_url = attributes[ \"s3_url\" ]\n- if \"signature\" in attributes and attributes[ \"signature\" ] is not None:\n+ if \"signature\" in attributes and attributes[ \"signature\" ] is not None: # pragma no branch\n self.__signature = attributes[ \"signature\" ]\n- if \"size\" in attributes and attributes[ \"size\" ] is not None:\n+ if \"size\" in attributes and attributes[ \"size\" ] is not None: # pragma no branch\n self.__size = attributes[ \"size\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n self.__url = attributes[ \"url\" ]","additions":20,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":16,"deletions":8,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Event.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Event.py","filename":"src/github/Event.py","patch":"@@ -60,22 +60,22 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"actor\", \"created_at\", \"id\", \"org\", \"payload\", \"public\", \"repo\", \"type\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"actor\" in attributes and attributes[ \"actor\" ] is not None:\n+ if \"actor\" in attributes and attributes[ \"actor\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"actor\" ], dict )\n self.__actor = NamedUser.NamedUser( self.__requester, attributes[ \"actor\" ], completion = LazyCompletion )\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n self.__created_at = attributes[ \"created_at\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n self.__id = attributes[ \"id\" ]\n- if \"org\" in attributes and attributes[ \"org\" ] is not None:\n+ if \"org\" in attributes and attributes[ \"org\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"org\" ], dict )\n self.__org = Organization.Organization( self.__requester, attributes[ \"org\" ], completion = LazyCompletion )\n- if \"payload\" in attributes and attributes[ \"payload\" ] is not None:\n+ if \"payload\" in attributes and attributes[ \"payload\" ] is not None: # pragma no branch\n self.__payload = attributes[ \"payload\" ]\n- if \"public\" in attributes and attributes[ \"public\" ] is not None:\n+ if \"public\" in attributes and attributes[ \"public\" ] is not None: # pragma no branch\n self.__public = attributes[ \"public\" ]\n- if \"repo\" in attributes and attributes[ \"repo\" ] is not None:\n+ if \"repo\" in attributes and attributes[ \"repo\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"repo\" ], dict )\n self.__repo = Repository.Repository( self.__requester, attributes[ \"repo\" ], completion = LazyCompletion )\n- if \"type\" in attributes and attributes[ \"type\" ] is not None:\n+ if \"type\" in attributes and attributes[ \"type\" ] is not None: # pragma no branch\n self.__type = attributes[ \"type\" ]","additions":8,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":30,"deletions":15,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Gist.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Gist.py","filename":"src/github/Gist.py","patch":"@@ -220,53 +220,53 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"comments\", \"created_at\", \"description\", \"files\", \"fork_of\", \"forks\", \"git_pull_url\", \"git_push_url\", \"history\", \"html_url\", \"id\", \"public\", \"updated_at\", \"url\", \"user\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"comments\" in attributes and attributes[ \"comments\" ] is not None:\n+ if \"comments\" in attributes and attributes[ \"comments\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"comments\" ], int )\n self.__comments = attributes[ \"comments\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"created_at\" ], ( str, unicode ) )\n self.__created_at = attributes[ \"created_at\" ]\n- if \"description\" in attributes and attributes[ \"description\" ] is not None:\n+ if \"description\" in attributes and attributes[ \"description\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"description\" ], ( str, unicode ) )\n self.__description = attributes[ \"description\" ]\n- if \"files\" in attributes and attributes[ \"files\" ] is not None:\n+ if \"files\" in attributes and attributes[ \"files\" ] is not None: # pragma no branch\n self.__files = attributes[ \"files\" ]\n- if \"fork_of\" in attributes and attributes[ \"fork_of\" ] is not None:\n+ if \"fork_of\" in attributes and attributes[ \"fork_of\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"fork_of\" ], dict )\n self.__fork_of = Gist( self.__requester, attributes[ \"fork_of\" ], completion = LazyCompletion )\n- if \"forks\" in attributes and attributes[ \"forks\" ] is not None:\n+ if \"forks\" in attributes and attributes[ \"forks\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"forks\" ], list ) and ( len( attributes[ \"forks\" ] ) == 0 or isinstance( attributes[ \"forks\" ][ 0 ], dict ) )\n self.__forks = [\n Gist( self.__requester, element, completion = LazyCompletion )\n for element in attributes[ \"forks\" ]\n ]\n- if \"git_pull_url\" in attributes and attributes[ \"git_pull_url\" ] is not None:\n+ if \"git_pull_url\" in attributes and attributes[ \"git_pull_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"git_pull_url\" ], ( str, unicode ) )\n self.__git_pull_url = attributes[ \"git_pull_url\" ]\n- if \"git_push_url\" in attributes and attributes[ \"git_push_url\" ] is not None:\n+ if \"git_push_url\" in attributes and attributes[ \"git_push_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"git_push_url\" ], ( str, unicode ) )\n self.__git_push_url = attributes[ \"git_push_url\" ]\n- if \"history\" in attributes and attributes[ \"history\" ] is not None:\n+ if \"history\" in attributes and attributes[ \"history\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"history\" ], list ) and ( len( attributes[ \"history\" ] ) == 0 or isinstance( attributes[ \"history\" ][ 0 ], dict ) )\n self.__history = [\n GistHistoryState.GistHistoryState( self.__requester, element, completion = LazyCompletion )\n for element in attributes[ \"history\" ]\n ]\n- if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None:\n+ if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"html_url\" ], ( str, unicode ) )\n self.__html_url = attributes[ \"html_url\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"id\" ], ( str, unicode ) )\n self.__id = attributes[ \"id\" ]\n- if \"public\" in attributes and attributes[ \"public\" ] is not None:\n+ if \"public\" in attributes and attributes[ \"public\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"public\" ], bool )\n self.__public = attributes[ \"public\" ]\n- if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None:\n+ if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"updated_at\" ], ( str, unicode ) )\n self.__updated_at = attributes[ \"updated_at\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]\n- if \"user\" in attributes and attributes[ \"user\" ] is not None:\n+ if \"user\" in attributes and attributes[ \"user\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"user\" ], dict )\n self.__user = NamedUser.NamedUser( self.__requester, attributes[ \"user\" ], completion = LazyCompletion )","additions":15,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":12,"deletions":6,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GistComment.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GistComment.py","filename":"src/github/GistComment.py","patch":"@@ -68,16 +68,16 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"body\", \"created_at\", \"id\", \"updated_at\", \"url\", \"user\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"body\" in attributes and attributes[ \"body\" ] is not None:\n+ if \"body\" in attributes and attributes[ \"body\" ] is not None: # pragma no branch\n self.__body = attributes[ \"body\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n self.__created_at = attributes[ \"created_at\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n self.__id = attributes[ \"id\" ]\n- if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None:\n+ if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None: # pragma no branch\n self.__updated_at = attributes[ \"updated_at\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n self.__url = attributes[ \"url\" ]\n- if \"user\" in attributes and attributes[ \"user\" ] is not None:\n+ if \"user\" in attributes and attributes[ \"user\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"user\" ], dict )\n self.__user = NamedUser.NamedUser( self.__requester, attributes[ \"user\" ], completion = LazyCompletion )","additions":6,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":10,"deletions":5,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GistHistoryState.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GistHistoryState.py","filename":"src/github/GistHistoryState.py","patch":"@@ -44,18 +44,18 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"change_status\", \"committed_at\", \"url\", \"user\", \"version\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"change_status\" in attributes and attributes[ \"change_status\" ] is not None:\n+ if \"change_status\" in attributes and attributes[ \"change_status\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"change_status\" ], dict )\n self.__change_status = CommitStats.CommitStats( self.__requester, attributes[ \"change_status\" ], completion = LazyCompletion )\n- if \"committed_at\" in attributes and attributes[ \"committed_at\" ] is not None:\n+ if \"committed_at\" in attributes and attributes[ \"committed_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"committed_at\" ], ( str, unicode ) )\n self.__committed_at = attributes[ \"committed_at\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]\n- if \"user\" in attributes and attributes[ \"user\" ] is not None:\n+ if \"user\" in attributes and attributes[ \"user\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"user\" ], dict )\n self.__user = NamedUser.NamedUser( self.__requester, attributes[ \"user\" ], completion = LazyCompletion )\n- if \"version\" in attributes and attributes[ \"version\" ] is not None:\n+ if \"version\" in attributes and attributes[ \"version\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"version\" ], ( str, unicode ) )\n self.__version = attributes[ \"version\" ]","additions":5,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":6,"deletions":3,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitAuthor.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitAuthor.py","filename":"src/github/GitAuthor.py","patch":"@@ -32,12 +32,12 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"date\", \"email\", \"name\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"date\" in attributes and attributes[ \"date\" ] is not None:\n+ if \"date\" in attributes and attributes[ \"date\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"date\" ], ( str, unicode ) )\n self.__date = attributes[ \"date\" ]\n- if \"email\" in attributes and attributes[ \"email\" ] is not None:\n+ if \"email\" in attributes and attributes[ \"email\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"email\" ], ( str, unicode ) )\n self.__email = attributes[ \"email\" ]\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"name\" ], ( str, unicode ) )\n self.__name = attributes[ \"name\" ]","additions":3,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":10,"deletions":5,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitBlob.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitBlob.py","filename":"src/github/GitBlob.py","patch":"@@ -42,18 +42,18 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"content\", \"encoding\", \"sha\", \"size\", \"url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"content\" in attributes and attributes[ \"content\" ] is not None:\n+ if \"content\" in attributes and attributes[ \"content\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"content\" ], ( str, unicode ) )\n self.__content = attributes[ \"content\" ]\n- if \"encoding\" in attributes and attributes[ \"encoding\" ] is not None:\n+ if \"encoding\" in attributes and attributes[ \"encoding\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"encoding\" ], ( str, unicode ) )\n self.__encoding = attributes[ \"encoding\" ]\n- if \"sha\" in attributes and attributes[ \"sha\" ] is not None:\n+ if \"sha\" in attributes and attributes[ \"sha\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"sha\" ], ( str, unicode ) )\n self.__sha = attributes[ \"sha\" ]\n- if \"size\" in attributes and attributes[ \"size\" ] is not None:\n+ if \"size\" in attributes and attributes[ \"size\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"size\" ], int )\n self.__size = attributes[ \"size\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]","additions":5,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":14,"deletions":7,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitCommit.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitCommit.py","filename":"src/github/GitCommit.py","patch":"@@ -55,27 +55,27 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"author\", \"committer\", \"message\", \"parents\", \"sha\", \"tree\", \"url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"author\" in attributes and attributes[ \"author\" ] is not None:\n+ if \"author\" in attributes and attributes[ \"author\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"author\" ], dict )\n self.__author = GitAuthor.GitAuthor( self.__requester, attributes[ \"author\" ], completion = LazyCompletion )\n- if \"committer\" in attributes and attributes[ \"committer\" ] is not None:\n+ if \"committer\" in attributes and attributes[ \"committer\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"committer\" ], dict )\n self.__committer = GitAuthor.GitAuthor( self.__requester, attributes[ \"committer\" ], completion = LazyCompletion )\n- if \"message\" in attributes and attributes[ \"message\" ] is not None:\n+ if \"message\" in attributes and attributes[ \"message\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"message\" ], ( str, unicode ) )\n self.__message = attributes[ \"message\" ]\n- if \"parents\" in attributes and attributes[ \"parents\" ] is not None:\n+ if \"parents\" in attributes and attributes[ \"parents\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"parents\" ], list ) and ( len( attributes[ \"parents\" ] ) == 0 or isinstance( attributes[ \"parents\" ][ 0 ], dict ) )\n self.__parents = [\n GitCommit( self.__requester, element, completion = LazyCompletion )\n for element in attributes[ \"parents\" ]\n ]\n- if \"sha\" in attributes and attributes[ \"sha\" ] is not None:\n+ if \"sha\" in attributes and attributes[ \"sha\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"sha\" ], ( str, unicode ) )\n self.__sha = attributes[ \"sha\" ]\n- if \"tree\" in attributes and attributes[ \"tree\" ] is not None:\n+ if \"tree\" in attributes and attributes[ \"tree\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"tree\" ], dict )\n self.__tree = GitTree.GitTree( self.__requester, attributes[ \"tree\" ], completion = LazyCompletion )\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]","additions":7,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":6,"deletions":3,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitObject.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitObject.py","filename":"src/github/GitObject.py","patch":"@@ -32,12 +32,12 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"sha\", \"type\", \"url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"sha\" in attributes and attributes[ \"sha\" ] is not None:\n+ if \"sha\" in attributes and attributes[ \"sha\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"sha\" ], ( str, unicode ) )\n self.__sha = attributes[ \"sha\" ]\n- if \"type\" in attributes and attributes[ \"type\" ] is not None:\n+ if \"type\" in attributes and attributes[ \"type\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"type\" ], ( str, unicode ) )\n self.__type = attributes[ \"type\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]","additions":3,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":6,"deletions":3,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitRef.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitRef.py","filename":"src/github/GitRef.py","patch":"@@ -55,12 +55,12 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"object\", \"ref\", \"url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"object\" in attributes and attributes[ \"object\" ] is not None:\n+ if \"object\" in attributes and attributes[ \"object\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"object\" ], dict )\n self.__object = GitObject.GitObject( self.__requester, attributes[ \"object\" ], completion = LazyCompletion )\n- if \"ref\" in attributes and attributes[ \"ref\" ] is not None:\n+ if \"ref\" in attributes and attributes[ \"ref\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"ref\" ], ( str, unicode ) )\n self.__ref = attributes[ \"ref\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]","additions":3,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":12,"deletions":6,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitTag.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitTag.py","filename":"src/github/GitTag.py","patch":"@@ -49,21 +49,21 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"message\", \"object\", \"sha\", \"tag\", \"tagger\", \"url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"message\" in attributes and attributes[ \"message\" ] is not None:\n+ if \"message\" in attributes and attributes[ \"message\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"message\" ], ( str, unicode ) )\n self.__message = attributes[ \"message\" ]\n- if \"object\" in attributes and attributes[ \"object\" ] is not None:\n+ if \"object\" in attributes and attributes[ \"object\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"object\" ], dict )\n self.__object = GitObject.GitObject( self.__requester, attributes[ \"object\" ], completion = LazyCompletion )\n- if \"sha\" in attributes and attributes[ \"sha\" ] is not None:\n+ if \"sha\" in attributes and attributes[ \"sha\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"sha\" ], ( str, unicode ) )\n self.__sha = attributes[ \"sha\" ]\n- if \"tag\" in attributes and attributes[ \"tag\" ] is not None:\n+ if \"tag\" in attributes and attributes[ \"tag\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"tag\" ], ( str, unicode ) )\n self.__tag = attributes[ \"tag\" ]\n- if \"tagger\" in attributes and attributes[ \"tagger\" ] is not None:\n+ if \"tagger\" in attributes and attributes[ \"tagger\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"tagger\" ], dict )\n self.__tagger = GitAuthor.GitAuthor( self.__requester, attributes[ \"tagger\" ], completion = LazyCompletion )\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]","additions":6,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":6,"deletions":3,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitTree.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitTree.py","filename":"src/github/GitTree.py","patch":"@@ -33,15 +33,15 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"sha\", \"tree\", \"url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"sha\" in attributes and attributes[ \"sha\" ] is not None:\n+ if \"sha\" in attributes and attributes[ \"sha\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"sha\" ], ( str, unicode ) )\n self.__sha = attributes[ \"sha\" ]\n- if \"tree\" in attributes and attributes[ \"tree\" ] is not None:\n+ if \"tree\" in attributes and attributes[ \"tree\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"tree\" ], list ) and ( len( attributes[ \"tree\" ] ) == 0 or isinstance( attributes[ \"tree\" ][ 0 ], dict ) )\n self.__tree = [\n GitTreeElement.GitTreeElement( self.__requester, element, completion = LazyCompletion )\n for element in attributes[ \"tree\" ]\n ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]","additions":3,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":12,"deletions":6,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitTreeElement.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/GitTreeElement.py","filename":"src/github/GitTreeElement.py","patch":"@@ -47,21 +47,21 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"mode\", \"path\", \"sha\", \"size\", \"type\", \"url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"mode\" in attributes and attributes[ \"mode\" ] is not None:\n+ if \"mode\" in attributes and attributes[ \"mode\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"mode\" ], ( str, unicode ) )\n self.__mode = attributes[ \"mode\" ]\n- if \"path\" in attributes and attributes[ \"path\" ] is not None:\n+ if \"path\" in attributes and attributes[ \"path\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"path\" ], ( str, unicode ) )\n self.__path = attributes[ \"path\" ]\n- if \"sha\" in attributes and attributes[ \"sha\" ] is not None:\n+ if \"sha\" in attributes and attributes[ \"sha\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"sha\" ], ( str, unicode ) )\n self.__sha = attributes[ \"sha\" ]\n- if \"size\" in attributes and attributes[ \"size\" ] is not None:\n+ if \"size\" in attributes and attributes[ \"size\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"size\" ], int )\n self.__size = attributes[ \"size\" ]\n- if \"type\" in attributes and attributes[ \"type\" ] is not None:\n+ if \"type\" in attributes and attributes[ \"type\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"type\" ], ( str, unicode ) )\n self.__type = attributes[ \"type\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]","additions":6,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":18,"deletions":9,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Hook.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Hook.py","filename":"src/github/Hook.py","patch":"@@ -99,21 +99,21 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"active\", \"config\", \"created_at\", \"events\", \"id\", \"last_response\", \"name\", \"updated_at\", \"url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"active\" in attributes and attributes[ \"active\" ] is not None:\n+ if \"active\" in attributes and attributes[ \"active\" ] is not None: # pragma no branch\n self.__active = attributes[ \"active\" ]\n- if \"config\" in attributes and attributes[ \"config\" ] is not None:\n+ if \"config\" in attributes and attributes[ \"config\" ] is not None: # pragma no branch\n self.__config = attributes[ \"config\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n self.__created_at = attributes[ \"created_at\" ]\n- if \"events\" in attributes and attributes[ \"events\" ] is not None:\n+ if \"events\" in attributes and attributes[ \"events\" ] is not None: # pragma no branch\n self.__events = attributes[ \"events\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n self.__id = attributes[ \"id\" ]\n- if \"last_response\" in attributes and attributes[ \"last_response\" ] is not None:\n+ if \"last_response\" in attributes and attributes[ \"last_response\" ] is not None: # pragma no branch\n self.__last_response = attributes[ \"last_response\" ]\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n self.__name = attributes[ \"name\" ]\n- if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None:\n+ if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None: # pragma no branch\n self.__updated_at = attributes[ \"updated_at\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n self.__url = attributes[ \"url\" ]","additions":9,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":53,"deletions":21,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Issue.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Issue.py","filename":"src/github/Issue.py","patch":"@@ -110,7 +110,7 @@ def user( self ):\n return self.__user\n \n def add_to_labels( self, *labels ):\n- post_parameters = labels\n+ post_parameters = [ label.name for label in labels ]\n status, headers, data = self.__requester.request(\n \"POST\",\n str( self.url ) + \"/labels\",\n@@ -131,7 +131,12 @@ def create_comment( self, body ):\n return IssueComment.IssueComment( self.__requester, data, completion = NoCompletion )\n \n def delete_labels( self ):\n- pass\n+ status, headers, data = self.__requester.request(\n+ \"DELETE\",\n+ str( self.url ) + \"/labels\",\n+ None,\n+ None\n+ )\n \n def edit( self, title = DefaultValueForOptionalParameters, body = DefaultValueForOptionalParameters, assignee = DefaultValueForOptionalParameters, state = DefaultValueForOptionalParameters, milestone = DefaultValueForOptionalParameters, labels = DefaultValueForOptionalParameters ):\n post_parameters = {\n@@ -216,7 +221,13 @@ def remove_from_labels( self, label ):\n )\n \n def set_labels( self, *labels ):\n- pass\n+ post_parameters = [ label.name for label in labels ]\n+ status, headers, data = self.__requester.request(\n+ \"PUT\",\n+ str( self.url ) + \"/labels\",\n+ None,\n+ post_parameters\n+ )\n \n def __initAttributes( self ):\n self.__assignee = None\n@@ -257,59 +268,59 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"assignee\", \"body\", \"closed_at\", \"closed_by\", \"comments\", \"created_at\", \"html_url\", \"id\", \"labels\", \"milestone\", \"number\", \"pull_request\", \"repository\", \"state\", \"title\", \"updated_at\", \"url\", \"user\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"assignee\" in attributes and attributes[ \"assignee\" ] is not None:\n+ if \"assignee\" in attributes and attributes[ \"assignee\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"assignee\" ], dict )\n self.__assignee = NamedUser.NamedUser( self.__requester, attributes[ \"assignee\" ], completion = LazyCompletion )\n- if \"body\" in attributes and attributes[ \"body\" ] is not None:\n+ if \"body\" in attributes and attributes[ \"body\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"body\" ], ( str, unicode ) )\n self.__body = attributes[ \"body\" ]\n- if \"closed_at\" in attributes and attributes[ \"closed_at\" ] is not None:\n+ if \"closed_at\" in attributes and attributes[ \"closed_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"closed_at\" ], ( str, unicode ) )\n self.__closed_at = attributes[ \"closed_at\" ]\n- if \"closed_by\" in attributes and attributes[ \"closed_by\" ] is not None:\n+ if \"closed_by\" in attributes and attributes[ \"closed_by\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"closed_by\" ], dict )\n self.__closed_by = NamedUser.NamedUser( self.__requester, attributes[ \"closed_by\" ], completion = LazyCompletion )\n- if \"comments\" in attributes and attributes[ \"comments\" ] is not None:\n+ if \"comments\" in attributes and attributes[ \"comments\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"comments\" ], int )\n self.__comments = attributes[ \"comments\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"created_at\" ], ( str, unicode ) )\n self.__created_at = attributes[ \"created_at\" ]\n- if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None:\n+ if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"html_url\" ], ( str, unicode ) )\n self.__html_url = attributes[ \"html_url\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"id\" ], int )\n self.__id = attributes[ \"id\" ]\n- if \"labels\" in attributes and attributes[ \"labels\" ] is not None:\n+ if \"labels\" in attributes and attributes[ \"labels\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"labels\" ], list ) and ( len( attributes[ \"labels\" ] ) == 0 or isinstance( attributes[ \"labels\" ][ 0 ], dict ) )\n self.__labels = [\n Label.Label( self.__requester, element, completion = LazyCompletion )\n for element in attributes[ \"labels\" ]\n ]\n- if \"milestone\" in attributes and attributes[ \"milestone\" ] is not None:\n+ if \"milestone\" in attributes and attributes[ \"milestone\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"milestone\" ], dict )\n self.__milestone = Milestone.Milestone( self.__requester, attributes[ \"milestone\" ], completion = LazyCompletion )\n- if \"number\" in attributes and attributes[ \"number\" ] is not None:\n+ if \"number\" in attributes and attributes[ \"number\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"number\" ], int )\n self.__number = attributes[ \"number\" ]\n- if \"pull_request\" in attributes and attributes[ \"pull_request\" ] is not None:\n+ if \"pull_request\" in attributes and attributes[ \"pull_request\" ] is not None: # pragma no branch\n self.__pull_request = attributes[ \"pull_request\" ]\n- if \"repository\" in attributes and attributes[ \"repository\" ] is not None:\n+ if \"repository\" in attributes and attributes[ \"repository\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"repository\" ], dict )\n self.__repository = Repository.Repository( self.__requester, attributes[ \"repository\" ], completion = LazyCompletion )\n- if \"state\" in attributes and attributes[ \"state\" ] is not None:\n+ if \"state\" in attributes and attributes[ \"state\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"state\" ], ( str, unicode ) )\n self.__state = attributes[ \"state\" ]\n- if \"title\" in attributes and attributes[ \"title\" ] is not None:\n+ if \"title\" in attributes and attributes[ \"title\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"title\" ], ( str, unicode ) )\n self.__title = attributes[ \"title\" ]\n- if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None:\n+ if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"updated_at\" ], ( str, unicode ) )\n self.__updated_at = attributes[ \"updated_at\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]\n- if \"user\" in attributes and attributes[ \"user\" ] is not None:\n+ if \"user\" in attributes and attributes[ \"user\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"user\" ], dict )\n self.__user = NamedUser.NamedUser( self.__requester, attributes[ \"user\" ], completion = LazyCompletion )","additions":32,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":12,"deletions":6,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/IssueComment.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/IssueComment.py","filename":"src/github/IssueComment.py","patch":"@@ -68,16 +68,16 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"body\", \"created_at\", \"id\", \"updated_at\", \"url\", \"user\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"body\" in attributes and attributes[ \"body\" ] is not None:\n+ if \"body\" in attributes and attributes[ \"body\" ] is not None: # pragma no branch\n self.__body = attributes[ \"body\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n self.__created_at = attributes[ \"created_at\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n self.__id = attributes[ \"id\" ]\n- if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None:\n+ if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None: # pragma no branch\n self.__updated_at = attributes[ \"updated_at\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n self.__url = attributes[ \"url\" ]\n- if \"user\" in attributes and attributes[ \"user\" ] is not None:\n+ if \"user\" in attributes and attributes[ \"user\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"user\" ], dict )\n self.__user = NamedUser.NamedUser( self.__requester, attributes[ \"user\" ], completion = LazyCompletion )","additions":6,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":14,"deletions":7,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/IssueEvent.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/IssueEvent.py","filename":"src/github/IssueEvent.py","patch":"@@ -78,24 +78,24 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"actor\", \"commit_id\", \"created_at\", \"event\", \"id\", \"issue\", \"url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"actor\" in attributes and attributes[ \"actor\" ] is not None:\n+ if \"actor\" in attributes and attributes[ \"actor\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"actor\" ], dict )\n self.__actor = NamedUser.NamedUser( self.__requester, attributes[ \"actor\" ], completion = LazyCompletion )\n- if \"commit_id\" in attributes and attributes[ \"commit_id\" ] is not None:\n+ if \"commit_id\" in attributes and attributes[ \"commit_id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"commit_id\" ], ( str, unicode ) )\n self.__commit_id = attributes[ \"commit_id\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"created_at\" ], ( str, unicode ) )\n self.__created_at = attributes[ \"created_at\" ]\n- if \"event\" in attributes and attributes[ \"event\" ] is not None:\n+ if \"event\" in attributes and attributes[ \"event\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"event\" ], ( str, unicode ) )\n self.__event = attributes[ \"event\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"id\" ], int )\n self.__id = attributes[ \"id\" ]\n- if \"issue\" in attributes and attributes[ \"issue\" ] is not None:\n+ if \"issue\" in attributes and attributes[ \"issue\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"issue\" ], dict )\n self.__issue = Issue.Issue( self.__requester, attributes[ \"issue\" ], completion = LazyCompletion )\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]","additions":7,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":13,"deletions":3,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Label.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Label.py","filename":"src/github/Label.py","patch":"@@ -1,6 +1,8 @@\n # WARNING: this file is generated automaticaly.\n # Do not modify it manually, your work would be lost.\n \n+import urllib\n+\n import PaginatedList\n from GithubObject import *\n \n@@ -43,6 +45,11 @@ def edit( self, name, color ):\n )\n self.__useAttributes( data )\n \n+ # @toto Remove '_identity' from the normalized json description\n+ @property\n+ def _identity( self ):\n+ return urllib.quote( self.name )\n+\n def __initAttributes( self ):\n self.__color = None\n self.__name = None\n@@ -53,9 +60,9 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"color\", \"name\", \"url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"color\" in attributes and attributes[ \"color\" ] is not None:\n+ if \"color\" in attributes and attributes[ \"color\" ] is not None: # pragma no branch\n self.__color = attributes[ \"color\" ]\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n self.__name = attributes[ \"name\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n self.__url = attributes[ \"url\" ]","additions":10,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":22,"deletions":11,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Milestone.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Milestone.py","filename":"src/github/Milestone.py","patch":"@@ -114,36 +114,36 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"closed_issues\", \"created_at\", \"creator\", \"description\", \"due_on\", \"id\", \"number\", \"open_issues\", \"state\", \"title\", \"url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"closed_issues\" in attributes and attributes[ \"closed_issues\" ] is not None:\n+ if \"closed_issues\" in attributes and attributes[ \"closed_issues\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"closed_issues\" ], int )\n self.__closed_issues = attributes[ \"closed_issues\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"created_at\" ], ( str, unicode ) )\n self.__created_at = attributes[ \"created_at\" ]\n- if \"creator\" in attributes and attributes[ \"creator\" ] is not None:\n+ if \"creator\" in attributes and attributes[ \"creator\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"creator\" ], dict )\n self.__creator = NamedUser.NamedUser( self.__requester, attributes[ \"creator\" ], completion = LazyCompletion )\n- if \"description\" in attributes and attributes[ \"description\" ] is not None:\n+ if \"description\" in attributes and attributes[ \"description\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"description\" ], ( str, unicode ) )\n self.__description = attributes[ \"description\" ]\n- if \"due_on\" in attributes and attributes[ \"due_on\" ] is not None:\n+ if \"due_on\" in attributes and attributes[ \"due_on\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"due_on\" ], ( str, unicode ) )\n self.__due_on = attributes[ \"due_on\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"id\" ], int )\n self.__id = attributes[ \"id\" ]\n- if \"number\" in attributes and attributes[ \"number\" ] is not None:\n+ if \"number\" in attributes and attributes[ \"number\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"number\" ], int )\n self.__number = attributes[ \"number\" ]\n- if \"open_issues\" in attributes and attributes[ \"open_issues\" ] is not None:\n+ if \"open_issues\" in attributes and attributes[ \"open_issues\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"open_issues\" ], int )\n self.__open_issues = attributes[ \"open_issues\" ]\n- if \"state\" in attributes and attributes[ \"state\" ] is not None:\n+ if \"state\" in attributes and attributes[ \"state\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"state\" ], ( str, unicode ) )\n self.__state = attributes[ \"state\" ]\n- if \"title\" in attributes and attributes[ \"title\" ] is not None:\n+ if \"title\" in attributes and attributes[ \"title\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"title\" ], ( str, unicode ) )\n self.__title = attributes[ \"title\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]","additions":11,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":52,"deletions":26,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/NamedUser.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/NamedUser.py","filename":"src/github/NamedUser.py","patch":"@@ -365,81 +365,81 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"avatar_url\", \"bio\", \"blog\", \"collaborators\", \"company\", \"contributions\", \"created_at\", \"disk_usage\", \"email\", \"followers\", \"following\", \"gravatar_id\", \"hireable\", \"html_url\", \"id\", \"location\", \"login\", \"name\", \"owned_private_repos\", \"plan\", \"private_gists\", \"public_gists\", \"public_repos\", \"total_private_repos\", \"type\", \"url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"avatar_url\" in attributes and attributes[ \"avatar_url\" ] is not None:\n+ if \"avatar_url\" in attributes and attributes[ \"avatar_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"avatar_url\" ], ( str, unicode ) )\n self.__avatar_url = attributes[ \"avatar_url\" ]\n- if \"bio\" in attributes and attributes[ \"bio\" ] is not None:\n+ if \"bio\" in attributes and attributes[ \"bio\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"bio\" ], ( str, unicode ) )\n self.__bio = attributes[ \"bio\" ]\n- if \"blog\" in attributes and attributes[ \"blog\" ] is not None:\n+ if \"blog\" in attributes and attributes[ \"blog\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"blog\" ], ( str, unicode ) )\n self.__blog = attributes[ \"blog\" ]\n- if \"collaborators\" in attributes and attributes[ \"collaborators\" ] is not None:\n+ if \"collaborators\" in attributes and attributes[ \"collaborators\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"collaborators\" ], int )\n self.__collaborators = attributes[ \"collaborators\" ]\n- if \"company\" in attributes and attributes[ \"company\" ] is not None:\n+ if \"company\" in attributes and attributes[ \"company\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"company\" ], ( str, unicode ) )\n self.__company = attributes[ \"company\" ]\n- if \"contributions\" in attributes and attributes[ \"contributions\" ] is not None:\n+ if \"contributions\" in attributes and attributes[ \"contributions\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"contributions\" ], int )\n self.__contributions = attributes[ \"contributions\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"created_at\" ], ( str, unicode ) )\n self.__created_at = attributes[ \"created_at\" ]\n- if \"disk_usage\" in attributes and attributes[ \"disk_usage\" ] is not None:\n+ if \"disk_usage\" in attributes and attributes[ \"disk_usage\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"disk_usage\" ], int )\n self.__disk_usage = attributes[ \"disk_usage\" ]\n- if \"email\" in attributes and attributes[ \"email\" ] is not None:\n+ if \"email\" in attributes and attributes[ \"email\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"email\" ], ( str, unicode ) )\n self.__email = attributes[ \"email\" ]\n- if \"followers\" in attributes and attributes[ \"followers\" ] is not None:\n+ if \"followers\" in attributes and attributes[ \"followers\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"followers\" ], int )\n self.__followers = attributes[ \"followers\" ]\n- if \"following\" in attributes and attributes[ \"following\" ] is not None:\n+ if \"following\" in attributes and attributes[ \"following\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"following\" ], int )\n self.__following = attributes[ \"following\" ]\n- if \"gravatar_id\" in attributes and attributes[ \"gravatar_id\" ] is not None:\n+ if \"gravatar_id\" in attributes and attributes[ \"gravatar_id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"gravatar_id\" ], ( str, unicode ) )\n self.__gravatar_id = attributes[ \"gravatar_id\" ]\n- if \"hireable\" in attributes and attributes[ \"hireable\" ] is not None:\n+ if \"hireable\" in attributes and attributes[ \"hireable\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"hireable\" ], bool )\n self.__hireable = attributes[ \"hireable\" ]\n- if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None:\n+ if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"html_url\" ], ( str, unicode ) )\n self.__html_url = attributes[ \"html_url\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"id\" ], int )\n self.__id = attributes[ \"id\" ]\n- if \"location\" in attributes and attributes[ \"location\" ] is not None:\n+ if \"location\" in attributes and attributes[ \"location\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"location\" ], ( str, unicode ) )\n self.__location = attributes[ \"location\" ]\n- if \"login\" in attributes and attributes[ \"login\" ] is not None:\n+ if \"login\" in attributes and attributes[ \"login\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"login\" ], ( str, unicode ) )\n self.__login = attributes[ \"login\" ]\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"name\" ], ( str, unicode ) )\n self.__name = attributes[ \"name\" ]\n- if \"owned_private_repos\" in attributes and attributes[ \"owned_private_repos\" ] is not None:\n+ if \"owned_private_repos\" in attributes and attributes[ \"owned_private_repos\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"owned_private_repos\" ], int )\n self.__owned_private_repos = attributes[ \"owned_private_repos\" ]\n- if \"plan\" in attributes and attributes[ \"plan\" ] is not None:\n+ if \"plan\" in attributes and attributes[ \"plan\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"plan\" ], dict )\n self.__plan = Plan.Plan( self.__requester, attributes[ \"plan\" ], completion = LazyCompletion )\n- if \"private_gists\" in attributes and attributes[ \"private_gists\" ] is not None:\n+ if \"private_gists\" in attributes and attributes[ \"private_gists\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"private_gists\" ], int )\n self.__private_gists = attributes[ \"private_gists\" ]\n- if \"public_gists\" in attributes and attributes[ \"public_gists\" ] is not None:\n+ if \"public_gists\" in attributes and attributes[ \"public_gists\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"public_gists\" ], int )\n self.__public_gists = attributes[ \"public_gists\" ]\n- if \"public_repos\" in attributes and attributes[ \"public_repos\" ] is not None:\n+ if \"public_repos\" in attributes and attributes[ \"public_repos\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"public_repos\" ], int )\n self.__public_repos = attributes[ \"public_repos\" ]\n- if \"total_private_repos\" in attributes and attributes[ \"total_private_repos\" ] is not None:\n+ if \"total_private_repos\" in attributes and attributes[ \"total_private_repos\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"total_private_repos\" ], int )\n self.__total_private_repos = attributes[ \"total_private_repos\" ]\n- if \"type\" in attributes and attributes[ \"type\" ] is not None:\n+ if \"type\" in attributes and attributes[ \"type\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"type\" ], ( str, unicode ) )\n self.__type = attributes[ \"type\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]","additions":26,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":48,"deletions":24,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Organization.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Organization.py","filename":"src/github/Organization.py","patch":"@@ -390,75 +390,75 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"avatar_url\", \"billing_email\", \"blog\", \"collaborators\", \"company\", \"created_at\", \"disk_usage\", \"email\", \"followers\", \"following\", \"gravatar_id\", \"html_url\", \"id\", \"location\", \"login\", \"name\", \"owned_private_repos\", \"plan\", \"private_gists\", \"public_gists\", \"public_repos\", \"total_private_repos\", \"type\", \"url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"avatar_url\" in attributes and attributes[ \"avatar_url\" ] is not None:\n+ if \"avatar_url\" in attributes and attributes[ \"avatar_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"avatar_url\" ], ( str, unicode ) )\n self.__avatar_url = attributes[ \"avatar_url\" ]\n- if \"billing_email\" in attributes and attributes[ \"billing_email\" ] is not None:\n+ if \"billing_email\" in attributes and attributes[ \"billing_email\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"billing_email\" ], ( str, unicode ) )\n self.__billing_email = attributes[ \"billing_email\" ]\n- if \"blog\" in attributes and attributes[ \"blog\" ] is not None:\n+ if \"blog\" in attributes and attributes[ \"blog\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"blog\" ], ( str, unicode ) )\n self.__blog = attributes[ \"blog\" ]\n- if \"collaborators\" in attributes and attributes[ \"collaborators\" ] is not None:\n+ if \"collaborators\" in attributes and attributes[ \"collaborators\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"collaborators\" ], int )\n self.__collaborators = attributes[ \"collaborators\" ]\n- if \"company\" in attributes and attributes[ \"company\" ] is not None:\n+ if \"company\" in attributes and attributes[ \"company\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"company\" ], ( str, unicode ) )\n self.__company = attributes[ \"company\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"created_at\" ], ( str, unicode ) )\n self.__created_at = attributes[ \"created_at\" ]\n- if \"disk_usage\" in attributes and attributes[ \"disk_usage\" ] is not None:\n+ if \"disk_usage\" in attributes and attributes[ \"disk_usage\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"disk_usage\" ], int )\n self.__disk_usage = attributes[ \"disk_usage\" ]\n- if \"email\" in attributes and attributes[ \"email\" ] is not None:\n+ if \"email\" in attributes and attributes[ \"email\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"email\" ], ( str, unicode ) )\n self.__email = attributes[ \"email\" ]\n- if \"followers\" in attributes and attributes[ \"followers\" ] is not None:\n+ if \"followers\" in attributes and attributes[ \"followers\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"followers\" ], int )\n self.__followers = attributes[ \"followers\" ]\n- if \"following\" in attributes and attributes[ \"following\" ] is not None:\n+ if \"following\" in attributes and attributes[ \"following\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"following\" ], int )\n self.__following = attributes[ \"following\" ]\n- if \"gravatar_id\" in attributes and attributes[ \"gravatar_id\" ] is not None:\n+ if \"gravatar_id\" in attributes and attributes[ \"gravatar_id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"gravatar_id\" ], ( str, unicode ) )\n self.__gravatar_id = attributes[ \"gravatar_id\" ]\n- if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None:\n+ if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"html_url\" ], ( str, unicode ) )\n self.__html_url = attributes[ \"html_url\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"id\" ], int )\n self.__id = attributes[ \"id\" ]\n- if \"location\" in attributes and attributes[ \"location\" ] is not None:\n+ if \"location\" in attributes and attributes[ \"location\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"location\" ], ( str, unicode ) )\n self.__location = attributes[ \"location\" ]\n- if \"login\" in attributes and attributes[ \"login\" ] is not None:\n+ if \"login\" in attributes and attributes[ \"login\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"login\" ], ( str, unicode ) )\n self.__login = attributes[ \"login\" ]\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"name\" ], ( str, unicode ) )\n self.__name = attributes[ \"name\" ]\n- if \"owned_private_repos\" in attributes and attributes[ \"owned_private_repos\" ] is not None:\n+ if \"owned_private_repos\" in attributes and attributes[ \"owned_private_repos\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"owned_private_repos\" ], int )\n self.__owned_private_repos = attributes[ \"owned_private_repos\" ]\n- if \"plan\" in attributes and attributes[ \"plan\" ] is not None:\n+ if \"plan\" in attributes and attributes[ \"plan\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"plan\" ], dict )\n self.__plan = Plan.Plan( self.__requester, attributes[ \"plan\" ], completion = LazyCompletion )\n- if \"private_gists\" in attributes and attributes[ \"private_gists\" ] is not None:\n+ if \"private_gists\" in attributes and attributes[ \"private_gists\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"private_gists\" ], int )\n self.__private_gists = attributes[ \"private_gists\" ]\n- if \"public_gists\" in attributes and attributes[ \"public_gists\" ] is not None:\n+ if \"public_gists\" in attributes and attributes[ \"public_gists\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"public_gists\" ], int )\n self.__public_gists = attributes[ \"public_gists\" ]\n- if \"public_repos\" in attributes and attributes[ \"public_repos\" ] is not None:\n+ if \"public_repos\" in attributes and attributes[ \"public_repos\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"public_repos\" ], int )\n self.__public_repos = attributes[ \"public_repos\" ]\n- if \"total_private_repos\" in attributes and attributes[ \"total_private_repos\" ] is not None:\n+ if \"total_private_repos\" in attributes and attributes[ \"total_private_repos\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"total_private_repos\" ], int )\n self.__total_private_repos = attributes[ \"total_private_repos\" ]\n- if \"type\" in attributes and attributes[ \"type\" ] is not None:\n+ if \"type\" in attributes and attributes[ \"type\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"type\" ], ( str, unicode ) )\n self.__type = attributes[ \"type\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]","additions":24,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":6,"deletions":3,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Permissions.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Permissions.py","filename":"src/github/Permissions.py","patch":"@@ -32,12 +32,12 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"admin\", \"pull\", \"push\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"admin\" in attributes and attributes[ \"admin\" ] is not None:\n+ if \"admin\" in attributes and attributes[ \"admin\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"admin\" ], bool )\n self.__admin = attributes[ \"admin\" ]\n- if \"pull\" in attributes and attributes[ \"pull\" ] is not None:\n+ if \"pull\" in attributes and attributes[ \"pull\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"pull\" ], bool )\n self.__pull = attributes[ \"pull\" ]\n- if \"push\" in attributes and attributes[ \"push\" ] is not None:\n+ if \"push\" in attributes and attributes[ \"push\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"push\" ], bool )\n self.__push = attributes[ \"push\" ]","additions":3,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":8,"deletions":4,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Plan.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Plan.py","filename":"src/github/Plan.py","patch":"@@ -37,15 +37,15 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"collaborators\", \"name\", \"private_repos\", \"space\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"collaborators\" in attributes and attributes[ \"collaborators\" ] is not None:\n+ if \"collaborators\" in attributes and attributes[ \"collaborators\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"collaborators\" ], int )\n self.__collaborators = attributes[ \"collaborators\" ]\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"name\" ], ( str, unicode ) )\n self.__name = attributes[ \"name\" ]\n- if \"private_repos\" in attributes and attributes[ \"private_repos\" ] is not None:\n+ if \"private_repos\" in attributes and attributes[ \"private_repos\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"private_repos\" ], int )\n self.__private_repos = attributes[ \"private_repos\" ]\n- if \"space\" in attributes and attributes[ \"space\" ] is not None:\n+ if \"space\" in attributes and attributes[ \"space\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"space\" ], int )\n self.__space = attributes[ \"space\" ]","additions":4,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":52,"deletions":26,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/PullRequest.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/PullRequest.py","filename":"src/github/PullRequest.py","patch":"@@ -279,56 +279,56 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"additions\", \"base\", \"body\", \"changed_files\", \"closed_at\", \"comments\", \"commits\", \"created_at\", \"deletions\", \"diff_url\", \"head\", \"html_url\", \"id\", \"issue_url\", \"mergeable\", \"merged\", \"merged_at\", \"merged_by\", \"number\", \"patch_url\", \"review_comments\", \"state\", \"title\", \"updated_at\", \"url\", \"user\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"additions\" in attributes and attributes[ \"additions\" ] is not None:\n+ if \"additions\" in attributes and attributes[ \"additions\" ] is not None: # pragma no branch\n self.__additions = attributes[ \"additions\" ]\n- if \"base\" in attributes and attributes[ \"base\" ] is not None:\n+ if \"base\" in attributes and attributes[ \"base\" ] is not None: # pragma no branch\n self.__base = attributes[ \"base\" ]\n- if \"body\" in attributes and attributes[ \"body\" ] is not None:\n+ if \"body\" in attributes and attributes[ \"body\" ] is not None: # pragma no branch\n self.__body = attributes[ \"body\" ]\n- if \"changed_files\" in attributes and attributes[ \"changed_files\" ] is not None:\n+ if \"changed_files\" in attributes and attributes[ \"changed_files\" ] is not None: # pragma no branch\n self.__changed_files = attributes[ \"changed_files\" ]\n- if \"closed_at\" in attributes and attributes[ \"closed_at\" ] is not None:\n+ if \"closed_at\" in attributes and attributes[ \"closed_at\" ] is not None: # pragma no branch\n self.__closed_at = attributes[ \"closed_at\" ]\n- if \"comments\" in attributes and attributes[ \"comments\" ] is not None:\n+ if \"comments\" in attributes and attributes[ \"comments\" ] is not None: # pragma no branch\n self.__comments = attributes[ \"comments\" ]\n- if \"commits\" in attributes and attributes[ \"commits\" ] is not None:\n+ if \"commits\" in attributes and attributes[ \"commits\" ] is not None: # pragma no branch\n self.__commits = attributes[ \"commits\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n self.__created_at = attributes[ \"created_at\" ]\n- if \"deletions\" in attributes and attributes[ \"deletions\" ] is not None:\n+ if \"deletions\" in attributes and attributes[ \"deletions\" ] is not None: # pragma no branch\n self.__deletions = attributes[ \"deletions\" ]\n- if \"diff_url\" in attributes and attributes[ \"diff_url\" ] is not None:\n+ if \"diff_url\" in attributes and attributes[ \"diff_url\" ] is not None: # pragma no branch\n self.__diff_url = attributes[ \"diff_url\" ]\n- if \"head\" in attributes and attributes[ \"head\" ] is not None:\n+ if \"head\" in attributes and attributes[ \"head\" ] is not None: # pragma no branch\n self.__head = attributes[ \"head\" ]\n- if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None:\n+ if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None: # pragma no branch\n self.__html_url = attributes[ \"html_url\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n self.__id = attributes[ \"id\" ]\n- if \"issue_url\" in attributes and attributes[ \"issue_url\" ] is not None:\n+ if \"issue_url\" in attributes and attributes[ \"issue_url\" ] is not None: # pragma no branch\n self.__issue_url = attributes[ \"issue_url\" ]\n- if \"mergeable\" in attributes and attributes[ \"mergeable\" ] is not None:\n+ if \"mergeable\" in attributes and attributes[ \"mergeable\" ] is not None: # pragma no branch\n self.__mergeable = attributes[ \"mergeable\" ]\n- if \"merged\" in attributes and attributes[ \"merged\" ] is not None:\n+ if \"merged\" in attributes and attributes[ \"merged\" ] is not None: # pragma no branch\n self.__merged = attributes[ \"merged\" ]\n- if \"merged_at\" in attributes and attributes[ \"merged_at\" ] is not None:\n+ if \"merged_at\" in attributes and attributes[ \"merged_at\" ] is not None: # pragma no branch\n self.__merged_at = attributes[ \"merged_at\" ]\n- if \"merged_by\" in attributes and attributes[ \"merged_by\" ] is not None:\n+ if \"merged_by\" in attributes and attributes[ \"merged_by\" ] is not None: # pragma no branch\n self.__merged_by = attributes[ \"merged_by\" ]\n- if \"number\" in attributes and attributes[ \"number\" ] is not None:\n+ if \"number\" in attributes and attributes[ \"number\" ] is not None: # pragma no branch\n self.__number = attributes[ \"number\" ]\n- if \"patch_url\" in attributes and attributes[ \"patch_url\" ] is not None:\n+ if \"patch_url\" in attributes and attributes[ \"patch_url\" ] is not None: # pragma no branch\n self.__patch_url = attributes[ \"patch_url\" ]\n- if \"review_comments\" in attributes and attributes[ \"review_comments\" ] is not None:\n+ if \"review_comments\" in attributes and attributes[ \"review_comments\" ] is not None: # pragma no branch\n self.__review_comments = attributes[ \"review_comments\" ]\n- if \"state\" in attributes and attributes[ \"state\" ] is not None:\n+ if \"state\" in attributes and attributes[ \"state\" ] is not None: # pragma no branch\n self.__state = attributes[ \"state\" ]\n- if \"title\" in attributes and attributes[ \"title\" ] is not None:\n+ if \"title\" in attributes and attributes[ \"title\" ] is not None: # pragma no branch\n self.__title = attributes[ \"title\" ]\n- if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None:\n+ if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None: # pragma no branch\n self.__updated_at = attributes[ \"updated_at\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n self.__url = attributes[ \"url\" ]\n- if \"user\" in attributes and attributes[ \"user\" ] is not None:\n+ if \"user\" in attributes and attributes[ \"user\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"user\" ], dict )\n self.__user = NamedUser.NamedUser( self.__requester, attributes[ \"user\" ], completion = LazyCompletion )","additions":26,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":22,"deletions":11,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/PullRequestComment.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/PullRequestComment.py","filename":"src/github/PullRequestComment.py","patch":"@@ -121,26 +121,26 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"body\", \"commit_id\", \"created_at\", \"html_url\", \"id\", \"line\", \"path\", \"position\", \"updated_at\", \"url\", \"user\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"body\" in attributes and attributes[ \"body\" ] is not None:\n+ if \"body\" in attributes and attributes[ \"body\" ] is not None: # pragma no branch\n self.__body = attributes[ \"body\" ]\n- if \"commit_id\" in attributes and attributes[ \"commit_id\" ] is not None:\n+ if \"commit_id\" in attributes and attributes[ \"commit_id\" ] is not None: # pragma no branch\n self.__commit_id = attributes[ \"commit_id\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n self.__created_at = attributes[ \"created_at\" ]\n- if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None:\n+ if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None: # pragma no branch\n self.__html_url = attributes[ \"html_url\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n self.__id = attributes[ \"id\" ]\n- if \"line\" in attributes and attributes[ \"line\" ] is not None:\n+ if \"line\" in attributes and attributes[ \"line\" ] is not None: # pragma no branch\n self.__line = attributes[ \"line\" ]\n- if \"path\" in attributes and attributes[ \"path\" ] is not None:\n+ if \"path\" in attributes and attributes[ \"path\" ] is not None: # pragma no branch\n self.__path = attributes[ \"path\" ]\n- if \"position\" in attributes and attributes[ \"position\" ] is not None:\n+ if \"position\" in attributes and attributes[ \"position\" ] is not None: # pragma no branch\n self.__position = attributes[ \"position\" ]\n- if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None:\n+ if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None: # pragma no branch\n self.__updated_at = attributes[ \"updated_at\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n self.__url = attributes[ \"url\" ]\n- if \"user\" in attributes and attributes[ \"user\" ] is not None:\n+ if \"user\" in attributes and attributes[ \"user\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"user\" ], dict )\n self.__user = NamedUser.NamedUser( self.__requester, attributes[ \"user\" ], completion = LazyCompletion )","additions":11,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":18,"deletions":9,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/PullRequestFile.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/PullRequestFile.py","filename":"src/github/PullRequestFile.py","patch":"@@ -62,21 +62,21 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"additions\", \"blob_url\", \"changes\", \"deletions\", \"filename\", \"patch\", \"raw_url\", \"sha\", \"status\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"additions\" in attributes and attributes[ \"additions\" ] is not None:\n+ if \"additions\" in attributes and attributes[ \"additions\" ] is not None: # pragma no branch\n self.__additions = attributes[ \"additions\" ]\n- if \"blob_url\" in attributes and attributes[ \"blob_url\" ] is not None:\n+ if \"blob_url\" in attributes and attributes[ \"blob_url\" ] is not None: # pragma no branch\n self.__blob_url = attributes[ \"blob_url\" ]\n- if \"changes\" in attributes and attributes[ \"changes\" ] is not None:\n+ if \"changes\" in attributes and attributes[ \"changes\" ] is not None: # pragma no branch\n self.__changes = attributes[ \"changes\" ]\n- if \"deletions\" in attributes and attributes[ \"deletions\" ] is not None:\n+ if \"deletions\" in attributes and attributes[ \"deletions\" ] is not None: # pragma no branch\n self.__deletions = attributes[ \"deletions\" ]\n- if \"filename\" in attributes and attributes[ \"filename\" ] is not None:\n+ if \"filename\" in attributes and attributes[ \"filename\" ] is not None: # pragma no branch\n self.__filename = attributes[ \"filename\" ]\n- if \"patch\" in attributes and attributes[ \"patch\" ] is not None:\n+ if \"patch\" in attributes and attributes[ \"patch\" ] is not None: # pragma no branch\n self.__patch = attributes[ \"patch\" ]\n- if \"raw_url\" in attributes and attributes[ \"raw_url\" ] is not None:\n+ if \"raw_url\" in attributes and attributes[ \"raw_url\" ] is not None: # pragma no branch\n self.__raw_url = attributes[ \"raw_url\" ]\n- if \"sha\" in attributes and attributes[ \"sha\" ] is not None:\n+ if \"sha\" in attributes and attributes[ \"sha\" ] is not None: # pragma no branch\n self.__sha = attributes[ \"sha\" ]\n- if \"status\" in attributes and attributes[ \"status\" ] is not None:\n+ if \"status\" in attributes and attributes[ \"status\" ] is not None: # pragma no branch\n self.__status = attributes[ \"status\" ]","additions":9,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":62,"deletions":31,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Repository.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Repository.py","filename":"src/github/Repository.py","patch":"@@ -905,96 +905,96 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"clone_url\", \"created_at\", \"description\", \"fork\", \"forks\", \"full_name\", \"git_url\", \"has_downloads\", \"has_issues\", \"has_wiki\", \"homepage\", \"html_url\", \"id\", \"language\", \"master_branch\", \"mirror_url\", \"name\", \"open_issues\", \"organization\", \"owner\", \"parent\", \"permissions\", \"private\", \"pushed_at\", \"size\", \"source\", \"ssh_url\", \"svn_url\", \"updated_at\", \"url\", \"watchers\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"clone_url\" in attributes and attributes[ \"clone_url\" ] is not None:\n+ if \"clone_url\" in attributes and attributes[ \"clone_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"clone_url\" ], ( str, unicode ) )\n self.__clone_url = attributes[ \"clone_url\" ]\n- if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None:\n+ if \"created_at\" in attributes and attributes[ \"created_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"created_at\" ], ( str, unicode ) )\n self.__created_at = attributes[ \"created_at\" ]\n- if \"description\" in attributes and attributes[ \"description\" ] is not None:\n+ if \"description\" in attributes and attributes[ \"description\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"description\" ], ( str, unicode ) )\n self.__description = attributes[ \"description\" ]\n- if \"fork\" in attributes and attributes[ \"fork\" ] is not None:\n+ if \"fork\" in attributes and attributes[ \"fork\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"fork\" ], bool )\n self.__fork = attributes[ \"fork\" ]\n- if \"forks\" in attributes and attributes[ \"forks\" ] is not None:\n+ if \"forks\" in attributes and attributes[ \"forks\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"forks\" ], int )\n self.__forks = attributes[ \"forks\" ]\n- if \"full_name\" in attributes and attributes[ \"full_name\" ] is not None:\n+ if \"full_name\" in attributes and attributes[ \"full_name\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"full_name\" ], ( str, unicode ) )\n self.__full_name = attributes[ \"full_name\" ]\n- if \"git_url\" in attributes and attributes[ \"git_url\" ] is not None:\n+ if \"git_url\" in attributes and attributes[ \"git_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"git_url\" ], ( str, unicode ) )\n self.__git_url = attributes[ \"git_url\" ]\n- if \"has_downloads\" in attributes and attributes[ \"has_downloads\" ] is not None:\n+ if \"has_downloads\" in attributes and attributes[ \"has_downloads\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"has_downloads\" ], bool )\n self.__has_downloads = attributes[ \"has_downloads\" ]\n- if \"has_issues\" in attributes and attributes[ \"has_issues\" ] is not None:\n+ if \"has_issues\" in attributes and attributes[ \"has_issues\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"has_issues\" ], bool )\n self.__has_issues = attributes[ \"has_issues\" ]\n- if \"has_wiki\" in attributes and attributes[ \"has_wiki\" ] is not None:\n+ if \"has_wiki\" in attributes and attributes[ \"has_wiki\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"has_wiki\" ], bool )\n self.__has_wiki = attributes[ \"has_wiki\" ]\n- if \"homepage\" in attributes and attributes[ \"homepage\" ] is not None:\n+ if \"homepage\" in attributes and attributes[ \"homepage\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"homepage\" ], ( str, unicode ) )\n self.__homepage = attributes[ \"homepage\" ]\n- if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None:\n+ if \"html_url\" in attributes and attributes[ \"html_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"html_url\" ], ( str, unicode ) )\n self.__html_url = attributes[ \"html_url\" ]\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"id\" ], int )\n self.__id = attributes[ \"id\" ]\n- if \"language\" in attributes and attributes[ \"language\" ] is not None:\n+ if \"language\" in attributes and attributes[ \"language\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"language\" ], ( str, unicode ) )\n self.__language = attributes[ \"language\" ]\n- if \"master_branch\" in attributes and attributes[ \"master_branch\" ] is not None:\n+ if \"master_branch\" in attributes and attributes[ \"master_branch\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"master_branch\" ], ( str, unicode ) )\n self.__master_branch = attributes[ \"master_branch\" ]\n- if \"mirror_url\" in attributes and attributes[ \"mirror_url\" ] is not None:\n+ if \"mirror_url\" in attributes and attributes[ \"mirror_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"mirror_url\" ], ( str, unicode ) )\n self.__mirror_url = attributes[ \"mirror_url\" ]\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"name\" ], ( str, unicode ) )\n self.__name = attributes[ \"name\" ]\n- if \"open_issues\" in attributes and attributes[ \"open_issues\" ] is not None:\n+ if \"open_issues\" in attributes and attributes[ \"open_issues\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"open_issues\" ], int )\n self.__open_issues = attributes[ \"open_issues\" ]\n- if \"organization\" in attributes and attributes[ \"organization\" ] is not None:\n+ if \"organization\" in attributes and attributes[ \"organization\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"organization\" ], dict )\n self.__organization = Organization.Organization( self.__requester, attributes[ \"organization\" ], completion = LazyCompletion )\n- if \"owner\" in attributes and attributes[ \"owner\" ] is not None:\n+ if \"owner\" in attributes and attributes[ \"owner\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"owner\" ], dict )\n self.__owner = NamedUser.NamedUser( self.__requester, attributes[ \"owner\" ], completion = LazyCompletion )\n- if \"parent\" in attributes and attributes[ \"parent\" ] is not None:\n+ if \"parent\" in attributes and attributes[ \"parent\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"parent\" ], dict )\n self.__parent = Repository( self.__requester, attributes[ \"parent\" ], completion = LazyCompletion )\n- if \"permissions\" in attributes and attributes[ \"permissions\" ] is not None:\n+ if \"permissions\" in attributes and attributes[ \"permissions\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"permissions\" ], dict )\n self.__permissions = Permissions.Permissions( self.__requester, attributes[ \"permissions\" ], completion = LazyCompletion )\n- if \"private\" in attributes and attributes[ \"private\" ] is not None:\n+ if \"private\" in attributes and attributes[ \"private\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"private\" ], bool )\n self.__private = attributes[ \"private\" ]\n- if \"pushed_at\" in attributes and attributes[ \"pushed_at\" ] is not None:\n+ if \"pushed_at\" in attributes and attributes[ \"pushed_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"pushed_at\" ], ( str, unicode ) )\n self.__pushed_at = attributes[ \"pushed_at\" ]\n- if \"size\" in attributes and attributes[ \"size\" ] is not None:\n+ if \"size\" in attributes and attributes[ \"size\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"size\" ], int )\n self.__size = attributes[ \"size\" ]\n- if \"source\" in attributes and attributes[ \"source\" ] is not None:\n+ if \"source\" in attributes and attributes[ \"source\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"source\" ], dict )\n self.__source = Repository( self.__requester, attributes[ \"source\" ], completion = LazyCompletion )\n- if \"ssh_url\" in attributes and attributes[ \"ssh_url\" ] is not None:\n+ if \"ssh_url\" in attributes and attributes[ \"ssh_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"ssh_url\" ], ( str, unicode ) )\n self.__ssh_url = attributes[ \"ssh_url\" ]\n- if \"svn_url\" in attributes and attributes[ \"svn_url\" ] is not None:\n+ if \"svn_url\" in attributes and attributes[ \"svn_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"svn_url\" ], ( str, unicode ) )\n self.__svn_url = attributes[ \"svn_url\" ]\n- if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None:\n+ if \"updated_at\" in attributes and attributes[ \"updated_at\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"updated_at\" ], ( str, unicode ) )\n self.__updated_at = attributes[ \"updated_at\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"url\" ], ( str, unicode ) )\n self.__url = attributes[ \"url\" ]\n- if \"watchers\" in attributes and attributes[ \"watchers\" ] is not None:\n+ if \"watchers\" in attributes and attributes[ \"watchers\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"watchers\" ], int )\n self.__watchers = attributes[ \"watchers\" ]","additions":31,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":10,"deletions":5,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/RepositoryKey.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/RepositoryKey.py","filename":"src/github/RepositoryKey.py","patch":"@@ -87,14 +87,14 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"id\", \"key\", \"title\", \"url\", \"verified\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n self.__id = attributes[ \"id\" ]\n- if \"key\" in attributes and attributes[ \"key\" ] is not None:\n+ if \"key\" in attributes and attributes[ \"key\" ] is not None: # pragma no branch\n self.__key = attributes[ \"key\" ]\n- if \"title\" in attributes and attributes[ \"title\" ] is not None:\n+ if \"title\" in attributes and attributes[ \"title\" ] is not None: # pragma no branch\n self.__title = attributes[ \"title\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n self.__url = attributes[ \"url\" ]\n- if \"verified\" in attributes and attributes[ \"verified\" ] is not None:\n+ if \"verified\" in attributes and attributes[ \"verified\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"verified\" ], bool )\n self.__verified = attributes[ \"verified\" ]","additions":5,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":8,"deletions":4,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Tag.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Tag.py","filename":"src/github/Tag.py","patch":"@@ -38,15 +38,15 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"commit\", \"name\", \"tarball_url\", \"zipball_url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"commit\" in attributes and attributes[ \"commit\" ] is not None:\n+ if \"commit\" in attributes and attributes[ \"commit\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"commit\" ], dict )\n self.__commit = Commit.Commit( self.__requester, attributes[ \"commit\" ], completion = LazyCompletion )\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"name\" ], ( str, unicode ) )\n self.__name = attributes[ \"name\" ]\n- if \"tarball_url\" in attributes and attributes[ \"tarball_url\" ] is not None:\n+ if \"tarball_url\" in attributes and attributes[ \"tarball_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"tarball_url\" ], ( str, unicode ) )\n self.__tarball_url = attributes[ \"tarball_url\" ]\n- if \"zipball_url\" in attributes and attributes[ \"zipball_url\" ] is not None:\n+ if \"zipball_url\" in attributes and attributes[ \"zipball_url\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"zipball_url\" ], ( str, unicode ) )\n self.__zipball_url = attributes[ \"zipball_url\" ]","additions":4,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":12,"deletions":6,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Team.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/Team.py","filename":"src/github/Team.py","patch":"@@ -172,15 +172,15 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"id\", \"members_count\", \"name\", \"permission\", \"repos_count\", \"url\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n self.__id = attributes[ \"id\" ]\n- if \"members_count\" in attributes and attributes[ \"members_count\" ] is not None:\n+ if \"members_count\" in attributes and attributes[ \"members_count\" ] is not None: # pragma no branch\n self.__members_count = attributes[ \"members_count\" ]\n- if \"name\" in attributes and attributes[ \"name\" ] is not None:\n+ if \"name\" in attributes and attributes[ \"name\" ] is not None: # pragma no branch\n self.__name = attributes[ \"name\" ]\n- if \"permission\" in attributes and attributes[ \"permission\" ] is not None:\n+ if \"permission\" in attributes and attributes[ \"permission\" ] is not None: # pragma no branch\n self.__permission = attributes[ \"permission\" ]\n- if \"repos_count\" in attributes and attributes[ \"repos_count\" ] is not None:\n+ if \"repos_count\" in attributes and attributes[ \"repos_count\" ] is not None: # pragma no branch\n self.__repos_count = attributes[ \"repos_count\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n self.__url = attributes[ \"url\" ]","additions":6,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":10,"deletions":5,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/UserKey.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/src/github/UserKey.py","filename":"src/github/UserKey.py","patch":"@@ -87,14 +87,14 @@ def __useAttributes( self, attributes ):\n for attribute in attributes:\n assert attribute in [ \"id\", \"key\", \"title\", \"url\", \"verified\", ], attribute\n # @toto No need to check if attribute is in attributes when attribute is mandatory\n- if \"id\" in attributes and attributes[ \"id\" ] is not None:\n+ if \"id\" in attributes and attributes[ \"id\" ] is not None: # pragma no branch\n self.__id = attributes[ \"id\" ]\n- if \"key\" in attributes and attributes[ \"key\" ] is not None:\n+ if \"key\" in attributes and attributes[ \"key\" ] is not None: # pragma no branch\n self.__key = attributes[ \"key\" ]\n- if \"title\" in attributes and attributes[ \"title\" ] is not None:\n+ if \"title\" in attributes and attributes[ \"title\" ] is not None: # pragma no branch\n self.__title = attributes[ \"title\" ]\n- if \"url\" in attributes and attributes[ \"url\" ] is not None:\n+ if \"url\" in attributes and attributes[ \"url\" ] is not None: # pragma no branch\n self.__url = attributes[ \"url\" ]\n- if \"verified\" in attributes and attributes[ \"verified\" ] is not None:\n+ if \"verified\" in attributes and attributes[ \"verified\" ] is not None: # pragma no branch\n assert isinstance( attributes[ \"verified\" ], bool )\n self.__verified = attributes[ \"verified\" ]","additions":5,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":26,"deletions":1,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/test/Issue.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/test/Issue.py","filename":"test/Issue.py","patch":"@@ -3,7 +3,8 @@\n class Issue( Framework.TestCase ):\r\n def setUp( self ):\r\n Framework.TestCase.setUp( self )\r\n- self.issue = self.g.get_user().get_repo( \"PyGithub\" ).get_issue( 28 )\r\n+ self.repo = self.g.get_user().get_repo( \"PyGithub\" )\r\n+ self.issue = self.repo.get_issue( 28 )\r\n \r\n def testAttributes( self ):\r\n self.assertEqual( self.issue.assignee.login, \"jacquev6\" )\r\n@@ -47,3 +48,26 @@ def testGetComments( self ):\n \r\n def testGetEvents( self ):\r\n self.assertListKeyEqual( self.issue.get_events(), lambda e: e.id, [ 15819975, 15820048 ] )\r\n+\r\n+ def testGetLabels( self ):\r\n+ self.assertListKeyEqual( self.issue.get_labels(), lambda l: l.name, [ \"Bug\", \"Project management\", \"Question\" ] )\r\n+\r\n+ def testAddAndRemoveLabels( self ):\r\n+ bug = self.repo.get_label( \"Bug\" )\r\n+ question = self.repo.get_label( \"Question\" )\r\n+ self.assertListKeyEqual( self.issue.get_labels(), lambda l: l.name, [ \"Bug\", \"Project management\", \"Question\" ] )\r\n+ self.issue.remove_from_labels( bug )\r\n+ self.assertListKeyEqual( self.issue.get_labels(), lambda l: l.name, [ \"Project management\", \"Question\" ] )\r\n+ self.issue.remove_from_labels( question )\r\n+ self.assertListKeyEqual( self.issue.get_labels(), lambda l: l.name, [ \"Project management\" ] )\r\n+ self.issue.add_to_labels( bug, question )\r\n+ self.assertListKeyEqual( self.issue.get_labels(), lambda l: l.name, [ \"Bug\", \"Project management\", \"Question\" ] )\r\n+\r\n+ def testDeleteAndSetLabels( self ):\r\n+ bug = self.repo.get_label( \"Bug\" )\r\n+ question = self.repo.get_label( \"Question\" )\r\n+ self.assertListKeyEqual( self.issue.get_labels(), lambda l: l.name, [ \"Bug\", \"Project management\", \"Question\" ] )\r\n+ self.issue.delete_labels()\r\n+ self.assertListKeyEqual( self.issue.get_labels(), lambda l: l.name, [] )\r\n+ self.issue.set_labels( bug, question )\r\n+ self.assertListKeyEqual( self.issue.get_labels(), lambda l: l.name, [ \"Bug\", \"Question\" ] )\r","additions":25,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":14,"deletions":7,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/test/IssueEvent.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/test/IssueEvent.py","filename":"test/IssueEvent.py","patch":"@@ -3,13 +3,13 @@\n class IssueEvent( Framework.TestCase ):\r\n def setUp( self ):\r\n Framework.TestCase.setUp( self )\r\n- self.event = self.g.get_user().get_repo( \"PyGithub\" ).get_issues_event( 15819975 )\r\n+ self.event = self.g.get_user().get_repo( \"PyGithub\" ).get_issues_event( 16348656 )\r\n \r\n def testAttributes( self ):\r\n self.assertEqual( self.event.actor.login, \"jacquev6\" )\r\n- self.assertEqual( self.event.commit_id, None )\r\n- self.assertEqual( self.event.created_at, \"2012-05-19T10:38:23Z\" )\r\n- self.assertEqual( self.event.event, \"subscribed\" )\r\n- self.assertEqual( self.event.id, 15819975 )\r\n- self.assertEqual( self.event.issue.number, 28 )\r\n- self.assertEqual( self.event.url, \"https://api.github.com/repos/jacquev6/PyGithub/issues/events/15819975\" )\r\n+ self.assertEqual( self.event.commit_id, \"ed866fc43833802ab553e5ff8581c81bb00dd433\" )\r\n+ self.assertEqual( self.event.created_at, \"2012-05-27T07:29:25Z\" )\r\n+ self.assertEqual( self.event.event, \"referenced\" )\r\n+ self.assertEqual( self.event.id, 16348656 )\r\n+ self.assertEqual( self.event.issue.number, 30 )\r\n+ self.assertEqual( self.event.url, \"https://api.github.com/repos/jacquev6/PyGithub/issues/events/16348656\" )\r","additions":7,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"added","changes":45,"deletions":0,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/test/ReplayData/Issue.testAddAndRemoveLabels.txt","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/test/ReplayData/Issue.testAddAndRemoveLabels.txt","filename":"test/ReplayData/Issue.testAddAndRemoveLabels.txt","patch":"@@ -0,0 +1,45 @@\n+GET /repos/jacquev6/PyGithub/labels/Bug {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4992'), ('content-length', '97'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"569c414d87e8ec43ec269a9e28bc2982\"'), ('date', 'Sun, 27 May 2012 09:04:01 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+{\"color\":\"e10c02\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\"}\n+\n+GET /repos/jacquev6/PyGithub/labels/Question {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4991'), ('content-length', '107'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"b659c8dcc1212c71f826547c3cc7ae99\"'), ('date', 'Sun, 27 May 2012 09:04:02 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}\n+\n+GET /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4990'), ('content-length', '335'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"c9f9beccb03030beaf7b80927da6fef6\"'), ('date', 'Sun, 27 May 2012 09:04:03 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\",\"color\":\"e10c02\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\",\"color\":\"444444\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}]\n+\n+DELETE /repos/jacquev6/PyGithub/issues/28/labels/Bug {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4989'), ('content-length', '237'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"46cc70bad88a09b559a5e67089005105\"'), ('date', 'Sun, 27 May 2012 09:04:03 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\",\"color\":\"444444\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}]\n+\n+GET /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4988'), ('content-length', '237'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"46cc70bad88a09b559a5e67089005105\"'), ('date', 'Sun, 27 May 2012 09:04:04 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\",\"color\":\"444444\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}]\n+\n+DELETE /repos/jacquev6/PyGithub/issues/28/labels/Question {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4987'), ('content-length', '129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"5352ae15c8a5a36c6cace63be9367332\"'), ('date', 'Sun, 27 May 2012 09:04:04 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\",\"color\":\"444444\"}]\n+\n+GET /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4986'), ('content-length', '129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"5352ae15c8a5a36c6cace63be9367332\"'), ('date', 'Sun, 27 May 2012 09:04:05 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\",\"color\":\"444444\"}]\n+\n+POST /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} [\"Bug\", \"Question\"]\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4985'), ('content-length', '335'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"d135d74d2ea2159d044676a220d41d3a\"'), ('date', 'Sun, 27 May 2012 09:04:06 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"color\":\"e10c02\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\"},{\"color\":\"444444\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\"},{\"color\":\"02e10c\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\"}]\n+\n+GET /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4984'), ('content-length', '335'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"c9f9beccb03030beaf7b80927da6fef6\"'), ('date', 'Sun, 27 May 2012 09:04:06 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\",\"color\":\"e10c02\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\",\"color\":\"444444\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}]\n+","additions":45,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"added","changes":35,"deletions":0,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/test/ReplayData/Issue.testDeleteAndSetLabels.txt","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/test/ReplayData/Issue.testDeleteAndSetLabels.txt","filename":"test/ReplayData/Issue.testDeleteAndSetLabels.txt","patch":"@@ -0,0 +1,35 @@\n+GET /repos/jacquev6/PyGithub/labels/Bug {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4974'), ('content-length', '97'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"fe2e942523eecb156d100829a6347516\"'), ('date', 'Sun, 27 May 2012 09:06:37 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\",\"color\":\"e10c02\"}\n+\n+GET /repos/jacquev6/PyGithub/labels/Question {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4973'), ('content-length', '107'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"931e58d337b2290717303141eda89cd7\"'), ('date', 'Sun, 27 May 2012 09:06:38 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+{\"color\":\"02e10c\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\"}\n+\n+GET /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4972'), ('content-length', '335'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"d135d74d2ea2159d044676a220d41d3a\"'), ('date', 'Sun, 27 May 2012 09:06:39 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"color\":\"e10c02\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\"},{\"color\":\"444444\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\"},{\"color\":\"02e10c\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\"}]\n+\n+DELETE /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} null\n+204\n+[('status', '204 No Content'), ('x-ratelimit-remaining', '4971'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"d41d8cd98f00b204e9800998ecf8427e\"'), ('date', 'Sun, 27 May 2012 09:06:39 GMT')]\n+\n+\n+GET /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4970'), ('content-length', '2'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"d751713988987e9331980363e24189ce\"'), ('date', 'Sun, 27 May 2012 09:06:40 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[]\n+\n+PUT /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} [\"Bug\", \"Question\"]\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4969'), ('content-length', '207'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"1a56634d9c1050a88592ff55ed8adc62\"'), ('date', 'Sun, 27 May 2012 09:06:40 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\",\"color\":\"e10c02\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}]\n+\n+GET /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4968'), ('content-length', '207'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"1a56634d9c1050a88592ff55ed8adc62\"'), ('date', 'Sun, 27 May 2012 09:06:41 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\",\"color\":\"e10c02\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}]\n+","additions":35,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"added","changes":5,"deletions":0,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/test/ReplayData/Issue.testGetLabels.txt","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/test/ReplayData/Issue.testGetLabels.txt","filename":"test/ReplayData/Issue.testGetLabels.txt","patch":"@@ -0,0 +1,5 @@\n+GET /repos/jacquev6/PyGithub/issues/28/labels {'Authorization': 'Basic login_and_password_removed'} null\n+200\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4996'), ('content-length', '335'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"c9f9beccb03030beaf7b80927da6fef6\"'), ('date', 'Sun, 27 May 2012 08:56:31 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\",\"color\":\"e10c02\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\",\"color\":\"444444\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}]\n+","additions":5,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},{"status":"modified","changes":14,"deletions":7,"raw_url":"https://github.com/jacquev6/PyGithub/raw/8a4f306d4b223682dd19410d4a9150636ebe4206/test/ReplayData/IssueEvent.setUp.txt","blob_url":"https://github.com/jacquev6/PyGithub/blob/8a4f306d4b223682dd19410d4a9150636ebe4206/test/ReplayData/IssueEvent.setUp.txt","filename":"test/ReplayData/IssueEvent.setUp.txt","patch":"@@ -1,15 +1,15 @@\n GET /user {'Authorization': 'Basic login_and_password_removed'} null\n 200\n-[('status', '200 OK'), ('x-ratelimit-remaining', '4907'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"99c9bfb75395b749e9913a4729126fb5\"'), ('date', 'Sun, 27 May 2012 07:19:30 GMT'), ('content-type', 'application/json; charset=utf-8')]\n-{\"private_gists\":5,\"type\":\"User\",\"company\":\"Criteo\",\"location\":\"Paris, France\",\"hireable\":false,\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"bio\":\"\",\"following\":24,\"blog\":\"http://vincent-jacques.net\",\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\",\"total_private_repos\":5,\"followers\":13,\"owned_private_repos\":5,\"disk_usage\":16976,\"collaborators\":0,\"html_url\":\"https://github.com/jacquev6\",\"url\":\"https://api.github.com/users/jacquev6\",\"name\":\"Vincent Jacques\",\"login\":\"jacquev6\",\"public_repos\":11,\"public_gists\":3,\"email\":\"vincent@vincent-jacques.net\",\"id\":327146,\"plan\":{\"private_repos\":5,\"collaborators\":1,\"name\":\"micro\",\"space\":614400},\"created_at\":\"2010-07-09T06:10:06Z\"}\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4996'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"8974bb1628a3e3a6d3eb3b08c1b5a46b\"'), ('date', 'Sun, 27 May 2012 07:32:54 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+{\"type\":\"User\",\"bio\":\"\",\"disk_usage\":16976,\"total_private_repos\":5,\"url\":\"https://api.github.com/users/jacquev6\",\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\",\"owned_private_repos\":5,\"collaborators\":0,\"plan\":{\"collaborators\":1,\"private_repos\":5,\"name\":\"micro\",\"space\":614400},\"company\":\"Criteo\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"login\":\"jacquev6\",\"email\":\"vincent@vincent-jacques.net\",\"public_gists\":3,\"followers\":13,\"name\":\"Vincent Jacques\",\"created_at\":\"2010-07-09T06:10:06Z\",\"blog\":\"http://vincent-jacques.net\",\"location\":\"Paris, France\",\"hireable\":false,\"id\":327146,\"private_gists\":5,\"public_repos\":11,\"following\":24,\"html_url\":\"https://github.com/jacquev6\"}\n \n GET /repos/jacquev6/PyGithub {'Authorization': 'Basic login_and_password_removed'} null\n 200\n-[('status', '200 OK'), ('x-ratelimit-remaining', '4906'), ('content-length', '1129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"4c20acf0b23f75bbf25106b1a04f65a5\"'), ('date', 'Sun, 27 May 2012 07:19:31 GMT'), ('content-type', 'application/json; charset=utf-8')]\n-{\"description\":\"Python library implementing the full Github API v3\",\"full_name\":\"jacquev6/PyGithub\",\"has_wiki\":false,\"has_issues\":true,\"updated_at\":\"2012-05-27T06:55:28Z\",\"forks\":3,\"mirror_url\":null,\"homepage\":\"http://vincent-jacques.net/PyGithub\",\"ssh_url\":\"git@github.com:jacquev6/PyGithub.git\",\"open_issues\":16,\"fork\":false,\"svn_url\":\"https://github.com/jacquev6/PyGithub\",\"pushed_at\":\"2012-05-27T06:00:28Z\",\"size\":308,\"html_url\":\"https://github.com/jacquev6/PyGithub\",\"private\":false,\"url\":\"https://api.github.com/repos/jacquev6/PyGithub\",\"clone_url\":\"https://github.com/jacquev6/PyGithub.git\",\"owner\":{\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\",\"url\":\"https://api.github.com/users/jacquev6\",\"login\":\"jacquev6\",\"id\":327146},\"name\":\"PyGithub\",\"has_downloads\":true,\"language\":\"Python\",\"watchers\":15,\"git_url\":\"git://github.com/jacquev6/PyGithub.git\",\"id\":3544490,\"permissions\":{\"admin\":true,\"pull\":true,\"push\":true},\"created_at\":\"2012-02-25T12:53:47Z\"}\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4995'), ('content-length', '1129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"f1e4eb3993a364b66b68ec9db42405bd\"'), ('date', 'Sun, 27 May 2012 07:32:55 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+{\"clone_url\":\"https://github.com/jacquev6/PyGithub.git\",\"has_downloads\":true,\"watchers\":15,\"updated_at\":\"2012-05-27T07:29:24Z\",\"permissions\":{\"pull\":true,\"admin\":true,\"push\":true},\"homepage\":\"http://vincent-jacques.net/PyGithub\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub\",\"mirror_url\":null,\"has_wiki\":false,\"has_issues\":true,\"fork\":false,\"forks\":3,\"git_url\":\"git://github.com/jacquev6/PyGithub.git\",\"size\":308,\"private\":false,\"open_issues\":16,\"svn_url\":\"https://github.com/jacquev6/PyGithub\",\"owner\":{\"url\":\"https://api.github.com/users/jacquev6\",\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"login\":\"jacquev6\",\"id\":327146},\"name\":\"PyGithub\",\"language\":\"Python\",\"description\":\"Python library implementing the full Github API v3\",\"ssh_url\":\"git@github.com:jacquev6/PyGithub.git\",\"pushed_at\":\"2012-05-27T07:29:24Z\",\"created_at\":\"2012-02-25T12:53:47Z\",\"id\":3544490,\"html_url\":\"https://github.com/jacquev6/PyGithub\",\"full_name\":\"jacquev6/PyGithub\"}\n \n-GET /repos/jacquev6/PyGithub/issues/events/15819975 {'Authorization': 'Basic login_and_password_removed'} null\n+GET /repos/jacquev6/PyGithub/issues/events/16348656 {'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed'} null\n 200\n-[('status', '200 OK'), ('x-ratelimit-remaining', '4905'), ('content-length', '2430'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"a3d244842d23f92f69a23e21626fad11\"'), ('date', 'Sun, 27 May 2012 07:19:31 GMT'), ('content-type', 'application/json; charset=utf-8')]\n-{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues/events/15819975\",\"issue\":{\"updated_at\":\"2012-05-26T14:59:33Z\",\"body\":\"Body edited by PyGithub\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues/28\",\"comments\":0,\"milestone\":{\"creator\":{\"url\":\"https://api.github.com/users/jacquev6\",\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"login\":\"jacquev6\",\"id\":327146},\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/milestones/1\",\"number\":1,\"title\":\"Version 0.4\",\"due_on\":\"2012-03-13T07:00:00Z\",\"closed_issues\":3,\"open_issues\":0,\"created_at\":\"2012-03-08T12:22:10Z\",\"state\":\"closed\",\"description\":\"\",\"id\":93546},\"number\":28,\"assignee\":{\"url\":\"https://api.github.com/users/jacquev6\",\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"login\":\"jacquev6\",\"id\":327146},\"closed_at\":\"2012-05-26T14:59:33Z\",\"title\":\"Issue created by PyGithub\",\"labels\":[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug\",\"name\":\"Bug\",\"color\":\"e10c02\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management\",\"name\":\"Project management\",\"color\":\"444444\"},{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}],\"created_at\":\"2012-05-19T10:38:23Z\",\"state\":\"closed\",\"user\":{\"url\":\"https://api.github.com/users/jacquev6\",\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"login\":\"jacquev6\",\"id\":327146},\"id\":4653757,\"pull_request\":{\"diff_url\":null,\"patch_url\":null,\"html_url\":null},\"html_url\":\"https://github.com/jacquev6/PyGithub/issues/28\"},\"commit_id\":null,\"created_at\":\"2012-05-19T10:38:23Z\",\"event\":\"subscribed\",\"id\":15819975,\"actor\":{\"url\":\"https://api.github.com/users/jacquev6\",\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"login\":\"jacquev6\",\"id\":327146}}\n+[('status', '200 OK'), ('x-ratelimit-remaining', '4994'), ('content-length', '1384'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '\"fefecab09e7355d4ef9875677c2631da\"'), ('date', 'Sun, 27 May 2012 07:32:56 GMT'), ('content-type', 'application/json; charset=utf-8')]\n+{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues/events/16348656\",\"issue\":{\"updated_at\":\"2012-05-27T07:27:51Z\",\"body\":\"Body created by PyGithub\",\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/issues/30\",\"comments\":0,\"milestone\":null,\"number\":30,\"assignee\":null,\"closed_at\":null,\"title\":\"Issue also created by PyGithub\",\"labels\":[{\"url\":\"https://api.github.com/repos/jacquev6/PyGithub/labels/Question\",\"name\":\"Question\",\"color\":\"02e10c\"}],\"created_at\":\"2012-05-27T05:40:15Z\",\"state\":\"open\",\"user\":{\"url\":\"https://api.github.com/users/jacquev6\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"login\":\"jacquev6\",\"id\":327146,\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\"},\"id\":4769659,\"pull_request\":{\"patch_url\":null,\"diff_url\":null,\"html_url\":null},\"html_url\":\"https://github.com/jacquev6/PyGithub/issues/30\"},\"commit_id\":\"ed866fc43833802ab553e5ff8581c81bb00dd433\",\"created_at\":\"2012-05-27T07:29:25Z\",\"event\":\"referenced\",\"id\":16348656,\"actor\":{\"url\":\"https://api.github.com/users/jacquev6\",\"gravatar_id\":\"b68de5ae38616c296fa345d2b9df2225\",\"login\":\"jacquev6\",\"id\":327146,\"avatar_url\":\"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png\"}}\n ","additions":7,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"}] + diff --git a/lib/github/tests/ReplayData/RateLimiting.testGetRateLimit.txt b/lib/github/tests/ReplayData/RateLimiting.testGetRateLimit.txt new file mode 100644 index 0000000000..8807677f8a --- /dev/null +++ b/lib/github/tests/ReplayData/RateLimiting.testGetRateLimit.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/rate_limit +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '5000'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '1a3fa558-6663-4055-91e3-b6824f5f850e'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('content-length', '59'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('cache-control', 'no-cache'), ('date', 'Fri, 06 Sep 2013 09:29:57 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1378463397')] +{"rate":{"limit":5000,"remaining":5000,"reset":1378463397}} + diff --git a/lib/github/tests/ReplayData/RateLimiting.testRateLimiting.txt b/lib/github/tests/ReplayData/RateLimiting.testRateLimiting.txt new file mode 100644 index 0000000000..208c1716a9 --- /dev/null +++ b/lib/github/tests/ReplayData/RateLimiting.testRateLimiting.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/rate_limit +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '5000'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('cache-control', 'max-age=0, private, must-revalidate'), ('vary', 'Accept-Encoding'), ('content-length', '59'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('etag', '"47ba6b48c8b2986ec54f249b51b0a9ec"'), ('access-control-allow-credentials', 'true'), ('date', 'Tue, 06 Aug 2013 14:52:12 GMT'), ('x-oauth-scopes', 'user, public_repo, repo, gist'), ('content-type', 'application/json; charset=utf-8'), ('access-control-allow-origin', '*'), ('x-ratelimit-reset', '1375802816')] +{"rate":{"limit":5000,"remaining":5000,"reset":1375802816}} + +https +GET +api.github.com +None +/users/jacquev6 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4999'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '1293'), ('server', 'GitHub.com'), ('access-control-allow-origin', '*'), ('last-modified', 'Mon, 05 Aug 2013 07:28:42 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"7d9b8600b27332ec98f57ee9e18639e9"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Tue, 06 Aug 2013 14:52:12 GMT'), ('x-oauth-scopes', 'user, public_repo, repo, gist'), ('content-type', 'application/json; charset=utf-8'), ('x-accepted-oauth-scopes', 'user, user:email, user:follow, site_admin'), ('x-ratelimit-reset', '1375802816')] +{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","name":"Vincent Jacques","company":"","blog":"http://vincent-jacques.net","location":"Paris, France","email":"vincent@vincent-jacques.net","hireable":false,"bio":"","public_repos":16,"followers":27,"following":39,"created_at":"2010-07-09T06:10:06Z","updated_at":"2013-08-05T07:28:42Z","public_gists":3} + diff --git a/lib/github/tests/ReplayData/RateLimiting.testResetTime.txt b/lib/github/tests/ReplayData/RateLimiting.testResetTime.txt new file mode 100755 index 0000000000..3bc5114214 --- /dev/null +++ b/lib/github/tests/ReplayData/RateLimiting.testResetTime.txt @@ -0,0 +1,10 @@ +https +GET +api.github.com +None +/rate_limit +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '5000'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('cache-control', 'max-age=0, private, must-revalidate'), ('vary', 'Accept-Encoding'), ('content-length', '59'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('etag', '"47ba6b48c8b2986ec54f249b51b0a9ec"'), ('access-control-allow-credentials', 'true'), ('date', 'Tue, 06 Aug 2013 14:52:12 GMT'), ('x-oauth-scopes', 'user, public_repo, repo, gist'), ('content-type', 'application/json; charset=utf-8'), ('access-control-allow-origin', '*'), ('x-ratelimit-reset', '1375802816')] +{"rate":{"limit":5000,"remaining":5000,"reset":1375802816}} diff --git a/lib/github/tests/ReplayData/RawData.testCompletedObject.txt b/lib/github/tests/ReplayData/RawData.testCompletedObject.txt new file mode 100644 index 0000000000..a153f079cd --- /dev/null +++ b/lib/github/tests/ReplayData/RawData.testCompletedObject.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/users/jacquev6 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4988'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '1464'), ('server', 'GitHub.com'), ('last-modified', 'Tue, 12 Mar 2013 22:13:32 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"1bb2632b6c4ebeb4ff568329490bfbe2"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 13 Mar 2013 13:13:30 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","name":"Vincent Jacques","company":"Criteo","blog":"http://vincent-jacques.net","location":"Paris, France","email":"vincent@vincent-jacques.net","hireable":false,"bio":"","public_repos":21,"followers":22,"following":38,"created_at":"2010-07-09T06:10:06Z","updated_at":"2013-03-12T22:13:32Z","public_gists":2,"total_private_repos":4,"owned_private_repos":4,"disk_usage":13812,"collaborators":1,"plan":{"name":"micro","space":614400,"collaborators":1,"private_repos":5},"private_gists":5} + diff --git a/lib/github/tests/ReplayData/RawData.testNonCompletableObject.txt b/lib/github/tests/ReplayData/RawData.testNonCompletableObject.txt new file mode 100644 index 0000000000..91750ad6d2 --- /dev/null +++ b/lib/github/tests/ReplayData/RawData.testNonCompletableObject.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4987'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '1464'), ('server', 'GitHub.com'), ('last-modified', 'Tue, 12 Mar 2013 22:13:32 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"1bb2632b6c4ebeb4ff568329490bfbe2"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 13 Mar 2013 13:13:31 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","name":"Vincent Jacques","company":"Criteo","blog":"http://vincent-jacques.net","location":"Paris, France","email":"vincent@vincent-jacques.net","hireable":false,"bio":"","public_repos":21,"followers":22,"following":38,"created_at":"2010-07-09T06:10:06Z","updated_at":"2013-03-12T22:13:32Z","public_gists":2,"total_private_repos":4,"owned_private_repos":4,"disk_usage":13812,"collaborators":1,"plan":{"name":"micro","space":614400,"collaborators":1,"private_repos":5},"private_gists":5} + diff --git a/lib/github/tests/ReplayData/RawData.testNotYetCompletedObject.txt b/lib/github/tests/ReplayData/RawData.testNotYetCompletedObject.txt new file mode 100644 index 0000000000..8112da8785 --- /dev/null +++ b/lib/github/tests/ReplayData/RawData.testNotYetCompletedObject.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4986'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '1464'), ('server', 'GitHub.com'), ('last-modified', 'Tue, 12 Mar 2013 22:13:32 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"1bb2632b6c4ebeb4ff568329490bfbe2"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 13 Mar 2013 13:13:31 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","name":"Vincent Jacques","company":"Criteo","blog":"http://vincent-jacques.net","location":"Paris, France","email":"vincent@vincent-jacques.net","hireable":false,"bio":"","public_repos":21,"followers":22,"following":38,"created_at":"2010-07-09T06:10:06Z","updated_at":"2013-03-12T22:13:32Z","public_gists":2,"total_private_repos":4,"owned_private_repos":4,"disk_usage":13812,"collaborators":1,"plan":{"name":"micro","space":614400,"collaborators":1,"private_repos":5},"private_gists":5} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4985'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '4656'), ('server', 'GitHub.com'), ('last-modified', 'Tue, 12 Mar 2013 22:13:32 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"1bb2632b6c4ebeb4ff568329490bfbe2"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 13 Mar 2013 13:13:31 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags{/tag}","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","created_at":"2012-02-25T12:53:47Z","updated_at":"2013-03-12T22:13:32Z","pushed_at":"2013-03-12T09:25:23Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.com/PyGithub","size":416,"watchers_count":167,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":47,"mirror_url":null,"open_issues_count":13,"forks":47,"open_issues":13,"watchers":167,"master_branch":"master","default_branch":"master","permissions":{"admin":true,"push":true,"pull":true},"network_count":47} + +https +GET +api.github.com +None +/users/jacquev6 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4984'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '1464'), ('server', 'GitHub.com'), ('last-modified', 'Tue, 12 Mar 2013 22:13:32 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"1bb2632b6c4ebeb4ff568329490bfbe2"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 13 Mar 2013 13:13:32 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","name":"Vincent Jacques","company":"Criteo","blog":"http://vincent-jacques.net","location":"Paris, France","email":"vincent@vincent-jacques.net","hireable":false,"bio":"","public_repos":21,"followers":22,"following":38,"created_at":"2010-07-09T06:10:06Z","updated_at":"2013-03-12T22:13:32Z","public_gists":2,"total_private_repos":4,"owned_private_repos":4,"disk_usage":13812,"collaborators":1,"plan":{"name":"micro","space":614400,"collaborators":1,"private_repos":5},"private_gists":5} + diff --git a/lib/github/tests/ReplayData/Release.setUp.txt b/lib/github/tests/ReplayData/Release.setUp.txt new file mode 100644 index 0000000000..80d360cc23 --- /dev/null +++ b/lib/github/tests/ReplayData/Release.setUp.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '1220'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '13d09b732ebe76f892093130dc088652'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"a692daa1e912efb3a9048cdbae74bf02"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4980'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:54C7:6E3A7C1:5539FFC2'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Thu, 23 Apr 2015 15:34:48 GMT'), ('date', 'Fri, 24 Apr 2015 08:33:06 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false,"public_repos":3,"public_gists":0,"followers":0,"following":0,"created_at":"2015-04-13T09:58:53Z","updated_at":"2015-04-23T15:34:48Z","private_gists":0,"total_private_repos":0,"owned_private_repos":0,"disk_usage":0,"collaborators":0,"plan":{"name":"free","space":976562499,"collaborators":0,"private_repos":0}} + +https +GET +api.github.com +None +/repos/edhollandAL/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '13980'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '173530fed4bbeb1e264b2ed22e8b5c20'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"354bfbe5bc3193b117028111f8d7bf5d"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4979'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:54C3:5BF1183:5539FFC2'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Thu, 23 Apr 2015 10:29:48 GMT'), ('date', 'Fri, 24 Apr 2015 08:33:07 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +{"id":34449703,"name":"PyGithub","full_name":"edhollandAL/PyGithub","owner":{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/edhollandAL/PyGithub","description":"Python library implementing the GitHub API v3","fork":true,"url":"https://api.github.com/repos/edhollandAL/PyGithub","forks_url":"https://api.github.com/repos/edhollandAL/PyGithub/forks","keys_url":"https://api.github.com/repos/edhollandAL/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/edhollandAL/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/edhollandAL/PyGithub/teams","hooks_url":"https://api.github.com/repos/edhollandAL/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/edhollandAL/PyGithub/events","assignees_url":"https://api.github.com/repos/edhollandAL/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/edhollandAL/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/edhollandAL/PyGithub/tags","blobs_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/edhollandAL/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/edhollandAL/PyGithub/languages","stargazers_url":"https://api.github.com/repos/edhollandAL/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/edhollandAL/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/edhollandAL/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/edhollandAL/PyGithub/subscription","commits_url":"https://api.github.com/repos/edhollandAL/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/edhollandAL/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/edhollandAL/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/edhollandAL/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/edhollandAL/PyGithub/merges","archive_url":"https://api.github.com/repos/edhollandAL/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/edhollandAL/PyGithub/downloads","issues_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/edhollandAL/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/edhollandAL/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/edhollandAL/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/edhollandAL/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/edhollandAL/PyGithub/releases{/id}","created_at":"2015-04-23T10:29:45Z","updated_at":"2015-04-23T10:29:48Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/edhollandAL/PyGithub.git","ssh_url":"git@github.com:edhollandAL/PyGithub.git","clone_url":"https://github.com/edhollandAL/PyGithub.git","svn_url":"https://github.com/edhollandAL/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master","permissions":{"admin":true,"push":true,"pull":true},"parent":{"id":3544490,"name":"PyGithub","full_name":"PyGithub/PyGithub","owner":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/PyGithub/PyGithub","description":"Python library implementing the GitHub API v3","fork":false,"url":"https://api.github.com/repos/PyGithub/PyGithub","forks_url":"https://api.github.com/repos/PyGithub/PyGithub/forks","keys_url":"https://api.github.com/repos/PyGithub/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PyGithub/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PyGithub/PyGithub/teams","hooks_url":"https://api.github.com/repos/PyGithub/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/PyGithub/PyGithub/events","assignees_url":"https://api.github.com/repos/PyGithub/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/PyGithub/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/PyGithub/PyGithub/tags","blobs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PyGithub/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/PyGithub/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PyGithub/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/PyGithub/PyGithub/languages","stargazers_url":"https://api.github.com/repos/PyGithub/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/PyGithub/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/PyGithub/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/PyGithub/PyGithub/subscription","commits_url":"https://api.github.com/repos/PyGithub/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/PyGithub/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/PyGithub/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/PyGithub/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/PyGithub/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PyGithub/PyGithub/merges","archive_url":"https://api.github.com/repos/PyGithub/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PyGithub/PyGithub/downloads","issues_url":"https://api.github.com/repos/PyGithub/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/PyGithub/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/PyGithub/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/PyGithub/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PyGithub/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/PyGithub/PyGithub/releases{/id}","created_at":"2012-02-25T12:53:47Z","updated_at":"2015-04-23T16:36:27Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/PyGithub/PyGithub.git","ssh_url":"git@github.com:PyGithub/PyGithub.git","clone_url":"https://github.com/PyGithub/PyGithub.git","svn_url":"https://github.com/PyGithub/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":579,"watchers_count":579,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":160,"mirror_url":null,"open_issues_count":28,"forks":160,"open_issues":28,"watchers":579,"default_branch":"master"},"source":{"id":3544490,"name":"PyGithub","full_name":"PyGithub/PyGithub","owner":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/PyGithub/PyGithub","description":"Python library implementing the GitHub API v3","fork":false,"url":"https://api.github.com/repos/PyGithub/PyGithub","forks_url":"https://api.github.com/repos/PyGithub/PyGithub/forks","keys_url":"https://api.github.com/repos/PyGithub/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PyGithub/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PyGithub/PyGithub/teams","hooks_url":"https://api.github.com/repos/PyGithub/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/PyGithub/PyGithub/events","assignees_url":"https://api.github.com/repos/PyGithub/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/PyGithub/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/PyGithub/PyGithub/tags","blobs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PyGithub/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/PyGithub/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PyGithub/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/PyGithub/PyGithub/languages","stargazers_url":"https://api.github.com/repos/PyGithub/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/PyGithub/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/PyGithub/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/PyGithub/PyGithub/subscription","commits_url":"https://api.github.com/repos/PyGithub/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/PyGithub/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/PyGithub/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/PyGithub/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/PyGithub/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PyGithub/PyGithub/merges","archive_url":"https://api.github.com/repos/PyGithub/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PyGithub/PyGithub/downloads","issues_url":"https://api.github.com/repos/PyGithub/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/PyGithub/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/PyGithub/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/PyGithub/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PyGithub/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/PyGithub/PyGithub/releases{/id}","created_at":"2012-02-25T12:53:47Z","updated_at":"2015-04-23T16:36:27Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/PyGithub/PyGithub.git","ssh_url":"git@github.com:PyGithub/PyGithub.git","clone_url":"https://github.com/PyGithub/PyGithub.git","svn_url":"https://github.com/PyGithub/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":579,"watchers_count":579,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":160,"mirror_url":null,"open_issues_count":28,"forks":160,"open_issues":28,"watchers":579,"default_branch":"master"},"network_count":160,"subscribers_count":1} + +https +GET +api.github.com +None +/repos/edhollandAL/PyGithub/releases +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '1650'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '2d7a5e35115884240089368322196939'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"eec4217108c76d16d4aaede6000d736d"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4978'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:54C9:7B29F8E:5539FFC3'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 24 Apr 2015 08:33:07 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +[{"url":"https://api.github.com/repos/edhollandAL/PyGithub/releases/1210798","assets_url":"https://api.github.com/repos/edhollandAL/PyGithub/releases/1210798/assets","upload_url":"https://uploads.github.com/repos/edhollandAL/PyGithub/releases/1210798/assets{?name}","html_url":"https://github.com/edhollandAL/PyGithub/releases/tag/v1.25.2","id":1210798,"tag_name":"v1.25.2","target_commitish":"master","name":"Updated Test","draft":false,"author":{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false},"prerelease":false,"created_at":"2014-10-08T01:54:00Z","published_at":"2015-04-24T08:31:20Z","assets":[],"tarball_url":"https://api.github.com/repos/edhollandAL/PyGithub/tarball/v1.25.2","zipball_url":"https://api.github.com/repos/edhollandAL/PyGithub/zipball/v1.25.2","body":"Updated Body"}] + diff --git a/lib/github/tests/ReplayData/Release.testAttributes.txt b/lib/github/tests/ReplayData/Release.testAttributes.txt new file mode 100644 index 0000000000..0a92a4b4bb --- /dev/null +++ b/lib/github/tests/ReplayData/Release.testAttributes.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '1220'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '4c8b2d4732c413f4b9aefe394bd65569'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"a692daa1e912efb3a9048cdbae74bf02"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4970'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:70D0:40D04D3:553A014A'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Thu, 23 Apr 2015 15:34:48 GMT'), ('date', 'Fri, 24 Apr 2015 08:39:39 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false,"public_repos":3,"public_gists":0,"followers":0,"following":0,"created_at":"2015-04-13T09:58:53Z","updated_at":"2015-04-23T15:34:48Z","private_gists":0,"total_private_repos":0,"owned_private_repos":0,"disk_usage":0,"collaborators":0,"plan":{"name":"free","space":976562499,"collaborators":0,"private_repos":0}} + +https +GET +api.github.com +None +/repos/edhollandAL/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '13980'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '4c8b2d4732c413f4b9aefe394bd65569'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"354bfbe5bc3193b117028111f8d7bf5d"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4969'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:70D4:71AB7A0:553A014B'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Thu, 23 Apr 2015 10:29:48 GMT'), ('date', 'Fri, 24 Apr 2015 08:39:39 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +{"id":34449703,"name":"PyGithub","full_name":"edhollandAL/PyGithub","owner":{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/edhollandAL/PyGithub","description":"Python library implementing the GitHub API v3","fork":true,"url":"https://api.github.com/repos/edhollandAL/PyGithub","forks_url":"https://api.github.com/repos/edhollandAL/PyGithub/forks","keys_url":"https://api.github.com/repos/edhollandAL/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/edhollandAL/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/edhollandAL/PyGithub/teams","hooks_url":"https://api.github.com/repos/edhollandAL/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/edhollandAL/PyGithub/events","assignees_url":"https://api.github.com/repos/edhollandAL/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/edhollandAL/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/edhollandAL/PyGithub/tags","blobs_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/edhollandAL/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/edhollandAL/PyGithub/languages","stargazers_url":"https://api.github.com/repos/edhollandAL/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/edhollandAL/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/edhollandAL/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/edhollandAL/PyGithub/subscription","commits_url":"https://api.github.com/repos/edhollandAL/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/edhollandAL/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/edhollandAL/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/edhollandAL/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/edhollandAL/PyGithub/merges","archive_url":"https://api.github.com/repos/edhollandAL/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/edhollandAL/PyGithub/downloads","issues_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/edhollandAL/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/edhollandAL/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/edhollandAL/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/edhollandAL/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/edhollandAL/PyGithub/releases{/id}","created_at":"2015-04-23T10:29:45Z","updated_at":"2015-04-23T10:29:48Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/edhollandAL/PyGithub.git","ssh_url":"git@github.com:edhollandAL/PyGithub.git","clone_url":"https://github.com/edhollandAL/PyGithub.git","svn_url":"https://github.com/edhollandAL/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master","permissions":{"admin":true,"push":true,"pull":true},"parent":{"id":3544490,"name":"PyGithub","full_name":"PyGithub/PyGithub","owner":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/PyGithub/PyGithub","description":"Python library implementing the GitHub API v3","fork":false,"url":"https://api.github.com/repos/PyGithub/PyGithub","forks_url":"https://api.github.com/repos/PyGithub/PyGithub/forks","keys_url":"https://api.github.com/repos/PyGithub/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PyGithub/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PyGithub/PyGithub/teams","hooks_url":"https://api.github.com/repos/PyGithub/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/PyGithub/PyGithub/events","assignees_url":"https://api.github.com/repos/PyGithub/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/PyGithub/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/PyGithub/PyGithub/tags","blobs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PyGithub/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/PyGithub/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PyGithub/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/PyGithub/PyGithub/languages","stargazers_url":"https://api.github.com/repos/PyGithub/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/PyGithub/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/PyGithub/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/PyGithub/PyGithub/subscription","commits_url":"https://api.github.com/repos/PyGithub/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/PyGithub/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/PyGithub/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/PyGithub/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/PyGithub/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PyGithub/PyGithub/merges","archive_url":"https://api.github.com/repos/PyGithub/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PyGithub/PyGithub/downloads","issues_url":"https://api.github.com/repos/PyGithub/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/PyGithub/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/PyGithub/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/PyGithub/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PyGithub/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/PyGithub/PyGithub/releases{/id}","created_at":"2012-02-25T12:53:47Z","updated_at":"2015-04-23T16:36:27Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/PyGithub/PyGithub.git","ssh_url":"git@github.com:PyGithub/PyGithub.git","clone_url":"https://github.com/PyGithub/PyGithub.git","svn_url":"https://github.com/PyGithub/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":579,"watchers_count":579,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":160,"mirror_url":null,"open_issues_count":28,"forks":160,"open_issues":28,"watchers":579,"default_branch":"master"},"source":{"id":3544490,"name":"PyGithub","full_name":"PyGithub/PyGithub","owner":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/PyGithub/PyGithub","description":"Python library implementing the GitHub API v3","fork":false,"url":"https://api.github.com/repos/PyGithub/PyGithub","forks_url":"https://api.github.com/repos/PyGithub/PyGithub/forks","keys_url":"https://api.github.com/repos/PyGithub/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PyGithub/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PyGithub/PyGithub/teams","hooks_url":"https://api.github.com/repos/PyGithub/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/PyGithub/PyGithub/events","assignees_url":"https://api.github.com/repos/PyGithub/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/PyGithub/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/PyGithub/PyGithub/tags","blobs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PyGithub/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/PyGithub/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PyGithub/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/PyGithub/PyGithub/languages","stargazers_url":"https://api.github.com/repos/PyGithub/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/PyGithub/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/PyGithub/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/PyGithub/PyGithub/subscription","commits_url":"https://api.github.com/repos/PyGithub/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/PyGithub/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/PyGithub/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/PyGithub/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/PyGithub/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PyGithub/PyGithub/merges","archive_url":"https://api.github.com/repos/PyGithub/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PyGithub/PyGithub/downloads","issues_url":"https://api.github.com/repos/PyGithub/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/PyGithub/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/PyGithub/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/PyGithub/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PyGithub/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/PyGithub/PyGithub/releases{/id}","created_at":"2012-02-25T12:53:47Z","updated_at":"2015-04-23T16:36:27Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/PyGithub/PyGithub.git","ssh_url":"git@github.com:PyGithub/PyGithub.git","clone_url":"https://github.com/PyGithub/PyGithub.git","svn_url":"https://github.com/PyGithub/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":579,"watchers_count":579,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":160,"mirror_url":null,"open_issues_count":28,"forks":160,"open_issues":28,"watchers":579,"default_branch":"master"},"network_count":160,"subscribers_count":1} + +https +GET +api.github.com +None +/repos/edhollandAL/PyGithub/releases +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '1634'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', 'b0ef53392caa42315c6206737946d931'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"15acda75d23a5984668bc737c28405e1"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4968'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:70D3:6F632B1:553A014B'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 24 Apr 2015 08:39:40 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +[{"url":"https://api.github.com/repos/edhollandAL/PyGithub/releases/1210814","assets_url":"https://api.github.com/repos/edhollandAL/PyGithub/releases/1210814/assets","upload_url":"https://uploads.github.com/repos/edhollandAL/PyGithub/releases/1210814/assets{?name}","html_url":"https://github.com/edhollandAL/PyGithub/releases/tag/v1.25.2","id":1210814,"tag_name":"v1.25.2","target_commitish":"master","name":"Test","draft":false,"author":{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false},"prerelease":false,"created_at":"2014-10-08T01:54:00Z","published_at":"2015-04-24T08:36:51Z","assets":[],"tarball_url":"https://api.github.com/repos/edhollandAL/PyGithub/tarball/v1.25.2","zipball_url":"https://api.github.com/repos/edhollandAL/PyGithub/zipball/v1.25.2","body":"Body"}] + diff --git a/lib/github/tests/ReplayData/Release.testCreateGitTagAndRelease.txt b/lib/github/tests/ReplayData/Release.testCreateGitTagAndRelease.txt new file mode 100644 index 0000000000..197638cd28 --- /dev/null +++ b/lib/github/tests/ReplayData/Release.testCreateGitTagAndRelease.txt @@ -0,0 +1,44 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '1220'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '4c8b2d4732c413f4b9aefe394bd65569'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"a692daa1e912efb3a9048cdbae74bf02"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4937'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:54C3:5C94448:553A0688'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Thu, 23 Apr 2015 15:34:48 GMT'), ('date', 'Fri, 24 Apr 2015 09:02:00 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false,"public_repos":3,"public_gists":0,"followers":0,"following":0,"created_at":"2015-04-13T09:58:53Z","updated_at":"2015-04-23T15:34:48Z","private_gists":0,"total_private_repos":0,"owned_private_repos":0,"disk_usage":0,"collaborators":0,"plan":{"name":"free","space":976562499,"collaborators":0,"private_repos":0}} + +https +GET +api.github.com +None +/repos/edhollandAL/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '13980'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '07ff1c8a09e44b62e277fae50a1b1dc4'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"116dabde1122b91867736b96d7dd33e7"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4936'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:54C0:20E37DE:553A0688'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Thu, 23 Apr 2015 10:29:48 GMT'), ('date', 'Fri, 24 Apr 2015 09:02:01 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +{"id":34449703,"name":"PyGithub","full_name":"edhollandAL/PyGithub","owner":{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/edhollandAL/PyGithub","description":"Python library implementing the GitHub API v3","fork":true,"url":"https://api.github.com/repos/edhollandAL/PyGithub","forks_url":"https://api.github.com/repos/edhollandAL/PyGithub/forks","keys_url":"https://api.github.com/repos/edhollandAL/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/edhollandAL/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/edhollandAL/PyGithub/teams","hooks_url":"https://api.github.com/repos/edhollandAL/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/edhollandAL/PyGithub/events","assignees_url":"https://api.github.com/repos/edhollandAL/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/edhollandAL/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/edhollandAL/PyGithub/tags","blobs_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/edhollandAL/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/edhollandAL/PyGithub/languages","stargazers_url":"https://api.github.com/repos/edhollandAL/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/edhollandAL/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/edhollandAL/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/edhollandAL/PyGithub/subscription","commits_url":"https://api.github.com/repos/edhollandAL/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/edhollandAL/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/edhollandAL/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/edhollandAL/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/edhollandAL/PyGithub/merges","archive_url":"https://api.github.com/repos/edhollandAL/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/edhollandAL/PyGithub/downloads","issues_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/edhollandAL/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/edhollandAL/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/edhollandAL/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/edhollandAL/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/edhollandAL/PyGithub/releases{/id}","created_at":"2015-04-23T10:29:45Z","updated_at":"2015-04-23T10:29:48Z","pushed_at":"2015-04-24T09:01:53Z","git_url":"git://github.com/edhollandAL/PyGithub.git","ssh_url":"git@github.com:edhollandAL/PyGithub.git","clone_url":"https://github.com/edhollandAL/PyGithub.git","svn_url":"https://github.com/edhollandAL/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master","permissions":{"admin":true,"push":true,"pull":true},"parent":{"id":3544490,"name":"PyGithub","full_name":"PyGithub/PyGithub","owner":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/PyGithub/PyGithub","description":"Python library implementing the GitHub API v3","fork":false,"url":"https://api.github.com/repos/PyGithub/PyGithub","forks_url":"https://api.github.com/repos/PyGithub/PyGithub/forks","keys_url":"https://api.github.com/repos/PyGithub/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PyGithub/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PyGithub/PyGithub/teams","hooks_url":"https://api.github.com/repos/PyGithub/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/PyGithub/PyGithub/events","assignees_url":"https://api.github.com/repos/PyGithub/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/PyGithub/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/PyGithub/PyGithub/tags","blobs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PyGithub/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/PyGithub/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PyGithub/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/PyGithub/PyGithub/languages","stargazers_url":"https://api.github.com/repos/PyGithub/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/PyGithub/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/PyGithub/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/PyGithub/PyGithub/subscription","commits_url":"https://api.github.com/repos/PyGithub/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/PyGithub/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/PyGithub/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/PyGithub/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/PyGithub/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PyGithub/PyGithub/merges","archive_url":"https://api.github.com/repos/PyGithub/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PyGithub/PyGithub/downloads","issues_url":"https://api.github.com/repos/PyGithub/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/PyGithub/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/PyGithub/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/PyGithub/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PyGithub/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/PyGithub/PyGithub/releases{/id}","created_at":"2012-02-25T12:53:47Z","updated_at":"2015-04-23T16:36:27Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/PyGithub/PyGithub.git","ssh_url":"git@github.com:PyGithub/PyGithub.git","clone_url":"https://github.com/PyGithub/PyGithub.git","svn_url":"https://github.com/PyGithub/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":579,"watchers_count":579,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":160,"mirror_url":null,"open_issues_count":28,"forks":160,"open_issues":28,"watchers":579,"default_branch":"master"},"source":{"id":3544490,"name":"PyGithub","full_name":"PyGithub/PyGithub","owner":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/PyGithub/PyGithub","description":"Python library implementing the GitHub API v3","fork":false,"url":"https://api.github.com/repos/PyGithub/PyGithub","forks_url":"https://api.github.com/repos/PyGithub/PyGithub/forks","keys_url":"https://api.github.com/repos/PyGithub/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PyGithub/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PyGithub/PyGithub/teams","hooks_url":"https://api.github.com/repos/PyGithub/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/PyGithub/PyGithub/events","assignees_url":"https://api.github.com/repos/PyGithub/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/PyGithub/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/PyGithub/PyGithub/tags","blobs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PyGithub/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/PyGithub/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PyGithub/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/PyGithub/PyGithub/languages","stargazers_url":"https://api.github.com/repos/PyGithub/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/PyGithub/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/PyGithub/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/PyGithub/PyGithub/subscription","commits_url":"https://api.github.com/repos/PyGithub/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/PyGithub/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/PyGithub/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/PyGithub/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/PyGithub/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PyGithub/PyGithub/merges","archive_url":"https://api.github.com/repos/PyGithub/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PyGithub/PyGithub/downloads","issues_url":"https://api.github.com/repos/PyGithub/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/PyGithub/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/PyGithub/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/PyGithub/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PyGithub/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/PyGithub/PyGithub/releases{/id}","created_at":"2012-02-25T12:53:47Z","updated_at":"2015-04-23T16:36:27Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/PyGithub/PyGithub.git","ssh_url":"git@github.com:PyGithub/PyGithub.git","clone_url":"https://github.com/PyGithub/PyGithub.git","svn_url":"https://github.com/PyGithub/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":579,"watchers_count":579,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":160,"mirror_url":null,"open_issues_count":28,"forks":160,"open_issues":28,"watchers":579,"default_branch":"master"},"network_count":160,"subscribers_count":1} + +https +POST +api.github.com +None +/repos/edhollandAL/PyGithub/git/tags +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"message": "tag message", "tag": "v3.0.0", "type": "commit", "object": "5a05a5e58f682d315acd2447c87ac5b4d4fc55e8"} +201 +[('content-length', '480'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '76d9828c7e4f1d910f7ba069e90ce976'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"4e279bd881a4e316a93df39cc9567843"'), ('location', 'https://api.github.com/repos/edhollandAL/PyGithub/git/tags/f453837b5b01fb6a6dc5ce3ff3f5f68774a1fa96'), ('access-control-allow-credentials', 'true'), ('status', '201 Created'), ('x-ratelimit-remaining', '4935'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:54C9:7C07ACF:553A0689'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 24 Apr 2015 09:02:01 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +{"sha":"f453837b5b01fb6a6dc5ce3ff3f5f68774a1fa96","url":"https://api.github.com/repos/edhollandAL/PyGithub/git/tags/f453837b5b01fb6a6dc5ce3ff3f5f68774a1fa96","tagger":{"name":"edhollandAL","email":"eholland@alertlogic.com","date":"2015-04-24T09:02:01Z"},"object":{"sha":"5a05a5e58f682d315acd2447c87ac5b4d4fc55e8","type":"commit","url":"https://api.github.com/repos/edhollandAL/PyGithub/git/commits/5a05a5e58f682d315acd2447c87ac5b4d4fc55e8"},"tag":"v3.0.0","message":"tag message"} + +https +POST +api.github.com +None +/repos/edhollandAL/PyGithub/releases +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"body": "release message", "prerelease": false, "tag_name": "v3.0.0", "draft": false, "name": "release title"} +201 +[('content-length', '1648'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', 'd594a23ec74671eba905bf91ef329026'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"7e6e27a070b656e2058a8c62f0648a57"'), ('location', 'https://api.github.com/repos/edhollandAL/PyGithub/releases/1210902'), ('access-control-allow-credentials', 'true'), ('status', '201 Created'), ('x-ratelimit-remaining', '4934'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:54C9:7C07BE1:553A0689'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 24 Apr 2015 09:02:02 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +{"url":"https://api.github.com/repos/edhollandAL/PyGithub/releases/1210902","assets_url":"https://api.github.com/repos/edhollandAL/PyGithub/releases/1210902/assets","upload_url":"https://uploads.github.com/repos/edhollandAL/PyGithub/releases/1210902/assets{?name}","html_url":"https://github.com/edhollandAL/PyGithub/releases/tag/v3.0.0","id":1210902,"tag_name":"v3.0.0","target_commitish":"master","name":"release title","draft":false,"author":{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false},"prerelease":false,"created_at":"2015-04-15T20:53:41Z","published_at":"2015-04-24T09:02:02Z","assets":[],"tarball_url":"https://api.github.com/repos/edhollandAL/PyGithub/tarball/v3.0.0","zipball_url":"https://api.github.com/repos/edhollandAL/PyGithub/zipball/v3.0.0","body":"release message"} + diff --git a/lib/github/tests/ReplayData/Release.testDelete.txt b/lib/github/tests/ReplayData/Release.testDelete.txt new file mode 100644 index 0000000000..9e59acdd07 --- /dev/null +++ b/lib/github/tests/ReplayData/Release.testDelete.txt @@ -0,0 +1,44 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '1220'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '07ff1c8a09e44b62e277fae50a1b1dc4'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"a692daa1e912efb3a9048cdbae74bf02"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4963'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:70D3:6F67E9F:553A0175'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Thu, 23 Apr 2015 15:34:48 GMT'), ('date', 'Fri, 24 Apr 2015 08:40:21 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false,"public_repos":3,"public_gists":0,"followers":0,"following":0,"created_at":"2015-04-13T09:58:53Z","updated_at":"2015-04-23T15:34:48Z","private_gists":0,"total_private_repos":0,"owned_private_repos":0,"disk_usage":0,"collaborators":0,"plan":{"name":"free","space":976562499,"collaborators":0,"private_repos":0}} + +https +GET +api.github.com +None +/repos/edhollandAL/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '13980'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', 'b0ef53392caa42315c6206737946d931'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"354bfbe5bc3193b117028111f8d7bf5d"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4962'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:70D2:628E79F:553A0175'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Thu, 23 Apr 2015 10:29:48 GMT'), ('date', 'Fri, 24 Apr 2015 08:40:21 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +{"id":34449703,"name":"PyGithub","full_name":"edhollandAL/PyGithub","owner":{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/edhollandAL/PyGithub","description":"Python library implementing the GitHub API v3","fork":true,"url":"https://api.github.com/repos/edhollandAL/PyGithub","forks_url":"https://api.github.com/repos/edhollandAL/PyGithub/forks","keys_url":"https://api.github.com/repos/edhollandAL/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/edhollandAL/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/edhollandAL/PyGithub/teams","hooks_url":"https://api.github.com/repos/edhollandAL/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/edhollandAL/PyGithub/events","assignees_url":"https://api.github.com/repos/edhollandAL/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/edhollandAL/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/edhollandAL/PyGithub/tags","blobs_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/edhollandAL/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/edhollandAL/PyGithub/languages","stargazers_url":"https://api.github.com/repos/edhollandAL/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/edhollandAL/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/edhollandAL/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/edhollandAL/PyGithub/subscription","commits_url":"https://api.github.com/repos/edhollandAL/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/edhollandAL/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/edhollandAL/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/edhollandAL/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/edhollandAL/PyGithub/merges","archive_url":"https://api.github.com/repos/edhollandAL/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/edhollandAL/PyGithub/downloads","issues_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/edhollandAL/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/edhollandAL/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/edhollandAL/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/edhollandAL/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/edhollandAL/PyGithub/releases{/id}","created_at":"2015-04-23T10:29:45Z","updated_at":"2015-04-23T10:29:48Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/edhollandAL/PyGithub.git","ssh_url":"git@github.com:edhollandAL/PyGithub.git","clone_url":"https://github.com/edhollandAL/PyGithub.git","svn_url":"https://github.com/edhollandAL/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master","permissions":{"admin":true,"push":true,"pull":true},"parent":{"id":3544490,"name":"PyGithub","full_name":"PyGithub/PyGithub","owner":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/PyGithub/PyGithub","description":"Python library implementing the GitHub API v3","fork":false,"url":"https://api.github.com/repos/PyGithub/PyGithub","forks_url":"https://api.github.com/repos/PyGithub/PyGithub/forks","keys_url":"https://api.github.com/repos/PyGithub/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PyGithub/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PyGithub/PyGithub/teams","hooks_url":"https://api.github.com/repos/PyGithub/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/PyGithub/PyGithub/events","assignees_url":"https://api.github.com/repos/PyGithub/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/PyGithub/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/PyGithub/PyGithub/tags","blobs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PyGithub/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/PyGithub/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PyGithub/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/PyGithub/PyGithub/languages","stargazers_url":"https://api.github.com/repos/PyGithub/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/PyGithub/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/PyGithub/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/PyGithub/PyGithub/subscription","commits_url":"https://api.github.com/repos/PyGithub/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/PyGithub/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/PyGithub/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/PyGithub/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/PyGithub/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PyGithub/PyGithub/merges","archive_url":"https://api.github.com/repos/PyGithub/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PyGithub/PyGithub/downloads","issues_url":"https://api.github.com/repos/PyGithub/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/PyGithub/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/PyGithub/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/PyGithub/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PyGithub/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/PyGithub/PyGithub/releases{/id}","created_at":"2012-02-25T12:53:47Z","updated_at":"2015-04-23T16:36:27Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/PyGithub/PyGithub.git","ssh_url":"git@github.com:PyGithub/PyGithub.git","clone_url":"https://github.com/PyGithub/PyGithub.git","svn_url":"https://github.com/PyGithub/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":579,"watchers_count":579,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":160,"mirror_url":null,"open_issues_count":28,"forks":160,"open_issues":28,"watchers":579,"default_branch":"master"},"source":{"id":3544490,"name":"PyGithub","full_name":"PyGithub/PyGithub","owner":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/PyGithub/PyGithub","description":"Python library implementing the GitHub API v3","fork":false,"url":"https://api.github.com/repos/PyGithub/PyGithub","forks_url":"https://api.github.com/repos/PyGithub/PyGithub/forks","keys_url":"https://api.github.com/repos/PyGithub/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PyGithub/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PyGithub/PyGithub/teams","hooks_url":"https://api.github.com/repos/PyGithub/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/PyGithub/PyGithub/events","assignees_url":"https://api.github.com/repos/PyGithub/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/PyGithub/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/PyGithub/PyGithub/tags","blobs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PyGithub/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/PyGithub/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PyGithub/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/PyGithub/PyGithub/languages","stargazers_url":"https://api.github.com/repos/PyGithub/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/PyGithub/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/PyGithub/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/PyGithub/PyGithub/subscription","commits_url":"https://api.github.com/repos/PyGithub/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/PyGithub/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/PyGithub/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/PyGithub/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/PyGithub/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PyGithub/PyGithub/merges","archive_url":"https://api.github.com/repos/PyGithub/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PyGithub/PyGithub/downloads","issues_url":"https://api.github.com/repos/PyGithub/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/PyGithub/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/PyGithub/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/PyGithub/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PyGithub/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/PyGithub/PyGithub/releases{/id}","created_at":"2012-02-25T12:53:47Z","updated_at":"2015-04-23T16:36:27Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/PyGithub/PyGithub.git","ssh_url":"git@github.com:PyGithub/PyGithub.git","clone_url":"https://github.com/PyGithub/PyGithub.git","svn_url":"https://github.com/PyGithub/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":579,"watchers_count":579,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":160,"mirror_url":null,"open_issues_count":28,"forks":160,"open_issues":28,"watchers":579,"default_branch":"master"},"network_count":160,"subscribers_count":1} + +https +GET +api.github.com +None +/repos/edhollandAL/PyGithub/releases +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '1650'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '474556b853193c38f1b14328ce2d1b7d'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"85682be7a53801f67365f6afab9101cd"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4961'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:70D2:628E883:553A0176'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 24 Apr 2015 08:40:22 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +[{"url":"https://api.github.com/repos/edhollandAL/PyGithub/releases/1210814","assets_url":"https://api.github.com/repos/edhollandAL/PyGithub/releases/1210814/assets","upload_url":"https://uploads.github.com/repos/edhollandAL/PyGithub/releases/1210814/assets{?name}","html_url":"https://github.com/edhollandAL/PyGithub/releases/tag/v1.25.2","id":1210814,"tag_name":"v1.25.2","target_commitish":"master","name":"Updated Test","draft":false,"author":{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false},"prerelease":false,"created_at":"2014-10-08T01:54:00Z","published_at":"2015-04-24T08:36:51Z","assets":[],"tarball_url":"https://api.github.com/repos/edhollandAL/PyGithub/tarball/v1.25.2","zipball_url":"https://api.github.com/repos/edhollandAL/PyGithub/zipball/v1.25.2","body":"Updated Body"}] + +https +DELETE +api.github.com +None +/repos/edhollandAL/PyGithub/releases/1210814 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4960'), ('x-github-media-type', 'github.v3; format=json'), ('x-content-type-options', 'nosniff'), ('content-security-policy', "default-src 'none'"), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:70D2:628E96C:553A0176'), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('access-control-allow-origin', '*'), ('x-ratelimit-limit', '5000'), ('x-served-by', 'a6882e5cd2513376cb9481dbcd83f3a2'), ('access-control-allow-credentials', 'true'), ('date', 'Fri, 24 Apr 2015 08:40:23 GMT'), ('x-frame-options', 'deny'), ('x-xss-protection', '1; mode=block'), ('x-ratelimit-reset', '1429867683')] + + diff --git a/lib/github/tests/ReplayData/Release.testGetRelease.txt b/lib/github/tests/ReplayData/Release.testGetRelease.txt new file mode 100644 index 0000000000..4808797b28 --- /dev/null +++ b/lib/github/tests/ReplayData/Release.testGetRelease.txt @@ -0,0 +1,66 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '1220'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', 'a30e6f9aa7cf5731b87dfb3b9992202d'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"a692daa1e912efb3a9048cdbae74bf02"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4947'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:5678:6306D35:553A03F2'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Thu, 23 Apr 2015 15:34:48 GMT'), ('date', 'Fri, 24 Apr 2015 08:50:59 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false,"public_repos":3,"public_gists":0,"followers":0,"following":0,"created_at":"2015-04-13T09:58:53Z","updated_at":"2015-04-23T15:34:48Z","private_gists":0,"total_private_repos":0,"owned_private_repos":0,"disk_usage":0,"collaborators":0,"plan":{"name":"free","space":976562499,"collaborators":0,"private_repos":0}} + +https +GET +api.github.com +None +/repos/edhollandAL/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '13980'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '07ff1c8a09e44b62e277fae50a1b1dc4'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"354bfbe5bc3193b117028111f8d7bf5d"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4946'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:5678:6306E14:553A03F3'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Thu, 23 Apr 2015 10:29:48 GMT'), ('date', 'Fri, 24 Apr 2015 08:50:59 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +{"id":34449703,"name":"PyGithub","full_name":"edhollandAL/PyGithub","owner":{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/edhollandAL/PyGithub","description":"Python library implementing the GitHub API v3","fork":true,"url":"https://api.github.com/repos/edhollandAL/PyGithub","forks_url":"https://api.github.com/repos/edhollandAL/PyGithub/forks","keys_url":"https://api.github.com/repos/edhollandAL/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/edhollandAL/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/edhollandAL/PyGithub/teams","hooks_url":"https://api.github.com/repos/edhollandAL/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/edhollandAL/PyGithub/events","assignees_url":"https://api.github.com/repos/edhollandAL/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/edhollandAL/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/edhollandAL/PyGithub/tags","blobs_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/edhollandAL/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/edhollandAL/PyGithub/languages","stargazers_url":"https://api.github.com/repos/edhollandAL/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/edhollandAL/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/edhollandAL/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/edhollandAL/PyGithub/subscription","commits_url":"https://api.github.com/repos/edhollandAL/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/edhollandAL/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/edhollandAL/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/edhollandAL/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/edhollandAL/PyGithub/merges","archive_url":"https://api.github.com/repos/edhollandAL/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/edhollandAL/PyGithub/downloads","issues_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/edhollandAL/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/edhollandAL/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/edhollandAL/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/edhollandAL/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/edhollandAL/PyGithub/releases{/id}","created_at":"2015-04-23T10:29:45Z","updated_at":"2015-04-23T10:29:48Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/edhollandAL/PyGithub.git","ssh_url":"git@github.com:edhollandAL/PyGithub.git","clone_url":"https://github.com/edhollandAL/PyGithub.git","svn_url":"https://github.com/edhollandAL/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master","permissions":{"admin":true,"push":true,"pull":true},"parent":{"id":3544490,"name":"PyGithub","full_name":"PyGithub/PyGithub","owner":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/PyGithub/PyGithub","description":"Python library implementing the GitHub API v3","fork":false,"url":"https://api.github.com/repos/PyGithub/PyGithub","forks_url":"https://api.github.com/repos/PyGithub/PyGithub/forks","keys_url":"https://api.github.com/repos/PyGithub/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PyGithub/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PyGithub/PyGithub/teams","hooks_url":"https://api.github.com/repos/PyGithub/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/PyGithub/PyGithub/events","assignees_url":"https://api.github.com/repos/PyGithub/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/PyGithub/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/PyGithub/PyGithub/tags","blobs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PyGithub/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/PyGithub/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PyGithub/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/PyGithub/PyGithub/languages","stargazers_url":"https://api.github.com/repos/PyGithub/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/PyGithub/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/PyGithub/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/PyGithub/PyGithub/subscription","commits_url":"https://api.github.com/repos/PyGithub/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/PyGithub/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/PyGithub/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/PyGithub/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/PyGithub/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PyGithub/PyGithub/merges","archive_url":"https://api.github.com/repos/PyGithub/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PyGithub/PyGithub/downloads","issues_url":"https://api.github.com/repos/PyGithub/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/PyGithub/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/PyGithub/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/PyGithub/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PyGithub/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/PyGithub/PyGithub/releases{/id}","created_at":"2012-02-25T12:53:47Z","updated_at":"2015-04-23T16:36:27Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/PyGithub/PyGithub.git","ssh_url":"git@github.com:PyGithub/PyGithub.git","clone_url":"https://github.com/PyGithub/PyGithub.git","svn_url":"https://github.com/PyGithub/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":579,"watchers_count":579,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":160,"mirror_url":null,"open_issues_count":28,"forks":160,"open_issues":28,"watchers":579,"default_branch":"master"},"source":{"id":3544490,"name":"PyGithub","full_name":"PyGithub/PyGithub","owner":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/PyGithub/PyGithub","description":"Python library implementing the GitHub API v3","fork":false,"url":"https://api.github.com/repos/PyGithub/PyGithub","forks_url":"https://api.github.com/repos/PyGithub/PyGithub/forks","keys_url":"https://api.github.com/repos/PyGithub/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PyGithub/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PyGithub/PyGithub/teams","hooks_url":"https://api.github.com/repos/PyGithub/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/PyGithub/PyGithub/events","assignees_url":"https://api.github.com/repos/PyGithub/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/PyGithub/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/PyGithub/PyGithub/tags","blobs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PyGithub/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/PyGithub/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PyGithub/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/PyGithub/PyGithub/languages","stargazers_url":"https://api.github.com/repos/PyGithub/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/PyGithub/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/PyGithub/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/PyGithub/PyGithub/subscription","commits_url":"https://api.github.com/repos/PyGithub/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/PyGithub/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/PyGithub/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/PyGithub/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/PyGithub/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PyGithub/PyGithub/merges","archive_url":"https://api.github.com/repos/PyGithub/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PyGithub/PyGithub/downloads","issues_url":"https://api.github.com/repos/PyGithub/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/PyGithub/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/PyGithub/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/PyGithub/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PyGithub/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/PyGithub/PyGithub/releases{/id}","created_at":"2012-02-25T12:53:47Z","updated_at":"2015-04-23T16:36:27Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/PyGithub/PyGithub.git","ssh_url":"git@github.com:PyGithub/PyGithub.git","clone_url":"https://github.com/PyGithub/PyGithub.git","svn_url":"https://github.com/PyGithub/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":579,"watchers_count":579,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":160,"mirror_url":null,"open_issues_count":28,"forks":160,"open_issues":28,"watchers":579,"default_branch":"master"},"network_count":160,"subscribers_count":1} + +https +GET +api.github.com +None +/repos/edhollandAL/PyGithub/releases/tags/v1.25.2 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '1632'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '13d09b732ebe76f892093130dc088652'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"26708914904a29b8c9fd2ac006beb9db"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4945'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:5674:1AF2EEF:553A03F3'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Fri, 24 Apr 2015 08:43:32 GMT'), ('date', 'Fri, 24 Apr 2015 08:51:00 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +{"url":"https://api.github.com/repos/edhollandAL/PyGithub/releases/1210837","assets_url":"https://api.github.com/repos/edhollandAL/PyGithub/releases/1210837/assets","upload_url":"https://uploads.github.com/repos/edhollandAL/PyGithub/releases/1210837/assets{?name}","html_url":"https://github.com/edhollandAL/PyGithub/releases/tag/v1.25.2","id":1210837,"tag_name":"v1.25.2","target_commitish":"master","name":"Test","draft":false,"author":{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false},"prerelease":false,"created_at":"2014-10-08T01:54:00Z","published_at":"2015-04-24T08:43:32Z","assets":[],"tarball_url":"https://api.github.com/repos/edhollandAL/PyGithub/tarball/v1.25.2","zipball_url":"https://api.github.com/repos/edhollandAL/PyGithub/zipball/v1.25.2","body":"Body"} + +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '1220'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '13d09b732ebe76f892093130dc088652'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"a692daa1e912efb3a9048cdbae74bf02"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4944'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:5676:3EF4431:553A03F4'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Thu, 23 Apr 2015 15:34:48 GMT'), ('date', 'Fri, 24 Apr 2015 08:51:00 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false,"public_repos":3,"public_gists":0,"followers":0,"following":0,"created_at":"2015-04-13T09:58:53Z","updated_at":"2015-04-23T15:34:48Z","private_gists":0,"total_private_repos":0,"owned_private_repos":0,"disk_usage":0,"collaborators":0,"plan":{"name":"free","space":976562499,"collaborators":0,"private_repos":0}} + +https +GET +api.github.com +None +/repos/edhollandAL/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '13980'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', 'c6c65e5196703428e7641f7d1e9bc353'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"354bfbe5bc3193b117028111f8d7bf5d"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4943'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:5673:FBDF67:553A03F4'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Thu, 23 Apr 2015 10:29:48 GMT'), ('date', 'Fri, 24 Apr 2015 08:51:01 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +{"id":34449703,"name":"PyGithub","full_name":"edhollandAL/PyGithub","owner":{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/edhollandAL/PyGithub","description":"Python library implementing the GitHub API v3","fork":true,"url":"https://api.github.com/repos/edhollandAL/PyGithub","forks_url":"https://api.github.com/repos/edhollandAL/PyGithub/forks","keys_url":"https://api.github.com/repos/edhollandAL/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/edhollandAL/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/edhollandAL/PyGithub/teams","hooks_url":"https://api.github.com/repos/edhollandAL/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/edhollandAL/PyGithub/events","assignees_url":"https://api.github.com/repos/edhollandAL/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/edhollandAL/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/edhollandAL/PyGithub/tags","blobs_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/edhollandAL/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/edhollandAL/PyGithub/languages","stargazers_url":"https://api.github.com/repos/edhollandAL/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/edhollandAL/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/edhollandAL/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/edhollandAL/PyGithub/subscription","commits_url":"https://api.github.com/repos/edhollandAL/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/edhollandAL/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/edhollandAL/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/edhollandAL/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/edhollandAL/PyGithub/merges","archive_url":"https://api.github.com/repos/edhollandAL/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/edhollandAL/PyGithub/downloads","issues_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/edhollandAL/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/edhollandAL/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/edhollandAL/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/edhollandAL/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/edhollandAL/PyGithub/releases{/id}","created_at":"2015-04-23T10:29:45Z","updated_at":"2015-04-23T10:29:48Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/edhollandAL/PyGithub.git","ssh_url":"git@github.com:edhollandAL/PyGithub.git","clone_url":"https://github.com/edhollandAL/PyGithub.git","svn_url":"https://github.com/edhollandAL/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master","permissions":{"admin":true,"push":true,"pull":true},"parent":{"id":3544490,"name":"PyGithub","full_name":"PyGithub/PyGithub","owner":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/PyGithub/PyGithub","description":"Python library implementing the GitHub API v3","fork":false,"url":"https://api.github.com/repos/PyGithub/PyGithub","forks_url":"https://api.github.com/repos/PyGithub/PyGithub/forks","keys_url":"https://api.github.com/repos/PyGithub/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PyGithub/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PyGithub/PyGithub/teams","hooks_url":"https://api.github.com/repos/PyGithub/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/PyGithub/PyGithub/events","assignees_url":"https://api.github.com/repos/PyGithub/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/PyGithub/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/PyGithub/PyGithub/tags","blobs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PyGithub/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/PyGithub/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PyGithub/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/PyGithub/PyGithub/languages","stargazers_url":"https://api.github.com/repos/PyGithub/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/PyGithub/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/PyGithub/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/PyGithub/PyGithub/subscription","commits_url":"https://api.github.com/repos/PyGithub/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/PyGithub/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/PyGithub/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/PyGithub/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/PyGithub/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PyGithub/PyGithub/merges","archive_url":"https://api.github.com/repos/PyGithub/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PyGithub/PyGithub/downloads","issues_url":"https://api.github.com/repos/PyGithub/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/PyGithub/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/PyGithub/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/PyGithub/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PyGithub/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/PyGithub/PyGithub/releases{/id}","created_at":"2012-02-25T12:53:47Z","updated_at":"2015-04-23T16:36:27Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/PyGithub/PyGithub.git","ssh_url":"git@github.com:PyGithub/PyGithub.git","clone_url":"https://github.com/PyGithub/PyGithub.git","svn_url":"https://github.com/PyGithub/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":579,"watchers_count":579,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":160,"mirror_url":null,"open_issues_count":28,"forks":160,"open_issues":28,"watchers":579,"default_branch":"master"},"source":{"id":3544490,"name":"PyGithub","full_name":"PyGithub/PyGithub","owner":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/PyGithub/PyGithub","description":"Python library implementing the GitHub API v3","fork":false,"url":"https://api.github.com/repos/PyGithub/PyGithub","forks_url":"https://api.github.com/repos/PyGithub/PyGithub/forks","keys_url":"https://api.github.com/repos/PyGithub/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PyGithub/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PyGithub/PyGithub/teams","hooks_url":"https://api.github.com/repos/PyGithub/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/PyGithub/PyGithub/events","assignees_url":"https://api.github.com/repos/PyGithub/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/PyGithub/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/PyGithub/PyGithub/tags","blobs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PyGithub/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/PyGithub/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PyGithub/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/PyGithub/PyGithub/languages","stargazers_url":"https://api.github.com/repos/PyGithub/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/PyGithub/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/PyGithub/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/PyGithub/PyGithub/subscription","commits_url":"https://api.github.com/repos/PyGithub/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/PyGithub/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/PyGithub/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/PyGithub/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/PyGithub/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PyGithub/PyGithub/merges","archive_url":"https://api.github.com/repos/PyGithub/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PyGithub/PyGithub/downloads","issues_url":"https://api.github.com/repos/PyGithub/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/PyGithub/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/PyGithub/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/PyGithub/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PyGithub/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/PyGithub/PyGithub/releases{/id}","created_at":"2012-02-25T12:53:47Z","updated_at":"2015-04-23T16:36:27Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/PyGithub/PyGithub.git","ssh_url":"git@github.com:PyGithub/PyGithub.git","clone_url":"https://github.com/PyGithub/PyGithub.git","svn_url":"https://github.com/PyGithub/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":579,"watchers_count":579,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":160,"mirror_url":null,"open_issues_count":28,"forks":160,"open_issues":28,"watchers":579,"default_branch":"master"},"network_count":160,"subscribers_count":1} + +https +GET +api.github.com +None +/repos/edhollandAL/PyGithub/releases/1210837 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '1632'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '139317cebd6caf9cd03889139437f00b'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"26708914904a29b8c9fd2ac006beb9db"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4942'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:5677:5265FA1:553A03F5'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Fri, 24 Apr 2015 08:43:32 GMT'), ('date', 'Fri, 24 Apr 2015 08:51:01 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +{"url":"https://api.github.com/repos/edhollandAL/PyGithub/releases/1210837","assets_url":"https://api.github.com/repos/edhollandAL/PyGithub/releases/1210837/assets","upload_url":"https://uploads.github.com/repos/edhollandAL/PyGithub/releases/1210837/assets{?name}","html_url":"https://github.com/edhollandAL/PyGithub/releases/tag/v1.25.2","id":1210837,"tag_name":"v1.25.2","target_commitish":"master","name":"Test","draft":false,"author":{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false},"prerelease":false,"created_at":"2014-10-08T01:54:00Z","published_at":"2015-04-24T08:43:32Z","assets":[],"tarball_url":"https://api.github.com/repos/edhollandAL/PyGithub/tarball/v1.25.2","zipball_url":"https://api.github.com/repos/edhollandAL/PyGithub/zipball/v1.25.2","body":"Body"} + diff --git a/lib/github/tests/ReplayData/Release.testUpdate.txt b/lib/github/tests/ReplayData/Release.testUpdate.txt new file mode 100644 index 0000000000..3a72dad9e4 --- /dev/null +++ b/lib/github/tests/ReplayData/Release.testUpdate.txt @@ -0,0 +1,44 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '1220'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', 'a30e6f9aa7cf5731b87dfb3b9992202d'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"a692daa1e912efb3a9048cdbae74bf02"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4967'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:70D2:628B7A5:553A015A'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Thu, 23 Apr 2015 15:34:48 GMT'), ('date', 'Fri, 24 Apr 2015 08:39:54 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false,"public_repos":3,"public_gists":0,"followers":0,"following":0,"created_at":"2015-04-13T09:58:53Z","updated_at":"2015-04-23T15:34:48Z","private_gists":0,"total_private_repos":0,"owned_private_repos":0,"disk_usage":0,"collaborators":0,"plan":{"name":"free","space":976562499,"collaborators":0,"private_repos":0}} + +https +GET +api.github.com +None +/repos/edhollandAL/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '13980'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '474556b853193c38f1b14328ce2d1b7d'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"354bfbe5bc3193b117028111f8d7bf5d"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4966'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:70D3:6F64E0D:553A015B'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Thu, 23 Apr 2015 10:29:48 GMT'), ('date', 'Fri, 24 Apr 2015 08:39:55 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +{"id":34449703,"name":"PyGithub","full_name":"edhollandAL/PyGithub","owner":{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/edhollandAL/PyGithub","description":"Python library implementing the GitHub API v3","fork":true,"url":"https://api.github.com/repos/edhollandAL/PyGithub","forks_url":"https://api.github.com/repos/edhollandAL/PyGithub/forks","keys_url":"https://api.github.com/repos/edhollandAL/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/edhollandAL/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/edhollandAL/PyGithub/teams","hooks_url":"https://api.github.com/repos/edhollandAL/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/edhollandAL/PyGithub/events","assignees_url":"https://api.github.com/repos/edhollandAL/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/edhollandAL/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/edhollandAL/PyGithub/tags","blobs_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/edhollandAL/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/edhollandAL/PyGithub/languages","stargazers_url":"https://api.github.com/repos/edhollandAL/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/edhollandAL/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/edhollandAL/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/edhollandAL/PyGithub/subscription","commits_url":"https://api.github.com/repos/edhollandAL/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/edhollandAL/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/edhollandAL/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/edhollandAL/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/edhollandAL/PyGithub/merges","archive_url":"https://api.github.com/repos/edhollandAL/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/edhollandAL/PyGithub/downloads","issues_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/edhollandAL/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/edhollandAL/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/edhollandAL/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/edhollandAL/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/edhollandAL/PyGithub/releases{/id}","created_at":"2015-04-23T10:29:45Z","updated_at":"2015-04-23T10:29:48Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/edhollandAL/PyGithub.git","ssh_url":"git@github.com:edhollandAL/PyGithub.git","clone_url":"https://github.com/edhollandAL/PyGithub.git","svn_url":"https://github.com/edhollandAL/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master","permissions":{"admin":true,"push":true,"pull":true},"parent":{"id":3544490,"name":"PyGithub","full_name":"PyGithub/PyGithub","owner":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/PyGithub/PyGithub","description":"Python library implementing the GitHub API v3","fork":false,"url":"https://api.github.com/repos/PyGithub/PyGithub","forks_url":"https://api.github.com/repos/PyGithub/PyGithub/forks","keys_url":"https://api.github.com/repos/PyGithub/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PyGithub/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PyGithub/PyGithub/teams","hooks_url":"https://api.github.com/repos/PyGithub/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/PyGithub/PyGithub/events","assignees_url":"https://api.github.com/repos/PyGithub/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/PyGithub/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/PyGithub/PyGithub/tags","blobs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PyGithub/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/PyGithub/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PyGithub/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/PyGithub/PyGithub/languages","stargazers_url":"https://api.github.com/repos/PyGithub/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/PyGithub/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/PyGithub/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/PyGithub/PyGithub/subscription","commits_url":"https://api.github.com/repos/PyGithub/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/PyGithub/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/PyGithub/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/PyGithub/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/PyGithub/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PyGithub/PyGithub/merges","archive_url":"https://api.github.com/repos/PyGithub/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PyGithub/PyGithub/downloads","issues_url":"https://api.github.com/repos/PyGithub/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/PyGithub/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/PyGithub/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/PyGithub/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PyGithub/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/PyGithub/PyGithub/releases{/id}","created_at":"2012-02-25T12:53:47Z","updated_at":"2015-04-23T16:36:27Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/PyGithub/PyGithub.git","ssh_url":"git@github.com:PyGithub/PyGithub.git","clone_url":"https://github.com/PyGithub/PyGithub.git","svn_url":"https://github.com/PyGithub/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":579,"watchers_count":579,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":160,"mirror_url":null,"open_issues_count":28,"forks":160,"open_issues":28,"watchers":579,"default_branch":"master"},"source":{"id":3544490,"name":"PyGithub","full_name":"PyGithub/PyGithub","owner":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/PyGithub/PyGithub","description":"Python library implementing the GitHub API v3","fork":false,"url":"https://api.github.com/repos/PyGithub/PyGithub","forks_url":"https://api.github.com/repos/PyGithub/PyGithub/forks","keys_url":"https://api.github.com/repos/PyGithub/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PyGithub/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PyGithub/PyGithub/teams","hooks_url":"https://api.github.com/repos/PyGithub/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/PyGithub/PyGithub/events","assignees_url":"https://api.github.com/repos/PyGithub/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/PyGithub/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/PyGithub/PyGithub/tags","blobs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PyGithub/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/PyGithub/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PyGithub/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/PyGithub/PyGithub/languages","stargazers_url":"https://api.github.com/repos/PyGithub/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/PyGithub/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/PyGithub/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/PyGithub/PyGithub/subscription","commits_url":"https://api.github.com/repos/PyGithub/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/PyGithub/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/PyGithub/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/PyGithub/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/PyGithub/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PyGithub/PyGithub/merges","archive_url":"https://api.github.com/repos/PyGithub/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PyGithub/PyGithub/downloads","issues_url":"https://api.github.com/repos/PyGithub/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/PyGithub/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/PyGithub/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/PyGithub/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PyGithub/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/PyGithub/PyGithub/releases{/id}","created_at":"2012-02-25T12:53:47Z","updated_at":"2015-04-23T16:36:27Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/PyGithub/PyGithub.git","ssh_url":"git@github.com:PyGithub/PyGithub.git","clone_url":"https://github.com/PyGithub/PyGithub.git","svn_url":"https://github.com/PyGithub/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":579,"watchers_count":579,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":160,"mirror_url":null,"open_issues_count":28,"forks":160,"open_issues":28,"watchers":579,"default_branch":"master"},"network_count":160,"subscribers_count":1} + +https +GET +api.github.com +None +/repos/edhollandAL/PyGithub/releases +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '1634'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', 'a7f8a126c9ed3f1c4715a34c0ddc7290'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"15acda75d23a5984668bc737c28405e1"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4965'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:70D3:6F64F22:553A015B'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 24 Apr 2015 08:39:55 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +[{"url":"https://api.github.com/repos/edhollandAL/PyGithub/releases/1210814","assets_url":"https://api.github.com/repos/edhollandAL/PyGithub/releases/1210814/assets","upload_url":"https://uploads.github.com/repos/edhollandAL/PyGithub/releases/1210814/assets{?name}","html_url":"https://github.com/edhollandAL/PyGithub/releases/tag/v1.25.2","id":1210814,"tag_name":"v1.25.2","target_commitish":"master","name":"Test","draft":false,"author":{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false},"prerelease":false,"created_at":"2014-10-08T01:54:00Z","published_at":"2015-04-24T08:36:51Z","assets":[],"tarball_url":"https://api.github.com/repos/edhollandAL/PyGithub/tarball/v1.25.2","zipball_url":"https://api.github.com/repos/edhollandAL/PyGithub/zipball/v1.25.2","body":"Body"}] + +https +PATCH +api.github.com +None +/repos/edhollandAL/PyGithub/releases/1210814 +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"body": "Updated Body", "prerelease": false, "tag_name": "v1.25.2", "draft": false, "name": "Updated Test"} +200 +[('content-length', '1648'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '2d7a5e35115884240089368322196939'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"cf49bbc298cad25223946be051b81ea1"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4964'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:54C7:6E67F42:553A015C'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 24 Apr 2015 08:39:56 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +{"url":"https://api.github.com/repos/edhollandAL/PyGithub/releases/1210814","assets_url":"https://api.github.com/repos/edhollandAL/PyGithub/releases/1210814/assets","upload_url":"https://uploads.github.com/repos/edhollandAL/PyGithub/releases/1210814/assets{?name}","html_url":"https://github.com/edhollandAL/PyGithub/releases/tag/v1.25.2","id":1210814,"tag_name":"v1.25.2","target_commitish":"master","name":"Updated Test","draft":false,"author":{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false},"prerelease":false,"created_at":"2014-10-08T01:54:00Z","published_at":"2015-04-24T08:36:51Z","assets":[],"tarball_url":"https://api.github.com/repos/edhollandAL/PyGithub/tarball/v1.25.2","zipball_url":"https://api.github.com/repos/edhollandAL/PyGithub/zipball/v1.25.2","body":"Updated Body"} + diff --git a/lib/github/tests/ReplayData/Repository.setUp.txt b/lib/github/tests/ReplayData/Repository.setUp.txt new file mode 100644 index 0000000000..ac2790f695 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.setUp.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4912'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"8d4bf64381cca7c6ba5753129f5fc552"'), ('date', 'Sun, 27 May 2012 07:17:08 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","disk_usage":16976,"public_gists":3,"bio":"","blog":"http://vincent-jacques.net","url":"https://api.github.com/users/jacquev6","private_gists":5,"collaborators":0,"plan":{"private_repos":5,"collaborators":1,"name":"micro","space":614400},"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","company":"Criteo","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","email":"vincent@vincent-jacques.net","total_private_repos":5,"followers":13,"name":"Vincent Jacques","public_repos":11,"created_at":"2010-07-09T06:10:06Z","location":"Paris, France","id":327146,"owned_private_repos":5,"following":24,"html_url":"https://github.com/jacquev6","hireable":false} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4911'), ('content-length', '1129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"1a93ec821b0bd7094340a9fc34017aa0"'), ('date', 'Sun, 27 May 2012 07:17:09 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"clone_url":"https://github.com/jacquev6/PyGithub.git","has_downloads":true,"watchers":15,"git_url":"git://github.com/jacquev6/PyGithub.git","updated_at":"2012-05-27T06:55:28Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","mirror_url":null,"has_wiki":false,"has_issues":true,"fork":false,"forks":3,"size":308,"private":false,"open_issues":16,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-27T06:00:28Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"html_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub"} + diff --git a/lib/github/tests/ReplayData/Repository.testAssignees.txt b/lib/github/tests/ReplayData/Repository.testAssignees.txt new file mode 100644 index 0000000000..cf02ca6a52 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testAssignees.txt @@ -0,0 +1,99 @@ +https +GET +api.github.com +None +/users/Lyloa +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '559'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4997'), ('server', 'nginx/1.0.13'), ('last-modified', 'Sun, 16 Oct 2011 14:37:52 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"bf612afdcca3f4967bc08bb5eeebc443"'), ('cache-control', 'private, s-maxage=60, max-age=60'), ('date', 'Fri, 07 Sep 2012 23:12:25 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"public_gists":0,"type":"User","login":"Lyloa","following":0,"location":"Paris","bio":null,"avatar_url":"https://secure.gravatar.com/avatar/1517ed584458ccf83e03f5d77d9699d7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","public_repos":0,"created_at":"2011-10-16T14:36:46Z","email":"nyu@lyloa.net","gravatar_id":"1517ed584458ccf83e03f5d77d9699d7","url":"https://api.github.com/users/Lyloa","name":"Lyloa","company":null,"followers":1,"html_url":"https://github.com/Lyloa","id":1131432,"blog":null,"hireable":false} + +https +GET +api.github.com +None +/users/jacquev6 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4996'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '806'), ('server', 'nginx/1.0.13'), ('last-modified', 'Wed, 05 Sep 2012 15:03:24 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"350294b94004d4bb252b6a432baa5744"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 07 Sep 2012 23:12:25 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","company":"Criteo","plan":{"private_repos":5,"collaborators":1,"name":"micro","space":614400},"followers":13,"public_gists":3,"private_gists":5,"disk_usage":14640,"following":28,"html_url":"https://github.com/jacquev6","location":"Paris, France","total_private_repos":5,"blog":"http://vincent-jacques.net","hireable":false,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","owned_private_repos":5,"collaborators":0,"bio":"","login":"jacquev6","name":"Vincent Jacques","public_repos":11,"created_at":"2010-07-09T06:10:06Z","id":327146,"email":"vincent@vincent-jacques.net"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/assignees/jacquev6 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4995'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('cache-control', ''), ('date', 'Fri, 07 Sep 2012 23:12:26 GMT')] + + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/assignees/Lyloa +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +404 +[('status', '404 Not Found'), ('content-length', '23'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-remaining', '4994'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('cache-control', ''), ('date', 'Fri, 07 Sep 2012 23:12:26 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"message":"Not Found"} + +https +PUT +api.github.com +None +/repos/jacquev6/PyGithub/collaborators/Lyloa +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4993'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('cache-control', ''), ('date', 'Fri, 07 Sep 2012 23:12:27 GMT')] + + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/assignees/Lyloa +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4992'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('cache-control', ''), ('date', 'Fri, 07 Sep 2012 23:12:27 GMT')] + + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/assignees +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '600'), ('x-ratelimit-limit', '5000'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4991'), ('server', 'nginx/1.0.13'), ('last-modified', 'Wed, 05 Sep 2012 15:03:24 GMT'), ('connection', 'keep-alive'), ('etag', '"350294b94004d4bb252b6a432baa5744"'), ('cache-control', 'private, s-maxage=60, max-age=60'), ('date', 'Fri, 07 Sep 2012 23:12:28 GMT'), ('x-github-media-type', 'github.beta; format=json'), ('content-type', 'application/json; charset=utf-8')] +[{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},{"avatar_url":"https://secure.gravatar.com/avatar/1517ed584458ccf83e03f5d77d9699d7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/Lyloa","gravatar_id":"1517ed584458ccf83e03f5d77d9699d7","login":"Lyloa","id":1131432}] + +https +DELETE +api.github.com +None +/repos/jacquev6/PyGithub/collaborators/Lyloa +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4990'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('cache-control', ''), ('date', 'Fri, 07 Sep 2012 23:12:28 GMT')] + + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/assignees/Lyloa +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +404 +[('status', '404 Not Found'), ('x-ratelimit-remaining', '4989'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('content-length', '23'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('cache-control', ''), ('date', 'Fri, 07 Sep 2012 23:12:29 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"message":"Not Found"} + diff --git a/lib/github/tests/ReplayData/Repository.testBadSubscribePubSubHubbub.txt b/lib/github/tests/ReplayData/Repository.testBadSubscribePubSubHubbub.txt new file mode 100644 index 0000000000..fa0b9eb259 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testBadSubscribePubSubHubbub.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/hub +{'Content-Type': 'multipart/form-data; boundary=----------------------------3c3ba8b523b2', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +------------------------------3c3ba8b523b2Content-Disposition: form-data; name="hub.callback"http://requestb.in/1bc1sc61------------------------------3c3ba8b523b2Content-Disposition: form-data; name="hub.topic"https://github.com/jacquev6/PyGithub/events/non-existing-event------------------------------3c3ba8b523b2Content-Disposition: form-data; name="hub.mode"subscribe------------------------------3c3ba8b523b2-- +422 +[('status', '422 Unprocessable Entity'), ('content-length', '51'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-remaining', '4994'), ('server', 'GitHub.com'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('cache-control', ''), ('date', 'Tue, 05 Feb 2013 18:58:01 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"message":"Invalid event: \"non-existing-event\""} + diff --git a/lib/github/tests/ReplayData/Repository.testChangeBranchProtectionContexts.txt b/lib/github/tests/ReplayData/Repository.testChangeBranchProtectionContexts.txt new file mode 100644 index 0000000000..6932e7c6e9 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testChangeBranchProtectionContexts.txt @@ -0,0 +1,66 @@ +https +PATCH +api.github.com +None +/repos/jacquev6/PyGithub/branches/master +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'Accept': 'application/vnd.github.loki-preview+json', 'User-Agent': 'PyGithub/Python'} +{"protection": {"enabled": true, "required_status_checks": {"enforcement_level": "everyone", "contexts": ["test"]}}} +200 +[('content-length', '3599'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '76d9828c7e4f1d910f7ba069e90ce976'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"23247e636875225f1e2d6b49e3ed8fb5"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4983'), ('x-github-media-type', 'github.loki-preview; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '417D879D:1D25A:7429E1A:568D31F4'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 06 Jan 2016 15:25:40 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1452096288')] +{"name":"master","commit":{"sha":"a39c1e8b9ab601419277eefb4fbb586ded0af146","commit":{"author":{"name":"Jimmy Zelinskie","email":"jimmyzelinskie@gmail.com","date":"2015-12-16T06:29:19Z"},"committer":{"name":"Jimmy Zelinskie","email":"jimmyzelinskie@gmail.com","date":"2015-12-16T06:29:19Z"},"message":"Merge pull request #365 from PyGithub/nhomar-travis-button\n\nAdd travis button on README.","tree":{"sha":"33b533e02e45deccc832bc39813710764fb2a9d4","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/33b533e02e45deccc832bc39813710764fb2a9d4"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146","html_url":"https://github.com/jacquev6/PyGithub/commit/a39c1e8b9ab601419277eefb4fbb586ded0af146","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146/comments","author":{"login":"jzelinskie","id":343539,"avatar_url":"https://avatars.githubusercontent.com/u/343539?v=3","gravatar_id":"","url":"https://api.github.com/users/jzelinskie","html_url":"https://github.com/jzelinskie","followers_url":"https://api.github.com/users/jzelinskie/followers","following_url":"https://api.github.com/users/jzelinskie/following{/other_user}","gists_url":"https://api.github.com/users/jzelinskie/gists{/gist_id}","starred_url":"https://api.github.com/users/jzelinskie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jzelinskie/subscriptions","organizations_url":"https://api.github.com/users/jzelinskie/orgs","repos_url":"https://api.github.com/users/jzelinskie/repos","events_url":"https://api.github.com/users/jzelinskie/events{/privacy}","received_events_url":"https://api.github.com/users/jzelinskie/received_events","type":"User","site_admin":false},"committer":{"login":"jzelinskie","id":343539,"avatar_url":"https://avatars.githubusercontent.com/u/343539?v=3","gravatar_id":"","url":"https://api.github.com/users/jzelinskie","html_url":"https://github.com/jzelinskie","followers_url":"https://api.github.com/users/jzelinskie/followers","following_url":"https://api.github.com/users/jzelinskie/following{/other_user}","gists_url":"https://api.github.com/users/jzelinskie/gists{/gist_id}","starred_url":"https://api.github.com/users/jzelinskie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jzelinskie/subscriptions","organizations_url":"https://api.github.com/users/jzelinskie/orgs","repos_url":"https://api.github.com/users/jzelinskie/repos","events_url":"https://api.github.com/users/jzelinskie/events{/privacy}","received_events_url":"https://api.github.com/users/jzelinskie/received_events","type":"User","site_admin":false},"parents":[{"sha":"45c7f072e4732f89a9e756a27a4306f2f6dbd9c5","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/45c7f072e4732f89a9e756a27a4306f2f6dbd9c5","html_url":"https://github.com/jacquev6/PyGithub/commit/45c7f072e4732f89a9e756a27a4306f2f6dbd9c5"},{"sha":"a83649b68f1bb978c254f4cf1efcae88dc2608d7","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a83649b68f1bb978c254f4cf1efcae88dc2608d7","html_url":"https://github.com/jacquev6/PyGithub/commit/a83649b68f1bb978c254f4cf1efcae88dc2608d7"}]},"_links":{"self":"https://api.github.com/repos/jacquev6/PyGithub/branches/master","html":"https://github.com/jacquev6/PyGithub/tree/master"},"protection":{"enabled":true,"required_status_checks":{"enforcement_level":"everyone","contexts":["test"]}}} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/branches/master +{'Authorization': 'Basic login_and_password_removed', 'Accept': 'application/vnd.github.loki-preview+json', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '3599'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', 'bae57931a6fe678a3dffe9be8e7819c8'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"23247e636875225f1e2d6b49e3ed8fb5"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4982'), ('x-github-media-type', 'github.loki-preview; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '417D879D:1D262:27FA573A:568D31F4'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 06 Jan 2016 15:25:40 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1452096288')] +{"name":"master","commit":{"sha":"a39c1e8b9ab601419277eefb4fbb586ded0af146","commit":{"author":{"name":"Jimmy Zelinskie","email":"jimmyzelinskie@gmail.com","date":"2015-12-16T06:29:19Z"},"committer":{"name":"Jimmy Zelinskie","email":"jimmyzelinskie@gmail.com","date":"2015-12-16T06:29:19Z"},"message":"Merge pull request #365 from PyGithub/nhomar-travis-button\n\nAdd travis button on README.","tree":{"sha":"33b533e02e45deccc832bc39813710764fb2a9d4","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/33b533e02e45deccc832bc39813710764fb2a9d4"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146","html_url":"https://github.com/jacquev6/PyGithub/commit/a39c1e8b9ab601419277eefb4fbb586ded0af146","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146/comments","author":{"login":"jzelinskie","id":343539,"avatar_url":"https://avatars.githubusercontent.com/u/343539?v=3","gravatar_id":"","url":"https://api.github.com/users/jzelinskie","html_url":"https://github.com/jzelinskie","followers_url":"https://api.github.com/users/jzelinskie/followers","following_url":"https://api.github.com/users/jzelinskie/following{/other_user}","gists_url":"https://api.github.com/users/jzelinskie/gists{/gist_id}","starred_url":"https://api.github.com/users/jzelinskie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jzelinskie/subscriptions","organizations_url":"https://api.github.com/users/jzelinskie/orgs","repos_url":"https://api.github.com/users/jzelinskie/repos","events_url":"https://api.github.com/users/jzelinskie/events{/privacy}","received_events_url":"https://api.github.com/users/jzelinskie/received_events","type":"User","site_admin":false},"committer":{"login":"jzelinskie","id":343539,"avatar_url":"https://avatars.githubusercontent.com/u/343539?v=3","gravatar_id":"","url":"https://api.github.com/users/jzelinskie","html_url":"https://github.com/jzelinskie","followers_url":"https://api.github.com/users/jzelinskie/followers","following_url":"https://api.github.com/users/jzelinskie/following{/other_user}","gists_url":"https://api.github.com/users/jzelinskie/gists{/gist_id}","starred_url":"https://api.github.com/users/jzelinskie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jzelinskie/subscriptions","organizations_url":"https://api.github.com/users/jzelinskie/orgs","repos_url":"https://api.github.com/users/jzelinskie/repos","events_url":"https://api.github.com/users/jzelinskie/events{/privacy}","received_events_url":"https://api.github.com/users/jzelinskie/received_events","type":"User","site_admin":false},"parents":[{"sha":"45c7f072e4732f89a9e756a27a4306f2f6dbd9c5","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/45c7f072e4732f89a9e756a27a4306f2f6dbd9c5","html_url":"https://github.com/jacquev6/PyGithub/commit/45c7f072e4732f89a9e756a27a4306f2f6dbd9c5"},{"sha":"a83649b68f1bb978c254f4cf1efcae88dc2608d7","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a83649b68f1bb978c254f4cf1efcae88dc2608d7","html_url":"https://github.com/jacquev6/PyGithub/commit/a83649b68f1bb978c254f4cf1efcae88dc2608d7"}]},"_links":{"self":"https://api.github.com/repos/jacquev6/PyGithub/branches/master","html":"https://github.com/jacquev6/PyGithub/tree/master"},"protection":{"enabled":true,"required_status_checks":{"enforcement_level":"everyone","contexts":["test"]}}} + +https +PATCH +api.github.com +None +/repos/jacquev6/PyGithub/branches/master +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'Accept': 'application/vnd.github.loki-preview+json', 'User-Agent': 'PyGithub/Python'} +{"protection": {"enabled": true, "required_status_checks": {"enforcement_level": "everyone", "contexts": ["test", "default"]}}} +200 +[('content-length', '3609'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '318e55760cf7cdb40e61175a4d36cd32'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"db7b04fd5e1b51731388d165caa9c4aa"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4981'), ('x-github-media-type', 'github.loki-preview; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '417D879D:1D262:27FA5773:568D31F4'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 06 Jan 2016 15:25:41 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1452096288')] +{"name":"master","commit":{"sha":"a39c1e8b9ab601419277eefb4fbb586ded0af146","commit":{"author":{"name":"Jimmy Zelinskie","email":"jimmyzelinskie@gmail.com","date":"2015-12-16T06:29:19Z"},"committer":{"name":"Jimmy Zelinskie","email":"jimmyzelinskie@gmail.com","date":"2015-12-16T06:29:19Z"},"message":"Merge pull request #365 from PyGithub/nhomar-travis-button\n\nAdd travis button on README.","tree":{"sha":"33b533e02e45deccc832bc39813710764fb2a9d4","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/33b533e02e45deccc832bc39813710764fb2a9d4"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146","html_url":"https://github.com/jacquev6/PyGithub/commit/a39c1e8b9ab601419277eefb4fbb586ded0af146","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146/comments","author":{"login":"jzelinskie","id":343539,"avatar_url":"https://avatars.githubusercontent.com/u/343539?v=3","gravatar_id":"","url":"https://api.github.com/users/jzelinskie","html_url":"https://github.com/jzelinskie","followers_url":"https://api.github.com/users/jzelinskie/followers","following_url":"https://api.github.com/users/jzelinskie/following{/other_user}","gists_url":"https://api.github.com/users/jzelinskie/gists{/gist_id}","starred_url":"https://api.github.com/users/jzelinskie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jzelinskie/subscriptions","organizations_url":"https://api.github.com/users/jzelinskie/orgs","repos_url":"https://api.github.com/users/jzelinskie/repos","events_url":"https://api.github.com/users/jzelinskie/events{/privacy}","received_events_url":"https://api.github.com/users/jzelinskie/received_events","type":"User","site_admin":false},"committer":{"login":"jzelinskie","id":343539,"avatar_url":"https://avatars.githubusercontent.com/u/343539?v=3","gravatar_id":"","url":"https://api.github.com/users/jzelinskie","html_url":"https://github.com/jzelinskie","followers_url":"https://api.github.com/users/jzelinskie/followers","following_url":"https://api.github.com/users/jzelinskie/following{/other_user}","gists_url":"https://api.github.com/users/jzelinskie/gists{/gist_id}","starred_url":"https://api.github.com/users/jzelinskie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jzelinskie/subscriptions","organizations_url":"https://api.github.com/users/jzelinskie/orgs","repos_url":"https://api.github.com/users/jzelinskie/repos","events_url":"https://api.github.com/users/jzelinskie/events{/privacy}","received_events_url":"https://api.github.com/users/jzelinskie/received_events","type":"User","site_admin":false},"parents":[{"sha":"45c7f072e4732f89a9e756a27a4306f2f6dbd9c5","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/45c7f072e4732f89a9e756a27a4306f2f6dbd9c5","html_url":"https://github.com/jacquev6/PyGithub/commit/45c7f072e4732f89a9e756a27a4306f2f6dbd9c5"},{"sha":"a83649b68f1bb978c254f4cf1efcae88dc2608d7","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a83649b68f1bb978c254f4cf1efcae88dc2608d7","html_url":"https://github.com/jacquev6/PyGithub/commit/a83649b68f1bb978c254f4cf1efcae88dc2608d7"}]},"_links":{"self":"https://api.github.com/repos/jacquev6/PyGithub/branches/master","html":"https://github.com/jacquev6/PyGithub/tree/master"},"protection":{"enabled":true,"required_status_checks":{"enforcement_level":"everyone","contexts":["default","test"]}}} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/branches/master +{'Authorization': 'Basic login_and_password_removed', 'Accept': 'application/vnd.github.loki-preview+json', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '3609'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', 'a241e1a8264a6ace03db946c85b92db3'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"db7b04fd5e1b51731388d165caa9c4aa"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4980'), ('x-github-media-type', 'github.loki-preview; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '417D879D:1D260:22667B15:568D31F5'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 06 Jan 2016 15:25:41 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1452096288')] +{"name":"master","commit":{"sha":"a39c1e8b9ab601419277eefb4fbb586ded0af146","commit":{"author":{"name":"Jimmy Zelinskie","email":"jimmyzelinskie@gmail.com","date":"2015-12-16T06:29:19Z"},"committer":{"name":"Jimmy Zelinskie","email":"jimmyzelinskie@gmail.com","date":"2015-12-16T06:29:19Z"},"message":"Merge pull request #365 from PyGithub/nhomar-travis-button\n\nAdd travis button on README.","tree":{"sha":"33b533e02e45deccc832bc39813710764fb2a9d4","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/33b533e02e45deccc832bc39813710764fb2a9d4"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146","html_url":"https://github.com/jacquev6/PyGithub/commit/a39c1e8b9ab601419277eefb4fbb586ded0af146","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146/comments","author":{"login":"jzelinskie","id":343539,"avatar_url":"https://avatars.githubusercontent.com/u/343539?v=3","gravatar_id":"","url":"https://api.github.com/users/jzelinskie","html_url":"https://github.com/jzelinskie","followers_url":"https://api.github.com/users/jzelinskie/followers","following_url":"https://api.github.com/users/jzelinskie/following{/other_user}","gists_url":"https://api.github.com/users/jzelinskie/gists{/gist_id}","starred_url":"https://api.github.com/users/jzelinskie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jzelinskie/subscriptions","organizations_url":"https://api.github.com/users/jzelinskie/orgs","repos_url":"https://api.github.com/users/jzelinskie/repos","events_url":"https://api.github.com/users/jzelinskie/events{/privacy}","received_events_url":"https://api.github.com/users/jzelinskie/received_events","type":"User","site_admin":false},"committer":{"login":"jzelinskie","id":343539,"avatar_url":"https://avatars.githubusercontent.com/u/343539?v=3","gravatar_id":"","url":"https://api.github.com/users/jzelinskie","html_url":"https://github.com/jzelinskie","followers_url":"https://api.github.com/users/jzelinskie/followers","following_url":"https://api.github.com/users/jzelinskie/following{/other_user}","gists_url":"https://api.github.com/users/jzelinskie/gists{/gist_id}","starred_url":"https://api.github.com/users/jzelinskie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jzelinskie/subscriptions","organizations_url":"https://api.github.com/users/jzelinskie/orgs","repos_url":"https://api.github.com/users/jzelinskie/repos","events_url":"https://api.github.com/users/jzelinskie/events{/privacy}","received_events_url":"https://api.github.com/users/jzelinskie/received_events","type":"User","site_admin":false},"parents":[{"sha":"45c7f072e4732f89a9e756a27a4306f2f6dbd9c5","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/45c7f072e4732f89a9e756a27a4306f2f6dbd9c5","html_url":"https://github.com/jacquev6/PyGithub/commit/45c7f072e4732f89a9e756a27a4306f2f6dbd9c5"},{"sha":"a83649b68f1bb978c254f4cf1efcae88dc2608d7","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a83649b68f1bb978c254f4cf1efcae88dc2608d7","html_url":"https://github.com/jacquev6/PyGithub/commit/a83649b68f1bb978c254f4cf1efcae88dc2608d7"}]},"_links":{"self":"https://api.github.com/repos/jacquev6/PyGithub/branches/master","html":"https://github.com/jacquev6/PyGithub/tree/master"},"protection":{"enabled":true,"required_status_checks":{"enforcement_level":"everyone","contexts":["default","test"]}}} + +https +PATCH +api.github.com +None +/repos/jacquev6/PyGithub/branches/master +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'Accept': 'application/vnd.github.loki-preview+json', 'User-Agent': 'PyGithub/Python'} +{"protection": {"enabled": true, "required_status_checks": {"enforcement_level": "everyone", "contexts": ["default"]}}} +200 +[('content-length', '3602'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '593010132f82159af0ded24b4932e109'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"9ec429649fdda2858153edc42ff3f579"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4979'), ('x-github-media-type', 'github.loki-preview; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '417D879D:1D25F:1A8AB79A:568D31F5'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 06 Jan 2016 15:25:41 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1452096288')] +{"name":"master","commit":{"sha":"a39c1e8b9ab601419277eefb4fbb586ded0af146","commit":{"author":{"name":"Jimmy Zelinskie","email":"jimmyzelinskie@gmail.com","date":"2015-12-16T06:29:19Z"},"committer":{"name":"Jimmy Zelinskie","email":"jimmyzelinskie@gmail.com","date":"2015-12-16T06:29:19Z"},"message":"Merge pull request #365 from PyGithub/nhomar-travis-button\n\nAdd travis button on README.","tree":{"sha":"33b533e02e45deccc832bc39813710764fb2a9d4","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/33b533e02e45deccc832bc39813710764fb2a9d4"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146","html_url":"https://github.com/jacquev6/PyGithub/commit/a39c1e8b9ab601419277eefb4fbb586ded0af146","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146/comments","author":{"login":"jzelinskie","id":343539,"avatar_url":"https://avatars.githubusercontent.com/u/343539?v=3","gravatar_id":"","url":"https://api.github.com/users/jzelinskie","html_url":"https://github.com/jzelinskie","followers_url":"https://api.github.com/users/jzelinskie/followers","following_url":"https://api.github.com/users/jzelinskie/following{/other_user}","gists_url":"https://api.github.com/users/jzelinskie/gists{/gist_id}","starred_url":"https://api.github.com/users/jzelinskie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jzelinskie/subscriptions","organizations_url":"https://api.github.com/users/jzelinskie/orgs","repos_url":"https://api.github.com/users/jzelinskie/repos","events_url":"https://api.github.com/users/jzelinskie/events{/privacy}","received_events_url":"https://api.github.com/users/jzelinskie/received_events","type":"User","site_admin":false},"committer":{"login":"jzelinskie","id":343539,"avatar_url":"https://avatars.githubusercontent.com/u/343539?v=3","gravatar_id":"","url":"https://api.github.com/users/jzelinskie","html_url":"https://github.com/jzelinskie","followers_url":"https://api.github.com/users/jzelinskie/followers","following_url":"https://api.github.com/users/jzelinskie/following{/other_user}","gists_url":"https://api.github.com/users/jzelinskie/gists{/gist_id}","starred_url":"https://api.github.com/users/jzelinskie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jzelinskie/subscriptions","organizations_url":"https://api.github.com/users/jzelinskie/orgs","repos_url":"https://api.github.com/users/jzelinskie/repos","events_url":"https://api.github.com/users/jzelinskie/events{/privacy}","received_events_url":"https://api.github.com/users/jzelinskie/received_events","type":"User","site_admin":false},"parents":[{"sha":"45c7f072e4732f89a9e756a27a4306f2f6dbd9c5","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/45c7f072e4732f89a9e756a27a4306f2f6dbd9c5","html_url":"https://github.com/jacquev6/PyGithub/commit/45c7f072e4732f89a9e756a27a4306f2f6dbd9c5"},{"sha":"a83649b68f1bb978c254f4cf1efcae88dc2608d7","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a83649b68f1bb978c254f4cf1efcae88dc2608d7","html_url":"https://github.com/jacquev6/PyGithub/commit/a83649b68f1bb978c254f4cf1efcae88dc2608d7"}]},"_links":{"self":"https://api.github.com/repos/jacquev6/PyGithub/branches/master","html":"https://github.com/jacquev6/PyGithub/tree/master"},"protection":{"enabled":true,"required_status_checks":{"enforcement_level":"everyone","contexts":["default"]}}} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/branches/master +{'Authorization': 'Basic login_and_password_removed', 'Accept': 'application/vnd.github.loki-preview+json', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '3602'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', 'ef96c2e493b28ffea49b891b085ed2dd'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"9ec429649fdda2858153edc42ff3f579"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4978'), ('x-github-media-type', 'github.loki-preview; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '417D879D:1D262:27FA5800:568D31F5'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 06 Jan 2016 15:25:41 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1452096288')] +{"name":"master","commit":{"sha":"a39c1e8b9ab601419277eefb4fbb586ded0af146","commit":{"author":{"name":"Jimmy Zelinskie","email":"jimmyzelinskie@gmail.com","date":"2015-12-16T06:29:19Z"},"committer":{"name":"Jimmy Zelinskie","email":"jimmyzelinskie@gmail.com","date":"2015-12-16T06:29:19Z"},"message":"Merge pull request #365 from PyGithub/nhomar-travis-button\n\nAdd travis button on README.","tree":{"sha":"33b533e02e45deccc832bc39813710764fb2a9d4","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/33b533e02e45deccc832bc39813710764fb2a9d4"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146","html_url":"https://github.com/jacquev6/PyGithub/commit/a39c1e8b9ab601419277eefb4fbb586ded0af146","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146/comments","author":{"login":"jzelinskie","id":343539,"avatar_url":"https://avatars.githubusercontent.com/u/343539?v=3","gravatar_id":"","url":"https://api.github.com/users/jzelinskie","html_url":"https://github.com/jzelinskie","followers_url":"https://api.github.com/users/jzelinskie/followers","following_url":"https://api.github.com/users/jzelinskie/following{/other_user}","gists_url":"https://api.github.com/users/jzelinskie/gists{/gist_id}","starred_url":"https://api.github.com/users/jzelinskie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jzelinskie/subscriptions","organizations_url":"https://api.github.com/users/jzelinskie/orgs","repos_url":"https://api.github.com/users/jzelinskie/repos","events_url":"https://api.github.com/users/jzelinskie/events{/privacy}","received_events_url":"https://api.github.com/users/jzelinskie/received_events","type":"User","site_admin":false},"committer":{"login":"jzelinskie","id":343539,"avatar_url":"https://avatars.githubusercontent.com/u/343539?v=3","gravatar_id":"","url":"https://api.github.com/users/jzelinskie","html_url":"https://github.com/jzelinskie","followers_url":"https://api.github.com/users/jzelinskie/followers","following_url":"https://api.github.com/users/jzelinskie/following{/other_user}","gists_url":"https://api.github.com/users/jzelinskie/gists{/gist_id}","starred_url":"https://api.github.com/users/jzelinskie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jzelinskie/subscriptions","organizations_url":"https://api.github.com/users/jzelinskie/orgs","repos_url":"https://api.github.com/users/jzelinskie/repos","events_url":"https://api.github.com/users/jzelinskie/events{/privacy}","received_events_url":"https://api.github.com/users/jzelinskie/received_events","type":"User","site_admin":false},"parents":[{"sha":"45c7f072e4732f89a9e756a27a4306f2f6dbd9c5","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/45c7f072e4732f89a9e756a27a4306f2f6dbd9c5","html_url":"https://github.com/jacquev6/PyGithub/commit/45c7f072e4732f89a9e756a27a4306f2f6dbd9c5"},{"sha":"a83649b68f1bb978c254f4cf1efcae88dc2608d7","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a83649b68f1bb978c254f4cf1efcae88dc2608d7","html_url":"https://github.com/jacquev6/PyGithub/commit/a83649b68f1bb978c254f4cf1efcae88dc2608d7"}]},"_links":{"self":"https://api.github.com/repos/jacquev6/PyGithub/branches/master","html":"https://github.com/jacquev6/PyGithub/tree/master"},"protection":{"enabled":true,"required_status_checks":{"enforcement_level":"everyone","contexts":["default"]}}} + diff --git a/lib/github/tests/ReplayData/Repository.testChangeBranchProtectionEnforcementLevel.txt b/lib/github/tests/ReplayData/Repository.testChangeBranchProtectionEnforcementLevel.txt new file mode 100644 index 0000000000..514ee28c84 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testChangeBranchProtectionEnforcementLevel.txt @@ -0,0 +1,44 @@ +https +PATCH +api.github.com +None +/repos/jacquev6/PyGithub/branches/master +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'Accept': 'application/vnd.github.loki-preview+json', 'User-Agent': 'PyGithub/Python'} +{"protection": {"enabled": true, "required_status_checks": {"enforcement_level": "everyone", "contexts": ["test"]}}} +200 +[('content-length', '3599'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', 'dc1ce2bfb41810a06c705e83b388572d'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"23247e636875225f1e2d6b49e3ed8fb5"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4950'), ('x-github-media-type', 'github.loki-preview; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '417D879D:1D25F:1A90BAC8:568D38A5'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 06 Jan 2016 15:54:13 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1452096288')] +{"name":"master","commit":{"sha":"a39c1e8b9ab601419277eefb4fbb586ded0af146","commit":{"author":{"name":"Jimmy Zelinskie","email":"jimmyzelinskie@gmail.com","date":"2015-12-16T06:29:19Z"},"committer":{"name":"Jimmy Zelinskie","email":"jimmyzelinskie@gmail.com","date":"2015-12-16T06:29:19Z"},"message":"Merge pull request #365 from PyGithub/nhomar-travis-button\n\nAdd travis button on README.","tree":{"sha":"33b533e02e45deccc832bc39813710764fb2a9d4","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/33b533e02e45deccc832bc39813710764fb2a9d4"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146","html_url":"https://github.com/jacquev6/PyGithub/commit/a39c1e8b9ab601419277eefb4fbb586ded0af146","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146/comments","author":{"login":"jzelinskie","id":343539,"avatar_url":"https://avatars.githubusercontent.com/u/343539?v=3","gravatar_id":"","url":"https://api.github.com/users/jzelinskie","html_url":"https://github.com/jzelinskie","followers_url":"https://api.github.com/users/jzelinskie/followers","following_url":"https://api.github.com/users/jzelinskie/following{/other_user}","gists_url":"https://api.github.com/users/jzelinskie/gists{/gist_id}","starred_url":"https://api.github.com/users/jzelinskie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jzelinskie/subscriptions","organizations_url":"https://api.github.com/users/jzelinskie/orgs","repos_url":"https://api.github.com/users/jzelinskie/repos","events_url":"https://api.github.com/users/jzelinskie/events{/privacy}","received_events_url":"https://api.github.com/users/jzelinskie/received_events","type":"User","site_admin":false},"committer":{"login":"jzelinskie","id":343539,"avatar_url":"https://avatars.githubusercontent.com/u/343539?v=3","gravatar_id":"","url":"https://api.github.com/users/jzelinskie","html_url":"https://github.com/jzelinskie","followers_url":"https://api.github.com/users/jzelinskie/followers","following_url":"https://api.github.com/users/jzelinskie/following{/other_user}","gists_url":"https://api.github.com/users/jzelinskie/gists{/gist_id}","starred_url":"https://api.github.com/users/jzelinskie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jzelinskie/subscriptions","organizations_url":"https://api.github.com/users/jzelinskie/orgs","repos_url":"https://api.github.com/users/jzelinskie/repos","events_url":"https://api.github.com/users/jzelinskie/events{/privacy}","received_events_url":"https://api.github.com/users/jzelinskie/received_events","type":"User","site_admin":false},"parents":[{"sha":"45c7f072e4732f89a9e756a27a4306f2f6dbd9c5","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/45c7f072e4732f89a9e756a27a4306f2f6dbd9c5","html_url":"https://github.com/jacquev6/PyGithub/commit/45c7f072e4732f89a9e756a27a4306f2f6dbd9c5"},{"sha":"a83649b68f1bb978c254f4cf1efcae88dc2608d7","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a83649b68f1bb978c254f4cf1efcae88dc2608d7","html_url":"https://github.com/jacquev6/PyGithub/commit/a83649b68f1bb978c254f4cf1efcae88dc2608d7"}]},"_links":{"self":"https://api.github.com/repos/jacquev6/PyGithub/branches/master","html":"https://github.com/jacquev6/PyGithub/tree/master"},"protection":{"enabled":true,"required_status_checks":{"enforcement_level":"everyone","contexts":["test"]}}} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/branches/master +{'Authorization': 'Basic login_and_password_removed', 'Accept': 'application/vnd.github.loki-preview+json', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '3599'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '2c18a09f3ac5e4dd1e004af7c5a94769'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"23247e636875225f1e2d6b49e3ed8fb5"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4949'), ('x-github-media-type', 'github.loki-preview; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '417D879D:1D261:29009CF7:568D38A5'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 06 Jan 2016 15:54:13 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1452096288')] +{"name":"master","commit":{"sha":"a39c1e8b9ab601419277eefb4fbb586ded0af146","commit":{"author":{"name":"Jimmy Zelinskie","email":"jimmyzelinskie@gmail.com","date":"2015-12-16T06:29:19Z"},"committer":{"name":"Jimmy Zelinskie","email":"jimmyzelinskie@gmail.com","date":"2015-12-16T06:29:19Z"},"message":"Merge pull request #365 from PyGithub/nhomar-travis-button\n\nAdd travis button on README.","tree":{"sha":"33b533e02e45deccc832bc39813710764fb2a9d4","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/33b533e02e45deccc832bc39813710764fb2a9d4"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146","html_url":"https://github.com/jacquev6/PyGithub/commit/a39c1e8b9ab601419277eefb4fbb586ded0af146","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146/comments","author":{"login":"jzelinskie","id":343539,"avatar_url":"https://avatars.githubusercontent.com/u/343539?v=3","gravatar_id":"","url":"https://api.github.com/users/jzelinskie","html_url":"https://github.com/jzelinskie","followers_url":"https://api.github.com/users/jzelinskie/followers","following_url":"https://api.github.com/users/jzelinskie/following{/other_user}","gists_url":"https://api.github.com/users/jzelinskie/gists{/gist_id}","starred_url":"https://api.github.com/users/jzelinskie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jzelinskie/subscriptions","organizations_url":"https://api.github.com/users/jzelinskie/orgs","repos_url":"https://api.github.com/users/jzelinskie/repos","events_url":"https://api.github.com/users/jzelinskie/events{/privacy}","received_events_url":"https://api.github.com/users/jzelinskie/received_events","type":"User","site_admin":false},"committer":{"login":"jzelinskie","id":343539,"avatar_url":"https://avatars.githubusercontent.com/u/343539?v=3","gravatar_id":"","url":"https://api.github.com/users/jzelinskie","html_url":"https://github.com/jzelinskie","followers_url":"https://api.github.com/users/jzelinskie/followers","following_url":"https://api.github.com/users/jzelinskie/following{/other_user}","gists_url":"https://api.github.com/users/jzelinskie/gists{/gist_id}","starred_url":"https://api.github.com/users/jzelinskie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jzelinskie/subscriptions","organizations_url":"https://api.github.com/users/jzelinskie/orgs","repos_url":"https://api.github.com/users/jzelinskie/repos","events_url":"https://api.github.com/users/jzelinskie/events{/privacy}","received_events_url":"https://api.github.com/users/jzelinskie/received_events","type":"User","site_admin":false},"parents":[{"sha":"45c7f072e4732f89a9e756a27a4306f2f6dbd9c5","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/45c7f072e4732f89a9e756a27a4306f2f6dbd9c5","html_url":"https://github.com/jacquev6/PyGithub/commit/45c7f072e4732f89a9e756a27a4306f2f6dbd9c5"},{"sha":"a83649b68f1bb978c254f4cf1efcae88dc2608d7","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a83649b68f1bb978c254f4cf1efcae88dc2608d7","html_url":"https://github.com/jacquev6/PyGithub/commit/a83649b68f1bb978c254f4cf1efcae88dc2608d7"}]},"_links":{"self":"https://api.github.com/repos/jacquev6/PyGithub/branches/master","html":"https://github.com/jacquev6/PyGithub/tree/master"},"protection":{"enabled":true,"required_status_checks":{"enforcement_level":"everyone","contexts":["test"]}}} + +https +PATCH +api.github.com +None +/repos/jacquev6/PyGithub/branches/master +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'Accept': 'application/vnd.github.loki-preview+json', 'User-Agent': 'PyGithub/Python'} +{"protection": {"enabled": true, "required_status_checks": {"enforcement_level": "non_admins", "contexts": ["test"]}}} +200 +[('content-length', '3601'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '52437fedc85beec8da3449496900fb9a'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"33854f0fd77af9f49acf152bf0715de3"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4948'), ('x-github-media-type', 'github.loki-preview; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '417D879D:1D25F:1A90BB33:568D38A5'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 06 Jan 2016 15:54:14 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1452096288')] +{"name":"master","commit":{"sha":"a39c1e8b9ab601419277eefb4fbb586ded0af146","commit":{"author":{"name":"Jimmy Zelinskie","email":"jimmyzelinskie@gmail.com","date":"2015-12-16T06:29:19Z"},"committer":{"name":"Jimmy Zelinskie","email":"jimmyzelinskie@gmail.com","date":"2015-12-16T06:29:19Z"},"message":"Merge pull request #365 from PyGithub/nhomar-travis-button\n\nAdd travis button on README.","tree":{"sha":"33b533e02e45deccc832bc39813710764fb2a9d4","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/33b533e02e45deccc832bc39813710764fb2a9d4"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146","html_url":"https://github.com/jacquev6/PyGithub/commit/a39c1e8b9ab601419277eefb4fbb586ded0af146","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146/comments","author":{"login":"jzelinskie","id":343539,"avatar_url":"https://avatars.githubusercontent.com/u/343539?v=3","gravatar_id":"","url":"https://api.github.com/users/jzelinskie","html_url":"https://github.com/jzelinskie","followers_url":"https://api.github.com/users/jzelinskie/followers","following_url":"https://api.github.com/users/jzelinskie/following{/other_user}","gists_url":"https://api.github.com/users/jzelinskie/gists{/gist_id}","starred_url":"https://api.github.com/users/jzelinskie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jzelinskie/subscriptions","organizations_url":"https://api.github.com/users/jzelinskie/orgs","repos_url":"https://api.github.com/users/jzelinskie/repos","events_url":"https://api.github.com/users/jzelinskie/events{/privacy}","received_events_url":"https://api.github.com/users/jzelinskie/received_events","type":"User","site_admin":false},"committer":{"login":"jzelinskie","id":343539,"avatar_url":"https://avatars.githubusercontent.com/u/343539?v=3","gravatar_id":"","url":"https://api.github.com/users/jzelinskie","html_url":"https://github.com/jzelinskie","followers_url":"https://api.github.com/users/jzelinskie/followers","following_url":"https://api.github.com/users/jzelinskie/following{/other_user}","gists_url":"https://api.github.com/users/jzelinskie/gists{/gist_id}","starred_url":"https://api.github.com/users/jzelinskie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jzelinskie/subscriptions","organizations_url":"https://api.github.com/users/jzelinskie/orgs","repos_url":"https://api.github.com/users/jzelinskie/repos","events_url":"https://api.github.com/users/jzelinskie/events{/privacy}","received_events_url":"https://api.github.com/users/jzelinskie/received_events","type":"User","site_admin":false},"parents":[{"sha":"45c7f072e4732f89a9e756a27a4306f2f6dbd9c5","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/45c7f072e4732f89a9e756a27a4306f2f6dbd9c5","html_url":"https://github.com/jacquev6/PyGithub/commit/45c7f072e4732f89a9e756a27a4306f2f6dbd9c5"},{"sha":"a83649b68f1bb978c254f4cf1efcae88dc2608d7","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a83649b68f1bb978c254f4cf1efcae88dc2608d7","html_url":"https://github.com/jacquev6/PyGithub/commit/a83649b68f1bb978c254f4cf1efcae88dc2608d7"}]},"_links":{"self":"https://api.github.com/repos/jacquev6/PyGithub/branches/master","html":"https://github.com/jacquev6/PyGithub/tree/master"},"protection":{"enabled":true,"required_status_checks":{"enforcement_level":"non_admins","contexts":["test"]}}} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/branches/master +{'Authorization': 'Basic login_and_password_removed', 'Accept': 'application/vnd.github.loki-preview+json', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '3601'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '13d09b732ebe76f892093130dc088652'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"33854f0fd77af9f49acf152bf0715de3"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4947'), ('x-github-media-type', 'github.loki-preview; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '417D879D:1D260:226E126E:568D38A7'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 06 Jan 2016 15:54:15 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1452096288')] +{"name":"master","commit":{"sha":"a39c1e8b9ab601419277eefb4fbb586ded0af146","commit":{"author":{"name":"Jimmy Zelinskie","email":"jimmyzelinskie@gmail.com","date":"2015-12-16T06:29:19Z"},"committer":{"name":"Jimmy Zelinskie","email":"jimmyzelinskie@gmail.com","date":"2015-12-16T06:29:19Z"},"message":"Merge pull request #365 from PyGithub/nhomar-travis-button\n\nAdd travis button on README.","tree":{"sha":"33b533e02e45deccc832bc39813710764fb2a9d4","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/33b533e02e45deccc832bc39813710764fb2a9d4"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146","html_url":"https://github.com/jacquev6/PyGithub/commit/a39c1e8b9ab601419277eefb4fbb586ded0af146","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146/comments","author":{"login":"jzelinskie","id":343539,"avatar_url":"https://avatars.githubusercontent.com/u/343539?v=3","gravatar_id":"","url":"https://api.github.com/users/jzelinskie","html_url":"https://github.com/jzelinskie","followers_url":"https://api.github.com/users/jzelinskie/followers","following_url":"https://api.github.com/users/jzelinskie/following{/other_user}","gists_url":"https://api.github.com/users/jzelinskie/gists{/gist_id}","starred_url":"https://api.github.com/users/jzelinskie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jzelinskie/subscriptions","organizations_url":"https://api.github.com/users/jzelinskie/orgs","repos_url":"https://api.github.com/users/jzelinskie/repos","events_url":"https://api.github.com/users/jzelinskie/events{/privacy}","received_events_url":"https://api.github.com/users/jzelinskie/received_events","type":"User","site_admin":false},"committer":{"login":"jzelinskie","id":343539,"avatar_url":"https://avatars.githubusercontent.com/u/343539?v=3","gravatar_id":"","url":"https://api.github.com/users/jzelinskie","html_url":"https://github.com/jzelinskie","followers_url":"https://api.github.com/users/jzelinskie/followers","following_url":"https://api.github.com/users/jzelinskie/following{/other_user}","gists_url":"https://api.github.com/users/jzelinskie/gists{/gist_id}","starred_url":"https://api.github.com/users/jzelinskie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jzelinskie/subscriptions","organizations_url":"https://api.github.com/users/jzelinskie/orgs","repos_url":"https://api.github.com/users/jzelinskie/repos","events_url":"https://api.github.com/users/jzelinskie/events{/privacy}","received_events_url":"https://api.github.com/users/jzelinskie/received_events","type":"User","site_admin":false},"parents":[{"sha":"45c7f072e4732f89a9e756a27a4306f2f6dbd9c5","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/45c7f072e4732f89a9e756a27a4306f2f6dbd9c5","html_url":"https://github.com/jacquev6/PyGithub/commit/45c7f072e4732f89a9e756a27a4306f2f6dbd9c5"},{"sha":"a83649b68f1bb978c254f4cf1efcae88dc2608d7","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a83649b68f1bb978c254f4cf1efcae88dc2608d7","html_url":"https://github.com/jacquev6/PyGithub/commit/a83649b68f1bb978c254f4cf1efcae88dc2608d7"}]},"_links":{"self":"https://api.github.com/repos/jacquev6/PyGithub/branches/master","html":"https://github.com/jacquev6/PyGithub/tree/master"},"protection":{"enabled":true,"required_status_checks":{"enforcement_level":"non_admins","contexts":["test"]}}} + diff --git a/lib/github/tests/ReplayData/Repository.testCollaborators.txt b/lib/github/tests/ReplayData/Repository.testCollaborators.txt new file mode 100644 index 0000000000..393599f2d4 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testCollaborators.txt @@ -0,0 +1,77 @@ +https +GET +api.github.com +None +/users/Lyloa +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '554'), ('x-ratelimit-limit', '5000'), ('x-ratelimit-remaining', '4955'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('etag', '"4e931612aa9051643f0a428d2ae60b2e"'), ('date', 'Sun, 27 May 2012 05:34:26 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","url":"https://api.github.com/users/Lyloa","html_url":"https://github.com/Lyloa","company":null,"gravatar_id":"1517ed584458ccf83e03f5d77d9699d7","avatar_url":"https://secure.gravatar.com/avatar/1517ed584458ccf83e03f5d77d9699d7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","followers":1,"following":0,"created_at":"2011-10-16T14:36:46Z","blog":null,"login":"Lyloa","public_gists":0,"hireable":false,"name":"Lyloa","bio":null,"id":1131432,"public_repos":0,"location":"Paris","email":"nyu@lyloa.net"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/collaborators/Lyloa +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +404 +[('status', '404 Not Found'), ('x-ratelimit-remaining', '4954'), ('content-length', '23'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"e66a7a6c91e2c26803f3f49feb7a883f"'), ('date', 'Sun, 27 May 2012 05:34:27 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"message":"Not Found"} + +https +PUT +api.github.com +None +/repos/jacquev6/PyGithub/collaborators/Lyloa +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4953'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sun, 27 May 2012 05:34:27 GMT')] + + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/collaborators/Lyloa +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4952'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sun, 27 May 2012 05:34:28 GMT')] + + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/collaborators +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4951'), ('content-length', '590'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"dbf3059a3bb24b8af99793f5204a0a39"'), ('date', 'Sun, 27 May 2012 05:34:29 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},{"url":"https://api.github.com/users/Lyloa","avatar_url":"https://secure.gravatar.com/avatar/1517ed584458ccf83e03f5d77d9699d7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"1517ed584458ccf83e03f5d77d9699d7","login":"Lyloa","id":1131432}] + +https +DELETE +api.github.com +None +/repos/jacquev6/PyGithub/collaborators/Lyloa +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4950'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sun, 27 May 2012 05:34:29 GMT')] + + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/collaborators/Lyloa +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +404 +[('status', '404 Not Found'), ('x-ratelimit-remaining', '4949'), ('content-length', '23'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"e66a7a6c91e2c26803f3f49feb7a883f"'), ('date', 'Sun, 27 May 2012 05:34:30 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"message":"Not Found"} + diff --git a/lib/github/tests/ReplayData/Repository.testCompare.txt b/lib/github/tests/ReplayData/Repository.testCompare.txt new file mode 100644 index 0000000000..e1ac6106f9 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testCompare.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/compare/v0.6...v0.7 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4997'), ('content-length', '14488'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"42eb6d36008b20550ae6d1991e0423d5"'), ('date', 'Sun, 27 May 2012 06:30:33 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"status":"ahead","behind_by":0,"total_commits":4,"merge_base_commit":{"author":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4303c5b90e2216d927155e9609436ccb8984c495","committer":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"sha":"4303c5b90e2216d927155e9609436ccb8984c495","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/936f4a97f1a86392637ec002bbf89ff036a5062d","sha":"936f4a97f1a86392637ec002bbf89ff036a5062d"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2a7e80e6421c5d4d201d60619068dea6bae612cb","sha":"2a7e80e6421c5d4d201d60619068dea6bae612cb"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-04-17T10:55:16-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/4303c5b90e2216d927155e9609436ccb8984c495","message":"Merge branch 'develop'","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-04-17T10:55:16-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/f492784d8ca837779650d1fb406a1a3587a764ad","sha":"f492784d8ca837779650d1fb406a1a3587a764ad"}}},"patch_url":"https://github.com/jacquev6/PyGithub/compare/v0.6...v0.7.patch","diff_url":"https://github.com/jacquev6/PyGithub/compare/v0.6...v0.7.diff","url":"https://api.github.com/repos/jacquev6/PyGithub/compare/v0.6...v0.7","ahead_by":4,"base_commit":{"author":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4303c5b90e2216d927155e9609436ccb8984c495","committer":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"sha":"4303c5b90e2216d927155e9609436ccb8984c495","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/936f4a97f1a86392637ec002bbf89ff036a5062d","sha":"936f4a97f1a86392637ec002bbf89ff036a5062d"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2a7e80e6421c5d4d201d60619068dea6bae612cb","sha":"2a7e80e6421c5d4d201d60619068dea6bae612cb"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-04-17T10:55:16-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/4303c5b90e2216d927155e9609436ccb8984c495","message":"Merge branch 'develop'","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-04-17T10:55:16-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/f492784d8ca837779650d1fb406a1a3587a764ad","sha":"f492784d8ca837779650d1fb406a1a3587a764ad"}}},"permalink_url":"https://github.com/jacquev6/PyGithub/compare/jacquev6:4303c5b...jacquev6:ecda065","files":[{"status":"modified","changes":2,"deletions":1,"raw_url":"https://github.com/jacquev6/PyGithub/raw/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7/ReferenceOfClasses.md","blob_url":"https://github.com/jacquev6/PyGithub/blob/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7/ReferenceOfClasses.md","filename":"ReferenceOfClasses.md","patch":"@@ -3,7 +3,7 @@ You obtain instances through calls to `get_` and `create_` methods.\n \n Class `Github`\n ==============\n-* Constructed from user's login and password\n+* Constructed from user's login and password or OAuth token\n * `get_user()`: `AuthenticatedUser`\n * `get_user( login )`: `NamedUser`\n * `get_organization( login )`: `Organization`","additions":1,"sha":"ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7"},{"status":"modified","changes":4,"deletions":2,"raw_url":"https://github.com/jacquev6/PyGithub/raw/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7/github/Github.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7/github/Github.py","filename":"github/Github.py","patch":"@@ -2,8 +2,8 @@\n from GithubObjects import *\n \n class Github:\n- def __init__( self, login, password, debugFile = None ):\n- self.__requester = Requester( login, password )\n+ def __init__( self, login_or_token = None, password = None, debugFile = None ):\n+ self.__requester = Requester( login_or_token, password )\n self.__debugFile = debugFile\n \n def _dataRequest( self, verb, url, parameters, data ):","additions":2,"sha":"ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7"},{"status":"modified","changes":17,"deletions":3,"raw_url":"https://github.com/jacquev6/PyGithub/raw/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7/github/Requester.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7/github/Requester.py","filename":"github/Requester.py","patch":"@@ -7,8 +7,15 @@ class UnknownGithubObject( Exception ):\n pass\n \n class Requester:\n- def __init__( self, login, password ):\n- self.__authorizationHeader = \"Basic \" + base64.b64encode( login + \":\" + password ).replace( '\\n', '' )\n+ def __init__( self, login_or_token, password ):\n+ if password is not None:\n+ login = login_or_token\n+ self.__authorizationHeader = \"Basic \" + base64.b64encode( login + \":\" + password ).replace( '\\n', '' )\n+ elif login_or_token is not None:\n+ token = login_or_token\n+ self.__authorizationHeader = \"token \" + token\n+ else:\n+ self.__authorizationHeader = None\n \n def dataRequest( self, verb, url, parameters, input ):\n if parameters is None:\n@@ -46,12 +53,16 @@ def statusRequest( self, verb, url, parameters, input ):\n def __rawRequest( self, verb, url, parameters, input ):\n assert verb in [ \"HEAD\", \"GET\", \"POST\", \"PATCH\", \"PUT\", \"DELETE\" ]\n \n+ headers = dict()\n+ if self.__authorizationHeader is not None:\n+ headers[ \"Authorization\" ] = self.__authorizationHeader\n+\n cnx = httplib.HTTPSConnection( \"api.github.com\", strict = True )\n cnx.request(\n verb,\n self.__completeUrl( url, parameters ),\n json.dumps( input ),\n- { \"Authorization\" : self.__authorizationHeader }\n+ headers\n )\n response = cnx.getresponse()\n ","additions":14,"sha":"ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7"},{"status":"modified","changes":10,"deletions":1,"raw_url":"https://github.com/jacquev6/PyGithub/raw/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7/setup.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7/setup.py","filename":"setup.py","patch":"@@ -5,7 +5,7 @@\n \n setup(\n name = 'PyGithub',\n- version = '0.6',\n+ version = '0.7',\n description = 'Use the full Github API v3',\n author = 'Vincent Jacques',\n author_email = 'vincent@vincent-jacques.net',\n@@ -26,6 +26,14 @@\n print repo.name\n repo.edit( has_wiki = False )\n \n+ You can also create a Github instance without authentication::\n+\n+ g = Github( \"user\", \"password\" )\n+\n+ Or with an OAuth token::\n+\n+ g = Github( token )\n+\n Reference documentation\n =======================\n ","additions":9,"sha":"ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7"}],"commits":[{"author":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5bb654d26dd014d36794acd1e6ecf3736f12aad7","committer":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"sha":"5bb654d26dd014d36794acd1e6ecf3736f12aad7","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4303c5b90e2216d927155e9609436ccb8984c495","sha":"4303c5b90e2216d927155e9609436ccb8984c495"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-25T05:10:54-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/5bb654d26dd014d36794acd1e6ecf3736f12aad7","message":"Implement the three authentication schemes","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-25T05:10:54-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/59d755d95bc2e2de4dcef70a7c73e81e677f610b","sha":"59d755d95bc2e2de4dcef70a7c73e81e677f610b"}}},{"author":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cb0313157bf904f2d364377d35d9397b269547a5","committer":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"sha":"cb0313157bf904f2d364377d35d9397b269547a5","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4303c5b90e2216d927155e9609436ccb8984c495","sha":"4303c5b90e2216d927155e9609436ccb8984c495"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5bb654d26dd014d36794acd1e6ecf3736f12aad7","sha":"5bb654d26dd014d36794acd1e6ecf3736f12aad7"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-25T10:04:22-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/cb0313157bf904f2d364377d35d9397b269547a5","message":"Merge branch 'topic/Authentication' into develop","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-25T10:04:22-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/59d755d95bc2e2de4dcef70a7c73e81e677f610b","sha":"59d755d95bc2e2de4dcef70a7c73e81e677f610b"}}},{"author":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16","committer":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"sha":"0cec0d25e606c023a62a4fc7cdc815309ebf6d16","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cb0313157bf904f2d364377d35d9397b269547a5","sha":"cb0313157bf904f2d364377d35d9397b269547a5"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-25T10:13:33-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16","message":"Publish version 0.7","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-25T10:13:33-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/78735573611521bb3ade95921c668097e2a4dc5e","sha":"78735573611521bb3ade95921c668097e2a4dc5e"}}},{"author":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","committer":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"sha":"ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4303c5b90e2216d927155e9609436ccb8984c495","sha":"4303c5b90e2216d927155e9609436ccb8984c495"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16","sha":"0cec0d25e606c023a62a4fc7cdc815309ebf6d16"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-25T10:14:34-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","message":"Merge branch 'develop'","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-25T10:14:34-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/78735573611521bb3ade95921c668097e2a4dc5e","sha":"78735573611521bb3ade95921c668097e2a4dc5e"}}}],"html_url":"https://github.com/jacquev6/PyGithub/compare/v0.6...v0.7"} + diff --git a/lib/github/tests/ReplayData/Repository.testCreateFile.txt b/lib/github/tests/ReplayData/Repository.testCreateFile.txt new file mode 100644 index 0000000000..8dbfcf1380 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testCreateFile.txt @@ -0,0 +1,11 @@ +https +PUT +api.github.com +None +/repos/jacquev6/PyGithub/contents/doc/testCreateUpdateDeleteFile.md +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"author": {"date": "2016-01-15T16:13:30+12:00", "email": "enix223@163.com", "name": "Enix Yu"}, "branch": "master", "committer": {"date": "2016-01-15T16:13:30+12:00", "email": "enix223@163.com", "name": "Enix Yu"}, "content": "SGVsbG8gd29ybGQ=", "message": "Create file for testCreateFile"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4997'), ('content-length', '16'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"f5cc2fa3ba4de95ac0eb8c2ca47350c0"'), ('date', 'Fri, 11 May 2012 11:43:09 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/contents/doc/testCreateUpdateDeleteFile.md')] +{"content": {"name": "hello.txt", "url": "https://api.github.com/repos/PyGithub/contents/doc/testCreateUpdateDeleteFile.md", "html_url": "https://github.com/PyGithub/doc/testCreateUpdateDeleteFile.md", "download_url": "https://raw.githubusercontent.com/PyGithub/doc/testCreateUpdateDeleteFile.md", "sha": "95b966ae1c166bd92f8ae7d1c313e738c731dfc3", "_links": {"self": "https://api.github.com/repos/PyGithub/contents/doc/testCreateUpdateDeleteFile.md", "git": "https://api.github.com/repos/PyGithub/git/blobs/95b966ae1c166bd92f8ae7d1c313e738c731dfc3", "html": "https://github.com/jacquev6/PyGithub/blob/master/doc/testCreateUpdateDeleteFile.md"}, "git_url": "https://api.github.com/repos/jacquev6/PyGithub/git/blobs/95b966ae1c166bd92f8ae7d1c313e738c731dfc3", "path": "doc/testCreateUpdateDeleteFile.md", "type": "file", "size": 9}, "commit": {"committer": {"date": "2014-11-07T22:01:45Z", "name": "Enix Yu", "email": "enix223@gmail.com"}, "author": {"date": "2016-01-15T16:13:30+12:00", "name": "Enix Yu", "email": "enix223@gmail.com"}, "url": "https://api.github.com/repos/jacquev6/PyGithub/git/commits/7638417db6d59f3c431d3e1f261cc637155684cd", "tree": {"url": "https://api.github.com/repos/jacquev6/PyGithub/git/trees/691272480426f78a0138979dd3ce63b77f706feb", "sha": "691272480426f78a0138979dd3ce63b77f706feb"}, "html_url": "https://github.com/jacquev6/PyGithub/git/commit/7638417db6d59f3c431d3e1f261cc637155684cd", "sha": "7638417db6d59f3c431d3e1f261cc637155684cd", "parents": [{"url": "https://api.github.com/repos/jacquev6/PyGithub/git/commits/1acc419d4d6a9ce985db7be48c6349a0475975b5", "sha": "1acc419d4d6a9ce985db7be48c6349a0475975b5", "html_url": "https://github.com/jacquev6/PyGithub/git/commit/1acc419d4d6a9ce985db7be48c6349a0475975b5"}]}} + diff --git a/lib/github/tests/ReplayData/Repository.testCreateGitBlob.txt b/lib/github/tests/ReplayData/Repository.testCreateGitBlob.txt new file mode 100644 index 0000000000..e265afddc8 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testCreateGitBlob.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/git/blobs +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"content": "Blob created by PyGithub", "encoding": "latin1"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4997'), ('content-length', '156'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"f5cc2fa3ba4de95ac0eb8c2ca47350c0"'), ('date', 'Fri, 11 May 2012 11:43:09 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/git/blobs/5dd930f591cd5188e9ea7200e308ad355182a1d8')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/5dd930f591cd5188e9ea7200e308ad355182a1d8","sha":"5dd930f591cd5188e9ea7200e308ad355182a1d8"} + diff --git a/lib/github/tests/ReplayData/Repository.testCreateGitCommit.txt b/lib/github/tests/ReplayData/Repository.testCreateGitCommit.txt new file mode 100644 index 0000000000..4b701677b1 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testCreateGitCommit.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/git/trees/107139a922f33bab6fbeb9f9eb8787e7f19e0528 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4994'), ('content-length', '381'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"f33782d7031ff19c5301bb52068533cf"'), ('date', 'Fri, 01 Jun 2012 20:02:40 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/107139a922f33bab6fbeb9f9eb8787e7f19e0528","sha":"107139a922f33bab6fbeb9f9eb8787e7f19e0528","tree":[{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/5dd930f591cd5188e9ea7200e308ad355182a1d8","sha":"5dd930f591cd5188e9ea7200e308ad355182a1d8","size":0,"path":"Barbaz.txt","mode":"100644"}]} + +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/git/commits +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"parents": [], "message": "Commit created by PyGithub", "tree": "107139a922f33bab6fbeb9f9eb8787e7f19e0528"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4931'), ('content-length', '601'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"7719e5a3f5b064dc0871853dba33302b"'), ('date', 'Sun, 27 May 2012 05:50:59 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/git/commits/0b820628236ab8bab3890860fc414fa757ca15f4')] +{"author":{"email":"github.com@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-26T22:50:59-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/0b820628236ab8bab3890860fc414fa757ca15f4","message":"Commit created by PyGithub","committer":{"email":"github.com@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-26T22:50:59-07:00"},"sha":"0b820628236ab8bab3890860fc414fa757ca15f4","parents":[],"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/107139a922f33bab6fbeb9f9eb8787e7f19e0528","sha":"107139a922f33bab6fbeb9f9eb8787e7f19e0528"}} + diff --git a/lib/github/tests/ReplayData/Repository.testCreateGitCommitWithAllArguments.txt b/lib/github/tests/ReplayData/Repository.testCreateGitCommitWithAllArguments.txt new file mode 100644 index 0000000000..abddcff19d --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testCreateGitCommitWithAllArguments.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/git/trees/107139a922f33bab6fbeb9f9eb8787e7f19e0528 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4994'), ('content-length', '381'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"f33782d7031ff19c5301bb52068533cf"'), ('date', 'Fri, 01 Jun 2012 20:02:40 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/107139a922f33bab6fbeb9f9eb8787e7f19e0528","sha":"107139a922f33bab6fbeb9f9eb8787e7f19e0528","tree":[{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/5dd930f591cd5188e9ea7200e308ad355182a1d8","sha":"5dd930f591cd5188e9ea7200e308ad355182a1d8","size":0,"path":"Barbaz.txt","mode":"100644"}]} + +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/git/commits +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"parents": [], "message": "Commit created by PyGithub", "tree": "107139a922f33bab6fbeb9f9eb8787e7f19e0528", "committer": {"date": "2008-07-09T16:13:30+12:00", "name": "John Doe", "email": "j.doe@vincent-jacques.net"}, "author": {"date": "2008-07-09T16:13:30+12:00", "name": "John Doe", "email": "j.doe@vincent-jacques.net"}} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4928'), ('content-length', '577'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"660cc851cdd42a2caa7241cd96db0d01"'), ('date', 'Sun, 27 May 2012 05:53:47 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/git/commits/526946197ae9da59c6507cacd13ad6f1cfb686ea')] +{"author":{"email":"j.doe@vincent-jacques.net","name":"John Doe","date":"2008-07-08T21:13:30-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/526946197ae9da59c6507cacd13ad6f1cfb686ea","message":"Commit created by PyGithub","committer":{"email":"j.doe@vincent-jacques.net","name":"John Doe","date":"2008-07-08T21:13:30-07:00"},"sha":"526946197ae9da59c6507cacd13ad6f1cfb686ea","parents":[],"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/107139a922f33bab6fbeb9f9eb8787e7f19e0528","sha":"107139a922f33bab6fbeb9f9eb8787e7f19e0528"}} + diff --git a/lib/github/tests/ReplayData/Repository.testCreateGitCommitWithParents.txt b/lib/github/tests/ReplayData/Repository.testCreateGitCommitWithParents.txt new file mode 100644 index 0000000000..2f64a76dab --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testCreateGitCommitWithParents.txt @@ -0,0 +1,44 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/git/commits/7248e66831d4ffe09ef1f30a1df59ec0a9331ece +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4967'), ('content-length', '762'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"0cbf75a2a511c74f3df22dfd8d2ee42a"'), ('date', 'Fri, 01 Jun 2012 18:39:29 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"committer":{"email":"vincent@vincent-jacques.net","date":"2012-05-30T09:58:18-07:00","name":"Vincent Jacques"},"message":"Check HTTP status on all requests\n","url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/7248e66831d4ffe09ef1f30a1df59ec0a9331ece","sha":"7248e66831d4ffe09ef1f30a1df59ec0a9331ece","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/81ca19a009b54e64226e3f9e51210fba989d5497","sha":"81ca19a009b54e64226e3f9e51210fba989d5497"}],"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/91655d55b309f520fd4b3fd9e5303cfc13855a21","sha":"91655d55b309f520fd4b3fd9e5303cfc13855a21"},"author":{"email":"vincent@vincent-jacques.net","date":"2012-05-30T09:58:18-07:00","name":"Vincent Jacques"}} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/git/commits/12d427464f8d91c8e981043a86ba8a2a9e7319ea +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4966'), ('content-length', '769'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"87d790f22e47dbaa3148ad7872e32dde"'), ('date', 'Fri, 01 Jun 2012 18:39:30 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"tree":{"sha":"143dd39e465e5de953d944c9309b961af392da73","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/143dd39e465e5de953d944c9309b961af392da73"},"sha":"12d427464f8d91c8e981043a86ba8a2a9e7319ea","message":"Remove the notion of ImmediateCompletion\n","parents":[{"sha":"7a622975d6a3f0ab80f573f577aa0e3ffb69e2f5","url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/7a622975d6a3f0ab80f573f577aa0e3ffb69e2f5"}],"author":{"email":"vincent@vincent-jacques.net","date":"2012-05-30T09:51:36-07:00","name":"Vincent Jacques"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/12d427464f8d91c8e981043a86ba8a2a9e7319ea","committer":{"email":"vincent@vincent-jacques.net","date":"2012-05-30T10:00:37-07:00","name":"Vincent Jacques"}} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/git/trees/fae707821159639589bf94f3fb0a7154ec5d441b +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4994'), ('content-length', '381'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"f33782d7031ff19c5301bb52068533cf"'), ('date', 'Fri, 01 Jun 2012 20:02:40 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/fae707821159639589bf94f3fb0a7154ec5d441b","sha":"fae707821159639589bf94f3fb0a7154ec5d441b","tree":[{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/5dd930f591cd5188e9ea7200e308ad355182a1d8","sha":"5dd930f591cd5188e9ea7200e308ad355182a1d8","size":0,"path":"Barbaz.txt","mode":"100644"}]} + +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/git/commits +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"parents": ["7248e66831d4ffe09ef1f30a1df59ec0a9331ece", "12d427464f8d91c8e981043a86ba8a2a9e7319ea"], "message": "Commit created by PyGithub", "tree": "fae707821159639589bf94f3fb0a7154ec5d441b"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4965'), ('content-length', '918'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"1ada1e7861f74fa4fefa922bf03e891e"'), ('date', 'Fri, 01 Jun 2012 18:39:31 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/git/commits/6adf9ea25ff8a8f2a42bcb1c09e42526339037cd')] +{"committer":{"email":"github.com@vincent-jacques.net","date":"2012-06-01T11:39:31-07:00","name":"Vincent Jacques"},"message":"Commit created by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/6adf9ea25ff8a8f2a42bcb1c09e42526339037cd","sha":"6adf9ea25ff8a8f2a42bcb1c09e42526339037cd","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/7248e66831d4ffe09ef1f30a1df59ec0a9331ece","sha":"7248e66831d4ffe09ef1f30a1df59ec0a9331ece"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/12d427464f8d91c8e981043a86ba8a2a9e7319ea","sha":"12d427464f8d91c8e981043a86ba8a2a9e7319ea"}],"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/fae707821159639589bf94f3fb0a7154ec5d441b","sha":"fae707821159639589bf94f3fb0a7154ec5d441b"},"author":{"email":"github.com@vincent-jacques.net","date":"2012-06-01T11:39:31-07:00","name":"Vincent Jacques"}} + diff --git a/lib/github/tests/ReplayData/Repository.testCreateGitRef.txt b/lib/github/tests/ReplayData/Repository.testCreateGitRef.txt new file mode 100644 index 0000000000..77230efb53 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testCreateGitRef.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/git/refs +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"sha": "4303c5b90e2216d927155e9609436ccb8984c495", "ref": "refs/heads/BranchCreatedByPyGithub"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4987'), ('content-length', '322'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"0302e489fc6bd534afa44cdbec1227e7"'), ('date', 'Thu, 10 May 2012 18:49:19 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/git/refs/heads/BranchCreatedByPyGithub')] +{"object":{"type":"commit","sha":"4303c5b90e2216d927155e9609436ccb8984c495","url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/4303c5b90e2216d927155e9609436ccb8984c495"},"ref":"refs/heads/BranchCreatedByPyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs/heads/BranchCreatedByPyGithub"} + diff --git a/lib/github/tests/ReplayData/Repository.testCreateGitTag.txt b/lib/github/tests/ReplayData/Repository.testCreateGitTag.txt new file mode 100644 index 0000000000..ba5aa28aa1 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testCreateGitTag.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/git/tags +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"message": "Tag created by PyGithub", "tag": "TaggedByPyGithub", "type": "commit", "object": "0b820628236ab8bab3890860fc414fa757ca15f4"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4925'), ('content-length', '512'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"9a9c1f293329ee4c63e8cfb08772e3a1"'), ('date', 'Sun, 27 May 2012 05:56:08 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/git/tags/5ba561eaa2b7ca9015662510157b15d8f3b0232a')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags/5ba561eaa2b7ca9015662510157b15d8f3b0232a","message":"Tag created by PyGithub","tag":"TaggedByPyGithub","object":{"type":"commit","url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/0b820628236ab8bab3890860fc414fa757ca15f4","sha":"0b820628236ab8bab3890860fc414fa757ca15f4"},"tagger":{"email":"github.com@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-26T22:56:07-07:00"},"sha":"5ba561eaa2b7ca9015662510157b15d8f3b0232a"} + diff --git a/lib/github/tests/ReplayData/Repository.testCreateGitTagWithAllArguments.txt b/lib/github/tests/ReplayData/Repository.testCreateGitTagWithAllArguments.txt new file mode 100644 index 0000000000..b302eace82 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testCreateGitTagWithAllArguments.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/git/tags +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"tagger": {"date": "2008-07-09T16:13:30+12:00", "name": "John Doe", "email": "j.doe@vincent-jacques.net"}, "message": "Tag also created by PyGithub", "tag": "TaggedByPyGithub2", "type": "commit", "object": "526946197ae9da59c6507cacd13ad6f1cfb686ea"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4922'), ('content-length', '506'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"a7e5d9e4342e323fa513f880968b80f4"'), ('date', 'Sun, 27 May 2012 05:57:03 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/git/tags/f0e99a8335fbc84c53366c4a681118468f266625')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags/f0e99a8335fbc84c53366c4a681118468f266625","message":"Tag also created by PyGithub","tag":"TaggedByPyGithub2","object":{"type":"commit","url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/526946197ae9da59c6507cacd13ad6f1cfb686ea","sha":"526946197ae9da59c6507cacd13ad6f1cfb686ea"},"tagger":{"email":"j.doe@vincent-jacques.net","name":"John Doe","date":"2008-07-08T21:13:30-07:00"},"sha":"f0e99a8335fbc84c53366c4a681118468f266625"} + diff --git a/lib/github/tests/ReplayData/Repository.testCreateGitTree.txt b/lib/github/tests/ReplayData/Repository.testCreateGitTree.txt new file mode 100644 index 0000000000..abcb98d6f5 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testCreateGitTree.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/git/trees +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"tree": [{"content": "File created by PyGithub", "path": "Foobar.txt", "type": "blob", "mode": "100644"}]} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4937'), ('content-length', '382'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"0446b5f676814b5801ab6744ef9b59f7"'), ('date', 'Sun, 27 May 2012 05:48:14 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/git/trees/41cf8c178c636a018d537cb20daae09391efd70b')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/41cf8c178c636a018d537cb20daae09391efd70b","sha":"41cf8c178c636a018d537cb20daae09391efd70b","tree":[{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/73a1c7f17aa0ad5d7cbb5a8ca033ce47d3d23197","size":24,"path":"Foobar.txt","sha":"73a1c7f17aa0ad5d7cbb5a8ca033ce47d3d23197","mode":"100644"}]} + diff --git a/lib/github/tests/ReplayData/Repository.testCreateGitTreeWithBaseTree.txt b/lib/github/tests/ReplayData/Repository.testCreateGitTreeWithBaseTree.txt new file mode 100644 index 0000000000..c66b264de1 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testCreateGitTreeWithBaseTree.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/git/trees/41cf8c178c636a018d537cb20daae09391efd70b +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4994'), ('content-length', '381'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"f33782d7031ff19c5301bb52068533cf"'), ('date', 'Fri, 01 Jun 2012 20:02:40 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/41cf8c178c636a018d537cb20daae09391efd70b","sha":"41cf8c178c636a018d537cb20daae09391efd70b","tree":[{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/5dd930f591cd5188e9ea7200e308ad355182a1d8","sha":"5dd930f591cd5188e9ea7200e308ad355182a1d8","size":0,"path":"Barbaz.txt","mode":"100644"}]} + +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/git/trees +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"tree": [{"content": "File also created by PyGithub", "path": "Barbaz.txt", "type": "blob", "mode": "100644"}], "base_tree": "41cf8c178c636a018d537cb20daae09391efd70b"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4934'), ('content-length', '599'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"f04d90b327eaf7b7600bc22fd11a41a4"'), ('date', 'Sun, 27 May 2012 05:49:48 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/git/trees/107139a922f33bab6fbeb9f9eb8787e7f19e0528')] +{"tree":[{"type":"blob","sha":"92be1df4e473d2541c5c166ad145a39d0324de8b","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/92be1df4e473d2541c5c166ad145a39d0324de8b","size":29,"path":"Barbaz.txt","mode":"100644"},{"type":"blob","sha":"73a1c7f17aa0ad5d7cbb5a8ca033ce47d3d23197","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/73a1c7f17aa0ad5d7cbb5a8ca033ce47d3d23197","size":24,"path":"Foobar.txt","mode":"100644"}],"sha":"107139a922f33bab6fbeb9f9eb8787e7f19e0528","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/107139a922f33bab6fbeb9f9eb8787e7f19e0528"} + diff --git a/lib/github/tests/ReplayData/Repository.testCreateGitTreeWithSha.txt b/lib/github/tests/ReplayData/Repository.testCreateGitTreeWithSha.txt new file mode 100644 index 0000000000..6daa3a5d76 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testCreateGitTreeWithSha.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/git/trees +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"tree": [{"path": "Barbaz.txt", "type": "blob", "mode": "100644", "sha": "5dd930f591cd5188e9ea7200e308ad355182a1d8"}]} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4997'), ('content-length', '381'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"f33782d7031ff19c5301bb52068533cf"'), ('date', 'Fri, 01 Jun 2012 17:51:04 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/git/trees/fae707821159639589bf94f3fb0a7154ec5d441b')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/fae707821159639589bf94f3fb0a7154ec5d441b","sha":"fae707821159639589bf94f3fb0a7154ec5d441b","tree":[{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/5dd930f591cd5188e9ea7200e308ad355182a1d8","sha":"5dd930f591cd5188e9ea7200e308ad355182a1d8","size":0,"path":"Barbaz.txt","mode":"100644"}]} + diff --git a/lib/github/tests/ReplayData/Repository.testCreateHookWithAllParameters.txt b/lib/github/tests/ReplayData/Repository.testCreateHookWithAllParameters.txt new file mode 100644 index 0000000000..852b68c028 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testCreateHookWithAllParameters.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/hooks +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"active": false, "config": {"url": "http://foobar.com"}, "name": "web", "events": ["fork"]} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4997'), ('content-length', '298'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"c3b371e4de1a0ec350b3fcc0c458e0f9"'), ('date', 'Sat, 19 May 2012 06:01:45 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/hooks/257993')] +{"updated_at":"2012-05-19T06:01:45Z","last_response":{"status":"unused","message":null,"code":null},"events":["fork"],"url":"https://api.github.com/repos/jacquev6/PyGithub/hooks/257993","active":true,"name":"web","config":{"url":"http://foobar.com"},"id":257993,"created_at":"2012-05-19T06:01:45Z"} + diff --git a/lib/github/tests/ReplayData/Repository.testCreateHookWithMinimalParameters.txt b/lib/github/tests/ReplayData/Repository.testCreateHookWithMinimalParameters.txt new file mode 100644 index 0000000000..0da240f8c8 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testCreateHookWithMinimalParameters.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/hooks +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"config": {"url": "http://foobar.com"}, "name": "web"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4994'), ('content-length', '298'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"276d18854081948260c44cf645c54bd0"'), ('date', 'Sat, 19 May 2012 05:03:14 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/hooks/257967')] +{"updated_at":"2012-05-19T05:03:14Z","url":"https://api.github.com/repos/jacquev6/PyGithub/hooks/257967","config":{"url":"http://foobar.com"},"last_response":{"status":"unused","message":null,"code":null},"active":true,"events":["push"],"name":"web","created_at":"2012-05-19T05:03:14Z","id":257967} + diff --git a/lib/github/tests/ReplayData/Repository.testCreateIssue.txt b/lib/github/tests/ReplayData/Repository.testCreateIssue.txt new file mode 100644 index 0000000000..7b1ccee9e2 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testCreateIssue.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/issues +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"title": "Issue created by PyGithub"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4935'), ('content-length', '748'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"26e2222fe8411843d3fd2b024d50c567"'), ('date', 'Sat, 19 May 2012 10:38:24 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/issues/28')] +{"closed_by":null,"state":"open","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"title":"Issue created by PyGithub","comments":0,"updated_at":"2012-05-19T10:38:23Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"closed_at":null,"body":null,"number":28,"milestone":null,"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/28","assignee":null,"labels":[],"id":4653757,"html_url":"https://github.com/jacquev6/PyGithub/issues/28","created_at":"2012-05-19T10:38:23Z"} + diff --git a/lib/github/tests/ReplayData/Repository.testCreateIssueWithAllArguments.txt b/lib/github/tests/ReplayData/Repository.testCreateIssueWithAllArguments.txt new file mode 100644 index 0000000000..a0046c044e --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testCreateIssueWithAllArguments.txt @@ -0,0 +1,44 @@ +https +GET +api.github.com +None +/users/jacquev6 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4991'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"0c1724d7560338bc2f2579af6e8ec545"'), ('date', 'Fri, 01 Jun 2012 20:09:23 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"owned_private_repos":5,"type":"User","company":"Criteo","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","email":"vincent@vincent-jacques.net","hireable":false,"public_gists":3,"created_at":"2010-07-09T06:10:06Z","location":"Paris, France","bio":"","url":"https://api.github.com/users/jacquev6","following":24,"private_gists":5,"public_repos":10,"blog":"http://vincent-jacques.net","disk_usage":16900,"name":"Vincent Jacques","total_private_repos":5,"collaborators":0,"followers":13,"html_url":"https://github.com/jacquev6","id":327146,"plan":{"private_repos":5,"space":614400,"name":"micro","collaborators":1}} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/milestones/2 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4990'), ('content-length', '899'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"5fc4dbe5fd444fd2ea9f90c698b432cf"'), ('date', 'Fri, 01 Jun 2012 20:09:24 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"title":"Version 1.0: coherent public interface","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","closed_issues":13,"due_on":"2012-06-04T07:00:00Z","open_issues":6,"number":2,"id":93547} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/labels/Question +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4989'), ('content-length', '107'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"931e58d337b2290717303141eda89cd7"'), ('date', 'Fri, 01 Jun 2012 20:09:25 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"color":"02e10c","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question"} + +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/issues +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"body": "Body created by PyGithub", "assignee": "jacquev6", "labels": ["Question"], "milestone": 2, "title": "Issue also created by PyGithub"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4943'), ('content-length', '2069'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d131a11b793937127bf7d0ce56e2805e"'), ('date', 'Sun, 27 May 2012 05:40:15 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/issues/30')] +{"updated_at":"2012-05-27T05:40:15Z","body":"Body created by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/30","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547,"closed_issues":2},"number":30,"closed_by":null,"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"closed_at":null,"title":"Issue also created by PyGithub","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}],"created_at":"2012-05-27T05:40:15Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4769659,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/30"} + diff --git a/lib/github/tests/ReplayData/Repository.testCreateIssueWithAllArgumentsStringLabel.txt b/lib/github/tests/ReplayData/Repository.testCreateIssueWithAllArgumentsStringLabel.txt new file mode 100644 index 0000000000..ad7f0b81e9 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testCreateIssueWithAllArgumentsStringLabel.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/users/jacquev6 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4991'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"0c1724d7560338bc2f2579af6e8ec545"'), ('date', 'Fri, 01 Jun 2012 20:09:23 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"owned_private_repos":5,"type":"User","company":"Criteo","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","email":"vincent@vincent-jacques.net","hireable":false,"public_gists":3,"created_at":"2010-07-09T06:10:06Z","location":"Paris, France","bio":"","url":"https://api.github.com/users/jacquev6","following":24,"private_gists":5,"public_repos":10,"blog":"http://vincent-jacques.net","disk_usage":16900,"name":"Vincent Jacques","total_private_repos":5,"collaborators":0,"followers":13,"html_url":"https://github.com/jacquev6","id":327146,"plan":{"private_repos":5,"space":614400,"name":"micro","collaborators":1}} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/milestones/2 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4990'), ('content-length', '899'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"5fc4dbe5fd444fd2ea9f90c698b432cf"'), ('date', 'Fri, 01 Jun 2012 20:09:24 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"title":"Version 1.0: coherent public interface","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","closed_issues":13,"due_on":"2012-06-04T07:00:00Z","open_issues":6,"number":2,"id":93547} + +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/issues +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"body": "Body created by PyGithub", "assignee": "jacquev6", "labels": ["Question"], "milestone": 2, "title": "Issue also created by PyGithub"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4943'), ('content-length', '2069'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d131a11b793937127bf7d0ce56e2805e"'), ('date', 'Sun, 27 May 2012 05:40:15 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/issues/30')] +{"updated_at":"2012-05-27T05:40:15Z","body":"Body created by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/30","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547,"closed_issues":2},"number":30,"closed_by":null,"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"closed_at":null,"title":"Issue also created by PyGithub","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}],"created_at":"2012-05-27T05:40:15Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":4769659,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/30"} + diff --git a/lib/github/tests/ReplayData/Repository.testCreateKey.txt b/lib/github/tests/ReplayData/Repository.testCreateKey.txt new file mode 100644 index 0000000000..87f8c7db16 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testCreateKey.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/keys +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"key": "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA2Mm0RjTNAYFfSCtUpO54usdseroUSIYg5KX4JoseTpqyiB/hqewjYLAdUq/tNIQzrkoEJWSyZrQt0ma7/YCyMYuNGd3DU6q6ZAyBeY3E9RyCiKjO3aTL2VKQGFvBVVmGdxGVSCITRphAcsKc/PF35/fg9XP9S0anMXcEFtdfMHz41SSw+XtE+Vc+6cX9FuI5qUfLGbkv8L1v3g4uw9VXlzq4GfTA+1S7D6mcoGHopAIXFlVr+2RfDKdSURMcB22z41fljO1MW4+zUS/4FyUTpL991es5fcwKXYoiE+x06VJeJJ1Krwx+DZj45uweV6cHXt2JwJEI9fWB6WyBlDejWw== vincent@IDEE", "title": "Key added through PyGithub"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4955'), ('content-length', '505'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"0eb643b648f2ef29f38c2bcbce872e09"'), ('date', 'Sat, 26 May 2012 20:28:37 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/user/keys/2626761')] +{"url":"https://api.github.com/user/keys/2626761","key":"ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA2Mm0RjTNAYFfSCtUpO54usdseroUSIYg5KX4JoseTpqyiB/hqewjYLAdUq/tNIQzrkoEJWSyZrQt0ma7/YCyMYuNGd3DU6q6ZAyBeY3E9RyCiKjO3aTL2VKQGFvBVVmGdxGVSCITRphAcsKc/PF35/fg9XP9S0anMXcEFtdfMHz41SSw+XtE+Vc+6cX9FuI5qUfLGbkv8L1v3g4uw9VXlzq4GfTA+1S7D6mcoGHopAIXFlVr+2RfDKdSURMcB22z41fljO1MW4+zUS/4FyUTpL991es5fcwKXYoiE+x06VJeJJ1Krwx+DZj45uweV6cHXt2JwJEI9fWB6WyBlDejWw==","verified":true,"title":"Key added through PyGithub","id":2626761} + diff --git a/lib/github/tests/ReplayData/Repository.testCreateLabel.txt b/lib/github/tests/ReplayData/Repository.testCreateLabel.txt new file mode 100644 index 0000000000..86c50b9c4c --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testCreateLabel.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/labels +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"color": "00ff00", "name": "Label with silly name % * + created by PyGithub"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4969'), ('content-length', '191'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"92b623552b1bac3f019d03c920305acd"'), ('date', 'Sat, 19 May 2012 10:17:36 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+silly+name+%25+%2A+%2B+created+by+PyGithub')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+silly+name+%25+%2A+%2B+created+by+PyGithub","name":"Label with silly name % * + created by PyGithub","color":"00ff00"} + diff --git a/lib/github/tests/ReplayData/Repository.testCreateMilestone.txt b/lib/github/tests/ReplayData/Repository.testCreateMilestone.txt new file mode 100644 index 0000000000..79b5acc88d --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testCreateMilestone.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/milestones +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"due_on": "2012-06-15", "state": "open", "description": "Description created by PyGithub", "title": "Milestone created by PyGithub"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4958'), ('content-length', '604'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"bb5eb08c923020c102396cd0c9bfdbc5"'), ('date', 'Sat, 19 May 2012 10:24:13 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/milestones/5')] +{"closed_issues":0,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/5","due_on":"2012-06-15T07:00:00Z","creator":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"number":5,"open_issues":0,"title":"Milestone created by PyGithub","created_at":"2012-05-19T10:24:13Z","state":"open","description":"Description created by PyGithub","id":121463} + diff --git a/lib/github/tests/ReplayData/Repository.testCreateMilestoneWithMinimalArguments.txt b/lib/github/tests/ReplayData/Repository.testCreateMilestoneWithMinimalArguments.txt new file mode 100644 index 0000000000..2820b5fcf8 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testCreateMilestoneWithMinimalArguments.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/milestones +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"title": "Milestone also created by PyGithub"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4940'), ('content-length', '562'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"575796ba6077c16fdc79f4d38885aa5f"'), ('date', 'Sun, 27 May 2012 05:41:34 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/milestones/6')] +{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_issues":0,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/6","number":6,"title":"Milestone also created by PyGithub","due_on":null,"open_issues":0,"created_at":"2012-05-27T05:41:34Z","state":"open","description":null,"id":124480} + diff --git a/lib/github/tests/ReplayData/Repository.testCreatePull.txt b/lib/github/tests/ReplayData/Repository.testCreatePull.txt new file mode 100644 index 0000000000..eb6400fb8a --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testCreatePull.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/pulls +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"body": "Body of the pull request", "head": "BeaverSoftware:master", "base": "topic/RewriteWithGeneratedCode", "title": "Pull request created by PyGithub"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4963'), ('content-length', '4486'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"1e069be7c3e3eb8b12afb1e1f5343dc9"'), ('date', 'Sun, 27 May 2012 09:25:37 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/pulls/31')] +{"merged":false,"patch_url":"https://github.com/jacquev6/PyGithub/pull/31.patch","mergeable":null,"head":{"ref":"master","label":"BeaverSoftware:master","repo":{"clone_url":"https://github.com/BeaverSoftware/PyGithub.git","has_downloads":true,"watchers":1,"updated_at":"2012-05-27T09:09:17Z","homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/BeaverSoftware/PyGithub","mirror_url":null,"has_wiki":false,"has_issues":false,"fork":true,"forks":0,"size":176,"private":false,"open_issues":0,"svn_url":"https://github.com/BeaverSoftware/PyGithub","owner":{"url":"https://api.github.com/users/BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031,"avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:BeaverSoftware/PyGithub.git","pushed_at":"2012-05-27T09:09:17Z","created_at":"2012-05-27T08:50:04Z","id":4460787,"git_url":"git://github.com/BeaverSoftware/PyGithub.git","html_url":"https://github.com/BeaverSoftware/PyGithub","full_name":"BeaverSoftware/PyGithub"},"user":{"url":"https://api.github.com/users/BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031,"avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},"updated_at":"2012-05-27T09:25:36Z","issue_url":"https://github.com/jacquev6/PyGithub/issues/31","body":"Body of the pull request","url":"https://api.github.com/repos/jacquev6/PyGithub/pulls/31","comments":0,"base":{"ref":"topic/RewriteWithGeneratedCode","label":"jacquev6:topic/RewriteWithGeneratedCode","repo":{"clone_url":"https://github.com/jacquev6/PyGithub.git","has_downloads":true,"watchers":15,"updated_at":"2012-05-27T08:50:04Z","homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","mirror_url":null,"has_wiki":false,"has_issues":true,"fork":false,"forks":3,"size":308,"private":false,"open_issues":16,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-27T07:29:24Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"git_url":"git://github.com/jacquev6/PyGithub.git","html_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub"},"user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"ed866fc43833802ab553e5ff8581c81bb00dd433"},"number":31,"merged_by":null,"closed_at":null,"title":"Pull request created by PyGithub","deletions":384,"merged_at":null,"diff_url":"https://github.com/jacquev6/PyGithub/pull/31.diff","additions":511,"_links":{"self":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/31"},"comments":{"href":"https://api.github.com/repos/jacquev6/PyGithub/issues/31/comments"},"issue":{"href":"https://api.github.com/repos/jacquev6/PyGithub/issues/31"},"html":{"href":"https://github.com/jacquev6/PyGithub/pull/31"},"review_comments":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/31/comments"}},"created_at":"2012-05-27T09:25:36Z","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"state":"open","id":1436215,"review_comments":0,"commits":3,"changed_files":45,"html_url":"https://github.com/jacquev6/PyGithub/pull/31"} + diff --git a/lib/github/tests/ReplayData/Repository.testCreatePullFromIssue.txt b/lib/github/tests/ReplayData/Repository.testCreatePullFromIssue.txt new file mode 100644 index 0000000000..9263eb70b6 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testCreatePullFromIssue.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/32 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4986'), ('content-length', '2141'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"f88aca2b371ce28f651166ed9c5a2525"'), ('date', 'Fri, 01 Jun 2012 20:10:41 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"title":"Creation of a pull request from an issue is not covered by integration tests","pull_request":{"diff_url":"https://github.com/jacquev6/PyGithub/pull/32.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/32.patch","html_url":"https://github.com/jacquev6/PyGithub/pull/32"},"labels":[],"created_at":"2012-05-27T10:55:12Z","state":"closed","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/32","assignee":null,"closed_at":"2012-05-27T11:03:53Z","updated_at":"2012-05-27T11:03:53Z","body":"","comments":0,"number":32,"id":4770481,"html_url":"https://github.com/jacquev6/PyGithub/issues/32","closed_by":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"milestone":{"title":"Version 1.0: coherent public interface","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","closed_issues":13,"due_on":"2012-06-04T07:00:00Z","open_issues":6,"number":2,"id":93547}} + +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/pulls +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"head": "BeaverSoftware:master", "base": "topic/RewriteWithGeneratedCode", "issue": 32} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4933'), ('content-length', '4501'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"2b035f5260fe63dd611156fea3049af0"'), ('date', 'Sun, 27 May 2012 10:58:42 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/pulls/32')] +{"merged":false,"patch_url":"https://github.com/jacquev6/PyGithub/pull/32.patch","mergeable":null,"head":{"ref":"master","label":"BeaverSoftware:master","repo":{"clone_url":"https://github.com/BeaverSoftware/PyGithub.git","has_downloads":true,"watchers":1,"updated_at":"2012-05-27T10:58:08Z","homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/BeaverSoftware/PyGithub","mirror_url":null,"has_wiki":false,"has_issues":false,"fork":true,"forks":0,"size":176,"private":false,"open_issues":0,"svn_url":"https://github.com/BeaverSoftware/PyGithub","owner":{"url":"https://api.github.com/users/BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031,"avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:BeaverSoftware/PyGithub.git","pushed_at":"2012-05-27T10:58:08Z","created_at":"2012-05-27T08:50:04Z","id":4460787,"git_url":"git://github.com/BeaverSoftware/PyGithub.git","html_url":"https://github.com/BeaverSoftware/PyGithub","full_name":"BeaverSoftware/PyGithub"},"user":{"url":"https://api.github.com/users/BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031,"avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"sha":"aff8a573a19f0a42380e1c0cbbc63b6dc719f38e"},"updated_at":"2012-05-27T10:58:41Z","issue_url":"https://github.com/jacquev6/PyGithub/issues/32","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/pulls/32","comments":0,"base":{"ref":"topic/RewriteWithGeneratedCode","label":"jacquev6:topic/RewriteWithGeneratedCode","repo":{"clone_url":"https://github.com/jacquev6/PyGithub.git","has_downloads":true,"watchers":15,"updated_at":"2012-05-27T10:54:09Z","homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","mirror_url":null,"has_wiki":false,"has_issues":true,"fork":false,"forks":3,"size":188,"private":false,"open_issues":17,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-27T10:54:09Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"git_url":"git://github.com/jacquev6/PyGithub.git","html_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub"},"user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"7ec473e793c0b63092d938707632639a41fd4369"},"number":32,"merged_by":null,"closed_at":null,"title":"Creation of a pull request from an issue is not covered by integration tests","deletions":0,"merged_at":null,"diff_url":"https://github.com/jacquev6/PyGithub/pull/32.diff","additions":0,"_links":{"self":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/32"},"comments":{"href":"https://api.github.com/repos/jacquev6/PyGithub/issues/32/comments"},"issue":{"href":"https://api.github.com/repos/jacquev6/PyGithub/issues/32"},"html":{"href":"https://github.com/jacquev6/PyGithub/pull/32"},"review_comments":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/32/comments"}},"created_at":"2012-05-27T10:58:41Z","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"state":"open","id":1436310,"review_comments":0,"commits":1,"changed_files":0,"html_url":"https://github.com/jacquev6/PyGithub/pull/32"} + diff --git a/lib/github/tests/ReplayData/Repository.testDelete.txt b/lib/github/tests/ReplayData/Repository.testDelete.txt new file mode 100644 index 0000000000..047d7ca5a9 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testDelete.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4987'), ('x-ratelimit-limit', '5000'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '806'), ('server', 'nginx/1.0.13'), ('last-modified', 'Tue, 14 Aug 2012 18:41:03 GMT'), ('connection', 'keep-alive'), ('etag', '"a16173bc016f1c15e3e635051c76c388"'), ('cache-control', 'private, s-maxage=60, max-age=60'), ('date', 'Thu, 23 Aug 2012 07:30:50 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"private_gists":5,"plan":{"private_repos":5,"space":614400,"collaborators":1,"name":"micro"},"type":"User","public_repos":12,"followers":13,"following":28,"location":"Paris, France","hireable":false,"disk_usage":14544,"created_at":"2010-07-09T06:10:06Z","login":"jacquev6","bio":"","blog":"http://vincent-jacques.net","total_private_repos":5,"collaborators":0,"email":"vincent@vincent-jacques.net","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","name":"Vincent Jacques","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","owned_private_repos":5,"public_gists":3,"id":327146,"html_url":"https://github.com/jacquev6","company":"Criteo"} + +https +GET +api.github.com +None +/repos/jacquev6/TestPyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4986'), ('x-ratelimit-limit', '5000'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '1176'), ('server', 'nginx/1.0.13'), ('last-modified', 'Thu, 23 Aug 2012 07:30:19 GMT'), ('connection', 'keep-alive'), ('etag', '"b997e723dda2e6baea587ef9b5b94e73"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Thu, 23 Aug 2012 07:30:51 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"clone_url":"https://github.com/jacquev6/TestPyGithub.git","git_url":"git://github.com/jacquev6/TestPyGithub.git","full_name":"jacquev6/TestPyGithub","open_issues":0,"has_issues":true,"owner":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146},"watchers_count":0,"homepage":null,"ssh_url":"git@github.com:jacquev6/TestPyGithub.git","master_branch":"master","open_issues_count":0,"language":null,"created_at":"2012-08-23T07:30:19Z","permissions":{"admin":true,"push":true,"pull":true},"mirror_url":null,"has_downloads":true,"description":null,"pushed_at":"2012-08-23T07:30:19Z","forks":0,"forks_count":0,"size":0,"fork":false,"svn_url":"https://github.com/jacquev6/TestPyGithub","updated_at":"2012-08-23T07:30:19Z","name":"TestPyGithub","url":"https://api.github.com/repos/jacquev6/TestPyGithub","network_count":0,"has_wiki":true,"private":false,"id":5520886,"watchers":0,"html_url":"https://github.com/jacquev6/TestPyGithub"} + +https +DELETE +api.github.com +None +/repos/jacquev6/TestPyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4985'), ('x-content-type-options', 'nosniff'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('cache-control', ''), ('date', 'Thu, 23 Aug 2012 07:30:52 GMT')] + + diff --git a/lib/github/tests/ReplayData/Repository.testDeleteFile.txt b/lib/github/tests/ReplayData/Repository.testDeleteFile.txt new file mode 100644 index 0000000000..93ae6f2aac --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testDeleteFile.txt @@ -0,0 +1,21 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/contents/doc/testCreateUpdateDeleteFile.md +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '16'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4997'), ('server', 'nginx/1.0.13'), ('last-modified', 'Wed, 05 Sep 2012 17:54:40 GMT'), ('connection', 'keep-alive'), ('etag', '"71786feb5f476112c5a8aa894ee7ca6c"'), ('cache-control', 'private, s-maxage=60, max-age=60'), ('date', 'Sat, 08 Sep 2012 10:43:48 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"file","sha":"5628799a7d517a4aaa0c1a7004d07569cd154df0","path":"doc/testCreateUpdateDeleteFile.md","encoding":"base64","_links":{"self":"https://api.github.com/repos/jacquev6/PyGithub/contents/doc/testCreateUpdateDeleteFile.md","html":"https://github.com/jacquev6/PyGithub/blob/master/doc/testCreateUpdateDeleteFile.md","git":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/5628799a7d517a4aaa0c1a7004d07569cd154df0"},"content":"SGVsbG8gd29ybGQ=","size":16,"name":"doc/testCreateUpdateDeleteFile.md"} + +https +DELETE +api.github.com +None +/repos/jacquev6/PyGithub/contents/doc/testCreateUpdateDeleteFile.md +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"branch": "master", "message": "Delete file for testDeleteFile", "sha": "5628799a7d517a4aaa0c1a7004d07569cd154df0"} +200 +[('status', '200 OK'), ('content-length', '16'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4997'), ('server', 'nginx/1.0.13'), ('last-modified', 'Wed, 05 Sep 2012 17:54:40 GMT'), ('connection', 'keep-alive'), ('etag', '"71786feb5f476112c5a8aa894ee7ca6c"'), ('cache-control', 'private, s-maxage=60, max-age=60'), ('date', 'Sat, 08 Sep 2012 10:43:48 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"content": null, "commit": {"committer": {"date": "2014-11-07T22:01:45Z", "name": "Scott Chacon", "email": "schacon@gmail.com"}, "author": {"date": "2014-11-07T22:01:45Z", "name": "Scott Chacon", "email": "schacon@gmail.com"}, "url": "https://api.github.com/repos/jacquev6/PyGithub/git/commits/7638417db6d59f3c431d3e1f261cc637155684cd", "tree": {"url": "https://api.github.com/repos/jacquev6/PyGithub/git/trees/691272480426f78a0138979dd3ce63b77f706feb", "sha": "691272480426f78a0138979dd3ce63b77f706feb"}, "html_url": "https://github.com/jacquev6/PyGithub/git/commit/7638417db6d59f3c431d3e1f261cc637155684cd", "sha": "7638417db6d59f3c431d3e1f261cc637155684cd", "parents": [{"url": "https://api.github.com/repos/jacquev6/PyGithub/git/commits/1acc419d4d6a9ce985db7be48c6349a0475975b5", "sha": "1acc419d4d6a9ce985db7be48c6349a0475975b5", "html_url": "https://github.com/jacquev6/PyGithub/git/commit/1acc419d4d6a9ce985db7be48c6349a0475975b5"}], "message": "Delete file for testDeleteFile"}} diff --git a/lib/github/tests/ReplayData/Repository.testEditWithAllArguments.txt b/lib/github/tests/ReplayData/Repository.testEditWithAllArguments.txt new file mode 100644 index 0000000000..c98b91b1e3 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testEditWithAllArguments.txt @@ -0,0 +1,22 @@ +https +PATCH +api.github.com +None +/repos/jacquev6/PyGithub +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"has_wiki": false, "name": "PyGithub", "has_downloads": true, "has_issues": true, "homepage": "http://vincent-jacques.net/PyGithub", "private": true, "description": "Description edited by PyGithub"} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4953'), ('content-length', '1109'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"749313ec2d171323deb61f9f4c85e84f"'), ('date', 'Sat, 26 May 2012 11:22:13 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"clone_url":"https://github.com/jacquev6/PyGithub.git","has_downloads":true,"watchers":13,"updated_at":"2012-05-26T11:22:13Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","has_wiki":false,"has_issues":true,"fork":false,"forks":2,"size":412,"git_url":"git://github.com/jacquev6/PyGithub.git","private":false,"open_issues":16,"mirror_url":null,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"PyGithub","language":"Python","description":"Description edited by PyGithub","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-26T10:01:38Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"html_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub"} + +https +PATCH +api.github.com +None +/repos/jacquev6/PyGithub +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"name": "PyGithub", "description": "Python library implementing the full Github API v3"} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4952'), ('content-length', '1129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"c1328d95af7d85267acb5754968b2c0b"'), ('date', 'Sat, 26 May 2012 11:22:13 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"clone_url":"https://github.com/jacquev6/PyGithub.git","has_downloads":true,"watchers":13,"updated_at":"2012-05-26T11:22:13Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","mirror_url":null,"has_wiki":false,"has_issues":true,"fork":false,"forks":2,"size":412,"private":false,"open_issues":16,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-26T10:01:38Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"git_url":"git://github.com/jacquev6/PyGithub.git","html_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub"} + diff --git a/lib/github/tests/ReplayData/Repository.testEditWithDefaultBranch.txt b/lib/github/tests/ReplayData/Repository.testEditWithDefaultBranch.txt new file mode 100644 index 0000000000..88a013c1e7 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testEditWithDefaultBranch.txt @@ -0,0 +1,11 @@ +https +PATCH +api.github.com +None +/repos/jacquev6/PyGithub +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"default_branch": "master", "name": "PyGithub"} +200 +[('status', '200 OK'), ('content-length', '1264'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-remaining', '4971'), ('server', 'nginx'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"4493662efd70c37f486a910d29ef99c1"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Sat, 03 Nov 2012 08:41:07 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"master_branch":"master","watchers":97,"pushed_at":"2012-11-03T08:25:58Z","watchers_count":97,"forks":27,"svn_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","owner":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"jacquev6","id":327146},"open_issues":11,"open_issues_count":11,"url":"https://api.github.com/repos/jacquev6/PyGithub","updated_at":"2012-11-03T08:41:07Z","permissions":{"push":true,"pull":true,"admin":true},"default_branch":"master","html_url":"https://github.com/jacquev6/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","language":"Python","has_downloads":true,"ssh_url":"git@github.com:jacquev6/PyGithub.git","size":256,"mirror_url":null,"fork":false,"full_name":"jacquev6/PyGithub","forks_count":27,"name":"PyGithub","created_at":"2012-02-25T12:53:47Z","git_url":"git://github.com/jacquev6/PyGithub.git","homepage":"http://vincent-jacques.net/PyGithub","has_issues":true,"private":false,"id":3544490,"network_count":27,"has_wiki":true} + diff --git a/lib/github/tests/ReplayData/Repository.testEditWithoutArguments.txt b/lib/github/tests/ReplayData/Repository.testEditWithoutArguments.txt new file mode 100644 index 0000000000..66ea6774f2 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testEditWithoutArguments.txt @@ -0,0 +1,11 @@ +https +PATCH +api.github.com +None +/repos/jacquev6/PyGithub +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"name": "PyGithub"} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4956'), ('content-length', '1129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"97977b426859a02f4d2a3fa4764b1a8e"'), ('date', 'Sat, 26 May 2012 11:21:43 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"description":"Python library implementing the full Github API v3","full_name":"jacquev6/PyGithub","has_wiki":false,"has_issues":true,"updated_at":"2012-05-26T10:01:38Z","forks":2,"mirror_url":null,"homepage":"http://vincent-jacques.net/PyGithub","ssh_url":"git@github.com:jacquev6/PyGithub.git","open_issues":16,"fork":false,"svn_url":"https://github.com/jacquev6/PyGithub","pushed_at":"2012-05-26T10:01:38Z","size":412,"html_url":"https://github.com/jacquev6/PyGithub","private":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"name":"PyGithub","has_downloads":true,"language":"Python","watchers":13,"git_url":"git://github.com/jacquev6/PyGithub.git","id":3544490,"permissions":{"admin":true,"pull":true,"push":true},"created_at":"2012-02-25T12:53:47Z"} + diff --git a/lib/github/tests/ReplayData/Repository.testGetArchiveLink.txt b/lib/github/tests/ReplayData/Repository.testGetArchiveLink.txt new file mode 100644 index 0000000000..121dbdd079 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetArchiveLink.txt @@ -0,0 +1,44 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/tarball +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +302 +[('status', '302 Found'), ('content-length', '0'), ('x-content-type-options', 'nosniff'), ('expires', 'Sat, 08 Sep 2012 11:03:00 GMT'), ('x-ratelimit-remaining', '4990'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('location', 'https://nodeload.github.com/jacquev6/PyGithub/tarball/master'), ('cache-control', 'public, must-revalidate, max-age=0'), ('date', 'Sat, 08 Sep 2012 11:03:00 GMT'), ('content-type', 'text/html;charset=utf-8')] + + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/zipball +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +302 +[('status', '302 Found'), ('x-ratelimit-remaining', '4989'), ('x-content-type-options', 'nosniff'), ('expires', 'Sat, 08 Sep 2012 11:03:01 GMT'), ('content-length', '0'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('location', 'https://nodeload.github.com/jacquev6/PyGithub/zipball/master'), ('cache-control', 'public, must-revalidate, max-age=0'), ('date', 'Sat, 08 Sep 2012 11:03:01 GMT'), ('content-type', 'text/html;charset=utf-8')] + + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/zipball/master +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +302 +[('status', '302 Found'), ('content-length', '0'), ('x-content-type-options', 'nosniff'), ('expires', 'Sat, 08 Sep 2012 11:03:01 GMT'), ('x-ratelimit-remaining', '4988'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('location', 'https://nodeload.github.com/jacquev6/PyGithub/zipball/master'), ('cache-control', 'public, must-revalidate, max-age=0'), ('date', 'Sat, 08 Sep 2012 11:03:01 GMT'), ('content-type', 'text/html;charset=utf-8')] + + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/tarball/develop +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +302 +[('status', '302 Found'), ('x-ratelimit-remaining', '4987'), ('x-content-type-options', 'nosniff'), ('expires', 'Sat, 08 Sep 2012 11:03:01 GMT'), ('content-length', '0'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('location', 'https://nodeload.github.com/jacquev6/PyGithub/tarball/develop'), ('cache-control', 'public, must-revalidate, max-age=0'), ('date', 'Sat, 08 Sep 2012 11:03:01 GMT'), ('content-type', 'text/html;charset=utf-8')] + + diff --git a/lib/github/tests/ReplayData/Repository.testGetBranch.txt b/lib/github/tests/ReplayData/Repository.testGetBranch.txt new file mode 100644 index 0000000000..af6b8d3f8c --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetBranch.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/branches/develop +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4997'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('content-length', '1679'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"b604c4203d816dfb31c48acf4171ed76"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Sat, 08 Sep 2012 12:06:47 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"_links":{"self":"https://api.github.com/repos/jacquev6/PyGithub/branches/develop","html":"https://github.com/jacquev6/PyGithub/tree/develop"},"commit":{"sha":"03058a36164d2a7d946db205f25538434fa27d94","author":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"},"commit":{"message":"Commit statuses (issue #67)","author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-09-08T04:41:15-07:00"},"comment_count":0,"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/03058a36164d2a7d946db205f25538434fa27d94","tree":{"sha":"b1b660dc63a2de976b7c5aa1e303adce299bbeb8","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/b1b660dc63a2de976b7c5aa1e303adce299bbeb8"},"committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-09-08T04:41:15-07:00"}},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/03058a36164d2a7d946db205f25538434fa27d94","parents":[{"sha":"f109c644fddee5512f8e88a4a22d9c3aac68a306","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/f109c644fddee5512f8e88a4a22d9c3aac68a306"}],"committer":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png"}},"name":"develop"} + diff --git a/lib/github/tests/ReplayData/Repository.testGetComments.txt b/lib/github/tests/ReplayData/Repository.testGetComments.txt new file mode 100644 index 0000000000..196495a169 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetComments.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/comments +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4994'), ('content-length', '4307'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"2664cb68cf94b65a884d6867aa13e7d2"'), ('date', 'Sun, 27 May 2012 06:42:01 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-18T08:46:09Z","position":null,"body":"probably a noob question: does this completion refer to autocompletion in IDE's/editors? \nI have observed that this is pretty erratic sometimes. I'm using PyDev+Eclipse.\nFor example, in the tutorial from the readme, `g.get_u` gets autocompleted correctly, but `g.get_user().get_r` (or any method or attribute applicable to NamedUsers/AuthenticatedUser, really) does not show autocompletion to `g.get_user().get_repo()`. Is that by design? It makes exploring the library/API a bit cumbersome. ","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1347033","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","created_at":"2012-05-18T08:46:09Z","path":null,"line":null,"user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":1347033,"html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1347033"},{"updated_at":"2012-05-18T09:03:40Z","position":null,"body":"No, it has nothing to do with auto-completion in IDEs :D\n\nGithub API v3 sends only the main part of objects in reply to some requests. So, if the user wants an attribute that has not been received yet, I have to do another request to complete the object.\n\nYet, in version 1.0 (see the milesone), my library will be much more readable for IDEs and their auto-completion mechanisms, because I am giving up the meta-description that I used until 0.6, and I'm now generating much more traditional code, that you will be able to explore as if it was written manually.\n\nIf you want to take the time to open an issue about auto-completion in IDEs, I'll deal with it in milestone 1.0.\n\nThanks !","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1347083","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","created_at":"2012-05-18T08:59:28Z","path":null,"line":null,"user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":1347083,"html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1347083"},{"updated_at":"2012-05-18T10:55:55Z","position":null,"body":"Ah, thanks for the clarification. :blush:\n\nI made issue #27 for the autocompletion. I already suspected something like this meta-description magic, since I tried to read some of the code and it was pretty arcane. I attributed that to my pythonic noobness, though. Thank you. ","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1347397","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","created_at":"2012-05-18T10:54:23Z","path":null,"line":null,"user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":1347397,"html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1347397"},{"updated_at":"2012-05-22T18:49:34Z","position":null,"body":"Comment created by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1362000","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","created_at":"2012-05-22T18:49:34Z","path":"codegen/templates/GithubObject.MethodBody.UseResult.py","line":26,"user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":1362000,"html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1362000"}] + diff --git a/lib/github/tests/ReplayData/Repository.testGetCommits.txt b/lib/github/tests/ReplayData/Repository.testGetCommits.txt new file mode 100644 index 0000000000..9eca35b93c --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetCommits.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/commits +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4979'), ('content-length', '46151'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="first"'), ('etag', '"5443e5772e0bda0813a09a3620a8f7c2"'), ('date', 'Sun, 27 May 2012 06:45:57 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4303c5b90e2216d927155e9609436ccb8984c495","sha":"4303c5b90e2216d927155e9609436ccb8984c495"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16","sha":"0cec0d25e606c023a62a4fc7cdc815309ebf6d16"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-25T10:14:34-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","message":"Merge branch 'develop'","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-25T10:14:34-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/78735573611521bb3ade95921c668097e2a4dc5e","sha":"78735573611521bb3ade95921c668097e2a4dc5e"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"0cec0d25e606c023a62a4fc7cdc815309ebf6d16","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cb0313157bf904f2d364377d35d9397b269547a5","sha":"cb0313157bf904f2d364377d35d9397b269547a5"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-25T10:13:33-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16","message":"Publish version 0.7","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-25T10:13:33-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/78735573611521bb3ade95921c668097e2a4dc5e","sha":"78735573611521bb3ade95921c668097e2a4dc5e"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cb0313157bf904f2d364377d35d9397b269547a5","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"cb0313157bf904f2d364377d35d9397b269547a5","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4303c5b90e2216d927155e9609436ccb8984c495","sha":"4303c5b90e2216d927155e9609436ccb8984c495"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5bb654d26dd014d36794acd1e6ecf3736f12aad7","sha":"5bb654d26dd014d36794acd1e6ecf3736f12aad7"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-25T10:04:22-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/cb0313157bf904f2d364377d35d9397b269547a5","message":"Merge branch 'topic/Authentication' into develop","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-25T10:04:22-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/59d755d95bc2e2de4dcef70a7c73e81e677f610b","sha":"59d755d95bc2e2de4dcef70a7c73e81e677f610b"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5bb654d26dd014d36794acd1e6ecf3736f12aad7","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"5bb654d26dd014d36794acd1e6ecf3736f12aad7","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4303c5b90e2216d927155e9609436ccb8984c495","sha":"4303c5b90e2216d927155e9609436ccb8984c495"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-25T05:10:54-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/5bb654d26dd014d36794acd1e6ecf3736f12aad7","message":"Implement the three authentication schemes","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-25T05:10:54-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/59d755d95bc2e2de4dcef70a7c73e81e677f610b","sha":"59d755d95bc2e2de4dcef70a7c73e81e677f610b"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4303c5b90e2216d927155e9609436ccb8984c495","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"4303c5b90e2216d927155e9609436ccb8984c495","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/936f4a97f1a86392637ec002bbf89ff036a5062d","sha":"936f4a97f1a86392637ec002bbf89ff036a5062d"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2a7e80e6421c5d4d201d60619068dea6bae612cb","sha":"2a7e80e6421c5d4d201d60619068dea6bae612cb"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-04-17T10:55:16-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/4303c5b90e2216d927155e9609436ccb8984c495","message":"Merge branch 'develop'","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-04-17T10:55:16-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/f492784d8ca837779650d1fb406a1a3587a764ad","sha":"f492784d8ca837779650d1fb406a1a3587a764ad"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2a7e80e6421c5d4d201d60619068dea6bae612cb","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"2a7e80e6421c5d4d201d60619068dea6bae612cb","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0af24499a98e85f8ab2191898e8b809e5cebd4c5","sha":"0af24499a98e85f8ab2191898e8b809e5cebd4c5"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-04-17T10:55:02-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/2a7e80e6421c5d4d201d60619068dea6bae612cb","message":"Publish version 0.6","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-04-17T10:55:02-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/f492784d8ca837779650d1fb406a1a3587a764ad","sha":"f492784d8ca837779650d1fb406a1a3587a764ad"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0af24499a98e85f8ab2191898e8b809e5cebd4c5","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"0af24499a98e85f8ab2191898e8b809e5cebd4c5","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e7dca9143a23b8e2045a4a910a4a329007b10086","sha":"e7dca9143a23b8e2045a4a910a4a329007b10086"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e5ae923a68a9ae295ce5aa20b1227253de60e918","sha":"e5ae923a68a9ae295ce5aa20b1227253de60e918"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-04-17T10:47:43-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/0af24499a98e85f8ab2191898e8b809e5cebd4c5","message":"Merge branch 'topic/issue_21' into develop","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-04-17T10:47:43-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/e323899d50915b1b8bfca859ceaaa4a24db5d442","sha":"e323899d50915b1b8bfca859ceaaa4a24db5d442"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e5ae923a68a9ae295ce5aa20b1227253de60e918","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"e5ae923a68a9ae295ce5aa20b1227253de60e918","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2f64b625f7e2afc9bef61d0decb459e2ef65c550","sha":"2f64b625f7e2afc9bef61d0decb459e2ef65c550"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-04-17T10:47:11-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/e5ae923a68a9ae295ce5aa20b1227253de60e918","message":"Add facilities for uniform debug printing","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-04-17T10:47:11-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/e323899d50915b1b8bfca859ceaaa4a24db5d442","sha":"e323899d50915b1b8bfca859ceaaa4a24db5d442"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2f64b625f7e2afc9bef61d0decb459e2ef65c550","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"2f64b625f7e2afc9bef61d0decb459e2ef65c550","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/590798d349cba7de6e83b43aa5d4f8b0a38e685d","sha":"590798d349cba7de6e83b43aa5d4f8b0a38e685d"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-04-17T10:21:36-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/2f64b625f7e2afc9bef61d0decb459e2ef65c550","message":"Repository.permissions","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-04-17T10:28:18-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/23140a7b5cd3a7e6f70181775c8f56411223cf13","sha":"23140a7b5cd3a7e6f70181775c8f56411223cf13"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/590798d349cba7de6e83b43aa5d4f8b0a38e685d","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"590798d349cba7de6e83b43aa5d4f8b0a38e685d","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e7dca9143a23b8e2045a4a910a4a329007b10086","sha":"e7dca9143a23b8e2045a4a910a4a329007b10086"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-04-17T10:18:09-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/590798d349cba7de6e83b43aa5d4f8b0a38e685d","message":"Do not fail if Github adds an attribute in an object","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-04-17T10:28:17-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/2eb1bde5d5aec4c8e146cba6dbadfa862062fe59","sha":"2eb1bde5d5aec4c8e146cba6dbadfa862062fe59"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e7dca9143a23b8e2045a4a910a4a329007b10086","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"e7dca9143a23b8e2045a4a910a4a329007b10086","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/64c6a1e975e61b9c1449bed016cd19f33ee4b1c5","sha":"64c6a1e975e61b9c1449bed016cd19f33ee4b1c5"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ab3f9b422cb3043d35cf6002fc9c042f8ead8c2a","sha":"ab3f9b422cb3043d35cf6002fc9c042f8ead8c2a"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-30T05:03:15-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/e7dca9143a23b8e2045a4a910a4a329007b10086","message":"Merge branch 'topic/Recomplete' into develop","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-30T05:03:15-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/68028c858bce6e56a0123f1c7e71be5b0c0ac7f5","sha":"68028c858bce6e56a0123f1c7e71be5b0c0ac7f5"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ab3f9b422cb3043d35cf6002fc9c042f8ead8c2a","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"ab3f9b422cb3043d35cf6002fc9c042f8ead8c2a","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/632d8b63c32a2b79e87eb3b93e1ad228724de4bd","sha":"632d8b63c32a2b79e87eb3b93e1ad228724de4bd"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-30T05:02:43-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/ab3f9b422cb3043d35cf6002fc9c042f8ead8c2a","message":"NamedUser.create_gist","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-30T05:02:43-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/68028c858bce6e56a0123f1c7e71be5b0c0ac7f5","sha":"68028c858bce6e56a0123f1c7e71be5b0c0ac7f5"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/632d8b63c32a2b79e87eb3b93e1ad228724de4bd","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"632d8b63c32a2b79e87eb3b93e1ad228724de4bd","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/64c6a1e975e61b9c1449bed016cd19f33ee4b1c5","sha":"64c6a1e975e61b9c1449bed016cd19f33ee4b1c5"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-30T03:13:08-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/632d8b63c32a2b79e87eb3b93e1ad228724de4bd","message":"GitRef.delete","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-30T03:13:08-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/b733d1dab08609c2049a8490fdda25f9e68ae2bc","sha":"b733d1dab08609c2049a8490fdda25f9e68ae2bc"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/64c6a1e975e61b9c1449bed016cd19f33ee4b1c5","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"64c6a1e975e61b9c1449bed016cd19f33ee4b1c5","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/936f4a97f1a86392637ec002bbf89ff036a5062d","sha":"936f4a97f1a86392637ec002bbf89ff036a5062d"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/99963536fc81db3b9986c761b9dd08de22089aa2","sha":"99963536fc81db3b9986c761b9dd08de22089aa2"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-30T03:10:06-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/64c6a1e975e61b9c1449bed016cd19f33ee4b1c5","message":"Merge branch 'topic/GenerateReferenceOfApis' into develop","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-30T03:10:06-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/623fd43b5299b8707a3b10def154f6725b31361c","sha":"623fd43b5299b8707a3b10def154f6725b31361c"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/99963536fc81db3b9986c761b9dd08de22089aa2","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"99963536fc81db3b9986c761b9dd08de22089aa2","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/8d57522bbd15d1fb6b616fae795cd8721deb1c4d","sha":"8d57522bbd15d1fb6b616fae795cd8721deb1c4d"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-30T03:09:05-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/99963536fc81db3b9986c761b9dd08de22089aa2","message":"GenerateReferenceOfApis.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-30T03:09:05-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/623fd43b5299b8707a3b10def154f6725b31361c","sha":"623fd43b5299b8707a3b10def154f6725b31361c"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/8d57522bbd15d1fb6b616fae795cd8721deb1c4d","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"8d57522bbd15d1fb6b616fae795cd8721deb1c4d","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1140a91f3e45d09bc15463724f178a7ebf8e3149","sha":"1140a91f3e45d09bc15463724f178a7ebf8e3149"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-30T03:08:51-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/8d57522bbd15d1fb6b616fae795cd8721deb1c4d","message":"Rename GenerateDocumentation.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-30T03:08:51-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/8eafa52103271d36b1a46e056716f29af46ccb41","sha":"8eafa52103271d36b1a46e056716f29af46ccb41"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1140a91f3e45d09bc15463724f178a7ebf8e3149","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"1140a91f3e45d09bc15463724f178a7ebf8e3149","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/936f4a97f1a86392637ec002bbf89ff036a5062d","sha":"936f4a97f1a86392637ec002bbf89ff036a5062d"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-30T03:07:51-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/1140a91f3e45d09bc15463724f178a7ebf8e3149","message":"Normalize ReferenceOfApis.md","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-30T03:07:51-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/6621cb8c710645471b3235cfa7e34eaf1a424320","sha":"6621cb8c710645471b3235cfa7e34eaf1a424320"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/936f4a97f1a86392637ec002bbf89ff036a5062d","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"936f4a97f1a86392637ec002bbf89ff036a5062d","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a3be28756101370fbc689eec3a7825c4c385a6c9","sha":"a3be28756101370fbc689eec3a7825c4c385a6c9"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e10470481795506e2c232720e2a9ecf588c8b567","sha":"e10470481795506e2c232720e2a9ecf588c8b567"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T13:50:17-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/936f4a97f1a86392637ec002bbf89ff036a5062d","message":"Merge branch 'develop'","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T13:50:17-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/f315f93b637cbd7883c1aed5b58f12d4a812ff26","sha":"f315f93b637cbd7883c1aed5b58f12d4a812ff26"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e10470481795506e2c232720e2a9ecf588c8b567","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"e10470481795506e2c232720e2a9ecf588c8b567","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e456549e5265406f8090ae5145255c8ca9ea5e4e","sha":"e456549e5265406f8090ae5145255c8ca9ea5e4e"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T13:49:21-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/e10470481795506e2c232720e2a9ecf588c8b567","message":"Publish version 0.5","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T13:49:21-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/f315f93b637cbd7883c1aed5b58f12d4a812ff26","sha":"f315f93b637cbd7883c1aed5b58f12d4a812ff26"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e456549e5265406f8090ae5145255c8ca9ea5e4e","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"e456549e5265406f8090ae5145255c8ca9ea5e4e","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2469c6e1aeb7919126a8271f6980b555b167e8b0","sha":"2469c6e1aeb7919126a8271f6980b555b167e8b0"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a91131be42eb328ae030f584af500f56aa08424b","sha":"a91131be42eb328ae030f584af500f56aa08424b"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T12:02:07-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/e456549e5265406f8090ae5145255c8ca9ea5e4e","message":"Merge branch 'topic/CompleteImplementation' into develop","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T12:02:07-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/c11065b6df8d201a09bd24f1b3e4b2f9f57a8321","sha":"c11065b6df8d201a09bd24f1b3e4b2f9f57a8321"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a91131be42eb328ae030f584af500f56aa08424b","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"a91131be42eb328ae030f584af500f56aa08424b","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2469c6e1aeb7919126a8271f6980b555b167e8b0","sha":"2469c6e1aeb7919126a8271f6980b555b167e8b0"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T12:00:36-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/a91131be42eb328ae030f584af500f56aa08424b","message":"Finaly do a poor implementation of Github.get_gists","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T12:01:46-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/c11065b6df8d201a09bd24f1b3e4b2f9f57a8321","sha":"c11065b6df8d201a09bd24f1b3e4b2f9f57a8321"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2469c6e1aeb7919126a8271f6980b555b167e8b0","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"2469c6e1aeb7919126a8271f6980b555b167e8b0","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a0cc821c1beada4aa9ca0d5218664c5372720936","sha":"a0cc821c1beada4aa9ca0d5218664c5372720936"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a655d0424135befd3a0d53f3f7eff2d1c754854f","sha":"a655d0424135befd3a0d53f3f7eff2d1c754854f"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T12:01:32-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/2469c6e1aeb7919126a8271f6980b555b167e8b0","message":"Merge branch 'topic/RestoreTests' into develop","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T12:01:32-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/b88afa928c59940b2c88faa1a9a9826e50ea83ef","sha":"b88afa928c59940b2c88faa1a9a9826e50ea83ef"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a655d0424135befd3a0d53f3f7eff2d1c754854f","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"a655d0424135befd3a0d53f3f7eff2d1c754854f","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ce62e91268aa34dad0ba0dbee4769933e3a71e50","sha":"ce62e91268aa34dad0ba0dbee4769933e3a71e50"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T11:49:56-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/a655d0424135befd3a0d53f3f7eff2d1c754854f","message":"Improve integration tests coverage","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T11:49:56-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/b88afa928c59940b2c88faa1a9a9826e50ea83ef","sha":"b88afa928c59940b2c88faa1a9a9826e50ea83ef"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ce62e91268aa34dad0ba0dbee4769933e3a71e50","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"ce62e91268aa34dad0ba0dbee4769933e3a71e50","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1c88ee221b7f995855a1fdfac7d0ba19db918739","sha":"1c88ee221b7f995855a1fdfac7d0ba19db918739"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T11:37:57-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/ce62e91268aa34dad0ba0dbee4769933e3a71e50","message":"Cosmetic change in integration test","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T11:37:57-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/9e0956f8808d6a07d610e08ad585fb6593527f39","sha":"9e0956f8808d6a07d610e08ad585fb6593527f39"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1c88ee221b7f995855a1fdfac7d0ba19db918739","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"1c88ee221b7f995855a1fdfac7d0ba19db918739","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/bd1a5dff3c547c634b2d89f5847218820e343883","sha":"bd1a5dff3c547c634b2d89f5847218820e343883"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T11:35:44-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/1c88ee221b7f995855a1fdfac7d0ba19db918739","message":"Commit replay data for integration test","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T11:35:44-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/14fa47c5e331f1ebdc164ff341c70fc7dcfd2d83","sha":"14fa47c5e331f1ebdc164ff341c70fc7dcfd2d83"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/bd1a5dff3c547c634b2d89f5847218820e343883","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"bd1a5dff3c547c634b2d89f5847218820e343883","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b226b5b4e2f44107dde674e7a5d3e88d4e3518df","sha":"b226b5b4e2f44107dde674e7a5d3e88d4e3518df"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T11:35:11-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/bd1a5dff3c547c634b2d89f5847218820e343883","message":"Fix integration tests","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T11:35:11-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/0cedd1c9f1986fc05f5bbfaa689d5a7fa7c7f424","sha":"0cedd1c9f1986fc05f5bbfaa689d5a7fa7c7f424"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b226b5b4e2f44107dde674e7a5d3e88d4e3518df","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"b226b5b4e2f44107dde674e7a5d3e88d4e3518df","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/25dbd4053e982402c7d92139f167dbe46008c932","sha":"25dbd4053e982402c7d92139f167dbe46008c932"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T11:17:26-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/b226b5b4e2f44107dde674e7a5d3e88d4e3518df","message":"Restore test coverage","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T11:17:26-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/35bac621cbeebac930faeb2a5d0ae01647027b57","sha":"35bac621cbeebac930faeb2a5d0ae01647027b57"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/25dbd4053e982402c7d92139f167dbe46008c932","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"25dbd4053e982402c7d92139f167dbe46008c932","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a0cc821c1beada4aa9ca0d5218664c5372720936","sha":"a0cc821c1beada4aa9ca0d5218664c5372720936"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T11:05:18-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/25dbd4053e982402c7d92139f167dbe46008c932","message":"Fix unit tests","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T11:05:18-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/21fa30dc9c099a96fb3d3018ca04934206702931","sha":"21fa30dc9c099a96fb3d3018ca04934206702931"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a0cc821c1beada4aa9ca0d5218664c5372720936","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"a0cc821c1beada4aa9ca0d5218664c5372720936","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c1440bdf20bfeb62684c6d1779448719dce9d2df","sha":"c1440bdf20bfeb62684c6d1779448719dce9d2df"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T09:45:20-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/a0cc821c1beada4aa9ca0d5218664c5372720936","message":"Fix documentation","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T09:45:20-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/df309b8e8b9359740688f6ecdec4e16a946eedac","sha":"df309b8e8b9359740688f6ecdec4e16a946eedac"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c1440bdf20bfeb62684c6d1779448719dce9d2df","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"c1440bdf20bfeb62684c6d1779448719dce9d2df","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0909fec395bb1f97e2580d6a029cfc64b352aff9","sha":"0909fec395bb1f97e2580d6a029cfc64b352aff9"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1095d304b7fab3818dcb4c42093c8c56d3ac05e4","sha":"1095d304b7fab3818dcb4c42093c8c56d3ac05e4"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T09:36:28-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/c1440bdf20bfeb62684c6d1779448719dce9d2df","message":"Merge branch 'topic/CompleteImplementation' into develop","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T09:36:28-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/62acfc5826055bea7623e35982768674fb672bff","sha":"62acfc5826055bea7623e35982768674fb672bff"}}}] + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/commits?last_sha=c1440bdf20bfeb62684c6d1779448719dce9d2df&top=master +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4978'), ('content-length', '44844'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="first"'), ('etag', '"b1e58b63cf08fef49b20ee7682f4eadb"'), ('date', 'Sun, 27 May 2012 06:45:59 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1095d304b7fab3818dcb4c42093c8c56d3ac05e4","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"1095d304b7fab3818dcb4c42093c8c56d3ac05e4","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/bd39726f7cf86ea7ffb33b5718241fdab5fc8f53","sha":"bd39726f7cf86ea7ffb33b5718241fdab5fc8f53"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T09:28:03-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/1095d304b7fab3818dcb4c42093c8c56d3ac05e4","message":"Repository.compare","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T09:28:03-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/62acfc5826055bea7623e35982768674fb672bff","sha":"62acfc5826055bea7623e35982768674fb672bff"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/bd39726f7cf86ea7ffb33b5718241fdab5fc8f53","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"bd39726f7cf86ea7ffb33b5718241fdab5fc8f53","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1d2b27824d20612066d84be42d6691c66bb18ef4","sha":"1d2b27824d20612066d84be42d6691c66bb18ef4"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-18T23:40:52-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/bd39726f7cf86ea7ffb33b5718241fdab5fc8f53","message":"AuthenticatedUser.get_issues","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-18T23:40:52-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/e0cf809423855e97a1c418cd0574aceaea673e7c","sha":"e0cf809423855e97a1c418cd0574aceaea673e7c"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1d2b27824d20612066d84be42d6691c66bb18ef4","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"1d2b27824d20612066d84be42d6691c66bb18ef4","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6af2bfd0d46bc0eeb8c37b85c7b3003e0e4ae297","sha":"6af2bfd0d46bc0eeb8c37b85c7b3003e0e4ae297"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-18T23:32:34-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/1d2b27824d20612066d84be42d6691c66bb18ef4","message":"Repository.get_git_tree with 'recursive'","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-18T23:32:34-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/eece2904086e172c103a3f6c72d72577947d69af","sha":"eece2904086e172c103a3f6c72d72577947d69af"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6af2bfd0d46bc0eeb8c37b85c7b3003e0e4ae297","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"6af2bfd0d46bc0eeb8c37b85c7b3003e0e4ae297","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a475d685d8ae709095d09094ea0962ac182d33f0","sha":"a475d685d8ae709095d09094ea0962ac182d33f0"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-16T23:42:54-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/6af2bfd0d46bc0eeb8c37b85c7b3003e0e4ae297","message":"Optional parameter for Repository.create_git_tree","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-16T23:42:54-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/a07df55d4e61292bfd4d344221a744bdeb837cef","sha":"a07df55d4e61292bfd4d344221a744bdeb837cef"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a475d685d8ae709095d09094ea0962ac182d33f0","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"a475d685d8ae709095d09094ea0962ac182d33f0","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a85de99ea5b5e7b38bd68e076d09c49207b8687e","sha":"a85de99ea5b5e7b38bd68e076d09c49207b8687e"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-16T00:11:07-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/a475d685d8ae709095d09094ea0962ac182d33f0","message":"On the way to alternative inputs. Still needs unit and integration testing","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-16T00:11:07-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/929c7826e4116ccc48860420e96448c0b2dba912","sha":"929c7826e4116ccc48860420e96448c0b2dba912"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a85de99ea5b5e7b38bd68e076d09c49207b8687e","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"a85de99ea5b5e7b38bd68e076d09c49207b8687e","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/d24cf209ddd1758188c5f35344f76df818d09a46","sha":"d24cf209ddd1758188c5f35344f76df818d09a46"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-15T23:54:19-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/a85de99ea5b5e7b38bd68e076d09c49207b8687e","message":"dos2unix","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-15T23:54:19-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/45ab612f324d934efd24d37ec8a1a829ae9c819c","sha":"45ab612f324d934efd24d37ec8a1a829ae9c819c"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/d24cf209ddd1758188c5f35344f76df818d09a46","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"d24cf209ddd1758188c5f35344f76df818d09a46","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0909fec395bb1f97e2580d6a029cfc64b352aff9","sha":"0909fec395bb1f97e2580d6a029cfc64b352aff9"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-15T23:53:33-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/d24cf209ddd1758188c5f35344f76df818d09a46","message":"Be explicit about argumentChecker object","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-15T23:53:33-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/1737a3881dfa9524447b8841f441efa4d57b2e57","sha":"1737a3881dfa9524447b8841f441efa4d57b2e57"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0909fec395bb1f97e2580d6a029cfc64b352aff9","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"0909fec395bb1f97e2580d6a029cfc64b352aff9","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/50ac55b25ceba555b84709839f80447552450697","sha":"50ac55b25ceba555b84709839f80447552450697"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6e421e9e85e12008758870bc046bc2c6120af72a","sha":"6e421e9e85e12008758870bc046bc2c6120af72a"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-14T15:26:35-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/0909fec395bb1f97e2580d6a029cfc64b352aff9","message":"Merge branch 'topic/MoveGithubObjects' into develop","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-14T15:26:35-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/5e1db9b1002e45cbcde2f17253233b3cf50496ad","sha":"5e1db9b1002e45cbcde2f17253233b3cf50496ad"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6e421e9e85e12008758870bc046bc2c6120af72a","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"6e421e9e85e12008758870bc046bc2c6120af72a","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/32ed0ebc377efbed5b482b3d49ff54bf1715d55a","sha":"32ed0ebc377efbed5b482b3d49ff54bf1715d55a"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-14T15:24:49-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/6e421e9e85e12008758870bc046bc2c6120af72a","message":"Separate the three distributed classes","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-14T15:24:49-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/5e1db9b1002e45cbcde2f17253233b3cf50496ad","sha":"5e1db9b1002e45cbcde2f17253233b3cf50496ad"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/32ed0ebc377efbed5b482b3d49ff54bf1715d55a","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"32ed0ebc377efbed5b482b3d49ff54bf1715d55a","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/8213df1d744f251aa8e52229643a9f6ce352f3c0","sha":"8213df1d744f251aa8e52229643a9f6ce352f3c0"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-14T15:13:37-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/32ed0ebc377efbed5b482b3d49ff54bf1715d55a","message":"Move GithubObject","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-14T15:13:37-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/4836c31ec1b75e4b0145bae29cda338318b583a0","sha":"4836c31ec1b75e4b0145bae29cda338318b583a0"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/8213df1d744f251aa8e52229643a9f6ce352f3c0","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"8213df1d744f251aa8e52229643a9f6ce352f3c0","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/69cc298fd159f19eb204dd09f17d31dc4abc3d41","sha":"69cc298fd159f19eb204dd09f17d31dc4abc3d41"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-14T15:07:21-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/8213df1d744f251aa8e52229643a9f6ce352f3c0","message":"Simplify internal imports","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-14T15:07:21-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/e2cd74e9c3cf6ff69da96f8fad7e1e4120db56fb","sha":"e2cd74e9c3cf6ff69da96f8fad7e1e4120db56fb"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/69cc298fd159f19eb204dd09f17d31dc4abc3d41","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"69cc298fd159f19eb204dd09f17d31dc4abc3d41","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/85eef756353e13efcb24c726320cd2617c2a7bd8","sha":"85eef756353e13efcb24c726320cd2617c2a7bd8"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-14T14:55:06-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/69cc298fd159f19eb204dd09f17d31dc4abc3d41","message":"Make sure only three class definitions are distributed","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-14T14:56:12-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/a1d3e1193b5eeb668b0a9e4ec0286adeee2bfc98","sha":"a1d3e1193b5eeb668b0a9e4ec0286adeee2bfc98"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/85eef756353e13efcb24c726320cd2617c2a7bd8","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"85eef756353e13efcb24c726320cd2617c2a7bd8","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/50ac55b25ceba555b84709839f80447552450697","sha":"50ac55b25ceba555b84709839f80447552450697"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-14T14:31:32-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/85eef756353e13efcb24c726320cd2617c2a7bd8","message":"Move classes around","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-14T14:56:08-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/b0eadbf0e94e5098c5e4324f92e1546b3fe97ae2","sha":"b0eadbf0e94e5098c5e4324f92e1546b3fe97ae2"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/50ac55b25ceba555b84709839f80447552450697","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"50ac55b25ceba555b84709839f80447552450697","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/58b4396aa0e7cb72911b75cb035798143a06e0ee","sha":"58b4396aa0e7cb72911b75cb035798143a06e0ee"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/767d75a580279e457f9bc52bc308a17ff8ea0509","sha":"767d75a580279e457f9bc52bc308a17ff8ea0509"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:26:20-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/50ac55b25ceba555b84709839f80447552450697","message":"Merge branch 'topic/SplitGithubObjects' into develop","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:26:20-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/9541dc30b6f7eb32a0eeb99661974efc2bc2b2e0","sha":"9541dc30b6f7eb32a0eeb99661974efc2bc2b2e0"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/767d75a580279e457f9bc52bc308a17ff8ea0509","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"767d75a580279e457f9bc52bc308a17ff8ea0509","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/75e72ffa3066693291f7da03070666e8f885097a","sha":"75e72ffa3066693291f7da03070666e8f885097a"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:24:39-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/767d75a580279e457f9bc52bc308a17ff8ea0509","message":"Spliting GithubObjects.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:24:39-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/9541dc30b6f7eb32a0eeb99661974efc2bc2b2e0","sha":"9541dc30b6f7eb32a0eeb99661974efc2bc2b2e0"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/75e72ffa3066693291f7da03070666e8f885097a","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"75e72ffa3066693291f7da03070666e8f885097a","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/504047e218e6b34a3828ccc408431634f17b9504","sha":"504047e218e6b34a3828ccc408431634f17b9504"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:23:47-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/75e72ffa3066693291f7da03070666e8f885097a","message":"Spliting GithubObjects.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:23:47-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/ef565463ba492225543f538ddc2ac31d93301a3e","sha":"ef565463ba492225543f538ddc2ac31d93301a3e"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/504047e218e6b34a3828ccc408431634f17b9504","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"504047e218e6b34a3828ccc408431634f17b9504","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/960db1d5c9853e9f5fbbc9237c2c166ceef1f080","sha":"960db1d5c9853e9f5fbbc9237c2c166ceef1f080"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:19:54-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/504047e218e6b34a3828ccc408431634f17b9504","message":"Spliting GithubObjects.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:19:54-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/64a98d6a5045debec1ab928d49989c7f0f666be2","sha":"64a98d6a5045debec1ab928d49989c7f0f666be2"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/960db1d5c9853e9f5fbbc9237c2c166ceef1f080","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"960db1d5c9853e9f5fbbc9237c2c166ceef1f080","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/877dde23e140bbf038f9a2d8f0f07b4e3a965c61","sha":"877dde23e140bbf038f9a2d8f0f07b4e3a965c61"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:18:02-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/960db1d5c9853e9f5fbbc9237c2c166ceef1f080","message":"Spliting GithubObjects.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:18:02-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/b16b7a597ab3aa1876b1797426367114d4421642","sha":"b16b7a597ab3aa1876b1797426367114d4421642"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/877dde23e140bbf038f9a2d8f0f07b4e3a965c61","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"877dde23e140bbf038f9a2d8f0f07b4e3a965c61","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1c95ddfa09ec0aa1f07ee9ad50a77be1dd74b55e","sha":"1c95ddfa09ec0aa1f07ee9ad50a77be1dd74b55e"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:13:04-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/877dde23e140bbf038f9a2d8f0f07b4e3a965c61","message":"Spliting GithubObjects.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:13:04-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/307d8dc221f2a6097a520636f60238621e966f58","sha":"307d8dc221f2a6097a520636f60238621e966f58"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1c95ddfa09ec0aa1f07ee9ad50a77be1dd74b55e","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"1c95ddfa09ec0aa1f07ee9ad50a77be1dd74b55e","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/99564c1cab139d1e4678f5f83f60d26f1210db7e","sha":"99564c1cab139d1e4678f5f83f60d26f1210db7e"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:11:37-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/1c95ddfa09ec0aa1f07ee9ad50a77be1dd74b55e","message":"Spliting GithubObjects.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:11:37-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/26e23b86645628acb3f1764e8d81a213b9f3443f","sha":"26e23b86645628acb3f1764e8d81a213b9f3443f"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/99564c1cab139d1e4678f5f83f60d26f1210db7e","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"99564c1cab139d1e4678f5f83f60d26f1210db7e","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/231926207709ceaa61e87b64e34e17d85adecd9c","sha":"231926207709ceaa61e87b64e34e17d85adecd9c"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:04:42-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/99564c1cab139d1e4678f5f83f60d26f1210db7e","message":"Spliting GithubObjects.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:04:42-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/2824e5fdbb2811bb05eab1a225a9e64d4974b880","sha":"2824e5fdbb2811bb05eab1a225a9e64d4974b880"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/231926207709ceaa61e87b64e34e17d85adecd9c","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"231926207709ceaa61e87b64e34e17d85adecd9c","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/fb722625dddb9a32f75190723f7da12683b7c4b2","sha":"fb722625dddb9a32f75190723f7da12683b7c4b2"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:01:07-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/231926207709ceaa61e87b64e34e17d85adecd9c","message":"Spliting GithubObjects.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:01:07-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/54f99bd97e9223673a5947bdb8bd8dcafd9878d8","sha":"54f99bd97e9223673a5947bdb8bd8dcafd9878d8"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/fb722625dddb9a32f75190723f7da12683b7c4b2","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"fb722625dddb9a32f75190723f7da12683b7c4b2","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cab9d71603e127bdd1f600a759dccea1781fa1ab","sha":"cab9d71603e127bdd1f600a759dccea1781fa1ab"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:59:48-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/fb722625dddb9a32f75190723f7da12683b7c4b2","message":"Spliting GithubObjects.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:59:48-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/bd492ae3de0943fa17cf91c3840361855b38814d","sha":"bd492ae3de0943fa17cf91c3840361855b38814d"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cab9d71603e127bdd1f600a759dccea1781fa1ab","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"cab9d71603e127bdd1f600a759dccea1781fa1ab","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e648e5aeb5edc1fbf83e9d37d2a3cb57c005019a","sha":"e648e5aeb5edc1fbf83e9d37d2a3cb57c005019a"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:42:20-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/cab9d71603e127bdd1f600a759dccea1781fa1ab","message":"Spliting GithubObjects.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:42:20-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/3a4160a7930e855165662640ab9ac0b284930602","sha":"3a4160a7930e855165662640ab9ac0b284930602"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e648e5aeb5edc1fbf83e9d37d2a3cb57c005019a","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"e648e5aeb5edc1fbf83e9d37d2a3cb57c005019a","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4a5cf98e7f959f1b5d9af484760c25cd27d9180d","sha":"4a5cf98e7f959f1b5d9af484760c25cd27d9180d"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:40:44-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/e648e5aeb5edc1fbf83e9d37d2a3cb57c005019a","message":"Spliting GithubObjects.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:40:44-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/860a56be6edc3335b3f1d7c05163ce6c88d86d97","sha":"860a56be6edc3335b3f1d7c05163ce6c88d86d97"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4a5cf98e7f959f1b5d9af484760c25cd27d9180d","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"4a5cf98e7f959f1b5d9af484760c25cd27d9180d","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5d1add448e0b0b1dadb8c6094a9e5e19b255f67e","sha":"5d1add448e0b0b1dadb8c6094a9e5e19b255f67e"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:37:23-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/4a5cf98e7f959f1b5d9af484760c25cd27d9180d","message":"Spliting GithubObjects.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:37:23-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/27c76f8754af9bfc0bd2f285a9034a2a267f3f6b","sha":"27c76f8754af9bfc0bd2f285a9034a2a267f3f6b"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5d1add448e0b0b1dadb8c6094a9e5e19b255f67e","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"5d1add448e0b0b1dadb8c6094a9e5e19b255f67e","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0d9fc99a4b5d1ec6473c9c81c888917c132ffa65","sha":"0d9fc99a4b5d1ec6473c9c81c888917c132ffa65"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:36:15-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/5d1add448e0b0b1dadb8c6094a9e5e19b255f67e","message":"Spliting GithubObjects.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:36:15-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/c220b5fe6708feed4646e08f66cbd191d3074318","sha":"c220b5fe6708feed4646e08f66cbd191d3074318"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0d9fc99a4b5d1ec6473c9c81c888917c132ffa65","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"0d9fc99a4b5d1ec6473c9c81c888917c132ffa65","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b56aa09011378b014221f86dffb8304957a9e6bd","sha":"b56aa09011378b014221f86dffb8304957a9e6bd"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:35:28-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/0d9fc99a4b5d1ec6473c9c81c888917c132ffa65","message":"Spliting GithubObjects.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:35:28-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/df0cf9d9d9db0389f96d0448baaea45528983486","sha":"df0cf9d9d9db0389f96d0448baaea45528983486"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b56aa09011378b014221f86dffb8304957a9e6bd","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"b56aa09011378b014221f86dffb8304957a9e6bd","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/3e8169c0a98ce1e2c6a32ae1256ae0f735065df5","sha":"3e8169c0a98ce1e2c6a32ae1256ae0f735065df5"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:26:13-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/b56aa09011378b014221f86dffb8304957a9e6bd","message":"Spliting GithubObjects.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:26:13-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/5683cd9759e70f12141fb579a729e1c5d72256ad","sha":"5683cd9759e70f12141fb579a729e1c5d72256ad"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/3e8169c0a98ce1e2c6a32ae1256ae0f735065df5","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"3e8169c0a98ce1e2c6a32ae1256ae0f735065df5","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/378558f6cac6183b4a7100c0ce5eaad1cfff6717","sha":"378558f6cac6183b4a7100c0ce5eaad1cfff6717"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:18:28-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/3e8169c0a98ce1e2c6a32ae1256ae0f735065df5","message":"Spliting GithubObjects.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:18:28-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/e9bced97139773dcfbbefc6a4091e4458ee1fe23","sha":"e9bced97139773dcfbbefc6a4091e4458ee1fe23"}}}] + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/commits?last_sha=3e8169c0a98ce1e2c6a32ae1256ae0f735065df5&top=master +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4977'), ('content-length', '45317'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="first"'), ('etag', '"b341665cd46d642b2e6045772eb3278b"'), ('date', 'Sun, 27 May 2012 06:46:00 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/378558f6cac6183b4a7100c0ce5eaad1cfff6717","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"378558f6cac6183b4a7100c0ce5eaad1cfff6717","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/58b4396aa0e7cb72911b75cb035798143a06e0ee","sha":"58b4396aa0e7cb72911b75cb035798143a06e0ee"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:14:56-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/378558f6cac6183b4a7100c0ce5eaad1cfff6717","message":"Spliting GithubObjects.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:14:56-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/980bf3f66b3cbeec03a37db5263cbbc883b54681","sha":"980bf3f66b3cbeec03a37db5263cbbc883b54681"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/58b4396aa0e7cb72911b75cb035798143a06e0ee","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"58b4396aa0e7cb72911b75cb035798143a06e0ee","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a3be28756101370fbc689eec3a7825c4c385a6c9","sha":"a3be28756101370fbc689eec3a7825c4c385a6c9"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T23:30:43-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/58b4396aa0e7cb72911b75cb035798143a06e0ee","message":"Remove totos, add them as github.com issues","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T23:30:43-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/202a101db80163b980fff6ae1ccebd8e985778e1","sha":"202a101db80163b980fff6ae1ccebd8e985778e1"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a3be28756101370fbc689eec3a7825c4c385a6c9","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"a3be28756101370fbc689eec3a7825c4c385a6c9","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/3d6bd49ce229243fea4bb46a937622d0ec7d4d1c","sha":"3d6bd49ce229243fea4bb46a937622d0ec7d4d1c"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T15:09:06-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/a3be28756101370fbc689eec3a7825c4c385a6c9","message":"Publish version 0.4","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T15:09:06-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/5c6e0289868fe3bc6bff49b0c33bd27c4dd07e2d","sha":"5c6e0289868fe3bc6bff49b0c33bd27c4dd07e2d"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/3d6bd49ce229243fea4bb46a937622d0ec7d4d1c","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"3d6bd49ce229243fea4bb46a937622d0ec7d4d1c","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/636e6112deb72277b3bffcc3303cd7e8a7431a5d","sha":"636e6112deb72277b3bffcc3303cd7e8a7431a5d"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/58cb0dbdef9765e0e913c726f923a47315aaf80e","sha":"58cb0dbdef9765e0e913c726f923a47315aaf80e"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T14:53:18-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/3d6bd49ce229243fea4bb46a937622d0ec7d4d1c","message":"Merge branch 'develop'","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T14:53:18-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/2cabc3bd4e00227b053ddf867dec199b15503c41","sha":"2cabc3bd4e00227b053ddf867dec199b15503c41"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/58cb0dbdef9765e0e913c726f923a47315aaf80e","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"58cb0dbdef9765e0e913c726f923a47315aaf80e","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cc6d0fc044eadf2e6fde5da699f61654c1e691f3","sha":"cc6d0fc044eadf2e6fde5da699f61654c1e691f3"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/7b7ac20c6fa27f72a24483c73ab1bf4deffc89f0","sha":"7b7ac20c6fa27f72a24483c73ab1bf4deffc89f0"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T14:37:15-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/58cb0dbdef9765e0e913c726f923a47315aaf80e","message":"Merge branch 'topic/FixBaseUrl' into develop","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T14:37:15-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/2cabc3bd4e00227b053ddf867dec199b15503c41","sha":"2cabc3bd4e00227b053ddf867dec199b15503c41"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/7b7ac20c6fa27f72a24483c73ab1bf4deffc89f0","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"7b7ac20c6fa27f72a24483c73ab1bf4deffc89f0","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/97f308e67383368a2d15788cac28e126c8528bb2","sha":"97f308e67383368a2d15788cac28e126c8528bb2"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T14:36:59-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/7b7ac20c6fa27f72a24483c73ab1bf4deffc89f0","message":"Add a unit test with a changing _baseUrl","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T14:36:59-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/2cabc3bd4e00227b053ddf867dec199b15503c41","sha":"2cabc3bd4e00227b053ddf867dec199b15503c41"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/97f308e67383368a2d15788cac28e126c8528bb2","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"97f308e67383368a2d15788cac28e126c8528bb2","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/fc33a6de4f0e08d7ff2de05935517ec3932d212e","sha":"fc33a6de4f0e08d7ff2de05935517ec3932d212e"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T14:31:09-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/97f308e67383368a2d15788cac28e126c8528bb2","message":"Restore integration test after bugfix","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T14:31:09-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/2905b7707c427bff575def862c26cb05507bfa9c","sha":"2905b7707c427bff575def862c26cb05507bfa9c"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/fc33a6de4f0e08d7ff2de05935517ec3932d212e","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"fc33a6de4f0e08d7ff2de05935517ec3932d212e","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cc6d0fc044eadf2e6fde5da699f61654c1e691f3","sha":"cc6d0fc044eadf2e6fde5da699f61654c1e691f3"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T14:28:06-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/fc33a6de4f0e08d7ff2de05935517ec3932d212e","message":"Fix bug: _baseUrl is now a method\n\nThis handles modification of attributes creating the base url","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T14:28:06-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/7f985c8693602ccc884ecfd9fece11a2a7d3fdef","sha":"7f985c8693602ccc884ecfd9fece11a2a7d3fdef"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cc6d0fc044eadf2e6fde5da699f61654c1e691f3","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"cc6d0fc044eadf2e6fde5da699f61654c1e691f3","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/157f9c13275738b6b39b8d7a874f5f0aee47cb18","sha":"157f9c13275738b6b39b8d7a874f5f0aee47cb18"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2dd71f3777b87f2ba61cb20d2c67f10401e3eb2c","sha":"2dd71f3777b87f2ba61cb20d2c67f10401e3eb2c"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T14:12:06-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/cc6d0fc044eadf2e6fde5da699f61654c1e691f3","message":"Merge branch 'topic/MergeMergeRequest' into develop","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T14:12:06-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/4138e1bdfbc5130fe957589d9b68bb053c8305c5","sha":"4138e1bdfbc5130fe957589d9b68bb053c8305c5"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2dd71f3777b87f2ba61cb20d2c67f10401e3eb2c","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"2dd71f3777b87f2ba61cb20d2c67f10401e3eb2c","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/366ca58ca004b9129f9d435db8204ce0f5bc57c3","sha":"366ca58ca004b9129f9d435db8204ce0f5bc57c3"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T14:11:40-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/2dd71f3777b87f2ba61cb20d2c67f10401e3eb2c","message":"Restore test coverage","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T14:11:40-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/4138e1bdfbc5130fe957589d9b68bb053c8305c5","sha":"4138e1bdfbc5130fe957589d9b68bb053c8305c5"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/366ca58ca004b9129f9d435db8204ce0f5bc57c3","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"366ca58ca004b9129f9d435db8204ce0f5bc57c3","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0d3b3ffd1e5c143af8725fdee808101f626f683d","sha":"0d3b3ffd1e5c143af8725fdee808101f626f683d"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T14:08:22-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/366ca58ca004b9129f9d435db8204ce0f5bc57c3","message":"PullRequest.is_merged and PullRequest.merge","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T14:08:22-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/cff64747ea7fc0957b502839f3a54cb8dd9b7002","sha":"cff64747ea7fc0957b502839f3a54cb8dd9b7002"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0d3b3ffd1e5c143af8725fdee808101f626f683d","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"0d3b3ffd1e5c143af8725fdee808101f626f683d","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/157f9c13275738b6b39b8d7a874f5f0aee47cb18","sha":"157f9c13275738b6b39b8d7a874f5f0aee47cb18"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T13:51:50-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/0d3b3ffd1e5c143af8725fdee808101f626f683d","message":"Improve coverage analysis","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T13:51:50-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/091f983c6aa0b097677a5b1d1e4a2b6417bb953d","sha":"091f983c6aa0b097677a5b1d1e4a2b6417bb953d"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/157f9c13275738b6b39b8d7a874f5f0aee47cb18","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"157f9c13275738b6b39b8d7a874f5f0aee47cb18","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/924aef7d9f3a21145492ea165c9268ab0030cbab","sha":"924aef7d9f3a21145492ea165c9268ab0030cbab"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b12b6ffdfa6f1cca89459438eff6d3420ed199e9","sha":"b12b6ffdfa6f1cca89459438eff6d3420ed199e9"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T13:48:47-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/157f9c13275738b6b39b8d7a874f5f0aee47cb18","message":"Merge branch 'topic/AddHooksAndEvents' into develop","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T13:48:47-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/014f6c1b5278352ba1bc974914e3a76c17590479","sha":"014f6c1b5278352ba1bc974914e3a76c17590479"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b12b6ffdfa6f1cca89459438eff6d3420ed199e9","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"b12b6ffdfa6f1cca89459438eff6d3420ed199e9","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/236fcaead6addd284722e4b5fde2e24f6f4ae63b","sha":"236fcaead6addd284722e4b5fde2e24f6f4ae63b"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T13:48:27-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/b12b6ffdfa6f1cca89459438eff6d3420ed199e9","message":"AuthenticatedUser.get_organization_events","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T13:48:27-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/014f6c1b5278352ba1bc974914e3a76c17590479","sha":"014f6c1b5278352ba1bc974914e3a76c17590479"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/236fcaead6addd284722e4b5fde2e24f6f4ae63b","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"236fcaead6addd284722e4b5fde2e24f6f4ae63b","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/43369be99710f4386d31daa87db9b5cc48f0544d","sha":"43369be99710f4386d31daa87db9b5cc48f0544d"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T13:28:26-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/236fcaead6addd284722e4b5fde2e24f6f4ae63b","message":"Restore test coverage","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T13:28:26-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/484f40761d22be9a4a815e010c52e43c12e49f02","sha":"484f40761d22be9a4a815e010c52e43c12e49f02"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/43369be99710f4386d31daa87db9b5cc48f0544d","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"43369be99710f4386d31daa87db9b5cc48f0544d","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/07b6b437d741df9c94cf34e36045fc78868b63ba","sha":"07b6b437d741df9c94cf34e36045fc78868b63ba"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T13:22:10-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/43369be99710f4386d31daa87db9b5cc48f0544d","message":"Repository.get_issues_event + coverage","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T13:22:10-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/656b268fdf8d0ce1e48037f8a546eecdf0dc5ef9","sha":"656b268fdf8d0ce1e48037f8a546eecdf0dc5ef9"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/07b6b437d741df9c94cf34e36045fc78868b63ba","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"07b6b437d741df9c94cf34e36045fc78868b63ba","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6d51a955d922e92dacf37106a3c52d185fb18423","sha":"6d51a955d922e92dacf37106a3c52d185fb18423"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T12:43:20-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/07b6b437d741df9c94cf34e36045fc78868b63ba","message":"Remove two 'MethodFromCallable'","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T12:43:20-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/fb26540cb902379e02897890f8e79df032fa4657","sha":"fb26540cb902379e02897890f8e79df032fa4657"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6d51a955d922e92dacf37106a3c52d185fb18423","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"6d51a955d922e92dacf37106a3c52d185fb18423","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/44911bf0906912d468cb88001907955ee318fdf7","sha":"44911bf0906912d468cb88001907955ee318fdf7"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T11:59:56-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/6d51a955d922e92dacf37106a3c52d185fb18423","message":"Fix and add integration tests about events","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T11:59:56-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/c1619a5fa4c612b9d7455bbd4111e074c1110967","sha":"c1619a5fa4c612b9d7455bbd4111e074c1110967"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/44911bf0906912d468cb88001907955ee318fdf7","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"44911bf0906912d468cb88001907955ee318fdf7","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/01fa4d803b4a541759ba906d194f1fa9bc29faa9","sha":"01fa4d803b4a541759ba906d194f1fa9bc29faa9"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T12:54:56-08:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/44911bf0906912d468cb88001907955ee318fdf7","message":"Events: step 1","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T12:54:56-08:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/8e82325aa70d2d0c5dd15c138d44c729a097d7df","sha":"8e82325aa70d2d0c5dd15c138d44c729a097d7df"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/01fa4d803b4a541759ba906d194f1fa9bc29faa9","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"01fa4d803b4a541759ba906d194f1fa9bc29faa9","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/25c76b4b759173fa42cdf3ebd0214a5ce958b2e4","sha":"25c76b4b759173fa42cdf3ebd0214a5ce958b2e4"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T02:12:15-08:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/01fa4d803b4a541759ba906d194f1fa9bc29faa9","message":"Regenerate reference of classes","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T02:12:15-08:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/deae54c27d31b4d5f21daeb48451cdbed301d386","sha":"deae54c27d31b4d5f21daeb48451cdbed301d386"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/25c76b4b759173fa42cdf3ebd0214a5ce958b2e4","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"25c76b4b759173fa42cdf3ebd0214a5ce958b2e4","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/00a832e6d519dac96142f650d6363f24459f9145","sha":"00a832e6d519dac96142f650d6363f24459f9145"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-03T23:56:48-08:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/25c76b4b759173fa42cdf3ebd0214a5ce958b2e4","message":"Restore test coverage","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T01:46:20-08:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/9ad7d85371d98b8cc50686cc0591e98935d7917d","sha":"9ad7d85371d98b8cc50686cc0591e98935d7917d"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/00a832e6d519dac96142f650d6363f24459f9145","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"00a832e6d519dac96142f650d6363f24459f9145","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/f03d86c46e4d5b337514277620dc9adbdc68dba2","sha":"f03d86c46e4d5b337514277620dc9adbdc68dba2"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-03T04:44:54-08:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/00a832e6d519dac96142f650d6363f24459f9145","message":"Hook testing","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T01:46:19-08:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/88beba1a00e40bea9da1c02b613e3859df4105de","sha":"88beba1a00e40bea9da1c02b613e3859df4105de"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/f03d86c46e4d5b337514277620dc9adbdc68dba2","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"f03d86c46e4d5b337514277620dc9adbdc68dba2","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0b8ffcc14c6200dda4f9b11c47d6949b5cd3240b","sha":"0b8ffcc14c6200dda4f9b11c47d6949b5cd3240b"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-03T04:36:01-08:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/f03d86c46e4d5b337514277620dc9adbdc68dba2","message":"Hooks: step 2","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T01:46:18-08:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/a2d2473d5b9f12020bcba798849206c4636fec2f","sha":"a2d2473d5b9f12020bcba798849206c4636fec2f"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0b8ffcc14c6200dda4f9b11c47d6949b5cd3240b","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"0b8ffcc14c6200dda4f9b11c47d6949b5cd3240b","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/f2d89a565f5eb19af605d78762169daec9a701e0","sha":"f2d89a565f5eb19af605d78762169daec9a701e0"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-01T08:35:13-08:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/0b8ffcc14c6200dda4f9b11c47d6949b5cd3240b","message":"Hooks: step 1","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T01:46:17-08:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/122bf2a07918c500e15ae7b9a5ae6eba4c4abf34","sha":"122bf2a07918c500e15ae7b9a5ae6eba4c4abf34"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/f2d89a565f5eb19af605d78762169daec9a701e0","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"f2d89a565f5eb19af605d78762169daec9a701e0","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/924aef7d9f3a21145492ea165c9268ab0030cbab","sha":"924aef7d9f3a21145492ea165c9268ab0030cbab"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-02-23T13:32:44-08:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/f2d89a565f5eb19af605d78762169daec9a701e0","message":"Totos for hooks and events","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T01:46:16-08:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/6c010d7ccbfbb6a0f44c829c08753dc19b71c29e","sha":"6c010d7ccbfbb6a0f44c829c08753dc19b71c29e"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/924aef7d9f3a21145492ea165c9268ab0030cbab","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"924aef7d9f3a21145492ea165c9268ab0030cbab","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cf3f792b16d2e9e56ba6562e9db55663d4443d87","sha":"cf3f792b16d2e9e56ba6562e9db55663d4443d87"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T01:45:59-08:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/924aef7d9f3a21145492ea165c9268ab0030cbab","message":"Typo...","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T01:45:59-08:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/c2d94eeeeb8eab5793762db56b9d6bdf3070c639","sha":"c2d94eeeeb8eab5793762db56b9d6bdf3070c639"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cf3f792b16d2e9e56ba6562e9db55663d4443d87","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"cf3f792b16d2e9e56ba6562e9db55663d4443d87","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5c17275366efd3bc9414958d661d9a017022be6b","sha":"5c17275366efd3bc9414958d661d9a017022be6b"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/3a83cc0b1e40788483398eb89e3671b91d648251","sha":"3a83cc0b1e40788483398eb89e3671b91d648251"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T01:39:25-08:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/cf3f792b16d2e9e56ba6562e9db55663d4443d87","message":"Merge branch 'topic/Coverage' into develop","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T01:39:25-08:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/ff1c6594a40331fca68b664d400269b343360fdd","sha":"ff1c6594a40331fca68b664d400269b343360fdd"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/3a83cc0b1e40788483398eb89e3671b91d648251","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"3a83cc0b1e40788483398eb89e3671b91d648251","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e0c04877a9a00766d099251512a8bb512a1d37c2","sha":"e0c04877a9a00766d099251512a8bb512a1d37c2"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T01:38:09-08:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/3a83cc0b1e40788483398eb89e3671b91d648251","message":"RepositoryDetails","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T01:38:09-08:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/ff1c6594a40331fca68b664d400269b343360fdd","sha":"ff1c6594a40331fca68b664d400269b343360fdd"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e0c04877a9a00766d099251512a8bb512a1d37c2","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"e0c04877a9a00766d099251512a8bb512a1d37c2","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6b89c02872cbcb179d79cb4ceb2436fee02425d0","sha":"6b89c02872cbcb179d79cb4ceb2436fee02425d0"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T01:34:02-08:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/e0c04877a9a00766d099251512a8bb512a1d37c2","message":"AuthenticatedUserDetails","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T01:34:02-08:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/5f178bdb7fdd0f30d84b33e99e41b16a32fa0d9b","sha":"5f178bdb7fdd0f30d84b33e99e41b16a32fa0d9b"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6b89c02872cbcb179d79cb4ceb2436fee02425d0","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"6b89c02872cbcb179d79cb4ceb2436fee02425d0","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/231ae0778e0bebaac3dc87fa8f602c1560b8164f","sha":"231ae0778e0bebaac3dc87fa8f602c1560b8164f"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T01:21:59-08:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/6b89c02872cbcb179d79cb4ceb2436fee02425d0","message":"Downloads","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T01:21:59-08:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/047599e78ad35674ee8b0ac51d232b2c71b40a6f","sha":"047599e78ad35674ee8b0ac51d232b2c71b40a6f"}}}] + diff --git a/lib/github/tests/ReplayData/Repository.testGetCommitsWithArguments.txt b/lib/github/tests/ReplayData/Repository.testGetCommitsWithArguments.txt new file mode 100644 index 0000000000..be72766cd3 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetCommitsWithArguments.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/commits?sha=topic%2FRewriteWithGeneratedCode&path=codegen%2FGenerateCode.py +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4940'), ('content-length', '10375'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"230272c14df3176a86fe041ec1370c1d"'), ('date', 'Tue, 29 May 2012 18:24:41 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/de386d5dc9cf103c90c4128eeca0e6abdd382065","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"de386d5dc9cf103c90c4128eeca0e6abdd382065","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5b44982f6111bff2454243869df2e1c3086ccbba","sha":"5b44982f6111bff2454243869df2e1c3086ccbba"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-28T10:21:42-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/de386d5dc9cf103c90c4128eeca0e6abdd382065","message":"Rename","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-28T10:21:42-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/1aff37f9b6c7c67f5984c4cf4bff68374a2c6943","sha":"1aff37f9b6c7c67f5984c4cf4bff68374a2c6943"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5b44982f6111bff2454243869df2e1c3086ccbba","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"5b44982f6111bff2454243869df2e1c3086ccbba","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/d6835ff949141957a733c8ddfa147026515ae493","sha":"d6835ff949141957a733c8ddfa147026515ae493"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-28T10:18:34-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/5b44982f6111bff2454243869df2e1c3086ccbba","message":"Generate code with Unix line endings even on Windows","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-28T10:18:34-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/b62a41a33cf46d342f92783df84d91bab0ff05ea","sha":"b62a41a33cf46d342f92783df84d91bab0ff05ea"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/d6835ff949141957a733c8ddfa147026515ae493","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"d6835ff949141957a733c8ddfa147026515ae493","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/821ac669f212b1e8868567517f8b85f8a7eb04cf","sha":"821ac669f212b1e8868567517f8b85f8a7eb04cf"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-28T09:29:08-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/d6835ff949141957a733c8ddfa147026515ae493","message":"dos2unix","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-28T09:29:08-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/2017a36dd1340a30b24ffcf402fe4dfee28470ef","sha":"2017a36dd1340a30b24ffcf402fe4dfee28470ef"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/075d3d961d4614a2a0835d5583248adfc0687a7d","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"075d3d961d4614a2a0835d5583248adfc0687a7d","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4bf2e31da745b4857ef7779b8af7de04aca713c2","sha":"4bf2e31da745b4857ef7779b8af7de04aca713c2"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-27T05:30:38-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/075d3d961d4614a2a0835d5583248adfc0687a7d","message":"Generate code for url quoting","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-27T05:30:38-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/fdc159d42b4ef9b3480bef5634a4fc78d81265ea","sha":"fdc159d42b4ef9b3480bef5634a4fc78d81265ea"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/8956796e7f462a49f499eac52fab901cdb59abdb","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"8956796e7f462a49f499eac52fab901cdb59abdb","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/f23ed6341da0fcf7a416d04ad0ab252ed55308a5","sha":"f23ed6341da0fcf7a416d04ad0ab252ed55308a5"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-12T05:12:03-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/8956796e7f462a49f499eac52fab901cdb59abdb","message":"Be explicit about complete-ability","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-12T05:12:03-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/f6c8da120b78da3617c89d530322676ba159d40b","sha":"f6c8da120b78da3617c89d530322676ba159d40b"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/283da5e7de6a4a3b6aaae7045909d70b643ad380","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"283da5e7de6a4a3b6aaae7045909d70b643ad380","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/595e88cd5537208958f90d6727965cc7918f09a7","sha":"595e88cd5537208958f90d6727965cc7918f09a7"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-10T09:26:18-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/283da5e7de6a4a3b6aaae7045909d70b643ad380","message":"Fix code generation and tests after reorganization","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-10T09:26:18-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/7cafc3a4c77289c53776e9be84a5857dbeb19eeb","sha":"7cafc3a4c77289c53776e9be84a5857dbeb19eeb"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/d631e83b7901b0a0b6061b361130700a79505319","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"d631e83b7901b0a0b6061b361130700a79505319","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cd68559b0861ad2be12be29b9d4b7ec66e885191","sha":"cd68559b0861ad2be12be29b9d4b7ec66e885191"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-10T09:10:17-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/d631e83b7901b0a0b6061b361130700a79505319","message":"Move files around","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-10T09:10:17-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/586a9fdba155fcae6959133845e702373d4b42ed","sha":"586a9fdba155fcae6959133845e702373d4b42ed"}}}] + diff --git a/lib/github/tests/ReplayData/Repository.testGetCommitsWithAuthor.txt b/lib/github/tests/ReplayData/Repository.testGetCommitsWithAuthor.txt new file mode 100644 index 0000000000..d4ae4f1ee3 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetCommitsWithAuthor.txt @@ -0,0 +1,44 @@ +https +GET +api.github.com +None +/users/AKFish +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4949'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '4C79374B:68E1:4062816:52802976'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '1221'), ('server', 'GitHub.com'), ('last-modified', 'Sun, 10 Nov 2013 11:54:56 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"186b66d7835a31a33ee1a092f17ca035"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 11 Nov 2013 00:48:54 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1384130958')] +{"login":"akfish","id":922715,"avatar_url":"https://1.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png&r=x","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User","site_admin":false,"name":"AKFish","company":null,"blog":"http://catx.me","location":"China","email":null,"hireable":true,"bio":null,"public_repos":51,"followers":11,"following":7,"created_at":"2011-07-18T11:44:01Z","updated_at":"2013-11-10T11:54:56Z","public_gists":6} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/commits?per_page=5&author=jacquev6 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4948'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '4C79374B:68E1:40629A3:52802977'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '16274'), ('server', 'GitHub.com'), ('last-modified', 'Mon, 21 Oct 2013 03:45:43 GMT'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="first"'), ('etag', '"e33a86ac77b0de1ff6664d425434cb37"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 11 Nov 2013 00:48:55 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1384130958')] +[{"sha":"54f718a15770579a37ffbe7ae94ad30003407786","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-10-21T03:45:43Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-10-21T03:45:43Z"},"message":"Twitt about releases","tree":{"sha":"cbdb0e431b2d3645618a9fc1604eeb7a0b4fc037","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/cbdb0e431b2d3645618a9fc1604eeb7a0b4fc037"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/54f718a15770579a37ffbe7ae94ad30003407786","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/54f718a15770579a37ffbe7ae94ad30003407786","html_url":"https://github.com/jacquev6/PyGithub/commit/54f718a15770579a37ffbe7ae94ad30003407786","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/54f718a15770579a37ffbe7ae94ad30003407786/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png&r=x","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png&r=x","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false},"parents":[{"sha":"8cb3f372837e2648f17e3f085d2821114b507383","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/8cb3f372837e2648f17e3f085d2821114b507383","html_url":"https://github.com/jacquev6/PyGithub/commit/8cb3f372837e2648f17e3f085d2821114b507383"}]},{"sha":"8cb3f372837e2648f17e3f085d2821114b507383","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-10-21T02:48:01Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-10-21T02:48:01Z"},"message":"Publish version 1.20.0","tree":{"sha":"db657a4a57f788fba69640e4f49e77ef68bfd13d","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/db657a4a57f788fba69640e4f49e77ef68bfd13d"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/8cb3f372837e2648f17e3f085d2821114b507383","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/8cb3f372837e2648f17e3f085d2821114b507383","html_url":"https://github.com/jacquev6/PyGithub/commit/8cb3f372837e2648f17e3f085d2821114b507383","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/8cb3f372837e2648f17e3f085d2821114b507383/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png&r=x","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png&r=x","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false},"parents":[{"sha":"73c16e54604f3ebb25557049f1e55f30b567d1ab","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/73c16e54604f3ebb25557049f1e55f30b567d1ab","html_url":"https://github.com/jacquev6/PyGithub/commit/73c16e54604f3ebb25557049f1e55f30b567d1ab"}]},{"sha":"73c16e54604f3ebb25557049f1e55f30b567d1ab","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-10-21T02:23:38Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-10-21T02:23:38Z"},"message":"Merge branch 'develop'","tree":{"sha":"ff1686e186cbcf8a35605a1795b885483918314c","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/ff1686e186cbcf8a35605a1795b885483918314c"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/73c16e54604f3ebb25557049f1e55f30b567d1ab","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/73c16e54604f3ebb25557049f1e55f30b567d1ab","html_url":"https://github.com/jacquev6/PyGithub/commit/73c16e54604f3ebb25557049f1e55f30b567d1ab","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/73c16e54604f3ebb25557049f1e55f30b567d1ab/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png&r=x","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png&r=x","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false},"parents":[{"sha":"9f9be931fb3821256d8bb685577b5167652763d5","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/9f9be931fb3821256d8bb685577b5167652763d5","html_url":"https://github.com/jacquev6/PyGithub/commit/9f9be931fb3821256d8bb685577b5167652763d5"},{"sha":"51fa637514e436eda989c376ff708b9553fff3c6","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/51fa637514e436eda989c376ff708b9553fff3c6","html_url":"https://github.com/jacquev6/PyGithub/commit/51fa637514e436eda989c376ff708b9553fff3c6"}]},{"sha":"51fa637514e436eda989c376ff708b9553fff3c6","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-10-21T02:17:38Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-10-21T02:17:38Z"},"message":"Remove tests for deleted methods!","tree":{"sha":"ff1686e186cbcf8a35605a1795b885483918314c","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/ff1686e186cbcf8a35605a1795b885483918314c"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/51fa637514e436eda989c376ff708b9553fff3c6","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/51fa637514e436eda989c376ff708b9553fff3c6","html_url":"https://github.com/jacquev6/PyGithub/commit/51fa637514e436eda989c376ff708b9553fff3c6","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/51fa637514e436eda989c376ff708b9553fff3c6/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png&r=x","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png&r=x","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false},"parents":[{"sha":"748793b7ac34dcf4b70f8b4494f9fe71c4609a07","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/748793b7ac34dcf4b70f8b4494f9fe71c4609a07","html_url":"https://github.com/jacquev6/PyGithub/commit/748793b7ac34dcf4b70f8b4494f9fe71c4609a07"}]},{"sha":"748793b7ac34dcf4b70f8b4494f9fe71c4609a07","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-10-21T02:14:35Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-10-21T02:14:35Z"},"message":"Add a link to DevAssistant (#197)","tree":{"sha":"b3198ecd46d01f2c44bec043adb65a68b10057a3","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/b3198ecd46d01f2c44bec043adb65a68b10057a3"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/748793b7ac34dcf4b70f8b4494f9fe71c4609a07","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/748793b7ac34dcf4b70f8b4494f9fe71c4609a07","html_url":"https://github.com/jacquev6/PyGithub/commit/748793b7ac34dcf4b70f8b4494f9fe71c4609a07","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/748793b7ac34dcf4b70f8b4494f9fe71c4609a07/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png&r=x","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png&r=x","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false},"parents":[{"sha":"23e2828b5fd56c4860312773e7d568c8e9d232ca","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/23e2828b5fd56c4860312773e7d568c8e9d232ca","html_url":"https://github.com/jacquev6/PyGithub/commit/23e2828b5fd56c4860312773e7d568c8e9d232ca"}]}] + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/commits?per_page=5&author=akfish +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4947'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '4C79374B:68E1:4062C37:52802978'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '15564'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 23 Aug 2013 23:21:41 GMT'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="first"'), ('etag', '"70e018e18acd7212d83ab7f79a00c0c1"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 11 Nov 2013 00:48:57 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1384130958')] +[{"sha":"38b137fb37c0fdc74f8802a4184518e105db9121","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-23T23:21:41Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-23T23:21:41Z"},"message":"Fix line ending","tree":{"sha":"a4260390d7e3d478aed05009657f4632d25dad84","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/a4260390d7e3d478aed05009657f4632d25dad84"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/38b137fb37c0fdc74f8802a4184518e105db9121","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/38b137fb37c0fdc74f8802a4184518e105db9121","html_url":"https://github.com/jacquev6/PyGithub/commit/38b137fb37c0fdc74f8802a4184518e105db9121","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/38b137fb37c0fdc74f8802a4184518e105db9121/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://1.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png&r=x","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User","site_admin":false},"committer":{"login":"akfish","id":922715,"avatar_url":"https://1.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png&r=x","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User","site_admin":false},"parents":[{"sha":"fb6980ce36766e4dd1ab03b48ac4b5adf876dc84","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/fb6980ce36766e4dd1ab03b48ac4b5adf876dc84","html_url":"https://github.com/jacquev6/PyGithub/commit/fb6980ce36766e4dd1ab03b48ac4b5adf876dc84"}]},{"sha":"c7593e84c4a92a044b717b7311c2b6ad8d9a5917","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-22T02:20:10Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-22T02:20:10Z"},"message":"Add test case for conditional request","tree":{"sha":"bbf62558b39720fc7acab1c6b26e4b9260cdc897","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/bbf62558b39720fc7acab1c6b26e4b9260cdc897"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/c7593e84c4a92a044b717b7311c2b6ad8d9a5917","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c7593e84c4a92a044b717b7311c2b6ad8d9a5917","html_url":"https://github.com/jacquev6/PyGithub/commit/c7593e84c4a92a044b717b7311c2b6ad8d9a5917","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c7593e84c4a92a044b717b7311c2b6ad8d9a5917/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://1.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png&r=x","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User","site_admin":false},"committer":{"login":"akfish","id":922715,"avatar_url":"https://1.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png&r=x","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User","site_admin":false},"parents":[{"sha":"d457afd23ccb47d9f30f09a6ca2a8e32f17dccc7","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/d457afd23ccb47d9f30f09a6ca2a8e32f17dccc7","html_url":"https://github.com/jacquev6/PyGithub/commit/d457afd23ccb47d9f30f09a6ca2a8e32f17dccc7"}]},{"sha":"d457afd23ccb47d9f30f09a6ca2a8e32f17dccc7","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-22T00:45:10Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-22T00:45:10Z"},"message":"Add test record helper","tree":{"sha":"e6e15fccb5b256bba3db1d4fc89088b733de227b","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/e6e15fccb5b256bba3db1d4fc89088b733de227b"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/d457afd23ccb47d9f30f09a6ca2a8e32f17dccc7","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/d457afd23ccb47d9f30f09a6ca2a8e32f17dccc7","html_url":"https://github.com/jacquev6/PyGithub/commit/d457afd23ccb47d9f30f09a6ca2a8e32f17dccc7","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/d457afd23ccb47d9f30f09a6ca2a8e32f17dccc7/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://1.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png&r=x","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User","site_admin":false},"committer":{"login":"akfish","id":922715,"avatar_url":"https://1.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png&r=x","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User","site_admin":false},"parents":[{"sha":"70a7e9c83dec2bf6b549dc5c77d30b53afb32457","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/70a7e9c83dec2bf6b549dc5c77d30b53afb32457","html_url":"https://github.com/jacquev6/PyGithub/commit/70a7e9c83dec2bf6b549dc5c77d30b53afb32457"}]},{"sha":"70a7e9c83dec2bf6b549dc5c77d30b53afb32457","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T23:45:27Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T23:45:27Z"},"message":"Fix update","tree":{"sha":"f99d30ab74ea95fedefb33a8b1b2c77903fbd698","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/f99d30ab74ea95fedefb33a8b1b2c77903fbd698"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/70a7e9c83dec2bf6b549dc5c77d30b53afb32457","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/70a7e9c83dec2bf6b549dc5c77d30b53afb32457","html_url":"https://github.com/jacquev6/PyGithub/commit/70a7e9c83dec2bf6b549dc5c77d30b53afb32457","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/70a7e9c83dec2bf6b549dc5c77d30b53afb32457/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://1.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png&r=x","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User","site_admin":false},"committer":{"login":"akfish","id":922715,"avatar_url":"https://1.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png&r=x","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User","site_admin":false},"parents":[{"sha":"5b09f6c82191601cad92076ad4761fe927c511ed","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5b09f6c82191601cad92076ad4761fe927c511ed","html_url":"https://github.com/jacquev6/PyGithub/commit/5b09f6c82191601cad92076ad4761fe927c511ed"}]},{"sha":"5b09f6c82191601cad92076ad4761fe927c511ed","commit":{"author":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T15:17:59Z"},"committer":{"name":"AKFish","email":"akfish@gmail.com","date":"2013-08-21T15:17:59Z"},"message":"Implement conditional request","tree":{"sha":"d6c3d2b807635ecd9a9129b1a99d0e2f6758d440","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/d6c3d2b807635ecd9a9129b1a99d0e2f6758d440"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/5b09f6c82191601cad92076ad4761fe927c511ed","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5b09f6c82191601cad92076ad4761fe927c511ed","html_url":"https://github.com/jacquev6/PyGithub/commit/5b09f6c82191601cad92076ad4761fe927c511ed","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5b09f6c82191601cad92076ad4761fe927c511ed/comments","author":{"login":"akfish","id":922715,"avatar_url":"https://1.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png&r=x","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User","site_admin":false},"committer":{"login":"akfish","id":922715,"avatar_url":"https://1.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png&r=x","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User","site_admin":false},"parents":[{"sha":"6fd05baf6bea732dd846e08c40891c28060e7c64","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6fd05baf6bea732dd846e08c40891c28060e7c64","html_url":"https://github.com/jacquev6/PyGithub/commit/6fd05baf6bea732dd846e08c40891c28060e7c64"}]}] + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/commits?per_page=5&author=m.ki2%40laposte.net +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4946'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '4C79374B:68E1:4062E83:5280297A'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '15839'), ('server', 'GitHub.com'), ('last-modified', 'Tue, 04 Jun 2013 13:35:09 GMT'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="first"'), ('etag', '"3ed1804969c8b056bbf4ac0098e42f18"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 11 Nov 2013 00:48:58 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1384130958')] +[{"sha":"ab674dfcbc86c70bc32d9ecbe171b48a5694c337","commit":{"author":{"name":"martinqt","email":"m.ki2@laposte.net","date":"2013-06-04T13:35:09Z"},"committer":{"name":"martinqt","email":"m.ki2@laposte.net","date":"2013-06-04T13:35:09Z"},"message":"PullRequestMergeStatus docstring","tree":{"sha":"fa1f214180296156c3b5b259f8bf503d485f3487","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/fa1f214180296156c3b5b259f8bf503d485f3487"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/ab674dfcbc86c70bc32d9ecbe171b48a5694c337","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ab674dfcbc86c70bc32d9ecbe171b48a5694c337","html_url":"https://github.com/jacquev6/PyGithub/commit/ab674dfcbc86c70bc32d9ecbe171b48a5694c337","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ab674dfcbc86c70bc32d9ecbe171b48a5694c337/comments","author":{"login":"martinqt","id":2557975,"avatar_url":"https://1.gravatar.com/avatar/182c0579e9458df4b939c1de0981e31c?d=https%3A%2F%2Fidenticons.github.com%2F24858b884a8b74bcce2b765a4f8e329e.png&r=x","gravatar_id":"182c0579e9458df4b939c1de0981e31c","url":"https://api.github.com/users/martinqt","html_url":"https://github.com/martinqt","followers_url":"https://api.github.com/users/martinqt/followers","following_url":"https://api.github.com/users/martinqt/following{/other_user}","gists_url":"https://api.github.com/users/martinqt/gists{/gist_id}","starred_url":"https://api.github.com/users/martinqt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/martinqt/subscriptions","organizations_url":"https://api.github.com/users/martinqt/orgs","repos_url":"https://api.github.com/users/martinqt/repos","events_url":"https://api.github.com/users/martinqt/events{/privacy}","received_events_url":"https://api.github.com/users/martinqt/received_events","type":"User","site_admin":false},"committer":{"login":"martinqt","id":2557975,"avatar_url":"https://1.gravatar.com/avatar/182c0579e9458df4b939c1de0981e31c?d=https%3A%2F%2Fidenticons.github.com%2F24858b884a8b74bcce2b765a4f8e329e.png&r=x","gravatar_id":"182c0579e9458df4b939c1de0981e31c","url":"https://api.github.com/users/martinqt","html_url":"https://github.com/martinqt","followers_url":"https://api.github.com/users/martinqt/followers","following_url":"https://api.github.com/users/martinqt/following{/other_user}","gists_url":"https://api.github.com/users/martinqt/gists{/gist_id}","starred_url":"https://api.github.com/users/martinqt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/martinqt/subscriptions","organizations_url":"https://api.github.com/users/martinqt/orgs","repos_url":"https://api.github.com/users/martinqt/repos","events_url":"https://api.github.com/users/martinqt/events{/privacy}","received_events_url":"https://api.github.com/users/martinqt/received_events","type":"User","site_admin":false},"parents":[{"sha":"dd13f2b4bcfb6a4b208b617b0b39b8ef00041d84","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/dd13f2b4bcfb6a4b208b617b0b39b8ef00041d84","html_url":"https://github.com/jacquev6/PyGithub/commit/dd13f2b4bcfb6a4b208b617b0b39b8ef00041d84"}]},{"sha":"dd13f2b4bcfb6a4b208b617b0b39b8ef00041d84","commit":{"author":{"name":"martinqt","email":"m.ki2@laposte.net","date":"2013-06-04T13:33:13Z"},"committer":{"name":"martinqt","email":"m.ki2@laposte.net","date":"2013-06-04T13:33:13Z"},"message":"Don't think this anchor is needed","tree":{"sha":"08d2bb94751507dfff536d692292680a10bd6062","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/08d2bb94751507dfff536d692292680a10bd6062"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/dd13f2b4bcfb6a4b208b617b0b39b8ef00041d84","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/dd13f2b4bcfb6a4b208b617b0b39b8ef00041d84","html_url":"https://github.com/jacquev6/PyGithub/commit/dd13f2b4bcfb6a4b208b617b0b39b8ef00041d84","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/dd13f2b4bcfb6a4b208b617b0b39b8ef00041d84/comments","author":{"login":"martinqt","id":2557975,"avatar_url":"https://1.gravatar.com/avatar/182c0579e9458df4b939c1de0981e31c?d=https%3A%2F%2Fidenticons.github.com%2F24858b884a8b74bcce2b765a4f8e329e.png&r=x","gravatar_id":"182c0579e9458df4b939c1de0981e31c","url":"https://api.github.com/users/martinqt","html_url":"https://github.com/martinqt","followers_url":"https://api.github.com/users/martinqt/followers","following_url":"https://api.github.com/users/martinqt/following{/other_user}","gists_url":"https://api.github.com/users/martinqt/gists{/gist_id}","starred_url":"https://api.github.com/users/martinqt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/martinqt/subscriptions","organizations_url":"https://api.github.com/users/martinqt/orgs","repos_url":"https://api.github.com/users/martinqt/repos","events_url":"https://api.github.com/users/martinqt/events{/privacy}","received_events_url":"https://api.github.com/users/martinqt/received_events","type":"User","site_admin":false},"committer":{"login":"martinqt","id":2557975,"avatar_url":"https://1.gravatar.com/avatar/182c0579e9458df4b939c1de0981e31c?d=https%3A%2F%2Fidenticons.github.com%2F24858b884a8b74bcce2b765a4f8e329e.png&r=x","gravatar_id":"182c0579e9458df4b939c1de0981e31c","url":"https://api.github.com/users/martinqt","html_url":"https://github.com/martinqt","followers_url":"https://api.github.com/users/martinqt/followers","following_url":"https://api.github.com/users/martinqt/following{/other_user}","gists_url":"https://api.github.com/users/martinqt/gists{/gist_id}","starred_url":"https://api.github.com/users/martinqt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/martinqt/subscriptions","organizations_url":"https://api.github.com/users/martinqt/orgs","repos_url":"https://api.github.com/users/martinqt/repos","events_url":"https://api.github.com/users/martinqt/events{/privacy}","received_events_url":"https://api.github.com/users/martinqt/received_events","type":"User","site_admin":false},"parents":[{"sha":"a56b10579dcf47c5083b5338b743e827be67bb59","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a56b10579dcf47c5083b5338b743e827be67bb59","html_url":"https://github.com/jacquev6/PyGithub/commit/a56b10579dcf47c5083b5338b743e827be67bb59"}]},{"sha":"a56b10579dcf47c5083b5338b743e827be67bb59","commit":{"author":{"name":"martinqt","email":"m.ki2@laposte.net","date":"2013-06-04T13:32:17Z"},"committer":{"name":"martinqt","email":"m.ki2@laposte.net","date":"2013-06-04T13:32:17Z"},"message":"Fix Event url","tree":{"sha":"5e4c1acdc1aebc22acdc26af24256609d8e4cbd9","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/5e4c1acdc1aebc22acdc26af24256609d8e4cbd9"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/a56b10579dcf47c5083b5338b743e827be67bb59","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a56b10579dcf47c5083b5338b743e827be67bb59","html_url":"https://github.com/jacquev6/PyGithub/commit/a56b10579dcf47c5083b5338b743e827be67bb59","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a56b10579dcf47c5083b5338b743e827be67bb59/comments","author":{"login":"martinqt","id":2557975,"avatar_url":"https://1.gravatar.com/avatar/182c0579e9458df4b939c1de0981e31c?d=https%3A%2F%2Fidenticons.github.com%2F24858b884a8b74bcce2b765a4f8e329e.png&r=x","gravatar_id":"182c0579e9458df4b939c1de0981e31c","url":"https://api.github.com/users/martinqt","html_url":"https://github.com/martinqt","followers_url":"https://api.github.com/users/martinqt/followers","following_url":"https://api.github.com/users/martinqt/following{/other_user}","gists_url":"https://api.github.com/users/martinqt/gists{/gist_id}","starred_url":"https://api.github.com/users/martinqt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/martinqt/subscriptions","organizations_url":"https://api.github.com/users/martinqt/orgs","repos_url":"https://api.github.com/users/martinqt/repos","events_url":"https://api.github.com/users/martinqt/events{/privacy}","received_events_url":"https://api.github.com/users/martinqt/received_events","type":"User","site_admin":false},"committer":{"login":"martinqt","id":2557975,"avatar_url":"https://1.gravatar.com/avatar/182c0579e9458df4b939c1de0981e31c?d=https%3A%2F%2Fidenticons.github.com%2F24858b884a8b74bcce2b765a4f8e329e.png&r=x","gravatar_id":"182c0579e9458df4b939c1de0981e31c","url":"https://api.github.com/users/martinqt","html_url":"https://github.com/martinqt","followers_url":"https://api.github.com/users/martinqt/followers","following_url":"https://api.github.com/users/martinqt/following{/other_user}","gists_url":"https://api.github.com/users/martinqt/gists{/gist_id}","starred_url":"https://api.github.com/users/martinqt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/martinqt/subscriptions","organizations_url":"https://api.github.com/users/martinqt/orgs","repos_url":"https://api.github.com/users/martinqt/repos","events_url":"https://api.github.com/users/martinqt/events{/privacy}","received_events_url":"https://api.github.com/users/martinqt/received_events","type":"User","site_admin":false},"parents":[{"sha":"8d236e91578eb4d1b967b419d0cf34573338a177","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/8d236e91578eb4d1b967b419d0cf34573338a177","html_url":"https://github.com/jacquev6/PyGithub/commit/8d236e91578eb4d1b967b419d0cf34573338a177"}]},{"sha":"8d236e91578eb4d1b967b419d0cf34573338a177","commit":{"author":{"name":"martinqt","email":"m.ki2@laposte.net","date":"2013-06-04T13:31:00Z"},"committer":{"name":"martinqt","email":"m.ki2@laposte.net","date":"2013-06-04T13:31:00Z"},"message":"Event docstring","tree":{"sha":"34c2d6b2c2acc221f8248e62331612781d182639","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/34c2d6b2c2acc221f8248e62331612781d182639"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/8d236e91578eb4d1b967b419d0cf34573338a177","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/8d236e91578eb4d1b967b419d0cf34573338a177","html_url":"https://github.com/jacquev6/PyGithub/commit/8d236e91578eb4d1b967b419d0cf34573338a177","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/8d236e91578eb4d1b967b419d0cf34573338a177/comments","author":{"login":"martinqt","id":2557975,"avatar_url":"https://1.gravatar.com/avatar/182c0579e9458df4b939c1de0981e31c?d=https%3A%2F%2Fidenticons.github.com%2F24858b884a8b74bcce2b765a4f8e329e.png&r=x","gravatar_id":"182c0579e9458df4b939c1de0981e31c","url":"https://api.github.com/users/martinqt","html_url":"https://github.com/martinqt","followers_url":"https://api.github.com/users/martinqt/followers","following_url":"https://api.github.com/users/martinqt/following{/other_user}","gists_url":"https://api.github.com/users/martinqt/gists{/gist_id}","starred_url":"https://api.github.com/users/martinqt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/martinqt/subscriptions","organizations_url":"https://api.github.com/users/martinqt/orgs","repos_url":"https://api.github.com/users/martinqt/repos","events_url":"https://api.github.com/users/martinqt/events{/privacy}","received_events_url":"https://api.github.com/users/martinqt/received_events","type":"User","site_admin":false},"committer":{"login":"martinqt","id":2557975,"avatar_url":"https://1.gravatar.com/avatar/182c0579e9458df4b939c1de0981e31c?d=https%3A%2F%2Fidenticons.github.com%2F24858b884a8b74bcce2b765a4f8e329e.png&r=x","gravatar_id":"182c0579e9458df4b939c1de0981e31c","url":"https://api.github.com/users/martinqt","html_url":"https://github.com/martinqt","followers_url":"https://api.github.com/users/martinqt/followers","following_url":"https://api.github.com/users/martinqt/following{/other_user}","gists_url":"https://api.github.com/users/martinqt/gists{/gist_id}","starred_url":"https://api.github.com/users/martinqt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/martinqt/subscriptions","organizations_url":"https://api.github.com/users/martinqt/orgs","repos_url":"https://api.github.com/users/martinqt/repos","events_url":"https://api.github.com/users/martinqt/events{/privacy}","received_events_url":"https://api.github.com/users/martinqt/received_events","type":"User","site_admin":false},"parents":[{"sha":"5ce5f5c68418bf45797f19cb0a50c03d429c90b5","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5ce5f5c68418bf45797f19cb0a50c03d429c90b5","html_url":"https://github.com/jacquev6/PyGithub/commit/5ce5f5c68418bf45797f19cb0a50c03d429c90b5"}]},{"sha":"5ce5f5c68418bf45797f19cb0a50c03d429c90b5","commit":{"author":{"name":"martinqt","email":"m.ki2@laposte.net","date":"2013-06-04T13:29:35Z"},"committer":{"name":"martinqt","email":"m.ki2@laposte.net","date":"2013-06-04T13:29:35Z"},"message":"Label docstring","tree":{"sha":"eee731e4946523d814f281722d789edba808e8ef","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/eee731e4946523d814f281722d789edba808e8ef"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/5ce5f5c68418bf45797f19cb0a50c03d429c90b5","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5ce5f5c68418bf45797f19cb0a50c03d429c90b5","html_url":"https://github.com/jacquev6/PyGithub/commit/5ce5f5c68418bf45797f19cb0a50c03d429c90b5","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5ce5f5c68418bf45797f19cb0a50c03d429c90b5/comments","author":{"login":"martinqt","id":2557975,"avatar_url":"https://1.gravatar.com/avatar/182c0579e9458df4b939c1de0981e31c?d=https%3A%2F%2Fidenticons.github.com%2F24858b884a8b74bcce2b765a4f8e329e.png&r=x","gravatar_id":"182c0579e9458df4b939c1de0981e31c","url":"https://api.github.com/users/martinqt","html_url":"https://github.com/martinqt","followers_url":"https://api.github.com/users/martinqt/followers","following_url":"https://api.github.com/users/martinqt/following{/other_user}","gists_url":"https://api.github.com/users/martinqt/gists{/gist_id}","starred_url":"https://api.github.com/users/martinqt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/martinqt/subscriptions","organizations_url":"https://api.github.com/users/martinqt/orgs","repos_url":"https://api.github.com/users/martinqt/repos","events_url":"https://api.github.com/users/martinqt/events{/privacy}","received_events_url":"https://api.github.com/users/martinqt/received_events","type":"User","site_admin":false},"committer":{"login":"martinqt","id":2557975,"avatar_url":"https://1.gravatar.com/avatar/182c0579e9458df4b939c1de0981e31c?d=https%3A%2F%2Fidenticons.github.com%2F24858b884a8b74bcce2b765a4f8e329e.png&r=x","gravatar_id":"182c0579e9458df4b939c1de0981e31c","url":"https://api.github.com/users/martinqt","html_url":"https://github.com/martinqt","followers_url":"https://api.github.com/users/martinqt/followers","following_url":"https://api.github.com/users/martinqt/following{/other_user}","gists_url":"https://api.github.com/users/martinqt/gists{/gist_id}","starred_url":"https://api.github.com/users/martinqt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/martinqt/subscriptions","organizations_url":"https://api.github.com/users/martinqt/orgs","repos_url":"https://api.github.com/users/martinqt/repos","events_url":"https://api.github.com/users/martinqt/events{/privacy}","received_events_url":"https://api.github.com/users/martinqt/received_events","type":"User","site_admin":false},"parents":[{"sha":"21cf9b15b57cb919f0ebb4fcd6117cea4b6f1163","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/21cf9b15b57cb919f0ebb4fcd6117cea4b6f1163","html_url":"https://github.com/jacquev6/PyGithub/commit/21cf9b15b57cb919f0ebb4fcd6117cea4b6f1163"}]}] + diff --git a/lib/github/tests/ReplayData/Repository.testGetCommitsWithSinceUntil.txt b/lib/github/tests/ReplayData/Repository.testGetCommitsWithSinceUntil.txt new file mode 100644 index 0000000000..40383c9120 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetCommitsWithSinceUntil.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/commits?since=2013-03-01T00%3A00%3A00Z&until=2013-03-31T00%3A00%3A00Z +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4997'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '95940'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 29 Mar 2013 15:54:15 GMT'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="first"'), ('etag', '"ab4396ff3915897a1c3fe5a4b5db2697"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 19 Aug 2013 21:22:58 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1376950974')] +[{"sha":"db5560bd658b5d8057a864f7037ace4d5f618f1b","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-29T15:54:15Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-29T15:54:15Z"},"message":"Add a script to check copyrights with git log. And fix copyrights.","tree":{"sha":"072b9e971d71c06dc8329773b635d7e543eb0755","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/072b9e971d71c06dc8329773b635d7e543eb0755"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/db5560bd658b5d8057a864f7037ace4d5f618f1b","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/db5560bd658b5d8057a864f7037ace4d5f618f1b","html_url":"https://github.com/jacquev6/PyGithub/commit/db5560bd658b5d8057a864f7037ace4d5f618f1b","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/db5560bd658b5d8057a864f7037ace4d5f618f1b/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"f266fed520fea4f683caabe0b38e1f758cfc5cff","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/f266fed520fea4f683caabe0b38e1f758cfc5cff","html_url":"https://github.com/jacquev6/PyGithub/commit/f266fed520fea4f683caabe0b38e1f758cfc5cff"}]},{"sha":"f266fed520fea4f683caabe0b38e1f758cfc5cff","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-29T12:26:53Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-29T12:26:53Z"},"message":"Fix tests for Python <= 2.6","tree":{"sha":"6e2de6a307b94f74a3897318a0057e1386375816","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/6e2de6a307b94f74a3897318a0057e1386375816"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/f266fed520fea4f683caabe0b38e1f758cfc5cff","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/f266fed520fea4f683caabe0b38e1f758cfc5cff","html_url":"https://github.com/jacquev6/PyGithub/commit/f266fed520fea4f683caabe0b38e1f758cfc5cff","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/f266fed520fea4f683caabe0b38e1f758cfc5cff/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"4df3a7eb47888f38c4c6dae50573f030a0a3f1e1","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4df3a7eb47888f38c4c6dae50573f030a0a3f1e1","html_url":"https://github.com/jacquev6/PyGithub/commit/4df3a7eb47888f38c4c6dae50573f030a0a3f1e1"}]},{"sha":"dff094650011398fd8f0a57bf2668a066fb2cbcb","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-29T12:16:57Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-29T12:16:57Z"},"message":"Add a documentation note about exceptions","tree":{"sha":"1e86ab9f72610891a1f05220dc3559dc351d8af3","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/1e86ab9f72610891a1f05220dc3559dc351d8af3"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/dff094650011398fd8f0a57bf2668a066fb2cbcb","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/dff094650011398fd8f0a57bf2668a066fb2cbcb","html_url":"https://github.com/jacquev6/PyGithub/commit/dff094650011398fd8f0a57bf2668a066fb2cbcb","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/dff094650011398fd8f0a57bf2668a066fb2cbcb/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"c1d747a9133a1c6cae1f0e11105a5f490f65fda6","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c1d747a9133a1c6cae1f0e11105a5f490f65fda6","html_url":"https://github.com/jacquev6/PyGithub/commit/c1d747a9133a1c6cae1f0e11105a5f490f65fda6"}]},{"sha":"c1d747a9133a1c6cae1f0e11105a5f490f65fda6","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-29T12:13:44Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-29T12:13:44Z"},"message":"Refactor tests\n\nWe don't need to inspect the exception, so we can use\nunittest.TestCase.assertRaises","tree":{"sha":"fe7b963f4044724abbad0bf21f3291b81c0f6f87","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/fe7b963f4044724abbad0bf21f3291b81c0f6f87"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/c1d747a9133a1c6cae1f0e11105a5f490f65fda6","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c1d747a9133a1c6cae1f0e11105a5f490f65fda6","html_url":"https://github.com/jacquev6/PyGithub/commit/c1d747a9133a1c6cae1f0e11105a5f490f65fda6","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c1d747a9133a1c6cae1f0e11105a5f490f65fda6/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"0bc368973acfb50a531329b6c196ba92e0a81890","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0bc368973acfb50a531329b6c196ba92e0a81890","html_url":"https://github.com/jacquev6/PyGithub/commit/0bc368973acfb50a531329b6c196ba92e0a81890"}]},{"sha":"0bc368973acfb50a531329b6c196ba92e0a81890","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-29T12:10:59Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-29T12:10:59Z"},"message":"Raise a specific exception for non-existing objects (issue #152)","tree":{"sha":"166135287f1879ea4f27bc8bd5a7cba17ad01dfc","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/166135287f1879ea4f27bc8bd5a7cba17ad01dfc"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/0bc368973acfb50a531329b6c196ba92e0a81890","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0bc368973acfb50a531329b6c196ba92e0a81890","html_url":"https://github.com/jacquev6/PyGithub/commit/0bc368973acfb50a531329b6c196ba92e0a81890","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0bc368973acfb50a531329b6c196ba92e0a81890/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"7b3e4c15ed6182963d66ffa9f0522acd0765275c","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/7b3e4c15ed6182963d66ffa9f0522acd0765275c","html_url":"https://github.com/jacquev6/PyGithub/commit/7b3e4c15ed6182963d66ffa9f0522acd0765275c"}]},{"sha":"7b3e4c15ed6182963d66ffa9f0522acd0765275c","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-29T12:01:06Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-29T12:01:06Z"},"message":"Raise a specific exception for bad credentials (issue #152)","tree":{"sha":"1d4d6301b3d0205617af9a8b187a63c80dde5e15","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/1d4d6301b3d0205617af9a8b187a63c80dde5e15"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/7b3e4c15ed6182963d66ffa9f0522acd0765275c","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/7b3e4c15ed6182963d66ffa9f0522acd0765275c","html_url":"https://github.com/jacquev6/PyGithub/commit/7b3e4c15ed6182963d66ffa9f0522acd0765275c","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/7b3e4c15ed6182963d66ffa9f0522acd0765275c/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"f5d8e221d116b74a200d87afca32247f01204ba1","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/f5d8e221d116b74a200d87afca32247f01204ba1","html_url":"https://github.com/jacquev6/PyGithub/commit/f5d8e221d116b74a200d87afca32247f01204ba1"}]},{"sha":"4df3a7eb47888f38c4c6dae50573f030a0a3f1e1","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-28T20:52:49Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-28T20:52:49Z"},"message":"Merge branch 'topic/CheckPragmaNoCover' into develop","tree":{"sha":"5c319c58976c6a69cbb0f182fdfd5ec976beb218","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/5c319c58976c6a69cbb0f182fdfd5ec976beb218"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/4df3a7eb47888f38c4c6dae50573f030a0a3f1e1","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4df3a7eb47888f38c4c6dae50573f030a0a3f1e1","html_url":"https://github.com/jacquev6/PyGithub/commit/4df3a7eb47888f38c4c6dae50573f030a0a3f1e1","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4df3a7eb47888f38c4c6dae50573f030a0a3f1e1/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"dc96fef052f2b5c6adb34da65169e8df3f35f611","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/dc96fef052f2b5c6adb34da65169e8df3f35f611","html_url":"https://github.com/jacquev6/PyGithub/commit/dc96fef052f2b5c6adb34da65169e8df3f35f611"},{"sha":"e0db8cad4ec01c65e5e0eb50e11765e425e88ef9","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e0db8cad4ec01c65e5e0eb50e11765e425e88ef9","html_url":"https://github.com/jacquev6/PyGithub/commit/e0db8cad4ec01c65e5e0eb50e11765e425e88ef9"}]},{"sha":"e0db8cad4ec01c65e5e0eb50e11765e425e88ef9","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-28T20:51:02Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-28T20:51:02Z"},"message":"pep8","tree":{"sha":"5c319c58976c6a69cbb0f182fdfd5ec976beb218","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/5c319c58976c6a69cbb0f182fdfd5ec976beb218"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/e0db8cad4ec01c65e5e0eb50e11765e425e88ef9","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e0db8cad4ec01c65e5e0eb50e11765e425e88ef9","html_url":"https://github.com/jacquev6/PyGithub/commit/e0db8cad4ec01c65e5e0eb50e11765e425e88ef9","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e0db8cad4ec01c65e5e0eb50e11765e425e88ef9/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"1c47be4e895b823baf907b25c647e43ab63c16dd","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1c47be4e895b823baf907b25c647e43ab63c16dd","html_url":"https://github.com/jacquev6/PyGithub/commit/1c47be4e895b823baf907b25c647e43ab63c16dd"}]},{"sha":"1c47be4e895b823baf907b25c647e43ab63c16dd","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-28T20:50:17Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-28T20:50:17Z"},"message":"Document `#pragma no cover`s (Issue #154)","tree":{"sha":"62a4201d09fcf3c4c528a1b91ba4aa74cb66e8f6","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/62a4201d09fcf3c4c528a1b91ba4aa74cb66e8f6"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/1c47be4e895b823baf907b25c647e43ab63c16dd","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1c47be4e895b823baf907b25c647e43ab63c16dd","html_url":"https://github.com/jacquev6/PyGithub/commit/1c47be4e895b823baf907b25c647e43ab63c16dd","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1c47be4e895b823baf907b25c647e43ab63c16dd/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"8a9afbb1aa36c6ba04142c6e6c1cfbd7de982a6a","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/8a9afbb1aa36c6ba04142c6e6c1cfbd7de982a6a","html_url":"https://github.com/jacquev6/PyGithub/commit/8a9afbb1aa36c6ba04142c6e6c1cfbd7de982a6a"}]},{"sha":"8a9afbb1aa36c6ba04142c6e6c1cfbd7de982a6a","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-28T20:49:39Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-28T20:49:39Z"},"message":"Remove branches for hypothetical unknown Authorization headers","tree":{"sha":"4f9e93f7e2b6a84809d22ca1d974e76ce54e3156","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/4f9e93f7e2b6a84809d22ca1d974e76ce54e3156"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/8a9afbb1aa36c6ba04142c6e6c1cfbd7de982a6a","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/8a9afbb1aa36c6ba04142c6e6c1cfbd7de982a6a","html_url":"https://github.com/jacquev6/PyGithub/commit/8a9afbb1aa36c6ba04142c6e6c1cfbd7de982a6a","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/8a9afbb1aa36c6ba04142c6e6c1cfbd7de982a6a/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"1c67359a318f05e50bf457818e1983ce95aa5946","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1c67359a318f05e50bf457818e1983ce95aa5946","html_url":"https://github.com/jacquev6/PyGithub/commit/1c67359a318f05e50bf457818e1983ce95aa5946"}]},{"sha":"1c67359a318f05e50bf457818e1983ce95aa5946","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-28T20:28:01Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-28T20:28:01Z"},"message":"Improve test coverage a bit","tree":{"sha":"f22617e135ef910c5caf6ba34874d3ffa5b46e4c","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/f22617e135ef910c5caf6ba34874d3ffa5b46e4c"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/1c67359a318f05e50bf457818e1983ce95aa5946","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1c67359a318f05e50bf457818e1983ce95aa5946","html_url":"https://github.com/jacquev6/PyGithub/commit/1c67359a318f05e50bf457818e1983ce95aa5946","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1c67359a318f05e50bf457818e1983ce95aa5946/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"1d18bd66f3a4a4225435bd38df04b8a227b5e821","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1d18bd66f3a4a4225435bd38df04b8a227b5e821","html_url":"https://github.com/jacquev6/PyGithub/commit/1d18bd66f3a4a4225435bd38df04b8a227b5e821"}]},{"sha":"1d18bd66f3a4a4225435bd38df04b8a227b5e821","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-28T20:23:03Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-28T20:23:03Z"},"message":"Add a test that would have caught #153","tree":{"sha":"1ad779f4f01d8e13c861bf5d0ae0a64c5f641df9","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/1ad779f4f01d8e13c861bf5d0ae0a64c5f641df9"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/1d18bd66f3a4a4225435bd38df04b8a227b5e821","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1d18bd66f3a4a4225435bd38df04b8a227b5e821","html_url":"https://github.com/jacquev6/PyGithub/commit/1d18bd66f3a4a4225435bd38df04b8a227b5e821","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1d18bd66f3a4a4225435bd38df04b8a227b5e821/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"b9d71fa787a2ffb99b6631e4bd6df932a4d4adbb","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b9d71fa787a2ffb99b6631e4bd6df932a4d4adbb","html_url":"https://github.com/jacquev6/PyGithub/commit/b9d71fa787a2ffb99b6631e4bd6df932a4d4adbb"}]},{"sha":"b9d71fa787a2ffb99b6631e4bd6df932a4d4adbb","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-28T20:05:19Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-28T20:05:19Z"},"message":"Slightly improve coverage :-D","tree":{"sha":"b8517ca1fbc058c54b5376855a851426f590db4c","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/b8517ca1fbc058c54b5376855a851426f590db4c"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/b9d71fa787a2ffb99b6631e4bd6df932a4d4adbb","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b9d71fa787a2ffb99b6631e4bd6df932a4d4adbb","html_url":"https://github.com/jacquev6/PyGithub/commit/b9d71fa787a2ffb99b6631e4bd6df932a4d4adbb","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b9d71fa787a2ffb99b6631e4bd6df932a4d4adbb/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"dc96fef052f2b5c6adb34da65169e8df3f35f611","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/dc96fef052f2b5c6adb34da65169e8df3f35f611","html_url":"https://github.com/jacquev6/PyGithub/commit/dc96fef052f2b5c6adb34da65169e8df3f35f611"}]},{"sha":"f5d8e221d116b74a200d87afca32247f01204ba1","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-28T19:55:48Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-28T19:55:48Z"},"message":"Add (a bit of) documentation about error handling and exceptions","tree":{"sha":"f62a49adc111ad3b2911480026af92779b813d59","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/f62a49adc111ad3b2911480026af92779b813d59"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/f5d8e221d116b74a200d87afca32247f01204ba1","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/f5d8e221d116b74a200d87afca32247f01204ba1","html_url":"https://github.com/jacquev6/PyGithub/commit/f5d8e221d116b74a200d87afca32247f01204ba1","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/f5d8e221d116b74a200d87afca32247f01204ba1/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"dc96fef052f2b5c6adb34da65169e8df3f35f611","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/dc96fef052f2b5c6adb34da65169e8df3f35f611","html_url":"https://github.com/jacquev6/PyGithub/commit/dc96fef052f2b5c6adb34da65169e8df3f35f611"}]},{"sha":"dc96fef052f2b5c6adb34da65169e8df3f35f611","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-28T19:10:31Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-28T19:10:31Z"},"message":"Publish version 1.13.1","tree":{"sha":"896d176ae82c743cf682613dd1f60fd03872a204","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/896d176ae82c743cf682613dd1f60fd03872a204"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/dc96fef052f2b5c6adb34da65169e8df3f35f611","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/dc96fef052f2b5c6adb34da65169e8df3f35f611","html_url":"https://github.com/jacquev6/PyGithub/commit/dc96fef052f2b5c6adb34da65169e8df3f35f611","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/dc96fef052f2b5c6adb34da65169e8df3f35f611/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"c85af79db11ed1d2f93261ea4069a23ff1709125","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c85af79db11ed1d2f93261ea4069a23ff1709125","html_url":"https://github.com/jacquev6/PyGithub/commit/c85af79db11ed1d2f93261ea4069a23ff1709125"}]},{"sha":"c85af79db11ed1d2f93261ea4069a23ff1709125","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-28T19:05:13Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-28T19:05:13Z"},"message":"Fix authentication with Python 3 (Issue #153)","tree":{"sha":"3e7ad916a818e36e729c706db36f94d3582d1a45","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/3e7ad916a818e36e729c706db36f94d3582d1a45"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/c85af79db11ed1d2f93261ea4069a23ff1709125","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c85af79db11ed1d2f93261ea4069a23ff1709125","html_url":"https://github.com/jacquev6/PyGithub/commit/c85af79db11ed1d2f93261ea4069a23ff1709125","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c85af79db11ed1d2f93261ea4069a23ff1709125/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"0dd1adb4f06f45d554d12083b312fcdb6f6be8d1","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0dd1adb4f06f45d554d12083b312fcdb6f6be8d1","html_url":"https://github.com/jacquev6/PyGithub/commit/0dd1adb4f06f45d554d12083b312fcdb6f6be8d1"}]},{"sha":"0dd1adb4f06f45d554d12083b312fcdb6f6be8d1","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-23T12:07:00Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-23T12:07:00Z"},"message":"List all versions of Python in setup.py","tree":{"sha":"65c78a73d849fa6decb239f069a7cd1e47dea330","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/65c78a73d849fa6decb239f069a7cd1e47dea330"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/0dd1adb4f06f45d554d12083b312fcdb6f6be8d1","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0dd1adb4f06f45d554d12083b312fcdb6f6be8d1","html_url":"https://github.com/jacquev6/PyGithub/commit/0dd1adb4f06f45d554d12083b312fcdb6f6be8d1","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0dd1adb4f06f45d554d12083b312fcdb6f6be8d1/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"b7e4000450e89b8c6e947e3a1e52fb06da7c9621","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b7e4000450e89b8c6e947e3a1e52fb06da7c9621","html_url":"https://github.com/jacquev6/PyGithub/commit/b7e4000450e89b8c6e947e3a1e52fb06da7c9621"}]},{"sha":"b7e4000450e89b8c6e947e3a1e52fb06da7c9621","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-22T17:41:13Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-22T17:41:13Z"},"message":"Publish version 1.13.0","tree":{"sha":"d9ea78368ab68bb0696f5fe85e11b0f92ab2adf2","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/d9ea78368ab68bb0696f5fe85e11b0f92ab2adf2"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/b7e4000450e89b8c6e947e3a1e52fb06da7c9621","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b7e4000450e89b8c6e947e3a1e52fb06da7c9621","html_url":"https://github.com/jacquev6/PyGithub/commit/b7e4000450e89b8c6e947e3a1e52fb06da7c9621","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b7e4000450e89b8c6e947e3a1e52fb06da7c9621/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"1d9ad14fa918866c418067e774f65cede8e38682","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1d9ad14fa918866c418067e774f65cede8e38682","html_url":"https://github.com/jacquev6/PyGithub/commit/1d9ad14fa918866c418067e774f65cede8e38682"}]},{"sha":"1d9ad14fa918866c418067e774f65cede8e38682","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-22T17:29:14Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-22T17:29:14Z"},"message":"Use bash for manage.sh","tree":{"sha":"69af02f3ea18c29ccfa5ca370ae2ec9f6fbb6c76","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/69af02f3ea18c29ccfa5ca370ae2ec9f6fbb6c76"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/1d9ad14fa918866c418067e774f65cede8e38682","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1d9ad14fa918866c418067e774f65cede8e38682","html_url":"https://github.com/jacquev6/PyGithub/commit/1d9ad14fa918866c418067e774f65cede8e38682","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1d9ad14fa918866c418067e774f65cede8e38682/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"1bb05fef01d0a040cb2b931a4d44392784a2f0c1","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1bb05fef01d0a040cb2b931a4d44392784a2f0c1","html_url":"https://github.com/jacquev6/PyGithub/commit/1bb05fef01d0a040cb2b931a4d44392784a2f0c1"}]},{"sha":"1bb05fef01d0a040cb2b931a4d44392784a2f0c1","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-22T16:52:00Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-22T16:52:00Z"},"message":"Respect pep 8","tree":{"sha":"b16178379b74069e1fcdf21be9d2b8eddaddb7dd","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/b16178379b74069e1fcdf21be9d2b8eddaddb7dd"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/1bb05fef01d0a040cb2b931a4d44392784a2f0c1","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1bb05fef01d0a040cb2b931a4d44392784a2f0c1","html_url":"https://github.com/jacquev6/PyGithub/commit/1bb05fef01d0a040cb2b931a4d44392784a2f0c1","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1bb05fef01d0a040cb2b931a4d44392784a2f0c1/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"d9b29851ddccc907f71f1ae662e57f2cd7c7dc71","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/d9b29851ddccc907f71f1ae662e57f2cd7c7dc71","html_url":"https://github.com/jacquev6/PyGithub/commit/d9b29851ddccc907f71f1ae662e57f2cd7c7dc71"}]},{"sha":"d9b29851ddccc907f71f1ae662e57f2cd7c7dc71","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-21T23:33:13Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-21T23:33:13Z"},"message":"Fix tests for Python 2.5","tree":{"sha":"4d98111af3d18526aac214545cf0287267006386","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/4d98111af3d18526aac214545cf0287267006386"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/d9b29851ddccc907f71f1ae662e57f2cd7c7dc71","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/d9b29851ddccc907f71f1ae662e57f2cd7c7dc71","html_url":"https://github.com/jacquev6/PyGithub/commit/d9b29851ddccc907f71f1ae662e57f2cd7c7dc71","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/d9b29851ddccc907f71f1ae662e57f2cd7c7dc71/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"f962bc71fee609cd54fe69c956c8b81703d2c19a","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/f962bc71fee609cd54fe69c956c8b81703d2c19a","html_url":"https://github.com/jacquev6/PyGithub/commit/f962bc71fee609cd54fe69c956c8b81703d2c19a"}]},{"sha":"f962bc71fee609cd54fe69c956c8b81703d2c19a","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-21T23:29:44Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-21T23:29:44Z"},"message":"Fix tests for Python 2.5","tree":{"sha":"01ab15ff86ef1982c489a3846b517957f78cd37a","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/01ab15ff86ef1982c489a3846b517957f78cd37a"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/f962bc71fee609cd54fe69c956c8b81703d2c19a","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/f962bc71fee609cd54fe69c956c8b81703d2c19a","html_url":"https://github.com/jacquev6/PyGithub/commit/f962bc71fee609cd54fe69c956c8b81703d2c19a","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/f962bc71fee609cd54fe69c956c8b81703d2c19a/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"7a9c0b916c632be8d6a65bc1b6f558508f04bb22","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/7a9c0b916c632be8d6a65bc1b6f558508f04bb22","html_url":"https://github.com/jacquev6/PyGithub/commit/7a9c0b916c632be8d6a65bc1b6f558508f04bb22"}]},{"sha":"7a9c0b916c632be8d6a65bc1b6f558508f04bb22","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-21T22:18:21Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-21T22:18:21Z"},"message":"Fix tests on Python 3.3 (issue #149)\n\nThe output order of dicts has changed","tree":{"sha":"b499288aa4cb3222bc9b8997386b71748c1d5967","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/b499288aa4cb3222bc9b8997386b71748c1d5967"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/7a9c0b916c632be8d6a65bc1b6f558508f04bb22","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/7a9c0b916c632be8d6a65bc1b6f558508f04bb22","html_url":"https://github.com/jacquev6/PyGithub/commit/7a9c0b916c632be8d6a65bc1b6f558508f04bb22","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/7a9c0b916c632be8d6a65bc1b6f558508f04bb22/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"82ce7b1ee30d308b48bdac6d8737dbca70500462","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/82ce7b1ee30d308b48bdac6d8737dbca70500462","html_url":"https://github.com/jacquev6/PyGithub/commit/82ce7b1ee30d308b48bdac6d8737dbca70500462"}]},{"sha":"82ce7b1ee30d308b48bdac6d8737dbca70500462","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-21T21:06:24Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-21T21:06:24Z"},"message":"Fix tests for Python 3.2 on Windows","tree":{"sha":"7766488284c248fa005be568fba13578b53e588d","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/7766488284c248fa005be568fba13578b53e588d"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/82ce7b1ee30d308b48bdac6d8737dbca70500462","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/82ce7b1ee30d308b48bdac6d8737dbca70500462","html_url":"https://github.com/jacquev6/PyGithub/commit/82ce7b1ee30d308b48bdac6d8737dbca70500462","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/82ce7b1ee30d308b48bdac6d8737dbca70500462/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"1e99e7d5b21c71bf68cc5cc21faec30ee603b8b8","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1e99e7d5b21c71bf68cc5cc21faec30ee603b8b8","html_url":"https://github.com/jacquev6/PyGithub/commit/1e99e7d5b21c71bf68cc5cc21faec30ee603b8b8"}]},{"sha":"1e99e7d5b21c71bf68cc5cc21faec30ee603b8b8","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-21T21:05:37Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-21T21:05:37Z"},"message":"Reduce 2to3 differences","tree":{"sha":"044b5937a2fa1a5628285e202c2b6c8b36e47ee6","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/044b5937a2fa1a5628285e202c2b6c8b36e47ee6"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/1e99e7d5b21c71bf68cc5cc21faec30ee603b8b8","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1e99e7d5b21c71bf68cc5cc21faec30ee603b8b8","html_url":"https://github.com/jacquev6/PyGithub/commit/1e99e7d5b21c71bf68cc5cc21faec30ee603b8b8","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1e99e7d5b21c71bf68cc5cc21faec30ee603b8b8/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"a397fac6db9f87a903ec3ede9643cb2b4224ed82","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a397fac6db9f87a903ec3ede9643cb2b4224ed82","html_url":"https://github.com/jacquev6/PyGithub/commit/a397fac6db9f87a903ec3ede9643cb2b4224ed82"}]},{"sha":"a397fac6db9f87a903ec3ede9643cb2b4224ed82","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-21T20:56:51Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-21T20:56:51Z"},"message":"Fix doc for raw_data (issue #144)","tree":{"sha":"b34aedcd0170643aa079001a153529b9fe5e1721","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/b34aedcd0170643aa079001a153529b9fe5e1721"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/a397fac6db9f87a903ec3ede9643cb2b4224ed82","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a397fac6db9f87a903ec3ede9643cb2b4224ed82","html_url":"https://github.com/jacquev6/PyGithub/commit/a397fac6db9f87a903ec3ede9643cb2b4224ed82","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a397fac6db9f87a903ec3ede9643cb2b4224ed82/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"109495175e926731703a55cafd8b542a07366513","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/109495175e926731703a55cafd8b542a07366513","html_url":"https://github.com/jacquev6/PyGithub/commit/109495175e926731703a55cafd8b542a07366513"}]},{"sha":"109495175e926731703a55cafd8b542a07366513","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-21T20:45:43Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-21T20:45:43Z"},"message":"Fix doc of properties of class Github","tree":{"sha":"d0812970ee60eac5678a17f0b1752cd9360e2c83","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/d0812970ee60eac5678a17f0b1752cd9360e2c83"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/109495175e926731703a55cafd8b542a07366513","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/109495175e926731703a55cafd8b542a07366513","html_url":"https://github.com/jacquev6/PyGithub/commit/109495175e926731703a55cafd8b542a07366513","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/109495175e926731703a55cafd8b542a07366513/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"da6bbdb69485fc3256030d8296589d4c2fb5df21","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/da6bbdb69485fc3256030d8296589d4c2fb5df21","html_url":"https://github.com/jacquev6/PyGithub/commit/da6bbdb69485fc3256030d8296589d4c2fb5df21"}]},{"sha":"da6bbdb69485fc3256030d8296589d4c2fb5df21","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-19T22:14:29Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-19T22:14:29Z"},"message":"Merge branch 'topic/Notifications' into develop","tree":{"sha":"fad8d647e1942ccfc5ce0f6a1c15193b11bd5d54","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/fad8d647e1942ccfc5ce0f6a1c15193b11bd5d54"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/da6bbdb69485fc3256030d8296589d4c2fb5df21","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/da6bbdb69485fc3256030d8296589d4c2fb5df21","html_url":"https://github.com/jacquev6/PyGithub/commit/da6bbdb69485fc3256030d8296589d4c2fb5df21","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/da6bbdb69485fc3256030d8296589d4c2fb5df21/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"34c18342dcce9697abc6f522c3506485202e6e7e","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/34c18342dcce9697abc6f522c3506485202e6e7e","html_url":"https://github.com/jacquev6/PyGithub/commit/34c18342dcce9697abc6f522c3506485202e6e7e"},{"sha":"ee29deddd27480401db484733ecde9e7b1df5eda","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ee29deddd27480401db484733ecde9e7b1df5eda","html_url":"https://github.com/jacquev6/PyGithub/commit/ee29deddd27480401db484733ecde9e7b1df5eda"}]},{"sha":"34c18342dcce9697abc6f522c3506485202e6e7e","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-19T21:37:30Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-19T21:37:30Z"},"message":"Merge branch 'topic/ExposeRawData' into develop","tree":{"sha":"a8debc5ced39b2846b129f7876d7b09708cef77b","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/a8debc5ced39b2846b129f7876d7b09708cef77b"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/34c18342dcce9697abc6f522c3506485202e6e7e","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/34c18342dcce9697abc6f522c3506485202e6e7e","html_url":"https://github.com/jacquev6/PyGithub/commit/34c18342dcce9697abc6f522c3506485202e6e7e","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/34c18342dcce9697abc6f522c3506485202e6e7e/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"5d02de6f82a36753a2d715dd8875fc5c60e4cef6","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5d02de6f82a36753a2d715dd8875fc5c60e4cef6","html_url":"https://github.com/jacquev6/PyGithub/commit/5d02de6f82a36753a2d715dd8875fc5c60e4cef6"},{"sha":"040f024cf4bbbebe4dfe35d29854f398a0e2117e","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/040f024cf4bbbebe4dfe35d29854f398a0e2117e","html_url":"https://github.com/jacquev6/PyGithub/commit/040f024cf4bbbebe4dfe35d29854f398a0e2117e"}]},{"sha":"ee29deddd27480401db484733ecde9e7b1df5eda","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-19T21:36:35Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-19T21:36:35Z"},"message":"Complete doc/apis.rst (pull #148)","tree":{"sha":"89260e5c29aca09e440e2a3989017cc194b47bcc","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/89260e5c29aca09e440e2a3989017cc194b47bcc"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/ee29deddd27480401db484733ecde9e7b1df5eda","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ee29deddd27480401db484733ecde9e7b1df5eda","html_url":"https://github.com/jacquev6/PyGithub/commit/ee29deddd27480401db484733ecde9e7b1df5eda","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ee29deddd27480401db484733ecde9e7b1df5eda/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"0901df1a2bed3f993cfe6e0d4cff5923bbf6ce32","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0901df1a2bed3f993cfe6e0d4cff5923bbf6ce32","html_url":"https://github.com/jacquev6/PyGithub/commit/0901df1a2bed3f993cfe6e0d4cff5923bbf6ce32"}]}] + +https +GET +api.github.com +None +/repositories/3544490/commits?since=2013-03-01T00%3A00%3A00Z&until=2013-03-31T00%3A00%3A00Z&top=master&last_sha=ee29deddd27480401db484733ecde9e7b1df5eda +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4996'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '54863'), ('server', 'GitHub.com'), ('last-modified', 'Tue, 19 Mar 2013 21:07:42 GMT'), ('x-ratelimit-limit', '5000'), ('link', '; rel="first"'), ('etag', '"8258d1301946e26d0951ed19a62b5770"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 19 Aug 2013 21:23:00 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1376950974')] +[{"sha":"0901df1a2bed3f993cfe6e0d4cff5923bbf6ce32","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-19T21:07:42Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-19T21:07:42Z"},"message":"Improve test coverage (pull #148)","tree":{"sha":"1abc0c2cec68aa8cb836475de9a38d6dad198dff","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/1abc0c2cec68aa8cb836475de9a38d6dad198dff"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/0901df1a2bed3f993cfe6e0d4cff5923bbf6ce32","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0901df1a2bed3f993cfe6e0d4cff5923bbf6ce32","html_url":"https://github.com/jacquev6/PyGithub/commit/0901df1a2bed3f993cfe6e0d4cff5923bbf6ce32","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0901df1a2bed3f993cfe6e0d4cff5923bbf6ce32/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"edcf40bc7f25d1aff5c404406fbb37ad1bcf691e","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/edcf40bc7f25d1aff5c404406fbb37ad1bcf691e","html_url":"https://github.com/jacquev6/PyGithub/commit/edcf40bc7f25d1aff5c404406fbb37ad1bcf691e"}]},{"sha":"edcf40bc7f25d1aff5c404406fbb37ad1bcf691e","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-19T21:07:29Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-19T21:07:29Z"},"message":"Move get_notification(s) to AuthenticatedUser (pull #148)","tree":{"sha":"947fbb709f47ea922ee93babdba30035970ab36b","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/947fbb709f47ea922ee93babdba30035970ab36b"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/edcf40bc7f25d1aff5c404406fbb37ad1bcf691e","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/edcf40bc7f25d1aff5c404406fbb37ad1bcf691e","html_url":"https://github.com/jacquev6/PyGithub/commit/edcf40bc7f25d1aff5c404406fbb37ad1bcf691e","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/edcf40bc7f25d1aff5c404406fbb37ad1bcf691e/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"f25c54e1d4eefb11c18f3de85270a4b19edea3ce","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/f25c54e1d4eefb11c18f3de85270a4b19edea3ce","html_url":"https://github.com/jacquev6/PyGithub/commit/f25c54e1d4eefb11c18f3de85270a4b19edea3ce"}]},{"sha":"f25c54e1d4eefb11c18f3de85270a4b19edea3ce","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-19T20:27:34Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-19T20:27:34Z"},"message":"Fix documentation (pull #148)\n\nI had to separate class NotificationSubject in its own file, to cope\nwith my basic doc generation.","tree":{"sha":"66997949fd7a929bf1b2ae0d1d9bea09eab0e743","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/66997949fd7a929bf1b2ae0d1d9bea09eab0e743"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/f25c54e1d4eefb11c18f3de85270a4b19edea3ce","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/f25c54e1d4eefb11c18f3de85270a4b19edea3ce","html_url":"https://github.com/jacquev6/PyGithub/commit/f25c54e1d4eefb11c18f3de85270a4b19edea3ce","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/f25c54e1d4eefb11c18f3de85270a4b19edea3ce/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"23d668f11bdd806a871e0979bf5295d001f66ef2","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/23d668f11bdd806a871e0979bf5295d001f66ef2","html_url":"https://github.com/jacquev6/PyGithub/commit/23d668f11bdd806a871e0979bf5295d001f66ef2"}]},{"sha":"23d668f11bdd806a871e0979bf5295d001f66ef2","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-19T20:26:28Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-19T20:26:28Z"},"message":"Remove debug print (pull #148)","tree":{"sha":"72c53c895578a8fd7ce3686de239e4817bdac4ab","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/72c53c895578a8fd7ce3686de239e4817bdac4ab"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/23d668f11bdd806a871e0979bf5295d001f66ef2","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/23d668f11bdd806a871e0979bf5295d001f66ef2","html_url":"https://github.com/jacquev6/PyGithub/commit/23d668f11bdd806a871e0979bf5295d001f66ef2","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/23d668f11bdd806a871e0979bf5295d001f66ef2/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"50a243671f1fa139cb1186c4a44c1e96b8cd5749","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/50a243671f1fa139cb1186c4a44c1e96b8cd5749","html_url":"https://github.com/jacquev6/PyGithub/commit/50a243671f1fa139cb1186c4a44c1e96b8cd5749"}]},{"sha":"50a243671f1fa139cb1186c4a44c1e96b8cd5749","commit":{"author":{"name":"Peter Golm","email":"golm.peter@gmail.com","date":"2013-03-16T16:35:08Z"},"committer":{"name":"Peter Golm","email":"golm.peter@gmail.com","date":"2013-03-16T16:35:08Z"},"message":"Merge remote-tracking branch 'origin/develop' into NotificationAPI","tree":{"sha":"8f94dd4410d42c8f3d5d6429da010b782e894213","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/8f94dd4410d42c8f3d5d6429da010b782e894213"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/50a243671f1fa139cb1186c4a44c1e96b8cd5749","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/50a243671f1fa139cb1186c4a44c1e96b8cd5749","html_url":"https://github.com/jacquev6/PyGithub/commit/50a243671f1fa139cb1186c4a44c1e96b8cd5749","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/50a243671f1fa139cb1186c4a44c1e96b8cd5749/comments","author":{"login":"pgolm","id":1444194,"avatar_url":"https://2.gravatar.com/avatar/c6d6b2eb927ed858092c47da9f150372?d=https%3A%2F%2Fidenticons.github.com%2F57b229318d141b9912e2aa86fa75f97f.png","gravatar_id":"c6d6b2eb927ed858092c47da9f150372","url":"https://api.github.com/users/pgolm","html_url":"https://github.com/pgolm","followers_url":"https://api.github.com/users/pgolm/followers","following_url":"https://api.github.com/users/pgolm/following{/other_user}","gists_url":"https://api.github.com/users/pgolm/gists{/gist_id}","starred_url":"https://api.github.com/users/pgolm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pgolm/subscriptions","organizations_url":"https://api.github.com/users/pgolm/orgs","repos_url":"https://api.github.com/users/pgolm/repos","events_url":"https://api.github.com/users/pgolm/events{/privacy}","received_events_url":"https://api.github.com/users/pgolm/received_events","type":"User"},"committer":{"login":"pgolm","id":1444194,"avatar_url":"https://2.gravatar.com/avatar/c6d6b2eb927ed858092c47da9f150372?d=https%3A%2F%2Fidenticons.github.com%2F57b229318d141b9912e2aa86fa75f97f.png","gravatar_id":"c6d6b2eb927ed858092c47da9f150372","url":"https://api.github.com/users/pgolm","html_url":"https://github.com/pgolm","followers_url":"https://api.github.com/users/pgolm/followers","following_url":"https://api.github.com/users/pgolm/following{/other_user}","gists_url":"https://api.github.com/users/pgolm/gists{/gist_id}","starred_url":"https://api.github.com/users/pgolm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pgolm/subscriptions","organizations_url":"https://api.github.com/users/pgolm/orgs","repos_url":"https://api.github.com/users/pgolm/repos","events_url":"https://api.github.com/users/pgolm/events{/privacy}","received_events_url":"https://api.github.com/users/pgolm/received_events","type":"User"},"parents":[{"sha":"6a3a384fd0decac1203db6c2bddc58039b0390bc","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6a3a384fd0decac1203db6c2bddc58039b0390bc","html_url":"https://github.com/jacquev6/PyGithub/commit/6a3a384fd0decac1203db6c2bddc58039b0390bc"},{"sha":"82f5b4c61f86ae8c7cc85a31cb1a31180eeae32f","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/82f5b4c61f86ae8c7cc85a31cb1a31180eeae32f","html_url":"https://github.com/jacquev6/PyGithub/commit/82f5b4c61f86ae8c7cc85a31cb1a31180eeae32f"}]},{"sha":"6a3a384fd0decac1203db6c2bddc58039b0390bc","commit":{"author":{"name":"Peter Golm","email":"golm.peter@gmail.com","date":"2013-03-16T16:28:56Z"},"committer":{"name":"Peter Golm","email":"golm.peter@gmail.com","date":"2013-03-16T16:28:56Z"},"message":"this fixes #108","tree":{"sha":"8c3c3fafcad82f526f7dbf68bfa5a969e089a4ba","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/8c3c3fafcad82f526f7dbf68bfa5a969e089a4ba"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/6a3a384fd0decac1203db6c2bddc58039b0390bc","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6a3a384fd0decac1203db6c2bddc58039b0390bc","html_url":"https://github.com/jacquev6/PyGithub/commit/6a3a384fd0decac1203db6c2bddc58039b0390bc","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6a3a384fd0decac1203db6c2bddc58039b0390bc/comments","author":{"login":"pgolm","id":1444194,"avatar_url":"https://2.gravatar.com/avatar/c6d6b2eb927ed858092c47da9f150372?d=https%3A%2F%2Fidenticons.github.com%2F57b229318d141b9912e2aa86fa75f97f.png","gravatar_id":"c6d6b2eb927ed858092c47da9f150372","url":"https://api.github.com/users/pgolm","html_url":"https://github.com/pgolm","followers_url":"https://api.github.com/users/pgolm/followers","following_url":"https://api.github.com/users/pgolm/following{/other_user}","gists_url":"https://api.github.com/users/pgolm/gists{/gist_id}","starred_url":"https://api.github.com/users/pgolm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pgolm/subscriptions","organizations_url":"https://api.github.com/users/pgolm/orgs","repos_url":"https://api.github.com/users/pgolm/repos","events_url":"https://api.github.com/users/pgolm/events{/privacy}","received_events_url":"https://api.github.com/users/pgolm/received_events","type":"User"},"committer":{"login":"pgolm","id":1444194,"avatar_url":"https://2.gravatar.com/avatar/c6d6b2eb927ed858092c47da9f150372?d=https%3A%2F%2Fidenticons.github.com%2F57b229318d141b9912e2aa86fa75f97f.png","gravatar_id":"c6d6b2eb927ed858092c47da9f150372","url":"https://api.github.com/users/pgolm","html_url":"https://github.com/pgolm","followers_url":"https://api.github.com/users/pgolm/followers","following_url":"https://api.github.com/users/pgolm/following{/other_user}","gists_url":"https://api.github.com/users/pgolm/gists{/gist_id}","starred_url":"https://api.github.com/users/pgolm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pgolm/subscriptions","organizations_url":"https://api.github.com/users/pgolm/orgs","repos_url":"https://api.github.com/users/pgolm/repos","events_url":"https://api.github.com/users/pgolm/events{/privacy}","received_events_url":"https://api.github.com/users/pgolm/received_events","type":"User"},"parents":[{"sha":"03a256a4052cacea998d8205a83d5b5465f31e18","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/03a256a4052cacea998d8205a83d5b5465f31e18","html_url":"https://github.com/jacquev6/PyGithub/commit/03a256a4052cacea998d8205a83d5b5465f31e18"}]},{"sha":"82f5b4c61f86ae8c7cc85a31cb1a31180eeae32f","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-14T11:27:12Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-14T11:27:12Z"},"message":"dos2unix","tree":{"sha":"d4875bc05568315fed5deace26e63a4b5e6c520f","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/d4875bc05568315fed5deace26e63a4b5e6c520f"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/82f5b4c61f86ae8c7cc85a31cb1a31180eeae32f","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/82f5b4c61f86ae8c7cc85a31cb1a31180eeae32f","html_url":"https://github.com/jacquev6/PyGithub/commit/82f5b4c61f86ae8c7cc85a31cb1a31180eeae32f","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/82f5b4c61f86ae8c7cc85a31cb1a31180eeae32f/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"6ac783974d3985dd0c162c1e8d1150615cc0082e","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6ac783974d3985dd0c162c1e8d1150615cc0082e","html_url":"https://github.com/jacquev6/PyGithub/commit/6ac783974d3985dd0c162c1e8d1150615cc0082e"}]},{"sha":"6ac783974d3985dd0c162c1e8d1150615cc0082e","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-14T11:26:34Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-14T11:26:34Z"},"message":"Use assertTrue and assertFalse where applicable","tree":{"sha":"e4eb64be8c5d729b3891cda01a2a1ae7e221e31c","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/e4eb64be8c5d729b3891cda01a2a1ae7e221e31c"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/6ac783974d3985dd0c162c1e8d1150615cc0082e","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6ac783974d3985dd0c162c1e8d1150615cc0082e","html_url":"https://github.com/jacquev6/PyGithub/commit/6ac783974d3985dd0c162c1e8d1150615cc0082e","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6ac783974d3985dd0c162c1e8d1150615cc0082e/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"0f9bb5d9fd2dcfbf03f094362e86323c9ef915e6","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0f9bb5d9fd2dcfbf03f094362e86323c9ef915e6","html_url":"https://github.com/jacquev6/PyGithub/commit/0f9bb5d9fd2dcfbf03f094362e86323c9ef915e6"}]},{"sha":"0f9bb5d9fd2dcfbf03f094362e86323c9ef915e6","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-14T11:17:33Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-14T11:17:33Z"},"message":"Merge branch 'topic/PaginatedListPerPage' into develop","tree":{"sha":"652285e28342a2da2086a62e724b6ed2a168afcf","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/652285e28342a2da2086a62e724b6ed2a168afcf"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/0f9bb5d9fd2dcfbf03f094362e86323c9ef915e6","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0f9bb5d9fd2dcfbf03f094362e86323c9ef915e6","html_url":"https://github.com/jacquev6/PyGithub/commit/0f9bb5d9fd2dcfbf03f094362e86323c9ef915e6","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0f9bb5d9fd2dcfbf03f094362e86323c9ef915e6/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"4f1780f427eba400cbc06897e69eda0ecdecd887","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4f1780f427eba400cbc06897e69eda0ecdecd887","html_url":"https://github.com/jacquev6/PyGithub/commit/4f1780f427eba400cbc06897e69eda0ecdecd887"},{"sha":"e25a6a49d1ab1a10c84db9b6722a6186ff6dfcbd","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e25a6a49d1ab1a10c84db9b6722a6186ff6dfcbd","html_url":"https://github.com/jacquev6/PyGithub/commit/e25a6a49d1ab1a10c84db9b6722a6186ff6dfcbd"}]},{"sha":"e25a6a49d1ab1a10c84db9b6722a6186ff6dfcbd","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-11T21:23:33Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-14T11:01:41Z"},"message":"Add Github.per_page to tweak PaginatedList (Issue #145)","tree":{"sha":"652285e28342a2da2086a62e724b6ed2a168afcf","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/652285e28342a2da2086a62e724b6ed2a168afcf"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/e25a6a49d1ab1a10c84db9b6722a6186ff6dfcbd","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e25a6a49d1ab1a10c84db9b6722a6186ff6dfcbd","html_url":"https://github.com/jacquev6/PyGithub/commit/e25a6a49d1ab1a10c84db9b6722a6186ff6dfcbd","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e25a6a49d1ab1a10c84db9b6722a6186ff6dfcbd/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"4f1780f427eba400cbc06897e69eda0ecdecd887","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4f1780f427eba400cbc06897e69eda0ecdecd887","html_url":"https://github.com/jacquev6/PyGithub/commit/4f1780f427eba400cbc06897e69eda0ecdecd887"}]},{"sha":"4f1780f427eba400cbc06897e69eda0ecdecd887","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-14T10:59:37Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-14T10:59:37Z"},"message":"Merge branch 'topic/FixPythonVersions' into develop","tree":{"sha":"db911b11ccf50b20273c8062a574aaba3fa6b7be","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/db911b11ccf50b20273c8062a574aaba3fa6b7be"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/4f1780f427eba400cbc06897e69eda0ecdecd887","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4f1780f427eba400cbc06897e69eda0ecdecd887","html_url":"https://github.com/jacquev6/PyGithub/commit/4f1780f427eba400cbc06897e69eda0ecdecd887","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4f1780f427eba400cbc06897e69eda0ecdecd887/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"03a256a4052cacea998d8205a83d5b5465f31e18","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/03a256a4052cacea998d8205a83d5b5465f31e18","html_url":"https://github.com/jacquev6/PyGithub/commit/03a256a4052cacea998d8205a83d5b5465f31e18"},{"sha":"28648a51a15e430b85d6fe8f2514e1cb06bc76b8","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/28648a51a15e430b85d6fe8f2514e1cb06bc76b8","html_url":"https://github.com/jacquev6/PyGithub/commit/28648a51a15e430b85d6fe8f2514e1cb06bc76b8"}]},{"sha":"28648a51a15e430b85d6fe8f2514e1cb06bc76b8","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-12T09:25:15Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-12T09:25:15Z"},"message":"Fix for Python 2.5","tree":{"sha":"db911b11ccf50b20273c8062a574aaba3fa6b7be","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/db911b11ccf50b20273c8062a574aaba3fa6b7be"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/28648a51a15e430b85d6fe8f2514e1cb06bc76b8","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/28648a51a15e430b85d6fe8f2514e1cb06bc76b8","html_url":"https://github.com/jacquev6/PyGithub/commit/28648a51a15e430b85d6fe8f2514e1cb06bc76b8","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/28648a51a15e430b85d6fe8f2514e1cb06bc76b8/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"a39f421ca24bd7aae984f8703159c7e30798a121","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a39f421ca24bd7aae984f8703159c7e30798a121","html_url":"https://github.com/jacquev6/PyGithub/commit/a39f421ca24bd7aae984f8703159c7e30798a121"}]},{"sha":"a39f421ca24bd7aae984f8703159c7e30798a121","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-12T09:16:06Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-12T09:16:06Z"},"message":"Avoid confusion between github/ and Github.py on case-insensitive file systems (#143)","tree":{"sha":"b54edada88d20ca770ccaf2f209b7b3a5753a54f","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/b54edada88d20ca770ccaf2f209b7b3a5753a54f"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/a39f421ca24bd7aae984f8703159c7e30798a121","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a39f421ca24bd7aae984f8703159c7e30798a121","html_url":"https://github.com/jacquev6/PyGithub/commit/a39f421ca24bd7aae984f8703159c7e30798a121","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a39f421ca24bd7aae984f8703159c7e30798a121/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"86fe370b97b62548317cb35bc02ece3fabb7fa03","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/86fe370b97b62548317cb35bc02ece3fabb7fa03","html_url":"https://github.com/jacquev6/PyGithub/commit/86fe370b97b62548317cb35bc02ece3fabb7fa03"}]},{"sha":"86fe370b97b62548317cb35bc02ece3fabb7fa03","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-03T17:47:22Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-03T17:47:22Z"},"message":"Merge branch 'master' into develop","tree":{"sha":"463b765c51f71b1448ecfc92632cea699c363303","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/463b765c51f71b1448ecfc92632cea699c363303"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/86fe370b97b62548317cb35bc02ece3fabb7fa03","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/86fe370b97b62548317cb35bc02ece3fabb7fa03","html_url":"https://github.com/jacquev6/PyGithub/commit/86fe370b97b62548317cb35bc02ece3fabb7fa03","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/86fe370b97b62548317cb35bc02ece3fabb7fa03/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"fc491bfdb6935d98df983006c929f7962712576c","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/fc491bfdb6935d98df983006c929f7962712576c","html_url":"https://github.com/jacquev6/PyGithub/commit/fc491bfdb6935d98df983006c929f7962712576c"},{"sha":"03a256a4052cacea998d8205a83d5b5465f31e18","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/03a256a4052cacea998d8205a83d5b5465f31e18","html_url":"https://github.com/jacquev6/PyGithub/commit/03a256a4052cacea998d8205a83d5b5465f31e18"}]},{"sha":"03a256a4052cacea998d8205a83d5b5465f31e18","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-03T17:44:25Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-03T17:44:25Z"},"message":"Publish version 1.12.2","tree":{"sha":"710f92971992e7d33426921172fcb2527a7f608d","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/710f92971992e7d33426921172fcb2527a7f608d"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/03a256a4052cacea998d8205a83d5b5465f31e18","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/03a256a4052cacea998d8205a83d5b5465f31e18","html_url":"https://github.com/jacquev6/PyGithub/commit/03a256a4052cacea998d8205a83d5b5465f31e18","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/03a256a4052cacea998d8205a83d5b5465f31e18/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"9e6b086c2db5e4884484a04934f6f2e53e3f441b","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/9e6b086c2db5e4884484a04934f6f2e53e3f441b","html_url":"https://github.com/jacquev6/PyGithub/commit/9e6b086c2db5e4884484a04934f6f2e53e3f441b"}]},{"sha":"9e6b086c2db5e4884484a04934f6f2e53e3f441b","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-03T17:35:50Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-03T17:35:50Z"},"message":"Remove a deprecation warning","tree":{"sha":"a8205550281bec9fde58bb7014df2a04c27b765b","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/a8205550281bec9fde58bb7014df2a04c27b765b"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/9e6b086c2db5e4884484a04934f6f2e53e3f441b","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/9e6b086c2db5e4884484a04934f6f2e53e3f441b","html_url":"https://github.com/jacquev6/PyGithub/commit/9e6b086c2db5e4884484a04934f6f2e53e3f441b","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/9e6b086c2db5e4884484a04934f6f2e53e3f441b/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"0ddb34d987b5a03813fdfa2fac13c933834a4804","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0ddb34d987b5a03813fdfa2fac13c933834a4804","html_url":"https://github.com/jacquev6/PyGithub/commit/0ddb34d987b5a03813fdfa2fac13c933834a4804"}]},{"sha":"0ddb34d987b5a03813fdfa2fac13c933834a4804","commit":{"author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-03T17:32:10Z"},"committer":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net","date":"2013-03-03T17:32:10Z"},"message":"Fix decoding on Python3 (bytes instead of str) (Issue #142)","tree":{"sha":"e00c7a4c3cbadbe2c00c8bc14425b3dcc410f629","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/e00c7a4c3cbadbe2c00c8bc14425b3dcc410f629"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/0ddb34d987b5a03813fdfa2fac13c933834a4804","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0ddb34d987b5a03813fdfa2fac13c933834a4804","html_url":"https://github.com/jacquev6/PyGithub/commit/0ddb34d987b5a03813fdfa2fac13c933834a4804","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0ddb34d987b5a03813fdfa2fac13c933834a4804/comments","author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"committer":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User"},"parents":[{"sha":"67bdf8c0be32dc195a4545bf90100a1b55eebf45","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/67bdf8c0be32dc195a4545bf90100a1b55eebf45","html_url":"https://github.com/jacquev6/PyGithub/commit/67bdf8c0be32dc195a4545bf90100a1b55eebf45"}]}] + diff --git a/lib/github/tests/ReplayData/Repository.testGetContentDir.txt b/lib/github/tests/ReplayData/Repository.testGetContentDir.txt new file mode 100644 index 0000000000..88b4895e74 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetContentDir.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/contents/ +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '9998'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '01d096e6cfe28f8aea352e988c332cd3'), ('x-oauth-client-id', 'd408456562a3db38febf'), ('x-oauth-scopes', 'repo, write:repo_hook'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('x-accepted-oauth-scopes', ''), ('etag', '"c75510b6d23cfb87768b59121bb1763a"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('status', '200 OK'), ('x-ratelimit-remaining', '4984'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '5DE87F72:75F9:9EF346:57DA8E59'), ('last-modified', 'Thu, 15 Sep 2016 12:04:32 GMT'), ('date', 'Thu, 15 Sep 2016 12:04:42 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1473942365')] +[{"name":".gitignore","path":".gitignore","sha":"43d495ed8185348ef800ccd768bf9eb47eea433b","size":2036,"url":"https://api.github.com/repos/jayfk/PyGithub/contents/.gitignore?ref=master","html_url":"https://github.com/jayfk/PyGithub/blob/master/.gitignore","git_url":"https://api.github.com/repos/jayfk/PyGithub/git/blobs/43d495ed8185348ef800ccd768bf9eb47eea433b","download_url":"https://raw.githubusercontent.com/jayfk/PyGithub/master/.gitignore","type":"file","_links":{"self":"https://api.github.com/repos/jayfk/PyGithub/contents/.gitignore?ref=master","git":"https://api.github.com/repos/jayfk/PyGithub/git/blobs/43d495ed8185348ef800ccd768bf9eb47eea433b","html":"https://github.com/jayfk/PyGithub/blob/master/.gitignore"}},{"name":".travis.yml","path":".travis.yml","sha":"5b7b29ac787f3a535eff409592ef40ccd04595d8","size":494,"url":"https://api.github.com/repos/jayfk/PyGithub/contents/.travis.yml?ref=master","html_url":"https://github.com/jayfk/PyGithub/blob/master/.travis.yml","git_url":"https://api.github.com/repos/jayfk/PyGithub/git/blobs/5b7b29ac787f3a535eff409592ef40ccd04595d8","download_url":"https://raw.githubusercontent.com/jayfk/PyGithub/master/.travis.yml","type":"file","_links":{"self":"https://api.github.com/repos/jayfk/PyGithub/contents/.travis.yml?ref=master","git":"https://api.github.com/repos/jayfk/PyGithub/git/blobs/5b7b29ac787f3a535eff409592ef40ccd04595d8","html":"https://github.com/jayfk/PyGithub/blob/master/.travis.yml"}},{"name":"CONTRIBUTING.md","path":"CONTRIBUTING.md","sha":"138fa737b13a13582bf53acea7ee534aa197328a","size":2424,"url":"https://api.github.com/repos/jayfk/PyGithub/contents/CONTRIBUTING.md?ref=master","html_url":"https://github.com/jayfk/PyGithub/blob/master/CONTRIBUTING.md","git_url":"https://api.github.com/repos/jayfk/PyGithub/git/blobs/138fa737b13a13582bf53acea7ee534aa197328a","download_url":"https://raw.githubusercontent.com/jayfk/PyGithub/master/CONTRIBUTING.md","type":"file","_links":{"self":"https://api.github.com/repos/jayfk/PyGithub/contents/CONTRIBUTING.md?ref=master","git":"https://api.github.com/repos/jayfk/PyGithub/git/blobs/138fa737b13a13582bf53acea7ee534aa197328a","html":"https://github.com/jayfk/PyGithub/blob/master/CONTRIBUTING.md"}},{"name":"COPYING","path":"COPYING","sha":"94a9ed024d3859793618152ea559a168bbcbb5e2","size":35147,"url":"https://api.github.com/repos/jayfk/PyGithub/contents/COPYING?ref=master","html_url":"https://github.com/jayfk/PyGithub/blob/master/COPYING","git_url":"https://api.github.com/repos/jayfk/PyGithub/git/blobs/94a9ed024d3859793618152ea559a168bbcbb5e2","download_url":"https://raw.githubusercontent.com/jayfk/PyGithub/master/COPYING","type":"file","_links":{"self":"https://api.github.com/repos/jayfk/PyGithub/contents/COPYING?ref=master","git":"https://api.github.com/repos/jayfk/PyGithub/git/blobs/94a9ed024d3859793618152ea559a168bbcbb5e2","html":"https://github.com/jayfk/PyGithub/blob/master/COPYING"}},{"name":"COPYING.LESSER","path":"COPYING.LESSER","sha":"65c5ca88a67c30becee01c5a8816d964b03862f9","size":7651,"url":"https://api.github.com/repos/jayfk/PyGithub/contents/COPYING.LESSER?ref=master","html_url":"https://github.com/jayfk/PyGithub/blob/master/COPYING.LESSER","git_url":"https://api.github.com/repos/jayfk/PyGithub/git/blobs/65c5ca88a67c30becee01c5a8816d964b03862f9","download_url":"https://raw.githubusercontent.com/jayfk/PyGithub/master/COPYING.LESSER","type":"file","_links":{"self":"https://api.github.com/repos/jayfk/PyGithub/contents/COPYING.LESSER?ref=master","git":"https://api.github.com/repos/jayfk/PyGithub/git/blobs/65c5ca88a67c30becee01c5a8816d964b03862f9","html":"https://github.com/jayfk/PyGithub/blob/master/COPYING.LESSER"}},{"name":"MAINTAINERS","path":"MAINTAINERS","sha":"f8cbd3bbeba08404099c4bc57135b7d21b9e5616","size":216,"url":"https://api.github.com/repos/jayfk/PyGithub/contents/MAINTAINERS?ref=master","html_url":"https://github.com/jayfk/PyGithub/blob/master/MAINTAINERS","git_url":"https://api.github.com/repos/jayfk/PyGithub/git/blobs/f8cbd3bbeba08404099c4bc57135b7d21b9e5616","download_url":"https://raw.githubusercontent.com/jayfk/PyGithub/master/MAINTAINERS","type":"file","_links":{"self":"https://api.github.com/repos/jayfk/PyGithub/contents/MAINTAINERS?ref=master","git":"https://api.github.com/repos/jayfk/PyGithub/git/blobs/f8cbd3bbeba08404099c4bc57135b7d21b9e5616","html":"https://github.com/jayfk/PyGithub/blob/master/MAINTAINERS"}},{"name":"MANIFEST.in","path":"MANIFEST.in","sha":"501859533a9b38d0705e5c8cab4380610d574dd7","size":35,"url":"https://api.github.com/repos/jayfk/PyGithub/contents/MANIFEST.in?ref=master","html_url":"https://github.com/jayfk/PyGithub/blob/master/MANIFEST.in","git_url":"https://api.github.com/repos/jayfk/PyGithub/git/blobs/501859533a9b38d0705e5c8cab4380610d574dd7","download_url":"https://raw.githubusercontent.com/jayfk/PyGithub/master/MANIFEST.in","type":"file","_links":{"self":"https://api.github.com/repos/jayfk/PyGithub/contents/MANIFEST.in?ref=master","git":"https://api.github.com/repos/jayfk/PyGithub/git/blobs/501859533a9b38d0705e5c8cab4380610d574dd7","html":"https://github.com/jayfk/PyGithub/blob/master/MANIFEST.in"}},{"name":"README.md","path":"README.md","sha":"ae065a7ba88a6614cb0a8cdbe5bd58a317654548","size":1570,"url":"https://api.github.com/repos/jayfk/PyGithub/contents/README.md?ref=master","html_url":"https://github.com/jayfk/PyGithub/blob/master/README.md","git_url":"https://api.github.com/repos/jayfk/PyGithub/git/blobs/ae065a7ba88a6614cb0a8cdbe5bd58a317654548","download_url":"https://raw.githubusercontent.com/jayfk/PyGithub/master/README.md","type":"file","_links":{"self":"https://api.github.com/repos/jayfk/PyGithub/contents/README.md?ref=master","git":"https://api.github.com/repos/jayfk/PyGithub/git/blobs/ae065a7ba88a6614cb0a8cdbe5bd58a317654548","html":"https://github.com/jayfk/PyGithub/blob/master/README.md"}},{"name":"doc","path":"doc","sha":"42cda5799d4f5668c7d59e17c1593debe6410f7f","size":0,"url":"https://api.github.com/repos/jayfk/PyGithub/contents/doc?ref=master","html_url":"https://github.com/jayfk/PyGithub/tree/master/doc","git_url":"https://api.github.com/repos/jayfk/PyGithub/git/trees/42cda5799d4f5668c7d59e17c1593debe6410f7f","download_url":null,"type":"dir","_links":{"self":"https://api.github.com/repos/jayfk/PyGithub/contents/doc?ref=master","git":"https://api.github.com/repos/jayfk/PyGithub/git/trees/42cda5799d4f5668c7d59e17c1593debe6410f7f","html":"https://github.com/jayfk/PyGithub/tree/master/doc"}},{"name":"github","path":"github","sha":"357dd749e9f089b6fc1a7437326d75dc2700eb3e","size":0,"url":"https://api.github.com/repos/jayfk/PyGithub/contents/github?ref=master","html_url":"https://github.com/jayfk/PyGithub/tree/master/github","git_url":"https://api.github.com/repos/jayfk/PyGithub/git/trees/357dd749e9f089b6fc1a7437326d75dc2700eb3e","download_url":null,"type":"dir","_links":{"self":"https://api.github.com/repos/jayfk/PyGithub/contents/github?ref=master","git":"https://api.github.com/repos/jayfk/PyGithub/git/trees/357dd749e9f089b6fc1a7437326d75dc2700eb3e","html":"https://github.com/jayfk/PyGithub/tree/master/github"}},{"name":"manage.sh","path":"manage.sh","sha":"8ce7c88318a3cc25f368d7a43e69a41b8460e68f","size":2582,"url":"https://api.github.com/repos/jayfk/PyGithub/contents/manage.sh?ref=master","html_url":"https://github.com/jayfk/PyGithub/blob/master/manage.sh","git_url":"https://api.github.com/repos/jayfk/PyGithub/git/blobs/8ce7c88318a3cc25f368d7a43e69a41b8460e68f","download_url":"https://raw.githubusercontent.com/jayfk/PyGithub/master/manage.sh","type":"file","_links":{"self":"https://api.github.com/repos/jayfk/PyGithub/contents/manage.sh?ref=master","git":"https://api.github.com/repos/jayfk/PyGithub/git/blobs/8ce7c88318a3cc25f368d7a43e69a41b8460e68f","html":"https://github.com/jayfk/PyGithub/blob/master/manage.sh"}},{"name":"python25-requirements.txt","path":"python25-requirements.txt","sha":"322630ee75f32576be6c69b4de9deb73cddc430c","size":11,"url":"https://api.github.com/repos/jayfk/PyGithub/contents/python25-requirements.txt?ref=master","html_url":"https://github.com/jayfk/PyGithub/blob/master/python25-requirements.txt","git_url":"https://api.github.com/repos/jayfk/PyGithub/git/blobs/322630ee75f32576be6c69b4de9deb73cddc430c","download_url":"https://raw.githubusercontent.com/jayfk/PyGithub/master/python25-requirements.txt","type":"file","_links":{"self":"https://api.github.com/repos/jayfk/PyGithub/contents/python25-requirements.txt?ref=master","git":"https://api.github.com/repos/jayfk/PyGithub/git/blobs/322630ee75f32576be6c69b4de9deb73cddc430c","html":"https://github.com/jayfk/PyGithub/blob/master/python25-requirements.txt"}},{"name":"scripts","path":"scripts","sha":"95e3c1f29331e6de4c3833022fb1a78ef039bb6f","size":0,"url":"https://api.github.com/repos/jayfk/PyGithub/contents/scripts?ref=master","html_url":"https://github.com/jayfk/PyGithub/tree/master/scripts","git_url":"https://api.github.com/repos/jayfk/PyGithub/git/trees/95e3c1f29331e6de4c3833022fb1a78ef039bb6f","download_url":null,"type":"dir","_links":{"self":"https://api.github.com/repos/jayfk/PyGithub/contents/scripts?ref=master","git":"https://api.github.com/repos/jayfk/PyGithub/git/trees/95e3c1f29331e6de4c3833022fb1a78ef039bb6f","html":"https://github.com/jayfk/PyGithub/tree/master/scripts"}},{"name":"setup.py","path":"setup.py","sha":"75a4afa35995089741a2089c5356e2b1af3d85cd","size":4094,"url":"https://api.github.com/repos/jayfk/PyGithub/contents/setup.py?ref=master","html_url":"https://github.com/jayfk/PyGithub/blob/master/setup.py","git_url":"https://api.github.com/repos/jayfk/PyGithub/git/blobs/75a4afa35995089741a2089c5356e2b1af3d85cd","download_url":"https://raw.githubusercontent.com/jayfk/PyGithub/master/setup.py","type":"file","_links":{"self":"https://api.github.com/repos/jayfk/PyGithub/contents/setup.py?ref=master","git":"https://api.github.com/repos/jayfk/PyGithub/git/blobs/75a4afa35995089741a2089c5356e2b1af3d85cd","html":"https://github.com/jayfk/PyGithub/blob/master/setup.py"}}] + diff --git a/lib/github/tests/ReplayData/Repository.testGetContents.txt b/lib/github/tests/ReplayData/Repository.testGetContents.txt new file mode 100644 index 0000000000..24662a8751 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetContents.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/readme +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '10787'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4997'), ('server', 'nginx/1.0.13'), ('last-modified', 'Wed, 05 Sep 2012 17:54:40 GMT'), ('connection', 'keep-alive'), ('etag', '"71786feb5f476112c5a8aa894ee7ca6c"'), ('cache-control', 'private, s-maxage=60, max-age=60'), ('date', 'Sat, 08 Sep 2012 10:43:48 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"file","sha":"5628799a7d517a4aaa0c1a7004d07569cd154df0","path":"ReadMe.md","encoding":"base64","_links":{"self":"https://api.github.com/repos/jacquev6/PyGithub/contents/ReadMe.md","html":"https://github.com/jacquev6/PyGithub/blob/master/ReadMe.md","git":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/5628799a7d517a4aaa0c1a7004d07569cd154df0"},"content":"VGhpcyBpcyBhIFB5dGhvbiBsaWJyYXJ5IHRvIGFjY2VzcyB0aGUgW0dpdGh1\nYiBBUEkgdjNdKGh0dHA6Ly9kZXZlbG9wZXIuZ2l0aHViLmNvbS92MykuCgpX\naXRoIGl0LCB5b3UgY2FuIG1hbmFnZSB5b3VyIFtHaXRodWJdKGh0dHA6Ly9n\naXRodWIuY29tKSByZXNvdXJjZXMgKHJlcG9zaXRvcmllcywgdXNlciBwcm9m\naWxlcywgb3JnYW5pemF0aW9ucywgZXRjLikgZnJvbSBQeXRob24gc2NyaXB0\ncy4KCkl0IGNvdmVycyB0aGUgKipmdWxsKiogQVBJLCBhbmQgYWxsIG1ldGhv\nZHMgYXJlIHRlc3RlZCBhZ2FpbnN0IHRoZSByZWFsIEdpdGh1YiBzaXRlLgoK\nU2hvdWxkIHlvdSBoYXZlIGFueSBxdWVzdGlvbiwgb3IgaWYgeW91IGZpbmQg\nYSBidWcsIG9yIGlmIHRoZXJlIGlzIHNvbWV0aGluZyB5b3UgY2FuIGRvIHdp\ndGggdGhlIEFQSSBidXQgbm90IHdpdGggUHlHaXRodWIsIHBsZWFzZSBbb3Bl\nbiBhbiBpc3N1ZV0oaHR0cHM6Ly9naXRodWIuY29tL2phY3F1ZXY2L1B5R2l0\naHViL2lzc3VlcykuCgpQeUdpdGh1YiBpcyBzdGFibGUuIEkgd2lsbCBtYWlu\ndGFpbiBpdCB1cCB0byBkYXRlIHdpdGggdGhlIEFQSSwgYW5kIGZpeCBidWdz\nIGlmIGFueSwgYnV0IEkgZG9uJ3QgcGxhbiBuZXcgaGVhdnkgZGV2ZWxvcG1l\nbnRzLgoKRG93bmxvYWQgYW5kIGluc3RhbGwKPT09PT09PT09PT09PT09PT09\nPT0KClRoaXMgcGFja2FnZSBpcyBpbiB0aGUgW1B5dGhvbiBQYWNrYWdlIElu\nZGV4XShodHRwOi8vcHlwaS5weXRob24ub3JnL3B5cGkvUHlHaXRodWIpLCBz\nbyBgZWFzeV9pbnN0YWxsIFB5R2l0aHViYCBvciBgcGlwIGluc3RhbGwgUHlH\naXRodWJgIHNob3VsZCBiZSBlbm91Z2guCllvdSBjYW4gYWxzbyBjbG9uZSBp\ndCBvbiBbR2l0aHViXShodHRwOi8vZ2l0aHViLmNvbS9qYWNxdWV2Ni9QeUdp\ndGh1YikuCgpUdXRvcmlhbAo9PT09PT09PQoKRmlyc3QgY3JlYXRlIGEgR2lo\ndHViIGluc3RhbmNlOgoKICAgIGZyb20gZ2l0aHViIGltcG9ydCBHaXRodWIK\nCiAgICBnID0gR2l0aHViKCAidXNlciIsICJwYXNzd29yZCIgKQoKVGhlbiBw\nbGF5IHdpdGggeW91ciBHaXRodWIgb2JqZWN0czoKCiAgICBmb3IgcmVwbyBp\nbiBnLmdldF91c2VyKCkuZ2V0X3JlcG9zKCk6CiAgICAgICAgcHJpbnQgcmVw\nby5uYW1lCiAgICAgICAgcmVwby5lZGl0KCBoYXNfd2lraSA9IEZhbHNlICkK\nCllvdSBjYW4gYWxzbyBjcmVhdGUgYSBHaXRodWIgaW5zdGFuY2Ugd2l0aCBh\nbiBPQXV0aCB0b2tlbjoKCiAgICBnID0gR2l0aHViKCB0b2tlbiApCgpPciB3\naXRob3V0IGF1dGhlbnRpY2F0aW9uOgoKICAgIGcgPSBHaXRodWIoKQoKTGlj\nZW5zaW5nCj09PT09PT09PQoKUHlHaXRodWIgaXMgZGlzdHJpYnV0ZWQgdW5k\nZXIgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5jZS4KU2Vl\nIGZpbGVzIENPUFlJTkcgYW5kIENPUFlJTkcuTEVTU0VSLCBhcyByZXF1ZXN0\nZWQgYnkgW0dOVV0oaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2dwbC1o\nb3d0by5odG1sKS4KClByb2plY3RzIHVzaW5nIFB5R2l0aHViCj09PT09PT09\nPT09PT09PT09PT09PT09CgooW09wZW4gYW4gaXNzdWVdKGh0dHBzOi8vZ2l0\naHViLmNvbS9qYWNxdWV2Ni9QeUdpdGh1Yi9pc3N1ZXMpIGlmIHlvdSB3YW50\nIHRvIGJlIGxpc3RlZCBoZXJlLCBJJ2xsIGJlIGdsYWQgdG8gYWRkIHlvdXIg\ncHJvamVjdCkKCiogW1VwdmVydGVyXShodHRwczovL3VwdmVydGVyLmNvbSkg\naXMgYSB3ZWItYmFzZWQgc2NoZW1hdGljIGNhcHR1cmUgYW5kIFBDQiBsYXlv\ndXQgdG9vbCBmb3IgcGVvcGxlIHdobyBkZXNpZ24gZWxlY3Ryb25pY3MuIERl\nc2lnbmVycyBjYW4gYXR0YWNoIGEgR2l0aHViIHByb2plY3QgdG8gYW4gVXB2\nZXJ0ZXIgcHJvamVjdC4KKiBbVHJhdGlodWJpc10oaHR0cDovL3B5cGkucHl0\naG9uLm9yZy9weXBpL3RyYXRpaHViaXMvKSBjb252ZXJ0cyBUcmFjIHRpY2tl\ndHMgdG8gR2l0aHViIGlzc3VlcwoKSGlzdG9yeQo9PT09PT09CgpbVmVyc2lv\nbiAxLjVdKGh0dHBzOi8vZ2l0aHViLmNvbS9qYWNxdWV2Ni9QeUdpdGh1Yi9p\nc3N1ZXM/bWlsZXN0b25lPTkmc3RhdGU9Y2xvc2VkKSAoU2VwdGVtYmVyIDV0\naCwgMjAxMikKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoqIEFkZCBhIHRpbWVvdXQgb3B0\naW9uLCB0aGFuayB5b3UgbXVjaCBbeG9iYjF0XShodHRwczovL2dpdGh1Yi5j\nb20veG9iYjF0KSBmb3IgdGhlIG1lcmdlIHJlcXVlc3QuICpUaGlzIGRyb3Bz\nIFB5dGhvbiAyLjUgc3VwcG9ydCouIEkgbWF5IGJlIGFibGUgdG8gcmVzdG9y\nZSBpdCBpbiBuZXh0IHZlcnNpb24uCiogSW1wbGVtZW50IGBSZXBvc2l0b3J5\nLmRlbGV0ZWAsIHRoYW5rIHlvdSBbcG1jaGVuXShodHRwczovL2dpdGh1Yi5j\nb20vcG1jaGVuKSBmb3IgYXNraW5nCgpbVmVyc2lvbiAxLjRdKGh0dHBzOi8v\nZ2l0aHViLmNvbS9qYWNxdWV2Ni9QeUdpdGh1Yi9pc3N1ZXM/bWlsZXN0b25l\nPTgmc3RhdGU9Y2xvc2VkKSAoQXVndXN0IDR0aCwgMjAxMikKLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tCgoqIEFsbG93IGNvbm5lY3Rpb24gdG8gYSBjdXN0b20gR2l0aHViIFVS\nTCwgZm9yIEdpdGh1YiBFbnRlcnByaXNlLCB0aGFuayB5b3UgdmVyeSBtdWNo\nIFtlbmdpZV0oaHR0cHM6Ly9naXRodWIuY29tL2VuZ2llKSBmb3IgdGhlIG1l\ncmdlIHJlcXVlc3QKCltWZXJzaW9uIDEuM10oaHR0cHM6Ly9naXRodWIuY29t\nL2phY3F1ZXY2L1B5R2l0aHViL2lzc3Vlcz9taWxlc3RvbmU9NyZzdGF0ZT1j\nbG9zZWQpIChKdWx5IDEzdGgsIDIwMTIpCi0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoqIEltcGxl\nbWVudCBbbWFya2Rvd24gcmVuZGVyaW5nXShodHRwOi8vZGV2ZWxvcGVyLmdp\ndGh1Yi5jb20vdjMvbWFya2Rvd24vKQoqIGBHaXRBdXRob3IuZGF0ZWAgaXMg\nbm93IGEgZGF0ZXRpbWUsIHRoYW5rIHlvdSBbYmlsZGVyYnVjaGldKGh0dHBz\nOi8vZ2l0aHViLmNvbS9iaWxkZXJidWNoaSkKKiBGaXggZG9jdW1lbnRhdGlv\nbiBvZiBgR2l0aHViLmdldF9naXN0YDogYGlkYCBpcyBhIHN0cmluZywgbm90\nIGFuIGludGVnZXIKCltWZXJzaW9uIDEuMl0oaHR0cHM6Ly9naXRodWIuY29t\nL2phY3F1ZXY2L1B5R2l0aHViL2lzc3Vlcz9taWxlc3RvbmU9NiZzdGF0ZT1j\nbG9zZWQpIChKdW5lIDI5dGgsIDIwMTIpCi0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoqIEltcGxl\nbWVudCBbbGVnYWN5IHNlYXJjaCBBUElzXShodHRwOi8vZGV2ZWxvcGVyLmdp\ndGh1Yi5jb20vdjMvc2VhcmNoLyksIHRoYW5rIHlvdSBba3VrdXRzXShodHRw\nczovL2dpdGh1Yi5jb20va3VrdXRzKSBmb3IgdGVsbGluZyBtZSBHaXRodWIg\naGFkIHJlbGVhc2VkIHRoZW0KKiBGaXggYSBidWcgd2l0aCBpc3N1ZSBsYWJl\nbHMgY29udGFpbmluZyBzcGFjZXMsIHRoYW5rIHlvdSBbcGhpbGlwa2ltbWV5\nXShodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwa2ltbWV5KSBmb3IgZGV0ZWN0\naW5nIHRoZSBidWcgYW5kIGZpeGluZyBpdAoqIENsYXJpZnkgaG93IGNvbGxl\nY3Rpb25zIG9mIG9iamVjdHMgYXJlIHJldHVybmVkIGJ5IGBnZXRfKmAgbWV0\naG9kcywgdGhhbmsgeW91IFtiaWxkZXJidWNoaV0oaHR0cHM6Ly9naXRodWIu\nY29tL2JpbGRlcmJ1Y2hpKSBmb3IgYXNraW5nCgpWZXJzaW9uIDEuMSAoSnVu\nZSAyMHRoLCAyMDEyKQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoK\nKiBSZXN0b3JlIGNvbXBhdGliaWxpdHkgd2l0aCBQeXRob24gMi41LCB0aGFu\nayB5b3UgW3BtdWlsdV0oaHR0cHM6Ly9naXRodWIuY29tL3BtdWlsdSkKKiBV\nc2UgYHBhY2thZ2VfZGF0YWAgaW5zdGVhZCBvZiBgZGF0YV9maWxlc2AgZm9y\nIGRvY3VtZW50YXRpb24gZmlsZXMgaW4gYHNldHVwLnB5YCwgdGhhbmsgeW91\nIFttYWxleHddKGh0dHBzOi8vZ2l0aHViLmNvbS9tYWxleHcpIGZvciByZXBv\ncnRpbmcKCltWZXJzaW9uIDEuMF0oaHR0cHM6Ly9naXRodWIuY29tL2phY3F1\nZXY2L1B5R2l0aHViL2lzc3Vlcz9taWxlc3RvbmU9MiZzdGF0ZT1jbG9zZWQp\nIChKdW5lIDNyZCwgMjAxMikKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKKiBDb21wbGV0ZSByZXdy\naXRlLCB3aXRoIG5vIG1vcmUgY29tcGxpY2F0ZWQgbWV0YS1kZXNjcmlwdGlv\nbgoqIEZ1bGwgdHlwaW5nIG9mIGF0dHJpYnV0ZXMgYW5kIHBhcmFtZXRlcnMK\nKiBGdWxsIGRvY3VtZW50YXRpb24gb2YgYXR0cmlidXRlcyBhbmQgcGFyYW1l\ndGVycwoqIE1vcmUgdXNhYmxlIGV4Y2VwdGlvbnMgcmFpc2VkIGluIGNhc2Ug\nb24gcHJvYmxlbXMgd2l0aCB0aGUgQVBJCiogU29tZSBidWdzIGFuZCBsaW1p\ndGF0aW9ucyBmaXhlZCwgc3BlY2lhbCB0aGFua3MgdG8gW2JpbGRlcmJ1Y2hp\nXShodHRwczovL2dpdGh1Yi5jb20vYmlsZGVyYnVjaGkpLCBbcm9za2Frb3Jp\nXShodHRwczovL2dpdGh1Yi5jb20vcm9za2Frb3JpKSBhbmQgW3RhbGxmb3Jh\nc211cmZdKGh0dHBzOi8vZ2l0aHViLmNvbS90YWxsZm9yYXNtdXJmKSBmb3Ig\ncmVwb3J0aW5nIHRoZW0hCgpbVmVyc2lvbiAwLjddKGh0dHBzOi8vZ2l0aHVi\nLmNvbS9qYWNxdWV2Ni9QeUdpdGh1Yi9pc3N1ZXM/bWlsZXN0b25lPTUmc3Rh\ndGU9Y2xvc2VkKSAoTWF5IDI2dGgsIDIwMTIpCi0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiogVXNl\nIFB5R2l0aHViIHdpdGggT0F1dGggYXV0aGVudGljYXRpb24gb3Igd2l0aCBu\nbyBhdXRoZW50aWNhdGlvbiBhdCBhbGwKCltWZXJzaW9uIDAuNl0oaHR0cHM6\nLy9naXRodWIuY29tL2phY3F1ZXY2L1B5R2l0aHViL2lzc3Vlcz9taWxlc3Rv\nbmU9NCZzdGF0ZT1jbG9zZWQpIChBcHJpbCAxN3RoLCAyMDEyKQotLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0KCiogRml4IFtpc3N1ZSAyMV0oaHR0cHM6Ly9naXRodWIuY29tL2ph\nY3F1ZXY2L1B5R2l0aHViL2lzc3Vlcy8yMSkgKEtleUVycm9yIHdoZW4gYWNj\nZXNzaW5nIHJlcG9zaXRvcmllcykKKiBSZS1jb21wbGV0ZWQgdGhlIEFQSSB3\naXRoIE5hbWVkVXNlci5jcmVhdGVfZ2lzdAoKCltWZXJzaW9uIDAuNV0oaHR0\ncHM6Ly9naXRodWIuY29tL2phY3F1ZXY2L1B5R2l0aHViL2lzc3Vlcz9taWxl\nc3RvbmU9MyZzdGF0ZT1jbG9zZWQpIChNYXJjaCAxOXRoLCAyMDEyKQotLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0KCiogTWFqb3IgYWNoaWV2ZW1lbnQ6ICoqYWxsIEFQSXMgYXJl\nIGltcGxlbWVudGVkKioKKiBNb3JlIHJlZmFjdG9yaW5nLCBvZiBjb3Vyc2UK\nCltWZXJzaW9uIDAuNF0oaHR0cHM6Ly9naXRodWIuY29tL2phY3F1ZXY2L1B5\nR2l0aHViL2lzc3Vlcz9taWxlc3RvbmU9MSZzdGF0ZT1jbG9zZWQpIChNYXJj\naCAxMnRoLCAyMDEyKQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiogVGhlIGxpc3Qgb2YgdGhl\nIG5vdCBpbXBsZW1lbnRlZCBBUElzIGlzIHNob3J0ZXIgdGhhbiB0aGUgbGlz\ndCBvZiB0aGUgaW1wbGVtZW50ZWQgQVBJcwoqIEFQSXMgKm5vdCBpbXBsZW1l\nbnRlZCo6CiAgICAqIEdFVCBgL2dpc3RzL3B1YmxpY2AKICAgICogR0VUIGAv\naXNzdWVzYAogICAgKiBHRVQgYC9yZXBvcy86dXNlci86cmVwby9jb21wYXJl\nLzpiYXNlLi4uOmhlYWRgCiAgICAqIEdFVCBgL3JlcG9zLzp1c2VyLzpyZXBv\nL2dpdC90cmVlcy86c2hhP3JlY3Vyc2l2ZT0xYAogICAgKiBQT1NUIGAvcmVw\nb3MvOnVzZXIvOnJlcG8vZ2l0L3RyZWVzP2Jhc2VfdHJlZT1gCiogR2lzdHMK\nKiBBdXRvcml6YXRpb25zCiogS2V5cwoqIEhvb2tzCiogRXZlbnRzCiogTWVy\nZ2UgcHVsbCByZXF1ZXN0cwoqIE1vcmUgcmVmYWN0b3JpbmcsIG9uZSBtb3Jl\nIHRpbWUKClZlcnNpb24gMC4zIChGZWJydWFyeSAyNnRoLCAyMDEyKQotLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiogTW9yZSByZWZhY3Rv\ncmluZwoqIElzc3VlcywgbWlsZXN0b25lcyBhbmQgdGhlaXIgbGFiZWxzCiog\nTmFtZWRVc2VyOgogICAgKiBlbWFpbHMKKiBSZXBvc2l0b3J5OgogICAgKiBk\nb3dubG9hZHMKICAgICogdGFncywgYnJhbmNoZXMsIGNvbW1pdHMgYW5kIGNv\nbW1lbnRzIChub3QgdGhlIHNhbWUgYXMgIkdpdCBvYmplY3RzIiBvZiB2ZXJz\naW9uIDAuMikKICAgICogcHVsbCByZXF1ZXN0cyAobm8gYXV0b21hdGljIG1l\ncmdlIHlldCkKKiBBdXRvbWF0aWMgZ2VuZXJhdGlvbiBvZiB0aGUgcmVmZXJl\nbmNlIGRvY3VtZW50YXRpb24gb2YgY2xhc3Nlcywgd2l0aCBsZXNzICJzZWUg\nQVBJInMsIGFuZCBsZXNzIGVycm9ycwoKVmVyc2lvbiAwLjIgKEZlYnJ1YXJ5\nIDIzcmQsIDIwMTIpCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLQoKKiBSZWZhY3RvcmluZwoqIFRlYW1zIGRldGFpbHMgYW5kIG1vZGlmaWNh\ndGlvbgogICAgKiBiYXNpYyBhdHRyaWJ1dGVzCiAgICAqIGxpc3QgdGVhbXMg\naW4gb3JnYW5pemF0aW9ucywgb24gcmVwb3NpdG9yaWVzCiogR2l0IG9iamVj\ndHMKICAgICogY3JlYXRlIGFuZCBnZXQgdGFncywgcmVmZXJlbmNlcywgY29t\nbWl0cywgdHJlZXMsIGJsb2JzCiAgICAqIGxpc3QgYW5kIGVkaXQgcmVmZXJl\nbmNlcwoKVmVyc2lvbiAwLjEgKEZlYnJ1YXJ5IDE5dGgsIDIwMTIpCi0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKKiBVc2VyIGRldGFpbHMg\nYW5kIG1vZGlmaWNhdGlvbgogICAgKiBiYXNpYyBhdHRyaWJ1dGVzCiAgICAq\nIGZvbGxvd2VycywgZm9sbG93aW5nLCB3YXRjaGluZwogICAgKiBvcmdhbml6\nYXRpb25zCiAgICAqIHJlcG9zaXRvcmllcwoqIFJlcG9zaXRvcnkgZGV0YWls\ncyBhbmQgbW9kaWZpY2F0aW9uCiAgICAqIGJhc2ljIGF0dHJpYnV0ZXMKICAg\nICogZm9ya2luZwogICAgKiBjb2xsYWJvcmF0b3JzLCBjb250cmlidXRvcnMs\nIHdhdGNoZXJzCiogT3JnYW5pemF0aW9uIGRldGFpbHMgYW5kIG1vZGlmaWNh\ndGlvbgogICAgKiBiYXNpYyBhdHRyaWJ1dGVzCiAgICAqIG1lbWJlcnMgYW5k\nIHB1YmxpYyBtZW1iZXJzCg==\n","size":7531,"name":"ReadMe.md"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/contents/doc/ReferenceOfClasses.md +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4996'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '39214'), ('server', 'nginx/1.0.13'), ('last-modified', 'Wed, 05 Sep 2012 17:54:40 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"71786feb5f476112c5a8aa894ee7ca6c"'), ('cache-control', 'private, s-maxage=60, max-age=60'), ('date', 'Sat, 08 Sep 2012 10:43:48 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"_links":{"self":"https://api.github.com/repos/jacquev6/PyGithub/contents/doc/ReferenceOfClasses.md","git":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/b82d109eca7f58b32e6b3be6694578fa5451766b","html":"https://github.com/jacquev6/PyGithub/blob/master/doc/ReferenceOfClasses.md"},"type":"file","sha":"b82d109eca7f58b32e6b3be6694578fa5451766b","path":"doc/ReferenceOfClasses.md","encoding":"base64","size":28122,"name":"ReferenceOfClasses.md","content":"WW91IGRvbid0IG5vcm1hbHkgY3JlYXRlIGluc3RhbmNlcyBvZiBhbnkgY2xh\nc3MgYnV0IGBHaXRodWJgLgpZb3Ugb2J0YWluIGluc3RhbmNlcyB0aHJvdWdo\nIGNhbGxzIHRvIGBzZWFyY2hfYCwgYGdldF9gIGFuZCBgY3JlYXRlX2AgbWV0\naG9kcy4KCk1ldGhvZHMgcmV0dXJuaW5nIGFuICJpdGVyYXRvciBvZiBgU29t\nZVR5cGVgIiByZXR1cm4gYW4gaXRlcmF0b3Igd2hpY2ggeWllbGRzIGluc3Rh\nbmNlcyBvZiBgU29tZVR5cGVgLgpUaGlzIGltcGxlbWVudHMgbGF6eSBbcGFn\naW5hdGlvbiByZXF1ZXN0c10oaHR0cDovL2RldmVsb3Blci5naXRodWIuY29t\nL3YzLyNwYWdpbmF0aW9uKS4KWW91IGNhbiB1c2UgdGhpcyBpdGVyYXRvciBp\nbiBhIGBmb3IgZiBpbiB1c2VyLmdldF9mb2xsb3dlcnMoKTpgIGxvb3Agb3Ig\nd2l0aCBhbnkgW2l0ZXJ0b29sc10oaHR0cDovL2RvY3MucHl0aG9uLm9yZy9s\naWJyYXJ5L2l0ZXJ0b29scy5odG1sKSBmdW5jdGlvbnMsCmJ1dCB5b3UgY2Fu\nbm90IGtub3cgdGhlIG51bWJlciBvZiBvYmplY3RzIHJldHVybmVkIGJlZm9y\nZSB0aGUgZW5kIG9mIHRoZSBpdGVyYXRpb24uCklmIHRoYXQncyByZWFsbHkg\nd2hhdCB5b3UgbmVlZCwgeW91IGNhbnQgdXNlIGBsZW4oIGxpc3QoIHVzZXIu\nZ2V0X2ZvbGxvd2VycygpICkgKWAsIHdoaWNoIGRvZXMgYWxsIHRoZSByZXF1\nZXN0cyBuZWVkZWQgdG8gZW51bWVyYXRlIHRoZSB1c2VyJ3MgZm9sbG93ZXJz\nLgpOb3RlIHRoYXQgdGhlcmUgaXMgb2Z0ZW4gYW4gYXR0cmlidXRlIGdpdmlu\nZyB0aGlzIHZhbHVlIChpbiB0aGF0IGNhc2UgYHVzZXIuZm9sbG93ZXJzYCku\nCgpDbGFzcyBgR2l0aHViYAo9PT09PT09PT09PT09PQoKQ29uc3RydWN0ZWQg\nZnJvbSB1c2VyJ3MgbG9naW4gYW5kIHBhc3N3b3JkIG9yIE9BdXRoIHRva2Vu\nIG9yIG5vdGhpbmc6CgogICAgZyA9IEdpdGh1YiggbG9naW4sIHBhc3N3b3Jk\nICkKICAgIGcgPSBHaXRodWIoIHRva2VuICkKICAgIGcgPSBHaXRodWIoKQoK\nWW91IGNhbiBhZGQgYW4gYXJndW1lbnQgYGJhc2VfdXJsID0gImh0dHA6Ly9t\neS5lbnRlcnByaXNlLmNvbTo4MDgwL3BhdGgvdG8vZ2l0aHViImAgdG8gY29u\nbmVjdCB0byBhIGxvY2FsIGluc3RhbGwgb2YgR2l0aHViIChpZS4gR2l0aHVi\nIEVudGVycHJpc2UpLgpBbm90aGVyIGFyZ3VtZW50LCB0aGF0IGNhbiBiZSBw\nYXNzZWQgaXMgYHRpbWVvdXRgIHdoaWNoIGhhcyBkZWZhdWx0IHZhbHVlIGAx\nMGAuCgpBdHRyaWJ1dGVzCi0tLS0tLS0tLS0KKiBgcmF0ZV9saW1pdGluZ2A6\nIHR1cGxlIG9mIHR3byBpbnRlZ2VyczogcmVtYWluaW5nIGFuZCBsaW1pdCwg\nYXMgZXhwbGFpbmVkIGluIFtSYXRlIExpbWl0aW5nXShodHRwOi8vZGV2ZWxv\ncGVyLmdpdGh1Yi5jb20vdjMvI3JhdGUtbGltaXRpbmcpCgpNZXRob2RzCi0t\nLS0tLS0KKiBgZ2V0X3VzZXIoKWA6IGBBdXRoZW50aWNhdGVkVXNlcmAKKiBg\nZ2V0X3VzZXIoIGxvZ2luIClgOiBgTmFtZWRVc2VyYAoqIGBnZXRfb3JnYW5p\nemF0aW9uKCBsb2dpbiApYDogYE9yZ2FuaXphdGlvbmAKKiBgZ2V0X2dpc3Qo\nIGlkIClgOiBgR2lzdGAKICAgICogYGlkYDogc3RyaW5nCiogYGdldF9naXN0\ncygpYDogaXRlcmF0b3Igb2YgYEdpc3RgCiogYHNlYXJjaF9yZXBvcygga2V5\nd29yZCApYDogaXRlcmF0b3Igb2YgYFJlcG9zaXRvcnlgCiogYGxlZ2FjeV9z\nZWFyY2hfcmVwb3MoIGtleXdvcmQsIFtsYW5ndWFnZV0gKWA6IGl0ZXJhdG9y\nIG9mIGBSZXBvc2l0b3J5YAogICAgKiBga2V5d29yZGA6IHN0cmluZwogICAg\nKiBgbGFuZ3VhZ2VgOiBzdHJpbmcKKiBgbGVnYWN5X3NlYXJjaF91c2Vycygg\na2V5d29yZCApYDogaXRlcmF0b3Igb2YgYE5hbWVkVXNlcmAKICAgICogYGtl\neXdvcmRgOiBzdHJpbmcKKiBgbGVnYWN5X3NlYXJjaF91c2VyX2J5X2VtYWls\nKCBlbWFpbCApYDogYE5hbWVkVXNlcmAKICAgICogYGVtYWlsYDogc3RyaW5n\nCiogYHJlbmRlcl9tYXJrZG93biggdGV4dCwgW2NvbnRleHRdIClgOiBzdHJp\nbmcKICAgICogYHRleHRgOiBzdHJpbmcKICAgICogYGNvbnRleHRgOiBgUmVw\nb3NpdG9yeWAKCkNsYXNzIGBHaXRodWJFeGNlcHRpb25gCj09PT09PT09PT09\nPT09PT09PT09PT09CgpBdHRyaWJ1dGVzCi0tLS0tLS0tLS0KKiBgc3RhdHVz\nYDogaW50ZWdlcgoqIGBkYXRhYDogZGljdAoKQ2xhc3MgYEF1dGhlbnRpY2F0\nZWRVc2VyYAo9PT09PT09PT09PT09PT09PT09PT09PT09CgpBdHRyaWJ1dGVz\nCi0tLS0tLS0tLS0KKiBgYXZhdGFyX3VybGA6IHN0cmluZwoqIGBiaW9gOiBz\ndHJpbmcKKiBgYmxvZ2A6IHN0cmluZwoqIGBjb2xsYWJvcmF0b3JzYDogaW50\nZWdlcgoqIGBjb21wYW55YDogc3RyaW5nCiogYGNyZWF0ZWRfYXRgOiBkYXRl\ndGltZS5kYXRldGltZQoqIGBkaXNrX3VzYWdlYDogaW50ZWdlcgoqIGBlbWFp\nbGA6IHN0cmluZwoqIGBmb2xsb3dlcnNgOiBpbnRlZ2VyCiogYGZvbGxvd2lu\nZ2A6IGludGVnZXIKKiBgZ3JhdmF0YXJfaWRgOiBzdHJpbmcKKiBgaGlyZWFi\nbGVgOiBib29sCiogYGh0bWxfdXJsYDogc3RyaW5nCiogYGlkYDogaW50ZWdl\ncgoqIGBsb2NhdGlvbmA6IHN0cmluZwoqIGBsb2dpbmA6IHN0cmluZwoqIGBu\nYW1lYDogc3RyaW5nCiogYG93bmVkX3ByaXZhdGVfcmVwb3NgOiBpbnRlZ2Vy\nCiogYHBsYW5gOiBgUGxhbmAKKiBgcHJpdmF0ZV9naXN0c2A6IGludGVnZXIK\nKiBgcHVibGljX2dpc3RzYDogaW50ZWdlcgoqIGBwdWJsaWNfcmVwb3NgOiBp\nbnRlZ2VyCiogYHRvdGFsX3ByaXZhdGVfcmVwb3NgOiBpbnRlZ2VyCiogYHR5\ncGVgOiBzdHJpbmcKKiBgdXJsYDogc3RyaW5nCgpBdXRob3JpemF0aW9ucwot\nLS0tLS0tLS0tLS0tLQoqIGBjcmVhdGVfYXV0aG9yaXphdGlvbiggW3Njb3Bl\ncywgbm90ZSwgbm90ZV91cmxdIClgOiBgQXV0aG9yaXphdGlvbmAKICAgICog\nYHNjb3Blc2A6IGxpc3Qgb2Ygc3RyaW5nCiAgICAqIGBub3RlYDogc3RyaW5n\nCiAgICAqIGBub3RlX3VybGA6IHN0cmluZwoqIGBnZXRfYXV0aG9yaXphdGlv\nbiggaWQgKWA6IGBBdXRob3JpemF0aW9uYAogICAgKiBgaWRgOiBpbnRlZ2Vy\nCiogYGdldF9hdXRob3JpemF0aW9ucygpYDogaXRlcmF0b3Igb2YgYEF1dGhv\ncml6YXRpb25gCgpFbWFpbHMKLS0tLS0tCiogYGFkZF90b19lbWFpbHMoIGVt\nYWlsLCAuLi4gKWAKICAgICogYGVtYWlsYDogc3RyaW5nCiogYGdldF9lbWFp\nbHMoKWA6IGxpc3Qgb2Ygc3RyaW5nCiogYHJlbW92ZV9mcm9tX2VtYWlscygg\nZW1haWwsIC4uLiApYAogICAgKiBgZW1haWxgOiBzdHJpbmcKCkV2ZW50cwot\nLS0tLS0KKiBgZ2V0X2V2ZW50cygpYDogaXRlcmF0b3Igb2YgYEV2ZW50YAoq\nIGBnZXRfb3JnYW5pemF0aW9uX2V2ZW50cyggb3JnIClgOiBpdGVyYXRvciBv\nZiBgRXZlbnRgCiAgICAqIGBvcmdgOiBgT3JnYW5pemF0aW9uYAoKRm9sbG93\nZXJzCi0tLS0tLS0tLQoqIGBnZXRfZm9sbG93ZXJzKClgOiBpdGVyYXRvciBv\nZiBgTmFtZWRVc2VyYAoKRm9sbG93aW5nCi0tLS0tLS0tLQoqIGBhZGRfdG9f\nZm9sbG93aW5nKCBmb2xsb3dpbmcgKWAKICAgICogYGZvbGxvd2luZ2A6IGBO\nYW1lZFVzZXJgCiogYGdldF9mb2xsb3dpbmcoKWA6IGl0ZXJhdG9yIG9mIGBO\nYW1lZFVzZXJgCiogYGhhc19pbl9mb2xsb3dpbmcoIGZvbGxvd2luZyApYDog\nYm9vbAogICAgKiBgZm9sbG93aW5nYDogYE5hbWVkVXNlcmAKKiBgcmVtb3Zl\nX2Zyb21fZm9sbG93aW5nKCBmb2xsb3dpbmcgKWAKICAgICogYGZvbGxvd2lu\nZ2A6IGBOYW1lZFVzZXJgCgpGb3JraW5nCi0tLS0tLS0KKiBgY3JlYXRlX2Zv\ncmsoIHJlcG8gKWA6IGBSZXBvc2l0b3J5YAogICAgKiBgcmVwb2A6IGBSZXBv\nc2l0b3J5YAoKR2lzdHMKLS0tLS0KKiBgY3JlYXRlX2dpc3QoIHB1YmxpYywg\nZmlsZXMsIFtkZXNjcmlwdGlvbl0gKWA6IGBHaXN0YAogICAgKiBgcHVibGlj\nYDogYm9vbAogICAgKiBgZmlsZXNgOiBkaWN0IG9mIHN0cmluZyB0byBgSW5w\ndXRGaWxlQ29udGVudGAKICAgICogYGRlc2NyaXB0aW9uYDogc3RyaW5nCiog\nYGdldF9naXN0cygpYDogaXRlcmF0b3Igb2YgYEdpc3RgCiogYGdldF9zdGFy\ncmVkX2dpc3RzKClgOiBpdGVyYXRvciBvZiBgR2lzdGAKCklzc3VlcwotLS0t\nLS0KKiBgZ2V0X2lzc3VlcygpYDogaXRlcmF0b3Igb2YgYElzc3VlYAoKS2V5\ncwotLS0tCiogYGNyZWF0ZV9rZXkoIHRpdGxlLCBrZXkgKWA6IGBVc2VyS2V5\nYAogICAgKiBgdGl0bGVgOiBzdHJpbmcKICAgICogYGtleWA6IHN0cmluZwoq\nIGBnZXRfa2V5KCBpZCApYDogYFVzZXJLZXlgCiAgICAqIGBpZGA6IGludGVn\nZXIKKiBgZ2V0X2tleXMoKWA6IGl0ZXJhdG9yIG9mIGBVc2VyS2V5YAoKTW9k\naWZpY2F0aW9uCi0tLS0tLS0tLS0tLQoqIGBlZGl0KCBbbmFtZSwgZW1haWws\nIGJsb2csIGNvbXBhbnksIGxvY2F0aW9uLCBoaXJlYWJsZSwgYmlvXSApYAog\nICAgKiBgbmFtZWA6IHN0cmluZwogICAgKiBgZW1haWxgOiBzdHJpbmcKICAg\nICogYGJsb2dgOiBzdHJpbmcKICAgICogYGNvbXBhbnlgOiBzdHJpbmcKICAg\nICogYGxvY2F0aW9uYDogc3RyaW5nCiAgICAqIGBoaXJlYWJsZWA6IGJvb2wK\nICAgICogYGJpb2A6IHN0cmluZwoKT3JncwotLS0tCiogYGdldF9vcmdzKClg\nOiBpdGVyYXRvciBvZiBgT3JnYW5pemF0aW9uYAoKUmVwb3MKLS0tLS0KKiBg\nY3JlYXRlX3JlcG8oIG5hbWUsIFtkZXNjcmlwdGlvbiwgaG9tZXBhZ2UsIHBy\naXZhdGUsIGhhc19pc3N1ZXMsIGhhc193aWtpLCBoYXNfZG93bmxvYWRzXSAp\nYDogYFJlcG9zaXRvcnlgCiAgICAqIGBuYW1lYDogc3RyaW5nCiAgICAqIGBk\nZXNjcmlwdGlvbmA6IHN0cmluZwogICAgKiBgaG9tZXBhZ2VgOiBzdHJpbmcK\nICAgICogYHByaXZhdGVgOiBib29sCiAgICAqIGBoYXNfaXNzdWVzYDogYm9v\nbAogICAgKiBgaGFzX3dpa2lgOiBib29sCiAgICAqIGBoYXNfZG93bmxvYWRz\nYDogYm9vbAoqIGBnZXRfcmVwbyggbmFtZSApYDogYFJlcG9zaXRvcnlgCiAg\nICAqIGBuYW1lYDogc3RyaW5nCiogYGdldF9yZXBvcyggW3R5cGUsIHNvcnQs\nIGRpcmVjdGlvbl0gKWA6IGl0ZXJhdG9yIG9mIGBSZXBvc2l0b3J5YAogICAg\nKiBgdHlwZWA6IHN0cmluZwogICAgKiBgc29ydGA6IHN0cmluZwogICAgKiBg\nZGlyZWN0aW9uYDogc3RyaW5nCgpXYXRjaGVkCi0tLS0tLS0KKiBgYWRkX3Rv\nX3dhdGNoZWQoIHdhdGNoZWQgKWAKICAgICogYHdhdGNoZWRgOiBgUmVwb3Np\ndG9yeWAKKiBgZ2V0X3dhdGNoZWQoKWA6IGl0ZXJhdG9yIG9mIGBSZXBvc2l0\nb3J5YAoqIGBoYXNfaW5fd2F0Y2hlZCggd2F0Y2hlZCApYDogYm9vbAogICAg\nKiBgd2F0Y2hlZGA6IGBSZXBvc2l0b3J5YAoqIGByZW1vdmVfZnJvbV93YXRj\naGVkKCB3YXRjaGVkIClgCiAgICAqIGB3YXRjaGVkYDogYFJlcG9zaXRvcnlg\nCgpDbGFzcyBgQXV0aG9yaXphdGlvbmAKPT09PT09PT09PT09PT09PT09PT09\nCgpBdHRyaWJ1dGVzCi0tLS0tLS0tLS0KKiBgYXBwYDogYEF1dGhvcml6YXRp\nb25BcHBsaWNhdGlvbmAKKiBgY3JlYXRlZF9hdGA6IGRhdGV0aW1lLmRhdGV0\naW1lCiogYGlkYDogaW50ZWdlcgoqIGBub3RlYDogc3RyaW5nCiogYG5vdGVf\ndXJsYDogc3RyaW5nCiogYHNjb3Blc2A6IGxpc3Qgb2Ygc3RyaW5nCiogYHRv\na2VuYDogc3RyaW5nCiogYHVwZGF0ZWRfYXRgOiBkYXRldGltZS5kYXRldGlt\nZQoqIGB1cmxgOiBzdHJpbmcKCkRlbGV0aW9uCi0tLS0tLS0tCiogYGRlbGV0\nZSgpYAoKTW9kaWZpY2F0aW9uCi0tLS0tLS0tLS0tLQoqIGBlZGl0KCBbc2Nv\ncGVzLCBhZGRfc2NvcGVzLCByZW1vdmVfc2NvcGVzLCBub3RlLCBub3RlX3Vy\nbF0gKWAKICAgICogYHNjb3Blc2A6IGxpc3Qgb2Ygc3RyaW5nCiAgICAqIGBh\nZGRfc2NvcGVzYDogbGlzdCBvZiBzdHJpbmcKICAgICogYHJlbW92ZV9zY29w\nZXNgOiBsaXN0IG9mIHN0cmluZwogICAgKiBgbm90ZWA6IHN0cmluZwogICAg\nKiBgbm90ZV91cmxgOiBzdHJpbmcKCkNsYXNzIGBBdXRob3JpemF0aW9uQXBw\nbGljYXRpb25gCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CgpB\ndHRyaWJ1dGVzCi0tLS0tLS0tLS0KKiBgbmFtZWA6IHN0cmluZwoqIGB1cmxg\nOiBzdHJpbmcKCkNsYXNzIGBCcmFuY2hgCj09PT09PT09PT09PT09CgpBdHRy\naWJ1dGVzCi0tLS0tLS0tLS0KKiBgY29tbWl0YDogYENvbW1pdGAKKiBgbmFt\nZWA6IHN0cmluZwoKQ2xhc3MgYENvbW1pdGAKPT09PT09PT09PT09PT0KCkF0\ndHJpYnV0ZXMKLS0tLS0tLS0tLQoqIGBhdXRob3JgOiBgTmFtZWRVc2VyYAoq\nIGBjb21taXRgOiBgR2l0Q29tbWl0YAoqIGBjb21taXR0ZXJgOiBgTmFtZWRV\nc2VyYAoqIGBmaWxlc2A6IGxpc3Qgb2YgYEZpbGVgCiogYHBhcmVudHNgOiBs\naXN0IG9mIGBDb21taXRgCiogYHNoYWA6IHN0cmluZwoqIGBzdGF0c2A6IGBD\nb21taXRTdGF0c2AKKiBgdXJsYDogc3RyaW5nCgpDb21tZW50cwotLS0tLS0t\nLQoqIGBjcmVhdGVfY29tbWVudCggYm9keSwgW2xpbmUsIHBhdGgsIHBvc2l0\naW9uXSApYDogYENvbW1pdENvbW1lbnRgCiAgICAqIGBib2R5YDogc3RyaW5n\nCiAgICAqIGBsaW5lYDogaW50ZWdlcgogICAgKiBgcGF0aGA6IHN0cmluZwog\nICAgKiBgcG9zaXRpb25gOiBpbnRlZ2VyCiogYGdldF9jb21tZW50cygpYDog\naXRlcmF0b3Igb2YgYENvbW1pdENvbW1lbnRgCgpDbGFzcyBgQ29tbWl0Q29t\nbWVudGAKPT09PT09PT09PT09PT09PT09PT09CgpBdHRyaWJ1dGVzCi0tLS0t\nLS0tLS0KKiBgYm9keWA6IHN0cmluZwoqIGBjb21taXRfaWRgOiBzdHJpbmcK\nKiBgY3JlYXRlZF9hdGA6IGRhdGV0aW1lLmRhdGV0aW1lCiogYGh0bWxfdXJs\nYDogc3RyaW5nCiogYGlkYDogaW50ZWdlcgoqIGBsaW5lYDogaW50ZWdlcgoq\nIGBwYXRoYDogc3RyaW5nCiogYHBvc2l0aW9uYDogaW50ZWdlcgoqIGB1cGRh\ndGVkX2F0YDogZGF0ZXRpbWUuZGF0ZXRpbWUKKiBgdXJsYDogc3RyaW5nCiog\nYHVzZXJgOiBgTmFtZWRVc2VyYAoKRGVsZXRpb24KLS0tLS0tLS0KKiBgZGVs\nZXRlKClgCgpNb2RpZmljYXRpb24KLS0tLS0tLS0tLS0tCiogYGVkaXQoIGJv\nZHkgKWAKICAgICogYGJvZHlgOiBzdHJpbmcKCkNsYXNzIGBDb21taXRTdGF0\nc2AKPT09PT09PT09PT09PT09PT09PQoKQXR0cmlidXRlcwotLS0tLS0tLS0t\nCiogYGFkZGl0aW9uc2A6IGludGVnZXIKKiBgZGVsZXRpb25zYDogaW50ZWdl\ncgoqIGB0b3RhbGA6IGludGVnZXIKCkNsYXNzIGBDb21wYXJpc29uYAo9PT09\nPT09PT09PT09PT09PT0KCkF0dHJpYnV0ZXMKLS0tLS0tLS0tLQoqIGBhaGVh\nZF9ieWA6IGludGVnZXIKKiBgYmFzZV9jb21taXRgOiBgQ29tbWl0YAoqIGBi\nZWhpbmRfYnlgOiBpbnRlZ2VyCiogYGNvbW1pdHNgOiBsaXN0IG9mIGBDb21t\naXRgCiogYGRpZmZfdXJsYDogc3RyaW5nCiogYGZpbGVzYDogbGlzdCBvZiBg\nRmlsZWAKKiBgaHRtbF91cmxgOiBzdHJpbmcKKiBgcGF0Y2hfdXJsYDogc3Ry\naW5nCiogYHBlcm1hbGlua191cmxgOiBzdHJpbmcKKiBgc3RhdHVzYDogc3Ry\naW5nCiogYHRvdGFsX2NvbW1pdHNgOiBpbnRlZ2VyCiogYHVybGA6IHN0cmlu\nZwoKQ2xhc3MgYERvd25sb2FkYAo9PT09PT09PT09PT09PT09CgpBdHRyaWJ1\ndGVzCi0tLS0tLS0tLS0KKiBgYWNjZXNza2V5aWRgOiBzdHJpbmcKKiBgYWNs\nYDogc3RyaW5nCiogYGJ1Y2tldGA6IHN0cmluZwoqIGBjb250ZW50X3R5cGVg\nOiBzdHJpbmcKKiBgY3JlYXRlZF9hdGA6IGRhdGV0aW1lLmRhdGV0aW1lCiog\nYGRlc2NyaXB0aW9uYDogc3RyaW5nCiogYGRvd25sb2FkX2NvdW50YDogaW50\nZWdlcgoqIGBleHBpcmF0aW9uZGF0ZWA6IGRhdGV0aW1lLmRhdGV0aW1lCiog\nYGh0bWxfdXJsYDogc3RyaW5nCiogYGlkYDogaW50ZWdlcgoqIGBtaW1lX3R5\ncGVgOiBzdHJpbmcKKiBgbmFtZWA6IHN0cmluZwoqIGBwYXRoYDogc3RyaW5n\nCiogYHBvbGljeWA6IHN0cmluZwoqIGBwcmVmaXhgOiBzdHJpbmcKKiBgcmVk\naXJlY3RgOiBib29sCiogYHMzX3VybGA6IHN0cmluZwoqIGBzaWduYXR1cmVg\nOiBzdHJpbmcKKiBgc2l6ZWA6IGludGVnZXIKKiBgdXJsYDogc3RyaW5nCgpE\nZWxldGlvbgotLS0tLS0tLQoqIGBkZWxldGUoKWAKCkNsYXNzIGBFdmVudGAK\nPT09PT09PT09PT09PQoKQXR0cmlidXRlcwotLS0tLS0tLS0tCiogYGFjdG9y\nYDogYE5hbWVkVXNlcmAKKiBgY3JlYXRlZF9hdGA6IGRhdGV0aW1lLmRhdGV0\naW1lCiogYGlkYDogc3RyaW5nCiogYG9yZ2A6IGBPcmdhbml6YXRpb25gCiog\nYHBheWxvYWRgOiBkaWN0CiogYHB1YmxpY2A6IGJvb2wKKiBgcmVwb2A6IGBS\nZXBvc2l0b3J5YAoqIGB0eXBlYDogc3RyaW5nCgpDbGFzcyBgRmlsZWAKPT09\nPT09PT09PT09CgpBdHRyaWJ1dGVzCi0tLS0tLS0tLS0KKiBgYWRkaXRpb25z\nYDogaW50ZWdlcgoqIGBibG9iX3VybGA6IHN0cmluZwoqIGBjaGFuZ2VzYDog\naW50ZWdlcgoqIGBkZWxldGlvbnNgOiBpbnRlZ2VyCiogYGZpbGVuYW1lYDog\nc3RyaW5nCiogYHBhdGNoYDogc3RyaW5nCiogYHJhd191cmxgOiBzdHJpbmcK\nKiBgc2hhYDogc3RyaW5nCiogYHN0YXR1c2A6IHN0cmluZwoKQ2xhc3MgYEdp\nc3RgCj09PT09PT09PT09PQoKQXR0cmlidXRlcwotLS0tLS0tLS0tCiogYGNv\nbW1lbnRzYDogaW50ZWdlcgoqIGBjcmVhdGVkX2F0YDogZGF0ZXRpbWUuZGF0\nZXRpbWUKKiBgZGVzY3JpcHRpb25gOiBzdHJpbmcKKiBgZmlsZXNgOiBkaWN0\nIG9mIHN0cmluZyB0byBgR2lzdEZpbGVgCiogYGZvcmtfb2ZgOiBgR2lzdGAK\nKiBgZm9ya3NgOiBsaXN0IG9mIGBHaXN0YAoqIGBnaXRfcHVsbF91cmxgOiBz\ndHJpbmcKKiBgZ2l0X3B1c2hfdXJsYDogc3RyaW5nCiogYGhpc3RvcnlgOiBs\naXN0IG9mIGBHaXN0SGlzdG9yeVN0YXRlYAoqIGBodG1sX3VybGA6IHN0cmlu\nZwoqIGBpZGA6IHN0cmluZwoqIGBwdWJsaWNgOiBib29sCiogYHVwZGF0ZWRf\nYXRgOiBkYXRldGltZS5kYXRldGltZQoqIGB1cmxgOiBzdHJpbmcKKiBgdXNl\ncmA6IGBOYW1lZFVzZXJgCgpDb21tZW50cwotLS0tLS0tLQoqIGBjcmVhdGVf\nY29tbWVudCggYm9keSApYDogYEdpc3RDb21tZW50YAogICAgKiBgYm9keWA6\nIHN0cmluZwoqIGBnZXRfY29tbWVudCggaWQgKWA6IGBHaXN0Q29tbWVudGAK\nICAgICogYGlkYDogaW50ZWdlcgoqIGBnZXRfY29tbWVudHMoKWA6IGl0ZXJh\ndG9yIG9mIGBHaXN0Q29tbWVudGAKCkRlbGV0aW9uCi0tLS0tLS0tCiogYGRl\nbGV0ZSgpYAoKRm9ya2luZwotLS0tLS0tCiogYGNyZWF0ZV9mb3JrKClgOiBg\nR2lzdGAKCk1vZGlmaWNhdGlvbgotLS0tLS0tLS0tLS0KKiBgZWRpdCggW2Rl\nc2NyaXB0aW9uLCBmaWxlc10gKWAKICAgICogYGRlc2NyaXB0aW9uYDogc3Ry\naW5nCiAgICAqIGBmaWxlc2A6IGRpY3Qgb2Ygc3RyaW5nIHRvIGBJbnB1dEZp\nbGVDb250ZW50YAoKU3RhcnJpbmcKLS0tLS0tLS0KKiBgaXNfc3RhcnJlZCgp\nYDogYm9vbAoqIGByZXNldF9zdGFycmVkKClgCiogYHNldF9zdGFycmVkKClg\nCgpDbGFzcyBgR2lzdENvbW1lbnRgCj09PT09PT09PT09PT09PT09PT0KCkF0\ndHJpYnV0ZXMKLS0tLS0tLS0tLQoqIGBib2R5YDogc3RyaW5nCiogYGNyZWF0\nZWRfYXRgOiBkYXRldGltZS5kYXRldGltZQoqIGBpZGA6IGludGVnZXIKKiBg\ndXBkYXRlZF9hdGA6IGRhdGV0aW1lLmRhdGV0aW1lCiogYHVybGA6IHN0cmlu\nZwoqIGB1c2VyYDogYE5hbWVkVXNlcmAKCkRlbGV0aW9uCi0tLS0tLS0tCiog\nYGRlbGV0ZSgpYAoKTW9kaWZpY2F0aW9uCi0tLS0tLS0tLS0tLQoqIGBlZGl0\nKCBib2R5IClgCiAgICAqIGBib2R5YDogc3RyaW5nCgpDbGFzcyBgR2lzdEZp\nbGVgCj09PT09PT09PT09PT09PT0KCkF0dHJpYnV0ZXMKLS0tLS0tLS0tLQoq\nIGBjb250ZW50YDogc3RyaW5nCiogYGZpbGVuYW1lYDogc3RyaW5nCiogYGxh\nbmd1YWdlYDogc3RyaW5nCiogYHJhd191cmxgOiBzdHJpbmcKKiBgc2l6ZWA6\nIGludGVnZXIKCkNsYXNzIGBHaXN0SGlzdG9yeVN0YXRlYAo9PT09PT09PT09\nPT09PT09PT09PT09PT0KCkF0dHJpYnV0ZXMKLS0tLS0tLS0tLQoqIGBjaGFu\nZ2Vfc3RhdHVzYDogYENvbW1pdFN0YXRzYAoqIGBjb21taXR0ZWRfYXRgOiBk\nYXRldGltZS5kYXRldGltZQoqIGB1cmxgOiBzdHJpbmcKKiBgdXNlcmA6IGBO\nYW1lZFVzZXJgCiogYHZlcnNpb25gOiBzdHJpbmcKCkNsYXNzIGBHaXRBdXRo\nb3JgCj09PT09PT09PT09PT09PT09CgpBdHRyaWJ1dGVzCi0tLS0tLS0tLS0K\nKiBgZGF0ZWA6IGRhdGV0aW1lLmRhdGV0aW1lCiogYGVtYWlsYDogc3RyaW5n\nCiogYG5hbWVgOiBzdHJpbmcKCkNsYXNzIGBHaXRCbG9iYAo9PT09PT09PT09\nPT09PT0KCkF0dHJpYnV0ZXMKLS0tLS0tLS0tLQoqIGBjb250ZW50YDogc3Ry\naW5nCiogYGVuY29kaW5nYDogc3RyaW5nCiogYHNoYWA6IHN0cmluZwoqIGBz\naXplYDogaW50ZWdlcgoqIGB1cmxgOiBzdHJpbmcKCkNsYXNzIGBHaXRDb21t\naXRgCj09PT09PT09PT09PT09PT09CgpBdHRyaWJ1dGVzCi0tLS0tLS0tLS0K\nKiBgYXV0aG9yYDogYEdpdEF1dGhvcmAKKiBgY29tbWl0dGVyYDogYEdpdEF1\ndGhvcmAKKiBgbWVzc2FnZWA6IHN0cmluZwoqIGBwYXJlbnRzYDogbGlzdCBv\nZiBgR2l0Q29tbWl0YAoqIGBzaGFgOiBzdHJpbmcKKiBgdHJlZWA6IGBHaXRU\ncmVlYAoqIGB1cmxgOiBzdHJpbmcKCkNsYXNzIGBHaXRPYmplY3RgCj09PT09\nPT09PT09PT09PT09CgpBdHRyaWJ1dGVzCi0tLS0tLS0tLS0KKiBgc2hhYDog\nc3RyaW5nCiogYHR5cGVgOiBzdHJpbmcKKiBgdXJsYDogc3RyaW5nCgpDbGFz\ncyBgR2l0UmVmYAo9PT09PT09PT09PT09PQoKQXR0cmlidXRlcwotLS0tLS0t\nLS0tCiogYG9iamVjdGA6IGBHaXRPYmplY3RgCiogYHJlZmA6IHN0cmluZwoq\nIGB1cmxgOiBzdHJpbmcKCkRlbGV0aW9uCi0tLS0tLS0tCiogYGRlbGV0ZSgp\nYAoKTW9kaWZpY2F0aW9uCi0tLS0tLS0tLS0tLQoqIGBlZGl0KCBzaGEsIFtm\nb3JjZV0gKWAKICAgICogYHNoYWA6IHN0cmluZwogICAgKiBgZm9yY2VgOiBi\nb29sCgpDbGFzcyBgR2l0VGFnYAo9PT09PT09PT09PT09PQoKQXR0cmlidXRl\ncwotLS0tLS0tLS0tCiogYG1lc3NhZ2VgOiBzdHJpbmcKKiBgb2JqZWN0YDog\nYEdpdE9iamVjdGAKKiBgc2hhYDogc3RyaW5nCiogYHRhZ2A6IHN0cmluZwoq\nIGB0YWdnZXJgOiBgR2l0QXV0aG9yYAoqIGB1cmxgOiBzdHJpbmcKCkNsYXNz\nIGBHaXRUcmVlYAo9PT09PT09PT09PT09PT0KCkF0dHJpYnV0ZXMKLS0tLS0t\nLS0tLQoqIGBzaGFgOiBzdHJpbmcKKiBgdHJlZWA6IGxpc3Qgb2YgYEdpdFRy\nZWVFbGVtZW50YAoqIGB1cmxgOiBzdHJpbmcKCkNsYXNzIGBHaXRUcmVlRWxl\nbWVudGAKPT09PT09PT09PT09PT09PT09PT09PQoKQXR0cmlidXRlcwotLS0t\nLS0tLS0tCiogYG1vZGVgOiBzdHJpbmcKKiBgcGF0aGA6IHN0cmluZwoqIGBz\naGFgOiBzdHJpbmcKKiBgc2l6ZWA6IGludGVnZXIKKiBgdHlwZWA6IHN0cmlu\nZwoqIGB1cmxgOiBzdHJpbmcKCkNsYXNzIGBIb29rYAo9PT09PT09PT09PT0K\nCkF0dHJpYnV0ZXMKLS0tLS0tLS0tLQoqIGBhY3RpdmVgOiBib29sCiogYGNv\nbmZpZ2A6IGRpY3QKKiBgY3JlYXRlZF9hdGA6IGRhdGV0aW1lLmRhdGV0aW1l\nCiogYGV2ZW50c2A6IGxpc3Qgb2Ygc3RyaW5nCiogYGlkYDogaW50ZWdlcgoq\nIGBsYXN0X3Jlc3BvbnNlYDogYEhvb2tSZXNwb25zZWAKKiBgbmFtZWA6IHN0\ncmluZwoqIGB1cGRhdGVkX2F0YDogZGF0ZXRpbWUuZGF0ZXRpbWUKKiBgdXJs\nYDogc3RyaW5nCgpEZWxldGlvbgotLS0tLS0tLQoqIGBkZWxldGUoKWAKCk1v\nZGlmaWNhdGlvbgotLS0tLS0tLS0tLS0KKiBgZWRpdCggbmFtZSwgY29uZmln\nLCBbZXZlbnRzLCBhZGRfZXZlbnRzLCByZW1vdmVfZXZlbnRzLCBhY3RpdmVd\nIClgCiAgICAqIGBuYW1lYDogc3RyaW5nCiAgICAqIGBjb25maWdgOiBkaWN0\nCiAgICAqIGBldmVudHNgOiBsaXN0IG9mIHN0cmluZwogICAgKiBgYWRkX2V2\nZW50c2A6IGxpc3Qgb2Ygc3RyaW5nCiAgICAqIGByZW1vdmVfZXZlbnRzYDog\nbGlzdCBvZiBzdHJpbmcKICAgICogYGFjdGl2ZWA6IGJvb2wKClRlc3RpbmcK\nLS0tLS0tLQoqIGB0ZXN0KClgCgpDbGFzcyBgSG9va1Jlc3BvbnNlYAo9PT09\nPT09PT09PT09PT09PT09PQoKQXR0cmlidXRlcwotLS0tLS0tLS0tCiogYGNv\nZGVgOiBpbnRlZ2VyCiogYG1lc3NhZ2VgOiBzdHJpbmcKKiBgc3RhdHVzYDog\nc3RyaW5nCgpDbGFzcyBgSXNzdWVgCj09PT09PT09PT09PT0KCkF0dHJpYnV0\nZXMKLS0tLS0tLS0tLQoqIGBhc3NpZ25lZWA6IGBOYW1lZFVzZXJgCiogYGJv\nZHlgOiBzdHJpbmcKKiBgY2xvc2VkX2F0YDogZGF0ZXRpbWUuZGF0ZXRpbWUK\nKiBgY2xvc2VkX2J5YDogYE5hbWVkVXNlcmAKKiBgY29tbWVudHNgOiBpbnRl\nZ2VyCiogYGNyZWF0ZWRfYXRgOiBkYXRldGltZS5kYXRldGltZQoqIGBodG1s\nX3VybGA6IHN0cmluZwoqIGBpZGA6IGludGVnZXIKKiBgbGFiZWxzYDogbGlz\ndCBvZiBgTGFiZWxgCiogYG1pbGVzdG9uZWA6IGBNaWxlc3RvbmVgCiogYG51\nbWJlcmA6IGludGVnZXIKKiBgcHVsbF9yZXF1ZXN0YDogYElzc3VlUHVsbFJl\ncXVlc3RgCiogYHJlcG9zaXRvcnlgOiBgUmVwb3NpdG9yeWAKKiBgc3RhdGVg\nOiBzdHJpbmcKKiBgdGl0bGVgOiBzdHJpbmcKKiBgdXBkYXRlZF9hdGA6IGRh\ndGV0aW1lLmRhdGV0aW1lCiogYHVybGA6IHN0cmluZwoqIGB1c2VyYDogYE5h\nbWVkVXNlcmAKCkNvbW1lbnRzCi0tLS0tLS0tCiogYGNyZWF0ZV9jb21tZW50\nKCBib2R5IClgOiBgSXNzdWVDb21tZW50YAogICAgKiBgYm9keWA6IHN0cmlu\nZwoqIGBnZXRfY29tbWVudCggaWQgKWA6IGBJc3N1ZUNvbW1lbnRgCiAgICAq\nIGBpZGA6IGludGVnZXIKKiBgZ2V0X2NvbW1lbnRzKClgOiBpdGVyYXRvciBv\nZiBgSXNzdWVDb21tZW50YAoKRXZlbnRzCi0tLS0tLQoqIGBnZXRfZXZlbnRz\nKClgOiBpdGVyYXRvciBvZiBgSXNzdWVFdmVudGAKCkxhYmVscwotLS0tLS0K\nKiBgYWRkX3RvX2xhYmVscyggbGFiZWwsIC4uLiApYAogICAgKiBgbGFiZWxg\nOiBgTGFiZWxgCiogYGRlbGV0ZV9sYWJlbHMoKWAKKiBgZ2V0X2xhYmVscygp\nYDogaXRlcmF0b3Igb2YgYExhYmVsYAoqIGByZW1vdmVfZnJvbV9sYWJlbHMo\nIGxhYmVsIClgCiAgICAqIGBsYWJlbGA6IGBMYWJlbGAKKiBgc2V0X2xhYmVs\ncyggbGFiZWwsIC4uLiApYAogICAgKiBgbGFiZWxgOiBgTGFiZWxgCgpNb2Rp\nZmljYXRpb24KLS0tLS0tLS0tLS0tCiogYGVkaXQoIFt0aXRsZSwgYm9keSwg\nYXNzaWduZWUsIHN0YXRlLCBtaWxlc3RvbmUsIGxhYmVsc10gKWAKICAgICog\nYHRpdGxlYDogc3RyaW5nCiAgICAqIGBib2R5YDogc3RyaW5nCiAgICAqIGBh\nc3NpZ25lZWA6IGBOYW1lZFVzZXJgCiAgICAqIGBzdGF0ZWA6IHN0cmluZwog\nICAgKiBgbWlsZXN0b25lYDogYE1pbGVzdG9uZWAKICAgICogYGxhYmVsc2A6\nIGxpc3Qgb2Ygc3RyaW5nCgpDbGFzcyBgSXNzdWVDb21tZW50YAo9PT09PT09\nPT09PT09PT09PT09PQoKQXR0cmlidXRlcwotLS0tLS0tLS0tCiogYGJvZHlg\nOiBzdHJpbmcKKiBgY3JlYXRlZF9hdGA6IGRhdGV0aW1lLmRhdGV0aW1lCiog\nYGlkYDogaW50ZWdlcgoqIGB1cGRhdGVkX2F0YDogZGF0ZXRpbWUuZGF0ZXRp\nbWUKKiBgdXJsYDogc3RyaW5nCiogYHVzZXJgOiBgTmFtZWRVc2VyYAoKRGVs\nZXRpb24KLS0tLS0tLS0KKiBgZGVsZXRlKClgCgpNb2RpZmljYXRpb24KLS0t\nLS0tLS0tLS0tCiogYGVkaXQoIGJvZHkgKWAKICAgICogYGJvZHlgOiBzdHJp\nbmcKCkNsYXNzIGBJc3N1ZUV2ZW50YAo9PT09PT09PT09PT09PT09PT0KCkF0\ndHJpYnV0ZXMKLS0tLS0tLS0tLQoqIGBhY3RvcmA6IGBOYW1lZFVzZXJgCiog\nYGNvbW1pdF9pZGA6IHN0cmluZwoqIGBjcmVhdGVkX2F0YDogZGF0ZXRpbWUu\nZGF0ZXRpbWUKKiBgZXZlbnRgOiBzdHJpbmcKKiBgaWRgOiBpbnRlZ2VyCiog\nYGlzc3VlYDogYElzc3VlYAoqIGB1cmxgOiBzdHJpbmcKCkNsYXNzIGBJc3N1\nZVB1bGxSZXF1ZXN0YAo9PT09PT09PT09PT09PT09PT09PT09PT0KCkF0dHJp\nYnV0ZXMKLS0tLS0tLS0tLQoqIGBkaWZmX3VybGA6IHN0cmluZwoqIGBodG1s\nX3VybGA6IHN0cmluZwoqIGBwYXRjaF91cmxgOiBzdHJpbmcKCkNsYXNzIGBM\nYWJlbGAKPT09PT09PT09PT09PQoKQXR0cmlidXRlcwotLS0tLS0tLS0tCiog\nYGNvbG9yYDogc3RyaW5nCiogYG5hbWVgOiBzdHJpbmcKKiBgdXJsYDogc3Ry\naW5nCgpEZWxldGlvbgotLS0tLS0tLQoqIGBkZWxldGUoKWAKCk1vZGlmaWNh\ndGlvbgotLS0tLS0tLS0tLS0KKiBgZWRpdCggbmFtZSwgY29sb3IgKWAKICAg\nICogYG5hbWVgOiBzdHJpbmcKICAgICogYGNvbG9yYDogc3RyaW5nCgpDbGFz\ncyBgTWlsZXN0b25lYAo9PT09PT09PT09PT09PT09PQoKQXR0cmlidXRlcwot\nLS0tLS0tLS0tCiogYGNsb3NlZF9pc3N1ZXNgOiBpbnRlZ2VyCiogYGNyZWF0\nZWRfYXRgOiBkYXRldGltZS5kYXRldGltZQoqIGBjcmVhdG9yYDogYE5hbWVk\nVXNlcmAKKiBgZGVzY3JpcHRpb25gOiBzdHJpbmcKKiBgZHVlX29uYDogZGF0\nZXRpbWUuZGF0ZXRpbWUKKiBgaWRgOiBpbnRlZ2VyCiogYG51bWJlcmA6IGlu\ndGVnZXIKKiBgb3Blbl9pc3N1ZXNgOiBpbnRlZ2VyCiogYHN0YXRlYDogc3Ry\naW5nCiogYHRpdGxlYDogc3RyaW5nCiogYHVybGA6IHN0cmluZwoKRGVsZXRp\nb24KLS0tLS0tLS0KKiBgZGVsZXRlKClgCgpMYWJlbHMKLS0tLS0tCiogYGdl\ndF9sYWJlbHMoKWA6IGl0ZXJhdG9yIG9mIGBMYWJlbGAKCk1vZGlmaWNhdGlv\nbgotLS0tLS0tLS0tLS0KKiBgZWRpdCggdGl0bGUsIFtzdGF0ZSwgZGVzY3Jp\ncHRpb24sIGR1ZV9vbl0gKWAKICAgICogYHRpdGxlYDogc3RyaW5nCiAgICAq\nIGBzdGF0ZWA6IHN0cmluZwogICAgKiBgZGVzY3JpcHRpb25gOiBzdHJpbmcK\nICAgICogYGR1ZV9vbmA6IGRhdGUKCkNsYXNzIGBOYW1lZFVzZXJgCj09PT09\nPT09PT09PT09PT09CgpBdHRyaWJ1dGVzCi0tLS0tLS0tLS0KKiBgYXZhdGFy\nX3VybGA6IHN0cmluZwoqIGBiaW9gOiBzdHJpbmcKKiBgYmxvZ2A6IHN0cmlu\nZwoqIGBjb2xsYWJvcmF0b3JzYDogaW50ZWdlcgoqIGBjb21wYW55YDogc3Ry\naW5nCiogYGNvbnRyaWJ1dGlvbnNgOiBpbnRlZ2VyCiogYGNyZWF0ZWRfYXRg\nOiBkYXRldGltZS5kYXRldGltZQoqIGBkaXNrX3VzYWdlYDogaW50ZWdlcgoq\nIGBlbWFpbGA6IHN0cmluZwoqIGBmb2xsb3dlcnNgOiBpbnRlZ2VyCiogYGZv\nbGxvd2luZ2A6IGludGVnZXIKKiBgZ3JhdmF0YXJfaWRgOiBzdHJpbmcKKiBg\naGlyZWFibGVgOiBib29sCiogYGh0bWxfdXJsYDogc3RyaW5nCiogYGlkYDog\naW50ZWdlcgoqIGBsb2NhdGlvbmA6IHN0cmluZwoqIGBsb2dpbmA6IHN0cmlu\nZwoqIGBuYW1lYDogc3RyaW5nCiogYG93bmVkX3ByaXZhdGVfcmVwb3NgOiBp\nbnRlZ2VyCiogYHBsYW5gOiBgUGxhbmAKKiBgcHJpdmF0ZV9naXN0c2A6IGlu\ndGVnZXIKKiBgcHVibGljX2dpc3RzYDogaW50ZWdlcgoqIGBwdWJsaWNfcmVw\nb3NgOiBpbnRlZ2VyCiogYHRvdGFsX3ByaXZhdGVfcmVwb3NgOiBpbnRlZ2Vy\nCiogYHR5cGVgOiBzdHJpbmcKKiBgdXJsYDogc3RyaW5nCgpFdmVudHMKLS0t\nLS0tCiogYGdldF9ldmVudHMoKWA6IGl0ZXJhdG9yIG9mIGBFdmVudGAKKiBg\nZ2V0X3B1YmxpY19ldmVudHMoKWA6IGl0ZXJhdG9yIG9mIGBFdmVudGAKKiBg\nZ2V0X3JlY2VpdmVkX2V2ZW50cygpYDogaXRlcmF0b3Igb2YgYEV2ZW50YAoq\nIGBnZXRfcHVibGljX3JlY2VpdmVkX2V2ZW50cygpYDogaXRlcmF0b3Igb2Yg\nYEV2ZW50YAoKRm9sbG93ZXJzCi0tLS0tLS0tLQoqIGBnZXRfZm9sbG93ZXJz\nKClgOiBpdGVyYXRvciBvZiBgTmFtZWRVc2VyYAoKRm9sbG93aW5nCi0tLS0t\nLS0tLQoqIGBnZXRfZm9sbG93aW5nKClgOiBpdGVyYXRvciBvZiBgTmFtZWRV\nc2VyYAoKR2lzdHMKLS0tLS0KKiBgY3JlYXRlX2dpc3QoIHB1YmxpYywgZmls\nZXMsIFtkZXNjcmlwdGlvbl0gKWA6IGBHaXN0YAogICAgKiBgcHVibGljYDog\nYm9vbAogICAgKiBgZmlsZXNgOiBkaWN0IG9mIHN0cmluZyB0byBgSW5wdXRG\naWxlQ29udGVudGAKICAgICogYGRlc2NyaXB0aW9uYDogc3RyaW5nCiogYGdl\ndF9naXN0cygpYDogaXRlcmF0b3Igb2YgYEdpc3RgCgpPcmdzCi0tLS0KKiBg\nZ2V0X29yZ3MoKWA6IGl0ZXJhdG9yIG9mIGBPcmdhbml6YXRpb25gCgpSZXBv\ncwotLS0tLQoqIGBnZXRfcmVwbyggbmFtZSApYDogYFJlcG9zaXRvcnlgCiAg\nICAqIGBuYW1lYDogc3RyaW5nCiogYGdldF9yZXBvcyggW3R5cGVdIClgOiBp\ndGVyYXRvciBvZiBgUmVwb3NpdG9yeWAKICAgICogYHR5cGVgOiBzdHJpbmcK\nCldhdGNoZWQKLS0tLS0tLQoqIGBnZXRfd2F0Y2hlZCgpYDogaXRlcmF0b3Ig\nb2YgYFJlcG9zaXRvcnlgCgpDbGFzcyBgT3JnYW5pemF0aW9uYAo9PT09PT09\nPT09PT09PT09PT09PQoKQXR0cmlidXRlcwotLS0tLS0tLS0tCiogYGF2YXRh\ncl91cmxgOiBzdHJpbmcKKiBgYmlsbGluZ19lbWFpbGA6IHN0cmluZwoqIGBi\nbG9nYDogc3RyaW5nCiogYGNvbGxhYm9yYXRvcnNgOiBpbnRlZ2VyCiogYGNv\nbXBhbnlgOiBzdHJpbmcKKiBgY3JlYXRlZF9hdGA6IGRhdGV0aW1lLmRhdGV0\naW1lCiogYGRpc2tfdXNhZ2VgOiBpbnRlZ2VyCiogYGVtYWlsYDogc3RyaW5n\nCiogYGZvbGxvd2Vyc2A6IGludGVnZXIKKiBgZm9sbG93aW5nYDogaW50ZWdl\ncgoqIGBncmF2YXRhcl9pZGA6IHN0cmluZwoqIGBodG1sX3VybGA6IHN0cmlu\nZwoqIGBpZGA6IGludGVnZXIKKiBgbG9jYXRpb25gOiBzdHJpbmcKKiBgbG9n\naW5gOiBzdHJpbmcKKiBgbmFtZWA6IHN0cmluZwoqIGBvd25lZF9wcml2YXRl\nX3JlcG9zYDogaW50ZWdlcgoqIGBwbGFuYDogYFBsYW5gCiogYHByaXZhdGVf\nZ2lzdHNgOiBpbnRlZ2VyCiogYHB1YmxpY19naXN0c2A6IGludGVnZXIKKiBg\ncHVibGljX3JlcG9zYDogaW50ZWdlcgoqIGB0b3RhbF9wcml2YXRlX3JlcG9z\nYDogaW50ZWdlcgoqIGB0eXBlYDogc3RyaW5nCiogYHVybGA6IHN0cmluZwoK\nRXZlbnRzCi0tLS0tLQoqIGBnZXRfZXZlbnRzKClgOiBpdGVyYXRvciBvZiBg\nRXZlbnRgCgpGb3JraW5nCi0tLS0tLS0KKiBgY3JlYXRlX2ZvcmsoIHJlcG8g\nKWA6IGBSZXBvc2l0b3J5YAogICAgKiBgcmVwb2A6IGBSZXBvc2l0b3J5YAoK\nTWVtYmVycwotLS0tLS0tCiogYGdldF9tZW1iZXJzKClgOiBpdGVyYXRvciBv\nZiBgTmFtZWRVc2VyYAoqIGBoYXNfaW5fbWVtYmVycyggbWVtYmVyIClgOiBi\nb29sCiAgICAqIGBtZW1iZXJgOiBgTmFtZWRVc2VyYAoqIGByZW1vdmVfZnJv\nbV9tZW1iZXJzKCBtZW1iZXIgKWAKICAgICogYG1lbWJlcmA6IGBOYW1lZFVz\nZXJgCgpNb2RpZmljYXRpb24KLS0tLS0tLS0tLS0tCiogYGVkaXQoIFtiaWxs\naW5nX2VtYWlsLCBibG9nLCBjb21wYW55LCBlbWFpbCwgbG9jYXRpb24sIG5h\nbWVdIClgCiAgICAqIGBiaWxsaW5nX2VtYWlsYDogc3RyaW5nCiAgICAqIGBi\nbG9nYDogc3RyaW5nCiAgICAqIGBjb21wYW55YDogc3RyaW5nCiAgICAqIGBl\nbWFpbGA6IHN0cmluZwogICAgKiBgbG9jYXRpb25gOiBzdHJpbmcKICAgICog\nYG5hbWVgOiBzdHJpbmcKClB1YmxpY19tZW1iZXJzCi0tLS0tLS0tLS0tLS0t\nCiogYGFkZF90b19wdWJsaWNfbWVtYmVycyggcHVibGljX21lbWJlciApYAog\nICAgKiBgcHVibGljX21lbWJlcmA6IGBOYW1lZFVzZXJgCiogYGdldF9wdWJs\naWNfbWVtYmVycygpYDogaXRlcmF0b3Igb2YgYE5hbWVkVXNlcmAKKiBgaGFz\nX2luX3B1YmxpY19tZW1iZXJzKCBwdWJsaWNfbWVtYmVyIClgOiBib29sCiAg\nICAqIGBwdWJsaWNfbWVtYmVyYDogYE5hbWVkVXNlcmAKKiBgcmVtb3ZlX2Zy\nb21fcHVibGljX21lbWJlcnMoIHB1YmxpY19tZW1iZXIgKWAKICAgICogYHB1\nYmxpY19tZW1iZXJgOiBgTmFtZWRVc2VyYAoKUmVwb3MKLS0tLS0KKiBgY3Jl\nYXRlX3JlcG8oIG5hbWUsIFtkZXNjcmlwdGlvbiwgaG9tZXBhZ2UsIHByaXZh\ndGUsIGhhc19pc3N1ZXMsIGhhc193aWtpLCBoYXNfZG93bmxvYWRzLCB0ZWFt\nX2lkXSApYDogYFJlcG9zaXRvcnlgCiAgICAqIGBuYW1lYDogc3RyaW5nCiAg\nICAqIGBkZXNjcmlwdGlvbmA6IHN0cmluZwogICAgKiBgaG9tZXBhZ2VgOiBz\ndHJpbmcKICAgICogYHByaXZhdGVgOiBib29sCiAgICAqIGBoYXNfaXNzdWVz\nYDogYm9vbAogICAgKiBgaGFzX3dpa2lgOiBib29sCiAgICAqIGBoYXNfZG93\nbmxvYWRzYDogYm9vbAogICAgKiBgdGVhbV9pZGA6IGBUZWFtYAoqIGBnZXRf\ncmVwbyggbmFtZSApYDogYFJlcG9zaXRvcnlgCiAgICAqIGBuYW1lYDogc3Ry\naW5nCiogYGdldF9yZXBvcyggW3R5cGVdIClgOiBpdGVyYXRvciBvZiBgUmVw\nb3NpdG9yeWAKICAgICogYHR5cGVgOiBzdHJpbmcKClRlYW1zCi0tLS0tCiog\nYGNyZWF0ZV90ZWFtKCBuYW1lLCBbcmVwb19uYW1lcywgcGVybWlzc2lvbl0g\nKWA6IGBUZWFtYAogICAgKiBgbmFtZWA6IHN0cmluZwogICAgKiBgcmVwb19u\nYW1lc2A6IGxpc3Qgb2YgYFJlcG9zaXRvcnlgCiAgICAqIGBwZXJtaXNzaW9u\nYDogc3RyaW5nCiogYGdldF90ZWFtKCBpZCApYDogYFRlYW1gCiAgICAqIGBp\nZGA6IGludGVnZXIKKiBgZ2V0X3RlYW1zKClgOiBpdGVyYXRvciBvZiBgVGVh\nbWAKCkNsYXNzIGBQZXJtaXNzaW9uc2AKPT09PT09PT09PT09PT09PT09PQoK\nQXR0cmlidXRlcwotLS0tLS0tLS0tCiogYGFkbWluYDogYm9vbAoqIGBwdWxs\nYDogYm9vbAoqIGBwdXNoYDogYm9vbAoKQ2xhc3MgYFBsYW5gCj09PT09PT09\nPT09PQoKQXR0cmlidXRlcwotLS0tLS0tLS0tCiogYGNvbGxhYm9yYXRvcnNg\nOiBpbnRlZ2VyCiogYG5hbWVgOiBzdHJpbmcKKiBgcHJpdmF0ZV9yZXBvc2A6\nIGludGVnZXIKKiBgc3BhY2VgOiBpbnRlZ2VyCgpDbGFzcyBgUHVsbFJlcXVl\nc3RgCj09PT09PT09PT09PT09PT09PT0KCkF0dHJpYnV0ZXMKLS0tLS0tLS0t\nLQoqIGBhZGRpdGlvbnNgOiBpbnRlZ2VyCiogYGJhc2VgOiBgUHVsbFJlcXVl\nc3RQYXJ0YAoqIGBib2R5YDogc3RyaW5nCiogYGNoYW5nZWRfZmlsZXNgOiBp\nbnRlZ2VyCiogYGNsb3NlZF9hdGA6IGRhdGV0aW1lLmRhdGV0aW1lCiogYGNv\nbW1lbnRzYDogaW50ZWdlcgoqIGBjb21taXRzYDogaW50ZWdlcgoqIGBjcmVh\ndGVkX2F0YDogZGF0ZXRpbWUuZGF0ZXRpbWUKKiBgZGVsZXRpb25zYDogaW50\nZWdlcgoqIGBkaWZmX3VybGA6IHN0cmluZwoqIGBoZWFkYDogYFB1bGxSZXF1\nZXN0UGFydGAKKiBgaHRtbF91cmxgOiBzdHJpbmcKKiBgaWRgOiBpbnRlZ2Vy\nCiogYGlzc3VlX3VybGA6IHN0cmluZwoqIGBtZXJnZWFibGVgOiBib29sCiog\nYG1lcmdlZGA6IGJvb2wKKiBgbWVyZ2VkX2F0YDogZGF0ZXRpbWUuZGF0ZXRp\nbWUKKiBgbWVyZ2VkX2J5YDogYE5hbWVkVXNlcmAKKiBgbnVtYmVyYDogaW50\nZWdlcgoqIGBwYXRjaF91cmxgOiBzdHJpbmcKKiBgcmV2aWV3X2NvbW1lbnRz\nYDogaW50ZWdlcgoqIGBzdGF0ZWA6IHN0cmluZwoqIGB0aXRsZWA6IHN0cmlu\nZwoqIGB1cGRhdGVkX2F0YDogZGF0ZXRpbWUuZGF0ZXRpbWUKKiBgdXJsYDog\nc3RyaW5nCiogYHVzZXJgOiBgTmFtZWRVc2VyYAoKQ29tbWVudHMKLS0tLS0t\nLS0KKiBgY3JlYXRlX2NvbW1lbnQoIGJvZHksIGNvbW1pdF9pZCwgcGF0aCwg\ncG9zaXRpb24gKWA6IGBQdWxsUmVxdWVzdENvbW1lbnRgCiAgICAqIGBib2R5\nYDogc3RyaW5nCiAgICAqIGBjb21taXRfaWRgOiBgQ29tbWl0YAogICAgKiBg\ncGF0aGA6IHN0cmluZwogICAgKiBgcG9zaXRpb25gOiBpbnRlZ2VyCiogYGdl\ndF9jb21tZW50KCBpZCApYDogYFB1bGxSZXF1ZXN0Q29tbWVudGAKICAgICog\nYGlkYDogaW50ZWdlcgoqIGBnZXRfY29tbWVudHMoKWA6IGl0ZXJhdG9yIG9m\nIGBQdWxsUmVxdWVzdENvbW1lbnRgCgpDb21taXRzCi0tLS0tLS0KKiBgZ2V0\nX2NvbW1pdHMoKWA6IGl0ZXJhdG9yIG9mIGBDb21taXRgCgpGaWxlcwotLS0t\nLQoqIGBnZXRfZmlsZXMoKWA6IGl0ZXJhdG9yIG9mIGBGaWxlYAoKTWVyZ2lu\nZwotLS0tLS0tCiogYGlzX21lcmdlZCgpYDogYm9vbAoqIGBtZXJnZSggW2Nv\nbW1pdF9tZXNzYWdlXSApYDogYFB1bGxSZXF1ZXN0TWVyZ2VTdGF0dXNgCiAg\nICAqIGBjb21taXRfbWVzc2FnZWA6IHN0cmluZwoKTW9kaWZpY2F0aW9uCi0t\nLS0tLS0tLS0tLQoqIGBlZGl0KCBbdGl0bGUsIGJvZHksIHN0YXRlXSApYAog\nICAgKiBgdGl0bGVgOiBzdHJpbmcKICAgICogYGJvZHlgOiBzdHJpbmcKICAg\nICogYHN0YXRlYDogc3RyaW5nCgpDbGFzcyBgUHVsbFJlcXVlc3RDb21tZW50\nYAo9PT09PT09PT09PT09PT09PT09PT09PT09PQoKQXR0cmlidXRlcwotLS0t\nLS0tLS0tCiogYGJvZHlgOiBzdHJpbmcKKiBgY29tbWl0X2lkYDogc3RyaW5n\nCiogYGNyZWF0ZWRfYXRgOiBkYXRldGltZS5kYXRldGltZQoqIGBpZGA6IGlu\ndGVnZXIKKiBgb3JpZ2luYWxfY29tbWl0X2lkYDogc3RyaW5nCiogYG9yaWdp\nbmFsX3Bvc2l0aW9uYDogaW50ZWdlcgoqIGBwYXRoYDogc3RyaW5nCiogYHBv\nc2l0aW9uYDogaW50ZWdlcgoqIGB1cGRhdGVkX2F0YDogZGF0ZXRpbWUuZGF0\nZXRpbWUKKiBgdXJsYDogc3RyaW5nCiogYHVzZXJgOiBgTmFtZWRVc2VyYAoK\nRGVsZXRpb24KLS0tLS0tLS0KKiBgZGVsZXRlKClgCgpNb2RpZmljYXRpb24K\nLS0tLS0tLS0tLS0tCiogYGVkaXQoIGJvZHkgKWAKICAgICogYGJvZHlgOiBz\ndHJpbmcKCkNsYXNzIGBQdWxsUmVxdWVzdE1lcmdlU3RhdHVzYAo9PT09PT09\nPT09PT09PT09PT09PT09PT09PT09PT0KCkF0dHJpYnV0ZXMKLS0tLS0tLS0t\nLQoqIGBtZXJnZWRgOiBib29sCiogYG1lc3NhZ2VgOiBzdHJpbmcKKiBgc2hh\nYDogc3RyaW5nCgpDbGFzcyBgUHVsbFJlcXVlc3RQYXJ0YAo9PT09PT09PT09\nPT09PT09PT09PT09PQoKQXR0cmlidXRlcwotLS0tLS0tLS0tCiogYGxhYmVs\nYDogc3RyaW5nCiogYHJlZmA6IHN0cmluZwoqIGByZXBvYDogYFJlcG9zaXRv\ncnlgCiogYHNoYWA6IHN0cmluZwoqIGB1c2VyYDogYE5hbWVkVXNlcmAKCkNs\nYXNzIGBSZXBvc2l0b3J5YAo9PT09PT09PT09PT09PT09PT0KCkF0dHJpYnV0\nZXMKLS0tLS0tLS0tLQoqIGBjbG9uZV91cmxgOiBzdHJpbmcKKiBgY3JlYXRl\nZF9hdGA6IGRhdGV0aW1lLmRhdGV0aW1lCiogYGRlc2NyaXB0aW9uYDogc3Ry\naW5nCiogYGZvcmtgOiBib29sCiogYGZvcmtzYDogaW50ZWdlcgoqIGBmdWxs\nX25hbWVgOiBzdHJpbmcKKiBgZ2l0X3VybGA6IHN0cmluZwoqIGBoYXNfZG93\nbmxvYWRzYDogYm9vbAoqIGBoYXNfaXNzdWVzYDogYm9vbAoqIGBoYXNfd2lr\naWA6IGJvb2wKKiBgaG9tZXBhZ2VgOiBzdHJpbmcKKiBgaHRtbF91cmxgOiBz\ndHJpbmcKKiBgaWRgOiBpbnRlZ2VyCiogYGxhbmd1YWdlYDogc3RyaW5nCiog\nYG1hc3Rlcl9icmFuY2hgOiBzdHJpbmcKKiBgbmFtZWA6IHN0cmluZwoqIGBv\ncGVuX2lzc3Vlc2A6IGludGVnZXIKKiBgb3JnYW5pemF0aW9uYDogYE9yZ2Fu\naXphdGlvbmAKKiBgb3duZXJgOiBgTmFtZWRVc2VyYAoqIGBwYXJlbnRgOiBg\nUmVwb3NpdG9yeWAKKiBgcGVybWlzc2lvbnNgOiBgUGVybWlzc2lvbnNgCiog\nYHByaXZhdGVgOiBib29sCiogYHB1c2hlZF9hdGA6IGRhdGV0aW1lLmRhdGV0\naW1lCiogYHNpemVgOiBpbnRlZ2VyCiogYHNvdXJjZWA6IGBSZXBvc2l0b3J5\nYAoqIGBzc2hfdXJsYDogc3RyaW5nCiogYHN2bl91cmxgOiBzdHJpbmcKKiBg\ndXBkYXRlZF9hdGA6IGRhdGV0aW1lLmRhdGV0aW1lCiogYHVybGA6IHN0cmlu\nZwoqIGB3YXRjaGVyc2A6IGludGVnZXIKCkRlbGV0aW9uCi0tLS0tLS0tCiog\nYGRlbGV0ZSgpYAoKQ29tcGFyaXNvbgotLS0tLS0tLS0tCiogYGNvbXBhcmUo\nIGJhc2UsIGhlYWQgKWA6IGBDb21wYXJpc29uYAogICAgKiBgYmFzZWA6IHN0\ncmluZwogICAgKiBgaGVhZGA6IHN0cmluZwoKQnJhbmNoZXMKLS0tLS0tLS0K\nKiBgZ2V0X2JyYW5jaGVzKClgOiBpdGVyYXRvciBvZiBgQnJhbmNoYAoKQ29s\nbGFib3JhdG9ycwotLS0tLS0tLS0tLS0tCiogYGFkZF90b19jb2xsYWJvcmF0\nb3JzKCBjb2xsYWJvcmF0b3IgKWAKICAgICogYGNvbGxhYm9yYXRvcmA6IGBO\nYW1lZFVzZXJgCiogYGdldF9jb2xsYWJvcmF0b3JzKClgOiBpdGVyYXRvciBv\nZiBgTmFtZWRVc2VyYAoqIGBoYXNfaW5fY29sbGFib3JhdG9ycyggY29sbGFi\nb3JhdG9yIClgOiBib29sCiAgICAqIGBjb2xsYWJvcmF0b3JgOiBgTmFtZWRV\nc2VyYAoqIGByZW1vdmVfZnJvbV9jb2xsYWJvcmF0b3JzKCBjb2xsYWJvcmF0\nb3IgKWAKICAgICogYGNvbGxhYm9yYXRvcmA6IGBOYW1lZFVzZXJgCgpDb21t\nZW50cwotLS0tLS0tLQoqIGBnZXRfY29tbWVudCggaWQgKWA6IGBDb21taXRD\nb21tZW50YAogICAgKiBgaWRgOiBpbnRlZ2VyCiogYGdldF9jb21tZW50cygp\nYDogaXRlcmF0b3Igb2YgYENvbW1pdENvbW1lbnRgCgpDb21taXRzCi0tLS0t\nLS0KKiBgZ2V0X2NvbW1pdCggc2hhIClgOiBgQ29tbWl0YAogICAgKiBgc2hh\nYDogc3RyaW5nCiogYGdldF9jb21taXRzKCBbc2hhLCBwYXRoXSApYDogaXRl\ncmF0b3Igb2YgYENvbW1pdGAKICAgICogYHNoYWA6IHN0cmluZwogICAgKiBg\ncGF0aGA6IHN0cmluZwoKQ29udHJpYnV0b3JzCi0tLS0tLS0tLS0tLQoqIGBn\nZXRfY29udHJpYnV0b3JzKClgOiBpdGVyYXRvciBvZiBgTmFtZWRVc2VyYAoK\nRG93bmxvYWRzCi0tLS0tLS0tLQoqIGBjcmVhdGVfZG93bmxvYWQoIG5hbWUs\nIHNpemUsIFtkZXNjcmlwdGlvbiwgY29udGVudF90eXBlXSApYDogYERvd25s\nb2FkYAogICAgKiBgbmFtZWA6IHN0cmluZwogICAgKiBgc2l6ZWA6IGludGVn\nZXIKICAgICogYGRlc2NyaXB0aW9uYDogc3RyaW5nCiAgICAqIGBjb250ZW50\nX3R5cGVgOiBzdHJpbmcKKiBgZ2V0X2Rvd25sb2FkKCBpZCApYDogYERvd25s\nb2FkYAogICAgKiBgaWRgOiBpbnRlZ2VyCiogYGdldF9kb3dubG9hZHMoKWA6\nIGl0ZXJhdG9yIG9mIGBEb3dubG9hZGAKCkV2ZW50cwotLS0tLS0KKiBgZ2V0\nX2V2ZW50cygpYDogaXRlcmF0b3Igb2YgYEV2ZW50YAoqIGBnZXRfbmV0d29y\na19ldmVudHMoKWA6IGl0ZXJhdG9yIG9mIGBFdmVudGAKCkZvcmtzCi0tLS0t\nCiogYGdldF9mb3JrcygpYDogaXRlcmF0b3Igb2YgYFJlcG9zaXRvcnlgCgpH\naXRfYmxvYnMKLS0tLS0tLS0tCiogYGNyZWF0ZV9naXRfYmxvYiggY29udGVu\ndCwgZW5jb2RpbmcgKWA6IGBHaXRCbG9iYAogICAgKiBgY29udGVudGA6IHN0\ncmluZwogICAgKiBgZW5jb2RpbmdgOiBzdHJpbmcKKiBgZ2V0X2dpdF9ibG9i\nKCBzaGEgKWA6IGBHaXRCbG9iYAogICAgKiBgc2hhYDogc3RyaW5nCgpHaXRf\nY29tbWl0cwotLS0tLS0tLS0tLQoqIGBjcmVhdGVfZ2l0X2NvbW1pdCggbWVz\nc2FnZSwgdHJlZSwgcGFyZW50cywgW2F1dGhvciwgY29tbWl0dGVyXSApYDog\nYEdpdENvbW1pdGAKICAgICogYG1lc3NhZ2VgOiBzdHJpbmcKICAgICogYHRy\nZWVgOiBgR2l0VHJlZWAKICAgICogYHBhcmVudHNgOiBsaXN0IG9mIGBHaXRD\nb21taXRgCiAgICAqIGBhdXRob3JgOiBgSW5wdXRHaXRBdXRob3JgCiAgICAq\nIGBjb21taXR0ZXJgOiBgSW5wdXRHaXRBdXRob3JgCiogYGdldF9naXRfY29t\nbWl0KCBzaGEgKWA6IGBHaXRDb21taXRgCiAgICAqIGBzaGFgOiBzdHJpbmcK\nCkdpdF9yZWZzCi0tLS0tLS0tCiogYGNyZWF0ZV9naXRfcmVmKCByZWYsIHNo\nYSApYDogYEdpdFJlZmAKICAgICogYHJlZmA6IHN0cmluZwogICAgKiBgc2hh\nYDogc3RyaW5nCiogYGdldF9naXRfcmVmKCByZWYgKWA6IGBHaXRSZWZgCiAg\nICAqIGByZWZgOiBzdHJpbmcKKiBgZ2V0X2dpdF9yZWZzKClgOiBpdGVyYXRv\nciBvZiBgR2l0UmVmYAoKR2l0X3RhZ3MKLS0tLS0tLS0KKiBgY3JlYXRlX2dp\ndF90YWcoIHRhZywgbWVzc2FnZSwgb2JqZWN0LCB0eXBlLCBbdGFnZ2VyXSAp\nYDogYEdpdFRhZ2AKICAgICogYHRhZ2A6IHN0cmluZwogICAgKiBgbWVzc2Fn\nZWA6IHN0cmluZwogICAgKiBgb2JqZWN0YDogc3RyaW5nCiAgICAqIGB0eXBl\nYDogc3RyaW5nCiAgICAqIGB0YWdnZXJgOiBgSW5wdXRHaXRBdXRob3JgCiog\nYGdldF9naXRfdGFnKCBzaGEgKWA6IGBHaXRUYWdgCiAgICAqIGBzaGFgOiBz\ndHJpbmcKCkdpdF90cmVlcwotLS0tLS0tLS0KKiBgY3JlYXRlX2dpdF90cmVl\nKCB0cmVlLCBbYmFzZV90cmVlXSApYDogYEdpdFRyZWVgCiAgICAqIGB0cmVl\nYDogbGlzdCBvZiBgSW5wdXRHaXRUcmVlRWxlbWVudGAKICAgICogYGJhc2Vf\ndHJlZWA6IGBHaXRUcmVlYAoqIGBnZXRfZ2l0X3RyZWUoIHNoYSwgW3JlY3Vy\nc2l2ZV0gKWA6IGBHaXRUcmVlYAogICAgKiBgc2hhYDogc3RyaW5nCiAgICAq\nIGByZWN1cnNpdmVgOiBib29sCgpIb29rcwotLS0tLQoqIGBjcmVhdGVfaG9v\nayggbmFtZSwgY29uZmlnLCBbZXZlbnRzLCBhY3RpdmVdIClgOiBgSG9va2AK\nICAgICogYG5hbWVgOiBzdHJpbmcKICAgICogYGNvbmZpZ2A6IGRpY3QKICAg\nICogYGV2ZW50c2A6IGxpc3Qgb2Ygc3RyaW5nCiAgICAqIGBhY3RpdmVgOiBi\nb29sCiogYGdldF9ob29rKCBpZCApYDogYEhvb2tgCiAgICAqIGBpZGA6IGlu\ndGVnZXIKKiBgZ2V0X2hvb2tzKClgOiBpdGVyYXRvciBvZiBgSG9va2AKCklz\nc3VlcwotLS0tLS0KKiBgY3JlYXRlX2lzc3VlKCB0aXRsZSwgW2JvZHksIGFz\nc2lnbmVlLCBtaWxlc3RvbmUsIGxhYmVsc10gKWA6IGBJc3N1ZWAKICAgICog\nYHRpdGxlYDogc3RyaW5nCiAgICAqIGBib2R5YDogc3RyaW5nCiAgICAqIGBh\nc3NpZ25lZWA6IGBOYW1lZFVzZXJgCiAgICAqIGBtaWxlc3RvbmVgOiBgTWls\nZXN0b25lYAogICAgKiBgbGFiZWxzYDogbGlzdCBvZiBgTGFiZWxgCiogYGdl\ndF9pc3N1ZSggbnVtYmVyIClgOiBgSXNzdWVgCiAgICAqIGBudW1iZXJgOiBp\nbnRlZ2VyCiogYGdldF9pc3N1ZXMoIFttaWxlc3RvbmUsIHN0YXRlLCBhc3Np\nZ25lZSwgbWVudGlvbmVkLCBsYWJlbHMsIHNvcnQsIGRpcmVjdGlvbiwgc2lu\nY2VdIClgOiBpdGVyYXRvciBvZiBgSXNzdWVgCiAgICAqIGBtaWxlc3RvbmVg\nOiBgTWlsZXN0b25lYCBvciAibm9uZSIgb3IgIioiCiAgICAqIGBzdGF0ZWA6\nIHN0cmluZwogICAgKiBgYXNzaWduZWVgOiBgTmFtZWRVc2VyYCBvciAibm9u\nZSIgb3IgIioiCiAgICAqIGBtZW50aW9uZWRgOiBgTmFtZWRVc2VyYAogICAg\nKiBgbGFiZWxzYDogbGlzdCBvZiBgTGFiZWxgCiAgICAqIGBzb3J0YDogc3Ry\naW5nCiAgICAqIGBkaXJlY3Rpb25gOiBzdHJpbmcKICAgICogYHNpbmNlYDog\nZGF0ZXRpbWUuZGF0ZXRpbWUKKiBgbGVnYWN5X3NlYXJjaF9pc3N1ZXMoIHN0\nYXRlLCBrZXl3b3JkIClgOiBpdGVyYXRvciBvZiBgSXNzdWVgCiAgICAqIGBz\ndGF0ZWA6ICJvcGVuIiBvciAiY2xvc2VkIgogICAgKiBga2V5d29yZGA6IHN0\ncmluZwoKSXNzdWVzX2V2ZW50cwotLS0tLS0tLS0tLS0tCiogYGdldF9pc3N1\nZXNfZXZlbnQoIGlkIClgOiBgSXNzdWVFdmVudGAKICAgICogYGlkYDogaW50\nZWdlcgoqIGBnZXRfaXNzdWVzX2V2ZW50cygpYDogaXRlcmF0b3Igb2YgYElz\nc3VlRXZlbnRgCgpLZXlzCi0tLS0KKiBgY3JlYXRlX2tleSggdGl0bGUsIGtl\neSApYDogYFJlcG9zaXRvcnlLZXlgCiAgICAqIGB0aXRsZWA6IHN0cmluZwog\nICAgKiBga2V5YDogc3RyaW5nCiogYGdldF9rZXkoIGlkIClgOiBgUmVwb3Np\ndG9yeUtleWAKICAgICogYGlkYDogaW50ZWdlcgoqIGBnZXRfa2V5cygpYDog\naXRlcmF0b3Igb2YgYFJlcG9zaXRvcnlLZXlgCgpMYWJlbHMKLS0tLS0tCiog\nYGNyZWF0ZV9sYWJlbCggbmFtZSwgY29sb3IgKWA6IGBMYWJlbGAKICAgICog\nYG5hbWVgOiBzdHJpbmcKICAgICogYGNvbG9yYDogc3RyaW5nCiogYGdldF9s\nYWJlbCggbmFtZSApYDogYExhYmVsYAogICAgKiBgbmFtZWA6IHN0cmluZwoq\nIGBnZXRfbGFiZWxzKClgOiBpdGVyYXRvciBvZiBgTGFiZWxgCgpMYW5ndWFn\nZXMKLS0tLS0tLS0tCiogYGdldF9sYW5ndWFnZXMoKWA6IGRpY3Qgb2Ygc3Ry\naW5nIHRvIGludGVnZXIKCk1pbGVzdG9uZXMKLS0tLS0tLS0tLQoqIGBjcmVh\ndGVfbWlsZXN0b25lKCB0aXRsZSwgW3N0YXRlLCBkZXNjcmlwdGlvbiwgZHVl\nX29uXSApYDogYE1pbGVzdG9uZWAKICAgICogYHRpdGxlYDogc3RyaW5nCiAg\nICAqIGBzdGF0ZWA6IHN0cmluZwogICAgKiBgZGVzY3JpcHRpb25gOiBzdHJp\nbmcKICAgICogYGR1ZV9vbmA6IGRhdGUKKiBgZ2V0X21pbGVzdG9uZSggbnVt\nYmVyIClgOiBgTWlsZXN0b25lYAogICAgKiBgbnVtYmVyYDogaW50ZWdlcgoq\nIGBnZXRfbWlsZXN0b25lcyggW3N0YXRlLCBzb3J0LCBkaXJlY3Rpb25dIClg\nOiBpdGVyYXRvciBvZiBgTWlsZXN0b25lYAogICAgKiBgc3RhdGVgOiBzdHJp\nbmcKICAgICogYHNvcnRgOiBzdHJpbmcKICAgICogYGRpcmVjdGlvbmA6IHN0\ncmluZwoKTW9kaWZpY2F0aW9uCi0tLS0tLS0tLS0tLQoqIGBlZGl0KCBuYW1l\nLCBbZGVzY3JpcHRpb24sIGhvbWVwYWdlLCBwdWJsaWMsIGhhc19pc3N1ZXMs\nIGhhc193aWtpLCBoYXNfZG93bmxvYWRzXSApYAogICAgKiBgbmFtZWA6IHN0\ncmluZwogICAgKiBgZGVzY3JpcHRpb25gOiBzdHJpbmcKICAgICogYGhvbWVw\nYWdlYDogc3RyaW5nCiAgICAqIGBwdWJsaWNgOiBib29sCiAgICAqIGBoYXNf\naXNzdWVzYDogYm9vbAogICAgKiBgaGFzX3dpa2lgOiBib29sCiAgICAqIGBo\nYXNfZG93bmxvYWRzYDogYm9vbAoKUHVsbHMKLS0tLS0KKiBgY3JlYXRlX3B1\nbGwoIDwgdGl0bGUsIGJvZHksIGJhc2UsIGhlYWQgPiBvciA8IGlzc3VlLCBi\nYXNlLCBoZWFkID4gKWA6IGBQdWxsUmVxdWVzdGAKICAgICogYHRpdGxlYDog\nc3RyaW5nCiAgICAqIGBib2R5YDogc3RyaW5nCiAgICAqIGBpc3N1ZWA6IGBJ\nc3N1ZWAKICAgICogYGJhc2VgOiBzdHJpbmcKICAgICogYGhlYWRgOiBzdHJp\nbmcKKiBgZ2V0X3B1bGwoIG51bWJlciApYDogYFB1bGxSZXF1ZXN0YAogICAg\nKiBgbnVtYmVyYDogaW50ZWdlcgoqIGBnZXRfcHVsbHMoIFtzdGF0ZV0gKWA6\nIGl0ZXJhdG9yIG9mIGBQdWxsUmVxdWVzdGAKICAgICogYHN0YXRlYDogc3Ry\naW5nCgpUYWdzCi0tLS0KKiBgZ2V0X3RhZ3MoKWA6IGl0ZXJhdG9yIG9mIGBU\nYWdgCgpUZWFtcwotLS0tLQoqIGBnZXRfdGVhbXMoKWA6IGl0ZXJhdG9yIG9m\nIGBUZWFtYAoKV2F0Y2hlcnMKLS0tLS0tLS0KKiBgZ2V0X3dhdGNoZXJzKClg\nOiBpdGVyYXRvciBvZiBgTmFtZWRVc2VyYAoKQ2xhc3MgYFJlcG9zaXRvcnlL\nZXlgCj09PT09PT09PT09PT09PT09PT09PQoKQXR0cmlidXRlcwotLS0tLS0t\nLS0tCiogYGlkYDogaW50ZWdlcgoqIGBrZXlgOiBzdHJpbmcKKiBgdGl0bGVg\nOiBzdHJpbmcKKiBgdXJsYDogc3RyaW5nCiogYHZlcmlmaWVkYDogYm9vbAoK\nRGVsZXRpb24KLS0tLS0tLS0KKiBgZGVsZXRlKClgCgpNb2RpZmljYXRpb24K\nLS0tLS0tLS0tLS0tCiogYGVkaXQoIFt0aXRsZSwga2V5XSApYAogICAgKiBg\ndGl0bGVgOiBzdHJpbmcKICAgICogYGtleWA6IHN0cmluZwoKQ2xhc3MgYFRh\nZ2AKPT09PT09PT09PT0KCkF0dHJpYnV0ZXMKLS0tLS0tLS0tLQoqIGBjb21t\naXRgOiBgQ29tbWl0YAoqIGBuYW1lYDogc3RyaW5nCiogYHRhcmJhbGxfdXJs\nYDogc3RyaW5nCiogYHppcGJhbGxfdXJsYDogc3RyaW5nCgpDbGFzcyBgVGVh\nbWAKPT09PT09PT09PT09CgpBdHRyaWJ1dGVzCi0tLS0tLS0tLS0KKiBgaWRg\nOiBpbnRlZ2VyCiogYG1lbWJlcnNfY291bnRgOiBpbnRlZ2VyCiogYG5hbWVg\nOiBzdHJpbmcKKiBgcGVybWlzc2lvbmA6IHN0cmluZwoqIGByZXBvc19jb3Vu\ndGA6IGludGVnZXIKKiBgdXJsYDogc3RyaW5nCgpEZWxldGlvbgotLS0tLS0t\nLQoqIGBkZWxldGUoKWAKCk1lbWJlcnMKLS0tLS0tLQoqIGBhZGRfdG9fbWVt\nYmVycyggbWVtYmVyIClgCiAgICAqIGBtZW1iZXJgOiBgTmFtZWRVc2VyYAoq\nIGBnZXRfbWVtYmVycygpYDogaXRlcmF0b3Igb2YgYE5hbWVkVXNlcmAKKiBg\naGFzX2luX21lbWJlcnMoIG1lbWJlciApYDogYm9vbAogICAgKiBgbWVtYmVy\nYDogYE5hbWVkVXNlcmAKKiBgcmVtb3ZlX2Zyb21fbWVtYmVycyggbWVtYmVy\nIClgCiAgICAqIGBtZW1iZXJgOiBgTmFtZWRVc2VyYAoKTW9kaWZpY2F0aW9u\nCi0tLS0tLS0tLS0tLQoqIGBlZGl0KCBuYW1lLCBbcGVybWlzc2lvbl0gKWAK\nICAgICogYG5hbWVgOiBzdHJpbmcKICAgICogYHBlcm1pc3Npb25gOiBzdHJp\nbmcKClJlcG9zCi0tLS0tCiogYGFkZF90b19yZXBvcyggcmVwbyApYAogICAg\nKiBgcmVwb2A6IGBSZXBvc2l0b3J5YAoqIGBnZXRfcmVwb3MoKWA6IGl0ZXJh\ndG9yIG9mIGBSZXBvc2l0b3J5YAoqIGBoYXNfaW5fcmVwb3MoIHJlcG8gKWA6\nIGJvb2wKICAgICogYHJlcG9gOiBgUmVwb3NpdG9yeWAKKiBgcmVtb3ZlX2Zy\nb21fcmVwb3MoIHJlcG8gKWAKICAgICogYHJlcG9gOiBgUmVwb3NpdG9yeWAK\nCkNsYXNzIGBVc2VyS2V5YAo9PT09PT09PT09PT09PT0KCkF0dHJpYnV0ZXMK\nLS0tLS0tLS0tLQoqIGBpZGA6IGludGVnZXIKKiBga2V5YDogc3RyaW5nCiog\nYHRpdGxlYDogc3RyaW5nCiogYHVybGA6IHN0cmluZwoqIGB2ZXJpZmllZGA6\nIGJvb2wKCkRlbGV0aW9uCi0tLS0tLS0tCiogYGRlbGV0ZSgpYAoKTW9kaWZp\nY2F0aW9uCi0tLS0tLS0tLS0tLQoqIGBlZGl0KCBbdGl0bGUsIGtleV0gKWAK\nICAgICogYHRpdGxlYDogc3RyaW5nCiAgICAqIGBrZXlgOiBzdHJpbmcK\n"} + diff --git a/lib/github/tests/ReplayData/Repository.testGetContentsWithRef.txt b/lib/github/tests/ReplayData/Repository.testGetContentsWithRef.txt new file mode 100644 index 0000000000..ce33693aea --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetContentsWithRef.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/readme?ref=refs%2Fheads%2Ftopic%2FExperimentOnDocumentation +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4941'), ('x-ratelimit-limit', '5000'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '7693'), ('server', 'nginx'), ('last-modified', 'Fri, 21 Dec 2012 21:22:43 GMT'), ('connection', 'keep-alive'), ('etag', '"7c2a77b0e46dda4d6e11562d52ec5ae0"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Tue, 25 Dec 2012 10:46:11 GMT'), ('x-github-media-type', 'github.beta; format=json'), ('content-type', 'application/json; charset=utf-8')] +{"type":"file","html_url":"https://github.com/jacquev6/PyGithub/blob/refs/heads/topic/ExperimentOnDocumentation/ReadMe.rst","path":"ReadMe.rst","url":"https://api.github.com/repos/jacquev6/PyGithub/contents/ReadMe.rst?ref=refs/heads/topic/ExperimentOnDocumentation","content":"VGhpcyBpcyBhIFB5dGhvbiAoMiBhbmQgMykgbGlicmFyeSB0byBhY2Nlc3Mg\ndGhlIGBHaXRodWIgQVBJIHYzIDxodHRwOi8vZGV2ZWxvcGVyLmdpdGh1Yi5j\nb20vdjM+YF8uCgpXaXRoIGl0LCB5b3UgY2FuIG1hbmFnZSB5b3VyIGBHaXRo\ndWIgPGh0dHA6Ly9naXRodWIuY29tPmBfIHJlc291cmNlcyAocmVwb3NpdG9y\naWVzLCB1c2VyIHByb2ZpbGVzLCBvcmdhbml6YXRpb25zLCBldGMuKSBmcm9t\nIFB5dGhvbiBzY3JpcHRzLgoKSXQgY292ZXJzIHRoZSAqKmZ1bGwqKiBBUEks\nIGFuZCBhbGwgbWV0aG9kcyBhcmUgdGVzdGVkIGFnYWluc3QgdGhlIHJlYWwg\nR2l0aHViIHNpdGUuCgpTaG91bGQgeW91IGhhdmUgYW55IHF1ZXN0aW9uLCBv\nciBpZiB5b3UgZmluZCBhIGJ1Zywgb3IgaWYgdGhlcmUgaXMgc29tZXRoaW5n\nIHlvdSBjYW4gZG8gd2l0aCB0aGUgQVBJIGJ1dCBub3Qgd2l0aCBQeUdpdGh1\nYiwgcGxlYXNlIGBvcGVuIGFuIGlzc3VlIDxodHRwczovL2dpdGh1Yi5jb20v\namFjcXVldjYvUHlHaXRodWIvaXNzdWVzPmBfLgoKUHlHaXRodWIgaXMgc3Rh\nYmxlLiBJIHdpbGwgbWFpbnRhaW4gaXQgdXAgdG8gZGF0ZSB3aXRoIHRoZSBB\nUEksIGFuZCBmaXggYnVncyBpZiBhbnksIGJ1dCBJIGRvbid0IHBsYW4gbmV3\nIGhlYXZ5IGRldmVsb3BtZW50cy4KCldoYXQncyBuZXc/Cj09PT09PT09PT09\nCgpgIVtCdWlsZCBTdGF0dXNdKGh0dHBzOi8vc2VjdXJlLnRyYXZpcy1jaS5v\ncmcvamFjcXVldjYvUHlHaXRodWIucG5nKV0gPGh0dHA6Ly90cmF2aXMtY2ku\nb3JnL2phY3F1ZXY2L1B5R2l0aHViPmBfCgpOZXh0IHZlcnNpb24KLS0tLS0t\nLS0tLS0tCgoqIE1ham9yIGltcHJvdmVtZW50OiBzdXBwb3J0IFB5dGhvbiAz\nISBQeUdpdGh1YiBpcyBhdXRvbWF0aWNhbHkgdGVzdGVkIG9uIGBUcmF2aXMg\nPGh0dHA6Ly90cmF2aXMtY2kub3JnL2phY3F1ZXY2L1B5R2l0aHViPmBfIHdp\ndGggdmVyc2lvbnMgMi41LCAyLjYsIDIuNywgMy4xIGFuZCAzLjIgb2YgUHl0\naG9uCiogQWRkIGEgc2hvcnRjdXQgZnVuY3Rpb24gJ0dpdGh1Yi5nZXRfcmVw\nbycgdG8gZ2V0IGEgcmVwbyBkaXJlY3RseSBmcm9tIGl0cyBmdWxsIG5hbWUu\nIHRoYW5rIHlvdSBgbHdjIDxodHRwczovL2dpdGh1Yi5jb20vbHdjPmBfIGZv\nciB0aGUgY29udHJpYnV0aW9uCiogJ0dpdGh1Yi5nZXRfZ2l0aWdub3JlX3Rl\nbXBsYXRlcycgYW5kICdHaXRodWIuZ2V0X2dpdGlnbm9yZV90ZW1wbGF0ZScg\nZm9yIEFQSXMgJy9naXRpZ25vcmUvdGVtcGxhdGVzJwoKYFZlcnNpb24gMS45\nLjEgPGh0dHBzOi8vZ2l0aHViLmNvbS9qYWNxdWV2Ni9QeUdpdGh1Yi9pc3N1\nZXM/bWlsZXN0b25lPTE3JnN0YXRlPWNsb3NlZD5gXyAoTm92ZW1iZXIgMjB0\naCwgMjAxMikKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiogRml4IGFuIGFzc2Vy\ndGlvbiBmYWlsdXJlIHdoZW4gaW50ZWdlcnMgcmV0dXJuZWQgYnkgR2l0aHVi\nIGRvIG5vdCBmaXQgaW4gYSBQeXRob24gYGludGAKCmBWZXJzaW9uIDEuOS4w\nIDxodHRwczovL2dpdGh1Yi5jb20vamFjcXVldjYvUHlHaXRodWIvaXNzdWVz\nP21pbGVzdG9uZT0xNCZzdGF0ZT1jbG9zZWQ+YF8gKE5vdmVtYmVyIDE5dGgs\nIDIwMTIpCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoqIFlvdSBjYW4gbm93IHVz\nZSB5b3VyIGNsaWVudF9pZCBhbmQgY2xpZW50X3NlY3JldCB0byBpbmNyZWFz\nZSByYXRlIGxpbWl0aW5nIHdpdGhvdXQgYXV0aGVudGljYXRpb24KKiBZb3Ug\nY2FuIG5vdyBzZW5kIGEgY3VzdG9tIFVzZXItQWdlbnQKKiBQdWxsUmVxdWVz\ndCBub3cgaGFzIGl0cyAnYXNzaWduZWUnIGF0dHJpYnV0ZSwgdGhhbmsgeW91\nIGBtc3RlYWQgPGh0dHBzOi8vZ2l0aHViLmNvbS9tc3RlYWQ+YF8KKiBSZXBv\nc2l0b3J5LmVkaXQgbm93IGhhcyAnZGVmYXVsdF9icmFuY2gnIHBhcmFtZXRl\ncgoqIGNyZWF0ZV9yZXBvIGhhcyAnYXV0b19pbml0JyBhbmQgJ2dpdGlnbm9y\nZV90ZW1wbGF0ZScgcGFyYW1ldGVycwoqIEdpc3RDb21tZW50IFVSTCBpcyBj\naGFuZ2VkIChzZWUgaHR0cDovL2RldmVsb3Blci5naXRodWIuY29tL2NoYW5n\nZXMvMjAxMi0xMC0zMS1naXN0LWNvbW1lbnQtdXJpcykKKiBBIHR5cG8gaW4g\ndGhlIHJlYWRtZSB3YXMgZml4ZWQgYnkgYHR5bW9maWogPGh0dHBzOi8vZ2l0\naHViLmNvbS90eW1vZmlqPmBfLCB0aGFuayB5b3UKKiBJbnRlcm5hbCBzdHVm\nZjoKICAgICogQWRkIGVuY29kaW5nIGNvbW1lbnQgdG8gUHl0aG9uIGZpbGVz\nLCB0aGFuayB5b3UgYFplYXJpbiA8aHR0cHM6Ly9naXRodWIuY29tL1plYXJp\nbj5gXwogICAgKiBSZXN0b3JlIHN1cHBvcnQgb2YgUHl0aG9uIDIuNQogICAg\nKiBSZXN0b3JlIGNvdmVyYWdlIG1lYXN1cmVtZW50IGluIHNldHVwLnB5IHRl\nc3QKICAgICogU21hbGwgcmVmYWN0b3JpbmcKClByZXZpb3VzIHZlcnNpb25z\nCi0tLS0tLS0tLS0tLS0tLS0tCgpTZWUgYENoYW5nZUxvZyA8aHR0cHM6Ly9n\naXRodWIuY29tL2phY3F1ZXY2L1B5R2l0aHViL2Jsb2IvbWFzdGVyL2RvYy9D\naGFuZ2VMb2cubWQ+YF8uCgpEb3dubG9hZCBhbmQgaW5zdGFsbAo9PT09PT09\nPT09PT09PT09PT09PQoKVGhpcyBwYWNrYWdlIGlzIGluIHRoZSBgUHl0aG9u\nIFBhY2thZ2UgSW5kZXggPGh0dHA6Ly9weXBpLnB5dGhvbi5vcmcvcHlwaS9Q\neUdpdGh1Yj5gXywgc28gYGVhc3lfaW5zdGFsbCBQeUdpdGh1YmAgb3IgYHBp\ncCBpbnN0YWxsIFB5R2l0aHViYCBzaG91bGQgYmUgZW5vdWdoLgpZb3UgY2Fu\nIGFsc28gY2xvbmUgaXQgb24gYEdpdGh1YiA8aHR0cDovL2dpdGh1Yi5jb20v\namFjcXVldjYvUHlHaXRodWI+YF8uCgpUdXRvcmlhbAo9PT09PT09PQoKRmly\nc3QgY3JlYXRlIGEgR2l0aHViIGluc3RhbmNlOjoKCiAgICBmcm9tIGdpdGh1\nYiBpbXBvcnQgR2l0aHViCgogICAgZyA9IEdpdGh1YiggInVzZXIiLCAicGFz\nc3dvcmQiICkKClRoZW4gcGxheSB3aXRoIHlvdXIgR2l0aHViIG9iamVjdHM6\nOgoKICAgIGZvciByZXBvIGluIGcuZ2V0X3VzZXIoKS5nZXRfcmVwb3MoKToK\nICAgICAgICBwcmludCByZXBvLm5hbWUKICAgICAgICByZXBvLmVkaXQoIGhh\nc193aWtpID0gRmFsc2UgKQoKWW91IGNhbiBhbHNvIGNyZWF0ZSBhIEdpdGh1\nYiBpbnN0YW5jZSB3aXRoIGFuIE9BdXRoIHRva2VuOjoKCiAgICBnID0gR2l0\naHViKCB0b2tlbiApCgpPciB3aXRob3V0IGF1dGhlbnRpY2F0aW9uOjoKCiAg\nICBnID0gR2l0aHViKCkKClJlZmVyZW5jZSBkb2N1bWVudGF0aW9uCj09PT09\nPT09PT09PT09PT09PT09PT09CgpZb3UgbmVlZCB0byB1c2UgYSBHaXRodWIg\nQVBJIGFuZCB3b25kZXIgd2hpY2ggY2xhc3MgaW1wbGVtZW50cyBpdD8gYFJl\nZmVyZW5jZSBvZiBBUElzIDxodHRwczovL2dpdGh1Yi5jb20vamFjcXVldjYv\nUHlHaXRodWIvYmxvYi9tYXN0ZXIvZG9jL1JlZmVyZW5jZU9mQXBpcy5tZD5g\nXwoKWW91IHdhbnQgYWxsIHRoZSBkZXRhaWxzIGFib3V0IFB5R2l0aHViIGNs\nYXNzZXM/IGBSZWZlcmVuY2Ugb2YgY2xhc3NlcyA8aHR0cHM6Ly9naXRodWIu\nY29tL2phY3F1ZXY2L1B5R2l0aHViL2Jsb2IvbWFzdGVyL2RvYy9SZWZlcmVu\nY2VPZkNsYXNzZXMubWQ+YF8KCkxpY2Vuc2luZwo9PT09PT09PT0KClB5R2l0\naHViIGlzIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBHTlUgTGVzc2VyIEdlbmVy\nYWwgUHVibGljIExpY2VuY2UuClNlZSBmaWxlcyBDT1BZSU5HIGFuZCBDT1BZ\nSU5HLkxFU1NFUiwgYXMgcmVxdWVzdGVkIGJ5IGBHTlUgPGh0dHA6Ly93d3cu\nZ251Lm9yZy9saWNlbnNlcy9ncGwtaG93dG8uaHRtbD5gXy4KClByb2plY3Rz\nIHVzaW5nIFB5R2l0aHViCj09PT09PT09PT09PT09PT09PT09PT09CgooYE9w\nZW4gYW4gaXNzdWUgPGh0dHBzOi8vZ2l0aHViLmNvbS9qYWNxdWV2Ni9QeUdp\ndGh1Yi9pc3N1ZXM+YF8gaWYgeW91IHdhbnQgdG8gYmUgbGlzdGVkIGhlcmUs\nIEknbGwgYmUgZ2xhZCB0byBhZGQgeW91ciBwcm9qZWN0KQoKKiBgVXB2ZXJ0\nZXIgPGh0dHBzOi8vdXB2ZXJ0ZXIuY29tPmBfIGlzIGEgd2ViLWJhc2VkIHNj\naGVtYXRpYyBjYXB0dXJlIGFuZCBQQ0IgbGF5b3V0IHRvb2wgZm9yIHBlb3Bs\nZSB3aG8gZGVzaWduIGVsZWN0cm9uaWNzLiBEZXNpZ25lcnMgY2FuIGF0dGFj\naCBhIEdpdGh1YiBwcm9qZWN0IHRvIGFuIFVwdmVydGVyIHByb2plY3QuCiog\nYFRyYXRpaHViaXMgPGh0dHA6Ly9weXBpLnB5dGhvbi5vcmcvcHlwaS90cmF0\naWh1YmlzLz5gXyBjb252ZXJ0cyBUcmFjIHRpY2tldHMgdG8gR2l0aHViIGlz\nc3VlcwoqIGh0dHBzOi8vZ2l0aHViLmNvbS9DTUIvY2xpZ2gKKiBodHRwczov\nL2dpdGh1Yi5jb20vbmF0ZHVjYS9xdWlja29wZW4gdXNlcyBQeUdpdGh1YiB0\nbyBhdXRvbWF0aWNhbHkgY3JlYXRlIGlzc3VlcwoqIGh0dHBzOi8vZ2lzdC5n\naXRodWIuY29tLzM0MzM3OTgKKiBodHRwczovL2dpdGh1Yi5jb20venNpY2lh\ncnovYXF1aWxhLWRzcC5vcmcKKiBodHRwczovL2dpdGh1Yi5jb20vcm9iY293\naWUvdmlydHVhbGVudndyYXBwZXIuZ2l0aHViCgpUaGV5IHRhbGsgYWJvdXQg\nUHlHaXRodWIKPT09PT09PT09PT09PT09PT09PT09PT09CgoqIGh0dHA6Ly9z\ndGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMTA2MjUxOTAvbW9zdC1zdWl0\nYWJsZS1weXRob24tbGlicmFyeS1mb3ItZ2l0aHViLWFwaS12MwoqIGh0dHA6\nLy9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMTIzNzk2MzcvZGphbmdv\nLXNvY2lhbC1hdXRoLWdpdGh1Yi1hdXRoZW50aWNhdGlvbgoqIGh0dHA6Ly93\nd3cuZnJlZWJzZC5vcmcvY2dpL2N2c3dlYi5jZ2kvcG9ydHMvZGV2ZWwvcHkt\ncHlnaXRodWIvCiogaHR0cDovL29kZHNob2Nrcy5jb20vYmxvZy8yMDEyLzA4\nLzAyL2RldmVsb3BpbmctY2hhcnNoZWV0Lwo=\n","sha":"3929e1cac3d833cf0c05b10d20de66bcc35a3815","size":4976,"encoding":"base64","name":"ReadMe.rst","_links":{"git":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/3929e1cac3d833cf0c05b10d20de66bcc35a3815","html":"https://github.com/jacquev6/PyGithub/blob/refs/heads/topic/ExperimentOnDocumentation/ReadMe.rst","self":"https://api.github.com/repos/jacquev6/PyGithub/contents/ReadMe.rst?ref=refs/heads/topic/ExperimentOnDocumentation"},"git_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/3929e1cac3d833cf0c05b10d20de66bcc35a3815"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/contents/doc/ReferenceOfClasses.md?ref=refs%2Fheads%2Ftopic%2FExperimentOnDocumentation +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '45572'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4940'), ('server', 'nginx'), ('last-modified', 'Fri, 21 Dec 2012 21:22:43 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"7c2a77b0e46dda4d6e11562d52ec5ae0"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Tue, 25 Dec 2012 10:46:22 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"file","path":"doc/ReferenceOfClasses.md","html_url":"https://github.com/jacquev6/PyGithub/blob/refs/heads/topic/ExperimentOnDocumentation/doc/ReferenceOfClasses.md","url":"https://api.github.com/repos/jacquev6/PyGithub/contents/doc/ReferenceOfClasses.md?ref=refs/heads/topic/ExperimentOnDocumentation","content":"WW91IGRvbid0IG5vcm1hbHkgY3JlYXRlIGluc3RhbmNlcyBvZiBhbnkgY2xh\nc3MgYnV0IGBHaXRodWJgLgpZb3Ugb2J0YWluIGluc3RhbmNlcyB0aHJvdWdo\nIGNhbGxzIHRvIGBzZWFyY2hfYCwgYGdldF9gIGFuZCBgY3JlYXRlX2AgbWV0\naG9kcy4KCkNsYXNzIGBHaXRodWJgCj09PT09PT09PT09PT09CgpDb25zdHJ1\nY3RlZCBmcm9tIHVzZXIncyBsb2dpbiBhbmQgcGFzc3dvcmQgb3IgT0F1dGgg\ndG9rZW4gb3Igbm90aGluZzoKCiAgICBnID0gR2l0aHViKCBsb2dpbiwgcGFz\nc3dvcmQgKQogICAgZyA9IEdpdGh1YiggdG9rZW4gKQogICAgZyA9IEdpdGh1\nYigpCgpZb3UgY2FuIGFsc28gdXNlIHlvdXIgY2xpZW50X2lkIGFuZCBjbGll\nbnRfc2VjcmV0OgogICAgZyA9IGdpdGh1Yi5HaXRodWIoY2xpZW50X2lkPSJZ\nb3VyQ2xpZW50SWQiLCBjbGllbnRfc2VjcmV0PSJZb3VyQ2xpZW50U2VjcmV0\nIikKCllvdSBjYW4gYWRkIGFuIGFyZ3VtZW50IGBiYXNlX3VybCA9ICJodHRw\nOi8vbXkuZW50ZXJwcmlzZS5jb206ODA4MC9wYXRoL3RvL2dpdGh1YiJgIHRv\nIGNvbm5lY3QgdG8gYSBsb2NhbCBpbnN0YWxsIG9mIEdpdGh1YiAoaWUuIEdp\ndGh1YiBFbnRlcnByaXNlKS4KWW91IGNhbiBhZGQgYW4gYXJndW1lbnQgYHVz\nZXJfYWdlbnRgIHRvIHNlbmQgYSBjdXN0b20gVXNlci1BZ2VudCBoZWFkZXIg\ndG8gR2l0aHViLgpBbm90aGVyIGFyZ3VtZW50LCB0aGF0IGNhbiBiZSBwYXNz\nZWQgaXMgYHRpbWVvdXRgIHdoaWNoIGhhcyBkZWZhdWx0IHZhbHVlIGAxMGAu\nCgpBdHRyaWJ1dGVzCi0tLS0tLS0tLS0KKiBgcmF0ZV9saW1pdGluZ2A6IHR1\ncGxlIG9mIHR3byBpbnRlZ2VyczogcmVtYWluaW5nIGFuZCBsaW1pdCwgYXMg\nZXhwbGFpbmVkIGluIFtSYXRlIExpbWl0aW5nXShodHRwOi8vZGV2ZWxvcGVy\nLmdpdGh1Yi5jb20vdjMvI3JhdGUtbGltaXRpbmcpCgpNZXRob2RzCi0tLS0t\nLS0KKiBgZ2V0X3VzZXIoKWA6IGBBdXRoZW50aWNhdGVkVXNlcmAKKiBgZ2V0\nX3VzZXIoIGxvZ2luIClgOiBgTmFtZWRVc2VyYAogICAgKiBgbG9naW5gOiBz\ndHJpbmcKKiBgZ2V0X29yZ2FuaXphdGlvbiggbG9naW4gKWA6IGBPcmdhbml6\nYXRpb25gCiAgICAqIGBsb2dpbmA6IHN0cmluZwoqIGBnZXRfcmVwbyggZnVs\nbF9uYW1lIClgOiBgUmVwb3NpdG9yeWAKKiBgZ2V0X2dpc3QoIGlkIClgOiBg\nR2lzdGAKICAgICogYGlkYDogc3RyaW5nCiogYGdldF9naXN0cygpYDogYFBh\nZ2luYXRlZExpc3RgIG9mIGBHaXN0YAoqIGBnZXRfaG9va3MoKWA6IGBQYWdp\nbmF0ZWRMaXN0YCBvZiBgSG9va0Rlc2NyaXB0aW9uYAoqIGBsZWdhY3lfc2Vh\ncmNoX3JlcG9zKCBrZXl3b3JkLCBbbGFuZ3VhZ2VdIClgOiBgUGFnaW5hdGVk\nTGlzdGAgb2YgYFJlcG9zaXRvcnlgCiAgICAqIGBrZXl3b3JkYDogc3RyaW5n\nCiAgICAqIGBsYW5ndWFnZWA6IHN0cmluZwoqIGBsZWdhY3lfc2VhcmNoX3Vz\nZXJzKCBrZXl3b3JkIClgOiBgUGFnaW5hdGVkTGlzdGAgb2YgYE5hbWVkVXNl\ncmAKICAgICogYGtleXdvcmRgOiBzdHJpbmcKKiBgbGVnYWN5X3NlYXJjaF91\nc2VyX2J5X2VtYWlsKCBlbWFpbCApYDogYE5hbWVkVXNlcmAKICAgICogYGVt\nYWlsYDogc3RyaW5nCiogYHJlbmRlcl9tYXJrZG93biggdGV4dCwgW2NvbnRl\neHRdIClgOiBzdHJpbmcKICAgICogYHRleHRgOiBzdHJpbmcKICAgICogYGNv\nbnRleHRgOiBgUmVwb3NpdG9yeWAKKiBgZ2V0X2dpdGlnbm9yZV90ZW1wbGF0\nZXMoKWA6IGxpc3Qgb2Ygc3RyaW5nCiogYGdldF9naXRpZ25vcmVfdGVtcGxh\ndGUoIG5hbWUgKWA6IGBHaXRpZ25vcmVUZW1wbGF0ZWAKCkNsYXNzIGBQYWdp\nbmF0ZWRMaXN0YAo9PT09PT09PT09PT09PT09PT09PT0KClRoaXMgY2xhc3Mg\naW1wbGVtZW50cyBsYXp5IFtwYWdpbmF0aW9uIHJlcXVlc3RzXShodHRwOi8v\nZGV2ZWxvcGVyLmdpdGh1Yi5jb20vdjMvI3BhZ2luYXRpb24pIGFuZCBoaWRl\ncyBwYWdpbmF0aW9uIGZyb20geW91LiBJdCBpcyB0aGUgcmV0dXJuIHR5cGUg\nb2YgYGdldF9gIG1ldGhvZHMgdGhhdCByZXR1cm4gYSBjb2xsZWN0aW9uLgoK\nWW91IGNhbiBpdGVyYXRlIG9uIGl0IGluIGEgYGZvciBmIGluIHVzZXIuZ2V0\nX2ZvbGxvd2VycygpOmAgbG9vcCBvciB3aXRoIGFueSBbaXRlcnRvb2xzXSho\ndHRwOi8vZG9jcy5weXRob24ub3JnL2xpYnJhcnkvaXRlcnRvb2xzLmh0bWwp\nIGZ1bmN0aW9ucy4KCllvdSBjYW5ub3Qga25vdyB0aGUgbnVtYmVyIG9mIG9i\namVjdHMgcmV0dXJuZWQgYmVmb3JlIHRoZSBlbmQgb2YgdGhlIGl0ZXJhdGlv\nbi4gSWYgdGhhdCdzICpyZWFsbHkqIHdoYXQgeW91IG5lZWQsIHlvdSBjYW50\nIHVzZSBgbGVuKCBsaXN0KCB1c2VyLmdldF9mb2xsb3dlcnMoKSApIClgLAp3\naGljaCBkb2VzIGFsbCB0aGUgcmVxdWVzdHMgbmVlZGVkIHRvIGVudW1lcmF0\nZSB0aGUgdXNlcidzIGZvbGxvd2Vycy4gTm90ZSB0aGF0IHRoZXJlIGlzIG9m\ndGVuIGFuIGF0dHJpYnV0ZSBnaXZpbmcgdGhpcyB2YWx1ZSAoaW4gdGhhdCBj\nYXNlIGB1c2VyLmZvbGxvd2Vyc2ApLgoKWW91IGNhbiBhbHNvIGNhbGwgYGdl\ndF9wYWdlKCBwYWdlIClgIHRvIGV4cGxpY2l0ZWx5IGdldCBhIHNwZWNpZmlj\nIHBhZ2UgaWYgeW91IGRvbid0IHdhbnQgdG8gaGlkZSBwYWdpbmF0aW9uLiBg\ncGFnZWAgc3RhcnRzIGF0IDAuCiogYGdldF9wYWdlKCBwYWdlIClgOiBsaXN0\nCiAgICAqIGBwYWdlYDogaW50ZWdlcgoKQ2xhc3MgYEdpdGh1YkV4Y2VwdGlv\nbmAKPT09PT09PT09PT09PT09PT09PT09PT0KCkF0dHJpYnV0ZXMKLS0tLS0t\nLS0tLQoqIGBzdGF0dXNgOiBpbnRlZ2VyCiogYGRhdGFgOiBkaWN0CgpDbGFz\ncyBgQXV0aGVudGljYXRlZFVzZXJgCj09PT09PT09PT09PT09PT09PT09PT09\nPT0KCkF0dHJpYnV0ZXMKLS0tLS0tLS0tLQoqIGBhdmF0YXJfdXJsYDogc3Ry\naW5nCiogYGJpb2A6IHN0cmluZwoqIGBibG9nYDogc3RyaW5nCiogYGNvbGxh\nYm9yYXRvcnNgOiBpbnRlZ2VyCiogYGNvbXBhbnlgOiBzdHJpbmcKKiBgY3Jl\nYXRlZF9hdGA6IGRhdGV0aW1lLmRhdGV0aW1lCiogYGRpc2tfdXNhZ2VgOiBp\nbnRlZ2VyCiogYGVtYWlsYDogc3RyaW5nCiogYGZvbGxvd2Vyc2A6IGludGVn\nZXIKKiBgZm9sbG93aW5nYDogaW50ZWdlcgoqIGBncmF2YXRhcl9pZGA6IHN0\ncmluZwoqIGBoaXJlYWJsZWA6IGJvb2wKKiBgaHRtbF91cmxgOiBzdHJpbmcK\nKiBgaWRgOiBpbnRlZ2VyCiogYGxvY2F0aW9uYDogc3RyaW5nCiogYGxvZ2lu\nYDogc3RyaW5nCiogYG5hbWVgOiBzdHJpbmcKKiBgb3duZWRfcHJpdmF0ZV9y\nZXBvc2A6IGludGVnZXIKKiBgcGxhbmA6IGBQbGFuYAoqIGBwcml2YXRlX2dp\nc3RzYDogaW50ZWdlcgoqIGBwdWJsaWNfZ2lzdHNgOiBpbnRlZ2VyCiogYHB1\nYmxpY19yZXBvc2A6IGludGVnZXIKKiBgdG90YWxfcHJpdmF0ZV9yZXBvc2A6\nIGludGVnZXIKKiBgdHlwZWA6IHN0cmluZwoqIGB1cmxgOiBzdHJpbmcKCkF1\ndGhvcml6YXRpb25zCi0tLS0tLS0tLS0tLS0tCiogYGNyZWF0ZV9hdXRob3Jp\nemF0aW9uKCBbc2NvcGVzLCBub3RlLCBub3RlX3VybF0gKWA6IGBBdXRob3Jp\nemF0aW9uYAogICAgKiBgc2NvcGVzYDogbGlzdCBvZiBzdHJpbmcKICAgICog\nYG5vdGVgOiBzdHJpbmcKICAgICogYG5vdGVfdXJsYDogc3RyaW5nCiogYGdl\ndF9hdXRob3JpemF0aW9uKCBpZCApYDogYEF1dGhvcml6YXRpb25gCiAgICAq\nIGBpZGA6IGludGVnZXIKKiBgZ2V0X2F1dGhvcml6YXRpb25zKClgOiBgUGFn\naW5hdGVkTGlzdGAgb2YgYEF1dGhvcml6YXRpb25gCgpFbWFpbHMKLS0tLS0t\nCiogYGFkZF90b19lbWFpbHMoIGVtYWlsLCAuLi4gKWAKICAgICogYGVtYWls\nYDogc3RyaW5nCiogYGdldF9lbWFpbHMoKWA6IGxpc3Qgb2Ygc3RyaW5nCiog\nYHJlbW92ZV9mcm9tX2VtYWlscyggZW1haWwsIC4uLiApYAogICAgKiBgZW1h\naWxgOiBzdHJpbmcKCkV2ZW50cwotLS0tLS0KKiBgZ2V0X2V2ZW50cygpYDog\nYFBhZ2luYXRlZExpc3RgIG9mIGBFdmVudGAKKiBgZ2V0X29yZ2FuaXphdGlv\nbl9ldmVudHMoIG9yZyApYDogYFBhZ2luYXRlZExpc3RgIG9mIGBFdmVudGAK\nICAgICogYG9yZ2A6IGBPcmdhbml6YXRpb25gCgpGb2xsb3dlcnMKLS0tLS0t\nLS0tCiogYGdldF9mb2xsb3dlcnMoKWA6IGBQYWdpbmF0ZWRMaXN0YCBvZiBg\nTmFtZWRVc2VyYAoKRm9sbG93aW5nCi0tLS0tLS0tLQoqIGBhZGRfdG9fZm9s\nbG93aW5nKCBmb2xsb3dpbmcgKWAKICAgICogYGZvbGxvd2luZ2A6IGBOYW1l\nZFVzZXJgCiogYGdldF9mb2xsb3dpbmcoKWA6IGBQYWdpbmF0ZWRMaXN0YCBv\nZiBgTmFtZWRVc2VyYAoqIGBoYXNfaW5fZm9sbG93aW5nKCBmb2xsb3dpbmcg\nKWA6IGJvb2wKICAgICogYGZvbGxvd2luZ2A6IGBOYW1lZFVzZXJgCiogYHJl\nbW92ZV9mcm9tX2ZvbGxvd2luZyggZm9sbG93aW5nIClgCiAgICAqIGBmb2xs\nb3dpbmdgOiBgTmFtZWRVc2VyYAoKRm9ya2luZwotLS0tLS0tCiogYGNyZWF0\nZV9mb3JrKCByZXBvIClgOiBgUmVwb3NpdG9yeWAKICAgICogYHJlcG9gOiBg\nUmVwb3NpdG9yeWAKCkdpc3RzCi0tLS0tCiogYGNyZWF0ZV9naXN0KCBwdWJs\naWMsIGZpbGVzLCBbZGVzY3JpcHRpb25dIClgOiBgR2lzdGAKICAgICogYHB1\nYmxpY2A6IGJvb2wKICAgICogYGZpbGVzYDogZGljdCBvZiBzdHJpbmcgdG8g\nYElucHV0RmlsZUNvbnRlbnRgCiAgICAqIGBkZXNjcmlwdGlvbmA6IHN0cmlu\nZwoqIGBnZXRfZ2lzdHMoKWA6IGBQYWdpbmF0ZWRMaXN0YCBvZiBgR2lzdGAK\nKiBgZ2V0X3N0YXJyZWRfZ2lzdHMoKWA6IGBQYWdpbmF0ZWRMaXN0YCBvZiBg\nR2lzdGAKCklzc3VlcwotLS0tLS0KKiBgZ2V0X2lzc3VlcygpYDogYFBhZ2lu\nYXRlZExpc3RgIG9mIGBJc3N1ZWAKCktleXMKLS0tLQoqIGBjcmVhdGVfa2V5\nKCB0aXRsZSwga2V5IClgOiBgVXNlcktleWAKICAgICogYHRpdGxlYDogc3Ry\naW5nCiAgICAqIGBrZXlgOiBzdHJpbmcKKiBgZ2V0X2tleSggaWQgKWA6IGBV\nc2VyS2V5YAogICAgKiBgaWRgOiBpbnRlZ2VyCiogYGdldF9rZXlzKClgOiBg\nUGFnaW5hdGVkTGlzdGAgb2YgYFVzZXJLZXlgCgpNb2RpZmljYXRpb24KLS0t\nLS0tLS0tLS0tCiogYGVkaXQoIFtuYW1lLCBlbWFpbCwgYmxvZywgY29tcGFu\neSwgbG9jYXRpb24sIGhpcmVhYmxlLCBiaW9dIClgCiAgICAqIGBuYW1lYDog\nc3RyaW5nCiAgICAqIGBlbWFpbGA6IHN0cmluZwogICAgKiBgYmxvZ2A6IHN0\ncmluZwogICAgKiBgY29tcGFueWA6IHN0cmluZwogICAgKiBgbG9jYXRpb25g\nOiBzdHJpbmcKICAgICogYGhpcmVhYmxlYDogYm9vbAogICAgKiBgYmlvYDog\nc3RyaW5nCgpPcmdzCi0tLS0KKiBgZ2V0X29yZ3MoKWA6IGBQYWdpbmF0ZWRM\naXN0YCBvZiBgT3JnYW5pemF0aW9uYAoKUmVwb3MKLS0tLS0KKiBgY3JlYXRl\nX3JlcG8oIG5hbWUsIFtkZXNjcmlwdGlvbiwgaG9tZXBhZ2UsIHByaXZhdGUs\nIGhhc19pc3N1ZXMsIGhhc193aWtpLCBoYXNfZG93bmxvYWRzLCBhdXRvX2lu\naXQsIGdpdGlnbm9yZV90ZW1wbGF0ZV0gKWA6IGBSZXBvc2l0b3J5YAogICAg\nKiBgbmFtZWA6IHN0cmluZwogICAgKiBgZGVzY3JpcHRpb25gOiBzdHJpbmcK\nICAgICogYGhvbWVwYWdlYDogc3RyaW5nCiAgICAqIGBwcml2YXRlYDogYm9v\nbAogICAgKiBgaGFzX2lzc3Vlc2A6IGJvb2wKICAgICogYGhhc193aWtpYDog\nYm9vbAogICAgKiBgaGFzX2Rvd25sb2Fkc2A6IGJvb2wKICAgICogYGF1dG9f\naW5pdGA6IGJvb2wKICAgICogYGdpdGlnbm9yZV90ZW1wbGF0ZWA6IHN0cmlu\nZwoqIGBnZXRfcmVwbyggbmFtZSApYDogYFJlcG9zaXRvcnlgCiAgICAqIGBu\nYW1lYDogc3RyaW5nCiogYGdldF9yZXBvcyggW3R5cGUsIHNvcnQsIGRpcmVj\ndGlvbl0gKWA6IGBQYWdpbmF0ZWRMaXN0YCBvZiBgUmVwb3NpdG9yeWAKICAg\nICogYHR5cGVgOiBzdHJpbmcKICAgICogYHNvcnRgOiBzdHJpbmcKICAgICog\nYGRpcmVjdGlvbmA6IHN0cmluZwoKU3RhcnJlZAotLS0tLS0tCiogYGFkZF90\nb19zdGFycmVkKCBzdGFycmVkIClgCiAgICAqIGBzdGFycmVkYDogYFJlcG9z\naXRvcnlgCiogYGdldF9zdGFycmVkKClgOiBgUGFnaW5hdGVkTGlzdGAgb2Yg\nYFJlcG9zaXRvcnlgCiogYGhhc19pbl9zdGFycmVkKCBzdGFycmVkIClgOiBi\nb29sCiAgICAqIGBzdGFycmVkYDogYFJlcG9zaXRvcnlgCiogYHJlbW92ZV9m\ncm9tX3N0YXJyZWQoIHN0YXJyZWQgKWAKICAgICogYHN0YXJyZWRgOiBgUmVw\nb3NpdG9yeWAKClN1YnNjcmlwdGlvbnMKLS0tLS0tLS0tLS0tLQoqIGBhZGRf\ndG9fc3Vic2NyaXB0aW9ucyggc3Vic2NyaXB0aW9uIClgCiAgICAqIGBzdWJz\nY3JpcHRpb25gOiBgUmVwb3NpdG9yeWAKKiBgZ2V0X3N1YnNjcmlwdGlvbnMo\nKWA6IGBQYWdpbmF0ZWRMaXN0YCBvZiBgUmVwb3NpdG9yeWAKKiBgaGFzX2lu\nX3N1YnNjcmlwdGlvbnMoIHN1YnNjcmlwdGlvbiApYDogYm9vbAogICAgKiBg\nc3Vic2NyaXB0aW9uYDogYFJlcG9zaXRvcnlgCiogYHJlbW92ZV9mcm9tX3N1\nYnNjcmlwdGlvbnMoIHN1YnNjcmlwdGlvbiApYAogICAgKiBgc3Vic2NyaXB0\naW9uYDogYFJlcG9zaXRvcnlgCgpXYXRjaGVkCi0tLS0tLS0KKiBgYWRkX3Rv\nX3dhdGNoZWQoIHdhdGNoZWQgKWAKICAgICogYHdhdGNoZWRgOiBgUmVwb3Np\ndG9yeWAKKiBgZ2V0X3dhdGNoZWQoKWA6IGBQYWdpbmF0ZWRMaXN0YCBvZiBg\nUmVwb3NpdG9yeWAKKiBgaGFzX2luX3dhdGNoZWQoIHdhdGNoZWQgKWA6IGJv\nb2wKICAgICogYHdhdGNoZWRgOiBgUmVwb3NpdG9yeWAKKiBgcmVtb3ZlX2Zy\nb21fd2F0Y2hlZCggd2F0Y2hlZCApYAogICAgKiBgd2F0Y2hlZGA6IGBSZXBv\nc2l0b3J5YAoKQ2xhc3MgYEF1dGhvcml6YXRpb25gCj09PT09PT09PT09PT09\nPT09PT09PQoKQXR0cmlidXRlcwotLS0tLS0tLS0tCiogYGFwcGA6IGBBdXRo\nb3JpemF0aW9uQXBwbGljYXRpb25gCiogYGNyZWF0ZWRfYXRgOiBkYXRldGlt\nZS5kYXRldGltZQoqIGBpZGA6IGludGVnZXIKKiBgbm90ZWA6IHN0cmluZwoq\nIGBub3RlX3VybGA6IHN0cmluZwoqIGBzY29wZXNgOiBsaXN0IG9mIHN0cmlu\nZwoqIGB0b2tlbmA6IHN0cmluZwoqIGB1cGRhdGVkX2F0YDogZGF0ZXRpbWUu\nZGF0ZXRpbWUKKiBgdXJsYDogc3RyaW5nCgpEZWxldGlvbgotLS0tLS0tLQoq\nIGBkZWxldGUoKWAKCk1vZGlmaWNhdGlvbgotLS0tLS0tLS0tLS0KKiBgZWRp\ndCggW3Njb3BlcywgYWRkX3Njb3BlcywgcmVtb3ZlX3Njb3Blcywgbm90ZSwg\nbm90ZV91cmxdIClgCiAgICAqIGBzY29wZXNgOiBsaXN0IG9mIHN0cmluZwog\nICAgKiBgYWRkX3Njb3Blc2A6IGxpc3Qgb2Ygc3RyaW5nCiAgICAqIGByZW1v\ndmVfc2NvcGVzYDogbGlzdCBvZiBzdHJpbmcKICAgICogYG5vdGVgOiBzdHJp\nbmcKICAgICogYG5vdGVfdXJsYDogc3RyaW5nCgpDbGFzcyBgQXV0aG9yaXph\ndGlvbkFwcGxpY2F0aW9uYAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09\nPT09PQoKQXR0cmlidXRlcwotLS0tLS0tLS0tCiogYG5hbWVgOiBzdHJpbmcK\nKiBgdXJsYDogc3RyaW5nCgpDbGFzcyBgQnJhbmNoYAo9PT09PT09PT09PT09\nPQoKQXR0cmlidXRlcwotLS0tLS0tLS0tCiogYGNvbW1pdGA6IGBDb21taXRg\nCiogYG5hbWVgOiBzdHJpbmcKCkNsYXNzIGBDb21taXRgCj09PT09PT09PT09\nPT09CgpBdHRyaWJ1dGVzCi0tLS0tLS0tLS0KKiBgYXV0aG9yYDogYE5hbWVk\nVXNlcmAKKiBgY29tbWl0YDogYEdpdENvbW1pdGAKKiBgY29tbWl0dGVyYDog\nYE5hbWVkVXNlcmAKKiBgZmlsZXNgOiBsaXN0IG9mIGBGaWxlYAoqIGBwYXJl\nbnRzYDogbGlzdCBvZiBgQ29tbWl0YAoqIGBzaGFgOiBzdHJpbmcKKiBgc3Rh\ndHNgOiBgQ29tbWl0U3RhdHNgCiogYHVybGA6IHN0cmluZwoKQ29tbWVudHMK\nLS0tLS0tLS0KKiBgY3JlYXRlX2NvbW1lbnQoIGJvZHksIFtsaW5lLCBwYXRo\nLCBwb3NpdGlvbl0gKWA6IGBDb21taXRDb21tZW50YAogICAgKiBgYm9keWA6\nIHN0cmluZwogICAgKiBgbGluZWA6IGludGVnZXIKICAgICogYHBhdGhgOiBz\ndHJpbmcKICAgICogYHBvc2l0aW9uYDogaW50ZWdlcgoqIGBnZXRfY29tbWVu\ndHMoKWA6IGBQYWdpbmF0ZWRMaXN0YCBvZiBgQ29tbWl0Q29tbWVudGAKClN0\nYXR1c2VzCi0tLS0tLS0tCiogYGNyZWF0ZV9zdGF0dXMoIHN0YXRlLCBbdGFy\nZ2V0X3VybCwgZGVzY3JpcHRpb25dIClgOiBgQ29tbWl0U3RhdHVzYAogICAg\nKiBgc3RhdGVgOiBzdHJpbmcKICAgICogYHRhcmdldF91cmxgOiBzdHJpbmcK\nICAgICogYGRlc2NyaXB0aW9uYDogc3RyaW5nCiogYGdldF9zdGF0dXNlcygp\nYDogYFBhZ2luYXRlZExpc3RgIG9mIGBDb21taXRTdGF0dXNgCgpDbGFzcyBg\nQ29tbWl0Q29tbWVudGAKPT09PT09PT09PT09PT09PT09PT09CgpBdHRyaWJ1\ndGVzCi0tLS0tLS0tLS0KKiBgYm9keWA6IHN0cmluZwoqIGBjb21taXRfaWRg\nOiBzdHJpbmcKKiBgY3JlYXRlZF9hdGA6IGRhdGV0aW1lLmRhdGV0aW1lCiog\nYGh0bWxfdXJsYDogc3RyaW5nCiogYGlkYDogaW50ZWdlcgoqIGBsaW5lYDog\naW50ZWdlcgoqIGBwYXRoYDogc3RyaW5nCiogYHBvc2l0aW9uYDogaW50ZWdl\ncgoqIGB1cGRhdGVkX2F0YDogZGF0ZXRpbWUuZGF0ZXRpbWUKKiBgdXJsYDog\nc3RyaW5nCiogYHVzZXJgOiBgTmFtZWRVc2VyYAoKRGVsZXRpb24KLS0tLS0t\nLS0KKiBgZGVsZXRlKClgCgpNb2RpZmljYXRpb24KLS0tLS0tLS0tLS0tCiog\nYGVkaXQoIGJvZHkgKWAKICAgICogYGJvZHlgOiBzdHJpbmcKCkNsYXNzIGBD\nb21taXRTdGF0c2AKPT09PT09PT09PT09PT09PT09PQoKQXR0cmlidXRlcwot\nLS0tLS0tLS0tCiogYGFkZGl0aW9uc2A6IGludGVnZXIKKiBgZGVsZXRpb25z\nYDogaW50ZWdlcgoqIGB0b3RhbGA6IGludGVnZXIKCkNsYXNzIGBDb21taXRT\ndGF0dXNgCj09PT09PT09PT09PT09PT09PT09CgpBdHRyaWJ1dGVzCi0tLS0t\nLS0tLS0KKiBgY3JlYXRlZF9hdGA6IGRhdGV0aW1lLmRhdGV0aW1lCiogYGNy\nZWF0b3JgOiBgTmFtZWRVc2VyYAoqIGBkZXNjcmlwdGlvbmA6IHN0cmluZwoq\nIGBpZGA6IGludGVnZXIKKiBgc3RhdGVgOiBzdHJpbmcKKiBgdGFyZ2V0X3Vy\nbGA6IHN0cmluZwoqIGB1cGRhdGVkX2F0YDogZGF0ZXRpbWUuZGF0ZXRpbWUK\nCkNsYXNzIGBDb21wYXJpc29uYAo9PT09PT09PT09PT09PT09PT0KCkF0dHJp\nYnV0ZXMKLS0tLS0tLS0tLQoqIGBhaGVhZF9ieWA6IGludGVnZXIKKiBgYmFz\nZV9jb21taXRgOiBgQ29tbWl0YAoqIGBiZWhpbmRfYnlgOiBpbnRlZ2VyCiog\nYGNvbW1pdHNgOiBsaXN0IG9mIGBDb21taXRgCiogYGRpZmZfdXJsYDogc3Ry\naW5nCiogYGZpbGVzYDogbGlzdCBvZiBgRmlsZWAKKiBgaHRtbF91cmxgOiBz\ndHJpbmcKKiBgcGF0Y2hfdXJsYDogc3RyaW5nCiogYHBlcm1hbGlua191cmxg\nOiBzdHJpbmcKKiBgc3RhdHVzYDogc3RyaW5nCiogYHRvdGFsX2NvbW1pdHNg\nOiBpbnRlZ2VyCiogYHVybGA6IHN0cmluZwoKQ2xhc3MgYENvbnRlbnRGaWxl\nYAo9PT09PT09PT09PT09PT09PT09CgpBdHRyaWJ1dGVzCi0tLS0tLS0tLS0K\nKiBgY29udGVudGA6IHN0cmluZwoqIGBlbmNvZGluZ2A6IHN0cmluZwoqIGBu\nYW1lYDogc3RyaW5nCiogYHBhdGhgOiBzdHJpbmcKKiBgc2hhYDogc3RyaW5n\nCiogYHNpemVgOiBpbnRlZ2VyCiogYHR5cGVgOiBzdHJpbmcKCkNsYXNzIGBE\nb3dubG9hZGAKPT09PT09PT09PT09PT09PQoKQXR0cmlidXRlcwotLS0tLS0t\nLS0tCiogYGFjY2Vzc2tleWlkYDogc3RyaW5nCiogYGFjbGA6IHN0cmluZwoq\nIGBidWNrZXRgOiBzdHJpbmcKKiBgY29udGVudF90eXBlYDogc3RyaW5nCiog\nYGNyZWF0ZWRfYXRgOiBkYXRldGltZS5kYXRldGltZQoqIGBkZXNjcmlwdGlv\nbmA6IHN0cmluZwoqIGBkb3dubG9hZF9jb3VudGA6IGludGVnZXIKKiBgZXhw\naXJhdGlvbmRhdGVgOiBkYXRldGltZS5kYXRldGltZQoqIGBodG1sX3VybGA6\nIHN0cmluZwoqIGBpZGA6IGludGVnZXIKKiBgbWltZV90eXBlYDogc3RyaW5n\nCiogYG5hbWVgOiBzdHJpbmcKKiBgcGF0aGA6IHN0cmluZwoqIGBwb2xpY3lg\nOiBzdHJpbmcKKiBgcHJlZml4YDogc3RyaW5nCiogYHJlZGlyZWN0YDogYm9v\nbAoqIGBzM191cmxgOiBzdHJpbmcKKiBgc2lnbmF0dXJlYDogc3RyaW5nCiog\nYHNpemVgOiBpbnRlZ2VyCiogYHVybGA6IHN0cmluZwoKRGVsZXRpb24KLS0t\nLS0tLS0KKiBgZGVsZXRlKClgCgpDbGFzcyBgRXZlbnRgCj09PT09PT09PT09\nPT0KCkF0dHJpYnV0ZXMKLS0tLS0tLS0tLQoqIGBhY3RvcmA6IGBOYW1lZFVz\nZXJgCiogYGNyZWF0ZWRfYXRgOiBkYXRldGltZS5kYXRldGltZQoqIGBpZGA6\nIHN0cmluZwoqIGBvcmdgOiBgT3JnYW5pemF0aW9uYAoqIGBwYXlsb2FkYDog\nZGljdAoqIGBwdWJsaWNgOiBib29sCiogYHJlcG9gOiBgUmVwb3NpdG9yeWAK\nKiBgdHlwZWA6IHN0cmluZwoKQ2xhc3MgYEZpbGVgCj09PT09PT09PT09PQoK\nQXR0cmlidXRlcwotLS0tLS0tLS0tCiogYGFkZGl0aW9uc2A6IGludGVnZXIK\nKiBgYmxvYl91cmxgOiBzdHJpbmcKKiBgY2hhbmdlc2A6IGludGVnZXIKKiBg\nZGVsZXRpb25zYDogaW50ZWdlcgoqIGBmaWxlbmFtZWA6IHN0cmluZwoqIGBw\nYXRjaGA6IHN0cmluZwoqIGByYXdfdXJsYDogc3RyaW5nCiogYHNoYWA6IHN0\ncmluZwoqIGBzdGF0dXNgOiBzdHJpbmcKCkNsYXNzIGBHaXN0YAo9PT09PT09\nPT09PT0KCkF0dHJpYnV0ZXMKLS0tLS0tLS0tLQoqIGBjb21tZW50c2A6IGlu\ndGVnZXIKKiBgY3JlYXRlZF9hdGA6IGRhdGV0aW1lLmRhdGV0aW1lCiogYGRl\nc2NyaXB0aW9uYDogc3RyaW5nCiogYGZpbGVzYDogZGljdCBvZiBzdHJpbmcg\ndG8gYEdpc3RGaWxlYAoqIGBmb3JrX29mYDogYEdpc3RgCiogYGZvcmtzYDog\nbGlzdCBvZiBgR2lzdGAKKiBgZ2l0X3B1bGxfdXJsYDogc3RyaW5nCiogYGdp\ndF9wdXNoX3VybGA6IHN0cmluZwoqIGBoaXN0b3J5YDogbGlzdCBvZiBgR2lz\ndEhpc3RvcnlTdGF0ZWAKKiBgaHRtbF91cmxgOiBzdHJpbmcKKiBgaWRgOiBz\ndHJpbmcKKiBgcHVibGljYDogYm9vbAoqIGB1cGRhdGVkX2F0YDogZGF0ZXRp\nbWUuZGF0ZXRpbWUKKiBgdXJsYDogc3RyaW5nCiogYHVzZXJgOiBgTmFtZWRV\nc2VyYAoKQ29tbWVudHMKLS0tLS0tLS0KKiBgY3JlYXRlX2NvbW1lbnQoIGJv\nZHkgKWA6IGBHaXN0Q29tbWVudGAKICAgICogYGJvZHlgOiBzdHJpbmcKKiBg\nZ2V0X2NvbW1lbnQoIGlkIClgOiBgR2lzdENvbW1lbnRgCiAgICAqIGBpZGA6\nIGludGVnZXIKKiBgZ2V0X2NvbW1lbnRzKClgOiBgUGFnaW5hdGVkTGlzdGAg\nb2YgYEdpc3RDb21tZW50YAoKRGVsZXRpb24KLS0tLS0tLS0KKiBgZGVsZXRl\nKClgCgpGb3JraW5nCi0tLS0tLS0KKiBgY3JlYXRlX2ZvcmsoKWA6IGBHaXN0\nYAoKTW9kaWZpY2F0aW9uCi0tLS0tLS0tLS0tLQoqIGBlZGl0KCBbZGVzY3Jp\ncHRpb24sIGZpbGVzXSApYAogICAgKiBgZGVzY3JpcHRpb25gOiBzdHJpbmcK\nICAgICogYGZpbGVzYDogZGljdCBvZiBzdHJpbmcgdG8gYElucHV0RmlsZUNv\nbnRlbnRgCgpTdGFycmluZwotLS0tLS0tLQoqIGBpc19zdGFycmVkKClgOiBi\nb29sCiogYHJlc2V0X3N0YXJyZWQoKWAKKiBgc2V0X3N0YXJyZWQoKWAKCkNs\nYXNzIGBHaXN0Q29tbWVudGAKPT09PT09PT09PT09PT09PT09PQoKQXR0cmli\ndXRlcwotLS0tLS0tLS0tCiogYGJvZHlgOiBzdHJpbmcKKiBgY3JlYXRlZF9h\ndGA6IGRhdGV0aW1lLmRhdGV0aW1lCiogYGlkYDogaW50ZWdlcgoqIGB1cGRh\ndGVkX2F0YDogZGF0ZXRpbWUuZGF0ZXRpbWUKKiBgdXJsYDogc3RyaW5nCiog\nYHVzZXJgOiBgTmFtZWRVc2VyYAoKRGVsZXRpb24KLS0tLS0tLS0KKiBgZGVs\nZXRlKClgCgpNb2RpZmljYXRpb24KLS0tLS0tLS0tLS0tCiogYGVkaXQoIGJv\nZHkgKWAKICAgICogYGJvZHlgOiBzdHJpbmcKCkNsYXNzIGBHaXN0RmlsZWAK\nPT09PT09PT09PT09PT09PQoKQXR0cmlidXRlcwotLS0tLS0tLS0tCiogYGNv\nbnRlbnRgOiBzdHJpbmcKKiBgZmlsZW5hbWVgOiBzdHJpbmcKKiBgbGFuZ3Vh\nZ2VgOiBzdHJpbmcKKiBgcmF3X3VybGA6IHN0cmluZwoqIGBzaXplYDogaW50\nZWdlcgoKQ2xhc3MgYEdpc3RIaXN0b3J5U3RhdGVgCj09PT09PT09PT09PT09\nPT09PT09PT09PQoKQXR0cmlidXRlcwotLS0tLS0tLS0tCiogYGNoYW5nZV9z\ndGF0dXNgOiBgQ29tbWl0U3RhdHNgCiogYGNvbW1pdHRlZF9hdGA6IGRhdGV0\naW1lLmRhdGV0aW1lCiogYHVybGA6IHN0cmluZwoqIGB1c2VyYDogYE5hbWVk\nVXNlcmAKKiBgdmVyc2lvbmA6IHN0cmluZwoKQ2xhc3MgYEdpdEF1dGhvcmAK\nPT09PT09PT09PT09PT09PT0KCkF0dHJpYnV0ZXMKLS0tLS0tLS0tLQoqIGBk\nYXRlYDogZGF0ZXRpbWUuZGF0ZXRpbWUKKiBgZW1haWxgOiBzdHJpbmcKKiBg\nbmFtZWA6IHN0cmluZwoKQ2xhc3MgYEdpdEJsb2JgCj09PT09PT09PT09PT09\nPQoKQXR0cmlidXRlcwotLS0tLS0tLS0tCiogYGNvbnRlbnRgOiBzdHJpbmcK\nKiBgZW5jb2RpbmdgOiBzdHJpbmcKKiBgc2hhYDogc3RyaW5nCiogYHNpemVg\nOiBpbnRlZ2VyCiogYHVybGA6IHN0cmluZwoKQ2xhc3MgYEdpdENvbW1pdGAK\nPT09PT09PT09PT09PT09PT0KCkF0dHJpYnV0ZXMKLS0tLS0tLS0tLQoqIGBh\ndXRob3JgOiBgR2l0QXV0aG9yYAoqIGBjb21taXR0ZXJgOiBgR2l0QXV0aG9y\nYAoqIGBtZXNzYWdlYDogc3RyaW5nCiogYHBhcmVudHNgOiBsaXN0IG9mIGBH\naXRDb21taXRgCiogYHNoYWA6IHN0cmluZwoqIGB0cmVlYDogYEdpdFRyZWVg\nCiogYHVybGA6IHN0cmluZwoKQ2xhc3MgYEdpdE9iamVjdGAKPT09PT09PT09\nPT09PT09PT0KCkF0dHJpYnV0ZXMKLS0tLS0tLS0tLQoqIGBzaGFgOiBzdHJp\nbmcKKiBgdHlwZWA6IHN0cmluZwoqIGB1cmxgOiBzdHJpbmcKCkNsYXNzIGBH\naXRpZ25vcmVUZW1wbGF0ZWAKPT09PT09PT09PT09PT09PT09PT09PT09PQoK\nQXR0cmlidXRlcwotLS0tLS0tLS0tCiogYG5hbWVgOiBzdHJpbmcKKiBgc291\ncmNlYDogc3RyaW5nCgpDbGFzcyBgR2l0UmVmYAo9PT09PT09PT09PT09PQoK\nQXR0cmlidXRlcwotLS0tLS0tLS0tCiogYG9iamVjdGA6IGBHaXRPYmplY3Rg\nCiogYHJlZmA6IHN0cmluZwoqIGB1cmxgOiBzdHJpbmcKCkRlbGV0aW9uCi0t\nLS0tLS0tCiogYGRlbGV0ZSgpYAoKTW9kaWZpY2F0aW9uCi0tLS0tLS0tLS0t\nLQoqIGBlZGl0KCBzaGEsIFtmb3JjZV0gKWAKICAgICogYHNoYWA6IHN0cmlu\nZwogICAgKiBgZm9yY2VgOiBib29sCgpDbGFzcyBgR2l0VGFnYAo9PT09PT09\nPT09PT09PQoKQXR0cmlidXRlcwotLS0tLS0tLS0tCiogYG1lc3NhZ2VgOiBz\ndHJpbmcKKiBgb2JqZWN0YDogYEdpdE9iamVjdGAKKiBgc2hhYDogc3RyaW5n\nCiogYHRhZ2A6IHN0cmluZwoqIGB0YWdnZXJgOiBgR2l0QXV0aG9yYAoqIGB1\ncmxgOiBzdHJpbmcKCkNsYXNzIGBHaXRUcmVlYAo9PT09PT09PT09PT09PT0K\nCkF0dHJpYnV0ZXMKLS0tLS0tLS0tLQoqIGBzaGFgOiBzdHJpbmcKKiBgdHJl\nZWA6IGxpc3Qgb2YgYEdpdFRyZWVFbGVtZW50YAoqIGB1cmxgOiBzdHJpbmcK\nCkNsYXNzIGBHaXRUcmVlRWxlbWVudGAKPT09PT09PT09PT09PT09PT09PT09\nPQoKQXR0cmlidXRlcwotLS0tLS0tLS0tCiogYG1vZGVgOiBzdHJpbmcKKiBg\ncGF0aGA6IHN0cmluZwoqIGBzaGFgOiBzdHJpbmcKKiBgc2l6ZWA6IGludGVn\nZXIKKiBgdHlwZWA6IHN0cmluZwoqIGB1cmxgOiBzdHJpbmcKCkNsYXNzIGBI\nb29rYAo9PT09PT09PT09PT0KCkF0dHJpYnV0ZXMKLS0tLS0tLS0tLQoqIGBh\nY3RpdmVgOiBib29sCiogYGNvbmZpZ2A6IGRpY3QKKiBgY3JlYXRlZF9hdGA6\nIGRhdGV0aW1lLmRhdGV0aW1lCiogYGV2ZW50c2A6IGxpc3Qgb2Ygc3RyaW5n\nCiogYGlkYDogaW50ZWdlcgoqIGBsYXN0X3Jlc3BvbnNlYDogYEhvb2tSZXNw\nb25zZWAKKiBgbmFtZWA6IHN0cmluZwoqIGB1cGRhdGVkX2F0YDogZGF0ZXRp\nbWUuZGF0ZXRpbWUKKiBgdXJsYDogc3RyaW5nCgpEZWxldGlvbgotLS0tLS0t\nLQoqIGBkZWxldGUoKWAKCk1vZGlmaWNhdGlvbgotLS0tLS0tLS0tLS0KKiBg\nZWRpdCggbmFtZSwgY29uZmlnLCBbZXZlbnRzLCBhZGRfZXZlbnRzLCByZW1v\ndmVfZXZlbnRzLCBhY3RpdmVdIClgCiAgICAqIGBuYW1lYDogc3RyaW5nCiAg\nICAqIGBjb25maWdgOiBkaWN0CiAgICAqIGBldmVudHNgOiBsaXN0IG9mIHN0\ncmluZwogICAgKiBgYWRkX2V2ZW50c2A6IGxpc3Qgb2Ygc3RyaW5nCiAgICAq\nIGByZW1vdmVfZXZlbnRzYDogbGlzdCBvZiBzdHJpbmcKICAgICogYGFjdGl2\nZWA6IGJvb2wKClRlc3RpbmcKLS0tLS0tLQoqIGB0ZXN0KClgCgpDbGFzcyBg\nSG9va0Rlc2NyaXB0aW9uYAo9PT09PT09PT09PT09PT09PT09PT09PQoKQXR0\ncmlidXRlcwotLS0tLS0tLS0tCiogYGV2ZW50c2A6IGxpc3Qgb2Ygc3RyaW5n\nCiogYG5hbWVgOiBzdHJpbmcKKiBgc2NoZW1hYDogbGlzdCBvZiBsaXN0IG9m\nIHN0cmluZwoqIGBzdXBwb3J0ZWRfZXZlbnRzYDogbGlzdCBvZiBzdHJpbmcK\nCkNsYXNzIGBIb29rUmVzcG9uc2VgCj09PT09PT09PT09PT09PT09PT09CgpB\ndHRyaWJ1dGVzCi0tLS0tLS0tLS0KKiBgY29kZWA6IGludGVnZXIKKiBgbWVz\nc2FnZWA6IHN0cmluZwoqIGBzdGF0dXNgOiBzdHJpbmcKCkNsYXNzIGBJc3N1\nZWAKPT09PT09PT09PT09PQoKQXR0cmlidXRlcwotLS0tLS0tLS0tCiogYGFz\nc2lnbmVlYDogYE5hbWVkVXNlcmAKKiBgYm9keWA6IHN0cmluZwoqIGBjbG9z\nZWRfYXRgOiBkYXRldGltZS5kYXRldGltZQoqIGBjbG9zZWRfYnlgOiBgTmFt\nZWRVc2VyYAoqIGBjb21tZW50c2A6IGludGVnZXIKKiBgY3JlYXRlZF9hdGA6\nIGRhdGV0aW1lLmRhdGV0aW1lCiogYGh0bWxfdXJsYDogc3RyaW5nCiogYGlk\nYDogaW50ZWdlcgoqIGBsYWJlbHNgOiBsaXN0IG9mIGBMYWJlbGAKKiBgbWls\nZXN0b25lYDogYE1pbGVzdG9uZWAKKiBgbnVtYmVyYDogaW50ZWdlcgoqIGBw\ndWxsX3JlcXVlc3RgOiBgSXNzdWVQdWxsUmVxdWVzdGAKKiBgcmVwb3NpdG9y\neWA6IGBSZXBvc2l0b3J5YAoqIGBzdGF0ZWA6IHN0cmluZwoqIGB0aXRsZWA6\nIHN0cmluZwoqIGB1cGRhdGVkX2F0YDogZGF0ZXRpbWUuZGF0ZXRpbWUKKiBg\ndXJsYDogc3RyaW5nCiogYHVzZXJgOiBgTmFtZWRVc2VyYAoKQ29tbWVudHMK\nLS0tLS0tLS0KKiBgY3JlYXRlX2NvbW1lbnQoIGJvZHkgKWA6IGBJc3N1ZUNv\nbW1lbnRgCiAgICAqIGBib2R5YDogc3RyaW5nCiogYGdldF9jb21tZW50KCBp\nZCApYDogYElzc3VlQ29tbWVudGAKICAgICogYGlkYDogaW50ZWdlcgoqIGBn\nZXRfY29tbWVudHMoKWA6IGBQYWdpbmF0ZWRMaXN0YCBvZiBgSXNzdWVDb21t\nZW50YAoKRXZlbnRzCi0tLS0tLQoqIGBnZXRfZXZlbnRzKClgOiBgUGFnaW5h\ndGVkTGlzdGAgb2YgYElzc3VlRXZlbnRgCgpMYWJlbHMKLS0tLS0tCiogYGFk\nZF90b19sYWJlbHMoIGxhYmVsLCAuLi4gKWAKICAgICogYGxhYmVsYDogYExh\nYmVsYAoqIGBkZWxldGVfbGFiZWxzKClgCiogYGdldF9sYWJlbHMoKWA6IGBQ\nYWdpbmF0ZWRMaXN0YCBvZiBgTGFiZWxgCiogYHJlbW92ZV9mcm9tX2xhYmVs\ncyggbGFiZWwgKWAKICAgICogYGxhYmVsYDogYExhYmVsYAoqIGBzZXRfbGFi\nZWxzKCBsYWJlbCwgLi4uIClgCiAgICAqIGBsYWJlbGA6IGBMYWJlbGAKCk1v\nZGlmaWNhdGlvbgotLS0tLS0tLS0tLS0KKiBgZWRpdCggW3RpdGxlLCBib2R5\nLCBhc3NpZ25lZSwgc3RhdGUsIG1pbGVzdG9uZSwgbGFiZWxzXSApYAogICAg\nKiBgdGl0bGVgOiBzdHJpbmcKICAgICogYGJvZHlgOiBzdHJpbmcKICAgICog\nYGFzc2lnbmVlYDogYE5hbWVkVXNlcmAgb3IgTm9uZQogICAgKiBgc3RhdGVg\nOiBzdHJpbmcKICAgICogYG1pbGVzdG9uZWA6IGBNaWxlc3RvbmVgIG9yIE5v\nbmUKICAgICogYGxhYmVsc2A6IGxpc3Qgb2Ygc3RyaW5nCgpDbGFzcyBgSXNz\ndWVDb21tZW50YAo9PT09PT09PT09PT09PT09PT09PQoKQXR0cmlidXRlcwot\nLS0tLS0tLS0tCiogYGJvZHlgOiBzdHJpbmcKKiBgY3JlYXRlZF9hdGA6IGRh\ndGV0aW1lLmRhdGV0aW1lCiogYGlkYDogaW50ZWdlcgoqIGB1cGRhdGVkX2F0\nYDogZGF0ZXRpbWUuZGF0ZXRpbWUKKiBgdXJsYDogc3RyaW5nCiogYHVzZXJg\nOiBgTmFtZWRVc2VyYAoKRGVsZXRpb24KLS0tLS0tLS0KKiBgZGVsZXRlKClg\nCgpNb2RpZmljYXRpb24KLS0tLS0tLS0tLS0tCiogYGVkaXQoIGJvZHkgKWAK\nICAgICogYGJvZHlgOiBzdHJpbmcKCkNsYXNzIGBJc3N1ZUV2ZW50YAo9PT09\nPT09PT09PT09PT09PT0KCkF0dHJpYnV0ZXMKLS0tLS0tLS0tLQoqIGBhY3Rv\ncmA6IGBOYW1lZFVzZXJgCiogYGNvbW1pdF9pZGA6IHN0cmluZwoqIGBjcmVh\ndGVkX2F0YDogZGF0ZXRpbWUuZGF0ZXRpbWUKKiBgZXZlbnRgOiBzdHJpbmcK\nKiBgaWRgOiBpbnRlZ2VyCiogYGlzc3VlYDogYElzc3VlYAoqIGB1cmxgOiBz\ndHJpbmcKCkNsYXNzIGBJc3N1ZVB1bGxSZXF1ZXN0YAo9PT09PT09PT09PT09\nPT09PT09PT09PT0KCkF0dHJpYnV0ZXMKLS0tLS0tLS0tLQoqIGBkaWZmX3Vy\nbGA6IHN0cmluZwoqIGBodG1sX3VybGA6IHN0cmluZwoqIGBwYXRjaF91cmxg\nOiBzdHJpbmcKCkNsYXNzIGBMYWJlbGAKPT09PT09PT09PT09PQoKQXR0cmli\ndXRlcwotLS0tLS0tLS0tCiogYGNvbG9yYDogc3RyaW5nCiogYG5hbWVgOiBz\ndHJpbmcKKiBgdXJsYDogc3RyaW5nCgpEZWxldGlvbgotLS0tLS0tLQoqIGBk\nZWxldGUoKWAKCk1vZGlmaWNhdGlvbgotLS0tLS0tLS0tLS0KKiBgZWRpdCgg\nbmFtZSwgY29sb3IgKWAKICAgICogYG5hbWVgOiBzdHJpbmcKICAgICogYGNv\nbG9yYDogc3RyaW5nCgpDbGFzcyBgTWlsZXN0b25lYAo9PT09PT09PT09PT09\nPT09PQoKQXR0cmlidXRlcwotLS0tLS0tLS0tCiogYGNsb3NlZF9pc3N1ZXNg\nOiBpbnRlZ2VyCiogYGNyZWF0ZWRfYXRgOiBkYXRldGltZS5kYXRldGltZQoq\nIGBjcmVhdG9yYDogYE5hbWVkVXNlcmAKKiBgZGVzY3JpcHRpb25gOiBzdHJp\nbmcKKiBgZHVlX29uYDogZGF0ZXRpbWUuZGF0ZXRpbWUKKiBgaWRgOiBpbnRl\nZ2VyCiogYG51bWJlcmA6IGludGVnZXIKKiBgb3Blbl9pc3N1ZXNgOiBpbnRl\nZ2VyCiogYHN0YXRlYDogc3RyaW5nCiogYHRpdGxlYDogc3RyaW5nCiogYHVy\nbGA6IHN0cmluZwoKRGVsZXRpb24KLS0tLS0tLS0KKiBgZGVsZXRlKClgCgpM\nYWJlbHMKLS0tLS0tCiogYGdldF9sYWJlbHMoKWA6IGBQYWdpbmF0ZWRMaXN0\nYCBvZiBgTGFiZWxgCgpNb2RpZmljYXRpb24KLS0tLS0tLS0tLS0tCiogYGVk\naXQoIHRpdGxlLCBbc3RhdGUsIGRlc2NyaXB0aW9uLCBkdWVfb25dIClgCiAg\nICAqIGB0aXRsZWA6IHN0cmluZwogICAgKiBgc3RhdGVgOiBzdHJpbmcKICAg\nICogYGRlc2NyaXB0aW9uYDogc3RyaW5nCiAgICAqIGBkdWVfb25gOiBkYXRl\nCgpDbGFzcyBgTmFtZWRVc2VyYAo9PT09PT09PT09PT09PT09PQoKQXR0cmli\ndXRlcwotLS0tLS0tLS0tCiogYGF2YXRhcl91cmxgOiBzdHJpbmcKKiBgYmlv\nYDogc3RyaW5nCiogYGJsb2dgOiBzdHJpbmcKKiBgY29sbGFib3JhdG9yc2A6\nIGludGVnZXIKKiBgY29tcGFueWA6IHN0cmluZwoqIGBjb250cmlidXRpb25z\nYDogaW50ZWdlcgoqIGBjcmVhdGVkX2F0YDogZGF0ZXRpbWUuZGF0ZXRpbWUK\nKiBgZGlza191c2FnZWA6IGludGVnZXIKKiBgZW1haWxgOiBzdHJpbmcKKiBg\nZm9sbG93ZXJzYDogaW50ZWdlcgoqIGBmb2xsb3dpbmdgOiBpbnRlZ2VyCiog\nYGdyYXZhdGFyX2lkYDogc3RyaW5nCiogYGhpcmVhYmxlYDogYm9vbAoqIGBo\ndG1sX3VybGA6IHN0cmluZwoqIGBpZGA6IGludGVnZXIKKiBgbG9jYXRpb25g\nOiBzdHJpbmcKKiBgbG9naW5gOiBzdHJpbmcKKiBgbmFtZWA6IHN0cmluZwoq\nIGBvd25lZF9wcml2YXRlX3JlcG9zYDogaW50ZWdlcgoqIGBwbGFuYDogYFBs\nYW5gCiogYHByaXZhdGVfZ2lzdHNgOiBpbnRlZ2VyCiogYHB1YmxpY19naXN0\nc2A6IGludGVnZXIKKiBgcHVibGljX3JlcG9zYDogaW50ZWdlcgoqIGB0b3Rh\nbF9wcml2YXRlX3JlcG9zYDogaW50ZWdlcgoqIGB0eXBlYDogc3RyaW5nCiog\nYHVybGA6IHN0cmluZwoKRXZlbnRzCi0tLS0tLQoqIGBnZXRfZXZlbnRzKClg\nOiBgUGFnaW5hdGVkTGlzdGAgb2YgYEV2ZW50YAoqIGBnZXRfcHVibGljX2V2\nZW50cygpYDogYFBhZ2luYXRlZExpc3RgIG9mIGBFdmVudGAKKiBgZ2V0X3Jl\nY2VpdmVkX2V2ZW50cygpYDogYFBhZ2luYXRlZExpc3RgIG9mIGBFdmVudGAK\nKiBgZ2V0X3B1YmxpY19yZWNlaXZlZF9ldmVudHMoKWA6IGBQYWdpbmF0ZWRM\naXN0YCBvZiBgRXZlbnRgCgpGb2xsb3dlcnMKLS0tLS0tLS0tCiogYGdldF9m\nb2xsb3dlcnMoKWA6IGBQYWdpbmF0ZWRMaXN0YCBvZiBgTmFtZWRVc2VyYAoK\nRm9sbG93aW5nCi0tLS0tLS0tLQoqIGBnZXRfZm9sbG93aW5nKClgOiBgUGFn\naW5hdGVkTGlzdGAgb2YgYE5hbWVkVXNlcmAKCkdpc3RzCi0tLS0tCiogYGNy\nZWF0ZV9naXN0KCBwdWJsaWMsIGZpbGVzLCBbZGVzY3JpcHRpb25dIClgOiBg\nR2lzdGAKICAgICogYHB1YmxpY2A6IGJvb2wKICAgICogYGZpbGVzYDogZGlj\ndCBvZiBzdHJpbmcgdG8gYElucHV0RmlsZUNvbnRlbnRgCiAgICAqIGBkZXNj\ncmlwdGlvbmA6IHN0cmluZwoqIGBnZXRfZ2lzdHMoKWA6IGBQYWdpbmF0ZWRM\naXN0YCBvZiBgR2lzdGAKCk9yZ3MKLS0tLQoqIGBnZXRfb3JncygpYDogYFBh\nZ2luYXRlZExpc3RgIG9mIGBPcmdhbml6YXRpb25gCgpSZXBvcwotLS0tLQoq\nIGBnZXRfcmVwbyggbmFtZSApYDogYFJlcG9zaXRvcnlgCiAgICAqIGBuYW1l\nYDogc3RyaW5nCiogYGdldF9yZXBvcyggW3R5cGVdIClgOiBgUGFnaW5hdGVk\nTGlzdGAgb2YgYFJlcG9zaXRvcnlgCiAgICAqIGB0eXBlYDogc3RyaW5nCgpT\ndGFycmVkCi0tLS0tLS0KKiBgZ2V0X3N0YXJyZWQoKWA6IGBQYWdpbmF0ZWRM\naXN0YCBvZiBgUmVwb3NpdG9yeWAKClN1YnNjcmlwdGlvbnMKLS0tLS0tLS0t\nLS0tLQoqIGBnZXRfc3Vic2NyaXB0aW9ucygpYDogYFBhZ2luYXRlZExpc3Rg\nIG9mIGBSZXBvc2l0b3J5YAoKV2F0Y2hlZAotLS0tLS0tCiogYGdldF93YXRj\naGVkKClgOiBgUGFnaW5hdGVkTGlzdGAgb2YgYFJlcG9zaXRvcnlgCgpDbGFz\ncyBgT3JnYW5pemF0aW9uYAo9PT09PT09PT09PT09PT09PT09PQoKQXR0cmli\ndXRlcwotLS0tLS0tLS0tCiogYGF2YXRhcl91cmxgOiBzdHJpbmcKKiBgYmls\nbGluZ19lbWFpbGA6IHN0cmluZwoqIGBibG9nYDogc3RyaW5nCiogYGNvbGxh\nYm9yYXRvcnNgOiBpbnRlZ2VyCiogYGNvbXBhbnlgOiBzdHJpbmcKKiBgY3Jl\nYXRlZF9hdGA6IGRhdGV0aW1lLmRhdGV0aW1lCiogYGRpc2tfdXNhZ2VgOiBp\nbnRlZ2VyCiogYGVtYWlsYDogc3RyaW5nCiogYGZvbGxvd2Vyc2A6IGludGVn\nZXIKKiBgZm9sbG93aW5nYDogaW50ZWdlcgoqIGBncmF2YXRhcl9pZGA6IHN0\ncmluZwoqIGBodG1sX3VybGA6IHN0cmluZwoqIGBpZGA6IGludGVnZXIKKiBg\nbG9jYXRpb25gOiBzdHJpbmcKKiBgbG9naW5gOiBzdHJpbmcKKiBgbmFtZWA6\nIHN0cmluZwoqIGBvd25lZF9wcml2YXRlX3JlcG9zYDogaW50ZWdlcgoqIGBw\nbGFuYDogYFBsYW5gCiogYHByaXZhdGVfZ2lzdHNgOiBpbnRlZ2VyCiogYHB1\nYmxpY19naXN0c2A6IGludGVnZXIKKiBgcHVibGljX3JlcG9zYDogaW50ZWdl\ncgoqIGB0b3RhbF9wcml2YXRlX3JlcG9zYDogaW50ZWdlcgoqIGB0eXBlYDog\nc3RyaW5nCiogYHVybGA6IHN0cmluZwoKRXZlbnRzCi0tLS0tLQoqIGBnZXRf\nZXZlbnRzKClgOiBgUGFnaW5hdGVkTGlzdGAgb2YgYEV2ZW50YAoKRm9ya2lu\nZwotLS0tLS0tCiogYGNyZWF0ZV9mb3JrKCByZXBvIClgOiBgUmVwb3NpdG9y\neWAKICAgICogYHJlcG9gOiBgUmVwb3NpdG9yeWAKCk1lbWJlcnMKLS0tLS0t\nLQoqIGBnZXRfbWVtYmVycygpYDogYFBhZ2luYXRlZExpc3RgIG9mIGBOYW1l\nZFVzZXJgCiogYGhhc19pbl9tZW1iZXJzKCBtZW1iZXIgKWA6IGJvb2wKICAg\nICogYG1lbWJlcmA6IGBOYW1lZFVzZXJgCiogYHJlbW92ZV9mcm9tX21lbWJl\ncnMoIG1lbWJlciApYAogICAgKiBgbWVtYmVyYDogYE5hbWVkVXNlcmAKCk1v\nZGlmaWNhdGlvbgotLS0tLS0tLS0tLS0KKiBgZWRpdCggW2JpbGxpbmdfZW1h\naWwsIGJsb2csIGNvbXBhbnksIGVtYWlsLCBsb2NhdGlvbiwgbmFtZV0gKWAK\nICAgICogYGJpbGxpbmdfZW1haWxgOiBzdHJpbmcKICAgICogYGJsb2dgOiBz\ndHJpbmcKICAgICogYGNvbXBhbnlgOiBzdHJpbmcKICAgICogYGVtYWlsYDog\nc3RyaW5nCiAgICAqIGBsb2NhdGlvbmA6IHN0cmluZwogICAgKiBgbmFtZWA6\nIHN0cmluZwoKUHVibGljX21lbWJlcnMKLS0tLS0tLS0tLS0tLS0KKiBgYWRk\nX3RvX3B1YmxpY19tZW1iZXJzKCBwdWJsaWNfbWVtYmVyIClgCiAgICAqIGBw\ndWJsaWNfbWVtYmVyYDogYE5hbWVkVXNlcmAKKiBgZ2V0X3B1YmxpY19tZW1i\nZXJzKClgOiBgUGFnaW5hdGVkTGlzdGAgb2YgYE5hbWVkVXNlcmAKKiBgaGFz\nX2luX3B1YmxpY19tZW1iZXJzKCBwdWJsaWNfbWVtYmVyIClgOiBib29sCiAg\nICAqIGBwdWJsaWNfbWVtYmVyYDogYE5hbWVkVXNlcmAKKiBgcmVtb3ZlX2Zy\nb21fcHVibGljX21lbWJlcnMoIHB1YmxpY19tZW1iZXIgKWAKICAgICogYHB1\nYmxpY19tZW1iZXJgOiBgTmFtZWRVc2VyYAoKUmVwb3MKLS0tLS0KKiBgY3Jl\nYXRlX3JlcG8oIG5hbWUsIFtkZXNjcmlwdGlvbiwgaG9tZXBhZ2UsIHByaXZh\ndGUsIGhhc19pc3N1ZXMsIGhhc193aWtpLCBoYXNfZG93bmxvYWRzLCB0ZWFt\nX2lkLCBhdXRvX2luaXQsIGdpdGlnbm9yZV90ZW1wbGF0ZV0gKWA6IGBSZXBv\nc2l0b3J5YAogICAgKiBgbmFtZWA6IHN0cmluZwogICAgKiBgZGVzY3JpcHRp\nb25gOiBzdHJpbmcKICAgICogYGhvbWVwYWdlYDogc3RyaW5nCiAgICAqIGBw\ncml2YXRlYDogYm9vbAogICAgKiBgaGFzX2lzc3Vlc2A6IGJvb2wKICAgICog\nYGhhc193aWtpYDogYm9vbAogICAgKiBgaGFzX2Rvd25sb2Fkc2A6IGJvb2wK\nICAgICogYHRlYW1faWRgOiBgVGVhbWAKICAgICogYGF1dG9faW5pdGA6IGJv\nb2wKICAgICogYGdpdGlnbm9yZV90ZW1wbGF0ZWA6IHN0cmluZwoqIGBnZXRf\ncmVwbyggbmFtZSApYDogYFJlcG9zaXRvcnlgCiAgICAqIGBuYW1lYDogc3Ry\naW5nCiogYGdldF9yZXBvcyggW3R5cGVdIClgOiBgUGFnaW5hdGVkTGlzdGAg\nb2YgYFJlcG9zaXRvcnlgCiAgICAqIGB0eXBlYDogc3RyaW5nCgpUZWFtcwot\nLS0tLQoqIGBjcmVhdGVfdGVhbSggbmFtZSwgW3JlcG9fbmFtZXMsIHBlcm1p\nc3Npb25dIClgOiBgVGVhbWAKICAgICogYG5hbWVgOiBzdHJpbmcKICAgICog\nYHJlcG9fbmFtZXNgOiBsaXN0IG9mIGBSZXBvc2l0b3J5YAogICAgKiBgcGVy\nbWlzc2lvbmA6IHN0cmluZwoqIGBnZXRfdGVhbSggaWQgKWA6IGBUZWFtYAog\nICAgKiBgaWRgOiBpbnRlZ2VyCiogYGdldF90ZWFtcygpYDogYFBhZ2luYXRl\nZExpc3RgIG9mIGBUZWFtYAoKQ2xhc3MgYFBlcm1pc3Npb25zYAo9PT09PT09\nPT09PT09PT09PT09CgpBdHRyaWJ1dGVzCi0tLS0tLS0tLS0KKiBgYWRtaW5g\nOiBib29sCiogYHB1bGxgOiBib29sCiogYHB1c2hgOiBib29sCgpDbGFzcyBg\nUGxhbmAKPT09PT09PT09PT09CgpBdHRyaWJ1dGVzCi0tLS0tLS0tLS0KKiBg\nY29sbGFib3JhdG9yc2A6IGludGVnZXIKKiBgbmFtZWA6IHN0cmluZwoqIGBw\ncml2YXRlX3JlcG9zYDogaW50ZWdlcgoqIGBzcGFjZWA6IGludGVnZXIKCkNs\nYXNzIGBQdWxsUmVxdWVzdGAKPT09PT09PT09PT09PT09PT09PQoKQXR0cmli\ndXRlcwotLS0tLS0tLS0tCiogYGFkZGl0aW9uc2A6IGludGVnZXIKKiBgYXNz\naWduZWVgOiBgTmFtZWRVc2VyYAoqIGBiYXNlYDogYFB1bGxSZXF1ZXN0UGFy\ndGAKKiBgYm9keWA6IHN0cmluZwoqIGBjaGFuZ2VkX2ZpbGVzYDogaW50ZWdl\ncgoqIGBjbG9zZWRfYXRgOiBkYXRldGltZS5kYXRldGltZQoqIGBjb21tZW50\nc2A6IGludGVnZXIKKiBgY29tbWl0c2A6IGludGVnZXIKKiBgY3JlYXRlZF9h\ndGA6IGRhdGV0aW1lLmRhdGV0aW1lCiogYGRlbGV0aW9uc2A6IGludGVnZXIK\nKiBgZGlmZl91cmxgOiBzdHJpbmcKKiBgaGVhZGA6IGBQdWxsUmVxdWVzdFBh\ncnRgCiogYGh0bWxfdXJsYDogc3RyaW5nCiogYGlkYDogaW50ZWdlcgoqIGBp\nc3N1ZV91cmxgOiBzdHJpbmcKKiBgbWVyZ2VhYmxlYDogYm9vbAoqIGBtZXJn\nZWRgOiBib29sCiogYG1lcmdlZF9hdGA6IGRhdGV0aW1lLmRhdGV0aW1lCiog\nYG1lcmdlZF9ieWA6IGBOYW1lZFVzZXJgCiogYG51bWJlcmA6IGludGVnZXIK\nKiBgcGF0Y2hfdXJsYDogc3RyaW5nCiogYHJldmlld19jb21tZW50c2A6IGlu\ndGVnZXIKKiBgc3RhdGVgOiBzdHJpbmcKKiBgdGl0bGVgOiBzdHJpbmcKKiBg\ndXBkYXRlZF9hdGA6IGRhdGV0aW1lLmRhdGV0aW1lCiogYHVybGA6IHN0cmlu\nZwoqIGB1c2VyYDogYE5hbWVkVXNlcmAKClJldmlldyBjb21tZW50cwotLS0t\nLS0tLS0tLS0tLS0KKiBgY3JlYXRlX2NvbW1lbnQoIGJvZHksIGNvbW1pdF9p\nZCwgcGF0aCwgcG9zaXRpb24gKWA6IGBQdWxsUmVxdWVzdENvbW1lbnRgCiAg\nICAqIGBib2R5YDogc3RyaW5nCiAgICAqIGBjb21taXRfaWRgOiBgQ29tbWl0\nYAogICAgKiBgcGF0aGA6IHN0cmluZwogICAgKiBgcG9zaXRpb25gOiBpbnRl\nZ2VyCiogYGNyZWF0ZV9yZXZpZXdfY29tbWVudCggYm9keSwgY29tbWl0X2lk\nLCBwYXRoLCBwb3NpdGlvbiApYDogYFB1bGxSZXF1ZXN0Q29tbWVudGAKICAg\nICogYGJvZHlgOiBzdHJpbmcKICAgICogYGNvbW1pdF9pZGA6IGBDb21taXRg\nCiAgICAqIGBwYXRoYDogc3RyaW5nCiAgICAqIGBwb3NpdGlvbmA6IGludGVn\nZXIKKiBgZ2V0X2NvbW1lbnQoIGlkIClgOiBgUHVsbFJlcXVlc3RDb21tZW50\nYAogICAgKiBgaWRgOiBpbnRlZ2VyCiogYGdldF9yZXZpZXdfY29tbWVudCgg\naWQgKWA6IGBQdWxsUmVxdWVzdENvbW1lbnRgCiAgICAqIGBpZGA6IGludGVn\nZXIKKiBgZ2V0X2NvbW1lbnRzKClgOiBgUGFnaW5hdGVkTGlzdGAgb2YgYFB1\nbGxSZXF1ZXN0Q29tbWVudGAKKiBgZ2V0X3Jldmlld19jb21tZW50cygpYDog\nYFBhZ2luYXRlZExpc3RgIG9mIGBQdWxsUmVxdWVzdENvbW1lbnRgCgpDb21t\naXRzCi0tLS0tLS0KKiBgZ2V0X2NvbW1pdHMoKWA6IGBQYWdpbmF0ZWRMaXN0\nYCBvZiBgQ29tbWl0YAoKRmlsZXMKLS0tLS0KKiBgZ2V0X2ZpbGVzKClgOiBg\nUGFnaW5hdGVkTGlzdGAgb2YgYEZpbGVgCgpJc3N1ZV9jb21tZW50cwotLS0t\nLS0tLS0tLS0tLQoqIGBjcmVhdGVfaXNzdWVfY29tbWVudCggYm9keSApYDog\nYElzc3VlQ29tbWVudGAKICAgICogYGJvZHlgOiBzdHJpbmcKKiBgZ2V0X2lz\nc3VlX2NvbW1lbnQoIGlkIClgOiBgSXNzdWVDb21tZW50YAogICAgKiBgaWRg\nOiBpbnRlZ2VyCiogYGdldF9pc3N1ZV9jb21tZW50cygpYDogYFBhZ2luYXRl\nZExpc3RgIG9mIGBJc3N1ZUNvbW1lbnRgCgpNZXJnaW5nCi0tLS0tLS0KKiBg\naXNfbWVyZ2VkKClgOiBib29sCiogYG1lcmdlKCBbY29tbWl0X21lc3NhZ2Vd\nIClgOiBgUHVsbFJlcXVlc3RNZXJnZVN0YXR1c2AKICAgICogYGNvbW1pdF9t\nZXNzYWdlYDogc3RyaW5nCgpNb2RpZmljYXRpb24KLS0tLS0tLS0tLS0tCiog\nYGVkaXQoIFt0aXRsZSwgYm9keSwgc3RhdGVdIClgCiAgICAqIGB0aXRsZWA6\nIHN0cmluZwogICAgKiBgYm9keWA6IHN0cmluZwogICAgKiBgc3RhdGVgOiBz\ndHJpbmcKCkNsYXNzIGBQdWxsUmVxdWVzdENvbW1lbnRgCj09PT09PT09PT09\nPT09PT09PT09PT09PT09CgpBdHRyaWJ1dGVzCi0tLS0tLS0tLS0KKiBgYm9k\neWA6IHN0cmluZwoqIGBjb21taXRfaWRgOiBzdHJpbmcKKiBgY3JlYXRlZF9h\ndGA6IGRhdGV0aW1lLmRhdGV0aW1lCiogYGlkYDogaW50ZWdlcgoqIGBvcmln\naW5hbF9jb21taXRfaWRgOiBzdHJpbmcKKiBgb3JpZ2luYWxfcG9zaXRpb25g\nOiBpbnRlZ2VyCiogYHBhdGhgOiBzdHJpbmcKKiBgcG9zaXRpb25gOiBpbnRl\nZ2VyCiogYHVwZGF0ZWRfYXRgOiBkYXRldGltZS5kYXRldGltZQoqIGB1cmxg\nOiBzdHJpbmcKKiBgdXNlcmA6IGBOYW1lZFVzZXJgCgpEZWxldGlvbgotLS0t\nLS0tLQoqIGBkZWxldGUoKWAKCk1vZGlmaWNhdGlvbgotLS0tLS0tLS0tLS0K\nKiBgZWRpdCggYm9keSApYAogICAgKiBgYm9keWA6IHN0cmluZwoKQ2xhc3Mg\nYFB1bGxSZXF1ZXN0TWVyZ2VTdGF0dXNgCj09PT09PT09PT09PT09PT09PT09\nPT09PT09PT09PQoKQXR0cmlidXRlcwotLS0tLS0tLS0tCiogYG1lcmdlZGA6\nIGJvb2wKKiBgbWVzc2FnZWA6IHN0cmluZwoqIGBzaGFgOiBzdHJpbmcKCkNs\nYXNzIGBQdWxsUmVxdWVzdFBhcnRgCj09PT09PT09PT09PT09PT09PT09PT09\nCgpBdHRyaWJ1dGVzCi0tLS0tLS0tLS0KKiBgbGFiZWxgOiBzdHJpbmcKKiBg\ncmVmYDogc3RyaW5nCiogYHJlcG9gOiBgUmVwb3NpdG9yeWAKKiBgc2hhYDog\nc3RyaW5nCiogYHVzZXJgOiBgTmFtZWRVc2VyYAoKQ2xhc3MgYFJlcG9zaXRv\ncnlgCj09PT09PT09PT09PT09PT09PQoKQXR0cmlidXRlcwotLS0tLS0tLS0t\nCiogYGNsb25lX3VybGA6IHN0cmluZwoqIGBjcmVhdGVkX2F0YDogZGF0ZXRp\nbWUuZGF0ZXRpbWUKKiBgZGVzY3JpcHRpb25gOiBzdHJpbmcKKiBgZm9ya2A6\nIGJvb2wKKiBgZm9ya3NgOiBpbnRlZ2VyCiogYGZ1bGxfbmFtZWA6IHN0cmlu\nZwoqIGBnaXRfdXJsYDogc3RyaW5nCiogYGhhc19kb3dubG9hZHNgOiBib29s\nCiogYGhhc19pc3N1ZXNgOiBib29sCiogYGhhc193aWtpYDogYm9vbAoqIGBo\nb21lcGFnZWA6IHN0cmluZwoqIGBodG1sX3VybGA6IHN0cmluZwoqIGBpZGA6\nIGludGVnZXIKKiBgbGFuZ3VhZ2VgOiBzdHJpbmcKKiBgbWFzdGVyX2JyYW5j\naGA6IHN0cmluZwoqIGBuYW1lYDogc3RyaW5nCiogYG9wZW5faXNzdWVzYDog\naW50ZWdlcgoqIGBvcmdhbml6YXRpb25gOiBgT3JnYW5pemF0aW9uYAoqIGBv\nd25lcmA6IGBOYW1lZFVzZXJgCiogYHBhcmVudGA6IGBSZXBvc2l0b3J5YAoq\nIGBwZXJtaXNzaW9uc2A6IGBQZXJtaXNzaW9uc2AKKiBgcHJpdmF0ZWA6IGJv\nb2wKKiBgcHVzaGVkX2F0YDogZGF0ZXRpbWUuZGF0ZXRpbWUKKiBgc2l6ZWA6\nIGludGVnZXIKKiBgc291cmNlYDogYFJlcG9zaXRvcnlgCiogYHNzaF91cmxg\nOiBzdHJpbmcKKiBgc3ZuX3VybGA6IHN0cmluZwoqIGB1cGRhdGVkX2F0YDog\nZGF0ZXRpbWUuZGF0ZXRpbWUKKiBgdXJsYDogc3RyaW5nCiogYHdhdGNoZXJz\nYDogaW50ZWdlcgoKQ29tcGFyaXNvbgotLS0tLS0tLS0tCiogYGNvbXBhcmUo\nIGJhc2UsIGhlYWQgKWA6IGBDb21wYXJpc29uYAogICAgKiBgYmFzZWA6IHN0\ncmluZwogICAgKiBgaGVhZGA6IHN0cmluZwoKQXNzaWduZWVzCi0tLS0tLS0t\nLQoqIGBnZXRfYXNzaWduZWVzKClgOiBgUGFnaW5hdGVkTGlzdGAgb2YgYE5h\nbWVkVXNlcmAKKiBgaGFzX2luX2Fzc2lnbmVlcyggYXNzaWduZWUgKWA6IGJv\nb2wKICAgICogYGFzc2lnbmVlYDogYE5hbWVkVXNlcmAKCkJyYW5jaGVzCi0t\nLS0tLS0tCiogYGdldF9icmFuY2goIGJyYW5jaCApYDogYEJyYW5jaGAKICAg\nICogYGJyYW5jaGA6IHN0cmluZwoqIGBnZXRfYnJhbmNoZXMoKWA6IGBQYWdp\nbmF0ZWRMaXN0YCBvZiBgQnJhbmNoYAoKQ29sbGFib3JhdG9ycwotLS0tLS0t\nLS0tLS0tCiogYGFkZF90b19jb2xsYWJvcmF0b3JzKCBjb2xsYWJvcmF0b3Ig\nKWAKICAgICogYGNvbGxhYm9yYXRvcmA6IGBOYW1lZFVzZXJgCiogYGdldF9j\nb2xsYWJvcmF0b3JzKClgOiBgUGFnaW5hdGVkTGlzdGAgb2YgYE5hbWVkVXNl\ncmAKKiBgaGFzX2luX2NvbGxhYm9yYXRvcnMoIGNvbGxhYm9yYXRvciApYDog\nYm9vbAogICAgKiBgY29sbGFib3JhdG9yYDogYE5hbWVkVXNlcmAKKiBgcmVt\nb3ZlX2Zyb21fY29sbGFib3JhdG9ycyggY29sbGFib3JhdG9yIClgCiAgICAq\nIGBjb2xsYWJvcmF0b3JgOiBgTmFtZWRVc2VyYAoKQ29tbWVudHMKLS0tLS0t\nLS0KKiBgZ2V0X2NvbW1lbnQoIGlkIClgOiBgQ29tbWl0Q29tbWVudGAKICAg\nICogYGlkYDogaW50ZWdlcgoqIGBnZXRfY29tbWVudHMoKWA6IGBQYWdpbmF0\nZWRMaXN0YCBvZiBgQ29tbWl0Q29tbWVudGAKCkNvbW1pdHMKLS0tLS0tLQoq\nIGBnZXRfY29tbWl0KCBzaGEgKWA6IGBDb21taXRgCiAgICAqIGBzaGFgOiBz\ndHJpbmcKKiBgZ2V0X2NvbW1pdHMoIFtzaGEsIHBhdGhdIClgOiBgUGFnaW5h\ndGVkTGlzdGAgb2YgYENvbW1pdGAKICAgICogYHNoYWA6IHN0cmluZwogICAg\nKiBgcGF0aGA6IHN0cmluZwoKQ29udGVudHMKLS0tLS0tLS0KKiBgZ2V0X3Jl\nYWRtZSgpYDogYENvbnRlbnRGaWxlYAoqIGBnZXRfY29udGVudHMoIHBhdGgg\nKWA6IGBDb250ZW50RmlsZWAKICAgICogYHBhdGhgOiBzdHJpbmcKKiBgZ2V0\nX2FyY2hpdmVfbGluayggYXJjaGl2ZV9mb3JtYXQsIFtyZWZdIClgOiBzdHJp\nbmcKICAgICogYGFyY2hpdmVfZm9ybWF0YDogc3RyaW5nCiAgICAqIGByZWZg\nOiBzdHJpbmcKCkNvbnRyaWJ1dG9ycwotLS0tLS0tLS0tLS0KKiBgZ2V0X2Nv\nbnRyaWJ1dG9ycygpYDogYFBhZ2luYXRlZExpc3RgIG9mIGBOYW1lZFVzZXJg\nCgpEZWxldGlvbgotLS0tLS0tLQoqIGBkZWxldGUoKWAKCkRvd25sb2Fkcwot\nLS0tLS0tLS0KKiBgY3JlYXRlX2Rvd25sb2FkKCBuYW1lLCBzaXplLCBbZGVz\nY3JpcHRpb24sIGNvbnRlbnRfdHlwZV0gKWA6IGBEb3dubG9hZGAKICAgICog\nYG5hbWVgOiBzdHJpbmcKICAgICogYHNpemVgOiBpbnRlZ2VyCiAgICAqIGBk\nZXNjcmlwdGlvbmA6IHN0cmluZwogICAgKiBgY29udGVudF90eXBlYDogc3Ry\naW5nCiogYGdldF9kb3dubG9hZCggaWQgKWA6IGBEb3dubG9hZGAKICAgICog\nYGlkYDogaW50ZWdlcgoqIGBnZXRfZG93bmxvYWRzKClgOiBgUGFnaW5hdGVk\nTGlzdGAgb2YgYERvd25sb2FkYAoKRXZlbnRzCi0tLS0tLQoqIGBnZXRfZXZl\nbnRzKClgOiBgUGFnaW5hdGVkTGlzdGAgb2YgYEV2ZW50YAoqIGBnZXRfbmV0\nd29ya19ldmVudHMoKWA6IGBQYWdpbmF0ZWRMaXN0YCBvZiBgRXZlbnRgCgpG\nb3JrcwotLS0tLQoqIGBnZXRfZm9ya3MoKWA6IGBQYWdpbmF0ZWRMaXN0YCBv\nZiBgUmVwb3NpdG9yeWAKCkdpdF9ibG9icwotLS0tLS0tLS0KKiBgY3JlYXRl\nX2dpdF9ibG9iKCBjb250ZW50LCBlbmNvZGluZyApYDogYEdpdEJsb2JgCiAg\nICAqIGBjb250ZW50YDogc3RyaW5nCiAgICAqIGBlbmNvZGluZ2A6IHN0cmlu\nZwoqIGBnZXRfZ2l0X2Jsb2IoIHNoYSApYDogYEdpdEJsb2JgCiAgICAqIGBz\naGFgOiBzdHJpbmcKCkdpdF9jb21taXRzCi0tLS0tLS0tLS0tCiogYGNyZWF0\nZV9naXRfY29tbWl0KCBtZXNzYWdlLCB0cmVlLCBwYXJlbnRzLCBbYXV0aG9y\nLCBjb21taXR0ZXJdIClgOiBgR2l0Q29tbWl0YAogICAgKiBgbWVzc2FnZWA6\nIHN0cmluZwogICAgKiBgdHJlZWA6IGBHaXRUcmVlYAogICAgKiBgcGFyZW50\nc2A6IGxpc3Qgb2YgYEdpdENvbW1pdGAKICAgICogYGF1dGhvcmA6IGBJbnB1\ndEdpdEF1dGhvcmAKICAgICogYGNvbW1pdHRlcmA6IGBJbnB1dEdpdEF1dGhv\ncmAKKiBgZ2V0X2dpdF9jb21taXQoIHNoYSApYDogYEdpdENvbW1pdGAKICAg\nICogYHNoYWA6IHN0cmluZwoKR2l0X3JlZnMKLS0tLS0tLS0KKiBgY3JlYXRl\nX2dpdF9yZWYoIHJlZiwgc2hhIClgOiBgR2l0UmVmYAogICAgKiBgcmVmYDog\nc3RyaW5nCiAgICAqIGBzaGFgOiBzdHJpbmcKKiBgZ2V0X2dpdF9yZWYoIHJl\nZiApYDogYEdpdFJlZmAKICAgICogYHJlZmA6IHN0cmluZwoqIGBnZXRfZ2l0\nX3JlZnMoKWA6IGBQYWdpbmF0ZWRMaXN0YCBvZiBgR2l0UmVmYAoKR2l0X3Rh\nZ3MKLS0tLS0tLS0KKiBgY3JlYXRlX2dpdF90YWcoIHRhZywgbWVzc2FnZSwg\nb2JqZWN0LCB0eXBlLCBbdGFnZ2VyXSApYDogYEdpdFRhZ2AKICAgICogYHRh\nZ2A6IHN0cmluZwogICAgKiBgbWVzc2FnZWA6IHN0cmluZwogICAgKiBgb2Jq\nZWN0YDogc3RyaW5nCiAgICAqIGB0eXBlYDogc3RyaW5nCiAgICAqIGB0YWdn\nZXJgOiBgSW5wdXRHaXRBdXRob3JgCiogYGdldF9naXRfdGFnKCBzaGEgKWA6\nIGBHaXRUYWdgCiAgICAqIGBzaGFgOiBzdHJpbmcKCkdpdF90cmVlcwotLS0t\nLS0tLS0KKiBgY3JlYXRlX2dpdF90cmVlKCB0cmVlLCBbYmFzZV90cmVlXSAp\nYDogYEdpdFRyZWVgCiAgICAqIGB0cmVlYDogbGlzdCBvZiBgSW5wdXRHaXRU\ncmVlRWxlbWVudGAKICAgICogYGJhc2VfdHJlZWA6IGBHaXRUcmVlYAoqIGBn\nZXRfZ2l0X3RyZWUoIHNoYSwgW3JlY3Vyc2l2ZV0gKWA6IGBHaXRUcmVlYAog\nICAgKiBgc2hhYDogc3RyaW5nCiAgICAqIGByZWN1cnNpdmVgOiBib29sCgpI\nb29rcwotLS0tLQoqIGBjcmVhdGVfaG9vayggbmFtZSwgY29uZmlnLCBbZXZl\nbnRzLCBhY3RpdmVdIClgOiBgSG9va2AKICAgICogYG5hbWVgOiBzdHJpbmcK\nICAgICogYGNvbmZpZ2A6IGRpY3QKICAgICogYGV2ZW50c2A6IGxpc3Qgb2Yg\nc3RyaW5nCiAgICAqIGBhY3RpdmVgOiBib29sCiogYGdldF9ob29rKCBpZCAp\nYDogYEhvb2tgCiAgICAqIGBpZGA6IGludGVnZXIKKiBgZ2V0X2hvb2tzKClg\nOiBgUGFnaW5hdGVkTGlzdGAgb2YgYEhvb2tgCgpJc3N1ZXMKLS0tLS0tCiog\nYGNyZWF0ZV9pc3N1ZSggdGl0bGUsIFtib2R5LCBhc3NpZ25lZSwgbWlsZXN0\nb25lLCBsYWJlbHNdIClgOiBgSXNzdWVgCiAgICAqIGB0aXRsZWA6IHN0cmlu\nZwogICAgKiBgYm9keWA6IHN0cmluZwogICAgKiBgYXNzaWduZWVgOiBgTmFt\nZWRVc2VyYAogICAgKiBgbWlsZXN0b25lYDogYE1pbGVzdG9uZWAKICAgICog\nYGxhYmVsc2A6IGxpc3Qgb2YgYExhYmVsYAoqIGBnZXRfaXNzdWUoIG51bWJl\nciApYDogYElzc3VlYAogICAgKiBgbnVtYmVyYDogaW50ZWdlcgoqIGBnZXRf\naXNzdWVzKCBbbWlsZXN0b25lLCBzdGF0ZSwgYXNzaWduZWUsIG1lbnRpb25l\nZCwgbGFiZWxzLCBzb3J0LCBkaXJlY3Rpb24sIHNpbmNlXSApYDogYFBhZ2lu\nYXRlZExpc3RgIG9mIGBJc3N1ZWAKICAgICogYG1pbGVzdG9uZWA6IGBNaWxl\nc3RvbmVgIG9yICJub25lIiBvciAiKiIKICAgICogYHN0YXRlYDogc3RyaW5n\nCiAgICAqIGBhc3NpZ25lZWA6IGBOYW1lZFVzZXJgIG9yICJub25lIiBvciAi\nKiIKICAgICogYG1lbnRpb25lZGA6IGBOYW1lZFVzZXJgCiAgICAqIGBsYWJl\nbHNgOiBsaXN0IG9mIGBMYWJlbGAKICAgICogYHNvcnRgOiBzdHJpbmcKICAg\nICogYGRpcmVjdGlvbmA6IHN0cmluZwogICAgKiBgc2luY2VgOiBkYXRldGlt\nZS5kYXRldGltZQoqIGBsZWdhY3lfc2VhcmNoX2lzc3Vlcyggc3RhdGUsIGtl\neXdvcmQgKWA6IGBQYWdpbmF0ZWRMaXN0YCBvZiBgSXNzdWVgCiAgICAqIGBz\ndGF0ZWA6ICJvcGVuIiBvciAiY2xvc2VkIgogICAgKiBga2V5d29yZGA6IHN0\ncmluZwoKSXNzdWVzX2V2ZW50cwotLS0tLS0tLS0tLS0tCiogYGdldF9pc3N1\nZXNfZXZlbnQoIGlkIClgOiBgSXNzdWVFdmVudGAKICAgICogYGlkYDogaW50\nZWdlcgoqIGBnZXRfaXNzdWVzX2V2ZW50cygpYDogYFBhZ2luYXRlZExpc3Rg\nIG9mIGBJc3N1ZUV2ZW50YAoKS2V5cwotLS0tCiogYGNyZWF0ZV9rZXkoIHRp\ndGxlLCBrZXkgKWA6IGBSZXBvc2l0b3J5S2V5YAogICAgKiBgdGl0bGVgOiBz\ndHJpbmcKICAgICogYGtleWA6IHN0cmluZwoqIGBnZXRfa2V5KCBpZCApYDog\nYFJlcG9zaXRvcnlLZXlgCiAgICAqIGBpZGA6IGludGVnZXIKKiBgZ2V0X2tl\neXMoKWA6IGBQYWdpbmF0ZWRMaXN0YCBvZiBgUmVwb3NpdG9yeUtleWAKCkxh\nYmVscwotLS0tLS0KKiBgY3JlYXRlX2xhYmVsKCBuYW1lLCBjb2xvciApYDog\nYExhYmVsYAogICAgKiBgbmFtZWA6IHN0cmluZwogICAgKiBgY29sb3JgOiBz\ndHJpbmcKKiBgZ2V0X2xhYmVsKCBuYW1lIClgOiBgTGFiZWxgCiAgICAqIGBu\nYW1lYDogc3RyaW5nCiogYGdldF9sYWJlbHMoKWA6IGBQYWdpbmF0ZWRMaXN0\nYCBvZiBgTGFiZWxgCgpMYW5ndWFnZXMKLS0tLS0tLS0tCiogYGdldF9sYW5n\ndWFnZXMoKWA6IGRpY3Qgb2Ygc3RyaW5nIHRvIGludGVnZXIKCk1lcmdpbmcK\nLS0tLS0tLQoqIGBtZXJnZSggYmFzZSwgaGVhZCwgW2NvbW1pdF9tZXNzYWdl\nXSApYDogYENvbW1pdGAKICAgICogYGJhc2VgOiBzdHJpbmcKICAgICogYGhl\nYWRgOiBzdHJpbmcKICAgICogYGNvbW1pdF9tZXNzYWdlYDogc3RyaW5nCgpN\naWxlc3RvbmVzCi0tLS0tLS0tLS0KKiBgY3JlYXRlX21pbGVzdG9uZSggdGl0\nbGUsIFtzdGF0ZSwgZGVzY3JpcHRpb24sIGR1ZV9vbl0gKWA6IGBNaWxlc3Rv\nbmVgCiAgICAqIGB0aXRsZWA6IHN0cmluZwogICAgKiBgc3RhdGVgOiBzdHJp\nbmcKICAgICogYGRlc2NyaXB0aW9uYDogc3RyaW5nCiAgICAqIGBkdWVfb25g\nOiBkYXRlCiogYGdldF9taWxlc3RvbmUoIG51bWJlciApYDogYE1pbGVzdG9u\nZWAKICAgICogYG51bWJlcmA6IGludGVnZXIKKiBgZ2V0X21pbGVzdG9uZXMo\nIFtzdGF0ZSwgc29ydCwgZGlyZWN0aW9uXSApYDogYFBhZ2luYXRlZExpc3Rg\nIG9mIGBNaWxlc3RvbmVgCiAgICAqIGBzdGF0ZWA6IHN0cmluZwogICAgKiBg\nc29ydGA6IHN0cmluZwogICAgKiBgZGlyZWN0aW9uYDogc3RyaW5nCgpNb2Rp\nZmljYXRpb24KLS0tLS0tLS0tLS0tCiogYGVkaXQoIG5hbWUsIFtkZXNjcmlw\ndGlvbiwgaG9tZXBhZ2UsIHB1YmxpYywgaGFzX2lzc3VlcywgaGFzX3dpa2ks\nIGhhc19kb3dubG9hZHMsIGRlZmF1bHRfYnJhbmNoXSApYAogICAgKiBgbmFt\nZWA6IHN0cmluZwogICAgKiBgZGVzY3JpcHRpb25gOiBzdHJpbmcKICAgICog\nYGhvbWVwYWdlYDogc3RyaW5nCiAgICAqIGBwdWJsaWNgOiBib29sCiAgICAq\nIGBoYXNfaXNzdWVzYDogYm9vbAogICAgKiBgaGFzX3dpa2lgOiBib29sCiAg\nICAqIGBoYXNfZG93bmxvYWRzYDogYm9vbAogICAgKiBgZGVmYXVsdF9icmFu\nY2hgOiBzdHJpbmcKClB1bGxzCi0tLS0tCiogYGNyZWF0ZV9wdWxsKCA8IHRp\ndGxlLCBib2R5LCBiYXNlLCBoZWFkID4gb3IgPCBpc3N1ZSwgYmFzZSwgaGVh\nZCA+IClgOiBgUHVsbFJlcXVlc3RgCiAgICAqIGB0aXRsZWA6IHN0cmluZwog\nICAgKiBgYm9keWA6IHN0cmluZwogICAgKiBgaXNzdWVgOiBgSXNzdWVgCiAg\nICAqIGBiYXNlYDogc3RyaW5nCiAgICAqIGBoZWFkYDogc3RyaW5nCiogYGdl\ndF9wdWxsKCBudW1iZXIgKWA6IGBQdWxsUmVxdWVzdGAKICAgICogYG51bWJl\ncmA6IGludGVnZXIKKiBgZ2V0X3B1bGxzKCBbc3RhdGVdIClgOiBgUGFnaW5h\ndGVkTGlzdGAgb2YgYFB1bGxSZXF1ZXN0YAogICAgKiBgc3RhdGVgOiBzdHJp\nbmcKClN0YXJnYXplcnMKLS0tLS0tLS0tLQoqIGBnZXRfc3RhcmdhemVycygp\nYDogYFBhZ2luYXRlZExpc3RgIG9mIGBOYW1lZFVzZXJgCgpTdWJzY3JpYmVy\ncwotLS0tLS0tLS0tLQoqIGBnZXRfc3Vic2NyaWJlcnMoKWA6IGBQYWdpbmF0\nZWRMaXN0YCBvZiBgTmFtZWRVc2VyYAoKVGFncwotLS0tCiogYGdldF90YWdz\nKClgOiBgUGFnaW5hdGVkTGlzdGAgb2YgYFRhZ2AKClRlYW1zCi0tLS0tCiog\nYGdldF90ZWFtcygpYDogYFBhZ2luYXRlZExpc3RgIG9mIGBUZWFtYAoKV2F0\nY2hlcnMKLS0tLS0tLS0KKiBgZ2V0X3dhdGNoZXJzKClgOiBgUGFnaW5hdGVk\nTGlzdGAgb2YgYE5hbWVkVXNlcmAKCkNsYXNzIGBSZXBvc2l0b3J5S2V5YAo9\nPT09PT09PT09PT09PT09PT09PT0KCkF0dHJpYnV0ZXMKLS0tLS0tLS0tLQoq\nIGBpZGA6IGludGVnZXIKKiBga2V5YDogc3RyaW5nCiogYHRpdGxlYDogc3Ry\naW5nCiogYHVybGA6IHN0cmluZwoqIGB2ZXJpZmllZGA6IGJvb2wKCkRlbGV0\naW9uCi0tLS0tLS0tCiogYGRlbGV0ZSgpYAoKTW9kaWZpY2F0aW9uCi0tLS0t\nLS0tLS0tLQoqIGBlZGl0KCBbdGl0bGUsIGtleV0gKWAKICAgICogYHRpdGxl\nYDogc3RyaW5nCiAgICAqIGBrZXlgOiBzdHJpbmcKCkNsYXNzIGBUYWdgCj09\nPT09PT09PT09CgpBdHRyaWJ1dGVzCi0tLS0tLS0tLS0KKiBgY29tbWl0YDog\nYENvbW1pdGAKKiBgbmFtZWA6IHN0cmluZwoqIGB0YXJiYWxsX3VybGA6IHN0\ncmluZwoqIGB6aXBiYWxsX3VybGA6IHN0cmluZwoKQ2xhc3MgYFRlYW1gCj09\nPT09PT09PT09PQoKQXR0cmlidXRlcwotLS0tLS0tLS0tCiogYGlkYDogaW50\nZWdlcgoqIGBtZW1iZXJzX2NvdW50YDogaW50ZWdlcgoqIGBuYW1lYDogc3Ry\naW5nCiogYHBlcm1pc3Npb25gOiBzdHJpbmcKKiBgcmVwb3NfY291bnRgOiBp\nbnRlZ2VyCiogYHVybGA6IHN0cmluZwoKRGVsZXRpb24KLS0tLS0tLS0KKiBg\nZGVsZXRlKClgCgpNZW1iZXJzCi0tLS0tLS0KKiBgYWRkX3RvX21lbWJlcnMo\nIG1lbWJlciApYAogICAgKiBgbWVtYmVyYDogYE5hbWVkVXNlcmAKKiBgZ2V0\nX21lbWJlcnMoKWA6IGBQYWdpbmF0ZWRMaXN0YCBvZiBgTmFtZWRVc2VyYAoq\nIGBoYXNfaW5fbWVtYmVycyggbWVtYmVyIClgOiBib29sCiAgICAqIGBtZW1i\nZXJgOiBgTmFtZWRVc2VyYAoqIGByZW1vdmVfZnJvbV9tZW1iZXJzKCBtZW1i\nZXIgKWAKICAgICogYG1lbWJlcmA6IGBOYW1lZFVzZXJgCgpNb2RpZmljYXRp\nb24KLS0tLS0tLS0tLS0tCiogYGVkaXQoIG5hbWUsIFtwZXJtaXNzaW9uXSAp\nYAogICAgKiBgbmFtZWA6IHN0cmluZwogICAgKiBgcGVybWlzc2lvbmA6IHN0\ncmluZwoKUmVwb3MKLS0tLS0KKiBgYWRkX3RvX3JlcG9zKCByZXBvIClgCiAg\nICAqIGByZXBvYDogYFJlcG9zaXRvcnlgCiogYGdldF9yZXBvcygpYDogYFBh\nZ2luYXRlZExpc3RgIG9mIGBSZXBvc2l0b3J5YAoqIGBoYXNfaW5fcmVwb3Mo\nIHJlcG8gKWA6IGJvb2wKICAgICogYHJlcG9gOiBgUmVwb3NpdG9yeWAKKiBg\ncmVtb3ZlX2Zyb21fcmVwb3MoIHJlcG8gKWAKICAgICogYHJlcG9gOiBgUmVw\nb3NpdG9yeWAKCkNsYXNzIGBVc2VyS2V5YAo9PT09PT09PT09PT09PT0KCkF0\ndHJpYnV0ZXMKLS0tLS0tLS0tLQoqIGBpZGA6IGludGVnZXIKKiBga2V5YDog\nc3RyaW5nCiogYHRpdGxlYDogc3RyaW5nCiogYHVybGA6IHN0cmluZwoqIGB2\nZXJpZmllZGA6IGJvb2wKCkRlbGV0aW9uCi0tLS0tLS0tCiogYGRlbGV0ZSgp\nYAoKTW9kaWZpY2F0aW9uCi0tLS0tLS0tLS0tLQoqIGBlZGl0KCBbdGl0bGUs\nIGtleV0gKWAKICAgICogYHRpdGxlYDogc3RyaW5nCiAgICAqIGBrZXlgOiBz\ndHJpbmcK\n","_links":{"git":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/07b170f1d3df085278aafbc49164178ba0df7d59","html":"https://github.com/jacquev6/PyGithub/blob/refs/heads/topic/ExperimentOnDocumentation/doc/ReferenceOfClasses.md","self":"https://api.github.com/repos/jacquev6/PyGithub/contents/doc/ReferenceOfClasses.md?ref=refs/heads/topic/ExperimentOnDocumentation"},"git_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/07b170f1d3df085278aafbc49164178ba0df7d59","sha":"07b170f1d3df085278aafbc49164178ba0df7d59","size":32406,"encoding":"base64","name":"ReferenceOfClasses.md"} + diff --git a/lib/github/tests/ReplayData/Repository.testGetContributors.txt b/lib/github/tests/ReplayData/Repository.testGetContributors.txt new file mode 100644 index 0000000000..4d291faab9 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetContributors.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/contributors +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4963'), ('content-length', '318'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"3ce61bc2417a6a4f7b47976a7969c711"'), ('date', 'Sun, 20 May 2012 12:10:52 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"contributions":355,"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"}] + diff --git a/lib/github/tests/ReplayData/Repository.testGetDownloads.txt b/lib/github/tests/ReplayData/Repository.testGetDownloads.txt new file mode 100644 index 0000000000..4ac85b717b --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetDownloads.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/downloads +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4968'), ('content-length', '277'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"209ba3e85bfec4914fb88bb2d12b55e9"'), ('date', 'Sun, 27 May 2012 06:55:04 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"content_type":".py","download_count":0,"url":"https://api.github.com/repos/jacquev6/PyGithub/downloads/245143","size":1024,"name":"Hook.py","created_at":"2012-05-27T06:54:54Z","description":"","id":245143,"html_url":"https://github.com/downloads/jacquev6/PyGithub/Hook.py"}] + diff --git a/lib/github/tests/ReplayData/Repository.testGetEvents.txt b/lib/github/tests/ReplayData/Repository.testGetEvents.txt new file mode 100644 index 0000000000..96c2b7d303 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetEvents.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/events +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4965'), ('content-length', '44412'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next"'), ('etag', '"a0d405b3f385bd0d26640c75b50c95dd"'), ('date', 'Sun, 27 May 2012 06:57:59 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"type":"DownloadEvent","payload":{"download":{"name":"Hook.py","size":1024,"created_at":"2012-05-27T06:54:54Z","content_type":".py","url":"https://api.github.com/repos/jacquev6/PyGithub/downloads/245143","download_count":0,"id":245143,"description":"","html_url":"https://github.com/downloads/jacquev6/PyGithub/Hook.py"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-27T06:54:55Z","id":"1556239111","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"DownloadEvent","payload":{"download":{"name":"htmlcov.zip","size":258048,"created_at":"2012-05-27T06:53:47Z","content_type":".zip","download_count":0,"url":"https://api.github.com/repos/jacquev6/PyGithub/downloads/245142","id":245142,"description":"","html_url":"https://github.com/downloads/jacquev6/PyGithub/htmlcov.zip"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-27T06:53:48Z","id":"1556239049","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"956279094a7383b6a8f00c93770ed02ca711f8e5","size":4,"push_id":80734053,"ref":"refs/heads/topic/RewriteWithGeneratedCode","commits":[{"sha":"8cb3e63e80f3ab741ca580eed791a85fb4e1b968","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/8cb3e63e80f3ab741ca580eed791a85fb4e1b968","distinct":true,"message":"Test Team"},{"sha":"e7fe18b7dd3daa03a6ebb7f83a4f100c0f68e96b","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e7fe18b7dd3daa03a6ebb7f83a4f100c0f68e96b","distinct":true,"message":"Test Organization members"},{"sha":"4169010f17cf66a9f1e43e476115485ed7cda90c","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4169010f17cf66a9f1e43e476115485ed7cda90c","distinct":true,"message":"Improve coverage of Organization"},{"sha":"956279094a7383b6a8f00c93770ed02ca711f8e5","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/956279094a7383b6a8f00c93770ed02ca711f8e5","distinct":true,"message":"Test Repository.create_git_*"}]},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-27T06:00:30Z","id":"1556235497","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"IssuesEvent","payload":{"action":"opened","issue":{"number":30,"created_at":"2012-05-27T05:40:15Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"Body created by PyGithub","comments":0,"title":"Issue also created by PyGithub","updated_at":"2012-05-27T05:40:15Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/30","id":4769659,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":{"number":2,"due_on":"2012-06-04T07:00:00Z","created_at":"2012-03-08T12:22:28Z","title":"Version 1.0: coherent public interface","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","id":93547,"open_issues":10,"closed_issues":2,"description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","state":"open"},"closed_at":null,"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"html_url":"https://github.com/jacquev6/PyGithub/issues/30","labels":[{"name":"Question","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","color":"02e10c"}],"state":"open"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-27T05:40:15Z","id":"1556234207","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"MemberEvent","payload":{"action":"added","member":{"gravatar_id":"1517ed584458ccf83e03f5d77d9699d7","avatar_url":"https://secure.gravatar.com/avatar/1517ed584458ccf83e03f5d77d9699d7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/Lyloa","id":1131432,"login":"Lyloa"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-27T05:34:29Z","id":"1556233923","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"MemberEvent","payload":{"action":"added","member":{"gravatar_id":"1517ed584458ccf83e03f5d77d9699d7","avatar_url":"https://secure.gravatar.com/avatar/1517ed584458ccf83e03f5d77d9699d7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/Lyloa","id":1131432,"login":"Lyloa"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-27T05:33:44Z","id":"1556233882","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"ForkEvent","payload":{"forkee":{"name":"PyGithub","size":348,"has_wiki":false,"created_at":"2012-05-27T05:23:17Z","clone_url":"https://github.com/BeaverSoftware/PyGithub.git","public":true,"watchers":1,"private":false,"updated_at":"2012-05-27T05:23:18Z","git_url":"git://github.com/BeaverSoftware/PyGithub.git","fork":true,"language":"Python","url":"https://api.github.com/repos/BeaverSoftware/PyGithub","ssh_url":"git@github.com:BeaverSoftware/PyGithub.git","id":4460027,"svn_url":"https://github.com/BeaverSoftware/PyGithub","pushed_at":"2012-05-26T20:54:13Z","has_downloads":true,"mirror_url":null,"open_issues":0,"full_name":"BeaverSoftware/PyGithub","has_issues":false,"homepage":"http://vincent-jacques.net/PyGithub","description":"Python library implementing the full Github API v3","forks":0,"html_url":"https://github.com/BeaverSoftware/PyGithub","owner":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","url":"https://api.github.com/users/BeaverSoftware","id":1424031,"login":"BeaverSoftware"}}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-27T05:23:18Z","id":"1556233222","actor":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/BeaverSoftware","id":1424031,"login":"BeaverSoftware"}},{"type":"PushEvent","payload":{"head":"a39af6a0aae16a923f7be48a70fe1095b17280d2","size":2,"push_id":80709334,"commits":[{"sha":"60fb7a8ef56f46d3fe9ce6d008e6b58238a71d29","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/60fb7a8ef56f46d3fe9ce6d008e6b58238a71d29","distinct":true,"message":"Heavy refactoring of integration tests"},{"sha":"a39af6a0aae16a923f7be48a70fe1095b17280d2","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a39af6a0aae16a923f7be48a70fe1095b17280d2","distinct":true,"message":"Improve test coverage"}],"ref":"refs/heads/topic/RewriteWithGeneratedCode"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-26T20:54:15Z","id":"1556182773","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"WatchEvent","payload":{"action":"started"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-26T18:33:42Z","id":"1556168218","actor":{"gravatar_id":"1689abbd998128dbb3658698b429b022","avatar_url":"https://secure.gravatar.com/avatar/1689abbd998128dbb3658698b429b022?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/michaelpedersen","id":22974,"login":"michaelpedersen"}},{"type":"IssuesEvent","payload":{"action":"closed","issue":{"number":28,"created_at":"2012-05-19T10:38:23Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"Body edited by PyGithub","title":"Issue created by PyGithub","comments":0,"updated_at":"2012-05-26T14:59:33Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/28","id":4653757,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":{"number":1,"created_at":"2012-03-08T12:22:10Z","due_on":"2012-03-13T07:00:00Z","title":"Version 0.4","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/1","id":93546,"open_issues":0,"closed_issues":3,"description":"","state":"closed"},"closed_at":"2012-05-26T14:59:33Z","html_url":"https://github.com/jacquev6/PyGithub/issues/28","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"labels":[{"name":"Bug","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","color":"e10c02"},{"name":"Project management","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","color":"444444"},{"name":"Question","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","color":"02e10c"}],"state":"closed"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-26T14:59:34Z","id":"1556145515","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"36574ded89738a81f47f415017ba880d0cad839b","size":5,"push_id":80677260,"commits":[{"sha":"95cd6c507bdfbf3700a31bafbe26f72a1d684be1","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/95cd6c507bdfbf3700a31bafbe26f72a1d684be1","distinct":true,"message":"Use setUp in test for NamedUser"},{"sha":"386bcde55e1744fa888b034d34ad9f167595d2cf","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/386bcde55e1744fa888b034d34ad9f167595d2cf","distinct":true,"message":"Refactor tests of NamedUser"},{"sha":"1b3ca70ebe8724ab7d0d6ba9c8b20853a018eeec","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1b3ca70ebe8724ab7d0d6ba9c8b20853a018eeec","distinct":true,"message":"Restore coverage of Event"},{"sha":"ff8d87d5391b2ef8d10e89f77260a18440e88e25","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ff8d87d5391b2ef8d10e89f77260a18440e88e25","distinct":true,"message":"Test NamedUser.create_gist withour description"},{"sha":"36574ded89738a81f47f415017ba880d0cad839b","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/36574ded89738a81f47f415017ba880d0cad839b","distinct":true,"message":"Refactor tests of Repository"}],"ref":"refs/heads/topic/RewriteWithGeneratedCode"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-26T11:25:50Z","id":"1556126182","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"619eae8d51c5988f0d2889fc767fa677438ba95d","size":11,"push_id":80673538,"ref":"refs/heads/topic/RewriteWithGeneratedCode","commits":[{"sha":"5bb654d26dd014d36794acd1e6ecf3736f12aad7","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5bb654d26dd014d36794acd1e6ecf3736f12aad7","distinct":false,"message":"Implement the three authentication schemes"},{"sha":"cb0313157bf904f2d364377d35d9397b269547a5","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cb0313157bf904f2d364377d35d9397b269547a5","distinct":false,"message":"Merge branch 'topic/Authentication' into develop"},{"sha":"0cec0d25e606c023a62a4fc7cdc815309ebf6d16","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16","distinct":false,"message":"Publish version 0.7"},{"sha":"ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","distinct":false,"message":"Merge branch 'develop'"},{"sha":"3a3bf4763192ee1234eb0557628133e06f3dfc76","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/3a3bf4763192ee1234eb0557628133e06f3dfc76","distinct":true,"message":"Merge branch 'master' into topic/RewriteWithGeneratedCode\n\nConflicts:\n\tgithub/Github.py\n\tgithub/Requester.py"},{"sha":"608f17794664f61693a3dc05e6056fea8fbef0ff","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/608f17794664f61693a3dc05e6056fea8fbef0ff","distinct":true,"message":"Restore some form of Authorization header in replay data"},{"sha":"2c04b8adbd91d38eef4f0767337ab7a12b2f684b","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2c04b8adbd91d38eef4f0767337ab7a12b2f684b","distinct":true,"message":"Allow test without pre-set-up Github"},{"sha":"5b97389988b6fe43e15a079702f6f1671257fb28","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5b97389988b6fe43e15a079702f6f1671257fb28","distinct":true,"message":"Test three authentication schemes"},{"sha":"12747613c5ec00deccf296b8619ad507f7050475","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/12747613c5ec00deccf296b8619ad507f7050475","distinct":true,"message":"Test Issue.getComments"},{"sha":"2982fa96c5ca75abe717d974d83f9135d664232e","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2982fa96c5ca75abe717d974d83f9135d664232e","distinct":true,"message":"Test the new Repository.full_name attribute"},{"sha":"619eae8d51c5988f0d2889fc767fa677438ba95d","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/619eae8d51c5988f0d2889fc767fa677438ba95d","distinct":true,"message":"Improve coverage of AuthenticatedUser"}]},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-26T10:01:39Z","id":"1556114751","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"IssuesEvent","payload":{"action":"closed","issue":{"number":29,"created_at":"2012-05-25T11:47:59Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"","comments":0,"title":"Publish version 0.7","updated_at":"2012-05-25T17:32:32Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/29","id":4752048,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":{"number":5,"due_on":"2012-05-26T07:00:00Z","created_at":"2012-05-25T11:47:06Z","title":"Version 0.7","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/5","id":124045,"closed_issues":2,"open_issues":0,"description":"","state":"closed"},"closed_at":"2012-05-25T17:32:32Z","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"labels":[{"name":"Project management","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","color":"444444"}],"html_url":"https://github.com/jacquev6/PyGithub/issues/29","state":"closed"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T17:32:33Z","id":"1555940993","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"IssuesEvent","payload":{"action":"closed","issue":{"number":15,"created_at":"2012-03-13T06:24:05Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"One would want to use the API without authentication, with login+password, and with OAuth token. Let's cover these use-cases.","comments":1,"title":"Implement all authentication schemes","updated_at":"2012-05-25T17:32:31Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/15","id":3624575,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":{"number":5,"due_on":"2012-05-26T07:00:00Z","created_at":"2012-05-25T11:47:06Z","title":"Version 0.7","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/5","id":124045,"closed_issues":2,"open_issues":0,"description":"","state":"closed"},"closed_at":"2012-05-25T17:32:31Z","labels":[{"name":"Functionalities","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","color":"e102d8"}],"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"html_url":"https://github.com/jacquev6/PyGithub/issues/15","state":"closed"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T17:32:33Z","id":"1555940986","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"CreateEvent","payload":{"master_branch":"master","ref_type":"tag","ref":"v0.7","description":"Python library implementing the full Github API v3"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T17:19:48Z","id":"1555936661","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"DeleteEvent","payload":{"ref_type":"branch","ref":"topic/Authentication"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T17:19:48Z","id":"1555936660","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","size":4,"push_id":80573368,"ref":"refs/heads/master","commits":[{"sha":"5bb654d26dd014d36794acd1e6ecf3736f12aad7","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5bb654d26dd014d36794acd1e6ecf3736f12aad7","distinct":false,"message":"Implement the three authentication schemes"},{"sha":"cb0313157bf904f2d364377d35d9397b269547a5","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cb0313157bf904f2d364377d35d9397b269547a5","distinct":false,"message":"Merge branch 'topic/Authentication' into develop"},{"sha":"0cec0d25e606c023a62a4fc7cdc815309ebf6d16","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16","distinct":false,"message":"Publish version 0.7"},{"sha":"ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","distinct":true,"message":"Merge branch 'develop'"}]},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T17:19:48Z","id":"1555936659","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"0cec0d25e606c023a62a4fc7cdc815309ebf6d16","size":3,"push_id":80573367,"commits":[{"sha":"5bb654d26dd014d36794acd1e6ecf3736f12aad7","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5bb654d26dd014d36794acd1e6ecf3736f12aad7","distinct":false,"message":"Implement the three authentication schemes"},{"sha":"cb0313157bf904f2d364377d35d9397b269547a5","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cb0313157bf904f2d364377d35d9397b269547a5","distinct":false,"message":"Merge branch 'topic/Authentication' into develop"},{"sha":"0cec0d25e606c023a62a4fc7cdc815309ebf6d16","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16","distinct":false,"message":"Publish version 0.7"}],"ref":"refs/heads/develop"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T17:19:47Z","id":"1555936657","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"CreateEvent","payload":{"master_branch":"master","ref":"topic/Authentication","description":"Python library implementing the full Github API v3","ref_type":"branch"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T12:24:21Z","id":"1555833283","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"IssuesEvent","payload":{"action":"opened","issue":{"number":29,"created_at":"2012-05-25T11:47:59Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"","title":"Publish version 0.7","comments":0,"updated_at":"2012-05-25T11:47:59Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/29","id":4752048,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":{"number":5,"created_at":"2012-05-25T11:47:06Z","due_on":"2012-05-26T07:00:00Z","title":"Version 0.7","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/5","id":124045,"open_issues":2,"closed_issues":0,"description":"","state":"open"},"closed_at":null,"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"html_url":"https://github.com/jacquev6/PyGithub/issues/29","labels":[{"name":"Project management","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","color":"444444"}],"state":"open"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T12:02:48Z","id":"1555822981","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-25T06:31:42Z","body":"It means that there will be three ways to create an instance of the Github class:\n github = Github()\n github = Github( login, password )\n github = Github( oauth_token )\n","updated_at":"2012-05-25T06:31:42Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5924198","id":5924198,"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},"action":"created","issue":{"number":15,"created_at":"2012-03-13T06:24:05Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"comments":1,"body":"One would want to use the API without authentication, with login+password, and with OAuth token. Let's cover these use-cases.","title":"Implement all authentication schemes","updated_at":"2012-05-25T06:31:42Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/15","id":3624575,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":null,"closed_at":null,"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"labels":[{"name":"Functionalities","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","color":"e102d8"}],"html_url":"https://github.com/jacquev6/PyGithub/issues/15","state":"open"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T06:31:42Z","id":"1555742639","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"WatchEvent","payload":{"action":"started"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T06:05:21Z","id":"1555738288","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"527ce7459a2e60d1536883f19b9bc6850d71127b","size":5,"push_id":79877715,"commits":[{"sha":"287bc541542f9d32339e7dd4b36a511cab2ebdae","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/287bc541542f9d32339e7dd4b36a511cab2ebdae","distinct":true,"message":"Generate more coverage information"},{"sha":"588a4a9a355096c00a2bb25f27664d2115e120ac","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/588a4a9a355096c00a2bb25f27664d2115e120ac","distinct":true,"message":"Test AuthenticatedUser watching"},{"sha":"815720f0deb376c34166c27b6e3b73e5c1f5b1a3","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/815720f0deb376c34166c27b6e3b73e5c1f5b1a3","distinct":true,"message":"Test Authorization"},{"sha":"473c92adcd8bbbd32003d9c65666ede66059551b","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/473c92adcd8bbbd32003d9c65666ede66059551b","distinct":true,"message":"Test Download and CommitComment"},{"sha":"527ce7459a2e60d1536883f19b9bc6850d71127b","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/527ce7459a2e60d1536883f19b9bc6850d71127b","distinct":true,"message":"Merge commit 'c93f9cc8484b7' into topic/RewriteWithGeneratedCode\n\nConflicts:\n\ttest/IntegrationTest.py"}],"ref":"refs/heads/topic/RewriteWithGeneratedCode"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-22T19:59:48Z","id":"1554729420","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"DownloadEvent","payload":{"download":{"name":"Foobar.txt","size":1024,"created_at":"2012-05-22T19:15:29Z","content_type":"text/plain","download_count":0,"url":"https://api.github.com/repos/jacquev6/PyGithub/downloads/242562","id":242562,"description":null,"html_url":"https://github.com/downloads/jacquev6/PyGithub/Foobar.txt"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-22T19:15:30Z","id":"1554712197","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"DownloadEvent","payload":{"download":{"name":"Foobar.txt","size":1024,"created_at":"2012-05-22T19:11:49Z","content_type":"text/richtext","download_count":0,"url":"https://api.github.com/repos/jacquev6/PyGithub/downloads/242556","id":242556,"description":"Download created by PyGithub","html_url":"https://github.com/downloads/jacquev6/PyGithub/Foobar.txt"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-22T19:11:49Z","id":"1554710791","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"DownloadEvent","payload":{"download":{"name":"Foobar.txt","created_at":"2012-05-22T18:58:32Z","size":1024,"content_type":"text/plain","url":"https://api.github.com/repos/jacquev6/PyGithub/downloads/242550","download_count":0,"id":242550,"description":null,"html_url":"https://github.com/downloads/jacquev6/PyGithub/Foobar.txt"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-22T18:58:32Z","id":"1554705673","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"CommitCommentEvent","payload":{"comment":{"position":19,"created_at":"2012-05-22T18:53:25Z","line":211,"body":"Foobar","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","updated_at":"2012-05-22T18:53:25Z","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1362020","id":1362020,"path":"src/github/AuthenticatedUser.py","html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1362020","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-22T18:53:25Z","id":"1554703698","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"CommitCommentEvent","payload":{"comment":{"position":3,"created_at":"2012-05-22T18:50:02Z","line":null,"body":"Comment also created by PyGithub","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","updated_at":"2012-05-22T18:50:02Z","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1362001","id":1362001,"path":"codegen/templates/GithubObject.MethodBody.UseResult.py","html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1362001","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-22T18:50:02Z","id":"1554702296","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"CommitCommentEvent","payload":{"comment":{"position":null,"created_at":"2012-05-22T18:49:34Z","line":26,"body":"Comment created by PyGithub","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","updated_at":"2012-05-22T18:49:34Z","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1362000","id":1362000,"path":"codegen/templates/GithubObject.MethodBody.UseResult.py","html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1362000","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-22T18:49:34Z","id":"1554702087","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"CommitCommentEvent","payload":{"comment":{"position":null,"created_at":"2012-05-22T18:40:18Z","body":"Comment created by PyGithub","line":null,"commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","updated_at":"2012-05-22T18:40:18Z","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1361949","id":1361949,"path":null,"html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1361949","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-22T18:40:18Z","id":"1554698320","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}}] + diff --git a/lib/github/tests/ReplayData/Repository.testGetForks.txt b/lib/github/tests/ReplayData/Repository.testGetForks.txt new file mode 100644 index 0000000000..2610b7addb --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetForks.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/forks +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4962'), ('content-length', '1141'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"6f7c9361ed89e4c405627dba9e70b879"'), ('date', 'Sun, 27 May 2012 06:58:48 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"clone_url":"https://github.com/abersager/PyGithub.git","has_downloads":true,"watchers":2,"git_url":"git://github.com/abersager/PyGithub.git","updated_at":"2012-03-28T10:37:22Z","permissions":{"pull":true,"admin":false,"push":false},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/abersager/PyGithub","has_wiki":false,"has_issues":false,"fork":true,"forks":0,"mirror_url":null,"size":112,"private":false,"open_issues":0,"svn_url":"https://github.com/abersager/PyGithub","owner":{"url":"https://api.github.com/users/abersager","gravatar_id":"b2e096f2c016d8dc168a3a5e6281b07a","login":"abersager","id":1328351,"avatar_url":"https://secure.gravatar.com/avatar/b2e096f2c016d8dc168a3a5e6281b07a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:abersager/PyGithub.git","pushed_at":"2012-03-26T10:05:31Z","created_at":"2012-03-26T09:12:45Z","id":3831162,"html_url":"https://github.com/abersager/PyGithub","full_name":"abersager/PyGithub"}] + diff --git a/lib/github/tests/ReplayData/Repository.testGetGitRef.txt b/lib/github/tests/ReplayData/Repository.testGetGitRef.txt new file mode 100644 index 0000000000..78466c9e4a --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetGitRef.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/git/refs/heads/master +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4987'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '288'), ('server', 'nginx'), ('last-modified', 'Sun, 28 Oct 2012 01:48:38 GMT'), ('connection', 'keep-alive'), ('etag', '"d7478b9ae7e3c0de496ede43edd2fdfc"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Sun, 28 Oct 2012 08:58:25 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs/heads/master","object":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/31110327ec45f3138e58ed247b2cf420fee481ec","type":"commit","sha":"31110327ec45f3138e58ed247b2cf420fee481ec"},"ref":"refs/heads/master"} + diff --git a/lib/github/tests/ReplayData/Repository.testGetGitRefWithIssue102Reverted.txt b/lib/github/tests/ReplayData/Repository.testGetGitRefWithIssue102Reverted.txt new file mode 100644 index 0000000000..78466c9e4a --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetGitRefWithIssue102Reverted.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/git/refs/heads/master +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4987'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '288'), ('server', 'nginx'), ('last-modified', 'Sun, 28 Oct 2012 01:48:38 GMT'), ('connection', 'keep-alive'), ('etag', '"d7478b9ae7e3c0de496ede43edd2fdfc"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Sun, 28 Oct 2012 08:58:25 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs/heads/master","object":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/31110327ec45f3138e58ed247b2cf420fee481ec","type":"commit","sha":"31110327ec45f3138e58ed247b2cf420fee481ec"},"ref":"refs/heads/master"} + diff --git a/lib/github/tests/ReplayData/Repository.testGetGitRefs.txt b/lib/github/tests/ReplayData/Repository.testGetGitRefs.txt new file mode 100644 index 0000000000..90d999b4aa --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetGitRefs.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/git/refs +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4956'), ('content-length', '3176'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"85c62d1ec1ea8966569c391d802d4f3f"'), ('date', 'Sun, 27 May 2012 07:00:43 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"ref":"refs/heads/develop","url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs/heads/develop","object":{"type":"commit","url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16","sha":"0cec0d25e606c023a62a4fc7cdc815309ebf6d16"}},{"ref":"refs/heads/master","url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs/heads/master","object":{"type":"commit","url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","sha":"ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7"}},{"ref":"refs/heads/topic/DependencyGraph","url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs/heads/topic/DependencyGraph","object":{"type":"commit","url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/05157f11f29a3ac057e35d2487880c5d08bd69af","sha":"05157f11f29a3ac057e35d2487880c5d08bd69af"}},{"ref":"refs/heads/topic/RewriteWithGeneratedCode","url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs/heads/topic/RewriteWithGeneratedCode","object":{"type":"commit","url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/956279094a7383b6a8f00c93770ed02ca711f8e5","sha":"956279094a7383b6a8f00c93770ed02ca711f8e5"}},{"ref":"refs/tags/v0.1","url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs/tags/v0.1","object":{"type":"tag","url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags/fc28301862c0118b88cc94da678fb5104b249370","sha":"fc28301862c0118b88cc94da678fb5104b249370"}},{"ref":"refs/tags/v0.2","url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs/tags/v0.2","object":{"type":"tag","url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags/48cabc0fc3b1a9767d6f0db9f6058f24681cada7","sha":"48cabc0fc3b1a9767d6f0db9f6058f24681cada7"}},{"ref":"refs/tags/v0.3","url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs/tags/v0.3","object":{"type":"tag","url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags/4870747f5faf15ba38ece8211283ef87b25679c1","sha":"4870747f5faf15ba38ece8211283ef87b25679c1"}},{"ref":"refs/tags/v0.4","url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs/tags/v0.4","object":{"type":"tag","url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags/26fb28983636cb4773acb5581f4a443cd0aef808","sha":"26fb28983636cb4773acb5581f4a443cd0aef808"}},{"ref":"refs/tags/v0.5","url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs/tags/v0.5","object":{"type":"tag","url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags/c88b802b71cf19cfbc2e915dbb8a0e98f235a926","sha":"c88b802b71cf19cfbc2e915dbb8a0e98f235a926"}},{"ref":"refs/tags/v0.6","url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs/tags/v0.6","object":{"type":"tag","url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags/f5f37322407b02a80de4526ad88d5f188977bc3c","sha":"f5f37322407b02a80de4526ad88d5f188977bc3c"}},{"ref":"refs/tags/v0.7","url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs/tags/v0.7","object":{"type":"tag","url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags/78ca479ac54294dabd16a6644bbe5e013fabf183","sha":"78ca479ac54294dabd16a6644bbe5e013fabf183"}}] + diff --git a/lib/github/tests/ReplayData/Repository.testGetGitTreeWithRecursive.txt b/lib/github/tests/ReplayData/Repository.testGetGitTreeWithRecursive.txt new file mode 100644 index 0000000000..ca69f05cc6 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetGitTreeWithRecursive.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/git/trees/f492784d8ca837779650d1fb406a1a3587a764ad?recursive=True +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4996'), ('content-length', '22154'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"c20355ebfacf97b7c3b8809da473b6be"'), ('date', 'Tue, 29 May 2012 17:50:12 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/f492784d8ca837779650d1fb406a1a3587a764ad","sha":"f492784d8ca837779650d1fb406a1a3587a764ad","tree":[{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/8a9af1462c3f4e3358315c2d2e6ef1e7334c59dd","size":53,"path":".gitignore","sha":"8a9af1462c3f4e3358315c2d2e6ef1e7334c59dd","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/7863d93a3ef3700fd05d2e0e6b9c1b5161c4572b","size":1832,"path":"Design.md","sha":"7863d93a3ef3700fd05d2e0e6b9c1b5161c4572b","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/82be8f1b97c4cfb005ad9ce8b8215c2f71470630","size":28643,"path":"IntegrationTest.py","sha":"82be8f1b97c4cfb005ad9ce8b8215c2f71470630","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/8da6802f0b9d4acd1945440053dfd6be3ee80c95","size":3153,"path":"ReadMe.md","sha":"8da6802f0b9d4acd1945440053dfd6be3ee80c95","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/3ee24565835d6a352e0ce37b1f2413572f55e368","size":12687,"path":"ReferenceOfApis.md","sha":"3ee24565835d6a352e0ce37b1f2413572f55e368","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/af9d09559eb6dae86af23b81e6ddcebfa4dc37e6","size":15967,"path":"ReferenceOfClasses.md","sha":"af9d09559eb6dae86af23b81e6ddcebfa4dc37e6","mode":"100644"},{"type":"tree","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/60b4602b2c2070246c5df078fb7a5150b45815eb","path":"ReplayDataForIntegrationTest","sha":"60b4602b2c2070246c5df078fb7a5150b45815eb","mode":"040000"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/899acba9e6519909e8f518c93b3775a656359386","size":609,"path":"ReplayDataForIntegrationTest/AuthenticatedUserDetails.txt","sha":"899acba9e6519909e8f518c93b3775a656359386","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/e768d406b775a852e46fc54cb6924c7f37f6b7bd","size":7158,"path":"ReplayDataForIntegrationTest/Colaborators.txt","sha":"e768d406b775a852e46fc54cb6924c7f37f6b7bd","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/291ed44bf7e03cd9b6f02af19499589e54b7398a","size":23895,"path":"ReplayDataForIntegrationTest/CommentCommit.txt","sha":"291ed44bf7e03cd9b6f02af19499589e54b7398a","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/7abd0442ccde81422bf9967e655dd0e28092d909","size":7638,"path":"ReplayDataForIntegrationTest/CreateForkForOrganization.txt","sha":"7abd0442ccde81422bf9967e655dd0e28092d909","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/6e61fd654124629b0ff2b1f6de97ff8fe486870f","size":9063,"path":"ReplayDataForIntegrationTest/CreateRepoForOrganization.txt","sha":"6e61fd654124629b0ff2b1f6de97ff8fe486870f","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/cb671f517ba3c8002ecb2f7336ce180f60c2e99b","size":47473,"path":"ReplayDataForIntegrationTest/CreateRepoForUser.txt","sha":"cb671f517ba3c8002ecb2f7336ce180f60c2e99b","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/b4171942210f47faddba6df980d64bd8e2072cb5","size":6762,"path":"ReplayDataForIntegrationTest/Downloads.txt","sha":"b4171942210f47faddba6df980d64bd8e2072cb5","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/9ec888931dda43e8e88f33f70cdc0a95992f021d","size":3521,"path":"ReplayDataForIntegrationTest/EditAuthenticatedUser.txt","sha":"9ec888931dda43e8e88f33f70cdc0a95992f021d","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/f60c63a9ee01455d98173b943c309bd8ca0c358d","size":3283,"path":"ReplayDataForIntegrationTest/EditOrganization.txt","sha":"f60c63a9ee01455d98173b943c309bd8ca0c358d","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/fe947fcec0a35994498b2b0517fbba01becafafc","size":24634,"path":"ReplayDataForIntegrationTest/EditOrganizationTeamAndMembers.txt","sha":"fe947fcec0a35994498b2b0517fbba01becafafc","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/78fdccde664076fc363446ee2dd18d4f08d19e24","size":2034,"path":"ReplayDataForIntegrationTest/Emails.txt","sha":"78fdccde664076fc363446ee2dd18d4f08d19e24","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/53d65d31fc057de4d0fc62668ca695ea690463b7","size":830522,"path":"ReplayDataForIntegrationTest/Events.txt","sha":"53d65d31fc057de4d0fc62668ca695ea690463b7","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/193f10c7d2d8b29de1d430f6665ebec492f7bc03","size":13489,"path":"ReplayDataForIntegrationTest/Follow.txt","sha":"193f10c7d2d8b29de1d430f6665ebec492f7bc03","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/355cfac1f2b53d6dd09bc861f982e7380ab7ea6c","size":39318,"path":"ReplayDataForIntegrationTest/Gists.txt","sha":"355cfac1f2b53d6dd09bc861f982e7380ab7ea6c","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/b18abe6bda1a8d5690effc4709ca2284c0ba3fce","size":274113,"path":"ReplayDataForIntegrationTest/GistsAll.txt","sha":"b18abe6bda1a8d5690effc4709ca2284c0ba3fce","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/b8ff613ae927823bb6aa0b0430e0131626353493","size":17052,"path":"ReplayDataForIntegrationTest/GitObjects.txt","sha":"b8ff613ae927823bb6aa0b0430e0131626353493","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/be345cdb76780a84fdb0f7a8e9d4f92d93730b44","size":10297,"path":"ReplayDataForIntegrationTest/GitObjectsAlternative.txt","sha":"be345cdb76780a84fdb0f7a8e9d4f92d93730b44","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/bf0471641650dcf92d33bc6aafd7307b8c43b652","size":7486,"path":"ReplayDataForIntegrationTest/Hooks.txt","sha":"bf0471641650dcf92d33bc6aafd7307b8c43b652","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/1631b78249fcdde37c5bc54832c202372ebcc0d6","size":60086,"path":"ReplayDataForIntegrationTest/IssuesAndMilestones.txt","sha":"1631b78249fcdde37c5bc54832c202372ebcc0d6","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/40e23bcc3d16a3f409ded8487d526ce019f14cba","size":23825,"path":"ReplayDataForIntegrationTest/IssuesForAuthenticatedUser.txt","sha":"40e23bcc3d16a3f409ded8487d526ce019f14cba","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/119acdad17754f2b806f8f2a236152d5e2738072","size":12513,"path":"ReplayDataForIntegrationTest/Keys.txt","sha":"119acdad17754f2b806f8f2a236152d5e2738072","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/5fb50bcb8c87b2edcf8e3f700483533f67ba63fa","size":8501,"path":"ReplayDataForIntegrationTest/MergePullRequest.txt","sha":"5fb50bcb8c87b2edcf8e3f700483533f67ba63fa","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/e2bb418a947baf51f5a726c81dc12849d8e57401","size":65016,"path":"ReplayDataForIntegrationTest/NamedUserDetails.txt","sha":"e2bb418a947baf51f5a726c81dc12849d8e57401","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/d37e86574b55beedca277dc67f591ce1ad677950","size":877,"path":"ReplayDataForIntegrationTest/OrganizationDetails.txt","sha":"d37e86574b55beedca277dc67f591ce1ad677950","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/a0d497fb5819e66685d5506ca091ca626cd8cc9b","size":41292,"path":"ReplayDataForIntegrationTest/PullRequest.txt","sha":"a0d497fb5819e66685d5506ca091ca626cd8cc9b","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/8d3c8098592470fca5ae07a1edf271fcf2682268","size":160243,"path":"ReplayDataForIntegrationTest/RepositoryCompare.txt","sha":"8d3c8098592470fca5ae07a1edf271fcf2682268","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/04c0eae1a45e1f74085a5bb566f3ac022afc7653","size":26507,"path":"ReplayDataForIntegrationTest/RepositoryDetails.txt","sha":"04c0eae1a45e1f74085a5bb566f3ac022afc7653","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/0fa34785c12f0969f8a6862531dbf9e9ee0a32a1","size":8833,"path":"ReplayDataForIntegrationTest/RepositoryKeys.txt","sha":"0fa34785c12f0969f8a6862531dbf9e9ee0a32a1","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/f294af3d6284498ed413ed56d0ede0635acd1e96","size":31556,"path":"ReplayDataForIntegrationTest/Watch.txt","sha":"f294af3d6284498ed413ed56d0ede0635acd1e96","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/61cfa6bc84a562c134770b1e10445e7b810dbc26","size":320,"path":"RoadMap.md","sha":"61cfa6bc84a562c134770b1e10445e7b810dbc26","mode":"100644"},{"type":"tree","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/929f19535e74d80fb117aa021742ce2556ddc9a2","path":"github","sha":"929f19535e74d80fb117aa021742ce2556ddc9a2","mode":"040000"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/c05b41fe0f526f0d92a00381860c5005d8910218","size":2251,"path":"github/GenerateReferenceOfApis.py","sha":"c05b41fe0f526f0d92a00381860c5005d8910218","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/c7c328b2e79ad79b3188da87f2458278b4df370e","size":751,"path":"github/GenerateReferenceOfClasses.py","sha":"c7c328b2e79ad79b3188da87f2458278b4df370e","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/73d750640226cc5c80141101578adf2159056431","size":7848,"path":"github/Github.UnitTest.py","sha":"73d750640226cc5c80141101578adf2159056431","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/e6373d6ea2c02bdf37e9b26fc7f7b08db9f011b8","size":1281,"path":"github/Github.py","sha":"e6373d6ea2c02bdf37e9b26fc7f7b08db9f011b8","mode":"100644"},{"type":"tree","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/1a549caa38bde6661f0b9d881a5d765c633c1992","path":"github/GithubObjects","sha":"1a549caa38bde6661f0b9d881a5d765c633c1992","mode":"040000"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/22d7121fb27e682e09bc670c29ac981e3cb62a7e","size":4049,"path":"github/GithubObjects/AuthenticatedUser.py","sha":"22d7121fb27e682e09bc670c29ac981e3cb62a7e","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/2316041bf8880725effc3ce8c8c2b7cf8db11cee","size":400,"path":"github/GithubObjects/Authorization.py","sha":"2316041bf8880725effc3ce8c8c2b7cf8db11cee","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/30fbebc5e728fa98337221da0c155227662362d7","size":179,"path":"github/GithubObjects/Branch.py","sha":"30fbebc5e728fa98337221da0c155227662362d7","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/3a990227a4fcb71ae3d32fe2af24d249edf8150d","size":884,"path":"github/GithubObjects/Commit.py","sha":"3a990227a4fcb71ae3d32fe2af24d249edf8150d","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/5bb931084bfbe9f76bd70ac630f7528393c77a23","size":443,"path":"github/GithubObjects/CommitComment.py","sha":"5bb931084bfbe9f76bd70ac630f7528393c77a23","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/a4577f31e2753b88d104d9f252883655ed617211","size":485,"path":"github/GithubObjects/Download.py","sha":"a4577f31e2753b88d104d9f252883655ed617211","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/1cdb4e961f76bca3371ce524fd8f19d18977c060","size":407,"path":"github/GithubObjects/Event.py","sha":"1cdb4e961f76bca3371ce524fd8f19d18977c060","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/771c33f701ab4d5a2a7ff0b6a64bb82b4467da59","size":1755,"path":"github/GithubObjects/Gist.py","sha":"771c33f701ab4d5a2a7ff0b6a64bb82b4467da59","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/4fc4c442cc6bdb1f2323b6f0195518e3549d53ec","size":352,"path":"github/GithubObjects/GistComment.py","sha":"4fc4c442cc6bdb1f2323b6f0195518e3549d53ec","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/607429faac7285ffaf30f42e9e3d2498f9dce199","size":259,"path":"github/GithubObjects/GitBlob.py","sha":"607429faac7285ffaf30f42e9e3d2498f9dce199","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/c9aa31c2047c9e18d092cdb8362b0872a4c858da","size":330,"path":"github/GithubObjects/GitCommit.py","sha":"c9aa31c2047c9e18d092cdb8362b0872a4c858da","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/f242e173e74399387fec3e65311ed1b4d9307795","size":301,"path":"github/GithubObjects/GitRef.py","sha":"f242e173e74399387fec3e65311ed1b4d9307795","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/9248ea6195629a87a603bc2a960c5a88da50c7aa","size":279,"path":"github/GithubObjects/GitTag.py","sha":"9248ea6195629a87a603bc2a960c5a88da50c7aa","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/61dac784bf2103e9b55e141042efd26da9ebcd3d","size":295,"path":"github/GithubObjects/GitTree.py","sha":"61dac784bf2103e9b55e141042efd26da9ebcd3d","mode":"100644"},{"type":"tree","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/173066f1477e24afa2ffd4cb9ceedb2531256837","path":"github/GithubObjects/GithubObject","sha":"173066f1477e24afa2ffd4cb9ceedb2531256837","mode":"040000"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/b2c5b054c3587ec60e2873bb269940eb2d09d0fa","size":2121,"path":"github/GithubObjects/GithubObject/ArgumentsChecker.py","sha":"b2c5b054c3587ec60e2873bb269940eb2d09d0fa","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/2702c9f4df72cd9c77e4545081cf7e5511523a0f","size":4111,"path":"github/GithubObjects/GithubObject/Basic.py","sha":"2702c9f4df72cd9c77e4545081cf7e5511523a0f","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/b7a2f794033bcbd3c28ba1e49369a49da5c78a5d","size":24438,"path":"github/GithubObjects/GithubObject/GithubObject.UnitTest.py","sha":"b7a2f794033bcbd3c28ba1e49369a49da5c78a5d","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/72464749e55a17e232841444bcddb48ad81d1b31","size":5179,"path":"github/GithubObjects/GithubObject/GithubObject.py","sha":"72464749e55a17e232841444bcddb48ad81d1b31","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/b4d29b38144d319b1d18f96eb4e9502fa82fd4c6","size":8470,"path":"github/GithubObjects/GithubObject/List.py","sha":"b4d29b38144d319b1d18f96eb4e9502fa82fd4c6","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/a7aeb7372fba85d33239c7d023f779f0d7db81ad","size":921,"path":"github/GithubObjects/GithubObject/TypePolicies.py","sha":"a7aeb7372fba85d33239c7d023f779f0d7db81ad","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/cbc7e4d667044eb16ddbe42d6242857057b5fc4d","size":27,"path":"github/GithubObjects/GithubObject/__init__.py","sha":"cbc7e4d667044eb16ddbe42d6242857057b5fc4d","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/36dc1354a94613fc3a0d785028f9792182a07af8","size":671,"path":"github/GithubObjects/Hook.py","sha":"36dc1354a94613fc3a0d785028f9792182a07af8","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/13c2f05af897f7b1fc5fc789f73757ee1e3731a0","size":1612,"path":"github/GithubObjects/Issue.py","sha":"13c2f05af897f7b1fc5fc789f73757ee1e3731a0","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/fb812b33bb5c3cb7fc65048e191c95d586888434","size":387,"path":"github/GithubObjects/IssueComment.py","sha":"fb812b33bb5c3cb7fc65048e191c95d586888434","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/c5b6fd29765aeefd1113e255c5b58f4fdf7c99e3","size":328,"path":"github/GithubObjects/IssueEvent.py","sha":"c5b6fd29765aeefd1113e255c5b58f4fdf7c99e3","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/aec594f92b8081b93a469c6f7b5c616df5197b6b","size":370,"path":"github/GithubObjects/Label.py","sha":"aec594f92b8081b93a469c6f7b5c616df5197b6b","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/7cd1bc0d6dc6b78d2a98b908de4a607621f30919","size":742,"path":"github/GithubObjects/Milestone.py","sha":"7cd1bc0d6dc6b78d2a98b908de4a607621f30919","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/c460d2f2b4e842a1517f4fd10b338768cccad2a3","size":963,"path":"github/GithubObjects/NamedUser.py","sha":"c460d2f2b4e842a1517f4fd10b338768cccad2a3","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/74c170d10feaace6bfa523224011147627a05df2","size":1968,"path":"github/GithubObjects/NamedUser_complete.py","sha":"74c170d10feaace6bfa523224011147627a05df2","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/3fb7adc168b5ed21c58363a4efe1f195cab3f81d","size":1052,"path":"github/GithubObjects/Organization.py","sha":"3fb7adc168b5ed21c58363a4efe1f195cab3f81d","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/dd1096ae08e979220dd0e4c9faf684c33578f819","size":1290,"path":"github/GithubObjects/Organization_complete.py","sha":"dd1096ae08e979220dd0e4c9faf684c33578f819","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/5ee414d50e9d1ba4ee5c3132904d3f48f21be0b6","size":2045,"path":"github/GithubObjects/PullRequest.py","sha":"5ee414d50e9d1ba4ee5c3132904d3f48f21be0b6","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/ac3cb0d3f33adfc281ca9ef5eaa8b7a45f9cf0f7","size":459,"path":"github/GithubObjects/PullRequestComment.py","sha":"ac3cb0d3f33adfc281ca9ef5eaa8b7a45f9cf0f7","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/d7135d168b80968f5d207c4c14b2a27c46ce3eb7","size":236,"path":"github/GithubObjects/PullRequestFile.py","sha":"d7135d168b80968f5d207c4c14b2a27c46ce3eb7","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/81ce811139f1e108a4c33ae5be07d1c618dc2a1b","size":8064,"path":"github/GithubObjects/Repository.py","sha":"81ce811139f1e108a4c33ae5be07d1c618dc2a1b","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/cea71c017ea61a7a8d39df0077838132c10f743e","size":318,"path":"github/GithubObjects/RepositoryKey.py","sha":"cea71c017ea61a7a8d39df0077838132c10f743e","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/4a9ae6f58fd12b622cdce969648c4b3f293d3242","size":753,"path":"github/GithubObjects/Repository_complete.py","sha":"4a9ae6f58fd12b622cdce969648c4b3f293d3242","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/cd65493dc75482f3000a7df631ba70f2fe2023a6","size":203,"path":"github/GithubObjects/Tag.py","sha":"cd65493dc75482f3000a7df631ba70f2fe2023a6","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/fcd844200ff859b29c892ccffb8bfe124b1af2bd","size":748,"path":"github/GithubObjects/Team.py","sha":"fcd844200ff859b29c892ccffb8bfe124b1af2bd","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/ba912f6accf2030147561fdd9614b152d427d24b","size":272,"path":"github/GithubObjects/UserKey.py","sha":"ba912f6accf2030147561fdd9614b152d427d24b","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/e19884f3141840b495c2c42bcb0708a4a58f7a1f","size":297,"path":"github/GithubObjects/__init__.py","sha":"e19884f3141840b495c2c42bcb0708a4a58f7a1f","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/1901018b6ebb83c70bb8077568177bc213de7ce6","size":3336,"path":"github/Requester.UnitTest.py","sha":"1901018b6ebb83c70bb8077568177bc213de7ce6","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/fac044b85acf5419e36f494de21559871c7fb743","size":2776,"path":"github/Requester.py","sha":"fac044b85acf5419e36f494de21559871c7fb743","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/109d6b9a44f7e489bb5f860da7d76407b2c99a66","size":26,"path":"github/__init__.py","sha":"109d6b9a44f7e489bb5f860da7d76407b2c99a66","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/9532bcaa5fcc0a9d3678b3e4fd05688e32d2a321","size":673,"path":"run_tests.sh","sha":"9532bcaa5fcc0a9d3678b3e4fd05688e32d2a321","mode":"100644"},{"type":"blob","url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/53bce9fa919b4544e67275089b3ec5b44be20667","size":1295,"path":"setup.py","sha":"53bce9fa919b4544e67275089b3ec5b44be20667","mode":"100644"}]} + diff --git a/lib/github/tests/ReplayData/Repository.testGetHooks.txt b/lib/github/tests/ReplayData/Repository.testGetHooks.txt new file mode 100644 index 0000000000..dd637de245 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetHooks.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/hooks +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4953'), ('content-length', '295'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"07e5e1a2fafd1a5e2de62eb3afd007d5"'), ('date', 'Sun, 27 May 2012 07:02:25 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-27T06:00:32Z","last_response":{"status":"ok","message":"OK","code":200},"events":["push"],"url":"https://api.github.com/repos/jacquev6/PyGithub/hooks/257993","active":true,"name":"web","config":{"url":"http://foobar.com"},"id":257993,"created_at":"2012-05-19T06:01:45Z"}] + diff --git a/lib/github/tests/ReplayData/Repository.testGetIssues.txt b/lib/github/tests/ReplayData/Repository.testGetIssues.txt new file mode 100644 index 0000000000..cb6c3d3bf3 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetIssues.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4950'), ('content-length', '28950'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"41676dcfbbfc49368e60f758c3e1d36f"'), ('date', 'Sun, 27 May 2012 07:03:19 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-27T05:40:15Z","body":"Body created by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/30","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_issues":2,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":30,"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_at":null,"title":"Issue also created by PyGithub","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}],"created_at":"2012-05-27T05:40:15Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":4769659,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/30"},{"updated_at":"2012-05-18T11:06:11Z","body":"As per discussion in 6945921c529be14c3a8f566dd1e483674516d46d\n\nI have observed that autocompletion (using PyDev+Eclipse in my case) is pretty erratic.\nFor example, in the tutorial from the readme, `g.get_u` gets autocompleted correctly, but `g.get_user().get_r` (or any method or attribute applicable to `NamedUsers`/`AuthenticatedUser`, really) does not show autocompletion to `g.get_user().get_repo()`.\n\nThis makes exploring the library/API a bit cumbersome. ","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/27","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_issues":2,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":27,"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_at":null,"title":"Facilitate IDE autocompletion","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-05-18T10:52:29Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":4639931,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/27"},{"updated_at":"2012-05-07T10:49:06Z","body":"List known clients.\r\n\r\nFirst known client: http://pypi.python.org/pypi/tratihubis/ (cf #24)","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/25","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_issues":2,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":25,"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_at":null,"title":"List project(s) using PyGithub","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"}],"created_at":"2012-05-07T10:49:06Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":4452000,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/25"},{"updated_at":"2012-05-04T19:23:57Z","body":"Thanks for PyGithub, it is easy to use and very complete. I just successfully used it to convert Trac tickets to Guthub issues.\r\n\r\nBut I had to learn the hard way that `create_issue()` expectes the milestone as number instead of a title. To track this down, I added the following `print` statement to `Requester.py`:\r\n\r\n```python\r\ndef __statusCheckedRequest( self, verb, url, parameters, input ):\r\n status, headers, output = self.__rawRequest( verb, url, parameters, input )\r\n if status < 200 or status >= 300:\r\n print output # <--- Added by me.\r\n raise UnknownGithubObject() # <--- sadly lacks any error details\r\n return headers, output\r\n```\r\n\r\nAs `output` already contains all the information needed (as JSON dump), it would be helpful if the exception raised here would include this information in the exception message.","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/24","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_issues":2,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":24,"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_at":null,"title":"Improve error messages on broken requests","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-04-30T20:01:20Z","state":"open","user":{"url":"https://api.github.com/users/roskakori","gravatar_id":"b58d0f1ea06b8d5de5f02c53f747ac03","login":"roskakori","avatar_url":"https://secure.gravatar.com/avatar/b58d0f1ea06b8d5de5f02c53f747ac03?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328726},"id":4356743,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/24"},{"updated_at":"2012-03-19T19:08:18Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/20","comments":0,"milestone":null,"number":20,"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_at":null,"title":"Rework GitTree.recursive","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Refactoring","name":"Refactoring","color":"0b02e1"}],"created_at":"2012-03-19T19:08:18Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":3716033,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/20"},{"updated_at":"2012-03-19T19:04:19Z","body":"In general, when you get a collection, you should get an iterable, and the pagination should be done only if needed. This is mandatory for Github.get_gists","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/19","comments":0,"milestone":null,"number":19,"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_at":null,"title":"Rework Github.get_gists","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"}],"created_at":"2012-03-19T19:04:19Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":3715946,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/19"},{"updated_at":"2012-03-14T06:49:31Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/18","comments":0,"milestone":null,"number":18,"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_at":null,"title":"Take care of _identity","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Refactoring","name":"Refactoring","color":"0b02e1"}],"created_at":"2012-03-14T06:49:31Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":3643837,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/18"},{"updated_at":"2012-03-13T12:09:48Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/17","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_issues":2,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":17,"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_at":null,"title":"Document issue reporting","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"}],"created_at":"2012-03-13T12:09:48Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":3628022,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/17"},{"updated_at":"2012-03-13T07:04:42Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/16","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_issues":2,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":16,"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_at":null,"title":"Add copyright and license notice","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"}],"created_at":"2012-03-13T06:25:31Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":3624595,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/16"},{"updated_at":"2012-03-13T06:23:35Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/14","comments":0,"milestone":null,"number":14,"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_at":null,"title":"Rework BaseUrl to use tuples instead of string concatenation","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Refactoring","name":"Refactoring","color":"0b02e1"}],"created_at":"2012-03-13T06:23:35Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":3624570,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/14"},{"updated_at":"2012-03-13T06:22:27Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/13","comments":0,"milestone":null,"number":13,"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_at":null,"title":"Remove the _repo hugly hack","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Refactoring","name":"Refactoring","color":"0b02e1"}],"created_at":"2012-03-13T06:22:27Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":3624561,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/13"},{"updated_at":"2012-03-13T06:21:57Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/12","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_issues":2,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":12,"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_at":null,"title":"Structure some InternalSimpleAttributes","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-03-13T06:21:57Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":3624556,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/12"},{"updated_at":"2012-03-12T21:58:05Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/9","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_issues":2,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":9,"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_at":null,"title":"Publish version 1.0","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"}],"created_at":"2012-03-12T21:58:05Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":3619973,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/9"},{"updated_at":"2012-03-08T12:23:29Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_issues":2,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":4,"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_at":null,"title":"Review public interface homogeneity ","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-03-06T16:48:40Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":3527266,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/4"},{"updated_at":"2012-05-19T06:42:43Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/3","comments":0,"milestone":null,"number":3,"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_at":null,"title":"Deduce mandatory parameters","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"}],"created_at":"2012-03-06T16:47:49Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":3527245,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/3"},{"updated_at":"2012-03-08T12:23:29Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/2","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_issues":2,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":2,"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_at":null,"title":"Use objects as parameters instead of shas, ids, etc.","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-03-06T16:46:49Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":3527231,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/2"}] + diff --git a/lib/github/tests/ReplayData/Repository.testGetIssuesComments.txt b/lib/github/tests/ReplayData/Repository.testGetIssuesComments.txt new file mode 100644 index 0000000000..56990d5ebc --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetIssuesComments.txt @@ -0,0 +1,66 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/comments +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4969'), ('x-ratelimit-limit', '5000'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '42659'), ('server', 'nginx'), ('last-modified', 'Fri, 21 Dec 2012 22:43:37 GMT'), ('connection', 'keep-alive'), ('etag', '"e9ac24ceac76d4d31cf648484a47b665"'), ('link', '; rel="next", ; rel="last"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Tue, 25 Dec 2012 11:53:42 GMT'), ('x-github-media-type', 'github.beta; format=json'), ('content-type', 'application/json; charset=utf-8')] +[{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4141750","body":"Thank you for reporting this. I'll publish a fix as soon as possible (tonight or tomorrow)","updated_at":"2012-04-17T05:50:25Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5168757","created_at":"2012-04-17T05:50:25Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":5168757},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4141750","body":"Fixed in version 0.6. Please `easy_install --upgrade pygithub`","updated_at":"2012-04-17T17:59:18Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5181640","created_at":"2012-04-17T17:59:18Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":5181640},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4141750","body":"yes fixed thanks","updated_at":"2012-04-17T18:58:05Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5183010","created_at":"2012-04-17T18:58:05Z","user":{"type":"User","events_url":"https://api.github.com/users/tallforasmurf/events{/privacy}","received_events_url":"https://api.github.com/users/tallforasmurf/received_events","gists_url":"https://api.github.com/users/tallforasmurf/gists{/gist_id}","followers_url":"https://api.github.com/users/tallforasmurf/followers","following_url":"https://api.github.com/users/tallforasmurf/following","organizations_url":"https://api.github.com/users/tallforasmurf/orgs","url":"https://api.github.com/users/tallforasmurf","gravatar_id":"bff435ae5fc2e73d7c7c8351231e8040","starred_url":"https://api.github.com/users/tallforasmurf/starred{/owner}{/repo}","login":"tallforasmurf","avatar_url":"https://secure.gravatar.com/avatar/bff435ae5fc2e73d7c7c8351231e8040?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/tallforasmurf/repos","subscriptions_url":"https://api.github.com/users/tallforasmurf/subscriptions","id":1137018},"id":5183010},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4159230","body":"`UnknownGithubObject` is the exception I throw when you request an object that doesn't exist. Here, there is no download with `id` `1` or `\"foobar\"` in your repo.\r\n\r\nThe `TypeError` you get when calling `repo.get_download()`is because `get_download` requires an argument as stated in the [reference of classes](https://github.com/jacquev6/PyGithub/blob/master/ReferenceOfClasses.md) (See \"Downloads\" in \"class Repository\").\r\n\r\nSo, what argument should you pass to `get_downloads`? Well, the documentation says `id`, so you can first call `get_downloads` which returns a list of `Download`s, and look what is `Download.id`.\r\n\r\nThe fact is that I have no repository to test this with downloads, but here is an example with issues (`g` is a `Github` instance):\r\n\r\n >>> g.get_user().get_repo( \"PyGithub\" ).get_issues()[0].number\r\n 23\r\n >>> g.get_user().get_repo( \"PyGithub\" ).get_issue( 23 )\r\n \r\n\r\n(I took the `number` attribute of the first `Issue`, because the reference says that `get_issue` takes a `number`.)\r\n\r\nI hope it helps.","updated_at":"2012-04-17T21:10:15Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5186061","created_at":"2012-04-17T21:10:15Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":5186061},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4159230","body":"I hope this report will be useful, however, I am not going to be using this package after all. I discovered (what should have been obvious) that I can get everything I need from github just using urllib and reading the page.\r\n\r\n import urllib2\r\n try:\r\n u = urllib2.urlopen( 'https://github.com//', timeout=5 )\r\n except:\r\n #cannot contact github - try later\r\n #exit\r\n s = u.read()\r\n u.close()\r\n\r\nIt's all there, file names, SHA, last commit date, and if I want to read file data, no need to decode a blob, it's at ```https://raw.github.com///master/```\r\n","updated_at":"2012-04-19T16:40:02Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5226090","created_at":"2012-04-19T16:40:02Z","user":{"type":"User","events_url":"https://api.github.com/users/tallforasmurf/events{/privacy}","received_events_url":"https://api.github.com/users/tallforasmurf/received_events","gists_url":"https://api.github.com/users/tallforasmurf/gists{/gist_id}","followers_url":"https://api.github.com/users/tallforasmurf/followers","following_url":"https://api.github.com/users/tallforasmurf/following","organizations_url":"https://api.github.com/users/tallforasmurf/orgs","url":"https://api.github.com/users/tallforasmurf","gravatar_id":"bff435ae5fc2e73d7c7c8351231e8040","starred_url":"https://api.github.com/users/tallforasmurf/starred{/owner}{/repo}","login":"tallforasmurf","avatar_url":"https://secure.gravatar.com/avatar/bff435ae5fc2e73d7c7c8351231e8040?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/tallforasmurf/repos","subscriptions_url":"https://api.github.com/users/tallforasmurf/subscriptions","id":1137018},"id":5226090},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4356743","body":"Thank you for the suggestion. It's somehow related to https://github.com/jacquev6/PyGithub/issues/6, even if I have not described it in details.\r\n\r\nI'm currently doing a very deep rewrite, which will lead to much more readable stack traces in case of exceptions, and I will include more details about the error. I may also be able to detect type errors *before* sending the request to github.\r\n\r\nBy the way, I'm very glad to hear that you have solved a real-life use case using PyGithub :-)","updated_at":"2012-05-01T22:03:59Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5449237","created_at":"2012-05-01T22:03:59Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":5449237},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4356743","body":"Good to hear you are already working on this in #6, so I suppose this can be tagged as duplicate and be closed.\r\n\r\nBTW, I cleaned up my script to convert Trac tickets to Github issues and uploaded it to PyPI: http://pypi.python.org/pypi/tratihubis/. It seems that at least some people find it useful, so hopefully it helps to popularize PyGithub a little.","updated_at":"2012-05-04T19:23:57Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5518272","created_at":"2012-05-04T19:23:57Z","user":{"type":"User","events_url":"https://api.github.com/users/roskakori/events{/privacy}","received_events_url":"https://api.github.com/users/roskakori/received_events","gists_url":"https://api.github.com/users/roskakori/gists{/gist_id}","followers_url":"https://api.github.com/users/roskakori/followers","following_url":"https://api.github.com/users/roskakori/following","organizations_url":"https://api.github.com/users/roskakori/orgs","url":"https://api.github.com/users/roskakori","gravatar_id":"b58d0f1ea06b8d5de5f02c53f747ac03","starred_url":"https://api.github.com/users/roskakori/starred{/owner}{/repo}","login":"roskakori","avatar_url":"https://secure.gravatar.com/avatar/b58d0f1ea06b8d5de5f02c53f747ac03?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/roskakori/repos","subscriptions_url":"https://api.github.com/users/roskakori/subscriptions","id":328726},"id":5518272},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/3617711","body":"This was reported by user in #24. I close this one because the other one has more information.","updated_at":"2012-05-07T10:45:58Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5547576","created_at":"2012-05-07T10:45:58Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":5547576},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4622816","body":"Thank you for your feedback.\n\nI have indeed not yet implemented this feature because I have no real use of it: each API call is more than half a second long, so it's hard to reach the rate limit.\n\nAnyway, it is easy to extract the rate limiting headers, so I will add an attribute to the Github class to give access to their last value.\n\nExpect it in version 1.0. I will set an expected date on the milestone during the week-end.\n","updated_at":"2012-05-18T05:27:40Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5780183","created_at":"2012-05-18T05:27:40Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":5780183},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4622816","body":"Ah good point about it being hard to reach. Thanks for implementing it. No hurry, though, it's not that important. :-)","updated_at":"2012-05-18T08:34:04Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5781803","created_at":"2012-05-18T08:34:04Z","user":{"type":"User","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/bilderbuchi/repos","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","id":327442},"id":5781803},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4622816","body":"Implemented in ca97469. Will be in version 1.0.","updated_at":"2012-05-21T11:17:12Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5820199","created_at":"2012-05-21T11:17:12Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":5820199},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4622816","body":"Thanks. :-)","updated_at":"2012-05-21T12:09:57Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5820912","created_at":"2012-05-21T12:09:57Z","user":{"type":"User","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/bilderbuchi/repos","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","id":327442},"id":5820912},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/3624575","body":"It means that there will be three ways to create an instance of the Github class:\n github = Github()\n github = Github( login, password )\n github = Github( oauth_token )\n","updated_at":"2012-05-25T06:31:42Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5924198","created_at":"2012-05-25T06:31:42Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":5924198},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4780155","body":"You're definitively my best user ! I hope you will not get tired of discovering bugs and limitations in my library.\n\nThis issue is related to https://github.com/jacquev6/PyGithub/blob/master/github/Requester.py#L28 and the `pageCount < 10`: I've had to limit to 10 pages for some obscure reason I don't remember.\n\nIn version 1.0, `get_issues` (and other `get_collection`s) will not return a Python `list` but a `github.PaginatedList` which will be iterable and not limited to 10 pages, (but you won't be able to call `len` on it).","updated_at":"2012-05-28T13:52:22Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5965724","created_at":"2012-05-28T13:52:22Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":5965724},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/3527245","body":"For example, `Repository.edit` has a first parameter, `name`, which is mandatory, and should not. We could deduce it from the `name` attribute.","updated_at":"2012-05-28T13:58:35Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5965812","created_at":"2012-05-28T13:58:35Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":5965812},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4780155","body":"I see. Is there a possibility to increase the number of items per page to work around this for now? This is in the API (with `&per_page=100` according to API docs), but I'm unsure how to do this in PyGithub. Default is 25, max 100.","updated_at":"2012-05-28T14:04:42Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5965891","created_at":"2012-05-28T14:04:25Z","user":{"type":"User","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/bilderbuchi/repos","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","id":327442},"id":5965891},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4780155","body":"If you can't or don't want to modify PyGithub locally, I'm afraid you're stuck to 10 pages of 25 items, sorry.\n\nIf you can patch PyGithub, just increase/remove the limit on `pageCount` in `Requester.py`.\n\nBe assured I will publish version 1.0 on next Monday, with all the things I promised :)","updated_at":"2012-05-28T14:42:47Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5966555","created_at":"2012-05-28T14:42:47Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":5966555},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4780155","body":"I see. I can either patch it locally, or just wait for next week. It will take a while until I get all the other work done, waiting for 1.0 probably won't delay me at all.","updated_at":"2012-05-28T14:47:02Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5966633","created_at":"2012-05-28T14:47:02Z","user":{"type":"User","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/bilderbuchi/repos","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","id":327442},"id":5966633},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4793162","body":"Add a test `Issue33.testClosedIssues` when `Repository.get_issues` uses its 'state' parameter for issue #33","updated_at":"2012-05-29T11:36:02Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5981084","created_at":"2012-05-29T11:36:02Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":5981084},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4793290","body":"Duplicate of #18...","updated_at":"2012-05-29T11:45:46Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5981232","created_at":"2012-05-29T11:45:46Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":5981232},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4639931","body":"Will be OK in version 1.0: no more strange meta-description of the API, and the (generated, but it does not mater) code is easily readable by the IDE's auto-completion tool.","updated_at":"2012-05-29T11:56:06Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5981409","created_at":"2012-05-29T11:56:06Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":5981409},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/3716033","body":"This will be covered by #36","updated_at":"2012-05-29T11:58:04Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5981451","created_at":"2012-05-29T11:58:04Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":5981451},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4793162","body":"@Lyloa I have to mention someone to test `Repository.get_issues` with argument `mentioned`","updated_at":"2012-05-29T18:38:53Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5991965","created_at":"2012-05-29T18:38:53Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":5991965},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4356743","body":"Should be much improved by 7248e66. Will be in version 1.0","updated_at":"2012-05-30T19:58:35Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6019700","created_at":"2012-05-30T19:58:35Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":6019700},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/3619973","body":"Done! You can `easy_install --upgrade PyGithub`.","updated_at":"2012-06-03T19:56:17Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6088432","created_at":"2012-06-03T19:56:17Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":6088432},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5036241","body":"PyGithub is definitely licensed under the GNU **Lesser** General Public License.\n\nAccording to http://www.gnu.org/licenses/gpl-howto.html, including both COPYING and COPYING.LESSER is the good way to use the LGPL. Anyway, this is misleading, so I will add a section about licensing in the readme today or tomorrow.\n\nThank you for your feedback, I hope PyGithub will be useful for you.","updated_at":"2012-06-13T10:52:24Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6293572","created_at":"2012-06-13T06:03:24Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":6293572},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5036241","body":"Sorry I wasn't up to date on v3 licensing best practices. Thank you very much!\n","updated_at":"2012-06-13T16:17:27Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6305625","created_at":"2012-06-13T16:17:27Z","user":{"type":"User","events_url":"https://api.github.com/users/jeblair/events{/privacy}","received_events_url":"https://api.github.com/users/jeblair/received_events","gists_url":"https://api.github.com/users/jeblair/gists{/gist_id}","followers_url":"https://api.github.com/users/jeblair/followers","following_url":"https://api.github.com/users/jeblair/following","organizations_url":"https://api.github.com/users/jeblair/orgs","url":"https://api.github.com/users/jeblair","gravatar_id":"12dc328a104d4c4694b3df308bcd4e6d","starred_url":"https://api.github.com/users/jeblair/starred{/owner}{/repo}","login":"jeblair","avatar_url":"https://secure.gravatar.com/avatar/12dc328a104d4c4694b3df308bcd4e6d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jeblair/repos","subscriptions_url":"https://api.github.com/users/jeblair/subscriptions","id":899068},"id":6305625},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5092592","body":"Hello, when the user has not set his name, `user.name` is `None`, so you can't concatenate it with a string. The exception is not raised by PyGithub but by your code. Try `print user.login, \"->\", user.name` to avoid string concatenation.","updated_at":"2012-06-15T16:56:50Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6357374","created_at":"2012-06-15T14:08:33Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":6357374},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5092592","body":"Perfect! Thanks, that worked. I _knew_ `+` for string concatenation was evil...did not listen.","updated_at":"2012-06-15T14:12:00Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6357422","created_at":"2012-06-15T14:10:33Z","user":{"type":"User","events_url":"https://api.github.com/users/aneroid/events{/privacy}","received_events_url":"https://api.github.com/users/aneroid/received_events","gists_url":"https://api.github.com/users/aneroid/gists{/gist_id}","followers_url":"https://api.github.com/users/aneroid/followers","following_url":"https://api.github.com/users/aneroid/following","organizations_url":"https://api.github.com/users/aneroid/orgs","url":"https://api.github.com/users/aneroid","gravatar_id":"5557aad9ff70c36cfac418f511bdea98","starred_url":"https://api.github.com/users/aneroid/starred{/owner}{/repo}","login":"aneroid","avatar_url":"https://secure.gravatar.com/avatar/5557aad9ff70c36cfac418f511bdea98?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/aneroid/repos","subscriptions_url":"https://api.github.com/users/aneroid/subscriptions","id":1468519},"id":6357422},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5152384","body":"Thank you for your contribution, I will merge it and publish version 1.1 tonight.","updated_at":"2012-06-20T08:15:10Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6447481","created_at":"2012-06-20T08:15:10Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":6447481}] + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/comments?page=2 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4968'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '46165'), ('server', 'nginx'), ('last-modified', 'Fri, 21 Dec 2012 18:46:45 GMT'), ('connection', 'keep-alive'), ('etag', '"446137bf216c4edc30567fbc3e944b5a"'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Tue, 25 Dec 2012 11:53:53 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5152384","body":"I've just pushed the version 1.1 of the package. You can `easy_install --upgrade PyGithub` if you want.","updated_at":"2012-06-20T21:06:08Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6467193","created_at":"2012-06-20T21:06:08Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","repos_url":"https://api.github.com/users/jacquev6/repos","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":6467193},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5177381","body":"Hello Alex, thank you for your feedback.\n\nI've just pushed the version 1.1 of the package. I've used `package_data` as explained in the [documentation of distutils](http://docs.python.org/distutils/setupscript.html#installing-package-data), but I'm still not very confident about my understanding of distutils... \n\nCould you please upgrade the package and tell if it's better?","updated_at":"2012-06-20T21:11:31Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6467312","created_at":"2012-06-20T21:11:31Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","repos_url":"https://api.github.com/users/jacquev6/repos","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":6467312},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5177381","body":"Thanks for looking at this so quickly! Here's the result of running `python setup.py install` with your new changes:\n\n```\n\nrunning install_lib\ncopying build/lib/COPYING -> /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages\ncopying build/lib/COPYING.LESSER -> /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages\ncreating /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/doc\ncopying build/lib/doc/Design.md -> /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/doc\ncopying build/lib/doc/ReferenceOfApis.md -> /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/doc\ncopying build/lib/doc/ReferenceOfClasses.md -> /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/doc\ncopying build/lib/github/Requester.py -> /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/github\ncopying build/lib/ReadMe.md -> /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages\n\n```\n\nI wish I could help, but I'm afraid I don't know how setuptools works.","updated_at":"2012-06-20T21:33:50Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6467642","created_at":"2012-06-20T21:22:44Z","user":{"type":"User","gists_url":"https://api.github.com/users/malexw/gists{/gist_id}","events_url":"https://api.github.com/users/malexw/events{/privacy}","followers_url":"https://api.github.com/users/malexw/followers","avatar_url":"https://secure.gravatar.com/avatar/13a30f9924fa2bd918cbb8d06dd8b55a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/malexw/following","organizations_url":"https://api.github.com/users/malexw/orgs","url":"https://api.github.com/users/malexw","repos_url":"https://api.github.com/users/malexw/repos","starred_url":"https://api.github.com/users/malexw/starred{/owner}{/repo}","gravatar_id":"13a30f9924fa2bd918cbb8d06dd8b55a","login":"malexw","received_events_url":"https://api.github.com/users/malexw/received_events","subscriptions_url":"https://api.github.com/users/malexw/subscriptions","id":577322},"id":6467642},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5191621","body":"Those new apis where documented on June 5th, in https://github.com/github/developer.github.com/commit/3cff4bb9a1f1baf3101c984072cd4b4f0165618c. This explains that they are not covered by PyGithub 1.0 that was released on June 3rd.\n\nIt should not be too difficult to support them. I'll try to do it next week.","updated_at":"2012-06-21T12:42:19Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6481200","created_at":"2012-06-21T12:42:19Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","repos_url":"https://api.github.com/users/jacquev6/repos","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":6481200},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5191621","body":"Thank you","updated_at":"2012-06-21T12:52:06Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6481392","created_at":"2012-06-21T12:52:06Z","user":{"type":"User","gists_url":"https://api.github.com/users/kukuts/gists{/gist_id}","events_url":"https://api.github.com/users/kukuts/events{/privacy}","followers_url":"https://api.github.com/users/kukuts/followers","avatar_url":"https://secure.gravatar.com/avatar/9be6ba907be1740213b69422fdf52b57?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/kukuts/following","organizations_url":"https://api.github.com/users/kukuts/orgs","url":"https://api.github.com/users/kukuts","repos_url":"https://api.github.com/users/kukuts/repos","starred_url":"https://api.github.com/users/kukuts/starred{/owner}{/repo}","gravatar_id":"9be6ba907be1740213b69422fdf52b57","login":"kukuts","received_events_url":"https://api.github.com/users/kukuts/received_events","subscriptions_url":"https://api.github.com/users/kukuts/subscriptions","id":1831238},"id":6481392},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5256315","body":"I was running into issues with labels with spaces. The _identity attribute is just the URL encoded name.\n\nIt works great for building a URL endpoint, but not so great when the label's name is going to part of the POST body since it causes GitHub to return a 422 error complaining that the label doesn't exist.","updated_at":"2012-06-25T18:47:30Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6556134","created_at":"2012-06-25T18:47:30Z","user":{"type":"User","gists_url":"https://api.github.com/users/philipkimmey/gists{/gist_id}","events_url":"https://api.github.com/users/philipkimmey/events{/privacy}","followers_url":"https://api.github.com/users/philipkimmey/followers","avatar_url":"https://secure.gravatar.com/avatar/decc9323f241b6dd24ec35ef7cabaf75?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/philipkimmey/following","organizations_url":"https://api.github.com/users/philipkimmey/orgs","url":"https://api.github.com/users/philipkimmey","repos_url":"https://api.github.com/users/philipkimmey/repos","starred_url":"https://api.github.com/users/philipkimmey/starred{/owner}{/repo}","gravatar_id":"decc9323f241b6dd24ec35ef7cabaf75","login":"philipkimmey","received_events_url":"https://api.github.com/users/philipkimmey/received_events","subscriptions_url":"https://api.github.com/users/philipkimmey/subscriptions","id":211079},"id":6556134},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5256315","body":"You're perfectly right, thank you! I'll merge your contribution and publish a new version next week-end.","updated_at":"2012-06-25T19:33:48Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6557261","created_at":"2012-06-25T19:30:24Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","repos_url":"https://api.github.com/users/jacquev6/repos","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":6557261},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5259624","body":"Welcome back! Indeed, PyGithub has evolved (and stabilized).\n\nMethods that used to return a list of objects now return a `PaginatedList`. `PaginatedList` instances are only iterable (They do not support concatenation as lists do, and you cannot call `len` on them).\n\nThe rationale behind that? It is related to issue #33 and requests returning a large number of objects. In the previous version, creating a list of all the requested objects required a lot of [pagination requests](http://developer.github.com/v3/#pagination), and was quite long. It was a waste of time if the user was interested only in the first elements of that list. Enters `PaginatedList`, which does the pagination requests only when really needed. And it is no more limited to 10 pages.\n\nSo, to achieve what your are trying to do, you have to iterate the `PaginatedList` explicitly, either in a loop, or in the constructor of another collection.\n\nSimple iteration:\n\n for issue in itertools.chain(\n repo.get_issues( state = 'closed' ),\n repo.get_issues( state = 'open' )\n ):\n do stuff\n\nReal list from PaginatedList (and then you can have its length):\n\n issues = list( repo.get_issues( state = 'closed' ) ) + list( repo.get_issues( state = 'open' ) )\n nb_issues = len( issues )\n","updated_at":"2012-06-26T06:34:33Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6568164","created_at":"2012-06-26T06:34:33Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","repos_url":"https://api.github.com/users/jacquev6/repos","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":6568164},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5259624","body":"I'll try to document this behavior soon.","updated_at":"2012-06-26T06:35:48Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6568181","created_at":"2012-06-26T06:35:48Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","repos_url":"https://api.github.com/users/jacquev6/repos","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":6568181},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5259624","body":"Thanks for this, very helpful. I didn't know I could cast to list so easily (could've tried, though >.<)","updated_at":"2012-06-26T07:02:14Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6568553","created_at":"2012-06-26T07:02:14Z","user":{"type":"User","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","followers_url":"https://api.github.com/users/bilderbuchi/followers","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/bilderbuchi/following","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","url":"https://api.github.com/users/bilderbuchi","repos_url":"https://api.github.com/users/bilderbuchi/repos","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","id":327442},"id":6568553},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5256315","body":"I've fixed Repository.create_issue and .get_issues as well.","updated_at":"2012-06-28T20:10:39Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6640187","created_at":"2012-06-28T20:10:39Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","repos_url":"https://api.github.com/users/jacquev6/repos","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":6640187},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5256315","body":"I've just merged your commit in branch `develop`. It will go in `master` when I publish version 1.2. You can expect it on Saturday or Sunday. Thank you again for the bug report and the associated patch.","updated_at":"2012-06-28T20:10:44Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6640189","created_at":"2012-06-28T20:10:44Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","repos_url":"https://api.github.com/users/jacquev6/repos","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":6640189},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5191621","body":"Problem: issues returned by the [`/legacy/issues/search` API](http://developer.github.com/v3/search/#search-issues) do not match those returned by [other v3 APIs](http://developer.github.com/v3/issues/#response):\n* labels are returned only by name, not not name, color and url\n* date-time format is different\n* maybe something else\n\nOf course, similar differences exist for users and repositories.\n\nIntegrating this legacy API will be more difficult than I thought.","updated_at":"2012-06-28T21:02:23Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6641223","created_at":"2012-06-28T20:49:13Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","repos_url":"https://api.github.com/users/jacquev6/repos","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":6641223},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5191621","body":"This is implemented in version 1.2, you can update from pypi.","updated_at":"2012-06-29T18:47:28Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6673380","created_at":"2012-06-29T18:47:28Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","repos_url":"https://api.github.com/users/jacquev6/repos","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":6673380},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","body":"Interestingly, if I convert this manually in the meantime, using the method you use in the PyGithub code (`tdate=datetime.datetime.strptime(t.commit.commit.committer.date, \"%Y-%m-%dT%H:%M:%SZ\")`), I get an error cause the format does not match. I get a string of the form `2010-02-11T01:17:27-08:00` - time zone information has been added, but I don't know how to parse it, the `:` in `-08:00` prevents me from using `%z` (which expects UTC offset in the form +HHMM or -HHMM). I will discard it for now, but maybe you got insight why this happens?","updated_at":"2012-07-02T14:58:45Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6710355","created_at":"2012-07-02T14:58:45Z","user":{"type":"User","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","followers_url":"https://api.github.com/users/bilderbuchi/followers","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/bilderbuchi/following","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","url":"https://api.github.com/users/bilderbuchi","repos_url":"https://api.github.com/users/bilderbuchi/repos","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","id":327442},"id":6710355},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","body":"Hello Christoph!\n\nIndeed this attribute should be a `datetime.datetime`. And as you noticed, it is not formated like other dates returned by Github... I remember I discovered that when I was doing the conversion from string of all the `*_at` and `*_on` attributes, and I did not take time to dig deeper.\n\nI will create a more generic date parsing function that handles all formats returned by Github, and I'll use it for all `datetime` attributes.\n\nBut before that, I'll have to understand timezone handling in Python, so do not expect this too soon (maybe mid-July).","updated_at":"2012-07-03T07:15:53Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6727553","created_at":"2012-07-03T07:15:53Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","repos_url":"https://api.github.com/users/jacquev6/repos","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":6727553},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","body":"yeah no problem, I'm not reliant on so precise information, take your time. btw, maybe that's a bug in the github API? why would this one time be returned in a different way than all the others? I can't see a reason for this.\n\nagreed, time(zones) in python are crazy at times.","updated_at":"2012-07-03T07:24:21Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6727659","created_at":"2012-07-03T07:24:21Z","user":{"type":"User","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","followers_url":"https://api.github.com/users/bilderbuchi/followers","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/bilderbuchi/following","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","url":"https://api.github.com/users/bilderbuchi","repos_url":"https://api.github.com/users/bilderbuchi/repos","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","id":327442},"id":6727659},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","body":"I don't think it's a bug in Github:\n* `GitAuthor.date` is related to an action done somewhere (on the committer's computer), so it carries the timezone of this computer\n* other datetimes are related to actions done on Github's servers, so it's returned with a \"Z\" timezone meaning \"UTC\", the timezone of these servers.","updated_at":"2012-07-03T07:36:30Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6727848","created_at":"2012-07-03T07:36:30Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","repos_url":"https://api.github.com/users/jacquev6/repos","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":6727848},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","body":"And by the way, I'm not sure it's a problem for you but I prefer to make it clear: if `tag` is a `Tag`, then `tag.commit.commit.committer.date` is the date of the tagged commit, not the date of the tag. If you really need the date of the tag, you need a `GitTag` and use `git_tag.tagger.date`.","updated_at":"2012-07-03T07:50:18Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6728069","created_at":"2012-07-03T07:50:18Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","repos_url":"https://api.github.com/users/jacquev6/repos","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":6728069},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","body":"ah, makes sense. If you want to avoid the timezone confusion, mayb what is suggested [here](http://stackoverflow.com/a/117615/599884) makes most sense: \n\"Keep your internal datetime objects naive and in UTC and convert to your timezone for formatting only. The reason why you probably want naive objects (objects without timezone information) is that many libraries and database adapters have no idea about timezones.\"\nSo maybe it makes sense to just convert the GitAuthor times to UTC when getting them (i.e. apply the offset to the given time), to be consistent with the rest.\n\nThanks about the clarification re: GitTag/Tag. I prefer the date of the tagged commit, though, the tags mark release commits.\n","updated_at":"2012-07-03T07:59:36Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6728241","created_at":"2012-07-03T07:59:36Z","user":{"type":"User","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","followers_url":"https://api.github.com/users/bilderbuchi/followers","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/bilderbuchi/following","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","url":"https://api.github.com/users/bilderbuchi","repos_url":"https://api.github.com/users/bilderbuchi/repos","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","id":327442},"id":6728241},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","body":"If I convert the `GitAuthor.date` to UTC, I loose the information about where the committer lives... It may or may not be a problem depending on my client's use case.\n\nI'll find a way to make it clear and not loose information, maybe I will convert `date` to UTC (keep it naive), and add another attribute `timezone` to `GitAuthor`.","updated_at":"2012-07-07T18:18:46Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6728370","created_at":"2012-07-03T08:08:08Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","repos_url":"https://api.github.com/users/jacquev6/repos","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":6728370},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","body":"I still have to convert the datetime to UTC. But there is something silly about timezones returned by Github: my commits are timezoned \"-07:00\" while I live in France (UTC +1 or +2). I have to investigate that.","updated_at":"2012-07-10T19:42:43Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6886561","created_at":"2012-07-10T19:42:43Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","repos_url":"https://api.github.com/users/jacquev6/repos","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":6886561},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","body":"Well, well, well... I now revise my judgement: **absolutely all** commits I've retrieved from Github are in timezone -07:00, so this must indeed be a flaw in the API, returning date formatted in the local timezone of the GIthub servers only for this attribute. @bilderbuchi, you were right in https://github.com/jacquev6/PyGithub/issues/54#issuecomment-6727659 :-)\n\nThere is no point keeping this GitAuthor.timezone attribute. I will just convert everything to UTC.","updated_at":"2012-07-13T19:17:15Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6972414","created_at":"2012-07-13T19:05:53Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","repos_url":"https://api.github.com/users/jacquev6/repos","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":6972414},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","body":"ok. maybe also write to github about this probable bug in the API, to see what's the deal?","updated_at":"2012-07-15T19:57:26Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6994436","created_at":"2012-07-15T19:57:26Z","user":{"type":"User","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","followers_url":"https://api.github.com/users/bilderbuchi/followers","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/bilderbuchi/following","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","url":"https://api.github.com/users/bilderbuchi","repos_url":"https://api.github.com/users/bilderbuchi/repos","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","id":327442},"id":6994436},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","body":"@bilderbuchi, to be honest, I don't think I will take time to contact Github about that.","updated_at":"2012-07-18T09:12:53Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/7060818","created_at":"2012-07-18T09:12:53Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","repos_url":"https://api.github.com/users/jacquev6/repos","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":7060818},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","body":"Sure, I understand. :-)","updated_at":"2012-07-18T09:21:16Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/7060993","created_at":"2012-07-18T09:21:16Z","user":{"type":"User","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","followers_url":"https://api.github.com/users/bilderbuchi/followers","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/bilderbuchi/following","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","url":"https://api.github.com/users/bilderbuchi","repos_url":"https://api.github.com/users/bilderbuchi/repos","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","id":327442},"id":7060993},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5783131","body":"Thank you for this useful contribution! You even respected my special spacing convention!\n\nI will publish the version 1.4 of PyGithub next week-end.","updated_at":"2012-07-24T16:07:06Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/7211543","created_at":"2012-07-24T16:07:06Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","repos_url":"https://api.github.com/users/jacquev6/repos","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":7211543},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5783131","body":"Hum, I'm having trouble with my computer and not much time to fix it. I'll publish PyGithub 1.4 as soon as possible.","updated_at":"2012-07-31T18:47:09Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/7407798","created_at":"2012-07-31T18:47:09Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","repos_url":"https://api.github.com/users/jacquev6/repos","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":7407798},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5806612","body":"Published, at last...","updated_at":"2012-08-04T06:11:43Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/7499550","created_at":"2012-08-04T06:11:43Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","repos_url":"https://api.github.com/users/jacquev6/repos","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":7499550},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/6353712","body":"Hello!\n\nI confirm that the following code exhibits the same issue:\n\n import github\n\n g = github.Github()\n r = g.get_user( \"jacquev6\" ).get_repo( \"PyGithub\" )\n p = r.get_pull( 57 )\n print p.title, \"has\", p.comments, \"comments\"\n print [ c.body[ :15 ] for c in p.get_comments() ]\n\nIt prints:\n\n Allows connection to GitHub Enterprise installs on local URLs has 2 comments\n []\n\nThis last line calls API https://api.github.com/repos/jacquev6/PyGithub/pulls/57/comments, as documented in http://developer.github.com/v3/pulls/comments/#list-comments-on-a-pull-request, but the API returns an empty list. I've just managed to get the comments by calling https://api.github.com/repos/jacquev6/PyGithub/issues/57/comments instead. The issue must be on Github's side.\n\nAs a **temporary** work-around, you can use the following code to do as if the pull request is an issue, and call the other API:\n\n print [ c.body[ :15 ] for c in r.get_issue( p.number ).get_comments() ]\n\nRight now, I have not enough time to take care of this problem, but if it's still here at the beginning of September, I will contact Github and/or patch PyGithub.\n\nEnjoy,","updated_at":"2012-08-21T22:15:01Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/7918385","created_at":"2012-08-21T22:15:01Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","repos_url":"https://api.github.com/users/jacquev6/repos","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":7918385}] + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/comments?sort=created&direction=asc +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '42659'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4967'), ('server', 'nginx'), ('last-modified', 'Fri, 21 Dec 2012 22:43:37 GMT'), ('connection', 'keep-alive'), ('etag', '"e9ac24ceac76d4d31cf648484a47b665"'), ('link', '; rel="next", ; rel="last"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Tue, 25 Dec 2012 11:54:04 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4141750","body":"Thank you for reporting this. I'll publish a fix as soon as possible (tonight or tomorrow)","updated_at":"2012-04-17T05:50:25Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5168757","created_at":"2012-04-17T05:50:25Z","user":{"type":"User","received_events_url":"https://api.github.com/users/jacquev6/received_events","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":5168757},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4141750","body":"Fixed in version 0.6. Please `easy_install --upgrade pygithub`","updated_at":"2012-04-17T17:59:18Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5181640","created_at":"2012-04-17T17:59:18Z","user":{"type":"User","received_events_url":"https://api.github.com/users/jacquev6/received_events","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":5181640},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4141750","body":"yes fixed thanks","updated_at":"2012-04-17T18:58:05Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5183010","created_at":"2012-04-17T18:58:05Z","user":{"type":"User","received_events_url":"https://api.github.com/users/tallforasmurf/received_events","avatar_url":"https://secure.gravatar.com/avatar/bff435ae5fc2e73d7c7c8351231e8040?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gists_url":"https://api.github.com/users/tallforasmurf/gists{/gist_id}","followers_url":"https://api.github.com/users/tallforasmurf/followers","following_url":"https://api.github.com/users/tallforasmurf/following","organizations_url":"https://api.github.com/users/tallforasmurf/orgs","starred_url":"https://api.github.com/users/tallforasmurf/starred{/owner}{/repo}","url":"https://api.github.com/users/tallforasmurf","gravatar_id":"bff435ae5fc2e73d7c7c8351231e8040","repos_url":"https://api.github.com/users/tallforasmurf/repos","login":"tallforasmurf","events_url":"https://api.github.com/users/tallforasmurf/events{/privacy}","subscriptions_url":"https://api.github.com/users/tallforasmurf/subscriptions","id":1137018},"id":5183010},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4159230","body":"`UnknownGithubObject` is the exception I throw when you request an object that doesn't exist. Here, there is no download with `id` `1` or `\"foobar\"` in your repo.\r\n\r\nThe `TypeError` you get when calling `repo.get_download()`is because `get_download` requires an argument as stated in the [reference of classes](https://github.com/jacquev6/PyGithub/blob/master/ReferenceOfClasses.md) (See \"Downloads\" in \"class Repository\").\r\n\r\nSo, what argument should you pass to `get_downloads`? Well, the documentation says `id`, so you can first call `get_downloads` which returns a list of `Download`s, and look what is `Download.id`.\r\n\r\nThe fact is that I have no repository to test this with downloads, but here is an example with issues (`g` is a `Github` instance):\r\n\r\n >>> g.get_user().get_repo( \"PyGithub\" ).get_issues()[0].number\r\n 23\r\n >>> g.get_user().get_repo( \"PyGithub\" ).get_issue( 23 )\r\n \r\n\r\n(I took the `number` attribute of the first `Issue`, because the reference says that `get_issue` takes a `number`.)\r\n\r\nI hope it helps.","updated_at":"2012-04-17T21:10:15Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5186061","created_at":"2012-04-17T21:10:15Z","user":{"type":"User","received_events_url":"https://api.github.com/users/jacquev6/received_events","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":5186061},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4159230","body":"I hope this report will be useful, however, I am not going to be using this package after all. I discovered (what should have been obvious) that I can get everything I need from github just using urllib and reading the page.\r\n\r\n import urllib2\r\n try:\r\n u = urllib2.urlopen( 'https://github.com//', timeout=5 )\r\n except:\r\n #cannot contact github - try later\r\n #exit\r\n s = u.read()\r\n u.close()\r\n\r\nIt's all there, file names, SHA, last commit date, and if I want to read file data, no need to decode a blob, it's at ```https://raw.github.com///master/```\r\n","updated_at":"2012-04-19T16:40:02Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5226090","created_at":"2012-04-19T16:40:02Z","user":{"type":"User","received_events_url":"https://api.github.com/users/tallforasmurf/received_events","avatar_url":"https://secure.gravatar.com/avatar/bff435ae5fc2e73d7c7c8351231e8040?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gists_url":"https://api.github.com/users/tallforasmurf/gists{/gist_id}","followers_url":"https://api.github.com/users/tallforasmurf/followers","following_url":"https://api.github.com/users/tallforasmurf/following","organizations_url":"https://api.github.com/users/tallforasmurf/orgs","starred_url":"https://api.github.com/users/tallforasmurf/starred{/owner}{/repo}","url":"https://api.github.com/users/tallforasmurf","gravatar_id":"bff435ae5fc2e73d7c7c8351231e8040","repos_url":"https://api.github.com/users/tallforasmurf/repos","login":"tallforasmurf","events_url":"https://api.github.com/users/tallforasmurf/events{/privacy}","subscriptions_url":"https://api.github.com/users/tallforasmurf/subscriptions","id":1137018},"id":5226090},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4356743","body":"Thank you for the suggestion. It's somehow related to https://github.com/jacquev6/PyGithub/issues/6, even if I have not described it in details.\r\n\r\nI'm currently doing a very deep rewrite, which will lead to much more readable stack traces in case of exceptions, and I will include more details about the error. I may also be able to detect type errors *before* sending the request to github.\r\n\r\nBy the way, I'm very glad to hear that you have solved a real-life use case using PyGithub :-)","updated_at":"2012-05-01T22:03:59Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5449237","created_at":"2012-05-01T22:03:59Z","user":{"type":"User","received_events_url":"https://api.github.com/users/jacquev6/received_events","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":5449237},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4356743","body":"Good to hear you are already working on this in #6, so I suppose this can be tagged as duplicate and be closed.\r\n\r\nBTW, I cleaned up my script to convert Trac tickets to Github issues and uploaded it to PyPI: http://pypi.python.org/pypi/tratihubis/. It seems that at least some people find it useful, so hopefully it helps to popularize PyGithub a little.","updated_at":"2012-05-04T19:23:57Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5518272","created_at":"2012-05-04T19:23:57Z","user":{"type":"User","received_events_url":"https://api.github.com/users/roskakori/received_events","avatar_url":"https://secure.gravatar.com/avatar/b58d0f1ea06b8d5de5f02c53f747ac03?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gists_url":"https://api.github.com/users/roskakori/gists{/gist_id}","followers_url":"https://api.github.com/users/roskakori/followers","following_url":"https://api.github.com/users/roskakori/following","organizations_url":"https://api.github.com/users/roskakori/orgs","starred_url":"https://api.github.com/users/roskakori/starred{/owner}{/repo}","url":"https://api.github.com/users/roskakori","gravatar_id":"b58d0f1ea06b8d5de5f02c53f747ac03","repos_url":"https://api.github.com/users/roskakori/repos","login":"roskakori","events_url":"https://api.github.com/users/roskakori/events{/privacy}","subscriptions_url":"https://api.github.com/users/roskakori/subscriptions","id":328726},"id":5518272},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/3617711","body":"This was reported by user in #24. I close this one because the other one has more information.","updated_at":"2012-05-07T10:45:58Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5547576","created_at":"2012-05-07T10:45:58Z","user":{"type":"User","received_events_url":"https://api.github.com/users/jacquev6/received_events","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":5547576},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4622816","body":"Thank you for your feedback.\n\nI have indeed not yet implemented this feature because I have no real use of it: each API call is more than half a second long, so it's hard to reach the rate limit.\n\nAnyway, it is easy to extract the rate limiting headers, so I will add an attribute to the Github class to give access to their last value.\n\nExpect it in version 1.0. I will set an expected date on the milestone during the week-end.\n","updated_at":"2012-05-18T05:27:40Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5780183","created_at":"2012-05-18T05:27:40Z","user":{"type":"User","received_events_url":"https://api.github.com/users/jacquev6/received_events","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":5780183},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4622816","body":"Ah good point about it being hard to reach. Thanks for implementing it. No hurry, though, it's not that important. :-)","updated_at":"2012-05-18T08:34:04Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5781803","created_at":"2012-05-18T08:34:04Z","user":{"type":"User","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","repos_url":"https://api.github.com/users/bilderbuchi/repos","login":"bilderbuchi","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","id":327442},"id":5781803},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4622816","body":"Implemented in ca97469. Will be in version 1.0.","updated_at":"2012-05-21T11:17:12Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5820199","created_at":"2012-05-21T11:17:12Z","user":{"type":"User","received_events_url":"https://api.github.com/users/jacquev6/received_events","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":5820199},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4622816","body":"Thanks. :-)","updated_at":"2012-05-21T12:09:57Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5820912","created_at":"2012-05-21T12:09:57Z","user":{"type":"User","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","repos_url":"https://api.github.com/users/bilderbuchi/repos","login":"bilderbuchi","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","id":327442},"id":5820912},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/3624575","body":"It means that there will be three ways to create an instance of the Github class:\n github = Github()\n github = Github( login, password )\n github = Github( oauth_token )\n","updated_at":"2012-05-25T06:31:42Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5924198","created_at":"2012-05-25T06:31:42Z","user":{"type":"User","received_events_url":"https://api.github.com/users/jacquev6/received_events","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":5924198},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4780155","body":"You're definitively my best user ! I hope you will not get tired of discovering bugs and limitations in my library.\n\nThis issue is related to https://github.com/jacquev6/PyGithub/blob/master/github/Requester.py#L28 and the `pageCount < 10`: I've had to limit to 10 pages for some obscure reason I don't remember.\n\nIn version 1.0, `get_issues` (and other `get_collection`s) will not return a Python `list` but a `github.PaginatedList` which will be iterable and not limited to 10 pages, (but you won't be able to call `len` on it).","updated_at":"2012-05-28T13:52:22Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5965724","created_at":"2012-05-28T13:52:22Z","user":{"type":"User","received_events_url":"https://api.github.com/users/jacquev6/received_events","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":5965724},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/3527245","body":"For example, `Repository.edit` has a first parameter, `name`, which is mandatory, and should not. We could deduce it from the `name` attribute.","updated_at":"2012-05-28T13:58:35Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5965812","created_at":"2012-05-28T13:58:35Z","user":{"type":"User","received_events_url":"https://api.github.com/users/jacquev6/received_events","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":5965812},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4780155","body":"I see. Is there a possibility to increase the number of items per page to work around this for now? This is in the API (with `&per_page=100` according to API docs), but I'm unsure how to do this in PyGithub. Default is 25, max 100.","updated_at":"2012-05-28T14:04:42Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5965891","created_at":"2012-05-28T14:04:25Z","user":{"type":"User","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","repos_url":"https://api.github.com/users/bilderbuchi/repos","login":"bilderbuchi","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","id":327442},"id":5965891},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4780155","body":"If you can't or don't want to modify PyGithub locally, I'm afraid you're stuck to 10 pages of 25 items, sorry.\n\nIf you can patch PyGithub, just increase/remove the limit on `pageCount` in `Requester.py`.\n\nBe assured I will publish version 1.0 on next Monday, with all the things I promised :)","updated_at":"2012-05-28T14:42:47Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5966555","created_at":"2012-05-28T14:42:47Z","user":{"type":"User","received_events_url":"https://api.github.com/users/jacquev6/received_events","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":5966555},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4780155","body":"I see. I can either patch it locally, or just wait for next week. It will take a while until I get all the other work done, waiting for 1.0 probably won't delay me at all.","updated_at":"2012-05-28T14:47:02Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5966633","created_at":"2012-05-28T14:47:02Z","user":{"type":"User","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","repos_url":"https://api.github.com/users/bilderbuchi/repos","login":"bilderbuchi","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","id":327442},"id":5966633},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4793162","body":"Add a test `Issue33.testClosedIssues` when `Repository.get_issues` uses its 'state' parameter for issue #33","updated_at":"2012-05-29T11:36:02Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5981084","created_at":"2012-05-29T11:36:02Z","user":{"type":"User","received_events_url":"https://api.github.com/users/jacquev6/received_events","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":5981084},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4793290","body":"Duplicate of #18...","updated_at":"2012-05-29T11:45:46Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5981232","created_at":"2012-05-29T11:45:46Z","user":{"type":"User","received_events_url":"https://api.github.com/users/jacquev6/received_events","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":5981232},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4639931","body":"Will be OK in version 1.0: no more strange meta-description of the API, and the (generated, but it does not mater) code is easily readable by the IDE's auto-completion tool.","updated_at":"2012-05-29T11:56:06Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5981409","created_at":"2012-05-29T11:56:06Z","user":{"type":"User","received_events_url":"https://api.github.com/users/jacquev6/received_events","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":5981409},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/3716033","body":"This will be covered by #36","updated_at":"2012-05-29T11:58:04Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5981451","created_at":"2012-05-29T11:58:04Z","user":{"type":"User","received_events_url":"https://api.github.com/users/jacquev6/received_events","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":5981451},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4793162","body":"@Lyloa I have to mention someone to test `Repository.get_issues` with argument `mentioned`","updated_at":"2012-05-29T18:38:53Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5991965","created_at":"2012-05-29T18:38:53Z","user":{"type":"User","received_events_url":"https://api.github.com/users/jacquev6/received_events","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":5991965},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4356743","body":"Should be much improved by 7248e66. Will be in version 1.0","updated_at":"2012-05-30T19:58:35Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6019700","created_at":"2012-05-30T19:58:35Z","user":{"type":"User","received_events_url":"https://api.github.com/users/jacquev6/received_events","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":6019700},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/3619973","body":"Done! You can `easy_install --upgrade PyGithub`.","updated_at":"2012-06-03T19:56:17Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6088432","created_at":"2012-06-03T19:56:17Z","user":{"type":"User","received_events_url":"https://api.github.com/users/jacquev6/received_events","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":6088432},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5036241","body":"PyGithub is definitely licensed under the GNU **Lesser** General Public License.\n\nAccording to http://www.gnu.org/licenses/gpl-howto.html, including both COPYING and COPYING.LESSER is the good way to use the LGPL. Anyway, this is misleading, so I will add a section about licensing in the readme today or tomorrow.\n\nThank you for your feedback, I hope PyGithub will be useful for you.","updated_at":"2012-06-13T10:52:24Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6293572","created_at":"2012-06-13T06:03:24Z","user":{"type":"User","received_events_url":"https://api.github.com/users/jacquev6/received_events","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":6293572},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5036241","body":"Sorry I wasn't up to date on v3 licensing best practices. Thank you very much!\n","updated_at":"2012-06-13T16:17:27Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6305625","created_at":"2012-06-13T16:17:27Z","user":{"type":"User","received_events_url":"https://api.github.com/users/jeblair/received_events","avatar_url":"https://secure.gravatar.com/avatar/12dc328a104d4c4694b3df308bcd4e6d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gists_url":"https://api.github.com/users/jeblair/gists{/gist_id}","followers_url":"https://api.github.com/users/jeblair/followers","following_url":"https://api.github.com/users/jeblair/following","organizations_url":"https://api.github.com/users/jeblair/orgs","starred_url":"https://api.github.com/users/jeblair/starred{/owner}{/repo}","url":"https://api.github.com/users/jeblair","gravatar_id":"12dc328a104d4c4694b3df308bcd4e6d","repos_url":"https://api.github.com/users/jeblair/repos","login":"jeblair","events_url":"https://api.github.com/users/jeblair/events{/privacy}","subscriptions_url":"https://api.github.com/users/jeblair/subscriptions","id":899068},"id":6305625},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5092592","body":"Hello, when the user has not set his name, `user.name` is `None`, so you can't concatenate it with a string. The exception is not raised by PyGithub but by your code. Try `print user.login, \"->\", user.name` to avoid string concatenation.","updated_at":"2012-06-15T16:56:50Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6357374","created_at":"2012-06-15T14:08:33Z","user":{"type":"User","received_events_url":"https://api.github.com/users/jacquev6/received_events","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":6357374},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5092592","body":"Perfect! Thanks, that worked. I _knew_ `+` for string concatenation was evil...did not listen.","updated_at":"2012-06-15T14:12:00Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6357422","created_at":"2012-06-15T14:10:33Z","user":{"type":"User","received_events_url":"https://api.github.com/users/aneroid/received_events","avatar_url":"https://secure.gravatar.com/avatar/5557aad9ff70c36cfac418f511bdea98?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gists_url":"https://api.github.com/users/aneroid/gists{/gist_id}","followers_url":"https://api.github.com/users/aneroid/followers","following_url":"https://api.github.com/users/aneroid/following","organizations_url":"https://api.github.com/users/aneroid/orgs","starred_url":"https://api.github.com/users/aneroid/starred{/owner}{/repo}","url":"https://api.github.com/users/aneroid","gravatar_id":"5557aad9ff70c36cfac418f511bdea98","repos_url":"https://api.github.com/users/aneroid/repos","login":"aneroid","events_url":"https://api.github.com/users/aneroid/events{/privacy}","subscriptions_url":"https://api.github.com/users/aneroid/subscriptions","id":1468519},"id":6357422},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5152384","body":"Thank you for your contribution, I will merge it and publish version 1.1 tonight.","updated_at":"2012-06-20T08:15:10Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6447481","created_at":"2012-06-20T08:15:10Z","user":{"type":"User","received_events_url":"https://api.github.com/users/jacquev6/received_events","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":6447481}] + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/comments?direction=asc&page=2&sort=created +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '46165'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4966'), ('server', 'nginx'), ('last-modified', 'Fri, 21 Dec 2012 18:46:45 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('etag', '"446137bf216c4edc30567fbc3e944b5a"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Tue, 25 Dec 2012 11:54:15 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-06-20T21:06:08Z","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5152384","created_at":"2012-06-20T21:06:08Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6467193","body":"I've just pushed the version 1.1 of the package. You can `easy_install --upgrade PyGithub` if you want.","user":{"type":"User","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","url":"https://api.github.com/users/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"id":6467193},{"updated_at":"2012-06-20T21:11:31Z","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5177381","created_at":"2012-06-20T21:11:31Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6467312","body":"Hello Alex, thank you for your feedback.\n\nI've just pushed the version 1.1 of the package. I've used `package_data` as explained in the [documentation of distutils](http://docs.python.org/distutils/setupscript.html#installing-package-data), but I'm still not very confident about my understanding of distutils... \n\nCould you please upgrade the package and tell if it's better?","user":{"type":"User","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","url":"https://api.github.com/users/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"id":6467312},{"updated_at":"2012-06-20T21:33:50Z","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5177381","created_at":"2012-06-20T21:22:44Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6467642","body":"Thanks for looking at this so quickly! Here's the result of running `python setup.py install` with your new changes:\n\n```\n\nrunning install_lib\ncopying build/lib/COPYING -> /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages\ncopying build/lib/COPYING.LESSER -> /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages\ncreating /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/doc\ncopying build/lib/doc/Design.md -> /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/doc\ncopying build/lib/doc/ReferenceOfApis.md -> /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/doc\ncopying build/lib/doc/ReferenceOfClasses.md -> /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/doc\ncopying build/lib/github/Requester.py -> /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/github\ncopying build/lib/ReadMe.md -> /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages\n\n```\n\nI wish I could help, but I'm afraid I don't know how setuptools works.","user":{"type":"User","repos_url":"https://api.github.com/users/malexw/repos","subscriptions_url":"https://api.github.com/users/malexw/subscriptions","events_url":"https://api.github.com/users/malexw/events{/privacy}","avatar_url":"https://secure.gravatar.com/avatar/13a30f9924fa2bd918cbb8d06dd8b55a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"malexw","received_events_url":"https://api.github.com/users/malexw/received_events","gists_url":"https://api.github.com/users/malexw/gists{/gist_id}","url":"https://api.github.com/users/malexw","followers_url":"https://api.github.com/users/malexw/followers","following_url":"https://api.github.com/users/malexw/following","organizations_url":"https://api.github.com/users/malexw/orgs","starred_url":"https://api.github.com/users/malexw/starred{/owner}{/repo}","gravatar_id":"13a30f9924fa2bd918cbb8d06dd8b55a","id":577322},"id":6467642},{"updated_at":"2012-06-21T12:42:19Z","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5191621","created_at":"2012-06-21T12:42:19Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6481200","body":"Those new apis where documented on June 5th, in https://github.com/github/developer.github.com/commit/3cff4bb9a1f1baf3101c984072cd4b4f0165618c. This explains that they are not covered by PyGithub 1.0 that was released on June 3rd.\n\nIt should not be too difficult to support them. I'll try to do it next week.","user":{"type":"User","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","url":"https://api.github.com/users/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"id":6481200},{"updated_at":"2012-06-21T12:52:06Z","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5191621","created_at":"2012-06-21T12:52:06Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6481392","body":"Thank you","user":{"type":"User","repos_url":"https://api.github.com/users/kukuts/repos","subscriptions_url":"https://api.github.com/users/kukuts/subscriptions","events_url":"https://api.github.com/users/kukuts/events{/privacy}","avatar_url":"https://secure.gravatar.com/avatar/9be6ba907be1740213b69422fdf52b57?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"kukuts","received_events_url":"https://api.github.com/users/kukuts/received_events","gists_url":"https://api.github.com/users/kukuts/gists{/gist_id}","url":"https://api.github.com/users/kukuts","followers_url":"https://api.github.com/users/kukuts/followers","following_url":"https://api.github.com/users/kukuts/following","organizations_url":"https://api.github.com/users/kukuts/orgs","starred_url":"https://api.github.com/users/kukuts/starred{/owner}{/repo}","gravatar_id":"9be6ba907be1740213b69422fdf52b57","id":1831238},"id":6481392},{"updated_at":"2012-06-25T18:47:30Z","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5256315","created_at":"2012-06-25T18:47:30Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6556134","body":"I was running into issues with labels with spaces. The _identity attribute is just the URL encoded name.\n\nIt works great for building a URL endpoint, but not so great when the label's name is going to part of the POST body since it causes GitHub to return a 422 error complaining that the label doesn't exist.","user":{"type":"User","repos_url":"https://api.github.com/users/philipkimmey/repos","subscriptions_url":"https://api.github.com/users/philipkimmey/subscriptions","events_url":"https://api.github.com/users/philipkimmey/events{/privacy}","avatar_url":"https://secure.gravatar.com/avatar/decc9323f241b6dd24ec35ef7cabaf75?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"philipkimmey","received_events_url":"https://api.github.com/users/philipkimmey/received_events","gists_url":"https://api.github.com/users/philipkimmey/gists{/gist_id}","url":"https://api.github.com/users/philipkimmey","followers_url":"https://api.github.com/users/philipkimmey/followers","following_url":"https://api.github.com/users/philipkimmey/following","organizations_url":"https://api.github.com/users/philipkimmey/orgs","starred_url":"https://api.github.com/users/philipkimmey/starred{/owner}{/repo}","gravatar_id":"decc9323f241b6dd24ec35ef7cabaf75","id":211079},"id":6556134},{"updated_at":"2012-06-25T19:33:48Z","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5256315","created_at":"2012-06-25T19:30:24Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6557261","body":"You're perfectly right, thank you! I'll merge your contribution and publish a new version next week-end.","user":{"type":"User","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","url":"https://api.github.com/users/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"id":6557261},{"updated_at":"2012-06-26T06:34:33Z","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5259624","created_at":"2012-06-26T06:34:33Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6568164","body":"Welcome back! Indeed, PyGithub has evolved (and stabilized).\n\nMethods that used to return a list of objects now return a `PaginatedList`. `PaginatedList` instances are only iterable (They do not support concatenation as lists do, and you cannot call `len` on them).\n\nThe rationale behind that? It is related to issue #33 and requests returning a large number of objects. In the previous version, creating a list of all the requested objects required a lot of [pagination requests](http://developer.github.com/v3/#pagination), and was quite long. It was a waste of time if the user was interested only in the first elements of that list. Enters `PaginatedList`, which does the pagination requests only when really needed. And it is no more limited to 10 pages.\n\nSo, to achieve what your are trying to do, you have to iterate the `PaginatedList` explicitly, either in a loop, or in the constructor of another collection.\n\nSimple iteration:\n\n for issue in itertools.chain(\n repo.get_issues( state = 'closed' ),\n repo.get_issues( state = 'open' )\n ):\n do stuff\n\nReal list from PaginatedList (and then you can have its length):\n\n issues = list( repo.get_issues( state = 'closed' ) ) + list( repo.get_issues( state = 'open' ) )\n nb_issues = len( issues )\n","user":{"type":"User","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","url":"https://api.github.com/users/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"id":6568164},{"updated_at":"2012-06-26T06:35:48Z","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5259624","created_at":"2012-06-26T06:35:48Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6568181","body":"I'll try to document this behavior soon.","user":{"type":"User","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","url":"https://api.github.com/users/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"id":6568181},{"updated_at":"2012-06-26T07:02:14Z","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5259624","created_at":"2012-06-26T07:02:14Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6568553","body":"Thanks for this, very helpful. I didn't know I could cast to list so easily (could've tried, though >.<)","user":{"type":"User","repos_url":"https://api.github.com/users/bilderbuchi/repos","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"bilderbuchi","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","url":"https://api.github.com/users/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","id":327442},"id":6568553},{"updated_at":"2012-06-28T20:10:39Z","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5256315","created_at":"2012-06-28T20:10:39Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6640187","body":"I've fixed Repository.create_issue and .get_issues as well.","user":{"type":"User","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","url":"https://api.github.com/users/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"id":6640187},{"updated_at":"2012-06-28T20:10:44Z","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5256315","created_at":"2012-06-28T20:10:44Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6640189","body":"I've just merged your commit in branch `develop`. It will go in `master` when I publish version 1.2. You can expect it on Saturday or Sunday. Thank you again for the bug report and the associated patch.","user":{"type":"User","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","url":"https://api.github.com/users/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"id":6640189},{"updated_at":"2012-06-28T21:02:23Z","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5191621","created_at":"2012-06-28T20:49:13Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6641223","body":"Problem: issues returned by the [`/legacy/issues/search` API](http://developer.github.com/v3/search/#search-issues) do not match those returned by [other v3 APIs](http://developer.github.com/v3/issues/#response):\n* labels are returned only by name, not not name, color and url\n* date-time format is different\n* maybe something else\n\nOf course, similar differences exist for users and repositories.\n\nIntegrating this legacy API will be more difficult than I thought.","user":{"type":"User","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","url":"https://api.github.com/users/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"id":6641223},{"updated_at":"2012-06-29T18:47:28Z","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5191621","created_at":"2012-06-29T18:47:28Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6673380","body":"This is implemented in version 1.2, you can update from pypi.","user":{"type":"User","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","url":"https://api.github.com/users/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"id":6673380},{"updated_at":"2012-07-02T14:58:45Z","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","created_at":"2012-07-02T14:58:45Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6710355","body":"Interestingly, if I convert this manually in the meantime, using the method you use in the PyGithub code (`tdate=datetime.datetime.strptime(t.commit.commit.committer.date, \"%Y-%m-%dT%H:%M:%SZ\")`), I get an error cause the format does not match. I get a string of the form `2010-02-11T01:17:27-08:00` - time zone information has been added, but I don't know how to parse it, the `:` in `-08:00` prevents me from using `%z` (which expects UTC offset in the form +HHMM or -HHMM). I will discard it for now, but maybe you got insight why this happens?","user":{"type":"User","repos_url":"https://api.github.com/users/bilderbuchi/repos","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"bilderbuchi","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","url":"https://api.github.com/users/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","id":327442},"id":6710355},{"updated_at":"2012-07-03T07:15:53Z","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","created_at":"2012-07-03T07:15:53Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6727553","body":"Hello Christoph!\n\nIndeed this attribute should be a `datetime.datetime`. And as you noticed, it is not formated like other dates returned by Github... I remember I discovered that when I was doing the conversion from string of all the `*_at` and `*_on` attributes, and I did not take time to dig deeper.\n\nI will create a more generic date parsing function that handles all formats returned by Github, and I'll use it for all `datetime` attributes.\n\nBut before that, I'll have to understand timezone handling in Python, so do not expect this too soon (maybe mid-July).","user":{"type":"User","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","url":"https://api.github.com/users/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"id":6727553},{"updated_at":"2012-07-03T07:24:21Z","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","created_at":"2012-07-03T07:24:21Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6727659","body":"yeah no problem, I'm not reliant on so precise information, take your time. btw, maybe that's a bug in the github API? why would this one time be returned in a different way than all the others? I can't see a reason for this.\n\nagreed, time(zones) in python are crazy at times.","user":{"type":"User","repos_url":"https://api.github.com/users/bilderbuchi/repos","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"bilderbuchi","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","url":"https://api.github.com/users/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","id":327442},"id":6727659},{"updated_at":"2012-07-03T07:36:30Z","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","created_at":"2012-07-03T07:36:30Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6727848","body":"I don't think it's a bug in Github:\n* `GitAuthor.date` is related to an action done somewhere (on the committer's computer), so it carries the timezone of this computer\n* other datetimes are related to actions done on Github's servers, so it's returned with a \"Z\" timezone meaning \"UTC\", the timezone of these servers.","user":{"type":"User","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","url":"https://api.github.com/users/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"id":6727848},{"updated_at":"2012-07-03T07:50:18Z","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","created_at":"2012-07-03T07:50:18Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6728069","body":"And by the way, I'm not sure it's a problem for you but I prefer to make it clear: if `tag` is a `Tag`, then `tag.commit.commit.committer.date` is the date of the tagged commit, not the date of the tag. If you really need the date of the tag, you need a `GitTag` and use `git_tag.tagger.date`.","user":{"type":"User","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","url":"https://api.github.com/users/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"id":6728069},{"updated_at":"2012-07-03T07:59:36Z","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","created_at":"2012-07-03T07:59:36Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6728241","body":"ah, makes sense. If you want to avoid the timezone confusion, mayb what is suggested [here](http://stackoverflow.com/a/117615/599884) makes most sense: \n\"Keep your internal datetime objects naive and in UTC and convert to your timezone for formatting only. The reason why you probably want naive objects (objects without timezone information) is that many libraries and database adapters have no idea about timezones.\"\nSo maybe it makes sense to just convert the GitAuthor times to UTC when getting them (i.e. apply the offset to the given time), to be consistent with the rest.\n\nThanks about the clarification re: GitTag/Tag. I prefer the date of the tagged commit, though, the tags mark release commits.\n","user":{"type":"User","repos_url":"https://api.github.com/users/bilderbuchi/repos","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"bilderbuchi","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","url":"https://api.github.com/users/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","id":327442},"id":6728241},{"updated_at":"2012-07-07T18:18:46Z","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","created_at":"2012-07-03T08:08:08Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6728370","body":"If I convert the `GitAuthor.date` to UTC, I loose the information about where the committer lives... It may or may not be a problem depending on my client's use case.\n\nI'll find a way to make it clear and not loose information, maybe I will convert `date` to UTC (keep it naive), and add another attribute `timezone` to `GitAuthor`.","user":{"type":"User","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","url":"https://api.github.com/users/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"id":6728370},{"updated_at":"2012-07-10T19:42:43Z","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","created_at":"2012-07-10T19:42:43Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6886561","body":"I still have to convert the datetime to UTC. But there is something silly about timezones returned by Github: my commits are timezoned \"-07:00\" while I live in France (UTC +1 or +2). I have to investigate that.","user":{"type":"User","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","url":"https://api.github.com/users/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"id":6886561},{"updated_at":"2012-07-13T19:17:15Z","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","created_at":"2012-07-13T19:05:53Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6972414","body":"Well, well, well... I now revise my judgement: **absolutely all** commits I've retrieved from Github are in timezone -07:00, so this must indeed be a flaw in the API, returning date formatted in the local timezone of the GIthub servers only for this attribute. @bilderbuchi, you were right in https://github.com/jacquev6/PyGithub/issues/54#issuecomment-6727659 :-)\n\nThere is no point keeping this GitAuthor.timezone attribute. I will just convert everything to UTC.","user":{"type":"User","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","url":"https://api.github.com/users/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"id":6972414},{"updated_at":"2012-07-15T19:57:26Z","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","created_at":"2012-07-15T19:57:26Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6994436","body":"ok. maybe also write to github about this probable bug in the API, to see what's the deal?","user":{"type":"User","repos_url":"https://api.github.com/users/bilderbuchi/repos","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"bilderbuchi","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","url":"https://api.github.com/users/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","id":327442},"id":6994436},{"updated_at":"2012-07-18T09:12:53Z","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","created_at":"2012-07-18T09:12:53Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/7060818","body":"@bilderbuchi, to be honest, I don't think I will take time to contact Github about that.","user":{"type":"User","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","url":"https://api.github.com/users/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"id":7060818},{"updated_at":"2012-07-18T09:21:16Z","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","created_at":"2012-07-18T09:21:16Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/7060993","body":"Sure, I understand. :-)","user":{"type":"User","repos_url":"https://api.github.com/users/bilderbuchi/repos","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"bilderbuchi","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","url":"https://api.github.com/users/bilderbuchi","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","id":327442},"id":7060993},{"updated_at":"2012-07-24T16:07:06Z","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5783131","created_at":"2012-07-24T16:07:06Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/7211543","body":"Thank you for this useful contribution! You even respected my special spacing convention!\n\nI will publish the version 1.4 of PyGithub next week-end.","user":{"type":"User","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","url":"https://api.github.com/users/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"id":7211543},{"updated_at":"2012-07-31T18:47:09Z","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5783131","created_at":"2012-07-31T18:47:09Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/7407798","body":"Hum, I'm having trouble with my computer and not much time to fix it. I'll publish PyGithub 1.4 as soon as possible.","user":{"type":"User","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","url":"https://api.github.com/users/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"id":7407798},{"updated_at":"2012-08-04T06:11:43Z","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5806612","created_at":"2012-08-04T06:11:43Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/7499550","body":"Published, at last...","user":{"type":"User","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","url":"https://api.github.com/users/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"id":7499550},{"updated_at":"2012-08-21T22:15:01Z","issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/6353712","created_at":"2012-08-21T22:15:01Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/7918385","body":"Hello!\n\nI confirm that the following code exhibits the same issue:\n\n import github\n\n g = github.Github()\n r = g.get_user( \"jacquev6\" ).get_repo( \"PyGithub\" )\n p = r.get_pull( 57 )\n print p.title, \"has\", p.comments, \"comments\"\n print [ c.body[ :15 ] for c in p.get_comments() ]\n\nIt prints:\n\n Allows connection to GitHub Enterprise installs on local URLs has 2 comments\n []\n\nThis last line calls API https://api.github.com/repos/jacquev6/PyGithub/pulls/57/comments, as documented in http://developer.github.com/v3/pulls/comments/#list-comments-on-a-pull-request, but the API returns an empty list. I've just managed to get the comments by calling https://api.github.com/repos/jacquev6/PyGithub/issues/57/comments instead. The issue must be on Github's side.\n\nAs a **temporary** work-around, you can use the following code to do as if the pull request is an issue, and call the other API:\n\n print [ c.body[ :15 ] for c in r.get_issue( p.number ).get_comments() ]\n\nRight now, I have not enough time to take care of this problem, but if it's still here at the beginning of September, I will contact Github and/or patch PyGithub.\n\nEnjoy,","user":{"type":"User","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","url":"https://api.github.com/users/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"id":7918385}] + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/comments?since=2012-05-28T23%3A00%3A00Z +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '43751'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4965'), ('server', 'nginx'), ('last-modified', 'Fri, 21 Dec 2012 22:43:37 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last"'), ('etag', '"e9ac24ceac76d4d31cf648484a47b665"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Tue, 25 Dec 2012 11:54:26 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4793162","body":"Add a test `Issue33.testClosedIssues` when `Repository.get_issues` uses its 'state' parameter for issue #33","updated_at":"2012-05-29T11:36:02Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5981084","created_at":"2012-05-29T11:36:02Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146,"starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}"},"id":5981084},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4793290","body":"Duplicate of #18...","updated_at":"2012-05-29T11:45:46Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5981232","created_at":"2012-05-29T11:45:46Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146,"starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}"},"id":5981232},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4639931","body":"Will be OK in version 1.0: no more strange meta-description of the API, and the (generated, but it does not mater) code is easily readable by the IDE's auto-completion tool.","updated_at":"2012-05-29T11:56:06Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5981409","created_at":"2012-05-29T11:56:06Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146,"starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}"},"id":5981409},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/3716033","body":"This will be covered by #36","updated_at":"2012-05-29T11:58:04Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5981451","created_at":"2012-05-29T11:58:04Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146,"starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}"},"id":5981451},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4793162","body":"@Lyloa I have to mention someone to test `Repository.get_issues` with argument `mentioned`","updated_at":"2012-05-29T18:38:53Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5991965","created_at":"2012-05-29T18:38:53Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146,"starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}"},"id":5991965},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4356743","body":"Should be much improved by 7248e66. Will be in version 1.0","updated_at":"2012-05-30T19:58:35Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6019700","created_at":"2012-05-30T19:58:35Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146,"starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}"},"id":6019700},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/3619973","body":"Done! You can `easy_install --upgrade PyGithub`.","updated_at":"2012-06-03T19:56:17Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6088432","created_at":"2012-06-03T19:56:17Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146,"starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}"},"id":6088432},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5036241","body":"PyGithub is definitely licensed under the GNU **Lesser** General Public License.\n\nAccording to http://www.gnu.org/licenses/gpl-howto.html, including both COPYING and COPYING.LESSER is the good way to use the LGPL. Anyway, this is misleading, so I will add a section about licensing in the readme today or tomorrow.\n\nThank you for your feedback, I hope PyGithub will be useful for you.","updated_at":"2012-06-13T10:52:24Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6293572","created_at":"2012-06-13T06:03:24Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146,"starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}"},"id":6293572},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5036241","body":"Sorry I wasn't up to date on v3 licensing best practices. Thank you very much!\n","updated_at":"2012-06-13T16:17:27Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6305625","created_at":"2012-06-13T16:17:27Z","user":{"type":"User","gists_url":"https://api.github.com/users/jeblair/gists{/gist_id}","followers_url":"https://api.github.com/users/jeblair/followers","avatar_url":"https://secure.gravatar.com/avatar/12dc328a104d4c4694b3df308bcd4e6d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jeblair/following","organizations_url":"https://api.github.com/users/jeblair/orgs","url":"https://api.github.com/users/jeblair","gravatar_id":"12dc328a104d4c4694b3df308bcd4e6d","events_url":"https://api.github.com/users/jeblair/events{/privacy}","repos_url":"https://api.github.com/users/jeblair/repos","login":"jeblair","received_events_url":"https://api.github.com/users/jeblair/received_events","subscriptions_url":"https://api.github.com/users/jeblair/subscriptions","id":899068,"starred_url":"https://api.github.com/users/jeblair/starred{/owner}{/repo}"},"id":6305625},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5092592","body":"Hello, when the user has not set his name, `user.name` is `None`, so you can't concatenate it with a string. The exception is not raised by PyGithub but by your code. Try `print user.login, \"->\", user.name` to avoid string concatenation.","updated_at":"2012-06-15T16:56:50Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6357374","created_at":"2012-06-15T14:08:33Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146,"starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}"},"id":6357374},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5092592","body":"Perfect! Thanks, that worked. I _knew_ `+` for string concatenation was evil...did not listen.","updated_at":"2012-06-15T14:12:00Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6357422","created_at":"2012-06-15T14:10:33Z","user":{"type":"User","gists_url":"https://api.github.com/users/aneroid/gists{/gist_id}","followers_url":"https://api.github.com/users/aneroid/followers","avatar_url":"https://secure.gravatar.com/avatar/5557aad9ff70c36cfac418f511bdea98?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/aneroid/following","organizations_url":"https://api.github.com/users/aneroid/orgs","url":"https://api.github.com/users/aneroid","gravatar_id":"5557aad9ff70c36cfac418f511bdea98","events_url":"https://api.github.com/users/aneroid/events{/privacy}","repos_url":"https://api.github.com/users/aneroid/repos","login":"aneroid","received_events_url":"https://api.github.com/users/aneroid/received_events","subscriptions_url":"https://api.github.com/users/aneroid/subscriptions","id":1468519,"starred_url":"https://api.github.com/users/aneroid/starred{/owner}{/repo}"},"id":6357422},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5152384","body":"Thank you for your contribution, I will merge it and publish version 1.1 tonight.","updated_at":"2012-06-20T08:15:10Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6447481","created_at":"2012-06-20T08:15:10Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146,"starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}"},"id":6447481},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5152384","body":"I've just pushed the version 1.1 of the package. You can `easy_install --upgrade PyGithub` if you want.","updated_at":"2012-06-20T21:06:08Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6467193","created_at":"2012-06-20T21:06:08Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146,"starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}"},"id":6467193},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5177381","body":"Hello Alex, thank you for your feedback.\n\nI've just pushed the version 1.1 of the package. I've used `package_data` as explained in the [documentation of distutils](http://docs.python.org/distutils/setupscript.html#installing-package-data), but I'm still not very confident about my understanding of distutils... \n\nCould you please upgrade the package and tell if it's better?","updated_at":"2012-06-20T21:11:31Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6467312","created_at":"2012-06-20T21:11:31Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146,"starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}"},"id":6467312},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5177381","body":"Thanks for looking at this so quickly! Here's the result of running `python setup.py install` with your new changes:\n\n```\n\nrunning install_lib\ncopying build/lib/COPYING -> /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages\ncopying build/lib/COPYING.LESSER -> /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages\ncreating /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/doc\ncopying build/lib/doc/Design.md -> /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/doc\ncopying build/lib/doc/ReferenceOfApis.md -> /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/doc\ncopying build/lib/doc/ReferenceOfClasses.md -> /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/doc\ncopying build/lib/github/Requester.py -> /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/github\ncopying build/lib/ReadMe.md -> /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages\n\n```\n\nI wish I could help, but I'm afraid I don't know how setuptools works.","updated_at":"2012-06-20T21:33:50Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6467642","created_at":"2012-06-20T21:22:44Z","user":{"type":"User","gists_url":"https://api.github.com/users/malexw/gists{/gist_id}","followers_url":"https://api.github.com/users/malexw/followers","avatar_url":"https://secure.gravatar.com/avatar/13a30f9924fa2bd918cbb8d06dd8b55a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/malexw/following","organizations_url":"https://api.github.com/users/malexw/orgs","url":"https://api.github.com/users/malexw","gravatar_id":"13a30f9924fa2bd918cbb8d06dd8b55a","events_url":"https://api.github.com/users/malexw/events{/privacy}","repos_url":"https://api.github.com/users/malexw/repos","login":"malexw","received_events_url":"https://api.github.com/users/malexw/received_events","subscriptions_url":"https://api.github.com/users/malexw/subscriptions","id":577322,"starred_url":"https://api.github.com/users/malexw/starred{/owner}{/repo}"},"id":6467642},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5191621","body":"Those new apis where documented on June 5th, in https://github.com/github/developer.github.com/commit/3cff4bb9a1f1baf3101c984072cd4b4f0165618c. This explains that they are not covered by PyGithub 1.0 that was released on June 3rd.\n\nIt should not be too difficult to support them. I'll try to do it next week.","updated_at":"2012-06-21T12:42:19Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6481200","created_at":"2012-06-21T12:42:19Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146,"starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}"},"id":6481200},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5191621","body":"Thank you","updated_at":"2012-06-21T12:52:06Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6481392","created_at":"2012-06-21T12:52:06Z","user":{"type":"User","gists_url":"https://api.github.com/users/kukuts/gists{/gist_id}","followers_url":"https://api.github.com/users/kukuts/followers","avatar_url":"https://secure.gravatar.com/avatar/9be6ba907be1740213b69422fdf52b57?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/kukuts/following","organizations_url":"https://api.github.com/users/kukuts/orgs","url":"https://api.github.com/users/kukuts","gravatar_id":"9be6ba907be1740213b69422fdf52b57","events_url":"https://api.github.com/users/kukuts/events{/privacy}","repos_url":"https://api.github.com/users/kukuts/repos","login":"kukuts","received_events_url":"https://api.github.com/users/kukuts/received_events","subscriptions_url":"https://api.github.com/users/kukuts/subscriptions","id":1831238,"starred_url":"https://api.github.com/users/kukuts/starred{/owner}{/repo}"},"id":6481392},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5256315","body":"I was running into issues with labels with spaces. The _identity attribute is just the URL encoded name.\n\nIt works great for building a URL endpoint, but not so great when the label's name is going to part of the POST body since it causes GitHub to return a 422 error complaining that the label doesn't exist.","updated_at":"2012-06-25T18:47:30Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6556134","created_at":"2012-06-25T18:47:30Z","user":{"type":"User","gists_url":"https://api.github.com/users/philipkimmey/gists{/gist_id}","followers_url":"https://api.github.com/users/philipkimmey/followers","avatar_url":"https://secure.gravatar.com/avatar/decc9323f241b6dd24ec35ef7cabaf75?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/philipkimmey/following","organizations_url":"https://api.github.com/users/philipkimmey/orgs","url":"https://api.github.com/users/philipkimmey","gravatar_id":"decc9323f241b6dd24ec35ef7cabaf75","events_url":"https://api.github.com/users/philipkimmey/events{/privacy}","repos_url":"https://api.github.com/users/philipkimmey/repos","login":"philipkimmey","received_events_url":"https://api.github.com/users/philipkimmey/received_events","subscriptions_url":"https://api.github.com/users/philipkimmey/subscriptions","id":211079,"starred_url":"https://api.github.com/users/philipkimmey/starred{/owner}{/repo}"},"id":6556134},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5256315","body":"You're perfectly right, thank you! I'll merge your contribution and publish a new version next week-end.","updated_at":"2012-06-25T19:33:48Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6557261","created_at":"2012-06-25T19:30:24Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146,"starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}"},"id":6557261},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5259624","body":"Welcome back! Indeed, PyGithub has evolved (and stabilized).\n\nMethods that used to return a list of objects now return a `PaginatedList`. `PaginatedList` instances are only iterable (They do not support concatenation as lists do, and you cannot call `len` on them).\n\nThe rationale behind that? It is related to issue #33 and requests returning a large number of objects. In the previous version, creating a list of all the requested objects required a lot of [pagination requests](http://developer.github.com/v3/#pagination), and was quite long. It was a waste of time if the user was interested only in the first elements of that list. Enters `PaginatedList`, which does the pagination requests only when really needed. And it is no more limited to 10 pages.\n\nSo, to achieve what your are trying to do, you have to iterate the `PaginatedList` explicitly, either in a loop, or in the constructor of another collection.\n\nSimple iteration:\n\n for issue in itertools.chain(\n repo.get_issues( state = 'closed' ),\n repo.get_issues( state = 'open' )\n ):\n do stuff\n\nReal list from PaginatedList (and then you can have its length):\n\n issues = list( repo.get_issues( state = 'closed' ) ) + list( repo.get_issues( state = 'open' ) )\n nb_issues = len( issues )\n","updated_at":"2012-06-26T06:34:33Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6568164","created_at":"2012-06-26T06:34:33Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146,"starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}"},"id":6568164},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5259624","body":"I'll try to document this behavior soon.","updated_at":"2012-06-26T06:35:48Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6568181","created_at":"2012-06-26T06:35:48Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146,"starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}"},"id":6568181},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5259624","body":"Thanks for this, very helpful. I didn't know I could cast to list so easily (could've tried, though >.<)","updated_at":"2012-06-26T07:02:14Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6568553","created_at":"2012-06-26T07:02:14Z","user":{"type":"User","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","followers_url":"https://api.github.com/users/bilderbuchi/followers","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/bilderbuchi/following","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","repos_url":"https://api.github.com/users/bilderbuchi/repos","login":"bilderbuchi","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","id":327442,"starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}"},"id":6568553},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5256315","body":"I've fixed Repository.create_issue and .get_issues as well.","updated_at":"2012-06-28T20:10:39Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6640187","created_at":"2012-06-28T20:10:39Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146,"starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}"},"id":6640187},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5256315","body":"I've just merged your commit in branch `develop`. It will go in `master` when I publish version 1.2. You can expect it on Saturday or Sunday. Thank you again for the bug report and the associated patch.","updated_at":"2012-06-28T20:10:44Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6640189","created_at":"2012-06-28T20:10:44Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146,"starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}"},"id":6640189},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5191621","body":"Problem: issues returned by the [`/legacy/issues/search` API](http://developer.github.com/v3/search/#search-issues) do not match those returned by [other v3 APIs](http://developer.github.com/v3/issues/#response):\n* labels are returned only by name, not not name, color and url\n* date-time format is different\n* maybe something else\n\nOf course, similar differences exist for users and repositories.\n\nIntegrating this legacy API will be more difficult than I thought.","updated_at":"2012-06-28T21:02:23Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6641223","created_at":"2012-06-28T20:49:13Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146,"starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}"},"id":6641223},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5191621","body":"This is implemented in version 1.2, you can update from pypi.","updated_at":"2012-06-29T18:47:28Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6673380","created_at":"2012-06-29T18:47:28Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146,"starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}"},"id":6673380},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","body":"Interestingly, if I convert this manually in the meantime, using the method you use in the PyGithub code (`tdate=datetime.datetime.strptime(t.commit.commit.committer.date, \"%Y-%m-%dT%H:%M:%SZ\")`), I get an error cause the format does not match. I get a string of the form `2010-02-11T01:17:27-08:00` - time zone information has been added, but I don't know how to parse it, the `:` in `-08:00` prevents me from using `%z` (which expects UTC offset in the form +HHMM or -HHMM). I will discard it for now, but maybe you got insight why this happens?","updated_at":"2012-07-02T14:58:45Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6710355","created_at":"2012-07-02T14:58:45Z","user":{"type":"User","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","followers_url":"https://api.github.com/users/bilderbuchi/followers","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/bilderbuchi/following","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","repos_url":"https://api.github.com/users/bilderbuchi/repos","login":"bilderbuchi","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","id":327442,"starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}"},"id":6710355},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","body":"Hello Christoph!\n\nIndeed this attribute should be a `datetime.datetime`. And as you noticed, it is not formated like other dates returned by Github... I remember I discovered that when I was doing the conversion from string of all the `*_at` and `*_on` attributes, and I did not take time to dig deeper.\n\nI will create a more generic date parsing function that handles all formats returned by Github, and I'll use it for all `datetime` attributes.\n\nBut before that, I'll have to understand timezone handling in Python, so do not expect this too soon (maybe mid-July).","updated_at":"2012-07-03T07:15:53Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6727553","created_at":"2012-07-03T07:15:53Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146,"starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}"},"id":6727553},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","body":"yeah no problem, I'm not reliant on so precise information, take your time. btw, maybe that's a bug in the github API? why would this one time be returned in a different way than all the others? I can't see a reason for this.\n\nagreed, time(zones) in python are crazy at times.","updated_at":"2012-07-03T07:24:21Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6727659","created_at":"2012-07-03T07:24:21Z","user":{"type":"User","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","followers_url":"https://api.github.com/users/bilderbuchi/followers","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/bilderbuchi/following","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","repos_url":"https://api.github.com/users/bilderbuchi/repos","login":"bilderbuchi","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","id":327442,"starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}"},"id":6727659},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","body":"I don't think it's a bug in Github:\n* `GitAuthor.date` is related to an action done somewhere (on the committer's computer), so it carries the timezone of this computer\n* other datetimes are related to actions done on Github's servers, so it's returned with a \"Z\" timezone meaning \"UTC\", the timezone of these servers.","updated_at":"2012-07-03T07:36:30Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6727848","created_at":"2012-07-03T07:36:30Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146,"starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}"},"id":6727848}] + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/comments?page=2&since=2012-05-28T23%3A00%3A00Z +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4964'), ('x-ratelimit-limit', '5000'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '44148'), ('server', 'nginx'), ('last-modified', 'Fri, 21 Dec 2012 18:46:45 GMT'), ('connection', 'keep-alive'), ('etag', '"446137bf216c4edc30567fbc3e944b5a"'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Tue, 25 Dec 2012 11:54:38 GMT'), ('x-github-media-type', 'github.beta; format=json'), ('content-type', 'application/json; charset=utf-8')] +[{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","body":"And by the way, I'm not sure it's a problem for you but I prefer to make it clear: if `tag` is a `Tag`, then `tag.commit.commit.committer.date` is the date of the tagged commit, not the date of the tag. If you really need the date of the tag, you need a `GitTag` and use `git_tag.tagger.date`.","updated_at":"2012-07-03T07:50:18Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6728069","created_at":"2012-07-03T07:50:18Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":6728069},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","body":"ah, makes sense. If you want to avoid the timezone confusion, mayb what is suggested [here](http://stackoverflow.com/a/117615/599884) makes most sense: \n\"Keep your internal datetime objects naive and in UTC and convert to your timezone for formatting only. The reason why you probably want naive objects (objects without timezone information) is that many libraries and database adapters have no idea about timezones.\"\nSo maybe it makes sense to just convert the GitAuthor times to UTC when getting them (i.e. apply the offset to the given time), to be consistent with the rest.\n\nThanks about the clarification re: GitTag/Tag. I prefer the date of the tagged commit, though, the tags mark release commits.\n","updated_at":"2012-07-03T07:59:36Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6728241","created_at":"2012-07-03T07:59:36Z","user":{"type":"User","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/bilderbuchi/repos","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","id":327442},"id":6728241},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","body":"If I convert the `GitAuthor.date` to UTC, I loose the information about where the committer lives... It may or may not be a problem depending on my client's use case.\n\nI'll find a way to make it clear and not loose information, maybe I will convert `date` to UTC (keep it naive), and add another attribute `timezone` to `GitAuthor`.","updated_at":"2012-07-07T18:18:46Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6728370","created_at":"2012-07-03T08:08:08Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":6728370},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","body":"I still have to convert the datetime to UTC. But there is something silly about timezones returned by Github: my commits are timezoned \"-07:00\" while I live in France (UTC +1 or +2). I have to investigate that.","updated_at":"2012-07-10T19:42:43Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6886561","created_at":"2012-07-10T19:42:43Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":6886561},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","body":"Well, well, well... I now revise my judgement: **absolutely all** commits I've retrieved from Github are in timezone -07:00, so this must indeed be a flaw in the API, returning date formatted in the local timezone of the GIthub servers only for this attribute. @bilderbuchi, you were right in https://github.com/jacquev6/PyGithub/issues/54#issuecomment-6727659 :-)\n\nThere is no point keeping this GitAuthor.timezone attribute. I will just convert everything to UTC.","updated_at":"2012-07-13T19:17:15Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6972414","created_at":"2012-07-13T19:05:53Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":6972414},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","body":"ok. maybe also write to github about this probable bug in the API, to see what's the deal?","updated_at":"2012-07-15T19:57:26Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/6994436","created_at":"2012-07-15T19:57:26Z","user":{"type":"User","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/bilderbuchi/repos","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","id":327442},"id":6994436},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","body":"@bilderbuchi, to be honest, I don't think I will take time to contact Github about that.","updated_at":"2012-07-18T09:12:53Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/7060818","created_at":"2012-07-18T09:12:53Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":7060818},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5387373","body":"Sure, I understand. :-)","updated_at":"2012-07-18T09:21:16Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/7060993","created_at":"2012-07-18T09:21:16Z","user":{"type":"User","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/bilderbuchi/repos","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","id":327442},"id":7060993},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5783131","body":"Thank you for this useful contribution! You even respected my special spacing convention!\n\nI will publish the version 1.4 of PyGithub next week-end.","updated_at":"2012-07-24T16:07:06Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/7211543","created_at":"2012-07-24T16:07:06Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":7211543},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5783131","body":"Hum, I'm having trouble with my computer and not much time to fix it. I'll publish PyGithub 1.4 as soon as possible.","updated_at":"2012-07-31T18:47:09Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/7407798","created_at":"2012-07-31T18:47:09Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":7407798},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5806612","body":"Published, at last...","updated_at":"2012-08-04T06:11:43Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/7499550","created_at":"2012-08-04T06:11:43Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":7499550},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/6353712","body":"Hello!\n\nI confirm that the following code exhibits the same issue:\n\n import github\n\n g = github.Github()\n r = g.get_user( \"jacquev6\" ).get_repo( \"PyGithub\" )\n p = r.get_pull( 57 )\n print p.title, \"has\", p.comments, \"comments\"\n print [ c.body[ :15 ] for c in p.get_comments() ]\n\nIt prints:\n\n Allows connection to GitHub Enterprise installs on local URLs has 2 comments\n []\n\nThis last line calls API https://api.github.com/repos/jacquev6/PyGithub/pulls/57/comments, as documented in http://developer.github.com/v3/pulls/comments/#list-comments-on-a-pull-request, but the API returns an empty list. I've just managed to get the comments by calling https://api.github.com/repos/jacquev6/PyGithub/issues/57/comments instead. The issue must be on Github's side.\n\nAs a **temporary** work-around, you can use the following code to do as if the pull request is an issue, and call the other API:\n\n print [ c.body[ :15 ] for c in r.get_issue( p.number ).get_comments() ]\n\nRight now, I have not enough time to take care of this problem, but if it's still here at the beginning of September, I will contact Github and/or patch PyGithub.\n\nEnjoy,","updated_at":"2012-08-21T22:15:01Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/7918385","created_at":"2012-08-21T22:15:01Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":7918385},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/6363719","body":"Deleting a repository is a new functionality that was not implemented in the API when I published the last version of PyGithub. It is now documented here: http://developer.github.com/v3/repos/#delete-a-repository\n\nI will implement it in PyGithub at the beginning of September.","updated_at":"2012-08-21T22:21:13Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/7918542","created_at":"2012-08-21T22:21:13Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":7918542},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/6363719","body":"For the 'get_team' part of your issue, I can't find a way to get the id of a team from its name here: http://developer.github.com/v3/orgs/teams/ so there is no way to do it in PyGithub without iterating on 'get_teams()'","updated_at":"2012-08-21T22:27:24Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/7918728","created_at":"2012-08-21T22:27:24Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":7918728},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/6363719","body":"Thanks for your fast reply and help. I look forward to having repo delete.","updated_at":"2012-08-22T01:44:09Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/7922282","created_at":"2012-08-22T01:44:09Z","user":{"type":"User","events_url":"https://api.github.com/users/pmchen/events{/privacy}","received_events_url":"https://api.github.com/users/pmchen/received_events","gists_url":"https://api.github.com/users/pmchen/gists{/gist_id}","followers_url":"https://api.github.com/users/pmchen/followers","following_url":"https://api.github.com/users/pmchen/following","organizations_url":"https://api.github.com/users/pmchen/orgs","url":"https://api.github.com/users/pmchen","gravatar_id":"a0f9638840c6e593ecddc966e6d01241","starred_url":"https://api.github.com/users/pmchen/starred{/owner}{/repo}","login":"pmchen","avatar_url":"https://secure.gravatar.com/avatar/a0f9638840c6e593ecddc966e6d01241?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/pmchen/repos","subscriptions_url":"https://api.github.com/users/pmchen/subscriptions","id":671751},"id":7922282},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/6353712","body":"To enhance the workaround a bit, you can do this to determine if an issue is a PR or not (because all PRs are issues, too):\n```\n if myIssue.pull_request.diff_url:\n PR=True\n else:\n PR=False\n```","updated_at":"2012-08-22T06:56:34Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/7926126","created_at":"2012-08-22T06:56:34Z","user":{"type":"User","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/bilderbuchi/repos","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","id":327442},"id":7926126},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/6353712","body":"Thank you! Will use this as a workaround.","updated_at":"2012-08-22T07:10:09Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/7926317","created_at":"2012-08-22T07:10:09Z","user":{"type":"User","events_url":"https://api.github.com/users/nixoz2k7/events{/privacy}","received_events_url":"https://api.github.com/users/nixoz2k7/received_events","gists_url":"https://api.github.com/users/nixoz2k7/gists{/gist_id}","followers_url":"https://api.github.com/users/nixoz2k7/followers","following_url":"https://api.github.com/users/nixoz2k7/following","organizations_url":"https://api.github.com/users/nixoz2k7/orgs","url":"https://api.github.com/users/nixoz2k7","gravatar_id":"2a16046c75f59710161ea486d1f5881d","starred_url":"https://api.github.com/users/nixoz2k7/starred{/owner}{/repo}","login":"nixoz2k7","avatar_url":"https://secure.gravatar.com/avatar/2a16046c75f59710161ea486d1f5881d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/nixoz2k7/repos","subscriptions_url":"https://api.github.com/users/nixoz2k7/subscriptions","id":1027413},"id":7926317},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/6363719","body":"On-going developments are here: https://github.com/jacquev6/PyGithub/tree/topic/DeleteRepository","updated_at":"2012-08-23T07:43:36Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/7962252","created_at":"2012-08-23T07:43:36Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":7962252},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/6454054","body":"I just realized that there is no option to set timeout for github api requests. There is no timeout at all in Requester.\nIn python2.6 was added option timeout for httplib.HTTPConnection and httplib.HTTPSConnection. It seems that it will drop support of python<2.6.\nAnother way to change the way that Requester works. You can use requests library from @kennethreitz. BTW it will simplify whole Requester API.","updated_at":"2012-08-25T19:44:03Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/8026699","created_at":"2012-08-25T19:44:03Z","user":{"type":"User","events_url":"https://api.github.com/users/xobb1t/events{/privacy}","received_events_url":"https://api.github.com/users/xobb1t/received_events","gists_url":"https://api.github.com/users/xobb1t/gists{/gist_id}","followers_url":"https://api.github.com/users/xobb1t/followers","following_url":"https://api.github.com/users/xobb1t/following","organizations_url":"https://api.github.com/users/xobb1t/orgs","url":"https://api.github.com/users/xobb1t","gravatar_id":"ae8a2af3de601885a14bb71240e5d1a6","starred_url":"https://api.github.com/users/xobb1t/starred{/owner}{/repo}","login":"xobb1t","avatar_url":"https://secure.gravatar.com/avatar/ae8a2af3de601885a14bb71240e5d1a6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/xobb1t/repos","subscriptions_url":"https://api.github.com/users/xobb1t/subscriptions","id":344095},"id":8026699},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/6583381","body":"Wow! Upverter is a very impressive project. I have been designing some PCBs myself and always felt bad about storing them and connecting them to source code of embedded software. I'm looking forward the PCB layout and manufacture feature, it will make Upverter very useful for amateur electronics!\n\nI'm very proud and very happy to be a small part of your project, thank you for letting me know.","updated_at":"2012-09-03T08:39:41Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/8232572","created_at":"2012-09-03T08:39:41Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":8232572},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/6454054","body":"Thank you very much for your contribution, I will integrate it this week.\n\n","updated_at":"2012-09-03T08:45:50Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/8232695","created_at":"2012-09-03T08:45:50Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":8232695},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/6353712","body":"I've just contacted Github for this issue.","updated_at":"2012-09-03T08:56:13Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/8232940","created_at":"2012-09-03T08:56:13Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":8232940},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/6583381","body":"Awesome, great to hear some positive feedback! If you're interested in trying out the alpha version of our PCB layout tool, send me your Upverter account name (alex@upverter.com) and I can upgrade you. We're hoping to have the layout and manufacturing tools rolled out to everyone in the next few weeks.","updated_at":"2012-09-04T17:54:47Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/8272447","created_at":"2012-09-04T17:54:47Z","user":{"type":"User","events_url":"https://api.github.com/users/malexw/events{/privacy}","received_events_url":"https://api.github.com/users/malexw/received_events","gists_url":"https://api.github.com/users/malexw/gists{/gist_id}","followers_url":"https://api.github.com/users/malexw/followers","following_url":"https://api.github.com/users/malexw/following","organizations_url":"https://api.github.com/users/malexw/orgs","url":"https://api.github.com/users/malexw","gravatar_id":"13a30f9924fa2bd918cbb8d06dd8b55a","starred_url":"https://api.github.com/users/malexw/starred{/owner}{/repo}","login":"malexw","avatar_url":"https://secure.gravatar.com/avatar/13a30f9924fa2bd918cbb8d06dd8b55a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/malexw/repos","subscriptions_url":"https://api.github.com/users/malexw/subscriptions","id":577322},"id":8272447},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/6583381","body":"PM sent.","updated_at":"2012-09-04T20:07:55Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/8276835","created_at":"2012-09-04T20:07:55Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":8276835},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/6641076","body":"All the APIs described in http://developer.github.com/v3/repos/contents/ are newer than the last version of PyGithub (or at least, I was not aware of them when I published that version).\n\nI will implement them soon, you can expect them middle of next week.\n\nFor reference, if you don't find an API in https://github.com/jacquev6/PyGithub/blob/master/doc/ReferenceOfApis.md then I've not implemented it yet.","updated_at":"2012-09-04T20:11:58Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/8276985","created_at":"2012-09-04T20:11:37Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":8276985},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/6641076","body":"Thanks! I'm looking forward to the next release.\n","updated_at":"2012-09-04T23:38:50Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/8282881","created_at":"2012-09-04T23:38:50Z","user":{"type":"User","events_url":"https://api.github.com/users/berndca/events{/privacy}","received_events_url":"https://api.github.com/users/berndca/received_events","gists_url":"https://api.github.com/users/berndca/gists{/gist_id}","followers_url":"https://api.github.com/users/berndca/followers","following_url":"https://api.github.com/users/berndca/following","organizations_url":"https://api.github.com/users/berndca/orgs","url":"https://api.github.com/users/berndca","gravatar_id":"4a43f97dc0112d95d8d713e2fd2a983b","starred_url":"https://api.github.com/users/berndca/starred{/owner}{/repo}","login":"berndca","avatar_url":"https://secure.gravatar.com/avatar/4a43f97dc0112d95d8d713e2fd2a983b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/berndca/repos","subscriptions_url":"https://api.github.com/users/berndca/subscriptions","id":466654},"id":8282881},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/6353712","body":"And here is the reply I received from Github:\n\n From: Wynn Netherland\n Subject: API v3, list comments on pull requests\n\n Hi, Vincent. I know it's confusing but we actually have three types of comments on GitHub, so there are\n three different spots in the API to grab them. Be sure you're looking in the right spot for the data you expect.\n\n Pull Request comments are the top-level comments found on the Pull Request page. These are retrieved via\n the Issues API [1] since PRs are essentially specialized Issues. Pull Request review comments are those made\n against the diff on the PR. You can grab these with the Review Comments API [2]. Finally, line comments made\n outside the context of a PR on a raw commit can be retrieved via the Commit Comments API [3].\n\n Armed with that info, let me know if you're not seeing the data you expect and the API call you're making, and I\n can dig a bit deeper.\n\n [1] http://developer.github.com/v3/issues/comments/\n [2] http://developer.github.com/v3/pulls/comments/\n [3] http://developer.github.com/v3/repos/comments/\n\n Cheers,\n\nSo, this is coherent with what we can see here: https://github.com/jacquev6/PyGithub/pull/57, as `PullRequest.get_comments` uses the Pull Requests API. @nixoz2k7 Is it coherent with your original issue as well?\n\nAnyway, this is misleading, so I will add two methods named `get_issue_comments` (using the Issues API) and `get_review_comments` (synonym for `get_comments`, using the Pull Requests API). Expect this for the middle of next week.","updated_at":"2012-09-05T06:36:26Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/8288983","created_at":"2012-09-05T06:36:26Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":8288983},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/6653907","body":"Thank you, I was just going to open an issue for that. No need to hurry because of this, though, I won't need it too soon. :-)","updated_at":"2012-09-05T07:08:11Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/8289525","created_at":"2012-09-05T07:08:11Z","user":{"type":"User","events_url":"https://api.github.com/users/bilderbuchi/events{/privacy}","received_events_url":"https://api.github.com/users/bilderbuchi/received_events","gists_url":"https://api.github.com/users/bilderbuchi/gists{/gist_id}","followers_url":"https://api.github.com/users/bilderbuchi/followers","following_url":"https://api.github.com/users/bilderbuchi/following","organizations_url":"https://api.github.com/users/bilderbuchi/orgs","url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","starred_url":"https://api.github.com/users/bilderbuchi/starred{/owner}{/repo}","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/bilderbuchi/repos","subscriptions_url":"https://api.github.com/users/bilderbuchi/subscriptions","id":327442},"id":8289525},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/6653907","body":"I think I'll do it for the middle of next week","updated_at":"2012-09-05T14:21:16Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/8300374","created_at":"2012-09-05T14:21:16Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":8300374},{"issue_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/6611093","body":"Just published on [PyPi](http://pypi.python.org/pypi/PyGithub).","updated_at":"2012-09-05T17:56:28Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/8307659","created_at":"2012-09-05T17:56:28Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"id":8307659}] + diff --git a/lib/github/tests/ReplayData/Repository.testGetIssuesEvents.txt b/lib/github/tests/ReplayData/Repository.testGetIssuesEvents.txt new file mode 100644 index 0000000000..dc1cdee183 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetIssuesEvents.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues/events +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4923'), ('content-length', '85910'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last"'), ('etag', '"7ad8520585258c37864643b4719cbecc"'), ('date', 'Sun, 27 May 2012 07:11:23 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/16347480","issue":{"updated_at":"2012-05-27T05:40:15Z","body":"Body created by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/30","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":30,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":null,"title":"Issue also created by PyGithub","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}],"created_at":"2012-05-27T05:40:15Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":4769659,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/30"},"commit_id":null,"created_at":"2012-05-27T05:40:15Z","event":"assigned","id":16347480,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/16347479","issue":{"updated_at":"2012-05-27T05:40:15Z","body":"Body created by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/30","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":30,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":null,"title":"Issue also created by PyGithub","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}],"created_at":"2012-05-27T05:40:15Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":4769659,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/30"},"commit_id":null,"created_at":"2012-05-27T05:40:15Z","event":"subscribed","id":16347479,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/16333959","issue":{"updated_at":"2012-05-26T14:59:33Z","body":"Body edited by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/28","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/1","number":1,"title":"Version 0.4","due_on":"2012-03-13T07:00:00Z","closed_issues":3,"open_issues":0,"created_at":"2012-03-08T12:22:10Z","state":"closed","description":"","id":93546},"number":28,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-05-26T14:59:33Z","title":"Issue created by PyGithub","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}],"created_at":"2012-05-19T10:38:23Z","state":"closed","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":4653757,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/28"},"commit_id":null,"created_at":"2012-05-26T14:59:34Z","event":"closed","id":16333959,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/16333938","issue":{"updated_at":"2012-05-26T14:59:33Z","body":"Body edited by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/28","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/1","number":1,"title":"Version 0.4","due_on":"2012-03-13T07:00:00Z","closed_issues":3,"open_issues":0,"created_at":"2012-03-08T12:22:10Z","state":"closed","description":"","id":93546},"number":28,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-05-26T14:59:33Z","title":"Issue created by PyGithub","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}],"created_at":"2012-05-19T10:38:23Z","state":"closed","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":4653757,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/28"},"commit_id":null,"created_at":"2012-05-26T14:58:27Z","event":"assigned","id":16333938,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/16292760","issue":{"updated_at":"2012-05-25T17:32:32Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/29","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/5","number":5,"title":"Version 0.7","due_on":"2012-05-26T07:00:00Z","closed_issues":2,"open_issues":0,"created_at":"2012-05-25T11:47:06Z","state":"closed","description":"","id":124045},"number":29,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-05-25T17:32:32Z","title":"Publish version 0.7","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"}],"created_at":"2012-05-25T11:47:59Z","state":"closed","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":4752048,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/29"},"commit_id":null,"created_at":"2012-05-25T17:32:32Z","event":"closed","id":16292760,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/16292758","issue":{"updated_at":"2012-05-25T17:32:31Z","body":"One would want to use the API without authentication, with login+password, and with OAuth token. Let's cover these use-cases.","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/15","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/5","number":5,"title":"Version 0.7","due_on":"2012-05-26T07:00:00Z","closed_issues":2,"open_issues":0,"created_at":"2012-05-25T11:47:06Z","state":"closed","description":"","id":124045},"number":15,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-05-25T17:32:31Z","title":"Implement all authentication schemes","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"}],"created_at":"2012-03-13T06:24:05Z","state":"closed","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":3624575,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/15"},"commit_id":null,"created_at":"2012-05-25T17:32:31Z","event":"closed","id":16292758,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/16266502","issue":{"updated_at":"2012-05-25T17:32:32Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/29","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/5","number":5,"title":"Version 0.7","due_on":"2012-05-26T07:00:00Z","closed_issues":2,"open_issues":0,"created_at":"2012-05-25T11:47:06Z","state":"closed","description":"","id":124045},"number":29,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-05-25T17:32:32Z","title":"Publish version 0.7","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"}],"created_at":"2012-05-25T11:47:59Z","state":"closed","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":4752048,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/29"},"commit_id":null,"created_at":"2012-05-25T11:47:59Z","event":"assigned","id":16266502,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/16266501","issue":{"updated_at":"2012-05-25T17:32:32Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/29","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/5","number":5,"title":"Version 0.7","due_on":"2012-05-26T07:00:00Z","closed_issues":2,"open_issues":0,"created_at":"2012-05-25T11:47:06Z","state":"closed","description":"","id":124045},"number":29,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-05-25T17:32:32Z","title":"Publish version 0.7","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"}],"created_at":"2012-05-25T11:47:59Z","state":"closed","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":4752048,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/29"},"commit_id":null,"created_at":"2012-05-25T11:47:59Z","event":"subscribed","id":16266501,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/15883398","issue":{"updated_at":"2012-05-21T12:09:57Z","body":"Hi!\n\nI tried to find a function which returns the number of API requests I have remaining due to [rate limiting](http://developer.github.com/v3/#rate-limiting). Is this somewhere in the library and I can't find it? If not, I think it would be a great feature to have, to be able to keep track of how many requests certain actions use up.","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/26","comments":4,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":26,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-05-21T11:17:12Z","title":"Rate limiting?","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-05-17T12:02:05Z","state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":4622816,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/26"},"commit_id":null,"created_at":"2012-05-21T11:17:12Z","event":"closed","id":15883398,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/15820048","issue":{"updated_at":"2012-05-26T14:59:33Z","body":"Body edited by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/28","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/1","number":1,"title":"Version 0.4","due_on":"2012-03-13T07:00:00Z","closed_issues":3,"open_issues":0,"created_at":"2012-03-08T12:22:10Z","state":"closed","description":"","id":93546},"number":28,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-05-26T14:59:33Z","title":"Issue created by PyGithub","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}],"created_at":"2012-05-19T10:38:23Z","state":"closed","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":4653757,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/28"},"commit_id":null,"created_at":"2012-05-19T10:42:25Z","event":"assigned","id":15820048,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/15819975","issue":{"updated_at":"2012-05-26T14:59:33Z","body":"Body edited by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/28","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/1","number":1,"title":"Version 0.4","due_on":"2012-03-13T07:00:00Z","closed_issues":3,"open_issues":0,"created_at":"2012-03-08T12:22:10Z","state":"closed","description":"","id":93546},"number":28,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-05-26T14:59:33Z","title":"Issue created by PyGithub","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}],"created_at":"2012-05-19T10:38:23Z","state":"closed","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":4653757,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/28"},"commit_id":null,"created_at":"2012-05-19T10:38:23Z","event":"subscribed","id":15819975,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/15756354","issue":{"updated_at":"2012-05-18T11:06:11Z","body":"As per discussion in 6945921c529be14c3a8f566dd1e483674516d46d\n\nI have observed that autocompletion (using PyDev+Eclipse in my case) is pretty erratic.\nFor example, in the tutorial from the readme, `g.get_u` gets autocompleted correctly, but `g.get_user().get_r` (or any method or attribute applicable to `NamedUsers`/`AuthenticatedUser`, really) does not show autocompletion to `g.get_user().get_repo()`.\n\nThis makes exploring the library/API a bit cumbersome. ","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/27","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":27,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":null,"title":"Facilitate IDE autocompletion","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-05-18T10:52:29Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":4639931,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/27"},"commit_id":null,"created_at":"2012-05-18T11:06:05Z","event":"subscribed","id":15756354,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/15756353","issue":{"updated_at":"2012-05-18T11:06:11Z","body":"As per discussion in 6945921c529be14c3a8f566dd1e483674516d46d\n\nI have observed that autocompletion (using PyDev+Eclipse in my case) is pretty erratic.\nFor example, in the tutorial from the readme, `g.get_u` gets autocompleted correctly, but `g.get_user().get_r` (or any method or attribute applicable to `NamedUsers`/`AuthenticatedUser`, really) does not show autocompletion to `g.get_user().get_repo()`.\n\nThis makes exploring the library/API a bit cumbersome. ","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/27","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":27,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":null,"title":"Facilitate IDE autocompletion","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-05-18T10:52:29Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":4639931,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/27"},"commit_id":null,"created_at":"2012-05-18T11:06:05Z","event":"assigned","id":15756353,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/15755561","issue":{"updated_at":"2012-05-18T11:06:11Z","body":"As per discussion in 6945921c529be14c3a8f566dd1e483674516d46d\n\nI have observed that autocompletion (using PyDev+Eclipse in my case) is pretty erratic.\nFor example, in the tutorial from the readme, `g.get_u` gets autocompleted correctly, but `g.get_user().get_r` (or any method or attribute applicable to `NamedUsers`/`AuthenticatedUser`, really) does not show autocompletion to `g.get_user().get_repo()`.\n\nThis makes exploring the library/API a bit cumbersome. ","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/27","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":27,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":null,"title":"Facilitate IDE autocompletion","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-05-18T10:52:29Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":4639931,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/27"},"commit_id":null,"created_at":"2012-05-18T10:52:29Z","event":"subscribed","id":15755561,"actor":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/15741471","issue":{"updated_at":"2012-05-21T12:09:57Z","body":"Hi!\n\nI tried to find a function which returns the number of API requests I have remaining due to [rate limiting](http://developer.github.com/v3/#rate-limiting). Is this somewhere in the library and I can't find it? If not, I think it would be a great feature to have, to be able to keep track of how many requests certain actions use up.","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/26","comments":4,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":26,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-05-21T11:17:12Z","title":"Rate limiting?","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-05-17T12:02:05Z","state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":4622816,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/26"},"commit_id":null,"created_at":"2012-05-18T05:18:34Z","event":"subscribed","id":15741471,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/15741470","issue":{"updated_at":"2012-05-21T12:09:57Z","body":"Hi!\n\nI tried to find a function which returns the number of API requests I have remaining due to [rate limiting](http://developer.github.com/v3/#rate-limiting). Is this somewhere in the library and I can't find it? If not, I think it would be a great feature to have, to be able to keep track of how many requests certain actions use up.","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/26","comments":4,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":26,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-05-21T11:17:12Z","title":"Rate limiting?","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-05-17T12:02:05Z","state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":4622816,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/26"},"commit_id":null,"created_at":"2012-05-18T05:18:34Z","event":"assigned","id":15741470,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/15675859","issue":{"updated_at":"2012-05-21T12:09:57Z","body":"Hi!\n\nI tried to find a function which returns the number of API requests I have remaining due to [rate limiting](http://developer.github.com/v3/#rate-limiting). Is this somewhere in the library and I can't find it? If not, I think it would be a great feature to have, to be able to keep track of how many requests certain actions use up.","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/26","comments":4,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":26,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-05-21T11:17:12Z","title":"Rate limiting?","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-05-17T12:02:05Z","state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":4622816,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/26"},"commit_id":null,"created_at":"2012-05-17T12:02:05Z","event":"subscribed","id":15675859,"actor":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/14890679","issue":{"updated_at":"2012-05-04T19:23:57Z","body":"Thanks for PyGithub, it is easy to use and very complete. I just successfully used it to convert Trac tickets to Guthub issues.\r\n\r\nBut I had to learn the hard way that `create_issue()` expectes the milestone as number instead of a title. To track this down, I added the following `print` statement to `Requester.py`:\r\n\r\n```python\r\ndef __statusCheckedRequest( self, verb, url, parameters, input ):\r\n status, headers, output = self.__rawRequest( verb, url, parameters, input )\r\n if status < 200 or status >= 300:\r\n print output # <--- Added by me.\r\n raise UnknownGithubObject() # <--- sadly lacks any error details\r\n return headers, output\r\n```\r\n\r\nAs `output` already contains all the information needed (as JSON dump), it would be helpful if the exception raised here would include this information in the exception message.","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/24","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":24,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":null,"title":"Improve error messages on broken requests","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-04-30T20:01:20Z","state":"open","user":{"url":"https://api.github.com/users/roskakori","avatar_url":"https://secure.gravatar.com/avatar/b58d0f1ea06b8d5de5f02c53f747ac03?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b58d0f1ea06b8d5de5f02c53f747ac03","login":"roskakori","id":328726},"id":4356743,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/24"},"commit_id":null,"created_at":"2012-05-07T10:49:06Z","event":"referenced","id":14890679,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/14890678","issue":{"updated_at":"2012-05-07T10:49:06Z","body":"List known clients.\r\n\r\nFirst known client: http://pypi.python.org/pypi/tratihubis/ (cf #24)","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/25","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":25,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":null,"title":"List project(s) using PyGithub","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"}],"created_at":"2012-05-07T10:49:06Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":4452000,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/25"},"commit_id":null,"created_at":"2012-05-07T10:49:06Z","event":"subscribed","id":14890678,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/14890677","issue":{"updated_at":"2012-05-07T10:49:06Z","body":"List known clients.\r\n\r\nFirst known client: http://pypi.python.org/pypi/tratihubis/ (cf #24)","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/25","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":25,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":null,"title":"List project(s) using PyGithub","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"}],"created_at":"2012-05-07T10:49:06Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":4452000,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/25"},"commit_id":null,"created_at":"2012-05-07T10:49:06Z","event":"assigned","id":14890677,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/14890532","issue":{"updated_at":"2012-05-07T10:45:58Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/6","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":6,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-05-07T10:45:58Z","title":"Review exceptions policy when receiving error HTTP status","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-03-12T19:45:51Z","state":"closed","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":3617711,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/6"},"commit_id":null,"created_at":"2012-05-07T10:45:58Z","event":"closed","id":14890532,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/14890531","issue":{"updated_at":"2012-05-04T19:23:57Z","body":"Thanks for PyGithub, it is easy to use and very complete. I just successfully used it to convert Trac tickets to Guthub issues.\r\n\r\nBut I had to learn the hard way that `create_issue()` expectes the milestone as number instead of a title. To track this down, I added the following `print` statement to `Requester.py`:\r\n\r\n```python\r\ndef __statusCheckedRequest( self, verb, url, parameters, input ):\r\n status, headers, output = self.__rawRequest( verb, url, parameters, input )\r\n if status < 200 or status >= 300:\r\n print output # <--- Added by me.\r\n raise UnknownGithubObject() # <--- sadly lacks any error details\r\n return headers, output\r\n```\r\n\r\nAs `output` already contains all the information needed (as JSON dump), it would be helpful if the exception raised here would include this information in the exception message.","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/24","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":24,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":null,"title":"Improve error messages on broken requests","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-04-30T20:01:20Z","state":"open","user":{"url":"https://api.github.com/users/roskakori","avatar_url":"https://secure.gravatar.com/avatar/b58d0f1ea06b8d5de5f02c53f747ac03?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b58d0f1ea06b8d5de5f02c53f747ac03","login":"roskakori","id":328726},"id":4356743,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/24"},"commit_id":null,"created_at":"2012-05-07T10:45:58Z","event":"referenced","id":14890531,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/14797847","issue":{"updated_at":"2012-05-07T10:45:58Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/6","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":6,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-05-07T10:45:58Z","title":"Review exceptions policy when receiving error HTTP status","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-03-12T19:45:51Z","state":"closed","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":3617711,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/6"},"commit_id":null,"created_at":"2012-05-04T19:23:57Z","event":"referenced","id":14797847,"actor":{"url":"https://api.github.com/users/roskakori","avatar_url":"https://secure.gravatar.com/avatar/b58d0f1ea06b8d5de5f02c53f747ac03?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b58d0f1ea06b8d5de5f02c53f747ac03","login":"roskakori","id":328726}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/14550202","issue":{"updated_at":"2012-05-04T19:23:57Z","body":"Thanks for PyGithub, it is easy to use and very complete. I just successfully used it to convert Trac tickets to Guthub issues.\r\n\r\nBut I had to learn the hard way that `create_issue()` expectes the milestone as number instead of a title. To track this down, I added the following `print` statement to `Requester.py`:\r\n\r\n```python\r\ndef __statusCheckedRequest( self, verb, url, parameters, input ):\r\n status, headers, output = self.__rawRequest( verb, url, parameters, input )\r\n if status < 200 or status >= 300:\r\n print output # <--- Added by me.\r\n raise UnknownGithubObject() # <--- sadly lacks any error details\r\n return headers, output\r\n```\r\n\r\nAs `output` already contains all the information needed (as JSON dump), it would be helpful if the exception raised here would include this information in the exception message.","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/24","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":24,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":null,"title":"Improve error messages on broken requests","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-04-30T20:01:20Z","state":"open","user":{"url":"https://api.github.com/users/roskakori","avatar_url":"https://secure.gravatar.com/avatar/b58d0f1ea06b8d5de5f02c53f747ac03?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b58d0f1ea06b8d5de5f02c53f747ac03","login":"roskakori","id":328726},"id":4356743,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/24"},"commit_id":null,"created_at":"2012-05-01T21:58:55Z","event":"subscribed","id":14550202,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/14550200","issue":{"updated_at":"2012-05-04T19:23:57Z","body":"Thanks for PyGithub, it is easy to use and very complete. I just successfully used it to convert Trac tickets to Guthub issues.\r\n\r\nBut I had to learn the hard way that `create_issue()` expectes the milestone as number instead of a title. To track this down, I added the following `print` statement to `Requester.py`:\r\n\r\n```python\r\ndef __statusCheckedRequest( self, verb, url, parameters, input ):\r\n status, headers, output = self.__rawRequest( verb, url, parameters, input )\r\n if status < 200 or status >= 300:\r\n print output # <--- Added by me.\r\n raise UnknownGithubObject() # <--- sadly lacks any error details\r\n return headers, output\r\n```\r\n\r\nAs `output` already contains all the information needed (as JSON dump), it would be helpful if the exception raised here would include this information in the exception message.","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/24","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":24,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":null,"title":"Improve error messages on broken requests","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-04-30T20:01:20Z","state":"open","user":{"url":"https://api.github.com/users/roskakori","avatar_url":"https://secure.gravatar.com/avatar/b58d0f1ea06b8d5de5f02c53f747ac03?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b58d0f1ea06b8d5de5f02c53f747ac03","login":"roskakori","id":328726},"id":4356743,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/24"},"commit_id":null,"created_at":"2012-05-01T21:58:55Z","event":"assigned","id":14550200,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/14466693","issue":{"updated_at":"2012-05-04T19:23:57Z","body":"Thanks for PyGithub, it is easy to use and very complete. I just successfully used it to convert Trac tickets to Guthub issues.\r\n\r\nBut I had to learn the hard way that `create_issue()` expectes the milestone as number instead of a title. To track this down, I added the following `print` statement to `Requester.py`:\r\n\r\n```python\r\ndef __statusCheckedRequest( self, verb, url, parameters, input ):\r\n status, headers, output = self.__rawRequest( verb, url, parameters, input )\r\n if status < 200 or status >= 300:\r\n print output # <--- Added by me.\r\n raise UnknownGithubObject() # <--- sadly lacks any error details\r\n return headers, output\r\n```\r\n\r\nAs `output` already contains all the information needed (as JSON dump), it would be helpful if the exception raised here would include this information in the exception message.","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/24","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":24,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":null,"title":"Improve error messages on broken requests","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-04-30T20:01:20Z","state":"open","user":{"url":"https://api.github.com/users/roskakori","avatar_url":"https://secure.gravatar.com/avatar/b58d0f1ea06b8d5de5f02c53f747ac03?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b58d0f1ea06b8d5de5f02c53f747ac03","login":"roskakori","id":328726},"id":4356743,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/24"},"commit_id":null,"created_at":"2012-04-30T20:01:20Z","event":"subscribed","id":14466693,"actor":{"url":"https://api.github.com/users/roskakori","avatar_url":"https://secure.gravatar.com/avatar/b58d0f1ea06b8d5de5f02c53f747ac03?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b58d0f1ea06b8d5de5f02c53f747ac03","login":"roskakori","id":328726}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/13988647","issue":{"updated_at":"2012-04-23T20:23:29Z","body":"This is probably user error (I don't really know what I'm doing) but if I execute ```repo.get_download(1)``` or ```repo.get_download('foobar')``` (I'm not sure what the proper id for a download is), I get the following error trace:\r\n\r\n Traceback (most recent call last):\r\n File \"/Applications/WingIDE.app/Contents/MacOS/src/debug/tserver/_sandbox.py\", line 1, in \r\n # Used internally for debug sandbox under external interpreter\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/GithubObject.py\", line 77, in \r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/List.py\", line 114, in __execute\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/TypePolicies.py\", line 25, in createNonLazy\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/GithubObject.py\", line 73, in __init__\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/GithubObject.py\", line 103, in __fetchAttribute\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/Basic.py\", line 62, in updateAttributes\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/Github.py\", line 10, in _dataRequest\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/Requester.py\", line 17, in dataRequest\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/Requester.py\", line 39, in __statusCheckedRequest\r\n github.Requester.UnknownGithubObject:\r\n\r\nAlso possibly related: ```repo.get_download()``` (what weird things users do, eh?) causes a shorter trace ending in Type Error. ","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/23","comments":2,"milestone":null,"number":23,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-04-23T20:23:29Z","title":"UnknownGithubObject on get_download() with invalid key","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}],"created_at":"2012-04-17T19:03:44Z","state":"closed","user":{"url":"https://api.github.com/users/tallforasmurf","avatar_url":"https://secure.gravatar.com/avatar/61104afbd871dab22a702e7c1233d573?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"61104afbd871dab22a702e7c1233d573","login":"tallforasmurf","id":1137018},"id":4159230,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/23"},"commit_id":null,"created_at":"2012-04-23T20:23:29Z","event":"closed","id":13988647,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/13600012","issue":{"updated_at":"2012-04-23T20:23:29Z","body":"This is probably user error (I don't really know what I'm doing) but if I execute ```repo.get_download(1)``` or ```repo.get_download('foobar')``` (I'm not sure what the proper id for a download is), I get the following error trace:\r\n\r\n Traceback (most recent call last):\r\n File \"/Applications/WingIDE.app/Contents/MacOS/src/debug/tserver/_sandbox.py\", line 1, in \r\n # Used internally for debug sandbox under external interpreter\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/GithubObject.py\", line 77, in \r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/List.py\", line 114, in __execute\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/TypePolicies.py\", line 25, in createNonLazy\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/GithubObject.py\", line 73, in __init__\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/GithubObject.py\", line 103, in __fetchAttribute\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/Basic.py\", line 62, in updateAttributes\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/Github.py\", line 10, in _dataRequest\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/Requester.py\", line 17, in dataRequest\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/Requester.py\", line 39, in __statusCheckedRequest\r\n github.Requester.UnknownGithubObject:\r\n\r\nAlso possibly related: ```repo.get_download()``` (what weird things users do, eh?) causes a shorter trace ending in Type Error. ","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/23","comments":2,"milestone":null,"number":23,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-04-23T20:23:29Z","title":"UnknownGithubObject on get_download() with invalid key","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}],"created_at":"2012-04-17T19:03:44Z","state":"closed","user":{"url":"https://api.github.com/users/tallforasmurf","avatar_url":"https://secure.gravatar.com/avatar/61104afbd871dab22a702e7c1233d573?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"61104afbd871dab22a702e7c1233d573","login":"tallforasmurf","id":1137018},"id":4159230,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/23"},"commit_id":null,"created_at":"2012-04-17T21:10:30Z","event":"assigned","id":13600012,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/13599998","issue":{"updated_at":"2012-04-23T20:23:29Z","body":"This is probably user error (I don't really know what I'm doing) but if I execute ```repo.get_download(1)``` or ```repo.get_download('foobar')``` (I'm not sure what the proper id for a download is), I get the following error trace:\r\n\r\n Traceback (most recent call last):\r\n File \"/Applications/WingIDE.app/Contents/MacOS/src/debug/tserver/_sandbox.py\", line 1, in \r\n # Used internally for debug sandbox under external interpreter\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/GithubObject.py\", line 77, in \r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/List.py\", line 114, in __execute\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/TypePolicies.py\", line 25, in createNonLazy\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/GithubObject.py\", line 73, in __init__\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/GithubObject.py\", line 103, in __fetchAttribute\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/Basic.py\", line 62, in updateAttributes\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/Github.py\", line 10, in _dataRequest\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/Requester.py\", line 17, in dataRequest\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/Requester.py\", line 39, in __statusCheckedRequest\r\n github.Requester.UnknownGithubObject:\r\n\r\nAlso possibly related: ```repo.get_download()``` (what weird things users do, eh?) causes a shorter trace ending in Type Error. ","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/23","comments":2,"milestone":null,"number":23,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-04-23T20:23:29Z","title":"UnknownGithubObject on get_download() with invalid key","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}],"created_at":"2012-04-17T19:03:44Z","state":"closed","user":{"url":"https://api.github.com/users/tallforasmurf","avatar_url":"https://secure.gravatar.com/avatar/61104afbd871dab22a702e7c1233d573?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"61104afbd871dab22a702e7c1233d573","login":"tallforasmurf","id":1137018},"id":4159230,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/23"},"commit_id":null,"created_at":"2012-04-17T21:10:15Z","event":"subscribed","id":13599998,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/13589532","issue":{"updated_at":"2012-04-23T20:23:29Z","body":"This is probably user error (I don't really know what I'm doing) but if I execute ```repo.get_download(1)``` or ```repo.get_download('foobar')``` (I'm not sure what the proper id for a download is), I get the following error trace:\r\n\r\n Traceback (most recent call last):\r\n File \"/Applications/WingIDE.app/Contents/MacOS/src/debug/tserver/_sandbox.py\", line 1, in \r\n # Used internally for debug sandbox under external interpreter\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/GithubObject.py\", line 77, in \r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/List.py\", line 114, in __execute\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/TypePolicies.py\", line 25, in createNonLazy\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/GithubObject.py\", line 73, in __init__\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/GithubObject.py\", line 103, in __fetchAttribute\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/Basic.py\", line 62, in updateAttributes\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/Github.py\", line 10, in _dataRequest\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/Requester.py\", line 17, in dataRequest\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/Requester.py\", line 39, in __statusCheckedRequest\r\n github.Requester.UnknownGithubObject:\r\n\r\nAlso possibly related: ```repo.get_download()``` (what weird things users do, eh?) causes a shorter trace ending in Type Error. ","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/23","comments":2,"milestone":null,"number":23,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-04-23T20:23:29Z","title":"UnknownGithubObject on get_download() with invalid key","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}],"created_at":"2012-04-17T19:03:44Z","state":"closed","user":{"url":"https://api.github.com/users/tallforasmurf","avatar_url":"https://secure.gravatar.com/avatar/61104afbd871dab22a702e7c1233d573?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"61104afbd871dab22a702e7c1233d573","login":"tallforasmurf","id":1137018},"id":4159230,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/23"},"commit_id":null,"created_at":"2012-04-17T19:03:45Z","event":"subscribed","id":13589532,"actor":{"url":"https://api.github.com/users/tallforasmurf","avatar_url":"https://secure.gravatar.com/avatar/61104afbd871dab22a702e7c1233d573?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"61104afbd871dab22a702e7c1233d573","login":"tallforasmurf","id":1137018}}] + diff --git a/lib/github/tests/ReplayData/Repository.testGetIssuesWithArguments.txt b/lib/github/tests/ReplayData/Repository.testGetIssuesWithArguments.txt new file mode 100644 index 0000000000..702c33332b --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetIssuesWithArguments.txt @@ -0,0 +1,99 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/milestones/3 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4986'), ('content-length', '577'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"aefd46b78a992c1eb76e6bb49c45be7c"'), ('date', 'Fri, 01 Jun 2012 19:52:57 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"title":"Version 0.5: full implementation","creator":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"created_at":"2012-03-12T21:38:36Z","state":"closed","description":"","url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/3","closed_issues":4,"due_on":"2012-03-20T07:00:00Z","open_issues":0,"number":3,"id":95354} + +https +GET +api.github.com +None +/users/jacquev6 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4985'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"7ce1335565832b7bdbe43916a0724156"'), ('date', 'Fri, 01 Jun 2012 19:52:57 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","bio":"","collaborators":0,"company":"Criteo","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","total_private_repos":5,"email":"vincent@vincent-jacques.net","owned_private_repos":5,"created_at":"2010-07-09T06:10:06Z","location":"Paris, France","url":"https://api.github.com/users/jacquev6","following":24,"public_gists":3,"disk_usage":16900,"public_repos":10,"private_gists":5,"name":"Vincent Jacques","blog":"http://vincent-jacques.net","followers":13,"html_url":"https://github.com/jacquev6","hireable":false,"id":327146,"plan":{"private_repos":5,"collaborators":1,"space":614400,"name":"micro"},"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"} + +https +GET +api.github.com +None +/users/Lyloa +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4984'), ('content-length', '554'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"73f74c6f88d8578cb44a6c29b1e2ee8e"'), ('date', 'Fri, 01 Jun 2012 19:52:58 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","blog":null,"company":null,"gravatar_id":"1517ed584458ccf83e03f5d77d9699d7","login":"Lyloa","email":"nyu@lyloa.net","avatar_url":"https://secure.gravatar.com/avatar/1517ed584458ccf83e03f5d77d9699d7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","public_repos":0,"created_at":"2011-10-16T14:36:46Z","location":"Paris","url":"https://api.github.com/users/Lyloa","following":0,"hireable":false,"name":"Lyloa","public_gists":0,"followers":1,"html_url":"https://github.com/Lyloa","bio":null,"id":1131432} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/labels/Bug +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4997'), ('content-length', '97'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"569c414d87e8ec43ec269a9e28bc2982"'), ('date', 'Fri, 01 Jun 2012 19:56:30 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"color":"e10c02","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues?state=closed&milestone=3 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4868'), ('content-length', '6944'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"5c472a7784b7cd933a35e2bb0ce5df38"'), ('date', 'Tue, 29 May 2012 18:39:43 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-03-19T19:05:17Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/11","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/3","number":3,"title":"Version 0.5: full implementation","closed_issues":4,"due_on":"2012-03-20T07:00:00Z","open_issues":0,"created_at":"2012-03-12T21:38:36Z","state":"closed","description":"","id":95354},"number":11,"html_url":"https://github.com/jacquev6/PyGithub/issues/11","assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"title":"Implement alternative inputs","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"}],"closed_at":"2012-03-19T19:05:17Z","created_at":"2012-03-13T06:08:10Z","state":"closed","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":3624472,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-14T22:29:08Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/10","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/3","number":3,"title":"Version 0.5: full implementation","closed_issues":4,"due_on":"2012-03-20T07:00:00Z","open_issues":0,"created_at":"2012-03-12T21:38:36Z","state":"closed","description":"","id":95354},"number":10,"html_url":"https://github.com/jacquev6/PyGithub/issues/10","assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"title":"Separate GithubObjects.py in several files","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Refactoring","name":"Refactoring","color":"0b02e1"}],"closed_at":"2012-03-14T22:29:08Z","created_at":"2012-03-12T22:08:06Z","state":"closed","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":3620132,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-19T20:56:01Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/8","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/3","number":3,"title":"Version 0.5: full implementation","closed_issues":4,"due_on":"2012-03-20T07:00:00Z","open_issues":0,"created_at":"2012-03-12T21:38:36Z","state":"closed","description":"","id":95354},"number":8,"html_url":"https://github.com/jacquev6/PyGithub/issues/8","assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"title":"Publish version 0.5","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"}],"closed_at":"2012-03-19T20:56:01Z","created_at":"2012-03-12T21:38:49Z","state":"closed","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":3619658,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}},{"updated_at":"2012-03-19T19:05:17Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/5","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/3","number":3,"title":"Version 0.5: full implementation","closed_issues":4,"due_on":"2012-03-20T07:00:00Z","open_issues":0,"created_at":"2012-03-12T21:38:36Z","state":"closed","description":"","id":95354},"number":5,"html_url":"https://github.com/jacquev6/PyGithub/issues/5","assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"title":"Implement full API","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"}],"closed_at":"2012-03-19T19:05:17Z","created_at":"2012-03-08T12:21:28Z","state":"closed","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":3561926,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues?labels=Bug +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4867'), ('content-length', '2426'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"dcab4e56d1acdb64e964e0f8669f5c19"'), ('date', 'Tue, 29 May 2012 18:39:44 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-28T14:47:02Z","body":"As the title says, `get_issues()` seems to return a max of 250 items. \nIt can't be a pagination thing I think because a page is max. 100 items long as per http://developer.github.com/v3/#pagination\n\nRepro:\n\n\tfrom github import Github\n\tg = Github()\n\ttest=g.get_user('openframeworks').get_repo('openFrameworks').get_issues()\n\tlen(test)\n\nThis repo hast 940 closed and 340 open issues.","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/33","comments":4,"milestone":{"closed_issues":6,"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":13,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":33,"html_url":"https://github.com/jacquev6/PyGithub/issues/33","assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"title":"get_issues() returns max. 250 items","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"}],"closed_at":null,"created_at":"2012-05-28T13:18:01Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":4780155,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}}] + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues?sort=comments&assignee=jacquev6&direction=asc +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4866'), ('content-length', '29746'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"ca9d3b0d1f8313bd38c2b092f3dec187"'), ('date', 'Tue, 29 May 2012 18:39:45 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-29T11:29:46Z","body":"https://api.github.com/hooks is not documented, but it is referred by http://developer.github.com/v3/repos/hooks/#create-a-hook","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/35","comments":0,"milestone":{"closed_issues":6,"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":13,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":35,"html_url":"https://github.com/jacquev6/PyGithub/issues/35","assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"title":"Implement https://api.github.com/hooks","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"}],"closed_at":null,"created_at":"2012-05-29T11:29:46Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":4793106,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2012-03-08T12:23:29Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/2","comments":0,"milestone":{"closed_issues":6,"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":13,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":2,"html_url":"https://github.com/jacquev6/PyGithub/issues/2","assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"title":"Use objects as parameters instead of shas, ids, etc.","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"closed_at":null,"created_at":"2012-03-06T16:46:49Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":3527231,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2012-05-29T11:31:37Z","body":"All attributes and method parameters must have an identified and documented type","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4","comments":0,"milestone":{"closed_issues":6,"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":13,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":4,"html_url":"https://github.com/jacquev6/PyGithub/issues/4","assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"title":"Review public interface homogeneity ","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"closed_at":null,"created_at":"2012-03-06T16:48:40Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":3527266,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2012-05-29T11:41:39Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/12","comments":0,"milestone":{"closed_issues":6,"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":13,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":12,"html_url":"https://github.com/jacquev6/PyGithub/issues/12","assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"title":"Structure all attributes and make them either mandatory or optional","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"closed_at":null,"created_at":"2012-03-13T06:21:57Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":3624556,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2012-05-29T11:39:15Z","body":"Cf http://developer.github.com/v3/pulls/comments/#alternative-input, but my first tests did not succeed.","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/37","comments":0,"milestone":{"closed_issues":6,"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":13,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":37,"html_url":"https://github.com/jacquev6/PyGithub/issues/37","assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"title":"Understand and implement POST /repos/:user/:repo/pulls/:number/comments with in_reply_to","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"}],"closed_at":null,"created_at":"2012-05-29T11:39:15Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":4793216,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2012-05-29T11:24:24Z","body":"Check that there is no more `toto`s in code\nCheck that we have 100% test coverage","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/9","comments":0,"milestone":{"closed_issues":6,"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":13,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":9,"html_url":"https://github.com/jacquev6/PyGithub/issues/9","assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"title":"Publish version 1.0","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"}],"closed_at":null,"created_at":"2012-03-12T21:58:05Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":3619973,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2012-03-13T07:04:42Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/16","comments":0,"milestone":{"closed_issues":6,"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":13,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":16,"html_url":"https://github.com/jacquev6/PyGithub/issues/16","assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"title":"Add copyright and license notice","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"}],"closed_at":null,"created_at":"2012-03-13T06:25:31Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":3624595,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2012-05-07T10:49:06Z","body":"List known clients.\r\n\r\nFirst known client: http://pypi.python.org/pypi/tratihubis/ (cf #24)","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/25","comments":0,"milestone":{"closed_issues":6,"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":13,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":25,"html_url":"https://github.com/jacquev6/PyGithub/issues/25","assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"title":"List project(s) using PyGithub","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"}],"closed_at":null,"created_at":"2012-05-07T10:49:06Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":4452000,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2012-05-28T13:58:49Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/18","comments":0,"milestone":{"closed_issues":6,"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":13,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":18,"html_url":"https://github.com/jacquev6/PyGithub/issues/18","assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"title":"Take care of _identity","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Refactoring","name":"Refactoring","color":"0b02e1"}],"closed_at":null,"created_at":"2012-03-14T06:49:31Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":3643837,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2012-03-13T12:09:48Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/17","comments":0,"milestone":{"closed_issues":6,"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":13,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":17,"html_url":"https://github.com/jacquev6/PyGithub/issues/17","assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"title":"Document issue reporting","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"}],"closed_at":null,"created_at":"2012-03-13T12:09:48Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":3628022,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2012-05-28T13:58:35Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/3","comments":1,"milestone":null,"number":3,"html_url":"https://github.com/jacquev6/PyGithub/issues/3","assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"title":"Deduce mandatory parameters","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"}],"closed_at":null,"created_at":"2012-03-06T16:47:49Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":3527245,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2012-05-29T18:38:53Z","body":"For example, in `Organization.get_repos( type )`, `type` should be added to the url, as described in http://developer.github.com/v3/repos/#list-organization-repositories","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/36","comments":2,"milestone":{"closed_issues":6,"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":13,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":36,"html_url":"https://github.com/jacquev6/PyGithub/issues/36","assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"title":"Re-implement url parameters","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"}],"closed_at":null,"created_at":"2012-05-29T11:33:19Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":4793162,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2012-05-04T19:23:57Z","body":"Thanks for PyGithub, it is easy to use and very complete. I just successfully used it to convert Trac tickets to Guthub issues.\r\n\r\nBut I had to learn the hard way that `create_issue()` expectes the milestone as number instead of a title. To track this down, I added the following `print` statement to `Requester.py`:\r\n\r\n```python\r\ndef __statusCheckedRequest( self, verb, url, parameters, input ):\r\n status, headers, output = self.__rawRequest( verb, url, parameters, input )\r\n if status < 200 or status >= 300:\r\n print output # <--- Added by me.\r\n raise UnknownGithubObject() # <--- sadly lacks any error details\r\n return headers, output\r\n```\r\n\r\nAs `output` already contains all the information needed (as JSON dump), it would be helpful if the exception raised here would include this information in the exception message.","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/24","comments":2,"milestone":{"closed_issues":6,"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":13,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":24,"html_url":"https://github.com/jacquev6/PyGithub/issues/24","assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"title":"Improve error messages on broken requests","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"closed_at":null,"created_at":"2012-04-30T20:01:20Z","state":"open","user":{"url":"https://api.github.com/users/roskakori","gravatar_id":"b58d0f1ea06b8d5de5f02c53f747ac03","login":"roskakori","avatar_url":"https://secure.gravatar.com/avatar/b58d0f1ea06b8d5de5f02c53f747ac03?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328726},"id":4356743,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}},{"updated_at":"2012-05-28T14:47:02Z","body":"As the title says, `get_issues()` seems to return a max of 250 items. \nIt can't be a pagination thing I think because a page is max. 100 items long as per http://developer.github.com/v3/#pagination\n\nRepro:\n\n\tfrom github import Github\n\tg = Github()\n\ttest=g.get_user('openframeworks').get_repo('openFrameworks').get_issues()\n\tlen(test)\n\nThis repo hast 940 closed and 340 open issues.","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/33","comments":4,"milestone":{"closed_issues":6,"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":13,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":33,"html_url":"https://github.com/jacquev6/PyGithub/issues/33","assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"title":"get_issues() returns max. 250 items","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"}],"closed_at":null,"created_at":"2012-05-28T13:18:01Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":4780155,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null}}] + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues?since=2012-05-28T23%3A00%3A00Z +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4865'), ('content-length', '12920'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d09251f5f9bcb3430efa333b42335a0b"'), ('date', 'Tue, 29 May 2012 18:39:46 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-29T11:39:15Z","body":"Cf http://developer.github.com/v3/pulls/comments/#alternative-input, but my first tests did not succeed.","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/37","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"closed_issues":6,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":13,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":37,"html_url":"https://github.com/jacquev6/PyGithub/issues/37","assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"title":"Understand and implement POST /repos/:user/:repo/pulls/:number/comments with in_reply_to","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"}],"closed_at":null,"created_at":"2012-05-29T11:39:15Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":4793216,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-29T18:38:53Z","body":"For example, in `Organization.get_repos( type )`, `type` should be added to the url, as described in http://developer.github.com/v3/repos/#list-organization-repositories","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/36","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"closed_issues":6,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":13,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":36,"html_url":"https://github.com/jacquev6/PyGithub/issues/36","assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"title":"Re-implement url parameters","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"}],"closed_at":null,"created_at":"2012-05-29T11:33:19Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":4793162,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-29T11:29:46Z","body":"https://api.github.com/hooks is not documented, but it is referred by http://developer.github.com/v3/repos/hooks/#create-a-hook","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/35","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"closed_issues":6,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":13,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":35,"html_url":"https://github.com/jacquev6/PyGithub/issues/35","assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"title":"Implement https://api.github.com/hooks","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"}],"closed_at":null,"created_at":"2012-05-29T11:29:46Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":4793106,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-29T11:41:39Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/12","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"closed_issues":6,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":13,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":12,"html_url":"https://github.com/jacquev6/PyGithub/issues/12","assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"title":"Structure all attributes and make them either mandatory or optional","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"closed_at":null,"created_at":"2012-03-13T06:21:57Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":3624556,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-29T11:24:24Z","body":"Check that there is no more `toto`s in code\nCheck that we have 100% test coverage","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/9","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"closed_issues":6,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":13,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":9,"html_url":"https://github.com/jacquev6/PyGithub/issues/9","assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"title":"Publish version 1.0","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"}],"closed_at":null,"created_at":"2012-03-12T21:58:05Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":3619973,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}},{"updated_at":"2012-05-29T11:31:37Z","body":"All attributes and method parameters must have an identified and documented type","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"closed_issues":6,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":13,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":4,"html_url":"https://github.com/jacquev6/PyGithub/issues/4","assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"title":"Review public interface homogeneity ","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"closed_at":null,"created_at":"2012-03-06T16:48:40Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":3527266,"pull_request":{"html_url":null,"patch_url":null,"diff_url":null}}] + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues?mentioned=Lyloa +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4864'), ('content-length', '2210'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"bf7c5823992799efca0369752072ec8e"'), ('date', 'Tue, 29 May 2012 18:39:46 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-29T18:38:53Z","body":"For example, in `Organization.get_repos( type )`, `type` should be added to the url, as described in http://developer.github.com/v3/repos/#list-organization-repositories","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/36","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","closed_issues":6,"number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":13,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":36,"html_url":"https://github.com/jacquev6/PyGithub/issues/36","assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"title":"Re-implement url parameters","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"}],"closed_at":null,"created_at":"2012-05-29T11:33:19Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":4793162,"pull_request":{"diff_url":null,"html_url":null,"patch_url":null}}] + diff --git a/lib/github/tests/ReplayData/Repository.testGetIssuesWithWildcards.txt b/lib/github/tests/ReplayData/Repository.testGetIssuesWithWildcards.txt new file mode 100644 index 0000000000..d33415c8f5 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetIssuesWithWildcards.txt @@ -0,0 +1,44 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues?milestone=%2A +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4970'), ('content-length', '16480'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"28fffaa40fef9cdb999d5b217e212f0a"'), ('date', 'Sat, 02 Jun 2012 06:15:11 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"title":"Use type datetime.datetime for appropriate attributes/arguments","pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"labels":[{"color":"d7e102","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface"}],"created_at":"2012-05-30T06:16:47Z","state":"open","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/41","assignee":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"closed_at":null,"updated_at":"2012-06-01T20:25:31Z","body":"","comments":0,"number":41,"id":4809786,"html_url":"https://github.com/jacquev6/PyGithub/issues/41","milestone":{"title":"Version 1.0: coherent public interface","creator":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","closed_issues":13,"due_on":"2012-06-04T07:00:00Z","open_issues":8,"number":2,"id":93547}},{"title":"Understand and implement POST /repos/:user/:repo/pulls/:number/comments with in_reply_to","pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"labels":[{"color":"e102d8","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities"}],"created_at":"2012-05-29T11:39:15Z","state":"open","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/37","assignee":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"closed_at":null,"updated_at":"2012-05-29T11:39:15Z","body":"Cf http://developer.github.com/v3/pulls/comments/#alternative-input, but my first tests did not succeed.","comments":0,"number":37,"id":4793216,"html_url":"https://github.com/jacquev6/PyGithub/issues/37","milestone":{"title":"Version 1.0: coherent public interface","creator":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","closed_issues":13,"due_on":"2012-06-04T07:00:00Z","open_issues":8,"number":2,"id":93547}},{"title":"Check that there is no more `toto`s in code","pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"labels":[{"color":"444444","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management"}],"created_at":"2012-05-29T07:13:42Z","state":"open","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/34","assignee":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"closed_at":null,"updated_at":"2012-05-31T09:53:27Z","body":"","comments":0,"number":34,"id":4789817,"html_url":"https://github.com/jacquev6/PyGithub/issues/34","milestone":{"title":"Version 1.0: coherent public interface","creator":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","closed_issues":13,"due_on":"2012-06-04T07:00:00Z","open_issues":8,"number":2,"id":93547}},{"title":"List project(s) using PyGithub","pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"labels":[{"color":"444444","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management"}],"created_at":"2012-05-07T10:49:06Z","state":"open","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/25","assignee":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"closed_at":null,"updated_at":"2012-05-07T10:49:06Z","body":"List known clients.\r\n\r\nFirst known client: http://pypi.python.org/pypi/tratihubis/ (cf #24)","comments":0,"number":25,"id":4452000,"html_url":"https://github.com/jacquev6/PyGithub/issues/25","milestone":{"title":"Version 1.0: coherent public interface","creator":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","closed_issues":13,"due_on":"2012-06-04T07:00:00Z","open_issues":8,"number":2,"id":93547}},{"title":"Document issue reporting","pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"labels":[{"color":"444444","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management"}],"created_at":"2012-03-13T12:09:48Z","state":"open","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/17","assignee":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"closed_at":null,"updated_at":"2012-03-13T12:09:48Z","body":"","comments":0,"number":17,"id":3628022,"html_url":"https://github.com/jacquev6/PyGithub/issues/17","milestone":{"title":"Version 1.0: coherent public interface","creator":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","closed_issues":13,"due_on":"2012-06-04T07:00:00Z","open_issues":8,"number":2,"id":93547}},{"title":"Add copyright and license notice","pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"labels":[{"color":"444444","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management"}],"created_at":"2012-03-13T06:25:31Z","state":"open","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/16","assignee":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"closed_at":null,"updated_at":"2012-03-13T07:04:42Z","body":"","comments":0,"number":16,"id":3624595,"html_url":"https://github.com/jacquev6/PyGithub/issues/16","milestone":{"title":"Version 1.0: coherent public interface","creator":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","closed_issues":13,"due_on":"2012-06-04T07:00:00Z","open_issues":8,"number":2,"id":93547}},{"title":"Publish version 1.0","pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"labels":[{"color":"444444","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management"}],"created_at":"2012-03-12T21:58:05Z","state":"open","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/9","assignee":null,"closed_at":null,"updated_at":"2012-06-02T06:14:47Z","body":"Check that there is no more `toto`s in code\nCheck that we have 100% test coverage","comments":0,"number":9,"id":3619973,"html_url":"https://github.com/jacquev6/PyGithub/issues/9","milestone":{"title":"Version 1.0: coherent public interface","creator":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","closed_issues":13,"due_on":"2012-06-04T07:00:00Z","open_issues":8,"number":2,"id":93547}},{"title":"Use objects instead of string for shas, ids, etc. arguments","pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"labels":[{"color":"d7e102","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface"}],"created_at":"2012-03-06T16:46:49Z","state":"open","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/2","assignee":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"closed_at":null,"updated_at":"2012-06-01T20:19:54Z","body":"","comments":0,"number":2,"id":3527231,"html_url":"https://github.com/jacquev6/PyGithub/issues/2","milestone":{"title":"Version 1.0: coherent public interface","creator":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","closed_issues":13,"due_on":"2012-06-04T07:00:00Z","open_issues":8,"number":2,"id":93547}}] + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues?milestone=none +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4969'), ('content-length', '7399'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"27992c230165868561de1a0461b6fb75"'), ('date', 'Sat, 02 Jun 2012 06:15:12 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"title":"Make all attributes either optional or mandatory","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"labels":[{"color":"d7e102","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface"}],"created_at":"2012-05-30T20:00:36Z","state":"open","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/43","assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146},"closed_at":null,"updated_at":"2012-05-30T20:00:36Z","body":"","comments":0,"number":43,"id":4823331,"html_url":"https://github.com/jacquev6/PyGithub/issues/43","milestone":null},{"title":"Create enumerations for string attributes/arguments with a finite set of values","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"labels":[{"color":"d7e102","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface"}],"created_at":"2012-05-30T06:19:02Z","state":"open","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/42","assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146},"closed_at":null,"updated_at":"2012-05-30T20:15:40Z","body":"","comments":0,"number":42,"id":4809803,"html_url":"https://github.com/jacquev6/PyGithub/issues/42","milestone":null},{"title":"Generate a docs.python.org-like documentation","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"labels":[{"color":"444444","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management"}],"created_at":"2012-05-30T06:15:03Z","state":"open","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/40","assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146},"closed_at":null,"updated_at":"2012-05-30T06:15:03Z","body":"It would be good to have a doc that is more like other documentations of Python libraries.","comments":0,"number":40,"id":4809778,"html_url":"https://github.com/jacquev6/PyGithub/issues/40","milestone":null},{"title":"Implement https://api.github.com/hooks","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"labels":[{"color":"e102d8","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities"}],"created_at":"2012-05-29T11:29:46Z","state":"open","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/35","assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146},"closed_at":null,"updated_at":"2012-05-30T19:59:52Z","body":"https://api.github.com/hooks is not documented, but it is referred by http://developer.github.com/v3/repos/hooks/#create-a-hook","comments":0,"number":35,"id":4793106,"html_url":"https://github.com/jacquev6/PyGithub/issues/35","milestone":null},{"title":"Remove _identity","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"labels":[{"color":"0b02e1","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Refactoring","name":"Refactoring"}],"created_at":"2012-03-14T06:49:31Z","state":"open","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/18","assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146},"closed_at":null,"updated_at":"2012-05-30T20:18:56Z","body":"`_identity` exists only in `Label`, `NamedUser` and `Repository`, and should be replaced by proper attribute (`urlquote( self.name)`, `self.login` and `self.full_name`) in methods like `AuthenticatedUser.add_to_following`","comments":0,"number":18,"id":3643837,"html_url":"https://github.com/jacquev6/PyGithub/issues/18","milestone":null},{"title":"Deduce mandatory parameters","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"labels":[{"color":"e102d8","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities"}],"created_at":"2012-03-06T16:47:49Z","state":"open","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/3","assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146},"closed_at":null,"updated_at":"2012-05-28T13:58:35Z","body":"","comments":1,"number":3,"id":3527245,"html_url":"https://github.com/jacquev6/PyGithub/issues/3","milestone":null}] + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues?assignee=%2A +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4968'), ('content-length', '22053'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"19578e844395dac67fcdaf015d1fbce1"'), ('date', 'Sat, 02 Jun 2012 06:15:13 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"title":"Make all attributes either optional or mandatory","pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"labels":[{"color":"d7e102","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface"}],"created_at":"2012-05-30T20:00:36Z","state":"open","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/43","assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"closed_at":null,"updated_at":"2012-05-30T20:00:36Z","body":"","comments":0,"number":43,"id":4823331,"html_url":"https://github.com/jacquev6/PyGithub/issues/43","milestone":null},{"title":"Create enumerations for string attributes/arguments with a finite set of values","pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"labels":[{"color":"d7e102","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface"}],"created_at":"2012-05-30T06:19:02Z","state":"open","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/42","assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"closed_at":null,"updated_at":"2012-05-30T20:15:40Z","body":"","comments":0,"number":42,"id":4809803,"html_url":"https://github.com/jacquev6/PyGithub/issues/42","milestone":null},{"title":"Use type datetime.datetime for appropriate attributes/arguments","pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"labels":[{"color":"d7e102","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface"}],"created_at":"2012-05-30T06:16:47Z","state":"open","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/41","assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"closed_at":null,"updated_at":"2012-06-01T20:25:31Z","body":"","comments":0,"number":41,"id":4809786,"html_url":"https://github.com/jacquev6/PyGithub/issues/41","milestone":{"title":"Version 1.0: coherent public interface","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"closed_issues":13,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","due_on":"2012-06-04T07:00:00Z","open_issues":8,"number":2,"id":93547}},{"title":"Generate a docs.python.org-like documentation","pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"labels":[{"color":"444444","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management"}],"created_at":"2012-05-30T06:15:03Z","state":"open","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/40","assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"closed_at":null,"updated_at":"2012-05-30T06:15:03Z","body":"It would be good to have a doc that is more like other documentations of Python libraries.","comments":0,"number":40,"id":4809778,"html_url":"https://github.com/jacquev6/PyGithub/issues/40","milestone":null},{"title":"Understand and implement POST /repos/:user/:repo/pulls/:number/comments with in_reply_to","pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"labels":[{"color":"e102d8","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities"}],"created_at":"2012-05-29T11:39:15Z","state":"open","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/37","assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"closed_at":null,"updated_at":"2012-05-29T11:39:15Z","body":"Cf http://developer.github.com/v3/pulls/comments/#alternative-input, but my first tests did not succeed.","comments":0,"number":37,"id":4793216,"html_url":"https://github.com/jacquev6/PyGithub/issues/37","milestone":{"title":"Version 1.0: coherent public interface","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"closed_issues":13,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","due_on":"2012-06-04T07:00:00Z","open_issues":8,"number":2,"id":93547}},{"title":"Implement https://api.github.com/hooks","pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"labels":[{"color":"e102d8","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities"}],"created_at":"2012-05-29T11:29:46Z","state":"open","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/35","assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"closed_at":null,"updated_at":"2012-05-30T19:59:52Z","body":"https://api.github.com/hooks is not documented, but it is referred by http://developer.github.com/v3/repos/hooks/#create-a-hook","comments":0,"number":35,"id":4793106,"html_url":"https://github.com/jacquev6/PyGithub/issues/35","milestone":null},{"title":"Check that there is no more `toto`s in code","pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"labels":[{"color":"444444","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management"}],"created_at":"2012-05-29T07:13:42Z","state":"open","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/34","assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"closed_at":null,"updated_at":"2012-05-31T09:53:27Z","body":"","comments":0,"number":34,"id":4789817,"html_url":"https://github.com/jacquev6/PyGithub/issues/34","milestone":{"title":"Version 1.0: coherent public interface","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"closed_issues":13,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","due_on":"2012-06-04T07:00:00Z","open_issues":8,"number":2,"id":93547}},{"title":"List project(s) using PyGithub","pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"labels":[{"color":"444444","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management"}],"created_at":"2012-05-07T10:49:06Z","state":"open","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/25","assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"closed_at":null,"updated_at":"2012-05-07T10:49:06Z","body":"List known clients.\r\n\r\nFirst known client: http://pypi.python.org/pypi/tratihubis/ (cf #24)","comments":0,"number":25,"id":4452000,"html_url":"https://github.com/jacquev6/PyGithub/issues/25","milestone":{"title":"Version 1.0: coherent public interface","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"closed_issues":13,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","due_on":"2012-06-04T07:00:00Z","open_issues":8,"number":2,"id":93547}},{"title":"Remove _identity","pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"labels":[{"color":"0b02e1","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Refactoring","name":"Refactoring"}],"created_at":"2012-03-14T06:49:31Z","state":"open","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/18","assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"closed_at":null,"updated_at":"2012-05-30T20:18:56Z","body":"`_identity` exists only in `Label`, `NamedUser` and `Repository`, and should be replaced by proper attribute (`urlquote( self.name)`, `self.login` and `self.full_name`) in methods like `AuthenticatedUser.add_to_following`","comments":0,"number":18,"id":3643837,"html_url":"https://github.com/jacquev6/PyGithub/issues/18","milestone":null},{"title":"Document issue reporting","pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"labels":[{"color":"444444","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management"}],"created_at":"2012-03-13T12:09:48Z","state":"open","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/17","assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"closed_at":null,"updated_at":"2012-03-13T12:09:48Z","body":"","comments":0,"number":17,"id":3628022,"html_url":"https://github.com/jacquev6/PyGithub/issues/17","milestone":{"title":"Version 1.0: coherent public interface","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"closed_issues":13,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","due_on":"2012-06-04T07:00:00Z","open_issues":8,"number":2,"id":93547}},{"title":"Add copyright and license notice","pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"labels":[{"color":"444444","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management"}],"created_at":"2012-03-13T06:25:31Z","state":"open","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/16","assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"closed_at":null,"updated_at":"2012-03-13T07:04:42Z","body":"","comments":0,"number":16,"id":3624595,"html_url":"https://github.com/jacquev6/PyGithub/issues/16","milestone":{"title":"Version 1.0: coherent public interface","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"closed_issues":13,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","due_on":"2012-06-04T07:00:00Z","open_issues":8,"number":2,"id":93547}},{"title":"Deduce mandatory parameters","pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"labels":[{"color":"e102d8","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities"}],"created_at":"2012-03-06T16:47:49Z","state":"open","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/3","assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"closed_at":null,"updated_at":"2012-05-28T13:58:35Z","body":"","comments":1,"number":3,"id":3527245,"html_url":"https://github.com/jacquev6/PyGithub/issues/3","milestone":null},{"title":"Use objects instead of string for shas, ids, etc. arguments","pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"labels":[{"color":"d7e102","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface"}],"created_at":"2012-03-06T16:46:49Z","state":"open","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/2","assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"closed_at":null,"updated_at":"2012-06-01T20:19:54Z","body":"","comments":0,"number":2,"id":3527231,"html_url":"https://github.com/jacquev6/PyGithub/issues/2","milestone":{"title":"Version 1.0: coherent public interface","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},"closed_issues":13,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","due_on":"2012-06-04T07:00:00Z","open_issues":8,"number":2,"id":93547}}] + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/issues?assignee=none +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4967'), ('content-length', '1826'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"c087198529310acda2e50d723e071ec8"'), ('date', 'Sat, 02 Jun 2012 06:15:14 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"title":"Publish version 1.0","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"labels":[{"color":"444444","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management"}],"created_at":"2012-03-12T21:58:05Z","state":"open","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/9","assignee":null,"closed_at":null,"updated_at":"2012-06-02T06:14:47Z","body":"Check that there is no more `toto`s in code\nCheck that we have 100% test coverage","comments":0,"number":9,"id":3619973,"html_url":"https://github.com/jacquev6/PyGithub/issues/9","milestone":{"title":"Version 1.0: coherent public interface","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","closed_issues":13,"due_on":"2012-06-04T07:00:00Z","open_issues":8,"number":2,"id":93547}}] + diff --git a/lib/github/tests/ReplayData/Repository.testGetKeys.txt b/lib/github/tests/ReplayData/Repository.testGetKeys.txt new file mode 100644 index 0000000000..83419bc45e --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetKeys.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/keys +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4947'), ('content-length', '507'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"c53f260d8e74caefe7af2efeeda39e98"'), ('date', 'Sun, 27 May 2012 07:04:34 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/user/keys/2626761","verified":true,"key":"ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA2Mm0RjTNAYFfSCtUpO54usdseroUSIYg5KX4JoseTpqyiB/hqewjYLAdUq/tNIQzrkoEJWSyZrQt0ma7/YCyMYuNGd3DU6q6ZAyBeY3E9RyCiKjO3aTL2VKQGFvBVVmGdxGVSCITRphAcsKc/PF35/fg9XP9S0anMXcEFtdfMHz41SSw+XtE+Vc+6cX9FuI5qUfLGbkv8L1v3g4uw9VXlzq4GfTA+1S7D6mcoGHopAIXFlVr+2RfDKdSURMcB22z41fljO1MW4+zUS/4FyUTpL991es5fcwKXYoiE+x06VJeJJ1Krwx+DZj45uweV6cHXt2JwJEI9fWB6WyBlDejWw==","title":"Key added through PyGithub","id":2626761}] + diff --git a/lib/github/tests/ReplayData/Repository.testGetLabel.txt b/lib/github/tests/ReplayData/Repository.testGetLabel.txt new file mode 100644 index 0000000000..92709855e8 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetLabel.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/labels/Label%20with%20silly%20name%20%25%20%2A%20%2B%20created%20by%20PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4983'), ('content-length', '191'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"92b623552b1bac3f019d03c920305acd"'), ('date', 'Sat, 19 May 2012 10:12:54 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+silly+name+%25+%2A+%2B+created+by+PyGithub","name":"Label with silly name % * + created by PyGithub","color":"00ff00"} + diff --git a/lib/github/tests/ReplayData/Repository.testGetLabels.txt b/lib/github/tests/ReplayData/Repository.testGetLabels.txt new file mode 100644 index 0000000000..bd05f50faf --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetLabels.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/labels +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4944'), ('content-length', '695'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"a35ac34bf5089a20b90cd0bb34001fa3"'), ('date', 'Sun, 27 May 2012 07:05:48 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Refactoring","name":"Refactoring","color":"0b02e1"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}] + diff --git a/lib/github/tests/ReplayData/Repository.testGetLanguages.txt b/lib/github/tests/ReplayData/Repository.testGetLanguages.txt new file mode 100644 index 0000000000..2f3ea3073e --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetLanguages.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/languages +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4941'), ('content-length', '29'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"7d14a65f22f237036a50f0d982721206"'), ('date', 'Sun, 27 May 2012 07:06:51 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"Shell":673,"Python":127266} + diff --git a/lib/github/tests/ReplayData/Repository.testGetMilestones.txt b/lib/github/tests/ReplayData/Repository.testGetMilestones.txt new file mode 100644 index 0000000000..1cac2621a6 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetMilestones.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/milestones +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4938'), ('content-length', '901'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"ed668d7695f9e5259aa7d9660a875e03"'), ('date', 'Sun, 27 May 2012 07:07:35 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547,"closed_issues":2}] + diff --git a/lib/github/tests/ReplayData/Repository.testGetMilestonesWithArguments.txt b/lib/github/tests/ReplayData/Repository.testGetMilestonesWithArguments.txt new file mode 100644 index 0000000000..1c967c3c13 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetMilestonesWithArguments.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/milestones?sort=due_date&state=closed&direction=asc +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '2252'), ('x-ratelimit-remaining', '4858'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"5fba22d60628595b9e34df100c6ef545"'), ('date', 'Tue, 29 May 2012 18:41:47 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/1","due_on":"2012-03-13T07:00:00Z","open_issues":0,"title":"Version 0.4","created_at":"2012-03-08T12:22:10Z","creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"description":"","number":1,"id":93546,"state":"closed","closed_issues":3},{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/3","due_on":"2012-03-20T07:00:00Z","open_issues":0,"title":"Version 0.5: full implementation","created_at":"2012-03-12T21:38:36Z","creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"description":"","number":3,"id":95354,"state":"closed","closed_issues":4},{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/4","due_on":"2012-04-19T07:00:00Z","open_issues":0,"title":"Version 0.6","created_at":"2012-04-17T05:52:03Z","creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"description":"","number":4,"id":108652,"state":"closed","closed_issues":2},{"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/5","due_on":"2012-05-26T07:00:00Z","open_issues":0,"title":"Version 0.7","created_at":"2012-05-25T11:47:06Z","creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"description":"","number":5,"id":124045,"state":"closed","closed_issues":2}] + diff --git a/lib/github/tests/ReplayData/Repository.testGetNetworkEvents.txt b/lib/github/tests/ReplayData/Repository.testGetNetworkEvents.txt new file mode 100644 index 0000000000..8c5939f2bd --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetNetworkEvents.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/networks/jacquev6/PyGithub/events +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4929'), ('content-length', '44412'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next"'), ('etag', '"1e10e6d8994190bd053880e299e9b0b4"'), ('date', 'Sun, 27 May 2012 07:08:40 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"type":"DownloadEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"download":{"name":"Hook.py","size":1024,"created_at":"2012-05-27T06:54:54Z","content_type":".py","url":"https://api.github.com/repos/jacquev6/PyGithub/downloads/245143","download_count":0,"id":245143,"description":"","html_url":"https://github.com/downloads/jacquev6/PyGithub/Hook.py"}},"id":"1556239111","created_at":"2012-05-27T06:54:55Z"},{"type":"DownloadEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"download":{"name":"htmlcov.zip","size":258048,"created_at":"2012-05-27T06:53:47Z","content_type":".zip","download_count":0,"url":"https://api.github.com/repos/jacquev6/PyGithub/downloads/245142","id":245142,"description":"","html_url":"https://github.com/downloads/jacquev6/PyGithub/htmlcov.zip"}},"id":"1556239049","created_at":"2012-05-27T06:53:48Z"},{"type":"PushEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"head":"956279094a7383b6a8f00c93770ed02ca711f8e5","size":4,"push_id":80734053,"ref":"refs/heads/topic/RewriteWithGeneratedCode","commits":[{"sha":"8cb3e63e80f3ab741ca580eed791a85fb4e1b968","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/8cb3e63e80f3ab741ca580eed791a85fb4e1b968","distinct":true,"message":"Test Team"},{"sha":"e7fe18b7dd3daa03a6ebb7f83a4f100c0f68e96b","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e7fe18b7dd3daa03a6ebb7f83a4f100c0f68e96b","distinct":true,"message":"Test Organization members"},{"sha":"4169010f17cf66a9f1e43e476115485ed7cda90c","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4169010f17cf66a9f1e43e476115485ed7cda90c","distinct":true,"message":"Improve coverage of Organization"},{"sha":"956279094a7383b6a8f00c93770ed02ca711f8e5","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/956279094a7383b6a8f00c93770ed02ca711f8e5","distinct":true,"message":"Test Repository.create_git_*"}]},"id":"1556235497","created_at":"2012-05-27T06:00:30Z"},{"type":"IssuesEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"action":"opened","issue":{"number":30,"created_at":"2012-05-27T05:40:15Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"Body created by PyGithub","comments":0,"title":"Issue also created by PyGithub","updated_at":"2012-05-27T05:40:15Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/30","id":4769659,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":{"number":2,"due_on":"2012-06-04T07:00:00Z","created_at":"2012-03-08T12:22:28Z","title":"Version 1.0: coherent public interface","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","id":93547,"open_issues":10,"closed_issues":2,"description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","state":"open"},"closed_at":null,"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"html_url":"https://github.com/jacquev6/PyGithub/issues/30","labels":[{"name":"Question","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","color":"02e10c"}],"state":"open"}},"id":"1556234207","created_at":"2012-05-27T05:40:15Z"},{"type":"MemberEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"action":"added","member":{"gravatar_id":"1517ed584458ccf83e03f5d77d9699d7","avatar_url":"https://secure.gravatar.com/avatar/1517ed584458ccf83e03f5d77d9699d7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/Lyloa","id":1131432,"login":"Lyloa"}},"id":"1556233923","created_at":"2012-05-27T05:34:29Z"},{"type":"MemberEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"action":"added","member":{"gravatar_id":"1517ed584458ccf83e03f5d77d9699d7","avatar_url":"https://secure.gravatar.com/avatar/1517ed584458ccf83e03f5d77d9699d7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/Lyloa","id":1131432,"login":"Lyloa"}},"id":"1556233882","created_at":"2012-05-27T05:33:44Z"},{"type":"ForkEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1424031,"url":"https://api.github.com/users/BeaverSoftware","login":"BeaverSoftware"},"payload":{"forkee":{"name":"PyGithub","size":348,"has_wiki":false,"created_at":"2012-05-27T05:23:17Z","clone_url":"https://github.com/BeaverSoftware/PyGithub.git","public":true,"watchers":1,"private":false,"updated_at":"2012-05-27T05:23:18Z","git_url":"git://github.com/BeaverSoftware/PyGithub.git","fork":true,"language":"Python","url":"https://api.github.com/repos/BeaverSoftware/PyGithub","ssh_url":"git@github.com:BeaverSoftware/PyGithub.git","id":4460027,"svn_url":"https://github.com/BeaverSoftware/PyGithub","pushed_at":"2012-05-26T20:54:13Z","has_downloads":true,"mirror_url":null,"open_issues":0,"full_name":"BeaverSoftware/PyGithub","has_issues":false,"homepage":"http://vincent-jacques.net/PyGithub","description":"Python library implementing the full Github API v3","forks":0,"html_url":"https://github.com/BeaverSoftware/PyGithub","owner":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","url":"https://api.github.com/users/BeaverSoftware","id":1424031,"login":"BeaverSoftware"}}},"id":"1556233222","created_at":"2012-05-27T05:23:18Z"},{"type":"PushEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"head":"a39af6a0aae16a923f7be48a70fe1095b17280d2","size":2,"push_id":80709334,"commits":[{"sha":"60fb7a8ef56f46d3fe9ce6d008e6b58238a71d29","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/60fb7a8ef56f46d3fe9ce6d008e6b58238a71d29","distinct":true,"message":"Heavy refactoring of integration tests"},{"sha":"a39af6a0aae16a923f7be48a70fe1095b17280d2","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a39af6a0aae16a923f7be48a70fe1095b17280d2","distinct":true,"message":"Improve test coverage"}],"ref":"refs/heads/topic/RewriteWithGeneratedCode"},"id":"1556182773","created_at":"2012-05-26T20:54:15Z"},{"type":"WatchEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"1689abbd998128dbb3658698b429b022","avatar_url":"https://secure.gravatar.com/avatar/1689abbd998128dbb3658698b429b022?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":22974,"url":"https://api.github.com/users/michaelpedersen","login":"michaelpedersen"},"payload":{"action":"started"},"id":"1556168218","created_at":"2012-05-26T18:33:42Z"},{"type":"IssuesEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"action":"closed","issue":{"number":28,"created_at":"2012-05-19T10:38:23Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"Body edited by PyGithub","title":"Issue created by PyGithub","comments":0,"updated_at":"2012-05-26T14:59:33Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/28","id":4653757,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":{"number":1,"created_at":"2012-03-08T12:22:10Z","due_on":"2012-03-13T07:00:00Z","title":"Version 0.4","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/1","id":93546,"open_issues":0,"closed_issues":3,"description":"","state":"closed"},"closed_at":"2012-05-26T14:59:33Z","html_url":"https://github.com/jacquev6/PyGithub/issues/28","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"labels":[{"name":"Bug","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","color":"e10c02"},{"name":"Project management","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","color":"444444"},{"name":"Question","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","color":"02e10c"}],"state":"closed"}},"id":"1556145515","created_at":"2012-05-26T14:59:34Z"},{"type":"PushEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"head":"36574ded89738a81f47f415017ba880d0cad839b","size":5,"push_id":80677260,"commits":[{"sha":"95cd6c507bdfbf3700a31bafbe26f72a1d684be1","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/95cd6c507bdfbf3700a31bafbe26f72a1d684be1","distinct":true,"message":"Use setUp in test for NamedUser"},{"sha":"386bcde55e1744fa888b034d34ad9f167595d2cf","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/386bcde55e1744fa888b034d34ad9f167595d2cf","distinct":true,"message":"Refactor tests of NamedUser"},{"sha":"1b3ca70ebe8724ab7d0d6ba9c8b20853a018eeec","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1b3ca70ebe8724ab7d0d6ba9c8b20853a018eeec","distinct":true,"message":"Restore coverage of Event"},{"sha":"ff8d87d5391b2ef8d10e89f77260a18440e88e25","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ff8d87d5391b2ef8d10e89f77260a18440e88e25","distinct":true,"message":"Test NamedUser.create_gist withour description"},{"sha":"36574ded89738a81f47f415017ba880d0cad839b","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/36574ded89738a81f47f415017ba880d0cad839b","distinct":true,"message":"Refactor tests of Repository"}],"ref":"refs/heads/topic/RewriteWithGeneratedCode"},"id":"1556126182","created_at":"2012-05-26T11:25:50Z"},{"type":"PushEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"head":"619eae8d51c5988f0d2889fc767fa677438ba95d","size":11,"push_id":80673538,"ref":"refs/heads/topic/RewriteWithGeneratedCode","commits":[{"sha":"5bb654d26dd014d36794acd1e6ecf3736f12aad7","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5bb654d26dd014d36794acd1e6ecf3736f12aad7","distinct":false,"message":"Implement the three authentication schemes"},{"sha":"cb0313157bf904f2d364377d35d9397b269547a5","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cb0313157bf904f2d364377d35d9397b269547a5","distinct":false,"message":"Merge branch 'topic/Authentication' into develop"},{"sha":"0cec0d25e606c023a62a4fc7cdc815309ebf6d16","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16","distinct":false,"message":"Publish version 0.7"},{"sha":"ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","distinct":false,"message":"Merge branch 'develop'"},{"sha":"3a3bf4763192ee1234eb0557628133e06f3dfc76","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/3a3bf4763192ee1234eb0557628133e06f3dfc76","distinct":true,"message":"Merge branch 'master' into topic/RewriteWithGeneratedCode\n\nConflicts:\n\tgithub/Github.py\n\tgithub/Requester.py"},{"sha":"608f17794664f61693a3dc05e6056fea8fbef0ff","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/608f17794664f61693a3dc05e6056fea8fbef0ff","distinct":true,"message":"Restore some form of Authorization header in replay data"},{"sha":"2c04b8adbd91d38eef4f0767337ab7a12b2f684b","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2c04b8adbd91d38eef4f0767337ab7a12b2f684b","distinct":true,"message":"Allow test without pre-set-up Github"},{"sha":"5b97389988b6fe43e15a079702f6f1671257fb28","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5b97389988b6fe43e15a079702f6f1671257fb28","distinct":true,"message":"Test three authentication schemes"},{"sha":"12747613c5ec00deccf296b8619ad507f7050475","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/12747613c5ec00deccf296b8619ad507f7050475","distinct":true,"message":"Test Issue.getComments"},{"sha":"2982fa96c5ca75abe717d974d83f9135d664232e","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2982fa96c5ca75abe717d974d83f9135d664232e","distinct":true,"message":"Test the new Repository.full_name attribute"},{"sha":"619eae8d51c5988f0d2889fc767fa677438ba95d","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/619eae8d51c5988f0d2889fc767fa677438ba95d","distinct":true,"message":"Improve coverage of AuthenticatedUser"}]},"id":"1556114751","created_at":"2012-05-26T10:01:39Z"},{"type":"IssuesEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"action":"closed","issue":{"number":29,"created_at":"2012-05-25T11:47:59Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"","comments":0,"title":"Publish version 0.7","updated_at":"2012-05-25T17:32:32Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/29","id":4752048,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":{"number":5,"due_on":"2012-05-26T07:00:00Z","created_at":"2012-05-25T11:47:06Z","title":"Version 0.7","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/5","id":124045,"closed_issues":2,"open_issues":0,"description":"","state":"closed"},"closed_at":"2012-05-25T17:32:32Z","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"labels":[{"name":"Project management","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","color":"444444"}],"html_url":"https://github.com/jacquev6/PyGithub/issues/29","state":"closed"}},"id":"1555940993","created_at":"2012-05-25T17:32:33Z"},{"type":"IssuesEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"action":"closed","issue":{"number":15,"created_at":"2012-03-13T06:24:05Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"One would want to use the API without authentication, with login+password, and with OAuth token. Let's cover these use-cases.","comments":1,"title":"Implement all authentication schemes","updated_at":"2012-05-25T17:32:31Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/15","id":3624575,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":{"number":5,"due_on":"2012-05-26T07:00:00Z","created_at":"2012-05-25T11:47:06Z","title":"Version 0.7","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/5","id":124045,"closed_issues":2,"open_issues":0,"description":"","state":"closed"},"closed_at":"2012-05-25T17:32:31Z","labels":[{"name":"Functionalities","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","color":"e102d8"}],"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"html_url":"https://github.com/jacquev6/PyGithub/issues/15","state":"closed"}},"id":"1555940986","created_at":"2012-05-25T17:32:33Z"},{"type":"CreateEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"master_branch":"master","ref_type":"tag","ref":"v0.7","description":"Python library implementing the full Github API v3"},"id":"1555936661","created_at":"2012-05-25T17:19:48Z"},{"type":"DeleteEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"ref_type":"branch","ref":"topic/Authentication"},"id":"1555936660","created_at":"2012-05-25T17:19:48Z"},{"type":"PushEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"head":"ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","size":4,"push_id":80573368,"ref":"refs/heads/master","commits":[{"sha":"5bb654d26dd014d36794acd1e6ecf3736f12aad7","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5bb654d26dd014d36794acd1e6ecf3736f12aad7","distinct":false,"message":"Implement the three authentication schemes"},{"sha":"cb0313157bf904f2d364377d35d9397b269547a5","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cb0313157bf904f2d364377d35d9397b269547a5","distinct":false,"message":"Merge branch 'topic/Authentication' into develop"},{"sha":"0cec0d25e606c023a62a4fc7cdc815309ebf6d16","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16","distinct":false,"message":"Publish version 0.7"},{"sha":"ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","distinct":true,"message":"Merge branch 'develop'"}]},"id":"1555936659","created_at":"2012-05-25T17:19:48Z"},{"type":"PushEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"head":"0cec0d25e606c023a62a4fc7cdc815309ebf6d16","size":3,"push_id":80573367,"commits":[{"sha":"5bb654d26dd014d36794acd1e6ecf3736f12aad7","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5bb654d26dd014d36794acd1e6ecf3736f12aad7","distinct":false,"message":"Implement the three authentication schemes"},{"sha":"cb0313157bf904f2d364377d35d9397b269547a5","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cb0313157bf904f2d364377d35d9397b269547a5","distinct":false,"message":"Merge branch 'topic/Authentication' into develop"},{"sha":"0cec0d25e606c023a62a4fc7cdc815309ebf6d16","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16","distinct":false,"message":"Publish version 0.7"}],"ref":"refs/heads/develop"},"id":"1555936657","created_at":"2012-05-25T17:19:47Z"},{"type":"CreateEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"master_branch":"master","ref":"topic/Authentication","description":"Python library implementing the full Github API v3","ref_type":"branch"},"id":"1555833283","created_at":"2012-05-25T12:24:21Z"},{"type":"IssuesEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"action":"opened","issue":{"number":29,"created_at":"2012-05-25T11:47:59Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"","title":"Publish version 0.7","comments":0,"updated_at":"2012-05-25T11:47:59Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/29","id":4752048,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":{"number":5,"created_at":"2012-05-25T11:47:06Z","due_on":"2012-05-26T07:00:00Z","title":"Version 0.7","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/5","id":124045,"open_issues":2,"closed_issues":0,"description":"","state":"open"},"closed_at":null,"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"html_url":"https://github.com/jacquev6/PyGithub/issues/29","labels":[{"name":"Project management","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","color":"444444"}],"state":"open"}},"id":"1555822981","created_at":"2012-05-25T12:02:48Z"},{"type":"IssueCommentEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"comment":{"created_at":"2012-05-25T06:31:42Z","body":"It means that there will be three ways to create an instance of the Github class:\n github = Github()\n github = Github( login, password )\n github = Github( oauth_token )\n","updated_at":"2012-05-25T06:31:42Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5924198","id":5924198,"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},"action":"created","issue":{"number":15,"created_at":"2012-03-13T06:24:05Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"comments":1,"body":"One would want to use the API without authentication, with login+password, and with OAuth token. Let's cover these use-cases.","title":"Implement all authentication schemes","updated_at":"2012-05-25T06:31:42Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/15","id":3624575,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":null,"closed_at":null,"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"labels":[{"name":"Functionalities","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","color":"e102d8"}],"html_url":"https://github.com/jacquev6/PyGithub/issues/15","state":"open"}},"id":"1555742639","created_at":"2012-05-25T06:31:42Z"},{"type":"WatchEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"action":"started"},"id":"1555738288","created_at":"2012-05-25T06:05:21Z"},{"type":"PushEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"head":"527ce7459a2e60d1536883f19b9bc6850d71127b","size":5,"push_id":79877715,"commits":[{"sha":"287bc541542f9d32339e7dd4b36a511cab2ebdae","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/287bc541542f9d32339e7dd4b36a511cab2ebdae","distinct":true,"message":"Generate more coverage information"},{"sha":"588a4a9a355096c00a2bb25f27664d2115e120ac","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/588a4a9a355096c00a2bb25f27664d2115e120ac","distinct":true,"message":"Test AuthenticatedUser watching"},{"sha":"815720f0deb376c34166c27b6e3b73e5c1f5b1a3","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/815720f0deb376c34166c27b6e3b73e5c1f5b1a3","distinct":true,"message":"Test Authorization"},{"sha":"473c92adcd8bbbd32003d9c65666ede66059551b","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/473c92adcd8bbbd32003d9c65666ede66059551b","distinct":true,"message":"Test Download and CommitComment"},{"sha":"527ce7459a2e60d1536883f19b9bc6850d71127b","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/527ce7459a2e60d1536883f19b9bc6850d71127b","distinct":true,"message":"Merge commit 'c93f9cc8484b7' into topic/RewriteWithGeneratedCode\n\nConflicts:\n\ttest/IntegrationTest.py"}],"ref":"refs/heads/topic/RewriteWithGeneratedCode"},"id":"1554729420","created_at":"2012-05-22T19:59:48Z"},{"type":"DownloadEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"download":{"name":"Foobar.txt","size":1024,"created_at":"2012-05-22T19:15:29Z","content_type":"text/plain","download_count":0,"url":"https://api.github.com/repos/jacquev6/PyGithub/downloads/242562","id":242562,"description":null,"html_url":"https://github.com/downloads/jacquev6/PyGithub/Foobar.txt"}},"id":"1554712197","created_at":"2012-05-22T19:15:30Z"},{"type":"DownloadEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"download":{"name":"Foobar.txt","size":1024,"created_at":"2012-05-22T19:11:49Z","content_type":"text/richtext","download_count":0,"url":"https://api.github.com/repos/jacquev6/PyGithub/downloads/242556","id":242556,"description":"Download created by PyGithub","html_url":"https://github.com/downloads/jacquev6/PyGithub/Foobar.txt"}},"id":"1554710791","created_at":"2012-05-22T19:11:49Z"},{"type":"DownloadEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"download":{"name":"Foobar.txt","created_at":"2012-05-22T18:58:32Z","size":1024,"content_type":"text/plain","url":"https://api.github.com/repos/jacquev6/PyGithub/downloads/242550","download_count":0,"id":242550,"description":null,"html_url":"https://github.com/downloads/jacquev6/PyGithub/Foobar.txt"}},"id":"1554705673","created_at":"2012-05-22T18:58:32Z"},{"type":"CommitCommentEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"comment":{"position":19,"created_at":"2012-05-22T18:53:25Z","line":211,"body":"Foobar","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","updated_at":"2012-05-22T18:53:25Z","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1362020","id":1362020,"path":"src/github/AuthenticatedUser.py","html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1362020","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}}},"id":"1554703698","created_at":"2012-05-22T18:53:25Z"},{"type":"CommitCommentEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"comment":{"position":3,"created_at":"2012-05-22T18:50:02Z","line":null,"body":"Comment also created by PyGithub","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","updated_at":"2012-05-22T18:50:02Z","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1362001","id":1362001,"path":"codegen/templates/GithubObject.MethodBody.UseResult.py","html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1362001","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}}},"id":"1554702296","created_at":"2012-05-22T18:50:02Z"},{"type":"CommitCommentEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"comment":{"position":null,"created_at":"2012-05-22T18:49:34Z","line":26,"body":"Comment created by PyGithub","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","updated_at":"2012-05-22T18:49:34Z","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1362000","id":1362000,"path":"codegen/templates/GithubObject.MethodBody.UseResult.py","html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1362000","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}}},"id":"1554702087","created_at":"2012-05-22T18:49:34Z"},{"type":"CommitCommentEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"comment":{"position":null,"created_at":"2012-05-22T18:40:18Z","body":"Comment created by PyGithub","line":null,"commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","updated_at":"2012-05-22T18:40:18Z","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1361949","id":1361949,"path":null,"html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1361949","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}}},"id":"1554698320","created_at":"2012-05-22T18:40:18Z"}] + diff --git a/lib/github/tests/ReplayData/Repository.testGetPulls.txt b/lib/github/tests/ReplayData/Repository.testGetPulls.txt new file mode 100644 index 0000000000..855d811b52 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetPulls.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/pulls +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4930'), ('content-length', '4057'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"a659c559e34da168eba22cba60faf027"'), ('date', 'Sun, 27 May 2012 10:59:02 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"title":"Creation of a pull request from an issue is not covered by integration tests","state":"open","merged_at":null,"updated_at":"2012-05-27T10:58:41Z","head":{"user":null,"repo":{"description":"Python library implementing the full Github API v3","full_name":"BeaverSoftware/PyGithub","has_wiki":false,"has_issues":false,"updated_at":"2012-05-27T10:58:08Z","forks":0,"mirror_url":null,"homepage":"http://vincent-jacques.net/PyGithub","ssh_url":"git@github.com:BeaverSoftware/PyGithub.git","open_issues":0,"fork":true,"svn_url":"https://github.com/BeaverSoftware/PyGithub","pushed_at":"2012-05-27T10:58:08Z","size":176,"html_url":"https://github.com/BeaverSoftware/PyGithub","private":false,"url":"https://api.github.com/repos/BeaverSoftware/PyGithub","clone_url":"https://github.com/BeaverSoftware/PyGithub.git","owner":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","url":"https://api.github.com/users/BeaverSoftware","login":"BeaverSoftware","id":1424031},"name":"PyGithub","has_downloads":true,"language":"Python","watchers":1,"git_url":"git://github.com/BeaverSoftware/PyGithub.git","id":4460787,"created_at":"2012-05-27T08:50:04Z"},"label":"BeaverSoftware:master","sha":"aff8a573a19f0a42380e1c0cbbc63b6dc719f38e","ref":"master"},"body":"","number":32,"_links":{"comments":{"href":"https://api.github.com/repos/jacquev6/PyGithub/issues/32/comments"},"issue":{"href":"https://api.github.com/repos/jacquev6/PyGithub/issues/32"},"self":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/32"},"review_comments":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/32/comments"},"html":{"href":"https://github.com/jacquev6/PyGithub/pull/32"}},"closed_at":null,"diff_url":"https://github.com/jacquev6/PyGithub/pull/32.diff","html_url":"https://github.com/jacquev6/PyGithub/pull/32","url":"https://api.github.com/repos/jacquev6/PyGithub/pulls/32","issue_url":"https://github.com/jacquev6/PyGithub/issues/32","id":1436310,"base":{"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"repo":{"description":"Python library implementing the full Github API v3","full_name":"jacquev6/PyGithub","has_wiki":false,"has_issues":true,"updated_at":"2012-05-27T10:54:09Z","forks":3,"mirror_url":null,"homepage":"http://vincent-jacques.net/PyGithub","ssh_url":"git@github.com:jacquev6/PyGithub.git","open_issues":17,"fork":false,"svn_url":"https://github.com/jacquev6/PyGithub","pushed_at":"2012-05-27T10:54:09Z","size":188,"html_url":"https://github.com/jacquev6/PyGithub","private":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"name":"PyGithub","has_downloads":true,"language":"Python","watchers":15,"git_url":"git://github.com/jacquev6/PyGithub.git","id":3544490,"created_at":"2012-02-25T12:53:47Z"},"label":"jacquev6:topic/RewriteWithGeneratedCode","sha":"7ec473e793c0b63092d938707632639a41fd4369","ref":"topic/RewriteWithGeneratedCode"},"created_at":"2012-05-27T10:58:41Z","patch_url":"https://github.com/jacquev6/PyGithub/pull/32.patch"}] + diff --git a/lib/github/tests/ReplayData/Repository.testGetPullsComments.txt b/lib/github/tests/ReplayData/Repository.testGetPullsComments.txt new file mode 100644 index 0000000000..88e656f940 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetPullsComments.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/pulls/comments +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4961'), ('x-ratelimit-limit', '5000'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '1617'), ('server', 'nginx'), ('last-modified', 'Fri, 21 Dec 2012 18:46:45 GMT'), ('connection', 'keep-alive'), ('etag', '"446137bf216c4edc30567fbc3e944b5a"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Tue, 25 Dec 2012 11:55:47 GMT'), ('x-github-media-type', 'github.beta; format=json'), ('content-type', 'application/json; charset=utf-8')] +[{"body":"Review comment created for PyGithub","path":"codegen/templates/GithubObject.py","original_commit_id":"8a4f306d4b223682dd19410d4a9150636ebe4206","original_position":5,"updated_at":"2012-09-11T20:06:32Z","url":"https://api.github.com/repos/jacquev6/PyGithub/pulls/comments/1580134","commit_id":"8a4f306d4b223682dd19410d4a9150636ebe4206","created_at":"2012-09-11T20:06:32Z","user":{"type":"User","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","repos_url":"https://api.github.com/users/jacquev6/repos","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"position":5,"_links":{"pull_request":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/31"},"html":{"href":"https://github.com/jacquev6/PyGithub/pull/31#discussion_r1580134"},"self":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/comments/1580134"}},"id":1580134}] + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/pulls/comments?sort=created&direction=asc +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '1617'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4960'), ('server', 'nginx'), ('last-modified', 'Fri, 21 Dec 2012 18:46:45 GMT'), ('connection', 'keep-alive'), ('etag', '"446137bf216c4edc30567fbc3e944b5a"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Tue, 25 Dec 2012 11:55:58 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"_links":{"html":{"href":"https://github.com/jacquev6/PyGithub/pull/31#discussion_r1580134"},"self":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/comments/1580134"},"pull_request":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/31"}},"body":"Review comment created for PyGithub","path":"codegen/templates/GithubObject.py","original_commit_id":"8a4f306d4b223682dd19410d4a9150636ebe4206","original_position":5,"updated_at":"2012-09-11T20:06:32Z","url":"https://api.github.com/repos/jacquev6/PyGithub/pulls/comments/1580134","commit_id":"8a4f306d4b223682dd19410d4a9150636ebe4206","created_at":"2012-09-11T20:06:32Z","user":{"type":"User","received_events_url":"https://api.github.com/users/jacquev6/received_events","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146},"position":5,"id":1580134}] + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/pulls/comments?since=2012-05-28T23%3A00%3A00Z +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '1617'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4959'), ('server', 'nginx'), ('last-modified', 'Fri, 21 Dec 2012 18:46:45 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"446137bf216c4edc30567fbc3e944b5a"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Tue, 25 Dec 2012 11:56:09 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"body":"Review comment created for PyGithub","path":"codegen/templates/GithubObject.py","original_commit_id":"8a4f306d4b223682dd19410d4a9150636ebe4206","original_position":5,"updated_at":"2012-09-11T20:06:32Z","url":"https://api.github.com/repos/jacquev6/PyGithub/pulls/comments/1580134","_links":{"html":{"href":"https://github.com/jacquev6/PyGithub/pull/31#discussion_r1580134"},"pull_request":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/31"},"self":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/comments/1580134"}},"commit_id":"8a4f306d4b223682dd19410d4a9150636ebe4206","created_at":"2012-09-11T20:06:32Z","user":{"type":"User","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","followers_url":"https://api.github.com/users/jacquev6/followers","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","following_url":"https://api.github.com/users/jacquev6/following","organizations_url":"https://api.github.com/users/jacquev6/orgs","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","repos_url":"https://api.github.com/users/jacquev6/repos","login":"jacquev6","received_events_url":"https://api.github.com/users/jacquev6/received_events","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","id":327146,"starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}"},"position":5,"id":1580134}] + diff --git a/lib/github/tests/ReplayData/Repository.testGetPullsWithArguments.txt b/lib/github/tests/ReplayData/Repository.testGetPullsWithArguments.txt new file mode 100644 index 0000000000..343da4b054 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetPullsWithArguments.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/pulls?state=closed +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4855'), ('content-length', '9992'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"2e781638c71ac097640fc67cfcab8822"'), ('date', 'Tue, 29 May 2012 18:42:44 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"head":{"ref":"master","label":"BeaverSoftware:master","repo":{"clone_url":"https://github.com/BeaverSoftware/PyGithub.git","has_downloads":true,"watchers":1,"updated_at":"2012-05-29T18:09:14Z","homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/BeaverSoftware/PyGithub","html_url":"https://github.com/BeaverSoftware/PyGithub","has_wiki":false,"has_issues":false,"fork":true,"git_url":"git://github.com/BeaverSoftware/PyGithub.git","forks":0,"size":428,"private":false,"open_issues":0,"svn_url":"https://github.com/BeaverSoftware/PyGithub","owner":{"url":"https://api.github.com/users/BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031,"avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"name":"PyGithub","mirror_url":null,"language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:BeaverSoftware/PyGithub.git","pushed_at":"2012-05-29T18:05:10Z","created_at":"2012-05-29T18:03:19Z","id":4485562,"full_name":"BeaverSoftware/PyGithub"},"user":null,"sha":"ca6e7ef9ce22dc01290bb59507f24cc17f42daa4"},"updated_at":"2012-05-29T18:07:54Z","issue_url":"https://github.com/jacquev6/PyGithub/issues/39","_links":{"self":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/39"},"review_comments":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/39/comments"},"comments":{"href":"https://api.github.com/repos/jacquev6/PyGithub/issues/39/comments"},"issue":{"href":"https://api.github.com/repos/jacquev6/PyGithub/issues/39"},"html":{"href":"https://github.com/jacquev6/PyGithub/pull/39"}},"body":"","diff_url":"https://github.com/jacquev6/PyGithub/pull/39.diff","url":"https://api.github.com/repos/jacquev6/PyGithub/pulls/39","base":{"ref":"topic/RewriteWithGeneratedCode","label":"jacquev6:topic/RewriteWithGeneratedCode","repo":{"clone_url":"https://github.com/jacquev6/PyGithub.git","has_downloads":true,"watchers":17,"updated_at":"2012-05-29T18:07:54Z","homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","html_url":"https://github.com/jacquev6/PyGithub","has_wiki":false,"has_issues":true,"fork":false,"git_url":"git://github.com/jacquev6/PyGithub.git","forks":3,"size":480,"private":false,"open_issues":14,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"name":"PyGithub","mirror_url":null,"language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-29T18:07:54Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"full_name":"jacquev6/PyGithub"},"user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"d57aea6a898050115a089e6f86c5314d7daf97e8"},"number":39,"html_url":"https://github.com/jacquev6/PyGithub/pull/39","title":"Pull request to be merged by PyGithub with a custom commit message","patch_url":"https://github.com/jacquev6/PyGithub/pull/39.patch","closed_at":"2012-05-29T18:07:54Z","created_at":"2012-05-29T18:06:07Z","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"state":"closed","id":1448168,"merged_at":"2012-05-29T18:07:54Z"},{"head":{"ref":"master","label":"BeaverSoftware:master","repo":null,"user":null,"sha":"aff8a573a19f0a42380e1c0cbbc63b6dc719f38e"},"updated_at":"2012-05-27T11:03:53Z","issue_url":"https://github.com/jacquev6/PyGithub/issues/32","_links":{"self":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/32"},"review_comments":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/32/comments"},"comments":{"href":"https://api.github.com/repos/jacquev6/PyGithub/issues/32/comments"},"issue":{"href":"https://api.github.com/repos/jacquev6/PyGithub/issues/32"},"html":{"href":"https://github.com/jacquev6/PyGithub/pull/32"}},"body":"","diff_url":"https://github.com/jacquev6/PyGithub/pull/32.diff","url":"https://api.github.com/repos/jacquev6/PyGithub/pulls/32","base":{"ref":"topic/RewriteWithGeneratedCode","label":"jacquev6:topic/RewriteWithGeneratedCode","repo":{"clone_url":"https://github.com/jacquev6/PyGithub.git","has_downloads":true,"watchers":17,"updated_at":"2012-05-29T18:07:54Z","homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","html_url":"https://github.com/jacquev6/PyGithub","has_wiki":false,"has_issues":true,"fork":false,"git_url":"git://github.com/jacquev6/PyGithub.git","forks":3,"size":480,"private":false,"open_issues":14,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"name":"PyGithub","mirror_url":null,"language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-29T18:07:54Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"full_name":"jacquev6/PyGithub"},"user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"7ec473e793c0b63092d938707632639a41fd4369"},"number":32,"html_url":"https://github.com/jacquev6/PyGithub/pull/32","title":"Creation of a pull request from an issue is not covered by integration tests","patch_url":"https://github.com/jacquev6/PyGithub/pull/32.patch","closed_at":"2012-05-27T11:03:53Z","created_at":"2012-05-27T10:58:41Z","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"state":"closed","id":1436310,"merged_at":"2012-05-27T11:03:53Z"},{"head":{"ref":"master","label":"BeaverSoftware:master","repo":null,"user":null,"sha":"8a4f306d4b223682dd19410d4a9150636ebe4206"},"updated_at":"2012-05-27T10:49:27Z","issue_url":"https://github.com/jacquev6/PyGithub/issues/31","_links":{"self":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/31"},"review_comments":{"href":"https://api.github.com/repos/jacquev6/PyGithub/pulls/31/comments"},"comments":{"href":"https://api.github.com/repos/jacquev6/PyGithub/issues/31/comments"},"issue":{"href":"https://api.github.com/repos/jacquev6/PyGithub/issues/31"},"html":{"href":"https://github.com/jacquev6/PyGithub/pull/31"}},"body":"Body edited by PyGithub","diff_url":"https://github.com/jacquev6/PyGithub/pull/31.diff","url":"https://api.github.com/repos/jacquev6/PyGithub/pulls/31","base":{"ref":"topic/RewriteWithGeneratedCode","label":"jacquev6:topic/RewriteWithGeneratedCode","repo":{"clone_url":"https://github.com/jacquev6/PyGithub.git","has_downloads":true,"watchers":17,"updated_at":"2012-05-29T18:07:54Z","homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","html_url":"https://github.com/jacquev6/PyGithub","has_wiki":false,"has_issues":true,"fork":false,"git_url":"git://github.com/jacquev6/PyGithub.git","forks":3,"size":480,"private":false,"open_issues":14,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"name":"PyGithub","mirror_url":null,"language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-29T18:07:54Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"full_name":"jacquev6/PyGithub"},"user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"ed866fc43833802ab553e5ff8581c81bb00dd433"},"number":31,"html_url":"https://github.com/jacquev6/PyGithub/pull/31","title":"Title edited by PyGithub","patch_url":"https://github.com/jacquev6/PyGithub/pull/31.patch","closed_at":"2012-05-27T10:29:07Z","created_at":"2012-05-27T09:25:36Z","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"state":"closed","id":1436215,"merged_at":"2012-05-27T10:29:07Z"}] + diff --git a/lib/github/tests/ReplayData/Repository.testGetStargazers.txt b/lib/github/tests/ReplayData/Repository.testGetStargazers.txt new file mode 100644 index 0000000000..2cd90faf4f --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetStargazers.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/stargazers +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '9029'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4986'), ('server', 'nginx/1.0.13'), ('last-modified', 'Fri, 07 Sep 2012 16:45:47 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last"'), ('etag', '"66120d1b3732bc2800b35a1cdfe7eeed"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 07 Sep 2012 23:25:34 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"gravatar_id":"5341a13bb6125ce7c97cf91b35209e16","avatar_url":"https://secure.gravatar.com/avatar/5341a13bb6125ce7c97cf91b35209e16?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/Stals","login":"Stals","id":472089},{"gravatar_id":"95d39bbf832ff92e9ba1775b4b702c49","avatar_url":"https://secure.gravatar.com/avatar/95d39bbf832ff92e9ba1775b4b702c49?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/att14","login":"att14","id":780132},{"gravatar_id":"1b4be24fa7e62eb508ca448da99e43d4","avatar_url":"https://secure.gravatar.com/avatar/1b4be24fa7e62eb508ca448da99e43d4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/jardon-u","login":"jardon-u","id":994192},{"gravatar_id":"16a037e47cf9737e037169cbd1d2bed6","avatar_url":"https://secure.gravatar.com/avatar/16a037e47cf9737e037169cbd1d2bed6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/huxley","login":"huxley","id":839},{"gravatar_id":"a0153aaf274e18295e55e4e28f3580e6","avatar_url":"https://secure.gravatar.com/avatar/a0153aaf274e18295e55e4e28f3580e6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/mikofski","login":"mikofski","id":1385621},{"gravatar_id":"4dc11d87759273f3466ab4f673bcecae","avatar_url":"https://secure.gravatar.com/avatar/4dc11d87759273f3466ab4f673bcecae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/L42y","login":"L42y","id":284820},{"gravatar_id":"71de1870e298b3488d75c4cb805f4cf7","avatar_url":"https://secure.gravatar.com/avatar/71de1870e298b3488d75c4cb805f4cf7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/fanzeyi","login":"fanzeyi","id":409951},{"gravatar_id":"b2e096f2c016d8dc168a3a5e6281b07a","avatar_url":"https://secure.gravatar.com/avatar/b2e096f2c016d8dc168a3a5e6281b07a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/abersager","login":"abersager","id":1328351},{"gravatar_id":"5479425141d61976fd0875bea7dfd7e0","avatar_url":"https://secure.gravatar.com/avatar/5479425141d61976fd0875bea7dfd7e0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/waylan","login":"waylan","id":78846},{"gravatar_id":"5287a88d1c85f336fe494a694fac7635","avatar_url":"https://secure.gravatar.com/avatar/5287a88d1c85f336fe494a694fac7635?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/adericbourg","login":"adericbourg","id":615743},{"gravatar_id":"bff435ae5fc2e73d7c7c8351231e8040","avatar_url":"https://secure.gravatar.com/avatar/bff435ae5fc2e73d7c7c8351231e8040?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/tallforasmurf","login":"tallforasmurf","id":1137018},{"gravatar_id":"c6733f16eb6fc13f79c6dcfd093b347a","avatar_url":"https://secure.gravatar.com/avatar/c6733f16eb6fc13f79c6dcfd093b347a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/pvicente","login":"pvicente","id":471109},{"gravatar_id":"b58d0f1ea06b8d5de5f02c53f747ac03","avatar_url":"https://secure.gravatar.com/avatar/b58d0f1ea06b8d5de5f02c53f747ac03?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/roskakori","login":"roskakori","id":328726},{"gravatar_id":"1689abbd998128dbb3658698b429b022","avatar_url":"https://secure.gravatar.com/avatar/1689abbd998128dbb3658698b429b022?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/michaelpedersen","login":"michaelpedersen","id":22974},{"gravatar_id":"d3476956052910612c2c92966d05f9e7","avatar_url":"https://secure.gravatar.com/avatar/d3476956052910612c2c92966d05f9e7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/stefanfoulis","login":"stefanfoulis","id":14330},{"gravatar_id":"e8f8081fe45c1b793c288ecd1c1e932e","avatar_url":"https://secure.gravatar.com/avatar/e8f8081fe45c1b793c288ecd1c1e932e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/equus12","login":"equus12","id":1647505},{"gravatar_id":"0aeecc65c3e3ab73d2e171289b83d10b","avatar_url":"https://secure.gravatar.com/avatar/0aeecc65c3e3ab73d2e171289b83d10b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/JuRogn","login":"JuRogn","id":750320},{"gravatar_id":"b9d1630a90131545c699075f73da092b","avatar_url":"https://secure.gravatar.com/avatar/b9d1630a90131545c699075f73da092b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/joshmoore","login":"joshmoore","id":88113},{"gravatar_id":"1cc22835569c3fa4cfd80d1a4221ae4f","avatar_url":"https://secure.gravatar.com/avatar/1cc22835569c3fa4cfd80d1a4221ae4f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/jsilter","login":"jsilter","id":603941},{"gravatar_id":"edcf2f3ed9231baef459b49e2572d04c","avatar_url":"https://secure.gravatar.com/avatar/edcf2f3ed9231baef459b49e2572d04c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/dasapich","login":"dasapich","id":981509},{"gravatar_id":"92d26c7d74821a7ecb87a51017d394b6","avatar_url":"https://secure.gravatar.com/avatar/92d26c7d74821a7ecb87a51017d394b6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/ritratt","login":"ritratt","id":1582625},{"gravatar_id":"4a70a247b4f222894f6b9861e40f733d","avatar_url":"https://secure.gravatar.com/avatar/4a70a247b4f222894f6b9861e40f733d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/hcilab","login":"hcilab","id":1610572},{"gravatar_id":"d7773594c583cf2c9db22f403d183c5a","avatar_url":"https://secure.gravatar.com/avatar/d7773594c583cf2c9db22f403d183c5a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/vxnick","login":"vxnick","id":85934},{"gravatar_id":"3aa27c0add742f542848af3b8a9e980c","avatar_url":"https://secure.gravatar.com/avatar/3aa27c0add742f542848af3b8a9e980c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/pmuilu","login":"pmuilu","id":691799},{"gravatar_id":"85203b21c562062e5641f0b8d4b98d9b","avatar_url":"https://secure.gravatar.com/avatar/85203b21c562062e5641f0b8d4b98d9b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/herlo","login":"herlo","id":89334},{"gravatar_id":"13a30f9924fa2bd918cbb8d06dd8b55a","avatar_url":"https://secure.gravatar.com/avatar/13a30f9924fa2bd918cbb8d06dd8b55a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/malexw","login":"malexw","id":577322},{"gravatar_id":"8cbc775abf80a9ef3b09b08e264337f2","avatar_url":"https://secure.gravatar.com/avatar/8cbc775abf80a9ef3b09b08e264337f2?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/ahmetvurgun","login":"ahmetvurgun","id":575162},{"gravatar_id":"43df3d2f7dae415af6c2ed286c844f4a","avatar_url":"https://secure.gravatar.com/avatar/43df3d2f7dae415af6c2ed286c844f4a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/PengGu","login":"PengGu","id":1087851},{"gravatar_id":"1b5633ca7f3390376c779e5f716a3ed0","avatar_url":"https://secure.gravatar.com/avatar/1b5633ca7f3390376c779e5f716a3ed0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/cosmin","login":"cosmin","id":1358},{"gravatar_id":"579c3cd8915ee79e243c7040777c8301","avatar_url":"https://secure.gravatar.com/avatar/579c3cd8915ee79e243c7040777c8301?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/Swop","login":"Swop","id":545340}] + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/stargazers?page=2 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4985'), ('x-ratelimit-limit', '5000'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '9059'), ('server', 'nginx/1.0.13'), ('last-modified', 'Fri, 07 Sep 2012 22:31:54 GMT'), ('connection', 'keep-alive'), ('etag', '"0db198d8f435648beea21497631e1398"'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('cache-control', 'private, s-maxage=60, max-age=60'), ('date', 'Fri, 07 Sep 2012 23:25:35 GMT'), ('x-github-media-type', 'github.beta; format=json'), ('content-type', 'application/json; charset=utf-8')] +[{"gravatar_id":"2eccc4005572c1e2b12a9c00580bc86f","login":"kennethreitz","avatar_url":"https://secure.gravatar.com/avatar/2eccc4005572c1e2b12a9c00580bc86f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/kennethreitz","id":119893},{"gravatar_id":"1fd428161c36217f233c7548d1ca3555","login":"bryandyck","avatar_url":"https://secure.gravatar.com/avatar/1fd428161c36217f233c7548d1ca3555?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/bryandyck","id":1591021},{"gravatar_id":"c07bac2e0a5d17d43fdc808cb1f528a4","login":"jason2506","avatar_url":"https://secure.gravatar.com/avatar/c07bac2e0a5d17d43fdc808cb1f528a4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/jason2506","id":875284},{"gravatar_id":"97b6ddbf90c2a4428e668691e112d096","login":"zsiciarz","avatar_url":"https://secure.gravatar.com/avatar/97b6ddbf90c2a4428e668691e112d096?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/zsiciarz","id":182194},{"gravatar_id":"71115a34d318e34f2090abd477aa4003","login":"waawal","avatar_url":"https://secure.gravatar.com/avatar/71115a34d318e34f2090abd477aa4003?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/waawal","id":961734},{"gravatar_id":"4152c08efb407dabedef5045cf3a13ae","login":"gregorynicholas","avatar_url":"https://secure.gravatar.com/avatar/4152c08efb407dabedef5045cf3a13ae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/gregorynicholas","id":407650},{"gravatar_id":"0d830bf859a7ce5f6cb45bbee13672a3","login":"sente","avatar_url":"https://secure.gravatar.com/avatar/0d830bf859a7ce5f6cb45bbee13672a3?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/sente","id":96457},{"gravatar_id":"8b9fc27476a9d0cb0dd32dc5a0967593","login":"richmiller55","avatar_url":"https://secure.gravatar.com/avatar/8b9fc27476a9d0cb0dd32dc5a0967593?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/richmiller55","id":704482},{"gravatar_id":"433a7fa3917a38691aa9914b61444875","login":"thouis","avatar_url":"https://secure.gravatar.com/avatar/433a7fa3917a38691aa9914b61444875?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/thouis","id":473043},{"gravatar_id":"5590032593192382075692ffe5d20dce","login":"mazubieta","avatar_url":"https://secure.gravatar.com/avatar/5590032593192382075692ffe5d20dce?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/mazubieta","id":522040},{"gravatar_id":"62608ffc2aacc300c1294670add616f9","login":"michaelhood","avatar_url":"https://secure.gravatar.com/avatar/62608ffc2aacc300c1294670add616f9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/michaelhood","id":359439},{"gravatar_id":"37a932b3abe212892173784736ed6b12","login":"engie","avatar_url":"https://secure.gravatar.com/avatar/37a932b3abe212892173784736ed6b12?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/engie","id":1247},{"gravatar_id":"793789919cd04697f099e9ef1ecd6de1","login":"jtriley","avatar_url":"https://secure.gravatar.com/avatar/793789919cd04697f099e9ef1ecd6de1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/jtriley","id":46910},{"gravatar_id":"ffcbd195c843b902fcdaa9986a2a0116","login":"oangeor","avatar_url":"https://secure.gravatar.com/avatar/ffcbd195c843b902fcdaa9986a2a0116?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/oangeor","id":1707945},{"gravatar_id":"95d9145e903a668cff14194293f9d6ea","login":"coryking","avatar_url":"https://secure.gravatar.com/avatar/95d9145e903a668cff14194293f9d6ea?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/coryking","id":526250},{"gravatar_id":"6ac775a6679458663d13bcdf651112ea","login":"noddi","avatar_url":"https://secure.gravatar.com/avatar/6ac775a6679458663d13bcdf651112ea?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/noddi","id":197148},{"gravatar_id":"a62c07aeefe3d9cc2ba18861f7eeef7d","login":"alejo8591","avatar_url":"https://secure.gravatar.com/avatar/a62c07aeefe3d9cc2ba18861f7eeef7d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/alejo8591","id":1151850},{"gravatar_id":"5280f15cedf540b544eecc30fcf3027c","login":"omab","avatar_url":"https://secure.gravatar.com/avatar/5280f15cedf540b544eecc30fcf3027c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/omab","id":91022},{"gravatar_id":"4d4ea6148fef59dff9fa0fc8c309496a","login":"Carreau","avatar_url":"https://secure.gravatar.com/avatar/4d4ea6148fef59dff9fa0fc8c309496a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/Carreau","id":335567},{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/bilderbuchi","id":327442},{"gravatar_id":"a28254f42a1867eceafd3b4ddc7d5629","login":"schwa","avatar_url":"https://secure.gravatar.com/avatar/a28254f42a1867eceafd3b4ddc7d5629?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/schwa","id":20267},{"gravatar_id":"b765db0cc12b8e400caaff56c370c743","login":"rlerallut","avatar_url":"https://secure.gravatar.com/avatar/b765db0cc12b8e400caaff56c370c743?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/rlerallut","id":2106199},{"gravatar_id":"d9b44063c5b3d91195771fb663dc2e20","login":"PengHub","avatar_url":"https://secure.gravatar.com/avatar/d9b44063c5b3d91195771fb663dc2e20?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/PengHub","id":473448},{"gravatar_id":"781d78614b907aeb05ce830fe00588b8","login":"zoek1","avatar_url":"https://secure.gravatar.com/avatar/781d78614b907aeb05ce830fe00588b8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/zoek1","id":660973},{"gravatar_id":"ae8a2af3de601885a14bb71240e5d1a6","login":"xobb1t","avatar_url":"https://secure.gravatar.com/avatar/ae8a2af3de601885a14bb71240e5d1a6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/xobb1t","id":344095},{"gravatar_id":"ba6aba5790e7412dd4f6041c42a24c7e","login":"notgary","avatar_url":"https://secure.gravatar.com/avatar/ba6aba5790e7412dd4f6041c42a24c7e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/notgary","id":672656},{"gravatar_id":"abd8a1f2aa5d4899129458889b6f315b","login":"hattya","avatar_url":"https://secure.gravatar.com/avatar/abd8a1f2aa5d4899129458889b6f315b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/hattya","id":839237},{"gravatar_id":"e5bb54fb88ba91e789b2200cfc012f61","login":"ZebtinRis","avatar_url":"https://secure.gravatar.com/avatar/e5bb54fb88ba91e789b2200cfc012f61?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/ZebtinRis","id":424786},{"gravatar_id":"50a69763ef76d9b5567bf754e3d65af8","login":"aaronhall","avatar_url":"https://secure.gravatar.com/avatar/50a69763ef76d9b5567bf754e3d65af8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/aaronhall","id":264161},{"gravatar_id":"8c3c504e180e14ce1410cb384a10d759","login":"youngsterxyf","avatar_url":"https://secure.gravatar.com/avatar/8c3c504e180e14ce1410cb384a10d759?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","url":"https://api.github.com/users/youngsterxyf","id":834231}] + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/stargazers?page=3 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '2117'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4984'), ('server', 'nginx/1.0.13'), ('last-modified', 'Fri, 07 Sep 2012 21:08:59 GMT'), ('connection', 'keep-alive'), ('etag', '"4077d03f95cfbcda281ad6df9d609ff6"'), ('link', '; rel="first", ; rel="prev"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 07 Sep 2012 23:25:35 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"gravatar_id":"6e77f95c96e16c0a1a96dccc7037d3b9","avatar_url":"https://secure.gravatar.com/avatar/6e77f95c96e16c0a1a96dccc7037d3b9?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"ailling","url":"https://api.github.com/users/ailling","id":1420006},{"gravatar_id":"8707d63a44f6cc04e58a655f3df3105c","avatar_url":"https://secure.gravatar.com/avatar/8707d63a44f6cc04e58a655f3df3105c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"gregwjacobs","url":"https://api.github.com/users/gregwjacobs","id":1749292},{"gravatar_id":"ef80bc9208889fb5bc7270f59b2bffda","avatar_url":"https://secure.gravatar.com/avatar/ef80bc9208889fb5bc7270f59b2bffda?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"n0rmrx","url":"https://api.github.com/users/n0rmrx","id":2022188},{"gravatar_id":"fb3209e23e3f8c50da7ec2cd1a20531b","avatar_url":"https://secure.gravatar.com/avatar/fb3209e23e3f8c50da7ec2cd1a20531b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"awylie","url":"https://api.github.com/users/awylie","id":885330},{"gravatar_id":"0e5246dc215484496d9ba125c1142716","avatar_url":"https://secure.gravatar.com/avatar/0e5246dc215484496d9ba125c1142716?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"firstthumb","url":"https://api.github.com/users/firstthumb","id":66023},{"gravatar_id":"2c8bc92ef290c9d5ef7cfefa03302917","avatar_url":"https://secure.gravatar.com/avatar/2c8bc92ef290c9d5ef7cfefa03302917?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"joshbrand","url":"https://api.github.com/users/joshbrand","id":847243},{"gravatar_id":"3a90a2072fa32035016c5cc3c8584367","avatar_url":"https://secure.gravatar.com/avatar/3a90a2072fa32035016c5cc3c8584367?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"berndca","url":"https://api.github.com/users/berndca","id":466654}] + diff --git a/lib/github/tests/ReplayData/Repository.testGetStargazersWithDates.txt b/lib/github/tests/ReplayData/Repository.testGetStargazersWithDates.txt new file mode 100644 index 0000000000..ef6e0dd147 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetStargazersWithDates.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/users/danvk +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '1295'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '13d09b732ebe76f892093130dc088652'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"646d82e27d1cb55020ba0b6c901d15ce"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4915'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '44AE6A38:AB2B:3D4623E:561EA76C'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Wed, 07 Oct 2015 13:43:17 GMT'), ('date', 'Wed, 14 Oct 2015 19:05:17 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1444851351')] +{"login":"danvk","id":98301,"avatar_url":"https://avatars.githubusercontent.com/u/98301?v=3","gravatar_id":"","url":"https://api.github.com/users/danvk","html_url":"https://github.com/danvk","followers_url":"https://api.github.com/users/danvk/followers","following_url":"https://api.github.com/users/danvk/following{/other_user}","gists_url":"https://api.github.com/users/danvk/gists{/gist_id}","starred_url":"https://api.github.com/users/danvk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danvk/subscriptions","organizations_url":"https://api.github.com/users/danvk/orgs","repos_url":"https://api.github.com/users/danvk/repos","events_url":"https://api.github.com/users/danvk/events{/privacy}","received_events_url":"https://api.github.com/users/danvk/received_events","type":"User","site_admin":false,"name":"Dan Vanderkam","company":null,"blog":"http://danvk.org","location":"New York, NY","email":"danvdk@gmail.com","hireable":null,"bio":null,"public_repos":69,"public_gists":76,"followers":103,"following":3,"created_at":"2009-06-23T20:44:04Z","updated_at":"2015-10-07T13:43:17Z","private_gists":0,"total_private_repos":0,"owned_private_repos":0,"disk_usage":269679,"collaborators":0,"plan":{"name":"free","space":976562499,"collaborators":0,"private_repos":0}} + +https +GET +api.github.com +None +/repos/danvk/comparea +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '4432'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '065b43cd9674091fec48a221b420fbb3'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"2cc0aa4e78ef70f886d92ac338e3e22b"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4914'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '44AE6A38:AB2F:94E8736:561EA76D'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Sat, 09 May 2015 19:14:45 GMT'), ('date', 'Wed, 14 Oct 2015 19:05:17 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1444851351')] +{"id":22370702,"name":"comparea","full_name":"danvk/comparea","owner":{"login":"danvk","id":98301,"avatar_url":"https://avatars.githubusercontent.com/u/98301?v=3","gravatar_id":"","url":"https://api.github.com/users/danvk","html_url":"https://github.com/danvk","followers_url":"https://api.github.com/users/danvk/followers","following_url":"https://api.github.com/users/danvk/following{/other_user}","gists_url":"https://api.github.com/users/danvk/gists{/gist_id}","starred_url":"https://api.github.com/users/danvk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danvk/subscriptions","organizations_url":"https://api.github.com/users/danvk/orgs","repos_url":"https://api.github.com/users/danvk/repos","events_url":"https://api.github.com/users/danvk/events{/privacy}","received_events_url":"https://api.github.com/users/danvk/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/danvk/comparea","description":"Compare geographic features","fork":false,"url":"https://api.github.com/repos/danvk/comparea","forks_url":"https://api.github.com/repos/danvk/comparea/forks","keys_url":"https://api.github.com/repos/danvk/comparea/keys{/key_id}","collaborators_url":"https://api.github.com/repos/danvk/comparea/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/danvk/comparea/teams","hooks_url":"https://api.github.com/repos/danvk/comparea/hooks","issue_events_url":"https://api.github.com/repos/danvk/comparea/issues/events{/number}","events_url":"https://api.github.com/repos/danvk/comparea/events","assignees_url":"https://api.github.com/repos/danvk/comparea/assignees{/user}","branches_url":"https://api.github.com/repos/danvk/comparea/branches{/branch}","tags_url":"https://api.github.com/repos/danvk/comparea/tags","blobs_url":"https://api.github.com/repos/danvk/comparea/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/danvk/comparea/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/danvk/comparea/git/refs{/sha}","trees_url":"https://api.github.com/repos/danvk/comparea/git/trees{/sha}","statuses_url":"https://api.github.com/repos/danvk/comparea/statuses/{sha}","languages_url":"https://api.github.com/repos/danvk/comparea/languages","stargazers_url":"https://api.github.com/repos/danvk/comparea/stargazers","contributors_url":"https://api.github.com/repos/danvk/comparea/contributors","subscribers_url":"https://api.github.com/repos/danvk/comparea/subscribers","subscription_url":"https://api.github.com/repos/danvk/comparea/subscription","commits_url":"https://api.github.com/repos/danvk/comparea/commits{/sha}","git_commits_url":"https://api.github.com/repos/danvk/comparea/git/commits{/sha}","comments_url":"https://api.github.com/repos/danvk/comparea/comments{/number}","issue_comment_url":"https://api.github.com/repos/danvk/comparea/issues/comments{/number}","contents_url":"https://api.github.com/repos/danvk/comparea/contents/{+path}","compare_url":"https://api.github.com/repos/danvk/comparea/compare/{base}...{head}","merges_url":"https://api.github.com/repos/danvk/comparea/merges","archive_url":"https://api.github.com/repos/danvk/comparea/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/danvk/comparea/downloads","issues_url":"https://api.github.com/repos/danvk/comparea/issues{/number}","pulls_url":"https://api.github.com/repos/danvk/comparea/pulls{/number}","milestones_url":"https://api.github.com/repos/danvk/comparea/milestones{/number}","notifications_url":"https://api.github.com/repos/danvk/comparea/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/danvk/comparea/labels{/name}","releases_url":"https://api.github.com/repos/danvk/comparea/releases{/id}","created_at":"2014-07-29T07:02:43Z","updated_at":"2015-05-09T19:14:45Z","pushed_at":"2015-04-19T00:30:46Z","git_url":"git://github.com/danvk/comparea.git","ssh_url":"git@github.com:danvk/comparea.git","clone_url":"https://github.com/danvk/comparea.git","svn_url":"https://github.com/danvk/comparea","homepage":null,"size":24675,"stargazers_count":6,"watchers_count":6,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":3,"mirror_url":null,"open_issues_count":23,"forks":3,"open_issues":23,"watchers":6,"default_branch":"master","permissions":{"admin":true,"push":true,"pull":true},"network_count":3,"subscribers_count":1} + +https +GET +api.github.com +None +/repos/danvk/comparea/stargazers +{'Authorization': 'Basic login_and_password_removed', 'Accept': 'application/vnd.github.v3.star+json', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '5547'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '2c18a09f3ac5e4dd1e004af7c5a94769'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"83247ceb0b43ff0c9c1d97c5cc427ceb"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4913'), ('x-github-media-type', 'github.v3; param=star; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '44AE6A38:AB2F:94E8764:561EA76D'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 14 Oct 2015 19:05:17 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1444851351')] +[{"starred_at":"2014-08-13T19:22:05Z","user":{"login":"sAlexander","id":20961,"avatar_url":"https://avatars.githubusercontent.com/u/20961?v=3","gravatar_id":"","url":"https://api.github.com/users/sAlexander","html_url":"https://github.com/sAlexander","followers_url":"https://api.github.com/users/sAlexander/followers","following_url":"https://api.github.com/users/sAlexander/following{/other_user}","gists_url":"https://api.github.com/users/sAlexander/gists{/gist_id}","starred_url":"https://api.github.com/users/sAlexander/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sAlexander/subscriptions","organizations_url":"https://api.github.com/users/sAlexander/orgs","repos_url":"https://api.github.com/users/sAlexander/repos","events_url":"https://api.github.com/users/sAlexander/events{/privacy}","received_events_url":"https://api.github.com/users/sAlexander/received_events","type":"User","site_admin":false}},{"starred_at":"2014-10-15T05:02:30Z","user":{"login":"ThomasG77","id":642120,"avatar_url":"https://avatars.githubusercontent.com/u/642120?v=3","gravatar_id":"","url":"https://api.github.com/users/ThomasG77","html_url":"https://github.com/ThomasG77","followers_url":"https://api.github.com/users/ThomasG77/followers","following_url":"https://api.github.com/users/ThomasG77/following{/other_user}","gists_url":"https://api.github.com/users/ThomasG77/gists{/gist_id}","starred_url":"https://api.github.com/users/ThomasG77/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ThomasG77/subscriptions","organizations_url":"https://api.github.com/users/ThomasG77/orgs","repos_url":"https://api.github.com/users/ThomasG77/repos","events_url":"https://api.github.com/users/ThomasG77/events{/privacy}","received_events_url":"https://api.github.com/users/ThomasG77/received_events","type":"User","site_admin":false}},{"starred_at":"2015-04-14T15:22:40Z","user":{"login":"therusek","id":4291399,"avatar_url":"https://avatars.githubusercontent.com/u/4291399?v=3","gravatar_id":"","url":"https://api.github.com/users/therusek","html_url":"https://github.com/therusek","followers_url":"https://api.github.com/users/therusek/followers","following_url":"https://api.github.com/users/therusek/following{/other_user}","gists_url":"https://api.github.com/users/therusek/gists{/gist_id}","starred_url":"https://api.github.com/users/therusek/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/therusek/subscriptions","organizations_url":"https://api.github.com/users/therusek/orgs","repos_url":"https://api.github.com/users/therusek/repos","events_url":"https://api.github.com/users/therusek/events{/privacy}","received_events_url":"https://api.github.com/users/therusek/received_events","type":"User","site_admin":false}},{"starred_at":"2015-04-29T00:09:40Z","user":{"login":"athomann","id":605577,"avatar_url":"https://avatars.githubusercontent.com/u/605577?v=3","gravatar_id":"","url":"https://api.github.com/users/athomann","html_url":"https://github.com/athomann","followers_url":"https://api.github.com/users/athomann/followers","following_url":"https://api.github.com/users/athomann/following{/other_user}","gists_url":"https://api.github.com/users/athomann/gists{/gist_id}","starred_url":"https://api.github.com/users/athomann/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/athomann/subscriptions","organizations_url":"https://api.github.com/users/athomann/orgs","repos_url":"https://api.github.com/users/athomann/repos","events_url":"https://api.github.com/users/athomann/events{/privacy}","received_events_url":"https://api.github.com/users/athomann/received_events","type":"User","site_admin":false}},{"starred_at":"2015-04-29T14:26:46Z","user":{"login":"jcapron","id":2346847,"avatar_url":"https://avatars.githubusercontent.com/u/2346847?v=3","gravatar_id":"","url":"https://api.github.com/users/jcapron","html_url":"https://github.com/jcapron","followers_url":"https://api.github.com/users/jcapron/followers","following_url":"https://api.github.com/users/jcapron/following{/other_user}","gists_url":"https://api.github.com/users/jcapron/gists{/gist_id}","starred_url":"https://api.github.com/users/jcapron/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jcapron/subscriptions","organizations_url":"https://api.github.com/users/jcapron/orgs","repos_url":"https://api.github.com/users/jcapron/repos","events_url":"https://api.github.com/users/jcapron/events{/privacy}","received_events_url":"https://api.github.com/users/jcapron/received_events","type":"User","site_admin":false}},{"starred_at":"2015-05-09T19:14:45Z","user":{"login":"JoePython1","id":307737,"avatar_url":"https://avatars.githubusercontent.com/u/307737?v=3","gravatar_id":"","url":"https://api.github.com/users/JoePython1","html_url":"https://github.com/JoePython1","followers_url":"https://api.github.com/users/JoePython1/followers","following_url":"https://api.github.com/users/JoePython1/following{/other_user}","gists_url":"https://api.github.com/users/JoePython1/gists{/gist_id}","starred_url":"https://api.github.com/users/JoePython1/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/JoePython1/subscriptions","organizations_url":"https://api.github.com/users/JoePython1/orgs","repos_url":"https://api.github.com/users/JoePython1/repos","events_url":"https://api.github.com/users/JoePython1/events{/privacy}","received_events_url":"https://api.github.com/users/JoePython1/received_events","type":"User","site_admin":false}}] + diff --git a/lib/github/tests/ReplayData/Repository.testGetSubscribers.txt b/lib/github/tests/ReplayData/Repository.testGetSubscribers.txt new file mode 100644 index 0000000000..958a47c7cc --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetSubscribers.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/subscribers +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '3327'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4956'), ('server', 'nginx/1.0.13'), ('last-modified', 'Fri, 07 Sep 2012 12:01:21 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"ab16ed4c5e852882d2d1a3887c3cb606"'), ('cache-control', 'private, s-maxage=60, max-age=60'), ('date', 'Fri, 07 Sep 2012 23:46:43 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"jacquev6","url":"https://api.github.com/users/jacquev6","id":327146},{"gravatar_id":"e8f8081fe45c1b793c288ecd1c1e932e","avatar_url":"https://secure.gravatar.com/avatar/e8f8081fe45c1b793c288ecd1c1e932e?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"equus12","url":"https://api.github.com/users/equus12","id":1647505},{"gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"bilderbuchi","url":"https://api.github.com/users/bilderbuchi","id":327442},{"gravatar_id":"4a70a247b4f222894f6b9861e40f733d","avatar_url":"https://secure.gravatar.com/avatar/4a70a247b4f222894f6b9861e40f733d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"hcilab","url":"https://api.github.com/users/hcilab","id":1610572},{"gravatar_id":"abd8a1f2aa5d4899129458889b6f315b","avatar_url":"https://secure.gravatar.com/avatar/abd8a1f2aa5d4899129458889b6f315b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"hattya","url":"https://api.github.com/users/hattya","id":839237},{"gravatar_id":"0e5246dc215484496d9ba125c1142716","avatar_url":"https://secure.gravatar.com/avatar/0e5246dc215484496d9ba125c1142716?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"firstthumb","url":"https://api.github.com/users/firstthumb","id":66023},{"gravatar_id":"8707d63a44f6cc04e58a655f3df3105c","avatar_url":"https://secure.gravatar.com/avatar/8707d63a44f6cc04e58a655f3df3105c?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"gregwjacobs","url":"https://api.github.com/users/gregwjacobs","id":1749292},{"gravatar_id":"bb0e7d8e63591b6b908a5a21b3e75878","avatar_url":"https://secure.gravatar.com/avatar/bb0e7d8e63591b6b908a5a21b3e75878?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"sagarsane","url":"https://api.github.com/users/sagarsane","id":667114},{"gravatar_id":"bf75ed46f2034fe6cc1075ce888084d8","avatar_url":"https://secure.gravatar.com/avatar/bf75ed46f2034fe6cc1075ce888084d8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"liang456","url":"https://api.github.com/users/liang456","id":1673318},{"gravatar_id":"3a90a2072fa32035016c5cc3c8584367","avatar_url":"https://secure.gravatar.com/avatar/3a90a2072fa32035016c5cc3c8584367?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"berndca","url":"https://api.github.com/users/berndca","id":466654},{"gravatar_id":"1517ed584458ccf83e03f5d77d9699d7","avatar_url":"https://secure.gravatar.com/avatar/1517ed584458ccf83e03f5d77d9699d7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","login":"Lyloa","url":"https://api.github.com/users/Lyloa","id":1131432}] + diff --git a/lib/github/tests/ReplayData/Repository.testGetTeams.txt b/lib/github/tests/ReplayData/Repository.testGetTeams.txt new file mode 100644 index 0000000000..dbd5e12576 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetTeams.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/orgs/BeaverSoftware +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4915'), ('content-length', '714'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"125496cfc78c073ab8bf69c9bc5129d9"'), ('date', 'Sun, 27 May 2012 07:15:54 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"public_repos":1,"type":"Organization","disk_usage":0,"blog":null,"url":"https://api.github.com/orgs/BeaverSoftware","plan":{"private_repos":0,"name":"free","space":307200},"avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","total_private_repos":0,"public_gists":0,"company":null,"login":"BeaverSoftware","owned_private_repos":0,"private_gists":0,"collaborators":0,"email":null,"followers":0,"name":null,"created_at":"2012-02-09T19:20:12Z","location":"Paris, France","id":1424031,"billing_email":"BeaverSoftware@vincent-jacques.net","following":0,"html_url":"https://github.com/BeaverSoftware"} + +https +GET +api.github.com +None +/repos/BeaverSoftware/FatherBeaver +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4914'), ('content-length', '1431'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"539a11d46b5bb0db8383306bad48fd1c"'), ('date', 'Sun, 27 May 2012 07:15:55 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"organization":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031},"clone_url":"https://github.com/BeaverSoftware/FatherBeaver.git","git_url":"git://github.com/BeaverSoftware/FatherBeaver.git","has_downloads":true,"watchers":2,"updated_at":"2012-02-16T21:51:15Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/BeaverSoftware/FatherBeaver","has_wiki":true,"has_issues":true,"fork":false,"forks":1,"mirror_url":null,"size":0,"private":false,"open_issues":0,"svn_url":"https://github.com/BeaverSoftware/FatherBeaver","owner":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031},"name":"FatherBeaver","language":null,"description":"","ssh_url":"git@github.com:BeaverSoftware/FatherBeaver.git","pushed_at":null,"created_at":"2012-02-09T19:32:21Z","id":3400397,"html_url":"https://github.com/BeaverSoftware/FatherBeaver","full_name":"BeaverSoftware/FatherBeaver"} + +https +GET +api.github.com +None +/repos/BeaverSoftware/FatherBeaver/teams +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4913'), ('content-length', '76'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"7da40fa4ce70d77b7cddef012cf24607"'), ('date', 'Sun, 27 May 2012 07:15:56 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/teams/141496","name":"Members","id":141496}] + diff --git a/lib/github/tests/ReplayData/Repository.testGetWatchers.txt b/lib/github/tests/ReplayData/Repository.testGetWatchers.txt new file mode 100644 index 0000000000..1af6585f85 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testGetWatchers.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/watchers +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4910'), ('content-length', '4422'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"8e8c7e43110b3cb76b2e52cec4202ced"'), ('date', 'Sun, 27 May 2012 07:17:10 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/users/Stals","avatar_url":"https://secure.gravatar.com/avatar/5341a13bb6125ce7c97cf91b35209e16?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5341a13bb6125ce7c97cf91b35209e16","login":"Stals","id":472089},{"url":"https://api.github.com/users/att14","avatar_url":"https://secure.gravatar.com/avatar/96e24bccec8300005c74a0d9cd096149?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"96e24bccec8300005c74a0d9cd096149","login":"att14","id":780132},{"url":"https://api.github.com/users/jardon-u","avatar_url":"https://secure.gravatar.com/avatar/1b4be24fa7e62eb508ca448da99e43d4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"1b4be24fa7e62eb508ca448da99e43d4","login":"jardon-u","id":994192},{"url":"https://api.github.com/users/huxley","avatar_url":"https://secure.gravatar.com/avatar/16a037e47cf9737e037169cbd1d2bed6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"16a037e47cf9737e037169cbd1d2bed6","login":"huxley","id":839},{"url":"https://api.github.com/users/mikofski","avatar_url":"https://secure.gravatar.com/avatar/98aa463dd3f869c195efc372c8d42c86?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"98aa463dd3f869c195efc372c8d42c86","login":"mikofski","id":1385621},{"url":"https://api.github.com/users/L42y","avatar_url":"https://secure.gravatar.com/avatar/4dc11d87759273f3466ab4f673bcecae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"4dc11d87759273f3466ab4f673bcecae","login":"L42y","id":284820},{"url":"https://api.github.com/users/fanzeyi","avatar_url":"https://secure.gravatar.com/avatar/71de1870e298b3488d75c4cb805f4cf7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"71de1870e298b3488d75c4cb805f4cf7","login":"fanzeyi","id":409951},{"url":"https://api.github.com/users/abersager","avatar_url":"https://secure.gravatar.com/avatar/b2e096f2c016d8dc168a3a5e6281b07a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b2e096f2c016d8dc168a3a5e6281b07a","login":"abersager","id":1328351},{"url":"https://api.github.com/users/waylan","avatar_url":"https://secure.gravatar.com/avatar/5479425141d61976fd0875bea7dfd7e0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5479425141d61976fd0875bea7dfd7e0","login":"waylan","id":78846},{"url":"https://api.github.com/users/adericbourg","avatar_url":"https://secure.gravatar.com/avatar/5287a88d1c85f336fe494a694fac7635?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5287a88d1c85f336fe494a694fac7635","login":"adericbourg","id":615743},{"url":"https://api.github.com/users/tallforasmurf","avatar_url":"https://secure.gravatar.com/avatar/61104afbd871dab22a702e7c1233d573?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"61104afbd871dab22a702e7c1233d573","login":"tallforasmurf","id":1137018},{"url":"https://api.github.com/users/pvicente","avatar_url":"https://secure.gravatar.com/avatar/c6733f16eb6fc13f79c6dcfd093b347a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c6733f16eb6fc13f79c6dcfd093b347a","login":"pvicente","id":471109},{"url":"https://api.github.com/users/roskakori","avatar_url":"https://secure.gravatar.com/avatar/b58d0f1ea06b8d5de5f02c53f747ac03?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b58d0f1ea06b8d5de5f02c53f747ac03","login":"roskakori","id":328726},{"url":"https://api.github.com/users/michaelpedersen","avatar_url":"https://secure.gravatar.com/avatar/1689abbd998128dbb3658698b429b022?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"1689abbd998128dbb3658698b429b022","login":"michaelpedersen","id":22974},{"url":"https://api.github.com/orgs/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"BeaverSoftware","id":1424031}] + diff --git a/lib/github/tests/ReplayData/Repository.testLegacySearchIssues.txt b/lib/github/tests/ReplayData/Repository.testLegacySearchIssues.txt new file mode 100644 index 0000000000..47c549def6 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testLegacySearchIssues.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/legacy/issues/search/jacquev6/PyGithub/open/search +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '875'), ('x-ratelimit-remaining', '4990'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"1178425a2730e43d21323c7e130c863c"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Fri, 29 Jun 2012 11:38:23 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"issues":[{"number":49,"gravatar_id":"9be6ba907be1740213b69422fdf52b57","updated_at":"2012-06-28T14:13:25-07:00","user":"kukuts","votes":0,"html_url":"https://github.com/jacquev6/PyGithub/issues/49","position":1.0,"comments":4,"title":"Support new Search API","labels":["Functionalities","RequestedByUser"],"created_at":"2012-06-21T05:27:38-07:00","state":"open","body":"New API ported from v2 but i have trouble with adopting ask's library for v2 API to support v3 style for searching. \nhttp://developer.github.com/v3/search/\n\nIts not described in the page about parameters that search for repos API supports.\nThey are same as in v2 API, you can look them in ask's library.\nIn v2 was like that https://github.com/api/v2/json/repos/search/testing?start_page=2&language=Python\nIn v3 is https://api.github.com/legacy/repos/search/testing?start_page=2&language=Python"}]} + diff --git a/lib/github/tests/ReplayData/Repository.testMergeWithConflict.txt b/lib/github/tests/ReplayData/Repository.testMergeWithConflict.txt new file mode 100644 index 0000000000..78c0466f54 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testMergeWithConflict.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/merges +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"head": "branchForHead", "base": "branchForBase"} +409 +[('status', '409 Conflict'), ('content-length', '28'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-remaining', '4980'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('cache-control', ''), ('date', 'Sat, 08 Sep 2012 12:29:28 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"message":"Merge conflict"} + diff --git a/lib/github/tests/ReplayData/Repository.testMergeWithMessage.txt b/lib/github/tests/ReplayData/Repository.testMergeWithMessage.txt new file mode 100644 index 0000000000..8a8e791f0e --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testMergeWithMessage.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/merges +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"commit_message": "Commit message created by PyGithub", "head": "branchForHead", "base": "branchForBase"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4988'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('content-length', '1670'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('etag', '"f31a393604d4a8295a461319eb518495"'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/commits/231ab813ab5ccbdc102ee12e663c491794ccc32f'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Sat, 08 Sep 2012 12:21:08 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"sha":"231ab813ab5ccbdc102ee12e663c491794ccc32f","author":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","id":327146},"commit":{"message":"Commit message created by PyGithub","author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-09-08T05:21:08-07:00"},"comment_count":0,"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/231ab813ab5ccbdc102ee12e663c491794ccc32f","tree":{"sha":"97223b0c33ab29dd9aa038248dc982354f7d69a1","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/97223b0c33ab29dd9aa038248dc982354f7d69a1"},"committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-09-08T05:21:08-07:00"}},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/231ab813ab5ccbdc102ee12e663c491794ccc32f","parents":[{"sha":"3be2e82b400f3398c05b68f00a4427604e74c7c5","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/3be2e82b400f3398c05b68f00a4427604e74c7c5"},{"sha":"7a19732ca92cd80fd9da31fa590d67729d6b44df","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/7a19732ca92cd80fd9da31fa590d67729d6b44df"}],"committer":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","id":327146}} + diff --git a/lib/github/tests/ReplayData/Repository.testMergeWithNothingToDo.txt b/lib/github/tests/ReplayData/Repository.testMergeWithNothingToDo.txt new file mode 100644 index 0000000000..ab65c7e4e1 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testMergeWithNothingToDo.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/merges +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"commit_message": "Commit message created by PyGithub", "head": "branchForHead", "base": "branchForBase"} +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4985'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('cache-control', ''), ('date', 'Sat, 08 Sep 2012 12:22:53 GMT')] + + diff --git a/lib/github/tests/ReplayData/Repository.testMergeWithoutMessage.txt b/lib/github/tests/ReplayData/Repository.testMergeWithoutMessage.txt new file mode 100644 index 0000000000..13df8e4d44 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testMergeWithoutMessage.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/repos/jacquev6/PyGithub/merges +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"head": "branchForHead", "base": "branchForBase"} +201 +[('status', '201 Created'), ('x-ratelimit-remaining', '4991'), ('x-ratelimit-limit', '5000'), ('x-content-type-options', 'nosniff'), ('content-length', '1674'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('etag', '"9a4000ce96f4c4d47922c7c8896d894f"'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/commits/a01fa060858e3aced1fe4ad74798295376e76fd4'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Sat, 08 Sep 2012 12:19:40 GMT'), ('x-github-media-type', 'github.beta; format=json'), ('content-type', 'application/json; charset=utf-8')] +{"sha":"a01fa060858e3aced1fe4ad74798295376e76fd4","committer":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"author":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"parents":[{"sha":"3be2e82b400f3398c05b68f00a4427604e74c7c5","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/3be2e82b400f3398c05b68f00a4427604e74c7c5"},{"sha":"7a19732ca92cd80fd9da31fa590d67729d6b44df","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/7a19732ca92cd80fd9da31fa590d67729d6b44df"}],"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a01fa060858e3aced1fe4ad74798295376e76fd4","commit":{"committer":{"email":"vincent@vincent-jacques.net","date":"2012-09-08T05:19:40-07:00","name":"Vincent Jacques"},"author":{"email":"vincent@vincent-jacques.net","date":"2012-09-08T05:19:40-07:00","name":"Vincent Jacques"},"message":"Merge branchForHead into branchForBase","tree":{"sha":"97223b0c33ab29dd9aa038248dc982354f7d69a1","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/97223b0c33ab29dd9aa038248dc982354f7d69a1"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/a01fa060858e3aced1fe4ad74798295376e76fd4","comment_count":0}} + diff --git a/lib/github/tests/ReplayData/Repository.testProtectBranch.txt b/lib/github/tests/ReplayData/Repository.testProtectBranch.txt new file mode 100644 index 0000000000..941bbcb859 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testProtectBranch.txt @@ -0,0 +1,22 @@ +https +PATCH +api.github.com +None +/repos/jacquev6/PyGithub/branches/master +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'Accept': 'application/vnd.github.loki-preview+json', 'User-Agent': 'PyGithub/Python'} +{"protection": {"enabled": true, "required_status_checks": {"enforcement_level": "everyone", "contexts": ["test"]}}} +200 +[('content-length', '3599'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '13d09b732ebe76f892093130dc088652'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"23247e636875225f1e2d6b49e3ed8fb5"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4997'), ('x-github-media-type', 'github.loki-preview; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '417D879D:14B62:29334564:568D2D11'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 06 Jan 2016 15:04:49 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1452096288')] +{"name":"master","commit":{"sha":"a39c1e8b9ab601419277eefb4fbb586ded0af146","commit":{"author":{"name":"Jimmy Zelinskie","email":"jimmyzelinskie@gmail.com","date":"2015-12-16T06:29:19Z"},"committer":{"name":"Jimmy Zelinskie","email":"jimmyzelinskie@gmail.com","date":"2015-12-16T06:29:19Z"},"message":"Merge pull request #365 from PyGithub/nhomar-travis-button\n\nAdd travis button on README.","tree":{"sha":"33b533e02e45deccc832bc39813710764fb2a9d4","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/33b533e02e45deccc832bc39813710764fb2a9d4"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146","html_url":"https://github.com/jacquev6/PyGithub/commit/a39c1e8b9ab601419277eefb4fbb586ded0af146","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146/comments","author":{"login":"jzelinskie","id":343539,"avatar_url":"https://avatars.githubusercontent.com/u/343539?v=3","gravatar_id":"","url":"https://api.github.com/users/jzelinskie","html_url":"https://github.com/jzelinskie","followers_url":"https://api.github.com/users/jzelinskie/followers","following_url":"https://api.github.com/users/jzelinskie/following{/other_user}","gists_url":"https://api.github.com/users/jzelinskie/gists{/gist_id}","starred_url":"https://api.github.com/users/jzelinskie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jzelinskie/subscriptions","organizations_url":"https://api.github.com/users/jzelinskie/orgs","repos_url":"https://api.github.com/users/jzelinskie/repos","events_url":"https://api.github.com/users/jzelinskie/events{/privacy}","received_events_url":"https://api.github.com/users/jzelinskie/received_events","type":"User","site_admin":false},"committer":{"login":"jzelinskie","id":343539,"avatar_url":"https://avatars.githubusercontent.com/u/343539?v=3","gravatar_id":"","url":"https://api.github.com/users/jzelinskie","html_url":"https://github.com/jzelinskie","followers_url":"https://api.github.com/users/jzelinskie/followers","following_url":"https://api.github.com/users/jzelinskie/following{/other_user}","gists_url":"https://api.github.com/users/jzelinskie/gists{/gist_id}","starred_url":"https://api.github.com/users/jzelinskie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jzelinskie/subscriptions","organizations_url":"https://api.github.com/users/jzelinskie/orgs","repos_url":"https://api.github.com/users/jzelinskie/repos","events_url":"https://api.github.com/users/jzelinskie/events{/privacy}","received_events_url":"https://api.github.com/users/jzelinskie/received_events","type":"User","site_admin":false},"parents":[{"sha":"45c7f072e4732f89a9e756a27a4306f2f6dbd9c5","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/45c7f072e4732f89a9e756a27a4306f2f6dbd9c5","html_url":"https://github.com/jacquev6/PyGithub/commit/45c7f072e4732f89a9e756a27a4306f2f6dbd9c5"},{"sha":"a83649b68f1bb978c254f4cf1efcae88dc2608d7","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a83649b68f1bb978c254f4cf1efcae88dc2608d7","html_url":"https://github.com/jacquev6/PyGithub/commit/a83649b68f1bb978c254f4cf1efcae88dc2608d7"}]},"_links":{"self":"https://api.github.com/repos/jacquev6/PyGithub/branches/master","html":"https://github.com/jacquev6/PyGithub/tree/master"},"protection":{"enabled":true,"required_status_checks":{"enforcement_level":"everyone","contexts":["test"]}}} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/branches/master +{'Authorization': 'Basic login_and_password_removed', 'Accept': 'application/vnd.github.loki-preview+json', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '3599'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', 'a474937f3b2fa272558fa6dc951018ad'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"23247e636875225f1e2d6b49e3ed8fb5"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4996'), ('x-github-media-type', 'github.loki-preview; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '417D879D:14B62:293345B4:568D2D11'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 06 Jan 2016 15:04:49 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1452096288')] +{"name":"master","commit":{"sha":"a39c1e8b9ab601419277eefb4fbb586ded0af146","commit":{"author":{"name":"Jimmy Zelinskie","email":"jimmyzelinskie@gmail.com","date":"2015-12-16T06:29:19Z"},"committer":{"name":"Jimmy Zelinskie","email":"jimmyzelinskie@gmail.com","date":"2015-12-16T06:29:19Z"},"message":"Merge pull request #365 from PyGithub/nhomar-travis-button\n\nAdd travis button on README.","tree":{"sha":"33b533e02e45deccc832bc39813710764fb2a9d4","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/33b533e02e45deccc832bc39813710764fb2a9d4"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146","html_url":"https://github.com/jacquev6/PyGithub/commit/a39c1e8b9ab601419277eefb4fbb586ded0af146","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146/comments","author":{"login":"jzelinskie","id":343539,"avatar_url":"https://avatars.githubusercontent.com/u/343539?v=3","gravatar_id":"","url":"https://api.github.com/users/jzelinskie","html_url":"https://github.com/jzelinskie","followers_url":"https://api.github.com/users/jzelinskie/followers","following_url":"https://api.github.com/users/jzelinskie/following{/other_user}","gists_url":"https://api.github.com/users/jzelinskie/gists{/gist_id}","starred_url":"https://api.github.com/users/jzelinskie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jzelinskie/subscriptions","organizations_url":"https://api.github.com/users/jzelinskie/orgs","repos_url":"https://api.github.com/users/jzelinskie/repos","events_url":"https://api.github.com/users/jzelinskie/events{/privacy}","received_events_url":"https://api.github.com/users/jzelinskie/received_events","type":"User","site_admin":false},"committer":{"login":"jzelinskie","id":343539,"avatar_url":"https://avatars.githubusercontent.com/u/343539?v=3","gravatar_id":"","url":"https://api.github.com/users/jzelinskie","html_url":"https://github.com/jzelinskie","followers_url":"https://api.github.com/users/jzelinskie/followers","following_url":"https://api.github.com/users/jzelinskie/following{/other_user}","gists_url":"https://api.github.com/users/jzelinskie/gists{/gist_id}","starred_url":"https://api.github.com/users/jzelinskie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jzelinskie/subscriptions","organizations_url":"https://api.github.com/users/jzelinskie/orgs","repos_url":"https://api.github.com/users/jzelinskie/repos","events_url":"https://api.github.com/users/jzelinskie/events{/privacy}","received_events_url":"https://api.github.com/users/jzelinskie/received_events","type":"User","site_admin":false},"parents":[{"sha":"45c7f072e4732f89a9e756a27a4306f2f6dbd9c5","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/45c7f072e4732f89a9e756a27a4306f2f6dbd9c5","html_url":"https://github.com/jacquev6/PyGithub/commit/45c7f072e4732f89a9e756a27a4306f2f6dbd9c5"},{"sha":"a83649b68f1bb978c254f4cf1efcae88dc2608d7","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a83649b68f1bb978c254f4cf1efcae88dc2608d7","html_url":"https://github.com/jacquev6/PyGithub/commit/a83649b68f1bb978c254f4cf1efcae88dc2608d7"}]},"_links":{"self":"https://api.github.com/repos/jacquev6/PyGithub/branches/master","html":"https://github.com/jacquev6/PyGithub/tree/master"},"protection":{"enabled":true,"required_status_checks":{"enforcement_level":"everyone","contexts":["test"]}}} + diff --git a/lib/github/tests/ReplayData/Repository.testRaiseErrorWithBranchProtectionWithInvalidEnforcementLevel.txt b/lib/github/tests/ReplayData/Repository.testRaiseErrorWithBranchProtectionWithInvalidEnforcementLevel.txt new file mode 100644 index 0000000000..c0355659a5 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testRaiseErrorWithBranchProtectionWithInvalidEnforcementLevel.txt @@ -0,0 +1,11 @@ +https +PATCH +api.github.com +None +/repos/jacquev6/PyGithub/branches/master +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'Accept': 'application/vnd.github.loki-preview+json', 'User-Agent': 'PyGithub/Python'} +{"protection": {"enabled": true, "required_status_checks": {"enforcement_level": "", "contexts": ["test"]}}} +422 +[('status', '422 Unprocessable Entity'), ('content-length', '331'), ('x-github-media-type', 'github.loki-preview; format=json'), ('x-content-type-options', 'nosniff'), ('content-security-policy', "default-src 'none'"), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', 'AE1E5031:134EF:B336C18:568E6F16'), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('x-ratelimit-remaining', '4958'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-xss-protection', '1; mode=block'), ('access-control-allow-credentials', 'true'), ('date', 'Thu, 07 Jan 2016 13:58:47 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-frame-options', 'deny'), ('x-ratelimit-reset', '1452177625')] +{"message":"Validation Failed","errors":[{"resource":"ProtectedBranch","code":"custom","field":"required_status_checks_enforcement_level","message":"required_status_checks_enforcement_level enforcement level '%s' is not valid"}],"documentation_url":"https://developer.github.com/v3/repos/#enabling-and-disabling-branch-protection"} + diff --git a/lib/github/tests/ReplayData/Repository.testRaiseErrorWithBranchProtectionWithOutContext.txt b/lib/github/tests/ReplayData/Repository.testRaiseErrorWithBranchProtectionWithOutContext.txt new file mode 100644 index 0000000000..a78cf55628 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testRaiseErrorWithBranchProtectionWithOutContext.txt @@ -0,0 +1,11 @@ +https +PATCH +api.github.com +None +/repos/jacquev6/PyGithub/branches/master +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'Accept': 'application/vnd.github.loki-preview+json', 'User-Agent': 'PyGithub/Python'} +{"protection": {"enabled": true, "required_status_checks": {"enforcement_level": "everyone"}}} +422 +[('status', '422 Unprocessable Entity'), ('content-length', '117'), ('x-github-media-type', 'github.loki-preview; format=json'), ('x-content-type-options', 'nosniff'), ('content-security-policy', "default-src 'none'"), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', 'AE1E5031:1D259:685F04B:568E6DC2'), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('x-ratelimit-remaining', '4969'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-xss-protection', '1; mode=block'), ('access-control-allow-credentials', 'true'), ('date', 'Thu, 07 Jan 2016 13:53:06 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-frame-options', 'deny'), ('x-ratelimit-reset', '1452177625')] +{"message":"Invalid request.\n\n\"contexts\" wasn't supplied.","documentation_url":"https://developer.github.com/v3"} + diff --git a/lib/github/tests/ReplayData/Repository.testRaiseErrorWithOutBranch.txt b/lib/github/tests/ReplayData/Repository.testRaiseErrorWithOutBranch.txt new file mode 100644 index 0000000000..df5cb43f6c --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testRaiseErrorWithOutBranch.txt @@ -0,0 +1,11 @@ +https +PATCH +api.github.com +None +/repos/jacquev6/PyGithub/branches/ +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'Accept': 'application/vnd.github.loki-preview+json', 'User-Agent': 'PyGithub/Python'} +{"protection": {"enabled": true, "required_status_checks": {"enforcement_level": "everyone", "contexts": ["test"]}}} +404 +[('status', '404 Not Found'), ('content-length', '102'), ('x-github-media-type', 'github.loki-preview; format=json'), ('x-content-type-options', 'nosniff'), ('content-security-policy', "default-src 'none'"), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', 'AE1E5031:A39B:2D392574:568E6BC1'), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('x-ratelimit-remaining', '4991'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-xss-protection', '1; mode=block'), ('access-control-allow-credentials', 'true'), ('date', 'Thu, 07 Jan 2016 13:44:34 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-frame-options', 'deny'), ('x-ratelimit-reset', '1452177625')] +{"message":"Branch not found","documentation_url":"https://developer.github.com/v3/repos/#get-branch"} + diff --git a/lib/github/tests/ReplayData/Repository.testRemoveBranchProtection.txt b/lib/github/tests/ReplayData/Repository.testRemoveBranchProtection.txt new file mode 100644 index 0000000000..44f195e310 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testRemoveBranchProtection.txt @@ -0,0 +1,22 @@ +https +PATCH +api.github.com +None +/repos/jacquev6/PyGithub/branches/master +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'Accept': 'application/vnd.github.loki-preview+json', 'User-Agent': 'PyGithub/Python'} +{"protection": {"enabled": false}} +200 +[('content-length', '3589'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', 'a7f8a126c9ed3f1c4715a34c0ddc7290'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"62bfcfb47e26986d4c1a6db0bcf43cb6"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4993'), ('x-github-media-type', 'github.loki-preview; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '417D879D:14B5A:E23F8D0:568D3163'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 06 Jan 2016 15:23:15 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1452096288')] +{"name":"master","commit":{"sha":"a39c1e8b9ab601419277eefb4fbb586ded0af146","commit":{"author":{"name":"Jimmy Zelinskie","email":"jimmyzelinskie@gmail.com","date":"2015-12-16T06:29:19Z"},"committer":{"name":"Jimmy Zelinskie","email":"jimmyzelinskie@gmail.com","date":"2015-12-16T06:29:19Z"},"message":"Merge pull request #365 from PyGithub/nhomar-travis-button\n\nAdd travis button on README.","tree":{"sha":"33b533e02e45deccc832bc39813710764fb2a9d4","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/33b533e02e45deccc832bc39813710764fb2a9d4"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146","html_url":"https://github.com/jacquev6/PyGithub/commit/a39c1e8b9ab601419277eefb4fbb586ded0af146","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146/comments","author":{"login":"jzelinskie","id":343539,"avatar_url":"https://avatars.githubusercontent.com/u/343539?v=3","gravatar_id":"","url":"https://api.github.com/users/jzelinskie","html_url":"https://github.com/jzelinskie","followers_url":"https://api.github.com/users/jzelinskie/followers","following_url":"https://api.github.com/users/jzelinskie/following{/other_user}","gists_url":"https://api.github.com/users/jzelinskie/gists{/gist_id}","starred_url":"https://api.github.com/users/jzelinskie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jzelinskie/subscriptions","organizations_url":"https://api.github.com/users/jzelinskie/orgs","repos_url":"https://api.github.com/users/jzelinskie/repos","events_url":"https://api.github.com/users/jzelinskie/events{/privacy}","received_events_url":"https://api.github.com/users/jzelinskie/received_events","type":"User","site_admin":false},"committer":{"login":"jzelinskie","id":343539,"avatar_url":"https://avatars.githubusercontent.com/u/343539?v=3","gravatar_id":"","url":"https://api.github.com/users/jzelinskie","html_url":"https://github.com/jzelinskie","followers_url":"https://api.github.com/users/jzelinskie/followers","following_url":"https://api.github.com/users/jzelinskie/following{/other_user}","gists_url":"https://api.github.com/users/jzelinskie/gists{/gist_id}","starred_url":"https://api.github.com/users/jzelinskie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jzelinskie/subscriptions","organizations_url":"https://api.github.com/users/jzelinskie/orgs","repos_url":"https://api.github.com/users/jzelinskie/repos","events_url":"https://api.github.com/users/jzelinskie/events{/privacy}","received_events_url":"https://api.github.com/users/jzelinskie/received_events","type":"User","site_admin":false},"parents":[{"sha":"45c7f072e4732f89a9e756a27a4306f2f6dbd9c5","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/45c7f072e4732f89a9e756a27a4306f2f6dbd9c5","html_url":"https://github.com/jacquev6/PyGithub/commit/45c7f072e4732f89a9e756a27a4306f2f6dbd9c5"},{"sha":"a83649b68f1bb978c254f4cf1efcae88dc2608d7","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a83649b68f1bb978c254f4cf1efcae88dc2608d7","html_url":"https://github.com/jacquev6/PyGithub/commit/a83649b68f1bb978c254f4cf1efcae88dc2608d7"}]},"_links":{"self":"https://api.github.com/repos/jacquev6/PyGithub/branches/master","html":"https://github.com/jacquev6/PyGithub/tree/master"},"protection":{"enabled":false,"required_status_checks":{"enforcement_level":"off","contexts":[]}}} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/branches/master +{'Authorization': 'Basic login_and_password_removed', 'Accept': 'application/vnd.github.loki-preview+json', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '3589'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', 'c6c65e5196703428e7641f7d1e9bc353'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"62bfcfb47e26986d4c1a6db0bcf43cb6"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4992'), ('x-github-media-type', 'github.loki-preview; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '417D879D:14B61:22B7F0CB:568D3164'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Wed, 06 Jan 2016 15:23:16 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1452096288')] +{"name":"master","commit":{"sha":"a39c1e8b9ab601419277eefb4fbb586ded0af146","commit":{"author":{"name":"Jimmy Zelinskie","email":"jimmyzelinskie@gmail.com","date":"2015-12-16T06:29:19Z"},"committer":{"name":"Jimmy Zelinskie","email":"jimmyzelinskie@gmail.com","date":"2015-12-16T06:29:19Z"},"message":"Merge pull request #365 from PyGithub/nhomar-travis-button\n\nAdd travis button on README.","tree":{"sha":"33b533e02e45deccc832bc39813710764fb2a9d4","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/33b533e02e45deccc832bc39813710764fb2a9d4"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146","comment_count":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146","html_url":"https://github.com/jacquev6/PyGithub/commit/a39c1e8b9ab601419277eefb4fbb586ded0af146","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a39c1e8b9ab601419277eefb4fbb586ded0af146/comments","author":{"login":"jzelinskie","id":343539,"avatar_url":"https://avatars.githubusercontent.com/u/343539?v=3","gravatar_id":"","url":"https://api.github.com/users/jzelinskie","html_url":"https://github.com/jzelinskie","followers_url":"https://api.github.com/users/jzelinskie/followers","following_url":"https://api.github.com/users/jzelinskie/following{/other_user}","gists_url":"https://api.github.com/users/jzelinskie/gists{/gist_id}","starred_url":"https://api.github.com/users/jzelinskie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jzelinskie/subscriptions","organizations_url":"https://api.github.com/users/jzelinskie/orgs","repos_url":"https://api.github.com/users/jzelinskie/repos","events_url":"https://api.github.com/users/jzelinskie/events{/privacy}","received_events_url":"https://api.github.com/users/jzelinskie/received_events","type":"User","site_admin":false},"committer":{"login":"jzelinskie","id":343539,"avatar_url":"https://avatars.githubusercontent.com/u/343539?v=3","gravatar_id":"","url":"https://api.github.com/users/jzelinskie","html_url":"https://github.com/jzelinskie","followers_url":"https://api.github.com/users/jzelinskie/followers","following_url":"https://api.github.com/users/jzelinskie/following{/other_user}","gists_url":"https://api.github.com/users/jzelinskie/gists{/gist_id}","starred_url":"https://api.github.com/users/jzelinskie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jzelinskie/subscriptions","organizations_url":"https://api.github.com/users/jzelinskie/orgs","repos_url":"https://api.github.com/users/jzelinskie/repos","events_url":"https://api.github.com/users/jzelinskie/events{/privacy}","received_events_url":"https://api.github.com/users/jzelinskie/received_events","type":"User","site_admin":false},"parents":[{"sha":"45c7f072e4732f89a9e756a27a4306f2f6dbd9c5","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/45c7f072e4732f89a9e756a27a4306f2f6dbd9c5","html_url":"https://github.com/jacquev6/PyGithub/commit/45c7f072e4732f89a9e756a27a4306f2f6dbd9c5"},{"sha":"a83649b68f1bb978c254f4cf1efcae88dc2608d7","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a83649b68f1bb978c254f4cf1efcae88dc2608d7","html_url":"https://github.com/jacquev6/PyGithub/commit/a83649b68f1bb978c254f4cf1efcae88dc2608d7"}]},"_links":{"self":"https://api.github.com/repos/jacquev6/PyGithub/branches/master","html":"https://github.com/jacquev6/PyGithub/tree/master"},"protection":{"enabled":false,"required_status_checks":{"enforcement_level":"off","contexts":[]}}} + diff --git a/lib/github/tests/ReplayData/Repository.testSearchIssues.txt b/lib/github/tests/ReplayData/Repository.testSearchIssues.txt new file mode 100644 index 0000000000..41dc08179c --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testSearchIssues.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/legacy/issues/search/jacquev6/PyGithub/open/search +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '875'), ('x-ratelimit-limit', '5000'), ('x-ratelimit-remaining', '4985'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('etag', '"2e397de657b33283e77ef12a21326d0d"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Thu, 28 Jun 2012 20:39:57 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"issues":[{"title":"Support new Search API","number":49,"user":"kukuts","html_url":"https://github.com/jacquev6/PyGithub/issues/49","labels":["Functionalities","RequestedByUser"],"body":"New API ported from v2 but i have trouble with adopting ask's library for v2 API to support v3 style for searching. \nhttp://developer.github.com/v3/search/\n\nIts not described in the page about parameters that search for repos API supports.\nThey are same as in v2 API, you can look them in ask's library.\nIn v2 was like that https://github.com/api/v2/json/repos/search/testing?start_page=2&language=Python\nIn v3 is https://api.github.com/legacy/repos/search/testing?start_page=2&language=Python","votes":0,"comments":2,"updated_at":"2012-06-25T12:31:14-07:00","gravatar_id":"9be6ba907be1740213b69422fdf52b57","position":1.0,"state":"open","created_at":"2012-06-21T05:27:38-07:00"}]} + diff --git a/lib/github/tests/ReplayData/Repository.testStatisticsAfterCaching.txt b/lib/github/tests/ReplayData/Repository.testStatisticsAfterCaching.txt new file mode 100644 index 0000000000..9e1bfc1562 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testStatisticsAfterCaching.txt @@ -0,0 +1,55 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/stats/contributors +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4979'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '4C79374B:7845:1014960:52803016'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '89241'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('etag', '"e4c996128dd311baec35460e4ddf05a5"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 11 Nov 2013 01:17:10 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1384134844')] +[{"total":1,"weeks":[{"w":1329004800,"a":0,"d":0,"c":0},{"w":1329609600,"a":0,"d":0,"c":0},{"w":1330214400,"a":0,"d":0,"c":0},{"w":1330819200,"a":0,"d":0,"c":0},{"w":1331424000,"a":0,"d":0,"c":0},{"w":1332028800,"a":0,"d":0,"c":0},{"w":1332633600,"a":0,"d":0,"c":0},{"w":1333238400,"a":0,"d":0,"c":0},{"w":1333843200,"a":0,"d":0,"c":0},{"w":1334448000,"a":0,"d":0,"c":0},{"w":1335052800,"a":0,"d":0,"c":0},{"w":1335657600,"a":0,"d":0,"c":0},{"w":1336262400,"a":0,"d":0,"c":0},{"w":1336867200,"a":0,"d":0,"c":0},{"w":1337472000,"a":0,"d":0,"c":0},{"w":1338076800,"a":0,"d":0,"c":0},{"w":1338681600,"a":0,"d":0,"c":0},{"w":1339286400,"a":0,"d":0,"c":0},{"w":1339891200,"a":0,"d":0,"c":0},{"w":1340496000,"a":2,"d":2,"c":1},{"w":1341100800,"a":0,"d":0,"c":0},{"w":1341705600,"a":0,"d":0,"c":0},{"w":1342310400,"a":0,"d":0,"c":0},{"w":1342915200,"a":0,"d":0,"c":0},{"w":1343520000,"a":0,"d":0,"c":0},{"w":1344124800,"a":0,"d":0,"c":0},{"w":1344729600,"a":0,"d":0,"c":0},{"w":1345334400,"a":0,"d":0,"c":0},{"w":1345939200,"a":0,"d":0,"c":0},{"w":1346544000,"a":0,"d":0,"c":0},{"w":1347148800,"a":0,"d":0,"c":0},{"w":1347753600,"a":0,"d":0,"c":0},{"w":1348358400,"a":0,"d":0,"c":0},{"w":1348963200,"a":0,"d":0,"c":0},{"w":1349568000,"a":0,"d":0,"c":0},{"w":1350172800,"a":0,"d":0,"c":0},{"w":1350777600,"a":0,"d":0,"c":0},{"w":1351382400,"a":0,"d":0,"c":0},{"w":1351987200,"a":0,"d":0,"c":0},{"w":1352592000,"a":0,"d":0,"c":0},{"w":1353196800,"a":0,"d":0,"c":0},{"w":1353801600,"a":0,"d":0,"c":0},{"w":1354406400,"a":0,"d":0,"c":0},{"w":1355011200,"a":0,"d":0,"c":0},{"w":1355616000,"a":0,"d":0,"c":0},{"w":1356220800,"a":0,"d":0,"c":0},{"w":1356825600,"a":0,"d":0,"c":0},{"w":1357430400,"a":0,"d":0,"c":0},{"w":1358035200,"a":0,"d":0,"c":0},{"w":1358640000,"a":0,"d":0,"c":0},{"w":1359244800,"a":0,"d":0,"c":0},{"w":1359849600,"a":0,"d":0,"c":0},{"w":1360454400,"a":0,"d":0,"c":0},{"w":1361059200,"a":0,"d":0,"c":0},{"w":1361664000,"a":0,"d":0,"c":0},{"w":1362268800,"a":0,"d":0,"c":0},{"w":1362873600,"a":0,"d":0,"c":0},{"w":1363478400,"a":0,"d":0,"c":0},{"w":1364083200,"a":0,"d":0,"c":0},{"w":1364688000,"a":0,"d":0,"c":0},{"w":1365292800,"a":0,"d":0,"c":0},{"w":1365897600,"a":0,"d":0,"c":0},{"w":1366502400,"a":0,"d":0,"c":0},{"w":1367107200,"a":0,"d":0,"c":0},{"w":1367712000,"a":0,"d":0,"c":0},{"w":1368316800,"a":0,"d":0,"c":0},{"w":1368921600,"a":0,"d":0,"c":0},{"w":1369526400,"a":0,"d":0,"c":0},{"w":1370131200,"a":0,"d":0,"c":0},{"w":1370736000,"a":0,"d":0,"c":0},{"w":1371340800,"a":0,"d":0,"c":0},{"w":1371945600,"a":0,"d":0,"c":0},{"w":1372550400,"a":0,"d":0,"c":0},{"w":1373155200,"a":0,"d":0,"c":0},{"w":1373760000,"a":0,"d":0,"c":0},{"w":1374364800,"a":0,"d":0,"c":0},{"w":1374969600,"a":0,"d":0,"c":0},{"w":1375574400,"a":0,"d":0,"c":0},{"w":1376179200,"a":0,"d":0,"c":0},{"w":1376784000,"a":0,"d":0,"c":0},{"w":1377388800,"a":0,"d":0,"c":0},{"w":1377993600,"a":0,"d":0,"c":0},{"w":1378598400,"a":0,"d":0,"c":0},{"w":1379203200,"a":0,"d":0,"c":0},{"w":1379808000,"a":0,"d":0,"c":0},{"w":1380412800,"a":0,"d":0,"c":0},{"w":1381017600,"a":0,"d":0,"c":0},{"w":1381622400,"a":0,"d":0,"c":0},{"w":1382227200,"a":0,"d":0,"c":0},{"w":1382832000,"a":0,"d":0,"c":0},{"w":1383436800,"a":0,"d":0,"c":0},{"w":1384041600,"a":0,"d":0,"c":0}],"author":{"login":"philipkimmey","id":211079,"avatar_url":"https://2.gravatar.com/avatar/decc9323f241b6dd24ec35ef7cabaf75?d=https%3A%2F%2Fidenticons.github.com%2F541c8e7a95ee7b9fbdb676dbdf20c7da.png&r=x","gravatar_id":"decc9323f241b6dd24ec35ef7cabaf75","url":"https://api.github.com/users/philipkimmey","html_url":"https://github.com/philipkimmey","followers_url":"https://api.github.com/users/philipkimmey/followers","following_url":"https://api.github.com/users/philipkimmey/following{/other_user}","gists_url":"https://api.github.com/users/philipkimmey/gists{/gist_id}","starred_url":"https://api.github.com/users/philipkimmey/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/philipkimmey/subscriptions","organizations_url":"https://api.github.com/users/philipkimmey/orgs","repos_url":"https://api.github.com/users/philipkimmey/repos","events_url":"https://api.github.com/users/philipkimmey/events{/privacy}","received_events_url":"https://api.github.com/users/philipkimmey/received_events","type":"User","site_admin":false}},{"total":1,"weeks":[{"w":1329004800,"a":0,"d":0,"c":0},{"w":1329609600,"a":0,"d":0,"c":0},{"w":1330214400,"a":0,"d":0,"c":0},{"w":1330819200,"a":0,"d":0,"c":0},{"w":1331424000,"a":0,"d":0,"c":0},{"w":1332028800,"a":0,"d":0,"c":0},{"w":1332633600,"a":0,"d":0,"c":0},{"w":1333238400,"a":0,"d":0,"c":0},{"w":1333843200,"a":0,"d":0,"c":0},{"w":1334448000,"a":0,"d":0,"c":0},{"w":1335052800,"a":0,"d":0,"c":0},{"w":1335657600,"a":0,"d":0,"c":0},{"w":1336262400,"a":0,"d":0,"c":0},{"w":1336867200,"a":0,"d":0,"c":0},{"w":1337472000,"a":0,"d":0,"c":0},{"w":1338076800,"a":0,"d":0,"c":0},{"w":1338681600,"a":0,"d":0,"c":0},{"w":1339286400,"a":0,"d":0,"c":0},{"w":1339891200,"a":0,"d":0,"c":0},{"w":1340496000,"a":0,"d":0,"c":0},{"w":1341100800,"a":0,"d":0,"c":0},{"w":1341705600,"a":0,"d":0,"c":0},{"w":1342310400,"a":0,"d":0,"c":0},{"w":1342915200,"a":0,"d":0,"c":0},{"w":1343520000,"a":0,"d":0,"c":0},{"w":1344124800,"a":0,"d":0,"c":0},{"w":1344729600,"a":0,"d":0,"c":0},{"w":1345334400,"a":0,"d":0,"c":0},{"w":1345939200,"a":0,"d":0,"c":0},{"w":1346544000,"a":0,"d":0,"c":0},{"w":1347148800,"a":0,"d":0,"c":0},{"w":1347753600,"a":0,"d":0,"c":0},{"w":1348358400,"a":0,"d":0,"c":0},{"w":1348963200,"a":0,"d":0,"c":0},{"w":1349568000,"a":0,"d":0,"c":0},{"w":1350172800,"a":0,"d":0,"c":0},{"w":1350777600,"a":0,"d":0,"c":0},{"w":1351382400,"a":0,"d":0,"c":0},{"w":1351987200,"a":0,"d":0,"c":0},{"w":1352592000,"a":0,"d":0,"c":0},{"w":1353196800,"a":0,"d":0,"c":0},{"w":1353801600,"a":0,"d":0,"c":0},{"w":1354406400,"a":0,"d":0,"c":0},{"w":1355011200,"a":0,"d":0,"c":0},{"w":1355616000,"a":10,"d":0,"c":1},{"w":1356220800,"a":0,"d":0,"c":0},{"w":1356825600,"a":0,"d":0,"c":0},{"w":1357430400,"a":0,"d":0,"c":0},{"w":1358035200,"a":0,"d":0,"c":0},{"w":1358640000,"a":0,"d":0,"c":0},{"w":1359244800,"a":0,"d":0,"c":0},{"w":1359849600,"a":0,"d":0,"c":0},{"w":1360454400,"a":0,"d":0,"c":0},{"w":1361059200,"a":0,"d":0,"c":0},{"w":1361664000,"a":0,"d":0,"c":0},{"w":1362268800,"a":0,"d":0,"c":0},{"w":1362873600,"a":0,"d":0,"c":0},{"w":1363478400,"a":0,"d":0,"c":0},{"w":1364083200,"a":0,"d":0,"c":0},{"w":1364688000,"a":0,"d":0,"c":0},{"w":1365292800,"a":0,"d":0,"c":0},{"w":1365897600,"a":0,"d":0,"c":0},{"w":1366502400,"a":0,"d":0,"c":0},{"w":1367107200,"a":0,"d":0,"c":0},{"w":1367712000,"a":0,"d":0,"c":0},{"w":1368316800,"a":0,"d":0,"c":0},{"w":1368921600,"a":0,"d":0,"c":0},{"w":1369526400,"a":0,"d":0,"c":0},{"w":1370131200,"a":0,"d":0,"c":0},{"w":1370736000,"a":0,"d":0,"c":0},{"w":1371340800,"a":0,"d":0,"c":0},{"w":1371945600,"a":0,"d":0,"c":0},{"w":1372550400,"a":0,"d":0,"c":0},{"w":1373155200,"a":0,"d":0,"c":0},{"w":1373760000,"a":0,"d":0,"c":0},{"w":1374364800,"a":0,"d":0,"c":0},{"w":1374969600,"a":0,"d":0,"c":0},{"w":1375574400,"a":0,"d":0,"c":0},{"w":1376179200,"a":0,"d":0,"c":0},{"w":1376784000,"a":0,"d":0,"c":0},{"w":1377388800,"a":0,"d":0,"c":0},{"w":1377993600,"a":0,"d":0,"c":0},{"w":1378598400,"a":0,"d":0,"c":0},{"w":1379203200,"a":0,"d":0,"c":0},{"w":1379808000,"a":0,"d":0,"c":0},{"w":1380412800,"a":0,"d":0,"c":0},{"w":1381017600,"a":0,"d":0,"c":0},{"w":1381622400,"a":0,"d":0,"c":0},{"w":1382227200,"a":0,"d":0,"c":0},{"w":1382832000,"a":0,"d":0,"c":0},{"w":1383436800,"a":0,"d":0,"c":0},{"w":1384041600,"a":0,"d":0,"c":0}],"author":{"login":"lwc","id":336402,"avatar_url":"https://2.gravatar.com/avatar/79df912986253edb50f9b077acd5acf9?d=https%3A%2F%2Fidenticons.github.com%2Fa054ef59f502a7fc072a1a8b88192445.png&r=x","gravatar_id":"79df912986253edb50f9b077acd5acf9","url":"https://api.github.com/users/lwc","html_url":"https://github.com/lwc","followers_url":"https://api.github.com/users/lwc/followers","following_url":"https://api.github.com/users/lwc/following{/other_user}","gists_url":"https://api.github.com/users/lwc/gists{/gist_id}","starred_url":"https://api.github.com/users/lwc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lwc/subscriptions","organizations_url":"https://api.github.com/users/lwc/orgs","repos_url":"https://api.github.com/users/lwc/repos","events_url":"https://api.github.com/users/lwc/events{/privacy}","received_events_url":"https://api.github.com/users/lwc/received_events","type":"User","site_admin":false}},{"total":1,"weeks":[{"w":1329004800,"a":0,"d":0,"c":0},{"w":1329609600,"a":0,"d":0,"c":0},{"w":1330214400,"a":0,"d":0,"c":0},{"w":1330819200,"a":0,"d":0,"c":0},{"w":1331424000,"a":0,"d":0,"c":0},{"w":1332028800,"a":0,"d":0,"c":0},{"w":1332633600,"a":0,"d":0,"c":0},{"w":1333238400,"a":0,"d":0,"c":0},{"w":1333843200,"a":0,"d":0,"c":0},{"w":1334448000,"a":0,"d":0,"c":0},{"w":1335052800,"a":0,"d":0,"c":0},{"w":1335657600,"a":0,"d":0,"c":0},{"w":1336262400,"a":0,"d":0,"c":0},{"w":1336867200,"a":0,"d":0,"c":0},{"w":1337472000,"a":0,"d":0,"c":0},{"w":1338076800,"a":0,"d":0,"c":0},{"w":1338681600,"a":0,"d":0,"c":0},{"w":1339286400,"a":0,"d":0,"c":0},{"w":1339891200,"a":0,"d":0,"c":0},{"w":1340496000,"a":0,"d":0,"c":0},{"w":1341100800,"a":0,"d":0,"c":0},{"w":1341705600,"a":0,"d":0,"c":0},{"w":1342310400,"a":0,"d":0,"c":0},{"w":1342915200,"a":0,"d":0,"c":0},{"w":1343520000,"a":0,"d":0,"c":0},{"w":1344124800,"a":0,"d":0,"c":0},{"w":1344729600,"a":0,"d":0,"c":0},{"w":1345334400,"a":0,"d":0,"c":0},{"w":1345939200,"a":0,"d":0,"c":0},{"w":1346544000,"a":0,"d":0,"c":0},{"w":1347148800,"a":0,"d":0,"c":0},{"w":1347753600,"a":0,"d":0,"c":0},{"w":1348358400,"a":0,"d":0,"c":0},{"w":1348963200,"a":0,"d":0,"c":0},{"w":1349568000,"a":0,"d":0,"c":0},{"w":1350172800,"a":0,"d":0,"c":0},{"w":1350777600,"a":0,"d":0,"c":0},{"w":1351382400,"a":0,"d":0,"c":0},{"w":1351987200,"a":0,"d":0,"c":0},{"w":1352592000,"a":0,"d":0,"c":0},{"w":1353196800,"a":0,"d":0,"c":0},{"w":1353801600,"a":0,"d":0,"c":0},{"w":1354406400,"a":0,"d":0,"c":0},{"w":1355011200,"a":0,"d":0,"c":0},{"w":1355616000,"a":0,"d":0,"c":0},{"w":1356220800,"a":0,"d":0,"c":0},{"w":1356825600,"a":0,"d":0,"c":0},{"w":1357430400,"a":0,"d":0,"c":0},{"w":1358035200,"a":0,"d":0,"c":0},{"w":1358640000,"a":0,"d":0,"c":0},{"w":1359244800,"a":0,"d":0,"c":0},{"w":1359849600,"a":0,"d":0,"c":0},{"w":1360454400,"a":0,"d":0,"c":0},{"w":1361059200,"a":0,"d":0,"c":0},{"w":1361664000,"a":0,"d":0,"c":0},{"w":1362268800,"a":0,"d":0,"c":0},{"w":1362873600,"a":0,"d":0,"c":0},{"w":1363478400,"a":0,"d":0,"c":0},{"w":1364083200,"a":0,"d":0,"c":0},{"w":1364688000,"a":0,"d":0,"c":0},{"w":1365292800,"a":0,"d":0,"c":0},{"w":1365897600,"a":0,"d":0,"c":0},{"w":1366502400,"a":0,"d":0,"c":0},{"w":1367107200,"a":0,"d":0,"c":0},{"w":1367712000,"a":0,"d":0,"c":0},{"w":1368316800,"a":0,"d":0,"c":0},{"w":1368921600,"a":0,"d":0,"c":0},{"w":1369526400,"a":0,"d":0,"c":0},{"w":1370131200,"a":0,"d":0,"c":0},{"w":1370736000,"a":0,"d":0,"c":0},{"w":1371340800,"a":0,"d":0,"c":0},{"w":1371945600,"a":0,"d":0,"c":0},{"w":1372550400,"a":0,"d":0,"c":0},{"w":1373155200,"a":0,"d":0,"c":0},{"w":1373760000,"a":0,"d":0,"c":0},{"w":1374364800,"a":0,"d":0,"c":0},{"w":1374969600,"a":0,"d":0,"c":0},{"w":1375574400,"a":9,"d":1,"c":1},{"w":1376179200,"a":0,"d":0,"c":0},{"w":1376784000,"a":0,"d":0,"c":0},{"w":1377388800,"a":0,"d":0,"c":0},{"w":1377993600,"a":0,"d":0,"c":0},{"w":1378598400,"a":0,"d":0,"c":0},{"w":1379203200,"a":0,"d":0,"c":0},{"w":1379808000,"a":0,"d":0,"c":0},{"w":1380412800,"a":0,"d":0,"c":0},{"w":1381017600,"a":0,"d":0,"c":0},{"w":1381622400,"a":0,"d":0,"c":0},{"w":1382227200,"a":0,"d":0,"c":0},{"w":1382832000,"a":0,"d":0,"c":0},{"w":1383436800,"a":0,"d":0,"c":0},{"w":1384041600,"a":0,"d":0,"c":0}],"author":{"login":"apetresc","id":14872,"avatar_url":"https://0.gravatar.com/avatar/c796928dba8bb5d8ceba76855cb46099?d=https%3A%2F%2Fidenticons.github.com%2Fa598e7d200bf02558d5534839884b7a3.png&r=x","gravatar_id":"c796928dba8bb5d8ceba76855cb46099","url":"https://api.github.com/users/apetresc","html_url":"https://github.com/apetresc","followers_url":"https://api.github.com/users/apetresc/followers","following_url":"https://api.github.com/users/apetresc/following{/other_user}","gists_url":"https://api.github.com/users/apetresc/gists{/gist_id}","starred_url":"https://api.github.com/users/apetresc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/apetresc/subscriptions","organizations_url":"https://api.github.com/users/apetresc/orgs","repos_url":"https://api.github.com/users/apetresc/repos","events_url":"https://api.github.com/users/apetresc/events{/privacy}","received_events_url":"https://api.github.com/users/apetresc/received_events","type":"User","site_admin":false}},{"total":1,"weeks":[{"w":1329004800,"a":0,"d":0,"c":0},{"w":1329609600,"a":0,"d":0,"c":0},{"w":1330214400,"a":0,"d":0,"c":0},{"w":1330819200,"a":0,"d":0,"c":0},{"w":1331424000,"a":0,"d":0,"c":0},{"w":1332028800,"a":0,"d":0,"c":0},{"w":1332633600,"a":0,"d":0,"c":0},{"w":1333238400,"a":0,"d":0,"c":0},{"w":1333843200,"a":0,"d":0,"c":0},{"w":1334448000,"a":0,"d":0,"c":0},{"w":1335052800,"a":0,"d":0,"c":0},{"w":1335657600,"a":0,"d":0,"c":0},{"w":1336262400,"a":0,"d":0,"c":0},{"w":1336867200,"a":0,"d":0,"c":0},{"w":1337472000,"a":0,"d":0,"c":0},{"w":1338076800,"a":0,"d":0,"c":0},{"w":1338681600,"a":0,"d":0,"c":0},{"w":1339286400,"a":0,"d":0,"c":0},{"w":1339891200,"a":0,"d":0,"c":0},{"w":1340496000,"a":0,"d":0,"c":0},{"w":1341100800,"a":0,"d":0,"c":0},{"w":1341705600,"a":0,"d":0,"c":0},{"w":1342310400,"a":0,"d":0,"c":0},{"w":1342915200,"a":0,"d":0,"c":0},{"w":1343520000,"a":0,"d":0,"c":0},{"w":1344124800,"a":0,"d":0,"c":0},{"w":1344729600,"a":0,"d":0,"c":0},{"w":1345334400,"a":0,"d":0,"c":0},{"w":1345939200,"a":0,"d":0,"c":0},{"w":1346544000,"a":0,"d":0,"c":0},{"w":1347148800,"a":0,"d":0,"c":0},{"w":1347753600,"a":0,"d":0,"c":0},{"w":1348358400,"a":0,"d":0,"c":0},{"w":1348963200,"a":0,"d":0,"c":0},{"w":1349568000,"a":0,"d":0,"c":0},{"w":1350172800,"a":0,"d":0,"c":0},{"w":1350777600,"a":0,"d":0,"c":0},{"w":1351382400,"a":0,"d":0,"c":0},{"w":1351987200,"a":0,"d":0,"c":0},{"w":1352592000,"a":0,"d":0,"c":0},{"w":1353196800,"a":0,"d":0,"c":0},{"w":1353801600,"a":0,"d":0,"c":0},{"w":1354406400,"a":0,"d":0,"c":0},{"w":1355011200,"a":0,"d":0,"c":0},{"w":1355616000,"a":0,"d":0,"c":0},{"w":1356220800,"a":0,"d":0,"c":0},{"w":1356825600,"a":0,"d":0,"c":0},{"w":1357430400,"a":0,"d":0,"c":0},{"w":1358035200,"a":0,"d":0,"c":0},{"w":1358640000,"a":0,"d":0,"c":0},{"w":1359244800,"a":0,"d":0,"c":0},{"w":1359849600,"a":0,"d":0,"c":0},{"w":1360454400,"a":0,"d":0,"c":0},{"w":1361059200,"a":0,"d":0,"c":0},{"w":1361664000,"a":0,"d":0,"c":0},{"w":1362268800,"a":0,"d":0,"c":0},{"w":1362873600,"a":0,"d":0,"c":0},{"w":1363478400,"a":0,"d":0,"c":0},{"w":1364083200,"a":0,"d":0,"c":0},{"w":1364688000,"a":0,"d":0,"c":0},{"w":1365292800,"a":0,"d":0,"c":0},{"w":1365897600,"a":0,"d":0,"c":0},{"w":1366502400,"a":0,"d":0,"c":0},{"w":1367107200,"a":0,"d":0,"c":0},{"w":1367712000,"a":0,"d":0,"c":0},{"w":1368316800,"a":0,"d":0,"c":0},{"w":1368921600,"a":0,"d":0,"c":0},{"w":1369526400,"a":0,"d":0,"c":0},{"w":1370131200,"a":0,"d":0,"c":0},{"w":1370736000,"a":0,"d":0,"c":0},{"w":1371340800,"a":0,"d":0,"c":0},{"w":1371945600,"a":0,"d":0,"c":0},{"w":1372550400,"a":0,"d":0,"c":0},{"w":1373155200,"a":0,"d":0,"c":0},{"w":1373760000,"a":0,"d":0,"c":0},{"w":1374364800,"a":0,"d":0,"c":0},{"w":1374969600,"a":0,"d":0,"c":0},{"w":1375574400,"a":42,"d":3,"c":1},{"w":1376179200,"a":0,"d":0,"c":0},{"w":1376784000,"a":0,"d":0,"c":0},{"w":1377388800,"a":0,"d":0,"c":0},{"w":1377993600,"a":0,"d":0,"c":0},{"w":1378598400,"a":0,"d":0,"c":0},{"w":1379203200,"a":0,"d":0,"c":0},{"w":1379808000,"a":0,"d":0,"c":0},{"w":1380412800,"a":0,"d":0,"c":0},{"w":1381017600,"a":0,"d":0,"c":0},{"w":1381622400,"a":0,"d":0,"c":0},{"w":1382227200,"a":0,"d":0,"c":0},{"w":1382832000,"a":0,"d":0,"c":0},{"w":1383436800,"a":0,"d":0,"c":0},{"w":1384041600,"a":0,"d":0,"c":0}],"author":{"login":"edjackson","id":2752732,"avatar_url":"https://2.gravatar.com/avatar/1f28c4efde1b232eb624193219c6930f?d=https%3A%2F%2Fidenticons.github.com%2Fd6a7cd545081cfd413da4aa0fafda306.png&r=x","gravatar_id":"1f28c4efde1b232eb624193219c6930f","url":"https://api.github.com/users/edjackson","html_url":"https://github.com/edjackson","followers_url":"https://api.github.com/users/edjackson/followers","following_url":"https://api.github.com/users/edjackson/following{/other_user}","gists_url":"https://api.github.com/users/edjackson/gists{/gist_id}","starred_url":"https://api.github.com/users/edjackson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edjackson/subscriptions","organizations_url":"https://api.github.com/users/edjackson/orgs","repos_url":"https://api.github.com/users/edjackson/repos","events_url":"https://api.github.com/users/edjackson/events{/privacy}","received_events_url":"https://api.github.com/users/edjackson/received_events","type":"User","site_admin":false}},{"total":1,"weeks":[{"w":1329004800,"a":0,"d":0,"c":0},{"w":1329609600,"a":0,"d":0,"c":0},{"w":1330214400,"a":0,"d":0,"c":0},{"w":1330819200,"a":0,"d":0,"c":0},{"w":1331424000,"a":0,"d":0,"c":0},{"w":1332028800,"a":0,"d":0,"c":0},{"w":1332633600,"a":0,"d":0,"c":0},{"w":1333238400,"a":0,"d":0,"c":0},{"w":1333843200,"a":0,"d":0,"c":0},{"w":1334448000,"a":0,"d":0,"c":0},{"w":1335052800,"a":0,"d":0,"c":0},{"w":1335657600,"a":0,"d":0,"c":0},{"w":1336262400,"a":0,"d":0,"c":0},{"w":1336867200,"a":0,"d":0,"c":0},{"w":1337472000,"a":0,"d":0,"c":0},{"w":1338076800,"a":0,"d":0,"c":0},{"w":1338681600,"a":0,"d":0,"c":0},{"w":1339286400,"a":0,"d":0,"c":0},{"w":1339891200,"a":0,"d":0,"c":0},{"w":1340496000,"a":0,"d":0,"c":0},{"w":1341100800,"a":0,"d":0,"c":0},{"w":1341705600,"a":0,"d":0,"c":0},{"w":1342310400,"a":0,"d":0,"c":0},{"w":1342915200,"a":0,"d":0,"c":0},{"w":1343520000,"a":0,"d":0,"c":0},{"w":1344124800,"a":0,"d":0,"c":0},{"w":1344729600,"a":0,"d":0,"c":0},{"w":1345334400,"a":0,"d":0,"c":0},{"w":1345939200,"a":0,"d":0,"c":0},{"w":1346544000,"a":0,"d":0,"c":0},{"w":1347148800,"a":0,"d":0,"c":0},{"w":1347753600,"a":0,"d":0,"c":0},{"w":1348358400,"a":0,"d":0,"c":0},{"w":1348963200,"a":0,"d":0,"c":0},{"w":1349568000,"a":0,"d":0,"c":0},{"w":1350172800,"a":0,"d":0,"c":0},{"w":1350777600,"a":0,"d":0,"c":0},{"w":1351382400,"a":0,"d":0,"c":0},{"w":1351987200,"a":0,"d":0,"c":0},{"w":1352592000,"a":0,"d":0,"c":0},{"w":1353196800,"a":0,"d":0,"c":0},{"w":1353801600,"a":0,"d":0,"c":0},{"w":1354406400,"a":0,"d":0,"c":0},{"w":1355011200,"a":0,"d":0,"c":0},{"w":1355616000,"a":0,"d":0,"c":0},{"w":1356220800,"a":6,"d":2,"c":1},{"w":1356825600,"a":0,"d":0,"c":0},{"w":1357430400,"a":0,"d":0,"c":0},{"w":1358035200,"a":0,"d":0,"c":0},{"w":1358640000,"a":0,"d":0,"c":0},{"w":1359244800,"a":0,"d":0,"c":0},{"w":1359849600,"a":0,"d":0,"c":0},{"w":1360454400,"a":0,"d":0,"c":0},{"w":1361059200,"a":0,"d":0,"c":0},{"w":1361664000,"a":0,"d":0,"c":0},{"w":1362268800,"a":0,"d":0,"c":0},{"w":1362873600,"a":0,"d":0,"c":0},{"w":1363478400,"a":0,"d":0,"c":0},{"w":1364083200,"a":0,"d":0,"c":0},{"w":1364688000,"a":0,"d":0,"c":0},{"w":1365292800,"a":0,"d":0,"c":0},{"w":1365897600,"a":0,"d":0,"c":0},{"w":1366502400,"a":0,"d":0,"c":0},{"w":1367107200,"a":0,"d":0,"c":0},{"w":1367712000,"a":0,"d":0,"c":0},{"w":1368316800,"a":0,"d":0,"c":0},{"w":1368921600,"a":0,"d":0,"c":0},{"w":1369526400,"a":0,"d":0,"c":0},{"w":1370131200,"a":0,"d":0,"c":0},{"w":1370736000,"a":0,"d":0,"c":0},{"w":1371340800,"a":0,"d":0,"c":0},{"w":1371945600,"a":0,"d":0,"c":0},{"w":1372550400,"a":0,"d":0,"c":0},{"w":1373155200,"a":0,"d":0,"c":0},{"w":1373760000,"a":0,"d":0,"c":0},{"w":1374364800,"a":0,"d":0,"c":0},{"w":1374969600,"a":0,"d":0,"c":0},{"w":1375574400,"a":0,"d":0,"c":0},{"w":1376179200,"a":0,"d":0,"c":0},{"w":1376784000,"a":0,"d":0,"c":0},{"w":1377388800,"a":0,"d":0,"c":0},{"w":1377993600,"a":0,"d":0,"c":0},{"w":1378598400,"a":0,"d":0,"c":0},{"w":1379203200,"a":0,"d":0,"c":0},{"w":1379808000,"a":0,"d":0,"c":0},{"w":1380412800,"a":0,"d":0,"c":0},{"w":1381017600,"a":0,"d":0,"c":0},{"w":1381622400,"a":0,"d":0,"c":0},{"w":1382227200,"a":0,"d":0,"c":0},{"w":1382832000,"a":0,"d":0,"c":0},{"w":1383436800,"a":0,"d":0,"c":0},{"w":1384041600,"a":0,"d":0,"c":0}],"author":{"login":"fixxxeruk","id":1074943,"avatar_url":"https://identicons.github.com/a0df2de6aa9611601a9cc439a3305245.png","gravatar_id":null,"url":"https://api.github.com/users/fixxxeruk","html_url":"https://github.com/fixxxeruk","followers_url":"https://api.github.com/users/fixxxeruk/followers","following_url":"https://api.github.com/users/fixxxeruk/following{/other_user}","gists_url":"https://api.github.com/users/fixxxeruk/gists{/gist_id}","starred_url":"https://api.github.com/users/fixxxeruk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fixxxeruk/subscriptions","organizations_url":"https://api.github.com/users/fixxxeruk/orgs","repos_url":"https://api.github.com/users/fixxxeruk/repos","events_url":"https://api.github.com/users/fixxxeruk/events{/privacy}","received_events_url":"https://api.github.com/users/fixxxeruk/received_events","type":"User","site_admin":false}},{"total":1,"weeks":[{"w":1329004800,"a":0,"d":0,"c":0},{"w":1329609600,"a":0,"d":0,"c":0},{"w":1330214400,"a":0,"d":0,"c":0},{"w":1330819200,"a":0,"d":0,"c":0},{"w":1331424000,"a":0,"d":0,"c":0},{"w":1332028800,"a":0,"d":0,"c":0},{"w":1332633600,"a":0,"d":0,"c":0},{"w":1333238400,"a":0,"d":0,"c":0},{"w":1333843200,"a":0,"d":0,"c":0},{"w":1334448000,"a":0,"d":0,"c":0},{"w":1335052800,"a":0,"d":0,"c":0},{"w":1335657600,"a":0,"d":0,"c":0},{"w":1336262400,"a":0,"d":0,"c":0},{"w":1336867200,"a":0,"d":0,"c":0},{"w":1337472000,"a":0,"d":0,"c":0},{"w":1338076800,"a":0,"d":0,"c":0},{"w":1338681600,"a":0,"d":0,"c":0},{"w":1339286400,"a":0,"d":0,"c":0},{"w":1339891200,"a":0,"d":0,"c":0},{"w":1340496000,"a":0,"d":0,"c":0},{"w":1341100800,"a":0,"d":0,"c":0},{"w":1341705600,"a":0,"d":0,"c":0},{"w":1342310400,"a":0,"d":0,"c":0},{"w":1342915200,"a":0,"d":0,"c":0},{"w":1343520000,"a":0,"d":0,"c":0},{"w":1344124800,"a":0,"d":0,"c":0},{"w":1344729600,"a":0,"d":0,"c":0},{"w":1345334400,"a":0,"d":0,"c":0},{"w":1345939200,"a":0,"d":0,"c":0},{"w":1346544000,"a":0,"d":0,"c":0},{"w":1347148800,"a":0,"d":0,"c":0},{"w":1347753600,"a":0,"d":0,"c":0},{"w":1348358400,"a":0,"d":0,"c":0},{"w":1348963200,"a":0,"d":0,"c":0},{"w":1349568000,"a":0,"d":0,"c":0},{"w":1350172800,"a":0,"d":0,"c":0},{"w":1350777600,"a":0,"d":0,"c":0},{"w":1351382400,"a":0,"d":0,"c":0},{"w":1351987200,"a":0,"d":0,"c":0},{"w":1352592000,"a":0,"d":0,"c":0},{"w":1353196800,"a":0,"d":0,"c":0},{"w":1353801600,"a":0,"d":0,"c":0},{"w":1354406400,"a":0,"d":0,"c":0},{"w":1355011200,"a":0,"d":0,"c":0},{"w":1355616000,"a":0,"d":0,"c":0},{"w":1356220800,"a":0,"d":0,"c":0},{"w":1356825600,"a":0,"d":0,"c":0},{"w":1357430400,"a":0,"d":0,"c":0},{"w":1358035200,"a":0,"d":0,"c":0},{"w":1358640000,"a":0,"d":0,"c":0},{"w":1359244800,"a":1,"d":1,"c":1},{"w":1359849600,"a":0,"d":0,"c":0},{"w":1360454400,"a":0,"d":0,"c":0},{"w":1361059200,"a":0,"d":0,"c":0},{"w":1361664000,"a":0,"d":0,"c":0},{"w":1362268800,"a":0,"d":0,"c":0},{"w":1362873600,"a":0,"d":0,"c":0},{"w":1363478400,"a":0,"d":0,"c":0},{"w":1364083200,"a":0,"d":0,"c":0},{"w":1364688000,"a":0,"d":0,"c":0},{"w":1365292800,"a":0,"d":0,"c":0},{"w":1365897600,"a":0,"d":0,"c":0},{"w":1366502400,"a":0,"d":0,"c":0},{"w":1367107200,"a":0,"d":0,"c":0},{"w":1367712000,"a":0,"d":0,"c":0},{"w":1368316800,"a":0,"d":0,"c":0},{"w":1368921600,"a":0,"d":0,"c":0},{"w":1369526400,"a":0,"d":0,"c":0},{"w":1370131200,"a":0,"d":0,"c":0},{"w":1370736000,"a":0,"d":0,"c":0},{"w":1371340800,"a":0,"d":0,"c":0},{"w":1371945600,"a":0,"d":0,"c":0},{"w":1372550400,"a":0,"d":0,"c":0},{"w":1373155200,"a":0,"d":0,"c":0},{"w":1373760000,"a":0,"d":0,"c":0},{"w":1374364800,"a":0,"d":0,"c":0},{"w":1374969600,"a":0,"d":0,"c":0},{"w":1375574400,"a":0,"d":0,"c":0},{"w":1376179200,"a":0,"d":0,"c":0},{"w":1376784000,"a":0,"d":0,"c":0},{"w":1377388800,"a":0,"d":0,"c":0},{"w":1377993600,"a":0,"d":0,"c":0},{"w":1378598400,"a":0,"d":0,"c":0},{"w":1379203200,"a":0,"d":0,"c":0},{"w":1379808000,"a":0,"d":0,"c":0},{"w":1380412800,"a":0,"d":0,"c":0},{"w":1381017600,"a":0,"d":0,"c":0},{"w":1381622400,"a":0,"d":0,"c":0},{"w":1382227200,"a":0,"d":0,"c":0},{"w":1382832000,"a":0,"d":0,"c":0},{"w":1383436800,"a":0,"d":0,"c":0},{"w":1384041600,"a":0,"d":0,"c":0}],"author":{"login":"llimllib","id":7150,"avatar_url":"https://2.gravatar.com/avatar/aa7c1350d93036592f58f165318044db?d=https%3A%2F%2Fidenticons.github.com%2Fc20bb2d9a50d5ac1f713f8b34d9aac5a.png&r=x","gravatar_id":"aa7c1350d93036592f58f165318044db","url":"https://api.github.com/users/llimllib","html_url":"https://github.com/llimllib","followers_url":"https://api.github.com/users/llimllib/followers","following_url":"https://api.github.com/users/llimllib/following{/other_user}","gists_url":"https://api.github.com/users/llimllib/gists{/gist_id}","starred_url":"https://api.github.com/users/llimllib/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/llimllib/subscriptions","organizations_url":"https://api.github.com/users/llimllib/orgs","repos_url":"https://api.github.com/users/llimllib/repos","events_url":"https://api.github.com/users/llimllib/events{/privacy}","received_events_url":"https://api.github.com/users/llimllib/received_events","type":"User","site_admin":false}},{"total":1,"weeks":[{"w":1329004800,"a":0,"d":0,"c":0},{"w":1329609600,"a":0,"d":0,"c":0},{"w":1330214400,"a":0,"d":0,"c":0},{"w":1330819200,"a":0,"d":0,"c":0},{"w":1331424000,"a":0,"d":0,"c":0},{"w":1332028800,"a":0,"d":0,"c":0},{"w":1332633600,"a":0,"d":0,"c":0},{"w":1333238400,"a":0,"d":0,"c":0},{"w":1333843200,"a":0,"d":0,"c":0},{"w":1334448000,"a":0,"d":0,"c":0},{"w":1335052800,"a":0,"d":0,"c":0},{"w":1335657600,"a":0,"d":0,"c":0},{"w":1336262400,"a":0,"d":0,"c":0},{"w":1336867200,"a":0,"d":0,"c":0},{"w":1337472000,"a":0,"d":0,"c":0},{"w":1338076800,"a":0,"d":0,"c":0},{"w":1338681600,"a":0,"d":0,"c":0},{"w":1339286400,"a":0,"d":0,"c":0},{"w":1339891200,"a":0,"d":0,"c":0},{"w":1340496000,"a":0,"d":0,"c":0},{"w":1341100800,"a":0,"d":0,"c":0},{"w":1341705600,"a":0,"d":0,"c":0},{"w":1342310400,"a":0,"d":0,"c":0},{"w":1342915200,"a":0,"d":0,"c":0},{"w":1343520000,"a":0,"d":0,"c":0},{"w":1344124800,"a":0,"d":0,"c":0},{"w":1344729600,"a":0,"d":0,"c":0},{"w":1345334400,"a":0,"d":0,"c":0},{"w":1345939200,"a":0,"d":0,"c":0},{"w":1346544000,"a":0,"d":0,"c":0},{"w":1347148800,"a":0,"d":0,"c":0},{"w":1347753600,"a":0,"d":0,"c":0},{"w":1348358400,"a":0,"d":0,"c":0},{"w":1348963200,"a":0,"d":0,"c":0},{"w":1349568000,"a":0,"d":0,"c":0},{"w":1350172800,"a":0,"d":0,"c":0},{"w":1350777600,"a":0,"d":0,"c":0},{"w":1351382400,"a":0,"d":0,"c":0},{"w":1351987200,"a":0,"d":0,"c":0},{"w":1352592000,"a":0,"d":0,"c":0},{"w":1353196800,"a":0,"d":0,"c":0},{"w":1353801600,"a":0,"d":0,"c":0},{"w":1354406400,"a":0,"d":0,"c":0},{"w":1355011200,"a":0,"d":0,"c":0},{"w":1355616000,"a":0,"d":0,"c":0},{"w":1356220800,"a":0,"d":0,"c":0},{"w":1356825600,"a":0,"d":0,"c":0},{"w":1357430400,"a":0,"d":0,"c":0},{"w":1358035200,"a":0,"d":0,"c":0},{"w":1358640000,"a":0,"d":0,"c":0},{"w":1359244800,"a":0,"d":0,"c":0},{"w":1359849600,"a":0,"d":0,"c":0},{"w":1360454400,"a":0,"d":0,"c":0},{"w":1361059200,"a":0,"d":0,"c":0},{"w":1361664000,"a":0,"d":0,"c":0},{"w":1362268800,"a":0,"d":0,"c":0},{"w":1362873600,"a":0,"d":0,"c":0},{"w":1363478400,"a":0,"d":0,"c":0},{"w":1364083200,"a":0,"d":0,"c":0},{"w":1364688000,"a":0,"d":0,"c":0},{"w":1365292800,"a":0,"d":0,"c":0},{"w":1365897600,"a":0,"d":0,"c":0},{"w":1366502400,"a":0,"d":0,"c":0},{"w":1367107200,"a":0,"d":0,"c":0},{"w":1367712000,"a":0,"d":0,"c":0},{"w":1368316800,"a":0,"d":0,"c":0},{"w":1368921600,"a":0,"d":0,"c":0},{"w":1369526400,"a":0,"d":0,"c":0},{"w":1370131200,"a":0,"d":0,"c":0},{"w":1370736000,"a":0,"d":0,"c":0},{"w":1371340800,"a":0,"d":0,"c":0},{"w":1371945600,"a":17,"d":1,"c":1},{"w":1372550400,"a":0,"d":0,"c":0},{"w":1373155200,"a":0,"d":0,"c":0},{"w":1373760000,"a":0,"d":0,"c":0},{"w":1374364800,"a":0,"d":0,"c":0},{"w":1374969600,"a":0,"d":0,"c":0},{"w":1375574400,"a":0,"d":0,"c":0},{"w":1376179200,"a":0,"d":0,"c":0},{"w":1376784000,"a":0,"d":0,"c":0},{"w":1377388800,"a":0,"d":0,"c":0},{"w":1377993600,"a":0,"d":0,"c":0},{"w":1378598400,"a":0,"d":0,"c":0},{"w":1379203200,"a":0,"d":0,"c":0},{"w":1379808000,"a":0,"d":0,"c":0},{"w":1380412800,"a":0,"d":0,"c":0},{"w":1381017600,"a":0,"d":0,"c":0},{"w":1381622400,"a":0,"d":0,"c":0},{"w":1382227200,"a":0,"d":0,"c":0},{"w":1382832000,"a":0,"d":0,"c":0},{"w":1383436800,"a":0,"d":0,"c":0},{"w":1384041600,"a":0,"d":0,"c":0}],"author":{"login":"stuglaser","id":1527117,"avatar_url":"https://0.gravatar.com/avatar/d808e9e590dd10c4346e52f9f91e33ca?d=https%3A%2F%2Fidenticons.github.com%2F599a371cf4949ff27b92e70a859cc80d.png&r=x","gravatar_id":"d808e9e590dd10c4346e52f9f91e33ca","url":"https://api.github.com/users/stuglaser","html_url":"https://github.com/stuglaser","followers_url":"https://api.github.com/users/stuglaser/followers","following_url":"https://api.github.com/users/stuglaser/following{/other_user}","gists_url":"https://api.github.com/users/stuglaser/gists{/gist_id}","starred_url":"https://api.github.com/users/stuglaser/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stuglaser/subscriptions","organizations_url":"https://api.github.com/users/stuglaser/orgs","repos_url":"https://api.github.com/users/stuglaser/repos","events_url":"https://api.github.com/users/stuglaser/events{/privacy}","received_events_url":"https://api.github.com/users/stuglaser/received_events","type":"User","site_admin":false}},{"total":1,"weeks":[{"w":1329004800,"a":0,"d":0,"c":0},{"w":1329609600,"a":0,"d":0,"c":0},{"w":1330214400,"a":0,"d":0,"c":0},{"w":1330819200,"a":0,"d":0,"c":0},{"w":1331424000,"a":0,"d":0,"c":0},{"w":1332028800,"a":0,"d":0,"c":0},{"w":1332633600,"a":0,"d":0,"c":0},{"w":1333238400,"a":0,"d":0,"c":0},{"w":1333843200,"a":0,"d":0,"c":0},{"w":1334448000,"a":0,"d":0,"c":0},{"w":1335052800,"a":0,"d":0,"c":0},{"w":1335657600,"a":0,"d":0,"c":0},{"w":1336262400,"a":0,"d":0,"c":0},{"w":1336867200,"a":0,"d":0,"c":0},{"w":1337472000,"a":0,"d":0,"c":0},{"w":1338076800,"a":0,"d":0,"c":0},{"w":1338681600,"a":0,"d":0,"c":0},{"w":1339286400,"a":0,"d":0,"c":0},{"w":1339891200,"a":0,"d":0,"c":0},{"w":1340496000,"a":0,"d":0,"c":0},{"w":1341100800,"a":0,"d":0,"c":0},{"w":1341705600,"a":0,"d":0,"c":0},{"w":1342310400,"a":0,"d":0,"c":0},{"w":1342915200,"a":0,"d":0,"c":0},{"w":1343520000,"a":0,"d":0,"c":0},{"w":1344124800,"a":0,"d":0,"c":0},{"w":1344729600,"a":0,"d":0,"c":0},{"w":1345334400,"a":0,"d":0,"c":0},{"w":1345939200,"a":0,"d":0,"c":0},{"w":1346544000,"a":0,"d":0,"c":0},{"w":1347148800,"a":0,"d":0,"c":0},{"w":1347753600,"a":0,"d":0,"c":0},{"w":1348358400,"a":0,"d":0,"c":0},{"w":1348963200,"a":0,"d":0,"c":0},{"w":1349568000,"a":0,"d":0,"c":0},{"w":1350172800,"a":0,"d":0,"c":0},{"w":1350777600,"a":0,"d":0,"c":0},{"w":1351382400,"a":216,"d":0,"c":1},{"w":1351987200,"a":0,"d":0,"c":0},{"w":1352592000,"a":0,"d":0,"c":0},{"w":1353196800,"a":0,"d":0,"c":0},{"w":1353801600,"a":0,"d":0,"c":0},{"w":1354406400,"a":0,"d":0,"c":0},{"w":1355011200,"a":0,"d":0,"c":0},{"w":1355616000,"a":0,"d":0,"c":0},{"w":1356220800,"a":0,"d":0,"c":0},{"w":1356825600,"a":0,"d":0,"c":0},{"w":1357430400,"a":0,"d":0,"c":0},{"w":1358035200,"a":0,"d":0,"c":0},{"w":1358640000,"a":0,"d":0,"c":0},{"w":1359244800,"a":0,"d":0,"c":0},{"w":1359849600,"a":0,"d":0,"c":0},{"w":1360454400,"a":0,"d":0,"c":0},{"w":1361059200,"a":0,"d":0,"c":0},{"w":1361664000,"a":0,"d":0,"c":0},{"w":1362268800,"a":0,"d":0,"c":0},{"w":1362873600,"a":0,"d":0,"c":0},{"w":1363478400,"a":0,"d":0,"c":0},{"w":1364083200,"a":0,"d":0,"c":0},{"w":1364688000,"a":0,"d":0,"c":0},{"w":1365292800,"a":0,"d":0,"c":0},{"w":1365897600,"a":0,"d":0,"c":0},{"w":1366502400,"a":0,"d":0,"c":0},{"w":1367107200,"a":0,"d":0,"c":0},{"w":1367712000,"a":0,"d":0,"c":0},{"w":1368316800,"a":0,"d":0,"c":0},{"w":1368921600,"a":0,"d":0,"c":0},{"w":1369526400,"a":0,"d":0,"c":0},{"w":1370131200,"a":0,"d":0,"c":0},{"w":1370736000,"a":0,"d":0,"c":0},{"w":1371340800,"a":0,"d":0,"c":0},{"w":1371945600,"a":0,"d":0,"c":0},{"w":1372550400,"a":0,"d":0,"c":0},{"w":1373155200,"a":0,"d":0,"c":0},{"w":1373760000,"a":0,"d":0,"c":0},{"w":1374364800,"a":0,"d":0,"c":0},{"w":1374969600,"a":0,"d":0,"c":0},{"w":1375574400,"a":0,"d":0,"c":0},{"w":1376179200,"a":0,"d":0,"c":0},{"w":1376784000,"a":0,"d":0,"c":0},{"w":1377388800,"a":0,"d":0,"c":0},{"w":1377993600,"a":0,"d":0,"c":0},{"w":1378598400,"a":0,"d":0,"c":0},{"w":1379203200,"a":0,"d":0,"c":0},{"w":1379808000,"a":0,"d":0,"c":0},{"w":1380412800,"a":0,"d":0,"c":0},{"w":1381017600,"a":0,"d":0,"c":0},{"w":1381622400,"a":0,"d":0,"c":0},{"w":1382227200,"a":0,"d":0,"c":0},{"w":1382832000,"a":0,"d":0,"c":0},{"w":1383436800,"a":0,"d":0,"c":0},{"w":1384041600,"a":0,"d":0,"c":0}],"author":{"login":"Zearin","id":630124,"avatar_url":"https://0.gravatar.com/avatar/cb9730ee11d50fa2db955d687c653971?d=https%3A%2F%2Fidenticons.github.com%2Ff4ab3d7c9207c8c6a32aabb28771410f.png&r=x","gravatar_id":"cb9730ee11d50fa2db955d687c653971","url":"https://api.github.com/users/Zearin","html_url":"https://github.com/Zearin","followers_url":"https://api.github.com/users/Zearin/followers","following_url":"https://api.github.com/users/Zearin/following{/other_user}","gists_url":"https://api.github.com/users/Zearin/gists{/gist_id}","starred_url":"https://api.github.com/users/Zearin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Zearin/subscriptions","organizations_url":"https://api.github.com/users/Zearin/orgs","repos_url":"https://api.github.com/users/Zearin/repos","events_url":"https://api.github.com/users/Zearin/events{/privacy}","received_events_url":"https://api.github.com/users/Zearin/received_events","type":"User","site_admin":false}},{"total":1,"weeks":[{"w":1329004800,"a":0,"d":0,"c":0},{"w":1329609600,"a":0,"d":0,"c":0},{"w":1330214400,"a":0,"d":0,"c":0},{"w":1330819200,"a":0,"d":0,"c":0},{"w":1331424000,"a":0,"d":0,"c":0},{"w":1332028800,"a":0,"d":0,"c":0},{"w":1332633600,"a":0,"d":0,"c":0},{"w":1333238400,"a":0,"d":0,"c":0},{"w":1333843200,"a":0,"d":0,"c":0},{"w":1334448000,"a":0,"d":0,"c":0},{"w":1335052800,"a":0,"d":0,"c":0},{"w":1335657600,"a":0,"d":0,"c":0},{"w":1336262400,"a":0,"d":0,"c":0},{"w":1336867200,"a":0,"d":0,"c":0},{"w":1337472000,"a":0,"d":0,"c":0},{"w":1338076800,"a":0,"d":0,"c":0},{"w":1338681600,"a":0,"d":0,"c":0},{"w":1339286400,"a":0,"d":0,"c":0},{"w":1339891200,"a":0,"d":0,"c":0},{"w":1340496000,"a":0,"d":0,"c":0},{"w":1341100800,"a":0,"d":0,"c":0},{"w":1341705600,"a":0,"d":0,"c":0},{"w":1342310400,"a":0,"d":0,"c":0},{"w":1342915200,"a":0,"d":0,"c":0},{"w":1343520000,"a":0,"d":0,"c":0},{"w":1344124800,"a":0,"d":0,"c":0},{"w":1344729600,"a":0,"d":0,"c":0},{"w":1345334400,"a":0,"d":0,"c":0},{"w":1345939200,"a":0,"d":0,"c":0},{"w":1346544000,"a":0,"d":0,"c":0},{"w":1347148800,"a":0,"d":0,"c":0},{"w":1347753600,"a":0,"d":0,"c":0},{"w":1348358400,"a":0,"d":0,"c":0},{"w":1348963200,"a":0,"d":0,"c":0},{"w":1349568000,"a":0,"d":0,"c":0},{"w":1350172800,"a":0,"d":0,"c":0},{"w":1350777600,"a":0,"d":0,"c":0},{"w":1351382400,"a":0,"d":0,"c":0},{"w":1351987200,"a":0,"d":0,"c":0},{"w":1352592000,"a":0,"d":0,"c":0},{"w":1353196800,"a":0,"d":0,"c":0},{"w":1353801600,"a":0,"d":0,"c":0},{"w":1354406400,"a":0,"d":0,"c":0},{"w":1355011200,"a":0,"d":0,"c":0},{"w":1355616000,"a":0,"d":0,"c":0},{"w":1356220800,"a":0,"d":0,"c":0},{"w":1356825600,"a":0,"d":0,"c":0},{"w":1357430400,"a":0,"d":0,"c":0},{"w":1358035200,"a":0,"d":0,"c":0},{"w":1358640000,"a":0,"d":0,"c":0},{"w":1359244800,"a":0,"d":0,"c":0},{"w":1359849600,"a":0,"d":0,"c":0},{"w":1360454400,"a":0,"d":0,"c":0},{"w":1361059200,"a":0,"d":0,"c":0},{"w":1361664000,"a":0,"d":0,"c":0},{"w":1362268800,"a":0,"d":0,"c":0},{"w":1362873600,"a":238,"d":0,"c":1},{"w":1363478400,"a":0,"d":0,"c":0},{"w":1364083200,"a":0,"d":0,"c":0},{"w":1364688000,"a":0,"d":0,"c":0},{"w":1365292800,"a":0,"d":0,"c":0},{"w":1365897600,"a":0,"d":0,"c":0},{"w":1366502400,"a":0,"d":0,"c":0},{"w":1367107200,"a":0,"d":0,"c":0},{"w":1367712000,"a":0,"d":0,"c":0},{"w":1368316800,"a":0,"d":0,"c":0},{"w":1368921600,"a":0,"d":0,"c":0},{"w":1369526400,"a":0,"d":0,"c":0},{"w":1370131200,"a":0,"d":0,"c":0},{"w":1370736000,"a":0,"d":0,"c":0},{"w":1371340800,"a":0,"d":0,"c":0},{"w":1371945600,"a":0,"d":0,"c":0},{"w":1372550400,"a":0,"d":0,"c":0},{"w":1373155200,"a":0,"d":0,"c":0},{"w":1373760000,"a":0,"d":0,"c":0},{"w":1374364800,"a":0,"d":0,"c":0},{"w":1374969600,"a":0,"d":0,"c":0},{"w":1375574400,"a":0,"d":0,"c":0},{"w":1376179200,"a":0,"d":0,"c":0},{"w":1376784000,"a":0,"d":0,"c":0},{"w":1377388800,"a":0,"d":0,"c":0},{"w":1377993600,"a":0,"d":0,"c":0},{"w":1378598400,"a":0,"d":0,"c":0},{"w":1379203200,"a":0,"d":0,"c":0},{"w":1379808000,"a":0,"d":0,"c":0},{"w":1380412800,"a":0,"d":0,"c":0},{"w":1381017600,"a":0,"d":0,"c":0},{"w":1381622400,"a":0,"d":0,"c":0},{"w":1382227200,"a":0,"d":0,"c":0},{"w":1382832000,"a":0,"d":0,"c":0},{"w":1383436800,"a":0,"d":0,"c":0},{"w":1384041600,"a":0,"d":0,"c":0}],"author":{"login":"pgolm","id":1444194,"avatar_url":"https://1.gravatar.com/avatar/c6d6b2eb927ed858092c47da9f150372?d=https%3A%2F%2Fidenticons.github.com%2F57b229318d141b9912e2aa86fa75f97f.png&r=x","gravatar_id":"c6d6b2eb927ed858092c47da9f150372","url":"https://api.github.com/users/pgolm","html_url":"https://github.com/pgolm","followers_url":"https://api.github.com/users/pgolm/followers","following_url":"https://api.github.com/users/pgolm/following{/other_user}","gists_url":"https://api.github.com/users/pgolm/gists{/gist_id}","starred_url":"https://api.github.com/users/pgolm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pgolm/subscriptions","organizations_url":"https://api.github.com/users/pgolm/orgs","repos_url":"https://api.github.com/users/pgolm/repos","events_url":"https://api.github.com/users/pgolm/events{/privacy}","received_events_url":"https://api.github.com/users/pgolm/received_events","type":"User","site_admin":false}},{"total":1,"weeks":[{"w":1329004800,"a":0,"d":0,"c":0},{"w":1329609600,"a":0,"d":0,"c":0},{"w":1330214400,"a":0,"d":0,"c":0},{"w":1330819200,"a":0,"d":0,"c":0},{"w":1331424000,"a":0,"d":0,"c":0},{"w":1332028800,"a":0,"d":0,"c":0},{"w":1332633600,"a":0,"d":0,"c":0},{"w":1333238400,"a":0,"d":0,"c":0},{"w":1333843200,"a":0,"d":0,"c":0},{"w":1334448000,"a":0,"d":0,"c":0},{"w":1335052800,"a":0,"d":0,"c":0},{"w":1335657600,"a":0,"d":0,"c":0},{"w":1336262400,"a":0,"d":0,"c":0},{"w":1336867200,"a":0,"d":0,"c":0},{"w":1337472000,"a":0,"d":0,"c":0},{"w":1338076800,"a":0,"d":0,"c":0},{"w":1338681600,"a":0,"d":0,"c":0},{"w":1339286400,"a":0,"d":0,"c":0},{"w":1339891200,"a":0,"d":0,"c":0},{"w":1340496000,"a":0,"d":0,"c":0},{"w":1341100800,"a":0,"d":0,"c":0},{"w":1341705600,"a":0,"d":0,"c":0},{"w":1342310400,"a":0,"d":0,"c":0},{"w":1342915200,"a":0,"d":0,"c":0},{"w":1343520000,"a":0,"d":0,"c":0},{"w":1344124800,"a":0,"d":0,"c":0},{"w":1344729600,"a":0,"d":0,"c":0},{"w":1345334400,"a":0,"d":0,"c":0},{"w":1345939200,"a":0,"d":0,"c":0},{"w":1346544000,"a":0,"d":0,"c":0},{"w":1347148800,"a":0,"d":0,"c":0},{"w":1347753600,"a":0,"d":0,"c":0},{"w":1348358400,"a":0,"d":0,"c":0},{"w":1348963200,"a":0,"d":0,"c":0},{"w":1349568000,"a":0,"d":0,"c":0},{"w":1350172800,"a":0,"d":0,"c":0},{"w":1350777600,"a":0,"d":0,"c":0},{"w":1351382400,"a":0,"d":0,"c":0},{"w":1351987200,"a":0,"d":0,"c":0},{"w":1352592000,"a":0,"d":0,"c":0},{"w":1353196800,"a":0,"d":0,"c":0},{"w":1353801600,"a":0,"d":0,"c":0},{"w":1354406400,"a":0,"d":0,"c":0},{"w":1355011200,"a":0,"d":0,"c":0},{"w":1355616000,"a":0,"d":0,"c":0},{"w":1356220800,"a":0,"d":0,"c":0},{"w":1356825600,"a":0,"d":0,"c":0},{"w":1357430400,"a":0,"d":0,"c":0},{"w":1358035200,"a":0,"d":0,"c":0},{"w":1358640000,"a":0,"d":0,"c":0},{"w":1359244800,"a":0,"d":0,"c":0},{"w":1359849600,"a":0,"d":0,"c":0},{"w":1360454400,"a":0,"d":0,"c":0},{"w":1361059200,"a":0,"d":0,"c":0},{"w":1361664000,"a":0,"d":0,"c":0},{"w":1362268800,"a":0,"d":0,"c":0},{"w":1362873600,"a":0,"d":0,"c":0},{"w":1363478400,"a":0,"d":0,"c":0},{"w":1364083200,"a":0,"d":0,"c":0},{"w":1364688000,"a":0,"d":0,"c":0},{"w":1365292800,"a":0,"d":0,"c":0},{"w":1365897600,"a":0,"d":0,"c":0},{"w":1366502400,"a":0,"d":0,"c":0},{"w":1367107200,"a":0,"d":0,"c":0},{"w":1367712000,"a":0,"d":0,"c":0},{"w":1368316800,"a":3,"d":3,"c":1},{"w":1368921600,"a":0,"d":0,"c":0},{"w":1369526400,"a":0,"d":0,"c":0},{"w":1370131200,"a":0,"d":0,"c":0},{"w":1370736000,"a":0,"d":0,"c":0},{"w":1371340800,"a":0,"d":0,"c":0},{"w":1371945600,"a":0,"d":0,"c":0},{"w":1372550400,"a":0,"d":0,"c":0},{"w":1373155200,"a":0,"d":0,"c":0},{"w":1373760000,"a":0,"d":0,"c":0},{"w":1374364800,"a":0,"d":0,"c":0},{"w":1374969600,"a":0,"d":0,"c":0},{"w":1375574400,"a":0,"d":0,"c":0},{"w":1376179200,"a":0,"d":0,"c":0},{"w":1376784000,"a":0,"d":0,"c":0},{"w":1377388800,"a":0,"d":0,"c":0},{"w":1377993600,"a":0,"d":0,"c":0},{"w":1378598400,"a":0,"d":0,"c":0},{"w":1379203200,"a":0,"d":0,"c":0},{"w":1379808000,"a":0,"d":0,"c":0},{"w":1380412800,"a":0,"d":0,"c":0},{"w":1381017600,"a":0,"d":0,"c":0},{"w":1381622400,"a":0,"d":0,"c":0},{"w":1382227200,"a":0,"d":0,"c":0},{"w":1382832000,"a":0,"d":0,"c":0},{"w":1383436800,"a":0,"d":0,"c":0},{"w":1384041600,"a":0,"d":0,"c":0}],"author":{"login":"srijan","id":471308,"avatar_url":"https://0.gravatar.com/avatar/bccaf0b5698e6566d256ca4c6ca73cee?d=https%3A%2F%2Fidenticons.github.com%2F16ec6e429e3072cb9722f02383767b62.png&r=x","gravatar_id":"bccaf0b5698e6566d256ca4c6ca73cee","url":"https://api.github.com/users/srijan","html_url":"https://github.com/srijan","followers_url":"https://api.github.com/users/srijan/followers","following_url":"https://api.github.com/users/srijan/following{/other_user}","gists_url":"https://api.github.com/users/srijan/gists{/gist_id}","starred_url":"https://api.github.com/users/srijan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/srijan/subscriptions","organizations_url":"https://api.github.com/users/srijan/orgs","repos_url":"https://api.github.com/users/srijan/repos","events_url":"https://api.github.com/users/srijan/events{/privacy}","received_events_url":"https://api.github.com/users/srijan/received_events","type":"User","site_admin":false}},{"total":1,"weeks":[{"w":1329004800,"a":0,"d":0,"c":0},{"w":1329609600,"a":0,"d":0,"c":0},{"w":1330214400,"a":0,"d":0,"c":0},{"w":1330819200,"a":0,"d":0,"c":0},{"w":1331424000,"a":0,"d":0,"c":0},{"w":1332028800,"a":0,"d":0,"c":0},{"w":1332633600,"a":0,"d":0,"c":0},{"w":1333238400,"a":0,"d":0,"c":0},{"w":1333843200,"a":0,"d":0,"c":0},{"w":1334448000,"a":0,"d":0,"c":0},{"w":1335052800,"a":0,"d":0,"c":0},{"w":1335657600,"a":0,"d":0,"c":0},{"w":1336262400,"a":0,"d":0,"c":0},{"w":1336867200,"a":0,"d":0,"c":0},{"w":1337472000,"a":0,"d":0,"c":0},{"w":1338076800,"a":0,"d":0,"c":0},{"w":1338681600,"a":0,"d":0,"c":0},{"w":1339286400,"a":0,"d":0,"c":0},{"w":1339891200,"a":0,"d":0,"c":0},{"w":1340496000,"a":0,"d":0,"c":0},{"w":1341100800,"a":0,"d":0,"c":0},{"w":1341705600,"a":0,"d":0,"c":0},{"w":1342310400,"a":0,"d":0,"c":0},{"w":1342915200,"a":0,"d":0,"c":0},{"w":1343520000,"a":0,"d":0,"c":0},{"w":1344124800,"a":0,"d":0,"c":0},{"w":1344729600,"a":0,"d":0,"c":0},{"w":1345334400,"a":0,"d":0,"c":0},{"w":1345939200,"a":0,"d":0,"c":0},{"w":1346544000,"a":0,"d":0,"c":0},{"w":1347148800,"a":0,"d":0,"c":0},{"w":1347753600,"a":0,"d":0,"c":0},{"w":1348358400,"a":0,"d":0,"c":0},{"w":1348963200,"a":0,"d":0,"c":0},{"w":1349568000,"a":0,"d":0,"c":0},{"w":1350172800,"a":0,"d":0,"c":0},{"w":1350777600,"a":0,"d":0,"c":0},{"w":1351382400,"a":0,"d":0,"c":0},{"w":1351987200,"a":14,"d":3,"c":1},{"w":1352592000,"a":0,"d":0,"c":0},{"w":1353196800,"a":0,"d":0,"c":0},{"w":1353801600,"a":0,"d":0,"c":0},{"w":1354406400,"a":0,"d":0,"c":0},{"w":1355011200,"a":0,"d":0,"c":0},{"w":1355616000,"a":0,"d":0,"c":0},{"w":1356220800,"a":0,"d":0,"c":0},{"w":1356825600,"a":0,"d":0,"c":0},{"w":1357430400,"a":0,"d":0,"c":0},{"w":1358035200,"a":0,"d":0,"c":0},{"w":1358640000,"a":0,"d":0,"c":0},{"w":1359244800,"a":0,"d":0,"c":0},{"w":1359849600,"a":0,"d":0,"c":0},{"w":1360454400,"a":0,"d":0,"c":0},{"w":1361059200,"a":0,"d":0,"c":0},{"w":1361664000,"a":0,"d":0,"c":0},{"w":1362268800,"a":0,"d":0,"c":0},{"w":1362873600,"a":0,"d":0,"c":0},{"w":1363478400,"a":0,"d":0,"c":0},{"w":1364083200,"a":0,"d":0,"c":0},{"w":1364688000,"a":0,"d":0,"c":0},{"w":1365292800,"a":0,"d":0,"c":0},{"w":1365897600,"a":0,"d":0,"c":0},{"w":1366502400,"a":0,"d":0,"c":0},{"w":1367107200,"a":0,"d":0,"c":0},{"w":1367712000,"a":0,"d":0,"c":0},{"w":1368316800,"a":0,"d":0,"c":0},{"w":1368921600,"a":0,"d":0,"c":0},{"w":1369526400,"a":0,"d":0,"c":0},{"w":1370131200,"a":0,"d":0,"c":0},{"w":1370736000,"a":0,"d":0,"c":0},{"w":1371340800,"a":0,"d":0,"c":0},{"w":1371945600,"a":0,"d":0,"c":0},{"w":1372550400,"a":0,"d":0,"c":0},{"w":1373155200,"a":0,"d":0,"c":0},{"w":1373760000,"a":0,"d":0,"c":0},{"w":1374364800,"a":0,"d":0,"c":0},{"w":1374969600,"a":0,"d":0,"c":0},{"w":1375574400,"a":0,"d":0,"c":0},{"w":1376179200,"a":0,"d":0,"c":0},{"w":1376784000,"a":0,"d":0,"c":0},{"w":1377388800,"a":0,"d":0,"c":0},{"w":1377993600,"a":0,"d":0,"c":0},{"w":1378598400,"a":0,"d":0,"c":0},{"w":1379203200,"a":0,"d":0,"c":0},{"w":1379808000,"a":0,"d":0,"c":0},{"w":1380412800,"a":0,"d":0,"c":0},{"w":1381017600,"a":0,"d":0,"c":0},{"w":1381622400,"a":0,"d":0,"c":0},{"w":1382227200,"a":0,"d":0,"c":0},{"w":1382832000,"a":0,"d":0,"c":0},{"w":1383436800,"a":0,"d":0,"c":0},{"w":1384041600,"a":0,"d":0,"c":0}],"author":{"login":"mwoodworth","id":606209,"avatar_url":"https://2.gravatar.com/avatar/fa8bf31f678044f65afb6c4c5a8ea542?d=https%3A%2F%2Fidenticons.github.com%2Fb5508fc77109ee7d5c9f4aaad993bf1a.png&r=x","gravatar_id":"fa8bf31f678044f65afb6c4c5a8ea542","url":"https://api.github.com/users/mwoodworth","html_url":"https://github.com/mwoodworth","followers_url":"https://api.github.com/users/mwoodworth/followers","following_url":"https://api.github.com/users/mwoodworth/following{/other_user}","gists_url":"https://api.github.com/users/mwoodworth/gists{/gist_id}","starred_url":"https://api.github.com/users/mwoodworth/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mwoodworth/subscriptions","organizations_url":"https://api.github.com/users/mwoodworth/orgs","repos_url":"https://api.github.com/users/mwoodworth/repos","events_url":"https://api.github.com/users/mwoodworth/events{/privacy}","received_events_url":"https://api.github.com/users/mwoodworth/received_events","type":"User","site_admin":false}},{"total":1,"weeks":[{"w":1329004800,"a":0,"d":0,"c":0},{"w":1329609600,"a":0,"d":0,"c":0},{"w":1330214400,"a":0,"d":0,"c":0},{"w":1330819200,"a":0,"d":0,"c":0},{"w":1331424000,"a":0,"d":0,"c":0},{"w":1332028800,"a":0,"d":0,"c":0},{"w":1332633600,"a":0,"d":0,"c":0},{"w":1333238400,"a":0,"d":0,"c":0},{"w":1333843200,"a":0,"d":0,"c":0},{"w":1334448000,"a":0,"d":0,"c":0},{"w":1335052800,"a":0,"d":0,"c":0},{"w":1335657600,"a":0,"d":0,"c":0},{"w":1336262400,"a":0,"d":0,"c":0},{"w":1336867200,"a":0,"d":0,"c":0},{"w":1337472000,"a":0,"d":0,"c":0},{"w":1338076800,"a":0,"d":0,"c":0},{"w":1338681600,"a":0,"d":0,"c":0},{"w":1339286400,"a":0,"d":0,"c":0},{"w":1339891200,"a":0,"d":0,"c":0},{"w":1340496000,"a":0,"d":0,"c":0},{"w":1341100800,"a":0,"d":0,"c":0},{"w":1341705600,"a":0,"d":0,"c":0},{"w":1342310400,"a":0,"d":0,"c":0},{"w":1342915200,"a":0,"d":0,"c":0},{"w":1343520000,"a":0,"d":0,"c":0},{"w":1344124800,"a":0,"d":0,"c":0},{"w":1344729600,"a":0,"d":0,"c":0},{"w":1345334400,"a":0,"d":0,"c":0},{"w":1345939200,"a":0,"d":0,"c":0},{"w":1346544000,"a":0,"d":0,"c":0},{"w":1347148800,"a":0,"d":0,"c":0},{"w":1347753600,"a":0,"d":0,"c":0},{"w":1348358400,"a":0,"d":0,"c":0},{"w":1348963200,"a":0,"d":0,"c":0},{"w":1349568000,"a":0,"d":0,"c":0},{"w":1350172800,"a":0,"d":0,"c":0},{"w":1350777600,"a":0,"d":0,"c":0},{"w":1351382400,"a":0,"d":0,"c":0},{"w":1351987200,"a":0,"d":0,"c":0},{"w":1352592000,"a":1,"d":1,"c":1},{"w":1353196800,"a":0,"d":0,"c":0},{"w":1353801600,"a":0,"d":0,"c":0},{"w":1354406400,"a":0,"d":0,"c":0},{"w":1355011200,"a":0,"d":0,"c":0},{"w":1355616000,"a":0,"d":0,"c":0},{"w":1356220800,"a":0,"d":0,"c":0},{"w":1356825600,"a":0,"d":0,"c":0},{"w":1357430400,"a":0,"d":0,"c":0},{"w":1358035200,"a":0,"d":0,"c":0},{"w":1358640000,"a":0,"d":0,"c":0},{"w":1359244800,"a":0,"d":0,"c":0},{"w":1359849600,"a":0,"d":0,"c":0},{"w":1360454400,"a":0,"d":0,"c":0},{"w":1361059200,"a":0,"d":0,"c":0},{"w":1361664000,"a":0,"d":0,"c":0},{"w":1362268800,"a":0,"d":0,"c":0},{"w":1362873600,"a":0,"d":0,"c":0},{"w":1363478400,"a":0,"d":0,"c":0},{"w":1364083200,"a":0,"d":0,"c":0},{"w":1364688000,"a":0,"d":0,"c":0},{"w":1365292800,"a":0,"d":0,"c":0},{"w":1365897600,"a":0,"d":0,"c":0},{"w":1366502400,"a":0,"d":0,"c":0},{"w":1367107200,"a":0,"d":0,"c":0},{"w":1367712000,"a":0,"d":0,"c":0},{"w":1368316800,"a":0,"d":0,"c":0},{"w":1368921600,"a":0,"d":0,"c":0},{"w":1369526400,"a":0,"d":0,"c":0},{"w":1370131200,"a":0,"d":0,"c":0},{"w":1370736000,"a":0,"d":0,"c":0},{"w":1371340800,"a":0,"d":0,"c":0},{"w":1371945600,"a":0,"d":0,"c":0},{"w":1372550400,"a":0,"d":0,"c":0},{"w":1373155200,"a":0,"d":0,"c":0},{"w":1373760000,"a":0,"d":0,"c":0},{"w":1374364800,"a":0,"d":0,"c":0},{"w":1374969600,"a":0,"d":0,"c":0},{"w":1375574400,"a":0,"d":0,"c":0},{"w":1376179200,"a":0,"d":0,"c":0},{"w":1376784000,"a":0,"d":0,"c":0},{"w":1377388800,"a":0,"d":0,"c":0},{"w":1377993600,"a":0,"d":0,"c":0},{"w":1378598400,"a":0,"d":0,"c":0},{"w":1379203200,"a":0,"d":0,"c":0},{"w":1379808000,"a":0,"d":0,"c":0},{"w":1380412800,"a":0,"d":0,"c":0},{"w":1381017600,"a":0,"d":0,"c":0},{"w":1381622400,"a":0,"d":0,"c":0},{"w":1382227200,"a":0,"d":0,"c":0},{"w":1382832000,"a":0,"d":0,"c":0},{"w":1383436800,"a":0,"d":0,"c":0},{"w":1384041600,"a":0,"d":0,"c":0}],"author":{"login":"tymofij","id":123786,"avatar_url":"https://0.gravatar.com/avatar/253b410d7a41999c754970a3aa34834e?d=https%3A%2F%2Fidenticons.github.com%2F28d97fe32c981d8f78111b37e796188a.png&r=x","gravatar_id":"253b410d7a41999c754970a3aa34834e","url":"https://api.github.com/users/tymofij","html_url":"https://github.com/tymofij","followers_url":"https://api.github.com/users/tymofij/followers","following_url":"https://api.github.com/users/tymofij/following{/other_user}","gists_url":"https://api.github.com/users/tymofij/gists{/gist_id}","starred_url":"https://api.github.com/users/tymofij/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tymofij/subscriptions","organizations_url":"https://api.github.com/users/tymofij/orgs","repos_url":"https://api.github.com/users/tymofij/repos","events_url":"https://api.github.com/users/tymofij/events{/privacy}","received_events_url":"https://api.github.com/users/tymofij/received_events","type":"User","site_admin":false}},{"total":2,"weeks":[{"w":1329004800,"a":0,"d":0,"c":0},{"w":1329609600,"a":0,"d":0,"c":0},{"w":1330214400,"a":0,"d":0,"c":0},{"w":1330819200,"a":0,"d":0,"c":0},{"w":1331424000,"a":0,"d":0,"c":0},{"w":1332028800,"a":0,"d":0,"c":0},{"w":1332633600,"a":0,"d":0,"c":0},{"w":1333238400,"a":0,"d":0,"c":0},{"w":1333843200,"a":0,"d":0,"c":0},{"w":1334448000,"a":0,"d":0,"c":0},{"w":1335052800,"a":0,"d":0,"c":0},{"w":1335657600,"a":0,"d":0,"c":0},{"w":1336262400,"a":0,"d":0,"c":0},{"w":1336867200,"a":0,"d":0,"c":0},{"w":1337472000,"a":0,"d":0,"c":0},{"w":1338076800,"a":0,"d":0,"c":0},{"w":1338681600,"a":0,"d":0,"c":0},{"w":1339286400,"a":0,"d":0,"c":0},{"w":1339891200,"a":0,"d":0,"c":0},{"w":1340496000,"a":0,"d":0,"c":0},{"w":1341100800,"a":0,"d":0,"c":0},{"w":1341705600,"a":0,"d":0,"c":0},{"w":1342310400,"a":0,"d":0,"c":0},{"w":1342915200,"a":0,"d":0,"c":0},{"w":1343520000,"a":0,"d":0,"c":0},{"w":1344124800,"a":0,"d":0,"c":0},{"w":1344729600,"a":0,"d":0,"c":0},{"w":1345334400,"a":0,"d":0,"c":0},{"w":1345939200,"a":0,"d":0,"c":0},{"w":1346544000,"a":0,"d":0,"c":0},{"w":1347148800,"a":0,"d":0,"c":0},{"w":1347753600,"a":0,"d":0,"c":0},{"w":1348358400,"a":0,"d":0,"c":0},{"w":1348963200,"a":0,"d":0,"c":0},{"w":1349568000,"a":0,"d":0,"c":0},{"w":1350172800,"a":0,"d":0,"c":0},{"w":1350777600,"a":0,"d":0,"c":0},{"w":1351382400,"a":0,"d":0,"c":0},{"w":1351987200,"a":0,"d":0,"c":0},{"w":1352592000,"a":0,"d":0,"c":0},{"w":1353196800,"a":0,"d":0,"c":0},{"w":1353801600,"a":0,"d":0,"c":0},{"w":1354406400,"a":0,"d":0,"c":0},{"w":1355011200,"a":0,"d":0,"c":0},{"w":1355616000,"a":0,"d":0,"c":0},{"w":1356220800,"a":0,"d":0,"c":0},{"w":1356825600,"a":0,"d":0,"c":0},{"w":1357430400,"a":0,"d":0,"c":0},{"w":1358035200,"a":0,"d":0,"c":0},{"w":1358640000,"a":0,"d":0,"c":0},{"w":1359244800,"a":0,"d":0,"c":0},{"w":1359849600,"a":0,"d":0,"c":0},{"w":1360454400,"a":0,"d":0,"c":0},{"w":1361059200,"a":0,"d":0,"c":0},{"w":1361664000,"a":0,"d":0,"c":0},{"w":1362268800,"a":0,"d":0,"c":0},{"w":1362873600,"a":0,"d":0,"c":0},{"w":1363478400,"a":0,"d":0,"c":0},{"w":1364083200,"a":0,"d":0,"c":0},{"w":1364688000,"a":0,"d":0,"c":0},{"w":1365292800,"a":0,"d":0,"c":0},{"w":1365897600,"a":0,"d":0,"c":0},{"w":1366502400,"a":0,"d":0,"c":0},{"w":1367107200,"a":0,"d":0,"c":0},{"w":1367712000,"a":0,"d":0,"c":0},{"w":1368316800,"a":0,"d":0,"c":0},{"w":1368921600,"a":0,"d":0,"c":0},{"w":1369526400,"a":0,"d":0,"c":0},{"w":1370131200,"a":0,"d":0,"c":0},{"w":1370736000,"a":0,"d":0,"c":0},{"w":1371340800,"a":10,"d":0,"c":1},{"w":1371945600,"a":0,"d":0,"c":0},{"w":1372550400,"a":0,"d":0,"c":0},{"w":1373155200,"a":0,"d":0,"c":0},{"w":1373760000,"a":4,"d":1,"c":1},{"w":1374364800,"a":0,"d":0,"c":0},{"w":1374969600,"a":0,"d":0,"c":0},{"w":1375574400,"a":0,"d":0,"c":0},{"w":1376179200,"a":0,"d":0,"c":0},{"w":1376784000,"a":0,"d":0,"c":0},{"w":1377388800,"a":0,"d":0,"c":0},{"w":1377993600,"a":0,"d":0,"c":0},{"w":1378598400,"a":0,"d":0,"c":0},{"w":1379203200,"a":0,"d":0,"c":0},{"w":1379808000,"a":0,"d":0,"c":0},{"w":1380412800,"a":0,"d":0,"c":0},{"w":1381017600,"a":0,"d":0,"c":0},{"w":1381622400,"a":0,"d":0,"c":0},{"w":1382227200,"a":0,"d":0,"c":0},{"w":1382832000,"a":0,"d":0,"c":0},{"w":1383436800,"a":0,"d":0,"c":0},{"w":1384041600,"a":0,"d":0,"c":0}],"author":{"login":"MarkRoddy","id":346362,"avatar_url":"https://1.gravatar.com/avatar/ac25b3f7bf1399399a6ad4cefea84bc6?d=https%3A%2F%2Fidenticons.github.com%2Fbede8b7e558b20a4e62f6e9ec2b4233c.png&r=x","gravatar_id":"ac25b3f7bf1399399a6ad4cefea84bc6","url":"https://api.github.com/users/MarkRoddy","html_url":"https://github.com/MarkRoddy","followers_url":"https://api.github.com/users/MarkRoddy/followers","following_url":"https://api.github.com/users/MarkRoddy/following{/other_user}","gists_url":"https://api.github.com/users/MarkRoddy/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkRoddy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkRoddy/subscriptions","organizations_url":"https://api.github.com/users/MarkRoddy/orgs","repos_url":"https://api.github.com/users/MarkRoddy/repos","events_url":"https://api.github.com/users/MarkRoddy/events{/privacy}","received_events_url":"https://api.github.com/users/MarkRoddy/received_events","type":"User","site_admin":false}},{"total":2,"weeks":[{"w":1329004800,"a":0,"d":0,"c":0},{"w":1329609600,"a":0,"d":0,"c":0},{"w":1330214400,"a":0,"d":0,"c":0},{"w":1330819200,"a":0,"d":0,"c":0},{"w":1331424000,"a":0,"d":0,"c":0},{"w":1332028800,"a":0,"d":0,"c":0},{"w":1332633600,"a":0,"d":0,"c":0},{"w":1333238400,"a":0,"d":0,"c":0},{"w":1333843200,"a":0,"d":0,"c":0},{"w":1334448000,"a":0,"d":0,"c":0},{"w":1335052800,"a":0,"d":0,"c":0},{"w":1335657600,"a":0,"d":0,"c":0},{"w":1336262400,"a":0,"d":0,"c":0},{"w":1336867200,"a":0,"d":0,"c":0},{"w":1337472000,"a":0,"d":0,"c":0},{"w":1338076800,"a":0,"d":0,"c":0},{"w":1338681600,"a":0,"d":0,"c":0},{"w":1339286400,"a":0,"d":0,"c":0},{"w":1339891200,"a":0,"d":0,"c":0},{"w":1340496000,"a":0,"d":0,"c":0},{"w":1341100800,"a":0,"d":0,"c":0},{"w":1341705600,"a":0,"d":0,"c":0},{"w":1342310400,"a":0,"d":0,"c":0},{"w":1342915200,"a":0,"d":0,"c":0},{"w":1343520000,"a":0,"d":0,"c":0},{"w":1344124800,"a":0,"d":0,"c":0},{"w":1344729600,"a":0,"d":0,"c":0},{"w":1345334400,"a":0,"d":0,"c":0},{"w":1345939200,"a":0,"d":0,"c":0},{"w":1346544000,"a":0,"d":0,"c":0},{"w":1347148800,"a":4,"d":4,"c":1},{"w":1347753600,"a":8,"d":1,"c":1},{"w":1348358400,"a":0,"d":0,"c":0},{"w":1348963200,"a":0,"d":0,"c":0},{"w":1349568000,"a":0,"d":0,"c":0},{"w":1350172800,"a":0,"d":0,"c":0},{"w":1350777600,"a":0,"d":0,"c":0},{"w":1351382400,"a":0,"d":0,"c":0},{"w":1351987200,"a":0,"d":0,"c":0},{"w":1352592000,"a":0,"d":0,"c":0},{"w":1353196800,"a":0,"d":0,"c":0},{"w":1353801600,"a":0,"d":0,"c":0},{"w":1354406400,"a":0,"d":0,"c":0},{"w":1355011200,"a":0,"d":0,"c":0},{"w":1355616000,"a":0,"d":0,"c":0},{"w":1356220800,"a":0,"d":0,"c":0},{"w":1356825600,"a":0,"d":0,"c":0},{"w":1357430400,"a":0,"d":0,"c":0},{"w":1358035200,"a":0,"d":0,"c":0},{"w":1358640000,"a":0,"d":0,"c":0},{"w":1359244800,"a":0,"d":0,"c":0},{"w":1359849600,"a":0,"d":0,"c":0},{"w":1360454400,"a":0,"d":0,"c":0},{"w":1361059200,"a":0,"d":0,"c":0},{"w":1361664000,"a":0,"d":0,"c":0},{"w":1362268800,"a":0,"d":0,"c":0},{"w":1362873600,"a":0,"d":0,"c":0},{"w":1363478400,"a":0,"d":0,"c":0},{"w":1364083200,"a":0,"d":0,"c":0},{"w":1364688000,"a":0,"d":0,"c":0},{"w":1365292800,"a":0,"d":0,"c":0},{"w":1365897600,"a":0,"d":0,"c":0},{"w":1366502400,"a":0,"d":0,"c":0},{"w":1367107200,"a":0,"d":0,"c":0},{"w":1367712000,"a":0,"d":0,"c":0},{"w":1368316800,"a":0,"d":0,"c":0},{"w":1368921600,"a":0,"d":0,"c":0},{"w":1369526400,"a":0,"d":0,"c":0},{"w":1370131200,"a":0,"d":0,"c":0},{"w":1370736000,"a":0,"d":0,"c":0},{"w":1371340800,"a":0,"d":0,"c":0},{"w":1371945600,"a":0,"d":0,"c":0},{"w":1372550400,"a":0,"d":0,"c":0},{"w":1373155200,"a":0,"d":0,"c":0},{"w":1373760000,"a":0,"d":0,"c":0},{"w":1374364800,"a":0,"d":0,"c":0},{"w":1374969600,"a":0,"d":0,"c":0},{"w":1375574400,"a":0,"d":0,"c":0},{"w":1376179200,"a":0,"d":0,"c":0},{"w":1376784000,"a":0,"d":0,"c":0},{"w":1377388800,"a":0,"d":0,"c":0},{"w":1377993600,"a":0,"d":0,"c":0},{"w":1378598400,"a":0,"d":0,"c":0},{"w":1379203200,"a":0,"d":0,"c":0},{"w":1379808000,"a":0,"d":0,"c":0},{"w":1380412800,"a":0,"d":0,"c":0},{"w":1381017600,"a":0,"d":0,"c":0},{"w":1381622400,"a":0,"d":0,"c":0},{"w":1382227200,"a":0,"d":0,"c":0},{"w":1382832000,"a":0,"d":0,"c":0},{"w":1383436800,"a":0,"d":0,"c":0},{"w":1384041600,"a":0,"d":0,"c":0}],"author":{"login":"quixotique","id":1477470,"avatar_url":"https://2.gravatar.com/avatar/806d200fb8f92bd618cc7063a3b62013?d=https%3A%2F%2Fidenticons.github.com%2Fc1ed715aaa8d11a2cb0bbc69d34c143d.png&r=x","gravatar_id":"806d200fb8f92bd618cc7063a3b62013","url":"https://api.github.com/users/quixotique","html_url":"https://github.com/quixotique","followers_url":"https://api.github.com/users/quixotique/followers","following_url":"https://api.github.com/users/quixotique/following{/other_user}","gists_url":"https://api.github.com/users/quixotique/gists{/gist_id}","starred_url":"https://api.github.com/users/quixotique/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/quixotique/subscriptions","organizations_url":"https://api.github.com/users/quixotique/orgs","repos_url":"https://api.github.com/users/quixotique/repos","events_url":"https://api.github.com/users/quixotique/events{/privacy}","received_events_url":"https://api.github.com/users/quixotique/received_events","type":"User","site_admin":false}},{"total":2,"weeks":[{"w":1329004800,"a":0,"d":0,"c":0},{"w":1329609600,"a":0,"d":0,"c":0},{"w":1330214400,"a":0,"d":0,"c":0},{"w":1330819200,"a":0,"d":0,"c":0},{"w":1331424000,"a":0,"d":0,"c":0},{"w":1332028800,"a":0,"d":0,"c":0},{"w":1332633600,"a":0,"d":0,"c":0},{"w":1333238400,"a":0,"d":0,"c":0},{"w":1333843200,"a":0,"d":0,"c":0},{"w":1334448000,"a":0,"d":0,"c":0},{"w":1335052800,"a":0,"d":0,"c":0},{"w":1335657600,"a":0,"d":0,"c":0},{"w":1336262400,"a":0,"d":0,"c":0},{"w":1336867200,"a":0,"d":0,"c":0},{"w":1337472000,"a":0,"d":0,"c":0},{"w":1338076800,"a":0,"d":0,"c":0},{"w":1338681600,"a":0,"d":0,"c":0},{"w":1339286400,"a":0,"d":0,"c":0},{"w":1339891200,"a":0,"d":0,"c":0},{"w":1340496000,"a":0,"d":0,"c":0},{"w":1341100800,"a":0,"d":0,"c":0},{"w":1341705600,"a":0,"d":0,"c":0},{"w":1342310400,"a":0,"d":0,"c":0},{"w":1342915200,"a":0,"d":0,"c":0},{"w":1343520000,"a":0,"d":0,"c":0},{"w":1344124800,"a":0,"d":0,"c":0},{"w":1344729600,"a":0,"d":0,"c":0},{"w":1345334400,"a":7,"d":5,"c":2},{"w":1345939200,"a":0,"d":0,"c":0},{"w":1346544000,"a":0,"d":0,"c":0},{"w":1347148800,"a":0,"d":0,"c":0},{"w":1347753600,"a":0,"d":0,"c":0},{"w":1348358400,"a":0,"d":0,"c":0},{"w":1348963200,"a":0,"d":0,"c":0},{"w":1349568000,"a":0,"d":0,"c":0},{"w":1350172800,"a":0,"d":0,"c":0},{"w":1350777600,"a":0,"d":0,"c":0},{"w":1351382400,"a":0,"d":0,"c":0},{"w":1351987200,"a":0,"d":0,"c":0},{"w":1352592000,"a":0,"d":0,"c":0},{"w":1353196800,"a":0,"d":0,"c":0},{"w":1353801600,"a":0,"d":0,"c":0},{"w":1354406400,"a":0,"d":0,"c":0},{"w":1355011200,"a":0,"d":0,"c":0},{"w":1355616000,"a":0,"d":0,"c":0},{"w":1356220800,"a":0,"d":0,"c":0},{"w":1356825600,"a":0,"d":0,"c":0},{"w":1357430400,"a":0,"d":0,"c":0},{"w":1358035200,"a":0,"d":0,"c":0},{"w":1358640000,"a":0,"d":0,"c":0},{"w":1359244800,"a":0,"d":0,"c":0},{"w":1359849600,"a":0,"d":0,"c":0},{"w":1360454400,"a":0,"d":0,"c":0},{"w":1361059200,"a":0,"d":0,"c":0},{"w":1361664000,"a":0,"d":0,"c":0},{"w":1362268800,"a":0,"d":0,"c":0},{"w":1362873600,"a":0,"d":0,"c":0},{"w":1363478400,"a":0,"d":0,"c":0},{"w":1364083200,"a":0,"d":0,"c":0},{"w":1364688000,"a":0,"d":0,"c":0},{"w":1365292800,"a":0,"d":0,"c":0},{"w":1365897600,"a":0,"d":0,"c":0},{"w":1366502400,"a":0,"d":0,"c":0},{"w":1367107200,"a":0,"d":0,"c":0},{"w":1367712000,"a":0,"d":0,"c":0},{"w":1368316800,"a":0,"d":0,"c":0},{"w":1368921600,"a":0,"d":0,"c":0},{"w":1369526400,"a":0,"d":0,"c":0},{"w":1370131200,"a":0,"d":0,"c":0},{"w":1370736000,"a":0,"d":0,"c":0},{"w":1371340800,"a":0,"d":0,"c":0},{"w":1371945600,"a":0,"d":0,"c":0},{"w":1372550400,"a":0,"d":0,"c":0},{"w":1373155200,"a":0,"d":0,"c":0},{"w":1373760000,"a":0,"d":0,"c":0},{"w":1374364800,"a":0,"d":0,"c":0},{"w":1374969600,"a":0,"d":0,"c":0},{"w":1375574400,"a":0,"d":0,"c":0},{"w":1376179200,"a":0,"d":0,"c":0},{"w":1376784000,"a":0,"d":0,"c":0},{"w":1377388800,"a":0,"d":0,"c":0},{"w":1377993600,"a":0,"d":0,"c":0},{"w":1378598400,"a":0,"d":0,"c":0},{"w":1379203200,"a":0,"d":0,"c":0},{"w":1379808000,"a":0,"d":0,"c":0},{"w":1380412800,"a":0,"d":0,"c":0},{"w":1381017600,"a":0,"d":0,"c":0},{"w":1381622400,"a":0,"d":0,"c":0},{"w":1382227200,"a":0,"d":0,"c":0},{"w":1382832000,"a":0,"d":0,"c":0},{"w":1383436800,"a":0,"d":0,"c":0},{"w":1384041600,"a":0,"d":0,"c":0}],"author":{"login":"xobb1t","id":344095,"avatar_url":"https://1.gravatar.com/avatar/ae8a2af3de601885a14bb71240e5d1a6?d=https%3A%2F%2Fidenticons.github.com%2Fe4df5371d23e44386065662dea04f5c7.png&r=x","gravatar_id":"ae8a2af3de601885a14bb71240e5d1a6","url":"https://api.github.com/users/xobb1t","html_url":"https://github.com/xobb1t","followers_url":"https://api.github.com/users/xobb1t/followers","following_url":"https://api.github.com/users/xobb1t/following{/other_user}","gists_url":"https://api.github.com/users/xobb1t/gists{/gist_id}","starred_url":"https://api.github.com/users/xobb1t/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/xobb1t/subscriptions","organizations_url":"https://api.github.com/users/xobb1t/orgs","repos_url":"https://api.github.com/users/xobb1t/repos","events_url":"https://api.github.com/users/xobb1t/events{/privacy}","received_events_url":"https://api.github.com/users/xobb1t/received_events","type":"User","site_admin":false}},{"total":2,"weeks":[{"w":1329004800,"a":0,"d":0,"c":0},{"w":1329609600,"a":0,"d":0,"c":0},{"w":1330214400,"a":0,"d":0,"c":0},{"w":1330819200,"a":0,"d":0,"c":0},{"w":1331424000,"a":0,"d":0,"c":0},{"w":1332028800,"a":0,"d":0,"c":0},{"w":1332633600,"a":0,"d":0,"c":0},{"w":1333238400,"a":0,"d":0,"c":0},{"w":1333843200,"a":0,"d":0,"c":0},{"w":1334448000,"a":0,"d":0,"c":0},{"w":1335052800,"a":0,"d":0,"c":0},{"w":1335657600,"a":0,"d":0,"c":0},{"w":1336262400,"a":0,"d":0,"c":0},{"w":1336867200,"a":0,"d":0,"c":0},{"w":1337472000,"a":0,"d":0,"c":0},{"w":1338076800,"a":0,"d":0,"c":0},{"w":1338681600,"a":0,"d":0,"c":0},{"w":1339286400,"a":0,"d":0,"c":0},{"w":1339891200,"a":0,"d":0,"c":0},{"w":1340496000,"a":0,"d":0,"c":0},{"w":1341100800,"a":0,"d":0,"c":0},{"w":1341705600,"a":0,"d":0,"c":0},{"w":1342310400,"a":0,"d":0,"c":0},{"w":1342915200,"a":0,"d":0,"c":0},{"w":1343520000,"a":0,"d":0,"c":0},{"w":1344124800,"a":0,"d":0,"c":0},{"w":1344729600,"a":0,"d":0,"c":0},{"w":1345334400,"a":0,"d":0,"c":0},{"w":1345939200,"a":0,"d":0,"c":0},{"w":1346544000,"a":0,"d":0,"c":0},{"w":1347148800,"a":0,"d":0,"c":0},{"w":1347753600,"a":0,"d":0,"c":0},{"w":1348358400,"a":0,"d":0,"c":0},{"w":1348963200,"a":0,"d":0,"c":0},{"w":1349568000,"a":0,"d":0,"c":0},{"w":1350172800,"a":0,"d":0,"c":0},{"w":1350777600,"a":0,"d":0,"c":0},{"w":1351382400,"a":9,"d":0,"c":1},{"w":1351987200,"a":0,"d":0,"c":0},{"w":1352592000,"a":0,"d":0,"c":0},{"w":1353196800,"a":0,"d":0,"c":0},{"w":1353801600,"a":0,"d":0,"c":0},{"w":1354406400,"a":0,"d":0,"c":0},{"w":1355011200,"a":0,"d":0,"c":0},{"w":1355616000,"a":0,"d":0,"c":0},{"w":1356220800,"a":0,"d":0,"c":0},{"w":1356825600,"a":0,"d":0,"c":0},{"w":1357430400,"a":0,"d":0,"c":0},{"w":1358035200,"a":0,"d":0,"c":0},{"w":1358640000,"a":0,"d":0,"c":0},{"w":1359244800,"a":0,"d":0,"c":0},{"w":1359849600,"a":0,"d":0,"c":0},{"w":1360454400,"a":0,"d":0,"c":0},{"w":1361059200,"a":0,"d":0,"c":0},{"w":1361664000,"a":0,"d":0,"c":0},{"w":1362268800,"a":0,"d":0,"c":0},{"w":1362873600,"a":0,"d":0,"c":0},{"w":1363478400,"a":0,"d":0,"c":0},{"w":1364083200,"a":0,"d":0,"c":0},{"w":1364688000,"a":0,"d":0,"c":0},{"w":1365292800,"a":0,"d":0,"c":0},{"w":1365897600,"a":0,"d":0,"c":0},{"w":1366502400,"a":0,"d":0,"c":0},{"w":1367107200,"a":0,"d":0,"c":0},{"w":1367712000,"a":0,"d":0,"c":0},{"w":1368316800,"a":0,"d":0,"c":0},{"w":1368921600,"a":0,"d":0,"c":0},{"w":1369526400,"a":24,"d":0,"c":1},{"w":1370131200,"a":0,"d":0,"c":0},{"w":1370736000,"a":0,"d":0,"c":0},{"w":1371340800,"a":0,"d":0,"c":0},{"w":1371945600,"a":0,"d":0,"c":0},{"w":1372550400,"a":0,"d":0,"c":0},{"w":1373155200,"a":0,"d":0,"c":0},{"w":1373760000,"a":0,"d":0,"c":0},{"w":1374364800,"a":0,"d":0,"c":0},{"w":1374969600,"a":0,"d":0,"c":0},{"w":1375574400,"a":0,"d":0,"c":0},{"w":1376179200,"a":0,"d":0,"c":0},{"w":1376784000,"a":0,"d":0,"c":0},{"w":1377388800,"a":0,"d":0,"c":0},{"w":1377993600,"a":0,"d":0,"c":0},{"w":1378598400,"a":0,"d":0,"c":0},{"w":1379203200,"a":0,"d":0,"c":0},{"w":1379808000,"a":0,"d":0,"c":0},{"w":1380412800,"a":0,"d":0,"c":0},{"w":1381017600,"a":0,"d":0,"c":0},{"w":1381622400,"a":0,"d":0,"c":0},{"w":1382227200,"a":0,"d":0,"c":0},{"w":1382832000,"a":0,"d":0,"c":0},{"w":1383436800,"a":0,"d":0,"c":0},{"w":1384041600,"a":0,"d":0,"c":0}],"author":{"login":"mstead","id":218800,"avatar_url":"https://1.gravatar.com/avatar/cff2de4d58af775ba0a07a5332b57889?d=https%3A%2F%2Fidenticons.github.com%2Fc19a94c62cb3b527793b785a90f9cacb.png&r=x","gravatar_id":"cff2de4d58af775ba0a07a5332b57889","url":"https://api.github.com/users/mstead","html_url":"https://github.com/mstead","followers_url":"https://api.github.com/users/mstead/followers","following_url":"https://api.github.com/users/mstead/following{/other_user}","gists_url":"https://api.github.com/users/mstead/gists{/gist_id}","starred_url":"https://api.github.com/users/mstead/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mstead/subscriptions","organizations_url":"https://api.github.com/users/mstead/orgs","repos_url":"https://api.github.com/users/mstead/repos","events_url":"https://api.github.com/users/mstead/events{/privacy}","received_events_url":"https://api.github.com/users/mstead/received_events","type":"User","site_admin":false}},{"total":3,"weeks":[{"w":1329004800,"a":0,"d":0,"c":0},{"w":1329609600,"a":0,"d":0,"c":0},{"w":1330214400,"a":0,"d":0,"c":0},{"w":1330819200,"a":0,"d":0,"c":0},{"w":1331424000,"a":0,"d":0,"c":0},{"w":1332028800,"a":0,"d":0,"c":0},{"w":1332633600,"a":0,"d":0,"c":0},{"w":1333238400,"a":0,"d":0,"c":0},{"w":1333843200,"a":0,"d":0,"c":0},{"w":1334448000,"a":0,"d":0,"c":0},{"w":1335052800,"a":0,"d":0,"c":0},{"w":1335657600,"a":0,"d":0,"c":0},{"w":1336262400,"a":0,"d":0,"c":0},{"w":1336867200,"a":0,"d":0,"c":0},{"w":1337472000,"a":0,"d":0,"c":0},{"w":1338076800,"a":0,"d":0,"c":0},{"w":1338681600,"a":0,"d":0,"c":0},{"w":1339286400,"a":0,"d":0,"c":0},{"w":1339891200,"a":0,"d":0,"c":0},{"w":1340496000,"a":0,"d":0,"c":0},{"w":1341100800,"a":0,"d":0,"c":0},{"w":1341705600,"a":0,"d":0,"c":0},{"w":1342310400,"a":0,"d":0,"c":0},{"w":1342915200,"a":0,"d":0,"c":0},{"w":1343520000,"a":0,"d":0,"c":0},{"w":1344124800,"a":0,"d":0,"c":0},{"w":1344729600,"a":0,"d":0,"c":0},{"w":1345334400,"a":0,"d":0,"c":0},{"w":1345939200,"a":0,"d":0,"c":0},{"w":1346544000,"a":0,"d":0,"c":0},{"w":1347148800,"a":0,"d":0,"c":0},{"w":1347753600,"a":0,"d":0,"c":0},{"w":1348358400,"a":0,"d":0,"c":0},{"w":1348963200,"a":0,"d":0,"c":0},{"w":1349568000,"a":0,"d":0,"c":0},{"w":1350172800,"a":0,"d":0,"c":0},{"w":1350777600,"a":0,"d":0,"c":0},{"w":1351382400,"a":0,"d":0,"c":0},{"w":1351987200,"a":0,"d":0,"c":0},{"w":1352592000,"a":0,"d":0,"c":0},{"w":1353196800,"a":0,"d":0,"c":0},{"w":1353801600,"a":0,"d":0,"c":0},{"w":1354406400,"a":0,"d":0,"c":0},{"w":1355011200,"a":0,"d":0,"c":0},{"w":1355616000,"a":0,"d":0,"c":0},{"w":1356220800,"a":0,"d":0,"c":0},{"w":1356825600,"a":0,"d":0,"c":0},{"w":1357430400,"a":0,"d":0,"c":0},{"w":1358035200,"a":0,"d":0,"c":0},{"w":1358640000,"a":0,"d":0,"c":0},{"w":1359244800,"a":0,"d":0,"c":0},{"w":1359849600,"a":0,"d":0,"c":0},{"w":1360454400,"a":0,"d":0,"c":0},{"w":1361059200,"a":0,"d":0,"c":0},{"w":1361664000,"a":0,"d":0,"c":0},{"w":1362268800,"a":0,"d":0,"c":0},{"w":1362873600,"a":0,"d":0,"c":0},{"w":1363478400,"a":0,"d":0,"c":0},{"w":1364083200,"a":0,"d":0,"c":0},{"w":1364688000,"a":0,"d":0,"c":0},{"w":1365292800,"a":0,"d":0,"c":0},{"w":1365897600,"a":0,"d":0,"c":0},{"w":1366502400,"a":7,"d":5,"c":3},{"w":1367107200,"a":0,"d":0,"c":0},{"w":1367712000,"a":0,"d":0,"c":0},{"w":1368316800,"a":0,"d":0,"c":0},{"w":1368921600,"a":0,"d":0,"c":0},{"w":1369526400,"a":0,"d":0,"c":0},{"w":1370131200,"a":0,"d":0,"c":0},{"w":1370736000,"a":0,"d":0,"c":0},{"w":1371340800,"a":0,"d":0,"c":0},{"w":1371945600,"a":0,"d":0,"c":0},{"w":1372550400,"a":0,"d":0,"c":0},{"w":1373155200,"a":0,"d":0,"c":0},{"w":1373760000,"a":0,"d":0,"c":0},{"w":1374364800,"a":0,"d":0,"c":0},{"w":1374969600,"a":0,"d":0,"c":0},{"w":1375574400,"a":0,"d":0,"c":0},{"w":1376179200,"a":0,"d":0,"c":0},{"w":1376784000,"a":0,"d":0,"c":0},{"w":1377388800,"a":0,"d":0,"c":0},{"w":1377993600,"a":0,"d":0,"c":0},{"w":1378598400,"a":0,"d":0,"c":0},{"w":1379203200,"a":0,"d":0,"c":0},{"w":1379808000,"a":0,"d":0,"c":0},{"w":1380412800,"a":0,"d":0,"c":0},{"w":1381017600,"a":0,"d":0,"c":0},{"w":1381622400,"a":0,"d":0,"c":0},{"w":1382227200,"a":0,"d":0,"c":0},{"w":1382832000,"a":0,"d":0,"c":0},{"w":1383436800,"a":0,"d":0,"c":0},{"w":1384041600,"a":0,"d":0,"c":0}],"author":{"login":"jjh42","id":371038,"avatar_url":"https://0.gravatar.com/avatar/cb8c9ca8f00c7885b3299be73808a6a6?d=https%3A%2F%2Fidenticons.github.com%2Fc9a9f59d82ed44b5a024b650785cb6c5.png&r=x","gravatar_id":"cb8c9ca8f00c7885b3299be73808a6a6","url":"https://api.github.com/users/jjh42","html_url":"https://github.com/jjh42","followers_url":"https://api.github.com/users/jjh42/followers","following_url":"https://api.github.com/users/jjh42/following{/other_user}","gists_url":"https://api.github.com/users/jjh42/gists{/gist_id}","starred_url":"https://api.github.com/users/jjh42/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jjh42/subscriptions","organizations_url":"https://api.github.com/users/jjh42/orgs","repos_url":"https://api.github.com/users/jjh42/repos","events_url":"https://api.github.com/users/jjh42/events{/privacy}","received_events_url":"https://api.github.com/users/jjh42/received_events","type":"User","site_admin":false}},{"total":5,"weeks":[{"w":1329004800,"a":0,"d":0,"c":0},{"w":1329609600,"a":0,"d":0,"c":0},{"w":1330214400,"a":0,"d":0,"c":0},{"w":1330819200,"a":0,"d":0,"c":0},{"w":1331424000,"a":0,"d":0,"c":0},{"w":1332028800,"a":0,"d":0,"c":0},{"w":1332633600,"a":0,"d":0,"c":0},{"w":1333238400,"a":0,"d":0,"c":0},{"w":1333843200,"a":0,"d":0,"c":0},{"w":1334448000,"a":0,"d":0,"c":0},{"w":1335052800,"a":0,"d":0,"c":0},{"w":1335657600,"a":0,"d":0,"c":0},{"w":1336262400,"a":0,"d":0,"c":0},{"w":1336867200,"a":0,"d":0,"c":0},{"w":1337472000,"a":0,"d":0,"c":0},{"w":1338076800,"a":0,"d":0,"c":0},{"w":1338681600,"a":0,"d":0,"c":0},{"w":1339286400,"a":0,"d":0,"c":0},{"w":1339891200,"a":0,"d":0,"c":0},{"w":1340496000,"a":0,"d":0,"c":0},{"w":1341100800,"a":0,"d":0,"c":0},{"w":1341705600,"a":0,"d":0,"c":0},{"w":1342310400,"a":0,"d":0,"c":0},{"w":1342915200,"a":0,"d":0,"c":0},{"w":1343520000,"a":0,"d":0,"c":0},{"w":1344124800,"a":0,"d":0,"c":0},{"w":1344729600,"a":0,"d":0,"c":0},{"w":1345334400,"a":0,"d":0,"c":0},{"w":1345939200,"a":0,"d":0,"c":0},{"w":1346544000,"a":0,"d":0,"c":0},{"w":1347148800,"a":0,"d":0,"c":0},{"w":1347753600,"a":0,"d":0,"c":0},{"w":1348358400,"a":0,"d":0,"c":0},{"w":1348963200,"a":0,"d":0,"c":0},{"w":1349568000,"a":0,"d":0,"c":0},{"w":1350172800,"a":0,"d":0,"c":0},{"w":1350777600,"a":0,"d":0,"c":0},{"w":1351382400,"a":0,"d":0,"c":0},{"w":1351987200,"a":0,"d":0,"c":0},{"w":1352592000,"a":0,"d":0,"c":0},{"w":1353196800,"a":0,"d":0,"c":0},{"w":1353801600,"a":0,"d":0,"c":0},{"w":1354406400,"a":0,"d":0,"c":0},{"w":1355011200,"a":0,"d":0,"c":0},{"w":1355616000,"a":0,"d":0,"c":0},{"w":1356220800,"a":0,"d":0,"c":0},{"w":1356825600,"a":0,"d":0,"c":0},{"w":1357430400,"a":0,"d":0,"c":0},{"w":1358035200,"a":0,"d":0,"c":0},{"w":1358640000,"a":0,"d":0,"c":0},{"w":1359244800,"a":0,"d":0,"c":0},{"w":1359849600,"a":0,"d":0,"c":0},{"w":1360454400,"a":0,"d":0,"c":0},{"w":1361059200,"a":0,"d":0,"c":0},{"w":1361664000,"a":0,"d":0,"c":0},{"w":1362268800,"a":0,"d":0,"c":0},{"w":1362873600,"a":0,"d":0,"c":0},{"w":1363478400,"a":0,"d":0,"c":0},{"w":1364083200,"a":0,"d":0,"c":0},{"w":1364688000,"a":0,"d":0,"c":0},{"w":1365292800,"a":0,"d":0,"c":0},{"w":1365897600,"a":0,"d":0,"c":0},{"w":1366502400,"a":0,"d":0,"c":0},{"w":1367107200,"a":0,"d":0,"c":0},{"w":1367712000,"a":0,"d":0,"c":0},{"w":1368316800,"a":0,"d":0,"c":0},{"w":1368921600,"a":0,"d":0,"c":0},{"w":1369526400,"a":0,"d":0,"c":0},{"w":1370131200,"a":0,"d":0,"c":0},{"w":1370736000,"a":0,"d":0,"c":0},{"w":1371340800,"a":12,"d":2,"c":1},{"w":1371945600,"a":0,"d":0,"c":0},{"w":1372550400,"a":0,"d":0,"c":0},{"w":1373155200,"a":0,"d":0,"c":0},{"w":1373760000,"a":0,"d":0,"c":0},{"w":1374364800,"a":0,"d":0,"c":0},{"w":1374969600,"a":127,"d":12,"c":4},{"w":1375574400,"a":0,"d":0,"c":0},{"w":1376179200,"a":0,"d":0,"c":0},{"w":1376784000,"a":0,"d":0,"c":0},{"w":1377388800,"a":0,"d":0,"c":0},{"w":1377993600,"a":0,"d":0,"c":0},{"w":1378598400,"a":0,"d":0,"c":0},{"w":1379203200,"a":0,"d":0,"c":0},{"w":1379808000,"a":0,"d":0,"c":0},{"w":1380412800,"a":0,"d":0,"c":0},{"w":1381017600,"a":0,"d":0,"c":0},{"w":1381622400,"a":0,"d":0,"c":0},{"w":1382227200,"a":0,"d":0,"c":0},{"w":1382832000,"a":0,"d":0,"c":0},{"w":1383436800,"a":0,"d":0,"c":0},{"w":1384041600,"a":0,"d":0,"c":0}],"author":{"login":"davidbrai","id":351026,"avatar_url":"https://0.gravatar.com/avatar/9578c2ff5952aa1ed1a4db215f20c286?d=https%3A%2F%2Fidenticons.github.com%2F59617ff4a420f7e310d16e097f2067ac.png&r=x","gravatar_id":"9578c2ff5952aa1ed1a4db215f20c286","url":"https://api.github.com/users/davidbrai","html_url":"https://github.com/davidbrai","followers_url":"https://api.github.com/users/davidbrai/followers","following_url":"https://api.github.com/users/davidbrai/following{/other_user}","gists_url":"https://api.github.com/users/davidbrai/gists{/gist_id}","starred_url":"https://api.github.com/users/davidbrai/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/davidbrai/subscriptions","organizations_url":"https://api.github.com/users/davidbrai/orgs","repos_url":"https://api.github.com/users/davidbrai/repos","events_url":"https://api.github.com/users/davidbrai/events{/privacy}","received_events_url":"https://api.github.com/users/davidbrai/received_events","type":"User","site_admin":false}},{"total":18,"weeks":[{"w":1329004800,"a":0,"d":0,"c":0},{"w":1329609600,"a":0,"d":0,"c":0},{"w":1330214400,"a":0,"d":0,"c":0},{"w":1330819200,"a":0,"d":0,"c":0},{"w":1331424000,"a":0,"d":0,"c":0},{"w":1332028800,"a":0,"d":0,"c":0},{"w":1332633600,"a":0,"d":0,"c":0},{"w":1333238400,"a":0,"d":0,"c":0},{"w":1333843200,"a":0,"d":0,"c":0},{"w":1334448000,"a":0,"d":0,"c":0},{"w":1335052800,"a":0,"d":0,"c":0},{"w":1335657600,"a":0,"d":0,"c":0},{"w":1336262400,"a":0,"d":0,"c":0},{"w":1336867200,"a":0,"d":0,"c":0},{"w":1337472000,"a":0,"d":0,"c":0},{"w":1338076800,"a":0,"d":0,"c":0},{"w":1338681600,"a":0,"d":0,"c":0},{"w":1339286400,"a":0,"d":0,"c":0},{"w":1339891200,"a":0,"d":0,"c":0},{"w":1340496000,"a":0,"d":0,"c":0},{"w":1341100800,"a":0,"d":0,"c":0},{"w":1341705600,"a":0,"d":0,"c":0},{"w":1342310400,"a":0,"d":0,"c":0},{"w":1342915200,"a":0,"d":0,"c":0},{"w":1343520000,"a":0,"d":0,"c":0},{"w":1344124800,"a":0,"d":0,"c":0},{"w":1344729600,"a":0,"d":0,"c":0},{"w":1345334400,"a":0,"d":0,"c":0},{"w":1345939200,"a":0,"d":0,"c":0},{"w":1346544000,"a":0,"d":0,"c":0},{"w":1347148800,"a":0,"d":0,"c":0},{"w":1347753600,"a":0,"d":0,"c":0},{"w":1348358400,"a":0,"d":0,"c":0},{"w":1348963200,"a":0,"d":0,"c":0},{"w":1349568000,"a":0,"d":0,"c":0},{"w":1350172800,"a":0,"d":0,"c":0},{"w":1350777600,"a":0,"d":0,"c":0},{"w":1351382400,"a":0,"d":0,"c":0},{"w":1351987200,"a":0,"d":0,"c":0},{"w":1352592000,"a":0,"d":0,"c":0},{"w":1353196800,"a":0,"d":0,"c":0},{"w":1353801600,"a":0,"d":0,"c":0},{"w":1354406400,"a":0,"d":0,"c":0},{"w":1355011200,"a":0,"d":0,"c":0},{"w":1355616000,"a":0,"d":0,"c":0},{"w":1356220800,"a":0,"d":0,"c":0},{"w":1356825600,"a":0,"d":0,"c":0},{"w":1357430400,"a":0,"d":0,"c":0},{"w":1358035200,"a":0,"d":0,"c":0},{"w":1358640000,"a":0,"d":0,"c":0},{"w":1359244800,"a":0,"d":0,"c":0},{"w":1359849600,"a":0,"d":0,"c":0},{"w":1360454400,"a":0,"d":0,"c":0},{"w":1361059200,"a":0,"d":0,"c":0},{"w":1361664000,"a":0,"d":0,"c":0},{"w":1362268800,"a":0,"d":0,"c":0},{"w":1362873600,"a":0,"d":0,"c":0},{"w":1363478400,"a":0,"d":0,"c":0},{"w":1364083200,"a":0,"d":0,"c":0},{"w":1364688000,"a":0,"d":0,"c":0},{"w":1365292800,"a":0,"d":0,"c":0},{"w":1365897600,"a":0,"d":0,"c":0},{"w":1366502400,"a":0,"d":0,"c":0},{"w":1367107200,"a":0,"d":0,"c":0},{"w":1367712000,"a":0,"d":0,"c":0},{"w":1368316800,"a":0,"d":0,"c":0},{"w":1368921600,"a":0,"d":0,"c":0},{"w":1369526400,"a":3,"d":3,"c":3},{"w":1370131200,"a":17,"d":17,"c":15},{"w":1370736000,"a":0,"d":0,"c":0},{"w":1371340800,"a":0,"d":0,"c":0},{"w":1371945600,"a":0,"d":0,"c":0},{"w":1372550400,"a":0,"d":0,"c":0},{"w":1373155200,"a":0,"d":0,"c":0},{"w":1373760000,"a":0,"d":0,"c":0},{"w":1374364800,"a":0,"d":0,"c":0},{"w":1374969600,"a":0,"d":0,"c":0},{"w":1375574400,"a":0,"d":0,"c":0},{"w":1376179200,"a":0,"d":0,"c":0},{"w":1376784000,"a":0,"d":0,"c":0},{"w":1377388800,"a":0,"d":0,"c":0},{"w":1377993600,"a":0,"d":0,"c":0},{"w":1378598400,"a":0,"d":0,"c":0},{"w":1379203200,"a":0,"d":0,"c":0},{"w":1379808000,"a":0,"d":0,"c":0},{"w":1380412800,"a":0,"d":0,"c":0},{"w":1381017600,"a":0,"d":0,"c":0},{"w":1381622400,"a":0,"d":0,"c":0},{"w":1382227200,"a":0,"d":0,"c":0},{"w":1382832000,"a":0,"d":0,"c":0},{"w":1383436800,"a":0,"d":0,"c":0},{"w":1384041600,"a":0,"d":0,"c":0}],"author":{"login":"martinqt","id":2557975,"avatar_url":"https://1.gravatar.com/avatar/182c0579e9458df4b939c1de0981e31c?d=https%3A%2F%2Fidenticons.github.com%2F24858b884a8b74bcce2b765a4f8e329e.png&r=x","gravatar_id":"182c0579e9458df4b939c1de0981e31c","url":"https://api.github.com/users/martinqt","html_url":"https://github.com/martinqt","followers_url":"https://api.github.com/users/martinqt/followers","following_url":"https://api.github.com/users/martinqt/following{/other_user}","gists_url":"https://api.github.com/users/martinqt/gists{/gist_id}","starred_url":"https://api.github.com/users/martinqt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/martinqt/subscriptions","organizations_url":"https://api.github.com/users/martinqt/orgs","repos_url":"https://api.github.com/users/martinqt/repos","events_url":"https://api.github.com/users/martinqt/events{/privacy}","received_events_url":"https://api.github.com/users/martinqt/received_events","type":"User","site_admin":false}},{"total":67,"weeks":[{"w":1329004800,"a":0,"d":0,"c":0},{"w":1329609600,"a":0,"d":0,"c":0},{"w":1330214400,"a":0,"d":0,"c":0},{"w":1330819200,"a":0,"d":0,"c":0},{"w":1331424000,"a":0,"d":0,"c":0},{"w":1332028800,"a":0,"d":0,"c":0},{"w":1332633600,"a":0,"d":0,"c":0},{"w":1333238400,"a":0,"d":0,"c":0},{"w":1333843200,"a":0,"d":0,"c":0},{"w":1334448000,"a":0,"d":0,"c":0},{"w":1335052800,"a":0,"d":0,"c":0},{"w":1335657600,"a":0,"d":0,"c":0},{"w":1336262400,"a":0,"d":0,"c":0},{"w":1336867200,"a":0,"d":0,"c":0},{"w":1337472000,"a":0,"d":0,"c":0},{"w":1338076800,"a":0,"d":0,"c":0},{"w":1338681600,"a":0,"d":0,"c":0},{"w":1339286400,"a":0,"d":0,"c":0},{"w":1339891200,"a":0,"d":0,"c":0},{"w":1340496000,"a":0,"d":0,"c":0},{"w":1341100800,"a":0,"d":0,"c":0},{"w":1341705600,"a":0,"d":0,"c":0},{"w":1342310400,"a":0,"d":0,"c":0},{"w":1342915200,"a":0,"d":0,"c":0},{"w":1343520000,"a":0,"d":0,"c":0},{"w":1344124800,"a":0,"d":0,"c":0},{"w":1344729600,"a":0,"d":0,"c":0},{"w":1345334400,"a":0,"d":0,"c":0},{"w":1345939200,"a":0,"d":0,"c":0},{"w":1346544000,"a":0,"d":0,"c":0},{"w":1347148800,"a":0,"d":0,"c":0},{"w":1347753600,"a":0,"d":0,"c":0},{"w":1348358400,"a":0,"d":0,"c":0},{"w":1348963200,"a":0,"d":0,"c":0},{"w":1349568000,"a":0,"d":0,"c":0},{"w":1350172800,"a":0,"d":0,"c":0},{"w":1350777600,"a":0,"d":0,"c":0},{"w":1351382400,"a":0,"d":0,"c":0},{"w":1351987200,"a":0,"d":0,"c":0},{"w":1352592000,"a":0,"d":0,"c":0},{"w":1353196800,"a":0,"d":0,"c":0},{"w":1353801600,"a":0,"d":0,"c":0},{"w":1354406400,"a":0,"d":0,"c":0},{"w":1355011200,"a":0,"d":0,"c":0},{"w":1355616000,"a":0,"d":0,"c":0},{"w":1356220800,"a":0,"d":0,"c":0},{"w":1356825600,"a":0,"d":0,"c":0},{"w":1357430400,"a":0,"d":0,"c":0},{"w":1358035200,"a":0,"d":0,"c":0},{"w":1358640000,"a":0,"d":0,"c":0},{"w":1359244800,"a":0,"d":0,"c":0},{"w":1359849600,"a":0,"d":0,"c":0},{"w":1360454400,"a":0,"d":0,"c":0},{"w":1361059200,"a":0,"d":0,"c":0},{"w":1361664000,"a":0,"d":0,"c":0},{"w":1362268800,"a":0,"d":0,"c":0},{"w":1362873600,"a":0,"d":0,"c":0},{"w":1363478400,"a":0,"d":0,"c":0},{"w":1364083200,"a":0,"d":0,"c":0},{"w":1364688000,"a":0,"d":0,"c":0},{"w":1365292800,"a":0,"d":0,"c":0},{"w":1365897600,"a":0,"d":0,"c":0},{"w":1366502400,"a":0,"d":0,"c":0},{"w":1367107200,"a":0,"d":0,"c":0},{"w":1367712000,"a":0,"d":0,"c":0},{"w":1368316800,"a":0,"d":0,"c":0},{"w":1368921600,"a":0,"d":0,"c":0},{"w":1369526400,"a":0,"d":0,"c":0},{"w":1370131200,"a":0,"d":0,"c":0},{"w":1370736000,"a":0,"d":0,"c":0},{"w":1371340800,"a":0,"d":0,"c":0},{"w":1371945600,"a":0,"d":0,"c":0},{"w":1372550400,"a":0,"d":0,"c":0},{"w":1373155200,"a":0,"d":0,"c":0},{"w":1373760000,"a":0,"d":0,"c":0},{"w":1374364800,"a":0,"d":0,"c":0},{"w":1374969600,"a":0,"d":0,"c":0},{"w":1375574400,"a":0,"d":0,"c":0},{"w":1376179200,"a":0,"d":0,"c":0},{"w":1376784000,"a":1108,"d":516,"c":67},{"w":1377388800,"a":0,"d":0,"c":0},{"w":1377993600,"a":0,"d":0,"c":0},{"w":1378598400,"a":0,"d":0,"c":0},{"w":1379203200,"a":0,"d":0,"c":0},{"w":1379808000,"a":0,"d":0,"c":0},{"w":1380412800,"a":0,"d":0,"c":0},{"w":1381017600,"a":0,"d":0,"c":0},{"w":1381622400,"a":0,"d":0,"c":0},{"w":1382227200,"a":0,"d":0,"c":0},{"w":1382832000,"a":0,"d":0,"c":0},{"w":1383436800,"a":0,"d":0,"c":0},{"w":1384041600,"a":0,"d":0,"c":0}],"author":{"login":"akfish","id":922715,"avatar_url":"https://2.gravatar.com/avatar/12a1b44d4e5c19cee59618084602b112?d=https%3A%2F%2Fidenticons.github.com%2F6eb90fb68a77fb5a5a997c6264bedf35.png&r=x","gravatar_id":"12a1b44d4e5c19cee59618084602b112","url":"https://api.github.com/users/akfish","html_url":"https://github.com/akfish","followers_url":"https://api.github.com/users/akfish/followers","following_url":"https://api.github.com/users/akfish/following{/other_user}","gists_url":"https://api.github.com/users/akfish/gists{/gist_id}","starred_url":"https://api.github.com/users/akfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akfish/subscriptions","organizations_url":"https://api.github.com/users/akfish/orgs","repos_url":"https://api.github.com/users/akfish/repos","events_url":"https://api.github.com/users/akfish/events{/privacy}","received_events_url":"https://api.github.com/users/akfish/received_events","type":"User","site_admin":false}},{"total":886,"weeks":[{"w":1329004800,"a":3853,"d":2098,"c":96},{"w":1329609600,"a":3005,"d":2120,"c":99},{"w":1330214400,"a":2969,"d":1502,"c":52},{"w":1330819200,"a":252,"d":26,"c":12},{"w":1331424000,"a":4823,"d":4569,"c":39},{"w":1332028800,"a":1846,"d":56,"c":12},{"w":1332633600,"a":130,"d":57,"c":5},{"w":1333238400,"a":0,"d":0,"c":0},{"w":1333843200,"a":0,"d":0,"c":0},{"w":1334448000,"a":31,"d":11,"c":4},{"w":1335052800,"a":0,"d":0,"c":0},{"w":1335657600,"a":23632,"d":7111,"c":28},{"w":1336262400,"a":29431,"d":30239,"c":64},{"w":1336867200,"a":1280,"d":397,"c":12},{"w":1337472000,"a":3016,"d":2064,"c":26},{"w":1338076800,"a":33188,"d":30815,"c":74},{"w":1338681600,"a":2531,"d":545,"c":6},{"w":1339286400,"a":6,"d":0,"c":1},{"w":1339891200,"a":13,"d":7,"c":3},{"w":1340496000,"a":719,"d":270,"c":12},{"w":1341100800,"a":0,"d":0,"c":0},{"w":1341705600,"a":353,"d":217,"c":11},{"w":1342310400,"a":0,"d":0,"c":0},{"w":1342915200,"a":644,"d":551,"c":4},{"w":1343520000,"a":423,"d":423,"c":4},{"w":1344124800,"a":0,"d":0,"c":0},{"w":1344729600,"a":0,"d":0,"c":0},{"w":1345334400,"a":56,"d":11,"c":2},{"w":1345939200,"a":0,"d":0,"c":0},{"w":1346544000,"a":2968,"d":162,"c":20},{"w":1347148800,"a":1576,"d":16315,"c":17},{"w":1347753600,"a":11680,"d":11277,"c":12},{"w":1348358400,"a":248,"d":189,"c":5},{"w":1348963200,"a":3,"d":3,"c":1},{"w":1349568000,"a":6,"d":11,"c":1},{"w":1350172800,"a":0,"d":0,"c":0},{"w":1350777600,"a":0,"d":0,"c":0},{"w":1351382400,"a":374,"d":230,"c":12},{"w":1351987200,"a":0,"d":0,"c":0},{"w":1352592000,"a":0,"d":0,"c":0},{"w":1353196800,"a":1788,"d":1765,"c":29},{"w":1353801600,"a":1251,"d":1221,"c":8},{"w":1354406400,"a":0,"d":0,"c":0},{"w":1355011200,"a":0,"d":0,"c":0},{"w":1355616000,"a":136,"d":7,"c":5},{"w":1356220800,"a":3551,"d":2797,"c":14},{"w":1356825600,"a":0,"d":0,"c":0},{"w":1357430400,"a":0,"d":0,"c":0},{"w":1358035200,"a":0,"d":0,"c":0},{"w":1358640000,"a":0,"d":0,"c":0},{"w":1359244800,"a":82,"d":11,"c":6},{"w":1359849600,"a":603,"d":292,"c":17},{"w":1360454400,"a":327,"d":240,"c":5},{"w":1361059200,"a":147,"d":74,"c":8},{"w":1361664000,"a":0,"d":0,"c":0},{"w":1362268800,"a":52,"d":7,"c":3},{"w":1362873600,"a":639,"d":444,"c":9},{"w":1363478400,"a":5290,"d":1029,"c":18},{"w":1364083200,"a":563,"d":287,"c":15},{"w":1364688000,"a":0,"d":0,"c":0},{"w":1365292800,"a":68,"d":4,"c":2},{"w":1365897600,"a":0,"d":0,"c":0},{"w":1366502400,"a":840,"d":753,"c":13},{"w":1367107200,"a":0,"d":0,"c":0},{"w":1367712000,"a":0,"d":0,"c":0},{"w":1368316800,"a":430,"d":29,"c":5},{"w":1368921600,"a":0,"d":0,"c":0},{"w":1369526400,"a":15,"d":9,"c":2},{"w":1370131200,"a":0,"d":0,"c":0},{"w":1370736000,"a":0,"d":0,"c":0},{"w":1371340800,"a":193,"d":3,"c":4},{"w":1371945600,"a":0,"d":0,"c":0},{"w":1372550400,"a":0,"d":0,"c":0},{"w":1373155200,"a":3062,"d":1701,"c":10},{"w":1373760000,"a":761,"d":1177,"c":9},{"w":1374364800,"a":0,"d":0,"c":0},{"w":1374969600,"a":0,"d":0,"c":0},{"w":1375574400,"a":0,"d":0,"c":0},{"w":1376179200,"a":0,"d":0,"c":0},{"w":1376784000,"a":874,"d":650,"c":36},{"w":1377388800,"a":0,"d":0,"c":0},{"w":1377993600,"a":3045,"d":659,"c":18},{"w":1378598400,"a":2183,"d":2373,"c":8},{"w":1379203200,"a":0,"d":0,"c":0},{"w":1379808000,"a":0,"d":0,"c":0},{"w":1380412800,"a":0,"d":0,"c":0},{"w":1381017600,"a":0,"d":0,"c":0},{"w":1381622400,"a":0,"d":0,"c":0},{"w":1382227200,"a":158,"d":225,"c":8},{"w":1382832000,"a":0,"d":0,"c":0},{"w":1383436800,"a":0,"d":0,"c":0},{"w":1384041600,"a":0,"d":0,"c":0}],"author":{"login":"jacquev6","id":327146,"avatar_url":"https://0.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https%3A%2F%2Fidenticons.github.com%2Ffadfb5f7088ef66579d198a3c9a4935e.png&r=x","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false}}] + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/stats/commit_activity +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4978'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '4C79374B:7847:2199F7C:52803017'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '2775'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('etag', '"988e31b23490922f86392de76ca453b9"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 11 Nov 2013 01:17:11 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1384134844')] +[{"days":[0,7,3,9,7,3,0],"total":29,"week":1353196800},{"days":[1,5,1,1,0,0,0],"total":8,"week":1353801600},{"days":[0,0,0,0,0,0,0],"total":0,"week":1354406400},{"days":[0,0,0,0,0,0,0],"total":0,"week":1355011200},{"days":[0,0,0,1,0,5,0],"total":6,"week":1355616000},{"days":[1,0,8,0,0,0,6],"total":15,"week":1356220800},{"days":[0,0,0,0,0,0,0],"total":0,"week":1356825600},{"days":[0,0,0,0,0,0,0],"total":0,"week":1357430400},{"days":[0,0,0,0,0,0,0],"total":0,"week":1358035200},{"days":[0,0,0,0,0,0,0],"total":0,"week":1358640000},{"days":[1,0,6,0,0,0,0],"total":7,"week":1359244800},{"days":[3,0,7,0,3,2,2],"total":17,"week":1359849600},{"days":[0,0,1,0,0,0,4],"total":5,"week":1360454400},{"days":[2,0,0,6,0,0,0],"total":8,"week":1361059200},{"days":[0,0,0,0,0,0,0],"total":0,"week":1361664000},{"days":[3,0,0,0,0,0,0],"total":3,"week":1362268800},{"days":[0,1,2,0,6,0,1],"total":10,"week":1362873600},{"days":[0,0,7,0,7,3,1],"total":18,"week":1363478400},{"days":[0,0,0,0,9,6,0],"total":15,"week":1364083200},{"days":[0,0,0,0,0,0,0],"total":0,"week":1364688000},{"days":[0,2,0,0,0,0,0],"total":2,"week":1365292800},{"days":[0,0,0,0,0,0,0],"total":0,"week":1365897600},{"days":[0,3,0,3,10,0,0],"total":16,"week":1366502400},{"days":[0,0,0,0,0,0,0],"total":0,"week":1367107200},{"days":[0,0,0,0,0,0,0],"total":0,"week":1367712000},{"days":[0,0,0,0,0,5,1],"total":6,"week":1368316800},{"days":[0,0,0,0,0,0,0],"total":0,"week":1368921600},{"days":[0,1,0,0,0,2,3],"total":6,"week":1369526400},{"days":[10,0,5,0,0,0,0],"total":15,"week":1370131200},{"days":[0,0,0,0,0,0,0],"total":0,"week":1370736000},{"days":[0,1,4,1,0,0,0],"total":6,"week":1371340800},{"days":[0,0,0,0,0,0,1],"total":1,"week":1371945600},{"days":[0,0,0,0,0,0,0],"total":0,"week":1372550400},{"days":[6,0,1,0,0,0,3],"total":10,"week":1373155200},{"days":[3,0,5,1,0,0,1],"total":10,"week":1373760000},{"days":[0,0,0,0,0,0,0],"total":0,"week":1374364800},{"days":[0,0,0,0,0,3,1],"total":4,"week":1374969600},{"days":[0,0,1,1,0,0,0],"total":2,"week":1375574400},{"days":[0,0,0,0,0,0,0],"total":0,"week":1376179200},{"days":[0,8,2,76,7,10,0],"total":103,"week":1376784000},{"days":[0,0,0,0,0,0,0],"total":0,"week":1377388800},{"days":[0,0,0,1,6,11,0],"total":18,"week":1377993600},{"days":[1,0,0,3,4,0,0],"total":8,"week":1378598400},{"days":[0,0,0,0,0,0,0],"total":0,"week":1379203200},{"days":[0,0,0,0,0,0,0],"total":0,"week":1379808000},{"days":[0,0,0,0,0,0,0],"total":0,"week":1380412800},{"days":[0,0,0,0,0,0,0],"total":0,"week":1381017600},{"days":[0,0,0,0,0,0,0],"total":0,"week":1381622400},{"days":[0,8,0,0,0,0,0],"total":8,"week":1382227200},{"days":[0,0,0,0,0,0,0],"total":0,"week":1382832000},{"days":[0,0,0,0,0,0,0],"total":0,"week":1383436800},{"days":[0,0,0,0,0,0,0],"total":0,"week":1384041600}] + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/stats/code_frequency +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4977'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '4C79374B:7848:2D63900:52803017'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '1844'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('etag', '"2a409951d08a22751ef211c1db5b468b"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 11 Nov 2013 01:17:11 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1384134844')] +[[1329004800,3853,-2098],[1329609600,3005,-2120],[1330214400,2969,-1502],[1330819200,252,-26],[1331424000,4823,-4569],[1332028800,1846,-56],[1332633600,130,-57],[1333238400,0,0],[1333843200,0,0],[1334448000,31,-11],[1335052800,0,0],[1335657600,23632,-7111],[1336262400,29431,-30239],[1336867200,1280,-397],[1337472000,3016,-2064],[1338076800,33188,-30815],[1338681600,2531,-545],[1339286400,6,0],[1339891200,18,-8],[1340496000,721,-272],[1341100800,0,0],[1341705600,353,-217],[1342310400,0,0],[1342915200,725,-609],[1343520000,423,-423],[1344124800,0,0],[1344729600,0,0],[1345334400,63,-16],[1345939200,0,0],[1346544000,2968,-162],[1347148800,1580,-16319],[1347753600,11688,-11278],[1348358400,248,-189],[1348963200,3,-3],[1349568000,6,-11],[1350172800,0,0],[1350777600,0,0],[1351382400,599,-230],[1351987200,14,-3],[1352592000,1,-1],[1353196800,1788,-1765],[1353801600,1251,-1221],[1354406400,0,0],[1355011200,0,0],[1355616000,146,-7],[1356220800,3557,-2799],[1356825600,0,0],[1357430400,0,0],[1358035200,0,0],[1358640000,0,0],[1359244800,83,-12],[1359849600,603,-292],[1360454400,327,-240],[1361059200,147,-74],[1361664000,0,0],[1362268800,52,-7],[1362873600,877,-444],[1363478400,5290,-1029],[1364083200,563,-287],[1364688000,0,0],[1365292800,68,-4],[1365897600,0,0],[1366502400,847,-758],[1367107200,0,0],[1367712000,0,0],[1368316800,433,-32],[1368921600,0,0],[1369526400,42,-12],[1370131200,17,-17],[1370736000,0,0],[1371340800,215,-5],[1371945600,17,-1],[1372550400,0,0],[1373155200,3062,-1701],[1373760000,765,-1178],[1374364800,0,0],[1374969600,127,-12],[1375574400,51,-4],[1376179200,0,0],[1376784000,1982,-1166],[1377388800,0,0],[1377993600,3045,-659],[1378598400,2183,-2373],[1379203200,0,0],[1379808000,0,0],[1380412800,0,0],[1381017600,0,0],[1381622400,0,0],[1382227200,158,-225],[1382832000,0,0],[1383436800,0,0],[1384041600,0,0]] + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/stats/participation +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4976'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '4C79374B:7844:5812FB:52803018'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '260'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('etag', '"a896655765faac08fb15ce0da319416c"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 11 Nov 2013 01:17:12 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1384134844')] +{"all":[4,36,8,0,0,10,20,0,0,0,0,11,20,6,9,0,4,14,21,16,0,3,0,20,0,0,8,1,9,16,1,15,1,0,12,12,0,4,6,15,116,20,20,11,0,0,0,0,0,10,0,0],"owner":[1,36,8,0,0,8,18,0,0,0,0,7,20,6,9,0,4,11,20,16,0,3,0,16,0,0,6,1,4,0,1,6,0,0,12,10,0,0,0,1,44,0,20,10,0,0,0,0,0,10,0,0]} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/stats/punch_card +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4975'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '4C79374B:7848:2D639AE:52803018'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '1490'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('etag', '"5174eef5c5760209664cb13e11e49b09"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 11 Nov 2013 01:17:12 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1384134844')] +[[0,0,0],[0,1,0],[0,2,1],[0,3,0],[0,4,0],[0,5,0],[0,6,3],[0,7,1],[0,8,8],[0,9,11],[0,10,18],[0,11,10],[0,12,13],[0,13,13],[0,14,12],[0,15,12],[0,16,6],[0,17,18],[0,18,12],[0,19,16],[0,20,17],[0,21,8],[0,22,8],[0,23,0],[1,0,1],[1,1,0],[1,2,0],[1,3,0],[1,4,0],[1,5,0],[1,6,0],[1,7,3],[1,8,5],[1,9,1],[1,10,0],[1,11,1],[1,12,0],[1,13,5],[1,14,6],[1,15,1],[1,16,0],[1,17,5],[1,18,5],[1,19,12],[1,20,10],[1,21,13],[1,22,15],[1,23,3],[2,0,0],[2,1,0],[2,2,0],[2,3,0],[2,4,0],[2,5,0],[2,6,0],[2,7,4],[2,8,5],[2,9,3],[2,10,9],[2,11,3],[2,12,1],[2,13,5],[2,14,1],[2,15,6],[2,16,0],[2,17,4],[2,18,13],[2,19,26],[2,20,16],[2,21,13],[2,22,13],[2,23,12],[3,0,2],[3,1,1],[3,2,0],[3,3,0],[3,4,0],[3,5,0],[3,6,2],[3,7,2],[3,8,1],[3,9,2],[3,10,0],[3,11,1],[3,12,5],[3,13,17],[3,14,11],[3,15,15],[3,16,11],[3,17,10],[3,18,29],[3,19,13],[3,20,17],[3,21,19],[3,22,5],[3,23,10],[4,0,1],[4,1,0],[4,2,0],[4,3,0],[4,4,0],[4,5,0],[4,6,0],[4,7,5],[4,8,2],[4,9,5],[4,10,7],[4,11,7],[4,12,7],[4,13,2],[4,14,1],[4,15,1],[4,16,0],[4,17,6],[4,18,19],[4,19,24],[4,20,16],[4,21,27],[4,22,21],[4,23,8],[5,0,2],[5,1,0],[5,2,0],[5,3,0],[5,4,0],[5,5,0],[5,6,0],[5,7,4],[5,8,3],[5,9,3],[5,10,2],[5,11,13],[5,12,7],[5,13,11],[5,14,16],[5,15,3],[5,16,3],[5,17,7],[5,18,13],[5,19,8],[5,20,6],[5,21,11],[5,22,3],[5,23,2],[6,0,0],[6,1,3],[6,2,0],[6,3,1],[6,4,7],[6,5,2],[6,6,0],[6,7,14],[6,8,23],[6,9,10],[6,10,18],[6,11,14],[6,12,7],[6,13,17],[6,14,7],[6,15,9],[6,16,4],[6,17,1],[6,18,2],[6,19,6],[6,20,0],[6,21,4],[6,22,1],[6,23,3]] + diff --git a/lib/github/tests/ReplayData/Repository.testStatisticsBeforeCaching.txt b/lib/github/tests/ReplayData/Repository.testStatisticsBeforeCaching.txt new file mode 100755 index 0000000000..41d0b84057 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testStatisticsBeforeCaching.txt @@ -0,0 +1,55 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/stats/contributors +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +202 +[('status', '202 Accepted'), ('x-ratelimit-remaining', '4965'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '4C79374B:3446:13B76A5:528030E9'), ('content-length', '2'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('access-control-allow-credentials', 'true'), ('date', 'Mon, 11 Nov 2013 01:20:42 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1384134844')] +{} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/stats/commit_activity +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +202 +[('status', '202 Accepted'), ('x-ratelimit-remaining', '4964'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '4C79374B:3448:429A229:528030EA'), ('content-length', '2'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('access-control-allow-credentials', 'true'), ('date', 'Mon, 11 Nov 2013 01:20:42 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1384134844')] +{} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/stats/code_frequency +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +202 +[('status', '202 Accepted'), ('x-ratelimit-remaining', '4963'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '4C79374B:3448:429A284:528030EA'), ('content-length', '2'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('access-control-allow-credentials', 'true'), ('date', 'Mon, 11 Nov 2013 01:20:42 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1384134844')] +{} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/stats/participation +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '202 Accepted'), ('x-ratelimit-remaining', '4962'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '4C79374B:3447:29BC88A:528030EB'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '260'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('etag', '"a896655765faac08fb15ce0da319416c"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 11 Nov 2013 01:20:43 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1384134844')] +{} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/stats/punch_card +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '202 Accepted'), ('x-ratelimit-remaining', '4961'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('x-github-request-id', '4C79374B:3448:429A33C:528030EB'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, Accept-Encoding'), ('content-length', '1490'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('etag', '"41cbe788b8174e5a98906512e68a825d"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 11 Nov 2013 01:20:43 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1384134844')] +{} + diff --git a/lib/github/tests/ReplayData/Repository.testSubscribePubSubHubbub.txt b/lib/github/tests/ReplayData/Repository.testSubscribePubSubHubbub.txt new file mode 100644 index 0000000000..564a0a5a80 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testSubscribePubSubHubbub.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/hub +{'Content-Type': 'multipart/form-data; boundary=----------------------------3c3ba8b523b2', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +------------------------------3c3ba8b523b2Content-Disposition: form-data; name="hub.callback"http://requestb.in/1bc1sc61------------------------------3c3ba8b523b2Content-Disposition: form-data; name="hub.topic"https://github.com/jacquev6/PyGithub/events/push------------------------------3c3ba8b523b2Content-Disposition: form-data; name="hub.mode"subscribe------------------------------3c3ba8b523b2Content-Disposition: form-data; name="hub.secret"my_secret------------------------------3c3ba8b523b2-- +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4997'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('server', 'GitHub.com'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('cache-control', ''), ('date', 'Tue, 05 Feb 2013 18:57:27 GMT')] + + diff --git a/lib/github/tests/ReplayData/Repository.testUnsubscribePubSubHubbub.txt b/lib/github/tests/ReplayData/Repository.testUnsubscribePubSubHubbub.txt new file mode 100644 index 0000000000..81f924692d --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testUnsubscribePubSubHubbub.txt @@ -0,0 +1,11 @@ +https +POST +api.github.com +None +/hub +{'Content-Type': 'multipart/form-data; boundary=----------------------------3c3ba8b523b2', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +------------------------------3c3ba8b523b2Content-Disposition: form-data; name="hub.callback"http://requestb.in/1bc1sc61------------------------------3c3ba8b523b2Content-Disposition: form-data; name="hub.topic"https://github.com/jacquev6/PyGithub/events/push------------------------------3c3ba8b523b2Content-Disposition: form-data; name="hub.mode"unsubscribe------------------------------3c3ba8b523b2-- +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4991'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('server', 'GitHub.com'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('cache-control', ''), ('date', 'Tue, 05 Feb 2013 18:58:12 GMT')] + + diff --git a/lib/github/tests/ReplayData/Repository.testUpdateFile.txt b/lib/github/tests/ReplayData/Repository.testUpdateFile.txt new file mode 100644 index 0000000000..81fb486090 --- /dev/null +++ b/lib/github/tests/ReplayData/Repository.testUpdateFile.txt @@ -0,0 +1,21 @@ +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/contents/doc/testCreateUpdateDeleteFile.md +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '16'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4997'), ('server', 'nginx/1.0.13'), ('last-modified', 'Wed, 05 Sep 2012 17:54:40 GMT'), ('connection', 'keep-alive'), ('etag', '"71786feb5f476112c5a8aa894ee7ca6c"'), ('cache-control', 'private, s-maxage=60, max-age=60'), ('date', 'Sat, 08 Sep 2012 10:43:48 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"file","sha":"5628799a7d517a4aaa0c1a7004d07569cd154df0","path":"doc/testCreateUpdateDeleteFile.md","encoding":"base64","_links":{"self":"https://api.github.com/repos/jacquev6/PyGithub/contents/doc/testCreateUpdateDeleteFile.md","html":"https://github.com/jacquev6/PyGithub/blob/master/doc/testCreateUpdateDeleteFile.md","git":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/5628799a7d517a4aaa0c1a7004d07569cd154df0"},"content":"SGVsbG8gd29ybGQ=","size":16,"name":"doc/testCreateUpdateDeleteFile.md"} + +https +PUT +api.github.com +None +/repos/jacquev6/PyGithub/contents/doc/testCreateUpdateDeleteFile.md +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"author": {"date": "2016-01-15T16:13:30+12:00", "email": "enix223@163.com", "name": "Enix Yu"}, "branch": "master", "committer": {"date": "2016-01-15T16:13:30+12:00", "email": "enix223@163.com", "name": "Enix Yu"}, "content": "SGVsbG8gV29ybGQ=", "message": "Update file for testUpdateFile", "sha": "5628799a7d517a4aaa0c1a7004d07569cd154df0"} +200 +[('status', '200 OK'), ('content-length', '16'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4997'), ('server', 'nginx/1.0.13'), ('last-modified', 'Wed, 05 Sep 2012 17:54:40 GMT'), ('connection', 'keep-alive'), ('etag', '"71786feb5f476112c5a8aa894ee7ca6c"'), ('cache-control', 'private, s-maxage=60, max-age=60'), ('date', 'Sat, 08 Sep 2012 10:43:48 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"content": {"name": "testCreateUpdateDeleteFile.md", "url": "https://api.github.com/repos/jacquev6/PyGithub/contents/doc/testCreateUpdateDeleteFile.md", "html_url": "https://github.com/jacquev6/PyGithub/blob/master/doc/testCreateUpdateDeleteFile.md", "download_url": "https://raw.githubusercontent.com/jacquev6/PyGithub/master/doc/testCreateUpdateDeleteFile.md", "sha": "95b966ae1c166bd92f8ae7d1c313e738c731dfc3", "_links": {"self": "https://api.github.com/repos/jacquev6/PyGithub/contents/doc/testCreateUpdateDeleteFile.md", "git": "https://api.github.com/repos/jacquev6/PyGithub/git/blobs/95b966ae1c166bd92f8ae7d1c313e738c731dfc3", "html": "https://github.com/jacquev6/PyGithub/blob/master/doc/testCreateUpdateDeleteFile.md"}, "git_url": "https://api.github.com/repos/jacquev6/PyGithub/git/blobs/95b966ae1c166bd92f8ae7d1c313e738c731dfc3", "path": "doc/testCreateUpdateDeleteFile.md", "type": "file", "size": 9}, "commit": {"committer": {"date": "2016-01-15T16:13:30+12:00", "name": "Enix Yu", "email": "enix223@gmail.com"}, "author": {"date": "2016-01-15T16:13:30+12:00", "name": "Enix Yu", "email": "enix223@gmail.com"}, "url": "https://api.github.com/repos/jacquev6/PyGithub/git/commits/7638417db6d59f3c431d3e1f261cc637155684cd", "tree": {"url": "https://api.github.com/repos/jacquev6/PyGithub/git/trees/691272480426f78a0138979dd3ce63b77f706feb", "sha": "691272480426f78a0138979dd3ce63b77f706feb"}, "html_url": "https://github.com/jacquev6/PyGithub/git/commit/7638417db6d59f3c431d3e1f261cc637155684cd", "sha": "7638417db6d59f3c431d3e1f261cc637155684cd", "parents": [{"url": "https://api.github.com/repos/jacquev6/PyGithub/git/commits/1acc419d4d6a9ce985db7be48c6349a0475975b5", "sha": "1acc419d4d6a9ce985db7be48c6349a0475975b5", "html_url": "https://github.com/jacquev6/PyGithub/git/commit/1acc419d4d6a9ce985db7be48c6349a0475975b5"}], "message": "my commit message"}} \ No newline at end of file diff --git a/lib/github/tests/ReplayData/RepositoryKey.setUp.txt b/lib/github/tests/ReplayData/RepositoryKey.setUp.txt new file mode 100644 index 0000000000..17d6d72c9b --- /dev/null +++ b/lib/github/tests/ReplayData/RepositoryKey.setUp.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4951'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"c9c1d83fa3d17bff8351444da9dedded"'), ('date', 'Sat, 26 May 2012 20:32:03 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","disk_usage":17080,"hireable":false,"url":"https://api.github.com/users/jacquev6","plan":{"private_repos":5,"name":"micro","collaborators":1,"space":614400},"bio":"","total_private_repos":5,"company":"Criteo","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","public_gists":3,"blog":"http://vincent-jacques.net","email":"vincent@vincent-jacques.net","owned_private_repos":5,"followers":13,"name":"Vincent Jacques","private_gists":5,"collaborators":0,"created_at":"2010-07-09T06:10:06Z","location":"Paris, France","id":327146,"public_repos":11,"following":24,"html_url":"https://github.com/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4950'), ('content-length', '1129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"8794d5a568156ccd5c5753bfeb793ba1"'), ('date', 'Sat, 26 May 2012 20:32:04 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"clone_url":"https://github.com/jacquev6/PyGithub.git","has_downloads":true,"watchers":14,"updated_at":"2012-05-26T18:33:41Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","mirror_url":null,"has_wiki":false,"has_issues":true,"fork":false,"forks":2,"size":412,"private":false,"open_issues":15,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-26T11:25:48Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"git_url":"git://github.com/jacquev6/PyGithub.git","html_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub"} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/keys/2626761 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4949'), ('content-length', '505'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"96af29920ad069b76bc64517998db752"'), ('date', 'Sat, 26 May 2012 20:32:04 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/user/keys/2626761","verified":true,"key":"ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA2Mm0RjTNAYFfSCtUpO54usdseroUSIYg5KX4JoseTpqyiB/hqewjYLAdUq/tNIQzrkoEJWSyZrQt0ma7/YCyMYuNGd3DU6q6ZAyBeY3E9RyCiKjO3aTL2VKQGFvBVVmGdxGVSCITRphAcsKc/PF35/fg9XP9S0anMXcEFtdfMHz41SSw+XtE+Vc+6cX9FuI5qUfLGbkv8L1v3g4uw9VXlzq4GfTA+1S7D6mcoGHopAIXFlVr+2RfDKdSURMcB22z41fljO1MW4+zUS/4FyUTpL991es5fcwKXYoiE+x06VJeJJ1Krwx+DZj45uweV6cHXt2JwJEI9fWB6WyBlDejWw==","title":"Key added through PyGithub","id":2626761} + diff --git a/lib/github/tests/ReplayData/RepositoryKey.testDelete.txt b/lib/github/tests/ReplayData/RepositoryKey.testDelete.txt new file mode 100644 index 0000000000..c4800a8a63 --- /dev/null +++ b/lib/github/tests/ReplayData/RepositoryKey.testDelete.txt @@ -0,0 +1,11 @@ +https +DELETE +api.github.com +None +/repos/jacquev6/PyGithub/keys/2626761 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4981'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sun, 27 May 2012 11:08:28 GMT')] + + diff --git a/lib/github/tests/ReplayData/RepositoryKey.testEdit.txt b/lib/github/tests/ReplayData/RepositoryKey.testEdit.txt new file mode 100644 index 0000000000..583b3e8874 --- /dev/null +++ b/lib/github/tests/ReplayData/RepositoryKey.testEdit.txt @@ -0,0 +1,11 @@ +https +PATCH +api.github.com +None +/repos/jacquev6/PyGithub/keys/2626761 +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"key": "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA5Q58YmzZjU64prR5Pk91MfeHezOTgLqDYmepYbv3qjguiHtPai1vSai5WvUv3hgf9DArXsXE5CV6yoBIhAdGtpJKExHuQ2m4XTFCdbrgfQ3ypcSdgzEiQemyTA6TWwhbuwjJ1IqJMYOVLH+FBCkD8pyIpUDO7v3vaR2TCEuNwOS7lbsRsW3OkGYnUKjaPaCTe/inrqb7I3OE8cPhWJ3dM/zzzBj22J4LCNKhjKua8TFS74xGm3lNDZ6/twQl4n4xmrH/3tG+WOJicNO3JohNHqK9T0pILnr3epEyfdkBjcG0qXApqWvH2WipJhaH6of8Gdr0Z/K/7p8QFddmwNgdPQ==", "title": "Title edited by PyGithub"} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4989'), ('content-length', '503'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"0e3fe92d1dde4f1bca0df384528bf1e2"'), ('date', 'Sun, 27 May 2012 11:06:26 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/user/keys/2626761","verified":true,"key":"ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA5Q58YmzZjU64prR5Pk91MfeHezOTgLqDYmepYbv3qjguiHtPai1vSai5WvUv3hgf9DArXsXE5CV6yoBIhAdGtpJKExHuQ2m4XTFCdbrgfQ3ypcSdgzEiQemyTA6TWwhbuwjJ1IqJMYOVLH+FBCkD8pyIpUDO7v3vaR2TCEuNwOS7lbsRsW3OkGYnUKjaPaCTe/inrqb7I3OE8cPhWJ3dM/zzzBj22J4LCNKhjKua8TFS74xGm3lNDZ6/twQl4n4xmrH/3tG+WOJicNO3JohNHqK9T0pILnr3epEyfdkBjcG0qXApqWvH2WipJhaH6of8Gdr0Z/K/7p8QFddmwNgdPQ==","title":"Title edited by PyGithub","id":2626761} + diff --git a/lib/github/tests/ReplayData/RepositoryKey.testEditWithoutParameters.txt b/lib/github/tests/ReplayData/RepositoryKey.testEditWithoutParameters.txt new file mode 100644 index 0000000000..d718d9f858 --- /dev/null +++ b/lib/github/tests/ReplayData/RepositoryKey.testEditWithoutParameters.txt @@ -0,0 +1,11 @@ +https +PATCH +api.github.com +None +/repos/jacquev6/PyGithub/keys/2626761 +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4985'), ('content-length', '503'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"ee6bf384c86aa3147ffa7fcde628072e"'), ('date', 'Sun, 27 May 2012 11:07:43 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/user/keys/2626761","key":"ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA5Q58YmzZjU64prR5Pk91MfeHezOTgLqDYmepYbv3qjguiHtPai1vSai5WvUv3hgf9DArXsXE5CV6yoBIhAdGtpJKExHuQ2m4XTFCdbrgfQ3ypcSdgzEiQemyTA6TWwhbuwjJ1IqJMYOVLH+FBCkD8pyIpUDO7v3vaR2TCEuNwOS7lbsRsW3OkGYnUKjaPaCTe/inrqb7I3OE8cPhWJ3dM/zzzBj22J4LCNKhjKua8TFS74xGm3lNDZ6/twQl4n4xmrH/3tG+WOJicNO3JohNHqK9T0pILnr3epEyfdkBjcG0qXApqWvH2WipJhaH6of8Gdr0Z/K/7p8QFddmwNgdPQ==","verified":true,"title":"Title edited by PyGithub","id":2626761} + diff --git a/lib/github/tests/ReplayData/Search.testGetPageOnSearchUsers.txt b/lib/github/tests/ReplayData/Search.testGetPageOnSearchUsers.txt new file mode 100644 index 0000000000..e1b545e8b7 --- /dev/null +++ b/lib/github/tests/ReplayData/Search.testGetPageOnSearchUsers.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/search/users?q=location%3ABerlin&page=8 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '29'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '62E81E32:3E9F:AB68A59:5314040F'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('content-length', '27301'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '30'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('cache-control', 'no-cache'), ('date', 'Mon, 03 Mar 2014 04:24:47 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1393820747')] +{"total_count":6038,"items":[{"login":"ursachec","id":497951,"avatar_url":"https://avatars.githubusercontent.com/u/497951","gravatar_id":"5d971653c5cc8eb4b13bb0149a7fbec8","url":"https://api.github.com/users/ursachec","html_url":"https://github.com/ursachec","followers_url":"https://api.github.com/users/ursachec/followers","following_url":"https://api.github.com/users/ursachec/following{/other_user}","gists_url":"https://api.github.com/users/ursachec/gists{/gist_id}","starred_url":"https://api.github.com/users/ursachec/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ursachec/subscriptions","organizations_url":"https://api.github.com/users/ursachec/orgs","repos_url":"https://api.github.com/users/ursachec/repos","events_url":"https://api.github.com/users/ursachec/events{/privacy}","received_events_url":"https://api.github.com/users/ursachec/received_events","type":"User","site_admin":false,"score":1.0},{"login":"bitboxer","id":56195,"avatar_url":"https://avatars.githubusercontent.com/u/56195","gravatar_id":"51968c9632cc07ab399cc32412ccbb98","url":"https://api.github.com/users/bitboxer","html_url":"https://github.com/bitboxer","followers_url":"https://api.github.com/users/bitboxer/followers","following_url":"https://api.github.com/users/bitboxer/following{/other_user}","gists_url":"https://api.github.com/users/bitboxer/gists{/gist_id}","starred_url":"https://api.github.com/users/bitboxer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bitboxer/subscriptions","organizations_url":"https://api.github.com/users/bitboxer/orgs","repos_url":"https://api.github.com/users/bitboxer/repos","events_url":"https://api.github.com/users/bitboxer/events{/privacy}","received_events_url":"https://api.github.com/users/bitboxer/received_events","type":"User","site_admin":false,"score":1.0},{"login":"fs111","id":33631,"avatar_url":"https://avatars.githubusercontent.com/u/33631","gravatar_id":"6da3d4048a89eae74e790545d08ff687","url":"https://api.github.com/users/fs111","html_url":"https://github.com/fs111","followers_url":"https://api.github.com/users/fs111/followers","following_url":"https://api.github.com/users/fs111/following{/other_user}","gists_url":"https://api.github.com/users/fs111/gists{/gist_id}","starred_url":"https://api.github.com/users/fs111/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fs111/subscriptions","organizations_url":"https://api.github.com/users/fs111/orgs","repos_url":"https://api.github.com/users/fs111/repos","events_url":"https://api.github.com/users/fs111/events{/privacy}","received_events_url":"https://api.github.com/users/fs111/received_events","type":"User","site_admin":false,"score":1.0},{"login":"michenriksen","id":304361,"avatar_url":"https://avatars.githubusercontent.com/u/304361","gravatar_id":"7c0502249dda76254c701c5e1137a0aa","url":"https://api.github.com/users/michenriksen","html_url":"https://github.com/michenriksen","followers_url":"https://api.github.com/users/michenriksen/followers","following_url":"https://api.github.com/users/michenriksen/following{/other_user}","gists_url":"https://api.github.com/users/michenriksen/gists{/gist_id}","starred_url":"https://api.github.com/users/michenriksen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/michenriksen/subscriptions","organizations_url":"https://api.github.com/users/michenriksen/orgs","repos_url":"https://api.github.com/users/michenriksen/repos","events_url":"https://api.github.com/users/michenriksen/events{/privacy}","received_events_url":"https://api.github.com/users/michenriksen/received_events","type":"User","site_admin":false,"score":1.0},{"login":"witsch","id":62399,"avatar_url":"https://avatars.githubusercontent.com/u/62399","gravatar_id":"7cf2293059661ac8866757f9fcc6da34","url":"https://api.github.com/users/witsch","html_url":"https://github.com/witsch","followers_url":"https://api.github.com/users/witsch/followers","following_url":"https://api.github.com/users/witsch/following{/other_user}","gists_url":"https://api.github.com/users/witsch/gists{/gist_id}","starred_url":"https://api.github.com/users/witsch/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/witsch/subscriptions","organizations_url":"https://api.github.com/users/witsch/orgs","repos_url":"https://api.github.com/users/witsch/repos","events_url":"https://api.github.com/users/witsch/events{/privacy}","received_events_url":"https://api.github.com/users/witsch/received_events","type":"User","site_admin":false,"score":1.0},{"login":"booo","id":424513,"avatar_url":"https://avatars.githubusercontent.com/u/424513","gravatar_id":"6febfecfcdb7f473a82e9383bd9772fb","url":"https://api.github.com/users/booo","html_url":"https://github.com/booo","followers_url":"https://api.github.com/users/booo/followers","following_url":"https://api.github.com/users/booo/following{/other_user}","gists_url":"https://api.github.com/users/booo/gists{/gist_id}","starred_url":"https://api.github.com/users/booo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/booo/subscriptions","organizations_url":"https://api.github.com/users/booo/orgs","repos_url":"https://api.github.com/users/booo/repos","events_url":"https://api.github.com/users/booo/events{/privacy}","received_events_url":"https://api.github.com/users/booo/received_events","type":"User","site_admin":false,"score":1.0},{"login":"mortice","id":60826,"avatar_url":"https://avatars.githubusercontent.com/u/60826","gravatar_id":"adcd8d8f37a83e7ed102cd1df3e95298","url":"https://api.github.com/users/mortice","html_url":"https://github.com/mortice","followers_url":"https://api.github.com/users/mortice/followers","following_url":"https://api.github.com/users/mortice/following{/other_user}","gists_url":"https://api.github.com/users/mortice/gists{/gist_id}","starred_url":"https://api.github.com/users/mortice/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mortice/subscriptions","organizations_url":"https://api.github.com/users/mortice/orgs","repos_url":"https://api.github.com/users/mortice/repos","events_url":"https://api.github.com/users/mortice/events{/privacy}","received_events_url":"https://api.github.com/users/mortice/received_events","type":"User","site_admin":false,"score":1.0},{"login":"r0man","id":21566,"avatar_url":"https://avatars.githubusercontent.com/u/21566","gravatar_id":"d934ff33907d9f03a1ffc2a88cb9e1af","url":"https://api.github.com/users/r0man","html_url":"https://github.com/r0man","followers_url":"https://api.github.com/users/r0man/followers","following_url":"https://api.github.com/users/r0man/following{/other_user}","gists_url":"https://api.github.com/users/r0man/gists{/gist_id}","starred_url":"https://api.github.com/users/r0man/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/r0man/subscriptions","organizations_url":"https://api.github.com/users/r0man/orgs","repos_url":"https://api.github.com/users/r0man/repos","events_url":"https://api.github.com/users/r0man/events{/privacy}","received_events_url":"https://api.github.com/users/r0man/received_events","type":"User","site_admin":false,"score":1.0},{"login":"MikeBild","id":179382,"avatar_url":"https://avatars.githubusercontent.com/u/179382","gravatar_id":"15b3eec086d1a876111411537ffa8413","url":"https://api.github.com/users/MikeBild","html_url":"https://github.com/MikeBild","followers_url":"https://api.github.com/users/MikeBild/followers","following_url":"https://api.github.com/users/MikeBild/following{/other_user}","gists_url":"https://api.github.com/users/MikeBild/gists{/gist_id}","starred_url":"https://api.github.com/users/MikeBild/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MikeBild/subscriptions","organizations_url":"https://api.github.com/users/MikeBild/orgs","repos_url":"https://api.github.com/users/MikeBild/repos","events_url":"https://api.github.com/users/MikeBild/events{/privacy}","received_events_url":"https://api.github.com/users/MikeBild/received_events","type":"User","site_admin":false,"score":1.0},{"login":"mhagger","id":119718,"avatar_url":"https://avatars.githubusercontent.com/u/119718","gravatar_id":"67d45b2f8a93ea8131342d196f27be99","url":"https://api.github.com/users/mhagger","html_url":"https://github.com/mhagger","followers_url":"https://api.github.com/users/mhagger/followers","following_url":"https://api.github.com/users/mhagger/following{/other_user}","gists_url":"https://api.github.com/users/mhagger/gists{/gist_id}","starred_url":"https://api.github.com/users/mhagger/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mhagger/subscriptions","organizations_url":"https://api.github.com/users/mhagger/orgs","repos_url":"https://api.github.com/users/mhagger/repos","events_url":"https://api.github.com/users/mhagger/events{/privacy}","received_events_url":"https://api.github.com/users/mhagger/received_events","type":"User","site_admin":true,"score":1.0},{"login":"bkw","id":60910,"avatar_url":"https://avatars.githubusercontent.com/u/60910","gravatar_id":"ba794f1084b2a876705e2679c197c630","url":"https://api.github.com/users/bkw","html_url":"https://github.com/bkw","followers_url":"https://api.github.com/users/bkw/followers","following_url":"https://api.github.com/users/bkw/following{/other_user}","gists_url":"https://api.github.com/users/bkw/gists{/gist_id}","starred_url":"https://api.github.com/users/bkw/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bkw/subscriptions","organizations_url":"https://api.github.com/users/bkw/orgs","repos_url":"https://api.github.com/users/bkw/repos","events_url":"https://api.github.com/users/bkw/events{/privacy}","received_events_url":"https://api.github.com/users/bkw/received_events","type":"User","site_admin":false,"score":1.0},{"login":"fwbrasil","id":831175,"avatar_url":"https://avatars.githubusercontent.com/u/831175","gravatar_id":"3a2dbcd6a4b28903a6a39a5a9c00f0bb","url":"https://api.github.com/users/fwbrasil","html_url":"https://github.com/fwbrasil","followers_url":"https://api.github.com/users/fwbrasil/followers","following_url":"https://api.github.com/users/fwbrasil/following{/other_user}","gists_url":"https://api.github.com/users/fwbrasil/gists{/gist_id}","starred_url":"https://api.github.com/users/fwbrasil/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fwbrasil/subscriptions","organizations_url":"https://api.github.com/users/fwbrasil/orgs","repos_url":"https://api.github.com/users/fwbrasil/repos","events_url":"https://api.github.com/users/fwbrasil/events{/privacy}","received_events_url":"https://api.github.com/users/fwbrasil/received_events","type":"User","site_admin":false,"score":1.0},{"login":"mschneider","id":144124,"avatar_url":"https://avatars.githubusercontent.com/u/144124","gravatar_id":"d6fcf10b07508fa819e43598a9364016","url":"https://api.github.com/users/mschneider","html_url":"https://github.com/mschneider","followers_url":"https://api.github.com/users/mschneider/followers","following_url":"https://api.github.com/users/mschneider/following{/other_user}","gists_url":"https://api.github.com/users/mschneider/gists{/gist_id}","starred_url":"https://api.github.com/users/mschneider/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mschneider/subscriptions","organizations_url":"https://api.github.com/users/mschneider/orgs","repos_url":"https://api.github.com/users/mschneider/repos","events_url":"https://api.github.com/users/mschneider/events{/privacy}","received_events_url":"https://api.github.com/users/mschneider/received_events","type":"User","site_admin":false,"score":1.0},{"login":"lydiapintscher","id":550412,"avatar_url":"https://avatars.githubusercontent.com/u/550412","gravatar_id":"a3e09b63b153e2138fd56928544a0901","url":"https://api.github.com/users/lydiapintscher","html_url":"https://github.com/lydiapintscher","followers_url":"https://api.github.com/users/lydiapintscher/followers","following_url":"https://api.github.com/users/lydiapintscher/following{/other_user}","gists_url":"https://api.github.com/users/lydiapintscher/gists{/gist_id}","starred_url":"https://api.github.com/users/lydiapintscher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lydiapintscher/subscriptions","organizations_url":"https://api.github.com/users/lydiapintscher/orgs","repos_url":"https://api.github.com/users/lydiapintscher/repos","events_url":"https://api.github.com/users/lydiapintscher/events{/privacy}","received_events_url":"https://api.github.com/users/lydiapintscher/received_events","type":"User","site_admin":false,"score":1.0},{"login":"asksven","id":891487,"avatar_url":"https://avatars.githubusercontent.com/u/891487","gravatar_id":"068ef694daab72710635a5f60d5fd08b","url":"https://api.github.com/users/asksven","html_url":"https://github.com/asksven","followers_url":"https://api.github.com/users/asksven/followers","following_url":"https://api.github.com/users/asksven/following{/other_user}","gists_url":"https://api.github.com/users/asksven/gists{/gist_id}","starred_url":"https://api.github.com/users/asksven/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/asksven/subscriptions","organizations_url":"https://api.github.com/users/asksven/orgs","repos_url":"https://api.github.com/users/asksven/repos","events_url":"https://api.github.com/users/asksven/events{/privacy}","received_events_url":"https://api.github.com/users/asksven/received_events","type":"User","site_admin":false,"score":1.0},{"login":"iamtimm","id":2601332,"avatar_url":"https://avatars.githubusercontent.com/u/2601332","gravatar_id":"7d1da2510e4628fd4a4650eee2d01747","url":"https://api.github.com/users/iamtimm","html_url":"https://github.com/iamtimm","followers_url":"https://api.github.com/users/iamtimm/followers","following_url":"https://api.github.com/users/iamtimm/following{/other_user}","gists_url":"https://api.github.com/users/iamtimm/gists{/gist_id}","starred_url":"https://api.github.com/users/iamtimm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/iamtimm/subscriptions","organizations_url":"https://api.github.com/users/iamtimm/orgs","repos_url":"https://api.github.com/users/iamtimm/repos","events_url":"https://api.github.com/users/iamtimm/events{/privacy}","received_events_url":"https://api.github.com/users/iamtimm/received_events","type":"User","site_admin":false,"score":1.0},{"login":"sneak","id":408977,"avatar_url":"https://avatars.githubusercontent.com/u/408977","gravatar_id":"c8d86b06ffa43423112215dc8c2a86c4","url":"https://api.github.com/users/sneak","html_url":"https://github.com/sneak","followers_url":"https://api.github.com/users/sneak/followers","following_url":"https://api.github.com/users/sneak/following{/other_user}","gists_url":"https://api.github.com/users/sneak/gists{/gist_id}","starred_url":"https://api.github.com/users/sneak/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sneak/subscriptions","organizations_url":"https://api.github.com/users/sneak/orgs","repos_url":"https://api.github.com/users/sneak/repos","events_url":"https://api.github.com/users/sneak/events{/privacy}","received_events_url":"https://api.github.com/users/sneak/received_events","type":"User","site_admin":false,"score":1.0},{"login":"kr1sp1n","id":64247,"avatar_url":"https://avatars.githubusercontent.com/u/64247","gravatar_id":"d390a0b22b684675c6127d81b025f94e","url":"https://api.github.com/users/kr1sp1n","html_url":"https://github.com/kr1sp1n","followers_url":"https://api.github.com/users/kr1sp1n/followers","following_url":"https://api.github.com/users/kr1sp1n/following{/other_user}","gists_url":"https://api.github.com/users/kr1sp1n/gists{/gist_id}","starred_url":"https://api.github.com/users/kr1sp1n/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kr1sp1n/subscriptions","organizations_url":"https://api.github.com/users/kr1sp1n/orgs","repos_url":"https://api.github.com/users/kr1sp1n/repos","events_url":"https://api.github.com/users/kr1sp1n/events{/privacy}","received_events_url":"https://api.github.com/users/kr1sp1n/received_events","type":"User","site_admin":false,"score":1.0},{"login":"Feh","id":175304,"avatar_url":"https://avatars.githubusercontent.com/u/175304","gravatar_id":"5e7c02ac35afb08e9caf01a85ce2a2eb","url":"https://api.github.com/users/Feh","html_url":"https://github.com/Feh","followers_url":"https://api.github.com/users/Feh/followers","following_url":"https://api.github.com/users/Feh/following{/other_user}","gists_url":"https://api.github.com/users/Feh/gists{/gist_id}","starred_url":"https://api.github.com/users/Feh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Feh/subscriptions","organizations_url":"https://api.github.com/users/Feh/orgs","repos_url":"https://api.github.com/users/Feh/repos","events_url":"https://api.github.com/users/Feh/events{/privacy}","received_events_url":"https://api.github.com/users/Feh/received_events","type":"User","site_admin":false,"score":1.0},{"login":"GordonLesti","id":1677744,"avatar_url":"https://avatars.githubusercontent.com/u/1677744","gravatar_id":"1a3cb8af5f5c0874ec777febdb606d6f","url":"https://api.github.com/users/GordonLesti","html_url":"https://github.com/GordonLesti","followers_url":"https://api.github.com/users/GordonLesti/followers","following_url":"https://api.github.com/users/GordonLesti/following{/other_user}","gists_url":"https://api.github.com/users/GordonLesti/gists{/gist_id}","starred_url":"https://api.github.com/users/GordonLesti/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/GordonLesti/subscriptions","organizations_url":"https://api.github.com/users/GordonLesti/orgs","repos_url":"https://api.github.com/users/GordonLesti/repos","events_url":"https://api.github.com/users/GordonLesti/events{/privacy}","received_events_url":"https://api.github.com/users/GordonLesti/received_events","type":"User","site_admin":false,"score":1.0},{"login":"annismckenzie","id":16936,"avatar_url":"https://avatars.githubusercontent.com/u/16936","gravatar_id":"d54c62322c39f914fb2ec6a31df5f314","url":"https://api.github.com/users/annismckenzie","html_url":"https://github.com/annismckenzie","followers_url":"https://api.github.com/users/annismckenzie/followers","following_url":"https://api.github.com/users/annismckenzie/following{/other_user}","gists_url":"https://api.github.com/users/annismckenzie/gists{/gist_id}","starred_url":"https://api.github.com/users/annismckenzie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/annismckenzie/subscriptions","organizations_url":"https://api.github.com/users/annismckenzie/orgs","repos_url":"https://api.github.com/users/annismckenzie/repos","events_url":"https://api.github.com/users/annismckenzie/events{/privacy}","received_events_url":"https://api.github.com/users/annismckenzie/received_events","type":"User","site_admin":false,"score":1.0},{"login":"eskimoblood","id":72060,"avatar_url":"https://avatars.githubusercontent.com/u/72060","gravatar_id":"7831f9c652845c34091da263b689cc25","url":"https://api.github.com/users/eskimoblood","html_url":"https://github.com/eskimoblood","followers_url":"https://api.github.com/users/eskimoblood/followers","following_url":"https://api.github.com/users/eskimoblood/following{/other_user}","gists_url":"https://api.github.com/users/eskimoblood/gists{/gist_id}","starred_url":"https://api.github.com/users/eskimoblood/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/eskimoblood/subscriptions","organizations_url":"https://api.github.com/users/eskimoblood/orgs","repos_url":"https://api.github.com/users/eskimoblood/repos","events_url":"https://api.github.com/users/eskimoblood/events{/privacy}","received_events_url":"https://api.github.com/users/eskimoblood/received_events","type":"User","site_admin":false,"score":1.0},{"login":"tsujigiri","id":140724,"avatar_url":"https://avatars.githubusercontent.com/u/140724","gravatar_id":"370046731ae754e32236667a7036472a","url":"https://api.github.com/users/tsujigiri","html_url":"https://github.com/tsujigiri","followers_url":"https://api.github.com/users/tsujigiri/followers","following_url":"https://api.github.com/users/tsujigiri/following{/other_user}","gists_url":"https://api.github.com/users/tsujigiri/gists{/gist_id}","starred_url":"https://api.github.com/users/tsujigiri/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tsujigiri/subscriptions","organizations_url":"https://api.github.com/users/tsujigiri/orgs","repos_url":"https://api.github.com/users/tsujigiri/repos","events_url":"https://api.github.com/users/tsujigiri/events{/privacy}","received_events_url":"https://api.github.com/users/tsujigiri/received_events","type":"User","site_admin":false,"score":1.0},{"login":"riethmayer","id":67637,"avatar_url":"https://avatars.githubusercontent.com/u/67637","gravatar_id":"788dec4942d6108c2cfb3ff2a9fb37ca","url":"https://api.github.com/users/riethmayer","html_url":"https://github.com/riethmayer","followers_url":"https://api.github.com/users/riethmayer/followers","following_url":"https://api.github.com/users/riethmayer/following{/other_user}","gists_url":"https://api.github.com/users/riethmayer/gists{/gist_id}","starred_url":"https://api.github.com/users/riethmayer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/riethmayer/subscriptions","organizations_url":"https://api.github.com/users/riethmayer/orgs","repos_url":"https://api.github.com/users/riethmayer/repos","events_url":"https://api.github.com/users/riethmayer/events{/privacy}","received_events_url":"https://api.github.com/users/riethmayer/received_events","type":"User","site_admin":false,"score":1.0},{"login":"lauritzthamsen","id":556044,"avatar_url":"https://avatars.githubusercontent.com/u/556044","gravatar_id":"16ee936c089903268be2b45e2912a8de","url":"https://api.github.com/users/lauritzthamsen","html_url":"https://github.com/lauritzthamsen","followers_url":"https://api.github.com/users/lauritzthamsen/followers","following_url":"https://api.github.com/users/lauritzthamsen/following{/other_user}","gists_url":"https://api.github.com/users/lauritzthamsen/gists{/gist_id}","starred_url":"https://api.github.com/users/lauritzthamsen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lauritzthamsen/subscriptions","organizations_url":"https://api.github.com/users/lauritzthamsen/orgs","repos_url":"https://api.github.com/users/lauritzthamsen/repos","events_url":"https://api.github.com/users/lauritzthamsen/events{/privacy}","received_events_url":"https://api.github.com/users/lauritzthamsen/received_events","type":"User","site_admin":false,"score":1.0},{"login":"scotchi","id":170209,"avatar_url":"https://avatars.githubusercontent.com/u/170209","gravatar_id":"295ea5568fc6b52a41574ccabf76ce70","url":"https://api.github.com/users/scotchi","html_url":"https://github.com/scotchi","followers_url":"https://api.github.com/users/scotchi/followers","following_url":"https://api.github.com/users/scotchi/following{/other_user}","gists_url":"https://api.github.com/users/scotchi/gists{/gist_id}","starred_url":"https://api.github.com/users/scotchi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/scotchi/subscriptions","organizations_url":"https://api.github.com/users/scotchi/orgs","repos_url":"https://api.github.com/users/scotchi/repos","events_url":"https://api.github.com/users/scotchi/events{/privacy}","received_events_url":"https://api.github.com/users/scotchi/received_events","type":"User","site_admin":false,"score":1.0},{"login":"peritor","id":19754,"avatar_url":"https://avatars.githubusercontent.com/u/19754","gravatar_id":"c6c996b515a38003257b23e1c22056b3","url":"https://api.github.com/users/peritor","html_url":"https://github.com/peritor","followers_url":"https://api.github.com/users/peritor/followers","following_url":"https://api.github.com/users/peritor/following{/other_user}","gists_url":"https://api.github.com/users/peritor/gists{/gist_id}","starred_url":"https://api.github.com/users/peritor/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/peritor/subscriptions","organizations_url":"https://api.github.com/users/peritor/orgs","repos_url":"https://api.github.com/users/peritor/repos","events_url":"https://api.github.com/users/peritor/events{/privacy}","received_events_url":"https://api.github.com/users/peritor/received_events","type":"User","site_admin":false,"score":1.0},{"login":"toto","id":15453,"avatar_url":"https://avatars.githubusercontent.com/u/15453","gravatar_id":"6eab17f85e011d0724f95b61953ee5dd","url":"https://api.github.com/users/toto","html_url":"https://github.com/toto","followers_url":"https://api.github.com/users/toto/followers","following_url":"https://api.github.com/users/toto/following{/other_user}","gists_url":"https://api.github.com/users/toto/gists{/gist_id}","starred_url":"https://api.github.com/users/toto/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/toto/subscriptions","organizations_url":"https://api.github.com/users/toto/orgs","repos_url":"https://api.github.com/users/toto/repos","events_url":"https://api.github.com/users/toto/events{/privacy}","received_events_url":"https://api.github.com/users/toto/received_events","type":"User","site_admin":false,"score":1.0},{"login":"hwaxxer","id":104157,"avatar_url":"https://avatars.githubusercontent.com/u/104157","gravatar_id":"8b6c22c70116677f4d653b17fd52b373","url":"https://api.github.com/users/hwaxxer","html_url":"https://github.com/hwaxxer","followers_url":"https://api.github.com/users/hwaxxer/followers","following_url":"https://api.github.com/users/hwaxxer/following{/other_user}","gists_url":"https://api.github.com/users/hwaxxer/gists{/gist_id}","starred_url":"https://api.github.com/users/hwaxxer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hwaxxer/subscriptions","organizations_url":"https://api.github.com/users/hwaxxer/orgs","repos_url":"https://api.github.com/users/hwaxxer/repos","events_url":"https://api.github.com/users/hwaxxer/events{/privacy}","received_events_url":"https://api.github.com/users/hwaxxer/received_events","type":"User","site_admin":false,"score":1.0},{"login":"lukaszklis","id":11782,"avatar_url":"https://avatars.githubusercontent.com/u/11782","gravatar_id":"7a30aca2cf9658558247348b3be8c35e","url":"https://api.github.com/users/lukaszklis","html_url":"https://github.com/lukaszklis","followers_url":"https://api.github.com/users/lukaszklis/followers","following_url":"https://api.github.com/users/lukaszklis/following{/other_user}","gists_url":"https://api.github.com/users/lukaszklis/gists{/gist_id}","starred_url":"https://api.github.com/users/lukaszklis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lukaszklis/subscriptions","organizations_url":"https://api.github.com/users/lukaszklis/orgs","repos_url":"https://api.github.com/users/lukaszklis/repos","events_url":"https://api.github.com/users/lukaszklis/events{/privacy}","received_events_url":"https://api.github.com/users/lukaszklis/received_events","type":"User","site_admin":false,"score":1.0}]} + diff --git a/lib/github/tests/ReplayData/Search.testPaginateSearchUsers.txt b/lib/github/tests/ReplayData/Search.testPaginateSearchUsers.txt new file mode 100644 index 0000000000..caec365d8d --- /dev/null +++ b/lib/github/tests/ReplayData/Search.testPaginateSearchUsers.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/search/users?q=location%3ABerlin +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '28'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '62E81E32:3E9B:2DF95ED:5314034D'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('content-length', '26660'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '30'), ('link', '; rel="next", ; rel="last"'), ('cache-control', 'no-cache'), ('date', 'Mon, 03 Mar 2014 04:21:33 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1393820529')] +{"total_count":6038,"items":[{"login":"cloudhead","id":40774,"avatar_url":"https://avatars.githubusercontent.com/u/40774","gravatar_id":"a8a0061962c41735ca87789720da46c8","url":"https://api.github.com/users/cloudhead","html_url":"https://github.com/cloudhead","followers_url":"https://api.github.com/users/cloudhead/followers","following_url":"https://api.github.com/users/cloudhead/following{/other_user}","gists_url":"https://api.github.com/users/cloudhead/gists{/gist_id}","starred_url":"https://api.github.com/users/cloudhead/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cloudhead/subscriptions","organizations_url":"https://api.github.com/users/cloudhead/orgs","repos_url":"https://api.github.com/users/cloudhead/repos","events_url":"https://api.github.com/users/cloudhead/events{/privacy}","received_events_url":"https://api.github.com/users/cloudhead/received_events","type":"User","site_admin":false,"score":1.0},{"login":"felixge","id":15000,"avatar_url":"https://avatars.githubusercontent.com/u/15000","gravatar_id":"23968f0ca75b13463d2db5343e5c2096","url":"https://api.github.com/users/felixge","html_url":"https://github.com/felixge","followers_url":"https://api.github.com/users/felixge/followers","following_url":"https://api.github.com/users/felixge/following{/other_user}","gists_url":"https://api.github.com/users/felixge/gists{/gist_id}","starred_url":"https://api.github.com/users/felixge/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/felixge/subscriptions","organizations_url":"https://api.github.com/users/felixge/orgs","repos_url":"https://api.github.com/users/felixge/repos","events_url":"https://api.github.com/users/felixge/events{/privacy}","received_events_url":"https://api.github.com/users/felixge/received_events","type":"User","site_admin":false,"score":1.0},{"login":"sferik","id":10308,"avatar_url":"https://avatars.githubusercontent.com/u/10308","gravatar_id":"1f74b13f1e5c6c69cb5d7fbaabb1e2cb","url":"https://api.github.com/users/sferik","html_url":"https://github.com/sferik","followers_url":"https://api.github.com/users/sferik/followers","following_url":"https://api.github.com/users/sferik/following{/other_user}","gists_url":"https://api.github.com/users/sferik/gists{/gist_id}","starred_url":"https://api.github.com/users/sferik/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sferik/subscriptions","organizations_url":"https://api.github.com/users/sferik/orgs","repos_url":"https://api.github.com/users/sferik/repos","events_url":"https://api.github.com/users/sferik/events{/privacy}","received_events_url":"https://api.github.com/users/sferik/received_events","type":"User","site_admin":false,"score":1.0},{"login":"rkh","id":30442,"avatar_url":"https://avatars.githubusercontent.com/u/30442","gravatar_id":"5c2b452f6eea4a6d84c105ebd971d2a4","url":"https://api.github.com/users/rkh","html_url":"https://github.com/rkh","followers_url":"https://api.github.com/users/rkh/followers","following_url":"https://api.github.com/users/rkh/following{/other_user}","gists_url":"https://api.github.com/users/rkh/gists{/gist_id}","starred_url":"https://api.github.com/users/rkh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rkh/subscriptions","organizations_url":"https://api.github.com/users/rkh/orgs","repos_url":"https://api.github.com/users/rkh/repos","events_url":"https://api.github.com/users/rkh/events{/privacy}","received_events_url":"https://api.github.com/users/rkh/received_events","type":"User","site_admin":false,"score":1.0},{"login":"jezdez","id":1610,"avatar_url":"https://avatars.githubusercontent.com/u/1610","gravatar_id":"cf3595fa166bfb4106211e1697f39f94","url":"https://api.github.com/users/jezdez","html_url":"https://github.com/jezdez","followers_url":"https://api.github.com/users/jezdez/followers","following_url":"https://api.github.com/users/jezdez/following{/other_user}","gists_url":"https://api.github.com/users/jezdez/gists{/gist_id}","starred_url":"https://api.github.com/users/jezdez/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jezdez/subscriptions","organizations_url":"https://api.github.com/users/jezdez/orgs","repos_url":"https://api.github.com/users/jezdez/repos","events_url":"https://api.github.com/users/jezdez/events{/privacy}","received_events_url":"https://api.github.com/users/jezdez/received_events","type":"User","site_admin":false,"score":1.0},{"login":"janl","id":11321,"avatar_url":"https://avatars.githubusercontent.com/u/11321","gravatar_id":"2af516fdc33afea661fb3b32c769c9cc","url":"https://api.github.com/users/janl","html_url":"https://github.com/janl","followers_url":"https://api.github.com/users/janl/followers","following_url":"https://api.github.com/users/janl/following{/other_user}","gists_url":"https://api.github.com/users/janl/gists{/gist_id}","starred_url":"https://api.github.com/users/janl/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/janl/subscriptions","organizations_url":"https://api.github.com/users/janl/orgs","repos_url":"https://api.github.com/users/janl/repos","events_url":"https://api.github.com/users/janl/events{/privacy}","received_events_url":"https://api.github.com/users/janl/received_events","type":"User","site_admin":false,"score":1.0},{"login":"marijnh","id":144427,"avatar_url":"https://avatars.githubusercontent.com/u/144427","gravatar_id":"f6a35c85d26694e26bb92ea4d4262c77","url":"https://api.github.com/users/marijnh","html_url":"https://github.com/marijnh","followers_url":"https://api.github.com/users/marijnh/followers","following_url":"https://api.github.com/users/marijnh/following{/other_user}","gists_url":"https://api.github.com/users/marijnh/gists{/gist_id}","starred_url":"https://api.github.com/users/marijnh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/marijnh/subscriptions","organizations_url":"https://api.github.com/users/marijnh/orgs","repos_url":"https://api.github.com/users/marijnh/repos","events_url":"https://api.github.com/users/marijnh/events{/privacy}","received_events_url":"https://api.github.com/users/marijnh/received_events","type":"User","site_admin":false,"score":1.0},{"login":"nikic","id":216080,"avatar_url":"https://avatars.githubusercontent.com/u/216080","gravatar_id":"b4ec98df44deb80b1576283152670358","url":"https://api.github.com/users/nikic","html_url":"https://github.com/nikic","followers_url":"https://api.github.com/users/nikic/followers","following_url":"https://api.github.com/users/nikic/following{/other_user}","gists_url":"https://api.github.com/users/nikic/gists{/gist_id}","starred_url":"https://api.github.com/users/nikic/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nikic/subscriptions","organizations_url":"https://api.github.com/users/nikic/orgs","repos_url":"https://api.github.com/users/nikic/repos","events_url":"https://api.github.com/users/nikic/events{/privacy}","received_events_url":"https://api.github.com/users/nikic/received_events","type":"User","site_admin":false,"score":1.0},{"login":"igorw","id":88061,"avatar_url":"https://avatars.githubusercontent.com/u/88061","gravatar_id":"eb42ff31986f5ed1d97580819134d702","url":"https://api.github.com/users/igorw","html_url":"https://github.com/igorw","followers_url":"https://api.github.com/users/igorw/followers","following_url":"https://api.github.com/users/igorw/following{/other_user}","gists_url":"https://api.github.com/users/igorw/gists{/gist_id}","starred_url":"https://api.github.com/users/igorw/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/igorw/subscriptions","organizations_url":"https://api.github.com/users/igorw/orgs","repos_url":"https://api.github.com/users/igorw/repos","events_url":"https://api.github.com/users/igorw/events{/privacy}","received_events_url":"https://api.github.com/users/igorw/received_events","type":"User","site_admin":false,"score":1.0},{"login":"froschi","id":155937,"avatar_url":"https://avatars.githubusercontent.com/u/155937","gravatar_id":"858c28ab91c7635d63ccf1a9e0c54b7f","url":"https://api.github.com/users/froschi","html_url":"https://github.com/froschi","followers_url":"https://api.github.com/users/froschi/followers","following_url":"https://api.github.com/users/froschi/following{/other_user}","gists_url":"https://api.github.com/users/froschi/gists{/gist_id}","starred_url":"https://api.github.com/users/froschi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/froschi/subscriptions","organizations_url":"https://api.github.com/users/froschi/orgs","repos_url":"https://api.github.com/users/froschi/repos","events_url":"https://api.github.com/users/froschi/events{/privacy}","received_events_url":"https://api.github.com/users/froschi/received_events","type":"User","site_admin":false,"score":1.0},{"login":"svenfuchs","id":2208,"avatar_url":"https://avatars.githubusercontent.com/u/2208","gravatar_id":"2f042f300d1249917adf6f13d3f698b2","url":"https://api.github.com/users/svenfuchs","html_url":"https://github.com/svenfuchs","followers_url":"https://api.github.com/users/svenfuchs/followers","following_url":"https://api.github.com/users/svenfuchs/following{/other_user}","gists_url":"https://api.github.com/users/svenfuchs/gists{/gist_id}","starred_url":"https://api.github.com/users/svenfuchs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/svenfuchs/subscriptions","organizations_url":"https://api.github.com/users/svenfuchs/orgs","repos_url":"https://api.github.com/users/svenfuchs/repos","events_url":"https://api.github.com/users/svenfuchs/events{/privacy}","received_events_url":"https://api.github.com/users/svenfuchs/received_events","type":"User","site_admin":false,"score":1.0},{"login":"omz","id":82469,"avatar_url":"https://avatars.githubusercontent.com/u/82469","gravatar_id":"922171743c2bc912e98a423df1d91499","url":"https://api.github.com/users/omz","html_url":"https://github.com/omz","followers_url":"https://api.github.com/users/omz/followers","following_url":"https://api.github.com/users/omz/following{/other_user}","gists_url":"https://api.github.com/users/omz/gists{/gist_id}","starred_url":"https://api.github.com/users/omz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/omz/subscriptions","organizations_url":"https://api.github.com/users/omz/orgs","repos_url":"https://api.github.com/users/omz/repos","events_url":"https://api.github.com/users/omz/events{/privacy}","received_events_url":"https://api.github.com/users/omz/received_events","type":"User","site_admin":false,"score":1.0},{"login":"chad","id":237,"avatar_url":"https://avatars.githubusercontent.com/u/237","gravatar_id":"77f306388bb6ae00ac0b0401e27cdc99","url":"https://api.github.com/users/chad","html_url":"https://github.com/chad","followers_url":"https://api.github.com/users/chad/followers","following_url":"https://api.github.com/users/chad/following{/other_user}","gists_url":"https://api.github.com/users/chad/gists{/gist_id}","starred_url":"https://api.github.com/users/chad/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chad/subscriptions","organizations_url":"https://api.github.com/users/chad/orgs","repos_url":"https://api.github.com/users/chad/repos","events_url":"https://api.github.com/users/chad/events{/privacy}","received_events_url":"https://api.github.com/users/chad/received_events","type":"User","site_admin":false,"score":1.0},{"login":"bergie","id":3346,"avatar_url":"https://avatars.githubusercontent.com/u/3346","gravatar_id":"995f27ce7205a79c55d4e44223cd6de0","url":"https://api.github.com/users/bergie","html_url":"https://github.com/bergie","followers_url":"https://api.github.com/users/bergie/followers","following_url":"https://api.github.com/users/bergie/following{/other_user}","gists_url":"https://api.github.com/users/bergie/gists{/gist_id}","starred_url":"https://api.github.com/users/bergie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bergie/subscriptions","organizations_url":"https://api.github.com/users/bergie/orgs","repos_url":"https://api.github.com/users/bergie/repos","events_url":"https://api.github.com/users/bergie/events{/privacy}","received_events_url":"https://api.github.com/users/bergie/received_events","type":"User","site_admin":false,"score":1.0},{"login":"roidrage","id":5373,"avatar_url":"https://avatars.githubusercontent.com/u/5373","gravatar_id":"4d9dd9bd8d3d4d0ba8af2acc41d14006","url":"https://api.github.com/users/roidrage","html_url":"https://github.com/roidrage","followers_url":"https://api.github.com/users/roidrage/followers","following_url":"https://api.github.com/users/roidrage/following{/other_user}","gists_url":"https://api.github.com/users/roidrage/gists{/gist_id}","starred_url":"https://api.github.com/users/roidrage/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/roidrage/subscriptions","organizations_url":"https://api.github.com/users/roidrage/orgs","repos_url":"https://api.github.com/users/roidrage/repos","events_url":"https://api.github.com/users/roidrage/events{/privacy}","received_events_url":"https://api.github.com/users/roidrage/received_events","type":"User","site_admin":false,"score":1.0},{"login":"pcalcado","id":7781,"avatar_url":"https://avatars.githubusercontent.com/u/7781","gravatar_id":"47ebffbfed2c317687211c7745eec80d","url":"https://api.github.com/users/pcalcado","html_url":"https://github.com/pcalcado","followers_url":"https://api.github.com/users/pcalcado/followers","following_url":"https://api.github.com/users/pcalcado/following{/other_user}","gists_url":"https://api.github.com/users/pcalcado/gists{/gist_id}","starred_url":"https://api.github.com/users/pcalcado/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pcalcado/subscriptions","organizations_url":"https://api.github.com/users/pcalcado/orgs","repos_url":"https://api.github.com/users/pcalcado/repos","events_url":"https://api.github.com/users/pcalcado/events{/privacy}","received_events_url":"https://api.github.com/users/pcalcado/received_events","type":"User","site_admin":false,"score":1.0},{"login":"durran","id":9030,"avatar_url":"https://avatars.githubusercontent.com/u/9030","gravatar_id":"6f09262a13427532461b0b618d445b1e","url":"https://api.github.com/users/durran","html_url":"https://github.com/durran","followers_url":"https://api.github.com/users/durran/followers","following_url":"https://api.github.com/users/durran/following{/other_user}","gists_url":"https://api.github.com/users/durran/gists{/gist_id}","starred_url":"https://api.github.com/users/durran/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/durran/subscriptions","organizations_url":"https://api.github.com/users/durran/orgs","repos_url":"https://api.github.com/users/durran/repos","events_url":"https://api.github.com/users/durran/events{/privacy}","received_events_url":"https://api.github.com/users/durran/received_events","type":"User","site_admin":false,"score":1.0},{"login":"hukl","id":25157,"avatar_url":"https://avatars.githubusercontent.com/u/25157","gravatar_id":"0273cfca70ccb1caa0914cfc28e219e9","url":"https://api.github.com/users/hukl","html_url":"https://github.com/hukl","followers_url":"https://api.github.com/users/hukl/followers","following_url":"https://api.github.com/users/hukl/following{/other_user}","gists_url":"https://api.github.com/users/hukl/gists{/gist_id}","starred_url":"https://api.github.com/users/hukl/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hukl/subscriptions","organizations_url":"https://api.github.com/users/hukl/orgs","repos_url":"https://api.github.com/users/hukl/repos","events_url":"https://api.github.com/users/hukl/events{/privacy}","received_events_url":"https://api.github.com/users/hukl/received_events","type":"User","site_admin":false,"score":1.0},{"login":"mttkay","id":102802,"avatar_url":"https://avatars.githubusercontent.com/u/102802","gravatar_id":"5cfa38a7e54e6c6a850dc6169a699246","url":"https://api.github.com/users/mttkay","html_url":"https://github.com/mttkay","followers_url":"https://api.github.com/users/mttkay/followers","following_url":"https://api.github.com/users/mttkay/following{/other_user}","gists_url":"https://api.github.com/users/mttkay/gists{/gist_id}","starred_url":"https://api.github.com/users/mttkay/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mttkay/subscriptions","organizations_url":"https://api.github.com/users/mttkay/orgs","repos_url":"https://api.github.com/users/mttkay/repos","events_url":"https://api.github.com/users/mttkay/events{/privacy}","received_events_url":"https://api.github.com/users/mttkay/received_events","type":"User","site_admin":false,"score":1.0},{"login":"aFarkas","id":188254,"avatar_url":"https://avatars.githubusercontent.com/u/188254","gravatar_id":"5c4f4e081b98517cf7c5b21f47d9fe33","url":"https://api.github.com/users/aFarkas","html_url":"https://github.com/aFarkas","followers_url":"https://api.github.com/users/aFarkas/followers","following_url":"https://api.github.com/users/aFarkas/following{/other_user}","gists_url":"https://api.github.com/users/aFarkas/gists{/gist_id}","starred_url":"https://api.github.com/users/aFarkas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aFarkas/subscriptions","organizations_url":"https://api.github.com/users/aFarkas/orgs","repos_url":"https://api.github.com/users/aFarkas/repos","events_url":"https://api.github.com/users/aFarkas/events{/privacy}","received_events_url":"https://api.github.com/users/aFarkas/received_events","type":"User","site_admin":false,"score":1.0},{"login":"ole","id":5010,"avatar_url":"https://avatars.githubusercontent.com/u/5010","gravatar_id":"d0efc09d023fa0569a2479c9dcfd4620","url":"https://api.github.com/users/ole","html_url":"https://github.com/ole","followers_url":"https://api.github.com/users/ole/followers","following_url":"https://api.github.com/users/ole/following{/other_user}","gists_url":"https://api.github.com/users/ole/gists{/gist_id}","starred_url":"https://api.github.com/users/ole/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ole/subscriptions","organizations_url":"https://api.github.com/users/ole/orgs","repos_url":"https://api.github.com/users/ole/repos","events_url":"https://api.github.com/users/ole/events{/privacy}","received_events_url":"https://api.github.com/users/ole/received_events","type":"User","site_admin":false,"score":1.0},{"login":"hagenburger","id":103399,"avatar_url":"https://avatars.githubusercontent.com/u/103399","gravatar_id":"d72ec8b81ac92d0e58a6b88145c548c2","url":"https://api.github.com/users/hagenburger","html_url":"https://github.com/hagenburger","followers_url":"https://api.github.com/users/hagenburger/followers","following_url":"https://api.github.com/users/hagenburger/following{/other_user}","gists_url":"https://api.github.com/users/hagenburger/gists{/gist_id}","starred_url":"https://api.github.com/users/hagenburger/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hagenburger/subscriptions","organizations_url":"https://api.github.com/users/hagenburger/orgs","repos_url":"https://api.github.com/users/hagenburger/repos","events_url":"https://api.github.com/users/hagenburger/events{/privacy}","received_events_url":"https://api.github.com/users/hagenburger/received_events","type":"User","site_admin":false,"score":1.0},{"login":"jberkel","id":18891,"avatar_url":"https://avatars.githubusercontent.com/u/18891","gravatar_id":"7c02e94043800ebd486cc25963a47b81","url":"https://api.github.com/users/jberkel","html_url":"https://github.com/jberkel","followers_url":"https://api.github.com/users/jberkel/followers","following_url":"https://api.github.com/users/jberkel/following{/other_user}","gists_url":"https://api.github.com/users/jberkel/gists{/gist_id}","starred_url":"https://api.github.com/users/jberkel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jberkel/subscriptions","organizations_url":"https://api.github.com/users/jberkel/orgs","repos_url":"https://api.github.com/users/jberkel/repos","events_url":"https://api.github.com/users/jberkel/events{/privacy}","received_events_url":"https://api.github.com/users/jberkel/received_events","type":"User","site_admin":false,"score":1.0},{"login":"naderman","id":154844,"avatar_url":"https://avatars.githubusercontent.com/u/154844","gravatar_id":"9f580202b05cc640aa9297ab7a1ae764","url":"https://api.github.com/users/naderman","html_url":"https://github.com/naderman","followers_url":"https://api.github.com/users/naderman/followers","following_url":"https://api.github.com/users/naderman/following{/other_user}","gists_url":"https://api.github.com/users/naderman/gists{/gist_id}","starred_url":"https://api.github.com/users/naderman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/naderman/subscriptions","organizations_url":"https://api.github.com/users/naderman/orgs","repos_url":"https://api.github.com/users/naderman/repos","events_url":"https://api.github.com/users/naderman/events{/privacy}","received_events_url":"https://api.github.com/users/naderman/received_events","type":"User","site_admin":false,"score":1.0},{"login":"joshk","id":8701,"avatar_url":"https://avatars.githubusercontent.com/u/8701","gravatar_id":"21b21efe14359ec323f9a70464b91e39","url":"https://api.github.com/users/joshk","html_url":"https://github.com/joshk","followers_url":"https://api.github.com/users/joshk/followers","following_url":"https://api.github.com/users/joshk/following{/other_user}","gists_url":"https://api.github.com/users/joshk/gists{/gist_id}","starred_url":"https://api.github.com/users/joshk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/joshk/subscriptions","organizations_url":"https://api.github.com/users/joshk/orgs","repos_url":"https://api.github.com/users/joshk/repos","events_url":"https://api.github.com/users/joshk/events{/privacy}","received_events_url":"https://api.github.com/users/joshk/received_events","type":"User","site_admin":false,"score":1.0},{"login":"pudo","id":41628,"avatar_url":"https://avatars.githubusercontent.com/u/41628","gravatar_id":"6d7d4aa2b3f1602705b599cdd5dc72bd","url":"https://api.github.com/users/pudo","html_url":"https://github.com/pudo","followers_url":"https://api.github.com/users/pudo/followers","following_url":"https://api.github.com/users/pudo/following{/other_user}","gists_url":"https://api.github.com/users/pudo/gists{/gist_id}","starred_url":"https://api.github.com/users/pudo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pudo/subscriptions","organizations_url":"https://api.github.com/users/pudo/orgs","repos_url":"https://api.github.com/users/pudo/repos","events_url":"https://api.github.com/users/pudo/events{/privacy}","received_events_url":"https://api.github.com/users/pudo/received_events","type":"User","site_admin":false,"score":1.0},{"login":"robb","id":212465,"avatar_url":"https://avatars.githubusercontent.com/u/212465","gravatar_id":"b00d4ed5d1e6cb9fc840167820247515","url":"https://api.github.com/users/robb","html_url":"https://github.com/robb","followers_url":"https://api.github.com/users/robb/followers","following_url":"https://api.github.com/users/robb/following{/other_user}","gists_url":"https://api.github.com/users/robb/gists{/gist_id}","starred_url":"https://api.github.com/users/robb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/robb/subscriptions","organizations_url":"https://api.github.com/users/robb/orgs","repos_url":"https://api.github.com/users/robb/repos","events_url":"https://api.github.com/users/robb/events{/privacy}","received_events_url":"https://api.github.com/users/robb/received_events","type":"User","site_admin":false,"score":1.0},{"login":"josephwilk","id":9792,"avatar_url":"https://avatars.githubusercontent.com/u/9792","gravatar_id":"3c28deaff162aeda44f2e0bcdca1dacf","url":"https://api.github.com/users/josephwilk","html_url":"https://github.com/josephwilk","followers_url":"https://api.github.com/users/josephwilk/followers","following_url":"https://api.github.com/users/josephwilk/following{/other_user}","gists_url":"https://api.github.com/users/josephwilk/gists{/gist_id}","starred_url":"https://api.github.com/users/josephwilk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/josephwilk/subscriptions","organizations_url":"https://api.github.com/users/josephwilk/orgs","repos_url":"https://api.github.com/users/josephwilk/repos","events_url":"https://api.github.com/users/josephwilk/events{/privacy}","received_events_url":"https://api.github.com/users/josephwilk/received_events","type":"User","site_admin":false,"score":1.0},{"login":"hanshuebner","id":108751,"avatar_url":"https://avatars.githubusercontent.com/u/108751","gravatar_id":"280d76aa82179ae04550534649de1e6e","url":"https://api.github.com/users/hanshuebner","html_url":"https://github.com/hanshuebner","followers_url":"https://api.github.com/users/hanshuebner/followers","following_url":"https://api.github.com/users/hanshuebner/following{/other_user}","gists_url":"https://api.github.com/users/hanshuebner/gists{/gist_id}","starred_url":"https://api.github.com/users/hanshuebner/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hanshuebner/subscriptions","organizations_url":"https://api.github.com/users/hanshuebner/orgs","repos_url":"https://api.github.com/users/hanshuebner/repos","events_url":"https://api.github.com/users/hanshuebner/events{/privacy}","received_events_url":"https://api.github.com/users/hanshuebner/received_events","type":"User","site_admin":false,"score":1.0},{"login":"txus","id":83234,"avatar_url":"https://avatars.githubusercontent.com/u/83234","gravatar_id":"3db71281264f6125e764d9f3788301e0","url":"https://api.github.com/users/txus","html_url":"https://github.com/txus","followers_url":"https://api.github.com/users/txus/followers","following_url":"https://api.github.com/users/txus/following{/other_user}","gists_url":"https://api.github.com/users/txus/gists{/gist_id}","starred_url":"https://api.github.com/users/txus/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/txus/subscriptions","organizations_url":"https://api.github.com/users/txus/orgs","repos_url":"https://api.github.com/users/txus/repos","events_url":"https://api.github.com/users/txus/events{/privacy}","received_events_url":"https://api.github.com/users/txus/received_events","type":"User","site_admin":false,"score":1.0}]} + +https +GET +api.github.com +None +/search/users?q=location%3ABerlin&page=2 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '27'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '62E81E32:3E9D:3FD6319:5314034D'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('content-length', '27211'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '30'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('cache-control', 'no-cache'), ('date', 'Mon, 03 Mar 2014 04:21:34 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1393820529')] +{"total_count":6038,"items":[{"login":"paulasmuth","id":564023,"avatar_url":"https://avatars.githubusercontent.com/u/564023","gravatar_id":"79f6cb1c222265cabb12781893faaea6","url":"https://api.github.com/users/paulasmuth","html_url":"https://github.com/paulasmuth","followers_url":"https://api.github.com/users/paulasmuth/followers","following_url":"https://api.github.com/users/paulasmuth/following{/other_user}","gists_url":"https://api.github.com/users/paulasmuth/gists{/gist_id}","starred_url":"https://api.github.com/users/paulasmuth/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/paulasmuth/subscriptions","organizations_url":"https://api.github.com/users/paulasmuth/orgs","repos_url":"https://api.github.com/users/paulasmuth/repos","events_url":"https://api.github.com/users/paulasmuth/events{/privacy}","received_events_url":"https://api.github.com/users/paulasmuth/received_events","type":"User","site_admin":false,"score":1.0},{"login":"splitbrain","id":86426,"avatar_url":"https://avatars.githubusercontent.com/u/86426","gravatar_id":"b6b4d7dbe3fb7cf61b68e36cd80f8698","url":"https://api.github.com/users/splitbrain","html_url":"https://github.com/splitbrain","followers_url":"https://api.github.com/users/splitbrain/followers","following_url":"https://api.github.com/users/splitbrain/following{/other_user}","gists_url":"https://api.github.com/users/splitbrain/gists{/gist_id}","starred_url":"https://api.github.com/users/splitbrain/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/splitbrain/subscriptions","organizations_url":"https://api.github.com/users/splitbrain/orgs","repos_url":"https://api.github.com/users/splitbrain/repos","events_url":"https://api.github.com/users/splitbrain/events{/privacy}","received_events_url":"https://api.github.com/users/splitbrain/received_events","type":"User","site_admin":false,"score":1.0},{"login":"langalex","id":2173,"avatar_url":"https://avatars.githubusercontent.com/u/2173","gravatar_id":"920993ef8f677cc1be50fde5ce8cb4bb","url":"https://api.github.com/users/langalex","html_url":"https://github.com/langalex","followers_url":"https://api.github.com/users/langalex/followers","following_url":"https://api.github.com/users/langalex/following{/other_user}","gists_url":"https://api.github.com/users/langalex/gists{/gist_id}","starred_url":"https://api.github.com/users/langalex/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/langalex/subscriptions","organizations_url":"https://api.github.com/users/langalex/orgs","repos_url":"https://api.github.com/users/langalex/repos","events_url":"https://api.github.com/users/langalex/events{/privacy}","received_events_url":"https://api.github.com/users/langalex/received_events","type":"User","site_admin":false,"score":1.0},{"login":"bendiken","id":4963,"avatar_url":"https://avatars.githubusercontent.com/u/4963","gravatar_id":"c29341e85441dfee17716b528747ec12","url":"https://api.github.com/users/bendiken","html_url":"https://github.com/bendiken","followers_url":"https://api.github.com/users/bendiken/followers","following_url":"https://api.github.com/users/bendiken/following{/other_user}","gists_url":"https://api.github.com/users/bendiken/gists{/gist_id}","starred_url":"https://api.github.com/users/bendiken/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bendiken/subscriptions","organizations_url":"https://api.github.com/users/bendiken/orgs","repos_url":"https://api.github.com/users/bendiken/repos","events_url":"https://api.github.com/users/bendiken/events{/privacy}","received_events_url":"https://api.github.com/users/bendiken/received_events","type":"User","site_admin":false,"score":1.0},{"login":"stefanw","id":78356,"avatar_url":"https://avatars.githubusercontent.com/u/78356","gravatar_id":"81a78ca8264a3fa56ddb24cc9f57a818","url":"https://api.github.com/users/stefanw","html_url":"https://github.com/stefanw","followers_url":"https://api.github.com/users/stefanw/followers","following_url":"https://api.github.com/users/stefanw/following{/other_user}","gists_url":"https://api.github.com/users/stefanw/gists{/gist_id}","starred_url":"https://api.github.com/users/stefanw/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stefanw/subscriptions","organizations_url":"https://api.github.com/users/stefanw/orgs","repos_url":"https://api.github.com/users/stefanw/repos","events_url":"https://api.github.com/users/stefanw/events{/privacy}","received_events_url":"https://api.github.com/users/stefanw/received_events","type":"User","site_admin":false,"score":1.0},{"login":"timpritlove","id":119680,"avatar_url":"https://avatars.githubusercontent.com/u/119680","gravatar_id":"97391367796db965d19e63b690e72b3d","url":"https://api.github.com/users/timpritlove","html_url":"https://github.com/timpritlove","followers_url":"https://api.github.com/users/timpritlove/followers","following_url":"https://api.github.com/users/timpritlove/following{/other_user}","gists_url":"https://api.github.com/users/timpritlove/gists{/gist_id}","starred_url":"https://api.github.com/users/timpritlove/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timpritlove/subscriptions","organizations_url":"https://api.github.com/users/timpritlove/orgs","repos_url":"https://api.github.com/users/timpritlove/repos","events_url":"https://api.github.com/users/timpritlove/events{/privacy}","received_events_url":"https://api.github.com/users/timpritlove/received_events","type":"User","site_admin":false,"score":1.0},{"login":"AndrewRadev","id":124255,"avatar_url":"https://avatars.githubusercontent.com/u/124255","gravatar_id":"fc59401781a26b10f5d4fc5b758fb3b7","url":"https://api.github.com/users/AndrewRadev","html_url":"https://github.com/AndrewRadev","followers_url":"https://api.github.com/users/AndrewRadev/followers","following_url":"https://api.github.com/users/AndrewRadev/following{/other_user}","gists_url":"https://api.github.com/users/AndrewRadev/gists{/gist_id}","starred_url":"https://api.github.com/users/AndrewRadev/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/AndrewRadev/subscriptions","organizations_url":"https://api.github.com/users/AndrewRadev/orgs","repos_url":"https://api.github.com/users/AndrewRadev/repos","events_url":"https://api.github.com/users/AndrewRadev/events{/privacy}","received_events_url":"https://api.github.com/users/AndrewRadev/received_events","type":"User","site_admin":false,"score":1.0},{"login":"knutin","id":364484,"avatar_url":"https://avatars.githubusercontent.com/u/364484","gravatar_id":"ca58f2819d0f9964efdfeaa0b6c9ebaf","url":"https://api.github.com/users/knutin","html_url":"https://github.com/knutin","followers_url":"https://api.github.com/users/knutin/followers","following_url":"https://api.github.com/users/knutin/following{/other_user}","gists_url":"https://api.github.com/users/knutin/gists{/gist_id}","starred_url":"https://api.github.com/users/knutin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/knutin/subscriptions","organizations_url":"https://api.github.com/users/knutin/orgs","repos_url":"https://api.github.com/users/knutin/repos","events_url":"https://api.github.com/users/knutin/events{/privacy}","received_events_url":"https://api.github.com/users/knutin/received_events","type":"User","site_admin":false,"score":1.0},{"login":"kkaefer","id":52399,"avatar_url":"https://avatars.githubusercontent.com/u/52399","gravatar_id":"d3586b91137e12d1f521d07f118a187e","url":"https://api.github.com/users/kkaefer","html_url":"https://github.com/kkaefer","followers_url":"https://api.github.com/users/kkaefer/followers","following_url":"https://api.github.com/users/kkaefer/following{/other_user}","gists_url":"https://api.github.com/users/kkaefer/gists{/gist_id}","starred_url":"https://api.github.com/users/kkaefer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kkaefer/subscriptions","organizations_url":"https://api.github.com/users/kkaefer/orgs","repos_url":"https://api.github.com/users/kkaefer/repos","events_url":"https://api.github.com/users/kkaefer/events{/privacy}","received_events_url":"https://api.github.com/users/kkaefer/received_events","type":"User","site_admin":false,"score":1.0},{"login":"carhartl","id":21918,"avatar_url":"https://avatars.githubusercontent.com/u/21918","gravatar_id":"ae8c6ae27f6b9d5707bc5a32d0fb21a6","url":"https://api.github.com/users/carhartl","html_url":"https://github.com/carhartl","followers_url":"https://api.github.com/users/carhartl/followers","following_url":"https://api.github.com/users/carhartl/following{/other_user}","gists_url":"https://api.github.com/users/carhartl/gists{/gist_id}","starred_url":"https://api.github.com/users/carhartl/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/carhartl/subscriptions","organizations_url":"https://api.github.com/users/carhartl/orgs","repos_url":"https://api.github.com/users/carhartl/repos","events_url":"https://api.github.com/users/carhartl/events{/privacy}","received_events_url":"https://api.github.com/users/carhartl/received_events","type":"User","site_admin":false,"score":1.0},{"login":"chriseidhof","id":5382,"avatar_url":"https://avatars.githubusercontent.com/u/5382","gravatar_id":"ade0c334ecff1448bb96f5f733bf1f83","url":"https://api.github.com/users/chriseidhof","html_url":"https://github.com/chriseidhof","followers_url":"https://api.github.com/users/chriseidhof/followers","following_url":"https://api.github.com/users/chriseidhof/following{/other_user}","gists_url":"https://api.github.com/users/chriseidhof/gists{/gist_id}","starred_url":"https://api.github.com/users/chriseidhof/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chriseidhof/subscriptions","organizations_url":"https://api.github.com/users/chriseidhof/orgs","repos_url":"https://api.github.com/users/chriseidhof/repos","events_url":"https://api.github.com/users/chriseidhof/events{/privacy}","received_events_url":"https://api.github.com/users/chriseidhof/received_events","type":"User","site_admin":false,"score":1.0},{"login":"deanm","id":56582,"avatar_url":"https://avatars.githubusercontent.com/u/56582","gravatar_id":"8013da4cb41399860f264aa8dbd28912","url":"https://api.github.com/users/deanm","html_url":"https://github.com/deanm","followers_url":"https://api.github.com/users/deanm/followers","following_url":"https://api.github.com/users/deanm/following{/other_user}","gists_url":"https://api.github.com/users/deanm/gists{/gist_id}","starred_url":"https://api.github.com/users/deanm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/deanm/subscriptions","organizations_url":"https://api.github.com/users/deanm/orgs","repos_url":"https://api.github.com/users/deanm/repos","events_url":"https://api.github.com/users/deanm/events{/privacy}","received_events_url":"https://api.github.com/users/deanm/received_events","type":"User","site_admin":false,"score":1.0},{"login":"plu","id":31597,"avatar_url":"https://avatars.githubusercontent.com/u/31597","gravatar_id":"cacc359ee20d3423087f957241cffd2b","url":"https://api.github.com/users/plu","html_url":"https://github.com/plu","followers_url":"https://api.github.com/users/plu/followers","following_url":"https://api.github.com/users/plu/following{/other_user}","gists_url":"https://api.github.com/users/plu/gists{/gist_id}","starred_url":"https://api.github.com/users/plu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/plu/subscriptions","organizations_url":"https://api.github.com/users/plu/orgs","repos_url":"https://api.github.com/users/plu/repos","events_url":"https://api.github.com/users/plu/events{/privacy}","received_events_url":"https://api.github.com/users/plu/received_events","type":"User","site_admin":false,"score":1.0},{"login":"netroy","id":196144,"avatar_url":"https://avatars.githubusercontent.com/u/196144","gravatar_id":"9a86cafc047f2c2766660e61eeb9be80","url":"https://api.github.com/users/netroy","html_url":"https://github.com/netroy","followers_url":"https://api.github.com/users/netroy/followers","following_url":"https://api.github.com/users/netroy/following{/other_user}","gists_url":"https://api.github.com/users/netroy/gists{/gist_id}","starred_url":"https://api.github.com/users/netroy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/netroy/subscriptions","organizations_url":"https://api.github.com/users/netroy/orgs","repos_url":"https://api.github.com/users/netroy/repos","events_url":"https://api.github.com/users/netroy/events{/privacy}","received_events_url":"https://api.github.com/users/netroy/received_events","type":"User","site_admin":false,"score":1.0},{"login":"343max","id":33906,"avatar_url":"https://avatars.githubusercontent.com/u/33906","gravatar_id":"deea421f48d4fe384e65f52bf33005bc","url":"https://api.github.com/users/343max","html_url":"https://github.com/343max","followers_url":"https://api.github.com/users/343max/followers","following_url":"https://api.github.com/users/343max/following{/other_user}","gists_url":"https://api.github.com/users/343max/gists{/gist_id}","starred_url":"https://api.github.com/users/343max/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/343max/subscriptions","organizations_url":"https://api.github.com/users/343max/orgs","repos_url":"https://api.github.com/users/343max/repos","events_url":"https://api.github.com/users/343max/events{/privacy}","received_events_url":"https://api.github.com/users/343max/received_events","type":"User","site_admin":false,"score":1.0},{"login":"janlelis","id":111510,"avatar_url":"https://avatars.githubusercontent.com/u/111510","gravatar_id":"901b686e3824cd357b169ac7ce431b1b","url":"https://api.github.com/users/janlelis","html_url":"https://github.com/janlelis","followers_url":"https://api.github.com/users/janlelis/followers","following_url":"https://api.github.com/users/janlelis/following{/other_user}","gists_url":"https://api.github.com/users/janlelis/gists{/gist_id}","starred_url":"https://api.github.com/users/janlelis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/janlelis/subscriptions","organizations_url":"https://api.github.com/users/janlelis/orgs","repos_url":"https://api.github.com/users/janlelis/repos","events_url":"https://api.github.com/users/janlelis/events{/privacy}","received_events_url":"https://api.github.com/users/janlelis/received_events","type":"User","site_admin":false,"score":1.0},{"login":"lstoll","id":694,"avatar_url":"https://avatars.githubusercontent.com/u/694","gravatar_id":"016e1583dcc7cb2b435b7607c1bce58f","url":"https://api.github.com/users/lstoll","html_url":"https://github.com/lstoll","followers_url":"https://api.github.com/users/lstoll/followers","following_url":"https://api.github.com/users/lstoll/following{/other_user}","gists_url":"https://api.github.com/users/lstoll/gists{/gist_id}","starred_url":"https://api.github.com/users/lstoll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lstoll/subscriptions","organizations_url":"https://api.github.com/users/lstoll/orgs","repos_url":"https://api.github.com/users/lstoll/repos","events_url":"https://api.github.com/users/lstoll/events{/privacy}","received_events_url":"https://api.github.com/users/lstoll/received_events","type":"User","site_admin":true,"score":1.0},{"login":"panique","id":156321,"avatar_url":"https://avatars.githubusercontent.com/u/156321","gravatar_id":"ba916cb1c1327b700cf2f753684c2b4f","url":"https://api.github.com/users/panique","html_url":"https://github.com/panique","followers_url":"https://api.github.com/users/panique/followers","following_url":"https://api.github.com/users/panique/following{/other_user}","gists_url":"https://api.github.com/users/panique/gists{/gist_id}","starred_url":"https://api.github.com/users/panique/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/panique/subscriptions","organizations_url":"https://api.github.com/users/panique/orgs","repos_url":"https://api.github.com/users/panique/repos","events_url":"https://api.github.com/users/panique/events{/privacy}","received_events_url":"https://api.github.com/users/panique/received_events","type":"User","site_admin":false,"score":1.0},{"login":"ddfreyne","id":6269,"avatar_url":"https://avatars.githubusercontent.com/u/6269","gravatar_id":"be732ee41fd3038aa98a0a7e7b7be081","url":"https://api.github.com/users/ddfreyne","html_url":"https://github.com/ddfreyne","followers_url":"https://api.github.com/users/ddfreyne/followers","following_url":"https://api.github.com/users/ddfreyne/following{/other_user}","gists_url":"https://api.github.com/users/ddfreyne/gists{/gist_id}","starred_url":"https://api.github.com/users/ddfreyne/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ddfreyne/subscriptions","organizations_url":"https://api.github.com/users/ddfreyne/orgs","repos_url":"https://api.github.com/users/ddfreyne/repos","events_url":"https://api.github.com/users/ddfreyne/events{/privacy}","received_events_url":"https://api.github.com/users/ddfreyne/received_events","type":"User","site_admin":false,"score":1.0},{"login":"marinho","id":4506,"avatar_url":"https://avatars.githubusercontent.com/u/4506","gravatar_id":"ba8d6cfcd9997a75b2ce7afc7bf79444","url":"https://api.github.com/users/marinho","html_url":"https://github.com/marinho","followers_url":"https://api.github.com/users/marinho/followers","following_url":"https://api.github.com/users/marinho/following{/other_user}","gists_url":"https://api.github.com/users/marinho/gists{/gist_id}","starred_url":"https://api.github.com/users/marinho/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/marinho/subscriptions","organizations_url":"https://api.github.com/users/marinho/orgs","repos_url":"https://api.github.com/users/marinho/repos","events_url":"https://api.github.com/users/marinho/events{/privacy}","received_events_url":"https://api.github.com/users/marinho/received_events","type":"User","site_admin":false,"score":1.0},{"login":"infusion","id":197742,"avatar_url":"https://avatars.githubusercontent.com/u/197742","gravatar_id":"7c6a030ccf1fddcec6ea428d6171a79d","url":"https://api.github.com/users/infusion","html_url":"https://github.com/infusion","followers_url":"https://api.github.com/users/infusion/followers","following_url":"https://api.github.com/users/infusion/following{/other_user}","gists_url":"https://api.github.com/users/infusion/gists{/gist_id}","starred_url":"https://api.github.com/users/infusion/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/infusion/subscriptions","organizations_url":"https://api.github.com/users/infusion/orgs","repos_url":"https://api.github.com/users/infusion/repos","events_url":"https://api.github.com/users/infusion/events{/privacy}","received_events_url":"https://api.github.com/users/infusion/received_events","type":"User","site_admin":false,"score":1.0},{"login":"keyboardsurfer","id":336005,"avatar_url":"https://avatars.githubusercontent.com/u/336005","gravatar_id":"d2a06312762581d504ba0a25e5a90def","url":"https://api.github.com/users/keyboardsurfer","html_url":"https://github.com/keyboardsurfer","followers_url":"https://api.github.com/users/keyboardsurfer/followers","following_url":"https://api.github.com/users/keyboardsurfer/following{/other_user}","gists_url":"https://api.github.com/users/keyboardsurfer/gists{/gist_id}","starred_url":"https://api.github.com/users/keyboardsurfer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/keyboardsurfer/subscriptions","organizations_url":"https://api.github.com/users/keyboardsurfer/orgs","repos_url":"https://api.github.com/users/keyboardsurfer/repos","events_url":"https://api.github.com/users/keyboardsurfer/events{/privacy}","received_events_url":"https://api.github.com/users/keyboardsurfer/received_events","type":"User","site_admin":false,"score":1.0},{"login":"tcurdt","id":13697,"avatar_url":"https://avatars.githubusercontent.com/u/13697","gravatar_id":"cdf5f524330ccabaeda576749a34a30b","url":"https://api.github.com/users/tcurdt","html_url":"https://github.com/tcurdt","followers_url":"https://api.github.com/users/tcurdt/followers","following_url":"https://api.github.com/users/tcurdt/following{/other_user}","gists_url":"https://api.github.com/users/tcurdt/gists{/gist_id}","starred_url":"https://api.github.com/users/tcurdt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tcurdt/subscriptions","organizations_url":"https://api.github.com/users/tcurdt/orgs","repos_url":"https://api.github.com/users/tcurdt/repos","events_url":"https://api.github.com/users/tcurdt/events{/privacy}","received_events_url":"https://api.github.com/users/tcurdt/received_events","type":"User","site_admin":false,"score":1.0},{"login":"theophani","id":364246,"avatar_url":"https://avatars.githubusercontent.com/u/364246","gravatar_id":"7b1746f5ae99453e6a67f022ec0d73bd","url":"https://api.github.com/users/theophani","html_url":"https://github.com/theophani","followers_url":"https://api.github.com/users/theophani/followers","following_url":"https://api.github.com/users/theophani/following{/other_user}","gists_url":"https://api.github.com/users/theophani/gists{/gist_id}","starred_url":"https://api.github.com/users/theophani/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/theophani/subscriptions","organizations_url":"https://api.github.com/users/theophani/orgs","repos_url":"https://api.github.com/users/theophani/repos","events_url":"https://api.github.com/users/theophani/events{/privacy}","received_events_url":"https://api.github.com/users/theophani/received_events","type":"User","site_admin":false,"score":1.0},{"login":"till","id":27003,"avatar_url":"https://avatars.githubusercontent.com/u/27003","gravatar_id":"b33d0462e6324cce17b09a83f349aaac","url":"https://api.github.com/users/till","html_url":"https://github.com/till","followers_url":"https://api.github.com/users/till/followers","following_url":"https://api.github.com/users/till/following{/other_user}","gists_url":"https://api.github.com/users/till/gists{/gist_id}","starred_url":"https://api.github.com/users/till/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/till/subscriptions","organizations_url":"https://api.github.com/users/till/orgs","repos_url":"https://api.github.com/users/till/repos","events_url":"https://api.github.com/users/till/events{/privacy}","received_events_url":"https://api.github.com/users/till/received_events","type":"User","site_admin":false,"score":1.0},{"login":"cebe","id":189796,"avatar_url":"https://avatars.githubusercontent.com/u/189796","gravatar_id":"2ebfe57beabd0b9f8eb9ded1237a275d","url":"https://api.github.com/users/cebe","html_url":"https://github.com/cebe","followers_url":"https://api.github.com/users/cebe/followers","following_url":"https://api.github.com/users/cebe/following{/other_user}","gists_url":"https://api.github.com/users/cebe/gists{/gist_id}","starred_url":"https://api.github.com/users/cebe/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cebe/subscriptions","organizations_url":"https://api.github.com/users/cebe/orgs","repos_url":"https://api.github.com/users/cebe/repos","events_url":"https://api.github.com/users/cebe/events{/privacy}","received_events_url":"https://api.github.com/users/cebe/received_events","type":"User","site_admin":false,"score":1.0},{"login":"amery","id":131371,"avatar_url":"https://avatars.githubusercontent.com/u/131371","gravatar_id":"ddf8b09b2681ad4abe831b5e3c05cff0","url":"https://api.github.com/users/amery","html_url":"https://github.com/amery","followers_url":"https://api.github.com/users/amery/followers","following_url":"https://api.github.com/users/amery/following{/other_user}","gists_url":"https://api.github.com/users/amery/gists{/gist_id}","starred_url":"https://api.github.com/users/amery/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/amery/subscriptions","organizations_url":"https://api.github.com/users/amery/orgs","repos_url":"https://api.github.com/users/amery/repos","events_url":"https://api.github.com/users/amery/events{/privacy}","received_events_url":"https://api.github.com/users/amery/received_events","type":"User","site_admin":false,"score":1.0},{"login":"myabc","id":755,"avatar_url":"https://avatars.githubusercontent.com/u/755","gravatar_id":"9b1a71682de14fc6fc2b944a9c4814a0","url":"https://api.github.com/users/myabc","html_url":"https://github.com/myabc","followers_url":"https://api.github.com/users/myabc/followers","following_url":"https://api.github.com/users/myabc/following{/other_user}","gists_url":"https://api.github.com/users/myabc/gists{/gist_id}","starred_url":"https://api.github.com/users/myabc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/myabc/subscriptions","organizations_url":"https://api.github.com/users/myabc/orgs","repos_url":"https://api.github.com/users/myabc/repos","events_url":"https://api.github.com/users/myabc/events{/privacy}","received_events_url":"https://api.github.com/users/myabc/received_events","type":"User","site_admin":false,"score":1.0},{"login":"telekommunisten","id":420921,"avatar_url":"https://avatars.githubusercontent.com/u/420921","gravatar_id":"307848b658ef6b70e72b416ce40699ae","url":"https://api.github.com/users/telekommunisten","html_url":"https://github.com/telekommunisten","followers_url":"https://api.github.com/users/telekommunisten/followers","following_url":"https://api.github.com/users/telekommunisten/following{/other_user}","gists_url":"https://api.github.com/users/telekommunisten/gists{/gist_id}","starred_url":"https://api.github.com/users/telekommunisten/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/telekommunisten/subscriptions","organizations_url":"https://api.github.com/users/telekommunisten/orgs","repos_url":"https://api.github.com/users/telekommunisten/repos","events_url":"https://api.github.com/users/telekommunisten/events{/privacy}","received_events_url":"https://api.github.com/users/telekommunisten/received_events","type":"User","site_admin":false,"score":1.0},{"login":"kilaulena","id":25003,"avatar_url":"https://avatars.githubusercontent.com/u/25003","gravatar_id":"7712d746190ebd449f9c4bc042f44c21","url":"https://api.github.com/users/kilaulena","html_url":"https://github.com/kilaulena","followers_url":"https://api.github.com/users/kilaulena/followers","following_url":"https://api.github.com/users/kilaulena/following{/other_user}","gists_url":"https://api.github.com/users/kilaulena/gists{/gist_id}","starred_url":"https://api.github.com/users/kilaulena/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kilaulena/subscriptions","organizations_url":"https://api.github.com/users/kilaulena/orgs","repos_url":"https://api.github.com/users/kilaulena/repos","events_url":"https://api.github.com/users/kilaulena/events{/privacy}","received_events_url":"https://api.github.com/users/kilaulena/received_events","type":"User","site_admin":false,"score":1.0}]} + diff --git a/lib/github/tests/ReplayData/Search.testSearchCode.txt b/lib/github/tests/ReplayData/Search.testSearchCode.txt new file mode 100644 index 0000000000..875670e844 --- /dev/null +++ b/lib/github/tests/ReplayData/Search.testSearchCode.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/search/code?sort=indexed&q=toto+user%3Ajacquev6&order=asc +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '29'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '62E81E32:5372:9C29CCF:53140AF6'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('content-length', '64108'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '30'), ('cache-control', 'no-cache'), ('date', 'Mon, 03 Mar 2014 04:54:14 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1393822514')] +{"total_count":14,"items":[{"name":"Commit.setUp.txt","path":"github/tests/ReplayData/Commit.setUp.txt","sha":"eb063311ef37a1444a98c9f98acfed2b4caaa738","url":"https://api.github.com/repositories/3544490/contents/github/tests/ReplayData/Commit.setUp.txt?ref=72f8876112ba029111c739871e3e4d7bce66b95d","git_url":"https://api.github.com/repositories/3544490/git/blobs/eb063311ef37a1444a98c9f98acfed2b4caaa738","html_url":"https://github.com/jacquev6/PyGithub/blob/72f8876112ba029111c739871e3e4d7bce66b95d/github/tests/ReplayData/Commit.setUp.txt","repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://avatars.githubusercontent.com/u/327146","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/jacquev6/PyGithub/releases{/id}"},"score":0.31651077},{"name":"PullRequest.testGetFiles.txt","path":"github/tests/ReplayData/PullRequest.testGetFiles.txt","sha":"97a6a8d14dc4eaebabe88601278692d043ebf4b3","url":"https://api.github.com/repositories/3544490/contents/github/tests/ReplayData/PullRequest.testGetFiles.txt?ref=72f8876112ba029111c739871e3e4d7bce66b95d","git_url":"https://api.github.com/repositories/3544490/git/blobs/97a6a8d14dc4eaebabe88601278692d043ebf4b3","html_url":"https://github.com/jacquev6/PyGithub/blob/72f8876112ba029111c739871e3e4d7bce66b95d/github/tests/ReplayData/PullRequest.testGetFiles.txt","repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://avatars.githubusercontent.com/u/327146","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/jacquev6/PyGithub/releases{/id}"},"score":0.3538698},{"name":"NamedUser.testGetEvents.txt","path":"github/tests/ReplayData/NamedUser.testGetEvents.txt","sha":"610e6982d26448feda25e48e6530e9dc5fba0552","url":"https://api.github.com/repositories/3544490/contents/github/tests/ReplayData/NamedUser.testGetEvents.txt?ref=72f8876112ba029111c739871e3e4d7bce66b95d","git_url":"https://api.github.com/repositories/3544490/git/blobs/610e6982d26448feda25e48e6530e9dc5fba0552","html_url":"https://github.com/jacquev6/PyGithub/blob/72f8876112ba029111c739871e3e4d7bce66b95d/github/tests/ReplayData/NamedUser.testGetEvents.txt","repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://avatars.githubusercontent.com/u/327146","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/jacquev6/PyGithub/releases{/id}"},"score":0.19583106},{"name":"PullRequest.testCreateComment.txt","path":"github/tests/ReplayData/PullRequest.testCreateComment.txt","sha":"d824a0dffe1db17686d9d06e443149db7b0aa123","url":"https://api.github.com/repositories/3544490/contents/github/tests/ReplayData/PullRequest.testCreateComment.txt?ref=72f8876112ba029111c739871e3e4d7bce66b95d","git_url":"https://api.github.com/repositories/3544490/git/blobs/d824a0dffe1db17686d9d06e443149db7b0aa123","html_url":"https://github.com/jacquev6/PyGithub/blob/72f8876112ba029111c739871e3e4d7bce66b95d/github/tests/ReplayData/PullRequest.testCreateComment.txt","repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://avatars.githubusercontent.com/u/327146","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/jacquev6/PyGithub/releases{/id}"},"score":0.13055404},{"name":"PullRequestFile.setUp.txt","path":"github/tests/ReplayData/PullRequestFile.setUp.txt","sha":"ee7a1cc64967d71455191e61d5a835042778bf2a","url":"https://api.github.com/repositories/3544490/contents/github/tests/ReplayData/PullRequestFile.setUp.txt?ref=72f8876112ba029111c739871e3e4d7bce66b95d","git_url":"https://api.github.com/repositories/3544490/git/blobs/ee7a1cc64967d71455191e61d5a835042778bf2a","html_url":"https://github.com/jacquev6/PyGithub/blob/72f8876112ba029111c739871e3e4d7bce66b95d/github/tests/ReplayData/PullRequestFile.setUp.txt","repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://avatars.githubusercontent.com/u/327146","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/jacquev6/PyGithub/releases{/id}"},"score":0.2948915},{"name":"Repository.testGetIssuesWithWildcards.txt","path":"github/tests/ReplayData/Repository.testGetIssuesWithWildcards.txt","sha":"d33415c8f5339e8d6431b5a2fd50af14e433fb21","url":"https://api.github.com/repositories/3544490/contents/github/tests/ReplayData/Repository.testGetIssuesWithWildcards.txt?ref=72f8876112ba029111c739871e3e4d7bce66b95d","git_url":"https://api.github.com/repositories/3544490/git/blobs/d33415c8f5339e8d6431b5a2fd50af14e433fb21","html_url":"https://github.com/jacquev6/PyGithub/blob/72f8876112ba029111c739871e3e4d7bce66b95d/github/tests/ReplayData/Repository.testGetIssuesWithWildcards.txt","repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://avatars.githubusercontent.com/u/327146","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/jacquev6/PyGithub/releases{/id}"},"score":0.18650576},{"name":"Repository.testGetIssuesWithArguments.txt","path":"github/tests/ReplayData/Repository.testGetIssuesWithArguments.txt","sha":"702c33332bd6ba81a5abd68cf8add0f3b8fa1689","url":"https://api.github.com/repositories/3544490/contents/github/tests/ReplayData/Repository.testGetIssuesWithArguments.txt?ref=72f8876112ba029111c739871e3e4d7bce66b95d","git_url":"https://api.github.com/repositories/3544490/git/blobs/702c33332bd6ba81a5abd68cf8add0f3b8fa1689","html_url":"https://github.com/jacquev6/PyGithub/blob/72f8876112ba029111c739871e3e4d7bce66b95d/github/tests/ReplayData/Repository.testGetIssuesWithArguments.txt","repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://avatars.githubusercontent.com/u/327146","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/jacquev6/PyGithub/releases{/id}"},"score":0.10550359},{"name":"test_ebnf.cpp","path":"src/Test/test_ebnf.cpp","sha":"3453702d8354388f62645ac34a94421670bf9c26","url":"https://api.github.com/repositories/767392/contents/src/Test/test_ebnf.cpp?ref=0cd3b287335286a7cf98e26e4939a4065a023028","git_url":"https://api.github.com/repositories/767392/git/blobs/3453702d8354388f62645ac34a94421670bf9c26","html_url":"https://github.com/jacquev6/DrawSyntax/blob/0cd3b287335286a7cf98e26e4939a4065a023028/src/Test/test_ebnf.cpp","repository":{"id":767392,"name":"DrawSyntax","full_name":"jacquev6/DrawSyntax","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://avatars.githubusercontent.com/u/327146","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jacquev6/DrawSyntax","description":"Draw syntax diagrams from EBNF grammars. API in C++ and Python. Try it online.","fork":false,"url":"https://api.github.com/repos/jacquev6/DrawSyntax","forks_url":"https://api.github.com/repos/jacquev6/DrawSyntax/forks","keys_url":"https://api.github.com/repos/jacquev6/DrawSyntax/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/DrawSyntax/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/DrawSyntax/teams","hooks_url":"https://api.github.com/repos/jacquev6/DrawSyntax/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/DrawSyntax/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/DrawSyntax/events","assignees_url":"https://api.github.com/repos/jacquev6/DrawSyntax/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/DrawSyntax/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/DrawSyntax/tags","blobs_url":"https://api.github.com/repos/jacquev6/DrawSyntax/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/DrawSyntax/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/DrawSyntax/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/DrawSyntax/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/DrawSyntax/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/DrawSyntax/languages","stargazers_url":"https://api.github.com/repos/jacquev6/DrawSyntax/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/DrawSyntax/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/DrawSyntax/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/DrawSyntax/subscription","commits_url":"https://api.github.com/repos/jacquev6/DrawSyntax/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/DrawSyntax/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/DrawSyntax/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/DrawSyntax/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/DrawSyntax/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/DrawSyntax/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/DrawSyntax/merges","archive_url":"https://api.github.com/repos/jacquev6/DrawSyntax/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/DrawSyntax/downloads","issues_url":"https://api.github.com/repos/jacquev6/DrawSyntax/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/DrawSyntax/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/DrawSyntax/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/DrawSyntax/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/DrawSyntax/labels{/name}","releases_url":"https://api.github.com/repos/jacquev6/DrawSyntax/releases{/id}"},"score":1.475756},{"name":"test_abnf.cpp","path":"src/Test/test_abnf.cpp","sha":"d00d8527290dd4ce0c9bfe5604ac492e9664d468","url":"https://api.github.com/repositories/767392/contents/src/Test/test_abnf.cpp?ref=0cd3b287335286a7cf98e26e4939a4065a023028","git_url":"https://api.github.com/repositories/767392/git/blobs/d00d8527290dd4ce0c9bfe5604ac492e9664d468","html_url":"https://github.com/jacquev6/DrawSyntax/blob/0cd3b287335286a7cf98e26e4939a4065a023028/src/Test/test_abnf.cpp","repository":{"id":767392,"name":"DrawSyntax","full_name":"jacquev6/DrawSyntax","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://avatars.githubusercontent.com/u/327146","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jacquev6/DrawSyntax","description":"Draw syntax diagrams from EBNF grammars. API in C++ and Python. Try it online.","fork":false,"url":"https://api.github.com/repos/jacquev6/DrawSyntax","forks_url":"https://api.github.com/repos/jacquev6/DrawSyntax/forks","keys_url":"https://api.github.com/repos/jacquev6/DrawSyntax/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/DrawSyntax/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/DrawSyntax/teams","hooks_url":"https://api.github.com/repos/jacquev6/DrawSyntax/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/DrawSyntax/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/DrawSyntax/events","assignees_url":"https://api.github.com/repos/jacquev6/DrawSyntax/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/DrawSyntax/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/DrawSyntax/tags","blobs_url":"https://api.github.com/repos/jacquev6/DrawSyntax/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/DrawSyntax/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/DrawSyntax/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/DrawSyntax/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/DrawSyntax/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/DrawSyntax/languages","stargazers_url":"https://api.github.com/repos/jacquev6/DrawSyntax/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/DrawSyntax/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/DrawSyntax/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/DrawSyntax/subscription","commits_url":"https://api.github.com/repos/jacquev6/DrawSyntax/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/DrawSyntax/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/DrawSyntax/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/DrawSyntax/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/DrawSyntax/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/DrawSyntax/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/DrawSyntax/merges","archive_url":"https://api.github.com/repos/jacquev6/DrawSyntax/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/DrawSyntax/downloads","issues_url":"https://api.github.com/repos/jacquev6/DrawSyntax/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/DrawSyntax/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/DrawSyntax/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/DrawSyntax/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/DrawSyntax/labels{/name}","releases_url":"https://api.github.com/repos/jacquev6/DrawSyntax/releases{/id}"},"score":1.0954648},{"name":"PullRequestFile.py","path":"github/tests/PullRequestFile.py","sha":"ab34118980644b82cd9587558e1aeb13642eb2cf","url":"https://api.github.com/repositories/3544490/contents/github/tests/PullRequestFile.py?ref=5a0d5e2b69368ce59fdc8b78688165aceb9f7ca8","git_url":"https://api.github.com/repositories/3544490/git/blobs/ab34118980644b82cd9587558e1aeb13642eb2cf","html_url":"https://github.com/jacquev6/PyGithub/blob/5a0d5e2b69368ce59fdc8b78688165aceb9f7ca8/github/tests/PullRequestFile.py","repository":{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://avatars.githubusercontent.com/u/327146","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/jacquev6/PyGithub/releases{/id}"},"score":0.37301153},{"name":"SystemCalls.py","path":"MockMockMock/tests/SystemCalls.py","sha":"03cfea8463802beb2aa81a24444b5c008de033b7","url":"https://api.github.com/repositories/6430524/contents/MockMockMock/tests/SystemCalls.py?ref=55fb8668087ad7461d02ce06ab9113414478801d","git_url":"https://api.github.com/repositories/6430524/git/blobs/03cfea8463802beb2aa81a24444b5c008de033b7","html_url":"https://github.com/jacquev6/MockMockMock/blob/55fb8668087ad7461d02ce06ab9113414478801d/MockMockMock/tests/SystemCalls.py","repository":{"id":6430524,"name":"MockMockMock","full_name":"jacquev6/MockMockMock","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://avatars.githubusercontent.com/u/327146","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jacquev6/MockMockMock","description":"Python mock library focusing on very explicit definition of the mocks' behaviour","fork":false,"url":"https://api.github.com/repos/jacquev6/MockMockMock","forks_url":"https://api.github.com/repos/jacquev6/MockMockMock/forks","keys_url":"https://api.github.com/repos/jacquev6/MockMockMock/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/MockMockMock/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/MockMockMock/teams","hooks_url":"https://api.github.com/repos/jacquev6/MockMockMock/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/MockMockMock/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/MockMockMock/events","assignees_url":"https://api.github.com/repos/jacquev6/MockMockMock/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/MockMockMock/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/MockMockMock/tags","blobs_url":"https://api.github.com/repos/jacquev6/MockMockMock/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/MockMockMock/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/MockMockMock/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/MockMockMock/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/MockMockMock/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/MockMockMock/languages","stargazers_url":"https://api.github.com/repos/jacquev6/MockMockMock/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/MockMockMock/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/MockMockMock/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/MockMockMock/subscription","commits_url":"https://api.github.com/repos/jacquev6/MockMockMock/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/MockMockMock/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/MockMockMock/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/MockMockMock/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/MockMockMock/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/MockMockMock/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/MockMockMock/merges","archive_url":"https://api.github.com/repos/jacquev6/MockMockMock/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/MockMockMock/downloads","issues_url":"https://api.github.com/repos/jacquev6/MockMockMock/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/MockMockMock/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/MockMockMock/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/MockMockMock/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/MockMockMock/labels{/name}","releases_url":"https://api.github.com/repos/jacquev6/MockMockMock/releases{/id}"},"score":0.8953406},{"name":"tests.py","path":"MiniParse/Meta/Generable/tests.py","sha":"c6da48910c3c011fc57f55b0647300ecb2678aab","url":"https://api.github.com/repositories/13732521/contents/MiniParse/Meta/Generable/tests.py?ref=29a4557446adc79ce79ad77d9b2ce3156558ad5e","git_url":"https://api.github.com/repositories/13732521/git/blobs/c6da48910c3c011fc57f55b0647300ecb2678aab","html_url":"https://github.com/jacquev6/MiniParse/blob/29a4557446adc79ce79ad77d9b2ce3156558ad5e/MiniParse/Meta/Generable/tests.py","repository":{"id":13732521,"name":"MiniParse","full_name":"jacquev6/MiniParse","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://avatars.githubusercontent.com/u/327146","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jacquev6/MiniParse","description":"Minimal, hence simple, parsing library in Python, with a focus on clear error messages","fork":false,"url":"https://api.github.com/repos/jacquev6/MiniParse","forks_url":"https://api.github.com/repos/jacquev6/MiniParse/forks","keys_url":"https://api.github.com/repos/jacquev6/MiniParse/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/MiniParse/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/MiniParse/teams","hooks_url":"https://api.github.com/repos/jacquev6/MiniParse/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/MiniParse/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/MiniParse/events","assignees_url":"https://api.github.com/repos/jacquev6/MiniParse/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/MiniParse/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/MiniParse/tags","blobs_url":"https://api.github.com/repos/jacquev6/MiniParse/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/MiniParse/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/MiniParse/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/MiniParse/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/MiniParse/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/MiniParse/languages","stargazers_url":"https://api.github.com/repos/jacquev6/MiniParse/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/MiniParse/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/MiniParse/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/MiniParse/subscription","commits_url":"https://api.github.com/repos/jacquev6/MiniParse/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/MiniParse/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/MiniParse/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/MiniParse/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/MiniParse/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/MiniParse/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/MiniParse/merges","archive_url":"https://api.github.com/repos/jacquev6/MiniParse/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/MiniParse/downloads","issues_url":"https://api.github.com/repos/jacquev6/MiniParse/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/MiniParse/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/MiniParse/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/MiniParse/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/MiniParse/labels{/name}","releases_url":"https://api.github.com/repos/jacquev6/MiniParse/releases{/id}"},"score":1.4732772},{"name":"LexerTestCase.py","path":"MiniParse/Meta/Grammars/HandWrittenEbnf/tests/LexerTestCase.py","sha":"41e85de4d982c4b81ba73aa94e0b87893cfab031","url":"https://api.github.com/repositories/13732521/contents/MiniParse/Meta/Grammars/HandWrittenEbnf/tests/LexerTestCase.py?ref=29a4557446adc79ce79ad77d9b2ce3156558ad5e","git_url":"https://api.github.com/repositories/13732521/git/blobs/41e85de4d982c4b81ba73aa94e0b87893cfab031","html_url":"https://github.com/jacquev6/MiniParse/blob/29a4557446adc79ce79ad77d9b2ce3156558ad5e/MiniParse/Meta/Grammars/HandWrittenEbnf/tests/LexerTestCase.py","repository":{"id":13732521,"name":"MiniParse","full_name":"jacquev6/MiniParse","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://avatars.githubusercontent.com/u/327146","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jacquev6/MiniParse","description":"Minimal, hence simple, parsing library in Python, with a focus on clear error messages","fork":false,"url":"https://api.github.com/repos/jacquev6/MiniParse","forks_url":"https://api.github.com/repos/jacquev6/MiniParse/forks","keys_url":"https://api.github.com/repos/jacquev6/MiniParse/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/MiniParse/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/MiniParse/teams","hooks_url":"https://api.github.com/repos/jacquev6/MiniParse/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/MiniParse/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/MiniParse/events","assignees_url":"https://api.github.com/repos/jacquev6/MiniParse/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/MiniParse/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/MiniParse/tags","blobs_url":"https://api.github.com/repos/jacquev6/MiniParse/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/MiniParse/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/MiniParse/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/MiniParse/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/MiniParse/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/MiniParse/languages","stargazers_url":"https://api.github.com/repos/jacquev6/MiniParse/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/MiniParse/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/MiniParse/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/MiniParse/subscription","commits_url":"https://api.github.com/repos/jacquev6/MiniParse/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/MiniParse/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/MiniParse/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/MiniParse/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/MiniParse/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/MiniParse/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/MiniParse/merges","archive_url":"https://api.github.com/repos/jacquev6/MiniParse/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/MiniParse/downloads","issues_url":"https://api.github.com/repos/jacquev6/MiniParse/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/MiniParse/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/MiniParse/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/MiniParse/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/MiniParse/labels{/name}","releases_url":"https://api.github.com/repos/jacquev6/MiniParse/releases{/id}"},"score":0.5235063},{"name":"ParserTestCase.py","path":"MiniParse/Meta/Grammars/HandWrittenEbnf/tests/ParserTestCase.py","sha":"8668194e0cdf3e70342ff526434f3328e6f3a1b3","url":"https://api.github.com/repositories/13732521/contents/MiniParse/Meta/Grammars/HandWrittenEbnf/tests/ParserTestCase.py?ref=29a4557446adc79ce79ad77d9b2ce3156558ad5e","git_url":"https://api.github.com/repositories/13732521/git/blobs/8668194e0cdf3e70342ff526434f3328e6f3a1b3","html_url":"https://github.com/jacquev6/MiniParse/blob/29a4557446adc79ce79ad77d9b2ce3156558ad5e/MiniParse/Meta/Grammars/HandWrittenEbnf/tests/ParserTestCase.py","repository":{"id":13732521,"name":"MiniParse","full_name":"jacquev6/MiniParse","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://avatars.githubusercontent.com/u/327146","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jacquev6/MiniParse","description":"Minimal, hence simple, parsing library in Python, with a focus on clear error messages","fork":false,"url":"https://api.github.com/repos/jacquev6/MiniParse","forks_url":"https://api.github.com/repos/jacquev6/MiniParse/forks","keys_url":"https://api.github.com/repos/jacquev6/MiniParse/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/MiniParse/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/MiniParse/teams","hooks_url":"https://api.github.com/repos/jacquev6/MiniParse/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/MiniParse/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/MiniParse/events","assignees_url":"https://api.github.com/repos/jacquev6/MiniParse/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/MiniParse/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/MiniParse/tags","blobs_url":"https://api.github.com/repos/jacquev6/MiniParse/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/MiniParse/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/MiniParse/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/MiniParse/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/MiniParse/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/MiniParse/languages","stargazers_url":"https://api.github.com/repos/jacquev6/MiniParse/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/MiniParse/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/MiniParse/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/MiniParse/subscription","commits_url":"https://api.github.com/repos/jacquev6/MiniParse/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/MiniParse/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/MiniParse/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/MiniParse/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/MiniParse/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/MiniParse/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/MiniParse/merges","archive_url":"https://api.github.com/repos/jacquev6/MiniParse/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/MiniParse/downloads","issues_url":"https://api.github.com/repos/jacquev6/MiniParse/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/MiniParse/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/MiniParse/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/MiniParse/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/MiniParse/labels{/name}","releases_url":"https://api.github.com/repos/jacquev6/MiniParse/releases{/id}"},"score":0.418805}]} + +https +GET +api.github.com +None +/repositories/3544490/contents/github/tests/ReplayData/Commit.setUp.txt?ref=72f8876112ba029111c739871e3e4d7bce66b95d +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4996'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '62E81E32:5371:8412B70:53140AF7'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('content-length', '10383'), ('server', 'GitHub.com'), ('last-modified', 'Sun, 07 Jul 2013 15:52:43 GMT'), ('x-ratelimit-limit', '5000'), ('etag', '"b14a006b167b6ee8ef3a55e01c63f7d5"'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Mon, 03 Mar 2014 04:54:15 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1393823721')] +{"name":"Commit.setUp.txt","path":"github/tests/ReplayData/Commit.setUp.txt","sha":"eb063311ef37a1444a98c9f98acfed2b4caaa738","size":6820,"url":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/tests/ReplayData/Commit.setUp.txt?ref=72f8876112ba029111c739871e3e4d7bce66b95d","html_url":"https://github.com/jacquev6/PyGithub/blob/72f8876112ba029111c739871e3e4d7bce66b95d/github/tests/ReplayData/Commit.setUp.txt","git_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/eb063311ef37a1444a98c9f98acfed2b4caaa738","type":"file","content":"aHR0cHMKR0VUCmFwaS5naXRodWIuY29tCk5vbmUKL3VzZXIKeydBdXRob3Jp\nemF0aW9uJzogJ0Jhc2ljIGxvZ2luX2FuZF9wYXNzd29yZF9yZW1vdmVkJywg\nJ1VzZXItQWdlbnQnOiAnUHlHaXRodWIvUHl0aG9uJ30KbnVsbAoyMDAKWygn\nc3RhdHVzJywgJzIwMCBPSycpLCAoJ3gtcmF0ZWxpbWl0LXJlbWFpbmluZycs\nICc0OTc2JyksICgnY29udGVudC1sZW5ndGgnLCAnODAxJyksICgnc2VydmVy\nJywgJ25naW54LzEuMC4xMycpLCAoJ2Nvbm5lY3Rpb24nLCAna2VlcC1hbGl2\nZScpLCAoJ3gtcmF0ZWxpbWl0LWxpbWl0JywgJzUwMDAnKSwgKCdldGFnJywg\nJyJlYjllMTQ4NjJiYWE3MWMwNGI4ZjBlNzNhYjg3MDc1NiInKSwgKCdkYXRl\nJywgJ1N1biwgMjcgTWF5IDIwMTIgMDY6NTA6NTEgR01UJyksICgnY29udGVu\ndC10eXBlJywgJ2FwcGxpY2F0aW9uL2pzb247IGNoYXJzZXQ9dXRmLTgnKV0K\neyJwdWJsaWNfZ2lzdHMiOjMsInR5cGUiOiJVc2VyIiwiZGlza191c2FnZSI6\nMTY5NzYsInByaXZhdGVfZ2lzdHMiOjUsInB1YmxpY19yZXBvcyI6MTEsInVy\nbCI6Imh0dHBzOi8vYXBpLmdpdGh1Yi5jb20vdXNlcnMvamFjcXVldjYiLCJ0\nb3RhbF9wcml2YXRlX3JlcG9zIjo1LCJwbGFuIjp7InByaXZhdGVfcmVwb3Mi\nOjUsImNvbGxhYm9yYXRvcnMiOjEsIm5hbWUiOiJtaWNybyIsInNwYWNlIjo2\nMTQ0MDB9LCJibG9nIjoiaHR0cDovL3ZpbmNlbnQtamFjcXVlcy5uZXQiLCJh\ndmF0YXJfdXJsIjoiaHR0cHM6Ly9zZWN1cmUuZ3JhdmF0YXIuY29tL2F2YXRh\nci9iNjhkZTVhZTM4NjE2YzI5NmZhMzQ1ZDJiOWRmMjIyNT9kPWh0dHBzOi8v\nYTI0OC5lLmFrYW1haS5uZXQvYXNzZXRzLmdpdGh1Yi5jb20lMkZpbWFnZXMl\nMkZncmF2YXRhcnMlMkZncmF2YXRhci0xNDAucG5nIiwib3duZWRfcHJpdmF0\nZV9yZXBvcyI6NSwiY29sbGFib3JhdG9ycyI6MCwiY29tcGFueSI6IkNyaXRl\nbyIsImdyYXZhdGFyX2lkIjoiYjY4ZGU1YWUzODYxNmMyOTZmYTM0NWQyYjlk\nZjIyMjUiLCJsb2dpbiI6ImphY3F1ZXY2IiwiZW1haWwiOiJ2aW5jZW50QHZp\nbmNlbnQtamFjcXVlcy5uZXQiLCJoaXJlYWJsZSI6ZmFsc2UsImZvbGxvd2Vy\ncyI6MTMsIm5hbWUiOiJWaW5jZW50IEphY3F1ZXMiLCJjcmVhdGVkX2F0Ijoi\nMjAxMC0wNy0wOVQwNjoxMDowNloiLCJsb2NhdGlvbiI6IlBhcmlzLCBGcmFu\nY2UiLCJiaW8iOiIiLCJpZCI6MzI3MTQ2LCJmb2xsb3dpbmciOjI0LCJodG1s\nX3VybCI6Imh0dHBzOi8vZ2l0aHViLmNvbS9qYWNxdWV2NiJ9CgpodHRwcwpH\nRVQKYXBpLmdpdGh1Yi5jb20KTm9uZQovcmVwb3MvamFjcXVldjYvUHlHaXRo\ndWIKeydBdXRob3JpemF0aW9uJzogJ0Jhc2ljIGxvZ2luX2FuZF9wYXNzd29y\nZF9yZW1vdmVkJywgJ1VzZXItQWdlbnQnOiAnUHlHaXRodWIvUHl0aG9uJ30K\nbnVsbAoyMDAKWygnc3RhdHVzJywgJzIwMCBPSycpLCAoJ3gtcmF0ZWxpbWl0\nLXJlbWFpbmluZycsICc0OTc1JyksICgnY29udGVudC1sZW5ndGgnLCAnMTEy\nOScpLCAoJ3NlcnZlcicsICduZ2lueC8xLjAuMTMnKSwgKCdjb25uZWN0aW9u\nJywgJ2tlZXAtYWxpdmUnKSwgKCd4LXJhdGVsaW1pdC1saW1pdCcsICc1MDAw\nJyksICgnZXRhZycsICciMmY0ZDhiMDAzYzVjNGYzOTBiZTJhYzI4ZmU2MjNi\nZGIiJyksICgnZGF0ZScsICdTdW4sIDI3IE1heSAyMDEyIDA2OjUwOjUyIEdN\nVCcpLCAoJ2NvbnRlbnQtdHlwZScsICdhcHBsaWNhdGlvbi9qc29uOyBjaGFy\nc2V0PXV0Zi04JyldCnsiY2xvbmVfdXJsIjoiaHR0cHM6Ly9naXRodWIuY29t\nL2phY3F1ZXY2L1B5R2l0aHViLmdpdCIsImhhc19kb3dubG9hZHMiOnRydWUs\nIndhdGNoZXJzIjoxNSwiZ2l0X3VybCI6ImdpdDovL2dpdGh1Yi5jb20vamFj\ncXVldjYvUHlHaXRodWIuZ2l0IiwidXBkYXRlZF9hdCI6IjIwMTItMDUtMjdU\nMDY6MDA6MjlaIiwicGVybWlzc2lvbnMiOnsicHVsbCI6dHJ1ZSwiYWRtaW4i\nOnRydWUsInB1c2giOnRydWV9LCJob21lcGFnZSI6Imh0dHA6Ly92aW5jZW50\nLWphY3F1ZXMubmV0L1B5R2l0aHViIiwidXJsIjoiaHR0cHM6Ly9hcGkuZ2l0\naHViLmNvbS9yZXBvcy9qYWNxdWV2Ni9QeUdpdGh1YiIsImhhc193aWtpIjpm\nYWxzZSwiaGFzX2lzc3VlcyI6dHJ1ZSwiZm9yayI6ZmFsc2UsImZvcmtzIjoz\nLCJtaXJyb3JfdXJsIjpudWxsLCJzaXplIjozMDgsInByaXZhdGUiOmZhbHNl\nLCJvcGVuX2lzc3VlcyI6MTYsInN2bl91cmwiOiJodHRwczovL2dpdGh1Yi5j\nb20vamFjcXVldjYvUHlHaXRodWIiLCJvd25lciI6eyJ1cmwiOiJodHRwczov\nL2FwaS5naXRodWIuY29tL3VzZXJzL2phY3F1ZXY2IiwiZ3JhdmF0YXJfaWQi\nOiJiNjhkZTVhZTM4NjE2YzI5NmZhMzQ1ZDJiOWRmMjIyNSIsImxvZ2luIjoi\namFjcXVldjYiLCJpZCI6MzI3MTQ2LCJhdmF0YXJfdXJsIjoiaHR0cHM6Ly9z\nZWN1cmUuZ3JhdmF0YXIuY29tL2F2YXRhci9iNjhkZTVhZTM4NjE2YzI5NmZh\nMzQ1ZDJiOWRmMjIyNT9kPWh0dHBzOi8vYTI0OC5lLmFrYW1haS5uZXQvYXNz\nZXRzLmdpdGh1Yi5jb20lMkZpbWFnZXMlMkZncmF2YXRhcnMlMkZncmF2YXRh\nci0xNDAucG5nIn0sIm5hbWUiOiJQeUdpdGh1YiIsImxhbmd1YWdlIjoiUHl0\naG9uIiwiZGVzY3JpcHRpb24iOiJQeXRob24gbGlicmFyeSBpbXBsZW1lbnRp\nbmcgdGhlIGZ1bGwgR2l0aHViIEFQSSB2MyIsInNzaF91cmwiOiJnaXRAZ2l0\naHViLmNvbTpqYWNxdWV2Ni9QeUdpdGh1Yi5naXQiLCJwdXNoZWRfYXQiOiIy\nMDEyLTA1LTI3VDA2OjAwOjI4WiIsImNyZWF0ZWRfYXQiOiIyMDEyLTAyLTI1\nVDEyOjUzOjQ3WiIsImlkIjozNTQ0NDkwLCJodG1sX3VybCI6Imh0dHBzOi8v\nZ2l0aHViLmNvbS9qYWNxdWV2Ni9QeUdpdGh1YiIsImZ1bGxfbmFtZSI6Imph\nY3F1ZXY2L1B5R2l0aHViIn0KCmh0dHBzCkdFVAphcGkuZ2l0aHViLmNvbQpO\nb25lCi9yZXBvcy9qYWNxdWV2Ni9QeUdpdGh1Yi9jb21taXRzLzEyOTJiZjBl\nMjJjNzk2ZTkxY2MzZDZlMjRiNTQ0YWVjZThjMjFmMmEKeydBdXRob3JpemF0\naW9uJzogJ0Jhc2ljIGxvZ2luX2FuZF9wYXNzd29yZF9yZW1vdmVkJywgJ1Vz\nZXItQWdlbnQnOiAnUHlHaXRodWIvUHl0aG9uJ30KbnVsbAoyMDAKWygnc3Rh\ndHVzJywgJzIwMCBPSycpLCAoJ3gtcmF0ZWxpbWl0LXJlbWFpbmluZycsICc0\nOTc0JyksICgnY29udGVudC1sZW5ndGgnLCAnMzQ0NScpLCAoJ3NlcnZlcics\nICduZ2lueC8xLjAuMTMnKSwgKCdjb25uZWN0aW9uJywgJ2tlZXAtYWxpdmUn\nKSwgKCd4LXJhdGVsaW1pdC1saW1pdCcsICc1MDAwJyksICgnZXRhZycsICci\nYmNmZDhkNzMzNDY1YjljMjg1MjVlZGZjNzhlZGU1NjQiJyksICgnZGF0ZScs\nICdTdW4sIDI3IE1heSAyMDEyIDA2OjUwOjUyIEdNVCcpLCAoJ2NvbnRlbnQt\ndHlwZScsICdhcHBsaWNhdGlvbi9qc29uOyBjaGFyc2V0PXV0Zi04JyldCnsi\ncGFyZW50cyI6W3sic2hhIjoiYjQ2ZWQwZGZkZTVhZDAyZDNiOTFlYjU0YTQx\nYzVlZDk2MDcxMGVhZSIsInVybCI6Imh0dHBzOi8vYXBpLmdpdGh1Yi5jb20v\ncmVwb3MvamFjcXVldjYvUHlHaXRodWIvY29tbWl0cy9iNDZlZDBkZmRlNWFk\nMDJkM2I5MWViNTRhNDFjNWVkOTYwNzEwZWFlIn1dLCJjb21taXQiOnsibWVz\nc2FnZSI6IlJlbW92ZSBjb21wbGV0aW9uIGZ1bmN0aW9ucyBmcm9tIEdpdEF1\ndGhvciIsImF1dGhvciI6eyJkYXRlIjoiMjAxMi0wNS0wOVQwOToyMjozMy0w\nNzowMCIsIm5hbWUiOiJWaW5jZW50IEphY3F1ZXMiLCJlbWFpbCI6InZpbmNl\nbnRAdmluY2VudC1qYWNxdWVzLm5ldCJ9LCJjb21taXR0ZXIiOnsiZGF0ZSI6\nIjIwMTItMDUtMDlUMDk6MjI6MzMtMDc6MDAiLCJuYW1lIjoiVmluY2VudCBK\nYWNxdWVzIiwiZW1haWwiOiJ2aW5jZW50QHZpbmNlbnQtamFjcXVlcy5uZXQi\nfSwidHJlZSI6eyJzaGEiOiI0YzZiZDUwOTk0ZjBmOTgyM2Y4OThiMWM2Yzk2\nNGFkN2Q0ZmExMWFiIiwidXJsIjoiaHR0cHM6Ly9hcGkuZ2l0aHViLmNvbS9y\nZXBvcy9qYWNxdWV2Ni9QeUdpdGh1Yi9naXQvdHJlZXMvNGM2YmQ1MDk5NGYw\nZjk4MjNmODk4YjFjNmM5NjRhZDdkNGZhMTFhYiJ9LCJ1cmwiOiJodHRwczov\nL2FwaS5naXRodWIuY29tL3JlcG9zL2phY3F1ZXY2L1B5R2l0aHViL2dpdC9j\nb21taXRzLzEyOTJiZjBlMjJjNzk2ZTkxY2MzZDZlMjRiNTQ0YWVjZThjMjFm\nMmEifSwiYXV0aG9yIjp7ImdyYXZhdGFyX2lkIjoiYjY4ZGU1YWUzODYxNmMy\nOTZmYTM0NWQyYjlkZjIyMjUiLCJhdmF0YXJfdXJsIjoiaHR0cHM6Ly9zZWN1\ncmUuZ3JhdmF0YXIuY29tL2F2YXRhci9iNjhkZTVhZTM4NjE2YzI5NmZhMzQ1\nZDJiOWRmMjIyNT9kPWh0dHBzOi8vYTI0OC5lLmFrYW1haS5uZXQvYXNzZXRz\nLmdpdGh1Yi5jb20lMkZpbWFnZXMlMkZncmF2YXRhcnMlMkZncmF2YXRhci0x\nNDAucG5nIiwidXJsIjoiaHR0cHM6Ly9hcGkuZ2l0aHViLmNvbS91c2Vycy9q\nYWNxdWV2NiIsImxvZ2luIjoiamFjcXVldjYiLCJpZCI6MzI3MTQ2fSwiY29t\nbWl0dGVyIjp7ImdyYXZhdGFyX2lkIjoiYjY4ZGU1YWUzODYxNmMyOTZmYTM0\nNWQyYjlkZjIyMjUiLCJhdmF0YXJfdXJsIjoiaHR0cHM6Ly9zZWN1cmUuZ3Jh\ndmF0YXIuY29tL2F2YXRhci9iNjhkZTVhZTM4NjE2YzI5NmZhMzQ1ZDJiOWRm\nMjIyNT9kPWh0dHBzOi8vYTI0OC5lLmFrYW1haS5uZXQvYXNzZXRzLmdpdGh1\nYi5jb20lMkZpbWFnZXMlMkZncmF2YXRhcnMlMkZncmF2YXRhci0xNDAucG5n\nIiwidXJsIjoiaHR0cHM6Ly9hcGkuZ2l0aHViLmNvbS91c2Vycy9qYWNxdWV2\nNiIsImxvZ2luIjoiamFjcXVldjYiLCJpZCI6MzI3MTQ2fSwic2hhIjoiMTI5\nMmJmMGUyMmM3OTZlOTFjYzNkNmUyNGI1NDRhZWNlOGMyMWYyYSIsInN0YXRz\nIjp7InRvdGFsIjoyMCwiZGVsZXRpb25zIjoyMCwiYWRkaXRpb25zIjowfSwi\ndXJsIjoiaHR0cHM6Ly9hcGkuZ2l0aHViLmNvbS9yZXBvcy9qYWNxdWV2Ni9Q\neUdpdGh1Yi9jb21taXRzLzEyOTJiZjBlMjJjNzk2ZTkxY2MzZDZlMjRiNTQ0\nYWVjZThjMjFmMmEiLCJmaWxlcyI6W3sicGF0Y2giOiJAQCAtMTQsMjIgKzE0\nLDE3IEBAIGRlZiBfX2luaXRfXyggc2VsZiwgcmVxdWVzdGVyLCBhdHRyaWJ1\ndGVzLCBsYXp5ICk6XG4gICAgICAgICBzZWxmLl9fY29tcGxldGVkID0gRmFs\nc2VcbiAgICAgICAgIHNlbGYuX19pbml0QXR0cmlidXRlcygpXG4gICAgICAg\nICBzZWxmLl9fdXNlQXR0cmlidXRlcyggYXR0cmlidXRlcyApXG4tICAgICAg\nICBpZiBub3QgbGF6eTpcbi0gICAgICAgICAgICBzZWxmLl9fY29tcGxldGUo\nKVxuIFxuICAgICBAcHJvcGVydHlcbiAgICAgZGVmIGRhdGUoIHNlbGYgKTpc\nbi0gICAgICAgIHNlbGYuX19jb21wbGV0ZUlmTmVlZGVkKCBzZWxmLl9fZGF0\nZSApXG4gICAgICAgICByZXR1cm4gc2VsZi5fX2RhdGVcbiBcbiAgICAgQHBy\nb3BlcnR5XG4gICAgIGRlZiBlbWFpbCggc2VsZiApOlxuLSAgICAgICAgc2Vs\nZi5fX2NvbXBsZXRlSWZOZWVkZWQoIHNlbGYuX19lbWFpbCApXG4gICAgICAg\nICByZXR1cm4gc2VsZi5fX2VtYWlsXG4gXG4gICAgIEBwcm9wZXJ0eVxuICAg\nICBkZWYgbmFtZSggc2VsZiApOlxuLSAgICAgICAgc2VsZi5fX2NvbXBsZXRl\nSWZOZWVkZWQoIHNlbGYuX19uYW1lIClcbiAgICAgICAgIHJldHVybiBzZWxm\nLl9fbmFtZVxuIFxuICAgICBkZWYgX19pbml0QXR0cmlidXRlcyggc2VsZiAp\nOlxuQEAgLTM3LDIxICszMiw2IEBAIGRlZiBfX2luaXRBdHRyaWJ1dGVzKCBz\nZWxmICk6XG4gICAgICAgICBzZWxmLl9fZW1haWwgPSBOb25lXG4gICAgICAg\nICBzZWxmLl9fbmFtZSA9IE5vbmVcbiBcbi0gICAgZGVmIF9fY29tcGxldGVJ\nZk5lZWRlZCggc2VsZiwgdGVzdGVkQXR0cmlidXRlICk6XG4tICAgICAgICBp\nZiBub3Qgc2VsZi5fX2NvbXBsZXRlZCBhbmQgdGVzdGVkQXR0cmlidXRlIGlz\nIE5vbmU6XG4tICAgICAgICAgICAgc2VsZi5fX2NvbXBsZXRlKClcbi1cbi0g\nICAgIyBAdG90byBEbyBub3QgZ2VuZXJhdGUgX19jb21wbGV0ZSBpZiB0eXBl\nIGhhcyBubyB1cmwgYXR0cmlidXRlXG4tICAgIGRlZiBfX2NvbXBsZXRlKCBz\nZWxmICk6XG4tICAgICAgICBzdGF0dXMsIGhlYWRlcnMsIGRhdGEgPSBzZWxm\nLl9fcmVxdWVzdGVyLnJlcXVlc3QoXG4tICAgICAgICAgICAgXCJHRVRcIixc\nbi0gICAgICAgICAgICBzZWxmLl9fdXJsLFxuLSAgICAgICAgICAgIE5vbmUs\nXG4tICAgICAgICAgICAgTm9uZVxuLSAgICAgICAgKVxuLSAgICAgICAgc2Vs\nZi5fX3VzZUF0dHJpYnV0ZXMoIGRhdGEgKVxuLSAgICAgICAgc2VsZi5fX2Nv\nbXBsZXRlZCA9IFRydWVcbi1cbiAgICAgZGVmIF9fdXNlQXR0cmlidXRlcygg\nc2VsZiwgYXR0cmlidXRlcyApOlxuICAgICAgICAgICNAdG90byBObyBuZWVk\nIHRvIGNoZWNrIGlmIGF0dHJpYnV0ZSBpcyBpbiBhdHRyaWJ1dGVzIHdoZW4g\nYXR0cmlidXRlIGlzIG1hbmRhdG9yeVxuICAgICAgICAgaWYgXCJkYXRlXCIg\naW4gYXR0cmlidXRlcyBhbmQgYXR0cmlidXRlc1sgXCJkYXRlXCIgXSBpcyBu\nb3QgTm9uZToiLCJzdGF0dXMiOiJtb2RpZmllZCIsImRlbGV0aW9ucyI6MjAs\nImJsb2JfdXJsIjoiaHR0cHM6Ly9naXRodWIuY29tL2phY3F1ZXY2L1B5R2l0\naHViL2Jsb2IvMTI5MmJmMGUyMmM3OTZlOTFjYzNkNmUyNGI1NDRhZWNlOGMy\nMWYyYS9naXRodWIvR2l0aHViT2JqZWN0cy9HaXRBdXRob3IucHkiLCJjaGFu\nZ2VzIjoyMCwiYWRkaXRpb25zIjowLCJzaGEiOiIxMjkyYmYwZTIyYzc5NmU5\nMWNjM2Q2ZTI0YjU0NGFlY2U4YzIxZjJhIiwicmF3X3VybCI6Imh0dHBzOi8v\nZ2l0aHViLmNvbS9qYWNxdWV2Ni9QeUdpdGh1Yi9yYXcvMTI5MmJmMGUyMmM3\nOTZlOTFjYzNkNmUyNGI1NDRhZWNlOGMyMWYyYS9naXRodWIvR2l0aHViT2Jq\nZWN0cy9HaXRBdXRob3IucHkiLCJmaWxlbmFtZSI6ImdpdGh1Yi9HaXRodWJP\nYmplY3RzL0dpdEF1dGhvci5weSJ9XX0KCg==\n","encoding":"base64","_links":{"self":"https://api.github.com/repos/jacquev6/PyGithub/contents/github/tests/ReplayData/Commit.setUp.txt?ref=72f8876112ba029111c739871e3e4d7bce66b95d","git":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/eb063311ef37a1444a98c9f98acfed2b4caaa738","html":"https://github.com/jacquev6/PyGithub/blob/72f8876112ba029111c739871e3e4d7bce66b95d/github/tests/ReplayData/Commit.setUp.txt"}} + diff --git a/lib/github/tests/ReplayData/Search.testSearchIssues.txt b/lib/github/tests/ReplayData/Search.testSearchIssues.txt new file mode 100644 index 0000000000..3e47891d35 --- /dev/null +++ b/lib/github/tests/ReplayData/Search.testSearchIssues.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/search/issues?sort=comments&q=compile+language%3AC%2B%2B&order=desc +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '29'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '62E81E32:5370:61ACB7C:53140729'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('content-length', '107710'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '30'), ('link', '; rel="next", ; rel="last"'), ('cache-control', 'no-cache'), ('date', 'Mon, 03 Mar 2014 04:38:01 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1393821541')] +{"total_count":29512,"items":[{"url":"https://api.github.com/repos/hrydgard/ppsspp/issues/997","labels_url":"https://api.github.com/repos/hrydgard/ppsspp/issues/997/labels{/name}","comments_url":"https://api.github.com/repos/hrydgard/ppsspp/issues/997/comments","events_url":"https://api.github.com/repos/hrydgard/ppsspp/issues/997/events","html_url":"https://github.com/hrydgard/ppsspp/pull/997","id":12068673,"number":997,"title":"Make sceMpeg and sceAtrac basiclly workable for PC ","user":{"login":"oioitff","id":3243757,"avatar_url":"https://avatars.githubusercontent.com/u/3243757","gravatar_id":"3d4824a444d900fa57aff97702f221ec","url":"https://api.github.com/users/oioitff","html_url":"https://github.com/oioitff","followers_url":"https://api.github.com/users/oioitff/followers","following_url":"https://api.github.com/users/oioitff/following{/other_user}","gists_url":"https://api.github.com/users/oioitff/gists{/gist_id}","starred_url":"https://api.github.com/users/oioitff/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/oioitff/subscriptions","organizations_url":"https://api.github.com/users/oioitff/orgs","repos_url":"https://api.github.com/users/oioitff/repos","events_url":"https://api.github.com/users/oioitff/events{/privacy}","received_events_url":"https://api.github.com/users/oioitff/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","assignee":null,"milestone":null,"comments":1017,"created_at":"2013-03-15T15:46:16Z","updated_at":"2013-06-03T21:25:43Z","closed_at":"2013-06-02T07:08:58Z","pull_request":{"html_url":"https://github.com/hrydgard/ppsspp/pull/997","diff_url":"https://github.com/hrydgard/ppsspp/pull/997.diff","patch_url":"https://github.com/hrydgard/ppsspp/pull/997.patch"},"body":"I use ffmpeg for video decoding and dshow for at3+ audio. And I have tried my best not to break other platforms yet. In fact, the video part which using ffmpeg may also be possible for other platforms.\r\nBy the way, I haven't add the header file and lib for ffmpeg and dshow yet. I'm not sure how to do this and need some helps.","score":0.08252439},{"url":"https://api.github.com/repos/ufz/ogs/issues/275","labels_url":"https://api.github.com/repos/ufz/ogs/issues/275/labels{/name}","comments_url":"https://api.github.com/repos/ufz/ogs/issues/275/comments","events_url":"https://api.github.com/repos/ufz/ogs/issues/275/events","html_url":"https://github.com/ufz/ogs/pull/275","id":23250111,"number":275,"title":"Add interface for PETSc vector","user":{"login":"wenqing","id":1343839,"avatar_url":"https://avatars.githubusercontent.com/u/1343839","gravatar_id":"92f354b0a3a11920792f1075bf067308","url":"https://api.github.com/users/wenqing","html_url":"https://github.com/wenqing","followers_url":"https://api.github.com/users/wenqing/followers","following_url":"https://api.github.com/users/wenqing/following{/other_user}","gists_url":"https://api.github.com/users/wenqing/gists{/gist_id}","starred_url":"https://api.github.com/users/wenqing/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wenqing/subscriptions","organizations_url":"https://api.github.com/users/wenqing/orgs","repos_url":"https://api.github.com/users/wenqing/repos","events_url":"https://api.github.com/users/wenqing/events{/privacy}","received_events_url":"https://api.github.com/users/wenqing/received_events","type":"User","site_admin":false},"labels":[],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/ufz/ogs/milestones/6","labels_url":"https://api.github.com/repos/ufz/ogs/milestones/6/labels","id":413894,"number":6,"title":"PETSc support and performance test","description":"","creator":{"login":"norihiro-w","id":800408,"avatar_url":"https://avatars.githubusercontent.com/u/800408","gravatar_id":"48dbb4167ba59bcbbc83427b10449404","url":"https://api.github.com/users/norihiro-w","html_url":"https://github.com/norihiro-w","followers_url":"https://api.github.com/users/norihiro-w/followers","following_url":"https://api.github.com/users/norihiro-w/following{/other_user}","gists_url":"https://api.github.com/users/norihiro-w/gists{/gist_id}","starred_url":"https://api.github.com/users/norihiro-w/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/norihiro-w/subscriptions","organizations_url":"https://api.github.com/users/norihiro-w/orgs","repos_url":"https://api.github.com/users/norihiro-w/repos","events_url":"https://api.github.com/users/norihiro-w/events{/privacy}","received_events_url":"https://api.github.com/users/norihiro-w/received_events","type":"User","site_admin":false},"open_issues":2,"closed_issues":0,"state":"open","created_at":"2013-08-28T17:10:17Z","updated_at":"2014-02-01T19:44:15Z","due_on":null},"comments":34,"created_at":"2013-11-25T15:40:23Z","updated_at":"2014-02-21T15:41:07Z","closed_at":null,"pull_request":{"html_url":"https://github.com/ufz/ogs/pull/275","diff_url":"https://github.com/ufz/ogs/pull/275.diff","patch_url":"https://github.com/ufz/ogs/pull/275.patch"},"body":"@TomFischer @norihiro-w @endJunction @bilke : The previous pull request about the PETSc interface has been split into four. This is the second part: an interface for PETSc vector.\r\n\r\nAdd class InforMPI in BaseLib/MPI, and changed the corresponding CMakeLists.txt\r\n\r\nAdd test for the number of processors in usage. \r\n\r\nChanges according to the comments by Nori and Dima\r\n\r\nRewrite collectLocalVectors. Some other changes according to Nori's comments. Put calling MPI_Comm_rank local according to a test results on EVE.\r\n1000,000 times calling: 0.02 s\r\n1000,000,000 times calling: 10.77 s\r\n@norihiro-w \r\n","score":0.37365162},{"url":"https://api.github.com/repos/ceph/ceph/issues/289","labels_url":"https://api.github.com/repos/ceph/ceph/issues/289/labels{/name}","comments_url":"https://api.github.com/repos/ceph/ceph/issues/289/comments","events_url":"https://api.github.com/repos/ceph/ceph/issues/289/events","html_url":"https://github.com/ceph/ceph/pull/289","id":14371957,"number":289,"title":"Wip rgw geo rebase","user":{"login":"gregsfortytwo","id":908479,"avatar_url":"https://avatars.githubusercontent.com/u/908479","gravatar_id":"19fc74958678713dfdf1f8ca776f8fbc","url":"https://api.github.com/users/gregsfortytwo","html_url":"https://github.com/gregsfortytwo","followers_url":"https://api.github.com/users/gregsfortytwo/followers","following_url":"https://api.github.com/users/gregsfortytwo/following{/other_user}","gists_url":"https://api.github.com/users/gregsfortytwo/gists{/gist_id}","starred_url":"https://api.github.com/users/gregsfortytwo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gregsfortytwo/subscriptions","organizations_url":"https://api.github.com/users/gregsfortytwo/orgs","repos_url":"https://api.github.com/users/gregsfortytwo/repos","events_url":"https://api.github.com/users/gregsfortytwo/events{/privacy}","received_events_url":"https://api.github.com/users/gregsfortytwo/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","assignee":null,"milestone":null,"comments":1,"created_at":"2013-05-15T18:19:15Z","updated_at":"2013-07-19T21:28:50Z","closed_at":"2013-07-15T16:33:05Z","pull_request":{"html_url":"https://github.com/ceph/ceph/pull/289","diff_url":"https://github.com/ceph/ceph/pull/289.diff","patch_url":"https://github.com/ceph/ceph/pull/289.patch"},"body":"This branch serves as a rebase of wip-rgw-geo-2 to compress out some fix commits and allow review. This pull request serves for tracking comments, but it should not be merged yet.","score":0.079567954},{"url":"https://api.github.com/repos/TrinityCore/TrinityCore/issues/8721","labels_url":"https://api.github.com/repos/TrinityCore/TrinityCore/issues/8721/labels{/name}","comments_url":"https://api.github.com/repos/TrinityCore/TrinityCore/issues/8721/comments","events_url":"https://api.github.com/repos/TrinityCore/TrinityCore/issues/8721/events","html_url":"https://github.com/TrinityCore/TrinityCore/pull/8721","id":9423897,"number":8721,"title":"Core/AHBot: Implemented AHBot based on MaNGOS code","user":{"login":"blipi","id":1239061,"avatar_url":"https://avatars.githubusercontent.com/u/1239061","gravatar_id":"f08738002057f24d190c298a0e269552","url":"https://api.github.com/users/blipi","html_url":"https://github.com/blipi","followers_url":"https://api.github.com/users/blipi/followers","following_url":"https://api.github.com/users/blipi/following{/other_user}","gists_url":"https://api.github.com/users/blipi/gists{/gist_id}","starred_url":"https://api.github.com/users/blipi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/blipi/subscriptions","organizations_url":"https://api.github.com/users/blipi/orgs","repos_url":"https://api.github.com/users/blipi/repos","events_url":"https://api.github.com/users/blipi/events{/privacy}","received_events_url":"https://api.github.com/users/blipi/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/TrinityCore/TrinityCore/labels/Feedback-PatchFix","name":"Feedback-PatchFix","color":"d7e102"},{"url":"https://api.github.com/repos/TrinityCore/TrinityCore/labels/Comp-Core","name":"Comp-Core","color":"FF6600"}],"state":"open","assignee":null,"milestone":null,"comments":217,"created_at":"2012-12-20T04:48:00Z","updated_at":"2014-02-15T22:03:33Z","closed_at":null,"pull_request":{"html_url":"https://github.com/TrinityCore/TrinityCore/pull/8721","diff_url":"https://github.com/TrinityCore/TrinityCore/pull/8721.diff","patch_url":"https://github.com/TrinityCore/TrinityCore/pull/8721.patch"},"body":"CMake must be rerun, there are new folders and include paths.\r\n\r\nI've ported the code from MaNGOS, adapted it, cleaned it a little bit to follow TC coding standards (though further cleaning may be done) and tested it.\r\n\r\nChanges are:\r\n- /game/AuctionHouseBot/ *.cpp, *.h : Base AHBot code\r\n- scripts: Added commands to modify its behaviour\r\n- language: 1145 to 1164 added AHBot command strings\r\n\r\nThe reason behind not using sWorld->GetXConfig and not adding the ConfigKeys to World.h but using a custom class is that this values may be modified ingame by using commands. Doing it through world would have made this impossible.\r\n\r\nAnd that's it, enjoy.","score":0.21822606},{"url":"https://api.github.com/repos/cms-sw/cmssw/issues/1817","labels_url":"https://api.github.com/repos/cms-sw/cmssw/issues/1817/labels{/name}","comments_url":"https://api.github.com/repos/cms-sw/cmssw/issues/1817/comments","events_url":"https://api.github.com/repos/cms-sw/cmssw/issues/1817/events","html_url":"https://github.com/cms-sw/cmssw/pull/1817","id":24277400,"number":1817,"title":"High pt taus: TauID for 2014","user":{"login":"jpavel","id":4130483,"avatar_url":"https://avatars.githubusercontent.com/u/4130483","gravatar_id":"676de5ce10ac6f7d28168d04042829bb","url":"https://api.github.com/users/jpavel","html_url":"https://github.com/jpavel","followers_url":"https://api.github.com/users/jpavel/followers","following_url":"https://api.github.com/users/jpavel/following{/other_user}","gists_url":"https://api.github.com/users/jpavel/gists{/gist_id}","starred_url":"https://api.github.com/users/jpavel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jpavel/subscriptions","organizations_url":"https://api.github.com/users/jpavel/orgs","repos_url":"https://api.github.com/users/jpavel/repos","events_url":"https://api.github.com/users/jpavel/events{/privacy}","received_events_url":"https://api.github.com/users/jpavel/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/cms-sw/cmssw/labels/analysis-approved","name":"analysis-approved","color":"009800"},{"url":"https://api.github.com/repos/cms-sw/cmssw/labels/dqm-approved","name":"dqm-approved","color":"009800"},{"url":"https://api.github.com/repos/cms-sw/cmssw/labels/reconstruction-approved","name":"reconstruction-approved","color":"009800"},{"url":"https://api.github.com/repos/cms-sw/cmssw/labels/fully-signed","name":"fully-signed","color":"009800"},{"url":"https://api.github.com/repos/cms-sw/cmssw/labels/tests-approved","name":"tests-approved","color":"009800"},{"url":"https://api.github.com/repos/cms-sw/cmssw/labels/orp-approved","name":"orp-approved","color":"009800"}],"state":"closed","assignee":null,"milestone":{"url":"https://api.github.com/repos/cms-sw/cmssw/milestones/37","labels_url":"https://api.github.com/repos/cms-sw/cmssw/milestones/37/labels","id":562088,"number":37,"title":"CMSSW_7_0_0","description":"","creator":{"login":"nclopezo","id":1944922,"avatar_url":"https://avatars.githubusercontent.com/u/1944922","gravatar_id":"c37878ac7a56b492e4f8df2a94abbd49","url":"https://api.github.com/users/nclopezo","html_url":"https://github.com/nclopezo","followers_url":"https://api.github.com/users/nclopezo/followers","following_url":"https://api.github.com/users/nclopezo/following{/other_user}","gists_url":"https://api.github.com/users/nclopezo/gists{/gist_id}","starred_url":"https://api.github.com/users/nclopezo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nclopezo/subscriptions","organizations_url":"https://api.github.com/users/nclopezo/orgs","repos_url":"https://api.github.com/users/nclopezo/repos","events_url":"https://api.github.com/users/nclopezo/events{/privacy}","received_events_url":"https://api.github.com/users/nclopezo/received_events","type":"User","site_admin":false},"open_issues":0,"closed_issues":91,"state":"closed","created_at":"2014-02-07T13:17:24Z","updated_at":"2014-02-16T18:48:16Z","due_on":"2014-02-19T08:00:00Z"},"comments":122,"created_at":"2013-12-13T22:44:24Z","updated_at":"2014-02-13T15:10:44Z","closed_at":"2014-01-27T11:21:39Z","pull_request":{"html_url":"https://github.com/cms-sw/cmssw/pull/1817","diff_url":"https://github.com/cms-sw/cmssw/pull/1817.diff","patch_url":"https://github.com/cms-sw/cmssw/pull/1817.patch"},"body":"Large upgrade of PFTau sequence. Main changes are\r\n1) Change in algorithm logic\r\n2) Change in data format (new members plus shift from Ref to Ptr)\r\n3) Addition of tau lifetime information\r\n4) Addition of boosted tau subjet techniques\r\n5) Many new discriminants","score":0.11910673},{"url":"https://api.github.com/repos/madlib/madlib/issues/79","labels_url":"https://api.github.com/repos/madlib/madlib/issues/79/labels{/name}","comments_url":"https://api.github.com/repos/madlib/madlib/issues/79/comments","events_url":"https://api.github.com/repos/madlib/madlib/issues/79/events","html_url":"https://github.com/madlib/madlib/pull/79","id":2408877,"number":79,"title":"K-means Clustering","user":{"login":"agorajek","id":371403,"avatar_url":"https://avatars.githubusercontent.com/u/371403","gravatar_id":"192a794658c17862c50f6704a67e47a8","url":"https://api.github.com/users/agorajek","html_url":"https://github.com/agorajek","followers_url":"https://api.github.com/users/agorajek/followers","following_url":"https://api.github.com/users/agorajek/following{/other_user}","gists_url":"https://api.github.com/users/agorajek/gists{/gist_id}","starred_url":"https://api.github.com/users/agorajek/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/agorajek/subscriptions","organizations_url":"https://api.github.com/users/agorajek/orgs","repos_url":"https://api.github.com/users/agorajek/repos","events_url":"https://api.github.com/users/agorajek/events{/privacy}","received_events_url":"https://api.github.com/users/agorajek/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","assignee":null,"milestone":null,"comments":4,"created_at":"2011-11-30T23:24:11Z","updated_at":"2012-01-03T21:42:48Z","closed_at":"2012-01-03T21:42:18Z","pull_request":{"html_url":"https://github.com/madlib/madlib/pull/79","diff_url":"https://github.com/madlib/madlib/pull/79.diff","patch_url":"https://github.com/madlib/madlib/pull/79.patch"},"body":"Ready for review and merge. Well, by looking at the number of comments so far, maybe not \"for merge\" yet :)","score":0.056832943},{"url":"https://api.github.com/repos/msgpack/msgpack/issues/128","labels_url":"https://api.github.com/repos/msgpack/msgpack/issues/128/labels{/name}","comments_url":"https://api.github.com/repos/msgpack/msgpack/issues/128/comments","events_url":"https://api.github.com/repos/msgpack/msgpack/issues/128/events","html_url":"https://github.com/msgpack/msgpack/issues/128","id":11338741,"number":128,"title":"Discussions on the upcoming MessagePack spec that adds the string type to the protocol.","user":{"login":"kiyoto","id":178554,"avatar_url":"https://avatars.githubusercontent.com/u/178554","gravatar_id":"2e0942c4a8e970da7a03289aa11e46c2","url":"https://api.github.com/users/kiyoto","html_url":"https://github.com/kiyoto","followers_url":"https://api.github.com/users/kiyoto/followers","following_url":"https://api.github.com/users/kiyoto/following{/other_user}","gists_url":"https://api.github.com/users/kiyoto/gists{/gist_id}","starred_url":"https://api.github.com/users/kiyoto/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kiyoto/subscriptions","organizations_url":"https://api.github.com/users/kiyoto/orgs","repos_url":"https://api.github.com/users/kiyoto/repos","events_url":"https://api.github.com/users/kiyoto/events{/privacy}","received_events_url":"https://api.github.com/users/kiyoto/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/msgpack/msgpack/labels/Spec","name":"Spec","color":"99ccff"}],"state":"closed","assignee":null,"milestone":null,"comments":220,"created_at":"2013-02-24T19:31:10Z","updated_at":"2013-10-09T14:40:00Z","closed_at":"2013-08-17T08:12:01Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"This issue continues the discussion that started in [this issue](https://github.com/msgpack/msgpack/issues/121), which has grown interminably long.\r\n\r\n* [Here is the link](https://gist.github.com/frsyuki/5022569) to @frsyuki's proposed spec circa Feb. 24, 2013\r\n\r\nHere is to a fruitful, invigorating, productive thread! Hooray chums!","score":0.0373521},{"url":"https://api.github.com/repos/hrydgard/ppsspp/issues/1686","labels_url":"https://api.github.com/repos/hrydgard/ppsspp/issues/1686/labels{/name}","comments_url":"https://api.github.com/repos/hrydgard/ppsspp/issues/1686/comments","events_url":"https://api.github.com/repos/hrydgard/ppsspp/issues/1686/events","html_url":"https://github.com/hrydgard/ppsspp/issues/1686","id":13980502,"number":1686,"title":"Danganronpa bug","user":{"login":"CPkmn","id":1909938,"avatar_url":"https://avatars.githubusercontent.com/u/1909938","gravatar_id":"81b5c8a3609d65ca98f2a6107d157e7a","url":"https://api.github.com/users/CPkmn","html_url":"https://github.com/CPkmn","followers_url":"https://api.github.com/users/CPkmn/followers","following_url":"https://api.github.com/users/CPkmn/following{/other_user}","gists_url":"https://api.github.com/users/CPkmn/gists{/gist_id}","starred_url":"https://api.github.com/users/CPkmn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/CPkmn/subscriptions","organizations_url":"https://api.github.com/users/CPkmn/orgs","repos_url":"https://api.github.com/users/CPkmn/repos","events_url":"https://api.github.com/users/CPkmn/events{/privacy}","received_events_url":"https://api.github.com/users/CPkmn/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","assignee":null,"milestone":null,"comments":179,"created_at":"2013-05-05T17:17:33Z","updated_at":"2014-02-11T09:04:34Z","closed_at":"2013-09-26T09:29:01Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I tried a search in the issues here to see if anyone reported this yet, but it seems no one did.\r\n\r\nWhile playing Danganronpa (both the demo and the full release) in PPSSPP I noticed objects are not interactable. This basically makes the game unplayable since the requires object interaction on many occasions. I notice the same issue on JPCSP, however the software rendering mode in JPCSP works with the objects (and has since at least revision 2450, the first software rendering public release; https://code.google.com/p/jpcsp/source/detail?r=2450). Unfortunately I can't check earlier releases' software rendering modes since I don't know how to compile JPCSP.\r\n\r\nI'll attach a picture of what PPSSPP and JPCSP (in software rendering mode) get when hovering over a should-be-interactable object.\r\n\r\n(JPCSP in software rendering mode)\r\n![danganronpa_correct](https://f.cloud.github.com/assets/1909938/463853/31bfc68e-b5a7-11e2-8918-5fc283a0b4bb.png)\r\n\r\n(PPSSPP)\r\n![danganronpa_wrong](https://f.cloud.github.com/assets/1909938/463854/41ff12d4-b5a7-11e2-800b-d70788e39a26.png)","score":0.47607067},{"url":"https://api.github.com/repos/crosswalk-project/tizen-extensions-crosswalk/issues/246","labels_url":"https://api.github.com/repos/crosswalk-project/tizen-extensions-crosswalk/issues/246/labels{/name}","comments_url":"https://api.github.com/repos/crosswalk-project/tizen-extensions-crosswalk/issues/246/comments","events_url":"https://api.github.com/repos/crosswalk-project/tizen-extensions-crosswalk/issues/246/events","html_url":"https://github.com/crosswalk-project/tizen-extensions-crosswalk/pull/246","id":27697165,"number":246,"title":"[Application] Add Application API initial support (getAppInfo/getAppsInfo)","user":{"login":"seanlong","id":1661875,"avatar_url":"https://avatars.githubusercontent.com/u/1661875","gravatar_id":"646d59934fbcc020b0a1eb55a6de3e68","url":"https://api.github.com/users/seanlong","html_url":"https://github.com/seanlong","followers_url":"https://api.github.com/users/seanlong/followers","following_url":"https://api.github.com/users/seanlong/following{/other_user}","gists_url":"https://api.github.com/users/seanlong/gists{/gist_id}","starred_url":"https://api.github.com/users/seanlong/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/seanlong/subscriptions","organizations_url":"https://api.github.com/users/seanlong/orgs","repos_url":"https://api.github.com/users/seanlong/repos","events_url":"https://api.github.com/users/seanlong/events{/privacy}","received_events_url":"https://api.github.com/users/seanlong/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","assignee":null,"milestone":null,"comments":21,"created_at":"2014-02-17T07:45:55Z","updated_at":"2014-02-28T09:34:01Z","closed_at":"2014-02-28T09:34:01Z","pull_request":{"html_url":"https://github.com/crosswalk-project/tizen-extensions-crosswalk/pull/246","diff_url":"https://github.com/crosswalk-project/tizen-extensions-crosswalk/pull/246.diff","patch_url":"https://github.com/crosswalk-project/tizen-extensions-crosswalk/pull/246.patch"},"body":"Please check the design doc at:https://docs.google.com/document/d/10rDpiH2E2bSOp0gg3FNK-2eFIetkPygM98utBv-tB3I/edit\r\n\r\nAs described in the \"plan\" section, these 2 patches are intended to support ApplicationInformation interface and ApplicationManager.getAppinfo/getAppsInfo API.","score":0.10370887},{"url":"https://api.github.com/repos/cyclus/cyclus/issues/641","labels_url":"https://api.github.com/repos/cyclus/cyclus/issues/641/labels{/name}","comments_url":"https://api.github.com/repos/cyclus/cyclus/issues/641/comments","events_url":"https://api.github.com/repos/cyclus/cyclus/issues/641/events","html_url":"https://github.com/cyclus/cyclus/pull/641","id":23102422,"number":641,"title":"Cep18","user":{"login":"gidden","id":1392657,"avatar_url":"https://avatars.githubusercontent.com/u/1392657","gravatar_id":"2887b946470a1cd380d847f0ffaffd38","url":"https://api.github.com/users/gidden","html_url":"https://github.com/gidden","followers_url":"https://api.github.com/users/gidden/followers","following_url":"https://api.github.com/users/gidden/following{/other_user}","gists_url":"https://api.github.com/users/gidden/gists{/gist_id}","starred_url":"https://api.github.com/users/gidden/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gidden/subscriptions","organizations_url":"https://api.github.com/users/gidden/orgs","repos_url":"https://api.github.com/users/gidden/repos","events_url":"https://api.github.com/users/gidden/events{/privacy}","received_events_url":"https://api.github.com/users/gidden/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","assignee":null,"milestone":{"url":"https://api.github.com/repos/cyclus/cyclus/milestones/26","labels_url":"https://api.github.com/repos/cyclus/cyclus/milestones/26/labels","id":462969,"number":26,"title":"v0.4","description":"The v0.4 release","creator":{"login":"scopatz","id":320553,"avatar_url":"https://avatars.githubusercontent.com/u/320553","gravatar_id":"a6e6385b7870c04692700df9ba93eb27","url":"https://api.github.com/users/scopatz","html_url":"https://github.com/scopatz","followers_url":"https://api.github.com/users/scopatz/followers","following_url":"https://api.github.com/users/scopatz/following{/other_user}","gists_url":"https://api.github.com/users/scopatz/gists{/gist_id}","starred_url":"https://api.github.com/users/scopatz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/scopatz/subscriptions","organizations_url":"https://api.github.com/users/scopatz/orgs","repos_url":"https://api.github.com/users/scopatz/repos","events_url":"https://api.github.com/users/scopatz/events{/privacy}","received_events_url":"https://api.github.com/users/scopatz/received_events","type":"User","site_admin":false},"open_issues":0,"closed_issues":63,"state":"closed","created_at":"2013-10-23T19:58:41Z","updated_at":"2014-02-16T09:42:28Z","due_on":"2014-01-15T08:00:00Z"},"comments":37,"created_at":"2013-11-21T22:24:15Z","updated_at":"2013-12-05T19:31:12Z","closed_at":"2013-12-05T18:31:36Z","pull_request":{"html_url":"https://github.com/cyclus/cyclus/pull/641","diff_url":"https://github.com/cyclus/cyclus/pull/641.diff","patch_url":"https://github.com/cyclus/cyclus/pull/641.patch"},"body":"This is *not* ready to be merged. I'm issuing a PR now so that we can begin the review process. Here you go, @scopatz, @rwcarlsen!\r\n\r\nEdit: The nominal work here is complete. This PR is associated with implementation additions, and PR #644 is associated with deprecated code removal. I'm beginning Cycamore work. ","score":0.07001801},{"url":"https://api.github.com/repos/smspillaz/gjs/issues/1","labels_url":"https://api.github.com/repos/smspillaz/gjs/issues/1/labels{/name}","comments_url":"https://api.github.com/repos/smspillaz/gjs/issues/1/comments","events_url":"https://api.github.com/repos/smspillaz/gjs/issues/1/events","html_url":"https://github.com/smspillaz/gjs/pull/1","id":24796688,"number":1,"title":"Add Code Coverage Support for GJS","user":{"login":"smspillaz","id":775309,"avatar_url":"https://avatars.githubusercontent.com/u/775309","gravatar_id":"27ecfada6258e22f92da0c5c9ffafd47","url":"https://api.github.com/users/smspillaz","html_url":"https://github.com/smspillaz","followers_url":"https://api.github.com/users/smspillaz/followers","following_url":"https://api.github.com/users/smspillaz/following{/other_user}","gists_url":"https://api.github.com/users/smspillaz/gists{/gist_id}","starred_url":"https://api.github.com/users/smspillaz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/smspillaz/subscriptions","organizations_url":"https://api.github.com/users/smspillaz/orgs","repos_url":"https://api.github.com/users/smspillaz/repos","events_url":"https://api.github.com/users/smspillaz/events{/privacy}","received_events_url":"https://api.github.com/users/smspillaz/received_events","type":"User","site_admin":false},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":2,"created_at":"2013-12-26T18:59:24Z","updated_at":"2014-01-07T03:13:49Z","closed_at":null,"pull_request":{"html_url":"https://github.com/smspillaz/gjs/pull/1","diff_url":"https://github.com/smspillaz/gjs/pull/1.diff","patch_url":"https://github.com/smspillaz/gjs/pull/1.patch"},"body":"This branch adds code coverage support to Gjs.\r\n\r\nOne of the main items of work here was to provide a suitable abstraction for the debugger functionality in SpiderMonkey so that multiple clients could use it concurrently (eg, the function profiler and the code coverage tool and potentially a real debugger in the future).\r\n\r\nThis is provided through the GjsInterruptRegister interface (and its implementation GjsDebugInterruptRegister). It effectively works by providing a central place where clients can add callbacks and each of its functions returns a GjsDebugConnection. Once the client is done using the debugger in the way that they need to, they simply unref the connection and it will call back into the interrupt register and change the SpiderMonkey state appropriately if need be.\r\n\r\nGjsProfiler and GjsCoverage effectively work by using this interface, the former placing a hook on toplevel execution and function calls and the latter putting the script under coverage into single-step mode where we can record line hit information. It then (if requested) will require this information out to a file.\r\n\r\nQ & A:\r\n\r\n * Q: Why not use signals?\r\n * A: Signals don't provide us with a means to get a notification when the observer starts or stops observing a signal. We need this information in order to put SpiderMonkey in the right state when we need it (else keeping the debugging hooks on indefinitely will be needlessly expensive).\r\n\r\n * Q: The object ownership between GjsInterruptRegister, GjsCoverage and GjsProfiler seems strange.\r\n * A: This is an area I'd like some feedback and advice. The design would be far more optimal if GjsCoverage and GjsProfiler took ownership of GjsinterruptRegister outside the scope of the context as opposed to within it. However, it seems like the Gjs authors wanted to be able to use the profiler with any that uses Gjs as an embedded language, which means that the profiler needed to be owned (and created by) the context. This in turn means that we need to have GjsCoverage owned by the context as well. However, it is slightly awkward, since in order to construct it we need to have clients provide the requested coverage paths and coverage output file in the form of construction properties.","score":0.13473003},{"url":"https://api.github.com/repos/Itseez/opencv/issues/1447","labels_url":"https://api.github.com/repos/Itseez/opencv/issues/1447/labels{/name}","comments_url":"https://api.github.com/repos/Itseez/opencv/issues/1447/comments","events_url":"https://api.github.com/repos/Itseez/opencv/issues/1447/events","html_url":"https://github.com/Itseez/opencv/pull/1447","id":19446174,"number":1447,"title":"Pull Request for Computational Photography","user":{"login":"Siddharthk","id":718854,"avatar_url":"https://avatars.githubusercontent.com/u/718854","gravatar_id":"e8bd224f44c0e57cd09ee79696be14d5","url":"https://api.github.com/users/Siddharthk","html_url":"https://github.com/Siddharthk","followers_url":"https://api.github.com/users/Siddharthk/followers","following_url":"https://api.github.com/users/Siddharthk/following{/other_user}","gists_url":"https://api.github.com/users/Siddharthk/gists{/gist_id}","starred_url":"https://api.github.com/users/Siddharthk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Siddharthk/subscriptions","organizations_url":"https://api.github.com/users/Siddharthk/orgs","repos_url":"https://api.github.com/users/Siddharthk/repos","events_url":"https://api.github.com/users/Siddharthk/events{/privacy}","received_events_url":"https://api.github.com/users/Siddharthk/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","assignee":{"login":"AnnaKogan8","id":2435529,"avatar_url":"https://avatars.githubusercontent.com/u/2435529","gravatar_id":"153773b9480f1ca735f811d2b46b1a47","url":"https://api.github.com/users/AnnaKogan8","html_url":"https://github.com/AnnaKogan8","followers_url":"https://api.github.com/users/AnnaKogan8/followers","following_url":"https://api.github.com/users/AnnaKogan8/following{/other_user}","gists_url":"https://api.github.com/users/AnnaKogan8/gists{/gist_id}","starred_url":"https://api.github.com/users/AnnaKogan8/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/AnnaKogan8/subscriptions","organizations_url":"https://api.github.com/users/AnnaKogan8/orgs","repos_url":"https://api.github.com/users/AnnaKogan8/repos","events_url":"https://api.github.com/users/AnnaKogan8/events{/privacy}","received_events_url":"https://api.github.com/users/AnnaKogan8/received_events","type":"User","site_admin":false},"milestone":null,"comments":146,"created_at":"2013-09-13T13:01:08Z","updated_at":"2013-12-09T14:01:16Z","closed_at":"2013-12-05T08:38:36Z","pull_request":{"html_url":"https://github.com/Itseez/opencv/pull/1447","diff_url":"https://github.com/Itseez/opencv/pull/1447.diff","patch_url":"https://github.com/Itseez/opencv/pull/1447.patch"},"body":"All 3 modules added","score":0.113595694},{"url":"https://api.github.com/repos/telefonicaid/fiware-orion/issues/176","labels_url":"https://api.github.com/repos/telefonicaid/fiware-orion/issues/176/labels{/name}","comments_url":"https://api.github.com/repos/telefonicaid/fiware-orion/issues/176/comments","events_url":"https://api.github.com/repos/telefonicaid/fiware-orion/issues/176/events","html_url":"https://github.com/telefonicaid/fiware-orion/pull/176","id":24614652,"number":176,"title":"contextBroker IPv6 support","user":{"login":"rbl219","id":5345527,"avatar_url":"https://avatars.githubusercontent.com/u/5345527","gravatar_id":"7f07f76114a467657383a5afb259600b","url":"https://api.github.com/users/rbl219","html_url":"https://github.com/rbl219","followers_url":"https://api.github.com/users/rbl219/followers","following_url":"https://api.github.com/users/rbl219/following{/other_user}","gists_url":"https://api.github.com/users/rbl219/gists{/gist_id}","starred_url":"https://api.github.com/users/rbl219/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rbl219/subscriptions","organizations_url":"https://api.github.com/users/rbl219/orgs","repos_url":"https://api.github.com/users/rbl219/repos","events_url":"https://api.github.com/users/rbl219/events{/privacy}","received_events_url":"https://api.github.com/users/rbl219/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","assignee":null,"milestone":null,"comments":7,"created_at":"2013-12-20T10:26:16Z","updated_at":"2014-02-10T18:39:54Z","closed_at":"2014-02-10T18:39:54Z","pull_request":{"html_url":"https://github.com/telefonicaid/fiware-orion/pull/176","diff_url":"https://github.com/telefonicaid/fiware-orion/pull/176.diff","patch_url":"https://github.com/telefonicaid/fiware-orion/pull/176.patch"},"body":"This PR includes changes in contextBroker and orion common libraries for IPv6 support","score":0.07127465},{"url":"https://api.github.com/repos/rethinkdb/rethinkdb/issues/977","labels_url":"https://api.github.com/repos/rethinkdb/rethinkdb/issues/977/labels{/name}","comments_url":"https://api.github.com/repos/rethinkdb/rethinkdb/issues/977/comments","events_url":"https://api.github.com/repos/rethinkdb/rethinkdb/issues/977/events","html_url":"https://github.com/rethinkdb/rethinkdb/issues/977","id":15371319,"number":977,"title":"Proposal: Dates","user":{"login":"mlucy","id":1777134,"avatar_url":"https://avatars.githubusercontent.com/u/1777134","gravatar_id":"5c96c1013fdc26a6d880dd41cdb3af3e","url":"https://api.github.com/users/mlucy","html_url":"https://github.com/mlucy","followers_url":"https://api.github.com/users/mlucy/followers","following_url":"https://api.github.com/users/mlucy/following{/other_user}","gists_url":"https://api.github.com/users/mlucy/gists{/gist_id}","starred_url":"https://api.github.com/users/mlucy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mlucy/subscriptions","organizations_url":"https://api.github.com/users/mlucy/orgs","repos_url":"https://api.github.com/users/mlucy/repos","events_url":"https://api.github.com/users/mlucy/events{/privacy}","received_events_url":"https://api.github.com/users/mlucy/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/rethinkdb/rethinkdb/labels/tp%3Areview","name":"tp:review","color":"eedd11"},{"url":"https://api.github.com/repos/rethinkdb/rethinkdb/labels/tp%3ARQL_proposal","name":"tp:RQL_proposal","color":"0052cc"},{"url":"https://api.github.com/repos/rethinkdb/rethinkdb/labels/tp%3AAPI_settled","name":"tp:API_settled","color":"007575"}],"state":"closed","assignee":{"login":"mlucy","id":1777134,"avatar_url":"https://avatars.githubusercontent.com/u/1777134","gravatar_id":"5c96c1013fdc26a6d880dd41cdb3af3e","url":"https://api.github.com/users/mlucy","html_url":"https://github.com/mlucy","followers_url":"https://api.github.com/users/mlucy/followers","following_url":"https://api.github.com/users/mlucy/following{/other_user}","gists_url":"https://api.github.com/users/mlucy/gists{/gist_id}","starred_url":"https://api.github.com/users/mlucy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mlucy/subscriptions","organizations_url":"https://api.github.com/users/mlucy/orgs","repos_url":"https://api.github.com/users/mlucy/repos","events_url":"https://api.github.com/users/mlucy/events{/privacy}","received_events_url":"https://api.github.com/users/mlucy/received_events","type":"User","site_admin":false},"milestone":{"url":"https://api.github.com/repos/rethinkdb/rethinkdb/milestones/40","labels_url":"https://api.github.com/repos/rethinkdb/rethinkdb/milestones/40/labels","id":366793,"number":40,"title":"1.8","description":"","creator":{"login":"coffeemug","id":48436,"avatar_url":"https://avatars.githubusercontent.com/u/48436","gravatar_id":"fedc0598a0eae3f7eac98ea84e597f20","url":"https://api.github.com/users/coffeemug","html_url":"https://github.com/coffeemug","followers_url":"https://api.github.com/users/coffeemug/followers","following_url":"https://api.github.com/users/coffeemug/following{/other_user}","gists_url":"https://api.github.com/users/coffeemug/gists{/gist_id}","starred_url":"https://api.github.com/users/coffeemug/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/coffeemug/subscriptions","organizations_url":"https://api.github.com/users/coffeemug/orgs","repos_url":"https://api.github.com/users/coffeemug/repos","events_url":"https://api.github.com/users/coffeemug/events{/privacy}","received_events_url":"https://api.github.com/users/coffeemug/received_events","type":"User","site_admin":false},"open_issues":0,"closed_issues":96,"state":"closed","created_at":"2013-06-29T01:55:11Z","updated_at":"2013-08-30T00:57:02Z","due_on":"2013-08-13T07:00:00Z"},"comments":164,"created_at":"2013-06-10T22:05:05Z","updated_at":"2013-10-04T16:47:24Z","closed_at":"2013-08-08T23:30:00Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"I propose that we introduce three new pseudo-types: dates (by which I mean date, time, and optional timezone), durations, and intervals, all cribbed from ISO 8601 (http://en.wikipedia.org/wiki/ISO_8601), which we represent as strings.\r\n\r\nWe introduce the following terms:\r\n```ruby\r\ndate.date_sub(other_date) => duration\r\ndate.dur_sub(duration) => other_date\r\ndate.dur_add(duration) => other_date\r\nduration.dur_sub(other_duration) => third_duration\r\nduration.dur_add(other_duration) => third_duration\r\n\r\ndate.date_{lt/gt/le/ge/eq/ne}(other_date) => bool\r\nduration.dur_{lt/gt/le/ge/eq/ne}(other_date) => bool\r\n\r\n# intervals can also be specified directly as strings\r\nr.interval(date, other_date) => interval\r\nr.interval(date, duration) => interval\r\ndate.during(interval) => bool\r\n```\r\n\r\nWe should also update the drivers to automatically render native dates/durations/intervals as the appropriate strings.\r\n\r\nSo, for example, in Ruby you could get all rows inserted in the last day with:\r\n```ruby\r\ntable.between(Date.today, Date.today - 1, :index => :timestamp)\r\n```\r\nOr, if Ruby didn't have easy date manipulation:\r\n```ruby\r\ntable.between(Time.now, r(Time.now).dur_sub(\"P1M\"), :index => :timestamp)\r\n```","score":0.03586875},{"url":"https://api.github.com/repos/crosswalk-project/crosswalk/issues/1179","labels_url":"https://api.github.com/repos/crosswalk-project/crosswalk/issues/1179/labels{/name}","comments_url":"https://api.github.com/repos/crosswalk-project/crosswalk/issues/1179/comments","events_url":"https://api.github.com/repos/crosswalk-project/crosswalk/issues/1179/events","html_url":"https://github.com/crosswalk-project/crosswalk/pull/1179","id":23128902,"number":1179,"title":"[Android][SysApps] Implement W3C SysApps Contacts API","user":{"login":"deqing","id":1152174,"avatar_url":"https://avatars.githubusercontent.com/u/1152174","gravatar_id":"8028a6a5008b0f8ccea391fb276a4000","url":"https://api.github.com/users/deqing","html_url":"https://github.com/deqing","followers_url":"https://api.github.com/users/deqing/followers","following_url":"https://api.github.com/users/deqing/following{/other_user}","gists_url":"https://api.github.com/users/deqing/gists{/gist_id}","starred_url":"https://api.github.com/users/deqing/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/deqing/subscriptions","organizations_url":"https://api.github.com/users/deqing/orgs","repos_url":"https://api.github.com/users/deqing/repos","events_url":"https://api.github.com/users/deqing/events{/privacy}","received_events_url":"https://api.github.com/users/deqing/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","assignee":null,"milestone":null,"comments":13,"created_at":"2013-11-22T10:31:59Z","updated_at":"2013-12-05T17:23:04Z","closed_at":"2013-12-05T17:23:04Z","pull_request":{"html_url":"https://github.com/crosswalk-project/crosswalk/pull/1179","diff_url":"https://github.com/crosswalk-project/crosswalk/pull/1179.diff","patch_url":"https://github.com/crosswalk-project/crosswalk/pull/1179.patch"},"body":"The implementation is based on 26 August 2013 editor's draft version:\r\nhttp://www.w3.org/2012/sysapps/contacts-manager-api/\r\n\r\nCompleted features list:\r\n* Save/update individual contact and contacts in batch\r\n* Find/list contacts\r\n* Remove contacts\r\n* Contact change event\r\n\r\nDesign ideas can be found in the [\"Intent to implement\" document](http://www.mail-archive.com/crosswalk-dev@lists.crosswalk-project.org/msg00346.html).\r\nFeature: [XWALK-49](https://crosswalk-project.org/jira/browse/XWALK-49)","score":0.11442199},{"url":"https://api.github.com/repos/mangosR2/mangos/issues/456","labels_url":"https://api.github.com/repos/mangosR2/mangos/issues/456/labels{/name}","comments_url":"https://api.github.com/repos/mangosR2/mangos/issues/456/comments","events_url":"https://api.github.com/repos/mangosR2/mangos/issues/456/events","html_url":"https://github.com/mangosR2/mangos/issues/456","id":2042576,"number":456,"title":"branch testing - for test code.","user":{"login":"rsa","id":148874,"avatar_url":"https://avatars.githubusercontent.com/u/148874","gravatar_id":"457439dd610042a46972f25d1c8b1019","url":"https://api.github.com/users/rsa","html_url":"https://github.com/rsa","followers_url":"https://api.github.com/users/rsa/followers","following_url":"https://api.github.com/users/rsa/following{/other_user}","gists_url":"https://api.github.com/users/rsa/gists{/gist_id}","starred_url":"https://api.github.com/users/rsa/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rsa/subscriptions","organizations_url":"https://api.github.com/users/rsa/orgs","repos_url":"https://api.github.com/users/rsa/repos","events_url":"https://api.github.com/users/rsa/events{/privacy}","received_events_url":"https://api.github.com/users/rsa/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/mangosR2/mangos/labels/Need+test","name":"Need test","color":"e10c02"}],"state":"closed","assignee":null,"milestone":null,"comments":151,"created_at":"2011-10-25T08:24:47Z","updated_at":"2012-03-08T08:49:55Z","closed_at":"2012-03-08T08:49:54Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"continue discussion from old issues by stability.","score":0.05234338},{"url":"https://api.github.com/repos/TrinityCore/TrinityCore/issues/5218","labels_url":"https://api.github.com/repos/TrinityCore/TrinityCore/issues/5218/labels{/name}","comments_url":"https://api.github.com/repos/TrinityCore/TrinityCore/issues/5218/comments","events_url":"https://api.github.com/repos/TrinityCore/TrinityCore/issues/5218/events","html_url":"https://github.com/TrinityCore/TrinityCore/issues/5218","id":3199401,"number":5218,"title":"[GDB-Backtrace] Collision BIH::intersectRay","user":{"login":"Amit86","id":977628,"avatar_url":"https://avatars.githubusercontent.com/u/977628","gravatar_id":"6096498e2a310a150d64eca522e65215","url":"https://api.github.com/users/Amit86","html_url":"https://github.com/Amit86","followers_url":"https://api.github.com/users/Amit86/followers","following_url":"https://api.github.com/users/Amit86/following{/other_user}","gists_url":"https://api.github.com/users/Amit86/gists{/gist_id}","starred_url":"https://api.github.com/users/Amit86/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Amit86/subscriptions","organizations_url":"https://api.github.com/users/Amit86/orgs","repos_url":"https://api.github.com/users/Amit86/repos","events_url":"https://api.github.com/users/Amit86/events{/privacy}","received_events_url":"https://api.github.com/users/Amit86/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/TrinityCore/TrinityCore/labels/HasBacktrace","name":"HasBacktrace","color":"02e10c"},{"url":"https://api.github.com/repos/TrinityCore/TrinityCore/labels/Priority-Critical","name":"Priority-Critical","color":"e102d8"}],"state":"closed","assignee":{"login":"Subv","id":357072,"avatar_url":"https://avatars.githubusercontent.com/u/357072","gravatar_id":"22425321ce534d18919abbe8d3349f09","url":"https://api.github.com/users/Subv","html_url":"https://github.com/Subv","followers_url":"https://api.github.com/users/Subv/followers","following_url":"https://api.github.com/users/Subv/following{/other_user}","gists_url":"https://api.github.com/users/Subv/gists{/gist_id}","starred_url":"https://api.github.com/users/Subv/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Subv/subscriptions","organizations_url":"https://api.github.com/users/Subv/orgs","repos_url":"https://api.github.com/users/Subv/repos","events_url":"https://api.github.com/users/Subv/events{/privacy}","received_events_url":"https://api.github.com/users/Subv/received_events","type":"User","site_admin":false},"milestone":null,"comments":147,"created_at":"2012-02-13T12:00:09Z","updated_at":"2013-11-05T05:50:57Z","closed_at":"2013-01-21T02:10:14Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"On hash 84268be\r\n\r\nFirst collision crash\r\n\r\n\r\nLink: http://paste2.org/p/1902836\r\n\r\nJust an FYI for Sub, dont close if the lines doesnt fit my spell::update isnt alterd\r\n\r\n```cpp\r\n\r\n\r\nvoid Spell::update(uint32 difftime)\r\n{\r\n // update pointers based at it's GUIDs\r\n UpdatePointers();\r\n\r\n if (m_targets.GetUnitTargetGUID() && !m_targets.GetUnitTarget())\r\n {\r\n sLog->outDebug(LOG_FILTER_SPELLS_AURAS, \"Spell %u is cancelled due to removal of target.\", m_spellInfo->Id);\r\n cancel();\r\n return;\r\n }\r\n\r\n // check if the player caster has moved before the spell finished\r\n if ((m_caster->GetTypeId() == TYPEID_PLAYER && m_timer != 0) &&\r\n m_caster->isMoving() && (m_spellInfo->InterruptFlags & SPELL_INTERRUPT_FLAG_MOVEMENT) &&\r\n (m_spellInfo->Effects[0].Effect != SPELL_EFFECT_STUCK || !m_caster->HasUnitMovementFlag(MOVEMENTFLAG_FALLING)))\r\n {\r\n // don't cancel for melee, autorepeat, triggered and instant spells\r\n if (!IsNextMeleeSwingSpell() && !IsAutoRepeat() && !IsTriggered())\r\n cancel();\r\n }\r\n\r\n switch (m_spellState)\r\n {\r\n case SPELL_STATE_PREPARING:\r\n {\r\n if (m_timer > 0)\r\n {\r\n // Cancel the cast if the target is not in line of sight\r\n if (m_targets.GetUnitTarget() && !m_caster->IsWithinLOSInMap(m_targets.GetUnitTarget()))\r\n {\r\n SendCastResult(SPELL_FAILED_LINE_OF_SIGHT);\r\n cancel();\r\n return;\r\n }\r\n\r\n if (difftime >= (uint32)m_timer)\r\n m_timer = 0;\r\n else\r\n m_timer -= difftime;\r\n }\r\n\r\n if (m_timer == 0 && !IsNextMeleeSwingSpell() && !IsAutoRepeat())\r\n // don't CheckCast for instant spells - done in spell::prepare, skip duplicate checks, needed for range checks for example\r\n cast(!m_casttime);\r\n break;\r\n }\r\n case SPELL_STATE_CASTING:\r\n {\r\n if (m_timer)\r\n {\r\n // check if there are alive targets left\r\n if (!UpdateChanneledTargetList())\r\n {\r\n sLog->outDebug(LOG_FILTER_SPELLS_AURAS, \"Channeled spell %d is removed due to lack of targets\", m_spellInfo->Id);\r\n SendChannelUpdate(0);\r\n finish();\r\n }\r\n\r\n if (m_timer > 0)\r\n {\r\n if (difftime >= (uint32)m_timer)\r\n m_timer = 0;\r\n else\r\n m_timer -= difftime;\r\n }\r\n }\r\n\r\n if (m_timer == 0)\r\n {\r\n SendChannelUpdate(0);\r\n\r\n // channeled spell processed independently for quest targeting\r\n // cast at creature (or GO) quest objectives update at successful cast channel finished\r\n // ignore autorepeat/melee casts for speed (not exist quest for spells (hm...)\r\n if (!IsAutoRepeat() && !IsNextMeleeSwingSpell())\r\n {\r\n if (Player* p = m_caster->GetCharmerOrOwnerPlayerOrPlayerItself())\r\n {\r\n for (std::list::iterator ihit = m_UniqueTargetInfo.begin(); ihit != m_UniqueTargetInfo.end(); ++ihit)\r\n {\r\n TargetInfo* target = &*ihit;\r\n if (!IS_CRE_OR_VEH_GUID(target->targetGUID))\r\n continue;\r\n\r\n Unit* unit = m_caster->GetGUID() == target->targetGUID ? m_caster : ObjectAccessor::GetUnit(*m_caster, target->targetGUID);\r\n if (unit == NULL)\r\n continue;\r\n\r\n p->CastedCreatureOrGO(unit->GetEntry(), unit->GetGUID(), m_spellInfo->Id);\r\n }\r\n\r\n for (std::list::iterator ihit = m_UniqueGOTargetInfo.begin(); ihit != m_UniqueGOTargetInfo.end(); ++ihit)\r\n {\r\n GOTargetInfo* target = &*ihit;\r\n\r\n GameObject* go = m_caster->GetMap()->GetGameObject(target->targetGUID);\r\n if (!go)\r\n continue;\r\n\r\n p->CastedCreatureOrGO(go->GetEntry(), go->GetGUID(), m_spellInfo->Id);\r\n }\r\n }\r\n }\r\n\r\n finish();\r\n }\r\n break;\r\n }\r\n default:\r\n break;\r\n }\r\n}\r\n```","score":0.113824666},{"url":"https://api.github.com/repos/ariya/phantomjs/issues/11418","labels_url":"https://api.github.com/repos/ariya/phantomjs/issues/11418/labels{/name}","comments_url":"https://api.github.com/repos/ariya/phantomjs/issues/11418/comments","events_url":"https://api.github.com/repos/ariya/phantomjs/issues/11418/events","html_url":"https://github.com/ariya/phantomjs/issues/11418","id":15753818,"number":11418,"title":"CoreText Issue on OS X Mavericks. For best performance, only use PostScript names when calling CTFontCreateWithName()","user":{"login":"wisesimpson","id":544374,"avatar_url":"https://avatars.githubusercontent.com/u/544374","gravatar_id":"80161171790cd0b6dfe442999be578ce","url":"https://api.github.com/users/wisesimpson","html_url":"https://github.com/wisesimpson","followers_url":"https://api.github.com/users/wisesimpson/followers","following_url":"https://api.github.com/users/wisesimpson/following{/other_user}","gists_url":"https://api.github.com/users/wisesimpson/gists{/gist_id}","starred_url":"https://api.github.com/users/wisesimpson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wisesimpson/subscriptions","organizations_url":"https://api.github.com/users/wisesimpson/orgs","repos_url":"https://api.github.com/users/wisesimpson/repos","events_url":"https://api.github.com/users/wisesimpson/events{/privacy}","received_events_url":"https://api.github.com/users/wisesimpson/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/ariya/phantomjs/labels/Priority-High","name":"Priority-High","color":"ededed"},{"url":"https://api.github.com/repos/ariya/phantomjs/labels/Status-Accepted","name":"Status-Accepted","color":"ededed"},{"url":"https://api.github.com/repos/ariya/phantomjs/labels/Domain-Qt","name":"Domain-Qt","color":"ededed"}],"state":"closed","assignee":{"login":"ariya","id":7288,"avatar_url":"https://avatars.githubusercontent.com/u/7288","gravatar_id":"0284b8950e0f4a57bcc092d4dbb98d97","url":"https://api.github.com/users/ariya","html_url":"https://github.com/ariya","followers_url":"https://api.github.com/users/ariya/followers","following_url":"https://api.github.com/users/ariya/following{/other_user}","gists_url":"https://api.github.com/users/ariya/gists{/gist_id}","starred_url":"https://api.github.com/users/ariya/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ariya/subscriptions","organizations_url":"https://api.github.com/users/ariya/orgs","repos_url":"https://api.github.com/users/ariya/repos","events_url":"https://api.github.com/users/ariya/events{/privacy}","received_events_url":"https://api.github.com/users/ariya/received_events","type":"User","site_admin":false},"milestone":null,"comments":140,"created_at":"2013-06-19T16:13:46Z","updated_at":"2014-02-14T15:03:41Z","closed_at":"2014-01-04T04:42:51Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"When I run phantoms 1.9.1 (downloaded) on the new OS X Mavericks, I got this:\r\n\r\n2013-06-19 23:46:05.765 phantomjs[6149:507] CoreText performance note: Client called CTFontCreateWithName() using name \"Times New Roman\" and got font with PostScript name \"TimesNewRomanPSMT\". For best performance, only use PostScript names when calling this API.\r\n2013-06-19 23:46:05.767 phantomjs[6149:507] CoreText performance note: Set a breakpoint on CTFontLogSuboptimalRequest to debug.\r\n\r\nI think change the \"Times New Roman\" to \"TimesNewRomanPSMT\" may fix the issue.","score":0.11483045},{"url":"https://api.github.com/repos/Inglenookians/Project-Inglenook/issues/2","labels_url":"https://api.github.com/repos/Inglenookians/Project-Inglenook/issues/2/labels{/name}","comments_url":"https://api.github.com/repos/Inglenookians/Project-Inglenook/issues/2/comments","events_url":"https://api.github.com/repos/Inglenookians/Project-Inglenook/issues/2/events","html_url":"https://github.com/Inglenookians/Project-Inglenook/pull/2","id":8091725,"number":2,"title":"Logging (ign_logging)","user":{"login":"glimhumbletoes","id":1552722,"avatar_url":"https://avatars.githubusercontent.com/u/1552722","gravatar_id":"2b5c50bdfda433e1ee6f9cb768c9167b","url":"https://api.github.com/users/glimhumbletoes","html_url":"https://github.com/glimhumbletoes","followers_url":"https://api.github.com/users/glimhumbletoes/followers","following_url":"https://api.github.com/users/glimhumbletoes/following{/other_user}","gists_url":"https://api.github.com/users/glimhumbletoes/gists{/gist_id}","starred_url":"https://api.github.com/users/glimhumbletoes/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/glimhumbletoes/subscriptions","organizations_url":"https://api.github.com/users/glimhumbletoes/orgs","repos_url":"https://api.github.com/users/glimhumbletoes/repos","events_url":"https://api.github.com/users/glimhumbletoes/events{/privacy}","received_events_url":"https://api.github.com/users/glimhumbletoes/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","assignee":{"login":"chris5287","id":1552744,"avatar_url":"https://avatars.githubusercontent.com/u/1552744","gravatar_id":"68e2fb94c6f5ca87d97d946f1d5fa293","url":"https://api.github.com/users/chris5287","html_url":"https://github.com/chris5287","followers_url":"https://api.github.com/users/chris5287/followers","following_url":"https://api.github.com/users/chris5287/following{/other_user}","gists_url":"https://api.github.com/users/chris5287/gists{/gist_id}","starred_url":"https://api.github.com/users/chris5287/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chris5287/subscriptions","organizations_url":"https://api.github.com/users/chris5287/orgs","repos_url":"https://api.github.com/users/chris5287/repos","events_url":"https://api.github.com/users/chris5287/events{/privacy}","received_events_url":"https://api.github.com/users/chris5287/received_events","type":"User","site_admin":false},"milestone":null,"comments":4,"created_at":"2012-11-04T20:16:18Z","updated_at":"2012-11-15T00:27:42Z","closed_at":"2012-11-15T00:27:42Z","pull_request":{"html_url":"https://github.com/Inglenookians/Project-Inglenook/pull/2","diff_url":"https://github.com/Inglenookians/Project-Inglenook/pull/2.diff","patch_url":"https://github.com/Inglenookians/Project-Inglenook/pull/2.patch"},"body":"Proposed initial version of inglenooks logging library. Pull request includes:\r\n\r\n
      \r\n
    • Inglenook logging library (all content of src/lib/ign_logging)
    • \r\n
    • Test routines (code coverage for all library, except exclusions cited in all_tests.h )
    • \r\n
    • Logging example code (all content of src/examples/lib/ign_logging )
    • \r\n
    • Modifications to CMAKE to support additional switches
    • \r\n
    • Build switch -DWITH_EXAMPLES ( On by default).
    • \r\n
    \r\n\r\nThis release is tagged as ign_logging_v1.0.0000.","score":0.10236126},{"url":"https://api.github.com/repos/hrydgard/ppsspp/issues/2846","labels_url":"https://api.github.com/repos/hrydgard/ppsspp/issues/2846/labels{/name}","comments_url":"https://api.github.com/repos/hrydgard/ppsspp/issues/2846/comments","events_url":"https://api.github.com/repos/hrydgard/ppsspp/issues/2846/events","html_url":"https://github.com/hrydgard/ppsspp/issues/2846","id":16982116,"number":2846,"title":"Persona 3 Portable 5th block crash *fixed*","user":{"login":"CrymsonZX","id":5048874,"avatar_url":"https://avatars.githubusercontent.com/u/5048874","gravatar_id":"dcc50045fb21f472c9d5b6d35eb822c5","url":"https://api.github.com/users/CrymsonZX","html_url":"https://github.com/CrymsonZX","followers_url":"https://api.github.com/users/CrymsonZX/followers","following_url":"https://api.github.com/users/CrymsonZX/following{/other_user}","gists_url":"https://api.github.com/users/CrymsonZX/gists{/gist_id}","starred_url":"https://api.github.com/users/CrymsonZX/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/CrymsonZX/subscriptions","organizations_url":"https://api.github.com/users/CrymsonZX/orgs","repos_url":"https://api.github.com/users/CrymsonZX/repos","events_url":"https://api.github.com/users/CrymsonZX/events{/privacy}","received_events_url":"https://api.github.com/users/CrymsonZX/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","assignee":null,"milestone":null,"comments":132,"created_at":"2013-07-19T17:21:36Z","updated_at":"2014-01-30T07:00:32Z","closed_at":"2014-01-30T07:00:32Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"When I try to access the 5th block of Tartarus the game crashes with no explanation, I can still get to it via the 4th block but when I exit a battle 9 times out of 10 it'll crash as well, I'm using the default emulator settings and the game has been going smoothly till this point so I am really confused as to why this is happening.\r\nIf anyone knows how to fix this, I'd be really glad to try it.\r\nThank you in advance.\r\n\r\nEDIT: Works with Hardware Transforming disabled, tested on version 0.8.1-648-g88685b0\r\nSpecial thanks to @solarmystic and @vsub \r\n\r\nEDIT 2: first of all, sorry for no updates, been trying to reach 5th block on my 2nd playthrough, but now that I'm there I can say that @sum2012 's build works with Hardware Transform ON, I can play perfectly without any crashes, but, I don't see a difference in speed as @solarmystic said, but that may be just me. In conclusion, this is closed for good, I'll just keep using this build until an actual official fixed version is released by the developers.\r\nThank you @sum2012 for the build and @solarmystic for the trace that led to the build. And again, sorry for no updates in a while.\r\n\r\nEDIT 3: Oops, guess I said that too soon... Tried to close the menu while in the block and it crashed on me... I'm gonna need to re-open this thread...\r\n\r\nEDIT 4: Works without crashes on the newest version with default settings.","score":0.089615434},{"url":"https://api.github.com/repos/crosswalk-project/crosswalk/issues/1579","labels_url":"https://api.github.com/repos/crosswalk-project/crosswalk/issues/1579/labels{/name}","comments_url":"https://api.github.com/repos/crosswalk-project/crosswalk/issues/1579/comments","events_url":"https://api.github.com/repos/crosswalk-project/crosswalk/issues/1579/events","html_url":"https://github.com/crosswalk-project/crosswalk/pull/1579","id":27496160,"number":1579,"title":"[Application] [Extension] Added two permission APIs.","user":{"login":"mbbill","id":841602,"avatar_url":"https://avatars.githubusercontent.com/u/841602","gravatar_id":"4c96f8afdf03dfe5591422ca283a0dbd","url":"https://api.github.com/users/mbbill","html_url":"https://github.com/mbbill","followers_url":"https://api.github.com/users/mbbill/followers","following_url":"https://api.github.com/users/mbbill/following{/other_user}","gists_url":"https://api.github.com/users/mbbill/gists{/gist_id}","starred_url":"https://api.github.com/users/mbbill/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbbill/subscriptions","organizations_url":"https://api.github.com/users/mbbill/orgs","repos_url":"https://api.github.com/users/mbbill/repos","events_url":"https://api.github.com/users/mbbill/events{/privacy}","received_events_url":"https://api.github.com/users/mbbill/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","assignee":null,"milestone":null,"comments":9,"created_at":"2014-02-13T05:51:57Z","updated_at":"2014-02-20T10:12:35Z","closed_at":"2014-02-20T08:49:33Z","pull_request":{"html_url":"https://github.com/crosswalk-project/crosswalk/pull/1579","diff_url":"https://github.com/crosswalk-project/crosswalk/pull/1579.diff","patch_url":"https://github.com/crosswalk-project/crosswalk/pull/1579.patch"},"body":"CheckAPIAccessControl\r\nThis API is for external extension developer. The API need to be called in the\r\nimplementation of each exported API in C or C++ code. For C extension\r\nimplantation, header file \"public/XW_Extension_Permissions.h\" should be\r\nincluded. For each API that need access sensitive data, developer should call\r\nCheckAPIAccessControl for API control. For C++ extension implantation, header\r\nfile \"xwalk/common/xwalk_external_extension.h\" should be included.\r\n\r\nRegisterPermissions\r\nThe runtime permission mapping is registered by extension which\r\nimplements some specific API, for example: \"bluetooth\" ->\r\n\"bluetooth.read, bluetooth.write, bluetooth.management\" Whenever there\r\ncomes a API permission request, we can tell whether this API is\r\nregistered, if yes, return the according permission name.","score":0.25919735},{"url":"https://api.github.com/repos/MailCore/mailcore2/issues/155","labels_url":"https://api.github.com/repos/MailCore/mailcore2/issues/155/labels{/name}","comments_url":"https://api.github.com/repos/MailCore/mailcore2/issues/155/comments","events_url":"https://api.github.com/repos/MailCore/mailcore2/issues/155/events","html_url":"https://github.com/MailCore/mailcore2/pull/155","id":16013894,"number":155,"title":"New message rendering methods on IMAP","user":{"login":"paulyoung","id":84700,"avatar_url":"https://avatars.githubusercontent.com/u/84700","gravatar_id":"ee593093b3a4aa721ad6979c752a9c9d","url":"https://api.github.com/users/paulyoung","html_url":"https://github.com/paulyoung","followers_url":"https://api.github.com/users/paulyoung/followers","following_url":"https://api.github.com/users/paulyoung/following{/other_user}","gists_url":"https://api.github.com/users/paulyoung/gists{/gist_id}","starred_url":"https://api.github.com/users/paulyoung/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/paulyoung/subscriptions","organizations_url":"https://api.github.com/users/paulyoung/orgs","repos_url":"https://api.github.com/users/paulyoung/repos","events_url":"https://api.github.com/users/paulyoung/events{/privacy}","received_events_url":"https://api.github.com/users/paulyoung/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/MailCore/mailcore2/labels/work-in-progress","name":"work-in-progress","color":"c7def8"},{"url":"https://api.github.com/repos/MailCore/mailcore2/labels/waffle%3Ain+progress","name":"waffle:in progress","color":"eac04b"}],"state":"closed","assignee":{"login":"paulyoung","id":84700,"avatar_url":"https://avatars.githubusercontent.com/u/84700","gravatar_id":"ee593093b3a4aa721ad6979c752a9c9d","url":"https://api.github.com/users/paulyoung","html_url":"https://github.com/paulyoung","followers_url":"https://api.github.com/users/paulyoung/followers","following_url":"https://api.github.com/users/paulyoung/following{/other_user}","gists_url":"https://api.github.com/users/paulyoung/gists{/gist_id}","starred_url":"https://api.github.com/users/paulyoung/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/paulyoung/subscriptions","organizations_url":"https://api.github.com/users/paulyoung/orgs","repos_url":"https://api.github.com/users/paulyoung/repos","events_url":"https://api.github.com/users/paulyoung/events{/privacy}","received_events_url":"https://api.github.com/users/paulyoung/received_events","type":"User","site_admin":false},"milestone":{"url":"https://api.github.com/repos/MailCore/mailcore2/milestones/1","labels_url":"https://api.github.com/repos/MailCore/mailcore2/milestones/1/labels","id":361723,"number":1,"title":"0.2","description":"- Improve usability of APIs\r\n- Implement OAuth 2.0\r\n","creator":{"login":"dinhviethoa","id":332168,"avatar_url":"https://avatars.githubusercontent.com/u/332168","gravatar_id":"6b2f37933bf38e2d22949f316e751757","url":"https://api.github.com/users/dinhviethoa","html_url":"https://github.com/dinhviethoa","followers_url":"https://api.github.com/users/dinhviethoa/followers","following_url":"https://api.github.com/users/dinhviethoa/following{/other_user}","gists_url":"https://api.github.com/users/dinhviethoa/gists{/gist_id}","starred_url":"https://api.github.com/users/dinhviethoa/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dinhviethoa/subscriptions","organizations_url":"https://api.github.com/users/dinhviethoa/orgs","repos_url":"https://api.github.com/users/dinhviethoa/repos","events_url":"https://api.github.com/users/dinhviethoa/events{/privacy}","received_events_url":"https://api.github.com/users/dinhviethoa/received_events","type":"User","site_admin":false},"open_issues":0,"closed_issues":29,"state":"closed","created_at":"2013-06-22T21:12:02Z","updated_at":"2013-07-31T17:00:39Z","due_on":"2013-07-28T07:00:00Z"},"comments":48,"created_at":"2013-06-26T03:38:48Z","updated_at":"2013-07-21T19:04:47Z","closed_at":"2013-07-12T03:33:33Z","pull_request":{"html_url":"https://github.com/MailCore/mailcore2/pull/155","diff_url":"https://github.com/MailCore/mailcore2/pull/155.diff","patch_url":"https://github.com/MailCore/mailcore2/pull/155.patch"},"body":"I'm creating a pull request so it's easier to discuss and track changes as opposed to in the issues themselves.\r\n\r\nAs discussed in #112 and #111, this is a first pass at defining the interface. Currently only includes IMAP. RFC 822 to come.\r\n\r\nI need to look further into the implementation and how the existing `IMAPMessage::htmlRendering` and `HTMLRenderer::htmlForIMAPMessage` methods work. It's unclear to me at this point if these new methods need to take additional parameters for the callbacks or if callbacks will be created within their implementation.","score":0.07660277},{"url":"https://api.github.com/repos/crosswalk-project/crosswalk/issues/1375","labels_url":"https://api.github.com/repos/crosswalk-project/crosswalk/issues/1375/labels{/name}","comments_url":"https://api.github.com/repos/crosswalk-project/crosswalk/issues/1375/comments","events_url":"https://api.github.com/repos/crosswalk-project/crosswalk/issues/1375/events","html_url":"https://github.com/crosswalk-project/crosswalk/pull/1375","id":24606936,"number":1375,"title":"[DO NOT MERGE] [Application] Implementation of application permission system.","user":{"login":"mbbill","id":841602,"avatar_url":"https://avatars.githubusercontent.com/u/841602","gravatar_id":"4c96f8afdf03dfe5591422ca283a0dbd","url":"https://api.github.com/users/mbbill","html_url":"https://github.com/mbbill","followers_url":"https://api.github.com/users/mbbill/followers","following_url":"https://api.github.com/users/mbbill/following{/other_user}","gists_url":"https://api.github.com/users/mbbill/gists{/gist_id}","starred_url":"https://api.github.com/users/mbbill/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbbill/subscriptions","organizations_url":"https://api.github.com/users/mbbill/orgs","repos_url":"https://api.github.com/users/mbbill/repos","events_url":"https://api.github.com/users/mbbill/events{/privacy}","received_events_url":"https://api.github.com/users/mbbill/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","assignee":null,"milestone":null,"comments":36,"created_at":"2013-12-20T06:22:51Z","updated_at":"2014-02-25T01:17:43Z","closed_at":"2014-02-25T01:17:43Z","pull_request":{"html_url":"https://github.com/crosswalk-project/crosswalk/pull/1375","diff_url":"https://github.com/crosswalk-project/crosswalk/pull/1375.diff","patch_url":"https://github.com/crosswalk-project/crosswalk/pull/1375.patch"},"body":"**This patch contains following major parts implemented step-by-step:** completed steps are marked as [x]\r\n\r\n- [x] Permission check: it's unfinished because some of it's logic need to be put into the Application class which does not exist for the moment, the corresponding code in ApplicationService is ready though. The remaining tasks are marked by TODOs (Update: the missing parts are completed in the 4th commit in the PR)\r\n\r\n- [x] Permission storage: permissions should be stored in ApplicationData and eventually the database, so now we have setter and getter in the ApplicationData class and the actual db operations are done inside ApplicationStorageImpl.\r\n\r\n- [x] Permission message passing (on going): It's merged from Xu,Zhang's PR #1231 .\r\nThe following comments are copied from PR #1231\r\n\r\n This PR is related to API Access Control feature: communication functionality between extension and browser process.\r\n In this PR, a new API is public for extension developer to enforce API permission checking. The whole API Access Control feature is composed of a few PRs. This PR is one of them. Another PR related to this feature is PR#1176:Added permission group and policy management classes.\r\nThe design document of this feature can be found from https://docs.google.com/a/intel.com/document/d/137u_gxmNaIFwVzaCkCFBJyveIdZxuAydWOkMI8oWgD0/edit#heading=h.5rkmb0mvstye\r\n\r\n- [x] Fully integrate Zhang,Xu's IPC code, make the permission definitions, method names align.\r\n\r\n- [x] Switching to async response in permission check API. After this step is done, we will have a working permission system.\r\n\r\n- [x] Permission-function register.\r\n\r\n One extension may provide one or more (typically only one) set of APIs that are under corresponding permission label. For example, one extension may implement all the bluetooth.xxx() functions under permission name 'bluetooth', or more detailed permission name 'bluetooth.read, bluetooth.write, bluetooth.management' (it depends on how permission catagory is defined). The extension is responsible for registering its implemented functions and permissions after being loaded by extension system by calling a permission register function with it's permission-function mapping. The mapping is JSON string (being defined) which may look like\r\n```\r\n{ \"bluetooth\": [\"bluetooth.read\", \"bluetooth.write\"] }\r\n```\r\n\r\n----\r\n**The following features will be included In the next PR**\r\n- [ ] Define the permission-function register format.\r\n- [ ] Make the \"CheckAPIAccessControl\" work for in-process extensions.\r\n - [x] Move permission delegate from XwalkExternalExtension to the XwalkExtension class.\r\n - [ ] Implement permission delegate for in-process extensions.\r\n- [ ] OEM policy define and implementation.\r\n\r\n- [ ] UI dialog.\r\n\r\n- [ ] Permission cache in extension process\r\n\r\n**Relation with other permission-related patches**\r\n - Because of the refactor of storage system and to fit in the future application architecture, this patch deprecates the previous PR #1176\r\n\r\n - Because the permission messaging API are merged into this patch, this patch deprecates PR #1231\r\n\r\n**Some Term Explanations:**\r\n - Runtime Permission:\r\n\r\n Permission name used by runtime/extension/render process to determine a appropriate operation for a permission request.\r\n\r\n - Stored Permission:\r\n\r\n Permission name that would be stored into database during installation or after a user interaction.\r\n","score":0.10998621},{"url":"https://api.github.com/repos/cms-sw/cmssw/issues/2171","labels_url":"https://api.github.com/repos/cms-sw/cmssw/issues/2171/labels{/name}","comments_url":"https://api.github.com/repos/cms-sw/cmssw/issues/2171/comments","events_url":"https://api.github.com/repos/cms-sw/cmssw/issues/2171/events","html_url":"https://github.com/cms-sw/cmssw/pull/2171","id":26274278,"number":2171,"title":"Switching default jet collection from AK5 to AK4","user":{"login":"rappoccio","id":4267705,"avatar_url":"https://avatars.githubusercontent.com/u/4267705","gravatar_id":"bbdf4ebd75ba76d1a5b6c172c9fac57e","url":"https://api.github.com/users/rappoccio","html_url":"https://github.com/rappoccio","followers_url":"https://api.github.com/users/rappoccio/followers","following_url":"https://api.github.com/users/rappoccio/following{/other_user}","gists_url":"https://api.github.com/users/rappoccio/gists{/gist_id}","starred_url":"https://api.github.com/users/rappoccio/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rappoccio/subscriptions","organizations_url":"https://api.github.com/users/rappoccio/orgs","repos_url":"https://api.github.com/users/rappoccio/repos","events_url":"https://api.github.com/users/rappoccio/events{/privacy}","received_events_url":"https://api.github.com/users/rappoccio/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/cms-sw/cmssw/labels/reconstruction-pending","name":"reconstruction-pending","color":"fbca04"},{"url":"https://api.github.com/repos/cms-sw/cmssw/labels/simulation-pending","name":"simulation-pending","color":"fbca04"},{"url":"https://api.github.com/repos/cms-sw/cmssw/labels/dqm-pending","name":"dqm-pending","color":"fbca04"},{"url":"https://api.github.com/repos/cms-sw/cmssw/labels/hlt-pending","name":"hlt-pending","color":"fbca04"},{"url":"https://api.github.com/repos/cms-sw/cmssw/labels/core-pending","name":"core-pending","color":"fbca04"},{"url":"https://api.github.com/repos/cms-sw/cmssw/labels/analysis-pending","name":"analysis-pending","color":"fbca04"},{"url":"https://api.github.com/repos/cms-sw/cmssw/labels/alca-pending","name":"alca-pending","color":"fbca04"},{"url":"https://api.github.com/repos/cms-sw/cmssw/labels/docs-pending","name":"docs-pending","color":"fbca04"},{"url":"https://api.github.com/repos/cms-sw/cmssw/labels/fastsim-pending","name":"fastsim-pending","color":"fbca04"},{"url":"https://api.github.com/repos/cms-sw/cmssw/labels/db-pending","name":"db-pending","color":"fbca04"},{"url":"https://api.github.com/repos/cms-sw/cmssw/labels/generators-pending","name":"generators-pending","color":"fbca04"},{"url":"https://api.github.com/repos/cms-sw/cmssw/labels/geometry-pending","name":"geometry-pending","color":"fbca04"},{"url":"https://api.github.com/repos/cms-sw/cmssw/labels/operations-pending","name":"operations-pending","color":"fbca04"},{"url":"https://api.github.com/repos/cms-sw/cmssw/labels/pending-signatures","name":"pending-signatures","color":"eb6420"},{"url":"https://api.github.com/repos/cms-sw/cmssw/labels/tests-pending","name":"tests-pending","color":"fbca04"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/cms-sw/cmssw/milestones/39","labels_url":"https://api.github.com/repos/cms-sw/cmssw/milestones/39/labels","id":578758,"number":39,"title":"CMSSW_7_1_0_pre4","description":"","creator":{"login":"nclopezo","id":1944922,"avatar_url":"https://avatars.githubusercontent.com/u/1944922","gravatar_id":"c37878ac7a56b492e4f8df2a94abbd49","url":"https://api.github.com/users/nclopezo","html_url":"https://github.com/nclopezo","followers_url":"https://api.github.com/users/nclopezo/followers","following_url":"https://api.github.com/users/nclopezo/following{/other_user}","gists_url":"https://api.github.com/users/nclopezo/gists{/gist_id}","starred_url":"https://api.github.com/users/nclopezo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nclopezo/subscriptions","organizations_url":"https://api.github.com/users/nclopezo/orgs","repos_url":"https://api.github.com/users/nclopezo/repos","events_url":"https://api.github.com/users/nclopezo/events{/privacy}","received_events_url":"https://api.github.com/users/nclopezo/received_events","type":"User","site_admin":false},"open_issues":32,"closed_issues":195,"state":"open","created_at":"2014-02-24T15:26:25Z","updated_at":"2014-03-03T00:08:27Z","due_on":"2014-03-03T08:00:00Z"},"comments":125,"created_at":"2014-01-24T22:00:16Z","updated_at":"2014-03-03T03:10:17Z","closed_at":null,"pull_request":{"html_url":"https://github.com/cms-sw/cmssw/pull/2171","diff_url":"https://github.com/cms-sw/cmssw/pull/2171.diff","patch_url":"https://github.com/cms-sw/cmssw/pull/2171.patch"},"body":"Here I have changed the default jet collection for downstream modules from AK5 to AK4. This affects : \r\n* b-tagging\r\n* tau-tagging\r\n* HLT\r\n* PFBRECO\r\n* Type1 MET\r\n* Isolation cones.\r\n\r\nI have not self-ported changes of hard-coded cone sizes from 0.5 to 0.4, except in the Jet RECO packages. There are probably pieces in BTagging and TauTagging code that use cone sizes and must change for consistency. ","score":0.15000954},{"url":"https://api.github.com/repos/thrust/thrust/issues/449","labels_url":"https://api.github.com/repos/thrust/thrust/issues/449/labels{/name}","comments_url":"https://api.github.com/repos/thrust/thrust/issues/449/comments","events_url":"https://api.github.com/repos/thrust/thrust/issues/449/events","html_url":"https://github.com/thrust/thrust/pull/449","id":23604237,"number":449,"title":"Thrust equivalent to std::complex","user":{"login":"FilipeMaia","id":147838,"avatar_url":"https://avatars.githubusercontent.com/u/147838","gravatar_id":"2dabf758ddced52241ac0ca9a5a9f921","url":"https://api.github.com/users/FilipeMaia","html_url":"https://github.com/FilipeMaia","followers_url":"https://api.github.com/users/FilipeMaia/followers","following_url":"https://api.github.com/users/FilipeMaia/following{/other_user}","gists_url":"https://api.github.com/users/FilipeMaia/gists{/gist_id}","starred_url":"https://api.github.com/users/FilipeMaia/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/FilipeMaia/subscriptions","organizations_url":"https://api.github.com/users/FilipeMaia/orgs","repos_url":"https://api.github.com/users/FilipeMaia/repos","events_url":"https://api.github.com/users/FilipeMaia/events{/privacy}","received_events_url":"https://api.github.com/users/FilipeMaia/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","assignee":null,"milestone":null,"comments":39,"created_at":"2013-12-02T21:45:45Z","updated_at":"2013-12-13T22:30:53Z","closed_at":"2013-12-13T21:40:17Z","pull_request":{"html_url":"https://github.com/thrust/thrust/pull/449","diff_url":"https://github.com/thrust/thrust/pull/449.diff","patch_url":"https://github.com/thrust/thrust/pull/449.patch"},"body":"I've put all the code inside thrust/detail/complex. I've also create the unittests and documentation.\r\n\r\nI've ported FreeBSDs c99 complex implementation, as it seems to be the highest quality available.\r\nAll the functions, except for pow, are accurate to within a few ULPs. \r\n\r\nComplex atan() and atanh() require C++11 due to the lack of real atanh() in previous versions.\r\n\r\nI've tested with g++ and clang++ but I didn't have the opportunity to try with msvc as I don't have access to it.","score":0.2484173},{"url":"https://api.github.com/repos/scipy/scipy/issues/335","labels_url":"https://api.github.com/repos/scipy/scipy/issues/335/labels{/name}","comments_url":"https://api.github.com/repos/scipy/scipy/issues/335/comments","events_url":"https://api.github.com/repos/scipy/scipy/issues/335/events","html_url":"https://github.com/scipy/scipy/pull/335","id":7446030,"number":335,"title":"new global optimization algorithm, basinhopping","user":{"login":"js850","id":1587384,"avatar_url":"https://avatars.githubusercontent.com/u/1587384","gravatar_id":"82f48a33b2171e33c287ba17fe24dab1","url":"https://api.github.com/users/js850","html_url":"https://github.com/js850","followers_url":"https://api.github.com/users/js850/followers","following_url":"https://api.github.com/users/js850/following{/other_user}","gists_url":"https://api.github.com/users/js850/gists{/gist_id}","starred_url":"https://api.github.com/users/js850/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/js850/subscriptions","organizations_url":"https://api.github.com/users/js850/orgs","repos_url":"https://api.github.com/users/js850/repos","events_url":"https://api.github.com/users/js850/events{/privacy}","received_events_url":"https://api.github.com/users/js850/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","assignee":null,"milestone":null,"comments":85,"created_at":"2012-10-09T12:38:25Z","updated_at":"2013-02-03T22:01:33Z","closed_at":"2013-02-03T20:22:12Z","pull_request":{"html_url":"https://github.com/scipy/scipy/pull/335","diff_url":"https://github.com/scipy/scipy/pull/335.diff","patch_url":"https://github.com/scipy/scipy/pull/335.patch"},"body":"Hi, I wrote an implementation of the basinhopping global optimization algorithm and I think it would be a useful addition to scipy.optimize. It's a powerful algorithm, but all the hard work would be done by the minimizers that already exist in scipy.optimize, so the additional code needed is really not very much.\r\n\r\nThe following is from the documentation notes:\r\n\r\nBasin hopping is a random algorithm which attempts to find the global minimum of a smooth scalar function of one or more variables. The algorithm was originally described by David Wales http://www-wales.ch.cam.ac.uk/ . The algorithm is iterative with each iteration composed of the following steps\r\n\r\n 1) random displacement of the coordinates\r\n\r\n 2) local minimization\r\n\r\n 3) accept or reject the new coordinates based on the minimized function\r\n value.\r\n\r\nThis global minimization method has been shown to be extremely efficient on a wide variety of problems in physics and chemistry. It is especially efficient when the function has many minima separated by large barriers. See the cambridge cluster database http://www-wales.ch.cam.ac.uk/CCD.html for database of molecular systems that have been optimized primarily using basin hopping. This database includes minimization problems exceeding 300 degrees of freedom.\r\n\r\nThanks,\r\nJake\r\n\r\np.s. this is my first submission\r\n\r\np.p.s. I'm not totally sure I did all the documentation completely correctly.","score":0.06290573},{"url":"https://api.github.com/repos/TheWhisp/android_device_samsung_msm7x27a-common/issues/35","labels_url":"https://api.github.com/repos/TheWhisp/android_device_samsung_msm7x27a-common/issues/35/labels{/name}","comments_url":"https://api.github.com/repos/TheWhisp/android_device_samsung_msm7x27a-common/issues/35/comments","events_url":"https://api.github.com/repos/TheWhisp/android_device_samsung_msm7x27a-common/issues/35/events","html_url":"https://github.com/TheWhisp/android_device_samsung_msm7x27a-common/issues/35","id":18228199,"number":35,"title":"White Screen at cm10.1 Build 18.07.2013 (G)","user":{"login":"fredhy91","id":4696489,"avatar_url":"https://avatars.githubusercontent.com/u/4696489","gravatar_id":"d96cd8f6dcf06e180a7727ca749f6ab7","url":"https://api.github.com/users/fredhy91","html_url":"https://github.com/fredhy91","followers_url":"https://api.github.com/users/fredhy91/followers","following_url":"https://api.github.com/users/fredhy91/following{/other_user}","gists_url":"https://api.github.com/users/fredhy91/gists{/gist_id}","starred_url":"https://api.github.com/users/fredhy91/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fredhy91/subscriptions","organizations_url":"https://api.github.com/users/fredhy91/orgs","repos_url":"https://api.github.com/users/fredhy91/repos","events_url":"https://api.github.com/users/fredhy91/events{/privacy}","received_events_url":"https://api.github.com/users/fredhy91/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/TheWhisp/android_device_samsung_msm7x27a-common/labels/bug","name":"bug","color":"fc2929"},{"url":"https://api.github.com/repos/TheWhisp/android_device_samsung_msm7x27a-common/labels/not-on-all-devices","name":"not-on-all-devices","color":"207de5"}],"state":"open","assignee":null,"milestone":null,"comments":124,"created_at":"2013-08-19T08:35:56Z","updated_at":"2014-02-28T11:46:43Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Thank u for ur hard theWhisp, I flash ur new build for cm 10.1 but after i lock my device the home button and the power button only show the white screen and after that only reboot the device that i can do, nothing else. ","score":0.22806776},{"url":"https://api.github.com/repos/rethinkdb/rethinkdb/issues/1096","labels_url":"https://api.github.com/repos/rethinkdb/rethinkdb/issues/1096/labels{/name}","comments_url":"https://api.github.com/repos/rethinkdb/rethinkdb/issues/1096/comments","events_url":"https://api.github.com/repos/rethinkdb/rethinkdb/issues/1096/events","html_url":"https://github.com/rethinkdb/rethinkdb/issues/1096","id":16181994,"number":1096,"title":"Proposal: `r.group.map.reduce`","user":{"login":"coffeemug","id":48436,"avatar_url":"https://avatars.githubusercontent.com/u/48436","gravatar_id":"fedc0598a0eae3f7eac98ea84e597f20","url":"https://api.github.com/users/coffeemug","html_url":"https://github.com/coffeemug","followers_url":"https://api.github.com/users/coffeemug/followers","following_url":"https://api.github.com/users/coffeemug/following{/other_user}","gists_url":"https://api.github.com/users/coffeemug/gists{/gist_id}","starred_url":"https://api.github.com/users/coffeemug/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/coffeemug/subscriptions","organizations_url":"https://api.github.com/users/coffeemug/orgs","repos_url":"https://api.github.com/users/coffeemug/repos","events_url":"https://api.github.com/users/coffeemug/events{/privacy}","received_events_url":"https://api.github.com/users/coffeemug/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/rethinkdb/rethinkdb/labels/tp%3ARQL_proposal","name":"tp:RQL_proposal","color":"0052cc"}],"state":"closed","assignee":{"login":"mlucy","id":1777134,"avatar_url":"https://avatars.githubusercontent.com/u/1777134","gravatar_id":"5c96c1013fdc26a6d880dd41cdb3af3e","url":"https://api.github.com/users/mlucy","html_url":"https://github.com/mlucy","followers_url":"https://api.github.com/users/mlucy/followers","following_url":"https://api.github.com/users/mlucy/following{/other_user}","gists_url":"https://api.github.com/users/mlucy/gists{/gist_id}","starred_url":"https://api.github.com/users/mlucy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mlucy/subscriptions","organizations_url":"https://api.github.com/users/mlucy/orgs","repos_url":"https://api.github.com/users/mlucy/repos","events_url":"https://api.github.com/users/mlucy/events{/privacy}","received_events_url":"https://api.github.com/users/mlucy/received_events","type":"User","site_admin":false},"milestone":{"url":"https://api.github.com/repos/rethinkdb/rethinkdb/milestones/53","labels_url":"https://api.github.com/repos/rethinkdb/rethinkdb/milestones/53/labels","id":489609,"number":53,"title":"1.12","description":"","creator":{"login":"coffeemug","id":48436,"avatar_url":"https://avatars.githubusercontent.com/u/48436","gravatar_id":"fedc0598a0eae3f7eac98ea84e597f20","url":"https://api.github.com/users/coffeemug","html_url":"https://github.com/coffeemug","followers_url":"https://api.github.com/users/coffeemug/followers","following_url":"https://api.github.com/users/coffeemug/following{/other_user}","gists_url":"https://api.github.com/users/coffeemug/gists{/gist_id}","starred_url":"https://api.github.com/users/coffeemug/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/coffeemug/subscriptions","organizations_url":"https://api.github.com/users/coffeemug/orgs","repos_url":"https://api.github.com/users/coffeemug/repos","events_url":"https://api.github.com/users/coffeemug/events{/privacy}","received_events_url":"https://api.github.com/users/coffeemug/received_events","type":"User","site_admin":false},"open_issues":16,"closed_issues":124,"state":"open","created_at":"2013-11-19T09:47:10Z","updated_at":"2014-03-01T13:33:18Z","due_on":"2014-02-22T08:00:00Z"},"comments":122,"created_at":"2013-06-30T00:15:29Z","updated_at":"2014-02-21T02:27:20Z","closed_at":"2014-02-21T00:27:06Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"This proposal includes a number of changes.\r\n\r\n* Introduce the `group` command\r\n\r\n```javascript\r\nr.table('foo').group('a', 'b').typeOf()\r\n// GROUPEDSTREAM\r\n\r\nr.table('foo').group('a', 'b')\r\n// Errors: `GROUPEDSTREAM is an opaque type`\r\n\r\nr.table('foo').group('a', 'b').map(...).typeOf()\r\n// GROUPEDSTREAM\r\n\r\n// Finally, google/hadoop-style map reduce is accessible to regular people:\r\nr.table('foo').group('a', 'b').map(...).reduce(...).typeOf()\r\n// STREAM\r\n```\r\n\r\n* Get rid of base in reduce, and make reduce variadic. Have reduce accept either reduction functions, or aggregators:\r\n\r\n```javascript\r\nr.table('users').group('location').reduce(r.sum('age'),\r\n r.avg('age'),\r\n function(i, j) { return ...; })\r\n// returns [{group: ..., reduction1: ..., reduction2: ..., reduction3: ...}]\r\n```\r\n\r\n* Allow naming groups and reductions because calling them `group` and `reduction1`, `reduction2` isn't extremely useful.\r\n\r\n```javascript\r\nr.table('users').group('location', {'name': location}).\r\n reduce(r.sum('age', {name: 'age_sum'}),\r\n r.avg('age', {name: 'age_avg'}),\r\n function(i, j) { return ...; } // TODO: not sure how to name this. Ideas?\r\n )\r\n// returns [{location: ..., age_sum: ..., age_avg: ..., ???: ...}]\r\n```\r\n\r\n* Consider dropping `groupBy`. We might want to consider leaving it as sugar for `.group.reduce`, because people are used to things like `groupBy`. I'm not 100% sure what to do here.","score":0.042895522},{"url":"https://api.github.com/repos/JoSchaap/GoT_Wasteland_V2.Stratis/issues/85","labels_url":"https://api.github.com/repos/JoSchaap/GoT_Wasteland_V2.Stratis/issues/85/labels{/name}","comments_url":"https://api.github.com/repos/JoSchaap/GoT_Wasteland_V2.Stratis/issues/85/comments","events_url":"https://api.github.com/repos/JoSchaap/GoT_Wasteland_V2.Stratis/issues/85/events","html_url":"https://github.com/JoSchaap/GoT_Wasteland_V2.Stratis/issues/85","id":17296637,"number":85,"title":"v2.3 discussion - please use this for discussion","user":{"login":"JoSchaap","id":2301588,"avatar_url":"https://avatars.githubusercontent.com/u/2301588","gravatar_id":"0049478f655910571a6b6b323e169bb9","url":"https://api.github.com/users/JoSchaap","html_url":"https://github.com/JoSchaap","followers_url":"https://api.github.com/users/JoSchaap/followers","following_url":"https://api.github.com/users/JoSchaap/following{/other_user}","gists_url":"https://api.github.com/users/JoSchaap/gists{/gist_id}","starred_url":"https://api.github.com/users/JoSchaap/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/JoSchaap/subscriptions","organizations_url":"https://api.github.com/users/JoSchaap/orgs","repos_url":"https://api.github.com/users/JoSchaap/repos","events_url":"https://api.github.com/users/JoSchaap/events{/privacy}","received_events_url":"https://api.github.com/users/JoSchaap/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/JoSchaap/GoT_Wasteland_V2.Stratis/labels/bug","name":"bug","color":"fc2929"},{"url":"https://api.github.com/repos/JoSchaap/GoT_Wasteland_V2.Stratis/labels/enhancement","name":"enhancement","color":"84b6eb"}],"state":"closed","assignee":{"login":"JoSchaap","id":2301588,"avatar_url":"https://avatars.githubusercontent.com/u/2301588","gravatar_id":"0049478f655910571a6b6b323e169bb9","url":"https://api.github.com/users/JoSchaap","html_url":"https://github.com/JoSchaap","followers_url":"https://api.github.com/users/JoSchaap/followers","following_url":"https://api.github.com/users/JoSchaap/following{/other_user}","gists_url":"https://api.github.com/users/JoSchaap/gists{/gist_id}","starred_url":"https://api.github.com/users/JoSchaap/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/JoSchaap/subscriptions","organizations_url":"https://api.github.com/users/JoSchaap/orgs","repos_url":"https://api.github.com/users/JoSchaap/repos","events_url":"https://api.github.com/users/JoSchaap/events{/privacy}","received_events_url":"https://api.github.com/users/JoSchaap/received_events","type":"User","site_admin":false},"milestone":{"url":"https://api.github.com/repos/JoSchaap/GoT_Wasteland_V2.Stratis/milestones/5","labels_url":"https://api.github.com/repos/JoSchaap/GoT_Wasteland_V2.Stratis/milestones/5/labels","id":368680,"number":5,"title":"v2.3","description":null,"creator":{"login":"JoSchaap","id":2301588,"avatar_url":"https://avatars.githubusercontent.com/u/2301588","gravatar_id":"0049478f655910571a6b6b323e169bb9","url":"https://api.github.com/users/JoSchaap","html_url":"https://github.com/JoSchaap","followers_url":"https://api.github.com/users/JoSchaap/followers","following_url":"https://api.github.com/users/JoSchaap/following{/other_user}","gists_url":"https://api.github.com/users/JoSchaap/gists{/gist_id}","starred_url":"https://api.github.com/users/JoSchaap/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/JoSchaap/subscriptions","organizations_url":"https://api.github.com/users/JoSchaap/orgs","repos_url":"https://api.github.com/users/JoSchaap/repos","events_url":"https://api.github.com/users/JoSchaap/events{/privacy}","received_events_url":"https://api.github.com/users/JoSchaap/received_events","type":"User","site_admin":false},"open_issues":0,"closed_issues":35,"state":"open","created_at":"2013-07-02T09:24:02Z","updated_at":"2013-08-30T09:35:08Z","due_on":null},"comments":121,"created_at":"2013-07-27T10:40:19Z","updated_at":"2013-08-30T09:35:08Z","closed_at":"2013-08-30T09:35:08Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"*** Discusscion thread ***\r\n\r\nplease only discuss here and use the new issue button to report bugs with a full discription and steps to reproduce them\r\n\r\n\r\n\r\n\r\nFirst things first, thanks all for testing, sadly something came up (family thing) so i wasn't able to get any work done yesterday.\r\nWhat i did find out is that there's more things to fix than i initially thought last night..\r\n\r\nThe list of issues to fix is below:\r\n\r\n[Fixed] - general store broken \r\n\r\n[Fixed] - briefing missing some line breaks\r\n\r\n[Fixed] - increase radius of dead player cleanup (items tend to roll away)\r\n\r\n[WontChange-isOK] - The 'you have died from starvation/hunger' hints stay on for too long (decrease its duration)\r\n\r\n[Fixed] - investigate an issue where players are randomly spawned mid air in limbo when clicking random (findsafepos failing again?)\r\n\r\n[Fixed/WorksAsIntended] - investigate iniDB counter in diag_log 'x objects saved' gets stuck and only increases , should be set to 0 after saving\r\n\r\n[Fixed] - investigate server cleanup counter in diag_log '9 dead players 34 AI and 30 clutterred items from the dead have been cleaned up' the numbers are no longer re-setting to 0\r\n\r\n[Fixed] - revert to the old vehicle.sqf to see if it fixes the newly added logspam\r\n\r\n Error in expression \r\n 20:30:36 Error position: <_towedUnit) then\r\n {\r\n detach _towedUnit;\r\n _t>\r\n Error Undefined variable in expression: _towedunit\r\n mpmissions\\__cur_mp.Stratis\\server\\functions\\vehicle.sqf, line 139\r\n\r\n[Fixed] - A new findsafepos issue has introduced itself?, I thought i got rid of this..\r\n\r\n Error in expression \r\n Error position: <_objDist, 0, _maxGradient, _objDist max >\r\n Error Undefined variable in expression: _objdist\r\n File A3\\functions_f\\misc\\fn_findSafePos.sqf, line 100\r\n Error in expression <};\r\n };\r\n _pos = [_markerPos, 2, 45, ( if (_type == 1) then { 2 } else { 5 } ), 0, >\r\n Error position: <_type == 1) then { 2 } else { 5 } ), 0, >\r\n Error Undefined variable in expression: _type\r\n File mpmissions\\__cur_mp.Stratis\\server\\spawning\\vehicleCreation.sqf, line 30\r\n Error in expression \r\n Error position: <_objDist, 0, _maxGradient, _objDist max >\r\n Error Undefined variable in expression: _objdist\r\n File A3\\functions_f\\misc\\fn_findSafePos.sqf, line 100\r\n\r\n[Fixed] - various new undefined variable spam in rpt (not sure why bis changed this..)\r\n\r\n Cannot create non-ai vehicle ,\r\n Error in expression <50);\r\n _car setDamage (random 0.50);\r\n if (_type in [0,1]) then\r\n {\r\n _car setHit [\"whe>\r\n Error position: <_type in [0,1]) then\r\n {\r\n _car setHit [\"whe>\r\n Error Undefined variable in expression: _type\r\n File mpmissions\\__cur_mp.Stratis\\server\\spawning\\vehicleCreation.sqf, line 44\r\n \r\n Error in expression \r\n Error position: <_vehicle setVehicleLock \"UNLOCKED\";\r\n _veh>\r\n Error Undefined variable in expression: _vehicle\r\n File mpmissions\\__cur_mp.Stratis\\server\\missions\\mainMissions\\mission_Convoy.sqf, line 137\r\n\r\n[Fixed] - Main mission: coastal patrol, remove the SDV it keeps getting beached by the AI\r\n** investigate why AI tends to beach the boat when engaging players\r\n\r\n[Fixed] - extend the time between loot re-spawns and increase precision\r\n\r\n[Fixed] - missions no longer delete blown up vehicles..\r\n\r\n Error in expression <%1\",_missionType];\r\n } else {\r\n if ((damage _vehicle) == 1) then {\r\n deleteVehicle _ve>\r\n Error position: <_vehicle) == 1) then {\r\n deleteVehicle _ve>\r\n Error Undefined variable in expression: _vehicle\r\n File mpmissions\\__cur_mp.Stratis\\server\\missions\\mainMissions\\mission_Coastal_Convoy.sqf, line 180\r\n\r\n[Fixed] - Clientsided errorspam when in a group and looking at a group member (screen shots below)\r\n[Fixed] - clientsided errorspam when in bluefor/opfor and looking at a group member\r\n(screen shots below)\r\n\r\n[Fixed] - check if bis_fnc_rsclayer or fn_dynamictext has been changed (sometimes causes an error)\r\n\r\n[Fixed] - client sided error message when picking up money while to far away from it (screenshot below)\r\n\r\n[Should-be-Fixed(TEST!)] - newplayericons ocasionally still drops a clientsided blackbox error about an undefined hud_icon (see jackiechan image below)\r\n\r\n[Fixed] - old undefined variable error is back when you stop spectating a player (probably overwritten my own fixes)\r\n\r\n![2013-07-26_00010](https://f.cloud.github.com/assets/2301588/866722/e090a66e-f6a8-11e2-81cf-844f9b4bc3ce.jpg)\r\n![2013-07-26_00011](https://f.cloud.github.com/assets/2301588/866723/e094604c-f6a8-11e2-822b-6e95f4d1768f.jpg)\r\n![2013-07-25_00004](https://f.cloud.github.com/assets/2301588/866724/e09294d8-f6a8-11e2-8dcd-97273ca5c4ee.jpg)\r\n![2013-07-26_00008](https://f.cloud.github.com/assets/2301588/866725/e09353dc-f6a8-11e2-8cd9-4991df41a203.jpg)\r\n![2013-07-26_00012](https://f.cloud.github.com/assets/2301588/866726/e091ced6-f6a8-11e2-8587-ee8cfb202aeb.jpg)\r\n![2013-07-26_00009](https://f.cloud.github.com/assets/2301588/866727/e096ac30-f6a8-11e2-91e7-c26d0b96703f.jpg)\r\n![2013-07-26_00013](https://f.cloud.github.com/assets/2301588/866728/e0a2e07c-f6a8-11e2-9a38-7f0b25bd94ba.jpg)\r\n![2013-07-26_00018](https://f.cloud.github.com/assets/2301588/866730/e0a48576-f6a8-11e2-9c1b-aadb8063129c.jpg)\r\n![2013-07-26_00014](https://f.cloud.github.com/assets/2301588/866729/e0a73794-f6a8-11e2-8f1f-4f922b395fdf.jpg)\r\n![2013-07-26_00019](https://f.cloud.github.com/assets/2301588/866731/e0a53f0c-f6a8-11e2-8910-d11544f663ad.jpg)\r\n![2013-07-26_00020](https://f.cloud.github.com/assets/2301588/866732/e0a418c0-f6a8-11e2-9023-7c6c8ca1b8dd.jpg)\r\n![2013-07-27_00004](https://f.cloud.github.com/assets/2301588/866733/e0aa24ea-f6a8-11e2-9f20-4b68d3445d10.jpg)\r\n![jackie-chan-meme](https://f.cloud.github.com/assets/2301588/866735/ec5c3a76-f6a8-11e2-9d51-2db78038e835.jpg)\r\n","score":0.09803598},{"url":"https://api.github.com/repos/popcornmix/omxplayer/issues/12","labels_url":"https://api.github.com/repos/popcornmix/omxplayer/issues/12/labels{/name}","comments_url":"https://api.github.com/repos/popcornmix/omxplayer/issues/12/comments","events_url":"https://api.github.com/repos/popcornmix/omxplayer/issues/12/events","html_url":"https://github.com/popcornmix/omxplayer/issues/12","id":16376966,"number":12,"title":"OMXPlayer randomly hangs","user":{"login":"cjsoftuk","id":2492472,"avatar_url":"https://avatars.githubusercontent.com/u/2492472","gravatar_id":"870dcf43f96660c93185fdcaad4e74c4","url":"https://api.github.com/users/cjsoftuk","html_url":"https://github.com/cjsoftuk","followers_url":"https://api.github.com/users/cjsoftuk/followers","following_url":"https://api.github.com/users/cjsoftuk/following{/other_user}","gists_url":"https://api.github.com/users/cjsoftuk/gists{/gist_id}","starred_url":"https://api.github.com/users/cjsoftuk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cjsoftuk/subscriptions","organizations_url":"https://api.github.com/users/cjsoftuk/orgs","repos_url":"https://api.github.com/users/cjsoftuk/repos","events_url":"https://api.github.com/users/cjsoftuk/events{/privacy}","received_events_url":"https://api.github.com/users/cjsoftuk/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","assignee":null,"milestone":null,"comments":118,"created_at":"2013-07-04T17:56:43Z","updated_at":"2014-02-25T08:55:20Z","closed_at":"2014-02-24T20:45:54Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Got a project that I can't disclose much info about, unfortunately, however.....\r\nWe use omxplayer and Raspberry Pi as part of the project, and we play *lots* of videos, back-to-back (i.e. OMXPlayer quits, and our project starts a new one almost immediately).\r\n\r\nHowever, from time to time (usually within an hour), OMXPlayer will hang.\r\nWe do have a custom kernel we use, which I can post the .config for later today and I plan to swap back to stock kernel if the issue recurs again today (I'm currently in the middle of doing live demos to prospective customers). Other than the custom kernel, we're up to date as far as the bootloader goes and all other packages (inc OMXPlayer - 0.3.0 installed to try and fix this issue).\r\n\r\nUsually, the hang will occur at the end of the video. OMXPlayer doesn't quit, doesn't print any messages to the log.\r\n\r\nWe're invoking omxplayer as follows:\r\nDISPLAY=:0 /usr/bin/omxplayer -o local --win \"0 0 160 96\" /content/file.mp4 ; rel="next", ; rel="last"'), ('cache-control', 'no-cache'), ('date', 'Mon, 03 Mar 2014 04:33:01 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1393821241')] +{"total_count":2723,"items":[{"id":1951148,"name":"legit","full_name":"kennethreitz/legit","owner":{"login":"kennethreitz","id":119893,"avatar_url":"https://avatars.githubusercontent.com/u/119893","gravatar_id":"b02b2f020dcab92cbc5c79613071119f","url":"https://api.github.com/users/kennethreitz","html_url":"https://github.com/kennethreitz","followers_url":"https://api.github.com/users/kennethreitz/followers","following_url":"https://api.github.com/users/kennethreitz/following{/other_user}","gists_url":"https://api.github.com/users/kennethreitz/gists{/gist_id}","starred_url":"https://api.github.com/users/kennethreitz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kennethreitz/subscriptions","organizations_url":"https://api.github.com/users/kennethreitz/orgs","repos_url":"https://api.github.com/users/kennethreitz/repos","events_url":"https://api.github.com/users/kennethreitz/events{/privacy}","received_events_url":"https://api.github.com/users/kennethreitz/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/kennethreitz/legit","description":"Git for Humans, Inspired by GitHub for Mac™.","fork":false,"url":"https://api.github.com/repos/kennethreitz/legit","forks_url":"https://api.github.com/repos/kennethreitz/legit/forks","keys_url":"https://api.github.com/repos/kennethreitz/legit/keys{/key_id}","collaborators_url":"https://api.github.com/repos/kennethreitz/legit/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/kennethreitz/legit/teams","hooks_url":"https://api.github.com/repos/kennethreitz/legit/hooks","issue_events_url":"https://api.github.com/repos/kennethreitz/legit/issues/events{/number}","events_url":"https://api.github.com/repos/kennethreitz/legit/events","assignees_url":"https://api.github.com/repos/kennethreitz/legit/assignees{/user}","branches_url":"https://api.github.com/repos/kennethreitz/legit/branches{/branch}","tags_url":"https://api.github.com/repos/kennethreitz/legit/tags","blobs_url":"https://api.github.com/repos/kennethreitz/legit/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/kennethreitz/legit/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/kennethreitz/legit/git/refs{/sha}","trees_url":"https://api.github.com/repos/kennethreitz/legit/git/trees{/sha}","statuses_url":"https://api.github.com/repos/kennethreitz/legit/statuses/{sha}","languages_url":"https://api.github.com/repos/kennethreitz/legit/languages","stargazers_url":"https://api.github.com/repos/kennethreitz/legit/stargazers","contributors_url":"https://api.github.com/repos/kennethreitz/legit/contributors","subscribers_url":"https://api.github.com/repos/kennethreitz/legit/subscribers","subscription_url":"https://api.github.com/repos/kennethreitz/legit/subscription","commits_url":"https://api.github.com/repos/kennethreitz/legit/commits{/sha}","git_commits_url":"https://api.github.com/repos/kennethreitz/legit/git/commits{/sha}","comments_url":"https://api.github.com/repos/kennethreitz/legit/comments{/number}","issue_comment_url":"https://api.github.com/repos/kennethreitz/legit/issues/comments/{number}","contents_url":"https://api.github.com/repos/kennethreitz/legit/contents/{+path}","compare_url":"https://api.github.com/repos/kennethreitz/legit/compare/{base}...{head}","merges_url":"https://api.github.com/repos/kennethreitz/legit/merges","archive_url":"https://api.github.com/repos/kennethreitz/legit/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/kennethreitz/legit/downloads","issues_url":"https://api.github.com/repos/kennethreitz/legit/issues{/number}","pulls_url":"https://api.github.com/repos/kennethreitz/legit/pulls{/number}","milestones_url":"https://api.github.com/repos/kennethreitz/legit/milestones{/number}","notifications_url":"https://api.github.com/repos/kennethreitz/legit/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/kennethreitz/legit/labels{/name}","releases_url":"https://api.github.com/repos/kennethreitz/legit/releases{/id}","created_at":"2011-06-25T05:58:18Z","updated_at":"2014-01-27T17:39:32Z","pushed_at":"2014-01-27T17:39:31Z","git_url":"git://github.com/kennethreitz/legit.git","ssh_url":"git@github.com:kennethreitz/legit.git","clone_url":"https://github.com/kennethreitz/legit.git","svn_url":"https://github.com/kennethreitz/legit","homepage":"http://www.git-legit.org/","size":539,"stargazers_count":3036,"watchers_count":3036,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":118,"mirror_url":null,"open_issues_count":56,"forks":118,"open_issues":56,"watchers":3036,"default_branch":"develop","master_branch":"develop","score":34.075066},{"id":722962,"name":"CouchPotatoV1","full_name":"RuudBurger/CouchPotatoV1","owner":{"login":"RuudBurger","id":38136,"avatar_url":"https://avatars.githubusercontent.com/u/38136","gravatar_id":"dc8b8cb353e7cb91b79ae16d0e3737ab","url":"https://api.github.com/users/RuudBurger","html_url":"https://github.com/RuudBurger","followers_url":"https://api.github.com/users/RuudBurger/followers","following_url":"https://api.github.com/users/RuudBurger/following{/other_user}","gists_url":"https://api.github.com/users/RuudBurger/gists{/gist_id}","starred_url":"https://api.github.com/users/RuudBurger/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/RuudBurger/subscriptions","organizations_url":"https://api.github.com/users/RuudBurger/orgs","repos_url":"https://api.github.com/users/RuudBurger/repos","events_url":"https://api.github.com/users/RuudBurger/events{/privacy}","received_events_url":"https://api.github.com/users/RuudBurger/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/RuudBurger/CouchPotatoV1","description":"This is the old version, please use https://github.com/RuudBurger/CouchPotatoServer","fork":false,"url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1","forks_url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1/forks","keys_url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1/keys{/key_id}","collaborators_url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1/teams","hooks_url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1/hooks","issue_events_url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1/issues/events{/number}","events_url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1/events","assignees_url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1/assignees{/user}","branches_url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1/branches{/branch}","tags_url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1/tags","blobs_url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1/git/refs{/sha}","trees_url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1/git/trees{/sha}","statuses_url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1/statuses/{sha}","languages_url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1/languages","stargazers_url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1/stargazers","contributors_url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1/contributors","subscribers_url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1/subscribers","subscription_url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1/subscription","commits_url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1/commits{/sha}","git_commits_url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1/git/commits{/sha}","comments_url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1/comments{/number}","issue_comment_url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1/issues/comments/{number}","contents_url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1/contents/{+path}","compare_url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1/compare/{base}...{head}","merges_url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1/merges","archive_url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1/downloads","issues_url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1/issues{/number}","pulls_url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1/pulls{/number}","milestones_url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1/milestones{/number}","notifications_url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1/labels{/name}","releases_url":"https://api.github.com/repos/RuudBurger/CouchPotatoV1/releases{/id}","created_at":"2010-06-15T21:27:32Z","updated_at":"2014-01-17T01:41:31Z","pushed_at":"2012-10-26T13:25:40Z","git_url":"git://github.com/RuudBurger/CouchPotatoV1.git","ssh_url":"git@github.com:RuudBurger/CouchPotatoV1.git","clone_url":"https://github.com/RuudBurger/CouchPotatoV1.git","svn_url":"https://github.com/RuudBurger/CouchPotatoV1","homepage":"couchpota.to","size":8442,"stargazers_count":1062,"watchers_count":1062,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"forks_count":215,"mirror_url":null,"open_issues_count":5,"forks":215,"open_issues":5,"watchers":1062,"default_branch":"master","master_branch":"master","score":22.54451},{"id":9631509,"name":"gitfiti","full_name":"gelstudios/gitfiti","owner":{"login":"gelstudios","id":530111,"avatar_url":"https://avatars.githubusercontent.com/u/530111","gravatar_id":"ac1dff6e32e40c6f5d2b6050376a3765","url":"https://api.github.com/users/gelstudios","html_url":"https://github.com/gelstudios","followers_url":"https://api.github.com/users/gelstudios/followers","following_url":"https://api.github.com/users/gelstudios/following{/other_user}","gists_url":"https://api.github.com/users/gelstudios/gists{/gist_id}","starred_url":"https://api.github.com/users/gelstudios/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gelstudios/subscriptions","organizations_url":"https://api.github.com/users/gelstudios/orgs","repos_url":"https://api.github.com/users/gelstudios/repos","events_url":"https://api.github.com/users/gelstudios/events{/privacy}","received_events_url":"https://api.github.com/users/gelstudios/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/gelstudios/gitfiti","description":"abusing github commit history for the lulz","fork":false,"url":"https://api.github.com/repos/gelstudios/gitfiti","forks_url":"https://api.github.com/repos/gelstudios/gitfiti/forks","keys_url":"https://api.github.com/repos/gelstudios/gitfiti/keys{/key_id}","collaborators_url":"https://api.github.com/repos/gelstudios/gitfiti/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/gelstudios/gitfiti/teams","hooks_url":"https://api.github.com/repos/gelstudios/gitfiti/hooks","issue_events_url":"https://api.github.com/repos/gelstudios/gitfiti/issues/events{/number}","events_url":"https://api.github.com/repos/gelstudios/gitfiti/events","assignees_url":"https://api.github.com/repos/gelstudios/gitfiti/assignees{/user}","branches_url":"https://api.github.com/repos/gelstudios/gitfiti/branches{/branch}","tags_url":"https://api.github.com/repos/gelstudios/gitfiti/tags","blobs_url":"https://api.github.com/repos/gelstudios/gitfiti/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/gelstudios/gitfiti/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/gelstudios/gitfiti/git/refs{/sha}","trees_url":"https://api.github.com/repos/gelstudios/gitfiti/git/trees{/sha}","statuses_url":"https://api.github.com/repos/gelstudios/gitfiti/statuses/{sha}","languages_url":"https://api.github.com/repos/gelstudios/gitfiti/languages","stargazers_url":"https://api.github.com/repos/gelstudios/gitfiti/stargazers","contributors_url":"https://api.github.com/repos/gelstudios/gitfiti/contributors","subscribers_url":"https://api.github.com/repos/gelstudios/gitfiti/subscribers","subscription_url":"https://api.github.com/repos/gelstudios/gitfiti/subscription","commits_url":"https://api.github.com/repos/gelstudios/gitfiti/commits{/sha}","git_commits_url":"https://api.github.com/repos/gelstudios/gitfiti/git/commits{/sha}","comments_url":"https://api.github.com/repos/gelstudios/gitfiti/comments{/number}","issue_comment_url":"https://api.github.com/repos/gelstudios/gitfiti/issues/comments/{number}","contents_url":"https://api.github.com/repos/gelstudios/gitfiti/contents/{+path}","compare_url":"https://api.github.com/repos/gelstudios/gitfiti/compare/{base}...{head}","merges_url":"https://api.github.com/repos/gelstudios/gitfiti/merges","archive_url":"https://api.github.com/repos/gelstudios/gitfiti/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/gelstudios/gitfiti/downloads","issues_url":"https://api.github.com/repos/gelstudios/gitfiti/issues{/number}","pulls_url":"https://api.github.com/repos/gelstudios/gitfiti/pulls{/number}","milestones_url":"https://api.github.com/repos/gelstudios/gitfiti/milestones{/number}","notifications_url":"https://api.github.com/repos/gelstudios/gitfiti/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/gelstudios/gitfiti/labels{/name}","releases_url":"https://api.github.com/repos/gelstudios/gitfiti/releases{/id}","created_at":"2013-04-23T19:32:02Z","updated_at":"2014-01-17T19:19:07Z","pushed_at":"2014-01-17T19:19:07Z","git_url":"git://github.com/gelstudios/gitfiti.git","ssh_url":"git@github.com:gelstudios/gitfiti.git","clone_url":"https://github.com/gelstudios/gitfiti.git","svn_url":"https://github.com/gelstudios/gitfiti","homepage":"","size":316,"stargazers_count":669,"watchers_count":669,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":42,"mirror_url":null,"open_issues_count":1,"forks":42,"open_issues":1,"watchers":669,"default_branch":"master","master_branch":"master","score":24.823269},{"id":328430,"name":"webgl-lessons","full_name":"gpjt/webgl-lessons","owner":{"login":"gpjt","id":129702,"avatar_url":"https://avatars.githubusercontent.com/u/129702","gravatar_id":"2872c4aad0f3cfdb6421c36527fb868c","url":"https://api.github.com/users/gpjt","html_url":"https://github.com/gpjt","followers_url":"https://api.github.com/users/gpjt/followers","following_url":"https://api.github.com/users/gpjt/following{/other_user}","gists_url":"https://api.github.com/users/gpjt/gists{/gist_id}","starred_url":"https://api.github.com/users/gpjt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gpjt/subscriptions","organizations_url":"https://api.github.com/users/gpjt/orgs","repos_url":"https://api.github.com/users/gpjt/repos","events_url":"https://api.github.com/users/gpjt/events{/privacy}","received_events_url":"https://api.github.com/users/gpjt/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/gpjt/webgl-lessons","description":"https://github.com/tparisi/webgl-lessons is now the officially maintained fork for this project","fork":false,"url":"https://api.github.com/repos/gpjt/webgl-lessons","forks_url":"https://api.github.com/repos/gpjt/webgl-lessons/forks","keys_url":"https://api.github.com/repos/gpjt/webgl-lessons/keys{/key_id}","collaborators_url":"https://api.github.com/repos/gpjt/webgl-lessons/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/gpjt/webgl-lessons/teams","hooks_url":"https://api.github.com/repos/gpjt/webgl-lessons/hooks","issue_events_url":"https://api.github.com/repos/gpjt/webgl-lessons/issues/events{/number}","events_url":"https://api.github.com/repos/gpjt/webgl-lessons/events","assignees_url":"https://api.github.com/repos/gpjt/webgl-lessons/assignees{/user}","branches_url":"https://api.github.com/repos/gpjt/webgl-lessons/branches{/branch}","tags_url":"https://api.github.com/repos/gpjt/webgl-lessons/tags","blobs_url":"https://api.github.com/repos/gpjt/webgl-lessons/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/gpjt/webgl-lessons/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/gpjt/webgl-lessons/git/refs{/sha}","trees_url":"https://api.github.com/repos/gpjt/webgl-lessons/git/trees{/sha}","statuses_url":"https://api.github.com/repos/gpjt/webgl-lessons/statuses/{sha}","languages_url":"https://api.github.com/repos/gpjt/webgl-lessons/languages","stargazers_url":"https://api.github.com/repos/gpjt/webgl-lessons/stargazers","contributors_url":"https://api.github.com/repos/gpjt/webgl-lessons/contributors","subscribers_url":"https://api.github.com/repos/gpjt/webgl-lessons/subscribers","subscription_url":"https://api.github.com/repos/gpjt/webgl-lessons/subscription","commits_url":"https://api.github.com/repos/gpjt/webgl-lessons/commits{/sha}","git_commits_url":"https://api.github.com/repos/gpjt/webgl-lessons/git/commits{/sha}","comments_url":"https://api.github.com/repos/gpjt/webgl-lessons/comments{/number}","issue_comment_url":"https://api.github.com/repos/gpjt/webgl-lessons/issues/comments/{number}","contents_url":"https://api.github.com/repos/gpjt/webgl-lessons/contents/{+path}","compare_url":"https://api.github.com/repos/gpjt/webgl-lessons/compare/{base}...{head}","merges_url":"https://api.github.com/repos/gpjt/webgl-lessons/merges","archive_url":"https://api.github.com/repos/gpjt/webgl-lessons/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/gpjt/webgl-lessons/downloads","issues_url":"https://api.github.com/repos/gpjt/webgl-lessons/issues{/number}","pulls_url":"https://api.github.com/repos/gpjt/webgl-lessons/pulls{/number}","milestones_url":"https://api.github.com/repos/gpjt/webgl-lessons/milestones{/number}","notifications_url":"https://api.github.com/repos/gpjt/webgl-lessons/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/gpjt/webgl-lessons/labels{/name}","releases_url":"https://api.github.com/repos/gpjt/webgl-lessons/releases{/id}","created_at":"2009-10-06T12:30:19Z","updated_at":"2014-01-15T01:27:33Z","pushed_at":"2013-04-10T18:01:09Z","git_url":"git://github.com/gpjt/webgl-lessons.git","ssh_url":"git@github.com:gpjt/webgl-lessons.git","clone_url":"https://github.com/gpjt/webgl-lessons.git","svn_url":"https://github.com/gpjt/webgl-lessons","homepage":"http://learningwebgl.com/lessons/","size":15818,"stargazers_count":585,"watchers_count":585,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":351,"mirror_url":null,"open_issues_count":3,"forks":351,"open_issues":3,"watchers":585,"default_branch":"master","master_branch":"master","score":21.968115},{"id":3544490,"name":"PyGithub","full_name":"jacquev6/PyGithub","owner":{"login":"jacquev6","id":327146,"avatar_url":"https://avatars.githubusercontent.com/u/327146","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","fork":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","forks_url":"https://api.github.com/repos/jacquev6/PyGithub/forks","keys_url":"https://api.github.com/repos/jacquev6/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jacquev6/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jacquev6/PyGithub/teams","hooks_url":"https://api.github.com/repos/jacquev6/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/jacquev6/PyGithub/events","assignees_url":"https://api.github.com/repos/jacquev6/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/jacquev6/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/jacquev6/PyGithub/tags","blobs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jacquev6/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/jacquev6/PyGithub/languages","stargazers_url":"https://api.github.com/repos/jacquev6/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/jacquev6/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/jacquev6/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/jacquev6/PyGithub/subscription","commits_url":"https://api.github.com/repos/jacquev6/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/jacquev6/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/{number}","contents_url":"https://api.github.com/repos/jacquev6/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/jacquev6/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jacquev6/PyGithub/merges","archive_url":"https://api.github.com/repos/jacquev6/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jacquev6/PyGithub/downloads","issues_url":"https://api.github.com/repos/jacquev6/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/jacquev6/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/jacquev6/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/jacquev6/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jacquev6/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/jacquev6/PyGithub/releases{/id}","created_at":"2012-02-25T12:53:47Z","updated_at":"2014-03-03T03:41:47Z","pushed_at":"2014-03-03T03:41:46Z","git_url":"git://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","clone_url":"https://github.com/jacquev6/PyGithub.git","svn_url":"https://github.com/jacquev6/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":10235,"stargazers_count":354,"watchers_count":354,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"forks_count":103,"mirror_url":null,"open_issues_count":4,"forks":103,"open_issues":4,"watchers":354,"default_branch":"master","master_branch":"master","score":43.148933},{"id":9925668,"name":"github_globe","full_name":"aaasen/github_globe","owner":{"login":"aaasen","id":1320603,"avatar_url":"https://avatars.githubusercontent.com/u/1320603","gravatar_id":"2522f765c823c514d0be460cdeada15c","url":"https://api.github.com/users/aaasen","html_url":"https://github.com/aaasen","followers_url":"https://api.github.com/users/aaasen/followers","following_url":"https://api.github.com/users/aaasen/following{/other_user}","gists_url":"https://api.github.com/users/aaasen/gists{/gist_id}","starred_url":"https://api.github.com/users/aaasen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aaasen/subscriptions","organizations_url":"https://api.github.com/users/aaasen/orgs","repos_url":"https://api.github.com/users/aaasen/repos","events_url":"https://api.github.com/users/aaasen/events{/privacy}","received_events_url":"https://api.github.com/users/aaasen/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/aaasen/github_globe","description":"A visualization of GitHub users throughout the globe","fork":false,"url":"https://api.github.com/repos/aaasen/github_globe","forks_url":"https://api.github.com/repos/aaasen/github_globe/forks","keys_url":"https://api.github.com/repos/aaasen/github_globe/keys{/key_id}","collaborators_url":"https://api.github.com/repos/aaasen/github_globe/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/aaasen/github_globe/teams","hooks_url":"https://api.github.com/repos/aaasen/github_globe/hooks","issue_events_url":"https://api.github.com/repos/aaasen/github_globe/issues/events{/number}","events_url":"https://api.github.com/repos/aaasen/github_globe/events","assignees_url":"https://api.github.com/repos/aaasen/github_globe/assignees{/user}","branches_url":"https://api.github.com/repos/aaasen/github_globe/branches{/branch}","tags_url":"https://api.github.com/repos/aaasen/github_globe/tags","blobs_url":"https://api.github.com/repos/aaasen/github_globe/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/aaasen/github_globe/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/aaasen/github_globe/git/refs{/sha}","trees_url":"https://api.github.com/repos/aaasen/github_globe/git/trees{/sha}","statuses_url":"https://api.github.com/repos/aaasen/github_globe/statuses/{sha}","languages_url":"https://api.github.com/repos/aaasen/github_globe/languages","stargazers_url":"https://api.github.com/repos/aaasen/github_globe/stargazers","contributors_url":"https://api.github.com/repos/aaasen/github_globe/contributors","subscribers_url":"https://api.github.com/repos/aaasen/github_globe/subscribers","subscription_url":"https://api.github.com/repos/aaasen/github_globe/subscription","commits_url":"https://api.github.com/repos/aaasen/github_globe/commits{/sha}","git_commits_url":"https://api.github.com/repos/aaasen/github_globe/git/commits{/sha}","comments_url":"https://api.github.com/repos/aaasen/github_globe/comments{/number}","issue_comment_url":"https://api.github.com/repos/aaasen/github_globe/issues/comments/{number}","contents_url":"https://api.github.com/repos/aaasen/github_globe/contents/{+path}","compare_url":"https://api.github.com/repos/aaasen/github_globe/compare/{base}...{head}","merges_url":"https://api.github.com/repos/aaasen/github_globe/merges","archive_url":"https://api.github.com/repos/aaasen/github_globe/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/aaasen/github_globe/downloads","issues_url":"https://api.github.com/repos/aaasen/github_globe/issues{/number}","pulls_url":"https://api.github.com/repos/aaasen/github_globe/pulls{/number}","milestones_url":"https://api.github.com/repos/aaasen/github_globe/milestones{/number}","notifications_url":"https://api.github.com/repos/aaasen/github_globe/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/aaasen/github_globe/labels{/name}","releases_url":"https://api.github.com/repos/aaasen/github_globe/releases{/id}","created_at":"2013-05-08T01:24:51Z","updated_at":"2014-01-14T15:43:22Z","pushed_at":"2013-05-30T21:28:08Z","git_url":"git://github.com/aaasen/github_globe.git","ssh_url":"git@github.com:aaasen/github_globe.git","clone_url":"https://github.com/aaasen/github_globe.git","svn_url":"https://github.com/aaasen/github_globe","homepage":"http://aasen.in/github_globe/","size":1397,"stargazers_count":311,"watchers_count":311,"language":"JavaScript","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":37,"mirror_url":null,"open_issues_count":0,"forks":37,"open_issues":0,"watchers":311,"default_branch":"master","master_branch":"master","score":31.762138},{"id":1176410,"name":"gitmarks","full_name":"hmason/gitmarks","owner":{"login":"hmason","id":17936,"avatar_url":"https://avatars.githubusercontent.com/u/17936","gravatar_id":"c87a84cf3b06077036deade1b44aa45e","url":"https://api.github.com/users/hmason","html_url":"https://github.com/hmason","followers_url":"https://api.github.com/users/hmason/followers","following_url":"https://api.github.com/users/hmason/following{/other_user}","gists_url":"https://api.github.com/users/hmason/gists{/gist_id}","starred_url":"https://api.github.com/users/hmason/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hmason/subscriptions","organizations_url":"https://api.github.com/users/hmason/orgs","repos_url":"https://api.github.com/users/hmason/repos","events_url":"https://api.github.com/users/hmason/events{/privacy}","received_events_url":"https://api.github.com/users/hmason/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/hmason/gitmarks","description":"delicious-like bookmarks on github.","fork":false,"url":"https://api.github.com/repos/hmason/gitmarks","forks_url":"https://api.github.com/repos/hmason/gitmarks/forks","keys_url":"https://api.github.com/repos/hmason/gitmarks/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hmason/gitmarks/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hmason/gitmarks/teams","hooks_url":"https://api.github.com/repos/hmason/gitmarks/hooks","issue_events_url":"https://api.github.com/repos/hmason/gitmarks/issues/events{/number}","events_url":"https://api.github.com/repos/hmason/gitmarks/events","assignees_url":"https://api.github.com/repos/hmason/gitmarks/assignees{/user}","branches_url":"https://api.github.com/repos/hmason/gitmarks/branches{/branch}","tags_url":"https://api.github.com/repos/hmason/gitmarks/tags","blobs_url":"https://api.github.com/repos/hmason/gitmarks/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hmason/gitmarks/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hmason/gitmarks/git/refs{/sha}","trees_url":"https://api.github.com/repos/hmason/gitmarks/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hmason/gitmarks/statuses/{sha}","languages_url":"https://api.github.com/repos/hmason/gitmarks/languages","stargazers_url":"https://api.github.com/repos/hmason/gitmarks/stargazers","contributors_url":"https://api.github.com/repos/hmason/gitmarks/contributors","subscribers_url":"https://api.github.com/repos/hmason/gitmarks/subscribers","subscription_url":"https://api.github.com/repos/hmason/gitmarks/subscription","commits_url":"https://api.github.com/repos/hmason/gitmarks/commits{/sha}","git_commits_url":"https://api.github.com/repos/hmason/gitmarks/git/commits{/sha}","comments_url":"https://api.github.com/repos/hmason/gitmarks/comments{/number}","issue_comment_url":"https://api.github.com/repos/hmason/gitmarks/issues/comments/{number}","contents_url":"https://api.github.com/repos/hmason/gitmarks/contents/{+path}","compare_url":"https://api.github.com/repos/hmason/gitmarks/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hmason/gitmarks/merges","archive_url":"https://api.github.com/repos/hmason/gitmarks/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hmason/gitmarks/downloads","issues_url":"https://api.github.com/repos/hmason/gitmarks/issues{/number}","pulls_url":"https://api.github.com/repos/hmason/gitmarks/pulls{/number}","milestones_url":"https://api.github.com/repos/hmason/gitmarks/milestones{/number}","notifications_url":"https://api.github.com/repos/hmason/gitmarks/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hmason/gitmarks/labels{/name}","releases_url":"https://api.github.com/repos/hmason/gitmarks/releases{/id}","created_at":"2010-12-17T05:45:42Z","updated_at":"2013-12-20T01:09:12Z","pushed_at":"2011-10-28T06:24:15Z","git_url":"git://github.com/hmason/gitmarks.git","ssh_url":"git@github.com:hmason/gitmarks.git","clone_url":"https://github.com/hmason/gitmarks.git","svn_url":"https://github.com/hmason/gitmarks","homepage":"http://www.hilarymason.com","size":182,"stargazers_count":303,"watchers_count":303,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":29,"mirror_url":null,"open_issues_count":2,"forks":29,"open_issues":2,"watchers":303,"default_branch":"master","master_branch":"master","score":23.095226},{"id":855151,"name":"factory_boy","full_name":"dnerdy/factory_boy","owner":{"login":"dnerdy","id":82307,"avatar_url":"https://avatars.githubusercontent.com/u/82307","gravatar_id":"9db5094487d460d4d0c9ab939b81b081","url":"https://api.github.com/users/dnerdy","html_url":"https://github.com/dnerdy","followers_url":"https://api.github.com/users/dnerdy/followers","following_url":"https://api.github.com/users/dnerdy/following{/other_user}","gists_url":"https://api.github.com/users/dnerdy/gists{/gist_id}","starred_url":"https://api.github.com/users/dnerdy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dnerdy/subscriptions","organizations_url":"https://api.github.com/users/dnerdy/orgs","repos_url":"https://api.github.com/users/dnerdy/repos","events_url":"https://api.github.com/users/dnerdy/events{/privacy}","received_events_url":"https://api.github.com/users/dnerdy/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/dnerdy/factory_boy","description":"NEW REPO LOCATION: http://github.com/rbarrois/factory_boy. Raphaël Barrois has taken over factory_boy development. Please open issues and pull requests there.","fork":false,"url":"https://api.github.com/repos/dnerdy/factory_boy","forks_url":"https://api.github.com/repos/dnerdy/factory_boy/forks","keys_url":"https://api.github.com/repos/dnerdy/factory_boy/keys{/key_id}","collaborators_url":"https://api.github.com/repos/dnerdy/factory_boy/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/dnerdy/factory_boy/teams","hooks_url":"https://api.github.com/repos/dnerdy/factory_boy/hooks","issue_events_url":"https://api.github.com/repos/dnerdy/factory_boy/issues/events{/number}","events_url":"https://api.github.com/repos/dnerdy/factory_boy/events","assignees_url":"https://api.github.com/repos/dnerdy/factory_boy/assignees{/user}","branches_url":"https://api.github.com/repos/dnerdy/factory_boy/branches{/branch}","tags_url":"https://api.github.com/repos/dnerdy/factory_boy/tags","blobs_url":"https://api.github.com/repos/dnerdy/factory_boy/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/dnerdy/factory_boy/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/dnerdy/factory_boy/git/refs{/sha}","trees_url":"https://api.github.com/repos/dnerdy/factory_boy/git/trees{/sha}","statuses_url":"https://api.github.com/repos/dnerdy/factory_boy/statuses/{sha}","languages_url":"https://api.github.com/repos/dnerdy/factory_boy/languages","stargazers_url":"https://api.github.com/repos/dnerdy/factory_boy/stargazers","contributors_url":"https://api.github.com/repos/dnerdy/factory_boy/contributors","subscribers_url":"https://api.github.com/repos/dnerdy/factory_boy/subscribers","subscription_url":"https://api.github.com/repos/dnerdy/factory_boy/subscription","commits_url":"https://api.github.com/repos/dnerdy/factory_boy/commits{/sha}","git_commits_url":"https://api.github.com/repos/dnerdy/factory_boy/git/commits{/sha}","comments_url":"https://api.github.com/repos/dnerdy/factory_boy/comments{/number}","issue_comment_url":"https://api.github.com/repos/dnerdy/factory_boy/issues/comments/{number}","contents_url":"https://api.github.com/repos/dnerdy/factory_boy/contents/{+path}","compare_url":"https://api.github.com/repos/dnerdy/factory_boy/compare/{base}...{head}","merges_url":"https://api.github.com/repos/dnerdy/factory_boy/merges","archive_url":"https://api.github.com/repos/dnerdy/factory_boy/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/dnerdy/factory_boy/downloads","issues_url":"https://api.github.com/repos/dnerdy/factory_boy/issues{/number}","pulls_url":"https://api.github.com/repos/dnerdy/factory_boy/pulls{/number}","milestones_url":"https://api.github.com/repos/dnerdy/factory_boy/milestones{/number}","notifications_url":"https://api.github.com/repos/dnerdy/factory_boy/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/dnerdy/factory_boy/labels{/name}","releases_url":"https://api.github.com/repos/dnerdy/factory_boy/releases{/id}","created_at":"2010-08-22T18:24:51Z","updated_at":"2014-01-05T19:50:05Z","pushed_at":"2013-07-03T18:43:47Z","git_url":"git://github.com/dnerdy/factory_boy.git","ssh_url":"git@github.com:dnerdy/factory_boy.git","clone_url":"https://github.com/dnerdy/factory_boy.git","svn_url":"https://github.com/dnerdy/factory_boy","homepage":"","size":375,"stargazers_count":267,"watchers_count":267,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":true,"forks_count":74,"mirror_url":null,"open_issues_count":14,"forks":74,"open_issues":14,"watchers":267,"default_branch":"master","master_branch":"master","score":10.4816065},{"id":82733,"name":"drydrop","full_name":"binaryage/drydrop","owner":{"login":"binaryage","id":70164,"avatar_url":"https://avatars.githubusercontent.com/u/70164","gravatar_id":"84d27bbe22c150d97e369b51f1f33271","url":"https://api.github.com/users/binaryage","html_url":"https://github.com/binaryage","followers_url":"https://api.github.com/users/binaryage/followers","following_url":"https://api.github.com/users/binaryage/following{/other_user}","gists_url":"https://api.github.com/users/binaryage/gists{/gist_id}","starred_url":"https://api.github.com/users/binaryage/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/binaryage/subscriptions","organizations_url":"https://api.github.com/users/binaryage/orgs","repos_url":"https://api.github.com/users/binaryage/repos","events_url":"https://api.github.com/users/binaryage/events{/privacy}","received_events_url":"https://api.github.com/users/binaryage/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/binaryage/drydrop","description":"Deploy static sites to App Engine by pushing to GitHub ","fork":false,"url":"https://api.github.com/repos/binaryage/drydrop","forks_url":"https://api.github.com/repos/binaryage/drydrop/forks","keys_url":"https://api.github.com/repos/binaryage/drydrop/keys{/key_id}","collaborators_url":"https://api.github.com/repos/binaryage/drydrop/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/binaryage/drydrop/teams","hooks_url":"https://api.github.com/repos/binaryage/drydrop/hooks","issue_events_url":"https://api.github.com/repos/binaryage/drydrop/issues/events{/number}","events_url":"https://api.github.com/repos/binaryage/drydrop/events","assignees_url":"https://api.github.com/repos/binaryage/drydrop/assignees{/user}","branches_url":"https://api.github.com/repos/binaryage/drydrop/branches{/branch}","tags_url":"https://api.github.com/repos/binaryage/drydrop/tags","blobs_url":"https://api.github.com/repos/binaryage/drydrop/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/binaryage/drydrop/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/binaryage/drydrop/git/refs{/sha}","trees_url":"https://api.github.com/repos/binaryage/drydrop/git/trees{/sha}","statuses_url":"https://api.github.com/repos/binaryage/drydrop/statuses/{sha}","languages_url":"https://api.github.com/repos/binaryage/drydrop/languages","stargazers_url":"https://api.github.com/repos/binaryage/drydrop/stargazers","contributors_url":"https://api.github.com/repos/binaryage/drydrop/contributors","subscribers_url":"https://api.github.com/repos/binaryage/drydrop/subscribers","subscription_url":"https://api.github.com/repos/binaryage/drydrop/subscription","commits_url":"https://api.github.com/repos/binaryage/drydrop/commits{/sha}","git_commits_url":"https://api.github.com/repos/binaryage/drydrop/git/commits{/sha}","comments_url":"https://api.github.com/repos/binaryage/drydrop/comments{/number}","issue_comment_url":"https://api.github.com/repos/binaryage/drydrop/issues/comments/{number}","contents_url":"https://api.github.com/repos/binaryage/drydrop/contents/{+path}","compare_url":"https://api.github.com/repos/binaryage/drydrop/compare/{base}...{head}","merges_url":"https://api.github.com/repos/binaryage/drydrop/merges","archive_url":"https://api.github.com/repos/binaryage/drydrop/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/binaryage/drydrop/downloads","issues_url":"https://api.github.com/repos/binaryage/drydrop/issues{/number}","pulls_url":"https://api.github.com/repos/binaryage/drydrop/pulls{/number}","milestones_url":"https://api.github.com/repos/binaryage/drydrop/milestones{/number}","notifications_url":"https://api.github.com/repos/binaryage/drydrop/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/binaryage/drydrop/labels{/name}","releases_url":"https://api.github.com/repos/binaryage/drydrop/releases{/id}","created_at":"2008-11-30T19:07:49Z","updated_at":"2013-12-18T09:21:26Z","pushed_at":"2013-08-07T17:23:21Z","git_url":"git://github.com/binaryage/drydrop.git","ssh_url":"git@github.com:binaryage/drydrop.git","clone_url":"https://github.com/binaryage/drydrop.git","svn_url":"https://github.com/binaryage/drydrop","homepage":"http://drydrop.binaryage.com","size":12897,"stargazers_count":242,"watchers_count":242,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":35,"mirror_url":null,"open_issues_count":9,"forks":35,"open_issues":9,"watchers":242,"default_branch":"master","master_branch":"master","score":14.523638},{"id":2080027,"name":"sublime-github","full_name":"bgreenlee/sublime-github","owner":{"login":"bgreenlee","id":2901,"avatar_url":"https://avatars.githubusercontent.com/u/2901","gravatar_id":"042bad4058b6c1d8d3cc451a47c97fd4","url":"https://api.github.com/users/bgreenlee","html_url":"https://github.com/bgreenlee","followers_url":"https://api.github.com/users/bgreenlee/followers","following_url":"https://api.github.com/users/bgreenlee/following{/other_user}","gists_url":"https://api.github.com/users/bgreenlee/gists{/gist_id}","starred_url":"https://api.github.com/users/bgreenlee/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bgreenlee/subscriptions","organizations_url":"https://api.github.com/users/bgreenlee/orgs","repos_url":"https://api.github.com/users/bgreenlee/repos","events_url":"https://api.github.com/users/bgreenlee/events{/privacy}","received_events_url":"https://api.github.com/users/bgreenlee/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/bgreenlee/sublime-github","description":"Sublime Text 2/3 plugin that provides a number of useful commands for GitHub.","fork":false,"url":"https://api.github.com/repos/bgreenlee/sublime-github","forks_url":"https://api.github.com/repos/bgreenlee/sublime-github/forks","keys_url":"https://api.github.com/repos/bgreenlee/sublime-github/keys{/key_id}","collaborators_url":"https://api.github.com/repos/bgreenlee/sublime-github/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/bgreenlee/sublime-github/teams","hooks_url":"https://api.github.com/repos/bgreenlee/sublime-github/hooks","issue_events_url":"https://api.github.com/repos/bgreenlee/sublime-github/issues/events{/number}","events_url":"https://api.github.com/repos/bgreenlee/sublime-github/events","assignees_url":"https://api.github.com/repos/bgreenlee/sublime-github/assignees{/user}","branches_url":"https://api.github.com/repos/bgreenlee/sublime-github/branches{/branch}","tags_url":"https://api.github.com/repos/bgreenlee/sublime-github/tags","blobs_url":"https://api.github.com/repos/bgreenlee/sublime-github/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/bgreenlee/sublime-github/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/bgreenlee/sublime-github/git/refs{/sha}","trees_url":"https://api.github.com/repos/bgreenlee/sublime-github/git/trees{/sha}","statuses_url":"https://api.github.com/repos/bgreenlee/sublime-github/statuses/{sha}","languages_url":"https://api.github.com/repos/bgreenlee/sublime-github/languages","stargazers_url":"https://api.github.com/repos/bgreenlee/sublime-github/stargazers","contributors_url":"https://api.github.com/repos/bgreenlee/sublime-github/contributors","subscribers_url":"https://api.github.com/repos/bgreenlee/sublime-github/subscribers","subscription_url":"https://api.github.com/repos/bgreenlee/sublime-github/subscription","commits_url":"https://api.github.com/repos/bgreenlee/sublime-github/commits{/sha}","git_commits_url":"https://api.github.com/repos/bgreenlee/sublime-github/git/commits{/sha}","comments_url":"https://api.github.com/repos/bgreenlee/sublime-github/comments{/number}","issue_comment_url":"https://api.github.com/repos/bgreenlee/sublime-github/issues/comments/{number}","contents_url":"https://api.github.com/repos/bgreenlee/sublime-github/contents/{+path}","compare_url":"https://api.github.com/repos/bgreenlee/sublime-github/compare/{base}...{head}","merges_url":"https://api.github.com/repos/bgreenlee/sublime-github/merges","archive_url":"https://api.github.com/repos/bgreenlee/sublime-github/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/bgreenlee/sublime-github/downloads","issues_url":"https://api.github.com/repos/bgreenlee/sublime-github/issues{/number}","pulls_url":"https://api.github.com/repos/bgreenlee/sublime-github/pulls{/number}","milestones_url":"https://api.github.com/repos/bgreenlee/sublime-github/milestones{/number}","notifications_url":"https://api.github.com/repos/bgreenlee/sublime-github/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/bgreenlee/sublime-github/labels{/name}","releases_url":"https://api.github.com/repos/bgreenlee/sublime-github/releases{/id}","created_at":"2011-07-20T19:54:39Z","updated_at":"2014-02-24T20:17:29Z","pushed_at":"2014-02-24T20:17:28Z","git_url":"git://github.com/bgreenlee/sublime-github.git","ssh_url":"git@github.com:bgreenlee/sublime-github.git","clone_url":"https://github.com/bgreenlee/sublime-github.git","svn_url":"https://github.com/bgreenlee/sublime-github","homepage":"","size":719,"stargazers_count":238,"watchers_count":238,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":28,"mirror_url":null,"open_issues_count":10,"forks":28,"open_issues":10,"watchers":238,"default_branch":"master","master_branch":"master","score":28.968264},{"id":12190067,"name":"HackerNewsAPI","full_name":"karan/HackerNewsAPI","owner":{"login":"karan","id":3261985,"avatar_url":"https://avatars.githubusercontent.com/u/3261985","gravatar_id":"1623b9c4ad75d02ac303a0510676dd37","url":"https://api.github.com/users/karan","html_url":"https://github.com/karan","followers_url":"https://api.github.com/users/karan/followers","following_url":"https://api.github.com/users/karan/following{/other_user}","gists_url":"https://api.github.com/users/karan/gists{/gist_id}","starred_url":"https://api.github.com/users/karan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/karan/subscriptions","organizations_url":"https://api.github.com/users/karan/orgs","repos_url":"https://api.github.com/users/karan/repos","events_url":"https://api.github.com/users/karan/events{/privacy}","received_events_url":"https://api.github.com/users/karan/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/karan/HackerNewsAPI","description":"Unofficial Python API for Hacker News. RESTful API at https://github.com/karan/HNify","fork":false,"url":"https://api.github.com/repos/karan/HackerNewsAPI","forks_url":"https://api.github.com/repos/karan/HackerNewsAPI/forks","keys_url":"https://api.github.com/repos/karan/HackerNewsAPI/keys{/key_id}","collaborators_url":"https://api.github.com/repos/karan/HackerNewsAPI/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/karan/HackerNewsAPI/teams","hooks_url":"https://api.github.com/repos/karan/HackerNewsAPI/hooks","issue_events_url":"https://api.github.com/repos/karan/HackerNewsAPI/issues/events{/number}","events_url":"https://api.github.com/repos/karan/HackerNewsAPI/events","assignees_url":"https://api.github.com/repos/karan/HackerNewsAPI/assignees{/user}","branches_url":"https://api.github.com/repos/karan/HackerNewsAPI/branches{/branch}","tags_url":"https://api.github.com/repos/karan/HackerNewsAPI/tags","blobs_url":"https://api.github.com/repos/karan/HackerNewsAPI/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/karan/HackerNewsAPI/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/karan/HackerNewsAPI/git/refs{/sha}","trees_url":"https://api.github.com/repos/karan/HackerNewsAPI/git/trees{/sha}","statuses_url":"https://api.github.com/repos/karan/HackerNewsAPI/statuses/{sha}","languages_url":"https://api.github.com/repos/karan/HackerNewsAPI/languages","stargazers_url":"https://api.github.com/repos/karan/HackerNewsAPI/stargazers","contributors_url":"https://api.github.com/repos/karan/HackerNewsAPI/contributors","subscribers_url":"https://api.github.com/repos/karan/HackerNewsAPI/subscribers","subscription_url":"https://api.github.com/repos/karan/HackerNewsAPI/subscription","commits_url":"https://api.github.com/repos/karan/HackerNewsAPI/commits{/sha}","git_commits_url":"https://api.github.com/repos/karan/HackerNewsAPI/git/commits{/sha}","comments_url":"https://api.github.com/repos/karan/HackerNewsAPI/comments{/number}","issue_comment_url":"https://api.github.com/repos/karan/HackerNewsAPI/issues/comments/{number}","contents_url":"https://api.github.com/repos/karan/HackerNewsAPI/contents/{+path}","compare_url":"https://api.github.com/repos/karan/HackerNewsAPI/compare/{base}...{head}","merges_url":"https://api.github.com/repos/karan/HackerNewsAPI/merges","archive_url":"https://api.github.com/repos/karan/HackerNewsAPI/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/karan/HackerNewsAPI/downloads","issues_url":"https://api.github.com/repos/karan/HackerNewsAPI/issues{/number}","pulls_url":"https://api.github.com/repos/karan/HackerNewsAPI/pulls{/number}","milestones_url":"https://api.github.com/repos/karan/HackerNewsAPI/milestones{/number}","notifications_url":"https://api.github.com/repos/karan/HackerNewsAPI/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/karan/HackerNewsAPI/labels{/name}","releases_url":"https://api.github.com/repos/karan/HackerNewsAPI/releases{/id}","created_at":"2013-08-18T04:00:52Z","updated_at":"2014-02-27T21:16:24Z","pushed_at":"2014-02-27T21:16:24Z","git_url":"git://github.com/karan/HackerNewsAPI.git","ssh_url":"git@github.com:karan/HackerNewsAPI.git","clone_url":"https://github.com/karan/HackerNewsAPI.git","svn_url":"https://github.com/karan/HackerNewsAPI","homepage":"","size":737,"stargazers_count":240,"watchers_count":240,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"forks_count":33,"mirror_url":null,"open_issues_count":2,"forks":33,"open_issues":2,"watchers":240,"default_branch":"master","master_branch":"master","score":11.483997},{"id":331547,"name":"pyPdf","full_name":"mfenniak/pyPdf","owner":{"login":"mfenniak","id":91093,"avatar_url":"https://avatars.githubusercontent.com/u/91093","gravatar_id":"4dbde6e8b5b0932957db2ecc90177b81","url":"https://api.github.com/users/mfenniak","html_url":"https://github.com/mfenniak","followers_url":"https://api.github.com/users/mfenniak/followers","following_url":"https://api.github.com/users/mfenniak/following{/other_user}","gists_url":"https://api.github.com/users/mfenniak/gists{/gist_id}","starred_url":"https://api.github.com/users/mfenniak/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mfenniak/subscriptions","organizations_url":"https://api.github.com/users/mfenniak/orgs","repos_url":"https://api.github.com/users/mfenniak/repos","events_url":"https://api.github.com/users/mfenniak/events{/privacy}","received_events_url":"https://api.github.com/users/mfenniak/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/mfenniak/pyPdf","description":"Pure-Python PDF Library; this repository is no longer maintained, please see https://github.com/knowah/PyPDF2/ insead.","fork":false,"url":"https://api.github.com/repos/mfenniak/pyPdf","forks_url":"https://api.github.com/repos/mfenniak/pyPdf/forks","keys_url":"https://api.github.com/repos/mfenniak/pyPdf/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mfenniak/pyPdf/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mfenniak/pyPdf/teams","hooks_url":"https://api.github.com/repos/mfenniak/pyPdf/hooks","issue_events_url":"https://api.github.com/repos/mfenniak/pyPdf/issues/events{/number}","events_url":"https://api.github.com/repos/mfenniak/pyPdf/events","assignees_url":"https://api.github.com/repos/mfenniak/pyPdf/assignees{/user}","branches_url":"https://api.github.com/repos/mfenniak/pyPdf/branches{/branch}","tags_url":"https://api.github.com/repos/mfenniak/pyPdf/tags","blobs_url":"https://api.github.com/repos/mfenniak/pyPdf/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mfenniak/pyPdf/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mfenniak/pyPdf/git/refs{/sha}","trees_url":"https://api.github.com/repos/mfenniak/pyPdf/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mfenniak/pyPdf/statuses/{sha}","languages_url":"https://api.github.com/repos/mfenniak/pyPdf/languages","stargazers_url":"https://api.github.com/repos/mfenniak/pyPdf/stargazers","contributors_url":"https://api.github.com/repos/mfenniak/pyPdf/contributors","subscribers_url":"https://api.github.com/repos/mfenniak/pyPdf/subscribers","subscription_url":"https://api.github.com/repos/mfenniak/pyPdf/subscription","commits_url":"https://api.github.com/repos/mfenniak/pyPdf/commits{/sha}","git_commits_url":"https://api.github.com/repos/mfenniak/pyPdf/git/commits{/sha}","comments_url":"https://api.github.com/repos/mfenniak/pyPdf/comments{/number}","issue_comment_url":"https://api.github.com/repos/mfenniak/pyPdf/issues/comments/{number}","contents_url":"https://api.github.com/repos/mfenniak/pyPdf/contents/{+path}","compare_url":"https://api.github.com/repos/mfenniak/pyPdf/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mfenniak/pyPdf/merges","archive_url":"https://api.github.com/repos/mfenniak/pyPdf/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mfenniak/pyPdf/downloads","issues_url":"https://api.github.com/repos/mfenniak/pyPdf/issues{/number}","pulls_url":"https://api.github.com/repos/mfenniak/pyPdf/pulls{/number}","milestones_url":"https://api.github.com/repos/mfenniak/pyPdf/milestones{/number}","notifications_url":"https://api.github.com/repos/mfenniak/pyPdf/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mfenniak/pyPdf/labels{/name}","releases_url":"https://api.github.com/repos/mfenniak/pyPdf/releases{/id}","created_at":"2009-10-08T23:52:41Z","updated_at":"2014-01-07T06:07:04Z","pushed_at":"2011-07-19T15:14:36Z","git_url":"git://github.com/mfenniak/pyPdf.git","ssh_url":"git@github.com:mfenniak/pyPdf.git","clone_url":"https://github.com/mfenniak/pyPdf.git","svn_url":"https://github.com/mfenniak/pyPdf","homepage":"https://github.com/knowah/PyPDF2/","size":410,"stargazers_count":229,"watchers_count":229,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":70,"mirror_url":null,"open_issues_count":37,"forks":70,"open_issues":37,"watchers":229,"default_branch":"trunk","master_branch":"trunk","score":11.901796},{"id":14057030,"name":"github-decorator","full_name":"skazhy/github-decorator","owner":{"login":"skazhy","id":168427,"avatar_url":"https://avatars.githubusercontent.com/u/168427","gravatar_id":"085d620aca53f8b5a7630021747d9c9d","url":"https://api.github.com/users/skazhy","html_url":"https://github.com/skazhy","followers_url":"https://api.github.com/users/skazhy/followers","following_url":"https://api.github.com/users/skazhy/following{/other_user}","gists_url":"https://api.github.com/users/skazhy/gists{/gist_id}","starred_url":"https://api.github.com/users/skazhy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/skazhy/subscriptions","organizations_url":"https://api.github.com/users/skazhy/orgs","repos_url":"https://api.github.com/users/skazhy/repos","events_url":"https://api.github.com/users/skazhy/events{/privacy}","received_events_url":"https://api.github.com/users/skazhy/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/skazhy/github-decorator","description":"A GitHub profile decorator","fork":false,"url":"https://api.github.com/repos/skazhy/github-decorator","forks_url":"https://api.github.com/repos/skazhy/github-decorator/forks","keys_url":"https://api.github.com/repos/skazhy/github-decorator/keys{/key_id}","collaborators_url":"https://api.github.com/repos/skazhy/github-decorator/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/skazhy/github-decorator/teams","hooks_url":"https://api.github.com/repos/skazhy/github-decorator/hooks","issue_events_url":"https://api.github.com/repos/skazhy/github-decorator/issues/events{/number}","events_url":"https://api.github.com/repos/skazhy/github-decorator/events","assignees_url":"https://api.github.com/repos/skazhy/github-decorator/assignees{/user}","branches_url":"https://api.github.com/repos/skazhy/github-decorator/branches{/branch}","tags_url":"https://api.github.com/repos/skazhy/github-decorator/tags","blobs_url":"https://api.github.com/repos/skazhy/github-decorator/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/skazhy/github-decorator/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/skazhy/github-decorator/git/refs{/sha}","trees_url":"https://api.github.com/repos/skazhy/github-decorator/git/trees{/sha}","statuses_url":"https://api.github.com/repos/skazhy/github-decorator/statuses/{sha}","languages_url":"https://api.github.com/repos/skazhy/github-decorator/languages","stargazers_url":"https://api.github.com/repos/skazhy/github-decorator/stargazers","contributors_url":"https://api.github.com/repos/skazhy/github-decorator/contributors","subscribers_url":"https://api.github.com/repos/skazhy/github-decorator/subscribers","subscription_url":"https://api.github.com/repos/skazhy/github-decorator/subscription","commits_url":"https://api.github.com/repos/skazhy/github-decorator/commits{/sha}","git_commits_url":"https://api.github.com/repos/skazhy/github-decorator/git/commits{/sha}","comments_url":"https://api.github.com/repos/skazhy/github-decorator/comments{/number}","issue_comment_url":"https://api.github.com/repos/skazhy/github-decorator/issues/comments/{number}","contents_url":"https://api.github.com/repos/skazhy/github-decorator/contents/{+path}","compare_url":"https://api.github.com/repos/skazhy/github-decorator/compare/{base}...{head}","merges_url":"https://api.github.com/repos/skazhy/github-decorator/merges","archive_url":"https://api.github.com/repos/skazhy/github-decorator/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/skazhy/github-decorator/downloads","issues_url":"https://api.github.com/repos/skazhy/github-decorator/issues{/number}","pulls_url":"https://api.github.com/repos/skazhy/github-decorator/pulls{/number}","milestones_url":"https://api.github.com/repos/skazhy/github-decorator/milestones{/number}","notifications_url":"https://api.github.com/repos/skazhy/github-decorator/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/skazhy/github-decorator/labels{/name}","releases_url":"https://api.github.com/repos/skazhy/github-decorator/releases{/id}","created_at":"2013-11-01T23:51:30Z","updated_at":"2014-01-11T00:28:07Z","pushed_at":"2013-11-07T09:28:17Z","git_url":"git://github.com/skazhy/github-decorator.git","ssh_url":"git@github.com:skazhy/github-decorator.git","clone_url":"https://github.com/skazhy/github-decorator.git","svn_url":"https://github.com/skazhy/github-decorator","homepage":null,"size":119,"stargazers_count":223,"watchers_count":223,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":13,"mirror_url":null,"open_issues_count":1,"forks":13,"open_issues":1,"watchers":223,"default_branch":"master","master_branch":"master","score":21.266361},{"id":3375197,"name":"llvmpy","full_name":"llvmpy/llvmpy","owner":{"login":"llvmpy","id":2081869,"avatar_url":"https://avatars.githubusercontent.com/u/2081869","gravatar_id":"a718e9fd797832c135474a751557081c","url":"https://api.github.com/users/llvmpy","html_url":"https://github.com/llvmpy","followers_url":"https://api.github.com/users/llvmpy/followers","following_url":"https://api.github.com/users/llvmpy/following{/other_user}","gists_url":"https://api.github.com/users/llvmpy/gists{/gist_id}","starred_url":"https://api.github.com/users/llvmpy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/llvmpy/subscriptions","organizations_url":"https://api.github.com/users/llvmpy/orgs","repos_url":"https://api.github.com/users/llvmpy/repos","events_url":"https://api.github.com/users/llvmpy/events{/privacy}","received_events_url":"https://api.github.com/users/llvmpy/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/llvmpy/llvmpy","description":"Originally a github fork of the llvm-py repository from http://www.mdevan.org/llvm-py/index.html updated to work with LLVM 3.x. Since then it has changed significantly with multiple sub-projects.","fork":false,"url":"https://api.github.com/repos/llvmpy/llvmpy","forks_url":"https://api.github.com/repos/llvmpy/llvmpy/forks","keys_url":"https://api.github.com/repos/llvmpy/llvmpy/keys{/key_id}","collaborators_url":"https://api.github.com/repos/llvmpy/llvmpy/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/llvmpy/llvmpy/teams","hooks_url":"https://api.github.com/repos/llvmpy/llvmpy/hooks","issue_events_url":"https://api.github.com/repos/llvmpy/llvmpy/issues/events{/number}","events_url":"https://api.github.com/repos/llvmpy/llvmpy/events","assignees_url":"https://api.github.com/repos/llvmpy/llvmpy/assignees{/user}","branches_url":"https://api.github.com/repos/llvmpy/llvmpy/branches{/branch}","tags_url":"https://api.github.com/repos/llvmpy/llvmpy/tags","blobs_url":"https://api.github.com/repos/llvmpy/llvmpy/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/llvmpy/llvmpy/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/llvmpy/llvmpy/git/refs{/sha}","trees_url":"https://api.github.com/repos/llvmpy/llvmpy/git/trees{/sha}","statuses_url":"https://api.github.com/repos/llvmpy/llvmpy/statuses/{sha}","languages_url":"https://api.github.com/repos/llvmpy/llvmpy/languages","stargazers_url":"https://api.github.com/repos/llvmpy/llvmpy/stargazers","contributors_url":"https://api.github.com/repos/llvmpy/llvmpy/contributors","subscribers_url":"https://api.github.com/repos/llvmpy/llvmpy/subscribers","subscription_url":"https://api.github.com/repos/llvmpy/llvmpy/subscription","commits_url":"https://api.github.com/repos/llvmpy/llvmpy/commits{/sha}","git_commits_url":"https://api.github.com/repos/llvmpy/llvmpy/git/commits{/sha}","comments_url":"https://api.github.com/repos/llvmpy/llvmpy/comments{/number}","issue_comment_url":"https://api.github.com/repos/llvmpy/llvmpy/issues/comments/{number}","contents_url":"https://api.github.com/repos/llvmpy/llvmpy/contents/{+path}","compare_url":"https://api.github.com/repos/llvmpy/llvmpy/compare/{base}...{head}","merges_url":"https://api.github.com/repos/llvmpy/llvmpy/merges","archive_url":"https://api.github.com/repos/llvmpy/llvmpy/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/llvmpy/llvmpy/downloads","issues_url":"https://api.github.com/repos/llvmpy/llvmpy/issues{/number}","pulls_url":"https://api.github.com/repos/llvmpy/llvmpy/pulls{/number}","milestones_url":"https://api.github.com/repos/llvmpy/llvmpy/milestones{/number}","notifications_url":"https://api.github.com/repos/llvmpy/llvmpy/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/llvmpy/llvmpy/labels{/name}","releases_url":"https://api.github.com/repos/llvmpy/llvmpy/releases{/id}","created_at":"2012-02-07T07:09:59Z","updated_at":"2014-02-18T21:39:20Z","pushed_at":"2014-02-18T21:39:20Z","git_url":"git://github.com/llvmpy/llvmpy.git","ssh_url":"git@github.com:llvmpy/llvmpy.git","clone_url":"https://github.com/llvmpy/llvmpy.git","svn_url":"https://github.com/llvmpy/llvmpy","homepage":"www.llvmpy.org","size":5833,"stargazers_count":220,"watchers_count":220,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":48,"mirror_url":null,"open_issues_count":33,"forks":48,"open_issues":33,"watchers":220,"default_branch":"master","master_branch":"master","score":9.256256},{"id":54383,"name":"gmate","full_name":"lexrupy/gmate","owner":{"login":"lexrupy","id":16597,"avatar_url":"https://avatars.githubusercontent.com/u/16597","gravatar_id":"ff4ea51c90e15b65b137e8fb60e60764","url":"https://api.github.com/users/lexrupy","html_url":"https://github.com/lexrupy","followers_url":"https://api.github.com/users/lexrupy/followers","following_url":"https://api.github.com/users/lexrupy/following{/other_user}","gists_url":"https://api.github.com/users/lexrupy/gists{/gist_id}","starred_url":"https://api.github.com/users/lexrupy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lexrupy/subscriptions","organizations_url":"https://api.github.com/users/lexrupy/orgs","repos_url":"https://api.github.com/users/lexrupy/repos","events_url":"https://api.github.com/users/lexrupy/events{/privacy}","received_events_url":"https://api.github.com/users/lexrupy/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/lexrupy/gmate","description":"Gmate has been moved to http://github.com/gmate/gmate","fork":false,"url":"https://api.github.com/repos/lexrupy/gmate","forks_url":"https://api.github.com/repos/lexrupy/gmate/forks","keys_url":"https://api.github.com/repos/lexrupy/gmate/keys{/key_id}","collaborators_url":"https://api.github.com/repos/lexrupy/gmate/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/lexrupy/gmate/teams","hooks_url":"https://api.github.com/repos/lexrupy/gmate/hooks","issue_events_url":"https://api.github.com/repos/lexrupy/gmate/issues/events{/number}","events_url":"https://api.github.com/repos/lexrupy/gmate/events","assignees_url":"https://api.github.com/repos/lexrupy/gmate/assignees{/user}","branches_url":"https://api.github.com/repos/lexrupy/gmate/branches{/branch}","tags_url":"https://api.github.com/repos/lexrupy/gmate/tags","blobs_url":"https://api.github.com/repos/lexrupy/gmate/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/lexrupy/gmate/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/lexrupy/gmate/git/refs{/sha}","trees_url":"https://api.github.com/repos/lexrupy/gmate/git/trees{/sha}","statuses_url":"https://api.github.com/repos/lexrupy/gmate/statuses/{sha}","languages_url":"https://api.github.com/repos/lexrupy/gmate/languages","stargazers_url":"https://api.github.com/repos/lexrupy/gmate/stargazers","contributors_url":"https://api.github.com/repos/lexrupy/gmate/contributors","subscribers_url":"https://api.github.com/repos/lexrupy/gmate/subscribers","subscription_url":"https://api.github.com/repos/lexrupy/gmate/subscription","commits_url":"https://api.github.com/repos/lexrupy/gmate/commits{/sha}","git_commits_url":"https://api.github.com/repos/lexrupy/gmate/git/commits{/sha}","comments_url":"https://api.github.com/repos/lexrupy/gmate/comments{/number}","issue_comment_url":"https://api.github.com/repos/lexrupy/gmate/issues/comments/{number}","contents_url":"https://api.github.com/repos/lexrupy/gmate/contents/{+path}","compare_url":"https://api.github.com/repos/lexrupy/gmate/compare/{base}...{head}","merges_url":"https://api.github.com/repos/lexrupy/gmate/merges","archive_url":"https://api.github.com/repos/lexrupy/gmate/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/lexrupy/gmate/downloads","issues_url":"https://api.github.com/repos/lexrupy/gmate/issues{/number}","pulls_url":"https://api.github.com/repos/lexrupy/gmate/pulls{/number}","milestones_url":"https://api.github.com/repos/lexrupy/gmate/milestones{/number}","notifications_url":"https://api.github.com/repos/lexrupy/gmate/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/lexrupy/gmate/labels{/name}","releases_url":"https://api.github.com/repos/lexrupy/gmate/releases{/id}","created_at":"2008-09-19T18:55:31Z","updated_at":"2013-12-22T15:18:35Z","pushed_at":"2010-09-05T16:27:39Z","git_url":"git://github.com/lexrupy/gmate.git","ssh_url":"git@github.com:lexrupy/gmate.git","clone_url":"https://github.com/lexrupy/gmate.git","svn_url":"https://github.com/lexrupy/gmate","homepage":"http://github.com/gmate/gmate","size":701,"stargazers_count":203,"watchers_count":203,"language":"Python","has_issues":false,"has_downloads":false,"has_wiki":false,"forks_count":14,"mirror_url":null,"open_issues_count":13,"forks":14,"open_issues":13,"watchers":203,"default_branch":"master","master_branch":"master","score":10.443312},{"id":179358,"name":"python-github2","full_name":"ask/python-github2","owner":{"login":"ask","id":1558,"avatar_url":"https://avatars.githubusercontent.com/u/1558","gravatar_id":"7e8b501f7f579c66ddac7e65cb7962b4","url":"https://api.github.com/users/ask","html_url":"https://github.com/ask","followers_url":"https://api.github.com/users/ask/followers","following_url":"https://api.github.com/users/ask/following{/other_user}","gists_url":"https://api.github.com/users/ask/gists{/gist_id}","starred_url":"https://api.github.com/users/ask/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ask/subscriptions","organizations_url":"https://api.github.com/users/ask/orgs","repos_url":"https://api.github.com/users/ask/repos","events_url":"https://api.github.com/users/ask/events{/privacy}","received_events_url":"https://api.github.com/users/ask/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/ask/python-github2","description":"github client in python, with issues support.","fork":false,"url":"https://api.github.com/repos/ask/python-github2","forks_url":"https://api.github.com/repos/ask/python-github2/forks","keys_url":"https://api.github.com/repos/ask/python-github2/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ask/python-github2/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ask/python-github2/teams","hooks_url":"https://api.github.com/repos/ask/python-github2/hooks","issue_events_url":"https://api.github.com/repos/ask/python-github2/issues/events{/number}","events_url":"https://api.github.com/repos/ask/python-github2/events","assignees_url":"https://api.github.com/repos/ask/python-github2/assignees{/user}","branches_url":"https://api.github.com/repos/ask/python-github2/branches{/branch}","tags_url":"https://api.github.com/repos/ask/python-github2/tags","blobs_url":"https://api.github.com/repos/ask/python-github2/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ask/python-github2/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ask/python-github2/git/refs{/sha}","trees_url":"https://api.github.com/repos/ask/python-github2/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ask/python-github2/statuses/{sha}","languages_url":"https://api.github.com/repos/ask/python-github2/languages","stargazers_url":"https://api.github.com/repos/ask/python-github2/stargazers","contributors_url":"https://api.github.com/repos/ask/python-github2/contributors","subscribers_url":"https://api.github.com/repos/ask/python-github2/subscribers","subscription_url":"https://api.github.com/repos/ask/python-github2/subscription","commits_url":"https://api.github.com/repos/ask/python-github2/commits{/sha}","git_commits_url":"https://api.github.com/repos/ask/python-github2/git/commits{/sha}","comments_url":"https://api.github.com/repos/ask/python-github2/comments{/number}","issue_comment_url":"https://api.github.com/repos/ask/python-github2/issues/comments/{number}","contents_url":"https://api.github.com/repos/ask/python-github2/contents/{+path}","compare_url":"https://api.github.com/repos/ask/python-github2/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ask/python-github2/merges","archive_url":"https://api.github.com/repos/ask/python-github2/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ask/python-github2/downloads","issues_url":"https://api.github.com/repos/ask/python-github2/issues{/number}","pulls_url":"https://api.github.com/repos/ask/python-github2/pulls{/number}","milestones_url":"https://api.github.com/repos/ask/python-github2/milestones{/number}","notifications_url":"https://api.github.com/repos/ask/python-github2/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ask/python-github2/labels{/name}","releases_url":"https://api.github.com/repos/ask/python-github2/releases{/id}","created_at":"2009-04-18T15:31:12Z","updated_at":"2014-01-05T16:47:50Z","pushed_at":"2012-06-11T16:07:14Z","git_url":"git://github.com/ask/python-github2.git","ssh_url":"git@github.com:ask/python-github2.git","clone_url":"https://github.com/ask/python-github2.git","svn_url":"https://github.com/ask/python-github2","homepage":"http://packages.python.org/github2","size":832,"stargazers_count":195,"watchers_count":195,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":58,"mirror_url":null,"open_issues_count":0,"forks":58,"open_issues":0,"watchers":195,"default_branch":"master","master_branch":"master","score":27.283829},{"id":11407567,"name":"cookiecutter-pypackage","full_name":"audreyr/cookiecutter-pypackage","owner":{"login":"audreyr","id":74739,"avatar_url":"https://avatars.githubusercontent.com/u/74739","gravatar_id":"21c87b66d4e8fbe9d55219d3c1a2c73d","url":"https://api.github.com/users/audreyr","html_url":"https://github.com/audreyr","followers_url":"https://api.github.com/users/audreyr/followers","following_url":"https://api.github.com/users/audreyr/following{/other_user}","gists_url":"https://api.github.com/users/audreyr/gists{/gist_id}","starred_url":"https://api.github.com/users/audreyr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/audreyr/subscriptions","organizations_url":"https://api.github.com/users/audreyr/orgs","repos_url":"https://api.github.com/users/audreyr/repos","events_url":"https://api.github.com/users/audreyr/events{/privacy}","received_events_url":"https://api.github.com/users/audreyr/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/audreyr/cookiecutter-pypackage","description":"Cookiecutter template for a Python package. See https://github.com/audreyr/cookiecutter.","fork":false,"url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage","forks_url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage/forks","keys_url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage/keys{/key_id}","collaborators_url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage/teams","hooks_url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage/hooks","issue_events_url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage/issues/events{/number}","events_url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage/events","assignees_url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage/assignees{/user}","branches_url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage/branches{/branch}","tags_url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage/tags","blobs_url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage/git/refs{/sha}","trees_url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage/git/trees{/sha}","statuses_url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage/statuses/{sha}","languages_url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage/languages","stargazers_url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage/stargazers","contributors_url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage/contributors","subscribers_url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage/subscribers","subscription_url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage/subscription","commits_url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage/commits{/sha}","git_commits_url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage/git/commits{/sha}","comments_url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage/comments{/number}","issue_comment_url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage/issues/comments/{number}","contents_url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage/contents/{+path}","compare_url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage/compare/{base}...{head}","merges_url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage/merges","archive_url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage/downloads","issues_url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage/issues{/number}","pulls_url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage/pulls{/number}","milestones_url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage/milestones{/number}","notifications_url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage/labels{/name}","releases_url":"https://api.github.com/repos/audreyr/cookiecutter-pypackage/releases{/id}","created_at":"2013-07-14T18:52:05Z","updated_at":"2014-02-20T16:05:14Z","pushed_at":"2014-02-20T16:05:14Z","git_url":"git://github.com/audreyr/cookiecutter-pypackage.git","ssh_url":"git@github.com:audreyr/cookiecutter-pypackage.git","clone_url":"https://github.com/audreyr/cookiecutter-pypackage.git","svn_url":"https://github.com/audreyr/cookiecutter-pypackage","homepage":null,"size":486,"stargazers_count":195,"watchers_count":195,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":99,"mirror_url":null,"open_issues_count":5,"forks":99,"open_issues":5,"watchers":195,"default_branch":"master","master_branch":"master","score":17.574614},{"id":602040,"name":"django-treebeard","full_name":"tabo/django-treebeard","owner":{"login":"tabo","id":33574,"avatar_url":"https://avatars.githubusercontent.com/u/33574","gravatar_id":"dea106e7a35cff588be54b9a4870028b","url":"https://api.github.com/users/tabo","html_url":"https://github.com/tabo","followers_url":"https://api.github.com/users/tabo/followers","following_url":"https://api.github.com/users/tabo/following{/other_user}","gists_url":"https://api.github.com/users/tabo/gists{/gist_id}","starred_url":"https://api.github.com/users/tabo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tabo/subscriptions","organizations_url":"https://api.github.com/users/tabo/orgs","repos_url":"https://api.github.com/users/tabo/repos","events_url":"https://api.github.com/users/tabo/events{/privacy}","received_events_url":"https://api.github.com/users/tabo/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/tabo/django-treebeard","description":"Efficient tree implementations for Django (github mirror)","fork":false,"url":"https://api.github.com/repos/tabo/django-treebeard","forks_url":"https://api.github.com/repos/tabo/django-treebeard/forks","keys_url":"https://api.github.com/repos/tabo/django-treebeard/keys{/key_id}","collaborators_url":"https://api.github.com/repos/tabo/django-treebeard/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/tabo/django-treebeard/teams","hooks_url":"https://api.github.com/repos/tabo/django-treebeard/hooks","issue_events_url":"https://api.github.com/repos/tabo/django-treebeard/issues/events{/number}","events_url":"https://api.github.com/repos/tabo/django-treebeard/events","assignees_url":"https://api.github.com/repos/tabo/django-treebeard/assignees{/user}","branches_url":"https://api.github.com/repos/tabo/django-treebeard/branches{/branch}","tags_url":"https://api.github.com/repos/tabo/django-treebeard/tags","blobs_url":"https://api.github.com/repos/tabo/django-treebeard/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/tabo/django-treebeard/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/tabo/django-treebeard/git/refs{/sha}","trees_url":"https://api.github.com/repos/tabo/django-treebeard/git/trees{/sha}","statuses_url":"https://api.github.com/repos/tabo/django-treebeard/statuses/{sha}","languages_url":"https://api.github.com/repos/tabo/django-treebeard/languages","stargazers_url":"https://api.github.com/repos/tabo/django-treebeard/stargazers","contributors_url":"https://api.github.com/repos/tabo/django-treebeard/contributors","subscribers_url":"https://api.github.com/repos/tabo/django-treebeard/subscribers","subscription_url":"https://api.github.com/repos/tabo/django-treebeard/subscription","commits_url":"https://api.github.com/repos/tabo/django-treebeard/commits{/sha}","git_commits_url":"https://api.github.com/repos/tabo/django-treebeard/git/commits{/sha}","comments_url":"https://api.github.com/repos/tabo/django-treebeard/comments{/number}","issue_comment_url":"https://api.github.com/repos/tabo/django-treebeard/issues/comments/{number}","contents_url":"https://api.github.com/repos/tabo/django-treebeard/contents/{+path}","compare_url":"https://api.github.com/repos/tabo/django-treebeard/compare/{base}...{head}","merges_url":"https://api.github.com/repos/tabo/django-treebeard/merges","archive_url":"https://api.github.com/repos/tabo/django-treebeard/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/tabo/django-treebeard/downloads","issues_url":"https://api.github.com/repos/tabo/django-treebeard/issues{/number}","pulls_url":"https://api.github.com/repos/tabo/django-treebeard/pulls{/number}","milestones_url":"https://api.github.com/repos/tabo/django-treebeard/milestones{/number}","notifications_url":"https://api.github.com/repos/tabo/django-treebeard/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/tabo/django-treebeard/labels{/name}","releases_url":"https://api.github.com/repos/tabo/django-treebeard/releases{/id}","created_at":"2010-04-09T06:10:02Z","updated_at":"2014-02-23T20:16:59Z","pushed_at":"2014-02-23T20:16:59Z","git_url":"git://github.com/tabo/django-treebeard.git","ssh_url":"git@github.com:tabo/django-treebeard.git","clone_url":"https://github.com/tabo/django-treebeard.git","svn_url":"https://github.com/tabo/django-treebeard","homepage":"https://tabo.pe/projects/django-treebeard/","size":1421,"stargazers_count":177,"watchers_count":177,"language":"Python","has_issues":false,"has_downloads":false,"has_wiki":false,"forks_count":27,"mirror_url":null,"open_issues_count":0,"forks":27,"open_issues":0,"watchers":177,"default_branch":"master","master_branch":"master","score":15.324995},{"id":14645,"name":"tvdb_api","full_name":"dbr/tvdb_api","owner":{"login":"dbr","id":509,"avatar_url":"https://avatars.githubusercontent.com/u/509","gravatar_id":"edf857d71f672d8f411ef6b8376316b8","url":"https://api.github.com/users/dbr","html_url":"https://github.com/dbr","followers_url":"https://api.github.com/users/dbr/followers","following_url":"https://api.github.com/users/dbr/following{/other_user}","gists_url":"https://api.github.com/users/dbr/gists{/gist_id}","starred_url":"https://api.github.com/users/dbr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dbr/subscriptions","organizations_url":"https://api.github.com/users/dbr/orgs","repos_url":"https://api.github.com/users/dbr/repos","events_url":"https://api.github.com/users/dbr/events{/privacy}","received_events_url":"https://api.github.com/users/dbr/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/dbr/tvdb_api","description":"Simple to use TVDB (thetvdb.com) API in Python. The automatic TV episode namer \"tvnamer\" is now in a separate repository http://github.com/dbr/tvnamer","fork":false,"url":"https://api.github.com/repos/dbr/tvdb_api","forks_url":"https://api.github.com/repos/dbr/tvdb_api/forks","keys_url":"https://api.github.com/repos/dbr/tvdb_api/keys{/key_id}","collaborators_url":"https://api.github.com/repos/dbr/tvdb_api/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/dbr/tvdb_api/teams","hooks_url":"https://api.github.com/repos/dbr/tvdb_api/hooks","issue_events_url":"https://api.github.com/repos/dbr/tvdb_api/issues/events{/number}","events_url":"https://api.github.com/repos/dbr/tvdb_api/events","assignees_url":"https://api.github.com/repos/dbr/tvdb_api/assignees{/user}","branches_url":"https://api.github.com/repos/dbr/tvdb_api/branches{/branch}","tags_url":"https://api.github.com/repos/dbr/tvdb_api/tags","blobs_url":"https://api.github.com/repos/dbr/tvdb_api/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/dbr/tvdb_api/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/dbr/tvdb_api/git/refs{/sha}","trees_url":"https://api.github.com/repos/dbr/tvdb_api/git/trees{/sha}","statuses_url":"https://api.github.com/repos/dbr/tvdb_api/statuses/{sha}","languages_url":"https://api.github.com/repos/dbr/tvdb_api/languages","stargazers_url":"https://api.github.com/repos/dbr/tvdb_api/stargazers","contributors_url":"https://api.github.com/repos/dbr/tvdb_api/contributors","subscribers_url":"https://api.github.com/repos/dbr/tvdb_api/subscribers","subscription_url":"https://api.github.com/repos/dbr/tvdb_api/subscription","commits_url":"https://api.github.com/repos/dbr/tvdb_api/commits{/sha}","git_commits_url":"https://api.github.com/repos/dbr/tvdb_api/git/commits{/sha}","comments_url":"https://api.github.com/repos/dbr/tvdb_api/comments{/number}","issue_comment_url":"https://api.github.com/repos/dbr/tvdb_api/issues/comments/{number}","contents_url":"https://api.github.com/repos/dbr/tvdb_api/contents/{+path}","compare_url":"https://api.github.com/repos/dbr/tvdb_api/compare/{base}...{head}","merges_url":"https://api.github.com/repos/dbr/tvdb_api/merges","archive_url":"https://api.github.com/repos/dbr/tvdb_api/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/dbr/tvdb_api/downloads","issues_url":"https://api.github.com/repos/dbr/tvdb_api/issues{/number}","pulls_url":"https://api.github.com/repos/dbr/tvdb_api/pulls{/number}","milestones_url":"https://api.github.com/repos/dbr/tvdb_api/milestones{/number}","notifications_url":"https://api.github.com/repos/dbr/tvdb_api/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/dbr/tvdb_api/labels{/name}","releases_url":"https://api.github.com/repos/dbr/tvdb_api/releases{/id}","created_at":"2008-05-05T13:01:53Z","updated_at":"2014-01-06T03:43:32Z","pushed_at":"2013-10-01T08:14:07Z","git_url":"git://github.com/dbr/tvdb_api.git","ssh_url":"git@github.com:dbr/tvdb_api.git","clone_url":"https://github.com/dbr/tvdb_api.git","svn_url":"https://github.com/dbr/tvdb_api","homepage":"http://dbr.lighthouseapp.com/projects/13342-tvdb_api/tickets","size":1294,"stargazers_count":177,"watchers_count":177,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":36,"mirror_url":null,"open_issues_count":10,"forks":36,"open_issues":10,"watchers":177,"default_branch":"master","master_branch":"master","score":9.772404},{"id":103446,"name":"couchapp","full_name":"jchris/couchapp","owner":{"login":"jchris","id":253,"avatar_url":"https://avatars.githubusercontent.com/u/253","gravatar_id":"fc67805d4cb2c9d9e159702e943f9a7c","url":"https://api.github.com/users/jchris","html_url":"https://github.com/jchris","followers_url":"https://api.github.com/users/jchris/followers","following_url":"https://api.github.com/users/jchris/following{/other_user}","gists_url":"https://api.github.com/users/jchris/gists{/gist_id}","starred_url":"https://api.github.com/users/jchris/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jchris/subscriptions","organizations_url":"https://api.github.com/users/jchris/orgs","repos_url":"https://api.github.com/users/jchris/repos","events_url":"https://api.github.com/users/jchris/events{/privacy}","received_events_url":"https://api.github.com/users/jchris/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jchris/couchapp","description":"The official repo is now at http://github.com/couchapp/couchapp","fork":false,"url":"https://api.github.com/repos/jchris/couchapp","forks_url":"https://api.github.com/repos/jchris/couchapp/forks","keys_url":"https://api.github.com/repos/jchris/couchapp/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jchris/couchapp/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jchris/couchapp/teams","hooks_url":"https://api.github.com/repos/jchris/couchapp/hooks","issue_events_url":"https://api.github.com/repos/jchris/couchapp/issues/events{/number}","events_url":"https://api.github.com/repos/jchris/couchapp/events","assignees_url":"https://api.github.com/repos/jchris/couchapp/assignees{/user}","branches_url":"https://api.github.com/repos/jchris/couchapp/branches{/branch}","tags_url":"https://api.github.com/repos/jchris/couchapp/tags","blobs_url":"https://api.github.com/repos/jchris/couchapp/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jchris/couchapp/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jchris/couchapp/git/refs{/sha}","trees_url":"https://api.github.com/repos/jchris/couchapp/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jchris/couchapp/statuses/{sha}","languages_url":"https://api.github.com/repos/jchris/couchapp/languages","stargazers_url":"https://api.github.com/repos/jchris/couchapp/stargazers","contributors_url":"https://api.github.com/repos/jchris/couchapp/contributors","subscribers_url":"https://api.github.com/repos/jchris/couchapp/subscribers","subscription_url":"https://api.github.com/repos/jchris/couchapp/subscription","commits_url":"https://api.github.com/repos/jchris/couchapp/commits{/sha}","git_commits_url":"https://api.github.com/repos/jchris/couchapp/git/commits{/sha}","comments_url":"https://api.github.com/repos/jchris/couchapp/comments{/number}","issue_comment_url":"https://api.github.com/repos/jchris/couchapp/issues/comments/{number}","contents_url":"https://api.github.com/repos/jchris/couchapp/contents/{+path}","compare_url":"https://api.github.com/repos/jchris/couchapp/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jchris/couchapp/merges","archive_url":"https://api.github.com/repos/jchris/couchapp/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jchris/couchapp/downloads","issues_url":"https://api.github.com/repos/jchris/couchapp/issues{/number}","pulls_url":"https://api.github.com/repos/jchris/couchapp/pulls{/number}","milestones_url":"https://api.github.com/repos/jchris/couchapp/milestones{/number}","notifications_url":"https://api.github.com/repos/jchris/couchapp/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jchris/couchapp/labels{/name}","releases_url":"https://api.github.com/repos/jchris/couchapp/releases{/id}","created_at":"2009-01-08T18:29:16Z","updated_at":"2014-01-07T21:31:46Z","pushed_at":"2010-02-20T03:24:37Z","git_url":"git://github.com/jchris/couchapp.git","ssh_url":"git@github.com:jchris/couchapp.git","clone_url":"https://github.com/jchris/couchapp.git","svn_url":"https://github.com/jchris/couchapp","homepage":"http://wiki.github.com/couchapp/couchapp","size":2701,"stargazers_count":172,"watchers_count":172,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":77,"mirror_url":null,"open_issues_count":11,"forks":77,"open_issues":11,"watchers":172,"default_branch":"master","master_branch":"master","score":16.602884},{"id":6732980,"name":"grip","full_name":"joeyespo/grip","owner":{"login":"joeyespo","id":634573,"avatar_url":"https://avatars.githubusercontent.com/u/634573","gravatar_id":"c204dd0389ebe976abc4810b38d602b3","url":"https://api.github.com/users/joeyespo","html_url":"https://github.com/joeyespo","followers_url":"https://api.github.com/users/joeyespo/followers","following_url":"https://api.github.com/users/joeyespo/following{/other_user}","gists_url":"https://api.github.com/users/joeyespo/gists{/gist_id}","starred_url":"https://api.github.com/users/joeyespo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/joeyespo/subscriptions","organizations_url":"https://api.github.com/users/joeyespo/orgs","repos_url":"https://api.github.com/users/joeyespo/repos","events_url":"https://api.github.com/users/joeyespo/events{/privacy}","received_events_url":"https://api.github.com/users/joeyespo/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/joeyespo/grip","description":"Preview GitHub Markdown files like Readme locally before committing them.","fork":false,"url":"https://api.github.com/repos/joeyespo/grip","forks_url":"https://api.github.com/repos/joeyespo/grip/forks","keys_url":"https://api.github.com/repos/joeyespo/grip/keys{/key_id}","collaborators_url":"https://api.github.com/repos/joeyespo/grip/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/joeyespo/grip/teams","hooks_url":"https://api.github.com/repos/joeyespo/grip/hooks","issue_events_url":"https://api.github.com/repos/joeyespo/grip/issues/events{/number}","events_url":"https://api.github.com/repos/joeyespo/grip/events","assignees_url":"https://api.github.com/repos/joeyespo/grip/assignees{/user}","branches_url":"https://api.github.com/repos/joeyespo/grip/branches{/branch}","tags_url":"https://api.github.com/repos/joeyespo/grip/tags","blobs_url":"https://api.github.com/repos/joeyespo/grip/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/joeyespo/grip/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/joeyespo/grip/git/refs{/sha}","trees_url":"https://api.github.com/repos/joeyespo/grip/git/trees{/sha}","statuses_url":"https://api.github.com/repos/joeyespo/grip/statuses/{sha}","languages_url":"https://api.github.com/repos/joeyespo/grip/languages","stargazers_url":"https://api.github.com/repos/joeyespo/grip/stargazers","contributors_url":"https://api.github.com/repos/joeyespo/grip/contributors","subscribers_url":"https://api.github.com/repos/joeyespo/grip/subscribers","subscription_url":"https://api.github.com/repos/joeyespo/grip/subscription","commits_url":"https://api.github.com/repos/joeyespo/grip/commits{/sha}","git_commits_url":"https://api.github.com/repos/joeyespo/grip/git/commits{/sha}","comments_url":"https://api.github.com/repos/joeyespo/grip/comments{/number}","issue_comment_url":"https://api.github.com/repos/joeyespo/grip/issues/comments/{number}","contents_url":"https://api.github.com/repos/joeyespo/grip/contents/{+path}","compare_url":"https://api.github.com/repos/joeyespo/grip/compare/{base}...{head}","merges_url":"https://api.github.com/repos/joeyespo/grip/merges","archive_url":"https://api.github.com/repos/joeyespo/grip/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/joeyespo/grip/downloads","issues_url":"https://api.github.com/repos/joeyespo/grip/issues{/number}","pulls_url":"https://api.github.com/repos/joeyespo/grip/pulls{/number}","milestones_url":"https://api.github.com/repos/joeyespo/grip/milestones{/number}","notifications_url":"https://api.github.com/repos/joeyespo/grip/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/joeyespo/grip/labels{/name}","releases_url":"https://api.github.com/repos/joeyespo/grip/releases{/id}","created_at":"2012-11-17T07:27:16Z","updated_at":"2014-01-14T14:15:59Z","pushed_at":"2013-10-02T22:20:52Z","git_url":"git://github.com/joeyespo/grip.git","ssh_url":"git@github.com:joeyespo/grip.git","clone_url":"https://github.com/joeyespo/grip.git","svn_url":"https://github.com/joeyespo/grip","homepage":"","size":298,"stargazers_count":208,"watchers_count":208,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":34,"mirror_url":null,"open_issues_count":16,"forks":34,"open_issues":16,"watchers":208,"default_branch":"master","master_branch":"master","score":10.292309},{"id":1990631,"name":"py2neo","full_name":"nigelsmall/py2neo","owner":{"login":"nigelsmall","id":275311,"avatar_url":"https://avatars.githubusercontent.com/u/275311","gravatar_id":"a77749a7215e8b8f8ddaee3c8a5e44bd","url":"https://api.github.com/users/nigelsmall","html_url":"https://github.com/nigelsmall","followers_url":"https://api.github.com/users/nigelsmall/followers","following_url":"https://api.github.com/users/nigelsmall/following{/other_user}","gists_url":"https://api.github.com/users/nigelsmall/gists{/gist_id}","starred_url":"https://api.github.com/users/nigelsmall/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigelsmall/subscriptions","organizations_url":"https://api.github.com/users/nigelsmall/orgs","repos_url":"https://api.github.com/users/nigelsmall/repos","events_url":"https://api.github.com/users/nigelsmall/events{/privacy}","received_events_url":"https://api.github.com/users/nigelsmall/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/nigelsmall/py2neo","description":"Py2neo is a simple and pragmatic Python library that provides access to the popular graph database Neo4j via its RESTful web service interface. With no external dependencies, installation is straightforward and getting started with coding is easy. The library is actively maintained on GitHub, regularly updated in the Python Package Index and is built uniquely for Neo4j in close association with its team and community.","fork":false,"url":"https://api.github.com/repos/nigelsmall/py2neo","forks_url":"https://api.github.com/repos/nigelsmall/py2neo/forks","keys_url":"https://api.github.com/repos/nigelsmall/py2neo/keys{/key_id}","collaborators_url":"https://api.github.com/repos/nigelsmall/py2neo/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/nigelsmall/py2neo/teams","hooks_url":"https://api.github.com/repos/nigelsmall/py2neo/hooks","issue_events_url":"https://api.github.com/repos/nigelsmall/py2neo/issues/events{/number}","events_url":"https://api.github.com/repos/nigelsmall/py2neo/events","assignees_url":"https://api.github.com/repos/nigelsmall/py2neo/assignees{/user}","branches_url":"https://api.github.com/repos/nigelsmall/py2neo/branches{/branch}","tags_url":"https://api.github.com/repos/nigelsmall/py2neo/tags","blobs_url":"https://api.github.com/repos/nigelsmall/py2neo/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/nigelsmall/py2neo/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/nigelsmall/py2neo/git/refs{/sha}","trees_url":"https://api.github.com/repos/nigelsmall/py2neo/git/trees{/sha}","statuses_url":"https://api.github.com/repos/nigelsmall/py2neo/statuses/{sha}","languages_url":"https://api.github.com/repos/nigelsmall/py2neo/languages","stargazers_url":"https://api.github.com/repos/nigelsmall/py2neo/stargazers","contributors_url":"https://api.github.com/repos/nigelsmall/py2neo/contributors","subscribers_url":"https://api.github.com/repos/nigelsmall/py2neo/subscribers","subscription_url":"https://api.github.com/repos/nigelsmall/py2neo/subscription","commits_url":"https://api.github.com/repos/nigelsmall/py2neo/commits{/sha}","git_commits_url":"https://api.github.com/repos/nigelsmall/py2neo/git/commits{/sha}","comments_url":"https://api.github.com/repos/nigelsmall/py2neo/comments{/number}","issue_comment_url":"https://api.github.com/repos/nigelsmall/py2neo/issues/comments/{number}","contents_url":"https://api.github.com/repos/nigelsmall/py2neo/contents/{+path}","compare_url":"https://api.github.com/repos/nigelsmall/py2neo/compare/{base}...{head}","merges_url":"https://api.github.com/repos/nigelsmall/py2neo/merges","archive_url":"https://api.github.com/repos/nigelsmall/py2neo/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/nigelsmall/py2neo/downloads","issues_url":"https://api.github.com/repos/nigelsmall/py2neo/issues{/number}","pulls_url":"https://api.github.com/repos/nigelsmall/py2neo/pulls{/number}","milestones_url":"https://api.github.com/repos/nigelsmall/py2neo/milestones{/number}","notifications_url":"https://api.github.com/repos/nigelsmall/py2neo/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/nigelsmall/py2neo/labels{/name}","releases_url":"https://api.github.com/repos/nigelsmall/py2neo/releases{/id}","created_at":"2011-07-03T10:01:07Z","updated_at":"2014-02-26T16:10:48Z","pushed_at":"2014-02-26T16:10:48Z","git_url":"git://github.com/nigelsmall/py2neo.git","ssh_url":"git@github.com:nigelsmall/py2neo.git","clone_url":"https://github.com/nigelsmall/py2neo.git","svn_url":"https://github.com/nigelsmall/py2neo","homepage":"http://py2neo.org/","size":5320,"stargazers_count":166,"watchers_count":166,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":40,"mirror_url":null,"open_issues_count":20,"forks":40,"open_issues":20,"watchers":166,"default_branch":"master","master_branch":"master","score":5.6046176},{"id":152652,"name":"chishop","full_name":"ask/chishop","owner":{"login":"ask","id":1558,"avatar_url":"https://avatars.githubusercontent.com/u/1558","gravatar_id":"7e8b501f7f579c66ddac7e65cb7962b4","url":"https://api.github.com/users/ask","html_url":"https://github.com/ask","followers_url":"https://api.github.com/users/ask/followers","following_url":"https://api.github.com/users/ask/following{/other_user}","gists_url":"https://api.github.com/users/ask/gists{/gist_id}","starred_url":"https://api.github.com/users/ask/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ask/subscriptions","organizations_url":"https://api.github.com/users/ask/orgs","repos_url":"https://api.github.com/users/ask/repos","events_url":"https://api.github.com/users/ask/events{/privacy}","received_events_url":"https://api.github.com/users/ask/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/ask/chishop","description":"Please use https://github.com/benliles/chishop","fork":false,"url":"https://api.github.com/repos/ask/chishop","forks_url":"https://api.github.com/repos/ask/chishop/forks","keys_url":"https://api.github.com/repos/ask/chishop/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ask/chishop/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ask/chishop/teams","hooks_url":"https://api.github.com/repos/ask/chishop/hooks","issue_events_url":"https://api.github.com/repos/ask/chishop/issues/events{/number}","events_url":"https://api.github.com/repos/ask/chishop/events","assignees_url":"https://api.github.com/repos/ask/chishop/assignees{/user}","branches_url":"https://api.github.com/repos/ask/chishop/branches{/branch}","tags_url":"https://api.github.com/repos/ask/chishop/tags","blobs_url":"https://api.github.com/repos/ask/chishop/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ask/chishop/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ask/chishop/git/refs{/sha}","trees_url":"https://api.github.com/repos/ask/chishop/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ask/chishop/statuses/{sha}","languages_url":"https://api.github.com/repos/ask/chishop/languages","stargazers_url":"https://api.github.com/repos/ask/chishop/stargazers","contributors_url":"https://api.github.com/repos/ask/chishop/contributors","subscribers_url":"https://api.github.com/repos/ask/chishop/subscribers","subscription_url":"https://api.github.com/repos/ask/chishop/subscription","commits_url":"https://api.github.com/repos/ask/chishop/commits{/sha}","git_commits_url":"https://api.github.com/repos/ask/chishop/git/commits{/sha}","comments_url":"https://api.github.com/repos/ask/chishop/comments{/number}","issue_comment_url":"https://api.github.com/repos/ask/chishop/issues/comments/{number}","contents_url":"https://api.github.com/repos/ask/chishop/contents/{+path}","compare_url":"https://api.github.com/repos/ask/chishop/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ask/chishop/merges","archive_url":"https://api.github.com/repos/ask/chishop/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ask/chishop/downloads","issues_url":"https://api.github.com/repos/ask/chishop/issues{/number}","pulls_url":"https://api.github.com/repos/ask/chishop/pulls{/number}","milestones_url":"https://api.github.com/repos/ask/chishop/milestones{/number}","notifications_url":"https://api.github.com/repos/ask/chishop/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ask/chishop/labels{/name}","releases_url":"https://api.github.com/repos/ask/chishop/releases{/id}","created_at":"2009-03-17T09:32:17Z","updated_at":"2013-12-17T20:43:03Z","pushed_at":"2011-08-23T16:30:45Z","git_url":"git://github.com/ask/chishop.git","ssh_url":"git@github.com:ask/chishop.git","clone_url":"https://github.com/ask/chishop.git","svn_url":"https://github.com/ask/chishop","homepage":"https://github.com/benliles/djangopypi","size":253,"stargazers_count":163,"watchers_count":163,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":118,"mirror_url":null,"open_issues_count":11,"forks":118,"open_issues":11,"watchers":163,"default_branch":"master","master_branch":"master","score":21.653688},{"id":3710711,"name":"github3.py","full_name":"sigmavirus24/github3.py","owner":{"login":"sigmavirus24","id":240830,"avatar_url":"https://avatars.githubusercontent.com/u/240830","gravatar_id":"c148356d89f925e692178bee1d93acf7","url":"https://api.github.com/users/sigmavirus24","html_url":"https://github.com/sigmavirus24","followers_url":"https://api.github.com/users/sigmavirus24/followers","following_url":"https://api.github.com/users/sigmavirus24/following{/other_user}","gists_url":"https://api.github.com/users/sigmavirus24/gists{/gist_id}","starred_url":"https://api.github.com/users/sigmavirus24/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sigmavirus24/subscriptions","organizations_url":"https://api.github.com/users/sigmavirus24/orgs","repos_url":"https://api.github.com/users/sigmavirus24/repos","events_url":"https://api.github.com/users/sigmavirus24/events{/privacy}","received_events_url":"https://api.github.com/users/sigmavirus24/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/sigmavirus24/github3.py","description":"Python library for interfacing with the GitHub APIv3","fork":false,"url":"https://api.github.com/repos/sigmavirus24/github3.py","forks_url":"https://api.github.com/repos/sigmavirus24/github3.py/forks","keys_url":"https://api.github.com/repos/sigmavirus24/github3.py/keys{/key_id}","collaborators_url":"https://api.github.com/repos/sigmavirus24/github3.py/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/sigmavirus24/github3.py/teams","hooks_url":"https://api.github.com/repos/sigmavirus24/github3.py/hooks","issue_events_url":"https://api.github.com/repos/sigmavirus24/github3.py/issues/events{/number}","events_url":"https://api.github.com/repos/sigmavirus24/github3.py/events","assignees_url":"https://api.github.com/repos/sigmavirus24/github3.py/assignees{/user}","branches_url":"https://api.github.com/repos/sigmavirus24/github3.py/branches{/branch}","tags_url":"https://api.github.com/repos/sigmavirus24/github3.py/tags","blobs_url":"https://api.github.com/repos/sigmavirus24/github3.py/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/sigmavirus24/github3.py/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/sigmavirus24/github3.py/git/refs{/sha}","trees_url":"https://api.github.com/repos/sigmavirus24/github3.py/git/trees{/sha}","statuses_url":"https://api.github.com/repos/sigmavirus24/github3.py/statuses/{sha}","languages_url":"https://api.github.com/repos/sigmavirus24/github3.py/languages","stargazers_url":"https://api.github.com/repos/sigmavirus24/github3.py/stargazers","contributors_url":"https://api.github.com/repos/sigmavirus24/github3.py/contributors","subscribers_url":"https://api.github.com/repos/sigmavirus24/github3.py/subscribers","subscription_url":"https://api.github.com/repos/sigmavirus24/github3.py/subscription","commits_url":"https://api.github.com/repos/sigmavirus24/github3.py/commits{/sha}","git_commits_url":"https://api.github.com/repos/sigmavirus24/github3.py/git/commits{/sha}","comments_url":"https://api.github.com/repos/sigmavirus24/github3.py/comments{/number}","issue_comment_url":"https://api.github.com/repos/sigmavirus24/github3.py/issues/comments/{number}","contents_url":"https://api.github.com/repos/sigmavirus24/github3.py/contents/{+path}","compare_url":"https://api.github.com/repos/sigmavirus24/github3.py/compare/{base}...{head}","merges_url":"https://api.github.com/repos/sigmavirus24/github3.py/merges","archive_url":"https://api.github.com/repos/sigmavirus24/github3.py/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/sigmavirus24/github3.py/downloads","issues_url":"https://api.github.com/repos/sigmavirus24/github3.py/issues{/number}","pulls_url":"https://api.github.com/repos/sigmavirus24/github3.py/pulls{/number}","milestones_url":"https://api.github.com/repos/sigmavirus24/github3.py/milestones{/number}","notifications_url":"https://api.github.com/repos/sigmavirus24/github3.py/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/sigmavirus24/github3.py/labels{/name}","releases_url":"https://api.github.com/repos/sigmavirus24/github3.py/releases{/id}","created_at":"2012-03-13T19:58:53Z","updated_at":"2014-03-02T15:41:17Z","pushed_at":"2014-03-02T15:41:17Z","git_url":"git://github.com/sigmavirus24/github3.py.git","ssh_url":"git@github.com:sigmavirus24/github3.py.git","clone_url":"https://github.com/sigmavirus24/github3.py.git","svn_url":"https://github.com/sigmavirus24/github3.py","homepage":"http://github3py.readthedocs.org/","size":6049,"stargazers_count":161,"watchers_count":161,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"forks_count":50,"mirror_url":null,"open_issues_count":11,"forks":50,"open_issues":11,"watchers":161,"default_branch":"develop","master_branch":"develop","score":25.21229},{"id":179897,"name":"github-cli","full_name":"jsmits/github-cli","owner":{"login":"jsmits","id":25479,"avatar_url":"https://avatars.githubusercontent.com/u/25479","gravatar_id":"4dd4c3d3d3f8fcc95d1a234ddc3eb4e4","url":"https://api.github.com/users/jsmits","html_url":"https://github.com/jsmits","followers_url":"https://api.github.com/users/jsmits/followers","following_url":"https://api.github.com/users/jsmits/following{/other_user}","gists_url":"https://api.github.com/users/jsmits/gists{/gist_id}","starred_url":"https://api.github.com/users/jsmits/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jsmits/subscriptions","organizations_url":"https://api.github.com/users/jsmits/orgs","repos_url":"https://api.github.com/users/jsmits/repos","events_url":"https://api.github.com/users/jsmits/events{/privacy}","received_events_url":"https://api.github.com/users/jsmits/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jsmits/github-cli","description":"A command-line interface to the GitHub Issues API v2.","fork":false,"url":"https://api.github.com/repos/jsmits/github-cli","forks_url":"https://api.github.com/repos/jsmits/github-cli/forks","keys_url":"https://api.github.com/repos/jsmits/github-cli/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jsmits/github-cli/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jsmits/github-cli/teams","hooks_url":"https://api.github.com/repos/jsmits/github-cli/hooks","issue_events_url":"https://api.github.com/repos/jsmits/github-cli/issues/events{/number}","events_url":"https://api.github.com/repos/jsmits/github-cli/events","assignees_url":"https://api.github.com/repos/jsmits/github-cli/assignees{/user}","branches_url":"https://api.github.com/repos/jsmits/github-cli/branches{/branch}","tags_url":"https://api.github.com/repos/jsmits/github-cli/tags","blobs_url":"https://api.github.com/repos/jsmits/github-cli/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jsmits/github-cli/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jsmits/github-cli/git/refs{/sha}","trees_url":"https://api.github.com/repos/jsmits/github-cli/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jsmits/github-cli/statuses/{sha}","languages_url":"https://api.github.com/repos/jsmits/github-cli/languages","stargazers_url":"https://api.github.com/repos/jsmits/github-cli/stargazers","contributors_url":"https://api.github.com/repos/jsmits/github-cli/contributors","subscribers_url":"https://api.github.com/repos/jsmits/github-cli/subscribers","subscription_url":"https://api.github.com/repos/jsmits/github-cli/subscription","commits_url":"https://api.github.com/repos/jsmits/github-cli/commits{/sha}","git_commits_url":"https://api.github.com/repos/jsmits/github-cli/git/commits{/sha}","comments_url":"https://api.github.com/repos/jsmits/github-cli/comments{/number}","issue_comment_url":"https://api.github.com/repos/jsmits/github-cli/issues/comments/{number}","contents_url":"https://api.github.com/repos/jsmits/github-cli/contents/{+path}","compare_url":"https://api.github.com/repos/jsmits/github-cli/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jsmits/github-cli/merges","archive_url":"https://api.github.com/repos/jsmits/github-cli/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jsmits/github-cli/downloads","issues_url":"https://api.github.com/repos/jsmits/github-cli/issues{/number}","pulls_url":"https://api.github.com/repos/jsmits/github-cli/pulls{/number}","milestones_url":"https://api.github.com/repos/jsmits/github-cli/milestones{/number}","notifications_url":"https://api.github.com/repos/jsmits/github-cli/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jsmits/github-cli/labels{/name}","releases_url":"https://api.github.com/repos/jsmits/github-cli/releases{/id}","created_at":"2009-04-19T09:05:27Z","updated_at":"2014-01-09T08:33:49Z","pushed_at":"2012-08-15T08:44:58Z","git_url":"git://github.com/jsmits/github-cli.git","ssh_url":"git@github.com:jsmits/github-cli.git","clone_url":"https://github.com/jsmits/github-cli.git","svn_url":"https://github.com/jsmits/github-cli","homepage":"http://github-cli.readthedocs.org/","size":203,"stargazers_count":158,"watchers_count":158,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":25,"mirror_url":null,"open_issues_count":1,"forks":25,"open_issues":1,"watchers":158,"default_branch":"master","master_branch":"master","score":25.8486},{"id":3509387,"name":"django-layout","full_name":"lincolnloop/django-layout","owner":{"login":"lincolnloop","id":1964,"avatar_url":"https://avatars.githubusercontent.com/u/1964","gravatar_id":"34ae1f85673184b05e55f2d4f7e78e48","url":"https://api.github.com/users/lincolnloop","html_url":"https://github.com/lincolnloop","followers_url":"https://api.github.com/users/lincolnloop/followers","following_url":"https://api.github.com/users/lincolnloop/following{/other_user}","gists_url":"https://api.github.com/users/lincolnloop/gists{/gist_id}","starred_url":"https://api.github.com/users/lincolnloop/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lincolnloop/subscriptions","organizations_url":"https://api.github.com/users/lincolnloop/orgs","repos_url":"https://api.github.com/users/lincolnloop/repos","events_url":"https://api.github.com/users/lincolnloop/events{/privacy}","received_events_url":"https://api.github.com/users/lincolnloop/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/lincolnloop/django-layout","description":"Django 1.4+ project template layout. Run: django-admin.py startproject --template=https://github.com/lincolnloop/django-layout/zipball/master --extension=py,rst project_name","fork":false,"url":"https://api.github.com/repos/lincolnloop/django-layout","forks_url":"https://api.github.com/repos/lincolnloop/django-layout/forks","keys_url":"https://api.github.com/repos/lincolnloop/django-layout/keys{/key_id}","collaborators_url":"https://api.github.com/repos/lincolnloop/django-layout/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/lincolnloop/django-layout/teams","hooks_url":"https://api.github.com/repos/lincolnloop/django-layout/hooks","issue_events_url":"https://api.github.com/repos/lincolnloop/django-layout/issues/events{/number}","events_url":"https://api.github.com/repos/lincolnloop/django-layout/events","assignees_url":"https://api.github.com/repos/lincolnloop/django-layout/assignees{/user}","branches_url":"https://api.github.com/repos/lincolnloop/django-layout/branches{/branch}","tags_url":"https://api.github.com/repos/lincolnloop/django-layout/tags","blobs_url":"https://api.github.com/repos/lincolnloop/django-layout/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/lincolnloop/django-layout/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/lincolnloop/django-layout/git/refs{/sha}","trees_url":"https://api.github.com/repos/lincolnloop/django-layout/git/trees{/sha}","statuses_url":"https://api.github.com/repos/lincolnloop/django-layout/statuses/{sha}","languages_url":"https://api.github.com/repos/lincolnloop/django-layout/languages","stargazers_url":"https://api.github.com/repos/lincolnloop/django-layout/stargazers","contributors_url":"https://api.github.com/repos/lincolnloop/django-layout/contributors","subscribers_url":"https://api.github.com/repos/lincolnloop/django-layout/subscribers","subscription_url":"https://api.github.com/repos/lincolnloop/django-layout/subscription","commits_url":"https://api.github.com/repos/lincolnloop/django-layout/commits{/sha}","git_commits_url":"https://api.github.com/repos/lincolnloop/django-layout/git/commits{/sha}","comments_url":"https://api.github.com/repos/lincolnloop/django-layout/comments{/number}","issue_comment_url":"https://api.github.com/repos/lincolnloop/django-layout/issues/comments/{number}","contents_url":"https://api.github.com/repos/lincolnloop/django-layout/contents/{+path}","compare_url":"https://api.github.com/repos/lincolnloop/django-layout/compare/{base}...{head}","merges_url":"https://api.github.com/repos/lincolnloop/django-layout/merges","archive_url":"https://api.github.com/repos/lincolnloop/django-layout/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/lincolnloop/django-layout/downloads","issues_url":"https://api.github.com/repos/lincolnloop/django-layout/issues{/number}","pulls_url":"https://api.github.com/repos/lincolnloop/django-layout/pulls{/number}","milestones_url":"https://api.github.com/repos/lincolnloop/django-layout/milestones{/number}","notifications_url":"https://api.github.com/repos/lincolnloop/django-layout/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/lincolnloop/django-layout/labels{/name}","releases_url":"https://api.github.com/repos/lincolnloop/django-layout/releases{/id}","created_at":"2012-02-21T23:22:29Z","updated_at":"2014-01-17T06:12:58Z","pushed_at":"2013-05-02T00:21:20Z","git_url":"git://github.com/lincolnloop/django-layout.git","ssh_url":"git@github.com:lincolnloop/django-layout.git","clone_url":"https://github.com/lincolnloop/django-layout.git","svn_url":"https://github.com/lincolnloop/django-layout","homepage":"","size":136,"stargazers_count":166,"watchers_count":166,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":61,"mirror_url":null,"open_issues_count":2,"forks":61,"open_issues":2,"watchers":166,"default_branch":"master","master_branch":"master","score":9.373164},{"id":3042487,"name":"django-project-skel","full_name":"amccloud/django-project-skel","owner":{"login":"amccloud","id":38463,"avatar_url":"https://avatars.githubusercontent.com/u/38463","gravatar_id":"373d40a9bd5e73f80afe6dc196c2f37f","url":"https://api.github.com/users/amccloud","html_url":"https://github.com/amccloud","followers_url":"https://api.github.com/users/amccloud/followers","following_url":"https://api.github.com/users/amccloud/following{/other_user}","gists_url":"https://api.github.com/users/amccloud/gists{/gist_id}","starred_url":"https://api.github.com/users/amccloud/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/amccloud/subscriptions","organizations_url":"https://api.github.com/users/amccloud/orgs","repos_url":"https://api.github.com/users/amccloud/repos","events_url":"https://api.github.com/users/amccloud/events{/privacy}","received_events_url":"https://api.github.com/users/amccloud/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/amccloud/django-project-skel","description":"To use run: django-admin.py startproject --template https://github.com/amccloud/django-project-skel/zipball/master --extension py,md,gitignore yourprojectname","fork":false,"url":"https://api.github.com/repos/amccloud/django-project-skel","forks_url":"https://api.github.com/repos/amccloud/django-project-skel/forks","keys_url":"https://api.github.com/repos/amccloud/django-project-skel/keys{/key_id}","collaborators_url":"https://api.github.com/repos/amccloud/django-project-skel/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/amccloud/django-project-skel/teams","hooks_url":"https://api.github.com/repos/amccloud/django-project-skel/hooks","issue_events_url":"https://api.github.com/repos/amccloud/django-project-skel/issues/events{/number}","events_url":"https://api.github.com/repos/amccloud/django-project-skel/events","assignees_url":"https://api.github.com/repos/amccloud/django-project-skel/assignees{/user}","branches_url":"https://api.github.com/repos/amccloud/django-project-skel/branches{/branch}","tags_url":"https://api.github.com/repos/amccloud/django-project-skel/tags","blobs_url":"https://api.github.com/repos/amccloud/django-project-skel/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/amccloud/django-project-skel/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/amccloud/django-project-skel/git/refs{/sha}","trees_url":"https://api.github.com/repos/amccloud/django-project-skel/git/trees{/sha}","statuses_url":"https://api.github.com/repos/amccloud/django-project-skel/statuses/{sha}","languages_url":"https://api.github.com/repos/amccloud/django-project-skel/languages","stargazers_url":"https://api.github.com/repos/amccloud/django-project-skel/stargazers","contributors_url":"https://api.github.com/repos/amccloud/django-project-skel/contributors","subscribers_url":"https://api.github.com/repos/amccloud/django-project-skel/subscribers","subscription_url":"https://api.github.com/repos/amccloud/django-project-skel/subscription","commits_url":"https://api.github.com/repos/amccloud/django-project-skel/commits{/sha}","git_commits_url":"https://api.github.com/repos/amccloud/django-project-skel/git/commits{/sha}","comments_url":"https://api.github.com/repos/amccloud/django-project-skel/comments{/number}","issue_comment_url":"https://api.github.com/repos/amccloud/django-project-skel/issues/comments/{number}","contents_url":"https://api.github.com/repos/amccloud/django-project-skel/contents/{+path}","compare_url":"https://api.github.com/repos/amccloud/django-project-skel/compare/{base}...{head}","merges_url":"https://api.github.com/repos/amccloud/django-project-skel/merges","archive_url":"https://api.github.com/repos/amccloud/django-project-skel/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/amccloud/django-project-skel/downloads","issues_url":"https://api.github.com/repos/amccloud/django-project-skel/issues{/number}","pulls_url":"https://api.github.com/repos/amccloud/django-project-skel/pulls{/number}","milestones_url":"https://api.github.com/repos/amccloud/django-project-skel/milestones{/number}","notifications_url":"https://api.github.com/repos/amccloud/django-project-skel/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/amccloud/django-project-skel/labels{/name}","releases_url":"https://api.github.com/repos/amccloud/django-project-skel/releases{/id}","created_at":"2011-12-23T21:49:36Z","updated_at":"2014-01-16T16:04:18Z","pushed_at":"2013-02-11T02:25:38Z","git_url":"git://github.com/amccloud/django-project-skel.git","ssh_url":"git@github.com:amccloud/django-project-skel.git","clone_url":"https://github.com/amccloud/django-project-skel.git","svn_url":"https://github.com/amccloud/django-project-skel","homepage":"http://amccloud.com/post/14689947527/django-1-4-custom-project-template","size":156,"stargazers_count":156,"watchers_count":156,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":55,"mirror_url":null,"open_issues_count":2,"forks":55,"open_issues":2,"watchers":156,"default_branch":"master","master_branch":"master","score":9.11511},{"id":1143003,"name":"brewery","full_name":"Stiivi/brewery","owner":{"login":"Stiivi","id":71105,"avatar_url":"https://avatars.githubusercontent.com/u/71105","gravatar_id":"aa6ef34dd33b2b0f906c91c55ebbbbbd","url":"https://api.github.com/users/Stiivi","html_url":"https://github.com/Stiivi","followers_url":"https://api.github.com/users/Stiivi/followers","following_url":"https://api.github.com/users/Stiivi/following{/other_user}","gists_url":"https://api.github.com/users/Stiivi/gists{/gist_id}","starred_url":"https://api.github.com/users/Stiivi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Stiivi/subscriptions","organizations_url":"https://api.github.com/users/Stiivi/orgs","repos_url":"https://api.github.com/users/Stiivi/repos","events_url":"https://api.github.com/users/Stiivi/events{/privacy}","received_events_url":"https://api.github.com/users/Stiivi/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/Stiivi/brewery","description":"IMPORTANT: Data Brewery is now Bubbles: https://github.com/stiivi/bubbles This brewery repository is NOT MAINTAINED any more.","fork":false,"url":"https://api.github.com/repos/Stiivi/brewery","forks_url":"https://api.github.com/repos/Stiivi/brewery/forks","keys_url":"https://api.github.com/repos/Stiivi/brewery/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Stiivi/brewery/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Stiivi/brewery/teams","hooks_url":"https://api.github.com/repos/Stiivi/brewery/hooks","issue_events_url":"https://api.github.com/repos/Stiivi/brewery/issues/events{/number}","events_url":"https://api.github.com/repos/Stiivi/brewery/events","assignees_url":"https://api.github.com/repos/Stiivi/brewery/assignees{/user}","branches_url":"https://api.github.com/repos/Stiivi/brewery/branches{/branch}","tags_url":"https://api.github.com/repos/Stiivi/brewery/tags","blobs_url":"https://api.github.com/repos/Stiivi/brewery/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Stiivi/brewery/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Stiivi/brewery/git/refs{/sha}","trees_url":"https://api.github.com/repos/Stiivi/brewery/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Stiivi/brewery/statuses/{sha}","languages_url":"https://api.github.com/repos/Stiivi/brewery/languages","stargazers_url":"https://api.github.com/repos/Stiivi/brewery/stargazers","contributors_url":"https://api.github.com/repos/Stiivi/brewery/contributors","subscribers_url":"https://api.github.com/repos/Stiivi/brewery/subscribers","subscription_url":"https://api.github.com/repos/Stiivi/brewery/subscription","commits_url":"https://api.github.com/repos/Stiivi/brewery/commits{/sha}","git_commits_url":"https://api.github.com/repos/Stiivi/brewery/git/commits{/sha}","comments_url":"https://api.github.com/repos/Stiivi/brewery/comments{/number}","issue_comment_url":"https://api.github.com/repos/Stiivi/brewery/issues/comments/{number}","contents_url":"https://api.github.com/repos/Stiivi/brewery/contents/{+path}","compare_url":"https://api.github.com/repos/Stiivi/brewery/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Stiivi/brewery/merges","archive_url":"https://api.github.com/repos/Stiivi/brewery/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Stiivi/brewery/downloads","issues_url":"https://api.github.com/repos/Stiivi/brewery/issues{/number}","pulls_url":"https://api.github.com/repos/Stiivi/brewery/pulls{/number}","milestones_url":"https://api.github.com/repos/Stiivi/brewery/milestones{/number}","notifications_url":"https://api.github.com/repos/Stiivi/brewery/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Stiivi/brewery/labels{/name}","releases_url":"https://api.github.com/repos/Stiivi/brewery/releases{/id}","created_at":"2010-12-06T12:26:13Z","updated_at":"2013-12-31T11:16:21Z","pushed_at":"2013-07-17T05:53:11Z","git_url":"git://github.com/Stiivi/brewery.git","ssh_url":"git@github.com:Stiivi/brewery.git","clone_url":"https://github.com/Stiivi/brewery.git","svn_url":"https://github.com/Stiivi/brewery","homepage":"http://bubbles.databrewery.org","size":1902,"stargazers_count":151,"watchers_count":151,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"forks_count":15,"mirror_url":null,"open_issues_count":19,"forks":15,"open_issues":19,"watchers":151,"default_branch":"master","master_branch":"master","score":8.349199},{"id":1221607,"name":"webpy.github.com","full_name":"webpy/webpy.github.com","owner":{"login":"webpy","id":26682,"avatar_url":"https://avatars.githubusercontent.com/u/26682","gravatar_id":"b23dc63d5aa17426fe0e14041d065cdf","url":"https://api.github.com/users/webpy","html_url":"https://github.com/webpy","followers_url":"https://api.github.com/users/webpy/followers","following_url":"https://api.github.com/users/webpy/following{/other_user}","gists_url":"https://api.github.com/users/webpy/gists{/gist_id}","starred_url":"https://api.github.com/users/webpy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/webpy/subscriptions","organizations_url":"https://api.github.com/users/webpy/orgs","repos_url":"https://api.github.com/users/webpy/repos","events_url":"https://api.github.com/users/webpy/events{/privacy}","received_events_url":"https://api.github.com/users/webpy/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/webpy/webpy.github.com","description":"Github pages for webpy.org","fork":false,"url":"https://api.github.com/repos/webpy/webpy.github.com","forks_url":"https://api.github.com/repos/webpy/webpy.github.com/forks","keys_url":"https://api.github.com/repos/webpy/webpy.github.com/keys{/key_id}","collaborators_url":"https://api.github.com/repos/webpy/webpy.github.com/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/webpy/webpy.github.com/teams","hooks_url":"https://api.github.com/repos/webpy/webpy.github.com/hooks","issue_events_url":"https://api.github.com/repos/webpy/webpy.github.com/issues/events{/number}","events_url":"https://api.github.com/repos/webpy/webpy.github.com/events","assignees_url":"https://api.github.com/repos/webpy/webpy.github.com/assignees{/user}","branches_url":"https://api.github.com/repos/webpy/webpy.github.com/branches{/branch}","tags_url":"https://api.github.com/repos/webpy/webpy.github.com/tags","blobs_url":"https://api.github.com/repos/webpy/webpy.github.com/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/webpy/webpy.github.com/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/webpy/webpy.github.com/git/refs{/sha}","trees_url":"https://api.github.com/repos/webpy/webpy.github.com/git/trees{/sha}","statuses_url":"https://api.github.com/repos/webpy/webpy.github.com/statuses/{sha}","languages_url":"https://api.github.com/repos/webpy/webpy.github.com/languages","stargazers_url":"https://api.github.com/repos/webpy/webpy.github.com/stargazers","contributors_url":"https://api.github.com/repos/webpy/webpy.github.com/contributors","subscribers_url":"https://api.github.com/repos/webpy/webpy.github.com/subscribers","subscription_url":"https://api.github.com/repos/webpy/webpy.github.com/subscription","commits_url":"https://api.github.com/repos/webpy/webpy.github.com/commits{/sha}","git_commits_url":"https://api.github.com/repos/webpy/webpy.github.com/git/commits{/sha}","comments_url":"https://api.github.com/repos/webpy/webpy.github.com/comments{/number}","issue_comment_url":"https://api.github.com/repos/webpy/webpy.github.com/issues/comments/{number}","contents_url":"https://api.github.com/repos/webpy/webpy.github.com/contents/{+path}","compare_url":"https://api.github.com/repos/webpy/webpy.github.com/compare/{base}...{head}","merges_url":"https://api.github.com/repos/webpy/webpy.github.com/merges","archive_url":"https://api.github.com/repos/webpy/webpy.github.com/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/webpy/webpy.github.com/downloads","issues_url":"https://api.github.com/repos/webpy/webpy.github.com/issues{/number}","pulls_url":"https://api.github.com/repos/webpy/webpy.github.com/pulls{/number}","milestones_url":"https://api.github.com/repos/webpy/webpy.github.com/milestones{/number}","notifications_url":"https://api.github.com/repos/webpy/webpy.github.com/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/webpy/webpy.github.com/labels{/name}","releases_url":"https://api.github.com/repos/webpy/webpy.github.com/releases{/id}","created_at":"2011-01-05T02:19:49Z","updated_at":"2014-01-20T06:42:11Z","pushed_at":"2014-01-20T06:42:11Z","git_url":"git://github.com/webpy/webpy.github.com.git","ssh_url":"git@github.com:webpy/webpy.github.com.git","clone_url":"https://github.com/webpy/webpy.github.com.git","svn_url":"https://github.com/webpy/webpy.github.com","homepage":"http://webpy.org/","size":3497,"stargazers_count":148,"watchers_count":148,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":149,"mirror_url":null,"open_issues_count":34,"forks":149,"open_issues":34,"watchers":148,"default_branch":"master","master_branch":"master","score":31.51608},{"id":8338,"name":"py-github","full_name":"dustin/py-github","owner":{"login":"dustin","id":1779,"avatar_url":"https://avatars.githubusercontent.com/u/1779","gravatar_id":"995543cb35c3b92a2eb43275116815a7","url":"https://api.github.com/users/dustin","html_url":"https://github.com/dustin","followers_url":"https://api.github.com/users/dustin/followers","following_url":"https://api.github.com/users/dustin/following{/other_user}","gists_url":"https://api.github.com/users/dustin/gists{/gist_id}","starred_url":"https://api.github.com/users/dustin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dustin/subscriptions","organizations_url":"https://api.github.com/users/dustin/orgs","repos_url":"https://api.github.com/users/dustin/repos","events_url":"https://api.github.com/users/dustin/events{/privacy}","received_events_url":"https://api.github.com/users/dustin/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/dustin/py-github","description":"Python interface for talking to the github API","fork":false,"url":"https://api.github.com/repos/dustin/py-github","forks_url":"https://api.github.com/repos/dustin/py-github/forks","keys_url":"https://api.github.com/repos/dustin/py-github/keys{/key_id}","collaborators_url":"https://api.github.com/repos/dustin/py-github/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/dustin/py-github/teams","hooks_url":"https://api.github.com/repos/dustin/py-github/hooks","issue_events_url":"https://api.github.com/repos/dustin/py-github/issues/events{/number}","events_url":"https://api.github.com/repos/dustin/py-github/events","assignees_url":"https://api.github.com/repos/dustin/py-github/assignees{/user}","branches_url":"https://api.github.com/repos/dustin/py-github/branches{/branch}","tags_url":"https://api.github.com/repos/dustin/py-github/tags","blobs_url":"https://api.github.com/repos/dustin/py-github/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/dustin/py-github/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/dustin/py-github/git/refs{/sha}","trees_url":"https://api.github.com/repos/dustin/py-github/git/trees{/sha}","statuses_url":"https://api.github.com/repos/dustin/py-github/statuses/{sha}","languages_url":"https://api.github.com/repos/dustin/py-github/languages","stargazers_url":"https://api.github.com/repos/dustin/py-github/stargazers","contributors_url":"https://api.github.com/repos/dustin/py-github/contributors","subscribers_url":"https://api.github.com/repos/dustin/py-github/subscribers","subscription_url":"https://api.github.com/repos/dustin/py-github/subscription","commits_url":"https://api.github.com/repos/dustin/py-github/commits{/sha}","git_commits_url":"https://api.github.com/repos/dustin/py-github/git/commits{/sha}","comments_url":"https://api.github.com/repos/dustin/py-github/comments{/number}","issue_comment_url":"https://api.github.com/repos/dustin/py-github/issues/comments/{number}","contents_url":"https://api.github.com/repos/dustin/py-github/contents/{+path}","compare_url":"https://api.github.com/repos/dustin/py-github/compare/{base}...{head}","merges_url":"https://api.github.com/repos/dustin/py-github/merges","archive_url":"https://api.github.com/repos/dustin/py-github/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/dustin/py-github/downloads","issues_url":"https://api.github.com/repos/dustin/py-github/issues{/number}","pulls_url":"https://api.github.com/repos/dustin/py-github/pulls{/number}","milestones_url":"https://api.github.com/repos/dustin/py-github/milestones{/number}","notifications_url":"https://api.github.com/repos/dustin/py-github/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/dustin/py-github/labels{/name}","releases_url":"https://api.github.com/repos/dustin/py-github/releases{/id}","created_at":"2008-04-10T18:11:11Z","updated_at":"2013-12-31T02:10:07Z","pushed_at":"2012-03-18T05:01:42Z","git_url":"git://github.com/dustin/py-github.git","ssh_url":"git@github.com:dustin/py-github.git","clone_url":"https://github.com/dustin/py-github.git","svn_url":"https://github.com/dustin/py-github","homepage":"http://dustin.github.com/2008/12/29/github-sync.html","size":363,"stargazers_count":135,"watchers_count":135,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":35,"mirror_url":null,"open_issues_count":14,"forks":35,"open_issues":14,"watchers":135,"default_branch":"master","master_branch":"master","score":27.607294}]} + +https +GET +api.github.com +None +/search/repositories?sort=stars&q=github+language%3APython&order=desc&page=2 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '28'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '62E81E32:5370:6197CAF:531405FE'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('content-length', '146436'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '30'), ('link', '; rel="next", ; rel="last", ; rel="first", ; rel="prev"'), ('cache-control', 'no-cache'), ('date', 'Mon, 03 Mar 2014 04:33:02 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1393821241')] +{"total_count":2723,"items":[{"id":3043012,"name":"Github-Auto-Deploy","full_name":"logsol/Github-Auto-Deploy","owner":{"login":"logsol","id":692826,"avatar_url":"https://avatars.githubusercontent.com/u/692826","gravatar_id":"4e9843f5413444bb9598368645884ae2","url":"https://api.github.com/users/logsol","html_url":"https://github.com/logsol","followers_url":"https://api.github.com/users/logsol/followers","following_url":"https://api.github.com/users/logsol/following{/other_user}","gists_url":"https://api.github.com/users/logsol/gists{/gist_id}","starred_url":"https://api.github.com/users/logsol/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/logsol/subscriptions","organizations_url":"https://api.github.com/users/logsol/orgs","repos_url":"https://api.github.com/users/logsol/repos","events_url":"https://api.github.com/users/logsol/events{/privacy}","received_events_url":"https://api.github.com/users/logsol/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/logsol/Github-Auto-Deploy","description":"a server that allows you to automatically deploy the latest version of your github project at each git push","fork":false,"url":"https://api.github.com/repos/logsol/Github-Auto-Deploy","forks_url":"https://api.github.com/repos/logsol/Github-Auto-Deploy/forks","keys_url":"https://api.github.com/repos/logsol/Github-Auto-Deploy/keys{/key_id}","collaborators_url":"https://api.github.com/repos/logsol/Github-Auto-Deploy/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/logsol/Github-Auto-Deploy/teams","hooks_url":"https://api.github.com/repos/logsol/Github-Auto-Deploy/hooks","issue_events_url":"https://api.github.com/repos/logsol/Github-Auto-Deploy/issues/events{/number}","events_url":"https://api.github.com/repos/logsol/Github-Auto-Deploy/events","assignees_url":"https://api.github.com/repos/logsol/Github-Auto-Deploy/assignees{/user}","branches_url":"https://api.github.com/repos/logsol/Github-Auto-Deploy/branches{/branch}","tags_url":"https://api.github.com/repos/logsol/Github-Auto-Deploy/tags","blobs_url":"https://api.github.com/repos/logsol/Github-Auto-Deploy/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/logsol/Github-Auto-Deploy/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/logsol/Github-Auto-Deploy/git/refs{/sha}","trees_url":"https://api.github.com/repos/logsol/Github-Auto-Deploy/git/trees{/sha}","statuses_url":"https://api.github.com/repos/logsol/Github-Auto-Deploy/statuses/{sha}","languages_url":"https://api.github.com/repos/logsol/Github-Auto-Deploy/languages","stargazers_url":"https://api.github.com/repos/logsol/Github-Auto-Deploy/stargazers","contributors_url":"https://api.github.com/repos/logsol/Github-Auto-Deploy/contributors","subscribers_url":"https://api.github.com/repos/logsol/Github-Auto-Deploy/subscribers","subscription_url":"https://api.github.com/repos/logsol/Github-Auto-Deploy/subscription","commits_url":"https://api.github.com/repos/logsol/Github-Auto-Deploy/commits{/sha}","git_commits_url":"https://api.github.com/repos/logsol/Github-Auto-Deploy/git/commits{/sha}","comments_url":"https://api.github.com/repos/logsol/Github-Auto-Deploy/comments{/number}","issue_comment_url":"https://api.github.com/repos/logsol/Github-Auto-Deploy/issues/comments/{number}","contents_url":"https://api.github.com/repos/logsol/Github-Auto-Deploy/contents/{+path}","compare_url":"https://api.github.com/repos/logsol/Github-Auto-Deploy/compare/{base}...{head}","merges_url":"https://api.github.com/repos/logsol/Github-Auto-Deploy/merges","archive_url":"https://api.github.com/repos/logsol/Github-Auto-Deploy/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/logsol/Github-Auto-Deploy/downloads","issues_url":"https://api.github.com/repos/logsol/Github-Auto-Deploy/issues{/number}","pulls_url":"https://api.github.com/repos/logsol/Github-Auto-Deploy/pulls{/number}","milestones_url":"https://api.github.com/repos/logsol/Github-Auto-Deploy/milestones{/number}","notifications_url":"https://api.github.com/repos/logsol/Github-Auto-Deploy/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/logsol/Github-Auto-Deploy/labels{/name}","releases_url":"https://api.github.com/repos/logsol/Github-Auto-Deploy/releases{/id}","created_at":"2011-12-24T00:24:05Z","updated_at":"2014-01-13T22:50:59Z","pushed_at":"2012-12-25T19:47:57Z","git_url":"git://github.com/logsol/Github-Auto-Deploy.git","ssh_url":"git@github.com:logsol/Github-Auto-Deploy.git","clone_url":"https://github.com/logsol/Github-Auto-Deploy.git","svn_url":"https://github.com/logsol/Github-Auto-Deploy","homepage":"http://logsol.github.com/Github-Auto-Deploy/","size":366,"stargazers_count":159,"watchers_count":159,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":70,"mirror_url":null,"open_issues_count":7,"forks":70,"open_issues":7,"watchers":159,"default_branch":"master","master_branch":"master","score":25.510773},{"id":258426,"name":"libcloud","full_name":"cloudkick/libcloud","owner":{"login":"cloudkick","id":107520,"avatar_url":"https://avatars.githubusercontent.com/u/107520","gravatar_id":"342d355de37f2c73c86bd1bdb8975d59","url":"https://api.github.com/users/cloudkick","html_url":"https://github.com/cloudkick","followers_url":"https://api.github.com/users/cloudkick/followers","following_url":"https://api.github.com/users/cloudkick/following{/other_user}","gists_url":"https://api.github.com/users/cloudkick/gists{/gist_id}","starred_url":"https://api.github.com/users/cloudkick/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cloudkick/subscriptions","organizations_url":"https://api.github.com/users/cloudkick/orgs","repos_url":"https://api.github.com/users/cloudkick/repos","events_url":"https://api.github.com/users/cloudkick/events{/privacy}","received_events_url":"https://api.github.com/users/cloudkick/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/cloudkick/libcloud","description":"THIS IS THE WRONG GITHUB PROJECT. SEE https://github.com/apache/libcloud","fork":false,"url":"https://api.github.com/repos/cloudkick/libcloud","forks_url":"https://api.github.com/repos/cloudkick/libcloud/forks","keys_url":"https://api.github.com/repos/cloudkick/libcloud/keys{/key_id}","collaborators_url":"https://api.github.com/repos/cloudkick/libcloud/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/cloudkick/libcloud/teams","hooks_url":"https://api.github.com/repos/cloudkick/libcloud/hooks","issue_events_url":"https://api.github.com/repos/cloudkick/libcloud/issues/events{/number}","events_url":"https://api.github.com/repos/cloudkick/libcloud/events","assignees_url":"https://api.github.com/repos/cloudkick/libcloud/assignees{/user}","branches_url":"https://api.github.com/repos/cloudkick/libcloud/branches{/branch}","tags_url":"https://api.github.com/repos/cloudkick/libcloud/tags","blobs_url":"https://api.github.com/repos/cloudkick/libcloud/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/cloudkick/libcloud/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/cloudkick/libcloud/git/refs{/sha}","trees_url":"https://api.github.com/repos/cloudkick/libcloud/git/trees{/sha}","statuses_url":"https://api.github.com/repos/cloudkick/libcloud/statuses/{sha}","languages_url":"https://api.github.com/repos/cloudkick/libcloud/languages","stargazers_url":"https://api.github.com/repos/cloudkick/libcloud/stargazers","contributors_url":"https://api.github.com/repos/cloudkick/libcloud/contributors","subscribers_url":"https://api.github.com/repos/cloudkick/libcloud/subscribers","subscription_url":"https://api.github.com/repos/cloudkick/libcloud/subscription","commits_url":"https://api.github.com/repos/cloudkick/libcloud/commits{/sha}","git_commits_url":"https://api.github.com/repos/cloudkick/libcloud/git/commits{/sha}","comments_url":"https://api.github.com/repos/cloudkick/libcloud/comments{/number}","issue_comment_url":"https://api.github.com/repos/cloudkick/libcloud/issues/comments/{number}","contents_url":"https://api.github.com/repos/cloudkick/libcloud/contents/{+path}","compare_url":"https://api.github.com/repos/cloudkick/libcloud/compare/{base}...{head}","merges_url":"https://api.github.com/repos/cloudkick/libcloud/merges","archive_url":"https://api.github.com/repos/cloudkick/libcloud/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/cloudkick/libcloud/downloads","issues_url":"https://api.github.com/repos/cloudkick/libcloud/issues{/number}","pulls_url":"https://api.github.com/repos/cloudkick/libcloud/pulls{/number}","milestones_url":"https://api.github.com/repos/cloudkick/libcloud/milestones{/number}","notifications_url":"https://api.github.com/repos/cloudkick/libcloud/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/cloudkick/libcloud/labels{/name}","releases_url":"https://api.github.com/repos/cloudkick/libcloud/releases{/id}","created_at":"2009-07-23T04:48:39Z","updated_at":"2014-02-02T07:29:44Z","pushed_at":"2011-03-14T02:42:14Z","git_url":"git://github.com/cloudkick/libcloud.git","ssh_url":"git@github.com:cloudkick/libcloud.git","clone_url":"https://github.com/cloudkick/libcloud.git","svn_url":"https://github.com/cloudkick/libcloud","homepage":"https://github.com/apache/libcloud","size":1609,"stargazers_count":126,"watchers_count":126,"language":"Python","has_issues":false,"has_downloads":false,"has_wiki":false,"forks_count":13,"mirror_url":null,"open_issues_count":6,"forks":13,"open_issues":6,"watchers":126,"default_branch":"master","master_branch":"master","score":13.087221},{"id":2109462,"name":"github-badge","full_name":"berkerpeksag/github-badge","owner":{"login":"berkerpeksag","id":26338,"avatar_url":"https://avatars.githubusercontent.com/u/26338","gravatar_id":"df8e51d7618d5ed7ccbbc8dea9a9afee","url":"https://api.github.com/users/berkerpeksag","html_url":"https://github.com/berkerpeksag","followers_url":"https://api.github.com/users/berkerpeksag/followers","following_url":"https://api.github.com/users/berkerpeksag/following{/other_user}","gists_url":"https://api.github.com/users/berkerpeksag/gists{/gist_id}","starred_url":"https://api.github.com/users/berkerpeksag/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/berkerpeksag/subscriptions","organizations_url":"https://api.github.com/users/berkerpeksag/orgs","repos_url":"https://api.github.com/users/berkerpeksag/repos","events_url":"https://api.github.com/users/berkerpeksag/events{/privacy}","received_events_url":"https://api.github.com/users/berkerpeksag/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/berkerpeksag/github-badge","description":"GitHub Badge is a simple embeddable badge showing your GitHub stats like the number of public repositories, number of followers, favorite languages etc.","fork":false,"url":"https://api.github.com/repos/berkerpeksag/github-badge","forks_url":"https://api.github.com/repos/berkerpeksag/github-badge/forks","keys_url":"https://api.github.com/repos/berkerpeksag/github-badge/keys{/key_id}","collaborators_url":"https://api.github.com/repos/berkerpeksag/github-badge/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/berkerpeksag/github-badge/teams","hooks_url":"https://api.github.com/repos/berkerpeksag/github-badge/hooks","issue_events_url":"https://api.github.com/repos/berkerpeksag/github-badge/issues/events{/number}","events_url":"https://api.github.com/repos/berkerpeksag/github-badge/events","assignees_url":"https://api.github.com/repos/berkerpeksag/github-badge/assignees{/user}","branches_url":"https://api.github.com/repos/berkerpeksag/github-badge/branches{/branch}","tags_url":"https://api.github.com/repos/berkerpeksag/github-badge/tags","blobs_url":"https://api.github.com/repos/berkerpeksag/github-badge/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/berkerpeksag/github-badge/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/berkerpeksag/github-badge/git/refs{/sha}","trees_url":"https://api.github.com/repos/berkerpeksag/github-badge/git/trees{/sha}","statuses_url":"https://api.github.com/repos/berkerpeksag/github-badge/statuses/{sha}","languages_url":"https://api.github.com/repos/berkerpeksag/github-badge/languages","stargazers_url":"https://api.github.com/repos/berkerpeksag/github-badge/stargazers","contributors_url":"https://api.github.com/repos/berkerpeksag/github-badge/contributors","subscribers_url":"https://api.github.com/repos/berkerpeksag/github-badge/subscribers","subscription_url":"https://api.github.com/repos/berkerpeksag/github-badge/subscription","commits_url":"https://api.github.com/repos/berkerpeksag/github-badge/commits{/sha}","git_commits_url":"https://api.github.com/repos/berkerpeksag/github-badge/git/commits{/sha}","comments_url":"https://api.github.com/repos/berkerpeksag/github-badge/comments{/number}","issue_comment_url":"https://api.github.com/repos/berkerpeksag/github-badge/issues/comments/{number}","contents_url":"https://api.github.com/repos/berkerpeksag/github-badge/contents/{+path}","compare_url":"https://api.github.com/repos/berkerpeksag/github-badge/compare/{base}...{head}","merges_url":"https://api.github.com/repos/berkerpeksag/github-badge/merges","archive_url":"https://api.github.com/repos/berkerpeksag/github-badge/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/berkerpeksag/github-badge/downloads","issues_url":"https://api.github.com/repos/berkerpeksag/github-badge/issues{/number}","pulls_url":"https://api.github.com/repos/berkerpeksag/github-badge/pulls{/number}","milestones_url":"https://api.github.com/repos/berkerpeksag/github-badge/milestones{/number}","notifications_url":"https://api.github.com/repos/berkerpeksag/github-badge/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/berkerpeksag/github-badge/labels{/name}","releases_url":"https://api.github.com/repos/berkerpeksag/github-badge/releases{/id}","created_at":"2011-07-26T21:30:23Z","updated_at":"2014-01-13T12:31:22Z","pushed_at":"2014-01-09T02:40:56Z","git_url":"git://github.com/berkerpeksag/github-badge.git","ssh_url":"git@github.com:berkerpeksag/github-badge.git","clone_url":"https://github.com/berkerpeksag/github-badge.git","svn_url":"https://github.com/berkerpeksag/github-badge","homepage":"http://githubbadge.appspot.com/","size":895,"stargazers_count":135,"watchers_count":135,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"forks_count":10,"mirror_url":null,"open_issues_count":8,"forks":10,"open_issues":8,"watchers":135,"default_branch":"master","master_branch":"master","score":17.625778},{"id":2629694,"name":"ssh","full_name":"bitprophet/ssh","owner":{"login":"bitprophet","id":6088,"avatar_url":"https://avatars.githubusercontent.com/u/6088","gravatar_id":"f1acc6318028fdba9874c77bc622a2fb","url":"https://api.github.com/users/bitprophet","html_url":"https://github.com/bitprophet","followers_url":"https://api.github.com/users/bitprophet/followers","following_url":"https://api.github.com/users/bitprophet/following{/other_user}","gists_url":"https://api.github.com/users/bitprophet/gists{/gist_id}","starred_url":"https://api.github.com/users/bitprophet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bitprophet/subscriptions","organizations_url":"https://api.github.com/users/bitprophet/orgs","repos_url":"https://api.github.com/users/bitprophet/repos","events_url":"https://api.github.com/users/bitprophet/events{/privacy}","received_events_url":"https://api.github.com/users/bitprophet/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/bitprophet/ssh","description":"PLEASE file all new issues over at: https://github.com/paramiko/paramiko !","fork":false,"url":"https://api.github.com/repos/bitprophet/ssh","forks_url":"https://api.github.com/repos/bitprophet/ssh/forks","keys_url":"https://api.github.com/repos/bitprophet/ssh/keys{/key_id}","collaborators_url":"https://api.github.com/repos/bitprophet/ssh/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/bitprophet/ssh/teams","hooks_url":"https://api.github.com/repos/bitprophet/ssh/hooks","issue_events_url":"https://api.github.com/repos/bitprophet/ssh/issues/events{/number}","events_url":"https://api.github.com/repos/bitprophet/ssh/events","assignees_url":"https://api.github.com/repos/bitprophet/ssh/assignees{/user}","branches_url":"https://api.github.com/repos/bitprophet/ssh/branches{/branch}","tags_url":"https://api.github.com/repos/bitprophet/ssh/tags","blobs_url":"https://api.github.com/repos/bitprophet/ssh/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/bitprophet/ssh/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/bitprophet/ssh/git/refs{/sha}","trees_url":"https://api.github.com/repos/bitprophet/ssh/git/trees{/sha}","statuses_url":"https://api.github.com/repos/bitprophet/ssh/statuses/{sha}","languages_url":"https://api.github.com/repos/bitprophet/ssh/languages","stargazers_url":"https://api.github.com/repos/bitprophet/ssh/stargazers","contributors_url":"https://api.github.com/repos/bitprophet/ssh/contributors","subscribers_url":"https://api.github.com/repos/bitprophet/ssh/subscribers","subscription_url":"https://api.github.com/repos/bitprophet/ssh/subscription","commits_url":"https://api.github.com/repos/bitprophet/ssh/commits{/sha}","git_commits_url":"https://api.github.com/repos/bitprophet/ssh/git/commits{/sha}","comments_url":"https://api.github.com/repos/bitprophet/ssh/comments{/number}","issue_comment_url":"https://api.github.com/repos/bitprophet/ssh/issues/comments/{number}","contents_url":"https://api.github.com/repos/bitprophet/ssh/contents/{+path}","compare_url":"https://api.github.com/repos/bitprophet/ssh/compare/{base}...{head}","merges_url":"https://api.github.com/repos/bitprophet/ssh/merges","archive_url":"https://api.github.com/repos/bitprophet/ssh/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/bitprophet/ssh/downloads","issues_url":"https://api.github.com/repos/bitprophet/ssh/issues{/number}","pulls_url":"https://api.github.com/repos/bitprophet/ssh/pulls{/number}","milestones_url":"https://api.github.com/repos/bitprophet/ssh/milestones{/number}","notifications_url":"https://api.github.com/repos/bitprophet/ssh/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/bitprophet/ssh/labels{/name}","releases_url":"https://api.github.com/repos/bitprophet/ssh/releases{/id}","created_at":"2011-10-23T06:53:41Z","updated_at":"2014-01-10T06:53:46Z","pushed_at":"2012-10-06T17:06:38Z","git_url":"git://github.com/bitprophet/ssh.git","ssh_url":"git@github.com:bitprophet/ssh.git","clone_url":"https://github.com/bitprophet/ssh.git","svn_url":"https://github.com/bitprophet/ssh","homepage":"https://github.com/paramiko/paramiko","size":1797,"stargazers_count":122,"watchers_count":122,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"forks_count":44,"mirror_url":null,"open_issues_count":16,"forks":44,"open_issues":16,"watchers":122,"default_branch":"master","master_branch":"master","score":10.844821},{"id":1861476,"name":"OpenTreeMap","full_name":"azavea/OpenTreeMap","owner":{"login":"azavea","id":595231,"avatar_url":"https://avatars.githubusercontent.com/u/595231","gravatar_id":"49884cb2080832e07241d7bdb6259820","url":"https://api.github.com/users/azavea","html_url":"https://github.com/azavea","followers_url":"https://api.github.com/users/azavea/followers","following_url":"https://api.github.com/users/azavea/following{/other_user}","gists_url":"https://api.github.com/users/azavea/gists{/gist_id}","starred_url":"https://api.github.com/users/azavea/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/azavea/subscriptions","organizations_url":"https://api.github.com/users/azavea/orgs","repos_url":"https://api.github.com/users/azavea/repos","events_url":"https://api.github.com/users/azavea/events{/privacy}","received_events_url":"https://api.github.com/users/azavea/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/azavea/OpenTreeMap","description":"OpenTreeMap is a wiki-inspired, web-based geographic tree inventory application that enables individuals, organizations, and governments to work together and collaboratively map the urban forest. OpenTreeMap is a project of Azavea and Urban Ecos. The code is currently being used to create PhillyTreeMap.org, UrbanForestMap.org, GreenprintMaps.org, SanDiegoTreeMap.org, the Grand Rapids Urban Forest Project tree map (treemap.urbanforestproject.com), Treezilla.org, and TampaTreeMap.org. The code to create an iOS app version of OpenTreeMap is available at https://github.com/azavea/OpenTreeMap-iOS. A default skin for the iOS app is available at https://github.com/azavea/OpenTreeMap-iOS-skin. Android code is available at https://github.com/azavea/OpenTreeMap-Android ","fork":false,"url":"https://api.github.com/repos/azavea/OpenTreeMap","forks_url":"https://api.github.com/repos/azavea/OpenTreeMap/forks","keys_url":"https://api.github.com/repos/azavea/OpenTreeMap/keys{/key_id}","collaborators_url":"https://api.github.com/repos/azavea/OpenTreeMap/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/azavea/OpenTreeMap/teams","hooks_url":"https://api.github.com/repos/azavea/OpenTreeMap/hooks","issue_events_url":"https://api.github.com/repos/azavea/OpenTreeMap/issues/events{/number}","events_url":"https://api.github.com/repos/azavea/OpenTreeMap/events","assignees_url":"https://api.github.com/repos/azavea/OpenTreeMap/assignees{/user}","branches_url":"https://api.github.com/repos/azavea/OpenTreeMap/branches{/branch}","tags_url":"https://api.github.com/repos/azavea/OpenTreeMap/tags","blobs_url":"https://api.github.com/repos/azavea/OpenTreeMap/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/azavea/OpenTreeMap/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/azavea/OpenTreeMap/git/refs{/sha}","trees_url":"https://api.github.com/repos/azavea/OpenTreeMap/git/trees{/sha}","statuses_url":"https://api.github.com/repos/azavea/OpenTreeMap/statuses/{sha}","languages_url":"https://api.github.com/repos/azavea/OpenTreeMap/languages","stargazers_url":"https://api.github.com/repos/azavea/OpenTreeMap/stargazers","contributors_url":"https://api.github.com/repos/azavea/OpenTreeMap/contributors","subscribers_url":"https://api.github.com/repos/azavea/OpenTreeMap/subscribers","subscription_url":"https://api.github.com/repos/azavea/OpenTreeMap/subscription","commits_url":"https://api.github.com/repos/azavea/OpenTreeMap/commits{/sha}","git_commits_url":"https://api.github.com/repos/azavea/OpenTreeMap/git/commits{/sha}","comments_url":"https://api.github.com/repos/azavea/OpenTreeMap/comments{/number}","issue_comment_url":"https://api.github.com/repos/azavea/OpenTreeMap/issues/comments/{number}","contents_url":"https://api.github.com/repos/azavea/OpenTreeMap/contents/{+path}","compare_url":"https://api.github.com/repos/azavea/OpenTreeMap/compare/{base}...{head}","merges_url":"https://api.github.com/repos/azavea/OpenTreeMap/merges","archive_url":"https://api.github.com/repos/azavea/OpenTreeMap/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/azavea/OpenTreeMap/downloads","issues_url":"https://api.github.com/repos/azavea/OpenTreeMap/issues{/number}","pulls_url":"https://api.github.com/repos/azavea/OpenTreeMap/pulls{/number}","milestones_url":"https://api.github.com/repos/azavea/OpenTreeMap/milestones{/number}","notifications_url":"https://api.github.com/repos/azavea/OpenTreeMap/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/azavea/OpenTreeMap/labels{/name}","releases_url":"https://api.github.com/repos/azavea/OpenTreeMap/releases{/id}","created_at":"2011-06-07T18:57:58Z","updated_at":"2014-02-10T17:14:06Z","pushed_at":"2014-02-10T17:14:06Z","git_url":"git://github.com/azavea/OpenTreeMap.git","ssh_url":"git@github.com:azavea/OpenTreeMap.git","clone_url":"https://github.com/azavea/OpenTreeMap.git","svn_url":"https://github.com/azavea/OpenTreeMap","homepage":"http://www.azavea.com/opentreemap/","size":16573,"stargazers_count":118,"watchers_count":118,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":58,"mirror_url":null,"open_issues_count":22,"forks":58,"open_issues":22,"watchers":118,"default_branch":"v1.3","master_branch":"v1.3","score":7.4777703},{"id":5690595,"name":"leeroy","full_name":"litl/leeroy","owner":{"login":"litl","id":190361,"avatar_url":"https://avatars.githubusercontent.com/u/190361","gravatar_id":"2544baae90780aa558a2dedc84817cab","url":"https://api.github.com/users/litl","html_url":"https://github.com/litl","followers_url":"https://api.github.com/users/litl/followers","following_url":"https://api.github.com/users/litl/following{/other_user}","gists_url":"https://api.github.com/users/litl/gists{/gist_id}","starred_url":"https://api.github.com/users/litl/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/litl/subscriptions","organizations_url":"https://api.github.com/users/litl/orgs","repos_url":"https://api.github.com/users/litl/repos","events_url":"https://api.github.com/users/litl/events{/privacy}","received_events_url":"https://api.github.com/users/litl/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/litl/leeroy","description":"Jenkins integration with GitHub pull requests","fork":false,"url":"https://api.github.com/repos/litl/leeroy","forks_url":"https://api.github.com/repos/litl/leeroy/forks","keys_url":"https://api.github.com/repos/litl/leeroy/keys{/key_id}","collaborators_url":"https://api.github.com/repos/litl/leeroy/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/litl/leeroy/teams","hooks_url":"https://api.github.com/repos/litl/leeroy/hooks","issue_events_url":"https://api.github.com/repos/litl/leeroy/issues/events{/number}","events_url":"https://api.github.com/repos/litl/leeroy/events","assignees_url":"https://api.github.com/repos/litl/leeroy/assignees{/user}","branches_url":"https://api.github.com/repos/litl/leeroy/branches{/branch}","tags_url":"https://api.github.com/repos/litl/leeroy/tags","blobs_url":"https://api.github.com/repos/litl/leeroy/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/litl/leeroy/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/litl/leeroy/git/refs{/sha}","trees_url":"https://api.github.com/repos/litl/leeroy/git/trees{/sha}","statuses_url":"https://api.github.com/repos/litl/leeroy/statuses/{sha}","languages_url":"https://api.github.com/repos/litl/leeroy/languages","stargazers_url":"https://api.github.com/repos/litl/leeroy/stargazers","contributors_url":"https://api.github.com/repos/litl/leeroy/contributors","subscribers_url":"https://api.github.com/repos/litl/leeroy/subscribers","subscription_url":"https://api.github.com/repos/litl/leeroy/subscription","commits_url":"https://api.github.com/repos/litl/leeroy/commits{/sha}","git_commits_url":"https://api.github.com/repos/litl/leeroy/git/commits{/sha}","comments_url":"https://api.github.com/repos/litl/leeroy/comments{/number}","issue_comment_url":"https://api.github.com/repos/litl/leeroy/issues/comments/{number}","contents_url":"https://api.github.com/repos/litl/leeroy/contents/{+path}","compare_url":"https://api.github.com/repos/litl/leeroy/compare/{base}...{head}","merges_url":"https://api.github.com/repos/litl/leeroy/merges","archive_url":"https://api.github.com/repos/litl/leeroy/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/litl/leeroy/downloads","issues_url":"https://api.github.com/repos/litl/leeroy/issues{/number}","pulls_url":"https://api.github.com/repos/litl/leeroy/pulls{/number}","milestones_url":"https://api.github.com/repos/litl/leeroy/milestones{/number}","notifications_url":"https://api.github.com/repos/litl/leeroy/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/litl/leeroy/labels{/name}","releases_url":"https://api.github.com/repos/litl/leeroy/releases{/id}","created_at":"2012-09-05T17:19:00Z","updated_at":"2014-02-25T17:39:20Z","pushed_at":"2014-02-25T17:39:20Z","git_url":"git://github.com/litl/leeroy.git","ssh_url":"git@github.com:litl/leeroy.git","clone_url":"https://github.com/litl/leeroy.git","svn_url":"https://github.com/litl/leeroy","homepage":null,"size":279,"stargazers_count":109,"watchers_count":109,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":22,"mirror_url":null,"open_issues_count":7,"forks":22,"open_issues":7,"watchers":109,"default_branch":"master","master_branch":"master","score":12.909185},{"id":2068621,"name":"pylogsparser","full_name":"wallix/pylogsparser","owner":{"login":"wallix","id":264401,"avatar_url":"https://avatars.githubusercontent.com/u/264401","gravatar_id":"bdde72080a52a0ed24c2c18c4ebd7d60","url":"https://api.github.com/users/wallix","html_url":"https://github.com/wallix","followers_url":"https://api.github.com/users/wallix/followers","following_url":"https://api.github.com/users/wallix/following{/other_user}","gists_url":"https://api.github.com/users/wallix/gists{/gist_id}","starred_url":"https://api.github.com/users/wallix/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wallix/subscriptions","organizations_url":"https://api.github.com/users/wallix/orgs","repos_url":"https://api.github.com/users/wallix/repos","events_url":"https://api.github.com/users/wallix/events{/privacy}","received_events_url":"https://api.github.com/users/wallix/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/wallix/pylogsparser","description":"Library for Log parsing in Python - get the documentation at http://wallix.github.com/pylogsparser/","fork":false,"url":"https://api.github.com/repos/wallix/pylogsparser","forks_url":"https://api.github.com/repos/wallix/pylogsparser/forks","keys_url":"https://api.github.com/repos/wallix/pylogsparser/keys{/key_id}","collaborators_url":"https://api.github.com/repos/wallix/pylogsparser/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/wallix/pylogsparser/teams","hooks_url":"https://api.github.com/repos/wallix/pylogsparser/hooks","issue_events_url":"https://api.github.com/repos/wallix/pylogsparser/issues/events{/number}","events_url":"https://api.github.com/repos/wallix/pylogsparser/events","assignees_url":"https://api.github.com/repos/wallix/pylogsparser/assignees{/user}","branches_url":"https://api.github.com/repos/wallix/pylogsparser/branches{/branch}","tags_url":"https://api.github.com/repos/wallix/pylogsparser/tags","blobs_url":"https://api.github.com/repos/wallix/pylogsparser/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/wallix/pylogsparser/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/wallix/pylogsparser/git/refs{/sha}","trees_url":"https://api.github.com/repos/wallix/pylogsparser/git/trees{/sha}","statuses_url":"https://api.github.com/repos/wallix/pylogsparser/statuses/{sha}","languages_url":"https://api.github.com/repos/wallix/pylogsparser/languages","stargazers_url":"https://api.github.com/repos/wallix/pylogsparser/stargazers","contributors_url":"https://api.github.com/repos/wallix/pylogsparser/contributors","subscribers_url":"https://api.github.com/repos/wallix/pylogsparser/subscribers","subscription_url":"https://api.github.com/repos/wallix/pylogsparser/subscription","commits_url":"https://api.github.com/repos/wallix/pylogsparser/commits{/sha}","git_commits_url":"https://api.github.com/repos/wallix/pylogsparser/git/commits{/sha}","comments_url":"https://api.github.com/repos/wallix/pylogsparser/comments{/number}","issue_comment_url":"https://api.github.com/repos/wallix/pylogsparser/issues/comments/{number}","contents_url":"https://api.github.com/repos/wallix/pylogsparser/contents/{+path}","compare_url":"https://api.github.com/repos/wallix/pylogsparser/compare/{base}...{head}","merges_url":"https://api.github.com/repos/wallix/pylogsparser/merges","archive_url":"https://api.github.com/repos/wallix/pylogsparser/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/wallix/pylogsparser/downloads","issues_url":"https://api.github.com/repos/wallix/pylogsparser/issues{/number}","pulls_url":"https://api.github.com/repos/wallix/pylogsparser/pulls{/number}","milestones_url":"https://api.github.com/repos/wallix/pylogsparser/milestones{/number}","notifications_url":"https://api.github.com/repos/wallix/pylogsparser/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/wallix/pylogsparser/labels{/name}","releases_url":"https://api.github.com/repos/wallix/pylogsparser/releases{/id}","created_at":"2011-07-18T20:29:40Z","updated_at":"2014-01-16T08:42:29Z","pushed_at":"2013-11-06T11:15:06Z","git_url":"git://github.com/wallix/pylogsparser.git","ssh_url":"git@github.com:wallix/pylogsparser.git","clone_url":"https://github.com/wallix/pylogsparser.git","svn_url":"https://github.com/wallix/pylogsparser","homepage":"http://www.wallix.org/pylogsparser-project/","size":978,"stargazers_count":102,"watchers_count":102,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":14,"mirror_url":null,"open_issues_count":2,"forks":14,"open_issues":2,"watchers":102,"default_branch":"master","master_branch":"master","score":7.27245},{"id":5620853,"name":"pyoauth2","full_name":"StartTheShift/pyoauth2","owner":{"login":"StartTheShift","id":685075,"avatar_url":"https://avatars.githubusercontent.com/u/685075","gravatar_id":"b948d51748c15d049f20b12172ac1e01","url":"https://api.github.com/users/StartTheShift","html_url":"https://github.com/StartTheShift","followers_url":"https://api.github.com/users/StartTheShift/followers","following_url":"https://api.github.com/users/StartTheShift/following{/other_user}","gists_url":"https://api.github.com/users/StartTheShift/gists{/gist_id}","starred_url":"https://api.github.com/users/StartTheShift/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/StartTheShift/subscriptions","organizations_url":"https://api.github.com/users/StartTheShift/orgs","repos_url":"https://api.github.com/users/StartTheShift/repos","events_url":"https://api.github.com/users/StartTheShift/events{/privacy}","received_events_url":"https://api.github.com/users/StartTheShift/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/StartTheShift/pyoauth2","description":"OAuth 2.0 Library - WE ARE NO LONGER MAINTAINING THIS LIBRARY, PLEASE SEE this fork: https://github.com/NateFerrero/pyoauth2","fork":false,"url":"https://api.github.com/repos/StartTheShift/pyoauth2","forks_url":"https://api.github.com/repos/StartTheShift/pyoauth2/forks","keys_url":"https://api.github.com/repos/StartTheShift/pyoauth2/keys{/key_id}","collaborators_url":"https://api.github.com/repos/StartTheShift/pyoauth2/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/StartTheShift/pyoauth2/teams","hooks_url":"https://api.github.com/repos/StartTheShift/pyoauth2/hooks","issue_events_url":"https://api.github.com/repos/StartTheShift/pyoauth2/issues/events{/number}","events_url":"https://api.github.com/repos/StartTheShift/pyoauth2/events","assignees_url":"https://api.github.com/repos/StartTheShift/pyoauth2/assignees{/user}","branches_url":"https://api.github.com/repos/StartTheShift/pyoauth2/branches{/branch}","tags_url":"https://api.github.com/repos/StartTheShift/pyoauth2/tags","blobs_url":"https://api.github.com/repos/StartTheShift/pyoauth2/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/StartTheShift/pyoauth2/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/StartTheShift/pyoauth2/git/refs{/sha}","trees_url":"https://api.github.com/repos/StartTheShift/pyoauth2/git/trees{/sha}","statuses_url":"https://api.github.com/repos/StartTheShift/pyoauth2/statuses/{sha}","languages_url":"https://api.github.com/repos/StartTheShift/pyoauth2/languages","stargazers_url":"https://api.github.com/repos/StartTheShift/pyoauth2/stargazers","contributors_url":"https://api.github.com/repos/StartTheShift/pyoauth2/contributors","subscribers_url":"https://api.github.com/repos/StartTheShift/pyoauth2/subscribers","subscription_url":"https://api.github.com/repos/StartTheShift/pyoauth2/subscription","commits_url":"https://api.github.com/repos/StartTheShift/pyoauth2/commits{/sha}","git_commits_url":"https://api.github.com/repos/StartTheShift/pyoauth2/git/commits{/sha}","comments_url":"https://api.github.com/repos/StartTheShift/pyoauth2/comments{/number}","issue_comment_url":"https://api.github.com/repos/StartTheShift/pyoauth2/issues/comments/{number}","contents_url":"https://api.github.com/repos/StartTheShift/pyoauth2/contents/{+path}","compare_url":"https://api.github.com/repos/StartTheShift/pyoauth2/compare/{base}...{head}","merges_url":"https://api.github.com/repos/StartTheShift/pyoauth2/merges","archive_url":"https://api.github.com/repos/StartTheShift/pyoauth2/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/StartTheShift/pyoauth2/downloads","issues_url":"https://api.github.com/repos/StartTheShift/pyoauth2/issues{/number}","pulls_url":"https://api.github.com/repos/StartTheShift/pyoauth2/pulls{/number}","milestones_url":"https://api.github.com/repos/StartTheShift/pyoauth2/milestones{/number}","notifications_url":"https://api.github.com/repos/StartTheShift/pyoauth2/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/StartTheShift/pyoauth2/labels{/name}","releases_url":"https://api.github.com/repos/StartTheShift/pyoauth2/releases{/id}","created_at":"2012-08-30T20:59:58Z","updated_at":"2014-01-11T19:54:53Z","pushed_at":"2013-05-01T22:17:49Z","git_url":"git://github.com/StartTheShift/pyoauth2.git","ssh_url":"git@github.com:StartTheShift/pyoauth2.git","clone_url":"https://github.com/StartTheShift/pyoauth2.git","svn_url":"https://github.com/StartTheShift/pyoauth2","homepage":"","size":290,"stargazers_count":102,"watchers_count":102,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"forks_count":28,"mirror_url":null,"open_issues_count":5,"forks":28,"open_issues":5,"watchers":102,"default_branch":"master","master_branch":"master","score":8.102054},{"id":1918566,"name":"git-pull-request","full_name":"splitbrain/git-pull-request","owner":{"login":"splitbrain","id":86426,"avatar_url":"https://avatars.githubusercontent.com/u/86426","gravatar_id":"b6b4d7dbe3fb7cf61b68e36cd80f8698","url":"https://api.github.com/users/splitbrain","html_url":"https://github.com/splitbrain","followers_url":"https://api.github.com/users/splitbrain/followers","following_url":"https://api.github.com/users/splitbrain/following{/other_user}","gists_url":"https://api.github.com/users/splitbrain/gists{/gist_id}","starred_url":"https://api.github.com/users/splitbrain/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/splitbrain/subscriptions","organizations_url":"https://api.github.com/users/splitbrain/orgs","repos_url":"https://api.github.com/users/splitbrain/repos","events_url":"https://api.github.com/users/splitbrain/events{/privacy}","received_events_url":"https://api.github.com/users/splitbrain/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/splitbrain/git-pull-request","description":"git command to automatically pull github pull requests into their own branch","fork":false,"url":"https://api.github.com/repos/splitbrain/git-pull-request","forks_url":"https://api.github.com/repos/splitbrain/git-pull-request/forks","keys_url":"https://api.github.com/repos/splitbrain/git-pull-request/keys{/key_id}","collaborators_url":"https://api.github.com/repos/splitbrain/git-pull-request/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/splitbrain/git-pull-request/teams","hooks_url":"https://api.github.com/repos/splitbrain/git-pull-request/hooks","issue_events_url":"https://api.github.com/repos/splitbrain/git-pull-request/issues/events{/number}","events_url":"https://api.github.com/repos/splitbrain/git-pull-request/events","assignees_url":"https://api.github.com/repos/splitbrain/git-pull-request/assignees{/user}","branches_url":"https://api.github.com/repos/splitbrain/git-pull-request/branches{/branch}","tags_url":"https://api.github.com/repos/splitbrain/git-pull-request/tags","blobs_url":"https://api.github.com/repos/splitbrain/git-pull-request/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/splitbrain/git-pull-request/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/splitbrain/git-pull-request/git/refs{/sha}","trees_url":"https://api.github.com/repos/splitbrain/git-pull-request/git/trees{/sha}","statuses_url":"https://api.github.com/repos/splitbrain/git-pull-request/statuses/{sha}","languages_url":"https://api.github.com/repos/splitbrain/git-pull-request/languages","stargazers_url":"https://api.github.com/repos/splitbrain/git-pull-request/stargazers","contributors_url":"https://api.github.com/repos/splitbrain/git-pull-request/contributors","subscribers_url":"https://api.github.com/repos/splitbrain/git-pull-request/subscribers","subscription_url":"https://api.github.com/repos/splitbrain/git-pull-request/subscription","commits_url":"https://api.github.com/repos/splitbrain/git-pull-request/commits{/sha}","git_commits_url":"https://api.github.com/repos/splitbrain/git-pull-request/git/commits{/sha}","comments_url":"https://api.github.com/repos/splitbrain/git-pull-request/comments{/number}","issue_comment_url":"https://api.github.com/repos/splitbrain/git-pull-request/issues/comments/{number}","contents_url":"https://api.github.com/repos/splitbrain/git-pull-request/contents/{+path}","compare_url":"https://api.github.com/repos/splitbrain/git-pull-request/compare/{base}...{head}","merges_url":"https://api.github.com/repos/splitbrain/git-pull-request/merges","archive_url":"https://api.github.com/repos/splitbrain/git-pull-request/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/splitbrain/git-pull-request/downloads","issues_url":"https://api.github.com/repos/splitbrain/git-pull-request/issues{/number}","pulls_url":"https://api.github.com/repos/splitbrain/git-pull-request/pulls{/number}","milestones_url":"https://api.github.com/repos/splitbrain/git-pull-request/milestones{/number}","notifications_url":"https://api.github.com/repos/splitbrain/git-pull-request/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/splitbrain/git-pull-request/labels{/name}","releases_url":"https://api.github.com/repos/splitbrain/git-pull-request/releases{/id}","created_at":"2011-06-19T07:42:17Z","updated_at":"2014-01-13T15:58:47Z","pushed_at":"2013-02-01T08:06:03Z","git_url":"git://github.com/splitbrain/git-pull-request.git","ssh_url":"git@github.com:splitbrain/git-pull-request.git","clone_url":"https://github.com/splitbrain/git-pull-request.git","svn_url":"https://github.com/splitbrain/git-pull-request","homepage":"http://www.splitbrain.org/blog/2011-06/19-automate_github_pull_requests","size":172,"stargazers_count":100,"watchers_count":100,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":33,"mirror_url":null,"open_issues_count":3,"forks":33,"open_issues":3,"watchers":100,"default_branch":"master","master_branch":"master","score":12.054033},{"id":263749,"name":"Open-Knesset","full_name":"ofri/Open-Knesset","owner":{"login":"ofri","id":105233,"avatar_url":"https://avatars.githubusercontent.com/u/105233","gravatar_id":"4437e31fa0c1333736b30c9543891198","url":"https://api.github.com/users/ofri","html_url":"https://github.com/ofri","followers_url":"https://api.github.com/users/ofri/followers","following_url":"https://api.github.com/users/ofri/following{/other_user}","gists_url":"https://api.github.com/users/ofri/gists{/gist_id}","starred_url":"https://api.github.com/users/ofri/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ofri/subscriptions","organizations_url":"https://api.github.com/users/ofri/orgs","repos_url":"https://api.github.com/users/ofri/repos","events_url":"https://api.github.com/users/ofri/events{/privacy}","received_events_url":"https://api.github.com/users/ofri/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/ofri/Open-Knesset","description":"** The official repo is at https://github.com/hasadna/Open-Knesset/ . Please fork it, instead of my repo.","fork":false,"url":"https://api.github.com/repos/ofri/Open-Knesset","forks_url":"https://api.github.com/repos/ofri/Open-Knesset/forks","keys_url":"https://api.github.com/repos/ofri/Open-Knesset/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ofri/Open-Knesset/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ofri/Open-Knesset/teams","hooks_url":"https://api.github.com/repos/ofri/Open-Knesset/hooks","issue_events_url":"https://api.github.com/repos/ofri/Open-Knesset/issues/events{/number}","events_url":"https://api.github.com/repos/ofri/Open-Knesset/events","assignees_url":"https://api.github.com/repos/ofri/Open-Knesset/assignees{/user}","branches_url":"https://api.github.com/repos/ofri/Open-Knesset/branches{/branch}","tags_url":"https://api.github.com/repos/ofri/Open-Knesset/tags","blobs_url":"https://api.github.com/repos/ofri/Open-Knesset/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ofri/Open-Knesset/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ofri/Open-Knesset/git/refs{/sha}","trees_url":"https://api.github.com/repos/ofri/Open-Knesset/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ofri/Open-Knesset/statuses/{sha}","languages_url":"https://api.github.com/repos/ofri/Open-Knesset/languages","stargazers_url":"https://api.github.com/repos/ofri/Open-Knesset/stargazers","contributors_url":"https://api.github.com/repos/ofri/Open-Knesset/contributors","subscribers_url":"https://api.github.com/repos/ofri/Open-Knesset/subscribers","subscription_url":"https://api.github.com/repos/ofri/Open-Knesset/subscription","commits_url":"https://api.github.com/repos/ofri/Open-Knesset/commits{/sha}","git_commits_url":"https://api.github.com/repos/ofri/Open-Knesset/git/commits{/sha}","comments_url":"https://api.github.com/repos/ofri/Open-Knesset/comments{/number}","issue_comment_url":"https://api.github.com/repos/ofri/Open-Knesset/issues/comments/{number}","contents_url":"https://api.github.com/repos/ofri/Open-Knesset/contents/{+path}","compare_url":"https://api.github.com/repos/ofri/Open-Knesset/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ofri/Open-Knesset/merges","archive_url":"https://api.github.com/repos/ofri/Open-Knesset/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ofri/Open-Knesset/downloads","issues_url":"https://api.github.com/repos/ofri/Open-Knesset/issues{/number}","pulls_url":"https://api.github.com/repos/ofri/Open-Knesset/pulls{/number}","milestones_url":"https://api.github.com/repos/ofri/Open-Knesset/milestones{/number}","notifications_url":"https://api.github.com/repos/ofri/Open-Knesset/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ofri/Open-Knesset/labels{/name}","releases_url":"https://api.github.com/repos/ofri/Open-Knesset/releases{/id}","created_at":"2009-07-29T16:58:51Z","updated_at":"2014-02-24T18:55:33Z","pushed_at":"2014-02-24T18:55:33Z","git_url":"git://github.com/ofri/Open-Knesset.git","ssh_url":"git@github.com:ofri/Open-Knesset.git","clone_url":"https://github.com/ofri/Open-Knesset.git","svn_url":"https://github.com/ofri/Open-Knesset","homepage":"https://github.com/hasadna/Open-Knesset/","size":28772,"stargazers_count":98,"watchers_count":98,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":218,"mirror_url":null,"open_issues_count":20,"forks":218,"open_issues":20,"watchers":98,"default_branch":"master","master_branch":"master","score":14.709705},{"id":5140859,"name":"django-notifications","full_name":"brantyoung/django-notifications","owner":{"login":"brantyoung","id":1528179,"avatar_url":"https://avatars.githubusercontent.com/u/1528179","gravatar_id":"59ec8eabd9f54aed9eea4f430334d052","url":"https://api.github.com/users/brantyoung","html_url":"https://github.com/brantyoung","followers_url":"https://api.github.com/users/brantyoung/followers","following_url":"https://api.github.com/users/brantyoung/following{/other_user}","gists_url":"https://api.github.com/users/brantyoung/gists{/gist_id}","starred_url":"https://api.github.com/users/brantyoung/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/brantyoung/subscriptions","organizations_url":"https://api.github.com/users/brantyoung/orgs","repos_url":"https://api.github.com/users/brantyoung/repos","events_url":"https://api.github.com/users/brantyoung/events{/privacy}","received_events_url":"https://api.github.com/users/brantyoung/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/brantyoung/django-notifications","description":"GitHub notifications alike app for Django","fork":false,"url":"https://api.github.com/repos/brantyoung/django-notifications","forks_url":"https://api.github.com/repos/brantyoung/django-notifications/forks","keys_url":"https://api.github.com/repos/brantyoung/django-notifications/keys{/key_id}","collaborators_url":"https://api.github.com/repos/brantyoung/django-notifications/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/brantyoung/django-notifications/teams","hooks_url":"https://api.github.com/repos/brantyoung/django-notifications/hooks","issue_events_url":"https://api.github.com/repos/brantyoung/django-notifications/issues/events{/number}","events_url":"https://api.github.com/repos/brantyoung/django-notifications/events","assignees_url":"https://api.github.com/repos/brantyoung/django-notifications/assignees{/user}","branches_url":"https://api.github.com/repos/brantyoung/django-notifications/branches{/branch}","tags_url":"https://api.github.com/repos/brantyoung/django-notifications/tags","blobs_url":"https://api.github.com/repos/brantyoung/django-notifications/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/brantyoung/django-notifications/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/brantyoung/django-notifications/git/refs{/sha}","trees_url":"https://api.github.com/repos/brantyoung/django-notifications/git/trees{/sha}","statuses_url":"https://api.github.com/repos/brantyoung/django-notifications/statuses/{sha}","languages_url":"https://api.github.com/repos/brantyoung/django-notifications/languages","stargazers_url":"https://api.github.com/repos/brantyoung/django-notifications/stargazers","contributors_url":"https://api.github.com/repos/brantyoung/django-notifications/contributors","subscribers_url":"https://api.github.com/repos/brantyoung/django-notifications/subscribers","subscription_url":"https://api.github.com/repos/brantyoung/django-notifications/subscription","commits_url":"https://api.github.com/repos/brantyoung/django-notifications/commits{/sha}","git_commits_url":"https://api.github.com/repos/brantyoung/django-notifications/git/commits{/sha}","comments_url":"https://api.github.com/repos/brantyoung/django-notifications/comments{/number}","issue_comment_url":"https://api.github.com/repos/brantyoung/django-notifications/issues/comments/{number}","contents_url":"https://api.github.com/repos/brantyoung/django-notifications/contents/{+path}","compare_url":"https://api.github.com/repos/brantyoung/django-notifications/compare/{base}...{head}","merges_url":"https://api.github.com/repos/brantyoung/django-notifications/merges","archive_url":"https://api.github.com/repos/brantyoung/django-notifications/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/brantyoung/django-notifications/downloads","issues_url":"https://api.github.com/repos/brantyoung/django-notifications/issues{/number}","pulls_url":"https://api.github.com/repos/brantyoung/django-notifications/pulls{/number}","milestones_url":"https://api.github.com/repos/brantyoung/django-notifications/milestones{/number}","notifications_url":"https://api.github.com/repos/brantyoung/django-notifications/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/brantyoung/django-notifications/labels{/name}","releases_url":"https://api.github.com/repos/brantyoung/django-notifications/releases{/id}","created_at":"2012-07-22T10:41:02Z","updated_at":"2014-01-31T14:37:50Z","pushed_at":"2014-01-31T14:37:49Z","git_url":"git://github.com/brantyoung/django-notifications.git","ssh_url":"git@github.com:brantyoung/django-notifications.git","clone_url":"https://github.com/brantyoung/django-notifications.git","svn_url":"https://github.com/brantyoung/django-notifications","homepage":"http://pypi.python.org/pypi/django-notifications-hq/","size":272,"stargazers_count":99,"watchers_count":99,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":47,"mirror_url":null,"open_issues_count":10,"forks":47,"open_issues":10,"watchers":99,"default_branch":"master","master_branch":"master","score":15.606587},{"id":404180,"name":"MongoHub","full_name":"bububa/MongoHub","owner":{"login":"bububa","id":98709,"avatar_url":"https://avatars.githubusercontent.com/u/98709","gravatar_id":"437a6fea43875498f2620bfd17ee6bdb","url":"https://api.github.com/users/bububa","html_url":"https://github.com/bububa","followers_url":"https://api.github.com/users/bububa/followers","following_url":"https://api.github.com/users/bububa/following{/other_user}","gists_url":"https://api.github.com/users/bububa/gists{/gist_id}","starred_url":"https://api.github.com/users/bububa/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bububa/subscriptions","organizations_url":"https://api.github.com/users/bububa/orgs","repos_url":"https://api.github.com/users/bububa/repos","events_url":"https://api.github.com/users/bububa/events{/privacy}","received_events_url":"https://api.github.com/users/bububa/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/bububa/MongoHub","description":"Mongodb GUI tool based on Titanium. If you want a native mac version please check http://github.com/bububa/MongoHub-Mac","fork":false,"url":"https://api.github.com/repos/bububa/MongoHub","forks_url":"https://api.github.com/repos/bububa/MongoHub/forks","keys_url":"https://api.github.com/repos/bububa/MongoHub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/bububa/MongoHub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/bububa/MongoHub/teams","hooks_url":"https://api.github.com/repos/bububa/MongoHub/hooks","issue_events_url":"https://api.github.com/repos/bububa/MongoHub/issues/events{/number}","events_url":"https://api.github.com/repos/bububa/MongoHub/events","assignees_url":"https://api.github.com/repos/bububa/MongoHub/assignees{/user}","branches_url":"https://api.github.com/repos/bububa/MongoHub/branches{/branch}","tags_url":"https://api.github.com/repos/bububa/MongoHub/tags","blobs_url":"https://api.github.com/repos/bububa/MongoHub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/bububa/MongoHub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/bububa/MongoHub/git/refs{/sha}","trees_url":"https://api.github.com/repos/bububa/MongoHub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/bububa/MongoHub/statuses/{sha}","languages_url":"https://api.github.com/repos/bububa/MongoHub/languages","stargazers_url":"https://api.github.com/repos/bububa/MongoHub/stargazers","contributors_url":"https://api.github.com/repos/bububa/MongoHub/contributors","subscribers_url":"https://api.github.com/repos/bububa/MongoHub/subscribers","subscription_url":"https://api.github.com/repos/bububa/MongoHub/subscription","commits_url":"https://api.github.com/repos/bububa/MongoHub/commits{/sha}","git_commits_url":"https://api.github.com/repos/bububa/MongoHub/git/commits{/sha}","comments_url":"https://api.github.com/repos/bububa/MongoHub/comments{/number}","issue_comment_url":"https://api.github.com/repos/bububa/MongoHub/issues/comments/{number}","contents_url":"https://api.github.com/repos/bububa/MongoHub/contents/{+path}","compare_url":"https://api.github.com/repos/bububa/MongoHub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/bububa/MongoHub/merges","archive_url":"https://api.github.com/repos/bububa/MongoHub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/bububa/MongoHub/downloads","issues_url":"https://api.github.com/repos/bububa/MongoHub/issues{/number}","pulls_url":"https://api.github.com/repos/bububa/MongoHub/pulls{/number}","milestones_url":"https://api.github.com/repos/bububa/MongoHub/milestones{/number}","notifications_url":"https://api.github.com/repos/bububa/MongoHub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/bububa/MongoHub/labels{/name}","releases_url":"https://api.github.com/repos/bububa/MongoHub/releases{/id}","created_at":"2009-12-07T18:34:33Z","updated_at":"2014-01-15T03:58:25Z","pushed_at":"2009-12-07T18:53:48Z","git_url":"git://github.com/bububa/MongoHub.git","ssh_url":"git@github.com:bububa/MongoHub.git","clone_url":"https://github.com/bububa/MongoHub.git","svn_url":"https://github.com/bububa/MongoHub","homepage":"http://api.appcelerator.net/p/pages/app_page?token=p4jmAb33","size":1194,"stargazers_count":97,"watchers_count":97,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":15,"mirror_url":null,"open_issues_count":2,"forks":15,"open_issues":2,"watchers":97,"default_branch":"master","master_branch":"master","score":6.2510147},{"id":7197654,"name":"imhotep","full_name":"justinabrahms/imhotep","owner":{"login":"justinabrahms","id":3853,"avatar_url":"https://avatars.githubusercontent.com/u/3853","gravatar_id":"bdb15b608b3bf84da98fa55c28ee0362","url":"https://api.github.com/users/justinabrahms","html_url":"https://github.com/justinabrahms","followers_url":"https://api.github.com/users/justinabrahms/followers","following_url":"https://api.github.com/users/justinabrahms/following{/other_user}","gists_url":"https://api.github.com/users/justinabrahms/gists{/gist_id}","starred_url":"https://api.github.com/users/justinabrahms/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/justinabrahms/subscriptions","organizations_url":"https://api.github.com/users/justinabrahms/orgs","repos_url":"https://api.github.com/users/justinabrahms/repos","events_url":"https://api.github.com/users/justinabrahms/events{/privacy}","received_events_url":"https://api.github.com/users/justinabrahms/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/justinabrahms/imhotep","description":"A static-analysis bot for Github","fork":false,"url":"https://api.github.com/repos/justinabrahms/imhotep","forks_url":"https://api.github.com/repos/justinabrahms/imhotep/forks","keys_url":"https://api.github.com/repos/justinabrahms/imhotep/keys{/key_id}","collaborators_url":"https://api.github.com/repos/justinabrahms/imhotep/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/justinabrahms/imhotep/teams","hooks_url":"https://api.github.com/repos/justinabrahms/imhotep/hooks","issue_events_url":"https://api.github.com/repos/justinabrahms/imhotep/issues/events{/number}","events_url":"https://api.github.com/repos/justinabrahms/imhotep/events","assignees_url":"https://api.github.com/repos/justinabrahms/imhotep/assignees{/user}","branches_url":"https://api.github.com/repos/justinabrahms/imhotep/branches{/branch}","tags_url":"https://api.github.com/repos/justinabrahms/imhotep/tags","blobs_url":"https://api.github.com/repos/justinabrahms/imhotep/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/justinabrahms/imhotep/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/justinabrahms/imhotep/git/refs{/sha}","trees_url":"https://api.github.com/repos/justinabrahms/imhotep/git/trees{/sha}","statuses_url":"https://api.github.com/repos/justinabrahms/imhotep/statuses/{sha}","languages_url":"https://api.github.com/repos/justinabrahms/imhotep/languages","stargazers_url":"https://api.github.com/repos/justinabrahms/imhotep/stargazers","contributors_url":"https://api.github.com/repos/justinabrahms/imhotep/contributors","subscribers_url":"https://api.github.com/repos/justinabrahms/imhotep/subscribers","subscription_url":"https://api.github.com/repos/justinabrahms/imhotep/subscription","commits_url":"https://api.github.com/repos/justinabrahms/imhotep/commits{/sha}","git_commits_url":"https://api.github.com/repos/justinabrahms/imhotep/git/commits{/sha}","comments_url":"https://api.github.com/repos/justinabrahms/imhotep/comments{/number}","issue_comment_url":"https://api.github.com/repos/justinabrahms/imhotep/issues/comments/{number}","contents_url":"https://api.github.com/repos/justinabrahms/imhotep/contents/{+path}","compare_url":"https://api.github.com/repos/justinabrahms/imhotep/compare/{base}...{head}","merges_url":"https://api.github.com/repos/justinabrahms/imhotep/merges","archive_url":"https://api.github.com/repos/justinabrahms/imhotep/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/justinabrahms/imhotep/downloads","issues_url":"https://api.github.com/repos/justinabrahms/imhotep/issues{/number}","pulls_url":"https://api.github.com/repos/justinabrahms/imhotep/pulls{/number}","milestones_url":"https://api.github.com/repos/justinabrahms/imhotep/milestones{/number}","notifications_url":"https://api.github.com/repos/justinabrahms/imhotep/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/justinabrahms/imhotep/labels{/name}","releases_url":"https://api.github.com/repos/justinabrahms/imhotep/releases{/id}","created_at":"2012-12-17T01:26:32Z","updated_at":"2014-02-22T20:35:35Z","pushed_at":"2014-02-22T20:35:34Z","git_url":"git://github.com/justinabrahms/imhotep.git","ssh_url":"git@github.com:justinabrahms/imhotep.git","clone_url":"https://github.com/justinabrahms/imhotep.git","svn_url":"https://github.com/justinabrahms/imhotep","homepage":null,"size":1628,"stargazers_count":95,"watchers_count":95,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":11,"mirror_url":null,"open_issues_count":8,"forks":11,"open_issues":8,"watchers":95,"default_branch":"master","master_branch":"master","score":12.920913},{"id":3944100,"name":"ooni-probe","full_name":"TheTorProject/ooni-probe","owner":{"login":"TheTorProject","id":3301912,"avatar_url":"https://avatars.githubusercontent.com/u/3301912","gravatar_id":"11c23a775bfe036e7b0df327cba6d9fc","url":"https://api.github.com/users/TheTorProject","html_url":"https://github.com/TheTorProject","followers_url":"https://api.github.com/users/TheTorProject/followers","following_url":"https://api.github.com/users/TheTorProject/following{/other_user}","gists_url":"https://api.github.com/users/TheTorProject/gists{/gist_id}","starred_url":"https://api.github.com/users/TheTorProject/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/TheTorProject/subscriptions","organizations_url":"https://api.github.com/users/TheTorProject/orgs","repos_url":"https://api.github.com/users/TheTorProject/repos","events_url":"https://api.github.com/users/TheTorProject/events{/privacy}","received_events_url":"https://api.github.com/users/TheTorProject/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/TheTorProject/ooni-probe","description":"github copy of OONI-probe https://gitweb.torproject.org/ooni-probe.git","fork":false,"url":"https://api.github.com/repos/TheTorProject/ooni-probe","forks_url":"https://api.github.com/repos/TheTorProject/ooni-probe/forks","keys_url":"https://api.github.com/repos/TheTorProject/ooni-probe/keys{/key_id}","collaborators_url":"https://api.github.com/repos/TheTorProject/ooni-probe/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/TheTorProject/ooni-probe/teams","hooks_url":"https://api.github.com/repos/TheTorProject/ooni-probe/hooks","issue_events_url":"https://api.github.com/repos/TheTorProject/ooni-probe/issues/events{/number}","events_url":"https://api.github.com/repos/TheTorProject/ooni-probe/events","assignees_url":"https://api.github.com/repos/TheTorProject/ooni-probe/assignees{/user}","branches_url":"https://api.github.com/repos/TheTorProject/ooni-probe/branches{/branch}","tags_url":"https://api.github.com/repos/TheTorProject/ooni-probe/tags","blobs_url":"https://api.github.com/repos/TheTorProject/ooni-probe/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/TheTorProject/ooni-probe/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/TheTorProject/ooni-probe/git/refs{/sha}","trees_url":"https://api.github.com/repos/TheTorProject/ooni-probe/git/trees{/sha}","statuses_url":"https://api.github.com/repos/TheTorProject/ooni-probe/statuses/{sha}","languages_url":"https://api.github.com/repos/TheTorProject/ooni-probe/languages","stargazers_url":"https://api.github.com/repos/TheTorProject/ooni-probe/stargazers","contributors_url":"https://api.github.com/repos/TheTorProject/ooni-probe/contributors","subscribers_url":"https://api.github.com/repos/TheTorProject/ooni-probe/subscribers","subscription_url":"https://api.github.com/repos/TheTorProject/ooni-probe/subscription","commits_url":"https://api.github.com/repos/TheTorProject/ooni-probe/commits{/sha}","git_commits_url":"https://api.github.com/repos/TheTorProject/ooni-probe/git/commits{/sha}","comments_url":"https://api.github.com/repos/TheTorProject/ooni-probe/comments{/number}","issue_comment_url":"https://api.github.com/repos/TheTorProject/ooni-probe/issues/comments/{number}","contents_url":"https://api.github.com/repos/TheTorProject/ooni-probe/contents/{+path}","compare_url":"https://api.github.com/repos/TheTorProject/ooni-probe/compare/{base}...{head}","merges_url":"https://api.github.com/repos/TheTorProject/ooni-probe/merges","archive_url":"https://api.github.com/repos/TheTorProject/ooni-probe/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/TheTorProject/ooni-probe/downloads","issues_url":"https://api.github.com/repos/TheTorProject/ooni-probe/issues{/number}","pulls_url":"https://api.github.com/repos/TheTorProject/ooni-probe/pulls{/number}","milestones_url":"https://api.github.com/repos/TheTorProject/ooni-probe/milestones{/number}","notifications_url":"https://api.github.com/repos/TheTorProject/ooni-probe/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/TheTorProject/ooni-probe/labels{/name}","releases_url":"https://api.github.com/repos/TheTorProject/ooni-probe/releases{/id}","created_at":"2012-04-05T20:59:23Z","updated_at":"2014-03-01T18:02:56Z","pushed_at":"2014-03-01T18:02:55Z","git_url":"git://github.com/TheTorProject/ooni-probe.git","ssh_url":"git@github.com:TheTorProject/ooni-probe.git","clone_url":"https://github.com/TheTorProject/ooni-probe.git","svn_url":"https://github.com/TheTorProject/ooni-probe","homepage":"https://ooni.torproject.org","size":9513,"stargazers_count":92,"watchers_count":92,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":37,"mirror_url":null,"open_issues_count":44,"forks":37,"open_issues":44,"watchers":92,"default_branch":"master","master_branch":"master","score":9.728605},{"id":2284312,"name":"Repos.io","full_name":"twidi/Repos.io","owner":{"login":"twidi","id":193474,"avatar_url":"https://avatars.githubusercontent.com/u/193474","gravatar_id":"4929cd99d0f54b7fa03081f9ab8bb0d4","url":"https://api.github.com/users/twidi","html_url":"https://github.com/twidi","followers_url":"https://api.github.com/users/twidi/followers","following_url":"https://api.github.com/users/twidi/following{/other_user}","gists_url":"https://api.github.com/users/twidi/gists{/gist_id}","starred_url":"https://api.github.com/users/twidi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/twidi/subscriptions","organizations_url":"https://api.github.com/users/twidi/orgs","repos_url":"https://api.github.com/users/twidi/repos","events_url":"https://api.github.com/users/twidi/events{/privacy}","received_events_url":"https://api.github.com/users/twidi/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/twidi/Repos.io","description":"The source code of the Repos.io site, a site to help you manage all your repositories (your own, and watched/liked/followed ones) hosted by different providers (github, bitbucket) ","fork":false,"url":"https://api.github.com/repos/twidi/Repos.io","forks_url":"https://api.github.com/repos/twidi/Repos.io/forks","keys_url":"https://api.github.com/repos/twidi/Repos.io/keys{/key_id}","collaborators_url":"https://api.github.com/repos/twidi/Repos.io/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/twidi/Repos.io/teams","hooks_url":"https://api.github.com/repos/twidi/Repos.io/hooks","issue_events_url":"https://api.github.com/repos/twidi/Repos.io/issues/events{/number}","events_url":"https://api.github.com/repos/twidi/Repos.io/events","assignees_url":"https://api.github.com/repos/twidi/Repos.io/assignees{/user}","branches_url":"https://api.github.com/repos/twidi/Repos.io/branches{/branch}","tags_url":"https://api.github.com/repos/twidi/Repos.io/tags","blobs_url":"https://api.github.com/repos/twidi/Repos.io/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/twidi/Repos.io/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/twidi/Repos.io/git/refs{/sha}","trees_url":"https://api.github.com/repos/twidi/Repos.io/git/trees{/sha}","statuses_url":"https://api.github.com/repos/twidi/Repos.io/statuses/{sha}","languages_url":"https://api.github.com/repos/twidi/Repos.io/languages","stargazers_url":"https://api.github.com/repos/twidi/Repos.io/stargazers","contributors_url":"https://api.github.com/repos/twidi/Repos.io/contributors","subscribers_url":"https://api.github.com/repos/twidi/Repos.io/subscribers","subscription_url":"https://api.github.com/repos/twidi/Repos.io/subscription","commits_url":"https://api.github.com/repos/twidi/Repos.io/commits{/sha}","git_commits_url":"https://api.github.com/repos/twidi/Repos.io/git/commits{/sha}","comments_url":"https://api.github.com/repos/twidi/Repos.io/comments{/number}","issue_comment_url":"https://api.github.com/repos/twidi/Repos.io/issues/comments/{number}","contents_url":"https://api.github.com/repos/twidi/Repos.io/contents/{+path}","compare_url":"https://api.github.com/repos/twidi/Repos.io/compare/{base}...{head}","merges_url":"https://api.github.com/repos/twidi/Repos.io/merges","archive_url":"https://api.github.com/repos/twidi/Repos.io/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/twidi/Repos.io/downloads","issues_url":"https://api.github.com/repos/twidi/Repos.io/issues{/number}","pulls_url":"https://api.github.com/repos/twidi/Repos.io/pulls{/number}","milestones_url":"https://api.github.com/repos/twidi/Repos.io/milestones{/number}","notifications_url":"https://api.github.com/repos/twidi/Repos.io/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/twidi/Repos.io/labels{/name}","releases_url":"https://api.github.com/repos/twidi/Repos.io/releases{/id}","created_at":"2011-08-28T18:05:49Z","updated_at":"2014-01-14T20:24:52Z","pushed_at":"2012-12-11T20:32:13Z","git_url":"git://github.com/twidi/Repos.io.git","ssh_url":"git@github.com:twidi/Repos.io.git","clone_url":"https://github.com/twidi/Repos.io.git","svn_url":"https://github.com/twidi/Repos.io","homepage":"http://repos.io","size":2471,"stargazers_count":92,"watchers_count":92,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":8,"mirror_url":null,"open_issues_count":18,"forks":8,"open_issues":18,"watchers":92,"default_branch":"develop","master_branch":"develop","score":3.960822},{"id":10574482,"name":"docker-ansible","full_name":"cove/docker-ansible","owner":{"login":"cove","id":612300,"avatar_url":"https://avatars.githubusercontent.com/u/612300","gravatar_id":"2d1b3ab8c563c220d681a09395319ace","url":"https://api.github.com/users/cove","html_url":"https://github.com/cove","followers_url":"https://api.github.com/users/cove/followers","following_url":"https://api.github.com/users/cove/following{/other_user}","gists_url":"https://api.github.com/users/cove/gists{/gist_id}","starred_url":"https://api.github.com/users/cove/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cove/subscriptions","organizations_url":"https://api.github.com/users/cove/orgs","repos_url":"https://api.github.com/users/cove/repos","events_url":"https://api.github.com/users/cove/events{/privacy}","received_events_url":"https://api.github.com/users/cove/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/cove/docker-ansible","description":"Ansible module for Docker. Note: This module is now part of Ansible core, please see https://github.com/ansible/ansible.","fork":false,"url":"https://api.github.com/repos/cove/docker-ansible","forks_url":"https://api.github.com/repos/cove/docker-ansible/forks","keys_url":"https://api.github.com/repos/cove/docker-ansible/keys{/key_id}","collaborators_url":"https://api.github.com/repos/cove/docker-ansible/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/cove/docker-ansible/teams","hooks_url":"https://api.github.com/repos/cove/docker-ansible/hooks","issue_events_url":"https://api.github.com/repos/cove/docker-ansible/issues/events{/number}","events_url":"https://api.github.com/repos/cove/docker-ansible/events","assignees_url":"https://api.github.com/repos/cove/docker-ansible/assignees{/user}","branches_url":"https://api.github.com/repos/cove/docker-ansible/branches{/branch}","tags_url":"https://api.github.com/repos/cove/docker-ansible/tags","blobs_url":"https://api.github.com/repos/cove/docker-ansible/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/cove/docker-ansible/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/cove/docker-ansible/git/refs{/sha}","trees_url":"https://api.github.com/repos/cove/docker-ansible/git/trees{/sha}","statuses_url":"https://api.github.com/repos/cove/docker-ansible/statuses/{sha}","languages_url":"https://api.github.com/repos/cove/docker-ansible/languages","stargazers_url":"https://api.github.com/repos/cove/docker-ansible/stargazers","contributors_url":"https://api.github.com/repos/cove/docker-ansible/contributors","subscribers_url":"https://api.github.com/repos/cove/docker-ansible/subscribers","subscription_url":"https://api.github.com/repos/cove/docker-ansible/subscription","commits_url":"https://api.github.com/repos/cove/docker-ansible/commits{/sha}","git_commits_url":"https://api.github.com/repos/cove/docker-ansible/git/commits{/sha}","comments_url":"https://api.github.com/repos/cove/docker-ansible/comments{/number}","issue_comment_url":"https://api.github.com/repos/cove/docker-ansible/issues/comments/{number}","contents_url":"https://api.github.com/repos/cove/docker-ansible/contents/{+path}","compare_url":"https://api.github.com/repos/cove/docker-ansible/compare/{base}...{head}","merges_url":"https://api.github.com/repos/cove/docker-ansible/merges","archive_url":"https://api.github.com/repos/cove/docker-ansible/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/cove/docker-ansible/downloads","issues_url":"https://api.github.com/repos/cove/docker-ansible/issues{/number}","pulls_url":"https://api.github.com/repos/cove/docker-ansible/pulls{/number}","milestones_url":"https://api.github.com/repos/cove/docker-ansible/milestones{/number}","notifications_url":"https://api.github.com/repos/cove/docker-ansible/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/cove/docker-ansible/labels{/name}","releases_url":"https://api.github.com/repos/cove/docker-ansible/releases{/id}","created_at":"2013-06-08T21:26:20Z","updated_at":"2014-01-16T10:51:36Z","pushed_at":"2013-11-17T00:20:57Z","git_url":"git://github.com/cove/docker-ansible.git","ssh_url":"git@github.com:cove/docker-ansible.git","clone_url":"https://github.com/cove/docker-ansible.git","svn_url":"https://github.com/cove/docker-ansible","homepage":"","size":316,"stargazers_count":100,"watchers_count":100,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":16,"mirror_url":null,"open_issues_count":0,"forks":16,"open_issues":0,"watchers":100,"default_branch":"master","master_branch":"master","score":7.451908},{"id":865573,"name":"snipt-old","full_name":"nicksergeant/snipt-old","owner":{"login":"nicksergeant","id":27332,"avatar_url":"https://avatars.githubusercontent.com/u/27332","gravatar_id":"a74159ce0c29f89b75a25037e40b27a4","url":"https://api.github.com/users/nicksergeant","html_url":"https://github.com/nicksergeant","followers_url":"https://api.github.com/users/nicksergeant/followers","following_url":"https://api.github.com/users/nicksergeant/following{/other_user}","gists_url":"https://api.github.com/users/nicksergeant/gists{/gist_id}","starred_url":"https://api.github.com/users/nicksergeant/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nicksergeant/subscriptions","organizations_url":"https://api.github.com/users/nicksergeant/orgs","repos_url":"https://api.github.com/users/nicksergeant/repos","events_url":"https://api.github.com/users/nicksergeant/events{/privacy}","received_events_url":"https://api.github.com/users/nicksergeant/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/nicksergeant/snipt-old","description":"The old codebase for Snipt.net. You probably don't want this. Head to https://github.com/nicksergeant/snipt instead.","fork":false,"url":"https://api.github.com/repos/nicksergeant/snipt-old","forks_url":"https://api.github.com/repos/nicksergeant/snipt-old/forks","keys_url":"https://api.github.com/repos/nicksergeant/snipt-old/keys{/key_id}","collaborators_url":"https://api.github.com/repos/nicksergeant/snipt-old/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/nicksergeant/snipt-old/teams","hooks_url":"https://api.github.com/repos/nicksergeant/snipt-old/hooks","issue_events_url":"https://api.github.com/repos/nicksergeant/snipt-old/issues/events{/number}","events_url":"https://api.github.com/repos/nicksergeant/snipt-old/events","assignees_url":"https://api.github.com/repos/nicksergeant/snipt-old/assignees{/user}","branches_url":"https://api.github.com/repos/nicksergeant/snipt-old/branches{/branch}","tags_url":"https://api.github.com/repos/nicksergeant/snipt-old/tags","blobs_url":"https://api.github.com/repos/nicksergeant/snipt-old/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/nicksergeant/snipt-old/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/nicksergeant/snipt-old/git/refs{/sha}","trees_url":"https://api.github.com/repos/nicksergeant/snipt-old/git/trees{/sha}","statuses_url":"https://api.github.com/repos/nicksergeant/snipt-old/statuses/{sha}","languages_url":"https://api.github.com/repos/nicksergeant/snipt-old/languages","stargazers_url":"https://api.github.com/repos/nicksergeant/snipt-old/stargazers","contributors_url":"https://api.github.com/repos/nicksergeant/snipt-old/contributors","subscribers_url":"https://api.github.com/repos/nicksergeant/snipt-old/subscribers","subscription_url":"https://api.github.com/repos/nicksergeant/snipt-old/subscription","commits_url":"https://api.github.com/repos/nicksergeant/snipt-old/commits{/sha}","git_commits_url":"https://api.github.com/repos/nicksergeant/snipt-old/git/commits{/sha}","comments_url":"https://api.github.com/repos/nicksergeant/snipt-old/comments{/number}","issue_comment_url":"https://api.github.com/repos/nicksergeant/snipt-old/issues/comments/{number}","contents_url":"https://api.github.com/repos/nicksergeant/snipt-old/contents/{+path}","compare_url":"https://api.github.com/repos/nicksergeant/snipt-old/compare/{base}...{head}","merges_url":"https://api.github.com/repos/nicksergeant/snipt-old/merges","archive_url":"https://api.github.com/repos/nicksergeant/snipt-old/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/nicksergeant/snipt-old/downloads","issues_url":"https://api.github.com/repos/nicksergeant/snipt-old/issues{/number}","pulls_url":"https://api.github.com/repos/nicksergeant/snipt-old/pulls{/number}","milestones_url":"https://api.github.com/repos/nicksergeant/snipt-old/milestones{/number}","notifications_url":"https://api.github.com/repos/nicksergeant/snipt-old/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/nicksergeant/snipt-old/labels{/name}","releases_url":"https://api.github.com/repos/nicksergeant/snipt-old/releases{/id}","created_at":"2010-08-27T04:04:35Z","updated_at":"2013-11-13T18:32:02Z","pushed_at":"2012-09-19T00:09:48Z","git_url":"git://github.com/nicksergeant/snipt-old.git","ssh_url":"git@github.com:nicksergeant/snipt-old.git","clone_url":"https://github.com/nicksergeant/snipt-old.git","svn_url":"https://github.com/nicksergeant/snipt-old","homepage":"https://snipt.net","size":670,"stargazers_count":88,"watchers_count":88,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"forks_count":7,"mirror_url":null,"open_issues_count":0,"forks":7,"open_issues":0,"watchers":88,"default_branch":"master","master_branch":"master","score":5.22918},{"id":688960,"name":"django-class-based-views","full_name":"bfirsh/django-class-based-views","owner":{"login":"bfirsh","id":40906,"avatar_url":"https://avatars.githubusercontent.com/u/40906","gravatar_id":"011ce2693e5feec652d9ff2cc1b90d15","url":"https://api.github.com/users/bfirsh","html_url":"https://github.com/bfirsh","followers_url":"https://api.github.com/users/bfirsh/followers","following_url":"https://api.github.com/users/bfirsh/following{/other_user}","gists_url":"https://api.github.com/users/bfirsh/gists{/gist_id}","starred_url":"https://api.github.com/users/bfirsh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bfirsh/subscriptions","organizations_url":"https://api.github.com/users/bfirsh/orgs","repos_url":"https://api.github.com/users/bfirsh/repos","events_url":"https://api.github.com/users/bfirsh/events{/privacy}","received_events_url":"https://api.github.com/users/bfirsh/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/bfirsh/django-class-based-views","description":"Work on class-based views, now part of Django 1.3. For a backport to Django 1.2, see https://github.com/sorl/django-cbv","fork":false,"url":"https://api.github.com/repos/bfirsh/django-class-based-views","forks_url":"https://api.github.com/repos/bfirsh/django-class-based-views/forks","keys_url":"https://api.github.com/repos/bfirsh/django-class-based-views/keys{/key_id}","collaborators_url":"https://api.github.com/repos/bfirsh/django-class-based-views/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/bfirsh/django-class-based-views/teams","hooks_url":"https://api.github.com/repos/bfirsh/django-class-based-views/hooks","issue_events_url":"https://api.github.com/repos/bfirsh/django-class-based-views/issues/events{/number}","events_url":"https://api.github.com/repos/bfirsh/django-class-based-views/events","assignees_url":"https://api.github.com/repos/bfirsh/django-class-based-views/assignees{/user}","branches_url":"https://api.github.com/repos/bfirsh/django-class-based-views/branches{/branch}","tags_url":"https://api.github.com/repos/bfirsh/django-class-based-views/tags","blobs_url":"https://api.github.com/repos/bfirsh/django-class-based-views/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/bfirsh/django-class-based-views/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/bfirsh/django-class-based-views/git/refs{/sha}","trees_url":"https://api.github.com/repos/bfirsh/django-class-based-views/git/trees{/sha}","statuses_url":"https://api.github.com/repos/bfirsh/django-class-based-views/statuses/{sha}","languages_url":"https://api.github.com/repos/bfirsh/django-class-based-views/languages","stargazers_url":"https://api.github.com/repos/bfirsh/django-class-based-views/stargazers","contributors_url":"https://api.github.com/repos/bfirsh/django-class-based-views/contributors","subscribers_url":"https://api.github.com/repos/bfirsh/django-class-based-views/subscribers","subscription_url":"https://api.github.com/repos/bfirsh/django-class-based-views/subscription","commits_url":"https://api.github.com/repos/bfirsh/django-class-based-views/commits{/sha}","git_commits_url":"https://api.github.com/repos/bfirsh/django-class-based-views/git/commits{/sha}","comments_url":"https://api.github.com/repos/bfirsh/django-class-based-views/comments{/number}","issue_comment_url":"https://api.github.com/repos/bfirsh/django-class-based-views/issues/comments/{number}","contents_url":"https://api.github.com/repos/bfirsh/django-class-based-views/contents/{+path}","compare_url":"https://api.github.com/repos/bfirsh/django-class-based-views/compare/{base}...{head}","merges_url":"https://api.github.com/repos/bfirsh/django-class-based-views/merges","archive_url":"https://api.github.com/repos/bfirsh/django-class-based-views/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/bfirsh/django-class-based-views/downloads","issues_url":"https://api.github.com/repos/bfirsh/django-class-based-views/issues{/number}","pulls_url":"https://api.github.com/repos/bfirsh/django-class-based-views/pulls{/number}","milestones_url":"https://api.github.com/repos/bfirsh/django-class-based-views/milestones{/number}","notifications_url":"https://api.github.com/repos/bfirsh/django-class-based-views/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/bfirsh/django-class-based-views/labels{/name}","releases_url":"https://api.github.com/repos/bfirsh/django-class-based-views/releases{/id}","created_at":"2010-05-27T09:41:08Z","updated_at":"2013-10-09T07:00:13Z","pushed_at":"2010-10-12T22:37:43Z","git_url":"git://github.com/bfirsh/django-class-based-views.git","ssh_url":"git@github.com:bfirsh/django-class-based-views.git","clone_url":"https://github.com/bfirsh/django-class-based-views.git","svn_url":"https://github.com/bfirsh/django-class-based-views","homepage":"http://code.djangoproject.com/ticket/6735","size":146,"stargazers_count":82,"watchers_count":82,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":9,"mirror_url":null,"open_issues_count":2,"forks":9,"open_issues":2,"watchers":82,"default_branch":"master","master_branch":"master","score":5.0480146},{"id":1573719,"name":"python-github3","full_name":"kennethreitz-archive/python-github3","owner":{"login":"kennethreitz-archive","id":2083354,"avatar_url":"https://avatars.githubusercontent.com/u/2083354","gravatar_id":"39004cc26cddad79ad533e8d12766f5c","url":"https://api.github.com/users/kennethreitz-archive","html_url":"https://github.com/kennethreitz-archive","followers_url":"https://api.github.com/users/kennethreitz-archive/followers","following_url":"https://api.github.com/users/kennethreitz-archive/following{/other_user}","gists_url":"https://api.github.com/users/kennethreitz-archive/gists{/gist_id}","starred_url":"https://api.github.com/users/kennethreitz-archive/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kennethreitz-archive/subscriptions","organizations_url":"https://api.github.com/users/kennethreitz-archive/orgs","repos_url":"https://api.github.com/users/kennethreitz-archive/repos","events_url":"https://api.github.com/users/kennethreitz-archive/events{/privacy}","received_events_url":"https://api.github.com/users/kennethreitz-archive/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/kennethreitz-archive/python-github3","description":"[In Progress] Python wrapper for the new GitHub API.","fork":false,"url":"https://api.github.com/repos/kennethreitz-archive/python-github3","forks_url":"https://api.github.com/repos/kennethreitz-archive/python-github3/forks","keys_url":"https://api.github.com/repos/kennethreitz-archive/python-github3/keys{/key_id}","collaborators_url":"https://api.github.com/repos/kennethreitz-archive/python-github3/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/kennethreitz-archive/python-github3/teams","hooks_url":"https://api.github.com/repos/kennethreitz-archive/python-github3/hooks","issue_events_url":"https://api.github.com/repos/kennethreitz-archive/python-github3/issues/events{/number}","events_url":"https://api.github.com/repos/kennethreitz-archive/python-github3/events","assignees_url":"https://api.github.com/repos/kennethreitz-archive/python-github3/assignees{/user}","branches_url":"https://api.github.com/repos/kennethreitz-archive/python-github3/branches{/branch}","tags_url":"https://api.github.com/repos/kennethreitz-archive/python-github3/tags","blobs_url":"https://api.github.com/repos/kennethreitz-archive/python-github3/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/kennethreitz-archive/python-github3/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/kennethreitz-archive/python-github3/git/refs{/sha}","trees_url":"https://api.github.com/repos/kennethreitz-archive/python-github3/git/trees{/sha}","statuses_url":"https://api.github.com/repos/kennethreitz-archive/python-github3/statuses/{sha}","languages_url":"https://api.github.com/repos/kennethreitz-archive/python-github3/languages","stargazers_url":"https://api.github.com/repos/kennethreitz-archive/python-github3/stargazers","contributors_url":"https://api.github.com/repos/kennethreitz-archive/python-github3/contributors","subscribers_url":"https://api.github.com/repos/kennethreitz-archive/python-github3/subscribers","subscription_url":"https://api.github.com/repos/kennethreitz-archive/python-github3/subscription","commits_url":"https://api.github.com/repos/kennethreitz-archive/python-github3/commits{/sha}","git_commits_url":"https://api.github.com/repos/kennethreitz-archive/python-github3/git/commits{/sha}","comments_url":"https://api.github.com/repos/kennethreitz-archive/python-github3/comments{/number}","issue_comment_url":"https://api.github.com/repos/kennethreitz-archive/python-github3/issues/comments/{number}","contents_url":"https://api.github.com/repos/kennethreitz-archive/python-github3/contents/{+path}","compare_url":"https://api.github.com/repos/kennethreitz-archive/python-github3/compare/{base}...{head}","merges_url":"https://api.github.com/repos/kennethreitz-archive/python-github3/merges","archive_url":"https://api.github.com/repos/kennethreitz-archive/python-github3/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/kennethreitz-archive/python-github3/downloads","issues_url":"https://api.github.com/repos/kennethreitz-archive/python-github3/issues{/number}","pulls_url":"https://api.github.com/repos/kennethreitz-archive/python-github3/pulls{/number}","milestones_url":"https://api.github.com/repos/kennethreitz-archive/python-github3/milestones{/number}","notifications_url":"https://api.github.com/repos/kennethreitz-archive/python-github3/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/kennethreitz-archive/python-github3/labels{/name}","releases_url":"https://api.github.com/repos/kennethreitz-archive/python-github3/releases{/id}","created_at":"2011-04-05T19:54:24Z","updated_at":"2014-01-06T07:29:11Z","pushed_at":"2011-12-27T04:39:43Z","git_url":"git://github.com/kennethreitz-archive/python-github3.git","ssh_url":"git@github.com:kennethreitz-archive/python-github3.git","clone_url":"https://github.com/kennethreitz-archive/python-github3.git","svn_url":"https://github.com/kennethreitz-archive/python-github3","homepage":"developer.github.com/v3","size":181,"stargazers_count":80,"watchers_count":80,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":52,"mirror_url":null,"open_issues_count":1,"forks":52,"open_issues":1,"watchers":80,"default_branch":"master","master_branch":"master","score":21.971436},{"id":178899,"name":"github-tools","full_name":"dinoboff/github-tools","owner":{"login":"dinoboff","id":6830,"avatar_url":"https://avatars.githubusercontent.com/u/6830","gravatar_id":"16ceb28d7e6867f78e92c3b82ac01b48","url":"https://api.github.com/users/dinoboff","html_url":"https://github.com/dinoboff","followers_url":"https://api.github.com/users/dinoboff/followers","following_url":"https://api.github.com/users/dinoboff/following{/other_user}","gists_url":"https://api.github.com/users/dinoboff/gists{/gist_id}","starred_url":"https://api.github.com/users/dinoboff/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dinoboff/subscriptions","organizations_url":"https://api.github.com/users/dinoboff/orgs","repos_url":"https://api.github.com/users/dinoboff/repos","events_url":"https://api.github.com/users/dinoboff/events{/privacy}","received_events_url":"https://api.github.com/users/dinoboff/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/dinoboff/github-tools","description":"Helpers for hosting python projects on GitHub","fork":false,"url":"https://api.github.com/repos/dinoboff/github-tools","forks_url":"https://api.github.com/repos/dinoboff/github-tools/forks","keys_url":"https://api.github.com/repos/dinoboff/github-tools/keys{/key_id}","collaborators_url":"https://api.github.com/repos/dinoboff/github-tools/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/dinoboff/github-tools/teams","hooks_url":"https://api.github.com/repos/dinoboff/github-tools/hooks","issue_events_url":"https://api.github.com/repos/dinoboff/github-tools/issues/events{/number}","events_url":"https://api.github.com/repos/dinoboff/github-tools/events","assignees_url":"https://api.github.com/repos/dinoboff/github-tools/assignees{/user}","branches_url":"https://api.github.com/repos/dinoboff/github-tools/branches{/branch}","tags_url":"https://api.github.com/repos/dinoboff/github-tools/tags","blobs_url":"https://api.github.com/repos/dinoboff/github-tools/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/dinoboff/github-tools/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/dinoboff/github-tools/git/refs{/sha}","trees_url":"https://api.github.com/repos/dinoboff/github-tools/git/trees{/sha}","statuses_url":"https://api.github.com/repos/dinoboff/github-tools/statuses/{sha}","languages_url":"https://api.github.com/repos/dinoboff/github-tools/languages","stargazers_url":"https://api.github.com/repos/dinoboff/github-tools/stargazers","contributors_url":"https://api.github.com/repos/dinoboff/github-tools/contributors","subscribers_url":"https://api.github.com/repos/dinoboff/github-tools/subscribers","subscription_url":"https://api.github.com/repos/dinoboff/github-tools/subscription","commits_url":"https://api.github.com/repos/dinoboff/github-tools/commits{/sha}","git_commits_url":"https://api.github.com/repos/dinoboff/github-tools/git/commits{/sha}","comments_url":"https://api.github.com/repos/dinoboff/github-tools/comments{/number}","issue_comment_url":"https://api.github.com/repos/dinoboff/github-tools/issues/comments/{number}","contents_url":"https://api.github.com/repos/dinoboff/github-tools/contents/{+path}","compare_url":"https://api.github.com/repos/dinoboff/github-tools/compare/{base}...{head}","merges_url":"https://api.github.com/repos/dinoboff/github-tools/merges","archive_url":"https://api.github.com/repos/dinoboff/github-tools/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/dinoboff/github-tools/downloads","issues_url":"https://api.github.com/repos/dinoboff/github-tools/issues{/number}","pulls_url":"https://api.github.com/repos/dinoboff/github-tools/pulls{/number}","milestones_url":"https://api.github.com/repos/dinoboff/github-tools/milestones{/number}","notifications_url":"https://api.github.com/repos/dinoboff/github-tools/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/dinoboff/github-tools/labels{/name}","releases_url":"https://api.github.com/repos/dinoboff/github-tools/releases{/id}","created_at":"2009-04-17T22:01:03Z","updated_at":"2013-10-31T08:20:36Z","pushed_at":"2011-09-29T09:10:26Z","git_url":"git://github.com/dinoboff/github-tools.git","ssh_url":"git@github.com:dinoboff/github-tools.git","clone_url":"https://github.com/dinoboff/github-tools.git","svn_url":"https://github.com/dinoboff/github-tools","homepage":"http://dinoboff.github.com/github-tools/","size":483,"stargazers_count":79,"watchers_count":79,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"forks_count":5,"mirror_url":null,"open_issues_count":2,"forks":5,"open_issues":2,"watchers":79,"default_branch":"master","master_branch":"master","score":11.083623},{"id":2985492,"name":"bugwarrior","full_name":"ralphbean/bugwarrior","owner":{"login":"ralphbean","id":331338,"avatar_url":"https://avatars.githubusercontent.com/u/331338","gravatar_id":"ba940b433c2695635d32d2c4aec00540","url":"https://api.github.com/users/ralphbean","html_url":"https://github.com/ralphbean","followers_url":"https://api.github.com/users/ralphbean/followers","following_url":"https://api.github.com/users/ralphbean/following{/other_user}","gists_url":"https://api.github.com/users/ralphbean/gists{/gist_id}","starred_url":"https://api.github.com/users/ralphbean/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ralphbean/subscriptions","organizations_url":"https://api.github.com/users/ralphbean/orgs","repos_url":"https://api.github.com/users/ralphbean/repos","events_url":"https://api.github.com/users/ralphbean/events{/privacy}","received_events_url":"https://api.github.com/users/ralphbean/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/ralphbean/bugwarrior","description":"Pull github, bitbucket, and trac issues into taskwarrior","fork":false,"url":"https://api.github.com/repos/ralphbean/bugwarrior","forks_url":"https://api.github.com/repos/ralphbean/bugwarrior/forks","keys_url":"https://api.github.com/repos/ralphbean/bugwarrior/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ralphbean/bugwarrior/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ralphbean/bugwarrior/teams","hooks_url":"https://api.github.com/repos/ralphbean/bugwarrior/hooks","issue_events_url":"https://api.github.com/repos/ralphbean/bugwarrior/issues/events{/number}","events_url":"https://api.github.com/repos/ralphbean/bugwarrior/events","assignees_url":"https://api.github.com/repos/ralphbean/bugwarrior/assignees{/user}","branches_url":"https://api.github.com/repos/ralphbean/bugwarrior/branches{/branch}","tags_url":"https://api.github.com/repos/ralphbean/bugwarrior/tags","blobs_url":"https://api.github.com/repos/ralphbean/bugwarrior/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ralphbean/bugwarrior/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ralphbean/bugwarrior/git/refs{/sha}","trees_url":"https://api.github.com/repos/ralphbean/bugwarrior/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ralphbean/bugwarrior/statuses/{sha}","languages_url":"https://api.github.com/repos/ralphbean/bugwarrior/languages","stargazers_url":"https://api.github.com/repos/ralphbean/bugwarrior/stargazers","contributors_url":"https://api.github.com/repos/ralphbean/bugwarrior/contributors","subscribers_url":"https://api.github.com/repos/ralphbean/bugwarrior/subscribers","subscription_url":"https://api.github.com/repos/ralphbean/bugwarrior/subscription","commits_url":"https://api.github.com/repos/ralphbean/bugwarrior/commits{/sha}","git_commits_url":"https://api.github.com/repos/ralphbean/bugwarrior/git/commits{/sha}","comments_url":"https://api.github.com/repos/ralphbean/bugwarrior/comments{/number}","issue_comment_url":"https://api.github.com/repos/ralphbean/bugwarrior/issues/comments/{number}","contents_url":"https://api.github.com/repos/ralphbean/bugwarrior/contents/{+path}","compare_url":"https://api.github.com/repos/ralphbean/bugwarrior/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ralphbean/bugwarrior/merges","archive_url":"https://api.github.com/repos/ralphbean/bugwarrior/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ralphbean/bugwarrior/downloads","issues_url":"https://api.github.com/repos/ralphbean/bugwarrior/issues{/number}","pulls_url":"https://api.github.com/repos/ralphbean/bugwarrior/pulls{/number}","milestones_url":"https://api.github.com/repos/ralphbean/bugwarrior/milestones{/number}","notifications_url":"https://api.github.com/repos/ralphbean/bugwarrior/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ralphbean/bugwarrior/labels{/name}","releases_url":"https://api.github.com/repos/ralphbean/bugwarrior/releases{/id}","created_at":"2011-12-15T05:02:33Z","updated_at":"2014-02-14T19:44:10Z","pushed_at":"2014-02-14T19:44:09Z","git_url":"git://github.com/ralphbean/bugwarrior.git","ssh_url":"git@github.com:ralphbean/bugwarrior.git","clone_url":"https://github.com/ralphbean/bugwarrior.git","svn_url":"https://github.com/ralphbean/bugwarrior","homepage":"http://pypi.python.org/pypi/bugwarrior","size":766,"stargazers_count":82,"watchers_count":82,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":27,"mirror_url":null,"open_issues_count":14,"forks":27,"open_issues":14,"watchers":82,"default_branch":"develop","master_branch":"develop","score":12.610705},{"id":9423725,"name":"github-network-analysis","full_name":"coyotebush/github-network-analysis","owner":{"login":"coyotebush","id":227091,"avatar_url":"https://avatars.githubusercontent.com/u/227091","gravatar_id":"c6d20de3d11eaaad7278a76dc25296a4","url":"https://api.github.com/users/coyotebush","html_url":"https://github.com/coyotebush","followers_url":"https://api.github.com/users/coyotebush/followers","following_url":"https://api.github.com/users/coyotebush/following{/other_user}","gists_url":"https://api.github.com/users/coyotebush/gists{/gist_id}","starred_url":"https://api.github.com/users/coyotebush/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/coyotebush/subscriptions","organizations_url":"https://api.github.com/users/coyotebush/orgs","repos_url":"https://api.github.com/users/coyotebush/repos","events_url":"https://api.github.com/users/coyotebush/events{/privacy}","received_events_url":"https://api.github.com/users/coyotebush/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/coyotebush/github-network-analysis","description":"Analysis and visualization of top GitHub repositories","fork":false,"url":"https://api.github.com/repos/coyotebush/github-network-analysis","forks_url":"https://api.github.com/repos/coyotebush/github-network-analysis/forks","keys_url":"https://api.github.com/repos/coyotebush/github-network-analysis/keys{/key_id}","collaborators_url":"https://api.github.com/repos/coyotebush/github-network-analysis/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/coyotebush/github-network-analysis/teams","hooks_url":"https://api.github.com/repos/coyotebush/github-network-analysis/hooks","issue_events_url":"https://api.github.com/repos/coyotebush/github-network-analysis/issues/events{/number}","events_url":"https://api.github.com/repos/coyotebush/github-network-analysis/events","assignees_url":"https://api.github.com/repos/coyotebush/github-network-analysis/assignees{/user}","branches_url":"https://api.github.com/repos/coyotebush/github-network-analysis/branches{/branch}","tags_url":"https://api.github.com/repos/coyotebush/github-network-analysis/tags","blobs_url":"https://api.github.com/repos/coyotebush/github-network-analysis/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/coyotebush/github-network-analysis/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/coyotebush/github-network-analysis/git/refs{/sha}","trees_url":"https://api.github.com/repos/coyotebush/github-network-analysis/git/trees{/sha}","statuses_url":"https://api.github.com/repos/coyotebush/github-network-analysis/statuses/{sha}","languages_url":"https://api.github.com/repos/coyotebush/github-network-analysis/languages","stargazers_url":"https://api.github.com/repos/coyotebush/github-network-analysis/stargazers","contributors_url":"https://api.github.com/repos/coyotebush/github-network-analysis/contributors","subscribers_url":"https://api.github.com/repos/coyotebush/github-network-analysis/subscribers","subscription_url":"https://api.github.com/repos/coyotebush/github-network-analysis/subscription","commits_url":"https://api.github.com/repos/coyotebush/github-network-analysis/commits{/sha}","git_commits_url":"https://api.github.com/repos/coyotebush/github-network-analysis/git/commits{/sha}","comments_url":"https://api.github.com/repos/coyotebush/github-network-analysis/comments{/number}","issue_comment_url":"https://api.github.com/repos/coyotebush/github-network-analysis/issues/comments/{number}","contents_url":"https://api.github.com/repos/coyotebush/github-network-analysis/contents/{+path}","compare_url":"https://api.github.com/repos/coyotebush/github-network-analysis/compare/{base}...{head}","merges_url":"https://api.github.com/repos/coyotebush/github-network-analysis/merges","archive_url":"https://api.github.com/repos/coyotebush/github-network-analysis/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/coyotebush/github-network-analysis/downloads","issues_url":"https://api.github.com/repos/coyotebush/github-network-analysis/issues{/number}","pulls_url":"https://api.github.com/repos/coyotebush/github-network-analysis/pulls{/number}","milestones_url":"https://api.github.com/repos/coyotebush/github-network-analysis/milestones{/number}","notifications_url":"https://api.github.com/repos/coyotebush/github-network-analysis/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/coyotebush/github-network-analysis/labels{/name}","releases_url":"https://api.github.com/repos/coyotebush/github-network-analysis/releases{/id}","created_at":"2013-04-14T03:10:15Z","updated_at":"2013-12-31T03:55:51Z","pushed_at":"2013-05-06T18:32:33Z","git_url":"git://github.com/coyotebush/github-network-analysis.git","ssh_url":"git@github.com:coyotebush/github-network-analysis.git","clone_url":"https://github.com/coyotebush/github-network-analysis.git","svn_url":"https://github.com/coyotebush/github-network-analysis","homepage":"http://coyotebush.github.io/github-network-analysis/","size":2321,"stargazers_count":75,"watchers_count":75,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":4,"mirror_url":null,"open_issues_count":2,"forks":4,"open_issues":2,"watchers":75,"default_branch":"master","master_branch":"master","score":7.5912576},{"id":185554,"name":"python-gearman","full_name":"samuel/python-gearman","owner":{"login":"samuel","id":8503,"avatar_url":"https://avatars.githubusercontent.com/u/8503","gravatar_id":"f9aaf4c4a1728ef0f36a7f43c3e4e3e9","url":"https://api.github.com/users/samuel","html_url":"https://github.com/samuel","followers_url":"https://api.github.com/users/samuel/followers","following_url":"https://api.github.com/users/samuel/following{/other_user}","gists_url":"https://api.github.com/users/samuel/gists{/gist_id}","starred_url":"https://api.github.com/users/samuel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/samuel/subscriptions","organizations_url":"https://api.github.com/users/samuel/orgs","repos_url":"https://api.github.com/users/samuel/repos","events_url":"https://api.github.com/users/samuel/events{/privacy}","received_events_url":"https://api.github.com/users/samuel/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/samuel/python-gearman","description":"(maintenance transfered to http://github.com/Yelp/python-gearman) Gearman library for Python.","fork":false,"url":"https://api.github.com/repos/samuel/python-gearman","forks_url":"https://api.github.com/repos/samuel/python-gearman/forks","keys_url":"https://api.github.com/repos/samuel/python-gearman/keys{/key_id}","collaborators_url":"https://api.github.com/repos/samuel/python-gearman/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/samuel/python-gearman/teams","hooks_url":"https://api.github.com/repos/samuel/python-gearman/hooks","issue_events_url":"https://api.github.com/repos/samuel/python-gearman/issues/events{/number}","events_url":"https://api.github.com/repos/samuel/python-gearman/events","assignees_url":"https://api.github.com/repos/samuel/python-gearman/assignees{/user}","branches_url":"https://api.github.com/repos/samuel/python-gearman/branches{/branch}","tags_url":"https://api.github.com/repos/samuel/python-gearman/tags","blobs_url":"https://api.github.com/repos/samuel/python-gearman/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/samuel/python-gearman/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/samuel/python-gearman/git/refs{/sha}","trees_url":"https://api.github.com/repos/samuel/python-gearman/git/trees{/sha}","statuses_url":"https://api.github.com/repos/samuel/python-gearman/statuses/{sha}","languages_url":"https://api.github.com/repos/samuel/python-gearman/languages","stargazers_url":"https://api.github.com/repos/samuel/python-gearman/stargazers","contributors_url":"https://api.github.com/repos/samuel/python-gearman/contributors","subscribers_url":"https://api.github.com/repos/samuel/python-gearman/subscribers","subscription_url":"https://api.github.com/repos/samuel/python-gearman/subscription","commits_url":"https://api.github.com/repos/samuel/python-gearman/commits{/sha}","git_commits_url":"https://api.github.com/repos/samuel/python-gearman/git/commits{/sha}","comments_url":"https://api.github.com/repos/samuel/python-gearman/comments{/number}","issue_comment_url":"https://api.github.com/repos/samuel/python-gearman/issues/comments/{number}","contents_url":"https://api.github.com/repos/samuel/python-gearman/contents/{+path}","compare_url":"https://api.github.com/repos/samuel/python-gearman/compare/{base}...{head}","merges_url":"https://api.github.com/repos/samuel/python-gearman/merges","archive_url":"https://api.github.com/repos/samuel/python-gearman/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/samuel/python-gearman/downloads","issues_url":"https://api.github.com/repos/samuel/python-gearman/issues{/number}","pulls_url":"https://api.github.com/repos/samuel/python-gearman/pulls{/number}","milestones_url":"https://api.github.com/repos/samuel/python-gearman/milestones{/number}","notifications_url":"https://api.github.com/repos/samuel/python-gearman/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/samuel/python-gearman/labels{/name}","releases_url":"https://api.github.com/repos/samuel/python-gearman/releases{/id}","created_at":"2009-04-25T19:25:43Z","updated_at":"2013-12-18T01:26:25Z","pushed_at":"2012-09-07T17:14:37Z","git_url":"git://github.com/samuel/python-gearman.git","ssh_url":"git@github.com:samuel/python-gearman.git","clone_url":"https://github.com/samuel/python-gearman.git","svn_url":"https://github.com/samuel/python-gearman","homepage":"http://github.com/mtai/python-gearman","size":188,"stargazers_count":75,"watchers_count":75,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":17,"mirror_url":null,"open_issues_count":0,"forks":17,"open_issues":0,"watchers":75,"default_branch":"master","master_branch":"master","score":7.3417816},{"id":185320,"name":"sphinx-to-github","full_name":"michaeljones/sphinx-to-github","owner":{"login":"michaeljones","id":5390,"avatar_url":"https://avatars.githubusercontent.com/u/5390","gravatar_id":"f5cdf7d9c554d8dcfbe9c2c83bccb8a9","url":"https://api.github.com/users/michaeljones","html_url":"https://github.com/michaeljones","followers_url":"https://api.github.com/users/michaeljones/followers","following_url":"https://api.github.com/users/michaeljones/following{/other_user}","gists_url":"https://api.github.com/users/michaeljones/gists{/gist_id}","starred_url":"https://api.github.com/users/michaeljones/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/michaeljones/subscriptions","organizations_url":"https://api.github.com/users/michaeljones/orgs","repos_url":"https://api.github.com/users/michaeljones/repos","events_url":"https://api.github.com/users/michaeljones/events{/privacy}","received_events_url":"https://api.github.com/users/michaeljones/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/michaeljones/sphinx-to-github","description":"Script to prepare Sphinx html output for github pages.","fork":false,"url":"https://api.github.com/repos/michaeljones/sphinx-to-github","forks_url":"https://api.github.com/repos/michaeljones/sphinx-to-github/forks","keys_url":"https://api.github.com/repos/michaeljones/sphinx-to-github/keys{/key_id}","collaborators_url":"https://api.github.com/repos/michaeljones/sphinx-to-github/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/michaeljones/sphinx-to-github/teams","hooks_url":"https://api.github.com/repos/michaeljones/sphinx-to-github/hooks","issue_events_url":"https://api.github.com/repos/michaeljones/sphinx-to-github/issues/events{/number}","events_url":"https://api.github.com/repos/michaeljones/sphinx-to-github/events","assignees_url":"https://api.github.com/repos/michaeljones/sphinx-to-github/assignees{/user}","branches_url":"https://api.github.com/repos/michaeljones/sphinx-to-github/branches{/branch}","tags_url":"https://api.github.com/repos/michaeljones/sphinx-to-github/tags","blobs_url":"https://api.github.com/repos/michaeljones/sphinx-to-github/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/michaeljones/sphinx-to-github/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/michaeljones/sphinx-to-github/git/refs{/sha}","trees_url":"https://api.github.com/repos/michaeljones/sphinx-to-github/git/trees{/sha}","statuses_url":"https://api.github.com/repos/michaeljones/sphinx-to-github/statuses/{sha}","languages_url":"https://api.github.com/repos/michaeljones/sphinx-to-github/languages","stargazers_url":"https://api.github.com/repos/michaeljones/sphinx-to-github/stargazers","contributors_url":"https://api.github.com/repos/michaeljones/sphinx-to-github/contributors","subscribers_url":"https://api.github.com/repos/michaeljones/sphinx-to-github/subscribers","subscription_url":"https://api.github.com/repos/michaeljones/sphinx-to-github/subscription","commits_url":"https://api.github.com/repos/michaeljones/sphinx-to-github/commits{/sha}","git_commits_url":"https://api.github.com/repos/michaeljones/sphinx-to-github/git/commits{/sha}","comments_url":"https://api.github.com/repos/michaeljones/sphinx-to-github/comments{/number}","issue_comment_url":"https://api.github.com/repos/michaeljones/sphinx-to-github/issues/comments/{number}","contents_url":"https://api.github.com/repos/michaeljones/sphinx-to-github/contents/{+path}","compare_url":"https://api.github.com/repos/michaeljones/sphinx-to-github/compare/{base}...{head}","merges_url":"https://api.github.com/repos/michaeljones/sphinx-to-github/merges","archive_url":"https://api.github.com/repos/michaeljones/sphinx-to-github/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/michaeljones/sphinx-to-github/downloads","issues_url":"https://api.github.com/repos/michaeljones/sphinx-to-github/issues{/number}","pulls_url":"https://api.github.com/repos/michaeljones/sphinx-to-github/pulls{/number}","milestones_url":"https://api.github.com/repos/michaeljones/sphinx-to-github/milestones{/number}","notifications_url":"https://api.github.com/repos/michaeljones/sphinx-to-github/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/michaeljones/sphinx-to-github/labels{/name}","releases_url":"https://api.github.com/repos/michaeljones/sphinx-to-github/releases{/id}","created_at":"2009-04-25T12:48:14Z","updated_at":"2013-12-03T17:05:36Z","pushed_at":"2013-10-26T00:39:13Z","git_url":"git://github.com/michaeljones/sphinx-to-github.git","ssh_url":"git@github.com:michaeljones/sphinx-to-github.git","clone_url":"https://github.com/michaeljones/sphinx-to-github.git","svn_url":"https://github.com/michaeljones/sphinx-to-github","homepage":"","size":140,"stargazers_count":72,"watchers_count":72,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":15,"mirror_url":null,"open_issues_count":1,"forks":15,"open_issues":1,"watchers":72,"default_branch":"master","master_branch":"master","score":14.550171},{"id":2252620,"name":"ST2-GitHubinator","full_name":"ehamiter/ST2-GitHubinator","owner":{"login":"ehamiter","id":634230,"avatar_url":"https://avatars.githubusercontent.com/u/634230","gravatar_id":"73c0faef06e3be0cef545cc5585fa582","url":"https://api.github.com/users/ehamiter","html_url":"https://github.com/ehamiter","followers_url":"https://api.github.com/users/ehamiter/followers","following_url":"https://api.github.com/users/ehamiter/following{/other_user}","gists_url":"https://api.github.com/users/ehamiter/gists{/gist_id}","starred_url":"https://api.github.com/users/ehamiter/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ehamiter/subscriptions","organizations_url":"https://api.github.com/users/ehamiter/orgs","repos_url":"https://api.github.com/users/ehamiter/repos","events_url":"https://api.github.com/users/ehamiter/events{/privacy}","received_events_url":"https://api.github.com/users/ehamiter/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/ehamiter/ST2-GitHubinator","description":"Sublime Text 2 plugin that shows selected ST2 text on GitHub","fork":false,"url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator","forks_url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator/forks","keys_url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator/teams","hooks_url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator/hooks","issue_events_url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator/issues/events{/number}","events_url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator/events","assignees_url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator/assignees{/user}","branches_url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator/branches{/branch}","tags_url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator/tags","blobs_url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator/git/refs{/sha}","trees_url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator/statuses/{sha}","languages_url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator/languages","stargazers_url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator/stargazers","contributors_url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator/contributors","subscribers_url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator/subscribers","subscription_url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator/subscription","commits_url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator/commits{/sha}","git_commits_url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator/git/commits{/sha}","comments_url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator/comments{/number}","issue_comment_url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator/issues/comments/{number}","contents_url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator/contents/{+path}","compare_url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator/merges","archive_url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator/downloads","issues_url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator/issues{/number}","pulls_url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator/pulls{/number}","milestones_url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator/milestones{/number}","notifications_url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator/labels{/name}","releases_url":"https://api.github.com/repos/ehamiter/ST2-GitHubinator/releases{/id}","created_at":"2011-08-23T02:04:50Z","updated_at":"2014-01-03T16:58:01Z","pushed_at":"2013-09-09T18:14:32Z","git_url":"git://github.com/ehamiter/ST2-GitHubinator.git","ssh_url":"git@github.com:ehamiter/ST2-GitHubinator.git","clone_url":"https://github.com/ehamiter/ST2-GitHubinator.git","svn_url":"https://github.com/ehamiter/ST2-GitHubinator","homepage":"","size":100,"stargazers_count":71,"watchers_count":71,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":16,"mirror_url":null,"open_issues_count":3,"forks":16,"open_issues":3,"watchers":71,"default_branch":"master","master_branch":"master","score":10.001726},{"id":2207040,"name":"WhitespaceBot","full_name":"Miserlou/WhitespaceBot","owner":{"login":"Miserlou","id":139987,"avatar_url":"https://avatars.githubusercontent.com/u/139987","gravatar_id":"7ad8f46407b45f1a2925333c7837a1f1","url":"https://api.github.com/users/Miserlou","html_url":"https://github.com/Miserlou","followers_url":"https://api.github.com/users/Miserlou/followers","following_url":"https://api.github.com/users/Miserlou/following{/other_user}","gists_url":"https://api.github.com/users/Miserlou/gists{/gist_id}","starred_url":"https://api.github.com/users/Miserlou/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Miserlou/subscriptions","organizations_url":"https://api.github.com/users/Miserlou/orgs","repos_url":"https://api.github.com/users/Miserlou/repos","events_url":"https://api.github.com/users/Miserlou/events{/privacy}","received_events_url":"https://api.github.com/users/Miserlou/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/Miserlou/WhitespaceBot","description":"Making GitHub Better.. With Robots","fork":false,"url":"https://api.github.com/repos/Miserlou/WhitespaceBot","forks_url":"https://api.github.com/repos/Miserlou/WhitespaceBot/forks","keys_url":"https://api.github.com/repos/Miserlou/WhitespaceBot/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Miserlou/WhitespaceBot/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Miserlou/WhitespaceBot/teams","hooks_url":"https://api.github.com/repos/Miserlou/WhitespaceBot/hooks","issue_events_url":"https://api.github.com/repos/Miserlou/WhitespaceBot/issues/events{/number}","events_url":"https://api.github.com/repos/Miserlou/WhitespaceBot/events","assignees_url":"https://api.github.com/repos/Miserlou/WhitespaceBot/assignees{/user}","branches_url":"https://api.github.com/repos/Miserlou/WhitespaceBot/branches{/branch}","tags_url":"https://api.github.com/repos/Miserlou/WhitespaceBot/tags","blobs_url":"https://api.github.com/repos/Miserlou/WhitespaceBot/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Miserlou/WhitespaceBot/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Miserlou/WhitespaceBot/git/refs{/sha}","trees_url":"https://api.github.com/repos/Miserlou/WhitespaceBot/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Miserlou/WhitespaceBot/statuses/{sha}","languages_url":"https://api.github.com/repos/Miserlou/WhitespaceBot/languages","stargazers_url":"https://api.github.com/repos/Miserlou/WhitespaceBot/stargazers","contributors_url":"https://api.github.com/repos/Miserlou/WhitespaceBot/contributors","subscribers_url":"https://api.github.com/repos/Miserlou/WhitespaceBot/subscribers","subscription_url":"https://api.github.com/repos/Miserlou/WhitespaceBot/subscription","commits_url":"https://api.github.com/repos/Miserlou/WhitespaceBot/commits{/sha}","git_commits_url":"https://api.github.com/repos/Miserlou/WhitespaceBot/git/commits{/sha}","comments_url":"https://api.github.com/repos/Miserlou/WhitespaceBot/comments{/number}","issue_comment_url":"https://api.github.com/repos/Miserlou/WhitespaceBot/issues/comments/{number}","contents_url":"https://api.github.com/repos/Miserlou/WhitespaceBot/contents/{+path}","compare_url":"https://api.github.com/repos/Miserlou/WhitespaceBot/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Miserlou/WhitespaceBot/merges","archive_url":"https://api.github.com/repos/Miserlou/WhitespaceBot/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Miserlou/WhitespaceBot/downloads","issues_url":"https://api.github.com/repos/Miserlou/WhitespaceBot/issues{/number}","pulls_url":"https://api.github.com/repos/Miserlou/WhitespaceBot/pulls{/number}","milestones_url":"https://api.github.com/repos/Miserlou/WhitespaceBot/milestones{/number}","notifications_url":"https://api.github.com/repos/Miserlou/WhitespaceBot/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Miserlou/WhitespaceBot/labels{/name}","releases_url":"https://api.github.com/repos/Miserlou/WhitespaceBot/releases{/id}","created_at":"2011-08-14T22:00:27Z","updated_at":"2014-01-03T07:45:01Z","pushed_at":"2011-10-31T17:57:47Z","git_url":"git://github.com/Miserlou/WhitespaceBot.git","ssh_url":"git@github.com:Miserlou/WhitespaceBot.git","clone_url":"https://github.com/Miserlou/WhitespaceBot.git","svn_url":"https://github.com/Miserlou/WhitespaceBot","homepage":"http://gun.io","size":106,"stargazers_count":68,"watchers_count":68,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":19,"mirror_url":null,"open_issues_count":6,"forks":19,"open_issues":6,"watchers":68,"default_branch":"master","master_branch":"master","score":12.626783},{"id":542285,"name":"mirosubs","full_name":"8planes/mirosubs","owner":{"login":"8planes","id":213626,"avatar_url":"https://avatars.githubusercontent.com/u/213626","gravatar_id":"453d80be8ba0d907fff185d806cff8ac","url":"https://api.github.com/users/8planes","html_url":"https://github.com/8planes","followers_url":"https://api.github.com/users/8planes/followers","following_url":"https://api.github.com/users/8planes/following{/other_user}","gists_url":"https://api.github.com/users/8planes/gists{/gist_id}","starred_url":"https://api.github.com/users/8planes/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/8planes/subscriptions","organizations_url":"https://api.github.com/users/8planes/orgs","repos_url":"https://api.github.com/users/8planes/repos","events_url":"https://api.github.com/users/8planes/events{/privacy}","received_events_url":"https://api.github.com/users/8planes/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/8planes/mirosubs","description":"The Universal Subtitles repo has moved! Please visit us at https://github.com/pculture/unisubs","fork":false,"url":"https://api.github.com/repos/8planes/mirosubs","forks_url":"https://api.github.com/repos/8planes/mirosubs/forks","keys_url":"https://api.github.com/repos/8planes/mirosubs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/8planes/mirosubs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/8planes/mirosubs/teams","hooks_url":"https://api.github.com/repos/8planes/mirosubs/hooks","issue_events_url":"https://api.github.com/repos/8planes/mirosubs/issues/events{/number}","events_url":"https://api.github.com/repos/8planes/mirosubs/events","assignees_url":"https://api.github.com/repos/8planes/mirosubs/assignees{/user}","branches_url":"https://api.github.com/repos/8planes/mirosubs/branches{/branch}","tags_url":"https://api.github.com/repos/8planes/mirosubs/tags","blobs_url":"https://api.github.com/repos/8planes/mirosubs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/8planes/mirosubs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/8planes/mirosubs/git/refs{/sha}","trees_url":"https://api.github.com/repos/8planes/mirosubs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/8planes/mirosubs/statuses/{sha}","languages_url":"https://api.github.com/repos/8planes/mirosubs/languages","stargazers_url":"https://api.github.com/repos/8planes/mirosubs/stargazers","contributors_url":"https://api.github.com/repos/8planes/mirosubs/contributors","subscribers_url":"https://api.github.com/repos/8planes/mirosubs/subscribers","subscription_url":"https://api.github.com/repos/8planes/mirosubs/subscription","commits_url":"https://api.github.com/repos/8planes/mirosubs/commits{/sha}","git_commits_url":"https://api.github.com/repos/8planes/mirosubs/git/commits{/sha}","comments_url":"https://api.github.com/repos/8planes/mirosubs/comments{/number}","issue_comment_url":"https://api.github.com/repos/8planes/mirosubs/issues/comments/{number}","contents_url":"https://api.github.com/repos/8planes/mirosubs/contents/{+path}","compare_url":"https://api.github.com/repos/8planes/mirosubs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/8planes/mirosubs/merges","archive_url":"https://api.github.com/repos/8planes/mirosubs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/8planes/mirosubs/downloads","issues_url":"https://api.github.com/repos/8planes/mirosubs/issues{/number}","pulls_url":"https://api.github.com/repos/8planes/mirosubs/pulls{/number}","milestones_url":"https://api.github.com/repos/8planes/mirosubs/milestones{/number}","notifications_url":"https://api.github.com/repos/8planes/mirosubs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/8planes/mirosubs/labels{/name}","releases_url":"https://api.github.com/repos/8planes/mirosubs/releases{/id}","created_at":"2010-03-02T02:55:02Z","updated_at":"2014-02-16T03:40:17Z","pushed_at":"2011-08-30T19:10:16Z","git_url":"git://github.com/8planes/mirosubs.git","ssh_url":"git@github.com:8planes/mirosubs.git","clone_url":"https://github.com/8planes/mirosubs.git","svn_url":"https://github.com/8planes/mirosubs","homepage":"","size":67902,"stargazers_count":66,"watchers_count":66,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":true,"forks_count":15,"mirror_url":null,"open_issues_count":12,"forks":15,"open_issues":12,"watchers":66,"default_branch":"master","master_branch":"master","score":6.8096685},{"id":988599,"name":"tahoe-lafs","full_name":"warner/tahoe-lafs","owner":{"login":"warner","id":27146,"avatar_url":"https://avatars.githubusercontent.com/u/27146","gravatar_id":"44c17de889031c70e118b5d9a724b8cc","url":"https://api.github.com/users/warner","html_url":"https://github.com/warner","followers_url":"https://api.github.com/users/warner/followers","following_url":"https://api.github.com/users/warner/following{/other_user}","gists_url":"https://api.github.com/users/warner/gists{/gist_id}","starred_url":"https://api.github.com/users/warner/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/warner/subscriptions","organizations_url":"https://api.github.com/users/warner/orgs","repos_url":"https://api.github.com/users/warner/repos","events_url":"https://api.github.com/users/warner/events{/privacy}","received_events_url":"https://api.github.com/users/warner/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/warner/tahoe-lafs","description":"The Tahoe-LAFS decentralized secure filesystem. https://github.com/tahoe-lafs/tahoe-lafs is the master.","fork":false,"url":"https://api.github.com/repos/warner/tahoe-lafs","forks_url":"https://api.github.com/repos/warner/tahoe-lafs/forks","keys_url":"https://api.github.com/repos/warner/tahoe-lafs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/warner/tahoe-lafs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/warner/tahoe-lafs/teams","hooks_url":"https://api.github.com/repos/warner/tahoe-lafs/hooks","issue_events_url":"https://api.github.com/repos/warner/tahoe-lafs/issues/events{/number}","events_url":"https://api.github.com/repos/warner/tahoe-lafs/events","assignees_url":"https://api.github.com/repos/warner/tahoe-lafs/assignees{/user}","branches_url":"https://api.github.com/repos/warner/tahoe-lafs/branches{/branch}","tags_url":"https://api.github.com/repos/warner/tahoe-lafs/tags","blobs_url":"https://api.github.com/repos/warner/tahoe-lafs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/warner/tahoe-lafs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/warner/tahoe-lafs/git/refs{/sha}","trees_url":"https://api.github.com/repos/warner/tahoe-lafs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/warner/tahoe-lafs/statuses/{sha}","languages_url":"https://api.github.com/repos/warner/tahoe-lafs/languages","stargazers_url":"https://api.github.com/repos/warner/tahoe-lafs/stargazers","contributors_url":"https://api.github.com/repos/warner/tahoe-lafs/contributors","subscribers_url":"https://api.github.com/repos/warner/tahoe-lafs/subscribers","subscription_url":"https://api.github.com/repos/warner/tahoe-lafs/subscription","commits_url":"https://api.github.com/repos/warner/tahoe-lafs/commits{/sha}","git_commits_url":"https://api.github.com/repos/warner/tahoe-lafs/git/commits{/sha}","comments_url":"https://api.github.com/repos/warner/tahoe-lafs/comments{/number}","issue_comment_url":"https://api.github.com/repos/warner/tahoe-lafs/issues/comments/{number}","contents_url":"https://api.github.com/repos/warner/tahoe-lafs/contents/{+path}","compare_url":"https://api.github.com/repos/warner/tahoe-lafs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/warner/tahoe-lafs/merges","archive_url":"https://api.github.com/repos/warner/tahoe-lafs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/warner/tahoe-lafs/downloads","issues_url":"https://api.github.com/repos/warner/tahoe-lafs/issues{/number}","pulls_url":"https://api.github.com/repos/warner/tahoe-lafs/pulls{/number}","milestones_url":"https://api.github.com/repos/warner/tahoe-lafs/milestones{/number}","notifications_url":"https://api.github.com/repos/warner/tahoe-lafs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/warner/tahoe-lafs/labels{/name}","releases_url":"https://api.github.com/repos/warner/tahoe-lafs/releases{/id}","created_at":"2010-10-14T23:57:29Z","updated_at":"2013-12-29T13:45:08Z","pushed_at":"2013-11-12T01:26:53Z","git_url":"git://github.com/warner/tahoe-lafs.git","ssh_url":"git@github.com:warner/tahoe-lafs.git","clone_url":"https://github.com/warner/tahoe-lafs.git","svn_url":"https://github.com/warner/tahoe-lafs","homepage":"http://tahoe-lafs.org/","size":62557,"stargazers_count":62,"watchers_count":62,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":79,"mirror_url":null,"open_issues_count":2,"forks":79,"open_issues":2,"watchers":62,"default_branch":"master","master_branch":"master","score":10.669004},{"id":734654,"name":"twitter-text-py","full_name":"dryan/twitter-text-py","owner":{"login":"dryan","id":15066,"avatar_url":"https://avatars.githubusercontent.com/u/15066","gravatar_id":"f110c4153d9c4b1002e8fa49183ac761","url":"https://api.github.com/users/dryan","html_url":"https://github.com/dryan","followers_url":"https://api.github.com/users/dryan/followers","following_url":"https://api.github.com/users/dryan/following{/other_user}","gists_url":"https://api.github.com/users/dryan/gists{/gist_id}","starred_url":"https://api.github.com/users/dryan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dryan/subscriptions","organizations_url":"https://api.github.com/users/dryan/orgs","repos_url":"https://api.github.com/users/dryan/repos","events_url":"https://api.github.com/users/dryan/events{/privacy}","received_events_url":"https://api.github.com/users/dryan/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/dryan/twitter-text-py","description":"a python port of https://github.com/twitter/twitter-text-rb also available via `pip install twitter_text`","fork":false,"url":"https://api.github.com/repos/dryan/twitter-text-py","forks_url":"https://api.github.com/repos/dryan/twitter-text-py/forks","keys_url":"https://api.github.com/repos/dryan/twitter-text-py/keys{/key_id}","collaborators_url":"https://api.github.com/repos/dryan/twitter-text-py/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/dryan/twitter-text-py/teams","hooks_url":"https://api.github.com/repos/dryan/twitter-text-py/hooks","issue_events_url":"https://api.github.com/repos/dryan/twitter-text-py/issues/events{/number}","events_url":"https://api.github.com/repos/dryan/twitter-text-py/events","assignees_url":"https://api.github.com/repos/dryan/twitter-text-py/assignees{/user}","branches_url":"https://api.github.com/repos/dryan/twitter-text-py/branches{/branch}","tags_url":"https://api.github.com/repos/dryan/twitter-text-py/tags","blobs_url":"https://api.github.com/repos/dryan/twitter-text-py/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/dryan/twitter-text-py/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/dryan/twitter-text-py/git/refs{/sha}","trees_url":"https://api.github.com/repos/dryan/twitter-text-py/git/trees{/sha}","statuses_url":"https://api.github.com/repos/dryan/twitter-text-py/statuses/{sha}","languages_url":"https://api.github.com/repos/dryan/twitter-text-py/languages","stargazers_url":"https://api.github.com/repos/dryan/twitter-text-py/stargazers","contributors_url":"https://api.github.com/repos/dryan/twitter-text-py/contributors","subscribers_url":"https://api.github.com/repos/dryan/twitter-text-py/subscribers","subscription_url":"https://api.github.com/repos/dryan/twitter-text-py/subscription","commits_url":"https://api.github.com/repos/dryan/twitter-text-py/commits{/sha}","git_commits_url":"https://api.github.com/repos/dryan/twitter-text-py/git/commits{/sha}","comments_url":"https://api.github.com/repos/dryan/twitter-text-py/comments{/number}","issue_comment_url":"https://api.github.com/repos/dryan/twitter-text-py/issues/comments/{number}","contents_url":"https://api.github.com/repos/dryan/twitter-text-py/contents/{+path}","compare_url":"https://api.github.com/repos/dryan/twitter-text-py/compare/{base}...{head}","merges_url":"https://api.github.com/repos/dryan/twitter-text-py/merges","archive_url":"https://api.github.com/repos/dryan/twitter-text-py/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/dryan/twitter-text-py/downloads","issues_url":"https://api.github.com/repos/dryan/twitter-text-py/issues{/number}","pulls_url":"https://api.github.com/repos/dryan/twitter-text-py/pulls{/number}","milestones_url":"https://api.github.com/repos/dryan/twitter-text-py/milestones{/number}","notifications_url":"https://api.github.com/repos/dryan/twitter-text-py/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/dryan/twitter-text-py/labels{/name}","releases_url":"https://api.github.com/repos/dryan/twitter-text-py/releases{/id}","created_at":"2010-06-22T21:29:21Z","updated_at":"2014-01-16T14:48:12Z","pushed_at":"2014-01-16T14:48:11Z","git_url":"git://github.com/dryan/twitter-text-py.git","ssh_url":"git@github.com:dryan/twitter-text-py.git","clone_url":"https://github.com/dryan/twitter-text-py.git","svn_url":"https://github.com/dryan/twitter-text-py","homepage":"http://dryan.github.io/twitter-text-py/","size":464,"stargazers_count":64,"watchers_count":64,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":20,"mirror_url":null,"open_issues_count":1,"forks":20,"open_issues":1,"watchers":64,"default_branch":"master","master_branch":"master","score":7.240589},{"id":1781813,"name":"gist-it","full_name":"robertkrimen/gist-it","owner":{"login":"robertkrimen","id":16290,"avatar_url":"https://avatars.githubusercontent.com/u/16290","gravatar_id":"a8599a9fab0f69eb6515686702a5adb1","url":"https://api.github.com/users/robertkrimen","html_url":"https://github.com/robertkrimen","followers_url":"https://api.github.com/users/robertkrimen/followers","following_url":"https://api.github.com/users/robertkrimen/following{/other_user}","gists_url":"https://api.github.com/users/robertkrimen/gists{/gist_id}","starred_url":"https://api.github.com/users/robertkrimen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/robertkrimen/subscriptions","organizations_url":"https://api.github.com/users/robertkrimen/orgs","repos_url":"https://api.github.com/users/robertkrimen/repos","events_url":"https://api.github.com/users/robertkrimen/events{/privacy}","received_events_url":"https://api.github.com/users/robertkrimen/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/robertkrimen/gist-it","description":"An AppEngine app to embed files from a github repository like a gist","fork":false,"url":"https://api.github.com/repos/robertkrimen/gist-it","forks_url":"https://api.github.com/repos/robertkrimen/gist-it/forks","keys_url":"https://api.github.com/repos/robertkrimen/gist-it/keys{/key_id}","collaborators_url":"https://api.github.com/repos/robertkrimen/gist-it/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/robertkrimen/gist-it/teams","hooks_url":"https://api.github.com/repos/robertkrimen/gist-it/hooks","issue_events_url":"https://api.github.com/repos/robertkrimen/gist-it/issues/events{/number}","events_url":"https://api.github.com/repos/robertkrimen/gist-it/events","assignees_url":"https://api.github.com/repos/robertkrimen/gist-it/assignees{/user}","branches_url":"https://api.github.com/repos/robertkrimen/gist-it/branches{/branch}","tags_url":"https://api.github.com/repos/robertkrimen/gist-it/tags","blobs_url":"https://api.github.com/repos/robertkrimen/gist-it/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/robertkrimen/gist-it/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/robertkrimen/gist-it/git/refs{/sha}","trees_url":"https://api.github.com/repos/robertkrimen/gist-it/git/trees{/sha}","statuses_url":"https://api.github.com/repos/robertkrimen/gist-it/statuses/{sha}","languages_url":"https://api.github.com/repos/robertkrimen/gist-it/languages","stargazers_url":"https://api.github.com/repos/robertkrimen/gist-it/stargazers","contributors_url":"https://api.github.com/repos/robertkrimen/gist-it/contributors","subscribers_url":"https://api.github.com/repos/robertkrimen/gist-it/subscribers","subscription_url":"https://api.github.com/repos/robertkrimen/gist-it/subscription","commits_url":"https://api.github.com/repos/robertkrimen/gist-it/commits{/sha}","git_commits_url":"https://api.github.com/repos/robertkrimen/gist-it/git/commits{/sha}","comments_url":"https://api.github.com/repos/robertkrimen/gist-it/comments{/number}","issue_comment_url":"https://api.github.com/repos/robertkrimen/gist-it/issues/comments/{number}","contents_url":"https://api.github.com/repos/robertkrimen/gist-it/contents/{+path}","compare_url":"https://api.github.com/repos/robertkrimen/gist-it/compare/{base}...{head}","merges_url":"https://api.github.com/repos/robertkrimen/gist-it/merges","archive_url":"https://api.github.com/repos/robertkrimen/gist-it/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/robertkrimen/gist-it/downloads","issues_url":"https://api.github.com/repos/robertkrimen/gist-it/issues{/number}","pulls_url":"https://api.github.com/repos/robertkrimen/gist-it/pulls{/number}","milestones_url":"https://api.github.com/repos/robertkrimen/gist-it/milestones{/number}","notifications_url":"https://api.github.com/repos/robertkrimen/gist-it/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/robertkrimen/gist-it/labels{/name}","releases_url":"https://api.github.com/repos/robertkrimen/gist-it/releases{/id}","created_at":"2011-05-21T21:02:52Z","updated_at":"2014-01-08T03:25:50Z","pushed_at":"2013-02-27T01:11:21Z","git_url":"git://github.com/robertkrimen/gist-it.git","ssh_url":"git@github.com:robertkrimen/gist-it.git","clone_url":"https://github.com/robertkrimen/gist-it.git","svn_url":"https://github.com/robertkrimen/gist-it","homepage":"gist-it.appspot.com","size":804,"stargazers_count":61,"watchers_count":61,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":10,"mirror_url":null,"open_issues_count":3,"forks":10,"open_issues":3,"watchers":61,"default_branch":"master","master_branch":"master","score":6.753918}]} + diff --git a/lib/github/tests/ReplayData/Search.testSearchUsers.txt b/lib/github/tests/ReplayData/Search.testSearchUsers.txt new file mode 100644 index 0000000000..ac13beb89c --- /dev/null +++ b/lib/github/tests/ReplayData/Search.testSearchUsers.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/search/users?sort=followers&q=vincent&order=desc +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '29'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '62E81E32:536F:4325D43:53140505'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('content-length', '27634'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '30'), ('link', '; rel="next", ; rel="last"'), ('cache-control', 'no-cache'), ('date', 'Mon, 03 Mar 2014 04:28:53 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1393820993')] +{"total_count":2781,"items":[{"login":"nvie","id":83844,"avatar_url":"https://avatars.githubusercontent.com/u/83844","gravatar_id":"466ef7561a0b100dc5a1021959962d28","url":"https://api.github.com/users/nvie","html_url":"https://github.com/nvie","followers_url":"https://api.github.com/users/nvie/followers","following_url":"https://api.github.com/users/nvie/following{/other_user}","gists_url":"https://api.github.com/users/nvie/gists{/gist_id}","starred_url":"https://api.github.com/users/nvie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nvie/subscriptions","organizations_url":"https://api.github.com/users/nvie/orgs","repos_url":"https://api.github.com/users/nvie/repos","events_url":"https://api.github.com/users/nvie/events{/privacy}","received_events_url":"https://api.github.com/users/nvie/received_events","type":"User","site_admin":false,"score":36.965874},{"login":"lusis","id":228958,"avatar_url":"https://avatars.githubusercontent.com/u/228958","gravatar_id":"03a966709300efb4a86ce5ee8f88f696","url":"https://api.github.com/users/lusis","html_url":"https://github.com/lusis","followers_url":"https://api.github.com/users/lusis/followers","following_url":"https://api.github.com/users/lusis/following{/other_user}","gists_url":"https://api.github.com/users/lusis/gists{/gist_id}","starred_url":"https://api.github.com/users/lusis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lusis/subscriptions","organizations_url":"https://api.github.com/users/lusis/orgs","repos_url":"https://api.github.com/users/lusis/repos","events_url":"https://api.github.com/users/lusis/events{/privacy}","received_events_url":"https://api.github.com/users/lusis/received_events","type":"User","site_admin":false,"score":16.9694},{"login":"obra","id":45416,"avatar_url":"https://avatars.githubusercontent.com/u/45416","gravatar_id":"a145dbf5d67ba1eb717fbe3a1f51509c","url":"https://api.github.com/users/obra","html_url":"https://github.com/obra","followers_url":"https://api.github.com/users/obra/followers","following_url":"https://api.github.com/users/obra/following{/other_user}","gists_url":"https://api.github.com/users/obra/gists{/gist_id}","starred_url":"https://api.github.com/users/obra/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/obra/subscriptions","organizations_url":"https://api.github.com/users/obra/orgs","repos_url":"https://api.github.com/users/obra/repos","events_url":"https://api.github.com/users/obra/events{/privacy}","received_events_url":"https://api.github.com/users/obra/received_events","type":"User","site_admin":false,"score":19.73637},{"login":"vjousse","id":154904,"avatar_url":"https://avatars.githubusercontent.com/u/154904","gravatar_id":"c676f9efc8e54985e84c044899481267","url":"https://api.github.com/users/vjousse","html_url":"https://github.com/vjousse","followers_url":"https://api.github.com/users/vjousse/followers","following_url":"https://api.github.com/users/vjousse/following{/other_user}","gists_url":"https://api.github.com/users/vjousse/gists{/gist_id}","starred_url":"https://api.github.com/users/vjousse/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vjousse/subscriptions","organizations_url":"https://api.github.com/users/vjousse/orgs","repos_url":"https://api.github.com/users/vjousse/repos","events_url":"https://api.github.com/users/vjousse/events{/privacy}","received_events_url":"https://api.github.com/users/vjousse/received_events","type":"User","site_admin":false,"score":32.907475},{"login":"vincentbernat","id":631446,"avatar_url":"https://avatars.githubusercontent.com/u/631446","gravatar_id":"2c0bde3f5628f35390c42fe505b79da4","url":"https://api.github.com/users/vincentbernat","html_url":"https://github.com/vincentbernat","followers_url":"https://api.github.com/users/vincentbernat/followers","following_url":"https://api.github.com/users/vincentbernat/following{/other_user}","gists_url":"https://api.github.com/users/vincentbernat/gists{/gist_id}","starred_url":"https://api.github.com/users/vincentbernat/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vincentbernat/subscriptions","organizations_url":"https://api.github.com/users/vincentbernat/orgs","repos_url":"https://api.github.com/users/vincentbernat/repos","events_url":"https://api.github.com/users/vincentbernat/events{/privacy}","received_events_url":"https://api.github.com/users/vincentbernat/received_events","type":"User","site_admin":false,"score":21.363638},{"login":"vincenthz","id":174631,"avatar_url":"https://avatars.githubusercontent.com/u/174631","gravatar_id":"1d0a2ab73604a28d767acc0e547c8985","url":"https://api.github.com/users/vincenthz","html_url":"https://github.com/vincenthz","followers_url":"https://api.github.com/users/vincenthz/followers","following_url":"https://api.github.com/users/vincenthz/following{/other_user}","gists_url":"https://api.github.com/users/vincenthz/gists{/gist_id}","starred_url":"https://api.github.com/users/vincenthz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vincenthz/subscriptions","organizations_url":"https://api.github.com/users/vincenthz/orgs","repos_url":"https://api.github.com/users/vincenthz/repos","events_url":"https://api.github.com/users/vincenthz/events{/privacy}","received_events_url":"https://api.github.com/users/vincenthz/received_events","type":"User","site_admin":false,"score":5.5826187},{"login":"sethvincent","id":164214,"avatar_url":"https://avatars.githubusercontent.com/u/164214","gravatar_id":"652e02cbd134e0e92f3f81fe14bda3d1","url":"https://api.github.com/users/sethvincent","html_url":"https://github.com/sethvincent","followers_url":"https://api.github.com/users/sethvincent/followers","following_url":"https://api.github.com/users/sethvincent/following{/other_user}","gists_url":"https://api.github.com/users/sethvincent/gists{/gist_id}","starred_url":"https://api.github.com/users/sethvincent/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sethvincent/subscriptions","organizations_url":"https://api.github.com/users/sethvincent/orgs","repos_url":"https://api.github.com/users/sethvincent/repos","events_url":"https://api.github.com/users/sethvincent/events{/privacy}","received_events_url":"https://api.github.com/users/sethvincent/received_events","type":"User","site_admin":false,"score":5.302938},{"login":"VinceG","id":195199,"avatar_url":"https://avatars.githubusercontent.com/u/195199","gravatar_id":"3cd0394357ab8911c794204ac524b115","url":"https://api.github.com/users/VinceG","html_url":"https://github.com/VinceG","followers_url":"https://api.github.com/users/VinceG/followers","following_url":"https://api.github.com/users/VinceG/following{/other_user}","gists_url":"https://api.github.com/users/VinceG/gists{/gist_id}","starred_url":"https://api.github.com/users/VinceG/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/VinceG/subscriptions","organizations_url":"https://api.github.com/users/VinceG/orgs","repos_url":"https://api.github.com/users/VinceG/repos","events_url":"https://api.github.com/users/VinceG/events{/privacy}","received_events_url":"https://api.github.com/users/VinceG/received_events","type":"User","site_admin":false,"score":3.6360402},{"login":"vinch","id":155370,"avatar_url":"https://avatars.githubusercontent.com/u/155370","gravatar_id":"a3895a2d6f26155968be47fc03dddc40","url":"https://api.github.com/users/vinch","html_url":"https://github.com/vinch","followers_url":"https://api.github.com/users/vinch/followers","following_url":"https://api.github.com/users/vinch/following{/other_user}","gists_url":"https://api.github.com/users/vinch/gists{/gist_id}","starred_url":"https://api.github.com/users/vinch/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vinch/subscriptions","organizations_url":"https://api.github.com/users/vinch/orgs","repos_url":"https://api.github.com/users/vinch/repos","events_url":"https://api.github.com/users/vinch/events{/privacy}","received_events_url":"https://api.github.com/users/vinch/received_events","type":"User","site_admin":false,"score":4.111639},{"login":"vvo","id":123822,"avatar_url":"https://avatars.githubusercontent.com/u/123822","gravatar_id":"667176b96540d167eb74f473c9aea5f7","url":"https://api.github.com/users/vvo","html_url":"https://github.com/vvo","followers_url":"https://api.github.com/users/vvo/followers","following_url":"https://api.github.com/users/vvo/following{/other_user}","gists_url":"https://api.github.com/users/vvo/gists{/gist_id}","starred_url":"https://api.github.com/users/vvo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vvo/subscriptions","organizations_url":"https://api.github.com/users/vvo/orgs","repos_url":"https://api.github.com/users/vvo/repos","events_url":"https://api.github.com/users/vvo/events{/privacy}","received_events_url":"https://api.github.com/users/vvo/received_events","type":"User","site_admin":false,"score":4.209945},{"login":"blanchonvincent","id":1580512,"avatar_url":"https://avatars.githubusercontent.com/u/1580512","gravatar_id":"d6288a0b3a370e4db4ea27adbeb74a30","url":"https://api.github.com/users/blanchonvincent","html_url":"https://github.com/blanchonvincent","followers_url":"https://api.github.com/users/blanchonvincent/followers","following_url":"https://api.github.com/users/blanchonvincent/following{/other_user}","gists_url":"https://api.github.com/users/blanchonvincent/gists{/gist_id}","starred_url":"https://api.github.com/users/blanchonvincent/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/blanchonvincent/subscriptions","organizations_url":"https://api.github.com/users/blanchonvincent/orgs","repos_url":"https://api.github.com/users/blanchonvincent/repos","events_url":"https://api.github.com/users/blanchonvincent/events{/privacy}","received_events_url":"https://api.github.com/users/blanchonvincent/received_events","type":"User","site_admin":false,"score":3.2129176},{"login":"vincent-zhao","id":1393423,"avatar_url":"https://avatars.githubusercontent.com/u/1393423","gravatar_id":"886a562bd3cc225ec3250650d8cdf4bd","url":"https://api.github.com/users/vincent-zhao","html_url":"https://github.com/vincent-zhao","followers_url":"https://api.github.com/users/vincent-zhao/followers","following_url":"https://api.github.com/users/vincent-zhao/following{/other_user}","gists_url":"https://api.github.com/users/vincent-zhao/gists{/gist_id}","starred_url":"https://api.github.com/users/vincent-zhao/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vincent-zhao/subscriptions","organizations_url":"https://api.github.com/users/vincent-zhao/orgs","repos_url":"https://api.github.com/users/vincent-zhao/repos","events_url":"https://api.github.com/users/vincent-zhao/events{/privacy}","received_events_url":"https://api.github.com/users/vincent-zhao/received_events","type":"User","site_admin":false,"score":3.4732492},{"login":"vincentstorme","id":2442225,"avatar_url":"https://avatars.githubusercontent.com/u/2442225","gravatar_id":"f6957ae1ebc89b683f27dcb3cb6af167","url":"https://api.github.com/users/vincentstorme","html_url":"https://github.com/vincentstorme","followers_url":"https://api.github.com/users/vincentstorme/followers","following_url":"https://api.github.com/users/vincentstorme/following{/other_user}","gists_url":"https://api.github.com/users/vincentstorme/gists{/gist_id}","starred_url":"https://api.github.com/users/vincentstorme/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vincentstorme/subscriptions","organizations_url":"https://api.github.com/users/vincentstorme/orgs","repos_url":"https://api.github.com/users/vincentstorme/repos","events_url":"https://api.github.com/users/vincentstorme/events{/privacy}","received_events_url":"https://api.github.com/users/vincentstorme/received_events","type":"User","site_admin":false,"score":4.5820265},{"login":"VincentToups","id":31994,"avatar_url":"https://avatars.githubusercontent.com/u/31994","gravatar_id":"31a9803728a756c2b6ec090cb77852b3","url":"https://api.github.com/users/VincentToups","html_url":"https://github.com/VincentToups","followers_url":"https://api.github.com/users/VincentToups/followers","following_url":"https://api.github.com/users/VincentToups/following{/other_user}","gists_url":"https://api.github.com/users/VincentToups/gists{/gist_id}","starred_url":"https://api.github.com/users/VincentToups/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/VincentToups/subscriptions","organizations_url":"https://api.github.com/users/VincentToups/orgs","repos_url":"https://api.github.com/users/VincentToups/repos","events_url":"https://api.github.com/users/VincentToups/events{/privacy}","received_events_url":"https://api.github.com/users/VincentToups/received_events","type":"User","site_admin":false,"score":3.9941156},{"login":"Vayn","id":224407,"avatar_url":"https://avatars.githubusercontent.com/u/224407","gravatar_id":"dd02e2c7ecf7c377b6b9c2c1a23633d0","url":"https://api.github.com/users/Vayn","html_url":"https://github.com/Vayn","followers_url":"https://api.github.com/users/Vayn/followers","following_url":"https://api.github.com/users/Vayn/following{/other_user}","gists_url":"https://api.github.com/users/Vayn/gists{/gist_id}","starred_url":"https://api.github.com/users/Vayn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Vayn/subscriptions","organizations_url":"https://api.github.com/users/Vayn/orgs","repos_url":"https://api.github.com/users/Vayn/repos","events_url":"https://api.github.com/users/Vayn/events{/privacy}","received_events_url":"https://api.github.com/users/Vayn/received_events","type":"User","site_admin":false,"score":3.4213936},{"login":"gierschv","id":396537,"avatar_url":"https://avatars.githubusercontent.com/u/396537","gravatar_id":"bbd55fb25025ef973c45e587103a1007","url":"https://api.github.com/users/gierschv","html_url":"https://github.com/gierschv","followers_url":"https://api.github.com/users/gierschv/followers","following_url":"https://api.github.com/users/gierschv/following{/other_user}","gists_url":"https://api.github.com/users/gierschv/gists{/gist_id}","starred_url":"https://api.github.com/users/gierschv/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gierschv/subscriptions","organizations_url":"https://api.github.com/users/gierschv/orgs","repos_url":"https://api.github.com/users/gierschv/repos","events_url":"https://api.github.com/users/gierschv/events{/privacy}","received_events_url":"https://api.github.com/users/gierschv/received_events","type":"User","site_admin":false,"score":4.15376},{"login":"vbmithr","id":797581,"avatar_url":"https://avatars.githubusercontent.com/u/797581","gravatar_id":"1c14c313c21533d542bb289a7581c28b","url":"https://api.github.com/users/vbmithr","html_url":"https://github.com/vbmithr","followers_url":"https://api.github.com/users/vbmithr/followers","following_url":"https://api.github.com/users/vbmithr/following{/other_user}","gists_url":"https://api.github.com/users/vbmithr/gists{/gist_id}","starred_url":"https://api.github.com/users/vbmithr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vbmithr/subscriptions","organizations_url":"https://api.github.com/users/vbmithr/orgs","repos_url":"https://api.github.com/users/vbmithr/repos","events_url":"https://api.github.com/users/vbmithr/events{/privacy}","received_events_url":"https://api.github.com/users/vbmithr/received_events","type":"User","site_admin":false,"score":4.68167},{"login":"agile","id":249,"avatar_url":"https://avatars.githubusercontent.com/u/249","gravatar_id":"722218c7702627097bd72901d7b39e6a","url":"https://api.github.com/users/agile","html_url":"https://github.com/agile","followers_url":"https://api.github.com/users/agile/followers","following_url":"https://api.github.com/users/agile/following{/other_user}","gists_url":"https://api.github.com/users/agile/gists{/gist_id}","starred_url":"https://api.github.com/users/agile/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/agile/subscriptions","organizations_url":"https://api.github.com/users/agile/orgs","repos_url":"https://api.github.com/users/agile/repos","events_url":"https://api.github.com/users/agile/events{/privacy}","received_events_url":"https://api.github.com/users/agile/received_events","type":"User","site_admin":false,"score":3.2129176},{"login":"vbatts","id":67049,"avatar_url":"https://avatars.githubusercontent.com/u/67049","gravatar_id":"c8ff80488014da414b65346806178fa5","url":"https://api.github.com/users/vbatts","html_url":"https://github.com/vbatts","followers_url":"https://api.github.com/users/vbatts/followers","following_url":"https://api.github.com/users/vbatts/following{/other_user}","gists_url":"https://api.github.com/users/vbatts/gists{/gist_id}","starred_url":"https://api.github.com/users/vbatts/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vbatts/subscriptions","organizations_url":"https://api.github.com/users/vbatts/orgs","repos_url":"https://api.github.com/users/vbatts/repos","events_url":"https://api.github.com/users/vbatts/events{/privacy}","received_events_url":"https://api.github.com/users/vbatts/received_events","type":"User","site_admin":false,"score":4.795142},{"login":"bigsnarfdude","id":2282364,"avatar_url":"https://avatars.githubusercontent.com/u/2282364","gravatar_id":"d037119574d45efed8c1a23c7c321721","url":"https://api.github.com/users/bigsnarfdude","html_url":"https://github.com/bigsnarfdude","followers_url":"https://api.github.com/users/bigsnarfdude/followers","following_url":"https://api.github.com/users/bigsnarfdude/following{/other_user}","gists_url":"https://api.github.com/users/bigsnarfdude/gists{/gist_id}","starred_url":"https://api.github.com/users/bigsnarfdude/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bigsnarfdude/subscriptions","organizations_url":"https://api.github.com/users/bigsnarfdude/orgs","repos_url":"https://api.github.com/users/bigsnarfdude/repos","events_url":"https://api.github.com/users/bigsnarfdude/events{/privacy}","received_events_url":"https://api.github.com/users/bigsnarfdude/received_events","type":"User","site_admin":false,"score":4.6358795},{"login":"vcabansag","id":1062352,"avatar_url":"https://avatars.githubusercontent.com/u/1062352","gravatar_id":"216c75c56633ec386037cf2084f69f13","url":"https://api.github.com/users/vcabansag","html_url":"https://github.com/vcabansag","followers_url":"https://api.github.com/users/vcabansag/followers","following_url":"https://api.github.com/users/vcabansag/following{/other_user}","gists_url":"https://api.github.com/users/vcabansag/gists{/gist_id}","starred_url":"https://api.github.com/users/vcabansag/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vcabansag/subscriptions","organizations_url":"https://api.github.com/users/vcabansag/orgs","repos_url":"https://api.github.com/users/vcabansag/repos","events_url":"https://api.github.com/users/vcabansag/events{/privacy}","received_events_url":"https://api.github.com/users/vcabansag/received_events","type":"User","site_admin":false,"score":2.5125384},{"login":"Valodim","id":27813,"avatar_url":"https://avatars.githubusercontent.com/u/27813","gravatar_id":"5ad827a4eff2f5c23d26e1b4eb746143","url":"https://api.github.com/users/Valodim","html_url":"https://github.com/Valodim","followers_url":"https://api.github.com/users/Valodim/followers","following_url":"https://api.github.com/users/Valodim/following{/other_user}","gists_url":"https://api.github.com/users/Valodim/gists{/gist_id}","starred_url":"https://api.github.com/users/Valodim/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Valodim/subscriptions","organizations_url":"https://api.github.com/users/Valodim/orgs","repos_url":"https://api.github.com/users/Valodim/repos","events_url":"https://api.github.com/users/Valodim/events{/privacy}","received_events_url":"https://api.github.com/users/Valodim/received_events","type":"User","site_admin":false,"score":7.773693},{"login":"vincentwoo","id":613320,"avatar_url":"https://avatars.githubusercontent.com/u/613320","gravatar_id":"ef261163df50f82a96093054933f8b0b","url":"https://api.github.com/users/vincentwoo","html_url":"https://github.com/vincentwoo","followers_url":"https://api.github.com/users/vincentwoo/followers","following_url":"https://api.github.com/users/vincentwoo/following{/other_user}","gists_url":"https://api.github.com/users/vincentwoo/gists{/gist_id}","starred_url":"https://api.github.com/users/vincentwoo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vincentwoo/subscriptions","organizations_url":"https://api.github.com/users/vincentwoo/orgs","repos_url":"https://api.github.com/users/vincentwoo/repos","events_url":"https://api.github.com/users/vincentwoo/events{/privacy}","received_events_url":"https://api.github.com/users/vincentwoo/received_events","type":"User","site_admin":false,"score":4.1279836},{"login":"jacquev6","id":327146,"avatar_url":"https://avatars.githubusercontent.com/u/327146","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","site_admin":false,"score":6.40821},{"login":"vincentx","id":30519,"avatar_url":"https://avatars.githubusercontent.com/u/30519","gravatar_id":"5b22ceec1f68e4e30ce9d73b15515a8b","url":"https://api.github.com/users/vincentx","html_url":"https://github.com/vincentx","followers_url":"https://api.github.com/users/vincentx/followers","following_url":"https://api.github.com/users/vincentx/following{/other_user}","gists_url":"https://api.github.com/users/vincentx/gists{/gist_id}","starred_url":"https://api.github.com/users/vincentx/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vincentx/subscriptions","organizations_url":"https://api.github.com/users/vincentx/orgs","repos_url":"https://api.github.com/users/vincentx/repos","events_url":"https://api.github.com/users/vincentx/events{/privacy}","received_events_url":"https://api.github.com/users/vincentx/received_events","type":"User","site_admin":false,"score":2.8227496},{"login":"flyingoctopus","id":51352,"avatar_url":"https://avatars.githubusercontent.com/u/51352","gravatar_id":"4ae644601d8cfeeb1ac5f9eca3730cf2","url":"https://api.github.com/users/flyingoctopus","html_url":"https://github.com/flyingoctopus","followers_url":"https://api.github.com/users/flyingoctopus/followers","following_url":"https://api.github.com/users/flyingoctopus/following{/other_user}","gists_url":"https://api.github.com/users/flyingoctopus/gists{/gist_id}","starred_url":"https://api.github.com/users/flyingoctopus/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/flyingoctopus/subscriptions","organizations_url":"https://api.github.com/users/flyingoctopus/orgs","repos_url":"https://api.github.com/users/flyingoctopus/repos","events_url":"https://api.github.com/users/flyingoctopus/events{/privacy}","received_events_url":"https://api.github.com/users/flyingoctopus/received_events","type":"User","site_admin":false,"score":8.850996},{"login":"samvincent","id":57775,"avatar_url":"https://avatars.githubusercontent.com/u/57775","gravatar_id":"7105cb5590c1d689191fabaff3cfc23b","url":"https://api.github.com/users/samvincent","html_url":"https://github.com/samvincent","followers_url":"https://api.github.com/users/samvincent/followers","following_url":"https://api.github.com/users/samvincent/following{/other_user}","gists_url":"https://api.github.com/users/samvincent/gists{/gist_id}","starred_url":"https://api.github.com/users/samvincent/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/samvincent/subscriptions","organizations_url":"https://api.github.com/users/samvincent/orgs","repos_url":"https://api.github.com/users/samvincent/repos","events_url":"https://api.github.com/users/samvincent/events{/privacy}","received_events_url":"https://api.github.com/users/samvincent/received_events","type":"User","site_admin":false,"score":2.9412127},{"login":"stamourv","id":854429,"avatar_url":"https://avatars.githubusercontent.com/u/854429","gravatar_id":"80affe6c372ba2594d0810a455592d0b","url":"https://api.github.com/users/stamourv","html_url":"https://github.com/stamourv","followers_url":"https://api.github.com/users/stamourv/followers","following_url":"https://api.github.com/users/stamourv/following{/other_user}","gists_url":"https://api.github.com/users/stamourv/gists{/gist_id}","starred_url":"https://api.github.com/users/stamourv/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stamourv/subscriptions","organizations_url":"https://api.github.com/users/stamourv/orgs","repos_url":"https://api.github.com/users/stamourv/repos","events_url":"https://api.github.com/users/stamourv/events{/privacy}","received_events_url":"https://api.github.com/users/stamourv/received_events","type":"User","site_admin":false,"score":2.6577015},{"login":"vrabaud","id":700766,"avatar_url":"https://avatars.githubusercontent.com/u/700766","gravatar_id":"cc30ac48a693633fa4d05d66238eaff8","url":"https://api.github.com/users/vrabaud","html_url":"https://github.com/vrabaud","followers_url":"https://api.github.com/users/vrabaud/followers","following_url":"https://api.github.com/users/vrabaud/following{/other_user}","gists_url":"https://api.github.com/users/vrabaud/gists{/gist_id}","starred_url":"https://api.github.com/users/vrabaud/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vrabaud/subscriptions","organizations_url":"https://api.github.com/users/vrabaud/orgs","repos_url":"https://api.github.com/users/vrabaud/repos","events_url":"https://api.github.com/users/vrabaud/events{/privacy}","received_events_url":"https://api.github.com/users/vrabaud/received_events","type":"User","site_admin":false,"score":5.332164},{"login":"Mitsugaru","id":1184640,"avatar_url":"https://avatars.githubusercontent.com/u/1184640","gravatar_id":"5ed6fc41ebf7d88590a4c07eae074e97","url":"https://api.github.com/users/Mitsugaru","html_url":"https://github.com/Mitsugaru","followers_url":"https://api.github.com/users/Mitsugaru/followers","following_url":"https://api.github.com/users/Mitsugaru/following{/other_user}","gists_url":"https://api.github.com/users/Mitsugaru/gists{/gist_id}","starred_url":"https://api.github.com/users/Mitsugaru/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Mitsugaru/subscriptions","organizations_url":"https://api.github.com/users/Mitsugaru/orgs","repos_url":"https://api.github.com/users/Mitsugaru/repos","events_url":"https://api.github.com/users/Mitsugaru/events{/privacy}","received_events_url":"https://api.github.com/users/Mitsugaru/received_events","type":"User","site_admin":false,"score":4.0521812}]} + diff --git a/lib/github/tests/ReplayData/Search.testUrlquotingOfQualifiers.txt b/lib/github/tests/ReplayData/Search.testUrlquotingOfQualifiers.txt new file mode 100644 index 0000000000..a1819720b1 --- /dev/null +++ b/lib/github/tests/ReplayData/Search.testUrlquotingOfQualifiers.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/search/issues?q=repo%3Asaltstack%2Fsalt-api+type%3AIssues+updated%3A%3E2014-03-04T18%3A28%3A11Z +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '29'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '62E81E32:3849:237BB3A:5325E38F'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('content-length', '19065'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '30'), ('cache-control', 'no-cache'), ('date', 'Sun, 16 Mar 2014 17:46:56 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1394992076')] +{"total_count":6,"items":[{"url":"https://api.github.com/repos/saltstack/salt-api/issues/144","labels_url":"https://api.github.com/repos/saltstack/salt-api/issues/144/labels{/name}","comments_url":"https://api.github.com/repos/saltstack/salt-api/issues/144/comments","events_url":"https://api.github.com/repos/saltstack/salt-api/issues/144/events","html_url":"https://github.com/saltstack/salt-api/pull/144","id":29138794,"number":144,"title":"tools.cpstats.on needs to be placed under root","user":{"login":"LucasEwalt","id":193133,"avatar_url":"https://gravatar.com/avatar/34a7644f0fd54bbc2c41e0f34b0ef1ea?d=https%3A%2F%2Fidenticons.github.com%2Fd1ea33a87ab250461f229f3be959de3b.png&r=x","gravatar_id":"34a7644f0fd54bbc2c41e0f34b0ef1ea","url":"https://api.github.com/users/LucasEwalt","html_url":"https://github.com/LucasEwalt","followers_url":"https://api.github.com/users/LucasEwalt/followers","following_url":"https://api.github.com/users/LucasEwalt/following{/other_user}","gists_url":"https://api.github.com/users/LucasEwalt/gists{/gist_id}","starred_url":"https://api.github.com/users/LucasEwalt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/LucasEwalt/subscriptions","organizations_url":"https://api.github.com/users/LucasEwalt/orgs","repos_url":"https://api.github.com/users/LucasEwalt/repos","events_url":"https://api.github.com/users/LucasEwalt/events{/privacy}","received_events_url":"https://api.github.com/users/LucasEwalt/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","assignee":null,"milestone":null,"comments":0,"created_at":"2014-03-10T22:31:05Z","updated_at":"2014-03-10T22:32:46Z","closed_at":"2014-03-10T22:32:46Z","pull_request":{"html_url":"https://github.com/saltstack/salt-api/pull/144","diff_url":"https://github.com/saltstack/salt-api/pull/144.diff","patch_url":"https://github.com/saltstack/salt-api/pull/144.patch"},"body":"Small error, tools.cpstats.on actually needs to be under root for metrics to be collected for all requests.","score":1.0},{"url":"https://api.github.com/repos/saltstack/salt-api/issues/143","labels_url":"https://api.github.com/repos/saltstack/salt-api/issues/143/labels{/name}","comments_url":"https://api.github.com/repos/saltstack/salt-api/issues/143/comments","events_url":"https://api.github.com/repos/saltstack/salt-api/issues/143/events","html_url":"https://github.com/saltstack/salt-api/pull/143","id":29119248,"number":143,"title":"Expose cherrypy metrics","user":{"login":"LucasEwalt","id":193133,"avatar_url":"https://gravatar.com/avatar/34a7644f0fd54bbc2c41e0f34b0ef1ea?d=https%3A%2F%2Fidenticons.github.com%2Fd1ea33a87ab250461f229f3be959de3b.png&r=x","gravatar_id":"34a7644f0fd54bbc2c41e0f34b0ef1ea","url":"https://api.github.com/users/LucasEwalt","html_url":"https://github.com/LucasEwalt","followers_url":"https://api.github.com/users/LucasEwalt/followers","following_url":"https://api.github.com/users/LucasEwalt/following{/other_user}","gists_url":"https://api.github.com/users/LucasEwalt/gists{/gist_id}","starred_url":"https://api.github.com/users/LucasEwalt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/LucasEwalt/subscriptions","organizations_url":"https://api.github.com/users/LucasEwalt/orgs","repos_url":"https://api.github.com/users/LucasEwalt/repos","events_url":"https://api.github.com/users/LucasEwalt/events{/privacy}","received_events_url":"https://api.github.com/users/LucasEwalt/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","assignee":null,"milestone":null,"comments":4,"created_at":"2014-03-10T18:20:29Z","updated_at":"2014-03-11T15:56:02Z","closed_at":"2014-03-10T22:08:21Z","pull_request":{"html_url":"https://github.com/saltstack/salt-api/pull/143","diff_url":"https://github.com/saltstack/salt-api/pull/143.diff","patch_url":"https://github.com/saltstack/salt-api/pull/143.patch"},"body":"Expose cherrycp cpstats via /stats URI. http://docs.cherrypy.org/en/latest/refman/lib/cpstats.html?highlight=cpstats#module-cherrypy.lib.cpstats","score":1.0},{"url":"https://api.github.com/repos/saltstack/salt-api/issues/142","labels_url":"https://api.github.com/repos/saltstack/salt-api/issues/142/labels{/name}","comments_url":"https://api.github.com/repos/saltstack/salt-api/issues/142/comments","events_url":"https://api.github.com/repos/saltstack/salt-api/issues/142/events","html_url":"https://github.com/saltstack/salt-api/issues/142","id":29074591,"number":142,"title":"Use PHP to call API ,produce 400 Bad Request:Lowstates must be a list","user":{"login":"ivanwa","id":6895983,"avatar_url":"https://gravatar.com/avatar/5449da031675d985e6fb03f1d81dd6c2?d=https%3A%2F%2Fidenticons.github.com%2Fc7fd88fd0ac6e13142c23c2f1232baf5.png&r=x","gravatar_id":"5449da031675d985e6fb03f1d81dd6c2","url":"https://api.github.com/users/ivanwa","html_url":"https://github.com/ivanwa","followers_url":"https://api.github.com/users/ivanwa/followers","following_url":"https://api.github.com/users/ivanwa/following{/other_user}","gists_url":"https://api.github.com/users/ivanwa/gists{/gist_id}","starred_url":"https://api.github.com/users/ivanwa/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ivanwa/subscriptions","organizations_url":"https://api.github.com/users/ivanwa/orgs","repos_url":"https://api.github.com/users/ivanwa/repos","events_url":"https://api.github.com/users/ivanwa/events{/privacy}","received_events_url":"https://api.github.com/users/ivanwa/received_events","type":"User","site_admin":false},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2014-03-10T06:15:11Z","updated_at":"2014-03-11T14:09:12Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"An error message:\r\n400 Bad Request\r\n\r\nLowstates must be a list\r\n\r\nTraceback (most recent call last):\r\n File \"/usr/lib/python2.6/site-packages/cherrypy/_cprequest.py\", line 656, in respond\r\n response.body = self.handler()\r\n File \"/usr/lib/python2.6/site-packages/cherrypy/lib/encoding.py\", line 188, in __call__\r\n self.body = self.oldhandler(*args, **kwargs)\r\n File \"/usr/lib/python2.6/site-packages/saltapi/netapi/rest_cherrypy/app.py\", line 273, in hypermedia_handler\r\n ret = cherrypy.serving.request._hypermedia_inner_handler(*args, **kwargs)\r\n File \"/usr/lib/python2.6/site-packages/cherrypy/_cpdispatch.py\", line 34, in __call__\r\n return self.callable(*self.args, **self.kwargs)\r\n File \"/usr/lib/python2.6/site-packages/saltapi/netapi/rest_cherrypy/app.py\", line 1074, in POST\r\n 'return': list(self.exec_lowstate()),\r\n File \"/usr/lib/python2.6/site-packages/saltapi/netapi/rest_cherrypy/app.py\", line 490, in exec_lowstate\r\n raise cherrypy.HTTPError(400, 'Lowstates must be a list')\r\nHTTPError: (400, 'Lowstates must be a list')\r\n\r\n--------------------------------------------------------------------------------------------------------------------------------\r\nAnd I use the command line to run, but it can be successful.\r\n[root@localhost salt]# curl -k https://192.168.1.159:8000/run/ \\\r\n> -H \"Accept: application/x-yaml\" \\\r\n> -d username='saltapi' \\\r\n> -d password='123456' \\\r\n> -d eauth='pam' \\\r\n> -d client='local' \\\r\n> -d tgt='*' \\\r\n> -d fun='test.ping'\r\nreturn:\r\n- {}\r\n\r\n--------------------------------------------------------------------------------------------------------------------------------\r\nMy PHP script : index.php\r\n$url = \"https://192.168.1.159:8000/run\";\r\n$post_data = array (\r\n\t\t\"username\" => \"saltapi\",\r\n\t\t\"password\" => \"123456\",\r\n\t\t\"eauth\" => \"pam\",\r\n\t\t\"client\" => \"local\",\r\n\t\t\"tgt\" => \"*\",\r\n\t\t\"fun\" => \"test.ping\",\r\n\t\t\"arg\"=>\"\"\r\n);\r\n$ch = curl_init ();\r\ncurl_setopt ( $ch, CURLOPT_URL, $url );\r\ncurl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, false );\r\ncurl_setopt ( $ch, CURLOPT_SSL_VERIFYHOST, false );\r\ncurl_setopt($ch, CURLOPT_HTTPHEADER, array(\"Content-type: application/x-www-form-urlencoded\",'Expect:'));\r\ncurl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );\r\n\r\ncurl_setopt ( $ch, CURLOPT_POST, 1 );\r\ncurl_setopt ( $ch, CURLOPT_POSTFIELDS, $post_data );\r\n$output = curl_exec ( $ch );\r\ncurl_close ( $ch );\r\n// print\r\nprint_r ( $output );\r\n\r\n--------------------------------------------------------------------------------------------------------------------------------\r\nMy master:\r\ninterface: 192.168.1.159\r\n\r\nrest_cherrypy:\r\n host: 0.0.0.0\r\n port: 8000\r\n debug: true\r\n static: /salt-webui/halite/halite\r\n app: /salt-webui/halite/halite\r\n ssl_crt: /etc/pki/tls/certs/localhost.crt\r\n ssl_key: /etc/pki/tls/private/localhost_nopass.key\r\n\r\nexternal_auth:\r\n pam:\r\n saltapi:\r\n - .*","score":1.0},{"url":"https://api.github.com/repos/saltstack/salt-api/issues/141","labels_url":"https://api.github.com/repos/saltstack/salt-api/issues/141/labels{/name}","comments_url":"https://api.github.com/repos/saltstack/salt-api/issues/141/comments","events_url":"https://api.github.com/repos/saltstack/salt-api/issues/141/events","html_url":"https://github.com/saltstack/salt-api/issues/141","id":28842635,"number":141,"title":"get error when start salt-api [ERROR ] Not loading 'rest_wsgi'. 'port' not specified in config","user":{"login":"justlooks","id":295168,"avatar_url":"https://gravatar.com/avatar/ca2d4ef0024cd926cc7a6218f7a4aed8?d=https%3A%2F%2Fidenticons.github.com%2F32491008424b6a810a81a3bfd7c139a9.png&r=x","gravatar_id":"ca2d4ef0024cd926cc7a6218f7a4aed8","url":"https://api.github.com/users/justlooks","html_url":"https://github.com/justlooks","followers_url":"https://api.github.com/users/justlooks/followers","following_url":"https://api.github.com/users/justlooks/following{/other_user}","gists_url":"https://api.github.com/users/justlooks/gists{/gist_id}","starred_url":"https://api.github.com/users/justlooks/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/justlooks/subscriptions","organizations_url":"https://api.github.com/users/justlooks/orgs","repos_url":"https://api.github.com/users/justlooks/repos","events_url":"https://api.github.com/users/justlooks/events{/privacy}","received_events_url":"https://api.github.com/users/justlooks/received_events","type":"User","site_admin":false},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2014-03-06T01:23:22Z","updated_at":"2014-03-06T02:31:20Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"# service salt-api start\r\nStarting salt-api daemon: [ERROR ] Not loading 'rest_wsgi'. 'port' not specified in config\r\n[06/Mar/2014:09:20:31] ENGINE Listening for SIGHUP.\r\n[06/Mar/2014:09:20:31] ENGINE Listening for SIGTERM.\r\n[06/Mar/2014:09:20:31] ENGINE Listening for SIGUSR1.\r\n[06/Mar/2014:09:20:31] ENGINE Bus STARTING\r\nCherryPy Checker:\r\n'log_file' is obsolete. Use 'log.error_file' instead.\r\nsection: [saltopts]\r\n\r\n[06/Mar/2014:09:20:31] ENGINE Started monitor thread '_TimeoutMonitor'.\r\n[06/Mar/2014:09:20:31] ENGINE Started monitor thread 'Autoreloader'.\r\n[06/Mar/2014:09:20:31] ENGINE Serving on 0.0.0.0:8888\r\n[06/Mar/2014:09:20:31] ENGINE Bus STARTED\r\n","score":1.0},{"url":"https://api.github.com/repos/saltstack/salt-api/issues/73","labels_url":"https://api.github.com/repos/saltstack/salt-api/issues/73/labels{/name}","comments_url":"https://api.github.com/repos/saltstack/salt-api/issues/73/comments","events_url":"https://api.github.com/repos/saltstack/salt-api/issues/73/events","html_url":"https://github.com/saltstack/salt-api/issues/73","id":13141224,"number":73,"title":"Add a zero-dep, bare-WSGI REST module","user":{"login":"whiteinge","id":91293,"avatar_url":"https://gravatar.com/avatar/f0bb4c8e95d355891ab9028e4bac480e?d=https%3A%2F%2Fidenticons.github.com%2Fa310e640ddcc1bf22c861dddb9ff4f76.png&r=x","gravatar_id":"f0bb4c8e95d355891ab9028e4bac480e","url":"https://api.github.com/users/whiteinge","html_url":"https://github.com/whiteinge","followers_url":"https://api.github.com/users/whiteinge/followers","following_url":"https://api.github.com/users/whiteinge/following{/other_user}","gists_url":"https://api.github.com/users/whiteinge/gists{/gist_id}","starred_url":"https://api.github.com/users/whiteinge/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/whiteinge/subscriptions","organizations_url":"https://api.github.com/users/whiteinge/orgs","repos_url":"https://api.github.com/users/whiteinge/repos","events_url":"https://api.github.com/users/whiteinge/events{/privacy}","received_events_url":"https://api.github.com/users/whiteinge/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/saltstack/salt-api/labels/0+-+Backlog","name":"0 - Backlog","color":"CCCCCC"}],"state":"closed","assignee":null,"milestone":{"url":"https://api.github.com/repos/saltstack/salt-api/milestones/2","labels_url":"https://api.github.com/repos/saltstack/salt-api/milestones/2/labels","id":187473,"number":2,"title":"Approved for future release","description":"","creator":{"login":"thatch45","id":507599,"avatar_url":"https://gravatar.com/avatar/ff7bc69b52eecf808141c470543db4f3?d=https%3A%2F%2Fidenticons.github.com%2F6a6eafefee200db675061e2df14be5f7.png&r=x","gravatar_id":"ff7bc69b52eecf808141c470543db4f3","url":"https://api.github.com/users/thatch45","html_url":"https://github.com/thatch45","followers_url":"https://api.github.com/users/thatch45/followers","following_url":"https://api.github.com/users/thatch45/following{/other_user}","gists_url":"https://api.github.com/users/thatch45/gists{/gist_id}","starred_url":"https://api.github.com/users/thatch45/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/thatch45/subscriptions","organizations_url":"https://api.github.com/users/thatch45/orgs","repos_url":"https://api.github.com/users/thatch45/repos","events_url":"https://api.github.com/users/thatch45/events{/privacy}","received_events_url":"https://api.github.com/users/thatch45/received_events","type":"User","site_admin":false},"open_issues":1,"closed_issues":7,"state":"open","created_at":"2012-10-01T17:16:46Z","updated_at":"2014-03-04T18:08:09Z","due_on":null},"comments":1,"created_at":"2013-04-12T21:56:30Z","updated_at":"2014-03-04T21:13:47Z","closed_at":"2013-04-13T05:57:19Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"A bare-bones \"REST\" WSGI app could be accomplished with just the Python stdlib in about ~200 LOC so we might as well. :)\r\n\r\n* Only handles JSON in/out.\r\n* Only provide a single URL.\r\n* Basically mimic the ``/run`` URL in the ``rest_cherrypy`` module.","score":1.0},{"url":"https://api.github.com/repos/saltstack/salt-api/issues/49","labels_url":"https://api.github.com/repos/saltstack/salt-api/issues/49/labels{/name}","comments_url":"https://api.github.com/repos/saltstack/salt-api/issues/49/comments","events_url":"https://api.github.com/repos/saltstack/salt-api/issues/49/events","html_url":"https://github.com/saltstack/salt-api/issues/49","id":11388256,"number":49,"title":"More information in jobs resource response","user":{"login":"sfdc-kho","id":3269880,"avatar_url":"https://gravatar.com/avatar/79dd31020b3bea2124d60cb5e3cd2edf?d=https%3A%2F%2Fidenticons.github.com%2Fad2f6831adfe0801e929c20710d3e537.png&r=x","gravatar_id":"79dd31020b3bea2124d60cb5e3cd2edf","url":"https://api.github.com/users/sfdc-kho","html_url":"https://github.com/sfdc-kho","followers_url":"https://api.github.com/users/sfdc-kho/followers","following_url":"https://api.github.com/users/sfdc-kho/following{/other_user}","gists_url":"https://api.github.com/users/sfdc-kho/gists{/gist_id}","starred_url":"https://api.github.com/users/sfdc-kho/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sfdc-kho/subscriptions","organizations_url":"https://api.github.com/users/sfdc-kho/orgs","repos_url":"https://api.github.com/users/sfdc-kho/repos","events_url":"https://api.github.com/users/sfdc-kho/events{/privacy}","received_events_url":"https://api.github.com/users/sfdc-kho/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/saltstack/salt-api/labels/0+-+Backlog","name":"0 - Backlog","color":"CCCCCC"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/saltstack/salt-api/milestones/2","labels_url":"https://api.github.com/repos/saltstack/salt-api/milestones/2/labels","id":187473,"number":2,"title":"Approved for future release","description":"","creator":{"login":"thatch45","id":507599,"avatar_url":"https://gravatar.com/avatar/ff7bc69b52eecf808141c470543db4f3?d=https%3A%2F%2Fidenticons.github.com%2F6a6eafefee200db675061e2df14be5f7.png&r=x","gravatar_id":"ff7bc69b52eecf808141c470543db4f3","url":"https://api.github.com/users/thatch45","html_url":"https://github.com/thatch45","followers_url":"https://api.github.com/users/thatch45/followers","following_url":"https://api.github.com/users/thatch45/following{/other_user}","gists_url":"https://api.github.com/users/thatch45/gists{/gist_id}","starred_url":"https://api.github.com/users/thatch45/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/thatch45/subscriptions","organizations_url":"https://api.github.com/users/thatch45/orgs","repos_url":"https://api.github.com/users/thatch45/repos","events_url":"https://api.github.com/users/thatch45/events{/privacy}","received_events_url":"https://api.github.com/users/thatch45/received_events","type":"User","site_admin":false},"open_issues":1,"closed_issues":7,"state":"open","created_at":"2012-10-01T17:16:46Z","updated_at":"2014-03-04T18:08:09Z","due_on":null},"comments":4,"created_at":"2013-02-26T00:44:05Z","updated_at":"2014-03-04T18:28:12Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Currently, the minion response when a job hasn't completed is:\r\nbash-3.2$ curl -i localhost:8000/jobs/20130225115005304834 \\\r\n> -H \"X-Auth-Token: 129c6a5dadd1463932fd9db452b52148c44c6c91\" \\\r\n> -H \"Accept: application/json\"\r\nHTTP/1.1 200 OK\r\nContent-Length: 16\r\nVary: Accept-Encoding\r\nServer: CherryPy/3.2.2\r\nAllow: GET, HEAD, POST\r\nCache-Control: private\r\nDate: Mon, 25 Feb 2013 19:50:12 GMT\r\nContent-Type: application/json\r\nSet-Cookie: session_id=129c6a5dadd1463932fd9db452b52148c44c6c91; expires=Tue, 26 Feb 2013 05:50:12 GMT; Path=/\r\n\r\n{\"return\": [{}]}\r\n\r\nI am using this and a combination of saltutil.running to determine whether the job is still running, dead or completed. However, if the other issues like streaming responses get incorporated, it will become increasingly difficult to detect the state of any given job. Is it possible to return more information about what the state of the job is in the response?\r\n\r\n\r\n","score":1.0}]} + diff --git a/lib/github/tests/ReplayData/Search.testUrlquotingOfQuery.txt b/lib/github/tests/ReplayData/Search.testUrlquotingOfQuery.txt new file mode 100644 index 0000000000..f8f5d1465c --- /dev/null +++ b/lib/github/tests/ReplayData/Search.testUrlquotingOfQuery.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/search/issues?q=repo%3Asaltstack%2Fsalt-api+type%3AIssues+updated%3A%3E2014-03-04T18%3A28%3A11Z +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '29'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '62E81E32:490B:3BB7A87:5325E2ED'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept-Encoding'), ('content-length', '19065'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '30'), ('cache-control', 'no-cache'), ('date', 'Sun, 16 Mar 2014 17:44:14 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1394991914')] +{"total_count":6,"items":[{"url":"https://api.github.com/repos/saltstack/salt-api/issues/144","labels_url":"https://api.github.com/repos/saltstack/salt-api/issues/144/labels{/name}","comments_url":"https://api.github.com/repos/saltstack/salt-api/issues/144/comments","events_url":"https://api.github.com/repos/saltstack/salt-api/issues/144/events","html_url":"https://github.com/saltstack/salt-api/pull/144","id":29138794,"number":144,"title":"tools.cpstats.on needs to be placed under root","user":{"login":"LucasEwalt","id":193133,"avatar_url":"https://gravatar.com/avatar/34a7644f0fd54bbc2c41e0f34b0ef1ea?d=https%3A%2F%2Fidenticons.github.com%2Fd1ea33a87ab250461f229f3be959de3b.png&r=x","gravatar_id":"34a7644f0fd54bbc2c41e0f34b0ef1ea","url":"https://api.github.com/users/LucasEwalt","html_url":"https://github.com/LucasEwalt","followers_url":"https://api.github.com/users/LucasEwalt/followers","following_url":"https://api.github.com/users/LucasEwalt/following{/other_user}","gists_url":"https://api.github.com/users/LucasEwalt/gists{/gist_id}","starred_url":"https://api.github.com/users/LucasEwalt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/LucasEwalt/subscriptions","organizations_url":"https://api.github.com/users/LucasEwalt/orgs","repos_url":"https://api.github.com/users/LucasEwalt/repos","events_url":"https://api.github.com/users/LucasEwalt/events{/privacy}","received_events_url":"https://api.github.com/users/LucasEwalt/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","assignee":null,"milestone":null,"comments":0,"created_at":"2014-03-10T22:31:05Z","updated_at":"2014-03-10T22:32:46Z","closed_at":"2014-03-10T22:32:46Z","pull_request":{"html_url":"https://github.com/saltstack/salt-api/pull/144","diff_url":"https://github.com/saltstack/salt-api/pull/144.diff","patch_url":"https://github.com/saltstack/salt-api/pull/144.patch"},"body":"Small error, tools.cpstats.on actually needs to be under root for metrics to be collected for all requests.","score":1.0},{"url":"https://api.github.com/repos/saltstack/salt-api/issues/143","labels_url":"https://api.github.com/repos/saltstack/salt-api/issues/143/labels{/name}","comments_url":"https://api.github.com/repos/saltstack/salt-api/issues/143/comments","events_url":"https://api.github.com/repos/saltstack/salt-api/issues/143/events","html_url":"https://github.com/saltstack/salt-api/pull/143","id":29119248,"number":143,"title":"Expose cherrypy metrics","user":{"login":"LucasEwalt","id":193133,"avatar_url":"https://gravatar.com/avatar/34a7644f0fd54bbc2c41e0f34b0ef1ea?d=https%3A%2F%2Fidenticons.github.com%2Fd1ea33a87ab250461f229f3be959de3b.png&r=x","gravatar_id":"34a7644f0fd54bbc2c41e0f34b0ef1ea","url":"https://api.github.com/users/LucasEwalt","html_url":"https://github.com/LucasEwalt","followers_url":"https://api.github.com/users/LucasEwalt/followers","following_url":"https://api.github.com/users/LucasEwalt/following{/other_user}","gists_url":"https://api.github.com/users/LucasEwalt/gists{/gist_id}","starred_url":"https://api.github.com/users/LucasEwalt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/LucasEwalt/subscriptions","organizations_url":"https://api.github.com/users/LucasEwalt/orgs","repos_url":"https://api.github.com/users/LucasEwalt/repos","events_url":"https://api.github.com/users/LucasEwalt/events{/privacy}","received_events_url":"https://api.github.com/users/LucasEwalt/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","assignee":null,"milestone":null,"comments":4,"created_at":"2014-03-10T18:20:29Z","updated_at":"2014-03-11T15:56:02Z","closed_at":"2014-03-10T22:08:21Z","pull_request":{"html_url":"https://github.com/saltstack/salt-api/pull/143","diff_url":"https://github.com/saltstack/salt-api/pull/143.diff","patch_url":"https://github.com/saltstack/salt-api/pull/143.patch"},"body":"Expose cherrycp cpstats via /stats URI. http://docs.cherrypy.org/en/latest/refman/lib/cpstats.html?highlight=cpstats#module-cherrypy.lib.cpstats","score":1.0},{"url":"https://api.github.com/repos/saltstack/salt-api/issues/142","labels_url":"https://api.github.com/repos/saltstack/salt-api/issues/142/labels{/name}","comments_url":"https://api.github.com/repos/saltstack/salt-api/issues/142/comments","events_url":"https://api.github.com/repos/saltstack/salt-api/issues/142/events","html_url":"https://github.com/saltstack/salt-api/issues/142","id":29074591,"number":142,"title":"Use PHP to call API ,produce 400 Bad Request:Lowstates must be a list","user":{"login":"ivanwa","id":6895983,"avatar_url":"https://gravatar.com/avatar/5449da031675d985e6fb03f1d81dd6c2?d=https%3A%2F%2Fidenticons.github.com%2Fc7fd88fd0ac6e13142c23c2f1232baf5.png&r=x","gravatar_id":"5449da031675d985e6fb03f1d81dd6c2","url":"https://api.github.com/users/ivanwa","html_url":"https://github.com/ivanwa","followers_url":"https://api.github.com/users/ivanwa/followers","following_url":"https://api.github.com/users/ivanwa/following{/other_user}","gists_url":"https://api.github.com/users/ivanwa/gists{/gist_id}","starred_url":"https://api.github.com/users/ivanwa/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ivanwa/subscriptions","organizations_url":"https://api.github.com/users/ivanwa/orgs","repos_url":"https://api.github.com/users/ivanwa/repos","events_url":"https://api.github.com/users/ivanwa/events{/privacy}","received_events_url":"https://api.github.com/users/ivanwa/received_events","type":"User","site_admin":false},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":3,"created_at":"2014-03-10T06:15:11Z","updated_at":"2014-03-11T14:09:12Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"An error message:\r\n400 Bad Request\r\n\r\nLowstates must be a list\r\n\r\nTraceback (most recent call last):\r\n File \"/usr/lib/python2.6/site-packages/cherrypy/_cprequest.py\", line 656, in respond\r\n response.body = self.handler()\r\n File \"/usr/lib/python2.6/site-packages/cherrypy/lib/encoding.py\", line 188, in __call__\r\n self.body = self.oldhandler(*args, **kwargs)\r\n File \"/usr/lib/python2.6/site-packages/saltapi/netapi/rest_cherrypy/app.py\", line 273, in hypermedia_handler\r\n ret = cherrypy.serving.request._hypermedia_inner_handler(*args, **kwargs)\r\n File \"/usr/lib/python2.6/site-packages/cherrypy/_cpdispatch.py\", line 34, in __call__\r\n return self.callable(*self.args, **self.kwargs)\r\n File \"/usr/lib/python2.6/site-packages/saltapi/netapi/rest_cherrypy/app.py\", line 1074, in POST\r\n 'return': list(self.exec_lowstate()),\r\n File \"/usr/lib/python2.6/site-packages/saltapi/netapi/rest_cherrypy/app.py\", line 490, in exec_lowstate\r\n raise cherrypy.HTTPError(400, 'Lowstates must be a list')\r\nHTTPError: (400, 'Lowstates must be a list')\r\n\r\n--------------------------------------------------------------------------------------------------------------------------------\r\nAnd I use the command line to run, but it can be successful.\r\n[root@localhost salt]# curl -k https://192.168.1.159:8000/run/ \\\r\n> -H \"Accept: application/x-yaml\" \\\r\n> -d username='saltapi' \\\r\n> -d password='123456' \\\r\n> -d eauth='pam' \\\r\n> -d client='local' \\\r\n> -d tgt='*' \\\r\n> -d fun='test.ping'\r\nreturn:\r\n- {}\r\n\r\n--------------------------------------------------------------------------------------------------------------------------------\r\nMy PHP script : index.php\r\n$url = \"https://192.168.1.159:8000/run\";\r\n$post_data = array (\r\n\t\t\"username\" => \"saltapi\",\r\n\t\t\"password\" => \"123456\",\r\n\t\t\"eauth\" => \"pam\",\r\n\t\t\"client\" => \"local\",\r\n\t\t\"tgt\" => \"*\",\r\n\t\t\"fun\" => \"test.ping\",\r\n\t\t\"arg\"=>\"\"\r\n);\r\n$ch = curl_init ();\r\ncurl_setopt ( $ch, CURLOPT_URL, $url );\r\ncurl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, false );\r\ncurl_setopt ( $ch, CURLOPT_SSL_VERIFYHOST, false );\r\ncurl_setopt($ch, CURLOPT_HTTPHEADER, array(\"Content-type: application/x-www-form-urlencoded\",'Expect:'));\r\ncurl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );\r\n\r\ncurl_setopt ( $ch, CURLOPT_POST, 1 );\r\ncurl_setopt ( $ch, CURLOPT_POSTFIELDS, $post_data );\r\n$output = curl_exec ( $ch );\r\ncurl_close ( $ch );\r\n// print\r\nprint_r ( $output );\r\n\r\n--------------------------------------------------------------------------------------------------------------------------------\r\nMy master:\r\ninterface: 192.168.1.159\r\n\r\nrest_cherrypy:\r\n host: 0.0.0.0\r\n port: 8000\r\n debug: true\r\n static: /salt-webui/halite/halite\r\n app: /salt-webui/halite/halite\r\n ssl_crt: /etc/pki/tls/certs/localhost.crt\r\n ssl_key: /etc/pki/tls/private/localhost_nopass.key\r\n\r\nexternal_auth:\r\n pam:\r\n saltapi:\r\n - .*","score":1.0},{"url":"https://api.github.com/repos/saltstack/salt-api/issues/141","labels_url":"https://api.github.com/repos/saltstack/salt-api/issues/141/labels{/name}","comments_url":"https://api.github.com/repos/saltstack/salt-api/issues/141/comments","events_url":"https://api.github.com/repos/saltstack/salt-api/issues/141/events","html_url":"https://github.com/saltstack/salt-api/issues/141","id":28842635,"number":141,"title":"get error when start salt-api [ERROR ] Not loading 'rest_wsgi'. 'port' not specified in config","user":{"login":"justlooks","id":295168,"avatar_url":"https://gravatar.com/avatar/ca2d4ef0024cd926cc7a6218f7a4aed8?d=https%3A%2F%2Fidenticons.github.com%2F32491008424b6a810a81a3bfd7c139a9.png&r=x","gravatar_id":"ca2d4ef0024cd926cc7a6218f7a4aed8","url":"https://api.github.com/users/justlooks","html_url":"https://github.com/justlooks","followers_url":"https://api.github.com/users/justlooks/followers","following_url":"https://api.github.com/users/justlooks/following{/other_user}","gists_url":"https://api.github.com/users/justlooks/gists{/gist_id}","starred_url":"https://api.github.com/users/justlooks/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/justlooks/subscriptions","organizations_url":"https://api.github.com/users/justlooks/orgs","repos_url":"https://api.github.com/users/justlooks/repos","events_url":"https://api.github.com/users/justlooks/events{/privacy}","received_events_url":"https://api.github.com/users/justlooks/received_events","type":"User","site_admin":false},"labels":[],"state":"open","assignee":null,"milestone":null,"comments":1,"created_at":"2014-03-06T01:23:22Z","updated_at":"2014-03-06T02:31:20Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"# service salt-api start\r\nStarting salt-api daemon: [ERROR ] Not loading 'rest_wsgi'. 'port' not specified in config\r\n[06/Mar/2014:09:20:31] ENGINE Listening for SIGHUP.\r\n[06/Mar/2014:09:20:31] ENGINE Listening for SIGTERM.\r\n[06/Mar/2014:09:20:31] ENGINE Listening for SIGUSR1.\r\n[06/Mar/2014:09:20:31] ENGINE Bus STARTING\r\nCherryPy Checker:\r\n'log_file' is obsolete. Use 'log.error_file' instead.\r\nsection: [saltopts]\r\n\r\n[06/Mar/2014:09:20:31] ENGINE Started monitor thread '_TimeoutMonitor'.\r\n[06/Mar/2014:09:20:31] ENGINE Started monitor thread 'Autoreloader'.\r\n[06/Mar/2014:09:20:31] ENGINE Serving on 0.0.0.0:8888\r\n[06/Mar/2014:09:20:31] ENGINE Bus STARTED\r\n","score":1.0},{"url":"https://api.github.com/repos/saltstack/salt-api/issues/73","labels_url":"https://api.github.com/repos/saltstack/salt-api/issues/73/labels{/name}","comments_url":"https://api.github.com/repos/saltstack/salt-api/issues/73/comments","events_url":"https://api.github.com/repos/saltstack/salt-api/issues/73/events","html_url":"https://github.com/saltstack/salt-api/issues/73","id":13141224,"number":73,"title":"Add a zero-dep, bare-WSGI REST module","user":{"login":"whiteinge","id":91293,"avatar_url":"https://gravatar.com/avatar/f0bb4c8e95d355891ab9028e4bac480e?d=https%3A%2F%2Fidenticons.github.com%2Fa310e640ddcc1bf22c861dddb9ff4f76.png&r=x","gravatar_id":"f0bb4c8e95d355891ab9028e4bac480e","url":"https://api.github.com/users/whiteinge","html_url":"https://github.com/whiteinge","followers_url":"https://api.github.com/users/whiteinge/followers","following_url":"https://api.github.com/users/whiteinge/following{/other_user}","gists_url":"https://api.github.com/users/whiteinge/gists{/gist_id}","starred_url":"https://api.github.com/users/whiteinge/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/whiteinge/subscriptions","organizations_url":"https://api.github.com/users/whiteinge/orgs","repos_url":"https://api.github.com/users/whiteinge/repos","events_url":"https://api.github.com/users/whiteinge/events{/privacy}","received_events_url":"https://api.github.com/users/whiteinge/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/saltstack/salt-api/labels/0+-+Backlog","name":"0 - Backlog","color":"CCCCCC"}],"state":"closed","assignee":null,"milestone":{"url":"https://api.github.com/repos/saltstack/salt-api/milestones/2","labels_url":"https://api.github.com/repos/saltstack/salt-api/milestones/2/labels","id":187473,"number":2,"title":"Approved for future release","description":"","creator":{"login":"thatch45","id":507599,"avatar_url":"https://gravatar.com/avatar/ff7bc69b52eecf808141c470543db4f3?d=https%3A%2F%2Fidenticons.github.com%2F6a6eafefee200db675061e2df14be5f7.png&r=x","gravatar_id":"ff7bc69b52eecf808141c470543db4f3","url":"https://api.github.com/users/thatch45","html_url":"https://github.com/thatch45","followers_url":"https://api.github.com/users/thatch45/followers","following_url":"https://api.github.com/users/thatch45/following{/other_user}","gists_url":"https://api.github.com/users/thatch45/gists{/gist_id}","starred_url":"https://api.github.com/users/thatch45/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/thatch45/subscriptions","organizations_url":"https://api.github.com/users/thatch45/orgs","repos_url":"https://api.github.com/users/thatch45/repos","events_url":"https://api.github.com/users/thatch45/events{/privacy}","received_events_url":"https://api.github.com/users/thatch45/received_events","type":"User","site_admin":false},"open_issues":1,"closed_issues":7,"state":"open","created_at":"2012-10-01T17:16:46Z","updated_at":"2014-03-04T18:08:09Z","due_on":null},"comments":1,"created_at":"2013-04-12T21:56:30Z","updated_at":"2014-03-04T21:13:47Z","closed_at":"2013-04-13T05:57:19Z","pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"A bare-bones \"REST\" WSGI app could be accomplished with just the Python stdlib in about ~200 LOC so we might as well. :)\r\n\r\n* Only handles JSON in/out.\r\n* Only provide a single URL.\r\n* Basically mimic the ``/run`` URL in the ``rest_cherrypy`` module.","score":1.0},{"url":"https://api.github.com/repos/saltstack/salt-api/issues/49","labels_url":"https://api.github.com/repos/saltstack/salt-api/issues/49/labels{/name}","comments_url":"https://api.github.com/repos/saltstack/salt-api/issues/49/comments","events_url":"https://api.github.com/repos/saltstack/salt-api/issues/49/events","html_url":"https://github.com/saltstack/salt-api/issues/49","id":11388256,"number":49,"title":"More information in jobs resource response","user":{"login":"sfdc-kho","id":3269880,"avatar_url":"https://gravatar.com/avatar/79dd31020b3bea2124d60cb5e3cd2edf?d=https%3A%2F%2Fidenticons.github.com%2Fad2f6831adfe0801e929c20710d3e537.png&r=x","gravatar_id":"79dd31020b3bea2124d60cb5e3cd2edf","url":"https://api.github.com/users/sfdc-kho","html_url":"https://github.com/sfdc-kho","followers_url":"https://api.github.com/users/sfdc-kho/followers","following_url":"https://api.github.com/users/sfdc-kho/following{/other_user}","gists_url":"https://api.github.com/users/sfdc-kho/gists{/gist_id}","starred_url":"https://api.github.com/users/sfdc-kho/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sfdc-kho/subscriptions","organizations_url":"https://api.github.com/users/sfdc-kho/orgs","repos_url":"https://api.github.com/users/sfdc-kho/repos","events_url":"https://api.github.com/users/sfdc-kho/events{/privacy}","received_events_url":"https://api.github.com/users/sfdc-kho/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/saltstack/salt-api/labels/0+-+Backlog","name":"0 - Backlog","color":"CCCCCC"}],"state":"open","assignee":null,"milestone":{"url":"https://api.github.com/repos/saltstack/salt-api/milestones/2","labels_url":"https://api.github.com/repos/saltstack/salt-api/milestones/2/labels","id":187473,"number":2,"title":"Approved for future release","description":"","creator":{"login":"thatch45","id":507599,"avatar_url":"https://gravatar.com/avatar/ff7bc69b52eecf808141c470543db4f3?d=https%3A%2F%2Fidenticons.github.com%2F6a6eafefee200db675061e2df14be5f7.png&r=x","gravatar_id":"ff7bc69b52eecf808141c470543db4f3","url":"https://api.github.com/users/thatch45","html_url":"https://github.com/thatch45","followers_url":"https://api.github.com/users/thatch45/followers","following_url":"https://api.github.com/users/thatch45/following{/other_user}","gists_url":"https://api.github.com/users/thatch45/gists{/gist_id}","starred_url":"https://api.github.com/users/thatch45/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/thatch45/subscriptions","organizations_url":"https://api.github.com/users/thatch45/orgs","repos_url":"https://api.github.com/users/thatch45/repos","events_url":"https://api.github.com/users/thatch45/events{/privacy}","received_events_url":"https://api.github.com/users/thatch45/received_events","type":"User","site_admin":false},"open_issues":1,"closed_issues":7,"state":"open","created_at":"2012-10-01T17:16:46Z","updated_at":"2014-03-04T18:08:09Z","due_on":null},"comments":4,"created_at":"2013-02-26T00:44:05Z","updated_at":"2014-03-04T18:28:12Z","closed_at":null,"pull_request":{"html_url":null,"diff_url":null,"patch_url":null},"body":"Currently, the minion response when a job hasn't completed is:\r\nbash-3.2$ curl -i localhost:8000/jobs/20130225115005304834 \\\r\n> -H \"X-Auth-Token: 129c6a5dadd1463932fd9db452b52148c44c6c91\" \\\r\n> -H \"Accept: application/json\"\r\nHTTP/1.1 200 OK\r\nContent-Length: 16\r\nVary: Accept-Encoding\r\nServer: CherryPy/3.2.2\r\nAllow: GET, HEAD, POST\r\nCache-Control: private\r\nDate: Mon, 25 Feb 2013 19:50:12 GMT\r\nContent-Type: application/json\r\nSet-Cookie: session_id=129c6a5dadd1463932fd9db452b52148c44c6c91; expires=Tue, 26 Feb 2013 05:50:12 GMT; Path=/\r\n\r\n{\"return\": [{}]}\r\n\r\nI am using this and a combination of saltutil.running to determine whether the job is still running, dead or completed. However, if the other issues like streaming responses get incorporated, it will become increasingly difficult to detect the state of any given job. Is it possible to return more information about what the state of the job is in the response?\r\n\r\n\r\n","score":1.0}]} + diff --git a/lib/github/tests/ReplayData/SpecificExceptions.testBadCredentials.txt b/lib/github/tests/ReplayData/SpecificExceptions.testBadCredentials.txt new file mode 100644 index 0000000000..6c11ada80c --- /dev/null +++ b/lib/github/tests/ReplayData/SpecificExceptions.testBadCredentials.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +401 +[('status', '401 Unauthorized'), ('content-length', '29'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('etag', '"ca6a3702f840b6bff0bb1bca6be0337c"'), ('date', 'Sat, 02 Jun 2012 12:12:32 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"message":"Bad credentials"} + diff --git a/lib/github/tests/ReplayData/SpecificExceptions.testBadUserAgent.txt b/lib/github/tests/ReplayData/SpecificExceptions.testBadUserAgent.txt new file mode 100644 index 0000000000..05c2beb511 --- /dev/null +++ b/lib/github/tests/ReplayData/SpecificExceptions.testBadUserAgent.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': ''} +null +403 +[('date', 'Fri, 17 May 2013 12:16:34 GMT'), ('content-length', '107'), ('content-type', 'application/octet-stream'), ('connection', 'keep-alive'), ('server', 'GitHub.com')] +{"message":"Missing or invalid User Agent string. See http://developer.github.com/v3/#user-agent-required"} + diff --git a/lib/github/tests/ReplayData/SpecificExceptions.testRateLimitExceeded.txt b/lib/github/tests/ReplayData/SpecificExceptions.testRateLimitExceeded.txt new file mode 100644 index 0000000000..2c7ff783a6 --- /dev/null +++ b/lib/github/tests/ReplayData/SpecificExceptions.testRateLimitExceeded.txt @@ -0,0 +1,55 @@ +https +GET +api.github.com +None +/users/jacquev6 +{'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '2'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Accept-Encoding'), ('content-length', '1299'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 17 May 2013 12:09:51 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '60'), ('etag', '"de9347ae9c0c83b44d6c81d05aba4877"'), ('cache-control', 'public, max-age=60, s-maxage=60'), ('date', 'Fri, 17 May 2013 12:23:52 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8')] +{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","name":"Vincent Jacques","company":"Criteo","blog":"http://vincent-jacques.net","location":"Paris, France","email":"vincent@vincent-jacques.net","hireable":false,"bio":"","public_repos":16,"followers":27,"following":39,"created_at":"2010-07-09T06:10:06Z","updated_at":"2013-05-17T12:09:51Z","public_gists":3} + +https +GET +api.github.com +None +/users/jacquev6 +{'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '1'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Accept-Encoding'), ('content-length', '1299'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 17 May 2013 12:09:51 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '60'), ('etag', '"de9347ae9c0c83b44d6c81d05aba4877"'), ('cache-control', 'public, max-age=60, s-maxage=60'), ('date', 'Fri, 17 May 2013 12:23:53 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8')] +{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","name":"Vincent Jacques","company":"Criteo","blog":"http://vincent-jacques.net","location":"Paris, France","email":"vincent@vincent-jacques.net","hireable":false,"bio":"","public_repos":16,"followers":27,"following":39,"created_at":"2010-07-09T06:10:06Z","updated_at":"2013-05-17T12:09:51Z","public_gists":3} + +https +GET +api.github.com +None +/users/jacquev6 +{'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '0'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Accept-Encoding'), ('content-length', '1299'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 17 May 2013 12:09:51 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '60'), ('etag', '"de9347ae9c0c83b44d6c81d05aba4877"'), ('cache-control', 'public, max-age=60, s-maxage=60'), ('date', 'Fri, 17 May 2013 12:23:54 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8')] +{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","name":"Vincent Jacques","company":"Criteo","blog":"http://vincent-jacques.net","location":"Paris, France","email":"vincent@vincent-jacques.net","hireable":false,"bio":"","public_repos":16,"followers":27,"following":39,"created_at":"2010-07-09T06:10:06Z","updated_at":"2013-05-17T12:09:51Z","public_gists":3} + +https +GET +api.github.com +None +/users/jacquev6 +{'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '0'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('access-control-allow-credentials', 'true'), ('vary', 'Accept, Accept-Encoding'), ('content-length', '1299'), ('server', 'GitHub.com'), ('last-modified', 'Fri, 17 May 2013 12:09:51 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '60'), ('etag', '"de9347ae9c0c83b44d6c81d05aba4877"'), ('cache-control', 'public, max-age=60, s-maxage=60'), ('date', 'Fri, 17 May 2013 12:23:55 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8')] +{"login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","html_url":"https://github.com/jacquev6","followers_url":"https://api.github.com/users/jacquev6/followers","following_url":"https://api.github.com/users/jacquev6/following{/other_user}","gists_url":"https://api.github.com/users/jacquev6/gists{/gist_id}","starred_url":"https://api.github.com/users/jacquev6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacquev6/subscriptions","organizations_url":"https://api.github.com/users/jacquev6/orgs","repos_url":"https://api.github.com/users/jacquev6/repos","events_url":"https://api.github.com/users/jacquev6/events{/privacy}","received_events_url":"https://api.github.com/users/jacquev6/received_events","type":"User","name":"Vincent Jacques","company":"Criteo","blog":"http://vincent-jacques.net","location":"Paris, France","email":"vincent@vincent-jacques.net","hireable":false,"bio":"","public_repos":16,"followers":27,"following":39,"created_at":"2010-07-09T06:10:06Z","updated_at":"2013-05-17T12:09:51Z","public_gists":3} + +https +GET +api.github.com +None +/users/jacquev6 +{'User-Agent': 'PyGithub/Python'} +null +403 +[('status', '403 Forbidden'), ('x-ratelimit-remaining', '0'), ('x-github-media-type', 'github.beta; format=json'), ('x-content-type-options', 'nosniff'), ('access-control-expose-headers', 'Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-OAuth-Scopes, X-Accepted-OAuth-Scopes'), ('content-length', '56'), ('server', 'GitHub.com'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '60'), ('access-control-allow-credentials', 'true'), ('date', 'Fri, 17 May 2013 12:23:56 GMT'), ('access-control-allow-origin', '*'), ('content-type', 'application/json; charset=utf-8')] +{"message":"API Rate Limit Exceeded for 92.104.200.119"} + diff --git a/lib/github/tests/ReplayData/SpecificExceptions.testUnknownObject.txt b/lib/github/tests/ReplayData/SpecificExceptions.testUnknownObject.txt new file mode 100644 index 0000000000..cdc2abb7f1 --- /dev/null +++ b/lib/github/tests/ReplayData/SpecificExceptions.testUnknownObject.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4971'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"0e6c8f1cbb0c4f0eae96d8a76de9a43f"'), ('date', 'Sat, 02 Jun 2012 12:11:46 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","total_private_repos":5,"company":"Criteo","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","public_gists":3,"email":"vincent@vincent-jacques.net","owned_private_repos":5,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","private_gists":5,"collaborators":0,"created_at":"2010-07-09T06:10:06Z","blog":"http://vincent-jacques.net","location":"Paris, France","url":"https://api.github.com/users/jacquev6","following":24,"disk_usage":16988,"public_repos":10,"name":"Vincent Jacques","hireable":false,"followers":13,"html_url":"https://github.com/jacquev6","id":327146,"plan":{"private_repos":5,"collaborators":1,"space":614400,"name":"micro"},"bio":""} + +https +GET +api.github.com +None +/repos/jacquev6/Xxx +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +404 +[('status', '404 Not Found'), ('x-ratelimit-remaining', '4970'), ('content-length', '23'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"e66a7a6c91e2c26803f3f49feb7a883f"'), ('date', 'Sat, 02 Jun 2012 12:11:47 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"message":"Not Found"} + diff --git a/lib/github/tests/ReplayData/Status.testGetLastMessage.txt b/lib/github/tests/ReplayData/Status.testGetLastMessage.txt new file mode 100644 index 0000000000..3d4b27e8aa --- /dev/null +++ b/lib/github/tests/ReplayData/Status.testGetLastMessage.txt @@ -0,0 +1,11 @@ +https +GET +status.github.com +443 +/api/last-message.json +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '93'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('connection', 'keep-alive'), ('date', 'Fri, 06 Sep 2013 08:34:01 GMT'), ('content-type', 'application/json;charset=utf-8')] +{"status":"good","body":"Everything operating normally.","created_on":"2013-09-01T15:41:46Z"} + diff --git a/lib/github/tests/ReplayData/Status.testGetMessages.txt b/lib/github/tests/ReplayData/Status.testGetMessages.txt new file mode 100644 index 0000000000..6c79412a7a --- /dev/null +++ b/lib/github/tests/ReplayData/Status.testGetMessages.txt @@ -0,0 +1,11 @@ +https +GET +status.github.com +443 +/api/messages.json +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '1492'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('connection', 'keep-alive'), ('date', 'Fri, 06 Sep 2013 08:41:31 GMT'), ('content-type', 'application/json;charset=utf-8')] +[{"status":"good","body":"Everything operating normally.","created_on":"2013-09-01T15:41:46Z"},{"status":"minor","body":"GitHub Pages are currently unavailable. We're investigating the problem.","created_on":"2013-09-01T15:26:59Z"},{"status":"good","body":"Everything operating normally.","created_on":"2013-09-01T15:17:24Z"},{"status":"minor","body":"We are investigating an increased rate of errors on GitHub.com","created_on":"2013-09-01T15:14:24Z"},{"status":"good","body":"Everything operating normally.","created_on":"2013-09-01T06:52:46Z"},{"status":"minor","body":"Some GitHub pages are again unavailable. We are continuing to investigate.","created_on":"2013-09-01T06:50:31Z"},{"status":"good","body":"Everything operating normally.","created_on":"2013-09-01T06:47:25Z"},{"status":"minor","body":"Some GitHub pages are temporarily unavailable.","created_on":"2013-09-01T06:43:03Z"},{"status":"good","body":"We're back up, now featuring a massively upgraded DB cluster with SSDs and 10Gbps networking! Thanks for your patience.","created_on":"2013-08-31T12:13:04Z"},{"status":"major","body":"We're beginning our scheduled maintenance now, and expect to be back up in 20 minutes. https://github.com/blog/1603-site-maintenance-august-31st-2013","created_on":"2013-08-31T12:00:13Z"},{"status":"good","body":"Everything operating normally.","created_on":"2013-08-31T11:45:50Z"},{"status":"minor","body":"We are investigating issues with GitHub Pages","created_on":"2013-08-31T11:43:39Z"}] + diff --git a/lib/github/tests/ReplayData/Status.testGetStatus.txt b/lib/github/tests/ReplayData/Status.testGetStatus.txt new file mode 100644 index 0000000000..e01aec021b --- /dev/null +++ b/lib/github/tests/ReplayData/Status.testGetStatus.txt @@ -0,0 +1,11 @@ +https +GET +status.github.com +443 +/api/status.json +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('content-length', '55'), ('vary', 'Accept-Encoding'), ('server', 'GitHub.com'), ('connection', 'keep-alive'), ('date', 'Fri, 06 Sep 2013 08:29:36 GMT'), ('content-type', 'application/json;charset=utf-8')] +{"status":"good","last_updated":"2013-09-06T08:29:27Z"} + diff --git a/lib/github/tests/ReplayData/Tag.setUp.txt b/lib/github/tests/ReplayData/Tag.setUp.txt new file mode 100644 index 0000000000..b743ba7088 --- /dev/null +++ b/lib/github/tests/ReplayData/Tag.setUp.txt @@ -0,0 +1,33 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4999'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"9de15de3e62b82f61ccc4ffeadea7f9f"'), ('date', 'Sat, 19 May 2012 04:49:44 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"collaborators":0,"type":"User","public_gists":1,"company":"Criteo","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","total_private_repos":5,"private_gists":5,"plan":{"collaborators":1,"private_repos":5,"name":"micro","space":614400},"public_repos":11,"followers":13,"owned_private_repos":5,"hireable":false,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","blog":"http://vincent-jacques.net","email":"vincent@vincent-jacques.net","bio":"","disk_usage":16768,"html_url":"https://github.com/jacquev6","name":"Vincent Jacques","created_at":"2010-07-09T06:10:06Z","location":"Paris, France","id":327146,"following":24} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4998'), ('content-length', '1097'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"168623303cdf933a5eda91a18bb2ad76"'), ('date', 'Sat, 19 May 2012 04:49:44 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"mirror_url":null,"svn_url":"https://github.com/jacquev6/PyGithub","has_wiki":false,"has_issues":true,"git_url":"git://github.com/jacquev6/PyGithub.git","updated_at":"2012-05-18T20:30:15Z","forks":2,"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","open_issues":17,"fork":false,"ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-18T20:30:14Z","size":220,"private":false,"has_downloads":true,"watchers":13,"html_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"name":"PyGithub","permissions":{"pull":true,"admin":true,"push":true},"language":"Python","description":"Python library implementing the full Github API v3","created_at":"2012-02-25T12:53:47Z","id":3544490} + +https +GET +api.github.com +None +/repos/jacquev6/PyGithub/tags +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4997'), ('content-length', '1873'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d43a1ebbb23a4f99f4fbac19caadc4af"'), ('date', 'Sat, 19 May 2012 04:49:45 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"zipball_url":"https://github.com/jacquev6/PyGithub/zipball/v0.3","tarball_url":"https://github.com/jacquev6/PyGithub/tarball/v0.3","name":"v0.3","commit":{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/636e6112deb72277b3bffcc3303cd7e8a7431a5d","sha":"636e6112deb72277b3bffcc3303cd7e8a7431a5d"}},{"zipball_url":"https://github.com/jacquev6/PyGithub/zipball/v0.4","tarball_url":"https://github.com/jacquev6/PyGithub/tarball/v0.4","name":"v0.4","commit":{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a3be28756101370fbc689eec3a7825c4c385a6c9","sha":"a3be28756101370fbc689eec3a7825c4c385a6c9"}},{"zipball_url":"https://github.com/jacquev6/PyGithub/zipball/v0.5","tarball_url":"https://github.com/jacquev6/PyGithub/tarball/v0.5","name":"v0.5","commit":{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/936f4a97f1a86392637ec002bbf89ff036a5062d","sha":"936f4a97f1a86392637ec002bbf89ff036a5062d"}},{"zipball_url":"https://github.com/jacquev6/PyGithub/zipball/v0.6","tarball_url":"https://github.com/jacquev6/PyGithub/tarball/v0.6","name":"v0.6","commit":{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4303c5b90e2216d927155e9609436ccb8984c495","sha":"4303c5b90e2216d927155e9609436ccb8984c495"}},{"zipball_url":"https://github.com/jacquev6/PyGithub/zipball/v0.1","tarball_url":"https://github.com/jacquev6/PyGithub/tarball/v0.1","name":"v0.1","commit":{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/dbdcda3591980de42617814f792969126e6402c3","sha":"dbdcda3591980de42617814f792969126e6402c3"}},{"zipball_url":"https://github.com/jacquev6/PyGithub/zipball/v0.2","tarball_url":"https://github.com/jacquev6/PyGithub/tarball/v0.2","name":"v0.2","commit":{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/9f0b05161f9d1962b9156e6c91fc04f382028240","sha":"9f0b05161f9d1962b9156e6c91fc04f382028240"}}] + diff --git a/lib/github/tests/ReplayData/Team.setUp.txt b/lib/github/tests/ReplayData/Team.setUp.txt new file mode 100644 index 0000000000..38e026934b --- /dev/null +++ b/lib/github/tests/ReplayData/Team.setUp.txt @@ -0,0 +1,22 @@ +https +GET +api.github.com +None +/orgs/BeaverSoftware +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4976'), ('content-length', '716'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"4862bcec9fa538316e2fcd73be37b846"'), ('date', 'Sat, 26 May 2012 21:09:52 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"public_gists":0,"type":"Organization","disk_usage":112,"private_gists":0,"public_repos":2,"url":"https://api.github.com/orgs/BeaverSoftware","total_private_repos":0,"plan":{"private_repos":0,"name":"free","space":307200},"blog":null,"avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","owned_private_repos":0,"collaborators":0,"company":null,"login":"BeaverSoftware","email":null,"followers":0,"name":null,"created_at":"2012-02-09T19:20:12Z","location":"Paris, France","id":1424031,"billing_email":"BeaverSoftware@vincent-jacques.net","following":0,"html_url":"https://github.com/BeaverSoftware"} + +https +GET +api.github.com +None +/teams/189850 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4975'), ('content-length', '145'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"03555a65309084f36bcf959063a39d35"'), ('date', 'Sat, 26 May 2012 21:09:52 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"repos_count":0,"url":"https://api.github.com/teams/189850","members_count":0,"name":"Team created by PyGithub","permission":"pull","id":189850} + diff --git a/lib/github/tests/ReplayData/Team.testDelete.txt b/lib/github/tests/ReplayData/Team.testDelete.txt new file mode 100644 index 0000000000..69f4b6a20c --- /dev/null +++ b/lib/github/tests/ReplayData/Team.testDelete.txt @@ -0,0 +1,11 @@ +https +DELETE +api.github.com +None +/teams/189850 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4946'), ('x-ratelimit-limit', '5000'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sat, 26 May 2012 21:16:46 GMT')] + + diff --git a/lib/github/tests/ReplayData/Team.testEditWithAllArguments.txt b/lib/github/tests/ReplayData/Team.testEditWithAllArguments.txt new file mode 100644 index 0000000000..4a68ad6fa7 --- /dev/null +++ b/lib/github/tests/ReplayData/Team.testEditWithAllArguments.txt @@ -0,0 +1,11 @@ +https +PATCH +api.github.com +None +/teams/189850 +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"name": "Name edited twice by PyGithub", "permission": "admin"} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4949'), ('content-length', '151'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"8856425cedbdf3075576e823f39fc3d6"'), ('date', 'Sat, 26 May 2012 21:14:46 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"permission":"admin","members_count":0,"url":"https://api.github.com/teams/189850","repos_count":0,"name":"Name edited twice by PyGithub","id":189850} + diff --git a/lib/github/tests/ReplayData/Team.testEditWithoutArguments.txt b/lib/github/tests/ReplayData/Team.testEditWithoutArguments.txt new file mode 100644 index 0000000000..999afb15a6 --- /dev/null +++ b/lib/github/tests/ReplayData/Team.testEditWithoutArguments.txt @@ -0,0 +1,11 @@ +https +PATCH +api.github.com +None +/teams/189850 +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"name": "Name edited by PyGithub"} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4952'), ('content-length', '144'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"843001aba6d35f27320c0788c9ff64b1"'), ('date', 'Sat, 26 May 2012 21:14:39 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"permission":"pull","members_count":0,"url":"https://api.github.com/teams/189850","repos_count":0,"name":"Name edited by PyGithub","id":189850} + diff --git a/lib/github/tests/ReplayData/Team.testMembers.txt b/lib/github/tests/ReplayData/Team.testMembers.txt new file mode 100644 index 0000000000..24a60d50ae --- /dev/null +++ b/lib/github/tests/ReplayData/Team.testMembers.txt @@ -0,0 +1,99 @@ +https +GET +api.github.com +None +/users/jacquev6 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4974'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"fcfa200b026b10e9a41dfc2bb1057b33"'), ('date', 'Sat, 26 May 2012 21:09:53 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"private_gists":5,"collaborators":0,"type":"User","disk_usage":17016,"hireable":false,"url":"https://api.github.com/users/jacquev6","plan":{"collaborators":1,"name":"micro","private_repos":5,"space":614400},"public_repos":11,"bio":"","total_private_repos":5,"company":"Criteo","blog":"http://vincent-jacques.net","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","email":"vincent@vincent-jacques.net","owned_private_repos":5,"followers":13,"name":"Vincent Jacques","public_gists":3,"created_at":"2010-07-09T06:10:06Z","location":"Paris, France","id":327146,"following":24,"html_url":"https://github.com/jacquev6"} + +https +GET +api.github.com +None +/teams/189850/members +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4973'), ('content-length', '2'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d751713988987e9331980363e24189ce"'), ('date', 'Sat, 26 May 2012 21:09:54 GMT'), ('content-type', 'application/json; charset=utf-8')] +[] + +https +GET +api.github.com +None +/teams/189850/members/jacquev6 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +404 +[('status', '404 Not Found'), ('x-ratelimit-remaining', '4972'), ('content-length', '23'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"e66a7a6c91e2c26803f3f49feb7a883f"'), ('date', 'Sat, 26 May 2012 21:09:54 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"message":"Not Found"} + +https +PUT +api.github.com +None +/teams/189850/members/jacquev6 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4971'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sat, 26 May 2012 21:09:55 GMT')] + + +https +GET +api.github.com +None +/teams/189850/members +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4970'), ('content-length', '298'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"5c59999e9aff00a09d7aa96ad73d5ff2"'), ('date', 'Sat, 26 May 2012 21:09:56 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"}] + +https +GET +api.github.com +None +/teams/189850/members/jacquev6 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4969'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sat, 26 May 2012 21:09:56 GMT')] + + +https +DELETE +api.github.com +None +/teams/189850/members/jacquev6 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4968'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sat, 26 May 2012 21:09:57 GMT')] + + +https +GET +api.github.com +None +/teams/189850/members +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4967'), ('content-length', '2'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d751713988987e9331980363e24189ce"'), ('date', 'Sat, 26 May 2012 21:09:57 GMT'), ('content-type', 'application/json; charset=utf-8')] +[] + +https +GET +api.github.com +None +/teams/189850/members/jacquev6 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +404 +[('status', '404 Not Found'), ('x-ratelimit-remaining', '4966'), ('content-length', '23'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"e66a7a6c91e2c26803f3f49feb7a883f"'), ('date', 'Sat, 26 May 2012 21:09:58 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"message":"Not Found"} + diff --git a/lib/github/tests/ReplayData/Team.testRepoPermission.txt b/lib/github/tests/ReplayData/Team.testRepoPermission.txt new file mode 100644 index 0000000000..6846c5f811 --- /dev/null +++ b/lib/github/tests/ReplayData/Team.testRepoPermission.txt @@ -0,0 +1,21 @@ +https +GET +api.github.com +None +/repos/BeaverSoftware/FatherBeaver +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4963'), ('content-length', '1431'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"c9b98209a51840e6710aa96cb2e4eb56"'), ('date', 'Sat, 26 May 2012 21:12:35 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"organization":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031},"clone_url":"https://github.com/BeaverSoftware/FatherBeaver.git","mirror_url":null,"has_downloads":true,"watchers":2,"updated_at":"2012-02-16T21:51:15Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/BeaverSoftware/FatherBeaver","has_wiki":true,"has_issues":true,"fork":false,"forks":1,"size":0,"private":false,"open_issues":0,"svn_url":"https://github.com/BeaverSoftware/FatherBeaver","git_url":"git://github.com/BeaverSoftware/FatherBeaver.git","owner":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031},"name":"FatherBeaver","language":null,"description":"","ssh_url":"git@github.com:BeaverSoftware/FatherBeaver.git","pushed_at":null,"created_at":"2012-02-09T19:32:21Z","id":3400397,"html_url":"https://github.com/BeaverSoftware/FatherBeaver","full_name":"BeaverSoftware/FatherBeaver"} + +https +PUT +api.github.com +None +/teams/189850/repos/BeaverSoftware/FatherBeaver +{"Authorization": "Basic login_and_password_removed", "Content-Type": "application/json", "User-Agent": "PyGithub/Python"} +{"permission": "admin"} +204 +[] +{} diff --git a/lib/github/tests/ReplayData/Team.testRepos.txt b/lib/github/tests/ReplayData/Team.testRepos.txt new file mode 100644 index 0000000000..fcb489abea --- /dev/null +++ b/lib/github/tests/ReplayData/Team.testRepos.txt @@ -0,0 +1,99 @@ +https +GET +api.github.com +None +/repos/BeaverSoftware/FatherBeaver +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4963'), ('content-length', '1431'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"c9b98209a51840e6710aa96cb2e4eb56"'), ('date', 'Sat, 26 May 2012 21:12:35 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"organization":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031},"clone_url":"https://github.com/BeaverSoftware/FatherBeaver.git","mirror_url":null,"has_downloads":true,"watchers":2,"updated_at":"2012-02-16T21:51:15Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/BeaverSoftware/FatherBeaver","has_wiki":true,"has_issues":true,"fork":false,"forks":1,"size":0,"private":false,"open_issues":0,"svn_url":"https://github.com/BeaverSoftware/FatherBeaver","git_url":"git://github.com/BeaverSoftware/FatherBeaver.git","owner":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031},"name":"FatherBeaver","language":null,"description":"","ssh_url":"git@github.com:BeaverSoftware/FatherBeaver.git","pushed_at":null,"created_at":"2012-02-09T19:32:21Z","id":3400397,"html_url":"https://github.com/BeaverSoftware/FatherBeaver","full_name":"BeaverSoftware/FatherBeaver"} + +https +GET +api.github.com +None +/teams/189850/repos +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4962'), ('content-length', '2'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d751713988987e9331980363e24189ce"'), ('date', 'Sat, 26 May 2012 21:12:35 GMT'), ('content-type', 'application/json; charset=utf-8')] +[] + +https +GET +api.github.com +None +/teams/189850/repos/BeaverSoftware/FatherBeaver +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +404 +[('status', '404 Not Found'), ('x-ratelimit-remaining', '4961'), ('content-length', '23'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"e66a7a6c91e2c26803f3f49feb7a883f"'), ('date', 'Sat, 26 May 2012 21:12:36 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"message":"Not Found"} + +https +PUT +api.github.com +None +/teams/189850/repos/BeaverSoftware/FatherBeaver +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4960'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sat, 26 May 2012 21:12:36 GMT')] + + +https +GET +api.github.com +None +/teams/189850/repos +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4959'), ('content-length', '1107'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"f29ca00cf809ab0ca2bc42a50e067637"'), ('date', 'Sat, 26 May 2012 21:12:37 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"clone_url":"https://github.com/BeaverSoftware/FatherBeaver.git","has_downloads":true,"watchers":2,"updated_at":"2012-02-16T21:51:15Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/BeaverSoftware/FatherBeaver","mirror_url":null,"has_wiki":true,"has_issues":true,"fork":false,"forks":1,"size":0,"private":false,"open_issues":0,"svn_url":"https://github.com/BeaverSoftware/FatherBeaver","owner":{"url":"https://api.github.com/users/BeaverSoftware","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031,"avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"},"name":"FatherBeaver","language":null,"description":"","ssh_url":"git@github.com:BeaverSoftware/FatherBeaver.git","pushed_at":null,"created_at":"2012-02-09T19:32:21Z","id":3400397,"git_url":"git://github.com/BeaverSoftware/FatherBeaver.git","html_url":"https://github.com/BeaverSoftware/FatherBeaver","full_name":"BeaverSoftware/FatherBeaver"}] + +https +GET +api.github.com +None +/teams/189850/repos/BeaverSoftware/FatherBeaver +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4958'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sat, 26 May 2012 21:12:38 GMT')] + + +https +DELETE +api.github.com +None +/teams/189850/repos/BeaverSoftware/FatherBeaver +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4957'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sat, 26 May 2012 21:12:38 GMT')] + + +https +GET +api.github.com +None +/teams/189850/repos +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4956'), ('content-length', '2'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d751713988987e9331980363e24189ce"'), ('date', 'Sat, 26 May 2012 21:12:39 GMT'), ('content-type', 'application/json; charset=utf-8')] +[] + +https +GET +api.github.com +None +/teams/189850/repos/BeaverSoftware/FatherBeaver +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +404 +[('status', '404 Not Found'), ('x-ratelimit-remaining', '4955'), ('content-length', '23'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"e66a7a6c91e2c26803f3f49feb7a883f"'), ('date', 'Sat, 26 May 2012 21:12:39 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"message":"Not Found"} + diff --git a/lib/github/tests/ReplayData/UserKey.setUp.txt b/lib/github/tests/ReplayData/UserKey.setUp.txt new file mode 100644 index 0000000000..12f1a99655 --- /dev/null +++ b/lib/github/tests/ReplayData/UserKey.setUp.txt @@ -0,0 +1,11 @@ +https +GET +api.github.com +None +/user/keys/2626650 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4983'), ('content-length', '505'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"7261ec55c886d6bf42e48d5bf9544586"'), ('date', 'Sat, 26 May 2012 19:53:21 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/user/keys/2626650","key":"ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA2Mm0RjTNAYFfSCtUpO54usdseroUSIYg5KX4JoseTpqyiB/hqewjYLAdUq/tNIQzrkoEJWSyZrQt0ma7/YCyMYuNGd3DU6q6ZAyBeY3E9RyCiKjO3aTL2VKQGFvBVVmGdxGVSCITRphAcsKc/PF35/fg9XP9S0anMXcEFtdfMHz41SSw+XtE+Vc+6cX9FuI5qUfLGbkv8L1v3g4uw9VXlzq4GfTA+1S7D6mcoGHopAIXFlVr+2RfDKdSURMcB22z41fljO1MW4+zUS/4FyUTpL991es5fcwKXYoiE+x06VJeJJ1Krwx+DZj45uweV6cHXt2JwJEI9fWB6WyBlDejWw==","verified":true,"title":"Key added through PyGithub","id":2626650} + diff --git a/lib/github/tests/ReplayData/UserKey.testDelete.txt b/lib/github/tests/ReplayData/UserKey.testDelete.txt new file mode 100644 index 0000000000..3a838e22cc --- /dev/null +++ b/lib/github/tests/ReplayData/UserKey.testDelete.txt @@ -0,0 +1,11 @@ +https +DELETE +api.github.com +None +/user/keys/2626650 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('status', '204 No Content'), ('x-ratelimit-remaining', '4977'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sat, 26 May 2012 19:58:16 GMT')] + + diff --git a/lib/github/tests/ReplayData/UserKey.testEditWithAllArguments.txt b/lib/github/tests/ReplayData/UserKey.testEditWithAllArguments.txt new file mode 100644 index 0000000000..f9685bf3f3 --- /dev/null +++ b/lib/github/tests/ReplayData/UserKey.testEditWithAllArguments.txt @@ -0,0 +1,11 @@ +https +PATCH +api.github.com +None +/user/keys/2626650 +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{"key": "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA5Q58YmzZjU64prR5Pk91MfeHezOTgLqDYmepYbv3qjguiHtPai1vSai5WvUv3hgf9DArXsXE5CV6yoBIhAdGtpJKExHuQ2m4XTFCdbrgfQ3ypcSdgzEiQemyTA6TWwhbuwjJ1IqJMYOVLH+FBCkD8pyIpUDO7v3vaR2TCEuNwOS7lbsRsW3OkGYnUKjaPaCTe/inrqb7I3OE8cPhWJ3dM/zzzBj22J4LCNKhjKua8TFS74xGm3lNDZ6/twQl4n4xmrH/3tG+WOJicNO3JohNHqK9T0pILnr3epEyfdkBjcG0qXApqWvH2WipJhaH6of8Gdr0Z/K/7p8QFddmwNgdPQ==", "title": "Title edited by PyGithub"} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4979'), ('content-length', '503'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"b3e0d8e43865724d6f36f15753984816"'), ('date', 'Sat, 26 May 2012 19:57:25 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/user/keys/2626650","verified":true,"key":"ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA5Q58YmzZjU64prR5Pk91MfeHezOTgLqDYmepYbv3qjguiHtPai1vSai5WvUv3hgf9DArXsXE5CV6yoBIhAdGtpJKExHuQ2m4XTFCdbrgfQ3ypcSdgzEiQemyTA6TWwhbuwjJ1IqJMYOVLH+FBCkD8pyIpUDO7v3vaR2TCEuNwOS7lbsRsW3OkGYnUKjaPaCTe/inrqb7I3OE8cPhWJ3dM/zzzBj22J4LCNKhjKua8TFS74xGm3lNDZ6/twQl4n4xmrH/3tG+WOJicNO3JohNHqK9T0pILnr3epEyfdkBjcG0qXApqWvH2WipJhaH6of8Gdr0Z/K/7p8QFddmwNgdPQ==","title":"Title edited by PyGithub","id":2626650} + diff --git a/lib/github/tests/ReplayData/UserKey.testEditWithoutArguments.txt b/lib/github/tests/ReplayData/UserKey.testEditWithoutArguments.txt new file mode 100644 index 0000000000..a0d1842297 --- /dev/null +++ b/lib/github/tests/ReplayData/UserKey.testEditWithoutArguments.txt @@ -0,0 +1,11 @@ +https +PATCH +api.github.com +None +/user/keys/2626650 +{'Content-Type': 'application/json', 'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +{} +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4981'), ('content-length', '505'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"7261ec55c886d6bf42e48d5bf9544586"'), ('date', 'Sat, 26 May 2012 19:57:18 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/user/keys/2626650","key":"ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA2Mm0RjTNAYFfSCtUpO54usdseroUSIYg5KX4JoseTpqyiB/hqewjYLAdUq/tNIQzrkoEJWSyZrQt0ma7/YCyMYuNGd3DU6q6ZAyBeY3E9RyCiKjO3aTL2VKQGFvBVVmGdxGVSCITRphAcsKc/PF35/fg9XP9S0anMXcEFtdfMHz41SSw+XtE+Vc+6cX9FuI5qUfLGbkv8L1v3g4uw9VXlzq4GfTA+1S7D6mcoGHopAIXFlVr+2RfDKdSURMcB22z41fljO1MW4+zUS/4FyUTpL991es5fcwKXYoiE+x06VJeJJ1Krwx+DZj45uweV6cHXt2JwJEI9fWB6WyBlDejWw==","verified":true,"title":"Key added through PyGithub","id":2626650} + diff --git a/lib/github/tests/Repository.py b/lib/github/tests/Repository.py new file mode 100644 index 0000000000..a67e91916a --- /dev/null +++ b/lib/github/tests/Repository.py @@ -0,0 +1,662 @@ +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + +import github +import datetime + + +class Repository(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.user = self.g.get_user() + self.repo = self.user.get_repo("PyGithub") + + def testAttributes(self): + self.assertEqual(self.repo.clone_url, "https://github.com/jacquev6/PyGithub.git") + self.assertEqual(self.repo.created_at, datetime.datetime(2012, 2, 25, 12, 53, 47)) + self.assertEqual(self.repo.description, "Python library implementing the full Github API v3") + self.assertFalse(self.repo.fork) + self.assertEqual(self.repo.forks, 3) + self.assertEqual(self.repo.full_name, "jacquev6/PyGithub") + self.assertEqual(self.repo.git_url, "git://github.com/jacquev6/PyGithub.git") + self.assertTrue(self.repo.has_downloads) + self.assertTrue(self.repo.has_issues) + self.assertFalse(self.repo.has_wiki) + self.assertEqual(self.repo.homepage, "http://vincent-jacques.net/PyGithub") + self.assertEqual(self.repo.html_url, "https://github.com/jacquev6/PyGithub") + self.assertEqual(self.repo.id, 3544490) + self.assertEqual(self.repo.language, "Python") + self.assertEqual(self.repo.master_branch, None) + self.assertEqual(self.repo.name, "PyGithub") + self.assertEqual(self.repo.open_issues, 16) + self.assertEqual(self.repo.organization, None) + self.assertEqual(self.repo.owner.login, "jacquev6") + self.assertEqual(self.repo.parent, None) + self.assertTrue(self.repo.permissions.admin) + self.assertTrue(self.repo.permissions.pull) + self.assertTrue(self.repo.permissions.push) + self.assertFalse(self.repo.private) + self.assertEqual(self.repo.pushed_at, datetime.datetime(2012, 5, 27, 6, 0, 28)) + self.assertEqual(self.repo.size, 308) + self.assertEqual(self.repo.source, None) + self.assertEqual(self.repo.ssh_url, "git@github.com:jacquev6/PyGithub.git") + self.assertEqual(self.repo.svn_url, "https://github.com/jacquev6/PyGithub") + self.assertEqual(self.repo.updated_at, datetime.datetime(2012, 5, 27, 6, 55, 28)) + self.assertEqual(self.repo.url, "https://api.github.com/repos/jacquev6/PyGithub") + self.assertEqual(self.repo.watchers, 15) + + # test __repr__() based on this attributes + self.assertEqual(self.repo.__repr__(), 'Repository(full_name="jacquev6/PyGithub")') + + def testProtectBranch(self): + self.repo.protect_branch("master", True, "everyone", ["test"]) + branch = self.repo.get_protected_branch("master") + self.assertTrue(branch.protected) + self.assertEqual(branch.enforcement_level, "everyone") + self.assertEqual(branch.contexts, ["test"]) + + def testRemoveBranchProtection(self): + self.repo.protect_branch("master", False) + branch = self.repo.get_protected_branch("master") + self.assertFalse(branch.protected) + self.assertEqual(branch.enforcement_level, "off") + self.assertEqual(branch.contexts, []) + + def testChangeBranchProtectionContexts(self): + self.repo.protect_branch("master", True, "everyone", ["test"]) + branch = self.repo.get_protected_branch("master") + self.assertTrue(branch.protected) + self.assertEqual(branch.enforcement_level, "everyone") + self.assertEqual(branch.contexts, ["test"]) + self.repo.protect_branch("master", True, "everyone", ["test", "default"]) + branch = self.repo.get_protected_branch("master") + self.assertEqual(branch.contexts, ["default", "test"]) + self.repo.protect_branch("master", True, "everyone", ["default"]) + branch = self.repo.get_protected_branch("master") + self.assertEqual(branch.contexts, ["default"]) + + def testRaiseErrorWithOutBranch(self): + raised = False + try: + self.repo.protect_branch("", True, "everyone", ["test"]) + except github.GithubException, exception: + raised = True + self.assertEqual(exception.status, 404) + self.assertEqual( + exception.data, { + u'documentation_url': u'https://developer.github.com/v3/repos/#get-branch', + u'message': u'Branch not found' + } + ) + self.assertTrue(raised) + + def testRaiseErrorWithBranchProtectionWithOutContext(self): + raised = False + try: + self.repo.protect_branch("master", True, "everyone") + except github.GithubException, exception: + raised = True + self.assertEqual(exception.status, 422) + self.assertEqual( + exception.data, { + u'documentation_url': u'https://developer.github.com/v3', + u'message': u'Invalid request.\n\n"contexts" wasn\'t supplied.' + } + ) + self.assertTrue(raised) + + def testRaiseErrorWithBranchProtectionWithInvalidEnforcementLevel(self): + raised = False + try: + self.repo.protect_branch("master", True, "", ["test"]) + except github.GithubException, exception: + raised = True + self.assertEqual(exception.status, 422) + self.assertEqual( + exception.data, { + u'documentation_url': + u'https://developer.github.com/v3/repos/#enabling-and-disabling-branch-protection', + u'message': u'Validation Failed', + u'errors': [ + { + u'field': u'required_status_checks_enforcement_level', + u'message': u"required_status_checks_enforcement_level enforcement level '%s' is not valid", + u'code': u'custom', + u'resource': u'ProtectedBranch' + } + ] + } + ) + self.assertTrue(raised) + + def testChangeBranchProtectionEnforcementLevel(self): + self.repo.protect_branch("master", True, "everyone", ["test"]) + branch = self.repo.get_protected_branch("master") + self.assertTrue(branch.protected) + self.assertEqual(branch.enforcement_level, "everyone") + self.repo.protect_branch("master", True, "non_admins", ["test"]) + branch = self.repo.get_protected_branch("master") + self.assertEqual(branch.enforcement_level, "non_admins") + + def testEditWithoutArguments(self): + self.repo.edit("PyGithub") + + def testEditWithAllArguments(self): + self.repo.edit("PyGithub", "Description edited by PyGithub", "http://vincent-jacques.net/PyGithub", private=True, has_issues=True, has_wiki=False, has_downloads=True) + self.assertEqual(self.repo.description, "Description edited by PyGithub") + self.repo.edit("PyGithub", "Python library implementing the full Github API v3") + self.assertEqual(self.repo.description, "Python library implementing the full Github API v3") + + def testEditWithDefaultBranch(self): + self.assertEqual(self.repo.master_branch, None) + self.repo.edit("PyGithub", default_branch="master") + self.assertEqual(self.repo.master_branch, "master") + + def testDelete(self): + repo = self.g.get_user().get_repo("TestPyGithub") + repo.delete() + + def testGetContributors(self): + self.assertListKeyEqual(self.repo.get_contributors(), lambda c: (c.login, c.contributions), [("jacquev6", 355)]) + + def testCreateMilestone(self): + milestone = self.repo.create_milestone("Milestone created by PyGithub", state="open", description="Description created by PyGithub", due_on=datetime.date(2012, 6, 15)) + self.assertEqual(milestone.number, 5) + + def testCreateMilestoneWithMinimalArguments(self): + milestone = self.repo.create_milestone("Milestone also created by PyGithub") + self.assertEqual(milestone.number, 6) + + def testCreateIssue(self): + issue = self.repo.create_issue("Issue created by PyGithub") + self.assertEqual(issue.number, 28) + + def testCreateIssueWithAllArguments(self): + user = self.g.get_user("jacquev6") + milestone = self.repo.get_milestone(2) + question = self.repo.get_label("Question") + issue = self.repo.create_issue("Issue also created by PyGithub", "Body created by PyGithub", user, milestone, [question]) + self.assertEqual(issue.number, 30) + + def testCreateIssueWithAllArgumentsStringLabel(self): + user = self.g.get_user("jacquev6") + milestone = self.repo.get_milestone(2) + issue = self.repo.create_issue("Issue also created by PyGithub", "Body created by PyGithub", user, milestone, ['Question']) + self.assertEqual(issue.number, 30) + + def testCreateLabel(self): + label = self.repo.create_label("Label with silly name % * + created by PyGithub", "00ff00") + self.assertEqual(label.color, "00ff00") + self.assertEqual(label.name, "Label with silly name % * + created by PyGithub") + self.assertEqual(label.url, "https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+silly+name+%25+%2A+%2B+created+by+PyGithub") + + def testGetLabel(self): + label = self.repo.get_label("Label with silly name % * + created by PyGithub") + self.assertEqual(label.color, "00ff00") + self.assertEqual(label.name, "Label with silly name % * + created by PyGithub") + self.assertEqual(label.url, "https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+silly+name+%25+%2A+%2B+created+by+PyGithub") + + def testCreateHookWithMinimalParameters(self): + hook = self.repo.create_hook("web", {"url": "http://foobar.com"}) + self.assertEqual(hook.id, 257967) + + def testCreateHookWithAllParameters(self): + hook = self.repo.create_hook("web", {"url": "http://foobar.com"}, ["fork"], False) + self.assertTrue(hook.active) # WTF + self.assertEqual(hook.id, 257993) + + def testCreateGitRef(self): + ref = self.repo.create_git_ref("refs/heads/BranchCreatedByPyGithub", "4303c5b90e2216d927155e9609436ccb8984c495") + self.assertEqual(ref.url, "https://api.github.com/repos/jacquev6/PyGithub/git/refs/heads/BranchCreatedByPyGithub") + + def testCreateGitBlob(self): + blob = self.repo.create_git_blob("Blob created by PyGithub", "latin1") + self.assertEqual(blob.sha, "5dd930f591cd5188e9ea7200e308ad355182a1d8") + + def testCreateGitTree(self): + tree = self.repo.create_git_tree( + [github.InputGitTreeElement( + "Foobar.txt", + "100644", + "blob", + content="File created by PyGithub" + )] + ) + self.assertEqual(tree.sha, "41cf8c178c636a018d537cb20daae09391efd70b") + + def testCreateGitTreeWithBaseTree(self): + base_tree = self.repo.get_git_tree("41cf8c178c636a018d537cb20daae09391efd70b") + tree = self.repo.create_git_tree( + [github.InputGitTreeElement( + "Barbaz.txt", + "100644", + "blob", + content="File also created by PyGithub" + )], + base_tree + ) + self.assertEqual(tree.sha, "107139a922f33bab6fbeb9f9eb8787e7f19e0528") + + def testCreateGitTreeWithSha(self): + tree = self.repo.create_git_tree( + [github.InputGitTreeElement( + "Barbaz.txt", + "100644", + "blob", + sha="5dd930f591cd5188e9ea7200e308ad355182a1d8" + )] + ) + self.assertEqual(tree.sha, "fae707821159639589bf94f3fb0a7154ec5d441b") + + def testCreateGitCommit(self): + tree = self.repo.get_git_tree("107139a922f33bab6fbeb9f9eb8787e7f19e0528") + commit = self.repo.create_git_commit("Commit created by PyGithub", tree, []) + self.assertEqual(commit.sha, "0b820628236ab8bab3890860fc414fa757ca15f4") + + def testCreateGitCommitWithParents(self): + parents = [ + self.repo.get_git_commit("7248e66831d4ffe09ef1f30a1df59ec0a9331ece"), + self.repo.get_git_commit("12d427464f8d91c8e981043a86ba8a2a9e7319ea"), + ] + tree = self.repo.get_git_tree("fae707821159639589bf94f3fb0a7154ec5d441b") + commit = self.repo.create_git_commit("Commit created by PyGithub", tree, parents) + self.assertEqual(commit.sha, "6adf9ea25ff8a8f2a42bcb1c09e42526339037cd") + + def testCreateGitCommitWithAllArguments(self): + tree = self.repo.get_git_tree("107139a922f33bab6fbeb9f9eb8787e7f19e0528") + commit = self.repo.create_git_commit("Commit created by PyGithub", tree, [], github.InputGitAuthor("John Doe", "j.doe@vincent-jacques.net", "2008-07-09T16:13:30+12:00"), github.InputGitAuthor("John Doe", "j.doe@vincent-jacques.net", "2008-07-09T16:13:30+12:00")) + self.assertEqual(commit.sha, "526946197ae9da59c6507cacd13ad6f1cfb686ea") + + def testCreateGitTag(self): + tag = self.repo.create_git_tag("TaggedByPyGithub", "Tag created by PyGithub", "0b820628236ab8bab3890860fc414fa757ca15f4", "commit") + self.assertEqual(tag.sha, "5ba561eaa2b7ca9015662510157b15d8f3b0232a") + + def testCreateGitTagWithAllArguments(self): + tag = self.repo.create_git_tag("TaggedByPyGithub2", "Tag also created by PyGithub", "526946197ae9da59c6507cacd13ad6f1cfb686ea", "commit", github.InputGitAuthor("John Doe", "j.doe@vincent-jacques.net", "2008-07-09T16:13:30+12:00")) + self.assertEqual(tag.sha, "f0e99a8335fbc84c53366c4a681118468f266625") + + def testCreateKey(self): + key = self.repo.create_key("Key added through PyGithub", "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA2Mm0RjTNAYFfSCtUpO54usdseroUSIYg5KX4JoseTpqyiB/hqewjYLAdUq/tNIQzrkoEJWSyZrQt0ma7/YCyMYuNGd3DU6q6ZAyBeY3E9RyCiKjO3aTL2VKQGFvBVVmGdxGVSCITRphAcsKc/PF35/fg9XP9S0anMXcEFtdfMHz41SSw+XtE+Vc+6cX9FuI5qUfLGbkv8L1v3g4uw9VXlzq4GfTA+1S7D6mcoGHopAIXFlVr+2RfDKdSURMcB22z41fljO1MW4+zUS/4FyUTpL991es5fcwKXYoiE+x06VJeJJ1Krwx+DZj45uweV6cHXt2JwJEI9fWB6WyBlDejWw== vincent@IDEE") + self.assertEqual(key.id, 2626761) + + def testCollaborators(self): + lyloa = self.g.get_user("Lyloa") + self.assertFalse(self.repo.has_in_collaborators(lyloa)) + self.repo.add_to_collaborators(lyloa) + self.assertTrue(self.repo.has_in_collaborators(lyloa)) + self.assertListKeyEqual(self.repo.get_collaborators(), lambda u: u.login, ["jacquev6", "Lyloa"]) + self.repo.remove_from_collaborators(lyloa) + self.assertFalse(self.repo.has_in_collaborators(lyloa)) + + def testCompare(self): + comparison = self.repo.compare("v0.6", "v0.7") + self.assertEqual(comparison.status, "ahead") + self.assertEqual(comparison.ahead_by, 4) + self.assertEqual(comparison.behind_by, 0) + self.assertEqual(comparison.diff_url, "https://github.com/jacquev6/PyGithub/compare/v0.6...v0.7.diff") + self.assertEqual(comparison.html_url, "https://github.com/jacquev6/PyGithub/compare/v0.6...v0.7") + self.assertEqual(comparison.url, "https://api.github.com/repos/jacquev6/PyGithub/compare/v0.6...v0.7") + self.assertEqual(comparison.patch_url, "https://github.com/jacquev6/PyGithub/compare/v0.6...v0.7.patch") + self.assertEqual(comparison.permalink_url, "https://github.com/jacquev6/PyGithub/compare/jacquev6:4303c5b...jacquev6:ecda065") + self.assertEqual(comparison.total_commits, 4) + self.assertListKeyEqual(comparison.files, lambda f: f.filename, ["ReferenceOfClasses.md", "github/Github.py", "github/Requester.py", "setup.py"]) + self.assertEqual(comparison.base_commit.sha, "4303c5b90e2216d927155e9609436ccb8984c495") + self.assertListKeyEqual(comparison.commits, lambda c: c.sha, ["5bb654d26dd014d36794acd1e6ecf3736f12aad7", "cb0313157bf904f2d364377d35d9397b269547a5", "0cec0d25e606c023a62a4fc7cdc815309ebf6d16", "ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7"]) + + def testGetComments(self): + self.assertListKeyEqual( + self.repo.get_comments(), + lambda c: c.body, + [ + "probably a noob question: does this completion refer to autocompletion in IDE's/editors? \nI have observed that this is pretty erratic sometimes. I'm using PyDev+Eclipse.\nFor example, in the tutorial from the readme, `g.get_u` gets autocompleted correctly, but `g.get_user().get_r` (or any method or attribute applicable to NamedUsers/AuthenticatedUser, really) does not show autocompletion to `g.get_user().get_repo()`. Is that by design? It makes exploring the library/API a bit cumbersome. ", + "No, it has nothing to do with auto-completion in IDEs :D\n\nGithub API v3 sends only the main part of objects in reply to some requests. So, if the user wants an attribute that has not been received yet, I have to do another request to complete the object.\n\nYet, in version 1.0 (see the milesone), my library will be much more readable for IDEs and their auto-completion mechanisms, because I am giving up the meta-description that I used until 0.6, and I'm now generating much more traditional code, that you will be able to explore as if it was written manually.\n\nIf you want to take the time to open an issue about auto-completion in IDEs, I'll deal with it in milestone 1.0.\n\nThanks !", + "Ah, thanks for the clarification. :blush:\n\nI made issue #27 for the autocompletion. I already suspected something like this meta-description magic, since I tried to read some of the code and it was pretty arcane. I attributed that to my pythonic noobness, though. Thank you. ", + "Comment created by PyGithub" + ] + ) + + def testGetCommits(self): + self.assertListKeyBegin(self.repo.get_commits(), lambda c: c.sha, ['ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7', '0cec0d25e606c023a62a4fc7cdc815309ebf6d16', 'cb0313157bf904f2d364377d35d9397b269547a5', '5bb654d26dd014d36794acd1e6ecf3736f12aad7', '4303c5b90e2216d927155e9609436ccb8984c495', '2a7e80e6421c5d4d201d60619068dea6bae612cb', '0af24499a98e85f8ab2191898e8b809e5cebd4c5', 'e5ae923a68a9ae295ce5aa20b1227253de60e918', '2f64b625f7e2afc9bef61d0decb459e2ef65c550', '590798d349cba7de6e83b43aa5d4f8b0a38e685d', 'e7dca9143a23b8e2045a4a910a4a329007b10086', 'ab3f9b422cb3043d35cf6002fc9c042f8ead8c2a', '632d8b63c32a2b79e87eb3b93e1ad228724de4bd', '64c6a1e975e61b9c1449bed016cd19f33ee4b1c5', '99963536fc81db3b9986c761b9dd08de22089aa2', '8d57522bbd15d1fb6b616fae795cd8721deb1c4d', '1140a91f3e45d09bc15463724f178a7ebf8e3149', '936f4a97f1a86392637ec002bbf89ff036a5062d', 'e10470481795506e2c232720e2a9ecf588c8b567', 'e456549e5265406f8090ae5145255c8ca9ea5e4e', 'a91131be42eb328ae030f584af500f56aa08424b', '2469c6e1aeb7919126a8271f6980b555b167e8b0', 'a655d0424135befd3a0d53f3f7eff2d1c754854f', 'ce62e91268aa34dad0ba0dbee4769933e3a71e50', '1c88ee221b7f995855a1fdfac7d0ba19db918739', 'bd1a5dff3c547c634b2d89f5847218820e343883', 'b226b5b4e2f44107dde674e7a5d3e88d4e3518df', '25dbd4053e982402c7d92139f167dbe46008c932', 'a0cc821c1beada4aa9ca0d5218664c5372720936', 'c1440bdf20bfeb62684c6d1779448719dce9d2df', '1095d304b7fab3818dcb4c42093c8c56d3ac05e4', 'bd39726f7cf86ea7ffb33b5718241fdab5fc8f53', '1d2b27824d20612066d84be42d6691c66bb18ef4', '6af2bfd0d46bc0eeb8c37b85c7b3003e0e4ae297', 'a475d685d8ae709095d09094ea0962ac182d33f0', 'a85de99ea5b5e7b38bd68e076d09c49207b8687e', 'd24cf209ddd1758188c5f35344f76df818d09a46', '0909fec395bb1f97e2580d6a029cfc64b352aff9', '6e421e9e85e12008758870bc046bc2c6120af72a', '32ed0ebc377efbed5b482b3d49ff54bf1715d55a', '8213df1d744f251aa8e52229643a9f6ce352f3c0', '69cc298fd159f19eb204dd09f17d31dc4abc3d41', '85eef756353e13efcb24c726320cd2617c2a7bd8', '50ac55b25ceba555b84709839f80447552450697', '767d75a580279e457f9bc52bc308a17ff8ea0509', '75e72ffa3066693291f7da03070666e8f885097a', '504047e218e6b34a3828ccc408431634f17b9504', '960db1d5c9853e9f5fbbc9237c2c166ceef1f080', '877dde23e140bbf038f9a2d8f0f07b4e3a965c61', '1c95ddfa09ec0aa1f07ee9ad50a77be1dd74b55e', '99564c1cab139d1e4678f5f83f60d26f1210db7e', '231926207709ceaa61e87b64e34e17d85adecd9c', 'fb722625dddb9a32f75190723f7da12683b7c4b2', 'cab9d71603e127bdd1f600a759dccea1781fa1ab', 'e648e5aeb5edc1fbf83e9d37d2a3cb57c005019a', '4a5cf98e7f959f1b5d9af484760c25cd27d9180d', '5d1add448e0b0b1dadb8c6094a9e5e19b255f67e', '0d9fc99a4b5d1ec6473c9c81c888917c132ffa65', 'b56aa09011378b014221f86dffb8304957a9e6bd', '3e8169c0a98ce1e2c6a32ae1256ae0f735065df5', '378558f6cac6183b4a7100c0ce5eaad1cfff6717', '58b4396aa0e7cb72911b75cb035798143a06e0ee', 'a3be28756101370fbc689eec3a7825c4c385a6c9', '3d6bd49ce229243fea4bb46a937622d0ec7d4d1c', '58cb0dbdef9765e0e913c726f923a47315aaf80e', '7b7ac20c6fa27f72a24483c73ab1bf4deffc89f0', '97f308e67383368a2d15788cac28e126c8528bb2', 'fc33a6de4f0e08d7ff2de05935517ec3932d212e', 'cc6d0fc044eadf2e6fde5da699f61654c1e691f3', '2dd71f3777b87f2ba61cb20d2c67f10401e3eb2c', '366ca58ca004b9129f9d435db8204ce0f5bc57c3', '0d3b3ffd1e5c143af8725fdee808101f626f683d', '157f9c13275738b6b39b8d7a874f5f0aee47cb18']) + + def testGetCommitsWithArguments(self): + self.assertListKeyEqual(self.repo.get_commits("topic/RewriteWithGeneratedCode", "codegen/GenerateCode.py"), lambda c: c.sha, ["de386d5dc9cf103c90c4128eeca0e6abdd382065", "5b44982f6111bff2454243869df2e1c3086ccbba", "d6835ff949141957a733c8ddfa147026515ae493", "075d3d961d4614a2a0835d5583248adfc0687a7d", "8956796e7f462a49f499eac52fab901cdb59abdb", "283da5e7de6a4a3b6aaae7045909d70b643ad380", "d631e83b7901b0a0b6061b361130700a79505319"]) + + def testGetCommitsWithSinceUntil(self): + self.assertListKeyEqual(self.repo.get_commits(since=datetime.datetime(2013, 3, 1), until=datetime.datetime(2013, 3, 31)), lambda c: c.sha, ['db5560bd658b5d8057a864f7037ace4d5f618f1b', 'f266fed520fea4f683caabe0b38e1f758cfc5cff', 'dff094650011398fd8f0a57bf2668a066fb2cbcb', 'c1d747a9133a1c6cae1f0e11105a5f490f65fda6', '0bc368973acfb50a531329b6c196ba92e0a81890', '7b3e4c15ed6182963d66ffa9f0522acd0765275c', '4df3a7eb47888f38c4c6dae50573f030a0a3f1e1', 'e0db8cad4ec01c65e5e0eb50e11765e425e88ef9', '1c47be4e895b823baf907b25c647e43ab63c16dd', '8a9afbb1aa36c6ba04142c6e6c1cfbd7de982a6a', '1c67359a318f05e50bf457818e1983ce95aa5946', '1d18bd66f3a4a4225435bd38df04b8a227b5e821', 'b9d71fa787a2ffb99b6631e4bd6df932a4d4adbb', 'f5d8e221d116b74a200d87afca32247f01204ba1', 'dc96fef052f2b5c6adb34da65169e8df3f35f611', 'c85af79db11ed1d2f93261ea4069a23ff1709125', '0dd1adb4f06f45d554d12083b312fcdb6f6be8d1', 'b7e4000450e89b8c6e947e3a1e52fb06da7c9621', '1d9ad14fa918866c418067e774f65cede8e38682', '1bb05fef01d0a040cb2b931a4d44392784a2f0c1', 'd9b29851ddccc907f71f1ae662e57f2cd7c7dc71', 'f962bc71fee609cd54fe69c956c8b81703d2c19a', '7a9c0b916c632be8d6a65bc1b6f558508f04bb22', '82ce7b1ee30d308b48bdac6d8737dbca70500462', '1e99e7d5b21c71bf68cc5cc21faec30ee603b8b8', 'a397fac6db9f87a903ec3ede9643cb2b4224ed82', '109495175e926731703a55cafd8b542a07366513', 'da6bbdb69485fc3256030d8296589d4c2fb5df21', '34c18342dcce9697abc6f522c3506485202e6e7e', 'ee29deddd27480401db484733ecde9e7b1df5eda', '0901df1a2bed3f993cfe6e0d4cff5923bbf6ce32', 'edcf40bc7f25d1aff5c404406fbb37ad1bcf691e', 'f25c54e1d4eefb11c18f3de85270a4b19edea3ce', '23d668f11bdd806a871e0979bf5295d001f66ef2', '50a243671f1fa139cb1186c4a44c1e96b8cd5749', '6a3a384fd0decac1203db6c2bddc58039b0390bc', '82f5b4c61f86ae8c7cc85a31cb1a31180eeae32f', '6ac783974d3985dd0c162c1e8d1150615cc0082e', '0f9bb5d9fd2dcfbf03f094362e86323c9ef915e6', 'e25a6a49d1ab1a10c84db9b6722a6186ff6dfcbd', '4f1780f427eba400cbc06897e69eda0ecdecd887', '28648a51a15e430b85d6fe8f2514e1cb06bc76b8', 'a39f421ca24bd7aae984f8703159c7e30798a121', '86fe370b97b62548317cb35bc02ece3fabb7fa03', '03a256a4052cacea998d8205a83d5b5465f31e18', '9e6b086c2db5e4884484a04934f6f2e53e3f441b', '0ddb34d987b5a03813fdfa2fac13c933834a4804']) + + def testGetCommitsWithAuthor(self): + self.g.per_page = 5 + akfish = self.g.get_user("AKFish") + self.assertListKeyBegin(self.repo.get_commits(author=self.user), lambda c: c.sha, ["54f718a15770579a37ffbe7ae94ad30003407786"]) + self.assertListKeyBegin(self.repo.get_commits(author=akfish), lambda c: c.sha, ["38b137fb37c0fdc74f8802a4184518e105db9121"]) + self.assertListKeyBegin(self.repo.get_commits(author="m.ki2@laposte.net"), lambda c: c.sha, ["ab674dfcbc86c70bc32d9ecbe171b48a5694c337"]) + + def testGetDownloads(self): + self.assertListKeyEqual(self.repo.get_downloads(), lambda d: d.id, [245143]) + + def testGetEvents(self): + self.assertListKeyBegin(self.repo.get_events(), lambda e: e.type, ["DownloadEvent", "DownloadEvent", "PushEvent", "IssuesEvent", "MemberEvent", "MemberEvent"]) + + def testGetForks(self): + self.assertListKeyEqual(self.repo.get_forks(), lambda r: r.owner.login, ["abersager"]) + + def testGetGitRefs(self): + self.assertListKeyEqual(self.repo.get_git_refs(), lambda r: r.ref, ["refs/heads/develop", "refs/heads/master", "refs/heads/topic/DependencyGraph", "refs/heads/topic/RewriteWithGeneratedCode", "refs/tags/v0.1", "refs/tags/v0.2", "refs/tags/v0.3", "refs/tags/v0.4", "refs/tags/v0.5", "refs/tags/v0.6", "refs/tags/v0.7"]) + + def testGetGitRef(self): + self.assertTrue(self.g.FIX_REPO_GET_GIT_REF) + self.assertEqual(self.repo.get_git_ref("heads/master").object.sha, "31110327ec45f3138e58ed247b2cf420fee481ec") + + def testGetGitRefWithIssue102Reverted(self): + self.g.FIX_REPO_GET_GIT_REF = False + self.assertFalse(self.g.FIX_REPO_GET_GIT_REF) + self.assertEqual(self.repo.get_git_ref("refs/heads/master").object.sha, "31110327ec45f3138e58ed247b2cf420fee481ec") + self.g.FIX_REPO_GET_GIT_REF = True + self.assertTrue(self.g.FIX_REPO_GET_GIT_REF) + + def testGetGitTreeWithRecursive(self): + tree = self.repo.get_git_tree("f492784d8ca837779650d1fb406a1a3587a764ad", True) + self.assertEqual(len(tree.tree), 90) + self.assertEqual(tree.tree[50].path, "github/GithubObjects/Gist.py") + + def testGetHooks(self): + self.assertListKeyEqual(self.repo.get_hooks(), lambda h: h.id, [257993]) + + def testGetIssues(self): + self.assertListKeyEqual(self.repo.get_issues(), lambda i: i.id, [4769659, 4639931, 4452000, 4356743, 3716033, 3715946, 3643837, 3628022, 3624595, 3624570, 3624561, 3624556, 3619973, 3527266, 3527245, 3527231]) + + def testGetIssuesWithArguments(self): + milestone = self.repo.get_milestone(3) + user = self.g.get_user("jacquev6") + otherUser = self.g.get_user("Lyloa") + bug = self.repo.get_label("Bug") + self.assertListKeyEqual(self.repo.get_issues(milestone, "closed"), lambda i: i.id, [3624472, 3620132, 3619658, 3561926]) + self.assertListKeyEqual(self.repo.get_issues(labels=[bug]), lambda i: i.id, [4780155]) + self.assertListKeyEqual(self.repo.get_issues(assignee=user, sort="comments", direction="asc"), lambda i: i.id, [4793106, 3527231, 3527266, 3624556, 4793216, 3619973, 3624595, 4452000, 3643837, 3628022, 3527245, 4793162, 4356743, 4780155]) + self.assertListKeyEqual(self.repo.get_issues(since=datetime.datetime(2012, 5, 28, 23, 0, 0)), lambda i: i.id, [4793216, 4793162, 4793106, 3624556, 3619973, 3527266]) + self.assertListKeyEqual(self.repo.get_issues(mentioned=otherUser), lambda i: i.id, [4793162]) + + def testGetIssuesWithWildcards(self): + self.assertListKeyEqual(self.repo.get_issues(milestone="*"), lambda i: i.id, [4809786, 4793216, 4789817, 4452000, 3628022, 3624595, 3619973, 3527231]) + self.assertListKeyEqual(self.repo.get_issues(milestone="none"), lambda i: i.id, [4823331, 4809803, 4809778, 4793106, 3643837, 3527245]) + self.assertListKeyEqual(self.repo.get_issues(assignee="*"), lambda i: i.id, [4823331, 4809803, 4809786, 4809778, 4793216, 4793106, 4789817, 4452000, 3643837, 3628022, 3624595, 3527245, 3527231]) + self.assertListKeyEqual(self.repo.get_issues(assignee="none"), lambda i: i.id, [3619973]) + + def testGetKeys(self): + self.assertListKeyEqual(self.repo.get_keys(), lambda k: k.title, ["Key added through PyGithub"]) + + def testGetLabels(self): + self.assertListKeyEqual(self.repo.get_labels(), lambda l: l.name, ["Refactoring", "Public interface", "Functionalities", "Project management", "Bug", "Question"]) + + def testGetLanguages(self): + self.assertEqual(self.repo.get_languages(), {"Python": 127266, "Shell": 673}) + + def testGetMilestones(self): + self.assertListKeyEqual(self.repo.get_milestones(), lambda m: m.id, [93547]) + + def testGetMilestonesWithArguments(self): + self.assertListKeyEqual(self.repo.get_milestones("closed", "due_date", "asc"), lambda m: m.id, [93546, 95354, 108652, 124045]) + + def testGetIssuesEvents(self): + self.assertListKeyBegin(self.repo.get_issues_events(), lambda e: e.event, ["assigned", "subscribed", "closed", "assigned", "closed"]) + + def testGetNetworkEvents(self): + self.assertListKeyBegin(self.repo.get_network_events(), lambda e: e.type, ["DownloadEvent", "DownloadEvent", "PushEvent", "IssuesEvent", "MemberEvent"]) + + def testGetTeams(self): + repo = self.g.get_organization("BeaverSoftware").get_repo("FatherBeaver") + self.assertListKeyEqual(repo.get_teams(), lambda t: t.name, ["Members"]) + + def testGetWatchers(self): + self.assertListKeyEqual(self.repo.get_watchers(), lambda u: u.login, ["Stals", "att14", "jardon-u", "huxley", "mikofski", "L42y", "fanzeyi", "abersager", "waylan", "adericbourg", "tallforasmurf", "pvicente", "roskakori", "michaelpedersen", "BeaverSoftware"]) + + def testGetStargazers(self): + self.assertListKeyEqual(self.repo.get_stargazers(), lambda u: u.login, ["Stals", "att14", "jardon-u", "huxley", "mikofski", "L42y", "fanzeyi", "abersager", "waylan", "adericbourg", "tallforasmurf", "pvicente", "roskakori", "michaelpedersen", "stefanfoulis", "equus12", "JuRogn", "joshmoore", "jsilter", "dasapich", "ritratt", "hcilab", "vxnick", "pmuilu", "herlo", "malexw", "ahmetvurgun", "PengGu", "cosmin", "Swop", "kennethreitz", "bryandyck", "jason2506", "zsiciarz", "waawal", "gregorynicholas", "sente", "richmiller55", "thouis", "mazubieta", "michaelhood", "engie", "jtriley", "oangeor", "coryking", "noddi", "alejo8591", "omab", "Carreau", "bilderbuchi", "schwa", "rlerallut", "PengHub", "zoek1", "xobb1t", "notgary", "hattya", "ZebtinRis", "aaronhall", "youngsterxyf", "ailling", "gregwjacobs", "n0rmrx", "awylie", "firstthumb", "joshbrand", "berndca"]) + + def testGetStargazersWithDates(self): + repo = self.g.get_user("danvk").get_repo("comparea") + self.assertListKeyEqual( + repo.get_stargazers_with_dates(), + lambda stargazer: (stargazer.starred_at, stargazer.user.login), + [ + (datetime.datetime(2014, 8, 13, 19, 22, 5), u'sAlexander'), + (datetime.datetime(2014, 10, 15, 5, 2, 30), u'ThomasG77'), + (datetime.datetime(2015, 4, 14, 15, 22, 40), u'therusek'), + (datetime.datetime(2015, 4, 29, 0, 9, 40), u'athomann'), + (datetime.datetime(2015, 4, 29, 14, 26, 46), u'jcapron'), + (datetime.datetime(2015, 5, 9, 19, 14, 45), u'JoePython1') + ] + ) + + def testGetSubscribers(self): + self.assertListKeyEqual(self.repo.get_subscribers(), lambda u: u.login, ["jacquev6", "equus12", "bilderbuchi", "hcilab", "hattya", "firstthumb", "gregwjacobs", "sagarsane", "liang456", "berndca", "Lyloa"]) + + def testCreatePull(self): + pull = self.repo.create_pull("Pull request created by PyGithub", "Body of the pull request", "topic/RewriteWithGeneratedCode", "BeaverSoftware:master") + self.assertEqual(pull.id, 1436215) + + def testCreatePullFromIssue(self): + issue = self.repo.get_issue(32) + pull = self.repo.create_pull(issue, "topic/RewriteWithGeneratedCode", "BeaverSoftware:master") + self.assertEqual(pull.id, 1436310) + + def testGetPulls(self): + self.assertListKeyEqual(self.repo.get_pulls(), lambda p: p.id, [1436310]) + + def testGetPullsWithArguments(self): + self.assertListKeyEqual(self.repo.get_pulls("closed"), lambda p: p.id, [1448168, 1436310, 1436215]) + + def testLegacySearchIssues(self): + issues = self.repo.legacy_search_issues("open", "search") + self.assertListKeyEqual(issues, lambda i: i.title, ["Support new Search API"]) + + # Attributes retrieved from legacy API without lazy completion call + self.assertEqual(issues[0].number, 49) + self.assertEqual(issues[0].created_at, datetime.datetime(2012, 6, 21, 12, 27, 38)) + self.assertEqual(issues[0].comments, 4) + self.assertEqual(issues[0].body[: 20], "New API ported from ") + self.assertEqual(issues[0].title, "Support new Search API") + self.assertEqual(issues[0].updated_at, datetime.datetime(2012, 6, 28, 21, 13, 25)) + self.assertEqual(issues[0].user.login, "kukuts") + self.assertEqual(issues[0].user.url, "/users/kukuts") + self.assertListKeyEqual(issues[0].labels, lambda l: l.name, ["Functionalities", "RequestedByUser"]) + self.assertEqual(issues[0].state, "open") + + def testAssignees(self): + lyloa = self.g.get_user("Lyloa") + jacquev6 = self.g.get_user("jacquev6") + self.assertTrue(self.repo.has_in_assignees(jacquev6)) + self.assertFalse(self.repo.has_in_assignees(lyloa)) + self.repo.add_to_collaborators(lyloa) + self.assertTrue(self.repo.has_in_assignees(lyloa)) + self.assertListKeyEqual(self.repo.get_assignees(), lambda u: u.login, ["jacquev6", "Lyloa"]) + self.repo.remove_from_collaborators(lyloa) + self.assertFalse(self.repo.has_in_assignees(lyloa)) + + def testGetContents(self): + self.assertEqual(len(self.repo.get_readme().content), 10212) + self.assertEqual(len(self.repo.get_contents("/doc/ReferenceOfClasses.md").content), 38121) + + def testGetContentDir(self): + + contents = self.repo.get_contents("/") + self.assertTrue(isinstance(contents, list)) + self.assertEquals(len(contents), 14) + + def testGetContentsWithRef(self): + self.assertEqual(len(self.repo.get_readme(ref="refs/heads/topic/ExperimentOnDocumentation").content), 6747) + self.assertEqual(len(self.repo.get_contents("/doc/ReferenceOfClasses.md", ref="refs/heads/topic/ExperimentOnDocumentation").content), 43929) + + def testCreateFile(self): + newFile = '/doc/testCreateUpdateDeleteFile.md' + content = 'Hello world' + self.repo.create_file( + path=newFile, message='Create file for testCreateFile', content=content, + branch="master", committer=github.InputGitAuthor("Enix Yu", "enix223@163.com", "2016-01-15T16:13:30+12:00"), + author=github.InputGitAuthor("Enix Yu", "enix223@163.com", "2016-01-15T16:13:30+12:00")) + + def testUpdateFile(self): + updateFile = '/doc/testCreateUpdateDeleteFile.md' + content = 'Hello World' + sha = self.repo.get_contents(updateFile).sha + self.repo.update_file( + path=updateFile, message='Update file for testUpdateFile', content=content, sha=sha, + branch="master", committer=github.InputGitAuthor("Enix Yu", "enix223@163.com", "2016-01-15T16:13:30+12:00"), + author=github.InputGitAuthor("Enix Yu", "enix223@163.com", "2016-01-15T16:13:30+12:00")) + + def testDeleteFile(self): + deleteFile = '/doc/testCreateUpdateDeleteFile.md' + sha = self.repo.get_contents(deleteFile).sha + self.repo.delete_file(path=deleteFile, message='Delete file for testDeleteFile', sha=sha, branch="master") + + def testGetArchiveLink(self): + self.assertEqual(self.repo.get_archive_link("tarball"), "https://nodeload.github.com/jacquev6/PyGithub/tarball/master") + self.assertEqual(self.repo.get_archive_link("zipball"), "https://nodeload.github.com/jacquev6/PyGithub/zipball/master") + self.assertEqual(self.repo.get_archive_link("zipball", "master"), "https://nodeload.github.com/jacquev6/PyGithub/zipball/master") + self.assertEqual(self.repo.get_archive_link("tarball", "develop"), "https://nodeload.github.com/jacquev6/PyGithub/tarball/develop") + + def testGetBranch(self): + branch = self.repo.get_branch("develop") + self.assertEqual(branch.commit.sha, "03058a36164d2a7d946db205f25538434fa27d94") + + def testMergeWithoutMessage(self): + commit = self.repo.merge("branchForBase", "branchForHead") + self.assertEqual(commit.commit.message, "Merge branchForHead into branchForBase") + + def testMergeWithMessage(self): + commit = self.repo.merge("branchForBase", "branchForHead", "Commit message created by PyGithub") + self.assertEqual(commit.commit.message, "Commit message created by PyGithub") + + def testMergeWithNothingToDo(self): + commit = self.repo.merge("branchForBase", "branchForHead", "Commit message created by PyGithub") + self.assertEqual(commit, None) + + def testMergeWithConflict(self): + raised = False + try: + commit = self.repo.merge("branchForBase", "branchForHead") + except github.GithubException, exception: + raised = True + self.assertEqual(exception.status, 409) + self.assertEqual(exception.data, {"message": "Merge conflict"}) + self.assertTrue(raised) + + def testGetIssuesComments(self): + self.assertListKeyEqual(self.repo.get_issues_comments()[:40], lambda c: c.id, [5168757, 5181640, 5183010, 5186061, 5226090, 5449237, 5518272, 5547576, 5780183, 5781803, 5820199, 5820912, 5924198, 5965724, 5965812, 5965891, 5966555, 5966633, 5981084, 5981232, 5981409, 5981451, 5991965, 6019700, 6088432, 6293572, 6305625, 6357374, 6357422, 6447481, 6467193, 6467312, 6467642, 6481200, 6481392, 6556134, 6557261, 6568164, 6568181, 6568553]) + self.assertListKeyEqual(self.repo.get_issues_comments(sort="created", direction="asc")[:40], lambda c: c.id, [5168757, 5181640, 5183010, 5186061, 5226090, 5449237, 5518272, 5547576, 5780183, 5781803, 5820199, 5820912, 5924198, 5965724, 5965812, 5965891, 5966555, 5966633, 5981084, 5981232, 5981409, 5981451, 5991965, 6019700, 6088432, 6293572, 6305625, 6357374, 6357422, 6447481, 6467193, 6467312, 6467642, 6481200, 6481392, 6556134, 6557261, 6568164, 6568181, 6568553]) + self.assertListKeyEqual(self.repo.get_issues_comments(since=datetime.datetime(2012, 5, 28, 23, 0, 0))[:40], lambda c: c.id, [5981084, 5981232, 5981409, 5981451, 5991965, 6019700, 6088432, 6293572, 6305625, 6357374, 6357422, 6447481, 6467193, 6467312, 6467642, 6481200, 6481392, 6556134, 6557261, 6568164, 6568181, 6568553, 6640187, 6640189, 6641223, 6673380, 6710355, 6727553, 6727659, 6727848, 6728069, 6728241, 6728370, 6886561, 6972414, 6994436, 7060818, 7060993, 7211543, 7407798]) + + def testGetPullsComments(self): + self.assertListKeyEqual(self.repo.get_pulls_comments(), lambda c: c.id, [1580134]) + self.assertListKeyEqual(self.repo.get_pulls_comments(sort="created", direction="asc"), lambda c: c.id, [1580134]) + self.assertListKeyEqual(self.repo.get_pulls_comments(since=datetime.datetime(2012, 5, 28, 23, 0, 0)), lambda c: c.id, [1580134]) + + def testSubscribePubSubHubbub(self): + self.repo.subscribe_to_hub("push", "http://requestb.in/1bc1sc61", "my_secret") + + def testBadSubscribePubSubHubbub(self): + raised = False + try: + self.repo.subscribe_to_hub("non-existing-event", "http://requestb.in/1bc1sc61") + except github.GithubException, exception: + raised = True + self.assertEqual(exception.status, 422) + self.assertEqual(exception.data, {"message": "Invalid event: \"non-existing-event\""}) + self.assertTrue(raised) + + def testUnsubscribePubSubHubbub(self): + self.repo.unsubscribe_from_hub("push", "http://requestb.in/1bc1sc61") + + def testStatisticsBeforeCaching(self): + self.assertEqual(self.repo.get_stats_contributors(), None) + self.assertEqual(self.repo.get_stats_commit_activity(), None) + self.assertEqual(self.repo.get_stats_code_frequency(), None) + # ReplayData for those last two get_stats is forged because I was not + # able to find a repo where participation and punch_card had never been + # computed, and pushing to master did not reset the cache for them + self.assertEqual(self.repo.get_stats_participation(), None) + self.assertEqual(self.repo.get_stats_punch_card(), None) + + def testStatisticsAfterCaching(self): + stats = self.repo.get_stats_contributors() + seenJacquev6 = False + for s in stats: + adTotal = 0 + total = 0 + for w in s.weeks: + total += w.c + adTotal += w.a + w.d + self.assertEqual(total, s.total) + if s.author.login == "jacquev6": + seenJacquev6 = True + self.assertEqual(adTotal, 282147) + self.assertEqual(s.weeks[0].w, datetime.datetime(2012, 2, 12)) + self.assertTrue(seenJacquev6) + + stats = self.repo.get_stats_commit_activity() + self.assertEqual(stats[0].week, datetime.datetime(2012, 11, 18, 0, 0)) + self.assertEqual(stats[0].total, 29) + self.assertEqual(stats[0].days, [0, 7, 3, 9, 7, 3, 0]) + + stats = self.repo.get_stats_code_frequency() + self.assertEqual(stats[0].week, datetime.datetime(2012, 2, 12, 0, 0)) + self.assertEqual(stats[0].additions, 3853) + self.assertEqual(stats[0].deletions, -2098) + + stats = self.repo.get_stats_participation() + self.assertEqual(stats.owner, [1, 36, 8, 0, 0, 8, 18, 0, 0, 0, 0, 7, 20, 6, 9, 0, 4, 11, 20, 16, 0, 3, 0, 16, 0, 0, 6, 1, 4, 0, 1, 6, 0, 0, 12, 10, 0, 0, 0, 1, 44, 0, 20, 10, 0, 0, 0, 0, 0, 10, 0, 0]) + self.assertEqual(stats.all, [4, 36, 8, 0, 0, 10, 20, 0, 0, 0, 0, 11, 20, 6, 9, 0, 4, 14, 21, 16, 0, 3, 0, 20, 0, 0, 8, 1, 9, 16, 1, 15, 1, 0, 12, 12, 0, 4, 6, 15, 116, 20, 20, 11, 0, 0, 0, 0, 0, 10, 0, 0]) + + stats = self.repo.get_stats_punch_card() + self.assertEqual(stats.get(4, 12), 7) + self.assertEqual(stats.get(6, 18), 2) + + +class LazyRepository(Framework.TestCase): + + def setUp(self): + Framework.TestCase.setUp(self) + self.user = self.g.get_user() + self.repository_name = '%s/%s' % (self.user.login, "PyGithub") + + def getLazyRepository(self): + return self.g.get_repo(self.repository_name, lazy=True) + + def getEagerRepository(self): + return self.g.get_repo(self.repository_name, lazy=False) + + def testGetIssues(self): + lazy_repo = self.getLazyRepository() + issues = lazy_repo.get_issues() + eager_repo = self.getEagerRepository() + issues2 = eager_repo.get_issues() + self.assertListKeyEqual(issues2, id, [x for x in issues]) + + def testOwner(self): + lazy_repo = self.getLazyRepository() + owner = lazy_repo.owner + eager_repo = self.getEagerRepository() + self.assertEqual(owner, eager_repo.owner) diff --git a/lib/github/tests/RepositoryKey.py b/lib/github/tests/RepositoryKey.py new file mode 100644 index 0000000000..a78a4ebd4d --- /dev/null +++ b/lib/github/tests/RepositoryKey.py @@ -0,0 +1,55 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + + +class RepositoryKey(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.key = self.g.get_user().get_repo("PyGithub").get_key(2626761) + + def testAttributes(self): + self.assertEqual(self.key.id, 2626761) + self.assertEqual(self.key.key, "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA2Mm0RjTNAYFfSCtUpO54usdseroUSIYg5KX4JoseTpqyiB/hqewjYLAdUq/tNIQzrkoEJWSyZrQt0ma7/YCyMYuNGd3DU6q6ZAyBeY3E9RyCiKjO3aTL2VKQGFvBVVmGdxGVSCITRphAcsKc/PF35/fg9XP9S0anMXcEFtdfMHz41SSw+XtE+Vc+6cX9FuI5qUfLGbkv8L1v3g4uw9VXlzq4GfTA+1S7D6mcoGHopAIXFlVr+2RfDKdSURMcB22z41fljO1MW4+zUS/4FyUTpL991es5fcwKXYoiE+x06VJeJJ1Krwx+DZj45uweV6cHXt2JwJEI9fWB6WyBlDejWw==") + self.assertEqual(self.key.title, "Key added through PyGithub") + self.assertEqual(self.key.url, "https://api.github.com/user/keys/2626761") + self.assertTrue(self.key.verified) + + # test __repr__() based on this attributes + self.assertEqual(self.key.__repr__(), 'RepositoryKey(id=2626761)') + + + def testEdit(self): + self.key.edit("Title edited by PyGithub", "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA5Q58YmzZjU64prR5Pk91MfeHezOTgLqDYmepYbv3qjguiHtPai1vSai5WvUv3hgf9DArXsXE5CV6yoBIhAdGtpJKExHuQ2m4XTFCdbrgfQ3ypcSdgzEiQemyTA6TWwhbuwjJ1IqJMYOVLH+FBCkD8pyIpUDO7v3vaR2TCEuNwOS7lbsRsW3OkGYnUKjaPaCTe/inrqb7I3OE8cPhWJ3dM/zzzBj22J4LCNKhjKua8TFS74xGm3lNDZ6/twQl4n4xmrH/3tG+WOJicNO3JohNHqK9T0pILnr3epEyfdkBjcG0qXApqWvH2WipJhaH6of8Gdr0Z/K/7p8QFddmwNgdPQ==") + self.assertEqual(self.key.key, "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA5Q58YmzZjU64prR5Pk91MfeHezOTgLqDYmepYbv3qjguiHtPai1vSai5WvUv3hgf9DArXsXE5CV6yoBIhAdGtpJKExHuQ2m4XTFCdbrgfQ3ypcSdgzEiQemyTA6TWwhbuwjJ1IqJMYOVLH+FBCkD8pyIpUDO7v3vaR2TCEuNwOS7lbsRsW3OkGYnUKjaPaCTe/inrqb7I3OE8cPhWJ3dM/zzzBj22J4LCNKhjKua8TFS74xGm3lNDZ6/twQl4n4xmrH/3tG+WOJicNO3JohNHqK9T0pILnr3epEyfdkBjcG0qXApqWvH2WipJhaH6of8Gdr0Z/K/7p8QFddmwNgdPQ==") + self.assertEqual(self.key.title, "Title edited by PyGithub") + + def testEditWithoutParameters(self): + self.key.edit() + + def testDelete(self): + self.key.delete() diff --git a/lib/github/tests/Search.py b/lib/github/tests/Search.py new file mode 100644 index 0000000000..713ca53c10 --- /dev/null +++ b/lib/github/tests/Search.py @@ -0,0 +1,75 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework +import sys + +atLeastPython3 = sys.hexversion >= 0x03000000 + + +class Search(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + + def testSearchUsers(self): + users = self.g.search_users("vincent", sort="followers", order="desc") + self.assertEqual(users.totalCount, 2781) + self.assertEqual(users[0].login, "nvie") + self.assertEqual(users[14].login, "Vayn") + + def testPaginateSearchUsers(self): + users = self.g.search_users("", location="Berlin") + self.assertListKeyBegin(users, lambda u: u.login, [u'cloudhead', u'felixge', u'sferik', u'rkh', u'jezdez', u'janl', u'marijnh', u'nikic', u'igorw', u'froschi', u'svenfuchs', u'omz', u'chad', u'bergie', u'roidrage', u'pcalcado', u'durran', u'hukl', u'mttkay', u'aFarkas', u'ole', u'hagenburger', u'jberkel', u'naderman', u'joshk', u'pudo', u'robb', u'josephwilk', u'hanshuebner', u'txus', u'paulasmuth', u'splitbrain', u'langalex', u'bendiken', u'stefanw']) + self.assertEqual(users.totalCount, 6038) + + def testGetPageOnSearchUsers(self): + users = self.g.search_users("", location="Berlin") + self.assertEqual([u.login for u in users.get_page(7)], [u'ursachec', u'bitboxer', u'fs111', u'michenriksen', u'witsch', u'booo', u'mortice', u'r0man', u'MikeBild', u'mhagger', u'bkw', u'fwbrasil', u'mschneider', u'lydiapintscher', u'asksven', u'iamtimm', u'sneak', u'kr1sp1n', u'Feh', u'GordonLesti', u'annismckenzie', u'eskimoblood', u'tsujigiri', u'riethmayer', u'lauritzthamsen', u'scotchi', u'peritor', u'toto', u'hwaxxer', u'lukaszklis']) + + def testSearchRepos(self): + repos = self.g.search_repositories("github", sort="stars", order="desc", language="Python") + self.assertListKeyBegin(repos, lambda r: r.full_name, [u'kennethreitz/legit', u'RuudBurger/CouchPotatoV1', u'gelstudios/gitfiti', u'gpjt/webgl-lessons', u'jacquev6/PyGithub', u'aaasen/github_globe', u'hmason/gitmarks', u'dnerdy/factory_boy', u'binaryage/drydrop', u'bgreenlee/sublime-github', u'karan/HackerNewsAPI', u'mfenniak/pyPdf', u'skazhy/github-decorator', u'llvmpy/llvmpy', u'lexrupy/gmate', u'ask/python-github2', u'audreyr/cookiecutter-pypackage', u'tabo/django-treebeard', u'dbr/tvdb_api', u'jchris/couchapp', u'joeyespo/grip', u'nigelsmall/py2neo', u'ask/chishop', u'sigmavirus24/github3.py', u'jsmits/github-cli', u'lincolnloop/django-layout', u'amccloud/django-project-skel', u'Stiivi/brewery', u'webpy/webpy.github.com', u'dustin/py-github', u'logsol/Github-Auto-Deploy', u'cloudkick/libcloud', u'berkerpeksag/github-badge', u'bitprophet/ssh', u'azavea/OpenTreeMap']) + + def testSearchIssues(self): + issues = self.g.search_issues("compile", sort="comments", order="desc", language="C++") + self.assertListKeyBegin(issues, lambda i: i.id, [12068673, 23250111, 14371957, 9423897, 24277400, 2408877, 11338741, 13980502, 27697165, 23102422]) + + def testSearchCode(self): + files = self.g.search_code("toto", sort="indexed", order="asc", user="jacquev6") + self.assertListKeyEqual(files, lambda f: f.name, [u'Commit.setUp.txt', u'PullRequest.testGetFiles.txt', u'NamedUser.testGetEvents.txt', u'PullRequest.testCreateComment.txt', u'PullRequestFile.setUp.txt', u'Repository.testGetIssuesWithWildcards.txt', u'Repository.testGetIssuesWithArguments.txt', u'test_ebnf.cpp', u'test_abnf.cpp', u'PullRequestFile.py', u'SystemCalls.py', u'tests.py', u'LexerTestCase.py', u'ParserTestCase.py']) + self.assertEqual(files[0].repository.full_name, "jacquev6/PyGithub") + if atLeastPython3: + self.assertEqual(files[0].decoded_content[:30], b'https\nGET\napi.github.com\nNone\n') + else: + self.assertEqual(files[0].decoded_content[:30], "https\nGET\napi.github.com\nNone\n") + + def testUrlquotingOfQualifiers(self): + # Example taken from #236 + issues = self.g.search_issues("repo:saltstack/salt-api type:Issues", updated=">2014-03-04T18:28:11Z") + self.assertEqual(issues[0].id, 29138794) + + def testUrlquotingOfQuery(self): + # Example taken from #236 + issues = self.g.search_issues("repo:saltstack/salt-api type:Issues updated:>2014-03-04T18:28:11Z") + self.assertEqual(issues[0].id, 29138794) diff --git a/lib/github/tests/Status.py b/lib/github/tests/Status.py new file mode 100644 index 0000000000..13bcda75b9 --- /dev/null +++ b/lib/github/tests/Status.py @@ -0,0 +1,44 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + +import github +import datetime + + +class Status(Framework.TestCase): + def testGetStatus(self): + status = self.g.get_api_status() + self.assertEqual(status.status, "good") + self.assertEqual(status.last_updated, datetime.datetime(2013, 9, 6, 8, 29, 27)) + + def testGetLastMessage(self): + message = self.g.get_last_api_status_message() + self.assertEqual(message.status, "good") + self.assertEqual(message.body, "Everything operating normally.") + self.assertEqual(message.created_on, datetime.datetime(2013, 9, 1, 15, 41, 46)) + + def testGetMessages(self): + self.assertListKeyEqual(self.g.get_api_status_messages(), lambda m: m.status, ["good", "minor", "good", "minor", "good", "minor", "good", "minor", "good", "major", "good", "minor"]) diff --git a/lib/github/tests/Tag.py b/lib/github/tests/Tag.py new file mode 100644 index 0000000000..5ddefe0fa9 --- /dev/null +++ b/lib/github/tests/Tag.py @@ -0,0 +1,42 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + + +class Tag(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.tag = self.g.get_user().get_repo("PyGithub").get_tags()[0] + + def testAttributes(self): + self.assertEqual(self.tag.commit.sha, "636e6112deb72277b3bffcc3303cd7e8a7431a5d") + self.assertEqual(self.tag.name, "v0.3") + self.assertEqual(self.tag.tarball_url, "https://github.com/jacquev6/PyGithub/tarball/v0.3") + self.assertEqual(self.tag.zipball_url, "https://github.com/jacquev6/PyGithub/zipball/v0.3") + + # test __repr__() based on this attributes + self.assertEqual(self.tag.__repr__(), 'Tag(name="v0.3", commit=Commit(sha="636e6112deb72277b3bffcc3303cd7e8a7431a5d"))') diff --git a/lib/github/tests/Team.py b/lib/github/tests/Team.py new file mode 100644 index 0000000000..f5d6e8d3c9 --- /dev/null +++ b/lib/github/tests/Team.py @@ -0,0 +1,83 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + + +class Team(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.org = self.g.get_organization("BeaverSoftware") + self.team = self.org.get_team(189850) + + def testAttributes(self): + self.assertEqual(self.team.id, 189850) + self.assertEqual(self.team.members_count, 0) + self.assertEqual(self.team.name, "Team created by PyGithub") + self.assertEqual(self.team.permission, "pull") + self.assertEqual(self.team.repos_count, 0) + self.assertEqual(self.team.url, "https://api.github.com/teams/189850") + + # test __repr__() based on this attributes + self.assertEqual(self.team.__repr__(), 'Team(name="Team created by PyGithub", id=189850)') + + def testMembers(self): + user = self.g.get_user("jacquev6") + self.assertListKeyEqual(self.team.get_members(), None, []) + self.assertFalse(self.team.has_in_members(user)) + self.team.add_to_members(user) + self.assertListKeyEqual(self.team.get_members(), lambda u: u.login, ["jacquev6"]) + self.assertTrue(self.team.has_in_members(user)) + self.team.remove_from_members(user) + self.assertListKeyEqual(self.team.get_members(), None, []) + self.assertFalse(self.team.has_in_members(user)) + + def testRepoPermission(self): + repo = self.org.get_repo("FatherBeaver") + self.team.set_repo_permission(repo, "admin") + + def testRepos(self): + repo = self.org.get_repo("FatherBeaver") + self.assertListKeyEqual(self.team.get_repos(), None, []) + self.assertFalse(self.team.has_in_repos(repo)) + self.team.add_to_repos(repo) + self.assertListKeyEqual(self.team.get_repos(), lambda r: r.name, ["FatherBeaver"]) + self.assertTrue(self.team.has_in_repos(repo)) + self.team.remove_from_repos(repo) + self.assertListKeyEqual(self.team.get_repos(), None, []) + self.assertFalse(self.team.has_in_repos(repo)) + + def testEditWithoutArguments(self): + self.team.edit("Name edited by PyGithub") + self.assertEqual(self.team.name, "Name edited by PyGithub") + + def testEditWithAllArguments(self): + self.team.edit("Name edited twice by PyGithub", "admin") + self.assertEqual(self.team.name, "Name edited twice by PyGithub") + self.assertEqual(self.team.permission, "admin") + + def testDelete(self): + self.team.delete() diff --git a/lib/github/tests/UserKey.py b/lib/github/tests/UserKey.py new file mode 100644 index 0000000000..a3e305c953 --- /dev/null +++ b/lib/github/tests/UserKey.py @@ -0,0 +1,54 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import Framework + + +class UserKey(Framework.TestCase): + def setUp(self): + Framework.TestCase.setUp(self) + self.key = self.g.get_user().get_key(2626650) + + def testAttributes(self): + self.assertEqual(self.key.id, 2626650) + self.assertEqual(self.key.key, "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA2Mm0RjTNAYFfSCtUpO54usdseroUSIYg5KX4JoseTpqyiB/hqewjYLAdUq/tNIQzrkoEJWSyZrQt0ma7/YCyMYuNGd3DU6q6ZAyBeY3E9RyCiKjO3aTL2VKQGFvBVVmGdxGVSCITRphAcsKc/PF35/fg9XP9S0anMXcEFtdfMHz41SSw+XtE+Vc+6cX9FuI5qUfLGbkv8L1v3g4uw9VXlzq4GfTA+1S7D6mcoGHopAIXFlVr+2RfDKdSURMcB22z41fljO1MW4+zUS/4FyUTpL991es5fcwKXYoiE+x06VJeJJ1Krwx+DZj45uweV6cHXt2JwJEI9fWB6WyBlDejWw==") + self.assertEqual(self.key.title, "Key added through PyGithub") + self.assertEqual(self.key.url, "https://api.github.com/user/keys/2626650") + self.assertTrue(self.key.verified) + + # test __repr__() based on this attributes + self.assertEqual(self.key.__repr__(), 'UserKey(title="Key added through PyGithub", id=2626650)') + + def testEditWithoutArguments(self): + self.key.edit() + + def testEditWithAllArguments(self): + self.key.edit("Title edited by PyGithub", "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA5Q58YmzZjU64prR5Pk91MfeHezOTgLqDYmepYbv3qjguiHtPai1vSai5WvUv3hgf9DArXsXE5CV6yoBIhAdGtpJKExHuQ2m4XTFCdbrgfQ3ypcSdgzEiQemyTA6TWwhbuwjJ1IqJMYOVLH+FBCkD8pyIpUDO7v3vaR2TCEuNwOS7lbsRsW3OkGYnUKjaPaCTe/inrqb7I3OE8cPhWJ3dM/zzzBj22J4LCNKhjKua8TFS74xGm3lNDZ6/twQl4n4xmrH/3tG+WOJicNO3JohNHqK9T0pILnr3epEyfdkBjcG0qXApqWvH2WipJhaH6of8Gdr0Z/K/7p8QFddmwNgdPQ==") + self.assertEqual(self.key.key, "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA5Q58YmzZjU64prR5Pk91MfeHezOTgLqDYmepYbv3qjguiHtPai1vSai5WvUv3hgf9DArXsXE5CV6yoBIhAdGtpJKExHuQ2m4XTFCdbrgfQ3ypcSdgzEiQemyTA6TWwhbuwjJ1IqJMYOVLH+FBCkD8pyIpUDO7v3vaR2TCEuNwOS7lbsRsW3OkGYnUKjaPaCTe/inrqb7I3OE8cPhWJ3dM/zzzBj22J4LCNKhjKua8TFS74xGm3lNDZ6/twQl4n4xmrH/3tG+WOJicNO3JohNHqK9T0pILnr3epEyfdkBjcG0qXApqWvH2WipJhaH6of8Gdr0Z/K/7p8QFddmwNgdPQ==") + self.assertEqual(self.key.title, "Title edited by PyGithub") + + def testDelete(self): + self.key.delete() diff --git a/lib/github/tests/__init__.py b/lib/github/tests/__init__.py new file mode 100644 index 0000000000..3a86f68983 --- /dev/null +++ b/lib/github/tests/__init__.py @@ -0,0 +1,25 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## diff --git a/lib/github/tests/__main__.py b/lib/github/tests/__main__.py new file mode 100644 index 0000000000..87bc0f0aa8 --- /dev/null +++ b/lib/github/tests/__main__.py @@ -0,0 +1,47 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 Vincent Jacques # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import sys +import unittest + +import github.tests.Framework +import github.tests.AllTests + + +def main(argv): + if "--record" in argv: + github.tests.Framework.activateRecordMode() + argv = [arg for arg in argv if arg != "--record"] + + if "--auth_with_token" in argv: + github.tests.Framework.activateTokenAuthMode() + argv = [arg for arg in argv if arg != "--auth_with_token"] + + unittest.main(module=github.tests.AllTests, argv=argv) + + +if __name__ == "__main__": + main(sys.argv) From c4b8a82a6acbc863e8d30e9bb7551fa3a4b8c1a3 Mon Sep 17 00:00:00 2001 From: X O Date: Tue, 11 Oct 2016 11:09:10 +1030 Subject: [PATCH 18/82] added vue --- static/js/core.js | 5 + static/js/lib/axios.min.js | 3 + static/js/lib/lodash.min.js | 127 + static/js/lib/vue.js | 7402 +++++++++++++++++++++++++++++++++++ views/layouts/main.mako | 87 +- views/partials/footer.mako | 52 - 6 files changed, 7608 insertions(+), 68 deletions(-) create mode 100644 static/js/lib/axios.min.js create mode 100644 static/js/lib/lodash.min.js create mode 100644 static/js/lib/vue.js diff --git a/static/js/core.js b/static/js/core.js index b12fef6e0e..42a65b2efb 100644 --- a/static/js/core.js +++ b/static/js/core.js @@ -74,6 +74,11 @@ $.ajax({ MEDUSA.info = data; MEDUSA.info.themeSpinner = MEDUSA.info.themeName === 'dark' ? '-dark' : ''; MEDUSA.info.loading = ''; + if (typeof startVue === 'undefined') { // eslint-disable-line no-undef + $('[v-cloak]').removeAttr('v-cloak'); + } else { + startVue(); // eslint-disable-line no-undef + } if (navigator.userAgent.indexOf('PhantomJS') === -1) { $(document).ready(UTIL.init); diff --git a/static/js/lib/axios.min.js b/static/js/lib/axios.min.js new file mode 100644 index 0000000000..eaf610be3d --- /dev/null +++ b/static/js/lib/axios.min.js @@ -0,0 +1,3 @@ +/* axios v0.12.0 | (c) 2016 by Matt Zabriskie */ +!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.axios=t():e.axios=t()}(this,function(){return function(e){function t(n){if(r[n])return r[n].exports;var o=r[n]={exports:{},id:n,loaded:!1};return e[n].call(o.exports,o,o.exports,t),o.loaded=!0,o.exports}var r={};return t.m=e,t.c=r,t.p="",t(0)}([function(e,t,r){e.exports=r(1)},function(e,t,r){"use strict";function n(e){this.defaults=i.merge({},e),this.interceptors={request:new u,response:new u}}var o=r(2),i=r(3),s=r(5),u=r(14),a=r(15),c=r(16),f=r(17),p=r(9);n.prototype.request=function(e){"string"==typeof e&&(e=i.merge({url:arguments[0]},arguments[1])),e=i.merge(o,this.defaults,{method:"get"},e),e.baseURL&&!a(e.url)&&(e.url=c(e.baseURL,e.url)),e.withCredentials=e.withCredentials||this.defaults.withCredentials,e.data=p(e.data,e.headers,e.transformRequest),e.headers=i.merge(e.headers.common||{},e.headers[e.method]||{},e.headers||{}),i.forEach(["delete","get","head","post","put","patch","common"],function(t){delete e.headers[t]});var t=[s,void 0],r=Promise.resolve(e);for(this.interceptors.request.forEach(function(e){t.unshift(e.fulfilled,e.rejected)}),this.interceptors.response.forEach(function(e){t.push(e.fulfilled,e.rejected)});t.length;)r=r.then(t.shift(),t.shift());return r};var d=new n(o),l=e.exports=f(n.prototype.request,d);l.request=f(n.prototype.request,d),l.Axios=n,l.defaults=d.defaults,l.interceptors=d.interceptors,l.create=function(e){return new n(e)},l.all=function(e){return Promise.all(e)},l.spread=r(18),i.forEach(["delete","get","head"],function(e){n.prototype[e]=function(t,r){return this.request(i.merge(r||{},{method:e,url:t}))},l[e]=f(n.prototype[e],d)}),i.forEach(["post","put","patch"],function(e){n.prototype[e]=function(t,r,n){return this.request(i.merge(n||{},{method:e,url:t,data:r}))},l[e]=f(n.prototype[e],d)})},function(e,t,r){"use strict";function n(e,t){!o.isUndefined(e)&&o.isUndefined(e["Content-Type"])&&(e["Content-Type"]=t)}var o=r(3),i=r(4),s=/^\)\]\}',?\n/,u={"Content-Type":"application/x-www-form-urlencoded"};e.exports={transformRequest:[function(e,t){return i(t,"Content-Type"),o.isFormData(e)||o.isArrayBuffer(e)||o.isStream(e)||o.isFile(e)||o.isBlob(e)?e:o.isArrayBufferView(e)?e.buffer:o.isURLSearchParams(e)?(n(t,"application/x-www-form-urlencoded;charset=utf-8"),e.toString()):o.isObject(e)?(n(t,"application/json;charset=utf-8"),JSON.stringify(e)):e}],transformResponse:[function(e){if("string"==typeof e){e=e.replace(s,"");try{e=JSON.parse(e)}catch(t){}}return e}],headers:{common:{Accept:"application/json, text/plain, */*"},patch:o.merge(u),post:o.merge(u),put:o.merge(u)},timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,validateStatus:function(e){return e>=200&&300>e}}},function(e,t){"use strict";function r(e){return"[object Array]"===x.call(e)}function n(e){return"[object ArrayBuffer]"===x.call(e)}function o(e){return"undefined"!=typeof FormData&&e instanceof FormData}function i(e){var t;return t="undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&e.buffer instanceof ArrayBuffer}function s(e){return"string"==typeof e}function u(e){return"number"==typeof e}function a(e){return"undefined"==typeof e}function c(e){return null!==e&&"object"==typeof e}function f(e){return"[object Date]"===x.call(e)}function p(e){return"[object File]"===x.call(e)}function d(e){return"[object Blob]"===x.call(e)}function l(e){return"[object Function]"===x.call(e)}function h(e){return c(e)&&l(e.pipe)}function m(e){return"undefined"!=typeof URLSearchParams&&e instanceof URLSearchParams}function y(e){return e.replace(/^\s*/,"").replace(/\s*$/,"")}function w(){return"undefined"!=typeof window&&"undefined"!=typeof document&&"function"==typeof document.createElement}function g(e,t){if(null!==e&&"undefined"!=typeof e)if("object"==typeof e||r(e)||(e=[e]),r(e))for(var n=0,o=e.length;o>n;n++)t.call(null,e[n],n,e);else for(var i in e)e.hasOwnProperty(i)&&t.call(null,e[i],i,e)}function v(){function e(e,r){"object"==typeof t[r]&&"object"==typeof e?t[r]=v(t[r],e):t[r]=e}for(var t={},r=0,n=arguments.length;n>r;r++)g(arguments[r],e);return t}var x=Object.prototype.toString;e.exports={isArray:r,isArrayBuffer:n,isFormData:o,isArrayBufferView:i,isString:s,isNumber:u,isObject:c,isUndefined:a,isDate:f,isFile:p,isBlob:d,isFunction:l,isStream:h,isURLSearchParams:m,isStandardBrowserEnv:w,forEach:g,merge:v,trim:y}},function(e,t,r){"use strict";var n=r(3);e.exports=function(e,t){n.forEach(e,function(r,n){n!==t&&n.toUpperCase()===t.toUpperCase()&&(e[t]=r,delete e[n])})}},function(e,t,r){"use strict";e.exports=function(e){return new Promise(function(t,n){try{var o;"function"==typeof e.adapter?o=e.adapter:"undefined"!=typeof XMLHttpRequest?o=r(6):"undefined"!=typeof process&&(o=r(6)),"function"==typeof o&&o(t,n,e)}catch(i){n(i)}})}},function(e,t,r){"use strict";var n=r(3),o=r(7),i=r(8),s=r(9),u=r(10),a="undefined"!=typeof window&&window.btoa||r(11),c=r(12);e.exports=function(e,t,f){var p=f.data,d=f.headers;n.isFormData(p)&&delete d["Content-Type"];var l=new XMLHttpRequest,h="onreadystatechange",m=!1;if("undefined"==typeof window||!window.XDomainRequest||"withCredentials"in l||u(f.url)||(l=new window.XDomainRequest,h="onload",m=!0,l.onprogress=function(){},l.ontimeout=function(){}),f.auth){var y=f.auth.username||"",w=f.auth.password||"";d.Authorization="Basic "+a(y+":"+w)}if(l.open(f.method.toUpperCase(),o(f.url,f.params,f.paramsSerializer),!0),l.timeout=f.timeout,l[h]=function(){if(l&&(4===l.readyState||m)&&0!==l.status){var r="getAllResponseHeaders"in l?i(l.getAllResponseHeaders()):null,n=f.responseType&&"text"!==f.responseType?l.response:l.responseText,o={data:s(n,r,f.transformResponse),status:1223===l.status?204:l.status,statusText:1223===l.status?"No Content":l.statusText,headers:r,config:f,request:l};c(e,t,o),l=null}},l.onerror=function(){t(new Error("Network Error")),l=null},l.ontimeout=function(){var e=new Error("timeout of "+f.timeout+"ms exceeded");e.timeout=f.timeout,e.code="ECONNABORTED",t(e),l=null},n.isStandardBrowserEnv()){var g=r(13),v=f.withCredentials||u(f.url)?g.read(f.xsrfCookieName):void 0;v&&(d[f.xsrfHeaderName]=v)}if("setRequestHeader"in l&&n.forEach(d,function(e,t){"undefined"==typeof p&&"content-type"===t.toLowerCase()?delete d[t]:l.setRequestHeader(t,e)}),f.withCredentials&&(l.withCredentials=!0),f.responseType)try{l.responseType=f.responseType}catch(x){if("json"!==l.responseType)throw x}f.progress&&("post"===f.method||"put"===f.method?l.upload.addEventListener("progress",f.progress):"get"===f.method&&l.addEventListener("progress",f.progress)),void 0===p&&(p=null),l.send(p)}},function(e,t,r){"use strict";function n(e){return encodeURIComponent(e).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}var o=r(3);e.exports=function(e,t,r){if(!t)return e;var i;if(r)i=r(t);else if(o.isURLSearchParams(t))i=t.toString();else{var s=[];o.forEach(t,function(e,t){null!==e&&"undefined"!=typeof e&&(o.isArray(e)&&(t+="[]"),o.isArray(e)||(e=[e]),o.forEach(e,function(e){o.isDate(e)?e=e.toISOString():o.isObject(e)&&(e=JSON.stringify(e)),s.push(n(t)+"="+n(e))}))}),i=s.join("&")}return i&&(e+=(-1===e.indexOf("?")?"?":"&")+i),e}},function(e,t,r){"use strict";var n=r(3);e.exports=function(e){var t,r,o,i={};return e?(n.forEach(e.split("\n"),function(e){o=e.indexOf(":"),t=n.trim(e.substr(0,o)).toLowerCase(),r=n.trim(e.substr(o+1)),t&&(i[t]=i[t]?i[t]+", "+r:r)}),i):i}},function(e,t,r){"use strict";var n=r(3);e.exports=function(e,t,r){return n.forEach(r,function(r){e=r(e,t)}),e}},function(e,t,r){"use strict";var n=r(3);e.exports=n.isStandardBrowserEnv()?function(){function e(e){var t=e;return r&&(o.setAttribute("href",t),t=o.href),o.setAttribute("href",t),{href:o.href,protocol:o.protocol?o.protocol.replace(/:$/,""):"",host:o.host,search:o.search?o.search.replace(/^\?/,""):"",hash:o.hash?o.hash.replace(/^#/,""):"",hostname:o.hostname,port:o.port,pathname:"/"===o.pathname.charAt(0)?o.pathname:"/"+o.pathname}}var t,r=/(msie|trident)/i.test(navigator.userAgent),o=document.createElement("a");return t=e(window.location.href),function(r){var o=n.isString(r)?e(r):r;return o.protocol===t.protocol&&o.host===t.host}}():function(){return function(){return!0}}()},function(e,t){"use strict";function r(){this.message="String contains an invalid character"}function n(e){for(var t,n,i=String(e),s="",u=0,a=o;i.charAt(0|u)||(a="=",u%1);s+=a.charAt(63&t>>8-u%1*8)){if(n=i.charCodeAt(u+=.75),n>255)throw new r;t=t<<8|n}return s}var o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";r.prototype=new Error,r.prototype.code=5,r.prototype.name="InvalidCharacterError",e.exports=n},function(e,t){"use strict";e.exports=function(e,t,r){var n=r.config.validateStatus;r.status&&n&&!n(r.status)?t(r):e(r)}},function(e,t,r){"use strict";var n=r(3);e.exports=n.isStandardBrowserEnv()?function(){return{write:function(e,t,r,o,i,s){var u=[];u.push(e+"="+encodeURIComponent(t)),n.isNumber(r)&&u.push("expires="+new Date(r).toGMTString()),n.isString(o)&&u.push("path="+o),n.isString(i)&&u.push("domain="+i),s===!0&&u.push("secure"),document.cookie=u.join("; ")},read:function(e){var t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove:function(e){this.write(e,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}()},function(e,t,r){"use strict";function n(){this.handlers=[]}var o=r(3);n.prototype.use=function(e,t){return this.handlers.push({fulfilled:e,rejected:t}),this.handlers.length-1},n.prototype.eject=function(e){this.handlers[e]&&(this.handlers[e]=null)},n.prototype.forEach=function(e){o.forEach(this.handlers,function(t){null!==t&&e(t)})},e.exports=n},function(e,t){"use strict";e.exports=function(e){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(e)}},function(e,t){"use strict";e.exports=function(e,t){return e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,"")}},function(e,t){"use strict";e.exports=function(e,t){return function(){for(var r=new Array(arguments.length),n=0;n=t?t:r),n!==T&&(t=t>=n?t:n)),t}function rn(t,n,r,e,o,i,f){var c;if(e&&(c=i?e(t,o,i,f):e(t)),c!==T)return c;if(!Ze(t))return t;if(o=yi(t)){if(c=Kr(t),!n)return lr(t,c)}else{var a=qr(t),l="[object Function]"==a||"[object GeneratorFunction]"==a;if(bi(t))return or(t,n);if("[object Object]"==a||"[object Arguments]"==a||l&&!i){if(C(t))return i?t:{};if(c=Gr(l?{}:t), +!n)return hr(t,Xt(c,t))}else{if(!Ct[a])return i?t:{};c=Jr(t,a,rn,n)}}if(f||(f=new qt),i=f.get(t))return i;if(f.set(t,c),!o)var s=r?gn(t,iu,Tr):iu(t);return u(s||t,function(u,o){s&&(o=u,u=t[o]),Yt(c,o,rn(u,n,r,e,o,t,f))}),c}function en(t){var n=iu(t),r=n.length;return function(e){if(null==e)return!r;for(var u=r;u--;){var o=n[u],i=t[o],f=e[o];if(f===T&&!(o in Object(e))||!i(f))return false}return true}}function un(t){return Ze(t)?Tu(t):{}}function on(t,n,r){if(typeof t!="function")throw new Au("Expected a function"); +return At(function(){t.apply(T,r)},n)}function fn(t,n,r,e){var u=-1,o=c,i=true,f=t.length,s=[],h=n.length;if(!f)return s;r&&(n=l(n,O(r))),e?(o=a,i=false):n.length>=200&&(o=E,i=false,n=new Zt(n));t:for(;++u0&&r(f)?n>1?sn(f,n-1,r,e,u):s(u,f):e||(u[u.length]=f)}return u}function hn(t,n){return t&&ko(t,n,iu)}function pn(t,n){return t&&Eo(t,n,iu)}function _n(t,n){return f(n,function(n){return Fe(t[n])})}function vn(t,n){n=ne(n,t)?[n]:er(n);for(var r=0,e=n.length;null!=t&&e>r;)t=t[fe(n[r++])];return r&&r==e?t:T}function gn(t,n,r){ +return n=n(t),yi(t)?n:s(n,r(t))}function dn(t,n){return t>n}function yn(t,n){return null!=t&&(Wu.call(t,n)||typeof t=="object"&&n in t&&null===Ju(Object(t)))}function bn(t,n){return null!=t&&n in Object(t)}function xn(t,n,r){for(var e=r?a:c,u=t[0].length,o=t.length,i=o,f=Array(o),s=1/0,h=[];i--;){var p=t[i];i&&n&&(p=l(p,O(n))),s=to(p.length,s),f[i]=!r&&(n||u>=120&&p.length>=120)?new Zt(i&&p):T}var p=t[0],_=-1,v=f[0];t:for(;++_h.length;){var g=p[_],d=n?n(g):g,g=r||0!==g?g:0;if(v?!E(v,d):!e(h,d,r)){ +for(i=o;--i;){var y=f[i];if(y?!E(y,d):!e(t[i],d,r))continue t}v&&v.push(d),h.push(g)}}return h}function jn(t,n,r){var e={};return hn(t,function(t,u,o){n(e,r(t),u,o)}),e}function wn(t,n,e){return ne(n,t)||(n=er(n),t=ie(t,n),n=ve(n)),n=null==t?t:t[fe(n)],null==n?T:r(n,t,e)}function mn(t,n,r,e,u){if(t===n)n=true;else if(null==t||null==n||!Ze(t)&&!Te(n))n=t!==t&&n!==n;else t:{var o=yi(t),i=yi(n),f="[object Array]",c="[object Array]";o||(f=qr(t),f="[object Arguments]"==f?"[object Object]":f),i||(c=qr(n), +c="[object Arguments]"==c?"[object Object]":c);var a="[object Object]"==f&&!C(t),i="[object Object]"==c&&!C(n);if((c=f==c)&&!a)u||(u=new qt),n=o||Ye(t)?zr(t,n,mn,r,e,u):Ur(t,n,f,mn,r,e,u);else{if(!(2&e)&&(o=a&&Wu.call(t,"__wrapped__"),f=i&&Wu.call(n,"__wrapped__"),o||f)){t=o?t.value():t,n=f?n.value():n,u||(u=new qt),n=mn(t,n,r,e,u);break t}if(c)n:if(u||(u=new qt),o=2&e,f=iu(t),i=f.length,c=iu(n).length,i==c||o){for(a=i;a--;){var l=f[a];if(!(o?l in n:yn(n,l))){n=false;break n}}if(c=u.get(t))n=c==n;else{ +c=true,u.set(t,n);for(var s=o;++at}function In(t,n){var r=-1,e=Ue(t)?Array(t.length):[]; +return Ao(t,function(t,u,o){e[++r]=n(t,u,o)}),e}function Rn(t){var n=Pr(t);return 1==n.length&&n[0][2]?ue(n[0][0],n[0][1]):function(r){return r===t||An(r,t,n)}}function Wn(t,n){return ne(t)&&n===n&&!Ze(n)?ue(fe(t),n):function(r){var e=uu(r,t);return e===T&&e===n?ou(r,t):mn(n,e,T,3)}}function Bn(t,n,r,e,o){if(t!==n){if(!yi(n)&&!Ye(n))var i=fu(n);u(i||n,function(u,f){if(i&&(f=u,u=n[f]),Ze(u)){o||(o=new qt);var c=f,a=o,l=t[c],s=n[c],h=a.get(s);if(h)Jt(t,c,h);else{var h=e?e(l,s,c+"",t,n,a):T,p=h===T;p&&(h=s, +yi(s)||Ye(s)?yi(l)?h=l:$e(l)?h=lr(l):(p=false,h=rn(s,true)):Ve(s)||ze(s)?ze(l)?h=ru(l):!Ze(l)||r&&Fe(l)?(p=false,h=rn(s,true)):h=l:p=false),a.set(s,h),p&&Bn(h,s,r,e,a),a["delete"](s),Jt(t,c,h)}}else c=e?e(t[f],u,f+"",t,n,o):T,c===T&&(c=u),Jt(t,f,c)})}}function Ln(t,n){var r=t.length;return r?(n+=0>n?r:0,Xr(n,r)?t[n]:T):void 0}function Mn(t,n,r){var e=-1;return n=l(n.length?n:[pu],O(Fr())),t=In(t,function(t){return{a:l(n,function(n){return n(t)}),b:++e,c:t}}),j(t,function(t,n){var e;t:{e=-1;for(var u=t.a,o=n.a,i=u.length,f=r.length;++e=f?c:c*("desc"==r[e]?-1:1);break t}}e=t.b-n.b}return e})}function Cn(t,n){return t=Object(t),h(n,function(n,r){return r in t&&(n[r]=t[r]),n},{})}function zn(t,n){for(var r=-1,e=gn(t,fu,Bo),u=e.length,o={};++rn||n>9007199254740991)return r;do n%2&&(r+=t),(n=Gu(n/2))&&(t+=t);while(n);return r}function Zn(t,n,r,e){n=ne(n,t)?[n]:er(n);for(var u=-1,o=n.length,i=o-1,f=t;null!=f&&++un&&(n=-n>u?0:u+n),r=r>u?u:r,0>r&&(r+=u),u=n>r?0:r-n>>>0,n>>>=0,r=Array(u);++e=u){for(;u>e;){var o=e+u>>>1,i=t[o];null!==i&&!Je(i)&&(r?n>=i:n>i)?e=o+1:u=o}return u} +return Kn(t,n,pu,r)}function Kn(t,n,r,e){n=r(n);for(var u=0,o=t?t.length:0,i=n!==n,f=null===n,c=Je(n),a=n===T;o>u;){var l=Gu((u+o)/2),s=r(t[l]),h=s!==T,p=null===s,_=s===s,v=Je(s);(i?e||_:a?_&&(e||h):f?_&&h&&(e||!p):c?_&&h&&!p&&(e||!v):p||v?0:e?n>=s:n>s)?u=l+1:o=l}return to(o,4294967294)}function Gn(t,n){for(var r=-1,e=t.length,u=0,o=[];++r=200){if(u=n?null:Io(t))return D(u);i=false,u=E,l=new Zt}else l=n?[]:f;t:for(;++ee?n[e]:T);return i}function rr(t){return $e(t)?t:[]}function er(t){return yi(t)?t:Co(t)}function ur(t,n,r){var e=t.length;return r=r===T?e:r,!n&&r>=e?t:Tn(t,n,r)}function or(t,n){ +if(n)return t.slice();var r=new t.constructor(t.length);return t.copy(r),r}function ir(t){var n=new t.constructor(t.byteLength);return new Fu(n).set(new Fu(t)),n}function fr(t,n){if(t!==n){var r=t!==T,e=null===t,u=t===t,o=Je(t),i=n!==T,f=null===n,c=n===n,a=Je(n);if(!f&&!a&&!o&&t>n||o&&i&&c&&!f&&!a||e&&i&&c||!r&&c||!u)return 1;if(!e&&!o&&!a&&n>t||a&&r&&u&&!e&&!o||f&&r&&u||!i&&u||!c)return-1}return 0}function cr(t,n,r,e){var u=-1,o=t.length,i=r.length,f=-1,c=n.length,a=Xu(o-i,0),l=Array(c+a);for(e=!e;++fu)&&(l[r[u]]=t[u]);for(;a--;)l[f++]=t[u++];return l}function ar(t,n,r,e){var u=-1,o=t.length,i=-1,f=r.length,c=-1,a=n.length,l=Xu(o-f,0),s=Array(l+a);for(e=!e;++uu)&&(s[l+r[i]]=t[u++]);return s}function lr(t,n){var r=-1,e=t.length;for(n||(n=Array(e));++r1?r[u-1]:T,i=u>2?r[2]:T,o=t.length>3&&typeof o=="function"?(u--,o):T;for(i&&te(r[0],r[1],i)&&(o=3>u?T:o,u=1),n=Object(n);++ei&&f[0]!==a&&f[i-1]!==a?[]:$(f,a), +i-=c.length,e>i?Br(t,n,Ar,u.placeholder,T,f,c,T,T,e-i):r(this&&this!==Kt&&this instanceof u?o:t,this,f)}var o=xr(t);return u}function wr(t){return function(n,r,e){var u=Object(n);if(r=Fr(r,3),!Ue(n))var o=iu(n);return e=t(o||n,function(t,n){return o&&(n=t,t=u[n]),r(t,n,u)},e),e>-1?n[o?o[e]:e]:T}}function mr(t){return Me(function(n){n=sn(n,1);var r=n.length,e=r,u=zt.prototype.thru;for(t&&n.reverse();e--;){var o=n[e];if(typeof o!="function")throw new Au("Expected a function");if(u&&!i&&"wrapper"==$r(o))var i=new zt([],true); +}for(e=i?e:r;++e=200)return i.plant(e).value();for(var u=0,t=r?n[u].apply(this,t):e;++ud)return j=$(y,j),Br(t,n,Ar,l.placeholder,r,y,j,f,c,a-d);if(j=h?r:this,b=p?j[t]:t,d=y.length,f){x=y.length;for(var w=to(f.length,x),m=lr(y);w--;){var A=f[w];y[w]=Xr(A,x)?m[A]:T}}else v&&d>1&&y.reverse();return s&&d>c&&(y.length=c),this&&this!==Kt&&this instanceof l&&(b=g||xr(b)),b.apply(j,y)}var s=128&n,h=1&n,p=2&n,_=24&n,v=512&n,g=p?T:xr(t);return l}function Or(t,n){return function(r,e){return jn(r,t,n(e))}}function kr(t){return function(n,r){var e; +if(n===T&&r===T)return 0;if(n!==T&&(e=n),r!==T){if(e===T)return r;typeof n=="string"||typeof r=="string"?(n=Yn(n),r=Yn(r)):(n=Jn(n),r=Jn(r)),e=t(n,r)}return e}}function Er(t){return Me(function(n){return n=1==n.length&&yi(n[0])?l(n[0],O(Fr())):l(sn(n,1,Qr),O(Fr())),Me(function(e){var u=this;return t(n,function(t){return r(t,u,e)})})})}function Sr(t,n){n=n===T?" ":Yn(n);var r=n.length;return 2>r?r?Pn(n,t):n:(r=Pn(n,Ku(t/N(n))),Wt.test(n)?ur(r.match(It),0,t).join(""):r.slice(0,t))}function Ir(t,n,e,u){ +function o(){for(var n=-1,c=arguments.length,a=-1,l=u.length,s=Array(l+c),h=this&&this!==Kt&&this instanceof o?f:t;++an?1:-1:nu(e)||0;var u=-1;r=Xu(Ku((r-n)/(e||1)),0);for(var o=Array(r);r--;)o[t?r:++u]=n,n+=e;return o}}function Wr(t){return function(n,r){return typeof n=="string"&&typeof r=="string"||(n=nu(n), +r=nu(r)),t(n,r)}}function Br(t,n,r,e,u,o,i,f,c,a){var l=8&n,s=l?i:T;i=l?T:i;var h=l?o:T;return o=l?T:o,n=(n|(l?32:64))&~(l?64:32),4&n||(n&=-4),n=[t,n,u,h,s,o,i,f,c,a],r=r.apply(T,n),re(t)&&Mo(r,n),r.placeholder=e,r}function Lr(t){var n=wu[t];return function(t,r){if(t=nu(t),r=to(Xe(r),292)){var e=(eu(t)+"e").split("e"),e=n(e[0]+"e"+(+e[1]+r)),e=(eu(e)+"e").split("e");return+(e[0]+"e"+(+e[1]-r))}return n(t)}}function Mr(t){return function(n){var r=qr(n);return"[object Map]"==r?U(n):"[object Set]"==r?F(n):A(n,t(n)); +}}function Cr(t,n,r,e,u,o,i,f){var c=2&n;if(!c&&typeof t!="function")throw new Au("Expected a function");var a=e?e.length:0;if(a||(n&=-97,e=u=T),i=i===T?i:Xu(Xe(i),0),f=f===T?f:Xe(f),a-=u?u.length:0,64&n){var l=e,s=u;e=u=T}var h=c?T:Ro(t);return o=[t,n,r,e,u,l,s,o,i,f],h&&(r=o[1],t=h[1],n=r|t,e=128==t&&8==r||128==t&&256==r&&h[8]>=o[7].length||384==t&&h[8]>=h[7].length&&8==r,131>n||e)&&(1&t&&(o[2]=h[2],n|=1&r?0:4),(r=h[3])&&(e=o[3],o[3]=e?cr(e,r,h[4]):r,o[4]=e?$(o[3],"__lodash_placeholder__"):h[4]), +(r=h[5])&&(e=o[5],o[5]=e?ar(e,r,h[6]):r,o[6]=e?$(o[5],"__lodash_placeholder__"):h[6]),(r=h[7])&&(o[7]=r),128&t&&(o[8]=null==o[8]?h[8]:to(o[8],h[8])),null==o[9]&&(o[9]=h[9]),o[0]=h[0],o[1]=n),t=o[0],n=o[1],r=o[2],e=o[3],u=o[4],f=o[9]=null==o[9]?c?0:t.length:Xu(o[9]-a,0),!f&&24&n&&(n&=-25),(h?So:Mo)(n&&1!=n?8==n||16==n?jr(t,n,f):32!=n&&33!=n||u.length?Ar.apply(T,o):Ir(t,n,r,e):dr(t,n,r),o)}function zr(t,n,r,e,u,o){var i=2&u,f=t.length,c=n.length;if(f!=c&&!(i&&c>f))return false;if(c=o.get(t))return c==n; +var c=-1,a=true,l=1&u?new Zt:T;for(o.set(t,n);++c-1&&0==t%1&&n>t}function te(t,n,r){if(!Ze(r))return false;var e=typeof n;return("number"==e?Ue(r)&&Xr(n,r.length):"string"==e&&n in r)?Ce(r[n],t):false}function ne(t,n){if(yi(t))return false;var r=typeof t;return"number"==r||"symbol"==r||"boolean"==r||null==t||Je(t)?true:ut.test(t)||!et.test(t)||null!=n&&t in Object(n)}function re(t){ +var n=$r(t),r=Ot[n];return typeof r=="function"&&n in Ut.prototype?t===r?true:(n=Ro(r),!!n&&t===n[0]):false}function ee(t){var n=t&&t.constructor;return t===(typeof n=="function"&&n.prototype||ku)}function ue(t,n){return function(r){return null==r?false:r[t]===n&&(n!==T||t in Object(r))}}function oe(t,n,r,e,u,o){return Ze(t)&&Ze(n)&&Bn(t,n,T,oe,o.set(n,t)),t}function ie(t,n){return 1==n.length?t:vn(t,Tn(n,0,-1))}function fe(t){if(typeof t=="string"||Je(t))return t;var n=t+"";return"0"==n&&1/t==-q?"-0":n}function ce(t){ +if(null!=t){try{return Ru.call(t)}catch(n){}return t+""}return""}function ae(t){if(t instanceof Ut)return t.clone();var n=new zt(t.__wrapped__,t.__chain__);return n.__actions__=lr(t.__actions__),n.__index__=t.__index__,n.__values__=t.__values__,n}function le(t,n,r){var e=t?t.length:0;return e?(n=r||n===T?1:Xe(n),Tn(t,0>n?0:n,e)):[]}function se(t,n,r){var e=t?t.length:0;return e?(n=r||n===T?1:Xe(n),n=e-n,Tn(t,0,0>n?0:n)):[]}function he(t,n,r){var e=t?t.length:0;return e?(r=null==r?0:Xe(r),0>r&&(r=Xu(e+r,0)), +g(t,Fr(n,3),r)):-1}function pe(t,n,r){var e=t?t.length:0;if(!e)return-1;var u=e-1;return r!==T&&(u=Xe(r),u=0>r?Xu(e+u,0):to(u,e-1)),g(t,Fr(n,3),u,true)}function _e(t){return t&&t.length?t[0]:T}function ve(t){var n=t?t.length:0;return n?t[n-1]:T}function ge(t,n){return t&&t.length&&n&&n.length?Dn(t,n):t}function de(t){return t?uo.call(t):t}function ye(t){if(!t||!t.length)return[];var n=0;return t=f(t,function(t){return $e(t)?(n=Xu(t.length,n),true):void 0}),m(n,function(n){return l(t,Un(n))})}function be(t,n){ +if(!t||!t.length)return[];var e=ye(t);return null==n?e:l(e,function(t){return r(n,T,t)})}function xe(t){return t=Ot(t),t.__chain__=true,t}function je(t,n){return n(t)}function we(){return this}function me(t,n){return(yi(t)?u:Ao)(t,Fr(n,3))}function Ae(t,n){return(yi(t)?o:Oo)(t,Fr(n,3))}function Oe(t,n){return(yi(t)?l:In)(t,Fr(n,3))}function ke(t,n,r){var e=-1,u=He(t),o=u.length,i=o-1;for(n=(r?te(t,n,r):n===T)?1:nn(Xe(n),0,o);++e=t&&(n=T),r}}function Re(t,n,r){return n=r?T:n,t=Cr(t,8,T,T,T,T,T,n),t.placeholder=Re.placeholder,t}function We(t,n,r){return n=r?T:n,t=Cr(t,16,T,T,T,T,T,n),t.placeholder=We.placeholder,t}function Be(t,n,r){function e(n){var r=c,e=a;return c=a=T,_=n,s=t.apply(e,r); +}function u(t){var r=t-p;return t-=_,p===T||r>=n||0>r||g&&t>=l}function o(){var t=Ee();if(u(t))return i(t);var r;r=t-_,t=n-(t-p),r=g?to(t,l-r):t,h=At(o,r)}function i(t){return h=T,d&&c?e(t):(c=a=T,s)}function f(){var t=Ee(),r=u(t);if(c=arguments,a=this,p=t,r){if(h===T)return _=t=p,h=At(o,n),v?e(t):s;if(g)return h=At(o,n),e(p)}return h===T&&(h=At(o,n)),s}var c,a,l,s,h,p,_=0,v=false,g=false,d=true;if(typeof t!="function")throw new Au("Expected a function");return n=nu(n)||0,Ze(r)&&(v=!!r.leading,l=(g="maxWait"in r)?Xu(nu(r.maxWait)||0,n):l, +d="trailing"in r?!!r.trailing:d),f.cancel=function(){_=0,c=p=a=h=T},f.flush=function(){return h===T?s:i(Ee())},f}function Le(t,n){function r(){var e=arguments,u=n?n.apply(this,e):e[0],o=r.cache;return o.has(u)?o.get(u):(e=t.apply(this,e),r.cache=o.set(u,e),e)}if(typeof t!="function"||n&&typeof n!="function")throw new Au("Expected a function");return r.cache=new(Le.Cache||Pt),r}function Me(t,n){if(typeof t!="function")throw new Au("Expected a function");return n=Xu(n===T?t.length-1:Xe(n),0),function(){ +for(var e=arguments,u=-1,o=Xu(e.length-n,0),i=Array(o);++u-1&&0==t%1&&9007199254740991>=t}function Ze(t){var n=typeof t;return!!t&&("object"==n||"function"==n)}function Te(t){return!!t&&typeof t=="object"}function qe(t){return typeof t=="number"||Te(t)&&"[object Number]"==Mu.call(t); +}function Ve(t){return!Te(t)||"[object Object]"!=Mu.call(t)||C(t)?false:(t=Ju(Object(t)),null===t?true:(t=Wu.call(t,"constructor")&&t.constructor,typeof t=="function"&&t instanceof t&&Ru.call(t)==Lu))}function Ke(t){return Ze(t)&&"[object RegExp]"==Mu.call(t)}function Ge(t){return typeof t=="string"||!yi(t)&&Te(t)&&"[object String]"==Mu.call(t)}function Je(t){return typeof t=="symbol"||Te(t)&&"[object Symbol]"==Mu.call(t)}function Ye(t){return Te(t)&&Pe(t.length)&&!!Mt[Mu.call(t)]}function He(t){if(!t)return[]; +if(Ue(t))return Ge(t)?t.match(It):lr(t);if(Zu&&t[Zu])return z(t[Zu]());var n=qr(t);return("[object Map]"==n?U:"[object Set]"==n?D:cu)(t)}function Qe(t){return t?(t=nu(t),t===q||t===-q?1.7976931348623157e308*(0>t?-1:1):t===t?t:0):0===t?t:0}function Xe(t){t=Qe(t);var n=t%1;return t===t?n?t-n:t:0}function tu(t){return t?nn(Xe(t),0,4294967295):0}function nu(t){if(typeof t=="number")return t;if(Je(t))return V;if(Ze(t)&&(t=Fe(t.valueOf)?t.valueOf():t,t=Ze(t)?t+"":t),typeof t!="string")return 0===t?t:+t; +t=t.replace(ct,"");var n=dt.test(t);return n||bt.test(t)?Nt(t.slice(2),n?2:8):gt.test(t)?V:+t}function ru(t){return sr(t,fu(t))}function eu(t){return null==t?"":Yn(t)}function uu(t,n,r){return t=null==t?T:vn(t,n),t===T?r:t}function ou(t,n){return null!=t&&Vr(t,n,bn)}function iu(t){var n=ee(t);if(!n&&!Ue(t))return Qu(Object(t));var r,e=Yr(t),u=!!e,e=e||[],o=e.length;for(r in t)!yn(t,r)||u&&("length"==r||Xr(r,o))||n&&"constructor"==r||e.push(r);return e}function fu(t){for(var n=-1,r=ee(t),e=En(t),u=e.length,o=Yr(t),i=!!o,o=o||[],f=o.length;++nt?false:(t==n.length-1?n.pop():Vu.call(n,t,1),true)},Dt.prototype.get=function(t){ +var n=this.__data__;return t=Ht(n,t),0>t?T:n[t][1]},Dt.prototype.has=function(t){return-1e?r.push([t,n]):r[e][1]=n,this},Pt.prototype.clear=function(){this.__data__={hash:new $t,map:new(fo||Dt),string:new $t}},Pt.prototype["delete"]=function(t){return Nr(this,t)["delete"](t)},Pt.prototype.get=function(t){return Nr(this,t).get(t)},Pt.prototype.has=function(t){return Nr(this,t).has(t)},Pt.prototype.set=function(t,n){ +return Nr(this,t).set(t,n),this},Zt.prototype.add=Zt.prototype.push=function(t){return this.__data__.set(t,"__lodash_hash_undefined__"),this},Zt.prototype.has=function(t){return this.__data__.has(t)},qt.prototype.clear=function(){this.__data__=new Dt},qt.prototype["delete"]=function(t){return this.__data__["delete"](t)},qt.prototype.get=function(t){return this.__data__.get(t)},qt.prototype.has=function(t){return this.__data__.has(t)},qt.prototype.set=function(t,n){var r=this.__data__;return r instanceof Dt&&200==r.__data__.length&&(r=this.__data__=new Pt(r.__data__)), +r.set(t,n),this};var Ao=vr(hn),Oo=vr(pn,true),ko=gr(),Eo=gr(true);Nu&&!qu.call({valueOf:1},"valueOf")&&(En=function(t){return z(Nu(t))});var So=ho?function(t,n){return ho.set(t,n),t}:pu,Io=ao&&1/D(new ao([,-0]))[1]==q?function(t){return new ao(t)}:gu,Ro=ho?function(t){return ho.get(t)}:gu,Wo=Un("length");Pu||(Tr=yu);var Bo=Pu?function(t){for(var n=[];t;)s(n,Tr(t)),t=Ju(Object(t));return n}:Tr;(io&&"[object DataView]"!=qr(new io(new ArrayBuffer(1)))||fo&&"[object Map]"!=qr(new fo)||co&&"[object Promise]"!=qr(co.resolve())||ao&&"[object Set]"!=qr(new ao)||lo&&"[object WeakMap]"!=qr(new lo))&&(qr=function(t){ +var n=Mu.call(t);if(t=(t="[object Object]"==n?t.constructor:T)?ce(t):T)switch(t){case vo:return"[object DataView]";case go:return"[object Map]";case yo:return"[object Promise]";case bo:return"[object Set]";case xo:return"[object WeakMap]"}return n});var Lo=Su?Fe:bu,Mo=function(){var t=0,n=0;return function(r,e){var u=Ee(),o=16-(u-n);if(n=u,o>0){if(150<=++t)return r}else t=0;return So(r,e)}}(),Co=Le(function(t){var n=[];return eu(t).replace(ot,function(t,r,e,u){n.push(e?u.replace(ht,"$1"):r||t)}), +n}),zo=Me(function(t,n){return $e(t)?fn(t,sn(n,1,$e,true)):[]}),Uo=Me(function(t,n){var r=ve(n);return $e(r)&&(r=T),$e(t)?fn(t,sn(n,1,$e,true),Fr(r)):[]}),$o=Me(function(t,n){var r=ve(n);return $e(r)&&(r=T),$e(t)?fn(t,sn(n,1,$e,true),T,r):[]}),Do=Me(function(t){var n=l(t,rr);return n.length&&n[0]===t[0]?xn(n):[]}),Fo=Me(function(t){var n=ve(t),r=l(t,rr);return n===ve(r)?n=T:r.pop(),r.length&&r[0]===t[0]?xn(r,Fr(n)):[]}),No=Me(function(t){var n=ve(t),r=l(t,rr);return n===ve(r)?n=T:r.pop(),r.length&&r[0]===t[0]?xn(r,T,n):[]; +}),Po=Me(ge),Zo=Me(function(t,n){n=sn(n,1);var r=t?t.length:0,e=tn(t,n);return Fn(t,l(n,function(t){return Xr(t,r)?+t:t}).sort(fr)),e}),To=Me(function(t){return Hn(sn(t,1,$e,true))}),qo=Me(function(t){var n=ve(t);return $e(n)&&(n=T),Hn(sn(t,1,$e,true),Fr(n))}),Vo=Me(function(t){var n=ve(t);return $e(n)&&(n=T),Hn(sn(t,1,$e,true),T,n)}),Ko=Me(function(t,n){return $e(t)?fn(t,n):[]}),Go=Me(function(t){return tr(f(t,$e))}),Jo=Me(function(t){var n=ve(t);return $e(n)&&(n=T),tr(f(t,$e),Fr(n))}),Yo=Me(function(t){ +var n=ve(t);return $e(n)&&(n=T),tr(f(t,$e),T,n)}),Ho=Me(ye),Qo=Me(function(t){var n=t.length,n=n>1?t[n-1]:T,n=typeof n=="function"?(t.pop(),n):T;return be(t,n)}),Xo=Me(function(t){function n(n){return tn(n,t)}t=sn(t,1);var r=t.length,e=r?t[0]:0,u=this.__wrapped__;return!(r>1||this.__actions__.length)&&u instanceof Ut&&Xr(e)?(u=u.slice(e,+e+(r?1:0)),u.__actions__.push({func:je,args:[n],thisArg:T}),new zt(u,this.__chain__).thru(function(t){return r&&!t.length&&t.push(T),t})):this.thru(n)}),ti=pr(function(t,n,r){ +Wu.call(t,r)?++t[r]:t[r]=1}),ni=wr(he),ri=wr(pe),ei=pr(function(t,n,r){Wu.call(t,r)?t[r].push(n):t[r]=[n]}),ui=Me(function(t,n,e){var u=-1,o=typeof n=="function",i=ne(n),f=Ue(t)?Array(t.length):[];return Ao(t,function(t){var c=o?n:i&&null!=t?t[n]:T;f[++u]=c?r(c,t,e):wn(t,n,e)}),f}),oi=pr(function(t,n,r){t[r]=n}),ii=pr(function(t,n,r){t[r?0:1].push(n)},function(){return[[],[]]}),fi=Me(function(t,n){if(null==t)return[];var r=n.length;return r>1&&te(t,n[0],n[1])?n=[]:r>2&&te(n[0],n[1],n[2])&&(n=[n[0]]), +n=1==n.length&&yi(n[0])?n[0]:sn(n,1,Qr),Mn(t,n,[])}),ci=Me(function(t,n,r){var e=1;if(r.length)var u=$(r,Dr(ci)),e=32|e;return Cr(t,e,n,r,u)}),ai=Me(function(t,n,r){var e=3;if(r.length)var u=$(r,Dr(ai)),e=32|e;return Cr(n,e,t,r,u)}),li=Me(function(t,n){return on(t,1,n)}),si=Me(function(t,n,r){return on(t,nu(n)||0,r)});Le.Cache=Pt;var hi=Me(function(t,n){n=1==n.length&&yi(n[0])?l(n[0],O(Fr())):l(sn(n,1,Qr),O(Fr()));var e=n.length;return Me(function(u){for(var o=-1,i=to(u.length,e);++o=n}),yi=Array.isArray,bi=Uu?function(t){return t instanceof Uu}:bu,xi=Wr(Sn),ji=Wr(function(t,n){return n>=t}),wi=_r(function(t,n){if(po||ee(n)||Ue(n))sr(n,iu(n),t);else for(var r in n)Wu.call(n,r)&&Yt(t,r,n[r])}),mi=_r(function(t,n){if(po||ee(n)||Ue(n))sr(n,fu(n),t);else for(var r in n)Yt(t,r,n[r]); +}),Ai=_r(function(t,n,r,e){sr(n,fu(n),t,e)}),Oi=_r(function(t,n,r,e){sr(n,iu(n),t,e)}),ki=Me(function(t,n){return tn(t,sn(n,1))}),Ei=Me(function(t){return t.push(T,Vt),r(Ai,T,t)}),Si=Me(function(t){return t.push(T,oe),r(Li,T,t)}),Ii=Or(function(t,n,r){t[n]=r},hu(pu)),Ri=Or(function(t,n,r){Wu.call(t,n)?t[n].push(r):t[n]=[r]},Fr),Wi=Me(wn),Bi=_r(function(t,n,r){Bn(t,n,r)}),Li=_r(function(t,n,r,e){Bn(t,n,r,e)}),Mi=Me(function(t,n){return null==t?{}:(n=l(sn(n,1),fe),Cn(t,fn(gn(t,fu,Bo),n)))}),Ci=Me(function(t,n){ +return null==t?{}:Cn(t,l(sn(n,1),fe))}),zi=Mr(iu),Ui=Mr(fu),$i=br(function(t,n,r){return n=n.toLowerCase(),t+(r?au(n):n)}),Di=br(function(t,n,r){return t+(r?"-":"")+n.toLowerCase()}),Fi=br(function(t,n,r){return t+(r?" ":"")+n.toLowerCase()}),Ni=yr("toLowerCase"),Pi=br(function(t,n,r){return t+(r?"_":"")+n.toLowerCase()}),Zi=br(function(t,n,r){return t+(r?" ":"")+qi(n)}),Ti=br(function(t,n,r){return t+(r?" ":"")+n.toUpperCase()}),qi=yr("toUpperCase"),Vi=Me(function(t,n){try{return r(t,T,n)}catch(e){ +return De(e)?e:new ju(e)}}),Ki=Me(function(t,n){return u(sn(n,1),function(n){n=fe(n),t[n]=ci(t[n],t)}),t}),Gi=mr(),Ji=mr(true),Yi=Me(function(t,n){return function(r){return wn(r,t,n)}}),Hi=Me(function(t,n){return function(r){return wn(t,r,n)}}),Qi=Er(l),Xi=Er(i),tf=Er(_),nf=Rr(),rf=Rr(true),ef=kr(function(t,n){return t+n}),uf=Lr("ceil"),of=kr(function(t,n){return t/n}),ff=Lr("floor"),cf=kr(function(t,n){return t*n}),af=Lr("round"),lf=kr(function(t,n){return t-n});return Ot.after=function(t,n){if(typeof n!="function")throw new Au("Expected a function"); +return t=Xe(t),function(){return 1>--t?n.apply(this,arguments):void 0}},Ot.ary=Se,Ot.assign=wi,Ot.assignIn=mi,Ot.assignInWith=Ai,Ot.assignWith=Oi,Ot.at=ki,Ot.before=Ie,Ot.bind=ci,Ot.bindAll=Ki,Ot.bindKey=ai,Ot.castArray=function(){if(!arguments.length)return[];var t=arguments[0];return yi(t)?t:[t]},Ot.chain=xe,Ot.chunk=function(t,n,r){if(n=(r?te(t,n,r):n===T)?1:Xu(Xe(n),0),r=t?t.length:0,!r||1>n)return[];for(var e=0,u=0,o=Array(Ku(r/n));r>e;)o[u++]=Tn(t,e,e+=n);return o},Ot.compact=function(t){for(var n=-1,r=t?t.length:0,e=0,u=[];++nr&&(r=-r>u?0:u+r),e=e===T||e>u?u:Xe(e),0>e&&(e+=u),e=r>e?0:tu(e);e>r;)t[r++]=n;return t},Ot.filter=function(t,n){return(yi(t)?f:ln)(t,Fr(n,3))},Ot.flatMap=function(t,n){return sn(Oe(t,n),1)},Ot.flatMapDeep=function(t,n){return sn(Oe(t,n),q)},Ot.flatMapDepth=function(t,n,r){return r=r===T?1:Xe(r),sn(Oe(t,n),r)},Ot.flatten=function(t){return t&&t.length?sn(t,1):[]},Ot.flattenDeep=function(t){return t&&t.length?sn(t,q):[]},Ot.flattenDepth=function(t,n){return t&&t.length?(n=n===T?1:Xe(n),sn(t,n)):[]; +},Ot.flip=function(t){return Cr(t,512)},Ot.flow=Gi,Ot.flowRight=Ji,Ot.fromPairs=function(t){for(var n=-1,r=t?t.length:0,e={};++n>>0,r?(t=eu(t))&&(typeof n=="string"||null!=n&&!Ke(n))&&(n=Yn(n),""==n&&Wt.test(t))?ur(t.match(It),0,r):oo.call(t,n,r):[]},Ot.spread=function(t,n){if(typeof t!="function")throw new Au("Expected a function");return n=n===T?0:Xu(Xe(n),0),Me(function(e){var u=e[n];return e=ur(e,0,n),u&&s(e,u),r(t,this,e)})},Ot.tail=function(t){return le(t,1)},Ot.take=function(t,n,r){return t&&t.length?(n=r||n===T?1:Xe(n), +Tn(t,0,0>n?0:n)):[]},Ot.takeRight=function(t,n,r){var e=t?t.length:0;return e?(n=r||n===T?1:Xe(n),n=e-n,Tn(t,0>n?0:n,e)):[]},Ot.takeRightWhile=function(t,n){return t&&t.length?Qn(t,Fr(n,3),false,true):[]},Ot.takeWhile=function(t,n){return t&&t.length?Qn(t,Fr(n,3)):[]},Ot.tap=function(t,n){return n(t),t},Ot.throttle=function(t,n,r){var e=true,u=true;if(typeof t!="function")throw new Au("Expected a function");return Ze(r)&&(e="leading"in r?!!r.leading:e,u="trailing"in r?!!r.trailing:u),Be(t,n,{leading:e,maxWait:n, +trailing:u})},Ot.thru=je,Ot.toArray=He,Ot.toPairs=zi,Ot.toPairsIn=Ui,Ot.toPath=function(t){return yi(t)?l(t,fe):Je(t)?[t]:lr(Co(t))},Ot.toPlainObject=ru,Ot.transform=function(t,n,r){var e=yi(t)||Ye(t);if(n=Fr(n,4),null==r)if(e||Ze(t)){var o=t.constructor;r=e?yi(t)?new o:[]:Fe(o)?un(Ju(Object(t))):{}}else r={};return(e?u:hn)(t,function(t,e,u){return n(r,t,e,u)}),r},Ot.unary=function(t){return Se(t,1)},Ot.union=To,Ot.unionBy=qo,Ot.unionWith=Vo,Ot.uniq=function(t){return t&&t.length?Hn(t):[]},Ot.uniqBy=function(t,n){ +return t&&t.length?Hn(t,Fr(n)):[]},Ot.uniqWith=function(t,n){return t&&t.length?Hn(t,T,n):[]},Ot.unset=function(t,n){var r;if(null==t)r=true;else{r=t;var e=n,e=ne(e,r)?[e]:er(e);r=ie(r,e),e=fe(ve(e)),r=!(null!=r&&yn(r,e))||delete r[e]}return r},Ot.unzip=ye,Ot.unzipWith=be,Ot.update=function(t,n,r){return null==t?t:Zn(t,n,(typeof r=="function"?r:pu)(vn(t,n)),void 0)},Ot.updateWith=function(t,n,r,e){return e=typeof e=="function"?e:T,null!=t&&(t=Zn(t,n,(typeof r=="function"?r:pu)(vn(t,n)),e)),t},Ot.values=cu, +Ot.valuesIn=function(t){return null==t?[]:k(t,fu(t))},Ot.without=Ko,Ot.words=su,Ot.wrap=function(t,n){return n=null==n?pu:n,pi(n,t)},Ot.xor=Go,Ot.xorBy=Jo,Ot.xorWith=Yo,Ot.zip=Ho,Ot.zipObject=function(t,n){return nr(t||[],n||[],Yt)},Ot.zipObjectDeep=function(t,n){return nr(t||[],n||[],Zn)},Ot.zipWith=Qo,Ot.entries=zi,Ot.entriesIn=Ui,Ot.extend=mi,Ot.extendWith=Ai,vu(Ot,Ot),Ot.add=ef,Ot.attempt=Vi,Ot.camelCase=$i,Ot.capitalize=au,Ot.ceil=uf,Ot.clamp=function(t,n,r){return r===T&&(r=n,n=T),r!==T&&(r=nu(r), +r=r===r?r:0),n!==T&&(n=nu(n),n=n===n?n:0),nn(nu(t),n,r)},Ot.clone=function(t){return rn(t,false,true)},Ot.cloneDeep=function(t){return rn(t,true,true)},Ot.cloneDeepWith=function(t,n){return rn(t,true,true,n)},Ot.cloneWith=function(t,n){return rn(t,false,true,n)},Ot.deburr=lu,Ot.divide=of,Ot.endsWith=function(t,n,r){t=eu(t),n=Yn(n);var e=t.length;return r=r===T?e:nn(Xe(r),0,e),r-=n.length,r>=0&&t.indexOf(n,r)==r},Ot.eq=Ce,Ot.escape=function(t){return(t=eu(t))&&X.test(t)?t.replace(H,B):t},Ot.escapeRegExp=function(t){ +return(t=eu(t))&&ft.test(t)?t.replace(it,"\\$&"):t},Ot.every=function(t,n,r){var e=yi(t)?i:cn;return r&&te(t,n,r)&&(n=T),e(t,Fr(n,3))},Ot.find=ni,Ot.findIndex=he,Ot.findKey=function(t,n){return v(t,Fr(n,3),hn)},Ot.findLast=ri,Ot.findLastIndex=pe,Ot.findLastKey=function(t,n){return v(t,Fr(n,3),pn)},Ot.floor=ff,Ot.forEach=me,Ot.forEachRight=Ae,Ot.forIn=function(t,n){return null==t?t:ko(t,Fr(n,3),fu)},Ot.forInRight=function(t,n){return null==t?t:Eo(t,Fr(n,3),fu)},Ot.forOwn=function(t,n){return t&&hn(t,Fr(n,3)); +},Ot.forOwnRight=function(t,n){return t&&pn(t,Fr(n,3))},Ot.get=uu,Ot.gt=gi,Ot.gte=di,Ot.has=function(t,n){return null!=t&&Vr(t,n,yn)},Ot.hasIn=ou,Ot.head=_e,Ot.identity=pu,Ot.includes=function(t,n,r,e){return t=Ue(t)?t:cu(t),r=r&&!e?Xe(r):0,e=t.length,0>r&&(r=Xu(e+r,0)),Ge(t)?e>=r&&-1r&&(r=Xu(e+r,0)),d(t,n,r)):-1},Ot.inRange=function(t,n,r){return n=nu(n)||0,r===T?(r=n,n=0):r=nu(r)||0,t=nu(t), +t>=to(n,r)&&t=-9007199254740991&&9007199254740991>=t; +},Ot.isSet=function(t){return Te(t)&&"[object Set]"==qr(t)},Ot.isString=Ge,Ot.isSymbol=Je,Ot.isTypedArray=Ye,Ot.isUndefined=function(t){return t===T},Ot.isWeakMap=function(t){return Te(t)&&"[object WeakMap]"==qr(t)},Ot.isWeakSet=function(t){return Te(t)&&"[object WeakSet]"==Mu.call(t)},Ot.join=function(t,n){return t?Hu.call(t,n):""},Ot.kebabCase=Di,Ot.last=ve,Ot.lastIndexOf=function(t,n,r){var e=t?t.length:0;if(!e)return-1;var u=e;if(r!==T&&(u=Xe(r),u=(0>u?Xu(e+u,0):to(u,e-1))+1),n!==n)return M(t,u-1,true); +for(;u--;)if(t[u]===n)return u;return-1},Ot.lowerCase=Fi,Ot.lowerFirst=Ni,Ot.lt=xi,Ot.lte=ji,Ot.max=function(t){return t&&t.length?an(t,pu,dn):T},Ot.maxBy=function(t,n){return t&&t.length?an(t,Fr(n),dn):T},Ot.mean=function(t){return b(t,pu)},Ot.meanBy=function(t,n){return b(t,Fr(n))},Ot.min=function(t){return t&&t.length?an(t,pu,Sn):T},Ot.minBy=function(t,n){return t&&t.length?an(t,Fr(n),Sn):T},Ot.stubArray=yu,Ot.stubFalse=bu,Ot.stubObject=function(){return{}},Ot.stubString=function(){return""},Ot.stubTrue=function(){ +return true},Ot.multiply=cf,Ot.nth=function(t,n){return t&&t.length?Ln(t,Xe(n)):T},Ot.noConflict=function(){return Kt._===this&&(Kt._=Cu),this},Ot.noop=gu,Ot.now=Ee,Ot.pad=function(t,n,r){t=eu(t);var e=(n=Xe(n))?N(t):0;return!n||e>=n?t:(n=(n-e)/2,Sr(Gu(n),r)+t+Sr(Ku(n),r))},Ot.padEnd=function(t,n,r){t=eu(t);var e=(n=Xe(n))?N(t):0;return n&&n>e?t+Sr(n-e,r):t},Ot.padStart=function(t,n,r){t=eu(t);var e=(n=Xe(n))?N(t):0;return n&&n>e?Sr(n-e,r)+t:t},Ot.parseInt=function(t,n,r){return r||null==n?n=0:n&&(n=+n), +t=eu(t).replace(ct,""),no(t,n||(vt.test(t)?16:10))},Ot.random=function(t,n,r){if(r&&typeof r!="boolean"&&te(t,n,r)&&(n=r=T),r===T&&(typeof n=="boolean"?(r=n,n=T):typeof t=="boolean"&&(r=t,t=T)),t===T&&n===T?(t=0,n=1):(t=nu(t)||0,n===T?(n=t,t=0):n=nu(n)||0),t>n){var e=t;t=n,n=e}return r||t%1||n%1?(r=ro(),to(t+r*(n-t+Ft("1e-"+((r+"").length-1))),n)):Nn(t,n)},Ot.reduce=function(t,n,r){var e=yi(t)?h:x,u=3>arguments.length;return e(t,Fr(n,4),r,u,Ao)},Ot.reduceRight=function(t,n,r){var e=yi(t)?p:x,u=3>arguments.length; +return e(t,Fr(n,4),r,u,Oo)},Ot.repeat=function(t,n,r){return n=(r?te(t,n,r):n===T)?1:Xe(n),Pn(eu(t),n)},Ot.replace=function(){var t=arguments,n=eu(t[0]);return 3>t.length?n:eo.call(n,t[1],t[2])},Ot.result=function(t,n,r){n=ne(n,t)?[n]:er(n);var e=-1,u=n.length;for(u||(t=T,u=1);++e0?t[Nn(0,n-1)]:T},Ot.size=function(t){if(null==t)return 0; +if(Ue(t)){var n=t.length;return n&&Ge(t)?N(t):n}return Te(t)&&(n=qr(t),"[object Map]"==n||"[object Set]"==n)?t.size:iu(t).length},Ot.snakeCase=Pi,Ot.some=function(t,n,r){var e=yi(t)?_:qn;return r&&te(t,n,r)&&(n=T),e(t,Fr(n,3))},Ot.sortedIndex=function(t,n){return Vn(t,n)},Ot.sortedIndexBy=function(t,n,r){return Kn(t,n,Fr(r))},Ot.sortedIndexOf=function(t,n){var r=t?t.length:0;if(r){var e=Vn(t,n);if(r>e&&Ce(t[e],n))return e}return-1},Ot.sortedLastIndex=function(t,n){return Vn(t,n,true)},Ot.sortedLastIndexBy=function(t,n,r){ +return Kn(t,n,Fr(r),true)},Ot.sortedLastIndexOf=function(t,n){if(t&&t.length){var r=Vn(t,n,true)-1;if(Ce(t[r],n))return r}return-1},Ot.startCase=Zi,Ot.startsWith=function(t,n,r){return t=eu(t),r=nn(Xe(r),0,t.length),t.lastIndexOf(Yn(n),r)==r},Ot.subtract=lf,Ot.sum=function(t){return t&&t.length?w(t,pu):0},Ot.sumBy=function(t,n){return t&&t.length?w(t,Fr(n)):0},Ot.template=function(t,n,r){var e=Ot.templateSettings;r&&te(t,n,r)&&(n=T),t=eu(t),n=Ai({},n,e,Vt),r=Ai({},n.imports,e.imports,Vt);var u,o,i=iu(r),f=k(r,i),c=0; +r=n.interpolate||wt;var a="__p+='";r=mu((n.escape||wt).source+"|"+r.source+"|"+(r===rt?pt:wt).source+"|"+(n.evaluate||wt).source+"|$","g");var l="sourceURL"in n?"//# sourceURL="+n.sourceURL+"\n":"";if(t.replace(r,function(n,r,e,i,f,l){return e||(e=i),a+=t.slice(c,l).replace(mt,L),r&&(u=true,a+="'+__e("+r+")+'"),f&&(o=true,a+="';"+f+";\n__p+='"),e&&(a+="'+((__t=("+e+"))==null?'':__t)+'"),c=l+n.length,n}),a+="';",(n=n.variable)||(a="with(obj){"+a+"}"),a=(o?a.replace(K,""):a).replace(G,"$1").replace(J,"$1;"), +a="function("+(n||"obj")+"){"+(n?"":"obj||(obj={});")+"var __t,__p=''"+(u?",__e=_.escape":"")+(o?",__j=Array.prototype.join;function print(){__p+=__j.call(arguments,'')}":";")+a+"return __p}",n=Vi(function(){return Function(i,l+"return "+a).apply(T,f)}),n.source=a,De(n))throw n;return n},Ot.times=function(t,n){if(t=Xe(t),1>t||t>9007199254740991)return[];var r=4294967295,e=to(t,4294967295);for(n=Fr(n),t-=4294967295,e=m(e,n);++r=o)return t;if(o=r-N(e),1>o)return e;if(r=i?ur(i,0,o).join(""):t.slice(0,o),u===T)return r+e;if(i&&(o+=r.length-o),Ke(u)){if(t.slice(o).search(u)){var f=r;for(u.global||(u=mu(u.source,eu(_t.exec(u))+"g")), +u.lastIndex=0;i=u.exec(f);)var c=i.index;r=r.slice(0,c===T?o:c)}}else t.indexOf(Yn(u),o)!=o&&(u=r.lastIndexOf(u),u>-1&&(r=r.slice(0,u)));return r+e},Ot.unescape=function(t){return(t=eu(t))&&Q.test(t)?t.replace(Y,P):t},Ot.uniqueId=function(t){var n=++Bu;return eu(t)+n},Ot.upperCase=Ti,Ot.upperFirst=qi,Ot.each=me,Ot.eachRight=Ae,Ot.first=_e,vu(Ot,function(){var t={};return hn(Ot,function(n,r){Wu.call(Ot.prototype,r)||(t[r]=n)}),t}(),{chain:false}),Ot.VERSION="4.13.1",u("bind bindKey curry curryRight partial partialRight".split(" "),function(t){ +Ot[t].placeholder=Ot}),u(["drop","take"],function(t,n){Ut.prototype[t]=function(r){var e=this.__filtered__;if(e&&!n)return new Ut(this);r=r===T?1:Xu(Xe(r),0);var u=this.clone();return e?u.__takeCount__=to(r,u.__takeCount__):u.__views__.push({size:to(r,4294967295),type:t+(0>u.__dir__?"Right":"")}),u},Ut.prototype[t+"Right"]=function(n){return this.reverse()[t](n).reverse()}}),u(["filter","map","takeWhile"],function(t,n){var r=n+1,e=1==r||3==r;Ut.prototype[t]=function(t){var n=this.clone();return n.__iteratees__.push({ +iteratee:Fr(t,3),type:r}),n.__filtered__=n.__filtered__||e,n}}),u(["head","last"],function(t,n){var r="take"+(n?"Right":"");Ut.prototype[t]=function(){return this[r](1).value()[0]}}),u(["initial","tail"],function(t,n){var r="drop"+(n?"":"Right");Ut.prototype[t]=function(){return this.__filtered__?new Ut(this):this[r](1)}}),Ut.prototype.compact=function(){return this.filter(pu)},Ut.prototype.find=function(t){return this.filter(t).head()},Ut.prototype.findLast=function(t){return this.reverse().find(t); +},Ut.prototype.invokeMap=Me(function(t,n){return typeof t=="function"?new Ut(this):this.map(function(r){return wn(r,t,n)})}),Ut.prototype.reject=function(t){return t=Fr(t,3),this.filter(function(n){return!t(n)})},Ut.prototype.slice=function(t,n){t=Xe(t);var r=this;return r.__filtered__&&(t>0||0>n)?new Ut(r):(0>t?r=r.takeRight(-t):t&&(r=r.drop(t)),n!==T&&(n=Xe(n),r=0>n?r.dropRight(-n):r.take(n-t)),r)},Ut.prototype.takeRightWhile=function(t){return this.reverse().takeWhile(t).reverse()},Ut.prototype.toArray=function(){ +return this.take(4294967295)},hn(Ut.prototype,function(t,n){var r=/^(?:filter|find|map|reject)|While$/.test(n),e=/^(?:head|last)$/.test(n),u=Ot[e?"take"+("last"==n?"Right":""):n],o=e||/^find/.test(n);u&&(Ot.prototype[n]=function(){function n(t){return t=u.apply(Ot,s([t],f)),e&&h?t[0]:t}var i=this.__wrapped__,f=e?[1]:arguments,c=i instanceof Ut,a=f[0],l=c||yi(i);l&&r&&typeof a=="function"&&1!=a.length&&(c=l=false);var h=this.__chain__,p=!!this.__actions__.length,a=o&&!h,c=c&&!p;return!o&&l?(i=c?i:new Ut(this), +i=t.apply(i,f),i.__actions__.push({func:je,args:[n],thisArg:T}),new zt(i,h)):a&&c?t.apply(this,f):(i=this.thru(n),a?e?i.value()[0]:i.value():i)})}),u("pop push shift sort splice unshift".split(" "),function(t){var n=Ou[t],r=/^(?:push|sort|unshift)$/.test(t)?"tap":"thru",e=/^(?:pop|shift)$/.test(t);Ot.prototype[t]=function(){var t=arguments;if(e&&!this.__chain__){var u=this.value();return n.apply(yi(u)?u:[],t)}return this[r](function(r){return n.apply(yi(r)?r:[],t)})}}),hn(Ut.prototype,function(t,n){ +var r=Ot[n];if(r){var e=r.name+"";(_o[e]||(_o[e]=[])).push({name:n,func:r})}}),_o[Ar(T,2).name]=[{name:"wrapper",func:T}],Ut.prototype.clone=function(){var t=new Ut(this.__wrapped__);return t.__actions__=lr(this.__actions__),t.__dir__=this.__dir__,t.__filtered__=this.__filtered__,t.__iteratees__=lr(this.__iteratees__),t.__takeCount__=this.__takeCount__,t.__views__=lr(this.__views__),t},Ut.prototype.reverse=function(){if(this.__filtered__){var t=new Ut(this);t.__dir__=-1,t.__filtered__=true}else t=this.clone(), +t.__dir__*=-1;return t},Ut.prototype.value=function(){var t,n=this.__wrapped__.value(),r=this.__dir__,e=yi(n),u=0>r,o=e?n.length:0;t=o;for(var i=this.__views__,f=0,c=-1,a=i.length;++co||o==t&&a==t)return Xn(n,this.__actions__);e=[]; +t:for(;t--&&a>c;){for(u+=r,o=-1,l=n[u];++o=this.__values__.length,n=t?T:this.__values__[this.__index__++];return{done:t,value:n}},Ot.prototype.plant=function(t){ +for(var n,r=this;r instanceof kt;){var e=ae(r);e.__index__=0,e.__values__=T,n?u.__wrapped__=e:n=e;var u=e,r=r.__wrapped__}return u.__wrapped__=t,n},Ot.prototype.reverse=function(){var t=this.__wrapped__;return t instanceof Ut?(this.__actions__.length&&(t=new Ut(this)),t=t.reverse(),t.__actions__.push({func:je,args:[de],thisArg:T}),new zt(t,this.__chain__)):this.thru(de)},Ot.prototype.toJSON=Ot.prototype.valueOf=Ot.prototype.value=function(){return Xn(this.__wrapped__,this.__actions__)},Zu&&(Ot.prototype[Zu]=we), +Ot}var T,q=1/0,V=NaN,K=/\b__p\+='';/g,G=/\b(__p\+=)''\+/g,J=/(__e\(.*?\)|\b__t\))\+'';/g,Y=/&(?:amp|lt|gt|quot|#39|#96);/g,H=/[&<>"'`]/g,Q=RegExp(Y.source),X=RegExp(H.source),tt=/<%-([\s\S]+?)%>/g,nt=/<%([\s\S]+?)%>/g,rt=/<%=([\s\S]+?)%>/g,et=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,ut=/^\w*$/,ot=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(\.|\[\])(?:\4|$))/g,it=/[\\^$.*+?()[\]{}|]/g,ft=RegExp(it.source),ct=/^\s+|\s+$/g,at=/^\s+/,lt=/\s+$/,st=/[a-zA-Z0-9]+/g,ht=/\\(\\)?/g,pt=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,_t=/\w*$/,vt=/^0x/i,gt=/^[-+]0x[0-9a-f]+$/i,dt=/^0b[01]+$/i,yt=/^\[object .+?Constructor\]$/,bt=/^0o[0-7]+$/i,xt=/^(?:0|[1-9]\d*)$/,jt=/[\xc0-\xd6\xd8-\xde\xdf-\xf6\xf8-\xff]/g,wt=/($^)/,mt=/['\n\r\u2028\u2029\\]/g,At="[\\ufe0e\\ufe0f]?(?:[\\u0300-\\u036f\\ufe20-\\ufe23\\u20d0-\\u20f0]|\\ud83c[\\udffb-\\udfff])?(?:\\u200d(?:[^\\ud800-\\udfff]|(?:\\ud83c[\\udde6-\\uddff]){2}|[\\ud800-\\udbff][\\udc00-\\udfff])[\\ufe0e\\ufe0f]?(?:[\\u0300-\\u036f\\ufe20-\\ufe23\\u20d0-\\u20f0]|\\ud83c[\\udffb-\\udfff])?)*",Ot="(?:[\\u2700-\\u27bf]|(?:\\ud83c[\\udde6-\\uddff]){2}|[\\ud800-\\udbff][\\udc00-\\udfff])"+At,kt="(?:[^\\ud800-\\udfff][\\u0300-\\u036f\\ufe20-\\ufe23\\u20d0-\\u20f0]?|[\\u0300-\\u036f\\ufe20-\\ufe23\\u20d0-\\u20f0]|(?:\\ud83c[\\udde6-\\uddff]){2}|[\\ud800-\\udbff][\\udc00-\\udfff]|[\\ud800-\\udfff])",Et=RegExp("['\u2019]","g"),St=RegExp("[\\u0300-\\u036f\\ufe20-\\ufe23\\u20d0-\\u20f0]","g"),It=RegExp("\\ud83c[\\udffb-\\udfff](?=\\ud83c[\\udffb-\\udfff])|"+kt+At,"g"),Rt=RegExp(["[A-Z\\xc0-\\xd6\\xd8-\\xde]?[a-z\\xdf-\\xf6\\xf8-\\xff]+(?:['\u2019](?:d|ll|m|re|s|t|ve))?(?=[\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000]|[A-Z\\xc0-\\xd6\\xd8-\\xde]|$)|(?:[A-Z\\xc0-\\xd6\\xd8-\\xde]|[^\\ud800-\\udfff\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000\\d+\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde])+(?:['\u2019](?:D|LL|M|RE|S|T|VE))?(?=[\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000]|[A-Z\\xc0-\\xd6\\xd8-\\xde](?:[a-z\\xdf-\\xf6\\xf8-\\xff]|[^\\ud800-\\udfff\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000\\d+\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde])|$)|[A-Z\\xc0-\\xd6\\xd8-\\xde]?(?:[a-z\\xdf-\\xf6\\xf8-\\xff]|[^\\ud800-\\udfff\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000\\d+\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde])+(?:['\u2019](?:d|ll|m|re|s|t|ve))?|[A-Z\\xc0-\\xd6\\xd8-\\xde]+(?:['\u2019](?:D|LL|M|RE|S|T|VE))?|\\d+",Ot].join("|"),"g"),Wt=RegExp("[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe23\\u20d0-\\u20f0\\ufe0e\\ufe0f]"),Bt=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Lt="Array Buffer DataView Date Error Float32Array Float64Array Function Int8Array Int16Array Int32Array Map Math Object Promise Reflect RegExp Set String Symbol TypeError Uint8Array Uint8ClampedArray Uint16Array Uint32Array WeakMap _ isFinite parseInt setTimeout".split(" "),Mt={}; +Mt["[object Float32Array]"]=Mt["[object Float64Array]"]=Mt["[object Int8Array]"]=Mt["[object Int16Array]"]=Mt["[object Int32Array]"]=Mt["[object Uint8Array]"]=Mt["[object Uint8ClampedArray]"]=Mt["[object Uint16Array]"]=Mt["[object Uint32Array]"]=true,Mt["[object Arguments]"]=Mt["[object Array]"]=Mt["[object ArrayBuffer]"]=Mt["[object Boolean]"]=Mt["[object DataView]"]=Mt["[object Date]"]=Mt["[object Error]"]=Mt["[object Function]"]=Mt["[object Map]"]=Mt["[object Number]"]=Mt["[object Object]"]=Mt["[object RegExp]"]=Mt["[object Set]"]=Mt["[object String]"]=Mt["[object WeakMap]"]=false; +var Ct={};Ct["[object Arguments]"]=Ct["[object Array]"]=Ct["[object ArrayBuffer]"]=Ct["[object DataView]"]=Ct["[object Boolean]"]=Ct["[object Date]"]=Ct["[object Float32Array]"]=Ct["[object Float64Array]"]=Ct["[object Int8Array]"]=Ct["[object Int16Array]"]=Ct["[object Int32Array]"]=Ct["[object Map]"]=Ct["[object Number]"]=Ct["[object Object]"]=Ct["[object RegExp]"]=Ct["[object Set]"]=Ct["[object String]"]=Ct["[object Symbol]"]=Ct["[object Uint8Array]"]=Ct["[object Uint8ClampedArray]"]=Ct["[object Uint16Array]"]=Ct["[object Uint32Array]"]=true, +Ct["[object Error]"]=Ct["[object Function]"]=Ct["[object WeakMap]"]=false;var zt={"\xc0":"A","\xc1":"A","\xc2":"A","\xc3":"A","\xc4":"A","\xc5":"A","\xe0":"a","\xe1":"a","\xe2":"a","\xe3":"a","\xe4":"a","\xe5":"a","\xc7":"C","\xe7":"c","\xd0":"D","\xf0":"d","\xc8":"E","\xc9":"E","\xca":"E","\xcb":"E","\xe8":"e","\xe9":"e","\xea":"e","\xeb":"e","\xcc":"I","\xcd":"I","\xce":"I","\xcf":"I","\xec":"i","\xed":"i","\xee":"i","\xef":"i","\xd1":"N","\xf1":"n","\xd2":"O","\xd3":"O","\xd4":"O","\xd5":"O","\xd6":"O", +"\xd8":"O","\xf2":"o","\xf3":"o","\xf4":"o","\xf5":"o","\xf6":"o","\xf8":"o","\xd9":"U","\xda":"U","\xdb":"U","\xdc":"U","\xf9":"u","\xfa":"u","\xfb":"u","\xfc":"u","\xdd":"Y","\xfd":"y","\xff":"y","\xc6":"Ae","\xe6":"ae","\xde":"Th","\xfe":"th","\xdf":"ss"},Ut={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},$t={"&":"&","<":"<",">":">",""":'"',"'":"'","`":"`"},Dt={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Ft=parseFloat,Nt=parseInt,Pt=typeof exports=="object"&&exports,Zt=Pt&&typeof module=="object"&&module,Tt=Zt&&Zt.exports===Pt,qt=R(typeof self=="object"&&self),Vt=R(typeof this=="object"&&this),Kt=R(typeof global=="object"&&global)||qt||Vt||Function("return this")(),Gt=Z(); +(qt||{})._=Gt,typeof define=="function"&&typeof define.amd=="object"&&define.amd? define(function(){return Gt}):Zt?((Zt.exports=Gt)._=Gt,Pt._=Gt):Kt._=Gt}).call(this); diff --git a/static/js/lib/vue.js b/static/js/lib/vue.js new file mode 100644 index 0000000000..4f4056faf1 --- /dev/null +++ b/static/js/lib/vue.js @@ -0,0 +1,7402 @@ +/*! + * Vue.js v2.0.1 + * (c) 2014-2016 Evan You + * Released under the MIT License. + */ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global.Vue = factory()); +}(this, (function () { 'use strict'; + +/* */ + +/** + * Convert a value to a string that is actually rendered. + */ +function _toString (val) { + return val == null + ? '' + : typeof val === 'object' + ? JSON.stringify(val, null, 2) + : String(val) +} + +/** + * Convert a input value to a number for persistence. + * If the conversion fails, return original string. + */ +function toNumber (val) { + var n = parseFloat(val, 10) + return (n || n === 0) ? n : val +} + +/** + * Make a map and return a function for checking if a key + * is in that map. + */ +function makeMap ( + str, + expectsLowerCase +) { + var map = Object.create(null) + var list = str.split(',') + for (var i = 0; i < list.length; i++) { + map[list[i]] = true + } + return expectsLowerCase + ? function (val) { return map[val.toLowerCase()]; } + : function (val) { return map[val]; } +} + +/** + * Check if a tag is a built-in tag. + */ +var isBuiltInTag = makeMap('slot,component', true) + +/** + * Remove an item from an array + */ +function remove$1 (arr, item) { + if (arr.length) { + var index = arr.indexOf(item) + if (index > -1) { + return arr.splice(index, 1) + } + } +} + +/** + * Check whether the object has the property. + */ +var hasOwnProperty = Object.prototype.hasOwnProperty +function hasOwn (obj, key) { + return hasOwnProperty.call(obj, key) +} + +/** + * Check if value is primitive + */ +function isPrimitive (value) { + return typeof value === 'string' || typeof value === 'number' +} + +/** + * Create a cached version of a pure function. + */ +function cached (fn) { + var cache = Object.create(null) + return function cachedFn (str) { + var hit = cache[str] + return hit || (cache[str] = fn(str)) + } +} + +/** + * Camelize a hyphen-delmited string. + */ +var camelizeRE = /-(\w)/g +var camelize = cached(function (str) { + return str.replace(camelizeRE, function (_, c) { return c ? c.toUpperCase() : ''; }) +}) + +/** + * Capitalize a string. + */ +var capitalize = cached(function (str) { + return str.charAt(0).toUpperCase() + str.slice(1) +}) + +/** + * Hyphenate a camelCase string. + */ +var hyphenateRE = /([^-])([A-Z])/g +var hyphenate = cached(function (str) { + return str + .replace(hyphenateRE, '$1-$2') + .replace(hyphenateRE, '$1-$2') + .toLowerCase() +}) + +/** + * Simple bind, faster than native + */ +function bind$1 (fn, ctx) { + function boundFn (a) { + var l = arguments.length + return l + ? l > 1 + ? fn.apply(ctx, arguments) + : fn.call(ctx, a) + : fn.call(ctx) + } + // record original fn length + boundFn._length = fn.length + return boundFn +} + +/** + * Convert an Array-like object to a real Array. + */ +function toArray (list, start) { + start = start || 0 + var i = list.length - start + var ret = new Array(i) + while (i--) { + ret[i] = list[i + start] + } + return ret +} + +/** + * Mix properties into target object. + */ +function extend (to, _from) { + for (var key in _from) { + to[key] = _from[key] + } + return to +} + +/** + * Quick object check - this is primarily used to tell + * Objects from primitive values when we know the value + * is a JSON-compliant type. + */ +function isObject (obj) { + return obj !== null && typeof obj === 'object' +} + +/** + * Strict object type check. Only returns true + * for plain JavaScript objects. + */ +var toString = Object.prototype.toString +var OBJECT_STRING = '[object Object]' +function isPlainObject (obj) { + return toString.call(obj) === OBJECT_STRING +} + +/** + * Merge an Array of Objects into a single Object. + */ +function toObject (arr) { + var res = {} + for (var i = 0; i < arr.length; i++) { + if (arr[i]) { + extend(res, arr[i]) + } + } + return res +} + +/** + * Perform no operation. + */ +function noop () {} + +/** + * Always return false. + */ +var no = function () { return false; } + +/** + * Generate a static keys string from compiler modules. + */ +function genStaticKeys (modules) { + return modules.reduce(function (keys, m) { + return keys.concat(m.staticKeys || []) + }, []).join(',') +} + +/** + * Check if two values are loosely equal - that is, + * if they are plain objects, do they have the same shape? + */ +function looseEqual (a, b) { + /* eslint-disable eqeqeq */ + return a == b || ( + isObject(a) && isObject(b) + ? JSON.stringify(a) === JSON.stringify(b) + : false + ) + /* eslint-enable eqeqeq */ +} + +function looseIndexOf (arr, val) { + for (var i = 0; i < arr.length; i++) { + if (looseEqual(arr[i], val)) { return i } + } + return -1 +} + +/* */ + +var config = { + /** + * Option merge strategies (used in core/util/options) + */ + optionMergeStrategies: Object.create(null), + + /** + * Whether to suppress warnings. + */ + silent: false, + + /** + * Whether to enable devtools + */ + devtools: "development" !== 'production', + + /** + * Error handler for watcher errors + */ + errorHandler: null, + + /** + * Ignore certain custom elements + */ + ignoredElements: null, + + /** + * Custom user key aliases for v-on + */ + keyCodes: Object.create(null), + + /** + * Check if a tag is reserved so that it cannot be registered as a + * component. This is platform-dependent and may be overwritten. + */ + isReservedTag: no, + + /** + * Check if a tag is an unknown element. + * Platform-dependent. + */ + isUnknownElement: no, + + /** + * Get the namespace of an element + */ + getTagNamespace: noop, + + /** + * Check if an attribute must be bound using property, e.g. value + * Platform-dependent. + */ + mustUseProp: no, + + /** + * List of asset types that a component can own. + */ + _assetTypes: [ + 'component', + 'directive', + 'filter' + ], + + /** + * List of lifecycle hooks. + */ + _lifecycleHooks: [ + 'beforeCreate', + 'created', + 'beforeMount', + 'mounted', + 'beforeUpdate', + 'updated', + 'beforeDestroy', + 'destroyed', + 'activated', + 'deactivated' + ], + + /** + * Max circular updates allowed in a scheduler flush cycle. + */ + _maxUpdateCount: 100, + + /** + * Server rendering? + */ + _isServer: "client" === 'server' +} + +/* */ + +/** + * Check if a string starts with $ or _ + */ +function isReserved (str) { + var c = (str + '').charCodeAt(0) + return c === 0x24 || c === 0x5F +} + +/** + * Define a property. + */ +function def (obj, key, val, enumerable) { + Object.defineProperty(obj, key, { + value: val, + enumerable: !!enumerable, + writable: true, + configurable: true + }) +} + +/** + * Parse simple path. + */ +var bailRE = /[^\w\.\$]/ +function parsePath (path) { + if (bailRE.test(path)) { + return + } else { + var segments = path.split('.') + return function (obj) { + for (var i = 0; i < segments.length; i++) { + if (!obj) { return } + obj = obj[segments[i]] + } + return obj + } + } +} + +/* */ +/* globals MutationObserver */ + +// can we use __proto__? +var hasProto = '__proto__' in {} + +// Browser environment sniffing +var inBrowser = + typeof window !== 'undefined' && + Object.prototype.toString.call(window) !== '[object Object]' + +var UA = inBrowser && window.navigator.userAgent.toLowerCase() +var isIE = UA && /msie|trident/.test(UA) +var isIE9 = UA && UA.indexOf('msie 9.0') > 0 +var isEdge = UA && UA.indexOf('edge/') > 0 +var isAndroid = UA && UA.indexOf('android') > 0 +var isIOS = UA && /iphone|ipad|ipod|ios/.test(UA) + +// detect devtools +var devtools = inBrowser && window.__VUE_DEVTOOLS_GLOBAL_HOOK__ + +/* istanbul ignore next */ +function isNative (Ctor) { + return /native code/.test(Ctor.toString()) +} + +/** + * Defer a task to execute it asynchronously. + */ +var nextTick = (function () { + var callbacks = [] + var pending = false + var timerFunc + + function nextTickHandler () { + pending = false + var copies = callbacks.slice(0) + callbacks.length = 0 + for (var i = 0; i < copies.length; i++) { + copies[i]() + } + } + + // the nextTick behavior leverages the microtask queue, which can be accessed + // via either native Promise.then or MutationObserver. + // MutationObserver has wider support, however it is seriously bugged in + // UIWebView in iOS >= 9.3.3 when triggered in touch event handlers. It + // completely stops working after triggering a few times... so, if native + // Promise is available, we will use it: + /* istanbul ignore if */ + if (typeof Promise !== 'undefined' && isNative(Promise)) { + var p = Promise.resolve() + timerFunc = function () { + p.then(nextTickHandler) + // in problematic UIWebViews, Promise.then doesn't completely break, but + // it can get stuck in a weird state where callbacks are pushed into the + // microtask queue but the queue isn't being flushed, until the browser + // needs to do some other work, e.g. handle a timer. Therefore we can + // "force" the microtask queue to be flushed by adding an empty timer. + if (isIOS) { setTimeout(noop) } + } + } else if (typeof MutationObserver !== 'undefined' && ( + isNative(MutationObserver) || + // PhantomJS and iOS 7.x + MutationObserver.toString() === '[object MutationObserverConstructor]' + )) { + // use MutationObserver where native Promise is not available, + // e.g. PhantomJS IE11, iOS7, Android 4.4 + var counter = 1 + var observer = new MutationObserver(nextTickHandler) + var textNode = document.createTextNode(String(counter)) + observer.observe(textNode, { + characterData: true + }) + timerFunc = function () { + counter = (counter + 1) % 2 + textNode.data = String(counter) + } + } else { + // fallback to setTimeout + /* istanbul ignore next */ + timerFunc = setTimeout + } + + return function queueNextTick (cb, ctx) { + var func = ctx + ? function () { cb.call(ctx) } + : cb + callbacks.push(func) + if (!pending) { + pending = true + timerFunc(nextTickHandler, 0) + } + } +})() + +var _Set +/* istanbul ignore if */ +if (typeof Set !== 'undefined' && isNative(Set)) { + // use native Set when available. + _Set = Set +} else { + // a non-standard Set polyfill that only works with primitive keys. + _Set = (function () { + function Set () { + this.set = Object.create(null) + } + Set.prototype.has = function has (key) { + return this.set[key] !== undefined + }; + Set.prototype.add = function add (key) { + this.set[key] = 1 + }; + Set.prototype.clear = function clear () { + this.set = Object.create(null) + }; + + return Set; + }()) +} + +/* not type checking this file because flow doesn't play well with Proxy */ + +var hasProxy; +var proxyHandlers; +var initProxy + +{ + var allowedGlobals = makeMap( + 'Infinity,undefined,NaN,isFinite,isNaN,' + + 'parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,' + + 'Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,' + + 'require' // for Webpack/Browserify + ) + + hasProxy = + typeof Proxy !== 'undefined' && + Proxy.toString().match(/native code/) + + proxyHandlers = { + has: function has (target, key) { + var has = key in target + var isAllowed = allowedGlobals(key) || key.charAt(0) === '_' + if (!has && !isAllowed) { + warn( + "Property or method \"" + key + "\" is not defined on the instance but " + + "referenced during render. Make sure to declare reactive data " + + "properties in the data option.", + target + ) + } + return has || !isAllowed + } + } + + initProxy = function initProxy (vm) { + if (hasProxy) { + vm._renderProxy = new Proxy(vm, proxyHandlers) + } else { + vm._renderProxy = vm + } + } +} + +/* */ + + +var uid$2 = 0 + +/** + * A dep is an observable that can have multiple + * directives subscribing to it. + */ +var Dep = function Dep () { + this.id = uid$2++ + this.subs = [] +}; + +Dep.prototype.addSub = function addSub (sub) { + this.subs.push(sub) +}; + +Dep.prototype.removeSub = function removeSub (sub) { + remove$1(this.subs, sub) +}; + +Dep.prototype.depend = function depend () { + if (Dep.target) { + Dep.target.addDep(this) + } +}; + +Dep.prototype.notify = function notify () { + // stablize the subscriber list first + var subs = this.subs.slice() + for (var i = 0, l = subs.length; i < l; i++) { + subs[i].update() + } +}; + +// the current target watcher being evaluated. +// this is globally unique because there could be only one +// watcher being evaluated at any time. +Dep.target = null +var targetStack = [] + +function pushTarget (_target) { + if (Dep.target) { targetStack.push(Dep.target) } + Dep.target = _target +} + +function popTarget () { + Dep.target = targetStack.pop() +} + +/* */ + + +var queue = [] +var has$1 = {} +var circular = {} +var waiting = false +var flushing = false +var index = 0 + +/** + * Reset the scheduler's state. + */ +function resetSchedulerState () { + queue.length = 0 + has$1 = {} + { + circular = {} + } + waiting = flushing = false +} + +/** + * Flush both queues and run the watchers. + */ +function flushSchedulerQueue () { + flushing = true + + // Sort queue before flush. + // This ensures that: + // 1. Components are updated from parent to child. (because parent is always + // created before the child) + // 2. A component's user watchers are run before its render watcher (because + // user watchers are created before the render watcher) + // 3. If a component is destroyed during a parent component's watcher run, + // its watchers can be skipped. + queue.sort(function (a, b) { return a.id - b.id; }) + + // do not cache length because more watchers might be pushed + // as we run existing watchers + for (index = 0; index < queue.length; index++) { + var watcher = queue[index] + var id = watcher.id + has$1[id] = null + watcher.run() + // in dev build, check and stop circular updates. + if ("development" !== 'production' && has$1[id] != null) { + circular[id] = (circular[id] || 0) + 1 + if (circular[id] > config._maxUpdateCount) { + warn( + 'You may have an infinite update loop ' + ( + watcher.user + ? ("in watcher with expression \"" + (watcher.expression) + "\"") + : "in a component render function." + ), + watcher.vm + ) + break + } + } + } + + // devtool hook + /* istanbul ignore if */ + if (devtools && config.devtools) { + devtools.emit('flush') + } + + resetSchedulerState() +} + +/** + * Push a watcher into the watcher queue. + * Jobs with duplicate IDs will be skipped unless it's + * pushed when the queue is being flushed. + */ +function queueWatcher (watcher) { + var id = watcher.id + if (has$1[id] == null) { + has$1[id] = true + if (!flushing) { + queue.push(watcher) + } else { + // if already flushing, splice the watcher based on its id + // if already past its id, it will be run next immediately. + var i = queue.length - 1 + while (i >= 0 && queue[i].id > watcher.id) { + i-- + } + queue.splice(Math.max(i, index) + 1, 0, watcher) + } + // queue the flush + if (!waiting) { + waiting = true + nextTick(flushSchedulerQueue) + } + } +} + +/* */ + +var uid$1 = 0 + +/** + * A watcher parses an expression, collects dependencies, + * and fires callback when the expression value changes. + * This is used for both the $watch() api and directives. + */ +var Watcher = function Watcher ( + vm, + expOrFn, + cb, + options +) { + if ( options === void 0 ) options = {}; + + this.vm = vm + vm._watchers.push(this) + // options + this.deep = !!options.deep + this.user = !!options.user + this.lazy = !!options.lazy + this.sync = !!options.sync + this.expression = expOrFn.toString() + this.cb = cb + this.id = ++uid$1 // uid for batching + this.active = true + this.dirty = this.lazy // for lazy watchers + this.deps = [] + this.newDeps = [] + this.depIds = new _Set() + this.newDepIds = new _Set() + // parse expression for getter + if (typeof expOrFn === 'function') { + this.getter = expOrFn + } else { + this.getter = parsePath(expOrFn) + if (!this.getter) { + this.getter = function () {} + "development" !== 'production' && warn( + "Failed watching path: \"" + expOrFn + "\" " + + 'Watcher only accepts simple dot-delimited paths. ' + + 'For full control, use a function instead.', + vm + ) + } + } + this.value = this.lazy + ? undefined + : this.get() +}; + +/** + * Evaluate the getter, and re-collect dependencies. + */ +Watcher.prototype.get = function get () { + pushTarget(this) + var value = this.getter.call(this.vm, this.vm) + // "touch" every property so they are all tracked as + // dependencies for deep watching + if (this.deep) { + traverse(value) + } + popTarget() + this.cleanupDeps() + return value +}; + +/** + * Add a dependency to this directive. + */ +Watcher.prototype.addDep = function addDep (dep) { + var id = dep.id + if (!this.newDepIds.has(id)) { + this.newDepIds.add(id) + this.newDeps.push(dep) + if (!this.depIds.has(id)) { + dep.addSub(this) + } + } +}; + +/** + * Clean up for dependency collection. + */ +Watcher.prototype.cleanupDeps = function cleanupDeps () { + var this$1 = this; + + var i = this.deps.length + while (i--) { + var dep = this$1.deps[i] + if (!this$1.newDepIds.has(dep.id)) { + dep.removeSub(this$1) + } + } + var tmp = this.depIds + this.depIds = this.newDepIds + this.newDepIds = tmp + this.newDepIds.clear() + tmp = this.deps + this.deps = this.newDeps + this.newDeps = tmp + this.newDeps.length = 0 +}; + +/** + * Subscriber interface. + * Will be called when a dependency changes. + */ +Watcher.prototype.update = function update () { + /* istanbul ignore else */ + if (this.lazy) { + this.dirty = true + } else if (this.sync) { + this.run() + } else { + queueWatcher(this) + } +}; + +/** + * Scheduler job interface. + * Will be called by the scheduler. + */ +Watcher.prototype.run = function run () { + if (this.active) { + var value = this.get() + if ( + value !== this.value || + // Deep watchers and watchers on Object/Arrays should fire even + // when the value is the same, because the value may + // have mutated. + isObject(value) || + this.deep + ) { + // set new value + var oldValue = this.value + this.value = value + if (this.user) { + try { + this.cb.call(this.vm, value, oldValue) + } catch (e) { + "development" !== 'production' && warn( + ("Error in watcher \"" + (this.expression) + "\""), + this.vm + ) + /* istanbul ignore else */ + if (config.errorHandler) { + config.errorHandler.call(null, e, this.vm) + } else { + throw e + } + } + } else { + this.cb.call(this.vm, value, oldValue) + } + } + } +}; + +/** + * Evaluate the value of the watcher. + * This only gets called for lazy watchers. + */ +Watcher.prototype.evaluate = function evaluate () { + this.value = this.get() + this.dirty = false +}; + +/** + * Depend on all deps collected by this watcher. + */ +Watcher.prototype.depend = function depend () { + var this$1 = this; + + var i = this.deps.length + while (i--) { + this$1.deps[i].depend() + } +}; + +/** + * Remove self from all dependencies' subcriber list. + */ +Watcher.prototype.teardown = function teardown () { + var this$1 = this; + + if (this.active) { + // remove self from vm's watcher list + // this is a somewhat expensive operation so we skip it + // if the vm is being destroyed or is performing a v-for + // re-render (the watcher list is then filtered by v-for). + if (!this.vm._isBeingDestroyed && !this.vm._vForRemoving) { + remove$1(this.vm._watchers, this) + } + var i = this.deps.length + while (i--) { + this$1.deps[i].removeSub(this$1) + } + this.active = false + } +}; + +/** + * Recursively traverse an object to evoke all converted + * getters, so that every nested property inside the object + * is collected as a "deep" dependency. + */ +var seenObjects = new _Set() +function traverse (val, seen) { + var i, keys + if (!seen) { + seen = seenObjects + seen.clear() + } + var isA = Array.isArray(val) + var isO = isObject(val) + if ((isA || isO) && Object.isExtensible(val)) { + if (val.__ob__) { + var depId = val.__ob__.dep.id + if (seen.has(depId)) { + return + } else { + seen.add(depId) + } + } + if (isA) { + i = val.length + while (i--) { traverse(val[i], seen) } + } else if (isO) { + keys = Object.keys(val) + i = keys.length + while (i--) { traverse(val[keys[i]], seen) } + } + } +} + +/* + * not type checking this file because flow doesn't play well with + * dynamically accessing methods on Array prototype + */ + +var arrayProto = Array.prototype +var arrayMethods = Object.create(arrayProto);[ + 'push', + 'pop', + 'shift', + 'unshift', + 'splice', + 'sort', + 'reverse' +] +.forEach(function (method) { + // cache original method + var original = arrayProto[method] + def(arrayMethods, method, function mutator () { + var arguments$1 = arguments; + + // avoid leaking arguments: + // http://jsperf.com/closure-with-arguments + var i = arguments.length + var args = new Array(i) + while (i--) { + args[i] = arguments$1[i] + } + var result = original.apply(this, args) + var ob = this.__ob__ + var inserted + switch (method) { + case 'push': + inserted = args + break + case 'unshift': + inserted = args + break + case 'splice': + inserted = args.slice(2) + break + } + if (inserted) { ob.observeArray(inserted) } + // notify change + ob.dep.notify() + return result + }) +}) + +/* */ + +var arrayKeys = Object.getOwnPropertyNames(arrayMethods) + +/** + * By default, when a reactive property is set, the new value is + * also converted to become reactive. However when passing down props, + * we don't want to force conversion because the value may be a nested value + * under a frozen data structure. Converting it would defeat the optimization. + */ +var observerState = { + shouldConvert: true, + isSettingProps: false +} + +/** + * Observer class that are attached to each observed + * object. Once attached, the observer converts target + * object's property keys into getter/setters that + * collect dependencies and dispatches updates. + */ +var Observer = function Observer (value) { + this.value = value + this.dep = new Dep() + this.vmCount = 0 + def(value, '__ob__', this) + if (Array.isArray(value)) { + var augment = hasProto + ? protoAugment + : copyAugment + augment(value, arrayMethods, arrayKeys) + this.observeArray(value) + } else { + this.walk(value) + } +}; + +/** + * Walk through each property and convert them into + * getter/setters. This method should only be called when + * value type is Object. + */ +Observer.prototype.walk = function walk (obj) { + var keys = Object.keys(obj) + for (var i = 0; i < keys.length; i++) { + defineReactive$$1(obj, keys[i], obj[keys[i]]) + } +}; + +/** + * Observe a list of Array items. + */ +Observer.prototype.observeArray = function observeArray (items) { + for (var i = 0, l = items.length; i < l; i++) { + observe(items[i]) + } +}; + +// helpers + +/** + * Augment an target Object or Array by intercepting + * the prototype chain using __proto__ + */ +function protoAugment (target, src) { + /* eslint-disable no-proto */ + target.__proto__ = src + /* eslint-enable no-proto */ +} + +/** + * Augment an target Object or Array by defining + * hidden properties. + * + * istanbul ignore next + */ +function copyAugment (target, src, keys) { + for (var i = 0, l = keys.length; i < l; i++) { + var key = keys[i] + def(target, key, src[key]) + } +} + +/** + * Attempt to create an observer instance for a value, + * returns the new observer if successfully observed, + * or the existing observer if the value already has one. + */ +function observe (value) { + if (!isObject(value)) { + return + } + var ob + if (hasOwn(value, '__ob__') && value.__ob__ instanceof Observer) { + ob = value.__ob__ + } else if ( + observerState.shouldConvert && + !config._isServer && + (Array.isArray(value) || isPlainObject(value)) && + Object.isExtensible(value) && + !value._isVue + ) { + ob = new Observer(value) + } + return ob +} + +/** + * Define a reactive property on an Object. + */ +function defineReactive$$1 ( + obj, + key, + val, + customSetter +) { + var dep = new Dep() + + var property = Object.getOwnPropertyDescriptor(obj, key) + if (property && property.configurable === false) { + return + } + + // cater for pre-defined getter/setters + var getter = property && property.get + var setter = property && property.set + + var childOb = observe(val) + Object.defineProperty(obj, key, { + enumerable: true, + configurable: true, + get: function reactiveGetter () { + var value = getter ? getter.call(obj) : val + if (Dep.target) { + dep.depend() + if (childOb) { + childOb.dep.depend() + } + if (Array.isArray(value)) { + for (var e = void 0, i = 0, l = value.length; i < l; i++) { + e = value[i] + e && e.__ob__ && e.__ob__.dep.depend() + } + } + } + return value + }, + set: function reactiveSetter (newVal) { + var value = getter ? getter.call(obj) : val + if (newVal === value) { + return + } + if ("development" !== 'production' && customSetter) { + customSetter() + } + if (setter) { + setter.call(obj, newVal) + } else { + val = newVal + } + childOb = observe(newVal) + dep.notify() + } + }) +} + +/** + * Set a property on an object. Adds the new property and + * triggers change notification if the property doesn't + * already exist. + */ +function set (obj, key, val) { + if (Array.isArray(obj)) { + obj.splice(key, 1, val) + return val + } + if (hasOwn(obj, key)) { + obj[key] = val + return + } + var ob = obj.__ob__ + if (obj._isVue || (ob && ob.vmCount)) { + "development" !== 'production' && warn( + 'Avoid adding reactive properties to a Vue instance or its root $data ' + + 'at runtime - declare it upfront in the data option.' + ) + return + } + if (!ob) { + obj[key] = val + return + } + defineReactive$$1(ob.value, key, val) + ob.dep.notify() + return val +} + +/** + * Delete a property and trigger change if necessary. + */ +function del (obj, key) { + var ob = obj.__ob__ + if (obj._isVue || (ob && ob.vmCount)) { + "development" !== 'production' && warn( + 'Avoid deleting properties on a Vue instance or its root $data ' + + '- just set it to null.' + ) + return + } + if (!hasOwn(obj, key)) { + return + } + delete obj[key] + if (!ob) { + return + } + ob.dep.notify() +} + +/* */ + +function initState (vm) { + vm._watchers = [] + initProps(vm) + initData(vm) + initComputed(vm) + initMethods(vm) + initWatch(vm) +} + +function initProps (vm) { + var props = vm.$options.props + if (props) { + var propsData = vm.$options.propsData || {} + var keys = vm.$options._propKeys = Object.keys(props) + var isRoot = !vm.$parent + // root instance props should be converted + observerState.shouldConvert = isRoot + var loop = function ( i ) { + var key = keys[i] + /* istanbul ignore else */ + { + defineReactive$$1(vm, key, validateProp(key, props, propsData, vm), function () { + if (vm.$parent && !observerState.isSettingProps) { + warn( + "Avoid mutating a prop directly since the value will be " + + "overwritten whenever the parent component re-renders. " + + "Instead, use a data or computed property based on the prop's " + + "value. Prop being mutated: \"" + key + "\"", + vm + ) + } + }) + } + }; + + for (var i = 0; i < keys.length; i++) loop( i ); + observerState.shouldConvert = true + } +} + +function initData (vm) { + var data = vm.$options.data + data = vm._data = typeof data === 'function' + ? data.call(vm) + : data || {} + if (!isPlainObject(data)) { + data = {} + "development" !== 'production' && warn( + 'data functions should return an object.', + vm + ) + } + // proxy data on instance + var keys = Object.keys(data) + var props = vm.$options.props + var i = keys.length + while (i--) { + if (props && hasOwn(props, keys[i])) { + "development" !== 'production' && warn( + "The data property \"" + (keys[i]) + "\" is already declared as a prop. " + + "Use prop default value instead.", + vm + ) + } else { + proxy(vm, keys[i]) + } + } + // observe data + observe(data) + data.__ob__ && data.__ob__.vmCount++ +} + +var computedSharedDefinition = { + enumerable: true, + configurable: true, + get: noop, + set: noop +} + +function initComputed (vm) { + var computed = vm.$options.computed + if (computed) { + for (var key in computed) { + var userDef = computed[key] + if (typeof userDef === 'function') { + computedSharedDefinition.get = makeComputedGetter(userDef, vm) + computedSharedDefinition.set = noop + } else { + computedSharedDefinition.get = userDef.get + ? userDef.cache !== false + ? makeComputedGetter(userDef.get, vm) + : bind$1(userDef.get, vm) + : noop + computedSharedDefinition.set = userDef.set + ? bind$1(userDef.set, vm) + : noop + } + Object.defineProperty(vm, key, computedSharedDefinition) + } + } +} + +function makeComputedGetter (getter, owner) { + var watcher = new Watcher(owner, getter, noop, { + lazy: true + }) + return function computedGetter () { + if (watcher.dirty) { + watcher.evaluate() + } + if (Dep.target) { + watcher.depend() + } + return watcher.value + } +} + +function initMethods (vm) { + var methods = vm.$options.methods + if (methods) { + for (var key in methods) { + if (methods[key] != null) { + vm[key] = bind$1(methods[key], vm) + } else { + warn(("Method \"" + key + "\" is undefined in options."), vm) + } + } + } +} + +function initWatch (vm) { + var watch = vm.$options.watch + if (watch) { + for (var key in watch) { + var handler = watch[key] + if (Array.isArray(handler)) { + for (var i = 0; i < handler.length; i++) { + createWatcher(vm, key, handler[i]) + } + } else { + createWatcher(vm, key, handler) + } + } + } +} + +function createWatcher (vm, key, handler) { + var options + if (isPlainObject(handler)) { + options = handler + handler = handler.handler + } + if (typeof handler === 'string') { + handler = vm[handler] + } + vm.$watch(key, handler, options) +} + +function stateMixin (Vue) { + // flow somehow has problems with directly declared definition object + // when using Object.defineProperty, so we have to procedurally build up + // the object here. + var dataDef = {} + dataDef.get = function () { + return this._data + } + { + dataDef.set = function (newData) { + warn( + 'Avoid replacing instance root $data. ' + + 'Use nested data properties instead.', + this + ) + } + } + Object.defineProperty(Vue.prototype, '$data', dataDef) + + Vue.prototype.$set = set + Vue.prototype.$delete = del + + Vue.prototype.$watch = function ( + expOrFn, + cb, + options + ) { + var vm = this + options = options || {} + options.user = true + var watcher = new Watcher(vm, expOrFn, cb, options) + if (options.immediate) { + cb.call(vm, watcher.value) + } + return function unwatchFn () { + watcher.teardown() + } + } +} + +function proxy (vm, key) { + if (!isReserved(key)) { + Object.defineProperty(vm, key, { + configurable: true, + enumerable: true, + get: function proxyGetter () { + return vm._data[key] + }, + set: function proxySetter (val) { + vm._data[key] = val + } + }) + } +} + +/* */ + +var VNode = function VNode ( + tag, + data, + children, + text, + elm, + ns, + context, + componentOptions +) { + this.tag = tag + this.data = data + this.children = children + this.text = text + this.elm = elm + this.ns = ns + this.context = context + this.key = data && data.key + this.componentOptions = componentOptions + this.child = undefined + this.parent = undefined + this.raw = false + this.isStatic = false + this.isRootInsert = true + this.isComment = false + this.isCloned = false +}; + +var emptyVNode = function () { + var node = new VNode() + node.text = '' + node.isComment = true + return node +} + +// optimized shallow clone +// used for static nodes and slot nodes because they may be reused across +// multiple renders, cloning them avoids errors when DOM manipulations rely +// on their elm reference. +function cloneVNode (vnode) { + var cloned = new VNode( + vnode.tag, + vnode.data, + vnode.children, + vnode.text, + vnode.elm, + vnode.ns, + vnode.context, + vnode.componentOptions + ) + cloned.isStatic = vnode.isStatic + cloned.key = vnode.key + cloned.isCloned = true + return cloned +} + +function cloneVNodes (vnodes) { + var res = new Array(vnodes.length) + for (var i = 0; i < vnodes.length; i++) { + res[i] = cloneVNode(vnodes[i]) + } + return res +} + +/* */ + +function normalizeChildren ( + children, + ns, + nestedIndex +) { + if (isPrimitive(children)) { + return [createTextVNode(children)] + } + if (Array.isArray(children)) { + var res = [] + for (var i = 0, l = children.length; i < l; i++) { + var c = children[i] + var last = res[res.length - 1] + // nested + if (Array.isArray(c)) { + res.push.apply(res, normalizeChildren(c, ns, i)) + } else if (isPrimitive(c)) { + if (last && last.text) { + last.text += String(c) + } else if (c !== '') { + // convert primitive to vnode + res.push(createTextVNode(c)) + } + } else if (c instanceof VNode) { + if (c.text && last && last.text) { + last.text += c.text + } else { + // inherit parent namespace + if (ns) { + applyNS(c, ns) + } + // default key for nested array children (likely generated by v-for) + if (c.tag && c.key == null && nestedIndex != null) { + c.key = "__vlist_" + nestedIndex + "_" + i + "__" + } + res.push(c) + } + } + } + return res + } +} + +function createTextVNode (val) { + return new VNode(undefined, undefined, undefined, String(val)) +} + +function applyNS (vnode, ns) { + if (vnode.tag && !vnode.ns) { + vnode.ns = ns + if (vnode.children) { + for (var i = 0, l = vnode.children.length; i < l; i++) { + applyNS(vnode.children[i], ns) + } + } + } +} + +function getFirstComponentChild (children) { + return children && children.filter(function (c) { return c && c.componentOptions; })[0] +} + +function mergeVNodeHook (def$$1, key, hook) { + var oldHook = def$$1[key] + if (oldHook) { + var injectedHash = def$$1.__injected || (def$$1.__injected = {}) + if (!injectedHash[key]) { + injectedHash[key] = true + def$$1[key] = function () { + oldHook.apply(this, arguments) + hook.apply(this, arguments) + } + } + } else { + def$$1[key] = hook + } +} + +function updateListeners ( + on, + oldOn, + add, + remove$$1 +) { + var name, cur, old, fn, event, capture + for (name in on) { + cur = on[name] + old = oldOn[name] + if (!cur) { + "development" !== 'production' && warn( + ("Handler for event \"" + name + "\" is undefined.") + ) + } else if (!old) { + capture = name.charAt(0) === '!' + event = capture ? name.slice(1) : name + if (Array.isArray(cur)) { + add(event, (cur.invoker = arrInvoker(cur)), capture) + } else { + if (!cur.invoker) { + fn = cur + cur = on[name] = {} + cur.fn = fn + cur.invoker = fnInvoker(cur) + } + add(event, cur.invoker, capture) + } + } else if (cur !== old) { + if (Array.isArray(old)) { + old.length = cur.length + for (var i = 0; i < old.length; i++) { old[i] = cur[i] } + on[name] = old + } else { + old.fn = cur + on[name] = old + } + } + } + for (name in oldOn) { + if (!on[name]) { + event = name.charAt(0) === '!' ? name.slice(1) : name + remove$$1(event, oldOn[name].invoker) + } + } +} + +function arrInvoker (arr) { + return function (ev) { + var arguments$1 = arguments; + + var single = arguments.length === 1 + for (var i = 0; i < arr.length; i++) { + single ? arr[i](ev) : arr[i].apply(null, arguments$1) + } + } +} + +function fnInvoker (o) { + return function (ev) { + var single = arguments.length === 1 + single ? o.fn(ev) : o.fn.apply(null, arguments) + } +} + +/* */ + +var activeInstance = null + +function initLifecycle (vm) { + var options = vm.$options + + // locate first non-abstract parent + var parent = options.parent + if (parent && !options.abstract) { + while (parent.$options.abstract && parent.$parent) { + parent = parent.$parent + } + parent.$children.push(vm) + } + + vm.$parent = parent + vm.$root = parent ? parent.$root : vm + + vm.$children = [] + vm.$refs = {} + + vm._watcher = null + vm._inactive = false + vm._isMounted = false + vm._isDestroyed = false + vm._isBeingDestroyed = false +} + +function lifecycleMixin (Vue) { + Vue.prototype._mount = function ( + el, + hydrating + ) { + var vm = this + vm.$el = el + if (!vm.$options.render) { + vm.$options.render = emptyVNode + { + /* istanbul ignore if */ + if (vm.$options.template) { + warn( + 'You are using the runtime-only build of Vue where the template ' + + 'option is not available. Either pre-compile the templates into ' + + 'render functions, or use the compiler-included build.', + vm + ) + } else { + warn( + 'Failed to mount component: template or render function not defined.', + vm + ) + } + } + } + callHook(vm, 'beforeMount') + vm._watcher = new Watcher(vm, function () { + vm._update(vm._render(), hydrating) + }, noop) + hydrating = false + // root instance, call mounted on self + // mounted is called for child components in its inserted hook + if (vm.$root === vm) { + vm._isMounted = true + callHook(vm, 'mounted') + } + return vm + } + + Vue.prototype._update = function (vnode, hydrating) { + var vm = this + if (vm._isMounted) { + callHook(vm, 'beforeUpdate') + } + var prevEl = vm.$el + var prevActiveInstance = activeInstance + activeInstance = vm + var prevVnode = vm._vnode + vm._vnode = vnode + if (!prevVnode) { + // Vue.prototype.__patch__ is injected in entry points + // based on the rendering backend used. + vm.$el = vm.__patch__(vm.$el, vnode, hydrating) + } else { + vm.$el = vm.__patch__(prevVnode, vnode) + } + activeInstance = prevActiveInstance + // update __vue__ reference + if (prevEl) { + prevEl.__vue__ = null + } + if (vm.$el) { + vm.$el.__vue__ = vm + } + // if parent is an HOC, update its $el as well + if (vm.$vnode && vm.$parent && vm.$vnode === vm.$parent._vnode) { + vm.$parent.$el = vm.$el + } + if (vm._isMounted) { + callHook(vm, 'updated') + } + } + + Vue.prototype._updateFromParent = function ( + propsData, + listeners, + parentVnode, + renderChildren + ) { + var vm = this + var hasChildren = !!(vm.$options._renderChildren || renderChildren) + vm.$options._parentVnode = parentVnode + vm.$options._renderChildren = renderChildren + // update props + if (propsData && vm.$options.props) { + observerState.shouldConvert = false + { + observerState.isSettingProps = true + } + var propKeys = vm.$options._propKeys || [] + for (var i = 0; i < propKeys.length; i++) { + var key = propKeys[i] + vm[key] = validateProp(key, vm.$options.props, propsData, vm) + } + observerState.shouldConvert = true + { + observerState.isSettingProps = false + } + } + // update listeners + if (listeners) { + var oldListeners = vm.$options._parentListeners + vm.$options._parentListeners = listeners + vm._updateListeners(listeners, oldListeners) + } + // resolve slots + force update if has children + if (hasChildren) { + vm.$slots = resolveSlots(renderChildren, vm._renderContext) + vm.$forceUpdate() + } + } + + Vue.prototype.$forceUpdate = function () { + var vm = this + if (vm._watcher) { + vm._watcher.update() + } + } + + Vue.prototype.$destroy = function () { + var vm = this + if (vm._isBeingDestroyed) { + return + } + callHook(vm, 'beforeDestroy') + vm._isBeingDestroyed = true + // remove self from parent + var parent = vm.$parent + if (parent && !parent._isBeingDestroyed && !vm.$options.abstract) { + remove$1(parent.$children, vm) + } + // teardown watchers + if (vm._watcher) { + vm._watcher.teardown() + } + var i = vm._watchers.length + while (i--) { + vm._watchers[i].teardown() + } + // remove reference from data ob + // frozen object may not have observer. + if (vm._data.__ob__) { + vm._data.__ob__.vmCount-- + } + // call the last hook... + vm._isDestroyed = true + callHook(vm, 'destroyed') + // turn off all instance listeners. + vm.$off() + // remove __vue__ reference + if (vm.$el) { + vm.$el.__vue__ = null + } + } +} + +function callHook (vm, hook) { + var handlers = vm.$options[hook] + if (handlers) { + for (var i = 0, j = handlers.length; i < j; i++) { + handlers[i].call(vm) + } + } + vm.$emit('hook:' + hook) +} + +/* */ + +var hooks = { init: init, prepatch: prepatch, insert: insert, destroy: destroy$1 } +var hooksToMerge = Object.keys(hooks) + +function createComponent ( + Ctor, + data, + context, + children, + tag +) { + if (!Ctor) { + return + } + + if (isObject(Ctor)) { + Ctor = Vue$3.extend(Ctor) + } + + if (typeof Ctor !== 'function') { + { + warn(("Invalid Component definition: " + (String(Ctor))), context) + } + return + } + + // async component + if (!Ctor.cid) { + if (Ctor.resolved) { + Ctor = Ctor.resolved + } else { + Ctor = resolveAsyncComponent(Ctor, function () { + // it's ok to queue this on every render because + // $forceUpdate is buffered by the scheduler. + context.$forceUpdate() + }) + if (!Ctor) { + // return nothing if this is indeed an async component + // wait for the callback to trigger parent update. + return + } + } + } + + data = data || {} + + // extract props + var propsData = extractProps(data, Ctor) + + // functional component + if (Ctor.options.functional) { + return createFunctionalComponent(Ctor, propsData, data, context, children) + } + + // extract listeners, since these needs to be treated as + // child component listeners instead of DOM listeners + var listeners = data.on + // replace with listeners with .native modifier + data.on = data.nativeOn + + if (Ctor.options.abstract) { + // abstract components do not keep anything + // other than props & listeners + data = {} + } + + // merge component management hooks onto the placeholder node + mergeHooks(data) + + // return a placeholder vnode + var name = Ctor.options.name || tag + var vnode = new VNode( + ("vue-component-" + (Ctor.cid) + (name ? ("-" + name) : '')), + data, undefined, undefined, undefined, undefined, context, + { Ctor: Ctor, propsData: propsData, listeners: listeners, tag: tag, children: children } + ) + return vnode +} + +function createFunctionalComponent ( + Ctor, + propsData, + data, + context, + children +) { + var props = {} + var propOptions = Ctor.options.props + if (propOptions) { + for (var key in propOptions) { + props[key] = validateProp(key, propOptions, propsData) + } + } + return Ctor.options.render.call( + null, + // ensure the createElement function in functional components + // gets a unique context - this is necessary for correct named slot check + bind$1(createElement, { _self: Object.create(context) }), + { + props: props, + data: data, + parent: context, + children: normalizeChildren(children), + slots: function () { return resolveSlots(children, context); } + } + ) +} + +function createComponentInstanceForVnode ( + vnode, // we know it's MountedComponentVNode but flow doesn't + parent // activeInstance in lifecycle state +) { + var vnodeComponentOptions = vnode.componentOptions + var options = { + _isComponent: true, + parent: parent, + propsData: vnodeComponentOptions.propsData, + _componentTag: vnodeComponentOptions.tag, + _parentVnode: vnode, + _parentListeners: vnodeComponentOptions.listeners, + _renderChildren: vnodeComponentOptions.children + } + // check inline-template render functions + var inlineTemplate = vnode.data.inlineTemplate + if (inlineTemplate) { + options.render = inlineTemplate.render + options.staticRenderFns = inlineTemplate.staticRenderFns + } + return new vnodeComponentOptions.Ctor(options) +} + +function init (vnode, hydrating) { + if (!vnode.child || vnode.child._isDestroyed) { + var child = vnode.child = createComponentInstanceForVnode(vnode, activeInstance) + child.$mount(hydrating ? vnode.elm : undefined, hydrating) + } +} + +function prepatch ( + oldVnode, + vnode +) { + var options = vnode.componentOptions + var child = vnode.child = oldVnode.child + child._updateFromParent( + options.propsData, // updated props + options.listeners, // updated listeners + vnode, // new parent vnode + options.children // new children + ) +} + +function insert (vnode) { + if (!vnode.child._isMounted) { + vnode.child._isMounted = true + callHook(vnode.child, 'mounted') + } + if (vnode.data.keepAlive) { + vnode.child._inactive = false + callHook(vnode.child, 'activated') + } +} + +function destroy$1 (vnode) { + if (!vnode.child._isDestroyed) { + if (!vnode.data.keepAlive) { + vnode.child.$destroy() + } else { + vnode.child._inactive = true + callHook(vnode.child, 'deactivated') + } + } +} + +function resolveAsyncComponent ( + factory, + cb +) { + if (factory.requested) { + // pool callbacks + factory.pendingCallbacks.push(cb) + } else { + factory.requested = true + var cbs = factory.pendingCallbacks = [cb] + var sync = true + + var resolve = function (res) { + if (isObject(res)) { + res = Vue$3.extend(res) + } + // cache resolved + factory.resolved = res + // invoke callbacks only if this is not a synchronous resolve + // (async resolves are shimmed as synchronous during SSR) + if (!sync) { + for (var i = 0, l = cbs.length; i < l; i++) { + cbs[i](res) + } + } + } + + var reject = function (reason) { + "development" !== 'production' && warn( + "Failed to resolve async component: " + (String(factory)) + + (reason ? ("\nReason: " + reason) : '') + ) + } + + var res = factory(resolve, reject) + + // handle promise + if (res && typeof res.then === 'function' && !factory.resolved) { + res.then(resolve, reject) + } + + sync = false + // return in case resolved synchronously + return factory.resolved + } +} + +function extractProps (data, Ctor) { + // we are only extrating raw values here. + // validation and default values are handled in the child + // component itself. + var propOptions = Ctor.options.props + if (!propOptions) { + return + } + var res = {} + var attrs = data.attrs; + var props = data.props; + var domProps = data.domProps; + if (attrs || props || domProps) { + for (var key in propOptions) { + var altKey = hyphenate(key) + checkProp(res, props, key, altKey, true) || + checkProp(res, attrs, key, altKey) || + checkProp(res, domProps, key, altKey) + } + } + return res +} + +function checkProp ( + res, + hash, + key, + altKey, + preserve +) { + if (hash) { + if (hasOwn(hash, key)) { + res[key] = hash[key] + if (!preserve) { + delete hash[key] + } + return true + } else if (hasOwn(hash, altKey)) { + res[key] = hash[altKey] + if (!preserve) { + delete hash[altKey] + } + return true + } + } + return false +} + +function mergeHooks (data) { + if (!data.hook) { + data.hook = {} + } + for (var i = 0; i < hooksToMerge.length; i++) { + var key = hooksToMerge[i] + var fromParent = data.hook[key] + var ours = hooks[key] + data.hook[key] = fromParent ? mergeHook$1(ours, fromParent) : ours + } +} + +function mergeHook$1 (a, b) { + // since all hooks have at most two args, use fixed args + // to avoid having to use fn.apply(). + return function (_, __) { + a(_, __) + b(_, __) + } +} + +/* */ + +// wrapper function for providing a more flexible interface +// without getting yelled at by flow +function createElement ( + tag, + data, + children +) { + if (data && (Array.isArray(data) || typeof data !== 'object')) { + children = data + data = undefined + } + // make sure to use real instance instead of proxy as context + return _createElement(this._self, tag, data, children) +} + +function _createElement ( + context, + tag, + data, + children +) { + if (data && data.__ob__) { + "development" !== 'production' && warn( + "Avoid using observed data object as vnode data: " + (JSON.stringify(data)) + "\n" + + 'Always create fresh vnode data objects in each render!', + context + ) + return + } + if (!tag) { + // in case of component :is set to falsy value + return emptyVNode() + } + if (typeof tag === 'string') { + var Ctor + var ns = config.getTagNamespace(tag) + if (config.isReservedTag(tag)) { + // platform built-in elements + return new VNode( + tag, data, normalizeChildren(children, ns), + undefined, undefined, ns, context + ) + } else if ((Ctor = resolveAsset(context.$options, 'components', tag))) { + // component + return createComponent(Ctor, data, context, children, tag) + } else { + // unknown or unlisted namespaced elements + // check at runtime because it may get assigned a namespace when its + // parent normalizes children + return new VNode( + tag, data, normalizeChildren(children, ns), + undefined, undefined, ns, context + ) + } + } else { + // direct component options / constructor + return createComponent(tag, data, context, children) + } +} + +/* */ + +function initRender (vm) { + vm.$vnode = null // the placeholder node in parent tree + vm._vnode = null // the root of the child tree + vm._staticTrees = null + vm._renderContext = vm.$options._parentVnode && vm.$options._parentVnode.context + vm.$slots = resolveSlots(vm.$options._renderChildren, vm._renderContext) + // bind the public createElement fn to this instance + // so that we get proper render context inside it. + vm.$createElement = bind$1(createElement, vm) + if (vm.$options.el) { + vm.$mount(vm.$options.el) + } +} + +function renderMixin (Vue) { + Vue.prototype.$nextTick = function (fn) { + nextTick(fn, this) + } + + Vue.prototype._render = function () { + var vm = this + var ref = vm.$options; + var render = ref.render; + var staticRenderFns = ref.staticRenderFns; + var _parentVnode = ref._parentVnode; + + if (vm._isMounted) { + // clone slot nodes on re-renders + for (var key in vm.$slots) { + vm.$slots[key] = cloneVNodes(vm.$slots[key]) + } + } + + if (staticRenderFns && !vm._staticTrees) { + vm._staticTrees = [] + } + // set parent vnode. this allows render functions to have access + // to the data on the placeholder node. + vm.$vnode = _parentVnode + // render self + var vnode + try { + vnode = render.call(vm._renderProxy, vm.$createElement) + } catch (e) { + { + warn(("Error when rendering " + (formatComponentName(vm)) + ":")) + } + /* istanbul ignore else */ + if (config.errorHandler) { + config.errorHandler.call(null, e, vm) + } else { + if (config._isServer) { + throw e + } else { + setTimeout(function () { throw e }, 0) + } + } + // return previous vnode to prevent render error causing blank component + vnode = vm._vnode + } + // return empty vnode in case the render function errored out + if (!(vnode instanceof VNode)) { + if ("development" !== 'production' && Array.isArray(vnode)) { + warn( + 'Multiple root nodes returned from render function. Render function ' + + 'should return a single root node.', + vm + ) + } + vnode = emptyVNode() + } + // set parent + vnode.parent = _parentVnode + return vnode + } + + // shorthands used in render functions + Vue.prototype._h = createElement + // toString for mustaches + Vue.prototype._s = _toString + // number conversion + Vue.prototype._n = toNumber + // empty vnode + Vue.prototype._e = emptyVNode + // loose equal + Vue.prototype._q = looseEqual + // loose indexOf + Vue.prototype._i = looseIndexOf + + // render static tree by index + Vue.prototype._m = function renderStatic ( + index, + isInFor + ) { + var tree = this._staticTrees[index] + // if has already-rendered static tree and not inside v-for, + // we can reuse the same tree by doing a shallow clone. + if (tree && !isInFor) { + return Array.isArray(tree) + ? cloneVNodes(tree) + : cloneVNode(tree) + } + // otherwise, render a fresh tree. + tree = this._staticTrees[index] = this.$options.staticRenderFns[index].call(this._renderProxy) + if (Array.isArray(tree)) { + for (var i = 0; i < tree.length; i++) { + tree[i].isStatic = true + tree[i].key = "__static__" + index + "_" + i + } + } else { + tree.isStatic = true + tree.key = "__static__" + index + } + return tree + } + + // filter resolution helper + var identity = function (_) { return _; } + Vue.prototype._f = function resolveFilter (id) { + return resolveAsset(this.$options, 'filters', id, true) || identity + } + + // render v-for + Vue.prototype._l = function renderList ( + val, + render + ) { + var ret, i, l, keys, key + if (Array.isArray(val)) { + ret = new Array(val.length) + for (i = 0, l = val.length; i < l; i++) { + ret[i] = render(val[i], i) + } + } else if (typeof val === 'number') { + ret = new Array(val) + for (i = 0; i < val; i++) { + ret[i] = render(i + 1, i) + } + } else if (isObject(val)) { + keys = Object.keys(val) + ret = new Array(keys.length) + for (i = 0, l = keys.length; i < l; i++) { + key = keys[i] + ret[i] = render(val[key], key, i) + } + } + return ret + } + + // renderSlot + Vue.prototype._t = function ( + name, + fallback + ) { + var slotNodes = this.$slots[name] + // warn duplicate slot usage + if (slotNodes && "development" !== 'production') { + slotNodes._rendered && warn( + "Duplicate presence of slot \"" + name + "\" found in the same render tree " + + "- this will likely cause render errors.", + this + ) + slotNodes._rendered = true + } + return slotNodes || fallback + } + + // apply v-bind object + Vue.prototype._b = function bindProps ( + data, + value, + asProp + ) { + if (value) { + if (!isObject(value)) { + "development" !== 'production' && warn( + 'v-bind without argument expects an Object or Array value', + this + ) + } else { + if (Array.isArray(value)) { + value = toObject(value) + } + for (var key in value) { + if (key === 'class' || key === 'style') { + data[key] = value[key] + } else { + var hash = asProp || config.mustUseProp(key) + ? data.domProps || (data.domProps = {}) + : data.attrs || (data.attrs = {}) + hash[key] = value[key] + } + } + } + } + return data + } + + // expose v-on keyCodes + Vue.prototype._k = function getKeyCodes (key) { + return config.keyCodes[key] + } +} + +function resolveSlots ( + renderChildren, + context +) { + var slots = {} + if (!renderChildren) { + return slots + } + var children = normalizeChildren(renderChildren) || [] + var defaultSlot = [] + var name, child + for (var i = 0, l = children.length; i < l; i++) { + child = children[i] + // named slots should only be respected if the vnode was rendered in the + // same context. + if (child.context === context && + child.data && (name = child.data.slot)) { + var slot = (slots[name] || (slots[name] = [])) + if (child.tag === 'template') { + slot.push.apply(slot, child.children) + } else { + slot.push(child) + } + } else { + defaultSlot.push(child) + } + } + // ignore single whitespace + if (defaultSlot.length && !( + defaultSlot.length === 1 && + (defaultSlot[0].text === ' ' || defaultSlot[0].isComment) + )) { + slots.default = defaultSlot + } + return slots +} + +/* */ + +function initEvents (vm) { + vm._events = Object.create(null) + // init parent attached events + var listeners = vm.$options._parentListeners + var on = bind$1(vm.$on, vm) + var off = bind$1(vm.$off, vm) + vm._updateListeners = function (listeners, oldListeners) { + updateListeners(listeners, oldListeners || {}, on, off) + } + if (listeners) { + vm._updateListeners(listeners) + } +} + +function eventsMixin (Vue) { + Vue.prototype.$on = function (event, fn) { + var vm = this;(vm._events[event] || (vm._events[event] = [])).push(fn) + return vm + } + + Vue.prototype.$once = function (event, fn) { + var vm = this + function on () { + vm.$off(event, on) + fn.apply(vm, arguments) + } + on.fn = fn + vm.$on(event, on) + return vm + } + + Vue.prototype.$off = function (event, fn) { + var vm = this + // all + if (!arguments.length) { + vm._events = Object.create(null) + return vm + } + // specific event + var cbs = vm._events[event] + if (!cbs) { + return vm + } + if (arguments.length === 1) { + vm._events[event] = null + return vm + } + // specific handler + var cb + var i = cbs.length + while (i--) { + cb = cbs[i] + if (cb === fn || cb.fn === fn) { + cbs.splice(i, 1) + break + } + } + return vm + } + + Vue.prototype.$emit = function (event) { + var vm = this + var cbs = vm._events[event] + if (cbs) { + cbs = cbs.length > 1 ? toArray(cbs) : cbs + var args = toArray(arguments, 1) + for (var i = 0, l = cbs.length; i < l; i++) { + cbs[i].apply(vm, args) + } + } + return vm + } +} + +/* */ + +var uid = 0 + +function initMixin (Vue) { + Vue.prototype._init = function (options) { + var vm = this + // a uid + vm._uid = uid++ + // a flag to avoid this being observed + vm._isVue = true + // merge options + if (options && options._isComponent) { + // optimize internal component instantiation + // since dynamic options merging is pretty slow, and none of the + // internal component options needs special treatment. + initInternalComponent(vm, options) + } else { + vm.$options = mergeOptions( + resolveConstructorOptions(vm), + options || {}, + vm + ) + } + /* istanbul ignore else */ + { + initProxy(vm) + } + // expose real self + vm._self = vm + initLifecycle(vm) + initEvents(vm) + callHook(vm, 'beforeCreate') + initState(vm) + callHook(vm, 'created') + initRender(vm) + } + + function initInternalComponent (vm, options) { + var opts = vm.$options = Object.create(resolveConstructorOptions(vm)) + // doing this because it's faster than dynamic enumeration. + opts.parent = options.parent + opts.propsData = options.propsData + opts._parentVnode = options._parentVnode + opts._parentListeners = options._parentListeners + opts._renderChildren = options._renderChildren + opts._componentTag = options._componentTag + if (options.render) { + opts.render = options.render + opts.staticRenderFns = options.staticRenderFns + } + } + + function resolveConstructorOptions (vm) { + var Ctor = vm.constructor + var options = Ctor.options + if (Ctor.super) { + var superOptions = Ctor.super.options + var cachedSuperOptions = Ctor.superOptions + if (superOptions !== cachedSuperOptions) { + // super option changed + Ctor.superOptions = superOptions + options = Ctor.options = mergeOptions(superOptions, Ctor.extendOptions) + if (options.name) { + options.components[options.name] = Ctor + } + } + } + return options + } +} + +function Vue$3 (options) { + if ("development" !== 'production' && + !(this instanceof Vue$3)) { + warn('Vue is a constructor and should be called with the `new` keyword') + } + this._init(options) +} + +initMixin(Vue$3) +stateMixin(Vue$3) +eventsMixin(Vue$3) +lifecycleMixin(Vue$3) +renderMixin(Vue$3) + +var warn = noop +var formatComponentName + +{ + var hasConsole = typeof console !== 'undefined' + + warn = function (msg, vm) { + if (hasConsole && (!config.silent)) { + console.error("[Vue warn]: " + msg + " " + ( + vm ? formatLocation(formatComponentName(vm)) : '' + )) + } + } + + formatComponentName = function (vm) { + if (vm.$root === vm) { + return 'root instance' + } + var name = vm._isVue + ? vm.$options.name || vm.$options._componentTag + : vm.name + return name ? ("component <" + name + ">") : "anonymous component" + } + + var formatLocation = function (str) { + if (str === 'anonymous component') { + str += " - use the \"name\" option for better debugging messages." + } + return ("(found in " + str + ")") + } +} + +/* */ + +/** + * Option overwriting strategies are functions that handle + * how to merge a parent option value and a child option + * value into the final value. + */ +var strats = config.optionMergeStrategies + +/** + * Options with restrictions + */ +{ + strats.el = strats.propsData = function (parent, child, vm, key) { + if (!vm) { + warn( + "option \"" + key + "\" can only be used during instance " + + 'creation with the `new` keyword.' + ) + } + return defaultStrat(parent, child) + } + + strats.name = function (parent, child, vm) { + if (vm && child) { + warn( + 'options "name" can only be used as a component definition option, ' + + 'not during instance creation.' + ) + } + return defaultStrat(parent, child) + } +} + +/** + * Helper that recursively merges two data objects together. + */ +function mergeData (to, from) { + var key, toVal, fromVal + for (key in from) { + toVal = to[key] + fromVal = from[key] + if (!hasOwn(to, key)) { + set(to, key, fromVal) + } else if (isObject(toVal) && isObject(fromVal)) { + mergeData(toVal, fromVal) + } + } + return to +} + +/** + * Data + */ +strats.data = function ( + parentVal, + childVal, + vm +) { + if (!vm) { + // in a Vue.extend merge, both should be functions + if (!childVal) { + return parentVal + } + if (typeof childVal !== 'function') { + "development" !== 'production' && warn( + 'The "data" option should be a function ' + + 'that returns a per-instance value in component ' + + 'definitions.', + vm + ) + return parentVal + } + if (!parentVal) { + return childVal + } + // when parentVal & childVal are both present, + // we need to return a function that returns the + // merged result of both functions... no need to + // check if parentVal is a function here because + // it has to be a function to pass previous merges. + return function mergedDataFn () { + return mergeData( + childVal.call(this), + parentVal.call(this) + ) + } + } else if (parentVal || childVal) { + return function mergedInstanceDataFn () { + // instance merge + var instanceData = typeof childVal === 'function' + ? childVal.call(vm) + : childVal + var defaultData = typeof parentVal === 'function' + ? parentVal.call(vm) + : undefined + if (instanceData) { + return mergeData(instanceData, defaultData) + } else { + return defaultData + } + } + } +} + +/** + * Hooks and param attributes are merged as arrays. + */ +function mergeHook ( + parentVal, + childVal +) { + return childVal + ? parentVal + ? parentVal.concat(childVal) + : Array.isArray(childVal) + ? childVal + : [childVal] + : parentVal +} + +config._lifecycleHooks.forEach(function (hook) { + strats[hook] = mergeHook +}) + +/** + * Assets + * + * When a vm is present (instance creation), we need to do + * a three-way merge between constructor options, instance + * options and parent options. + */ +function mergeAssets (parentVal, childVal) { + var res = Object.create(parentVal || null) + return childVal + ? extend(res, childVal) + : res +} + +config._assetTypes.forEach(function (type) { + strats[type + 's'] = mergeAssets +}) + +/** + * Watchers. + * + * Watchers hashes should not overwrite one + * another, so we merge them as arrays. + */ +strats.watch = function (parentVal, childVal) { + /* istanbul ignore if */ + if (!childVal) { return parentVal } + if (!parentVal) { return childVal } + var ret = {} + extend(ret, parentVal) + for (var key in childVal) { + var parent = ret[key] + var child = childVal[key] + if (parent && !Array.isArray(parent)) { + parent = [parent] + } + ret[key] = parent + ? parent.concat(child) + : [child] + } + return ret +} + +/** + * Other object hashes. + */ +strats.props = +strats.methods = +strats.computed = function (parentVal, childVal) { + if (!childVal) { return parentVal } + if (!parentVal) { return childVal } + var ret = Object.create(null) + extend(ret, parentVal) + extend(ret, childVal) + return ret +} + +/** + * Default strategy. + */ +var defaultStrat = function (parentVal, childVal) { + return childVal === undefined + ? parentVal + : childVal +} + +/** + * Make sure component options get converted to actual + * constructors. + */ +function normalizeComponents (options) { + if (options.components) { + var components = options.components + var def + for (var key in components) { + var lower = key.toLowerCase() + if (isBuiltInTag(lower) || config.isReservedTag(lower)) { + "development" !== 'production' && warn( + 'Do not use built-in or reserved HTML elements as component ' + + 'id: ' + key + ) + continue + } + def = components[key] + if (isPlainObject(def)) { + components[key] = Vue$3.extend(def) + } + } + } +} + +/** + * Ensure all props option syntax are normalized into the + * Object-based format. + */ +function normalizeProps (options) { + var props = options.props + if (!props) { return } + var res = {} + var i, val, name + if (Array.isArray(props)) { + i = props.length + while (i--) { + val = props[i] + if (typeof val === 'string') { + name = camelize(val) + res[name] = { type: null } + } else { + warn('props must be strings when using array syntax.') + } + } + } else if (isPlainObject(props)) { + for (var key in props) { + val = props[key] + name = camelize(key) + res[name] = isPlainObject(val) + ? val + : { type: val } + } + } + options.props = res +} + +/** + * Normalize raw function directives into object format. + */ +function normalizeDirectives (options) { + var dirs = options.directives + if (dirs) { + for (var key in dirs) { + var def = dirs[key] + if (typeof def === 'function') { + dirs[key] = { bind: def, update: def } + } + } + } +} + +/** + * Merge two option objects into a new one. + * Core utility used in both instantiation and inheritance. + */ +function mergeOptions ( + parent, + child, + vm +) { + normalizeComponents(child) + normalizeProps(child) + normalizeDirectives(child) + var extendsFrom = child.extends + if (extendsFrom) { + parent = typeof extendsFrom === 'function' + ? mergeOptions(parent, extendsFrom.options, vm) + : mergeOptions(parent, extendsFrom, vm) + } + if (child.mixins) { + for (var i = 0, l = child.mixins.length; i < l; i++) { + var mixin = child.mixins[i] + if (mixin.prototype instanceof Vue$3) { + mixin = mixin.options + } + parent = mergeOptions(parent, mixin, vm) + } + } + var options = {} + var key + for (key in parent) { + mergeField(key) + } + for (key in child) { + if (!hasOwn(parent, key)) { + mergeField(key) + } + } + function mergeField (key) { + var strat = strats[key] || defaultStrat + options[key] = strat(parent[key], child[key], vm, key) + } + return options +} + +/** + * Resolve an asset. + * This function is used because child instances need access + * to assets defined in its ancestor chain. + */ +function resolveAsset ( + options, + type, + id, + warnMissing +) { + /* istanbul ignore if */ + if (typeof id !== 'string') { + return + } + var assets = options[type] + var res = assets[id] || + // camelCase ID + assets[camelize(id)] || + // Pascal Case ID + assets[capitalize(camelize(id))] + if ("development" !== 'production' && warnMissing && !res) { + warn( + 'Failed to resolve ' + type.slice(0, -1) + ': ' + id, + options + ) + } + return res +} + +/* */ + +function validateProp ( + key, + propOptions, + propsData, + vm +) { + var prop = propOptions[key] + var absent = !hasOwn(propsData, key) + var value = propsData[key] + // handle boolean props + if (getType(prop.type) === 'Boolean') { + if (absent && !hasOwn(prop, 'default')) { + value = false + } else if (value === '' || value === hyphenate(key)) { + value = true + } + } + // check default value + if (value === undefined) { + value = getPropDefaultValue(vm, prop, key) + // since the default value is a fresh copy, + // make sure to observe it. + var prevShouldConvert = observerState.shouldConvert + observerState.shouldConvert = true + observe(value) + observerState.shouldConvert = prevShouldConvert + } + { + assertProp(prop, key, value, vm, absent) + } + return value +} + +/** + * Get the default value of a prop. + */ +function getPropDefaultValue (vm, prop, name) { + // no default, return undefined + if (!hasOwn(prop, 'default')) { + return undefined + } + var def = prop.default + // warn against non-factory defaults for Object & Array + if (isObject(def)) { + "development" !== 'production' && warn( + 'Invalid default value for prop "' + name + '": ' + + 'Props with type Object/Array must use a factory function ' + + 'to return the default value.', + vm + ) + } + // call factory function for non-Function types + return typeof def === 'function' && prop.type !== Function + ? def.call(vm) + : def +} + +/** + * Assert whether a prop is valid. + */ +function assertProp ( + prop, + name, + value, + vm, + absent +) { + if (prop.required && absent) { + warn( + 'Missing required prop: "' + name + '"', + vm + ) + return + } + if (value == null && !prop.required) { + return + } + var type = prop.type + var valid = !type || type === true + var expectedTypes = [] + if (type) { + if (!Array.isArray(type)) { + type = [type] + } + for (var i = 0; i < type.length && !valid; i++) { + var assertedType = assertType(value, type[i]) + expectedTypes.push(assertedType.expectedType) + valid = assertedType.valid + } + } + if (!valid) { + warn( + 'Invalid prop: type check failed for prop "' + name + '".' + + ' Expected ' + expectedTypes.map(capitalize).join(', ') + + ', got ' + Object.prototype.toString.call(value).slice(8, -1) + '.', + vm + ) + return + } + var validator = prop.validator + if (validator) { + if (!validator(value)) { + warn( + 'Invalid prop: custom validator check failed for prop "' + name + '".', + vm + ) + } + } +} + +/** + * Assert the type of a value + */ +function assertType (value, type) { + var valid + var expectedType = getType(type) + if (expectedType === 'String') { + valid = typeof value === (expectedType = 'string') + } else if (expectedType === 'Number') { + valid = typeof value === (expectedType = 'number') + } else if (expectedType === 'Boolean') { + valid = typeof value === (expectedType = 'boolean') + } else if (expectedType === 'Function') { + valid = typeof value === (expectedType = 'function') + } else if (expectedType === 'Object') { + valid = isPlainObject(value) + } else if (expectedType === 'Array') { + valid = Array.isArray(value) + } else { + valid = value instanceof type + } + return { + valid: valid, + expectedType: expectedType + } +} + +/** + * Use function string name to check built-in types, + * because a simple equality check will fail when running + * across different vms / iframes. + */ +function getType (fn) { + var match = fn && fn.toString().match(/^\s*function (\w+)/) + return match && match[1] +} + + + +var util = Object.freeze({ + defineReactive: defineReactive$$1, + _toString: _toString, + toNumber: toNumber, + makeMap: makeMap, + isBuiltInTag: isBuiltInTag, + remove: remove$1, + hasOwn: hasOwn, + isPrimitive: isPrimitive, + cached: cached, + camelize: camelize, + capitalize: capitalize, + hyphenate: hyphenate, + bind: bind$1, + toArray: toArray, + extend: extend, + isObject: isObject, + isPlainObject: isPlainObject, + toObject: toObject, + noop: noop, + no: no, + genStaticKeys: genStaticKeys, + looseEqual: looseEqual, + looseIndexOf: looseIndexOf, + isReserved: isReserved, + def: def, + parsePath: parsePath, + hasProto: hasProto, + inBrowser: inBrowser, + UA: UA, + isIE: isIE, + isIE9: isIE9, + isEdge: isEdge, + isAndroid: isAndroid, + isIOS: isIOS, + devtools: devtools, + nextTick: nextTick, + get _Set () { return _Set; }, + mergeOptions: mergeOptions, + resolveAsset: resolveAsset, + get warn () { return warn; }, + get formatComponentName () { return formatComponentName; }, + validateProp: validateProp +}); + +/* */ + +function initUse (Vue) { + Vue.use = function (plugin) { + /* istanbul ignore if */ + if (plugin.installed) { + return + } + // additional parameters + var args = toArray(arguments, 1) + args.unshift(this) + if (typeof plugin.install === 'function') { + plugin.install.apply(plugin, args) + } else { + plugin.apply(null, args) + } + plugin.installed = true + return this + } +} + +/* */ + +function initMixin$1 (Vue) { + Vue.mixin = function (mixin) { + Vue.options = mergeOptions(Vue.options, mixin) + } +} + +/* */ + +function initExtend (Vue) { + /** + * Each instance constructor, including Vue, has a unique + * cid. This enables us to create wrapped "child + * constructors" for prototypal inheritance and cache them. + */ + Vue.cid = 0 + var cid = 1 + + /** + * Class inheritance + */ + Vue.extend = function (extendOptions) { + extendOptions = extendOptions || {} + var Super = this + var isFirstExtend = Super.cid === 0 + if (isFirstExtend && extendOptions._Ctor) { + return extendOptions._Ctor + } + var name = extendOptions.name || Super.options.name + { + if (!/^[a-zA-Z][\w-]*$/.test(name)) { + warn( + 'Invalid component name: "' + name + '". Component names ' + + 'can only contain alphanumeric characaters and the hyphen.' + ) + name = null + } + } + var Sub = function VueComponent (options) { + this._init(options) + } + Sub.prototype = Object.create(Super.prototype) + Sub.prototype.constructor = Sub + Sub.cid = cid++ + Sub.options = mergeOptions( + Super.options, + extendOptions + ) + Sub['super'] = Super + // allow further extension + Sub.extend = Super.extend + // create asset registers, so extended classes + // can have their private assets too. + config._assetTypes.forEach(function (type) { + Sub[type] = Super[type] + }) + // enable recursive self-lookup + if (name) { + Sub.options.components[name] = Sub + } + // keep a reference to the super options at extension time. + // later at instantiation we can check if Super's options have + // been updated. + Sub.superOptions = Super.options + Sub.extendOptions = extendOptions + // cache constructor + if (isFirstExtend) { + extendOptions._Ctor = Sub + } + return Sub + } +} + +/* */ + +function initAssetRegisters (Vue) { + /** + * Create asset registration methods. + */ + config._assetTypes.forEach(function (type) { + Vue[type] = function ( + id, + definition + ) { + if (!definition) { + return this.options[type + 's'][id] + } else { + /* istanbul ignore if */ + { + if (type === 'component' && config.isReservedTag(id)) { + warn( + 'Do not use built-in or reserved HTML elements as component ' + + 'id: ' + id + ) + } + } + if (type === 'component' && isPlainObject(definition)) { + definition.name = definition.name || id + definition = Vue.extend(definition) + } + if (type === 'directive' && typeof definition === 'function') { + definition = { bind: definition, update: definition } + } + this.options[type + 's'][id] = definition + return definition + } + } + }) +} + +var KeepAlive = { + name: 'keep-alive', + abstract: true, + created: function created () { + this.cache = Object.create(null) + }, + render: function render () { + var vnode = getFirstComponentChild(this.$slots.default) + if (vnode && vnode.componentOptions) { + var opts = vnode.componentOptions + var key = vnode.key == null + // same constructor may get registered as different local components + // so cid alone is not enough (#3269) + ? opts.Ctor.cid + '::' + opts.tag + : vnode.key + if (this.cache[key]) { + vnode.child = this.cache[key].child + } else { + this.cache[key] = vnode + } + vnode.data.keepAlive = true + } + return vnode + }, + destroyed: function destroyed () { + var this$1 = this; + + for (var key in this.cache) { + var vnode = this$1.cache[key] + callHook(vnode.child, 'deactivated') + vnode.child.$destroy() + } + } +} + +var builtInComponents = { + KeepAlive: KeepAlive +} + +/* */ + +function initGlobalAPI (Vue) { + // config + var configDef = {} + configDef.get = function () { return config; } + { + configDef.set = function () { + warn( + 'Do not replace the Vue.config object, set individual fields instead.' + ) + } + } + Object.defineProperty(Vue, 'config', configDef) + Vue.util = util + Vue.set = set + Vue.delete = del + Vue.nextTick = nextTick + + Vue.options = Object.create(null) + config._assetTypes.forEach(function (type) { + Vue.options[type + 's'] = Object.create(null) + }) + + extend(Vue.options.components, builtInComponents) + + initUse(Vue) + initMixin$1(Vue) + initExtend(Vue) + initAssetRegisters(Vue) +} + +initGlobalAPI(Vue$3) + +Object.defineProperty(Vue$3.prototype, '$isServer', { + get: function () { return config._isServer; } +}) + +Vue$3.version = '2.0.1' + +/* */ + +// attributes that should be using props for binding +var mustUseProp = makeMap('value,selected,checked,muted') + +var isEnumeratedAttr = makeMap('contenteditable,draggable,spellcheck') + +var isBooleanAttr = makeMap( + 'allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,' + + 'default,defaultchecked,defaultmuted,defaultselected,defer,disabled,' + + 'enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,' + + 'muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,' + + 'required,reversed,scoped,seamless,selected,sortable,translate,' + + 'truespeed,typemustmatch,visible' +) + +var isAttr = makeMap( + 'accept,accept-charset,accesskey,action,align,alt,async,autocomplete,' + + 'autofocus,autoplay,autosave,bgcolor,border,buffered,challenge,charset,' + + 'checked,cite,class,code,codebase,color,cols,colspan,content,http-equiv,' + + 'name,contenteditable,contextmenu,controls,coords,data,datetime,default,' + + 'defer,dir,dirname,disabled,download,draggable,dropzone,enctype,method,for,' + + 'form,formaction,headers,,height,hidden,high,href,hreflang,http-equiv,' + + 'icon,id,ismap,itemprop,keytype,kind,label,lang,language,list,loop,low,' + + 'manifest,max,maxlength,media,method,GET,POST,min,multiple,email,file,' + + 'muted,name,novalidate,open,optimum,pattern,ping,placeholder,poster,' + + 'preload,radiogroup,readonly,rel,required,reversed,rows,rowspan,sandbox,' + + 'scope,scoped,seamless,selected,shape,size,type,text,password,sizes,span,' + + 'spellcheck,src,srcdoc,srclang,srcset,start,step,style,summary,tabindex,' + + 'target,title,type,usemap,value,width,wrap' +) + + + +var xlinkNS = 'http://www.w3.org/1999/xlink' + +var isXlink = function (name) { + return name.charAt(5) === ':' && name.slice(0, 5) === 'xlink' +} + +var getXlinkProp = function (name) { + return isXlink(name) ? name.slice(6, name.length) : '' +} + +var isFalsyAttrValue = function (val) { + return val == null || val === false +} + +/* */ + +function genClassForVnode (vnode) { + var data = vnode.data + var parentNode = vnode + var childNode = vnode + while (childNode.child) { + childNode = childNode.child._vnode + if (childNode.data) { + data = mergeClassData(childNode.data, data) + } + } + while ((parentNode = parentNode.parent)) { + if (parentNode.data) { + data = mergeClassData(data, parentNode.data) + } + } + return genClassFromData(data) +} + +function mergeClassData (child, parent) { + return { + staticClass: concat(child.staticClass, parent.staticClass), + class: child.class + ? [child.class, parent.class] + : parent.class + } +} + +function genClassFromData (data) { + var dynamicClass = data.class + var staticClass = data.staticClass + if (staticClass || dynamicClass) { + return concat(staticClass, stringifyClass(dynamicClass)) + } + /* istanbul ignore next */ + return '' +} + +function concat (a, b) { + return a ? b ? (a + ' ' + b) : a : (b || '') +} + +function stringifyClass (value) { + var res = '' + if (!value) { + return res + } + if (typeof value === 'string') { + return value + } + if (Array.isArray(value)) { + var stringified + for (var i = 0, l = value.length; i < l; i++) { + if (value[i]) { + if ((stringified = stringifyClass(value[i]))) { + res += stringified + ' ' + } + } + } + return res.slice(0, -1) + } + if (isObject(value)) { + for (var key in value) { + if (value[key]) { res += key + ' ' } + } + return res.slice(0, -1) + } + /* istanbul ignore next */ + return res +} + +/* */ + +var namespaceMap = { + svg: 'http://www.w3.org/2000/svg', + math: 'http://www.w3.org/1998/Math/MathML' +} + +var isHTMLTag = makeMap( + 'html,body,base,head,link,meta,style,title,' + + 'address,article,aside,footer,header,h1,h2,h3,h4,h5,h6,hgroup,nav,section,' + + 'div,dd,dl,dt,figcaption,figure,hr,img,li,main,ol,p,pre,ul,' + + 'a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,rtc,ruby,' + + 's,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,' + + 'embed,object,param,source,canvas,script,noscript,del,ins,' + + 'caption,col,colgroup,table,thead,tbody,td,th,tr,' + + 'button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,' + + 'output,progress,select,textarea,' + + 'details,dialog,menu,menuitem,summary,' + + 'content,element,shadow,template' +) + +var isUnaryTag = makeMap( + 'area,base,br,col,embed,frame,hr,img,input,isindex,keygen,' + + 'link,meta,param,source,track,wbr', + true +) + +// Elements that you can, intentionally, leave open +// (and which close themselves) +var canBeLeftOpenTag = makeMap( + 'colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr,source', + true +) + +// HTML5 tags https://html.spec.whatwg.org/multipage/indices.html#elements-3 +// Phrasing Content https://html.spec.whatwg.org/multipage/dom.html#phrasing-content +var isNonPhrasingTag = makeMap( + 'address,article,aside,base,blockquote,body,caption,col,colgroup,dd,' + + 'details,dialog,div,dl,dt,fieldset,figcaption,figure,footer,form,' + + 'h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,legend,li,menuitem,meta,' + + 'optgroup,option,param,rp,rt,source,style,summary,tbody,td,tfoot,th,thead,' + + 'title,tr,track', + true +) + +// this map is intentionally selective, only covering SVG elements that may +// contain child elements. +var isSVG = makeMap( + 'svg,animate,circle,clippath,cursor,defs,desc,ellipse,filter,font,' + + 'font-face,g,glyph,image,line,marker,mask,missing-glyph,path,pattern,' + + 'polygon,polyline,rect,switch,symbol,text,textpath,tspan,use,view', + true +) + +var isPreTag = function (tag) { return tag === 'pre'; } + +var isReservedTag = function (tag) { + return isHTMLTag(tag) || isSVG(tag) +} + +function getTagNamespace (tag) { + if (isSVG(tag)) { + return 'svg' + } + // basic support for MathML + // note it doesn't support other MathML elements being component roots + if (tag === 'math') { + return 'math' + } +} + +var unknownElementCache = Object.create(null) +function isUnknownElement (tag) { + /* istanbul ignore if */ + if (!inBrowser) { + return true + } + if (isReservedTag(tag)) { + return false + } + tag = tag.toLowerCase() + /* istanbul ignore if */ + if (unknownElementCache[tag] != null) { + return unknownElementCache[tag] + } + var el = document.createElement(tag) + if (tag.indexOf('-') > -1) { + // http://stackoverflow.com/a/28210364/1070244 + return (unknownElementCache[tag] = ( + el.constructor === window.HTMLUnknownElement || + el.constructor === window.HTMLElement + )) + } else { + return (unknownElementCache[tag] = /HTMLUnknownElement/.test(el.toString())) + } +} + +/* */ + +/** + * Query an element selector if it's not an element already. + */ +function query (el) { + if (typeof el === 'string') { + var selector = el + el = document.querySelector(el) + if (!el) { + "development" !== 'production' && warn( + 'Cannot find element: ' + selector + ) + return document.createElement('div') + } + } + return el +} + +/* */ + +function createElement$1 (tagName) { + return document.createElement(tagName) +} + +function createElementNS (namespace, tagName) { + return document.createElementNS(namespaceMap[namespace], tagName) +} + +function createTextNode (text) { + return document.createTextNode(text) +} + +function createComment (text) { + return document.createComment(text) +} + +function insertBefore (parentNode, newNode, referenceNode) { + parentNode.insertBefore(newNode, referenceNode) +} + +function removeChild (node, child) { + node.removeChild(child) +} + +function appendChild (node, child) { + node.appendChild(child) +} + +function parentNode (node) { + return node.parentNode +} + +function nextSibling (node) { + return node.nextSibling +} + +function tagName (node) { + return node.tagName +} + +function setTextContent (node, text) { + node.textContent = text +} + +function childNodes (node) { + return node.childNodes +} + +function setAttribute (node, key, val) { + node.setAttribute(key, val) +} + + +var nodeOps = Object.freeze({ + createElement: createElement$1, + createElementNS: createElementNS, + createTextNode: createTextNode, + createComment: createComment, + insertBefore: insertBefore, + removeChild: removeChild, + appendChild: appendChild, + parentNode: parentNode, + nextSibling: nextSibling, + tagName: tagName, + setTextContent: setTextContent, + childNodes: childNodes, + setAttribute: setAttribute +}); + +/* */ + +var ref = { + create: function create (_, vnode) { + registerRef(vnode) + }, + update: function update (oldVnode, vnode) { + if (oldVnode.data.ref !== vnode.data.ref) { + registerRef(oldVnode, true) + registerRef(vnode) + } + }, + destroy: function destroy (vnode) { + registerRef(vnode, true) + } +} + +function registerRef (vnode, isRemoval) { + var key = vnode.data.ref + if (!key) { return } + + var vm = vnode.context + var ref = vnode.child || vnode.elm + var refs = vm.$refs + if (isRemoval) { + if (Array.isArray(refs[key])) { + remove$1(refs[key], ref) + } else if (refs[key] === ref) { + refs[key] = undefined + } + } else { + if (vnode.data.refInFor) { + if (Array.isArray(refs[key])) { + refs[key].push(ref) + } else { + refs[key] = [ref] + } + } else { + refs[key] = ref + } + } +} + +/** + * Virtual DOM patching algorithm based on Snabbdom by + * Simon Friis Vindum (@paldepind) + * Licensed under the MIT License + * https://github.com/paldepind/snabbdom/blob/master/LICENSE + * + * modified by Evan You (@yyx990803) + * + +/* + * Not type-checking this because this file is perf-critical and the cost + * of making flow understand it is not worth it. + */ + +var emptyData = {} +var emptyNode = new VNode('', emptyData, []) +var hooks$1 = ['create', 'update', 'postpatch', 'remove', 'destroy'] + +function isUndef (s) { + return s == null +} + +function isDef (s) { + return s != null +} + +function sameVnode (vnode1, vnode2) { + return ( + vnode1.key === vnode2.key && + vnode1.tag === vnode2.tag && + vnode1.isComment === vnode2.isComment && + !vnode1.data === !vnode2.data + ) +} + +function createKeyToOldIdx (children, beginIdx, endIdx) { + var i, key + var map = {} + for (i = beginIdx; i <= endIdx; ++i) { + key = children[i].key + if (isDef(key)) { map[key] = i } + } + return map +} + +function createPatchFunction (backend) { + var i, j + var cbs = {} + + var modules = backend.modules; + var nodeOps = backend.nodeOps; + + for (i = 0; i < hooks$1.length; ++i) { + cbs[hooks$1[i]] = [] + for (j = 0; j < modules.length; ++j) { + if (modules[j][hooks$1[i]] !== undefined) { cbs[hooks$1[i]].push(modules[j][hooks$1[i]]) } + } + } + + function emptyNodeAt (elm) { + return new VNode(nodeOps.tagName(elm).toLowerCase(), {}, [], undefined, elm) + } + + function createRmCb (childElm, listeners) { + function remove$$1 () { + if (--remove$$1.listeners === 0) { + removeElement(childElm) + } + } + remove$$1.listeners = listeners + return remove$$1 + } + + function removeElement (el) { + var parent = nodeOps.parentNode(el) + nodeOps.removeChild(parent, el) + } + + function createElm (vnode, insertedVnodeQueue, nested) { + var i + var data = vnode.data + vnode.isRootInsert = !nested + if (isDef(data)) { + if (isDef(i = data.hook) && isDef(i = i.init)) { i(vnode) } + // after calling the init hook, if the vnode is a child component + // it should've created a child instance and mounted it. the child + // component also has set the placeholder vnode's elm. + // in that case we can just return the element and be done. + if (isDef(i = vnode.child)) { + initComponent(vnode, insertedVnodeQueue) + return vnode.elm + } + } + var children = vnode.children + var tag = vnode.tag + if (isDef(tag)) { + { + if ( + !vnode.ns && + !(config.ignoredElements && config.ignoredElements.indexOf(tag) > -1) && + config.isUnknownElement(tag) + ) { + warn( + 'Unknown custom element: <' + tag + '> - did you ' + + 'register the component correctly? For recursive components, ' + + 'make sure to provide the "name" option.', + vnode.context + ) + } + } + vnode.elm = vnode.ns + ? nodeOps.createElementNS(vnode.ns, tag) + : nodeOps.createElement(tag) + setScope(vnode) + createChildren(vnode, children, insertedVnodeQueue) + if (isDef(data)) { + invokeCreateHooks(vnode, insertedVnodeQueue) + } + } else if (vnode.isComment) { + vnode.elm = nodeOps.createComment(vnode.text) + } else { + vnode.elm = nodeOps.createTextNode(vnode.text) + } + return vnode.elm + } + + function createChildren (vnode, children, insertedVnodeQueue) { + if (Array.isArray(children)) { + for (var i = 0; i < children.length; ++i) { + nodeOps.appendChild(vnode.elm, createElm(children[i], insertedVnodeQueue, true)) + } + } else if (isPrimitive(vnode.text)) { + nodeOps.appendChild(vnode.elm, nodeOps.createTextNode(vnode.text)) + } + } + + function isPatchable (vnode) { + while (vnode.child) { + vnode = vnode.child._vnode + } + return isDef(vnode.tag) + } + + function invokeCreateHooks (vnode, insertedVnodeQueue) { + for (var i$1 = 0; i$1 < cbs.create.length; ++i$1) { + cbs.create[i$1](emptyNode, vnode) + } + i = vnode.data.hook // Reuse variable + if (isDef(i)) { + if (i.create) { i.create(emptyNode, vnode) } + if (i.insert) { insertedVnodeQueue.push(vnode) } + } + } + + function initComponent (vnode, insertedVnodeQueue) { + if (vnode.data.pendingInsert) { + insertedVnodeQueue.push.apply(insertedVnodeQueue, vnode.data.pendingInsert) + } + vnode.elm = vnode.child.$el + if (isPatchable(vnode)) { + invokeCreateHooks(vnode, insertedVnodeQueue) + setScope(vnode) + } else { + // empty component root. + // skip all element-related modules except for ref (#3455) + registerRef(vnode) + // make sure to invoke the insert hook + insertedVnodeQueue.push(vnode) + } + } + + // set scope id attribute for scoped CSS. + // this is implemented as a special case to avoid the overhead + // of going through the normal attribute patching process. + function setScope (vnode) { + var i + if (isDef(i = vnode.context) && isDef(i = i.$options._scopeId)) { + nodeOps.setAttribute(vnode.elm, i, '') + } + if (isDef(i = activeInstance) && + i !== vnode.context && + isDef(i = i.$options._scopeId)) { + nodeOps.setAttribute(vnode.elm, i, '') + } + } + + function addVnodes (parentElm, before, vnodes, startIdx, endIdx, insertedVnodeQueue) { + for (; startIdx <= endIdx; ++startIdx) { + nodeOps.insertBefore(parentElm, createElm(vnodes[startIdx], insertedVnodeQueue), before) + } + } + + function invokeDestroyHook (vnode) { + var i, j + var data = vnode.data + if (isDef(data)) { + if (isDef(i = data.hook) && isDef(i = i.destroy)) { i(vnode) } + for (i = 0; i < cbs.destroy.length; ++i) { cbs.destroy[i](vnode) } + } + if (isDef(i = vnode.child) && !data.keepAlive) { + invokeDestroyHook(i._vnode) + } + if (isDef(i = vnode.children)) { + for (j = 0; j < vnode.children.length; ++j) { + invokeDestroyHook(vnode.children[j]) + } + } + } + + function removeVnodes (parentElm, vnodes, startIdx, endIdx) { + for (; startIdx <= endIdx; ++startIdx) { + var ch = vnodes[startIdx] + if (isDef(ch)) { + if (isDef(ch.tag)) { + removeAndInvokeRemoveHook(ch) + invokeDestroyHook(ch) + } else { // Text node + nodeOps.removeChild(parentElm, ch.elm) + } + } + } + } + + function removeAndInvokeRemoveHook (vnode, rm) { + if (rm || isDef(vnode.data)) { + var listeners = cbs.remove.length + 1 + if (!rm) { + // directly removing + rm = createRmCb(vnode.elm, listeners) + } else { + // we have a recursively passed down rm callback + // increase the listeners count + rm.listeners += listeners + } + // recursively invoke hooks on child component root node + if (isDef(i = vnode.child) && isDef(i = i._vnode) && isDef(i.data)) { + removeAndInvokeRemoveHook(i, rm) + } + for (i = 0; i < cbs.remove.length; ++i) { + cbs.remove[i](vnode, rm) + } + if (isDef(i = vnode.data.hook) && isDef(i = i.remove)) { + i(vnode, rm) + } else { + rm() + } + } else { + removeElement(vnode.elm) + } + } + + function updateChildren (parentElm, oldCh, newCh, insertedVnodeQueue, removeOnly) { + var oldStartIdx = 0 + var newStartIdx = 0 + var oldEndIdx = oldCh.length - 1 + var oldStartVnode = oldCh[0] + var oldEndVnode = oldCh[oldEndIdx] + var newEndIdx = newCh.length - 1 + var newStartVnode = newCh[0] + var newEndVnode = newCh[newEndIdx] + var oldKeyToIdx, idxInOld, elmToMove, before + + // removeOnly is a special flag used only by + // to ensure removed elements stay in correct relative positions + // during leaving transitions + var canMove = !removeOnly + + while (oldStartIdx <= oldEndIdx && newStartIdx <= newEndIdx) { + if (isUndef(oldStartVnode)) { + oldStartVnode = oldCh[++oldStartIdx] // Vnode has been moved left + } else if (isUndef(oldEndVnode)) { + oldEndVnode = oldCh[--oldEndIdx] + } else if (sameVnode(oldStartVnode, newStartVnode)) { + patchVnode(oldStartVnode, newStartVnode, insertedVnodeQueue) + oldStartVnode = oldCh[++oldStartIdx] + newStartVnode = newCh[++newStartIdx] + } else if (sameVnode(oldEndVnode, newEndVnode)) { + patchVnode(oldEndVnode, newEndVnode, insertedVnodeQueue) + oldEndVnode = oldCh[--oldEndIdx] + newEndVnode = newCh[--newEndIdx] + } else if (sameVnode(oldStartVnode, newEndVnode)) { // Vnode moved right + patchVnode(oldStartVnode, newEndVnode, insertedVnodeQueue) + canMove && nodeOps.insertBefore(parentElm, oldStartVnode.elm, nodeOps.nextSibling(oldEndVnode.elm)) + oldStartVnode = oldCh[++oldStartIdx] + newEndVnode = newCh[--newEndIdx] + } else if (sameVnode(oldEndVnode, newStartVnode)) { // Vnode moved left + patchVnode(oldEndVnode, newStartVnode, insertedVnodeQueue) + canMove && nodeOps.insertBefore(parentElm, oldEndVnode.elm, oldStartVnode.elm) + oldEndVnode = oldCh[--oldEndIdx] + newStartVnode = newCh[++newStartIdx] + } else { + if (isUndef(oldKeyToIdx)) { oldKeyToIdx = createKeyToOldIdx(oldCh, oldStartIdx, oldEndIdx) } + idxInOld = isDef(newStartVnode.key) ? oldKeyToIdx[newStartVnode.key] : null + if (isUndef(idxInOld)) { // New element + nodeOps.insertBefore(parentElm, createElm(newStartVnode, insertedVnodeQueue), oldStartVnode.elm) + newStartVnode = newCh[++newStartIdx] + } else { + elmToMove = oldCh[idxInOld] + /* istanbul ignore if */ + if ("development" !== 'production' && !elmToMove) { + warn( + 'It seems there are duplicate keys that is causing an update error. ' + + 'Make sure each v-for item has a unique key.' + ) + } + if (elmToMove.tag !== newStartVnode.tag) { + // same key but different element. treat as new element + nodeOps.insertBefore(parentElm, createElm(newStartVnode, insertedVnodeQueue), oldStartVnode.elm) + newStartVnode = newCh[++newStartIdx] + } else { + patchVnode(elmToMove, newStartVnode, insertedVnodeQueue) + oldCh[idxInOld] = undefined + canMove && nodeOps.insertBefore(parentElm, newStartVnode.elm, oldStartVnode.elm) + newStartVnode = newCh[++newStartIdx] + } + } + } + } + if (oldStartIdx > oldEndIdx) { + before = isUndef(newCh[newEndIdx + 1]) ? null : newCh[newEndIdx + 1].elm + addVnodes(parentElm, before, newCh, newStartIdx, newEndIdx, insertedVnodeQueue) + } else if (newStartIdx > newEndIdx) { + removeVnodes(parentElm, oldCh, oldStartIdx, oldEndIdx) + } + } + + function patchVnode (oldVnode, vnode, insertedVnodeQueue, removeOnly) { + if (oldVnode === vnode) { + return + } + // reuse element for static trees. + // note we only do this if the vnode is cloned - + // if the new node is not cloned it means the render functions have been + // reset by the hot-reload-api and we need to do a proper re-render. + if (vnode.isStatic && + oldVnode.isStatic && + vnode.key === oldVnode.key && + vnode.isCloned) { + vnode.elm = oldVnode.elm + return + } + var i, hook + var hasData = isDef(i = vnode.data) + if (hasData && isDef(hook = i.hook) && isDef(i = hook.prepatch)) { + i(oldVnode, vnode) + } + var elm = vnode.elm = oldVnode.elm + var oldCh = oldVnode.children + var ch = vnode.children + if (hasData && isPatchable(vnode)) { + for (i = 0; i < cbs.update.length; ++i) { cbs.update[i](oldVnode, vnode) } + if (isDef(hook) && isDef(i = hook.update)) { i(oldVnode, vnode) } + } + if (isUndef(vnode.text)) { + if (isDef(oldCh) && isDef(ch)) { + if (oldCh !== ch) { updateChildren(elm, oldCh, ch, insertedVnodeQueue, removeOnly) } + } else if (isDef(ch)) { + if (isDef(oldVnode.text)) { nodeOps.setTextContent(elm, '') } + addVnodes(elm, null, ch, 0, ch.length - 1, insertedVnodeQueue) + } else if (isDef(oldCh)) { + removeVnodes(elm, oldCh, 0, oldCh.length - 1) + } else if (isDef(oldVnode.text)) { + nodeOps.setTextContent(elm, '') + } + } else if (oldVnode.text !== vnode.text) { + nodeOps.setTextContent(elm, vnode.text) + } + if (hasData) { + for (i = 0; i < cbs.postpatch.length; ++i) { cbs.postpatch[i](oldVnode, vnode) } + if (isDef(hook) && isDef(i = hook.postpatch)) { i(oldVnode, vnode) } + } + } + + function invokeInsertHook (vnode, queue, initial) { + // delay insert hooks for component root nodes, invoke them after the + // element is really inserted + if (initial && vnode.parent) { + vnode.parent.data.pendingInsert = queue + } else { + for (var i = 0; i < queue.length; ++i) { + queue[i].data.hook.insert(queue[i]) + } + } + } + + var bailed = false + function hydrate (elm, vnode, insertedVnodeQueue) { + { + if (!assertNodeMatch(elm, vnode)) { + return false + } + } + vnode.elm = elm + var tag = vnode.tag; + var data = vnode.data; + var children = vnode.children; + if (isDef(data)) { + if (isDef(i = data.hook) && isDef(i = i.init)) { i(vnode, true /* hydrating */) } + if (isDef(i = vnode.child)) { + // child component. it should have hydrated its own tree. + initComponent(vnode, insertedVnodeQueue) + return true + } + } + if (isDef(tag)) { + if (isDef(children)) { + var childNodes = nodeOps.childNodes(elm) + // empty element, allow client to pick up and populate children + if (!childNodes.length) { + createChildren(vnode, children, insertedVnodeQueue) + } else { + var childrenMatch = true + if (childNodes.length !== children.length) { + childrenMatch = false + } else { + for (var i$1 = 0; i$1 < children.length; i$1++) { + if (!hydrate(childNodes[i$1], children[i$1], insertedVnodeQueue)) { + childrenMatch = false + break + } + } + } + if (!childrenMatch) { + if ("development" !== 'production' && + typeof console !== 'undefined' && + !bailed) { + bailed = true + console.warn('Parent: ', elm) + console.warn('Mismatching childNodes vs. VNodes: ', childNodes, children) + } + return false + } + } + } + if (isDef(data)) { + invokeCreateHooks(vnode, insertedVnodeQueue) + } + } + return true + } + + function assertNodeMatch (node, vnode) { + if (vnode.tag) { + return ( + vnode.tag.indexOf('vue-component') === 0 || + vnode.tag === nodeOps.tagName(node).toLowerCase() + ) + } else { + return _toString(vnode.text) === node.data + } + } + + return function patch (oldVnode, vnode, hydrating, removeOnly) { + var elm, parent + var isInitialPatch = false + var insertedVnodeQueue = [] + + if (!oldVnode) { + // empty mount, create new root element + isInitialPatch = true + createElm(vnode, insertedVnodeQueue) + } else { + var isRealElement = isDef(oldVnode.nodeType) + if (!isRealElement && sameVnode(oldVnode, vnode)) { + patchVnode(oldVnode, vnode, insertedVnodeQueue, removeOnly) + } else { + if (isRealElement) { + // mounting to a real element + // check if this is server-rendered content and if we can perform + // a successful hydration. + if (oldVnode.nodeType === 1 && oldVnode.hasAttribute('server-rendered')) { + oldVnode.removeAttribute('server-rendered') + hydrating = true + } + if (hydrating) { + if (hydrate(oldVnode, vnode, insertedVnodeQueue)) { + invokeInsertHook(vnode, insertedVnodeQueue, true) + return oldVnode + } else { + warn( + 'The client-side rendered virtual DOM tree is not matching ' + + 'server-rendered content. This is likely caused by incorrect ' + + 'HTML markup, for example nesting block-level elements inside ' + + '

    , or missing . Bailing hydration and performing ' + + 'full client-side render.' + ) + } + } + // either not server-rendered, or hydration failed. + // create an empty node and replace it + oldVnode = emptyNodeAt(oldVnode) + } + elm = oldVnode.elm + parent = nodeOps.parentNode(elm) + + createElm(vnode, insertedVnodeQueue) + + // component root element replaced. + // update parent placeholder node element. + if (vnode.parent) { + vnode.parent.elm = vnode.elm + if (isPatchable(vnode)) { + for (var i = 0; i < cbs.create.length; ++i) { + cbs.create[i](emptyNode, vnode.parent) + } + } + } + + if (parent !== null) { + nodeOps.insertBefore(parent, vnode.elm, nodeOps.nextSibling(elm)) + removeVnodes(parent, [oldVnode], 0, 0) + } else if (isDef(oldVnode.tag)) { + invokeDestroyHook(oldVnode) + } + } + } + + invokeInsertHook(vnode, insertedVnodeQueue, isInitialPatch) + return vnode.elm + } +} + +/* */ + +var directives = { + create: function bindDirectives (oldVnode, vnode) { + var hasInsert = false + forEachDirective(oldVnode, vnode, function (def, dir) { + callHook$1(def, dir, 'bind', vnode, oldVnode) + if (def.inserted) { + hasInsert = true + } + }) + if (hasInsert) { + mergeVNodeHook(vnode.data.hook || (vnode.data.hook = {}), 'insert', function () { + applyDirectives(oldVnode, vnode, 'inserted') + }) + } + }, + update: function updateDirectives (oldVnode, vnode) { + applyDirectives(oldVnode, vnode, 'update') + // if old vnode has directives but new vnode doesn't + // we need to teardown the directives on the old one. + if (oldVnode.data.directives && !vnode.data.directives) { + applyDirectives(oldVnode, oldVnode, 'unbind') + } + }, + postpatch: function postupdateDirectives (oldVnode, vnode) { + applyDirectives(oldVnode, vnode, 'componentUpdated') + }, + destroy: function unbindDirectives (vnode) { + applyDirectives(vnode, vnode, 'unbind') + } +} + +var emptyModifiers = Object.create(null) + +function forEachDirective ( + oldVnode, + vnode, + fn +) { + var dirs = vnode.data.directives + if (dirs) { + for (var i = 0; i < dirs.length; i++) { + var dir = dirs[i] + var def = resolveAsset(vnode.context.$options, 'directives', dir.name, true) + if (def) { + var oldDirs = oldVnode && oldVnode.data.directives + if (oldDirs) { + dir.oldValue = oldDirs[i].value + } + if (!dir.modifiers) { + dir.modifiers = emptyModifiers + } + fn(def, dir) + } + } + } +} + +function applyDirectives ( + oldVnode, + vnode, + hook +) { + forEachDirective(oldVnode, vnode, function (def, dir) { + callHook$1(def, dir, hook, vnode, oldVnode) + }) +} + +function callHook$1 (def, dir, hook, vnode, oldVnode) { + var fn = def && def[hook] + if (fn) { + fn(vnode.elm, dir, vnode, oldVnode) + } +} + +var baseModules = [ + ref, + directives +] + +/* */ + +function updateAttrs (oldVnode, vnode) { + if (!oldVnode.data.attrs && !vnode.data.attrs) { + return + } + var key, cur, old + var elm = vnode.elm + var oldAttrs = oldVnode.data.attrs || {} + var attrs = vnode.data.attrs || {} + // clone observed objects, as the user probably wants to mutate it + if (attrs.__ob__) { + attrs = vnode.data.attrs = extend({}, attrs) + } + + for (key in attrs) { + cur = attrs[key] + old = oldAttrs[key] + if (old !== cur) { + setAttr(elm, key, cur) + } + } + for (key in oldAttrs) { + if (attrs[key] == null) { + if (isXlink(key)) { + elm.removeAttributeNS(xlinkNS, getXlinkProp(key)) + } else if (!isEnumeratedAttr(key)) { + elm.removeAttribute(key) + } + } + } +} + +function setAttr (el, key, value) { + if (isBooleanAttr(key)) { + // set attribute for blank value + // e.g. + if (isFalsyAttrValue(value)) { + el.removeAttribute(key) + } else { + el.setAttribute(key, key) + } + } else if (isEnumeratedAttr(key)) { + el.setAttribute(key, isFalsyAttrValue(value) || value === 'false' ? 'false' : 'true') + } else if (isXlink(key)) { + if (isFalsyAttrValue(value)) { + el.removeAttributeNS(xlinkNS, getXlinkProp(key)) + } else { + el.setAttributeNS(xlinkNS, key, value) + } + } else { + if (isFalsyAttrValue(value)) { + el.removeAttribute(key) + } else { + el.setAttribute(key, value) + } + } +} + +var attrs = { + create: updateAttrs, + update: updateAttrs +} + +/* */ + +function updateClass (oldVnode, vnode) { + var el = vnode.elm + var data = vnode.data + var oldData = oldVnode.data + if (!data.staticClass && !data.class && + (!oldData || (!oldData.staticClass && !oldData.class))) { + return + } + + var cls = genClassForVnode(vnode) + + // handle transition classes + var transitionClass = el._transitionClasses + if (transitionClass) { + cls = concat(cls, stringifyClass(transitionClass)) + } + + // set the class + if (cls !== el._prevClass) { + el.setAttribute('class', cls) + el._prevClass = cls + } +} + +var klass = { + create: updateClass, + update: updateClass +} + +// skip type checking this file because we need to attach private properties +// to elements + +function updateDOMListeners (oldVnode, vnode) { + if (!oldVnode.data.on && !vnode.data.on) { + return + } + var on = vnode.data.on || {} + var oldOn = oldVnode.data.on || {} + var add = vnode.elm._v_add || (vnode.elm._v_add = function (event, handler, capture) { + vnode.elm.addEventListener(event, handler, capture) + }) + var remove = vnode.elm._v_remove || (vnode.elm._v_remove = function (event, handler) { + vnode.elm.removeEventListener(event, handler) + }) + updateListeners(on, oldOn, add, remove) +} + +var events = { + create: updateDOMListeners, + update: updateDOMListeners +} + +/* */ + +function updateDOMProps (oldVnode, vnode) { + if (!oldVnode.data.domProps && !vnode.data.domProps) { + return + } + var key, cur + var elm = vnode.elm + var oldProps = oldVnode.data.domProps || {} + var props = vnode.data.domProps || {} + // clone observed objects, as the user probably wants to mutate it + if (props.__ob__) { + props = vnode.data.domProps = extend({}, props) + } + + for (key in oldProps) { + if (props[key] == null) { + elm[key] = undefined + } + } + for (key in props) { + // ignore children if the node has textContent or innerHTML, + // as these will throw away existing DOM nodes and cause removal errors + // on subsequent patches (#3360) + if ((key === 'textContent' || key === 'innerHTML') && vnode.children) { + vnode.children.length = 0 + } + cur = props[key] + if (key === 'value') { + // store value as _value as well since + // non-string values will be stringified + elm._value = cur + // avoid resetting cursor position when value is the same + var strCur = cur == null ? '' : String(cur) + if (elm.value !== strCur) { + elm.value = strCur + } + } else { + elm[key] = cur + } + } +} + +var domProps = { + create: updateDOMProps, + update: updateDOMProps +} + +/* */ + +var prefixes = ['Webkit', 'Moz', 'ms'] + +var testEl +var normalize = cached(function (prop) { + testEl = testEl || document.createElement('div') + prop = camelize(prop) + if (prop !== 'filter' && (prop in testEl.style)) { + return prop + } + var upper = prop.charAt(0).toUpperCase() + prop.slice(1) + for (var i = 0; i < prefixes.length; i++) { + var prefixed = prefixes[i] + upper + if (prefixed in testEl.style) { + return prefixed + } + } +}) + +function updateStyle (oldVnode, vnode) { + if ((!oldVnode.data || !oldVnode.data.style) && !vnode.data.style) { + return + } + var cur, name + var el = vnode.elm + var oldStyle = oldVnode.data.style || {} + var style = vnode.data.style || {} + + // handle string + if (typeof style === 'string') { + el.style.cssText = style + return + } + + var needClone = style.__ob__ + + // handle array syntax + if (Array.isArray(style)) { + style = vnode.data.style = toObject(style) + } + + // clone the style for future updates, + // in case the user mutates the style object in-place. + if (needClone) { + style = vnode.data.style = extend({}, style) + } + + for (name in oldStyle) { + if (!style[name]) { + el.style[normalize(name)] = '' + } + } + for (name in style) { + cur = style[name] + if (cur !== oldStyle[name]) { + // ie9 setting to null has no effect, must use empty string + el.style[normalize(name)] = cur == null ? '' : cur + } + } +} + +var style = { + create: updateStyle, + update: updateStyle +} + +/* */ + +/** + * Add class with compatibility for SVG since classList is not supported on + * SVG elements in IE + */ +function addClass (el, cls) { + /* istanbul ignore else */ + if (el.classList) { + if (cls.indexOf(' ') > -1) { + cls.split(/\s+/).forEach(function (c) { return el.classList.add(c); }) + } else { + el.classList.add(cls) + } + } else { + var cur = ' ' + el.getAttribute('class') + ' ' + if (cur.indexOf(' ' + cls + ' ') < 0) { + el.setAttribute('class', (cur + cls).trim()) + } + } +} + +/** + * Remove class with compatibility for SVG since classList is not supported on + * SVG elements in IE + */ +function removeClass (el, cls) { + /* istanbul ignore else */ + if (el.classList) { + if (cls.indexOf(' ') > -1) { + cls.split(/\s+/).forEach(function (c) { return el.classList.remove(c); }) + } else { + el.classList.remove(cls) + } + } else { + var cur = ' ' + el.getAttribute('class') + ' ' + var tar = ' ' + cls + ' ' + while (cur.indexOf(tar) >= 0) { + cur = cur.replace(tar, ' ') + } + el.setAttribute('class', cur.trim()) + } +} + +/* */ + +var hasTransition = inBrowser && !isIE9 +var TRANSITION = 'transition' +var ANIMATION = 'animation' + +// Transition property/event sniffing +var transitionProp = 'transition' +var transitionEndEvent = 'transitionend' +var animationProp = 'animation' +var animationEndEvent = 'animationend' +if (hasTransition) { + /* istanbul ignore if */ + if (window.ontransitionend === undefined && + window.onwebkittransitionend !== undefined) { + transitionProp = 'WebkitTransition' + transitionEndEvent = 'webkitTransitionEnd' + } + if (window.onanimationend === undefined && + window.onwebkitanimationend !== undefined) { + animationProp = 'WebkitAnimation' + animationEndEvent = 'webkitAnimationEnd' + } +} + +var raf = (inBrowser && window.requestAnimationFrame) || setTimeout +function nextFrame (fn) { + raf(function () { + raf(fn) + }) +} + +function addTransitionClass (el, cls) { + (el._transitionClasses || (el._transitionClasses = [])).push(cls) + addClass(el, cls) +} + +function removeTransitionClass (el, cls) { + if (el._transitionClasses) { + remove$1(el._transitionClasses, cls) + } + removeClass(el, cls) +} + +function whenTransitionEnds ( + el, + expectedType, + cb +) { + var ref = getTransitionInfo(el, expectedType); + var type = ref.type; + var timeout = ref.timeout; + var propCount = ref.propCount; + if (!type) { return cb() } + var event = type === TRANSITION ? transitionEndEvent : animationEndEvent + var ended = 0 + var end = function () { + el.removeEventListener(event, onEnd) + cb() + } + var onEnd = function (e) { + if (e.target === el) { + if (++ended >= propCount) { + end() + } + } + } + setTimeout(function () { + if (ended < propCount) { + end() + } + }, timeout + 1) + el.addEventListener(event, onEnd) +} + +var transformRE = /\b(transform|all)(,|$)/ + +function getTransitionInfo (el, expectedType) { + var styles = window.getComputedStyle(el) + var transitioneDelays = styles[transitionProp + 'Delay'].split(', ') + var transitionDurations = styles[transitionProp + 'Duration'].split(', ') + var transitionTimeout = getTimeout(transitioneDelays, transitionDurations) + var animationDelays = styles[animationProp + 'Delay'].split(', ') + var animationDurations = styles[animationProp + 'Duration'].split(', ') + var animationTimeout = getTimeout(animationDelays, animationDurations) + + var type + var timeout = 0 + var propCount = 0 + /* istanbul ignore if */ + if (expectedType === TRANSITION) { + if (transitionTimeout > 0) { + type = TRANSITION + timeout = transitionTimeout + propCount = transitionDurations.length + } + } else if (expectedType === ANIMATION) { + if (animationTimeout > 0) { + type = ANIMATION + timeout = animationTimeout + propCount = animationDurations.length + } + } else { + timeout = Math.max(transitionTimeout, animationTimeout) + type = timeout > 0 + ? transitionTimeout > animationTimeout + ? TRANSITION + : ANIMATION + : null + propCount = type + ? type === TRANSITION + ? transitionDurations.length + : animationDurations.length + : 0 + } + var hasTransform = + type === TRANSITION && + transformRE.test(styles[transitionProp + 'Property']) + return { + type: type, + timeout: timeout, + propCount: propCount, + hasTransform: hasTransform + } +} + +function getTimeout (delays, durations) { + return Math.max.apply(null, durations.map(function (d, i) { + return toMs(d) + toMs(delays[i]) + })) +} + +function toMs (s) { + return Number(s.slice(0, -1)) * 1000 +} + +/* */ + +function enter (vnode) { + var el = vnode.elm + + // call leave callback now + if (el._leaveCb) { + el._leaveCb.cancelled = true + el._leaveCb() + } + + var data = resolveTransition(vnode.data.transition) + if (!data) { + return + } + + /* istanbul ignore if */ + if (el._enterCb || el.nodeType !== 1) { + return + } + + var css = data.css; + var type = data.type; + var enterClass = data.enterClass; + var enterActiveClass = data.enterActiveClass; + var appearClass = data.appearClass; + var appearActiveClass = data.appearActiveClass; + var beforeEnter = data.beforeEnter; + var enter = data.enter; + var afterEnter = data.afterEnter; + var enterCancelled = data.enterCancelled; + var beforeAppear = data.beforeAppear; + var appear = data.appear; + var afterAppear = data.afterAppear; + var appearCancelled = data.appearCancelled; + + // activeInstance will always be the component managing this + // transition. One edge case to check is when the is placed + // as the root node of a child component. In that case we need to check + // 's parent for appear check. + var transitionNode = activeInstance.$vnode + var context = transitionNode && transitionNode.parent + ? transitionNode.parent.context + : activeInstance + + var isAppear = !context._isMounted || !vnode.isRootInsert + + if (isAppear && !appear && appear !== '') { + return + } + + var startClass = isAppear ? appearClass : enterClass + var activeClass = isAppear ? appearActiveClass : enterActiveClass + var beforeEnterHook = isAppear ? (beforeAppear || beforeEnter) : beforeEnter + var enterHook = isAppear ? (typeof appear === 'function' ? appear : enter) : enter + var afterEnterHook = isAppear ? (afterAppear || afterEnter) : afterEnter + var enterCancelledHook = isAppear ? (appearCancelled || enterCancelled) : enterCancelled + + var expectsCSS = css !== false && !isIE9 + var userWantsControl = + enterHook && + // enterHook may be a bound method which exposes + // the length of original fn as _length + (enterHook._length || enterHook.length) > 1 + + var cb = el._enterCb = once(function () { + if (expectsCSS) { + removeTransitionClass(el, activeClass) + } + if (cb.cancelled) { + if (expectsCSS) { + removeTransitionClass(el, startClass) + } + enterCancelledHook && enterCancelledHook(el) + } else { + afterEnterHook && afterEnterHook(el) + } + el._enterCb = null + }) + + if (!vnode.data.show) { + // remove pending leave element on enter by injecting an insert hook + mergeVNodeHook(vnode.data.hook || (vnode.data.hook = {}), 'insert', function () { + var parent = el.parentNode + var pendingNode = parent && parent._pending && parent._pending[vnode.key] + if (pendingNode && pendingNode.tag === vnode.tag && pendingNode.elm._leaveCb) { + pendingNode.elm._leaveCb() + } + enterHook && enterHook(el, cb) + }) + } + + // start enter transition + beforeEnterHook && beforeEnterHook(el) + if (expectsCSS) { + addTransitionClass(el, startClass) + addTransitionClass(el, activeClass) + nextFrame(function () { + removeTransitionClass(el, startClass) + if (!cb.cancelled && !userWantsControl) { + whenTransitionEnds(el, type, cb) + } + }) + } + + if (vnode.data.show) { + enterHook && enterHook(el, cb) + } + + if (!expectsCSS && !userWantsControl) { + cb() + } +} + +function leave (vnode, rm) { + var el = vnode.elm + + // call enter callback now + if (el._enterCb) { + el._enterCb.cancelled = true + el._enterCb() + } + + var data = resolveTransition(vnode.data.transition) + if (!data) { + return rm() + } + + /* istanbul ignore if */ + if (el._leaveCb || el.nodeType !== 1) { + return + } + + var css = data.css; + var type = data.type; + var leaveClass = data.leaveClass; + var leaveActiveClass = data.leaveActiveClass; + var beforeLeave = data.beforeLeave; + var leave = data.leave; + var afterLeave = data.afterLeave; + var leaveCancelled = data.leaveCancelled; + var delayLeave = data.delayLeave; + + var expectsCSS = css !== false && !isIE9 + var userWantsControl = + leave && + // leave hook may be a bound method which exposes + // the length of original fn as _length + (leave._length || leave.length) > 1 + + var cb = el._leaveCb = once(function () { + if (el.parentNode && el.parentNode._pending) { + el.parentNode._pending[vnode.key] = null + } + if (expectsCSS) { + removeTransitionClass(el, leaveActiveClass) + } + if (cb.cancelled) { + if (expectsCSS) { + removeTransitionClass(el, leaveClass) + } + leaveCancelled && leaveCancelled(el) + } else { + rm() + afterLeave && afterLeave(el) + } + el._leaveCb = null + }) + + if (delayLeave) { + delayLeave(performLeave) + } else { + performLeave() + } + + function performLeave () { + // the delayed leave may have already been cancelled + if (cb.cancelled) { + return + } + // record leaving element + if (!vnode.data.show) { + (el.parentNode._pending || (el.parentNode._pending = {}))[vnode.key] = vnode + } + beforeLeave && beforeLeave(el) + if (expectsCSS) { + addTransitionClass(el, leaveClass) + addTransitionClass(el, leaveActiveClass) + nextFrame(function () { + removeTransitionClass(el, leaveClass) + if (!cb.cancelled && !userWantsControl) { + whenTransitionEnds(el, type, cb) + } + }) + } + leave && leave(el, cb) + if (!expectsCSS && !userWantsControl) { + cb() + } + } +} + +function resolveTransition (def$$1) { + if (!def$$1) { + return + } + /* istanbul ignore else */ + if (typeof def$$1 === 'object') { + var res = {} + if (def$$1.css !== false) { + extend(res, autoCssTransition(def$$1.name || 'v')) + } + extend(res, def$$1) + return res + } else if (typeof def$$1 === 'string') { + return autoCssTransition(def$$1) + } +} + +var autoCssTransition = cached(function (name) { + return { + enterClass: (name + "-enter"), + leaveClass: (name + "-leave"), + appearClass: (name + "-enter"), + enterActiveClass: (name + "-enter-active"), + leaveActiveClass: (name + "-leave-active"), + appearActiveClass: (name + "-enter-active") + } +}) + +function once (fn) { + var called = false + return function () { + if (!called) { + called = true + fn() + } + } +} + +var transition = inBrowser ? { + create: function create (_, vnode) { + if (!vnode.data.show) { + enter(vnode) + } + }, + remove: function remove (vnode, rm) { + /* istanbul ignore else */ + if (!vnode.data.show) { + leave(vnode, rm) + } else { + rm() + } + } +} : {} + +var platformModules = [ + attrs, + klass, + events, + domProps, + style, + transition +] + +/* */ + +// the directive module should be applied last, after all +// built-in modules have been applied. +var modules = platformModules.concat(baseModules) + +var patch$1 = createPatchFunction({ nodeOps: nodeOps, modules: modules }) + +/** + * Not type checking this file because flow doesn't like attaching + * properties to Elements. + */ + +var modelableTagRE = /^input|select|textarea|vue-component-[0-9]+(-[0-9a-zA-Z_\-]*)?$/ + +/* istanbul ignore if */ +if (isIE9) { + // http://www.matts411.com/post/internet-explorer-9-oninput/ + document.addEventListener('selectionchange', function () { + var el = document.activeElement + if (el && el.vmodel) { + trigger(el, 'input') + } + }) +} + +var model = { + bind: function bind (el, binding, vnode) { + { + if (!modelableTagRE.test(vnode.tag)) { + warn( + "v-model is not supported on element type: <" + (vnode.tag) + ">. " + + 'If you are working with contenteditable, it\'s recommended to ' + + 'wrap a library dedicated for that purpose inside a custom component.', + vnode.context + ) + } + } + if (vnode.tag === 'select') { + setSelected(el, binding, vnode.context) + /* istanbul ignore if */ + if (isIE || isEdge) { + var cb = function () { + setSelected(el, binding, vnode.context) + } + nextTick(cb) + setTimeout(cb, 0) + } + } else if (vnode.tag === 'textarea' || el.type === 'text') { + if (!isAndroid) { + el.addEventListener('compositionstart', onCompositionStart) + el.addEventListener('compositionend', onCompositionEnd) + } + /* istanbul ignore if */ + if (isIE9) { + el.vmodel = true + } + } + }, + componentUpdated: function componentUpdated (el, binding, vnode) { + if (vnode.tag === 'select') { + setSelected(el, binding, vnode.context) + // in case the options rendered by v-for have changed, + // it's possible that the value is out-of-sync with the rendered options. + // detect such cases and filter out values that no longer has a matchig + // option in the DOM. + var needReset = el.multiple + ? binding.value.some(function (v) { return hasNoMatchingOption(v, el.options); }) + : hasNoMatchingOption(binding.value, el.options) + if (needReset) { + trigger(el, 'change') + } + } + } +} + +function setSelected (el, binding, vm) { + var value = binding.value + var isMultiple = el.multiple + if (isMultiple && !Array.isArray(value)) { + "development" !== 'production' && warn( + "